[
  {
    "path": ".dockerignore",
    "content": "# defaults\n.history\n.vscode/\n/__pycache__\n/.ruff_cache\n/cache\n/cache.json\n/config.json\n/extensions/*\n/html/extensions.json\n/html/themes.json\n/metadata.json\n/node_modules\n/outputs/*\n/package-lock.json\n/params.txt\n/pnpm-lock.yaml\n/styles.csv\n/tmp\n/ui-config.json\n/user.css\n/venv\n/webui-user.bat\n/webui-user.sh\n/*.log.*\n/*.log\n"
  },
  {
    "path": ".gitignore",
    "content": "# defaults\nvenv/\n__pycache__\n.ruff_cache\n/*.json\n/*.yaml\n/params.txt\n/styles.csv\n/user.css\n/webui-user.bat\n/webui-user.sh\n/data/metadata.json\n/data/extensions.json\n/data/cache.json\n/data/themes.json\nconfig_states\nnode_modules\npnpm-lock.yaml\npackage-lock.json\n.history\ncache\n**/.DS_Store\ntunableop_results*.csv\n\n# all models and temp files\n*.log\n*.log.*\n*.bak\n*.ckpt\n*.safetensors\n*.pth\n*.pt\n*.bin\n*.optim\n*.lock\n*.zip\n*.rar\n*.7z\n*.pyc\n/*.bat\n/*.sh\n/*.txt\n/*.mp3\n/*.lnk\n/*.swp\n!webui.bat\n!webui.sh\n!package.json\n!requirements.txt\n\n# all dynamic stuff\n/extensions/**/*\n/outputs/**/*\n/embeddings/**/*\n/models/**/*\n/interrogate/**/*\n/train/log/**/*\n/textual_inversion/**/*\n/detected_maps/**/*\n/tmp\n/log\n/cert\n.vscode/\n.idea/\n/localizations\n.*/\n\n# force included\n!/data\n!/models/VAE-approx\n!/models/VAE-approx/model.pt\n!/models/Reference\n!/models/Reference/**/*\n"
  },
  {
    "path": ".gitmodules",
    "content": "[submodule \"wiki\"]\n  path = wiki\n  url = https://github.com/vladmandic/sdnext.wiki\n  ignore = dirty\n[submodule \"extensions-builtin/sd-extension-system-info\"]\n  path = extensions-builtin/sd-extension-system-info\n  url = https://github.com/vladmandic/sd-extension-system-info\n  ignore = dirty\n[submodule \"extensions-builtin/sd-extension-chainner\"]\n  path = extensions-builtin/sd-extension-chainner\n  url = https://github.com/vladmandic/sd-extension-chainner\n  ignore = dirty\n[submodule \"extensions-builtin/stable-diffusion-webui-rembg\"]\n  path = extensions-builtin/stable-diffusion-webui-rembg\n  url = https://github.com/vladmandic/sd-extension-rembg\n  ignore = dirty\n[submodule \"extensions-builtin/sdnext-modernui\"]\n  path = extensions-builtin/sdnext-modernui\n  url = https://github.com/BinaryQuantumSoul/sdnext-modernui\n[submodule \"extensions-builtin/sdnext-kanvas\"]\n\tpath = extensions-builtin/sdnext-kanvas\n\turl = https://github.com/vladmandic/sdnext-kanvas\n"
  },
  {
    "path": ".pylintrc",
    "content": "[MAIN]\nanalyse-fallback-blocks=no\nclear-cache-post-run=no\nextension-pkg-allow-list=\nprefer-stubs=yes\nextension-pkg-whitelist=\nfail-on=\nfail-under=10\nignore=CVS\nignore-paths=/usr/lib/.*$,\n             venv,\n             .git,\n             .ruff_cache,\n             .vscode,\n             modules/apg,\n             modules/cfgzero,\n             modules/control/proc,\n             modules/control/units,\n             modules/dml,\n             modules/facelib,\n             modules/flash_attn_triton_amd,\n             modules/ggml,\n             modules/hidiffusion,\n             modules/hijack/ddpm_edit.py,\n             modules/intel,\n             modules/intel/ipex,\n             modules/framepack/pipeline,\n             modules/onnx_impl,\n             modules/pag,\n             modules/postprocess/aurasr_arch.py,\n             modules/prompt_parser_xhinker.py,\n             modules/ras,\n             modules/seedvr,\n             modules/rife,\n             modules/schedulers,\n             modules/taesd,\n             modules/teacache,\n             modules/todo,\n             modules/res4lyf,\n             pipelines/bria,\n             pipelines/flex2,\n             pipelines/f_lite,\n             pipelines/hidream,\n             pipelines/hdm,\n             pipelines/meissonic,\n             pipelines/omnigen2,\n             pipelines/segmoe,\n             pipelines/xomni,\n             pipelines/chrono,\n             scripts/consistory,\n             scripts/ctrlx,\n             scripts/daam,\n             scripts/demofusion,\n             scripts/freescale,\n             scripts/infiniteyou,\n             scripts/instantir,\n             scripts/lbm,\n             scripts/layerdiffuse,\n             scripts/mod,\n             scripts/pixelsmith,\n             scripts/differential_diffusion.py,\n             scripts/pulid,\n             scripts/xadapter,\n             repositories,\n             extensions-builtin/sd-extension-chainner/nodes,\n             extensions-builtin/sd-webui-agent-scheduler,\n             extensions-builtin/sdnext-modernui/node_modules,\n             extensions-builtin/sdnext-kanvas/node_modules,\nignore-patterns=.*test*.py$,\n                .*_model.py$,\n                .*_arch.py$,\n                .*_model_arch.py*,\n                .*_model_arch_v2.py$,\nignored-modules=\njobs=8\nlimit-inference-results=100\nload-plugins=\npersistent=no\npy-version=3.10\nrecursive=no\nsource-roots=\nunsafe-load-any-extension=no\n\n[BASIC]\nargument-naming-style=snake_case\nattr-naming-style=snake_case\nbad-names=foo, bar, baz, toto, tutu, tata\nbad-names-rgxs=\nclass-attribute-naming-style=any\nclass-const-naming-style=UPPER_CASE\nclass-naming-style=PascalCase\nconst-naming-style=snake_case\ndocstring-min-length=-1\nfunction-naming-style=snake_case\ngood-names=i,j,k,e,ex,ok,p,x,y,id\ngood-names-rgxs=\ninclude-naming-hint=no\ninlinevar-naming-style=any\nmethod-naming-style=snake_case\nmodule-naming-style=snake_case\nname-group=\nno-docstring-rgx=^_\nproperty-classes=abc.abstractproperty\nvariable-naming-style=snake_case\n\n[CLASSES]\ncheck-protected-access-in-special-methods=no\ndefining-attr-methods=__init__, __new__,\nexclude-protected=_asdict,_fields,_replace,_source,_make,os._exit\nvalid-classmethod-first-arg=cls\nvalid-metaclass-classmethod-first-arg=mcs\n\n[DESIGN]\nexclude-too-few-public-methods=\nignored-parents=\nmax-args=199\nmax-attributes=99\nmax-bool-expr=99\nmax-branches=199\nmax-locals=99\nmax-parents=99\nmax-public-methods=99\nmax-returns=99\nmax-statements=199\nmin-public-methods=1\n\n[EXCEPTIONS]\novergeneral-exceptions=builtins.BaseException,builtins.Exception\n\n[FORMAT]\nexpected-line-ending-format=\nignore-long-lines=^\\s*(# )?<?https?://\\S+>?$\nindent-after-paren=4\nindent-string='    '\nmax-line-length=200\nmax-module-lines=9999\nsingle-line-class-stmt=no\nsingle-line-if-stmt=no\n\n[IMPORTS]\nallow-any-import-level=\nallow-reexport-from-package=no\nallow-wildcard-with-all=no\ndeprecated-modules=\next-import-graph=\nimport-graph=\nint-import-graph=\nknown-standard-library=\nknown-third-party=enchant\npreferred-modules=\n\n[LOGGING]\nlogging-format-style=new\nlogging-modules=logging\n\n[MESSAGES CONTROL]\nconfidence=HIGH,\n           CONTROL_FLOW,\n           INFERENCE,\n           INFERENCE_FAILURE,\n           UNDEFINED\n# disable=C,R,W\ndisable=abstract-method,\n        bad-inline-option,\n        bare-except,\n        broad-exception-caught,\n        chained-comparison,\n        consider-iterating-dictionary,\n        consider-merging-isinstance,\n        consider-using-dict-items,\n        consider-using-enumerate,\n        consider-using-from-import,\n        consider-using-generator,\n        consider-using-get,\n        consider-using-in,\n        consider-using-max-builtin,\n        consider-using-min-builtin,\n        consider-using-sys-exit,\n        cyclic-import,\n        dangerous-default-value,\n        deprecated-pragma,\n        duplicate-code,\n        file-ignored,\n        import-error,\n        import-outside-toplevel,\n        invalid-name,\n        line-too-long,\n        locally-disabled,\n        logging-fstring-interpolation,\n        missing-class-docstring,\n        missing-function-docstring,\n        missing-module-docstring,\n        no-else-raise,\n        no-else-return,\n        not-callable,\n        pointless-string-statement,\n        raw-checker-failed,\n        simplifiable-if-expression,\n        suppressed-message,\n        too-few-public-methods,\n        too-many-instance-attributes,\n        too-many-locals,\n        too-many-nested-blocks,\n        too-many-positional-arguments,\n        too-many-statements,\n        unidiomatic-typecheck,\n        unknown-option-value,\n        unnecessary-dict-index-lookup,\n        unnecessary-dunder-call,\n        unnecessary-lambda-assigment,\n        unnecessary-lambda,\n        unused-wildcard-import,\n        unpacking-non-sequence,\n        unsubscriptable-object,\n        useless-return,\n        use-dict-literal,\n        use-symbolic-message-instead,\n        useless-suppression,\n        wrong-import-position,\nenable=c-extension-no-member\n\n[METHOD_ARGS]\ntimeout-methods=requests.api.delete,requests.api.get,requests.api.head,requests.api.options,requests.api.patch,requests.api.post,requests.api.put,requests.api.request\n\n[MISCELLANEOUS]\nnotes=FIXME,\n      XXX,\n      TODO\nnotes-rgx=\n\n[REFACTORING]\nmax-nested-blocks=5\nnever-returning-functions=sys.exit,argparse.parse_error\n\n[REPORTS]\nevaluation=max(0, 0 if fatal else 10.0 - ((float(5 * error + warning + refactor + convention) / statement) * 10))\nmsg-template=\nreports=no\nscore=no\n\n[SIMILARITIES]\nignore-comments=yes\nignore-docstrings=yes\nignore-imports=yes\nignore-signatures=yes\nmin-similarity-lines=4\n\n[SPELLING]\nmax-spelling-suggestions=4\nspelling-dict=\nspelling-ignore-comment-directives=fmt: on,fmt: off,noqa:,noqa,nosec,isort:skip,mypy:\nspelling-ignore-words=\nspelling-private-dict-file=\nspelling-store-unknown-words=no\n\n[STRING]\ncheck-quote-consistency=no\ncheck-str-concat-over-line-jumps=no\n\n[TYPECHECK]\ncontextmanager-decorators=contextlib.contextmanager\ngenerated-members=numpy.*,logging.*,torch.*,cv2.*\nignore-none=yes\nignore-on-opaque-inference=yes\nignored-checks-for-mixins=no-member,\n                          not-async-context-manager,\n                          not-context-manager,\n                          attribute-defined-outside-init\nignored-classes=optparse.Values,thread._local,_thread._local,argparse.Namespace\nmissing-member-hint=yes\nmissing-member-hint-distance=1\nmissing-member-max-choices=1\nmixin-class-rgx=.*[Mm]ixin\nsignature-mutators=\n\n[VARIABLES]\nadditional-builtins=\nallow-global-unused-variables=yes\nallowed-redefined-builtins=\ncallbacks=cb_,\ndummy-variables-rgx=_+$|(_[a-zA-Z0-9_]*[a-zA-Z0-9]+?$)|dummy|^ignored_|^unused_\nignored-argument-names=_.*|^ignored_|^unused_\ninit-import=no\nredefining-builtins-modules=six.moves,past.builtins,future.builtins,builtins,io\n"
  },
  {
    "path": ".ruff.toml",
    "content": "line-length = 250\nindent-width = 4\ntarget-version = \"py310\"\nexclude = [\n    \"venv\",\n    \".git\",\n    \".ruff_cache\",\n    \".vscode\",\n\n    \"modules/cfgzero\",\n    \"modules/facelib\",\n    \"modules/flash_attn_triton_amd\",\n    \"modules/hidiffusion\",\n    \"modules/intel/ipex\",\n    \"modules/pag\",\n    \"modules/schedulers\",\n    \"modules/teacache\",\n    \"modules/seedvr\",\n\n    \"modules/control/proc\",\n    \"modules/control/units\",\n    \"modules/control/units/xs_pipe.py\",\n    \"modules/postprocess/aurasr_arch.py\",\n\n    \"pipelines/meissonic\",\n    \"pipelines/omnigen2\",\n    \"pipelines/hdm\",\n    \"pipelines/segmoe\",\n    \"pipelines/xomni\",\n    \"pipelines/chrono\",\n\n    \"scripts/lbm\",\n    \"scripts/daam\",\n    \"scripts/xadapter\",\n    \"scripts/pulid\",\n    \"scripts/instantir\",\n    \"scripts/freescale\",\n    \"scripts/consistory\",\n\n    \"repositories\",\n\n    \"extensions-builtin/Lora\",\n    \"extensions-builtin/sd-extension-chainner/nodes\",\n    \"extensions-builtin/sd-webui-agent-scheduler\",\n    \"extensions-builtin/sdnext-modernui/node_modules\",\n]\n\n[lint]\nselect = [\n  \"F\",\n  \"E\",\n  \"W\",\n  \"C\",\n  \"B\",\n  \"I\",\n  \"YTT\",\n  \"ASYNC\",\n  \"RUF\",\n  \"AIR\",\n  \"NPY\",\n  \"C4\",\n  \"T10\",\n  \"EXE\",\n  \"ISC\",\n  \"ICN\",\n  \"RSE\",\n  \"TCH\",\n  \"TID\",\n  \"INT\",\n  \"PLE\",\n]\nignore = [\n  \"B006\",   # Do not use mutable data structures for argument defaults\n  \"B008\",   # Do not perform function call in argument defaults\n  \"B905\",   # Strict zip() usage\n  \"C420\",   # Unnecessary dict comprehension for iterable; use `dict.fromkeys` instead\n  \"C408\",   # Unnecessary `dict` call\n  \"I001\",   # Import block is un-sorted or un-formatted\n  \"E402\",   # Module level import not at top of file\n  \"E501\",   # Line too long\n  \"E721\",   # Do not compare types, use `isinstance()`\n  \"E731\",   # Do not assign a `lambda` expression, use a `def`\n  \"E741\",   # Ambiguous variable name\n  \"F401\",   # Imported by unused\n  \"EXE001\", # file with shebang is not marked executable\n  \"NPY002\", # replace legacy random\n  \"RUF005\", # Consider iterable unpacking\n  \"RUF008\", # Do not use mutable default values for dataclass\n  \"RUF010\", # Use explicit conversion flag\n  \"RUF012\", # Mutable class attributes\n  \"RUF013\", # PEP 484 prohibits implicit `Optional`\n  \"RUF015\", # Prefer `next(...)` over single element slice\n  \"RUF046\", # Value being cast to `int` is already an integer\n  \"RUF059\", # Unpacked variables are not used\n  \"RUF051\", # Prefer pop over del\n]\nfixable = [\"ALL\"]\nunfixable = []\ndummy-variable-rgx = \"^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$\"\n\n[format]\nquote-style = \"double\"\nindent-style = \"space\"\nskip-magic-trailing-comma = false\nline-ending = \"auto\"\ndocstring-code-format = false\n\n[lint.mccabe]\nmax-complexity = 150\n"
  },
  {
    "path": "CHANGELOG.md",
    "content": "# Change Log for SD.Next\n\n## Update for 2026-02-07\n\n- **Upscalers**\n  - add support for [spandrel](https://github.com/chaiNNer-org/spandrel)  \n    upscaling engine with suport for new upscaling model families  \n  - add two new ai upscalers: *RealPLKSR NomosWebPhoto* and *RealPLKSR AnimeSharpV2*  \n  - add two new interpolation methods: *HQX* and *ICB*  \n- **Features**\n  - pipelines: add **ZImageInpaint**, thanks @CalamitousFelicitousness  \n  - add `--remote` command line flag that reduces client/server chatter and improves link stability  \n    for long-running generates, useful when running on remote servers  \n- **UI**\n  - ui: **themes** add *CTD-NT64Light* and *CTD-NT64Dark*, thanks @resonantsky  \n  - ui: **gallery** add option to auto-refresh gallery, thanks @awsr  \n- **Internal**\n  - refactor: reorganize `cli` scripts  \n- **Fixes**\n  - fix: add metadata restore to always-on scripts  \n  - fix: improve wildcard weights parsing, thanks @Tillerz  \n  - fix: ui gallery cace recursive cleanup, thanks @awsr  \n  - fix: `anima` model detection  \n  - fix: lora unwanted unload  \n  - fix: improve preview error handler  \n\n## Update for 2026-02-04\n\n### Highlights for 2026-02-04\n\nRefresh release two weeks after prior release, yet we still somehow managed to pack in *~150 commits*!  \nHighlights would be two new models: **Z-Image-Base** and **Anima**, *captioning* support for **tagger** models and a massive addition of new **schedulers**  \nAlso here are updates to `torch` and additional GPU archs support for `ROCm` backends, plus a lot of internal improvements and fixes.\n\n[ReadMe](https://github.com/vladmandic/automatic/blob/master/README.md) | [ChangeLog](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md) | [Docs](https://vladmandic.github.io/sdnext-docs/) | [WiKi](https://github.com/vladmandic/automatic/wiki) | [Discord](https://discord.com/invite/sd-next-federal-batch-inspectors-1101998836328697867) | [Sponsor](https://github.com/sponsors/vladmandic)  \n\n### Details for 2026-02-04\n\n- **Models**\n  - [Tongyi-MAI Z-Image Base](https://tongyi-mai.github.io/Z-Image-blog/)  \n    yup, its finally here, the full base model of **Z-Image**  \n  - [CircleStone Anima](https://huggingface.co/circlestone-labs/Anima)  \n    2B anime optimized model based on a modified Cosmos-Predict, using Qwen3-0.6B as a text encoder  \n- **Features**\n  - **caption** tab support for Booru tagger models, thanks @CalamitousFelicitousness  \n  - add SmilingWolf WD14/WaifuDiffusion tagger models, thanks @CalamitousFelicitousness  \n  - support comments in wildcard files, using `#`  \n  - support aliases in metadata skip params, thanks @CalamitousFelicitousness  \n  - ui gallery improve cache cleanup and add manual option, thanks @awsr  \n  - selectable options to add system info to metadata, thanks @Athari  \n    see *settings -> image metadata*  \n- **Schedulers**\n  - schedulers documentation has new home: <https://vladmandic.github.io/sdnext-docs/Schedulers/>\n  - add 13(!) new scheduler families\n    not a port, but more of inspired-by [res4lyf](https://github.com/ClownsharkBatwing/RES4LYF) library  \n    all schedulers should be compatible with both `epsilon` and `flow` prediction style!  \n    *note*: each family may have multiple actual schedulers, so the list total is 56(!) new schedulers     \n    - core family: *RES*\n    - exponential: *DEIS, ETD, Lawson, ABNorsett*\n    - integrators: *Runge-Kutta, Linear-RK, Specialized-RK, Lobatto, Radau-IIA, Gauss-Legendre*\n    - flow: *PEC, Riemannian, Euclidean, Hyperbolic, Lorentzian, Langevin-Dynamics*\n  - add 3 additional schedulers: *CogXDDIM, DDIMParallel, DDPMParallel*  \n    not originally intended to be a general purpose schedulers, but they work quite nicely and produce good results  \n  - image metadata: always log scheduler class used  \n- **API**  \n  - add `/sdapi/v1/xyz-grid` to enumerate xyz-grid axis options and their choices  \n    see `/cli/api-xyzenum.py` for example usage  \n  - add `/sdapi/v1/sampler` to get current sampler config  \n  - modify `/sdapi/v1/samplers` to enumerate available samplers possible options  \n    see `/cli/api-samplers.py` for example usage  \n- **Internal**\n  - tagged release history: <https://github.com/vladmandic/sdnext/tags>  \n    each major for the past year is now tagged for easier reference  \n  - **torch** update\n    *note*: may cause slow first startup/generate  \n    **cuda**: update to `torch==2.10.0`  \n    **xpu**: update to `torch==2.10.0`  \n    **rocm**: update to `torch==2.10.0`  \n    **openvino**: update to `torch==2.10.0` and `openvino==2025.4.1`  \n  - rocm: expand available gfx archs, thanks @crashingalexsan  \n  - rocm: set `MIOPEN_FIND_MODE=2` by default, thanks @crashingalexsan  \n  - relocate all json data files to `data/` folder  \n    existing data files are auto-migrated on startup  \n  - refactor and improve connection monitor, thanks @awsr  \n  - further work on type consistency and type checking, thanks @awsr  \n  - log captured exceptions  \n  - improve temp folder handling and cleanup  \n  - remove torch errors/warings on fast server shutdown  \n  - add ui placeholders for future agent-scheduler work, thanks @ryanmeador  \n  - implement abort system on repeated errors, thanks @awsr  \n    currently used by lora and textual-inversion loaders  \n  - update package requirements  \n- **Fixes**\n  - add video ui elem_ids, thanks @ryanmeador  \n  - use base steps as-is for non sd/sdxl models  \n  - ui css fixes for modernui  \n  - support lora inside prompt selector  \n  - framepack video save  \n  - metadata save for manual saves  \n\n## Update for 2026-01-22\n\nBugfix refresh\n\n- add `SD_DEVICE_DEBUG` env variable to trace rocm/xpu/directml init failures  \n- fix detailer double save  \n- fix lora load when using peft/diffusers loader  \n- fix rocm hipblaslt detection  \n- fix image delete, thanks @awsr  \n- fix `all_seeds` error  \n- fix qwen settings typo, thanks @liutyi  \n- improve `wrap_gradio` error handling  \n- use refiner/detail steps as-is for non sd/sdxl models  \n\n## Update for 2026-01-20\n\n### Highlights for 2026-01-20\n\nFirst release of 2026 brings quite a few new models: **Flux.2-Klein, Qwen-Image-2512, LTX-2-Dev, GLM-Image**  \nThere are also improvements to *SDNQ* quantization engine, updated *Prompt Enhance*, *Image Preview* and many others.  \nPlus some significant under-the-hood changes to improve code coverage and quality which resulted in more than usual levels of bug-fixes and some ~330 commits!  \nFor full list of changes, see full changelog.\n\n[ReadMe](https://github.com/vladmandic/automatic/blob/master/README.md) | [ChangeLog](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md) | [Docs](https://vladmandic.github.io/sdnext-docs/) | [WiKi](https://github.com/vladmandic/automatic/wiki) | [Discord](https://discord.com/invite/sd-next-federal-batch-inspectors-1101998836328697867) | [Sponsor](https://github.com/sponsors/vladmandic)  \n\n### Details for 2026-01-20\n\n- **Models**\n  - [Flux.2 Klein](https://bfl.ai/blog/flux2-klein-towards-interactive-visual-intelligence)  \n    Flux.2-Klein is a new family of compact models from BFL in *4B and 9B sizes* and avaialable as *destilled and base* variants  \n    also includes are *sdnq prequantized variants*  \n    *note*: 9B variant is [gated](https://vladmandic.github.io/sdnext-docs/Gated/)  \n  - [Qwen-Image-2512](https://qwen.ai/blog?id=qwen-image-2512)  \n    Qwen-Image successor, significantly reduces the AI-generated look and adds finer natural detailils and improved text rendering  \n    available in both *original*, *sdnq-svd prequantized* and *sdnq-dynamic prequantized*  variants  \n    thanks @CalamitousFelicitousness  \n  - [LTX-2 19B Dev](https://ltx.io/model/ltx-2)  \n    LTX-2 is a new very large 19B parameter video generation model from Lightricks using Gemma-3 text encoder  \n    available for T2I/I2I workflows in original and sdnq prequantized variants  \n    *note*: model is very sensitive to input params and will result in errors otherwise  \n  - [GLM-Image](https://z.ai/blog/glm-image)  \n    GLM-image is a new image generation model that adopts a hybrid autoregressive with diffusion decoder architecture  \n    available in both *original* and *sdnq-dynamic prequantized* variants  \n    thanks @CalamitousFelicitousness  \n    *note*: model requires pre-release versions of `transformers` package:  \n    > pip install --upgrade git+https://github.com/huggingface/transformers.git  \n    > ./webui.sh --experimental  \n  - [Nunchaku Z-Image Turbo](https://huggingface.co/nunchaku-tech/nunchaku-z-image-turbo)  \n    nunchaku optimized z-image turbo  \n- **Feaures**\n  - **SDNQ**: add *dynamic* quantization method  \n    sdnq can dynamically determine best quantization method for each module layer  \n    slower to quantize on-the-fly, but results in better quality with minimal resource usage  \n  - **SDNQ** now has *19 int* based and *69 float* based quantization types  \n    *note*: not all are exposed via ui purely for simplicity, but all are available via api and scripts  \n  - **wildcards**: allow weights, thanks @Tillerz  \n  - **sampler**: add laplace beta schedule  \n    results in better prompt adherence and smoother infills  \n  - **prompt enhance**: improve handling and refresh ui, thanks @CalamitousFelicitousness  \n    new models such moondream-3 and xiaomo-mimo  \n    add support for *thinking* mode where model can reason about the prompt  \n    add support for *vision* processing where prompt enhance can also optionally analyze input image  \n    add support for *pre-fill* mode where prompt enhance can continue from existing caption  \n  - **chroma**: add inpaint pipeline support  \n  - **taesd preview**: support for more models, thanks @alerikaisattera  \n  - **image ouput paths**: better handling of relative/absolute paths, thanks @CalamitousFelicitousness  \n- **UI**\n  - kanvas add send-to functionality  \n  - kanvas improve support for standardui  \n  - improve extensions tab layout and behavior, thanks @awsr  \n  - indicate collapsed/hidden sections  \n  - persistent panel minimize/maximize state  \n  - gallery improve sorting behavior  \n  - gallery implement prev/next navigation in full screen viewer, thanks @ryanmeador  \n- **Internal**\n  - **lora** native support by default will now skip text-encoder  \n    can be enabled in *settings -> networks*\n  - update core js linting to `eslint9`, thanks @awsr  \n  - update modernui js linting to `eslint9`, thanks @awsr  \n  - update kanvas js linting to `eslint9`, thanks @awsr  \n  - update strong typing checks, thanks @awsr  \n  - update reference models previews, thanks @liutyi  \n  - update models specs page, thanks @alerikaisattera  \n  - sdnq improvements  \n  - startup sequence optimizations  \n  - rocm/hip/hipblast detection and initialization improvements  \n  - zluda detection and initialization improvements  \n  - new env variable `SD_VAE_DEFAULT` to force default vae processing  \n  - update `nunchaku==1.1.0`  \n  - lora switch logic from force-diffusers to allow-native  \n  - split `reference.json`  \n  - print system env on startup  \n  - disable fallback on models with custom loaders  \n  - refactor triggering of prompt parser and set secondary prompts when needed  \n  - refactor handling of seeds  \n  - allow unsafe ssl context for downloads  \n- **Fixes**\n  - controlnet: controlnet with non-english ui locales  \n  - core: add skip_keys to offloading logic, fixes wan frames mismatch, thanks @ryanmeador  \n  - core: force model move on offload=none  \n  - core: hidiffusion tracing  \n  - core: hip device name detection  \n  - core: reduce triton test verbosity  \n  - core: switch processing class not restoring params  \n  - extension tab: update checker, date handling, formatting etc., thanks @awsr  \n  - lora force unapply on change  \n  - lora handle null description, thanks @CalamitousFelicitousness  \n  - lora loading when using torch without distributed support  \n  - lora skip with strength zero  \n  - lora: generate slowdown when consequtive lora-diffusers enabled  \n  - model: google-genai auth, thanks @CalamitousFelicitousness  \n  - model: improve qwen i2i handling  \n  - model: kandinsky-5 image and video on non-cuda platforms  \n  - model: meituan-longca-image-edit missing image param  \n  - model: wan 2.2 i2v  \n  - model: z-image single-file loader  \n  - other: update civitai base models, thanks @trojaner  \n  - ui: gallery save/delete  \n  - ui: mobile auto-collapse when using side panel, thanks @awsr  \n  - ui: networks filter by model type  \n  - ui: networks icon/list view type switch, thanks @awsr  \n  - vae: force align width/height to vae scale factor  \n  - wildards with folder specification  \n\n## Update for 2025-12-26\n\n### Highlights for 2025-12-26\n\nEnd of year release update, just two weeks after previous one, with several new models and features:\n- Several new models including highly anticipated **Qwen-Image-Edit 2511** as well as **Qwen-Image-Layered**, **LongCat Image** and **Ovis Image**  \n- New features including support for **Z-Image** *ControlNets* and *fine-tunes* and **Detailer** segmentation support  \n\n[ReadMe](https://github.com/vladmandic/automatic/blob/master/README.md) | [ChangeLog](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md) | [Docs](https://vladmandic.github.io/sdnext-docs/) | [WiKi](https://github.com/vladmandic/automatic/wiki) | [Discord](https://discord.com/invite/sd-next-federal-batch-inspectors-1101998836328697867) | [Sponsor](https://github.com/sponsors/vladmandic)  \n\n### Details for 2025-12-26\n\n- **Models**\n  - [LongCat Image](https://github.com/meituan-longcat/LongCat-Image) in *Image* and *Image Edit* variants  \n    LongCat is a new 8B diffusion base model using Qwen-2.5 as text encoder  \n  - [Qwen-Image-Edit 2511](https://huggingface.co/Qwen/Qwen-Image-Edit-2511) in *base* and *pre-quantized* variants  \n    Key enhancements: mitigate image drift, improved character consistency, enhanced industrial design generation, and strengthened geometric reasoning ability  \n  - [Qwen-Image-Layered](https://huggingface.co/Qwen/Qwen-Image-Layered) in *base* and *pre-quantized* variants  \n    Qwen-Image-Layered, a model capable of decomposing an image into multiple RGBA layers  \n    *note*: set number of desired output layers in *settings -> model options*  \n  - [Ovis Image 7B](https://huggingface.co/AIDC-AI/Ovis-Image-7B)  \n    Ovis Image is a new text-to-image base model based on Qwen3 text-encoder and optimized for text-rendering  \n- **Features**\n  - Google **Gemini** and **Veo** models support for both *Dev* and *Vertex* access methods  \n    see [docs](https://vladmandic.github.io/sdnext-docs/Google-GenAI/) for details  \n  - **Z-Image Turbo** support loading transformer file-tunes in safetensors format  \n    as with any transformers/unet finetunes, place them then `models/unet`  \n    and use **UNET Model** to load safetensors file as they are not complete models  \n  - **Z-Image Turbo** support for **ControlNet Union**  \n    includes 1.0, 2.0 and 2.1 variants  \n  - **Detailer** support for segmentation models  \n    some detection models can produce exact segmentation mask and not just box  \n    to enable, set `use segmentation` option  \n    added segmentation models: *anzhc-eyes-seg*, *anzhc-face-1024-seg-8n*, *anzhc-head-seg-8n*  \n- **Internal**\n  - update nightlies to `rocm==7.1`  \n  - mark `python==3.9` as deprecated  \n  - extensions improved status indicators, thanks @awsr  \n  - additional type-safety checks, thanks @awsr  \n  - add model info to ui overlay  \n- **Wiki/Docs/Illustrations**  \n  - update models page, thanks @alerikaisattera  \n  - update reference models samples, thanks @liutyi  \n- **Fixes**  \n  - generate forever fix loop checks, thanks @awsr  \n  - tokenizer expclit use for flux2, thanks @CalamitousFelicitousness  \n  - torch.compile skip offloading steps  \n  - kanvas css with standardui  \n  - control input media with non-english locales  \n  - handle embeds when on meta device  \n  - improve offloading when model has manual modules  \n  - ui section colapsible state, thanks @awsr  \n  - ui filter by model type  \n\n## Update for 2025-12-11\n\n### Highlights for 2025-12-11\n\n*What's new?*  \nNew native [kanvas](https://vladmandic.github.io/sdnext-docs/Kanvas/) module for image manipulation that fully replaces *img2img*, *inpaint* and *outpaint* controls, massive update to **Captioning/VQA** models and features  \nNew generation of **Flux.2** large image model, new **Z-Image** model that is creating a lot of buzz, new **Kandinsky 5 Lite** image model and new **Photoroom PRX** model  \nAnd first cloud models with **Google Nano Banana** *2.5 Flash and 3.0 Pro* and **Google Veo** *3.1* video model  \nAlso new are **HunyuanVideo 1.5** and **Kandinsky 5 Pro** video models  \nPlus a lot of internal improvements and fixes  \n\n![Screenshot](https://github.com/user-attachments/assets/54b25586-b611-4d70-a28f-ee3360944034)\n\n[ReadMe](https://github.com/vladmandic/automatic/blob/master/README.md) | [ChangeLog](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md) | [Docs](https://vladmandic.github.io/sdnext-docs/) | [WiKi](https://github.com/vladmandic/automatic/wiki) | [Discord](https://discord.com/invite/sd-next-federal-batch-inspectors-1101998836328697867) | [Sponsor](https://github.com/sponsors/vladmandic)  \n\n### Details for 2025-12-11\n\n- **Models**\n  - [Black Forest Labs FLUX.2 Dev](https://bfl.ai/blog/flux-2) and prequantized variation [SDNQ-SVD-Uint4](https://huggingface.co/Disty0/FLUX.2-dev-SDNQ-uint4-svd-r32)  \n    **FLUX.2-Dev** is a brand new model from BFL and uses large 32B DiT together with Mistral 24B as text encoder  \n    model is available for text, image and edit tasks and can optionally use control input as second input image  \n    this is a very large model at ~100GB, so use of prequantized model at ~32GB is strongly advised\n    using prequant version and default offloading, model runs on GPUs with ~20GB  \n    *note*: model is [gated](https://vladmandic.github.io/sdnext-docs/Gated/)  \n  - [Z-Image Turbo](https://huggingface.co/Tongyi-MAI/Z-Image-Turbo) and prequantized variation [SDNQ-SVD-Uint4](https://huggingface.co/Disty0/Z-Image-Turbo-SDNQ-uint4-svd-r32)  \n    **Z-Image** is a powerful and highly efficient image generation model with 6B parameters and using Qwen-3 as text encoder  \n    unlike most of new models that are far larger, Z-Image architecture allows it to run with good performance even on mid-range hardware  \n    *note*: initial release is *Turbo* variant only with *Base* and *Edit* variants to follow  \n  - [Kandinsky 5.0 Lite]() is a new 6B model using Qwen-2.5 as text encoder  \n    it comes in text-to-image and image-edit variants  \n  - **Google Gemini Nano Banana** [2.5 Flash](https://blog.google/products/gemini/gemini-nano-banana-examples/) and [3.0 Pro](https://deepmind.google/models/gemini-image/pro/) \n    first cloud-based model directly supported in SD.Next UI  \n    *note*: need to set `GOOGLE_API_KEY` environment variable with your key to use this model  \n  - [Photoroom PRX 1024 Beta](https://huggingface.co/Photoroom/prx-1024-t2i-beta)  \n    PRX (Photoroom Experimental) is a small 1.3B parameter t2i model trained entirely from scratch, it uses T5-Gemma text-encoder  \n- **Video**  \n  - [HunyuanVideo 1.5](https://huggingface.co/tencent/HunyuanVideo-1.5) in T2V and I2V variants, both standard and distilled and both 720p and 480p resolutions  \n    **HunyuanVideo 1.5** improves upon previous 1.0 version with better quality and higher resolution outputs, it uses Qwen2.5-VL text-encoder  \n    distilled variants provide faster generation with slightly reduced quality  \n  - [Kandinsky 5.0 Pro Video](https://huggingface.co/kandinskylab/Kandinsky-5.0-T2V-Pro-sft-5s-Diffusers) in T2V and I2V variants  \n    larger 19B (and more powerful version) of previously released Lite 2B models  \n  - [Google Veo 3.1](https://gemini.google/us/overview/video-generation/) for T2V and I2V workflows  \n    *note*: need to set `GOOGLE_API_KEY` environment variable with your key to use this model  \n- **Kanvas**: new module for native canvas-based image manipulation  \n  kanvas is a full replacement for *img2img, inpaint and outpaint* controls  \n  see [docs](https://vladmandic.github.io/sdnext-docs/Kanvas/) for details  \n  *experimental*: report any feedback in master [issue](https://github.com/vladmandic/sdnext/issues/4358)  \n- **Captioning** and **VQA: Visual Question & Answer**  \n  massive update to both features and supported models, thanks @CalamitousFelicitousness  \n  models:  \n  - additional `mooondream-2` features  \n  - support for `moondream-3-preview`  \n  - support for `qwen3-vl` with thinking  \n  - additional `gemma-3-vl` finetunes  \n  - support for `XiaomiMiMo`  \n  ui:  \n  - ability to annotate actual image, not just generate captions/answers  \n    e.g. actualy mark detected regions/points  \n  features:  \n  - ui indicator of model capabilities  \n  - support for *prefill* style of prompting/answering  \n  - support for *reasoning* mode for supported models  \n    with option to output answer-only or reasoning-process   \n  - additional debug logging  \n- **Other Features**\n  - **wildcards**: allow recursive inline wildcards using curly braces syntax  \n  - **sdnq**: simplify pre-quantization saved config  \n  - **attention**: additional torch attention settings  \n  - **lora**: separate fuse setting for native-vs-diffuser implementations  \n  - **auth**: strong-enforce auth check on all api endpoints  \n  - **amdgpu**: prefer rocm-on-windows over zluda  \n  - **amdgpu**: improve rocm-on-windows installer  \n  - **sdnq**: improve dequant logic  \n  - **gallery**: significant performance improvements, thanks @awsr  \n- **API**\n  - `/control` endpoint is now fully compatible with scripts  \n  - `/control` additional params to to control *xyz grid*  \n    see `cli/api-xyz.py` for simple example  \n  - `/detailers` new endpoint to list available detailers, both built-in and any custom downloaded  \n  - `/face-restorers` expanded to list model folders  \n- **Internal**\n  - python: set 3.10 as minimum supported version  \n  - sdnq: multiple improvements to quantization and dequantization logic\n  - torch: update to `torch==2.9.1` for *cuda, ipex, openvino, rocm* backends\n  - attention: refactor attention handling  \n  - scripts: remove obsolete video scripts  \n  - lint: update global lint rules  \n  - chrono: switch to official pipeline  \n  - pipeline: add optional preprocess and postprocess hooks  \n  - auth: wrap all internal api calls with auth check and use token when possible  \n  - installer: reduce requirements  \n  - installer: auto-restart on self-update  \n  - server: set correct mime-types  \n  - sdnq: unconditional register on startup  \n  - python: start work on future-proofing for modern python versions, thanks @awsr  \n  - nunchaku: update to `1.0.2`  \n  - lint: add rules for run-on-windows  \n  - gallery: setting to enable/disable client-side caching, thanks @awsr  \n  - gallery: faster thumbnail generation, thanks @awsr  \n  - gallery: purge old thumbnails, thanks @awsr  \n- **Docs**\n  - update supported models table with VAE information, thanks @alerikaisattera\n- **Fixes**\n  - xyz-grid: improve parsing of axis lists, thanks @awsr  \n  - hires: strength save/load in metadata, thanks @awsr  \n  - imgi2img: fix initial scale tab, thanks @awsr  \n  - img2img: fix restoring refine sampler from metadata, thanks @awsr\n  - log: client log formatting, thanks @awsr  \n  - rocm: check if installed before forcing install  \n  - pony-v7: fix text-encoder  \n  - detailer: with face-restorers  \n  - detailer: using lora in detailer prompt  \n  - detailer: fail on unsupported models instead of corrputing results  \n  - ui: fix collapsible panels  \n  - svd: fix stable-video-diffusion dtype mismatch  \n  - animatediff: disable sdnq if used  \n  - lora: restore pipeline type if reload/recompile needed  \n  - process: improve send-to functionality  \n  - control: safe load non-sparse controlnet  \n  - control: fix marigold preprocessor with bfloat16  \n  - auth: fix password being shown in clear text during login  \n  - firefox: remove obsolete checks, thanks @awsr  \n  - runai streamer: cleanup logging, thanks @CalamitousFelicitousness  \n  - gradio: event handlers, thanks @awsr  \n\n## Update for 2025-11-06\n\n### Highlights for 2025-11-06\n\nService pack release that handles critical issues and improvements for **ROCm-on-Windows** and **ZLUDA** backends  \nAlso included are several new features, notably improvements to **detailer** and ability to run [SD.Next](https://github.com/vladmandic/sdnext) with specific modules disabled  \nAnd new video model, **nVidia SANA 2B**  \n\n![Screenshot](https://github.com/user-attachments/assets/d6119a63-6ee5-4597-95f6-29ed0701d3b5)\n\n[ReadMe](https://github.com/vladmandic/automatic/blob/master/README.md) | [ChangeLog](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md) | [Docs](https://vladmandic.github.io/sdnext-docs/) | [WiKi](https://github.com/vladmandic/automatic/wiki) | [Discord](https://discord.com/invite/sd-next-federal-batch-inspectors-1101998836328697867) | [Sponsor](https://github.com/sponsors/vladmandic)  \n\n### Details for 2025-11-06\n\n- **Models**\n  - [SANA Video_2B_480p T2V](https://huggingface.co/Efficient-Large-Model/SANA-Video_2B_480p_diffusers) is a small 2B ultra-efficient diffusion model  \n    designed for rapid generation of high-quality videos and uses Gemma2 text encoder  \n- **Features**\n  - **ROCm for Windows** switch to using **TheRock** `torch` builds when available  \n    recommended to run: `webui --use-rocm --reinstall`  \n  - **ZLUDA** improve detection and handling of unsupported GPUs  \n    recommended to run: `webui --use-zluda --reinstall`  \n  - **detailer**  \n    optional include detection image to output results  \n    optional sort detection objects left-to-right for improved prompt consistency  \n    enable multi-subject and multi-model prompts  \n  - **disable modules**  \n    ability to disable parts of the app  \n    useful for custom deployments where some features are not desired  \n    *note*: this doesn't just hide it from user, it completely disables the code paths  \n    use `--disable x,y,z`  \n    possible values:  \n    - main tabs: *control,txt2img,img2img,video,extras,caption,gallery*  \n    - aside tabs: *extensions,models,info,update,history,monitor,onnx,system,networks,logs*  \n    - special: *settings,config* (hidden instead of disabled)  \n  - **wildcards**: add inline processing using curly braces syntax  \n  - add setting to control `cudnn` enable/disable  \n    *note*: this can also be used to enable/disable `MIOpen` on ROCm backends  \n  - change `vlm` beams to 1 by default for faster response  \n  - **controlnet** allow processor to keep aspect-ratio for override images based on i2i or t2i resolution  \n  - **networks** info details now displays image metadata from preview image  \n  - **networks** new model previews, thanks @liutyi  \n- **Fixes**\n  - zluda: test and disable MIOpen as needed  \n  - qwen: improve lora compatibility  \n  - chrono: transformers handling  \n  - chrono: extract last frame  \n  - chrono: add vae scale override, thanks @CalamitousFelicitousness  \n  - runai: improve streamer integration  \n  - transformers: `dtype` use new syntax  \n  - rocm: possible endless loop during hip detection  \n  - rocm: auto-disable `miopen` for gfx120x  \n  - detailer: better handling of settings, thanks @awsr  \n  - installer: cleanup `--optional`  \n  - hires: guard against multi-controlnet  \n  - inpaint: fix init  \n  - version: detection when cloned with .git suffix, thanks @awsr  \n  - sdnq: init on video model load  \n  - model type: detection  \n  - model type: add tracing to model detection  \n  - settings: guard against non-string values, thanks @awsr  \n  - ui: wait for server options to be ready before initializing ui  \n  - ui: fix full-screen image viewer buttons with non-standard ui theme  \n  - ui: control tab show override section  \n  - ui: mobile layout for video tab  \n  - ui: increase init timeout  \n  - video: save to subfolder  \n  - taesd: warn on long decode times  \n  - metadata: keep exif on thumbnail generation  \n  - wildcard: obey seed for reproducible results  \n  - sageattention: handle possible triton issues on some nvidia gpus, thanks @CalamitousFelicitousness  \n\n## Update for 2025-10-31\n\n### Highlights for 2025-10-31\n\nLess than 2 weeks since last release, here's a service-pack style update with a lot of fixes and improvements:\n- Reorganization of **Reference Models** into *Base, Quantized, Distilled and Community* sections for easier navigation  \n  and introduction of optimized **pre-quantized** variants for many popular models - use this as your quick start!  \n- New models:  \n  **HunyuanImage 2.1** capable of 2K images natively, **HunyuanImage 3.0** large unified multimodal autoregressive model,  \n  **ChronoEdit** that re-purposes temporal consistency of generation for image editing  \n  **Pony 7** based on AuraFlow architecture, **Kandinsky 5** 10s video models  \n- New **offline mode** to use previously downloaded models without internet connection  \n- Optimizations to **WAN-2.2** given its popularity  \n  plus addition of native **VAE Upscaler** and optimized **pre-quantized** variants  \n- New SOTA model loader using **Run:ai streamer**  \n- Updates to `rocm` and `xpu` backends  \n- Fixes, fixes, fixes... too many to list here!  \n\n![Screenshot](https://github.com/user-attachments/assets/d6119a63-6ee5-4597-95f6-29ed0701d3b5)\n\n[ReadMe](https://github.com/vladmandic/automatic/blob/master/README.md) | [ChangeLog](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md) | [Docs](https://vladmandic.github.io/sdnext-docs/) | [WiKi](https://github.com/vladmandic/automatic/wiki) | [Discord](https://discord.com/invite/sd-next-federal-batch-inspectors-1101998836328697867) | [Sponsor](https://github.com/sponsors/vladmandic)  \n\n### Details for 2025-10-31\n\n- **Reference** networks section is now split into actual *Base* models plus:  \n  - **Quantized**: pre-quantized variants of the base models using SDNQ-SVD quantization for optimal quality and smallest possible resource usage  \n    examples: *FLUX.1-Dev/Krea/Kontext/Schnell, Qwen-Image/Edit/2509, Chroma1-HD, WAN-2.2-A44B, etc.*  \n    *note*: pre-quantized *WAN-2.2-14B* is also available in video models and runs with only 12GB VRAM!  \n  - **Distilled**: distilled variants of base models  \n    examples: *Turbo, Lightning, Lite, SRPO, Distill, Pruning, etc.*  \n  - **Community**: community highlights  \n    examples: *Tempest, Juggernaut, Illustrious, Pony, NoobAI, etc.*  \n    and all reference models have new preview images, thanks @liutyi  \n- **Models Reference**  \n  - [Tencent HunyuanImage 2.1](https://huggingface.co/tencent/HunyuanImage-2.1) in *full*, *distilled* and *refiner* variants  \n    *HunyuanImage-2.1* is a large (51GB) T2I model capable of natively generating 2K images and uses Qwen2.5 + T5 text-encoders and 32x VAE  \n  - [Tencent HunyuanImage 3.0](https://huggingface.co/tencent/HunyuanImage-3.0) in [pre-quant](https://huggingface.co/Disty0/HunyuanImage3-SDNQ-uint4-svd-r32) only variant due to massive size  \n    *HunyuanImage 3.0* is very large at 47GB pre-quantized (oherwise its 157GB) that unifies multimodal understanding and generation within an autoregressive framework  \n  - [nVidia ChronoEdit](https://huggingface.co/nvidia/ChronoEdit-14B-Diffusers)  \n    *ChronoEdit* is a 14B image editing model based on *WAN*  \n    this model reframes image editing as a video generation task, using input and edited images as start/end frames to leverage pretrained video models with temporal consistency  \n    to extend temporal consistency for image editing, set *settings -> model options -> chrono temporal steps* to desired number of temporaly reasoning steps  \n  - [Kandinsky 5 Lite 10s](https://huggingface.co/ai-forever/Kandinsky-5.0-T2V-Lite-sft-10s-Diffusers') in *SFT, CFG-distilled and Steps-distilled* variants  \n    second series of models in *Kandinsky5* series is T2V model optimized for 10sec videos and uses Qwen2.5 text encoder  \n  - [Pony 7](https://huggingface.co/purplesmartai/pony-v7-base)  \n    Pony 7 steps in a different direction from previous Pony models and is based on AuraFlow architecture and UMT5 encoder  \n- **Models Auxiliary**  \n  - [Qwen 3-VL](https://huggingface.co/Qwen/Qwen3-VL-4B-Instruct) VLM for interrogate and prompt enhance, thanks @CalamitousFelicitousness  \n    this includes *2B, 4B and 8B* variants  \n  - [WAN Asymettric Upscale](https://huggingface.co/spacepxl/Wan2.1-VAE-upscale2x)  \n    available as general purpose upscaler that can be used during standard workflow or process tab  \n    available as VAE for compatible video models: *WAN-2.x-14B, SkyReels-v2* models  \n  - [Apple DepthPro](https://huggingface.co/apple/DepthPro) controlnet processor, thanks @nolbert82  \n  - [LibreFlux controlnet](https://huggingface.co/neuralvfx/LibreFlux-ControlNet) segmentation controlnet for FLUX.1  \n- **Features**\n  - **offline mode**: enable in *settings -> hugginface*  \n    enables fully offline mode where previously downloaded models can be used as-is  \n    *note*: must be enabled only after all packages have been installed and model has been run online at least once  \n  - **model load**: SOTA method using nVidia's [Run:ai streamer](https://github.com/run-ai/runai-model-streamer)  \n    enable in *settings -> model options -> runai streamer*  \n    applies to *diffusers, transformers and sdnq* loaders, note this is linux-only feature  \n    *experimental* but shows significant model load speedups, 20-40% depending on model and hardware  \n- **Backend**\n  - switch to `torch==2.9` for *ipex, rocm and openvino*  \n  - switch to `rocm==7.0` for nightlies  \n  - log `triton` availability on startup  \n  - add `xpu` stats in gpu monitor  \n- **Other**\n  - improved **SDNQ SVD** and low-bit matmul performance  \n  - reduce RAM usage on model load using **SDNQ SVD**\n  - change default **schedulers** for sdxl  \n  - warn on `python==3.9` end-of-life and `python==3.10` not actively supported  \n  - **scheduler** add base and max shift parameters for flow-matching samplers  \n  - enhance `--optional` flag to pre-install optional packages  \n  - add `[lora]` to recognized filename patterns  \n  - when using **shared-t5** *(default)*, it will load standard or pre-quant depending on model  \n  - enhanced LoRA support for **Wan-2.2-14B**  \n  - log available attention mechanisms on startup  \n  - support for switching back-and-forth **t2i** and **t2v** for *wan-2.x* models  \n  - control `api` cache controlnets  \n  - additional model modules **deduplication** for both normal and pre-quant models: *umt5, qwen25-vl*  \n- **Fixes**\n  - startup error with `--profile` enabled if using `--skip`  \n  - restore orig init image for each batch sequence  \n  - fix modernui hints layout  \n  - fix `wan-2.2-a14b` stage selection  \n  - fix `wan-2.2-5b` vae decode  \n  - disabling live preview should not disable progress updates  \n  - video tab create `params.txt` with metadata  \n  - fix full-screen image-viewer toolbar actions with control tab  \n  - improve filename sanitization  \n  - lora auto-detect low/high stage if not specified  \n  - lora disable fuse on partially applied network  \n  - fix networks display with extended characters, thanks @awsr  \n  - installer handle different `opencv` package variants  \n  - fix using pre-quantized shared-t5  \n  - fix `wan-2.2-14b-vace` single-stage exectution  \n  - fix `wan-2.2-5b` tiled vae decode  \n  - fix `controlnet` loading with quantization  \n  - video use pre-quantized text-encoder if selected model is pre-quantized  \n  - handle sparse `controlnet` models  \n  - catch `xet` warnings  \n  - avoid unnecessary pipe variant switching  \n  - validate pipelines on import  \n  - fix `nudenet` process tab operations  \n  - `controlnet` input validation  \n  - log metadata keys that cannot be applied  \n  - fix `framepack` with image input  \n\n## Update for 2025-10-18\n\n- **Models**\n  [Kandinsky 5 Lite](https://huggingface.co/ai-forever/Kandinsky-5.0-T2V-Lite-sft-5s-Diffusers') in *SFT, CFG-distilled and Steps-distilled* variants  \n  first model in Kandinsky5 series is T2V model optimized for 5sec videos and uses Qwen2.5 text encoder  \n- **Fixes**\n  - ROCm-on-Windows additional checks  \n  - SDNQ-SVD fallback on incompatible layers  \n  - Huggingface model download  \n  - Video implement dynamic and manual sampler shift  \n  - Fix interrupt batch processing  \n  - Delay import of control processors until used  \n  - Fix tiny VAE with batched results  \n  - Fix CFG scale not added to metadata and set valid range to >=1.0  \n- **Other**\n  - Optimized Video tab layout  \n  - Video enable VAE slicing and framewise decoding when possible  \n  - Detect and log `flash-attn` and `sageattention` if installed  \n  - Remove unused UI settings  \n\n## Update for 2025-10-17\n\n### Highlights for 2025-10-17\n\nIt's been a month since the last release and number of changes is yet again massive with over 300 commits!  \nHighlight are:  \n- **Torch**: ROCm on Windows for AMD GPUs  \n  if you have a compatible GPU, performance gains are significant!  \n- **Models**:  \n  a lot of new stuff with **Qwen-Image-Edit** including multi-image edits and distilled variants,  \n  new **Flux**, **WAN**, **LTX**, **HiDream** variants, expanded **Nunchaku** support and new SOTA upscaler with **SeedVR2**  \n  plus improved video support in general, including new methods of video encoding  \n- **Quantization**:  \n  new **SVD**-style quantization using SDNQ offers almost zero-loss even with **4bit** quantization  \n  and now you can also test your favorite quantization on-the-fly and then save/load model for future use  \n- Other: support for **Huggingface** mirrors, changes to installer to prevent unwanted `torch-cpu` operations, improved VAE previews, etc.  \n\n![Screenshot](https://github.com/user-attachments/assets/d6119a63-6ee5-4597-95f6-29ed0701d3b5)\n\n[ReadMe](https://github.com/vladmandic/automatic/blob/master/README.md) | [ChangeLog](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md) | [Docs](https://vladmandic.github.io/sdnext-docs/) | [WiKi](https://github.com/vladmandic/automatic/wiki) | [Discord](https://discord.com/invite/sd-next-federal-batch-inspectors-1101998836328697867) | [Sponsor](https://github.com/sponsors/vladmandic)  \n\n### Details for 2025-10-17\n\n- **Models**\n  - [WAN 2.2 14B VACE](https://huggingface.co/alibaba-pai/Wan2.2-VACE-Fun-A14B)  \n    available for *text-to-image* and *text-to-video* and *image-to-video* workflows  \n  - [Qwen Image Edit 2509](https://huggingface.co/Qwen/Qwen-Image-Edit-2509) and [Nunchaku Qwen Image Edit 2509](https://huggingface.co/nunchaku-tech/nunchaku-qwen-image-edit-2509)  \n    updated version of Qwen Image Edit with improved image consistency  \n  - [Qwen Image Pruning](https://huggingface.co/OPPOer/Qwen-Image-Pruning) and [Qwen Image Edit Pruning](https://huggingface.co/OPPOer/Qwen-Image-Edit-Pruning)  \n    pruned versions of Qwen with 13B params instead of 20B, with some quality tradeoff  \n  - [Tencent FLUX.1 Dev SRPO](https://huggingface.co/tencent/SRPO)  \n    SRPO is trained by Tencent with specific technique: directly aligning the full diffusion trajectory with fine-grained human preference  \n  - [Nunchaku SDXL](https://huggingface.co/nunchaku-tech/nunchaku-sdxl) and [Nunchaku SDXL Turbo](https://huggingface.co/nunchaku-tech/nunchaku-sdxl-turbo)  \n    impact of nunchaku engine on unet-based model such as sdxl is much less than on a dit-based models, but its still significantly faster than baseline  \n    note that nunchaku optimized and pre-quantized unet is replacement for base unet, so its only applicable to base models, not any of fine-tunes  \n    *how to use*: enable nunchaku in settings -> quantization and then load either sdxl-base or sdxl-base-turbo reference models  \n  - [HiDream E1.1](https://huggingface.co/HiDream-ai/HiDream-E1-1)  \n    updated version of HiDream-E1 image editing model  \n  - [LTXVideo 0.9.8](https://huggingface.co/Lightricks/LTX-Video-0.9.8-13B-distilled)  \n    updated version of LTXVideo t2v/i2iv model  \n  - [SeedVR2](https://iceclear.github.io/projects/seedvr/)  \n    originally designed for video restoration, seedvr works great for image detailing and upscaling!  \n    available in 3B, 7B and 7B-sharp variants, use as any other upscaler!  \n    note: seedvr is a very large model (6.4GB and 16GB respectively) and not designed for lower-end hardware, quantization is highly recommended  \n    note: seedvr is highly sensitive to its cfg scale, set in *settings -> postprocessing*  \n    lower values will result in smoother output while higher values add details  \n  - [X-Omni SFT](https://x-omni-team.github.io/)  \n    *experimental*: X-omni is a transformer-only discrete auto-regressive image generative model trained with reinforcement learning  \n- **Features**\n  - **Model save**: ability to save currently loaded model as a new standalone model  \n    why? SD.Next always prefers to start with full model and quantize on-demand during load  \n    however, when you find your exact preferred quantization settings that work well for you,  \n    saving such model as a new model allows for faster loads and reduced disk space usage  \n    so its best of both worlds: you can experiment and test different quantization methods and once you find the one that works for you, save it as a new model  \n    saved models appear in network tab as normal models and can be loaded as such  \n    available in *models* tab  \n  - [Qwen Image-Edit](https://huggingface.co/Qwen/Qwen-Image-Edit-2509) multi-image editing\n    requires qwen-image-edit-2509 or its variant as multi-image edits are not available in original qwen-image  \n    in ui control tab: inputs -> separate init image  \n    add image for *input media* and *control media*  \n    can be \n  - [Cache-DiT](https://github.com/vipshop/cache-dit)  \n    cache-dit is a unified, flexible and training-free cache acceleration framework  \n    compatible with many dit-based models such as FLUX.1, Qwen, HunyuanImage, Wan2.2, Chroma, etc.  \n    enable in *settings -> pipeline modifiers -> cache-dit*  \n  - [Nunchaku Flux.1 PulID](https://nunchaku.tech/docs/nunchaku/python_api/nunchaku.pipeline.pipeline_flux_pulid.html)  \n    automatically enabled if loaded model is FLUX.1 with Nunchaku engine enabled and when PulID script is enabled  \n  - **Huggingface mirror** in *settings -> huggingface*  \n    if you're working from location with limited access to huggingface, you can now specify a mirror site  \n    for example enter, `https://hf-mirror.com`  \n- **Compute**\n  - **ROCm** for Windows  \n    support for both official torch preview release of `torch-rocm` for windows and **TheRock** unofficial `torch-rocm` builds for windows  \n    note that rocm for windows is still in preview and has limited gpu support, please check rocm docs for details  \n  - **DirectML** warn as *end-of-life*  \n    `torch-directml` received no updates in over 1 year and its currently superseded by `rocm` or `zluda`  \n  - command line params `--use-zluda` and `--use-rocm` will attempt desired operation or fail if not possible  \n    previously sdnext was performing a fallback to `torch-cpu` which is not desired  \n  - **installer** if `--use-cuda` or `--use-rocm` are specified and `torch-cpu` is installed, installer will attempt to reinstall correct torch package  \n  - **installer** warn if *cuda* or *rocm* are available and `torch-cpu` is installed  \n  - support for `torch==2.10-nightly` with `cuda==13.0`  \n- **Extensions**  \n  - [Agent-Scheduler](https://github.com/SipherAGI/sd-webui-agent-scheduler)  \n    was a high-value built-in extension, but it has not been maintained for 1.5 years  \n    it also does not work with control and video tabs which are the core of sdnext nowadays  \n    so it has been removed from built-in extensions: manual installation is still possible  \n  - [DAAM: Diffusion Attentive Attribution Maps](https://github.com/castorini/daam)  \n    create heatmap visualizations of which parts of the prompt influenced which parts of the image  \n    available in scripts for sdxl text-to-image workflows  \n- **Offloading**\n  - improve offloading for pipelines with multiple stages such as *wan-2.2-14b*  \n  - add timers to measure onload/offload times during generate  \n  - experimental offloading using `torch.streams`  \n    enable in settings -> model offloading  \n  - new feature to specify which models types not to offload  \n    in *settings -> model offloading -> model types not to offload*  \n- **UI**\n  - **connection monitor**  \n    main logo in top-left corner now indicates server connection status and hovering over it shows connection details  \n  - separate guidance and detail sections  \n  - networks ability to filter lora by base model version  \n  - add interrogate button to input images  \n  - disable spellchecks on all text inputs  \n- **SDNQ**\n  - add `SVDQuant` quantization method support  \n  - make sdnq scales compatible with balanced offload  \n  - add int8 `matmul` support for RDNA2 GPUs via triton  \n  - improve int8 `matmul` performance on Intel GPUs  \n- **Other**\n  - server will note when restart is recommended due to package updates  \n  - **interrupt** will now show last known preview image  \n    *keep incomplete* setting is now *save interrupted*  \n  - **logging** enable `debug`, `docs` and `api-docs` by default  \n  - **logging** add detailed ram/vram utilization info to log  \n    logging frequency can be specified using `--monitor x` command line param, where x is number of seconds  \n  - **ipex** simplify internal implementation  \n  - refactor to use new libraries  \n  - styles and wildcards now use same seed as main generate for reproducible results  \n  - **api** new endpoint POST `/sdapi/v1/civitai` to trigger civitai models metadata update  \n    accepts optional `page` parameter to search specific networks page  \n  - **reference models** additional example images, thanks @liutyi  \n  - **reference models** add model size and release date, thanks @alerikaisattera  \n  - **video** support for configurable multi-stage models such as WAN-2.2-14B  \n  - **video** new LTX model selection  \n  - replace `pynvml` with `nvidia-ml-py` for gpu monitoring  \n  - update **loopback** script with radon seed option, thanks @rabanti  \n  - **vae** slicing enable for *lowvram/medvram*, tiling for *lowvram*, both disabled otherwise  \n  - **attention** remove split-attention and add explicitly attention slicing enable/disable option  \n    enable in *settings -> compute settings*  \n    can be combined with sdp, enabling may improve stability when used on iGPU or shared memory systems  \n  - **nunchaku** update to `1.0.1` and enhance installer  \n  - **xyz-grid** add guidance section  \n  - **preview** implement configurable layers for WAN, Qwen, HV  \n  - update swagger `/docs` endpoint style  \n  - add `[epoch]` to filename template  \n  - starting `[seq]` for filename template is now higher of largest previous sequence or number of files in folder  \n- **Video**\n  - use shared **T5** text encoder for video models when possible  \n  - use shared **LLama** text encoder for video models when possible  \n  - unified video save code across all video models  \n    also avoids creation of temporary files for each frame unless user wants to save them  \n  - unified prompt enhance code across all video models  \n  - add job state tracking for video generation  \n  - fix quantization not being applied on load for some models  \n  - improve offloading for **ltx** and **wan**  \n  - fix model selection in **ltx** tab  \n- **Experimental**\n  - `new` command line flag enables new `pydantic` and `albumentations` packages  \n  - **modular pipelines**: enable in *settings -> model options*  \n    only compatible with some pipelines, invalidates preview generation  \n  - **modular guiders**: automatically used for compatible pipelines when *modular pipelines* is enabled  \n    allows for using many different guidance methods:  \n    *CFG, CFGZero, PAG, APG, SLG, SEG, TCFG, FDG*  \n- **Wiki**\n  - updates to *AMD-ROCm, ZLUDA, LoRA, DirectML, SDNQ, Quantization, Prompting, LoRA* pages  \n  - new *Stability-Matrix* page  \n- **Fixes**\n  - **Microsoft Florence 2** both base and large variants  \n    *note* this will trigger download of the new variant of the model, feel free to delete older variant in `huggingface` folder  \n  - **MiaoshouAI PromptGen** 1.5/2.0 in both base and large variants  \n  - fix prompt scheduling, thanks @nolbert82  \n  - ui: fix image metadata display when switching selected image in control tab  \n  - framepack: add explicit hf-login before framepack load  \n  - framepack: patch solver for unsupported gpus  \n  - benchmark: remove forced sampler from system info benchmark  \n  - xyz-grid: fix xyz grid with random seeds  \n  - reference: fix download for sd15/sdxl reference models  \n  - fix checks in init/mask image decode  \n  - fix hf token with extra chars  \n  - image viewer refocus on gallery after returning from full screen mode  \n  - fix attention guidance metadata save/restore  \n  - vae preview add explicity cuda.sync  \n\n## Update for 2025-09-15\n\n### Highlights for 2025-09-15\n\n*What's new*? Big one is that we're (*finally*) switching the default UI to **ModernUI**, for both desktop and mobile use!  \n**StandardUI** is still available and can be selected in settings, but ModernUI is now the default for new installs  \n\n*What's else*? **Chroma** is in its final form, there are several new **Qwen-Image** variants and **Nunchaku** hit version 1.0!  \nAlso, there are quite a few offloading improvements and many quality-of-life changes to UI and overall workflows  \nAnd check out new **history** tab in the right panel, it now shows visualization of entire processing timeline!  \n\n![Screenshot](https://github.com/user-attachments/assets/d6119a63-6ee5-4597-95f6-29ed0701d3b5)\n\n[ReadMe](https://github.com/vladmandic/automatic/blob/master/README.md) | [ChangeLog](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md) | [Docs](https://vladmandic.github.io/sdnext-docs/) | [WiKi](https://github.com/vladmandic/automatic/wiki) | [Discord](https://discord.com/invite/sd-next-federal-batch-inspectors-1101998836328697867) | [Sponsor](https://github.com/sponsors/vladmandic)  \n\n### Details for 2025-09-15\n\n- **Models**\n  - **Chroma** final versions: [Chroma1-HD](https://huggingface.co/lodestones/Chroma1-HD), [Chroma1-Base](https://huggingface.co/lodestones/Chroma1-Base) and [Chroma1-Flash](https://huggingface.co/lodestones/Chroma1-Flash)  \n  - **Qwen-Image** [InstantX ControlNet Union](https://huggingface.co/InstantX/Qwen-Image-ControlNet-Union) support  \n    *note* qwen-image is already a very large model and controlnet adds 3.5GB on top of that so quantization and offloading are highly recommended!  \n  - [Qwen-Lightning-Edit](https://huggingface.co/vladmandic/Qwen-Lightning-Edit) and [Qwen-Image-Distill](https://huggingface.co/SahilCarterr/Qwen-Image-Distill-Full) variants  \n  - **Nunchaku** variants of [Qwen-Image-Lightning](https://huggingface.co/nunchaku-tech/nunchaku-qwen-image), [Qwen-Image-Edit](https://huggingface.co/nunchaku-tech/nunchaku-qwen-image-edit), [Nunchaku-Qwen-Image-Edit-Lightning](https://huggingface.co/nunchaku-tech/nunchaku-qwen-image-edit)\n  - **Nunchaku** variant of [Flux.1-Krea-Dev](https://huggingface.co/nunchaku-tech/nunchaku-flux.1-krea-dev)  \n    if you have a compatible nVidia GPU, Nunchaku is the fastest quantization & inference engine  \n  - [HunyuanDiT ControlNet](https://huggingface.co/Tencent-Hunyuan/HYDiT-ControlNet-v1.2) Canny, Depth, Pose  \n  - [KBlueLeaf/HDM-xut-340M-anime](https://huggingface.co/KBlueLeaf/HDM-xut-340M-anime)  \n    highly experimental: HDM *Home-made-Diffusion-Model* is a project to investigate specialized training recipe/scheme  \n    for pre-training T2I model at home based on super-light architecture  \n    *requires*: generator=cpu, dtype=float16, offload=none, both positive and negative prompts are required and must be long & detailed  \n  - [Apple FastVLM](https://huggingface.co/apple/FastVLM-0.5B) in 0.5B, 1.5B and 7B variants  \n    available in captioning tab  \n  - updated [SD.Next Model Samples Gallery](https://vladmandic.github.io/sd-samples/compare.html)  \n- **UI**\n  - default to **ModernUI**  \n    standard ui is still available via *settings -> user interface -> theme type*  \n  - mobile-friendly!  \n  - new **History** section in the right panel  \n    shows detailed job history plus timeline of the execution  \n  - make hints touch-friendly: hold touch to display hint  \n  - improved image scaling in img2img and control interfaces  \n  - add base model type to networks display, thanks @Artheriax  \n  - additional hints to ui, thanks @Artheriax  \n  - add video support to gallery, thanks @CalamitousFelicitousness  \n  - additional artwork for reference models in networks, thanks @liutyi  \n  - improve ui hints display  \n  - restyled all toolbuttons to be modernui native  \n  - reordered system settings  \n  - dynamic direction of dropdowns  \n  - improve process tab layout  \n  - improve detection of active tab  \n  - configurable horizontal vs vertical panel layout  \n    in settings -> user interface -> panel min width  \n    *example*: if panel width is less than specified value, layout switches to vertical  \n  - configurable grid images size  \n    in *settings -> user interface -> grid image size*  \n  - gallery now includes reference model images  \n  - reference models now include indicator if they are *ready* or *need download*\n- **Offloading**\n  - **balanced**\n    - enable offload during pre-forward by default  \n    - improve offloading of models with multiple dits  \n    - improve offloading of models with impliciy vae processing  \n    - improve offloading of models with controlnet  \n    - more aggressive offloading of controlnet with lowvram flag  \n  - **group**\n    - new offloading method, using *type=leaf* works on a similar level as sequential offloading  \n      and can present significant savings on low-vram gpus, but comes at the higher performance cost  \n- **Quantization**\n  - option to specify models types not to quantize: *settings -> quantization*  \n    allows for having quantization enabled, but skipping specific model types that do not need it  \n    *example*: `sd, sdxl`  \n  - **sdnq**\n    - add quantized matmul support for all quantization types and group sizes  \n    - improve the performance of low bit quants  \n  - **nunchaku**: update to `nunchaku==1.0.0`  \n    *note*: nunchaku updated the repo which will trigger re-download of nunchaku models when first used  \n    nunchaku is currently available for: *Flux.1 Dev/Schnell/Kontext/Krea/Depth/Fill*, *Qwen-Image/Qwen-Lightning*, *SANA-1.6B*  \n  - **tensorrt**: new quantization engine from nvidia  \n    *experimental*: requires new pydantic package which *may* break other things, to enable start sdnext with `--new` flag  \n    *note*: this is model quantization only, no support for tensorRT inference yet  \n- **Other**\n  - **LoRA** allow specifying module to apply lora on  \n    *example*: `<lora:mylora:1.0:module=unet>` would apply lora *only* on unet regardless of lora content  \n    this is particularly useful when you have multiple loras and you want to apply them on different parts of the model  \n    *example*: `<lora:firstlora:1.0:high>` and `<lora:secondlora:1.0:low>`  \n    *note*: `low` is shorthand for `module=transformer_2` and `high` is shortcut for `module=transformer`  \n  - **Detailer** allow manually setting processing resolution  \n    *note*: this does not impact the actual image resolution, only the resolution at which detailer internally operates  \n  - refactor reuse-seed and add functionality to all tabs  \n  - refactor modernui js codebase  \n  - move zluda flash attenion to *Triton Flash attention* option  \n  - remove samplers filtering  \n  - allow both flow-matching and discrete samplers for sdxl models  \n  - cleanup command line parameters  \n  - add `--new` command line flag to enable testing of new packages without breaking existing installs  \n  - downgrade rocm to `torch==2.7.1`  \n  - set the minimum supported rocm version on linux to `rocm==6.0`  \n  - disallow `zluda` and `directml` on non-windows platforms  \n  - update openvino to `openvino==2025.3.0`  \n  - add deprecation warning for `python==3.9`  \n  - allow setting denoise strength to 0 in control/img2img  \n    this allows to run workflows which only refine or detail existing image without changing it   \n- **Fixes**\n  - normalize path hanlding when deleting images  \n  - unified compile upscalers  \n  - fix OpenVINO with ControlNet  \n  - fix hidden model tags in networks display  \n  - fix networks reference models display on windows  \n  - fix handling of pre-quantized `flux` models  \n  - fix `wan` use correct pipeline for i2v models  \n  - fix `qwen-image` with hires  \n  - fix `omnigen-2` failure  \n  - fix `auraflow` quantization  \n  - fix `kandinsky-3` noise  \n  - fix `infiniteyou` pipeline offloading  \n  - fix `skyreels-v2` image-to-video  \n  - fix `flex2` img2img denoising strength  \n  - fix `flex2` contronet vs inpaint image selection, thanks @alerikaisattera  \n  - fix some use cases with access via reverse-proxy  \n  - fix segfault on startup with `rocm==6.4.3` and `torch==2.8`  \n  - fix wildcards folders traversal, thanks @dymil  \n  - fix zluda flash attention with enable_gqa  \n  - fix `wan a14b` quantization  \n  - fix reprocess workflow for control with hires  \n  - fix samplers set timesteps vs sigmas  \n  - fix `detailer` missing metadata  \n  - fix `infiniteyou` lora load with  \n\n## Update for 2025-08-20\n\nA quick service release with several important hotfixes, improved localization support and adding new **Qwen** model variants...\n\n[ReadMe](https://github.com/vladmandic/automatic/blob/master/README.md) | [ChangeLog](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md) | [Docs](https://vladmandic.github.io/sdnext-docs/) | [WiKi](https://github.com/vladmandic/automatic/wiki) | [Discord](https://discord.com/invite/sd-next-federal-batch-inspectors-1101998836328697867)\n\n- **Models**\n  - [Qwen-Image-Edit](https://huggingface.co/Qwen/Qwen-Image-Edit)  \n    Image editing using natural language prompting, similar to `Flux.1-Kontext`, but based on larger 20B `Qwen-Image` model  \n  - [Nunchaku-Qwen-Image](https://huggingface.co/nunchaku-tech/nunchaku-qwen-image)  \n    if you have a compatible nVidia GPU, Nunchaku is the fastest quantization engine, currently available for Flux.1, SANA and Qwen-Image models  \n    *note*: release version of `nunchaku==0.3.2` does NOT include support, so you need to build [nunchaku](https://nunchaku.tech/docs/nunchaku/installation/installation.html) from source  \n- [SD.Next Model Samples Gallery](https://vladmandic.github.io/sd-samples/compare.html)  \n  - updated with new models  \n- **Features**  \n  - new *setting -> huggingface -> download method*  \n    default is `rust` as new `xet` is known to cause issues  \n  - support for `flux.1-kontext` lora  \n  - support for `qwen-image` lora  \n  - new *setting -> quantization -> modules dtype dict*  \n    used to manually override quant types per module  \n- **UI**  \n  - new artwork for reference models in networks  \n    thanks @liutyi  \n  - updated [localization](https://vladmandic.github.io/sdnext-docs/Locale/) for all 8 languages  \n  - localization support for ModernUI  \n  - single-click on locale rotates current locale  \n    double-click on locale resets locale to `en`  \n  - exclude ModernUI from list of extensions  \n    ModernUI is enabled in settings, not by manually enabling extension  \n- **Docs**  \n  - Models and Video pages updated with links to original model repos, model licenses and original release dates  \n    thanks @alerikaisattera  \n- **Fixes**  \n  - nunchaku use new download links and default to `0.3.2`  \n    nunchaku wheels: <https://huggingface.co/nunchaku-tech/nunchaku/tree/main>  \n  - fix OpenVINO with offloading  \n  - add explicit offload calls on prompt encode  \n  - error reporting on model load failure  \n  - fix torch version checks  \n  - remove extra cache clear  \n  - enable explicit sync calls for `rocm` on windows  \n  - note if restart-needed on initial startup import error  \n  - bypass diffusers-lora-fuse on quantized models  \n  - monkey-patch diffusers to use original weights shape when loading lora  \n  - guard against null prompt  \n  - install `hf_transfter` and `hf_xet` when needed  \n  - fix ui cropped network tags  \n  - enum reference models on startup  \n  - dont report errors if agent scheduler is disabled  \n\n## Update for 2025-08-15\n\n### Highlights for 2025-08-15\n\nNew release two weeks after the last one and its a big one with over 150 commits!\n- Several new models: [Qwen-Image](https://qwenlm.github.io/blog/qwen-image/) (plus *Lightning* variant) and [FLUX.1-Krea-Dev](https://www.krea.ai/blog/flux-krea-open-source-release)  \n- Several updated models: [Chroma](https://huggingface.co/lodestones/Chroma), [SkyReels-V2](https://huggingface.co/Skywork/SkyReels-V2-DF-14B-720P-Diffusers), [Wan-VACE](https://huggingface.co/Wan-AI/Wan2.1-VACE-14B-diffusers), [HunyuanDiT](https://huggingface.co/Tencent-Hunyuan/HunyuanDiT-v1.2-Diffusers-Distilled)  \n- Plus continuing with major **UI** work with new embedded **Docs/Wiki** search, redesigned real-time **hints**, **wildcards** UI selector, built-in **GPU monitor**, **CivitAI** integration and more!  \n- On the compute side, new profiles for high-vram GPUs, offloading improvements, parallel-load for large models, support for new `torch` release and improved quality when using low-bit quantization!      \n- [SD.Next Model Samples Gallery](https://vladmandic.github.io/sd-samples/compare.html): pre-generated image gallery with 60 models (45 base and 15 finetunes) and 40 different styles resulting in 2,400 high resolution images!  \n  gallery additionally includes model details such as typical load and inference times as well as sizes and types of each model component (*e.g. unet, transformer, text-encoder, vae*)  \n- And (*as always*) many bugfixes and improvements to existing features!  \n\n![sd-samples](https://github.com/user-attachments/assets/3efc8603-0766-4e4e-a4cb-d8c9b13d1e1d)\n\n[ReadMe](https://github.com/vladmandic/automatic/blob/master/README.md) | [ChangeLog](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md) | [Docs](https://vladmandic.github.io/sdnext-docs/) | [WiKi](https://github.com/vladmandic/automatic/wiki) | [Discord](https://discord.com/invite/sd-next-federal-batch-inspectors-1101998836328697867)\n\n*Note*: Change-in-behavior - locations of downloaded HuggingFace models and components are changed to allow for de-duplication of common modules and switched from using system default cache folder to `models/huggingface`  \nSD.Next will warn on startup on unused cache entries that can be removed. Also, to take advantage of de-duplication, you'll need to delete models from your `models/Diffusers` folder and let SD.Next re-download them!  \n\n### Details for 2025-08-15\n\n- **Models**  \n  - [Qwen-Image](https://qwenlm.github.io/blog/qwen-image/)  \n    new image foundational model with *20B* params DiT and using *Qwen2.5-VL-7B* as the text-encoder!  \n    available via *networks -> models -> reference*  \n    *note*: this model is almost 2x the size of Flux, quantization and offloading are highly recommended!  \n    *recommended* params: *steps=50, attention-guidance=4*  \n    also available is pre-packaged [Qwen-Lightning](https://huggingface.co/vladmandic/Qwen-Lightning)  \n    which is an unofficial merge of [Qwen-Image](https://qwenlm.github.io/blog/qwen-image/) with [Qwen-Lightning-LoRA](https://github.com/ModelTC/Qwen-Image-Lightning/) to improve quality and allow for generating in 8-steps!  \n  - [FLUX.1-Krea-Dev](https://www.krea.ai/blog/flux-krea-open-source-release)  \n    new 12B base model compatible with FLUX.1-Dev from *Black Forest Labs* with opinionated aesthetics and aesthetic preferences in mind  \n    available via *networks -> models -> reference*  \n  - [Chroma](https://huggingface.co/lodestones/Chroma)  \n    great model based on FLUX.1 and then redesigned and retrained by *lodestones*  \n    update with latest **HD**, **HD Flash** and **HD Annealed** variants which are based on *v50* release  \n    available via *networks -> models -> reference*  \n  - [SkyReels-V2](https://huggingface.co/Skywork/SkyReels-V2-DF-14B-720P-Diffusers)  \n    SkyReels-V2 is a genarative video model based on Wan-2.1 but with heavily modified execution to allow for infinite-length video generation  \n    supported variants are:  \n    - diffusion-forcing: *T2I DF 1.3B* for 540p videos, *T2I DF 14B* for 720p videos, *I2I DF 14B* for 720p videos  \n    - standard: *T2I 14B* for 720p videos and *I2I 14B* for 720p videos  \n  - [Wan-VACE](https://huggingface.co/Wan-AI/Wan2.1-VACE-14B-diffusers)  \n    basic support for *Wan 2.1 VACE 1.3B* and *14B* variants  \n    optimized support with granular guidance control will follow soon  \n  - [HunyuanDiT-Distilled](https://huggingface.co/Tencent-Hunyuan/HunyuanDiT-v1.2-Diffusers-Distilled)  \n    variant of HunyuanDiT with reduced steps and improved performance  \n**Torch**  \n  - Set default to `torch==2.8.0` for *CUDA, ROCm and OpenVINO*  \n  - Add support for `torch==2.9.0-nightly`  \n- **UI**  \n  - new embedded docs/wiki search!  \n    **Docs** search: fully-local and works in real-time on all document pages  \n    **Wiki** search: uses github api to search online wiki pages  \n  - updated real-time hints, thanks @CalamitousFelicitousness  \n  - add **Wilcards** UI  \n    in networks display  \n  - every heading element is collapsible!  \n  - quicksettings reset button to restore all quicksettings to default values  \n    because things do sometimes get wrong...  \n  - configurable image fit in all image views  \n  - rewritten **CivitAI downloader**  \n    in *models -> civitai*  \n    *hint*: you can enter model id in a search bar to pull information on specific model directly  \n    *hint*: you can download individual versions or batch-download all-at-once!  \n  - redesigned **GPU monitor**  \n    - standard-ui: *system -> gpu monitor*  \n    - modern-ui: *aside -> console -> gpu monitor*  \n    - supported for *nVidia CUDA* and *AMD ROCm* platforms  \n    - configurable interval in *settings -> user interface*  \n  - updated *models* tab\n    - updated *models -> current* tab  \n    - updated *models -> list models* tab  \n    - updated *models -> metadata* tab  \n  - updated *extensions* tab\n  - redesigned *settings -> user interface*  \n  - gallery bypass browser cache for thumbnails  \n  - gallery safer delete operation  \n  - networks display indicator for currently active items  \n    applies to: *styles, loras*  \n  - apply privacy blur to hf and civitai tokens  \n  - image download will now use actual image filename  \n  - increase default and maximum ui request timeout to 2min/5min  \n  - *hint*: card layout  \n    card layout is used by networks, gallery, civitai search, etc.  \n    you can change card size in *settings -> user interface*  \n- **Offloading**  \n  - changed **default** values for offloading based on detected gpu memory  \n    see [offloading docs](https://vladmandic.github.io/sdnext-docs/Offload/) for details  \n  - new feature to specify which modules to offload always or never  \n    in *settings -> model offloading -> offload always/never*  \n  - new `highvram` profile provides significant performance boost on gpus with more than 24gb  \n  - new `offload during pre-forward` option  \n    in *settings -> model offloading*  \n    switches from explicit offloading to implicit offloading on module execution change  \n  - new `diffusers_offload_nonblocking` exerimental setting  \n    instructs torch to use non-blocking move operations when possible  \n- **Features**  \n  - new `T5: Use shared instance of text encoder` option  \n    in *settings -> text encoder*  \n    since a lot of new models use T5 text encoder, this option allows to share  \n    the same instance across all models without duplicate downloads  \n    *note* this will not reduce size of your already downloaded models, but will reduce size of future downloads  \n  - **Wan** select which stage to run: *first/second/both* with configurable *boundary ration* when running both stages  \n    in settings -> model options  \n  - prompt parser allow explict `BOS` and `EOS` tokens in prompt  \n  - **Nunchaku** support for *FLUX.1-Fill* and *FLUX.1-Depth* models  \n  - update requirements/packages  \n  - use model vae scale-factor for image width/heigt calculations  \n  - **SDNQ** add `modules_dtype_dict` to quantize *Qwen Image* with mixed dtype  \n  - **prompt enhance**\n    add `allura-org/Gemma-3-Glitter-4B`, `Qwen/Qwen3-4B-Instruct-2507`, `Qwen/Qwen2.5-VL-3B-Instruct` model support  \n    improve system prompt  \n  - **schedulers** add **Flash FlowMatch**  \n  - **model loader** add parallel loader option  \n    enabled by default, selectable in *settings -> model loading*  \n  - **filename namegen** use exact sequence number instead of next available  \n    this allows for more predictable and consistent filename generation  \n  - **network delete** new feature that allows to delete network from disk  \n    in *networks -> show details -> delete*  \n    this will also delete description, metadata and previews associated with the network  \n    only applicable to safetensors networks, not downloaded diffuser models  \n- **Wiki**  \n  - Models page updated with links to original model repos and model licenses, thanks @alerikaisattera  \n  - Updated Model-Support with newly supported models  \n  - Updated Offload, Prompting, API pages  \n- **API**\n  - add `/sdapi/v1/checkpoint` POST endpoint to simply load a model  \n  - add `/sdapi/v1/modules` GET endpoint to get info on model components/modules  \n  - all generate endpoints now support `sd_model_checkpoint` parameter  \n    this allows to specify which model to use for generation without needing to use additional endpoints  \n- **Refactor**\n  - change default huggingface cache folder from system default to `models/huggingface`  \n    sd.next will warn on startup on unused cache entries  \n  - new unified pipeline component loader in `pipelines/generic`  \n  - remove **LDSR**  \n  - remove `api-only` cli option  \n- **Docker**  \n  - update cuda base image: `pytorch/pytorch:2.8.0-cuda12.8-cudnn9-runtime`  \n  - update official builds: <https://hub.docker.com/r/vladmandic/sdnext-cuda/tags>  \n- **Fixes**  \n  - refactor legacy processing loop  \n  - fix settings components mismatch  \n  - fix *Wan 2.2-5B I2V* workflow  \n  - fix *Wan* T2I workflow  \n  - fix OpenVINO  \n  - fix video model vs pipeline mismatch  \n  - fix video generic save frames  \n  - fix inpaint image metadata  \n  - fix processing image save loop  \n  - fix progress bar with refine/detailer  \n  - fix api progress reporting endpoint  \n  - fix `openvino` backend failing to compile  \n  - fix `zluda` with hip-sdk==6.4\n  - fix `nunchaku` fallback on unsupported model  \n  - fix `nunchaku` windows download links  \n  - fix *Flux.1-Kontext-Dev* with variable resolution  \n  - use `utf_16_be` as primary metadata decoding  \n  - fix `sd35` width/height alignment  \n  - fix `nudenet` api  \n  - fix global state tracking  \n  - fix ui tab detection for networks  \n  - fix ui checkbox/radio styling for non-default themes  \n  - fix loading custom transformers and t5 safetensors tunes  \n  - add mtime to reference models  \n  - patch torch version so 3rd party libraries can use expected format  \n  - unified stat size/mtime calls  \n  - reapply offloading on ipadapter load  \n  - api set default script-name  \n  - avoid forced gc and rely on thresholds  \n  - add missing interrogate in output panel  \n\n## Update for 2025-07-29\n\n### Highlights for 2025-07-29\n\nThis is a big one: simply looking at number of changes, probably the biggest release since the project started!  \n\nFeature highlights include:  \n- [ModernUI](https://github.com/user-attachments/assets/6f156154-0b0a-4be2-94f0-979e9f679501) has quite some redesign which should make it more user friendly and easier to navigate plus several new UI themes  \n  If you're still using **StandardUI**, give [ModernUI](https://vladmandic.github.io/sdnext-docs/Themes/) a try!  \n- New models such as [WanAI 2.2](https://wan.video/) in 5B and A14B variants for both *text-to-video* and *image-to-video* workflows as well as *text-to-image* workflow!  \n  and also [FreePik F-Lite](https://huggingface.co/Freepik/F-Lite), [Bria 3.2](https://huggingface.co/briaai/BRIA-3.2) and [bigASP 2.5](https://civitai.com/models/1789765?modelVersionId=2025412)  \n- Redesigned [Video](https://vladmandic.github.io/sdnext-docs/Video) interface with support for general video models plus optimized [FramePack](https://vladmandic.github.io/sdnext-docs/FramePack) and [LTXVideo](https://vladmandic.github.io/sdnext-docs/LTX) support  \n- Fully integrated nudity detection and optional censorship with [NudeNet](https://vladmandic.github.io/sdnext-docs/NudeNet)  \n- New background replacement and relightning methods using **Latent Bridge Matching** and new **PixelArt** processing filter  \n- Enhanced auto-detection of default sampler types/settings results in avoiding common mistakes  \n- Additional **LLM/VLM** models available for captioning and prompt enhance  \n- Number of workflow and general quality-of-life improvements, especially around **Styles**, **Detailer**, **Preview**, **Batch**, **Control**  \n- Compute improvements  \n- [Wiki](https://github.com/vladmandic/automatic/wiki) & [Docs](https://vladmandic.github.io/sdnext-docs/) updates, especially new end-to-end [Parameters](https://vladmandic.github.io/sdnext-docs/Parameters/) page  \n\nIn this release we finally break with legacy with the removal of the original [A1111](https://github.com/AUTOMATIC1111/stable-diffusion-webui/) codebase which has not been maintained for a while now  \nThis plus major cleanup of codebase and external dependencies resulted in ~55k LoC (*lines-of-code*) reduction and spread over [~750 files](https://github.com/vladmandic/sdnext/pull/4017) in ~200 commits!  \n\nWe also switched project license to [Apache-2.0](https://github.com/vladmandic/sdnext/blob/dev/LICENSE.txt) which means that SD.Next is now fully compatible with commercial and non-commercial use and redistribution regardless of modifications!  \n\nAnd (*as always*) many bugfixes and improvements to existing features!  \nFor details, see [ChangeLog](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md)  \n\n> [!NOTE]  \n> We recommend clean install for this release due to sheer size of changes  \n> Although upgrades and existing installations are tested and should work fine!  \n\n![Screenshot](https://github.com/user-attachments/assets/6f156154-0b0a-4be2-94f0-979e9f679501)\n\n[ReadMe](https://github.com/vladmandic/automatic/blob/master/README.md) | [ChangeLog](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md) | [Docs](https://vladmandic.github.io/sdnext-docs/) | [WiKi](https://github.com/vladmandic/automatic/wiki) | [Discord](https://discord.com/invite/sd-next-federal-batch-inspectors-1101998836328697867)\n\n### Details for 2025-07-29\n\n- **License**  \n  - SD.Next [license](https://github.com/vladmandic/sdnext/blob/dev/LICENSE.txt) switched from **aGPL-v3.0** to **Apache-v2.0**  \n    this means that SD.Next is now fully compatible with commercial and non-commercial use and redistribution regardless of modifications!  \n- **Models**\n  - [WanAI Wan 2.2](https://github.com/Wan-Video/Wan2.2) both 5B and A14B variants, for both T2V and I2V support  \n    go to: *video -> generic -> wan -> pick variant*  \n    optimized support with *VACE*, etc. will follow soon  \n    *caution* Wan2.2 on its own is ~68GB, but also includes optional second-stage for later low-noise processing which is absolutely massive at additional ~54GB  \n    you can enable second stage processing in *settings -> model options*, its disabled by default  \n    *note*: quantization and offloading are highly recommended regardless of first-stage only or both stages!  \n  - [WanAI Wan](https://wan.video/) T2V models for T2I workflows  \n    Wan is originally designed for *video* workflows, but now also be used for *text-to-image* workflows!  \n    supports *Wan-2.1 in 1.3B* and 14B variants and *Wan-2.2 in 5B and A14B* variants  \n    supports all standard features such as quantization, offloading, TAESD preview generation, LoRA support etc.  \n    can also load unet/transformer fine-tunes in safetensors format using UNET loader  \n    simply select in *networks -> models -> reference*  \n    *note* 1.3B model is a bit too small for good results and 14B is very large at 78GB even without second-stage so aggressive quantization and offloading are recommended  \n  - [FreePik F-Lite](https://huggingface.co/Freepik/F-Lite) in *7B, 10B and Texture* variants  \n    F-Lite is a 7B/10B model trained exclusively on copyright-safe and SFW content, trained on internal dataset comprising approximately 80 million copyright-safe images  \n    available via *networks -> models -> reference*  \n  - [Bria 3.2](https://huggingface.co/briaai/BRIA-3.2)  \n    Bria is a smaller 4B parameter model built entirely on licensed data and safe for commercial use  \n    *note*: this is a gated model, you need to [accept terms](https://huggingface.co/briaai/BRIA-3.2) and set your [huggingface token](https://vladmandic.github.io/sdnext-docs/Gated/)  \n    available via *networks -> models -> reference*  \n  - [bigASP 2.5](https://civitai.com/models/1789765)  \n    bigASP is an experimental SDXL finetune using Flow matching method  \n    load as usual, and leave sampler set to *Default*  \n    or you can use following samplers: *UniPC, DPM, DEIS, SA*  \n    required sampler settings: *prediction-method=flow-prediction*, *sigma-method=flowmatch*  \n    recommended sampler settings: *flow-shift=1.0*  \n  - [LBM: Latent Bridge Matching](https://github.com/gojasper/LBM)  \n    very fast automatic image background replacement methods with relightning!  \n    *simple*: automatic background replacement using [BiRefNet](https://github.com/ZhengPeng7/BiRefNet)  \n    *relighting*: automatic background replacement with reglighting so source image fits desired background  \n    with optional composite blending  \n    available in *img2img or control -> scripts*  \n  - add **FLUX.1-Kontext-Dev** inpaint workflow  \n  - add **FLUX.1-Kontext-Dev** **Nunchaku** support  \n    *note*: FLUX.1 Kontext is about 2-3x faster with Nunchaku vs standard execution!  \n  - support **FLUX.1** all-in-one safetensors  \n  - support for [Google Gemma 3n](https://huggingface.co/google/gemma-3n-E4B-it) E2B and E4B LLM/VLM models  \n    available in **prompt enhance** and process **captioning**  \n  - support for [HuggingFace SmolLM3](https://huggingface.co/HuggingFaceTB/SmolLM3-3B) 3B LLM model  \n    available in **prompt enhance**  \n  - add [fal AuraFlow 0.2](https://huggingface.co/fal/AuraFlow-v0.2) in addition to existing [fal AuraFlow 0.3](https://huggingface.co/fal/AuraFlow-v0.3) due to large differences in model behavior  \n    available via *networks -> models -> reference*  \n  - add integrated [NudeNet](https://vladmandic.github.io/sdnext-docs/NudeNet) as built-in functionality  \n    *note*: used to be available as a separate [extension](https://github.com/vladmandic/sd-extension-nudenet)  \n- **Video**\n  - redesigned **Video** interface  \n  - support for **Generic** video models  \n    includes support for many video models without specific per-model optimizations  \n    included: *Hunyuan, LTX, WAN, Mochi, Latte, Allegro, Cog*  \n    supports quantization, offloading, frame interpolation, etc.  \n  - support for optimized [FramePack](https://vladmandic.github.io/sdnext-docs/FramePack)  \n    with *t2i, i2i, flf2v* workflows  \n    LoRA support, prompt enhance, etc.  \n    now fully integrated instead of being a separate extension  \n  - support for optmized [LTXVideo](https://vladmandic.github.io/sdnext-docs/LTX)  \n    with *t2i, i2i, v2v* workflows  \n    optional native upsampling and video refine workflows  \n    LoRA support with different conditioning types such as Canny/Depth/Pose, etc.  \n  - support for post load quantization  \n- **UI**  \n  - major update to modernui layout  \n  - add new Windows-like *Blocks* UI theme  \n  - redesign of the *Flat* UI theme  \n  - enhanced look&feel for *Gallery* tab with better search and collapsible sections, thanks to @CalamitousFelicitousness\n- **WIKI**  \n  - new [Parameters](https://vladmandic.github.io/sdnext-docs/Parameters/) page that lists and explains all generation parameters  \n    massive thanks to @CalamitousFelicitousness for bringing this to life!  \n  - updated *Models, Video, LTX, FramePack, Styles*, etc.\n- **Compute**  \n  - support for [SageAttention2++](https://github.com/thu-ml/SageAttention)  \n    provides 10-15% performance improvement over default SDPA for transformer-based models!  \n    enable in *settings -> compute settings -> sdp options*  \n    *note*: SD.Next will use either SageAttention v1/v2/v2++, depending which one is installed  \n    until authors provide pre-build wheels for v2++, you need to install it manually or SD.Next will auto-install v1  \n  - support for `torch.compile` for LLM: captioning/prompt-enhannce  \n  - support for `torch.compile` with repeated-blocks  \n    reduces time-to-compile 5x without loss of performance!  \n    enable in *settings -> model compile -> repeated*  \n    *note*: torch.compile is not compatible with balanced offload  \n- **Other**  \n  - **Styles** can now include both generation params and server settings  \n    see [Styles docs](https://vladmandic.github.io/sdnext-docs/Styles/) for details  \n  - **TAESD** is now default preview type since its the only one that supports most new models  \n  - support **TAESD** preview and remote VAE for **HunyuanDit**  \n  - support **TAESD** preview and remote VAE for **AuraFlow**  \n  - support **TAESD** preview for **WanAI**  \n  - SD.Next now starts with *locked* state preventing model loading until startup is complete  \n  - warn when modifying legacy settings that are no longer supported, but available for compatibilty  \n  - warn on incompatible sampler and automatically restore default sampler  \n  - **XYZ grid** can now work with control tab:  \n    if controlnet or processor are selected in xyz grid, they will overwrite settings from first unit in control tab,  \n    when using controlnet/processor selected in xyz grid, behavior is forced as control-only  \n    also freely selectable are control strength, start and end values  \n  - **Batch** warn on unprocessable images and skip operations on errors so that other images can still be processed  \n  - **Metadata** improved parsing and detect foreign metadata  \n    detect ComfyUI images  \n    detect InvokeAI images  \n  - **Detailer** add `expert` mode where list of detailer models can be converted to textbox for manual editing  \n    see [docs](https://vladmandic.github.io/sdnext-docs/Detailer/) for more information  \n  - **Detailer** add option to merge multiple results from each detailer model  \n    for example, hands model can result in two hands each being processed separately or both hands can be merged into one composite job  \n  - **Control** auto-update width/height on image upload  \n  - **Control** auto-determine image save path depending on operations performed  \n  - autodetect **V-prediction** models and override default sampler prediction type as needed  \n- **SDNQ**  \n  - use inference context during quantization  \n  - use static compile  \n  - rename quantization type for text encoders `default` option to `Same as model`  \n- **API**  \n  - add `/sdapi/v1/lock-checkpoint` endpoint that can be used to lock/unlock model changes  \n    if model is locked, it cannot be changed using normal load or unload methods  \n- **Fixes**\n  - allow theme type `None` to be set in config  \n  - installer dont cache installed state  \n  - fix Cosmos-Predict2 retrying TAESD download  \n  - better handle startup import errors  \n  - fix traceback width preventing copy&paste  \n  - fix ansi controle output from scripts/extensions  \n  - fix diffusers models non-unique hash  \n  - fix loading of manually downloaded diffuser models  \n  - fix api `/sdapi/v1/embeddings` endpoint  \n  - fix incorrect reporting of deleted and modified files  \n  - fix SD3.x loader and TAESD preview  \n  - fix xyz with control enabled  \n  - fix control order of image save operations  \n  - fix control batch-input processing  \n  - fix modules merge save model  \n  - fix torchvision bicubic upsample with ipex  \n  - fix instantir pipeline  \n  - fix prompt encoding if prompts within batch have different segment counts  \n  - fix detailer min/max size  \n  - fix loopback script  \n  - fix networks tags display  \n  - fix yolo refresh models  \n  - cleanup control infotext  \n  - allow upscaling with models that have implicit VAE processing  \n  - framepack improve offloading  \n  - improve prompt parser tokenizer loader  \n  - improve scripts error handling  \n  - improve infotext param parsing  \n  - improve extensions ui search  \n  - improve model type autodetection  \n  - improve model auth check for hf repos  \n  - improve Chroma prompt padding as per recommendations  \n  - lock directml torch to `torch-directml==0.2.4.dev240913`  \n  - lock directml transformers to `transformers==4.52.4`  \n  - improve install of `sentencepiece` tokenizer  \n  - add int8 matmul fallback for ipex with onednn qlinear  \n- **Refactoring**  \n  *note*: none of the removals result in loss-of-functionality since all those features are already re-implemented  \n  goal here is to remove legacy code, code duplication and reduce code complexity  \n  - obsolete **original backend**  \n  - remove majority of legacy **a1111** codebase  \n  - remove legacy ldm codebase: `/repositories/ldm`  \n  - remove legacy blip codebase: `/repositories/blip`  \n  - remove legacy codeformer codebase: `/repositories/codeformer`  \n  - remove legacy clip patch model: `/models/karlo`  \n  - remove legacy model configs: `/configs/*.yaml`  \n  - remove legacy submodule: `/modules/k-diffusion`  \n  - remove legacy hypernetworks support: `/modules/hypernetworks`  \n  - remove legacy lora support: `/extensions-builtin/Lora`  \n  - remove legacy clip/blip interrogate module  \n  - remove modern-ui remove `only-original` vs `only-diffusers` code paths  \n  - refactor control processing and separate preprocessing and image save ops  \n  - refactor modernui layouts to rely on accordions more than individual controls  \n  - refactore pipeline apply/unapply optional components & features  \n  - split monolithic `shared.py`  \n  - cleanup `/modules`: move pipeline loaders to `/pipelines` root  \n  - cleanup `/modules`: move code folders used by pipelines to `/pipelines/<pipeline>` folder  \n  - cleanup `/modules`: move code folders used by scripts to `/scripts/<script>` folder  \n  - cleanup `/modules`: global rename `modules.scripts` to avoid conflict with `/scripts`  \n  - override `gradio` installer  \n  - major refactoring of requirements and dependencies to unblock `numpy>=2.1.0`  \n  - patch `insightface`  \n  - patch `facelib`  \n  - patch `numpy`  \n  - stronger lint rules  \n    add separate `npm run lint`, `npm run todo`, `npm run test`, `npm run format` macros  \n\n## Update for 2025-06-30\n\n### Highlights for 2025-06-30\n\nNew release with ~100 commits...So what's new? Well, its been a busy few weeks with new models coming out quite frequently:  \n- New T2I/I2I models: **OmniGen-2, Cosmos-Predict2, FLUX.1-Kontext, Chroma**  \n- Additional VLM models: **JoyCaption Beta, MoonDream 2**  \n- Additional upscalers: **UltraSharp v2**  \n\nAnd (as always) many bugfixes and improvements to existing features!  \n\n[ReadMe](https://github.com/vladmandic/automatic/blob/master/README.md) | [ChangeLog](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md) | [Docs](https://vladmandic.github.io/sdnext-docs/) | [WiKi](https://github.com/vladmandic/automatic/wiki) | [Discord](https://discord.com/invite/sd-next-federal-batch-inspectors-1101998836328697867)\n\n### Details for 2025-06-30\n\n- **Models**\n  - [Models Wiki page](https://vladmandic.github.io/sdnext-docs/Models/) is updated will all new models  \n    *note* all new image models larger than 30GB, so [offloading](https://vladmandic.github.io/sdnext-docs/Offload/) and [quantization](https://vladmandic.github.io/sdnext-docs/Quantization/) are necessary!  \n  - [OmniGen2](https://huggingface.co/OmniGen2/OmniGen2)  \n    - OmniGen2 is a powerful unified multimodal model that supports t2i and i2i workflows and uses 4B transformer with Qwen-VL-2.5 4B VLM  \n    - available via *networks -> models -> reference*  \n  - [nVidia Cosmos-Predict2 T2I](https://research.nvidia.com/labs/dir/cosmos-predict2/) *2B and 14B*  \n    - Cosmos-Predict2 T2I is a new foundational model from Nvidia in two variants: small 2B and large 14B\n    - available via *networks -> models -> reference*  \n    - *note*: 14B variant is a very large model at 36GB\n    - *note*: this is a gated model, you need to [accept terms](https://huggingface.co/nvidia/Cosmos-Predict2-2B-Text2Image) and set your [huggingface token](https://vladmandic.github.io/sdnext-docs/Gated/)  \n  - [Black Forest Labs FLUX.1 Kontext I2I](https://bfl.ai/announcements/flux-1-kontext-dev) *Dev* variant  \n    - FLUX.1-Kontext is a 12B model billion parameter capable of editing images based on text instructions  \n    - model is primarily designed for image editing workflows, but also works for text-to-image workflows  \n    - requirements are similar to regular FLUX.1 although 2x slower  \n    - available via *networks -> models -> reference*  \n    - *note*: this is a gated model, you need to [accept terms](https://huggingface.co/black-forest-labs/FLUX.1-Kontext-dev) and set your [huggingface token](https://vladmandic.github.io/sdnext-docs/Gated/)  \n  - [lodestones Chroma](https://huggingface.co/lodestones/Chroma)  \n    - Chroma is a 8.9B parameter model based on *FLUX.1-schnell* and fully Apache 2.0 licensed  \n    - available via *networks -> models -> reference*  \n    - *note*: model is still in training so future updates will trigger re-download  \n    - large credits to @Trojaner for work on bringing Chroma support to SD.Next and all the optimizations around it!  \n  - [JoyCaption Beta](https://huggingface.co/fancyfeast/llama-joycaption-beta-one-hf-llava) support (in addition to existing JoyCaption Alpha)  \n    - new version of highly popular captioning model  \n    - available via *caption -> vlm caption*  \n  - [MoonDream 2](https://huggingface.co/vikhyatk/moondream2) support (updated)  \n    - really good 2B captioning model that can work on different levels of detail  \n    - available via *caption -> vlm caption*  \n  - [UltraSharp v2](https://huggingface.co/Kim2091/UltraSharpV2) support  \n    - one of the best upscalers (traditional, non-diffusion) available today!  \n    - available via *process -> upscale -> chainner*  \n- **Changes**  \n  - Update all core requirements  \n  - Support Remote VAE with *Omnigen, Lumina 2 and PixArt*  \n  - Enable quantization for captioning: *Gemma, Qwen, SMOL, Florence, JoyCaption*  \n  - Add `--trace` command line param that enables trace logging  \n  - Use Diffusers version of *OmniGen*  \n  - Control move global settings to control elements -> control settings tab  \n  - Control add setting to run hires with or without control  \n  - Update OpenVINO to 2025.2.0  \n  - Simplified and unified quantization enabled for options  \n  - Add **PixelArt** filter to processing tab  \n- **SDNQ Quantization**  \n  - Add `auto` quantization mode  \n  - Add `modules_to_not_convert` support for post mode  \n  - Improve offload compatibility  \n  - Fix Qwen 2.5 with int8 matmul  \n  - Fix Dora loading  \n  - Remove per layer GC  \n  - Add support for XYZ grid to test quantization modes  \n    *note*: you need to enable quantization and choose what it applies on, then xyz grid can change quantization mode  \n    *note*: you can also enable 'add time info' to compare performance of different quantization modes  \n- **API**\n  - Add `/sdapi/v1/network?page=<page_name>&item=<item_name>` endpoint that returns full network info  \n  - Add `/sdapi/v1/lora?lora=<lora_name>` endpoint that returns full lora info and metadata  \n  - Add `/sdapi/v1/controlnets?model_type=<model_type|all|None>` endpoints that returns list of available controlnets for specific model type  \n  - Set default sampler to `Default`  \n- **Fixes**  \n  - IPEX with DPM2++ FlowMatch samplers  \n  - Invalid attention processor with ControlNet  \n  - LTXVideo default scheduler  \n  - Balanced offload with OmniGen  \n  - Quantization with OmniGen  \n  - Do not save empty `params.txt` file  \n  - Override `params.txt` using `SD_PATH_PARAMS` env variable  \n  - Add `wheel` to requirements due to `pip` change  \n  - Case-insensitive sampler name matching  \n  - Fix delete file with gallery views  \n  - Add `SD_SAVE_DEBUG` env variable to report all params and metadata save operations as they happen  \n  - Fix TAESD model type detection  \n  - Fix LoRA loader incorrectly reporting errors  \n  - Fix hypertile for img2img and inpaint operations  \n  - Fix prompt parser batch size  \n  - Fix process batch with batch count  \n  - Fix process batch double image save  \n  - Fix unapply texture tiling  \n  - Fix nunchaku batch support  \n  - Fix LoRA change detection on pipeline type change  \n  - Fix LoRA load order when it includes text-encoder data  \n  - Suppress torch empty logging  \n  - Improve TAESD live preview downscale handling  \n\n## Update for 2025-06-16\n\n- **Feature**  \n  - Support for Python 3.13  \n  - TeaCache support for Lumina 2  \n  - Custom UNet and VAE loading support for Lumina 2  \n- **Changes**  \n  - Increase the medvram mode threshold from 8GB to 12GB  \n  - Set CPU backend to use FP32 by default  \n  - Relax Python version checks for Zluda  \n  - Make VAE options not require model reload  \n  - Add warning about incompatible attention processors  \n- **Torch**  \n  - Set default to `torch==2.7.1`  \n  - Force upgrade pip when installing Torch  \n- **ROCm**  \n  - Support ROCm 6.4 with `--use-nightly`  \n  - Don't override user set gfx version  \n  - Don't override gfx version with RX 9000  \n  - Fix flash-atten repo  \n- **SDNQ Quantization**  \n  - Add group size support for convolutional layers  \n  - Add quantized matmul support for for convolutional layers  \n  - Add 7-bit, 5-bit and 3-bit quantization support  \n  - Add separate quant mode option for Text Encoders  \n  - Fix forced FP32 with tensorwise FP8 matmul  \n  - Fix PyTorch <= 2.4 compatibility with FP8 matmul  \n  - Fix VAE with conv quant  \n  - Don't ignore the Quantize with GPU option with offload mode `none` and `model`  \n  - High VRAM usage with Lumina 2  \n- **Fixes**  \n  - Meissonic with multiple generators  \n  - OmniGen with new transformers  \n  - Invalid attention processors  \n  - PixArt Sigma Small and Large loading  \n  - TAESD previews with PixArt and Lumina 2  \n  - VAE Tiling with non-default tile sizes  \n  - Lumina 2 with IPEX  \n  - Nunchaku updated repo  \n  - Double loading of models with custom UNets  \n\n## Update for 2025-06-02\n\n### Highlights for 2025-06-02\n\nThis release is all about quantization: with new SD.Next own quantization method: **SDNQ**  \n**SDNQ** is based on **NNCF**, but has been re-implemented, optimized and evolved enough to become its own quantization method!  \nIt's fully cross-platform, supports all GPUs and includes tons of quantization methods:\n- *8-bit, 6-bit, 4-bit, 2-bit and 1-bit int and uint*\n- *8-bit e5, e4 and fnuz float*\n\nAlso unlike most traditional methods, its also applicable to nearly all model types  \n\n*Hint*: Even if you may not need quantization for your current model, it may be worth trying it out as it can significantly improve performance or capabilities of your existing workflow! For example, you may not have issues with SD15 or SDXL, but you may have been limited running at high resolutions or with multiple ControlNet due to VRAM requirements - this will significantly reduce memory requirements. And on-the-fly quantization takes just few seconds during model load, there is no need to have multiple quant models permanently saved.  \n\nOn a different topic, **SD.Next Wiki & Docs** and its **UI Hints** and **UI Localization** system are community efforts and any contributions are welcome!  \nYou dont need any coding experience, but if you learned something and you find documentation either wrong or insufficient, please do suggest edits!  \nTake a look at [Docs](https://github.com/vladmandic/sdnext/wiki/Docs), [Hints](https://github.com/vladmandic/sdnext/wiki/Hints) and [Localization](https://github.com/vladmandic/sdnext/wiki/Locale) contribution guides\n\n[ReadMe](https://github.com/vladmandic/automatic/blob/master/README.md) | [ChangeLog](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md) | [Docs](https://vladmandic.github.io/sdnext-docs/) | [WiKi](https://github.com/vladmandic/automatic/wiki) | [Discord](https://discord.com/invite/sd-next-federal-batch-inspectors-1101998836328697867)\n\n### Details for 2025-06-02\n\n- **SDNQ Quantization**  \n  - Renamed `NNCF` to `SDNQ`  \n  - Renamed quantization scheme names to the underlying dtype names instead of NNCF names  \n    - `INT8_SYM` -> `int8`  \n    - `INT8` -> `uint8`  \n    - `INT4_SYM` -> `int4`  \n    - `INT4` -> `uint4`  \n  - Add `float8_e4m3fn`, `float8_e5m2`, `float8_e4m3fnuz`, `float8_e5m2fnuz`, `int6`, `uint6`, `int2`, `uint2` and `uint1` support  \n  - Add quantized matmul support for `float8_e4m3fn` and `float8_e5m2`  \n  - Set the default quant mode to `pre`  \n  - Use per token input quant with int8 and fp8 quantized matmul  \n  - Implement better layer hijacks  \n  - Add an option to toggle quantize with GPU  \n  - Fix conv quant and add support for conv quant with asym modes  \n  - Fix lora weight change  \n  - Fix high RAM usage with pre mode  \n  - Fix scale and zero_point not being offloaded  \n- **IPEX**  \n  - Disabe Dynamic Attention by default on PyTorch 2.7  \n  - Remove GradScaler hijack and use `torch.amp.GradScaler` instead  \n- **Feature**  \n  - TeaCache support for HiDream I1  \n- **Changes**  \n  - Set the default attention optimizer to Scaled-Dot-Product on all backends  \n  - Enable Dynamic attention for Scaled-Dot-Product with ROCm, DirectML, MPS and CPU backends  \n- **Fixes**\n  - Gallery duplicate entries  \n  - Prompt enhancement args mismatch  \n\n## Update for 2025-05-17\n\n*Curious how your system is performing?*  \nRun a built-in benchmark and compare to over 15k unique results world-wide: [Benchmark data](https://vladmandic.github.io/sd-extension-system-info/pages/benchmark.html)!  \nFrom slowest 0.02 it/s running on 6th gen CPU without acceleration up to 275+ it/s running on tuned GH100 system!  \n\nAlso, since quantization is becoming a necessity for almost all new models, see comparison of different quantization methods available in SD.Next: [Quantization](https://vladmandic.github.io/sdnext-docs/Quantization/)  \n*Hint*: Even if you may not need quantization for your current model, it may be worth trying it out as it can significantly improve performance!  \n\nFor ZLUDA users, this update adds [compatibility](https://github.com/vladmandic/sdnext/issues/3918) with with latest AMD Adrenaline drivers  \n\nBtw, last few releases have been smaller, but more regular so do check posts about previous releases as features do quickly add up!  \n\n- **Wiki**  \n  - Updates for: *Quantization, NNCF, WSL, ZLUDA, ROCm*  \n- **Models**  \n  - [Index AniSora v1 5B](https://huggingface.co/IndexTeam/Index-anisora) I2V  \n    Based on CogVideoX architecture, trained as animated video generation model: This Project presenting Bilibili's gift to the anime world!  \n  - [Index AniSora v1 RL 5B](https://github.com/bilibili/Index-anisora?tab=readme-ov-file#anisorav10_rl) I2V  \n    RL-optimized AniSoraV1.0 for enhanced anime-style output  \n- **Compute**  \n  - ZLUDA: update to `zluda==3.9.5` with `torch==2.7.0`  \n    *Note*: delete `.zluda` folder so that newest zluda will be installed if you are using the latest AMD Adrenaline driver  \n  - NNCF: added experimental support for direct INT8 MatMul  \n- **Feature**  \n  - Prompt Enhance: option to allow/disallow NSFW content  \n- **Fixes**  \n  - OpenVINO: force cpu device  \n  - Gradio: major cleanup and fixing defaults and ranges  \n  - Pydantic: update to api types  \n  - UI defaults: match correct prompt components  \n  - NNCF with ControlNet  \n  - NNCF with CogVideo\n  - IPEX with CogVideo  \n  - JXL image format metadata handling  \n\n## Update for 2025-05-12\n\n### Highlights for 2025-05-12\n\nFirst of all NNCF quantization engine has gone through some major enhancements and its now much faster, both in quantization as well as actual inference!  \nAnd its a only truly cross-platform solution for quantization as all other methods are platform specific.  \n\n*Note* if you're a ZLUDA user, see notes on GPU driver compatibility as recent Andrenaline drivers do cause problems!  \nAnd if you're a ROCm user, this release brings much faster compile times on Linux as well as first (experimental) builds for Windows!  \n\n[ReadMe](https://github.com/vladmandic/automatic/blob/master/README.md) | [ChangeLog](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md) | [Docs](https://vladmandic.github.io/sdnext-docs/) | [WiKi](https://github.com/vladmandic/automatic/wiki) | [Discord](https://discord.com/invite/sd-next-federal-batch-inspectors-1101998836328697867)\n\n### Details for 2025-05-12\n\n- **Compute**\n  - **NNCF**  \n    - Faster quantization  \n    - Faster inference with support for `torch.triton`  \n      up to 3.5x faster with INT4 and 2x faster with INT8  \n    - New settings: *NNCF -> Group size*  \n      default is a balance between performance (higher size) and quality (lower size)  \n      0 is default at 64, -1 disables grouping  \n  - **ZLUDA**:\n    - *warning*: AMD Adrenaline 25.5.1 drivers are NOT COMPATIBLE with ZLUDA\n      see [issue](https://github.com/vladmandic/sdnext/issues/3918) for details\n  - **ROCm**\n    - first working builds of **Torch with ROCm on Windows**  \n      highly experimental  \n      reach out on Discord if you want to test it  \n- **Features**\n  - Prompt Enhancer: support for *img2img* workflows  \n    in img2img prompt enhancer will first analyze input image and then incorporate user prompt to create enhanced prompt  \n  - **FramePack**\n    - improve LoRA compatibility  \n    - add metadata to video  \n  - **UI**\n    - ModernUI: support for History tab  \n    - ModernUI: support for FramePack tab  \n  - **API**  \n    - add `/sdapi/v1/framepack` endpoint with full support for FramePack including all optional settings  \n      see example: `sd-extension-framepack/create-video.py`  \n    - add `/sdapi/v1/checkpoint` endpoint to get info on currently loaded model/checkpoint  \n      see example: `cli/api-checkpoint.py`  \n    - add `/sdapi/v1/prompt-enhance` endpoint to enhance prompt using LLM  \n      see example: `cli/api-enhance.py`  \n      supports text, image and video prompts with or without input image  \n      *note*: if input image is provided, model should be left at default `gemma-3-4b-it` as most other LLMs do not support hybrid workflows  \n- **Fixes**\n  - Latent Diffusion Upscale\n  - Model load: support SDXL safetensors packaged without VAE  \n  - ROCm: disable cuDNN benchmark, fixes slow MIOpen tuning with `torch==2.7`  \n  - Extensions: use in-process installer for extensions-builtin, improves startup performance  \n  - FramePack: monkey-patch for dynamically installed `av`  \n  - Logging: reduce spam while progress is active  \n  - LoRA: legacy handler enable/disable  \n  - LoRA: force clear-cache on model unload  \n  - ADetailer: fix enable/disable  \n  - ZLUDA: improve compatibility with older GPUs  \n\n## Update for 2025-05-06\n\nMinor refesh with several bugfixes and updates to core libraries  \nPlus new features with **FramePack** and **HiDream-E1**\n\n- **Features**  \n  - [FramePack](https://vladmandic.github.io/sdnext-docs/FramePack)  \n    add **T2V** mode in addition to **I2V** and **FLF2V**  \n    support for new **F1: forward-only** model variant in addition to regular **bi-directional**  \n    add **prompt enhance** using VLM: it will analyze input image and then create enhanced prompt based on user prompt and image  \n    add **prompt interpolation**, section prompts do not need to match exact video section count  \n    and improved performance  \n    [Docs](https://vladmandic.github.io/sdnext-docs/FramePack) rewrite!  \n  - **Prompt-Enhhance**  \n    add **Qwen3** *0.6B/1.7B/4B* models  \n    add thinking mode support (for models that have it)  \n  - [HiDream-E1](https://huggingface.co/HiDream-ai/HiDream-E1-Full) natural language image-editing model built on HiDream-I1  \n    available via  *networks -> models -> reference*  \n    *note*: right now HiDream-E1 is limited to 768x768 images, so you must force resize image before running it  \n- **Other**  \n  - CUDA: set default to `torch==2.7.0` with `cuda==12.8`  \n  - ZLUDA: update to `zluda==3.9.4` and `flash-attn-2`  \n  - Docker: pre-install `ffmpeg`  \n  - Wiki: updated pages: *FramePack, Video, ROCm, ZLUDA, Quantization*  \n  - Gallery: support JXL image format  \n  - Scheduler: add sigmoid beta scheduler  \n  - GitHub: updated issue template  \n- **Fixes**  \n  - FramePack: correct dtype  \n  - NNCF: check dependencies and register quant type  \n  - API: refresh checkpoint list  \n  - API: vlm-api endpoint  \n  - Styles: save style with prompt  \n  - Texture tiling: fix apply when switching models  \n  - Diffusers: slow initial startup  \n  - Gated access: obfuscate and log token used for access  \n  - SDXL refiner workflow  \n  - Control: t2i-adapter workflow  \n  - Control: xs-controlnet workflow  \n  - Control: lllite-workflow  \n  - Control: refiner workflow with multiple control elements  \n\n## Highlights for 2025-04-28\n\nAnother major release with *over 120 commits*!  \nHighlights include new [Nunchaku Wiki](https://github.com/vladmandic/sdnext/wiki/Nunchaku) inference engine that allows running FLUX.1 with **3-5x** higher performance!  \nAnd a new [FramePack](https://github.com/vladmandic/sd-extension-framepack) extension for high-quality *I2V* and *FLF2V* video generation with unlimited duration!  \n\nWhat else?\n- New UI **History** tab  \n- New models: **Flex.2, LTXVideo-0.9.6, WAN-2.1-14B-FLF2V**, schedulers: **UniPC and LCM FlowMatch**, features: **CFGZero**  \n- Major updates to: **NNCF, OpenVINO, ROCm, ZLUDA**  \n- Cumulative fixes since last release  \n\n[ReadMe](https://github.com/vladmandic/automatic/blob/master/README.md) | [ChangeLog](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md) | [Docs](https://vladmandic.github.io/sdnext-docs/) | [WiKi](https://github.com/vladmandic/automatic/wiki) | [Discord](https://discord.com/invite/sd-next-federal-batch-inspectors-1101998836328697867)\n\n## Details for 2025-04-28\n\n- **Features**\n  - [Nunchaku](https://github.com/mit-han-lab/nunchaku) inference engine with custom **SVDQuant** 4-bit execution  \n    highly experimental and with limited support, but when it works, its magic: **Flux.1 at 6.0 it/s** *(not sec/it)*!  \n    basically, it can speed up supported models by 2-5x by using custom quantization and execution engine  \n    see [Nunchaku Wiki](https://github.com/vladmandic/sdnext/wiki/Nunchaku) for installation guide and list of supported models & features  \n  - [FramePack](https://github.com/vladmandic/sd-extension-framepack) based on **HunyuanVideo-I2V**  \n    full support and much more for **Lllyasviel** [FramePack](https://lllyasviel.github.io/frame_pack_gitpage/)  \n    implemented as an extension for **SD.Next** (for the moment while dev is ongoing)  \n    generate high-quality videos with pretty much unlimited duration and with limited VRAM!  \n    install as any other extension and for details see extension [README](https://github.com/vladmandic/sd-extension-framepack/blob/main/README.md)  \n    - I2V & FLF2V support with explicit strength controls  \n    - complex actions: modify prompts for each section of the video  \n    - LoRA support: use normal **HunyuanVideo** LoRAs  \n    - decode: use local, tiny or remote VAE  \n    - custom models: e.g. replace llama with one of your choice  \n    - video: multiple codecs and with hw acceleration, raw export, frame export, frame interpolation  \n    - compute: quantization support, new offloading, more configuration options, cross-platform, etc.  \n  - [Ostris Flex.2 Preview](https://huggingface.co/ostris/Flex.2-preview)  \n    more than a FLUX.1 finetune, FLEX.2 is created from *Flux.1 Schnell -> OpenFlux.1 -> Flex.1-alpha -> Flex.2-preview*  \n    and it has universal control and inpainting support built in!  \n    supported for text and control workflows  \n    when using in control mode, simply choose preprocessor and do not load actual controlnet  \n    supported control modes are: *line, pose and depth*  \n    available via  *networks -> models -> reference*  \n  - [LTXVideo 0.9.6](https://github.com/Lightricks/LTX-Video?tab=readme-ov-file) **T2V** and **I2V**  \n    in both **Standard** and **Distilled** variants  \n    available in *video tab*\n  - [WAN 2.1 14B 720P](https://huggingface.co/Wan-AI/Wan2.1-FLF2V-14B-720P) **FLF2V**  \n    new first-to-last image video model from WAN-AI  \n    available in *video tab*\n  - [CFG-Zero](https://github.com/WeichenFan/CFG-Zero-star) new guidance method optimized for flow-matching models  \n    implemented for **FLUX.1, HiDream-I1, SD3.x, CogView4, HunyuanVideo, WanAI**  \n    enable and configure in *settings -> pipeline modifiers -> cfg zero*  \n    experiment with CFGZero support in XYZ-grid  \n- **Optimizations**\n  - **NNCF** update to 2.16.0  \n    major refactoring of NNCF quantization code  \n    new quant types: `INT8_SYM` (new default), `INT4` and `INT4_SYM`  \n    quantization support for the convolutional layers on unet models with sym methods  \n    pre-load quantization support  \n    LoRA support  \n    *if you're low on VRAM, NNCF is as close as a catch-all solution*  \n  - **OpenVINO** update to 2025.1.0 and Torch to 2.7  \n  - **IPEX** update to Torch 2.7  \n  - **ROCm** update to Torch 2.7  \n  - **HiDream-I1** optimized offloading and prompt-encode caching  \n    it now works in 12GB VRAM / 26GB RAM!  \n  - **CogView3** and **CogView4** model loader optimizations  \n  - **Sana** model loader optimizations\n  - add explicit offload after encode prompt  \n    configure in *settings -> text encoder -> offload*  \n- **UI**  \n  - new History tab where you can see all jobs since the server startup  \n    and optionally download any of the previously generated images/videos  \n    access via *system -> history*  \n  - server restart from ui now replaces currently running process  \n    instead of trying to reload python modules in-place  \n  - add option to enable/disable clip skip  \n    disabled by default to avoid issues with frequent incorrect recommendations  \n    in *settings -> pipeline modifiers*\n  - configurable restore metadata from image to settings and to params  \n    in *settings -> image metadata*  \n- **API**  \n  - new [API Wiki](https://github.com/vladmandic/sdnext/wiki/API)  \n  - server will now maintain job history which can be queried via API  \n    so you can check previous jobs as well as request any previously generated images/videos  \n  - history endpoint: `/sdapi/v1/history?id={id}`  \n  - download endpoint: `/file={filename}`  \n  - progress api `/sdapi/v1/progress` now also include task id in the response  \n- **Other**\n  - **OMI** support for sd15/sdxl omi-standard LoRAs\n  - text/image/control/video pipeline vs task compatibility check  \n  - **HiDream-I1, FLUX.1, SD3.x** add HF gated access auth check  \n  - **HiDream-I1** LoRA support  \n    currently limited to diffusers-only LoRAs, CivitAI LoRA support is TBD  \n  - **HiDream-I1** add LLM info to image metadata  \n  - add `model_type` as option for image filename pattern  \n  - add **UniPC FlowMatch** scheduler  \n  - add **LCM FlowMatch** scheduler  \n  - networks: set which networks to skip when scanning civitai  \n    in *settings -> networks -> network scan*  \n    comma-separate list of regex patterns to skip  \n  - ui display reference models with subdued color  \n  - xyz grid support bool  \n  - do not force gc at end of processing  \n  - add `SD_LORA_DUMP` env variable for dev/diag to dump lora/model keys  \n- **Wiki**  \n  - new *Nunchaku*, *API* pages  \n  - updated *HiDream, Quantization, NNCF, Video, Docker, WSL, ZLUDA* pages  \n- **Fixes**\n  - HunyuanVideo-I2V with latest transformers  \n  - NNCF with TE-only quant  \n  - ONNX init fix  \n  - Quanto with TE/LLM quant  \n  - HiDream live preview  \n  - FLUX.1 controlnet i2i  \n  - SD35 InstantX IP-adapter  \n  - OpenVINO device selection\n  - xyz grid restore settings  \n  - config save unnecessary keys  \n  - recursive wildcards  \n  - extension installer handling of PYTHONPATH  \n  - trace logging  \n  - api logging  \n  - sd/sdxl-inpaint model loader  \n  - settings list display only visible items  \n  - checkpoint match when searching for model to load  \n  - video vae selection load correct vae\n\n## Update for 2025-04-12\n\n### Highlights for 2025-04-12\n\nLast release was just over a week ago and here we are again with another update as a new high-end image model, [HiDream-I1](https://github.com/vladmandic/sdnext/wiki/HiDream) jumped out and generated a lot of buzz!  \nThere are quite a few other performance and quality-of-life improvements in this release and 40 commits, so please take a look at the full [ChangeLog](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md)  \n\n[ReadMe](https://github.com/vladmandic/automatic/blob/master/README.md) | [ChangeLog](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md) | [Docs](https://vladmandic.github.io/sdnext-docs/) | [WiKi](https://github.com/vladmandic/automatic/wiki) | [Discord](https://discord.com/invite/sd-next-federal-batch-inspectors-1101998836328697867)\n\n### Details for 2025-04-12\n\n- **Models**  \n  - [HiDream-I1](https://huggingface.co/HiDream-ai/HiDream-I1-Full) in fast, dev and full variants!  \n    new absolutely massive image generative foundation model with **17B** parameters and 4 text-encoders with additional **8.3B** parameters  \n    simply select from *networks -> models -> reference*  \n    due to size (over 25B params in 58GB), offloading and on-the-fly quantization are pretty much a necessity  \n    see [HiDream Wiki page](https://github.com/vladmandic/sdnext/wiki/HiDream) for details  \n- **Features**  \n  - Custom model loader  \n      can be used to load any known diffusion model with default or custom model components  \n      in models -> custom tab  \n      see docs for details: <https://vladmandic.github.io/sdnext-docs/Loader/>  \n    - Pipe: [SoftFill](https://github.com/zacheryvaughn/softfill-pipelines)  \n- **Caching**  \n  - add `TeaCache` support to *Flux, CogVideoX, Mochi, LTX*  \n  - add `FasterCache` support to *WanAI, LTX* (other video models already supported)  \n  - add `PyramidAttentionBroadcast` support to *WanAI, LTX* (other video models already supported)  \n- **UI**  \n  - client polling speeds up and slows down depending if client page is visible or not  \n    client polling does not ask for live preview if page is not visible  \n    significantly reduces server load if you hide or minimize the page  \n  - progress: use batch-count for progress  \n  - grid: add of max-rows and max-columns in settings to control grid format  \n  - gallery: add max-columns in settings for gradio gallery components  \n- **Other**  \n  - ZLUDA: add more GPUs to recognized list  \n    select in scripts, available for sdxl in inpaint model  \n  - LoRA: add option to force-reload LoRA on every generate  \n  - settings: add **Model options** sections as placeholder for per-model settings\n  - video: update *LTXVideo-0.9.5* pipeline  \n  - te loader: allow free-form input in which case sdnext will attempt to load it as hf repo  \n  - diag: add get-server-status to UI generate context menu  \n  - diag: memory monitor detect gpu swapping  \n  - use [hf-xet](https://huggingface.co/blog/xet-on-the-hub) for huggingface downloads where possible  \n  - quant: update & fix `optimum-quanto` for transformers  \n  - quant: update & fix `torchao`  \n  - model load: new setting for model load initial device map  \n    can be used to force gpu vs cpu when loading model to avoid oom before model offloading is even activated after load  \n- **Changes**  \n  - params: Reset default guidance-rescale from 0.7 to 0.0  \n  - progress: add additional fields to progress API  \n- **Fixes**  \n  - styles: resize and bring quick-ui to forward on hover  \n  - LoRA: obey configured device when performing calculations  \n  - ZLUDA: startup issues  \n  - offload: balanced offload remove non-blocking move op  \n  - logging: debug causes invalid import  \n  - logging: cleanup  \n  - ROCm: flash attention repo with navi rotary fix  \n  - prompt: prompt scheduling with te caching  \n  - ui: progress allow for longer timeouts  \n  - internal: cleanup defined pipelines\n\n## Update for 2025-04-03\n\n### Highlights for 2025-04-03\n\nTime for another major release with ~120 commits and [ChangeLog](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md) that spans several pages!\n\n*Highlights?*  \nVideo...Brand new Video processing module with support for all latest models: **WAN21, Hunyuan, LTX, Cog, Allegro, Mochi1, Latte1** in both *T2V* and *I2V* workflows  \nAnd combined with *on-the-fly quantization*, support for *Local/Tiny/Remote* VAE, acceleration modules such as *FasterCache or PAB*, and more!  \nModels...And support for new models: **CogView-4**, **SANA 1.5**,  \n\n*Plus...*  \n- New **Prompt Enhance** using LLM,\n- New pipelines such as **InfiniteYou**  \n- New **CLiP** models, improvements to **remote VAE**, additional wiki/docs/guides  \n- More quantization options and granular control  \n- Pretty big performance updates to a) Any model using DiT based architecture due to new caching methods, b) ZLUDA with new attention methods, c) LoRA with much lower memory usage  \n\n[ReadMe](https://github.com/vladmandic/automatic/blob/master/README.md) | [ChangeLog](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md) | [Docs](https://vladmandic.github.io/sdnext-docs/) | [WiKi](https://github.com/vladmandic/automatic/wiki) | [Discord](https://discord.com/invite/sd-next-federal-batch-inspectors-1101998836328697867)\n\n### Details for 2025-04-03\n\n- **Video tab**  \n  - see [Video Wiki](https://github.com/vladmandic/sdnext/wiki/Video) for details!  \n  - new top-level tab, replaces previous *video* script in text/image tabs  \n    old scripts are still present, but will be removed in the future  \n  - support for all latest models:  \n    - [Hunyuan](https://huggingface.co/Tencent/HunyuanVideo): *HunyuanVideo, FastHunyuan, SkyReels* | *T2V, I2V*  \n    - [WAN21](https://huggingface.co/Wan-AI/Wan2.1-T2V-1.3B-Diffusers): *1.3B, 14B* | *T2V, I2V*  \n    - [LTXVideo](https://huggingface.co/Lightricks/LTX-Video): *0.9.0, 0.9.1, 0.9.5* | *T2V, I2V*  \n    - [CogVideoX](https://huggingface.co/THUDM/CogVideoX-5b): *2B, 5B* | *T2V, I2V*  \n    - [Allegro](https://huggingface.co/rhymes-ai/Allegro): *T2V*  \n    - [Mochi1](https://huggingface.co/genmo/mochi-1-preview): *T2V*  \n    - [Latte1](https://huggingface.co/maxin-cn/Latte-1): *T2V  \n  - decoding:  \n    - **Default**: use vae from model  \n    - **Tiny VAE**: support for *Hunyuan, WAN, Mochi*  \n    - **Remote VAE**: support for *Hunyuan*  \n  - **LoRA**\n    - support for *Hunyuan, LTX, WAN, Mochi, Cog*  \n    - add option to apply LoRA directly on GPU or use CPU first in low-memory scenarios  \n    - improve metadata and preview parallel fetch  \n    - support for mp4 so first frame is extracted as used as lora preview  \n  - additional key points:  \n    - all models are auto-downloaded upon first use  \n      uses *system paths -> huggingface* folder  \n    - support for many video types  \n    - optional video interpolation while creating video files  \n    - optional video preview in ui  \n      present if video output is selected  \n    - support for balanced offloading and model offloading  \n      uses system settings  \n    - on-the-fly quantization: *BnB, Quanto, TorchAO*  \n      uses system settings, granular for *transformer* and *text-encoder* separately  \n    - different video models support different video resolutions, frame counts, etc.  \n      and may require specific settings - see model links for details  \n    - see *ToDo/Limitations* section for additional notes  \n- **Models & Pipelines**  \n  - [THUDM CogView 4](https://huggingface.co/THUDM/CogView4-6B) **6B** variant  \n    new foundation model for image generation based o GLM-4 text encoder and a flow-based diffusion transformer  \n    fully supports offloading and on-the-fly quantization  \n    simply select from *networks -> models -> reference*  \n    *note* cogview4 is compatible with flowmatching samplers  \n  - [NVLabs SANA 1.5](https://huggingface.co/Efficient-Large-Model/SANA1.5_4.8B_1024px_diffusers) in **1.6B**, **4.8B** and [Sprint](https://huggingface.co/Efficient-Large-Model/Sana_Sprint_1.6B_1024px_diffusers) variations  \n    big update to previous SANA model  \n    fully supports offloading and on-the-fly quantization  \n    simply select from *networks -> models -> reference*  \n  - [ByteDance InfiniteYou](https://github.com/bytedance/InfiniteYou/): Flexible Photo Recrafting While Preserving Your Identity  \n    face-transfer model for FLUX.1  \n    select from *Scripts -> InfiniteYou*  \n    its large, ~12GB on top of FLUX.1 base model so make sure you have offloading and quantization setup  \n    *note* model will be auto-downloaded on first use  \n  - New [zer0int CLiP-L](https://huggingface.co/zer0int/CLIP-Registers-Gated_MLP-ViT-L-14) models:  \n    download text encoders into folder set in settings -> system paths -> text encoders (default is *models/Text-encoder*)  \n    load using *settings -> text encoder*  \n    *tip*: add *sd_text_encoder* to your *settings -> user interface -> quicksettings* list to have it appear at the top of the ui  \n- **Prompt Enhance**  \n  - see [Prompt Enhance Wiki](https://github.com/vladmandic/sdnext/wiki/Prompt-Enhance) for details!  \n  - new built-in extension available in text/image/control tabs  \n  - can be used to manually or automatically enhance prompts using LLM  \n  - built-in presets for **Gemma-3, Qwen-2.5, Phi-4, Llama-3.2, SmolLM2, Dolphin-3**  \n  - support for custom models  \n    load any models hosted on huggingface  \n    load either model in huggingface format or `gguf` format  \n    *note*: any hf model in `transformers.AutoModelForCausalLM` standard should work  \n    *note*: not all model architecture are supported for `gguf` format  \n  - models are auto-downloaded on first use  \n  - support quantization and offloading  \n  - auto-detect censored output  \n  - debug using `SD_LLM_DEBUG=true` env variable  \n- **Acceleration**  \n  - Support for most DiT-based models, for example: *FLUX.1, SD35, Hunyuan, Mochi, Latte, Allegro, Cog*  \n  - Enable and configure in *Settings -> Pipeline modifiers*  \n  - [FasterCache](https://huggingface.co/papers/2410.19355)  \n  - [PyramidAttentionBroadcast](https://huggingface.co/papers/2408.12588)  \n- **Remote VAE**  \n  - add support for remote vae encode in addition to remote vae decode  \n  - used by *img2img, inpaint, hires, detailer*  \n  - remote vae encode is disabled by default, you can enable it in *settings -> variable auto-encoder*  \n  - add remote vae info to metadata, thanks @iDeNoh  \n  - remote vae use `scaling_factor` and `shift_factor`  \n- **Caption/VLM**  \n  - [Google Gemma 3](https://huggingface.co/google/gemma-3-4b-it) 4B  \n    simply select from list of available models in caption tab  \n  - [ByteDance/Sa2VA](https://huggingface.co/ByteDance/Sa2VA-1B) 1B, 4B  \n    simply select from list of available models in caption tab  \n  - add option to set system prompt for vlm models that support it: *Gemma, Smol, Qwen*  \n- [NudeNet](https://github.com/vladmandic/sd-extension-nudenet/) extension updates  \n  - add detection of prompt language and alphabet and filter based on those values  \n  - add image policy checks using `LlavaGuard` VLM to detect policy violations (and reasons)  \n    against top-10 standard harmful content categories  \n  - add banned words/expressions check against prompt variations  \n- **LoRA**\n  - enable memory cache by default  \n  - significantly reduce memory usage  \n  - improve performance  \n  - improve detection of lora changes  \n  - unload lora only when changes are detected  \n  - refactor code for modularity  \n- **IPEX**  \n  - add `--upgrade` to torch_command when using `--use-nightly`  \n  - add xpu to profiler  \n  - fix untyped_storage, torch.eye and torch.cuda.device ops  \n  - fix torch 2.7 compatibility  \n  - fix performance with balanced offload  \n  - fix triton and torch.compile  \n- **ROCm**\n  - add `--upgrade` to torch_command when using `--use-nightly`  \n  - disable fp16 for gfx1102 (rx 7600 and rx 7500 series) gpus  \n- **ZLUDA**  \n  - [triton for ZLUDA v3.9.2](https://github.com/vladmandic/sdnext/wiki/ZLUDA#how-to-enable-triton)  \n    - `torch.compile` is now available  \n    - Flash Attention 2 is now available  \n- **Other**  \n  - **Command line** new option `--monitor PERIOD` to monitor CPU and GPU memory ever n seconds  \n  - **Upscale** new [asymmetric vae v2](https://huggingface.co/Heasterian/AsymmetricAutoencoderKLUpscaler_v2) upscaling method  \n  - **Upscale** new experimental support for `libvips` upscaling  \n  - **Quantization** add support for `optimum-quanto` on-the-fly quantization during load for all models  \n    note: previous method for quanto is still valid and is noted in settings as post-load quantization  \n  - **Quantization** add support to **CogView-3Plus**  \n  - **Default values** rename vae, unet and text-encoder settings *None* to *Default* to avoid confusion  \n  - **Detailer**: add *renoise* option to increase/decrease noise during detailer pass  \n    which can help with improving level of details\n  - **CLI**: add `cli/api-grid.py` which can generate grids using params-from-file for x/y axis  \n  - **Samplers** add ability to set sigma adjustment for each sampler  \n  - **ModernUI** updates  \n  - **CSS** updates  \n  - **Video** interpolate do not skip duplicate frames  \n  - **Settings UI** full refactor  \n  - **Settings UI** vertical/dirty indicator restores to default setting instead to previous value  \n  - update `diffusers` and other requirements  \n- **Wiki/Docs**  \n  - updated [Models](https://github.com/vladmandic/sdnext/wiki/Models) info  \n  - new [Video](https://github.com/vladmandic/sdnext/wiki/Video) guide  \n  - new [Caption](https://github.com/vladmandic/sdnext/wiki/Caption) guide  \n  - new [VAE](https://github.com/vladmandic/sdnext/wiki/VAE) guide  \n  - updated [SD3](https://github.com/vladmandic/sdnext/wiki/SD3) guide  \n  - updated [ZLUDA](https://github.com/vladmandic/sdnext/wiki/ZLUDA) guide  \n  - updated [OpenVINO](https://github.com/vladmandic/sdnext/wiki/OpenVINO) guide  \n  - updated [AMD-ROCm](https://github.com/vladmandic/sdnext/wiki/AMD-ROCm) guide  \n  - updated [Intel-ARC](https://github.com/vladmandic/sdnext/wiki/Intel-ARC) guide  \n- **Fixes**  \n  - fix installer not starting when older version of `rich` is installed  \n  - fix circular imports when debug flags are enabled  \n  - fix cuda errors with *directml*  \n  - fix memory stats not displaying the ram usage  \n  - fix **RunPod** memory limit reporting  \n  - fix flux ipadapter with start/stop values  \n  - fix progress api `eta_relative`  \n  - fix `insightface` loader  \n  - fix remove vae for flux.1  \n  - guard against git returining invalid timestamp  \n  - fix hires with latent upscale  \n  - fix legacy diffusion latent upscalers  \n  - fix upscaler selection in postprocessing  \n  - fix sd35 with batch processing  \n  - fix extra networks cover and inline views  \n  - fix token counter error style with modernui  \n  - fix sampler metadata when using default sampler  \n  - fix paste incorrect float to int cast  \n  - fix server restart from ui  \n  - fix style apply params  \n  - fix `wan22-i2v`  \n  - do not allow edit of built-in styles  \n  - improve lora compatibility with balanced offload  \n\n## Update for 2025-02-28\n\nPrimarily a hotfix/service release plus few UI improvements and one exciting new feature: Remote-VAE!\n\n- **Remote Decode**  \n  - final step of image generate, VAE decode, is by far the most memory intensive operation and can easily result in out-of-memory errors  \n    what can be done? Well, *Huggingface* is now providing *free-of-charge* **remote-VAE-decode** service!  \n  - how to use? previous *Full quality* option in UI is replaced with VAE type selector: *Full, Tiny, Remote*  \n    currently supports SD15, SDXL and FLUX.1 with more models expected in the near future  \n    depending on your bandwidth select mode in *settings -> vae -> raw/png/jpg*  \n    if remote processing fails SD.Next will fallback to using normal VAE decode process  \n    *privacy note*: only passed item is final latent itself without any user or generate information and latent is not stored in the cloud  \n- **UI**\n  - modern ui reorg main tab  \n    improve styling, improve scripts/extensions interface and separate ipadapters  \n  - additional ui hints  \n- **Other**  \n  - add `--extensions-dir` cli arg and `SD_EXTENSIONSDIR` env variable to specify extensions directory  \n  - update `zluda==3.9.0`\n- **Fixes**  \n  - skip trying to register legacy/incompatibile extensions in control ui  \n  - add additional scripts/extensions callbacks  \n  - remove ui splash screen on auth fail  \n  - log full config path, full log path, system name, extensions path\n  - zluda hotfixes  \n  - zluda force sync  \n  - fix torch import on compile  \n  - infotext parser force delimiter before params  \n  - handle pipeline class switch errors  \n  - improve extensions options compatibility  \n  - fix flux on ipex  \n  - disable fp64 emulation on ipex  \n\n## Update for 2025-02-18\n\n### Highlight for 2025-02-18\n\nWe're back with another update with nearly 100 commits!  \n- Starting with massive UI update with full [localization](https://vladmandic.github.io/sdnext-docs/Locale/) for 8 languages  \n  and 100+ new [hints](https://vladmandic.github.io/sdnext-docs/Hints/)  \n- Big update to [Docker](https://vladmandic.github.io/sdnext-docs/Docker/) containers  \n  with support for all major compute platforms  \n- A lot of [outpainting](https://vladmandic.github.io/sdnext-docs/Outpaint/) goodies  \n- Support for new models: [AlphaVLLM Lumina 2](https://github.com/Alpha-VLLM/Lumina-Image-2.0) and [Ostris Flex.1-Alpha](https://huggingface.co/ostris/Flex.1-alpha)  \n- And new **Mixture-of-Diffusers** regional prompting & tiling pipeline  \n- Follow-up to last weeks **interrogate/captioning** rewrite  \n  now with redesigned captioning UI, batch support, and much more  \n  plus **JoyTag**, **JoyCaption**, **PaliGemma**, **ToriiGate**, **Ovis2** added to list of supported models  \n- Some changes to **prompt parsing** to allow more control as well as  \n  more flexibility when mouting SDNext server to custom URL  \n- Of course, cumulative fixes...  \n\n*...and more* - see [changelog](https://github.com/vladmandic/sdnext/blob/dev/CHANGELOG.md) for full details!  \n\n### Details for 2025-02-20\n\n- **User Interface**  \n  - **Hints**  \n    - added/updated 100+ ui hints!  \n    - [hints](https://vladmandic.github.io/sdnext-docs/Hints/) documentation and contribution guide  \n  - **Localization**  \n    - full ui localization!  \n      *english, croatian, spanish, french, italian, portuguese, chinese, japanese, korean, russian*  \n    - set in *settings -> user interface -> language*  \n    - [localization](https://vladmandic.github.io/sdnext-docs/Locale/) documentation  \n  - **UI**  \n    - force browser cache-invalidate on page load  \n    - configurable request timeout  \n    - modernui improve gallery styling  \n    - modernui improve networks styling  \n    - modernui support variable card size  \n- **Docs**  \n  - New [Outpaint](https://vladmandic.github.io/sdnext-docs/Outpaint/) step-by-step guide  \n  - Updated [Docker](https://github.com/vladmandic/sdnext/wiki/Docker) guide  \n    includes build and publish and both local and cloud examples  \n- **Models**  \n  - [AlphaVLLM Lumina 2](https://github.com/Alpha-VLLM/Lumina-Image-2.0)  \n    new foundation model for image generation based o Gemma-2-2B text encoder and a flow-based diffusion transformer  \n    fully supports offloading and on-the-fly quantization  \n    simply select from *networks -> models -> reference*  \n  - [Ostris Flex.1-Alpha](https://huggingface.co/ostris/Flex.1-alpha)  \n    originally based on *Flux.1-Schnell*, but retrained and with different architecture  \n    result is model smaller than *Flux.1-Dev*, but with similar capabilities  \n    fully supports offloading and on-the-fly quantization  \n    simply select from *networks -> models -> reference*  \n- **Functions**  \n  - [Mixture-of-Diffusers](https://huggingface.co/posts/elismasilva/251775641926329)  \n    Regional tiling type of a solution for SDXL models  \n    select from *scripts -> mixture of diffusers*  \n  - [Automatic Color Inpaint]  \n    Automatically creates mask based on selected color and triggers inpaint  \n    simply select in *scripts -> automatic color inpaint* when in img2img mode  \n  - [RAS: Region-Adaptive Sampling](https://github.com/microsoft/RAS) *experimental*  \n    Speeds up SD3.5 models by sampling only regions of interest  \n    Enable in *settings -> pipeline modifiers -> ras*  \n- **Interrogate/Captioning**  \n  - Redesigned captioning UI  \n    split from Process tab into separate tab  \n    split `clip` vs `vlm` models processing  \n    direct *send-to* buttons on all tabs: txt/img/ctrl->process/caption, process/caption->txt/img/ctrl  \n  - Advanced params:\n    VLM: *max-tokens, num-beams, temperature, top-k, top-p, do-sample*  \n    CLiP: *min-length, max-length, chunk-size, min-flavors, max-flavors, flavor-count, num-beams*  \n    params are auto-saved in `config.json` and used when using quick interrogate  \n    params that are set to 0 mean use model defaults  \n  - Batch processing: VLM and CLiP  \n    for example, can be used to caption your training dataset in one go  \n    add option to append to captions file, can be used to run multiple captioning models in sequence  \n    add option to run recursively on all subfolders  \n    add progress bar  \n  - Add additional VLM models:  \n    [JoyTag](https://huggingface.co/fancyfeast/joytag)  \n    [JoyCaption 2](https://huggingface.co/fancyfeast/llama-joycaption-alpha-two-hf-llava)  \n    [Google PaliGemma 2](https://huggingface.co/google/paligemma2-3b-pt-224) 3B  \n    [ToriiGate 0.4](https://huggingface.co/Minthy/ToriiGate-v0.4-7B) 7B  \n    [AIDC Ovis2](https://huggingface.co/AIDC-AI/Ovis2-1B) 1B/2B/4B  \n  - *Note* some models require `flash-attn` to be installed  \n    due to binary/build dependencies, it should not be done automatically,  \n    see [flash-attn](https://github.com/Dao-AILab/flash-attention) for installation instructions  \n- **Docker**  \n  - updated **CUDA** receipe to `torch==2.6.0` with `cuda==12.6` and add prebuilt image  \n  - added **ROCm** receipe and prebuilt image  \n  - added **IPEX** receipe and add prebuilt image  \n  - added **OpenVINO** receipe and prebuilt image  \n- **System**  \n  - improve **python==3.12** compatibility  \n  - **Torch**  \n    - for **zluda** set default to `torch==2.6.0+cu118`  \n    - for **openvino** set default to `torch==2.6.0+cpu`  \n  - **OpenVINO**  \n    - update to `openvino==2025.0.0`  \n    - improve upscaler compatibility  \n    - enable upscaler compile by default  \n    - fix shape mismatch errors on too many resolution changes  \n  - **ZLUDA**  \n    - update to `zluda==3.8.8`  \n- **Other**  \n  - **Asymmetric tiling**  \n    allows for configurable image tiling for x/y axis separately  \n    enable in *scripts -> asymmetric tiling*  \n    *note*: traditional symmetric tiling is achieved by setting circular mode for both x and y  \n  - **Styles**  \n    ability to save and/or restore prompts before or after parsing of wildcards  \n    set in *settings -> networks -> styles*  \n  - **Access tokens**  \n    persist *models -> hugginface -> token*  \n    persist *models -> civitai -> token*  \n  - global switch to lancosz method for all interal resize ops and bicubic for interpolation ops  \n  - **Text encoder**  \n    add advanced per-model options for text encoder  \n    set in *settings -> text encoder -> Optional*  \n  - **Subpath**  \n    allow setting additional mount subpath over which server url will be accessible  \n    set in *settings -> user interface*  \n  - **Prompt parsing**  \n    better handling of prompt parsing when using masking char `\\`  \n- **Fixes**  \n  - update torch nightly urls  \n  - docs/wiki always use relative links  \n  - ui use correct timezone for log display  \n  - ui improve settings search behavior  \n  - ui log scroll to bottom  \n  - ui fix send to inpaint/sketch  \n  - modernui add control init image toggle  \n  - modernui fix sampler advanced options  \n  - outpaint fixes  \n  - validate output before hires/refine  \n  - scheduler fix sigma index out of bounds  \n  - force pydantic version reinstall/reload  \n  - multi-unit when using controlnet-union  \n  - pulid with hidiffusion  \n  - api: stricter access control  \n  - api: universal handle mount subpaths  \n\n## Update for 2025-02-05\n\n- refresh dev/master branches\n\n## Update for 2025-02-04\n\n### Highlights for 2025-02-04\n\nJust one week after latest release and what a week it was with over 50 commits!  \n\n*What's New?*  \n- Rehosted core repo to new [home](https://github.com/vladmandic/sdnext)  \n- Switched to using `torch==2.6.0` and added support for `nightly` builds required for **nVidia Blackwell** GPUs  \n- Completely new **interrogate/captioning**, now supporting 150+ **OpenCLiP** models and 20+ built-in **VLMs**  \n- Support for **new VLMs**, New SOTA **background removal**  \n- Other: *torch tunable ops, extra networks search/filter, balanced offload, prompt parser, configurable tracebacks, etc.*  \n- Cumulative fixes...  \n\n### Details for 2025-02-04\n\n- **GitHub**\n  - rename core repo from <https://github.com/vladmandic/automatic> to <https://github.com/vladmandic/sdnext>  \n    old repo url should automatically redirect to new one for seamless transition and in-place upgrades  \n    all internal links have been updated  \n    wiki content and docs site have been updated  \n- **Docs**:\n  - Updated [Debugging guide](https://github.com/vladmandic/automatic/wiki/Debug)  \n- **Torch**:\n  - for **cuda** set default to `torch==2.6.0+cu126`  \n    for **rocm** set default to `torch==2.6.0+rocm6.2.4`  \n    for **ipex** set default to `torch==2.6.0+xpu`  \n    *note*: to avoid disruptions sdnext does not perform torch install during in-place upgrades  \n    to force torch upgrade, either start with new installation or use `--reinstall` flag  \n  - support for torch **nightly** builds and nvidia **blackwell** gpus!  \n    use `--use-nightly` flag to install torch nightly builds  \n    current defaults to `torch==2.7.0+cu128` prerelease  \n    *note*: nightly builds are required for blackwell gpus  \n  - add support for torch **tunable ops**, this can speed up operations by up to *10-30%* on some platforms  \n    set in *settings -> backend settings -> torch options* and *settings -> system paths -> tunable ops cache*  \n  - add support for stream-loading, this can speed up model loading when models are located on network drives  \n    set in *settings -> models & loading -> model load using streams*  \n  - enhanced error logging  \n- **Interrogate/Captioning**  \n  - single interrogate button for every input or output image  \n  - behavior of interrogate configurable in *settings -> interrogate*  \n    with detailed defaults for each model type also configurable  \n  - select between 150+ *OpenCLiP* supported models, 20+ built-in *VLMs*, *DeepDanbooru*  \n  - **VLM**: now that we can use VLMs freely, we've also added support for few more out-of-the-box  \n    [Alibaba Qwen VL2](https://huggingface.co/Qwen/Qwen2-VL-2B), [Huggingface Smol VL2](https://huggingface.co/HuggingFaceTB/SmolVLM-Instruct), [ToriiGate 0.4](https://huggingface.co/Minthy/ToriiGate-v0.4-2B)  \n- **Postprocess**  \n  - new sota remove background model: [BEN2](https://huggingface.co/PramaLLC/BEN2)  \n    select in *process -> remove background* or enable postprocessing for txt2img/img2img operations  \n- **Other**:\n  - **networks**: imporove search/filter and add visual indicators for types  \n  - **balanced offload** new defaults: *lowvram/4gb min threshold: 0, medvram/8gb min threshold: 0, default min threshold 0.25*  \n  - **prompt parser**: log stats with tokens, sections and min/avg/max weights  \n  - **prompt parser**: add setting to ignore line breaks in prompt  \n    set in *settings -> text encoder -> use line breaks*  \n  - **visual query**: add list of predefined system prompts  \n  - **onnx**: allow manually specifying `onnxruntime` package\n    set env variable `ONNXRUNTIME_COMMAND` to override default package installation  \n  - **nvml cli**: run nvidia-management-lib interrogate from cli  \n    already available in ui in generate -> right click -> nvidia  \n    > python modules/api/nvml.py  \n- **Refactor**:\n  - unified trace handler with configurable tracebacks  \n  - refactor interrogate/analyze/vqa code  \n- **Fixes**:  \n  - photomaker with offloading  \n  - photomaker with refine  \n  - detailer with faceid modules  \n  - detailer restore pipeline before run  \n  - fix `python==3.9` compatibility  \n  - improve `python>=3.12.3` compatibility\n  - handle invalid `triton` on Linux  \n  - correct library import order  \n  - update requirements  \n  - calculate dyn atten bmm slice rate  \n  - dwpose update and patch `mmengine` installer  \n  - ipex device wrapper with adetailer  \n  - openvino error handling  \n  - relax python version checks for rocm  \n  - simplify and improve file wildcard matching  \n  - fix `rich` version  \n  - add cn active label\n\n## Update for 2025-01-29\n\n### Highlights for 2025-01-29\n\nTwo weeks since last release, time for update!  \n\n*What's New?*  \n- New **Detailer** functionality including ability to use several new  \n  face-restore models: *RestoreFormer, CodeFormer, GFPGan, GPEN-BFR*\n- Support for new models/pipelines:  \n  face-swapper with **Photomaker-v2** and video with **Fast-Hunyuan**  \n- Support for several new optimizations and accelerations:  \n  Many **IPEX** improvements, native *torch fp8* support,  \n  support for **PAB:Pyramid-attention-broadcast**, **ParaAttention** and **PerFlow**  \n- Fully built-in both model **merge weights** as well as model **merge component**  \n  Finally replace that pesky VAE in your favorite model with a fixed one!  \n- Improved remote access control and reliability as well as running inside containers  \n- And of course, hotfixes for all reported issues...  \n\n### Details for 2025-01-29\n\n- **Contributing**:  \n  - if you'd like to contribute, please see updated [contributing](https://github.com/vladmandic/automatic/blob/dev/CONTRIBUTING) guidelines\n- **Model Merge**\n  - replace model components and merge LoRAs  \n    in addition to existing model weights merge support  \n    now also having ability to replace model components and merge LoRAs  \n    you can also test merges in-memory without needing to save to disk at all  \n    and you can also use it to convert diffusers to safetensors if you want  \n    *example*: replace vae in your favorite model with a fixed one? replace text encoder? etc.  \n    *note*: limited to sdxl for now, additional models can be added depending on popularity  \n- **Detailer**:  \n  - in addition as standard behavior of detect & run-generate, it can now also run face-restore models  \n  - included models are: *CodeFormer, RestoreFormer, GFPGan, GPEN-BFR*  \n- **Face**:  \n  - new [PhotoMaker v2](https://huggingface.co/TencentARC/PhotoMaker-V2) and reimplemented [PhotoMaker v1](https://huggingface.co/TencentARC/PhotoMaker)  \n    compatible with sdxl models, generates pretty good results and its faster than most other methods  \n    select under *scripts -> face -> photomaker*  \n  - new [ReSwapper](https://github.com/somanchiu/ReSwapper)  \n    todo: experimental-only and unfinished, only noting in changelog for future reference  \n- **Video**  \n  - **hunyuan video** support for [FastHunyuan](https://huggingface.co/FastVideo/FastHunyuan)  \n    simply select model variant and set appropriate parameters  \n    recommended: sampler-shift=17, steps=6, resolution=720x1280, frames=125, guidance>6.0  \n- [PAB: Pyramid Attention Broadcast](https://oahzxl.github.io/PAB/)  \n  - speed up generation by caching attention results between steps  \n  - enable in *settings -> pipeline modifiers -> pab*  \n  - adjust settings as needed: wider timestep range means more acceleration, but higher accuracy drop  \n  - compatible with most `transformer` based models: e.g. flux.1, hunyuan-video, lyx-video, mochi, etc.\n- [ParaAttention](https://github.com/chengzeyi/ParaAttention)\n  - first-block caching that can significantly speed up generation by dynamically reusing partial outputs between steps  \n  - available for: flux, hunyuan-video, ltx-video, mochi  \n  - enable in *settings -> pipeline modifiers -> para-attention*  \n  - adjust residual diff threshold to balance the speedup and the accuracy:  \n    higher values leads to more cache hits and speedups, but might also lead to a higher accuracy drop  \n- **IPEX**\n  - enable force attention slicing, fp64 emulation, jit cache  \n  - use the us server by default on linux  \n  - use pytorch test branch on windows  \n  - extend the supported python versions  \n  - improve sdpa dynamic attention  \n- **Torch FP8**\n  - uses torch `float8_e4m3fn` or `float8_e5m2` as data storage and performs dynamic upcasting to compute `dtype` as needed  \n  - compatible with most `unet` and `transformer` based models: e.g. *sd15, sdxl, sd35, flux.1, hunyuan-video, ltx-video, etc.*  \n    this is alternative to `bnb`/`quanto`/`torchao` quantization on models/platforms/gpus where those libraries are not available  \n  - enable in *settings -> quantization -> layerwise casting*  \n- [PerFlow](https://github.com/magic-research/piecewise-rectified-flow)  \n  - piecewise rectified flow as model acceleration  \n  - use `perflow` scheduler combined with one of the available pre-trained [models](https://huggingface.co/hansyan)  \n- **Other**:  \n  - **upscale**: new [asymmetric vae](https://huggingface.co/Heasterian/AsymmetricAutoencoderKLUpscaler) upscaling method\n  - **gallery**: add http fallback for slow/unreliable links  \n  - **splash**: add legacy mode indicator on splash screen  \n  - **network**: extract thumbnail from model metadata if present  \n  - **network**: setting value to disable use of reference models  \n- **Refactor**:  \n  - **upscale**: code refactor to unify latent, resize and model based upscalers  \n  - **loader**: ability to run in-memory models  \n  - **schedulers**: ability to create model-less schedulers  \n  - **quantization**: code refactor into dedicated module  \n  - **dynamic attention sdpa**: more correct implementation and new trigger rate control  \n- **Remote access**:  \n  - perform auth check on ui startup  \n  - unified standard and modern-ui authentication method & cleanup auth logging  \n  - detect & report local/external/public ip addresses if using `listen` mode  \n  - detect *docker* enforced limits instead of system limits if running in a container  \n  - warn if using public interface without authentication  \n- **Fixes**:  \n  - non-full vae decode  \n  - send-to image transfer  \n  - sana vae tiling  \n  - increase gallery timeouts  \n  - update ui element ids  \n  - modernui use local font  \n  - unique font family registration  \n  - mochi video number of frames  \n  - mark large models that should offload  \n  - avoid repeated optimum-quanto installation  \n  - avoid reinstalling bnb if not cuda  \n  - image metadata civitai compatibility  \n  - xyz grid handle invalid values  \n  - omnigen pipeline handle float seeds  \n  - correct logging of docker status on logs, thanks @kmscode  \n  - fix omnigen  \n  - fix docker status reporting  \n  - vlm/vqa with moondream2  \n  - rocm do not override triton installation  \n  - port streaming model load to diffusers  \n\n## Update for 2025-01-15\n\n### Highlights for 2025-01-15\n\nTwo weeks since last release, time for update!  \nThis time a bit shorter highligh reel as this is primarily a service release, but still there is more than few updates  \n*(actually, there are ~60 commits, so its not that tiny)*  \n\n*What's New?\"  \n- Large [Wiki](https://github.com/vladmandic/automatic/wiki)/[Docs](https://vladmandic.github.io/sdnext-docs/) updates  \n- New models: **Allegro Video**, new pipelines: **PixelSmith**, updates: **Hunyuan-Video**, **LTX-Video**, **Sana 4k**  \n- New version for **ZLUDA**  \n- New features in **Detailer**, **XYZ grid**, **Sysinfo**, **Logging**, **Schedulers**, **Video save/create**  \n- And a tons of hotfixes...  \n\n### Details for 2025-01-15\n\n- [Wiki/Docs](https://vladmandic.github.io/sdnext-docs/):\n  - updated: Detailer, Install, Update, Debug, Control-HowTo, ZLUDA  \n- [Allegro Video](https://huggingface.co/rhymes-ai/Allegro)  \n  - optimizations: full offload and quantization support  \n  - *reference values*: width 1280 height 720 frames 88 steps 100 guidance 7.5  \n  - *note*: allegro model is really sensitive to input width/height/frames/steps  \n    and may result in completely corrupt output if those are not within expected range  \n- [PixelSmith](https://github.com/Thanos-DB/Pixelsmith/)\n  - available for SD-XL in txt2img and img2img workflows\n  - select from *scripts -> pixelsmith*  \n- [Hunyuan Video](https://github.com/Tencent/HunyuanVideo) LoRA support\n  - example: <https://huggingface.co/Cseti/HunyuanVideo-LoRA-Arcane_Jinx-v1>\n- [LTX Video](https://github.com/Lightricks/LTX-Video) framewise decoding  \n  - enabled by default, allows generating longer videos with reduced memory requirements  \n- [Sana 4k](https://huggingface.co/Efficient-Large-Model/Sana_1600M_4Kpx_BF16_diffusers)  \n  - new Sana variation with support of directly generating 4k images  \n  - simply select from *networks -> models -> reference*  \n  - tip: enable vae tiling when generating very large images  \n- **Logging**:\n  - reverted enable debug by default  \n  - updated [debug wiki](https://github.com/vladmandic/automatic/wiki/debug)  \n  - sort logged timers by duration  \n  - allow min duration env variable for timers: `SD_MIN_TIMER=0.1` (default)  \n  - update installer messages  \n- **Refactor**:\n  - refactored progress monitoring, job updates and live preview  \n  - improved metadata save and restore  \n  - startup tracing and optimizations  \n  - threading load locks on model loads  \n  - refactor native vs legacy model loader  \n  - video save/create\n- **Schedulers**:\n  - [TDD](https://github.com/RedAIGC/Target-Driven-Distillation) new super-fast scheduler that can generate images in 4-8 steps  \n    recommended to use with [TDD LoRA](https://huggingface.co/RED-AIGC/TDD/tree/main)  \n- **Detailer**:\n  - add explicit detailer prompt and negative prompt  \n  - add explicit detailer steps setting  \n  - move steps, strength, prompt, negative from settings into ui params  \n  - set/restore detailer metadata  \n  - new [detailer wiki](https://github.com/vladmandic/automatic/wiki/Detailer)\n- **Preview**\n  - since different TAESD versions produce different results and latest is not necessarily greatest  \n    you can choose TAESD version in settings -> live preview  \n    also added is support for another finetuned version of TAESD [Hybrid TinyVAE](https://huggingface.co/cqyan/hybrid-sd-tinyvae-xl)  \n- **Video**  \n  - all video create/save code is now unified  \n  - add support for video formats: GIF, PNG, MP4/MP4V, MP4/AVC1, MP4/JVT3, MKV/H264, AVI/DIVX, AVI/RGBA, MJPEG/MJPG, MPG/MPG1, AVR/AVR1\n  - *note*: video format support is platform dependent and not all formats may be available on all platforms\n  - *note*: avc1 and h264 need custom opencv due to oss licensing issues  \n- **ZLUDA** v3.8.7  \n  - new runtime compiler implementation: complex types, JIT are now available  \n  - fast fourier transformation is implemented  \n  - experimental BLASLt support via nightly build  \n    - set `ZLUDA_NIGHTLY=1` to install nightly ZLUDA: newer torch such as 2.4.x (default) and 2.5.x are now available  \n    - requirements: unofficial hipBLASLt  \n- **Other**\n  - **XYZ Grid**: add prompt search&replace options: *primary, refine, detailer, all*\n  - **SysInfo**: update to collected data and benchmarks  \n- **Fixes**:\n  - explict clear caches on model load  \n  - lock adetailer commit: `#a89c01d`  \n  - xyzgrid progress calculation  \n  - xyzgrid detailer\n  - vae tiling use default value if not set  \n  - sd35 img2img\n  - samplers test for scale noise before using  \n  - scheduler api  \n  - sampler create error handling  \n  - controlnet with hires  \n  - controlnet with batch count  \n  - apply settings skip hidden settings  \n  - lora diffusers method apply only once  \n  - lora diffusers method set prompt tags and metadata  \n  - flux support on-the-fly quantization for bnb of unet only  \n  - control restore pipeline before running hires  \n  - restore args after batch run  \n  - flux controlnet  \n  - zluda installer  \n  - control inherit parent pipe settings  \n  - control logging  \n  - hf cache folder settings  \n  - fluxfill should not require base model\n\n## Update for 2024-12-31\n\nNYE refresh release with quite a few optimizatios and bug fixes...  \nCommit hash: `master: #dcfc9f3` `dev: #935cac6`  \n\n- **LoRA**:  \n  - LoRA load/apply/unapply methods have been changed in 12/2024 Xmass release and further tuned in this release\n  - for details on available methods, see <https://github.com/vladmandic/automatic/wiki/Lora#lora-loader>  \n  - **Sana** support  \n  - quantized models support  \n  - add fuse support with on-demand apply/unapply (new default)  \n  - add legacy option in *settings -> networks*  \n- **HunyuanVideo**:  \n  - optimizations: full offload, quantization and tiling support  \n- **LTXVideo**:  \n  - optimizations: full offload, quantization and tiling support  \n  - [TeaCache](https://github.com/ali-vilab/TeaCache/blob/main/TeaCache4LTX-Video/README.md) integration  \n- **VAE**:  \n  - tiling granular options in *settings -> Variational Auto Encoder*  \n- **UI**:  \n  - live preview optimizations and error handling  \n  - live preview high quality output, thanks @Disty0  \n  - CSS optimizations when log view is disabled  \n- **Samplers**:  \n  - add flow shift options and separate dynamic thresholding from dynamic shifting  \n  - autodetect matching sigma capabilities  \n- **API**:  \n  - better default values for generate  \n- **Refactor**:  \n  - remove all LDM imports if running in native mode  \n  - startup optimizatios  \n- **Torch**:  \n  - support for `torch==2.6.0`  \n- **OpenVINO**:  \n  - disable re-compile on resolution change  \n  - fix shape mismatch on resolution change  \n- **Fixes**:  \n  - flux pipeline switches: txt/img/inpaint  \n  - flux custom unet loader for bnb  \n  - flux do not requantize already quantized model\n  - interrogate caption with T5  \n  - on-the-fly quantization using TorchAO  \n  - remove concurrent preview requests  \n  - xyz grid recover on error  \n  - hires batch  \n  - sdxl refiner  \n  - increase progress timeout\n  - kandinsky matmul  \n  - do not show disabled networks  \n  - enable debug logging by default\n  - image width/height calculation when doing img2img  \n  - corrections with batch processing  \n  - hires with refiner prompt and batch processing  \n  - processing with nested calls  \n  - ui networks initial sort  \n  - esrgan on cpu devices  \n\n## Update for 2024-12-24\n\n### Highlights for 2024-12-24\n\n### SD.Next Xmass edition: *What's new?*\n\nWhile we have several new supported models, workflows and tools, this release is primarily about *quality-of-life improvements*:  \n- New memory management engine  \n  list of changes that went into this one is long: changes to GPU offloading, brand new LoRA loader, system memory management, on-the-fly quantization, improved gguf loader, etc.  \n  but main goal is enabling modern large models to run on standard consumer GPUs  \n  without performance hits typically associated with aggressive memory swapping and needs for constant manual tweaks  \n- New [documentation website](https://vladmandic.github.io/sdnext-docs/)  \n  with full search and tons of new documentation  \n- New settings panel with simplified and streamlined configuration  \n\nWe've also added support for several new models such as highly anticipated [NVLabs Sana](https://huggingface.co/Efficient-Large-Model/Sana_1600M_1024px) (see [supported models](https://vladmandic.github.io/sdnext-docs/Model-Support/) for full list)  \nAnd several new SOTA video models: [Lightricks LTX-Video](https://huggingface.co/Lightricks/LTX-Video), [Hunyuan Video](https://huggingface.co/tencent/HunyuanVideo) and [Genmo Mochi.1 Preview](https://huggingface.co/genmo/mochi-1-preview)  \n\nAnd a lot of **Control** and **IPAdapter** goodies  \n- for **SDXL** there is new [ProMax](https://huggingface.co/xinsir/controlnet-union-sdxl-1.0), improved *Union* and *Tiling* models  \n- for **FLUX.1** there are [Flux Tools](https://blackforestlabs.ai/flux-1-tools/) as well as official *Canny* and *Depth* models,  \n  a cool [Redux](https://huggingface.co/black-forest-labs/FLUX.1-Redux-dev) model as well as [XLabs](https://huggingface.co/XLabs-AI/flux-ip-adapter-v2) IP-adapter\n- for **SD3.5** there are official *Canny*, *Blur* and *Depth* models in addition to existing 3rd party models  \n  as well as [InstantX](https://huggingface.co/InstantX/SD3.5-Large-IP-Adapter) IP-adapter  \n\nPlus couple of new integrated workflows such as [FreeScale](https://github.com/ali-vilab/FreeScale) and [Style Aligned Image Generation](https://style-aligned-gen.github.io/)  \n\nAnd it wouldn't be a *Xmass edition* without couple of custom themes: *Snowflake* and *Elf-Green*!  \nAll-in-all, we're around ~180 commits worth of updates, check the changelog for full list  \n\n[ReadMe](https://github.com/vladmandic/automatic/blob/master/README.md) | [ChangeLog](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md) | [Docs](https://vladmandic.github.io/sdnext-docs/) | [WiKi](https://github.com/vladmandic/automatic/wiki) | [Discord](https://discord.com/invite/sd-next-federal-batch-inspectors-1101998836328697867)\n\n## Details for 2024-12-24\n\n### New models and integrations\n\n- [NVLabs Sana](https://huggingface.co/Efficient-Large-Model/Sana_1600M_1024px)\n  support for 1.6B 2048px, 1.6B 1024px and 0.6B 512px models  \n  **Sana** can synthesize high-resolution images with strong text-image alignment by using **Gemma2** as text-encoder  \n  and its *fast* - typically at least **2x** faster than sd-xl even for 1.6B variant and maintains performance regardless of resolution  \n  e.g., rendering at 4k is possible in less than 8GB vram  \n  to use, select from *networks -> models -> reference* and models will be auto-downloaded on first use  \n  *reference values*: sampler: default (or any flow-match variant), steps: 20, width/height: 1024, guidance scale: 4.5  \n  *note* like other LLM-based text-encoders, sana prefers long and descriptive prompts  \n  any short prompt below 300 characters will be auto-expanded using built in Gemma LLM before encoding while long prompts will be passed as-is  \n- **ControlNet**\n  - improved support for **Union** controlnets with granular control mode type\n  - added support for latest [Xinsir ProMax](https://huggingface.co/xinsir/controlnet-union-sdxl-1.0) all-in-one controlnet  \n  - added support for multiple **Tiling** controlnets, for example [Xinsir Tile](https://huggingface.co/xinsir/controlnet-tile-sdxl-1.0)  \n    *note*: when selecting tiles in control settings, you can also specify non-square ratios  \n    in which case it will use context-aware image resize to maintain overall composition  \n    *note*: available tiling options can be set in settings -> control  \n- **IP-Adapter**  \n  - FLUX.1 [XLabs](https://huggingface.co/XLabs-AI/flux-ip-adapter-v2) v1 and v2 IP-adapter  \n  - FLUX.1 secondary guidance, enabled using *Attention guidance* in advanced menu  \n  - SD 3.5 [InstantX](https://huggingface.co/InstantX/SD3.5-Large-IP-Adapter) IP-adapter  \n- [Flux Tools](https://blackforestlabs.ai/flux-1-tools/)  \n  **Redux** is actually a tool, **Fill** is inpaint/outpaint optimized version of *Flux-dev*  \n  **Canny** & **Depth** are optimized versions of *Flux-dev* for their respective tasks: they are *not* ControlNets that work on top of a model  \n  to use, go to image or control interface and select *Flux Tools* in scripts  \n  all models are auto-downloaded on first use  \n  *note*: All models are [gated](https://github.com/vladmandic/automatic/wiki/Gated) and require acceptance of terms and conditions via web page  \n  *recommended*: Enable on-the-fly [quantization](https://github.com/vladmandic/automatic/wiki/Quantization) or [compression](https://github.com/vladmandic/automatic/wiki/NNCF-Compression) to reduce resource usage  \n  *todo*: support for Canny/Depth LoRAs  \n  - [Redux](https://huggingface.co/black-forest-labs/FLUX.1-Redux-dev): ~0.1GB  \n    works together with existing model and basically uses input image to analyze it and use that instead of prompt  \n    *optional* can use prompt to combine guidance with input image  \n    *recommended*: low denoise strength levels result in more variety  \n  - [Fill](https://huggingface.co/black-forest-labs/FLUX.1-Fill-dev): ~23.8GB, replaces currently loaded model  \n    *note*: can be used in inpaint/outpaint mode only  \n  - [Canny](https://huggingface.co/black-forest-labs/FLUX.1-Canny-dev): ~23.8GB, replaces currently loaded model  \n    *recommended*: guidance scale 30  \n  - [Depth](https://huggingface.co/black-forest-labs/FLUX.1-Depth-dev): ~23.8GB, replaces currently loaded model  \n    *recommended*: guidance scale 10  \n- [Flux ControlNet LoRA](https://huggingface.co/black-forest-labs/FLUX.1-Canny-dev-lora)  \n  alternative to standard ControlNets, FLUX.1 also allows LoRA to help guide the generation process  \n  both **Depth** and **Canny** LoRAs are available in standard control menus  \n- [StabilityAI SD35 ControlNets](https://huggingface.co/stabilityai/stable-diffusion-3.5-controlnets)\n  - In addition to previously released `InstantX` and `Alimama`, we now have *official* ones from StabilityAI  \n- [Style Aligned Image Generation](https://style-aligned-gen.github.io/)  \n  enable in scripts, compatible with sd-xl  \n  enter multiple prompts in prompt field separated by new line  \n  style-aligned applies selected attention layers uniformly to all images to achive consistency  \n  can be used with or without input image in which case first prompt is used to establish baseline  \n  *note:* all prompts are processes as a single batch, so vram is limiting factor  \n- [FreeScale](https://github.com/ali-vilab/FreeScale)  \n  enable in scripts, compatible with sd-xl for text and img2img  \n  run iterative generation of images at different scales to achieve better results  \n  can render 4k sdxl images  \n  *note*: disable live preview to avoid memory issues when generating large images  \n\n### Video models\n\n- [Lightricks LTX-Video](https://huggingface.co/Lightricks/LTX-Video)  \n  model size: 27.75gb  \n  support for 0.9.0, 0.9.1 and custom safetensor-based models with full quantization and offloading support  \n  support for text-to-video and image-to-video, to use, select in *scripts -> ltx-video*  \n  *refrence values*: steps 50, width 704, height 512, frames 161, guidance scale 3.0  \n- [Hunyuan Video](https://huggingface.co/tencent/HunyuanVideo)  \n  model size: 40.92gb  \n  support for text-to-video, to use, select in *scripts -> hunyuan video*  \n  basic support only  \n  *refrence values*: steps 50, width 1280, height 720, frames 129, guidance scale 6.0  \n- [Genmo Mochi.1 Preview](https://huggingface.co/genmo/mochi-1-preview)  \n  support for text-to-video, to use, select in *scripts -> mochi.1 video*  \n  basic support only  \n  *refrence values*: steps 64, width 848, height 480, frames 19, guidance scale 4.5  \n\n*Notes*:\n- all video models are very large and resource intensive!  \n  any use on gpus below 16gb and systems below 48gb ram is experimental at best  \n- sdnext support for video models is relatively basic with further optimizations pending community interest  \n  any future optimizations would likely have to go into partial loading and excecution instead of offloading inactive parts of the model  \n- new video models use generic llms for prompting and due to that requires very long and descriptive prompt  \n- you may need to enable sequential offload for maximum gpu memory savings  \n- optionally enable pre-quantization using bnb for additional memory savings  \n- reduce number of frames and/or resolution to reduce memory usage  \n\n### UI and workflow improvements\n\n- **Docs**:\n  - New documentation site! <https://vladmandic.github.io/sdnext-docs/>\n  - Additional Wiki content: Styles, Wildcards, etc.\n- **LoRA** handler rewrite:  \n  - LoRA weights are no longer calculated on-the-fly during model execution, but are pre-calculated at the start  \n    this results in perceived overhead on generate startup, but results in overall faster execution as LoRA does not need to be processed on each step  \n    thanks @AI-Casanova  \n  - LoRA weights can be applied/unapplied as on each generate or they can store weights backups for later use  \n    this setting has large performance and resource implications, see [Offload](https://github.com/vladmandic/automatic/wiki/Offload) wiki for details  \n  - LoRA name in prompt can now also be an absolute path to a LoRA file, even if LoRA is not indexed  \n    example: `<lora:/test/folder/my-lora.safetensors:1.0>`\n  - LoRA name in prompt can now also be path to a LoRA file op `huggingface`  \n    example: `<lora:/huggingface.co/vendor/repo/my-lora.safetensors:1.0>`\n- **Model loader** improvements:  \n  - detect model components on model load fail  \n  - allow passing absolute path to model loader  \n  - Flux, SD35: force unload model  \n  - Flux: apply `bnb` quant when loading *unet/transformer*  \n  - Flux: all-in-one safetensors  \n    example: <https://civitai.com/models/646328?modelVersionId=1040235>  \n  - Flux: do not recast quants  \n- **Memory** improvements:  \n  - faster and more compatible *balanced offload* mode  \n  - balanced offload: units are now in percentage instead of bytes  \n  - balanced offload: add both high and low watermark, defaults as below  \n    `0.25` for low-watermark: skip offload if memory usage is below 25%  \n    `0.70` high-watermark: must offload if memory usage is above 70%  \n  - balanced offload will attempt to run offload as non-blocking and force gc at the end  \n  - change-in-behavior:  \n    low-end systems, triggered by either `lowvrwam` or by detection of <=4GB will use *sequential offload*  \n    all other systems use *balanced offload* by default (can be changed in settings)  \n    previous behavior was to use *model offload* on systems with <=8GB and `medvram` and no offload by default  \n  - VAE upcase is now disabled by default on all systems  \n    if you have issues with image decode, you'll need to enable it manually  \n- **UI**:  \n  - improved stats on generate completion  \n  - improved live preview display and performance  \n  - improved accordion behavior  \n  - auto-size networks height for sidebar  \n  - control: hide preview column by default\n  - control: optionn to hide input column\n  - control: add stats\n  - settings: reorganized and simplified  \n  - browser -> server logging framework  \n  - add addtional themes: `black-reimagined`, thanks @Artheriax  \n- **Batch**\n  - image batch processing will use caption files if they exist instead of default prompt  \n\n### Updates\n\n- **Quantization**\n  - Add `TorchAO` *pre* (during load) and *post* (during execution) quantization  \n    **torchao** supports 4 different int-based and 3 float-based quantization schemes  \n  This is in addition to existing support for:  \n  - `BitsAndBytes` with 3 float-based quantization schemes  \n  - `Optimium.Quanto` with 3 int-based and 2 float-based quantizations schemes  \n  - `GGUF` with pre-quantized weights  \n  - Switch `GGUF` loader from custom to diffuser native\n- **IPEX**: update to IPEX 2.5.10+xpu  \n- **OpenVINO**:  \n  - update to 2024.6.0  \n  - disable model caching by default  \n- **Sampler** improvements  \n  - UniPC, DEIS, SA, DPM-Multistep: allow FlowMatch sigma method and prediction type  \n  - Euler FlowMatch: add sigma methods (*karras/exponential/betas*)  \n  - Euler FlowMatch: allow using timestep presets to set sigmas  \n  - DPM FlowMatch: update all and add sigma methods  \n  - BDIA-DDIM: *experimental* new scheduler  \n  - UFOGen: *experimental* new scheduler  \n\n### Fixes  \n\n- add `SD_NO_CACHE=true` env variable to disable file/folder caching  \n- add settings -> networks -> embeddings -> enable/disable\n- update `diffusers`  \n- fix README links  \n- fix sdxl controlnet single-file loader  \n- relax settings validator  \n- improve js progress calls resiliency  \n- fix text-to-video pipeline  \n- avoid live-preview if vae-decode is running  \n- allow xyz-grid with multi-axis s&r  \n- fix xyz-grid with lora  \n- fix api script callbacks  \n- fix gpu memory monitoring  \n- simplify img2img/inpaint/sketch canvas handling  \n- fix prompt caching  \n- fix xyz grid skip final pass  \n- fix sd upscale script  \n- fix cogvideox-i2v  \n- lora auto-apply tags remove duplicates  \n- control load model on-demand if not already loaded  \n- taesd limit render to 2024px  \n- taesd downscale preview to 1024px max: configurable in settings -> live preview  \n- uninstall conflicting `wandb` package  \n- dont skip diffusers version check if quick is specified  \n- notify on torch install  \n- detect pipeline fro diffusers folder-style model  \n- do not recast flux quants  \n- fix xyz-grid with lora none  \n- fix svd image2video  \n- fix gallery display during generate  \n- fix wildcards replacement to be unique  \n- fix animatediff-xl  \n- fix pag with batch count  \n\n## Update for 2024-11-21\n\n### Highlights for 2024-11-21\n\nThree weeks is a long time in Generative AI world - and we're back with ~140 commits worth of updates!\n\n*What's New?*\n\nFirst, a massive update to docs including new UI top-level **info** tab with access to [changelog](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md) and [wiki](https://github.com/vladmandic/automatic/wiki), many updates and new articles AND full **built-in documentation search** capabilities\n\n#### New integrations\n\n- [PuLID](https://github.com/ToTheBeginning/PuLID): Pure and Lightning ID Customization via Contrastive Alignment\n- [InstantX InstantIR](https://github.com/instantX-research/InstantIR): Blind Image Restoration with Instant Generative Reference\n- [nVidia Labs ConsiStory](https://github.com/NVlabs/consistory): Consistent Image Generation\n- [MiaoshouAI PromptGen v2.0](https://huggingface.co/MiaoshouAI/Florence-2-base-PromptGen-v2.0) VQA captioning\n\n#### Workflow Improvements\n\n- Native **Docker** support\n- **SD3x & Flux.1**: more ControlNets, all-in-one-safetensors, DPM samplers, skip-layer-guidance, etc.\n- **XYZ grid**: benchmarking, video creation, etc.\n- Enhanced **prompt** parsing\n- **UI** improvements\n- **Installer** self-healing `venv`\n\nAnd quite a few more improvements and fixes since the last update!\nFor full list and details see changelog...\n\n[README](https://github.com/vladmandic/automatic/blob/master/README.md) | [CHANGELOG](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md) | [WiKi](https://github.com/vladmandic/automatic/wiki) | [Discord](https://discord.com/invite/sd-next-federal-batch-inspectors-1101998836328697867)\n\n### Details for 2024-11-21\n\n- Docs:  \n  - new top-level **info** tab with access to [changelog](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md) and [wiki](https://github.com/vladmandic/automatic/wiki)  \n  - UI built-in [changelog](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md) search  \n    since changelog is the best up-to-date source of info  \n    go to info -> changelog and search/highligh/navigate directly in UI!  \n  - UI built-in [wiki](https://github.com/vladmandic/automatic/wiki)  \n    go to info -> wiki and search wiki pages directly in UI!  \n  - major [Wiki](https://github.com/vladmandic/automatic/wiki) and [Home](https://github.com/vladmandic/automatic) updates  \n  - updated API swagger docs for at `/docs`  \n- Integrations:  \n  - [PuLID](https://github.com/ToTheBeginning/PuLID): Pure and Lightning ID Customization via Contrastive Alignment  \n    - advanced method of face id transfer with better quality as well as control over identity and appearance  \n      try it out, likely the best quality available for sdxl models  \n    - select in *scripts -> pulid*  \n    - compatible with *sdxl* for text-to-image, image-to-image, inpaint, refine, detailer workflows  \n    - can be used in xyz grid  \n    - *note*: this module contains several advanced features on top of original implementation  \n  - [InstantIR](https://github.com/instantX-research/InstantIR): Blind Image Restoration with Instant Generative Reference  \n    - alternative to traditional `img2img` with more control over restoration process  \n    - select in *image -> scripts -> instantir*  \n    - compatible with *sdxl*  \n    - *note*: after used once it cannot be unloaded without reloading base model  \n  - [ConsiStory](https://github.com/NVlabs/consistory): Consistent Image Generation  \n    - create consistent anchor image and then generate images that are consistent with anchor  \n    - select in *scripts -> consistory*  \n    - compatible with *sdxl*  \n    - *note*: very resource intensive and not compatible with model offloading  \n    - *note*: changing default parameters can lead to unexpected results and/or failures  \n    - *note*: after used once it cannot be unloaded without reloading base model  \n  - [MiaoshouAI PromptGen v2.0](https://huggingface.co/MiaoshouAI/Florence-2-base-PromptGen-v2.0) base and large:  \n    - *in process -> visual query*  \n    - caption modes:  \n      `<GENERATE_TAGS>` generate tags  \n      `<CAPTION>`, `<DETAILED_CAPTION>`, `<MORE_DETAILED_CAPTION>` caption image  \n      `<ANALYZE>` image composition  \n      `<MIXED_CAPTION>`, `<MIXED_CAPTION_PLUS>` detailed caption and tags with optional analyze  \n\n- Model improvements:  \n  - SD35: **ControlNets**:  \n    - *InstantX Canny, Pose, Depth, Tile*  \n    - *Alimama Inpainting, SoftEdge*  \n    - *note*: that just like with FLUX.1 or any large model, ControlNet are also large and can push your system over the limit  \n      e.g. SD3 controlnets vary from 1GB to over 4GB in size  \n  - SD35: **All-in-one** safetensors  \n    - *examples*: [large](https://civitai.com/models/882666/sd35-large-google-flan?modelVersionId=1003031), [medium](https://civitai.com/models/900327)  \n    - *note*: enable *bnb* on-the-fly quantization for even bigger gains  \n  - SD35: **skip-layer-guidance**  \n    - enable in *scripts -> slg*\n    - allows for granular strength/start/stop control of guidance for each layer of the model  \n  - [NoobAI XL ControlNets](https://huggingface.co/collections/Eugeoter/controlnext-673161eae023f413e0432799), thanks @lbeltrame\n\n- Workflow improvements:  \n  - Native Docker support with pre-defined [Dockerfile](https://github.com/vladmandic/automatic/blob/dev/Dockerfile)\n  - Samplers:\n    - **FlowMatch samplers**:\n      - Applicable to SD 3.x and Flux.1 models\n      - Complete family: *DPM2, DPM2a, DPM2++, DPM2++ 2M, DPM2++ 2S, DPM2++ SDE, DPM2++ 2M SDE, DPM2++ 3M SDE*\n    - **Beta and Exponential** sigma method enabled for all samplers\n  - **XYZ grid**:  \n    - optional time benchmark info to individual images  \n    - optional add params to individual images  \n    - create video from generated grid images  \n      supports all standard video types and interpolation  \n  - **Prompt parser**:  \n    - support for prompt scheduling  \n    - renamed parser options: `native`, `xhinker`, `compel`, `a1111`, `fixed`  \n    - parser options are available in xyz grid  \n    - improved caching  \n  - **UI**:  \n    - better gallery and networks sidebar sizing  \n    - add additional [hotkeys](https://github.com/vladmandic/automatic/wiki/Hotkeys)  \n    - add show networks on startup setting  \n    - better mapping of networks previews  \n    - optimize networks display load  \n  - Image2image:  \n    - integrated refine/upscale/hires workflow  \n- Other:  \n  - **Installer**:  \n    - Log `venv` and package search paths  \n    - Auto-remove invalid packages from `venv/site-packages`  \n      e.g. packages starting with `~` which are left-over due to windows access violation  \n    - Requirements: update  \n  - Scripts:  \n    - More verbose descriptions for all scripts  \n  - Model loader:  \n    - Report modules included in safetensors when attempting to load a model  \n  - CLI:  \n    - refactor command line params  \n      run `webui.sh`/`webui.bat` with `--help` to see all options  \n    - added `cli/model-metadata.py` to display metadata in any safetensors file  \n    - added `cli/model-keys.py` to quicky display content of any safetensors file  \n  - Internal:  \n    - Auto pipeline switching coveres wrapper classes and nested pipelines  \n    - Full settings validation on load of `config.json`  \n    - Refactor of all params in main processing classes  \n    - Improve API scripts usage resiliency  \n\n- Fixes:  \n  - custom watermark add alphablending  \n  - fix xyz grid include images  \n  - fix xyz skip on interrupted  \n  - fix vqa models ignoring hfcache folder setting  \n  - fix network height in standard vs modern ui  \n  - fix k-diff enum on startup  \n  - fix text2video scripts  \n  - multiple xyz-grid fixes  \n  - dont uninstall flash-attn  \n  - ui css fixes  \n\n## Update for 2024-11-01\n\nSmaller release just 3 days after the last one, but with some important fixes and improvements.  \nThis release can be considered an LTS release before we kick off the next round of major updates.  \n\n- Other:\n  - Repo: move screenshots to GH pages\n  - Update requirements\n- Fixes:\n  - detailer min/max size as fractions of image size  \n  - ipadapter load on-demand  \n  - ipadapter face use correct yolo model  \n  - list diffusers remove duplicates  \n  - fix legacy extensions access to shared objects  \n  - fix diffusers load from folder  \n  - fix lora enum logging on windows  \n  - fix xyz grid with batch count  \n  - move dowwloads of some auxillary models to hfcache instead of models folder  \n\n## Update for 2024-10-29\n\n### Highlights for 2024-10-29\n\n- Support for **all SD3.x variants**  \n  *SD3.0-Medium, SD3.5-Medium, SD3.5-Large, SD3.0-Large-Turbo*\n- Allow quantization using `bitsandbytes` on-the-fly during models load\n  Load any variant of SD3.x or FLUX.1 and apply quantization during load without the need for pre-quantized models  \n- Allow for custom model URL in standard model selector  \n  Can be used to specify any model from *HuggingFace* or *CivitAI*  \n- Full support for `torch==2.5.1`\n- New wiki articles: [Gated Access](https://github.com/vladmandic/automatic/wiki/Gated), [Quantization](https://github.com/vladmandic/automatic/wiki/Quantization), [Offloading](https://github.com/vladmandic/automatic/wiki/Offload)  \n\nPlus tons of smaller improvements and cumulative fixes reported since last release  \n\n[README](https://github.com/vladmandic/automatic/blob/master/README.md) | [CHANGELOG](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md) | [WiKi](https://github.com/vladmandic/automatic/wiki) | [Discord](https://discord.com/invite/sd-next-federal-batch-inspectors-1101998836328697867)\n\n### Details for 2024-10-29\n\n- model selector:\n  - change-in-behavior\n  - when typing, it will auto-load model as soon as exactly one match is found\n  - allows entering model that are not on the list which triggers huggingface search  \n    e.g. `stabilityai/stable-diffusion-xl-base-1.0`  \n    partial search hits are displayed in the log  \n    if exact model is found, it will be auto-downloaded and loaded  \n  - allows entering civitai direct download link which triggers model download  \n    e.g. `https://civitai.com/api/download/models/72396?type=Model&format=SafeTensor&size=full&fp=fp16`  \n  - auto-search-and-download can be disabled in settings -> models -> auto-download  \n    this also disables reference models as they are auto-downloaded on first use as well  \n- sd3 enhancements:  \n  - allow on-the-fly bnb quantization during load\n  - report when loading incomplete model  \n  - handle missing model components during load  \n  - handle component preloading  \n  - native lora handler  \n  - support for all sd35 variants: *medium/large/large-turbo*\n  - gguf transformer loader (prototype)  \n- flux.1 enhancements:  \n  - allow on-the-fly bnb quantization during load\n- samplers:\n  - support for original k-diffusion samplers  \n    select via *scripts -> k-diffusion -> sampler*  \n- ipadapter:\n  - list available adapters based on loaded model type\n  - add adapter `ostris consistency` for sd15/sdxl\n- detailer:\n  - add `[prompt]` to refine/defailer prompts as placeholder referencing original prompt  \n- torch\n  - use `torch==2.5.1` by default on supported platforms\n  - CUDA set device memory limit\n    in *settings -> compute settings -> torch memory limit*  \n    default=0 meaning no limit, if set torch will limit memory usage to specified fraction  \n    *note*: this is not a hard limit, torch will try to stay under this value  \n- compute backends:\n  - OpenVINO: add accuracy option  \n  - ZLUDA: guess GPU arch  \n- major model load refactor\n- wiki: new articles\n  - [Gated Access Wiki](https://github.com/vladmandic/automatic/wiki/Gated)  \n  - [Quantization Wiki](https://github.com/vladmandic/automatic/wiki/Quantization)  \n  - [Offloading Wiki](https://github.com/vladmandic/automatic/wiki/Offload)  \n\nfixes:  \n- fix send-to-control  \n- fix k-diffusion  \n- fix sd3 img2img and hires  \n- fix ipadapter supported model detection  \n- fix t2iadapter auto-download\n- fix omnigen dynamic attention  \n- handle a1111 prompt scheduling  \n- handle omnigen image placeholder in prompt  \n\n## Update for 2024-10-23\n\n### Highlights for 2024-10-23\n\nA month later and with nearly 300 commits, here is the latest [SD.Next](https://github.com/vladmandic/automatic) update!  \n\n#### Workflow highlights for 2024-10-23\n\n- **Reprocess**: New workflow options that allow you to generate at lower quality and then  \n  reprocess at higher quality for select images only or generate without hires/refine and then reprocess with hires/refine  \n  and you can pick any previous latent from auto-captured history!  \n- **Detailer** Fully built-in detailer workflow with support for all standard models  \n- Built-in **model analyzer**  \n  See all details of your currently loaded model, including components, parameter count, layer count, etc.  \n- **Extract LoRA**: load any LoRA(s) and play with generate as usual  \n  and once you like the results simply extract combined LoRA for future use!  \n\n#### New models for 2024-10-23\n\n- New fine-tuned [CLiP-ViT-L](https://huggingface.co/zer0int/CLIP-GmP-ViT-L-14) 1st stage **text-encoders** used by most models (SD15/SDXL/SD3/Flux/etc.) brings additional details to your images  \n- New models:  \n  [Stable Diffusion 3.5 Large](https://huggingface.co/stabilityai/stable-diffusion-3.5-large)  \n  [OmniGen](https://arxiv.org/pdf/2409.11340)  \n  [CogView 3 Plus](https://huggingface.co/THUDM/CogView3-Plus-3B)  \n  [Meissonic](https://github.com/viiika/Meissonic)  \n- Additional integration:  \n  [Ctrl+X](https://github.com/genforce/ctrl-x) which allows for control of **structure and appearance** without the need for extra models,  \n  [APG: Adaptive Projected Guidance](https://arxiv.org/pdf/2410.02416) for optimal **guidance** control,  \n  [LinFusion](https://github.com/Huage001/LinFusion) for on-the-fly **distillation** of any sd15/sdxl model  \n\n#### What else for 2024-10-23\n\n- Tons of work on **dynamic quantization** that can be applied *on-the-fly* during model load to any model type (*you do not need to use pre-quantized models*)  \n  Supported quantization engines include `BitsAndBytes`, `TorchAO`, `Optimum.quanto`, `NNCF` compression, and more...  \n- Auto-detection of best available **device/dtype** settings for your platform and GPU reduces neeed for manual configuration  \n  *Note*: This is a breaking change to default settings and its recommended to check your preferred settings after upgrade  \n- Full rewrite of **sampler options**, not far more streamlined with tons of new options to tweak scheduler behavior  \n- Improved **LoRA** detection and handling for all supported models  \n- Several of [Flux.1](https://huggingface.co/black-forest-labs/FLUX.1-dev) optimizations and new quantization types  \n\nOh, and we've compiled a full table with list of top-30 (*how many have you tried?*) popular text-to-image generative models,  \ntheir respective parameters and architecture overview: [Models Overview](https://github.com/vladmandic/automatic/wiki/Models)  \n\nAnd there are also other goodies like multiple *XYZ grid* improvements, additional *Flux ControlNets*, additional *Interrogate models*, better *LoRA tags* support, and more...  \n[README](https://github.com/vladmandic/automatic/blob/master/README.md) | [CHANGELOG](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md) | [WiKi](https://github.com/vladmandic/automatic/wiki) | [Discord](https://discord.com/invite/sd-next-federal-batch-inspectors-1101998836328697867)\n\n### Details for 2024-10-23\n\n- **reprocess**\n  - new top-level button: reprocess latent from your history of generated image(s)  \n  - generate using full-quality:off and then reprocess using *full quality decode*  \n  - generate without hires/refine and then *reprocess with hires/refine*  \n    *note*: you can change hires/refine settings and run-reprocess again!  \n  - reprocess using *detailer*  \n\n- **history**\n  - by default, **reprocess** will pick last latent, but you can select any latent from history!  \n  - history is under *networks -> history*  \n    each history item includes info on operations that were used, timestamp and metadata  \n  - any latent operation during workflow automatically adds one or more items to history  \n    e.g. generate base + upscale + hires + detailer  \n  - history size: *settings -> execution -> latent history size*  \n    memory usage is ~130kb of ram for 1mp image  \n  - *note* list of latents in history is not auto-refreshed, use refresh button  \n\n- **model analyzer**  \n  - see all details of your currently loaded model, including components, parameter count, layer count, etc.  \n  - in models -> current -> analyze  \n\n- **text encoder**:  \n  - allow loading different custom text encoders: *clip-vit-l, clip-vit-g, t5*  \n    will automatically find appropriate encoder in the loaded model and replace it with loaded text encoder  \n    download text encoders into folder set in settings -> system paths -> text encoders  \n    default `models/Text-encoder` folder is used if no custom path is set  \n    finetuned *clip-vit-l* models: [Detailed, Smooth](https://huggingface.co/zer0int/CLIP-GmP-ViT-L-14), [LongCLIP](https://huggingface.co/zer0int/LongCLIP-GmP-ViT-L-14)  \n    reference *clip-vit-l* and *clip-vit-g* models: [OpenCLIP-Laion2b](https://huggingface.co/collections/laion/openclip-laion-2b-64fcade42d20ced4e9389b30)  \n    *note* sd/sdxl contain heavily distilled versions of reference models, so switching to reference model produces vastly different results  \n  - xyz grid support for text encoder  \n  - full prompt parser now correctly works with different prompts in batch  \n\n- **detailer**:  \n  - replaced *face-hires* with *detailer* which can run any number of standard detailing models  \n  - includes *face/hand/person/eyes* predefined detailer models plus support for manually downloaded models  \n    set path in *settings -> system paths -> yolo*  \n  - select one or more models in detailer menu and thats it!  \n  - to avoid duplication of ui elements, detailer will use following values from **refiner**:  \n    *sampler, steps, prompts*  \n  - when using multiple detailers and prompt is *multi-line*, each line is applied to corresponding detailer  \n  - adjustable settings:  \n    *strength, max detected objects, edge padding, edge blur, min detection confidence, max detection overlap, min and max size of detected object*  \n  - image metadata includes info on used detailer models  \n  - *note* detailer defaults are not save in ui settings, they are saved in server settings  \n    to apply your defaults, set ui values and apply via *system -> settings -> apply settings*  \n  - if using models trained on multiple classes, you can specify which classes you want to detail  \n    e.g. original yolo detection model is trained on coco dataset with 80 predefined classes  \n    if you leave field blank, it will use any class found in the model  \n    you can see classes defined in the model while model itself is loaded for the first time  \n\n- **extract lora**: extract combined lora from current memory state, thanks @AI-Casanova  \n  load any LoRA(s) and play with generate as usual and once you like the results simply extract combined LoRA for future use!  \n  in *models -> extract lora*  \n\n- **sampler options**: full rewrite  \n\n  *sampler notes*:  \n  - pick a sampler and then pick values, all values have \"default\" as a choice to make it simpler  \n  - a lot of options are new, some are old but moved around  \n    e.g. karras checkbox is replaced with a choice of different sigma methods  \n  - not every combination of settings is valid  \n  - some settings are specific to model types  \n    e.g. sd15/sdxl typically use epsilon prediction  \n  - quite a few well-known schedulers are just variations of settings, for example:  \n    - *sampler sgm* is sampler with trailing spacing and sample prediction type  \n    - *dpm 2m* or *3m* are *dpm 1s* with orders of 2 or 3  \n    - *dpm 2m sde* is *dpm 2m* with *sde* as solver  \n    - *sampler simple* is sampler with trailing spacing and linear beta schedule\n  - xyz grid support for sampler options  \n  - metadata updates for sampler options  \n  - modernui updates for sampler options  \n  - *note* sampler options defaults are not saved in ui settings, they are saved in server settings  \n    to apply your defaults, set ui values and apply via *system -> settings -> apply settings*  \n\n  *sampler options*:  \n  - sigma method: *karas, beta, exponential*  \n  - timesteps spacing: *linspace, leading, trailing*  \n  - beta schedule: *linear, scaled, cosine*  \n  - prediction type: *epsilon, sample, v-prediction*  \n  - timesteps presents: *none, ays-sd15, ays-sdxl*  \n  - timesteps override: <custom>  \n  - sampler order: *0=default, 1-5*  \n  - options: *dynamic, low order, rescale*  \n\n- [Ctrl+X](https://github.com/genforce/ctrl-x):\n  - control **structure** (*similar to controlnet*) and **appearance** (*similar to ipadapter*)  \n    without the need for extra models, all via code feed-forwards!\n  - can run in structure-only or appearance-only or both modes\n  - when providing structure and appearance input images, its best to provide a short prompts describing them  \n  - structure image can be *almost anything*: *actual photo, openpose-style stick man, 3d render, sketch, depth-map, etc.*  \n    just describe what it is in a structure prompt so it can be de-structured and correctly applied  \n  - supports sdxl in both txt2img and img2img, simply select from scripts\n\n- [APG: Adaptive Projected Guidance](https://arxiv.org/pdf/2410.02416)\n  - latest algo to provide better guidance for image generation, can be used instead of existing guidance rescale and/or PAG  \n  - in addtion to stronger guidance and reduction of burn at high guidance values, it can also increase image details  \n  - compatible with *sd15/sdxl/sc*  \n  - select in scripts -> apg  \n  - for low    cfg scale, use positive momentum: e.g. cfg=2 => momentum=0.6\n  - for normal cfg scale, use negative momentum: e.g. cfg=6 => momentum=-0.3\n  - for high   cfg scale, use neutral  momentum: e.g. cfg=10 => momentum=0.0\n\n- [LinFusion](https://github.com/Huage001/LinFusion)  \n  - apply liner distillation to during load to any sd15/sdxl model  \n  - can reduce vram use for high resolutions and increase performance\n  - *note*: use lower cfg scales as typical for distilled models  \n\n- [Flux](https://huggingface.co/black-forest-labs/FLUX.1-dev)  \n  - see [wiki](https://github.com/vladmandic/automatic/wiki/FLUX#quantization) for details on `gguf`  \n  - support for `gguf` binary format for loading unet/transformer component  \n  - support for `gguf` binary format for loading t5/text-encoder component: requires transformers pr  \n  - additional controlnets: [JasperAI](https://huggingface.co/collections/jasperai/flux1-dev-controlnets-66f27f9459d760dcafa32e08) **Depth**, **Upscaler**, **Surface**, thanks @EnragedAntelope  \n  - additional controlnets: [XLabs-AI](https://huggingface.co/XLabs-AI/flux-controlnet-hed-diffusers) **Canny**, **Depth**, **HED**  \n  - mark specific unet as unavailable if load failed  \n  - fix diffusers local model name parsing  \n  - full prompt parser will auto-select `xhinker` for flux models  \n  - controlnet support for img2img and inpaint (in addition to previous txt2img controlnet)  \n  - allow separate vae load  \n  - support for both kohya and onetrainer loras in native load mode for fp16/nf4/fp4, thanks @AI-Casanova  \n  - support for differential diffusion  \n  - added native load mode for qint8/qint4 models\n  - avoid unet load if unchanged  \n\n- [OmniGen](https://arxiv.org/pdf/2409.11340)  \n  - Radical new model with pure LLM architecture based on Phi-3  \n  - Select from *networks -> models -> reference*  \n  - Can be used for text-to-image and image-to-image  \n  - Image-to-image is *very* different, you need to specify in prompt what do you want to do  \n    and add `|image|` placeholder where input image is used!  \n    examples: `in |image| remove glasses from face`, `using depth map from |image|, create new image of a cute robot`  \n  - Params used: prompt, steps, guidance scale for prompt guidance, refine guidance scale for image guidance  \n    Recommended: guidance=3.0, refine-guidance=1.6  \n\n- [Stable Diffusion 3.5 Large](https://huggingface.co/stabilityai/stable-diffusion-3.5-large)  \n  - New/improved variant of Stable Diffusion 3  \n  - Select from *networks -> models -> reference*  \n  - Available in standard and turbo variations  \n  - *Note*: Access to to both variations of SD3.5 model is gated, you must accept the conditions and use HF login  \n\n- [CogView 3 Plus](https://huggingface.co/THUDM/CogView3-Plus-3B)\n  - Select from *networks -> models -> reference*  \n  - resolution width and height can be from 512px to 2048px and must be divisible by 32  \n  - precision: bf16 or fp32  \n    fp16 is not supported due to internal model overflows  \n\n- [Meissonic](https://github.com/viiika/Meissonic)  \n  - Select from *networks -> models -> reference*  \n  - Experimental as upstream implemenation code is unstable\n  - Must set scheduler:default, generator:unset\n\n- [SageAttention](https://github.com/thu-ml/SageAttention)  \n  - new 8-bit attention implementation on top of SDP that can provide acceleration for some models, thanks @Disty0  \n  - enable in *settings -> compute settings -> sdp options -> sage attention*\n  - compatible with DiT-based models: e.g. *Flux.1, AuraFlow, CogVideoX*  \n  - not compatible with UNet-based models, e.g. *SD15, SDXL*  \n\n- **gpu**\n  - previously `cuda_dtype` in settings defaulted to `fp16` if available  \n  - now `cuda_type` defaults to **Auto** which executes `bf16` and `fp16` tests on startup and selects best available dtype  \n    if you have specific requirements, you can still set to fp32/fp16/bf16 as desired  \n    if you have gpu that incorrectly identifies bf16 or fp16 availablity, let us know so we can improve the auto-detection  \n  - support for torch **expandable segments**  \n    enable in *settings -> compute -> torch expandable segments*  \n    can provide significant memory savings for some models  \n    not enabled by default as its only supported on latest versions of torch and some gpus  \n\n- **xyz grid** full refactor  \n  - multi-mode: *selectable-script* and *alwayson-script*  \n  - allow usage combined with other scripts  \n  - allow **unet** selection  \n  - allow passing **model args** directly:  \n    allowed params will be checked against models call signature  \n    example: `width=768; height=512, width=512; height=768`  \n  - allow passing **processing args** directly:  \n    params are set directly on main processing object and can be known or new params  \n    example: `steps=10, steps=20; test=unknown`  \n  - enable working with different resolutions  \n    now you can adjust width/height in the grid just as any other param  \n  - renamed options to include section name and adjusted cost of each option  \n  - added additional metadata  \n\n- **interrogate**  \n  - add additional blip models: *blip-base, blip-large, blip-t5-xl, blip-t5-xxl, opt-2.7b, opt-6.7b*  \n  - change default params for better memory utilization  \n  - lock commits for miaoshouAI-promptgen  \n  - add optional advanced params  \n  - update logging  \n\n- **lora** auto-apply tags to prompt  \n  - controlled via *settings -> networks -> lora_apply_tags*  \n    *0:disable, -1:all-tags, n:top-n-tags*  \n  - uses tags from both model embedded data and civitai downloaded data  \n  - if lora contains no tags, lora name itself will be used as a tag  \n  - if prompt contains `_tags_` it will be used as placeholder for replacement, otherwise tags will be appended  \n  - used tags are also logged and registered in image metadata  \n  - loras are no longer filtered per detected type vs loaded model type as its unreliable  \n  - loras display in networks now shows possible version in top-left corner  \n  - correct using of `extra_networks_default_multiplier` if not scale is specified  \n  - improve lora base model detection  \n  - improve lora error handling and logging  \n  - setting `lora_load_gpu` to load LoRA directly to GPU  \n    *default*: true unless lovwram  \n\n- **quantization**  \n  - new top level settings group as we have quite a few quantization options now!  \n    configure in *settings -> quantization*  \n  - in addition to existing `optimum.quanto` and `nncf`, we now have `bitsandbytes` and `torchao`  \n  - **bitsandbytes**: fp8, fp4, nf4  \n    - quantization can be applied on-the-fly during model load  \n    - currently supports `transformers` and `t5` in **sd3** and **flux**  \n  - **torchao**: int8, int4, fp8, fp4, fpx  \n    - configure in settings -> quantization  \n    - can be applied to any model on-the-fly during load  \n\n- **huggingface**:  \n  - force logout/login on token change  \n  - unified handling of cache folder: set via `HF_HUB` or `HF_HUB_CACHE` or via settings -> system paths  \n\n- **cogvideox**:  \n  - add support for *image2video* (in addition to previous *text2video* and *video2video*)  \n  - *note*: *image2video* requires separate 5b model variant  \n\n- **torch**  \n  - due to numerous issues with torch 2.5.0 which was just released as stable, we are sticking with 2.4.1 for now  \n\n- **backend=original** is now marked as in maintenance-only mode  \n- **python 3.12** improved compatibility, automatically handle `setuptools`  \n- **control**\n  - persist/reapply units current state on server restart  \n  - better handle size before/after metadata  \n- **video** add option `gradio_skip_video` to avoid gradio issues with displaying generated videos  \n- add support for manually downloaded diffusers models from huggingface  \n- **ui**  \n  - move checkboxes `full quality, tiling, hidiffusion` to advanced section  \n  - hide token counter until tokens are known  \n  - minor ui optimizations  \n  - fix update infotext on image select  \n  - fix imageviewer exif parser  \n  - selectable info view in image viewer, thanks @ZeldaMaster501  \n  - setting to enable browser autolaunch, thanks @brknsoul  \n- **free-u** check if device/dtype are fft compatible and cast as necessary  \n- **rocm**\n  - additional gpu detection and auto-config code, thanks @lshqqytiger  \n  - experimental triton backend for flash attention, thanks @lshqqytiger  \n  - update to rocm 6.2, thanks @Disty0\n- **directml**  \n  - update `torch` to 2.4.1, thanks @lshqqytiger  \n- **extensions**  \n  - add mechanism to lock-down extension to specific working commit  \n  - added `sd-webui-controlnet` and `adetailer` last-known working commits  \n- **upscaling**  \n  - interruptible operations\n- **refactor**  \n  - general lora apply/unapply process  \n  - modularize main process loop  \n  - massive log cleanup  \n  - full lint pass  \n  - improve inference mode handling  \n  - unify quant lib loading  \n\n\n## Update for 2024-09-13\n\n### Highlights for 2024-09-13\n\nMajor refactor of [FLUX.1](https://blackforestlabs.ai/announcing-black-forest-labs/) support:  \n- Full **ControlNet** support, better **LoRA** support, full **prompt attention** implementation  \n- Faster execution, more flexible loading, additional quantization options, and more...  \n- Added **image-to-image**, **inpaint**, **outpaint**, **hires** modes  \n- Added workflow where FLUX can be used as **refiner** for other models  \n- Since both *Optimum-Quanto* and *BitsAndBytes* libraries are limited in their platform support matrix,  \n  try enabling **NNCF** for quantization/compression on-the-fly!  \n\nFew image related goodies...  \n- **Context-aware** resize that allows for *img2img/inpaint* even at massively different aspect ratios without distortions!\n- **LUT Color grading** apply professional color grading to your images using industry-standard *.cube* LUTs!\n- Auto **HDR** image create for SD and SDXL with both 16ch true-HDR and 8-ch HDR-effect images ;)  \n\nAnd few video related goodies...  \n- [CogVideoX](https://huggingface.co/THUDM/CogVideoX-5b) **2b** and **5b** variants  \n  with support for *text-to-video* and *video-to-video*!  \n- [AnimateDiff](https://github.com/guoyww/animatediff/) **prompt travel** and **long context windows**!  \n  create video which travels between different prompts and at long video lengths!  \n\nPlus tons of other items and fixes - see [changelog](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md) for details!  \nExamples:\n- Built-in prompt-enhancer, TAESD optimizations, new DC-Solver scheduler, global XYZ grid management, etc.  \n- Updates to ZLUDA, IPEX, OpenVINO...\n\n### Details for 2024-09-13\n\n**Major refactor of FLUX.1 support:**\n- allow configuration of individual FLUX.1 model components: *transformer, text-encoder, vae*  \n  model load will load selected components first and then initialize model using pre-loaded components  \n  components that were not pre-loaded will be downloaded and initialized as needed  \n  as usual, components can also be loaded after initial model load  \n  *note*: use of transformer/unet is recommended as those are flux.1 finetunes  \n  *note*: manually selecting vae and text-encoder is not recommended  \n  *note*: mix-and-match of different quantizations for different components can lead to unexpected errors  \n  - transformer/unet is list of manually downloaded safetensors  \n  - vae is list of manually downloaded safetensors  \n  - text-encoder is list of predefined and manually downloaded text-encoders  \n- **controlnet** support:\n  support for **InstantX/Shakker-Labs** models including [Union-Pro](https://huggingface.co/InstantX/FLUX.1-dev-Controlnet-Union)\n  note that flux controlnet models are large, up to 6.6GB on top of already large base model!  \n  as such, you may need to use offloading:sequential which is not as fast, but uses far less memory  \n  when using union model, you must also select control mode in the control unit  \n  flux does not yet support *img2img* so to use controlnet, you need to set contronet input via control unit override  \n- model support loading **all-in-one** safetensors  \n  not recommended due to massive duplication of components, but added due to popular demand  \n  each such model is 20-32GB in size vs ~11GB for typical unet fine-tune  \n- improve logging, warn when attempting to load unet as base model  \n- **refiner** support  \n  FLUX.1 can be used as refiner for other models such as sd/sdxl  \n  simply load sd/sdxl model as base and flux model as refiner and use as usual refiner workflow  \n- **img2img**, **inpaint** and **outpaint** support  \n  *note* flux may require higher denoising strength than typical sd/sdxl models  \n  *note*: img2img is not yet supported with controlnet  \n- transformer/unet support *fp8/fp4* quantization  \n  this brings supported quants to: *nf4/fp8/fp4/qint8/qint4*\n- vae support *fp16*  \n- **lora** support additional training tools  \n- **face-hires** support  \n- support **fuse-qkv** projections  \n  can speed up generate  \n  enable via *settings -> compute -> fused projections*  \n\n**Other improvements & Fixes:**\n- [CogVideoX](https://huggingface.co/THUDM/CogVideoX-5b)  \n  - support for both **2B** and **5B** variations  \n  - support for both **text2video** and **video2video** modes\n  - simply select in *scripts -> cogvideox*  \n  - as with any video modules, includes additional frame interpolation using RIFE  \n  - if init video is used, it will be automatically resized and interpolated to desired number of frames  \n- **AnimateDiff**:  \n  - **prompt travel**  \n     create video which travels between different prompts at different steps!  \n     example prompt:\n      > 0: dog  \n      > 5: cat  \n      > 10: bird  \n  - support for **v3** model (finally)  \n  - support for **LCM** model  \n  - support for **free-noise** rolling context window  \n    allow for creation of much longer videos, automatically enabled if frames > 16  \n- **Context-aware** image resize, thanks @AI-Casanova!  \n  based on [seam-carving](https://github.com/li-plus/seam-carving)  \n  allows for *img2img/inpaint* even at massively different aspect ratios without distortions!  \n  simply select as resize method when using *img2img* or *control* tabs  \n- **HDR** high-dynamic-range image create for SD and SDXL  \n  create hdr images from in multiple exposures by latent-space modifications during generation  \n  use via *scripts -> hdr*  \n  option *save hdr images* creates images in standard 8bit/channel (hdr-effect) *and* 16bit/channel (full-hdr) PNG format  \n  ui result is always 8bit/channel hdr-effect image plus grid of original images used to create hdr  \n  grid image can be disabled via settings -> user interface -> show grid  \n  actual full-hdr image is not displayed in ui, only optionally saved to disk  \n- new scheduler: [DC Solver](https://github.com/wl-zhao/DC-Solver)  \n- **color grading** apply professional color grading to your images  \n  using industry-standard *.cube* LUTs!\n  enable via *scripts -> color-grading*  \n- **hires** workflow now allows for full resize options  \n  not just limited width/height/scale  \n- **xyz grid** is now availabe as both local and global script!\n- **prompt enhance**: improve quality and/or verbosity of your prompts  \n  simply select in *scripts -> prompt enhance*\n  uses [gokaygokay/Flux-Prompt-Enhance](https://huggingface.co/gokaygokay/Flux-Prompt-Enhance) model  \n- **decode**\n  - auto-set upcast if first decode fails  \n  - restore dtype on upcast  \n- **taesd** configurable number of layers  \n  can be used to speed-up taesd decoding by reducing number of ops  \n  e.g. if generating 1024px image, reducing layers by 1 will result in preview being 512px  \n  set via *settings -> live preview -> taesd decode layers*  \n- **xhinker** prompt parser handle offloaded models  \n- **control** better handle offloading  \n- **upscale** will use resize-to if set to non-zero values over resize-by  \n  applies to any upscale options, including refine workflow  \n- **networks** add option to choose if mouse-over on network should attempt to fetch additional info  \n  option:`extra_networks_fetch` enable/disable in *settings -> networks*  \n- speed up some garbage collection ops  \n- sampler settings add **dynamic shift**  \n  used by flow-matching samplers to adjust between structure and details  \n- sampler settings force base shift  \n  improves quality of the flow-matching samplers  \n- **t5** support manually downloaded models  \n  applies to all models that use t5 transformer  \n- **modern-ui** add override field  \n- full **lint** updates  \n- use `diffusers` from main branch, no longer tied to release  \n- improve diffusers/transformers/huggingface_hub progress reporting  \n- use unique identifiers for all ui components  \n- **visual query** (a.ka vqa or vlm) added support for several models\n  - [MiaoshouAI PromptGen 1.5 Base](https://huggingface.co/MiaoshouAI/Florence-2-base-PromptGen-v1.5)\n  - [MiaoshouAI PromptGen 1.5 Large](https://huggingface.co/MiaoshouAI/Florence-2-large-PromptGen-v1.5)\n  - [CogFlorence 2.2 Large](https://huggingface.co/thwri/CogFlorence-2.2-Large)\n- **modernui** update  \n- **zluda** update to 3.8.4, thanks @lshqqytiger!\n- **ipex** update to 2.3.110+xpu on linux, thanks @Disty0!\n- **openvino** update to 2024.3.0, thanks @Disty0!\n- update `requirements`\n- fix **AuraFlow**  \n- fix handling of model configs if offline config is not available  \n- fix vae decode in backend original  \n- fix model path typos  \n- fix guidance end handler  \n- fix script sorting  \n- fix vae dtype during load  \n- fix all ui labels are unique\n\n## Update for 2024-08-31\n\n### Highlights for 2024-08-31\n\nSummer break is over and we are back with a massive update!  \n\nSupport for all of the new models:  \n- [Black Forest Labs FLUX.1](https://blackforestlabs.ai/announcing-black-forest-labs/)  \n- [AuraFlow 0.3](https://huggingface.co/fal/AuraFlow)  \n- [AlphaVLLM Lumina-Next-SFT](https://huggingface.co/Alpha-VLLM/Lumina-Next-SFT-diffusers)  \n- [Kwai Kolors](https://huggingface.co/Kwai-Kolors/Kolors)  \n- [HunyuanDiT 1.2](https://huggingface.co/Tencent-Hunyuan/HunyuanDiT-v1.2-Diffusers)  \n\nWhat else? Just a bit... ;)  \n\nNew **fast-install** mode, new **Optimum Quanto** and **BitsAndBytes** based quantization modes, new **balanced offload** mode that dynamically offloads GPU<->CPU as needed, and more...  \nAnd from previous service-pack: new **ControlNet-Union** *all-in-one* model, support for **DoRA** networks, additional **VLM** models, new **AuraSR** upscaler  \n\n**Breaking Changes...**\n\nDue to internal changes, you'll need to reset your **attention** and **offload** settings!  \nBut...For a good reason, new *balanced offload* is magic when it comes to memory utilization while sacrificing minimal performance!\n\n### Details for 2024-08-31\n\n**New Models...**\n\nTo use and of the new models, simply select model from *Networks -> Reference* and it will be auto-downloaded on first use  \n\n- [Black Forest Labs FLUX.1](https://blackforestlabs.ai/announcing-black-forest-labs/)  \n  FLUX.1 models are based on a hybrid architecture of multimodal and parallel diffusion transformer blocks, scaled to 12B parameters and builing on flow matching  \n  This is a very large model at ~32GB in size, its recommended to use a) offloading, b) quantization  \n  For more information on variations, requirements, options, and how to donwload and use FLUX.1, see [Wiki](https://github.com/vladmandic/automatic/wiki/FLUX)  \n  SD.Next supports:  \n  - [FLUX.1 Dev](https://huggingface.co/black-forest-labs/FLUX.1-dev) and [FLUX.1 Schnell](https://huggingface.co/black-forest-labs/FLUX.1-schnell) original variations  \n  - additional [qint8](https://huggingface.co/Disty0/FLUX.1-dev-qint8) and [qint4](https://huggingface.co/Disty0/FLUX.1-dev-qint4) quantized variations  \n  - additional [nf4](https://huggingface.co/sayakpaul/flux.1-dev-nf4) quantized variation  \n- [AuraFlow](https://huggingface.co/fal/AuraFlow)  \n  AuraFlow v0.3 is the fully open-sourced largest flow-based text-to-image generation model  \n  This is a very large model at 6.8B params and nearly 31GB in size, smaller variants are expected in the future  \n  Use scheduler: Default or Euler FlowMatch or Heun FlowMatch  \n- [AlphaVLLM Lumina-Next-SFT](https://huggingface.co/Alpha-VLLM/Lumina-Next-SFT-diffusers)  \n  Lumina-Next-SFT is a Next-DiT model containing 2B parameters, enhanced through high-quality supervised fine-tuning (SFT)  \n  This model uses T5 XXL variation of text encoder (previous version of Lumina used Gemma 2B as text encoder)  \n  Use scheduler: Default or Euler FlowMatch or Heun FlowMatch  \n- [Kwai Kolors](https://huggingface.co/Kwai-Kolors/Kolors)  \n  Kolors is a large-scale text-to-image generation model based on latent diffusion  \n  This is an SDXL style model that replaces standard CLiP-L and CLiP-G text encoders with a massive `chatglm3-6b` encoder supporting both English and Chinese prompting  \n- [HunyuanDiT 1.2](https://huggingface.co/Tencent-Hunyuan/HunyuanDiT-v1.2-Diffusers)  \n  Hunyuan-DiT is a powerful multi-resolution diffusion transformer (DiT) with fine-grained Chinese understanding  \n- [AnimateDiff](https://github.com/guoyww/animatediff/)  \n  support for additional models: **SD 1.5 v3** (Sparse), **SD Lightning** (4-step), **SDXL Beta**  \n\n**New Features...**\n\n- support for **Balanced Offload**, thanks @Disty0!  \n  balanced offload will dynamically split and offload models from the GPU based on the max configured GPU and CPU memory size  \n  model parts that dont fit in the GPU will be dynamically sliced and offloaded to the CPU  \n  see *Settings -> Diffusers Settings -> Max GPU memory and Max CPU memory*  \n  *note*: recommended value for max GPU memory is ~80% of your total GPU memory  \n  *note*: balanced offload will force loading LoRA with Diffusers method  \n  *note*: balanced offload is not compatible with Optimum Quanto  \n- support for **Optimum Quanto** with 8 bit and 4 bit quantization options, thanks @Disty0 and @Trojaner!  \n  to use, go to Settings -> Compute Settings and enable \"Quantize Model weights with Optimum Quanto\" option  \n  *note*: Optimum Quanto requires PyTorch 2.4  \n- new prompt attention mode: **xhinker** which brings support for prompt attention to new models such as FLUX.1 and SD3  \n  to use, enable in *Settings -> Execution -> Prompt attention*\n- use [PEFT](https://huggingface.co/docs/peft/main/en/index) for **LoRA** handling on all models other than SD15/SD21/SDXL  \n  this improves LoRA compatibility for SC, SD3, AuraFlow, Flux, etc.  \n\n**Changes & Fixes...**\n\n- default resolution bumped from 512x512 to 1024x1024, time to move on ;)\n- convert **Dynamic Attention SDP** into a global SDP option, thanks @Disty0!  \n  *note*: requires reset of selected attention option\n- update default **CUDA** version from 12.1 to 12.4\n- update `requirements`\n- samplers now prefers the model defaults over the diffusers defaults, thanks @Disty0!  \n- improve xyz grid for lora handling and add lora strength option  \n- don't enable Dynamic Attention by default on platforms that support Flash Attention, thanks @Disty0!  \n- convert offload options into a single choice list, thanks @Disty0!  \n  *note*: requires reset of selected offload option  \n- control module allows reszing of indivudual process override images to match input image  \n  for example: set size->before->method:nearest, mode:fixed or mode:fill  \n- control tab includes superset of txt and img scripts\n- automatically offload disabled controlnet units  \n- prioritize specified backend if `--use-*` option is used, thanks @lshqqytiger\n- ipadapter option to auto-crop input images to faces to improve efficiency of face-transfter ipadapters  \n- update **IPEX** to 2.1.40+xpu on Linux, thanks @Disty0!  \n- general **ROCm** fixes, thanks @lshqqytiger!  \n- support for HIP SDK 6.1 on ZLUDA backend, thanks @lshqqytiger!\n- fix full vae previews, thanks @Disty0!  \n- fix default scheduler not being applied, thanks @Disty0!  \n- fix Stable Cascade with custom schedulers, thanks @Disty0!  \n- fix LoRA apply with force-diffusers\n- fix LoRA scales with force-diffusers\n- fix control API\n- fix VAE load refrerencing incorrect configuration\n- fix NVML gpu monitoring\n\n## Update for 2024-07-08\n\nThis release is primary service release with cumulative fixes and several improvements, but no breaking changes.\n\n**New features...**\n- massive updates to [Wiki](https://github.com/vladmandic/automatic/wiki)  \n  with over 20 new pages and articles, now includes guides for nearly all major features  \n  *note*: this is work-in-progress, if you have any feedback or suggestions, please let us know!\n  thanks @GenesisArtemis!  \n- support for **DoRA** networks, thanks @AI-Casanova!\n- support for [uv](https://pypi.org/project/uv/), extremely fast installer, thanks @Yoinky3000!  \n  to use, simply add `--uv` to your command line params  \n- [Xinsir ControlNet++ Union](https://huggingface.co/xinsir/controlnet-union-sdxl-1.0)  \n  new SDXL *all-in-one* controlnet that can process any kind of preprocessors!\n- [CogFlorence 2 Large](https://huggingface.co/thwri/CogFlorence-2-Large-Freeze) VLM model  \n  to use, simply select in process -> visual query  \n- [AuraSR](https://huggingface.co/fal/AuraSR) high-quality 4x GAN-style upscaling model  \n  note: this is a large upscaler at 2.5GB  \n\n**And fixes...**\n- enable **Florence VLM**  for all platforms, thanks @lshqqytiger!  \n- improve ROCm detection under WSL2, thanks @lshqqytiger!  \n- add SD3 with FP16 T5 to list of detected models  \n- fix executing extensions with zero params  \n- add support for embeddings bundled in LoRA, thanks @AI-Casanova!  \n- fix executing extensions with zero params  \n- fix nncf for lora, thanks @Disty0!  \n- fix diffusers version detection for SD3  \n- fix current step for higher order samplers  \n- fix control input type video  \n- fix reset pipeline at the end of each iteration  \n- fix faceswap when no faces detected  \n- fix civitai search\n- multiple ModernUI fixes\n\n## Update for 2024-06-23\n\n### Highlights for 2024-06-23\n\nFollowing zero-day **SD3** release, a 10 days later heres a refresh with 10+ improvements  \nincluding full prompt attention, support for compressed weights, additional text-encoder quantization modes.  \n\nBut theres more than SD3:  \n- support for quantized **T5** text encoder *FP16/FP8/FP4/INT8* in all models that use T5: SD3, PixArt-Σ, etc.  \n- support for **PixArt-Sigma** in small/medium/large variants  \n- support for **HunyuanDiT 1.1**  \n- additional **NNCF weights compression** support: SD3, PixArt, ControlNet, Lora  \n- integration of **MS Florence** VLM/VQA *Base* and *Large* models  \n- (finally) new release of **Torch-DirectML**  \n- additional efficiencies for users with low VRAM GPUs  \n- over 20 overall fixes  \n\n### Model Improvements for 2024-06-23\n\n- **SD3**: enable tiny-VAE (TAESD) preview and non-full quality mode  \n- SD3: enable base LoRA support  \n- SD3: add support for FP4 quantized T5 text encoder  \n  simply select in *settings -> model -> text encoder*  \n  *note* for SD3 with T5, set SD.Next to use FP16 precision, not BF16 precision  \n- SD3: add support for INT8 quantized T5 text encoder, thanks @Disty0!  \n- SD3: enable cpu-offloading for T5 text encoder, thanks @Disty0!  \n- SD3: simplified loading of model in single-file safetensors format  \n  model load can now be performed fully offline  \n- SD3: full support for prompt parsing and attention, thanks @AI-Casanova!\n- SD3: ability to target different prompts to each of text-encoders, thanks @AI-Casanova!  \n  example: `dog TE2: cat TE3: bird`\n- SD3: add support for sampler shift for Euler FlowMatch  \n  see *settings -> samplers*, also available as param in xyz grid  \n  higher shift means model will spend more time on structure and less on details  \n- SD3: add support for selecting T5 text encoder variant in XYZ grid\n- **Pixart-Σ**: Add *small* (512px) and *large* (2k) variations, in addition to existing *medium* (1k)  \n- Pixart-Σ: Add support for 4/8bit quantized t5 text encoder  \n  *note* by default pixart-Σ uses full fp16 t5 encoder with large memory footprint  \n  simply select in *settings -> model -> text encoder* before or after model load  \n- **HunyuanDiT**: support for model version 1.1  \n- **MS Florence**: integration of Microsoft Florence VLM/VQA Base and Large models  \n  simply select in *process -> visual query*!\n\n### General Improvements for 2024-06-23\n\n- support FP4 quantized T5 text encoder, in addition to existing FP8 and FP16\n- support for T5 text-encoder loader in **all** models that use T5  \n  *example*: load FP4 or FP8 quantized T5 text-encoder into PixArt Sigma!\n- support for `torch-directml` **0.2.2**, thanks @lshqqytiger!  \n  *note*: new directml is finally based on modern `torch` 2.3.1!  \n- xyz grid: add support for LoRA selector\n- vae load: store original vae so it can be restored when set to none\n- extra networks: info display now contains link to source url if model if its known  \n  works for civitai and huggingface models  \n- force gc for lowvram users and improve gc logging\n- improved google.colab support\n- css tweaks for standardui\n- css tweaks for modernui\n- additional torch gc checks, thanks @Disty0!\n\n**Improvements: NNCF**, thanks @Disty0!  \n- SD3 and PixArt support  \n- moved the first compression step to CPU  \n- sequential cpu offload (lowvram) support  \n- Lora support without reloading the model  \n- ControlNet compression support  \n\n### Fixes for 2024-06-23\n\n- fix unsaturated outputs, force apply vae config on model load  \n- fix hidiffusion handling of non-square aspect ratios, thanks @ShenZhang-Shin!\n- fix control second pass resize  \n- fix hunyuandit set attention processor\n- fix civitai download without name\n- fix compatibility with latest adetailer\n- fix invalid sampler warning\n- fix starting from non git repo\n- fix control api negative prompt handling\n- fix saving style without name provided\n- fix t2i-color adapter\n- fix sdxl \"has been incorrectly initialized\"\n- fix api face-hires\n- fix api ip-adapter\n- fix memory exceptions with ROCm, thanks @Disty0!\n- fix face-hires with lowvram, thanks @Disty0!\n- fix pag incorrectly resetting pipeline\n- cleanup image metadata\n- restructure api examples: `cli/api-*`\n- handle theme fallback when invalid theme is specified\n- remove obsolete training code leftovers\n\n## Update for 2024-06-13\n\n### Highlights for 2024-06-13\n\nFirst, yes, it is here and supported: [**StabilityAI Stable Diffusion 3 Medium**](https://stability.ai/news/stable-diffusion-3-medium)  \nfor details on how to download and use, see [Wiki](https://github.com/vladmandic/automatic/wiki/SD3)\n\n#### What else 2024-06-13?\n\nA lot of work on state-of-the-art multi-lingual models with both [Tenecent HunyuanDiT](https://github.com/Tencent/HunyuanDiT) and [MuLan](https://github.com/mulanai/MuLan)  \nPlus tons of minor features such as optimized initial install experience, **T-Gate** and **ResAdapter**, additional ModernUI themes (both light and dark) and fixes since the last release which was only 2 weeks ago!\n\n### Full Changelog for 2024-06-13\n\n#### New Models for 2024-06-23\n\n- [StabilityAI Stable Diffusion 3 Medium](https://stability.ai/news/stable-diffusion-3-medium)  \n  yup, supported!  \n  quote: *\"Stable Diffusion 3 Medium is a multimodal diffusion transformer (MMDiT) model that features improved performance in image quality, typography, complex prompt understanding, and resource-efficiency\"*  \n  sdnext also supports switching optional T5 text encoder on-the-fly as well as loading model from either diffusers repo or safetensors single-file  \n  for details, see [Wiki](https://github.com/vladmandic/automatic/wiki/SD3)\n- [Tenecent HunyuanDiT](https://github.com/Tencent/HunyuanDiT) bilingual english/chinese diffusion transformer model  \n  note: this is a very large model at ~17GB, but can be used with less VRAM using model offloading  \n  simply select from networks -> models -> reference, model will be auto-downloaded on first use  \n\n#### New Functionality for 2024-06-23\n\n- [MuLan](https://github.com/mulanai/MuLan) Multi-language prompts\n  write your prompts in ~110 auto-detected languages!  \n  compatible with *SD15* and *SDXL*  \n  enable in scripts -> MuLan and set encoder to `InternVL-14B-224px` encoder  \n  *note*: right now this is more of a proof-of-concept before smaller and/or quantized models are released  \n  model will be auto-downloaded on first use: note its huge size of 27GB  \n  even executing it in FP16 will require ~16GB of VRAM for text encoder alone  \n  examples:  \n  - English: photo of a beautiful woman wearing a white bikini on a beach with a city skyline in the background\n  - Croatian: fotografija lijepe žene u bijelom bikiniju na plaži s gradskim obzorom u pozadini\n  - Italian: Foto di una bella donna che indossa un bikini bianco su una spiaggia con lo skyline di una città sullo sfondo\n  - Spanish: Foto de una hermosa mujer con un bikini blanco en una playa con un horizonte de la ciudad en el fondo\n  - German: Foto einer schönen Frau in einem weißen Bikini an einem Strand mit einer Skyline der Stadt im Hintergrund\n  - Arabic: صورة لامرأة جميلة ترتدي بيكيني أبيض على شاطئ مع أفق المدينة في الخلفية\n  - Japanese: 街のスカイラインを背景にビーチで白いビキニを着た美しい女性の写真\n  - Chinese: 一个美丽的女人在海滩上穿着白色比基尼的照片, 背景是城市天际线\n  - Korean: 도시의 스카이라인을 배경으로 해변에서 흰색 비키니를 입은 아름 다운 여성의 사진\n- [T-Gate](https://github.com/HaozheLiu-ST/T-GATE) Speed up generations by gating at which step cross-attention is no longer needed  \n  enable via scripts -> t-gate  \n  compatible with *SD15*  \n- **PCM LoRAs** allow for fast denoising using less steps with standard *SD15* and *SDXL* models  \n  download from <https://huggingface.co/Kijai/converted_pcm_loras_fp16/tree/main>\n- [ByteDance ResAdapter](https://github.com/bytedance/res-adapter) resolution-free model adapter  \n  allows to use resolutions from 0.5 to 2.0 of original model resolution, compatible with *SD15* and *SDXL*\n  enable via scripts -> resadapter and select desired model\n- **Kohya HiRes Fix** allows for higher resolution generation using standard *SD15* models  \n  enable via scripts -> kohya-hires-fix  \n  *note*: alternative to regular hidiffusion method, but with different approach to scaling  \n- additional built-in 4 great custom trained **ControlNet SDXL** models from Xinsir: OpenPose, Canny, Scribble, AnimePainter  \n  thanks @lbeltrame\n- add torch **full deterministic mode**\n  enable in settings -> compute -> use deterministic mode  \n  typical differences are not large and its disabled by default as it does have some performance impact  \n- new sampler: **Euler FlowMatch**  \n\n#### Improvements Fixes 2024-06-13\n\n- additional modernui themes\n- reintroduce prompt attention normalization, disabled by default, enable in settings -> execution  \n  this can drastically help with unbalanced prompts  \n- further work on improving python 3.12 functionality and remove experimental flag  \n  note: recommended version remains python 3.11 for all users, except if you are using directml in which case its python 3.10  \n- improved **installer** for initial installs  \n  initial install will do single-pass install of all required packages with correct versions  \n  subsequent runs will check package versions as necessary  \n- add env variable `SD_PIP_DEBUG` to write `pip.log` for all pip operations  \n  also improved installer logging  \n- add python version check for `torch-directml`  \n- do not install `tensorflow` by default  \n- improve metadata/infotext parser  \n  add `cli/image-exif.py` that can be used to view/extract metadata from images  \n- lower overhead on generate calls  \n- auto-synchronize modernui and core branches  \n- add option to pad prompt with zeros, thanks @Disty\n\n#### Fixes 2024-06-13\n\n- cumulative fixes since the last release  \n- fix apply/unapply hidiffusion for sd15  \n- fix controlnet reference enabled check  \n- fix face-hires with control batch count  \n- install pynvml on-demand  \n- apply rollback-vae option to latest torch versions, thanks @Iaotle  \n- face hires skip if strength is 0  \n- restore all sampler configuration on sampler change  \n\n## Update for 2024-06-02\n\n- fix textual inversion loading\n- fix gallery mtime display\n- fix extra network scrollable area when using modernui\n- fix control prompts list handling\n- fix restore variation seed and strength\n- fix negative prompt parsing from metadata\n- fix stable cascade progress monitoring\n- fix variation seed with hires pass\n- fix loading models trained with onetrainer\n- add variation seed info to metadata\n- workaround for scale-by when using modernui\n- lock torch-directml version\n- improve xformers installer\n- improve ultralytics installer (face-hires)\n- improve triton installer (compile)\n- improve insightface installer (faceip)\n- improve mim installer (dwpose)\n- add dpm++ 1s and dpm++ 3m aliases for dpm++ 2m scheduler with different orders\n\n## Update for 2024-05-28\n\n### Highlights for 2024-05-28\n\nNew [SD.Next](https://github.com/vladmandic/automatic) release has been baking in `dev` for a longer than usual, but changes are massive - about 350 commits for core and 300 for UI...\n\nStarting with the new UI - yup, this version ships with a *preview* of the new [ModernUI](https://github.com/BinaryQuantumSoul/sdnext-modernui)  \nFor details on how to enable and use it, see [Home](https://github.com/BinaryQuantumSoul/sdnext-modernui) and [WiKi](https://github.com/vladmandic/automatic/wiki/Themes)  \n**ModernUI** is still in early development and not all features are available yet, please report [issues and feedback](https://github.com/BinaryQuantumSoul/sdnext-modernui/issues)  \nThanks to @BinaryQuantumSoul for his hard work on this project!  \n\n*What else?*\n\n#### New built-in features\n\n- [PWA](https://developer.mozilla.org/en-US/docs/Web/Progressive_web_apps) SD.Next is now installable as a web-app\n- **Gallery**: extremely fast built-in gallery viewer  \n  List, preview, search through all your images and videos!  \n- **HiDiffusion** allows generating very-high resolution images out-of-the-box using standard models  \n- **Perturbed-Attention Guidance** (PAG) enhances sample quality in addition to standard CFG scale  \n- **LayerDiffuse** simply create transparent (foreground-only) images  \n- **IP adapter masking** allows to use multiple input images for each segment of the input image  \n- IP adapter **InstantStyle** implementation  \n- **Token Downsampling** (ToDo) provides significant speedups with minimal-to-none quality loss  \n- **Samplers optimizations** that allow normal samplers to complete work in 1/3 of the steps!  \n  Yup, even popular DPM++2M can now run in 10 steps with quality equaling 30 steps using **AYS** presets  \n- Native **wildcards** support  \n- Improved built-in **Face HiRes**  \n- Better **outpainting**  \n- And much more...  \n  For details of above features and full list, see [Changelog](https://github.com/vladmandic/automatic/blob/dev/CHANGELOG.md)\n\n#### New models\n\nWhile still waiting for *Stable Diffusion 3.0*, there have been some significant models released in the meantime:\n\n- [PixArt-Σ](https://pixart-alpha.github.io/PixArt-sigma-project/), high end diffusion transformer model (*DiT*) capable of directly generating images at 4K resolution  \n- [SDXS](https://github.com/IDKiro/sdxs), extremely fast 1-step generation consistency model  \n- [Hyper-SD](https://huggingface.co/ByteDance/Hyper-SD), 1-step, 2-step, 4-step and 8-step optimized models  \n\n*Note*  \n[SD.Next](https://github.com/vladmandic/automatic) is no longer marked as a fork of [A1111](https://github.com/AUTOMATIC1111/stable-diffusion-webui/) and github project has been fully detached  \nGiven huge number of changes with *+3443/-3342* commits diff (at the time of fork detach) over the past year,  \na completely different backend/engine and a change of focus, it is time to give credit to original [author](https://github.com/auTOMATIC1111),  and move on!  \n\n### Full ChangeLog for 2024-05-28\n\n- **Features**:\n  - **ModernUI** preview of the new [ModernUI](https://github.com/BinaryQuantumSoul/sdnext-modernui)  \n  - [PWA](https://developer.mozilla.org/en-US/docs/Web/Progressive_web_apps) SD.Next is now installable as a web-app and includes verified manifest  \n  - **Gallery\n  - **Gallery**: list, preview, search through all your images and videos!  \n    Implemented as infinite-scroll with client-side-caching and lazy-loading while being fully async and non-blocking  \n    Search or sort by path, name, size, width, height, mtime or any image metadata item, also with extended syntax like *width > 1000*  \n    *Settings*: optional additional user-defined folders, thumbnails in fixed or variable aspect-ratio  \n  - [HiDiffusion](https://github.com/megvii-research/HiDiffusion):  \n    Generate high-resolution images using your standard models without duplicates/distorsions AND improved performance  \n    For example, *SD15* can now go up to *2024x2048* and *SDXL* up to *4k* natively\n    Simply enable checkbox in advanced menu and set desired resolution  \n    Additional settings are available in *settings -> inference settings -> hidiffusion*  \n    And can also be set and used via *xyz grid*  \n    *Note*: HiDiffusion resolution sensitive, so if you get error, set resolution to be multiples of 128  \n  - [Perturbed-Attention Guidance](https://github.com/KU-CVLAB/Perturbed-Attention-Guidance)  \n    PAG enhances sample quality by utilizing self-attention in formation of latent in addition to standard CFG scale  \n    Simply set *advanced -> attention guidance* and *advanced -> adaptive scaling*  \n    Additional options are available in *settings -> inference settings -> pag*  \n    *Note*: PAG has replaced SAG as attention guidance method in SD.Next  \n  - [LayerDiffuse](https://github.com/rootonchair/diffuser_layerdiffuse)\n    Create transparent images with foreground-only being generated  \n    Simply select from scripts -> apply to current model  \n    All necessary files will be auto-downloaded on first use  \n  - **IP Adapter Masking**:  \n    Powerful method of using masking with ip-adapters  \n    When combined with multiple ip-adapters, it allows for different inputs guidance for each segment of the input image  \n    *Hint*: to create masks, you can use manually created masks or control->mask module with auto-segment to create masks and later upload them  \n  - **IP Adapter advanced layer configuration**:  \n    Allows for more control over how each layer of ip-adapter is applied, requires a valid dict to be passed as input  \n    See [InstantStyle](https://github.com/InstantStyle/InstantStyle) for details  \n  - **OneDiff**: new optimization/compile engine, thanks @aifartist  \n    As with all other compile engines, enable via *settings -> compute settings -> compile*  \n  - [ToDo](https://arxiv.org/html/2402.13573v2) Token Downsampling for Efficient Generation of High-Resolution Images  \n    Newer alternative method to [ToMe](https://github.com/dbolya/tomesd) that can provide speed-up with minimal quality loss  \n    Enable in *settings -> inference settings -> token merging*  \n    Also available in XYZ grid  \n  - **Outpaint**:  \n    New method of outpainting that uses a combination of auto-masking and edge generation to create seamless transitions between original and generated image  \n    Use on control tab:\n    - *input -> denoising strength: 0.5 or higher*\n    - *select image -> outpaint -> expand edges or zoom out to desired size*\n    - *size -> mode: outpaint, method: nearest*\n    - *mask -> inpaint masked only (if you want to keep original image)*\n  - **Wildcards**:\n    - native support of standard file-based wildcards in prompt  \n    - enabled by default, can be disabled in *settings -> extra networks* if you want to use 3rd party extension  \n    - wildcards folder is set in *settings -> system paths* and can be flat-file list or complex folder structure  \n    - matches strings `\"__*__\"` in positive and negative prompts  \n    - supports filename and path-based wildcards  \n    - supports nested wildcards (wildcard can refer to another wildcard, etc.)  \n    - supports wildcards files in one-choice per line or multiple choices per line separated by `|` format  \n    - *note*: this is in addition to previously released style-based wildcards  \n- **Models**:\n  - **Load UNET**: ability to override/load external UNET to a selected model  \n    Works similar to how VAE is selected and loaded: Set UNet folder and UNet model in settings  \n    Can be replaced on-the-fly, not just during initial model load  \n    Enables usage of fine-tunes such as [DPO-SD15](https://huggingface.co/mhdang/dpo-sd1.5-text2image-v1) or [DPO-SDXL](https://huggingface.co/mhdang/dpo-sdxl-text2image-v1)  \n    *Note*: if there is a `JSON` file with the same name as the model it will be used as Unet config, otherwise Unet config from currently loaded model will be used  \n  - [PixArt-Σ](https://pixart-alpha.github.io/PixArt-sigma-project/)\n    pixart-Σ is a high end diffusion Transformer model (DiT) with a T5 encoder/decoder capable of directly generating images at 4K resolution  \n    to use, simply select from *networks -> models -> reference -> PixArt-Σ*  \n    *note*: this is a very large model at ~22GB  \n    set parameters: *sampler: Default*  \n  - [SDXS](https://github.com/IDKiro/sdxs)\n    sdxs is an extremely fast 1-step generation consistency model that also uses TAESD as quick VAE out-of-the-box  \n    to use, simply select from *networks -> models -> reference -> SDXS*  \n    set parameters: *sampler: CMSI, steps: 1, cfg_scale: 0.0*\n  - [Hyper-SD](https://huggingface.co/ByteDance/Hyper-SD)  \n    sd15 and sdxl 1-step, 2-step, 4-step and 8-step optimized models using lora  \n    set parameters: *sampler: TCD or LCM, steps: 1/2/4/8, cfg_scale: 0.0*  \n- **UI**:\n  - Faster **UI** load times\n  - Theme types:  \n    **Standard** (built-in themes), **Modern** (experimental nextgen ui), **None** (used for Gradio and Huggingface 3rd party themes)  \n    Specifying a theme type updates list of available themes  \n    For example, *Gradio* themes will not appear as available if theme type is set to *Standard*  \n  - Redesign of base txt2img interface  \n  - Minor tweaks to styles: refresh/apply/save\n  - See details in [WiKi](https://github.com/vladmandic/automatic/wiki/Themes)\n- **API**:\n  - Add API endpoint `/sdapi/v1/control` and CLI util `cli/simple-control.py`  \n    (in addition to previously added `/sdapi/v1/preprocessors` and `/sdapi/v1/masking`)  \n    example:\n    > simple-control.py --prompt 'woman in the city' --sampler UniPC --steps 20  \n    > --input \\~/generative/Samples/cutie-512.png --output /tmp/test.png --processed /tmp/proc.png  \n    > --control 'Canny:Canny FP16:0.7, OpenPose:OpenPose FP16:0.8' --type controlnet  \n    > --ipadapter 'Plus:~/generative/Samples/cutie-512.png:0.5'  \n  - Add API endpoint `/sdapi/v1/vqa` and CLI util `cli/simple-vqa.py`\n- **Changes**:\n  - Due to change in Diffusers model loading  \n    initial model load will now fetch config files required for the model  \n    from the Huggingface site instead of using predefined YAML files\n  - Removed built-in extensions: *ControlNet* and *Image-Browser*  \n    as both *image-browser* and *controlnet* have native built-in equivalents  \n    both can still be installed by user if desired  \n  - Different defaults depending on available GPU, thanks @Disty0\n    - 4GB and below: *lowvram*\n    - 8GB and below: *medvram*\n    - Cross-attention: Dynamic Attention SDP with *medvram* or *lowvram*, otherwise SDP  \n    - VAE Tiling enabled with *medvram* and *lowvram*\n    - Disable Extract EMA by default\n    - Disable forced VAE Slicing for *lowvram*\n  - Upscaler compile disabled by default with OpenVINO backend  \n  - Hypernetwork support disabled by default, can be enabled in settings  \n- **Improvements**:\n  - Faster server startup  \n  - Styles apply wildcards to params\n  - Face HiRes fully configurable and higher quality when using high-resolution models  \n  - Extra networks persistent sort order in settings  \n  - Add option to make batch generations use fully random seed vs sequential  \n  - Make metadata in full screen viewer optional\n  - Add VAE civitai scan metadata/preview\n  - More efficient in-browser callbacks\n  - Updated all system requirements  \n  - UI log monitor will auto-reconnect to server on server restart  \n  - UI styles includes indicator for active styles  \n  - UI reduce load on browser  \n  - Secondary sampler add option \"same as primary\"  \n  - Change attention mechanism on-the-fly without model reload, thanks @Disty0  \n  - Update stable-fast with support for torch 2.2.2 and 2.3.0, thanks @Aptronymist\n  - Add torch *cudaMallocAsync* in compute options  \n    Can improve memory utilization on compatible GPUs (RTX and newer)  \n  - Torch dynamic profiling  \n    You can enable/disable full torch profiling in settings top menu on-the-fly  \n  - Prompt caching - if you use the same prompt multiple times, no need to re-parse and encode it  \n    Useful for batches as prompt processing is ~0.1sec on each pass  \n  - Enhance `SD_PROMPT_DEBUG` to show actual tokens used\n  - Support controlnet manually downloads models in both standalone and diffusers format  \n    For standalone, simply copy safetensors file to `models/control/controlnet` folder  \n    For diffusers format, create folder with model name in `models/control/controlnet/`  \n    and copy `model.json` and `diffusion_pytorch_model.safetensors` to that folder  \n- **Samplers**\n  - Add *Euler SGM* variation (e.g. SGM Uniform), optimized for SDXL-Lightning models  \n    *note*: you can use other samplers as well with SDXL-Lightning models  \n  - Add *CMSI* sampler, optimized for consistency models  \n  - Add option *timestep spacing* to sampler settings and sampler section in main ui\n    Note: changing timestep spacing changes behavior of sampler and can help to make any sampler turbo/lightning compatibile\n  - Add option *timesteps* to manually set timesteps instead of relying on steps+spacing  \n    Additionally, presets from nVidias align-you-steps reasearch are provided  \n    Result is that perfectly aligned steps can drastically reduce number of steps needed!  \n    For example, **AYS** preset alows DPM++2M to run in ~10 steps with quality equallying ~30 steps!  \n- **IPEX**, thanks @Disty0\n  - Update to *IPEX 2.1.20* on Linux  \n    requires removing the venv folder to update properly  \n  - Removed 1024x1024 workaround  \n  - Disable ipexrun by default, set `IPEXRUN=True` if you want to use `ipexrun`  \n- **ROCm**, thanks @Disty0  \n  - Add support for ROCm 6.1 nighthly builds  \n  - Switch to stable branch of PyTorch  \n  - Compatibility improvenments  \n  - Add **MIGraphX** torch compile engine  \n- **ZLUDA**, thanks @lshqqytiger\n  - Rewrite ZLUDA installer\n  - ZLUDA **v3.8** updates: Runtime API support\n  - Add `--reinstall-zluda` (to download the latest ZLUDA)\n- **Fixes**:\n  - Update requirements\n  - Installer automatically handle detached git states  \n  - Prompt params parser\n  - Allowing forcing LoRA loading method for some or all models\n  - Image save without metadata\n  - API generate save metadata\n  - Face/InstantID faults\n  - CivitAI update model info for all models\n  - FP16/BF16 test on model load\n  - Variation seed possible NaNs\n  - Enumerate diffusers model with multiple variants\n  - Diffusers skip non-models on enum\n  - Face-HiRes compatibility with control modules\n  - Face-HiRes avoid doule save in some scenarios\n  - Loading safetensors embeddings\n  - CSS fixes\n  - Check if attention processor is compatible with model\n  - SD Upscale when used with control module\n  - Noise sampler seed, thanks @leppie\n  - Control module with ADetailer and active ControlNet\n  - Control module restore button full functionality\n  - Control improved handling with multiple control units and different init images\n  - Control add correct metadata to image\n  - Time embeddings load part of model load\n  - A1111 update OptionInfo properties\n  - MOTD exception handling\n  - Notifications not triggering\n  - Prompt cropping on copy\n\n## Update for 2024-03-19\n\n### Highlights 2024-03-19\n\nNew models:\n- [Stable Cascade](https://github.com/Stability-AI/StableCascade) *Full* and *Lite*\n- [Playground v2.5](https://huggingface.co/playgroundai/playground-v2.5-1024px-aesthetic)\n- [KOALA 700M](https://github.com/youngwanLEE/sdxl-koala)\n- [Stable Video Diffusion XT 1.1](https://huggingface.co/stabilityai/stable-video-diffusion-img2vid-xt-1-1)\n- [VGen](https://huggingface.co/ali-vilab/i2vgen-xl)  \n\nNew pipelines and features:\n- Img2img using [LEdit++](https://leditsplusplus-project.static.hf.space/index.html), context aware method with image analysis and positive/negative prompt handling\n- Trajectory Consistency Distillation [TCD](https://mhh0318.github.io/tcd) for processing in even less steps\n- Visual Query & Answer using [moondream2](https://github.com/vikhyat/moondream) as an addition to standard interrogate methods\n- **Face-HiRes**: simple built-in detailer for face refinements\n- Even simpler outpaint: when resizing image, simply pick outpaint method and if image has different aspect ratio, blank areas will be outpainted!\n- UI aspect-ratio controls and other UI improvements\n- User controllable invisibile and visible watermarking\n- Native composable LoRA\n\nWhat else?\n\n- **Reference models**: *Networks -> Models -> Reference*: All reference models now come with recommended settings that can be auto-applied if desired  \n- **Styles**: Not just for prompts! Styles can apply *generate parameters* as templates and can be used to *apply wildcards* to prompts  \nimprovements, Additional API endpoints  \n- Given the high interest in [ZLUDA](https://github.com/vosen/ZLUDA) engine introduced in last release weve updated much more flexible/automatic install procedure (see [wiki](https://github.com/vladmandic/automatic/wiki/ZLUDA) for details)  \n- Plus Additional Improvements such as: Smooth tiling, Refine/HiRes workflow improvements, Control workflow  \n\nFurther details:  \n- For basic instructions, see [README](https://github.com/vladmandic/automatic/blob/master/README.md)  \n- For more details on all new features see full [CHANGELOG](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md)  \n- For documentation, see [WiKi](https://github.com/vladmandic/automatic/wiki)\n- [Discord](https://discord.com/invite/sd-next-federal-batch-inspectors-1101998836328697867) server  \n\n### Full Changelog 2024-03-19\n\n- [Stable Cascade](https://github.com/Stability-AI/StableCascade) *Full* and *Lite*\n  - large multi-stage high-quality model from warp-ai/wuerstchen team and released by stabilityai  \n  - download using networks -> reference\n  - see [wiki](https://github.com/vladmandic/automatic/wiki/Stable-Cascade) for details\n- [Playground v2.5](https://huggingface.co/playgroundai/playground-v2.5-1024px-aesthetic)\n  - new model version from Playground: based on SDXL, but with some cool new concepts\n  - download using networks -> reference\n  - set sampler to *DPM++ 2M EDM* or *Euler EDM*\n- [KOALA 700M](https://github.com/youngwanLEE/sdxl-koala)\n  - another very fast & light sdxl model where original unet was compressed and distilled to 54% of original size  \n  - download using networks -> reference\n  - *note* to download fp16 variant (recommended), set settings -> diffusers -> preferred model variant  \n- [LEdit++](https://leditsplusplus-project.static.hf.space/index.html)\n  - context aware img2img method with image analysis and positive/negative prompt handling  \n  - enable via img2img -> scripts -> ledit\n  - uses following params from standard img2img: cfg scale (recommended ~3), steps (recommended ~50), denoise strength (recommended ~0.7)\n  - can use postive and/or negative prompt to guide editing process\n    - positive prompt: what to enhance, strength and threshold for auto-masking\n    - negative prompt: what to remove, strength and threshold for auto-masking  \n  - *note*: not compatible with model offloading\n- **Second Pass / Refine**\n  - independent upscale and hires options: run hires without upscale or upscale without hires or both\n  - upscale can now run 0.1-8.0 scale and will also run if enabled at 1.0 to allow for upscalers that simply improve image quality\n  - update ui section to reflect changes\n  - *note*: behavior using backend:original is unchanged for backwards compatibilty\n- **Visual Query** visual query & answer in process tab  \n  - go to process -> visual query  \n  - ask your questions, e.g. \"describe the image\", \"what is behind the subject\", \"what are predominant colors of the image?\"\n  - primary model is [moondream2](https://github.com/vikhyat/moondream), a *tiny* 1.86B vision language model  \n    *note*: its still 3.7GB in size, so not really tiny  \n  - additional support for multiple variations of several base models: *GIT, BLIP, ViLT, PIX*, sizes range from 0.3 to 1.7GB  \n- **Video**\n  - **Image2Video**\n    - new module for creating videos from images  \n    - simply enable from *img2img -> scripts -> image2video*  \n    - model is auto-downloaded on first use\n    - based on [VGen](https://huggingface.co/ali-vilab/i2vgen-xl)  \n  - **Stable Video Diffusion**\n    - updated with *SVD 1.0, SVD XT 1.0 and SVD XT 1.1*\n    - models are auto-downloaded on first use\n    - simply enable from *img2img -> scripts -> stable video diffusion*  \n    - for svd 1.0, use frames=~14, for xt models use frames=~25\n- **Composable LoRA**, thanks @AI-Casanova\n  - control lora strength for each step\n    for example: `<xxx:0.1@0,0.9@1>` means strength=0.1 for step at 0% and intepolate towards strength=0.9 for step at 100%\n  - *note*: this is a very experimental feature and may not work as expected\n- **Control**\n  - added *refiner/hires* workflows\n  - added resize methods to before/after/mask: fixed, crop, fill\n- **Styles**: styles are not just for prompts!\n  - new styles editor: *networks -> styles -> edit*\n  - styles can apply generate parameters, for example to have a style that enables and configures hires:  \n    parameters=`enable_hr: True, hr_scale: 2, hr_upscaler: Latent Bilinear antialias, hr_sampler_name: DEIS, hr_second_pass_steps: 20, denoising_strength: 0.5`\n  - styles can apply wildcards to prompts, for example:  \n    wildcards=`movie=mad max, dune, star wars, star trek; intricate=realistic, color sketch, pencil sketch, intricate`\n  - as usual, you can apply any number of styles so you can choose which settings are applied and in which order and which wildcards are used\n- **UI**\n  - *aspect-ratio** add selector and lock to width/height control  \n    allowed aspect ration can be configured via *settings -> user interface*  \n  - *interrogate* tab is now merged into *process* tab  \n  - *image viewer* now displays image metadata\n  - *themes* improve on-the-fly switching\n  - *log monitor* flag server warnings/errors and overall improve display\n  - *control* separate processor settings from unit settings\n- **Face HiRes**\n  - new *face restore* option, works similar to well-known *adetailer* by running an inpaint on detected faces but with just a checkbox to enable/disable  \n  - set as default face restorer in settings -> postprocessing  \n  - disabled by default, to enable simply check *face restore* in your generate advanced settings  \n  - strength, steps and sampler are set using by hires section in refine menu  \n  - strength can be overriden in settings -> postprocessing  \n  - will use secondary prompt and secondary negative prompt if present in refine  \n- **Watermarking**\n  - SD.Next disables all known watermarks in models, but does allow user to set custom watermark  \n  - see *settings -> image options -> watermarking*  \n  - invisible watermark: using steganogephy  \n  - image watermark: overlaid on top of image  \n- **Reference models**\n  - additional reference models available for single-click download & run:\n    *Stable Cascade, Stable Cascade lite, Stable Video Diffusion XT 1.1*  \n  - reference models will now download *fp16* variation by default  \n  - reference models will print recommended settings to log if present\n  - new setting in extra network: *use reference values when available*  \n    disabled by default, if enabled will force use of reference settings for models that have them\n- **Samplers**\n  - [TCD](https://mhh0318.github.io/tcd/): Trajectory Consistency Distillation  \n    new sampler that produces consistent results in a very low number of steps (comparable to LCM but without reliance on LoRA)  \n    for best results, use with TCD LoRA: <https://huggingface.co/h1t/TCD-SDXL-LoRA>\n  - *DPM++ 2M EDM* and *Euler EDM*  \n    EDM is a new solver algorithm currently available for DPM++2M and Euler samplers  \n    Note that using EDM samplers with non-EDM optimized models will provide just noise and vice-versa  \n- **Improvements**\n  - **FaceID** extend support for LoRA, HyperTile and FreeU, thanks @Trojaner\n  - **Tiling** now extends to both Unet and VAE producing smoother outputs, thanks @AI-Casanova\n  - new setting in image options: *include mask in output*\n  - improved params parsing from from prompt string and styles\n  - default theme updates and additional built-in theme *black-gray*\n  - support models with their own YAML model config files\n  - support models with their own JSON per-component config files, for example: `playground-v2.5_vae.config`\n  - prompt can have comments enclosed with `/*` and `*/`  \n    comments are extracted from prompt and added to image metadata  \n- **ROCm**  \n  - add **ROCm** 6.0 nightly option to installer, thanks @jicka\n  - add *flash attention* support for rdna3, thanks @Disty0  \n    install flash_attn package for rdna3 manually and enable *flash attention* from *compute settings*  \n    to install flash_attn, activate the venv and run `pip install -U git+https://github.com/ROCm/flash-attention@howiejay/navi_support`  \n- **IPEX**\n  - disabled IPEX Optimize by default  \n- **API**\n  - add preprocessor api endpoints  \n    GET:`/sdapi/v1/preprocessors`, POST:`/sdapi/v1/preprocess`, sample script:`cli/simple-preprocess.py`\n  - add masking api endpoints  \n    GET:`/sdapi/v1/masking`, POST:`/sdapi/v1/mask`, sample script:`cli/simple-mask.py`\n- **Internal**\n  - improved vram efficiency for model compile, thanks @Disty0\n  - **stable-fast** compatibility with torch 2.2.1  \n  - remove obsolete textual inversion training code\n  - remove obsolete hypernetworks training code\n- **Refiner** validated workflows:\n  - Fully functional: SD15 + SD15, SDXL + SDXL, SDXL + SDXL-R\n  - Functional, but result is not as good: SD15 + SDXL, SDXL + SD15, SD15 + SDXL-R\n- **SDXL Lightning** models just-work, just makes sure to set CFG Scale to 0  \n    and choose a best-suited sampler, it may not be the one youre used to (e.g. maybe even basic Euler)  \n- **Fixes**\n  - improve *model cpu offload* compatibility\n  - improve *model sequential offload* compatibility\n  - improve *bfloat16* compatibility\n  - improve *xformers* installer to match cuda version and install triton\n  - fix extra networks refresh\n  - fix *sdp memory attention* in backend original\n  - fix autodetect sd21 models\n  - fix api info endpoint\n  - fix *sampler eta* in xyz grid, thanks @AI-Casanova\n  - fix *requires_aesthetics_score* errors\n  - fix t2i-canny\n  - fix *differenital diffusion* for manual mask, thanks @23pennies\n  - fix ipadapter apply/unapply on batch runs\n  - fix control with multiple units and override images\n  - fix control with hires\n  - fix control-lllite\n  - fix font fallback, thanks @NetroScript\n  - update civitai downloader to handler new metadata\n  - improve control error handling\n  - use default model variant if specified variant doesnt exist\n  - use diffusers lora load override for *lcm/tcd/turbo loras*\n  - exception handler around vram memory stats gather\n  - improve ZLUDA installer with `--use-zluda` cli param, thanks @lshqqytiger\n\n## Update for 2024-02-22\n\nOnly 3 weeks since last release, but heres another feature-packed one!\nThis time release schedule was shorter as we wanted to get some of the fixes out faster.\n\n### Highlights 2024-02-22\n\n- **IP-Adapters** & **FaceID**: multi-adapter and multi-image suport  \n- New optimization engines: [DeepCache](https://github.com/horseee/DeepCache), [ZLUDA](https://github.com/vosen/ZLUDA) and **Dynamic Attention Slicing**  \n- New built-in pipelines: [Differential diffusion](https://github.com/exx8/differential-diffusion) and [Regional prompting](https://github.com/huggingface/diffusers/blob/main/examples/community/README.md#regional-prompting-pipeline)  \n- Big updates to: **Outpainting** (noised-edge-extend), **Clip-skip** (interpolate with non-integrer values!), **CFG end** (prevent overburn on high CFG scales), **Control** module masking functionality  \n- All reported issues since the last release are addressed and included in this release  \n\nFurther details:  \n- For basic instructions, see [README](https://github.com/vladmandic/automatic/blob/master/README.md)  \n- For more details on all new features see full [CHANGELOG](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md)  \n- For documentation, see [WiKi](https://github.com/vladmandic/automatic/wiki)\n- [Discord](https://discord.com/invite/sd-next-federal-batch-inspectors-1101998836328697867) server  \n\n### Full ChangeLog for 2024-02-22\n\n- **Improvements**:\n  - **IP Adapter** major refactor  \n    - support for **multiple input images** per each ip adapter  \n    - support for **multiple concurrent ip adapters**  \n      *note*: you cannot mix & match ip adapters that use different *CLiP* models, for example `Base` and `Base ViT-G`  \n    - add **adapter start/end** to settings, thanks @AI-Casanova  \n      having adapter start late can help with better control over composition and prompt adherence  \n      having adapter end early can help with overal quality and performance  \n    - unified interface in txt2img, img2img and control  \n    - enhanced xyz grid support  \n  - **FaceID** now also works with multiple input images!  \n  - [Differential diffusion](https://github.com/exx8/differential-diffusion)  \n    img2img generation where you control strength of each pixel or image area  \n    can be used with manually created masks or with auto-generated depth-maps\n    uses general denoising strength value  \n    simply enable from *img2img -> scripts -> differential diffusion*  \n    *note*: supports sd15 and sdxl models  \n  - [Regional prompting](https://github.com/huggingface/diffusers/blob/main/examples/community/README.md#regional-prompting-pipeline) as a built-in solution  \n    usage is same as original implementation from @hako-mikan  \n    click on title to open docs and see examples of full syntax on how to use it  \n    simply enable from *scripts -> regional prompting*  \n    *note*: supports sd15 models only  \n  - [DeepCache](https://github.com/horseee/DeepCache) model acceleration  \n    it can produce massive speedups (2x-5x) with no overhead, but with some loss of quality  \n    *settings -> compute -> model compile -> deep-cache* and *settings -> compute -> model compile -> cache interval*  \n  - [ZLUDA](https://github.com/vosen/ZLUDA) experimental support, thanks @lshqqytiger  \n    - ZLUDA is CUDA wrapper that can be used for GPUs without native support\n    - best use case is *AMD GPUs on Windows*, see [wiki](https://github.com/vladmandic/automatic/wiki/ZLUDA) for details  \n  - **Outpaint** control outpaint now uses new alghorithm: noised-edge-extend  \n    new method allows for much larger outpaint areas in a single pass, even outpaint 512->1024 works well  \n    note that denoise strength should be increased for larger the outpaint areas, for example outpainting 512->1024 works well with denoise 0.75  \n    outpaint can run in *img2img* mode (default) and *inpaint* mode where original image is masked (if inpaint masked only is selected)  \n  - **Clip-skip** reworked completely, thanks @AI-Casanova & @Disty0  \n    now clip-skip range is 0-12 where previously lowest value was 1 (default is still 1)  \n    values can also be decimal to interpolate between different layers, for example `clip-skip: 1.5`, thanks @AI-Casanova  \n  - **CFG End** new param to control image generation guidance, thanks @AI-Casanova  \n    sometimes you want strong control over composition, but you want it to stop at some point  \n    for example, when used with ip-adapters or controlnet, high cfg scale can overpower the guided image  \n  - **Control**\n    - when performing inpainting, you can specify processing resolution using **size->mask**  \n    - units now have extra option to re-use current preview image as processor input  \n  - **Cross-attention** refactored cross-attention methods, thanks @Disty0  \n    - for backend:original, its unchanged: SDP, xFormers, Doggettxs, InvokeAI, Sub-quadratic, Split attention  \n    - for backend:diffuers, list is now: SDP, xFormers, Batch matrix-matrix, Split attention, Dynamic Attention BMM, Dynamic Attention SDP  \n      note: you may need to update your settings! Attention Slicing is renamed to Split attention  \n    - for ROCm, updated default cross-attention to Scaled Dot Product  \n  - **Dynamic Attention Slicing**, thanks @Disty0  \n    - dynamically slices attention queries in order to keep them under the slice rate  \n      slicing gets only triggered if the query size is larger than the slice rate to gain performance  \n      *Dynamic Attention Slicing BMM* uses *Batch matrix-matrix*  \n      *Dynamic Attention Slicing SDP* uses *Scaled Dot Product*  \n    - *settings -> compute settings -> attention -> dynamic attention slicing*  \n  - **ONNX**:  \n    - allow specify onnx default provider and cpu fallback  \n      *settings -> diffusers*  \n    - allow manual install of specific onnx flavor  \n      *settings -> onnx*  \n    - better handling of `fp16` models/vae, thanks @lshqqytiger  \n  - **OpenVINO** update to `torch 2.2.0`, thanks @Disty0  \n  - **HyperTile** additional options thanks @Disty0  \n    - add swap size option  \n    - add use only for hires pass option  \n  - add `--theme` cli param to force theme on startup  \n  - add `--allow-paths` cli param to add additional paths that are allowed to be accessed via web, thanks @OuticNZ  \n- **Wiki**:\n  - added benchmark notes for IPEX, OpenVINO and Olive  \n  - added ZLUDA wiki page  \n- **Internal**\n  - update dependencies  \n  - refactor txt2img/img2img api  \n  - enhanced theme loader  \n  - add additional debug env variables  \n  - enhanced sdp cross-optimization control  \n    see *settings -> compute settings*  \n  - experimental support for *python 3.12*  \n- **Fixes**:  \n  - add variation seed to diffusers txt2img, thanks @AI-Casanova  \n  - add cmd param `--skip-env` to skip setting of environment parameters during sdnext load  \n  - handle extensions that install conflicting versions of packages  \n    `onnxruntime`, `opencv2-python`  \n  - installer refresh package cache on any install  \n  - fix embeddings registration on server startup, thanks @AI-Casanova  \n  - ipex handle dependencies, thanks @Disty0  \n  - insightface handle dependencies  \n  - img2img mask blur and padding  \n  - xyz grid handle ip adapter name and scale  \n  - lazy loading of image may prevent metadata from being loaded on time  \n  - allow startup without valid models folder  \n  - fix interrogate api endpoint  \n  - control fix resize causing runtime errors  \n  - control fix processor override image after processor change  \n  - control fix display grid with batch  \n  - control restore pipeline before running scripts/extensions  \n  - handle pipelines that return dict instead of object  \n  - lora use strict name matching if preferred option is by-filename  \n  - fix inpaint mask only for diffusers  \n  - fix vae dtype mismatch, thanks @Disty0  \n  - fix controlnet inpaint mask  \n  - fix theme list refresh  \n  - fix extensions update information in ui  \n  - fix taesd with bfloat16\n  - fix model merge manual merge settings, thanks @AI-Casanova  \n  - fix gradio instant update issues for textboxes in quicksettings  \n  - fix rembg missing dependency  \n  - bind controlnet extension to last known working commit, thanks @Aptronymist  \n  - prompts-from-file fix resizable prompt area  \n\n## Update for 2024-02-07\n\nAnother big release just hit the shelves!\n\n### Highlights 2024-02-07  \n\n- A lot more functionality in the **Control** module:\n  - Inpaint and outpaint support, flexible resizing options, optional hires  \n  - Built-in support for many new processors and models, all auto-downloaded on first use  \n  - Full support for scripts and extensions  \n- Complete **Face** module  \n  implements all variations of **FaceID**, **FaceSwap** and latest **PhotoMaker** and **InstantID**  \n- Much enhanced **IPAdapter** modules  \n- Brand new **Intelligent masking**, manual or automatic  \n  Using ML models (*LAMA* object removal, *REMBG* background removal, *SAM* segmentation, etc.) and with live previews  \n  With granular blur, erode and dilate controls  \n- New models and pipelines:  \n  **Segmind SegMoE**, **Mixture Tiling**, **InstaFlow**, **SAG**, **BlipDiffusion**  \n- Massive work integrating latest advances with [OpenVINO](https://github.com/vladmandic/automatic/wiki/OpenVINO), [IPEX](https://github.com/vladmandic/automatic/wiki/Intel-ARC) and [ONNX Olive](https://github.com/vladmandic/automatic/wiki/ONNX-Runtime-&-Olive)\n- Full control over brightness, sharpness and color shifts and color grading during generate process directly in latent space  \n- **Documentation**! This was a big one, with a lot of new content and updates in the [WiKi](https://github.com/vladmandic/automatic/wiki)  \n\nPlus welcome additions to **UI performance, usability and accessibility** and flexibility of deployment as well as **API** improvements  \nAnd it also includes fixes for all reported issues so far  \n\nAs of this release, default backend is set to **diffusers** as its more feature rich than **original** and supports many additional models (original backend does remain as fully supported)  \n\nAlso, previous versions of **SD.Next** were tuned for balance between performance and resource usage.  \nWith this release, focus is more on performance.  \nSee [Benchmark](https://github.com/vladmandic/automatic/wiki/Benchmark) notes for details, but as a highlight, we are now hitting **~110-150 it/s** on a standard nVidia RTX4090 in optimal scenarios!  \n\nFurther details:  \n- For basic instructions, see [README](https://github.com/vladmandic/automatic/blob/master/README.md)  \n- For more details on all new features see full [CHANGELOG](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md)  \n- For documentation, see [WiKi](https://github.com/vladmandic/automatic/wiki)\n\n### Full ChangeLog 2024-02-07  \n\n- Heavily updated [Wiki](https://github.com/vladmandic/automatic/wiki)  \n- **Control**:  \n  - new docs:\n    - [Control overview](https://github.com/vladmandic/automatic/wiki/Control)  \n    - [Control guide](https://github.com/vladmandic/automatic/wiki/Control-Guide), thanks @Aptronymist  \n  - add **inpaint** support  \n    applies to both *img2img* and *controlnet* workflows  \n  - add **outpaint** support  \n    applies to both *img2img* and *controlnet* workflows  \n    *note*: increase denoising strength since outpainted area is blank by default  \n  - new **mask** module  \n    - granular blur (gaussian), erode (reduce or remove noise) and dilate (pad or expand)  \n    - optional **live preview**  \n    - optional **auto-segmentation** using ml models  \n      auto-segmentation can be done using **segment-anything** models or **rembg** models  \n      *note*: auto segmentation will automatically expand user-masked area to segments that include current user mask  \n    - optional **auto-mask**  \n      if you dont provide mask or mask is empty, you can instead use auto-mask to automatically generate mask  \n      this is especially useful if you want to use advanced masking on batch or video inputs and dont want to manually mask each image  \n      *note*: such auto-created mask is also subject to all other selected settings such as auto-segmentation, blur, erode and dilate  \n    - optional **object removal** using LaMA model  \n      remove selected objects from images with a single click  \n      works best when combined with auto-segmentation to remove smaller objects  \n    - masking can be combined with control processors in which case mask is applied before processor  \n    - unmasked part of can is optionally applied to final image as overlay, see settings `mask_apply_overlay`  \n  - support for many additional controlnet models  \n    now built-in models include 30+ SD15 models and 15+ SDXL models  \n  - allow **resize** both *before* and *after* generate operation  \n    this allows for workflows such as: *image -> upscale or downscale -> generate -> upscale or downscale -> output*  \n    providing more flexibility and than standard hires workflow  \n    *note*: resizing before generate can be done using standard upscalers or latent\n  - implicit **hires**  \n    since hires is only used for txt2img, control reuses existing resize functionality\n    any image size is used as txt2img target size  \n    but if resize scale is also set its used to additionally upscale image after initial txt2img and for hires pass  \n  - add support for **scripts** and **extensions**  \n    you can now combine control workflow with your favorite script or extension  \n    *note* extensions that are hard-coded for txt2img or img2img tabs may not work until they are updated  \n  - add **depth-anything** depth map processor and trained controlnet  \n  - add **marigold** depth map processor  \n    this is state-of-the-art depth estimation model, but its quite heavy on resources  \n  - add **openpose xl** controlnet  \n  - add blip/booru **interrogate** functionality to both input and output images  \n  - configurable output folder in settings  \n  - auto-refresh available models on tab activate  \n  - add image preview for override images set per-unit  \n  - more compact unit layout  \n  - reduce usage of temp files  \n  - add context menu to action buttons  \n  - move ip-adapter implementation to control tabs  \n  - resize by now applies to input image or frame individually  \n    allows for processing where input images are of different sizes  \n  - support controlnets with non-default yaml config files  \n  - implement resize modes for override images  \n  - allow any selection of units  \n  - dynamically install depenencies required by specific processors  \n  - fix input image size  \n  - fix video color mode  \n  - fix correct image mode  \n  - fix batch/folder/video modes  \n  - fix processor switching within same unit  \n  - fix pipeline switching between different modes  \n- **Face** module  \n  implements all variations of **FaceID**, **FaceSwap** and latest **PhotoMaker** and **InstantID**  \n  simply select from scripts and choose your favorite method and model  \n  *note*: all models are auto-downloaded on first use  \n  - [FaceID](https://huggingface.co/h94/IP-Adapter-FaceID)  \n    - faceid guides image generation given the input image  \n    - full implementation for *SD15* and *SD-XL*, to use simply select from *Scripts*  \n      **Base** (93MB) uses *InsightFace* to generate face embeds and *OpenCLIP-ViT-H-14* (2.5GB) as image encoder  \n      **Plus** (150MB) uses *InsightFace* to generate face embeds and *CLIP-ViT-H-14-laion2B* (3.8GB) as image encoder  \n      **SDXL** (1022MB) uses *InsightFace* to generate face embeds and *OpenCLIP-ViT-bigG-14* (3.7GB) as image encoder  \n  - [FaceSwap](https://github.com/deepinsight/insightface/blob/master/examples/in_swapper/README.md)  \n    - face swap performs face swapping at the end of generation  \n    - based on InsightFace in-swapper  \n  - [PhotoMaker](https://github.com/TencentARC/PhotoMaker)  \n    - for *SD-XL* only  \n    - new model from TenencentARC using similar concept as IPAdapter, but with different implementation and  \n      allowing full concept swaps between input images and generated images using trigger words  \n    - note: trigger word must match exactly one term in prompt for model to work  \n  - [InstantID](https://github.com/InstantID/InstantID)  \n    - for *SD-XL* only  \n    - based on custom trained ip-adapter and controlnet combined concepts  \n    - note: controlnet appears to be heavily watermarked  \n  - enable use via api, thanks @trojaner  \n- [IPAdapter](https://huggingface.co/h94/IP-Adapter)  \n  - additional models for *SD15* and *SD-XL*, to use simply select from *Scripts*:  \n    **SD15**: Base, Base ViT-G, Light, Plus, Plus Face, Full Face  \n    **SDXL**: Base SDXL, Base ViT-H SDXL, Plus ViT-H SDXL, Plus Face ViT-H SDXL  \n  - enable use via api, thanks @trojaner  \n- [Segmind SegMoE](https://github.com/segmind/segmoe)  \n  - initial support for reference models  \n    download&load via network -> models -> reference -> **SegMoE SD 4x2** (3.7GB), **SegMoE XL 2x1** (10GB), **SegMoE XL 4x2**  \n  - note: since segmoe is basically sequential mix of unets from multiple models, it can get large  \n    SD 4x2 is ~4GB, XL 2x1 is ~10GB and XL 4x2 is 18GB  \n  - supports lora, thanks @AI-Casanova\n  - support for create and load custom mixes will be added in the future  \n- [Mixture Tiling](https://arxiv.org/abs/2302.02412)  \n  - uses multiple prompts to guide different parts of the grid during diffusion process  \n  - can be used ot create complex scenes with multiple subjects  \n  - simply select from scripts  \n- [Self-attention guidance](https://github.com/SusungHong/Self-Attention-Guidance)  \n  - simply select scale in advanced menu  \n  - can drastically improve image coherence as well as reduce artifacts  \n  - note: only compatible with some schedulers  \n- [FreeInit](https://tianxingwu.github.io/pages/FreeInit/) for **AnimateDiff**\n  - greatly improves temporal consistency of generated outputs  \n  - all options are available in animateddiff script  \n- [SalesForce BlipDiffusion](https://huggingface.co/docs/diffusers/api/pipelines/blip_diffusion)  \n  - model can be used to place subject in a different context  \n  - requires input image  \n  - last word in prompt and negative prompt will be used as source and target subjects  \n  - sampler must be set to default before loading the model  \n- [InstaFlow](https://github.com/gnobitab/InstaFlow)  \n  - another take on super-fast image generation in a single step  \n  - set *sampler:default, steps:1, cfg-scale:0*  \n  - load from networks -> models -> reference  \n- **Improvements**  \n  - **ui**  \n    - check version and **update** SD.Next via UI  \n      simply go to: settings -> update\n    - globally configurable **font size**  \n      will dynamically rescale ui depending on settings -> user interface  \n    - built-in **themes** can be changed on-the-fly  \n      this does not work with gradio-default themes as css is created by gradio itself  \n    - two new **themes**: *simple-dark* and *simple-light*  \n    - modularized blip/booru interrogate  \n      now appears as toolbuttons on image/gallery output  \n    - faster browser page load  \n    - update hints, thanks @brknsoul  \n    - cleanup settings  \n  - **server**\n    - all move/offload options are disable by default for optimal performance  \n      enable manually if low on vram  \n  - **server startup**: performance  \n    - reduced module imports  \n      ldm support is now only loaded when running in backend=original  \n    - faster extension load  \n    - faster json parsing  \n    - faster lora indexing  \n    - lazy load optional imports  \n    - batch embedding load, thanks @midcoastal and @AI-Casanova  \n      10x+ faster embeddings load for large number of embeddings, now works for 1000+ embeddings  \n    - file and folder list caching, thanks @midcoastal\n      if you have a lot of files and and/or are using slower or non-local storage, this speeds up file access a lot  \n    - add `SD_INSTALL_DEBUG` env variable to trace all `git` and `pip` operations\n  - **extra networks**  \n    - 4x faster civitai metadata and previews lookup  \n    - better display and selection of tags & trigger words  \n      if hashes are calculated, trigger words will only be displayed for actual model version  \n    - better matching of previews  \n    - better search, including searching for multiple keywords or using full regex  \n      see wiki page for more details on syntax  \n      thanks @NetroScript  \n    - reduce html overhead  \n  - **model compression**, thanks @Disty0  \n    - using built-in NNCF model compression, you can reduce the size of your models significantly  \n      example: up to 3.4GB of VRAM saved for SD-XL model!  \n    - see [wiki](https://github.com/vladmandic/automatic/wiki/Model-Compression-with-NNCF) for details  \n  - **embeddings**  \n    you can now use sd 1.5 embeddings with your sd-xl models!, thanks @AI-Casanova  \n    conversion is done on-the-fly, is completely transparent and result is an approximation of embedding  \n    to enable: settings->extra networks->auto-convert embeddings  \n  - **offline deployment**: allow deployment without git clone  \n    for example, you can now deploy a zip of the sdnext folder  \n  - **latent upscale**: updated latent upscalers (some are new)  \n    *nearest, nearest-exact, area, bilinear, bicubic, bilinear-antialias, bicubic-antialias*\n  - **scheduler**: added `SA Solver`  \n  - **model load to gpu**  \n    new option in settings->diffusers allowing models to be loaded directly to GPU while keeping RAM free  \n    this option is not compatible with any kind of model offloading as model is expected to stay in GPU  \n    additionally, all model-moves can now be traced with env variable `SD_MOVE_DEBUG`  \n  - **xyz grid**\n    - range control  \n      example: `5.0-6.0:3` will generate 3 images with values `5.0,5.5,6.0`  \n      example: `10-20:4` will generate 4 images with values `10,13,16,20`  \n    - continue on error  \n      now you can use xyz grid with different params and test which ones work and which dont  \n    - correct font scaling, thanks @nCoderGit  \n  - **hypertile**  \n    - enable vae tiling  \n    - add autodetect optimial value  \n      set tile size to 0 to use autodetected value  \n  - **cli**  \n    - `sdapi.py` allow manual api invoke  \n      example: `python cli/sdapi.py /sdapi/v1/sd-models`  \n    - `image-exif.py` improve metadata parsing  \n    - `install-sf` helper script to automatically find best available stable-fast package for the platform  \n  - **memory**: add ram usage monitoring in addition to gpu memory usage monitoring  \n  - **vae**: enable taesd batch decode  \n    enable/disable with settings -> diffusers > vae slicing  \n- **compile**\n  - new option: **fused projections**  \n    pretty much free 5% performance boost for compatible models  \n    enable in settings -> compute settings  \n  - new option: **dynamic quantization** (experimental)  \n    reduces memory usage and increases performance  \n    enable in settings -> compute settings  \n    best used together with torch compile: *inductor*  \n    this feature is highly experimental and will evolve over time  \n    requires nightly versions of `torch` and `torchao`  \n    > `pip install -U --pre torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/cu121`  \n    > `pip install -U git+https://github.com/pytorch-labs/ao`  \n  - new option: **compile text encoder** (experimental)  \n- **correction**  \n  - new section in generate, allows for image corrections during generataion directly in latent space  \n  - adds *brightness*, *sharpness* and *color* controls, thanks @AI-Casanova\n  - adds *color grading* controls, thanks @AI-Casanova\n  - replaces old **hdr** section\n- **IPEX**, thanks @disty0  \n  - see [wiki](https://github.com/vladmandic/automatic/wiki/Intel-ARC) for details  \n  - rewrite ipex hijacks without CondFunc  \n    improves compatibilty and performance  \n    fixes random memory leaks  \n  - out of the box support for Intel Data Center GPU Max Series  \n  - remove IPEX / Torch 2.0 specific hijacks  \n  - add `IPEX_SDPA_SLICE_TRIGGER_RATE`, `IPEX_ATTENTION_SLICE_RATE` and `IPEX_FORCE_ATTENTION_SLICE` env variables  \n  - disable 1024x1024 workaround if the GPU supports 64 bit  \n  - fix lock-ups at very high resolutions  \n- **OpenVINO**, thanks @disty0  \n  - see [wiki](https://github.com/vladmandic/automatic/wiki/OpenVINO) for details  \n  - **quantization support with NNCF**  \n    run 8 bit directly without autocast  \n    enable *OpenVINO Quantize Models with NNCF* from *Compute Settings*  \n  - **4-bit support with NNCF**  \n    enable *Compress Model weights with NNCF* from *Compute Settings* and set a 4-bit NNCF mode  \n    select both CPU and GPU from the device selection if you want to use 4-bit or 8-bit modes on GPU  \n  - experimental support for *Text Encoder* compiling  \n    OpenVINO is faster than IPEX now  \n  - update to OpenVINO 2023.3.0  \n  - add device selection to `Compute Settings`  \n    selecting multiple devices will use `HETERO` device  \n  - remove `OPENVINO_TORCH_BACKEND_DEVICE` env variable  \n  - reduce system memory usage after compile  \n  - fix cache loading with multiple models  \n- **Olive** support, thanks @lshqqytiger\n  - fully merged in in [wiki](https://github.com/vladmandic/automatic/wiki/ONNX-Runtime-&-Olive), see wiki for details  \n  - as a highlight, 4-5 it/s using DirectML on AMD GPU translates to 23-25 it/s using ONNX/Olive!  \n- **fixes**  \n  - civitai model download: enable downloads of embeddings\n  - ipadapter: allow changing of model/image on-the-fly  \n  - ipadapter: fix fallback of cross-attention on unload  \n  - rebasin iterations, thanks @AI-Casanova\n  - prompt scheduler, thanks @AI-Casanova\n  - python: fix python 3.9 compatibility  \n  - sdxl: fix positive prompt embeds\n  - img2img: clip and blip interrogate  \n  - img2img: sampler selection offset  \n  - img2img: support variable aspect ratio without explicit resize  \n  - cli: add `simple-upscale.py` script  \n  - cli: fix cmd args parsing  \n  - cli: add `run-benchmark.py` script  \n  - api: add `/sdapi/v1/version` endpoint\n  - api: add `/sdapi/v1/platform` endpoint\n  - api: return current image in progress api if requested  \n  - api: sanitize response object  \n  - api: cleanup error logging  \n  - api: fix api-only errors  \n  - api: fix image to base64\n  - api: fix upscale  \n  - refiner: fix use of sd15 model as refiners in second pass  \n  - refiner: enable none as option in xyz grid  \n  - sampler: add sampler options info to metadata\n  - sampler: guard against invalid sampler index  \n  - sampler: add img2img_extra_noise option\n  - config: reset default cfg scale to 6.0  \n  - hdr: fix math, thanks @AI-Casanova\n  - processing: correct display metadata  \n  - processing: fix batch file names  \n  - live preview: fix when using `bfloat16`  \n  - live preview: add thread locking  \n  - upscale: fix ldsr\n  - huggingface: handle fallback model variant on load  \n  - reference: fix links to models and use safetensors where possible  \n  - model merge: unbalanced models where not all keys are present, thanks @AI-Casanova\n  - better sdxl model detection\n  - global crlf->lf switch  \n  - model type switch if there is loaded submodels  \n  - cleanup samplers use of compute devices, thanks @Disty0  \n- **other**  \n  - extensions `sd-webui-controlnet` is locked to commit `ecd33eb` due to breaking changes  \n  - extension `stable-diffusion-webui-images-browser` is locked to commit `27fe4a7` due to breaking changes  \n  - updated core requirements  \n  - fully dynamic pipelines  \n    pipeline switch is now done on-the-fly and does not require manual initialization of individual components  \n    this allows for quick implementation of new pipelines  \n    see `modules/sd_models.py:switch_pipe` for details  \n  - major internal ui module refactoring  \n    this may cause compatibility issues if an extension is doing a direct import from `ui.py`  \n    in which case, report it so we can add a compatibility layer  \n  - major public api refactoring  \n    this may cause compatibility issues if an extension is doing a direct import from `api.py` or `models.py`  \n    in which case, report it so we can add a compatibility layer  \n\n## Update for 2023-12-29\n\nTo wrap up this amazing year, were releasing a new version of [SD.Next](https://github.com/vladmandic/automatic), this one is absolutely massive!  \n\n### Highlights 2023-12-29\n\n- Brand new Control module for *text, image, batch and video* processing  \n  Native implementation of all control methods for both *SD15* and *SD-XL*  \n  ▹ **ControlNet | ControlNet XS | Control LLLite | T2I Adapters | IP Adapters**  \n  For details, see [Wiki](https://github.com/vladmandic/automatic/wiki/Control) documentation:  \n- Support for new models types out-of-the-box  \n  This brings number of supported t2i/i2i model families to 13!  \n  ▹ **Stable Diffusion 1.5/2.1 | SD-XL | LCM | Segmind | Kandinsky | Pixart-α | Würstchen | aMUSEd | DeepFloyd IF | UniDiffusion | SD-Distilled | BLiP Diffusion | etc.**  \n- New video capabilities:  \n  ▹ **AnimateDiff | SVD | ModelScope | ZeroScope**  \n- Enhanced platform support  \n  ▹ **Windows | Linux | MacOS** with **nVidia | AMD | IntelArc | DirectML | OpenVINO | ONNX+Olive** backends  \n- Better onboarding experience (first install)  \n  with all model types available for single click download & load (networks -> reference)  \n- Performance optimizations!\n  For comparisment of different processing options and compile backends, see [Wiki](https://github.com/vladmandic/automatic/wiki/Benchmark)  \n  As a highlight, were reaching **~100 it/s** (no tricks, this is with full features enabled and end-to-end on a standard nVidia RTX4090)  \n- New [custom pipelines](https://github.com/vladmandic/automatic/blob/dev/scripts/example.py) framework for quickly porting any new pipeline  \n\nAnd others improvements in areas such as: Upscaling (up to 8x now with 40+ available upscalers), Inpainting (better quality), Prompt scheduling, new Sampler options, new LoRA types, additional UI themes, better HDR processing, built-in Video interpolation, parallel Batch processing, etc.  \n\nPlus some nifty new modules such as **FaceID** automatic face guidance using embeds during generation and **Depth 3D** image to 3D scene\n\n### Full ChangeLog 2023-12-29\n\n- **Control**  \n  - native implementation of all image control methods:  \n    **ControlNet**, **ControlNet XS**, **Control LLLite**, **T2I Adapters** and **IP Adapters**  \n  - top-level **Control** next to **Text** and **Image** generate  \n  - supports all variations of **SD15** and **SD-XL** models  \n  - supports *Text*, *Image*, *Batch* and *Video* processing  \n  - for details and list of supported models and workflows, see Wiki documentation:  \n    <https://github.com/vladmandic/automatic/wiki/Control>  \n- **Diffusers**  \n  - [Segmind Vega](https://huggingface.co/segmind/Segmind-Vega) model support  \n    - small and fast version of **SDXL**, only 3.1GB in size!  \n    - select from *networks -> reference*  \n  - [aMUSEd 256](https://huggingface.co/amused/amused-256) and [aMUSEd 512](https://huggingface.co/amused/amused-512) model support  \n    - lightweigt models that excel at fast image generation  \n    - *note*: must select: settings -> diffusers -> generator device: unset\n    - select from *networks -> reference*\n  - [Playground v1](https://huggingface.co/playgroundai/playground-v1), [Playground v2 256](https://huggingface.co/playgroundai/playground-v2-256px-base), [Playground v2 512](https://huggingface.co/playgroundai/playground-v2-512px-base), [Playground v2 1024](https://huggingface.co/playgroundai/playground-v2-1024px-aesthetic) model support  \n    - comparable to SD15 and SD-XL, trained from scratch for highly aesthetic images  \n    - simply select from *networks -> reference* and use as usual  \n  - [BLIP-Diffusion](https://dxli94.github.io/BLIP-Diffusion-website/)  \n    - img2img model that can replace subjects in images using prompt keywords  \n    - download and load by selecting from *networks -> reference -> blip diffusion*\n    - in image tab, select `blip diffusion` script\n  - [DemoFusion](https://github.com/PRIS-CV/DemoFusion) run your SDXL generations at any resolution!  \n    - in **Text** tab select *script* -> *demofusion*  \n    - *note*: GPU VRAM limits do not automatically go away so be careful when using it with large resolutions  \n      in the future, expect more optimizations, especially related to offloading/slicing/tiling,  \n      but at the moment this is pretty much experimental-only  \n  - [AnimateDiff](https://github.com/guoyww/animatediff/)  \n    - overall improved quality  \n    - can now be used with *second pass* - enhance, upscale and hires your videos!  \n  - [IP Adapter](https://github.com/tencent-ailab/IP-Adapter)  \n    - add support for **ip-adapter-plus_sd15, ip-adapter-plus-face_sd15 and ip-adapter-full-face_sd15**  \n    - can now be used in *xyz-grid*  \n  - **Text-to-Video**  \n    - in text tab, select `text-to-video` script  \n    - supported models: **ModelScope v1.7b, ZeroScope v1, ZeroScope v1.1, ZeroScope v2, ZeroScope v2 Dark, Potat v1**  \n      *if you know of any other t2v models youd like to see supported, let me know!*  \n    - models are auto-downloaded on first use  \n    - *note*: current base model will be unloaded to free up resources  \n  - **Prompt scheduling** now implemented for Diffusers backend, thanks @AI-Casanova\n  - **Custom pipelines** contribute by adding your own custom pipelines!  \n    - for details, see fully documented example:  \n      <https://github.com/vladmandic/automatic/blob/dev/scripts/example.py>  \n  - **Schedulers**  \n    - add timesteps range, changing it will make scheduler to be over-complete or under-complete  \n    - add rescale betas with zero SNR option (applicable to Euler, Euler a and DDIM, allows for higher dynamic range)  \n  - **Inpaint**  \n    - improved quality when using mask blur and padding  \n  - **UI**  \n    - 3 new native UI themes: **orchid-dreams**, **emerald-paradise** and **timeless-beige**, thanks @illu_Zn\n    - more dynamic controls depending on the backend (original or diffusers)  \n      controls that are not applicable in current mode are now hidden  \n    - allow setting of resize method directly in image tab  \n      (previously via settings -> upscaler_for_img2img)  \n- **Optional**\n  - **FaceID** face guidance during generation  \n    - also based on IP adapters, but with additional face detection and external embeddings calculation  \n    - calculates face embeds based on input image and uses it to guide generation  \n    - simply select from *scripts -> faceid*  \n    - *experimental module*: requirements must be installed manually:  \n        > pip install insightface ip_adapter  \n  - **Depth 3D** image to 3D scene\n    - delivered as an extension, install from extensions tab  \n      <https://github.com/vladmandic/sd-extension-depth3d>  \n    - creates fully compatible 3D scene from any image by using depth estimation  \n      and creating a fully populated mesh  \n    - scene can be freely viewed in 3D in the UI itself or downloaded for use in other applications  \n  - [ONNX/Olive](https://github.com/vladmandic/automatic/wiki/ONNX-Olive)  \n    - major work continues in olive branch, see wiki for details, thanks @lshqqytiger  \n      as a highlight, 4-5 it/s using DirectML on AMD GPU translates to 23-25 it/s using ONNX/Olive!  \n- **General**  \n  - new **onboarding**  \n    - if no models are found during startup, app will no longer ask to download default checkpoint  \n      instead, it will show message in UI with options to change model path or download any of the reference checkpoints  \n    - *extra networks -> models -> reference* section is now enabled for both original and diffusers backend  \n  - support for **Torch 2.1.2** (release) and **Torch 2.3** (dev)  \n  - **Process** create videos from batch or folder processing  \n      supports *GIF*, *PNG* and *MP4* with full interpolation, scene change detection, etc.  \n  - **LoRA**  \n    - add support for block weights, thanks @AI-Casanova  \n      example `<lora:SDXL_LCM_LoRA:1.0:in=0:mid=1:out=0>`  \n    - add support for LyCORIS GLora networks  \n    - add support for LoRA PEFT (*Diffusers*) networks  \n    - add support for Lora-OFT (*Kohya*) and Lyco-OFT (*Kohaku*) networks  \n    - reintroduce alternative loading method in settings: `lora_force_diffusers`  \n    - add support for `lora_fuse_diffusers` if using alternative method  \n      use if you have multiple complex loras that may be causing performance degradation  \n      as it fuses lora with model during load instead of interpreting lora on-the-fly  \n  - **CivitAI downloader** allow usage of access tokens for download of gated or private models  \n  - **Extra networks** new *settting -> extra networks -> build info on first access*  \n    indexes all networks on first access instead of server startup  \n  - **IPEX**, thanks @disty0  \n    - update to **Torch 2.1**  \n      if you get file not found errors, set `DISABLE_IPEXRUN=1` and run the webui with `--reinstall`  \n    - built-in *MKL* and *DPCPP* for IPEX, no need to install OneAPI anymore  \n    - **StableVideoDiffusion** is now supported with IPEX  \n    - **8 bit support with NNCF** on Diffusers backend  \n    - fix IPEX Optimize not applying with Diffusers backend  \n    - disable 32bit workarounds if the GPU supports 64bit  \n    - add `DISABLE_IPEXRUN` and `DISABLE_IPEX_1024_WA` environment variables  \n    - performance and compatibility improvements  \n  - **OpenVINO**, thanks @disty0  \n    - **8 bit support for CPUs**  \n    - reduce System RAM usage  \n    - update to Torch 2.1.2  \n    - add *Directory for OpenVINO cache* option to *System Paths*  \n    - remove Intel ARC specific 1024x1024 workaround  \n  - **HDR controls**  \n    - batch-aware for enhancement of multiple images or video frames  \n    - available in image tab  \n  - **Logging**\n    - additional *TRACE* logging enabled via specific env variables  \n      see <https://github.com/vladmandic/automatic/wiki/Debug> for details  \n    - improved profiling  \n      use with `--debug --profile`  \n    - log output file sizes  \n  - **Other**  \n    - **API** several minor but breaking changes to API behavior to better align response fields, thanks @Trojaner\n    - **Inpaint** add option `apply_overlay` to control if inpaint result should be applied as overlay or as-is  \n      can remove artifacts and hard edges of inpaint area but also remove some details from original  \n    - **chaiNNer** fix `NaN` issues due to autocast  \n    - **Upscale** increase limit from 4x to 8x given the quality of some upscalers  \n    - **Networks** fix sort  \n    - reduced default **CFG scale** from 6 to 4 to be more out-of-the-box compatibile with LCM/Turbo models\n    - disable google fonts check on server startup  \n    - fix torchvision/basicsr compatibility  \n    - fix styles quick save  \n    - add hdr settings to metadata  \n    - improve handling of long filenames and filenames during batch processing  \n    - do not set preview samples when using via api  \n    - avoid unnecessary resizes in img2img and inpaint  \n    - safe handling of config updates avoid file corruption on I/O errors  \n    - updated `cli/simple-txt2img.py` and `cli/simple-img2img.py` scripts  \n    - save `params.txt` regardless of image save status  \n    - update built-in log monitor in ui, thanks @midcoastal  \n    - major CHANGELOG doc cleanup, thanks @JetVarimax  \n    - major INSTALL doc cleanup, thanks JetVarimax  \n\n## Update for 2023-12-04\n\nWhats new? Native video in SD.Next via both **AnimateDiff** and **Stable-Video-Diffusion** - and including native MP4 encoding and smooth video outputs out-of-the-box, not just animated-GIFs.  \nAlso new is support for **SDXL-Turbo** as well as new **Kandinsky 3** models and cool latent correction via **HDR controls** for any *txt2img* workflows, best-of-class **SDXL model merge** using full ReBasin methods and further mobile UI optimizations.  \n\n- **Diffusers**\n  - **IP adapter**\n    - lightweight native implementation of T2I adapters which can guide generation towards specific image style  \n    - supports most T2I models, not limited to SD 1.5  \n    - models are auto-downloaded on first use\n  - **AnimateDiff**\n    - lightweight native implementation of AnimateDiff models:  \n      *AnimateDiff 1.4, 1.5 v1, 1.5 v2, AnimateFace*\n    - supports SD 1.5 only  \n    - models are auto-downloaded on first use  \n    - for video saving support, see video support section\n    - can be combined with IP-Adapter for even better results!  \n  - **HDR latent control**, based on [article](https://huggingface.co/blog/TimothyAlexisVass/explaining-the-sdxl-latent-space#long-prompts-at-high-guidance-scales-becoming-possible)  \n    - in *Advanced* params\n    - allows control of *latent clamping*, *color centering* and *range maximization*  \n    - supported by *XYZ grid*  \n  - [SD21 Turbo](https://huggingface.co/stabilityai/sd-turbo) and [SDXL Turbo](https://huggingface.co/stabilityai/sdxl-turbo) support  \n    - just set CFG scale (0.0-1.0) and steps (1-3) to a very low value  \n    - compatible with original StabilityAI SDXL-Turbo or any of the newer merges\n    - download safetensors or select from networks -> reference\n  - [Stable Video Diffusion](https://huggingface.co/stabilityai/stable-video-diffusion-img2vid) and [Stable Video Diffusion XT](https://huggingface.co/stabilityai/stable-video-diffusion-img2vid-xt) support  \n    - download using built-in model downloader or simply select from *networks -> reference*  \n      support for manually downloaded safetensors models will be added later  \n    - for video saving support, see video support section\n    - go to *image* tab, enter input image and select *script* -> *stable video diffusion*\n  - [Kandinsky 3](https://huggingface.co/kandinsky-community/kandinsky-3) support  \n    - download using built-in model downloader or simply select from *networks -> reference*  \n    - this model is absolutely massive at 27.5GB at fp16, so be patient  \n    - model params count is at 11.9B (compared to SD-XL at 3.3B) and its trained on mixed resolutions from 256px to 1024px  \n    - use either model offload or sequential cpu offload to be able to use it  \n  - better autodetection of *inpaint* and *instruct* pipelines  \n  - support long seconary prompt for refiner  \n- **Video support**\n  - applies to any model that supports video generation, e.g. AnimateDiff and StableVideoDiffusion  \n  - support for **animated-GIF**, **animated-PNG** and **MP4**  \n  - GIF and PNG can be looped  \n  - MP4 can have additional padding at the start/end as well as motion-aware interpolated frames for smooth playback  \n    interpolation is done using [RIFE](https://arxiv.org/abs/2011.06294) with native implementation in SD.Next  \n    And its fast - interpolation from 16 frames with 10x frames to target 160 frames results takes 2-3sec\n  - output folder for videos is in *settings -> image paths -> video*  \n- **General**  \n  - redesigned built-in profiler  \n    - now includes both `python` and `torch` and traces individual functions  \n    - use with `--debug --profile`  \n  - **model merge** add **SD-XL ReBasin** support, thanks @AI-Casanova  \n  - further UI optimizations for **mobile devices**, thanks @iDeNoh  \n  - log level defaults to info for console and debug for log file  \n  - better prompt display in process tab  \n  - increase maximum lora cache values  \n  - fix extra networks sorting\n  - fix controlnet compatibility issues in original backend  \n  - fix img2img/inpaint paste params  \n  - fix save text file for manually saved images  \n  - fix python 3.9 compatibility issues  \n\n## Update for 2023-11-23\n\nNew release, primarily focused around three major new features: full **LCM** support, completely new **Model Merge** functionality and **Stable-fast** compile support  \nAlso included are several other improvements and large number of hotfixes - see full changelog for details  \n\n- **Diffusers**  \n  - **LCM** support for any *SD 1.5* or *SD-XL* model!  \n    - download [lcm-lora-sd15](https://huggingface.co/latent-consistency/lcm-lora-sdv1-5/tree/main) and/or [lcm-lora-sdxl](https://huggingface.co/latent-consistency/lcm-lora-sdxl/tree/main)  \n    - load for favorite *SD 1.5* or *SD-XL* model *(original LCM was SD 1.5 only, this is both)*  \n    - load **lcm lora** *(note: lcm lora is processed differently than any other lora)*  \n    - set **sampler** to **LCM**  \n    - set number of steps to some low number, for SD-XL 6-7 steps is normally sufficient  \n      note: LCM scheduler does not support steps higher than 50  \n    - set CFG to between 1 and 2  \n  - Add `cli/lcm-convert.py` script to convert any SD 1.5 or SD-XL model to LCM model  \n    by baking in LORA and uploading to Huggingface, thanks @Disty0  \n  - Support for [Stable Fast](https://github.com/chengzeyi/stable-fast) model compile on *Windows/Linux/WSL2* with *CUDA*  \n    See [Wiki:Benchmark](https://github.com/vladmandic/automatic/wiki/Benchmark) for details and comparison  \n    of different backends, precision modes, advanced settings and compile modes  \n    *Hint*: **70+ it/s** is possible on *RTX4090* with no special tweaks  \n  - Add additional pipeline types for manual model loads when loading from `safetensors`  \n  - Updated logic for calculating **steps** when using base/hires/refiner workflows  \n  - Improve **model offloading** for both model and sequential cpu offload when dealing with meta tensors\n  - Safe model offloading for non-standard models  \n  - Fix **DPM SDE** scheduler  \n  - Better support for SD 1.5 **inpainting** models  \n  - Add support for **OpenAI Consistency decoder VAE**\n  - Enhance prompt parsing with long prompts and support for *BREAK* keyword  \n    Change-in-behavior: new line in prompt now means *BREAK*  \n  - Add alternative Lora loading algorithm, triggered if `SD_LORA_DIFFUSERS` is set  \n- **Models**\n  - **Model merge**\n    - completely redesigned, now based on best-of-class `meh` by @s1dlx  \n      and heavily modified for additional functionality and fully integrated by @AI-Casanova (thanks!)  \n    - merge SD or SD-XL models using *simple merge* (12 methods),  \n      using one of *presets* (20 built-in presets) or custom block merge values  \n    - merge with ReBasin permutations and/or clipping protection  \n    - fully multithreaded for fastest merge possible  \n  - **Model update**  \n    - under UI -> Models - Update  \n    - scan existing models for updated metadata on CivitAI and  \n      provide download functionality for models with available  \n- **Extra networks**  \n  - Use multi-threading for 5x load speedup  \n  - Better Lora trigger words support  \n  - Auto refresh styles on change  \n- **General**  \n  - Many **mobile UI** optimizations, thanks @iDeNoh\n  - Support for **Torch 2.1.1** with CUDA 12.1 or CUDA 11.8  \n  - Configurable location for HF cache folder  \n    Default is standard `~/.cache/huggingface/hub`  \n  - Reworked parser when pasting previously generated images/prompts  \n    includes all `txt2img`, `img2img` and `override` params  \n  - Reworked **model compile**\n  - Support custom upscalers in subfolders  \n  - Add additional image info when loading image in process tab  \n  - Better file locking when sharing config and/or models between multiple instances  \n  - Handle custom API endpoints when using auth  \n  - Show logged in user in log when accessing via UI and/or API  \n  - Support `--ckpt none` to skip loading a model  \n- **XYZ grid**\n  - Add refiner options to XYZ Grid  \n  - Add option to create only subgrids in XYZ grid, thanks @midcoastal\n  - Allow custom font, background and text color in settings\n- **Fixes**  \n  - Fix `params.txt` saved before actual image\n  - Fix inpaint  \n  - Fix manual grid image save  \n  - Fix img2img init image save  \n  - Fix upscale in txt2img for batch counts when no hires is used  \n  - More uniform models paths  \n  - Safe scripts callback execution  \n  - Improved extension compatibility  \n  - Improved BF16 support  \n  - Match previews for reference models with downloaded models\n\n## Update for 2023-11-06\n\nAnother pretty big release, this time with focus on new models (3 new model types), new backends and optimizations\nPlus quite a few fixes  \n\nAlso, [Wiki](https://github.com/vladmandic/automatic/wiki) has been updated with new content, so check it out!  \nSome highlights: [OpenVINO](https://github.com/vladmandic/automatic/wiki/OpenVINO), [IntelArc](https://github.com/vladmandic/automatic/wiki/Intel-ARC), [DirectML](https://github.com/vladmandic/automatic/wiki/DirectML), [ONNX/Olive](https://github.com/vladmandic/automatic/wiki/ONNX-Olive)\n\n- **Diffusers**\n  - since now **SD.Next** supports **12** different model types, weve added reference model for each type in  \n    *Extra networks -> Reference* for easier select & auto-download  \n    Models can still be downloaded manually, this is just a convenience feature & a showcase for supported models  \n  - new model type: [Segmind SSD-1B](https://huggingface.co/segmind/SSD-1B)  \n    its a *distilled* model trained at 1024px, this time 50% smaller and faster version of SD-XL!  \n    (and quality does not suffer, its just more optimized)  \n    test shows batch-size:4 with 1k images at full quality used less than 6.5GB of VRAM  \n    and for further optimization, you can use built-in **TAESD** decoder,  \n    which results in batch-size:16 with 1k images using 7.9GB of VRAM\n    select from extra networks -> reference or download using built-in **Huggingface** downloader: `segmind/SSD-1B`  \n  - new model type: [Pixart-α XL 2](https://github.com/PixArt-alpha/PixArt-alpha)  \n    in medium/512px and large/1024px variations  \n    comparable in quality to SD 1.5 and SD-XL, but with better text encoder and highly optimized training pipeline  \n    so finetunes can be done in as little as 10% compared to SD/SD-XL (note that due to much larger text encoder, it is a large model)  \n    select from extra networks -> reference or download using built-in **Huggingface** downloader: `PixArt-alpha/PixArt-XL-2-1024-MS`  \n  - new model type: [LCM: Latent Consistency Models](https://github.com/openai/consistency_models)  \n    trained at 512px, but with near-instant generate in a as little as 3 steps!  \n    combined with OpenVINO, generate on CPU takes less than 5-10 seconds: <https://www.youtube.com/watch?v=b90ESUTLsRo>  \n    and absolute beast when combined with **HyperTile** and **TAESD** decoder resulting in **28 FPS**  \n    (on RTX4090 for batch 16x16 at 512px)  \n    note: set sampler to **Default** before loading model as LCM comes with its own *LCMScheduler* sampler  \n    select from extra networks -> reference or download using built-in **Huggingface** downloader: `SimianLuo/LCM_Dreamshaper_v7`  \n  - support for **Custom pipelines**, thanks @disty0  \n    download using built-in **Huggingface** downloader  \n    think of them as plugins for diffusers not unlike original extensions that modify behavior of `ldm` backend  \n    list of community pipelines: <https://github.com/huggingface/diffusers/blob/main/examples/community/README.md>  \n  - new custom pipeline: `Disty0/zero123plus-pipeline`, thanks @disty0  \n    generate 4 output images with different camera positions: front, side, top, back!  \n    for more details, see <https://github.com/vladmandic/automatic/discussions/2421>  \n  - new backend: **ONNX/Olive** *(experimental)*, thanks @lshqqytiger  \n    for details, see [WiKi](https://github.com/vladmandic/automatic/wiki/ONNX-Runtime)\n  - extend support for [Free-U](https://github.com/ChenyangSi/FreeU)  \n    improve generations quality at no cost (other than finding params that work for you)  \n- **General**  \n  - attempt to auto-fix invalid samples which occur due to math errors in lower precision  \n    example: `RuntimeWarning: invalid value encountered in cast: sample = sample.astype(np.uint8)`  \n    begone **black images** *(note: if it proves as working, this solution will need to be expanded to cover all scenarios)*  \n  - add **Lora OFT** support, thanks @antis0007 and @ai-casanova  \n  - **Upscalers**  \n    - **compile** option, thanks @disty0  \n    - **chaiNNer** add high quality models from [Helaman](https://openmodeldb.info/users/helaman)  \n  - redesigned **Progress bar** with full details on current operation  \n  - new option: *settings -> images -> keep incomplete*  \n    can be used to skip vae decode on aborted/skipped/interrupted image generations  \n  - new option: *settings -> system paths -> models*  \n    can be used to set custom base path for *all* models (previously only as cli option)  \n  - remove external clone of items in `/repositories`  \n  - **Interrogator** module has been removed from `extensions-builtin`  \n    and fully implemented (and improved) natively  \n- **UI**  \n  - UI tweaks for default themes  \n  - UI switch core font in default theme to **noto-sans**  \n    previously default font was simply *system-ui*, but it lead to too much variations between browsers and platforms  \n  - UI tweaks for mobile devices, thanks @iDeNoh  \n  - updated **Context menu**  \n    right-click on any button in action menu (e.g. generate button)  \n- **Extra networks**  \n  - sort by name, size, date, etc.  \n  - switch between *gallery* and *list* views  \n  - add tags from user metadata (in addition to tags in model metadata) for **lora**  \n  - added **Reference** models for diffusers backend  \n  - faster enumeration of all networks on server startup  \n- **Packages**\n  - updated `diffusers` to 0.22.0, `transformers` to 4.34.1  \n  - update **openvino**, thanks @disty0  \n  - update **directml**, @lshqqytiger  \n- **Compute**  \n  - **OpenVINO**:  \n    - updated to mainstream `torch` *2.1.0*  \n    - support for **ESRGAN** upscalers  \n- **Fixes**  \n  - fix **freeu** for backend original and add it to xyz grid  \n  - fix loading diffuser models in huggingface format from non-standard location  \n  - fix default styles looking in wrong location  \n  - fix missing upscaler folder on initial startup  \n  - fix handling of relative path for models  \n  - fix simple live preview device mismatch  \n  - fix batch img2img  \n  - fix diffusers samplers: dpm++ 2m, dpm++ 1s, deis  \n  - fix new style filename template  \n  - fix image name template using model name  \n  - fix image name sequence  \n  - fix model path using relative path  \n  - fix safari/webkit layour, thanks @eadnams22\n  - fix `torch-rocm` and `tensorflow-rocm` version detection, thanks @xangelix  \n  - fix **chainner** upscalers color clipping  \n  - fix for base+refiner workflow in diffusers mode: number of steps, diffuser pipe mode  \n  - fix for prompt encoder with refiner in diffusers mode  \n  - fix prompts-from-file saving incorrect metadata  \n  - fix add/remove extra networks to prompt\n  - fix before-hires step  \n  - fix diffusers switch from invalid model  \n  - force second requirements check on startup  \n  - remove **lyco**, multiple_tqdm  \n  - enhance extension compatibility for extensions directly importing codeformers  \n  - enhance extension compatibility for extensions directly accessing processing params  \n  - **css** fixes  \n  - clearly mark external themes in ui  \n  - update `typing-extensions`  \n\n## Update for 2023-10-17\n\nThis is a major release, with many changes and new functionality...  \n\nChangelog is massive, but do read through or youll be missing on some very cool new functionality  \nor even free speedups and quality improvements (regardless of which workflows youre using)!  \n\nNote that for this release its recommended to perform a clean install (e.g. fresh `git clone`)  \nUpgrades are still possible and supported, but clean install is recommended for best experience  \n\n- **UI**  \n  - added **change log** to UI  \n    see *System -> Changelog*  \n  - converted submenus from checkboxes to accordion elements  \n    any ui state including state of open/closed menus can be saved as default!  \n    see *System -> User interface -> Set menu states*  \n  - new built-in theme **invoked**  \n    thanks @BinaryQuantumSoul  \n  - add **compact view** option in settings -> user interface  \n  - small visual indicator bottom right of page showing internal server job state  \n- **Extra networks**:  \n  - **Details**  \n    - new details interface to view and save data about extra networks  \n      main ui now has a single button on each en to trigger details view  \n    - details view includes model/lora metadata parser!  \n    - details view includes civitai model metadata!  \n  - **Metadata**:  \n    - you can scan [civitai](https://civitai.com/)  \n      for missing metadata and previews directly from extra networks  \n      simply click on button in top-right corner of extra networks page  \n  - **Styles**  \n    - save/apply icons moved to extra networks  \n    - can be edited in details view  \n    - support for single or multiple styles per json  \n    - support for embedded previews  \n    - large database of art styles included by default  \n      can be disabled in *settings -> extra networks -> show built-in*  \n    - styles can also be used in a prompt directly: `<style:style_name>`  \n      if style if an exact match, it will be used  \n      otherwise it will rotate between styles that match the start of the name  \n      that way you can use different styles as wildcards when processing batches  \n    - styles can have **extra** fields, not just prompt and negative prompt  \n      for example: *\"Extra: sampler: Euler a, width: 480, height: 640, steps: 30, cfg scale: 10, clip skip: 2\"*\n  - **VAE**  \n    - VAEs are now also listed as part of extra networks  \n    - Image preview methods have been redesigned: simple, approximate, taesd, full  \n      please set desired preview method in settings  \n    - both original and diffusers backend now support \"full quality\" setting  \n      if you desired model or platform does not support FP16 and/or you have a low-end hardware and cannot use FP32  \n      you can disable \"full quality\" in advanced params and it will likely reduce decode errors (infamous black images)  \n  - **LoRA**  \n    - LoRAs are now automatically filtered based on compatibility with currently loaded model  \n      note that if lora type cannot be auto-determined, it will be left in the list  \n  - **Refiner**  \n    - you can load model from extra networks as base model or as refiner  \n      simply select button in top-right of models page  \n  - **General**  \n    - faster search, ability to show/hide/sort networks  \n    - refactored subfolder handling  \n      *note*: this will trigger model hash recalculation on first model use  \n- **Diffusers**:  \n  - better pipeline **auto-detect** when loading from safetensors  \n  - **SDXL Inpaint**  \n    - although any model can be used for inpainiting, there is a case to be made for  \n      dedicated inpainting models as they are tuned to inpaint and not generate  \n    - model can be used as base model for **img2img** or refiner model for **txt2img**  \n      To download go to *Models -> Huggingface*:  \n      - `diffusers/stable-diffusion-xl-1.0-inpainting-0.1` *(6.7GB)*  \n  - **SDXL Instruct-Pix2Pix**  \n    - model can be used as base model for **img2img** or refiner model for **txt2img**  \n      this model is massive and requires a lot of resources!  \n      to download go to *Models -> Huggingface*:  \n      - `diffusers/sdxl-instructpix2pix-768` *(11.9GB)*  \n  - **SD Latent Upscale**  \n    - you can use *SD Latent Upscale* models as **refiner models**  \n      this is a bit experimental, but it works quite well!  \n      to download go to *Models -> Huggingface*:  \n      - `stabilityai/sd-x2-latent-upscaler` *(2.2GB)*  \n      - `stabilityai/stable-diffusion-x4-upscaler` *(1.7GB)*  \n  - better **Prompt attention**  \n    should better handle more complex prompts  \n    for sdxl, choose which part of prompt goes to second text encoder - just add `TE2:` separator in the prompt  \n    for hires and refiner, second pass prompt is used if present, otherwise primary prompt is used  \n    new option in *settings -> diffusers -> sdxl pooled embeds*  \n    thanks @AI-Casanova  \n  - better **Hires** support for SD and SDXL  \n  - better **TI embeddings** support for SD and SDXL  \n    faster loading, wider compatibility and support for embeddings with multiple vectors  \n    information about used embedding is now also added to image metadata  \n    thanks @AI-Casanova  \n  - better **Lora** handling  \n    thanks @AI-Casanova  \n  - better **SDXL preview** quality (approx method)  \n    thanks @BlueAmulet\n  - new setting: *settings -> diffusers -> force inpaint*  \n    as some models behave better when in *inpaint* mode even for normal *img2img* tasks  \n- **Upscalers**:\n  - pretty much a rewrite and tons of new upscalers - built-in list is now at **42**  \n  - fix long outstanding memory leak in legacy code, amazing this went undetected for so long  \n  - more high quality upscalers available by default  \n    **SwinIR** (2), **ESRGAN** (12), **RealESRGAN** (6), **SCUNet** (2)  \n  - if that is not enough, there is new **chaiNNer** integration:  \n    adds 15 more upscalers from different families out-of-the-box:  \n    **HAT** (6), **RealHAT** (2), **DAT** (1), **RRDBNet** (1), **SPSRNet** (1), **SRFormer** (2), **SwiftSR** (2)  \n    and yes, you can download and add your own, just place them in `models/chaiNNer`  \n  - two additional latent upscalers based on SD upscale models when using Diffusers backend  \n    **SD Upscale 2x**, **SD Upscale 4x***  \n    note: Recommended usage for *SD Upscale* is by using second pass instead of upscaler  \n    as it allows for tuning of prompt, seed, sampler settings which are used to guide upscaler  \n  - upscalers are available in **xyz grid**  \n  - simplified *settings->postprocessing->upscalers*  \n    e.g. all upsamplers share same settings for tiling  \n  - allow upscale-only as part of **txt2img** and **img2img** workflows  \n    simply set *denoising strength* to 0 so hires does not get triggered  \n  - unified init/download/execute/progress code  \n  - easier installation  \n- **Samplers**:  \n  - moved ui options to submenu  \n  - default list for new installs is now all samplers, list can be modified in settings  \n  - simplified samplers configuration in settings  \n    plus added few new ones like sigma min/max which can highly impact sampler behavior  \n  - note that list of samplers is now *different* since keeping a flat-list of all possible  \n    combinations results in 50+ samplers which is not practical  \n    items such as algorithm (e.g. karras) is actually a sampler option, not a sampler itself  \n- **CivitAI**:\n  - civitai model download is now multithreaded and resumable  \n    meaning that you can download multiple models in parallel  \n    as well as resume aborted/incomplete downloads  \n  - civitai integration in *models -> civitai* can now find most  \n    previews AND metadata for most models (checkpoints, loras, embeddings)  \n    metadata is now parsed and saved in *[model].json*  \n    typical hit rate is >95% for models, loras and embeddings  \n  - description from parsed model metadata is used as model description if there is no manual  \n    description file present in format of *[model].txt*  \n  - to enable search for models, make sure all models have set hash values  \n    *Models -> Valida -> Calculate hashes*  \n- **LoRA**\n  - new unified LoRA handler for all LoRA types (lora, lyco, loha, lokr, locon, ia3, etc.)  \n    applies to both original and diffusers backend  \n    thanks @AI-Casanova for diffusers port  \n  - for *backend:original*, separate lyco handler has been removed  \n- **Compute**  \n  - **CUDA**:  \n    - default updated to `torch` *2.1.0* with cuda *12.1*  \n    - testing moved to `torch` *2.2.0-dev/cu122*  \n    - check out *generate context menu -> show nvml* for live gpu stats (memory, power, temp, clock, etc.)\n  - **Intel Arc/IPEX**:  \n    - tons of optimizations, built-in binary wheels for Windows  \n      i have to say, intel arc/ipex is getting to be quite a player, especially with openvino  \n      thanks @Disty0 @Nuullll  \n  - **AMD ROCm**:  \n    - updated installer to support detect `ROCm` *5.4/5.5/5.6/5.7*  \n    - support for `torch-rocm-5.7`\n  - **xFormers**:\n    - default updated to *0.0.23*  \n    - note that latest xformers are still not compatible with cuda 12.1  \n      recommended to use torch 2.1.0 with cuda 11.8  \n      if you attempt to use xformers with cuda 12.1, it will force a full xformers rebuild on install  \n      which can take a very long time and may/may-not work  \n    - added cmd param `--use-xformers` to force usage of exformers  \n  - **GC**:  \n    - custom garbage collect threshold to reduce vram memory usage, thanks @Disty0  \n      see *settings -> compute -> gc*  \n- **Inference**  \n  - new section in **settings**  \n    - [HyperTile](https://github.com/tfernd/HyperTile): new!  \n      available for *diffusers* and *original* backends  \n      massive (up to 2x) speed-up your generations for free :)  \n      *note: hypertile is not compatible with any extension that modifies processing parameters such as resolution*  \n      thanks @tfernd\n    - [Free-U](https://github.com/ChenyangSi/FreeU): new!  \n      available for *diffusers* and *original* backends  \n      improve generations quality at no cost (other than finding params that work for you)  \n      *note: temporarily disabled for diffusers pending release of diffusers==0.22*  \n      thanks @ljleb  \n    - [Token Merging](https://github.com/dbolya/tomesd): not new, but updated  \n      available for *diffusers* and *original* backends  \n      speed-up your generations by merging redundant tokens  \n      speed up will depend on how aggressive you want to be with token merging  \n    - **Batch mode**  \n      new option *settings -> inference -> batch mode*  \n      when using img2img process batch, optionally process multiple images in batch in parallel  \n      thanks @Symbiomatrix\n- **NSFW Detection/Censor**  \n  - install extension: [NudeNet](https://github.com/vladmandic/sd-extension-nudenet)  \n    body part detection, image metadata, advanced censoring, etc...  \n    works for *text*, *image* and *process* workflows  \n    more in the extension notes  \n- **Extensions**\n  - automatic discovery of new extensions on github  \n    no more waiting for them to appear in index!\n  - new framework for extension validation  \n    extensions ui now shows actual status of extensions for reviewed extensions  \n    if you want to contribute/flag/update extension status, reach out on github or discord  \n  - better overall compatibility with A1111 extensions (up to a point)  \n  - [MultiDiffusion](https://github.com/pkuliyi2015/multidiffusion-upscaler-for-automatic1111)  \n    has been removed from list of built-in extensions  \n    you can still install it manually if desired  \n  - [LyCORIS]<https://github.com/KohakuBlueleaf/a1111-sd-webui-lycoris>  \n    has been removed from list of built-in extensions  \n    it is considered obsolete given that all functionality is now built-in  \n- **General**  \n  - **Startup**  \n    - all main CLI parameters can now be set as environment variable as well  \n      for example `--data-dir <path>` can be specified as `SD_DATADIR=<path>` before starting SD.Next  \n  - **XYZ Grid**\n    - more flexibility to use selection or strings  \n  - **Logging**  \n    - get browser session info in server log  \n    - allow custom log file destination  \n      see `webui --log`  \n    - when running with `--debug` flag, log is force-rotated  \n      so each `sdnext.log.*` represents exactly one server run  \n    - internal server job state tracking  \n  - **Launcher**  \n    - new `webui.ps1` powershell launcher for windows (old `webui.bat` is still valid)  \n      thanks @em411  \n  - **API**\n    - add end-to-end example how to use API: `cli/simple-txt2img.js`  \n      covers txt2img, upscale, hires, refiner  \n  - **train.py**\n    - wrapper script around built-in **kohyas lora** training script  \n      see `cli/train.py --help`  \n      new support for sd and sdxl, thanks @evshiron  \n      new support for full offline mode (without sdnext server running)  \n- **Themes**\n  - all built-in themes are fully supported:  \n    - *black-teal (default), light-teal, black-orange, invoked, amethyst-nightfall, midnight-barbie*  \n  - if youre using any **gradio default** themes or a **3rd party** theme or  that are not optimized for SD.Next, you may experience issues  \n    default minimal style has been updated for compatibility, but actual styling is completely outside of SD.Next control  \n\n## Update for 2023-09-13\n\nStarted as a mostly a service release with quite a few fixes, but then...  \nMajor changes how **hires** works as well as support for a very interesting new model [Wuerstchen](https://huggingface.co/blog/wuertschen)  \n\n- tons of fixes  \n- changes to **hires**  \n  - enable non-latent upscale modes (standard upscalers)  \n  - when using latent upscale, hires pass is run automatically  \n  - when using non-latent upscalers, hires pass is skipped by default  \n    enabled using **force hires** option in ui  \n    hires was not designed to work with standard upscalers, but i understand this is a common workflow  \n  - when using refiner, upscale/hires runs before refiner pass  \n  - second pass can now also utilize full/quick vae quality  \n  - note that when combining non-latent upscale, hires and refiner output quality is maximum,  \n    but operations are really resource intensive as it includes: *base->decode->upscale->encode->hires->refine*\n  - all combinations of: decode full/quick + upscale none/latent/non-latent + hires on/off + refiner on/off  \n    should be supported, but given the number of combinations, issues are possible  \n  - all operations are captured in image metadata\n- diffusers:\n  - allow loading of sd/sdxl models from safetensors without online connectivity\n  - support for new model: [wuerstchen](https://huggingface.co/warp-ai/wuerstchen)  \n    its a high-resolution model (1024px+) thats ~40% faster than sd-xl with a bit lower resource requirements  \n    go to *models -> huggingface -> search \"warp-ai/wuerstchen\" -> download*  \n    its nearly 12gb in size, so be patient :)\n- minor re-layout of the main ui  \n- updated **ui hints**  \n- updated **models -> civitai**  \n  - search and download loras  \n  - find previews for already downloaded models or loras  \n- new option **inference mode**  \n  - default is standard `torch.no_grad`  \n    new option is `torch.inference_only` which is slightly faster and uses less vram, but only works on some gpus  \n- new cmdline param `--no-metadata`  \n  skips reading metadata from models that are not already cached  \n- updated **gradio**  \n- **styles** support for subfolders  \n- **css** optimizations\n- clean-up **logging**  \n  - capture system info in startup log  \n  - better diagnostic output  \n  - capture extension output  \n  - capture ldm output  \n  - cleaner server restart  \n  - custom exception handling\n\n## Update for 2023-09-06\n\nOne week later, another large update!\n\n- system:  \n  - full **python 3.11** support  \n    note that changing python version does require reinstall  \n    and if youre already on python 3.10, really no need to upgrade  \n- themes:  \n  - new default theme: **black-teal**  \n  - new light theme: **light-teal**  \n  - new additional theme: **midnight-barbie**, thanks @nyxia  \n- extra networks:  \n  - support for **tags**  \n    show tags on hover, search by tag, list tags, add to prompt, etc.  \n  - **styles** are now also listed as part of extra networks  \n    existing `styles.csv` is converted upon startup to individual styles inside `models/style`  \n    this is stage one of new styles functionality  \n    old styles interface is still available, but will be removed in future  \n  - cache file lists for much faster startup  \n    speedups are 50+% for large number of extra networks  \n  - ui refresh button now refreshes selected page, not all pages  \n  - simplified handling of **descriptions**  \n    now shows on-mouse-over without the need for user interaction  \n  - **metadata** and **info** buttons only show if there is actual content  \n- diffusers:  \n  - add full support for **textual inversions** (embeddings)  \n    this applies to both sd15 and sdxl  \n    thanks @ai-casanova for porting compel/sdxl code  \n  - mix&match **base** and **refiner** models (*experimental*):  \n    most of those are \"because why not\" and can result in corrupt images, but some are actually useful  \n    also note that if youre not using actual refiner model, you need to bump refiner steps  \n    as normal models are not designed to work with low step count  \n    and if youre having issues, try setting prompt parser to \"fixed attention\" as majority of problems  \n    are due to token mismatches when using prompt attention  \n    - any sd15 + any sd15  \n    - any sd15 + sdxl-refiner  \n    - any sdxl-base + sdxl-refiner  \n    - any sdxl-base + any sd15  \n    - any sdxl-base + any sdxl-base  \n  - ability to **interrupt** (stop/skip) model generate  \n  - added **aesthetics score** setting (for sdxl)  \n    used to automatically guide unet towards higher pleasing images  \n    highly recommended for simple prompts  \n  - added **force zeros** setting  \n    create zero-tensor for prompt if prompt is empty (positive or negative)  \n- general:  \n  - `rembg` remove backgrounds support for **is-net** model  \n  - **settings** now show markers for all items set to non-default values  \n  - **metadata** refactored how/what/when metadata is added to images  \n    should result in much cleaner and more complete metadata  \n  - pre-create all system folders on startup  \n  - handle model load errors gracefully  \n  - improved vram reporting in ui  \n  - improved script profiling (when running in debug mode)  \n\n## Update for 2023-08-30\n\nTime for a quite a large update that has been leaking bit-by-bit over the past week or so...  \n*Note*: due to large changes, it is recommended to reset (delete) your `ui-config.json`  \n\n- diffusers:  \n  - support for **distilled** sd models  \n    just go to models/huggingface and download a model, for example:  \n    `segmind/tiny-sd`, `segmind/small-sd`, `segmind/portrait-finetuned`  \n    those are lower quality, but extremely small and fast  \n    up to 50% faster than sd 1.5 and execute in as little as 2.1gb of vram  \n- general:  \n  - redesigned **settings**  \n    - new layout with separated sections:  \n      *settings, ui config, licenses, system info, benchmark, models*  \n    - **system info** tab is now part of settings  \n      when running outside of sdnext, system info is shown in main ui  \n    - all system and image paths are now relative by default  \n    - add settings validation when performing load/save  \n    - settings tab in ui now shows settings that are changed from default values  \n    - settings tab switch to compact view  \n  - update **gradio** major version  \n    this may result in some smaller layout changes since its a major version change  \n    however, browser page load is now much faster  \n  - optimizations:\n    - optimize model hashing  \n    - add cli param `--skip-all` that skips all installer checks  \n      use at personal discretion, but it can be useful for bulk deployments  \n    - add model **precompile** option (when model compile is enabled)  \n    - **extra network** folder info caching  \n      results in much faster startup when you have large number of extra networks  \n    - faster **xyz grid** switching  \n      especially when using different checkpoints  \n  - update **second pass** options for clarity\n  - models:\n    - civitai download missing model previews\n  - add **openvino** (experimental) cpu optimized model compile and inference  \n    enable with `--use-openvino`  \n    thanks @disty0  \n  - enable batch **img2img** scale-by workflows  \n    now you can batch process with rescaling based on each individual original image size  \n  - fixes:\n    - fix extra networks previews  \n    - css fixes  \n    - improved extensions compatibility (e.g. *sd-cn-animation*)  \n    - allow changing **vae** on-the-fly for both original and diffusers backend\n\n## Update for 2023-08-20\n\nAnother release thats been baking in dev branch for a while...\n\n- general:\n  - caching of extra network information to enable much faster create/refresh operations  \n    thanks @midcoastal\n- diffusers:\n  - add **hires** support (*experimental*)  \n    applies to all model types that support img2img, including **sd** and **sd-xl**  \n    also supports all hires upscaler types as well as standard params like steps and denoising strength  \n    when used with **sd-xl**, it can be used with or without refiner loaded  \n    how to enable - there are no explicit checkboxes other than second pass itself:\n    - hires: upscaler is set and target resolution is not at default  \n    - refiner: if refiner model is loaded  \n  - images save options: *before hires*, *before refiner*\n  - redo `move model to cpu` logic in settings -> diffusers to be more reliable  \n    note that system defaults have also changed, so you may need to tweak to your liking  \n  - update dependencies\n\n## Update for 2023-08-17\n\nSmaller update, but with some breaking changes (to prepare for future larger functionality)...\n\n- general:\n  - update all metadata saved with images  \n    see <https://github.com/vladmandic/automatic/wiki/Metadata> for details  \n  - improved **amd** installer with support for **navi 2x & 3x** and **rocm 5.4/5.5/5.6**  \n    thanks @evshiron  \n  - fix **img2img** resizing (applies to *original, diffusers, hires*)  \n  - config change: main `config.json` no longer contains entire configuration  \n    but only differences from defaults (similar to recent change performed to `ui-config.json`)  \n- diffusers:\n  - enable **batch img2img** workflows  \n- original:  \n  - new samplers: **dpm++ 3M sde** (standard and karras variations)  \n    enable in *settings -> samplers -> show samplers*\n  - expose always/never discard penultimate sigma  \n    enable in *settings -> samplers*  \n\n## Update for 2023-08-11\n\nThis is a big one thats been cooking in `dev` for a while now, but finally ready for release...\n\n- diffusers:\n  - **pipeline autodetect**\n    if pipeline is set to autodetect (default for new installs), app will try to autodetect pipeline based on selected model  \n    this should reduce user errors such as loading **sd-xl** model when **sd** pipeline is selected  \n  - **quick vae decode** as alternative to full vae decode which is very resource intensive  \n    quick decode is based on `taesd` and produces lower quality, but its great for tests or grids as it runs much faster and uses far less vram  \n    disabled by default, selectable in *txt2img/img2img -> advanced -> full quality*  \n  - **prompt attention** for sd and sd-xl  \n    supports both `full parser` and native `compel`  \n    thanks @ai-casanova  \n  - advanced **lora load/apply** methods  \n    in addition to standard lora loading that was recently added to sd-xl using diffusers, now we have  \n    - **sequential apply** (load & apply multiple loras in sequential manner) and  \n    - **merge and apply** (load multiple loras and merge before applying to model)  \n    see *settings -> diffusers -> lora methods*  \n    thanks @hameerabbasi and @ai-casanova  \n  - **sd-xl vae** from safetensors now applies correct config  \n    result is that 3rd party vaes can be used without washed out colors  \n  - options for optimized memory handling for lower memory usage  \n    see *settings -> diffusers*\n- general:\n  - new **civitai model search and download**  \n    native support for civitai, integrated into ui as *models -> civitai*  \n  - updated requirements  \n    this time its a bigger change so upgrade may take longer to install new requirements\n  - improved **extra networks** performance with large number of networks\n\n## Update for 2023-08-05\n\nAnother minor update, but it unlocks some cool new items...\n\n- diffusers:\n  - vaesd live preview (sd and sd-xl)  \n  - fix inpainting (sd and sd-xl)  \n- general:\n  - new torch 2.0 with ipex (intel arc)  \n  - additional callbacks for extensions  \n    enables latest comfyui extension  \n\n## Update for 2023-07-30\n\nSmaller release, but IMO worth a post...\n\n- diffusers:\n  - sd-xl loras are now supported!\n  - memory optimizations: Enhanced sequential CPU offloading, model CPU offload, FP16 VAE\n    - significant impact if running SD-XL (for example, but applies to any model) with only 8GB VRAM\n  - update packages\n- minor bugfixes\n\n## Update for 2023-07-26\n\nThis is a big one, new models, new diffusers, new features and updated UI...\n\nFirst, **SD-XL 1.0** is released and yes, SD.Next supports it out of the box!\n\n- [SD-XL Base](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/blob/main/sd_xl_base_1.0.safetensors)\n- [SD-XL Refiner](https://huggingface.co/stabilityai/stable-diffusion-xl-refiner-1.0/blob/main/sd_xl_refiner_1.0.safetensors)\n\nAlso fresh is new **Kandinsky 2.2** model that does look quite nice:\n\n- [Kandinsky Decoder](https://huggingface.co/kandinsky-community/kandinsky-2-2-decoder)\n- [Kandinsky Prior](https://huggingface.co/kandinsky-community/kandinsky-2-2-prior)\n\nActual changelog is:\n\n- general:\n  - new loading screens and artwork\n  - major ui simplification for both txt2img and img2img  \n    nothing is removed, but you can show/hide individual sections  \n    default is very simple interface, but you can enable any sections and save it as default in settings  \n  - themes: add additional built-in theme, `amethyst-nightfall`\n  - extra networks: add add/remove tags to prompt (e.g. lora activation keywords)\n  - extensions: fix couple of compatibility items\n  - firefox compatibility improvements\n  - minor image viewer improvements\n  - add backend and operation info to metadata\n\n- diffusers:\n  - were out of experimental phase and diffusers backend is considered stable  \n  - sd-xl: support for **sd-xl 1.0** official model\n  - sd-xl: loading vae now applies to both base and refiner and saves a bit of vram  \n  - sd-xl: denoising_start/denoising_end\n  - sd-xl: enable dual prompts  \n    dual prompt is used if set regardless if refiner is enabled/loaded  \n    if refiner is loaded & enabled, refiner prompt will also be used for refiner pass  \n    - primary prompt goes to [OpenAI CLIP-ViT/L-14](https://huggingface.co/openai/clip-vit-large-patch14)\n    - refiner prompt goes to [OpenCLIP-ViT/bigG-14](https://huggingface.co/laion/CLIP-ViT-bigG-14-laion2B-39B-b160k)\n  - **kandinsky 2.2** support  \n    note: kandinsky model must be downloaded using model downloader, not as safetensors due to specific model format  \n  - refiner: fix batch processing\n  - vae: enable loading of pure-safetensors vae files without config  \n    also enable *automatic* selection to work with diffusers  \n  - sd-xl: initial lora support  \n    right now this applies to official lora released by **stability-ai**, support for **kohyas** lora is expected soon  \n  - implement img2img and inpainting (experimental)  \n    actual support and quality depends on model  \n    it works as expected for sd 1.5, but not so much for sd-xl for now  \n  - implement limited stop/interrupt for diffusers\n    works between stages, not within steps  \n  - add option to save image before refiner pass  \n  - option to set vae upcast in settings  \n  - enable fp16 vae decode when using optimized vae  \n    this pretty much doubles performance of decode step (delay after generate is done)  \n\n- original\n  - fix hires secondary sampler  \n    this now fully obsoletes `fallback_sampler` and `force_hr_sampler_name`  \n\n\n## Update for 2023-07-18\n\nWhile were waiting for official SD-XL release, heres another update with some fixes and enhancements...\n\n- **global**\n  - image save: option to add invisible image watermark to all your generated images  \n    disabled by default, can be enabled in settings -> image options  \n    watermark information will be shown when loading image such as in process image tab  \n    also additional cli utility `/cli/image-watermark.py` to read/write/strip watermarks from images  \n  - batch processing: fix metadata saving, also allow to drag&drop images for batch processing  \n  - ui configuration: you can modify all ui default values from settings as usual,  \n    but only values that are non-default will be written to `ui-config.json`  \n  - startup: add cmd flag to skip all `torch` checks  \n  - startup: force requirements check on each server start  \n    there are too many misbehaving extensions that change system requirements  \n  - internal: safe handling of all config file read/write operations  \n    this allows sdnext to run in fully shared environments and prevents any possible configuration corruptions  \n- **diffusers**:\n  - sd-xl: remove image watermarks autocreated by 0.9 model  \n  - vae: enable loading of external vae, documented in diffusers wiki  \n    and mix&match continues, you can even use sd-xl vae with sd 1.5 models!  \n  - samplers: add concept of *default* sampler to avoid needing to tweak settings for primary or second pass  \n    note that sampler details will be printed in log when running in debug level  \n  - samplers: allow overriding of sampler beta values in settings  \n  - refiner: fix refiner applying only to first image in batch  \n  - refiner: allow using direct latents or processed output in refiner  \n  - model: basic support for one more model: [UniDiffuser](https://github.com/thu-ml/unidiffuser)  \n    download using model downloader: `thu-ml/unidiffuser-v1`  \n    and set resolution to 512x512  \n\n## Update for 2023-07-14\n\nTrying to unify settings for both original and diffusers backend without introducing duplicates...\n\n- renamed **hires fix** to **second pass**  \n  as that is what it actually is, name hires fix is misleading to start with  \n- actual **hires fix** and **refiner** are now options inside **second pass** section  \n- obsoleted settings -> sampler -> **force_hr_sampler_name**  \n  it is now part of **second pass** options and it works the same for both original and diffusers backend  \n  which means you can use different scheduler settings for txt2img and hires if you want  \n- sd-xl refiner will run if its loaded and if second pass is enabled  \n  so you can quickly enable/disable refiner by simply enabling/disabling second pass  \n- you can mix&match **model** and **refiner**  \n  for example, you can generate image using sd 1.5 and still use sd-xl refiner as second pass  \n- reorganized settings -> samplers to show which section refers to which backend  \n- added diffusers **lmsd** sampler  \n\n## Update for 2023-07-13\n\nAnother big one, but now improvements to both **diffusers** and **original** backends as well plus ability to dynamically switch between them!\n\n- swich backend between diffusers and original on-the-fly\n  - you can still use `--backend <backend>` and now that only means in which mode app will start,\n    but you can change it anytime in ui settings\n  - for example, you can even do things like generate image using sd-xl,  \n    then switch to original backend and perform inpaint using a different model  \n- diffusers backend:\n  - separate ui settings for refiner pass with sd-xl  \n    you can specify: prompt, negative prompt, steps, denoise start  \n  - fix loading from pure safetensors files  \n    now you can load sd-xl from safetensors file or from huggingface folder format  \n  - fix kandinsky model (2.1 working, 2.2 was just released and will be soon)  \n- original backend:\n  - improvements to vae/unet handling as well as cross-optimization heads  \n    in non-technical terms, this means lower memory usage and higher performance  \n    and you should be able to generate higher resolution images without any other changes\n- other:\n  - major refactoring of the javascript code  \n    includes fixes for text selections and navigation  \n  - system info tab now reports on nvidia driver version as well  \n  - minor fixes in extra-networks  \n  - installer handles origin changes for submodules  \n\nbig thanks to @huggingface team for great communication, support and fixing all the reported issues asap!\n\n\n## Update for 2023-07-10\n\nService release with some fixes and enhancements:\n\n- diffusers:\n  - option to move base and/or refiner model to cpu to free up vram  \n  - model downloader options to specify model variant / revision / mirror  \n  - now you can download `fp16` variant directly for reduced memory footprint  \n  - basic **img2img** workflow (*sketch* and *inpaint* are not supported yet)  \n    note that **sd-xl** img2img workflows are architecturaly different so it will take longer to implement  \n  - updated hints for settings  \n- extra networks:\n  - fix corrupt display on refesh when new extra network type found  \n  - additional ui tweaks  \n  - generate thumbnails from previews only if preview resolution is above 1k\n- image viewer:\n  - fixes for non-chromium browsers and mobile users and add option to download image  \n  - option to download image directly from image viewer\n- general\n  - fix startup issue with incorrect config  \n  - installer should always check requirements on upgrades\n\n## Update for 2023-07-08\n\nThis is a massive update which has been baking in a `dev` branch for a while now\n\n- merge experimental diffusers support  \n\n*TL;DR*: Yes, you can run **SD-XL** model in **SD.Next** now  \nFor details, see Wiki page: [Diffusers](https://github.com/vladmandic/automatic/wiki/Diffusers)  \nNote this is still experimental, so please follow Wiki  \nAdditional enhancements and fixes will be provided over the next few days  \n*Thanks to @huggingface team for making this possible and our internal @team for all the early testing*\n\nRelease also contains number of smaller updates:\n\n- add pan & zoom controls (touch and mouse) to image viewer (lightbox)  \n- cache extra networks between tabs  \n  this should result in neat 2x speedup on building extra networks  \n- add settings -> extra networks -> do not automatically build extra network pages  \n  speeds up app start if you have a lot of extra networks and you want to build them manually when needed  \n- extra network ui tweaks  \n\n## Update for 2023-07-01\n\nSmall quality-of-life updates and bugfixes:\n\n- add option to disallow usage of ckpt checkpoints\n- change lora and lyco dir without server restart\n- additional filename template fields: `uuid`, `seq`, `image_hash`  \n- image toolbar is now shown only when image is present\n- image `Zip` button gone and its not optional setting that applies to standard `Save` button\n- folder `Show` button is present only when working on localhost,  \n  otherwise its replaced with `Copy` that places image URLs on clipboard so they can be used in other apps\n\n## Update for 2023-06-30\n\nA bit bigger update this time, but contained to specific areas...\n\n- change in behavior  \n  extensions no longer auto-update on startup  \n  using `--upgrade` flag upgrades core app as well as all submodules and extensions  \n- **live server log monitoring** in ui  \n  configurable via settings -> live preview  \n- new **extra networks interface**  \n  *note: if youre using a 3rd party ui extension for extra networks, it will likely need to be updated to work with new interface*\n  - display in front of main ui, inline with main ui or as a sidebar  \n  - lazy load thumbnails  \n    drastically reduces load times for large number of extra networks  \n  - auto-create thumbnails from preview images in extra networks in a background thread  \n    significant load time saving on subsequent restarts  \n  - support for info files in addition to description files  \n  - support for variable aspect-ratio thumbnails  \n  - new folder view  \n- **extensions sort** by trending  \n- add requirements check for training  \n\n## Update for 2023-06-26\n\n- new training tab interface  \n  - redesigned preprocess, train embedding, train hypernetwork  \n- new models tab interface  \n  - new model convert functionality, thanks @akegarasu  \n  - new model verify functionality  \n- lot of ipex specific fixes/optimizations, thanks @disty0  \n\n## Update for 2023-06-20\n\nThis one is less relevant for standard users, but pretty major if youre running an actual server  \nBut even if not, it still includes bunch of cumulative fixes since last release - and going by number of new issues, this is probably the most stable release so far...\n(next one is not going to be as stable, but it will be fun :) )\n\n- minor improvements to extra networks ui  \n- more hints/tooltips integrated into ui  \n- new dedicated api server  \n  - but highly promising for high throughput server  \n- improve server logging and monitoring with  \n  - server log file rotation  \n  - ring buffer with api endpoint `/sdapi/v1/log`  \n  - real-time status and load endpoint `/sdapi/v1/system-info/status`\n\n## Update for 2023-06-14\n\nSecond stage of a jumbo merge from upstream plus few minor changes...\n\n- simplify token merging  \n- reorganize some settings  \n- all updates from upstream: **A1111** v1.3.2 [df004be] *(latest release)*  \n  pretty much nothing major that i havent released in previous versions, but its still a long list of tiny changes  \n  - skipped/did-not-port:  \n    add separate hires prompt: unnecessarily complicated and spread over large number of commits due to many regressions  \n    allow external scripts to add cross-optimization methods: dangerous and i dont see a use case for it so far  \n    load extension info in threads: unnecessary as other optimizations ive already put place perform equally good  \n  - broken/reverted:  \n    sub-quadratic optimization changes  \n\n## Update for 2023-06-13\n\nJust a day later and one *bigger update*...\nBoth some **new functionality** as well as **massive merges** from upstream  \n\n- new cache for models/lora/lyco metadata: `metadata.json`  \n  drastically reduces disk access on app startup  \n- allow saving/resetting of **ui default values**  \n  settings -> ui defaults\n- ability to run server without loaded model  \n  default is to auto-load model on startup, can be changed in settings -> stable diffusion  \n  if disabled, model will be loaded on first request, e.g. when you click generate  \n  useful when you want to start server to perform other tasks like upscaling which do not rely on model  \n- updated `accelerate` and `xformers`\n- huge nubmer of changes ported from **A1111** upstream  \n  this was a massive merge, hopefully this does not cause any regressions  \n  and still a bit more pending...\n\n## Update for 2023-06-12\n\n- updated ui labels and hints to improve clarity and provide some extra info  \n  this is 1st stage of the process, more to come...  \n  if you want to join the effort, see <https://github.com/vladmandic/automatic/discussions/1246>\n- new localization and hints engine  \n  how hints are displayed can be selected in settings -> ui  \n- reworked **installer** sequence  \n  as some extensions are loading packages directly from their preload sequence  \n  which was preventing some optimizations to take effect  \n- updated **settings** tab functionality, thanks @gegell  \n  with real-time monitor for all new and/or updated settings  \n- **launcher** will now warn if application owned files are modified  \n  you are free to add any user files, but do not modify app files unless youre sure in what youre doing  \n- add more profiling for scripts/extensions so you can see what takes time  \n  this applies both to initial load as well as execution  \n- experimental `sd_model_dict` setting which allows you to load model dictionary  \n  from one model and apply weights from another model specified in `sd_model_checkpoint`  \n  results? who am i to judge :)\n\n\n## Update for 2023-06-05\n\nFew new features and extra handling for broken extensions  \nthat caused my phone to go crazy with notifications over the weekend...\n\n- added extra networks to **xyz grid** options  \n  now you can have more fun with all your embeddings and loras :)  \n- new **vae decode** method to help with larger batch sizes, thanks @bigdog  \n- new setting -> lora -> **use lycoris to handle all lora types**  \n  this is still experimental, but the goal is to obsolete old built-in lora module  \n  as it doesnt understand many new loras and built-in lyco module can handle it all  \n- somewhat optimize browser page loading  \n  still slower than id want, but gradio is pretty bad at this  \n- profiling of scripts/extensions callbacks  \n  you can now see how much or pre/post processing is done, not just how long generate takes  \n- additional exception handling so bad exception does not crash main app  \n- additional background removal models  \n- some work on bfloat16 which nobody really should be using, but why not 🙂\n\n\n## Update for 2023-06-02\n\nSome quality-of-life improvements while working on larger stuff in the background...\n\n- redesign action box to be uniform across all themes  \n- add **pause** option next to stop/skip  \n- redesigned progress bar  \n- add new built-in extension: **agent-scheduler**  \n  very elegant way to getting full queueing capabilities, thank @artventurdev  \n- enable more image formats  \n  note: not all are understood by browser so previews and images may appear as blank  \n  unless you have some browser extensions that can handle them  \n  but they are saved correctly. and cant beat raw quality of 32-bit `tiff` or `psd` :)  \n- change in behavior: `xformers` will be uninstalled on startup if they are not active  \n  if you do have `xformers` selected as your desired cross-optimization method, then they will be used  \n  reason is that a lot of libaries try to blindly import xformers even if they are not selected or not functional  \n\n## Update for 2023-05-30\n\nAnother bigger one...And more to come in the next few days...\n\n- new live preview mode: taesd  \n  i really like this one, so its enabled as default for new installs  \n- settings search feature  \n- new sampler: dpm++ 2m sde  \n- fully common save/zip/delete (new) options in all tabs  \n  which (again) meant rework of process image tab  \n- system info tab: live gpu utilization/memory graphs for nvidia gpus  \n- updated controlnet interface  \n- minor style changes  \n- updated lora, swinir, scunet and ldsr code from upstream  \n- start of merge from a1111 v1.3  \n\n## Update for 2023-05-26\n\nSome quality-of-life improvements...\n\n- updated [README](https://github.com/vladmandic/automatic/blob/master/README.md)\n- created [CHANGELOG](https://github.com/vladmandic/automatic/blob/master/CHANGELOG.md)  \n  this will be the source for all info about new things moving forward  \n  and cross-posted to [Discussions#99](https://github.com/vladmandic/automatic/discussions/99) as well as discord [announcements](https://discord.com/channels/1101998836328697867/1109953953396957286)\n- optimize model loading on startup  \n  this should reduce startup time significantly  \n- set default cross-optimization method for each platform backend  \n  applicable for new installs only  \n  - `cuda` => Scaled-Dot-Product\n  - `rocm` => Sub-quadratic\n  - `directml` => Sub-quadratic\n  - `ipex` => invokeais\n  - `mps` => Doggettxs\n  - `cpu` => Doggettxs\n- optimize logging  \n- optimize profiling  \n  now includes startup profiling as well as `cuda` profiling during generate  \n- minor lightbox improvements  \n- bugfixes...i dont recall when was a release with at least several of those  \n\nother than that - first stage of [Diffusers](https://github.com/huggingface/diffusers) integration is now in master branch  \ni dont recommend anyone to try it (and dont even think reporting issues for it)  \nbut if anyone wants to contribute, take a look at [project page](https://github.com/users/vladmandic/projects/1/views/1)\n\n## Update for 2023-05-23\n\nMajor internal work with perhaps not that much user-facing to show for it ;)\n\n- update core repos: **stability-ai**, **taming-transformers**, **k-diffusion, blip**, **codeformer**  \n  note: to avoid disruptions, this is applicable for new installs only\n- tested with **torch 2.1**, **cuda 12.1**, **cudnn 8.9**  \n  (production remains on torch2.0.1+cuda11.8+cudnn8.8)  \n- fully extend support of `--data-dir`  \n  allows multiple installations to share pretty much everything, not just models  \n  especially useful if you want to run in a stateless container or cloud instance  \n- redo api authentication  \n  now api authentication will use same user/pwd (if specified) for ui and strictly enforce it using httpbasicauth  \n  new authentication is also fully supported in combination with ssl for both sync and async calls  \n  if you want to use api programatically, see examples in `cli/sdapi.py`  \n- add dark/light theme mode toggle  \n- redo some `clip-skip` functionality  \n- better matching for vae vs model  \n- update to `xyz grid` to allow creation of large number of images without creating grid itself  \n- update `gradio` (again)  \n- more prompt parser optimizations  \n- better error handling when importing image settings which are not compatible with current install  \n  for example, when upscaler or sampler originally used is not available  \n- fixes...amazing how many issues were introduced by porting a1111 v1.20 code without adding almost no new functionality  \n  next one is v1.30 (still in dev) which does bring a lot of new features  \n\n## Update for 2023-05-17\n\nThis is a massive one due to huge number of changes,  \nbut hopefully it will go ok...\n\n- new **prompt parsers**  \n  select in UI -> Settings -> Stable Diffusion  \n  - **Full**: my new implementation  \n  - **A1111**: for backward compatibility  \n  - **Compel**: as used in ComfyUI and InvokeAI (a.k.a *Temporal Weighting*)  \n  - **Fixed**: for really old backward compatibility  \n- monitor **extensions** install/startup and  \n  log if they modify any packages/requirements  \n  this is a *deep-experimental* python hack, but i think its worth it as extensions modifying requirements  \n  is one of most common causes of issues\n- added `--safe` command line flag mode which skips loading user extensions  \n  please try to use it before opening new issue  \n- reintroduce `--api-only` mode to start server without ui  \n- port *all* upstream changes from [A1111](https://github.com/AUTOMATIC1111/stable-diffusion-webui)  \n  up to today - commit hash `89f9faa`  \n\n## Update for 2023-05-15\n\n- major work on **prompt parsing**\n  this can cause some differences in results compared to what youre used to, but its all about fixes & improvements\n  - prompt parser was adding commas and spaces as separate words and tokens and/or prefixes\n  - negative prompt weight using `[word:weight]` was ignored, it was always `0.909`\n  - bracket matching was anything but correct. complex nested attention brackets are now working.\n  - btw, if you run with `--debug` flag, youll now actually see parsed prompt & schedule\n- updated all scripts in `/cli`  \n- add option in settings to force different **latent sampler** instead of using primary only\n- add **interrupt/skip** capabilities to process images\n\n## Update for 2023-05-13\n\nThis is mostly about optimizations...\n\n- improved `torch-directml` support  \n  especially interesting for **amd** users on **windows**  where **torch+rocm** is not yet available  \n  dont forget to run using `--use-directml` or default is **cpu**  \n- improved compatibility with **nvidia** rtx 1xxx/2xxx series gpus  \n- fully working `torch.compile` with **torch 2.0.1**  \n  using `inductor` compile takes a while on first run, but does result in 5-10% performance increase  \n- improved memory handling  \n  for highest performance, you can also disable aggressive **gc** in settings  \n- improved performance  \n  especially *after* generate as image handling has been moved to separate thread  \n- allow per-extension updates in extension manager  \n- option to reset configuration in settings  \n\n## Update for 2023-05-11\n\n- brand new **extension manager**  \n  this is pretty much a complete rewrite, so new issues are possible\n- support for `torch` 2.0.1  \n  note that if you are experiencing frequent hangs, this may be a worth a try  \n- updated `gradio` to 3.29.0\n- added `--reinstall` flag to force reinstall of all packages  \n- auto-recover & re-attempt when `--upgrade` is requested but fails\n- check for duplicate extensions  \n\n## Update for 2023-05-08\n\nBack online with few updates:\n\n- bugfixes. yup, quite a lot of those  \n- auto-detect some cpu/gpu capabilities on startup  \n  this should reduce need to tweak and tune settings like no-half, no-half-vae, fp16 vs fp32, etc  \n- configurable order of top level tabs  \n- configurable order of scripts in txt2img and img2img  \n  for both, see sections in ui-> settings -> user interface\n\n## Update for 2023-05-04\n\nAgain, few days later...\n\n- reviewed/ported **all** commits from **A1111** upstream  \n  some a few are not applicable as i already have alternative implementations  \n  and very few i choose not to implement (save/restore last-known-good-config is a bad hack)  \n  otherwise, were fully up to date (it doesnt show on fork status as code merges were mostly manual due to conflicts)  \n  but...due to sheer size of the updates, this may introduce some temporary issues  \n- redesigned server restart function  \n  now available and working in ui  \n  actually, since server restart is now a true restart and not ui restart, it can be used much more flexibly  \n- faster model load  \n  plus support for slower devices via stream-load function (in ui settings)  \n- better logging  \n  this includes new `--debug` flag for more verbose logging when troubleshooting  \n\n## Update for 2023-05-01\n\nBeen a bit quieter for last few days as changes were quite significant, but finally here we are...\n\n- Updated core libraries: Gradio, Diffusers, Transformers\n- Added support for **Intel ARC** GPUs via Intel OneAPI IPEX (auto-detected)\n- Added support for **TorchML** (set by default when running on non-compatible GPU or on CPU)\n- Enhanced support for AMD GPUs with **ROCm**\n- Enhanced support for Apple **M1/M2**\n- Redesigned command params: run `webui --help` for details\n- Redesigned API and script processing\n- Experimental support for multiple **Torch compile** options\n- Improved sampler support\n- Google Colab: <https://colab.research.google.com/drive/126cDNwHfifCyUpCCQF9IHpEdiXRfHrLN>  \n  Maintained by <https://github.com/Linaqruf/sd-notebook-collection>\n- Fixes, fixes, fixes...\n\nTo take advantage of new out-of-the-box tunings, its recommended to delete your `config.json` so new defaults are applied. its not necessary, but otherwise you may need to play with UI Settings to get the best of Intel ARC, TorchML, ROCm or Apple M1/M2.\n\n## Update for 2023-04-27\n\na bit shorter list as:\n\n- ive been busy with bugfixing  \n  there are a lot of them, not going to list each here.  \n  but seems like critical issues backlog is quieting down and soon i can focus on new features development.  \n- ive started collaboration with couple of major projects,\n  hopefully this will accelerate future development.\n\nwhats new:\n\n- ability to view/add/edit model description shown in extra networks cards  \n- add option to specify fallback sampler if primary sampler is not compatible with desired operation  \n- make clip skip a local parameter  \n- remove obsolete items from UI settings  \n- set defaults for AMD ROCm  \n  if you have issues, you may want to start with a fresh install so configuration can be created from scratch\n- set defaults for Apple M1/M2  \n  if you have issues, you may want to start with a fresh install so configuration can be created from scratch\n\n## Update for 2023-04-25\n\n- update process image -> info\n- add VAE info to metadata\n- update GPU utility search paths for better GPU type detection\n- update git flags for wider compatibility\n- update environment tuning\n- update ti training defaults\n- update VAE search paths\n- add compatibility opts for some old extensions\n- validate script args for always-on scripts  \n  fixes: deforum with controlnet  \n\n## Update for 2023-04-24\n\n- identify race condition where generate locks up while fetching preview\n- add pulldowns to x/y/z script\n- add VAE rollback feature in case of NaNs\n- use samples format for live preview\n- add token merging\n- use **Approx NN** for live preview\n- create default `styles.csv`\n- fix setup not installing `tensorflow` dependencies\n- update default git flags to reduce number of warnings\n\n## Update for 2023-04-23\n\n- fix VAE dtype  \n  should fix most issues with NaN or black images  \n- add built-in Gradio themes  \n- reduce requirements  \n- more AMD specific work\n- initial work on Apple platform support\n- additional PR merges\n- handle torch cuda crashing in setup\n- fix setup race conditions\n- fix ui lightbox\n- mark tensorflow as optional\n- add additional image name templates\n\n## Update for 2023-04-22\n\n- autodetect which system libs should be installed  \n  this is a first pass of autoconfig for **nVidia** vs **AMD** environments  \n- fix parse cmd line args from extensions  \n- only install `xformers` if actually selected as desired cross-attention method\n- do not attempt to use `xformers` or `sdp` if running on cpu\n- merge tomesd token merging  \n- merge 23 PRs pending from a1111 backlog (!!)\n\n*expect shorter updates for the next few days as ill be partially ooo*\n\n## Update for 2023-04-20\n\n- full CUDA tuning section in UI Settings\n- improve exif/pnginfo metadata parsing  \n  it can now handle 3rd party images or images edited in external software\n- optimized setup performance and logging\n- improve compatibility with some 3rd party extensions\n  for example handle extensions that install packages directly from github urls\n- fix initial model download if no models found\n- fix vae not found issues\n- fix multiple git issues\n\nnote: if you previously had command line optimizations such as --no-half, those are now ignored and moved to ui settings\n\n## Update for 2023-04-19\n\n- fix live preview\n- fix model merge\n- fix handling of user-defined temp folders\n- fix submit benchmark\n- option to override `torch` and `xformers` installer\n- separate benchmark data for system-info extension\n- minor css fixes\n- created initial merge backlog from pending prs on a1111 repo  \n  see #258 for details\n\n## Update for 2023-04-18\n\n- reconnect ui to active session on browser restart  \n  this is one of most frequently asked for items, finally figured it out  \n  works for text and image generation, but not for process as there is no progress bar reported there to start with  \n- force unload `xformers` when not used  \n  improves compatibility with AMD/M1 platforms  \n- add `styles.csv` to UI settings to allow customizing path  \n- add `--skip-git` to cmd flags for power users that want  \n  to skip all git checks and operations and perform manual updates\n- add `--disable-queue` to cmd flags that disables Gradio queues (experimental)\n  this forces it to use HTTP instead of WebSockets and can help on unreliable network connections  \n- set scripts & extensions loading priority and allow custom priorities  \n  fixes random extension issues:  \n  `ScuNet` upscaler disappearing, `Additional Networks` not showing up on XYZ axis, etc.\n- improve html loading order\n- remove some `asserts` causing runtime errors and replace with user-friendly messages\n- update README.md\n\n## Update for 2023-04-17\n\n- **themes** are now dynamic and discovered from list of available gradio themes on huggingface  \n  its quite a list of 30+ supported themes so far  \n- added option to see **theme preview** without the need to apply it or restart server\n- integrated **image info** functionality into **process image** tab and removed separate **image info** tab\n- more installer improvements\n- fix urls\n- updated github integration\n- make model download as optional if no models found\n\n## Update for 2023-04-16\n\n- support for ui themes! to to *settings* -> *user interface* -> \"ui theme*\n  includes 12 predefined themes\n- ability to restart server from ui\n- updated requirements\n- removed `styles.csv` from repo, its now fully under user control\n- removed model-keyword extension as overly aggressive\n- rewrite of the fastapi middleware handlers\n- install bugfixes, hopefully new installer is now ok  \\\n  i really want to focus on features and not troubleshooting installer\n\n## Update for 2023-04-15\n\n- update default values\n- remove `ui-config.json` from repo, its now fully under user control\n- updated extensions manager\n- updated locon/lycoris plugin\n- enable quick launch by default\n- add multidiffusion upscaler extensions\n- add model keyword extension\n- enable strong linting\n- fix circular imports\n- fix extensions updated\n- fix git update issues\n- update github templates\n\n## Update for 2023-04-14\n\n- handle duplicate extensions\n- redo exception handler\n- fix generate forever\n- enable cmdflags compatibility\n- change default css font\n- fix ti previews on initial start\n- enhance tracebacks\n- pin transformers version to last known good version\n- fix extension loader\n\n## Update for 2023-04-12\n\nThis has been pending for a while, but finally uploaded some massive changes\n\n- New launcher\n  - `webui.bat` and `webui.sh`:  \n    Platform specific wrapper scripts that starts `launch.py` in Python virtual environment  \n    *Note*: Server can run without virtual environment, but it is recommended to use it  \n    This is carry-over from original repo  \n    **If youre unsure which launcher to use, this is the one you want**  \n  - `launch.py`:  \n    Main startup script  \n    Can be used directly to start server in manually activated `venv` or to run it without `venv`  \n  - `installer.py`:  \n    Main installer, used by `launch.py`  \n  - `webui.py`:  \n    Main server script  \n- New logger\n- New exception handler\n- Built-in performance profiler\n- New requirements handling\n- Move of most of command line flags into UI Settings\n"
  },
  {
    "path": "CITATION.cff",
    "content": "cff-version: 1.2.0\ntitle: SD.Next\nurl: 'https://github.com/vladmandic/sdnext'\nmessage: >-\n  If you use this software, please cite it using the\n  metadata from this file\ntype: software\nauthors:\n  - given-names: Vladimir\n    name-particle: Vlado\n    family-names: Mandic\n    orcid: 'https://orcid.org/0009-0003-4592-5074'\nidentifiers:\n  - type: url\n    value: 'https://github.com/vladmandic'\n    description: GitHub\n  - type: url\n    value: 'https://www.linkedin.com/in/cyan051/'\n    description: LinkedIn\nrepository-code: 'https://github.com/vladmandic/sdnext'\nabstract: >-\n  SD.Next: Advanced Implementation of Stable Diffusion\n  and other diffusion models for text, image and video\n  generation\nkeywords:\n  - stablediffusion diffusers sdnext\nlicense: Apache-2.0\ndate-released: 2022-12-24\n"
  },
  {
    "path": "CODE_OF_CONDUCT",
    "content": "# Code of Conduct\n\nUse your best judgement\nIf it will possibly make others uncomfortable, do not post it\n\n- Be respectful\n  Disagreement is not an opportunity to attack someone else's thoughts or opinions\n  Although views may differ, remember to approach every situation with patience and care\n- Be considerate\n  Think about how your contribution will affect others in the community\n- Be open minded\n  Embrace new people and new ideas. Our community is continually evolving and we welcome positive change\n\nBe mindful of your language\nAny of the following behavior is unacceptable:\n\n- Offensive comments of any kind\n- Threats or intimidation\n- Or any other kinds of harassment\n\nIf you believe someone is violating the code of conduct, we ask that you report it\n\nParticipants asked to stop any harassing behavior are expected to comply immediately\n\n<br>\n\n## Usage Restrictions\n\nSee [LICENSE](LICENSE.txt) for more information\n"
  },
  {
    "path": "CONTRIBUTING",
    "content": "# Contributing Guidelines\n\nPull requests from everyone are welcome\n\nProcedure for contributing:\n\n- Select SD.Next `dev` branch:\n  <https://github.com/vladmandic/sdnext/tree/dev>\n- Create a fork of the repository on github\n  In a top right corner of a GitHub, select \"Fork\"\n  Its recommended to fork latest version from main branch to avoid any possible conflicting code updates\n- Clone your forked repository to your local system\n  `git clone https://github.com/<your-username>/<your-fork>`\n- Make your changes\n- Test your changes\n- Lint your changes against code guidelines\n  - `ruff check`\n  - `pylint <folder>/<filename>.py`\n- Push changes to your fork\n- Submit a PR (pull request)\n  - Make sure that PR is against `dev` branch\n  - Update your fork before createing PR so that it is based on latest code\n  - Make sure that PR does NOT include any unrelated edits\n  - Make sure that PR does not include changes to submodules\n\nYour pull request will be reviewed and pending review results, merged into `dev` branch\nDev merges to main are performed regularly and any PRs that are merged to `dev` will be included in the next main release\n"
  },
  {
    "path": "README.md",
    "content": "<div align=\"center\">\n<img src=\"https://github.com/vladmandic/sdnext/raw/master/html/logo-transparent.png\" width=200 alt=\"SD.Next\">\n\n# SD.Next: All-in-one WebUI for AI generative image and video creation and captioning  \n\n![Last update](https://img.shields.io/github/last-commit/vladmandic/sdnext?svg=true)\n![License](https://img.shields.io/github/license/vladmandic/sdnext?svg=true)\n[![Discord](https://img.shields.io/discord/1101998836328697867?logo=Discord&svg=true)](https://discord.gg/VjvR2tabEX)\n[![DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/vladmandic/sdnext)\n[![Sponsors](https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub&color=%23fe8e86)](https://github.com/sponsors/vladmandic)\n\n[Docs](https://vladmandic.github.io/sdnext-docs/) | [Wiki](https://github.com/vladmandic/sdnext/wiki) | [Discord](https://discord.gg/VjvR2tabEX) | [Changelog](CHANGELOG.md)\n\n</div>\n</br>\n\n## Table of contents\n\n- [Documentation](https://vladmandic.github.io/sdnext-docs/)\n- [SD.Next Features](#sdnext-features)\n- [Model support](#model-support)\n- [Platform support](#platform-support)\n- [Getting started](#getting-started)\n\n## SD.Next Features\n\nAll individual features are not listed here, instead check [ChangeLog](CHANGELOG.md) for full list of changes\n- Fully localized:\n  ▹ **English | Chinese | Russian | Spanish | German | French | Italian | Portuguese | Japanese | Korean**  \n- Desktop and Mobile support!  \n- Multiple [diffusion models](https://vladmandic.github.io/sdnext-docs/Model-Support/)!  \n- Multi-platform!  \n ▹ **Windows | Linux | MacOS | nVidia CUDA | AMD ROCm | Intel Arc / IPEX XPU | DirectML | OpenVINO | ONNX+Olive | ZLUDA**\n- Platform specific auto-detection and tuning performed on install  \n- Optimized processing with latest `torch` developments with built-in support for model compile and quantize  \n  Compile backends: *Triton | StableFast | DeepCache | OneDiff | TeaCache | etc.*  \n  Quantization methods: *SDNQ | BitsAndBytes | Optimum-Quanto | TorchAO / LayerWise*  \n- **Interrogate/Captioning** with 150+ **OpenCLiP** models and 20+ built-in **VLMs**  \n- Built in installer with automatic updates and dependency management  \n\n<br>\n\n**Desktop** interface  \n<div align=\"center\">\n<img src=\"https://github.com/user-attachments/assets/d6119a63-6ee5-4597-95f6-29ed0701d3b5\" alt=\"screenshot-modernui-desktop\" width=\"90%\">\n</div>\n\n**Mobile** interface  \n<div align=\"center\">\n<img src=\"https://github.com/user-attachments/assets/ced9fe0c-d2c2-46d1-94a7-8f9f2307ce38\" alt=\"screenshot-modernui-mobile\" width=\"35%\">\n</div>\n\nFor screenshots and information on other available themes, see [Themes](https://vladmandic.github.io/sdnext-docs/Themes/)\n\n<br>\n\n## Model support\n\nSD.Next supports broad range of models: [supported models](https://vladmandic.github.io/sdnext-docs/Model-Support/) and [model specs](https://vladmandic.github.io/sdnext-docs/Models/)  \n\n## Platform support\n\n- *nVidia* GPUs using **CUDA** libraries on both *Windows and Linux*  \n- *AMD* GPUs using **ROCm** libraries on *Linux*  \n  Support will be extended to *Windows* once AMD releases ROCm for Windows  \n- *Intel Arc* GPUs using **OneAPI** with *IPEX XPU* libraries on both *Windows and Linux*  \n- Any GPU compatible with *DirectX* on *Windows* using **DirectML** libraries  \n  This includes support for AMD GPUs that are not supported by native ROCm libraries  \n- Any GPU or device compatible with **OpenVINO** libraries on both *Windows and Linux*  \n- *Apple M1/M2* on *OSX* using built-in support in Torch with **MPS** optimizations  \n- *ONNX/Olive*  \n- *AMD* GPUs on Windows using **ZLUDA** libraries  \n\nPlus Docker container recipes for: [CUDA, ROCm, Intel IPEX and OpenVINO](https://vladmandic.github.io/sdnext-docs/Docker/)\n\n## Getting started\n\n- Get started with **SD.Next** by following the [installation instructions](https://vladmandic.github.io/sdnext-docs/Installation/)  \n- For more details, check out [advanced installation](https://vladmandic.github.io/sdnext-docs/Advanced-Install/) guide  \n- List and explanation of [command line arguments](https://vladmandic.github.io/sdnext-docs/CLI-Arguments/)  \n- Install walkthrough [video](https://www.youtube.com/watch?v=nWTnTyFTuAs)  \n\n> [!TIP]\n> And for platform specific information, check out  \n> [WSL](https://vladmandic.github.io/sdnext-docs/WSL/) | [Intel Arc](https://vladmandic.github.io/sdnext-docs/Intel-ARC/) | [DirectML](https://vladmandic.github.io/sdnext-docs/DirectML/) | [OpenVINO](https://vladmandic.github.io/sdnext-docs/OpenVINO/) | [ONNX & Olive](https://vladmandic.github.io/sdnext-docs/ONNX-Runtime/) | [ZLUDA](https://vladmandic.github.io/sdnext-docs/ZLUDA/) | [AMD ROCm](https://vladmandic.github.io/sdnext-docs/AMD-ROCm/) | [MacOS](https://vladmandic.github.io/sdnext-docs/MacOS-Python/) | [nVidia](https://vladmandic.github.io/sdnext-docs/nVidia/) | [Docker](https://vladmandic.github.io/sdnext-docs/Docker/)\n\n> [!WARNING]\n> If you run into issues, check out [troubleshooting](https://vladmandic.github.io/sdnext-docs/Troubleshooting/) and [debugging](https://vladmandic.github.io/sdnext-docs/Debug/) guides  \n\n### Contributing\n\nPlease see [Contributing](CONTRIBUTING) for details on how to contribute to this project  \nAnd for any question, reach out on [Discord](https://discord.gg/VjvR2tabEX) or open an [issue](https://github.com/vladmandic/sdnext/issues) or [discussion](https://github.com/vladmandic/sdnext/discussions)  \n\n### Credits\n\n- Main credit goes to [Automatic1111 WebUI](https://github.com/AUTOMATIC1111/stable-diffusion-webui) for the original codebase  \n- Additional credits are listed in [Credits](https://github.com/AUTOMATIC1111/stable-diffusion-webui/#credits)  \n- Licenses for modules are listed in [Licenses](html/licenses.html)  \n\n### Evolution\n\n<a href=\"https://star-history.com/#vladmandic/sdnext&Date\">\n  <picture width=640>\n    <source media=\"(prefers-color-scheme: dark)\" srcset=\"https://api.star-history.com/svg?repos=vladmandic/sdnext&type=Date&theme=dark\" />\n    <img src=\"https://api.star-history.com/svg?repos=vladmandic/sdnext&type=Date\" alt=\"starts\" width=\"320\">\n  </picture>\n</a>\n\n- [OSS Stats](https://ossinsight.io/analyze/vladmandic/sdnext#overview)\n\n### Docs\n\nIf you're unsure how to use a feature, best place to start is [Docs](https://vladmandic.github.io/sdnext-docs/) and if its not there,  \ncheck [ChangeLog](https://vladmandic.github.io/sdnext-docs/CHANGELOG/) for when feature was first introduced as it will always have a short note on how to use it  \n\n<br>\n"
  },
  {
    "path": "SECURITY.md",
    "content": "# Security & Privacy Policy\n\n<br>\n\n## Issues\n\nAll issues are tracked publicly on GitHub: <https://github.com/vladmandic/sdnext/issues>\n\n<br>\n\n## Vulnerabilities\n\n`SD.Next` code base and included dependencies are automatically scanned against known security vulnerabilities\n\nAny code commit is validated before merge\n\n- [Dependencies](https://github.com/vladmandic/sdnext/security/dependabot)\n- [Scanning Alerts](https://github.com/vladmandic/sdnext/security/code-scanning)\n\n<br>\n\n## Privacy\n\n`SD.Next` app:\n\n- Is fully self-contained and does not send or share data of any kind with external targets\n- Does not store any user or system data tracking, user provided inputs (images, video) or detection results\n- Does not utilize any analytic services (such as Google Analytics)\n\n`SD.Next` library can establish external connections *only* for following purposes and *only* when explicitly configured by user:\n\n- Download extensions and themes indexes from automatically updated indexes\n- Download required packages and repositories from GitHub during installation/upgrade\n- Download installed/enabled extensions\n- Download models from CivitAI and/or Huggingface when instructed by user\n- Submit benchmark info upon user interaction\n"
  },
  {
    "path": "TODO.md",
    "content": "# TODO\n\n## Internal\n\n- Update: `transformers==5.0.0`, owner @CalamitousFelicitousness\n- Deploy: Create executable for SD.Next\n- Deploy: Lite vs Expert mode\n- Engine: [mmgp](https://github.com/deepbeepmeep/mmgp)\n- Engine: [sharpfin](https://github.com/drhead/sharpfin) instead of `torchvision`\n- Engine: `TensorRT` acceleration\n- Feature: Auto handle scheduler `prediction_type`\n- Feature: Cache models in memory\n- Feature: Control tab add overrides handling\n- Feature: Integrate natural language image search\n  [ImageDB](https://github.com/vladmandic/imagedb)\n- Feature: LoRA add OMI format support for SD35/FLUX.1, on-hold\n- Feature: Multi-user support\n- Feature: Remote Text-Encoder support, sidelined for the moment\n- Feature: Settings profile manager\n- Feature: Video tab add full API support\n- Refactor: Unify *huggingface* and *diffusers* model folders\n- Refactor: Move `nunchaku` models to refernce instead of internal decision, owner @CalamitousFelicitousness\n- Refactor: [GGUF](https://huggingface.co/docs/diffusers/main/en/quantization/gguf)\n- Refactor: move sampler options to settings to config\n- Refactor: remove `CodeFormer`, owner @CalamitousFelicitousness\n- Refactor: remove `GFPGAN`, owner @CalamitousFelicitousness\n- Reimplement `llama` remover for Kanvas, pending end-to-end review of `Kanvas`\n\n## Modular\n\n*Pending finalization of modular pipelines implementation and development of compatibility layer*\n\n- Switch to modular pipelines\n- Feature: Transformers unified cache handler\n- Refactor: [Modular pipelines and guiders](https://github.com/huggingface/diffusers/issues/11915)\n- [MagCache](https://github.com/huggingface/diffusers/pull/12744)\n- [SmoothCache](https://github.com/huggingface/diffusers/issues/11135)\n- [STG](https://github.com/huggingface/diffusers/blob/main/examples/community/README.md#spatiotemporal-skip-guidance)\n\n## New models / Pipelines\n\nTODO: Investigate which models are diffusers-compatible and prioritize!\n\n### Image-Base\n- [Chroma Zeta](https://huggingface.co/lodestones/Zeta-Chroma): Image and video generator for creative effects and professional filters\n- [Chroma Radiance](https://huggingface.co/lodestones/Chroma1-Radiance): Pixel-space model eliminating VAE artifacts for high visual fidelity\n- [Liquid](https://github.com/FoundationVision/Liquid): Unified vision-language auto-regressive generation paradigm\n- [Lumina-DiMOO](https://huggingface.co/Alpha-VLLM/Lumina-DiMOO): Foundational multi-modal generation and understanding via discrete diffusion\n- [nVidia Cosmos-Predict-2.5](https://huggingface.co/nvidia/Cosmos-Predict2.5-2B): Physics-aware world foundation model for consistent scene prediction\n- [Liquid (unified multimodal generator)](https://github.com/FoundationVision/Liquid): Auto-regressive generation paradigm across vision and language\n- [Lumina-DiMOO](https://huggingface.co/Alpha-VLLM/Lumina-DiMOO): foundational multi-modal multi-task generation and understanding\n\n### Image-Edit\n- [Meituan LongCat-Image-Edit-Turbo](https://huggingface.co/meituan-longcat/LongCat-Image-Edit-Turbo):6B instruction-following image editing with high visual consistency\n- [VIBE Image-Edit](https://huggingface.co/iitolstykh/VIBE-Image-Edit): (Sana+Qwen-VL)Fast visual instruction-based image editing framework\n- [LucyEdit](https://github.com/huggingface/diffusers/pull/12340):Instruction-guided video editing while preserving motion and identity\n- [Step1X-Edit](https://github.com/stepfun-ai/Step1X-Edit):Multimodal image editing decoding MLLM tokens via DiT\n- [OneReward](https://github.com/bytedance/OneReward):Reinforcement learning grounded generative reward model for image editing\n- [ByteDance DreamO](https://huggingface.co/ByteDance/DreamO): image customization framework for IP adaptation and virtual try-on\n\n### Video\n- [OpenMOSS MOVA](https://huggingface.co/OpenMOSS-Team/MOVA-720p): Unified foundation model for synchronized high-fidelity video and audio\n- [Wan family (Wan2.1 / Wan2.2 variants)](https://huggingface.co/Wan-AI/Wan2.2-Animate-14B): MoE-based foundational tools for cinematic T2V/I2V/TI2V\n example: [Wan2.1-T2V-14B-CausVid](https://huggingface.co/lightx2v/Wan2.1-T2V-14B-CausVid)\n distill / step-distill examples: [Wan2.1-StepDistill-CfgDistill](https://huggingface.co/lightx2v/Wan2.1-T2V-14B-StepDistill-CfgDistill)\n- [Krea Realtime Video](https://huggingface.co/krea/krea-realtime-video): (Wan2.1)Distilled real-time video diffusion using self-forcing techniques\n- [MAGI-1 (autoregressive video)](https://github.com/SandAI-org/MAGI-1): Autoregressive video generation allowing infinite and timeline control\n- [MUG-V 10B (video generation)](https://huggingface.co/MUG-V/MUG-V-inference): large-scale DiT-based video generation system trained via flow-matching\n- [Ovi (audio/video generation)](https://github.com/character-ai/Ovi): (Wan2.2)Speech-to-video with synchronized sound effects and music\n- [HunyuanVideo-Avatar / HunyuanCustom](https://huggingface.co/tencent/HunyuanVideo-Avatar): (HunyuanVideo)MM-DiT based dynamic emotion-controllable dialogue generation\n- [Sana Image→Video (Sana-I2V)](https://github.com/huggingface/diffusers/pull/12634#issuecomment-3540534268): (Sana)Compact Linear DiT framework for efficient high-resolution video\n- [Wan-2.2 S2V (diffusers PR)](https://github.com/huggingface/diffusers/pull/12258): (Wan2.2)Audio-driven cinematic speech-to-video generation\n- [LongCat-Video](https://huggingface.co/meituan-longcat/LongCat-Video): Unified framework for minutes-long coherent video generation via Block Sparse Attention\n- [LTXVideo / LTXVideo LongMulti (diffusers PR)](https://github.com/huggingface/diffusers/pull/12614): Real-time DiT-based generation with production-ready camera controls\n- [DiffSynth-Studio (ModelScope)](https://github.com/modelscope/DiffSynth-Studio): (Wan2.2)Comprehensive training and quantization tools for Wan video models\n- [Phantom (Phantom HuMo)](https://github.com/Phantom-video/Phantom): Human-centric video generation framework focus on subject ID consistency\n- [CausVid-Plus / WAN-CausVid-Plus](https://github.com/goatWu/CausVid-Plus/): (Wan2.1)Causal diffusion for high-quality temporally consistent long videos\n- [Wan2GP (workflow/GUI for Wan)](https://github.com/deepbeepmeep/Wan2GP): (Wan)Web-based UI focused on running complex video models for GPU-poor setups\n- [LivePortrait](https://github.com/KwaiVGI/LivePortrait): Efficient portrait animation system with high stitching and retargeting control\n- [Magi (SandAI)](https://github.com/SandAI-org/MAGI-1): High-quality autoregressive video generation framework\n- [Ming (inclusionAI)](https://github.com/inclusionAI/Ming): Unified multimodal model for processing text, audio, image, and video\n\n### Other/Unsorted\n- [DiffusionForcing](https://github.com/kwsong0113/diffusion-forcing-transformer): Full-sequence diffusion with autoregressive next-token prediction\n- [Self-Forcing](https://github.com/guandeh17/Self-Forcing): Framework for improving temporal consistency in long-horizon video generation\n- [SEVA](https://github.com/huggingface/diffusers/pull/11440): Stable Virtual Camera for novel view synthesis and 3D-consistent video\n- [ByteDance USO](https://github.com/bytedance/USO): Unified Style-Subject Optimized framework for personalized image generation\n- [ByteDance Lynx](https://github.com/bytedance/lynx): State-of-the-art high-fidelity personalized video generation based on DiT\n- [LanDiff](https://github.com/landiff/landiff): Coarse-to-fine text-to-video integrating Language and Diffusion Models\n- [Video Inpaint Pipeline](https://github.com/huggingface/diffusers/pull/12506): Unified inpainting pipeline implementation within Diffusers library\n- [Sonic Inpaint](https://github.com/ubc-vision/sonic): Audio-driven portrait animation system focus on global audio perception\n- [Make-It-Count](https://github.com/Litalby1/make-it-count): CountGen method for precise numerical control of objects via object identity features\n- [ControlNeXt](https://github.com/dvlab-research/ControlNeXt/): Lightweight architecture for efficient controllable image and video generation\n- [MS-Diffusion](https://github.com/MS-Diffusion/MS-Diffusion): Layout-guided multi-subject image personalization framework\n- [UniRef](https://github.com/FoundationVision/UniRef): Unified model for segmentation tasks designed as foundation model plug-in\n- [FlashFace](https://github.com/ali-vilab/FlashFace): High-fidelity human image customization and face swapping framework\n- [ReNO](https://github.com/ExplainableML/ReNO): Reward-based Noise Optimization to improve text-to-image quality during inference\n\n### Not Planned\n- [Bria FIBO](https://huggingface.co/briaai/FIBO): Fully JSON based\n- [Bria FiboEdit](https://github.com/huggingface/diffusers/commit/d7a1c31f4f85bae5a9e01cdce49bd7346bd8ccd6): Fully JSON based\n- [LoRAdapter](https://github.com/CompVis/LoRAdapter): Not recently updated\n- [SD3 UltraEdit](https://github.com/HaozheZhao/UltraEdit): Based on SD3\n- [PowerPaint](https://github.com/open-mmlab/PowerPaint): Based on SD15\n- [FreeCustom](https://github.com/aim-uofa/FreeCustom): Based on SD15\n- [AnyDoor](https://github.com/ali-vilab/AnyDoor): Based on SD21\n- [AnyText2](https://github.com/tyxsspa/AnyText2): Based on SD15\n- [DragonDiffusion](https://github.com/MC-E/DragonDiffusion): Based on SD15\n- [DenseDiffusion](https://github.com/naver-ai/DenseDiffusion): Based on SD15\n- [IC-Light](https://github.com/lllyasviel/IC-Light): Based on SD15\n\n## Migration\n\n### Asyncio\n\n- Policy system is deprecated and will be removed in Python 3.16\n [Python 3.14 removalsasyncio](https://docs.python.org/3.14/whatsnew/3.14.html#id10)\n https://docs.python.org/3.14/library/asyncio-policy.html\n Affected files:\n   [`webui.py`](webui.py)\n   [`cli/sdapi.py`](cli/sdapi.py)\n Migration:\n   [asyncio.run](https://docs.python.org/3.14/library/asyncio-runner.html#asyncio.run)\n   [asyncio.Runner](https://docs.python.org/3.14/library/asyncio-runner.html#asyncio.Runner)\n\n### rmtree\n\n- `onerror` deprecated and replaced with `onexc` in Python 3.12\n``` python\n    def excRemoveReadonly(func, path, exc: BaseException):\n        import stat\n        shared.log.debug(f'Exception during cleanup: {func} {path} {type(exc).__name__}')\n        if func in (os.rmdir, os.remove, os.unlink) and isinstance(exc, PermissionError):\n            shared.log.debug(f'Retrying cleanup: {path}')\n            os.chmod(path, stat.S_IRWXU | stat.S_IRWXG | stat.S_IRWXO)\n            func(path)\n    # ...\n      try:\n          shutil.rmtree(found.path, ignore_errors=False, onexc=excRemoveReadonly)\n```\n\n## Code TODO\n\n> npm run todo\n \n- fc: autodetect distilled based on model\n- fc: autodetect tensor format based on model\n- hypertile: vae breaks when using non-standard sizes\n- install: switch to pytorch source when it becomes available\n- loader: load receipe\n- loader: save receipe\n- lora: add other quantization types\n- lora: add t5 key support for sd35/f1\n- lora: maybe force imediate quantization\n- model load: force-reloading entire model as loading transformers only leads to massive memory usage\n- model load: implement model in-memory caching\n- modernui: monkey-patch for missing tabs.select event\n- modules/lora/lora_extract.py:188:9: W0511: TODO: lora: support pre-quantized flux\n- modules/modular_guiders.py:65:58: W0511: TODO: guiders\n- processing: remove duplicate mask params\n- resize image: enable full VAE mode for resize-latent\n"
  },
  {
    "path": "cli/api-checkpoint.py",
    "content": "#!/usr/bin/env python\nimport os\nimport logging\nimport requests\nimport urllib3\n\n\nsd_url = os.environ.get('SDAPI_URL', \"http://127.0.0.1:7860\")\nsd_username = os.environ.get('SDAPI_USR', None)\nsd_password = os.environ.get('SDAPI_PWD', None)\noptions = {\n    \"save_images\": True,\n    \"send_images\": True,\n}\n\nlogging.basicConfig(level = logging.INFO, format = '%(asctime)s %(levelname)s: %(message)s')\nlog = logging.getLogger(__name__)\nurllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)\n\n\ndef auth():\n    if sd_username is not None and sd_password is not None:\n        return requests.auth.HTTPBasicAuth(sd_username, sd_password)\n    return None\n\n\ndef get(endpoint: str, dct: dict = None):\n    req = requests.get(f'{sd_url}{endpoint}', json = dct, timeout=300, verify=False, auth=auth())\n    if req.status_code != 200:\n        return { 'error': req.status_code, 'reason': req.reason, 'url': req.url }\n    else:\n        return req.json()\n\n\nif __name__ == \"__main__\":\n    model = get('/sdapi/v1/checkpoint')\n    log.info(f'api-checkpoint: {model}')\n    model = get('/sdapi/v1/modules')\n    log.info(f'api-modules: {model}')\n"
  },
  {
    "path": "cli/api-control.py",
    "content": "#!/usr/bin/env python\n# example: api-control.py --prompt \"anime girl\" --control \"Canny:Canny:1.0:0.1:0.9:/home/vlado/generative/Samples/anime1.jpg,None:Depth:0.9:0.0:1.0:/home/vlado/generative/Samples/anime1.jpg\" --hires --detailer --output /tmp/anime.jpg\nimport os\nimport io\nimport time\nimport base64\nimport logging\nimport argparse\nimport requests\nimport urllib3\nfrom PIL import Image\n\nsd_url = os.environ.get('SDAPI_URL', \"http://127.0.0.1:7860\")\nsd_username = os.environ.get('SDAPI_USR', None)\nsd_password = os.environ.get('SDAPI_PWD', None)\n\nlogging.basicConfig(level = logging.INFO, format = '%(asctime)s %(levelname)s: %(message)s')\nlog = logging.getLogger(__name__)\nurllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)\n\noptions = {\n    \"save_images\": False,\n    \"send_images\": True,\n}\n\n\ndef auth():\n    if sd_username is not None and sd_password is not None:\n        return requests.auth.HTTPBasicAuth(sd_username, sd_password)\n    return None\n\n\ndef post(endpoint: str, dct: dict = None):\n    req = requests.post(f'{sd_url}{endpoint}', json = dct, timeout=300, verify=False, auth=auth())\n    if req.status_code != 200:\n        return { 'error': req.status_code, 'reason': req.reason, 'url': req.url }\n    else:\n        return req.json()\n\n\ndef encode(f):\n    image = Image.open(f)\n    if image.mode == 'RGBA':\n        image = image.convert('RGB')\n    with io.BytesIO() as stream:\n        image.save(stream, 'JPEG')\n        image.close()\n        values = stream.getvalue()\n        encoded = base64.b64encode(values).decode()\n        return encoded\n\n\ndef generate(args): # pylint: disable=redefined-outer-name\n    t0 = time.time()\n    if args.model is not None:\n        post('/sdapi/v1/options', { 'sd_model_checkpoint': args.model })\n        post('/sdapi/v1/reload-checkpoint') # needed if running in api-only to trigger new model load\n    if args.init is not None:\n        options['inits'] = [encode(args.init)]\n        image = Image.open(args.init)\n        options['width'] = image.width\n        options['height'] = image.height\n        image.close()\n    if args.input is not None:\n        options['inputs'] = [encode(args.input)]\n        image = Image.open(args.input)\n        options['width'] = image.width\n        options['height'] = image.height\n        image.close()\n    options['prompt'] = args.prompt\n    options['negative_prompt'] = args.negative\n    options['steps'] = int(args.steps)\n    options['seed'] = int(args.seed)\n    if args.sampler is not None:\n        options['sampler_name'] = args.sampler\n\n    if args.control is not None:\n        if args.type is not None:\n            options['unit_type'] = args.type\n        options['control'] = []\n        for control in args.control.split(','):\n            u = control.split(':')\n            if len(u) < 2:\n                log.error(f'invalid control: {control}')\n                continue\n            options['control'].append({\n                'process': u[0].strip(),\n                'model': u[1].strip(),\n                'strength': float(u[2].strip()) if len(u) > 2 else 1.0,\n                'start': float(u[3].strip()) if len(u) > 3 else 0.0,\n                'end': float(u[4].strip()) if len(u) > 4 else 1.0,\n                'override': encode(u[5].strip()) if len(u) > 5 else None,\n            })\n        log.info(f'added control: {options[\"control\"]}')\n\n    if args.ipadapter is not None:\n        options['ip_adapter'] = []\n        for ipadapter in args.ipadapter.split(','):\n            u = ipadapter.split(':')\n            if len(u) < 2:\n                log.error(f'invalid ipadapter: {ipadapter}')\n                continue\n            if not os.path.exists(u[1].strip()):\n                log.error(f'invalid ipadapter image: {u[1]}')\n                continue\n            options['ip_adapter'].append({\n                'adapter': u[0].strip(),\n                'images': [encode(u[1].strip())],\n                'scale': float(u[2].strip()) if len(u) > 2 else 1.0,\n                'start': float(u[3].strip()) if len(u) > 3 else 0.1,\n                'end': float(u[4].strip()) if len(u) > 4 else 1.0,\n            })\n\n    if args.mask is not None:\n        options['mask'] = encode(args.mask)\n\n    if args.detailer:\n        options['detailer_enabled'] = True\n\n    if args.hires:\n        options['enable_hr'] = True\n        options['hr_force'] = True\n\n    if args.upscaler is not None:\n        options['enable_hr'] = True\n        options['hr_force'] = True\n        options['hr_scale'] = 2\n        options['hr_resize_mode'] = 1\n        options['hr_upscaler'] = args.upscaler\n\n    data = post('/sdapi/v1/control', options)\n    t1 = time.time()\n    if 'info' in data:\n        log.info(f'info: {data[\"info\"]}')\n\n    def get_image(encoded, output):\n        if not isinstance(encoded, list):\n            return\n        for i in range(len(encoded)):\n            b64 = encoded[i].split(',',1)[0]\n            info = data['info']\n            image = Image.open(io.BytesIO(base64.b64decode(b64)))\n            log.info(f'received image: size={image.size} time={t1-t0:.2f} info=\"{info}\"')\n            if output:\n                image.save(output)\n                log.info(f'image saved: size={image.size} filename={output}')\n\n    if 'images' in data:\n        get_image(data['images'], args.output)\n    if 'processed' in data:\n        get_image(data['processed'], args.processed)\n\n\nif __name__ == \"__main__\":\n    parser = argparse.ArgumentParser(description = 'api-control')\n    parser.add_argument('--init', required=False, default=None, help='init image')\n    parser.add_argument('--input', required=False, default=None, help='input image')\n    parser.add_argument('--mask', required=False, help='mask image')\n    parser.add_argument('--prompt', required=False, default='', help='prompt text')\n    parser.add_argument('--negative', required=False, default='', help='negative prompt text')\n    parser.add_argument('--steps', required=False, default=20, help='number of steps')\n    parser.add_argument('--seed', required=False, default=-1, help='initial seed')\n    parser.add_argument('--sampler', required=False, default=None, help='sampler name')\n    parser.add_argument('--output', required=False, default=None, help='output image file')\n    parser.add_argument('--processed', required=False, default=None, help='processed output file')\n    parser.add_argument('--model', required=False, help='model name')\n    parser.add_argument('--type', required=False, default=\"controlnet\", help='control type')\n    parser.add_argument('--control', required=False, help='control units')\n    parser.add_argument('--ipadapter', required=False, help='ipadapter units')\n    parser.add_argument('--detailer', required=False, default=False, action='store_true', help='force detailer')\n    parser.add_argument('--hires', required=False, default=False, action='store_true', help='force hires')\n    parser.add_argument('--upscaler', required=False, default=None, help='upscaler name')\n    args = parser.parse_args()\n    log.info(f'api-control: {args}')\n    generate(args)\n"
  },
  {
    "path": "cli/api-detect.py",
    "content": "#!/usr/bin/env python\nimport os\nimport io\nimport base64\nimport logging\nimport argparse\nimport requests\nimport urllib3\nfrom PIL import Image\n\nsd_url = os.environ.get('SDAPI_URL', \"http://127.0.0.1:7860\")\nsd_username = os.environ.get('SDAPI_USR', None)\nsd_password = os.environ.get('SDAPI_PWD', None)\n\nlogging.basicConfig(level = logging.INFO, format = '%(asctime)s %(levelname)s: %(message)s')\nlog = logging.getLogger(__name__)\nurllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)\n\n\ndef auth():\n    if sd_username is not None and sd_password is not None:\n        return requests.auth.HTTPBasicAuth(sd_username, sd_password)\n    return None\n\n\ndef post(endpoint: str, dct: dict = None):\n    req = requests.post(f'{sd_url}{endpoint}', json = dct, timeout=300, verify=False, auth=auth())\n    if req.status_code != 200:\n        return { 'error': req.status_code, 'reason': req.reason, 'url': req.url }\n    else:\n        return req.json()\n\n\ndef encode(f):\n    image = Image.open(f)\n    if image.mode == 'RGBA':\n        image = image.convert('RGB')\n    with io.BytesIO() as stream:\n        image.save(stream, 'JPEG')\n        image.close()\n        values = stream.getvalue()\n        encoded = base64.b64encode(values).decode()\n        return encoded\n\n\ndef detect(args): # pylint: disable=redefined-outer-name\n    data = post('/sdapi/v1/detect', { 'image': encode(args.image), 'model': args.model })\n    for i in range(len(data['images'])):\n        log.info(f\"Item {i}: score={data['scores'][i]} cls={data['classes'][i]} box={data['boxes'][i]} label={data['labels'][i]}\")\n\n\nif __name__ == \"__main__\":\n    parser = argparse.ArgumentParser(description = 'api-faces')\n    parser.add_argument('--image', required=True, help='input image')\n    parser.add_argument('--model', required=False, default='', help='model')\n    args = parser.parse_args()\n    log.info(f'api-detect: {args}')\n    detect(args)\n"
  },
  {
    "path": "cli/api-enhance.py",
    "content": "#!/usr/bin/env python\nimport os\nimport io\nimport base64\nimport logging\nimport argparse\nimport requests\nimport urllib3\nfrom PIL import Image\n\n\nsd_url = os.environ.get('SDAPI_URL', \"http://127.0.0.1:7860\")\nsd_username = os.environ.get('SDAPI_USR', None)\nsd_password = os.environ.get('SDAPI_PWD', None)\n\nlogging.basicConfig(level = logging.INFO, format = '%(asctime)s %(levelname)s: %(message)s')\nlog = logging.getLogger(__name__)\nurllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)\n\n\ndef auth():\n    if sd_username is not None and sd_password is not None:\n        return requests.auth.HTTPBasicAuth(sd_username, sd_password)\n    return None\n\n\ndef post(endpoint: str, dct: dict = None):\n    req = requests.post(f'{sd_url}{endpoint}', json = dct, timeout=300, verify=False, auth=auth())\n    if req.status_code != 200:\n        return { 'error': req.status_code, 'reason': req.reason, 'url': req.url }\n    else:\n        return req.json()\n\n\ndef encode(f):\n    if f is not None and os.path.exists(f):\n        image = Image.open(f)\n        if image.mode == 'RGBA':\n            image = image.convert('RGB')\n        log.info(f'encoding image: {image}')\n        with io.BytesIO() as stream:\n            image.save(stream, 'JPEG')\n            image.close()\n            values = stream.getvalue()\n            encoded = base64.b64encode(values).decode()\n            return encoded\n    else:\n        return None\n\n\ndef enhance(args): # pylint: disable=redefined-outer-name\n    options = {\n        'prompt': str(args.prompt),\n        'seed': int(args.seed),\n        'type': str(args.type),\n        'nsfw': bool(args.nsfw),\n    }\n    if args.model:\n        options['model'] = str(args.model)\n    if args.image:\n        options['image'] = encode(args.image)\n    response = post('/sdapi/v1/prompt-enhance', options)\n    return response\n\n\nif __name__ == \"__main__\":\n    parser = argparse.ArgumentParser(description = 'api-enhance')\n    parser.add_argument('--prompt', type=str, default='', required=False, help='prompt')\n    parser.add_argument('--seed', type=int, default=-1, required=False, help='seed')\n    parser.add_argument('--type', type=str, default='text', choices=['text', 'image', 'video'], required=False, help='enhance type')\n    parser.add_argument('--model', type=str, default=None, required=False, help='model name')\n    parser.add_argument('--image', type=str, default=None, required=False, help='optional input image')\n    parser.add_argument('--nsfw', type=bool, action=argparse.BooleanOptionalAction, required=False, help='nsfw allowed')\n    args = parser.parse_args()\n    log.info(f'api-upscale: {args}')\n    result = enhance(args)\n    log.info(result)\n"
  },
  {
    "path": "cli/api-faceid.py",
    "content": "#!/usr/bin/env python\nimport os\nimport io\nimport time\nimport base64\nimport logging\nimport argparse\nimport requests\nimport urllib3\nfrom PIL import Image\n\nsd_url = os.environ.get('SDAPI_URL', \"http://127.0.0.1:7860\")\nsd_username = os.environ.get('SDAPI_USR', None)\nsd_password = os.environ.get('SDAPI_PWD', None)\n\nlogging.basicConfig(level = logging.INFO, format = '%(asctime)s %(levelname)s: %(message)s')\nlog = logging.getLogger(__name__)\nurllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)\n\noptions = {\n    \"save_images\": False,\n    \"send_images\": True,\n}\n\n\ndef auth():\n    if sd_username is not None and sd_password is not None:\n        return requests.auth.HTTPBasicAuth(sd_username, sd_password)\n    return None\n\n\ndef post(endpoint: str, dct: dict = None):\n    req = requests.post(f'{sd_url}{endpoint}', json = dct, timeout=300, verify=False, auth=auth())\n    if req.status_code != 200:\n        return { 'error': req.status_code, 'reason': req.reason, 'url': req.url }\n    else:\n        return req.json()\n\n\ndef encode(f):\n    image = Image.open(f)\n    if image.mode == 'RGBA':\n        image = image.convert('RGB')\n    with io.BytesIO() as stream:\n        image.save(stream, 'JPEG')\n        image.close()\n        values = stream.getvalue()\n        encoded = base64.b64encode(values).decode()\n        return encoded\n\n\ndef generate(args): # pylint: disable=redefined-outer-name\n    t0 = time.time()\n    if args.model is not None:\n        post('/sdapi/v1/options', { 'sd_model_checkpoint': args.model })\n        post('/sdapi/v1/reload-checkpoint') # needed if running in api-only to trigger new model load\n    options['prompt'] = args.prompt\n    options['negative_prompt'] = args.negative\n    options['steps'] = int(args.steps)\n    options['seed'] = int(args.seed)\n    options['sampler_name'] = args.sampler\n    options['width'] = args.width\n    options['height'] = args.height\n    options['face'] = {\n        'mode': 'FaceID',\n        'ip_model': 'FaceID XL',\n        'source_images': [encode(args.face)],\n    }\n    data = post('/sdapi/v1/txt2img', options)\n    t1 = time.time()\n    if 'images' in data:\n        for i in range(len(data['images'])):\n            b64 = data['images'][i].split(',',1)[0]\n            info = data['info']\n            image = Image.open(io.BytesIO(base64.b64decode(b64)))\n            log.info(f'received image: size={image.size} time={t1-t0:.2f} info=\"{info}\"')\n            if args.output:\n                image.save(args.output)\n                log.info(f'image saved: size={image.size} filename={args.output}')\n\n    else:\n        log.warning(f'no images received: {data}')\n\n\nif __name__ == \"__main__\":\n    parser = argparse.ArgumentParser(description = 'api-faceid')\n    parser.add_argument('--width', required=False, default=512, help='image width')\n    parser.add_argument('--height', required=False, default=512, help='image height')\n    parser.add_argument('--face', required=True, help='face image')\n    parser.add_argument('--prompt', required=False, default='', help='prompt text')\n    parser.add_argument('--negative', required=False, default='', help='negative prompt text')\n    parser.add_argument('--steps', required=False, default=20, help='number of steps')\n    parser.add_argument('--seed', required=False, default=-1, help='initial seed')\n    parser.add_argument('--sampler', required=False, default='Euler a', help='sampler name')\n    parser.add_argument('--output', required=False, default=None, help='output image file')\n    parser.add_argument('--model', required=False, help='model name')\n    args = parser.parse_args()\n    log.info(f'api-faceid: {args}')\n    generate(args)\n"
  },
  {
    "path": "cli/api-grid.py",
    "content": "#!/usr/bin/env python\nfrom dataclasses import dataclass\nimport io\nimport os\nimport time\nimport math\nimport base64\nimport logging\nimport argparse\nimport requests\nimport urllib3\nfrom PIL import Image, ImageDraw, ImageFont\n\n\n@dataclass\nclass Options: # set default parameters here\n    prompt: str = ''\n    negative_prompt: str = ''\n    seed: int = -1\n    steps: int = 20\n    cfg_scale: float = 6.0\n    sampler_name: str = \"Default\"\n    width: int = 1024\n    height: int = 1024\n    save_images: bool = False\n    send_images: bool = True\n\n\n@dataclass\nclass Server: # set server and save options here or use command line arguments\n    url: str = 'http://127.0.0.1:7860'\n    api: str = '/sdapi/v1/txt2img'\n    user: str = None\n    password: str = None\n    folder: str = '/tmp'\n    name: str = str(round(time.time()))\n    images: bool = False\n    grids: bool = False\n    labels: bool = False\n\n\nlogging.basicConfig(level = logging.INFO, format = '%(asctime)s %(levelname)s: %(message)s')\nlog = logging.getLogger(__name__)\nurllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)\nserver = Server()\noptions = Options()\n\n\ndef post():\n    try:\n        req = requests.post(f'{server.url}{server.api}',\n                            json=vars(options),\n                            timeout=300,\n                            verify=False,\n                            auth=requests.auth.HTTPBasicAuth(server.user, server.password) if (server.user is not None) and (server.password is not None) else None)\n        return { 'error': req.status_code, 'reason': req.reason, 'url': req.url } if req.status_code != 200 else req.json()\n    except Exception as e:\n        return { 'error': 0, 'reason': str(e), 'url': server.url }\n\n\ndef generate(x: int, y: int): # pylint: disable=redefined-outer-name\n    t0 = time.time()\n    log.info(f'x={x} y={y} {options}')\n    data = post()\n    t1 = time.time()\n    images = []\n    if 'images' in data:\n        for i in range(len(data['images'])):\n            b64 = data['images'][i].split(',',1)[0]\n            image = Image.open(io.BytesIO(base64.b64decode(b64)))\n            images.append(image)\n            info = data['info']\n            fn = os.path.join(server.folder, f'{server.name}-{x}-{y}.jpg') if server.images else None\n            log.info(f'image: time={t1-t0:.2f} size={image.size} fn=\"{fn}\" info=\"{info}\"')\n            if fn is not None:\n                image.save(fn)\n    else:\n        log.warning(data)\n    return images\n\n\ndef merge(images: list[Image.Image], horizontal: bool, labels: list[str] = None):\n    rows = 1 if horizontal else len(images)\n    cols = math.ceil(len(images) / rows)\n    w = max([i.size[0] for i in images])\n    h = max([i.size[1] for i in images])\n    image = Image.new('RGB', size = (cols * w, rows * h), color = 'black')\n    font = ImageFont.truetype('DejaVuSansMono', 1024 // 32)\n    for i, img in enumerate(images):\n        x = i % cols * w\n        y = i // cols * h\n        img.thumbnail((w, h), Image.Resampling.LANCZOS)\n        image.paste(img, box=(x, y))\n        if labels is not None and len(images) == len(labels):\n            ctx = ImageDraw.Draw(image)\n            ctx.text((x + 1, y + 1), labels[i], font = font, fill = (0, 0, 0))\n            ctx.text((x, y), labels[i], font = font, fill = (255, 255, 255))\n    # log.info({ 'grid': { 'images': len(images), 'rows': rows, 'cols': cols, 'cell': [w, h] } })\n    return image\n\n\ndef grid(x_file: str, y_file: str):\n    def set_param(line):\n        param = line.split(':', maxsplit=1)\n        k = param[0].strip()\n        v = param[1].strip() if len(param) > 1 else ''\n        if k == 'prompt':\n            options.prompt += f'{v} ' # prompt is appended so its not overwritten\n        elif k == 'lora':\n            options.prompt += f'<lora:{v}> ' # lora is appended to prompt\n        else:\n            setattr(options, k, v)\n\n    log.info(server)\n    os.makedirs(server.folder, exist_ok=True)\n    try:\n        x = open(x_file, encoding='utf8').read().splitlines() if x_file is not None else []\n        y = open(y_file, encoding='utf8').read().splitlines() if y_file is not None else []\n    except Exception as e:\n        log.error(f'read file: x={x_file} y={y_file} {e}')\n        return\n    x = [line for line in x if ':' in line]\n    y = [line for line in y if ':' in line]\n    t0 = time.time()\n    log.info(f'grid: x={len(x)} y={len(y)} prefix={server.name}')\n    vertical = []\n    Image.MAX_IMAGE_PIXELS = None\n    for j in range(max(1, len(y))):\n        horizontal = []\n        labels = []\n        for i in range(max(1, len(x))):\n            if len(x) > i:\n                set_param(x[i])\n            if len(y) > j:\n                set_param(y[j])\n            images = generate(i, j)\n            if images is not None and len(images) > 0:\n                horizontal.extend(images)\n                labels.append(f'{x[i] if len(x) > i else \"\"}\\n{y[j] if len(y) > j else \"\"}')\n            options.prompt = '' # reset prompt\n        if server.grids:\n            if len(horizontal) == 0:\n                log.warning(f'grid: empty row={j}')\n                continue\n            merged = merge(horizontal, horizontal=True, labels=labels if server.labels else None)\n            vertical.append(merged)\n    if server.grids:\n        if len(vertical) == 0:\n            log.warning('grid: empty grid')\n            return\n        merged = merge(vertical, horizontal=False)\n        fn = os.path.join(server.folder, f'{server.name}.jpg')\n        merged.save(fn)\n        log.info(f'grid: size={merged.size} fn=\"{fn}\"')\n    t1 = time.time()\n    log.info(f'done: time={t1-t0:.2f}')\n\n\nif __name__ == \"__main__\":\n    log.info(__file__)\n    parser = argparse.ArgumentParser(description = 'api-grid')\n    parser.add_argument('--x', type=str, required=False, default=None, help='file to use for x-axis values')\n    parser.add_argument('--y', type=str, required=False, default=None, help='file to use for y-axis values')\n    parser.add_argument('--folder', type=str, required=False, default='/tmp', help='folder to use for saving images')\n    parser.add_argument('--name', type=str, required=False, default=str(round(time.time())), help='name prefix to use for saving images and grids')\n    parser.add_argument('--image', type=bool, required=False, default=False, help='save individual images')\n    parser.add_argument('--grid', type=bool, required=False, default=True, help='save image grids')\n    parser.add_argument('--labels', type=bool, required=False, default=True, help='draw image labels')\n    parser.add_argument('--url', type=str, required=False, default='http://127.0.0.1:7860', help='server url')\n    parser.add_argument('--user', type=str, required=False, default=None, help='server user')\n    parser.add_argument('--password', type=str, required=False, default=None, help='server password')\n    parser.add_argument('--prompt', type=str, required=False, default='', help='generate prompt')\n    parser.add_argument('--negative', type=str, required=False, default='', help='generate negative prompt')\n    parser.add_argument('--sampler', type=str, required=False, default='Default', help='generate sampler')\n    parser.add_argument('--width', type=int, required=False, default=1024, help='generate width')\n    parser.add_argument('--height', type=int, required=False, default=1024, help='generate height')\n    parser.add_argument('--steps', type=int, required=False, default=20, help='generate steps')\n    parser.add_argument('--cfg', type=float, required=False, default=6.0, help='generate guidance scale')\n    parser.add_argument('--seed', type=int, required=False, default=-1, help='generate seed')\n    args = parser.parse_args()\n    log.info(args)\n    server.folder = args.folder\n    server.name = args.name\n    server.images = bool(args.image)\n    server.grids = bool(args.grid)\n    server.labels = bool(args.labels)\n    server.url = args.url\n    server.user = args.user\n    server.password = args.password\n    options.prompt = args.prompt\n    options.negative_prompt = args.negative\n    options.width = int(args.width)\n    options.height = int(args.height)\n    options.sampler_name = args.sampler\n    options.seed = int(args.seed)\n    options.steps = int(args.steps)\n    options.cfg_scale = float(args.cfg)\n    grid(args.x, args.y)\n"
  },
  {
    "path": "cli/api-history.py",
    "content": "#!/usr/bin/env python\n\n\"\"\"\nget list of all history jobs or a specific job\n\"\"\"\n\nimport sys\nimport logging\nimport urllib3\nimport requests\n\n\nurl = \"http://127.0.0.1:7860\"\nuser = \"\"\npassword = \"\"\n\nlog_format = '%(asctime)s %(levelname)s: %(message)s'\nlogging.basicConfig(level = logging.INFO, format = log_format)\nlog = logging.getLogger(\"sd\")\nurllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)\n\n\nlog.info('state history')\nsys.argv.pop(0)\ntask_id = sys.argv[0] if len(sys.argv) == 1 else ''\nauth = requests.auth.HTTPBasicAuth(user, password) if len(user) > 0 and len(password) > 0 else None\nreq = requests.get(f'{url}/sdapi/v1/history?id={task_id}', verify=False, auth=auth, timeout=60)\nif req.status_code != 200:\n    log.error({ 'url': req.url, 'request': req.status_code, 'reason': req.reason })\n    exit(1)\nres = req.json()\nfor item in res:\n    log.info(item)\n"
  },
  {
    "path": "cli/api-img2img.py",
    "content": "#!/usr/bin/env python\nimport os\nimport io\nimport time\nimport base64\nimport logging\nimport argparse\nimport requests\nimport urllib3\nfrom PIL import Image\n\nsd_url = os.environ.get('SDAPI_URL', \"http://127.0.0.1:7860\")\nsd_username = os.environ.get('SDAPI_USR', None)\nsd_password = os.environ.get('SDAPI_PWD', None)\n\nlogging.basicConfig(level = logging.INFO, format = '%(asctime)s %(levelname)s: %(message)s')\nlog = logging.getLogger(__name__)\nurllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)\n\noptions = {\n    \"save_images\": False,\n    \"send_images\": True,\n}\n\n\ndef auth():\n    if sd_username is not None and sd_password is not None:\n        return requests.auth.HTTPBasicAuth(sd_username, sd_password)\n    return None\n\n\ndef post(endpoint: str, dct: dict = None):\n    req = requests.post(f'{sd_url}{endpoint}', json = dct, timeout=300, verify=False, auth=auth())\n    if req.status_code != 200:\n        return { 'error': req.status_code, 'reason': req.reason, 'url': req.url }\n    else:\n        return req.json()\n\n\ndef encode(f):\n    image = Image.open(f)\n    if image.mode == 'RGBA':\n        image = image.convert('RGB')\n    with io.BytesIO() as stream:\n        image.save(stream, 'JPEG')\n        image.close()\n        values = stream.getvalue()\n        encoded = base64.b64encode(values).decode()\n        return encoded\n\n\ndef generate(args): # pylint: disable=redefined-outer-name\n    t0 = time.time()\n    if args.model is not None:\n        post('/sdapi/v1/options', { 'sd_model_checkpoint': args.model })\n        post('/sdapi/v1/reload-checkpoint') # needed if running in api-only to trigger new model load\n    options['prompt'] = args.prompt\n    options['negative_prompt'] = args.negative\n    options['steps'] = int(args.steps)\n    options['seed'] = int(args.seed)\n    options['sampler_name'] = args.sampler\n    options['init_images'] = [encode(args.init)]\n    image = Image.open(args.init)\n    options['width'] = image.width\n    options['height'] = image.height\n    image.close()\n    if args.mask is not None:\n        options['mask'] = encode(args.mask)\n    data = post('/sdapi/v1/img2img', options)\n    t1 = time.time()\n    if 'images' in data:\n        for i in range(len(data['images'])):\n            b64 = data['images'][i].split(',',1)[0]\n            info = data['info']\n            image = Image.open(io.BytesIO(base64.b64decode(b64)))\n            log.info(f'received image: size={image.size} time={t1-t0:.2f} info=\"{info}\"')\n            if args.output:\n                image.save(args.output)\n                log.info(f'image saved: size={image.size} filename={args.output}')\n\n    else:\n        log.warning(f'no images received: {data}')\n\n\nif __name__ == \"__main__\":\n    parser = argparse.ArgumentParser(description = 'api-img2img')\n    parser.add_argument('--init', required=True, help='init image')\n    parser.add_argument('--mask', required=False, help='mask image')\n    parser.add_argument('--prompt', required=False, default='', help='prompt text')\n    parser.add_argument('--negative', required=False, default='', help='negative prompt text')\n    parser.add_argument('--steps', required=False, default=20, help='number of steps')\n    parser.add_argument('--seed', required=False, default=-1, help='initial seed')\n    parser.add_argument('--sampler', required=False, default='Euler a', help='sampler name')\n    parser.add_argument('--output', required=False, default=None, help='output image file')\n    parser.add_argument('--model', required=False, help='model name')\n    args = parser.parse_args()\n    log.info(f'api-img2img: {args}')\n    generate(args)\n"
  },
  {
    "path": "cli/api-info.py",
    "content": "#!/usr/bin/env python\nimport os\nimport time\nimport base64\nimport logging\nimport argparse\nimport requests\nimport urllib3\n\n\nsd_url = os.environ.get('SDAPI_URL', \"http://127.0.0.1:7860\")\nsd_username = os.environ.get('SDAPI_USR', None)\nsd_password = os.environ.get('SDAPI_PWD', None)\n\n\nlogging.basicConfig(level = logging.INFO, format = '%(asctime)s %(levelname)s: %(message)s')\nlog = logging.getLogger(__name__)\nurllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)\n\n\ndef auth():\n    if sd_username is not None and sd_password is not None:\n        return requests.auth.HTTPBasicAuth(sd_username, sd_password)\n    return None\n\n\ndef get(endpoint: str, dct: dict = None):\n    req = requests.get(f'{sd_url}{endpoint}', json=dct, timeout=300, verify=False, auth=auth())\n    if req.status_code != 200:\n        return { 'error': req.status_code, 'reason': req.reason, 'url': req.url }\n    else:\n        return req.json()\n\n\ndef post(endpoint: str, dct: dict = None):\n    req = requests.post(f'{sd_url}{endpoint}', json = dct, timeout=300, verify=False, auth=auth())\n    if req.status_code != 200:\n        return { 'error': req.status_code, 'reason': req.reason, 'url': req.url }\n    else:\n        return req.json()\n\n\ndef info(args): # pylint: disable=redefined-outer-name\n    t0 = time.time()\n    with open(args.input, 'rb') as f:\n        content = f.read()\n    data = post('/sdapi/v1/png-info', { 'image': base64.b64encode(content).decode() })\n    t1 = time.time()\n    log.info(f'received: {data} time={t1-t0:.2f}')\n\n\nif __name__ == \"__main__\":\n    parser = argparse.ArgumentParser(description = 'api-info')\n    parser.add_argument('--input', required=True, help='input image')\n    args = parser.parse_args()\n    log.info(f'api-info: {args}')\n    info(args)\n"
  },
  {
    "path": "cli/api-interrogate.py",
    "content": "#!/usr/bin/env python\n\"\"\"\nuse clip to interrogate image(s)\n\"\"\"\n\nimport io\nimport base64\nimport sys\nimport os\nimport asyncio\nimport filetype\nfrom PIL import Image\nfrom util import log, Map\nimport sdapi\n\n\nstats = { 'captions': {}, 'keywords': {} }\nexclude = ['a', 'in', 'on', 'out', 'at', 'the', 'and', 'with', 'next', 'to', 'it', 'for', 'of', 'into', 'that']\n\n\ndef decode(encoding):\n    if encoding.startswith(\"data:image/\"):\n        encoding = encoding.split(\";\")[1].split(\",\")[1]\n    return Image.open(io.BytesIO(base64.b64decode(encoding)))\n\n\ndef encode(f):\n    image = Image.open(f)\n    exif = image.getexif()\n    if image.mode == 'RGBA':\n        image = image.convert('RGB')\n    with io.BytesIO() as stream:\n        image.save(stream, 'JPEG', exif = exif)\n        values = stream.getvalue()\n        encoded = base64.b64encode(values).decode()\n        return encoded\n\n\ndef print_summary():\n    captions = dict(sorted(stats['captions'].items(), key=lambda x:x[1], reverse=True))\n    log.info({ 'caption stats': captions })\n    keywords = dict(sorted(stats['keywords'].items(), key=lambda x:x[1], reverse=True))\n    log.info({ 'keyword stats': keywords })\n\n\nasync def interrogate(f):\n    if not filetype.is_image(f):\n        log.info({ 'interrogate skip': f })\n        return\n    json = Map({ 'image': encode(f) })\n    log.info({ 'interrogate': f })\n    # run clip\n    json.model = 'clip'\n    res = await sdapi.post('/sdapi/v1/interrogate', json)\n    caption = \"\"\n    style = \"\"\n    if 'caption' in res:\n        caption = res.caption\n        log.info({ 'interrogate caption': caption })\n        if ', by' in caption:\n            style = caption.split(', by')[1].strip()\n            log.info({ 'interrogate style': style })\n        for word in caption.split(' '):\n            if word not in exclude:\n                stats['captions'][word] = stats['captions'][word] + 1 if word in stats['captions'] else 1\n    else:\n        log.error({ 'interrogate clip error': res })\n    # run booru\n    json.model = 'deepdanbooru'\n    res = await sdapi.post('/sdapi/v1/interrogate', json)\n    keywords = {}\n    if 'caption' in res:\n        for term in res.caption.split(', '):\n            term = term.replace('(', '').replace(')', '').replace('\\\\', '').split(':')\n            if len(term) < 2:\n                continue\n            keywords[term[0]] = term[1]\n        keywords = dict(sorted(keywords.items(), key=lambda x:x[1], reverse=True))\n        for word in keywords.items():\n            stats['keywords'][word[0]] = stats['keywords'][word[0]] + 1 if word[0] in stats['keywords'] else 1\n        log.info({ 'interrogate keywords': keywords })\n    else:\n        log.error({ 'interrogate booru error': res })\n    return caption, keywords, style\n\n\nasync def main():\n    sys.argv.pop(0)\n    await sdapi.session()\n    if len(sys.argv) == 0:\n        log.error({ 'interrogate': 'no files specified' })\n    for arg in sys.argv:\n        if os.path.exists(arg):\n            if os.path.isfile(arg):\n                await interrogate(arg)\n            elif os.path.isdir(arg):\n                for root, _dirs, files in os.walk(arg):\n                    for f in files:\n                        _caption, _keywords, _style = await interrogate(os.path.join(root, f))\n            else:\n                log.error({ 'interrogate unknown file type': arg })\n        else:\n            log.error({ 'interrogate file missing': arg })\n    await sdapi.close()\n    print_summary()\n\n\nif __name__ == \"__main__\":\n    asyncio.run(main())\n"
  },
  {
    "path": "cli/api-json.py",
    "content": "#!/usr/bin/env python\n\n# curl -vX POST http://localhost:7860/sdapi/v1/txt2img --header \"Content-Type: application/json\" -d @3261.json\nimport os\nimport json\nimport logging\nimport argparse\nimport requests\nimport urllib3\n\n\nsd_url = os.environ.get('SDAPI_URL', \"http://127.0.0.1:7860\")\nsd_username = os.environ.get('SDAPI_USR', None)\nsd_password = os.environ.get('SDAPI_PWD', None)\noptions = {\n    \"save_images\": True,\n    \"send_images\": True,\n}\n\nlogging.basicConfig(level = logging.INFO, format = '%(asctime)s %(levelname)s: %(message)s')\nlog = logging.getLogger(__name__)\nurllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)\n\n\ndef auth():\n    if sd_username is not None and sd_password is not None:\n        return requests.auth.HTTPBasicAuth(sd_username, sd_password)\n    return None\n\n\ndef post(endpoint: str, payload: dict = None):\n    if 'sdapi' not in endpoint:\n        endpoint = f'sdapi/v1/{endpoint}'\n    if 'http' not in endpoint:\n        endpoint = f'{sd_url}/{endpoint}'\n    req = requests.post(endpoint, json = payload, timeout=300, verify=False, auth=auth())\n    return { 'error': req.status_code, 'reason': req.reason, 'url': req.url } if req.status_code != 200 else req.json()\n\n\nif __name__ == \"__main__\":\n    parser = argparse.ArgumentParser(description = 'api-json')\n    parser.add_argument('endpoint', nargs=1, help='endpoint')\n    parser.add_argument('json', nargs=1, help='json data or file')\n    args = parser.parse_args()\n    log.info(f'api-json: {args}')\n    if os.path.isfile(args.json[0]):\n        with open(args.json[0], 'r', encoding='ascii') as f:\n            dct = json.load(f)\n    else:\n        dct = json.loads(args.json[0])\n    res = post(endpoint=args.endpoint[0], payload=dct)\n    print(res)\n"
  },
  {
    "path": "cli/api-mask.py",
    "content": "#!/usr/bin/env python\nimport io\nimport os\nimport time\nimport base64\nimport logging\nimport argparse\nimport requests\nimport urllib3\nfrom PIL import Image\n\n\nsd_url = os.environ.get('SDAPI_URL', \"http://127.0.0.1:7860\")\nsd_username = os.environ.get('SDAPI_USR', None)\nsd_password = os.environ.get('SDAPI_PWD', None)\n\n\nlogging.basicConfig(level = logging.INFO, format = '%(asctime)s %(levelname)s: %(message)s')\nlog = logging.getLogger(__name__)\nurllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)\n\n\ndef auth():\n    if sd_username is not None and sd_password is not None:\n        return requests.auth.HTTPBasicAuth(sd_username, sd_password)\n    return None\n\n\ndef get(endpoint: str, dct: dict = None):\n    req = requests.get(f'{sd_url}{endpoint}', json=dct, timeout=300, verify=False, auth=auth())\n    if req.status_code != 200:\n        return { 'error': req.status_code, 'reason': req.reason, 'url': req.url }\n    else:\n        return req.json()\n\n\ndef post(endpoint: str, dct: dict = None):\n    req = requests.post(f'{sd_url}{endpoint}', json = dct, timeout=300, verify=False, auth=auth())\n    if req.status_code != 200:\n        return { 'error': req.status_code, 'reason': req.reason, 'url': req.url }\n    else:\n        return req.json()\n\n\ndef info(args): # pylint: disable=redefined-outer-name\n    t0 = time.time()\n    with open(args.input, 'rb') as f:\n        image = base64.b64encode(f.read()).decode()\n    if args.mask:\n        with open(args.mask, 'rb') as f:\n            mask = base64.b64encode(f.read()).decode()\n    else:\n        mask = None\n    options = get('/sdapi/v1/masking')\n    log.info(f'options: {options}')\n    req = {\n        'image': image,\n        'mask': mask,\n        'type': args.type or 'Composite',\n        'params': { 'auto_mask': 'Grayscale' if mask is None else None },\n    }\n    data = post('/sdapi/v1/mask', req)\n    t1 = time.time()\n    if 'mask' in data:\n        b64 = data['mask'].split(',',1)[0]\n        image = Image.open(io.BytesIO(base64.b64decode(b64)))\n        log.info(f'received image: size={image.size} time={t1-t0:.2f}')\n        if args.output:\n            image.save(args.output)\n            log.info(f'saved image: fn={args.output}')\n    else:\n        log.info(f'received: {data} time={t1-t0:.2f}')\n\n\nif __name__ == \"__main__\":\n    parser = argparse.ArgumentParser(description = 'api-mask')\n    parser.add_argument('--input', required=True, help='input image')\n    parser.add_argument('--mask', required=False, help='input mask')\n    parser.add_argument('--type', required=False, help='output mask type')\n    parser.add_argument('--output', required=False, help='output image')\n    args = parser.parse_args()\n    log.info(f'api-mask: {args}')\n    info(args)\n"
  },
  {
    "path": "cli/api-model.js",
    "content": "#!/usr/bin/env node\n\nconst sd_url = process.env.SDAPI_URL || 'http://127.0.0.1:7860';\nconst sd_username = process.env.SDAPI_USR;\nconst sd_password = process.env.SDAPI_PWD;\nconst models = [\n  '/mnt/models/stable-diffusion/sd15/lyriel_v16.safetensors',\n  '/mnt/models/stable-diffusion/flux/flux-finesse_v2-f1h-fp8.safetensors',\n  '/mnt/models/stable-diffusion/sdxl/TempestV0.1-Artistic.safetensors',\n];\n\nasync function options(data) {\n  const method = 'POST';\n  const headers = new Headers();\n  const body = JSON.stringify(data);\n  headers.set('Content-Type', 'application/json');\n  if (sd_username && sd_password) headers.set({ Authorization: `Basic ${btoa('sd_username:sd_password')}` });\n  const res = await fetch(`${sd_url}/sdapi/v1/options`, { method, headers, body });\n  return res;\n}\n\nasync function main() {\n  for (const model of models) {\n    console.log('model:', model);\n    const res = await options({ sd_model_checkpoint: model });\n    console.log('result:', res);\n  }\n}\n\nmain();\n"
  },
  {
    "path": "cli/api-preprocess.py",
    "content": "#!/usr/bin/env python\nimport io\nimport os\nimport time\nimport base64\nimport logging\nimport argparse\nimport requests\nimport urllib3\nfrom PIL import Image\n\n\nsd_url = os.environ.get('SDAPI_URL', \"http://127.0.0.1:7860\")\nsd_username = os.environ.get('SDAPI_USR', None)\nsd_password = os.environ.get('SDAPI_PWD', None)\n\n\nlogging.basicConfig(level = logging.INFO, format = '%(asctime)s %(levelname)s: %(message)s')\nlog = logging.getLogger(__name__)\nurllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)\n\n\ndef auth():\n    if sd_username is not None and sd_password is not None:\n        return requests.auth.HTTPBasicAuth(sd_username, sd_password)\n    return None\n\n\ndef get(endpoint: str, dct: dict = None):\n    req = requests.get(f'{sd_url}{endpoint}', json=dct, timeout=300, verify=False, auth=auth())\n    if req.status_code != 200:\n        return { 'error': req.status_code, 'reason': req.reason, 'url': req.url }\n    else:\n        return req.json()\n\n\ndef post(endpoint: str, dct: dict = None):\n    req = requests.post(f'{sd_url}{endpoint}', json = dct, timeout=300, verify=False, auth=auth())\n    if req.status_code != 200:\n        return { 'error': req.status_code, 'reason': req.reason, 'url': req.url }\n    else:\n        return req.json()\n\n\ndef info(args): # pylint: disable=redefined-outer-name\n    t0 = time.time()\n    with open(args.input, 'rb') as f:\n        content = f.read()\n    models = get('/sdapi/v1/preprocessors')\n    log.info(f'models: {models}')\n    req = {\n        'model': args.model or 'Canny',\n        'image': base64.b64encode(content).decode(),\n        'config': { 'low_threshold': 50 },\n    }\n    data = post('/sdapi/v1/preprocess', req)\n    t1 = time.time()\n    if 'image' in data:\n        b64 = data['image'].split(',',1)[0]\n        image = Image.open(io.BytesIO(base64.b64decode(b64)))\n        log.info(f'received image: size={image.size} time={t1-t0:.2f}')\n        if args.output:\n            image.save(args.output)\n            log.info(f'saved image: fn={args.output}')\n    else:\n        log.info(f'received: {data} time={t1-t0:.2f}')\n\n\nif __name__ == \"__main__\":\n    parser = argparse.ArgumentParser(description = 'api-preprocess')\n    parser.add_argument('--input', required=True, help='input image')\n    parser.add_argument('--model', required=True, help='preprocessing model')\n    parser.add_argument('--output', required=False, help='output image')\n    args = parser.parse_args()\n    log.info(f'api-preprocess: {args}')\n    info(args)\n"
  },
  {
    "path": "cli/api-progress.py",
    "content": "#!/usr/bin/env python\n\n\"\"\"\ncheck progress of last job and shutdown system if timeout reached\n\"\"\"\n\nimport os\nimport time\nimport datetime\nimport logging\nimport urllib3\nimport requests\n\nclass Dot(dict):\n    __getattr__ = dict.get\n    __setattr__ = dict.__setitem__\n    __delattr__ = dict.__delitem__\n\nopts = Dot({\n    \"timeout\": 3600,\n    \"frequency\": 1,\n    \"action\": \"sudo shutdown now\",\n    \"url\": \"http://127.0.0.1:7860\",\n    \"user\": \"\",\n    \"password\": \"\",\n})\n\nlog_format = '%(asctime)s %(levelname)s: %(message)s'\nlogging.basicConfig(level = logging.INFO, format = log_format)\nlog = logging.getLogger(\"sd\")\nurllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)\nstatus = None\n\ndef progress():\n    auth = requests.auth.HTTPBasicAuth(opts.user, opts.password) if opts.user is not None and len(opts.user) > 0 and opts.password is not None and len(opts.password) > 0 else None\n    req = requests.get(f'{opts.url}/sdapi/v1/progress?skip_current_image=true', verify=False, auth=auth, timeout=60)\n    if req.status_code != 200:\n        log.error({ 'url': req.url, 'request': req.status_code, 'reason': req.reason })\n        return status\n    else:\n        res = Dot(req.json())\n        log.debug({ 'url': req.url, 'request': req.status_code, 'result': res })\n        return res\n\nlog.info(f'sdnext monitor started: {opts}')\nwhile True:\n    try:\n        status = progress()\n        # {'progress': 0.0, 'eta_relative': 0.0, 'state': {'skipped': False, 'interrupted': False, 'job': '', 'job_count': 0, 'job_timestamp': '20250316110822', 'job_no': 0, 'sampling_step': 20, 'sampling_steps': 20}, 'current_image': None, 'textinfo': None}\n        state = status.get('state', {})\n        task_id = status.get('id', None)\n        job_timestamp = state.get('job_timestamp', None)\n        job_progress = status.get('progress', 0)\n        eta_relative = status.get('eta_relative', 0)\n        job = state.get('job', '')\n        job_timestamp = state.get('job_timestamp', None)\n        sampling_step = state.get('sampling_step', 0)\n        sampling_steps = state.get('sampling_steps', 0)\n        if job_timestamp is None:\n            log.warning(f'sdnext montoring cannot get last job info: {status}')\n        else:\n            job_timestamp = datetime.datetime.strptime(job_timestamp, \"%Y%m%d%H%M%S\") if job_timestamp != '0' else datetime.datetime.now()\n            elapsed = datetime.datetime.now() - job_timestamp\n            timeout = round(opts.timeout - elapsed.total_seconds())\n            log.info(f'sdnext: id={task_id} last=\"{job_timestamp}\" elapsed={elapsed} timeout={timeout} progress={job_progress} eta={eta_relative} step={sampling_step}/{sampling_steps} job=\"{job}\"')\n            if timeout < 0:\n                log.warning(f'sdnext reached: timeout={opts.timeout} action={opts.action}')\n                os.system(opts.action)\n    except Exception as e:\n        log.error(f'sdnext monitor error: {e}')\n    finally:\n        time.sleep(opts.frequency)\n"
  },
  {
    "path": "cli/api-pulid.js",
    "content": "#!/usr/bin/env node\n\n// simple nodejs script to test sdnext api\n\nconst fs = require('node:fs');\nconst path = require('node:path');\n\nconst argparse = require('argparse');\n\nconst sd_url = process.env.SDAPI_URL || 'http://127.0.0.1:7860';\nconst sd_username = process.env.SDAPI_USR;\nconst sd_password = process.env.SDAPI_PWD;\nlet args = {};\n\nfunction b64(file) {\n  const data = fs.readFileSync(file);\n  const b64str = Buffer.from(data).toString('base64');\n  const ext = path.extname(file).replace('.', '');\n  const str = `data:image/${ext};base64,${b64str}`;\n  // console.log('b64:', ext, b64.length);\n  return str;\n}\n\nfunction options() {\n  const opt = {\n    // first pass\n    prompt: args.prompt || 'beautiful lady, in the steampunk style',\n    negative_prompt: args.negative || 'foggy, blurry',\n    seed: -1,\n    steps: 20,\n    batch_size: 1,\n    n_iter: 1,\n    cfg_scale: 6,\n    width: args.width || 1024,\n    height: args.height || 1024,\n    // api return options\n    save_images: false,\n    send_images: true,\n  };\n  if (args.pulid) {\n    const b64image = b64(args.pulid);\n    opt.script_name = 'pulid';\n    opt.script_args = [\n      b64image, // b64 encoded image, required param\n      0.9, // strength, optional\n      20, // zero, optional\n      'dpmpp_sde', // sampler, optional\n      'v2', // ortho, optional\n      true, // restore (disable pulid after run), optional\n      true, // offload, optional\n      'v1.1', // version, optional\n    ];\n  }\n  // console.log('options:', opt);\n  return opt;\n}\n\nfunction init() {\n  const parser = new argparse.ArgumentParser({ description: 'SD.Next API' });\n  parser.add_argument('--prompt', { type: 'str', help: 'prompt' });\n  parser.add_argument('--negative', { type: 'str', help: 'negative' });\n  parser.add_argument('--width', { type: 'int', help: 'width' });\n  parser.add_argument('--height', { type: 'int', help: 'height' });\n  parser.add_argument('--pulid', { type: 'str', help: 'pulid init image' });\n  parser.add_argument('--output', { type: 'str', help: 'output path' });\n  const parsed = parser.parse_args();\n  return parsed;\n}\n\nasync function main() {\n  const method = 'POST';\n  const headers = new Headers();\n  const opt = options();\n  const body = JSON.stringify(opt);\n  headers.set('Content-Type', 'application/json');\n  if (sd_username && sd_password) headers.set({ Authorization: `Basic ${btoa('sd_username:sd_password')}` });\n  const res = await fetch(`${sd_url}/sdapi/v1/txt2img`, { method, headers, body });\n\n  if (res.status !== 200) {\n    console.log('Error', res.status);\n  } else {\n    const json = await res.json();\n    console.log('result:', json.info);\n    for (const i in json.images) { // eslint-disable-line guard-for-in\n      const file = args.output || `/tmp/test-${i}.jpg`;\n      const data = atob(json.images[i]);\n      fs.writeFileSync(file, data, 'binary');\n      console.log('image saved:', file);\n    }\n  }\n}\n\nargs = init();\nmain();\n"
  },
  {
    "path": "cli/api-samplers.py",
    "content": "#!/usr/bin/env python\n\n\"\"\"\nget list of all samplers and details of current sampler\n\"\"\"\n\nimport sys\nimport logging\nimport urllib3\nimport requests\n\n\nurl = \"http://127.0.0.1:7860\"\nuser = \"\"\npassword = \"\"\n\nlog_format = '%(asctime)s %(levelname)s: %(message)s'\nlogging.basicConfig(level = logging.INFO, format = log_format)\nlog = logging.getLogger(\"sd\")\nurllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)\n\nlog.info('available samplers')\nauth = requests.auth.HTTPBasicAuth(user, password) if len(user) > 0 and len(password) > 0 else None\nreq = requests.get(f'{url}/sdapi/v1/samplers', verify=False, auth=auth, timeout=60)\nif req.status_code != 200:\n    log.error({ 'url': req.url, 'request': req.status_code, 'reason': req.reason })\n    exit(1)\nres = req.json()\nfor item in res:\n    log.info(item)\n\nlog.info('current sampler')\nreq = requests.get(f'{url}/sdapi/v1/sampler', verify=False, auth=auth, timeout=60)\nres = req.json()\nlog.info(res)\n"
  },
  {
    "path": "cli/api-txt2img.js",
    "content": "#!/usr/bin/env node\n\n// simple nodejs script to test sdnext api\n\nconst fs = require('node:fs');\n\nconst sd_url = process.env.SDAPI_URL || 'http://127.0.0.1:7860';\nconst sd_username = process.env.SDAPI_USR;\nconst sd_password = process.env.SDAPI_PWD;\nconst sd_options = {\n  // first pass\n  prompt: 'city at night',\n  negative_prompt: 'foggy, blurry',\n  sampler_name: 'UniPC',\n  seed: -1,\n  steps: 20,\n  batch_size: 1,\n  n_iter: 1,\n  cfg_scale: 6,\n  width: 512,\n  height: 512,\n  // api return options\n  save_images: false,\n  send_images: true,\n};\n\nasync function main() {\n  const method = 'POST';\n  const headers = new Headers();\n  const body = JSON.stringify(sd_options);\n  headers.set('Content-Type', 'application/json');\n  if (sd_username && sd_password) {\n    // const credentials = btoa(`${sd_username}:${sd_password}`);\n    const credentials = Buffer.from(`${sd_username}:${sd_password}`).toString('base64');\n    headers.set('Authorization', `Basic ${credentials}`);\n  }\n  const res = await fetch(`${sd_url}/sdapi/v1/txt2img`, { method, headers, body });\n  if (res.status !== 200) {\n    const err = await res.text();\n    console.log('Error', res.status, res.statusText, err);\n  } else {\n    const json = await res.json();\n    console.log('result:', json.info);\n    for (const i in json.images) { // eslint-disable-line guard-for-in\n      const f = `/tmp/test-${i}.jpg`;\n      fs.writeFileSync(f, atob(json.images[i]), 'binary');\n      console.log('image saved:', f);\n    }\n  }\n}\n\nmain();\n"
  },
  {
    "path": "cli/api-txt2img.py",
    "content": "#!/usr/bin/env python\nimport io\nimport os\nimport time\nimport base64\nimport logging\nimport argparse\nimport requests\nimport urllib3\nfrom PIL import Image\n\nsd_url = os.environ.get('SDAPI_URL', \"http://127.0.0.1:7860\")\nsd_username = os.environ.get('SDAPI_USR', None)\nsd_password = os.environ.get('SDAPI_PWD', None)\noptions = {\n    \"save_images\": True,\n    \"send_images\": True,\n}\n\nlogging.basicConfig(level = logging.INFO, format = '%(asctime)s %(levelname)s: %(message)s')\nlog = logging.getLogger(__name__)\nurllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)\n\n\ndef auth():\n    if sd_username is not None and sd_password is not None:\n        return requests.auth.HTTPBasicAuth(sd_username, sd_password)\n    return None\n\n\ndef post(endpoint: str, dct: dict = None):\n    req = requests.post(f'{sd_url}{endpoint}', json = dct, timeout=300, verify=False, auth=auth())\n    if req.status_code != 200:\n        return { 'error': req.status_code, 'reason': req.reason, 'url': req.url }\n    else:\n        return req.json()\n\n\ndef generate(args): # pylint: disable=redefined-outer-name\n    t0 = time.time()\n    if args.model is not None:\n        post('/sdapi/v1/options', { 'sd_model_checkpoint': args.model })\n        post('/sdapi/v1/reload-checkpoint') # needed if running in api-only to trigger new model load\n    options['prompt'] = args.prompt\n    options['negative_prompt'] = args.negative\n    options['steps'] = int(args.steps)\n    options['seed'] = int(args.seed)\n    options['sampler_name'] = args.sampler\n    options['width'] = int(args.width)\n    options['height'] = int(args.height)\n    if args.detailer:\n        options['detailer'] = args.detailer\n        options['denoising_strength'] = 0.5\n        options['hr_sampler_name'] = args.sampler\n    data = post('/sdapi/v1/txt2img', options)\n    t1 = time.time()\n    images = []\n    if 'images' in data:\n        for i in range(len(data['images'])):\n            b64 = data['images'][i].split(',',1)[0]\n            image = Image.open(io.BytesIO(base64.b64decode(b64)))\n            images.append(image)\n            info = data['info']\n            log.info(f'image received: size={image.size} time={t1-t0:.2f} info=\"{info}\"')\n            if args.output:\n                image.save(args.output, exif=image._getexif())\n                log.info(f'image saved: size={image.size} filename={args.output}')\n    else:\n        log.warning(f'no images received: {data}')\n    return images\n\n\nif __name__ == \"__main__\":\n    parser = argparse.ArgumentParser(description = 'api-txt2img')\n    parser.add_argument('--prompt', required=False, default='', help='prompt text')\n    parser.add_argument('--negative', required=False, default='', help='negative prompt text')\n    parser.add_argument('--width', required=False, default=512, help='image width')\n    parser.add_argument('--height', required=False, default=512, help='image height')\n    parser.add_argument('--steps', required=False, default=20, help='number of steps')\n    parser.add_argument('--seed', required=False, default=-1, help='initial seed')\n    parser.add_argument('--detailer', action='store_true', help='run detailer')\n    parser.add_argument('--sampler', required=False, default='Euler a', help='sampler name')\n    parser.add_argument('--output', required=False, default=None, help='output image file')\n    parser.add_argument('--model', required=False, help='model name')\n    args = parser.parse_args()\n    log.info(f'api-txt2img: {args}')\n    generate(args)\n"
  },
  {
    "path": "cli/api-upscale.py",
    "content": "#!/usr/bin/env python\nimport os\nimport io\nimport time\nimport base64\nimport logging\nimport argparse\nimport requests\nimport urllib3\nfrom PIL import Image\n\nsd_url = os.environ.get('SDAPI_URL', \"http://127.0.0.1:7860\")\nsd_username = os.environ.get('SDAPI_USR', None)\nsd_password = os.environ.get('SDAPI_PWD', None)\n\nlogging.basicConfig(level = logging.INFO, format = '%(asctime)s %(levelname)s: %(message)s')\nlog = logging.getLogger(__name__)\nurllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)\n\n\ndef auth():\n    if sd_username is not None and sd_password is not None:\n        return requests.auth.HTTPBasicAuth(sd_username, sd_password)\n    return None\n\n\ndef get(endpoint: str, dct: dict = None):\n    req = requests.get(f'{sd_url}{endpoint}', json=dct, timeout=300, verify=False, auth=auth())\n    if req.status_code != 200:\n        return { 'error': req.status_code, 'reason': req.reason, 'url': req.url }\n    else:\n        return req.json()\n\n\ndef post(endpoint: str, dct: dict = None):\n    req = requests.post(f'{sd_url}{endpoint}', json = dct, timeout=300, verify=False, auth=auth())\n    if req.status_code != 200:\n        return { 'error': req.status_code, 'reason': req.reason, 'url': req.url }\n    else:\n        return req.json()\n\n\ndef encode(f):\n    image = Image.open(f)\n    if image.mode == 'RGBA':\n        image = image.convert('RGB')\n    log.info(f'encoding image: {image}')\n    with io.BytesIO() as stream:\n        image.save(stream, 'JPEG')\n        image.close()\n        values = stream.getvalue()\n        encoded = base64.b64encode(values).decode()\n        return encoded\n\n\ndef upscale(args): # pylint: disable=redefined-outer-name\n    t0 = time.time()\n    # options['mask'] = encode(args.mask)\n    upscalers = get('/sdapi/v1/upscalers')\n    upscalers = [u['name'] for u in upscalers]\n    log.info(f'upscalers: {upscalers}')\n    options = {\n        \"save_images\": False,\n        \"send_images\": True,\n        'image': encode(args.input),\n        'upscaler_1': args.upscaler,\n        'resize_mode': 0, # rescale_by\n        'upscaling_resize': args.scale,\n\n    }\n    data = post('/sdapi/v1/extra-single-image', options)\n    t1 = time.time()\n    if 'image' in data:\n        b64 = data['image'].split(',',1)[0]\n        image = Image.open(io.BytesIO(base64.b64decode(b64)))\n        if args.output:\n            image.save(args.output)\n        log.info(f'received: image={image} file={args.output} time={t1-t0:.2f}')\n    else:\n        log.warning(f'no images received: {data}')\n\n\nif __name__ == \"__main__\":\n    parser = argparse.ArgumentParser(description = 'api-upscale')\n    parser.add_argument('--input', required=True, help='input image')\n    parser.add_argument('--output', required=False, help='output image')\n    parser.add_argument('--upscaler', required=False, default='Nearest', help='upscaler name')\n    parser.add_argument('--scale', required=False, default=2, help='upscaler scale')\n    args = parser.parse_args()\n    log.info(f'api-upscale: {args}')\n    upscale(args)\n"
  },
  {
    "path": "cli/api-vqa.py",
    "content": "#!/usr/bin/env python\nimport os\nimport time\nimport base64\nimport logging\nimport argparse\nimport requests\nimport urllib3\n\n\nsd_url = os.environ.get('SDAPI_URL', \"http://127.0.0.1:7860\")\nsd_username = os.environ.get('SDAPI_USR', None)\nsd_password = os.environ.get('SDAPI_PWD', None)\n\n\nlogging.basicConfig(level = logging.INFO, format = '%(asctime)s %(levelname)s: %(message)s')\nlog = logging.getLogger(__name__)\nurllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)\n\n\ndef auth():\n    if sd_username is not None and sd_password is not None:\n        return requests.auth.HTTPBasicAuth(sd_username, sd_password)\n    return None\n\n\ndef get(endpoint: str, dct: dict = None):\n    req = requests.get(f'{sd_url}{endpoint}', json=dct, timeout=300, verify=False, auth=auth())\n    if req.status_code != 200:\n        return { 'error': req.status_code, 'reason': req.reason, 'url': req.url }\n    else:\n        return req.json()\n\n\ndef post(endpoint: str, dct: dict = None):\n    req = requests.post(f'{sd_url}{endpoint}', json = dct, timeout=300, verify=False, auth=auth())\n    if req.status_code != 200:\n        return { 'error': req.status_code, 'reason': req.reason, 'url': req.url }\n    else:\n        return req.json()\n\n\ndef info(args): # pylint: disable=redefined-outer-name\n    t0 = time.time()\n    with open(args.input, 'rb') as f:\n        content = f.read()\n    dct = { 'image': base64.b64encode(content).decode() }\n    if args.model is not None:\n        dct['model'] = args.model\n    if args.question is not None:\n        dct['question'] = args.question\n    data = post('/sdapi/v1/vqa', dct)\n    t1 = time.time()\n    log.info(f'answer: {data} time={t1-t0:.2f}')\n\n\nif __name__ == \"__main__\":\n    parser = argparse.ArgumentParser(description = 'api-vqa')\n    parser.add_argument('--input', required=True, help='input image')\n    parser.add_argument('--model', required=False, help='vqa model')\n    parser.add_argument('--question', required=False, help='question')\n    args = parser.parse_args()\n    log.info(f'api-vqa: {args}')\n    info(args)\n"
  },
  {
    "path": "cli/api-xyz.py",
    "content": "#!/usr/bin/env python\n# example: api-control.py --prompt \"anime girl\" --control \"Canny:Canny:1.0:0.1:0.9:/home/vlado/generative/Samples/anime1.jpg,None:Depth:0.9:0.0:1.0:/home/vlado/generative/Samples/anime1.jpg\" --hires --detailer --output /tmp/anime.jpg\nimport os\nimport io\nimport time\nimport base64\nimport logging\nimport argparse\nimport requests\nimport urllib3\nfrom PIL import Image\n\nsd_url = os.environ.get('SDAPI_URL', \"http://127.0.0.1:7860\")\nsd_username = os.environ.get('SDAPI_USR', None)\nsd_password = os.environ.get('SDAPI_PWD', None)\n\nlogging.basicConfig(level = logging.INFO, format = '%(asctime)s %(levelname)s: %(message)s')\nlog = logging.getLogger(__name__)\nurllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)\n\noptions = {\n    \"save_images\": False,\n    \"send_images\": True,\n}\n\n\ndef auth():\n    if sd_username is not None and sd_password is not None:\n        return requests.auth.HTTPBasicAuth(sd_username, sd_password)\n    return None\n\n\ndef post(endpoint: str, dct: dict = None):\n    req = requests.post(f'{sd_url}{endpoint}', json = dct, timeout=300, verify=False, auth=auth())\n    if req.status_code != 200:\n        return { 'error': req.status_code, 'reason': req.reason, 'url': req.url }\n    else:\n        return req.json()\n\n\ndef generate(args): # pylint: disable=redefined-outer-name\n    t0 = time.time()\n    options['prompt'] = args.prompt\n    options['negative_prompt'] = args.negative\n\n    options['xyz'] = {\n        'draw_legend': args.legend,\n        'include_grid': args.grid,\n        'include_subgrids': args.subgrids,\n        'include_images': args.images,\n        'include_time': args.time,\n        'include_text': args.text,\n    }\n    if args.x_type and args.x_values:\n        options['xyz']['x_type'] = args.x_type\n        options['xyz']['x_values'] = args.x_values\n\n    if args.y_type and args.y_values:\n        options['xyz']['y_type'] = args.y_type\n        options['xyz']['y_values'] = args.y_values\n\n    if args.z_type and args.z_values:\n        options['xyz']['z_type'] = args.z_type\n        options['xyz']['z_values'] = args.z_values\n\n    data = post('/sdapi/v1/control', options)\n    t1 = time.time()\n    if 'info' in data:\n        log.info(f'info: {data[\"info\"]}')\n\n    def get_image(encoded, output):\n        if not isinstance(encoded, list):\n            return\n        for i in range(len(encoded)):\n            b64 = encoded[i].split(',',1)[0]\n            info = data['info']\n            image = Image.open(io.BytesIO(base64.b64decode(b64)))\n            log.info(f'received image: size={image.size} time={t1-t0:.2f} info=\"{info}\"')\n            if output:\n                image.save(output)\n                log.info(f'image saved: size={image.size} filename={output}')\n\n    if 'images' in data:\n        get_image(data['images'], args.output)\n\n\nif __name__ == \"__main__\":\n    parser = argparse.ArgumentParser(description = 'api-control')\n    parser.add_argument('--output', required=False, default=None, help='output filename')\n    parser.add_argument('--prompt', required=False, default='', help='prompt text')\n    parser.add_argument('--negative', required=False, default='', help='negative prompt text')\n    parser.add_argument('--x-type', required=False, default=None, help='x axis type')\n    parser.add_argument('--y-type', required=False, default=None, help='y axis type')\n    parser.add_argument('--z-type', required=False, default=None, help='z axis type')\n    parser.add_argument('--x-values', required=False, default=None, help='x axis values')\n    parser.add_argument('--y-values', required=False, default=None, help='y axis values')\n    parser.add_argument('--z-values', required=False, default=None, help='z axis values')\n    parser.add_argument('--legend', required=False, default=True, help='Draw legend')\n    parser.add_argument('--grid', required=False, default=True, help='Include grid')\n    parser.add_argument('--subgrids', required=False, default=False, help='Include subgrids')\n    parser.add_argument('--images', required=False, default=True, help='Include images')\n    parser.add_argument('--time', required=False, default=True, help='Include time')\n    parser.add_argument('--text', required=False, default=True, help='Include text')\n    args = parser.parse_args()\n    log.info(f'api-control: {args}')\n    generate(args)\n"
  },
  {
    "path": "cli/api-xyzenum.py",
    "content": "#!/usr/bin/env python\nimport os\nimport logging\nimport requests\nimport urllib3\n\n\nsd_url = os.environ.get('SDAPI_URL', \"http://127.0.0.1:7860\")\nsd_username = os.environ.get('SDAPI_USR', None)\nsd_password = os.environ.get('SDAPI_PWD', None)\noptions = {\n    \"save_images\": True,\n    \"send_images\": True,\n}\n\nlogging.basicConfig(level = logging.INFO, format = '%(asctime)s %(levelname)s: %(message)s')\nlog = logging.getLogger(__name__)\nurllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)\n\n\ndef auth():\n    if sd_username is not None and sd_password is not None:\n        return requests.auth.HTTPBasicAuth(sd_username, sd_password)\n    return None\n\n\ndef get(endpoint: str, dct: dict = None):\n    req = requests.get(f'{sd_url}{endpoint}', json = dct, timeout=300, verify=False, auth=auth())\n    if req.status_code != 200:\n        return { 'error': req.status_code, 'reason': req.reason, 'url': req.url }\n    else:\n        return req.json()\n\n\nif __name__ == \"__main__\":\n    options = get('/sdapi/v1/xyz-grid')\n    log.info(f'api-xyzgrid-options: {len(options)}')\n    for option in options:\n        log.info(f'  {option}')\n    details = get('/sdapi/v1/xyz-grid?option=upscaler')\n    for choice in details[0]['choices']:\n        log.info(f'  {choice}')\n"
  },
  {
    "path": "cli/civitai-search.py",
    "content": "#!/usr/bin/env python\nfrom dataclasses import dataclass\nimport os\nimport sys\nimport json\nimport time\nimport logging\n\n\nfull_dct = False\nfull_html = False\ndebug = False\nlogging.basicConfig(level = logging.INFO, format = '%(asctime)s %(levelname)s: %(message)s')\nlog = logging.getLogger(__name__)\n\n\n@dataclass\nclass ModelImage():\n    def __init__(self, dct: dict):\n        if isinstance(dct, str):\n            dct = json.loads(dct)\n        self.id: int = dct.get('id', 0)\n        self.url: str = dct.get('url', '')\n        self.width: int = dct.get('width', 0)\n        self.height: int = dct.get('height', 0)\n        self.type: str = dct.get('type', 'Unknown')\n        self.dct: dict = dct if full_dct else {}\n\n    def __str__(self):\n        return f'ModelImage(id={self.id} url=\"{self.url}\" width={self.width} height={self.height} type=\"{self.type}\")'\n\n@dataclass\nclass ModelFile():\n    def __init__(self, dct: dict):\n        if isinstance(dct, str):\n            dct = json.loads(dct)\n        self.id: int = dct.get('id', 0)\n        self.size: int = int(1024 * dct.get('sizeKB', 0))\n        self.name: str = dct.get('name', 'Unknown')\n        self.type: str = dct.get('type', 'Unknown')\n        self.hashes: list[str] = dct.get('hashes', {}).values()\n        self.url: str = dct.get('downloadUrl', '')\n        self.dct: dict = dct if full_dct else {}\n\n    def __str__(self):\n        return f'ModelFile(id={self.id} name=\"{self.name}\" size={self.size} type=\"{self.type}\" url=\"{self.url}\")'\n\n\n@dataclass\nclass ModelVersion():\n    def __init__(self, dct: dict):\n        import bs4\n        if isinstance(dct, str):\n            dct = json.loads(dct)\n        self.id: int = dct.get('id', 0)\n        self.name: str = dct.get('name', 'Unknown')\n        self.base: str = dct.get('baseModel', 'Unknown')\n        self.mtime: str = dct.get('publishedAt', '')\n        self.downloads: int = dct.get('stats', {}).get('downloadCount', 0)\n        self.availability: str = dct.get('availability', 'Unknown')\n        self.html: str = dct.get('description', '') or '' if full_html else ''\n        self.desc: str = bs4.BeautifulSoup(dct.get('description', '') or '', features=\"html.parser\").get_text()\n        self.files = [ModelFile(f) for f in dct.get('files', [])]\n        self.images = [ModelImage(i) for i in dct.get('images', [])]\n        self.dct: dict = dct if full_dct else {}\n\n    def __str__(self):\n        return f'ModelVersion(id={self.id} name=\"{self.name}\" base=\"{self.base}\" mtime=\"{self.mtime}\" downloads={self.downloads} availability={self.availability} desc=\"{self.desc[:30]}...\")'\n\n\n@dataclass\nclass Model():\n    def __init__(self, dct: dict):\n        import bs4\n        if isinstance(dct, str):\n            dct = json.loads(dct)\n        self.id: int = dct.get('id', 0)\n        self.url: str = f'https://civitai.com/models/{self.id}'\n        self.type: str = dct.get('type', 'Unknown')\n        self.name: str = dct.get('name', 'Unknown')\n        self.html: str = dct.get('description', '') or '' if full_html else ''\n        self.desc: str = bs4.BeautifulSoup(dct.get('description', '') or '', features=\"html.parser\").get_text()\n        self.tags: list[str] = dct.get('tags', [])\n        self.nsfw: bool = dct.get('nsfw', False)\n        self.level: str = dct.get('nsfwLevel', 0)\n        self.availability: str = dct.get('availability', 'Unknown')\n        self.downloads: int = dct.get('stats', {}).get('downloadCount', 0)\n        self.creator: str = dct.get('creator', {}).get('username', 'Unknown')\n        self.versions: list[ModelVersion] = [ModelVersion(v) for v in dct.get('modelVersions', [])]\n        self.dct: dict = dct if full_dct else {}\n\n    def __str__(self):\n        return f'Model(id={self.id} type={self.type} name=\"{self.name}\" versions={len(self.versions)} nsfw={self.nsfw}/{self.level} downloads={self.downloads} author=\"{self.creator}\" tags={self.tags} desc=\"{self.desc[:30]}...\")'\n\n\ndef search_civitai(\n        query:str,\n        tag:str = '', # optional:tag name\n        types:str = '', # (Checkpoint, TextualInversion, Hypernetwork, AestheticGradient, LORA, Controlnet, Poses)\n        sort:str = '', # (Highest Rated, Most Downloaded, Newest)\n        period:str = '', # (AllTime, Year, Month, Week, Day)\n        nsfw:bool = None, # optional:bool\n        limit:int = 0,\n        base:list[str] = [], # list\n        token:str = None,\n        exact:bool = True,\n):\n    import requests\n    from urllib.parse import urlencode\n\n    if len(query) == 0:\n        log.error('CivitAI: empty query')\n        return []\n\n    t0 = time.time()\n    dct = { 'query': query }\n    if len(tag) > 0:\n        dct['tag'] = tag\n    if nsfw is not None:\n        dct['nsfw'] = 'true' if nsfw else 'false'\n    if limit > 0:\n        dct['limit'] = limit\n    if len(types) > 0:\n        dct['types'] = types\n    if len(sort) > 0:\n        dct['sort'] = sort\n    if len(period) > 0:\n        dct['period'] = period\n    if len(base) > 0:\n        dct['baseModels'] = ','.join(base)\n    encoded = urlencode(dct)\n\n    headers = {}\n    if token is None:\n        token = os.environ.get('CIVITAI_TOKEN', None)\n    if token is not None and len(token) > 0:\n        headers['Authorization'] = f'Bearer {token}'\n\n    url = 'https://civitai.com/api/v1/models'\n    uri = f'{url}?{encoded}'\n    log.info(f'CivitAI request: uri=\"{uri}\" dct={dct} token={token is not None}')\n    result = requests.get(uri, headers=headers, timeout=60)\n\n    if result.status_code != 200:\n        log.error(f'CivitAI: code={result.status_code} reason={result.reason} uri={result.url}')\n        return []\n\n    models: list[Model] = []\n    exact_models: list[Model] = []\n    items = result.json().get('items', [])\n    for item in items:\n        models.append(Model(item))\n\n    if exact:\n        for model in models:\n            model_names = [model.name.lower()]\n            version_names = [v.name.lower() for v in model.versions]\n            file_names = [f.name.lower() for v in model.versions for f in v.files]\n            if any([query.lower() in name for name in model_names + version_names + file_names]): # noqa: C419\n                exact_models.append(model)\n\n    t1 = time.time()\n    log.info(f'CivitAI result: code={result.status_code} exact={len(exact_models)} total={len(models)} time={t1-t0:.2f}')\n    return exact_models if len(exact_models) > 0 else models\n\n\ndef models_to_dct(all_models:list, model_id:int=None):\n    dct = []\n    for model in all_models:\n        if model_id is not None and model.id != model_id:\n            continue\n        model_dct = model.__dict__.copy()\n        versions_dct = []\n        for version in model.versions:\n            version_dct = version.__dict__.copy()\n            version_dct['files'] = [f.__dict__.copy() for f in version.files]\n            version_dct['images'] = [i.__dict__.copy() for i in version.images]\n            versions_dct.append(version_dct)\n        model_dct['versions'] = versions_dct\n        dct.append(model_dct)\n    return dct\n\n\ndef print_models(models: list[Model]):\n    if debug:\n        from rich import print as dbg\n    else:\n        dbg = lambda *args, **kwargs: None # pylint: disable=unnecessary-lambda-assignment\n    for model in models:\n        log.info(f' {model}')\n        dbg('Model', model.dct)\n        for version in model.versions:\n            log.info(f'  {version}')\n            dbg('ModelVersion', version.dct)\n            for file in version.files:\n                log.info(f'   {file}')\n                dbg('ModelFile', file.dct)\n            for image in version.images:\n                log.info(f'   {image}')\n                dbg('ModelImage', image.dct)\n\n\nif __name__ == \"__main__\":\n    sys.argv.pop(0)\n    txt = ' '.join(sys.argv)\n    res = search_civitai(\n        query=txt,\n        # tag = '',\n        # types = '',\n        # sort = 'Most Downloaded',\n        # period = 'Year',\n        # nsfw = True,\n        # base = [],\n        # exact= True,\n        # limit=100,\n    )\n    print_models(res)\n"
  },
  {
    "path": "cli/download-file.py",
    "content": "#!/usr/bin/env python\nimport os\nimport time\nimport argparse\nimport tempfile\nimport urllib\nimport requests\nimport urllib3\nimport rich.progress as p\nfrom rich import print # pylint: disable=redefined-builtin\n\n\npbar = p.Progress(p.TextColumn('[cyan]{task.description}'), p.DownloadColumn(), p.BarColumn(), p.TaskProgressColumn(), p.TimeRemainingColumn(), p.TimeElapsedColumn(), p.TransferSpeedColumn())\nheaders = {\n    'Content-type': 'application/json',\n    'User-Agent': 'Mozilla/5.0',\n}\n\n\ndef get_filename(args, res):\n    content_fn = (res.headers.get('content-disposition', '').split('filename=')[1]).strip().strip('\\\"') if 'filename=' in res.headers.get('content-disposition', '') else None\n    return args.file or content_fn or next(tempfile._get_candidate_names()) # pylint: disable=protected-access\n\n\ndef download_requests(args):\n    res = requests.get(args.url, timeout=30, headers=headers, verify=False, allow_redirects=True, stream=True)\n    content_length = int(res.headers.get('content-length', 0))\n    fn = get_filename(args, res)\n    print(f'downloading: url={args.url} file={fn} size={content_length if content_length > 0 else \"unknown\"} lib=requests block={args.block}')\n    with open(fn, 'wb') as f:\n        with pbar:\n            task = pbar.add_task(description=\"Download starting\", total=content_length)\n            for data in res.iter_content(args.block):\n                f.write(data)\n                pbar.update(task, advance=args.block, description=\"Downloading\")\n    return fn\n\n\ndef download_urllib(args):\n    fn = ''\n    req = urllib.request.Request(args.url, headers=headers)\n    res = urllib.request.urlopen(req)\n    content_length = int(res.getheader('content-length') or 0)\n    fn = get_filename(args, res)\n    print(f'downloading: url={args.url} file={fn} size={content_length if content_length > 0 else \"unknown\"} lib=urllib block={args.block}')\n    with open(fn, 'wb') as f:\n        with pbar:\n            task = pbar.add_task(description=\"Download starting\", total=content_length)\n            while True:\n                buf = res.read(args.block)\n                if not buf:\n                    break\n                f.write(buf)\n                pbar.update(task, advance=args.block, description=\"Downloading\")\n    return fn\n\n\ndef download_urllib3(args):\n    http_pool = urllib3.PoolManager()\n    res = http_pool.request('GET', args.url, preload_content=False, headers=headers)\n    fn = get_filename(args, res)\n    content_length = int(res.headers.get('content-length', 0))\n    print(f'downloading: url={args.url} file={fn} size={content_length if content_length > 0 else \"unknown\"} lib=urllib3 block={args.block}')\n    with open(fn, 'wb') as f:\n        with pbar:\n            task = pbar.add_task(description=\"Download starting\", total=content_length)\n            while True:\n                buf = res.read(args.block)\n                if not buf:\n                    break\n                f.write(buf)\n                pbar.update(task, advance=args.block, description=\"Downloading\")\n    return fn\n\n\ndef download_httpx(args):\n    try:\n        import httpx\n    except ImportError:\n        print('httpx is not installed')\n        return None\n    with httpx.stream(\"GET\", args.url, headers=headers, verify=False, follow_redirects=True) as res:\n        fn = get_filename(args, res)\n        content_length = int(res.headers.get('content-length', 0))\n        print(f'downloading: url={args.url} file={fn} size={content_length if content_length > 0 else \"unknown\"} lib=httpx block=internal')\n        with open(fn, 'wb') as f:\n            with pbar:\n                task = pbar.add_task(description=\"Download starting\", total=content_length)\n                for buf in res.iter_bytes():\n                    f.write(buf)\n                    pbar.update(task, advance=args.block, description=\"Downloading\")\n        return fn\n\n\nif __name__ == \"__main__\":\n    parser = argparse.ArgumentParser(description = 'downloader')\n    parser.add_argument('--url', required=True, help=\"download url, required\")\n    parser.add_argument('--file', required=False, help=\"output file, default: autodetect\")\n    parser.add_argument('--lib', required=False, default='requests', choices=['urllib', 'urllib3', 'requests', 'httpx'], help=\"download mode, default: %(default)s\")\n    parser.add_argument('--block', required=False, type=int, default=16384, help=\"download block size, default: %(default)s\")\n    parsed = parser.parse_args()\n    urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)\n    try:\n        t0 = time.time()\n        if parsed.lib == 'requests':\n            filename = download_requests(parsed)\n        elif parsed.lib == 'urllib':\n            filename = download_urllib(parsed)\n        elif parsed.lib == 'urllib3':\n            filename = download_urllib3(parsed)\n        elif parsed.lib == 'httpx':\n            filename = download_httpx(parsed)\n        else:\n            print(f'unknown download library: {parsed.lib}')\n            exit(1)\n        t1 = time.time()\n        if filename is None:\n            print(f'download error: args={parsed}')\n            exit(1)\n        speed = round(os.path.getsize(filename) / (t1 - t0) / 1024 / 1024, 3)\n        print(f'download complete: url={parsed.url} file={filename} speed={speed} mb/s')\n    except KeyboardInterrupt:\n        print(f'download cancelled: args={parsed}')\n    except Exception as e:\n        print(f'download error: args={parsed} {e}')\n"
  },
  {
    "path": "cli/full-test.sh",
    "content": "#!/usr/bin/env bash\n\nnode cli/api-txt2img.js\nnode cli/api-pulid.js\n\nsource venv/bin/activate\necho image-exif\npython cli/api-info.py --input html/logo-bg-0.jpg\necho txt2img\npython cli/api-txt2img.py --detailer --prompt \"girl on a mountain\" --seed 42 --sampler DEIS --width 1280 --height 800 --steps 10\necho img2img\npython cli/api-img2img.py --init html/logo-bg-0.jpg --steps 10\necho inpaint\npython cli/api-img2img.py --init html/logo-bg-0.jpg --mask html/logo-dark.png --steps 10\necho upscale\npython cli/api-upscale.py --input html/logo-bg-0.jpg --upscaler \"ESRGAN 4x Valar\" --scale 4\necho vqa\npython cli/api-vqa.py --input html/logo-bg-0.jpg\necho detailer\npython cli/api-detect.py --image html/invoked.jpg\necho faceid\npython cli/api-faceid.py --face html/simple-dark.jpg\necho control-txt2img\npython cli/api-control.py --prompt \"cute robot\"\necho control-img2img\npython cli/api-control.py --prompt \"cute robot\" --input html/logo-bg-0.jpg\necho control-ipsadapter\npython cli/api-control.py --prompt \"cute robot\" --ipadapter \"Base SDXL:html/logo-bg-0.jpg:0.8\"\necho control-preprocess\npython cli/api-preprocess.py --input html/logo-bg-0.jpg --model \"Zoe Depth\"\necho control-controlnet\npython cli/api-control.py --prompt \"cute robot\" --input html/logo-bg-0.jpg --type controlnet --control \"Zoe Depth:Xinsir Union XL:0.5\"\n"
  },
  {
    "path": "cli/gen-styles.py",
    "content": "#!/bin/env python\n\nimport io\nimport json\nimport base64\nimport argparse\nimport requests\nfrom PIL import Image\n\n\noptions = {\n    \"negative_prompt\": \"\",\n    \"steps\": 20,\n    \"batch_size\": 1,\n    \"n_iter\": 1,\n    \"seed\": -1,\n    \"sampler_name\": \"UniPC\",\n    \"cfg_scale\": 6,\n    \"width\": 512,\n    \"height\": 512,\n    \"save_images\": False,\n    \"send_images\": True,\n}\nstyles = []\n\n\ndef pil_to_b64(img: Image, size: int, quality: int):\n    img = img.convert('RGB')\n    img = img.resize((size, size))\n    buffer = io.BytesIO()\n    img.save(buffer, format=\"JPEG\", quality=quality)\n    b64encoded = base64.b64encode(buffer.getvalue()).decode(\"utf-8\")\n    return f'data:image/jpeg;base64,{b64encoded}'\n\n\ndef post(endpoint: str, dct: dict = None):\n    req = requests.post(endpoint, json = dct, timeout=300, verify=False)\n    if req.status_code != 200:\n        return { 'error': req.status_code, 'reason': req.reason, 'url': req.url }\n    else:\n        return req.json()\n\n\nif __name__ == '__main__':\n    parser = argparse.ArgumentParser(description = 'gen-styles.py')\n    parser.add_argument('--input', type=str, required=True, help=\"input text file with one line per prompt\")\n    parser.add_argument('--output', type=str, required=True, help=\"output json file\")\n    parser.add_argument('--nopreviews', default=False, action='store_true', help = 'generate previews')\n    parser.add_argument('--prompt', type=str, required=False, default='girl walking in a city', help=\"applied prompt when generating previews\")\n    parser.add_argument('--size', type=int, default=128, help=\"image size for previews\")\n    parser.add_argument('--quality', type=int, default=35, help=\"image quality for previews\")\n    parser.add_argument('--url', type=str, required=False, default='http://127.0.0.1:7860', help=\"sd.next server url\")\n    args = parser.parse_args()\n    with open(args.input, encoding='utf-8') as f:\n        lines = f.readlines()\n    for line in lines:\n        line = line.strip().replace('\\n', '')\n        if len(line) == 0:\n            continue\n        print(f'processing: {line}')\n        if not args.nopreviews:\n            options['prompt'] = f'{line} {args.prompt}'\n            data = post(f'{args.url}/sdapi/v1/txt2img', options)\n            if 'error' in data:\n                print(f'error: {data}')\n                continue\n            b64str = data['images'][0].split(',',1)[0]\n            image = Image.open(io.BytesIO(base64.b64decode(b64str)))\n        else:\n            image = None\n        styles.append({\n            'name': line,\n            'prompt': line + ' {prompt}',\n            'negative': '',\n            'extra': '',\n            'preview': pil_to_b64(image, args.size, args.quality) if image is not None else '',\n        })\n        with open(args.output, 'w', encoding='utf-8') as outfile:\n            json.dump(styles, outfile, indent=2)\n"
  },
  {
    "path": "cli/generate-random.json",
    "content": "{\n  \"prompts\": [\n    \"<style> of <embedding> <place>, high detailed, by <artist>, <suffix>\"\n  ],\n  \"negative\": [\n    \"watermark, fog, clouds, blurry, duplicate, deformed, mutation\"\n  ],\n  \"places\": [\n    \"standing in the city\", \"on a spaceship\", \"in fantasy landscape\", \"on a shore\", \"in a forest\", \"in winter wonderland\"\n  ],\n  \"embeddings\": [\n    \"man\", \"man next to a beautiful girl\", \"man next to a car\", \"beautiful girl\", \"sexy naked girl\", \"cute girl holding a flower\", \"beautiful robot\",\n    \"young korean girl with medium-length white hair\", \"monster\", \"pin up girl\",\n    \"man vlado\", \"beutiful girl ana\", \"man lee\", \"beautiful girl abby\"\n  ],\n  \"artists\": [\n    \"John Salminen\", \"Greg Rutkowski\", \"Akihiko Yoshida\", \"Alejandro Burdisio\", \"Artgerm\", \"Patrick Brown\", \"Walt Disney\", \"Neal Adams\", \"Jeremy Chong\",\n    \"Chris Rallis\", \"Roy Lichtenstein\", \"Claude Monet\", \"Jon Whitcomb\", \"Pablo Picasso\", \"Raymond Leech\", \"Tom Lovell\", \"Noriyoshi Ohrai\", \"Shingei\",\n    \"Helmut Newton\", \"Maciej Kuciara\", \"Daniel F. Gerhartz\", \"Stephan Martinière\", \"Magali Villeneuve\", \"Carne Griffiths\", \"Alberto Seveso\",\n    \"Vincent Van Gogh\", \"WLOP\", \"Frank Xavier Leyendecker\", \"Peter Lindbergh\", \"Nick Gentry\", \"Howard Chandler Christy\", \"Raphael\", \"Henri Matisse\"\n  ],\n  \"styles\": [\n    \"illustration\", \"painting\", \"portrait\", \"photograph\", \"drawing\", \"sketch\", \"pencil sketch\", \"3d render\", \"cartoon\", \"anime\", \"scribbles\", \"pop art\",\n    \"ink painting\", \"steampunk illustration\", \"dc comics illustration\", \"marvel comics\", \"vray render\", \"photoillustration\", \"pixar\", \"marble sculpture\",\n    \"bronze sculpture\", \"christmas theme\"\n  ],\n  \"suffixes\": [\n    \"cinematic lighting\", \"artstation\", \"fineart\", \"cinematic\", \"photorealistic\", \"soft light\", \"sharp focus\", \"bokeh\", \"dreamlike\", \"semirealism\",\n    \"colorful\", \"black and white\", \"intricate\", \"elegant\"\n  ]\n}\n"
  },
  {
    "path": "cli/generate.json",
    "content": "{\n  \"paths\":\n  {\n      \"root\": \"/mnt/c/Users/mandi/OneDrive/Generative/Generate\",\n      \"generate\": \"image\",\n      \"upscale\": \"upscale\",\n      \"grid\": \"grid\"\n  },\n  \"generate\":\n  {\n      \"detailer\": true,\n      \"prompt\": \"dynamic\",\n      \"negative_prompt\": \"foggy, blurry, blurred, duplicate, ugly, mutilated, mutation, mutated, out of frame, bad anatomy, disfigured, deformed, censored, low res, watermark, text, poorly drawn face, signature\",\n      \"steps\": 30,\n      \"batch_size\": 2,\n      \"n_iter\": 1,\n      \"seed\": -1,\n      \"sampler_name\": \"DPM2 Karras\",\n      \"cfg_scale\": 6,\n      \"width\": 512,\n      \"height\": 512\n  },\n  \"upscale\":\n  {\n      \"upscaler_1\": \"SwinIR_4x\",\n      \"upscaler_2\": \"None\",\n      \"upscaling_resize\": 0,\n      \"gfpgan_visibility\": 0,\n      \"codeformer_visibility\": 0,\n      \"codeformer_weight\": 0.5\n  },\n  \"options\":\n  {\n      \"sd_model_checkpoint\": \"sd-v15-runwayml\",\n      \"sd_vae\": \"vae-ft-mse-840000-ema-pruned.ckpt\"\n  }\n}\n"
  },
  {
    "path": "cli/generate.py",
    "content": "#!/usr/bin/env python\n# pylint: disable=no-member\n\"\"\"generate batches of images from prompts and upscale them\n\nparams: run with `--help`\n\ndefault workflow runs infinite loop and prints stats when interrupted:\n1. choose random scheduler lookup all available and pick one\n2. generate dynamic prompt based on styles, embeddings, places, artists, suffixes\n3. beautify prompt\n4. generate 3x3 images\n5. create image grid\n6. upscale images with face restoration\n\"\"\"\n\nimport argparse\nimport asyncio\nimport base64\nimport io\nimport json\nimport logging\nimport math\nimport os\nimport pathlib\nimport secrets\nimport time\nimport sys\nimport importlib\n\nfrom random import randrange\nfrom PIL import Image\nfrom PIL.ExifTags import TAGS\nfrom PIL.TiffImagePlugin import ImageFileDirectory_v2\n\nfrom sdapi import close, get, interrupt, post, session\nfrom util import Map, log, safestring\n\n\nsd = {}\nrandom = {}\nstats = Map({ 'images': 0, 'wall': 0, 'generate': 0, 'upscale': 0 })\navg = {}\n\n\ndef grid(data):\n    if len(data.image) > 1:\n        w, h = data.image[0].size\n        rows = round(math.sqrt(len(data.image)))\n        cols = math.ceil(len(data.image) / rows)\n        image = Image.new('RGB', size = (cols * w, rows * h), color = 'black')\n        for i, img in enumerate(data.image):\n            image.paste(img, box=(i % cols * w, i // cols * h))\n        short = data.info.prompt[:min(len(data.info.prompt), 96)] # limit prompt part of filename to 96 chars\n        name = '{seed:0>9} {short}'.format(short = short, seed = data.info.all_seeds[0]) # pylint: disable=consider-using-f-string\n        name = safestring(name) + '.jpg'\n        f = os.path.join(sd.paths.root, sd.paths.grid, name)\n        log.info({ 'grid': { 'name': f, 'size': image.size, 'images': len(data.image) } })\n        image.save(f, 'JPEG', exif = exif(data.info, None, 'grid'), optimize = True, quality = 70)\n        return image\n    return data.image\n\n\ndef exif(info, i = None, op = 'generate'):\n    seed = [info.all_seeds[i]] if len(info.all_seeds) > 0 and i is not None else info.all_seeds # always returns list\n    seed = ', '.join([str(x) for x in seed]) # int list to str list to single str\n    template = '{prompt} | negative {negative_prompt} | seed {s} | steps {steps} | cfgscale {cfg_scale} | sampler {sampler_name} | batch {batch_size} | timestamp {job_timestamp} | model {model} | vae {vae}'.format(s = seed, model = sd.options['sd_model_checkpoint'], vae = sd.options['sd_vae'], **info) # pylint: disable=consider-using-f-string\n    if op == 'upscale':\n        template += ' | faces gfpgan' if sd.upscale.gfpgan_visibility > 0 else ''\n        template += ' | faces codeformer' if sd.upscale.codeformer_visibility > 0 else ''\n        template += ' | upscale {resize}x {upscaler}'.format(resize = sd.upscale.upscaling_resize, upscaler = sd.upscale.upscaler_1) if sd.upscale.upscaler_1 != 'None' else '' # pylint: disable=consider-using-f-string\n        template += ' | upscale {resize}x {upscaler}'.format(resize = sd.upscale.upscaling_resize, upscaler = sd.upscale.upscaler_2) if sd.upscale.upscaler_2 != 'None' else '' # pylint: disable=consider-using-f-string\n    if op == 'grid':\n        template += ' | grid {num}'.format(num = sd.generate.batch_size * sd.generate.n_iter) # pylint: disable=consider-using-f-string\n    ifd = ImageFileDirectory_v2()\n    exif_stream = io.BytesIO()\n    _TAGS = {v: k for k, v in TAGS.items()} # enumerate possible exif tags\n    ifd[_TAGS['ImageDescription']] = template\n    ifd.save(exif_stream)\n    val = b'Exif\\x00\\x00' + exif_stream.getvalue()\n    return val\n\n\ndef randomize(lst):\n    if len(lst) > 0:\n        return secrets.choice(lst)\n    else:\n        return ''\n\n\ndef prompt(params): # generate dynamic prompt or use one if provided\n    sd.generate.prompt = params.prompt if params.prompt != 'dynamic' else randomize(random.prompts)\n    sd.generate.negative_prompt = params.negative if params.negative != 'dynamic' else randomize(random.negative)\n    embedding = params.embedding if params.embedding != 'random' else randomize(random.embeddings)\n    sd.generate.prompt = sd.generate.prompt.replace('<embedding>', embedding)\n    artist = params.artist if params.artist != 'random' else randomize(random.artists)\n    sd.generate.prompt = sd.generate.prompt.replace('<artist>', artist)\n    style = params.style if params.style != 'random' else randomize(random.styles)\n    sd.generate.prompt = sd.generate.prompt.replace('<style>', style)\n    suffix = params.suffix if params.suffix != 'random' else randomize(random.suffixes)\n    sd.generate.prompt = sd.generate.prompt.replace('<suffix>', suffix)\n    place = params.suffix if params.suffix != 'random' else randomize(random.places)\n    sd.generate.prompt = sd.generate.prompt.replace('<place>', place)\n    if params.prompts or params.debug:\n        log.info({ 'random initializers': random })\n    if params.prompt == 'dynamic':\n        log.info({ 'dynamic prompt': sd.generate.prompt })\n    return sd.generate.prompt\n\n\ndef sampler(params, options): # find sampler\n    if params.sampler == 'random':\n        sd.generate.sampler_name = randomize(options.samplers)\n        log.info({ 'random sampler': sd.generate.sampler_name })\n    else:\n        found = [i for i in options.samplers if i.startswith(params.sampler)]\n        if len(found) == 0:\n            log.error({ 'sampler error': sd.generate.sampler_name, 'available': options.samplers})\n            exit()\n        sd.generate.sampler_name = found[0]\n    return sd.generate.sampler_name\n\n\nasync def generate(prompt = None, options = None, quiet = False): # pylint: disable=redefined-outer-name\n    global sd # pylint: disable=global-statement\n    if options:\n        sd = Map(options)\n    if prompt is not None:\n        sd.generate.prompt = prompt\n    if not quiet:\n        log.info({ 'generate': sd.generate })\n    if sd.get('options', None) is None:\n        sd['options'] = await get('/sdapi/v1/options')\n    names = []\n    b64s = []\n    images = []\n    info = Map({})\n    data = await post('/sdapi/v1/txt2img', sd.generate)\n    if 'error' in data:\n        log.error({ 'generate': data['error'], 'reason': data['reason'] })\n        return Map({})\n    info = Map(json.loads(data['info']))\n    log.debug({ 'info': info })\n    images = data['images']\n    short = info.prompt[:min(len(info.prompt), 96)] # limit prompt part of filename to 64 chars\n    for i in range(len(images)):\n        b64s.append(images[i])\n        images[i] = Image.open(io.BytesIO(base64.b64decode(images[i].split(',',1)[0])))\n        name = '{seed:0>9} {short}'.format(short = short, seed = info.all_seeds[i]) # pylint: disable=consider-using-f-string\n        name = safestring(name) + '.jpg'\n        f = os.path.join(sd.paths.root, sd.paths.generate, name)\n        names.append(f)\n        if not quiet:\n            log.info({ 'image': { 'name': f, 'size': images[i].size } })\n        images[i].save(f, 'JPEG', exif = exif(info, i), optimize = True, quality = 70)\n    return Map({ 'name': names, 'image': images, 'b64': b64s, 'info': info })\n\n\nasync def upscale(data):\n    data.upscaled = []\n    if sd.upscale.upscaling_resize <=1:\n        return data\n    sd.upscale.image = ''\n    log.info({ 'upscale': sd.upscale })\n    for i in range(len(data.image)):\n        f = data.name[i].replace(sd.paths.generate, sd.paths.upscale)\n        sd.upscale.image = data.b64[i]\n        res = await post('/sdapi/v1/extra-single-image', sd.upscale)\n        image = Image.open(io.BytesIO(base64.b64decode(res['image'].split(',',1)[0])))\n        data.upscaled.append(image)\n        log.info({ 'image': { 'name': f, 'size': image.size } })\n        image.save(f, 'JPEG', exif = exif(data.info, i, 'upscale'), optimize = True, quality = 70)\n    return data\n\n\nasync def init():\n    '''\n    import torch\n    log.info({ 'torch': torch.__version__, 'available': torch.cuda.is_available() })\n    current_device = torch.cuda.current_device()\n    mem_free, mem_total = torch.cuda.mem_get_info()\n    log.info({ 'cuda': torch.version.cuda, 'available': torch.cuda.is_available(), 'arch': torch.cuda.get_arch_list(), 'device': torch.cuda.get_device_name(current_device), 'memory': { 'free': round(mem_free / 1024 / 1024), 'total': (mem_total / 1024 / 1024) } })\n    '''\n    options = Map({})\n    options.flags = await get('/sdapi/v1/cmd-flags')\n    log.debug({ 'flags': options.flags })\n    data = await get('/sdapi/v1/sd-models')\n    options.models = [obj['title'] for obj in data]\n    log.debug({ 'registered models': options.models })\n    found = sd.options.sd_model_checkpoint if sd.options.sd_model_checkpoint in options.models else None\n    if found is None:\n        found = [i for i in options.models if i.startswith(sd.options.sd_model_checkpoint)]\n    if len(found) == 0:\n        log.error({ 'model error': sd.generate.sd_model_checkpoint, 'available': options.models})\n        exit()\n    sd.options.sd_model_checkpoint = found[0]\n    data = await get('/sdapi/v1/samplers')\n    options.samplers = [obj['name'] for obj in data]\n    log.debug({ 'registered samplers': options.samplers })\n    data = await get('/sdapi/v1/upscalers')\n    options.upscalers = [obj['name'] for obj in data]\n    log.debug({ 'registered upscalers': options.upscalers })\n    data = await get('/sdapi/v1/face-restorers')\n    options.restorers = [obj['name'] for obj in data]\n    log.debug({ 'registered face restorers': options.restorers })\n    await interrupt()\n    await post('/sdapi/v1/options', sd.options)\n    options.options = await get('/sdapi/v1/options')\n    log.info({ 'target models': { 'diffuser': options.options['sd_model_checkpoint'], 'vae': options.options['sd_vae'] } })\n    log.info({ 'paths': sd.paths })\n    options.queue = await get('/queue/status')\n    log.info({ 'queue': options.queue })\n    pathlib.Path(sd.paths.root).mkdir(parents = True, exist_ok = True)\n    pathlib.Path(os.path.join(sd.paths.root, sd.paths.generate)).mkdir(parents = True, exist_ok = True)\n    pathlib.Path(os.path.join(sd.paths.root, sd.paths.upscale)).mkdir(parents = True, exist_ok = True)\n    pathlib.Path(os.path.join(sd.paths.root, sd.paths.grid)).mkdir(parents = True, exist_ok = True)\n    return options\n\n\ndef args(): # parse cmd arguments\n    global sd # pylint: disable=global-statement\n    global random # pylint: disable=global-statement\n    parser = argparse.ArgumentParser(description = 'sd pipeline')\n    parser.add_argument('--config', type = str, default = 'generate.json', required = False, help = 'configuration file')\n    parser.add_argument('--random', type = str, default = 'generate-random.json', required = False, help = 'prompt file with randomized sections')\n    parser.add_argument('--max', type = int, default = 1, required = False, help = 'maximum number of generated images')\n    parser.add_argument('--prompt', type = str, default = 'dynamic', required = False, help = 'prompt')\n    parser.add_argument('--negative', type = str, default = 'dynamic', required = False, help = 'negative prompt')\n    parser.add_argument('--artist', type = str, default = 'random', required = False, help = 'artist style, used to guide dynamic prompt when prompt is not provided')\n    parser.add_argument('--embedding', type = str, default = 'random', required = False, help = 'use embedding, used to guide dynamic prompt when prompt is not provided')\n    parser.add_argument('--style', type = str, default = 'random', required = False, help = 'image style, used to guide dynamic prompt when prompt is not provided')\n    parser.add_argument('--suffix', type = str, default = 'random', required = False, help = 'style suffix, used to guide dynamic prompt when prompt is not provided')\n    parser.add_argument('--place', type = str, default = 'random', required = False, help = 'place locator, used to guide dynamic prompt when prompt is not provided')\n    parser.add_argument('--detailer', default = False, action='store_true', help = 'run detailer')\n    parser.add_argument('--steps', type = int, default = 0, required = False, help = 'number of steps')\n    parser.add_argument('--batch', type = int, default = 0, required = False, help = 'batch size, limited by gpu vram')\n    parser.add_argument('--n', type = int, default = 0, required = False, help = 'number of iterations')\n    parser.add_argument('--cfg', type = int, default = 0, required = False, help = 'classifier free guidance scale')\n    parser.add_argument('--sampler', type = str, default = 'random', required = False, help = 'sampler')\n    parser.add_argument('--seed', type = int, default = 0, required = False, help = 'seed, default is random')\n    parser.add_argument('--upscale', type = int, default = 0, required = False, help = 'upscale factor, disabled if 0')\n    parser.add_argument('--model', type = str, default = '', required = False, help = 'diffusion model')\n    parser.add_argument('--vae', type = str, default = '', required = False, help = 'vae model')\n    parser.add_argument('--path', type = str, default = '', required = False, help = 'output path')\n    parser.add_argument('--width', type = int, default = 0, required = False, help = 'width')\n    parser.add_argument('--height', type = int, default = 0, required = False, help = 'height')\n    parser.add_argument('--beautify', default = False, action='store_true', help = 'beautify prompt')\n    parser.add_argument('--prompts', default = False, action='store_true', help = 'print dynamic prompt templates')\n    parser.add_argument('--debug', default = False, action='store_true', help = 'print extra debug information')\n    params = parser.parse_args()\n    if params.debug:\n        log.setLevel(logging.DEBUG)\n        log.debug({ 'debug': True })\n    log.debug({ 'args': params.__dict__ })\n    home = pathlib.Path(sys.argv[0]).parent\n    if os.path.isfile(params.config):\n        try:\n            with open(params.config, 'r', encoding='utf-8') as f:\n                data = json.load(f)\n                sd = Map(data)\n                log.debug({ 'config': sd })\n        except Exception as e:\n            log.error({ 'config error': params.config, 'exception': e })\n            exit()\n    elif os.path.isfile(os.path.join(home, params.config)):\n        try:\n            with open(os.path.join(home, params.config), 'r', encoding='utf-8') as f:\n                data = json.load(f)\n                sd = Map(data)\n                log.debug({ 'config': sd })\n        except Exception as e:\n            log.error({ 'config error': params.config, 'exception': e })\n            exit()\n    else:\n        log.error({ 'config file not found': params.config})\n        exit()\n    if params.prompt == 'dynamic':\n        log.info({ 'prompt template': params.random })\n        if os.path.isfile(params.random):\n            try:\n                with open(params.random, 'r', encoding='utf-8') as f:\n                    data = json.load(f)\n                    random = Map(data)\n                    log.debug({ 'random template': sd })\n            except Exception:\n                log.error({ 'random template error': params.random})\n                exit()\n        elif os.path.isfile(os.path.join(home, params.random)):\n            try:\n                with open(os.path.join(home, params.random), 'r', encoding='utf-8') as f:\n                    data = json.load(f)\n                    random = Map(data)\n                    log.debug({ 'random template': sd })\n            except Exception:\n                log.error({ 'random template error': params.random})\n                exit()\n        else:\n            log.error({ 'random template file not found': params.random})\n            exit()\n        _dynamic = prompt(params)\n\n    sd.paths.root = params.path if params.path != '' else sd.paths.root\n    sd.generate.detailer = params.detailer if params.detailer is not None else sd.generate.detailer\n    sd.generate.seed = params.seed if params.seed > 0 else sd.generate.seed\n    sd.generate.sampler_name = params.sampler if params.sampler != 'random' else sd.generate.sampler_name\n    sd.generate.batch_size = params.batch if params.batch > 0 else sd.generate.batch_size\n    sd.generate.cfg_scale = params.cfg if params.cfg > 0 else sd.generate.cfg_scale\n    sd.generate.n_iter = params.n if params.n > 0 else sd.generate.n_iter\n    sd.generate.width = params.width if params.width > 0 else sd.generate.width\n    sd.generate.height = params.height if params.height > 0 else sd.generate.height\n    sd.generate.steps = params.steps if params.steps > 0 else sd.generate.steps\n    sd.upscale.upscaling_resize = params.upscale if params.upscale > 0 else sd.upscale.upscaling_resize\n    sd.upscale.codeformer_visibility = 1 if params.detailer else sd.upscale.codeformer_visibility\n    sd.options.sd_vae = params.vae if params.vae != '' else sd.options.sd_vae\n    sd.options.sd_model_checkpoint = params.model if params.model != '' else sd.options.sd_model_checkpoint\n    sd.upscale.upscaler_1 = 'SwinIR_4x' if params.upscale > 1 else sd.upscale.upscaler_1\n    if sd.generate.cfg_scale == 0:\n        sd.generate.cfg_scale = randrange(5, 10)\n    return params\n\n\nasync def main():\n    params = args()\n    sess = await session()\n    if sess is None:\n        await close()\n        exit()\n    options = await init()\n    iteration = 0\n    while True:\n        iteration += 1\n        log.info('')\n        log.info({ 'iteration': iteration, 'batch': sd.generate.batch_size, 'n': sd.generate.n_iter, 'total': sd.generate.n_iter * sd.generate.batch_size })\n        dynamic = prompt(params)\n        if params.beautify:\n            try:\n                promptist = importlib.import_module('modules.promptist')\n                sd.generate.prompt = promptist.beautify(dynamic)\n            except Exception as e:\n                log.error({ 'beautify': e })\n        scheduler = sampler(params, options)\n        t0 = time.perf_counter()\n        data = await generate() # generate returns list of images\n        if 'image' not in data:\n            break\n        stats.images += len(data.image)\n        t1 = time.perf_counter()\n        if len(data.image) > 0:\n            avg[scheduler] = (t1 - t0) / len(data.image)\n        stats.generate += t1 - t0\n        _image = grid(data)\n        data = await upscale(data)\n        t2 = time.perf_counter()\n        stats.upscale += t2 - t1\n        stats.wall += t2 - t0\n        its = sd.generate.steps / ((t1 - t0) / len(data.image)) if len(data.image) > 0 else 0\n        avg_time = round((t1 - t0) / len(data.image)) if len(data.image) > 0 else 0\n        log.info({ 'time' : { 'wall': round(t1 - t0), 'average': avg_time, 'upscale': round(t2 - t1), 'its': round(its, 2) } })\n        log.info({ 'generated': stats.images, 'max': params.max, 'progress': round(100 * stats.images / params.max, 1) })\n        if params.max != 0 and stats.images >= params.max:\n            break\n\n\nif __name__ == '__main__':\n    try:\n        asyncio.run(main())\n    except KeyboardInterrupt:\n        asyncio.run(interrupt())\n        asyncio.run(close())\n        log.info({ 'interrupt': True })\n    finally:\n        log.info({ 'sampler performance': avg })\n        log.info({ 'stats' : stats })\n        asyncio.run(close())\n"
  },
  {
    "path": "cli/git-clone.py",
    "content": "#!/usr/bin/env python\nimport os\nimport logging\nimport git\nfrom rich import console, progress\n\n\nclass GitRemoteProgress(git.RemoteProgress):\n    OP_CODES = [\"BEGIN\", \"CHECKING_OUT\", \"COMPRESSING\", \"COUNTING\", \"END\", \"FINDING_SOURCES\", \"RECEIVING\", \"RESOLVING\", \"WRITING\"]\n    OP_CODE_MAP = { getattr(git.RemoteProgress, _op_code): _op_code for _op_code in OP_CODES }\n\n    def __init__(self, url, folder) -> None:\n        super().__init__()\n        self.url = url\n        self.folder = folder\n        self.progressbar = progress.Progress(\n            progress.SpinnerColumn(),\n            progress.TextColumn(\"[cyan][progress.description]{task.description}\"),\n            progress.BarColumn(),\n            progress.TextColumn(\"[progress.percentage]{task.percentage:>3.0f}%\"),\n            progress.TimeRemainingColumn(),\n            progress.TextColumn(\"[yellow]<{task.fields[url]}>\"),\n            progress.TextColumn(\"{task.fields[message]}\"),\n            console=console.Console(),\n            transient=False,\n        )\n        self.progressbar.start()\n        self.active_task = None\n\n    def __del__(self) -> None:\n        self.progressbar.stop()\n\n    @classmethod\n    def get_curr_op(cls, op_code: int) -> str:\n        op_code_masked = op_code & cls.OP_MASK\n        return cls.OP_CODE_MAP.get(op_code_masked, \"?\").title()\n\n    def update(self, op_code: int, cur_count: str | float, max_count: str | float | None = None, message: str | None = \"\") -> None:\n        if op_code & self.BEGIN:\n            self.curr_op = self.get_curr_op(op_code) # pylint: disable=attribute-defined-outside-init\n            self.active_task = self.progressbar.add_task(description=self.curr_op, total=max_count, message=message, url=self.url)\n        self.progressbar.update(task_id=self.active_task, completed=cur_count, message=message)\n        if op_code & self.END:\n            self.progressbar.update(task_id=self.active_task, message=f\"[bright_black]{message}\")\n\n\ndef clone(url: str, folder: str):\n    git.Repo.clone_from(\n        url=url,\n        to_path=folder,\n        progress=GitRemoteProgress(url=url, folder=folder),\n        multi_options=['--config core.compression=0', '--config core.loosecompression=0', '--config pack.window=0'],\n        allow_unsafe_options=True,\n        depth=1,\n        )\n\n\nif __name__ == \"__main__\":\n    import argparse\n    parser = argparse.ArgumentParser(description = 'downloader')\n    parser.add_argument('--url', required=True, help=\"download url, required\")\n    parser.add_argument('--folder', required=False, help=\"output folder, default: autodetect\")\n    args = parser.parse_args()\n    logging.basicConfig(level=logging.INFO, format=\"%(asctime)s %(levelname)s: %(message)s\")\n    log = logging.getLogger(__name__)\n    try:\n        if not args.url.startswith('http'):\n            raise ValueError(f'invalid url: {args.url}')\n        f = args.url.split('/')[-1].split('.')[0] if args.folder is None else args.folder\n        if os.path.exists(f):\n            raise FileExistsError(f'folder already exists: {f}')\n        log.info(f'Clone start: url={args.url} folder={f}')\n        clone(url=args.url, folder=f)\n        log.info(f'Clone complete: url={args.url} folder={f}')\n    except KeyboardInterrupt:\n        log.warning(f'Clone cancelled: url={args.url} folder={f}')\n    except Exception as e:\n        log.error(f'Clone: url={args.url} {e}')\n"
  },
  {
    "path": "cli/hf-search.py",
    "content": "#!/usr/bin/env python\n\nimport sys\nimport huggingface_hub as hf\nfrom rich import print # pylint: disable=redefined-builtin\n\nif __name__ == \"__main__\":\n    sys.argv.pop(0)\n    keyword = sys.argv[0] if len(sys.argv) > 0 else ''\n    hf.logging.set_verbosity_info()\n    hf_api = hf.HfApi()\n    res = hf_api.list_models(\n        model_name=keyword,\n        full=True,\n        limit=100,\n        sort=\"downloads\",\n        direction=-1,\n    )\n    res = sorted(res, key=lambda x: x.id)\n    exact = [m for m in res if keyword.lower() in m.id.lower()]\n    if len(exact) > 0:\n        res = exact\n    for m in res:\n        meta = hf_api.model_info(m.id, files_metadata=True)\n        m.files = [f.rfilename for f in meta.siblings if f.rfilename.endswith('.bin') or f.rfilename.endswith('.safetensors')]\n        m.size = round(sum([f.size for f in meta.siblings]) / 1024 / 1024 / 1024, 2)\n        print({ 'name': m.id, 'files': len(m.files), 'size': m.size, 'downloads': m.downloads, 'ctime': m.created_at.isoformat(), 'url': f'https://huggingface.co/{m.id}', 'pipeline': m.pipeline_tag })\n"
  },
  {
    "path": "cli/image-encode.py",
    "content": "#!/usr/bin/env python\nimport io\nimport os\nimport sys\nimport base64\nfrom PIL import Image\nfrom rich import print # pylint: disable=redefined-builtin\n\n\ndef encode(file: str):\n    image = Image.open(file) if os.path.exists(file) else None\n    print(f'Input: file={file} image={image}')\n    if image is None:\n        return None\n    if image.mode != 'RGB':\n        image = image.convert('RGB')\n    with io.BytesIO() as stream:\n        image.save(stream, 'JPEG')\n        image.close()\n        values = stream.getvalue()\n        encoded = base64.b64encode(values).decode()\n        return encoded\n\n\nif __name__ == \"__main__\":\n    sys.argv.pop(0)\n    fn = sys.argv[0] if len(sys.argv) > 0 else ''\n    b64 = encode(fn)\n    print('=== BEGIN ===')\n    print(f'{b64}')\n    print('=== END ===')\n"
  },
  {
    "path": "cli/image-exif.py",
    "content": "#!/bin/env python\n\nimport os\nimport io\nimport re\nimport sys\nimport json\nimport importlib.util\nfrom PIL import Image, ExifTags, TiffImagePlugin, PngImagePlugin\nfrom rich import print # pylint: disable=redefined-builtin\n\n\nmodule_file = os.path.abspath(__file__)\nmodule_dir = os.path.dirname(module_file)\nmodule_spec = importlib.util.spec_from_file_location('infotext', os.path.join(module_dir, '..', 'modules', 'infotext.py'))\ninfotext = importlib.util.module_from_spec(module_spec)\nmodule_spec.loader.exec_module(infotext)\n\n\n\nclass Exif: # pylint: disable=single-string-used-for-slots\n    __slots__ = ('__dict__') # pylint: disable=superfluous-parens\n    def __init__(self, image = None):\n        super(Exif, self).__setattr__('exif', Image.Exif()) # pylint: disable=super-with-arguments\n        self.pnginfo = PngImagePlugin.PngInfo()\n        self.tags = {**dict(ExifTags.TAGS.items()), **dict(ExifTags.GPSTAGS.items())}\n        self.ids = {**{v: k for k, v in ExifTags.TAGS.items()}, **{v: k for k, v in ExifTags.GPSTAGS.items()}}\n        if image is not None:\n            self.load(image)\n\n    def __getattr__(self, attr):\n        if attr in self.__dict__:\n            return self.__dict__[attr]\n        return self.exif.get(attr, None)\n\n    def load(self, img: Image):\n        img.load() # exif may not be ready\n        exif_dict = {}\n        try:\n            exif_dict = dict(img._getexif().items()) # pylint: disable=protected-access\n        except Exception:\n            pass\n        if not exif_dict:\n            exif_dict = dict(img.info.items())\n        for key, val in exif_dict.items():\n            if isinstance(val, bytes): # decode bytestring\n                val = self.decode(val)\n            if val is not None:\n                if isinstance(key, str):\n                    self.exif[key] = val\n                    self.pnginfo.add_text(key, str(val), zip=False)\n                elif isinstance(key, int) and key in ExifTags.TAGS: # add known tags\n                    if self.tags[key] in ['ExifOffset']:\n                        continue\n                    self.exif[self.tags[key]] = val\n                    self.pnginfo.add_text(self.tags[key], str(val), zip=False)\n                    # if self.tags[key] == 'UserComment': # add geninfo from UserComment\n                        # self.geninfo = val\n                else:\n                    print('metadata unknown tag:', key, val)\n        for key, val in self.exif.items():\n            if isinstance(val, bytes): # decode bytestring\n                self.exif[key] = self.decode(val)\n\n    def decode(self, s: bytes):\n        remove_prefix = lambda text, prefix: text[len(prefix):] if text.startswith(prefix) else text # pylint: disable=unnecessary-lambda-assignment\n        # from encodings.aliases import aliases\n        # cp = list(set(aliases.values()))\n        for encoding in ['utf_16_be', 'utf-8', 'utf-16', 'ascii', 'latin_1', 'cp1252', 'cp437']: # try different encodings\n        # for encoding in cp:\n            try:\n                s = remove_prefix(s, b'UNICODE')\n                s = remove_prefix(s, b'ASCII')\n                s = remove_prefix(s, b'\\x00')\n                val = s.decode(encoding, errors=\"strict\")\n                val = re.sub(r'[\\x00-\\x09]', '', val).strip() # remove remaining special characters\n                if len(val) == 0: # remove empty strings\n                    val = None\n                return val\n            except Exception:\n                pass\n        return None\n\n    def parse(self):\n        x = self.exif.pop('parameters', None) or self.exif.pop('UserComment', None)\n        res = infotext.parse(x)\n        return res\n\n    def get_bytes(self):\n        ifd = TiffImagePlugin.ImageFileDirectory_v2()\n        exif_stream = io.BytesIO()\n        for key, val in self.exif.items():\n            if key in self.ids:\n                ifd[self.ids[key]] = val\n            else:\n                print('metadata unknown exif tag:', key, val)\n        ifd.save(exif_stream)\n        raw = b'Exif\\x00\\x00' + exif_stream.getvalue()\n        return raw\n\n\ndef print_json(data):\n    try:\n        for k, v in data.items():\n            print(f'json: k={k}', json.loads(v))\n    except Exception:\n        pass\n\n\ndef read_exif(filename: str):\n    if filename.lower().endswith('.heic'):\n        from pi_heif import register_heif_opener\n        register_heif_opener()\n    try:\n        image = Image.open(filename)\n        exif = Exif(image)\n        print('image:', filename, 'format:', image)\n        data = vars(exif.exif)['_data']\n        print('exif:', data)\n        print('info:', exif.parse())\n        print_json(data)\n    except Exception as e:\n        print('metadata error reading:', filename, e)\n\n\nif __name__ == '__main__':\n    sys.argv.pop(0)\n    if len(sys.argv) == 0:\n        print('metadata:', 'no files specified')\n    for fn in sys.argv:\n        if os.path.isfile(fn):\n            read_exif(fn)\n        elif os.path.isdir(fn):\n            for root, _dirs, files in os.walk(fn):\n                for file in files:\n                    read_exif(os.path.join(root, file))\n        else:\n            print('file not found: ', fn)\n"
  },
  {
    "path": "cli/image-grid.py",
    "content": "#!/usr/bin/env python\n\"\"\"\nCreate image grid\n\"\"\"\n\nimport os\nimport argparse\nimport math\nimport logging\nfrom pathlib import Path\nimport filetype\nfrom PIL import Image, ImageDraw, ImageFont\nfrom util import log\n\n\nparams = None\n\n\ndef wrap(text: str, font: ImageFont.ImageFont, length: int):\n    lines = ['']\n    for word in text.split():\n        line = f'{lines[-1]} {word}'.strip()\n        if font.getlength(line) <= length:\n            lines[-1] = line\n        else:\n            lines.append(word)\n    return '\\n'.join(lines)\n\n\ndef grid(images, labels = None, width = 0, height = 0, border = 0, square = False, horizontal = False, vertical = False): # pylint: disable=redefined-outer-name\n    if horizontal:\n        rows = 1\n    elif vertical:\n        rows = len(images)\n    elif square:\n        rows = round(math.sqrt(len(images)))\n    else:\n        rows = math.floor(math.sqrt(len(images)))\n    cols = math.ceil(len(images) / rows)\n    size = [0, 0]\n    if width == 0:\n        w = max([i.size[0] for i in images])\n        size[0] = cols * w + cols * border\n    else:\n        size[0] = width\n        w = round(width / cols)\n    if height == 0:\n        h = max([i.size[1] for i in images])\n        size[1] = rows * h + rows * border\n    else:\n        size[1] = height\n        h = round(height / rows)\n    size = tuple(size)\n    image = Image.new('RGB', size = size, color = 'black') # pylint: disable=redefined-outer-name\n    font_size = round(w / 40) if params.font == 0 else params.font\n    font = ImageFont.truetype('DejaVuSansMono', font_size)\n    for i, img in enumerate(images): # pylint: disable=redefined-outer-name\n        x = (i % cols * w) + (i % cols * border)\n        y = (i // cols * h) + (i // cols * border)\n        img.thumbnail((w, h), Image.Resampling.HAMMING)\n        image.paste(img, box=(x + int(border / 2), y + int(border / 2)))\n        if labels is not None and len(images) == len(labels):\n            ctx = ImageDraw.Draw(image)\n            label = wrap(labels[i], font, w)\n            ctx.text((x + 1 + round(w / 200), y + 1 + round(w / 200)), label, font = font, fill = (0, 0, 0))\n            ctx.text((x, y), label, font = font, fill = (255, 255, 255))\n    log.info({ 'grid': { 'images': len(images), 'rows': rows, 'cols': cols, 'cell': [w, h] } })\n    return image\n\n\nif __name__ == '__main__':\n    log.info({ 'create grid' })\n    parser = argparse.ArgumentParser(description='image grid utility')\n    parser.add_argument(\"--square\", default = False, action='store_true', help = \"create square grid\")\n    parser.add_argument(\"--horizontal\", default = False, action='store_true', help = \"create horizontal grid\")\n    parser.add_argument(\"--vertical\", default = False, action='store_true', help = \"create vertical grid\")\n    parser.add_argument(\"--width\", type = int, default = 0, required = False, help = \"fixed grid width\")\n    parser.add_argument(\"--height\", type = int, default = 0, required = False, help = \"fixed grid height\")\n    parser.add_argument(\"--border\", type = int, default = 0, required = False, help = \"image border\")\n    parser.add_argument(\"--font\", type = int, default = 0, required = False, help = \"font text size\")\n    parser.add_argument('--nolabels', default = False, action='store_true', help = \"do not print image labels\")\n    parser.add_argument('--debug', default = False, action='store_true', help = \"print extra debug information\")\n    parser.add_argument('output', type = str)\n    parser.add_argument('input', type = str, nargs = '*')\n    params = parser.parse_args()\n    output = params.output if params.output.lower().endswith('.jpg') else params.output + '.jpg'\n    if params.debug:\n        log.setLevel(logging.DEBUG)\n        log.debug({ 'debug': True })\n    log.debug({ 'args': params.__dict__ })\n    images = []\n    labels = []\n    for f in params.input:\n        path = Path(f)\n        if path.is_dir():\n            files = [os.path.join(f, file) for file in os.listdir(f) if os.path.isfile(os.path.join(f, file))]\n        elif path.is_file():\n            files = [f]\n        else:\n            log.warning({ 'grid not a valid file/folder', f})\n            continue\n        files.sort()\n        for file in files:\n            if not filetype.is_image(file):\n                continue\n            if file.lower().endswith('.heic'):\n                from pi_heif import register_heif_opener\n                register_heif_opener()\n            log.debug(file)\n            img = Image.open(file)\n            # img.verify()\n            images.append(img)\n            fp = Path(file)\n            if not params.nolabels:\n                labels.append(fp.stem)\n    # log.info({ 'folder': path.parent, 'labels': labels })\n    if len(images) > 0:\n        image = grid(\n            images = images,\n            labels = labels,\n            width = params.width,\n            height = params.height,\n            border = params.border,\n            square = params.square,\n            horizontal = params.horizontal,\n            vertical = params.vertical)\n        image.save(output, 'JPEG', optimize = True, quality = 60)\n        log.info({ 'grid': { 'file': output, 'size': list(image.size) } })\n    else:\n        log.info({ 'grid': 'nothing to do' })\n"
  },
  {
    "path": "cli/image-palette.py",
    "content": "#!/usr/bin/env python\n# based on <https://towardsdatascience.com/image-color-extraction-with-python-in-4-steps-8d9370d9216e>\n\nimport os\nimport io\nimport pathlib\nimport argparse\nimport importlib\nimport pandas as pd\nimport numpy as np\nimport extcolors\nimport filetype\nimport matplotlib.pyplot as plt\nimport matplotlib.patches as patches\nfrom matplotlib.offsetbox import OffsetImage, AnnotationBbox\nfrom colormap import rgb2hex\nfrom PIL import Image\nfrom util import log\ngrid = importlib.import_module('image-grid').grid\n\n\ndef color_to_df(param):\n    colors_pre_list = str(param).replace('([(','').split(', (')[0:-1]\n    df_rgb = [i.split('), ')[0] + ')' for i in colors_pre_list]\n    df_percent = [i.split('), ')[1].replace(')','') for i in colors_pre_list]\n    #convert RGB to HEX code\n    df_color_up = [rgb2hex(int(i.split(\", \")[0].replace(\"(\",\"\")),\n                           int(i.split(\", \")[1]),\n                           int(i.split(\", \")[2].replace(\")\",\"\"))) for i in df_rgb]\n    df = pd.DataFrame(zip(df_color_up, df_percent), columns = ['c_code','occurence'])\n    return df\n\n\ndef palette(img, params, output):\n    size = 1024\n    img.thumbnail((size, size), Image.Resampling.HAMMING)\n\n    #crate dataframe\n    colors_x = extcolors.extract_from_image(img, tolerance = params.color, limit = 13)\n    df_color = color_to_df(colors_x)\n\n    #annotate text\n    list_color = list(df_color['c_code'])\n    list_precent = [int(i) for i in list(df_color['occurence'])]\n    text_c = [c + ' ' + str(round(p * 100 / sum(list_precent), 1)) +'%' for c, p in zip(list_color, list_precent)]\n    fig, (ax1, ax2) = plt.subplots(1, 2, figsize=(120,60), dpi=10)\n    fig.set_facecolor('black')\n\n    #donut plot\n    wedges, _text = ax1.pie(list_precent, labels= text_c, labeldistance= 1.05, colors = list_color, textprops={'fontsize': 100, 'color':'white'})\n    plt.setp(wedges, width=0.3)\n\n    #add image in the center of donut plot\n    data = np.asarray(img)\n    imagebox = OffsetImage(data, zoom=2.5)\n    ab = AnnotationBbox(imagebox, (0, 0))\n    ax1.add_artist(ab)\n\n    #color palette\n    x_posi, y_posi, y_posi2 = 160, -260, -260\n    for c in list_color:\n        if list_color.index(c) <= 5:\n            y_posi += 240\n            rect = patches.Rectangle((x_posi, y_posi), 540, 230, facecolor = c)\n            ax2.add_patch(rect)\n            ax2.text(x = x_posi + 100, y = y_posi + 140, s = c, fontdict={'fontsize': 140}, color = 'white')\n        else:\n            y_posi2 += 240\n            rect = patches.Rectangle((x_posi + 600, y_posi2), 540, 230, facecolor = c)\n            ax2.add_artist(rect)\n            ax2.text(x = x_posi + 700, y = y_posi2 + 140, s = c, fontdict={'fontsize': 140}, color = 'white')\n\n    # add background to force layout\n    fig.set_facecolor('black')\n    ax2.axis('off')\n    tmp = Image.new('RGB', (2000, 1400), (0, 0, 0))\n    plt.imshow(tmp)\n    plt.tight_layout(rect = (-0.08, -0.2, 1.18, 1.05))\n\n    # save image\n    if output is not None:\n        buf = io.BytesIO()\n        plt.savefig(buf, format='png')\n        pltimg = Image.open(buf)\n        pltimg = pltimg.convert('RGB')\n        pltimg.save(output)\n        buf.close()\n        log.info({ 'palette created': output })\n\n    plt.close()\n\n\nif __name__ == '__main__':\n    parser = argparse.ArgumentParser(description = 'extract image color palette')\n    parser.add_argument('--color', type=int, default=20, help=\"color tolerance threshdold\")\n    parser.add_argument('--output', type=str, required=False, default='', help='folder to store images')\n    parser.add_argument('--suffix', type=str, required=False, default='pallete', help='add suffix to image name')\n    parser.add_argument('--grid', default=False, action='store_true', help = \"create grid of images before processing\")\n    parser.add_argument('input', type=str, nargs='*')\n    args = parser.parse_args()\n    log.info({ 'palette args': vars(args) })\n    if args.output != '':\n        pathlib.Path(args.output).mkdir(parents = True, exist_ok = True)\n    if not args.grid:\n        for arg in args.input:\n            if os.path.isfile(arg) and filetype.is_image(arg):\n                image = Image.open(arg)\n                fn = os.path.join(args.output, pathlib.Path(arg).stem + '-' + args.suffix + '.jpg')\n                palette(image, args, fn)\n            elif os.path.isdir(arg):\n                for root, _dirs, files in os.walk(arg):\n                    for f in files:\n                        if filetype.is_image(os.path.join(root, f)):\n                            image = Image.open(os.path.join(root, f))\n                            fn = os.path.join(args.output, pathlib.Path(f).stem + '-' + args.suffix + '.jpg')\n                            palette(image, args, fn)\n    else:\n        images = []\n        for arg in args.input:\n            if os.path.isfile(arg) and filetype.is_image(arg):\n                images.append(Image.open(arg))\n            elif os.path.isdir(arg):\n                for root, _dirs, files in os.walk(arg):\n                    for f in files:\n                        if filetype.is_image(os.path.join(root, f)):\n                            images.append(Image.open(os.path.join(root, f)))\n        image = grid(images)\n        fn = os.path.join(args.output, args.suffix + '.jpg')\n        palette(image, args, fn)\n"
  },
  {
    "path": "cli/image-search.py",
    "content": "#!/usr/bin/env python\n\nfrom typing import Union\nimport os\nimport re\nimport logging\nfrom tqdm.rich import tqdm\nimport torch\nimport PIL\nimport faiss\nimport numpy as np\nimport pandas as pd\nimport transformers\n\n\nclass ImageDB:\n    # TODO index: quantize and train faiss index\n    # TODO index: clip batch processing\n    def __init__(self,\n                 name:str='db',\n                 fmt:str='json',\n                 cache_dir:str=None,\n                 dtype:torch.dtype=torch.float16,\n                 device:torch.device=torch.device('cpu'),\n                 model:str='openai/clip-vit-large-patch14', # 'facebook/dinov2-small'\n                 debug:bool=False,\n                 pbar:bool=True,\n                ):\n        self.format = fmt\n        self.name = name\n        self.cache_dir = cache_dir\n        self.processor: transformers.AutoImageProcessor = None\n        self.model: transformers.AutoModel = None\n        self.tokenizer = transformers.AutoTokenizer = None\n        self.device: torch.device = device\n        self.dtype: torch.dtype = dtype\n        self.dimension = 768 if 'clip' in model else 384\n        self.debug = debug\n        self.pbar = pbar\n        self.repo = model\n        self.df = pd.DataFrame([], columns=['filename', 'timestamp', 'metadata']) # image/metadata database\n        self.index = faiss.IndexFlatL2(self.dimension) # embed database\n        self.log = logging.getLogger(__name__)\n        self.err = logging.getLogger(__name__).error\n        self.log = logging.getLogger(__name__).info if self.debug else logging.getLogger(__name__).debug\n        # self.init()\n        # self.load()\n\n    def __str__(self):\n        return f'db: name=\"{self.name}\" format={self.format} device={self.device} dtype={self.dtype} dimension={self.dimension} model=\"{self.repo}\" records={len(self.df)} index={self.index.ntotal}'\n\n    def init(self): # initialize models\n        if self.processor is None or self.model is None:\n            if 'clip' in self.repo:\n                self.processor = transformers.CLIPImageProcessor.from_pretrained(self.repo, cache_dir=self.cache_dir)\n                self.tokenizer = transformers.CLIPTokenizer.from_pretrained(self.repo, cache_dir=self.cache_dir)\n                self.model = transformers.CLIPModel.from_pretrained(self.repo, cache_dir=self.cache_dir).to(device=self.device, dtype=self.dtype)\n            elif 'dino' in self.repo:\n                self.processor = transformers.AutoImageProcessor.from_pretrained(self.repo, cache_dir=self.cache_dir)\n                self.model = transformers.AutoModel.from_pretrained(self.repo, cache_dir=self.cache_dir).to(device=self.device, dtype=self.dtype)\n            else:\n                self.err(f'db: model=\"{self.repo}\" unknown')\n            self.log(f'db: load model=\"{self.repo}\" cache=\"{self.cache_dir}\" device={self.device} dtype={self.dtype}')\n\n    def load(self): # load db to disk\n        if self.format == 'json' and os.path.exists(f'{self.name}.json'):\n            self.df = pd.read_json(f'{self.name}.json')\n        elif self.format == 'csv' and os.path.exists(f'{self.name}.csv'):\n            self.df = pd.read_csv(f'{self.name}.csv')\n        elif self.format == 'pickle' and os.path.exists(f'{self.name}.pkl'):\n            self.df = pd.read_pickle(f'{self.name}.parquet')\n        if os.path.exists(f'{self.name}.index'):\n            self.index = faiss.read_index(f'{self.name}.index')\n        if self.index.ntotal != len(self.df):\n            self.err(f'db: index={self.index.ntotal} data={len(self.df)} mismatch')\n            self.index = faiss.IndexFlatL2(self.dimension)\n            self.df = pd.DataFrame([], columns=['filename', 'timestamp', 'metadata'])\n        self.log(f'db: load data={len(self.df)} name={self.name} format={self.format} name={self.name}')\n\n    def save(self): # save db to disk\n        if self.format == 'json':\n            self.df.to_json(f'{self.name}.json')\n        elif self.format == 'csv':\n            self.df.to_csv(f'{self.name}.csv')\n        elif self.format == 'pickle':\n            self.df.to_pickle(f'{self.name}.pkl')\n        faiss.write_index(self.index, f'{self.name}.index')\n        self.log(f'db: save data={len(self.df)} name={self.name} format={self.format} name={self.name}')\n\n    def normalize(self, embed) -> np.ndarray: # normalize embed before using it\n        embed = embed.detach().float().cpu().numpy()\n        faiss.normalize_L2(embed)\n        return embed\n\n    def embedding(self, query: Union[PIL.Image.Image | str]) -> np.ndarray: # calculate embed for prompt or image\n        if self.processor is None or self.model is None:\n            self.err('db: model not loaded')\n        if isinstance(query, str) and os.path.exists(query):\n            query = PIL.Image.open(query).convert('RGB')\n        self.model = self.model.to(self.device)\n        with torch.no_grad():\n            if 'clip' in self.repo:\n                if isinstance(query, str):\n                    processed = self.tokenizer(text=query, padding=True, return_tensors=\"pt\").to(device=self.device)\n                    results = self.model.get_text_features(**processed)\n                else:\n                    processed = self.processor(images=query, return_tensors=\"pt\").to(device=self.device, dtype=self.dtype)\n                    results = self.model.get_image_features(**processed)\n            elif 'dino' in self.repo:\n                processed = self.processor(images=query, return_tensors=\"pt\").to(device=self.device, dtype=self.dtype)\n                results = self.model(**processed)\n                results = results.last_hidden_state.mean(dim=1)\n            else:\n                self.err(f'db: model=\"{self.repo}\" unknown')\n                return None\n        return self.normalize(results)\n\n    def add(self, embed, filename=None, metadata=None): # add embed to db\n        rec = pd.DataFrame([{'filename': filename, 'timestamp': pd.Timestamp.now(), 'metadata': metadata}])\n        if len(self.df) > 0:\n            self.df = pd.concat([self.df, rec], ignore_index=True)\n        else:\n            self.df = rec\n        self.index.add(embed)\n\n    def search(self, filename: str = None, metadata: str = None, embed: np.ndarray = None, k=10, d=1.0): # search by filename/metadata/prompt-embed/image-embed\n        def dct(record: pd.DataFrame, mode: str, distance: float = None):\n            if distance is not None:\n                return {'type': mode, 'filename': record[1]['filename'], 'metadata': record[1]['metadata'], 'distance': round(distance, 2)}\n            else:\n                return {'type': mode, 'filename': record[1]['filename'], 'metadata': record[1]['metadata']}\n\n        if self.index.ntotal == 0:\n            return\n        self.log(f'db: search k={k} d={d}')\n        if embed is not None:\n            distances, indexes = self.index.search(embed, k)\n            records = self.df.iloc[indexes[0]]\n            for record, distance in zip(records.iterrows(), distances[0]):\n                if d <= 0 or distance <= d:\n                    yield dct(record, distance=distance, mode='embed')\n        if filename is not None:\n            records = self.df[self.df['filename'].str.contains(filename, na=False, case=False)]\n            for record in records.iterrows():\n                yield dct(record, mode='filename')\n        if metadata is not None:\n            records = self.df[self.df['metadata'].str.contains(filename, na=False, case=False)]\n            for record in records.iterrows():\n                yield dct(record, mode='metadata')\n\n    def decode(self, s: bytes): # decode byte-encoded exif metadata\n        remove_prefix = lambda text, prefix: text[len(prefix):] if text.startswith(prefix) else text # pylint: disable=unnecessary-lambda-assignment\n        for encoding in ['utf-8', 'utf-16', 'ascii', 'latin_1', 'cp1252', 'cp437']: # try different encodings\n            try:\n                s = remove_prefix(s, b'UNICODE')\n                s = remove_prefix(s, b'ASCII')\n                s = remove_prefix(s, b'\\x00')\n                val = s.decode(encoding, errors=\"strict\")\n                val = re.sub(r'[\\x00-\\x09\\n\\s\\s+]', '', val).strip() # remove remaining special characters, new line breaks, and double empty spaces\n                if len(val) == 0: # remove empty strings\n                    val = None\n                return val\n            except Exception:\n                pass\n        return None\n\n    def metadata(self, image: PIL.Image.Image): # get exif metadata from image\n        exif = image._getexif() # pylint: disable=protected-access\n        if exif is None:\n            return ''\n        for k, v in exif.items():\n            if k == 37510: # comment\n                return self.decode(v)\n        return ''\n\n    def image(self, filename: str, image=None): # add file/image to db\n        try:\n            if image is None:\n                image = PIL.Image.open(filename)\n                image.load()\n            embed = self.embedding(image.convert('RGB'))\n            metadata = self.metadata(image)\n            image.close()\n            self.add(embed, filename=filename, metadata=metadata)\n        except Exception as _e:\n            # self.err(f'db: {str(_e)}')\n            pass\n\n    def folder(self, folder: str): # add all files from folder to db\n        files = []\n        for root, _subdir, _files in os.walk(folder):\n            for f in _files:\n                files.append(os.path.join(root, f))\n        if self.pbar:\n            for f in tqdm(files):\n                self.image(filename=f)\n        else:\n            for f in files:\n                self.image(filename=f)\n\n    def offload(self): # offload model to cpu\n        if self.model is not None:\n            self.model = self.model.to('cpu')\n\n\nif __name__ == '__main__':\n    import time\n    import argparse\n    logging.basicConfig(level=logging.INFO)\n    parser = argparse.ArgumentParser(description = 'image-search')\n    group = parser.add_mutually_exclusive_group(required=True)\n    group.add_argument('--search', action='store_true', help='run search')\n    group.add_argument('--index', action='store_true', help='run indexing')\n    parser.add_argument('--db', default='db', help='database name')\n    parser.add_argument('--model', default='openai/clip-vit-large-patch14', help='huggingface model')\n    parser.add_argument('--cache', default='/mnt/models/huggingface', help='cache folder')\n    parser.add_argument('input', nargs='*', default=os.getcwd())\n    args = parser.parse_args()\n\n    db = ImageDB(\n        name=args.db,\n        model=args.model, # 'facebook/dinov2-small'\n        cache_dir=args.cache,\n        dtype=torch.bfloat16,\n        device=torch.device('cuda'),\n        debug=True,\n        pbar=True,\n    )\n    db.init()\n    db.load()\n    print(db)\n\n    if args.index:\n        t0 = time.time()\n        if len(args.input) > 0:\n            for fn in args.input:\n                if os.path.isfile(fn):\n                    db.image(filename=fn)\n                elif os.path.isdir(fn):\n                    db.folder(folder=fn)\n        t1 = time.time()\n        print('index', t1-t0)\n        db.save()\n        db.offload()\n\n    if args.search:\n        for ref in args.input:\n            emb = db.embedding(ref)\n            res = db.search(filename=ref, metadata=ref, embed=emb, k=10, d=0)\n            for r in res:\n                print(ref, r)\n"
  },
  {
    "path": "cli/image-watermark.py",
    "content": "#!/usr/bin/env python\nimport os\nimport io\nimport pathlib\nimport argparse\nimport filetype\nimport numpy as np\nfrom imwatermark import WatermarkEncoder, WatermarkDecoder\nfrom PIL import Image\nfrom PIL.ExifTags import TAGS\nfrom PIL.TiffImagePlugin import ImageFileDirectory_v2\nfrom util import log, Map\nimport piexif\nimport piexif.helper\n\n\noptions = Map({ 'method': 'dwtDctSvd', 'type': 'bytes' })\n\n\ndef get_exif(image):\n    # using piexif\n    res1 = {}\n    try:\n        exif = piexif.load(image.info[\"exif\"])\n        exif = exif.get(\"Exif\", {})\n        for k, v in exif.items():\n            key = list(vars(piexif.ExifIFD).keys())[list(vars(piexif.ExifIFD).values()).index(k)]\n            res1[key] = piexif.helper.UserComment.load(v)\n    except Exception:\n        pass\n    # using pillow\n    res2 = {}\n    try:\n        res2 = { TAGS[k]: v for k, v in image.getexif().items() if k in TAGS }\n    except Exception:\n        pass\n    return {**res1, **res2}\n\n\ndef set_exif(d: dict):\n    ifd = ImageFileDirectory_v2()\n    _TAGS = {v: k for k, v in TAGS.items()} # enumerate possible exif tags\n    for k, v in d.items():\n        ifd[_TAGS[k]] = v\n    exif_stream = io.BytesIO()\n    ifd.save(exif_stream)\n    encoded = b'Exif\\x00\\x00' + exif_stream.getvalue()\n    return encoded\n\n\ndef get_watermark(image, params):\n    data = np.asarray(image)\n    decoder = WatermarkDecoder(options.type, params.length)\n    decoded = decoder.decode(data, options.method)\n    wm = decoded.decode(encoding='ascii', errors='ignore')\n    return wm\n\n\ndef set_watermark(image, params):\n    data = np.asarray(image)\n    encoder = WatermarkEncoder()\n    length = params.length // 8\n    text = f\"{params.wm:<{length}}\"[:length]\n    bytearr = text.encode(encoding='ascii', errors='ignore')\n    encoder.set_watermark(options.type, bytearr)\n    encoded = encoder.encode(data, options.method)\n    image = Image.fromarray(encoded)\n    return image\n\n\ndef watermark(params, file):\n    if not os.path.exists(file):\n        log.error({ 'watermark': 'file not found' })\n        return\n    if not filetype.is_image(file):\n        log.error({ 'watermark': 'file is not an image' })\n        return\n    image = Image.open(file)\n    if image.width * image.height < 256 * 256:\n        log.error({ 'watermark': 'image too small' })\n        return\n\n    exif = get_exif(image)\n\n    wm = None\n    if params.command == 'read':\n        fn = params.input\n        wm = get_watermark(image, params)\n\n    elif params.command == 'write':\n        metadata = b'' if params.strip else set_exif(exif)\n        if params.output != '':\n            pathlib.Path(params.output).mkdir(parents = True, exist_ok = True)\n        image=set_watermark(image, params)\n        fn = os.path.join(params.output, file)\n        image.save(fn, exif=metadata)\n\n        if params.verify:\n            image = Image.open(fn)\n            data = np.asarray(image)\n            decoder = WatermarkDecoder(options.type, params.length)\n            decoded = decoder.decode(data, options.method)\n            wm = decoded.decode(encoding='ascii', errors='ignore')\n        else:\n            wm = params.wm\n\n    log.info({ 'file': fn })\n    log.info({ 'resolution': f'{image.width}x{image.height}' })\n    log.info({ 'watermark': wm })\n    log.info({ 'exif': None if params.strip else exif })\n\n\nif __name__ == '__main__':\n    parser = argparse.ArgumentParser(description = 'image watermarking')\n    parser.add_argument('command', choices = ['read', 'write'])\n    parser.add_argument('--wm', type=str, required=False, default='sdnext', help='watermark string')\n    parser.add_argument('--strip', default=False, action='store_true', help = \"strip existing exif data\")\n    parser.add_argument('--verify', default=False, action='store_true', help = \"verify watermark during write\")\n    parser.add_argument('--length', type=int, default=32, help=\"watermark length in bits\")\n    parser.add_argument('--output', type=str, required=False, default='', help='folder to store images, default is overwrite in-place')\n    parser.add_argument('input', type=str, nargs='*')\n    args = parser.parse_args()\n    # log.info({ 'watermark args': vars(args), 'options': options })\n    for arg in args.input:\n        if os.path.isfile(arg):\n            watermark(args, arg)\n        elif os.path.isdir(arg):\n            for root, _dirs, files in os.walk(arg):\n                for f in files:\n                    watermark(args, os.path.join(root, f))\n"
  },
  {
    "path": "cli/install-stablefast.py",
    "content": "#!/usr/bin/env python\nimport os\nimport re\nimport sys\n\ntorch_supported = ['211', '212','220','221','222','230']\ncuda_supported = ['cu118', 'cu121']\npython_supported = ['39', '310', '311']\nrepo_url = 'https://github.com/chengzeyi/stable-fast'\napi_url = 'https://api.github.com/repos/chengzeyi/stable-fast/releases/tags/nightly'\npath_url = '/releases/download/nightly'\n\n\ndef install_pip(arg: str):\n    import subprocess\n    cmd = f'\"{sys.executable}\" -m pip install -U {arg}'\n    print(f'Running: {cmd}')\n    result = subprocess.run(cmd, shell=True, check=False, env=os.environ)\n    return result.returncode == 0\n\n\ndef get_nightly():\n    import requests\n    r = requests.get(api_url, timeout=10)\n    if r.status_code != 200:\n        print('Failed to get nightly version')\n        return None\n    json = r.json()\n    assets = json.get('assets', [])\n    if len(assets) == 0:\n        print('Failed to get nightly version')\n        return None\n    asset = assets[0].get('name', '')\n    pattern = r\"-(.+?)\\+\"\n    match = re.search(pattern, asset)\n    if match:\n        ver = match.group(1)\n        print(f'Nightly version: {ver}')\n        return ver\n    else:\n        print('Failed to get nightly version')\n        return None\n\n\ndef install_stable_fast():\n    import torch\n\n    python_ver = f'{sys.version_info.major}{sys.version_info.minor}'\n    if python_ver not in python_supported:\n        raise ValueError(f'StableFast unsupported python: {python_ver} required {python_supported}')\n    if sys.platform == 'linux':\n        bin_url = 'manylinux2014_x86_64.whl'\n    elif sys.platform == 'win32':\n        bin_url = 'win_amd64.whl'\n    else:\n        raise ValueError(f'StableFast unsupported platform: {sys.platform}')\n\n    torch_ver, cuda_ver = torch.__version__.split('+')\n    torch_ver = torch_ver.replace('.', '')\n    sf_ver = get_nightly()\n\n    if torch_ver not in torch_supported:\n        print(f'StableFast unsupported torch: {torch_ver} required {torch_supported}')\n        print('Installing from source...')\n        url = 'git+https://github.com/chengzeyi/stable-fast.git@main#egg=stable-fast'\n    elif cuda_ver not in cuda_supported:\n        print(f'StableFast unsupported CUDA: {cuda_ver} required {cuda_supported}')\n        print('Installing from source...')\n        url = 'git+https://github.com/chengzeyi/stable-fast.git@main#egg=stable-fast'\n    elif sf_ver is None:\n        print('StableFast cannot determine version')\n        print('Installing from source...')\n        url = 'git+https://github.com/chengzeyi/stable-fast.git@main#egg=stable-fast'\n    else:\n        print('Installing wheel...')\n        file_url = f'stable_fast-{sf_ver}+torch{torch_ver}{cuda_ver}-cp{python_ver}-cp{python_ver}-{bin_url}'\n        url = f'{repo_url}/{path_url}/{file_url}'\n\n    ok = install_pip(url)\n    if ok:\n        install_pip('triton')\n    if ok:\n        import sfast\n        print(f'StableFast installed: {sfast.__version__}')\n    else:\n        print('StableFast install failed')\n\nif __name__ == '__main__':\n    install_stable_fast()\n"
  },
  {
    "path": "cli/lcm-convert.py",
    "content": "#!/usr/bin/env python\nimport os\nimport argparse\nimport torch\nfrom diffusers import StableDiffusionPipeline, StableDiffusionXLPipeline, AutoPipelineForText2Image, LCMScheduler\n\nparser = argparse.ArgumentParser(\"lcm_convert\")\nparser.add_argument(\"--name\", help=\"Name of the new LCM model\", type=str)\nparser.add_argument(\"--model\", help=\"A model to convert\", type=str)\nparser.add_argument(\"--lora-scale\", default=1.0, help=\"Strenght of the LCM\", type=float)\nparser.add_argument(\"--huggingface\", action=\"store_true\", help=\"Use Hugging Face models instead of safetensors models\")\nparser.add_argument(\"--upload\", action=\"store_true\", help=\"Upload the new LCM model to Hugging Face\")\nparser.add_argument(\"--no-half\", action=\"store_true\", help=\"Convert the new LCM model to FP32\")\nparser.add_argument(\"--no-save\", action=\"store_true\", help=\"Don't save the new LCM model to local disk\")\nparser.add_argument(\"--sdxl\", action=\"store_true\", help=\"Use SDXL models\")\nparser.add_argument(\"--ssd-1b\", action=\"store_true\", help=\"Use SSD-1B models\")\n\nargs = parser.parse_args()\n\nif args.huggingface:\n    pipeline = AutoPipelineForText2Image.from_pretrained(args.model, torch_dtype=torch.float16, variant=\"fp16\")\nelse:\n    if args.sdxl or args.ssd_1b:\n        pipeline = StableDiffusionXLPipeline.from_single_file(args.model)\n    else:\n        pipeline = StableDiffusionPipeline.from_single_file(args.model)\n\npipeline.scheduler = LCMScheduler.from_config(pipeline.scheduler.config)\nif args.sdxl:\n    pipeline.load_lora_weights(\"latent-consistency/lcm-lora-sdxl\")\nelif args.ssd_1b:\n    pipeline.load_lora_weights(\"latent-consistency/lcm-lora-ssd-1b\")\nelse:\n    pipeline.load_lora_weights(\"latent-consistency/lcm-lora-sdv1-5\")\npipeline.fuse_lora(lora_scale=args.lora_scale)\n\n#components = pipeline.components\n#pipeline = LatentConsistencyModelPipeline(**components)\n\nif args.no_half:\n    pipeline = pipeline.to(dtype=torch.float32)\nelse:\n    pipeline = pipeline.to(dtype=torch.float16)\nprint(pipeline)\n\nif not args.no_save:\n    os.makedirs(f\"models--local--{args.name}/snapshots\")\n    if args.no_half:\n        pipeline.save_pretrained(f\"models--local--{args.name}/snapshots/{args.name}\")\n    else:\n        pipeline.save_pretrained(f\"models--local--{args.name}/snapshots/{args.name}\", variant=\"fp16\")\nif args.upload:\n    if args.no_half:\n        pipeline.push_to_hub(args.name)\n    else:\n        pipeline.push_to_hub(args.name, variant=\"fp16\")\n"
  },
  {
    "path": "cli/load-unet.py",
    "content": "# test for manually loading unet state_dict\n\nimport torch\nimport diffusers\n\n\nclass StateDictStats():\n    cls: str = None\n    device: torch.device = None\n    params: int = 0\n    weights: dict = {}\n    dtypes: dict = {}\n    config: dict = None\n\n    def __repr__(self):\n        return f'cls={self.cls} params={self.params} weights={self.weights} device={self.device} dtypes={self.dtypes} config={self.config is not None}'\n\n\ndef set_module_tensor(\n    module: torch.nn.Module,\n    name: str,\n    value: torch.Tensor,\n    stats: StateDictStats,\n    device: torch.device = None,\n    dtype: torch.dtype = None,\n):\n    if \".\" in name:\n        splits = name.split(\".\")\n        for split in splits[:-1]:\n            module = getattr(module, split)\n        name = splits[-1]\n    old_value = getattr(module, name)\n    with torch.no_grad():\n        if value.dtype not in stats.dtypes:\n            stats.dtypes[value.dtype] = 0\n        stats.dtypes[value.dtype] += 1\n        if name in module._buffers: # pylint: disable=protected-access\n            module._buffers[name] = value.to(device=device, dtype=dtype) # pylint: disable=protected-access\n            if 'buffers' not in stats.weights:\n                stats.weights['buffers'] = 0\n            stats.weights['buffers'] += 1\n        elif value is not None:\n            param_cls = type(module._parameters[name]) # pylint: disable=protected-access\n            module._parameters[name] = param_cls(value, requires_grad=old_value.requires_grad).to(device, dtype=dtype) # pylint: disable=protected-access\n            if 'parameters' not in stats.weights:\n                stats.weights['parameters'] = 0\n            stats.weights['parameters'] += 1\n\n\ndef load_unet(config_file: str, state_dict: dict, device: torch.device = None, dtype: torch.dtype = None):\n    # same can be done for other modules or even for entire model by loading model config and then walking through its modules\n    from accelerate import init_empty_weights\n    with init_empty_weights():\n        stats = StateDictStats()\n        stats.device = device\n        stats.config = diffusers.UNet2DConditionModel.load_config(config_file)\n        unet = diffusers.UNet2DConditionModel.from_config(stats.config)\n        stats.cls = unet.__class__.__name__\n        expected_state_dict_keys = list(unet.state_dict().keys())\n        stats.weights['expected'] = len(expected_state_dict_keys)\n    for param_name, param in state_dict.items():\n        if param_name not in expected_state_dict_keys:\n            if 'unknown' not in stats.weights:\n                stats.weights['unknown'] = 0\n            stats.weights['unknown'] += 1\n            continue\n        set_module_tensor(unet, name=param_name, value=param, device=device, dtype=dtype, stats=stats)\n        state_dict[param_name] = None # unload as we initialize the model so we dont consume double the memory\n    stats.params = sum(p.numel() for p in unet.parameters(recurse=True))\n    return unet, stats\n\n\ndef load_safetensors(fn: str):\n    import safetensors.torch\n    state_dict = safetensors.torch.load_file(fn, device='cpu') # state dict should always be loaded to cpu\n    return state_dict\n\n\nif __name__ == \"__main__\":\n    # need pipe already present to load unet state_dict into or we could load unet first and then manually create pipe with params\n    pipe = diffusers.StableDiffusionXLPipeline.from_single_file('/mnt/models/stable-diffusion/sdxl/TempestV0.1-Artistic.safetensors', cache_dir='/mnt/models/huggingface')\n    # this could be kept in memory so we dont have to reload it\n    dct = load_safetensors('/mnt/models/UNET/dpo-sdxl-text2image.safetensors')\n    pipe.unet, s = load_unet(\n        config_file = 'configs/sdxl/unet/config.json', # can also point to online hf model with subfolder\n        state_dict = dct,\n        device = torch.device('cpu'), # can leave out to use default device\n        dtype = torch.bfloat16, # can leave out to use default dtype, especially for mixed precision modules\n    )\n    from rich import print as rprint\n    rprint(f'Stats: {s}')\n"
  },
  {
    "path": "cli/locale-sanitize-override.py",
    "content": "#!/usr/bin/env python\n\n# Remove the entries that no longer exist in locale from override.\n\nimport sys\nimport json\nfrom rich import print # pylint: disable=redefined-builtin\n\nif __name__ == \"__main__\":\n    sys.argv.pop(0)\n    if len(sys.argv) == 0:\n        print('Invalid parameters.')\n        sys.exit(1)\n    filename = sys.argv[0]\n    labels = []\n    override = None\n    try:\n        with open('html/locale_en.json', 'r', encoding=\"utf-8\") as f:\n            locale = json.load(f)\n        for v in locale.values():\n            for item in v:\n                labels.append(item['label'])\n        with open(filename, 'r', encoding=\"utf-8\") as f:\n            override = json.load(f)\n    except Exception:\n        print('Invalid file format.')\n        sys.exit(1)\n    with open(filename, 'w', encoding=\"utf-8\") as f:\n        json.dump([item for item in override if item['label'] in labels], f, ensure_ascii=False)\n"
  },
  {
    "path": "cli/localize.js",
    "content": "#!/usr/bin/env node\n// script used to localize sdnext ui and hints to multiple languages using google gemini ai\n\nconst fs = require('node:fs');\n\nconst { GoogleGenerativeAI } = require('@google/generative-ai');\n\nconst api_key = process.env.GOOGLE_AI_API_KEY;\nconst model = 'gemini-2.5-flash';\nconst prompt = `Translate attached JSON from English to {language} using following rules: fields id, label and reload should be preserved from original, field localized should be a translated version of field label and field hint should be translated in-place.\nif field is less than 3 characters, do not translate it and keep it as is.\nEvery JSON entry should have id, label, localized, reload and hint fields.\nOutput should be pure JSON without any additional text. To better match translation, context of the text is related to Stable Diffusion and topic of Generative AI.`;\nconst languages = {\n  hr: 'Croatian',\n  de: 'German',\n  es: 'Spanish',\n  fr: 'French',\n  it: 'Italian',\n  pt: 'Portuguese',\n  zh: 'Chinese',\n  ja: 'Japanese',\n  ko: 'Korean',\n  ru: 'Russian',\n};\nconst chunkLines = 100;\n\nasync function localize() {\n  if (!api_key || api_key.length < 10) {\n    console.error('localize: set GOOGLE_AI_API_KEY env variable with your API key');\n    process.exit();\n  }\n  const genAI = new GoogleGenerativeAI(api_key);\n  const instance = genAI.getGenerativeModel({ model });\n  const raw = fs.readFileSync('html/locale_en.json');\n  const json = JSON.parse(raw);\n  for (const locale of Object.keys(languages)) {\n    const lang = languages[locale];\n    const target = prompt.replace('{language}', lang).trim();\n    const output = {};\n    const fn = `html/locale_${locale}.json`;\n    for (const section of Object.keys(json)) {\n      const data = json[section];\n      output[section] = [];\n      for (let i = 0; i < data.length; i += chunkLines) {\n        let markdown;\n        try {\n          const chunk = data.slice(i, i + chunkLines);\n          const result = await instance.generateContent([target, JSON.stringify(chunk)]);\n          markdown = result.response.text();\n          const text = markdown.replaceAll('```', '').replace(/^.*\\n/, '');\n          const parsed = JSON.parse(text);\n          output[section].push(...parsed);\n          console.log(`localize: locale=${locale} lang=${lang} section=${section} chunk=${chunk.length} output=${output[section].length} fn=${fn}`);\n        } catch (err) {\n          console.error('localize:', err);\n          console.error('localize input:', { target, section, i });\n          console.error('localize output:', { markdown });\n        }\n      }\n      const txt = JSON.stringify(output, null, 2);\n      fs.writeFileSync(fn, txt);\n    }\n  }\n}\n\nlocalize();\n"
  },
  {
    "path": "cli/model-keys.py",
    "content": "#!/usr/bin/env python\nimport os\nimport sys\nfrom rich import print as pprint\n\n\ndef has(obj, attr, *args):\n    import functools\n    if not isinstance(obj, dict):\n        return False\n    def _getattr(obj, attr):\n        return obj.get(attr, args) if isinstance(obj, dict) else False\n    return functools.reduce(_getattr, [obj] + attr.split('.'))\n\n\ndef remove_entries_after_depth(d, depth, current_depth=0):\n    try:\n        if current_depth >= depth:\n            return None\n        if isinstance(d, dict):\n            return {k: remove_entries_after_depth(v, depth, current_depth + 1) for k, v in d.items() if remove_entries_after_depth(v, depth, current_depth + 1) is not None}\n    except Exception:\n        pass\n    return d\n\n\ndef list_to_dict(flat_list):\n    result_dict = {}\n    try:\n        for item in flat_list:\n            keys = item.split('.')\n            d = result_dict\n            for key in keys[:-1]:\n                d = d.setdefault(key, {})\n            d[keys[-1]] = None\n    except Exception:\n        pass\n    return result_dict\n\n\ndef list_compact(flat_list):\n    result_list = []\n    for item in flat_list:\n        keys = item.split('.')\n        keys = '.'.join(keys[:2])\n        if keys not in result_list:\n            result_list.append(keys)\n    return result_list\n\n\ndef guess_dct(dct: dict):\n    # if has(dct, 'model.diffusion_model.input_blocks') and has(dct, 'model.diffusion_model.label_emb'):\n    #    return 'sdxl'\n    if has(dct, 'model.diffusion_model.input_blocks') and len(list(has(dct, 'model.diffusion_model.input_blocks'))) == 12:\n        return 'sd15'\n    if has(dct, 'model.diffusion_model.input_blocks') and len(list(has(dct, 'model.diffusion_model.input_blocks'))) == 9:\n        return 'sdxl'\n    if has(dct, 'model.diffusion_model.joint_blocks') and len(list(has(dct, 'model.diffusion_model.joint_blocks'))) == 24:\n        return 'sd35-medium'\n    if has(dct, 'model.diffusion_model.joint_blocks') and len(list(has(dct, 'model.diffusion_model.joint_blocks'))) == 38:\n        return 'sd35-large'\n    if has(dct, 'model.diffusion_model.double_blocks') and len(list(has(dct, 'model.diffusion_model.double_blocks'))) == 19:\n        if has(dct, 'model.diffusion_model.distilled_guidance_layer'):\n            return 'chroma'\n        return 'flux-dev'\n    return None\n\n\ndef read_keys(fn):\n    if not fn.lower().endswith(\".safetensors\"):\n        return\n    from safetensors.torch import safe_open\n    keys = []\n    try:\n        with safe_open(fn, framework=\"pt\", device=\"cpu\") as f:\n            keys = f.keys()\n    except Exception as e:\n        pprint(e)\n    dct = list_to_dict(keys)\n    lst = list_compact(keys)\n    pprint(f'file: {fn}')\n    pprint(lst)\n    pprint(remove_entries_after_depth(dct, 3))\n    pprint(remove_entries_after_depth(dct, 6))\n    guess = guess_dct(dct)\n    pprint(f'guess: {guess}')\n    return keys\n\n\ndef main():\n    if len(sys.argv) == 0:\n        print('metadata:', 'no files specified')\n    for fn in sys.argv:\n        if os.path.isfile(fn):\n            read_keys(fn)\n        elif os.path.isdir(fn):\n            for root, _dirs, files in os.walk(fn):\n                for file in files:\n                    read_keys(os.path.join(root, file))\n\nif __name__ == '__main__':\n    sys.argv.pop(0)\n    main()\n"
  },
  {
    "path": "cli/model-metadata.py",
    "content": "#!/usr/bin/env python\nimport os\nimport sys\nimport json\nfrom rich import print # pylint: disable=redefined-builtin\n\n\ndef read_metadata(fn):\n    res = {}\n    if not fn.lower().endswith(\".safetensors\"):\n        return\n    with open(fn, mode=\"rb\") as f:\n        try:\n            metadata_len = f.read(8)\n            metadata_len = int.from_bytes(metadata_len, \"little\")\n            json_start = f.read(2)\n            if metadata_len <= 2 or json_start not in (b'{\"', b\"{'\"):\n                print(f\"Not a valid safetensors file: {fn}\")\n            json_data = json_start + f.read(metadata_len-2)\n            json_obj = json.loads(json_data)\n            for k, v in json_obj.get(\"__metadata__\", {}).items():\n                res[k] = v\n                if isinstance(v, str) and v[0:1] == '{':\n                    try:\n                        res[k] = json.loads(v)\n                    except Exception:\n                        pass\n            print(f\"{fn}: {json.dumps(res, indent=4)}\")\n        except Exception:\n            print(f\"{fn}: cannot read metadata\")\n\n\ndef main():\n    if len(sys.argv) == 0:\n        print('metadata:', 'no files specified')\n    for fn in sys.argv:\n        if os.path.isfile(fn):\n            read_metadata(fn)\n        elif os.path.isdir(fn):\n            for root, _dirs, files in os.walk(fn):\n                for file in files:\n                    read_metadata(os.path.join(root, file))\n\nif __name__ == '__main__':\n    sys.argv.pop(0)\n    main()\n"
  },
  {
    "path": "cli/nvidia-smi.py",
    "content": "#!/usr/bin/env python\nimport os\nimport json\nimport shutil\nimport subprocess\nimport xmltodict\nfrom rich import print # pylint: disable=redefined-builtin\nfrom util import log, Map\n\n\ndef get_nvidia_smi(output='dict'):\n    smi = shutil.which('nvidia-smi')\n    if smi is None:\n        log.error(\"nvidia-smi not found\")\n        return None\n    result = subprocess.run(f'\"{smi}\" -q -x', shell=True, check=False, env=os.environ, stdout=subprocess.PIPE, stderr=subprocess.PIPE)\n    xml = result.stdout.decode(encoding=\"utf8\", errors=\"ignore\")\n    d = xmltodict.parse(xml)\n    if 'nvidia_smi_log' in d:\n        d = d['nvidia_smi_log']\n    if 'gpu' in d and 'supported_clocks' in d['gpu']:\n        del d['gpu']['supported_clocks']\n    if output == 'dict':\n        return d\n    elif output == 'class' or output == 'map':\n        d = Map(d)\n        return d\n    elif output == 'json':\n        return json.dumps(d, indent=4)\n    return None\n\n\nif __name__ == \"__main__\":\n    res = get_nvidia_smi(output='dict')\n    print(type(res), res)\n"
  },
  {
    "path": "cli/process.py",
    "content": " # pylint: disable=global-statement\nimport os\nimport io\nimport math\nimport base64\nimport numpy as np\nimport mediapipe as mp\nfrom PIL import Image, ImageOps\nfrom pi_heif import register_heif_opener\nfrom skimage.metrics import structural_similarity as ssim\nfrom scipy.stats import beta\n\nimport util\nimport sdapi\nimport process_options as options\n\nface_model = None\nbody_model = None\nsegmentation_model = None\nall_images = []\nall_images_by_type = {}\n\n\nclass Result():\n    def __init__(self, typ: str, fn: str, tag: str = None, requested: list = []):\n        self.type = typ\n        self.input = fn\n        self.output = ''\n        self.basename = ''\n        self.message = ''\n        self.image = None\n        self.caption = ''\n        self.tag = tag\n        self.tags = []\n        self.ops = []\n        self.steps = requested\n\n\ndef detect_blur(image: Image):\n    # based on <https://github.com/karthik9319/Blur-Detection/>\n    bw = ImageOps.grayscale(image)\n    cx, cy = image.size[0] // 2, image.size[1] // 2\n    fft = np.fft.fft2(bw)\n    fftShift = np.fft.fftshift(fft)\n    fftShift[cy - options.process.blur_samplesize: cy + options.process.blur_samplesize, cx - options.process.blur_samplesize: cx + options.process.blur_samplesize] = 0 # pylint: disable=unsupported-assignment-operation\n    fftShift = np.fft.ifftshift(fftShift)\n    recon = np.fft.ifft2(fftShift)\n    magnitude = np.log(np.abs(recon))\n    mean = round(np.mean(magnitude), 2)\n    return mean\n\n\ndef detect_dynamicrange(image: Image):\n    # based on <https://towardsdatascience.com/measuring-enhancing-image-quality-attributes-234b0f250e10>\n    data = np.asarray(image)\n    image = np.float32(data)\n    RGB = [0.299, 0.587, 0.114]\n    height, width = image.shape[:2] # pylint: disable=unsubscriptable-object\n    brightness_image = np.sqrt(image[..., 0] ** 2 * RGB[0] + image[..., 1] ** 2 * RGB[1] + image[..., 2] ** 2 * RGB[2]) # pylint: disable=unsubscriptable-object\n    hist, _ = np.histogram(brightness_image, bins=256, range=(0, 255))\n    img_brightness_pmf = hist / (height * width)\n    dist = beta(2, 2)\n    ys = dist.pdf(np.linspace(0, 1, 256))\n    ref_pmf = ys / np.sum(ys)\n    dot_product = np.dot(ref_pmf, img_brightness_pmf)\n    squared_dist_a = np.sum(ref_pmf ** 2)\n    squared_dist_b = np.sum(img_brightness_pmf ** 2)\n    res = dot_product / math.sqrt(squared_dist_a * squared_dist_b)\n    return round(res, 2)\n\n\ndef detect_simmilar(image: Image):\n    img = image.resize((options.process.similarity_size, options.process.similarity_size))\n    img = ImageOps.grayscale(img)\n    data = np.array(img)\n    similarity = 0\n    for i in all_images:\n        val = ssim(data, i, data_range=255, channel_axis=None, gradient=False, full=False)\n        if val > similarity:\n            similarity = val\n    all_images.append(data)\n    return similarity\n\n\ndef segmentation(res: Result):\n    global segmentation_model\n    if segmentation_model is None:\n        segmentation_model = mp.solutions.selfie_segmentation.SelfieSegmentation(model_selection=options.process.segmentation_model)\n    data = np.array(res.image)\n    results = segmentation_model.process(data)\n    condition = np.stack((results.segmentation_mask,) * 3, axis=-1) > 0.1\n    background = np.zeros(data.shape, dtype=np.uint8)\n    background[:] = options.process.segmentation_background\n    data = np.where(condition, data, background) # consider using a joint bilateral filter instead of pure combine\n    segmented = Image.fromarray(data)\n    res.image = segmented\n    res.ops.append('segmentation')\n    return res\n\n\ndef unload():\n    global face_model\n    if face_model is not None:\n        face_model = None\n    global body_model\n    if body_model is not None:\n        body_model = None\n    global segmentation_model\n    if segmentation_model is not None:\n        segmentation_model = None\n\n\ndef encode(img):\n    with io.BytesIO() as stream:\n        img.save(stream, 'JPEG')\n        values = stream.getvalue()\n        encoded = base64.b64encode(values).decode()\n        return encoded\n\n\ndef reset():\n    unload()\n    global all_images_by_type\n    all_images_by_type = {}\n    global all_images\n    all_images = []\n\n\ndef upscale_restore_image(res: Result, upscale: bool = False, restore: bool = False):\n    kwargs = util.Map({\n        'image': encode(res.image),\n        'codeformer_visibility': 0.0,\n        'codeformer_weight': 0.0,\n    })\n    if res.image.width >= options.process.target_size and res.image.height >= options.process.target_size:\n        upscale = False\n    if upscale:\n        kwargs.upscaler_1 = 'SwinIR_4x'\n        kwargs.upscaling_resize = 2\n        res.ops.append('upscale')\n    if restore:\n        kwargs.codeformer_visibility = 1.0\n        kwargs.codeformer_weight = 0.2\n        res.ops.append('restore')\n    if upscale or restore:\n        result = sdapi.postsync('/sdapi/v1/extra-single-image', kwargs)\n        if 'image' not in result:\n            res.message = 'failed to upscale/restore image'\n        else:\n            res.image = Image.open(io.BytesIO(base64.b64decode(result['image'])))\n    return res\n\n\ndef interrogate_image(res: Result, tag: str = None):\n    caption = ''\n    tags = []\n    for model in options.process.interrogate_model:\n        json = util.Map({ 'image': encode(res.image), 'model': model })\n        result = sdapi.postsync('/sdapi/v1/interrogate', json)\n        if model == 'clip':\n            caption = result.caption if 'caption' in result else ''\n            caption = caption.split(',')[0].replace(' a ', ' ').strip()\n            if tag is not None:\n                caption = res.tag + ', ' + caption\n        if model == 'deepdanbooru':\n            tag = result.caption if 'caption' in result else ''\n            tags = tag.split(',')\n            tags = [t.replace('(', '').replace(')', '').replace('\\\\', '').split(':')[0].strip() for t in tags]\n            if tag is not None:\n                for t in res.tag.split(',')[::-1]:\n                    tags.insert(0, t.strip())\n    pos = 0 if len(tags) == 0 else 1\n    tags.insert(pos, caption.split(' ')[1])\n    tags = [t for t in tags if len(t) > 2]\n    if len(tags) > options.process.tag_limit:\n        tags = tags[:options.process.tag_limit]\n    res.caption = caption\n    res.tags = tags\n    res.ops.append('interrogate')\n    return res\n\n\ndef resize_image(res: Result):\n    resized = res.image\n    resized.thumbnail((options.process.target_size, options.process.target_size), Image.Resampling.HAMMING)\n    res.image = resized\n    res.ops.append('resize')\n    return res\n\n\ndef square_image(res: Result):\n    size = max(res.image.width, res.image.height)\n    squared = Image.new('RGB', (size, size))\n    squared.paste(res.image, ((size - res.image.width) // 2, (size - res.image.height) // 2))\n    res.image = squared\n    res.ops.append('square')\n    return res\n\n\ndef process_face(res: Result):\n    res.ops.append('face')\n    global face_model\n    if face_model is None:\n        face_model = mp.solutions.face_detection.FaceDetection(min_detection_confidence=options.process.face_score, model_selection=options.process.face_model)\n    results = face_model.process(np.array(res.image))\n    if results.detections is None:\n        res.message = 'no face detected'\n        res.image = None\n        return res\n    box = results.detections[0].location_data.relative_bounding_box\n    if box.xmin < 0 or box.ymin < 0 or (box.width - box.xmin) > 1 or (box.height - box.ymin) > 1:\n        res.message = 'face out of frame'\n        res.image = None\n        return res\n    x = max(0, (box.xmin - options.process.face_pad / 2) * res.image.width)\n    y = max(0, (box.ymin - options.process.face_pad / 2)* res.image.height)\n    w = min(res.image.width, (box.width + options.process.face_pad) * res.image.width)\n    h = min(res.image.height, (box.height + options.process.face_pad) * res.image.height)\n    x = max(0, x)\n    res.image = res.image.crop((x, y, x + w, y + h))\n    return res\n\n\ndef process_body(res: Result):\n    res.ops.append('body')\n    global body_model\n    if body_model is None:\n        body_model = mp.solutions.pose.Pose(static_image_mode=True, min_detection_confidence=options.process.body_score, model_complexity=options.process.body_model)\n    results = body_model.process(np.array(res.image))\n    if results.pose_landmarks is None:\n        res.message = 'no body detected'\n        res.image = None\n        return res\n    x0 = [res.image.width * (i.x - options.process.body_pad / 2) for i in results.pose_landmarks.landmark if i.visibility > options.process.body_visibility]\n    y0 = [res.image.height * (i.y - options.process.body_pad / 2) for i in results.pose_landmarks.landmark if i.visibility > options.process.body_visibility]\n    x1 = [res.image.width * (i.x + options.process.body_pad / 2) for i in results.pose_landmarks.landmark if i.visibility > options.process.body_visibility]\n    y1 = [res.image.height * (i.y + options.process.body_pad / 2) for i in results.pose_landmarks.landmark if i.visibility > options.process.body_visibility]\n    if len(x0) < options.process.body_parts:\n        res.message = f'insufficient body parts detected: {len(x0)}'\n        res.image = None\n        return res\n    res.image = res.image.crop((max(0, min(x0)), max(0, min(y0)), min(res.image.width, max(x1)), min(res.image.height, max(y1))))\n    return res\n\n\ndef process_original(res: Result):\n    res.ops.append('original')\n    return res\n\n\ndef save_image(res: Result, folder: str):\n    if res.image is None or folder is None:\n        return res\n    all_images_by_type[res.type] = all_images_by_type.get(res.type, 0) + 1\n    res.basename = os.path.basename(res.input).split('.')[0]\n    res.basename = str(all_images_by_type[res.type]).rjust(3, '0') + '-' + res.type + '-' + res.basename\n    res.basename = os.path.join(folder, res.basename)\n    res.output = res.basename + options.process.format\n    res.image.save(res.output)\n    res.image.close()\n    res.ops.append('save')\n    return res\n\n\ndef file(filename: str, folder: str, tag = None, requested = []):\n    # initialize result dict\n    res = Result(fn = filename, typ='unknown', tag=tag, requested = requested)\n    # open image\n    try:\n        register_heif_opener()\n        res.image = Image.open(filename)\n        if res.image.mode == 'RGBA':\n            res.image = res.image.convert('RGB')\n        res.image = ImageOps.exif_transpose(res.image) # rotate image according to EXIF orientation\n    except Exception as e:\n        res.message = f'error opening: {e}'\n        return res\n    # primary steps\n    if 'face' in requested:\n        res.type = 'face'\n        res = process_face(res)\n    elif 'body' in requested:\n        res.type = 'body'\n        res = process_body(res)\n    elif 'original' in requested:\n        res.type = 'original'\n        res = process_original(res)\n    # validation steps\n    if res.image is None:\n        return res\n    if 'blur' in requested:\n        res.ops.append('blur')\n        val = detect_blur(res.image)\n        if val > options.process.blur_score:\n            res.message = f'blur check failed: {val}'\n            res.image = None\n    if 'range' in requested:\n        res.ops.append('range')\n        val = detect_dynamicrange(res.image)\n        if val < options.process.range_score:\n            res.message = f'dynamic range check failed: {val}'\n            res.image = None\n    if 'similarity' in requested:\n        res.ops.append('similarity')\n        val = detect_simmilar(res.image)\n        if val > options.process.similarity_score:\n            res.message = f'dynamic range check failed: {val}'\n            res.image = None\n    if res.image is None:\n        return res\n    # post processing steps\n    res = upscale_restore_image(res, 'upscale' in requested, 'restore' in requested)\n    if res.image.width < options.process.target_size or res.image.height < options.process.target_size:\n        res.message = f'low resolution: [{res.image.width}, {res.image.height}]'\n        res.image = None\n        return res\n    if 'interrogate' in requested:\n        res = interrogate_image(res, tag)\n    if 'resize' in requested:\n        res = resize_image(res)\n    if 'square' in requested:\n        res = square_image(res)\n    if 'segment' in requested:\n        res = segmentation(res)\n    # finally save image\n    res = save_image(res, folder)\n    return res\n"
  },
  {
    "path": "cli/process_options.py",
    "content": "from util import Map\n\nembedding = Map({\n    \"id_task\": 0,\n    \"embedding_name\": \"\",\n    \"learn_rate\": -1,\n    \"batch_size\": 1,\n    \"steps\": 500,\n    \"data_root\": \"\",\n    \"log_directory\": \"train/log\",\n    \"template_filename\": \"subject_filewords.txt\",\n    \"gradient_step\": 20,\n    \"training_width\": 512,\n    \"training_height\": 512,\n    \"shuffle_tags\": False,\n    \"tag_drop_out\": 0,\n    \"clip_grad_mode\": \"disabled\",\n    \"clip_grad_value\": \"0.1\",\n    \"latent_sampling_method\": \"deterministic\",\n    \"create_image_every\": 0,\n    \"save_embedding_every\": 0,\n    \"save_image_with_stored_embedding\": False,\n    \"preview_from_txt2img\": False,\n    \"preview_prompt\": \"\",\n    \"preview_negative_prompt\": \"blurry, duplicate, ugly, deformed, low res, watermark, text\",\n    \"preview_steps\": 20,\n    \"preview_sampler_index\": 0,\n    \"preview_cfg_scale\": 6,\n    \"preview_seed\": -1,\n    \"preview_width\": 512,\n    \"preview_height\": 512,\n    \"varsize\": False,\n    \"use_weight\": False,\n})\n\nlora = Map({\n    \"bucket_no_upscale\": False,\n    \"bucket_reso_steps\": 64,\n    \"cache_latents\": True,\n    \"caption_dropout_every_n_epochs\": None,\n    \"caption_dropout_rate\": 0.0,\n    \"caption_extension\": \".txt\",\n    \"caption_extention\": \".txt\",\n    \"caption_tag_dropout_rate\": 0.0,\n    \"clip_skip\": None,\n    \"color_aug\": False,\n    \"dataset_repeats\": 1,\n    \"debug_dataset\": False,\n    \"enable_bucket\": False,\n    \"face_crop_aug_range\": None,\n    \"flip_aug\": False,\n    \"full_fp16\": False,\n    \"gradient_accumulation_steps\": 1,\n    \"gradient_checkpointing\": False,\n    \"in_json\": \"\",\n    \"keep_tokens\": None,\n    \"learning_rate\": 5e-05,\n    \"log_prefix\": None,\n    \"logging_dir\": None,\n    \"lr_scheduler_num_cycles\": 1,\n    \"lr_scheduler_power\": 1,\n    \"lr_scheduler\": \"cosine\",\n    \"lr_warmup_steps\": 0,\n    \"max_bucket_reso\": 1024,\n    \"max_data_loader_n_workers\": 8,\n    \"max_grad_norm\": 0.0,\n    \"max_token_length\": None,\n    \"max_train_epochs\": None,\n    \"max_train_steps\": 2500,\n    \"mem_eff_attn\": False,\n    \"min_bucket_reso\": 256,\n    \"mixed_precision\": \"fp16\",\n    \"network_alpha\": 1.0,\n    \"network_args\": None,\n    \"network_dim\": 16,\n    \"network_module\": \"networks.lora\",\n    \"network_train_text_encoder_only\": False,\n    \"network_train_unet_only\": False,\n    \"network_weights\": None,\n    \"no_metadata\": False,\n    \"output_dir\": \"\",\n    \"output_name\": \"\",\n    \"persistent_data_loader_workers\": False,\n    \"pretrained_model_name_or_path\": \"\",\n    \"prior_loss_weight\": 1.0,\n    \"random_crop\": False,\n    \"reg_data_dir\": None,\n    \"resolution\": \"512,512\",\n    \"resume\": None,\n    \"save_every_n_epochs\": None,\n    \"save_last_n_epochs_state\": None,\n    \"save_last_n_epochs\": None,\n    \"save_model_as\": \"ckpt\",\n    \"save_n_epoch_ratio\": None,\n    \"save_precision\": \"fp16\",\n    \"save_state\": False,\n    \"seed\": 42,\n    \"shuffle_caption\": False,\n    \"text_encoder_lr\": 5e-05,\n    \"train_batch_size\": 1,\n    \"train_data_dir\": \"\",\n    \"training_comment\": \"\",\n    \"unet_lr\": 1e-04,\n    \"use_8bit_adam\": False,\n    \"v_parameterization\": False,\n    \"v2\": False,\n    \"vae\": None,\n    \"xformers\": False,\n})\n\nprocess = Map({\n    # general settings, do not modify\n    'format': '.jpg', # image format\n    'target_size': 512, # target resolution\n    'segmentation_model': 0, # segmentation model 0/general 1/landscape\n    'segmentation_background': (192, 192, 192), # segmentation background color\n    'blur_score': 1.8, # max score for face blur detection\n    'blur_samplesize': 60, # sample size to use for blur detection\n    'similarity_score': 0.8, # maximum similarity score before image is discarded\n    'similarity_size': 64, # base similarity detection on reduced images\n    'range_score': 0.15, # min score for face color dynamicrange detection\n    # face processing settings\n    'face_score': 0.7, # min face detection score\n    'face_pad': 0.1, # pad face image percentage\n    'face_model': 1, # which face model to use 0/close-up 1/standard\n    # body processing settings\n    'body_score': 0.9, # min body detection score\n    'body_visibility': 0.5, # min visibility score for each detected body part\n    'body_parts': 15, # min number of detected body parts with sufficient visibility\n    'body_pad': 0.2,  # pad body image percentage\n    'body_model': 2, # body model to use 0/low 1/medium 2/high\n    # similarity detection settings\n    # interrogate settings\n    'interrogate': False, # interrogate images\n    'interrogate_model': ['clip', 'deepdanbooru'], # interrogate models\n    'tag_limit': 5, # number of tags to extract\n    # validations\n    # tbd\n    'face_segmentation': False, # segmentation enabled\n    'body_segmentation': False, # segmentation enabled\n})\n"
  },
  {
    "path": "cli/requirements.txt",
    "content": "aiohttp\nmediapipe\nextcolors\ncolormap\nfiletype\nalbumentations\nmatplotlib\n"
  },
  {
    "path": "cli/run-benchmark.py",
    "content": "#!/usr/bin/env python\n\"\"\"\nsd api txt2img benchmark\n\"\"\"\nimport os\nimport asyncio\nimport base64\nimport io\nimport json\nimport time\nimport argparse\nfrom PIL import Image\nimport sdapi\nfrom util import Map, log\n\n\noom = 0\nargs = None\noptions = None\n\n\nasync def txt2img():\n    t0 = time.perf_counter()\n    data = {}\n    try:\n        data = await sdapi.post('/sdapi/v1/txt2img', options)\n    except Exception:\n        return -1\n    if 'error' in data:\n        return -1\n    if 'info' in data:\n        info = Map(json.loads(data['info']))\n    else:\n        return 0\n    log.debug({ 'info': info })\n    if options['batch_size'] != len(data['images']):\n        log.error({ 'requested': options['batch_size'], 'received': len(data['images']) })\n        return 0\n    for i in range(len(data['images'])):\n        data['images'][i] = Image.open(io.BytesIO(base64.b64decode(data['images'][i].split(',',1)[0])))\n        if args.save:\n            fn = os.path.join(args.save, f'benchmark-{i}-{len(data[\"images\"])}.png')\n            data[\"images\"][i].save(fn)\n            log.debug({ 'save': fn })\n    log.debug({ \"images\": data[\"images\"] })\n    t1 = time.perf_counter()\n    return t1 - t0\n\n\ndef memstats():\n    mem = sdapi.getsync('/sdapi/v1/memory')\n    cpu = mem.get('ram', 'unavailable')\n    gpu = mem.get('cuda', 'unavailable')\n    if 'active' in gpu:\n        gpu['session'] = gpu.pop('active')\n    if 'reserved' in gpu:\n        gpu.pop('allocated')\n        gpu.pop('reserved')\n        gpu.pop('inactive')\n    if 'events' in gpu:\n        global oom # pylint: disable=global-statement\n        oom = gpu['events']['oom']\n        gpu.pop('events')\n    return cpu, gpu\n\n\ndef gb(val: float):\n    return round(val / 1024 / 1024 / 1024, 2)\n\n\nasync def main():\n    sdapi.quiet = True\n    await sdapi.session()\n    await sdapi.interrupt()\n    ver = await sdapi.get(\"/sdapi/v1/version\")\n    log.info({ 'version': ver})\n    platform = await sdapi.get(\"/sdapi/v1/platform\")\n    log.info({ 'platform': platform })\n    opts = await sdapi.get('/sdapi/v1/options')\n    opts = Map(opts)\n    log.info({ 'model': opts.sd_model_checkpoint })\n    cpu, gpu = memstats()\n    log.info({ 'system': { 'cpu': cpu, 'gpu': gpu }})\n    batch = [1, 1, 2, 4, 8, 12, 16, 24, 32, 48, 64, 96, 128, 192, 256]\n    batch = [b for b in batch if b <= args.maxbatch]\n    log.info({\"batch-sizes\": batch})\n    for i in range(len(batch)):\n        if oom > 0:\n            continue\n        options['batch_size'] = batch[i]\n        warmup = await txt2img()\n        ts = await txt2img()\n        if i == 0:\n            ts += warmup\n        if ts > 0.01: # cannot be faster than 10ms per run\n            await asyncio.sleep(0)\n            cpu, gpu = memstats()\n            if i == 0:\n                log.info({ 'warmup': round(ts, 2) })\n            else:\n                peak = gpu['system']['used'] # gpu['session']['peak'] if 'session' in gpu else 0\n                log.info({ 'batch': batch[i], 'its': round(options.steps / (ts / batch[i]), 2), 'img': round(ts / batch[i], 2), 'wall': round(ts, 2), 'peak': gb(peak), 'oom': oom > 0 })\n        else:\n            await asyncio.sleep(10)\n            cpu, gpu = memstats()\n            log.info({ 'batch': batch[i], 'result': 'error', 'gpu': gpu, 'oom': oom > 0 })\n            break\n    if oom > 0:\n        log.info({ 'benchmark': 'ended with oom so you should probably restart your automatic server now' })\n    await sdapi.close()\n\n\nif __name__ == '__main__':\n    log.info({ 'run-benchmark' })\n    parser = argparse.ArgumentParser(description = 'run-benchmark')\n    parser.add_argument(\"--steps\", type=int, default=50, required=False, help=\"steps\")\n    parser.add_argument(\"--sampler\", type=str, default='Euler a', required=False, help=\"Use specific sampler\")\n    parser.add_argument(\"--prompt\", type=str, default='photo of two dice on a table', required=False, help=\"prompt\")\n    parser.add_argument(\"--negative\", type=str, default='foggy, blurry', required=False, help=\"prompt\")\n    parser.add_argument(\"--maxbatch\", type=int, default=16, required=False, help=\"max batch size\")\n    parser.add_argument(\"--width\", type=int, default=512, required=False, help=\"width\")\n    parser.add_argument(\"--height\", type=int, default=512, required=False, help=\"height\")\n    parser.add_argument('--debug', default = False, action='store_true', help = 'debug logging')\n    parser.add_argument('--taesd', default = False, action='store_true', help = 'use taesd as vae')\n    parser.add_argument(\"--save\", type=str, default='', required=False, help=\"save images to folder\")\n    args = parser.parse_args()\n    if args.debug:\n        log.setLevel('DEBUG')\n    options = Map(\n        {\n            \"prompt\": args.prompt,\n            \"negative_prompt\": args.negative,\n            \"steps\": args.steps,\n            \"sampler_name\": args.sampler,\n            \"width\": args.width,\n            \"height\": args.height,\n            \"vae_type\": 'Tiny' if args.taesd else 'Full',\n            \"cfg_scale\": 0,\n            \"batch_size\": 1,\n            \"n_iter\": 1,\n            \"seed\": -1,\n        }\n    )\n    log.info({\"options\": options})\n    try:\n        asyncio.run(main())\n    except KeyboardInterrupt:\n        log.warning({ 'interrupted': 'keyboard request' })\n        sdapi.interruptsync()\n"
  },
  {
    "path": "cli/sdapi.py",
    "content": "#!/usr/bin/env python\n#pylint: disable=redefined-outer-name\n\"\"\"\nhelper methods that creates HTTP session with managed connection pool\nprovides async HTTP get/post methods and several helper methods\n\"\"\"\n\nimport io\nimport os\nimport sys\nimport ssl\nimport base64\nimport asyncio\nimport logging\nimport aiohttp\nimport requests\nimport urllib3\nfrom PIL import Image\nfrom util import Map, log\nfrom rich import print # pylint: disable=redefined-builtin\n\n\nsd_url = os.environ.get('SDAPI_URL', \"http://127.0.0.1:7860\") # api url root\nsd_username = os.environ.get('SDAPI_USR', None)\nsd_password = os.environ.get('SDAPI_PWD', None)\n\nuse_session = True\nurllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)\nssl.create_default_context = ssl._create_unverified_context # pylint: disable=protected-access\ntimeout = aiohttp.ClientTimeout(total = None, sock_connect = 10, sock_read = None) # default value is 5 minutes, we need longer for training\nsess = None\nquiet = False\nBaseThreadPolicy = asyncio.WindowsSelectorEventLoopPolicy if sys.platform == \"win32\" and hasattr(asyncio, \"WindowsSelectorEventLoopPolicy\") else asyncio.DefaultEventLoopPolicy\n\n\nclass AnyThreadEventLoopPolicy(BaseThreadPolicy):\n    def get_event_loop(self) -> asyncio.AbstractEventLoop:\n        try:\n            return super().get_event_loop()\n        except (RuntimeError, AssertionError):\n            loop = self.new_event_loop()\n            self.set_event_loop(loop)\n            return loop\n\nasyncio.set_event_loop_policy(AnyThreadEventLoopPolicy())\n\n\ndef authsync():\n    if sd_username is not None and sd_password is not None:\n        return requests.auth.HTTPBasicAuth(sd_username, sd_password)\n    return None\n\n\ndef auth():\n    if sd_username is not None and sd_password is not None:\n        return aiohttp.BasicAuth(sd_username, sd_password)\n    return None\n\n\nasync def result(req):\n    if req.status != 200:\n        if not quiet:\n            log.error({ 'request error': req.status, 'reason': req.reason, 'url': req.url })\n        if not use_session and sess is not None:\n            await sess.close()\n        return Map({ 'error': req.status, 'reason': req.reason, 'url': req.url })\n    else:\n        json = await req.json()\n        if isinstance(json, list):\n            res = json\n        elif json is None:\n            res = {}\n        else:\n            res = Map(json)\n        log.debug({ 'request': req.status, 'url': req.url, 'reason': req.reason })\n        return res\n\n\ndef resultsync(req: requests.Response):\n    if req.status_code != 200:\n        if not quiet:\n            log.error({ 'request error': req.status_code, 'reason': req.reason, 'url': req.url })\n        return Map({ 'error': req.status_code, 'reason': req.reason, 'url': req.url })\n    else:\n        json = req.json()\n        if isinstance(json, list):\n            res = json\n        elif json is None:\n            res = {}\n        else:\n            res = Map(json)\n        log.debug({ 'request': req.status_code, 'url': req.url, 'reason': req.reason })\n        return res\n\n\nasync def get(endpoint: str, json: dict = None):\n    global sess # pylint: disable=global-statement\n    sess = sess if sess is not None else await session()\n    try:\n        async with sess.get(url=endpoint, json=json, verify_ssl=False) as req:\n            res = await result(req)\n            return res\n    except Exception as err:\n        log.error({ 'session': err })\n        return {}\n\n\ndef getsync(endpoint: str, json: dict = None):\n    try:\n        req = requests.get(f'{sd_url}{endpoint}', json=json, verify=False, auth=authsync()) # pylint: disable=missing-timeout\n        res = resultsync(req)\n        return res\n    except Exception as err:\n        log.error({ 'session': err })\n        return {}\n\n\nasync def post(endpoint: str, json: dict = None):\n    global sess # pylint: disable=global-statement\n    # sess = sess if sess is not None else await session()\n    if sess and not sess.closed:\n        await sess.close()\n    sess = await session()\n    try:\n        async with sess.post(url=endpoint, json=json, verify_ssl=False) as req:\n            res = await result(req)\n            return res\n    except Exception as err:\n        log.error({ 'session': err })\n        return {}\n\n\ndef postsync(endpoint: str, json: dict = None):\n    req = requests.post(f'{sd_url}{endpoint}', json=json, verify=False, auth=authsync()) # pylint: disable=missing-timeout\n    res = resultsync(req)\n    return res\n\n\nasync def interrupt():\n    res = await get('/sdapi/v1/progress?skip_current_image=true')\n    if 'state' in res and res.state.job_count > 0:\n        log.debug({ 'interrupt': res.state })\n        res = await post('/sdapi/v1/interrupt')\n        await asyncio.sleep(1)\n        return res\n    else:\n        log.debug({ 'interrupt': 'idle' })\n        return { 'interrupt': 'idle' }\n\n\ndef interruptsync():\n    res = getsync('/sdapi/v1/progress?skip_current_image=true')\n    if 'state' in res and res.state.job_count > 0:\n        log.debug({ 'interrupt': res.state })\n        res = postsync('/sdapi/v1/interrupt')\n        return res\n    else:\n        log.debug({ 'interrupt': 'idle' })\n        return { 'interrupt': 'idle' }\n\n\nasync def progress():\n    res = await get('/sdapi/v1/progress?skip_current_image=false')\n    try:\n        if res is not None and res.get('current_image', None) is not None:\n            res.current_image = Image.open(io.BytesIO(base64.b64decode(res['current_image'])))\n    except Exception:\n        pass\n    log.debug({ 'progress': res })\n    return res\n\n\ndef progresssync():\n    res = getsync('/sdapi/v1/progress?skip_current_image=true')\n    log.debug({ 'progress': res })\n    return res\n\n\ndef get_log():\n    res = getsync('/sdapi/v1/log')\n    for line in res:\n        log.debug(line)\n    return res\n\n\ndef get_info():\n    import time\n    t0 = time.time()\n    res = getsync('/sdapi/v1/system-info/status?full=true&refresh=true')\n    t1 = time.time()\n    print({ 'duration': 1000 * round(t1-t0, 3), **res })\n    return res\n\n\ndef options():\n    opts = getsync('/sdapi/v1/options')\n    flags = getsync('/sdapi/v1/cmd-flags')\n    return { 'options': opts, 'flags': flags }\n\n\ndef shutdown():\n    try:\n        postsync('/sdapi/v1/shutdown')\n    except Exception as e:\n        log.info({ 'shutdown': e })\n\n\nasync def session():\n    global sess # pylint: disable=global-statement\n    time = aiohttp.ClientTimeout(total = None, sock_connect = 10, sock_read = None) # default value is 5 minutes, we need longer for training\n    sess = aiohttp.ClientSession(timeout = time, base_url = sd_url, auth=auth())\n    log.debug({ 'sdapi': 'session created', 'endpoint': sd_url })\n    \"\"\"\n    sess = await aiohttp.ClientSession(timeout = timeout).__aenter__()\n    try:\n        async with sess.get(url = f'{sd_url}/') as req:\n            log.debug({ 'sdapi': 'session created', 'endpoint': sd_url })\n    except Exception as e:\n        log.error({ 'sdapi': e })\n        await asyncio.sleep(0)\n        await sess.__aexit__(None, None, None)\n        sess = None\n    return sess\n    \"\"\"\n    return sess\n\n\nasync def close():\n    if sess is not None:\n        await asyncio.sleep(0)\n        await sess.close()\n        await sess.__aexit__(None, None, None)\n        log.debug({ 'sdapi': 'session closed', 'endpoint': sd_url })\n\n\nif __name__ == \"__main__\":\n    sys.argv.pop(0)\n    log.setLevel(logging.DEBUG)\n    if 'interrupt' in sys.argv:\n        asyncio.run(interrupt())\n    elif 'progress' in sys.argv:\n        asyncio.run(progress())\n    elif 'progresssync' in sys.argv:\n        progresssync()\n    elif 'options' in sys.argv:\n        opt = options()\n        log.debug({ 'options' })\n        import json\n        print(json.dumps(opt['options'], indent = 2))\n        log.debug({ 'cmd-flags' })\n        print(json.dumps(opt['flags'], indent = 2))\n    elif 'log' in sys.argv:\n        get_log()\n    elif 'info' in sys.argv:\n        get_info()\n    elif 'shutdown' in sys.argv:\n        shutdown()\n    else:\n        res = getsync(sys.argv[0])\n        print(res)\n    asyncio.run(close(), debug=True)\n    asyncio.run(asyncio.sleep(0.5))\n"
  },
  {
    "path": "cli/search-docs.py",
    "content": "#!/usr/bin/env python\nimport os\nimport sys\nimport time\nimport logging\n\n\nlogging.basicConfig(level = logging.INFO, format = '%(asctime)s %(levelname)s: %(message)s')\nlog = logging.getLogger(__name__)\n\n\nclass Page():\n    def __init__(self, fn, full: bool = True):\n        self.fn = fn\n        self.title = ''\n        self.size = 0\n        self.mtime = 0\n        self.h1 = []\n        self.h2 = []\n        self.h3 = []\n        self.lines = []\n        self.read(full=full)\n\n    def read(self, full: bool = True):\n        try:\n            self.title = ' ' + os.path.basename(self.fn).replace('.md', '').replace('-', ' ') + ' '\n            self.mtime = int(os.path.getmtime(self.fn))\n            with open(self.fn, 'r', encoding='utf-8') as f:\n                content = f.read()\n            self.size = len(content)\n            self.lines = [line.strip().lower() + ' ' for line in content.splitlines() if len(line)>1]\n            self.h1 = [line[1:] for line in self.lines if line.startswith('# ')]\n            self.h2 = [line[2:] for line in self.lines if line.startswith('## ')]\n            self.h3 = [line[3:] for line in self.lines if line.startswith('### ')]\n            if not full:\n                self.lines.clear()\n        except Exception as e:\n            log.error(f'Wiki: page=\"{self.fn}\" {e}')\n\n    def search(self, text):\n        if not text or len(text) < 2:\n            return []\n        text = text.lower()\n        if text.strip() == self.title.lower().strip():\n            return 1.0\n        if self.title.lower().startswith(f'{text} '):\n            return 0.99\n        if f' {text} ' in self.title.lower():\n            return 0.98\n        if f' {text}' in self.title.lower():\n            return 0.97\n\n        if any(f' {text} ' in h for h in self.h1):\n            return 0.89\n        if any(f' {text}' in h for h in self.h1):\n            return 0.88\n\n        if any(f' {text} ' in h for h in self.h2):\n            return 0.79\n        if any(f' {text}' in h for h in self.h2):\n            return 0.78\n\n        if any(f' {text} ' in h for h in self.h3):\n            return 0.69\n        if any(f' {text}' in h for h in self.h3):\n            return 0.68\n\n        if f'{text}' in self.title.lower():\n            return 0.59\n        if any(f'{text}' in h for h in self.h1):\n            return 0.58\n        if any(f'{text}' in h for h in self.h2):\n            return 0.57\n        if any(f'{text}' in h for h in self.h3):\n            return 0.56\n\n        if any(text in line for line in self.lines):\n            return 0.50\n\n        return 0.0\n\n    def get(self):\n        try:\n            with open(self.fn, 'r', encoding='utf-8') as f:\n                content = f.read()\n                return content\n        except Exception as e:\n            log.error(f'Wiki: page=\"{self.fn}\" {e}')\n        return ''\n\n    def __str__(self):\n        return f'Page(title=\"{self.title.strip()}\" file=\"{self.fn}\" mtime={self.mtime} h1={[h.strip() for h in self.h1]} h2={len(self.h2)} h3={len(self.h3)} lines={len(self.lines)} size={self.size})'\n\n\nclass Pages():\n    def __init__(self):\n        self.time = time.time()\n        self.size = 0\n        self.full = None\n        self.pages: list[Page] = []\n\n    def build(self, full: bool = True):\n        self.pages.clear()\n        self.full = full\n        with os.scandir('wiki') as entries:\n            for entry in entries:\n                if entry.is_file() and entry.name.endswith('.md'):\n                    page = Page(entry.path, full=full)\n                    self.pages.append(page)\n        self.size = sum(page.size for page in self.pages)\n\n    def search(self, text: str, topk: int = 10, full: bool = True) -> list[Page]:\n        if not text:\n            return []\n        if len(self.pages) == 0:\n            self.build(full=full)\n        text = text.lower()\n        scores = [page.search(text) for page in self.pages]\n        mtimes = [page.mtime for page in self.pages]\n        found = sorted(zip(scores, mtimes, self.pages), key=lambda x: (x[0], x[1]), reverse=True)\n        found = [item for item in found if item[0] > 0]\n        return [(item[0], item[2]) for item in found][:topk]\n\n\nindex = Pages()\n\n\nif __name__ == \"__main__\":\n    sys.argv.pop(0)\n    if len(sys.argv) < 1:\n        log.error(\"Usage: python cli/docs.py <search_term>\")\n    term = ' '.join(sys.argv)\n    log.info(f'Search: \"{term}\" topk=10, full=True')\n    t0 = time.time()\n    results = index.search(term, topk=10, full=True)\n    t1 = time.time()\n    log.info(f'Results: pages={len(results)} size={index.size} time={t1-t0:.3f}')\n    for _score, _page in results:\n        log.info(f'Score: {_score:.2f} {_page}')\n    # if len(results) > 0:\n    #     log.info('Top result:')\n    #     log.info(results[0][1].get())\n"
  },
  {
    "path": "cli/test-schedulers.py",
    "content": "import os\nimport sys\nimport time\nimport numpy as np\nimport torch\n\n# Ensure we can import modules\nsys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), \"../\")))\n\nfrom modules.errors import log\nfrom modules.res4lyf import (\n    BASE, SIMPLE, VARIANTS,\n    RESUnifiedScheduler, RESMultistepScheduler, RESDEISMultistepScheduler,\n    ETDRKScheduler, LawsonScheduler, ABNorsettScheduler, PECScheduler,\n    RiemannianFlowScheduler, RESSinglestepScheduler, RESSinglestepSDEScheduler,\n    RESMultistepSDEScheduler, SimpleExponentialScheduler, LinearRKScheduler,\n    LobattoScheduler, GaussLegendreScheduler, RungeKutta44Scheduler,\n    RungeKutta57Scheduler, RungeKutta67Scheduler, SpecializedRKScheduler,\n    BongTangentScheduler, CommonSigmaScheduler, RadauIIAScheduler,\n    LangevinDynamicsScheduler\n)\nfrom modules.schedulers.scheduler_vdm import VDMScheduler\nfrom modules.schedulers.scheduler_unipc_flowmatch import FlowUniPCMultistepScheduler\nfrom modules.schedulers.scheduler_ufogen import UFOGenScheduler\nfrom modules.schedulers.scheduler_tdd import TDDScheduler\nfrom modules.schedulers.scheduler_tcd import TCDScheduler\nfrom modules.schedulers.scheduler_flashflow import FlashFlowMatchEulerDiscreteScheduler\nfrom modules.schedulers.scheduler_dpm_flowmatch import FlowMatchDPMSolverMultistepScheduler\nfrom modules.schedulers.scheduler_dc import DCSolverMultistepScheduler\nfrom modules.schedulers.scheduler_bdia import BDIA_DDIMScheduler\n\ndef test_scheduler(name, scheduler_class, config):\n    try:\n        scheduler = scheduler_class(**config)\n    except Exception as e:\n        log.error(f'scheduler=\"{name}\" cls={scheduler_class} config={config} error=\"Init failed: {e}\"')\n        return False\n\n    num_steps = 20\n    scheduler.set_timesteps(num_steps)\n\n    sample = torch.randn((1, 4, 64, 64))\n    has_changed = False\n    t0 = time.time()\n    messages = []\n\n    try:\n        for i, t in enumerate(scheduler.timesteps):\n            # Simulate model output (noise or x0 or v), Using random noise for stability check\n            model_output = torch.randn_like(sample)\n\n            # Scaling Check\n            step_idx = scheduler.step_index if hasattr(scheduler, \"step_index\") and scheduler.step_index is not None else i\n            # Clamp index\n            if hasattr(scheduler, 'sigmas'):\n                step_idx = min(step_idx, len(scheduler.sigmas) - 1)\n                sigma = scheduler.sigmas[step_idx]\n            else:\n                sigma = torch.tensor(1.0) # Dummy for non-sigma schedulers\n\n            # Re-introduce scaling calculation first\n            scaled_sample = scheduler.scale_model_input(sample, t)\n\n            if config.get(\"prediction_type\") == \"flow_prediction\" or name in [\"UFOGenScheduler\", \"TDDScheduler\", \"TCDScheduler\", \"BDIA_DDIMScheduler\", \"DCSolverMultistepScheduler\"]:\n                # Some new schedulers don't use K-diffusion scaling\n                expected_scale = 1.0\n            else:\n                expected_scale = 1.0 / ((sigma**2 + 1) ** 0.5)\n\n            # Simple check with loose tolerance due to float precision\n            expected_scaled_sample = sample * expected_scale\n            if not torch.allclose(scaled_sample, expected_scaled_sample, atol=1e-4):\n                # If failed, double check if it's just 'sample' (no scaling)\n                if torch.allclose(scaled_sample, sample, atol=1e-4):\n                    messages.append('warning=\"scaling is identity\"')\n                else:\n                    log.error(f'scheduler=\"{name}\" cls={scheduler.__class__.__name__} config={config} step={i} expected={expected_scale} error=\"scaling mismatch\"')\n                    return False\n\n            if torch.isnan(scaled_sample).any():\n                log.error(f'scheduler=\"{name}\" cls={scheduler.__class__.__name__} config={config} step={i} error=\"NaN in scaled_sample\"')\n                return False\n\n            if torch.isinf(scaled_sample).any():\n                log.error(f'scheduler=\"{name}\" cls={scheduler.__class__.__name__} config={config} step={i} error=\"Inf in scaled_sample\"')\n                return False\n\n            output = scheduler.step(model_output, t, sample)\n\n            # Shape and Dtype check\n            if output.prev_sample.shape != sample.shape:\n                log.error(f'scheduler=\"{name}\" cls={scheduler.__class__.__name__} config={config} step={i} error=\"Shape mismatch: {output.prev_sample.shape} vs {sample.shape}\"')\n                return False\n            if output.prev_sample.dtype != sample.dtype:\n                log.error(f'scheduler=\"{name}\" cls={scheduler.__class__.__name__} config={config} step={i} error=\"Dtype mismatch: {output.prev_sample.dtype} vs {sample.dtype}\"')\n                return False\n\n            # Update check: Did the sample change?\n            if not torch.equal(sample, output.prev_sample):\n                has_changed = True\n\n            # Sample Evolution Check\n            step_diff = (sample - output.prev_sample).abs().mean().item()\n            if step_diff < 1e-6:\n                messages.append(f'warning=\"minimal sample change: {step_diff}\"')\n\n            sample = output.prev_sample\n\n            if torch.isnan(sample).any():\n                log.error(f'scheduler=\"{name}\" cls={scheduler.__class__.__name__} config={config} step={i} error=\"NaN in sample\"')\n                return False\n\n            if torch.isinf(sample).any():\n                log.error(f'scheduler=\"{name}\" cls={scheduler.__class__.__name__} config={config} step={i} error=\"Inf in sample\"')\n                return False\n\n            # Divergence check\n            if sample.abs().max() > 1e10:\n                log.error(f'scheduler=\"{name}\" cls={scheduler.__class__.__name__} config={config} step={i} error=\"divergence detected\"')\n                return False\n\n        # External check for Sigma Monotonicity\n        if hasattr(scheduler, 'sigmas'):\n            sigmas = scheduler.sigmas.cpu().numpy()\n            if len(sigmas) > 1:\n                diffs = np.diff(sigmas) # Check if potentially monotonic decreasing (standard) OR increasing (some flow/inverse setups). We allow flat sections (diff=0) hence 1e-6 slack\n                is_monotonic_decreasing = np.all(diffs <= 1e-6)\n                is_monotonic_increasing = np.all(diffs >= -1e-6)\n                if not (is_monotonic_decreasing or is_monotonic_increasing):\n                    messages.append('warning=\"sigmas are not monotonic\"')\n\n    except Exception as e:\n        log.error(f'scheduler=\"{name}\" cls={scheduler.__class__.__name__} config={config} exception: {e}')\n        import traceback\n        traceback.print_exc()\n        return False\n\n    if not has_changed:\n        log.error(f'scheduler=\"{name}\" cls={scheduler.__class__.__name__} config={config} error=\"sample never changed\"')\n        return False\n\n    final_std = sample.std().item()\n    if final_std > 50.0 or final_std < 0.1:\n        log.error(f'scheduler=\"{name}\" cls={scheduler.__class__.__name__} config={config} std={final_std} error=\"variance drift\"')\n\n    t1 = time.time()\n    messages = list(set(messages))\n    log.info(f'scheduler=\"{name}\" cls={scheduler.__class__.__name__} config={config} time={t1-t0} messages={messages}')\n    return True\n\ndef run_tests():\n    prediction_types = [\"epsilon\", \"v_prediction\", \"sample\"] # flow_prediction is special, usually requires flow sigmas or specific setup, checking standard ones first\n\n    # Test BASE schedulers with their specific parameters\n    log.warning('type=\"base\"')\n    for name, cls in BASE:\n        configs = []\n\n        # prediction_types\n        for pt in prediction_types:\n            configs.append({\"prediction_type\": pt})\n\n        # Specific params for specific classes\n        if cls == RESUnifiedScheduler:\n            rk_types = [\"res_2m\", \"res_3m\", \"res_2s\", \"res_3s\", \"res_5s\", \"res_6s\", \"deis_1s\", \"deis_2m\", \"deis_3m\"]\n            for rk in rk_types:\n                for pt in prediction_types:\n                    configs.append({\"rk_type\": rk, \"prediction_type\": pt})\n\n        elif cls == RESMultistepScheduler:\n            variants = [\"res_2m\", \"res_3m\", \"deis_2m\", \"deis_3m\"]\n            for v in variants:\n                for pt in prediction_types:\n                    configs.append({\"variant\": v, \"prediction_type\": pt})\n\n        elif cls == RESDEISMultistepScheduler:\n            for order in range(1, 6):\n                for pt in prediction_types:\n                    configs.append({\"solver_order\": order, \"prediction_type\": pt})\n\n        elif cls == ETDRKScheduler:\n            variants = [\"etdrk2_2s\", \"etdrk3_a_3s\", \"etdrk3_b_3s\", \"etdrk4_4s\", \"etdrk4_4s_alt\"]\n            for v in variants:\n                for pt in prediction_types:\n                    configs.append({\"variant\": v, \"prediction_type\": pt})\n\n        elif cls == LawsonScheduler:\n            variants = [\"lawson2a_2s\", \"lawson2b_2s\", \"lawson4_4s\"]\n            for v in variants:\n                for pt in prediction_types:\n                    configs.append({\"variant\": v, \"prediction_type\": pt})\n\n        elif cls == ABNorsettScheduler:\n            variants = [\"abnorsett_2m\", \"abnorsett_3m\", \"abnorsett_4m\"]\n            for v in variants:\n                for pt in prediction_types:\n                    configs.append({\"variant\": v, \"prediction_type\": pt})\n\n        elif cls == PECScheduler:\n            variants = [\"pec423_2h2s\", \"pec433_2h3s\"]\n            for v in variants:\n                for pt in prediction_types:\n                    configs.append({\"variant\": v, \"prediction_type\": pt})\n\n        elif cls == RiemannianFlowScheduler:\n            metrics = [\"euclidean\", \"hyperbolic\", \"spherical\", \"lorentzian\"]\n            for m in metrics:\n                configs.append({\"metric_type\": m, \"prediction_type\": \"epsilon\"}) # Flow usually uses v or raw, but epsilon check matches others\n\n        if not configs:\n            for pt in prediction_types:\n                configs.append({\"prediction_type\": pt})\n\n        for conf in configs:\n            test_scheduler(name, cls, conf)\n\n    log.warning('type=\"simple\"')\n    for name, cls in SIMPLE:\n        for pt in prediction_types:\n            test_scheduler(name, cls, {\"prediction_type\": pt})\n\n    log.warning('type=\"variants\"')\n    for name, cls in VARIANTS:\n        # these classes preset their variants/rk_types in __init__ so we just test prediction types\n        for pt in prediction_types:\n            test_scheduler(name, cls, {\"prediction_type\": pt})\n\n    # Extra robustness check: Flow Prediction Type\n    log.warning('type=\"flow\"')\n    flow_schedulers = [\n        # res4lyf schedulers\n        RESUnifiedScheduler, RESMultistepScheduler, ABNorsettScheduler,\n        RESSinglestepScheduler, RESSinglestepSDEScheduler, RESDEISMultistepScheduler,\n        RESMultistepSDEScheduler, ETDRKScheduler, LawsonScheduler, PECScheduler,\n        SimpleExponentialScheduler, LinearRKScheduler, LobattoScheduler,\n        GaussLegendreScheduler, RungeKutta44Scheduler, RungeKutta57Scheduler,\n        RungeKutta67Scheduler, SpecializedRKScheduler, BongTangentScheduler,\n        CommonSigmaScheduler, RadauIIAScheduler, LangevinDynamicsScheduler,\n        RiemannianFlowScheduler,\n        # sdnext schedulers\n        FlowUniPCMultistepScheduler, FlashFlowMatchEulerDiscreteScheduler, FlowMatchDPMSolverMultistepScheduler,\n    ]\n    for cls in flow_schedulers:\n        test_scheduler(cls.__name__, cls, {\"prediction_type\": \"flow_prediction\", \"use_flow_sigmas\": True})\n\n    log.warning('type=\"sdnext\"')\n    extended_schedulers = [\n        VDMScheduler,\n        UFOGenScheduler,\n        TDDScheduler,\n        TCDScheduler,\n        DCSolverMultistepScheduler,\n        BDIA_DDIMScheduler\n    ]\n    for prediction_type in [\"epsilon\", \"v_prediction\", \"sample\"]:\n        for cls in extended_schedulers:\n            test_scheduler(cls.__name__, cls, {\"prediction_type\": prediction_type})\n\nif __name__ == \"__main__\":\n    run_tests()\n"
  },
  {
    "path": "cli/test-tagger.py",
    "content": "#!/usr/bin/env python\n\"\"\"\nTagger Settings Test Suite\n\nTests all WaifuDiffusion and DeepBooru tagger settings to verify they're properly\nmapped and affect output correctly.\n\nUsage:\n    python cli/test-tagger.py [image_path]\n\nIf no image path is provided, uses a built-in test image.\n\"\"\"\n\nimport os\nimport sys\nimport time\n\n# Add parent directory to path for imports\nscript_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))\nsys.path.insert(0, script_dir)\nos.chdir(script_dir)\n\n# Suppress installer output during import\nos.environ['SD_INSTALL_QUIET'] = '1'\n\n# Initialize cmd_args properly with all argument groups\nimport modules.cmd_args\nimport installer\n\n# Add installer args to the parser\ninstaller.add_args(modules.cmd_args.parser)\n\n# Parse with empty args to get defaults\nmodules.cmd_args.parsed, _ = modules.cmd_args.parser.parse_known_args([])\n\n# Now we can safely import modules that depend on cmd_args\n\n\n# Default test images (in order of preference)\nDEFAULT_TEST_IMAGES = [\n    'html/sdnext-robot-2k.jpg',  # SD.Next robot mascot\n    'venv/lib/python3.13/site-packages/gradio/test_data/lion.jpg',\n    'venv/lib/python3.13/site-packages/gradio/test_data/cheetah1.jpg',\n    'venv/lib/python3.13/site-packages/skimage/data/astronaut.png',\n    'venv/lib/python3.13/site-packages/skimage/data/coffee.png',\n]\n\n\ndef find_test_image():\n    \"\"\"Find a suitable test image from defaults.\"\"\"\n    for img_path in DEFAULT_TEST_IMAGES:\n        full_path = os.path.join(script_dir, img_path)\n        if os.path.exists(full_path):\n            return full_path\n    return None\n\n\ndef create_test_image():\n    \"\"\"Create a simple test image as fallback.\"\"\"\n    from PIL import Image, ImageDraw\n    img = Image.new('RGB', (512, 512), color=(200, 150, 100))\n    draw = ImageDraw.Draw(img)\n    draw.ellipse([100, 100, 400, 400], fill=(255, 200, 150), outline=(100, 50, 0))\n    draw.rectangle([150, 200, 350, 350], fill=(150, 100, 200))\n    return img\n\n\nclass TaggerTest:\n    \"\"\"Test harness for tagger settings.\"\"\"\n\n    def __init__(self):\n        self.results = {'passed': [], 'failed': [], 'skipped': []}\n        self.test_image = None\n        self.waifudiffusion_loaded = False\n        self.deepbooru_loaded = False\n\n    def log_pass(self, msg):\n        print(f\"  [PASS] {msg}\")\n        self.results['passed'].append(msg)\n\n    def log_fail(self, msg):\n        print(f\"  [FAIL] {msg}\")\n        self.results['failed'].append(msg)\n\n    def log_skip(self, msg):\n        print(f\"  [SKIP] {msg}\")\n        self.results['skipped'].append(msg)\n\n    def log_warn(self, msg):\n        print(f\"  [WARN] {msg}\")\n        self.results['skipped'].append(msg)\n\n    def setup(self):\n        \"\"\"Load test image and models.\"\"\"\n        from PIL import Image\n\n        print(\"=\" * 70)\n        print(\"TAGGER SETTINGS TEST SUITE\")\n        print(\"=\" * 70)\n\n        # Get or create test image\n        if len(sys.argv) > 1 and os.path.exists(sys.argv[1]):\n            img_path = sys.argv[1]\n            print(f\"\\nUsing provided image: {img_path}\")\n            self.test_image = Image.open(img_path).convert('RGB')\n        else:\n            img_path = find_test_image()\n            if img_path:\n                print(f\"\\nUsing default test image: {img_path}\")\n                self.test_image = Image.open(img_path).convert('RGB')\n            else:\n                print(\"\\nNo test image found, creating synthetic image...\")\n                self.test_image = create_test_image()\n\n        print(f\"Image size: {self.test_image.size}\")\n\n        # Load models\n        print(\"\\nLoading models...\")\n        from modules.interrogate import waifudiffusion, deepbooru\n\n        t0 = time.time()\n        self.waifudiffusion_loaded = waifudiffusion.load_model()\n        print(f\"  WaifuDiffusion: {'loaded' if self.waifudiffusion_loaded else 'FAILED'} ({time.time()-t0:.1f}s)\")\n\n        t0 = time.time()\n        self.deepbooru_loaded = deepbooru.load_model()\n        print(f\"  DeepBooru: {'loaded' if self.deepbooru_loaded else 'FAILED'} ({time.time()-t0:.1f}s)\")\n\n    def cleanup(self):\n        \"\"\"Unload models and free memory.\"\"\"\n        print(\"\\n\" + \"=\" * 70)\n        print(\"CLEANUP\")\n        print(\"=\" * 70)\n\n        from modules.interrogate import waifudiffusion, deepbooru\n        from modules import devices\n\n        waifudiffusion.unload_model()\n        deepbooru.unload_model()\n        devices.torch_gc(force=True)\n        print(\"  Models unloaded\")\n\n    def print_summary(self):\n        \"\"\"Print test summary.\"\"\"\n        print(\"\\n\" + \"=\" * 70)\n        print(\"TEST SUMMARY\")\n        print(\"=\" * 70)\n\n        print(f\"\\n  PASSED:  {len(self.results['passed'])}\")\n        for item in self.results['passed']:\n            print(f\"    - {item}\")\n\n        print(f\"\\n  FAILED:  {len(self.results['failed'])}\")\n        for item in self.results['failed']:\n            print(f\"    - {item}\")\n\n        print(f\"\\n  SKIPPED: {len(self.results['skipped'])}\")\n        for item in self.results['skipped']:\n            print(f\"    - {item}\")\n\n        total = len(self.results['passed']) + len(self.results['failed'])\n        if total > 0:\n            success_rate = len(self.results['passed']) / total * 100\n            print(f\"\\n  SUCCESS RATE: {success_rate:.1f}% ({len(self.results['passed'])}/{total})\")\n\n        print(\"\\n\" + \"=\" * 70)\n\n    # =========================================================================\n    # TEST: ONNX Providers Detection\n    # =========================================================================\n    def test_onnx_providers(self):\n        \"\"\"Verify ONNX runtime providers are properly detected.\"\"\"\n        print(\"\\n\" + \"=\" * 70)\n        print(\"TEST: ONNX Providers Detection\")\n        print(\"=\" * 70)\n\n        from modules import devices\n\n        # Test 1: onnxruntime can be imported\n        try:\n            import onnxruntime as ort\n            self.log_pass(f\"onnxruntime imported: version={ort.__version__}\")\n        except ImportError as e:\n            self.log_fail(f\"onnxruntime import failed: {e}\")\n            return\n\n        # Test 2: Get available providers\n        available = ort.get_available_providers()\n        if available and len(available) > 0:\n            self.log_pass(f\"Available providers: {available}\")\n        else:\n            self.log_fail(\"No ONNX providers available\")\n            return\n\n        # Test 3: devices.onnx is properly configured\n        if devices.onnx is not None and len(devices.onnx) > 0:\n            self.log_pass(f\"devices.onnx configured: {devices.onnx}\")\n        else:\n            self.log_fail(f\"devices.onnx not configured: {devices.onnx}\")\n\n        # Test 4: Configured providers exist in available providers\n        for provider in devices.onnx:\n            if provider in available:\n                self.log_pass(f\"Provider '{provider}' is available\")\n            else:\n                self.log_fail(f\"Provider '{provider}' configured but not available\")\n\n        # Test 5: If WaifuDiffusion loaded, check session providers\n        if self.waifudiffusion_loaded:\n            from modules.interrogate import waifudiffusion\n            if waifudiffusion.tagger.session is not None:\n                session_providers = waifudiffusion.tagger.session.get_providers()\n                self.log_pass(f\"WaifuDiffusion session providers: {session_providers}\")\n            else:\n                self.log_skip(\"WaifuDiffusion session not initialized\")\n\n    # =========================================================================\n    # TEST: Memory Management (Offload/Reload/Unload)\n    # =========================================================================\n    def get_memory_stats(self):\n        \"\"\"Get current GPU and CPU memory usage.\"\"\"\n        import torch\n\n        stats = {}\n\n        # GPU memory (if CUDA available)\n        if torch.cuda.is_available():\n            torch.cuda.synchronize()\n            stats['gpu_allocated'] = torch.cuda.memory_allocated() / 1024 / 1024  # MB\n            stats['gpu_reserved'] = torch.cuda.memory_reserved() / 1024 / 1024  # MB\n        else:\n            stats['gpu_allocated'] = 0\n            stats['gpu_reserved'] = 0\n\n        # CPU/RAM memory (try psutil, fallback to basic)\n        try:\n            import psutil\n            process = psutil.Process()\n            stats['ram_used'] = process.memory_info().rss / 1024 / 1024  # MB\n        except ImportError:\n            stats['ram_used'] = 0\n\n        return stats\n\n    def test_memory_management(self):\n        \"\"\"Test model offload to RAM, reload to GPU, and unload with memory monitoring.\"\"\"\n        print(\"\\n\" + \"=\" * 70)\n        print(\"TEST: Memory Management (Offload/Reload/Unload)\")\n        print(\"=\" * 70)\n\n        import torch\n        import gc\n        from modules import devices\n        from modules.interrogate import waifudiffusion, deepbooru\n\n        # Memory leak tolerance (MB) - some variance is expected\n        GPU_LEAK_TOLERANCE_MB = 50\n        RAM_LEAK_TOLERANCE_MB = 200\n\n        # =====================================================================\n        # DeepBooru: Test GPU/CPU movement with memory monitoring\n        # =====================================================================\n        if self.deepbooru_loaded:\n            print(\"\\n  DeepBooru Memory Management:\")\n\n            # Baseline memory before any operations\n            gc.collect()\n            if torch.cuda.is_available():\n                torch.cuda.empty_cache()\n            baseline = self.get_memory_stats()\n            print(f\"    Baseline: GPU={baseline['gpu_allocated']:.1f}MB, RAM={baseline['ram_used']:.1f}MB\")\n\n            # Test 1: Check initial state (should be on CPU after load)\n            initial_device = next(deepbooru.model.model.parameters()).device\n            print(f\"    Initial device: {initial_device}\")\n            if initial_device.type == 'cpu':\n                self.log_pass(\"DeepBooru: initial state on CPU\")\n            else:\n                self.log_pass(f\"DeepBooru: initial state on {initial_device}\")\n\n            # Test 2: Move to GPU (start)\n            deepbooru.model.start()\n            gpu_device = next(deepbooru.model.model.parameters()).device\n            after_gpu = self.get_memory_stats()\n            print(f\"    After start(): {gpu_device} | GPU={after_gpu['gpu_allocated']:.1f}MB (+{after_gpu['gpu_allocated']-baseline['gpu_allocated']:.1f}MB)\")\n            if gpu_device.type == devices.device.type:\n                self.log_pass(f\"DeepBooru: moved to GPU ({gpu_device})\")\n            else:\n                self.log_fail(f\"DeepBooru: failed to move to GPU, got {gpu_device}\")\n\n            # Test 3: Run inference while on GPU\n            try:\n                tags = deepbooru.model.tag_multi(self.test_image, max_tags=3)\n                after_infer = self.get_memory_stats()\n                print(f\"    After inference: GPU={after_infer['gpu_allocated']:.1f}MB\")\n                if tags:\n                    self.log_pass(f\"DeepBooru: inference on GPU works ({tags[:30]}...)\")\n                else:\n                    self.log_fail(\"DeepBooru: inference on GPU returned empty\")\n            except Exception as e:\n                self.log_fail(f\"DeepBooru: inference on GPU failed: {e}\")\n\n            # Test 4: Offload to CPU (stop)\n            deepbooru.model.stop()\n            gc.collect()\n            if torch.cuda.is_available():\n                torch.cuda.empty_cache()\n            after_offload = self.get_memory_stats()\n            cpu_device = next(deepbooru.model.model.parameters()).device\n            print(f\"    After stop(): {cpu_device} | GPU={after_offload['gpu_allocated']:.1f}MB, RAM={after_offload['ram_used']:.1f}MB\")\n            if cpu_device.type == 'cpu':\n                self.log_pass(\"DeepBooru: offloaded to CPU\")\n            else:\n                self.log_fail(f\"DeepBooru: failed to offload, still on {cpu_device}\")\n\n            # Check GPU memory returned to near baseline after offload\n            gpu_diff = after_offload['gpu_allocated'] - baseline['gpu_allocated']\n            if gpu_diff <= GPU_LEAK_TOLERANCE_MB:\n                self.log_pass(f\"DeepBooru: GPU memory cleared after offload (diff={gpu_diff:.1f}MB)\")\n            else:\n                self.log_fail(f\"DeepBooru: GPU memory leak after offload (diff={gpu_diff:.1f}MB > {GPU_LEAK_TOLERANCE_MB}MB)\")\n\n            # Test 5: Full cycle - reload and run again\n            deepbooru.model.start()\n            try:\n                tags = deepbooru.model.tag_multi(self.test_image, max_tags=3)\n                if tags:\n                    self.log_pass(\"DeepBooru: reload cycle works\")\n                else:\n                    self.log_fail(\"DeepBooru: reload cycle returned empty\")\n            except Exception as e:\n                self.log_fail(f\"DeepBooru: reload cycle failed: {e}\")\n            deepbooru.model.stop()\n\n            # Test 6: Full unload with memory check\n            deepbooru.unload_model()\n            gc.collect()\n            if torch.cuda.is_available():\n                torch.cuda.empty_cache()\n            after_unload = self.get_memory_stats()\n            print(f\"    After unload: GPU={after_unload['gpu_allocated']:.1f}MB, RAM={after_unload['ram_used']:.1f}MB\")\n\n            if deepbooru.model.model is None:\n                self.log_pass(\"DeepBooru: unload successful\")\n            else:\n                self.log_fail(\"DeepBooru: unload failed, model still exists\")\n\n            # Check for memory leaks after full unload\n            gpu_leak = after_unload['gpu_allocated'] - baseline['gpu_allocated']\n            ram_leak = after_unload['ram_used'] - baseline['ram_used']\n            if gpu_leak <= GPU_LEAK_TOLERANCE_MB:\n                self.log_pass(f\"DeepBooru: no GPU memory leak after unload (diff={gpu_leak:.1f}MB)\")\n            else:\n                self.log_fail(f\"DeepBooru: GPU memory leak detected (diff={gpu_leak:.1f}MB > {GPU_LEAK_TOLERANCE_MB}MB)\")\n\n            if ram_leak <= RAM_LEAK_TOLERANCE_MB:\n                self.log_pass(f\"DeepBooru: no RAM leak after unload (diff={ram_leak:.1f}MB)\")\n            else:\n                self.log_warn(f\"DeepBooru: RAM increased after unload (diff={ram_leak:.1f}MB) - may be caching\")\n\n            # Reload for remaining tests\n            deepbooru.load_model()\n\n        # =====================================================================\n        # WaifuDiffusion: Test session lifecycle with memory monitoring\n        # =====================================================================\n        if self.waifudiffusion_loaded:\n            print(\"\\n  WaifuDiffusion Memory Management:\")\n\n            # Baseline memory\n            gc.collect()\n            if torch.cuda.is_available():\n                torch.cuda.empty_cache()\n            baseline = self.get_memory_stats()\n            print(f\"    Baseline: GPU={baseline['gpu_allocated']:.1f}MB, RAM={baseline['ram_used']:.1f}MB\")\n\n            # Test 1: Session exists\n            if waifudiffusion.tagger.session is not None:\n                self.log_pass(\"WaifuDiffusion: session loaded\")\n            else:\n                self.log_fail(\"WaifuDiffusion: session not loaded\")\n                return\n\n            # Test 2: Get current providers\n            providers = waifudiffusion.tagger.session.get_providers()\n            print(f\"    Active providers: {providers}\")\n            self.log_pass(f\"WaifuDiffusion: using providers {providers}\")\n\n            # Test 3: Run inference\n            try:\n                tags = waifudiffusion.tagger.predict(self.test_image, max_tags=3)\n                after_infer = self.get_memory_stats()\n                print(f\"    After inference: GPU={after_infer['gpu_allocated']:.1f}MB, RAM={after_infer['ram_used']:.1f}MB\")\n                if tags:\n                    self.log_pass(f\"WaifuDiffusion: inference works ({tags[:30]}...)\")\n                else:\n                    self.log_fail(\"WaifuDiffusion: inference returned empty\")\n            except Exception as e:\n                self.log_fail(f\"WaifuDiffusion: inference failed: {e}\")\n\n            # Test 4: Unload session with memory check\n            model_name = waifudiffusion.tagger.model_name\n            waifudiffusion.unload_model()\n            gc.collect()\n            if torch.cuda.is_available():\n                torch.cuda.empty_cache()\n            after_unload = self.get_memory_stats()\n            print(f\"    After unload: GPU={after_unload['gpu_allocated']:.1f}MB, RAM={after_unload['ram_used']:.1f}MB\")\n\n            if waifudiffusion.tagger.session is None:\n                self.log_pass(\"WaifuDiffusion: unload successful\")\n            else:\n                self.log_fail(\"WaifuDiffusion: unload failed, session still exists\")\n\n            # Check for memory leaks after unload\n            gpu_leak = after_unload['gpu_allocated'] - baseline['gpu_allocated']\n            ram_leak = after_unload['ram_used'] - baseline['ram_used']\n            if gpu_leak <= GPU_LEAK_TOLERANCE_MB:\n                self.log_pass(f\"WaifuDiffusion: no GPU memory leak after unload (diff={gpu_leak:.1f}MB)\")\n            else:\n                self.log_fail(f\"WaifuDiffusion: GPU memory leak detected (diff={gpu_leak:.1f}MB > {GPU_LEAK_TOLERANCE_MB}MB)\")\n\n            if ram_leak <= RAM_LEAK_TOLERANCE_MB:\n                self.log_pass(f\"WaifuDiffusion: no RAM leak after unload (diff={ram_leak:.1f}MB)\")\n            else:\n                self.log_warn(f\"WaifuDiffusion: RAM increased after unload (diff={ram_leak:.1f}MB) - may be caching\")\n\n            # Test 5: Reload session\n            waifudiffusion.load_model(model_name)\n            after_reload = self.get_memory_stats()\n            print(f\"    After reload: GPU={after_reload['gpu_allocated']:.1f}MB, RAM={after_reload['ram_used']:.1f}MB\")\n            if waifudiffusion.tagger.session is not None:\n                self.log_pass(\"WaifuDiffusion: reload successful\")\n            else:\n                self.log_fail(\"WaifuDiffusion: reload failed\")\n\n            # Test 6: Inference after reload\n            try:\n                tags = waifudiffusion.tagger.predict(self.test_image, max_tags=3)\n                if tags:\n                    self.log_pass(\"WaifuDiffusion: inference after reload works\")\n                else:\n                    self.log_fail(\"WaifuDiffusion: inference after reload returned empty\")\n            except Exception as e:\n                self.log_fail(f\"WaifuDiffusion: inference after reload failed: {e}\")\n\n            # Final memory check after full cycle\n            gc.collect()\n            if torch.cuda.is_available():\n                torch.cuda.empty_cache()\n            final = self.get_memory_stats()\n            print(f\"    Final (after full cycle): GPU={final['gpu_allocated']:.1f}MB, RAM={final['ram_used']:.1f}MB\")\n\n    # =========================================================================\n    # TEST: Settings Existence\n    # =========================================================================\n    def test_settings_exist(self):\n        \"\"\"Verify all tagger settings exist in shared.opts.\"\"\"\n        print(\"\\n\" + \"=\" * 70)\n        print(\"TEST: Settings Existence\")\n        print(\"=\" * 70)\n\n        from modules import shared\n\n        settings = [\n            ('tagger_threshold', float),\n            ('tagger_include_rating', bool),\n            ('tagger_max_tags', int),\n            ('tagger_sort_alpha', bool),\n            ('tagger_use_spaces', bool),\n            ('tagger_escape_brackets', bool),\n            ('tagger_exclude_tags', str),\n            ('tagger_show_scores', bool),\n            ('waifudiffusion_model', str),\n            ('waifudiffusion_character_threshold', float),\n            ('interrogate_offload', bool),\n        ]\n\n        for setting, _expected_type in settings:\n            if hasattr(shared.opts, setting):\n                value = getattr(shared.opts, setting)\n                self.log_pass(f\"{setting} = {value!r}\")\n            else:\n                self.log_fail(f\"{setting} - NOT FOUND\")\n\n    # =========================================================================\n    # TEST: Parameter Effect - Tests a single parameter on both taggers\n    # =========================================================================\n    def test_parameter(self, param_name, test_func, waifudiffusion_supported=True, deepbooru_supported=True):\n        \"\"\"Test a parameter on both WaifuDiffusion and DeepBooru.\"\"\"\n        print(f\"\\n  Testing: {param_name}\")\n\n        if waifudiffusion_supported and self.waifudiffusion_loaded:\n            try:\n                result = test_func('waifudiffusion')\n                if result is True:\n                    self.log_pass(f\"WaifuDiffusion: {param_name}\")\n                elif result is False:\n                    self.log_fail(f\"WaifuDiffusion: {param_name}\")\n                else:\n                    self.log_skip(f\"WaifuDiffusion: {param_name} - {result}\")\n            except Exception as e:\n                self.log_fail(f\"WaifuDiffusion: {param_name} - {e}\")\n        elif waifudiffusion_supported:\n            self.log_skip(f\"WaifuDiffusion: {param_name} - model not loaded\")\n\n        if deepbooru_supported and self.deepbooru_loaded:\n            try:\n                result = test_func('deepbooru')\n                if result is True:\n                    self.log_pass(f\"DeepBooru: {param_name}\")\n                elif result is False:\n                    self.log_fail(f\"DeepBooru: {param_name}\")\n                else:\n                    self.log_skip(f\"DeepBooru: {param_name} - {result}\")\n            except Exception as e:\n                self.log_fail(f\"DeepBooru: {param_name} - {e}\")\n        elif deepbooru_supported:\n            self.log_skip(f\"DeepBooru: {param_name} - model not loaded\")\n\n    def tag(self, tagger, **kwargs):\n        \"\"\"Helper to call the appropriate tagger.\"\"\"\n        if tagger == 'waifudiffusion':\n            from modules.interrogate import waifudiffusion\n            return waifudiffusion.tagger.predict(self.test_image, **kwargs)\n        else:\n            from modules.interrogate import deepbooru\n            return deepbooru.model.tag(self.test_image, **kwargs)\n\n    # =========================================================================\n    # TEST: general_threshold\n    # =========================================================================\n    def test_threshold(self):\n        \"\"\"Test that threshold affects tag count.\"\"\"\n        print(\"\\n\" + \"=\" * 70)\n        print(\"TEST: general_threshold effect\")\n        print(\"=\" * 70)\n\n        def check_threshold(tagger):\n            tags_high = self.tag(tagger, general_threshold=0.9)\n            tags_low = self.tag(tagger, general_threshold=0.1)\n\n            count_high = len(tags_high.split(', ')) if tags_high else 0\n            count_low = len(tags_low.split(', ')) if tags_low else 0\n\n            print(f\"    {tagger}: threshold=0.9 -> {count_high} tags, threshold=0.1 -> {count_low} tags\")\n\n            if count_low > count_high:\n                return True\n            elif count_low == count_high == 0:\n                return \"no tags returned\"\n            else:\n                return \"threshold effect unclear\"\n\n        self.test_parameter('general_threshold', check_threshold)\n\n    # =========================================================================\n    # TEST: max_tags\n    # =========================================================================\n    def test_max_tags(self):\n        \"\"\"Test that max_tags limits output.\"\"\"\n        print(\"\\n\" + \"=\" * 70)\n        print(\"TEST: max_tags effect\")\n        print(\"=\" * 70)\n\n        def check_max_tags(tagger):\n            tags_5 = self.tag(tagger, general_threshold=0.1, max_tags=5)\n            tags_50 = self.tag(tagger, general_threshold=0.1, max_tags=50)\n\n            count_5 = len(tags_5.split(', ')) if tags_5 else 0\n            count_50 = len(tags_50.split(', ')) if tags_50 else 0\n\n            print(f\"    {tagger}: max_tags=5 -> {count_5} tags, max_tags=50 -> {count_50} tags\")\n\n            return count_5 <= 5\n\n        self.test_parameter('max_tags', check_max_tags)\n\n    # =========================================================================\n    # TEST: use_spaces\n    # =========================================================================\n    def test_use_spaces(self):\n        \"\"\"Test that use_spaces converts underscores to spaces.\"\"\"\n        print(\"\\n\" + \"=\" * 70)\n        print(\"TEST: use_spaces effect\")\n        print(\"=\" * 70)\n\n        def check_use_spaces(tagger):\n            tags_under = self.tag(tagger, use_spaces=False, max_tags=10)\n            tags_space = self.tag(tagger, use_spaces=True, max_tags=10)\n\n            print(f\"    {tagger} use_spaces=False: {tags_under[:50]}...\")\n            print(f\"    {tagger} use_spaces=True:  {tags_space[:50]}...\")\n\n            # Check if underscores are converted to spaces\n            has_underscore_before = '_' in tags_under\n            has_underscore_after = '_' in tags_space.replace(', ', ',')  # ignore comma-space\n\n            # If there were underscores before but not after, it worked\n            if has_underscore_before and not has_underscore_after:\n                return True\n            # If there were never underscores, inconclusive\n            elif not has_underscore_before:\n                return \"no underscores in tags to convert\"\n            else:\n                return False\n\n        self.test_parameter('use_spaces', check_use_spaces)\n\n    # =========================================================================\n    # TEST: escape_brackets\n    # =========================================================================\n    def test_escape_brackets(self):\n        \"\"\"Test that escape_brackets escapes special characters.\"\"\"\n        print(\"\\n\" + \"=\" * 70)\n        print(\"TEST: escape_brackets effect\")\n        print(\"=\" * 70)\n\n        def check_escape_brackets(tagger):\n            tags_escaped = self.tag(tagger, escape_brackets=True, max_tags=30, general_threshold=0.1)\n            tags_raw = self.tag(tagger, escape_brackets=False, max_tags=30, general_threshold=0.1)\n\n            print(f\"    {tagger} escape=True:  {tags_escaped[:60]}...\")\n            print(f\"    {tagger} escape=False: {tags_raw[:60]}...\")\n\n            # Check for escaped brackets (\\\\( or \\\\))\n            has_escaped = '\\\\(' in tags_escaped or '\\\\)' in tags_escaped\n            has_unescaped = '(' in tags_raw.replace('\\\\(', '') or ')' in tags_raw.replace('\\\\)', '')\n\n            if has_escaped:\n                return True\n            elif has_unescaped:\n                # Has brackets but not escaped - fail\n                return False\n            else:\n                return \"no brackets in tags to escape\"\n\n        self.test_parameter('escape_brackets', check_escape_brackets)\n\n    # =========================================================================\n    # TEST: sort_alpha\n    # =========================================================================\n    def test_sort_alpha(self):\n        \"\"\"Test that sort_alpha sorts tags alphabetically.\"\"\"\n        print(\"\\n\" + \"=\" * 70)\n        print(\"TEST: sort_alpha effect\")\n        print(\"=\" * 70)\n\n        def check_sort_alpha(tagger):\n            tags_conf = self.tag(tagger, sort_alpha=False, max_tags=20, general_threshold=0.1)\n            tags_alpha = self.tag(tagger, sort_alpha=True, max_tags=20, general_threshold=0.1)\n\n            list_conf = [t.strip() for t in tags_conf.split(',')]\n            list_alpha = [t.strip() for t in tags_alpha.split(',')]\n\n            print(f\"    {tagger} by_confidence: {', '.join(list_conf[:5])}...\")\n            print(f\"    {tagger} alphabetical:  {', '.join(list_alpha[:5])}...\")\n\n            is_sorted = list_alpha == sorted(list_alpha)\n            return is_sorted\n\n        self.test_parameter('sort_alpha', check_sort_alpha)\n\n    # =========================================================================\n    # TEST: exclude_tags\n    # =========================================================================\n    def test_exclude_tags(self):\n        \"\"\"Test that exclude_tags removes specified tags.\"\"\"\n        print(\"\\n\" + \"=\" * 70)\n        print(\"TEST: exclude_tags effect\")\n        print(\"=\" * 70)\n\n        def check_exclude_tags(tagger):\n            tags_all = self.tag(tagger, max_tags=50, general_threshold=0.1, exclude_tags='')\n            tag_list = [t.strip().replace(' ', '_') for t in tags_all.split(',')]\n\n            if len(tag_list) < 2:\n                return \"not enough tags to test\"\n\n            # Exclude the first tag\n            tag_to_exclude = tag_list[0]\n            tags_filtered = self.tag(tagger, max_tags=50, general_threshold=0.1, exclude_tags=tag_to_exclude)\n\n            print(f\"    {tagger} without exclusion: {tags_all[:50]}...\")\n            print(f\"    {tagger} excluding '{tag_to_exclude}': {tags_filtered[:50]}...\")\n\n            # Check if the exact tag was removed by parsing the filtered list\n            filtered_list = [t.strip().replace(' ', '_') for t in tags_filtered.split(',')]\n            # Also check space variant\n            tag_space_variant = tag_to_exclude.replace('_', ' ')\n            tag_present = tag_to_exclude in filtered_list or tag_space_variant in [t.strip() for t in tags_filtered.split(',')]\n            return not tag_present\n\n        self.test_parameter('exclude_tags', check_exclude_tags)\n\n    # =========================================================================\n    # TEST: tagger_show_scores (via shared.opts)\n    # =========================================================================\n    def test_show_scores(self):\n        \"\"\"Test that tagger_show_scores adds confidence scores.\"\"\"\n        print(\"\\n\" + \"=\" * 70)\n        print(\"TEST: tagger_show_scores effect\")\n        print(\"=\" * 70)\n\n        from modules import shared\n\n        def check_show_scores(tagger):\n            original = shared.opts.tagger_show_scores\n\n            shared.opts.tagger_show_scores = False\n            tags_no_scores = self.tag(tagger, max_tags=5)\n\n            shared.opts.tagger_show_scores = True\n            tags_with_scores = self.tag(tagger, max_tags=5)\n\n            shared.opts.tagger_show_scores = original\n\n            print(f\"    {tagger} show_scores=False: {tags_no_scores[:50]}...\")\n            print(f\"    {tagger} show_scores=True:  {tags_with_scores[:50]}...\")\n\n            has_scores = ':' in tags_with_scores and '(' in tags_with_scores\n            no_scores = ':' not in tags_no_scores\n\n            return has_scores and no_scores\n\n        self.test_parameter('tagger_show_scores', check_show_scores)\n\n    # =========================================================================\n    # TEST: include_rating\n    # =========================================================================\n    def test_include_rating(self):\n        \"\"\"Test that include_rating includes/excludes rating tags.\"\"\"\n        print(\"\\n\" + \"=\" * 70)\n        print(\"TEST: include_rating effect\")\n        print(\"=\" * 70)\n\n        def check_include_rating(tagger):\n            tags_no_rating = self.tag(tagger, include_rating=False, max_tags=100, general_threshold=0.01)\n            tags_with_rating = self.tag(tagger, include_rating=True, max_tags=100, general_threshold=0.01)\n\n            print(f\"    {tagger} include_rating=False: {tags_no_rating[:60]}...\")\n            print(f\"    {tagger} include_rating=True:  {tags_with_rating[:60]}...\")\n\n            # Rating tags typically start with \"rating:\" or are like \"safe\", \"questionable\", \"explicit\"\n            rating_keywords = ['rating:', 'safe', 'questionable', 'explicit', 'general', 'sensitive']\n\n            has_rating_before = any(kw in tags_no_rating.lower() for kw in rating_keywords)\n            has_rating_after = any(kw in tags_with_rating.lower() for kw in rating_keywords)\n\n            if has_rating_after and not has_rating_before:\n                return True\n            elif has_rating_after and has_rating_before:\n                return \"rating tags appear in both (may need very low threshold)\"\n            elif not has_rating_after:\n                return \"no rating tags detected\"\n            else:\n                return False\n\n        self.test_parameter('include_rating', check_include_rating)\n\n    # =========================================================================\n    # TEST: character_threshold (WaifuDiffusion only)\n    # =========================================================================\n    def test_character_threshold(self):\n        \"\"\"Test that character_threshold affects character tag count (WaifuDiffusion only).\"\"\"\n        print(\"\\n\" + \"=\" * 70)\n        print(\"TEST: character_threshold effect (WaifuDiffusion only)\")\n        print(\"=\" * 70)\n\n        def check_character_threshold(tagger):\n            if tagger != 'waifudiffusion':\n                return \"not supported\"\n\n            # Character threshold only affects character tags\n            # We need an image with character tags to properly test this\n            tags_high = self.tag(tagger, character_threshold=0.99, general_threshold=0.5)\n            tags_low = self.tag(tagger, character_threshold=0.1, general_threshold=0.5)\n\n            print(f\"    {tagger} char_threshold=0.99: {tags_high[:50]}...\")\n            print(f\"    {tagger} char_threshold=0.10: {tags_low[:50]}...\")\n\n            # If thresholds are different, the setting is at least being applied\n            # Hard to verify without an image with known character tags\n            return True  # Setting exists and is applied (verified by code inspection)\n\n        self.test_parameter('character_threshold', check_character_threshold, deepbooru_supported=False)\n\n    # =========================================================================\n    # TEST: Unified Interface\n    # =========================================================================\n    def test_unified_interface(self):\n        \"\"\"Test that the unified tagger interface works for both backends.\"\"\"\n        print(\"\\n\" + \"=\" * 70)\n        print(\"TEST: Unified tagger.tag() interface\")\n        print(\"=\" * 70)\n\n        from modules.interrogate import tagger\n\n        # Test WaifuDiffusion through unified interface\n        if self.waifudiffusion_loaded:\n            try:\n                models = tagger.get_models()\n                waifudiffusion_model = next((m for m in models if m != 'DeepBooru'), None)\n                if waifudiffusion_model:\n                    tags = tagger.tag(self.test_image, model_name=waifudiffusion_model, max_tags=5)\n                    print(f\"    WaifuDiffusion ({waifudiffusion_model}): {tags[:50]}...\")\n                    self.log_pass(\"Unified interface: WaifuDiffusion\")\n            except Exception as e:\n                self.log_fail(f\"Unified interface: WaifuDiffusion - {e}\")\n\n        # Test DeepBooru through unified interface\n        if self.deepbooru_loaded:\n            try:\n                tags = tagger.tag(self.test_image, model_name='DeepBooru', max_tags=5)\n                print(f\"    DeepBooru: {tags[:50]}...\")\n                self.log_pass(\"Unified interface: DeepBooru\")\n            except Exception as e:\n                self.log_fail(f\"Unified interface: DeepBooru - {e}\")\n\n    def run_all_tests(self):\n        \"\"\"Run all tests.\"\"\"\n        self.setup()\n\n        self.test_onnx_providers()\n        self.test_memory_management()\n        self.test_settings_exist()\n        self.test_threshold()\n        self.test_max_tags()\n        self.test_use_spaces()\n        self.test_escape_brackets()\n        self.test_sort_alpha()\n        self.test_exclude_tags()\n        self.test_show_scores()\n        self.test_include_rating()\n        self.test_character_threshold()\n        self.test_unified_interface()\n\n        self.cleanup()\n        self.print_summary()\n\n        return len(self.results['failed']) == 0\n\n\nif __name__ == \"__main__\":\n    test = TaggerTest()\n    success = test.run_all_tests()\n    sys.exit(0 if success else 1)\n"
  },
  {
    "path": "cli/test-weighted-lists.py",
    "content": "#!/usr/bin/env python\n\nimport sys, os\nfrom collections import Counter\n\nscript_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))\nos.chdir(script_dir)\n\n# --- test defition -------------------------------\n# library\nfn = r'./modules/styles.py'\n# tested function\nfuncname = 'select_from_weighted_list'\n# random needed\nns = {'Dict': dict, 'random': __import__('random')}\n# number of samples to test\ntries = 2000\n# allowed deviation in percentage points\ntolerance_pct = 5\n# tests\ntests = [\n    # - empty\n    [\"\", { '': 100 } ], \n    # - no weights\n    [ \"red|blonde|black\", { 'black': 33, 'red': 33, 'blonde': 33 } ], \n    # - full weights <= 1\n    [ \"red:0.1|blonde:0.9\", { 'blonde': 90, 'red': 10 } ], \n    # - weights > 1 to test normalization\n    [ \"red:1|blonde:2|black:5\", { 'blonde': 25, 'red': 12.5, 'black': 62.5 } ], \n    # - disabling 0 weights to force one result\n    [ \"red:0|blonde|black:0\", { 'blonde': 100 } ], \n    # - weights <= 1 with distribution of the leftover\n    [ \"red:0.5|blonde|black:0.3|brown\", { 'red': 50, 'black': 30, 'brown': 10, 'blonde': 10 } ], \n    # - weights > 1, unweightes should get default of 1\n    [ \"red:2|blonde|black\", { 'red': 50, 'blonde': 25, 'black': 25 } ], \n    # - ignore content of ()\n    [ \"red:0.5|(blonde:1.3)\", { 'red': 50, '(blonde:1.3)': 50 } ], \n    # - ignore content of []\n    [ \"red:0.5|[stuff:1.3]\", { '[stuff:1.3]': 50, 'red': 50 } ], \n    # - ignore content of <>\n    [ \"red:0.5|<lora:1.0>\", { '<lora:1.0>': 50, 'red': 50 } ] \n]\n\n# -------------------------------------------------\n\nwith open(fn, 'r', encoding='utf-8') as f:\n    src = f.read()\n    start = src.find('def ' + funcname)\n    if start == -1:\n        print('Function not found')\n        sys.exit(1)\n    # find next top-level def or class after start\n    next_def = src.find('\\ndef ', start+1)\n    next_class = src.find('\\nclass ', start+1)\n    end_candidates = [i for i in (next_def, next_class) if i != -1]\n    end = min(end_candidates) if end_candidates else len(src)\n    func_src = src[start:end]\n\n    exec(func_src, ns)\n    func = ns.get(funcname)\n    if func is None:\n        print('Failed to extract function')\n        sys.exit(1)\n\n    print('Running' , tries, 'isolated quick tests for ' + funcname + ':\\n')\n\n    \"\"\"Print test summary.\"\"\"\n    print(\"\\n\" + \"=\" * 70)\n    print(\"TEST SUMMARY\")\n    print(\"=\" * 70)\n\n    for t in tests:\n        print('INPUT:', t)\n        samples = [func(t[0]) for _ in range(tries)]\n        c = Counter(samples)\n        print(\"SAMPLES: \", dict(c))\n\n        # validation\n        expected_pct = t[1]\n        expected_keys = set(expected_pct.keys())\n        actual_keys = set(c.keys())\n        missing = expected_keys - actual_keys\n        unexpected = actual_keys - expected_keys\n\n        if missing or unexpected:\n            if missing:\n                print(\"MISSING: \", sorted(missing))\n            if unexpected:\n                print(\"UNEXPECTED: \", sorted(unexpected))\n            print(\"RESULT: FAILED (keys)\")\n            print('')\n            continue\n\n        failures = []\n        for k, pct in expected_pct.items():\n            expected_count = tries * (pct / 100.0)\n            actual_count = c.get(k, 0)\n            actual_pct = (actual_count / tries) * 100.0\n            if abs(actual_pct - pct) > tolerance_pct:\n                failures.append(\n                    f\"{k}: expected {pct:.1f}%, got {actual_pct:.1f}% \"\n                    f\"({actual_count}/{tries})\"\n                )\n\n        if failures:\n            print(\"OUT OF RANGE: \")\n            for line in failures:\n                print(\" - \" + line)\n            print(\"RESULT: FAILED (distribution)\")\n        else:\n            print(\"RESULT: PASSED\")\n        print('')"
  },
  {
    "path": "cli/util.py",
    "content": "#!/usr/bin/env python\n\"\"\"\ngeneric helper methods\n\"\"\"\n\nimport os\nimport string\nimport logging\nimport warnings\n\nlog_format = '%(asctime)s %(levelname)s: %(message)s'\nlogging.basicConfig(level = logging.INFO, format = log_format)\nwarnings.filterwarnings(action=\"ignore\", category=DeprecationWarning)\nwarnings.filterwarnings(action=\"ignore\", category=FutureWarning)\nwarnings.filterwarnings(action=\"ignore\", category=UserWarning)\nlog = logging.getLogger(\"sd\")\n\n\ndef set_logfile(logfile):\n    fh = logging.FileHandler(logfile)\n    formatter = logging.Formatter(log_format)\n    fh.setLevel(log.getEffectiveLevel())\n    fh.setFormatter(formatter)\n    log.addHandler(fh)\n    log.info({ 'log file': logfile })\n\n\ndef safestring(text: str):\n    lines = []\n    for line in text.splitlines():\n        lines.append(line.translate(str.maketrans('', '', string.punctuation)).strip())\n    res = ', '.join(lines)\n    return res[:1000]\n\n\ndef get_memory():\n    def gb(val: float):\n        return round(val / 1024 / 1024 / 1024, 2)\n    mem = {}\n    try:\n        import psutil\n        process = psutil.Process(os.getpid())\n        res = process.memory_info()\n        ram_total = 100 * res.rss / process.memory_percent()\n        ram = { 'free': gb(ram_total - res.rss), 'used': gb(res.rss), 'total': gb(ram_total) }\n        mem.update({ 'ram': ram })\n    except Exception as e:\n        mem.update({ 'ram': e })\n    try:\n        import torch\n        if torch.cuda.is_available():\n            s = torch.cuda.mem_get_info()\n            gpu = { 'free': gb(s[0]), 'used': gb(s[1] - s[0]), 'total': gb(s[1]) }\n            s = dict(torch.cuda.memory_stats('cuda'))\n            allocated = { 'current': gb(s['allocated_bytes.all.current']), 'peak': gb(s['allocated_bytes.all.peak']) }\n            reserved = { 'current': gb(s['reserved_bytes.all.current']), 'peak': gb(s['reserved_bytes.all.peak']) }\n            active = { 'current': gb(s['active_bytes.all.current']), 'peak': gb(s['active_bytes.all.peak']) }\n            inactive = { 'current': gb(s['inactive_split_bytes.all.current']), 'peak': gb(s['inactive_split_bytes.all.peak']) }\n            events = { 'retries': s['num_alloc_retries'], 'oom': s['num_ooms'] }\n            mem.update({\n                'gpu': gpu,\n                'gpu-active': active,\n                'gpu-allocated': allocated,\n                'gpu-reserved': reserved,\n                'gpu-inactive': inactive,\n                'events': events,\n            })\n    except Exception:\n        pass\n    return Map(mem)\n\n\nclass Map(dict): # pylint: disable=C0205\n    __slots__ = ('__dict__') # pylint: disable=superfluous-parens\n    def __init__(self, *args, **kwargs):\n        super(Map, self).__init__(*args, **kwargs) # pylint: disable=super-with-arguments\n        for arg in args:\n            if isinstance(arg, dict):\n                for k, v in arg.items():\n                    if isinstance(v, dict):\n                        v = Map(v)\n                    if isinstance(v, list):\n                        self.__convert(v)\n                    self[k] = v\n        if kwargs:\n            for k, v in kwargs.items():\n                if isinstance(v, dict):\n                    v = Map(v)\n                elif isinstance(v, list):\n                    self.__convert(v)\n                self[k] = v\n    def __convert(self, v):\n        for elem in range(0, len(v)): # pylint: disable=consider-using-enumerate\n            if isinstance(v[elem], dict):\n                v[elem] = Map(v[elem])\n            elif isinstance(v[elem], list):\n                self.__convert(v[elem])\n    def __getattr__(self, attr):\n        return self.get(attr)\n    def __setattr__(self, key, value):\n        self.__setitem__(key, value)\n    def __setitem__(self, key, value):\n        super(Map, self).__setitem__(key, value) # pylint: disable=super-with-arguments\n        self.__dict__.update({key: value})\n    def __delattr__(self, item):\n        self.__delitem__(item)\n    def __delitem__(self, key):\n        super(Map, self).__delitem__(key) # pylint: disable=super-with-arguments\n        del self.__dict__[key]\n\n\nif __name__ == \"__main__\":\n    pass\n"
  },
  {
    "path": "cli/validate-locale.py",
    "content": "#!/usr/bin/env python\n\nimport os\nimport sys\nimport json\nfrom rich import print # pylint: disable=redefined-builtin\n\nif __name__ == \"__main__\":\n    sys.argv.pop(0)\n    fn = sys.argv[0] if len(sys.argv) > 0 else 'html/locale_en.json'\n    if not os.path.isfile(fn):\n        print(f'File not found: {fn}')\n        sys.exit(1)\n    with open(fn, 'r', encoding=\"utf-8\") as f:\n        data = json.load(f)\n    keys = []\n    t_names = 0\n    t_hints = 0\n    t_localized = 0\n    t_long = 0\n    for k in data.keys():\n        names = len(data[k])\n        t_names += names\n        hints = len([k for k in data[k] if k[\"hint\"] != \"\"])\n        t_hints += hints\n        localized = len([k for k in data[k] if k[\"localized\"] != \"\"])\n        t_localized += localized\n        missing = names - hints\n        long = 0\n        for v in data[k]:\n            if v['label'] in keys:\n                print(f'  Duplicate: {k}.{v[\"label\"]}')\n            else:\n                if len(v['label']) > 63:\n                    long += 1\n                    print(f'  Long label: {k}.{v[\"label\"]}')\n                keys.append(v['label'])\n        t_long += long\n        print(f'Section: [bold magenta]{k.ljust(20)}[/bold magenta] entries={names} localized={\"[bold green]\" + str(localized) + \"[/bold green]\" if localized > 0 else \"0\"} long={\"[bold red]\" + str(long) + \"[/bold red]\" if long > 0 else \"0\"} hints={hints} missing={\"[bold red]\" + str(missing) + \"[/bold red]\" if missing > 0 else \"[bold green]0[/bold green]\"}')\n    print(f'Totals: entries={t_names} localized={localized} long={t_long} hints={t_hints} missing={t_names - t_hints}')\n"
  },
  {
    "path": "cli/video-extract.py",
    "content": "#!/usr/bin/env python\n\"\"\"\nuse ffmpeg for animation processing\n\"\"\"\nimport os\nimport json\nimport subprocess\nimport pathlib\nimport argparse\nimport filetype\nfrom util import log, Map\n\n\ndef probe(src: str):\n    cmd = f\"ffprobe -hide_banner -loglevel 0 -print_format json -show_format -show_streams \\\"{src}\\\"\"\n    result = subprocess.run(cmd, shell = True, capture_output = True, text = True, check = True)\n    data = json.loads(result.stdout)\n    stream = [x for x in data['streams'] if x[\"codec_type\"] == \"video\"][0]\n    fmt = data['format'] if 'format' in data else {}\n    res = {**stream, **fmt}\n    video = Map({\n        'codec': res.get('codec_name', 'unknown') + '/' + res.get('codec_tag_string', ''),\n        'resolution': [int(res.get('width', 0)), int(res.get('height', 0))],\n        'duration': float(res.get('duration', 0)),\n        'frames': int(res.get('nb_frames', 0)),\n        'bitrate': round(float(res.get('bit_rate', 0)) / 1024),\n    })\n    return video\n\n\ndef extract(src: str, dst: str, rate: float = 0.015, fps: float = 0, start = 0, end = 0):\n    images = []\n    if not os.path.isfile(src) or not filetype.is_video(src):\n        log.error({ 'extract': 'input is not movie file' })\n        return 0\n    dst = dst if dst.endswith('/') else dst + '/'\n\n    video = probe(src)\n    log.info({ 'extract': { 'source': src, **video } })\n\n    ssstart = f' -ss {start}' if start > 0 else ''\n    ssend = f' -to {video.duration - end}' if start > 0 else ''\n    filename = pathlib.Path(src).stem\n    if rate > 0:\n        cmd = f\"ffmpeg -hide_banner -y -loglevel info {ssstart} {ssend} -i \\\"{src}\\\" -filter:v \\\"select='gt(scene,{rate})',metadata=print\\\" -vsync vfr -frame_pts 1 \\\"{dst}{filename}-%05d.jpg\\\"\"\n    elif fps > 0:\n        cmd = f\"ffmpeg -hide_banner -y -loglevel info {ssstart} {ssend} -i \\\"{src}\\\" -r {fps} -vsync vfr -frame_pts 1 \\\"{dst}{filename}-%05d.jpg\\\"\"\n    else:\n        log.error({ 'extract': 'requires either rate or fps' })\n        return 0\n    log.debug({ 'extract': cmd })\n    pathlib.Path(dst).mkdir(parents = True, exist_ok = True)\n    result = subprocess.run(cmd, shell = True, capture_output = True, text = True, check = True)\n    for line in result.stderr.split('\\n'):\n        if 'pts_time' in line:\n            log.debug({ 'extract': { 'keyframe': line.strip().split(' ')[-1].split(':')[-1] } })\n    images = next(os.walk(dst))[2]\n    log.info({ 'extract': { 'destination': dst, 'keyframes': len(images), 'rate': rate, 'fps': fps } })\n    return len(images)\n\n\nif __name__ == \"__main__\":\n    parser = argparse.ArgumentParser(description=\"ffmpeg pipeline\")\n    parser.add_argument(\"--input\", type = str, required = True, help=\"input\")\n    parser.add_argument(\"--output\", type = str, required = True, help=\"output\")\n    parser.add_argument(\"--rate\", type = float, default = 0, required = False, help=\"extraction change rate threshold\")\n    parser.add_argument(\"--fps\", type = float, default = 0, required = False, help=\"extraction frames per second\")\n    parser.add_argument(\"--skipstart\", type = float, default = 1, required = False, help=\"skip time from start of video\")\n    parser.add_argument(\"--skipend\", type = float, default = 1, required = False, help=\"skip time to end of video\")\n    params = parser.parse_args()\n    extract(src = params.input, dst = params.output, rate = params.rate, fps = params.fps, start = params.skipstart, end = params.skipend)\n"
  },
  {
    "path": "cli/zluda-python.py",
    "content": "import os\nimport sys\nfrom typing import Dict, Mapping\n\n\nclass Interpreter:\n    env_globals: Dict\n    env_locals: Mapping\n\n    def __init__(self, env_globals, env_locals):\n        self.env_globals = env_globals\n        self.env_locals = env_locals\n\n    def execute(self, s: str):\n        try:\n            exec(s, self.env_globals, self.env_locals) # pylint: disable=exec-used\n        except Exception as e:\n            print(f'{e.__class__.__name__}: {e}')\n\n    def from_file(self, path):\n        with open(path, 'r', encoding='utf-8') as fp:\n            for line in fp.readlines():\n                self.execute(line)\n\n\nif __name__ == '__main__':\n    sys.path.append(os.getcwd())\n\n    from modules import zluda_installer\n    zluda_installer.install()\n    zluda_installer.load()\n\n    import torch\n    interpreter = Interpreter({\n        'torch': torch,\n    }, {})\n\n    if len(sys.argv) > 1:\n        interpreter.from_file(sys.argv[1])\n    else:\n        print(f'Python with ZLUDA {sys.version}')\n        print('Type \"help\", \"copyright\", \"credits\" or \"license\" for more information.')\n\n        while True:\n            print('>>> ', end='')\n            interpreter.execute(input())\n"
  },
  {
    "path": "configs/Dockerfile.cuda",
    "content": "# SD.Next Dockerfile\n# docs: <https://github.com/vladmandic/sdnext/wiki/Docker>\n\n# base image\nFROM pytorch/pytorch:2.8.0-cuda12.8-cudnn9-runtime\n\n# metadata\nLABEL org.opencontainers.image.vendor=\"SD.Next\"\nLABEL org.opencontainers.image.authors=\"vladmandic\"\nLABEL org.opencontainers.image.url=\"https://github.com/vladmandic/sdnext/\"\nLABEL org.opencontainers.image.documentation=\"https://github.com/vladmandic/sdnext/wiki/Docker\"\nLABEL org.opencontainers.image.source=\"https://github.com/vladmandic/sdnext/\"\nLABEL org.opencontainers.image.licenses=\"AGPL-3.0\"\nLABEL org.opencontainers.image.title=\"SD.Next\"\nLABEL org.opencontainers.image.description=\"SD.Next: Advanced Implementation of Stable Diffusion and other Diffusion-based generative image models\"\nLABEL org.opencontainers.image.base.name=\"https://hub.docker.com/pytorch/pytorch:2.8.0-cuda12.8-cudnn9-runtime\"\nLABEL org.opencontainers.image.version=\"latest\"\n\n# minimum install\nRUN [\"apt-get\", \"-y\", \"update\"]\nRUN [\"apt-get\", \"-y\", \"install\", \"git\", \"build-essential\", \"google-perftools\", \"curl\", \"ffmpeg\"]\n# optional if full cuda-dev is required by some downstream library\n# RUN [\"apt-get\", \"-y\", \"nvidia-cuda-toolkit\"]\nRUN [\"/usr/sbin/ldconfig\"]\n\n# copy sdnext\nCOPY . /app\nWORKDIR /app\n\n# stop pip and uv from caching\nENV PIP_NO_CACHE_DIR=true\nENV UV_NO_CACHE=true\nENV PIP_ROOT_USER_ACTION=ignore\n# disable model hashing for faster startup\nENV SD_NOHASHING=true\n# set data directories\nENV SD_DATADIR=\"/mnt/data\"\nENV SD_MODELSDIR=\"/mnt/models\"\nENV SD_DOCKER=true\n\n# tcmalloc is not required but it is highly recommended\nENV LD_PRELOAD=libtcmalloc.so.4\n# sdnext will run all necessary pip install ops and then exit\nRUN [\"python\", \"/app/launch.py\", \"--uv\", \"--use-cuda\", \"--log\", \"sdnext.log\", \"--test\", \"--optional\"]\n# preinstall additional packages to avoid installation during runtime\n\n# actually run sdnext\nCMD [\"python\", \"launch.py\", \"--listen\", \"--quick\", \"--log\", \"sdnext.log\"]\n\n# expose port\nEXPOSE 7860\n\n# healthcheck function\n# HEALTHCHECK --interval=60s --timeout=10s --start-period=60s --retries=3 CMD curl --fail http://localhost:7860/sdapi/v1/status || exit 1\n\n# stop signal\nSTOPSIGNAL SIGINT\n"
  },
  {
    "path": "configs/Dockerfile.ipex",
    "content": "# SD.Next IPEX Dockerfile\n# docs: <https://github.com/vladmandic/sdnext/wiki/Docker>\n\n# base image\nFROM ubuntu:noble\n\n# metadata\nLABEL org.opencontainers.image.vendor=\"SD.Next\"\nLABEL org.opencontainers.image.authors=\"disty0\"\nLABEL org.opencontainers.image.url=\"https://github.com/vladmandic/sdnext/\"\nLABEL org.opencontainers.image.documentation=\"https://github.com/vladmandic/sdnext/wiki/Docker\"\nLABEL org.opencontainers.image.source=\"https://github.com/vladmandic/sdnext/\"\nLABEL org.opencontainers.image.licenses=\"AGPL-3.0\"\nLABEL org.opencontainers.image.title=\"SD.Next IPEX\"\nLABEL org.opencontainers.image.description=\"SD.Next: Advanced Implementation of Stable Diffusion and other Diffusion-based generative image models\"\nLABEL org.opencontainers.image.base.name=\"https://hub.docker.com/_/ubuntu:noble\"\nLABEL org.opencontainers.image.version=\"latest\"\n\n# essentials\nRUN apt-get update && \\\n    apt-get install -y --no-install-recommends --fix-missing \\\n    software-properties-common \\\n    build-essential \\\n    ca-certificates \\\n    wget \\\n    gpg \\\n    git\n\n# intel compute runtime\nRUN wget -qO - https://repositories.intel.com/gpu/intel-graphics.key | gpg --yes --dearmor --output /usr/share/keyrings/intel-graphics.gpg\nRUN echo \"deb [arch=amd64,i386 signed-by=/usr/share/keyrings/intel-graphics.gpg] https://repositories.intel.com/gpu/ubuntu noble client\" | tee /etc/apt/sources.list.d/intel-gpu-noble.list\nRUN apt-get update\n\nRUN apt-get install -y --no-install-recommends --fix-missing \\\n    intel-opencl-icd \\\n    libze-intel-gpu1 \\\n    libze1\n\n# required by pytorch / ipex\nRUN apt-get install -y --no-install-recommends --fix-missing \\\n    libgl1 \\\n    libglib2.0-0 \\\n    libgomp1\n\n# python3.12\nRUN apt-get install -y --no-install-recommends --fix-missing \\\n    python3 \\\n    python3-dev \\\n    python3-venv \\\n    python3-pip\n\n# jemalloc is not required but it is highly recommended (also used with optional ipexrun)\nRUN apt-get install -y --no-install-recommends --fix-missing libjemalloc-dev\nENV LD_PRELOAD=libjemalloc.so.2\n\n# cleanup\nRUN /usr/sbin/ldconfig\nRUN apt-get clean && rm -rf /var/lib/apt/lists/*\n\n# stop pip and uv from caching\nENV PIP_NO_CACHE_DIR=true\nENV UV_NO_CACHE=true\n\n# set paths to use with sdnext\nENV SD_DOCKER=true\nENV SD_DATADIR=\"/mnt/data\"\nENV SD_MODELSDIR=\"/mnt/models\"\nENV venv_dir=\"/mnt/python/venv\"\n\n# paths used by sdnext can be a volume if necessary\n#VOLUME [ \"/app\" ]\n#VOLUME [ \"/mnt/data\" ]\n#VOLUME [ \"/mnt/models\" ]\n#VOLUME [ \"/mnt/python\" ]\n#VOLUME [ \"/root/.cache/huggingface\" ]\n\n# intel specific environment variables\n#ENV IPEX_SDPA_SLICE_TRIGGER_RATE=1\n#ENV IPEX_ATTENTION_SLICE_RATE=0.5\n#ENV IPEX_FORCE_ATTENTION_SLICE=-1\n#ENV IPEXRUN=False\n\n# git clone and run sdnext\nRUN echo '#!/bin/bash\\ngit status || git clone https://github.com/vladmandic/sdnext.git .\\n/app/webui.sh \"$@\"' | tee /bin/startup.sh\nRUN chmod 755 /bin/startup.sh\n\n# actually run sdnext\nWORKDIR /app\nENTRYPOINT [ \"startup.sh\", \"-f\", \"--use-ipex\", \"--uv\", \"--listen\", \"--debug\", \"--api-log\", \"--log\", \"sdnext.log\" ]\n\n# expose port\nEXPOSE 7860\n\n# healthcheck function\n# HEALTHCHECK --interval=60s --timeout=10s --start-period=60s --retries=3 CMD curl --fail http://localhost:7860/sdapi/v1/status || exit 1\n\n# stop signal\nSTOPSIGNAL SIGINT\n"
  },
  {
    "path": "configs/Dockerfile.openvino",
    "content": "# SD.Next OpenVINO Dockerfile\n# docs: <https://github.com/vladmandic/sdnext/wiki/Docker>\n\n# base image\nFROM ubuntu:noble\n\n# metadata\nLABEL org.opencontainers.image.vendor=\"SD.Next\"\nLABEL org.opencontainers.image.authors=\"disty0\"\nLABEL org.opencontainers.image.url=\"https://github.com/vladmandic/sdnext/\"\nLABEL org.opencontainers.image.documentation=\"https://github.com/vladmandic/sdnext/wiki/Docker\"\nLABEL org.opencontainers.image.source=\"https://github.com/vladmandic/sdnext/\"\nLABEL org.opencontainers.image.licenses=\"AGPL-3.0\"\nLABEL org.opencontainers.image.title=\"SD.Next OpenVINO\"\nLABEL org.opencontainers.image.description=\"SD.Next: Advanced Implementation of Stable Diffusion and other Diffusion-based generative image models\"\nLABEL org.opencontainers.image.base.name=\"https://hub.docker.com/_/ubuntu:noble\"\nLABEL org.opencontainers.image.version=\"latest\"\n\n# essentials\nRUN apt-get update && \\\n    apt-get install -y --no-install-recommends --fix-missing \\\n    software-properties-common \\\n    build-essential \\\n    ca-certificates \\\n    wget \\\n    gpg \\\n    git\n\n# intel compute runtime\nRUN wget -qO - https://repositories.intel.com/gpu/intel-graphics.key | gpg --yes --dearmor --output /usr/share/keyrings/intel-graphics.gpg\nRUN echo \"deb [arch=amd64,i386 signed-by=/usr/share/keyrings/intel-graphics.gpg] https://repositories.intel.com/gpu/ubuntu noble client\" | tee /etc/apt/sources.list.d/intel-gpu-noble.list\nRUN apt-get update\n\nRUN apt-get install -y --no-install-recommends --fix-missing \\\n    intel-opencl-icd \\\n    libze-intel-gpu1 \\\n    libze1\n\n# required by pytorch / ipex\nRUN apt-get install -y --no-install-recommends --fix-missing \\\n    libgl1 \\\n    libglib2.0-0 \\\n    libgomp1\n\n# python3.12\nRUN apt-get install -y --no-install-recommends --fix-missing \\\n    python3 \\\n    python3-dev \\\n    python3-venv \\\n    python3-pip\n\n# cleanup\nRUN /usr/sbin/ldconfig\nRUN apt-get clean && rm -rf /var/lib/apt/lists/*\n\n# stop pip and uv from caching\nENV PIP_NO_CACHE_DIR=true\nENV UV_NO_CACHE=true\n\n# set paths to use with sdnext\nENV SD_DOCKER=true\nENV SD_DATADIR=\"/mnt/data\"\nENV SD_MODELSDIR=\"/mnt/models\"\nENV venv_dir=\"/mnt/python/venv\"\n\n# paths used by sdnext can be a volume if necessary\n#VOLUME [ \"/app\" ]\n#VOLUME [ \"/mnt/data\" ]\n#VOLUME [ \"/mnt/models\" ]\n#VOLUME [ \"/mnt/python\" ]\n#VOLUME [ \"/root/.cache/huggingface\" ]\n\n# git clone and run sdnext\nRUN echo '#!/bin/bash\\ngit status || git clone https://github.com/vladmandic/sdnext.git .\\n/app/webui.sh \"$@\"' | tee /bin/startup.sh\nRUN chmod 755 /bin/startup.sh\n\n# actually run sdnext\nWORKDIR /app\nENTRYPOINT [ \"startup.sh\", \"-f\", \"--use-openvino\", \"--uv\", \"--listen\", \"--debug\", \"--api-log\", \"--log\", \"sdnext.log\" ]\n\n# expose port\nEXPOSE 7860\n\n# healthcheck function\n# HEALTHCHECK --interval=60s --timeout=10s --start-period=60s --retries=3 CMD curl --fail http://localhost:7860/sdapi/v1/status || exit 1\n\n# stop signal\nSTOPSIGNAL SIGINT\n"
  },
  {
    "path": "configs/Dockerfile.rocm",
    "content": "# SD.Next ROCm Dockerfile\n# docs: <https://github.com/vladmandic/sdnext/wiki/Docker>\n\n# base image\n\n# rocm runtime (3gb)\nFROM rocm/dev-ubuntu-24.04:6.3.2\n\n# rocm complete (32gb), required to build flash_atten\n#FROM rocm/dev-ubuntu-24.04:6.3.2-complete\n\n# metadata\nLABEL org.opencontainers.image.vendor=\"SD.Next\"\nLABEL org.opencontainers.image.authors=\"disty0\"\nLABEL org.opencontainers.image.url=\"https://github.com/vladmandic/sdnext/\"\nLABEL org.opencontainers.image.documentation=\"https://github.com/vladmandic/sdnext/wiki/Docker\"\nLABEL org.opencontainers.image.source=\"https://github.com/vladmandic/sdnext/\"\nLABEL org.opencontainers.image.licenses=\"AGPL-3.0\"\nLABEL org.opencontainers.image.title=\"SD.Next ROCm\"\nLABEL org.opencontainers.image.description=\"SD.Next: Advanced Implementation of Stable Diffusion and other Diffusion-based generative image models\"\nLABEL org.opencontainers.image.base.name=\"https://hub.docker.com/r/rocm/dev-ubuntu-24.04:6.3.2\"\nLABEL org.opencontainers.image.version=\"latest\"\n\n# essentials\nRUN apt-get update && \\\n    apt-get install -y --no-install-recommends --fix-missing \\\n    software-properties-common \\\n    build-essential \\\n    ca-certificates \\\n    wget \\\n    gpg \\\n    git\n\n# python3.12\nRUN apt-get install -y --no-install-recommends --fix-missing \\\n    python3 \\\n    python3-dev \\\n    python3-venv \\\n    python3-pip\n\n# jemalloc is not required but it is highly recommended\nRUN apt-get install -y --no-install-recommends --fix-missing libjemalloc-dev\nENV LD_PRELOAD=libjemalloc.so.2\n\n# cleanup\nRUN /usr/sbin/ldconfig\nRUN apt-get clean && rm -rf /var/lib/apt/lists/*\n\n# stop pip and uv from caching\nENV PIP_NO_CACHE_DIR=true\nENV UV_NO_CACHE=true\n\n# set paths to use with sdnext\nENV SD_DOCKER=true\nENV SD_DATADIR=\"/mnt/data\"\nENV SD_MODELSDIR=\"/mnt/models\"\nENV venv_dir=\"/mnt/python/venv\"\n\n# paths used by sdnext can be a volume if necessary\n#VOLUME [ \"/app\" ]\n#VOLUME [ \"/mnt/data\" ]\n#VOLUME [ \"/mnt/models\" ]\n#VOLUME [ \"/mnt/python\" ]\n#VOLUME [ \"/root/.cache/huggingface\" ]\n\n# override gpu architecture for unsupported gpus\n#ENV HSA_OVERRIDE_GFX_VERSION=10.0.0\n\n# git clone and run sdnext\nRUN echo '#!/bin/bash\\ngit status || git clone https://github.com/vladmandic/sdnext.git .\\n/app/webui.sh \"$@\"' | tee /bin/startup.sh\nRUN chmod 755 /bin/startup.sh\n\n# actually run sdnext\nWORKDIR /app\nENTRYPOINT [ \"startup.sh\", \"-f\", \"--use-rocm\", \"--uv\", \"--listen\", \"--debug\", \"--api-log\", \"--log\", \"sdnext.log\" ]\n\n# expose port\nEXPOSE 7860\n\n# healthcheck function\n# HEALTHCHECK --interval=60s --timeout=10s --start-period=60s --retries=3 CMD curl --fail http://localhost:7860/sdapi/v1/status || exit 1\n\n# stop signal\nSTOPSIGNAL SIGINT\n"
  },
  {
    "path": "configs/chroma/model_index.json",
    "content": "{\n  \"_class_name\": \"ChromaPipeline\",\n  \"_diffusers_version\": \"0.34.0.dev0\",\n  \"scheduler\": [\n    \"diffusers\",\n    \"FlowMatchEulerDiscreteScheduler\"\n  ],\n  \"text_encoder\": [\n    \"transformers\",\n    \"T5EncoderModel\"\n  ],\n  \"tokenizer\": [\n    \"transformers\",\n    \"T5Tokenizer\"\n  ],\n  \"transformer\": [\n    \"diffusers\",\n    \"ChromaTransformer2DModel\"\n  ],\n  \"vae\": [\n    \"diffusers\",\n    \"AutoencoderKL\"\n  ]\n}\n"
  },
  {
    "path": "configs/chroma/scheduler/scheduler_config.json",
    "content": "{\n  \"_class_name\": \"FlowMatchEulerDiscreteScheduler\",\n  \"_diffusers_version\": \"0.34.0.dev0\",\n  \"base_image_seq_len\": 256,\n  \"base_shift\": 0.5,\n  \"invert_sigmas\": false,\n  \"max_image_seq_len\": 4096,\n  \"max_shift\": 1.15,\n  \"num_train_timesteps\": 1000,\n  \"shift\": 3.0,\n  \"shift_terminal\": null,\n  \"stochastic_sampling\": false,\n  \"time_shift_type\": \"exponential\",\n  \"use_beta_sigmas\": false,\n  \"use_dynamic_shifting\": true,\n  \"use_exponential_sigmas\": false,\n  \"use_karras_sigmas\": false\n}\n"
  },
  {
    "path": "configs/chroma/text_encoder/config.json",
    "content": "{\n  \"_name_or_path\": \"google/t5-v1_1-xxl\",\n    \"architectures\": [\n    \"T5EncoderModel\"\n  ],\n  \"classifier_dropout\": 0.0,\n  \"d_ff\": 10240,\n  \"d_kv\": 64,\n  \"d_model\": 4096,\n  \"decoder_start_token_id\": 0,\n  \"dense_act_fn\": \"gelu_new\",\n  \"dropout_rate\": 0.1,\n  \"eos_token_id\": 1,\n  \"feed_forward_proj\": \"gated-gelu\",\n  \"initializer_factor\": 1.0,\n  \"is_encoder_decoder\": true,\n  \"is_gated_act\": true,\n  \"layer_norm_epsilon\": 1e-06,\n  \"model_type\": \"t5\",\n  \"num_decoder_layers\": 24,\n  \"num_heads\": 64,\n  \"num_layers\": 24,\n  \"output_past\": true,\n  \"pad_token_id\": 0,\n  \"relative_attention_max_distance\": 128,\n  \"relative_attention_num_buckets\": 32,\n  \"tie_word_embeddings\": false,\n  \"torch_dtype\": \"bfloat16\",\n  \"transformers_version\": \"4.52.4\",\n  \"use_cache\": true,\n  \"vocab_size\": 32128\n}\n"
  },
  {
    "path": "configs/chroma/tokenizer/added_tokens.json",
    "content": "{\n  \"<extra_id_0>\": 32099,\n  \"<extra_id_10>\": 32089,\n  \"<extra_id_11>\": 32088,\n  \"<extra_id_12>\": 32087,\n  \"<extra_id_13>\": 32086,\n  \"<extra_id_14>\": 32085,\n  \"<extra_id_15>\": 32084,\n  \"<extra_id_16>\": 32083,\n  \"<extra_id_17>\": 32082,\n  \"<extra_id_18>\": 32081,\n  \"<extra_id_19>\": 32080,\n  \"<extra_id_1>\": 32098,\n  \"<extra_id_20>\": 32079,\n  \"<extra_id_21>\": 32078,\n  \"<extra_id_22>\": 32077,\n  \"<extra_id_23>\": 32076,\n  \"<extra_id_24>\": 32075,\n  \"<extra_id_25>\": 32074,\n  \"<extra_id_26>\": 32073,\n  \"<extra_id_27>\": 32072,\n  \"<extra_id_28>\": 32071,\n  \"<extra_id_29>\": 32070,\n  \"<extra_id_2>\": 32097,\n  \"<extra_id_30>\": 32069,\n  \"<extra_id_31>\": 32068,\n  \"<extra_id_32>\": 32067,\n  \"<extra_id_33>\": 32066,\n  \"<extra_id_34>\": 32065,\n  \"<extra_id_35>\": 32064,\n  \"<extra_id_36>\": 32063,\n  \"<extra_id_37>\": 32062,\n  \"<extra_id_38>\": 32061,\n  \"<extra_id_39>\": 32060,\n  \"<extra_id_3>\": 32096,\n  \"<extra_id_40>\": 32059,\n  \"<extra_id_41>\": 32058,\n  \"<extra_id_42>\": 32057,\n  \"<extra_id_43>\": 32056,\n  \"<extra_id_44>\": 32055,\n  \"<extra_id_45>\": 32054,\n  \"<extra_id_46>\": 32053,\n  \"<extra_id_47>\": 32052,\n  \"<extra_id_48>\": 32051,\n  \"<extra_id_49>\": 32050,\n  \"<extra_id_4>\": 32095,\n  \"<extra_id_50>\": 32049,\n  \"<extra_id_51>\": 32048,\n  \"<extra_id_52>\": 32047,\n  \"<extra_id_53>\": 32046,\n  \"<extra_id_54>\": 32045,\n  \"<extra_id_55>\": 32044,\n  \"<extra_id_56>\": 32043,\n  \"<extra_id_57>\": 32042,\n  \"<extra_id_58>\": 32041,\n  \"<extra_id_59>\": 32040,\n  \"<extra_id_5>\": 32094,\n  \"<extra_id_60>\": 32039,\n  \"<extra_id_61>\": 32038,\n  \"<extra_id_62>\": 32037,\n  \"<extra_id_63>\": 32036,\n  \"<extra_id_64>\": 32035,\n  \"<extra_id_65>\": 32034,\n  \"<extra_id_66>\": 32033,\n  \"<extra_id_67>\": 32032,\n  \"<extra_id_68>\": 32031,\n  \"<extra_id_69>\": 32030,\n  \"<extra_id_6>\": 32093,\n  \"<extra_id_70>\": 32029,\n  \"<extra_id_71>\": 32028,\n  \"<extra_id_72>\": 32027,\n  \"<extra_id_73>\": 32026,\n  \"<extra_id_74>\": 32025,\n  \"<extra_id_75>\": 32024,\n  \"<extra_id_76>\": 32023,\n  \"<extra_id_77>\": 32022,\n  \"<extra_id_78>\": 32021,\n  \"<extra_id_79>\": 32020,\n  \"<extra_id_7>\": 32092,\n  \"<extra_id_80>\": 32019,\n  \"<extra_id_81>\": 32018,\n  \"<extra_id_82>\": 32017,\n  \"<extra_id_83>\": 32016,\n  \"<extra_id_84>\": 32015,\n  \"<extra_id_85>\": 32014,\n  \"<extra_id_86>\": 32013,\n  \"<extra_id_87>\": 32012,\n  \"<extra_id_88>\": 32011,\n  \"<extra_id_89>\": 32010,\n  \"<extra_id_8>\": 32091,\n  \"<extra_id_90>\": 32009,\n  \"<extra_id_91>\": 32008,\n  \"<extra_id_92>\": 32007,\n  \"<extra_id_93>\": 32006,\n  \"<extra_id_94>\": 32005,\n  \"<extra_id_95>\": 32004,\n  \"<extra_id_96>\": 32003,\n  \"<extra_id_97>\": 32002,\n  \"<extra_id_98>\": 32001,\n  \"<extra_id_99>\": 32000,\n  \"<extra_id_9>\": 32090\n}\n"
  },
  {
    "path": "configs/chroma/tokenizer/special_tokens_map.json",
    "content": "{\n  \"additional_special_tokens\": [\n    \"<extra_id_0>\",\n    \"<extra_id_1>\",\n    \"<extra_id_2>\",\n    \"<extra_id_3>\",\n    \"<extra_id_4>\",\n    \"<extra_id_5>\",\n    \"<extra_id_6>\",\n    \"<extra_id_7>\",\n    \"<extra_id_8>\",\n    \"<extra_id_9>\",\n    \"<extra_id_10>\",\n    \"<extra_id_11>\",\n    \"<extra_id_12>\",\n    \"<extra_id_13>\",\n    \"<extra_id_14>\",\n    \"<extra_id_15>\",\n    \"<extra_id_16>\",\n    \"<extra_id_17>\",\n    \"<extra_id_18>\",\n    \"<extra_id_19>\",\n    \"<extra_id_20>\",\n    \"<extra_id_21>\",\n    \"<extra_id_22>\",\n    \"<extra_id_23>\",\n    \"<extra_id_24>\",\n    \"<extra_id_25>\",\n    \"<extra_id_26>\",\n    \"<extra_id_27>\",\n    \"<extra_id_28>\",\n    \"<extra_id_29>\",\n    \"<extra_id_30>\",\n    \"<extra_id_31>\",\n    \"<extra_id_32>\",\n    \"<extra_id_33>\",\n    \"<extra_id_34>\",\n    \"<extra_id_35>\",\n    \"<extra_id_36>\",\n    \"<extra_id_37>\",\n    \"<extra_id_38>\",\n    \"<extra_id_39>\",\n    \"<extra_id_40>\",\n    \"<extra_id_41>\",\n    \"<extra_id_42>\",\n    \"<extra_id_43>\",\n    \"<extra_id_44>\",\n    \"<extra_id_45>\",\n    \"<extra_id_46>\",\n    \"<extra_id_47>\",\n    \"<extra_id_48>\",\n    \"<extra_id_49>\",\n    \"<extra_id_50>\",\n    \"<extra_id_51>\",\n    \"<extra_id_52>\",\n    \"<extra_id_53>\",\n    \"<extra_id_54>\",\n    \"<extra_id_55>\",\n    \"<extra_id_56>\",\n    \"<extra_id_57>\",\n    \"<extra_id_58>\",\n    \"<extra_id_59>\",\n    \"<extra_id_60>\",\n    \"<extra_id_61>\",\n    \"<extra_id_62>\",\n    \"<extra_id_63>\",\n    \"<extra_id_64>\",\n    \"<extra_id_65>\",\n    \"<extra_id_66>\",\n    \"<extra_id_67>\",\n    \"<extra_id_68>\",\n    \"<extra_id_69>\",\n    \"<extra_id_70>\",\n    \"<extra_id_71>\",\n    \"<extra_id_72>\",\n    \"<extra_id_73>\",\n    \"<extra_id_74>\",\n    \"<extra_id_75>\",\n    \"<extra_id_76>\",\n    \"<extra_id_77>\",\n    \"<extra_id_78>\",\n    \"<extra_id_79>\",\n    \"<extra_id_80>\",\n    \"<extra_id_81>\",\n    \"<extra_id_82>\",\n    \"<extra_id_83>\",\n    \"<extra_id_84>\",\n    \"<extra_id_85>\",\n    \"<extra_id_86>\",\n    \"<extra_id_87>\",\n    \"<extra_id_88>\",\n    \"<extra_id_89>\",\n    \"<extra_id_90>\",\n    \"<extra_id_91>\",\n    \"<extra_id_92>\",\n    \"<extra_id_93>\",\n    \"<extra_id_94>\",\n    \"<extra_id_95>\",\n    \"<extra_id_96>\",\n    \"<extra_id_97>\",\n    \"<extra_id_98>\",\n    \"<extra_id_99>\"\n  ],\n  \"eos_token\": {\n    \"content\": \"</s>\",\n    \"lstrip\": false,\n    \"normalized\": false,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"pad_token\": {\n    \"content\": \"<pad>\",\n    \"lstrip\": false,\n    \"normalized\": false,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"unk_token\": {\n    \"content\": \"<unk>\",\n    \"lstrip\": false,\n    \"normalized\": false,\n    \"rstrip\": false,\n    \"single_word\": false\n  }\n}\n"
  },
  {
    "path": "configs/chroma/tokenizer/tokenizer_config.json",
    "content": "{\n  \"add_prefix_space\": true,\n  \"added_tokens_decoder\": {\n    \"0\": {\n      \"content\": \"<pad>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"1\": {\n      \"content\": \"</s>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"2\": {\n      \"content\": \"<unk>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32000\": {\n      \"content\": \"<extra_id_99>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32001\": {\n      \"content\": \"<extra_id_98>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32002\": {\n      \"content\": \"<extra_id_97>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32003\": {\n      \"content\": \"<extra_id_96>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32004\": {\n      \"content\": \"<extra_id_95>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32005\": {\n      \"content\": \"<extra_id_94>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32006\": {\n      \"content\": \"<extra_id_93>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32007\": {\n      \"content\": \"<extra_id_92>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32008\": {\n      \"content\": \"<extra_id_91>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32009\": {\n      \"content\": \"<extra_id_90>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32010\": {\n      \"content\": \"<extra_id_89>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32011\": {\n      \"content\": \"<extra_id_88>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32012\": {\n      \"content\": \"<extra_id_87>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32013\": {\n      \"content\": \"<extra_id_86>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32014\": {\n      \"content\": \"<extra_id_85>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32015\": {\n      \"content\": \"<extra_id_84>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32016\": {\n      \"content\": \"<extra_id_83>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32017\": {\n      \"content\": \"<extra_id_82>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32018\": {\n      \"content\": \"<extra_id_81>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32019\": {\n      \"content\": \"<extra_id_80>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32020\": {\n      \"content\": \"<extra_id_79>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32021\": {\n      \"content\": \"<extra_id_78>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32022\": {\n      \"content\": \"<extra_id_77>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32023\": {\n      \"content\": \"<extra_id_76>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32024\": {\n      \"content\": \"<extra_id_75>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32025\": {\n      \"content\": \"<extra_id_74>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32026\": {\n      \"content\": \"<extra_id_73>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32027\": {\n      \"content\": \"<extra_id_72>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32028\": {\n      \"content\": \"<extra_id_71>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32029\": {\n      \"content\": \"<extra_id_70>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32030\": {\n      \"content\": \"<extra_id_69>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32031\": {\n      \"content\": \"<extra_id_68>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32032\": {\n      \"content\": \"<extra_id_67>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32033\": {\n      \"content\": \"<extra_id_66>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32034\": {\n      \"content\": \"<extra_id_65>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32035\": {\n      \"content\": \"<extra_id_64>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32036\": {\n      \"content\": \"<extra_id_63>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32037\": {\n      \"content\": \"<extra_id_62>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32038\": {\n      \"content\": \"<extra_id_61>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32039\": {\n      \"content\": \"<extra_id_60>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32040\": {\n      \"content\": \"<extra_id_59>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32041\": {\n      \"content\": \"<extra_id_58>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32042\": {\n      \"content\": \"<extra_id_57>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32043\": {\n      \"content\": \"<extra_id_56>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32044\": {\n      \"content\": \"<extra_id_55>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32045\": {\n      \"content\": \"<extra_id_54>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32046\": {\n      \"content\": \"<extra_id_53>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32047\": {\n      \"content\": \"<extra_id_52>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32048\": {\n      \"content\": \"<extra_id_51>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32049\": {\n      \"content\": \"<extra_id_50>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32050\": {\n      \"content\": \"<extra_id_49>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32051\": {\n      \"content\": \"<extra_id_48>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32052\": {\n      \"content\": \"<extra_id_47>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32053\": {\n      \"content\": \"<extra_id_46>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32054\": {\n      \"content\": \"<extra_id_45>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32055\": {\n      \"content\": \"<extra_id_44>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32056\": {\n      \"content\": \"<extra_id_43>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32057\": {\n      \"content\": \"<extra_id_42>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32058\": {\n      \"content\": \"<extra_id_41>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32059\": {\n      \"content\": \"<extra_id_40>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32060\": {\n      \"content\": \"<extra_id_39>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32061\": {\n      \"content\": \"<extra_id_38>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32062\": {\n      \"content\": \"<extra_id_37>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32063\": {\n      \"content\": \"<extra_id_36>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32064\": {\n      \"content\": \"<extra_id_35>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32065\": {\n      \"content\": \"<extra_id_34>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32066\": {\n      \"content\": \"<extra_id_33>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32067\": {\n      \"content\": \"<extra_id_32>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32068\": {\n      \"content\": \"<extra_id_31>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32069\": {\n      \"content\": \"<extra_id_30>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32070\": {\n      \"content\": \"<extra_id_29>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32071\": {\n      \"content\": \"<extra_id_28>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32072\": {\n      \"content\": \"<extra_id_27>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32073\": {\n      \"content\": \"<extra_id_26>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32074\": {\n      \"content\": \"<extra_id_25>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32075\": {\n      \"content\": \"<extra_id_24>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32076\": {\n      \"content\": \"<extra_id_23>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32077\": {\n      \"content\": \"<extra_id_22>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32078\": {\n      \"content\": \"<extra_id_21>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32079\": {\n      \"content\": \"<extra_id_20>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32080\": {\n      \"content\": \"<extra_id_19>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32081\": {\n      \"content\": \"<extra_id_18>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32082\": {\n      \"content\": \"<extra_id_17>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32083\": {\n      \"content\": \"<extra_id_16>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32084\": {\n      \"content\": \"<extra_id_15>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32085\": {\n      \"content\": \"<extra_id_14>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32086\": {\n      \"content\": \"<extra_id_13>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32087\": {\n      \"content\": \"<extra_id_12>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32088\": {\n      \"content\": \"<extra_id_11>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32089\": {\n      \"content\": \"<extra_id_10>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32090\": {\n      \"content\": \"<extra_id_9>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32091\": {\n      \"content\": \"<extra_id_8>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32092\": {\n      \"content\": \"<extra_id_7>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32093\": {\n      \"content\": \"<extra_id_6>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32094\": {\n      \"content\": \"<extra_id_5>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32095\": {\n      \"content\": \"<extra_id_4>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32096\": {\n      \"content\": \"<extra_id_3>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32097\": {\n      \"content\": \"<extra_id_2>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32098\": {\n      \"content\": \"<extra_id_1>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32099\": {\n      \"content\": \"<extra_id_0>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    }\n  },\n  \"additional_special_tokens\": [\n    \"<extra_id_0>\",\n    \"<extra_id_1>\",\n    \"<extra_id_2>\",\n    \"<extra_id_3>\",\n    \"<extra_id_4>\",\n    \"<extra_id_5>\",\n    \"<extra_id_6>\",\n    \"<extra_id_7>\",\n    \"<extra_id_8>\",\n    \"<extra_id_9>\",\n    \"<extra_id_10>\",\n    \"<extra_id_11>\",\n    \"<extra_id_12>\",\n    \"<extra_id_13>\",\n    \"<extra_id_14>\",\n    \"<extra_id_15>\",\n    \"<extra_id_16>\",\n    \"<extra_id_17>\",\n    \"<extra_id_18>\",\n    \"<extra_id_19>\",\n    \"<extra_id_20>\",\n    \"<extra_id_21>\",\n    \"<extra_id_22>\",\n    \"<extra_id_23>\",\n    \"<extra_id_24>\",\n    \"<extra_id_25>\",\n    \"<extra_id_26>\",\n    \"<extra_id_27>\",\n    \"<extra_id_28>\",\n    \"<extra_id_29>\",\n    \"<extra_id_30>\",\n    \"<extra_id_31>\",\n    \"<extra_id_32>\",\n    \"<extra_id_33>\",\n    \"<extra_id_34>\",\n    \"<extra_id_35>\",\n    \"<extra_id_36>\",\n    \"<extra_id_37>\",\n    \"<extra_id_38>\",\n    \"<extra_id_39>\",\n    \"<extra_id_40>\",\n    \"<extra_id_41>\",\n    \"<extra_id_42>\",\n    \"<extra_id_43>\",\n    \"<extra_id_44>\",\n    \"<extra_id_45>\",\n    \"<extra_id_46>\",\n    \"<extra_id_47>\",\n    \"<extra_id_48>\",\n    \"<extra_id_49>\",\n    \"<extra_id_50>\",\n    \"<extra_id_51>\",\n    \"<extra_id_52>\",\n    \"<extra_id_53>\",\n    \"<extra_id_54>\",\n    \"<extra_id_55>\",\n    \"<extra_id_56>\",\n    \"<extra_id_57>\",\n    \"<extra_id_58>\",\n    \"<extra_id_59>\",\n    \"<extra_id_60>\",\n    \"<extra_id_61>\",\n    \"<extra_id_62>\",\n    \"<extra_id_63>\",\n    \"<extra_id_64>\",\n    \"<extra_id_65>\",\n    \"<extra_id_66>\",\n    \"<extra_id_67>\",\n    \"<extra_id_68>\",\n    \"<extra_id_69>\",\n    \"<extra_id_70>\",\n    \"<extra_id_71>\",\n    \"<extra_id_72>\",\n    \"<extra_id_73>\",\n    \"<extra_id_74>\",\n    \"<extra_id_75>\",\n    \"<extra_id_76>\",\n    \"<extra_id_77>\",\n    \"<extra_id_78>\",\n    \"<extra_id_79>\",\n    \"<extra_id_80>\",\n    \"<extra_id_81>\",\n    \"<extra_id_82>\",\n    \"<extra_id_83>\",\n    \"<extra_id_84>\",\n    \"<extra_id_85>\",\n    \"<extra_id_86>\",\n    \"<extra_id_87>\",\n    \"<extra_id_88>\",\n    \"<extra_id_89>\",\n    \"<extra_id_90>\",\n    \"<extra_id_91>\",\n    \"<extra_id_92>\",\n    \"<extra_id_93>\",\n    \"<extra_id_94>\",\n    \"<extra_id_95>\",\n    \"<extra_id_96>\",\n    \"<extra_id_97>\",\n    \"<extra_id_98>\",\n    \"<extra_id_99>\"\n  ],\n  \"clean_up_tokenization_spaces\": true,\n  \"eos_token\": \"</s>\",\n  \"extra_ids\": 100,\n  \"legacy\": true,\n  \"model_max_length\": 512,\n  \"pad_token\": \"<pad>\",\n  \"sp_model_kwargs\": {},\n  \"tokenizer_class\": \"T5Tokenizer\",\n  \"unk_token\": \"<unk>\"\n}\n"
  },
  {
    "path": "configs/chroma/transformer/config.json",
    "content": "{\n  \"_class_name\": \"ChromaTransformer2DModel\",\n  \"_diffusers_version\": \"0.34.0.dev0\",\n  \"approximator_hidden_dim\": 5120,\n  \"approximator_in_factor\": 16,\n  \"approximator_layers\": 5,\n  \"attention_head_dim\": 128,\n  \"axes_dims_rope\": [\n    16,\n    56,\n    56\n  ],\n  \"in_channels\": 64,\n  \"joint_attention_dim\": 4096,\n  \"num_attention_heads\": 24,\n  \"num_layers\": 19,\n  \"num_single_layers\": 38,\n  \"out_channels\": null,\n  \"patch_size\": 1\n}\n"
  },
  {
    "path": "configs/chroma/transformer/diffusion_pytorch_model.safetensors.index.json",
    "content": "{\n  \"metadata\": {\n    \"total_size\": 17799966848\n  },\n  \"weight_map\": {\n    \"context_embedder.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"context_embedder.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.in_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.in_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.layers.0.linear_1.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.layers.0.linear_1.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.layers.0.linear_2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.layers.0.linear_2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.layers.1.linear_1.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.layers.1.linear_1.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.layers.1.linear_2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.layers.1.linear_2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.layers.2.linear_1.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.layers.2.linear_1.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.layers.2.linear_2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.layers.2.linear_2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.layers.3.linear_1.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.layers.3.linear_1.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.layers.3.linear_2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.layers.3.linear_2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.layers.4.linear_1.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.layers.4.linear_1.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.layers.4.linear_2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.layers.4.linear_2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.norms.0.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.norms.1.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.norms.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.norms.3.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.norms.4.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.out_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"distilled_guidance_layer.out_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.0.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.0.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.0.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.0.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.0.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.0.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.0.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.0.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.0.proj_mlp.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.0.proj_mlp.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.0.proj_out.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.0.proj_out.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.1.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.1.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.1.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.1.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.1.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.1.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.1.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.1.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.1.proj_mlp.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.1.proj_mlp.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.1.proj_out.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.1.proj_out.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.10.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.10.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.10.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.10.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.10.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.10.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.10.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.10.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.10.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.10.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.10.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.10.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.11.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.11.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.11.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.11.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.11.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.11.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.11.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.11.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.11.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.11.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.11.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.11.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.12.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.12.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.12.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.12.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.12.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.12.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.12.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.12.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.12.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.12.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.12.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.12.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.13.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.13.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.13.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.13.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.13.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.13.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.13.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.13.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.13.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.13.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.13.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.13.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.14.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.14.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.14.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.14.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.14.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.14.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.14.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.14.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.14.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.14.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.14.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.14.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.15.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.15.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.15.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.15.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.15.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.15.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.15.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.15.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.15.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.15.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.15.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.15.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.16.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.16.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.16.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.16.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.16.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.16.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.16.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.16.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.16.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.16.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.16.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.16.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.17.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.17.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.17.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.17.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.17.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.17.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.17.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.17.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.17.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.17.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.17.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.17.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.18.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.18.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.18.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.18.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.18.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.18.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.18.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.18.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.18.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.18.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.18.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.18.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.19.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.19.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.19.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.19.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.19.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.19.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.19.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.19.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.19.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.19.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.19.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.19.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.2.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.2.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.2.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.2.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.2.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.2.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.2.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.2.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.2.proj_mlp.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.2.proj_mlp.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.2.proj_out.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.2.proj_out.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.20.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.20.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.20.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.20.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.20.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.20.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.20.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.20.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.20.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.20.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.20.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.20.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.21.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.21.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.21.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.21.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.21.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.21.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.21.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.21.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.21.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.21.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.21.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.21.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.22.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.22.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.22.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.22.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.22.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.22.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.22.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.22.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.22.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.22.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.22.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.22.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.23.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.23.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.23.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.23.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.23.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.23.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.23.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.23.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.23.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.23.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.23.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.23.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.24.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.24.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.24.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.24.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.24.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.24.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.24.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.24.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.24.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.24.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.24.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.24.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.25.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.25.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.25.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.25.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.25.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.25.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.25.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.25.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.25.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.25.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.25.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.25.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.26.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.26.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.26.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.26.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.26.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.26.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.26.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.26.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.26.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.26.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.26.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.26.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.27.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.27.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.27.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.27.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.27.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.27.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.27.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.27.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.27.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.27.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.27.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.27.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.28.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.28.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.28.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.28.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.28.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.28.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.28.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.28.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.28.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.28.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.28.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.28.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.29.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.29.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.29.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.29.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.29.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.29.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.29.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.29.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.29.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.29.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.29.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.29.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.3.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.3.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.3.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.3.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.3.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.3.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.3.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.3.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.3.proj_mlp.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.3.proj_mlp.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"single_transformer_blocks.3.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.3.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.30.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.30.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.30.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.30.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.30.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.30.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.30.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.30.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.30.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.30.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.30.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.30.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.31.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.31.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.31.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.31.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.31.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.31.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.31.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.31.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.31.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.31.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.31.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.31.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.32.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.32.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.32.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.32.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.32.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.32.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.32.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.32.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.32.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.32.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.32.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.32.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.33.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.33.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.33.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.33.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.33.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.33.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.33.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.33.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.33.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.33.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.33.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.33.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.34.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.34.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.34.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.34.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.34.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.34.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.34.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.34.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.34.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.34.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.34.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.34.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.35.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.35.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.35.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.35.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.35.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.35.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.35.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.35.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.35.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.35.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.35.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.35.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.36.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.36.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.36.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.36.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.36.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.36.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.36.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.36.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.36.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.36.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.36.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.36.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.37.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.37.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.37.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.37.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.37.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.37.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.37.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.37.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.37.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.37.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.37.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.37.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.4.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.4.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.4.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.4.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.4.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.4.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.4.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.4.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.4.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.4.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.4.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.4.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.5.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.5.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.5.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.5.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.5.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.5.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.5.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.5.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.5.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.5.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.5.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.5.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.6.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.6.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.6.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.6.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.6.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.6.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.6.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.6.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.6.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.6.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.6.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.6.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.7.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.7.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.7.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.7.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.7.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.7.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.7.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.7.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.7.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.7.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.7.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.7.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.8.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.8.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.8.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.8.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.8.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.8.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.8.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.8.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.8.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.8.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.8.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.8.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.9.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.9.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.9.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.9.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.9.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.9.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.9.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.9.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.9.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.9.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.9.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"single_transformer_blocks.9.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00002.safetensors\",\n    \"transformer_blocks.0.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.0.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.0.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.0.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.0.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.0.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.0.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.0.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.0.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.0.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.0.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.0.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.0.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.0.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.0.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.0.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.0.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.0.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.0.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.0.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.0.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.0.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.0.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.0.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.0.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.0.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.0.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.0.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.1.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.10.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.11.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.12.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.13.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.14.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.15.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.16.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.17.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.18.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.2.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.3.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.4.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.5.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.6.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.7.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.8.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"transformer_blocks.9.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"x_embedder.bias\": \"diffusion_pytorch_model-00001-of-00002.safetensors\",\n    \"x_embedder.weight\": \"diffusion_pytorch_model-00001-of-00002.safetensors\"\n  }\n}\n"
  },
  {
    "path": "configs/chroma/vae/config.json",
    "content": "{\n  \"_class_name\": \"AutoencoderKL\",\n  \"_diffusers_version\": \"0.34.0.dev0\",\n  \"act_fn\": \"silu\",\n  \"block_out_channels\": [\n    128,\n    256,\n    512,\n    512\n  ],\n  \"down_block_types\": [\n    \"DownEncoderBlock2D\",\n    \"DownEncoderBlock2D\",\n    \"DownEncoderBlock2D\",\n    \"DownEncoderBlock2D\"\n  ],\n  \"force_upcast\": true,\n  \"in_channels\": 3,\n  \"latent_channels\": 16,\n  \"latents_mean\": null,\n  \"latents_std\": null,\n  \"layers_per_block\": 2,\n  \"mid_block_add_attention\": true,\n  \"norm_num_groups\": 32,\n  \"out_channels\": 3,\n  \"sample_size\": 1024,\n  \"scaling_factor\": 0.3611,\n  \"shift_factor\": 0.1159,\n  \"up_block_types\": [\n    \"UpDecoderBlock2D\",\n    \"UpDecoderBlock2D\",\n    \"UpDecoderBlock2D\",\n    \"UpDecoderBlock2D\"\n  ],\n  \"use_post_quant_conv\": false,\n  \"use_quant_conv\": false\n}\n"
  },
  {
    "path": "configs/flux/model_index.json",
    "content": "{\n  \"_class_name\": \"FluxPipeline\",\n  \"_diffusers_version\": \"0.30.0.dev0\",\n  \"scheduler\": [\n    \"diffusers\",\n    \"FlowMatchEulerDiscreteScheduler\"\n  ],\n  \"text_encoder\": [\n    \"transformers\",\n    \"CLIPTextModel\"\n  ],\n  \"text_encoder_2\": [\n    \"transformers\",\n    \"T5EncoderModel\"\n  ],\n  \"tokenizer\": [\n    \"transformers\",\n    \"CLIPTokenizer\"\n  ],\n  \"tokenizer_2\": [\n    \"transformers\",\n    \"T5TokenizerFast\"\n  ],\n  \"transformer\": [\n    \"diffusers\",\n    \"FluxTransformer2DModel\"\n  ],\n  \"vae\": [\n    \"diffusers\",\n    \"AutoencoderKL\"\n  ]\n}\n"
  },
  {
    "path": "configs/flux/scheduler/scheduler_config.json",
    "content": "{\n  \"_class_name\": \"FlowMatchEulerDiscreteScheduler\",\n  \"_diffusers_version\": \"0.30.0.dev0\",\n  \"base_image_seq_len\": 256,\n  \"base_shift\": 0.5,\n  \"max_image_seq_len\": 4096,\n  \"max_shift\": 1.15,\n  \"num_train_timesteps\": 1000,\n  \"shift\": 1.0,\n  \"use_dynamic_shifting\": false\n}\n"
  },
  {
    "path": "configs/flux/text_encoder/config.json",
    "content": "{\n  \"_name_or_path\": \"openai/clip-vit-large-patch14\",\n  \"architectures\": [\n    \"CLIPTextModel\"\n  ],\n  \"attention_dropout\": 0.0,\n  \"bos_token_id\": 0,\n  \"dropout\": 0.0,\n  \"eos_token_id\": 2,\n  \"hidden_act\": \"quick_gelu\",\n  \"hidden_size\": 768,\n  \"initializer_factor\": 1.0,\n  \"initializer_range\": 0.02,\n  \"intermediate_size\": 3072,\n  \"layer_norm_eps\": 1e-05,\n  \"max_position_embeddings\": 77,\n  \"model_type\": \"clip_text_model\",\n  \"num_attention_heads\": 12,\n  \"num_hidden_layers\": 12,\n  \"pad_token_id\": 1,\n  \"projection_dim\": 768,\n  \"torch_dtype\": \"bfloat16\",\n  \"transformers_version\": \"4.43.3\",\n  \"vocab_size\": 49408\n}\n"
  },
  {
    "path": "configs/flux/text_encoder_2/config.json",
    "content": "{\n  \"_name_or_path\": \"google/t5-v1_1-xxl\",\n  \"architectures\": [\n    \"T5EncoderModel\"\n  ],\n  \"classifier_dropout\": 0.0,\n  \"d_ff\": 10240,\n  \"d_kv\": 64,\n  \"d_model\": 4096,\n  \"decoder_start_token_id\": 0,\n  \"dense_act_fn\": \"gelu_new\",\n  \"dropout_rate\": 0.1,\n  \"eos_token_id\": 1,\n  \"feed_forward_proj\": \"gated-gelu\",\n  \"initializer_factor\": 1.0,\n  \"is_encoder_decoder\": true,\n  \"is_gated_act\": true,\n  \"layer_norm_epsilon\": 1e-06,\n  \"model_type\": \"t5\",\n  \"num_decoder_layers\": 24,\n  \"num_heads\": 64,\n  \"num_layers\": 24,\n  \"output_past\": true,\n  \"pad_token_id\": 0,\n  \"relative_attention_max_distance\": 128,\n  \"relative_attention_num_buckets\": 32,\n  \"tie_word_embeddings\": false,\n  \"torch_dtype\": \"bfloat16\",\n  \"transformers_version\": \"4.43.3\",\n  \"use_cache\": true,\n  \"vocab_size\": 32128\n}\n"
  },
  {
    "path": "configs/flux/text_encoder_2/model.safetensors.index.json",
    "content": "{\n  \"metadata\": {\n    \"total_size\": 9524621312\n  },\n  \"weight_map\": {\n    \"encoder.block.0.layer.0.SelfAttention.k.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.0.layer.0.SelfAttention.o.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.0.layer.0.SelfAttention.q.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.0.layer.0.SelfAttention.relative_attention_bias.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.0.layer.0.SelfAttention.v.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.0.layer.0.layer_norm.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.0.layer.1.DenseReluDense.wi_0.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.0.layer.1.DenseReluDense.wi_1.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.0.layer.1.DenseReluDense.wo.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.0.layer.1.layer_norm.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.1.layer.0.SelfAttention.k.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.1.layer.0.SelfAttention.o.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.1.layer.0.SelfAttention.q.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.1.layer.0.SelfAttention.v.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.1.layer.0.layer_norm.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.1.layer.1.DenseReluDense.wi_0.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.1.layer.1.DenseReluDense.wi_1.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.1.layer.1.DenseReluDense.wo.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.1.layer.1.layer_norm.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.10.layer.0.SelfAttention.k.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.10.layer.0.SelfAttention.o.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.10.layer.0.SelfAttention.q.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.10.layer.0.SelfAttention.v.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.10.layer.0.layer_norm.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.10.layer.1.DenseReluDense.wi_0.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.10.layer.1.DenseReluDense.wi_1.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.10.layer.1.DenseReluDense.wo.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.10.layer.1.layer_norm.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.11.layer.0.SelfAttention.k.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.11.layer.0.SelfAttention.o.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.11.layer.0.SelfAttention.q.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.11.layer.0.SelfAttention.v.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.11.layer.0.layer_norm.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.11.layer.1.DenseReluDense.wi_0.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.11.layer.1.DenseReluDense.wi_1.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.11.layer.1.DenseReluDense.wo.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.11.layer.1.layer_norm.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.12.layer.0.SelfAttention.k.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.12.layer.0.SelfAttention.o.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.12.layer.0.SelfAttention.q.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.12.layer.0.SelfAttention.v.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.12.layer.0.layer_norm.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.12.layer.1.DenseReluDense.wi_0.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.12.layer.1.DenseReluDense.wi_1.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.12.layer.1.DenseReluDense.wo.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.12.layer.1.layer_norm.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.13.layer.0.SelfAttention.k.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.13.layer.0.SelfAttention.o.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.13.layer.0.SelfAttention.q.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.13.layer.0.SelfAttention.v.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.13.layer.0.layer_norm.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.13.layer.1.DenseReluDense.wi_0.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.13.layer.1.DenseReluDense.wi_1.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.13.layer.1.DenseReluDense.wo.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.13.layer.1.layer_norm.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.14.layer.0.SelfAttention.k.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.14.layer.0.SelfAttention.o.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.14.layer.0.SelfAttention.q.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.14.layer.0.SelfAttention.v.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.14.layer.0.layer_norm.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.14.layer.1.DenseReluDense.wi_0.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.14.layer.1.DenseReluDense.wi_1.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.14.layer.1.DenseReluDense.wo.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.14.layer.1.layer_norm.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.15.layer.0.SelfAttention.k.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.15.layer.0.SelfAttention.o.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.15.layer.0.SelfAttention.q.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.15.layer.0.SelfAttention.v.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.15.layer.0.layer_norm.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.15.layer.1.DenseReluDense.wi_0.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.15.layer.1.DenseReluDense.wi_1.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.15.layer.1.DenseReluDense.wo.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.15.layer.1.layer_norm.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.16.layer.0.SelfAttention.k.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.16.layer.0.SelfAttention.o.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.16.layer.0.SelfAttention.q.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.16.layer.0.SelfAttention.v.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.16.layer.0.layer_norm.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.16.layer.1.DenseReluDense.wi_0.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.16.layer.1.DenseReluDense.wi_1.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.16.layer.1.DenseReluDense.wo.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.16.layer.1.layer_norm.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.17.layer.0.SelfAttention.k.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.17.layer.0.SelfAttention.o.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.17.layer.0.SelfAttention.q.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.17.layer.0.SelfAttention.v.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.17.layer.0.layer_norm.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.17.layer.1.DenseReluDense.wi_0.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.17.layer.1.DenseReluDense.wi_1.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.17.layer.1.DenseReluDense.wo.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.17.layer.1.layer_norm.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.18.layer.0.SelfAttention.k.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.18.layer.0.SelfAttention.o.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.18.layer.0.SelfAttention.q.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.18.layer.0.SelfAttention.v.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.18.layer.0.layer_norm.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.18.layer.1.DenseReluDense.wi_0.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.18.layer.1.DenseReluDense.wi_1.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.18.layer.1.DenseReluDense.wo.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.18.layer.1.layer_norm.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.19.layer.0.SelfAttention.k.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.19.layer.0.SelfAttention.o.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.19.layer.0.SelfAttention.q.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.19.layer.0.SelfAttention.v.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.19.layer.0.layer_norm.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.19.layer.1.DenseReluDense.wi_0.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.19.layer.1.DenseReluDense.wi_1.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.19.layer.1.DenseReluDense.wo.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.19.layer.1.layer_norm.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.2.layer.0.SelfAttention.k.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.2.layer.0.SelfAttention.o.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.2.layer.0.SelfAttention.q.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.2.layer.0.SelfAttention.v.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.2.layer.0.layer_norm.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.2.layer.1.DenseReluDense.wi_0.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.2.layer.1.DenseReluDense.wi_1.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.2.layer.1.DenseReluDense.wo.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.2.layer.1.layer_norm.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.20.layer.0.SelfAttention.k.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.20.layer.0.SelfAttention.o.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.20.layer.0.SelfAttention.q.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.20.layer.0.SelfAttention.v.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.20.layer.0.layer_norm.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.20.layer.1.DenseReluDense.wi_0.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.20.layer.1.DenseReluDense.wi_1.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.20.layer.1.DenseReluDense.wo.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.20.layer.1.layer_norm.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.21.layer.0.SelfAttention.k.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.21.layer.0.SelfAttention.o.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.21.layer.0.SelfAttention.q.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.21.layer.0.SelfAttention.v.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.21.layer.0.layer_norm.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.21.layer.1.DenseReluDense.wi_0.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.21.layer.1.DenseReluDense.wi_1.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.21.layer.1.DenseReluDense.wo.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.21.layer.1.layer_norm.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.22.layer.0.SelfAttention.k.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.22.layer.0.SelfAttention.o.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.22.layer.0.SelfAttention.q.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.22.layer.0.SelfAttention.v.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.22.layer.0.layer_norm.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.22.layer.1.DenseReluDense.wi_0.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.22.layer.1.DenseReluDense.wi_1.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.22.layer.1.DenseReluDense.wo.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.22.layer.1.layer_norm.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.23.layer.0.SelfAttention.k.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.23.layer.0.SelfAttention.o.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.23.layer.0.SelfAttention.q.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.23.layer.0.SelfAttention.v.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.23.layer.0.layer_norm.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.23.layer.1.DenseReluDense.wi_0.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.23.layer.1.DenseReluDense.wi_1.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.23.layer.1.DenseReluDense.wo.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.23.layer.1.layer_norm.weight\": \"model-00002-of-00002.safetensors\",\n    \"encoder.block.3.layer.0.SelfAttention.k.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.3.layer.0.SelfAttention.o.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.3.layer.0.SelfAttention.q.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.3.layer.0.SelfAttention.v.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.3.layer.0.layer_norm.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.3.layer.1.DenseReluDense.wi_0.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.3.layer.1.DenseReluDense.wi_1.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.3.layer.1.DenseReluDense.wo.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.3.layer.1.layer_norm.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.4.layer.0.SelfAttention.k.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.4.layer.0.SelfAttention.o.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.4.layer.0.SelfAttention.q.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.4.layer.0.SelfAttention.v.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.4.layer.0.layer_norm.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.4.layer.1.DenseReluDense.wi_0.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.4.layer.1.DenseReluDense.wi_1.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.4.layer.1.DenseReluDense.wo.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.4.layer.1.layer_norm.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.5.layer.0.SelfAttention.k.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.5.layer.0.SelfAttention.o.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.5.layer.0.SelfAttention.q.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.5.layer.0.SelfAttention.v.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.5.layer.0.layer_norm.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.5.layer.1.DenseReluDense.wi_0.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.5.layer.1.DenseReluDense.wi_1.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.5.layer.1.DenseReluDense.wo.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.5.layer.1.layer_norm.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.6.layer.0.SelfAttention.k.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.6.layer.0.SelfAttention.o.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.6.layer.0.SelfAttention.q.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.6.layer.0.SelfAttention.v.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.6.layer.0.layer_norm.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.6.layer.1.DenseReluDense.wi_0.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.6.layer.1.DenseReluDense.wi_1.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.6.layer.1.DenseReluDense.wo.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.6.layer.1.layer_norm.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.7.layer.0.SelfAttention.k.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.7.layer.0.SelfAttention.o.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.7.layer.0.SelfAttention.q.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.7.layer.0.SelfAttention.v.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.7.layer.0.layer_norm.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.7.layer.1.DenseReluDense.wi_0.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.7.layer.1.DenseReluDense.wi_1.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.7.layer.1.DenseReluDense.wo.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.7.layer.1.layer_norm.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.8.layer.0.SelfAttention.k.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.8.layer.0.SelfAttention.o.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.8.layer.0.SelfAttention.q.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.8.layer.0.SelfAttention.v.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.8.layer.0.layer_norm.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.8.layer.1.DenseReluDense.wi_0.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.8.layer.1.DenseReluDense.wi_1.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.8.layer.1.DenseReluDense.wo.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.8.layer.1.layer_norm.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.9.layer.0.SelfAttention.k.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.9.layer.0.SelfAttention.o.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.9.layer.0.SelfAttention.q.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.9.layer.0.SelfAttention.v.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.9.layer.0.layer_norm.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.9.layer.1.DenseReluDense.wi_0.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.9.layer.1.DenseReluDense.wi_1.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.9.layer.1.DenseReluDense.wo.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.block.9.layer.1.layer_norm.weight\": \"model-00001-of-00002.safetensors\",\n    \"encoder.final_layer_norm.weight\": \"model-00002-of-00002.safetensors\",\n    \"shared.weight\": \"model-00001-of-00002.safetensors\"\n  }\n}\n"
  },
  {
    "path": "configs/flux/tokenizer/merges.txt",
    "content": "#version: 0.2\ni n\nt h\na n\nr e\na r\ne r\nth e</w>\nin g</w>\no u\no n\ns t\no r\ne n\no n</w>\na l\na t\ne r</w>\ni t\ni n</w>\nt o</w>\nr o\ni s</w>\nl e\ni c\na t</w>\nan d</w>\ne d</w>\no f</w>\nc h\no r</w>\ne s</w>\ni l\ne l\ns t</w>\na c\no m\na m\nl o\na n</w>\na y</w>\ns h\nr i\nl i\nt i\nf or</w>\nn e\nð Ł\nr a\nh a\nd e\no l\nv e</w>\ns i\nu r\na l</w>\ns e\n' s</w>\nu n\nd i\nb e\nl a\nw h\no o\nd ay</w>\ne n</w>\nm a\nn o\nl e</w>\nt o\nou r</w>\ni r\ng h\nw it\ni t</w>\ny o\na s\ns p\nth is</w>\nt s</w>\nat i\nyo u</w>\nwit h</w>\na d\ni s\na b\nl y</w>\nw e\nth e\nt e\na s</w>\na g\nv i\np p\ns u\nh o\nm y</w>\n. .\nb u\nc om\ns e</w>\ner s</w>\nm e\nm e</w>\nal l</w>\nc on\nm o\nk e</w>\ng e\nou t</w>\nen t</w>\nc o\nf e\nv er\na r</w>\nf ro\na u\np o\nc e</w>\ngh t</w>\nar e</w>\ns s</w>\nfro m</w>\nc h</w>\nt r\nou n\non e</w>\nb y</w>\nd o\nt h</w>\nw or\ner e</w>\nk e\np ro\nf or\nd s</w>\nb o\nt a\nw e</w>\ng o\nh e\nt er</w>\nin g\nd e</w>\nb e</w>\nati on</w>\nm or\na y\ne x\nil l</w>\np e\nk s</w>\ns c\nl u\nf u\nq u\nv er</w>\nðŁ ĺ\nj u\nm u\nat e</w>\nan d\nv e\nk ing</w>\nm ar\no p\nh i\n.. .</w>\np re\na d</w>\nr u\nth at</w>\nj o\no f\nc e\nne w</w>\na m</w>\na p\ng re\ns s\nd u\nno w</w>\ny e\nt ing</w>\ny our</w>\nit y</w>\nn i\nc i\np ar\ng u\nf i\na f\np er\nt er\nu p</w>\ns o</w>\ng i\non s</w>\ng r\ng e</w>\nb r\np l\n' t</w>\nm i\nin e</w>\nwe e\nb i\nu s</w>\nsh o\nha ve</w>\nto day</w>\na v\nm an\nen t\nac k</w>\nur e</w>\nou r\nâ Ģ\nc u\nl d</w>\nlo o\ni m\nic e</w>\ns om\nf in\nre d</w>\nre n\noo d</w>\nw as</w>\nti on</w>\np i\ni r</w>\nth er</w>\nt y</w>\np h\nar d</w>\ne c\n! !</w>\nm on\nmor e</w>\nw ill</w>\nt ra\nc an</w>\nc ol\np u\nt e</w>\nw n</w>\nm b\ns o\nit i\nju st</w>\nn ing</w>\nh ere</w>\nt u\np a\np r\nbu t</w>\nwh at</w>\nal ly</w>\nf ir\nm in\nc a\nan t</w>\ns a\nt ed</w>\ne v\nm ent</w>\nf a\nge t</w>\nam e</w>\nab out</w>\ng ra\nno t</w>\nha pp\nay s</w>\nm an</w>\nh is</w>\nti me</w>\nli ke</w>\ng h</w>\nha s</w>\nth an\nlo ve</w>\nar t</w>\nst e\nd ing</w>\nh e</w>\nc re\nw s</w>\nw at\nd er</w>\nit e</w>\ns er\nac e</w>\nag e</w>\nen d</w>\nst r\na w\nst or\nr e</w>\nc ar\nel l</w>\nal l\np s</w>\nf ri\np ho\np or\nd o</w>\na k\nw i\nf re\nwh o</w>\nsh i\nb oo\ns on</w>\nel l\nwh en</w>\nil l\nho w</w>\ngre at</w>\nw in\ne l</w>\nb l\ns si\nal i\nsom e</w>\nðŁ Ĵ\nt on\nd er\nle s</w>\np la\nï ¸\ne d\ns ch\nh u\non g</w>\nd on</w>\nk i\ns h</w>\nan n\nc or\n. .</w>\noun d</w>\na z\nin e\nar y</w>\nfu l</w>\nst u\nou ld</w>\nst i\ng o</w>\nse e</w>\nab le</w>\nar s</w>\nl l</w>\nm is\nb er\nc k</w>\nw a\nen ts</w>\nn o</w>\nsi g\nf e</w>\nfir st</w>\ne t</w>\nsp e\nac k\ni f</w>\nou s</w>\n' m</w>\nst er</w>\na pp\nan g\nan ce</w>\nan s</w>\ng ood</w>\nb re\ne ver\nthe y</w>\nt ic\ncom e</w>\nof f\nb ack</w>\nas e</w>\ning s</w>\nol d</w>\ni ght</w>\nf o\nh er</w>\nhapp y</w>\np ic\nit s</w>\nv ing</w>\nu s\nm at\nh om\nd y</w>\ne m\ns k\ny ing</w>\nthe ir</w>\nle d</w>\nr y</w>\nu l\nh ar\nc k\nt on</w>\non al</w>\nh el\nr ic\nb ir\nvi e\nw ay</w>\nt ri\nd a\np le\nb ro\nst o\noo l</w>\nni ght</w>\ntr u\nb a\nre ad\nre s</w>\nye ar</w>\nf r\nt or\nal s</w>\nc oun\nc la\nt ure</w>\nv el\nat ed</w>\nle c\nen d\nth ing</w>\nv o\nic i\nbe st</w>\nc an\nwor k</w>\nla st</w>\naf ter</w>\nen ce</w>\np ri\np e</w>\ne s\ni l</w>\nâĢ ¦</w>\nd re\ny s</w>\no ver</w>\ni es</w>\nðŁ ĳ\ncom m\nt w\nin k</w>\ns un\nc l\nli fe</w>\nt t\na ch\nl and</w>\ns y\nt re\nt al\np ol\ns m\ndu c\ns al\nf t</w>\n' re</w>\nch e\nw ar\nt ur\nati ons</w>\nac h</w>\nm s</w>\nil e</w>\np m</w>\nou gh</w>\nat e\nst ar\nwee k</w>\n! !!</w>\nc lu\nth ere</w>\nn er</w>\nt om\ns el\nï¸ ı</w>\nwor ld</w>\nv es</w>\nc am\ngo t</w>\nin ter\nof f</w>\nu m</w>\nton ight</w>\no ther</w>\nh ou\nloo k</w>\nj e\ni d</w>\nsi on</w>\nbe au\nat t\nel i\nor t</w>\nre c\nf f\nst er\nsu pp\ng en\nbe en</w>\nil y</w>\nte am</w>\nm m\ni c</w>\npe op\nit t\nat s</w>\non ly</w>\nmb er</w>\nen g\nb ri\nm p\nk now</w>\nb ur\nb ar\nin s</w>\nlo w</w>\nsh e</w>\nro w</w>\nâ Ŀ\nt ro\npeop le</w>\nvi a</w>\nlo w\nag a\nbe t\nx t</w>\nf ac\nch ar\ne ar\nw al\ns en\nf am\nb le</w>\nn ati\nis h</w>\nn or\ng ame</w>\nli ve</w>\ns co\nle y</w>\nd on\nic k</w>\nb all</w>\nver y</w>\nthe se</w>\np an\ni a</w>\nat ing</w>\nc r\na re\ng ir\nma ke</w>\nst re\nsho w</w>\n. \"</w>\nf l\nu p\nd r\nthan ks</w>\nil li\nw om\nst s</w>\ni g\ns ur\never y\nc ur\nvie w</w>\nle t</w>\nin to</w>\nmo st</w>\nn a\nin di\ng ar\nha d</w>\ns ou\nv ed</w>\nan t\niti on</w>\nma de</w>\nf ol\nun i\nit ed</w>\nðŁ ı\nic al</w>\nth r\nread y</w>\nch ec\nd ra\nk es</w>\nboo k</w>\ne p</w>\nsi c</w>\nmor ning</w>\nne ws</w>\nc au\nc t</w>\nw ell</w>\nan c\npho to</w>\nth an</w>\nor s</w>\nbir th\ng g\nou t\nne xt</w>\nsom e\nen ing</w>\nstor y</w>\nch ri\ndo wn</w>\nhom e</w>\nf fe\nfre e</w>\nd a</w>\nb or\nf il\nci al</w>\nthan k</w>\nsi de</w>\nle ar\nqu e\nl ine</w>\nt en\nat es</w>\nye ars</w>\nm y\npho to\nbeau ti\nri ght</w>\nn u\nfor m\nshi p</w>\nb an\nth er\nd ays</w>\ng am\nas on</w>\ng y</w>\nðŁ İ\nbirth day</w>\nse t</w>\nic k\ne t\nst ill</w>\ncom ing</w>\nta ke</w>\nðŁ ĩ\nb b\ns ol\ns on\nd en\ne p\nmu sic</w>\nthe m</w>\nde n</w>\nwh y</w>\nf oo\nc ra\nam az\nw n\nh ol\nt ting</w>\nw r\nu e</w>\nma g\nc ro\nl an\nc lo\nb ra\na k</w>\ns ing</w>\nc al\nre ad</w>\n' ve</w>\njo h\nb ab\nd ri\nb lo\nbi g</w>\ner ic\nin t</w>\nt or</w>\ntr y</w>\nl a</w>\nle g\nhou se</w>\nm ic\nv al\nbeauti ful</w>\nl itt\nchec k</w>\nne w\nver s\ns w\nar i\npla y\nh er\nâĢ ĵ</w>\nw in</w>\nm a</w>\ncon gr\nsch ool</w>\nf un\n. @</w>\nhe al\nic h</w>\nd el\nwh ere</w>\nl on\nke t</w>\ntw o</w>\nmu ch</w>\nwat ch</w>\nv en\nd ed</w>\na st</w>\nk ed</w>\nb as\ngo ing</w>\nm p</w>\ne ver</w>\nw ays</w>\nro o\nde sig\nl y\ns ed</w>\nto p</w>\nl in\nch an\nto o</w>\nit ing</w>\nd ent</w>\ngh ts</w>\nt y\nsp o\nne ed</w>\nb lu\nin st\nbe ing</w>\nâĿ ¤\nw el\nl s</w>\nhi m</w>\nm ay</w>\nst ing</w>\nn a</w>\nel y</w>\nlitt le</w>\ng a\nn at\ntom or\nm c\nh on\nw ant</w>\na ir\npi c</w>\nam eric\np er</w>\nle ss</w>\nwee k\nve l</w>\na h</w>\nc ap\nch am\ng er\nti m\ntomor row</w>\nne ss</w>\nst ate</w>\nh al\nser v\nz e</w>\no s</w>\np at\nv is\nex c\ns in\nf f</w>\nc ity</w>\nc en\nan y\nb el\nsu mm\nt in\nw ould</w>\nloo king</w>\nk o\nce le\nfam ily</w>\nm er\npo w\nhel p</w>\nbu s\nc o</w>\nc le\nsel f</w>\nen s</w>\nic s</w>\nth o\nan i\nch o\nle ad\nb s</w>\nt wee\nth ink</w>\nfor e</w>\nch il\nvi de\ndi d</w>\nal e</w>\nch i\nv il\nen ds</w>\nw ing</w>\np as\n' ll</w>\nv ol\ns a</w>\ng s</w>\nman y</w>\nj ec\nbe fore</w>\ngra ph\nn y</w>\nur ing</w>\nw il\nd d\nbu il\nf av\nst ed</w>\ntr an\nl ing</w>\nou d</w>\nd ge</w>\nfi el\nnati onal</w>\nst a\nc er\nw ere</w>\nin a</w>\nse ason</w>\nc ou\nn ed</w>\namaz ing</w>\nti ons</w>\ncele br\nn s</w>\na th\nhe ad</w>\ns day</w>\nd ar\nlo c\nv in\nan other</w>\ng oo\ns at\nn y\njo in</w>\npre s\ns es</w>\ns ing\nan a</w>\nin ing</w>\n.. ..</w>\nc our\nï¸ ı\nac t</w>\ncau se</w>\nli ght</w>\nam s</w>\nt a</w>\nb al\nf c</w>\nhi gh</w>\noff ici\nt t</w>\nchri st\nd ic\nd ay\nra l</w>\nh or\n: )</w>\nvi si\nn am\no b\nma s</w>\ngh t\nre ally</w>\nt un\nfin d</w>\nthr ough</w>\npor t</w>\nu t\nti ve</w>\nst y\nn e</w>\nor e</w>\nðŁĺ Ĥ\nsupp ort</w>\nne ver</w>\nev en</w>\nðŁ Ķ\nh a</w>\ny a</w>\nl d\nu k</w>\nr an\nj am\nwi th\nme di\nd es</w>\nne y</w>\nch ing</w>\nal e\nh y\nk in\n! !\nd y\npl ace</w>\nal so</w>\nb le\nwh ich</w>\nbl ack</w>\nb li\ns ay</w>\npar k</w>\npl ay</w>\nir e</w>\nvide o</w>\nweek end</w>\na il\nke y</w>\np t</w>\nw ard</w>\nfri day</w>\nd in\nine ss</w>\ng ro\nb en\nal ways</w>\nt ball</w>\nag o</w>\nm il\nc y\npro duc\ndi sc\nun der\nple ase</w>\nsp or\nfu ll</w>\ne y</w>\nðŁ Ļ\nis e</w>\niti es</w>\nc at\nk no\nu se</w>\nfo re\nk er</w>\nar t\nhi gh\nop en</w>\ns an\ne f\nour s</w>\nsh ed</w>\nst ri\nd ro\naga in</w>\ni m</w>\nðŁ ĵ\nen jo\nfu n</w>\nge tting</w>\np en\ng er</w>\nc li\nan y</w>\never y</w>\ne u\nwom en</w>\nâ ľ\ne st</w>\nc ould</w>\nr y\n\" @</w>\nth ou\nsh a\ncomm un\nb er</w>\nd ents</w>\ndi s\nwh ile</w>\naw ay</w>\ndi o</w>\nh am\ng la\nd ate</w>\nk a</w>\nmis s</w>\nun ch</w>\nw on\nin f\nroo m</w>\ng a</w>\nre al</w>\nex per\ndi rec\nsh ould</w>\nsp r\ng ol\nl ong</w>\nbet ter</w>\nor i\ne y\ni ence</w>\nil s</w>\nz z\nh an\nf ound</w>\nv s</w>\nâ Ļ\npo st</w>\nti c</w>\npar t</w>\nm en\nren ce</w>\nce ss</w>\nv ic\ns il\nsho p</w>\nðŁĺ Ĥ</w>\nf ood</w>\nv al</w>\nsti c</w>\ny ou\ns ays</w>\ne lec\nst ar</w>\no c\nl and\ni d\nc tion</w>\nfiel d</w>\ns of\nst art</w>\nwat er</w>\nfri ends</w>\non es</w>\nðŁ Į\nf la\nf ar\nwh ite</w>\npar ty</w>\nin st</w>\ngr ou\nt v</w>\nevery one</w>\nm ent\nj a\nch a\npr in\nan ts</w>\nd uring</w>\nl at\nl ar\nwe st</w>\nth en</w>\nk a\ny oun\nin sp\nin te\nwe en</w>\nvisi t</w>\naga inst</w>\nre le\nhe ad\nc es</w>\nto wn</w>\nloo ks</w>\nth re\nre gi\nren t</w>\npro jec\ngir l</w>\nse ar\nw o\nm om\nc ar</w>\nh un\npu bli\nd i</w>\np le</w>\nc all</w>\nc ri\nu m\nfor d</w>\nper fe\nfri end</w>\nh ard</w>\nssi on</w>\nte st</w>\npla ying</w>\nar ound</w>\nbe cause</w>\nke ts</w>\nme et</w>\nsat ur\nar ti\nwor k\nj un\nv en</w>\nr un\nme mber</w>\npor t\nsu per\nt wit\ns am\nel s</w>\nt ly</w>\nad v\nati ve</w>\nat h</w>\ns ure</w>\nav ail\nla r</w>\ns qu\nar ds</w>\nev ent</w>\nm en</w>\nl l\no ver\nlo gy</w>\nit al</w>\ntim es</w>\nm al\nb ack\nc oo\nma king</w>\nst ru\nâ ģ\nit u\nsh ar\ng an</w>\nc as\ns n\nsumm er</w>\npic ture</w>\nf an\nh in\nchrist mas</w>\nc y</w>\npr oud</w>\ncham pi\ndesig n</w>\npp ing</w>\nho pe</w>\nc a</w>\navail able</w>\nma y\nwe d\nphoto graph\nspe cial</w>\nsal e</w>\nsto p</w>\ner y</w>\na we\nal ity</w>\nhi story</w>\nam a</w>\npre si\nb ru\nwor king</w>\nd one</w>\nd r</w>\nk en</w>\nfe at\nw ood</w>\nate st</w>\nsun day</w>\nmo vi\nvel y</w>\ns le\nf ace</w>\nsp ec\nstu dents</w>\nb y\nha m</w>\nsp on\nbus iness</w>\nd at\ni e</w>\ni p\nso ci\ng lo\nh and\nre cor\nr s</w>\nme e\nke ep</w>\np ur\nheal th</w>\nsh e\ncom ple\ngo d</w>\nda vi\ncol lec\nli st\nr a</w>\nclu b</w>\nt ers</w>\nin clu\nth ings</w>\npl an\nâ ĺ\njoh n</w>\nsh ing</w>\nat ul\nso on</w>\nblu e</w>\ng or\nsatur day</w>\nw on</w>\ncongr atul\nse e\nâĿ¤ ï¸ı</w>\ntho se</w>\nðŁĺ į</w>\nfin al</w>\nd ou\nit h</w>\no wn</w>\nro ad</w>\nt our</w>\na st\nindi a</w>\nti l</w>\nn d</w>\nf er\nfav or\nsu l\nlear n</w>\nfir e</w>\nju st\ngrou p</w>\na h\nr ac\nbo dy</w>\nu r</w>\nc are</w>\nà ¸\np lo\no h</w>\npo s\ngi ve</w>\nte ch\nsu b\nc ent\ner ing</w>\ny m\nil ity</w>\nf ic\nlon don</w>\nv ir\ngu ys</w>\nb a</w>\nðŁ ¤\nbab y</w>\nsc re\nðŁĺ į\ntru mp</w>\nun der</w>\nchan ge</w>\ni an</w>\ncol le\nss es</w>\nl er</w>\nss ed</w>\nn ice</w>\nann oun\npow er</w>\ns ar\na king</w>\nmin i\ns li\ns wee\nk ar\nfu l\nc ru\nac tion</w>\na ther</w>\n) .</w>\nst and\nde vel\na a\ng an\nle ft</w>\nlo l</w>\nre l\ntran s\nm ents</w>\nin t\ne f</w>\nman ag\ndi g\ngen er\ndo wn\np au\nti v\nk u\nth ur\nk en\nst on</w>\nf ans</w>\ntal k</w>\ntwee t</w>\nt oo\nsty le</w>\npro te\nse con\nfr on\nawe some</w>\ng l\np al\nne t\ns or\nla u\ng on\nsin ce</w>\nt ty</w>\nser ies</w>\nme mor\nb eli\nfil m</w>\ndi d\ndi es</w>\no t\ncongratul ations</w>\np ra\ne ve</w>\nw oo\noffici al</w>\nsu c\nin cre\nb on\npar t\npp ed</w>\ncla ss</w>\nsi ve</w>\nbo y</w>\ncu l\nperfe ct</w>\nt ou\nd am\nwel come</w>\nfoo tball</w>\nh i</w>\np ap\nwa it</w>\nad a</w>\ncongr ats</w>\nyoun g</w>\nexc ited</w>\nre ce\nj an\nv a</w>\nre d\nst ra\nmedi a</w>\n' d</w>\ndo es</w>\nle t\nmu l\nill s</w>\ngre en</w>\nm el\nto ge\nfu ture</w>\nye ster\nvers ity</w>\nfor m</w>\nta in</w>\ni de\nch es</w>\nki ds</w>\nqu i\nha ha\nde ta\nbi g\nfavor ite</w>\ngir ls</w>\ncon tin\ndo m</w>\nsear ch</w>\nu al</w>\na ir</w>\nd ers</w>\nmon th</w>\nc er</w>\nyester day</w>\ncommun ity</w>\nad e</w>\ndo g</w>\nvil le</w>\nic es</w>\nd eli\nsy ste\nru n</w>\nis m</w>\nhe art</w>\nc up</w>\nen ti\nfe w</w>\npresi dent</w>\ne ds</w>\nun til</w>\nfe sti\no k\nf lo\nsa id</w>\nol e</w>\nme d\ntra vel</w>\nÂ £</w>\nph one</w>\ntoge ther</w>\nfa st</w>\nlo t</w>\ngam es</w>\nsh ir\nbet ween</w>\ny es</w>\nth ers</w>\ndo ing</w>\nm ac\nat or</w>\nb and</w>\nfol low\nprojec t</w>\ndevel op\ndi ffe\ncon fe\nspe ci\nca st</w>\ny s\nbo ard</w>\nr d</w>\ni al</w>\nsh oo\nr am\nha ving</w>\nsh are</w>\nfol low</w>\non e\nn ame</w>\nm r</w>\npu t</w>\ndisc u\nor y</w>\nc ame</w>\nou s\ns ite</w>\ntwit ter</w>\nt b\nt it\nfin ally</w>\nz ed</w>\nsu per</w>\ncom pan\nus ing</w>\nall s</w>\nli st</w>\nr is</w>\nsho t</w>\ng al\nt ar\nde l</w>\njoh n\nâĢ Ķ</w>\nsome thing</w>\nra m</w>\ninte re\nwh e\nb it</w>\nðŁ į\nstre et</w>\noun d\na i\ntic kets</w>\nmovi e</w>\nre al\nk y\nta king</w>\no pp\nc c</w>\nl am\nm oun\nin ve\nbl ack\nus ed</w>\non line</w>\ny or\nloc al</w>\ngu e\nc ks</w>\no w\nge st</w>\nbo ys</w>\nilli on</w>\ncon t\nre ci\nin ed</w>\neu ro\nno w\nse en</w>\np h</w>\nte ach\nde f\nsou th</w>\nsu ch</w>\naw ard</w>\nmu st</w>\nis su\nca re\nfe el</w>\np lu\nl atest</w>\nspor ts</w>\nwe b\nte x\ne ment</w>\ns k</w>\nfi c</w>\nw an\nte ch</w>\no t</w>\nbo x</w>\nn er\nfre e\nt al</w>\na sh\nc ase</w>\nho t</w>\nwon der\nmee ting</w>\ner a</w>\nch all\nðŁ Ĳ\njo b</w>\nil i\nc ool</w>\nj our\nth s</w>\nm o</w>\nf el\ndi e</w>\nmic ha\ne le\nte am\nserv ice</w>\nst and</w>\nma kes</w>\np ing</w>\near ly</w>\ncom es</w>\ne k</w>\nho li\nv ers</w>\nag ue</w>\ns au\nthre e</w>\nmon day</w>\nfa shi\nsome one</w>\nth ro\nse a</w>\nb ad</w>\nsupp or\ntur n</w>\nur y</w>\nm ing</w>\nphotograph y</w>\nn ic\nmar k</w>\npre tty</w>\nss ing</w>\nwat ching</w>\nme mb\nar ri\ncoun ty</w>\nbe ach</w>\nfr an\ncen ter</w>\npol ice</w>\nb at\npubli c</w>\nt an\npre ss</w>\ns af\ns y</w>\nge ts</w>\nro y\nn ers</w>\ny our\nbu y</w>\nst ers</w>\nsho w\nas ed</w>\nchil dre\naf ric\nin es</w>\nsp ace</w>\nsc ri\nh all</w>\npa in\nar ing</w>\nhom e\nm ur\nheal th\nch ed</w>\ns and\nrece i\ngu y</w>\ne a\nameric an</w>\nre si\nchildre n</w>\n- -\ni ri\ning ton</w>\ncoun try</w>\nro ss</w>\nle n</w>\nann a</w>\nboo ks</w>\nb c</w>\ne ce</w>\nd om\nlo vely</w>\nk h\npe t\ng y\ng ri\nst age</w>\noff ice</w>\nro ck</w>\nm on</w>\nb ay</w>\nt able</w>\nsu n</w>\nm ed</w>\nth in\nl or\nf low\n( @</w>\nuni versity</w>\nstor e</w>\nfron t</w>\ngoo d\nz a</w>\nvo te</w>\nnor th</w>\nhe y</w>\nan im\nor der</w>\nmi d\nwith out</w>\na de\nre member</w>\nmar ket</w>\n? ?</w>\nmu s\ntra ining</w>\ne duc\nbu t\nco ver</w>\nst an\nsc en\nb la\nbre ak\nl ou\ns ame</w>\ng old</w>\na in</w>\no s\nbo th</w>\nl it\nver n\na i</w>\nal bu\np a</w>\nenjo y</w>\nbe g\nell ing</w>\nthur sday</w>\ninf o</w>\ns an</w>\nameric a</w>\nha ir</w>\nte l</w>\nmar ch</w>\ncon cer\ncolle ge</w>\nconfe rence</w>\nap p</w>\nh our</w>\nch ang\nâ ļ\ns our\nol s</w>\nwe ather</w>\nw ar</w>\np hi\nfesti val</w>\nsecon d</w>\ncu te</w>\npr ac\nen er\nstr y</w>\nle a\npol it\ns av\nse n</w>\no w</w>\nm i</w>\nne ar</w>\nou ght</w>\nz e\nco ffe\nw illi\nd an\nse y</w>\ndavi d</w>\ne se</w>\nf an</w>\nde ci\nthe at\nno v\nati on\ntr ac\nsc i\nre view</w>\nc el\ne m</w>\nu n</w>\nju ly</w>\nor ig\nti on\nd ru\nform er</w>\nst ay</w>\naf ter\nin v\ntoo k</w>\ndat a</w>\nb al</w>\ntu es\nd an</w>\nev ening</w>\nðŁĺĤ ðŁĺĤ\nd ol\nu res</w>\npro vi\nt s\ne st\nsig n</w>\nj ac\nu k\ns ong</w>\nye t</w>\nbo w\nin du\nj ap\nh oo\npo int</w>\nany one</w>\nz y</w>\ni st</w>\nh ur\nit al\nbuil ding</w>\nwom an</w>\nch ur\nj er\nper for\nco ach</w>\nle ague</w>\nce ss\nne t</w>\ni mag\nnati on\nbr it\nqu e</w>\naw ards</w>\nag es</w>\nwor ks</w>\nc ed</w>\nman ce</w>\nl ate</w>\nig n</w>\nmon ey</w>\ntru e</w>\ni i</w>\nt ell</w>\npl ac\np ac\nas y</w>\nwor ld\nbe hin\nim port\nread ing</w>\ngra m</w>\ngi ving</w>\nme t</w>\nh it</w>\nfor ward</w>\nst om\npres ent\njun e</w>\nso cial</w>\nno on</w>\nmar t\nhal f</w>\ns we\ngo vern\nk er\ndeta ils</w>\nli sh</w>\n_ _\nac y</w>\nsi a</w>\nber t</w>\nf all</w>\n! !!!</w>\n) ,</w>\nth i\nd iti\nsp ort</w>\nk ing\nf it\nst af\nc at</w>\nmu se\ncen tr\ny er</w>\ncon tro\nb loo\nwal k</w>\nac tu\ndid n</w>\nli m\nlear ning</w>\nre search</w>\nwed ne\nau th\nh ours</w>\nk y</w>\nf ar</w>\nh en\n.. ..\nit ch\nri l</w>\nstr ong</w>\nsk y</w>\nque sti\njam es</w>\nr on\nd g\nf ur\nc in\ndo es\napp ro\nmar ke\ntu res</w>\nful ly</w>\nch at</w>\nbehin d</w>\nte m\nfin i\nmis sion</w>\nb att\nfe el\nhe av\nevery thing</w>\nb ar</w>\nw ish</w>\npre mi\ni ma\nexper ience</w>\ne ach</w>\nre port</w>\nswee t</w>\ntic s</w>\nspr ing</w>\nre spon\nsyste m</w>\nvic tor\nl in</w>\nsa w</w>\nal ready</w>\ngh ter</w>\nf le\nã ĥ\nbr ing</w>\nalbu m</w>\n- -</w>\nell s</w>\nst an</w>\nto m</w>\ninter national</w>\nw ent</w>\nan ni\nmat ch</w>\npp er</w>\nst one</w>\nsm all</w>\nra in</w>\nfashi on</w>\nare a</w>\nv an\nag ram</w>\nk o</w>\nthou ght</w>\nwor th</w>\nv an</w>\nm er</w>\ncoffe e</w>\nit es</w>\ng n\narti st</w>\nc on</w>\nar ch\nc ir\nse cre\ngr ound</w>\nis o\nh and</w>\nco m</w>\nbri dge</w>\nh s</w>\nx i\nl ink</w>\npu l\nsp l\nr ace</w>\nf li\nri ver</w>\ng as</w>\ndi sco\nd al\nplay er</w>\nf it</w>\nphoto s</w>\nit y\no k</w>\nj or\ntr a</w>\nap ril</w>\nad s</w>\na di\nsol u\nbeau ty</w>\ndo or</w>\nme ss\nup date</w>\nali a</w>\nsch o\nen ed</w>\nmom ent</w>\nsco t\nsc ience</w>\ni or</w>\nti es</w>\nac ross</w>\nous ly</w>\nsh es</w>\ndoes n</w>\np age</w>\nwat er\nm illion</w>\ncla ssi\nl ic\nca st\nform ation</w>\nmicha el</w>\nell o</w>\ns mo\nin ts</w>\nvi sion</w>\nop ening</w>\nld n</w>\nau str\ntues day</w>\nwin ner</w>\npo ssi\nr ound</w>\nshir t</w>\ndi t</w>\nb o</w>\nu es</w>\nil led</w>\nal ong</w>\ntri p</w>\nstar ting</w>\nim pro\nk an\nper son</w>\nno t\nre co\nne eds</w>\nc le</w>\nli e</w>\nre st</w>\nr ing</w>\nwin ter</w>\nsi mp\nmo m</w>\nbe er</w>\nfac e\ntor s</w>\nus a</w>\ncollec tion</w>\nge or\nse ssion</w>\ntr ying</w>\nla s</w>\nla ke</w>\nj en\norig in\nstu dent</w>\nse cur\nv in</w>\npic s</w>\nex pe\ncom p\ngon na</w>\ne qu\nb ad\nle y\na u</w>\nmemb ers</w>\nbre ak</w>\nw all</w>\ngi c</w>\ndin ner</w>\nbu l\ninsp ir\nr i</w>\nmin d</w>\nic a</w>\nwin ning</w>\ntal king</w>\nt ren\ns is</w>\nt en</w>\nwonder ful</w>\ns now</w>\nhe ar</w>\nth om\nno thing</w>\ngu i\nst in\nblo g</w>\nfe st</w>\nb un\nle e</w>\nwar ds</w>\nch ance</w>\ndre ss</w>\nre n</w>\npau l</w>\np es</w>\ntech no\nru ssi\nc ard</w>\ne ast</w>\nmar i\nw ine</w>\nt i</w>\nla w</w>\nstr ic\nk i</w>\nap e</w>\nau gu\npro fe\nas h</w>\ncour se</w>\nma il</w>\nren tly</w>\nd un\nm un\nlo ve\nis land</w>\ndri ve</w>\ns l\nend ed</w>\nma in</w>\nlo st</w>\nnat ure</w>\nâĿ¤ ï¸ı\nch ic\nre por\np in\npr o</w>\nst ation</w>\nce p\nta kes</w>\ncompan y</w>\ngo es</w>\non d</w>\nma ch\nra dio</w>\nd ad</w>\nro ck\nj a</w>\np ay\nchampi on\ne e\nin de\ntt a</w>\nati c</w>\nt ab\nbeli eve</w>\nener gy</w>\nz i\nt at\nwor d</w>\non ce</w>\nre sul\ny l\nand re\nan o</w>\ninst agram</w>\nclo se</w>\nt am\ncu stom\nw a</w>\ncon om\nsho ws</w>\nli fe\nk in</w>\nro b\nt age</w>\nn ation</w>\nal most</w>\nlist en</w>\nsa ve</w>\nre li\nac e\nmar y</w>\ntre e</w>\nfor get</w>\nj ack\nwa iting</w>\ndirec tor</w>\nh ill</w>\nbor n</w>\nte mp\nf l</w>\nst e</w>\non a</w>\nsing le</w>\nwedne sday</w>\nun ited</w>\nin o</w>\n@ _</w>\nne l</w>\ncelebr ate</w>\nen ding</w>\nde al</w>\nj i</w>\ncan ada</w>\nhu ge</w>\ntr ack</w>\nâĢ ¢</w>\nf y</w>\nfan ta\nan g</w>\nyor k</w>\nrele ase</w>\np un\nep iso\nwor ds</w>\nt our\np ack\ni gh\nclassi c</w>\nperfor mance</w>\nke t\nafter noon</w>\nrecor d</w>\nwin s</w>\npro ble\nâĿ ¤</w>\nf our</w>\nb ed</w>\nban k</w>\nd ance</w>\ns la\ncal led</w>\nmi ght</w>\na p</w>\npa st</w>\nðŁ ļ\ndiffe rent</w>\nit e\ngi ft</w>\nssi ve</w>\nchur ch</w>\nc us</w>\npro gram</w>\nho tel</w>\nic e\nma d\nsecur ity</w>\nen ge</w>\nd c</w>\nen ough</w>\nst a</w>\ne ty</w>\nde ad</w>\ng un\nhe ar\nm ir\nhu man</w>\ngre ss</w>\noun ds</w>\npi ece</w>\nbre aking</w>\ngar den</w>\nfi ght</w>\nvie ws</w>\nf ish</w>\nstar ted</w>\nrun ning</w>\ngre en\nser i\ns m</w>\nas k</w>\nd or\nde ath</w>\ne conom\ner i\nir d</w>\ns er</w>\nl unch</w>\nâģ ¦\nbo x\nnat u\nba se\nb an</w>\nf al\nglo bal</w>\nwil d\nwo w</w>\nout side</w>\nmo ve</w>\nle ad</w>\nan al\nmuse um</w>\non g\nha w\npow er\nthan k\nb ac\nchar ac\ncam pa\ndig ital</w>\nr o</w>\nop er\nde v\nw ol\np ati\nf a</w>\nm ale</w>\npap er</w>\nill ing</w>\nc s</w>\nâ ĥ\neduc ation</w>\nta ken</w>\ne ffe\nm ou\ns ad\n\" .</w>\nbas ed</w>\nstaf f</w>\ninclu ding</w>\nli ving</w>\na c</w>\nch ina</w>\nmo b\nstor m</w>\nlu ck</w>\nph il\no o</w>\ny n\ntra vel\nk el\nti al</w>\npr ice</w>\nboo k\nimport ant</w>\nbi o\np ool</w>\nny c</w>\nf ab\nlo ad</w>\n? !</w>\nchall enge</w>\ncr y\nser ve</w>\nwe ar</w>\nbu s</w>\nta in\nnu mber</w>\nro r</w>\nk at\ni z\nth ough</w>\nho sp\nm m</w>\nfa ir</w>\nut es</w>\nho t\npo p</w>\nfi ed</w>\ncam p\ndevelop ment</w>\nli br\nc ali\nem s</w>\nâģ¦ @</w>\nb ol\nis ed</w>\nstand ing</w>\nmo del</w>\nit a</w>\ng le</w>\nbro wn</w>\nima ge</w>\nve red</w>\nfor ce</w>\no il</w>\npar tic\nsh u\nda ily</w>\nla w\nse c\ncla ss\ncam p</w>\nholi day</w>\ncl in\nk ers</w>\npres ent</w>\ngam e\nincre di\ner ship</w>\ninter view</w>\nb ill</w>\ndu e</w>\nand y</w>\nab o\nin nov\nke y\nac ade\np il\nmo der\nst ars</w>\nbr and</w>\nf er</w>\nwee ks</w>\ncon si\npr e</w>\nsa fe\nwr it\ndi um</w>\nla unch</w>\nmarke ting</w>\nann ual</w>\nas si\ncour t</w>\nla dy</w>\nc ted</w>\nand a</w>\nin side</w>\nchil d</w>\nopp or\nsm ith</w>\ncentr e</w>\ngu e</w>\nâģ ©</w>\nf ren\nst y</w>\nfor t</w>\nent ly</w>\nis n</w>\nke ep\nto ber</w>\non y</w>\nbo y\nal d</w>\ncol la\nde mo\nle vel</w>\ncom pet\nad o</w>\nb our\nfanta stic</w>\nm ate</w>\ns u</w>\nsou th\noppor tun\nvers ary</w>\nlat er</w>\nbu d\nface book</w>\nla un\nster n</w>\np it\n! \"</w>\nma j\ngr am\ntb t</w>\nfi re\nhapp y\na ks</w>\nwh ole</w>\nactu ally</w>\nill er</w>\nell a</w>\nlo ts</w>\nal ex\nan ge\nlan ds</w>\nðŁĺ Ń\nen ter\nr ou\nepiso de</w>\np ed</w>\nin ten\nsh ire</w>\nwh o\npl an</w>\nh o</w>\nca ke</w>\nwe st\nmag az\nfre sh</w>\nc c\nn ar\nch ris</w>\nwr iting</w>\nw er</w>\nn om\nl o</w>\nmi dd\ndre am</w>\no l</w>\nti onal</w>\nde b\n> ></w>\nbe come</w>\ns i</w>\ngr and</w>\nall ing</w>\nhi stor\nri de</w>\ni red</w>\nsaf e</w>\nque en</w>\nci l</w>\nin tro\nvi l</w>\nd ani\n.. .\nar tic\nst at\nsh ort</w>\nor ing</w>\nsel fi\nmis si\ndo c\nb it\ng all\nb om\ni re\nse lec\nd ition</w>\nðŁĶ ¥</w>\nfri end\nbe at</w>\ngh ting</w>\nðŁĺ Ĭ</w>\npe ace</w>\nex hi\nant a</w>\nab ility</w>\nil lu\nj on\nqu ality</w>\ntri bu\nm es</w>\nplay ers</w>\nfa ir\ncu t</w>\nc ab\nsuc cess</w>\nb i</w>\nsu s</w>\npro mo\nsch e\nan ge</w>\nic o</w>\ncomm it\ncat ch</w>\nill a</w>\nkin d</w>\nfeel ing</w>\nqu o\ns ay\nanni versary</w>\nspo t</w>\nmo ther</w>\nan e</w>\np end\nyour self</w>\nop s</w>\napp le</w>\nmin utes</w>\np o</w>\ngr and\nri es</w>\nha ha</w>\ncare er</w>\ned ition</w>\nde c\nric k</w>\nam i</w>\nconcer t</w>\niti ve</w>\nge ous</w>\nd ly</w>\nt te</w>\nadv ent\ni g</w>\nli ghts</w>\nak er</w>\nsk y\nâĥ £</w>\nr ay</w>\nfini shed</w>\nw ay\ns d\nac coun\nðŁĴ ķ</w>\nck y</w>\nch el\nlit er\npain ting</w>\nlo s</w>\nst un\ntechno logy</w>\nn as\nma r</w>\nb il\nafric a</w>\nki e</w>\ney es</w>\ngol f</w>\nplu s</w>\nni a</w>\nit ec\nserv ices</w>\nwed ding</w>\nkno wn</w>\nte le\n.. ...</w>\nstar ts</w>\npa ren\nw ants</w>\nati onal</w>\nmon ths</w>\nwin do\nfav our\ner t</w>\nmagaz ine</w>\nex clu\nre ve\nb c\norigin al</w>\ne ss\nn al</w>\nan ti\nst ro\nt ice</w>\nstu dy</w>\nà ¤\nv ac\nnation al\nfi ve</w>\nra in\nve ment</w>\nu te</w>\nver se</w>\nem er\nar my</w>\npossi ble</w>\ngue ss</w>\nval ley</w>\nther n</w>\ncro w\nm r\ncol or</w>\non to</w>\npic k</w>\ncle ar</w>\ndar k</w>\nt ac\nwan ted</w>\nit ting</w>\ncan cer</w>\ngovern ment</w>\ndi e\nri se</w>\nz ing</w>\ncol d</w>\nf oun\nstu dio</w>\nstr ation</w>\nbro ther</w>\na head</w>\nsh el\nmic ro\nic ally</w>\nd au\nsig ned</w>\nvi ol\na x\nas se\ni o\nw re\nspl ay</w>\nch ick\naugu st</w>\npl at\nti ps</w>\nsp i\nhu man\ne asy</w>\nlo gi\nmi ke</w>\ngro w\nag re\nw w\nsh ad\nmo tiv\nwi de</w>\ntur ns</w>\nom g</w>\nv ar\nde fin\nsu g\nj im\nðŁĶ ¥\nt d</w>\ncampa ign</w>\nnam ed</w>\nre tweet</w>\nco p\nt v\nle av\nk is\ndou ble</w>\ns mar\nissu e</w>\nvil la\nin formation</w>\nli es</w>\nsto ck</w>\nn t</w>\ndi stric\nsh or\nmi x\ner o\nse p\nme x\nsee ing</w>\nli ve\nre min\nco de</w>\ng ur\ns c</w>\nwil d</w>\nl un\nh ood</w>\nspo t\nfa ther</w>\nfore ver</w>\nup d\ntra f\nf ly</w>\nne ed\ngra du\ntra in</w>\nma ke\ns ab\nbe y\nsi ze</w>\nlead er</w>\ntal ks</w>\ne u</w>\nlo g\nfo x</w>\ngor geous</w>\nle ss\nle ts</w>\nsur pri\nmy self</w>\nno te</w>\nli ves</w>\nf ru\nlo ved</w>\nse ver\nde m\nj i\nso c\nh old</w>\ndo gs</w>\nn i</w>\nâ ŀ\nlea ve</w>\nair port</w>\nben ef\nex pl\nshi ps</w>\ncomple te</w>\nach i\ngre at\nvin tage</w>\nj ack</w>\nro c\nwoo d\npri v\noff er</w>\ney e</w>\nver sion</w>\nte a</w>\nco ach\noff ic\nw ell\ng en</w>\ns at</w>\nh h\nyou th</w>\no x\n? \"</w>\nm t</w>\nmi x</w>\ng g</w>\nd le</w>\nnatu ral</w>\nbuil d</w>\nbreak fast</w>\nthin king</w>\ntheat re</w>\nmo on</w>\nber g</w>\ngo als</w>\ngeor ge</w>\nen e\nexc ell\nil ing</w>\ntun e</w>\ny ed</w>\ng ate</w>\nm it\nnet work</w>\njo e</w>\nh ello</w>\nf b</w>\ntu be</w>\nwe aring</w>\nath le\nstru c\nhar d\ngla ss</w>\ng ers</w>\nthro w\ng es</w>\nb t\nindu stry</w>\nmanag ement</w>\nali st</w>\ngo al</w>\nstre am</w>\ny el\na vi\nici ous</w>\no thers</w>\ns ki\nchri sti\nbir d</w>\ne sc\nm in</w>\ntr o</w>\nl t</w>\nj an</w>\nim p\nri ghts</w>\nsh a</w>\nor gan\ncent ral</w>\nar a</w>\nro ll</w>\nfavour ite</w>\nche ster</w>\nel se</w>\np ay</w>\ncar s</w>\nm ine</w>\nste p</w>\nprac tice</w>\nmaj or</w>\nh ang\nðŁĺ ĺ</w>\nn on</w>\nv ari\neng ine\nvol un\ndi a</w>\ni led</w>\narch itec\np ink</w>\nd s\nth y</w>\nwa sh\nweb site</w>\nba g</w>\ncontro l</w>\nel li\nf ra\nan sw\nd ence</w>\ny u\nr on</w>\nol a</w>\ng in\ndr in\nli c</w>\ncou ple</w>\nsp ar\ng on</w>\ncre ate</w>\nc t\ncelebr ating</w>\nde ep</w>\ne at</w>\nte e</w>\nvo ice</w>\ndro p</w>\nvis it\nat ors</w>\nsta dium</w>\nf t\nw is\nro l\ngra de</w>\nfam il\npo ints</w>\nre pre\nw as\ntraf fic</w>\njap an</w>\nor g\nhon or</w>\ntex as</w>\nman u\nâĻ ¥</w>\nsafe ty</w>\nre r</w>\nb ag\nem plo\nrele ased</w>\nre gu\nak a</w>\nn av\nro le</w>\nsen ior</w>\nspec t</w>\ncro ss</w>\nlin es</w>\nbe st\np ack</w>\ns in</w>\nti e</w>\nmis sing</w>\nsun set</w>\nli ber\nis ing</w>\nj ay\nsk i</w>\nchampion ship</w>\nac tiv\nla dies</w>\nplay ed</w>\ny y\npu bl\nal o\npri de</w>\ns r\npa ki\nlu x\nsur vi\nck ed</w>\ne ts</w>\ncho col\naustr alia</w>\npar is</w>\nmi les</w>\nh at\nment al</w>\nal a</w>\nme an</w>\nmob ile</w>\nen a</w>\nin si\nf ound\nchi ef</w>\nt ag\nincredi ble</w>\nre turn</w>\nÃ ©\ngoo gle</w>\nfren ch</w>\ncre w</w>\nhal lo\nali an</w>\nj az\nch er</w>\nsil ver</w>\nnor th\neng lish</w>\nbase ball</w>\nc af\nlim ited</w>\nfollow ing</w>\napp reci\near th</w>\nk ir\nve mber</w>\nw ed</w>\np tion</w>\ng ed</w>\noc tober</w>\nfl ori\nc r</w>\nen cy</w>\nga ve</w>\nlor d</w>\nstu ff</w>\nber ry</w>\npo st\nsm ile</w>\nbro ad\nst ate\ngg er</w>\nme ans</w>\nic y</w>\ngu n</w>\ny o</w>\nma ster</w>\nbur g</w>\nhan ds</w>\nni e</w>\n/ /</w>\nuni on</w>\nbrit ish</w>\nbig gest</w>\ndistric t</w>\nam ing</w>\nh il\no ce\nper son\npas s</w>\nen vir\nscho ols</w>\narri ved</w>\nanc es</w>\ninsp ired</w>\nex pla\nbe n</w>\nlibr ary</w>\nbo tt\nam p\nste ph\ncont act</w>\nb ang\nm s\ncali for\nt old</w>\nbatt le</w>\nb b</w>\nchic ago</w>\nâľ ¨</w>\nstr ate\nsh i</w>\nde ce\n- )</w>\nad d</w>\nla b\nj ones</w>\nleg end</w>\ncast le</w>\ning er</w>\nst ance</w>\nbe l</w>\nur a</w>\nre fu\nlead ers</w>\npo t\nse x\nh ic\nartic le</w>\nki d</w>\nfr ance</w>\nx x</w>\nex e\ngui de</w>\nvolun te\npr int</w>\nal i</w>\nce o</w>\ntwee ts</w>\nw x</w>\nscen e</w>\nvol u\nant i</w>\nh an</w>\nas soci\nshar ing</w>\nro se</w>\nmini ster</w>\nsh er\nin ste\ncle an\ndemo cr\npo ster</w>\nsk in</w>\np sy\npro per\ncra zy</w>\ni am\no re\nin i</w>\nany thing</w>\npo d\nmo ving</w>\ncl ick</w>\nex plo\ncom b\ncra ft</w>\nf i</w>\nbloo d</w>\nis ra\npubl ic\nd ent\nol ym\neng land</w>\na si\nch er\nfac t</w>\nenvir on\nhar ry</w>\ng one</w>\nme dic\nenjo ying</w>\njust ice</w>\nj r</w>\nindi an</w>\nwi fe</w>\ns ound</w>\nt es</w>\ndra wing</w>\np al</w>\nide a</w>\ncr it\nju li\nil er</w>\nwar m</w>\ncl ar\nthou ghts</w>\ndef en\ncoun cil</w>\nintro duc\ndi ed</w>\njan u\nan i</w>\ns end</w>\nli er</w>\nm l\nintere sting</w>\ntra de</w>\nwin d</w>\nb ay\ns ac\nanc y</w>\nsour ce</w>\nb es</w>\norg ani\nar ly</w>\nlar ge</w>\nff ici\nta g</w>\nu t</w>\nde sp\no es</w>\ntit le</w>\nsy m\npic tures</w>\nop en\nwom en\nsho wing</w>\nri a</w>\nle ast</w>\nlead ership</w>\ncur rent</w>\nelec tr\nval ent\nlist ening</w>\nc key</w>\ngener al</w>\nde ser\ndu ce</w>\n; )</w>\nc ent</w>\nðŁĺį ðŁĺį\nsco tt</w>\npo or</w>\nselfi e</w>\nev ents</w>\ni on</w>\nwr ong</w>\nde v</w>\nh ill\nsep te\ncul ture</w>\nl ine\nsor ry</w>\ns ent</w>\nsi ster</w>\nce pt</w>\nk ri\nno vember</w>\nar i</w>\nannoun ce</w>\nz ation</w>\nbr an\ng ent\nd u</w>\nl en\nper s\nf m</w>\nmart in</w>\no p</w>\ne mb\nom e\nmidd le</w>\nsuc cess\npe ter</w>\njanu ary</w>\nf lu\nrac ing</w>\nd av\nbi ke</w>\nðŁı »</w>\npe t</w>\nshoo t</w>\nprofe ssi\nfeat uring</w>\nsepte mber</w>\nnow playing</w>\nsta ur\nz a\non ic</w>\nqu ick</w>\nbas ke\nspe aking</w>\nmil it\nz er</w>\nchick en</w>\nb ell</w>\ns ad</w>\nco ast</w>\nlo ving</w>\ny ers</w>\nd j</w>\npan el</w>\nver age</w>\ns wit\nic ks</w>\nb ou\ncalifor nia</w>\ns am</w>\nparen ts</w>\ner o</w>\nk illed</w>\nph ys\njo bs</w>\nmi gr\nan th\ne mo\nhallo ween</w>\nand er\nc m</w>\ncompet ition</w>\ne ag\ns ket\nsp ir\nmay be</w>\nexclu sive</w>\napp e\njour ney</w>\nscre en</w>\nfor d\ni o</w>\nh ate</w>\nu g\nsou l</w>\nher o</w>\nsoci ety</w>\nsy n\ngu it\nn h\nd j\nas es</w>\nim pre\nti me\nsal es</w>\nd d</w>\nf ts</w>\nsumm it</w>\nstun ning</w>\nom s</w>\ntur ned</w>\ncle an</w>\nsof t</w>\nbe at\nre staur\nde red</w>\nen ces</w>\nma gic</w>\ndi o\nsh ine</w>\ngu est</w>\nhealth y</w>\nexhi b\nstor ies</w>\npo pu\nn is</w>\nel a</w>\nbel ow</w>\nfun ny</w>\nresul ts</w>\ns ne\ncur rently</w>\nar d\ndown load</w>\nf light</w>\nm al</w>\nf ine</w>\np ad\nch u\nent ed</w>\nh at</w>\nðŁĳ ı\nste ve</w>\nj o</w>\nmar k\nr at\nb all\np c</w>\np on\nb by</w>\no li\nar ts</w>\nas ure</w>\nbow l</w>\natt ack</w>\nmi c</w>\nde ar</w>\nran ge</w>\nen ter</w>\nchocol ate</w>\nbr illi\nac cess</w>\n, \"</w>\n? ??</w>\nch ap\ncon st\nt n\nmat ter</w>\nblu e\ngall ery</w>\nem p\nwork shop</w>\nlead ing</w>\ny ours</w>\nbaske tball</w>\nw anna</w>\nth u\n_ _</w>\nmar ri\nsle ep</w>\nbi a</w>\nch e</w>\nma d</w>\nimp act</w>\no wn\nsi r</w>\nchan nel</w>\neuro pe</w>\ne sp\nk itch\nhosp ital</w>\nw ra\nroy al</w>\nf s</w>\nne u\nqu ar\nne y\nac ks</w>\nch ase</w>\npp y</w>\nst al\nat ely</w>\nti m</w>\ndece mber</w>\nr are</w>\nper form\ncre am</w>\nwe ight</w>\nch oo\nni ght\nha ven</w>\nfr anc\nkh an</w>\nbuil t</w>\nhel ping</w>\ntru st</w>\nty pe</w>\ngol den</w>\nta x</w>\ns now\ns wi\ndi sa\nquesti ons</w>\nve y</w>\nli ght\nc n\ncl oud</w>\nthom as</w>\nag ed</w>\nsh ou\nte ams</w>\ngr an\nre ason</w>\na a</w>\nyou tube</w>\nv p</w>\npi zz\nmanag er</w>\nbur y</w>\ncre dit</w>\ntre at</w>\nma x</w>\ni k\nma in\ng ing</w>\nde ad\npro bab\nye ah</w>\nã Ĥ\nbr and\nso li\npl ant</w>\nta yl\ngir l\nðŁĺ Ń</w>\nnam ent</w>\nau to\nmess age</w>\nko re\nn ur\nter r\nag u\nma p</w>\nsen ting</w>\nlo ves</w>\ngi ves</w>\ng ab\nz en</w>\nro bert</w>\ncon fir\nw ars</w>\no m</w>\nsta in\ncam era</w>\nand er</w>\nwon der</w>\na b</w>\nca p</w>\ns old</w>\nsu it</w>\nwal king</w>\ncontin ue</w>\neffe c\ndau ghter</w>\nd anc\ncha in</w>\nmul ti\nki d\ny an\nchampi on</w>\nv o</w>\nta ins</w>\nho st</w>\nmin i</w>\nmis sed</w>\nre sc\nly n\nfin ish</w>\ndel icious</w>\ns as\ntayl or</w>\ni b\npro mis\nproduc ts</w>\nmoun tain</w>\nflori da</w>\nregi ster</w>\ntre at\nrec ent</w>\nfe male</w>\nboo th</w>\nmat t</w>\nve hic\ns op\nmo tor\nsuppor ting</w>\nphi c</w>\nex tre\ndr ink</w>\nlan e</w>\nth ird</w>\np s\ncon stru\nce re\nfar m</w>\nðŁİ ī</w>\ntu red</w>\nðŁĳ ī</w>\nc ats</w>\na j\ngi e</w>\nshoo ting</w>\nas ked</w>\npaki stan</w>\nam e\nm b</w>\ng il\nleg al</w>\nsqu are</w>\nin vol\ndra w</w>\noo oo\n!! !!\nopportun ity</w>\np y\ne i\nb ts</w>\nteach er</w>\ncharac ter</w>\njohn son</w>\nbr on\nly wood</w>\nch ine\nc ing</w>\nc ine\nd ge\ngam ing</w>\nrussi a</w>\nci a</w>\nquo te</w>\nric h</w>\ngo v\nflow ers</w>\nsp iri\nst in</w>\ngrow th</w>\nðŁı ¼</w>\ncomm er\nj uni\nmu m</w>\nr an</w>\ns na\na ren\nc b\nac tor</w>\ncol or\nsi t</w>\npa ir</w>\nch i</w>\nbo w</w>\nacade my</w>\nhel d</w>\nr ang\nme tal</w>\ny l</w>\nac tive</w>\nprobab ly</w>\nt ch</w>\nneed ed</w>\nspe e\ncho ice</w>\nital y</w>\nry an</w>\nðŁĩ º\nflow er</w>\nv it\nm n</w>\nfound ation</w>\nb ak\nsi ons</w>\nne igh\nf loo\nhe ard</w>\nre mo\nfre sh\ning ing</w>\nre f\nto wn\ncl ou\nje sus</w>\nspiri t</w>\ncou ldn</w>\nz es</w>\nðŁĴ Ļ</w>\nwilli ams</w>\npro ce\nmoder n</w>\npro cess</w>\nsho es</w>\ncre ated</w>\ntri c</w>\nissu es</w>\nann e</w>\natt en\nde but</w>\nh r</w>\nn it\nsti g\na po\ne ps</w>\nz u\nã Ģ\nsi x</w>\ncar ds</w>\nlan gu\nfam ous</w>\ntour nament</w>\nse l</w>\ne bay</w>\ny n</w>\nst on\nk ick\nannoun ced</w>\nk am\nvo c\nbrilli ant</w>\nhou se\nche ese</w>\nwar ri\nmus ic\nho ckey</w>\nðŁĺĤ ðŁĺĤ</w>\nsk ills</w>\nau tom\nsmar t</w>\nmed ical</w>\nmon y</w>\ne x</w>\ngu ar\ngi ve\npers onal</w>\nven tion</w>\nal li\npre ss\nflo or</w>\nm c</w>\nvictor y</w>\nhi m\nsimp le</w>\nth or\nðŁĩº ðŁĩ\nta il</w>\nlu cky</w>\nale x</w>\nqu ite</w>\nbo t\nssi ons</w>\nchall eng\nc ann\namaz on</w>\nh ell</w>\nb ought</w>\n) :</w>\ned y</w>\nsecre t</w>\nproduc tion</w>\ninde pend\nde fe\nad ded</w>\np r</w>\np ag\nbe d\ngre atest</w>\nwith in</w>\nj ay</w>\nðŁ ¥\nire land</w>\nre ly</w>\ns d</w>\nte xt</w>\ndri ving</w>\npro gram\nspe ed</w>\ncol um\nstr on\nÃ ©</w>\nfore st</w>\nâ ĸ\nmach ine</w>\nco in</w>\nsc ar\noun t</w>\nbi e</w>\n¡ ï¸ı</w>\npor tra\ncomm on</w>\nwre st\nrecei ved</w>\nkno w\ninve st\npl ans</w>\nac cor\nad op\nter y</w>\nre ali\np p</w>\nk al\nart work</w>\nme an\ngo d\ninste ad</w>\nan ci\nmotiv ation</w>\nas ing</w>\ninspir ation</w>\nup coming</w>\npolit ical</w>\neuro pe\nm ers</w>\nheav y</w>\nðŁĳ į</w>\nfe bru\nscot land</w>\nou gh\nb t</w>\nbo ss</w>\nsche du\nspe ak</w>\nn ick\nu red</w>\nin o\ne k\nri sk</w>\ntor y</w>\npres ents</w>\nb on</w>\nru g\nst ates</w>\nexhib ition</w>\nil o\nm ill\nbr ought</w>\n: -)</w>\ntou ri\ncom e\noffici ally</w>\nchampi ons</w>\ndo ors</w>\nre p\npo se</w>\nex tra</w>\nk ings</w>\nsoc cer</w>\nsqu ad</w>\napp lic\nat a</w>\nsome times</w>\nt ari\nexcell ent</w>\nðŁĺ ĺ\nstra ight</w>\ncar ol\nri p</w>\nâĢ į\ngra phic</w>\nm ol\nelec tion</w>\nfebru ary</w>\nas ons</w>\nl i</w>\ndi r\nm t\nn ick</w>\nu su\nm rs</w>\ncom ics</w>\ninst itu\ncor por\nv i</w>\nðŁĻ ı\ntu ral</w>\ndi se\nac ci\nwe are\nam ong</w>\nsho pping</w>\nt ill</w>\nwh at\ncha ir</w>\nsp an\nchine se</w>\ninnov ation</w>\njo y</w>\nk it</w>\ncent ury</w>\nob ama</w>\nph ili\nf c\nre ach</w>\nc iti\nul ous</w>\nn on\nd ang\nhapp ening</w>\nbur n</w>\np el\nor ange</w>\nd v\nk ick</w>\ncla im\ning ham</w>\nph y</w>\nno v</w>\npod cast</w>\nwh i\nni ghts</w>\near lier</w>\nbe ar</w>\nla h</w>\nexc iting</w>\nor a</w>\ngi ven</w>\ns lo\nmemor ies</w>\ncontin ues</w>\nproduc t</w>\ngh o\nc d\nkno ws</w>\nðŁİ ī\npubli shed</w>\ndiscu ss</w>\ny ard</w>\ni phone</w>\ntri es</w>\nw all\nfe b</w>\nare n</w>\ntru th</w>\nwin ners</w>\ntu re\nditi onal</w>\nmilit ary</w>\nproble m</w>\nm and\ndo g\nlo ss</w>\nc ric\ncan adi\nve ter\nvilla ge</w>\n\" ,</w>\ny r</w>\nun g</w>\ndon ald</w>\nag ing</w>\nbir ds</w>\nsci enti\nle s\nth is\nregi on</w>\ntic al</w>\nitt en</w>\nil a</w>\nðŁĺ İ</w>\nd ad\ndi am\nabo ve</w>\nst ren\nli t</w>\np ir\nla b</w>\nfo cus</w>\nbus y</w>\nd ur\napp ly</w>\ns ma\nauth or</w>\nac i\nexe cu\ndom in\nre la\njack son</w>\nat o</w>\nwash ington</w>\nðŁĻ Į\nk ill</w>\npopu lar</w>\nce ment</w>\nro ad\ne ating</w>\nloc ation</w>\nv ent\nar re\nn an\ncu sto\nadvent ure</w>\nor din\nspor t\nul t</w>\nlo ck</w>\nquesti on</w>\ndri ver</w>\nland sc\non i\nk ins</w>\np d\njor dan</w>\nte red</w>\nk k\na f</w>\nchil d\ns p</w>\njust in</w>\nen i\ns elling</w>\nz o\nwh it\nbo ston</w>\npartic ip\nsig ning</w>\nhapp ened</w>\nhe at</w>\nm am\ndre ams</w>\nlo ws</w>\ngra ph</w>\nthe day</w>\nhead ing</w>\nbr o</w>\nble ssed</w>\nvi c</w>\nve gas</w>\nh d</w>\nin ning</w>\nro man\nand ro\nden ti\nu se\nc it\npro gress</w>\nwrit er</w>\nbo b</w>\nff s</w>\ngro wing</w>\nb ly</w>\naw are\nex am\nsp ent</w>\nbe t</w>\nsc ore</w>\nbey ond</w>\ndo cu\nad el\ns f\ncou ra\ncolla bor\nin c</w>\npriv ate</w>\nbo at</w>\n* *</w>\nz one</w>\np ha\nb ill\nto tal</w>\nplan ning</w>\nto wards</w>\nplac es</w>\npre view</w>\ncre ative</w>\ndam n</w>\nide as</w>\nse ems</w>\npo ten\nsay ing</w>\ndi splay</w>\ns w</w>\na qu\nlou is</w>\nby e</w>\nli l</w>\ne mail</w>\nwe stern</w>\nger many</w>\nell er</w>\nre s\nf ant\nment ary</w>\nde als</w>\nric hard</w>\njer sey</w>\nstren g\nra d\npizz a</w>\nmon d</w>\nw are</w>\nl ac\ng i</w>\nar chi\nc d</w>\nyel low</w>\nrec ently</w>\nre ach\nà ¹\nkitch en</w>\ndesig ned</w>\ntr y\ng al</w>\nrestaur ant</w>\nat ure</w>\nw w</w>\nj as\nl ma\nðŁĳ Į</w>\npa in</w>\nav o\nmin ute</w>\nsch ol\nther ap\ntic ket</w>\nd ry</w>\njap an\nditi ons</w>\nter ri\nsel ves</w>\nhapp en</w>\nt up</w>\nma g</w>\ncop y</w>\nsh er</w>\nfree dom</w>\nf ile</w>\nspeci ally</w>\ntor onto</w>\nlo ad\ng ary</w>\nre y</w>\nansw er</w>\nlo y\ncau ght</w>\npri ze</w>\nu ne\nfic ation</w>\nni ger\nsy d\ntou ch</w>\nfeat ure</w>\njaz z</w>\nrecor ds</w>\nhim self</w>\ndi sh</w>\nro ber\nspot ted</w>\nma ster\nwa ve</w>\nfin als</w>\nbu ll\nfor um</w>\nal d\nre comm\nch a</w>\na e</w>\nd oo\ninst ru\ntru ly</w>\nl g\nin k\nbro thers</w>\nde st</w>\nj im</w>\nm it</w>\nclo sed</w>\nis on</w>\ntri ed</w>\ns anta</w>\naf fe\nw an</w>\nhor se</w>\ng row</w>\ncamp us</w>\nrel ation\nnati ve</w>\njour n\ngo v</w>\no ct</w>\nk it\nb ound</w>\npart ner</w>\nre ma\ncrow d</w>\n! )</w>\nc alls</w>\nra il\nqu ali\nsolu tion</w>\ncon test</w>\ncon vers\nsn ap\nb ase</w>\nin iti\nta x\ny e</w>\nent repre\nit or</w>\nconstru ction</w>\nfoo d\npresent ed</w>\nn ings</w>\ncli mate</w>\nk m</w>\nmo del\nb j\nblo ck</w>\npresent ation</w>\ndre am\nfi x\nc alling</w>\nbus ine\ncon gress</w>\nunder stand</w>\nwe b</w>\nval ue</w>\nï¸ı âĥ£</w>\nmex ico</w>\nit ely</w>\nki m</w>\nchar ity</w>\nref lec\nbl an\nfl ying</w>\nanal y\nfamil ies</w>\nb and\nreci pe</w>\ncelebr ation</w>\nac cep\nar y\nto t\ng b</w>\nintere sted</w>\ncap tain</w>\nâĻ ¥\nti p</w>\nab sol\nbra z\ninve stig\no logy</w>\nde c</w>\ntru ck</w>\nver ing</w>\nc lear\ndon t</w>\ngo tta</w>\nad vis\nbeg ins</w>\nma ss\nde scri\nblo ck\nk im\ndavi d\nson gs</w>\nmemor ial</w>\nfeat ures</w>\nsu stain\n' .</w>\ngra b</w>\njo se\nv a\ncon serv\nse ts</w>\nman chester</w>\nfi ghting</w>\nde gre\nag a</w>\nin d</w>\nsle ep\npos ition</w>\nha ir\nsig ns</w>\npol icy</w>\nit o</w>\nal ert</w>\nst am\nsp end</w>\nw y\nabsol ut\nd m</w>\nanim al</w>\nmy ster\nsuccess ful</w>\nproble ms</w>\nro bo\nk ay\ngar den\np d</w>\nmay or</w>\nd ale</w>\nt ol\noff ers</w>\nvis iting</w>\nfriend ly</w>\ntre es</w>\noffic er</w>\naccoun t</w>\nke vin</w>\nðŁĳ į\ngi ant</w>\ncontin u\ncon su\ntr act</w>\nn fl</w>\nðŁĺ Ĭ\nh q</w>\nb ility</w>\na ar\ndis ney</w>\nte en</w>\non ed</w>\nwh ite\ntra iler</w>\nde dic\nal one</w>\nabsolut ely</w>\ndig ital\nwilli am</w>\nin ation</w>\ns wa\ne e</w>\nenti re</w>\nger man</w>\nro ll\nh its</w>\nco st</w>\nst ay\nth a</w>\nali ve</w>\naccor ding</w>\nco t\nliter ally</w>\nher it\nre ti\nhaha ha</w>\nexper i\nli kes</w>\ng t</w>\nste el</w>\n__ __\nch air\nchristi an</w>\nto wer</w>\ndiffe rence</w>\nm d</w>\ntre ss</w>\nmi d</w>\nprin ce</w>\nafric an</w>\nfe der\nfoo t</w>\ncar ri\nser ved</w>\nr ice</w>\nsh all</w>\nfeat ured</w>\nck er</w>\nrec ru\npo e\nsen se</w>\nni fic\ncom edy</w>\ncont ent</w>\nf at\npo sted</w>\ncon tribu\ntim ate</w>\nli ver\nmb le</w>\ninter net</w>\nag e\neurope an</w>\ncl ing</w>\ngla d</w>\nff ic\nsc o</w>\nak es</w>\nel le</w>\nter min\nton y</w>\np ale\ncol our</w>\nseri ous</w>\npat ri\nmovi es</w>\nb m\nprofessi onal</w>\nad o\nal u\nbr inging</w>\nf alls</w>\nisra el</w>\nter m</w>\nlangu age</w>\nbro ok\nman n</w>\ncommun ic\ncan not</w>\nac ti\np he\ny an</w>\nentrepre ne\ntur key</w>\nlog ical</w>\nlon g\nar m</w>\nur s</w>\nwork ers</w>\ning ly</w>\ngg s</w>\nri c</w>\ntu al</w>\nrecei ve</w>\nop ens</w>\nge ar</w>\nsoci al\nfe et</w>\nc king</w>\nad ver\nfin an\nfe els</w>\nsp la\nh r\nea ster</w>\nbra in</w>\nã ģ\nfi g\nle dge</w>\nne arly</w>\nprote ct</w>\nma ssive</w>\ne th\naw a\nðŁĺ ģ</w>\ny rs</w>\naware ness</w>\ndefin itely</w>\nk n\nimag ine</w>\nk u</w>\nsyste ms</w>\nðŁĳ ı</w>\nf as\nli k\nprovi de</w>\nam o\ndisco ver</w>\ninf lu\nma ker</w>\ng az\nfit ness</w>\nstre et\ner s\nte d\nw c\nys is</w>\npos itive</w>\nhel ped</w>\nque st</w>\nandre w</w>\nbra d\nb in\nhang ing</w>\nl ing\nbri ght</w>\nse ction</w>\nma ss</w>\nðŁĻ Į</w>\nfollow ers</w>\nho sting</w>\ntem por\nfla g</w>\na ve</w>\nlet ter</w>\nk ur\nre qui\nof ten</w>\ncry p\nsu ff\nâļ ½\nrussi an</w>\ntreat ment</w>\nal le\nha y\nl an</w>\nkeep ing</w>\nhol y</w>\npower ful</w>\npre dic\nfun d</w>\ne specially</w>\nwindo w</w>\nje wel\nil y\nðŁĴ ľ</w>\ngener ation</w>\napp a\nseri ously</w>\no d\nðŁĺĤðŁĺĤ ðŁĺĤ</w>\ncer ti\niri sh</w>\nðŁĳ Į\nmi ami</w>\nbe th</w>\nv ity</w>\nse cu\nche f</w>\ncri me</w>\ngraph y</w>\nma x\narti sts</w>\nre volu\ngu ard</w>\nspee ch</w>\nu c\nupd ates</w>\nfac es</w>\nst ant</w>\nchang ed</w>\nrepor ts</w>\nlow er</w>\npe ar\nn c</w>\nk il\nloo ked</w>\nspe aker</w>\ns f</w>\nre spect</w>\nok ay</w>\noce an</w>\ns itting</w>\narchitec ture</w>\ntra il</w>\nse at</w>\ni ra\nle g</w>\njapan ese</w>\nd am</w>\nu lar</w>\nsw im\npolit ics</w>\nfinan cial</w>\nol d\nmou th</w>\nat temp\nde stin\nfi shing</w>\natten tion</w>\nme m\nchang es</w>\ndeci ded</w>\nreli gi\ng in</w>\nc av\nz z</w>\nad am</w>\nma c</w>\nwr ite</w>\nbeg in</w>\nsc ul\nal ter\nis s</w>\nath on</w>\nimag es</w>\nm oo\njo ined</w>\nðŁĺ ī</w>\nâŀ ¡ï¸ı</w>\npas sed</w>\nmu sli\nh ir\nlar gest</w>\ncam er\ncom ic</w>\ngh ted</w>\nrug by</w>\nbur gh</w>\ngg ing</w>\nte sting</w>\npre par\nlau gh\nal ed</w>\nimpro ve</w>\nbeli ev\nadv ice</w>\nsha res</w>\nhe art\ntur ning</w>\ns b</w>\nt el\ncaf e</w>\nn es</w>\ndani el</w>\npat ter\nt z</w>\nse tt\npar k\nc and\nst ick</w>\nhapp ens</w>\nbri an</w>\nne west</w>\ne pic</w>\nad or\nki es</w>\nwar ning</w>\nanim als</w>\ncusto m</w>\nar c\ndi an</w>\ngol d\ncor e</w>\nt f</w>\nc ity\npan ts</w>\nre ality</w>\ncon fi\nin ju\nfo x\ngu il\nk new</w>\nâĺ º\ncor rec\nitu de</w>\nd den</w>\n. #</w>\nre duc\npas s\nf on\ny a\now ner</w>\nre turns</w>\nn c\ne ast\nap ol\nin sur\nth o</w>\nsi m\njuni or</w>\nbe e</w>\nang el\natt le</w>\nelec tric</w>\nhor ror</w>\ncra sh</w>\ne ye\npat h</w>\nsou thern</w>\nemplo ye\nge o\nt an</w>\nha z\nr ally</w>\nðŁı »\nproper ty</w>\nwas n</w>\nenjo yed</w>\ngre y</w>\ng as\nbre w\nnor thern</w>\nhol ding</w>\ng p</w>\nta ke\nch art</w>\nly n</w>\ndr ama</w>\nz o</w>\npa id</w>\nthrow back</w>\ncu p\ndiscu ssion</w>\ndown town</w>\nw ill\nle w\nb is\nt ary</w>\nbre ad</w>\nup on</w>\nr ate</w>\nteach ers</w>\nit ation</w>\nanc ed</w>\ncy cle</w>\nchoo se</w>\nd c\nir an</w>\nco w\nda ve</w>\nra ise</w>\nprin cess</w>\nfa ith</w>\n- ></w>\nindu stri\nsp ain</w>\nguit ar</w>\nfac ts</w>\nm n\nsp en\ncour te\ngo tt\nprojec ts</w>\nau di\no sc\npe ter\ns and</w>\nintere st</w>\nhapp iness</w>\nven ue</w>\nsol di\nsurpri se</w>\npoten tial</w>\nper io\ncustom er</w>\ni i\ng ni\nmanu fac\ne co\nbro ken</w>\nsing er</w>\nvel s</w>\nwal es</w>\nhu s\nin j\nf our\ntal ent</w>\nd ying</w>\nmat the\nfil m\njo ining</w>\ns ell</w>\nj ar\nlma o</w>\nsur ger\nbb c\nsour ces</w>\nau stin</w>\nni k\nchar les</w>\nf am</w>\nprin ci\nange l</w>\ncas h</w>\nlo t\no red</w>\npla ys</w>\npl ate</w>\ndon e\nmemor y</w>\nbr ings</w>\nn ba</w>\nsolu tions</w>\nteach ing</w>\ngr ace</w>\ncir cu\nhel ps</w>\nfoun der</w>\nmar y\nexpl ore</w>\nde cor\npar ts</w>\nch o</w>\ninte gr\nha u\nis es</w>\npu tting</w>\nin er</w>\nr it\nv y</w>\nmic hel\nblu es</w>\nevery day</w>\nfor ms</w>\nbi o</w>\nye ar\np in</w>\nt ter</w>\nspr ing\n) )</w>\npo t</w>\nal ing</w>\nperform ing</w>\nsh an\nplan et</w>\nmus ical</w>\nhead s</w>\nit alian</w>\nstru gg\nâĢį âĻ\nw ings</w>\npu mp\nh h</w>\ntr ou\na id</w>\npri me</w>\near th\npa int</w>\nmon t\nam y</w>\nbb c</w>\nfab ulous</w>\nfru it</w>\nandro id</w>\nbour ne</w>\ncere mony</w>\nenti al</w>\n? ?\ndeb ate</w>\non ing</w>\ndra ft</w>\nsol ar</w>\nt x</w>\nj am</w>\ncor n\n!! !!!</w>\nbro o\nmil k</w>\npo sed</w>\no hi\nmo vement</w>\nb ren\npart ner\np g</w>\net te</w>\nar ies</w>\nsh out</w>\nn g</w>\nleav ing</w>\nt ells</w>\nsen s\nta ste</w>\nkel ly</w>\nwor l\ngy m</w>\nric h\ne gy\npi d</w>\nma s\nâ Ĥ\ncourte sy</w>\nfran k</w>\nincre ase</w>\nwr itten</w>\npp ers</w>\nre l</w>\nha i</w>\ns as</w>\ns ound\ntt i</w>\nw ich</w>\nri ver\n.. .\"</w>\na g</w>\nfel low</w>\nro me</w>\nsm all\ngen cy</w>\nic an</w>\nlux ury</w>\npro of</w>\nme t\nwild life</w>\nmom ents</w>\nra ther</w>\ncor ner</w>\ncom pe\ncanadi an</w>\nlik ely</w>\ntherap y</w>\nli am\neconom ic</w>\nindi e\nrou te</w>\nfi ght\nho pe\nse tting</w>\nant ly</w>\ncro ss\nfant asy</w>\nde e\nsket ch</w>\ncomp li\nym i</w>\nru les</w>\nengine ering</w>\nfig ure</w>\nro w\n. ,</w>\nf w</w>\nsyd ney</w>\nw ou\nt ation</w>\ndre w</w>\nus es</w>\nthe re\nsp read</w>\nstruc ture</w>\npat rick</w>\nappa rently</w>\nro s\nh ills</w>\nw we</w>\nann y</w>\ncom mission</w>\ndi v\nf ying</w>\ncon sul\nanal ysis</w>\nex i\nten nis</w>\nvehic le</w>\nðŁĺŃ ðŁĺŃ\nas s</w>\nhigh ly</w>\nop ened</w>\nb ann\nðŁĴ Ļ\nmp h</w>\nwi shing</w>\nv or</w>\nfi f\ngive away</w>\nr r\nra y\nje ss\ng at\nic ymi</w>\nx it</w>\nhigh est</w>\nyor k\npi e</w>\ninvol ved</w>\nhigh er</w>\nri e</w>\nmal ay\nint elli\ndesp ite</w>\nche e\nsar ah</w>\nbe an</w>\nreco gni\nar sen\ntal ented</w>\npas sion</w>\nic h\nab c</w>\nlead s</w>\ndise ase</w>\nv is</w>\nse c</w>\npre senting</w>\nm illi\nhol e</w>\nsho ts</w>\nde part\nsurger y</w>\ngov t</w>\nb in</w>\ndu al</w>\ne vi\nlon ger</w>\nev ol\nscre en\nportra it</w>\net c</w>\nlo se</w>\nch at\np en</w>\np i</w>\nom a</w>\ns ick</w>\ner c\ncompan ies</w>\nen try</w>\nplan e</w>\ngr y</w>\nven e\nliver pool</w>\npremi ere</w>\nsha red</w>\na red</w>\nfil ms</w>\nir a</w>\nholi days</w>\ncric ket</w>\nici an</w>\nv ing\n. )</w>\nul timate</w>\ndi vision</w>\ncon duc\nse pt</w>\nfor ces</w>\nmon t</w>\ns mart\ndisa pp\nsun shine</w>\nin d\nb less</w>\nma de\ncol ors</w>\nfran k\nir on</w>\nbott le</w>\ns go\nm ood</w>\nj ason</w>\ner ic</w>\nbir th</w>\nte en\nrespon se</w>\ntar get</w>\nstate ment</w>\nfe ar</w>\nth el\nal um\nar ab\nbl in</w>\ndirec tion</w>\nste ps</w>\ner ial</w>\nwor ked</w>\nat l\nðŁĴ ķ\nfel t</w>\npol i</w>\nscen es</w>\nhom es</w>\nb ell\ne at\nate ful</w>\nt in</w>\nl ace</w>\nfol ks</w>\np se</w>\nan n</w>\nwis dom</w>\nfa v</w>\nbut ter\ns r</w>\nare as</w>\nsm oo\nbi z</w>\ndg es</w>\napp o\nmo re\nthe m\neffe ct</w>\nwindo ws</w>\nsun ny</w>\ncap ital</w>\ntot ally</w>\nc ities</w>\ngr ant</w>\nmb ers</w>\ns low</w>\nau tu\nil ities</w>\nw ro\nri sing</w>\nst ics</w>\nviol ence</w>\ni gh</w>\nqu ot\nh it\nt c</w>\nherit age</w>\nbu ff\nne s\nz ar\nden tial</w>\nex ac\ned ge</w>\nde ep\naren a</w>\nbe came</w>\nbenef its</w>\nmar ks</w>\nmb er\na z</w>\nam es</w>\npre ci\ndra gon</w>\nre g\nd ings</w>\ndo s</w>\nðŁĴ ª\nn el\ns ity</w>\nme al</w>\ndi st\nleg end\npur chase</w>\npic al</w>\nst ick\nf at</w>\ndu ba\nprofe ss\ncar to\npro f</w>\ncoun tries</w>\nrespon si\nse qu\nfa b</w>\ntribu te</w>\nhon ored</w>\nprac tic\npur ple</w>\nan ton\npa red</w>\nt ough</w>\nsumm er\nenviron ment</w>\ns ons</w>\nðŁĻ ı</w>\nm ps</w>\ngi es</w>\nher oes</w>\nt elling</w>\nhen ry</w>\nf en\nknow ledge</w>\nĢ ï¸ı</w>\nf r</w>\nne g\nu re\nac king</w>\nhear ts</w>\ns oo\nhol lywood</w>\nju mp\nsau ce</w>\nschedu le</w>\ntur n\nyo ga</w>\ncre ating</w>\nc ket</w>\ncre ek</w>\nâ Ń\ncustom ers</w>\nma dri\ngu l\nasse mb\nmoun t</w>\nc ell</w>\nto p\nst al</w>\ndav is</w>\nt wi\nsig n\npremi er</w>\niti ons</w>\nhe aring</w>\nun k</w>\npati ents</w>\napp ear\nheav en</w>\nal ty</w>\ndoc tor</w>\na e\nplat form</w>\nje ff</w>\nðŁĵ ·</w>\nregi onal</w>\nbi d</w>\nbox ing</w>\nex ten\nor ity</w>\na w</w>\nw ise</w>\nil le</w>\nsever al</w>\nbi e\ns itu\nsy ria</w>\nâľ ħ</w>\nremin der</w>\nenter tain\nli on</w>\npart ners</w>\nin n</w>\nph ar\nf au\npl s</w>\nexpe cted</w>\nsug ar</w>\ndeci sion</w>\ns b\nch ron\nassoci ation</w>\nleav es</w>\nvis ited</w>\nsh ap\nðŁĴ ĸ</w>\nfur ther</w>\nh ann\nw i</w>\nrun s</w>\nl er\nfun ding</w>\nfil led</w>\n.. ....</w>\ntin y</w>\nhan g</w>\nor g</w>\nco ol\nse min\nðŁı Ĩ</w>\nspon s\nnav y</w>\nsa int</w>\ndru g</w>\nd al</w>\nr oun\nco vered</w>\ntra ditional</w>\ninvest ment</w>\nde te\nal ism</w>\nf low</w>\nn is\nsun rise</w>\nfe at</w>\nf ted</w>\nwe ird</w>\nje re\nve gan</w>\nmedic ine</w>\nan o\nac cu\ndeli very</w>\ntemp le</w>\nchang ing</w>\nwil son</w>\nphili pp\nre fe\nn d\nis er</w>\ng ay</w>\nr and\nati ves</w>\nt ely</w>\np and\nintelli g\ng are\nam bas\nde mon\ncommit tee</w>\nstrate gy</w>\nrefu ge\nbud get</w>\nprote c\npi er\nex press</w>\nnom in\neconom y</w>\nal low\nic on</w>\ngal ax\no h\nindi vi\ndem and</w>\nvir gin\nlu ke</w>\nali sts</w>\nman i\ns mi\nju dge</w>\nent y</w>\nmic hi\nresul t</w>\nam ed</w>\nspe aks</w>\n' ,</w>\nhou ston</w>\nsh in\nb ing</w>\nfl y\nch em\nau to</w>\nv as\nge t\nar m\nthank s\nd in</w>\ngan g</w>\nx x\nsi on\nloc ated</w>\np l</w>\njo sh</w>\nin fo\njo ins</w>\nadver ti\not d</w>\nel d</w>\nsi e</w>\nre asons</w>\nv ent</w>\nðŁĩºðŁĩ ¸</w>\nâ ł\nconvers ation</w>\nstu di\nðŁĶ¥ ðŁĶ¥\ngo s</w>\ns ounds</w>\nun it</w>\nmu sc\nge l</w>\nack ed</w>\npac i\nco s</w>\nde re\nu u\na o</w>\nla m</w>\ninspir ing</w>\nar ms</w>\ntw are</w>\nmat ters</w>\nad dic\ndu de</w>\nex t\ncri sis</w>\nb ath</w>\nme et\nsing h</w>\nexpe ct</w>\ndel hi</w>\nresc ue</w>\nwor st</w>\nau g</w>\nshi pping</w>\nser ving</w>\nst o</w>\ndar k\nac es</w>\nhistor ic</w>\nlandsc ape</w>\ndesig ner</w>\nb illion</w>\ngr ateful</w>\nwa ke</w>\ne ve\nm iller</w>\nhou sing</w>\ndy nam\nis co</w>\nbe ha\nsh op\npr ou\ne as\na sia</w>\ne ding</w>\nk on\ndepart ment</w>\naw ar\nmar ine</w>\nin ci\nphotograph er</w>\nta pe</w>\nlo go</w>\nr ings</w>\nd it\n-- --\nvin yl</w>\nw c</w>\nvo ting</w>\nse ven</w>\nambas sad\ndal las</w>\nt u</w>\ncom ment</w>\nk ra\nb les</w>\nw ag\nu d</w>\nau dio</w>\nstri ke</w>\noffici al\no ts</w>\nme tho\nto ols</w>\nra di\nal an</w>\nhun t</w>\nwat ched</w>\na ke</w>\nfa ke</w>\ndrin king</w>\nmer ry</w>\nm l</w>\nb day</w>\nri o</w>\nni ke</w>\nc ant</w>\nre pe\nco stu\nmur der</w>\nak ers</w>\nch ers</w>\nou ts</w>\nbeg inning</w>\nso s</w>\nad es</w>\nn in\nnot es</w>\nwro te</w>\nsol o</w>\nc i</w>\nli ghting</w>\nur ban</w>\nbre xit</w>\natt end</w>\nshir ts</w>\npla yo\nac tress</w>\npl ic\nstand ard</w>\nquot es</w>\npar ade</w>\nanci ent</w>\nÂ ©</w>\ntur ing</w>\nre e</w>\npri mary</w>\nfla sh</w>\nciti z\nmat es</w>\nste in</w>\nz i</w>\nclin ton</w>\nsk in\ngen e\nhu m\ng ar</w>\nt le</w>\ny i\nfo cu\nde an</w>\npl ants</w>\ncy ber\nb u</w>\nom e</w>\nho p</w>\nad dress</w>\nti x</w>\ngi fts</w>\nrelation ship</w>\nsub scri\nfe ed</w>\nexac tly</w>\nhaw ks</w>\nex o</w>\nstre ss</w>\ns n</w>\narre sted</w>\nan e\nsof tware</w>\nz ero</w>\nthe me</w>\nmu mb\nim migr\nmi a</w>\nmake up</w>\nple asure</w>\nuni vers\nhar b\neng ine</w>\nap er</w>\nr in\nbr a</w>\ninstitu te</w>\nle ather</w>\nal th</w>\nsing ing</w>\nco s\ngh ty</w>\nme as\nst ic\nsi de\ninsur ance</w>\nco t</w>\npit ch</w>\nmoun tains</w>\ncri min\nsu pre\nvalent ine</w>\nat er</w>\nwou ldn</w>\nsc ale</w>\nrel ated</w>\nre gar\nstar tup</w>\npack ed</w>\nmi ke\nweek ly</w>\np ts</w>\ncoun t</w>\nha r</w>\ngott en</w>\nmin d\nber lin</w>\ncon ditions</w>\nswit ch</w>\ncor n</w>\nsa ve\ng li\nemer gency</w>\ntun ed</w>\nsto ck\ndiscu ssing</w>\nevery body</w>\ns day\nwhe ther</w>\nwrest ling</w>\nec es</w>\ngen der</w>\nch en\nðŁĳ Ģ</w>\nmadri d</w>\nmar athon</w>\ne gg</w>\ni er</w>\nth x</w>\nas king</w>\nkore a</w>\nwol f</w>\nay a</w>\ng m</w>\ng au\nat ory</w>\nv r</w>\ngra ss</w>\nk illing</w>\nb ble</w>\nur o</w>\nun i</w>\ne th</w>\nsh ore</w>\nth en\nre ale\nbot tom</w>\nex erc\nk ar</w>\nor ies</w>\nad ri\nsan ds</w>\nse x</w>\n. '</w>\nvolunte ers</w>\nper form</w>\npar liam\ninclu de</w>\ndeli ghted</w>\nexecu tive</w>\nfu el</w>\nkis s</w>\nã ħ\nchar ge</w>\nh u</w>\nca kes</w>\nve t</w>\ng lu\nagre e</w>\npr ices</w>\nn au\nh l</w>\ng ru\nra j\nstreng th</w>\nb ic\nsp ending</w>\nal es</w>\nav en\nb last</w>\n: (</w>\nyo f\nnor mal</w>\nsi x\nqu ick\nse a\nd aw\nmee ts</w>\nlo vers</w>\nupd ated</w>\npo tat\ncomple ted</w>\ncoo k</w>\nopportun ities</w>\np ure</w>\norgan ic</w>\ntem per\nc am</w>\navo id</w>\npar king</w>\nduba i</w>\nand o</w>\ndi stri\nto y</w>\ncomple tely</w>\ndon ald\ntri al</w>\nbas s</w>\nb oun\nback ground</w>\nv as</w>\nmar vel</w>\nlu m</w>\nru s</w>\nt ool</w>\ncom missi\nthrow back\nfin ding</w>\nis lam\n! ?</w>\nst op\ne vil</w>\nor al</w>\nresi dents</w>\ni denti\no ak\nðŁİ ¶</w>\nl il\nspan ish</w>\nchap ter</w>\nsto pped</w>\ndirec t</w>\nho sted</w>\npic ked</w>\nlab our</w>\nlew is</w>\ndefen se</w>\nà ®\nhealth care</w>\nwh is\nmat h</w>\npe ak</w>\nra ised</w>\nfi x</w>\nbu ll</w>\nth ir\nchel sea</w>\nfol k</w>\ntr e</w>\ncan di\npau l\nei ther</w>\nad am\npoe try</w>\njewel ry</w>\nðŁ ¦\npr ay</w>\nØ §\ng c</w>\no z</w>\nwi shes</w>\nfore ign</w>\nsun g</w>\nlear ned</w>\nen e</w>\nn ing\nmicha el\nillu stration</w>\nlegend ary</w>\nw av\nb au\nðŁļ ¨</w>\ncal end\nstre ets</w>\nâ Ĩ\nmon ster</w>\nbu ck\ng r</w>\nscho ol\nba th\nwa ste</w>\nne ck\nha wa\nbe ach\nre plac\njec t</w>\non er</w>\nfac tory</w>\ncoun t\nðŁĵ ¸</w>\nmor gan</w>\nder ing</w>\nse an</w>\nsteph en</w>\nde p\nno vel</w>\nvide os</w>\nic al\npress ure</w>\narsen al</w>\nex pre\nir s</w>\ntren ding</w>\nss a</w>\nfla sh\nre sear\nthr ough\nprofess or</w>\nscul p\nto s</w>\ngg ed</w>\nmm a</w>\nbe e\na pe\nhun ter</w>\nam i\nhe i\npla stic</w>\nbu cks</w>\nuni verse</w>\nle gen\nniger ia</w>\nple ased</w>\nri s\nthin ks</w>\nautu mn</w>\ni ds</w>\nd is</w>\nanth ony</w>\nðŁı ½</w>\nak ed</w>\ngla sses</w>\nfin ance</w>\nz er\nk as\ncon tract</w>\nnu mbers</w>\nsh aw\npartner ship</w>\nt il\nlaun ched</w>\ns al</w>\nvictor ia</w>\ntheat er</w>\nusu al</w>\nnam es</w>\nperio d</w>\neli za\ni th\nbar cel\nro cks</w>\nbag s</w>\nmat e\ndistri bu\nj on</w>\ndi ffic\nali zed</w>\ncur ren\nsco red</w>\nb ha\ndu blin</w>\nro se\nin ted</w>\nsoli d</w>\nbeha vi\nwal ker</w>\nsimp ly</w>\ngarden s</w>\nhead ed</w>\nin i\nohi o</w>\nwe ap\nf o</w>\ngl en\ne state</w>\nran dom</w>\nth under\nthr u</w>\nk ill\njac ket</w>\nit i</w>\nentertain ment</w>\nthanks giving</w>\nent al</w>\nen coura\nel o\na ther\ntan k</w>\nhigh lights</w>\nf ting</w>\nru le</w>\nmodel s</w>\nbor der</w>\nbj p</w>\nhus band</w>\nin done\nken ya</w>\nbe ars</w>\nal o</w>\nn inten\npi x\nstr o</w>\nor ders</w>\nsal ad</w>\nro ads</w>\nn or</w>\nl ation</w>\nsop hi\nðŁı ¼\npi eces</w>\nb one</w>\nmin s</w>\ninclu des</w>\nnu tr\nphi l</w>\ns ent\nfun dra\nga in</w>\nbor ough</w>\nn ad\nmon day\nactiv ity</w>\nit ems</w>\nbe coming</w>\nken ne\nde tro\ncar di\ngue sts</w>\nu x</w>\nworld wide</w>\nsever e</w>\nnew s\nthank ful</w>\nfic tion</w>\nve ge\nm all</w>\nsi an</w>\ner al</w>\ninj ury</w>\nle e\nmen u</w>\ndanc ing</w>\nscot ti\nexam ple</w>\n( #</w>\nna i\nstudi os</w>\nba i\nðŁĴ Ľ</w>\nj av\ndiam ond</w>\nvin ce</w>\nric k\nprote ction</w>\nlin col\ncham ps</w>\nappro ach</w>\nd ar</w>\nm ile</w>\nclou ds</w>\nje ff\nin fin\nl ers</w>\np les</w>\npe ace\ngo p</w>\nâĻ ¡</w>\ntech n\nstr a</w>\na verage</w>\nef fort</w>\nintroduc ing</w>\ndi versity</w>\naustr alian</w>\nam p</w>\nboo st</w>\ns ke\npati ent</w>\nappreci ate</w>\nici ans</w>\npu r</w>\nf ell</w>\nwoo ds</w>\nillu str\nðŁ ĸ\nag ency</w>\nac tions</w>\nbrit ain</w>\nunder way</w>\nse attle</w>\nel and</w>\nag o\nf ill</w>\nstre aming</w>\npro test</w>\nchalleng es</w>\nky o</w>\net sy</w>\ncoo king</w>\nexper t</w>\nru ss\nrain bow</w>\ncommer cial</w>\nsp in\nbe ats</w>\nc ry</w>\nval u\nel i</w>\nth row</w>\ngr ams</w>\nle vels</w>\nmichi gan</w>\nc ad\nador able</w>\nconst itu\nw s\npu b</w>\nmid night</w>\nth at\nnet fli\nbraz il</w>\ndie go</w>\nregu lar</w>\njo y\nâĤ ¬</w>\nli qu\nea stern</w>\nk ni\nfl at</w>\nn p</w>\nbro wn\nw er\nse y\ntt ers</w>\nac ting</w>\nv anc\ncy cling</w>\nprogram me</w>\nra w</w>\ncomple x</w>\ntat too</w>\nthrowback thursday</w>\nse ssions</w>\nro oms</w>\nsi ght</w>\nspeci es</w>\nbom b</w>\nlau gh</w>\nke eps</w>\nmo on\noffic ers</w>\ncon ver\nt r</w>\nha sh\nt ack\nri ous</w>\nad ap\na j</w>\nreco gn\nex po</w>\nsug ge\nconfir med</w>\nrol ling</w>\ndre ssing</w>\nic t</w>\nfri day\nph ones</w>\nri dge</w>\ncon cept</w>\nro y</w>\nke ys</w>\nef for\nc ate\nk ne\nev en\nl ay</w>\ncommun ities</w>\nmo d\nn az\nevery where</w>\nal ab\nbit coin</w>\nban ks</w>\nout door</w>\nfeder al</w>\nsto res</w>\nh p</w>\nc al</w>\nm ely</w>\nsig nific\nbe ar\nre public\nclo ser</w>\nal lah</w>\npic k\nx d</w>\npal ace</w>\nch ill</w>\nb am\ner ous</w>\nun a</w>\nal len</w>\nout standing</w>\nolym pic</w>\nsupp ly</w>\nfi gu\nv au\nl p</w>\nchar lie</w>\nun es</w>\n> >></w>\nlegen ds</w>\nici al</w>\nco ast\nbenef it</w>\nmul ti</w>\nf its</w>\nfar mers</w>\nam ount</w>\nsi sters</w>\nhar ve\nhon ey</w>\nque en\nb ers</w>\npl ann\nâŃ Ĳ\nm u</w>\nbarcel ona</w>\nal ber\nstat us</w>\nre main</w>\nex tra\nc andy</w>\nvi ous</w>\nâľ Į\no v\nwarri ors</w>\n-- ></w>\nju mp</w>\nam ar\nx mas</w>\nstu dies</w>\ni ors</w>\nk or\ndon ate</w>\npre p\nfi sh\nim a</w>\npain ted</w>\nad mini\nco splay</w>\nspor ts\ndro ps</w>\nfi ghter</w>\nevi dence</w>\nðŁĴ ª</w>\nla ke\nro b</w>\ncine ma</w>\npro file</w>\nÃ ±\nstan ds</w>\nleg acy</w>\nsh ape</w>\nro of</w>\nci vil</w>\ni ans</w>\nsy l\nsh am\nvo ted</w>\nre tail</w>\nph illi\nli sted</w>\ndu ty</w>\nn b\nth es</w>\nf are</w>\nau ction</w>\nffici al</w>\nstor ms</w>\nd p</w>\nl oun\nsh ops</w>\nal y\nani me</w>\nmulti ple</w>\nðŁĺį ðŁĺį</w>\npsy cho\nje an</w>\nap art\ncandi date</w>\ngg y</w>\ncon f</w>\njose ph</w>\nw ick</w>\nme at</w>\nfr ame</w>\nc l</w>\nfor got</w>\nph y\nf ing\nli ed</w>\nre p</w>\nse ed</w>\nf all\nu fc</w>\nnu t</w>\nlin d\nmo de</w>\nfiel ds</w>\nen ce\ns ley</w>\nðŁ¤ Ķ</w>\nch ill\nfollow ed</w>\nannoun ces</w>\ncor ru\ntro phy</w>\nthem selves</w>\nac le</w>\nal du\nk ong</w>\nl on</w>\ns v\nbro ke</w>\nander son</w>\nta i\nstor y\ntempor ary</w>\nactiv ities</w>\nk ati\nari z\ncry stal</w>\nspo ke</w>\nextre mely</w>\ntra ding</w>\nðŁĴ ļ</w>\nÃ ¼\nin ch</w>\ned in\nout fit</w>\nequ ip\nma di\nform ed</w>\nbe ef</w>\npo p\nti ger</w>\nthis day</w>\nti red</w>\nneigh b\nre tro\nis a</w>\nun t</w>\nt as\nkan sas</w>\nde st\nsecon ds</w>\nta y\nhur ric\no u</w>\ngalax y</w>\ndad dy</w>\nbro w\nbur ger</w>\nen ced</w>\nde sk</w>\nac cur\nsecre tary</w>\nel ite</w>\nk ab\nch in\ntouri sm</w>\nbud dy</w>\nici de</w>\ndre ssed</w>\nu d\nvac ation</w>\nche ers</w>\ncom for\ncharac ters</w>\nj et</w>\nbu ying</w>\nl ins</w>\nn ap\nreale state</w>\nli e\naf c</w>\ni ii</w>\nf ame</w>\nn r\nb at</w>\nag ent</w>\nma kers</w>\nâĢ ¼\nsec tor</w>\nop ti\nle on\ndi et</w>\npra yer</w>\nhi p</w>\nmi r</w>\nle x\nbr y\nan a\npas sing</w>\nw en\nreco very</w>\nak i</w>\npo pul\nres ort</w>\nmar ia</w>\nstu ck</w>\nread s</w>\nti er</w>\nperfe c\nnetfli x</w>\np oo\ncham p</w>\no c</w>\nre duce</w>\nwe red</w>\ncomm ents</w>\ncla im</w>\nacci dent</w>\ns ag\nh ack\nsal t</w>\nkin da</w>\nk iller</w>\ni os</w>\nz y\nex change</w>\nlec ture</w>\neng er</w>\nic king</w>\nt au\nreve als</w>\npri son</w>\nz om\ngh an</w>\nu l</w>\njour nal</w>\ni ot</w>\ntr in\njon a\ngovern or</w>\ncap e</w>\nquar ter</w>\nspec tive</w>\nimpre ssive</w>\nbab ies</w>\nt x\nm ill</w>\no y\nhar ri\njo int</w>\nsu e</w>\ncollabor ation</w>\ntren d</w>\nrevolu tion</w>\nre new\nalum ni</w>\nge tt\nsh ell</w>\nsun day\nent u\nni c</w>\ndonald trump</w>\nblock chain</w>\npaci fic</w>\nexpla ins</w>\nsp y</w>\nad voc\npar adi\nto f\nstar ring</w>\np av\nfe ed\nbr ac\nsmo ke</w>\nham p\ny am\nto kyo</w>\nsi mon</w>\nd h\ne ffici\nphys ical</w>\nn j</w>\nell i</w>\ns low\ngradu ate</w>\nameric ans</w>\nti fy</w>\nf red</w>\nap ore</w>\nfin ds</w>\nrob in\nwe t</w>\nnot ice</w>\nse mi</w>\nun ve\nk om\npil ot</w>\nscre ening</w>\nda ily\nðŁĴ Ĺ</w>\nroy al\nsp a</w>\nvo tes</w>\nn ag\nwh ate\natt ending</w>\nexper im\nad dition</w>\nk ate</w>\nsto l</w>\nm ali\nfoo t\nchri st</w>\nch an</w>\nde e</w>\nlic en\nglo bal\nmo ore</w>\nti a</w>\nbri gh\nmyster y</w>\ny ay</w>\nâĿ¤ï¸ı âĿ¤ï¸ı\ncre ati\nme chan\nclo ck</w>\ndi c</w>\nâĢ Ķ\npp er\nal ph\nthrough out</w>\nal low</w>\nre sources</w>\nselec tion</w>\nham il\nbb q</w>\naa aa\nvirgin ia</w>\ndis ney\nen g</w>\nso red</w>\ndrin ks</w>\nf ancy</w>\nconsi der</w>\nend a</w>\njan e</w>\nhand made</w>\ndu l\non tari\ni us</w>\ns ville</w>\ncolor ado</w>\nwhate ver</w>\nwhe el</w>\npromis e</w>\nne ver\ndesig ns</w>\nab ly</w>\nsex ual</w>\nvanc ou\nat i</w>\ncon vention</w>\ncul tural</w>\nsing apore</w>\npro mo</w>\nload ed</w>\ngla sgo\npp l</w>\nn oo\nke e</w>\nste m</w>\nmen tion</w>\ni do\ncru ise</w>\nri ding</w>\nbe comes</w>\nbe y</w>\nâļ½ ï¸ı</w>\ntw in</w>\ndedic ated</w>\nna sh\nde si\nwork out</w>\njen ni\ni v\ngrou ps</w>\nrela x\npho eni\nli ft</w>\nmix ed</w>\nm ck\np c\nmu st\nme tro</w>\nci es</w>\ny ar\na im\nang er</w>\ni e\nrec y\nmarri ed</w>\ndro pped</w>\neng ag\nle st</w>\nambassad or</w>\nop h\nde s\nw ick\nassi stant</w>\nnat ur\nfa il</w>\nl td</w>\nshor t\nk ap\nsha w</w>\nbi gger</w>\nrema ins</w>\ncrit ical</w>\nsur vey</w>\nco verage</w>\ner son</w>\nwin d\nn b</w>\nbil ly</w>\nlet es</w>\nac ts</w>\njim my</w>\nat lan\nal and</w>\nt c\nimport ance</w>\ndam age</w>\nf g</w>\nstor age</w>\ntw t</w>\nbon d</w>\nbal ance</w>\ncr ying</w>\npu ppy</w>\nvo te\npu sh</w>\nðŁĴ ľ\npol y\nme l</w>\nlon don\nterr ori\neffec tive</w>\ncorpor ate</w>\natl anta</w>\njac o\nnas a</w>\ngre ek</w>\nsen ate</w>\ni sh\nev a</w>\nintellig ence</w>\neffor ts</w>\nal co\nk un\nh all\ndi ag\nclaim s</w>\nfir st\nh b\nba e</w>\nv ul\npu ll</w>\nÂ °</w>\nse par\nspe ed\nvic ti\non thisday</w>\naudi ence</w>\nr ates</w>\nte ach</w>\nfil ming</w>\nbu sh</w>\nson g\ny um\nbr un\nra ine</w>\naw a</w>\npar ks</w>\nð Ŀ\nra bb\nra ch\nra id</w>\nreach ed</w>\nra il</w>\nmo ves</w>\nselec ted</w>\nfr i</w>\nra ising</w>\nom y</w>\nst ones</w>\nsu k</w>\nfranc isco</w>\ncas es</w>\ncap it\ncon fu\nw tf</w>\npo ke\nequip ment</w>\ngre g\ness ential</w>\noff ering</w>\nne x\npi es</w>\nbe c\ncre ation</w>\nchair man</w>\ncro wn</w>\nw al</w>\njohn ny</w>\nshi ft</w>\nne ck</w>\nban g</w>\nbir d\nðŁĺ ı</w>\ndu ck</w>\nre serve</w>\nde pu\nma sters</w>\nover all</w>\nno tic\nju ice</w>\nsne ak</w>\nche er</w>\ncla sses</w>\neag les</w>\nn ca\ncar pet</w>\nci vil\ncoach es</w>\nhar ris</w>\nu ps</w>\nb alls</w>\ndec or</w>\nmar tin\nro s</w>\nv ice</w>\nannoun cement</w>\nwho se</w>\nti gers</w>\nste red</w>\nc ts</w>\ndr am\nste el\nyoun g\ninst all\nsupp o\nrecor ding</w>\nde ck</w>\nse ats</w>\nl der</w>\nang le</w>\nbo t</w>\nsty les</w>\nelec tions</w>\nfor tun\nn ab\nbut ter</w>\nari an</w>\nka sh\nin ner</w>\nou red</w>\nbe ast</w>\nwe i\nic onic</w>\nexper ts</w>\nne cess\nb eng\njam es\nli a</w>\ngre ece</w>\nðŁĵ ·\nðŁĺ ģ\ngood bye</w>\nm itch\ntw ice</w>\nmumb ai</w>\nste am</w>\nru sh</w>\nmed al</w>\nne tt</w>\nfashi on\nt ar</w>\nr s\nsav ing</w>\nric ul\nl m\nsleep ing</w>\nbrook lyn</w>\nmis s\nsen ding</w>\ndisco vered</w>\nsp here</w>\nof theday</w>\nk icks</w>\nmissi ons</w>\nw right</w>\ner n\nght ly</w>\ni ous</w>\nmel bourne</w>\nstar tu\nmo ved</w>\ncar ry</w>\nd ak\nag ues</w>\nbel gi\ne ma\nway ne</w>\ndo t</w>\ner ie</w>\npe l</w>\nit unes</w>\nmatthe w</w>\nno body</w>\nest ab\ncal m</w>\nwin ds</w>\nlu c\nprep are</w>\ntren ds</w>\nexerc ise</w>\nadv ant\nðŁĴ ¯</w>\nathle tics</w>\napp s</w>\nc tions</w>\nadv ance</w>\nlaun ches</w>\nlitt le\nreal donaldtrump</w>\neliza beth</w>\ncarol ina</w>\nhu b</w>\nhi dden</w>\nn w</w>\nus er</w>\npol l</w>\ngreat er</w>\nmo st\nf ed</w>\np at</w>\nlife style</w>\ns ati\nsco res</w>\nmarri age</w>\nl r</w>\naven ue</w>\nde serve</w>\nri f\nðŁ Ĺ\nwat ch\nchampion ships</w>\ngr ay</w>\nen ni\ncot ton</w>\ng om\nwhe re\npack age</w>\nsu m\nab solu\nnew ly</w>\nfoo ds</w>\nty ler</w>\nassemb ly</w>\nmusli m</w>\nban k\nre memb\nop tions</w>\nproduc er</w>\nland o</w>\nfun ds</w>\nu pper</w>\nshad ow</w>\npro gre\nco p</w>\ning e</w>\nleg s</w>\ndetro it</w>\nhill ary</w>\njo se</w>\ngi ants</w>\nsou p</w>\nsustain able</w>\nt us</w>\nclo thes</w>\nroc king</w>\nn z</w>\nmin ne\nmat eri\nbru ce</w>\near t\nca sting</w>\nindepend ent</w>\nthou sands</w>\nta h</w>\nde cl\nveter ans</w>\nli ons</w>\nwra p</w>\nâĢ ¦\nde ss\nbl ing</w>\nst ine</w>\ne ggs</w>\no on</w>\nclo sing</w>\nz ay\nat t</w>\nbac on</w>\nfa il\nariz ona</w>\nde pre\ngho st</w>\nnew sp\nw ers</w>\nvi p</w>\nli ked</w>\nid ent\nvolunte er</w>\nad ult</w>\npu pp\ncir cle</w>\nmat erial</w>\ndegre e</w>\ngro wn</w>\nboo m</w>\ncalend ar</w>\nsu r</w>\nvie wing</w>\nath letes</w>\nch and\nre ll</w>\nasi an</w>\nen tr\nvol ley\nvicti ms</w>\nbo dy\nm ama</w>\ntrans fer</w>\nge ek</w>\nin dic\nsav ed</w>\nma i\ng ent</w>\nit s\nloun ge</w>\nk ol\nthe ory</w>\nsitu ation</w>\nis lands</w>\nar th\nz oo</w>\nfloo d</w>\nvi ously</w>\nshow ed</w>\nparliam ent</w>\nch ev\nel ine</w>\nat trac\nab ad</w>\nta il\nh rs</w>\nlu s</w>\npor tu\ngor y</w>\nprovi des</w>\nto ys</w>\nde ath\nin fe\nan ce\ng le\nli am</w>\nlo ver</w>\nhu d\ndv d</w>\nreve aled</w>\ng w\nre ment</w>\nca the\nl ying</w>\nra dio\nder by</w>\nstor s</w>\nche mi\nhosp it\nâľ ¨\n' :</w>\nilo ve\nle mon</w>\nre public</w>\ns ni\nne ss\ndo or\nre action</w>\npre gn\nfla v\nschol ar\nspo tify</w>\nis ation</w>\nvis ual</w>\naw are</w>\nspon sored</w>\njo ke</w>\nless ons</w>\nleg is\nlo ck\nsi mil\nðŁĺ ĭ</w>\nkin d\nla y\nma h\nho ping</w>\nvancou ver</w>\nas er</w>\nclean ing</w>\ngal a</w>\nthre at</w>\nla p\nach e</w>\nro mance</w>\nex pen\nre post</w>\nz am\ne pi\nmir ror</w>\no ak</w>\nad ul\nbat man</w>\ns lu\nl c</w>\nvie wed</w>\nre views</w>\nd ates</w>\nindone sia</w>\nacti vi\noff en\nlea f</w>\ni si\nag ricul\ncostu me</w>\ns ites</w>\nspir itu\nappear ance</w>\nir y</w>\nst air\napplic ation</w>\nspec tac\nic ity</w>\nski es</w>\nhand le</w>\npun k</w>\nparadi se</w>\nt n</w>\nde al\nprovi ding</w>\ndo c</w>\nrecei ving</w>\nbre w</w>\nmicro soft</w>\nÃ ¶\nfer r\nme tro\nth ail\ny um</w>\ncar ter</w>\nÃ ¡\ngent le\nbre aks</w>\ncoo per\nshow case</w>\ncu tting</w>\negy pt</w>\nbab y\nsemin ar</w>\ngl ori\nss on</w>\nfa ve</w>\nre hear\nlo tte</w>\nla dy\nal as\npre p</w>\ndeli vered</w>\nnu clear</w>\nir o</w>\nengag ement</w>\nat ta\ncon ven\nz an\ngl ory</w>\nhol ds</w>\nbusine sses</w>\nstr ange</w>\nsch e</w>\nit self</w>\ngra d</w>\nmar kets</w>\nf alling</w>\nst ats</w>\nge on</w>\nbu dd\nli s\nshe et</w>\nthi si\nco lo\ndeser t</w>\nregi stration</w>\nig n\nexpla in</w>\ninter ior</w>\nla ws</w>\nwrit ers</w>\nspr ings</w>\nk r\nfri ed</w>\nblo om\ninf ra\na o\ncre d\npa st\nline up</w>\nbo o</w>\nbre a\nboo ts</w>\ncelebr ity</w>\natt acks</w>\nbro ok</w>\nev es</w>\nex cu\ncher ry</w>\noo p</w>\nfas cin\nboy friend</w>\nse as\nn ine</w>\neffec ts</w>\npo wered</w>\nk ha\nðŁĺ Ģ</w>\nsh out\ncon dition</w>\ni j\nher o\nenter pri\nwin ter\napplic ations</w>\nsho e</w>\ng el\nbatt le\npro grams</w>\nw art</w>\nðŁĴ ¥</w>\nra p</w>\nho l</w>\ndang erous</w>\ndi a\ncoun ter</w>\nric s</w>\ni or\nk night</w>\nco at</w>\nemo tional</w>\nat ures</w>\nd as</w>\nwhe el\nfore cast</w>\ntran sport</w>\nglasgo w</w>\nking dom</w>\nprepar ing</w>\nim medi\nff in</w>\nawar ded</w>\nprin ting</w>\nro man</w>\nfight ers</w>\nany more</w>\nbel t</w>\np ine</w>\nwin e\nx i</w>\nemploye es</w>\nlogi es</w>\nal led</w>\nde mo</w>\nbirth day\nange les</w>\nlo g</w>\ndri vers</w>\nneck lace</w>\nk ath\ns it\nathle te</w>\nef s</w>\ns burg</w>\npur pose</w>\nresi stance</w>\nrele ases</w>\nt is</w>\nvari ous</w>\ndeli ver</w>\nch al\ns anc\nopp o\ncra w\nneu ro\ndr a</w>\nsuppor ters</w>\nsna p</w>\ndiffic ult</w>\nswe ar</w>\nlogi st</w>\npa th\nattemp t</w>\nà ¥\nswim ming</w>\nste ve\nhur t</w>\ninclu ded</w>\nb ap\nwa re\nðŁĴ ĭ</w>\nend ers</w>\nja ke</w>\nle eds</w>\ncli mb\nl b</w>\nim ple\nli sa</w>\nclo thing</w>\nðŁĺ İ\nd t</w>\ncom pla\nsw ing</w>\nstra w\nv als</w>\nk le</w>\nus ers</w>\nstor m\ncu ts</w>\nontari o</w>\np an</w>\nhand some</w>\ni ow\nar gu\nchec king</w>\nscotti sh</w>\nĶ ï¸ı</w>\nsi er</w>\nem ma</w>\npo d</w>\npatter n</w>\nde sh</w>\nen h\ned ward</w>\nt ing\nk h</w>\nhal f\nlincol n</w>\nmo ther\nal leg\nr c</w>\nvolley ball</w>\nd n</w>\ng ay\nall y\nle ton</w>\ngro ve</w>\nl oud</w>\nadv anced</w>\nre spec\ncli ent</w>\nsupre me</w>\nthail and</w>\nho w\ngi g</w>\nto i\ndo t\ndol lar</w>\nðŁĳ ĩ</w>\np it</w>\nr b</w>\nh n</w>\nproduc ed</w>\ngg ers</w>\nâĨ Ĵ</w>\nml b</w>\ncan vas</w>\nfin eart\nus d</w>\nin the\np son</w>\nactu al</w>\ns l</w>\nt b</w>\nip ad</w>\nen sure</w>\nu mb\nw d</w>\nsk a</w>\nmar s</w>\nk end\nf eli\nth ing\ncount down</w>\nabsolu te</w>\nr out\ndra l</w>\np y</w>\ninju red</w>\nmin t</w>\nhun ting</w>\nmm er</w>\ns age</w>\nli gh\nac ity</w>\nex pan\nmur ray</w>\nar o\nsec ure</w>\nfour th</w>\neag le</w>\nreli ef</w>\nst akes</w>\nindustri al</w>\nclar k</w>\nunder standing</w>\nsee m</w>\npl enty</w>\nsil ver\ncla u\nthre at\nsa il\npro duce</w>\nab str\nis is</w>\nb r</w>\neng ers</w>\nwor ry</w>\nbie ber</w>\ns j\njust in\nreali ze</w>\nky le</w>\nesp n</w>\nfil ter</w>\ns ch</w>\nty pes</w>\ngame dev</w>\nd ing\ntwit ter\nsoldi ers</w>\np om\ncar bon</w>\ny ards</w>\nchild hood</w>\nri ed</w>\nke l</w>\nele ph\nt ons</w>\nkey note</w>\nqui et</w>\nwi re\npo sting</w>\nis sa</w>\nrepre senting</w>\nbac ks</w>\nalex ander</w>\ncelebr ates</w>\nta ining</w>\n| |</w>\nch or\nesc ape</w>\npe ek</w>\nti ves</w>\nfiel d\nssi e</w>\nim pac\nspons or</w>\nr c\nwe dd\ncann ab\nsi des</w>\ntrac ks</w>\ncom par\ncon trac\ntechn ical</w>\nbi ble</w>\nexpl oring</w>\nsh are\ntra v\nn ate</w>\nill o</w>\nsc ru\nm ingham</w>\ngun s</w>\nof the\nsh ame</w>\nse es</w>\nca tho\nac cess\nce l</w>\nrepor ted</w>\nÂ »</w>\nmari o</w>\np ad</w>\nhope fully</w>\nou se</w>\ny on</w>\ndisapp o\nol o</w>\np itt\npa c</w>\nga p</w>\ncru sh</w>\ns g</w>\nk le\nge m</w>\nemp ire</w>\ndir ty</w>\na is\navi ation</w>\nze aland</w>\nfac ing</w>\nhigh way</w>\nd anny</w>\nspi der</w>\not ta\nðŁĺ Ħ</w>\nw y</w>\ncol ours</w>\nin fl\nco sts</w>\nolym pics</w>\nau s</w>\nh m</w>\nho ward</w>\npas ses</w>\nlau ren</w>\nmu sh\nop in\nr ho\ndisc ount</w>\noper ation</w>\nem ily</w>\nmm m</w>\ncham ber</w>\nd il\nto yo\nshi p\nsam u\npic tured</w>\nun ic\npo l</w>\nkeep er</w>\ncarto on</w>\nst en\nig nor\nn ations</w>\nn l</w>\nta sting</w>\ndeta il</w>\noffici als</w>\nmo tor</w>\nfranc is</w>\ned itor</w>\nðŁĳ ĩ\npe ts</w>\nrang ers</w>\nt g\nr n</w>\nw ri\nnic hol\ni se\nspo ts</w>\nani e</w>\nchec k\ntri ple</w>\nku mar</w>\nspe akers</w>\nic ing</w>\npre pared</w>\nab use</w>\nfriend ship</w>\nmon th\nswi m</w>\nair e</w>\nsc ent</w>\nhamil ton</w>\nindi an\nj es\nyum my</w>\nte ars</w>\nda wn</w>\ni zed</w>\nworl ds</w>\nðŁ ķ\nb illi\nst one\nn hs</w>\nba sic</w>\np or</w>\nst le</w>\nir on\nol der</w>\ncle vel\ne ing</w>\nðŁĺįðŁĺį ðŁĺį</w>\nprin ts</w>\nfir m</w>\nair craft</w>\nfin est</w>\ndevel op</w>\naar on</w>\nt z\ngra ham</w>\nown ers</w>\nfo li\nless on</w>\nqu es</w>\nbab e</w>\ncra ft\nph en\nju n</w>\nbir mingham</w>\nv ine</w>\nll er</w>\ni an\nfineart america</w>\nevol u\nst ab\nim per\nwar d\ncom ic\nwi z\ninv ited</w>\ndu ke</w>\nmat ch\npor ts</w>\nro ger</w>\ndiag no\nke pt</w>\nte st\nvis u\nr hy\nso c</w>\nto x\nb aker</w>\nsur face</w>\nco vers</w>\nman s</w>\nb its</w>\nx box</w>\nff le</w>\nn an</w>\ngar d\nh art</w>\nwat ers</w>\nv illa</w>\nre tro</w>\nlight ning</w>\ncatho lic</w>\ndemocr acy</w>\nneigh bor\npen n\ncr an\njona than</w>\nla ura</w>\nvi bes</w>\nsu b</w>\ncoach ing</w>\nclear ly</w>\nuk raine</w>\nbra ve</w>\ncommit ment</w>\nt all</w>\nmar t</w>\nra p\nmo di</w>\nsco tt\nbro s</w>\nshow er</w>\nðŁı ¾</w>\nâĺº ï¸ı</w>\ncou sin</w>\nappro ach\nbr e</w>\ncom pos\nhil ari\nphil ly</w>\ng ad\nquick ly</w>\nri an</w>\nt m</w>\nvir tual</w>\nhou ses</w>\nk t</w>\nphoeni x</w>\nw ire</w>\nff y</w>\nb unch</w>\nanc ing</w>\ntal e</w>\nsnap chat</w>\nstar ter</w>\nh t</w>\nk icking</w>\nap art</w>\nth y\n) !</w>\nblo gger</w>\nit z</w>\ncom fort</w>\nang els</w>\nw ash</w>\n\" :</w>\nar gent\nre quest</w>\nhon est\nmi ghty</w>\nbo bby</w>\nk g</w>\nro l</w>\nthou se</w>\nex po\nh c</w>\ntab les</w>\nmag ical</w>\npo sts</w>\nde m</w>\nn w\nor lando</w>\nab er\n* **</w>\nðŁĺ ľ</w>\nenviron mental</w>\ntrans formation</w>\nmi le\nw ic\nhir ing</w>\nma ine</w>\nbo ar\nr ying</w>\nti s\nnit ure</w>\ntwee ted</w>\nanton io</w>\nopin ion</w>\nfin ale</w>\ndi y</w>\nf is\nth in</w>\ntrou ble</w>\nle go</w>\nfi les</w>\nqu art\nsp a\ncurren cy</w>\ncli mate\nfan art</w>\nrail way</w>\nsp ace\nban ds</w>\ndani el\nmo tion</w>\nl eng\nhol der</w>\noc cu\nmar ie</w>\ncathe dral</w>\nbu zz\nbi es</w>\nnas car</w>\nbm w</w>\nbat tery</w>\nchar lotte</w>\ndoc tor\nzz le</w>\nse ven\nin san\nd dy</w>\nst en</w>\nlab or</w>\nthr illed</w>\nse ren\ndocu mentary</w>\nwav es</w>\ncer tain</w>\ncan did\nallow ed</w>\nninten do</w>\nstar wars</w>\nta p</w>\nhome made</w>\nd les</w>\nther ing</w>\nbre e\nemp ty</w>\npi ano</w>\npos iti\ncoun try\npor k</w>\npu ts</w>\nper ry</w>\nm atic</w>\nspot light</w>\nti st</w>\nor ities</w>\nwe alth</w>\nc p\nbar bar\ncommit ted</w>\nas sau\npro fit</w>\ne ight</w>\nhu l\nfini shing</w>\nrun ner</w>\nss o</w>\ninsp ec\nchar ged</w>\nchrist op\nlo sing</w>\nco al</w>\nho o</w>\nele v\nde le\nmo ham\ndon ation</w>\nc able</w>\nclin ic</w>\nj in\nmanag ed</w>\nter ing</w>\nâ ¬\nur ban\ndepu ty</w>\nbb er</w>\nbur n\nacade mic</w>\no tt</w>\nsta ke</w>\nit er\nsto wn</w>\nack er</w>\nadvent ures</w>\nad ams</w>\ngre g</w>\npro m</w>\nvo l</w>\nac qu\ncon gre\npa int\ncitiz ens</w>\nc all\naf ford\nv c</w>\nas ks</w>\nthe tic</w>\nindepend ence</w>\nâ Ľ\nh itting</w>\nbl on\nfu ture\nâ ı\nin no\ngen e</w>\nbo ards</w>\ndi stance</w>\nse t\nre mem\nth al\npre vent</w>\nl ang\nob jec\nsu sp\nmat t\nin duc\nbor o</w>\npi one\nre di\nvir tu\nprin ted</w>\nsco pe</w>\nshar k</w>\nsuc ce\na stron\nil legal</w>\nj ag\nc ting</w>\nine e</w>\nat o\nrob in</w>\nnutr ition</w>\nb f</w>\ndu tch</w>\nb n</w>\nfur niture</w>\nfor gotten</w>\nat ar</w>\nru p\nhy per\nbran ch</w>\ncommunic ation</w>\ndegre es</w>\non ia</w>\nun cle</w>\npromo te</w>\nor che\nwi i</w>\nj s</w>\nbut ton</w>\nma jor\nc bs</w>\nbri stol</w>\npremi um</w>\nordin ary</w>\ne dit</w>\nm g</w>\nwe ed</w>\nst even</w>\n: '\ngu s</w>\nte s\ncap tured</w>\ndru gs</w>\ndo w\nwr ites</w>\nbi shop</w>\nwhe els</w>\nali zation</w>\ndisco very</w>\nw r</w>\nrach el</w>\nne il</w>\nhy dr\ncu test</w>\nentreprene ur</w>\nkore an</w>\nore gon</w>\nul ty</w>\nperfec tly</w>\nsuppor ted</w>\nhistor ical</w>\nt wins</w>\nell y\nwe l</w>\nde vil</w>\nin come</w>\nscienti sts</w>\nde leg\nh en</w>\non i</w>\nic ed</w>\ngi o</w>\ncur ry</w>\nreve al</w>\ne g\nbuff alo</w>\nn ol\nop era</w>\ncamer on</w>\nhaha haha\nj ab\ngradu ation</w>\ncra ig</w>\nr al\ni f\norgani zation</w>\nle ge</w>\ng ang\nsu d\nedin burgh</w>\nl ack</w>\nfli es</w>\ng ate\nthr ones</w>\nq b</w>\nthe real\ne leg\npp in</w>\nc les</w>\njam ie</w>\ntn am</w>\ncryp to\nou l</w>\np ages</w>\na se\nroo ts</w>\nstu pid</w>\na did\nboo t</w>\nprote in</w>\ns ap\nsi um</w>\nsu s\nend or\nfun ction</w>\ndon t\nen na</w>\nch y</w>\nsqu e</w>\nwor ker</w>\nm tv\ne a</w>\nk an</w>\nðŁĴ ļ\nmu s</w>\nprofessi on\nt to</w>\noper ations</w>\nal lo\nc tor</w>\ninv ite</w>\nsc and\nou th</w>\nz im\nlin ks</w>\ncli ents</w>\nsam sung</w>\ndiscu sses</w>\nn ell</w>\nul tra</w>\nsome where</w>\nste wart</w>\nine t</w>\nde z</w>\nb out</w>\nfac tor</w>\nti an</w>\ntr ans</w>\njere my</w>\nd b</w>\nðŁĩ ¬\nor n</w>\ndevelop ing</w>\nspo l</w>\ncoo per</w>\nma u\nrememb ering</w>\ntre k</w>\nfamil y\nsen iors</w>\nfo ster</w>\natt ended</w>\nw ing\ntrans form\nele mentary</w>\nhor iz\nli sting</w>\nmalay sia</w>\nit ch</w>\nwarri or</w>\nphilipp ines</w>\nruss ell</w>\nm end\niniti ative</w>\ncre ep\nto ps</w>\nbr iti\na ur\nshar p</w>\nadverti sing</w>\nug ly</w>\nachi ev\nmateri als</w>\nbu g</w>\ndev ice</w>\nbon us</w>\nfac ility</w>\ncol e</w>\nnh l</w>\ny as\nplann ed</w>\npol e</w>\nexcell ence</w>\ntr ick</w>\ncon fl\nr p</w>\nachi eve</w>\nlo an</w>\nswa g</w>\njess ica</w>\nho we\np our</w>\nsc u\nz oo\nr ated</w>\ndre sses</w>\nre bel\nmex ican</w>\nco ordin\nme ss</w>\natlan tic</w>\nt l</w>\nosc ar</w>\nwal ks</w>\nphar mac\ninvestig ation</w>\n... #</w>\ncc i</w>\neas ily</w>\nmonday motivation</w>\ny ment</w>\nau ti\nfor ced</w>\nar med</w>\ncolle agues</w>\npap ers</w>\npro per</w>\nsha ke\nbu c\nle an</w>\nexhi bit</w>\ne vement</w>\nco tt\nbi z\nsp er\nk ent</w>\nsw an\n/ @</w>\ngirl friend</w>\nhaw k</w>\nâĺ Ģï¸ı</w>\nmon o\nðŁĴ Ľ\nstat ue</w>\nðŁĺ ³</w>\nra s</w>\nte eth</w>\npreci ous</w>\nt ile</w>\np am\nswi ft</w>\nv ali\nno se</w>\ndr unk</w>\nexperi ences</w>\ncome back</w>\ngen ius</w>\nwor se</w>\nsh ef\nra d</w>\ned it\nhon our</w>\nau spol</w>\nlar ry</w>\nh ire</w>\ngor don</w>\nachi evement</w>\n.... ....\nsu icide</w>\nalter native</w>\nsu p</w>\nsur roun\nsha ke</w>\nke ith</w>\npe pper</w>\ntur k\ncrimin al</w>\nbe ck\nsu m</w>\nw alls</w>\ncn n</w>\nan tic\nof fe\ncol li\nwin es</w>\nhigh light</w>\nhawa ii</w>\nemb ar\nl fc</w>\nðŁĩ ®\nm v</w>\n> >\nat mo\nwor d\ncar l\nshout out</w>\nbre wing</w>\nì Ŀ\ndo f\ns ic\nhot test</w>\ncol on\nhh h</w>\nshu t</w>\nlow ing</w>\nvolu me</w>\napart ment</w>\nagre ement</w>\nde stro\nwe e</w>\nreligi ous</w>\niow a</w>\nro d</w>\nland ing</w>\nre present\nðŁĵ· :</w>\nla s\nusu ally</w>\nh l\nc ac\nsal v\nal ong\nlaugh ing</w>\nbe ans</w>\nremin ds</w>\npha se</w>\nsome body</w>\nma sk</w>\nran ked</w>\ndest roy\nsc i</w>\nâĢ¼ ï¸ı</w>\ngab ri\nle o</w>\nro a\nfa iled</w>\nsi l</w>\nrefuge es</w>\nre vi\nr ing\nber ries</w>\ncoo kies</w>\ny y</w>\nconserv ation</w>\nsh ab\nhuman s</w>\nde termin\na in\nni all</w>\nas su\nmb a</w>\nfro m\nextre me</w>\nvic es</w>\ncommer ce</w>\nght ful</w>\nor dered</w>\nsuppor ts</w>\nre cap</w>\nv or\ndro pping</w>\ncorrec t</w>\npay ing</w>\nmean ing</w>\nn j\nqui z</w>\n\" #</w>\nbusine ss\nðŁĩ® ðŁĩ\nindi gen\ndu st</w>\nbox es</w>\nbl ind</w>\nx xx</w>\nzz y</w>\nðŁĩ¬ ðŁĩ\nss els</w>\ns ant\ndd le</w>\nhilari ous</w>\ndesig n\nwonder ing</w>\nvehic les</w>\nk re\nju d\nrece ption</w>\npar ker</w>\nÃ Ń\npri vi\nhy dro\nsof tball</w>\npol lu\nlo cked</w>\nba h\ne ar</w>\nscri pt</w>\ndi vi\nbr ace\ngeor ge\nthe ast</w>\nbel o\nj al\ntion ary</w>\ndent al</w>\nroc ket</w>\npur ch\nsh ak\nmanufac turing</w>\ne z</w>\nit is</w>\ncon cep\ntb all\nch s</w>\ndirec ted</w>\npra yers</w>\noo k</w>\nphil os\nvari ety</w>\nche ss</w>\nser ver</w>\ng and\nbal ti\nðŁĵ ¸\nsel y</w>\ncru z</w>\nspectac ular</w>\nbur ning</w>\nre present</w>\ni z</w>\nt one</w>\nmer ce\nh ell\nbed room</w>\nestab li\nbo l</w>\ncom mon\nãĥ »\nab or\nkit ty</w>\nhei ghts</w>\nre pair</w>\nwilli am\nqu ake</w>\nalab ama</w>\npopul ation</w>\nre v\nre tt</w>\ni sts</w>\nn ite</w>\nle m</w>\na ha</w>\nclevel and</w>\nr m</w>\npo ver\nob se\nmon tre\nman ia</w>\nÂ ®</w>\ncon ne\ncar ni\nsh ah</w>\nf y\nu a</w>\nsc or\nstrugg le</w>\nbo b\n' '</w>\nappro pri\ndeci de</w>\nff ed</w>\nca ster</w>\ns ort</w>\nhun gry</w>\ndra g\nØ§ Ù\ngr ounds</w>\nd w\nsli ghtly</w>\ncar din\ndead line</w>\nbron ze</w>\nweb in\nbar ry</w>\nsil ence</w>\ne uro</w>\nop tion</w>\near n</w>\nðŁĴ ĸ\nhowe ver</w>\nna ren\nna ils</w>\nbath room</w>\nv ine\nph d</w>\nmin ing</w>\ngar age</w>\n( )</w>\nshou lder</w>\ndefe at</w>\ndi r</w>\no v</w>\nliber ty</w>\nple as\nx on</w>\ncom pre\na v</w>\nj in</w>\nab les</w>\nsil ent</w>\nfam ili\nvis its</w>\ndi pl\nha bit\nmilli ons</w>\nregar ding</w>\ninnov ative</w>\nsen ator</w>\nr ts</w>\nv on</w>\nk l\nwh il\nrequi red</w>\nâĿ Ħ\nlu v</w>\npresi dential</w>\npo cket</w>\nhun dre\nsho wn</w>\nfro zen</w>\nto ward</w>\nfa st\nconfi dence</w>\nr ough</w>\nindivi dual</w>\nqu et</w>\nðŁı ½\ndom e\nfi fa</w>\nengine er</w>\nz en\nre mix</w>\nðŁĺ ĥ</w>\npl ant\nmin or</w>\nrobin son</w>\nas y\npul led</w>\ncer tain\npotat o</w>\n( :</w>\npre s</w>\noc ca\nw it</w>\nit em</w>\nsi e\nd ating</w>\nthom pson</w>\nown ed</w>\nan u\nvi e</w>\nte dly</w>\ngood night</w>\nex cept</w>\nðŁĮ Ł</w>\nira q</w>\nki e\nren ces</w>\nli p</w>\nsimil ar</w>\nsau di</w>\nvi g\narth ur</w>\npic ks</w>\nmil an</w>\nhon da</w>\nma xi\no g</w>\nste st</w>\nar ch</w>\nanaly tics</w>\nba sti\npear l</w>\nter ry</w>\nhor se\nast ro\nac ce\nlaun ching</w>\ninter national\ns no\nta sty</w>\nden ver</w>\nir l</w>\npe te</w>\ntor n\nadvant age</w>\nvar sity</w>\n\" \"</w>\nsol e</w>\ng c\nlan g</w>\ndemon str\nol ds</w>\nun ity</w>\nne ts</w>\ninsp ire</w>\ncre te</w>\nnash ville</w>\nnel son</w>\ne ter\nwal k\nhy un</w>\nm ack\ntre as\nsee king</w>\nra ge</w>\nbru sh</w>\nab and\nwhil st</w>\nco con\nh ong</w>\nshel ter</w>\ni p</w>\npossi bly</w>\nso o</w>\nit ed\nâ Ħ\nrac es</w>\nwar ming</w>\nqu in\ntele vision</w>\nmat ches</w>\nra pi\nment al\npal m</w>\njenni fer</w>\nrol ls</w>\nindi ana</w>\nb ars</w>\ncat ching</w>\nresc u\ncandid ates</w>\nfa re\nâł Ģ</w>\nse o</w>\nvie tnam</w>\nalph a</w>\nmichel le</w>\nvisi ble</w>\nre gre\nwn ed</w>\napp le\nli p\nf fe</w>\nli z\nyork shire</w>\nha il</w>\nse asons</w>\nbe gan</w>\nm d\nk c</w>\nla p</w>\nfascin ating</w>\nhel p\nur y\nu ms</w>\nnu ts</w>\nse m\nalong side</w>\nbri dge\nori al</w>\no ve\nworld cup</w>\nbriti sh\ncomfor table</w>\ni ve</w>\nhot els</w>\nfair s</w>\nhor ri\nso x</w>\nd ining</w>\nstre am\nbar ri\nss y</w>\nw im\nter ms</w>\nv u\npe re\nl ens</w>\nwal ked</w>\nr or\nl ars</w>\nshi eld</w>\ndou bt</w>\npro to\ncro ssing</w>\nme ant</w>\nmedi um</w>\nad ding</w>\ne b</w>\nche ap</w>\nfun c\npap er\nbran ds</w>\nry an\nfeed back</w>\ncol lins</w>\nun known</w>\ntro pical</w>\nsand wich</w>\nfal len</w>\nfor mu\nselec t</w>\nlo ads</w>\nansw ers</w>\nor i</w>\nmag a</w>\nd or</w>\ndu o</w>\nali e</w>\ndru m</w>\nur i</w>\nde er</w>\nsou l\nsh ut\nâĺ º</w>\nsto len</w>\ndon ated</w>\nbu zz</w>\npatri ots</w>\nha l</w>\nna sty</w>\nnomin ated</w>\nmon te\nki a</w>\nth ri\ning u\nte sts</w>\npe tro\nðŁĳ ĳ</w>\nho sts</w>\nne st</w>\nto pic</w>\npat ch</w>\nm my</w>\nhu gh\nab ilities</w>\nma the\ns miles</w>\ng b\nag enda</w>\ninsi ghts</w>\nchi p</w>\nph an\nfail ure</w>\ndg ers</w>\nha i\nsignific ant</w>\nsho ck</w>\nru ral</w>\ngl am\nfigu res</w>\npot us</w>\no ta</w>\nmini stry</w>\nappe ars</w>\nfe ar\nr h\nameric an\nh att\nson y</w>\nfi res</w>\ne di\nn ou\ne qui\nwh en\nunivers al</w>\nmad ness</w>\ni x</w>\nsculp ture</w>\nb ach</w>\nt to\nswe den</w>\net a</w>\nen to</w>\ndevelop ed</w>\nmonth ly</w>\nma ps</w>\nra h</w>\nle d\ndel ta</w>\nsa ints</w>\nis lam</w>\nben ch</w>\nfif th</w>\nv ard</w>\nso cks</w>\nwel coming</w>\nj e</w>\ntur ner</w>\nv b</w>\nad i</w>\nnor way</w>\nad y</w>\nhurric ane</w>\npor sche</w>\ntra dition</w>\nex am</w>\nnewsp aper</w>\nlu ci\na ver\nide al</w>\nd na</w>\nmadi son</w>\nðŁ §\nwit ness</w>\nac ou\ninsi ght</w>\nsi mon\nrobo t</w>\nsna ke</w>\nn bc</w>\nac o</w>\nro ss\nsh ment</w>\nreligi on</w>\nch ann\nin su\ncamp bell</w>\ninst alled</w>\nwe ather\nhor ses</w>\nol i</w>\nrober t\nk az\nðŁı Ģ</w>\nveter an</w>\nth read</w>\nquar ter\nea sier</w>\ncap ture</w>\nhi pho\nlaw rence</w>\nroman tic</w>\npas sion\ncl ay</w>\nox ford</w>\nth ai</w>\nstu dying</w>\nfi a</w>\nelec ted</w>\nmost ly</w>\nc b</w>\ntu mb\nâĢįâĻ Ĥ\nx l</w>\nsh an</w>\nfa ster</w>\nev ans</w>\nsli de</w>\nsh ri\nsee k</w>\nmi es</w>\nchemi stry</w>\npump kin</w>\ntu m</w>\n, ,</w>\nro om\nfi red</w>\nli ps</w>\npres ence</w>\naf f\nbrew ery</w>\narri ve</w>\nsw ag\nphoto graph</w>\npen gu\nchi ps</w>\nat tor\nval ues</w>\naccur ate</w>\ncon temporary</w>\nprinci pal</w>\ncannab is</w>\nari o</w>\nany where</w>\ngi a</w>\ndemocr ats</w>\nbuil dings</w>\nli ved</w>\nap s</w>\nneg ative</w>\nm are</w>\nbal lo\nli on\ndiam on\nloo k\nre form</w>\ntom my</w>\nil la\ntre ats</w>\nhundre ds</w>\nport land</w>\nwor thy</w>\nex cep\nar ia</w>\nido l</w>\nbe er\ncd n\ny u</w>\naw k\nðŁĩ ¨\nc ells</w>\nÃ ³\nident ity</w>\ndra wn</w>\nde vil\nf inger</w>\nth am</w>\nðŁĳ Ĭ\near ned</w>\nfin tech</w>\ndol ph\ntwee ting</w>\nevolu tion</w>\nðŁĵ į</w>\nest im\nm vp</w>\nn one</w>\nðŁĩºðŁĩ ¸\ntoyo ta</w>\nau x</w>\nmar in\nb old</w>\nl bs</w>\nste ak</w>\nmur phy</w>\nit able</w>\nlou is\nsol ve</w>\npi a</w>\nsk ir\nill ino\nwebin ar</w>\nban ana</w>\nlo v\nth on</w>\nvo ters</w>\nafford able</w>\ndefe ated</w>\nlm fa\nair lines</w>\nsuper b</w>\nany way</w>\ndeb t</w>\nbo red</w>\nver si\nme tal\nresponsi ble</w>\nm k</w>\ns se</w>\nf ay\ncau sed</w>\nf p</w>\nrecomm end</w>\npla za</w>\nspor ting</w>\nalli ance</w>\nau stri\nn n\nt ours</w>\nsurpri sed</w>\narti f\nth under</w>\nsur ve\nwor e</w>\nbri ef</w>\nnecess ary</w>\nz ie</w>\nash ley</w>\ndra ke</w>\nr t\nkni fe</w>\nim mun\nchar ges</w>\na the\nbri de</w>\nrep ly</w>\ng av\nbroad cast</w>\npu er\nbrace let</w>\ncap acity</w>\nharve st</w>\nid k</w>\nperfor man\nd ding</w>\nil ers</w>\npar a</w>\njam a\npro vince</w>\nch in</w>\nid ers</w>\nhar i</w>\nte aser</w>\nch en</w>\nre stor\nr at</w>\nfl at\ncol om\nðŁĴ ŀ</w>\nðŁĩ¨ ðŁĩ\nsmoo th</w>\nr t</w>\np itch\nstay ing</w>\nisra eli</w>\nt cot</w>\nper spective</w>\ndo ck</w>\nopen er</w>\nlo vel\nx o</w>\nclass room</w>\nl ington</w>\ngo al\nkenne dy</w>\nsh am</w>\nsp aces</w>\nmitch ell</w>\nhome coming</w>\nuk i</w>\nclaim ed</w>\nrecru it\ning o</w>\nmu fc</w>\nmon it\ng roo\nresi dent</w>\nper cent</w>\nper man\notta wa</w>\nint ment</w>\nan xi\nstand ards</w>\nwor ship</w>\nsche me</w>\nf x</w>\npot ter</w>\nbi an</w>\nathle tic</w>\naf gh\ns se\nsat ell\npar ties</w>\nâĿ¤ âĿ¤\ninfra structure</w>\nrela x</w>\nmo du\nwor n</w>\nsmo king</w>\ny ach\npractic es</w>\nwc w</w>\nam b\ndome stic</w>\ntay lor\nk entu\nprovi ded</w>\nmo di\nve g\n\" ...</w>\nob serv\nðŁĺ ©\nbe ard</w>\nm our\nan gry</w>\nðŁĺ ±</w>\nstartu ps</w>\nwoo den</w>\ndi ve</w>\nna il</w>\nanti que</w>\nro ses</w>\ntorn ado</w>\nm at</w>\n^ ^</w>\nsu spect</w>\nfar m\nde vices</w>\nme ga</w>\ntu l\nscholar ship</w>\nge e</w>\ndisa ster</w>\narri val</w>\npo in\nmar c</w>\nkati e</w>\nbb ed</w>\nfal se</w>\ndeser ves</w>\nric hard\nju ana</w>\nfre y</w>\ntion ed</w>\nhy bri\nr w\nsar ah\nach i</w>\nc ure</w>\no le\nmor ris</w>\nch ic</w>\nbroad way</w>\nla bel</w>\npa k</w>\npover ty</w>\ngol f\ne red</w>\nf u</w>\ner ies</w>\nbe es</w>\nalo gue</w>\nst el\nwire less</w>\nje wish</w>\nti de</w>\nblo cked</w>\nlife time</w>\nb har\nsp lit</w>\nam ster\nth i</w>\njo shu\nbr unch</w>\nha ps</w>\ns for\noo ps</w>\nka poor</w>\nhi king</w>\nsuppo sed</w>\nro of\nre as\ntra in\nti ght</w>\ntru mp\nbas ically</w>\nr r</w>\nea red</w>\nsee ds</w>\nentr ance</w>\nc p</w>\nwi e</w>\nson ic</w>\nvic tim</w>\nhe re\ne h</w>\near rings</w>\nsal mon</w>\narc tic</w>\nan ne\ndou gla\ncorru ption</w>\nhann ah</w>\nha sn</w>\nvo ices</w>\ncon ce\natt a</w>\nfle et</w>\nclin ical</w>\ndemocr atic</w>\nton y\nst ood</w>\nle f\ntwit ch</w>\na il</w>\nhonest ly</w>\nincre ased</w>\ndro me</w>\ndon na</w>\naccep ted</w>\nvisit ors</w>\nap ar\nad or</w>\np ar</w>\njer ry</w>\nra i\nbrand on</w>\nab u\n!! !!!!</w>\nme me</w>\nin gh\nglori ous</w>\nb hu\npu mp</w>\nj ol\nli ke\nfi sher</w>\nma z\nag an</w>\ndestin ation</w>\nplay list</w>\nle tters</w>\ngen u\nbr ace</w>\ncelebr ated</w>\nbann er</w>\nr he\ndra gon\nðŁĺ ħ</w>\nsig nature</w>\ngre y\nâľ Ķï¸ı</w>\nal ice</w>\nbe red</w>\nph er\nber n\nca th\nga thering</w>\nsc oring</w>\ninflu ence</w>\nsm iling</w>\nde pt</w>\nlo cal\na x</w>\nac u\nreti rement</w>\nhon or\nher self</w>\nchem ical</w>\nasse ss\ny all</w>\nfre qu\nappreci ation</w>\nac a</w>\ncho ir</w>\ncu z</w>\nso il</w>\nc il\nrepor ting</w>\nu h</w>\nenterpri se</w>\ngr at\njaco b</w>\nru m\nfe e</w>\nj ak\nsp in</w>\nbi kes</w>\nphi a</w>\nste re\np is\nbloo d\nt att\nra ft</w>\nwar ren</w>\nsh eri\nback stage</w>\nmar sh\nhash tag</w>\nther ine</w>\nre in\ngame day</w>\nguar an\nreci pes</w>\nmin ds</w>\nstron ger</w>\nissu ed</w>\nbic y\nn ak\nment ed</w>\nsc ary</w>\nu x\npre vious</w>\ntt le</w>\nth ats</w>\nac tors</w>\nu ma</w>\ntin a</w>\nbun ny</w>\npromo tion</w>\nu ss</w>\noli ver</w>\nmontre al</w>\nwhat s\nappreci ated</w>\nla kes</w>\nexcu se</w>\nkno wing</w>\npri zes</w>\nmusc le</w>\nshad es</w>\nsco t</w>\ning redi\nelectr onic</w>\nju an</w>\ncomb at</w>\ns ri</w>\ne h\nturk ish</w>\nl om\nstri kes</w>\npri son\nre e\npo pe</w>\nvi d</w>\nol dest</w>\ndol l</w>\nsw iss</w>\ncerti fied</w>\ncli p</w>\nre turning</w>\nlat or</w>\nle igh</w>\ntt es</w>\nwat son</w>\nheal ing</w>\nel im\nper haps</w>\nha ss\nk au\nd der</w>\nmou se</w>\nnew castle</w>\nindigen ous</w>\nwel comes</w>\nco le\ntau ght</w>\nno ise</w>\nappe ar</w>\njo e\ncan on</w>\nwedne sday\nu tah</w>\nc tive</w>\ndri ven</w>\ni v</w>\nc ell\nstri p</w>\nac c</w>\nfocu sed</w>\nar rest</w>\nsto cks</w>\nwo o</w>\nâ Ĺ\nnotic ed</w>\nshad o\ndi spla\nter ror</w>\nbor ne</w>\nsecon d\nque ens</w>\nwo ke</w>\nja il</w>\nno tt\ncam bridge</w>\nhar t\nse af\nfa x</w>\nac cept</w>\nâĺ ħ\ngoo ds</w>\nk at</w>\nt win\nh s\nthou sand</w>\ns ins</w>\nsu ite</w>\namp ton</w>\nar n\nrele v\nric har\nhoo ps</w>\nn bc\nclass ic\np ab\nsoldi er</w>\nde plo\nle ans</w>\ninstall ation</w>\ncla sh</w>\nle ban\nee e</w>\nti re</w>\nbelo ved</w>\nfu sion</w>\ntravel ing</w>\nne i\ncoo kie</w>\nglo be</w>\nphys ics</w>\ns q\nco l</w>\nwol ves</w>\nd l</w>\nex it</w>\n\" -</w>\nfoo tball\nle af\nster ling</w>\nhi de</w>\nminne so\nfresh man</w>\nnatu re\nindi e</w>\nsupp lies</w>\nbri s\niri sh\nink tober</w>\ndoo dle</w>\nic op\nmess ages</w>\nadul ts</w>\nrecor ded</w>\nfix ed</w>\nar do</w>\noffe red</w>\nunder ground</w>\ndr one</w>\np ine\nma inten\nand re</w>\nham mer</w>\ns x\nr ound\nhi ke</w>\nbra d</w>\nro me\nfu ll\non ey</w>\nro ws</w>\ncolum bia</w>\narchi ves</w>\nappro ved</w>\nbat ch</w>\nillino is</w>\nrecogn ition</w>\nshou ldn</w>\nfo g</w>\nnca a</w>\nke vin\nhuman ity</w>\nal though</w>\npow ers</w>\np ou\ns ar</w>\npe st</w>\nalco hol</w>\ncon sci\nphil adel\nen o\nt m\nok la\ncate gory</w>\nparticip ate</w>\naccu sed</w>\nbri ef\npo em</w>\nclu bs</w>\nconsul t\nja b</w>\nbig data</w>\namster dam</w>\nac ing</w>\ncerti fic\nn u</w>\nd at</w>\nimpro ved</w>\nand y\ncampa ig\npale stin\np ace</w>\nmo bi\nfeel ings</w>\nwol f\nbra in\npro pos\ninter active</w>\nprin ce\ninde x</w>\nc is\ncha e\npeace ful</w>\nco vering</w>\nac o\ncour ses</w>\nmon key</w>\nre place</w>\nb l</w>\nbloo dy</w>\ntal es</w>\nbrigh ton</w>\nneighbor hood</w>\ng ates</w>\nspiritu al</w>\naf raid</w>\nbre ast</w>\nb ones</w>\nðŁĳ ī\nvide o\nw au\ntou ch\ninju ries</w>\ncar l</w>\nri x</w>\nune x\nâĢ ¢\nfre d\nconsi dered</w>\nthu si\nan ch\non y\nu sa\ngraph ics</w>\nac re</w>\nðŁĺ ©</w>\ncom memor\ncom mod\ngo ti\nguar dian</w>\nstar bucks</w>\npre vention</w>\nhaha haha</w>\nadmini stration</w>\nportu gal</w>\nfac ulty</w>\nbet a</w>\nul a</w>\nal bert</w>\nbre ath\ner i</w>\nle tting</w>\ntr ic\nment ation</w>\nincredi bly</w>\nten nes\nv d</w>\nðŁĻ Ī</w>\ned die</w>\nbr ick</w>\ngr ill</w>\nbt w</w>\nwat ches</w>\nresear chers</w>\nt ney</w>\nni e\np as</w>\na ster</w>\nvi br\npoke mon</w>\nch rome</w>\ngo at</w>\npitt s\nil ly</w>\nfesti ve</w>\ny d</w>\ncan al</w>\nðŁ Ĩ\nfi es</w>\ncar los</w>\nre que\npartic i\ntra ins</w>\nsam ple</w>\ntemper ature</w>\nsym ph\npic king</w>\nin door</w>\nz ers</w>\nplayo ffs</w>\n____ ____\nap es</w>\nly rics</w>\nislam ic</w>\nperforman ces</w>\nd ick</w>\nspar k\nse as</w>\nhom a</w>\ngr ound\ndisc i\nemploye e</w>\ncom mu\nalas ka</w>\nal an\nfe ast</w>\ndg ing</w>\nban king</w>\nmanu el</w>\nslow ly</w>\ntru cks</w>\nmc car\noo o</w>\nsc rat\norche stra</w>\nindivi du\nm x</w>\nbre ath</w>\nstair s</w>\nequ ality</w>\nbla ke</w>\nloc ations</w>\ncocon ut</w>\nbalti more</w>\naa a</w>\nl c\nðŁı Ĩ\nhar vey</w>\nresi st</w>\nimmigr ation</w>\nadid as</w>\nfil i\nre f</w>\nlg bt</w>\nmo s</w>\npp i</w>\nken ny</w>\nterr or\nban e</w>\napol is</w>\ns g\nsocial media</w>\nka i</w>\nhon est</w>\nas sas\nbol lywood</w>\nâĢįâĻ Ģï¸ı</w>\nferr ari</w>\nhor n</w>\ncryp to</w>\nbo om\nmainten ance</w>\ni di\ns man</w>\nw l</w>\next ended</w>\nin sul\nve s\ngo sp\ntr i</w>\npi g</w>\ntar ge\ncel er\nst ati\nsm h</w>\nri dic\nappe al</w>\n? )</w>\ncon clu\ncos me\nshe ep</w>\nchristop her</w>\nen thusi\npo lish</w>\nme ts</w>\noun ded</w>\nsustain ability</w>\ncreati vity</w>\ncon crete</w>\nra i</w>\nali en</w>\nble ss\nte es</w>\nclu b\nro t</w>\nbo s</w>\nex ist</w>\nperfe ction</w>\nlu ck\nrock y</w>\nexpen sive</w>\nmean while</w>\nhappy birthday\npre t\nthr iller</w>\nca ve</w>\nplayo ff</w>\nsom er\nl u</w>\nle x</w>\ndef ence</w>\nam writing</w>\nhome less</w>\npro phe\nch et</w>\npast or</w>\nðŁ¤ £\nland er</w>\nww w</w>\nĢ ï¸ı\ntic a</w>\n! #</w>\no tic</w>\nrad ar</w>\npo sters</w>\npow der</w>\npo li\nha un\ntra p</w>\nbl in\nassau lt</w>\nshor ts</w>\nre y\nsh y</w>\nsqu ir\nrac ist</w>\ngar lic</w>\nfu r</w>\nremo te</w>\nsm ell</w>\nimpre ssed</w>\nfing ers</w>\nâł Ģ\ndin o\nle ment</w>\ns nu\npromo ting</w>\nstr ing</w>\nproduc tive</w>\nb age</w>\nma son</w>\nra z\ndirec tly</w>\nj k</w>\nev al</w>\nðŁĳ Ĭ</w>\ndoc tors</w>\nco w</w>\nri der</w>\nst v</w>\nre move</w>\nw u\nna than</w>\nro d\nn r</w>\n= ></w>\naffe cted</w>\ninve st</w>\nmp tion</w>\ng inger</w>\no d</w>\nagricul ture</w>\ns que\nmu g</w>\ncoun ting</w>\nke e\nmag nific\ncoo k\nani stan</w>\nroo t</w>\nplac ed</w>\nsym po\ngh ana</w>\nun d</w>\nche er\nthro wing</w>\nsecre ts</w>\nf illing</w>\nopti mi\nbutter fly</w>\nbu bb\nðŁĺ ī\nterri ble</w>\nd g</w>\nsil k</w>\nobse ssed</w>\nlo u</w>\nai de</w>\nsal ute</w>\nmon u\nphiladel phia</w>\nscienti fic</w>\ni st\nu ae</w>\ndess ert</w>\nbott les</w>\ncan yon</w>\nðŁĺ Ī</w>\ncar ib\no ther\nw ich\nre source</w>\nguil ty</w>\nun d\nle on</w>\ne ss</w>\nkan e</w>\nel e</w>\ntra iner</w>\nhe im</w>\nan te</w>\nman age</w>\nroo kie</w>\ntre ated</w>\npo ses</w>\nrs vp</w>\ncau ses</w>\naw ak\nje well\nle tt</w>\non ics</w>\ntit les</w>\ncardi ff</w>\ng aga</w>\nbu mp\nuse ful</w>\n? !\nloo se</w>\nbb ing</w>\n: :</w>\nargent ina</w>\nde bu\ncy cl\nwh el\ndis gu\nj el\nk ills</w>\nbio logy</w>\nex ter\ntra sh</w>\nbo dies</w>\ntr am\ncircu it</w>\nexpe ct\nla ds</w>\nw ells</w>\nsho t\nge e\nnaren dr\nfa stest</w>\nb ent\nb ills</w>\nmar shall</w>\nh ats</w>\nintro duce</w>\nciti zen</w>\nim possible</w>\ngi b\naz z\nnet working</w>\nr ant</w>\nthin k\nin dy\nst ops</w>\nf theday</w>\nbri an\n* *\namo di</w>\ndom e</w>\ncoura ge</w>\npac king</w>\naf fairs</w>\ng n</w>\nsi zed</w>\nent ary</w>\npol and</w>\nswit zer\nafgh anistan</w>\nw u</w>\nten der</w>\nsubscri be</w>\nmo sco\natt end\nrepublic an</w>\nhon ey\nâĢ ĭ</w>\nsi mul\nwe ster\nfoo die</w>\nor o\nmidd le\nab t</w>\nco pies</w>\nma je\nnarendr amodi</w>\nty pical</w>\ninspir ational</w>\nvit am\nwis con\ncu bs</w>\ntiv ity</w>\nh ali\ne ars</w>\nk ay</w>\nd are</w>\nmari juana</w>\ncu rious</w>\nan ia</w>\ntom ato</w>\nre mind</w>\nðŁĩ ·</w>\nsc ared</w>\ncou p\npo et</w>\nland ed</w>\nri d</w>\nwra pped</w>\nmor ri\nclimb ing</w>\ne ws</w>\nfe eding</w>\ncon tra\ntho logy</w>\ngri d</w>\nti vely</w>\nread er</w>\nla ser</w>\ndi ving</w>\ndi g</w>\nlat in</w>\nti ed</w>\nshake spe\no ci\nad m\nshow ers</w>\nchu ck</w>\nmar cus</w>\noo s</w>\nkne e</w>\no live</w>\now l</w>\ndy lan</w>\nan no\ng ym\ndeci sions</w>\nwell ness</w>\narri ves</w>\nsati s\nchri s\nthur s</w>\nðŁ¤ £</w>\ninter views</w>\nthank you</w>\nswitzer land</w>\nover night</w>\njourn alist</w>\nser ves</w>\nvol can\n.... ...</w>\nplo t</w>\nnic ol\ncar rying</w>\nmag ne\ntre asure</w>\nex p\nbe ver\nðŁĺ ¢</w>\nmar ty\nmo le\ndon ations</w>\nrecogni zed</w>\nb h\ndu s</w>\nsh ann\nal do</w>\nsuccess fully</w>\nent e</w>\nðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ\ncab inet</w>\ncu is\ntit led</w>\nd as\nso l</w>\nstrate gies</w>\ndeli vering</w>\nad ds</w>\nani an</w>\nne ther\nðŁĴ ĥ\ncon tain\nsu its</w>\npa irs</w>\nto dd</w>\nrel la</w>\nro pe</w>\nci o</w>\ncro p</w>\npaint ings</w>\nsu z\nre jec\nbu st</w>\nd h</w>\nfra ud</w>\nm h\ncontro l\nje al\ndestroy ed</w>\nal lows</w>\nwo ol\nminneso ta</w>\nom en\nj u</w>\nsympo sium</w>\nd af\nlim it</w>\naccoun ts</w>\nload ing</w>\ninter n\nre solution</w>\nhol land</w>\nqu al\nmeet ings</w>\ngra ve</w>\ncam ping</w>\nv am\nre nov\nliber al</w>\nam ber</w>\ngre e\nhu mb\nfe ver</w>\nel ing</w>\nbroo ks</w>\nà ²\nbe th\nad ed</w>\nal t\nro e</w>\nperform ed</w>\njo sh\nfrank lin</w>\nnic ole</w>\nde ss</w>\nbb s</w>\nm g\nnet works</w>\nmin im\nal t</w>\nweap ons</w>\ngu y\njas on\ng ha\nharb our</w>\nat on</w>\npra ise</w>\nkentu cky</w>\nbel fast</w>\nst icks</w>\nblo ss\nho pes</w>\nan thro\nfamili ar</w>\nwa it\nch ile</w>\ndepre ssion</w>\nla x</w>\nje ts</w>\nle ice\nrecei ves</w>\nsi er\nan k</w>\nde x\ninde ed</w>\nfle xi\nfab ric</w>\nlam b</w>\nhel icop\nam anda</w>\nâĢĶ âĢĶ\ncompe te</w>\nsn ack</w>\ntechno logies</w>\nsy rian</w>\nmom s</w>\nmu ham\ncho sen</w>\nan at\ndev on</w>\nshar ks</w>\nre t</w>\nfundra iser</w>\nselfi es</w>\nst ations</w>\ncommunic ations</w>\ntennes see</w>\ntu tor\nro t\nvalu able</w>\ndynam ic</w>\nnur se</w>\ni ed</w>\nearth quake</w>\ndeser ved</w>\na ve\nsar a</w>\nstre tch</w>\ndougla s</w>\nne pal</w>\nÃ §\nob viously</w>\nd ame</w>\nra pe</w>\nany body</w>\nk w\npat rol</w>\nhol ders</w>\nh anna</w>\ninfo graphic</w>\nec o</w>\nbe ating</w>\nstan ley</w>\nbo ats</w>\nri bb\ne z\nwit ch</w>\ninv a\nac id</w>\nboar ding</w>\n- @</w>\ngi l</w>\nda ve\ncare ers</w>\nopp os\nl loy\nin ter</w>\ndo pe</w>\nre su\nj agu\nsh ade</w>\nin dy</w>\non ist</w>\nrel ations</w>\nag en\nab le\ninci dent</w>\nme ter</w>\nshar ma</w>\nid r</w>\npro ve</w>\nimmedi ately</w>\ntro ops</w>\nam an</w>\ng low</w>\ngaz a</w>\nblo cks</w>\nperson al\nchron ic\nall er\nsi d\nsh r\nwhats app</w>\nlu cy</w>\nar chae\nho u</w>\njourn alism</w>\nour selves</w>\ngo t\nthe med</w>\nshap ed</w>\nwe ak</w>\ncas ual</w>\nleng th</w>\nsla m</w>\nab bey</w>\ne v</w>\ncoun ter\nest a</w>\nreci pi\ncha pel</w>\nexpan sion</w>\nsel f\nsuff ering</w>\nsp ice</w>\nn z\nsp art\ndesp er\nboo king</w>\nquart ers</w>\ny on\nðŁĴ Ĺ\np k\ncontinu ed</w>\n- #</w>\nman hatt\ntal ked</w>\nsh en\ncom bo</w>\nhybri d</w>\nje ans</w>\nliqu id</w>\nse al</w>\nre tweets</w>\nac celer\ncollec tive</w>\nt as</w>\n: ))</w>\nprofession als</w>\nra w\no tt\nsu san</w>\nir ing</w>\nokla homa</w>\nre ven\nsurvi val</w>\ncre ator</w>\ntran sit</w>\nst ac\nsur f\ni k</w>\ned iting</w>\nch illing</w>\nbai ley</w>\nste al</w>\nra ble</w>\npa rent</w>\nhun ger</w>\nsn app\ncollec t</w>\nphilos oph\ndedic ation</w>\nc f\nc m\nle ep</w>\nrepe at</w>\nre ha\nun fortun\na er\na ero\nabstr act</w>\nmon itor</w>\nag ents</w>\nbu l</w>\nsci ence\nharb or</w>\ndrag ons</w>\nfloo ding</w>\nac compli\nd ash</w>\njuli a</w>\nthe red</w>\ntues day\ncy ber</w>\nb low</w>\nta ined</w>\nle m\nrefe rence</w>\npp o</w>\nne goti\nchar le\ncon nor</w>\nau lt</w>\naccess ories</w>\ncommissi oner</w>\nrain y</w>\nre ar</w>\nadvis ory</w>\nluc as</w>\nma id</w>\nco al\nk av\npol o</w>\nðŁı ¾\ntran sport\nmar gare\nstraw berry</w>\nbur ns</w>\ngre ens</w>\nne v\npartici pants</w>\ncol in</w>\nbelgi um</w>\ncol our\nin form\nd ell</w>\nbr on</w>\ncal y\nkick off</w>\nstrate gic</w>\nre union</w>\nhon ors</w>\nli b\negy p\nâŃĲ ï¸ı</w>\nhy po\nsi zes</w>\nregi stered</w>\nbet es</w>\nrelax ing</w>\nbloo m</w>\ninten se</w>\nvalent ines</w>\ninsan e</w>\nw wii</w>\np x</w>\ntri o</w>\nbla de</w>\nwiscon sin</w>\ncon e</w>\nplat in\nali ze</w>\nra ven\nincre asing</w>\nindi ans</w>\nil ian</w>\nbl u</w>\nrabb it</w>\nexten sion</w>\nje f\nau di</w>\nfer ry</w>\ns ell\na day</w>\nus b</w>\nswe at\ncham pag\nmetho d</w>\nmem ph\nassi st</w>\ns by</w>\nca pe\nremo ved</w>\nmag n\nv t</w>\nr ams</w>\nf bi</w>\ntack le</w>\nphe w</w>\nh on</w>\nmotor cycle</w>\nsu spec\neleph ant</w>\nsub ject</w>\nlet te</w>\nda iry</w>\nwhe at</w>\nawk ward</w>\nac t\ntro l\nmit ted</w>\nzay n</w>\nsheri ff</w>\nene my</w>\ncon s</w>\nke tt</w>\nbul ls</w>\nev alu\nbt c</w>\nsatell ite</w>\nho lo\npor ter</w>\ndia betes</w>\nbet ter\nrele asing</w>\nsur f</w>\n: -</w>\nse basti\ncollec ting</w>\nen cing</w>\ne thi\ngo ds</w>\nal ley</w>\nhealth y\nm ills</w>\nsma sh</w>\nco pper</w>\ncr ack</w>\nread ers</w>\nsp ac\nlicen se</w>\nbas ket</w>\nbang la\nen tic</w>\nom i</w>\nm ere</w>\nsi vely</w>\nanim ation</w>\nlan es</w>\ndent ally</w>\nchill in</w>\nfi e</w>\nk aren</w>\ndep th</w>\nli pse</w>\nn g\nri p\nmel o\nsand y</w>\nðŁĳı ðŁĳı\nvin cent</w>\nnu t\nhu g</w>\nwho le\ncre ates</w>\n? ???</w>\nâĿ¤ï¸ı âĿ¤ï¸ı</w>\nbak ed</w>\nup grade</w>\nrober ts</w>\nhar a</w>\ncarib bean</w>\nauth entic</w>\nmb s</w>\nmosco w</w>\nattor ney</w>\nwi ki\nch lo\nhu ll</w>\ncor k</w>\n\" !</w>\nsty lish</w>\nðŁĵ¸ :</w>\ndi ary</w>\nimpro ving</w>\nex pand\nbri ght\npollu tion</w>\nk nights</w>\nperson ality</w>\nchec ked</w>\nfac ilities</w>\nz el\nbow ling</w>\ngu er\nðŁİ Ĥ</w>\non going</w>\nun its</w>\nhoo k</w>\nbe ck</w>\nconfl ict</w>\nto dd\nfar ming</w>\neduc ational</w>\nk ak\ncla y\nstro ke</w>\nbel ly</w>\nexplo re\nmill enni\nth m</w>\nloo p</w>\nsm s</w>\nconsi st\ncir ca</w>\nbr yan</w>\nd ab\nyoun ger</w>\nsoli dar\npp a</w>\nexperi enced</w>\nb ella</w>\nbo ard\nshef field</w>\nsteph en\nconsu mer</w>\nsub mit</w>\nspon sor\nt ang\nag gre\ncomb ined</w>\ntrac king</w>\nsand ers</w>\nb az\nsurvi ve</w>\nfer red</w>\nequ al</w>\nse p</w>\nre ed</w>\nstr ong\npriv acy</w>\nst ap\nun g\nac ry\npa sta</w>\npir ates</w>\nag er</w>\nfair y</w>\ndu p</w>\nintroduc ed</w>\nwi p</w>\nlet s\nspr ay</w>\nðŁĵ º</w>\ngre w</w>\na sts</w>\npitts burgh</w>\nnew york</w>\njo ey</w>\nlau ren\ntra de\nch op\npi pe</w>\ncla ire</w>\nbehavi or</w>\nv ap\ncre ws</w>\nlap top</w>\nðŁ¤ Ĺ</w>\nche ster\ndisci pl\nd f</w>\nout doors</w>\nk s\ngo ver\nsuper star</w>\ncas ino</w>\nfar mer</w>\n; -)</w>\nre turned</w>\nðŁı Ī</w>\nma il\nroa sted</w>\nco sta</w>\nv ill\npe z</w>\ngard ening</w>\ndistribu tion</w>\nsh ining</w>\ninve stors</w>\nra sp\ndec ades</w>\nreali zed</w>\nbar n\np ti</w>\nst able</w>\nut d</w>\npan thers</w>\nm ens</w>\nb n\nca de\nbu cket</w>\nyn n</w>\nwhen ever</w>\nwa ke\nda is\nber nie</w>\nlo dge</w>\nju lie</w>\natmo sphere</w>\nðŁĺĺ ðŁĺĺ</w>\nmajor ity</w>\npar ti\nexc it\ncu t\nme h\nmusli ms</w>\nbe gun</w>\nfli ghts</w>\nvene ss</w>\nce me\npo sing</w>\nso le\ng ou\ndark ness</w>\npe ach\ncel tic</w>\nauth ority</w>\ngrand ma</w>\nful ness</w>\nsmi th\nspeci fic</w>\ngar cia</w>\nco ins</w>\ngood ness</w>\naldu b\nrecru iting</w>\nden nis</w>\ngar y\nsle eve</w>\nweap on</w>\npl z</w>\ndisco ver\nharri son</w>\nrecruit ment</w>\nja i\nch im\ncom pared</w>\ntom s</w>\nmo thers</w>\nam y\narchi ve</w>\nt ask</w>\nben jam\nse g\nlaw yer</w>\nal um</w>\ninve sting</w>\nmi e</w>\nche z</w>\nj p</w>\na ke\nfl am\nwall paper</w>\nâĻ¥ ï¸ı</w>\nt ton</w>\nche st</w>\nfavor ites</w>\nwe igh\ncoo lest</w>\nr ating</w>\nrelev ant</w>\nlo gan</w>\nma ple</w>\nrun ners</w>\npri or</w>\npeop le\nma ur\nterrori st</w>\nte sted</w>\ncarni val</w>\nsu spen\nme asure</w>\nm v\ncyber security</w>\napp ren\nterror ism</w>\no z\nv ital</w>\nni es</w>\ngon z\nfun ded</w>\ntwi st</w>\nassess ment</w>\ndie sel</w>\nen for\ncolum n</w>\nad dressing</w>\nca sts</w>\npay ment</w>\nx ton</w>\nfi er</w>\n, '</w>\nla st\nne e</w>\nun less</w>\nclo se\nsk ill</w>\ncuis ine</w>\nfun eral</w>\nti les</w>\na un\nk ru\nrelation ships</w>\nðŁĴ ¯\nev ent\nâĢįâĻĤ ï¸ı</w>\nkind ness</w>\npro posed</w>\nacou stic</w>\na es\ndefen der</w>\ndan ce\nh tt\nw at</w>\nvo y\nðŁ¤ ĺ\nau s\ncli ff</w>\nsear ching</w>\nbeauti fully</w>\nin qu\nat l</w>\nspeci alist</w>\nðŁĲ ¶</w>\nda i</w>\ntra ils</w>\nclass ics</w>\ninst ant</w>\nv ous</w>\nre venue</w>\nmar ch\nkir k\nfr inge</w>\nfire works</w>\ntri via</w>\nâĺ ħ</w>\ntr action</w>\nwal ter</w>\nmo to\nl ily</w>\natt itude</w>\ncli mb</w>\nsc an\nsav ings</w>\nc w\nfa ith\ncred its</w>\nab led</w>\ngra ff\nauto graph\nhe he</w>\nran ch</w>\nha d\nro gers</w>\nðŁĮ ¹</w>\nf in</w>\nre qu\nfol k\nad ditional</w>\nlyn n</w>\nu ber</w>\ndol lars</w>\nlo gic</w>\nwor th\nso m</w>\nthe sis</w>\np ound</w>\nbi c</w>\nst ur\ncer am\nspen cer</w>\nen tered</w>\nv amp\norgani zed</w>\nâľ Ī\npp s</w>\ntr on</w>\nmerce des</w>\nno ti\ncompet itive</w>\ndo w</w>\nous ness</w>\nvic tor</w>\ngr illed</w>\nna i</w>\npu tin</w>\nab ra\nbl ame</w>\nalex and\nanim al\ndec ent</w>\np ent\ninter ior\n:' )</w>\nbut ler</w>\nbal let</w>\nðŁĴ Ķ</w>\nalbu ms</w>\ndown s</w>\nla d</w>\nsi r\npla in</w>\np ers</w>\nblon de</w>\ndis c</w>\npaki stan\nse ment</w>\nga a</w>\nw age</w>\nch as\nman i</w>\nco ps</w>\nterr it\nlo l\nlau ghter</w>\nri vers</w>\nmagnific ent</w>\nlam p</w>\nw b\nnew sle\nchar ts</w>\nble ssing</w>\np unch</w>\nlon gest</w>\nfl oral</w>\ncu tie</w>\nfare well</w>\nsto pping</w>\nmb b</w>\nbu d</w>\nchee se\nde cla\nsi m</w>\nmc donald</w>\nde ter\nyou th\nt ch\nfre der\nkin dle</w>\nfer n\nat or\nas leep</w>\np ond</w>\nspr int</w>\np ounds</w>\nla zy</w>\ngh e\nfundra ising</w>\ndead ly</w>\ngran de</w>\ndou g</w>\nhe y\nlin da</w>\nconsi dering</w>\ni um</w>\ngol den\nvi k\nauth ors</w>\ndi ss\nu ally</w>\nappropri ate</w>\nmor ning\ny le</w>\nhon oring</w>\nfoli o</w>\nbe c</w>\nre bec\nfin land</w>\nformu la</w>\ncorn wall</w>\nsh ay\ncau sing</w>\nbl end</w>\nsig nal</w>\nt ent</w>\nkash mir</w>\nnation als</w>\nhar mony</w>\nsc out</w>\nacce ssi\nhe ight</w>\nmedi eval</w>\nimpro vement</w>\nke es</w>\nprac tical</w>\ncar d\nde par\nhu n</w>\nom ing</w>\ncal gary</w>\nste l</w>\nbu bble</w>\ngur u</w>\nma h</w>\nunex pe\nn h</w>\ned a</w>\nme at\ni ge</w>\nsi o</w>\ngod dess</w>\nin ches</w>\ntun es</w>\nbr itt\nsti on</w>\nra j</w>\nâĻ «</w>\nmer cy</w>\nðŁĴ ĺ</w>\nsen ds</w>\ni est</w>\npol ici\nval e</w>\nreduc ed</w>\nas ap</w>\nvi jay</w>\ndefen sive</w>\ncelebr ations</w>\nri ders</w>\nmed itation</w>\nhar mon\ng ing\nÂ ¡</w>\nprogram ming</w>\nin au\nsud den\nm h</w>\nreplac ement</w>\nsk u\nj ar</w>\ngra des</w>\nta st\nk itt\nbrand ing</w>\nk aw\nboo t\nf ought</w>\np ays</w>\ng f</w>\niz ation</w>\nho p\nk k</w>\nactivi st</w>\nv end\ncoast al</w>\ncha os</w>\nðŁĶ ´</w>\nse me\nbill board</w>\nli fting</w>\ncu mb\nsc al\nðŁĸ ¤</w>\nstru ck</w>\nl v\nindie dev</w>\nbeat en</w>\njun gle</w>\nal right</w>\ndestin y</w>\nm ing\nk c\nch ances</w>\nom an</w>\nq atar</w>\ncra f\ntra ined</w>\npri x</w>\nchar m</w>\no tive</w>\ns mu\ne c</w>\nand ers</w>\nhand ed</w>\nal ban\ncertain ly</w>\narri ving</w>\ni ze</w>\nsa i</w>\ntr ack\npain ter</w>\nhu mble</w>\nappo intment</w>\nhead line</w>\nmanag ing</w>\nmo d</w>\nas pe\nandre a</w>\nÃ ¤\nethi op\nun ited\nexi st\nbal i</w>\nk ad\nn t\nd red</w>\nre x</w>\nrecogni ze</w>\ntam pa</w>\nbe ers</w>\nati a</w>\nhe els</w>\nno te\ntransport ation</w>\ntur tle</w>\nre de\nhipho p</w>\nsp icy</w>\nsp urs</w>\nâ¬ ĩ\ncor p</w>\nther n\nto ast</w>\nhur ry</w>\nproper ties</w>\nma ge</w>\nmar co</w>\nele ments</w>\nbou ti\nsyn drome</w>\nms g</w>\ndevelop er</w>\ngra ders</w>\nhe im\nre sil\noff ices</w>\ndel ay</w>\ndi men\nvin tag\nbarbar a</w>\nðŁĺ ±\nvene zu\ncu lar</w>\nfac ed</w>\nbar n</w>\nðŁĺ Ĩ</w>\nsurvi vor</w>\nwor m</w>\nconfu sed</w>\npassion ate</w>\nØ ±\nidenti fy</w>\nelectr icity</w>\nsou ls</w>\nbrad ley</w>\nrepor tedly</w>\nlun ch\nshel f</w>\neli a</w>\nswee t\nsmoo th\nemplo yment</w>\nam el</w>\nmanhatt an</w>\nste am\noun ts</w>\nye p</w>\nli ving\nun e</w>\ndescri be</w>\nca res</w>\nman ila</w>\nsha wn</w>\nac ted</w>\nbas h</w>\nst even\nre st\npet ition</w>\ndiv ine</w>\nwel sh</w>\nrac e\nplatin um</w>\nðŁĮ ¸</w>\np b</w>\nextra ordinary</w>\nsolidar ity</w>\nm all\non ion</w>\nschedu led</w>\ngame of\nfer gu\nde ms</w>\nnor m\np k</w>\ntri als</w>\npolici es</w>\npubli shing</w>\nst ole</w>\nfron t\ncharac ter\nvan ia</w>\nex ce\nsti e</w>\nsc a</w>\nresi dential</w>\nsa iling</w>\nðŁĶ¥ðŁĶ¥ ðŁĶ¥</w>\nspons ors</w>\nth ick</w>\nchampag ne</w>\nshe pher\ncontinu ing</w>\nven ice</w>\nper th</w>\nna p</w>\na ster\ny ak\nun limited</w>\ncho ices</w>\nne o</w>\nhi v</w>\nrepor ter</w>\nbru ssels</w>\nf old</w>\ndy s\nse mi\nla wn</w>\nit alia</w>\nwi fi</w>\nas k\nem ed</w>\nfr ame\nmonit oring</w>\nste ad</w>\ni da\ngr in\nis a\nfli p</w>\nre stric\noffen sive</w>\natta ched</w>\ndi sh\nwh y\nphilli ps</w>\ngre et\np als</w>\nmix tape</w>\nv ou\nfiel der</w>\nspar k</w>\nalber ta</w>\ng len</w>\nca sh\ns ri\nu ri\nro dri\nentreprene urs</w>\nclimate change</w>\np sy</w>\nd le\nem ents</w>\nlin ked</w>\nnether lands</w>\nacci dentally</w>\noppos ition</w>\nvel vet</w>\nra ys</w>\nc w</w>\nom o</w>\nm f</w>\nlmfa o</w>\nnewsle tter</w>\n: )\ntoi let</w>\nliter ature</w>\ndi sp\nphili p</w>\nuni form</w>\nsudden ly</w>\nhead er</w>\ncool er</w>\n-- -</w>\nprou d\nbri g\nnis san</w>\nscienti st</w>\nj ah</w>\ncon centr\npac ks</w>\nappo inted</w>\nso ap</w>\neng age</w>\ncho se</w>\nâĻ ¡\nse tup</w>\njeal ous</w>\nhar ry\ng ation</w>\ntun nel</w>\nte mp</w>\nosc ars</w>\ndec ade</w>\nrecomm ended</w>\nchild ren\nab a</w>\nanxi ety</w>\nve ments</w>\nsal on</w>\npho too\norgani z\nmach ines</w>\nab s</w>\nvil le\nhy pe</w>\nti ff\nemer ging</w>\nav geek</w>\n[ #</w>\ncontribu tion</w>\nbra dy</w>\nre sto\ng mail</w>\nfit z\nphoto shoot</w>\nhel met</w>\nh t\neleg ant</w>\nug anda</w>\nnur sing</w>\nor leans</w>\npen n</w>\nna h</w>\nfoo tage</w>\nem a</w>\nw o</w>\nw ad\nconcer ns</w>\nve re\nre mark\nwho ever</w>\nstr ang\np t\nqu it</w>\nsh ang\nhistor y\ns ick\nperman ent</w>\nill ness</w>\ncol d\nvisi on\nhe m</w>\nar row</w>\ncon vic\npin k\noc cup\nbal d\nex hau\nu of\nam o</w>\non t</w>\nãĥ »</w>\nadop t</w>\nla id</w>\nsmo ked</w>\ninter pre\ness enti\nassoci ated</w>\nb d</w>\nbb y\nfi er\ninst all</w>\ndipl om\ncon diti\nc f</w>\nw ak\nany a</w>\ngr aci\nfi sher\ns ss</w>\nap r</w>\nil it\nmus ician</w>\nsymph ony</w>\ncor d</w>\nh ack</w>\nle gi\nl v</w>\nbless ings</w>\nhum or</w>\nsc ra\ne ti\nmin ster</w>\ntrav elling</w>\nbu sh\njewell ery</w>\nli me</w>\n!! !\npregn ant</w>\npe e</w>\nlo b\ncap ital\nip a</w>\npen cil</w>\nla bor\nduc ks</w>\nprou dly</w>\nwedd ing\ndere k</w>\nm w</w>\npe g</w>\nvalent ine\nan gu\nre treat</w>\npro spect</w>\ndang er</w>\nvul ner\nup set</w>\n, #</w>\nsr k</w>\nx im\nthur sday\nn fl\nkis ses</w>\nre ds</w>\ncr ack\nre ward</w>\nc u</w>\nko k</w>\nme te\naband oned</w>\nit t</w>\nme als</w>\nsp ell</w>\nstan bul</w>\ndel ays</w>\nru m</w>\nle op\ngu m</w>\nno va</w>\nsuper man</w>\nch ick</w>\nm is</w>\ndram atic</w>\ninno cent</w>\nr ounds</w>\nre c</w>\nauti sm</w>\nbangla desh</w>\nmor al</w>\nmo vie\nsp oo\nk la\nâĥ £\nou ting</w>\nmess i</w>\nab road</w>\nloo kin</w>\na im</w>\nq i</w>\nst ack</w>\ncolla ge</w>\nà ¯\nhud son</w>\nsc an</w>\nho e</w>\nch au\noc cur\ncomm ander</w>\nho les</w>\nðŁİ Ħ</w>\nbi as</w>\nv on\nstick er</w>\nma k\nresponsi bility</w>\ncolum bus</w>\nsa int\ned mon\nrac ism</w>\nfar ms</w>\nw en</w>\ngul f</w>\nmay o</w>\n!!!! !!!!\ncorpor ation</w>\nba chel\nel a\ninter nal</w>\nje ep</w>\nfol lows</w>\ndi alogue</w>\nde rer</w>\nsmart phone</w>\nhe len</w>\nrich mond</w>\nequ ity</w>\ns land</w>\nb g</w>\nne ar\nav i</w>\nmemph is</w>\nwe ir\ndiscu ssed</w>\nbad ge</w>\np up</w>\nmi stake</w>\nphen omen\nun ite</w>\nðŁ Ľ\nde pic\nri des</w>\nin augu\nn at</w>\nsof twitter</w>\ncomb ination</w>\ngosp el</w>\nâļ ¾\nad mission</w>\nretro gaming</w>\nðŁĲ ¾</w>\nsch u\nmb o</w>\njun ction</w>\nal arm</w>\nà ¦\ngr ac\nkh ali\nk ul\nm ale\ncap tion</w>\nwi sh\nte re\ncor ps</w>\nru bber</w>\nplay station</w>\ner in</w>\neffici ent</w>\nl or</w>\njo kes</w>\nin ary</w>\nnor man</w>\nlu is</w>\ninaugu ral</w>\nch ed\nâļ½ ï¸ı\ndi p</w>\nto e</w>\nstr at\naa c</w>\nam u\npi er</w>\nco tt</w>\ncomm and</w>\ntt en\nsn oo\ncu be</w>\nclo ses</w>\nclass ical</w>\ns word</w>\nexpre ssion</w>\nreach ing</w>\nn app\nco st\naffe ct</w>\nric o</w>\ngi f\nbrea the</w>\ntri be</w>\nor tho\nh ay</w>\nl g</w>\nfri es</w>\nn m</w>\nhi ding</w>\nrichar ds</w>\nen de\nmic ro</w>\ncapit ol</w>\ncop y\nro m\nregi me</w>\nmary land</w>\ntax i</w>\ndi al</w>\nembar ra\nun believ\nch t</w>\nv s\nelim in\no dd</w>\npen ny</w>\nsound track</w>\nl ings</w>\ntrans ition</w>\nrema ining</w>\na is</w>\nmali k</w>\n? !?</w>\nrand om\ndef end</w>\nul tra\ntru m</w>\ndanc er</w>\nst ol\ndri ve\na ver</w>\nro ast</w>\ndefin ition</w>\nse an\nexcit ement</w>\npartic ul\nsu rely</w>\nsh av\nber y</w>\ndi shes</w>\ncom m</w>\nis ol\ni am</w>\nob li\ngho st\nhugh es</w>\nchi efs</w>\nb as</w>\nconserv ative</w>\nspeci al\nfe min\nsh ri</w>\nn ancy</w>\ninte l</w>\ntu ne\nðŁĩ ª\njo el</w>\ngg le</w>\nmo to</w>\nðŁĺ Ķ</w>\nbu ck</w>\nd ag\nantic ip\nmont ana</w>\ngu id\nfro g</w>\nec raft</w>\nop e</w>\ndri ves</w>\nnu mer\nx y</w>\ncolor ful</w>\nwednesday wisdom</w>\nillu min\nbey on\ninau gur\ndeep ly</w>\npre fer</w>\nfor tune</w>\ncoo ked</w>\nti ble</w>\nâĺ ķ\nswe ater</w>\nit ter</w>\ntt y\nu i</w>\ngi e\ncom plic\n~ ~\ntax es</w>\ncu ps</w>\ndi verse</w>\nsam anth\nâłĢ âłĢ\nba king</w>\nsy mp\nwa i\nbe half</w>\nmer cur\ntravel s</w>\nðŁİī ðŁİ\nor ia</w>\neng aged</w>\njump ing</w>\nreti red</w>\nn aked</w>\np uni\nspeed way</w>\nsci ences</w>\nrehear sal</w>\non ym\ndy ou\npl ates</w>\nr ati\nkri sh\njaz z\ncar ol</w>\nra f</w>\npen alty</w>\ntim eline</w>\nru by</w>\nengine ers</w>\nra f\nbel le</w>\ndo se</w>\nche on</w>\nesc ap\nme g\nran k</w>\nor d</w>\nme gan</w>\nmer ch</w>\nec lipse</w>\nâĺº ï¸ı\nple dge</w>\nkir k</w>\nper si\nleice ster</w>\nsa k\nw k\nsaf ely</w>\nyy y</w>\nje t\npromis ed</w>\nj c</w>\nen ne</w>\nno ah</w>\nre no\nre a</w>\nðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ</w>\ntra il\nðŁĳ Ģ\nf d</w>\nsoo o</w>\nri min\nw k</w>\nà¸ ²\ni al\nx ox\nbis cu\nd ale\nfan dom</w>\nparticip ating</w>\nfla g\nprivi lege</w>\npe ach</w>\nmach ine\nbo ston\ngro ss</w>\no g\nmir acle</w>\nadop tion</w>\nu ss\nmon sters</w>\nbe ij\nclar ke</w>\npu shing</w>\npra ying</w>\nar o</w>\nd n\nell is</w>\napol lo</w>\nod ds</w>\nrefuge e</w>\nto w\nb p</w>\nðŁĩ¬ðŁĩ §</w>\nh end\napp eared</w>\nmemb ership</w>\npe an\ndu m</w>\nviol ent</w>\nv y\npotat oes</w>\naw w</w>\ngreet ings</w>\nt ts</w>\nac on</w>\nsh ane</w>\nphotograph ed</w>\ncra b</w>\ntemper atures</w>\ncu ba</w>\nc fc</w>\nwel com\nhe l</w>\nin nings</w>\nm k\nco de\nkno ck</w>\ngra ss\nswe dish</w>\np ta</w>\nick y</w>\nv at\nlin ing</w>\ns q</w>\nsa p</w>\nar c</w>\nannoun cing</w>\nsk ins</w>\ncit yof\nbr ing\nco x</w>\ngam er</w>\nit arian</w>\ni da</w>\nh d\nros se</w>\nsad ly</w>\nge o</w>\nâļ ¡ï¸ı</w>\ntag s</w>\nfa ther\nchan ge\nl ance</w>\nwhis key</w>\nadel aide</w>\nte c</w>\nstick ers</w>\nmarke t\nclass y</w>\nbad ass</w>\nflo rence</w>\nlin er</w>\nfro st</w>\nk ate\nac on\nscand al</w>\nes sex</w>\nðŁĺ ı\nvi vi\ndr ill</w>\nblo ggers</w>\nrecomm end\nd ha\nac res</w>\nro ma</w>\nbu y\ngro cer\ner ia</w>\nma har\nff er</w>\npatter ns</w>\nver i\ncom pu\nst ev\nang a</w>\nment or</w>\ndo o</w>\nit ali\ncdn poli</w>\non ly\nconduc t</w>\nelec tro\nde f</w>\nwh ale</w>\nprepar ation</w>\nbicy cle</w>\nvi ral</w>\nturn out</w>\nbra ss</w>\nqu ad\nhospit ality</w>\npack aging</w>\nden cy</w>\nceme tery</w>\nabo ard</w>\ndre aming</w>\npic ture\nt all\ninv ent\nad mi\no e</w>\ntem ps</w>\nqu an\nfun dam\npro mp\nresi dence</w>\nmu d</w>\nsour i</w>\nâĦ ¢</w>\ngraff iti</w>\ngi f</w>\nd nd</w>\ncom p</w>\ns war\npe eps</w>\npale stine</w>\ndevil s</w>\nsan g</w>\nassi stance</w>\nbi ke\nmissi ssi\ninter viewed</w>\nne phew</w>\ndru ms</w>\nv and\ngentle men</w>\nn sw</w>\ninst a</w>\nleban on</w>\nee ee\noli via</w>\nver y\nrou gh\nindustri es</w>\nm ation</w>\nðŁĺ Ĵ</w>\nbar rel</w>\nn ay\npo ps</w>\nmoder n\nill y\nare st</w>\non ents</w>\nprotec ting</w>\nv ans</w>\ne o</w>\nvi kings</w>\nrestaur ants</w>\nre ck\njac kie</w>\nandre w\nw illing</w>\nhe ath</w>\ncitiz en\ndisc rimin\nà¹ Ī</w>\nstu art</w>\nm ys</w>\nhi p\ntran sp\n\" ?</w>\nte x</w>\nsu shi</w>\nke d\ncro ssed</w>\ndist ur\npe dia</w>\nf ate</w>\nsome how</w>\nmo th</w>\nproce ssing</w>\nis s\nr in</w>\nu ts</w>\nyy c</w>\nver t</w>\nlg bt\nre id</w>\non to\narab ia</w>\nhabit at</w>\n= =\nstre ak</w>\nsimp son</w>\naddic tion</w>\nwim ble\ndeli vers</w>\nchalleng ing</w>\nðŁİ ¶\nfran ch\ne du\ns me\nai ds</w>\nhur st</w>\nth am\ntari an</w>\nremem bered</w>\npalestin ian</w>\nfe es</w>\ntru m\nsket ch\nur u</w>\nfit ting</w>\njes se</w>\nðŁĶ¥ ðŁĶ¥</w>\n---- ----\nba ch\nici a</w>\ncolo red</w>\nda h</w>\nassoci ate</w>\nint el\ns eller</w>\np u</w>\nstu ffed</w>\nac s</w>\nb s\nsh in</w>\ncooper ation</w>\ncertific ate</w>\nab u</w>\ningredi ents</w>\nre v</w>\nin ge\nel der\nchristi an\nbun dle</w>\nth ic</w>\ndir t</w>\nbeij ing</w>\ncomm it</w>\nted dy</w>\ned u</w>\nto day\ns field</w>\nw yn\nconfir ms</w>\nlo o</w>\nj v</w>\nene ss</w>\nal pha\nvir us</w>\nari um</w>\ngr ind</w>\nbri dges</w>\nintroduc tion</w>\npol ls</w>\nbac ter\nz ach</w>\ntermin al</w>\nra iders</w>\nfla vor</w>\nzom bie</w>\nvo d\nsp reading</w>\ngameof thrones</w>\neffici ency</w>\nlat ely</w>\nale m</w>\ntwee t\ncri mes</w>\ncl er\nde y</w>\ndg ed</w>\nhy un\npay ments</w>\ncir cus</w>\nðŁĺŃ ðŁĺŃ</w>\nmis souri</w>\nlu b</w>\nepiso des</w>\nc age</w>\npo s</w>\nmat ching</w>\ntumb lr</w>\nlin ed</w>\nge st\nam bi\nnar r\ning ton\nregu l\nblo wn</w>\nis le</w>\nco co\non don</w>\njoshu a</w>\ntour ing</w>\nsm a</w>\nsau sage</w>\nbest friend</w>\nbo eing</w>\ndesi re</w>\nsav age</w>\nra pper</w>\nde vo\nte ar</w>\ntake over</w>\ncow boys</w>\npo ker</w>\npar ag\npp e</w>\nh int</w>\nwe ars</w>\nse th</w>\nro les</w>\nl anc\nman ga</w>\nform at</w>\nfl yer</w>\nc ay\nmo or</w>\nba ke</w>\nspla sh</w>\nv ad\nker ala</w>\nproce eds</w>\nsil ly</w>\nreflec tion</w>\ndi str\nwi d\nsu it\nci vic</w>\nyan kees</w>\nby n</w>\nmigr ation</w>\ndi stin\nor ch\nfe mini\nquali fying</w>\ntu ri\no be\nhun dred</w>\ncra p</w>\nwan g</w>\nmathe mat\nbu re\nexpo sure</w>\nfergu son</w>\nseme ster</w>\nre serv\npl ym\na hu\nfac ial</w>\nwa x</w>\nwor ried</w>\nca b</w>\nvi o\nas a</w>\nco d</w>\nto pics</w>\np cs</w>\nhal o</w>\nrescu ed</w>\nhoriz on</w>\nar k\nâļ ª\nhol ly</w>\nel f</w>\nul ti\npu p\nquali fied</w>\nattend ance</w>\nati vely</w>\ndestro y</w>\ny c</w>\nfor th</w>\nphotoo ftheday</w>\nc ents</w>\nic eland</w>\nmeas ures</w>\nde sk\nport folio</w>\nartic les</w>\ndirec tors</w>\ndat ab\ne w\ncreep y</w>\noun ding</w>\nhon oured</w>\nmi st</w>\nj it\nmen tioned</w>\nport able</w>\niti c</w>\nd ann\nfriday feeling</w>\nam id</w>\nti ger\nscri p\nhelicop ter</w>\nhard ware</w>\nexpl or\nwork place</w>\naustri a</w>\nbeat les</w>\nber nar\nspi der\ndisc o</w>\ncul t</w>\nlim its</w>\nshor tly</w>\nfin al\nnin ja</w>\nlu ke\nle bron</w>\nwal mart</w>\no il\nvan illa</w>\nshi re\nye g</w>\nak y</w>\nc s\nbl er</w>\ncollec ted</w>\nt g</w>\nrol led</w>\nspeci als</w>\nb ff</w>\npier re</w>\nsh im\nvi er</w>\nflash back</w>\nrestor ation</w>\nindividu als</w>\npro d</w>\nfre aking</w>\ntu rer</w>\no a</w>\nre fre\nmor oc\ngre et</w>\nre yn\ncare ful</w>\nour ing</w>\nu sh\nis d</w>\ng ill</w>\nvie w\nthunder storm</w>\nb led</w>\npic nic</w>\nguar di\npi g\nar k</w>\nsyl vania</w>\nbann ed</w>\nu cl\nvi jay\nori um</w>\nav engers</w>\nbeliev es</w>\neu r</w>\nmonu ment</w>\nconcer ned</w>\nla bs</w>\nber g\na ap\nvi sh\nsing les</w>\ncan cel\nz el</w>\nar ab</w>\nru th</w>\ntoo th</w>\nar ta</w>\nsh af\nchair s</w>\nr ack</w>\ndise ases</w>\ncrow d\ncl y\nfle x</w>\nchrist ma\nartif icial</w>\ntom at\nfin e\ndra ws</w>\nadvoc ate</w>\nfran ce\nÙ Ĭ\nðŁĺ ³\nheav y\ns our</w>\ncompre hen\nno ble</w>\naa p</w>\nhin du</w>\ncor al</w>\ng ars</w>\now en</w>\nn l\nst all</w>\nyel low\nmar ina</w>\nin ver\nsuppor t\ntou gh\npromis es</w>\npi e\nmaster piece</w>\nsco re\nfor ce\nmor tg\ncrypto currency</w>\no x</w>\nr ors</w>\nrock in</w>\npro vin\nho g\nno stal\noak land</w>\npat rick\ninclu sion</w>\ntra ffic\nah med</w>\na ha\nlux ury\ncon secu\nde mon</w>\nâĸ º</w>\nb lowing</w>\nst ag\n: \"</w>\nencoura ge</w>\nben e\nsku ll</w>\ndo dge</w>\nbu ster</w>\nkin son</w>\nwit ne\ner ror</w>\nlo west</w>\nfel low\nà °\nsh re\nbl ur\nvir gin</w>\ncompos er</w>\nsli p</w>\nmor nings</w>\nga ins</w>\ntab le\ngra in</w>\nari st</w>\nbraz ilian</w>\nw we\ntu es</w>\nribb on</w>\nan ag\ndi st</w>\nsac rif\nem brace</w>\nentreprene ur\naf fili\nde o</w>\nt ali\ntouri st</w>\nfat al</w>\nì Ĭ\nautom atic</w>\nðŁĩ µ\nwe ak\nwel fare</w>\nconfir m</w>\nbenjam in</w>\nfi ghts</w>\nalleg ed</w>\nme ad\nstrugg ling</w>\npro secu\nche f\nÃ ¨\npropos al</w>\ner n</w>\nðŁĺ Ħ\ndy k</w>\non gs</w>\nhon g\nm ack</w>\nmel on</w>\non ent</w>\nru sh\nd ap\ntol er\npro pag\nc ze\ntrans lation</w>\nwal let</w>\ncott age</w>\nsa il</w>\nconstitu tion</w>\nðŁĴ Ģ</w>\nmun ici\nfav or</w>\nstorm hour</w>\ni h\nðŁĺ Į</w>\napproach ing</w>\npin ned</w>\nj ed\nniger ian</w>\nn ach\nsh at\nparticul arly</w>\nmc don\ncamer as</w>\nanni e</w>\nadmini str\nhe at\nelectr ical</w>\nchar ming</w>\ngib son</w>\nbouti que</w>\nex posed</w>\nac tor\npil low</w>\nbeach es</w>\ngenu ine</w>\nmargare t</w>\nben nett</w>\nlou isi\npos itions</w>\nel y\nshin y</w>\nten tion</w>\narchitec t</w>\nren tal</w>\nac qui\ngoo gle\nsub way</w>\nmom ent\nðŁļ ¨\nri m</w>\nmetho ds</w>\ncy cli\nnor folk</w>\nÙ Ī\nover whel\nra pid</w>\nwe ar\nhappy birthday</w>\nprogre ssive</w>\nðŁĴ ¥\nco gn\npap a</w>\nf ool</w>\nphilosoph y</w>\npol ar</w>\njim my\nwi g</w>\nðŁĴ ĭ\noper ating</w>\nreduc tion</w>\nph i</w>\nfla gs</w>\nto the\no di\na res</w>\nk oo\nk ang\nar kansas</w>\nash ton</w>\nwimble don</w>\nsci fi</w>\nattrac tive</w>\nmississi ppi</w>\nlogi sts</w>\nral ph</w>\nla bel\ngradu ates</w>\nma ha\nhome town</w>\nâľĮ ï¸ı</w>\nfoun ded</w>\non the\nli z</w>\ntrans l\nmini mum</w>\npre sti\nta m</w>\ngener ations</w>\nre bel</w>\njourn alists</w>\npar am\nmc m</w>\nacry lic</w>\ndeath s</w>\ntes la</w>\nw t</w>\nbry ant</w>\njer us\ni stanbul</w>\nmuham mad</w>\nri ley</w>\nk ris</w>\nwork shops</w>\nis o</w>\ncoun ts</w>\nstre t\nprote cted</w>\ntrin ity</w>\nman ual</w>\nr hin\nr il\npleas ant</w>\nle mon\nner d</w>\nhar der</w>\ndar ren</w>\nbur y\nra h\nbas is</w>\nmi gu\nocca sion</w>\nli sts</w>\nâĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ı</w>\ne b\nde cre\nhamp ton</w>\nìĿ ´\ntra vis</w>\ntrans form</w>\npuer to</w>\nnh l\nav oc\ntri ps</w>\nunexpe cted</w>\nve t\ndi dyou\nbar ber</w>\nst ages</w>\nm son</w>\nre presented</w>\nfor t\nl al\npp le</w>\nnic ely</w>\nignor e</w>\nqu il\nqu inn</w>\nh k</w>\ncarri er</w>\nremin ded</w>\nam ong\npass enger</w>\nel len</w>\ngue z</w>\nsc ape</w>\nmu ral</w>\nyoun gest</w>\nma sh\nd ill\nrout ine</w>\nstain less</w>\njack son\ngand hi</w>\nth al</w>\non ers</w>\nedit orial</w>\nconvers ations</w>\nsd ale</w>\nautom ation</w>\ni ke\nà¸² à¸\nðŁĩ ª</w>\nhau l</w>\nla ying</w>\nmen tions</w>\nam en</w>\nabor tion</w>\ni bi\ncoun ties</w>\nca therine</w>\nman ds</w>\njam e\nroll er</w>\nau t</w>\nn am</w>\no logical</w>\ncep tion</w>\nran king</w>\ntox ic</w>\nsn acks</w>\nvictor ian</w>\nbang kok</w>\npsycho logy</w>\nre g</w>\nang ela</w>\nrespon d</w>\nsty le\nsophi e</w>\ndak ota</w>\nachiev ed</w>\nmar ked</w>\nimper ial</w>\nin as</w>\nglo ves</w>\nsli m</w>\nconfi dent</w>\natt acked</w>\ngg er\nlon ely</w>\nvalentine sday</w>\nre b\ncraft beer</w>\norig in</w>\nzim bab\nce iling</w>\nte ens</w>\nother wise</w>\nw b</w>\nf ers</w>\nday sof\nadvis or</w>\ny ah</w>\nâĻ ª</w>\nen der</w>\nrepublic ans</w>\nav a</w>\nskir t</w>\npi pel\nchi e</w>\njan e\nja x</w>\nðŁĺ ĭ\nâľ Ĭ\nj ays</w>\nbre tt</w>\nbal o\ncru cial</w>\nd har\nas is</w>\nde au</w>\nlloy d</w>\nchat ting</w>\nâĿĦ ï¸ı</w>\nrel ay</w>\nremark able</w>\nn s\nwe t\nbris bane</w>\nðŁĶ ´\ntion ally</w>\nf k</w>\nla yer</w>\nhouse hold</w>\nconsecu tive</w>\nes is</w>\npend ant</w>\nst ir\ncrit ic\nsu gar\nphoto shop</w>\npa res</w>\narti stic</w>\ndo dgers</w>\nc un\ncra fted</w>\nam end\nbo at\nâŃĲ ï¸ı\negyp tian</w>\nsa w\ntra ge\nsmall er</w>\nox y\npa ired</w>\nnex t\ni res</w>\ntac o</w>\no y</w>\nu c</w>\nst i</w>\na erial</w>\n: //</w>\ndr o</w>\ndot com</w>\ngg ins</w>\nr pg</w>\nay e</w>\nle an\nstri ker</w>\nlo bby</w>\nprote sts</w>\npri ority</w>\ncongre ss\nam ate\ninv it\nr ington</w>\nmom my</w>\nth us</w>\nallow ing</w>\npione er</w>\nenfor cement</w>\ng ori\ntal k\ndra g</w>\ndu mb</w>\nbul let</w>\nsan ge\ner y\ntar gets</w>\nðŁĩ ¦\nhe ather</w>\nconsi der\nseaf ood</w>\nve st</w>\nris ks</w>\n% .</w>\np g\nsac red</w>\nhe ating</w>\nkick ed</w>\ntto t</w>\n. -</w>\nchan di\nco ven\npo ol\npul se</w>\ni a\nro ster</w>\nshakespe are</w>\nes a</w>\ncar go</w>\npean ut</w>\ntro op\nac tion\ntab let</w>\nhome work</w>\ncast le\nstru ction</w>\nmus icians</w>\nfree zing</w>\nbu tt\njustin bieber</w>\nj j\nbah rain</w>\nan them</w>\nau dit\ndidyou know</w>\nna vig\nguid ance</w>\nâĸ ¶\ntur f</w>\nn un\nfic ations</w>\nye men</w>\nchar ging</w>\nx c</w>\nbron cos</w>\nsu bur\np ale</w>\nbor ing</w>\namong st</w>\nfor the\nem per\nom fg</w>\np j\nexpe cting</w>\nðŁĴ «</w>\nst l</w>\nad min</w>\nexpect ations</w>\nsw an</w>\nshoo t\noooo o</w>\nmin ent</w>\nãĢ Ĳ</w>\nwall ace</w>\nstan g</w>\nsatur day\nadop ted</w>\ndou bles</w>\nhom ie</w>\nome z</w>\nd han\nvent ure</w>\nsurroun ding</w>\nfi le\nmob ility</w>\nde es</w>\nw ski</w>\nbroo ke</w>\nemb ro\nre members</w>\nkar a</w>\ntest im\nbo tan\nm tv</w>\nsacrif ice</w>\njerus alem</w>\nd l\nÂ ´</w>\nproper ly</w>\nili on</w>\nas i</w>\nleg it</w>\nco pe</w>\nm cla\nrecy cling</w>\nlar ger</w>\nðŁĴ ĵ</w>\npat ric\ngener ous</w>\nja red</w>\np f</w>\nmol ly</w>\nthom as\nju dges</w>\nh b</w>\nsor ts</w>\nbl vd</w>\no ven</w>\nenter ing</w>\nplan es</w>\nbe et\nintegr ation</w>\nboo ked</w>\nfre ed\nver n</w>\nash es</w>\nto pped</w>\nde pot</w>\nwelcom ed</w>\nren a</w>\nm ick</w>\nd and\nsee ks</w>\ngam er\nran kings</w>\nren e</w>\nmu t\nwhis ky</w>\nfire fighters</w>\ngu es</w>\nga ther</w>\ntour ney</w>\nde men\ny ang</w>\nnew ton</w>\nautom otive</w>\nback yard</w>\ndeta iled</w>\nmi st\nto bac\nfi ber</w>\nun usual</w>\ngrat itude</w>\nsp are</w>\nne ys</w>\n: *</w>\nper i\nflo ating</w>\nfin alist</w>\ndon ating</w>\ndre ss\nbro ad</w>\nbe the\neconom ics</w>\ntai wan</w>\ned wards</w>\nplu g</w>\npra iri\nval en\nbab a</w>\nf ad\nan as</w>\nhar per</w>\ndis order</w>\napp lied</w>\np att\nbi kin\nli ver</w>\ncu ri\ncarol ine</w>\nann er</w>\njuli an</w>\nwal king\nmal col\nscreen shot</w>\nco ding</w>\nskin care</w>\nactivi sts</w>\nmyster ious</w>\nex act</w>\nblo cking</w>\nmercur y</w>\nbat ter\ndu mp\nâľ Į</w>\nen se\nli sh\nridic ulous</w>\nprote sters</w>\nðŁĻ Ī\nlu st</w>\nswe at</w>\nas s\nali ke</w>\nco dy</w>\nre ments</w>\nwin ds\nas pir\nvi enna</w>\npra y\n.. .@</w>\nbo i</w>\ncand le</w>\nassi sts</w>\nte e\nder son</w>\np ony</w>\nf ence</w>\ncon spir\nâĺħ âĺħ\noo th</w>\ne pic\nba rely</w>\na unt</w>\nb am</w>\ndiamon ds</w>\nend less</w>\nscre ens</w>\ncan cer\ngr o</w>\np st</w>\npro spec\nmo sque</w>\nhelp ful</w>\nou ri\nbro ther\ngu jar\ncri sti\nine z</w>\nto wers</w>\nad dresses</w>\ngra y\nbur ton</w>\nre tweeted</w>\nðŁ¤ Ķ\nn ity</w>\ndu ck\nsuper vis\njo an</w>\nkin der\nsanc tu\npi ed</w>\nâı °</w>\nł ï¸ı</w>\nm ati\nreven ge</w>\nce ster</w>\neli fe</w>\ndesig ners</w>\nback ed</w>\nbo li\nwei ght\ncou ch</w>\nsu res</w>\ns its</w>\nshri mp</w>\nla gos</w>\nauth orities</w>\nos ity</w>\nhol ly\ncompu ting</w>\nfac tors</w>\nab e</w>\npan els</w>\nram ad\nsent ence</w>\nmissi on\nhol m</w>\nr b\nd ads</w>\nshang hai</w>\nmon ey\nshe ets</w>\nsk ate</w>\nthre w</w>\ncup cakes</w>\ninfin ite</w>\nl is</w>\npractic ing</w>\ness ay</w>\nka i\nas ci\nmo b</w>\nu gh</w>\nhol mes</w>\nre gg\nik h</w>\nmo ck</w>\ncollec tions</w>\npe p\no va</w>\nsal t\nnan dez</w>\nco y\nthre ats</w>\ntex ts</w>\ncin nam\npregn ancy</w>\npen ding</w>\nstam p</w>\nflow er\ng is</w>\nagre ed</w>\npay ne</w>\nro ver</w>\nph ra\nsof t\nf fin\nfa thers</w>\npass engers</w>\naw ays</w>\nal a\nh es</w>\nli van</w>\nin s\nsamu el</w>\ningu i\nh of</w>\nj j</w>\nchen nai</w>\ncat al\nom ic</w>\nhe ath\nni ece</w>\npump ed</w>\nintegr ated</w>\nare l</w>\nno m</w>\nproduc tivity</w>\nwan ting</w>\nvis a</w>\ndi ana</w>\ntw il\nit v</w>\ncam ps</w>\nro wing</w>\nd ley</w>\nblack and\ngu ards</w>\nb ells</w>\nre verse</w>\nvi be</w>\nric ky</w>\nmo ss</w>\nny t</w>\nâĺ Ģï¸ı\nel le\ntro y</w>\ncu dd\nev an\nwomen s\nfo to</w>\nmi stakes</w>\nwick ed</w>\nmi l</w>\nc led</w>\nme mes</w>\nco smo\nschol ar</w>\nren o</w>\nðŁĺ Ģ\nv ents</w>\n# âĢ¦</w>\nterrori sts</w>\nca sey</w>\ncardin als</w>\nðŁĺĬ ðŁĺĬ\nvenezu ela</w>\nbol a</w>\nliter acy</w>\nt w</w>\nen o</w>\ncon tains</w>\nau stin\nfin anci\nev an</w>\nhar vard</w>\norigin ally</w>\nchev ro\nher ald</w>\nnott ingham</w>\nmanag ers</w>\nâŀ ¡</w>\naccep ting</w>\nwal sh</w>\ntutor ial</w>\nentrepreneur ship</w>\nyach t</w>\nrequi rements</w>\nglen n</w>\npe de\nunfortun ately</w>\nach ing</w>\ndais y</w>\ngi an</w>\nnight mare</w>\nâĿ Ĺ\nr ina</w>\nb art</w>\nema ils</w>\noppo site</w>\nwho m</w>\nsa ke</w>\npu zzle</w>\nda shi\npar ty\nblan ket</w>\nbus es</w>\nlo re\nbeau ty\nreas on\npun jab</w>\nwinds or</w>\nfunc tional</w>\nexi sting</w>\nhel lo\ngli mp\ncon vin\nla k\nscre aming</w>\nrebec ca</w>\nbli ss</w>\nnorth west</w>\ninfin ity</w>\ncosme tics</w>\npul ling</w>\ncoffe e\npl ing</w>\nop ho\ncolom bia</w>\ninterior design</w>\n( +</w>\nemo tions</w>\nsa c</w>\nsun glasses</w>\nsav es</w>\nd f\nsix th</w>\nal y</w>\nðŁĺ »</w>\nde en</w>\ndev ast\npolit icians</w>\nlac rosse</w>\ng u</w>\npe i</w>\njav a</w>\ncomb ine</w>\ncoal ition</w>\ner ts</w>\nsurvi v\nch ad</w>\nstri an</w>\nn n</w>\nde vi\ncoun c\nconcer n</w>\ncontro ller</w>\nbre ast\nj ury</w>\ntu m\nintroduc es</w>\nla di\nmobi le\nal z\nste ady</w>\nnur ses</w>\nh acking</w>\non line\noce an\nðŁİ Ħ\na am\nju ven\nic c</w>\nlouisi ana</w>\nar te</w>\nstreet art</w>\nis on\nwn s</w>\nfr m</w>\np anda</w>\nno ir</w>\nmain tain</w>\ndel ay\nsymp toms</w>\nthor n\nge ome\nter n</w>\ncarri ed</w>\np ru\npan or\nas sy</w>\nper u</w>\nclou d\nsp ra\npe di\ne ste\ntag ged</w>\nðŁĺ Ŀ</w>\nshado ws</w>\nnaz i</w>\nØ§Ù Ħ\ncor ri\nâĻ¥ âĻ¥\nj ad\nðŁĩ «\nform al</w>\nspo ken</w>\nðŁĮ ŀ</w>\nenjo y\nlo pez</w>\nout look</w>\nin ho</w>\nw ander\nÙ ħ\nma ya</w>\npe e\nd ine</w>\nãĢ ĳ</w>\nbrief ing</w>\nsuppor ter</w>\nar ily</w>\nght ers</w>\nnatur ally</w>\ndoctor who</w>\nj en</w>\nv ar</w>\nnew year</w>\nre se\nsi mm\nre x\ncon sequ\ntomat oes</w>\nbur st</w>\nbra vo</w>\nbur gers</w>\ncr acking</w>\nnor theast</w>\nbi om\nmush room</w>\nmar que\ndou ble\nni er</w>\nv ag\ntw enty</w>\nkey board</w>\nwin ni\njama ica</w>\npar ish</w>\n: -\nmental health</w>\nali zing</w>\nren der</w>\nwa king</w>\nðŁİ Ĥ\ng ly\nna than\nwa shing</w>\nmel issa</w>\njun g</w>\nloy al</w>\nchil i</w>\nsong writer</w>\nguit arist</w>\nbo wie</w>\nneighb ors</w>\nonym ous</w>\nas set</w>\nta i</w>\nhead quarters</w>\nðŁĮ Ī</w>\ni hear\nci gare\nsur g\n) \"</w>\nre pl\ndar ling</w>\nðŁĻ Ħ</w>\nz ak\nsa re\nãħ ĭ\nmic key</w>\nware house</w>\nmass age</w>\nine es</w>\ndid nt</w>\ni w\nhur ts</w>\neng aging</w>\nmag ic\nwomen in\nk itten</w>\nmor s</w>\nc art</w>\ntit ans</w>\ncolle ague</w>\ncompe ting</w>\ner an</w>\nk hal\nmar ble</w>\ndem and\ndel ight</w>\net ary</w>\nbli zz\nlou ise</w>\nm ls</w>\nfini shes</w>\nexperim ent</w>\nconduc ted</w>\nelectr onics</w>\nitt ers</w>\ncar ing</w>\nwh ats</w>\nsym bol</w>\njun g\ne cu\npi x</w>\ncon text</w>\nchar ger</w>\nðŁĺ ĩ</w>\nre ig\nfra g\në ĭ\nch ad\ntru e\nker ry</w>\ndef ending</w>\na int</w>\nau ton\ncheck out</w>\nbar nes</w>\nless ly</w>\nd t\nm me</w>\nclou dy</w>\nsecond ary</w>\nare z</w>\n_ :</w>\napp a</w>\nconst ant</w>\n\" )</w>\nve ts</w>\njo b\ni ent</w>\nðŁĺŃðŁĺŃ ðŁĺŃ</w>\nm j\nfren ch\ndi ver\ndavi es</w>\nhh hh</w>\ne book</w>\nà¹ ī</w>\nmar iti\nbree ze</w>\nsusp ended</w>\nmat o\nvi et</w>\nra hu\nse i\nbol t</w>\nen ary</w>\nle is\nkar l</w>\nfr amed</w>\nexpla ining</w>\nab c\nde aling</w>\nnat o</w>\nja ke\nexp and</w>\nleon ard</w>\nestabli shed</w>\ndu b</w>\nar men\nel led</w>\nvoc al</w>\nnichol as</w>\nori ent\nk yo\nillustr ated</w>\nah h</w>\ndanc ers</w>\nmilli on\nge ta\npo pp\nas u\nmur dered</w>\ngi ble</w>\nsto ked</w>\ngri ffin</w>\nmaxi mum</w>\nadri an</w>\nen counter</w>\nther o\ndavid son</w>\nðŁį »</w>\nholi day\nev o</w>\nasse ts</w>\ncar son</w>\nmemor able</w>\nâļ ½</w>\nob am\nrepresent ative</w>\ncb d</w>\ntr icks</w>\nvo gue</w>\nvo ice\nmm mm</w>\nsebasti an</w>\ncli f\nath y</w>\npar alle\nðŁ¤ ·\npa k\nev acu\ne ats</w>\nØ§ Ø\ntou ched</w>\norgan ised</w>\nspir its</w>\ncan ad\ngui ded</w>\nframe work</w>\nðŁĮ Ł\npe d\nnatur al\nag ar\nreplac ed</w>\nanch or</w>\nti t</w>\nsha h\norgan is\nsuper ior</w>\nr n\nch ro\neric a</w>\nst ill\ncor on\nchu ck\nloc ks</w>\nor gan</w>\nro sen\nsc am</w>\nben ed\n/ #</w>\nke en</w>\ntre vor</w>\nvamp ire</w>\nsor ted</w>\n! '</w>\naf ford</w>\nin tro</w>\ngr ace\nðŁĺ ľ\nsau r</w>\nkick starter</w>\ninflu en\nv u</w>\ny up</w>\npo c\nðŁİ ¥</w>\na ar</w>\ns ang\ntre k\net sy\ntb h</w>\nscre am</w>\nchevro let</w>\npix el</w>\nshepher d</w>\nan or\ngabri el</w>\ntw ood</w>\nsd cc</w>\nme ters</w>\ndevelop ers</w>\nclo sure</w>\nv w</w>\ntwit ch\nì Ĺ\nse oul</w>\npr ice\nho g</w>\nn ish</w>\nhill ary\nscrat ch</w>\nin cen\nwag on</w>\ndis ability</w>\npan ther</w>\nch ats</w>\ng d\nwit z</w>\nsus sex</w>\nl ate\nden mark</w>\nger ald</w>\ncancel led</w>\nnet te</w>\ni x\nnav al</w>\nbap tist</w>\nte t</w>\ny ad\nma th\nho y</w>\nr andy</w>\npo int\nintel lec\nfru its</w>\nw ool</w>\ngu in\npr on\nthe ft</w>\ncon dem\nmar ry</w>\nn ola</w>\narchitec ts</w>\ncin cin\nroc kets</w>\ngentle man</w>\nex plan\nt ate</w>\ndo e</w>\nra ises</w>\nwild life\nw l\ninsi der</w>\nblan c</w>\nw p</w>\nfor sale</w>\nny c\npo well</w>\nunbeliev able</w>\npen s\ngoo dies</w>\nmu stang</w>\np ens</w>\nst ays</w>\nsqu ash</w>\nxox o</w>\nnear by</w>\never ton</w>\nco co</w>\nle agu\nk han\nstu d</w>\nsouth west</w>\ncon struc\ns worth</w>\ncro atia</w>\nle a</w>\nsu ms</w>\naim s</w>\ne an</w>\nvan ess\niti ous</w>\npa thy</w>\narc ade</w>\nb end</w>\nsugge sts</w>\nsac ram\nroy als</w>\nri er</w>\nem ir\nin cl</w>\nan k\nclar k\nri ght\nvac c\nà¤ ¾</w>\ntan e\nli b</w>\nu sc\nsal es\nhu h</w>\ns ally</w>\nver a</w>\np ga</w>\ngro ws</w>\ndru m\ntre e\neth ics</w>\nsug gest</w>\nis ab\nse aled</w>\npre viously</w>\nanim ated</w>\nab du\nri ses</w>\nglo b\npre dat\nscar f</w>\ndel ic\nom ar</w>\nll i</w>\nsx sw</w>\npy thon</w>\nne bra\nfun k</w>\nreflec t</w>\npav ilion</w>\ntic ally</w>\nch asing</w>\nbak ery</w>\ninva sion</w>\nko h\nbeliev ed</w>\nco hen</w>\ncon qu\ncra fts</w>\nnat i</w>\ncle ver</w>\ngovern ance</w>\nsam ples</w>\nfa ils</w>\nâ Ķ\nti mo\nr itu\nstri king</w>\ninclu sive</w>\nsho cking</w>\ncan t\nrequi res</w>\ndra wings</w>\nà¸ Ń\npurch ased</w>\ndu m\nz ach\nwar ner</w>\ncon sole</w>\nman sion</w>\nfoun tain</w>\ncircu m\ne sh</w>\nis land\nmil k\npro fits</w>\nhali fax</w>\nri val\nâľĪ ï¸ı</w>\njen ny</w>\nsand ra</w>\nny e</w>\nk elly\ny al</w>\nqu ad</w>\nno s</w>\ninste in</w>\nfin alists</w>\nmid fielder</w>\ncu e</w>\nexcep tional</w>\na an</w>\nsa pp\ngett in</w>\nsa a</w>\nf ati\nsl ice</w>\nvol k\ns wal\nla sting</w>\nsum mary</w>\nit as</w>\nsm o</w>\ns z\nâĺ Ĩ</w>\nip l</w>\nfl ames</w>\nene ws</w>\nha v\nhoo die</w>\npitch er</w>\nwin dy</w>\nre vol\ncentr al\nton ite</w>\nðŁİī ðŁİī</w>\nsol ved</w>\nmil wau\norganiz ations</w>\nwee ts</w>\nre fin\ns th\nãĥ ¼\nel in</w>\nton a</w>\ncinnam on</w>\nðŁİ ¨</w>\nðŁİ ģ</w>\nron aldo</w>\npen insu\nome ga</w>\nel ds</w>\ndesig ning</w>\ne igh\nblu et\nben z</w>\nnu g\nash a</w>\nrobo ts</w>\nsu dan</w>\nchoo sing</w>\nen do\nser ge\nclo sely</w>\nhand y</w>\nfing er\nbe ing\nar te\nsurvi ved</w>\nfl ame</w>\nmile stone</w>\ngu t</w>\nd war\nfu tures</w>\nÃ© e</w>\nel o</w>\nfri dge</w>\neli c</w>\nou ch</w>\nu b</w>\np v</w>\ntit an\ncol lar</w>\nst ation\nnev ada</w>\naur ora</w>\nr d\ndun can</w>\nâģ ł</w>\nbri en</w>\nmar sh</w>\nÐ ¾\nto tal\nch ry\ns ers</w>\nsu ffe\nra chel\ncolle ge\nto days</w>\ncour ts</w>\nch it\nre united</w>\ngym na\ngen esis</w>\nbe side</w>\nre presentation</w>\nch ant</w>\ncollec tor</w>\nra k\nath ens</w>\nni gh\nmun ich</w>\nlangu ages</w>\nfl u</w>\nparticip ation</w>\n__ _</w>\nc v\nspec trum</w>\nso da</w>\nco ver\nrefe ren\nab bo\nap a</w>\npublic ation</w>\ned m</w>\nmon ica</w>\nar my\nðŁļ Ģ</w>\ndiv or\ndr y\nstre ams</w>\nrobo tics</w>\nci der</w>\nbull ying</w>\nappro val</w>\nsto ke</w>\nplat forms</w>\nsier ra</w>\nex tin\ni b</w>\nha yes</w>\nsucce ed</w>\nsuff er</w>\nat ically</w>\nda i\nlyn ch</w>\nh ound</w>\ndel ines</w>\nack now\nd ated</w>\nexclu sively</w>\nhe res</w>\nfac ilit\ndam aged</w>\nchar ter</w>\nla kers</w>\nfal con</w>\nunve iled</w>\nwel ove\ne ase</w>\npati ence</w>\nl one</w>\ngent le</w>\ngene tic</w>\nproduc ing</w>\ng our\nshann on</w>\nbil ities</w>\nzimbab we</w>\np int</w>\ndau ghters</w>\nliter ary</w>\nbel le\ncl am\nsurroun ded</w>\nk any\nne il\npir ate</w>\nrang er</w>\nhb d</w>\nnat alie</w>\nbel ong</w>\nolym pi\nemb assy</w>\nsc ol\nen er</w>\nak in</w>\nlo ren\nb h</w>\n: /</w>\ndi va</w>\nden im</w>\nhi pp\nðŁĩµ ðŁĩ\narn old</w>\n? '</w>\nwe ren</w>\nem power\ndis abled</w>\nman or</w>\nrasp berry</w>\nb af\naw ful</w>\ndru mmer</w>\nkar dashi\nn ash</w>\nmachine learning</w>\nch u</w>\nrebel s</w>\ntim ing</w>\nmon roe</w>\nton gue</w>\nran ge\npup ils</w>\nre ss</w>\namaz on\nb z</w>\nhar ley</w>\npal mer</w>\nballo on</w>\ns ings</w>\nic ec\nj b</w>\nc ers</w>\ng ps</w>\nwhi st\nri se\nl t\noo oo</w>\nc attle</w>\nshoo ter</w>\nvod ka</w>\nuc l</w>\nmt g</w>\nle sli\njon as</w>\ndi spo\nat ric</w>\nste in\nvintag e\nfir ms</w>\nflo yd</w>\ncow boy</w>\nsoo oo</w>\nis aac</w>\nwar craft</w>\ndisney land</w>\nbeauti ful\nbe am</w>\nfranch ise</w>\nbu n</w>\nk ag\nan on</w>\ntur bo</w>\nswee p</w>\nmade in\nkar achi</w>\ndete ctive</w>\npenn sylvania</w>\ncontro versi\nvitam in</w>\na side</w>\nchron ic</w>\ndescri bes</w>\nremo val</w>\nha h</w>\nap er\nten ed</w>\nu to</w>\nbad ly</w>\nmir ac\nf ry</w>\nye a</w>\nin jec\nther mal</w>\ncomp act</w>\nth or</w>\nte ed</w>\nur gent</w>\nl ite</w>\ng illi\nsop hom\nic o\nche m</w>\np m\nfor k</w>\nfre ak</w>\nch ak\nrecipi ent</w>\ni y\nni k</w>\nmodel ing</w>\nc ans</w>\nðŁı Ģ\ndel ux\nse am\nsurviv ors</w>\nrad ical</w>\ninvestig ating</w>\nreli able</w>\nf m\ntur t\nligh thouse</w>\nto ol\ngo wn</w>\n) )\nbo ts</w>\nauto graph</w>\na id\nbu ffe\nh mm</w>\nhorri ble</w>\nssi onal</w>\nann i</w>\nà¹ Ģ\nk its</w>\nsch i\neter nal</w>\nhu ss\nsens itive</w>\nr u</w>\ntast es</w>\nchec ks</w>\nim o</w>\npor tion</w>\nsk ate\ne den</w>\nhalf time</w>\nfri ed\nri hanna</w>\nti se</w>\nfl ick\nca in</w>\ns gt</w>\nâľ Ķ</w>\nsh au\nsta ined</w>\nra ffle</w>\ndro ve</w>\nsal man\nprinci ples</w>\nsh o</w>\nar u\nje ss</w>\ngu ine\ngar bage</w>\nmy an\njel ly</w>\ndis ru\nz ia</w>\nq ld</w>\nent ries</w>\nla v\nfle w</w>\nad mit</w>\nobjec ts</w>\ncomp are</w>\nny times</w>\ncann es</w>\np n</w>\nsuff ol\nro c</w>\nd ana</w>\ne gg\nhi st</w>\ncoun sel\n' !</w>\nphy si\nimag ination</w>\nad just\nexplo sion</w>\nplym outh</w>\nhor ror\nelli ott</w>\nbour ne\nde x</w>\nbre ed</w>\nau dio\nlob ster</w>\ndisappo inted</w>\nnation wide</w>\n( (</w>\nincre ases</w>\naustr ali\nce dar</w>\nstar ing</w>\nrac ial</w>\ne is\ng mt</w>\nvisi ons</w>\nstay ed</w>\ndiscu ssions</w>\nde an\ncur tis</w>\nmai den</w>\nstel lar</w>\nhapp iest</w>\nh wy</w>\npre season</w>\ncar av\nmon days</w>\nhospit als</w>\nglimp se</w>\nschol ars</w>\nja i</w>\nter race</w>\nann a\ngoo se</w>\ngra ded</w>\nlot us</w>\nhun g</w>\ngrocer y</w>\nstam ps</w>\nemper or</w>\nsc oop</w>\nin ser\nc as</w>\nexist ence</w>\nhe al</w>\nfal cons</w>\nmar vel\nreduc ing</w>\nterri fic</w>\nmagne tic</w>\nperfor ms</w>\nbar re\np us</w>\ntre ating</w>\nic on\nw h</w>\ndecla red</w>\ntra uma</w>\ndo d\ncome dian</w>\nnik on</w>\nbu gs</w>\nas m</w>\nmont gom\nibi za</w>\ncomprehen sive</w>\nha s\nsan ti\nfellow ship</w>\nda sh\np sal\nlouis ville</w>\nsp y\nfau lt</w>\nd the\nfi led</w>\nvi sta</w>\nde sc\nfe ars</w>\nyou tu\nsp s</w>\nes p</w>\nri g</w>\ncri me\nber ger</w>\nwonder land</w>\nk ent\nin formed</w>\nstev ens</w>\nmy th</w>\nast on</w>\nir i</w>\nvisit or</w>\nat ri\nproduc ers</w>\nal la\nperson ally</w>\nsepar ate</w>\nagen cies</w>\naf ri\nil an\nspo ke\nn ina</w>\nsqu ad\ndi ves</w>\nde pend\nli v\nfier ce</w>\nenter taining</w>\ncha in\nsc at\nbor ders</w>\npal ette</w>\nsp ro\nos is</w>\nder by\ntobac co</w>\nzi o</w>\nwilli e</w>\nju vent\nzoo m</w>\nhol y\nenti rely</w>\naf e</w>\nmart inez</w>\nbe ds</w>\npe a</w>\nbull dogs</w>\nðŁĩª ðŁĩ\nib m</w>\nne on</w>\nethiop ia</w>\nteam mates</w>\nplan ting</w>\ntw er\nany time</w>\nfor bes</w>\nÃ³ n</w>\nrun way</w>\nner vous</w>\nro ger\np ile</w>\nch anc\napo caly\nu w\no i</w>\ndr ought</w>\nterrit ory</w>\nbr ick\ncre atures</w>\ngo in</w>\nw aff\ngre n\nsou theast</w>\nje an\nam bul\ned ited</w>\nstra p</w>\nc v</w>\naar on\nãĥ» ãĥ»\nt su\ndescri ption</w>\nkin dly</w>\nclu tch</w>\nim mer\nen or\nwomen sday</w>\nor ange\nra g\nob vious</w>\nhy der\nchann els</w>\nman go</w>\nme yer</w>\nra ining</w>\nge tty</w>\npil gri\ncoordin ator</w>\nup load</w>\nninten do\ndon uts</w>\nsan chez</w>\napp arel</w>\nj r\nzz i</w>\n, @</w>\njeff erson</w>\naccessi ble</w>\ngreat ly</w>\ne id</w>\niniti al</w>\nbudd ha</w>\npar is\nma scot</w>\nâ¬ĩ ï¸ı</w>\nsch war\nsi ri\nsp inning</w>\nmortg age</w>\ne cho</w>\nend ange\nge dly</w>\nchlo e</w>\nenh ance</w>\nkar nat\nk ry\nexplo res</w>\nðŁĴ ģ\naf fair</w>\nic als</w>\nall a</w>\ndar t\ndolph ins</w>\ndiffe rences</w>\nsquir rel</w>\nau gh</w>\ndr ones</w>\nell en\nre store</w>\npa w\nun for\npi ke</w>\nhil ton</w>\ncolla b</w>\nconsu mers</w>\nco inci\nout comes</w>\npp p</w>\na q\ncoup on</w>\nli est</w>\nsi ms</w>\nk ho\nav es</w>\nspo on</w>\npu dding</w>\ncor byn</w>\nhat ers</w>\nex ams</w>\nsla ve</w>\n. !</w>\np sa</w>\napp les</w>\ntam il</w>\nse d\nco ke</w>\nzz o</w>\nlo sange\ncar bon\ncla ir</w>\n... )</w>\nk hu\ncra ig\nexplor ation</w>\nsanctu ary</w>\nsu e\nal way\ndemen tia</w>\nwon ders</w>\nsuper hero</w>\npakistan i</w>\nbrown s</w>\nbluet ooth</w>\nlo cker</w>\nmar c\nev entu\ndelux e</w>\nrodri guez</w>\nâĿ¤ âĿ¤</w>\nro bb\nðŁĴ ¦</w>\nlin ux</w>\nten s</w>\nintellig ent</w>\nse ed\nvo ter</w>\ns ler</w>\npe aks</w>\ninter n</w>\nteen age</w>\npeninsu la</w>\nhand ling</w>\nti e\ncou sins</w>\nwen dy</w>\nme e</w>\nà¹Ģ à¸\ndin o</w>\nðŁĴ °</w>\nðŁĺ ĥ\nze e</w>\ns bury</w>\ntrage dy</w>\nb k</w>\nbo re\nz in\nwar ns</w>\nidi ot</w>\ntou ching</w>\ncontin ental</w>\ntac os</w>\nsaf ari</w>\nwa shed</w>\npo dium</w>\nmorri son</w>\nfore sts</w>\nc bc\nal on\npartic ular</w>\nbe ads</w>\ninv ented</w>\nlo ch</w>\nli ghter</w>\nwhere ver</w>\ni de</w>\ndocu ments</w>\na we</w>\nk r</w>\nno where</w>\nmin er\nst it\nro x\ncontribu te</w>\nhar dy</w>\ncl an</w>\nob ject</w>\nca it\nðŁĴķ ðŁĴķ</w>\nhapp ier</w>\nvege tables</w>\nt art</w>\ng ag\nnom inee</w>\nheav ily</w>\npan ic</w>\nj d</w>\nthere sa</w>\nat m</w>\nu ph\ns fc</w>\nsu ri\ndrin k\nn al\nre vel\nk l</w>\navoc ado</w>\nnom ination</w>\nma donna</w>\nshar on</w>\nmalcol m</w>\ncontrol led</w>\nsh ers</w>\nrevi val</w>\nlegis lation</w>\nshoo ts</w>\nn in</w>\ncomm entary</w>\npro s</w>\nhuman rights</w>\nstr anger</w>\nmit ch</w>\npipel ine</w>\nleg ally</w>\nth u</w>\ngil bert</w>\ntol l</w>\ngran ted</w>\ngh s</w>\nir anian</w>\nrefre shing</w>\ndu k</w>\nab i</w>\npri me\njose ph\nmo sa\nstati stics</w>\nproduc tions</w>\nmer ry\npat el</w>\nsa x\nhuman itarian</w>\nstruc tures</w>\ne missions</w>\ntown s</w>\nfre el\nster ing</w>\nrat ings</w>\nalle gedly</w>\ncab in</w>\nst l\nw ade</w>\nfl yers</w>\ntri m</w>\npromis ing</w>\nz u</w>\nbal lot</w>\ncompar ison</w>\nfree ze</w>\nou ter</w>\ngreat ness</w>\nas sign\nsnow y</w>\nr ale\ntor ies</w>\nmed iter\nkno ck\nconsult ant</w>\ncincin nati</w>\nanaly st</w>\nsc oo\nje ws</w>\nappro xim\npu re\nportra its</w>\ncy rus</w>\nation al\nlo ans</w>\nacqu is\nel u\naccep table</w>\nuni on\nwater color</w>\nru st</w>\nbatt les</w>\nper fu\nseas onal</w>\nser ial</w>\nmind set</w>\nri ot</w>\nfel d</w>\nenni al</w>\nclo set</w>\npri est</w>\ntan ks</w>\nint l</w>\nscre w</w>\nbu m</w>\nab dul\nou x</w>\nexpla ined</w>\nric a</w>\nimag ing</w>\nlaw yers</w>\nbu ried</w>\nãĥ»ãĥ» ãĥ»</w>\near l</w>\nâĢ ķ</w>\nl ton</w>\nresto red</w>\nstri pes</w>\nfo ss\nde mands</w>\nste aling</w>\nalex is</w>\nmun d</w>\nak er\nur us</w>\nwar dro\nhu gs</w>\ngen re</w>\ne go</w>\nÙ Ħ\nparticip ated</w>\nbab es</w>\nban quet</w>\nti ous</w>\nhe mi\nds b</w>\nlo st\nmilwau kee</w>\njen ner</w>\nge m\nou tra\nlo ses</w>\nid i</w>\nre ps</w>\nðŁİ §</w>\nregu lation</w>\nfla w\nf ang\nvibr ant</w>\nram p</w>\nra ins</w>\nwell being</w>\nso viet</w>\nvie wers</w>\nde po\nlibr aries</w>\nbi go\nser y</w>\ng ill\nde struction</w>\nco z</w>\nc x</w>\nbri dal</w>\nal ds</w>\nplan ted</w>\namate ur</w>\nlu d\nche ering</w>\nshow cas\npro file\ni u\nver tical</w>\npack ers</w>\nwiz ard</w>\nski p</w>\ns light</w>\nbe au</w>\nair ways</w>\nmu ch\nre ra</w>\nðŁĮ Ĭ</w>\nab sor\npati o</w>\npack ages</w>\ns ells</w>\nment ally</w>\nðŁĺ ¢\nreyn olds</w>\nk are\ntri bun\nwal t</w>\nkn it</w>\nta ste\nsur rey</w>\nboun ce</w>\ncre ature</w>\nb are</w>\nbet ting</w>\nsu re\nmi ley</w>\nlaugh s</w>\nal ore</w>\ncy n\nt l\narti st\nann ah</w>\nwar mer</w>\ndynam ics</w>\nlunch time</w>\nmariti me</w>\nvulner able</w>\nðŁĴ ĥ</w>\nwol ver\ndur ham</w>\nconst antly</w>\nam in\nsi bl\n: @</w>\nbul let\nk ach\nangel o</w>\nwil der\ndoo m</w>\ndesk top</w>\nlaw suit</w>\nk ca</w>\nhen derson</w>\ninv iting</w>\nbet ty</w>\nta wards</w>\nra fa\nle aked</w>\nand i</w>\nge ms</w>\naf l</w>\nvel o\nmediter ran\npro be</w>\nto tten\nsteph anie</w>\nsn ation</w>\ncom be</w>\nq s</w>\nover come</w>\nassas sin\nra v\nfil ip\nwinni peg</w>\nsh il\ndetermin ed</w>\nk as</w>\nou tre\nregre t</w>\ngui des</w>\naa a\nðŁĺ Ī\nwi ves</w>\nmani fe\ner ly</w>\nsm y\nsh ima</w>\nx ing</w>\npix el\njac ob\nac commod\nto y\non o</w>\npo o</w>\nti er\nan swe\nðŁĴ ģ</w>\nro sa</w>\nle ase</w>\nbel ongs</w>\nth ar\neventu ally</w>\nnei ther</w>\ngo a</w>\nski ing</w>\nat ra</w>\nag h</w>\nbroad casting</w>\nf ury</w>\npy ram\nd ice</w>\nvolk swag\nwom ens</w>\nprovi der</w>\nbom bs</w>\nmiss ile</w>\nwhi p</w>\nd ick\nnor we\nback up</w>\nel der</w>\nmat ure</w>\nconcer ts</w>\ngi ous</w>\nsque e\ngood morning</w>\nbra ves</w>\n^ _\nau ssie</w>\nlun a</w>\nmal es</w>\nhe ck</w>\nfor tn\nrome o</w>\nsteel ers</w>\np n\npe er</w>\nre presents</w>\nÂ «</w>\nkat y</w>\nmigu el</w>\nrequ ire</w>\ncha ins</w>\nl ur\nimmedi ate</w>\nti mber\nâĸ¶ ï¸ı</w>\nadvoc acy</w>\nex port</w>\nan z\ntiff any</w>\nauth or\nðŁİ Ī</w>\ndu des</w>\nchil ly</w>\nhi d</w>\nhar m</w>\nbu g\nmon ster\nterri er</w>\ntu c\nstory telling</w>\nta k</w>\nin ti\nimmigr ants</w>\nb is</w>\nreach es</w>\ncom passion</w>\njohn ny\ncontribu tions</w>\nðŁĲ ¶\nmechan ical</w>\nimpre ssion</w>\nran ks</w>\nko be</w>\nmen ting</w>\nbloss om</w>\npab lo</w>\nbuil der</w>\nbom bing</w>\ntw el\nsul livan</w>\nom o\npe te\nde mi</w>\nku dos</w>\nw bb</w>\nt gif</w>\nmass ach\nneighb or</w>\nche fs</w>\neng ines</w>\npun e</w>\nga ined</w>\nphan tom</w>\ns days</w>\next end</w>\ngr an</w>\ncent ers</w>\njac qu\ndat asci\nsleep y</w>\nel vis</w>\nanswe red</w>\ns lot</w>\ncon y</w>\nflexi ble</w>\nti ally</w>\nle tics</w>\n% ,</w>\nandre ws</w>\nsi ble</w>\nmom ma</w>\nvin o</w>\ndo x</w>\ninvit ational</w>\ntwil ight</w>\nj ade</w>\nill ery</w>\njoh ns</w>\nf ou\np v\n-- -></w>\nbreak down</w>\nbilli on\nprin ter</w>\nmon d\nc bc</w>\nmag gie</w>\nlegi on</w>\ndu b\nkur t</w>\npo or\nparen ting</w>\nregi ons</w>\nbikin i</w>\nbe ware</w>\nsi onal</w>\nau burn</w>\nkid ding</w>\namp les</w>\nsp an</w>\ncon tempor\nc ic\nha bits</w>\nak o</w>\npre fe\nbud dies</w>\nit z\nem ily\nperson nel</w>\nmoun tain\nver sus</w>\nðŁĺ ¬</w>\near ning</w>\ns ink</w>\ndar i</w>\nu u</w>\ns win\ni ster</w>\nbru tal</w>\nn ac\nkat a</w>\nclo th</w>\nam and\nðŁĶ Ĺ</w>\nne o\nalu min\nweek ends</w>\nnebra ska</w>\nco des</w>\ndelay ed</w>\nbrun o</w>\npro ven</w>\nin c\ni ght\nfl an\nor o</w>\nlam bert</w>\nregu lat\nw f\nmassach use\nkardashi an</w>\nbern ard</w>\nfi esta</w>\nvolcan o</w>\ngrand pa</w>\nanc a</w>\nd re</w>\nst itu\nmean ing\nfo am</w>\nau ck\nat ed\nr l</w>\nhot el\npers ons</w>\ndy nasty</w>\nell or</w>\nma i</w>\nam ne\nsty ling</w>\navi er</w>\ne g</w>\nvege tarian</w>\n, âĢ¦</w>\nfoun ders</w>\nsta in</w>\ng d</w>\ncy cles</w>\nsky line</w>\ntrac tor</w>\nexi sts</w>\ntra l</w>\nkid ney</w>\nmar il\ninst ag\nse tte</w>\naddic t</w>\ntri angle</w>\nflash back\ncontroversi al</w>\nz on</w>\np ins</w>\ni as</w>\ntr ay</w>\ntown ship</w>\ndeleg ates</w>\nsp am</w>\nh ms</w>\ncr ane</w>\npeop les</w>\no lo\nfac tion</w>\nbut es</w>\non ica</w>\ndeleg ation</w>\nnew profile\neli er</w>\nmc a</w>\nw and\ng ely</w>\nlosange les</w>\nber ke\nti ve\ndis rup\nzz a</w>\ncas a</w>\njor dan\nford shire</w>\nga thered</w>\nic hi</w>\natten dees</w>\nà¸Ń à¸\npe ppers</w>\nco in\nbour bon</w>\nern ity</w>\nro tary</w>\nbehavi our</w>\njere my\nteam work</w>\ncompli ance</w>\ntre mend\nðŁĩ §\nbu hari</w>\ncam bo\nbu yers</w>\nha gen</w>\nbu ds</w>\nbay ern</w>\nmon te</w>\nsm ells</w>\nan za</w>\nath lon</w>\ndescri bed</w>\nwork force</w>\ngi ving\nap i</w>\ninvest ments</w>\nda il\nsel ena</w>\ndatab ase</w>\nth um\nmor tal</w>\nstu dent\nbu yer</w>\ndo ver</w>\ngar ten</w>\natt le\nloy alty</w>\ngen oci\nholo cau\ntheat ers</w>\nru ling</w>\nven us</w>\npat ent</w>\nch un\nab by</w>\nawa ke</w>\nmass acre</w>\nbang alore</w>\nbreak ing\nsimm ons</w>\nju sti\nhal e</w>\ned chat</w>\ngg les</w>\nhaw k\nmar king</w>\nhead lines</w>\nstro m</w>\nco ve</w>\nbreath taking</w>\nmed als</w>\nhair cut</w>\nchrist ine</w>\ntele graph</w>\ngujar at</w>\nju ra\ncan e</w>\nsho re\npropag anda</w>\nmu eller</w>\n.... ....</w>\nsa vi\nstom ach</w>\nthro ws</w>\nta b</w>\nwar m\nj ong</w>\nreno wned</w>\nhi r</w>\nra is\nmush rooms</w>\nguaran teed</w>\nbo a</w>\nm j</w>\nrevolu tionary</w>\ncerti fication</w>\nbru ins</w>\njo in\nw es</w>\npas sport</w>\nc g</w>\nsex u\ncap able</w>\nw v</w>\nton es</w>\njac kets</w>\nac compan\nspin ach</w>\nfore ver\nbla ir</w>\nwat ts</w>\ng l</w>\ncou ples</w>\nprairi e</w>\nnewprofile pic</w>\nlogi stics</w>\nmassachuse tts</w>\njagu ar</w>\no id</w>\nwe al\nunder water</w>\nmo z\ny i</w>\nma ths</w>\nmyan mar</w>\npre ps</w>\nsuffe red</w>\ntr ace</w>\nwal i</w>\nah hh</w>\nbor g</w>\nst itch</w>\ncu lin\nreal ise</w>\ninfe ction</w>\ndiscrimin ation</w>\nsh ame\nan kle</w>\nhu mid\ny t</w>\nbrac ket</w>\ntru ck\ntri u\nea ster\ncommun ity\npost card</w>\ninvol ving</w>\nty ler\ncar amel</w>\nover view</w>\nex amples</w>\nintegr ity</w>\nbase ment</w>\ninstru ments</w>\nani um</w>\nat us</w>\ngh er</w>\nlaun dry</w>\nachi eve\ngen eva</w>\npr icing</w>\nhyder abad</w>\nbeli ef</w>\nme ta\nj aw\naccoun ting</w>\nlead er\ncristi ano</w>\ncou ture</w>\ncy p\nvis ed</w>\n, ,,</w>\nk nu\nh ick\nbreak er</w>\nbr am\nra b\nmo or\nham as</w>\ngradu ating</w>\npupp ies</w>\nak h\nta h\nach es</w>\nri e\nop ini\ng ta\nre ign</w>\ntra gic</w>\nre ver\np ill\npine apple</w>\ntou ches</w>\nda re\nle ys</w>\nil o</w>\ninter iors</w>\nsc outs</w>\nbar t\nen zie</w>\ndon o\nbro ck\nchristi ans</w>\nense mble</w>\nÂ ·</w>\ncine mas</w>\nnew port</w>\nair line</w>\nwin ston</w>\nle igh\ncont ents</w>\npre scri\nur ge</w>\ntr out</w>\nfic ally</w>\nil ia</w>\nsub si\nare r</w>\nâļ¾ ï¸ı</w>\nw ounded</w>\nðŁĻ Ĥ</w>\npe pper\nðŁĴ ŀ\nfit ted</w>\naf f</w>\nre sur\nthursday thoughts</w>\nz ero\narchae ology</w>\ndi v</w>\nje e</w>\ni on\nawa iting</w>\nco zy</w>\nbeauti es</w>\nbal d</w>\ndat a\ngri zz\nstal k</w>\nkin ds</w>\ncle ared</w>\njess ic\nregu lar\nali ens</w>\nplac e\nbo s\nbi zar\nthisi s\nðŁĴ Ģ\ntotten ham</w>\nma fia</w>\ns lam\nari ana</w>\ncar roll</w>\nback pack</w>\ncare y</w>\nuni v</w>\nr g</w>\npe p</w>\ndig it\ntatt oos</w>\nag on</w>\nvolunte ering</w>\ndiffe ren\nconsu mption</w>\nka thr\nhead phones</w>\nt shirt</w>\no b</w>\nele ment</w>\nre tail\nsh ru\nal gori\ncontain er</w>\nconsci ous</w>\nfi l</w>\ncom ing\nra sh\nu rope</w>\ndef ine</w>\ngi or\nfemini st</w>\nflow ing</w>\nrout es</w>\ngl aci\nfer t\nsomer set</w>\nant es</w>\ntwee ps</w>\n$ $</w>\nh our\nendange red</w>\nyear sof\nro h\npo pped</w>\nbac king</w>\nba sil</w>\nbra ke</w>\nmon aco</w>\nlgbt q</w>\npra gue</w>\nut ility</w>\ncas si\ngate way</w>\nhaun ted</w>\nsch ul\nðŁİ µ</w>\nshou ld\nwalking dead</w>\ncomple ting</w>\ndann y\nmontgom ery</w>\npengu in</w>\nss i</w>\nmer chandi\nðŁĳ ĳ\nchur ch\nh ates</w>\ncap tain\nbrea thing</w>\nce t</w>\nfair ly</w>\napproach es</w>\ncompan ion</w>\nsurpri sing</w>\nkany e</w>\npe y\nhin di</w>\ntarge ted</w>\nlor ds</w>\nde ut\ndi gging</w>\nger man\nru t\nener gy\nclose st</w>\ny un\napo logi\nà¸ ±</w>\ns ack</w>\nru p</w>\ndd y\nport al</w>\nd ough</w>\nb ats</w>\nðŁĵ °</w>\nat ur\ngraph er</w>\npi res</w>\nmo tors</w>\nðŁĮ ¹\nj c\ndan g</w>\ntu k</w>\nclu e</w>\nus c</w>\npag e\nd less</w>\nbro ws</w>\nju s</w>\nad ing</w>\nre marks</w>\noo m</w>\ncar dio\nste fan\narm strong</w>\nâĢ¢ âĢ¢\nni est</w>\nbelgi an</w>\nbi op\nso y</w>\nlo f\ní ĥ\nq t</w>\nflashback friday</w>\nce e</w>\nģ à¸\nwre ck</w>\nmar ines</w>\namend ment</w>\nwardro be</w>\nvo y</w>\nbur ned</w>\nguit ars</w>\nra inf\nli fel\nssi l</w>\noun ce</w>\nexter nal</w>\nc key\nme sh</w>\nshe ikh</w>\ninv itation</w>\nsugge sti\npop corn</w>\nphenomen al</w>\nan onymous</w>\ntun a</w>\nchic ago\no val</w>\ndel y</w>\nloc als</w>\n( &</w>\npro f\nno vel\nfin der</w>\nspar ks</w>\nla ven\nin fu\nnic ks</w>\nqu ant\nra e</w>\nexe c</w>\ndist ingui\nst ances</w>\nmu tual</w>\nsh al\nunve ils</w>\nedmon ton</w>\nzan ia</w>\na dio</w>\nvie wer</w>\nbrad ford</w>\naudit orium</w>\nqu is\nre act</w>\nhtt p</w>\nl ero\nchee ky</w>\nimpac ts</w>\nta k\ned t</w>\ndesper ate</w>\nt ay</w>\nì Ħ\nsett le</w>\nbar gain</w>\nresu me</w>\nun ite\nthro wn</w>\nke st</w>\nse ys</w>\nmar ching</w>\nam it\ndecl ine</w>\nsch ar\nme tr\nstan ford</w>\nlin ke\nber ra</w>\ndol ls</w>\nrug by\njam i\nb or</w>\nroad trip</w>\ndino saur</w>\nmi k\nsun der\nre m\nb k\nover seas</w>\nnau ghty</w>\nimple mentation</w>\niam srk</w>\nlun cheon</w>\nfir ing</w>\nmi ami\npere z</w>\nthe e</w>\nz on\ngi fted</w>\ncon version</w>\nceram ic</w>\n¡ ï¸ı\npe dro</w>\nì Ĩ\nv ick\n! @</w>\nhe ed</w>\nsi d</w>\nb w</w>\ndocu ment</w>\npl un\ngr ants</w>\nfant asy\npredic tions</w>\nvali d</w>\ncar ved</w>\ngradu ated</w>\nðŁĳį ðŁı»</w>\nnation ally</w>\nch y\naf l\nre sso</w>\nblan k</w>\nri vals</w>\nj ig\ne ties</w>\nom ics</w>\nune mp\nb ound\nsk o\ninspec tion</w>\npar al\nhigh s</w>\ncri sp</w>\nb ans</w>\nob a</w>\n[ @</w>\nco spla\ncostu mes</w>\nrec all</w>\nmou th\nni gel</w>\nb ts\nter a</w>\nko v</w>\ndo cs</w>\nwest minster</w>\ndic t</w>\ngra vity</w>\nkar i</w>\nro gue</w>\nt ted</w>\nwar k</w>\nida ho</w>\nw end\naw i</w>\nqueen sland</w>\nproce sses</w>\ncli ffe</w>\nm ick\ncom pens\nop ol\nthe y\ncl ari\nwiki pedia</w>\nsalman khan</w>\nhaz ard</w>\npre ston</w>\nswee test</w>\npd f</w>\nche es\ntr ilo\nsouth africa</w>\nbur nt</w>\n( $</w>\ncon tain</w>\nt p</w>\nsub mitted</w>\nsound cloud</w>\nat u\nre z</w>\nword press</w>\ncorru pt</w>\nn f\nma ker\ní ķ\npar as\nadv ent</w>\nri al</w>\nca fe\nfo ssil</w>\n!!!! !!!</w>\nco ws</w>\nc j</w>\nsp ur\ninstitu tions</w>\nland mark</w>\nent it\nre ut\nh is\nalz heim\nwe mb\nregg ae</w>\nmo squ\nst at</w>\nidenti fied</w>\ndeal er</w>\nre am</w>\nre land</w>\nten sion</w>\nðŁĩ ©\nwra pping</w>\ndeep er</w>\nfr at\nred dit</w>\nar is</w>\nmoroc co</w>\n.. \"</w>\nb low\nma pping</w>\npri orities</w>\ning a</w>\nswa p</w>\nre wards</w>\nconspir acy</w>\ncreati ve\nc j\ncongre ssional</w>\nvau lt</w>\nple x</w>\nsophom ore</w>\nshad ow\nele ss\nðŁĺ ħ\ndar ts</w>\naldu b</w>\nanno ying</w>\npro ps</w>\nn as</w>\nalumin um</w>\nh bo</w>\noffen se</w>\nj ill</w>\noni ons</w>\nla ur\nta e\nhar dest</w>\nsh ro\nga ining</w>\nmeas ure\ned tech</w>\ncyp rus</w>\ntar a</w>\nang eli\ncar lo</w>\ngo on</w>\nall i</w>\nim plic\nju pit\nresil ience</w>\nha il\nbal anced</w>\n) ...</w>\njoy ce</w>\ngr a</w>\nth eli\ndefin ed</w>\nshi pped</w>\nmain ly</w>\nmin a</w>\nl m</w>\nsac ri\no ber\np im\nclaim ing</w>\nent ers</w>\nco rey</w>\nbo k</w>\ncri ed</w>\ncool ing</w>\ndani elle</w>\npharmac y</w>\nthor ough\nca ke\nk lo\noutre ach</w>\nz ens</w>\ndigital marketing</w>\nval ent</w>\nsn p</w>\nher b</w>\nmr w</w>\ncaf Ã©</w>\ncap tures</w>\nno tre</w>\ntriu mph</w>\npan cakes</w>\ncu mber\nspi ke</w>\nd ation</w>\nbi gg\nsp er</w>\ncrit ical\nam al\ntoo th\nfoun ding</w>\na stro</w>\n' #</w>\nquan tum</w>\nth ames</w>\nun c</w>\npri de\nair bus</w>\nkno cked</w>\nun defeated</w>\nmediterran ean</w>\ncal cu\nclo wn</w>\nsens or</w>\nham mer\nfor give</w>\ncu shi\nber ry\nmaje stic</w>\nelec t</w>\npolit an</w>\ng ta</w>\nk ari\nbur ke</w>\nsea hawks</w>\nvolkswag en</w>\nre i\nlandsc apes</w>\ncas u\ngrand father</w>\nlist ened</w>\n/ /\nstar trek</w>\nrainf all</w>\nfur ry</w>\nvi er\nstar k</w>\nrif le</w>\nff a</w>\nleg es</w>\nhillary clinton</w>\nmin us</w>\ncorrec tly</w>\narchitec tural</w>\npre ce\nup side</w>\nbox er</w>\nðŁĻĮ ðŁı¼</w>\nis ai\nde t</w>\npro vo\ntis sue</w>\nspoo ky</w>\nve led</w>\nre con\nprospec ts</w>\nque bec</w>\nâļ «\nig no\nanat omy</w>\nshap es</w>\nw p\np interest</w>\nhor e</w>\nan es</w>\npick up</w>\nti p\npra desh</w>\nhu gh</w>\nco e</w>\npo k\ngram my</w>\nwell ington</w>\nsti gate</w>\nri gh\nlea p</w>\nking ston</w>\nscen ic</w>\ngo sh</w>\nv ani\nau g\ns ary</w>\nzi er</w>\nbure au</w>\nlin son</w>\ncon te\nfra gr\nall an</w>\ng aw\nlan a</w>\ncolli sion</w>\nsurve ill\nren ais\nar range\ns ali\ndo in</w>\nbr ance</w>\nbren dan</w>\nour se</w>\nin coming</w>\nsuspen sion</w>\nà ´\nl la</w>\neduc ators</w>\nin tri\nda e</w>\nbio graphy</w>\nbul gar\nvilla in</w>\ngo thic</w>\nrw anda</w>\ne w</w>\nmay or\nmeet up</w>\ndemocr at</w>\nmor gan\nsu dden</w>\nte sco</w>\ncar rot</w>\nbom ber</w>\nmck in\nre ne\nfun day</w>\nagricul tural</w>\nhaha h</w>\nshow time</w>\nform ing</w>\ncol a</w>\nscor pi\nquo te\npo ppy</w>\ns life</w>\nd az\ntu b</w>\nne n</w>\nmo t</w>\nðŁĺ »\ns ore</w>\nelder ly</w>\no ve</w>\nskin ny</w>\num i</w>\nanc o</w>\nman ship</w>\nwe re\ng v\nk ah</w>\nfol ding</w>\nne at</w>\nsamanth a</w>\ndan ish</w>\nuk rain\nhumid ity</w>\nnu tri\njak arta</w>\ncand les</w>\noooo oooo\nat ile</w>\nstreng th\ni bra\nbap ti\ncharle ston</w>\nfr ames</w>\ngirl s\nclear ing</w>\nglu ten\n# #</w>\nsuper natural</w>\nju bi\nph one\nhe in\ndr un\nle ak</w>\ninvest or</w>\ny er\ndom ain</w>\nball room</w>\nmi sh\napp li\noff shore</w>\nbla ze</w>\ndor o\nâĺķ ï¸ı</w>\nwin ery</w>\nshar if</w>\nad ore</w>\nn ir\nsaf er</w>\nsi gh</w>\nas cri\nstrong ly</w>\ntrac y</w>\nck er\nol l</w>\nfaith ful</w>\ney ed</w>\ndeli ghtful</w>\nvis m</w>\nkarnat aka</w>\ntit an</w>\nwh ar\njer seys</w>\nre fur\nheav en\ngri p</w>\npan ama</w>\npre li\nglu ten</w>\no dd\ncont ent\npon ti\ntion ing</w>\ne commerce</w>\nfeder ation</w>\nflaw less</w>\nge ar\nti res</w>\nby r\npol ice\ncu ban</w>\ntri butes</w>\ntic ul\nchur ches</w>\nnur sery</w>\ndi aries</w>\nmuse ums</w>\nsnapp ed</w>\ni van\nwi ght</w>\ntouri sts</w>\nramad an</w>\nt rent</w>\nprophe t</w>\nwon dered</w>\nfocu sing</w>\nhi d\nic ons</w>\ni q\nambul ance</w>\npi st\nfun niest</w>\ntime less</w>\nsr ilan\nbu ys</w>\nki ds\ncolour ful</w>\na shi\nch ir\nmu m\nðŁĵ ļ</w>\nlet ter\nx en\nreut ers</w>\npre serve</w>\nin ting</w>\nste p\nfu ji\nuni ver\ni u</w>\nshow down</w>\npo ems</w>\nsurveill ance</w>\nsuspec ted</w>\nta e</w>\nsol ving</w>\ntom b</w>\nmother sday</w>\ncar pen\nrecru it</w>\npil ots</w>\nbro c\nmix ing</w>\nfri days</w>\nty r\nrepresent atives</w>\ntra pped</w>\nabdu l</w>\nfree style</w>\nclu ster</w>\nâļ łï¸ı</w>\nk d</w>\nsk ill\npit t</w>\nex o\ncommer ci\nmuse um\nloc ally</w>\ng ina</w>\nno bel</w>\nimmun e</w>\nfr ac\ncap su\nmain ed\nattemp ts</w>\nbull dog</w>\nbe spoke</w>\nsing ers</w>\nsp elling</w>\nseg ment</w>\nnat ures</w>\ntic k</w>\nlip stick</w>\nclean er</w>\ngett able</w>\npreci sion</w>\nâĢ¼ ï¸ı\nth ood</w>\nre ef</w>\nno pe</w>\nbill y\ndi gi\nmu si\nri val</w>\nfigu red</w>\ntal ity</w>\nsun ny\nber k\naw ww</w>\nawa its</w>\nun real</w>\nco pen\nasy lum</w>\nex otic</w>\nbu en\nmo ck\nen able</w>\narch y</w>\nfr a</w>\npla stic\nal mond</w>\namp li\ndispla ys</w>\nabbo tt</w>\ns me</w>\nx p</w>\nðŁĻ ĥ</w>\ngraph ic\ni ved</w>\nmar a</w>\ncau tion</w>\nlea ks</w>\nen berg</w>\nul u</w>\nunic orn</w>\ncann on</w>\nappren tic\nðŁĺĺ ðŁĺĺ\nb ball</w>\nwil low</w>\nat ics</w>\nam as</w>\nmanufac turer</w>\ncampaig ns</w>\nport ers</w>\nflo ors</w>\nl su</w>\nty pe\nke j\nhonor ary</w>\nit im\nto le\nmin ecraft</w>\nd x</w>\nma sh</w>\nri o\nconsequ ences</w>\nron ald</w>\ngo ssi\nsuffol k</w>\nmu se</w>\nr bi</w>\nlive music</w>\ni van</w>\nðŁİ ¤</w>\nle u\npatri ot</w>\nman it\nlan ca\nhome decor</w>\nde ar\nsig ma</w>\nti de\nstr ings</w>\nv ita</w>\nsequ el</w>\ntry na</w>\ninve stigate</w>\nbor is</w>\nve gan\nbarri er</w>\nmind fulness</w>\nweb b</w>\nhu stle</w>\nin da</w>\ntan zania</w>\nstr ay</w>\ntex as\nc ag\ndiagno sis</w>\nwom an\ng w</w>\nob session</w>\nl ative</w>\nnu fc</w>\nfl ynn</w>\nmoment um</w>\nsof a</w>\nwal d</w>\nvege table</w>\ntu cker</w>\nsupp er</w>\nse ab\nar ro\nse ag\nven ting</w>\ncounc ill\nsp lat\ncal cul\n.. #</w>\ncom fy</w>\nodi sha</w>\nsto pp\nwar fare</w>\nca es\nà ¨\nco y</w>\nprice less</w>\nin sec\nðŁĺ Ľ</w>\ncontro ls</w>\nempower ment</w>\ndatasci ence</w>\nper pe\ngen ic</w>\ne res</w>\ntru deau</w>\nman o\nsla very</w>\nexpand ing</w>\nma he\nfa iling</w>\ns aga</w>\nphotograph s</w>\ncre st</w>\nre on</w>\nsurf ing</w>\nhi e</w>\nðŁį Ģ</w>\nja e</w>\nfel lows</w>\nsouth ampton</w>\nsol om\nce ster\ntab ility</w>\nhor n\nse ct</w>\nhe e</w>\ncole man</w>\nat las</w>\nexplo rer</w>\nconsul tation</w>\ncopy right</w>\norgani zing</w>\nden ied</w>\nmon keys</w>\nnoo dles</w>\nbr is</w>\nfl or\ndou gh\nbon ds</w>\nsho cked</w>\neco system</w>\ncare fully</w>\nw m</w>\napart ments</w>\ncur ve</w>\nsan diego</w>\nmust ard</w>\ncomm en\ncere mon\ne ch\nru th\nðŁĻĮ ðŁı»</w>\nhawa i\nfil med</w>\nte ar\nas ingly</w>\nca ir\nwat t</w>\ninstru ment</w>\nou tta</w>\nye ol</w>\nriver side</w>\në °\n. :</w>\nnor wich</w>\nalo g</w>\nmigr ants</w>\nnew man</w>\nri de\nspr ink\ntarge ting</w>\nbeli eve\ntor ch</w>\nreflec ts</w>\nper mission</w>\nff man</w>\nene mies</w>\nbas ics</w>\nse ized</w>\nsun days</w>\nle i\nhass an</w>\nen do</w>\nh c\nst ad\nle ments</w>\nkk kk\nnan o\nshar k\nman a</w>\non ic\ntreat ments</w>\near ly\ncollabor ative</w>\nshu ttle</w>\nbran ches</w>\nmis ses</w>\nmained cm</w>\nap ers</w>\nky le\ncarri e</w>\nleis ure</w>\nsh et\nbir ding</w>\nadv ances</w>\nðŁĵ Ŀ</w>\npopu lar\ndi ane</w>\na be\nre war\nneigh bour\nk pop</w>\nremem brance</w>\nplay ground</w>\nru b\nkrish na</w>\ne bola</w>\ninqu iry</w>\nep a</w>\nlu min\norgan isation</w>\nabra ham</w>\nnorm ally</w>\npre ten\njan et</w>\nw t\nðŁĴ İ</w>\nencoura ging</w>\na stic</w>\nbu mp</w>\nsyd ney\ns z</w>\nss ss</w>\ngar rett</w>\nðŁĵ »</w>\nconsul ting</w>\nroman ia</w>\nspo tting</w>\nchanc ellor</w>\nar ma\npresti gious</w>\nðĿ Ĳ\nt ad\ncry st\ncompe tit\nrati o</w>\ncat aly\nbro w</w>\nj ur\nvi king</w>\ncommu te</w>\ny day</w>\nla yers</w>\ndu mb\nesc al\ngenoci de</w>\nf ill\ngu pta</w>\nste pping</w>\nse i</w>\nfo to\nwild cats</w>\ncol i</w>\nprojec t\near nings</w>\nst r</w>\nge ons</w>\ncomple tion</w>\nb m</w>\ndecor ated</w>\ncraw ford</w>\naf ghan</w>\nsc are</w>\nvisi bility</w>\nhi b\ndirec tion\nstro ll</w>\nchrist ina</w>\nalter nate</w>\ncl are</w>\nsty list</w>\nbe hold</w>\ns ance</w>\nleop ard</w>\nacqui red</w>\nnarr ative</w>\nash i</w>\nthe a\n?? ??\npe as</w>\nat ch</w>\nsli des</w>\nle en</w>\nrenew able</w>\neng lish\nqu ir\nco aster</w>\nr x</w>\nfo ols</w>\nmatch day</w>\nmis m</w>\namaz ing\nz ig\nke ting</w>\nwon t</w>\nto wel</w>\ndi ab\nsta ke\nn m\nmel t</w>\ne than</w>\ngra pe</w>\npolit ician</w>\nsm en</w>\ní ĺ\nre o\nwedd ings</w>\ncat cher</w>\nor acle</w>\nme mo\nðŁĮ ´</w>\nec k</w>\nrob bie</w>\nnorwe gian</w>\noper ator</w>\nam or</w>\nse wing</w>\nju l</w>\nx ie</w>\nu v</w>\nfif ty</w>\nme ga\ntatt oo\nliber als</w>\nu pri\ntraffic king</w>\nrichard son</w>\nsu v</w>\nki p</w>\nmess y</w>\ntremend ous</w>\ngl ou\ncour tney</w>\nla d\nstere o\nmy ers</w>\ni dio\n^_ ^</w>\nman ning</w>\ndy e</w>\nw d\nthr one</w>\njun k</w>\nas u</w>\nprovin cial</w>\nk ook</w>\nwr c</w>\nfine art</w>\nhamp shire</w>\nrenais sance</w>\nb red</w>\nfall out</w>\ns j</w>\nsn l</w>\nal am</w>\ntor ture</w>\nfy i</w>\nsh ines</w>\npa w</w>\nch ar</w>\nhen ry\nc row</w>\naci ous</w>\ndi an\npa ige</w>\nba re\nstock holm</w>\nscen ery</w>\nðŁĩ ·\njef frey</w>\npu sh\ndecor ation</w>\nne d\ncu te\nbrig ade</w>\nlaven der</w>\ninv ites</w>\ne sports</w>\nvo ir</w>\ndri ed</w>\ntran spl\nsur geon</w>\nno vels</w>\npul ls</w>\nson y\nlun ar</w>\nman e</w>\ni vy</w>\nfru str\ndor set</w>\nsa i\ntor res</w>\nssi on\nshut down</w>\nsuggesti ons</w>\nwrit ing\ne o\nbattle field</w>\nu ga</w>\nðŁĲ ¾\nvac u\nspl ac\ng it\nu g</w>\nhigh land</w>\n% )</w>\nmer maid</w>\nsacram ento</w>\nta ils</w>\np w</w>\nka h\nt ell\nenh anced</w>\nì ķ\nauck land</w>\ncru el\nðŁ¤ ©</w>\nau dre\nsail or</w>\ngram mar</w>\ng love</w>\nde on</w>\ninfl am\nfresh ly</w>\nk ell\nzi p</w>\nchristi e</w>\nmil d</w>\ndi xon</w>\ninstru ctor</w>\ng ence</w>\nãħ ł\nsub jec\nconstitu tional</w>\ncrow ds</w>\nin visible</w>\nru ins</w>\nda k</w>\nsi p</w>\npla que</w>\np ouring</w>\ncomple x\nz ine</w>\nste ad\nf let\ntrans mission</w>\nlo way</w>\nar un\nincre asingly</w>\nau d\ntransp aren\ncro wned</w>\nsc oun\nblizz ard</w>\nlux u\nfi ers</w>\nachieve ments</w>\nhun ters</w>\nrock ed</w>\nbas in</w>\nvio let</w>\npro ves</w>\nachiev ing</w>\npro sper\nse ga</w>\nflo at</w>\nvi an</w>\nxi v</w>\npol ic\ntur a</w>\napproxim ately</w>\nwander lust</w>\nkeep ers</w>\ngeta way</w>\nco d\npol is</w>\nbr yan\ncol ts</w>\ntal ents</w>\nyo gur\ngluten free</w>\nwri st</w>\ngr y\ncze ch</w>\nðŁİ Ī\nev ille</w>\nðŁı Ī\nto x</w>\ndani els</w>\nam er</w>\nbi ds</w>\nweare one\nme tab\ng t\nboy z</w>\npd x</w>\npos session</w>\npu shed</w>\nshr ine</w>\nreali stic</w>\ntri gger</w>\nna vi\nru mors</w>\nn af\njen kins</w>\ntr un\ncomm uni\nÃ Ĺ</w>\ngam ers</w>\narm or</w>\nmoham med</w>\nbal cony</w>\ny ah\nstron gest</w>\nrhy thm</w>\nunfor gettable</w>\nk p\nho bb\ncusto dy</w>\ngreg or</w>\nr ita</w>\naes thetic</w>\nil ation</w>\nsponsor ing</w>\nn ay</w>\nkid napp\nsh s</w>\nra jas\nme g</w>\nsignific antly</w>\nbutt ons</w>\nla c</w>\nver sions</w>\nessenti als</w>\nopini ons</w>\nk ro\nd printing</w>\nwi dely</w>\nd k</w>\nur an</w>\ny al\nreque sted</w>\nc n</w>\ncur ric\nplu m</w>\ngr un\nv m\ndev on\nm yo\nrel ation</w>\njuvent us</w>\nrou ge</w>\nmin ority</w>\nmin es</w>\njupit er</w>\nn ine\noxy gen</w>\nfran kie</w>\nune sco</w>\nfab ric\ndisgu sting</w>\nsal man</w>\ndete ction</w>\nlan ka</w>\nd ac\nðŁĩ« ðŁĩ·</w>\nargu ment</w>\nshel ves</w>\ncel tics</w>\nrober to</w>\npi gs</w>\nhe dge\nfau l\npow ering</w>\nbutter flies</w>\nfi r</w>\nre make</w>\natt i</w>\ncom o</w>\nemp ha\nkend all</w>\npoke mon\nse ating</w>\nd ans</w>\nbald win</w>\nðŁĳ »</w>\nlesli e</w>\none direction</w>\nti mber</w>\nim an</w>\nfon t</w>\ne der</w>\ndi on</w>\nste ph</w>\nfor mat\ngre gory</w>\npro p</w>\nhe x\nru in</w>\nsor y</w>\ninf er\nn aw\nbar ak</w>\nsd gs</w>\nkar ao\nlu sh</w>\nv ander\nend ent</w>\ng is\na fro\nsoc cer\nay an</w>\nt uni\nlun g</w>\nda yof\nalex a</w>\nmar ath\naddic ted</w>\nag ile</w>\nhy gi\nlight weight</w>\nì §\nmand ela</w>\njo ey\nanc y\nhu m</w>\nbi r</w>\nmemor ial\njim in</w>\nging er\nv ak\njav ascri\ncro ps</w>\norig ins</w>\nd ari\npi per</w>\nim port</w>\naggre ssive</w>\npredic tion</w>\nre pairs</w>\ncr acker</w>\nvoy age</w>\nni ke\nmu mmy</w>\nlinke din</w>\ncountry side</w>\nbor der\ngla ss\nper t</w>\ns als</w>\nsho e\nautograph ed</w>\nwal nut</w>\ncolle gi\nsal ary</w>\npa iring</w>\nðŁĮ ¸\ncath ol\nswee the\ndefe ats</w>\nstreng then</w>\nroof top</w>\nimpro vements</w>\nbarri ers</w>\nur u\nt ally</w>\nru led</w>\nðŁĨ ļ</w>\nnai ja</w>\nemo ji</w>\nper cent\ngi o\npro bs</w>\non ce\nadm its</w>\npa ths</w>\nli ar</w>\nday tona</w>\npe ters</w>\ncal i</w>\ncal li\nmu g\no sa\nap h\nab y\nhy de</w>\neth nic</w>\npla ins</w>\nol f</w>\nhaha hahaha</w>\nholi c</w>\n?! ?!</w>\nsu bli\nbl acks</w>\nmo t\ngh ton</w>\nlo vin</w>\nb rent</w>\nbar u</w>\nl ati\nde w</w>\nate au</w>\nq a</w>\npain ful</w>\nbu sters</w>\nst atic</w>\nðŁĩ¨ðŁĩ ¦</w>\nnote book</w>\nout fits</w>\nsi es</w>\nr f</w>\nfloo ds</w>\nÑ Ģ\nthro at</w>\nsu ici\nro vers</w>\nbeng al</w>\npre pares</w>\nblo g\nmini ature</w>\nØ ¨\nam phi\ncom b</w>\nr sp\nin timate</w>\ngreen e</w>\nÌ ĩ</w>\nal tar</w>\nsurg ical</w>\nves sel</w>\n... ?</w>\ngav in</w>\ng ator</w>\nthreat ened</w>\nz ar</w>\nrob bery</w>\ndi er</w>\npromo ted</w>\ny g</w>\nx s</w>\nsu bs</w>\ninter viewing</w>\nthreat ening</w>\ndo zen</w>\nme ado\nwater fall</w>\nnintendo switch</w>\ncal um</w>\nmini sters</w>\ndro p\nunivers ities</w>\nwar ned</w>\ntac tics</w>\nðŁĩ ²\nrefu se</w>\nad ju\nv ast</w>\nðŁĺ ´</w>\nmc fc</w>\nlib ya</w>\nno filter</w>\ndistribu ted</w>\nre ser\nron nie</w>\nde co</w>\njavascri pt</w>\nmon k</w>\nintere sts</w>\nfle x\nmar tha</w>\nsti es</w>\noo d\nðŁ¤£ ðŁ¤£\ne un\nb ali\ng omez</w>\nsti mul\nmoder ate</w>\nd ity</w>\nir is</w>\nstra w</w>\nconsist ent</w>\ndirec tions</w>\nadop t\nsal sa</w>\ncro o\nreco vered</w>\nblack friday</w>\nlan caster</w>\naccep t\nweareone exo</w>\nbuil ds</w>\nfree man</w>\nair plane</w>\nditi on\nbel ong\njam ie\npit ching</w>\nli f\nom in\ncri spy</w>\npre pping</w>\nve g</w>\nchan g</w>\naccompli shed</w>\ngraci as</w>\ndolph in</w>\nelec tor\nculin ary</w>\nsuper bowl</w>\nwal a</w>\npur suit</w>\nblack berry</w>\nbe an\ncardin al</w>\npro ved</w>\nimmigr ant</w>\nstric tly</w>\nholocau st</w>\npass age</w>\nha us</w>\ncou p</w>\npur se</w>\nhar ass\n< <</w>\nle ed\nado be</w>\nst ad</w>\nlegis lat\npar ked</w>\npri yan\nsil va</w>\nkri st\ns the\nfun ky</w>\nig a</w>\nsett lement</w>\nph s</w>\nt mrw</w>\nstre ssed</w>\nhun t\nho ckey\ntreas ures</w>\ncham bers</w>\nol u\nhu t</w>\nmar ley</w>\ntex ture</w>\nwilder ness</w>\nmm ing</w>\npoten tially</w>\nom aha</w>\nju dy</w>\nto es</w>\nspo iler</w>\ndistingui shed</w>\nfeli x</w>\nah u</w>\nrecommend ations</w>\nzom bies</w>\nhit ler</w>\ntri ple\ncolla pse</w>\nmotiv ated</w>\nulti mat\ngg ling</w>\nso y\nci gar</w>\nfo ren\nvine yard</w>\ngl itter</w>\nfin dings</w>\ncolon ial</w>\nhun ter\neri k</w>\nden s</w>\nbeet le</w>\nlot te\nsub tle</w>\ns matter</w>\ntru sted</w>\nexperim ental</w>\nnam ents</w>\nðŁĺ Ĩ\nregi on\nacquis ition</w>\nbre eding</w>\nquarter back</w>\nam reading</w>\noo td</w>\nru de</w>\niniti atives</w>\nst out</w>\nhy ung</w>\nout come</w>\nal fred</w>\nmic s</w>\nexper tise</w>\nbacter ia</w>\npengu ins</w>\njump er</w>\nvalen cia</w>\nbar k</w>\ning day</w>\nsell ers</w>\ncontrac ts</w>\nhou ston\ncommissi oned</w>\nadap tation</w>\nswan sea</w>\nsanti ago</w>\ncommon wealth</w>\nju dging</w>\nsub mission</w>\nsco rer</w>\ntom my\nÃ± o</w>\nex quis\nfil ing</w>\nexplan ation</w>\nalli son</w>\nwemb ley</w>\nri dge\nchev y</w>\nsan tos</w>\nown ership</w>\ncogn itive</w>\nfavour ites</w>\nsh ed\nphil anthro\ndele ted</w>\ngo dd\ns nor\ngui delines</w>\nff ing</w>\nje ep\ncli ps</w>\nsw amp</w>\nan or</w>\nguil d</w>\nbol ton</w>\nspring field</w>\nmunici pal</w>\ngoal keeper</w>\nye on</w>\nðŁĺįðŁĺį ðŁĺįðŁĺį\nãħĭ ãħĭ\nwater front</w>\ngra ve\ncontempor ary\nar ity</w>\nÃŃ a</w>\nsle eps</w>\nsy rup</w>\nal am\npi re\nco yo\nmoto gp</w>\nty son</w>\nkej ri\ncir cul\nsing ly</w>\ncr unch</w>\ncomplic ated</w>\nnostal gia</w>\nk op\nmo ve\nk ale</w>\nmac ro</w>\nmid west</w>\nh ans</w>\ntri bal</w>\nnu de</w>\nà¯ į</w>\nbey once</w>\ncongratul ate</w>\ncat er\nleagu e\nðŁĻ Ĭ</w>\nla dder</w>\ncra shed</w>\ntech nic\nkarao ke</w>\nharass ment</w>\nro ts</w>\nexperi encing</w>\nkri sten</w>\nðŁĩ ³\nðŁ¤ Ĺ\nreflec tions</w>\nguin ness</w>\nillustr ator</w>\nðŁĻı ðŁı»</w>\ncen ter\nnar row</w>\ncomm ons</w>\nregul ations</w>\nÙ Ĩ\nhar m\ncro ft</w>\ncu ssion</w>\nhong kong</w>\nst ical</w>\nintern ship</w>\nzo e</w>\ncho p</w>\nhoo ds</w>\nestim ated</w>\nbatter ies</w>\nberke ley</w>\nsmooth ie</w>\nshau n</w>\ncro s\n~ ~</w>\ncam pe\nhu mp\nb g\nproto type</w>\ncl ick\nshaw n\nre viewed</w>\ntem pl\np f\njed i</w>\nblo gs</w>\nray mond</w>\nas th\nba h</w>\nav ail</w>\nscot ch</w>\nleaf s</w>\nnik ki</w>\nto k\nhol low</w>\nur ges</w>\nof t</w>\nun like</w>\nlat in\nu e\ncat ering</w>\nmil i\nalter nati\nma ver\nÐ ¸\nag le</w>\npre order</w>\nlu x</w>\ncu cu\nðŁĳı ðŁĳı</w>\nt art\nâĿ¤âĿ¤ âĿ¤</w>\narab ic</w>\nrapi dly</w>\nar rang\nall en\ntravel tuesday</w>\npa ws</w>\nflo ws</w>\nst ability</w>\nflu id</w>\nca pp\ncan berra</w>\nuu uu\nsp ani\ndemon stration</w>\nm la</w>\nplac ement</w>\nm w\npresi dents</w>\nawe som\nbever ly</w>\nani st</w>\nne al</w>\nfather sday</w>\nreferen dum</w>\nla hore</w>\no aks</w>\ndeb bie</w>\nhalf way</w>\ngho sts</w>\nde bor\nmatthe ws</w>\nfi at</w>\nt fw</w>\npre sen\nrob i</w>\nde d\nbro ck</w>\nlaugh ed</w>\nam ounts</w>\nbam boo</w>\nkinder garten</w>\neat en</w>\nmtv hottest</w>\nbreak out</w>\nu sic</w>\nfra ser</w>\nlegis lative</w>\np ang\nmodu le</w>\nsam my</w>\ngo ver</w>\near ns</w>\nexpe dition</w>\ngar h</w>\nconcep ts</w>\nchar lie\nla va</w>\nbachel or</w>\nveg gies</w>\ndeter mine</w>\nel lie</w>\nun locked</w>\nfru it\ndal la\ncou pe</w>\nwash ington\ndepo sit</w>\niv ory</w>\npau la</w>\nchic ag\ngu cci</w>\nðŁİ ĥ</w>\ncul tiv\npier ce</w>\nli fted</w>\nstu mb\nre cover</w>\nmusc les</w>\nconduc ting</w>\ncb s\nmcla ren</w>\nsophi a</w>\ncel lu\noce ans</w>\nup loaded</w>\ngame play</w>\nmal dives</w>\nkim ber\navo i\nrac er</w>\nca ine</w>\ncav s</w>\nh ana</w>\nli ga</w>\nra ven</w>\ninter vention</w>\ninaugur ation</w>\noo h</w>\nat traction</w>\nmerchandi se</w>\ntune in</w>\nli king</w>\njuni ors</w>\nint ended</w>\natt acking</w>\naqu arium</w>\ni wd</w>\ncomp onents</w>\nsur ing</w>\ncent u\nyogur t</w>\nðŁı ĥ\nshow room</w>\nop tical</w>\nty our\nju dge\nyi eld</w>\nan to\npl c</w>\ntransparen cy</w>\nrecy cled</w>\nchi ef\nar om\nambassad ors</w>\nplan et\nâĿĦ ï¸ı\nom ed</w>\nvaness a</w>\ncour t\nmar gar\nhal ey</w>\nv r\nreg ina</w>\npd ates</w>\nhi span\nlive stream</w>\nâģ £</w>\nya hoo</w>\ngal la\nsecu red</w>\nw ir\nbene ath</w>\noff l</w>\nn il\nam b</w>\nye g\nout let</w>\nu te\npe ep</w>\nlind say</w>\nbent ley</w>\n... !</w>\nhe el</w>\ntrilo gy</w>\nvo s</w>\nty re</w>\nthere fore</w>\ntor onto\nab i\nsimp li\nja e\nexten sive</w>\neleph ants</w>\ns or</w>\norient ation</w>\nim peach\nre play</w>\nconstru cted</w>\npeter son</w>\npa is\npor ted</w>\ncustom s</w>\ncolla p\nad u\nhigh lands</w>\nsal em</w>\nshel by</w>\nko vic</w>\nstra in</w>\nro sie</w>\nsen ators</w>\nsnap s</w>\nbo bb\nsuz uki</w>\nbla des</w>\nk p</w>\nlo lo\ngener ate</w>\nsi ght\nma e\nstruc tural</w>\npredic t</w>\njump ed</w>\nah mad</w>\nsun g\njust ice\ngla m</w>\nvol vo</w>\njubi lee</w>\nde tention</w>\nlo sses</w>\npu ri\nevery time</w>\nÐ °\nra o</w>\ned ge\nli mer\nrese mb\nhar old</w>\nre tri\nsacri fic\nsurpri ses</w>\nam c</w>\nsrilan ka</w>\nbar bie</w>\nmen s\nfin n</w>\nag s</w>\nukrain ian</w>\nem brac\nî Ĳ\nflav ors</w>\nhom er</w>\nlau re\nou th\npr iced</w>\nver de</w>\nfir m\nah s</w>\ncu b\ntre y</w>\npar anor\npro fit\nin dv\nwho a</w>\nhar sh</w>\nal ot</w>\ncrit ics</w>\nhu bby</w>\nfi gur\ngi ra\nca stro</w>\nchan el</w>\nin put</w>\norigin als</w>\nten ant</w>\nyy yy</w>\nture rs</w>\nlincol n\nco on</w>\nlear n\nch ou\nac are</w>\no les</w>\ndin er</w>\nhy p\nbizar re</w>\nmc r</w>\nlet sgo\ndecor ating</w>\nðŁĮ İ</w>\nal ison</w>\nar vin\nf d\nreha b</w>\nmccar thy</w>\nlot tery</w>\nda h\nminne apolis</w>\neli gible</w>\ndiagno sed</w>\nemer ald</w>\ndestin ations</w>\ns ans</w>\nor y\nbla zers</w>\nn v</w>\nba il</w>\ndigital art</w>\nno c\nmal ta</w>\nsol ar\npi pes</w>\nalleg ations</w>\nno ck</w>\npo pe\nbri d\npremi er\nn x</w>\npresent ations</w>\nef a</w>\nbo ws</w>\nval ve</w>\nopp onent</w>\nĮ ë\nvisu al\ning le</w>\ncate gor\ne ter</w>\npo is\ndan i</w>\nat tract</w>\nneu tral</w>\nth ene\ncra shes</w>\nfred die</w>\nut ili\nc st</w>\nawak ening</w>\nslo ven\nquali fy</w>\npro of\nfair y\nle v\nfre ight</w>\nenjo ys</w>\ncup cake</w>\nflav our</w>\nâ ķ\nprotec tive</w>\nðŁĳı ðŁı»</w>\nis u\nad mir\nh mmm</w>\ncontinu ous</w>\nai res</w>\nrap tors</w>\nshowcas ing</w>\ny uk\npa ste</w>\nfollow er</w>\ninstru ctions</w>\nsp ru\n@ __</w>\nthe o\ndebu ts</w>\nve tte</w>\nsto w</w>\nes of\nach ed</w>\nsul tan</w>\nsand wich\nsom alia</w>\nfranc o</w>\ncar ne\nflu ffy</w>\nal pine</w>\njas mine</w>\nhe ated</w>\nviol in</w>\nple ss</w>\ndivor ce</w>\nper former</w>\nphi es</w>\nport sm\ndar a</w>\nkir by</w>\nlo p</w>\nchill i</w>\nfor th\nsky pe</w>\nðŁĩ®ðŁĩ ¹</w>\ncelebr ities</w>\ned y\nve e</w>\npo ison</w>\ney el\ngra bs</w>\nssi c</w>\nun o</w>\nwester n\nrail road</w>\nam er\nnumer ous</w>\ns v</w>\nfo w\nfi st</w>\nâĢ ĭ\nreque sts</w>\nmar tial</w>\nem my</w>\naccept ance</w>\nlau ra\nà¸ ´</w>\ner up\nhyun dai</w>\nout lander</w>\nu tt\nwrest le\nesp resso</w>\ndemand ing</w>\ng dp</w>\ngeo graphy</w>\nsas kat\ntro ll</w>\nconfe der\nsu es</w>\nse m</w>\nbe ts</w>\nt ful</w>\nto sh</w>\nteach es</w>\ncol oured</w>\ngal way</w>\nmac y</w>\ndis orders</w>\nbb cra\nat em\nfen der</w>\nlit ter</w>\ne sh\nprovi ders</w>\nrenov ation</w>\nnomin ate</w>\nps g</w>\nnomin ations</w>\njen na</w>\nshar p\nsome day</w>\nz ur\nbra ins</w>\nche shire</w>\npre y</w>\nhu go</w>\nÂ ¿</w>\nto ken</w>\nr v\ncar r</w>\ntac tical</w>\nzel da</w>\nkay la</w>\nfern ando</w>\nphotograph ers</w>\nj our</w>\numb rella</w>\nwoo dy</w>\ncongress man</w>\ndu mp</w>\nle vy</w>\nju an\nd azz\nsign als</w>\nla in</w>\nan u</w>\nmic hel</w>\npor ch</w>\nal den\nsibl ings</w>\ny ale</w>\npe el</w>\nsw ick</w>\ngg in</w>\nll c</w>\nk ale\ns con\nil d</w>\npat reon</w>\nre el</w>\nqu in</w>\nwit t</w>\nmar ty</w>\nmoo dy</w>\nton i</w>\nder y</w>\ng ators</w>\nspeci fically</w>\ndd in</w>\nly on</w>\ntr ick\nmeado ws</w>\np j</w>\nbor gh\nvi k</w>\ntu r</w>\nbron x</w>\npu ff</w>\nlan tern</w>\nðŁ¤ ¦\ng ently</w>\nbe stie</w>\nfac t\nrefu sed</w>\nfas ci\nmp y</w>\nðŁĶ µ</w>\ncross over</w>\nmead ow</w>\nindian apolis</w>\nduc ation</w>\nsle y\nloo m</w>\nmix er</w>\nnew music</w>\nfilm maker</w>\nprosper ity</w>\nli m</w>\nweek end\ncre amy</w>\nneu tr\nlu ther</w>\nh v\nnor thern\ntw o\nh ra</w>\ncat ches</w>\nappear ances</w>\nha bit</w>\nkitt ens</w>\nn v\nilla c</w>\ninf an\nregar dless</w>\nliz ard</w>\ndun k</w>\ncur tain</w>\nac om\nin tu\nve z</w>\ne min\nfl ats</w>\ncalend ars</w>\nem power</w>\nru ined</w>\nhun gary</w>\nvi d\nwe x\nu lum</w>\naber deen</w>\no sa</w>\nk t\nma ssi\nse emed</w>\ns den</w>\n' ?</w>\ntele phone</w>\nde fi\ninsp ires</w>\nme ow</w>\nz ones</w>\nbl ind\npl y\ntuc son</w>\nadvent ure\nge d\noy ster</w>\nðŁĳıðŁĳı ðŁĳı</w>\nout put</w>\ntt t</w>\nmetal lic</w>\nsma sh\nucl a</w>\nsco ts</w>\nperfe ct\nlu cy\nregular ly</w>\nsp ic\nrel ative</w>\nath ers</w>\nmis e</w>\nbatt ling</w>\ndeci des</w>\nmat a</w>\noccu pied</w>\nrandom ly</w>\ncat softwitter</w>\ngi an\nball y\nal ties</w>\nal lies</w>\nim men\nsy rac\nðŁĴľ ðŁĴľ\nl lan\nau r</w>\nk ut\nlam ar</w>\naffe cts</w>\nn ra</w>\nstar war\nðŁ¤ ĺ</w>\nsc ram\nen chan\npro cess\nluxu rious</w>\nar ray</w>\nsher lock</w>\ncomp ati\ndor f</w>\nstre ss\nm su</w>\ns with\nsal a</w>\nsof instagram</w>\nfo il</w>\nunder stood</w>\nqu ay</w>\nr p\nc ade</w>\nja w</w>\nen ab\nen coun\nðŁİī :</w>\ndo ck\nsatur n</w>\nmu ll\nlay out</w>\nra rely</w>\nhapp ily</w>\nfix ture</w>\nor ph\nover looking</w>\nher bs</w>\nm itt\npil lar</w>\nnol an</w>\npe tty</w>\nstr y\nu i\nmu k\no res</w>\no vers</w>\ná µ\nre creation</w>\nwe sley</w>\nri t</w>\nkejri wal</w>\nsto cking</w>\ng v</w>\nsubscri bers</w>\nmoo se</w>\nma e</w>\nber t\nopp re\nassign ment</w>\nu ro\nhigh lighting</w>\ncal vin</w>\nwe igh</w>\ncambo dia</w>\nav on</w>\nke m</w>\ndis abilities</w>\nread y\nchar gers</w>\np ads</w>\niz ing</w>\nilli an</w>\ntru ste\ncol leges</w>\nassoci ates</w>\nalban y</w>\nmil ton</w>\ncr on\nbu r</w>\nhar dly</w>\nsi ghts</w>\nanti ques</w>\ne cho\nsurpri singly</w>\nha iti</w>\ncap t</w>\nph p</w>\nop io\nine quality</w>\nequ al\nken y\nsch mid\nautograph s</w>\nren t\nqu er\ncit rus</w>\nchalleng ed</w>\nte c\nepi de\nfe st\nz hou</w>\nli me\ncitizen ship</w>\ncry stal\nconvin ced</w>\nmess enger</w>\ncopen hagen</w>\nâĿĹ ï¸ı</w>\nwar ran\ndevelop ments</w>\nï¸ı âĥ£\nfore x</w>\nhi ro\nsne akers</w>\nxi de</w>\nvi va</w>\nstere o</w>\nbat ting</w>\nss el\nho st\nbeng al\ncritic ism</w>\nq c</w>\ncr un\nattemp ted</w>\nry e</w>\ndetermin ation</w>\ncre ations</w>\nd read\nlabel s</w>\npos se\nanc er</w>\njoh an\nsi ster\npartner ships</w>\nles bian</w>\nk st</w>\nguaran tee</w>\nbar o\nfix ing</w>\nma son\nm ous</w>\nchem icals</w>\nt less</w>\nbio diversity</w>\npar o\nbhar at</w>\nac ol\nrefu ge</w>\nen te\nt iti\ndys sey</w>\nrespon ds</w>\nlef to\nin er\nse vel\nrahu l</w>\nol ine</w>\nfrank fur\ncho reo\nenjoy able</w>\nc to</w>\nstrugg les</w>\nwood land</w>\nheavy weight</w>\ngen s</w>\nrece p\nac cred\nðŁĺ ¡</w>\ntrans formed</w>\nlist en\nat op</w>\nn k</w>\nsur ge</w>\nbe re\ngover nor\nprison ers</w>\nclau de</w>\nt ill\nmu lator</w>\nemo tion</w>\nwater loo</w>\nstar t\nðŁĩ º</w>\nclean ed</w>\ngrand mother</w>\nfear less</w>\nafric an\nastron omy</w>\nðŁı ģ</w>\nà¸ Ļ\nthe world</w>\nsu itable</w>\nanth ony\nk and\ntt en</w>\nmeaning ful</w>\ndisc lo\njaco bs</w>\nÃ ¸\ntom linson</w>\nghe tti</w>\nty pho\nsub stan\nas co</w>\nte k\nnag ar</w>\nmu d\nam on\nvacc ine</w>\nf ty</w>\nfle sh</w>\nno el</w>\ninfl ation</w>\nportu gue\nglam our</w>\ntra m</w>\nv re</w>\nte qu\nroun dup</w>\nw yn</w>\nrejec ted</w>\nmosa ic</w>\nsi ghting</w>\ncal f</w>\no ta\ncom position</w>\ngo pro</w>\ngonz ale\ne ed</w>\nb ard</w>\ntu e</w>\neffec tively</w>\nwe en\nal to</w>\nri bs</w>\nrel ate</w>\nthir sty</w>\nfu rious</w>\ndi m</w>\nch ard</w>\nperfu me</w>\ns ny\nchur chill</w>\nk of\nmaster class</w>\nwa ve\nðŁĶ µ\ner in\nown s</w>\nto be\nsk illed</w>\nte m</w>\ngo f\nen i</w>\ntor i</w>\ncra zy\nl ick</w>\nresi stant</w>\nici al\nag ar</w>\n! :</w>\ng ali\ndel aware</w>\nbl itz</w>\nkoh li</w>\npu ck</w>\navail ability</w>\nhi malay\ninflu ential</w>\ncro chet</w>\nvictor i\nread ing\nho bby</w>\nvie t\nj as</w>\nen gra\nsk ul\nðŁĩ² ðŁĩ\neduc ate</w>\ntech no</w>\ndistric ts</w>\nblu es\nse tt</w>\nseven th</w>\nlear ns</w>\nee ee</w>\napocaly pse</w>\nhang out</w>\ncru el</w>\nmu tu\nbru h</w>\nhel en\nshe er</w>\nc tion\nkle in</w>\ntex ans</w>\nce real</w>\nsh ine\nne red</w>\ngra s</w>\nam bro\nf ella</w>\nhin du\nmatthe w\nli ma</w>\nmir anda</w>\nje wel</w>\nso ho</w>\neuro vision</w>\nneighb ours</w>\nchand ler</w>\nbe sides</w>\nðŁ¥ °</w>\nast ros</w>\nthu mbs</w>\nren ault</w>\nra ve</w>\nhi red</w>\nðŁĸ ¤\nit ary</w>\nz or\nbla zer</w>\nk ine\nea u</w>\nkat y\ndc comics</w>\npe c</w>\nro dgers</w>\nwater proof</w>\nkill ers</w>\nsuper int\npre serv\nas so</w>\nbrew ers</w>\npromo tional</w>\nsc am\nvilla ges</w>\nsket ches</w>\nju icy</w>\nfor life</w>\nau dit</w>\nso lo\nfundam ental</w>\nlen e</w>\nphilipp ine</w>\nt end\nconserv atives</w>\nsponsor ship</w>\ndd le\na ine</w>\nh tc</w>\nos i</w>\nhul k</w>\nw af\nà¸ Ļ</w>\nevalu ation</w>\nant ine</w>\nsle e\nrobert son</w>\nroo sevel\nag i</w>\nsophi stic\nemplo yers</w>\nbubb les</w>\nko wski</w>\ninter action</w>\nsh u</w>\nbou le\nic an\nj are\nhan k</w>\nleg itim\nk nicks</w>\nkar ma</w>\nrecei ver</w>\nper ks</w>\nu h\nsta ir</w>\nsun i\nlabor atory</w>\ngra ves</w>\nvoc als</w>\noo t</w>\nc ture</w>\nthri ve</w>\ntic o</w>\nãĥ ³\nb w\ncarto ons</w>\nmcdon alds</w>\ndra w\ny ung</w>\npl er</w>\nli d</w>\neth ical</w>\ngroo ve</w>\nent a</w>\ninternational womensday</w>\npat ron</w>\nwor ries</w>\nðŁİ ħ\nðŁĳ ĭ</w>\nka therine</w>\ndi az</w>\ntor i\nbach chan</w>\ntru st\nmin eral</w>\nic om\nbuil ders</w>\nbor n\ncol oring</w>\nlat te</w>\nca se\nrevolu tion\ntra der</w>\nox id\nchi pot\ninst antly</w>\nsou thern\nse hun</w>\npro b\nher nandez</w>\nlis bon</w>\nhu awe\np ong</w>\nme a</w>\nro oney</w>\nwheel chair</w>\nke en\nbe tt\ncor in\nregulat ory</w>\ndi splac\nka ren\nsch em\nsun sets</w>\nwh ales</w>\nremin is\nhe p\nhi de\nmar cel\npand ora</w>\ndo yle</w>\nth fc</w>\not to</w>\nno kia</w>\ntrans gender</w>\nko v\nhawai ian</w>\nsha ve</w>\nso vere\nexc er\nnick i</w>\npu g</w>\nst or</w>\nro th\nwee t</w>\nleg al\ndig nity</w>\npo w</w>\nhom age</w>\nðŁĩ³ ðŁĩ\ns re\ncan on\nla x\nwo ah</w>\nquart z</w>\nÃ± a</w>\ngree ting</w>\nflick r</w>\nnai robi</w>\nadvoc ates</w>\nan c</w>\nvi i</w>\neu gene</w>\nth ra\nc re</w>\nel an\npen sion</w>\nth letics</w>\nton i\nre agan</w>\nx v</w>\nsto re\nben ch\nhar lem</w>\ntodd ler</w>\nsent enced</w>\nâĻ¥ ï¸ı\nglob ally</w>\nche aper</w>\nu f\nma m</w>\nnic o</w>\nik u</w>\ntho u</w>\nni st</w>\ndam i\nth ala</w>\nrho des</w>\nsal e\nbow ls</w>\nâ Ī\nlas vegas</w>\nsanc tions</w>\nadm ire</w>\nmat ched</w>\nun able</w>\ntravel er</w>\nele ven</w>\nstraw berries</w>\nâĢĶâĢĶ âĢĶâĢĶ\nstu dio\njac ques</w>\nim s</w>\nvalu ed</w>\ns no</w>\ncheese cake</w>\nn xt</w>\ne os</w>\ns x</w>\nf x\nton ic</w>\nhat ch</w>\nchic ks</w>\ngra ds</w>\nhand ic\nr ory</w>\nas p\nri pped</w>\ndenti st</w>\nn en\nlu fc</w>\nâľ Ĭ</w>\ndi ge\nhop kins</w>\nsher man</w>\nf da</w>\nfor all</w>\nash ley\nstr and</w>\nh y</w>\nliqu or</w>\nbuffe t</w>\ness ence</w>\nphar ma</w>\nsuri ya</w>\nðŁĴĻ ðŁĴĻ\nfesti vals</w>\nz an</w>\nre fresh\npur ple\nuni forms</w>\nkenne th</w>\n= )</w>\nas an</w>\nhel sin\ntransform ers</w>\nk ali\nperson alized</w>\nchal k</w>\nbo bby\nâ Į\nthe mes</w>\ndepar ture</w>\nprin t\nillustr ations</w>\nqui et\nagre es</w>\ngri ff\nØ ³\nm iti\ntoge ther\nconven ience</w>\nab ar\ncar lo\nturt les</w>\ninfo sec</w>\nsome what</w>\nar lington</w>\nscholar ships</w>\nemir ates</w>\nmu ms</w>\nst ella</w>\nauton om\nfe ather</w>\ng ore</w>\nnom inees</w>\nfragr ance</w>\nÑ Ĥ\nw ong</w>\nthea stern</w>\ngr e</w>\nz illa</w>\nis i</w>\nbump er</w>\ngo o</w>\ndo zens</w>\nab duc\nâļª ï¸ı</w>\no ils</w>\ndon ors</w>\nsil icon</w>\ni pod</w>\nfortn ite</w>\nðŁĴ ¨</w>\ntor o</w>\nspark ling</w>\nconsci ousness</w>\npal a</w>\nnu m\nmoun ted</w>\nffin s</w>\nthi eves</w>\nteam mate</w>\npra b\nom er</w>\nta pes</w>\nbo d\nmit su\nste w</w>\ne re\np bs</w>\ntu sc\nlo we</w>\nra de</w>\nparliam entary</w>\nh m\ned gar</w>\nðŁĳĩ ðŁĳĩ\nto a\na gh\nhon i</w>\ns late</w>\nge ek\nap t</w>\nhard t</w>\nta p\nhoriz on\ngrow th\nmake over</w>\nhi l</w>\npaper back</w>\nid an</w>\nreha bil\ngi u\npossi bilities</w>\nlet tu\nfran co\nbo ss\nach er</w>\ndoes nt</w>\nmo e</w>\nta ker</w>\nhuss ain</w>\nml k</w>\ndi l</w>\nth ia</w>\nham a</w>\nreal ised</w>\nraven s</w>\ncurric ulum</w>\nm ith</w>\nk night\nted x\nr v</w>\nisai ah</w>\ncumb ria</w>\nbirth days</w>\nf ing</w>\npre z</w>\nmu barak</w>\nexquis ite</w>\nclear ance</w>\ny en</w>\npar i\nev o\nÃ º\nmodi fied</w>\napp lying</w>\nimple ment</w>\ndisco vering</w>\nchap man</w>\nindie game</w>\ndis k</w>\ncrowd funding</w>\nmach in\nli vel\nsty led</w>\nâĿ Į</w>\nma king\nrehear sals</w>\nnutr iti\nsubscri ption</w>\nand ro</w>\ncre ators</w>\ncar ries</w>\nky lie</w>\ncam den</w>\nappren tice</w>\ntax pay\nc ca</w>\ntuesday thoughts</w>\npis sed</w>\ner man</w>\ndete c\nfreed om\nmer i\n.. !</w>\npsal m</w>\nsun light</w>\nper spec\nbe ings</w>\nbook store</w>\nrock star</w>\nfun ctions</w>\np ence</w>\nfav es</w>\nz n</w>\nobam acare</w>\nsp ill</w>\ncoven try</w>\npi geon</w>\npi vo\nba it</w>\nkol kata</w>\nav al\ndon or</w>\nwa h</w>\nprivi leg\ntra ditions</w>\nrajas than</w>\nten ess</w>\nportugue se</w>\nyn es</w>\ntack les</w>\nde fic\ntor n</w>\npol ling</w>\nthor ne</w>\nin a\nbened ict</w>\nbar ry\ncal ories</w>\nver dict</w>\nsave the\nnor ton</w>\noff ice\nmain stream</w>\nimpro ves</w>\nfr on</w>\nrespon ding</w>\nreal tor</w>\nscotti sh\nde clar\nr l\nshi v\nsupp lier</w>\nre sting</w>\nswee ts</w>\nqu i</w>\n. âĢ¦</w>\nwhit ney</w>\nstartu p\nthank you\nteach er\nh alls</w>\nha ve\nhand made\npro ving</w>\nquar tet</w>\nro chester</w>\nli an</w>\nvirtu al\nmend es</w>\nof icial</w>\nmid lands</w>\nx box\nmeas uring</w>\no vo</w>\naccommod ation</w>\nbri des</w>\ncollegi ate</w>\nintellec tual</w>\nin car\nni ag\nðŁį ·</w>\nsf w</w>\ncoco a</w>\nco ats</w>\ncivil ians</w>\npresi dency</w>\nmat rix</w>\nsweethe art</w>\ntri athlon</w>\nwag ner</w>\nra dic\nplann er</w>\nthe o</w>\nexecu tion</w>\nk um\nthe walkingdead</w>\nsc ar</w>\nro tation</w>\nblo gging</w>\nbom b\nre son\nbb les</w>\nst are</w>\nassi sted</w>\ne do</w>\nbrand ed</w>\nwar nings</w>\nthor pe</w>\nacknow le\nsatis fied</w>\nsho res</w>\nri d\ndor a</w>\nphys ically</w>\nbi gh\nappro ves</w>\nha h\nric al</w>\nvers atile</w>\npret end</w>\nlu m\nab hi\nye e\nsp it\nãĢ Į</w>\ndj s</w>\nash tra</w>\nj t</w>\nven ues</w>\ngram mys</w>\ncy clo\ntr acker</w>\nover watch</w>\nrepl ica</w>\nel yn</w>\nnr l</w>\nlind sey</w>\nhom o\nballo ons</w>\nkitch en\nsi s\nam os</w>\nende av\nðŁĴ »</w>\na rec\nthu g</w>\nhoo ked</w>\nhr c</w>\nnew york\nbur gh\nameric as</w>\npatric ia</w>\nug u</w>\nap athy</w>\nha st\npsy chi\ncor k\npetro l</w>\nðŁİ ¬</w>\nak u\npo pping</w>\npsycho logical</w>\nau x\ng ma</w>\ncad illac</w>\nwa ste\nauth ent\nbri stol\nnam e\nque er</w>\nto ber\njer ry\ncom in</w>\nch ant\nprivileg ed</w>\nop ar\nlo ser</w>\ntex t\nmar ker</w>\nstri es</w>\nequ ally</w>\nak i\nchrist mas\ngare th</w>\nble w</w>\nem ma\nimag in\nse als</w>\nche at</w>\nconditi oning</w>\nj ana</w>\nren s</w>\ndar ies</w>\no asis</w>\ndisc ounts</w>\ncoun cil\ni ka</w>\nshir ley</w>\nvou cher</w>\nal ps</w>\nw x\nq r</w>\ndri ft</w>\nattemp ting</w>\nut c</w>\nØ ª\ngonzale z</w>\nm f\njo ker</w>\nparalle l</w>\npa re\naspe cts</w>\nproce du\nn p\nam a\nrale igh</w>\nbright en</w>\ngu ire</w>\nradi ation</w>\ncre scent</w>\nho b\nil le\nstr and\nv ore</w>\nn ard</w>\nche st\ndi wali</w>\nav atar</w>\nal der\nd ling</w>\npa thetic</w>\nðŁĴ ĺ\nspir it\njor ge</w>\nfilm making</w>\nðŁĻı ðŁĻı\nchalleng er</w>\nb j</w>\ndown town\nht ml</w>\nade qu\ntwi sted</w>\nin ely</w>\n( '</w>\nwra ps</w>\noper ational</w>\ny ne</w>\nn us</w>\nmag net</w>\nmarket place</w>\nhealth ier</w>\nsnap shot</w>\ndam on</w>\ninter ven\nfe derer</w>\now ls</w>\nbiscu its</w>\nj p\nro deo</w>\nblue berry</w>\nlec tion</w>\nfron tier</w>\nsumm ers</w>\nre yes</w>\npede strian</w>\ngo l</w>\ncaf fe\nrefur bi\nbou lder</w>\nme ghan</w>\nspeci alty</w>\nla ss</w>\ne i</w>\nsuspec ts</w>\nappro x</w>\nrr r</w>\nra th\nst im\ncru shed</w>\nhe d\nwh un\nlo af</w>\ncr ore</w>\nriver a</w>\ngene tics</w>\nso ck</w>\nwa sted</w>\nny pd</w>\nansw ering</w>\ndo ve</w>\nbel la\nol in</w>\ndu n</w>\nfi ji</w>\npre tty\nspar kle</w>\ny un</w>\nj d\neuro pa</w>\nli fts</w>\nam ber\nmu r</w>\nte k</w>\nboy d</w>\nroy alty</w>\nin do</w>\nri b</w>\ngo tham</w>\nti est</w>\ninst alling</w>\nke mp\nthe photo\ncos mic</w>\n) ))</w>\nwhole sale</w>\nloy ment</w>\neas y\nsu ing</w>\nsett led</w>\naf p</w>\npro ver\nsuppor tive</w>\nre es</w>\nne ath</w>\ndeli ber\nc Ã©</w>\nwel come\npic oftheday</w>\nnew born</w>\npat ty</w>\nsun s</w>\nsi est</w>\nfl int</w>\ndiffe rently</w>\nspo ilers</w>\ntroop er</w>\ng ins</w>\ncor y</w>\nlook out</w>\nequi pped</w>\nta pe\nto by</w>\nresear cher</w>\nu sh</w>\nke yes</w>\nal ma</w>\ninduc tion</w>\nk w</w>\nk har\nsl ick</w>\nbri de\ne ur\ncra ving</w>\nbook ings</w>\nch es\ntr unk</w>\nvern on</w>\nsp her\ncryst als</w>\nrel atively</w>\npom pe\nuni ons</w>\nval ley\npar a\nw ant\nok c</w>\nde af</w>\nser gio</w>\nlen non</w>\nsh ay</w>\ncr a</w>\nv at</w>\nhe e\nt we\nliqu id\npol y</w>\nðŁİ ģ\nb ent</w>\nbe aring</w>\nmotor sport</w>\nbar be\nte sti\nhan i</w>\nfin ancing</w>\nastron aut</w>\nwater colour</w>\nri sh\ncomic con</w>\ngar t\nwr ong\nber n</w>\nit an</w>\nste pped</w>\nfil ters</w>\nc low\nme x</w>\ndem ons</w>\nall o</w>\nexpand ed</w>\ncomm and\net ers</w>\ngo ats</w>\nsi ri</w>\ny r\npot tery</w>\nmari on</w>\ni le\nel an</w>\nsan to</w>\nperson a</w>\ndu ke\nhom eless\nli ghted</w>\nwheel er</w>\nchang er</w>\ncab bage</w>\nsur real</w>\nham burg</w>\nsma shed</w>\nstr an\nk not</w>\ni art\nob i</w>\nbe dro\ndi al\nth ick\nb ingo</w>\nfu s</w>\nvacu um</w>\ncon ve\nati ve\naccur acy</w>\naccoun t\nre fer\nri z\nspider man</w>\nban a</w>\nr ite</w>\nu b\nab s\nmedic al\nlin k\nsi em\n> >>></w>\nbe tra\ng lowing</w>\nre actions</w>\npupp et</w>\nspa ghetti</w>\nang s</w>\nre medi\npray for\nroy ce</w>\nchar lotte\n£ ï¸ı</w>\ngh et\naffe cting</w>\nro de</w>\nsoci alist</w>\nmo ses</w>\naz i</w>\no it\nre porters</w>\ncd t</w>\nap ing</w>\ns nat\nminim al</w>\nwa ist</w>\nsie ge</w>\n>> >>\nri g\nschmid t</w>\nh are</w>\nec a</w>\nthor n</w>\nhe mp</w>\nes the\ncly de</w>\nth a\ndon ut</w>\nmoham ed</w>\nling erie</w>\nle gg\ncarpen ter</w>\nperform ers</w>\nde a</w>\nimag ined</w>\ncur se</w>\nla sh</w>\nct r</w>\nagu a</w>\nro ar</w>\ngr i</w>\nro le\nj fk</w>\nresur rec\nroosevel t</w>\nmaril yn</w>\nsm alle\nwill is</w>\nwa ited</w>\nchar ities</w>\nthe res</w>\nli k</w>\norigin al\ncar i\nc ough</w>\ncru ci\nla gun\ncontra st</w>\nk ou\narm our</w>\nre moving</w>\nt ent\nmaz da</w>\nbri ghter</w>\nthi ef</w>\ncor ner\ntequ ila</w>\nbuzz ing</w>\nal bi\np am</w>\naz ure</w>\ndisc oun\npixel art</w>\npossi bility</w>\nham ont</w>\ntra des</w>\nbu da\nhi ve</w>\nvers y</w>\nfin ch</w>\ntran spa\nem i</w>\nterri fying</w>\nin qui\ng ba</w>\nsub stitu\ncollec ti\nplac ing</w>\ncin dy</w>\nk ann\npa tho\ndiamon d\nmour inho</w>\nguine a</w>\nanthro po\nair s</w>\npu mps</w>\nì ļ\npas o</w>\ncur ling</w>\nan ita</w>\nresi dency</w>\nne wh\njo on</w>\ncigare tte</w>\nque ue</w>\nex trac\ngam es\nspl en\nex press\npublic ly</w>\nbon nie</w>\ntribun e</w>\nba ek\nreason able</w>\nc or</w>\ntimo thy</w>\nshe eran</w>\nÄ ±\nf dn</w>\nsu tton</w>\nconcentr ation</w>\ncarav an</w>\nx avier</w>\nal ger\ncy lin\nfreder ick</w>\nner ve</w>\npe ak\nlettu ce</w>\nj ail\npre game</w>\nkav an\nup graded</w>\neco logy</w>\nsquad ron</w>\ngra pes</w>\ngoo g\npa stry</w>\nðŁĹ £</w>\nãĥ¼ ãĥ\nmil ano</w>\nawa z</w>\npresen ter</w>\nðŁĮ ¿</w>\nher d</w>\nking s\ntem plate</w>\nfl our</w>\nh v</w>\nk ley</w>\ni ya</w>\nspe c</w>\nat er\nfrankfur t</w>\nco ch\ntex ting</w>\ndel i</w>\ncommuni st</w>\nregi ment</w>\nele anor</w>\nanticip ated</w>\nðŁĳĮ ðŁı»</w>\nthephoto hour</w>\nran o</w>\nsurvi ving</w>\nsimul ation</w>\ndaw son</w>\nar in</w>\naqu a</w>\nm or</w>\nâĢ¦ .</w>\ncin o</w>\nira qi</w>\nsh az\ndun dee</w>\nwe s\ndra u\nhann ah\ns news</w>\noccup ation</w>\nste en</w>\nx m</w>\nang les</w>\nsett ings</w>\ngur u\nkno x\nor ca</w>\nshap ing</w>\nw ent\ndr illing</w>\nzz ie</w>\nbr i</w>\nkis sing</w>\nfin d\nma ine\nâŃĲï¸ı âŃĲï¸ı\nðŁĮ į</w>\nlar ry\nbu sted</w>\nta vern</w>\nacti vely</w>\n- \"</w>\nreplac ing</w>\nno d</w>\nun lock</w>\n. \"\nâŀ ¤</w>\naffili ate</w>\nto w</w>\nl n</w>\nhappy newyear</w>\ndi f\nj m</w>\ngreen wich</w>\ncontro versy</w>\ndaw g</w>\ncon dol\nsav annah</w>\ncompens ation</w>\ntouch down</w>\nte o</w>\namb itious</w>\nembro i\nconvic ted</w>\niart g</w>\nbar ack\ntr ance</w>\ntestim ony</w>\nau dition</w>\nthum b</w>\nmy ths</w>\nbe x\nque z</w>\norch id</w>\nden y</w>\nentit led</w>\nhoo d\ngr ant\nin box</w>\nblue jays</w>\nr illa</w>\nsmalle st</w>\nbur den</w>\nin famous</w>\ndivi ded</w>\nboun daries</w>\nt ter\nel t</w>\nwy oming</w>\nbe verage</w>\nme sm\none ws</w>\nbudd hist</w>\ny ana</w>\nas sad</w>\nis ms</w>\nbar rett</w>\npredic ted</w>\nback to\ntw it</w>\ne there\ncap tains</w>\nescap ed</w>\nay o</w>\nlam borgh\ngard ner</w>\nla ps</w>\nk al</w>\nadverti sement</w>\ninsec ts</w>\nna po\nam en\nac y\nr and</w>\ng k</w>\nte h\nk athle\ntri dge</w>\npan cake</w>\nat ro\npyram id</w>\nbu la</w>\nparal ym\ngau ge</w>\nen cies</w>\ntom y</w>\nbiscu it</w>\nbut cher</w>\nquali fier</w>\ncoun ty\nke i\npo ols</w>\ndar ker</w>\nshould ers</w>\nðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸\nsp re\n( \"</w>\nwrit ers\ng m\nðŁİ ĵ</w>\nk nit\nhu ff\nmt b</w>\nphilli es</w>\no st</w>\nden is</w>\ng art</w>\nlicen sed</w>\ninter face</w>\nex cel</w>\nd well</w>\nfrom the\nco fficial</w>\naz zi</w>\nappear ing</w>\nfore st\nn ana</w>\nke ith\nmanufac turers</w>\nbeck ham</w>\n) ?</w>\ne se\ncol ony</w>\ndelic ate</w>\nut ter\nmc in\ntranspl ant</w>\npre ferred</w>\npar d</w>\nari e</w>\nhu b\npo ds</w>\nperspec tives</w>\npic t</w>\ndel u\napp er</w>\nbe than\np mo\ncrimin als</w>\nfemin ism</w>\nsh ack</w>\ncircum stances</w>\nfel las</w>\nprote sting</w>\nwa x\nsugge sted</w>\nt ator</w>\ndre w\nom ni\nfa ke\nkath y</w>\nre b</w>\ndel ine</w>\nber ni\nmi sty</w>\nðŁĳ ©\ner able</w>\nbreak through</w>\nmen swear</w>\nmillenni als</w>\nchan yeol</w>\nla z\ninser t</w>\nrep lies</w>\nphra se</w>\nn x\nihear tawards</w>\naudre y</w>\ngran ite</w>\nrac ec\nori e</w>\nter ra</w>\ninnov ations</w>\nbritt any</w>\nat eral</w>\npe ar</w>\nbio logical</w>\nsh ments</w>\ninstitu tion</w>\nm sn\nfrequ ency</w>\nd man</w>\nneg lec\nt f\nste fan</w>\nfox news</w>\nty po\ncomm s</w>\nsequ ence</w>\ncar men</w>\nwh ites</w>\neconom ist</w>\nexe ter</w>\nse um</w>\nre sorts</w>\ncas ually</w>\nbun de\ndivi de</w>\nØ ¹\nga g</w>\ncre ed</w>\nreti re</w>\ncau cus</w>\nrapi ds</w>\nwrestle mania</w>\ntul sa</w>\nsunder land</w>\nfundam ent\no di</w>\nyam aha</w>\nv ary</w>\nintri gu\nel se\nbe acon</w>\nan gie</w>\ntra ded</w>\ntran sm\ng ents</w>\nkn itting</w>\ngal ac\nðĿ Ĺ\nu to\nsea side</w>\nhol t</w>\nre rs</w>\nfar go</w>\ntrain ers</w>\nmon soon</w>\nb ale</w>\nsou ght</w>\nmad die</w>\nh w</w>\nco li\nfr an</w>\nfav s</w>\nðŁĴ Ķ\nint ent</w>\nr ally\ns bs</w>\nlemon ade</w>\nbarack obama</w>\nbre ad\nstick y</w>\nexplo sive</w>\nchel ten\nt j\nas soc</w>\nram en</w>\nhom ies</w>\nv log</w>\nmi ster</w>\nlor d\nâĢįâĻ Ģï¸ı\naly ssa</w>\nsketch book</w>\nru mble</w>\ncat ch\nmigr ant</w>\ndiscipl ine</w>\nun likely</w>\nchronic les</w>\nfl ora</w>\nsl ams</w>\nam id\ns boro</w>\ncoo p</w>\nju mps</w>\ntran qu\nmel is\nsof ia</w>\nen ri\ngab e</w>\nsy ri\nnicol as</w>\ncha i</w>\nw v\nbe cky</w>\nfoo ty</w>\nta o</w>\nsuppo se</w>\nðŁĺįðŁĺį ðŁĺįðŁĺį</w>\nplu sh</w>\nri sh</w>\nðŁ¤ ĵ</w>\nk ha</w>\nsatur days</w>\nac cent</w>\nhe c\nlim it\ncarl ton</w>\nwi red</w>\ntaylor swift</w>\nðŁĺ ĳ</w>\nsq l</w>\nhar ro\nrecipi ents</w>\ng at</w>\ngo p\nth of\namaz ed</w>\ngh an\nðŁıĨ ðŁıĨ\npor to</w>\ncla re\ndi stant</w>\nna c</w>\nohi o\nðŁĻı ðŁı¼</w>\nmt n</w>\nanti bio\ndino sa\nme sa</w>\npar tial</w>\nb v\nlear nt</w>\nlov ato</w>\nquesti on\nex tract</w>\ngossi p</w>\ngi bb\nniag ara</w>\nðŁĳ ¨\ndispla yed</w>\nso oner</w>\nste vie</w>\nnug gets</w>\nml n</w>\nbro m\ntur b\ngive aways</w>\nstu pi\nbl ink</w>\nc ili\nconven ient</w>\nmo h\nvi ve\nf ric\ncau se\ncham ber\ncu les</w>\nne arest</w>\nis se</w>\nsmall biz</w>\nt j</w>\ncanadi ans</w>\nsmar ter</w>\nbra sil</w>\nra re\nque tte</w>\nw ha\ncand le\nat omic</w>\nðŁĳį ðŁĳį</w>\nwarri or\nrelax ed</w>\nstri ps</w>\nne ur\nk ka</w>\nr fc</w>\njen sen</w>\nreco vering</w>\nrespon ses</w>\nsal am\northo dox</w>\nacti ve\nell ers</w>\nn it</w>\nâŃ Ĳ</w>\nmetro politan</w>\ncentu ries</w>\nvi da</w>\ngra ding</w>\ntranspa rent</w>\nsim ple\ndo ts</w>\nsuperint endent</w>\nelev ator</w>\nautom ated</w>\nred skins</w>\nima m</w>\nsummer time</w>\njona than\nge aring</w>\nmichel le\nconfl ic\nm ice</w>\nto te</w>\npubli sh</w>\npa x</w>\n) -</w>\nna iled</w>\ná ´\ntele scope</w>\nser bia</w>\nba b</w>\nape u\nst ically</w>\nsen ti\nr ats</w>\nisol ated</w>\ngrou p\nhat red</w>\nparanor mal</w>\nstan ley\nali on</w>\nsafe ty\nl s\nà¤ °</w>\nnex us</w>\nalexand ra</w>\nmas ks</w>\n+ +</w>\ntr on\nau k</w>\nbrother hood</w>\nbrow se</w>\nmix es</w>\nsim one</w>\nmu sk</w>\nappro ve</w>\nlo la</w>\nex p</w>\nper th\nfu turi\nun seen</w>\nd m\nchel se\nsc outing</w>\no we</w>\nportsm outh</w>\nk ram\nmi ze</w>\ndi spen\nsu p\nd lc</w>\nadver t</w>\ntere sa</w>\nis le\ncy cle\nmet all\nshi elds</w>\nmarin ers</w>\nra z</w>\ning en</w>\nfun d\nan go</w>\njon es\no ka</w>\nmad den</w>\nbroc coli</w>\ndomin ic</w>\nsitu ations</w>\nmer o</w>\ncric ke\npuni shment</w>\nd b\nsha king</w>\nðŁĺ ļ</w>\nm q\nari ans</w>\nle h\ncla w</w>\nwe ds</w>\nd ure</w>\nni el\nj elly\ngour met</w>\ntra ders</w>\nle vi</w>\nw ages</w>\nkne es</w>\nwi se\nheaven ly</w>\navi d</w>\nmelo dy</w>\nz ack</w>\nban anas</w>\napprentic e\npro p\nfun ny\no de\nrespec ted</w>\nme gan\nfe wer</w>\ndra fted</w>\nmed it\ngra pe\nus army</w>\ncru sad\nvo cali\nprepar ations</w>\nnon sense</w>\nus age</w>\nth r</w>\nro th</w>\nwiz ards</w>\ninsi de\npromo tions</w>\nmon a</w>\nred sox</w>\nsi g</w>\neleg ance</w>\nch ia</w>\nuniver sal\nãĢ į</w>\nra ja</w>\nun ga</w>\npol lin\nfilip ino</w>\nak a\nt sun\nik on</w>\nbi king</w>\ndecor ations</w>\nz ac</w>\ncade ts</w>\nhum our</w>\nag m</w>\nre ppin</w>\nvac cin\nelo ve</w>\nu w</w>\ndia be\ngalla gher</w>\naz er\ndo l</w>\na while</w>\npro minent</w>\nwel sh\nt ann\n' )</w>\nbi en\nwa g</w>\nin al</w>\nc wc</w>\nwic ket</w>\nur st</w>\nq anon</w>\nx e</w>\nout door\ndun n</w>\nstar r</w>\nco logy</w>\nric ky\nu efa</w>\nreb ounds</w>\ns music</w>\ninf ant</w>\nðŁĻ ĭ\nso p</w>\nu mber\nhand ing</w>\nbeg in\nsor ting</w>\nha sh</w>\nsp ati\nre k</w>\nbuda pest</w>\nblack hawks</w>\ndele te</w>\nro m</w>\ncan did</w>\nauth ori\nde bris</w>\nspe cul\ninter section</w>\nmarri ott</w>\nim ran</w>\nðŁĺģ ðŁĺģ</w>\ncru ises</w>\nram sey</w>\nrafa el</w>\naware ness\nvas cular</w>\nbeyon cÃ©</w>\nru g</w>\nðŁĺ Į\nfesti v\nar am\ns able</w>\nbas il\np ill</w>\nflo oring</w>\nun beaten</w>\nimplic ations</w>\nu f</w>\nw ound</w>\nfor ge</w>\npoin ting</w>\npo ts</w>\npopular ity</w>\nðŁĳı ðŁı»\nmani pul\ns lots</w>\ndeb ates</w>\nabs ence</w>\nver mont</w>\nnever forget</w>\nwri st\ngl oria</w>\nren ce\nhu sk\nmel ting</w>\nðŁİ Ł\nbr aces</w>\ntim ely</w>\ntransform ing</w>\nam ps</w>\nma k</w>\npo e</w>\nah an</w>\ngener ally</w>\nnd p</w>\nale ppo</w>\nunic ef</w>\npro fs</w>\nnor d\nma sk\njackson ville</w>\nv v\nsh ells</w>\nbloom ing</w>\noper ators</w>\nchar coal</w>\nne ville</w>\nma gi\nchi p\nsam a</w>\nir an\nre forms</w>\naccu mul\nru e</w>\næ ľ\nweb sites</w>\nga on</w>\ndevast ating</w>\nsto s</w>\nglaci er</w>\nra pp\nchipot le</w>\npr a</w>\nor ous</w>\nrom ney</w>\nseas on\ndecor ative</w>\nc isco</w>\ndit ch</w>\ncompla in</w>\nll o</w>\nassu me</w>\nðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤ</w>\nn els</w>\ncent ric</w>\nft w</w>\ncar rots</w>\ntat a</w>\ncan ter\nper ience</w>\nli ers</w>\ndemo s</w>\nbl unt</w>\noper ate</w>\nreserv ations</w>\nle ah</w>\nsub stance</w>\ndi son</w>\nan te\nelec tion\nv ue</w>\nsqu are\nnon profit</w>\nca a</w>\nf su</w>\ny am</w>\nãĤ ¤\nv ladi\ncomple tes</w>\nmar i</w>\nphilli p</w>\nne ill</w>\ner as\nka it\nmen do\nmahar ashtra</w>\ng p\ndan e</w>\nprovi dence</w>\nther apeu\njuven ile</w>\nme mo</w>\nin corpor\naa aa</w>\nseven teen</w>\nteen ager</w>\nÃ £\nor ns</w>\nwi de\ncu teness</w>\ntw d</w>\nff les</w>\nbar a</w>\ncom edy\nover time</w>\ny az\nbar on</w>\nunemp loyment</w>\nðŁĳ ĭ\nexter ior</w>\nden se</w>\ncent res</w>\nmatch up</w>\nhistory month</w>\nartif icial\nqu it\ne sk\nwar n</w>\ncr itic</w>\nj af\nðŁĵ ²</w>\ninform ative</w>\nfu els</w>\nrecy cle</w>\nnam ing</w>\nstri pe</w>\nsol ic\nmole cular</w>\ndee pi\ncon vo</w>\ns sel</w>\nna e</w>\nde scent</w>\nti z</w>\naccoun tability</w>\nter ry\nr ito</w>\nsl ay</w>\nem o</w>\ndem ol\nsens ation</w>\nco v\ntor e</w>\nround table</w>\ny ol\nexcu ses</w>\nà¥ į</w>\ntur quo\nhh hh\npod casts</w>\ncele b</w>\nme ssi\nli o</w>\nman n\ncontribu ted</w>\nu z\ngener ator</w>\nele ts</w>\nveg gie</w>\nindu l\nen suring</w>\ndetro it\npun jab\ntran spor\ninstru ction</w>\nad d\npor cel\npan eli\ncir cles</w>\npersi st\nclay ton</w>\nsp n</w>\ndog softwitter</w>\nis nt</w>\nsp r</w>\nretail ers</w>\np w\nhun gar\nel ena</w>\nmon aster\ngu atem\nje ssie</w>\nan z</w>\nra shi\nfle e\ncar ving</w>\nfau x</w>\nl al</w>\nhen ri\nd jo\ndu ll</w>\ns ana</w>\nlar a</w>\nglo be\ncri mson</w>\ncom pass</w>\npau se</w>\nna b</w>\nlion el</w>\nba ths</w>\nu fo</w>\ninvent ory</w>\nsin gh\nsat an</w>\nðŁĩ ¸\nce ments</w>\nin form</w>\ngener ated</w>\nbi den</w>\nav g</w>\ntas ks</w>\nde er\nsa u</w>\nja iled</w>\npa stel</w>\nsc c</w>\nna il\nsteel e</w>\nper is\nlamborgh ini</w>\npur sue</w>\nmar gin\nu ch\nbo sch</w>\ndra in</w>\ncl ara</w>\nbo m</w>\nlat ino</w>\nweb ster</w>\nrose mary</w>\nr ha\ns oun\nbillion aire</w>\nnot ch</w>\npercent age</w>\ncon or</w>\n' \"</w>\nhom es\nearth day</w>\nh ort</w>\nbig gest\ndi sin\nwal ton</w>\nedit ors</w>\nim ma</w>\nom ar\nequi valent</w>\npharmac eu\nah med\ncam eo</w>\nhan ni\nunder rated</w>\nge ment</w>\nmicro bi\nv oo\nhonor able</w>\nobe sity</w>\nâļ ¡ï¸ı\nlimer ick</w>\ninvol vement</w>\nst agram</w>\nboule vard</w>\nbur g\nblackand white</w>\nliber ation</w>\nfi ve\ninter im</w>\nsm m</w>\nrival ry</w>\ncap abilities</w>\nstat ements</w>\nthu mb\nve d\nsw ans</w>\nbar ber\ne que\nseren a</w>\nhel m</w>\nnoo dle</w>\nsam pling</w>\nn awaz</w>\nsing le\nthunder storms</w>\nsh on\nin ev\në ¯\nto pp\norch ard</w>\nbi an\nðŁĺ Ķ\ndoor step</w>\nsalv ation</w>\nmarke ting\nr ons</w>\ncle mson</w>\nra vi</w>\nin take</w>\nstand with\nsin a</w>\nha iku</w>\nple y</w>\nelector al</w>\nph illy\nla ys</w>\nelectr ic\ncap turing</w>\nu pp\ner gy</w>\nbeliev ing</w>\ncul tures</w>\nes day</w>\ninva sive</w>\ned ed</w>\nspee ch\nend ur\nviet nam\nboy cott</w>\npe de</w>\ndeli ver\nðŁĴĸ ðŁĴĸ\nmer chant</w>\nst ir</w>\nden ies</w>\npoc kets</w>\no ti\ncu ddle</w>\nro land</w>\nmm ed</w>\nden ed</w>\nlear ners</w>\nhoo p</w>\nsour cing</w>\nh acked</w>\ndi m\nenviron ments</w>\nben son</w>\njud icial</w>\nwor cester</w>\npear ls</w>\ngovern ments</w>\narri vals</w>\ncor ners</w>\ntun ing</w>\nla bour\ny m</w>\nor dering</w>\nle wi\ni fe</w>\nhygi ene</w>\nthou ghtful</w>\nindone sian</w>\ncampaig ning</w>\nprinci ple</w>\nassau l\nru bb\nat v</w>\nwil ly</w>\nen tre</w>\nil i</w>\nph on\ndu ties</w>\nâĻ¥ âĻ¥</w>\nsn akes</w>\nlo op\nam ar</w>\nconver tible</w>\nbon ding</w>\nment oring</w>\nmax well</w>\nethere um</w>\ndestro ying</w>\nax is</w>\nca iro</w>\nfin nish</w>\nsho ck\nðŁĺ Ĳ</w>\ncal eb</w>\ncom a</w>\npe dal</w>\nco re\ncontin ent</w>\nel son</w>\ntemp o</w>\nhelsin ki</w>\nac p</w>\ntack ling</w>\nst ated</w>\nbl a</w>\ndou b\nsma shing</w>\na ja</w>\ncamer on\ndisru ption</w>\nwarm th</w>\nbeing salmankhan</w>\nbullet in</w>\no de</w>\nsyrac use</w>\nar an</w>\nmc gregor</w>\nbul k</w>\nan ton</w>\nconfir mation</w>\nsp ine</w>\nim ran\ninstru c\njac ks</w>\nchi o</w>\npal m\nstr e</w>\nembarra ssing</w>\nun t\nelimin ate</w>\nto ss</w>\nc ise</w>\na ws</w>\noni sts</w>\nsh inee</w>\njo s</w>\nho se</w>\nli vely</w>\nopp onents</w>\nmo vements</w>\nrecogni zing</w>\nsandwich es</w>\nsh akes</w>\nexerc ises</w>\nse at\nprofe ssion</w>\nmerry christmas</w>\nlu gg\nadopt dont\nmar vin</w>\nbyr ne</w>\nun le\nhe t</w>\nku wait</w>\nrah man</w>\naspe ct</w>\nhumb led</w>\ngen es</w>\nf and\nlong time</w>\n) ;</w>\ncam pu\nan gus</w>\nðŁĳį ðŁı¼</w>\nq uran</w>\nsle eves</w>\ns lic\n¸ ë\ntwel ve</w>\nyour e</w>\ni ke</w>\ngo gh</w>\nb st</w>\ndic tionary</w>\nreflec ting</w>\nto on</w>\nyar n</w>\nem bed\nðŁı ´</w>\nre serves</w>\nfloo ded</w>\nver iz\ndu sk</w>\nestab lish</w>\npro li\nau d</w>\nritu al</w>\nor bit</w>\ndeclar ation</w>\nrecor dings</w>\ncam o</w>\ncas sette</w>\ngood luck</w>\ncu tter</w>\nbo p</w>\nb ho\nche ating</w>\npaci fic\nma res</w>\ntim er</w>\ncol t</w>\ntr ous\ntomor row\nhan sen</w>\nci e</w>\nw ang\nban i</w>\ncircu lar</w>\nac ute</w>\nfar mer\nco ys</w>\np se\nir ving</w>\nw j\nhaw kins</w>\nb ison</w>\nur day</w>\ncru ising</w>\no te</w>\nk ath</w>\nwhi stle</w>\nyour selves</w>\nant is</w>\nsla sh</w>\nthorough ly</w>\nke sh</w>\nser ie</w>\nex em\nen ig\nguil d\nsh red\nho gan</w>\nap o</w>\nä ¸\npu zz\nne tball</w>\nau ssi\npanor ama</w>\nws j</w>\nav is</w>\nar ming</w>\nhum ph\nbrow ser</w>\ncri es</w>\nfo ggy</w>\nmat te</w>\nðŁĮ »</w>\nit er</w>\ntal lest</w>\nby ron</w>\ncap tiv\nje su\nany ways</w>\nflag ship</w>\np ton</w>\nwe y</w>\nfay ette</w>\nfinanci al\nf oul</w>\nsolom on</w>\njenni fer\ncucu mber</w>\nar gue</w>\ntex tile</w>\nwrest ler</w>\njohn ston</w>\npa stor\nðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃ\ncac tus</w>\nedi ble</w>\nre served</w>\nric hie</w>\nmet res</w>\ningredi ent</w>\nh ella</w>\nun to</w>\nch ol\ncele bs</w>\npo ets</w>\ngra ham\nhay den</w>\ncoinci dence</w>\nb aw\ncommunic ate</w>\nflet cher</w>\n/ -</w>\ntole do</w>\necu ador</w>\ncoun sel</w>\ns laughter</w>\nline ar</w>\nat p</w>\nos u</w>\njo el\nev ed</w>\nconqu er</w>\nru stic</w>\nplic ity</w>\nrecogn ise</w>\nroom mate</w>\ncr acked</w>\njas per</w>\nph er</w>\nðŁĮ º</w>\nwo ven</w>\nmo ist\nff c</w>\nste ering</w>\nni sh\nstand ings</w>\nfrequ ent</w>\nar di</w>\nhaz el\nas msg</w>\nbau m</w>\nd art</w>\nsi dd\nnat h</w>\nch ero\ncard board</w>\nc ss</w>\nn sfw</w>\npa ir\nðŁĺį ðŁĺĺ</w>\noccur red</w>\nhomeless ness</w>\nmal one</w>\nph e</w>\nxi a\npad dy</w>\ndecl are</w>\ntheat re\nb f\nper sian</w>\nta d</w>\nax e</w>\nsusp icious</w>\nlam b\nmu cho</w>\nsen ior\nst as</w>\nk ite</w>\nst ing\ngra d\nk af\nwat ering</w>\nØ ¯\nspi ral</w>\nth ms</w>\neduc ator</w>\njer ome</w>\nof c</w>\nclo ck\nsu l</w>\npe mb\n.... .....</w>\npark way</w>\nde aux</w>\nrestric tions</w>\nm ons</w>\nneed le</w>\ne j\nle agues</w>\nwater melon</w>\nam an\npl enary</w>\nmax im\nw ab\ncoming soon</w>\nbry ce</w>\nvi gil</w>\nsuper market</w>\nfortun ate</w>\nturquo ise</w>\npresi dent\nli v</w>\ninter ns</w>\nfeel in</w>\nfix tures</w>\nstun t</w>\nst aged</w>\npremi eres</w>\nlo k\nprac titi\nshor tage</w>\nlog ne</w>\nve c\ncon cor\nroc ke\nli g\ncom posed</w>\nsyn thetic</w>\ndi p\ncam ila</w>\nch is\nj ou\nsu san\neye brows</w>\nsupp lement</w>\nsatis faction</w>\nmoham mad</w>\nti bet\nhouse of\npu n</w>\nas sam</w>\nshado whun\npsy ched\nse duc\nmand atory</w>\nher bert</w>\nsc allo\nstream ers</w>\nproto col</w>\nblock buster</w>\nproduc es</w>\nsch nei\nlau rel</w>\ntri be\ntime hop</w>\npl a</w>\nmod elling</w>\ntv time</w>\nmtv stars</w>\nwi dow</w>\nme tric</w>\nch am</w>\ncon do</w>\nflow ering</w>\nale c</w>\nd ms</w>\ninten sity</w>\nÂ ¨\nmccar tney</w>\nislam abad</w>\nk b</w>\nf fi\nph al\nanal og</w>\nf ond</w>\nh acks</w>\npositi vity</w>\ntreat y</w>\nsub marine</w>\nconne ct</w>\nsel en\ncategor ies</w>\ncu b</w>\norgani ze</w>\nsi k\nquote oftheday</w>\nremin ding</w>\nam or\nloc king</w>\nðŁĳı ðŁı¼</w>\ncomp ound</w>\net te\nb out\nrec ur\nfe rence</w>\nmi zz\ntren d\nhip ster</w>\nfor tress</w>\nforth coming</w>\npreli min\no dyssey</w>\nang p</w>\ndel ici\neven ings</w>\nðŁĶ ¹</w>\ni q</w>\nd w</w>\nda ir\nkathr yn</w>\nchristian ity</w>\nmoon light</w>\nha b</w>\nwh oo\nf bf</w>\nse th\ngenu inely</w>\npa x\nchar ity\ndeplo yed</w>\nb nb</w>\nbu cs</w>\nju dg\ncon ge\nplant ation</w>\nim press</w>\ncar a</w>\nsc lub</w>\nsco py</w>\nland ers</w>\ncompla ints</w>\nb ama</w>\nre build</w>\nx y\nreal ism</w>\nsh our</w>\nle in\nbrac elets</w>\nmer a</w>\nassas sin</w>\nan chor\nðŁĳĮ ðŁı¼</w>\nlin en</w>\ncon fron\nchronic le</w>\ncomm ent\ncat alog</w>\nil les</w>\ngor ge</w>\nme try</w>\njung kook</w>\nlove my\nsent in\nse em\nfit ness\nalli ed</w>\nts man</w>\ndigital transformation</w>\npr an\nlo ft</w>\nmin ton</w>\nalden richards</w>\nen vel\ncher ish</w>\ncertain ty</w>\nzz z</w>\nrhin o</w>\nper kins</w>\nen rich\ncape town</w>\nome ter</w>\nsec tions</w>\nske leton</w>\ndef enders</w>\nðŁĺ Ŀ\npen c\nbri t</w>\nja h\ncapital ism</w>\nðŁ¥ ĩ</w>\nbaz aar</w>\nre me\nex t</w>\nkk k</w>\nconver t</w>\nstor my</w>\nb ye\nkar an\nchry sler</w>\nad os</w>\npre ssed</w>\nsyn c</w>\nation day</w>\ndang er\nbad ges</w>\nrefu ses</w>\nem powering</w>\nly m\nex ports</w>\nadoptdont shop</w>\nðŁĩ ¯\nth c</w>\nawa ited</w>\nfocu ses</w>\nfin ed</w>\no at\nhaha hah</w>\nâģ ©\nn family</w>\nfi ona</w>\nluck ily</w>\nthr illing</w>\nty ping</w>\nout break</w>\ndi es\nhe u\ncraw l</w>\nne sses</w>\no ath</w>\nscri pts</w>\ngee ks</w>\nðŁĲ Ŀ</w>\np b\nmathemat ics</w>\nal is</w>\n________ ________\ngymna stics</w>\nacti vism</w>\nrecommend ation</w>\ngre n</w>\nwa in</w>\ncour ty\nn apol\ncau li\nhor nets</w>\ng als</w>\njo ckey</w>\ndir ty\nat ar\nenor mous</w>\npe st\ngreg ation</w>\nan os</w>\nii ii\ndef ends</w>\nblack historymonth</w>\nat x</w>\nmb c</w>\nlugg age</w>\nwit ch\nco b\nla sts</w>\ncu m\ngg g</w>\nba thing</w>\nn ar</w>\nce bu</w>\nðŁį ĥ</w>\nnavig ation</w>\nmin e\nre jo\nðŁİ Ģ</w>\ngif tide\nre ta\nuse less</w>\npu ll\ndefic it</w>\nal lu\nati me</w>\nit v\ntr illion</w>\npu e\nac ies</w>\nproce dure</w>\nl ori\njen ny\nc ad</w>\nul ously</w>\ndr ac\npromo tes</w>\ning the\ncan u\nwoo hoo</w>\nna omi</w>\nzar dari</w>\nts u</w>\nbe ir\nsd g</w>\nle ver\nwe ber</w>\nab ud\nlun d</w>\ncrow ded</w>\ndeplo yment</w>\nter rain</w>\nken ny\nho f\nwitne ssed</w>\nlo ch\nj k\nbul ly</w>\nw ren\npoe try\ndo ff</w>\nww i</w>\nmo red</w>\ndin i</w>\ncul ture\npromp t</w>\nÂ ¥</w>\nmaur ice</w>\nto pps</w>\nr m\ncor respon\nab out\njewel s</w>\ngi br\neag le\nðŁĺĺ ðŁĺĺðŁĺĺ</w>\nl ending</w>\nsou ven\nç Ķ\ncontemporary art</w>\nestabli shment</w>\nj ong\nâĢ¦ \"</w>\ngat or\npatri otic</w>\nmc coy</w>\nv ape</w>\nhuman e</w>\nfeli z</w>\ncoach ella</w>\nre posting</w>\nste als</w>\nfu ller</w>\nn ering</w>\nat ra\n( -</w>\nbla ke\nhe ather\nwor ms</w>\ndiscipl inary</w>\nrede mption</w>\ny ard\nam in</w>\n\" @_</w>\nd nc</w>\nt ds</w>\nk appa</w>\nne wark</w>\ncomm its</w>\nspe ars</w>\nj ams</w>\nt and\nmsn bc</w>\ninter medi\naim ed</w>\nat ic\nteen th</w>\nobserv ation</w>\nkash mir\nkavan augh</w>\nou l\nsan francisco</w>\nre u\nbel ated</w>\ncho w\npass word</w>\nst ills</w>\ndeta ined</w>\nsar i</w>\nday ton</w>\ndar ren\nitali an\nar th</w>\namu sic</w>\nar bit\nw m\nv m</w>\nhe m\ndou g\nmy r\na sho\npre v\nvin d</w>\nbra h\nsta g</w>\nà¸ µ</w>\npre views</w>\ngu k</w>\ncon taining</w>\nleon ardo</w>\nsad dle</w>\nru shing</w>\nst av\nlon gh\ngam bling</w>\nve gas\nreserv ation</w>\nend ale</w>\nbal a</w>\nfl a</w>\nvari ant</w>\nhe dge</w>\nbulgar ia</w>\nnat ali\nwe aver</w>\nsol st\nencoura ged</w>\nap c</w>\nas parag\nne st\ncycli sts</w>\nfe l</w>\nìĬ ¤\noverwhel ming</w>\npey ton</w>\nj it</w>\na post\nmb le\nble eding</w>\nneighbour hood</w>\na very</w>\nexpre ssions</w>\nmac donald</w>\ngi gs</w>\nmon ds</w>\nillu sion</w>\nn ct</w>\ncam ero\nover head</w>\nmy th\nol y\nvi o</w>\net v</w>\nlau rie</w>\nunve iling</w>\npri or\ncon n</w>\niron man</w>\ndi ff</w>\nday in\ncrit ici\ncon go</w>\nre vision</w>\nwal e</w>\ndirec tor\np ines</w>\nblack pink</w>\ngar ner</w>\ncur ated</w>\nmanit oba</w>\nh ac\ncommon ly</w>\nbar ton</w>\n.... #</w>\nmor tality</w>\nlive smatter</w>\nphilos op\nshor ter</w>\ncon vince</w>\nfre ak\nvend ors</w>\ninsi ghtful</w>\nel ly</w>\nsens ors</w>\ne led</w>\ns berg</w>\nweight loss</w>\nu kip</w>\nsp ur</w>\npriv ate\nqu a</w>\nss c</w>\n, ...</w>\nsupervis or</w>\nadvis er</w>\namaz ingly</w>\nless er</w>\nat es\nmah on</w>\noooo oo</w>\nsar as\npmo india</w>\nwaff le</w>\nun ders</w>\ntoler ance</w>\nsculp tures</w>\nher sh\nkno cking</w>\nsmo ke\ncathol ic\ngri m\ntra veled</w>\nfli p\nge off</w>\ndinosa urs</w>\nsle pt</w>\nscar let</w>\nok i</w>\ncompla int</w>\nob sc\nnam i\nla g</w>\ncross fit</w>\nu fc\nmc cain</w>\nrefe ree</w>\nsad ness</w>\npen ny\nli eu\nmo de\nki er\nvol s</w>\nw is</w>\nel on</w>\nshe a</w>\nba o</w>\nson ia</w>\ncla ire\nem manuel</w>\nmoist ure</w>\ndi gest</w>\nvi ii</w>\nt eller</w>\nch on\naccess ory</w>\nnight club</w>\nfoss il\naw an</w>\nhu sky</w>\nab original</w>\nbrand on\nffici ent</w>\ncou gars</w>\nste d\nad mitted</w>\nigno red</w>\ncontent marketing</w>\nag as\nv ase</w>\nexecu ted</w>\nnegoti ations</w>\nshe ad</w>\nn and\ntab lets</w>\ngo th</w>\nts al</w>\nd fw</w>\non ep\nprotec tor</w>\nsp ho\ngaz ette</w>\nandre as</w>\nss er</w>\ncomp ilation</w>\nha v</w>\ncontain ers</w>\nbro ker</w>\nsoc al</w>\nporcel ain</w>\nhy uk</w>\nair ing</w>\nðŁĴ °\npubli sher</w>\nscen ario</w>\nspart ans</w>\nre viewing</w>\nitu des</w>\ned el\npear son</w>\nba sh\nmau i</w>\na ad\nðŁĮ Ĭ\nli u</w>\nul ate</w>\nprogram mes</w>\nfav our</w>\nweb design</w>\nreal ty</w>\nmotiv ational</w>\ncro sses</w>\n' ...</w>\nbus ch</w>\nadjust able</w>\nar jun</w>\nmist ak\ndimen sion</w>\npi stol</w>\nweigh s</w>\nen y</w>\nunve il</w>\nindy car</w>\ngor don\nf ade</w>\nfran ken\nqual ities</w>\nbet t</w>\nloc ate</w>\nker r</w>\nsp c</w>\nconfu sion</w>\nne e\nluck y\nbas es</w>\ndep ends</w>\nfire fighter</w>\nol a\nre t\nmar oon</w>\nðŁĶ Ĭ</w>\nw am\ndefin ing</w>\nwhe at\nbi l</w>\nÃ© s</w>\nb hai</w>\npsy ch</w>\nta u</w>\nic ans</w>\nthi k</w>\nob ile</w>\ninspec tor</w>\nìĨ Įë\nill on</w>\ngo s\nev angel\nfa i\nsi st</w>\nvoc ation</w>\nbur ge\nchi stan</w>\nrenew ed</w>\nenthusi asm</w>\nen ting</w>\nag ri\nike a</w>\nm sc</w>\naero space</w>\nsens iti\nmemo ir</w>\nhosp ice</w>\nco caine</w>\nder ry</w>\nmechan ics</w>\nĦ à¸\ntin o</w>\nreduc es</w>\ncollec tors</w>\nin justice</w>\nsupp re\nv ana</w>\nab un\nnap a</w>\nsu sa</w>\nos lo</w>\ne ff\nen core</w>\nlic ence</w>\nched dar</w>\nz al\nmoun t\nðŁĴ Ĳ</w>\nthreat ens</w>\n!! \"</w>\narchi e</w>\nfu tsal</w>\nscu ba</w>\njo s\ngn on</w>\nse xi\ns official</w>\ncompar ing</w>\ndomin ant</w>\ntof theday</w>\nfa it</w>\npropos als</w>\ngi ft\ny as</w>\ncn c</w>\nl r\nha b\nreser voir</w>\nbeli efs</w>\ngener al\nmar ti\nt d\nest e</w>\nì ł\nwi l</w>\nðŁĳ ¯</w>\nðŁĶ «</w>\nsp x</w>\net work</w>\nexcer pt</w>\ne instein</w>\nhir o</w>\nsil hou\nteam ed</w>\nper ception</w>\ncorri dor</w>\nmental health\nhin ts</w>\nben ny</w>\ninduc ted</w>\nsw x</w>\nwi desp\nspe ak\ncher yl</w>\ndru g\nðŁĺ ķ</w>\nh f</w>\nasparag us</w>\nmyster ies</w>\nfitz gerald</w>\noff er\ntherap ist</w>\ncare er\ndam aging</w>\nts d</w>\nper u\nwei bo</w>\ny ay\nphoeni x\ndisc re\nmac book</w>\nbar ker</w>\nstig ma</w>\nsp read\nroc kies</w>\nkang ar\nbri dg\npa i\nbi shop\nta iled</w>\ncapsu le</w>\nðŁĴ ĵ\nge of\nroy ale</w>\nshort listed</w>\no ste\nash amed</w>\nch app\nkey e</w>\ncl a</w>\nscreen shot\naustri an</w>\nnati ve\nen ight</w>\njuli et</w>\nmichel e</w>\nðŁĮ ´\ntravel ers</w>\npi l</w>\nfootball er</w>\nwin chester</w>\nðŁĻ Ħ\nazer bai\ngold eng\norganis ations</w>\ninterpre tation</w>\npredat or</w>\nofthe week</w>\nlo gan\npok Ã©\nmari e\ncal la\nt nt</w>\ncin de\nge tic</w>\nfit fam</w>\ngra v\now ens</w>\nðŁĮ ±</w>\nshoot out</w>\nsal is\ncommissi ons</w>\nco he\np tic</w>\nni xon</w>\nhi a</w>\namb ition</w>\nmar ine\ncruel ty</w>\nt k</w>\ncru de</w>\nsal ty</w>\njim a</w>\nmon go\nir ony</w>\non wards</w>\narre sts</w>\nstrang ers</w>\nig er</w>\ncycli st</w>\nra g</w>\nexten ds</w>\ntra dio</w>\nbour g</w>\nmo i\nel la\ne able</w>\nlex us</w>\nau l\nder a</w>\nhistor ian</w>\nmor ton</w>\nti ff</w>\nman ner</w>\nko t</w>\nd k\npo inted</w>\nmar qu\na an\nen ey</w>\ndu blin\non poli</w>\nem ili\nsecre t\nfl o</w>\nâļ ¡</w>\nba j\nste ep</w>\naccompan ied</w>\nrum ours</w>\ndev i</w>\npurch asing</w>\nfi g</w>\npu b\nsch oo\nautonom ous</w>\ngo alie</w>\nx ia</w>\nautom atically</w>\nre vers\nter o\nfu ku\ntitan ic</w>\nshoo k</w>\nsand als</w>\nsee kers</w>\nexc av\nnor dic</w>\nbigo live</w>\nba ke\nr att\nz ak</w>\nne p\nðŁĺ ¤</w>\ncand y\nbilli ons</w>\nbook worm</w>\npp et</w>\nà ³\nsur faces</w>\nsc ars</w>\nphil ip\ndo gg</w>\nci gars</w>\nco te</w>\ntransl ated</w>\ncur ator</w>\nsin dh</w>\nhan gover</w>\nbre wer</w>\non es\nel ton</w>\nðŁĴª ðŁı¼</w>\nmar cu\nelli ot</w>\nrigh te\ndi oce\nru ss</w>\nrail ways</w>\ngrand son</w>\nas cen\napo logy</w>\nawa it</w>\nmob ili\nre spir\nparti san</w>\noli vi\nstri ke\nyo o</w>\nwhite house</w>\nexpre ssed</w>\npu ps</w>\nbed ford</w>\ncul tur\nfro gs</w>\nfly ing\ncav ali\nc ds</w>\nfri ger\nstreet photography</w>\nre solve</w>\ntali ban</w>\nkan g</w>\ncru shing</w>\nju m\nðŁĺ Ĵ\nwilliam son</w>\ntan g</w>\ncur ly</w>\nt man</w>\nveter an\nfa ire</w>\nartificial intelligence</w>\nun anim\npre n\nback drop</w>\nfr ances</w>\noc cer</w>\ndoro thy</w>\nwork ing\nar thr\nconver ted</w>\nday light</w>\nserv ant</w>\npad dle</w>\ncompla ining</w>\nthir ty</w>\nnad al</w>\nak u</w>\nibra him</w>\nad dressed</w>\np iss</w>\ngreen house</w>\nbatt alion</w>\nsi mulator</w>\nout lets</w>\nembroi dery</w>\nðŁĵ ±</w>\nfis cal</w>\nger ard</w>\nsas sy</w>\nðŁİī ðŁİīðŁİī</w>\nvent ures</w>\nmer it</w>\npublic ity</w>\nðŁĳ Ī</w>\nsophistic ated</w>\nc tu\nconven tional</w>\ncondol ences</w>\nisra el\ntra dition\nar an\nte ss</w>\ngla d\nðŁĺĬ ðŁĺĬ</w>\ncorrec tion</w>\nge on\nam d</w>\nor ship</w>\nbe ast\nch ment</w>\nì ŀ\nnic o\nwk nd</w>\nwel s</w>\ncushi on</w>\nbeli e\nvo c</w>\nidio ts</w>\nunder neath</w>\npu ma</w>\ncorn ell</w>\nen ation</w>\nlu l\nswa ch\nab ig\nu rer</w>\nmi e\nform erly</w>\nca f</w>\ner nal</w>\nchor us</w>\njuli us</w>\nsen ator\nâľ į\nwh ir\nsalv ador</w>\nph d\nuni fied</w>\nboo ster</w>\ngraph ical</w>\nw rec\nson ny</w>\nmi z\ndere rs</w>\ns all</w>\nven s</w>\ntusc any</w>\nwi d</w>\ny ong</w>\nkur ds</w>\nw az\ntrol ls</w>\nmac ro\ncat urday</w>\npre ssing</w>\nsa sha</w>\ncent ennial</w>\ngu sts</w>\nem c\nbe fore\nden ise</w>\ncu st\nðŁĵ ¢</w>\nlo oo\nbase l</w>\neng land\ny olo</w>\nar du\nmanife sto</w>\ndo ha</w>\nì ľ\nkni ves</w>\nbourne mouth</w>\nbi bl\nbar b</w>\nal icia</w>\nØ ©</w>\ncom er</w>\ncycl one</w>\ng it</w>\nane ws</w>\ncharacter i\nvent ura</w>\nin tra\nsf giants</w>\nhu t\nbe a</w>\ndar win</w>\nell er\nal v\nre ese</w>\nbl y\nkar an</w>\nconclu sion</w>\nman ny</w>\nfla kes</w>\nunite blue</w>\nnad u</w>\nco pp\ned ges</w>\nlanca shire</w>\ni als</w>\no tta</w>\nphilipp e</w>\nl ent\nche e</w>\nment ors</w>\nfesti val\nan ism</w>\ncompli mentary</w>\nr j</w>\npu g\nd ine\nwe i</w>\ncli ffs</w>\nsar my</w>\nti veness</w>\ntreas ury</w>\nil and</w>\nafter math</w>\nrabb i</w>\nou n</w>\nbou quet</w>\nherit age\nzi on</w>\nsur render</w>\nshen an\nin ks</w>\nkar l\ngh ty\npol icing</w>\nexam ination</w>\nce y</w>\nper su\nmeasure ment</w>\nhydro gen</w>\nlu han</w>\nâłĢâłĢ âłĢâłĢ\nwar i</w>\nÐ¾ Ð\nj y\nfow ler</w>\nmis h</w>\nal fre\nâĺ ĳ\nbb naija</w>\ncat alogue</w>\nrecogn ised</w>\nsa ver</w>\nhu skies</w>\ncol in\nmun do</w>\nsi va</w>\np ng</w>\ndiscoun ted</w>\nman utd</w>\nfre sno</w>\nde vin</w>\nprelimin ary</w>\ntro phies</w>\npla stics</w>\ndu g</w>\npro cu\nindi go</w>\ng ard</w>\ndy lan\npit ches</w>\nground breaking</w>\nin son</w>\nbl ac\nan thology</w>\nf h</w>\nexpl ic\nr ard</w>\nadmi ral</w>\nso chi</w>\nla shes</w>\nsplen did</w>\nen vy</w>\nad v</w>\nsex y\nfestiv ities</w>\nstic king</w>\nbi b</w>\nthr ill</w>\nop p</w>\nari el</w>\nbotan ical</w>\nendur ance</w>\nfe males</w>\nbr icks</w>\nvat ican</w>\nblack pool</w>\nber mu\nbr ough</w>\nroll er\nbi d\nsue de</w>\nsloven ia</w>\nmm ing\nml b\nmed alist</w>\ndi ans</w>\nrehabil itation</w>\nne on\ns go</w>\nli thu\nram os</w>\nz ed\npi anist</w>\ninten sive</w>\nbroad band</w>\nstu dy\npeter sburg</w>\nlu ca</w>\nah hhh</w>\nphys ician</w>\ndill on</w>\ntele com</w>\ngri ef</w>\nmu n</w>\nac ro\nsi ded</w>\ns ly</w>\nblo ws</w>\nclassic cars</w>\ntri um\nar gy\n? :</w>\nh ri\nmarsh mal\nâĢ ĵ\nto pping</w>\nwar saw</w>\ntran sc\npreserv ation</w>\nb av\nre friger\nexperim ents</w>\nä º\ngl it\nsli ga</w>\ng age</w>\nfac tor\nflav ours</w>\nbr ony</w>\nsp o</w>\ncook book</w>\ncarri age</w>\naw ay\nny fw</w>\non ian</w>\nw g\nsimp sons</w>\nro lex</w>\nðŁı ¿</w>\ncro sby</w>\nãħ ¤\ncre di\nsyn dic\npu bs</w>\nali fe</w>\npoor ly</w>\nmac ed\nðŁĺ ŀ</w>\nbehin dthe\nw enger</w>\nn ats</w>\nðŁİ Ł</w>\nrubb ish</w>\nprocedu res</w>\ntypho on</w>\nopho bia</w>\ner do\nfu el\nvi era</w>\nbu mps</w>\nmillenni um</w>\nnew zealand</w>\nlec tures</w>\nit on</w>\nmil ky</w>\nrespon ded</w>\nê °\nlandsc ape\n.. @</w>\nbo ther</w>\nâĸ ¶</w>\nz hang</w>\nhuawe i</w>\ntu ition</w>\ns worn</w>\nin u\ny or</w>\npa olo</w>\nau ditions</w>\nab il\nmalay sian</w>\nho ps</w>\nfe athers</w>\nmp le</w>\nau ts</w>\nÃ£ o</w>\nboun ty</w>\nic he</w>\nì ĺ\nsh q</w>\npin ot</w>\nge ars</w>\ndisapp ear\nvideo games</w>\nt na</w>\nalzheim er</w>\nðŁĮ ŀ\na ji</w>\nunder wear</w>\nswit ching</w>\nsign age</w>\no scar\nec on</w>\ndro w\ncl int</w>\npl ated</w>\ngun dy</w>\nemb lem</w>\nho es</w>\nici st</w>\nnel ly</w>\njuni or\nroad show</w>\nminer als</w>\nat le\nalexand ria</w>\nac claimed</w>\nv ell\nshi va</w>\nad he\nen ne\namne sty</w>\nh ounds</w>\ncouncill or</w>\nðŁĴ ¦\naes the\npart nering</w>\ninflu enced</w>\nmag no\nfl are</w>\nextin ction</w>\ncivil ian</w>\nmaje sty</w>\nva il</w>\nlaw makers</w>\nrac ks</w>\nmc c</w>\nori an</w>\nsp ices</w>\ner rors</w>\nmay er</w>\nco ca</w>\npa i</w>\ns ooooo</w>\nreti ring</w>\nba thro\nðŁĻĮ ðŁĻĮ\nâĸ ª\nsu f\nendor sement</w>\nbuil ding\nbroo ch</w>\npal la\narvin d\nag ent\nkar ate</w>\nr hi\nc tv\nta ine\num m</w>\nba x\nreig ns</w>\nuni of\nenterpri ses</w>\nadel e</w>\nfla ke</w>\nat tire</w>\nbru ce\nba hamas</w>\ngra vy</w>\nsa in\nche ek</w>\ntri vi\nlo v</w>\ne en</w>\nbb lo\nlady gaga</w>\nitt a</w>\n. \"-</w>\ndu stin</w>\nobserv atory</w>\neigh th</w>\nbloom berg</w>\nkh s</w>\nf cc</w>\ngi st</w>\ncommemor ate</w>\nve er\nsexu ality</w>\ned c</w>\nnic ole\nvac ancy</w>\nu ser\nson a</w>\n:' (</w>\ndipl oma</w>\nt end</w>\nup grades</w>\nÅ Ł\njura ssic</w>\ncardi ac</w>\ndr s</w>\nwidesp read</w>\nÃ ł</w>\ndail ies</w>\nvend or</w>\nsim plicity</w>\nwi der</w>\nlen ses</w>\nsupp lements</w>\nde pos\nob served</w>\nvin es</w>\nparti ally</w>\nrenew al</w>\ncollabor ate</w>\nali g\nfin ity</w>\nph u\nzz y\npe tit</w>\nðŁĵ ħ</w>\nz in</w>\ni gu\nsm ack\nfall on</w>\nðŁĵ £</w>\nback wards</w>\ncomp onent</w>\no so</w>\ncompati ble</w>\nbin ding</w>\nzur ich</w>\nthom e</w>\nw ounds</w>\nly ric</w>\nfresh men</w>\nsne aky</w>\nfi bro\ndi et\nemplo yer</w>\nin sect</w>\nh ated</w>\nsch er</w>\nraz or</w>\nn sw\nboo ker</w>\ncalifor ni\nav fc</w>\nÂ °\npreten ding</w>\npep si</w>\nal is\nun titled</w>\nk art</w>\ngrand parents</w>\ne the\no ck</w>\nlux emb\nvisu als</w>\nsmall business</w>\nabdul lah</w>\nmin ho</w>\nsu baru</w>\nh ra\nreve aling</w>\nheart breaking</w>\nclar ity</w>\nam g</w>\nsl r</w>\n** **\nâŀ ĸ\nrecor d\nici ary</w>\nmin ded</w>\nye h</w>\nexce ssive</w>\nknu ck\nicec ream</w>\ntru th\nev ic\nta stic</w>\nant arc\nren dering</w>\n, ,\nmit t</w>\nloren zo</w>\nst patrick\nbound ary</w>\nzi g</w>\nvo cab\nosa ka</w>\nfur n\ntu n</w>\ngu l</w>\ns ounding</w>\nblo gger\nutter ly</w>\ng af\nadv ancing</w>\nl cd</w>\nmar gin</w>\nlifel ong</w>\nsolst ice</w>\nsh ra\nwa its</w>\nple ar\nbre ach</w>\nen ligh\nad er</w>\nitt le</w>\nc ation</w>\nho on</w>\nstu died</w>\n?? ???</w>\nk ash</w>\nev angeli\nps l</w>\nwei ghts</w>\nmet als</w>\nty res</w>\ntur no\nwi e\ncar b</w>\ng ale</w>\nse al\nsun ite</w>\nam ic</w>\npatter son</w>\nÃ¡ n</w>\neu ph\nup stairs</w>\nquali fiers</w>\nkhali fa</w>\napple music</w>\nìĨĮë ħ\nvau ghan</w>\nal ter</w>\ncru iser</w>\nmu a</w>\nt ana</w>\nkat rina</w>\nid ols</w>\nspo iled</w>\nsecre tly</w>\nfi bre</w>\npart nered</w>\num es</w>\ngi ov\ncom et</w>\nscreenshot saturday</w>\nk eller</w>\nfil tr\nfe t\ncon way</w>\npe u\nbad minton</w>\ngi d</w>\nm ound</w>\ndon key</w>\nbu ff</w>\nlea ther\nlar gely</w>\nbro ch\nint ments</w>\nam use\nr k</w>\nsto ve</w>\nimpac ted</w>\ncon t</w>\ncr acks</w>\nprison er</w>\nbar i\ncontrac tor</w>\nori oles</w>\ndomin ate</w>\npol ar\nam elia</w>\ndr c</w>\nðŁĳĮ ðŁĳĮ</w>\nvi st</w>\nsu arez</w>\ninjec tion</w>\nblo oms</w>\nðŁļ¨ ðŁļ¨</w>\nsti ff</w>\npay pal</w>\nsno wing</w>\nthur sdays</w>\ngoo se\nwe dge</w>\neduc ated</w>\nweak ness</w>\nde cker</w>\nabud ha\nbree zy</w>\nÛ Į\nhope ful</w>\no bi\nrai der</w>\ngh am\nde u\nse ve\npar tly</w>\nfu t\ninfu sed</w>\nmer ri\nthan e</w>\nsome time</w>\nhu e</w>\nme in</w>\ncre dit\nsli ding</w>\nran de</w>\ncher ry\ndead pool</w>\nsh ol\nar am</w>\nunder wood</w>\nsky e</w>\ndistur bing</w>\nm nt</w>\npoli shed</w>\nguardi ans</w>\nha dn</w>\npic asso</w>\nari us</w>\nak shay\nir ri\nj h</w>\nhapp en\nla kh</w>\ndal ton</w>\nat the\ns well</w>\nmar sha</w>\nre h\ncour s</w>\nj kt</w>\ntop us</w>\nserv ice\nr ink</w>\nhack ers</w>\ndono van</w>\nhor o\ntc m\nmay hem</w>\ncha se\ndev ops</w>\nken sing\nsc up</w>\nsh ere</w>\nquali fication</w>\nc live</w>\nton g</w>\nn ancy\nmar is\nder dale</w>\nber man</w>\ncinde rella</w>\njol ly</w>\nci c</w>\nloo t</w>\ncollecti bles</w>\nhom icide</w>\ng ge\nepide mic</w>\nsu ites</w>\nmu ddy</w>\ngi mme</w>\ne rec\n- *</w>\ntal la\nlis le</w>\nembro ide\nðŁĩ© ðŁĩª</w>\nveriz on</w>\nve ctor</w>\nbe anie</w>\narti san</w>\nga in\nflo res</w>\nvi gil\nu so</w>\nðŁĻı ðŁı½</w>\ngrin ding</w>\ngh er\nair ports</w>\nrespon sive</w>\nshaf t</w>\ncan cel</w>\nceremon ies</w>\ne me</w>\nat ari</w>\nbru shes</w>\neag er</w>\nbo hemi\nchildren s</w>\nyan kee</w>\nma a</w>\nsuspen se</w>\nmor an</w>\nmac ar\nsun flower</w>\ncre w\nvo id</w>\nke ar\nfashi oned</w>\njen nings</w>\nsunday funday</w>\nsub missions</w>\nme ad</w>\nher man</w>\nwa i</w>\ncrit ically</w>\nle um</w>\nbaek hyun</w>\nfor cing</w>\nco bra</w>\nãģ ®\nacqu ire</w>\nal k</w>\nge ology</w>\npri mar\nimport antly</w>\nire z</w>\nbunde sliga</w>\ncuri osity</w>\nsen a</w>\nstric t</w>\ncon soli\nwin ters</w>\nven om</w>\nchelten ham</w>\nðŁį º</w>\ncen a</w>\nt at</w>\nba in</w>\nglo ver</w>\nunder cover</w>\nas ses</w>\ncar n\nmemorial day</w>\nam eli\ni rene</w>\nch on</w>\nsyn thesis</w>\nspe edy</w>\nmitsu bi\nsla yer</w>\ncompos ite</w>\nunder stands</w>\npe w\ninter rup\nhen ri</w>\nmor row</w>\nan om\nthof july</w>\ng lee</w>\nthre e\nðŁĺ ®</w>\nand hi</w>\nch att\nrenew ables</w>\nye s\ntrans fers</w>\n!!!! !!!!</w>\nbab u</w>\ndu ter\nlo ops</w>\npe ers</w>\no ilers</w>\npau lo</w>\nic ation</w>\nh mu</w>\nwar a</w>\nmer cer</w>\nhom eland</w>\nfu ji</w>\nale y</w>\nyear book</w>\nre m</w>\nre en\nab sur\nbo is</w>\n] :</w>\ncaes ar</w>\nshot gun</w>\nkur dish</w>\no ren\nra e\nanci es</w>\nty pic\nf h\ndef ault</w>\nre plic\nlu k</w>\ntrans actions</w>\nr ys</w>\ninfan try</w>\nðŁį ¾</w>\ncho w</w>\nchick ens</w>\nba gh\nwy att</w>\nay e\ngg i</w>\nbre ws</w>\ned itions</w>\nmi ra\ncommen cement</w>\npre su\nperis cope</w>\nic hi\nguatem ala</w>\nzam bia</w>\npain ts</w>\nwit ches</w>\nwan i</w>\nun dere\ncro y\nvo ws</w>\nus mc</w>\nhear ted</w>\ntheat res</w>\nshu ffle</w>\nle vel\nmul tic\nsquee ze</w>\nfer n</w>\napp et\npost al</w>\nmal t</w>\non board</w>\nld nt</w>\nco o</w>\ns sc\nk ac\nðŁĺ ĩ\nsc rap</w>\nmar cos</w>\ndeal ers</w>\nann u\nmill er\nco ve\nul ary</w>\nvladi mir</w>\nbe ef\nth ur</w>\npick led</w>\nse same</w>\nbengal uru</w>\nmo tt</w>\nkathle en</w>\nhi st\nno tor\ndr ank</w>\ndu chess</w>\nsnow fall</w>\ne ff</w>\ntin y\nj n</w>\nsy our\nspeci alists</w>\nscot us</w>\nbay lor</w>\neve rest</w>\nmali bu</w>\npre m</w>\nharm ful</w>\nl ali\nb ates</w>\ng ye\ndifferen ti\nand ra</w>\ngeome try</w>\nel over</w>\nblack out</w>\n== ==\nko ta</w>\ninter act</w>\nasi an\nla yo\nsamu rai</w>\nfi del\nexhau sted</w>\ngla di\npd t</w>\nspher ic</w>\nanti qu\nguit ar\nstu ri\nho pper</w>\nang le\nf ills</w>\nsla p</w>\nmi th\nrod ney</w>\nong i</w>\nin som\npre venting</w>\ncassi dy</w>\nap ho\nore gon\nlo in</w>\nham mond</w>\ncontribu ting</w>\nf n</w>\ngar ri\nori on</w>\ncomp elling</w>\nescap ing</w>\naim ing</w>\nplu mb\nbi stro</w>\nbe asts</w>\nconcer ning</w>\nbo e</w>\ndo pp\nshop local</w>\nstumb led</w>\nâĤ ¹</w>\nnaz is</w>\nâĢįâĻĤ ï¸ı\ngest ure</w>\nwar ts</w>\nus open</w>\nhi ggins</w>\nchar li\nhang s</w>\nbom bers</w>\n° :</w>\nfe eds</w>\nc ch\nst il\nnic ola</w>\nðŁĵ º\nclam ation</w>\ntro pic\naf ro</w>\nou k</w>\nexpen ses</w>\nder rick</w>\nal ine</w>\nfa w\nreg ard</w>\nim er</w>\nsat in</w>\nthi um</w>\nry der</w>\npear l\nte ss\nmm mmm</w>\nsen ses</w>\nðŁĩ ¹\npositi ve\nexhau st</w>\noccu r</w>\nnor ris</w>\nlil ly</w>\nis les</w>\ndirec ting</w>\nyo fficial</w>\ncount less</w>\nsam ar\non stage</w>\nflo ck</w>\nmir rors</w>\narch er</w>\nmo i</w>\nk d\nvi v\nin os</w>\nsi kh</w>\nle i</w>\nsen sory</w>\nbr its</w>\nkno x</w>\nchest nut</w>\nop y</w>\ncoli seum</w>\nz af\ndi vin\nadap ter</w>\n:) ))</w>\ntem ple\nku n</w>\nhel mets</w>\nt df</w>\ngu ide\nm old</w>\no ids</w>\nlu ther\nhe is\nmonaster y</w>\nsp ree</w>\nk lu\nbrit ney</w>\njagu ars</w>\ngre ats</w>\nc cc</w>\nky rie</w>\nmachin ery</w>\ncric ket\nre ro</w>\nab o</w>\naspir ing</w>\nsemi finals</w>\nale ss\nsig natures</w>\nvar d\nme th\nher bal</w>\nhol den</w>\nking dom\nap or\nreg gie</w>\nore o</w>\npalestin ians</w>\nem mys</w>\nsec tional</w>\nro i</w>\nney mar</w>\nqu el</w>\ncu ll\nl ka</w>\nhaz el</w>\nestim ate</w>\nul ties</w>\ngo w\nbe a\npurch ases</w>\nbel ts</w>\nprotec ts</w>\nm Ã©\ngue ssing</w>\nbb o</w>\nclau dia</w>\nfr acking</w>\njon ny</w>\nel k</w>\ncel tic\nal mighty</w>\nra je\ncourty ard</w>\nig i</w>\ncan es</w>\nðŁĴª ðŁı»</w>\nbank rup\nle thal</w>\nâľĮ ï¸ı\ngraphic design</w>\nvad er</w>\npenc ils</w>\nrough ly</w>\ndan te</w>\nm fg</w>\nconst ell\ncam el</w>\nj b\nbloss oms</w>\nen to\nbalo chistan</w>\ncine mato\nill ard</w>\njer sey\ncon sent</w>\ndent ed</w>\ncon templ\nsch er\nhol i</w>\nlou gh\nst our</w>\na yo\nbegin ners</w>\ncur b</w>\nv hs</w>\na jax</w>\ndu ff</w>\nav eng\ndom est\ncommit ting</w>\nai red</w>\ncha p</w>\nhedge hog</w>\ndisappo inting</w>\nfreel ance</w>\nin land</w>\nchar ms</w>\nðŁĺį âĿ¤ï¸ı</w>\nai sh\nm x\nbuck le</w>\nti dal</w>\nper mit</w>\nbo ating</w>\nra cha\nkend rick</w>\nb ello</w>\nb hi</w>\nple a</w>\nestim ates</w>\nl b\napo logies</w>\njay a</w>\nbb l</w>\nast oni\ninter state</w>\nmain taining</w>\nel bow</w>\nmu p</w>\nep it\nðŁĺ ¡\nviol ations</w>\ndef end\nbe h\nsl c</w>\nam ir</w>\npur i</w>\nti um</w>\nfi fa\nblur ry</w>\nscri m\nðŁĻı ðŁı¾</w>\nma ple\nrel atives</w>\nâĺ Ŀ\ncho c</w>\ncon nor\nâľ¨ âľ¨</w>\nwhi sp\nlist ings</w>\nma ze</w>\nthan king</w>\nri dd\ngrass roots</w>\nshi fting</w>\ndesper ately</w>\ngor illa</w>\nden i\nju les</w>\nstra th\ng ley</w>\nja in</w>\nbu ick</w>\nt anner</w>\nðŁĴ Ŀ</w>\nga e</w>\npri m\nit ors</w>\nn ano</w>\nsepar ation</w>\narmen ia</w>\nbor deaux</w>\nðŁ ħ\npj net</w>\nbu rial</w>\ne bon\nglo ss</w>\nre new</w>\ngri er</w>\nspe eds</w>\ncomic books</w>\nsym boli\npur poses</w>\nãħł ãħł\nspati al</w>\nno table</w>\nci on</w>\nn ps</w>\nho ffman</w>\nnor man\nrt g</w>\ndu sty</w>\nsitu ated</w>\ntr an</w>\nk fc</w>\nem en</w>\nnic kel</w>\nhast ings</w>\nsett ling</w>\ngr it\nl ena</w>\nw aw\nart s\ngu m\nca regi\nle wis\nsapp hire</w>\nrememb er\nembed ded</w>\nt lc</w>\nbl at\nserge ant</w>\nel sa</w>\nboot camp</w>\nbow man</w>\nphoto graphic</w>\npill ars</w>\ndirection ers</w>\nclassi fied</w>\nno is\nve er</w>\nbarre ls</w>\nwh oop</w>\nðŁĺ± ðŁĺ±\nfe male\npetro leum</w>\nmedi a\ne fc</w>\npokÃ© mon</w>\nà¤ ķ</w>\nenthusi astic</w>\nvar un</w>\npro files</w>\npedi atric</w>\nacci dents</w>\ncon rad</w>\njan g</w>\njo jo</w>\nac or\nob server</w>\nl f</w>\nlive stock</w>\nfor gi\nfo s</w>\nel m</w>\nan and</w>\ngo e\nc ere</w>\navoi ding</w>\ngri t</w>\nom an\nthank fully</w>\nscat tered</w>\nnick y</w>\ncylin der</w>\nchees y</w>\ndi ver</w>\nmahe sh</w>\ncav es</w>\near liest</w>\nqu inte\nsubjec ts</w>\nb end\ngul f\nvocali st</w>\nglu e</w>\npat ches</w>\nun stopp\nsny der</w>\ndemonstr ating</w>\npi o</w>\nhor ns</w>\nwic kets</w>\nand the\nr ama</w>\nyo on</w>\nstra ight\nbed time</w>\nor ang\nbul lets</w>\nsa urus</w>\nmin ers</w>\ninci dents</w>\n! ...</w>\nðŁİ ¸</w>\nag ers</w>\nhand les</w>\nstat es\nin ity</w>\nd ons</w>\nincredi ble\nemin em</w>\navi v</w>\nru dy</w>\nmoz art</w>\nfolk lore\nappli ances</w>\nmt l</w>\nfre y\ndi as\nhu a</w>\npage ant</w>\nstri ve</w>\nim prison\nbul lish</w>\nr ana</w>\nal erts</w>\nbb mas</w>\nhy per</w>\nderby shire</w>\nre cre\nre dd\ndebor ah</w>\ncosmo s</w>\nlaw son</w>\nmel anie</w>\npsy cho</w>\nho or\ndoo dles</w>\nsni per</w>\nshad y</w>\nman tle</w>\ncanadi an\nnew year\ninter actions</w>\nsepar ated</w>\ncor ds</w>\nspiritu ality</w>\nap u\nit o\np ct</w>\npel osi</w>\nrebel lion</w>\nse iz\nwor cester\nsec tors</w>\nul i</w>\nsan ta\nÐ µ\nðŁĩªðŁĩ ¸</w>\nbi ased</w>\nclass ical\ngam ma</w>\ndee plear\nemer ge</w>\nback er</w>\nsur ance</w>\nhand crafted</w>\nðŁİ ¥\nfranc is\nmill an</w>\nic i</w>\ncro wn\nwo w\nstri ped</w>\nun fair</w>\nrelax ation</w>\n³ ï¸ı\nembrac ing</w>\nshe alth</w>\npale o</w>\nmartin i</w>\ndist illery</w>\nwr ink\nor k\nna th\nhay ley</w>\ncour thouse</w>\nsi ber\nsa di\nquiet ly</w>\nmel t\nm sm</w>\nme h</w>\nsmart phones</w>\nrel ent\npp ing\nwar wick</w>\nco logne</w>\ngli a</w>\ncot ton\npro g</w>\nlon e\nip sw\nstar ters</w>\nexpan ds</w>\nu mp\nsu ed</w>\nski pper</w>\ninfe ctions</w>\ning le\nÃ ¡</w>\ncler k</w>\ndemonstr ate</w>\nac ar\nðŁĺĤðŁĺĤ ðŁĺĤ\nti bet</w>\nbun s</w>\nalo m</w>\ndemol ition</w>\nssi a</w>\ng st</w>\n[ ]</w>\nso ar</w>\nâĺ Ģ</w>\nðŁĺ ª</w>\nðŁĵ Ĭ</w>\ndee pest</w>\nbeyon d\nare t</w>\natt ends</w>\nactiv ated</w>\ndi mit\nâļª ï¸ı\nhigh lighted</w>\nmagaz ines</w>\nrum or</w>\naz za</w>\nsteph ens</w>\ndol ph</w>\nsho ckey</w>\nmat s</w>\nwe av\nmel an\nserv ers</w>\ntra um\nku sh\næ Ĺ\nbab ys\npa z</w>\na al\nla use</w>\nbreak ers</w>\ncanter bury</w>\nul ture</w>\nmi ri\neuro s</w>\ntane ous</w>\nimpre ssions</w>\ndu tch\nil d\ngh i</w>\npur due</w>\nadequ ate</w>\nl p\nsy ner\nang ler</w>\ndu rable</w>\ngal ore</w>\nro wn\nmg mt</w>\nðŁĵ Į</w>\nlu cia</w>\nâĺĳ ï¸ı</w>\nzay n\nbor row</w>\n. (</w>\nnorth umber\ncru sh\neng a</w>\nsu sh\nextra vag\nt out</w>\nma hal</w>\nali stic</w>\nther mo\ngall eries</w>\nes se</w>\nchi bi</w>\nattrac tions</w>\nlex ington</w>\nlegislat ure</w>\ndocu mented</w>\nresi den\nbrow nies</w>\nw f</w>\nst ool</w>\nplan ets</w>\nsho ppers</w>\nconduc tor</w>\nms p</w>\ntr icky</w>\nfru ity</w>\nend ra</w>\nfeel the\nwhi pped</w>\nhair style</w>\nre fer</w>\noo k\noc topus</w>\naudi ences</w>\nku mar\nafter no\nop tim\nc fl</w>\nni p</w>\ngen i\nalpha bet</w>\nann ab\nlam in\naccep ts</w>\nl ng</w>\nðŁĺ «</w>\nt ine</w>\nac om</w>\ncheer leaders</w>\nt k\ngr on\nv g</w>\nk ung</w>\nja x\ndha bi</w>\nr ss</w>\nmack enzie</w>\nbeir ut</w>\nclean up</w>\ngy psy</w>\nst ell\nbur ger\nhurric anes</w>\neduc ation\nst ina</w>\nâĻ¡ âĻ¡\nunfortun ate</w>\njere mi\nbad ger</w>\nat ers</w>\n: âĢ¦</w>\nter ra\nsubli me</w>\nstu d\ny mca</w>\nmr u</w>\nduter te</w>\nbren nan</w>\nbul b</w>\nmel o</w>\nyl on</w>\nhack er</w>\nc red</w>\ngu d</w>\nas an\npad illa</w>\nembroide red</w>\nvietnam ese</w>\npione ers</w>\nprojec tion</w>\nre boot</w>\nid c</w>\nan ey</w>\npri mer</w>\nsuff ers</w>\nwin ding</w>\np on</w>\nsto day</w>\nmor n</w>\nu ch</w>\nall in</w>\nadid as\neliza beth\ntu ck</w>\no graphy</w>\nðŁļ Ģ\nbe g</w>\nos borne</w>\nghet to</w>\nr h</w>\ncn n\nir ma</w>\nma kin</w>\ncab les</w>\nmur ders</w>\noc ks</w>\ninst a\nal as</w>\nsi k</w>\ncu ff</w>\nla re\nfoo dies</w>\no vic</w>\nat om\ngeome tric</w>\nem pathy</w>\nà¸ µ\ncent enary</w>\nnewsp apers</w>\nadministr ative</w>\nðŁİ Ĭ</w>\nsti ve</w>\ncontrac tors</w>\nle tt\ntas mania</w>\nawesom eness</w>\nden sity</w>\nve en</w>\nprince ton</w>\nfrequ ently</w>\nre ject</w>\ngh i\nmodu lar</w>\nceram ics</w>\nsh ag\nki wi</w>\ncan vas\nsweat shirt</w>\nan j\nti mm\nnapol i</w>\nil er\nappe als</w>\nhamil ton\nma yo\nwe ave</w>\narrang ed</w>\nwhar f</w>\noccu py\nb vb</w>\nas aki</w>\not ter</w>\nnor m</w>\nvi es</w>\nde tox</w>\ntion al\ndere k\nid ad</w>\nad missions</w>\nconstitu ency</w>\nu pper\nwoo t</w>\nallo y</w>\nse ve</w>\nlu b\nun comfortable</w>\ned win</w>\nab re\nd wight</w>\nar che\nvirtu ally</w>\nsp ol\npri e\nai i</w>\ner r\nswit ch\nbar ack</w>\nse ok</w>\ncou l\nwn t</w>\npou l\no live\ncaffe ine</w>\ncardi ff\nnotor ious</w>\nde mp\nex cess</w>\nbar r</w>\nt ford</w>\na jay\nbump ed</w>\nmy thology</w>\nshel ley</w>\nfal con\nshakespe are\nmust angs</w>\nno ted</w>\nbon e\ncivil ization</w>\nsy d</w>\npar sons</w>\nun official</w>\nhy ped</w>\nsp ends</w>\noppo sed</w>\nv ings</w>\nspace x</w>\nnoti fication</w>\ndeci ding</w>\nbio tech</w>\nout si\nsal ah</w>\n! .</w>\nfe d\nss y\nc ms</w>\nbad gers</w>\ncr o</w>\nela ine</w>\nn ba\ndy our\nn ant</w>\nhoney moon</w>\nclimb ed</w>\nconom y</w>\nath a</w>\nm ell\nne bula</w>\nnature photography</w>\njuli e\nbm x</w>\ninve sted</w>\nmon o</w>\nlieu tenant</w>\nwat kins</w>\ntechn ician</w>\no se</w>\nka e\nì Ľ\nmc queen</w>\npre ach</w>\ntrav eller</w>\nflexi bility</w>\nze bra</w>\nreta iler</w>\np ant</w>\nben der</w>\nbrand t</w>\nsqu id</w>\nwar rant</w>\nveri fied</w>\ncas s</w>\npier cing</w>\nhon ours</w>\nt ying</w>\nmor ris\nkis sed</w>\nop rah</w>\npanor amic</w>\nme i\nsplat oon</w>\nwich ita</w>\nari as</w>\ngal li\nindy ref</w>\ngood times</w>\nathe ist</w>\nconfe ssion</w>\now ski</w>\nre pping</w>\nad ditions</w>\nmechan ism</w>\nz im</w>\nj ans</w>\nsu f</w>\ncho pped</w>\nbeg innings</w>\nvitam ins</w>\nãħ¤ ãħ¤\nor th\npo les</w>\nru b</w>\nantarc tica</w>\nindie film</w>\nweb cam</w>\nket ch\nbre tt\ncle ment\nher on</w>\ndefe ating</w>\nhydr o</w>\nbuc ket\nwand ering</w>\nsid ney</w>\nfuture of\nb inge</w>\non ies</w>\nknock out</w>\nadministr ator</w>\nsyn the\nl ent</w>\njan i</w>\nbar ley</w>\npremier league</w>\nner ds</w>\ncr m</w>\nbra s</w>\nbot any</w>\nevol ved</w>\nrot ter\nro wed</w>\ntum or</w>\nweal thy</w>\nÂ Ń</w>\nmon arch</w>\nli shed</w>\nda hl</w>\nðŁİ ĥ\nbu ch\nken yan</w>\nØ §</w>\nred ness</w>\nassemb led</w>\nse mit\nhud der\nshro p\nran i</w>\nlear ning\nmor y</w>\niti a</w>\ngeo graphic</w>\nworl dof\nf b\npho sp\nboo gie</w>\nam ped</w>\n? ...</w>\nche w</w>\ndwar f</w>\nar us</w>\ns sen</w>\nru sty</w>\nrecru its</w>\nh k\ngar de</w>\napp lause</w>\nvol umes</w>\ninvol ves</w>\nta c</w>\nhand bag</w>\ntrans late</w>\nffe l</w>\nse ym\naqu atic</w>\ntrans fer\nzo di\nand r\nacade mia</w>\ncr ater</w>\nte z</w>\nar se</w>\nadap t</w>\ncol oni\nsnow man</w>\nmal i</w>\nhang in</w>\ndi schar\noy sters</w>\npho e\ncolon el</w>\nw ba</w>\nhispan ic</w>\nthri ving</w>\nsh y\nag les</w>\nsales force</w>\ncre me</w>\nso les</w>\nla fayette</w>\nâ ī\nter ia</w>\nach a</w>\nsp erson</w>\ngo go</w>\ncar ly</w>\nthe ore\nam ore</w>\nvo x</w>\naf t</w>\nãĤ ¹\nstap le</w>\nmu ffin</w>\ndi agram</w>\nino x</w>\nsu stained</w>\nav ent\nme ta</w>\narbit r\ndec ay</w>\nado le\nÐ ½\nec ol\nph o</w>\nn k\no cu\ngr anny</w>\nÃ§ a</w>\nluxemb our\nstad t</w>\nalber to</w>\nle vit\nam as\nd x\nor phan\nco bb</w>\nas c\nlo gy\nimmen se</w>\nchan ts</w>\noff line</w>\np ent</w>\nbre x\nw inger</w>\nplan e\ni el</w>\nnichol s</w>\nca thy</w>\nnar uto</w>\nlow ed</w>\n/ //</w>\nignor ance</w>\ncat astro\nyou ts</w>\nsch en\nbuil d\nhaz i</w>\ns ine\ncritical role</w>\ndu g\ndete ct</w>\nlo gs</w>\nen amel</w>\nstpatrick sday</w>\ned die\nco pa</w>\ncigare ttes</w>\nho ff</w>\nkay a</w>\nla goon</w>\nra pha\nair borne</w>\nchoo se\npuer tor\nke v\ngui ding</w>\nfro sty</w>\nbor ough\nmir a</w>\nðŁİ Ĭ\ncade t</w>\nanu sh\nyo gi</w>\ne ger</w>\nfl ing</w>\nslo pe</w>\nnin th</w>\nwe ston</w>\nfoot wear</w>\nf n\nmay weather</w>\na am</w>\npla in\nstair case</w>\nwitne sses</w>\nwork outs</w>\nro bust</w>\ndex ter</w>\nco hort</w>\nðŁļ Ĺ</w>\nsp ell\nha ze</w>\no om\norgan ising</w>\nwild fire</w>\ncont acts</w>\nav on\nmin o</w>\nupd ating</w>\nðŁį »\nli thium</w>\ning ual</w>\nk is</w>\nau ga</w>\nlo com\nde duc\nu da</w>\nth ak\nboy le</w>\nmp er</w>\nhot tie</w>\neri k\nre vised</w>\nis la</w>\ntravel photography</w>\noo za</w>\nen qui\nconfe rences</w>\nclo ver</w>\ng room</w>\ncur ves</w>\nlive on\nper f</w>\ndisplac ed</w>\nbo log\nxx xx</w>\nðŁĺ© ðŁĺ©\nte al</w>\nve ssels</w>\nrain forest</w>\ncal ci\npan ther\ngira ffe</w>\nta sted</w>\nimag ery</w>\npad res</w>\nday time</w>\nbas s\nri pe</w>\nopio id</w>\nnu e\nvin yl\ninvent or</w>\nsen s</w>\nprocess or</w>\nmu t</w>\ngad gets</w>\nbibl ical</w>\nshann on\njacqu eline</w>\ncar y</w>\nthe resistance</w>\nali en\nn vi\nco sy</w>\nbi har</w>\nfo ley</w>\nren d</w>\nmu gs</w>\nfa ken\ncl one</w>\nni allo\ngra bbed</w>\nchi hu\npower house</w>\nn tt</w>\nchero kee</w>\nspon ge\nimple menting</w>\nrh ine\nle one</w>\nðŁį Ģ\npret tiest</w>\ninfra red</w>\nimpro v</w>\nswit ched</w>\ntu bes</w>\ncon tr\nbl k</w>\nprojec ted</w>\nbe aver</w>\nyo t\nbbcra dio</w>\nthi gh</w>\nper secu\napologi ze</w>\nw ack\npo ster\noli ver\naz a</w>\nlou d\n( ?)</w>\nf the\nwomen shi\nspar row</w>\nblu sh</w>\nus able</w>\nsc ales</w>\nit ative</w>\npeu ge\nne eding</w>\nlegg ings</w>\nglam orous</w>\nmat ur\nc z\nwat t\nda b</w>\ntam ar\net sym\nbau er</w>\nheart felt</w>\nh n\nelse where</w>\nbir ch</w>\nalu mini\nhu ck\ne me\nj l</w>\ntraf ford</w>\nd z</w>\npor tions</w>\nana sta\narthr itis</w>\nesp n\nber gen</w>\nviol ation</w>\nyo shi\nc z</w>\nnorthumber land</w>\nclo sures</w>\nðŁĩ¯ ðŁĩ\nsmi ley</w>\nr w</w>\ntel ugu</w>\ninten si\ngre gg</w>\nve ga</w>\ndun geon</w>\nsouth bound</w>\nba il\ndomin ican</w>\nsemi final</w>\nchap ters</w>\nh itch\nvan ity</w>\ntrans iti\nrecomm ends</w>\nsati sf\nbar ca</w>\nqueen s\n( (\nde struc\nstra it</w>\nra vi\ndess erts</w>\nin tru\nhar am</w>\nk os</w>\nfo e</w>\nfat ty</w>\npais ley</w>\nmagn itude</w>\ndri dge</w>\ncom ey</w>\nschem es</w>\nvision ary</w>\nour t</w>\ndown loaded</w>\nðŁĻĮ ðŁı½</w>\ngd pr</w>\nlan i</w>\np wc</w>\ngu ad\nnic est</w>\nstake holders</w>\nre ferred</w>\ngeorge town</w>\narvind kejriwal</w>\nschnei der</w>\nin doors</w>\nall star</w>\nstrand ed</w>\ngen der\nze pp\nma sses</w>\nðŁĲ ±</w>\npati ently</w>\nbl dg</w>\nz ab\nwe arab\nvi vid</w>\nhe ck\nd ella</w>\nsy mb\nje opar\nla ger</w>\nà ª\ncomb ines</w>\nne c</w>\nbr ay</w>\nflo p</w>\ntx wx</w>\njo ys</w>\npon t</w>\npro found</w>\nsur round</w>\nmad hu\nma ble</w>\nay r\nte as\nn sa</w>\nopen ly</w>\ner nest</w>\nãĥ ©\nto po\ng na</w>\nanti oxid\nti an\ne tr\nc ello</w>\nma thi\ngener osity</w>\nb iting</w>\nman ic\nkel sey</w>\nchee ks</w>\nten der\nw th</w>\npron oun\nultimat ely</w>\ngu sta\nari anag\nger ry</w>\nble ed\nred dy</w>\nmic h</w>\nmitsubi shi</w>\noper ated</w>\nsex ually</w>\nma u</w>\ncl lr</w>\nvi ds</w>\nco c\nmel ted</w>\nðŁĮ Ī\nq ld\nite ch</w>\ninstru mental</w>\nend game</w>\nðŁĵ ĸ</w>\nener gi\nbrow nie</w>\ntam il\nat in</w>\ndomin ated</w>\npra ises</w>\nfire place</w>\nsens ational</w>\nmen a</w>\nk arti\nun prece\nru pt</w>\nori ental</w>\nmc cor\ntour naments</w>\nscen ter</w>\nre eves</w>\nprescri ption</w>\nsam e\nfra u\ntru ffle</w>\nem bo\nroman s</w>\nbla sts</w>\ntechno logical</w>\npr at\nb sb</w>\ny ar</w>\ntren dy</w>\nac l</w>\nal ad\nðŁį ģ</w>\no hh</w>\nbankrup t\ntho ven</w>\nregar ds</w>\nis er\nwar wick\nvine yards</w>\nreal m</w>\nniallo fficial</w>\ndo ta</w>\nge mini</w>\nto do</w>\nv able</w>\nÂ¨ Â¨\nla u</w>\nwre ath</w>\nju ve</w>\nnat asha</w>\nle ver</w>\nlor i</w>\nhor ser\ncc tv</w>\nair bnb</w>\nes anders</w>\nsin clair</w>\nema biggest\nhigh school</w>\ncon test\noptimi stic</w>\nt te\nðŁĴķ ðŁĴķ\nss d</w>\nye e</w>\nhel ena</w>\ncon sen\nric ks</w>\njes se\nan ic</w>\nðŁİ ¯</w>\nre acts</w>\nro be</w>\nindepend ence\nvol tage</w>\nm ington</w>\ns ant</w>\nà¸Ļ à¸\n-------- --------\nsentin el</w>\nke tt\nrehear sing</w>\naaaa aaaa\nsof the\nstir ling</w>\nsear ch\nwi gan</w>\nstand out</w>\nsna il</w>\npent agon</w>\nÄ ģ\nch lor\ncru st</w>\nnet any\nchemi st</w>\ndisapp eared</w>\nric ardo</w>\nsp iders</w>\nbo se</w>\nwar ren\nme ssing</w>\nbann ers</w>\ngu el\npar ach\nma id\ncoun ted</w>\nepi le\nbon fire</w>\nspeech less</w>\nse tter</w>\nmeas ured</w>\nrejec ts</w>\nnik ki\nle ster\nforen sic</w>\nfab rics</w>\nalo ha</w>\npre served</w>\nwat ford</w>\ndeta iling</w>\ndar th</w>\nbo u</w>\ncar ly\n... '</w>\ntail gate</w>\nnoti fications</w>\nå ¤\npas sive</w>\ntrous ers</w>\nbalo ch</w>\nro ther\ntypic ally</w>\nÃ ¥\nsp it</w>\nwi z</w>\nsic ily</w>\ntechnic ally</w>\nex pose</w>\nst age\nhu bb\ncre am\ncap s</w>\npo ke</w>\nsle ek</w>\nju ne\ntempor arily</w>\nde z\nawak ens</w>\nl ame</w>\n_ -</w>\nji ha\ntues days</w>\nadvis ed</w>\nadvis ors</w>\nexi sted</w>\ndis agree</w>\nnews room</w>\nlo sers</w>\nworld tour</w>\ndr ying</w>\nal di</w>\nhar ness</w>\nfoot print</w>\nhobb it</w>\np mln</w>\ni ro\nque red</w>\nasse ss</w>\ngaz e</w>\nsa b</w>\nth ian</w>\ní Ĭ\nti f</w>\nob serve</w>\nev il\ndra wer</w>\nswee p\ncor y\nco dy\nkyo to</w>\ncal lum</w>\nn inj\nlau rent</w>\nbe i</w>\nsket ching</w>\ncustom ized</w>\ndu r</w>\nregre ts</w>\nknox ville</w>\nìķ Ħ\nmess aging</w>\ngrac ie</w>\nabun dance</w>\nbi dding</w>\nbre wed</w>\nfl ouri\ntherapeu tic</w>\nalt itude</w>\nho gs</w>\nbur ner</w>\nelec tro</w>\nwonder fully</w>\nhe ater</w>\npost pon\nli very</w>\nr all\nad as</w>\na ac\nsau l</w>\nbrook lyn\nplay house</w>\nâĻ¥âĻ¥ âĻ¥</w>\nchar itable</w>\nin y</w>\nz ah\ncompet itions</w>\nbe av\nplu gged</w>\no is</w>\ndo om\nastron om\nspeci alized</w>\nmax i</w>\nta ps</w>\ncellu lar</w>\ndepre ssed</w>\nfolklore thursday</w>\ncri b</w>\ne mul\në° ©\nfi gh\nru z</w>\ncar lisle</w>\nspe ar\nside walk</w>\nde i</w>\ndepend ent</w>\nlac es</w>\nnh s\nðŁĮ Ļ</w>\nreali zing</w>\nnet work\nric he\nre gin\nre fresh</w>\nst ral</w>\npa thology</w>\npla id</w>\npsyched elic</w>\nhin d</w>\nu ka</w>\nalgori thm</w>\nlin king</w>\nprogre ssi\nfe y</w>\nd ade</w>\nhydr ated</w>\nb ant\nfam ed</w>\ncot sw\nbo ise</w>\nas c</w>\nrac ing\nja vier</w>\nww en\nmar lins</w>\npoo p</w>\nswe pt</w>\ntoni ghts</w>\nwe f</w>\nani me\nslo vak\nâŀĸ âŀĸ\ncla us</w>\nlem me</w>\ncli ppers</w>\nre ls</w>\narianag rande</w>\nr te</w>\nko t\nthal apathy</w>\nhungar ian</w>\nzu ma</w>\ny von\nis u</w>\njour neys</w>\nclin ics</w>\nbe be</w>\nww f</w>\nn ws\nsuper heroes</w>\ner it\nsle ague</w>\nidenti fication</w>\nmo tto</w>\nba i</w>\nsour ced</w>\nill er\nap i\npri se</w>\nunprece dented</w>\ndam as\ntuni sia</w>\ndra in\nundere stim\ne ther\nquarter ly</w>\nrewar ding</w>\nal ham\nwolver ine</w>\ncab ine\nhyp no\nnad ine</w>\nhav ana</w>\nda e\nðŁĵ Ī</w>\ndr on</w>\nread ings</w>\nb ati\npic o</w>\nmer ci\niti an</w>\nwal kers</w>\nel ope</w>\nmi key</w>\ngod zilla</w>\nbur lington</w>\nabu ja</w>\nsocial ism</w>\nat ility</w>\nsh ell\nharry potter</w>\ng no\nab ur\nre leg\nfel ici\nro gen</w>\nneuro science</w>\ninst in\nath am</w>\nvou chers</w>\nj arre\nfu se</w>\ndef ici\nmonte rey</w>\nde port\nmid day</w>\npp ard</w>\nfre ed</w>\name ter</w>\nwil t\nn ingham</w>\npr att</w>\nliber ty\nslo gan</w>\no to</w>\npr i</w>\nco ated</w>\nc pd</w>\nne tt\nil las</w>\nmal awi</w>\nevol ve</w>\naccessi bility</w>\nðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥\nor nament</w>\nb p\nel is\nson line</w>\nchi ro\nfl ick</w>\nib m\nar ak\nen ables</w>\ngar land</w>\nsan e</w>\ncu ties</w>\ntri p\nrotter dam</w>\nn ys</w>\nlam ps</w>\nlu cas\nbo g\nra ils</w>\ntravel led</w>\nhic ks</w>\nen u\nsab ha</w>\nscru b</w>\nhi er\nhart ford</w>\nfo o</w>\nfer nandez</w>\ntre vor\nmat tress</w>\nappo intments</w>\nale j\nfe i\no logist</w>\nsaf ar\noc ta\nsr c</w>\nsha un\nambi ent</w>\ndri c</w>\nbi ker</w>\nshe e\nmust ache</w>\nh ta\nbo one</w>\nher ty</w>\ncar dio</w>\nbra kes</w>\nrec ital</w>\nconsi sts</w>\noverwhel med</w>\ncau l\nrobb ins</w>\nim it\nal th\nur l</w>\nbi bli\non ne</w>\nblack livesmatter</w>\ndiffic ulties</w>\ntel ang\ntall er</w>\nðŁĵ Ĩ</w>\ndeb ating</w>\nbur rito</w>\nmo vember</w>\nstrength ening</w>\nbo e\nte stam\nmirac les</w>\nbase ball\nre nee</w>\nðŁĳī ðŁı»</w>\nal fa</w>\nâĺ ĺ\nunstopp able</w>\nec s</w>\ng mo</w>\ngiftide as</w>\npath way</w>\nfen cing</w>\nðŁİ ¤\nb ham</w>\nra s\nsk o</w>\nd led</w>\nthel ast\nmagn um</w>\nbin ary</w>\nwil de</w>\nwil der</w>\nwh ati\nbarbe cue</w>\nh ism</w>\ncan oe</w>\nkur di\neli ve</w>\nadvant ages</w>\nmad ame</w>\nbi er</w>\nmis sing\nenter tain</w>\nair force</w>\ny ama</w>\nc is</w>\nhash tags</w>\nj is</w>\nve il</w>\ndream y</w>\nten se</w>\nmay ward</w>\nch ateau</w>\nhunt ington</w>\nâļ ĵ\nv all\nup on\nbl ouse</w>\ndun es</w>\nðŁĺ ´\nfert ility</w>\nm ole</w>\ncurren cies</w>\nst u</w>\nber lin\ntoa sted</w>\ndiv as</w>\nwal t\nlar k</w>\npor a</w>\nhit ter</w>\num er</w>\nchil led</w>\nbal ancing</w>\nfa is\ny in</w>\nor tiz</w>\neast enders</w>\nh ate\nur al\nap ril\ntim el\nà ±\nper o</w>\nsto cked</w>\nrespec ts</w>\nth t</w>\nbest friends</w>\ngiving tuesday</w>\nbe ad</w>\ninv ent</w>\nim i</w>\nnap les</w>\ncomb ining</w>\ntok ens</w>\nthir st</w>\nma sc\npar rot</w>\nsp u\ndent on</w>\n* -*</w>\nt res</w>\nsubur ban</w>\nwid th</w>\nsi ve\ncon tender</w>\nsiri us\nlo k</w>\ntroop ers</w>\noutra ge</w>\ntur bo\nfrag ile</w>\nme ssed</w>\ndo h</w>\ndisc ord</w>\nnetany ahu</w>\nre sign</w>\nforgi veness</w>\nmo han</w>\nmun ch\ncam ou\nidenti fying</w>\nenab ling</w>\nhot ter</w>\nthorn ton</w>\njai pur</w>\nar ya</w>\nðŁı» âĢįâĻĢï¸ı</w>\nmu staf\nmaj ors</w>\no ke</w>\ndu ffy</w>\nroh ing\ntil t</w>\nðŁĩ®ðŁĩ ³</w>\nrock star\nshe ep\nhend rix</w>\nra v</w>\nin vention</w>\ndo u</w>\nlagun a</w>\ngru mpy</w>\nsw is\nim pe\n) '</w>\nyou ths</w>\nbun ker</w>\nst ache</w>\noppo se</w>\nindi es</w>\nacceler ate</w>\nml p</w>\ned en\nw ann\nk ail\nakshay kumar</w>\nsu pt</w>\npol ym\nmidd leton</w>\nextra ordin\nwil son\naustrali an\nalumini um</w>\nway ne\nalum nus</w>\nmat ics</w>\ngri m</w>\ner nie</w>\nopp a</w>\ncompetit ors</w>\nrand all</w>\nh ence</w>\ndecla res</w>\npre aching</w>\nsha he\ncan e\nsustain able\nstap les</w>\nle dge\nad ena</w>\ndoctor al</w>\nbur gundy</w>\ndecor ate</w>\nren dered</w>\nri sen</w>\npr ank</w>\ndi or</w>\nbee thoven</w>\nflo or\nac com\nto t</w>\nho dg\ntouri sm\nsay in</w>\nobjec tive</w>\nmar kers</w>\npremi ership</w>\nen abled</w>\ncamou fla\ngi ant\nÑ ģ\nsmo key</w>\nric ket</w>\npan g</w>\nde pending</w>\ns ation</w>\nevol ving</w>\ninter cep\ncen sus</w>\ntof the\nre en</w>\nmendo za</w>\ntrum pet</w>\nmarke ters</w>\nan it\nðŁĻ Ĭ\nnorth western</w>\nv la\nfoto gra\nblackand white\nche wan</w>\nwi g\ntro om</w>\nginger bread</w>\nk n</w>\nro mero</w>\nn fc</w>\nor chi\nfun ko</w>\nsour ce\nf s\nra ped</w>\no st\ntar ot</w>\nann ually</w>\nðŁĺ ¬\nr ill</w>\ndel av\n.. !!</w>\nse s\ncan n</w>\nmedic are</w>\nph el\nape x</w>\nguardi an\nrema ined</w>\nr pm</w>\na Ã±\nstory month</w>\ninstag ood</w>\nneighb our</w>\np ing\nsem ite</w>\nmy stic</w>\nas cot</w>\nmat er</w>\nhand ful</w>\ndang ers</w>\nti d</w>\nana heim</w>\nopol y</w>\nsh allow</w>\nnami bia</w>\ntor ia</w>\nprocu rement</w>\nbig bang</w>\nannoun cements</w>\nprosecu tor</w>\nbeng als</w>\nsal le</w>\nen roll\nga stro\nsugge stion</w>\nba k</w>\nha ul\nbudd hism</w>\nberni esanders</w>\nflu te</w>\nfati gue</w>\ncyn thia</w>\ncho i</w>\nir win</w>\ngu a</w>\nstr ous</w>\nh p\nba p</w>\nsatisf ying</w>\nplay a</w>\nðŁİ ¼</w>\ninst ap\nal ice\nt p\nirri gation</w>\nðŁĩ¬ðŁĩ §\nin tric\nclu es</w>\nple x\nsa x</w>\nhe pat\ndump ed</w>\nsignific ance</w>\nby u</w>\nmedic ation</w>\npro v\ntough est</w>\ncorn ish</w>\nâŀ ľ</w>\nkel ley</w>\nu v\nsi zz\nsi bling</w>\nme st</w>\ndi stor\ndiplom atic</w>\naun tie</w>\nb hat\nson ic\nbren da</w>\npump kins</w>\nro ch\nblack burn</w>\nur ged</w>\nshi a</w>\narrange ments</w>\nfloo d\nsa unders</w>\nlec turer</w>\nnou ri\npopul ations</w>\ndiplom acy</w>\nconsist ently</w>\nðŁ¤ Ļ\nt mund</w>\ncauli flower</w>\nl ily\nvocab ulary</w>\nvari eties</w>\ncoo ker</w>\nup town</w>\nqu ent\nmo sa</w>\nre inde\nvelo city</w>\nspru ce</w>\nsocial medi\ni ber\nvolun tary</w>\nproce ssed</w>\nbal tic</w>\ny ang\nleban ese</w>\nd p\ndol ly</w>\narrange ment</w>\ny uri</w>\ncran berry</w>\nkal yan</w>\nelev ation</w>\ncli ff\npu shes</w>\nìĬ ¤</w>\nsil ic\nco wx</w>\neter nity</w>\nsla ves</w>\nvine gar</w>\nglou cester</w>\ncon tained</w>\nbreaking news</w>\naga inst\nrenov ated</w>\nnorm andy</w>\nhero in</w>\nys m</w>\nmo ds</w>\ngre ek\nun di</w>\ntren ch</w>\nv h</w>\nencoura ges</w>\nhead ache</w>\ngr ange</w>\n: '</w>\never green</w>\nÙ Ĭ</w>\nreck on</w>\nab used</w>\nth ru\ncho ice\nti dy</w>\ncol der</w>\nscho ice</w>\nha in</w>\nbru m\nli ars</w>\nbre it\nyor ker</w>\nsh ack\nhe idi</w>\nmicha els</w>\nsco pic</w>\nfasci st</w>\nplay ful</w>\nca c</w>\nyas ss</w>\nsh ad</w>\n.. ?</w>\nqu en\nram irez</w>\nclif ton</w>\npr s</w>\nbest fan\nâģ ł\ngener ating</w>\nhead set</w>\ndisappo intment</w>\nabstr act\nbo iled</w>\nparen thood</w>\nazerbai jan</w>\nexhib iting</w>\nbom bay</w>\noli vier</w>\nko so\nun lea\nmat ernity</w>\niz er</w>\nsi ves</w>\nr hu\ncol l</w>\nsaskat chewan</w>\nfre akin</w>\nde k</w>\nna g</w>\nstab ili\nðŁį ķ</w>\norgani zer</w>\nbo sses</w>\nar u</w>\nu va</w>\nat able</w>\nta un\nafter wards</w>\nfert ili\nver ge</w>\naz i\nmor ph\nà¹ ģà¸\njer k</w>\ncosme tic</w>\nko w</w>\nstru st</w>\nap ache</w>\npost cards</w>\nfor mul\nì ĭ\nspin al</w>\njack pot</w>\nelec tri\nÃ Ń</w>\nlo y</w>\ngra der</w>\ndiab lo</w>\nar di\nhe sit\nf w\narch ery</w>\npa sh\nthe ories</w>\nrepe al</w>\nre live</w>\nper cy</w>\nâĺ Ĩ\nim in\nsyn chron\nsham poo</w>\ncoup ons</w>\no to\nla i</w>\nthou ght\nluxembour g</w>\nmo v</w>\nðŁĺ ¥</w>\nge mma</w>\nse ated</w>\nm ga</w>\nstrat ford</w>\nun certainty</w>\nshi fts</w>\nest o</w>\nfo ol\nfire arms</w>\ncor rie</w>\nki ki</w>\nappa rent</w>\np ills</w>\nolym pia</w>\nfi d</w>\nelev ated</w>\nde cks</w>\nignor ing</w>\nav alan\nro v</w>\nwhist le\np tsd</w>\nmilit ants</w>\nrobo tic</w>\npac ers</w>\nquil t</w>\nbankrupt cy</w>\nlic h\nper cussion</w>\ncelebr ity\nal s\n( ;</w>\nsu t\npokemon go</w>\nh g\noff s</w>\ngibr altar</w>\nscre ams</w>\nbilli e</w>\ngen ome</w>\nmar in</w>\nbe ams</w>\narch bishop</w>\nem in</w>\nbedro oms</w>\ng ated</w>\nol ly</w>\nwarran ty</w>\nat own</w>\ncudd les</w>\ngun na</w>\nk ic\nvi ve</w>\ncy mru</w>\nnar row\npro b</w>\nle o\nrefe rences</w>\nmanufac tured</w>\ncho pper</w>\nbrun swick</w>\nsem is</w>\ndon ia</w>\nr ye\nman o</w>\nhur ting</w>\n? #</w>\nhol li\ninvestig ations</w>\nc els</w>\nðŁĵ ŀ</w>\nle ster</w>\ntemp les</w>\nsto rey</w>\nmc mahon</w>\ntoi lets</w>\nwo of</w>\nï¸ İ</w>\nle verage</w>\nat om</w>\nnight mares</w>\nvictor ious</w>\nhaun ting</w>\ncustom er\nag i\nyo ongi</w>\nmon ty</w>\nver onica</w>\nw ur\ninti mid\nblan kets</w>\nvolu tion</w>\nj m\nâĺ İ\nam on</w>\njud ith</w>\nðŁĺİ ðŁĺİ</w>\ndistr acted</w>\ndri p</w>\nhurric ane\nand es</w>\nrevel ation</w>\ntro op</w>\nab leg</w>\ncol lin\ntibet an</w>\nwor rying</w>\ninter nationally</w>\neat er</w>\ncamero on</w>\nbrad or</w>\ny uk</w>\nðŁĴĹ ðŁĴĹ</w>\ntra k</w>\nslo pes</w>\nci er\nne a</w>\nol er\nta ka\nalbi on</w>\nvolcan ic</w>\nam n</w>\na fi\nob stac\nface time</w>\nger ing</w>\nn pr</w>\nmetall ica</w>\norgan ic\nðŁĴ ¡</w>\nki dd</w>\nd ances</w>\npemb ro\nwash er</w>\nm its</w>\nom er\nemo tionally</w>\ntan go</w>\nip o</w>\ndo cks</w>\nscan ning</w>\nspec s</w>\ntho m</w>\nthe ology</w>\nemer gen\nom i\ng pa</w>\nselec tions</w>\nun necessary</w>\nima ge\nter s\ninduc ed</w>\ngi gan\nrent als</w>\nsupp lied</w>\nm fa</w>\nshan kar</w>\nlat er\npa jam\ncla ve</w>\nÙ ģ\nma hin\ncarl son</w>\navi an</w>\nano va</w>\nkati e\naj ith</w>\ndesign ated</w>\nchocol ates</w>\ninvestig ators</w>\ngla zed</w>\nprin cess\ner ry</w>\nra gn\nou rable</w>\nhr u</w>\nsun dance</w>\npeuge ot</w>\nsteam punk</w>\ngh lin</w>\ngre ase</w>\nhi res</w>\nz ap\nper ce\nj ill\ntom e\nhe hehe</w>\njoy ful</w>\nmae stro</w>\nni shed</w>\ngene alo\nv ich</w>\np its</w>\nfox es</w>\ngood man</w>\nemer son</w>\nlo bes</w>\ncon verse</w>\no ats</w>\nthom son</w>\nra him</w>\nmal ware</w>\nah i</w>\nman kind</w>\nre sin</w>\nim g</w>\nsw ood</w>\nkin der</w>\nsc roll</w>\nar a\nsak ura</w>\nro bbed</w>\nxi on</w>\nny a</w>\nc ism</w>\nce dar\nbe in</w>\nmour ning</w>\ntor to\nheath row</w>\ndone gal</w>\nbar b\nhydr ation</w>\nk or</w>\nelim ination</w>\nsu pdates</w>\nhill s\nappe ti\nstar red</w>\nko m</w>\ngw en</w>\ndd d</w>\ncra y\nsc anner</w>\npersonal ised</w>\nseren ity</w>\nre design</w>\nmeta ph\nbox ed</w>\njudg ment</w>\nno se\në ¹\ner ad\nac ne</w>\nsupp liers</w>\nener getic</w>\nv om\nas ap\nðŁĶ ¸</w>\nir vine</w>\nhat ch\nla ss\nad ren\nwaff les</w>\naccur ately</w>\nici o</w>\nitt le\nse un\noccup y</w>\nweb cam\nthene w\nent es</w>\nga i\nj w</w>\naccoun table</w>\nvis or</w>\nir rit\nlicen sing</w>\nhudder sfield</w>\ngen ie</w>\nðŁİ ¾</w>\natmo spheric</w>\nten sions</w>\nspart an</w>\nclif ford</w>\nol an</w>\nnorth bound</w>\name en</w>\ncen sor\nu el</w>\nster y</w>\n$ $\nfar rell</w>\nhy ster\ncl t</w>\nse dan</w>\nrep lied</w>\ndescri bing</w>\nmicro wave</w>\nsla b</w>\npro sp\nassi sting</w>\nru bio</w>\ne than\nhh hhh</w>\ngu ay</w>\nz man</w>\nra ise\nroll ing\no e\nn ile</w>\nambro se</w>\nscar borough</w>\nhero ic</w>\ncoo ks</w>\nmor t\nchop ra</w>\nðŁĮ ·</w>\nto b</w>\nshav ing</w>\nstac ey</w>\ndor m</w>\nmotor sports</w>\nwi ki</w>\nfol ds</w>\nsp iced</w>\nstress ful</w>\nliter al</w>\nfu dge</w>\npe ggy</w>\nwa ite</w>\ntre sses</w>\nse sh</w>\npr ic\nðŁİ ħ</w>\nfri ght\nr va</w>\nmumb ai\npo m</w>\ntt v</w>\ncel lar</w>\ntom e</w>\nandro id\ndor is</w>\ntsun ami</w>\ntin der</w>\no ec\nm wc</w>\ndor tmund</w>\nno thin</w>\nl iti\nso u</w>\nbelieve in\nat u</w>\nkno cks</w>\nmag ni\nss sss</w>\nro hit</w>\nine ws</w>\nang i</w>\nm andy</w>\nke ttle</w>\nintermedi ate</w>\nav ant</w>\ncur l</w>\nendor sed</w>\nori o</w>\nur t</w>\nconsider ation</w>\nwi res</w>\nshel ters</w>\nb ino</w>\nvik ram</w>\nimple mented</w>\nly dia</w>\nbu k</w>\nparo dy</w>\nc news</w>\nunder graduate</w>\ncanu cks</w>\nsam i</w>\npolit ically</w>\nro tten</w>\ngh z</w>\ntex tiles</w>\nover load</w>\nmoder ni\nrecre ational</w>\nfli r\nbat on</w>\ntypo graphy</w>\nov ation</w>\nintrigu ing</w>\npilgri mage</w>\nal ge\nad ays</w>\ntcm party</w>\nsp elled</w>\ncur ls</w>\nboo ze</w>\nste m\nann es</w>\nir ls</w>\nspon ge</w>\nsho pper</w>\nsig nation</w>\nbra ss\nmi stress</w>\nle ah\nbeg inner</w>\nlau derdale</w>\naugu st\npre school</w>\nta ping</w>\ntai pei</w>\nexecu tives</w>\nb d\nrhe tor\nesc or\nimmun o\ndeeplear ning</w>\nstat ues</w>\nit us</w>\nmanu script</w>\nly ric\ncor vette</w>\nmol ly\nla ge</w>\nde p</w>\ncn bc</w>\nle st\nje ssi\nfi fe</w>\ngriff ith</w>\noppo sing</w>\nran g</w>\ndr ills</w>\nrespec tful</w>\np ity</w>\nd ell\nhar ding</w>\nplay boy</w>\nblo ke</w>\nshut out</w>\nk ili\no sp\nse attle\nbc poli</w>\nmis es</w>\njourn als</w>\nteam ing</w>\nes ther</w>\nfre ddy</w>\nĶ ï¸ı\nmetr ics</w>\nno tre\ngar ry</w>\nfor ty</w>\nnavi gate</w>\nperio ds</w>\nbened ic\nj id</w>\nda w</w>\nance stors</w>\nrestor ing</w>\ncon g</w>\naller gy</w>\ntit anium</w>\nc ence</w>\nlean ing</w>\nab bas</w>\nv ast\nuc f</w>\nroof ing</w>\ne man\nseve rely</w>\nvo gue\nve au</w>\nin bound</w>\nd z\ntane ously</w>\nstret ching</w>\nman chester\ndr yer</w>\ndav is\nkan th</w>\nthe game</w>\nit ted</w>\nre tain</w>\nel les</w>\nconge stion</w>\nfrat ernity</w>\nol lie</w>\nlo ki</w>\nfre ely</w>\ncho o</w>\npon y\nsc ep\ntab ly</w>\nbal t</w>\nrock n\ndi me</w>\nlo gging</w>\nðŁį ·\nad u</w>\nha voc</w>\nwater ford</w>\nchar is\nswee tie</w>\nrun ning\nner d\nerdo gan</w>\nz ara</w>\nweigh ing</w>\nfif ty\npre cise</w>\nlow ell</w>\nkurdi stan</w>\nr yo\nor th</w>\nsyn th</w>\nlin ers</w>\nphenomen on</w>\nart illery</w>\nil legally</w>\nconstru ct</w>\nnostal gic</w>\ngar th</w>\nal ta\nshel ton</w>\na sean</w>\nw ander</w>\ndur ban</w>\ndi versi\nbon o</w>\ncl on\nle man</w>\nsh un\nobstac les</w>\nappet ite</w>\nfe eder</w>\nrespir atory</w>\ndi xie</w>\nformu la\nan to</w>\nso ber</w>\nextin ct</w>\nau c\ning les</w>\nlegitim ate</w>\n; ;</w>\nmin nie</w>\nipsw ich</w>\ndram atically</w>\nðŁĳı ðŁı¼\ningh am\nmilit ary\nmon et</w>\nus navy</w>\nfor k\ndun no</w>\nplay er\nq otd</w>\nst oo\nex or\nethiop ian</w>\nfilm fest</w>\npe red</w>\nc ate</w>\nsau di\nin ner\nsin cere\ntion ality</w>\nale e</w>\nde eds</w>\ncooper ative</w>\nir onic</w>\ncro cod\nbr ary</w>\npost season</w>\ncam per</w>\ncan ary</w>\ne in</w>\nexten sions</w>\nnb d</w>\nsher wood</w>\nspo kane</w>\nhu mp</w>\njit su</w>\nê ¹\ndar yl</w>\np si</w>\nstab bed</w>\noffer ings</w>\nexpe cts</w>\ncav al\nbody building</w>\nfr aming</w>\nf ca</w>\nye arly</w>\nbom bed</w>\nsk il\nresear ching</w>\njud iciary</w>\ngree ted</w>\ntu dor</w>\nmil o</w>\ninnov ate</w>\nðŁĺ Ľ\nr hs</w>\nru by\ncontribu tor</w>\nfam er</w>\nsoci ally</w>\nm lin</w>\nfi ery</w>\nut ter</w>\nbeau t</w>\nit os</w>\nde voted</w>\nrain bow\nbar ney</w>\npe ren\nar jun\nr na</w>\ngab by</w>\nut i</w>\nhann ity</w>\npick le</w>\nser v</w>\nqu akes</w>\npp e\nfe m\nwh itec\nj n\nvictor ies</w>\nðŁ§ ¡</w>\ngol fer</w>\ncongratul ates</w>\nresul ting</w>\nmechan ic</w>\nur ve\ncen tered</w>\nkie v</w>\nan s\nin cub\n< <\nc mo</w>\nbestfan army</w>\ndap h\nen ham</w>\non cology</w>\nku sh</w>\nt xt</w>\nori ented</w>\nfashion able</w>\nc sr</w>\nsa hara</w>\nr ack\npd p</w>\nhan son</w>\nà¸ ĩ\nti ers</w>\nra r</w>\npan am\nin sky</w>\nsa hi\ntestam ent</w>\nasth ma</w>\nin her\nfisher ies</w>\nor der\nho we</w>\ngall on</w>\nep is\nsuz anne</w>\ndrow ning</w>\npaneli sts</w>\nðŁĺ ²</w>\në ¦\nal ach\ncommemor ative</w>\nat tribu\nðŁĳ »\nmo o</w>\nvisi onal</w>\nweek sary</w>\ngu st</w>\nak in\npoin te</w>\nee e\ndi spar\nni pp\ndent al\nst all\npi an</w>\nbor e</w>\nul ster</w>\ntic k\nir r\ntae hyung</w>\nmicro phone</w>\nbermu da</w>\nga ard</w>\nel er</w>\nplumb ing</w>\nhu gely</w>\nâļ« ï¸ı</w>\nrace way</w>\ncam bridge\nmar cel</w>\nburn ley</w>\nto ast\nholly wood\nfa sting</w>\nme red\nhib ition</w>\nca pped</w>\nbenef icial</w>\now ning</w>\ncont amin\narab ian</w>\nto on\ncap ac\nhul u</w>\nsm ir\nnutri ents</w>\nse in</w>\ngraph s</w>\ncon ditional</w>\nðŁĳ ħ</w>\nor ac\nplay in</w>\nnor the\ntor nad\nmar ian</w>\nju mbo</w>\nlex i</w>\nincredible india</w>\nroad to\nuk one</w>\nconfu sing</w>\nsp h</w>\nshan k</w>\npi ed\nmq m</w>\npositi vely</w>\nsher ry</w>\npath ways</w>\nconsi ders</w>\ntof u</w>\nargu ments</w>\nresil ient</w>\nche tt</w>\nwith dra\nter o</w>\nated ly</w>\nsw ana</w>\nhe b\nfli ght\nhar ley\ndecre ase</w>\nkind le\nbook shop</w>\n³ ï¸ı</w>\nmarty rs</w>\nsm ur\nmc cl\nconcer to</w>\nsti me</w>\nrejo ice</w>\napp lau\ncle ment</w>\nmer kel</w>\njai me</w>\nim mortal</w>\nisle of\nmar co\nyoutu ber</w>\nstal king</w>\nme too</w>\nst ack\nsp ouse</w>\nu st</w>\nlu v\nâļ¾ ï¸ı\neque strian</w>\nev ing</w>\nfl in\nnick name</w>\nthe big\nas ar\nst acks</w>\nwal ker\nbor a</w>\nkidnapp ed</w>\nhur ling</w>\nhumb old\nrec alls</w>\nco pper\nann is</w>\nse o\nmer ger</w>\nmu ir</w>\nad dy</w>\nðŁĴª ðŁĴª</w>\nbe x</w>\ncr acy</w>\ncon an</w>\ncongratul ation</w>\nmid st</w>\nâĻ ¬</w>\nfor bi\nop tic</w>\ncr ate</w>\ncrocod ile</w>\nmad agas\nsecur ing</w>\nast on\no gue</w>\nsavi or</w>\nsalis bury</w>\nlove it</w>\nfuji film</w>\ncast les</w>\nas st</w>\nar rows</w>\nsp acious</w>\ntr s</w>\npoly vore</w>\nprogre ssion</w>\nm ri</w>\nnel son\nbi m</w>\nindic ator</w>\no da</w>\npe pe</w>\nre signation</w>\ngu t\nsne aker</w>\nlog ically</w>\naz y</w>\nare lla</w>\nte aring</w>\njo shi</w>\nssion ism</w>\nq pr</w>\nmari ah</w>\np x\nble ed</w>\nmi an</w>\nmed ley</w>\nwe iss</w>\nker ry\ngat ory</w>\nat al</w>\nmadi son\nav enger</w>\nnab y</w>\npl and</w>\ngi les</w>\nfresh water</w>\nd ington</w>\nta j</w>\ndemonstr ates</w>\nn tv\nbul bs</w>\nsunday morning</w>\npe ake</w>\nsouven ir</w>\nwa h\nton nes</w>\nm kt</w>\ncomplex ity</w>\ncon den\nross i</w>\nb ing\ny ds</w>\nsu k\nn go</w>\nmid land</w>\nol y</w>\nlife is\nri pple</w>\nmo reno</w>\ndd ers</w>\ntu s\ná ĥ\nbou l\nx a</w>\nhol dings</w>\nwn y</w>\nshadowhun ters</w>\nke i</w>\nasp ire</w>\nm ous\now en\nso ak</w>\nskir ts</w>\nmoun taine\nstor ming</w>\nch rome\nri ots</w>\nsar ato\namaz e</w>\nless ness</w>\nnav ar\ncrit eria</w>\nra fa</w>\nindul ge</w>\nay er</w>\npor to\nnam o</w>\n........ ........\nyi elds</w>\nval le\nj h\nmac ron</w>\nsa ins\ndur ant</w>\ntra ilers</w>\nwo t</w>\nconfeder ate</w>\nsh rin\nid ol\nform ally</w>\nten e\nmotor cycles</w>\nthan g</w>\nno de</w>\nbang er</w>\ndal y</w>\np ats</w>\nenroll ment</w>\nau ctions</w>\nat al\nar bor</w>\nlo gos</w>\nde arest</w>\ntrans action</w>\ndom ingo</w>\nfle a</w>\nser mon</w>\nde ck\nsin cere</w>\nquesti oning</w>\njuli o</w>\nwas p</w>\npre tz\narmen ian</w>\nk ham\ninflam mation</w>\npicture sque</w>\nacci dental</w>\nfilm makers</w>\nðŁĺ ļ\nðŁĴ į</w>\nca sey\nso b\nyee zy</w>\ngood will</w>\nparag ra\nss ly</w>\nfe ather\ndy ed</w>\nassassin ation</w>\nna de\nb cs</w>\napp lies</w>\nfemin ine</w>\nfe u\next ent</w>\ndepu ties</w>\nl ack\npsy chic</w>\ngo i</w>\nkill ings</w>\npse u\nðŁ¤ ª</w>\nun c\nmar l\ntan e</w>\nmck enna</w>\nsur fer</w>\ninflu ences</w>\nfree way</w>\nhack ney</w>\nmal aria</w>\nel and\nte au</w>\nrema stered</w>\nØ ±</w>\nraz or\ngg y\ncor ro\nlak sh\nfla ir</w>\nhonest y</w>\nhoor ay</w>\nde pp</w>\nam c\nwedne sdays</w>\nq a\ned its</w>\n- $</w>\nse villa</w>\ndou bled</w>\nhuman ities</w>\nc cot</w>\nsom os</w>\nr ine</w>\naf a</w>\nsi oux</w>\nre construction</w>\nwel ding</w>\nth reads</w>\nam ish</w>\nencoura gement</w>\npo der\nbo ck</w>\nbal m</w>\np tions</w>\nstand up</w>\naccompli shments</w>\nguar ding</w>\nconvic tion</w>\nac ion</w>\nnapo leon</w>\ndepic ting</w>\natt ack\nsu i</w>\nwear able</w>\nâĸª ï¸ı</w>\npot ter\nesc ort</w>\nvis e</w>\nto ts</w>\nbo on\nevent profs</w>\nangu lar</w>\nwomenshi storymonth</w>\nbar row</w>\nsch i</w>\nac comp\nti k\nl end</w>\nkensing ton</w>\nwol fe</w>\nst acked</w>\ncra shing</w>\nexhi bit\nwing ed</w>\nsab rina</w>\nma sa\nk ms</w>\nalway s\net t</w>\npla sma</w>\ncounsel ing</w>\npick les</w>\nnfl draft</w>\nmr s\ninev itable</w>\ncoura geous</w>\nstaf ford</w>\nwriters life</w>\nho s</w>\ne j</w>\ngh yun</w>\ntrade mark</w>\nadri an\ninfluen cer</w>\ncoron ation</w>\nra ging</w>\nexplo red</w>\nusa f</w>\nexcep tion</w>\neu x</w>\ntan ker</w>\nsw ami</w>\npac ket</w>\nðŁĳ¨ âĢį\nf en</w>\nshe en</w>\na ero</w>\nj l\nre gal</w>\nnw t</w>\nau ster\nmeh ta</w>\nchar ge\na ste\nb ate\ninf eld</w>\nracec ourse</w>\ncollap sed</w>\nfle ece</w>\nz il\nal lie</w>\nalternati ves</w>\ngeor ges</w>\nðŁĵ į\nquir ky</w>\nfc b</w>\nnat geo</w>\nphilanthro py</w>\nbra i\nevery day\nðŁĲ °</w>\nach ers</w>\nja an</w>\nfin es</w>\nq i\nfisher man</w>\ndistin ct</w>\ngri mes</w>\nnation alist</w>\ncomm ence</w>\nro wn</w>\nâĢ ³</w>\nz ing\nf ter</w>\nhr w</w>\nbaro que</w>\nbl ender</w>\nkitt y\nhoo ks</w>\nc ited</w>\nw anda</w>\nconsen sus</w>\nreinde er</w>\nan and\nsupp ly\nme ds</w>\nv n</w>\nol ph</w>\nrat chet</w>\nshel don</w>\nsecur ities</w>\në°© íĥ\ncro m\nmosqu ito</w>\nj eric\nim mac\ndimen sions</w>\nâ ¤\ndi ssi\nsponge bob</w>\ndami en</w>\nsteven son</w>\njo anne</w>\ndel ish</w>\nyi kes</w>\nthan x</w>\nsurve ys</w>\npostpon ed</w>\nalco holic</w>\nal ised</w>\nðŁĻı ðŁı»\ndo ch</w>\nsen tim\nmered ith</w>\ncom pares</w>\nb ago</w>\nhappy days</w>\nmo ss\nãħ ĭ</w>\nne c\ngn ment</w>\nfrustr ated</w>\ncomb in\nri v\nec lec\ncol lo\ncompli ment</w>\nactor slife</w>\nct to</w>\nnic ar\nop hon\napar the\nman t\nja de\ntrol ley</w>\noptimi zation</w>\neye on</w>\neco logical</w>\nqui st</w>\nep he\nà¥ ĩ</w>\ncin co</w>\nappo ints</w>\nold school</w>\nc pr</w>\nbehavi oral</w>\nmin aj</w>\n:- (</w>\ntag ging</w>\nev al\njo aqu\nðŁĺ «\nha k\nde me\njama ican</w>\nso s\nhy att</w>\nhand book</w>\nlibr arian</w>\nhanni bal</w>\npump ing</w>\nch om\nf man</w>\nga i</w>\nhu ll\nrespon ders</w>\ngreen ville</w>\nn us\nvau gh\nðŁİī ðŁİī\nta xi\ngold berg</w>\nman tra</w>\nte ase</w>\nforbi dden</w>\nmetho dist</w>\nati vity</w>\n* ***</w>\nec t</w>\nmc gr\nĦ ëĭ\nse b</w>\namid st</w>\ndisapp ear</w>\nthy ro\nphili ps</w>\ner ina</w>\nv icious</w>\nstream er</w>\nmillion aire</w>\nma p\nstr ick\nhack athon</w>\ngh a</w>\ned ic\nmi ka</w>\npe ck\nill i</w>\nanto ine</w>\nar ca\nop tic\nma ure\nðŁĩ¦ ðŁĩº</w>\ncla shes</w>\nman ly</w>\nâĺ ģ\nal var\nand res</w>\nme i</w>\nel m\nww ww</w>\nal tered</w>\nl te</w>\nê¹ Ģ\nmo jo</w>\nfor rest</w>\nthal ai\nnon t</w>\nspee ches</w>\nacknow ledge</w>\nign ite</w>\nx factor</w>\nðŁ¥ Ĥ</w>\nmead ow\ndisru pt</w>\ndebu ted</w>\nscrim mage</w>\npharmaceu tical</w>\nfi dd\nfound ations</w>\nphilosop her</w>\net al</w>\npubli shers</w>\nbo ys\nc ke\nru gged</w>\nopti mism</w>\nre be\nphil harmon\nnar cis\nral lies</w>\nlu is\ngo blue</w>\nfol ded</w>\nun acceptable</w>\noptim al</w>\nli sa\npol aro\n+ .</w>\nen za</w>\nâĿ £ï¸ı</w>\nmon opoly</w>\ngrace ful</w>\ndair y\ndu a</w>\ndiffic ulty</w>\njudge ment</w>\no si\nmer sey\nflu x</w>\nnew found\nter ns</w>\ndimen sional</w>\nin vic\nal ba</w>\nam it</w>\nabudha bi</w>\nalger ia</w>\nautom obile</w>\nthe ad</w>\nlo tion</w>\nacceler ator</w>\nvac ant</w>\niti on\nlu f\nal ic\npl l</w>\nbla zing</w>\nba z</w>\nsen e\nðŁĳ ¼\nvilla ins</w>\ndirec tory</w>\neis en\nto ck</w>\nbroch ure</w>\nri pp\nhb d\nzayn malik</w>\nnic he</w>\nlo lol</w>\ncertific ates</w>\nmor se</w>\nfac up</w>\nx ham</w>\nun wanted</w>\nim ports</w>\ncarne gie</w>\nfan sign</w>\nmo u</w>\nr alph\ndestroy er</w>\nsw ing\ntrek king</w>\ncili ation</w>\npit bull</w>\ng aps</w>\nho well</w>\ndefin itive</w>\nmc le\nf ps</w>\net z</w>\nbol ly\nlyn n\ngan o</w>\nat ure\nfur suit\nco il</w>\nna v</w>\nbut ts</w>\ntro jans</w>\neu re\nen ko</w>\nsch umer</w>\nhorri fic</w>\ninstall ment</w>\nbr b</w>\nsubur bs</w>\na bel</w>\nvi r</w>\nde sh\ncun ningham</w>\nðŁĲ »</w>\nspan n</w>\nsch we\nke mp</w>\ntr u</w>\nste alth</w>\nqu es\nle w</w>\ndeli ghts</w>\nko ch</w>\nhu mili\ncr iti\nil t</w>\nsp ells</w>\nmi ley\ncar ic\nðŁį ´</w>\nlc fc</w>\nsubstitu te</w>\noun g</w>\n? !!</w>\naf fir\npredic table</w>\nclass of</w>\ner r</w>\ncy press</w>\nchand ra</w>\nage ing</w>\n__ __</w>\nther land</w>\ndon caster</w>\nel in\nyo shi</w>\nsail ors</w>\nhar ris\njo anna</w>\nniger ians</w>\nh ers</w>\npla gue</w>\npro cra\nk no</w>\ncan ton</w>\nbusine s\nun h\npra kash</w>\nc in</w>\nbow en</w>\nco ating</w>\nm als</w>\nbe gging</w>\nsmith son\nponti ac</w>\nsp ies</w>\ndam ian</w>\npl ine</w>\nund ant</w>\nal ta</w>\none ss</w>\nshame less</w>\nda q</w>\nbb m</w>\nwal es\nstam pede</w>\nser um</w>\nÙ Ĩ</w>\ncataly st</w>\nx n</w>\nab sc\nfree zer</w>\nch un</w>\nari os</w>\nmc cre\nfore head</w>\nhe ars</w>\ndamas cus</w>\ntac oma</w>\nardu ino</w>\nencoun ters</w>\nstan ton</w>\nlg b\nab as\n\" ..</w>\nke te\ndrac ula</w>\nele m</w>\ng ne</w>\nzepp elin</w>\nla brador</w>\npul p</w>\nop tional</w>\nor n\nrussi ans</w>\nsan itation</w>\nhil ary</w>\netsym ntt</w>\npen alties</w>\nau st</w>\nig ans</w>\nolympi an</w>\nmedic aid</w>\nvers ace</w>\nva pe\nre stra\npe ep\nsexi est</w>\nst alls</w>\ndi le\nthe a</w>\npunjab i</w>\npupp y\ntuesday motivation</w>\nðŁĵ ļ\nthe flash</w>\nroc ket\nmo dest</w>\nchihu ahu\non na\nk sa</w>\nhur dles</w>\nca ve\nfail ures</w>\nsp lit\nbo ho</w>\ngur l</w>\ndisappo int</w>\nho ward\nnug get</w>\nfran z</w>\nstal ert</w>\nkaz akh\nfor getting</w>\nsch ri\nag ate</w>\nam at</w>\neve rett</w>\ndu et</w>\nveter inary</w>\njuli an\nch ills</w>\nbra ve\nghost busters</w>\nlan do\ngre ets</w>\nprofit able</w>\nd Ã©\nti r\nze e\nom en</w>\npd x\ngray son</w>\nhar i\nfix es</w>\nstab bing</w>\nswim mer</w>\nsymb ols</w>\ncompli ments</w>\npo se\nfunc tioning</w>\nth nx</w>\ngi r</w>\ncorpor ations</w>\nbar low</w>\nlo e</w>\noff season</w>\ndistin ctive</w>\nmarvel ous</w>\nnik on\nenri que</w>\nky u</w>\nja ws</w>\namo to</w>\nlom bar\ntravel blogger</w>\nfa h\nouri sm</w>\ntri stan</w>\nso e</w>\nce ase</w>\nðŁı ħ</w>\nz ac\nmck enzie</w>\ntaxpay ers</w>\nswim suit</w>\nbl o</w>\nles ley</w>\nkan sas\nw ks</w>\nki el</w>\nprovo king</w>\nmy les</w>\nstr ing\nkangar oo</w>\ngalac tic</w>\nfif th\ns ke</w>\nwe ir</w>\nll is</w>\nmat ory</w>\nðŁĩ ¿\nun ci\nre productive</w>\nroo ting</w>\nti des</w>\ngad get</w>\n.... ......</w>\nalex ander\nbow ler</w>\nscre w\napo log\neri ka</w>\nwal ters</w>\nshet ty</w>\nlan e\nban ter</w>\nas ant</w>\nme so\nv ain</w>\n\" \"\"</w>\nus i</w>\nfer din\naccomp lish</w>\nman sfield</w>\nbom bar\ncollabor ating</w>\ncla p</w>\nit ure</w>\ns da</w>\nsmo ky</w>\nna k</w>\nim person\ncar la</w>\ncom ra\nbur gl\nlo co</w>\nti es\nin hi\ntrac ey</w>\nse is\ndiss er\nrr rr\ndra y\nprote ct\ncor ona</w>\nhun ger\nck en\nc eli\ntrou bled</w>\npredat ors</w>\nfic tional</w>\nshav ed</w>\nriche st</w>\nmetab oli\nful ham</w>\ngro oming</w>\nmono chrome</w>\nwa sting</w>\nas co\nast e</w>\nti sta</w>\nremedi es</w>\nung soo</w>\nsouth end</w>\nperman ently</w>\nbu mble\nprocra stin\nident ical</w>\npractic ally</w>\nma scul\nsu ke</w>\nassu red</w>\nval erie</w>\ndevi ant\ngrizz lies</w>\nthi er</w>\npur a</w>\nne pal\nnot ts</w>\nbil ateral</w>\nspo il</w>\ncar mel</w>\ncine matic</w>\nph l</w>\nni fty</w>\nma o</w>\nhypo cri\nla ser\npan try</w>\nmathemat ical</w>\nel isa\ncoordin ation</w>\nbel mont</w>\na it\nradi ant</w>\nbo iler</w>\nman g\nf ag\ncr c</w>\nh ams</w>\nbr in\nâ¬ĩ ï¸ı\nfamil ia</w>\nâĿ £</w>\nsab er</w>\nru pert</w>\ngg an</w>\nrit z</w>\nmic h\nsal ford</w>\nle vi\ngra l</w>\nðŁĴ ¤</w>\nn ino</w>\nce d\nbusiness man</w>\nul tr\nsim ply\ncompre ssion</w>\npa ins</w>\nhal t</w>\në°©íĥ Ħ\nlandsc aping</w>\nn f</w>\ncroo ked</w>\ner d</w>\nitt in</w>\nddle ston</w>\nsur passed</w>\nino a</w>\nda g</w>\nbl en\nexten ding</w>\nat ing\nal gae</w>\nball er</w>\nu mar</w>\nsnoo ker</w>\ncol lu\nflo wn</w>\nthu b</w>\nridic ulously</w>\nki sh\nop le</w>\ndi re</w>\nas ser\nari sto\nsc iss\nh ating</w>\ntrou ble\nsyl via</w>\nsuc cul\nplo ts</w>\nsincere ly</w>\nal er\nlaure ate</w>\nbr ack\natt n</w>\nrif les</w>\nme to\ncollec tible</w>\ncu omo</w>\nconte stant</w>\nconsist ency</w>\nant z</w>\nrang es</w>\nabig ail</w>\nde b</w>\nmini ster\ngrow ers</w>\nan oo\nhoo ver</w>\ndream er</w>\nnu cle\nresear ch\nmi y\nsha hid\nma v\nd honi</w>\ncin i</w>\ndo j</w>\nhin dus</w>\npart ying</w>\ndal i</w>\nalon so</w>\ninform al</w>\nclark son</w>\nit ton</w>\nki an</w>\ncit yo\nmor i\nla sted</w>\nas pen</w>\nlibr ary\nsusp ici\nqu at\nden ial</w>\nfol der</w>\nch ori\nswee ping</w>\neni x</w>\nðŁį Ĥ</w>\nØ Ń\nnas car\nhandmade hour</w>\nmou l\nheat wave</w>\nem er</w>\nexam ine</w>\nib n</w>\ngr ind\npo v</w>\ntion ist</w>\nm bo\nshe ila</w>\nintegr ate</w>\nom es</w>\ntake away</w>\ncer v\ncon nie</w>\ntic ket\nce led</w>\nbi en</w>\nvisu ally</w>\nmadagas car</w>\nsor ry\ngu i</w>\npark run</w>\ntra its</w>\nla be\npois oning</w>\nà¥ Ģ</w>\nvi able</w>\nbohemi an</w>\ndenti stry</w>\nbad os</w>\nspr outs</w>\nmask ed</w>\nte ddy\nðŁĺ ·</w>\nsa f</w>\nsa as</w>\nji ang</w>\nti ght\nspe aker\nwithdra wal</w>\nbc n</w>\nas signed</w>\nclass rooms</w>\nfle ming</w>\nðŁĴ «\nsuper girl</w>\ntot als</w>\ntable top</w>\ne books</w>\nhorizon tal</w>\ncra z\nflu sh</w>\nj ard\nc dc</w>\ner son\nãħ ł</w>\ngreen wood</w>\nni h</w>\nco x\nad a\nlit re</w>\ngo ing\nv icky</w>\ncur ved</w>\nlou ie</w>\ngra ins</w>\nhy e</w>\nlon ge\nreme dy</w>\ntra inee</w>\nsan jay</w>\nsuper stars</w>\nma ser\nman u</w>\ns age\nwh l</w>\nðŁĺĤ ðŁĺŃ</w>\nðŁĳį ðŁı»\nm sd\nen z\nrab hu</w>\nj oo\ngh u\nac er</w>\ne po\nresurrec tion</w>\njustice for\nbl ended</w>\nmo da</w>\navalan che</w>\nfrance sco</w>\nre spective</w>\ng s\nye ast</w>\nwel ch</w>\ndevo tion</w>\nge tin\nathe ism</w>\nam ic\ncarol yn</w>\nlo c</w>\nld nont</w>\nave c</w>\nus da</w>\nle gged</w>\nbra very</w>\nb lower</w>\ncow boy\nhe h</w>\nsti ble</w>\nbuff al\nchann el\nrun chat</w>\nâĺķ ï¸ı\nide ology</w>\nbest seller</w>\ny oo\npe anu\nbon ne</w>\nfel ic\nedi son</w>\nfr actu\nnaren dra</w>\npp ets</w>\nseym our</w>\nri viera</w>\nhe ctor</w>\nnecess arily</w>\nbi anca</w>\nsoci eties</w>\nthe best</w>\nw g</w>\nsent ences</w>\nwin k</w>\nvacc ines</w>\npal ooza</w>\njam ming</w>\nas f</w>\nmp us</w>\nagre ements</w>\nec k\nba c</w>\nhon ore\ncom pul\nwild cat</w>\nim posed</w>\nyo ga\nhud son\ncan celed</w>\nl ich</w>\nfu zzy</w>\nes que</w>\nch uk\nw vu</w>\nse k</w>\nfli pping</w>\nr hon\nwi shed</w>\nwh a</w>\ncap ability</w>\nlen ovo</w>\nìĨĮëħ Ħëĭ\nvi vo</w>\ntv d</w>\nnor a</w>\nsil k\npas adena</w>\nyo semite</w>\nvalu ation</w>\nclo cks</w>\nu ber\nmr c</w>\ndar kest</w>\nau bre\nss o\nbell y\nwrest lers</w>\nkill in</w>\nlou der</w>\nbuck ley</w>\nge el\nad on\nun s</w>\nappe aling</w>\nðŁĳ ¯\nsemit ism</w>\nlist ens</w>\nfit z</w>\nãĥ³ ãĥ\nny lon</w>\nar ty</w>\nseem ingly</w>\nhal a</w>\nsu ited</w>\net y\nshe ds</w>\nmu ffins</w>\nap ric\num ents</w>\nu ta</w>\njam mu</w>\nchelse afc</w>\nstar z</w>\nyo ko\nroo t\nclean sing</w>\ndi ar\npione ering</w>\nihear tradio</w>\ndig iti\nfin dyour\ncan o</w>\nðŁĴ İ\nz ol\nspac ecraft</w>\nsix ers</w>\nmoi sturi\nb ile</w>\nti sts</w>\nhor ton</w>\nrang ing</w>\ncolum bi\nmete oro\nsenti ment</w>\nep l</w>\nfoo th\ntext book</w>\ndrain age</w>\nr ly</w>\nsc ue</w>\nimran khan\nðŁĴ ¸</w>\nmargar ita</w>\ned dy</w>\npredic ts</w>\ngamer gate</w>\nadvis e</w>\ngrowth hacking</w>\nlove you</w>\nug and\nv f</w>\nbeng hazi</w>\ns later</w>\nne wor\nch el</w>\nindependence day</w>\np np</w>\ncul len</w>\nhoo dies</w>\nnum bered</w>\nbrit t</w>\nt sa</w>\nkl tu</w>\ns ages</w>\nmom o</w>\nonep lus</w>\ncol l\ngu ts</w>\nw ta</w>\nmesm eri\nenh ancing</w>\nchiro prac\nj is\nteen agers</w>\nm one</w>\nconstell ation</w>\nsweep stakes</w>\ne ze\nslovak ia</w>\nla ye\npear ce</w>\nwa ver\npo gba</w>\nk ron\nsur geons</w>\nmar x</w>\nti d\ngg a</w>\ndesc end\np ours</w>\nupri sing</w>\nwal la\nsab bath</w>\nbachel ore\nmack in\nk am</w>\npeter borough</w>\nhor a</w>\nðŁĮŁ ðŁĮŁ\nthink big\nr j\nhy drau\nsp al\nunivers it\nðŁı ī</w>\nmail online</w>\nleague of\nten ants</w>\nw ally</w>\nlan ce\nheav ens</w>\ndd r</w>\nbol ts</w>\nam ir\ni phone\nci gar\nen du\nre i</w>\nel abor\nr inging</w>\njohn son\ncharacteri stics</w>\nsal oon</w>\nalgori thms</w>\ntal kin</w>\nm tn\ndi ve\nregion als</w>\nff ice</w>\nhat i</w>\ndeviant art</w>\nso tto</w>\nshir o</w>\nl ama</w>\nk we\nf aded</w>\npor ting</w>\ntu mmy</w>\nest ates</w>\nbuen os</w>\nðŁ¦ ģ</w>\nbeli ever</w>\npen etr\ndar n</w>\nsp ite</w>\ncan opy</w>\nfashi oni\nt illa</w>\npet als</w>\neli jah</w>\nbra wl</w>\nmarty r</w>\në°©íĥĦ ìĨĮëħĦëĭ\nmid town</w>\neric h</w>\nd apper</w>\nsm town</w>\nme gam\nww w\nle le</w>\non s\ncat fish</w>\nfir th</w>\nfossil friday</w>\nball park</w>\nth aw\npot ent</w>\nilli e</w>\ncre ep</w>\ncar p</w>\nso ap\ngun dam</w>\ninfe c\nyy yyy</w>\nà¤ ¨</w>\nz ag\nrit t</w>\ncalcu lator</w>\nbo ca</w>\nok o</w>\nto ad</w>\nthreat en</w>\nrefin ed</w>\nolym pic\naccompli shment</w>\nbacter ial</w>\na ji\ntat um</w>\nfeli z\nshe ed</w>\nj at\nth ic\njam al</w>\nðĿ ĺ\nlin a</w>\nðŁĲ ¯</w>\njo king</w>\nyot po</w>\npin ch</w>\nak ron</w>\nher b\nmotiv ation\nli a\nho stage</w>\ncre ek\ngam ble</w>\nruss ell\npatt i</w>\nfo tos</w>\nc pc</w>\nbro ken\nback the\ncla ys</w>\nu mm\nstock ton</w>\nmat ernal</w>\nÃ¼ r\nla kel\ncent ury\nbe k</w>\ninfe cted</w>\nà¸ ¡\nsmack down</w>\nman ned</w>\nta hoe</w>\nsm es</w>\nbas a</w>\nsu la</w>\naugu sta</w>\n. *</w>\nrohing ya</w>\ngre ed</w>\ncounsel or</w>\nsilhou ette</w>\ngra vit\ncla use</w>\n' -</w>\nbo bc\nocca sions</w>\nnow adays</w>\ndic tat\nbe ard\nn ally</w>\nbrigh test</w>\nkab ul</w>\ninc india</w>\ndhan ush\narchae ological</w>\nche ape\nmizz ou</w>\nd hi</w>\nov ski</w>\nbax ter</w>\nasse mble</w>\nÃ ¢\ngi gi</w>\nac am\nwis ely</w>\nhaz ard\nnorth ampton</w>\nâľĪ ï¸ı\nme th</w>\nbla sting</w>\nre unite</w>\nmu lus</w>\nali zes</w>\nt read\nmil a</w>\ned ward\nko va</w>\npe sto</w>\nðŁĳ ¶\nvit z</w>\nhydrau lic</w>\nrefurbi shed</w>\nmo tel</w>\nisab ella</w>\nhom me</w>\nsever ance</w>\nuph ol\nmis erable</w>\nf ari\nlat ter</w>\nef er</w>\ncrack ers</w>\nes l</w>\nac io</w>\nyy j</w>\nin an</w>\nec b</w>\nz ind\npan as\ntru cking</w>\nre ed\nsh aker</w>\nburge ss</w>\nem pire\nag nes</w>\nn ington</w>\nart works</w>\nfr s</w>\nti le\nbi ome\neu n</w>\nch ong</w>\nameric ana</w>\ngod father</w>\ngo blin</w>\ni shi\n! ).</w>\ntemp ted</w>\ngen omics</w>\nmand ate</w>\nck y\nðŁĴĻ ðŁĴĽ</w>\nsom ali</w>\nbr andy</w>\nin ven\nspoke sperson</w>\npc b</w>\nyu an</w>\nh g</w>\nfa z\nstarwar s\nro wan</w>\nblue grass</w>\ndon g\nd day</w>\ntrin idad</w>\ner ton</w>\nban ning</w>\nre tention</w>\ncu red</w>\ntober fest</w>\nre set</w>\nwe is\ndeta ched</w>\nbehindthe scenes</w>\nimmun ity</w>\nph a</w>\nbra y\nðŁĳ ½</w>\nran cho</w>\nram say</w>\nest onia</w>\nnd tv</w>\n] .</w>\ncab aret</w>\ntar o</w>\nd v</w>\nshow cases</w>\nplu m\nðŁĳ ¸\nson oma</w>\npre pa\nmemor ab\ne stu\ndrive way</w>\nu les</w>\nmagn us</w>\nx r</w>\nnn n</w>\nmuch as</w>\nen ge\nstre amed</w>\nfore stry</w>\naudio book</w>\ntro y\nreck less</w>\nkil om\nru ler</w>\nra k</w>\nproce ssion</w>\ni ons</w>\npo ole</w>\nnoc tur\nwh s</w>\nfarm house</w>\nper a</w>\npar me\nhypocri sy</w>\ns ics</w>\nv ant\ncas k</w>\nholi stic</w>\nau st\nÐ ¿\nin do\nðŁĳ© âĢį\ndi so\ndisp atch</w>\nol sen</w>\nmake it\nen nis</w>\ncent re\nar range</w>\nðŁĮ ¼</w>\nsal ted</w>\nea siest</w>\nf ate\nreg atta</w>\nmo zz\nac an</w>\nsin i</w>\ng ically</w>\nch ops</w>\nchick en\nwork in</w>\nha gg\ninvol ve</w>\nwee ds</w>\nbook day</w>\nwake up\nky r\nmichel in</w>\nfu ss</w>\nre juven\nvac ancies</w>\nincar cer\nm st</w>\nsc ents</w>\nsovere ign</w>\nkick er</w>\nà §\nbo d</w>\nâĢĶ ></w>\nsa h</w>\nmob il\nshrop shire</w>\noph one</w>\ndress er</w>\nmis suni\nhep burn</w>\ni mo\nfoli age</w>\ndiagno stic</w>\nas san\ncycl ing\nguil t</w>\nc sa</w>\npuertor ico</w>\nwin elover</w>\nwake field</w>\ndo ggy</w>\nk he\npa pp\nco g\nal lot\ncu ck\npoe tic</w>\nmi o</w>\nre vit\nmag ician</w>\nç ¥\nant enna</w>\nwest wood</w>\nmber g</w>\nlux e</w>\noat meal</w>\nØ ¬\nte at\nffe e</w>\nsear ches</w>\nl ly</w>\nplu to</w>\nel on\nlet tering</w>\ninno cence</w>\nfa i</w>\nann on</w>\ntelang ana</w>\nma it\nneu ral</w>\ncan ni\nar oma</w>\na stor\nfe x</w>\nco cac\nmon etary</w>\nf ent\nun sure</w>\n' @</w>\nindi rec\nteh ran</w>\nisol ation</w>\nli bs</w>\nmake up\nmerce des\nff y\nhe tero\nde o\nsco m</w>\ncur sed</w>\nveteran sday</w>\nfranken stein</w>\nshre ws\nde co\nge ese</w>\nlefto ver</w>\nha did</w>\nvari able</w>\nacade mics</w>\ncarol in\nunder going</w>\nvari ation</w>\nna h\nssi er</w>\ngamer sunite</w>\npur suing</w>\nemer ged</w>\nll ers</w>\ncontrol ling</w>\nro aring</w>\nmete or\nvol t</w>\ndaw gs</w>\nbe aver\nis life</w>\nbathro oms</w>\naci onal</w>\npre vent\nlake district</w>\nin als</w>\ny ani</w>\ngra bbing</w>\nsac ks</w>\nle z</w>\nsw ay\nk ool</w>\ntime s\nklo pp</w>\nla de</w>\ncon cord</w>\nresul ted</w>\nrevi ve</w>\nrecon ciliation</w>\nol and</w>\naz z</w>\ngir o</w>\nmand arin</w>\nde en\nnutriti onal</w>\nis coming</w>\nvan i</w>\naw www</w>\nder ived</w>\nlove your\nstop the\nshou ting</w>\nnov ak</w>\nðŁĻĮ ðŁı¾</w>\nlo af\ndispla ying</w>\nsunday with\nma guire</w>\nch eri\nðŁı Ł</w>\nre match</w>\nqu ic\nÚ ©\ny in\nðŁĺ ¹\nili ve</w>\nz ip\nour ke</w>\ndown loads</w>\nsw at</w>\nmissi ss\ncare rs</w>\nt ment</w>\nproper ty\nhahahaha haha</w>\ngi bbs</w>\nsur rey\nar ise</w>\ntic ism</w>\nsti a</w>\nir ling</w>\nfro g\nco se</w>\nbas sist</w>\nfore ig\nlea u</w>\npil lows</w>\nhol la</w>\neli e</w>\ndisclo sure</w>\npeanu ts</w>\ninte ch</w>\nww c</w>\nplun ge</w>\ntrium ph\ncor i\nsli ppers</w>\nðŁĻı ðŁĻı</w>\nneutr ality</w>\nma re\nhair y</w>\ngang ster</w>\nhu mming\ncust ard</w>\nmer lin</w>\nale a</w>\ns by\ndam p</w>\nmo han\nver bal</w>\nj st</w>\ngu tted</w>\nb jor\nun finished</w>\nðŁĩ¯ðŁĩ µ</w>\nun happy</w>\nâļ« ï¸ı\nby pass</w>\nat su</w>\nfis cher</w>\nsa v</w>\nafric ans</w>\nre use</w>\nmid way</w>\ndemo lished</w>\nger rard</w>\nher cules</w>\nÄ Ł\nmedic ines</w>\ncl icking</w>\nsur round\njo ong</w>\nwav ing</w>\ntri bes</w>\nwet lands</w>\noffici el</w>\nargu ing</w>\nl le\ndo va</w>\nsu zy</w>\nclub house</w>\nne gro</w>\nob tain</w>\nga o</w>\ngl ance</w>\nassi st\nch os</w>\nãĤ ¢\nâĺ ķ</w>\nadri d</w>\noccur s</w>\nst ans</w>\npar don</w>\nlivel i\nemplo yed</w>\nre visit</w>\nff xiv</w>\nbb le\nne aring</w>\nmin er</w>\nðŁĺ ¹</w>\ngiov anni</w>\nup to</w>\nmar vell\nmar se\nto wels</w>\ncb n</w>\nengine ered</w>\ny elling</w>\nspart an\nsi ans</w>\nðŁĻĮ ðŁı¼\nse v\ncoyo te</w>\nsta di\nt cm</w>\napp en</w>\nshenan igans</w>\nopen access</w>\nso aked</w>\nma squ\nle vine</w>\nstro kes</w>\nl k</w>\naparthe id</w>\nhipho p\nchar don\nmay may\nha asan</w>\nstri pped</w>\nfr o</w>\nscri ption</w>\nf ton</w>\nh f\npri sons</w>\nmarsh al</w>\nķ ãĤ\nan cho\ncom promise</w>\nclassi fication</w>\nbuzz feed</w>\nbblo ggers</w>\ndeser ving</w>\n) /</w>\ns way</w>\nob o</w>\ncamp ers</w>\npoder nfamily</w>\np oured</w>\nbri e</w>\nsquir rels</w>\nse ize</w>\n: #</w>\nle k\nti mb\nst acy</w>\nnas daq</w>\nrepe atedly</w>\nbr at</w>\nmi ghty\ncompetit or</w>\nmah one</w>\nde si</w>\no ke\nbm w\nshi e</w>\nf cb\ncheape st</w>\nminim alist</w>\npar amount</w>\nn ate\nhar as\ninsan ity</w>\nlat eral</w>\nment ality</w>\nmo zam\nta pped</w>\nyad av</w>\nu sp\nb way</w>\nthe od\nbil t</w>\nra ids</w>\nem press</w>\nadap ted</w>\npat ron\nnut shell</w>\nag ra\nbe aded</w>\nsundaywith marsha</w>\nvi king\nproce ed\nmain tained</w>\nthinkbig sundaywithmarsha</w>\nsn es</w>\nmus ica</w>\nto wer\nch ab\nbo k\nsm t</w>\ninsul t</w>\nharve sting</w>\nwindo w\nru ther\nbe ige</w>\ndec al</w>\nindic ate</w>\nma iling</w>\nri ft</w>\npo le\nander son\nch oral</w>\nsp ride</w>\nl ili\nev elyn</w>\nimrankhan pti</w>\n.... \"</w>\nke red</w>\nun dp</w>\nwater falls</w>\nse ars</w>\nle mans</w>\nworld series</w>\nri el</w>\nani e\napp ar\nscore rs</w>\nlam p\na than</w>\nphys icians</w>\nqu inoa</w>\nrefu sing</w>\nvu itton</w>\nunle ash</w>\ns la</w>\npat i</w>\nshou ts</w>\ninten tions</w>\nfo amed</w>\neurope an\nneighbor hoods</w>\nme er\nman son</w>\ndu h</w>\nbr at\ncon es</w>\nbow l\nkazakh stan</w>\nà¤ ¿</w>\nin appropriate</w>\ndel hi\nketch up</w>\nful ton</w>\ns ys</w>\nconsul t</w>\ngar field</w>\nto go</w>\nf ml</w>\nf led</w>\nb ds</w>\nfacilit ate</w>\nree bok</w>\nselfi e\nelev ate</w>\nactiv ate</w>\nbi ble\nca wx</w>\nb ys</w>\ncam ille</w>\nsy ou\nsk ool</w>\nher t\nw bc</w>\nple dges</w>\nrecor der</w>\npo sh</w>\nac re\nso aking</w>\nmat il\nv sco\nshoot ings</w>\npla r</w>\ne con\nðŁĻĮ ðŁı»\nrashi d</w>\nu bi\nðŁ¤ ¤</w>\nsw inging</w>\nwi pe</w>\nrap tor</w>\nm su\nmusic video</w>\ndur ham\nat tic</w>\napar ty</w>\nfe tus</w>\nactiv ation</w>\naa z</w>\nmotiv ate</w>\nðŁĴķ ðŁĴķðŁĴķ</w>\nj al</w>\nà¤ ®</w>\nag on\nsche er</w>\nstal ker</w>\nfo ster\naz zo</w>\ntele gram</w>\nvi gor\ns laugh\nscreen shots</w>\nentrepre neu\nkri stin</w>\ninten tion</w>\nch illi\nfr action</w>\ndon a</w>\nge a</w>\ntc u</w>\ns ite\nla k</w>\nem il\nd nt</w>\nbor o\nwil kinson</w>\nre cu\nato day</w>\nt anya</w>\nbl anco</w>\ncd n</w>\nbrilli antly</w>\ng cc</w>\nac c\nevacu ated</w>\nther ine\nden ny</w>\ncait lin</w>\nshe pard</w>\npou ch</w>\nhand held</w>\nsou theastern</w>\nha a</w>\nÃ ´\nre solutions</w>\nled ger</w>\nsr in\nr ar\nshat tered</w>\nchim ney</w>\nim with\nmete or</w>\nhand led</w>\nra ke\ntown send</w>\nen han\nshi py\nduc t</w>\ntw x</w>\ninflam matory</w>\nwar hammer</w>\ntheat rical</w>\ngro s\nsk ar</w>\nsco tty</w>\nni el</w>\ntit o</w>\ntin i</w>\nconne ction</w>\n_ .</w>\ngoldeng lobes</w>\nsha q</w>\nðŁı ³ï¸ı\nhall way</w>\nfron ts</w>\neffec tiveness</w>\ngla ston\nd hs</w>\nex pi\nto h</w>\nc pl</w>\nsc s</w>\nre o</w>\nha g\nresemb lance</w>\nhor an</w>\nabu sive</w>\nqu er</w>\nvirtu e</w>\ncho lester\na q</w>\nshan e\nm ce\ncarri ers</w>\ndi stress</w>\nre wind</w>\nÂ ¡\nvoo doo</w>\nint act</w>\nann o</w>\nðŁĺ ¤\npi led</w>\nadi a</w>\nãĥ ³</w>\nen ow</w>\ndi gs</w>\nlight ly</w>\ngoo fy</w>\nturb ine</w>\ngovernor s</w>\ncon te</w>\nre open</w>\npa h</w>\ni ve\ncra fting</w>\nswee ps</w>\njo di</w>\nan de\nzu cker\nkaw aii</w>\no ko\nv ai\nout line</w>\nkri sti\nts n</w>\ninsp o</w>\nqu int\nfil thy</w>\nlyn ne</w>\nlisten ers</w>\ndepar ting</w>\nor d\nt weed</w>\n, &</w>\nale k\nsel fish</w>\nnor ther\nrecogni zes</w>\ni ps</w>\nbe s\na ed</w>\nw ills</w>\npe at</w>\nsurround ings</w>\nmon uments</w>\nais le</w>\nbe cker</w>\nla v</w>\nquant ity</w>\nv ah</w>\nhelicop ters</w>\ntu cked</w>\nalv arez</w>\nsha pe\no bey</w>\nad diti\nroad side</w>\nm ite</w>\nbl ers</w>\nep age</w>\nj au\nignor ant</w>\nb ins</w>\nlu lu</w>\nx o\nc fo</w>\nee eee</w>\napprentice ship</w>\nshef fiel\nto i</w>\nho k\nfaken ews</w>\ndeplo y</w>\naid an</w>\nhusk ers</w>\nãĢ İ</w>\nwest brook</w>\nmi ster\nconfi gur\ncar r\nfic a</w>\nproceed ings</w>\nha w</w>\nste ak\nmur derer</w>\npay day</w>\na jo</w>\np vc</w>\ndon ates</w>\nbi af\nnom nom</w>\nbe it</w>\nk ali</w>\nx rp</w>\nahmed abad</w>\nse mic\nche y\nx tra</w>\nan twer\nhead lining</w>\nsqu ares</w>\nroun ded</w>\nflu ore\nbol d\ndisa sters</w>\nam oo</w>\ngener ic</w>\ncran es</w>\nbrief ly</w>\ngi g\nauster ity</w>\nanticip ation</w>\nfor ti\ntreas urer</w>\ncann y</w>\nce cil\ndete cted</w>\ncheck list</w>\nà¸ §\npam ela</w>\nbar bados</w>\nan field</w>\nhear ty</w>\ntx lege</w>\nperen ni\narro g\ning ram</w>\nâĹ ı</w>\nty ne\nspo on\nr ation\nam ba</w>\nm be</w>\ncam el\nh hs</w>\nyork shire\nreflec tive</w>\nfre aks</w>\nto k</w>\nju do</w>\npartic les</w>\ndu bs</w>\nban jo</w>\naccred itation</w>\nprover bs</w>\nover dose</w>\ninte gral</w>\ngu ang\nmc s</w>\nsuper car</w>\naf b</w>\nal vin</w>\nail s</w>\nx tre\nst aging</w>\ntw ent\nrabb its</w>\nmar o\ninste m</w>\ndol l\ncr ay</w>\nsant ana</w>\nble ach</w>\nmini ons</w>\nche ap\nman t</w>\ndi vers</w>\ncatal onia</w>\nlo is</w>\nmat ri\ncou gar</w>\nkay ak</w>\ne gre\np so\na ia</w>\nå ®\nchar lton</w>\ntr acked</w>\nsc ari\npe tt\nf wd</w>\nx in\ngra vel</w>\nbr ic\nbigg boss</w>\nar den</w>\nhu gging</w>\npal ms</w>\nst v\nli mb\nthe movie</w>\nhandic ap</w>\nri me</w>\nz ai</w>\nstu b\nindi a\nlithu ania</w>\nrhy th\np ita</w>\nmaced onia</w>\nhigh ered</w>\nbrid get</w>\nschwar z\nske let\nhi kes</w>\nant arctic</w>\nc ps</w>\nmash up</w>\nÐ °</w>\nn ell\nchand ra\nhe ir\nan us</w>\nsher idan</w>\nmi mi</w>\nmuse u\nbec ca</w>\nan ir\nbar rie</w>\ndioce se</w>\ncompar able</w>\nðŁı³ï¸ı âĢį\nyuk on</w>\nme p</w>\nhor mon\nmer ic</w>\nal f</w>\ncon quered</w>\nchrist church</w>\nðŁĴĻ ðŁĴĻ</w>\nhazard ous</w>\npoo h</w>\ncont ing\nretro spective</w>\npar ame\nna ir</w>\ncon sor\nho tra</w>\nastoni shing</w>\ncater pillar</w>\nu man</w>\nti sm</w>\nt vs</w>\nserv ic\ncroy don</w>\nmor ales</w>\nc g\ncu m</w>\nte ur</w>\nscan ada</w>\ns all\nmagno lia</w>\nel ise</w>\nth our</w>\nà® ¿</w>\nag omez</w>\nphel ps</w>\në°©íĥĦìĨĮëħĦëĭ ¨</w>\nwh os</w>\nweav ing</w>\nsi sd</w>\npro poses</w>\ncro ws</w>\npre sale</w>\neconom ies</w>\nbernar do\nsha hid</w>\nair show</w>\nmc cann</w>\nhor ticul\nnr l\ndu el</w>\nmongo lia</w>\ntou lou\nrequi rement</w>\nstruc tured</w>\ned i</w>\no lives</w>\nhe a\ncu ter</w>\nÐ º\nenthusi ast</w>\nharri et</w>\ndomin ion</w>\nsub mer\nðŁį ĥ\nsa ab</w>\nnes burg</w>\nmo ff\ndef ended</w>\nbur t</w>\nrewar ded</w>\ngold man</w>\nop tics</w>\nkhali d</w>\nhouse holds</w>\nbuc kets</w>\nce cil</w>\nche ss\nsubstan tial</w>\nef l</w>\noper ation\nevalu ate</w>\nst n</w>\nrece ssion</w>\nl ll</w>\ntom as</w>\ntru ths</w>\nak bar</w>\ns words</w>\np act</w>\nembarra ss\nha o</w>\nay urve\nscrip ture</w>\nny cc</w>\nop t</w>\ndi ameter</w>\nsc ented</w>\norgani zers</w>\nre lat\nha e</w>\ndream ers</w>\nde se\nðŁĮ »\nrestric ted</w>\nn ale</w>\nr hp</w>\ndol an</w>\nmun ster</w>\nha ired</w>\nconsult ants</w>\njo ints</w>\nhu mil\nd ill</w>\nrelent less</w>\nt Ã©\naf il\nut ilities</w>\njapan ese\ncondem n</w>\npet ite</w>\ncolli de</w>\nq f</w>\npeach es</w>\ncou rier</w>\nl ore</w>\nâĺİ ï¸ı</w>\nreli ability</w>\nch uk</w>\nðŁĻ ĥ\nstu res</w>\nge ther</w>\nho stel</w>\nbi er\n- _-</w>\nâ ĩ\ne ze</w>\nta ilo\ndi ent</w>\nblu ff</w>\nchu ffed</w>\npil ip\nmon arch\ne em</w>\nbu chan\nb ick\nop au\nku ps</w>\nà¸ ¢\npist ons</w>\nsp ins</w>\nm and</w>\nce st</w>\nbur ne</w>\nv ile</w>\ncher ries</w>\nbec kett</w>\nneed les</w>\npan ch\në Ĥ\nhaha h\ntrou bles</w>\ninsi sts</w>\ndo you\ng mc</w>\nmor tar</w>\ndeleg ate</w>\nin n\ng anda</w>\nsin atra</w>\nà¤ ¤</w>\nspee ding</w>\npu pil</w>\npre mises</w>\nali gnment</w>\npi kach\nas us</w>\nj alan</w>\nØ µ\nlime stone</w>\nfol kl\nparme san</w>\nce il\nmo y\nshawn mendes</w>\nac up</w>\nhu st\not es</w>\nmed ina</w>\nma di</w>\ngta v</w>\ncensor ship</w>\nar g</w>\nswe eney</w>\nsy kes</w>\ncol o</w>\nfoot steps</w>\ncann ed</w>\nadv ance\ngta online</w>\nhealthy living</w>\nðŁį ¾\na ig\np ality</w>\noc s</w>\nhe brew</w>\nim minent</w>\nberk shire</w>\njeremi ah</w>\nout going</w>\nbak er\nentr ata</w>\nma ids</w>\ngro ves</w>\nbo c\na del</w>\nm fw</w>\ncon science</w>\narm ys</w>\nnut ella</w>\nconte stalert</w>\nnovel ist</w>\nla h\nban ker</w>\nmarque z</w>\nðŁı ¡</w>\nto ff</w>\nout age</w>\ngr p</w>\nðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃ</w>\nmusc le\ndu dley</w>\nnvi dia</w>\nmi di</w>\nm uni\ness ays</w>\ndat ac\ncar ter\nà¸ £</w>\nt ans</w>\ni ves</w>\npublic ations</w>\nal er</w>\nok wx</w>\nil u\ncu tt\nhar p</w>\nout law</w>\nluther an</w>\nbr ill\nbo lic</w>\ndo well</w>\ngreen land</w>\nbe sties</w>\npath i</w>\npay ton</w>\ngue st\nhar den</w>\nðŁ¤ ©\nann ed</w>\nevacu ation</w>\npo ised</w>\nmc der\nb han\no i\nenvel ope</w>\nci d</w>\nca vi\nta pas</w>\nbook review</w>\ngrey hound</w>\nâĻ ª\nfe ud</w>\nlun gs</w>\nfor te</w>\nrai der\nff er\noni x</w>\ndep end</w>\nyn wa</w>\nrel ating</w>\nde vs</w>\nðŁĴ Ĳ\nacqui res</w>\nd ha</w>\nj yo\npriv ati\ncan ine</w>\nk b\ncra b\nsar din\nimag ining</w>\nk j\nem por\ndown hill</w>\nne z</w>\nta eyeon</w>\nnick imin\ngb p</w>\nà µ\nw ap\nsec co</w>\nma shed</w>\nðŁĴ¥ ðŁĴ¥\naugu stine</w>\ndiss ol\ndic tator</w>\nâ ĵ\nvi per</w>\ned fringe</w>\nvau x\nhard work</w>\nbook let</w>\nno x</w>\nchi ff\nðŁĴ ¨\nobserv ations</w>\nxbox one</w>\nu sher</w>\nke er\nlu p</w>\ndal las\ncal gary\nma dra\ndi ous</w>\nk bs</w>\nwood ward</w>\nhero ine</w>\nlu mber\nsea world</w>\no ws</w>\nmc ke\nmaver ick</w>\ngu la</w>\ncross roads</w>\nfan g</w>\ns ade</w>\nnik ol\nchee tah</w>\nme c</w>\npp g</w>\ner ick\nðŁİ µ\ntox ic\nbj j</w>\nviol a</w>\nsp ire</w>\nch ino</w>\ntra vis\ninstitu tional</w>\nha as</w>\nlow ry</w>\nw ac\nea e</w>\nhu mid</w>\nmp ton</w>\nru ck\nje w</w>\nc ine</w>\nzim mer\nse f</w>\nbhar at\nfre es\naam ir</w>\nðŁĴ ħ\nz inc</w>\nwan e</w>\nmulti player</w>\nroyal wedding</w>\ne el</w>\npreci pit\nqu ery</w>\nkimber ly</w>\nisa bel</w>\nful fill</w>\nig an</w>\nvau l\npan e</w>\nsc y\ndig it</w>\ngun n</w>\nu tah\ndog day</w>\nfi on\nxia omi</w>\nda c</w>\nel ast\ncha vez</w>\nro blo\ng ine\nten th</w>\nab h\nke to\nhur dle</w>\nna dia</w>\nmemorab ilia</w>\nha bs</w>\nqu an</w>\nh w\nhv ac</w>\npix ar</w>\nec cle\nkram er</w>\naccu ses</w>\nðŁĴļ ðŁĴļ\nper se\nmean time</w>\nwa hl\natle tico</w>\nâĢ¢âĢ¢ âĢ¢âĢ¢\nott oman</w>\nno vo\nk us</w>\nconne cted</w>\ntru sts</w>\nd mv</w>\nspen cer\nrahu lg\ndo ve\nsto kes</w>\nbolog na</w>\nenthusi asts</w>\nÃ ª\nrockstar games</w>\nted cruz</w>\ndu ras</w>\ns acked</w>\nlate x</w>\nimmer sive</w>\ncer t</w>\nlu cin\nprinci pals</w>\nfa res</w>\nsa ils</w>\nfar n\nam ent</w>\nsaf fron</w>\nquent in</w>\ncheck point</w>\nfer ris</w>\nex cur\nðŁĳī ðŁı¼</w>\nbai ley\nse h\nter re</w>\nmad am</w>\ns band</w>\nwan derers</w>\ncumber batch</w>\nyy c\ndigit ally</w>\nblackandwhite photography</w>\nroll in</w>\nmoroc can</w>\nðŁĮ ħ</w>\ndin ner\nd well\nto om\nm ye\nez ra</w>\ncp fc</w>\nwar hol</w>\nme er</w>\njon ah</w>\nno aa</w>\ns gate</w>\nso on\nsecu lar</w>\ng ating</w>\nti o</w>\ndri ver\nsi ssy</w>\nassan ge</w>\nta th\ned mund</w>\nbobc ats</w>\nra ji\npo stage</w>\nstu ds</w>\nm gm</w>\nkat o</w>\nedin burgh\nmeet the\nshir t\nfa a</w>\nmens fashion</w>\nsp reads</w>\nwi m</w>\ncar ts</w>\nphoe be</w>\nj ars</w>\nbot swana</w>\nÙ Ĥ\ned war\nsk ar\nri ve\ngu sty</w>\nc tv</w>\nferdin and</w>\nsu therland</w>\nnickimin aj</w>\nk v\nsi us</w>\nbee ch</w>\nre z\ndesi res</w>\non ial</w>\ncamp o</w>\nquar ry</w>\nlor raine</w>\ngil more</w>\nig gy</w>\nµ ï¸ı</w>\nho pping</w>\navi z</w>\nðŁĮ º\nuni sex</w>\ndedic ate</w>\natt itudes</w>\nste er</w>\njun kie</w>\nrail way\ny b</w>\nwhi sper</w>\nkey an</w>\nk us\nju g</w>\ndi x</w>\na ins</w>\nsum mon\nov ich</w>\nsy ed</w>\nher ald\nma ison</w>\nme ded</w>\nwild flower\nmain land</w>\nri sky</w>\nru kh</w>\nover looked</w>\nki c</w>\ndestro ys</w>\nnam an</w>\nki p\nz ano</w>\nchampion sleague</w>\nban dit</w>\nquin cy</w>\nsmi le\ncal vin\nopen ings</w>\nta pp\nol ulu</w>\nspec tro\naccred ited</w>\nap k</w>\npra ised</w>\nbar nett</w>\npol len</w>\npremi ered</w>\nselen agomez</w>\ntou red</w>\nscreen ings</w>\nuu u</w>\nmis o\nen se</w>\nadam lambert</w>\nguel ph</w>\nhar yana</w>\nhu tto\nle ar</w>\nl tc</w>\npo ached</w>\nbrex it\næ Ŀ\ntt c</w>\npa vement</w>\nmon gers</w>\nro e\nad ers</w>\nling ton\nparticip ant</w>\nca red</w>\nga il</w>\ny ates</w>\nlan tic</w>\ndash board</w>\njo o</w>\nfeli pe</w>\nssi onist</w>\nbu m\ns end\na eri\nthu gs</w>\nluci fer</w>\na he\ndete ctor</w>\nfil ly</w>\ngas oline</w>\nham per</w>\nhump day</w>\nthe ta</w>\nthe band</w>\nfore casts</w>\no hhh</w>\nlo bb\nhol l\ncp u</w>\naz u\nad ar\nhai ley</w>\nbu b\ncar t\nquo ted</w>\nan archy</w>\npan cre\ntwit art</w>\nal den</w>\nst ash</w>\nthe less</w>\nor ni\nbelie bers</w>\nmor mon</w>\npartic le</w>\navi ation\nâ¬ Ĩ\nwebcam toy</w>\nsad dened</w>\ncru is\nham let</w>\nn ct\nroll ins</w>\nmarque e</w>\nsaw yer</w>\nreli ance</w>\na ura</w>\ndi ec\nsoo thing</w>\nsig nings</w>\nak is</w>\nÃ ³</w>\nat kins</w>\naer op\nðŁĮ ¿\ny ab\nsh ari\ncon nol\ndu bbed</w>\nmanufac ture</w>\nconvin cing</w>\nfeelthe bern</w>\nra u\npu lit\non ec\ngem stone</w>\nur ging</w>\nbag u\nga h</w>\naci ds</w>\nfi anc\nzodi ac</w>\nsn oop</w>\nher rera</w>\niniti ated</w>\nven ge\nprofess ors</w>\npro di\nstron ger\ne mission</w>\nbb a</w>\nhal le\nta pp</w>\nhaw an</w>\nwh im\ncompe ted</w>\nmyr tle</w>\nir port</w>\ncold play</w>\nach e\nske p\nm son\nss ic\ncalli graphy</w>\nswim mers</w>\nme y</w>\npp c</w>\nthri ft</w>\npo c</w>\nre places</w>\ncommu ter</w>\nâģ¦ âģ¦@</w>\ngo ers</w>\nlo gue</w>\npara dig\nbas kets</w>\nsensiti vity</w>\njoh an</w>\natl antis</w>\n& &</w>\nsuit case</w>\nanxi ous</w>\nl h\nstr i</w>\ngal loway</w>\nstre ad</w>\nwar den</w>\ngr ounded</w>\nffici ency</w>\nli feat\nreli c</w>\ndisgu ise</w>\nisland ers</w>\nf cofficial</w>\nclassical music</w>\nb mc</w>\nen field</w>\nbi que</w>\noak ley</w>\nbat man\nsla ying</w>\nner ves</w>\nmul tit\ncalci um</w>\nprojec tor</w>\nscott sdale</w>\nant ino</w>\ngri ps</w>\nkim mel</w>\ndes mond</w>\nprote stors</w>\nhi atus</w>\nmetaboli sm</w>\nconclu ded</w>\npress er</w>\nti pping</w>\nsli de\ne to\nhun ting\naus open</w>\nri k</w>\npp ery</w>\ninnov ators</w>\npitch ers</w>\nag ger\nfun gi</w>\nz ad</w>\nproli fic</w>\nrockn roll</w>\nbl ames</w>\nct ar</w>\nstam ford</w>\nq ad\nmozz arella</w>\ninsan ely</w>\nden ver\nph ouse</w>\nnom ad</w>\nï ¿\ns ris\npro du\nhen ley</w>\npag an</w>\nam trak</w>\nru bi\nin cl\ntu tor</w>\nsco tia</w>\nwo es</w>\nsing apo\nfun nel</w>\nturn bull</w>\nknow ledge\ngri mm</w>\nreal madrid</w>\nwe are</w>\nmissi les</w>\ncon sol\nemo jis</w>\nsne ak\nsmi ths</w>\nru iz</w>\nbr ou\ni el\nha ver\nðŁĮ ļ</w>\nkin gof\nbasil ica</w>\ncircul ation</w>\nprin ters</w>\nta pping</w>\nri dley</w>\ndra gged</w>\nha j\nwrit er\nfundament als</w>\npersonal ities</w>\nme tre</w>\nstereo types</w>\nbur le\nbest of\nn ffc</w>\nha th\nmini stries</w>\na ali\ntrac ing</w>\npav ed</w>\nł ï¸ı\ng ic\ninsp ire\ntu g</w>\nha re\nrepe ated</w>\nex pon\nlol li\nrho de</w>\npre cin\ninstall ations</w>\ninstag ram\naz ar</w>\ni es\nsole ly</w>\ndu kes</w>\nmission ary</w>\nvan guard</w>\nfursuit friday</w>\non d\npol ari\nma st</w>\nhar an</w>\njos Ã©</w>\njack ed</w>\nec oun\nal ities</w>\nne ph\nra vel</w>\nmoder ated</w>\nsco w\ns fb</w>\nuru guay</w>\nas o</w>\nni g\nau du\np ints</w>\nlat ina</w>\nben z\nm itting</w>\nchar ted</w>\nmat ology</w>\ncit ro\nbiop ic</w>\nðŁĳ Ń</w>\ndjo kovic</w>\nfox y</w>\nagu il\nso to</w>\nan ada</w>\nsin king</w>\nsc rap\nhair s</w>\nbethan y</w>\nfact friday</w>\nðŁĲ Ĳ</w>\nunlea shed</w>\n) (</w>\ncontra dic\nram on</w>\ncoast line</w>\ny ong\nsn sd</w>\nli gan</w>\np ome\nmit age</w>\nge tt</w>\nwat i</w>\nri sk\nso aring</w>\nbru sh\nf pl</w>\nav an\nå Ĩ\nlar son</w>\nsh ear\nmul til\nblu r</w>\nmulti media</w>\nchun ky</w>\npar i</w>\nn ani</w>\nweir d\ncholester ol</w>\nchar les\ndream ed</w>\ntan ning</w>\npuzz les</w>\nfr am\nhand ball</w>\nch ag\nbeli ze</w>\nal u</w>\nbang s</w>\nÑ Ħ\ndetec tives</w>\nmc g</w>\nish q\nbo thered</w>\nsaf c</w>\nmp ing</w>\nten eri\ng ays</w>\nsail or\nan gi\nmul ticul\ngue ssed</w>\nros Ã©</w>\nhigh ways</w>\nbro om</w>\nchatt anoo\n- '</w>\nsee ker</w>\non ed\nat f</w>\nlu c</w>\n> <</w>\nbar i</w>\nper cep\njewel ry\nas ph\nsor row</w>\nsl ing\nmam moth</w>\njac kie\në §\nwilt shire</w>\nsa o</w>\ncan cell\nim paired</w>\ntor ial</w>\nbre ed\nguy en</w>\njud ice</w>\ntit le\npro spective</w>\napplic ants</w>\nðŁį Ĭ</w>\nepis cop\ne id\nb yo\nstock ings</w>\nðŁĴĥ ðŁĴĥ\nll p</w>\nsna g</w>\nkeep it\nl ough</w>\nol son</w>\nmatur ity</w>\n!! !\"</w>\ncop ter</w>\ni sha</w>\nbl i</w>\nwil mington</w>\ntr youts</w>\nth ai\nðŁ¥ ³</w>\npe bble</w>\nkra ft</w>\nf p\nÂ º</w>\nssi vely</w>\nli vin</w>\ncontest ants</w>\ntex tures</w>\njo an\nh dr</w>\nfilm festival</w>\nprov ence</w>\nwi do\nop end\nc si</w>\nsto wn\ncro ati\nad just</w>\nhost ile</w>\nanaly sts</w>\nil an</w>\ncu ppa</w>\nbru m</w>\nnewfound land</w>\ngood win</w>\nme tt</w>\nmall orca</w>\nplu gs</w>\nbu k\nbb hutto\nwrest le</w>\nsa ire</w>\nsho pped</w>\nfor za</w>\nle head</w>\nvi vo\nba st\nro xy</w>\nreg is</w>\nhard working</w>\nhon olulu</w>\ndesp air</w>\nyoung sters</w>\nni g</w>\nimpro mp\nroll tide</w>\nde emed</w>\ntre ason</w>\nru shed</w>\nfor ged</w>\nff f</w>\npikach u</w>\nbri ggs</w>\ndo it</w>\nac cent\nla us</w>\ngla ze</w>\ncompet ent</w>\na ho\nphoto g</w>\nmid field</w>\nle go\nhar vard\nmin orities</w>\nre illy</w>\nslic ed</w>\nonce upon\niniti ally</w>\nfinanci ally</w>\nlandscape photography</w>\nhar dro\nqu o</w>\nmm ers</w>\npar kinson</w>\nsmu gg\nread iness</w>\nbru tally</w>\nglou cester\nmp ed</w>\nbbhutto zardari</w>\nmur der\nye d\ndat aviz</w>\nsr t</w>\ndow ning</w>\nbi ans</w>\nm Ã¼\nfle ck</w>\nfli pped</w>\ns ly\nbrilli ance</w>\nri m\nk um</w>\nbubb a</w>\nko i</w>\nknit ted</w>\nsor g</w>\nma is</w>\nðŁĮ ²</w>\nti ss\nsu stain</w>\nsen su\nak han</w>\nzi est</w>\nexam ines</w>\nchardon nay</w>\nuser name</w>\nshort list</w>\nre bs</w>\non o\ndar ing</w>\nhard wood</w>\nche que</w>\nrighte ous</w>\nlight ening</w>\ndir k</w>\nshra dd\ndu ra\ndown stairs</w>\nsh al</w>\nami gos</w>\nru ff\ns law</w>\nri es\nred nation\nman us</w>\nðŁĩ§ ðŁĩ·</w>\ndistin ction</w>\nu bun\ndur an</w>\nmi gra\nthi ans</w>\nla ver\ndomest ic\nk x\njaz zy</w>\njusti fy</w>\nbelong ing</w>\ninsul ation</w>\ncolor stv</w>\ndrun ken</w>\nchann eling</w>\nqu and</w>\nxi ii</w>\nenligh ten\nkan o</w>\nfati ma</w>\nteen choice</w>\nterri fied</w>\np ba</w>\nas ley</w>\nmet museum</w>\ndun e</w>\npack er</w>\nki o\nðŁĴľ ðŁĴľ</w>\nbo iler\nfas cism</w>\nar mored</w>\nback grounds</w>\nin mates</w>\nembarra ssed</w>\ndefin es</w>\nth d</w>\nwe go</w>\nsilic one</w>\nlo on</w>\nel ding</w>\nbor rowed</w>\nhe mp\nak sh\nkaw asaki</w>\nbr y</w>\nde af\nkill er\ndispo sal</w>\nðŁĩ °\nglaston bury</w>\nun covered</w>\no xide</w>\npo ff</w>\nd ant</w>\nk j</w>\nku ro\ndri zzle</w>\npeop les\nfe e\npro pri\ndd lovato</w>\npi ggy</w>\not is</w>\naller gies</w>\nu bis\npengu in\nser a</w>\nvi z\nprosp erous</w>\nici des</w>\ntornad oes</w>\nsene gal</w>\nweb cast</w>\nsto red</w>\nenchan ted</w>\nbb cone</w>\nbay area</w>\nentrepreneu rial</w>\nrednation rising</w>\nexperim enting</w>\nang an</w>\nlot to</w>\nthey re</w>\npor e</w>\ner p</w>\nseren e</w>\neast wood</w>\nbro kers</w>\nbar ge</w>\nstal lion</w>\ntimber lake</w>\ntailo red</w>\ndy stop\nb ate</w>\nlat ors</w>\ndi xit</w>\nbran son</w>\ndynam o</w>\nky lie\nshame ful</w>\nbt wn</w>\nspring time</w>\nmix ture</w>\ns ounded</w>\nlu ton</w>\ndad es</w>\nmal a</w>\nop ra</w>\nen ic</w>\nrahulg andhi</w>\nse wer</w>\n~~ ~~\nky u\nnor theastern</w>\nca er\nbc u</w>\nnir vana</w>\nkitch ens</w>\nous y</w>\nal m</w>\nriver dale</w>\nhid den\nfl int\nsp d</w>\npat rons</w>\nkaty perry</w>\nau gh\nexhib itions</w>\nsm c</w>\nshu ts</w>\nat ore</w>\nda in</w>\nsome thing\nber th</w>\nbo g</w>\npor ter\ngen to</w>\ncon cussion</w>\nang lic\nro we</w>\ngr illing</w>\nscar lett</w>\nmaster ing</w>\nmor nin</w>\ncomm ented</w>\nsi me\nsi zing</w>\nchrist y</w>\nce os</w>\nst m</w>\nat ry</w>\ntari ffs</w>\nvac ation\npre judice</w>\np su</w>\nparen tal</w>\nfar age</w>\ncan a</w>\ncap com</w>\nkoso vo</w>\nyou re\nmen stru\nstal in</w>\ngrape fruit</w>\nbr an</w>\nche sa\ndav en\nexc el\n!! )</w>\nà¹ Į</w>\ndistribu tor</w>\nce a</w>\nbride sma\nmillenni al</w>\nwa in\nob serving</w>\nmis ery</w>\nplan etary</w>\nexpo sing</w>\nbra ised</w>\ncomp ton</w>\ndon gha\nq l</w>\nspring steen</w>\nth ul\nsyl ve\ncab o</w>\npal ad\nniel sen</w>\ngaz ing</w>\nba ja</w>\nr oud</w>\norchi ds</w>\njohan nesburg</w>\nse man</w>\nd ji</w>\noper ative</w>\naffe ction</w>\neclec tic</w>\nat c</w>\nmut ant</w>\naw x</w>\nnic e\nmel bourne\nindu lg\ntu lip</w>\ndias pora</w>\nwel p</w>\nbig gie</w>\nmississ auga</w>\nretri ever</w>\nor an</w>\ntam my</w>\nc ta</w>\nhipp o\nseas oned</w>\nger mans</w>\neng v\nmarvell ous</w>\nim f</w>\nrela ys</w>\nmon tan\nmaur iti\nme ister</w>\nas surance</w>\nreig ning</w>\nsu fficient</w>\nhan e</w>\nno thing\npos se</w>\nnav y\nin love</w>\nbrigh ton\nen qu\nch ung</w>\nsweat y</w>\nes c</w>\ncal ed\nman s\nnicar agua</w>\nsl ices</w>\nmo cha</w>\nwashington post</w>\nbb n</w>\ndam ned</w>\ngrow ing\nen burg</w>\nlo an\nme s\nwh oops</w>\nbeliev ers</w>\nspi el\nvo daf\nl at</w>\ns led</w>\ncricke ter</w>\nbrown e</w>\ngolf ers</w>\nbar ra\nwat chers</w>\nlu igi</w>\nsw amy</w>\nmom s\npit ched</w>\nsan tor\ncr s</w>\nsi re</w>\nsc amp</w>\nbo de\nste war\njon ny\nent ity</w>\npac qui\nmind ful</w>\nmin india</w>\nbear ded</w>\ntemp t</w>\nscorpi on</w>\neat on</w>\nauthori zed</w>\nar to\ns vp</w>\nop athy</w>\ncch ini</w>\nhouse music</w>\ndisney world</w>\nâĢĶ @</w>\npro pose</w>\ndi y\nexpen se</w>\nten g</w>\npupp ets</w>\nsm el\nd aca</w>\nper ry\nfin n\nboo sting</w>\nlefto vers</w>\ncou gs</w>\nsatell ites</w>\nman y\naz e</w>\ng ong</w>\nfi e\nmetho do\nfer ries</w>\nðŁ¤Ķ ðŁ¤Ķ</w>\nexplore rs</w>\nload er</w>\nattrac ted</w>\nil ton</w>\ngodd amn</w>\npi azza</w>\ndoc tr\nsav ing\nparagra ph</w>\nvisu alization</w>\nmay ors</w>\nwork flow</w>\nack les</w>\nðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ\nà¤ ¸</w>\ntwer k</w>\nclu t\nlo ver\nte ases</w>\nsi an\no te\ndeter ior\naccor d</w>\nl fw</w>\nswar ovski</w>\nnat al</w>\ntra ps</w>\nk ina</w>\nanaly ze</w>\nlaye red</w>\nbever ages</w>\nun it\nran som\npe shaw\ndest ined</w>\nastro logy</w>\nsi pping</w>\nmiley cyrus</w>\ncam ino</w>\nmarshmal low</w>\nbli ss\nout back</w>\nfa q</w>\nint oler\nhumil ity</w>\npo ppin</w>\nhallo ween\nmon tene\nop hy\nnu n</w>\ntattoo ed</w>\na as\nðŁĮ ³</w>\ndale y</w>\nqual ity\ndu sa</w>\nfisher men</w>\nswi f\nter rac\nst au\nle in</w>\ntrol ling</w>\nship ment</w>\ngarden er</w>\nmarch madness</w>\nhead band</w>\ngr t</w>\nbur nett</w>\nw and</w>\n!!!! !!!!!</w>\ngh e</w>\ndu x</w>\nhu d</w>\nwar ner\nðŁĩ ¦</w>\nex ile</w>\nrescu e\nrat a</w>\nd han</w>\nduc ati</w>\ndro wn</w>\nbl ends</w>\nspi e\nalli gator</w>\nsimul taneously</w>\nbroo ke\nu ke</w>\nk har</w>\ncomm union</w>\nri ka</w>\nford fc</w>\nchin atown</w>\nyou rown\nme y\ncan al\nsyste matic</w>\nde pri\nox ford\nan il\nw ut</w>\nequ ation</w>\nbe z\nfle ur</w>\nthe good\nlang ley</w>\nad ity\ned ith</w>\nal fie</w>\nÐ¾ ÑĤ\nen cry\nbr ill</w>\nex emp\nce sar</w>\nmb ling</w>\nab ri\nsc icom\nj ing</w>\nschool ing</w>\nmi ka\nmechan isms</w>\nimpromp tu</w>\nrhe a</w>\nmoo re\ncrime a</w>\nbe sto\nwri ght\nel ders</w>\nro ds</w>\nkam al</w>\nfolkl ore</w>\nbe et</w>\nmini on</w>\nreli eve</w>\nthr o</w>\nteam usa</w>\npas cal</w>\nmade with\nboli via</w>\nitt i</w>\nfree bies</w>\ndesi red</w>\nbest selling</w>\nl iness</w>\nla den</w>\nke ane</w>\nmi sts</w>\nhipp ie</w>\natta chment</w>\n@ /</w>\nse w</w>\nflan agan</w>\nâĿĹ ï¸ı\nsupre mac\nstl cards</w>\nsi as</w>\nq u</w>\nrh ys</w>\nste ep\nval leys</w>\nv w\npav ing</w>\ndisp at\nal ison\npor te</w>\nid u</w>\nnew sc\nsoc ket</w>\nmo s\nco star\nre vo\nprote ins</w>\nstanley cup</w>\nm cal\near ring</w>\nse cs</w>\nmc lean</w>\ncap ric\nnick elo\nad en\nv c\nshou se</w>\nadap tive</w>\nmaxi mize</w>\nentertain er</w>\npro se</w>\ngri ffi\nsix teen</w>\nlam ar\nmi rage</w>\nsaudi arabia</w>\nawe ather</w>\nru st\nin filtr\nfashion week</w>\nðŁĺĬðŁĺĬ ðŁĺĬ</w>\nselec tive</w>\nbubb le\na den</w>\nfen nel</w>\ndeci sive</w>\nm ta</w>\nmock ing\nmb les</w>\nst amp\nmu le</w>\nbernar do</w>\ngr in</w>\npo tt\nj ingle</w>\nvet tel</w>\ncolom bian</w>\ncam o\nmotivation monday</w>\nba han</w>\np ly</w>\ndh ary</w>\nk ami</w>\nx men</w>\nsleep er</w>\ngar a</w>\nmy sti\nconfi dential</w>\nconflic ts</w>\np neu\nce s\ninsur tech</w>\nclean se</w>\nme rely</w>\nva is</w>\ntu x\nthe great\nshar on\nma j</w>\nhol a</w>\neco systems</w>\naj ay</w>\naa j\nhu sh</w>\nhar mon</w>\nbackto school</w>\nwiki leaks</w>\nreflec ted</w>\nðŁĺ ĵ</w>\ncommemor ating</w>\nac et\nbuck ingham</w>\nmessi ah</w>\ntu ous</w>\nhor net</w>\nto be</w>\nd q</w>\nhe ine\nmi g</w>\npl ate\nnichol son</w>\nsp ie</w>\ncumber land</w>\nnor mal\npho bia</w>\nhappy halloween</w>\ncity fc</w>\nmc el\ngilli an</w>\nke to</w>\nlu de</w>\nde mise</w>\nsu ga</w>\nstr ate</w>\nmcgr ath</w>\nvisit scotland</w>\nfoo led</w>\ncb r</w>\ngc se</w>\ncol ori\npo td</w>\nmissuni verse</w>\nfin ances</w>\nma poli</w>\nfor ks</w>\nØ ´\ncann on\nmedic inal</w>\nðŁĹ ĵ</w>\nkh o</w>\nwre ck\npan to</w>\nbag el</w>\ngu ll</w>\nsyndic ate</w>\nic y\npr c</w>\nki en</w>\nzi ka</w>\nti sh</w>\npe ta</w>\nc co</w>\nli za</w>\nch ut\nex traction</w>\nel g\ngl i</w>\nfu eled</w>\npos it\nrespec tively</w>\nleice ster\nbr ink</w>\nvulner ability</w>\nim ported</w>\ne sha</w>\nðŁ¦ ħ</w>\nr ural\nre ll\ngam ing\natlan tic\naband on</w>\nno ah\nre solved</w>\npro state</w>\naller gic</w>\nps d</w>\nâĺ ¹\ndun geon\nfang irl</w>\nillumin ated</w>\nm hs</w>\nwhite sox</w>\nd ently</w>\nck o</w>\nendor se</w>\nover ly</w>\ndazz ling</w>\nprior iti\nnight life</w>\nut il\nbe have</w>\nflam en\neast bound</w>\nðŁĴ Ł</w>\nilove you</w>\ngov uk</w>\nmozam bique</w>\nalle gi\ndr i</w>\ntestim onial</w>\nath s</w>\nì§ Ģ\nmm y\nshab by</w>\npro secco</w>\nfriend ships</w>\ncal am\ndam ages</w>\noff set</w>\njura ssic\njun o</w>\narre ll</w>\nðŁĴ ©</w>\ninterven tions</w>\ndare devil</w>\ncar ver</w>\nrun away</w>\nran e</w>\ntruste es</w>\nha ute</w>\ndep ths</w>\nðŁİ Ń</w>\nme in\nsacrific es</w>\ncon cier\nne sting</w>\ni zzy</w>\nme tam\nilove my\nur ine</w>\ndu lu\nmal hotra</w>\nve ins</w>\nnight ly</w>\nco at\nan di\nhe witt</w>\nlon el\nci ble</w>\nwr ite\njen nie</w>\nsant ac\nĸ ï¸ı</w>\nstr ato\nsingapo re\nsop rano</w>\nkri sten\ncheer ful</w>\nflee twood</w>\nfa iri\nm eli\nwa st\ntur nt</w>\nsfor sale</w>\nsc rolling</w>\nangel ina</w>\nren dition</w>\njeric ho</w>\nnick y\nor b\nfla vo\npatri ot\nash eville</w>\nsick ness</w>\nre fund</w>\naggre ssion</w>\nb pl</w>\nãĥ ĥ\nelu sive</w>\nthi story</w>\nhang er</w>\nbu ffs</w>\nvil las</w>\nat kinson</w>\nsp h\nja it\ndecl ined</w>\nwo k</w>\nsupre macy</w>\noo tball</w>\ney ang</w>\nðŁİ ĵ\ns ford</w>\nath i</w>\nconsu me</w>\nroad ster</w>\ne so</w>\nu pro\nreci pe\nau f</w>\nuc i</w>\nar on</w>\noo oh</w>\ncs go</w>\nre ich</w>\nmc d</w>\nmin ute\nladi es\npun k\nrut gers</w>\nmee k</w>\nariz on\nta j\nland lord</w>\nde gra\nautu mn\nlyn x</w>\nus f</w>\nb hi\nfairy tale</w>\ndongha e</w>\nbet sy</w>\nexplo ded</w>\nchen nai\nop a</w>\npro tag\nbr ant\nðŁĵ °:</w>\ng f\npal li\nðŁı¼ âĢįâĻĢï¸ı</w>\nsu t</w>\nill ini</w>\ncolum nist</w>\nshir tless</w>\nde centr\nsear ched</w>\nec or\nbu ggy</w>\ns ack\nðŁĺĤ ðŁĺŃ\nde t\nther i\nor naments</w>\nbring back\nto v</w>\nquarter finals</w>\nic he\ncon stra\ngi er</w>\nbuchan an</w>\nvi x\nkay aking</w>\nmu stread</w>\nswal low</w>\nmel b</w>\nsc af\nop al</w>\nmay oral</w>\nhar at</w>\nðŁ¦ ĭ</w>\nschedu les</w>\nid f</w>\nha gue</w>\nro z\na ah</w>\nd mc</w>\ndu plic\nca che</w>\norph an</w>\nfrac ture</w>\nrec on</w>\nch av\nbun nies</w>\nal ain</w>\nmustaf a</w>\nðŁİ Ļ\nvac ations</w>\ndynam ite</w>\ntex ted</w>\nbroad caster</w>\nðŁĴ £</w>\nste amed</w>\nrock er</w>\ndi etary</w>\nluxury travel</w>\ninaugur ated</w>\nsa wards</w>\nvaugh n</w>\nlincoln shire</w>\nclick ed</w>\nkra ja</w>\nf anc\nremo ves</w>\nlayo ffs</w>\nmc far\nbre eds</w>\nwin nie</w>\njon ghyun</w>\nincen tive</w>\nvari ations</w>\npat ton</w>\natur day</w>\npersist ent</w>\npr un\npi ers</w>\ndal es</w>\næ ĸ\nbreast feeding</w>\nr ance</w>\nta wa</w>\nĤ âĸ\nmur doch</w>\ncap tive</w>\nthi stle</w>\nnic a</w>\ncommod ity</w>\ncou ldnt</w>\nboard walk</w>\ngraci ous</w>\npractiti oners</w>\nn gc</w>\nscru m</w>\nner o</w>\ncamoufla ge</w>\ncol on</w>\nhe i</w>\nphys icist</w>\nsaturday morning</w>\nten er</w>\nsi won</w>\ncolum ns</w>\nbru ne\ny vr</w>\nba ir\nreti res</w>\nhal am\ncab er\nshaz am</w>\nmin u\ncas cade</w>\nmilk shake</w>\ngri d\nd ren\nvin cent\nso dium</w>\nplat ter</w>\ncheer leader</w>\nchen ko</w>\ny ak</w>\nelimin ated</w>\nty po</w>\ny man</w>\nre think</w>\nâĿ Ĺ</w>\nts ville</w>\nbernardo kath</w>\nex tr\nðŁĺģ ðŁĺģðŁĺģ</w>\nta o\nre per\nmo ths</w>\nem powered</w>\nc iting</w>\ntranspor ted</w>\nmon ks</w>\nsan at\ncle ars</w>\nbachelore tte</w>\ncamp bell\nracha el</w>\nhar le\nhand ler</w>\nclimb s</w>\ninter ference</w>\nrele ase\nsh and\nr bs</w>\nhr h</w>\nãģ ª\nval le</w>\nr Ã©\nsli me</w>\nw akes</w>\nchu bby</w>\nslo an</w>\nel ves</w>\nath en\nattor neys</w>\nmicro scope</w>\nston er</w>\nsc aling</w>\no be</w>\nc out\nse man\nmid week</w>\nbal sam\nðŁĺį âĿ¤</w>\nti ful</w>\nv ish</w>\nlo tta</w>\nri pping</w>\nre mn\nti re\nle ap\nha vent</w>\nla by\nhi mach\nwhisp ers</w>\nwe in\nðŁİ ¸\nwild flowers</w>\nse le\nu cc</w>\nli ability</w>\naz ine</w>\nsw ings</w>\nk ya</w>\nta ir\nre main\ne do\nflo ps</w>\npoc ket\ngrand ad</w>\nexam iner</w>\ngr is</w>\nffe ct</w>\nðŁĳĬ ðŁı»</w>\nstud ded</w>\nheart beat</w>\nde acon</w>\nfirm ly</w>\ninfec tious</w>\nste f\nout lines</w>\nle asing</w>\ncla ws</w>\nsen se\ntab s</w>\nhoo t</w>\nmo sul</w>\nspa wn</w>\nco a</w>\nhog warts</w>\nve in</w>\nalban ia</w>\nmanu el\nb ino\nvaux hall</w>\nscot land\ngo bucks</w>\nmat ty</w>\nphy sio</w>\ntor ino</w>\nconst able</w>\ninvestig ated</w>\ns lower</w>\nmistak en</w>\nbay er</w>\nwild fires</w>\nvo ic\nx on\ntime to\nchas sis</w>\nbar ric\npi on</w>\nbald head</w>\nwoo k</w>\nregi str\ndra fts</w>\nb hs</w>\nli gue</w>\nl ick\nstaf fordshire</w>\nbaf ta</w>\ndar ry\nje anne</w>\nven ding</w>\ncor p\nâĽ ³ï¸ı</w>\nkid dos</w>\nfen way</w>\nca o</w>\nwest bound</w>\nðŁĺ Ļ</w>\ndv r</w>\nquick er</w>\nbla h</w>\ngoo die</w>\nðŁĴĭ ðŁĴĭ</w>\nvo x\nesp er\nfac ade</w>\ncor relation</w>\nred bull</w>\nrou p</w>\ndecl ining</w>\nchi ve</w>\nmc gee</w>\ntur o</w>\nin der</w>\nf eller</w>\nfu g\nil ysm</w>\nmar di</w>\npeshaw ar</w>\nki eran</w>\nine ma</w>\nmeat balls</w>\npe ck</w>\ndepre ssing</w>\nsen sing</w>\ngi z\ndd ington</w>\nspring watch</w>\nro aming</w>\nyellow stone</w>\nhorse shoe</w>\nam man</w>\nweek day</w>\nol or</w>\nðŁ¥ °\nboo sts</w>\nspr int\nscar ves</w>\nje e\nbee tro\ncl an\nall the\nìĦ ¸ë\nenlighten ment</w>\nado be\nre generation</w>\n? @</w>\ncont ag\nyach ts</w>\nto u</w>\nmor a</w>\nen voy</w>\nr ani\ngo li\ndhanush kraja</w>\nwood working</w>\nstreng ths</w>\nse di\ndisc s</w>\nar ina</w>\nsc on</w>\nlit e\nano ther\nðŁ¥ Ĭ</w>\nye men\ngu ern\nsav vy</w>\nlo yed</w>\nbiom ed\nheart break</w>\ncomra des</w>\nmilli e</w>\npat ch\nun f\njar vis</w>\nbl aming</w>\ncommemor ation</w>\nge y</w>\nå ¥\ncardio vascular</w>\nalig ned</w>\ndocu ment\n. ?</w>\naesthe tics</w>\nem u</w>\nthe irs</w>\nle h</w>\nps ic\nsi f</w>\npl ateau</w>\nex pend\ndomin ating</w>\nrob es</w>\nmauriti us</w>\nexcep tionally</w>\nhom er\ndiscover ies</w>\nbra un</w>\nten nant</w>\ninsul in</w>\nðŁİ ®</w>\ncar bs</w>\nte as</w>\n? !\"</w>\nzi e\nfranco is</w>\nbrow sing</w>\nth ol\ncla rence</w>\nhel per</w>\nob tained</w>\ncas sie</w>\nle es\n! ,</w>\npome gran\nhu bs</w>\npresti ge</w>\n] [</w>\nmach er</w>\nbott led</w>\npun ch\npi pe\no ch\ngall ons</w>\ndeliver ies</w>\nu ra\nun day</w>\nmon de</w>\ndepic ts</w>\nre gency</w>\noutra geous</w>\nkhal ed</w>\ncar o</w>\nhe arti\nza g</w>\ndevelop mental</w>\nover coming</w>\nstati stical</w>\nflavo red</w>\nfor ds</w>\ncre atives</w>\nlau rence</w>\ndi as</w>\nsun screen</w>\nin ked</w>\npre acher</w>\nn ul\nimpac ting</w>\nauti stic</w>\nâļ Ķï¸ı</w>\no ss\npel icans</w>\ncele ste</w>\nv b\nru mp</w>\nmc gra\nfair fax</w>\nhu mor\nbbc news</w>\nrow ling</w>\ncal der\nseam less</w>\nag ne\np ti\nmix ed\nt shirts</w>\nmer ci</w>\nb tob</w>\nwomen instem</w>\ngenealo gy</w>\npre ven\nl our\ncra dle</w>\ngi use\nÐ ¾</w>\nchron o\nfair ness</w>\nchocol ate\ntor y\nas da</w>\npre scott</w>\nstret ched</w>\nal man\nu il</w>\nre charge</w>\nin tre\nob st\nhosp ital\nhay ward</w>\nteneri fe</w>\nfried man</w>\nvap ing</w>\nconfe ssions</w>\nye ah\nbal li\nluck now</w>\ncor pse</w>\nsculp tor</w>\namp ton\nt pp</w>\nindic ates</w>\nsur plus</w>\ntru man</w>\nðĿ Ļ\nsin ha</w>\nin vo\nsovere ign\nke v</w>\nestabli shing</w>\nengra ved</w>\nassu ming</w>\nðŁı ģ\nsou za</w>\nfab i\nton ed</w>\noun ge</w>\ndel oit\ndow ney</w>\nno ble\nom or\ncar tridge</w>\nðŁı Ĳ</w>\nu hur\nhol loway</w>\nsucce sses</w>\nr sa</w>\nâĦ ¢\nma zz\ntw d\ndisc ourse</w>\n. <</w>\ny at\nsatis fy</w>\ncom pri\nà¤ ¹</w>\ngraph ite</w>\ndisser tation</w>\nar ter\ní Ķ\nb ally</w>\nzom bi\nly ons</w>\na ic\nu bc</w>\npra da</w>\ne il\nda x</w>\ncla i\ngrand daughter</w>\nextravag anza</w>\nchall enge\nðŁ¤ ŀ\npo ver</w>\nprimar ily</w>\ndad dy\nman a\nbi kers</w>\ninqui ries</w>\nda un\nfel ine</w>\ngener ative</w>\nhe f\nbenef iting</w>\nlind sey\npol ka</w>\ndemonstr ated</w>\nal le</w>\nrand y\no su\nlow key</w>\nweir dest</w>\nred bull\nour y</w>\nn ous</w>\nwood stock</w>\ncre denti\nnic er</w>\ng ado</w>\naly ss\nap h</w>\nprepa redness</w>\nstation ary</w>\nincorpor ated</w>\ndy er</w>\nsarato ga</w>\ncele sti\n: \"\nantibio tics</w>\nor gs</w>\ninde fin\nap ron</w>\nÐ¸ Ð\nfif teen</w>\nno f\nðŁĶ Ŀ</w>\nph x</w>\nte ga</w>\nm z\norganiz ational</w>\non air</w>\nband ung</w>\npleas ures</w>\nmor i</w>\nsecre tari\nrac coon</w>\nca shi\npil ates</w>\nk on</w>\ngeof frey</w>\nla o</w>\nkam p</w>\ndepart ments</w>\nback packing</w>\nan am\nÃ «\ncrack down</w>\naun ty</w>\non do</w>\nli zzie</w>\nph ers</w>\ncu n</w>\nðŁĩ ±\nk pop\npu t\ninten tional</w>\nconnol ly</w>\nbar clays</w>\nhs fb</w>\nswin don</w>\nu ku\ns ally\na int\nâľ ħ\npen ang</w>\nup lifting</w>\nepile psy</w>\ninter ro\nbun gal\ngo ku</w>\nblue berries</w>\nà¤ ¦</w>\nu ssia</w>\nsil ky</w>\nmou red</w>\ni stic</w>\nbri efs</w>\nme ats</w>\ngo b\nch aser</w>\nstate wide</w>\npra sad</w>\ngl itch</w>\nar in\nban ff</w>\nmemb er\nðŁĺŃ âĿ¤ï¸ı</w>\nlo ving\nhall a</w>\nà¸ ¡</w>\nsmo kers</w>\nyak u\nscicom m</w>\nphysi o\nsw ol\nlem ons</w>\ngel ato</w>\nch ool</w>\ncapit als</w>\nki stan</w>\nti ghts</w>\nspi kes</w>\ntrav ellers</w>\nik lan</w>\ncommissi oning</w>\nar ine</w>\nemabiggest fans</w>\nempha sis</w>\nfront line</w>\npad dock</w>\ndestruc tive</w>\nba ha\nl inger</w>\nje wish\nshet land</w>\nmc gin\nmon key\nko z\ns one</w>\nraj ini\nte h</w>\ny en\nc vs</w>\nmasqu er\ngir ly</w>\nwe sle\nwas nt</w>\nbro dy</w>\ntermin ator</w>\ngil le\nmag gi\nbir die</w>\njeopar dy</w>\ncu bic</w>\nvm ware</w>\nintric ate</w>\nan up\nto pia</w>\neast on</w>\nsab res</w>\ninvestig ates</w>\nbu sting</w>\nbil ingual</w>\nvalent ino</w>\nin format\nfer re\nadvent ur\nhydr ate</w>\nfor sy\naz iz</w>\nsan to\ne de\nwhist ler</w>\ncontinu ously</w>\nd ham\nun used</w>\nji had</w>\naddic tive</w>\nvi dy\ndo b\ni do</w>\nfi ed\nni versary</w>\nn one\nfu er\nðŁĺį ðŁĺĺ\ncoven ant</w>\nprin table</w>\nimmac ulate</w>\no em</w>\ncl t\nserv ants</w>\nconsu med</w>\nun released</w>\nsc um</w>\npack aged</w>\nme re\nìĦ¸ë ¸\nto by\nta f\nspo ons</w>\nme al\nf ball</w>\nfair field</w>\njan et\nsilver stone</w>\ndart mouth</w>\nfollow me</w>\nvoy ager</w>\nkom bat</w>\nanni ver\nene w\nmag dal\nho ve</w>\nsa th\ngrizz ly</w>\ncar di</w>\ngart ner</w>\nsand y\nkan ye\npost ure</w>\npo ign\nim pulse</w>\nradio logy</w>\nhoriz ons</w>\nsi am\naish war\n= =></w>\nno che</w>\ntr is</w>\nel yn\ncom me</w>\ndu i</w>\nce c\ncouncill ors</w>\ncudd ling</w>\ncreep ing</w>\nloc ke</w>\nmanag es</w>\ntrans ferred</w>\nne cks</w>\ndi er\ndan o</w>\nv ick</w>\nlun ches</w>\nd he\nen sures</w>\ncri ss</w>\nul ster\nbann on</w>\ncont enders</w>\nsp am\nsweet ness</w>\nmed al\nhon duras</w>\narc tic\nultra sound</w>\nin fr\ndisco vers</w>\nei ffel</w>\nca sters</w>\nru ben</w>\ndu st\nawe ed</w>\natri um</w>\nlest we\nse ared</w>\nðŁĵº :</w>\nty ne</w>\nex changes</w>\nlittle mix</w>\nl le</w>\nastron auts</w>\nhersh ey</w>\nwork day</w>\nkno b</w>\nso v</w>\nre signs</w>\ntoday show</w>\nder man</w>\nan th</w>\naf c\nta ster</w>\nsw oo\nsa eed</w>\nper ing</w>\nnarrow ly</w>\nrn li</w>\nbest buy</w>\npanas onic</w>\nobst acle</w>\nfarmer s\nðŁİ Ļ</w>\npa wan\nki est</w>\nang ers</w>\nabsur d</w>\noh my\nsin o</w>\npist achi\nsp ice\ngiu li\nprime time</w>\nko w\nk ens</w>\nex agger\n! ?!</w>\nu ba</w>\nmidd les\nju dd</w>\ne jec\nslam med</w>\npen sions</w>\nof a</w>\nre create</w>\nb hp</w>\nxx l</w>\nliver pool\nthre sh\npur ity</w>\nni eu\nhol ics</w>\nwr ath</w>\nra do</w>\ngli o</w>\nam ma</w>\ndile mma</w>\ncr u</w>\nlets go</w>\n.... @</w>\nâĿ ĵ</w>\nsugge sting</w>\ntru mps</w>\nhor us</w>\nf v\nic om</w>\nrefer ring</w>\npredic tive</w>\ntar ts</w>\nge tte</w>\nso ck\nglo ssy</w>\npin ky</w>\nal ec\nthy me</w>\nou ra\nthero ad</w>\npe tr\ncr am\np fi\ndv n</w>\nme ier</w>\nincen tives</w>\ntun nels</w>\nmobi l</w>\nrec ap\nextra s</w>\nupri ght</w>\nrev amp</w>\nper severance</w>\n, -</w>\not p</w>\nmir ror\nar wx</w>\nger ry\nma her</w>\ng or</w>\nhom epage</w>\nam is</w>\nag ra</w>\nmade le\nbest friend\nsirius xm</w>\nbun dles</w>\nadmir ing</w>\nt dsb</w>\nðŁį ģ\nch as</w>\nslow ing</w>\nro h</w>\nwall papers</w>\nâĢ¦ /</w>\ntek ken</w>\ngang s</w>\ntal a</w>\nlind say\nshou l\nline backer</w>\ntool kit</w>\nur anium</w>\ncaly p\nab rams</w>\nmat thi\nðŁı ¿\nhon ourable</w>\nda yo\nver sail\ntan k\nst c</w>\nfr itz</w>\nspl end\npat ag\nanno yed</w>\non day</w>\ndevast ated</w>\nchattanoo ga</w>\nnational ism</w>\nmas sey</w>\njen n</w>\ntail or</w>\ndev gn</w>\norg ans</w>\nzu cchini</w>\non fox</w>\nsat ire</w>\nwex ford</w>\ndis grace</w>\nno to\nvol ta\nâĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ıâĿ¤ï¸ı</w>\nà ¶\nhome owners</w>\npoin ter</w>\nm cr\nau sten</w>\nday sto\nmo ons</w>\npal ma</w>\ngra zing</w>\ne so\ninfluen cers</w>\nshahid kapoor</w>\ncompli ant</w>\nmeasure ments</w>\ndevelop s</w>\ny d\npar l</w>\np vt</w>\nrand olph</w>\ntor tured</w>\nger ald\neli as</w>\ndeepi kap\nwar mup</w>\nhick ory</w>\ng ap\nco ffin</w>\nam our</w>\nre neg\nmoun ting</w>\nseven s</w>\nig le\nhi er</w>\ndec ad\ntri ght</w>\nesc apes</w>\nwer ner</w>\nt fl</w>\nful filled</w>\nni ger</w>\nsour dough</w>\nre aper</w>\nchoo ses</w>\nspin ner</w>\nweek nd</w>\nfil tered</w>\nsh uk\nkat i</w>\nold ham</w>\nopen source</w>\nkh anna</w>\nat elier</w>\nconne c\nopho bic</w>\ngla s\ncomplic ations</w>\nar son</w>\ncounc ils</w>\nsm ol\nas sy\nlur king</w>\nling ui\nhan ks</w>\ne in\nÙ ħ</w>\nru gs</w>\nn guyen</w>\nnou veau</w>\nmen ace</w>\nle v</w>\nalad din</w>\nru ining</w>\nround about</w>\nk m\ncon or\nshoo ps</w>\nmay day</w>\ntraum atic</w>\nprab has</w>\nka iser</w>\nk ita</w>\nrou ter</w>\npe dro\nre tar\nstun ner</w>\nspani sh\ndistur bed</w>\nacade my\ne learning</w>\nwit ty</w>\nsen g</w>\nfer al</w>\nav y</w>\nsta b</w>\nke aton</w>\nur du</w>\nko to</w>\nhu i</w>\ncoo ke</w>\nari an\nthe personal\nu ma\nse ap\na sting</w>\nrhetor ic</w>\nhand writing</w>\nmunici pality</w>\nconsor tium</w>\nðŁĲ Ł</w>\nglasgo w\nra ya</w>\neli za</w>\npolym er</w>\nbro th</w>\nprac ti\ncorrespon dent</w>\naddic ts</w>\ngay le</w>\nail ing</w>\no fe\np li\nhear tw\nst itch\nsight ings</w>\nprie sts</w>\nsam o\nslo th</w>\ngood wood</w>\nroc co</w>\nsab c</w>\nsumm it\nl ace\npres ley</w>\nitt en\ncin cy\nthepersonal network</w>\ns week</w>\npe gas\naf con</w>\nregi stry</w>\nci m</w>\nle th\ndic ap\ncand ice</w>\nflu ent</w>\nsm ack</w>\npede stri\nal oud</w>\ncar ac\npriyan kach\np gh</w>\nir ons</w>\ndol ce\nlat via</w>\ndece ased</w>\nthero ck</w>\ncla p\ncen e</w>\nfo am\nmorris sey</w>\ngre t\nessenti ally</w>\ncom cast</w>\nbe agle</w>\nargu es</w>\ning ed</w>\n- âĢ¦</w>\nsa g</w>\nha san</w>\nðŁĻ Ĩ\nðŁį °</w>\nnh ra</w>\nkann ada</w>\nindic ators</w>\non er\nbri xton</w>\nat as</w>\nscreen play</w>\nsor ority</w>\nsha heed</w>\nhe em</w>\nclass mates</w>\ntain ment</w>\nes i</w>\nbreast cancer</w>\nzucker berg</w>\naur or\nen cia</w>\nref ers</w>\nkae per\nvor tex</w>\ncom part\nlym ph\nphotograph ing</w>\nste ff\nrest ling</w>\npar sley</w>\nmom ento</w>\nth man</w>\nlac king</w>\ndu tt</w>\nocu lus</w>\nfin o</w>\nfren zy</w>\nra sc\nder n</w>\ndis missed</w>\nnoo k</w>\nmet gala</w>\nsh ill</w>\nrapha el</w>\nmaver icks</w>\nexhib its</w>\neag erly</w>\nc pa</w>\namen ities</w>\n. âłĢ</w>\nexo dus</w>\nern st</w>\nlit a</w>\ndeal t</w>\nwomens march</w>\ni ain</w>\nscore board</w>\ncampe ones</w>\nc en</w>\nti ki</w>\ngarri son</w>\nfidel ity</w>\nbra g</w>\nroad map</w>\npsy chop\nlo e\nble u</w>\nðŁĳĬ ðŁı¼</w>\nsau vi\nspr inger</w>\ntemp tation</w>\nru dolph</w>\nac ura</w>\nwic z</w>\nparach ute</w>\nstro l\nlen ny</w>\nzi k</w>\ndom s</w>\nnb af\nal pac\nvivi an</w>\nro ve</w>\npre et</w>\nperpe tu\nsna ke\nair soft</w>\ninfl atable</w>\nprin ces</w>\nati e</w>\nffe y</w>\npati ent\nm ire</w>\nchel le</w>\nsl ack</w>\ngroo vy</w>\n# :</w>\nup loading</w>\n!!!!!!!! !!!!!!!!\nsiem ens</w>\nprovi sion</w>\nv fx</w>\nneed y</w>\nf ats</w>\nto poli</w>\nbhu tto</w>\nsa thletics</w>\nalu ms</w>\nt winning</w>\nsouth western</w>\nadop ting</w>\nlast night</w>\nman ne\nla ga</w>\ntw ell</w>\nac ia</w>\n-- --</w>\neye wear</w>\nhur ley</w>\nfle e</w>\nsa ch\npe cker</w>\ncost ly</w>\nis k</w>\ncr ates</w>\npolic y\nero sion</w>\nin go\nwer k</w>\nðŁĲ į</w>\ntorto ise</w>\ntherap ies</w>\ninter net\nchihuahu a</w>\nri ps</w>\nfre i\ned or\ntai ji</w>\nt fc</w>\ndo d</w>\ndemp sey</w>\nchrist in\nchen g</w>\nhi ps</w>\ngra eme</w>\ncom passionate</w>\ncavali ers</w>\nhistor ic\nsoul ful</w>\ncrimin al\nja c</w>\nvin ci</w>\nexpi red</w>\nsur at</w>\nturi smo</w>\nk ona</w>\nse aweed</w>\nber ts</w>\nle ica</w>\nexpre ssing</w>\na al</w>\nwor t</w>\nbreak fast\nher ring</w>\nam used</w>\nrhu barb</w>\nmar tian</w>\ncospla yer</w>\ny ash\nstri al</w>\nra ul</w>\nrefer ral</w>\ndw ts</w>\nj w\nad ler</w>\ncur tains</w>\ngu r</w>\nval ence</w>\ntyr one</w>\nsw fc</w>\ncoach ed</w>\nre born</w>\ndiabe tic</w>\ncho ke</w>\nnor folk\ninvestig ative</w>\nðŁĴ¯ ðŁĴ¯\nz id\nv mas</w>\nphi e</w>\nobjec tives</w>\nâľ ĭ</w>\nover due</w>\ndi vers\nmat su\nðŁİŁ ï¸ı</w>\ncasu alties</w>\nà¸ §</w>\nal k\nstand ardi\nre alist</w>\narti facts</w>\npand or\nke x\nin vin\n( !)</w>\nine y</w>\npar aly\nmr t</w>\nfay e</w>\nthe voice</w>\non ga</w>\nde ed</w>\nskin ner</w>\naz wx</w>\nspeci men</w>\npriyankach opra</w>\nnu evo</w>\nbar kley</w>\ntoulou se</w>\nresu mes</w>\nfootball ers</w>\ncit i</w>\nfe tch</w>\nÃ¨ re</w>\nlestwe forget</w>\nðŁĻ ĭ</w>\nch unk</w>\ndri fting</w>\nmanipul ation</w>\nequ als</w>\npu tt</w>\nky ungsoo</w>\nâĿ¤ï¸ı #</w>\nela stic</w>\npar ano\nfo y</w>\ndo ping</w>\ncin cy</w>\nss ler</w>\ninterrup ted</w>\nal ay\nado res</w>\name thy\ncon voy</w>\nãĢ ı</w>\nĬ ãģ\nblack list</w>\ngener als</w>\nsa chin</w>\nbru shed</w>\noun ces</w>\nnon stop</w>\nilli ams</w>\nbt sarmy</w>\nu av</w>\nru ff</w>\nbur ma</w>\nbi k\ndefen ce\nschul tz</w>\nbo asts</w>\nlonel iness</w>\ngo re\ntrans forms</w>\nalum na</w>\n@ @</w>\nra ppers</w>\nne hru</w>\ncar o\nhimalay an</w>\nwearab les</w>\nge h\npepper mint</w>\nre development</w>\nflam ingo</w>\ncos by</w>\nbig baldhead</w>\nag ri</w>\nbare foot</w>\nsco pes</w>\nre gram</w>\ngh ana\nðŁİ «</w>\ni heart\nsa die</w>\ncarri e\nmicrobi al</w>\nku ala</w>\nsk ater</w>\nquer que</w>\nâĻ ©\ngen res</w>\nreas oning</w>\nch ased</w>\nas o\nsli pped</w>\nen can\nvam os</w>\nker s\nad verse</w>\nmo il</w>\ncommod ities</w>\nwith you</w>\nsil ent\nhy pe\nan de</w>\nam ination</w>\nwhi spe\nlit z</w>\nâļ½ï¸ı âļ½ï¸ı\nri ff</w>\npp y\nlam bs</w>\ngan esh</w>\nab sent</w>\nregu lator</w>\nmarse ille</w>\nen roll</w>\npar cel</w>\nwa p</w>\nby rd</w>\nðŁĩ Ń\ntu ber\ncountry music</w>\npar l\ncontro llers</w>\nresponsi bilities</w>\nwe y\nch ate\nmontene gro</w>\nchic o</w>\nmil an\nl ms</w>\ntra inees</w>\nappropri ately</w>\nun certain</w>\npopp ies</w>\ned sheeran</w>\nnutr itious</w>\ngar o</w>\ndeut sch\nawe some\nãĥ ¼</w>\ncomfor tably</w>\nland marks</w>\net i</w>\nre usable</w>\ndaniel le\nro sal\nco les</w>\njust ic\nc cs</w>\nf anny</w>\nni m\nmc u</w>\nclin ch</w>\nat ene\nmer ge</w>\nim db</w>\nang lo</w>\nuc cino</w>\npan ini</w>\nan not\nbur berry</w>\nfeat ure\npredic ting</w>\nfashioni sta</w>\ns ask</w>\nimag inary</w>\nmm o</w>\nsouth sudan</w>\nspe ar</w>\nhu bble</w>\njo inthe\ncoyo tes</w>\nsli go</w>\nko dak</w>\nsit com</w>\npolaro id</w>\nroo ted</w>\ncorru p\nðŁĻĮ ðŁĻĮ</w>\nbris ban\nat z</w>\nah l</w>\nre my</w>\ntal ent\naval on</w>\nra da</w>\npau line</w>\nlocom otive</w>\ngo ons</w>\nne mo</w>\nmaser ati</w>\nic u</w>\nstu tt\nhistor ically</w>\nsm b</w>\npres by\navo id\nso oners</w>\nrhine stone</w>\nw ad</w>\nri sing\ntro t</w>\nmo des</w>\nreg ent</w>\noptimi ze</w>\nre ece</w>\nsm u</w>\nver ti\nnewyork city</w>\ncor tez</w>\nra c</w>\nin case</w>\nsin c</w>\nfiel ding</w>\ne tta</w>\ntiff any\nal monds</w>\nsad dle\nk rat\nmat ter\ng low\nstar ving</w>\ngl o</w>\ncra ppy</w>\nsl ur\nst d</w>\nmonit ors</w>\nrecei pt</w>\nmaymay entrata</w>\nmc il\nun is\nrain bows</w>\ncal dwell</w>\npacqui ao</w>\nj op\na fe\nhoo k\nes sen</w>\nwiz ard\nmedi an</w>\nfla ws</w>\ncom s</w>\nâĿ Ħ</w>\ning h</w>\nha ynes</w>\nanton io\ntem plates</w>\nou ter\nna w</w>\ncardi gan</w>\nbel grade</w>\nðŁĴ ī</w>\nhom o</w>\na ise</w>\nro pes</w>\nno ve\nwhat you\ntri gge\nconcep tion</w>\nad ukone</w>\nna di\nfri ars</w>\nsw er\nadju sted</w>\nhot line</w>\nsan ity</w>\nkau r</w>\ndown loading</w>\nc gi</w>\nten or</w>\neth nic\napp alach\nà¸ ¸</w>\npa g</w>\ngol ds\non set</w>\ninvestig ator</w>\ncar tel</w>\npeace fully</w>\njarre tt</w>\ncat alan</w>\npoli o</w>\nn um</w>\nfru stration</w>\ndhar ma</w>\nmy life</w>\nâľĮ ðŁı»</w>\naber deen\nmu sa</w>\nbin der</w>\nspark ly</w>\nfle eing</w>\ninstin ct</w>\nco ping</w>\ndomin ance</w>\nill ers</w>\ner a\nu conn</w>\nlo oms</w>\nliving ston</w>\ngal i</w>\nhe s\nc ma\nbel a</w>\nse ley</w>\nmon k\nla ch\nmar x\nÂ ´\nm erica</w>\nwoman in\nes sex\nra ina</w>\njim i</w>\nnep tune</w>\nz ack\nchine se\nmart ins</w>\nchand elier</w>\nher n\nwith us</w>\near l\nasph alt</w>\nmodu les</w>\nst p</w>\nul la</w>\npsychi atric</w>\nmile age</w>\ncaptiv ating</w>\nsi der</w>\nmen to</w>\nmor t</w>\ntran ce\ntal bot</w>\nab by\nì ĥ\nâľĮ ðŁı¼</w>\nj ak</w>\ndaw n\nturn up</w>\nscre wed</w>\nfe ds</w>\nblue print</w>\nðŁĴĸ ðŁĴĸ</w>\nhar sh\ner os</w>\ninsom nia</w>\nban kers</w>\nta emin</w>\nmis conduct</w>\nhu mber\ngi di</w>\nedu ardo</w>\ncon a</w>\nmusc ular</w>\nconsu ming</w>\nra sh</w>\ndon nie</w>\ndi pped</w>\ncol lie</w>\nsamu el\nmelt down</w>\nðŁĺįðŁĺį ðŁĺį\nme z\nexam ining</w>\nschwar tz</w>\npri stine</w>\nðŁĲ Ŀ\nve it</w>\nful filling</w>\nan esthe\ngue sses</w>\ndra ft\nsom me</w>\nsoli d\npati onal</w>\nho ped</w>\nevolu tionary</w>\nall er</w>\nenter tained</w>\nsli ps</w>\nlud wig</w>\nconclu des</w>\nsen sible</w>\nbon net</w>\ncra ze</w>\ntra s</w>\nhaz ards</w>\nconst antine</w>\ned ics</w>\nstar trek\nto c</w>\noccu pational</w>\nin cheon</w>\ndeepikap adukone</w>\npizz as</w>\nnew comer</w>\nde part</w>\noppre ssion</w>\nebon y</w>\nfoss ils</w>\ntro jan</w>\nel en\nste aks</w>\nk hou</w>\npositi oning</w>\nug by</w>\nred cross</w>\nak h</w>\ndol ce</w>\nus mnt</w>\npp en</w>\ndil ig\nma vs</w>\ncall er</w>\ncost ello</w>\nâĽ Ħ\ndy n</w>\nthing s\nrhin os</w>\na xi\nsar kar</w>\ncon vocation</w>\natt ers</w>\nss ss\nfun gus</w>\neu gen\nruss o</w>\nsqu at</w>\nw sb\neli on</w>\nwilliam sburg</w>\ns off</w>\ndefici ency</w>\nbe arer</w>\no kin\nkey stone</w>\nt wain</w>\ncal ming</w>\nbreak able</w>\nwa res</w>\nhorser acing</w>\ncom bs</w>\nbun ting</w>\nu it\nt land</w>\nðŁĴĻðŁĴĻ ðŁĴĻ</w>\nga stron\nsab ot\nick ers</w>\ncommissi oners</w>\nsen ate\nii ot</w>\nath ena</w>\nnit rogen</w>\nan tony</w>\nero tic</w>\ndi alo\nmis sou\nhypo cr\nâľ Ī</w>\nkaeper nick</w>\ncan v\nd roo\nclevel and\no sh\nmon sta</w>\nstefan o</w>\n^ )</w>\nsh ul\npo ison\nha e\ncommerci als</w>\nma ul\nnit ro</w>\nco worker</w>\nalo e</w>\nvap or</w>\nt ents</w>\nrussi an\nqu id</w>\nquestion able</w>\nmid get</w>\npo ker\ngirl friends</w>\nsin the\nerit rea</w>\nten ure</w>\ndepos its</w>\nbuc keyes</w>\nspot ter</w>\ntheod ore</w>\ntrin ity\njoaqu in</w>\nu cci</w>\nfollow the\ncaf c</w>\nmp a</w>\nðŁĲ »\nplo tting</w>\ndom ino</w>\nta ek\nsion ally</w>\ndicap rio</w>\npa p</w>\ncar mel\nig er\nbt cc</w>\nbeth le\nwww bigbaldhead</w>\nfoo die\nbagh dad</w>\nmason ry</w>\noff ended</w>\nà ·\nà¸ ģ</w>\nsc ro\nvers es</w>\nori ent</w>\nar ches</w>\npi yu\nknow your\ngre e</w>\nta kers</w>\ngu ard\ndish on\nbucket list</w>\nbha fc</w>\nwar dly</w>\nðŁİīðŁİ Ĭ</w>\nleigh ton</w>\npe w</w>\nstra y\nassaul ted</w>\nin hal\nly fe</w>\namar keting</w>\nl x</w>\nkat z</w>\nubun tu</w>\nme o</w>\ncarto onist</w>\nturno ver</w>\nmi z</w>\ndis like</w>\nmul len</w>\nmo f\nbl and</w>\nhi des</w>\nemer ges</w>\nchori zo</w>\ntruste e</w>\nma hog\nlan sing</w>\nparalym pic</w>\nfa int</w>\nfa una</w>\nch al</w>\nsn ar\ncat h</w>\nbent on</w>\ncast illo</w>\nsli ppery</w>\napric ot</w>\noec d</w>\nbar o</w>\nl z</w>\nhe ming\nclow ns</w>\nco workers</w>\nperu vian</w>\ncommu ters</w>\ny ell</w>\nðŁļ ´\nunder ing</w>\nv j</w>\ntt p</w>\nfli pk\nw ana</w>\nsoc ent</w>\nĤâĸ Ĥâĸ\nà¤ Ĥ</w>\noo sa</w>\njag ger</w>\ndi sm\ne less</w>\nd ham</w>\ncali f</w>\na official</w>\nec lip\nharro gate</w>\ngra pp\ncom rade</w>\nn tr</w>\nconcentr ate</w>\nthi ghs</w>\nbit coin\nbel arus</w>\në ĵ\nend uring</w>\nnow watching</w>\nindustri al\npi p</w>\nar on\nar at</w>\nÂ ®\nwhit by</w>\noooo ooo</w>\nsa ree</w>\ntic als</w>\nmis leading</w>\nyo on\nyear s\nsle igh</w>\nroman ian</w>\nsciss ors</w>\nvam pires</w>\nac up\nab ba</w>\nth weeksary</w>\ncent ri\nfl ye\nu o\nc bi</w>\nbu ena</w>\nsin d</w>\nmar ino</w>\nbur r</w>\nre building</w>\nà¤ ²</w>\nanniver saire</w>\nac ca</w>\nðŁĴĢ ðŁĴĢ\ngett ing\ntu lips</w>\nwolf pack</w>\nâľį ï¸ı</w>\nmore than\nta kin</w>\nðŁ¤ĺ ðŁı»</w>\nu be</w>\nmon ic\ndou bts</w>\nmo wer</w>\nco balt</w>\ndon ne\nspecul ation</w>\nargu ably</w>\nkak u</w>\nhtt ps</w>\nprosecu tion</w>\ndin ah</w>\nstam atic</w>\ndisclo sed</w>\nbever ly\nfl wx</w>\ncra bs</w>\nextraordin aire</w>\nwar mest</w>\nimper i\no logists</w>\ntrac es</w>\npar c</w>\nlake side</w>\nam r</w>\nter i</w>\nhour ly</w>\ndomin ation</w>\nar row\nshrews bury</w>\nance stry</w>\nwr angler</w>\ntrigge red</w>\npen sac\nroo ster</w>\nsurvi ves</w>\na on\nbo ko</w>\nval or</w>\nlove is\nla g\npe y</w>\nfo cal</w>\nout laws</w>\nbl anc\nartic ho\nwit s</w>\nmarsh all\ndie go\nsupport small\nu ca</w>\nsa h\nje et</w>\nsyn ago\ngover ning</w>\nðŁĴ ¬</w>\nsal ads</w>\ncre ate\nmiri am</w>\ncen sored</w>\nami de</w>\nno u</w>\nz eta</w>\nallegi ance</w>\n* )</w>\nbl m</w>\nric an</w>\npa stors</w>\noly mpus</w>\nblo c</w>\nwhir l\nstar ry</w>\npr one</w>\ny k</w>\np ne\ncongratul ating</w>\nbe v</w>\nso ber\nlove island</w>\nsa ir</w>\nan ing</w>\ntutor ials</w>\nq e</w>\nlun d\nin ist</w>\ncle ver\ntaxpay er</w>\nali z\nwren ch</w>\ndd ling</w>\ncap ri</w>\nh pa</w>\nðŁı» âĢįâĻĤï¸ı</w>\nna j\no j\nfuturi stic</w>\njelly fish</w>\nðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥</w>\ncel ery</w>\nplan k</w>\nfil a</w>\nne me\nun healthy</w>\nlec tions</w>\nðŁ§ ¡\nrit chie</w>\nn ws</w>\nmi kha\nwonder woman</w>\nâĢ İ</w>\nhip stamatic</w>\nka g</w>\nðŁĴľðŁĴľ ðŁĴľ</w>\npoul try</w>\nmo w\nwor ds\nlo ff</w>\nðŁ¤£ ðŁ¤£</w>\nrelat able</w>\nre mixes</w>\nkeny atta</w>\nke m\nre signed</w>\nfo d\nstra igh\nj lo</w>\nhu tch\nbox ers</w>\ncolle en</w>\nmag s</w>\ninstruc tional</w>\nko l</w>\nattrac ts</w>\npra g\naccount ant</w>\ngo ggles</w>\nbr u</w>\nth ole</w>\nmar row</w>\nleu ke\noc to\npon ds</w>\nbubb ly</w>\nhe ist</w>\nìĹ ĳ\nim p</w>\na har\nha unt</w>\nhall mark\npsy ch\nkkkk kkkk\ncol umb\njump suit</w>\ncost co</w>\nsi delines</w>\nag gies</w>\nover turned</w>\nni b</w>\nkey chain</w>\nfu k</w>\nf af\nmi am\nassist ants</w>\ncy cled</w>\nri der\ndam mit</w>\nred wings</w>\nmag es</w>\nkin s\nì Ĥ\nho d\nson t</w>\ncarol ine\n\" '</w>\ncu le</w>\nbra id</w>\nfel ony</w>\nar ities</w>\nruther ford</w>\ndepic tion</w>\nisab elle</w>\nro ach</w>\nk day</w>\nfifth harmony</w>\nem y\nli gam\nbari sta</w>\nalbu querque</w>\ngro ss\nðŁį º\noo ks</w>\nðŁĳ ¼</w>\ndun can\ntry in</w>\njag s</w>\ng ould</w>\nli tho\nâģ £\nÐ° Ð\nsam my\ntun g</w>\ncas ser\napo lo\naaaa a</w>\nman g</w>\nas ics</w>\nsh en</w>\np ye\ntur bul\nss p</w>\nsaint sfc</w>\non lin\nn anny</w>\nhe ster</w>\ndo z</w>\nà¸ Ķ\nth read\nren ts</w>\nkh and</w>\nðŁĴª ðŁı½</w>\nun conditional</w>\nrob son</w>\ncar re\nph on</w>\nsacrific ed</w>\nÂ £\nauto s</w>\npar ker\noc a</w>\nlog in</w>\nkee gan</w>\nhard cover</w>\ndough nuts</w>\nðŁĮ İ\nspit fire</w>\nrefresh ments</w>\nsaskat oon</w>\ncommod ore</w>\nj f\nrub ber\nhalam adrid</w>\nchild care</w>\nstra da</w>\nio m</w>\nri k\ndak ar</w>\nther mom\ncro pped</w>\ngar u</w>\nali k</w>\nven i</w>\ni ft\nsi ka</w>\nritu als</w>\nz ul\ne ch</w>\nÂ ©\nsu dan\nl land\ni me</w>\ndo cker</w>\nì ¤\nfe ared</w>\nfa o</w>\nwal ter\nno g</w>\nmutu als</w>\nl h</w>\nali gn</w>\nmon ia</w>\nconcep tart</w>\nðŁĻı ðŁı¼\nsco e</w>\ncompet ence</w>\nsw ine</w>\nly me</w>\nlaun ch\ngreen er</w>\nabstract art</w>\ninqu is\ngran ada</w>\nga elic</w>\nflu ff</w>\nd backs</w>\ngrave yard</w>\nba be\nacade mic\nadventur ous</w>\njoh ann</w>\n~ !</w>\nbi bi</w>\n| #</w>\npl ings</w>\ngett y\nas b</w>\nâĿ¤ï¸ı @</w>\nstaf f\nreligi ons</w>\nbang or</w>\nworld bookday</w>\nme gh\nde vin\nash ore</w>\nmeri dian</w>\ngi thub</w>\nqui z\nall stars</w>\nbe stest</w>\nir resi\nack er\ndo te</w>\nwar rington</w>\npol ly</w>\nnewor leans</w>\ncr ou\nwi gs</w>\nche y</w>\nsmithson ian</w>\nla sag\nde tour</w>\nbor is\nstra ps</w>\nmari ah\ninten tionally</w>\nko h</w>\nðŁį ¸</w>\nssi an</w>\nmar issa</w>\ncor al\nepiscop al</w>\ncasu alty</w>\ntom o\nsupply chain</w>\nsam p\non go</w>\nro o</w>\ncavi ar</w>\np fw</w>\nclau dio</w>\nbuff alo\ns ations</w>\nmat ty\nsnap back</w>\nl ds</w>\nal arms</w>\nmat te\nâĺ Ķï¸ı</w>\nconditi oner</w>\nd ors</w>\nhe x</w>\nfi zz</w>\na stri\nsus sex\nsecur ity\nqa eda</w>\nall star\ncocac ola</w>\nas one</w>\ncl icks</w>\nsc ans</w>\nmu te</w>\nhe avier</w>\nðŁİ §\nâĺ ŀ</w>\nlv l</w>\nbook boost</w>\nyoutu be\nfla shes</w>\nf jor\nc su</w>\nexplo de</w>\ndo dge\ncair n\ngonz ales</w>\nth ill</w>\npel le\nhart ley</w>\nrenew able\nre tin\ne stre\ncostar ica</w>\nshipy ard</w>\nnc fc</w>\npri ya</w>\na ghan</w>\nan ath</w>\nplu gin</w>\nco rey\nre bound</w>\nor u</w>\nkat rin\nhor mone</w>\ngi m\nmahin dra</w>\ns sus</w>\npark land</w>\nhar per\nfanta stic\ninfer no</w>\nep ilo\nwrest ling\nfe ct</w>\nc it</w>\nac oun\nto ssed</w>\nmonu mental</w>\nchar tered</w>\nbu st\npe tra</w>\nâĮ ļ\nwildflower hour</w>\nsweat ers</w>\n* .</w>\nbl er\nate ch</w>\ngo wan</w>\ndemo graphic</w>\nbra l</w>\nsuici de\nrenov ations</w>\nvu el\nsin ister</w>\nar mani</w>\nmiso gy\nph arrell</w>\nnap s</w>\nun iting</w>\ncrusad ers</w>\ncor gi</w>\ninsu red</w>\nthan i</w>\nno or</w>\ng q</w>\nd ada</w>\nbicy cles</w>\nsnu ggle</w>\nsch an\nten berg</w>\nss al\nfe mme</w>\nbo il</w>\n½ ï¸ı</w>\nre ap</w>\noccur ring</w>\nhus sein</w>\ndivi d\nsto ke\nsh alom</w>\nna ia</w>\no lic</w>\nfrustr ating</w>\nÙ ĩ</w>\nig s</w>\ngro ver</w>\nscen arios</w>\nn ds</w>\nbru tality</w>\nmed alli\nbu on\nsas s</w>\nskate boarding</w>\nony x</w>\nlor ry</w>\nny u</w>\ngau tam</w>\nmm ings</w>\ngu g\nend i</w>\nlo thian</w>\ncomm ando</w>\nchal k\nph ora</w>\nasse ssing</w>\nti gh\ncrun chy</w>\nad ay\nis l</w>\nci ara</w>\npilgri ms</w>\nkam al\np to\nbrit anni\nt ani\nsm c\nl ure</w>\napp store</w>\nab y</w>\ngolf ing</w>\ncl c</w>\nfa u</w>\nan as\nshu tting</w>\nregul ated</w>\ncarn age</w>\nscow boys</w>\nall enge</w>\nc ma</w>\nhumbold t</w>\nrel le</w>\nku mb\nher i</w>\nrefin ery</w>\nsound check</w>\nd wayne</w>\nbos nia</w>\ni sp\nthe alth</w>\nanni v</w>\nrelev ance</w>\nmy a</w>\nbag gage</w>\ndre ad</w>\ns bc</w>\nth ed</w>\nbu h</w>\nhi jab</w>\nlo id</w>\nke w</w>\nc te</w>\nrespec t\nlovel ies</w>\ncu bes</w>\ncelebr ate\ndir t\nsav ers</w>\n_ ,</w>\ngar ment</w>\npulit zer</w>\nmas jid</w>\nbeat port</w>\nal arts</w>\nencry ption</w>\ns ner</w>\nple ads</w>\nfound ry</w>\nsym metry</w>\nru mi</w>\nbirth place</w>\nscallo ps</w>\nsupp le\npivo tal</w>\nt ati\nno de\nso d</w>\npro xim\ntr ics</w>\ncol dest</w>\nbren t\nmand u</w>\ncla ir\ne ach\nand alu\nhi ddleston</w>\nðŁĲ º</w>\nmel ts</w>\nv ance</w>\npin n\nse ments</w>\nscre ened</w>\nsa chs</w>\no bl\nic ha\nâĺĺ ï¸ı</w>\nschool ers</w>\nheal ed</w>\nlo gged</w>\nðŁ¤ĺ ðŁı¼</w>\nic us</w>\nbore dom</w>\nb ish</w>\nb ffs</w>\ntal king\nsure sh</w>\nhoo kem</w>\nde on\nde fl\nei leen</w>\nðŁį ķ\nwomen intech</w>\nri sotto</w>\nrang er\nadverti se</w>\nà¸ ģà¸\ntel ly</w>\nla go</w>\ndart moor</w>\nd ong</w>\nsk ates</w>\nlo go\nun ner</w>\nmail box</w>\nma sala</w>\nlo oooo\namethy st</w>\nche wing</w>\nc bb</w>\naustrali ans</w>\nrc mp</w>\ngame art</w>\n# ...</w>\nkor n</w>\nextre mism</w>\nfruit ful</w>\nanci ent\npu bg</w>\npol ite</w>\nwh it</w>\nmur als</w>\nm gr</w>\nline man</w>\ndav ao</w>\nste ms</w>\nten nis\nav age</w>\ntu pac</w>\ngigan tic</w>\nhs bc</w>\nauto biography</w>\nup the\nà¸µ à¹Ī</w>\nre gal\nfig uring</w>\nku l</w>\nmis sy</w>\nhoo p\ngra s\nfor ums</w>\nback lash</w>\nabduc ted</w>\np nw</w>\nmin ic\nbu tt</w>\nbott oms</w>\nat on\nven g</w>\nðŁĮ ı</w>\ndel aney</w>\nprab hu</w>\nfan club</w>\nover haul</w>\nhealth ye\nsy no\naa f</w>\nren amed</w>\nkim i</w>\nun cle\nman city</w>\nse u</w>\nqu anti\neste em</w>\num in</w>\nen zo</w>\nmel vin</w>\nunder go</w>\nj har\nfar ah</w>\ncoast ers</w>\nhumph rey</w>\nmh z</w>\nchildren s\n^ .\nd hi\ndisrup tive</w>\nintegr ating</w>\nr nb</w>\nover sized</w>\na ide\nne au</w>\ndocu mentation</w>\nðŁĳĢ ðŁĳĢ</w>\npal o</w>\nhear th\nri yad\npun ctu\nabc news</w>\nsecu res</w>\nboy band</w>\nbir ch\nju co</w>\ntra ff\nlegislat ors</w>\nbay a</w>\nãĤ ¯\nno ises</w>\ncollec ts</w>\ns warm</w>\nk ner</w>\nbi shops</w>\nstur geon</w>\nsnapp ing</w>\nmo l</w>\nfre aky</w>\nchair person</w>\ntro p</w>\nlyn ch\ncar cin\nart sy</w>\ne sto\ncha i\nfl ur\ninv ali\nsau sages</w>\nim el\nj or</w>\nfun fact</w>\nwit ter</w>\npuni shed</w>\nac ons</w>\nh ya</w>\nre versi\nem c</w>\ndif fu\nz x</w>\nsp aw\ncla d</w>\nd mit\nhol land\nfre sco</w>\npay roll</w>\nab undant</w>\nstu ffing</w>\nmor o</w>\nc ny</w>\nboy cott\nwend y\nele ven\npro voc\npil ot\ntr x</w>\nbe ad\nclimate action</w>\nri on\nassi e</w>\nì ĸ\no sm\nislam ic\nho ar\ngood reads</w>\nal ici\nafterno ons</w>\nspoke sman</w>\njo lie</w>\nit as\nmasc ara</w>\nâĻ© âĻ«</w>\npre vail</w>\nbeetro ot</w>\nlu jah</w>\nk li\ndod ger</w>\nÂ »\nru le\nl n\nscre am\nho bart</w>\ncol bert</w>\nr tc</w>\ner m</w>\npat ro\nquo ting</w>\ns live</w>\nque st\nnon fiction</w>\nsemin ary</w>\nprosecu tors</w>\nve st\nexpress way</w>\ng ge</w>\nnau tical</w>\net f</w>\nðŁİīðŁİ Ĭ\ndur ation</w>\ncha ired</w>\nthe film</w>\nfab io</w>\nshe h\ncan o\nðŁĴª ðŁı»\nwith draw</w>\n! :)</w>\ncor pus</w>\nphen om\nyel p</w>\nla wn\nent om\nsnapp er</w>\nbut te</w>\npin ball</w>\npro xy</w>\nlibr e</w>\nalle vi\nn ada</w>\ngabri el\nfo wl</w>\neure ka</w>\ndaph ne</w>\ntu nes\npun ched</w>\nwh ore</w>\njo g</w>\nren tial</w>\nman ners</w>\no pe\nwh ufc</w>\ngu th\nrevol t</w>\nsne aker\nphilharmon ic</w>\nho ste\nsovereign ty</w>\nðŁĻıðŁĻı ðŁĻı</w>\nfish ing\nsci art</w>\nfe ta</w>\ni pp\ndump ing</w>\nkel own\ngir i</w>\ndig its</w>\nsal u\nsan jay\ntwee ters</w>\nsp as\ncol chester</w>\nsc ab\nma dd\nà¹ Ħà¸\nÄ ĩ</w>\nged don</w>\nmarch for\ndo p</w>\nmaure en</w>\nun plugged</w>\ndi do</w>\nfashion blogger</w>\nup a</w>\nmex ic\ntar y\npol ye\njame son</w>\nv t\ngrin der</w>\nmad dy</w>\nconsult ancy</w>\n¬ ë\nleagueof legends</w>\nac cents</w>\num ni</w>\njane iro</w>\ntu ss\nh ens</w>\nampli fier</w>\nto shi\npret tier</w>\npre vents</w>\nnew town</w>\nred wood</w>\nvant age</w>\nball ard</w>\nar tof\na she</w>\na sion</w>\nlac ey</w>\nap at\ngro ve\nà¸ Ħ</w>\nrw and\nreal tors</w>\ntra itor</w>\nbed ding</w>\nÃ¶ r\nzi on\nfla shing</w>\ncam pan\nboom er</w>\nsecretari at</w>\nab ol\nliti gation</w>\ncont amination</w>\nse dly</w>\nshred ded</w>\nin for\ndo herty</w>\nbench mark</w>\nro che</w>\nskate board</w>\nsho vel</w>\ni zz\nto pper</w>\no ster\nlaby rin\nautu m\nk ong\nhum mus</w>\nvi z</w>\ntech news</w>\nkla us</w>\nam using</w>\nsocialmedi amarketing</w>\ni des</w>\ncast ell\nste e\nunderestim ate</w>\ncal ab\npa ign</w>\nb illing</w>\nunanim ously</w>\ng mb</w>\nfly fishing</w>\nhath away</w>\ncommerci al\ncolour ing</w>\nskul ls</w>\npivo t</w>\nte p</w>\ntb c</w>\nmotor way</w>\nx press</w>\nconstruc tive</w>\npu k</w>\nunder lying</w>\nkir sten</w>\nmani ac</w>\ncha o</w>\nse ma</w>\nchiff on</w>\nðŁĳĮ ðŁı»\nver ona</w>\nkom o</w>\nstan doff</w>\nwi ped</w>\nc ated</w>\nbla ir\nwor kin\nm sc\nbethle hem</w>\nswi pe</w>\nunexpe c\npe es</w>\npe tri\norig ami</w>\nðŁĳ ħ\nmex ico\nflav or\nru dd</w>\ncannab is\nmar u</w>\nri ddle</w>\nwor shi\nsil on</w>\nsch at</w>\nap se</w>\ntang er\nbi ous</w>\ne er</w>\nquesti oned</w>\no zar\ndan k</w>\nangle sey</w>\nchar an</w>\nbak u</w>\ncompe ten\nre pri\nbat ter</w>\nsa xon</w>\ncal ves</w>\nleng ths</w>\n$ $$</w>\nâŀ ¡ï¸ı\nimmer sion</w>\nga unt\ncar ry\ncy to\nb anda</w>\nshu tt\nexperi ence\nel gin</w>\nmous se</w>\nta z</w>\nê µ\nin correct</w>\nen z</w>\nb ham\nmor on</w>\nso ver</w>\nar un</w>\nti pped</w>\nla ble</w>\nde arly</w>\nbau tista</w>\ní Ļ\nmor tal\nwoo p</w>\ndt la</w>\nsho cks</w>\ndav os</w>\nðŁĵ Ŀ\nswim wear</w>\nher man\nðŁĳĩ ðŁĳĩ</w>\nz ir\nneglec ted</w>\ngrac ed</w>\ncampu ses</w>\nav s</w>\nar ora</w>\nswach hb\nlive pd</w>\nac cra</w>\nenqui ries</w>\nshoo ters</w>\nkur t\nvancou ver\nbrad ley\ngar da</w>\ng Ã¼\nol la</w>\nattrac ting</w>\nup ton</w>\nne win\nlu mia</w>\nfurn ace</w>\nev ers</w>\ne on</w>\nsw a</w>\nroo kies</w>\na oc</w>\nv ss</w>\nbris ket</w>\ntor ch\nyo da</w>\nheart land</w>\ntac o\nph ony</w>\nfood bank</w>\nab bey\nbab ylon</w>\nu y\ngre ate\nexpre sses</w>\nd andy</w>\nsc apes</w>\nsurvi vor\nron d\ne ci\nha vin</w>\nab el\nchil dish</w>\ntor que</w>\nwav y</w>\nur self</w>\nkanye west</w>\nyear of\nale stine</w>\no brien</w>\nal fon\nsk ag\nkore an\nanchor age</w>\nval eri\nde w\nðŁİ ¨\nland slide</w>\ncar ole</w>\nchrist en\ngo phers</w>\naf i</w>\npriyan ka</w>\nq q\npower of\nit te</w>\npc so</w>\ntw ol\npr y\nintellec tu\nguer rero</w>\npi les</w>\nwish list</w>\nw ren</w>\ntime table</w>\në ı\nprodi gy</w>\ngibb ons</w>\n. /</w>\nne ur</w>\nanz ac</w>\nmur ray\nvie st</w>\npla ster</w>\nla ir</w>\nart gallery</w>\ninter continental</w>\ng br</w>\nbell ator</w>\nnam joon</w>\nmam mals</w>\nam el\ny aw\nsaras ota</w>\ncam ar\nbud ding</w>\nsum mari\naco sta</w>\nla sh\ney ou\npost graduate</w>\ninstruc tors</w>\nti g</w>\nconst ant\nwere wolf</w>\nic os</w>\ncla s\nglen n\nbud ge\nðŁĻ Ĥ\ner ta</w>\nsta ins</w>\npersecu tion</w>\ncumb ri\no ch</w>\nsyner gy</w>\nhu ang</w>\nscand in\nmid terms</w>\ncomment ator</w>\nregar ded</w>\nperpe tual</w>\nbo iling</w>\nal p\nlan ge</w>\nsch le\nfac eli\ntwee ta\nri dden</w>\nok toberfest</w>\ncharlotte sville</w>\nik lan\njo u</w>\nch atham</w>\nb sc</w>\nðŁį ¦</w>\nstra uss</w>\nmel low</w>\nxx xx\nhappy hour</w>\nre actor</w>\nww er\ndistr action</w>\nat orial</w>\nðŁĴª ðŁı¼\ntwin peaks</w>\nfay ette\na or\nko k\nbro om\nsy fy</w>\nou se\nam ag\nØ ·\nubis oft</w>\nlu lu\nhall mark</w>\nstu art\nit ya</w>\nsi deline</w>\nvenge ance</w>\nre lu\nsex ism</w>\nboun cing</w>\nun ites</w>\ngu stav\nte ssa</w>\nstu mp</w>\npro clamation</w>\nima x</w>\ndivid end</w>\ncol by</w>\nðŁį İ</w>\nplay wright</w>\nun safe</w>\nco smo</w>\nðŁĩ²ðŁĩ ½</w>\ncup board</w>\nconstitu ents</w>\nang lia</w>\nram page</w>\nðŁĺįðŁĺį ðŁĺįðŁĺįðŁĺį</w>\nthan ked</w>\ntake aways</w>\nshro ff</w>\nde bat\nkh ur\nconduc ts</w>\nformat s</w>\nà ©\nport age</w>\ngraph ers</w>\nu ten\npre m\nmo ines</w>\ncondem ns</w>\ns ous</w>\nl ps</w>\nf cs</w>\ndeal ership</w>\nleuke mia</w>\nbure au\nski d</w>\nguardi ola</w>\nca ster\nthir d\navoi ded</w>\nen cyclo\nc sr\nvi xx</w>\nanaly zing</w>\nshe ar</w>\ndulu th</w>\nshap iro</w>\nchan ting</w>\nstre sses</w>\nas be\nmil itia</w>\nãĥ ª\ncol lin</w>\narsen e</w>\nsure sh\nteach ings</w>\nyi xing</w>\nsh ill\nnu des</w>\nsv u</w>\nclear water</w>\nwar ped</w>\npro life</w>\nartist son\nit u</w>\nversail les</w>\ngalax y\nax el</w>\nspring st</w>\ncal a</w>\nhu hu</w>\nsc u</w>\ncommit ments</w>\nexe ter\npoign ant</w>\nmo tion\nconserv atory</w>\nrow dy</w>\nrec alled</w>\nmu sk\nemb elli\nso the\nâĺ Ģ\nsto pper</w>\nsch ild</w>\nto pe\nel mo</w>\nzi el</w>\nj om\nbarn sley</w>\nsnow den</w>\non tour</w>\njour ney\nhills borough</w>\npar ole</w>\nw ts</w>\nmo ving\nag ility</w>\ntiv o</w>\nff ers</w>\nkindle unlimited</w>\ng wen\nann an</w>\nah mad\ntex tured</w>\nhepat itis</w>\ndra m</w>\ninsi ders</w>\ntis sues</w>\nãĥ Ħ</w>\nfc barcelona</w>\ncr atic</w>\nna acp</w>\npe can</w>\nf gm</w>\ncustom ize</w>\nconcer t\ng sm</w>\npe g\np one</w>\njustin trudeau</w>\nsuper cars</w>\nhappy holidays</w>\nbu lar</w>\nado x</w>\nlap tops</w>\ndigital health</w>\ndestin ation\ngradu ally</w>\náĥ ¦</w>\npopp y\nss l</w>\ninhi bit\nstar light</w>\nof fro\nglo omy</w>\nx per\nhal der</w>\nim plants</w>\nle to</w>\nhass el\na as</w>\nun told</w>\nen ci\nliber ia</w>\nor an\ncon tests</w>\nil ah</w>\nsma g</w>\nsc out\nmari anne</w>\ncr yo\nschedu ling</w>\nlo s\nkan e\nstutt gart</w>\nne se</w>\nlaw rence\nda in\npho tom\ncar ou\nà¸ £\ng wy\nnational dogday</w>\nroa sting</w>\nband camp</w>\nkentu cky\nstret ches</w>\nke rel</w>\nca she\nãĤ ¸\nsta x</w>\ntran si\ndog gie</w>\nat ric\nhal le</w>\nci vic\nbrow ning</w>\nlein ster</w>\ncat day</w>\nhigh land\njoy ous</w>\nin cumb\nor lando\nro mo</w>\ncol ton</w>\ndel ta\ncar ab\nro tc</w>\naster oid</w>\ngoose bumps</w>\nmo logy</w>\nyo ko</w>\nan ds</w>\ntomor rows</w>\nred carpet</w>\nsm p</w>\nca sio</w>\nðŁ¤£ðŁ¤£ ðŁ¤£</w>\nse au</w>\nrejec tion</w>\nrot ating</w>\nbi partisan</w>\nth un\nmat i</w>\nbon i\nol l\nener gye\ndo it\nl j</w>\nmother hood</w>\nlou ise\nneck laces</w>\nel ite\nni x</w>\nl cs</w>\nen v\ngl u</w>\nle sh</w>\ncran k</w>\nsu sie</w>\nm clau\nso tu</w>\ncrow ley</w>\nrat ri</w>\nuse d\nbre ton</w>\nalfre do</w>\nye o\ntravel pics</w>\nti pp\nelli son</w>\nsax ophone</w>\nme red</w>\nheu ghan</w>\nta ine</w>\nf es</w>\nvi ro\nsuppo sedly</w>\ni as\ndige stive</w>\ny le\nli zzy</w>\nwildlife photography</w>\nbri anna</w>\nwest field</w>\nra ined</w>\nam her\nðŁĺĦ ðŁĺĦ</w>\ndistribu te</w>\nbott om\npre serving</w>\noil and\ncraf ty</w>\nde scen\ncol ling\nshakespeare sunday</w>\nr wc</w>\nang led</w>\nci an</w>\nt ations</w>\nmon tage</w>\nme yers</w>\nfrance sca</w>\nðŁĮ ·\nwi ggins</w>\nsan ford</w>\nvolunte er\ncar ra\nbar k\nvari ed</w>\npl in</w>\nam u</w>\nkap il\nrock ers</w>\nqu ind\nbr ane</w>\nin mate</w>\nent al\nimpro vis\nmichi gan\nre tweeting</w>\nprogre ssing</w>\nmercedes benz</w>\nsmo ker</w>\nphysi ology</w>\ndor ado</w>\nwatt pad</w>\nh wa</w>\nsr bachchan</w>\nw ga</w>\nvol atility</w>\nhi re\nac ap\nwn ba</w>\nhein z</w>\nstit ches</w>\nkidnapp ing</w>\nbur ys</w>\nlim b</w>\nf itters</w>\nthumb nail</w>\nton e\nmir and\ndesi rable</w>\nad dison</w>\ntar an\ntamil nadu</w>\nspec tator</w>\nsoci ology</w>\namit shah</w>\nremo tely</w>\nâĻ ¦\nham id</w>\nr ds</w>\ng lee\nsmooth ly</w>\nsch ro\ner c</w>\nlali ga</w>\nhe als</w>\nus f\nni shi\nd hu\nun il\nh le</w>\ntro mb\nbhu tan</w>\npilip inas</w>\nse ung\nwhit man</w>\nte y</w>\nmin ce</w>\nsnow boarding</w>\nre au</w>\nk ker</w>\nav o</w>\nzach ary</w>\nran veer\nti k</w>\ngover n</w>\nqu al</w>\nbeck y\nanthropo logy</w>\natt en</w>\ngrocer ies</w>\nde bit</w>\nwar p</w>\nsil icon\nhawa ii\nðŁĴ ħ</w>\npomegran ate</w>\npe er\norang es</w>\npeople schoice</w>\nend ure</w>\nðŁĴĽ ðŁĴĽ\nãĤ¹ ãĥ\nac ial</w>\na haha</w>\nstu k</w>\nimper ial\nbl ond</w>\npow der\nkno ts</w>\nvin ce\nwood lands</w>\nden a</w>\nwatch in</w>\nmat cha</w>\nma hat\ngalax ies</w>\nmiddles brough</w>\nk Ã¶\nstre e</w>\nresc ues</w>\nwal do</w>\nlero y</w>\ndesp ic\nreal ities</w>\ntm nt</w>\nha q</w>\nun o\npe c\nbolly wood\nblin ds</w>\ndesign thinking</w>\nhe ms\nand hra</w>\nab sen\nfan s\nste ch</w>\nshire hour</w>\nbla ine</w>\nshak ti</w>\npu rely</w>\nðŁı ı</w>\ntra fal\nke ynes</w>\ngr ate\nto bias</w>\nspon taneous</w>\nsatur ated</w>\ncaval ry</w>\npri sc\nðŁĺ ĳ\nwh t</w>\npas si\n~~ ~</w>\nvir at</w>\npatt inson</w>\nla o\nweir do</w>\nsym pathy</w>\nju da\nocca sionally</w>\ncred ited</w>\nstat u\nes co\nhil ly</w>\nesc ape\ndischar ge</w>\nse er</w>\nmay nard</w>\nsud bury</w>\nz lat\nor al\nwe er</w>\nencoun tered</w>\nsm elling</w>\nover sight</w>\nê ¸\nthat cher</w>\nmack ay</w>\nyou can\nfre ep\nfreed oms</w>\nprophe cy</w>\nho e\nishq ba\ndra ke\nqu its</w>\npel led</w>\ntur k</w>\no vi\nwesle yan</w>\nnew music\nleg g</w>\nch eng\nh illi\nay y</w>\npan ties</w>\nad versity</w>\nad jac\nvaccin ation</w>\nju ke\nga c</w>\nexce ed</w>\ntime sof\nsta ining</w>\nep cot</w>\nv ital\nup ward</w>\nbethe sda</w>\napar k</w>\nma hi\ncamp fire</w>\nenchan ting</w>\nrha pso\nh z</w>\nna ver</w>\nfa x\nvali dation</w>\nac ad</w>\nny r</w>\nas ym\ncoordin ated</w>\ndepar ted</w>\nall ery</w>\nvar ies</w>\nspr ite</w>\nchap lin</w>\nss occer</w>\ns wat\nbre t</w>\nrelu ct\ntunes app</w>\nsuper star\nreminis cing</w>\no co</w>\nhome grown</w>\ndough nut</w>\nun canny</w>\nla pd</w>\nthyro id</w>\n! âĿ¤ï¸ı</w>\nbotan ic</w>\nbre s</w>\nsp ade</w>\ni ste</w>\necho es</w>\ndu lil\nbur sting</w>\nqui ero</w>\nðŁĳ İ</w>\nloy ola</w>\namuse ment</w>\nha ils</w>\nsleep y\nburgl ary</w>\nâľ ı\nro gue\ncot land</w>\nmo ors</w>\nlow er\nwic ked\nðŁĶ Ĭ\ncompet iti\nargent ine</w>\nyvon ne</w>\nkarti keyan</w>\nili ary</w>\ngat sby</w>\nprecin ct</w>\nsix ty</w>\nna ji\ncam s</w>\npractiti oner</w>\nðŁĺ³ ðŁĺ³\npu ne\nneg li\njuli en</w>\ninv aded</w>\ncali br\ncla m</w>\nduba i\nmu k</w>\nlan tic\nproduc t\nfe dex</w>\nï¸ı :</w>\neu ra\ndari us</w>\ns ling</w>\nvirtual reality</w>\nhome stead</w>\nðŁı³ï¸ıâĢį ðŁĮĪ</w>\npac ed</w>\nin ha</w>\npul mon\nla zy\npremi ering</w>\nma stered</w>\nin he\ncon gregation</w>\nba jo</w>\nsport ing\nnew jersey</w>\nhor ny</w>\nlma oo</w>\nleng thy</w>\ndu t\nyo gh\nswe aring</w>\nphilosoph ical</w>\npap ua</w>\nin ski</w>\nknow les</w>\ndy ke</w>\nâĢ ²</w>\nto ken\nmc guire</w>\nri ot\nprobab ility</w>\nmc con\ngro s</w>\nsu mat\nc ite</w>\nda a</w>\non da</w>\nmad dow</w>\nche w\nboard games</w>\nspar ked</w>\nre claimed</w>\nad hd</w>\nny se</w>\nimwith her</w>\nequ inox</w>\nboo ths</w>\nbalsam ic</w>\nha zy</w>\ndor chester</w>\nag os</w>\nse aw\nmoder ator</w>\nseri ea</w>\nander sen</w>\npilgri m</w>\nâŃĲ âŃĲ\nitch en</w>\nhal li\nx ton\nnathan iel</w>\nmun ition</w>\ncelesti al</w>\nga f</w>\nzo om\nmark le</w>\npen thouse</w>\ncal e</w>\ns fa</w>\nbar king</w>\ntu cket</w>\nem ery</w>\ncal orie</w>\nli que\nad ar</w>\nmc nam\ntor tilla</w>\nwood pecker</w>\nmo town</w>\nbad ger\nayr shire</w>\nscram ble</w>\ndd ay\ncra ziest</w>\nper rie</w>\ncho co</w>\ncast e</w>\ni ot\nwre cked</w>\nselec ting</w>\nuss r</w>\ngra ft</w>\npun t</w>\nlab ou\nir st</w>\nba ek</w>\nÛ Į</w>\nsu ki</w>\nque u\nach at</w>\nte ster</w>\naug mented</w>\nwc vb</w>\nsin ks</w>\nðŁĵ »\nra ke</w>\ninter ne\nbe cause\nbelle vue</w>\nune arth\nlight en</w>\nðŁĺ £</w>\nturn around</w>\nlabe led</w>\nunemp loyed</w>\ntwitter kurds</w>\nle ia</w>\nh ye\ngreat er\nðŁĲ İ</w>\ntim ed</w>\ni red\ne tt\nlimit ations</w>\ncab e</w>\ns out</w>\nbee ch\nanni hil\nre trac\nyo ona</w>\nang er\nden nis\nsupp lying</w>\ndi z</w>\n\" (</w>\nsc ur\ngun man</w>\nsu ho</w>\nsauvi gnon</w>\nà¸ ¥</w>\nwi ley</w>\nland on</w>\nchoreo graphy</w>\npre historic</w>\nðŁı ĥ</w>\nvar gas</w>\nassess ments</w>\npinn acle</w>\ndi i</w>\nchamber lain</w>\nì Ī\nv p\npresent ers</w>\ndeut sche</w>\nsun shine\nsal utes</w>\nr one</w>\nbu siest</w>\n- .-</w>\nmotor ists</w>\nhemi sphere</w>\nal wx</w>\nps p</w>\now a</w>\nden ying</w>\ncho c\ngu tier\nhan uk\nmus kete\njait ley</w>\nse wage</w>\nt ame</w>\nthin kers</w>\nshi m</w>\nse quo\npap ar\nmiddle east</w>\nk wa\nke g</w>\npatag onia</w>\nno y</w>\nbar Ã§a</w>\ntake off</w>\nhe a</w>\nà ¬\nn sc\ng dc</w>\nðŁĳ Ī\nmou stache</w>\nmel ania</w>\nthr a</w>\nâ¬Ĩ ï¸ı</w>\npier ced</w>\nze us</w>\nfon ts</w>\nber a</w>\nit iner\nq atar\ncontr ary</w>\nire land\ni fy</w>\nou los</w>\ncommun al</w>\nfin s</w>\nun paid</w>\npa a</w>\nðŁĳĩ ðŁı»</w>\nri os</w>\nou p</w>\nf iller</w>\ncafe teria</w>\nà¸ Ń</w>\nkas i</w>\ncali ber</w>\nz ulu</w>\nv sco</w>\nts ford</w>\ndragon fly</w>\nsmo kin</w>\npi st</w>\npsycho logist</w>\ndiplom at</w>\nwe bs</w>\nbuc cane\nà® ¾</w>\nmotiv ational\ndu ne\nba e\nc fs</w>\nwith out\ner on</w>\ni ac\nate e</w>\npen sion\nfra zier</w>\nen sis</w>\nsk is</w>\npar ting</w>\nger y</w>\nterrit ories</w>\nnach os</w>\neni ght\never lasting</w>\nmsd honi</w>\ntel e</w>\nsp un</w>\npo di\nsab ah</w>\nenviron mentally</w>\nce ase\nbeau mont</w>\nmar ta</w>\nkel vin</w>\nho ff\nsun il</w>\nn da</w>\nco b</w>\nsh ale</w>\nree dus</w>\nun boxing</w>\nu bio</w>\nre opened</w>\nn all</w>\ncapsu les</w>\nmar r</w>\nhimalay as</w>\nswee ter</w>\nja z</w>\nf mr</w>\ntwee ter</w>\ndha ka</w>\nna u</w>\nde mi\nd fs</w>\nta urus</w>\nfad ing</w>\nit utes</w>\nci p\nover flow</w>\njef frey\ndon ny</w>\ncar tunesapp</w>\nðŁį ĳ</w>\nprefe cture</w>\ndanc ed</w>\nc pt</w>\nple asing</w>\nital k</w>\nearth quakes</w>\nul ation</w>\nhi o</w>\nãĢ ĭ</w>\nant an\nnutri ent</w>\nde ere</w>\nselec ts</w>\nenrich ment</w>\nr iti\ntram pol\nbl amed</w>\nj ia</w>\ncontribu tors</w>\nchesa peake</w>\npi geons</w>\ntribun al</w>\nmad uro</w>\nw su</w>\nilo ve</w>\neffici ently</w>\ndar cy</w>\nwar ms</w>\nar ra\nec u</w>\nho wer</w>\nstrugg led</w>\nrajini kanth</w>\nðŁĺ¢ ðŁĺ¢\nhou sing\nstr at</w>\neli x\ndisp ro\nraf fic</w>\nthi erry</w>\nna sty\nc fb</w>\nstaf fing</w>\nal ma\nback ers</w>\nhen son</w>\nsky walker</w>\nreale state\nroo s</w>\nness y</w>\nchan ce\ncair ns</w>\nc ci\npe dal\nly ft</w>\ncross word</w>\nwait er</w>\nonly in\nkru ger</w>\nk ir</w>\nalej andro</w>\ncar tier</w>\ncar rera</w>\nre paired</w>\nou at</w>\nun clear</w>\nun breakable</w>\ntoday in\nqu eries</w>\njo dy</w>\ngen ital</w>\nwin ner\nto l</w>\nkelown a</w>\nfascin ated</w>\nãĥ ¬\nsris ri</w>\nsqu ared</w>\nspr ung</w>\nnegoti ate</w>\npriv ately</w>\nav en</w>\n>> >>></w>\ng ical</w>\ngav in\nchester field</w>\nzu mba</w>\nor r</w>\nnat alia</w>\nimpeach ment</w>\nmn l</w>\ncar at</w>\ncriti que</w>\ncredi ble</w>\ntrac y\ntan i</w>\nmusi k</w>\njig saw</w>\ngam bia</w>\ntol kien</w>\nfe u</w>\nas per\nsav ory</w>\nfo xx</w>\nf itt\nmar lon</w>\nl rt</w>\nv ell</w>\np br</w>\nimprison ed</w>\ni om\nchu l</w>\nwind shield</w>\nkay e</w>\nba a</w>\nchor d</w>\ns art</w>\nal gon\nminister ial</w>\nnat geo\nla zio</w>\nnor ms</w>\nðŁĳį ðŁĳį\nlic king</w>\nfut bol</w>\nun sung</w>\ndalla scowboys</w>\nsh red</w>\ndistur b\ndev ine</w>\nbe ards</w>\nch f</w>\nb day\nro sso</w>\nig or</w>\nay i</w>\nsi ren</w>\nk air\nsti les</w>\nro f\nmag nets</w>\nun cover</w>\nmou se\nbang ing</w>\nsi ghted</w>\nspe ople</w>\nimpac t\nrow land</w>\nkir a</w>\nenviron ment\nlove the\np sis</w>\nmish ra</w>\ngl endale</w>\nca jun</w>\no che</w>\nde ception</w>\nsex ist</w>\nstra ws</w>\ns ga</w>\nbuff er</w>\napost le</w>\nsp l</w>\npop up</w>\nðŁļ Ĺ\nr g\nup er</w>\nball in</w>\ni dy\nocca sional</w>\nnational park</w>\nðŁı Ĭ\nu an</w>\ninnov ation\nà¸ «\nte aparty</w>\nre tte</w>\ncounter fe\nb ha</w>\nrec s</w>\nig en</w>\nðŁĮ Ĳ</w>\nhumming bird</w>\ncu r</w>\nha ven\nla zar\npue blo</w>\n: :\nzi onist</w>\nop ath\ninver ness</w>\npromo ter</w>\ncarto on\ncabine ts</w>\nmahog any</w>\nsurve ying</w>\nr ational</w>\nfeel ing\ntesti fy</w>\nso w</w>\noc on</w>\nà¸ ¢</w>\nne el\nmar is</w>\nsol itary</w>\nche mo\nrad cliffe</w>\nsim ons</w>\nros ary</w>\nnew er</w>\njo die</w>\nre tali\npra wn</w>\npad dy\nhen ge</w>\nk ala</w>\nim plant</w>\nat y</w>\nbren twood</w>\npar adox</w>\nene z</w>\nre designed</w>\np our\nwy d</w>\nal de\nà¯ ģ</w>\nsol d\nbiomed ical</w>\nà¹ Ĥ\ntt tt</w>\nmat teo</w>\nys er</w>\nnew ton\nde bun\nner dy</w>\nloo l</w>\nwo on</w>\nelisa beth</w>\nec c</w>\nwh i</w>\nach o</w>\nsalv age</w>\nsal aries</w>\nqu ity</w>\nnavig ating</w>\noph thal\ncon soles</w>\nre built</w>\no pec</w>\nast ers</w>\nsho red\nset list</w>\nkathr yn\nrhy mes</w>\nre visiting</w>\nash ish</w>\nli ft\nre post\nsole il</w>\nâı ±</w>\nweal th\nsa at\nwe c</w>\nking james</w>\nflipk art</w>\nfield work</w>\nse gu\nmo dal</w>\nbu b</w>\nare rs</w>\nðŁį Ĵ</w>\nclo oney</w>\npad dington</w>\nnecess ity</w>\nguth rie</w>\npen te\nli mo</w>\njo sie</w>\nar tin\nen c</w>\nl hs</w>\nbetra yal</w>\ninfo graphics</w>\ni er\nmo a</w>\nhear ings</w>\nbon jour</w>\nsym bolic</w>\nag ro\nwed ges</w>\nkrist ina</w>\nwild flower</w>\nathle tic\nphotograph y\npe sh\nca hill</w>\nchi lean</w>\ngou l\nfi oren\nðŁĳ ¶</w>\nz il</w>\nsk im\nbad oo</w>\ndeli a</w>\ntre ble</w>\nn cc\nðŁĩ¦ ðŁĩ\na house</w>\nbul lock</w>\nsol itude</w>\nØ§Ù Ĩ</w>\ncan cers</w>\nfutureof work</w>\nhu tch</w>\nwater shed</w>\nwar mongers</w>\nsp illed</w>\ncolom bo</w>\nmo th\nassoci ations</w>\nweigh ed</w>\nglobal goals</w>\nnot just\nchrist i</w>\ntor g</w>\nswe ating</w>\nman eu\nclu sters</w>\nâĢ¼ï¸ı âĢ¼ï¸ı</w>\nta ped</w>\nul y\ntru sting</w>\nyu suf</w>\nte in</w>\nra b</w>\n, ,,,</w>\nsin ai</w>\naudi ble</w>\nexplic it</w>\ncro wns</w>\nsch iz\nat least</w>\nðŁĹ £\nde bra</w>\nje suit</w>\nene gger</w>\nz hen</w>\none sie</w>\ni it</w>\nss f</w>\ngur gaon</w>\nchak ra</w>\nbear cats</w>\nk ran\nk awa</w>\nreque sting</w>\nhan over</w>\ng end\nsor os</w>\nmer cy\nlovel y\ndo omed</w>\ntim my</w>\nku z\nul l\nab ram\nsa ison</w>\nãĥ «\nclean ers</w>\nre mo</w>\ncircu its</w>\nbar red</w>\no th\nmo ist</w>\nmadele ine</w>\ngall o</w>\nu j\nper mits</w>\nhea viest</w>\ncar ols</w>\naz te\ngior gio</w>\nflo ats</w>\ndecl aring</w>\nus rc</w>\nmin at</w>\ncraf ts\npri ma</w>\nconven i\nnickelo deon</w>\ndanc ing\nceremon ial</w>\nblo gg\ntw p</w>\nanglic an</w>\nshe k</w>\nk nick\n( ((</w>\nhubb ard</w>\nharve y\nhit man</w>\nfen g</w>\nwe some</w>\nfor za\ns word\nop us</w>\nbro m</w>\ngi bility</w>\nz al</w>\nm unch</w>\ndance hall</w>\ngre edy</w>\nhd mi</w>\nre birth</w>\nðŁĺĭ ðŁĺĭ</w>\ns world</w>\nfigur ine</w>\ncom post</w>\nk f\nengra ving</w>\ngior no</w>\nst ana</w>\nk man</w>\nham ster</w>\ncompos ers</w>\naj e</w>\nfunc tionality</w>\npol k</w>\nis ons</w>\nair planes</w>\nte se</w>\nhor rors</w>\nmusc at</w>\ngi ven\nsp ence</w>\nðŁĩ¸ ðŁĩ\neli ot</w>\nach illes</w>\nfre ck\ncrypto currencies</w>\nsou ther\nhal o\nbor neo</w>\npolit ic\nhahahaha h</w>\nup state</w>\nsi ena</w>\nobsc ure</w>\nhau sen</w>\nlloy d\nhappy friday</w>\nmotor bike</w>\nbon a</w>\nameric as\nhol s</w>\n- (</w>\nspor ty</w>\nun aware</w>\nreven ues</w>\nchristop her\nbank sy</w>\nav an</w>\nev apor\ncom press\neyel iner</w>\nto dos</w>\nbuff y</w>\nrenewable energy</w>\nly rical</w>\nar chan\nrapi st</w>\nfair trade</w>\nlma ooo</w>\nbeat z</w>\npro active</w>\nla pse</w>\nir ical</w>\nrevers al</w>\npo de\nmcin tyre</w>\nmac au</w>\nãĥ ķãĤ\nnash grier</w>\nf sa</w>\ng all</w>\nçĶ Ł\nperpe tr\nil ya</w>\nconfigur ation</w>\n% ;</w>\nstr ange\nrac i\nà¸ ĩ</w>\npic kups</w>\nkov sky</w>\nmam mal</w>\nw ps</w>\ng able</w>\ncompar ative</w>\nz h\nsave our\nda vey</w>\non etsy</w>\nmu ssels</w>\nmis er\ncri stina</w>\nelectr on</w>\ncra ve</w>\nlo ren</w>\nprecipit ation</w>\nm z</w>\nðŁį «</w>\nvin cen\nsnow board</w>\nno ida</w>\nah n</w>\nmarin ated</w>\ng tr</w>\ntown hall</w>\nmin is\nbethe l</w>\nadv an\nsu ra\nshi el\nfur ry\nðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ</w>\nlyn d\nso il\nsc ence</w>\nsen eca</w>\nshar jah</w>\ndick ens</w>\ncredenti als</w>\nav ar\nper k</w>\nrequ iring</w>\npre fer\nj ian</w>\nde ca</w>\nr ach</w>\ning for\ndel e</w>\nbe ep</w>\nðŁĴ »\ncis ely</w>\nhu ddle</w>\ngreen sboro</w>\nhaw king</w>\nho ax</w>\nhang ar</w>\nç ľ\nmis o</w>\nlo vin\ngre ta</w>\nab ad\nlogi e</w>\nat an</w>\nsnow flake</w>\nmahe sh\nfear the\nal kal\nbobb lehead</w>\nba hn</w>\nju dged</w>\nfu tu\nfeli x\nðŁį ĵ</w>\npi ke\nder iv\nnotic es</w>\nau er</w>\ndis super</w>\nor da\nwi pes</w>\nam ino</w>\nstri kers</w>\nfoo tb\ndram as</w>\npun ching</w>\nscore less</w>\nheming way</w>\nbi h</w>\nbal lad</w>\nchat ter\nam mo</w>\nkle in\nfabric ation</w>\nkari m</w>\nz end\nhi sto\nvol ta</w>\nrock y\nmarke ter</w>\nxtre me</w>\nsequ encing</w>\nparadig m</w>\ncle ats</w>\nboom ing</w>\nâģł âģł</w>\nblock ade</w>\npromp ts</w>\nyogh urt</w>\npur pose\nnu r</w>\nregu late</w>\nnois y</w>\ning rid</w>\nbird watching</w>\nbar tender</w>\nÙ ĥ\nwor dof\ncha otic</w>\nshor ty</w>\nel dest</w>\nz app\nonceupon atime</w>\nfl yo\nrit os</w>\nmike quind\nðŁĲ ´</w>\nregi stering</w>\n. ]</w>\nad ol\ngg gg</w>\npur ge</w>\nkid lit</w>\nar bor\nval ves</w>\nsynago gue</w>\no th</w>\nunanim ous</w>\nveri fication</w>\ndar rell</w>\nãģ Ħ\nvander bilt</w>\ntape stry</w>\npro sper</w>\ndid dy</w>\ndra fting</w>\nde cep\nmarqu is</w>\nst int</w>\nmichael jackson</w>\npee led</w>\nmen us</w>\nbb b</w>\nsc are\nema il\nwri gley</w>\nit is\nf ell\nsome thin</w>\nbar ra</w>\ned gar\ndi pping</w>\npu ddle</w>\nsla de</w>\nlear ner</w>\njal en</w>\nðŁ§ Ĳ</w>\nthe daily\nmikequind azzi</w>\nju x\niq bal</w>\nmckin ney</w>\nra iser</w>\nef an\ndr one\ncat o</w>\npic ket</w>\ncro we</w>\nl att\nuk o</w>\ngiuse ppe</w>\nhin i</w>\nsynthe si\nponti fex</w>\nsong writing</w>\nto d</w>\nswit ches</w>\ndin ners</w>\nh q\ngabri elle</w>\npensac ola</w>\ncir cle\nexpo ses</w>\nev s</w>\nriyad h</w>\npro men\no ck\nsa j\ncit ation</w>\nbrew co</w>\njo si\nep aper</w>\ndri f\npoint less</w>\ntang led</w>\ncri pp\nline ups</w>\nfairi es</w>\ndaz e</w>\nmour n</w>\nbla dder</w>\nsal z\nbur undi</w>\nbook mark</w>\nthe people</w>\nsub sequ\nprinci pal\nsk er</w>\ncourt ney\na oki</w>\nrac ers</w>\nad m</w>\nmom a</w>\ncritical role\nhou n</w>\nshed ding</w>\nsa ka</w>\nace ous</w>\nmck ay</w>\nhus bands</w>\nÂ ½</w>\nme da</w>\naccu sations</w>\nro sel\nnc is</w>\nwitne ssing</w>\nor ama</w>\ngo ds\nhil ton\nel man</w>\nÃŃ n</w>\nmeg ap\ncra ven</w>\nannoun cer</w>\ncrit eri\nsheffiel dissuper</w>\nmilit ant</w>\nconsu l</w>\nhoo ded</w>\naby ss</w>\nb x</w>\nma dam\nlo cu\nmary am\nmanic ure</w>\ngrat is</w>\nac tresses</w>\nros ario</w>\nthis dayin\nking ly</w>\ngn ome</w>\ncel ine</w>\nr ous\nhe el\nlil ac</w>\nvish al</w>\nab h</w>\nthor ns</w>\ns ls</w>\nne al\nconstruc ting</w>\nbe ren\ns lang</w>\nma ins</w>\nfar ra\nsar ko\npai ge\ngu iller\nl ala</w>\nice berg</w>\nnou n</w>\nplann ers</w>\nu mmm</w>\nou ses</w>\nill ary</w>\nma an</w>\nbox ing\nzi pper</w>\nsrin agar</w>\nmigu el\no str\nmp o</w>\nresponsi bly</w>\nlan terns</w>\nappli ance</w>\nx b</w>\ngren ade</w>\nneglec t</w>\ndy sle\nham mock</w>\nne ctar</w>\nwit cher</w>\nr gv</w>\ndi ence</w>\nser bian</w>\nseed ed</w>\ncru z\nbi sh\nsp he\ne q</w>\nsky rim</w>\nalge bra</w>\nphil ately</w>\nbungal ow</w>\nge off\ny ves</w>\ndemand ed</w>\nconsider ations</w>\nthe vamp\npawan kalyan</w>\nco ded</w>\ngrit ty</w>\nerup tion</w>\nse infeld</w>\nuni denti\nëĭ Ī\nwor m\nac us</w>\nse ung</w>\ndun g</w>\nro land\nsu d</w>\ndi visions</w>\nab lanc\nshor test</w>\nj f</w>\np oun\nplant based</w>\nbe to</w>\ntough er</w>\nmc o</w>\ndon et\nmark us</w>\nv fl</w>\nðŁı ł</w>\nopen ing\nco ward</w>\ncaber net</w>\no xi\nburle sque</w>\nsand ra\nsu mo</w>\nconsi st</w>\ntho t</w>\ncay man</w>\nmotor ola</w>\ngutier rez</w>\nd slr</w>\ny w\nno bel\nnov ice</w>\nmoms demand</w>\ngrun ge</w>\nsp or</w>\nd cc</w>\npre sses</w>\nsli st</w>\nallot ment</w>\nvoc ational</w>\nft c</w>\npu ja</w>\nlo ven\nutt arak\ntan dem</w>\nsh ep\ncome dians</w>\nanat om\ncant wait</w>\nhealthye ating</w>\nwest side</w>\nmar gins</w>\nchi ang</w>\nasbe stos</w>\nstupi dity</w>\nproble matic</w>\nfit bit</w>\n: $</w>\nceil ings</w>\nshu a</w>\nprotec tions</w>\nbio tic</w>\nbeng ali</w>\nre sts</w>\nbien nale</w>\ntim o</w>\ncul min\ne minent</w>\naffe ction\nunbeliev ably</w>\nindividu ally</w>\ncanvas sing</w>\nwh itt\nnov asco\nchin son</w>\nh pe</w>\ngo w</w>\ngloucester shire</w>\npa o</w>\nthresh old</w>\nchev ron</w>\ns ine</w>\nwe ther\npp ie</w>\naqu ino</w>\nantwer p</w>\nâĸ ¬\npo on\ninst af\nequ ine</w>\ncinemato graphy</w>\nnbaf inals</w>\nvali ant</w>\nkil kenny</w>\nte rence</w>\nsyste mic</w>\nsr l</w>\np ound\nmade ira</w>\npl ough\ntre cht</w>\nmat ed</w>\nmp d</w>\nransom ware</w>\nph in</w>\nli qui\nbb ce\nboom er\ni standwith\ncon ju\nr te\nnar a</w>\nfoo lish</w>\nda shing</w>\nvier nes</w>\nbr ite</w>\nda u</w>\njuni per</w>\nai da</w>\nyou now</w>\nra zer</w>\nde i\nrepe ating</w>\ncomfor ting</w>\nadjac ent</w>\ne to</w>\nca sted</w>\nchat ur\nmu er\nsyn th\nsan itary</w>\nmac le\nindepend ent\nlaw ful</w>\ne erie</w>\nh or</w>\nðŁĴ Ń</w>\nam rit\nvel o</w>\nstation ery</w>\nmu f\nmay may</w>\ncontempl ating</w>\nelabor ate</w>\ngre gor\ndri es</w>\nac col\nà¸ ļ\nschwarz enegger</w>\nill nesses</w>\nday break</w>\nfollow back</w>\ncollu sion</w>\nelectr onic\njo vi</w>\nhiro shima</w>\nta w\nhom ec\nmic ah</w>\nqu itting</w>\nfro sting</w>\nben fica</w>\nhel i\ns ical</w>\npic cad\ncorpor ate\nment orship</w>\nyou are\nsing er\nshi va\nru ne\ning er\nri um</w>\nplay able</w>\ndoo p</w>\nwil low\nter re\nni p\nat d</w>\nwar bler</w>\nprofession ally</w>\ner ase</w>\nproce ed</w>\npedestri ans</w>\nmis chief</w>\nben ding</w>\nalas kan</w>\nc kett</w>\nmo p</w>\ndd les</w>\nshut ter</w>\nge ared</w>\natene o</w>\nma deline</w>\ng ations</w>\no sha</w>\nder ick</w>\nsw ild\nan gry\npat ents</w>\nhun k</w>\ndecre ased</w>\nfr y\nðŁĴĸðŁĴĸ ðŁĴĸ</w>\nsal on\nquant ities</w>\nd ario</w>\nni gel\nku ma</w>\njen n\nhapp ye\nxx x\nrex perience</w>\npro s\nau sch\nrele ssly</w>\nham burger</w>\nfuku shima</w>\ner ne\nstat ec\nren d\nmay field</w>\nj one\nlef ty</w>\nbern stein</w>\nsm il\ngener ates</w>\nfore station</w>\nband its</w>\nta yo</w>\nr ca</w>\nac ci</w>\nrodri go</w>\nkn app</w>\nelo vers</w>\nvege tation</w>\nu ral</w>\nle ft\nħ ï¸ı</w>\nworl dre\nsur i</w>\nembar k</w>\nw son</w>\nba you</w>\nmu ller</w>\nmo vers</w>\nðŁķ º\npresby ter\nl f\ncre e\nbat b</w>\nsal am</w>\ndemonstr ations</w>\nan ec\nn pc</w>\nit ics</w>\nto graphy</w>\nre inst\nthur st</w>\ntal e\noff ences</w>\nsmart city</w>\nbro tha</w>\nofthe year</w>\nin valuable</w>\near n\nðŁĳı ðŁı½</w>\nkre mlin</w>\ngra dy</w>\ntown fc</w>\nguern sey</w>\nma ha</w>\ncontag ious</w>\ndre x\nbe en\n( Â£</w>\nnati vity</w>\nk tm</w>\nsomer halder</w>\ncomp ounds</w>\níķ ĺ\n\" âĢ¦</w>\naf g</w>\nott news</w>\nh ound\nfire fly</w>\ncil an\ndonet sk</w>\nvolunte ered</w>\nak ira</w>\nè ª\nsing ul\nst h</w>\ndro wned</w>\nmand o</w>\nhe ir</w>\nðŁİīðŁİ Ī</w>\ntax is</w>\ny uki</w>\nvel d</w>\nk ans</w>\nel k\nran ts</w>\nhash tag\nt eng\nro g</w>\na at\ngru b</w>\ne ber\nin india</w>\ncolo ssus</w>\nsig ni\nso ever</w>\nmile stones</w>\nder o</w>\ndifferen tial</w>\nphu ket</w>\nmaster mind</w>\nan gh\nmel ani\nbro ker\nactor vijay</w>\nstun ned</w>\ncontinu ity</w>\naf fl\nvo cal\nperenni al</w>\nfianc Ã©</w>\nin complete</w>\nhun ts</w>\nre issue</w>\ndomin ates</w>\ntur meric</w>\nro am</w>\nri on</w>\nbag ged</w>\nnas sau</w>\nfu t</w>\nx ox</w>\nnational trust</w>\njo ye\nsan o</w>\nhearth stone</w>\ndis respect</w>\nle es</w>\nh se</w>\nsiber ian</w>\noffe e</w>\nre stock</w>\nwolf gang</w>\nre gan</w>\nplan o</w>\nun wind</w>\nre par\nmil le</w>\n] ,</w>\nskul l\nfat ally</w>\nconcep tual</w>\nðŁĮ ²\nf Ã©\nber to</w>\nb ms</w>\nu a\nmag na</w>\nnotre dame</w>\nle te</w>\nla undering</w>\nheartw arming</w>\nbuffe tt</w>\ngo at\npe abo\nwind mill</w>\nv ac</w>\ncontinu ally</w>\naz alea</w>\nmem brane</w>\ncan cels</w>\nmake yourown\nathe red</w>\np to</w>\ntor pe\nðŁĺ ł</w>\nðŁĴ §</w>\nsc ares</w>\nle aking</w>\nz et\npix els</w>\nac i</w>\nkh il\nmarath i</w>\nðŁĻı ðŁı½\nu la\ntam u</w>\nchandi garh</w>\nz agre\naa b</w>\npronoun ced</w>\naubre y</w>\nsand er</w>\npun ta</w>\nhar low</w>\nic elan\ncelebr atory</w>\nso t</w>\nunci ation</w>\nstru ly\nmc dowell</w>\ndeepi ka</w>\nremin ders</w>\nmy stical</w>\nct c</w>\nchat ted</w>\ns ica</w>\nbar gains</w>\nch hat\nru bin</w>\nm net</w>\noiland gas</w>\npel ican</w>\no at</w>\nmor ality</w>\nk our\ni h</w>\nnu clear\ngc u</w>\nric her</w>\nvene zia</w>\nm ma\nle ith</w>\nac company</w>\nrich mond\nsports net</w>\nba ahu\nsmu ggling</w>\nmm i</w>\nðŁĩ®ðŁĩ ª</w>\ntwi sts</w>\nsahi b</w>\n.... .\namb itions</w>\nil lo\nhistor ical\nfo rec\nshow biz</w>\npon ies</w>\nchas ers</w>\nremo del\nwill ing\nprince sses</w>\nam ple</w>\ncushi ons</w>\nac les</w>\nlot r</w>\nda ch\nan the\nin corporate</w>\nnew bury</w>\nki ri\nfried rich</w>\nab v</w>\nball ers</w>\nalber t\nðŁĳ Ń\nlet i</w>\nnan op\nci de</w>\nanal o\nn sf</w>\n)) ))</w>\ngriffi ths</w>\nvalen ci\nro ano\nfun run</w>\nbabys itting</w>\nca day</w>\nent re\nu ck</w>\nslu g</w>\ntic al\nthe sims</w>\nro ar\ncar ney</w>\ng am</w>\nsto we</w>\nfi d\nbun ny\nsham rock</w>\npe cu\nmol ina</w>\ngo cougs</w>\ncon tributes</w>\ntransform ation\nmo y</w>\nv aj\nsever y\nantioxid ants</w>\nthir teen</w>\nsight seeing</w>\nl j\nreversi ble</w>\nodd ly</w>\nhoo kah</w>\nnou vel\nhal al</w>\nfe i</w>\nstab les</w>\nmul t\nho pped</w>\nbra ids</w>\ninter change</w>\nghana ian</w>\nww ww\neth no\ncon junction</w>\nago v</w>\nye ti</w>\nearth and\nts p</w>\ncon serve</w>\nheir loom</w>\nmetaph or</w>\nwoo f\ntor io</w>\nself less</w>\nn wa</w>\nem ilia</w>\nyl ene</w>\ny xe</w>\ngi ar\nmoder ating</w>\npro bz</w>\nb fi</w>\nne er\ndu mmy</w>\nhanuk kah</w>\nwe bber</w>\nk v</w>\neye brow</w>\ndag ger</w>\nsu mp\nra ges</w>\nork ney</w>\ntb o</w>\nhal sey</w>\nassign ments</w>\ntr onic</w>\nscri b\nco on\nan war</w>\n# âĢİ</w>\njal ape\nflori da\nqu aid</w>\nhaw keyes</w>\nâĻ¡ âĻ¡</w>\nstreet car</w>\nro g\ndat lantic\ngran ola</w>\nun changed</w>\nexpect ation</w>\nÙ ĩ\nmar lin</w>\ngu mmy</w>\nðŁĻı ðŁı¾\nawareness month</w>\noil painting</w>\nmu th</w>\nper ch</w>\njun to</w>\nvilla gers</w>\nmor g\nche ated</w>\nweb comic</w>\nthe future</w>\nd ps</w>\nla kings</w>\nmen tioning</w>\nvo or\nident ities</w>\naccor d\nmc gu\nl pga</w>\nrum our</w>\nmassi vely</w>\nm pls</w>\nheal y</w>\nd ate\nsp oli</w>\nre visited</w>\non t\nal and\nscru tiny</w>\nlakel and</w>\nbl ending</w>\n< /</w>\nan kara</w>\njami edor\nmetab olic</w>\nf ences</w>\nann y\nå ħ\nsemic on\noo tt</w>\nspace ship</w>\nwack y</w>\nle ta</w>\nap ac</w>\nshe e</w>\nin herit\ndo res</w>\nðŁĩ¨ðŁĩ ¦\ngent e</w>\ntw ick\nri ms</w>\ngal ve\nde ville</w>\nking fisher</w>\nscorpi o</w>\now l\nal ar\nvari an</w>\nðŁĹ ĵ\nvene tian</w>\nstar dust</w>\nthen orth</w>\nq ing</w>\nhar rington</w>\nconsul ate</w>\nspectac le</w>\nho bbs</w>\ntur ks</w>\ngre er</w>\nmat ing</w>\nðŁİ Ģ\nðŁĮ Ģ</w>\ndirec ts</w>\ní ĭ\npompe o</w>\nvo iced</w>\nla os</w>\ntz u</w>\npro me\npri sm</w>\nmer c\nfortun ately</w>\nbc fc</w>\nmcdon nell</w>\nnot sorry</w>\nsmi led</w>\nt ba</w>\nfor war\nmid term</w>\ndar by</w>\nwe instein</w>\nup grading</w>\nwol ff</w>\nbron co</w>\ncab ello</w>\nðŁ¥ ĩ\nfi able</w>\nshar pe</w>\nbat tered</w>\nsat o</w>\nmyth ical</w>\ninstap ic</w>\npre pped</w>\neni um</w>\ne spo\ndi aper</w>\nexplan ations</w>\nwho pping</w>\nragn ar\npe el\nantibio tic</w>\nl acks</w>\nharri son\nli sm</w>\nau l</w>\nqu ail</w>\nmartin a</w>\nsent encing</w>\nsc ams</w>\ndi di</w>\ntr onics</w>\nãħł ãħł</w>\ngo ff</w>\nza in\nparam ore</w>\ncha ined</w>\nclin ton\nli ff</w>\ncott ages</w>\nem on</w>\nreve rend</w>\nconsu mer\nce an\nt any\nlum pur</w>\ne bay\nsto ol\nðŁĺ» ðŁĺ»\nta pro\nh ath</w>\nmodern art</w>\njust ine</w>\nprover b</w>\napp y</w>\ntra x</w>\nmani fest</w>\nam bu\nnai k</w>\npe pp\nr sd</w>\nmer chants</w>\nkitch ener</w>\nshi fted</w>\nli zz\nâĺħâĺħ âĺħâĺħ\nâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶ\nuto pia</w>\ntom o</w>\nou ted</w>\ncom ers</w>\nchiroprac tic</w>\nbook club</w>\ncin dy\npro hibition</w>\nse uss</w>\në¯ ¼\nthin kin</w>\nrr rr</w>\ngo fund\nt ack</w>\nom b</w>\ncatastro phic</w>\nling u\nguild ford</w>\nbo td</w>\nà¥ ĭ</w>\nplan ter</w>\n^ ^\nwin k\nkath mandu</w>\nsto ppers</w>\nsmooth ies</w>\nre efs</w>\nhin d\nbell amy</w>\nĦ ë\nwaste water</w>\nvo or</w>\nnat l</w>\n! ]</w>\nre el\ny ap</w>\nscoo by</w>\nwork space</w>\ncorin thians</w>\nbl un\nobli gation</w>\ng bbo</w>\ndy son</w>\ncra vings</w>\nell ington</w>\ndap l</w>\nwre xham</w>\nearthand clouds</w>\nuk runchat</w>\npositi oned</w>\nkal b</w>\nfour square</w>\njo ck</w>\nim pending</w>\neven ing\nath y\npro claimed</w>\nc ites</w>\nann apolis</w>\nsan i</w>\nmar th\nir l\naccom mo\nka a</w>\nfin a</w>\ny aa</w>\ndi sper\nec ar\nbha k\nwill y\nðŁĺĢ ðŁĺĢ</w>\nmcder mott</w>\nmo j\ngener ational</w>\nu said</w>\ntrain ing\nlon ely\nlo res</w>\nimpe cc\nâĢ Ĳ</w>\nbeav ers</w>\nma ki</w>\nhe b</w>\naap l</w>\nå ı\nwolver hampton</w>\nleader board</w>\nme u</w>\nc fa</w>\neaster n\nhu r</w>\ncivil war</w>\nou rage</w>\nhor ned</w>\nle high</w>\nawar ds\nevi dent</w>\ngi gab\nr ous</w>\nma del\nro byn</w>\nur gently</w>\nk ors</w>\nen as</w>\nheis man</w>\nbam bam</w>\nfab ian</w>\nf om\nevalu ating</w>\nassemb ly\nout sourcing</w>\nhun tsville</w>\nðŁĶ ª</w>\njusti fied</w>\ncashi er</w>\nsp aper\nbuc keye</w>\nanaly tical</w>\nillumin ati</w>\nau tho\no j</w>\nsha de\ngeel ong</w>\nwh ey</w>\nhe aton</w>\nterri bly</w>\nele k\nun charted</w>\nsd live</w>\nmoto cross</w>\nher mes</w>\ndar shan</w>\ndar lington</w>\ncash mere</w>\ngri pping</w>\ncilan tro</w>\npun ish</w>\n... :</w>\nðŁĴ Ħ</w>\ninst ance</w>\nder i\nlo bal</w>\nmuk her\nsp ar</w>\nthin ker</w>\nfre mont</w>\ncom piled</w>\ncolor ado\nvig ne</w>\nsm d</w>\nwhe ad</w>\nvilla ge\nle ek</w>\nformula e</w>\nta res</w>\npersist ence</w>\n?? ????</w>\nped ago\nhe z\nalzheim ers</w>\nvul ture</w>\noff ence</w>\nis great</w>\nsuff ra\nkick in</w>\nh mmmm</w>\nbroad way\nï¸ı @</w>\nart i</w>\nalli son\nendor ses</w>\nry u</w>\nlolli pop</w>\nsoy bean</w>\nkend all\ncer a</w>\ninv ade</w>\n( ðŁĵ·:</w>\nconver ter</w>\ncar pets</w>\nho bo\nfr it\npe ac\nes qu\nern an</w>\nou f</w>\nan il</w>\ndi ffer</w>\nch ing\nbre cht</w>\nsp g</w>\ndaven port</w>\nstra va</w>\nsever n</w>\nn gos</w>\nstor ians</w>\nfe te</w>\nparame dic</w>\nj hb</w>\nal amo</w>\nsne aking</w>\ngold coast</w>\nroof s</w>\nisi l</w>\ndepic ted</w>\nprojec tions</w>\nnu mb\no ss</w>\nep i</w>\nglu cose</w>\nzid ane</w>\ninfin iti</w>\níĺ Ħ</w>\nran som</w>\nton ics</w>\nfal k\ng ler</w>\nou tw\nre ss\nweek ly\nthe on</w>\nn ole</w>\nðŁĩªðŁĩ º</w>\nvol ley</w>\nsum mar\nneg ativity</w>\nsam son</w>\nye w</w>\naus votes</w>\nju l\nju dy\nf art</w>\npra yed</w>\npal ate</w>\nmulticul tural</w>\ndouble header</w>\ncycl ones</w>\npier re\nãģ ¨\nâĺ łï¸ı</w>\nrt w</w>\nconver ting</w>\nwir ral</w>\nl ari\nir relevant</w>\naustin mahone</w>\nan che</w>\nya an</w>\nsd f</w>\n$ .</w>\nexplo ding</w>\nulti mate\nprof ici\ngofund me</w>\ncell ence</w>\nep stein</w>\nbul lied</w>\nsep tic</w>\nà® ¤</w>\nlu mber</w>\ncu ff\nvsco cam</w>\npl or\nà¸ ¥\nse ok\nro to\nvenezu elan</w>\nsor ta</w>\nspir ited</w>\ndaniel padilla</w>\nteam sisd</w>\nradio active</w>\nicelan dic</w>\nðŁĴ ¤\nver e</w>\naccommo date</w>\nshi pp\not ter\nol ina</w>\ne go\nsu la\nsan antonio</w>\nde as</w>\nsimil arities</w>\nâļ ¾</w>\ny om\nbro ward</w>\nå °\ncan cun</w>\nveri fy</w>\non te</w>\ncandle light</w>\nìł ķ\ninf ants</w>\naz am</w>\nðŁĺ °</w>\nle ven</w>\nun stable</w>\nbloom ington</w>\nx ford</w>\ncon tour</w>\ny p</w>\ninnov ator</w>\nhistor ies</w>\npo y</w>\nlolo lol</w>\nex pires</w>\ncat alo\nbill boards</w>\nan ab\nel ic\nnovasco tia</w>\nfa ire\nìĿ ´</w>\nrock well</w>\ngr ille</w>\naz tec</w>\njoh or</w>\nur struly\nfi ren\ndun lop</w>\nid le</w>\nport man</w>\njo es</w>\ntx hsfb</w>\nhol m\ncham ele\nunder world</w>\nlo ss\nti em\ntherap ists</w>\npast ure</w>\npa ste\ning now</w>\nvul can</w>\nra gon</w>\nlar kin</w>\no shi</w>\nho co</w>\nchild hood\numb rel\nsuccess or</w>\nkath y\niz en</w>\n° ï¸ı</w>\nshare holders</w>\nol ga</w>\nai b</w>\nhe ap</w>\nfl aming</w>\nro u</w>\nair tel</w>\nrat t</w>\nz ane</w>\nvo w</w>\nthor ough</w>\nsn ag\npar th</w>\nun conscious</w>\nve y\nnew release</w>\ngh ee</w>\ncroati an</w>\nfacilit ating</w>\nswan son</w>\nastor ia</w>\nto logy</w>\nmaster y</w>\nðŁ¤ ĳ</w>\nbil bao</w>\ntrou pe</w>\nthe ori\nchey enne</w>\nro tt\nshore line</w>\ngra sso</w>\nmaster chef</w>\n+ )</w>\nvi x</w>\nellen show</w>\nas g</w>\nan ak\nku ya</w>\nsafar ilive</w>\ndebu ting</w>\nblu m</w>\nlist ener</w>\nv ins</w>\nbook shelf</w>\nsmart cities</w>\nmakeyourown lane</w>\n; ;\nðŁĲ ¯\nri zz\non ward</w>\nbull dog\nbear ish</w>\nvir uses</w>\nfri gh\nlin den</w>\nwe iser</w>\nsn t</w>\ngon a</w>\ndre sden</w>\nfl anders</w>\ncu k</w>\nwheel ing</w>\nba u</w>\natu esday</w>\nsurf ers</w>\nswi ft\nmc call</w>\narbitr ation</w>\naw d</w>\nmon c\nb ine</w>\nat x\nre fr\nmi ro\npo sey</w>\nn are\nrit ter</w>\nâģ ¦</w>\nplay book</w>\nblow out</w>\nsports manship</w>\ns oooooo</w>\nmalay alam</w>\ngri ms\nbur bank</w>\ninfin ity\nsar gent</w>\noit nb</w>\njoseph ine</w>\nski pping</w>\npar kin\nexcur sion</w>\nsemin ars</w>\njo har</w>\npar tridge</w>\npost game</w>\nll ll\nblan che</w>\ntemp ting</w>\nm na</w>\nlu ka</w>\nis ers</w>\nto ffee</w>\nbar ron</w>\nhe mmings</w>\nsa e</w>\ngo hawks</w>\ncu pid</w>\nli mbs</w>\ncon se\nun common</w>\nz ada</w>\nhead shot</w>\nso ils</w>\npione er\nmam ma</w>\nsem itic</w>\npan dey</w>\njamiedor nan</w>\nspl its</w>\nvel a</w>\nson i\nra ff\nt mobile</w>\nâŀ ĸ</w>\npra wns</w>\nlit er</w>\nenjo yment</w>\negg plant</w>\ntu b\ncultur al\nus ic\nsuspici on</w>\nsy cam\nsumm ed</w>\nma du\nho ck\nup wards</w>\neye ing</w>\nri ve</w>\nassas sins</w>\nâĤ ¬\nout fy</w>\nchi ves</w>\nt ner</w>\nla is</w>\npor ridge</w>\nsad dest</w>\nw cc</w>\nvick i</w>\nsna ils</w>\nbiz italk</w>\nmill an\nðŁĮ į\nsam oa</w>\nj ing\nmi key\ngu j\nchel ms\neli gibility</w>\narma da</w>\nthro p</w>\nsurger ies</w>\nãĤ ¿\nmo hawk</w>\nex its</w>\nme m</w>\nis lington</w>\nc me</w>\nland fill</w>\nkait lyn</w>\nðŁİ ¼\ncombin ations</w>\ntomorrow land</w>\nver b</w>\ncor a</w>\npre cisely</w>\nna om\nðŁĨ ķ</w>\nshr ink</w>\nsof tly</w>\nmerce de\nmand el\npoo dle</w>\nball erina</w>\nsop h</w>\njux ta\ny at</w>\nary an</w>\nhesit ate</w>\nlo wered</w>\ngu lar</w>\ndungeon sand\nron an</w>\nmy ri\nsp f</w>\nmen opau\ngra sp</w>\npa thi\nfe asi\nfla w</w>\nshi story</w>\nste ward\ngg le\nfay re</w>\ncli que</w>\ncredi bility</w>\nyo g\nsec tion\nmu sko\nse ville</w>\nno tt</w>\ncal m\nmate o</w>\nindic ted</w>\nfi ba</w>\nby l</w>\nlin o</w>\nu kin\n!! #</w>\nenig ma</w>\nsiri us</w>\nbu sc\nðŁį Ĭ\nmac kerel</w>\npsal ms</w>\na at</w>\ntomorrow spaper\nðŁĺ ĸ</w>\np fc</w>\n........ ...</w>\nshre k</w>\nmul let</w>\no sh</w>\ndanger ously</w>\nimmen sely</w>\nam ur\nðŁį Ĥ\npro por\nsy a</w>\nlondon marathon</w>\nabo ve\nobli gatory</w>\npro v</w>\nra cha</w>\nalex is\npri mary\nsh h</w>\nether net</w>\nd stv</w>\ncou gar\nun lucky</w>\nni l</w>\nsteak house</w>\nmel a</w>\nfc bayern</w>\ncause way</w>\nca therine\nfluore scent</w>\nnx t\nto kyo\nau sp\nreleg ation</w>\nqui zz\nshored itch</w>\nproud tobe\npromo s</w>\ninter acting</w>\nhome brew</w>\nda esh</w>\nw pg</w>\nstead ily</w>\nprovin ces</w>\nbal lots</w>\ni ah</w>\nal to\n< <<</w>\nyou u</w>\nri ley\nprefe rence</w>\ntra verse</w>\nincen se</w>\nam munition</w>\nho dges</w>\n# @</w>\nhail state</w>\ntart an</w>\nwitch craft</w>\nvent ilation</w>\nliber tarian</w>\n! âĢ¦</w>\now es</w>\n% !</w>\nong chang</w>\nbru shing</w>\nle ic\nfi ber\nunder attack</w>\ndown load\nex pir\nhy o</w>\npompe y</w>\nmc bride</w>\ny ag\nstre e\ncom bat\nten ding</w>\nai ra\ngug gen\nab ra</w>\nin na</w>\nfli ps</w>\naw al</w>\nm ach</w>\ndol lar\ninspir ations</w>\nz um</w>\no du\nit ty</w>\nvideo game</w>\naqu aman</w>\nhar u</w>\nbel fast\nje b</w>\nbut ch</w>\nus gs</w>\ncalcu lus</w>\ngo yal</w>\nmor gen</w>\nx finity</w>\nstand up\ncontrac ep\nsab re</w>\nna be\nin secure</w>\ngener ously</w>\nepit ome</w>\nl w</w>\nt ca</w>\nnarr atives</w>\ndon nell</w>\npand as</w>\nber gh</w>\ntu t</w>\nker al\nfel icity</w>\nbr ampton</w>\nquinte t</w>\nnom ore\nðŁĶ ĳ</w>\nlo i</w>\nalham dulil\nðŁĶ¥ ðŁĶĹ</w>\nston er\nshaw l</w>\nclin ical\nbren dan\ngon e\nfla wed</w>\ntri ppy</w>\nj g</w>\nal location</w>\npo aching</w>\nve vo</w>\nmo cks</w>\nlef tist</w>\nbon uses</w>\ncondem ned</w>\nabil ity\nst ating</w>\nmicrobi ome</w>\nbio logist</w>\nfor you</w>\nwahl berg</w>\nss or</w>\nift ar</w>\nw ul\nÑĦ Ð¾ÑĤ\npom er\nme me\nver te\ntre ll</w>\ntra it</w>\nin let</w>\nhormon es</w>\ndeliber ately</w>\nvill ar\nbattle ship</w>\np bl</w>\ntw enti\nho kies</w>\ndal ail\nsay a</w>\nmay fair</w>\nhan s\ndie ts</w>\nâľ¨ âľ¨\nod in</w>\nhot spur</w>\npap i</w>\nk ana</w>\nk amp\nfin na</w>\nflo tus</w>\nti ans</w>\nunic orns</w>\ntribe ca</w>\nchang ers</w>\nfore ground</w>\nout a</w>\ninv aders</w>\ngett ys\ntomorrowspaper stoday</w>\nmac millan</w>\nhand written</w>\nw fp</w>\nu de</w>\nstate of\nbase d\nâĺģ ï¸ı</w>\ncas m</w>\npsy ched</w>\nhistor ians</w>\nfol d\nd da</w>\nag grav\np ans</w>\ngreen way</w>\nau sv\nðŁĺ ¶</w>\nshradd ha\ninde x\nbe sti\nzim mer</w>\nt ness</w>\neye shadow</w>\not te</w>\ngo ts</w>\ndistribu ting</w>\npro min\nyo l</w>\nace a</w>\ntram rahim</w>\nhoo per</w>\nsupre me\njam min</w>\nintu itive</w>\nquali fications</w>\nsli m\nsid di\njay ne</w>\ntri pping</w>\ng tx</w>\npun s</w>\ne manuel</w>\nom g\nmid summer</w>\nin to\nsuccul ent</w>\nri en</w>\nnew mexico</w>\no or</w>\nhoo king</w>\nin f</w>\nðŁ¤ Ŀ</w>\nflir ting</w>\nna hi</w>\ng friend</w>\nt ps</w>\nhel ix</w>\nz s</w>\non ie</w>\nct f</w>\nkri s\nirresi stible</w>\nfla p</w>\nðŁĳıðŁı» ðŁĳıðŁı»\nus wnt</w>\nru d\nram ps</w>\npin oy</w>\not w</w>\nlol z</w>\nlow ering</w>\nfavor ite\nt mc</w>\nphra ses</w>\nher mi\naver aging</w>\nem br\nben o\nestu ary</w>\nsle eve\nribb ons</w>\nta sh\nà¸ ¹</w>\nx f</w>\naw gs</w>\nsun ited</w>\nbrew eries</w>\nanir ud\npun ches</w>\nol die</w>\nip ads</w>\nwi fey</w>\nland lords</w>\nd ji\ngun ner</w>\níķ ´</w>\ntex an\nex op\ncas sandra</w>\ns off\nðŁļ «</w>\nigh ton</w>\nbak ers\nawareness week</w>\nv all</w>\near p</w>\nbts bbmas</w>\napologi zes</w>\nâļĵ ï¸ı</w>\nwas ps</w>\nstates man</w>\nsnat ch</w>\nwatch dog</w>\nra fi\nafter party</w>\nspi ke\nj er</w>\nperi ph\nr nc</w>\nmu ll</w>\nle en\nshi es</w>\nli eu</w>\nurstruly mahesh</w>\nmer ton</w>\nde sai</w>\nshi f\nðŁĮ ±\npe dic\ngos ling</w>\narrang ing</w>\nww g</w>\ngen y</w>\nyou uu</w>\nnetfli x\ne ttes</w>\nk wi\nbernar dino</w>\nam iga</w>\nØ ¨</w>\nkashmir i</w>\nt ings</w>\nemer itus</w>\nde cat\nab domin\ndc i</w>\npha ses</w>\nd jan\nbe am\nop ry</w>\ni shed</w>\nthe ellenshow</w>\nthe st</w>\nhabit ats</w>\nto ons</w>\nmclau ghlin</w>\nri pper</w>\nmicro biology</w>\ntal aga</w>\nclu eless</w>\nss u</w>\ncro che\nbro mance</w>\nlonge vity</w>\nzagre b</w>\nprev ented</w>\ntra ve\nspo ilt</w>\ndarry l</w>\nmigra ine</w>\nal cat\ndd dd</w>\nvi v</w>\nser pent</w>\nmat tel</w>\njam a</w>\ncon quest</w>\nî Ħ\nsam sung\npresbyter ian</w>\nket ch</w>\nfire fox</w>\nmo tif</w>\nle c</w>\ncho pping</w>\ncher no\nj ann\nðŁĲ °\npro lon\nwake up</w>\nconver gence</w>\nmersey side</w>\nheart broken</w>\nlo oming</w>\nhal lucin\nmai ze</w>\ncommun ism</w>\nmo h</w>\ntwitter storians</w>\nserge y</w>\nres eller</w>\nfavor able</w>\ned gy</w>\nre iter\nmal aga</w>\nlive me</w>\nka hn</w>\npul sion</w>\nbig g</w>\nkim kardashian</w>\nati o</w>\ntyr anny</w>\nru ption</w>\nq ant\npro ven\nby z\npu shaw\nkri stin\ne er\ntar dis</w>\nri z</w>\nawak en</w>\nmi ko</w>\nun documented</w>\npath finder</w>\nindirec t</w>\nresemb les</w>\nh ler</w>\nconce aled</w>\nscand al\nre im\nd nb</w>\ncr itters</w>\nattend ant</w>\napprentice ships</w>\naa u</w>\nscre amed</w>\nl su\nfa h</w>\nhar bour\ned d</w>\nbat sman</w>\nli ss</w>\nmi sha</w>\nspani el</w>\nit f</w>\nadvan cement</w>\nfa c</w>\nclose up</w>\ncecil ia</w>\nmedi c</w>\nnarcis si\nlav ish</w>\ngi ac\nma ys</w>\nle it\nwine wednesday</w>\npushaw ard\nlet to</w>\ncurren ts</w>\nbug atti</w>\nout ine</w>\nw j</w>\nun do</w>\nler osis</w>\ndevo tional</w>\nðŁĳ «</w>\non na</w>\nfais al</w>\nsa una</w>\nhimach al</w>\nam ii\nà® ®</w>\ndi zzy</w>\nscreen writing</w>\nph x\nsp n\nick i</w>\nag irl</w>\nfi shes</w>\nwb z</w>\npi m</w>\nbo ar</w>\nac id\n! ..</w>\nrocke feller</w>\nn ga</w>\ndra stically</w>\nsimpli fy</w>\ndru mming</w>\nautum nal</w>\ngur mee\nlor de</w>\njo ann\ngive up</w>\nb our</w>\nam ura</w>\nder land</w>\nsim pler</w>\nwat son\ntri dent</w>\nconcor dia</w>\nbel lum</w>\nbre k\ndum plings</w>\nvi on</w>\ndungeonsand dragons</w>\nsp ri\nascen sion</w>\nwil datlantic\nu st\nrob ins</w>\nlegi on\ninsi st</w>\njar o</w>\ngue ss\nso b</w>\nbigh it</w>\npool side</w>\nnegoti ating</w>\nmc gill</w>\nbil d</w>\ntechn icians</w>\nmiti gation</w>\najay devgn</w>\nb to</w>\nant en\ncosmo politan</w>\nðŁĺĬðŁĺĬ ðŁĺĬðŁĺĬ\npatri oti\ntemp er</w>\npromen ade</w>\nnav ajo</w>\nnam m</w>\nwrink les</w>\ndc fc</w>\nle ach</w>\nbru nette</w>\nr f\ncout inho</w>\nal ti\ntradition ally</w>\nop tome\nna z</w>\naccord ingly</w>\nrec ard</w>\nde ets</w>\nsw ell\npo sure</w>\nwhit ening</w>\nstrang er\nilli on\nhere ford</w>\nu wu</w>\nro bber</w>\ncotsw olds</w>\ncl en\ngor ge\nnam aste</w>\nre lish</w>\ngri ff</w>\nadren aline</w>\nbla sio</w>\nval e\nê ²\ntoler ate</w>\nrail minindia</w>\njen sen\nho ven</w>\nel lu\nob sole\neisen hower</w>\nunidenti fied</w>\nthan niversary</w>\nbody guard</w>\nØ ¯</w>\ni dge</w>\nsch al\nstock port</w>\nsn i</w>\nre taining</w>\npo po</w>\npix ie</w>\noli thic</w>\nki er</w>\nha jj</w>\nsa z</w>\ncor bin</w>\n!!!! !!!!!!</w>\nv it</w>\nme gat\nde h</w>\ncircu it\naf fleck</w>\ntheore tical</w>\nhope less</w>\nu ab</w>\nslu mp</w>\nb ice\njam med</w>\nlet stalk</w>\ncan i\nside ways</w>\nlabyrin th</w>\nre fs</w>\nha hn</w>\njare d\nðŁį ¹</w>\njam bo\nph yl\nenhan cement</w>\nc tr\nful lest</w>\nse ye</w>\ndo ba</w>\ncho ic\nyo s</w>\ncb j</w>\nandr Ã©</w>\nre watch</w>\npri ma\ndoctr ine</w>\nfor gets</w>\nu hm</w>\nar ound\nu le</w>\nart lovers</w>\nshi raz</w>\nhar th</w>\nex tor\nÅ ¡\nunexpec tedly</w>\neli us</w>\ny x</w>\nem my\nse ac\nðŁĳĩðŁĳĩ ðŁĳĩ</w>\ncorrec ted</w>\ncom bu\nwom anc\ncou gh\nwhat son\npubli shes</w>\ndivers ity\nback bone</w>\nlock down</w>\nmesmeri zing</w>\nnor te</w>\nma b</w>\ndesig ner\ní ģ\nra gh\nmole cules</w>\nget outside</w>\nthe beatles</w>\nsemicon duc\nnach o</w>\nlun es</w>\nham mers</w>\nsul tan\no on\nfe ren\natt ach</w>\nar qu\nuttarak hand</w>\ns ash</w>\n; -\ntre ad</w>\ni ko\nar thur\nscandin avian</w>\nr ation</w>\nga el</w>\ncharge able</w>\nfish y</w>\nv ma</w>\nhand bags</w>\nchar a</w>\nay ne</w>\nde fam\nsett lers</w>\nqad ri</w>\npal ais</w>\nin wx</w>\napocaly ptic</w>\npoo ja</w>\na es</w>\nat ories</w>\nproof ing</w>\nn lp</w>\nts la</w>\nv ina</w>\nli do</w>\ndee phouse</w>\ninformat ics</w>\nv v</w>\npp ings</w>\ndi ss</w>\nÃ ¯\nuhur u</w>\nst ony</w>\nbetra yed</w>\nb aff\nmy ra</w>\nas pen\nallow ance</w>\ntam ara</w>\nci f</w>\ncor bett</w>\nser ge</w>\ndi go</w>\nambi gu\npain ters</w>\np cr</w>\np ca</w>\nnom s</w>\nlo ft\nve e\nopend ata</w>\nðŁĲ ±\nalex andre</w>\nidenti fies</w>\nfantasy football</w>\nre production</w>\nbrom ley</w>\nware agle</w>\nmm er\np ss\ncu es</w>\nay at</w>\nhut chinson</w>\nsar ac\njack man</w>\nira h</w>\nap ink</w>\ncol s</w>\naussi es</w>\nex ecs</w>\nday ton\nðŁĻ Ĩ</w>\nim v\nhar am\nchuck le</w>\nauthent icity</w>\nar do\nincub ator</w>\nà¸ ª</w>\nphoto shopped</w>\nembrac ed</w>\nfight for</w>\ngor man</w>\nzz zz\nschol astic</w>\ncri sps</w>\nte apo\nmid night\nga ine\ncol lier</w>\ns ate</w>\nde tte</w>\nå Ń\nimag ine\ni ff\ntw ili\ni fication</w>\nteat ro</w>\nnor ma</w>\nes ur\nemergen cies</w>\nrise up</w>\nr inger</w>\nhass le</w>\ncait lyn</w>\ntranqu il</w>\nvers a</w>\nse b\nover look</w>\ngin i</w>\nbo go</w>\nse re\nmay ne</w>\nhenri k</w>\ncontamin ated</w>\nrhapso dy</w>\npro portion</w>\nwildatlantic way</w>\nâģ© .</w>\norganis ers</w>\ntran e</w>\nstand ard\nsper m</w>\nlaun cher</w>\nric ci\nher ts</w>\npaper work</w>\nshowcas ed</w>\nmer yl</w>\npen a</w>\np imp\ndisa strous</w>\n^. ^</w>\nphar a\nx is</w>\nfron tal</w>\nsw irl</w>\nsp ills</w>\nswag ger</w>\nsmart watch</w>\nsizz ling</w>\nsavi our</w>\ncat ar\nbb cr</w>\nrefurbi shment</w>\ndr is</w>\ncitro en</w>\nabsor b</w>\npatrioti sm</w>\nil leg\nchro mo\nfresh ers</w>\nru s\nlim iting</w>\nef ish</w>\ndown ed</w>\nman dir</w>\nhazel nut</w>\np all\nmac on</w>\ndisappear ing</w>\nquali fies</w>\nbo on</w>\nbar racks</w>\nam ine</w>\ngen dere\nðŁļ ĺ</w>\nj es</w>\nãĥ Ń\nqu ito</w>\nmiddle weight</w>\nsch au\nquad ru\naci ones</w>\nlimit less</w>\nðŁĳĮ ðŁı½</w>\nch man</w>\nar av\nregulat ors</w>\nit up</w>\nbatter sea</w>\nmil ford</w>\ng z</w>\ntic king</w>\ngh ou\ncru shes</w>\ntu tu</w>\ndread ful</w>\nfam ine</w>\nfor change</w>\ndalail ama</w>\nðŁĴ į\nwhit aker</w>\nhash mi</w>\nh us</w>\nvo d</w>\nbet te</w>\naa ah</w>\niso o</w>\nðŁ¥ Ī</w>\nha ar</w>\nla ine</w>\nb v</w>\nall day</w>\nspr out</w>\nindie games</w>\nfree bie</w>\ngree ks</w>\nbut ler\nill in</w>\nha al</w>\nware ness</w>\nsi ma</w>\npublic health</w>\ngam a</w>\nwa a</w>\noun g\ngoo oo\nokin awa</w>\noff enders</w>\nim pose</w>\nho c</w>\nyoung ster</w>\nstory teller</w>\nsc ap\nfigh ter\n+ ,</w>\nwhit es\nmusic monday</w>\nre za</w>\ngo ducks</w>\nbri a</w>\nmi um</w>\ncas per</w>\ncru mbs</w>\na ad</w>\nmarti alarts</w>\nch p</w>\nri gged</w>\ntn g</w>\nharve sted</w>\nsa k</w>\ndo jo</w>\nmill wall</w>\nb nw</w>\noc d</w>\nhistor yof\nt mr</w>\nsi rens</w>\nfan ci\ncaregi vers</w>\nvir a</w>\nson i</w>\nrecur ring</w>\nacknowle dged</w>\nðŁı Ł\noph ile</w>\nbu cky</w>\nstre ssing</w>\nroo k</w>\ndi gger</w>\nvi val\nsan do\nfle et\nsi ers</w>\nsel caday</w>\nrefre shed</w>\nanti fa</w>\na que\npo lo\ndisappear ance</w>\nde mb\nâĮļ ï¸ı</w>\nren ted</w>\nber ger\ng mb\ncu la</w>\nss al</w>\ngoo dy</w>\nu hh</w>\nmarcel o</w>\nw anna\nsoft ware\nshop small</w>\nturt le\ntom as\nfri sco</w>\nðŁĺį ðŁĴķ</w>\njim enez</w>\nc su\nday z</w>\nan do\nwyn ne</w>\nchoreo grapher</w>\ncerv ical</w>\ntrail blazers</w>\ned g\nzend aya</w>\ntravel blog</w>\nel s\nwhole some</w>\nco g</w>\nlab out\nar ney</w>\ndel le</w>\nsu isse</w>\nma si\nine se</w>\nom be</w>\nfi ddle</w>\nre claim</w>\npa u</w>\nwat cher</w>\nsla in</w>\nber ty</w>\nopti mum</w>\nel ites</w>\nmin is</w>\ntur key\npatro ls</w>\nger ard\nau reli\nwild ly</w>\nwal tz</w>\nbr gy</w>\nw ob\ncre st\n+ ++</w>\nve z\nfro sted</w>\ndavi do</w>\nthe x\nparam edics</w>\np into</w>\nhan k\ndu pont</w>\nur g</w>\nfo stering</w>\nmicro poetry</w>\nspec tre</w>\n---- ></w>\nne uro</w>\nfri da</w>\nmusic al\ngalve ston</w>\ne ffic\nsc ape\npal azzo</w>\nth all</w>\npro visional</w>\np js</w>\nau re\nðŁĶ ľ</w>\nmam amoo</w>\nkit ties</w>\ncre e</w>\nwa k</w>\nlo ool</w>\nlu pus</w>\ncn blue</w>\nÃ º</w>\nðŁİ ¬\nrac ed</w>\ntro se</w>\nom as</w>\nstri de</w>\nco ors</w>\nâ¤ µï¸ı</w>\nin comparable</w>\ncy ril</w>\nbroad er</w>\narec lipse</w>\nðŁį Ķ</w>\ninter val</w>\nti ru\nco working</w>\nw aco</w>\na ham\na bee</w>\nflouri sh</w>\nthe times</w>\nol ini</w>\nkick boxing</w>\nlu cer\nat la\nas un\ncasser ole</w>\nmi aw</w>\nlobb ying</w>\njan ice</w>\ncir que</w>\nre flex</w>\nle ary</w>\nsanat omy</w>\ntem pest</w>\nse mb\nmur dering</w>\nus av\nro bo</w>\non et</w>\np cc</w>\nnati ves</w>\nlife of\nsa ha\nruth less</w>\nrel ates</w>\nappeti zer</w>\npye ongchang</w>\nnor d</w>\ner u\na thing</w>\nug ly\npl ying</w>\nbran ce\norgan ise</w>\nkend ra</w>\ndat o</w>\nchees es</w>\npar ma</w>\nburn out</w>\na stra</w>\npre toria</w>\nadjust ment</w>\nuk u</w>\nsl o</w>\nli ken\nfav ors</w>\ncli ve\nbe ets</w>\nsnow donia</w>\ngo tv</w>\nsy n</w>\nopen house</w>\npan i</w>\nportra yed</w>\nsl ated</w>\nme cca</w>\nren al</w>\nsupportsmall streamers</w>\nstaf fs</w>\nda o</w>\nbi ker\nvik tor</w>\ntit us</w>\nadmi red</w>\nðŁĵ ±\nhurric an\nhe ats</w>\ngl ory\nphoto genic</w>\nmer i</w>\nde por\nburn ham</w>\nor angu\ndj ing</w>\nimpre ssionism</w>\nign ition</w>\nca i</w>\nw ynn</w>\nde pe\ncove ted</w>\ncolla gen</w>\nsau s</w>\nor nam\nadministr ators</w>\nss on\nnh politics</w>\nhahahaha hahahaha\naspir ations</w>\nr gb</w>\nswol len</w>\nso we\nsc r</w>\ndiver gent</w>\nhou ghton</w>\nhan oi</w>\nd ory</w>\nni ki</w>\nland ry</w>\nb cci</w>\nðŁĳĮ ðŁĳĮ\nis mail</w>\ntri pod</w>\nher d\nbhat t</w>\ndress age</w>\ntab by</w>\ningu ish</w>\nhur on</w>\nà³ į</w>\nÃ ł\nto das</w>\nevangel ical</w>\nchor ds</w>\nst john\nslo ppy</w>\nmarty r\nface book\nali ght</w>\nsen sei</w>\nkath niel</w>\nr ites</w>\nzi one</w>\nu o</w>\nrevel ations</w>\nweight lifting</w>\npan o</w>\nnc wx</w>\nac ton\nà® ķ</w>\nØ ²\nsom a</w>\nà¸ Ĺ</w>\nrespec ting</w>\nmar che</w>\nfore man</w>\nbe tty\nki k</w>\nshi bu\npo on</w>\nargy le</w>\nk swx</w>\net z\nmar bella</w>\nbrac kets</w>\nstand by</w>\nfire side</w>\ndefi ance</w>\nv ex\nbritanni a</w>\nin habit\nappo int</w>\npiyu sh\nle ash</w>\nsci ento\nfla sk</w>\nsen na</w>\n> :</w>\nat roc\nsand erson</w>\nid lib</w>\ndhan ush</w>\nðŁĺ Ļ\nen thr\nhit ch</w>\nde dly</w>\nal ley\ndor k</w>\nmon do</w>\ncudd ly</w>\nmis sin</w>\nye sss</w>\nnight ing\nj pn</w>\nw ary</w>\nump ire</w>\nma z</w>\nê ³\nbab s</w>\nĭ ãģ\nstan ford\nposse ssed</w>\nexce eded</w>\nðŁĶ ¶</w>\nwall art</w>\ntra p\nj il\nhi bis\nsp ying</w>\nscri be</w>\nkhali l</w>\ntrans lator</w>\nlu mb\ndi zed</w>\nch c</w>\nsuper vision</w>\nshut ter\nja g</w>\n_ *</w>\nyester days</w>\nms f</w>\nhi hi</w>\ngonz aga</w>\ngille spie</w>\nvive k</w>\nec static</w>\nthis morning</w>\nch us</w>\ned es</w>\nston ed</w>\nbe es\nðŁĩ¹ ðŁĩ\ntur in</w>\nho ver\nat rics</w>\nster n\nsam heughan</w>\nauti sm\nmi ya</w>\neye witness</w>\nwrit ings</w>\ntravel tips</w>\nchut ney</w>\npx rtg</w>\nkeny ans</w>\nmy stic\nk rit\n/ $</w>\nred head</w>\nworld ly</w>\nam us</w>\nop la\nle ve\ngab bana</w>\nse en\no clock</w>\ngang a</w>\nkeen an</w>\nsc ent\nol dies</w>\ngo green</w>\ncorner stone</w>\ncomp ly</w>\ncon cours</w>\nðŁİ¶ ðŁİ¶</w>\nha an</w>\ncon fis\naw son</w>\ncle op\nî Ģ\nsu zu\nsau tÃ©\nal gar\nsubscri ber</w>\neste emed</w>\nãĤ¤ ãĥ\nworth while</w>\nmel rose</w>\nflo ck\nbri ghtly</w>\nviol inist</w>\np ere</w>\nsli pping</w>\nand co</w>\nsi gh\nha van</w>\ncu lo\nm sa</w>\nfibro sis</w>\nmatil da</w>\nra fting</w>\naw ard\në ª\nmm mm\nge aux\nste iner</w>\nsin n</w>\nhelp ers</w>\nbeet les</w>\nai mee</w>\ntai wan\npistachi o</w>\nmac beth</w>\nm zan\ndescend ants</w>\non sale</w>\nin r</w>\nil m</w>\ngrou se</w>\nsa ig\nmo w</w>\nbi gre\nadjust ments</w>\ntu la</w>\nmathe w</w>\ntransl ates</w>\nmu h\nbol lah</w>\nðŁĴĽ ðŁĴĻ</w>\namo res</w>\nab outs</w>\nbomb shell</w>\nbla ster</w>\nx avi\ns ns</w>\nk roger</w>\nga ther\nerad ic\ndaf t</w>\nchem o</w>\nben ches</w>\nðŁĩ© ðŁĩ\nut v</w>\nour a</w>\nn ko\ngator ade</w>\nbiaf ra</w>\nok state</w>\nim danielpadilla</w>\ndom ains</w>\nopen ingday</w>\nkid do</w>\ndo i</w>\nric e\nday care</w>\nmac millan\nba thurst</w>\ncheer leading</w>\nðŁ¦ ģ\ncash back</w>\nk won</w>\nhob bies</w>\nexem pl\nries ling</w>\nâļ ª</w>\nag les\nny s\nevery thing\nnav is</w>\nad di</w>\nmagne sium</w>\nfaceli ft</w>\nark ham</w>\ngrand es</w>\nextre mist</w>\ndon at\nvit ality</w>\npump kin\nbe tta</w>\nsl td</w>\narti san\nli by\npe aked</w>\nah hhhh</w>\nmary am</w>\nassi m</w>\nun sc</w>\nment e</w>\nal aya</w>\nlow ers</w>\nar as</w>\ngri ev\nle ip\ngr ati\ncri ses</w>\nspr ints</w>\nexe cute</w>\nw to</w>\nms d</w>\nmag ical\nre viewer</w>\nspark les</w>\njuke box</w>\nðŁĺĤ âĿ¤ï¸ı</w>\npay back</w>\nlicen ses</w>\ndun kin</w>\nbel t\nlake wood</w>\nh ateful</w>\nbud gets</w>\nrev amped</w>\nph erson</w>\nky iv</w>\nwent worth</w>\nro sen</w>\ncru ise\ngi ggle</w>\ndef star</w>\nassassin scre\nym outh</w>\nwin kle</w>\nw fc</w>\nband wagon</w>\nb kk</w>\nw iring</w>\nkear ney</w>\nsouth side</w>\npe tit\n! ðŁĺį</w>\nnor dic\nmir za</w>\nmu gabe</w>\nv l</w>\nscon es</w>\nk tv\nsand al\ndu c</w>\nm alls</w>\nðŁĴŀ ðŁĴŀ</w>\nit c</w>\nal ay</w>\nim pair\nun rest</w>\nflo ss</w>\nc Ã©\nab ou\nvar ying</w>\nmuse o</w>\nser ver\ndi ya</w>\nhibis cus</w>\nero y</w>\nmer ritt</w>\nfin dom</w>\nf pp</w>\nun usually</w>\ngo tt</w>\nconting ent</w>\nali aa</w>\nball on</w>\njo l</w>\nhi ked</w>\nzy me</w>\nay r</w>\nag n\nga z</w>\nperio dic</w>\nspar ty</w>\npracti sing</w>\nlin ton</w>\ntal is\ncy pri\nwomanin biz</w>\nradio disney</w>\nðŁĮ ¼\njump ers</w>\nendo cr\nðŁļ¨ ðŁļ¨\nand on</w>\nshar apo\nmi er</w>\nma sonic</w>\nfac tories</w>\nvi en\nbb ers</w>\nìĽ Ĳ</w>\nhol d\nke bab</w>\nbe ak</w>\napproach ed</w>\nac milan</w>\nmun ro</w>\nko sher</w>\nexcell ency</w>\nnegoti ation</w>\nwalt disneyworld</w>\ncr ouch</w>\nte asing</w>\nsuppre ssion</w>\nen ya</w>\nb ce</w>\ntransformation tuesday</w>\ncal lie</w>\nvis was\np gat\nic ted</w>\nend ings</w>\nesc u\nrecru ited</w>\nit fc</w>\ncollabor ations</w>\ng ino</w>\nsnu ck</w>\nausch witz</w>\ni fc</w>\nx ii</w>\nke sha</w>\nger vais</w>\nclo ak</w>\nx l\nsa ad</w>\nprob ation</w>\npre cau\nmac in\nanasta si\nle k</w>\ne azy</w>\ndaysof code</w>\nmariah carey</w>\nyo g</w>\nstit ched</w>\nboy friends</w>\nsh ar</w>\nph ile</w>\nag u</w>\ntwin kle</w>\nphi shing</w>\nweek ender</w>\nic ton</w>\ngurmee tramrahim</w>\nal ton</w>\nl eness</w>\nall an\npen ultimate</w>\nkry stal</w>\ngo u</w>\nlan de</w>\ndis mant\nab using</w>\nnor se</w>\npat erson</w>\ned mun\nap an</w>\nxi umin</w>\nsk el\ncat walk</w>\nre act\nwal led</w>\nt angle</w>\nbr yn\nve to</w>\nsuper moon</w>\ncas ablanc\nappreci ates</w>\nski d\nbo th\ncatal ina</w>\nele ague</w>\ncyber monday</w>\ncau tious</w>\nðŁ¤ ĵ\nnov o</w>\nhamp ton\nha ye\njose f</w>\nvar an\nlo bos</w>\nroano ke</w>\norph ans</w>\ntt in</w>\nsqu ads</w>\nishqba aaz</w>\nblack panther</w>\ne tu\nk sh</w>\ncru mble</w>\ncess na</w>\nreli eved</w>\nscul ly</w>\npollin ators</w>\nexplore canada</w>\nki es\nkam loops</w>\nkir an</w>\npri mal</w>\nsett lements</w>\nhot spot</w>\nbrain storming</w>\nce dric</w>\nbi ennial</w>\nsh ant\nâĻ¡âĻ¡ âĻ¡</w>\ndo on</w>\nhear n</w>\nwalk way</w>\nfe m</w>\nve al</w>\ndeport ation</w>\ntox ins</w>\nelimin ating</w>\ndescen ding</w>\nby the\nbla sphe\nha sta</w>\ncomple ment</w>\nas cent</w>\nri ga</w>\nprovo st</w>\nâĸ ª</w>\nwee ping</w>\nanti semitism</w>\nemploye e\nunearth ed</w>\npin o</w>\nnatali e\nbla d</w>\nang ola</w>\nlock heed</w>\nin ian</w>\nag r\nni ster</w>\nim pala</w>\nm ke</w>\nfan atic</w>\nâĺħ âĺħ</w>\nðŁĳ ¸</w>\nlu ch\nsimpli fied</w>\ngall ery\neconom ic\ncy borg</w>\ncon i</w>\nsel ma</w>\nin ception</w>\nko ala</w>\ndv ds</w>\ncre sted</w>\nm mor\nvisi ble\nn sd</w>\nðŁĻĮ ðŁı½\nw under\nrefriger ator</w>\nre opening</w>\ne era</w>\ncarou sel</w>\nas p</w>\nballi stic</w>\nvictor y\nmo tive</w>\ntre y\nsharapo va</w>\nsi i</w>\nmon ter\nint end</w>\nwest chester</w>\nsp e</w>\ncy mb\nvi dal</w>\nll ama</w>\nuni v\nfin er</w>\ncrafts manship</w>\njazz fest</w>\nb ch</w>\nag gio</w>\nn cc</w>\nlamb da</w>\ntranqu ility</w>\ncis co\nba den</w>\nso bbing</w>\nof i\ngo ta</w>\nru mored</w>\nwar med</w>\nore an</w>\nac ton</w>\nmar ci\ngh ani</w>\nâľ ĵ</w>\nas sorted</w>\npembro ke\npen elope</w>\nda f</w>\nat ty</w>\naim o</w>\npretz el</w>\ncarni val\nthan os</w>\nko chi</w>\nmer sal</w>\nham radio</w>\nar twit</w>\ncas c\nguer rilla</w>\nkush ner</w>\nk app\nal ise</w>\ntodd lers</w>\nsteward ship</w>\no tti</w>\nter ri</w>\ntem pe</w>\nrest less</w>\nvit o</w>\nzay ed</w>\nrsp b</w>\npi on\nhi ppo</w>\nhaw thorne</w>\nin as\nam ily</w>\nnut cracker</w>\nlo p\nd ali\ntro pic</w>\nðŁ¤ ł</w>\nul o</w>\njare dle\npy rene\npale o\nusa ir\nm ould</w>\nit ated</w>\ngene tically</w>\nbiom ass</w>\nðŁĩ³ðŁĩ ±</w>\ndo dd</w>\npractic ed</w>\nmonarch s</w>\nun manned</w>\nm buhari</w>\nam al</w>\nphoto gra\nko ol\nbren don</w>\nju ices</w>\ncu re\nworld bank</w>\npoin ters</w>\nðŁĴ Ŀ\ntur f\nle ds</w>\nbor ussia</w>\nbapti sm</w>\nwarwick shire</w>\nmoun ts</w>\ngay o</w>\nbe gg\nco pied</w>\nasi ans</w>\nk g\nmoder nist</w>\ngi d\nfront man</w>\nconcentr ated</w>\ny t\nsc avenger</w>\niron ically</w>\nadi c</w>\nps n</w>\nðŁ¥ ī</w>\ncultur ally</w>\nyu v\nmac arthur</w>\nfertili zer</w>\nbe withyou</w>\nri gor\nmin ors</w>\nz oning</w>\nâĸ ł</w>\nri r</w>\nadole scent</w>\nvin ny</w>\nren g</w>\nsand stone</w>\ngu et</w>\nwe sth\nple dged</w>\nlac ed</w>\nsp ide\nv ai</w>\nty coon</w>\nseiz ure</w>\ndu p\nappalach ian</w>\nro k</w>\ncathol ics</w>\nsey chel\nposse ss</w>\nla ger\njo di\ncham p\nstra s\nd ina</w>\ncent uri\ncal der</w>\nblur ay</w>\nðŁĩ¨ðŁĩ ³</w>\nmo do</w>\nan nette</w>\nyoutu bers</w>\nchap s</w>\nang ling</w>\nlabel ing</w>\na qui\npk wy</w>\nly le</w>\nbi sexual</w>\nlit ur\ndug out</w>\nli bby</w>\ngrey sanatomy</w>\nsub stances</w>\naugust us</w>\nrall ying</w>\nfi del</w>\ning ue</w>\näº º\nhallmark channel</w>\ntooth brush</w>\nm Ã¡\nadi rond\nag gi\nðŁĵį :</w>\ncru sade</w>\ntax ation</w>\nk z</w>\ni ver\ndou bling</w>\nroom ie</w>\nwa b</w>\nen rolled</w>\naz on</w>\na ju\ngrand children</w>\nas df\nðŁ¥ º</w>\nmat ic\nough ton</w>\nutili ze</w>\nðŁĴ £\npon der</w>\nrais in</w>\ndys function</w>\nco bain</w>\nbutter nut</w>\ne man</w>\nsu red</w>\ndri an</w>\nand friends</w>\nwith the\non omy</w>\nheine ken</w>\nbri dal\nleader ship\npyram ids</w>\ndeutsch land</w>\njo cel\nbo wel</w>\ny qr</w>\nhorse power</w>\nbe acon\ning eni\ngra dient</w>\nfer mented</w>\nmo om\nthing y</w>\npot assi\nwrist band</w>\nbor d</w>\nbo died</w>\nðŁĺŃ ðŁĺį</w>\nma pp</w>\nka u</w>\ncyber punk</w>\nph ish</w>\nloo king\nco ates</w>\nap ur\nam ie</w>\nuk labour</w>\nat in\ng la</w>\nadop table</w>\nshel by\nv illi\nri ya</w>\nm ingly</w>\ncli mber</w>\nbumble bee</w>\nðŁĺ ¸</w>\nc sd</w>\nâĿ ¥</w>\nhospit alized</w>\nc ki\nhat er</w>\nch r</w>\nre tina</w>\nit a\nfan base</w>\nbeat rice</w>\ngwy ne\ngo ss</w>\nfo s\nfavor ited</w>\nswachhb harat</w>\nmal ade</w>\nmon mouth</w>\n\" [</w>\nsi van</w>\nsh hh</w>\ncommand ing</w>\nsains burys</w>\nwee d\ng man</w>\nss w</w>\nrep tile</w>\niv y\ntro pics</w>\nroll ers</w>\nover cast</w>\nex position</w>\nmasquer ade</w>\nman crush\nwa ist\nspr inter</w>\nsle et</w>\nle vin</w>\nj pg</w>\n_ (</w>\no pel</w>\nexplo it</w>\nap a\npo we\nwrec king</w>\njong in</w>\nor b</w>\ner ick</w>\nbo sco</w>\npra ising</w>\nber tr\nto wing</w>\nin security</w>\nku t</w>\nresto cked</w>\nrr p</w>\nprescri bed</w>\ntrafal gar</w>\nper t\ng ases</w>\napp rais\ng har</w>\nmusic als</w>\nâĸ¬ âĸ¬\nmc fad\nag ony</w>\nconditi on\nequi p</w>\nshi k</w>\natra vel</w>\nðŁĩ¿ ðŁĩ¦</w>\nke h</w>\nabduc tion</w>\npe oria</w>\nwil kins</w>\ng ms</w>\nas d</w>\nev i</w>\nðŁĴĹ ðŁĴĹðŁĴĹ</w>\nu z</w>\nmo c</w>\nhalle lujah</w>\nguad alu\nlou vre</w>\ndra wing\ngo ve</w>\nph ant\nfri e\nweb dev</w>\nprogram mer</w>\nz able</w>\ngames com</w>\nclari fy</w>\nli th\nkin ky</w>\nâĿ £\nlabour doorstep</w>\nson ata</w>\nju ris\nmai den\nvi adu\nbuch arest</w>\nconditi oned</w>\ncapit alist</w>\nu de\nps b</w>\nsp ca</w>\nlul la\nfooth ills</w>\nkay o</w>\nbon d\nwom b</w>\nroun der</w>\nce sar\nbur sts</w>\nap ra\nsw oon</w>\nsab rin\nfra grant</w>\ncle arer</w>\nku brick</w>\ncli max</w>\njour no</w>\nag le\nðŁı½ âĢįâĻĢï¸ı</w>\npoo ch</w>\nhal e\nsol it\nsal mon\norganis ms</w>\nbron son</w>\nart en</w>\nhodg son</w>\nalo ve</w>\nvent ure\nbb i</w>\nae a</w>\nðŁĲ ¢</w>\nld n\nd nr</w>\no zone</w>\nel las</w>\nman ny\nazz ur\nun beat\ntru ffles</w>\nth ong</w>\nma Ã±\nlas ers</w>\nley e</w>\ngettys burg</w>\nback packs</w>\nor is</w>\nma ison\ncraw ling</w>\nla bra\ncl ing\ndra gging</w>\nste al\ndou bt\nde van\nck ers</w>\nagent sof\nphoto bomb</w>\nelon musk</w>\nabo y</w>\ndist ances</w>\nstory line</w>\nsp i</w>\nnor than\neurope ans</w>\nwh ale\nser pent\nðŁļ ²</w>\nfi or\ntr it\nox o</w>\nawar ding</w>\nclass mate</w>\nsu fc</w>\nsmar test</w>\nrich es</w>\npr k</w>\nbig foot</w>\nar mb\nbi polar</w>\ndw elling</w>\nom ars</w>\nk wan\ngri me</w>\nm eng\nfreder ick\nnavar ro</w>\nsorry notsorry</w>\njaredle to</w>\npa ve</w>\nsl ack\nbarn sley\natt ar</w>\nevic tion</w>\naccumul ation</w>\no ir</w>\ncat chy</w>\nwel ter\nvik as</w>\nhas see</w>\nnik ita</w>\nmo yes</w>\nmathe ws</w>\nshi v</w>\ngat wick</w>\npro filing</w>\ncompan ions</w>\nmar rake\nan tics</w>\nðŁĻĮðŁĻĮ ðŁĻĮ</w>\nse se</w>\nbo i\nbart lett</w>\npoison ous</w>\nab uses</w>\nym m</w>\nkam pala</w>\nguggen heim</w>\nimv kohli</w>\ndol om\nbre e</w>\nthro ttle</w>\ngare th\nfitz patrick</w>\nun ya</w>\npar ad\nmar got</w>\nj nr</w>\nwe a\npotassi um</w>\np nc</w>\ndisgu ised</w>\ncra sh\nren ergy</w>\nill ic\ncoup led</w>\nni els</w>\nci ones</w>\næĹ ¥</w>\nim ent</w>\ndespic able</w>\nd ye\nwhat cha</w>\nconne ctions</w>\nparalym pics</w>\ngaunt let</w>\nwait rose</w>\nsuici dal</w>\nstar ship</w>\nvap or\nst ou\nlaw maker</w>\ncoo led</w>\nsi mo</w>\nthen o\noffro ad</w>\nja den</w>\nbas que</w>\nvick y\nlu kaku</w>\ncentr o</w>\ntri sh</w>\nstrate gist</w>\nmedic ations</w>\nhor st</w>\nb fc</w>\ngra il</w>\nsharp ly</w>\nad itya</w>\ntom b\nkau fman</w>\ntri pad\nsam ba</w>\npastor al</w>\nbrit ney\nsag an</w>\nhill side</w>\nmas ons</w>\nsar a\nz one\nx u</w>\nto tes</w>\nrob bie\napp en\nmon tag\nder o\nshort film</w>\ncharis matic</w>\ntat ors</w>\nki ba\nand ri\nal arming</w>\nsplit ting</w>\nic ar\nth ug\nscari est</w>\nsylve ster</w>\nan an\nu trecht</w>\na difference</w>\nme ade</w>\nbu ster\nair strikes</w>\ncu ffs</w>\naccount ants</w>\nðŁĺ¡ ðŁĺ¡\nnew t</w>\nbo tt</w>\nissu ing</w>\ncl ancy</w>\nwwen etwork</w>\nkyu hyun</w>\nrese mble</w>\npajam as</w>\nsin k\nkin ney</w>\nsul ph\nor k</w>\nli es\nla gh\nor ton</w>\nra hul\nd sc</w>\nwe will\nre am\ncollo qui\nshar ia</w>\nhec tic</w>\nsar casm</w>\nland er\ntm z</w>\nendor f</w>\nro z</w>\nham mered</w>\nfri s\nw adi</w>\npope francis</w>\nhe it</w>\nflash light</w>\nun born</w>\nop es</w>\nhol iness</w>\nðŁĲ ¦</w>\nnach t</w>\nim sa</w>\ngr acing</w>\nbj p\nver ts</w>\nc sc</w>\nhome owner</w>\na que</w>\nbigo try</w>\nanni e\nbag h</w>\nâĿ¤ï¸ı ðŁĺį</w>\ncar i</w>\nthom p\ndispo sable</w>\ncardio logy</w>\npat ented</w>\nhh hhhh</w>\nld r</w>\nstephen son</w>\ncro res</w>\nfan ning</w>\ncli mat\nðŁĳį ðŁĳįðŁĳį</w>\nðŁĳį ðŁı¼\naer on\npiccad illy</w>\nbank rupt</w>\nsil via</w>\nemplo y\ndon ny\ncommen ting</w>\nscreen writer</w>\nio ta</w>\nce an</w>\nanc ers</w>\ntu an</w>\nstreet wear</w>\nà¤ ¯</w>\nsk ine</w>\nesp a\nasi f</w>\nos ce</w>\nshe ppard</w>\nmore cam\nbott le\nder s\norac le\ngoogle play</w>\naver aged</w>\nedmon ton\nsteph an</w>\nsister hood</w>\ncru sted</w>\nstag gering</w>\nmethodo logy</w>\ncongress woman</w>\nc abo\ntri ggers</w>\nmil ky\ngli de</w>\ntooth paste</w>\nroom mates</w>\nnu ff</w>\ngu am</w>\nsprink les</w>\nalternati ve\nwat fordfc</w>\nuof t</w>\nhal ey\ncont acted</w>\nbun dy</w>\npro stitu\ngh ar\npre ston\non site</w>\nhil ar\ng ts</w>\nc att\nhamp stead</w>\n? ?!</w>\nðŁĩ§ ðŁĩ\nbbc qt</w>\naless andro</w>\nresi st\nma idan</w>\nt ko</w>\nshad ing</w>\npin up</w>\ngal lo\nsin u\nat ec\nfun k\nac lu</w>\nstri des</w>\nrhy me</w>\nwet land</w>\nbbc springwatch</w>\nt ins</w>\nwild card</w>\nst our\nflamen co</w>\npau la\nonto logy</w>\ngang sta</w>\nam ade\nãĤ «\nt bs</w>\nskelet al</w>\nrun ner\njard in</w>\nharri er</w>\nhun ted</w>\nz hen\nbelievein film</w>\nde mean\nau diti\nre start</w>\nchon dri\nâĿ¤ï¸ı ðŁĴĻ</w>\nmcla ren\nga b</w>\nsh um\nau sa</w>\nlewi sham\ny pg</w>\nk jv</w>\nfur nished</w>\ndor o</w>\nbon ded</w>\nmor ty</w>\nlat itude</w>\n_ )</w>\nlo va</w>\nwater ways</w>\nvin ai\nshor th\ndrun k\nc ay</w>\nay ana</w>\nkap lan</w>\ncapp uccino</w>\nspr o</w>\nlife boat</w>\nhas bro</w>\nspol ice</w>\ntor on\ndo ing\ndam n\nsh ree</w>\nfoun tains</w>\nent ation</w>\nmar u\nboar der</w>\nto pless</w>\nj ada</w>\nchan ning</w>\nul ls</w>\nen closure</w>\ngib son\nfractu red</w>\nbrit ton</w>\nÃ ¶</w>\nt ous</w>\npor th\ndra f\ntra iling</w>\nmar gate</w>\neli fe\ndown ward</w>\nlin n</w>\ngla des</w>\ngirl power</w>\nak rish\nu ki\nron da</w>\nts c</w>\nappreci ationday</w>\nvis ing</w>\nlo om\nðŁį ³</w>\nmex ican\nar gos</w>\ny ya</w>\njad ine</w>\nsouth port</w>\nd end\nsi sta</w>\nrede em</w>\nmen g</w>\nbra xton</w>\nantioxid ant</w>\ns key</w>\nmp g</w>\nfin ding\nvibr ation</w>\nce u</w>\nkh art</w>\ndi mini\ncl ine</w>\nshel ly</w>\nhin es</w>\nī ï¸ı</w>\nto pical</w>\nno ver</w>\nma xx</w>\nprim itive</w>\nillustr ate</w>\nb ounds</w>\ntren ton</w>\njoin tly</w>\nbreed ers</w>\nu chi\nwakeup america</w>\nb ada</w>\nðŁĹ £ï¸ı</w>\ngu acam\nsp heres</w>\npere gr\nyouth ful</w>\nlo lo</w>\nbir min\nt ly\njeremy corbyn</w>\ndefe cts</w>\nco sm\na rent</w>\nv aa</w>\nbag els</w>\nmedi ac\ncori ander</w>\nic ago</w>\ng haz\nab bas\nre model</w>\nstruc turing</w>\npu m\nout law\nad ani</w>\nr bc</w>\ngul ls</w>\nn li</w>\nconfu se</w>\nðŁĳĩ ðŁı¼</w>\nvil a</w>\nmcnam ara</w>\ncorrec tions</w>\nmug hal</w>\nser i</w>\nre gain</w>\nss b</w>\nlea ve\nhaha hah\ngran de\ndi stressed</w>\nre chargeable</w>\nho a</w>\nhou sed</w>\nsti l</w>\nattribu ted</w>\nopath ic</w>\ndi ps</w>\npri t</w>\nhead phone</w>\nconclu de</w>\npil o\nhe t\nut sa</w>\nnit in</w>\nje m</w>\nsni ppet</w>\ntutor ing</w>\nop er</w>\nsun k</w>\nen sla\ncha u</w>\nac orn</w>\nquinte ss\nran kin</w>\naffili ated</w>\nour lives</w>\ncl int\nse ater</w>\nisa ac\nba shing</w>\nsme ar</w>\nnur se\ndoo dling</w>\n\" ;</w>\nsa ku\natroc ities</w>\nim am\ng fs</w>\nviol ating</w>\ncomm end\nbrad shaw</w>\ner ville</w>\nb illed</w>\nb be</w>\nthul hu</w>\ni phones</w>\nmoo se\ndi os</w>\nre w</w>\nme thane</w>\nstrang ely</w>\nwhis ky\nti ghtly</w>\nspiel berg</w>\nradi us</w>\nnotic ing</w>\nwi f</w>\nig nati\ni fa</w>\nap is</w>\nw ali\nha itian</w>\nbu shes</w>\ny z\nv l\nex ited</w>\nasse l</w>\ntru ec\ndom en\nash er</w>\nin king</w>\nnewyear seve</w>\nhend ricks</w>\nbat i</w>\nìĿ´ ì\nrich ter</w>\nmon santo</w>\ncon line</w>\nagre at\nðŁ¤ ¯</w>\nmaster pieces</w>\nar n</w>\nrough s</w>\ncle ve\nse v</w>\nfashi ons</w>\nto ya</w>\nsh ail\ncop eland</w>\naqu ari\ndec als</w>\nare you\ny aya</w>\na str\nfon t\nml m</w>\nar ca</w>\npp or\npol lock</w>\nxper ia</w>\nconserv ation\nchain saw</w>\nag gie</w>\n?! ?!?</w>\nsi le\nsh on</w>\nìĹ Ĳ\nnote books</w>\nmarque tte</w>\nde us</w>\nbb led</w>\nspic er</w>\nmc cabe</w>\nnor wich\nmodi fication</w>\nboo sted</w>\nstru m</w>\nsales man</w>\nbang le</w>\nnis san\nhez bollah</w>\nbrea sts</w>\na af\nanth us</w>\nsk er\now ed</w>\nher os</w>\ngi fs</w>\nfo sters</w>\neat ers</w>\ndu es</w>\n_ /\nlymph oma</w>\nsf am</w>\nme gal\nafri di</w>\nag ic</w>\np amp\njeal ousy</w>\nðŁĳĮ ðŁı¼\ncalcul ate</w>\nnapp ing</w>\ng ale\nðŁ¦ Ħ</w>\nlub bock</w>\nassu med</w>\nren ting</w>\níĥ ľ\nsubur b</w>\nãĤ ·\ntech nic</w>\nu cla\nin front</w>\ngar net</w>\nster oids</w>\nstri ving</w>\nho war\nmo ver</w>\nle ton\nbull do\nis in</w>\nci ao</w>\nsn z</w>\nfore front</w>\nd ams</w>\nmid wife</w>\nma wards</w>\ncla pton</w>\nwe in</w>\nsubsi dies</w>\nspr oud</w>\nrother ham</w>\nphan tom\nar ach\nspi el</w>\nrac ket</w>\nsel amat</w>\nno on\nl bc</w>\nenti ally</w>\nðŁĴ ¸\nsil ve\nm oud</w>\nkine tic</w>\ny asi\nðŁİ ©</w>\no ol\nmi ku</w>\ni za</w>\nfer a</w>\nflo ren\nbarber shop</w>\ngroo t</w>\nz est</w>\nne ars</w>\nstan is\nz and\npolice man</w>\njuris dic\nform ations</w>\nappar atus</w>\nsp d\narti fact</w>\nto sc\nmotiv ating</w>\nwomanc rush\nre dro\ndiagno stics</w>\nra za</w>\nout fitters</w>\nel xn</w>\ndod gy</w>\nry n</w>\nsh d</w>\northo don\nol de</w>\njay anti</w>\nbal ances</w>\nquic kest</w>\ncan ton\nfriday reads</w>\n! *</w>\nna a</w>\na ak\nðŁĶ ·</w>\nbehavi ors</w>\nrasp berries</w>\nä »\npolit ical\ncam il\nå ľ\ndi k</w>\nast ounding</w>\nlie be</w>\nnovel ty</w>\ntur moil</w>\nsul ly</w>\nspring break</w>\nhon ouring</w>\ncc g</w>\nðŁı Ĵ</w>\nmy little\nky c</w>\npro ms</w>\nðŁķ Ĭ</w>\nÃ ¨</w>\nbi ge\nav ril</w>\nðŁĩµðŁĩ °</w>\nmari on\nas ants</w>\nsur ya</w>\noc tag\nluf than\nac ron\nfayette ville</w>\nti que</w>\nlove s\nen ca</w>\nde kalb</w>\nta ver\nde vote\naux iliary</w>\njoh annes</w>\ntread mill</w>\nay an\nqu r</w>\ndonald son</w>\ncher yl\n\" ....</w>\ns ven\nkir sty</w>\ngun ners</w>\nra dish</w>\no ahu</w>\nv sky</w>\ni ble</w>\ncon course</w>\nb ps</w>\nelo qu\nash ford</w>\nte bow</w>\nroblo x</w>\nma da</w>\ndri ving\nth day</w>\nspro ject</w>\nm ms</w>\nband ed</w>\n. !!</w>\nlibr arians</w>\nflan nel</w>\nintoler ance</w>\nher al\nç µ\nneme sis</w>\nlist a</w>\ntar ak</w>\ncry pt</w>\nstar plus</w>\nvish nu</w>\nsc ale\ncr is</w>\n% ),</w>\nj illian</w>\nregg ae\npegas us</w>\nol in\nip ment</w>\nman ic</w>\nl fc\ngodd ard</w>\nite am</w>\nparl our</w>\nanch ors</w>\nlee minho</w>\ntalla hassee</w>\nant it\nd ho\nkid ney\ny ash</w>\nbatt led</w>\naz ad</w>\ngar is</w>\nfaul kner</w>\nsni ff</w>\npapar azzi</w>\ned m\nphy llis</w>\ncon tested</w>\naa ay</w>\nse ca</w>\nk ton</w>\nvel ve\nrain ier</w>\nfor um\ntam pab\nho sp</w>\ntrac tors</w>\nox fordshire</w>\nno tion</w>\nguang zhou</w>\nðŁĺ ¯</w>\nref ill</w>\nwednesday motivation</w>\nsli der</w>\nmukher jee</w>\npr att\nfon taine</w>\nalph on\naf ar</w>\nts i</w>\npest icides</w>\nfi ends</w>\nmo cking</w>\nbra w\ntran sat\ndo ses</w>\nco res</w>\nhom ophobia</w>\ndocu menting</w>\nzlat an</w>\ncon doms</w>\ns Ã©\nsun set\nkun st</w>\nton ga</w>\nà¸ ª\nv ation</w>\nsp ray\nchow der</w>\nra ps</w>\npalla dium</w>\nnor wood</w>\nmusic history</w>\nhoo ker</w>\nsi si</w>\nosp rey</w>\nph ys</w>\nconce ded</w>\nbob cat</w>\nar mad\nze it\nÙ Ħ</w>\nðŁĺģ ðŁĺģ\nmer idi\nðŁĩ· ðŁĩº</w>\ncorn wall\n! ),</w>\ntouch downs</w>\nze it</w>\nchal et</w>\nmm m\nal che\ngor illa\nfo ss</w>\nati ku</w>\nlumin ous</w>\nivan ka</w>\nbe ek</w>\nsta res</w>\nsw iss\nâĿ¤âĿ¤ âĿ¤âĿ¤\nscru bs</w>\nme ath</w>\ngusta v</w>\njo gging</w>\nconfe tti</w>\nas os</w>\ners fc</w>\nbreit bart</w>\napplic able</w>\nautho red</w>\nya ho\nh in</w>\ndisplac ement</w>\nj v\nðŁĮ¹ ðŁĮ¹\not c</w>\nnon profits</w>\ndiec ast</w>\ngu sto</w>\ninte stin\nc ages</w>\nme en\nlu kas</w>\nmoon ey</w>\nðŁĺ ·\nvery day</w>\ntor ah</w>\nis sion</w>\nwa c</w>\nlever aging</w>\nish able</w>\ncu se</w>\nle wood</w>\nmay an</w>\nturn table</w>\nju ice\ntru sty</w>\ntu p\neti quette</w>\nsupervis ors</w>\nstu n</w>\ngu zman</w>\nconfe ren\nric o\nfe ast\nback ward</w>\npol aris</w>\nmic he\njo g\nh ing\nfield house</w>\nvel ing</w>\nsho cker</w>\nesc ence</w>\nà¤ ¾\nvi be\nanasta sia</w>\nmar ched</w>\nkill ing\nĶ ë\nfe tt</w>\nexop lan\n... (</w>\nsnow day</w>\nlo h</w>\nir ani</w>\nla khs</w>\ndel a</w>\npo caly\nboom ers</w>\ndictat orship</w>\nac er\ntur keys</w>\nquarter final</w>\nmuskete ers</w>\nðŁĴĽ ðŁĴļ\nsf x</w>\nmuseum week</w>\nsc ala</w>\nri sis</w>\n( ðŁĵ·</w>\nãĢ Ĥ</w>\nz ies</w>\nbo eh\nhu es</w>\nlu sci\ndol a</w>\nimpeach trump</w>\nroo d</w>\ndon caster\ntor re</w>\nhero es\nfo yer</w>\ntar i</w>\nblur red</w>\nke w\nfrank ly</w>\ndro id</w>\nap al\nÐ ¼\ny af\nbre t\npar agu\ncac ao</w>\nðŁĻĮ ðŁı¾\nru e\nhead aches</w>\nshaw ty</w>\nchar ley</w>\npal er\ngo wns</w>\ncorrec tional</w>\nðŁĺ© ðŁĺ©</w>\nbreaking bad</w>\nol ing</w>\nda p</w>\nendeav our</w>\ncit adel</w>\ntra d</w>\nincumb ent</w>\nmedit ate</w>\nfoo ted</w>\nðŁĴ µ</w>\nshab bat</w>\ndayof the\nwil lem</w>\ngal way\nto red</w>\nmarri age\nf illion</w>\nsleeve less</w>\naud itor</w>\njin young</w>\ninvin cible</w>\nkad una</w>\na and\nvolcan oes</w>\nmon eti\nindie gogo</w>\nbuccane ers</w>\nðŁĳī ðŁı½</w>\nãĢ Ĥ\nlay ton</w>\ncuck oo</w>\nhu mber</w>\nbuzz er</w>\nÏ ī</w>\nto re\nstra ins</w>\nsto m</w>\npa ine</w>\ns we</w>\ndu ff\nz ou\nsi mi</w>\nli pp\nur n</w>\nse agu\nðŁĶ ®</w>\nsun dae</w>\nhi c</w>\nðŁĺ ¨</w>\nbull pen</w>\nu per\nflyo ver</w>\nal dridge</w>\nglo bes</w>\nali es</w>\nken zie</w>\nge es</w>\ny cle</w>\nsp lin\nmag enta</w>\nj ha</w>\nbal u\ngh orn</w>\nti pper\nwick er</w>\ntaste of\ncon clave</w>\nch ale</w>\ninv asi\ncat er</w>\ndio xide</w>\nme gab\nwin n</w>\nat p\ntransform ative</w>\nnest led</w>\nhi g\nbri dging</w>\nlil ies</w>\nchee red</w>\nbad dest</w>\nsc rolls</w>\nreal is</w>\ndipl o</w>\nðŁĶ «\nconce ssion</w>\nprefe rences</w>\nexplo des</w>\ner gon\nintroduc tory</w>\nine au</w>\nch af\nsom es</w>\nland rover</w>\nspir ation</w>\nsex y</w>\nsco recard</w>\nillustr ates</w>\nsoul mate</w>\nwi en</w>\ninter disciplinary</w>\nfore casting</w>\nent ities</w>\nglu ed</w>\nen lar\ncur t</w>\npercep tions</w>\nboot leg</w>\nmi re\nasho k</w>\nv az\nhor ne</w>\ncal le</w>\nac ulture</w>\nther oy\nnight time</w>\noc al</w>\ncharacter design</w>\nar mist\nðŁĺı ðŁĺı</w>\nyah oo\nac eae</w>\nto se</w>\neven to</w>\nsou t\nnay anth\nwh om\nv are\nri gging</w>\ngen us</w>\nhi ve\ncom mands</w>\nsti e\nday a</w>\nethan ol</w>\nen f\nhi fi</w>\nflu ence</w>\ncle mson\nre invent</w>\nthermom eter</w>\nhumor ous</w>\nemer ging\naci Ã³n</w>\nðŁĺĺ ðŁĺį</w>\ns ity\nhaw ke</w>\naccompan ying</w>\nt ility</w>\nðŁĺ ª\nre cess</w>\nprotag onist</w>\nl ery</w>\ndun dal\nint l\nbritt any\nq bs</w>\noff the\nmarri ages</w>\nhow to\nviol ated</w>\nadel aide\nwit t\nlanc er</w>\npak v\nhu me</w>\nst ade</w>\nbra gging</w>\nou tright</w>\nad c</w>\nsuper st\nreal time</w>\ncu res</w>\ngarden ers</w>\nero ck</w>\ndale jr</w>\nver o</w>\nbar tol\nmo ti\nmc fly</w>\nv pn</w>\nst ink</w>\nover rated</w>\nguer ra</w>\ne tis\nath ome</w>\ntwd family</w>\nth ab\ntn x</w>\nrafa el\nfamily travel</w>\nx ley</w>\nsat anic</w>\nequ ations</w>\nru dy\nwal dorf</w>\nstan i</w>\ntu be\nmeas les</w>\nzimmer man</w>\nobli gations</w>\ni ously</w>\nbow ser</w>\ntrans former</w>\nsho ppe</w>\nshak en</w>\ngh ouse</w>\nto d\nke tball</w>\nshare holder</w>\nmar ca</w>\nkp mg</w>\nak an</w>\ngiven chy</w>\ncoast al\nau th</w>\nroller coaster</w>\nmar ches</w>\ncoordin ate</w>\ncine ma\napprentic es</w>\npar lor</w>\nmit o\nmen on</w>\nconsider able</w>\nbar re</w>\nglo ss\nenh ances</w>\njaz eera</w>\nfal mouth</w>\nthra sh</w>\nstat en</w>\nk zn</w>\neng el\nsamanth ap\nflo ppy</w>\nsal om\nðŁıĨ ðŁıĨ</w>\nw ack</w>\ndeliber ate</w>\nosc ill\nherit ag\ndu sted</w>\norni thology</w>\npad dle\nfer ns</w>\nbar un\ncl ans</w>\nanticip ate</w>\na ay\nmat ically</w>\né ĩ\ntu mble</w>\npost man</w>\nunic ef\ntro tter</w>\nop d</w>\nleaf let</w>\nge ist</w>\ncease fire</w>\nscre ws</w>\ncre ation\nwal nuts</w>\nlongh orns</w>\nunder statement</w>\nab b</w>\nproxim ity</w>\nna x\nun ity\nturn pike</w>\norda ined</w>\ndub step</w>\nchak ra\nme ch</w>\nlove her</w>\nlook alike</w>\ndonne in\nvir on\nÙ Ī</w>\nbang ers</w>\nvari ants</w>\nout dated</w>\nin ta</w>\ncri sto</w>\nsp elt</w>\nfood and\nf on</w>\nstefan i</w>\nmargin al</w>\nhu tton</w>\nti ara</w>\ntel ford</w>\nqu en</w>\nfair grounds</w>\nque tta</w>\nmikha il</w>\nheal er</w>\nv ball</w>\nty re\nunder grad</w>\ngl end\nhom ers</w>\nscri bed</w>\nmain tains</w>\npo che\nmis sal</w>\nmar ko</w>\nu as</w>\nÃ¡ n\nsh p</w>\ncon vey</w>\npad re</w>\nsab a</w>\npu glia</w>\nmadhu ri\npa xton</w>\nchap lain</w>\nn ago\nca si\n... !!!</w>\nfli rt</w>\nsal eh</w>\nk are</w>\ndi re\nstam ped</w>\nextre me\nðŁĺĥ ðŁĺĥ</w>\nho ppy</w>\nguadalu pe</w>\nadvant aged</w>\neu char\np low</w>\nun n</w>\nmac qu\nport land\ncla sh\npe s\nlou bout\ny p\nkeep ing\narca dia</w>\nfran kie\nfi u</w>\nde th</w>\nencyclo pedia</w>\nsi ze\ninve sts</w>\nðŁį ©</w>\ngeo logical</w>\nfran Ã§\ncon front</w>\nðŁĺ ¥\nd ys</w>\naf m</w>\ntex an</w>\ngraph ene</w>\nrepost app</w>\nac f</w>\nur sula</w>\ngaz a\ndd led</w>\nfu m</w>\nwsb tv</w>\nm be\nfron tiers</w>\nchrono graph</w>\nke s\ninter faith</w>\ntab oo</w>\nspar ta</w>\nwon do</w>\nflori st</w>\nem braces</w>\nca w\nno el\narch ers</w>\nðŁĲ ·</w>\nroman o</w>\nban an\nsh akers</w>\nmelo dies</w>\ngeo thermal</w>\nse phora</w>\nìļ °\nÐ¾Ð ´\npro c\nhand shake</w>\npan de\npopul ated</w>\nslow down</w>\nhor tons</w>\nregistr ations</w>\nun deni\nlan ts</w>\npas sover</w>\nthak ur</w>\nli ef</w>\nadhe sive</w>\npe tal\nmicro scopy</w>\nmemph is\nconfir ming</w>\nair drop</w>\nmesm er\nperce ived</w>\nming le</w>\nlifel ine</w>\ngh j\nworcester shire</w>\npas sions</w>\nach er\nel lar</w>\nah o</w>\nfiren ze</w>\nbar ang\nletter man</w>\nhat field</w>\nlu cha</w>\nje ter</w>\ne shop\nwilliam s\nhoro scope</w>\npre de\neast bourne</w>\ndur ga</w>\ndi version</w>\nal trin\nseis mic</w>\npremi osm\nnar co\nti r</w>\nori g</w>\nor m</w>\nland fall</w>\nci ous</w>\nlin do</w>\nmax ine</w>\nx ico</w>\ntra y\nos wald</w>\nc ba</w>\nric otta</w>\nn cr</w>\nmar au\nà¸ ²</w>\ngladi ator</w>\nch ery</w>\nlun g\nu me\npo psic\nlon ging</w>\ncan als</w>\nta ya</w>\ndecentr alized</w>\nsho pp\npres sures</w>\nmahar aj</w>\neti had</w>\nwal greens</w>\nsucce ssion</w>\nsign aling</w>\nli g</w>\nstaf fer</w>\nnorth korea</w>\ndef ying</w>\nas ma</w>\nde g</w>\nperi meter</w>\noak ville</w>\nm sk\nbalti more\nrece ip\nde ple\nðŁĺŃ ðŁĺĤ</w>\njambo ree</w>\n> .<</w>\nrsp b\npuni sher</w>\nconsider ably</w>\nin tothe\npari sian</w>\nacceler ated</w>\npolye ster</w>\nlow es</w>\nfr ying</w>\nsautÃ© ed</w>\nmou ths</w>\nseychel les</w>\nra x</w>\ngo dis\ndak ota\nhouse wives</w>\nthe me\nmat inee</w>\nblack bird</w>\nye sung</w>\npre fers</w>\npelle gr\nin ated</w>\ntrun ks</w>\nstronger together</w>\nre pet\nre pairing</w>\nped als</w>\ntoler ant</w>\nher r</w>\ndun ne</w>\nindic ation</w>\ndecat ur</w>\nb tv</w>\nexhibit ors</w>\nik on\nfriday motivation</w>\nbra gg</w>\nlive tweet</w>\nal ves</w>\nwomens art</w>\nforeig ners</w>\nwal lets</w>\nmin dy</w>\nlan ey</w>\nbb in</w>\ntv miaw</w>\nlif ter</w>\ntar get\ntam e\ndr ou\nastro photography</w>\nmp c</w>\ng pu</w>\nnord strom</w>\nfric tion</w>\nrun off</w>\nlov able</w>\nsp nfamily</w>\next ingui\nbloo dy\nsch el</w>\narti stry</w>\nsw ish</w>\nscar ce</w>\nph ils</w>\nmax im</w>\npos sum</w>\ncom promised</w>\nsty li\nsc fc</w>\nis sa\nbirmin gham\nsket ched</w>\nangel ica</w>\nordin ance</w>\nje ts\nconqu er\nðŁĺ Ĳ\nonline shopping</w>\ns ori\nreason ably</w>\nnue stro</w>\nar turo</w>\nch l</w>\nbenef ici\nspho to</w>\nwel t</w>\nni kk\nðŁ¤ ŀ</w>\ndan ao</w>\nfor mid\nas se</w>\naf irst</w>\nâľ Ĥ\ngil lette</w>\nas sor\nan onym\nsel ca</w>\nfe mi</w>\nbear able</w>\ny and\nar mory</w>\ncre pe</w>\nceltic fc</w>\nbra vo\nin expensive</w>\nde lec\nge cko</w>\nnew market</w>\nsnow flakes</w>\nkab ir</w>\ncon tra</w>\ncan ning</w>\nmor pho\ngar wal</w>\nðŁĴĥ ðŁı»</w>\nfight ing\nmu tation</w>\nwoo dy\nju gg\ngr aces</w>\npremiosm tvmiaw</w>\nkenne dy\ngu p\nsa e\nop ha\noff spring</w>\nfini sher</w>\nbet ts</w>\nspan ning</w>\nmar j\nh one</w>\nsh ing\ncontin ents</w>\nsamanthap rabhu</w>\nun related</w>\nl acy</w>\nexplo sions</w>\nbenjam in\nsophi e\nno ting</w>\nmicro soft\nas sen</w>\na hoy</w>\ni ker</w>\nho fer</w>\nmo e\nah madi\nyan n</w>\nan ak</w>\nma hi</w>\nbe u\naha h</w>\ncreep er</w>\nbaahu bali</w>\nam at\npri ory</w>\nhaw keye</w>\ndeloit te</w>\nsko da</w>\nprint making</w>\nassemb ling</w>\nmirac ulous</w>\nno ch</w>\nsw o\nleg a</w>\noper ates</w>\nborder lands</w>\neli e\nstron gh\nrep tiles</w>\npir ate\nun fold</w>\nÂ ¯\nqual comm</w>\nun predictable</w>\not r</w>\nrose wood</w>\ndirec tional</w>\ncounsel ors</w>\ncorn ell\nliber ated</w>\nj ad</w>\nir regular</w>\nbulgar ian</w>\nhigh ness</w>\nvodaf one</w>\nsw ild</w>\nmini mize</w>\ngra zie</w>\nà¹ ĩ</w>\nr stats</w>\nstre ep</w>\nome tric</w>\nhumb le\nlu mp</w>\nl ille</w>\nb Ã¼\nhome depot</w>\ntripad visor</w>\nki wan\na via</w>\ner z</w>\nex ico</w>\ndu f\nblu men\nmi zing</w>\nar ma</w>\nin im\ncon stan\nsor a</w>\nju al</w>\nau n</w>\ntw ell\ntren ches</w>\nher a</w>\nr k\npo plar</w>\nrecipe oftheday</w>\nll an</w>\nbhu ban\nshort ages</w>\ning don</w>\nbridge water</w>\nðŁĲ ĺ</w>\nfortn ite\ncam den\nun cture</w>\npro w\ncolon ies</w>\nt ks</w>\nn go\nb hm</w>\nlive pd\nspl ace</w>\nsli ke\nhappye aster</w>\nter rence</w>\nrevol ver</w>\nj ed</w>\nyy yy\noffice of\nm ts</w>\nexist ential</w>\nr ourke</w>\nexplore bc</w>\nsse d\npri est\nvix en</w>\nsi ding</w>\nk pa</w>\na har</w>\nju ic\nob struc\nforen sics</w>\nuk mfg</w>\ncancell ation</w>\nwe ary</w>\nab q</w>\nele c</w>\npri zed</w>\ndeb ts</w>\nme zz\nsalv atore</w>\nm dc\ngre tte</w>\nc gc</w>\nth on\nsnow storm</w>\nts ch</w>\ncook ery</w>\nå ¹\nwa xing</w>\nn acional</w>\nmur s</w>\nra ve\ncap es</w>\nger main</w>\ndri pping</w>\nsub mitting</w>\nome lette</w>\niter ation</w>\naj es</w>\nshim mer</w>\nfu eling</w>\nðŁĩ§ ðŁĩª</w>\nli po\nbo bble</w>\nun follow</w>\nislam ist</w>\nhi ber\ncat s\nagentsof shield</w>\nsen si\n____ _</w>\nster ia</w>\ninst al\nausp icious</w>\nhar row</w>\nover land</w>\nfemini sts</w>\ninst ant\nchar iot</w>\nblind ness</w>\nsp ed</w>\nsc arec\nnu it</w>\nmini atures</w>\nho seok</w>\nglo ck</w>\nfifa worldcup</w>\ne te\ndis m</w>\nwe iner</w>\nex foli\near ts</w>\nà¸ Ķ</w>\nmy art</w>\nman il\niss ant</w>\nform a</w>\nin cu\nbuffal ob\nin tim\nmc cul\nanj ali</w>\npo po\nun doub\nhil a</w>\nfun gal</w>\nthank ful\nfu tur\nen dish</w>\nren ds</w>\nth ar</w>\nshe ff\nring o</w>\nnichol ls</w>\nio wa\npo tom\ncl ams</w>\nãģ Ħ</w>\nacon f</w>\nstadi ums</w>\ndi mp\ndi k\nresiden ces</w>\ndo v</w>\ncaric ature</w>\nseagu ll</w>\nkl m</w>\nconfe ss</w>\nsla pped</w>\ncele b\nturb ines</w>\npp v</w>\nnur ture</w>\nel ab</w>\n.... .#</w>\ntu ff</w>\nde press\nal far\namii bo</w>\ndi spon\ne wing</w>\nque er\nfriend s\nfor re\nâĺ ¼</w>\nsw t</w>\naqu arius</w>\nhead liner</w>\ncur d</w>\nfi gs</w>\no tters</w>\nlove fl</w>\nkare em</w>\ngo vegan</w>\nfri yay</w>\nconsol ation</w>\nat ri</w>\nì§ Ħ</w>\nâĺĿ ï¸ı</w>\npoly ne\ngu ed</w>\no ya</w>\nla us\nintestin al</w>\ncam illa</w>\nscal p</w>\npi r</w>\nleed s\nhorri fying</w>\nbore tum</w>\ndand elion</w>\nfer rer</w>\nell ic\nas x</w>\nso ren\nre loaded</w>\nale ague</w>\nnavig ator</w>\nine tte</w>\nadd ams</w>\nal chemist</w>\nak shay</w>\ndystop ian</w>\nawe c</w>\nn aya</w>\nal isa</w>\nai led</w>\nag or\navi ator</w>\nali zer</w>\nsmo bile</w>\nfindyour park</w>\ncop ying</w>\nto ddy</w>\nsh ti</w>\nmon ger</w>\ncal houn</w>\nnap kin</w>\nbreak up</w>\ny atra</w>\nse thu\nric hi\neras mus</w>\nfer ry\nam ore\nprac tise</w>\nbo bo</w>\npower point</w>\noo se</w>\nli ffe</w>\nchin a\nsh ka</w>\nfad navis</w>\ndu ane</w>\nwar on\nfal se\nðŁļ Ĥ</w>\nwa shes</w>\ndisc ip\n==== ====\ng k\nab b\nstub born</w>\nmedi eval\np ci</w>\nðŁį ª</w>\nmaril yn\nh yo\nman di\ncr i</w>\nprede cess\ncontinu ation</w>\nom usic</w>\ns lat\nwh al\nmall ory</w>\nbon n</w>\nshen zhen</w>\nca i\nâĺ ĥ\nsa fest</w>\nfor wards</w>\ndra wers</w>\nbla sted</w>\nsle e</w>\nmor phe\nmb ta</w>\ndumb ass</w>\nÑĦÐ¾ÑĤ Ð¾</w>\nalhamdulil lah</w>\nec lub</w>\nal beit</w>\nheal ey</w>\nayurve da</w>\nadverti sed</w>\ncro cs</w>\nitt les</w>\nbry son</w>\nbe i\nnj pw</w>\nhonore e</w>\nfu sed</w>\nðŁĶ ĺ</w>\nmul tin\nn aga</w>\nde parts</w>\nko p</w>\nkin o</w>\njhar khand</w>\ned na</w>\nax le</w>\nmil ton\nsupremac ist</w>\nmarrake ch</w>\ndomin ic\ntran script</w>\n] [#</w>\n: ).</w>\nwo c</w>\nsur rounds</w>\no gil\nleaf lets</w>\nco well</w>\nwhe w</w>\ntru de</w>\nproli fer\nsucce s\nsports man</w>\ncon dom</w>\npo che</w>\nk up\nimprison ment</w>\n{ }</w>\nscram bled</w>\nå Ľ\nka ine</w>\ncell phone</w>\nmetam or\ncon i\nremn ants</w>\nee z</w>\ndown pour</w>\nafterno on\nexerc ising</w>\nber ser\narchitec ture\nwick low</w>\nm ns</w>\nis p</w>\nbo c</w>\nn iss</w>\nmn wild</w>\nstu mble</w>\nr si</w>\nlu ffy</w>\nsil en\ndd ad</w>\nbul lies</w>\nhaw ker</w>\nbb cc\nscu ba\ne pp\nque ts</w>\nfor aging</w>\npal let</w>\nha di</w>\ncinemato grapher</w>\ncat chers</w>\nto aster</w>\nk hi\nlite coin</w>\nkid lit\namher st</w>\nmaur icio</w>\nip ad\nmar malade</w>\nfe y\ndon nelly</w>\ng to</w>\nest as</w>\ncere bral</w>\nant grasso</w>\nzz led</w>\nvir gil</w>\nswa pped</w>\nðŁĺħ ðŁĺħ</w>\nno dapl</w>\ngreate st\nnhl bruins</w>\nfra ser\nb mo</w>\nane w\n. âĿ¤ï¸ı</w>\nse gregation</w>\nremark ably</w>\nmccor mick</w>\nlo gger</w>\ner as</w>\ncontrac ting</w>\nâłĢ âłĢ</w>\nyor ks</w>\nuku lele</w>\ntouch screen</w>\nde cked</w>\nben n</w>\nsouth wark</w>\nra vin\nnu mis\nðŁ¤ Ļ</w>\nru t</w>\ngre co</w>\neth ic</w>\nred neck</w>\nar r\nt cs</w>\nih ri\nðŁĩ« ðŁĩ·\nl k\ninher ited</w>\nzy k</w>\nviadu ct</w>\nmarty red</w>\nhi gu\nss n</w>\nbe in\nstreet style</w>\nfer gie</w>\nbank of\næĹ ¥\nstake holder</w>\nexempl ary</w>\ncre ss</w>\ness a</w>\nero tica</w>\nintre pid</w>\ngom es</w>\nbra un\nbethan y\nbang tan</w>\npulmon ary</w>\nm illing</w>\ndoctor ate</w>\ntrump russia</w>\nà¤ °\ns ani\nbl att</w>\npla u\ndepri ved</w>\nt le\nful ly\nbour n</w>\nst ak\nlufthan sa</w>\nkio sk</w>\nfar oo\ndef y</w>\nbad an</w>\nðŁĺĺ âĿ¤ï¸ı</w>\nrit z\ntri sha</w>\nran ds</w>\nmiddle sex</w>\narab s</w>\npro j</w>\nsport scenter</w>\nrepe ats</w>\niv f</w>\nbleed blue</w>\nas sure</w>\no bs</w>\nterrit orial</w>\nele n</w>\nbever ley</w>\nann ah\nâĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ıâĿ¤ï¸ı\nz l</w>\nfor good</w>\nscience fiction</w>\ngla u\nson ya</w>\npri th\nst weets</w>\nmix ers</w>\nmari o\nant elope</w>\nwriting community</w>\nwent z</w>\nden ham</w>\nbe di</w>\nsf o</w>\nharley davidson</w>\nlook book</w>\nimmuno therapy</w>\nor phe\nes ville</w>\ned ged</w>\ntas k\nsb ball</w>\ncorro sion</w>\nkilom eters</w>\nco sting</w>\nplay back</w>\nke ke</w>\ndi visi\nu ter\nre location</w>\nyel led</w>\npen g</w>\nup beat</w>\nser ve\nâļ ł</w>\nhal en</w>\nstir ring</w>\nreh man</w>\nen v</w>\nschu macher</w>\nfrag ment</w>\nalkal ine</w>\nsb k</w>\nresil i\nshare point</w>\nrol lover</w>\ntra sh\ncounter part</w>\nâĻ «\nob itu\nà ½\nãĤ ¹</w>\nmul berry</w>\nðŁİ Ĩ</w>\nauton omy</w>\nspra ying</w>\nnat l\nlove you\nfran ki\nnu k</w>\nesc ar\ncan teen</w>\nali baba</w>\nde plor\nmole cule</w>\npu d\nfort night</w>\nblon die</w>\nsp hin\nportra yal</w>\nta che</w>\nbu te</w>\nconsi sting</w>\nfreep alestine</w>\nc sp</w>\nim mort\nd ns</w>\nðŁĴ¥ ðŁĴ¥</w>\ntour de\ncoo king\narchi val</w>\nga thers</w>\nbit t</w>\nb anc\npre mature</w>\nsnow ball</w>\npoetry day</w>\nlou dly</w>\nfug itive</w>\ned ay\nem ra\nðŁĩ¸ ðŁĩª</w>\nsci en\nnode js</w>\njur gen</w>\nje ong</w>\nband ana</w>\nun is</w>\nfox sports</w>\nv andy\npro visions</w>\nwee p</w>\ntu k\ni ko</w>\nh oun\nzig gy</w>\nz r</w>\nfil let</w>\nbat a</w>\ntin k\ncon e\nwe want\nk ilo\nhor ace</w>\nsl t</w>\nsc t</w>\nstay tuned</w>\nvictor ia\numb ria</w>\natt acker</w>\ningham shire</w>\nfright ening</w>\nno ir\nfr at</w>\ncon tempt</w>\nlia ison</w>\nho i\nbr ink\ntr ill</w>\nni agar\nkick ass</w>\ndun das</w>\nnot my\nrho de\nbu mble</w>\nno xi\nfa g</w>\nspec tators</w>\nmancrush monday</w>\njin ping</w>\ndistr act</w>\ndais y\nwal den</w>\nportra it\nar thistory</w>\nvol tron</w>\nev el\nis c</w>\nac m</w>\nr ite\nna o</w>\nde ported</w>\nswe ats</w>\nru fus</w>\nlo bo</w>\nlabor day</w>\ngam o</w>\nihri thik</w>\nbl it\nabdomin al</w>\nãħ¤ãħ¤ ãħ¤ãħ¤\ni it\ne q\nbu sy\nallu arjun</w>\nun disclosed</w>\nde ton\npro create</w>\nki l</w>\nðŁİĤ ðŁİĤ\nmitch ell\nki i</w>\ninherit ance</w>\nal p</w>\njo burg</w>\npat rolling</w>\ncompul sory</w>\nun signed</w>\nni am\nl ga</w>\neshop suk</w>\ntr illi\nma w\nappreci ating</w>\nrock ab\nmaÃ± ana</w>\nan tal\nmal vern</w>\nroy o</w>\ngrand prix</w>\nsut ton\ngo ftheday</w>\ndig i</w>\nãħĭãħĭ ãħĭãħĭ\nt les</w>\nvaran asi</w>\nerec ted</w>\ndiscip les</w>\ncont act\nðŁĺ µ</w>\nli d\nâ¬ ĩ</w>\nscen tre</w>\nradi ator</w>\ning tips</w>\ntrans itions</w>\nthursday motivation</w>\nchem ical\nsepar ati\nsal is</w>\nmi m</w>\ngeo graphical</w>\nbook fest</w>\n/ .</w>\nâľ ĭ\nv ae</w>\ncur rie</w>\nag garwal</w>\nacceler ation</w>\nthe ses</w>\nlg m</w>\nu mass</w>\npro portions</w>\nnat a</w>\nani ans</w>\nku ch</w>\nbe acons</w>\nap r\n@ #</w>\nðŁĴª ðŁı¾</w>\nnu ke</w>\nsher aton</w>\nki o</w>\nma kati</w>\npolit ico</w>\nmor ale</w>\nì Ļ\neconom ically</w>\ngg ly</w>\nss en\npa stries</w>\nintern ships</w>\nvic ente</w>\nfanta ken</w>\naveng ers\naccu se</w>\nslee pover</w>\nindic ated</w>\nthe dream</w>\nster one</w>\nren ders</w>\nfro st\nou i</w>\ngre gg\nd ore</w>\nâľ¨ âľ¨âľ¨</w>\npu gs</w>\nsat y\nnu mb</w>\nhems worth</w>\ntam i</w>\nla ssic</w>\nschi ff</w>\nigle sias</w>\nag awa</w>\n] \"</w>\nre shi</w>\ngame stop</w>\ndivor ced</w>\ntheat er\nclau di\nun conventional</w>\nprophe ts</w>\nac in\ntwel f\ntow ering</w>\nt ml\nsc lerosis</w>\nk wan</w>\nge ts\ndistur b</w>\nna ira</w>\nener g\npir acy</w>\npru itt</w>\nnoti fied</w>\nhen na</w>\nbra m</w>\nground water</w>\nbl s</w>\nopti mis\n$ )</w>\nluci e</w>\nbiz hour</w>\nfang irling</w>\ngr ills</w>\nor l</w>\nver se\nc ina</w>\nlaw less</w>\nartistson twitter</w>\ntele vised</w>\nmarshmal lows</w>\nradio head</w>\nbar r\nm fc</w>\nbre vi\nmmor pg</w>\ng aya</w>\nâĸ «\nsub titles</w>\nj t\ndisney land\nto bago</w>\nnh m</w>\ngroo ve\nfi awec</w>\n\" /</w>\nba o\nscra bble</w>\nom ni</w>\nff l</w>\num c</w>\nsi mba</w>\nali er</w>\nter rell</w>\nplu me</w>\nmi di\ndig nit\nco c</w>\nbru t</w>\nad ata</w>\nalche my</w>\nd sm</w>\nðŁĺĨ ðŁĺĨ</w>\nwin try</w>\nspa res</w>\ncu er\nconclu sions</w>\nto ys\nod or</w>\nfl ann\ngar vey</w>\nscrip tions</w>\ninspec tions</w>\ncat ap\nang lo\nst louis</w>\nheim er</w>\nat ay\ntr ich</w>\nen yc</w>\nchil ds</w>\nvent il\nmont p\nguiller mo</w>\ncircu lare\nz ell</w>\nmode led</w>\ncraf tsman</w>\nal ina</w>\nstimul ation</w>\ncashe w</w>\nju das</w>\nbest of</w>\nto ire</w>\nsusp ends</w>\nscol lege</w>\nreal ising</w>\nby tes</w>\nbloo ds</w>\nas si</w>\nðŁĴ ¿</w>\no hs</w>\nðŁį ĭ</w>\nscallo p</w>\nà¤ µ</w>\ngi fting</w>\ncamo gie</w>\nwil kes</w>\no zzy</w>\nðŁ¤ ¤\nver onic\nsav oy</w>\ndeme tri\nbaby girl</w>\nðŁĺį ðŁĺŃ</w>\nso x\ncly de\ninduc tee</w>\ncount down\nself care</w>\nà¤ ľ</w>\nvi ka</w>\ntor re\nphd chat</w>\npe ars</w>\naw h</w>\nsuff rage</w>\nle sn\nadmir ation</w>\nmp p</w>\nshark week</w>\nschul z</w>\nsantor ini</w>\nclo ver\n( *</w>\nstras bourg</w>\nex iting</w>\nso yu\nfinger print</w>\nche a</w>\nãĢ ľ</w>\nvin dic\nsong writers</w>\nso a</w>\nprou der</w>\nnam a</w>\n= ))</w>\nsimple st</w>\ndelici ously</w>\ngil les</w>\nu q</w>\nmn wx</w>\nep p</w>\nsh un</w>\nken nel</w>\nfall on\nðŁĲ £</w>\nsin d\ntra gically</w>\nout es</w>\nmodern ism</w>\nco ke\ngy n</w>\nspi on\nâĺ¹ ï¸ı</w>\nle am\ncompress or</w>\napolog ise</w>\ntwent yon\nfan atics</w>\nâĻ »\nsco tsman</w>\nsa wa</w>\nko u</w>\nas er\nà¸ ļ</w>\nwelter weight</w>\nphen om</w>\ntwick enham</w>\nstri a</w>\np out</w>\nka z</w>\ngi am\ncd p</w>\nho y\nemplo y</w>\nred mond</w>\nà¸ Ħà¸\nsm ere</w>\ntrance family</w>\nproto cols</w>\npie ce\nlu iz</w>\niter acy</w>\ncarl s\nunited states</w>\nhar med</w>\nphd life</w>\nch aw\nfoot prints</w>\nl Ã©\ncho ker</w>\nz ana</w>\nsli pper</w>\neric sson</w>\ninsul ting</w>\narticho ke</w>\nadvis ing</w>\nacquis itions</w>\nop or\nmut ations</w>\nre ar\nà¥ ģ</w>\npod cast\nwi ther\nkun g\níĺ ¸</w>\nwin slow</w>\ndi apers</w>\nðŁĵ¸ @</w>\nec ker\ncol lar\nhu ey</w>\ngi ro\nmono gram</w>\nkas ich</w>\nsi veness</w>\nmalay si\narom atic</w>\ngre s</w>\ngali leo</w>\nu ji</w>\nrob b</w>\ndr m</w>\nnone theless</w>\nas a\n: ></w>\nlo a</w>\nl np</w>\nat work</w>\nag t</w>\nlaksh mi</w>\npipel ines</w>\nid al</w>\nstre l</w>\nre all\nchain z</w>\nstone wall</w>\nsan sk\nðŁı ´\npied mont</w>\nhoste ss</w>\nci u\nt Ã©</w>\nanaly ses</w>\nwil helm</w>\nscott y\nrw by</w>\nmosqu it\nuse mb\nqu ins</w>\nðŁĳ İ\ntu cker\ns conf</w>\nspeci fications</w>\npsychi atry</w>\nbroo kes</w>\ns ils</w>\nol af</w>\nde to\nco di\ncli p\nfil th</w>\nwomancrush wednesday</w>\ngo to\nang erous</w>\nbe ale</w>\nw tc</w>\npaneli st</w>\nne x</w>\nlar sen</w>\nemili o</w>\ntab leau</w>\nh itters</w>\nconce ived</w>\nameric ani\nor tega</w>\nmar di\nÑ ĥ\npain tball</w>\nthir sty\nnew yorker</w>\netis ation</w>\ngo ss\nwe aker</w>\nu gh\ntro ll\nhar ga</w>\ndu al\nght ning</w>\nat ine</w>\nðŁĺİ ðŁĺİðŁĺİ</w>\ncook out</w>\npyrene es</w>\npo ss</w>\nauthent ication</w>\nsports wear</w>\nyun ho</w>\nkir o</w>\narchi pel\nshen ko</w>\nren der\nnov ation</w>\ndivin ity</w>\nðŁĳ £</w>\nsu fi</w>\nhumb ling</w>\nge opol\ndevote es</w>\nwait ress</w>\ntr ough</w>\npy ro\ni ba</w>\nbl ing\ngra f</w>\nepilo ts</w>\nbt r</w>\nof tball</w>\nbas king</w>\ndomin os</w>\nso om\nr ath</w>\nsher yl</w>\nqu el\nastronom ical</w>\nwel d</w>\ntrack list</w>\nsig nee</w>\nslee pless</w>\ncom man\nch ron</w>\nsumm on</w>\npure michigan</w>\ncri spr</w>\nsli p\nla gi</w>\nra q\num u</w>\nthal ap\nchar med</w>\nscru mp\nquad copter</w>\nski p\npeter sen</w>\nmun i</w>\nðŁĮ ¾</w>\nmon aghan</w>\ntra ys</w>\nick ed</w>\ncanad aday</w>\nte gr\nï¿ ½</w>\nhot ness</w>\nheavy metal</w>\nab ar</w>\ngop debate</w>\naz ul</w>\nspider man\nsun flowers</w>\nľ ë\nweb comics</w>\nbar d\nÐ ²\nnichol as\nslu sh</w>\nram an</w>\nmark ham</w>\nffici al\nff ler</w>\níĬ ¸</w>\nple ss\nanush ka</w>\nto to</w>\nsk aters</w>\npro wrestling</w>\ncompet es</w>\nay ala</w>\nmyster y\nthr ills</w>\nmp g\nindepend ently</w>\ny ul\nimper ative</w>\nformid able</w>\ntire less</w>\nst acking</w>\nton gues</w>\nmal tese</w>\npot ts</w>\nmat ti\nchar ting</w>\nchill out</w>\nsuper nova</w>\nome o</w>\nsky sports\nnu tty</w>\nðŁĹĵ ï¸ı</w>\nro han</w>\ninsp ired\nconcier ge</w>\nser ra</w>\nma kk\ngal at\nchi pp\nye v</w>\nì £\nreim bur\nop ul\nkimber ley</w>\ni eee</w>\nbre men</w>\nch itec\nor in</w>\nnak u\nbon kers</w>\nfoo ty\nemer gence</w>\nðŁĨ ĺ</w>\nsti p\nserge i</w>\nzo ey</w>\nai me</w>\nwou ld\ndy es</w>\ndestin y\nvinai grette</w>\ndri er</w>\ncirculare conomy</w>\nan archi\nss r</w>\nsch el\ncin er\ngro om\ndetermin ing</w>\ngar min</w>\ncal ais</w>\nincarcer ation</w>\nbu kit</w>\nno i</w>\nchelms ford</w>\nmckin ley</w>\nchi pped</w>\nbelong ed</w>\ntu mors</w>\nstr oud</w>\nmi i</w>\ninfluen za</w>\nwwen xt</w>\ntun dra</w>\ntele communications</w>\ncat sofinstagram</w>\nt ages</w>\nbeat ty</w>\no du</w>\nml kday</w>\noo per</w>\ndang le</w>\nak ley</w>\ncru mb</w>\nanti gua</w>\nti mbers</w>\nrou hani</w>\nðŁĴª ðŁĴªðŁĴª</w>\nha fi\n... !!</w>\nw cs</w>\ncoo p\nsn c</w>\nlit res</w>\nãĢ Ĭ</w>\nha z</w>\nco z\nk ant\ngreen field</w>\ncur ti\ny ale\nflye agles\nwhat soever</w>\nwor thing</w>\nrou lette</w>\nflyeagles fly</w>\nun da</w>\na inted</w>\nstand ing\nlusci ous</w>\nh pc</w>\neffic acy</w>\nash land</w>\nme ghan\nky wx</w>\nn pr\nbath tub</w>\nac os</w>\nh ani\nmar cor\nman tis</w>\nda isi\nbo ba</w>\nab bie</w>\nmu til\nvi al</w>\nspy der</w>\npo z\ng ti</w>\nel fie</w>\nnigh tw\nmetro id</w>\nanton i\nmad die\ndh ry</w>\ndar lings</w>\nten ds</w>\ntaek wondo</w>\natlan ta\nme ow\nchlo e\nãĥ İ</w>\nym es</w>\nsiber ia</w>\nk con</w>\ngu es\nmar iner</w>\nfac il\nazz le</w>\n[ ...\nhan nover</w>\nbav aria</w>\nvir go</w>\nte uk</w>\nu sps</w>\n) #</w>\nwall a</w>\nsam pson</w>\nneed less</w>\nver bally</w>\nhay ley\nbow led</w>\npi us</w>\nlam pard</w>\nham string</w>\nvol vo\nroad safety</w>\ncho king</w>\nsor bet</w>\na hem</w>\nhealthy food</w>\nbrai ded</w>\nhorticul ture</w>\ncr ative</w>\nche ek\nad do</w>\nthe force\nko ko</w>\nschiz oph\nj ie</w>\nw ada</w>\ntwentyon epilots</w>\nh bcu</w>\npro ton</w>\npau ls</w>\nlou isa</w>\nlat am</w>\nkyr gy\ncom pac\nsd k</w>\nsap i\n?? ?\nliber alism</w>\nep silon</w>\nai den</w>\nw usa</w>\nspra yed</w>\nbaske tball\nkim ono</w>\nblue wave</w>\nali as</w>\në§ Ī\nmug shot</w>\nce c</w>\ndo gre\nad ora</w>\nðŁĵ· @</w>\nkra kow</w>\nintrigu ed</w>\nexhau sting</w>\nastron omer</w>\nven ison</w>\nlady bug</w>\nci v\nbra e</w>\nus m</w>\nbri be</w>\nacup uncture</w>\npembro ke</w>\nke ating</w>\nchi e\ny ad</w>\nt si\nsm i</w>\nsee ding</w>\ngate shead</w>\nlis boa</w>\ngy p\ncanv ass</w>\nðŁĶ´ âļªï¸ı</w>\nop i\nni r</w>\nsoci etal</w>\nly te</w>\nati es</w>\nc sm</w>\nar tery</w>\nal in</w>\naka poor</w>\nabstr acts</w>\nâĢ¦ âĢ¦</w>\nteen wolf</w>\nne we\ntravel gram</w>\nsentim ental</w>\nper ched</w>\nhan del</w>\nho ek</w>\nf ay</w>\ncoordin ating</w>\nanim ate</w>\nman ian</w>\neffor t\njer ky</w>\nf ck\nadri enne</w>\nma bly</w>\ntra ding\nmy el\nspi ro\nsol a</w>\nstor ing</w>\nover drive</w>\nmonday morning</w>\ndream team</w>\npul se\nbon di</w>\nber nie\npgat our</w>\ntri poli</w>\nson am\nplat t</w>\nâļ ¡\nag roup</w>\nîĲ Ĵ\ninv ading</w>\nv cu</w>\nk ell</w>\nÃ± os</w>\nun dead</w>\npod casting</w>\nmercede sam\nmana fort</w>\ncor tex</w>\nque so</w>\nimpecc able</w>\npal mer\nwil doz</w>\nsport sc\nguacam ole</w>\ndispen ser</w>\ncate gori\nstun ts</w>\nper il\ninvit ations</w>\ndune din</w>\nxi e\nachi eves</w>\nsaf er\npre ds</w>\nph an</w>\nknuck les</w>\nk ak</w>\nigno res</w>\nlovemy job</w>\naru ba</w>\nound ation</w>\ndatac enter</w>\nco vert</w>\ngr ing</w>\ncou ple\nØ§ Ø±\nvol i</w>\nmc cle\narti sans</w>\nlu do\nkal am</w>\narom a\nunder taker</w>\nhu la</w>\nwiz kid</w>\ngu mb\ngod frey</w>\nbakers field</w>\nker n</w>\nengine er\ncar ve</w>\npal in</w>\nguaran tees</w>\npe bbles</w>\nb ays</w>\nzi eg\nfin k</w>\nâ¬ĩï¸ı â¬ĩï¸ı\ndown pours</w>\nro chelle</w>\nrasp berry\nðŁĺ ®\ngra phies</w>\nstom p</w>\ncaf es</w>\nari zed</w>\nutt ar</w>\ncal vary</w>\ndri e</w>\ncrusad er</w>\nbus an</w>\ntux edo</w>\nsi u</w>\nseam us</w>\ncul tured</w>\nblan chard</w>\ntown house</w>\nge red</w>\nbutter milk</w>\nflu ctu\nroger federer</w>\nhel i</w>\nðŁ¦ ĥ</w>\nu ous</w>\nram esh</w>\nmu ppets</w>\nemail marketing</w>\nye ss</w>\nbr ice</w>\nri zio</w>\npel o\ndonnein arte</w>\nu rable</w>\ninve stin\nbump ing</w>\nraji v</w>\nsav a</w>\nthro wer</w>\nfore x\no hhhh</w>\nth rust</w>\npull man</w>\nr fid</w>\nsep sis</w>\nle ed</w>\nfri ght</w>\nroun ding</w>\nne b\nph ins</w>\nai sha</w>\nutili zing</w>\nsqu ats</w>\ngold smith</w>\nj ic</w>\nbo ks</w>\nvau s</w>\ni po\nexclu sion</w>\ntari ff</w>\npo kes</w>\nmin al</w>\nland s\nen force</w>\nwashington dc</w>\nor char\ng x</w>\nmar ys</w>\ney our\naussi e\nbak ers</w>\nun popular</w>\nlatin os</w>\nlar ge\npu tnam</w>\nbol o</w>\nwa de\npel o</w>\ndi zz\nob struction</w>\nfla ppy</w>\nweare the\ndepend ence</w>\npajam a</w>\ne te</w>\ny ann\ne wan</w>\ndisc la\na ay</w>\nkar ina</w>\ne ic\nan trim</w>\nw soc</w>\nneg atively</w>\nkai do</w>\nfotogra fia</w>\ndh ru\ncolo ssal</w>\nmcle od</w>\nk wang</w>\nmani pu\nex hilar\nus atoday</w>\nsummer slam</w>\nco les\ntapro om</w>\nunbeat able</w>\nde ma\ntic ks</w>\nk ling\nfil s</w>\ncampaig ners</w>\nà¸ ķ\nbrew ster</w>\naudu bon</w>\nqu ay\nch s\nki gali</w>\nd ler</w>\nstrength ens</w>\nsom al\nsign ingday</w>\ngol ds</w>\npig ment</w>\norche stral</w>\ng q\nlin kin\nðŁı ĩ</w>\nta w</w>\nalgar ve</w>\nho v</w>\near le</w>\ngold fish</w>\nam ig\nex er\nben in</w>\ndru id</w>\nðŁĲ ¸</w>\nshe m</w>\nquat tro</w>\nmer cen\nmen te\nincorpor ating</w>\nbon anza</w>\nstate fair</w>\nen de</w>\nconcep tions</w>\ne es</w>\nâĻ¥ï¸ı âĻ¥ï¸ı\nd son</w>\nfire arm</w>\norb ital</w>\nwe h</w>\nmulti p\nfo b</w>\nrequi em</w>\np light</w>\nthou se\nsa id\noc re</w>\nremem brance\nn old</w>\nchi pping</w>\nbe v\ner t\nca thy\nsy m</w>\nri ggs</w>\nm ley</w>\ndialo gues</w>\nsl ender</w>\nhow l</w>\ngau teng</w>\nwd w</w>\nto bi\nsmo kes</w>\nim plo\nb pm</w>\nad n</w>\nmom basa</w>\ncap sul\nbloom field</w>\nartic ul\ncle o</w>\ngoog led</w>\nflu ffy\nl ard</w>\nen zyme</w>\nve sti\nibra hi\nfl ame\ne mea</w>\nout ages</w>\ndispro por\nble ak</w>\nan sel\nick er</w>\nst louis\nstock market</w>\ngood friday</w>\nsau lt</w>\nstal led</w>\npro m\nep som</w>\nb Ã©\nthe se\nsau ces</w>\nme w</w>\nlit fest</w>\npre d\nre u</w>\nkar ak\nsi enna</w>\nell in</w>\nbio technology</w>\nï¸ıâĥ£ -</w>\ntac tic</w>\nsa in</w>\npor k\nmon za</w>\nka j</w>\nlu sh\ncompart ment</w>\nchang ing\nshraddha kapoor</w>\nfo al</w>\nar tem\ncu ando</w>\ncan ola</w>\nori ente\nme sse</w>\nd ited</w>\nbr c</w>\nbox er\nbbc two</w>\ns st</w>\nment day</w>\nem ing</w>\nde wey</w>\nkof i</w>\nâŀĸâŀĸ âŀĸâŀĸ\nreali zation</w>\nsmo l</w>\ntw ood\nsan je\nflag staff</w>\nber wick</w>\ncor set</w>\ncan ary\nwhistle blower</w>\net ched</w>\ncom posing</w>\nsquee zed</w>\nbow er</w>\nauto desk</w>\nne h\nmathi eu</w>\nba ja\nÅ Ĥ\nhy dra</w>\nda im\nam eri\ninsi sted</w>\nmer lot</w>\ngar ros</w>\nheart news</w>\ngaine sville</w>\ncut ler</w>\nbo de</w>\nðŁĺī ðŁĺī</w>\nlew es</w>\nscoun try</w>\ng sa</w>\nus u</w>\ncc m</w>\ngod awgs</w>\nphara oh</w>\ncra e</w>\nmor ley</w>\nhyp noti\nf ades</w>\nneur ons</w>\nfu zz</w>\ning co</w>\nhigh landers</w>\nstar k\nvig ne\npac kets</w>\namar illo</w>\nreu ben</w>\ninsul ts</w>\nbas ic\nvec tor\nn me</w>\nac ruz</w>\ntro s</w>\ntransm itter</w>\nðŁĺ ŀ\ninterpre t</w>\nðŁĺ ²\npre quel</w>\nmc gowan</w>\ndis semin\nðŁĴĺ ðŁĴĺ</w>\nmascul inity</w>\nindie gamedev</w>\nali ve\nte t\npe tal</w>\nema iled</w>\nar med\nko o</w>\nhe er</w>\nba ird</w>\nsuper junior</w>\nmetro polis</w>\ndelav in\ndecl ines</w>\nstit utes</w>\nÛ ģ\np tbo</w>\ng lan\ncho res</w>\ne aling</w>\nchri ssy</w>\nste mc\nvi an\nassassin ated</w>\npron ounce</w>\nilleg als</w>\ndiscover y\ncav ill</w>\nfri fotos</w>\nf al</w>\nso i</w>\nsabot age</w>\nt int</w>\np dc</w>\nðŁİīðŁİ Ī\nãĤ Ĭãģ\nji o</w>\nendeav or</w>\nin sig\ncommit tees</w>\nshe arer</w>\nme tz</w>\nmar rying</w>\nh dd</w>\ng by</w>\nfre t</w>\ntri sh\npu l</w>\nscrip ted</w>\nsa ki</w>\nl w\nke ye\nshim i</w>\nnan aimo</w>\nca h</w>\nÃ «</w>\ntem pered</w>\nici an\ndu gg\ndish washer</w>\nair field</w>\ns rugby</w>\ngr inch</w>\ny st\nr ms</w>\nmahat ma</w>\nlan kan</w>\ndisc ar\ndige stion</w>\nno des</w>\nl ls</w>\nom ic\ngu tter</w>\ntis garh</w>\nfeder ico</w>\nelection day</w>\nbo he\nmaster card</w>\nfire ball</w>\nâľ Ķï¸ı\noy ster\np ong\ndo k\nen route</w>\nm vc</w>\nbeat the\nali stair</w>\nshu b</w>\nsh aming</w>\ncherno byl</w>\nghi bli</w>\nthe s\npin ion</w>\nd bs</w>\nsal ts</w>\nic tion</w>\nepi ph\nnc pol</w>\nin convenience</w>\nwhit ley</w>\ninspec ting</w>\nwood ley</w>\nwi ener</w>\nskil let</w>\nno les</w>\nm ca\nh ina</w>\na sha\nwilling ness</w>\nwell ness\ntam ed</w>\nshow time\ndis advantaged</w>\nber nat\nus n</w>\nmission aries</w>\ncoun selling</w>\narrog ant</w>\nquant itative</w>\nleg alization</w>\nho dge</w>\nenergye fficiency</w>\ncameron dallas</w>\npos sessions</w>\np bb</w>\nharris burg</w>\nv g\nhindu ism</w>\nhappy thanksgiving</w>\nfi b</w>\nre acting</w>\ntweeta picture\npol iti\nmu ppet</w>\nhur rah</w>\npac e\ncoast guard</w>\nguar ded</w>\nas am\npar ry</w>\nfore very\nx q</w>\noom f</w>\nke anu</w>\nj ind\nri st</w>\ncustomer service</w>\nsac red\nðŁĺ º</w>\nton er</w>\noccur rence</w>\nmat u\nval dez</w>\nred d</w>\nis ak\npower rangers</w>\npe asant</w>\nraj ini</w>\nabra ham\ne mil</w>\ncar do</w>\ntr il\nhair styles</w>\nobsole te</w>\nsam pler</w>\ndirec tive</w>\ndelavin kisses</w>\nver ton</w>\nglo s</w>\nsp ay\npaler mo</w>\ncom ets</w>\nman ziel</w>\nchicag of\nski pped</w>\npic torial</w>\nh ant\nb mi</w>\na ol</w>\nre opens</w>\npad dling</w>\ndevo s</w>\nfra ud\nbas eline</w>\nque ues</w>\nsp ired</w>\nsn are</w>\neu ve</w>\ndescri ptions</w>\ndaisi es</w>\nca ching</w>\ngall eria</w>\ntri mmed</w>\nstin o</w>\nrecy cla\nic ular</w>\nbir ken\nraw lings</w>\nfli x</w>\nchic as</w>\nb gt</w>\nlik eli\nargy ll</w>\nthel ove\nga ston</w>\nbl anca</w>\nha k</w>\nf one</w>\nsailor moon</w>\nh aci\nima c</w>\nfl yn\nde can\nbel les</w>\nap ic\nzo g</w>\ntaun ton</w>\ncon stance</w>\nlasag na</w>\nker nel</w>\nin ka</w>\nhar bor\ncollec tively</w>\ncalcul ated</w>\nav ille</w>\nshil pa</w>\npur du\ngi mm\nfun er\na est</w>\npembroke shire</w>\nnighting ale</w>\nn unes</w>\nhyper tension</w>\nhu bert</w>\nsli ders</w>\ninfer tility</w>\ncomm ended</w>\ntransat lantic</w>\nmetr ical</w>\n!! @</w>\nÅ Ł</w>\nss g</w>\nbac ca</w>\ninver ted</w>\nfun factfriday</w>\nit ans</w>\nalbu m\nacqu ainted</w>\nri er\nwhel an</w>\nsar ab\nmu e</w>\nsnoo ze</w>\npi ff</w>\nagre eing</w>\nsp itting</w>\njer maine</w>\nn ye\nâľı ï¸ı</w>\nam bush</w>\nze ph\ncon greg\nunivers ity\ns app</w>\nwann abe</w>\npat rice</w>\nib d</w>\ndo glo\nfri dges</w>\nsun d</w>\nking ston\nar gon\nkam en</w>\nhardro ck</w>\nds ley</w>\ndo lores</w>\nì °\nota ku</w>\npi ping</w>\nbe having</w>\nâŃĲï¸ıâŃĲï¸ı âŃĲï¸ı</w>\nblue bird</w>\nan sari</w>\nteapo t</w>\nfire work</w>\ncro p\nlog ans</w>\nty ped</w>\nthick ness</w>\nig ers\nc fp</w>\ndys functional</w>\ncontra sting</w>\net ty</w>\naston martin</w>\ntx st</w>\ndra grace</w>\nat tributes</w>\nmarath on\nmanu scripts</w>\njohn stone</w>\nðŁĺ± ðŁĺ±</w>\nbo er</w>\nay u</w>\naru gula</w>\npoo rest</w>\ncon du\nassu mption</w>\nanag h</w>\nno h</w>\ndelav in</w>\nsit ter</w>\ng Ã¶\nmor ow</w>\nkick start</w>\ncom i\ngl acial</w>\nghe ad</w>\nba in\nker shaw</w>\nen dof\nfre ud</w>\nom at\ni af</w>\nhu g\nsign up</w>\neach other</w>\ndefin ite</w>\ntu bing</w>\nshak ira</w>\nðŁĳı ðŁı½\nuu uu</w>\nsw in</w>\nsham bles</w>\nol as</w>\nsk ell</w>\nbrit ain\nkn w</w>\nclu tter</w>\nom y\nj ens</w>\nhang ed</w>\ncity scape</w>\nscra ps</w>\nun locking</w>\ndead liest</w>\ner no</w>\nbreast cancer\na it</w>\ninspec t</w>\nfu ri\nðŁĴ Į</w>\nku d\nju le\nor ah</w>\nmi ds</w>\nm dt</w>\nbur gring</w>\nr attle\npu sa</w>\nstal k\ncle ans</w>\niss ance</w>\nz ek</w>\nworth it</w>\nnam eis\nmusko ka</w>\ncouncil man</w>\nurban art</w>\nbar rac\nun solved</w>\ntu l</w>\ng ita</w>\nwhite board</w>\nsoy beans</w>\nem ent\ncont i</w>\nsaturday motivation</w>\nconveni ently</w>\ndoc king</w>\nt ado</w>\nâı ©</w>\nsp ino\npuppy love</w>\npo f\nfabric ated</w>\nrobb ers</w>\nadop ts</w>\nti fied</w>\nkk r</w>\nindulg ence</w>\nnotic eable</w>\nmacqu arie</w>\nchap el\nsensu al</w>\nki ko</w>\nmelan oma</w>\nlore tta</w>\nli ance</w>\nab en\nsp lus</w>\nga al</w>\nac ele\nlib dems</w>\ncompar isons</w>\nðŁĮ µ</w>\nrhy thms</w>\nmer y</w>\nen capsul\nnap ier</w>\nðŁĳĮ ðŁĳĮðŁĳĮ</w>\nðŁĳ Ĳ</w>\nplat z</w>\nfre sno\nre formed</w>\nran bir</w>\nel it\nthe best\nbhu shan</w>\nvin nie</w>\nimpro vised</w>\ns ittin</w>\nre created</w>\ne ba</w>\nec ker</w>\nac rob\npon te</w>\ncor d\ngi ddy</w>\neur usd</w>\nfe ver\nintu ition</w>\ngar i\ndum mies</w>\nbud weiser</w>\namend ments</w>\nte tra\nsch nit\nay as</w>\nmar ys\nci st</w>\nk ani\nker mit</w>\nðŁĺ±ðŁĺ± ðŁĺ±</w>\ntin ker</w>\nstrol ling</w>\ndi visional</w>\nniger i\nomin ous</w>\nmenstru al</w>\nkar ab\nk hy\nbw fc</w>\npan handle</w>\nl illi\nwell er</w>\nstra pped</w>\nson the\ntransfer ring</w>\nethe real</w>\nsne aks</w>\nru dol\ngab les</w>\njac king</w>\ncin code\nfor tune\ncanadi ens</w>\ncon for\nab normal</w>\nfrank lin\ntit a</w>\nmu la</w>\npersi st</w>\ncu ties\nki el\nðŁĩ± ðŁĩ\nher mann</w>\naw k</w>\nfi asco</w>\nko to\nwe ta</w>\nhi ker</w>\nbudd y\npreven tive</w>\nmcgra w</w>\ngame boy</w>\nforsy th</w>\ntop shop</w>\nsi ob\nsad h\nin tram\nfollow art</w>\nso aps</w>\ndragon ball\nou x\nmorri son\nà¹ ĥ\nlu bric\nadul thood</w>\nmorri sons</w>\nâļ łï¸ı\nher mo\nta ka</w>\nstall one</w>\nmis use</w>\nteam gb</w>\nra gha\ncon fined</w>\nat y\nhom ophobic</w>\nnw o</w>\nsky news</w>\nho ya</w>\nac rosse</w>\nwi iu</w>\npur Ã©e</w>\njed dah</w>\nðŁ¤ §</w>\nadvis ers</w>\nph ine</w>\nan is\nscrump tious</w>\në° ķ\nc ke</w>\nvin y\nter m\ns dc</w>\no do</w>\nhome school</w>\nvas c</w>\nleop ards</w>\ndebor ah\nillic it</w>\ncur ran</w>\nas roma</w>\nnau ght</w>\nmar ig\nbrand i</w>\nem p</w>\nðŁĺį ðŁĳĮ</w>\nî Į\nsu spend</w>\nlu z</w>\niniti ation</w>\nsch aft</w>\njensen ackles</w>\ncraw ler</w>\npost doc</w>\ndes ks</w>\ntrail blazer</w>\nden omin\ntri x</w>\nno ise\npo et\n± ï¸ı</w>\ns mug</w>\nvol atile</w>\nproof s</w>\npharmac ist</w>\nsardin ia</w>\nmash able</w>\nkim chi</w>\nco ed</w>\nschal ke</w>\ndoo dled</w>\nc sw</w>\nsh ur\nro x</w>\ndo k</w>\nchris brown</w>\nmathemat ician</w>\nab ound</w>\nang elic</w>\nrock ford</w>\nd ole</w>\nyor kers</w>\nms n</w>\ng man\nxavi er\nbor rowing</w>\nmark ings</w>\nlongh orn</w>\nk ja\ndiver ted</w>\nmm it</w>\neuph oria</w>\nay yy</w>\nte a\npa h\nck i</w>\nun cut</w>\nli ven\nky ung</w>\nfan art\nmer ing</w>\nred ding</w>\namo vie</w>\ngri di\nc thulhu</w>\nschol arly</w>\nju dah</w>\nth bewithyou</w>\neu calyp\nðŁĲ ķ</w>\nhert fordshire</w>\ncour troom</w>\nby u\nauc tioned</w>\nple ase\nmar cia</w>\nê° ĵ\nsucce eded</w>\nel as</w>\narvin d</w>\nt lot</w>\nsaig on</w>\nre tt\nra kesh</w>\nfd ny</w>\nas en\nse bring</w>\ngladi ators</w>\nyou know</w>\nv lad</w>\ngol a</w>\npar ap\nÑĢ Ð¸\nsab cnews</w>\none team</w>\noh l</w>\nsun e</w>\nri j\ncd c\nstar gate</w>\nrun down</w>\nplat o</w>\nph c</w>\nchat ter</w>\nra viol\nmn f</w>\nmand ala</w>\nli et</w>\nà¸ ķ</w>\nmari a\nhun gover</w>\nconsoli dation</w>\nfer rell</w>\ntradition al\nilove art</w>\ngal ap\nðŁı Į\nque zon</w>\nespa Ã±a</w>\nðŁĩ¨ðŁĩ Ń</w>\nho bby\nsteam boat</w>\nmali gn\nguil lau\npro hi\nits me\níĥ Ģ\nin scription</w>\nal z</w>\nmari an\nk ade</w>\nmm on</w>\nadju sting</w>\nne sts</w>\nintern ally</w>\nci r</w>\nvik ram\nmal ala</w>\nk ph</w>\nfel icia</w>\nthe real</w>\ncap tivity</w>\nat is</w>\nmarcor ubio</w>\nkale ido\nche v</w>\nmano j</w>\nle more</w>\ngent ri\nvi ps</w>\ntro pe</w>\n\" âĢĶ</w>\npair ings</w>\nmal nutrition</w>\nfr ay</w>\ndesig nation</w>\nbrun omars</w>\naz e\ntor rential</w>\npan zer</w>\nga il\nunder the\nthe ological</w>\nschizoph re\ndazz le</w>\nfreder ic</w>\nmo par</w>\nad illa</w>\nso ggy</w>\nra un\nmedi ocre</w>\ncolo rec\ni fe\np inst\nblu ef\nÂ ²</w>\nworld water\ngir oud</w>\nclar inet</w>\nad olf</w>\ntar antino</w>\nreceip ts</w>\nassu mp\nðŁĳ Ł</w>\ncoffe es</w>\nâľĬ ðŁı¾</w>\ndu plex</w>\ns of</w>\nr x\nlin o\ntimber wolves</w>\npan dit</w>\nmo tm</w>\ne ga</w>\nay ama</w>\nach s</w>\noutsi der</w>\nll en\nco er\ntil ly</w>\ncheese burger</w>\nma ds</w>\nple dis</w>\nemp ty\nnational parks</w>\naz iz\np mi</w>\njun kies</w>\nf ener\nsq n</w>\nÃ¨ s</w>\ngener ation\ncleop atra</w>\nbhuban es\nmosqu es</w>\nty free</w>\npopp ins</w>\ntw c</w>\nor well</w>\nn age</w>\nka whi</w>\nhol low\ndal ai</w>\nÂ¨Â¨ Â¨Â¨\nou ro\nm health</w>\ngi on</w>\naz o</w>\nvis as</w>\nreneg ade</w>\nre ic\nw sop</w>\nðŁĴļ ðŁĴĽ</w>\ne chel\ntox icity</w>\nmÃ¼ n\nbun k</w>\nstimul ating</w>\nasth our</w>\n\\ '</w>\nep h</w>\nende mic</w>\ncn bc\nshrin king</w>\npeabo dy</w>\nmichel angelo</w>\ncan yon\nwal e\nsu mi</w>\nsi ders</w>\ninu it</w>\n? .</w>\nprofession alism</w>\ndr acing</w>\nplat oon</w>\np ons</w>\nout bound</w>\nmaple leafs</w>\nde sol\ncen cy</w>\na than\nver ma</w>\nru bbing</w>\nok an\nðŁĳ ł</w>\nmull ins</w>\nauthent ic\nÅ į\nalman ac</w>\nga ia</w>\nbb q\non imo</w>\nke h\nty a</w>\ntou ts</w>\ny av\nre posit\n, .</w>\nwi ght\nse eyou\ncal lof\ndone sia</w>\nbar gaining</w>\ngr anth\nsd su</w>\namphi theater</w>\np su\nre watching</w>\nwine tasting</w>\npeak district</w>\ndete cting</w>\nthur man</w>\nphe e</w>\nèª ķ\nu mich\nre r\nsculp ted</w>\ngo le\nname sake</w>\nðŁĶ ģ</w>\nserv icing</w>\nbau gh</w>\npu gh</w>\npen cil\ndar th\nmunch kin</w>\nat orium</w>\nten ers</w>\nsun y</w>\nrolling stones</w>\nmag ing</w>\nstar rer</w>\ni dris</w>\nfe instein</w>\nag ron\nâĺºï¸ı âĺºï¸ı</w>\nsupervis ed</w>\nchamele on</w>\naggre gate</w>\nsucce ssive</w>\nmo gul</w>\ninst yle</w>\npol dark</w>\ncustom e\nohio state</w>\nha ya</w>\nci des</w>\nbroker age</w>\nangel ou</w>\nfifa wwc</w>\nde forestation</w>\nal ton\npam ph\nhu gged</w>\nho bo</w>\nchange able</w>\nku ber\nbur roughs</w>\ndemon etisation</w>\ncape cod</w>\nvers atility</w>\nor ice</w>\nle ila</w>\nwomenin science</w>\ntu a</w>\nhe dges</w>\nembarrass ment</w>\nali fe\nso ars</w>\nni ghter</w>\nhy mn</w>\ngi pp\nchas u\ntech s</w>\nni all\nk illa</w>\nhi ka</w>\ncam els</w>\nvalu e\nÂ ¢</w>\nsc oops</w>\nmah moud</w>\nclu sive</w>\nadri ana</w>\npac o</w>\noz il</w>\nun as</w>\ntransl ations</w>\nwhispe rer</w>\ns bi</w>\nbu xton</w>\nbio tics</w>\nindi ffe\nken ney</w>\nk lar\net ching</w>\nbarra best</w>\ninst ability</w>\nse ine</w>\nvo tel\nblo gged</w>\nwhis key\nmy space</w>\nt ant\nlan dia</w>\ngive back</w>\nillu s</w>\naw ak</w>\nac ab\nf bloggers</w>\ncloud computing</w>\nblat ant</w>\nsyri ans</w>\nband ra</w>\nsty n</w>\nan em\nke ted</w>\nkar thik</w>\nbarun sob\npin ot\ngu bernat\ngay e</w>\narti ste</w>\ni fied</w>\nconven tions</w>\nhu an</w>\ngeni uses</w>\neeee ee</w>\nfol ly</w>\nsomer ville</w>\npride month</w>\nðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸</w>\nchemo therapy</w>\npaul s\nbak ar</w>\nìĦ¸ë¸ Ĳ</w>\ntaiwan ese</w>\nfol lo\nc ss\nre ign\nnn nn</w>\nfla un\ncatastro phe</w>\niti es\nfrag ments</w>\nextre mists</w>\nym oun\ncar men\neze kiel</w>\nconne cting</w>\nse h</w>\nman ta</w>\nremodel ing</w>\nwe ymouth</w>\nat oms</w>\nce m</w>\nne well</w>\nlu mi\nthe open</w>\nmo c\nmili band</w>\ng land</w>\nz shq</w>\nmag gie\nmani acs</w>\nm sp\nad y\ncre ams</w>\nle anne</w>\ne sta\npy g\naf finity</w>\npray er\ndun bar</w>\nligh troom</w>\nac adi\nwyn onna\nroman tic\nstate dept</w>\nsick le</w>\nwh os\nlam o\net our</w>\nfin ity\nshru b</w>\nshar pen\npun dit</w>\ned on</w>\naf ore\nmar s\njeff ery</w>\nter ps</w>\nmedal list</w>\nkath arine</w>\naccu sing</w>\nta z\nroy d</w>\nfrom home</w>\nconfron tation</w>\nalle gh\nðŁĳī ðŁĳī</w>\nrefresh er</w>\nran veer</w>\nnever land</w>\njo jo\nlu crative</w>\nen am\nca ver\npa edi\nman jaro</w>\nflu ids</w>\nthe ssal\noppre ssed</w>\nmu ss\njoh anna</w>\nØ ®\ncn g</w>\nbuil dthe\nsett les</w>\ns ith</w>\nfu ego</w>\ncl amp</w>\nar ag\npay er</w>\nted x</w>\nmand y\ninter stellar</w>\nfr c</w>\nch and</w>\nb cc</w>\nmo lo\nlen til</w>\njohan sson</w>\ngrims by</w>\nnature lovers</w>\nðŁļ¨ ðŁļ¨ðŁļ¨</w>\nshin de</w>\nx in</w>\ninternational dayof\ntransiti onal</w>\nsat a</w>\ncad dy</w>\nwo d</w>\nif u</w>\nha ys</w>\nholl yo\nj ang\nir c</w>\nco im\ngrad able</w>\n\" \"\nðŁį ´\nà¦ ¾</w>\na el\nn yo\nwest lake</w>\ntime out</w>\nsof i\nphenom ena</w>\ncultiv ation</w>\nag no\nun armed</w>\nso t\ncon j\ngen o\nroyal navy</w>\nnutriti on\nfair mont</w>\nti relessly</w>\nsn g</w>\nre ty</w>\nmic a</w>\nlu cent</w>\nslo ane</w>\ndroo l</w>\nriz al</w>\nod ell</w>\ncritici zed</w>\n. '\"</w>\nla ze</w>\ndeser ted</w>\nco der</w>\npra s</w>\nl illian</w>\nitiner ary</w>\ndav y</w>\nan ap\nwhi pping</w>\nhobo ken</w>\nkare ena</w>\nçľ Ł\nvi us</w>\nter n\nnan tucket</w>\nmis understood</w>\nbu laga</w>\nst ant\nchin ook</w>\nz am</w>\nreli es</w>\nd ss</w>\ned mond</w>\nsket chy</w>\nm ell</w>\nfe x\nrec tor</w>\ndist ill\nday dream</w>\nwine maker</w>\nri pley</w>\nbillion aires</w>\nhel ene</w>\nati f</w>\ncul prit</w>\nbertr and</w>\nwou ldnt</w>\nma pped</w>\nv ak</w>\ngla dly</w>\nparliam ent\nkidlit art</w>\nware ness\ngoli ath</w>\nâĨ ĵ</w>\nview point</w>\ntat ted</w>\nfu ls</w>\ndor sey</w>\nang lers</w>\nli ds</w>\nki ya</w>\nbow les</w>\nbe h</w>\nb ite</w>\ncompati bility</w>\nance stral</w>\npro x\nbeha ved</w>\ngubernat orial</w>\nch field</w>\nsab an</w>\nz h</w>\nteen y</w>\nshibu ya</w>\nholli day</w>\npan cy</w>\nâĿĦï¸ı âĿĦï¸ı\nseun gri</w>\n? ,</w>\nðŁĩ¦ ðŁĩ·</w>\nim itation</w>\nimpac tful</w>\nany i</w>\ngene vie\naÃ± os</w>\nbate man</w>\ngli der</w>\naf ar\nra sheed</w>\neffor tless</w>\nsh war</w>\ndach sh\ner un</w>\nat os</w>\nkin i</w>\nch d</w>\nkha ki</w>\nk lin</w>\nfelici dades</w>\nbel o</w>\nas l</w>\nto ppers</w>\nfin ley</w>\nstac ey\nrigor ous</w>\nkar ting</w>\nle ppard</w>\ncar michael</w>\nbe ret</w>\nc se</w>\nak hi\nmer ingue</w>\nab an\nha ke\nger i\ner jee</w>\nre sto</w>\ncomm anders</w>\npr it\nfl or</w>\nad ven\nex termin\nremain der</w>\nå Ĳ\nes g</w>\nmartin o</w>\nlulla by</w>\n| @</w>\nmi gn\nin store</w>\nbig bang\ncor di\ncau ley</w>\nante bellum</w>\ndg ate</w>\ncro ck\nspan dex</w>\nscaf folding</w>\nore os</w>\nê°ĵ ìĦ¸ë¸Ĳ</w>\npom ona</w>\nma uro</w>\nuni versi\nre mi</w>\naf ootball</w>\nt ant</w>\nsm alls</w>\nne h</w>\nworl do\ntropic al\nmor ph</w>\njav elin</w>\ngla r</w>\narqu itec\nreminis cent</w>\ntu bs</w>\nspide y</w>\nmake u\nsyl la\nprogressi ves</w>\nblo t</w>\nshor ten</w>\nkeep in</w>\nch ak</w>\nang st</w>\nsuper food</w>\ndecad ent</w>\nston y\nneuro logical</w>\nar boretum</w>\nann ak\nfe ma</w>\nper cu\ndis respectful</w>\nsmall biz\nlo x</w>\nco om\nc sc\nbs bi\npre valence</w>\nhim ss</w>\nesp an\nmo ga\nfr ampton</w>\nsky map</w>\nmas se\nlevi athan</w>\n( ).</w>\nnoctur nal</w>\ncar ameli\nang or</w>\namne sia</w>\noutsi ders</w>\nshe alth\nrhin o\nant ag\nag io</w>\nðŁĴ° ðŁĴ°\ntake me\nkab addi</w>\nc si\nm sh\ncoch rane</w>\nthessal oni\nsil a</w>\nha us\ndu sting</w>\nobe se</w>\nmack lemore</w>\nmani sh\nlen in</w>\nm dc</w>\ngro wn\nshef field\ns rs</w>\nke le\ncar son\nch um</w>\ndah lia</w>\ncan tore</w>\nopp o</w>\nhow ling</w>\ncyber crime</w>\nsur realism</w>\nsc ran\nfa iz\nthre n</w>\nrac ists</w>\nr out</w>\npk not</w>\nse mana</w>\nsin i\nmc cull\nma chi\nalfon so</w>\ny b\nsar dar</w>\nkend rick\nden g</w>\nreci pro\non f</w>\ndoom sday</w>\nbri bery</w>\ncustom iz\nart is</w>\nc pi</w>\nðŁĻĪ ðŁĻĪ</w>\nsla va</w>\nlet te\nen s\nâĿ¤ï¸ı ðŁĺĺ</w>\ncra yon</w>\nad an</w>\ntr c</w>\nmigr ate</w>\nsimp son\nrow ers</w>\nking sley</w>\nfarmers market</w>\nshee han</w>\nne phe\nbor non\ncar ton</w>\nmic key\nall ure</w>\nu lu\nsli pknot</w>\nheb do</w>\ngui do</w>\ndog celebration</w>\nonline marketing</w>\nacceler ating</w>\n) ..</w>\norigin ated</w>\nmacar oni</w>\ned tech\nout field</w>\nmit z\ndisc us</w>\nadverti ser</w>\nman or\nha shi</w>\ndescri p\ncap ita</w>\nful bright</w>\nrecep tor</w>\ncon n\ncon ey</w>\nspion age</w>\nr attle</w>\npre st\nu li\nblog post</w>\nacker ay</w>\n) âĢ¦</w>\nred velvet</w>\nmat th\ninspir ing\nb sd</w>\nker ri\npo con\nmil lar</w>\nre pur\naccent ure</w>\nä ¹\nram bo</w>\nragnar ok</w>\ndele ting</w>\nbritish museum</w>\npat ory</w>\nleip zig</w>\nflori an</w>\nsci fi\nin ers</w>\nbr ate</w>\nyo y</w>\nmelis sa\nab er</w>\nma sa</w>\npo te</w>\nmosquit oes</w>\ntranspl ant\nr pa</w>\n; ))</w>\nbast ille</w>\nyl an</w>\njoye ux</w>\nmelo dic</w>\ncap tions</w>\natri st</w>\nroch dale</w>\ngott i</w>\npew die\ncuties aturday</w>\nwho is\naqu aculture</w>\ntiv a</w>\nsp el\nhe ss</w>\nha ji</w>\nfred die\nco per\nbrand o</w>\nv k</w>\nphoto book</w>\n* ,</w>\nmy dayin\nmicha ela</w>\nbrune i</w>\nsr ini\nin te</w>\nÄ ±</w>\nde ol</w>\nd fc</w>\nsepar ately</w>\nbun d</w>\nve sts</w>\nto c\nme ck\nrein forced</w>\nconstra ints</w>\ncar roll\nsq ft</w>\nre ver</w>\ncam per\nbird man</w>\nin action</w>\ngener ators</w>\ntriumph ant</w>\npe sts</w>\no vo\ngy pt</w>\nal amo\nsc aled</w>\nsuresh pp\nsd n</w>\nis mo</w>\ngi os</w>\n) @</w>\njustic eleague</w>\nrestaur ant\ngab i</w>\nden gue</w>\nnext gen</w>\nexemp li\nap ex\ninspir ational\ndown side</w>\nkid z</w>\nu pl\net na</w>\nalvar o</w>\nfel dman</w>\nbar net</w>\nm ha</w>\nes ch</w>\nbloo ded</w>\n>>>> >>>>\nkan i</w>\nho fficial</w>\ncasablanc a</w>\nbir ds\nty ga</w>\nsw amp\no day</w>\nnew castle\nnb ap\nci sion</w>\ncho ols</w>\naf lo\nne p</w>\nmon ton</w>\nak b</w>\nsuper model</w>\ndown time</w>\nth os</w>\nsc wx</w>\nsnoo py</w>\nag greg\nyo ke</w>\nnor cal</w>\nwe tt</w>\nprolon ged</w>\nme tast\nbeat er</w>\nf ta</w>\nt lap</w>\ndisgu sted</w>\ny h</w>\nvoice over</w>\nitch y</w>\nip c</w>\nðŁİ ¾\nphe asant</w>\nstra its</w>\nram pant</w>\nj g\nfer til\nassu res</w>\nfortun es</w>\nsal inas</w>\nliz ards</w>\nkett le\ni bs</w>\ncyn thi\nhe g\nmc cr\nsoccer oos</w>\nhappen ings</w>\ncor den</w>\nðŁĺĤ ðŁĳĮ</w>\nt ches</w>\negre t</w>\nwolver ines</w>\ncongratul ated</w>\nho gg</w>\nbott ling</w>\nwr i</w>\nfer ri\nbo sch\naf ire</w>\nog den</w>\ns jo\nj dm</w>\nsv t</w>\ncon tex\ntol lywood</w>\nmin k</w>\nme se</w>\nsuper sonic</w>\nop oulos</w>\nå ¸\nâĶ ģ\nknuck le</w>\ngu ise</w>\ngam i</w>\nchu cky</w>\nz inger</w>\nradi al</w>\ncompla ined</w>\nbo da</w>\nfe tal</w>\ndiscipl ines</w>\ncor ro</w>\nðŁĩ®ðŁĩ ¹\nop ted</w>\nfiltr ation</w>\nad nan</w>\nem cee</w>\nmi stre\ninsom ni\nfer gus</w>\ntra jec\non don\nmed tech</w>\ntanger ine</w>\nmadra s</w>\ngru e\ncab s</w>\nz hu\nsureshpp rabhu</w>\ninsul ated</w>\nday swild</w>\npp m</w>\nband ai</w>\nv day</w>\ns ff</w>\nsqu id\nlo thing</w>\nnot dead</w>\nexpre ssive</w>\ncu ll</w>\nala stair</w>\nx u\nup front</w>\nfish ers</w>\nen es</w>\num d</w>\ndis missal</w>\nsti er</w>\nsel s</w>\nlu st\nre active</w>\nprote ster</w>\neyel ashes</w>\nal im\ngoo de</w>\ngre eng\nda ir</w>\ncom pen\nanush ka\nproto typing</w>\nma pu\nbear ings</w>\nðŁĲ Ł\nfor me</w>\nbsbi botany</w>\ntimo thy\nout skirts</w>\nam bed\nare tha</w>\nwend ell</w>\nstre aks</w>\nni m</w>\nk pk</w>\nsne e\nfit ter</w>\nquo ta</w>\np ate</w>\nwin ning\nðŁį Ń</w>\nsho pping\nma inst\ncul ver</w>\nste vie\nmcfad den</w>\ncounter parts</w>\ngren fell</w>\nfol som</w>\ndor set\ntech crunch</w>\nâ¬ ħï¸ı</w>\ntip tuesday</w>\nus l</w>\ntre x</w>\ngeor gie</w>\nranveer official</w>\nlic ks</w>\nse wn</w>\nk f</w>\n' âĢ¦</w>\njap s</w>\np ate\north op\nfe sta</w>\nstra s</w>\nmon tal\nhammer smith</w>\nfore most</w>\nwido ws</w>\nmad re</w>\nite z</w>\nmito chondri\nlig ans</w>\nz ona</w>\ncari bou</w>\nm ss\nandre i</w>\nweather channel</w>\ngh c</w>\n: ...</w>\nta ft</w>\nawe ather\nal isation</w>\nbru tal\nbliss ful</w>\nnik ola</w>\nmal icious</w>\nq m</w>\nmpg vip</w>\nbro die</w>\nbl itz\napplau d</w>\ndri bb\nv ague</w>\ndog go</w>\ntransl ating</w>\ninterpre ted</w>\nhat ched</w>\nge tyour\nbenefici aries</w>\nspar ring</w>\ncaes ars</w>\naw illiams</w>\nla hat</w>\nbro ke\nti mp\nvirtu es</w>\nrel ying</w>\npie tro</w>\nk tn\nici sts</w>\npab lo\nlou i\na ag\npn pp\ncha st\npul ses</w>\nfini sh\nusair force</w>\ntype writer</w>\nthomp son\ndog s\nut to</w>\nãģ į\nsand al</w>\nnew ly\ndo ge</w>\nz w</w>\nwan kers</w>\nne gr\nmu cha</w>\ndetermin es</w>\nblack fish</w>\nsk unk</w>\nmu ps</w>\ninstru ment\nphy to\ndaysto go</w>\nskin ned</w>\nhai der</w>\ncon ten\nðŁĲ¾ ðŁĲ¾</w>\nwe iler</w>\nundoub tedly</w>\nchair ing</w>\nwall is</w>\nsh ard</w>\nzind abad</w>\nadul t\nabsor ption</w>\npre sto</w>\ndeplo ying</w>\ndrum mond</w>\nbattle front</w>\nseag ulls</w>\nhow dy</w>\njuda ism</w>\ndes de</w>\npart ition</w>\nâľ Ŀ\nno logy</w>\nnational bestfriend\nlesn ar</w>\nfilm fare</w>\nco asts</w>\nchristen sen</w>\nac an\nmb u</w>\nco pped</w>\nru bble</w>\nsw c</w>\nfun nier</w>\nfar ther</w>\nwhere as</w>\nnano technology</w>\nwith stand</w>\npil low\nbow ers</w>\nto pe</w>\nit ly</w>\ncon fit</w>\nma kar\ncomfor ts</w>\nbo sh</w>\ncli pper</w>\nbal la\nsti k</w>\nmil b</w>\nsafe guard</w>\nmusi que</w>\neas port\nya z</w>\npad ded</w>\nbad er</w>\nfore ign\nchop in</w>\narchi ve\no ka\ntran sporting</w>\ntml talk</w>\naj it</w>\nconsequ ence</w>\nsc roo\nff o</w>\ncollabor ated</w>\npug chat</w>\nye mi</w>\njav ed</w>\nau burn\no of</w>\nma w</w>\nsau cer</w>\nmiti gate</w>\ni les</w>\nevangeli st</w>\nter ie</w>\nre cl\nindic tment</w>\ncat a</w>\nbright ness</w>\nmay the</w>\nwhim sical</w>\nun lv</w>\nkey word</w>\ncu min</w>\nmed way</w>\nwest world</w>\ntra w\nim posing</w>\nform ity</w>\ncoul ter</w>\nab z</w>\nny pd\ngrass i</w>\nkel sey\nqld pol</w>\nclock work</w>\nf dr</w>\ndi anne</w>\nâĺ ĳ</w>\nad h</w>\np ann\nbra vely</w>\nae ge\nun lawful</w>\nver di</w>\npocaly pse</w>\nphar o\nkar la</w>\nreson ance</w>\nma stiff</w>\nla dak\nbu u\nma iled</w>\nhi i</w>\ncraw ley</w>\ntor rent</w>\nmach ado</w>\nliby an</w>\neffort lessly</w>\nfal sely</w>\nq vist</w>\nke ef</w>\ncraf thour</w>\ncheri shed</w>\nval kyrie</w>\ns ari\nkal amaz\nbe he\nðŁĮ Ļ\nth im\nro ddy</w>\ncol trane</w>\nbut chers</w>\nach im</w>\nwk end</w>\nawk ward\ncab rera</w>\n:) )))</w>\nfran c</w>\ndecl an</w>\ncon dos</w>\na ja\npandor amusic</w>\nchar ter\nph ill\nmon trose</w>\nhatch back</w>\nhandic app\ngre aves</w>\neucalyp tus</w>\nut most</w>\nt son\nbur ton\nmid wives</w>\nin cur\nðŁĺį #</w>\nmoo d\ncompre ssed</w>\ntom a\nmust ang\nmo g</w>\nas ana</w>\nte stic\nsho tel</w>\nin sol\ncor sair</w>\nnh q</w>\nben ny\nsm ma</w>\nkap ur</w>\nin con\njon as\nener gies</w>\ndon al\nas ad</w>\nse z</w>\nn pa</w>\narchi ved</w>\nstimul ate</w>\ndo p\nhy d</w>\ngri eving</w>\nãĥ Ī\nron a</w>\nwhy te</w>\ntree house</w>\nss ell</w>\nsand ro</w>\nko bo</w>\nther most\nse clu\nhi ya</w>\nge ez</w>\nmam as</w>\nprisc illa</w>\nflav oured</w>\nfas s\nw old</w>\nmaker space</w>\ncospla y\np tv</w>\nhappy valentinesday</w>\nsequo ia</w>\nlove craft</w>\ngu an</w>\nd tm</w>\nci i</w>\nyoko hama</w>\npos thum\nre q</w>\nðŁĶµ âļªï¸ı</w>\ngalat asar\ndol by</w>\nhamp tons</w>\ndisturb ance</w>\nstone henge</w>\nok c\ndisrup ting</w>\nmonth sary</w>\njun gle\nhead lights</w>\ndu stin\nmicro sof\nhappy mothersday</w>\nko ko\ngra zi\nte sto\nna idu</w>\nmal ay</w>\nari al</w>\nru mb\nab oo</w>\nhar man</w>\ntra pe\nspo ils</w>\nje ho\ngo dly</w>\nlock screen</w>\nz un\npi ous</w>\nma gento</w>\nl enders</w>\nprob able</w>\ncorpor al</w>\nm our</w>\naw al\nsu a</w>\ncall me\nton ne</w>\ngo vin\ndevast ation</w>\nx j</w>\ngear box</w>\nwar lock</w>\nper me\nit ate</w>\ngaza underattack</w>\ndu val</w>\nparas ite</w>\nclement e</w>\nle th</w>\ni va</w>\nfro zen\ntho les</w>\nto bin</w>\ncair n</w>\ns ill\nluc kiest</w>\nconver ts</w>\nst ale</w>\npan cra\neuro pale\nwis dom\nsch ur\nì ¶\nverti go</w>\nbi j\nu bc\nnu re\nrighte ousness</w>\nmt c</w>\nfactor y\nver st\nrevers ed</w>\nhur i</w>\nhee chul</w>\nfab er</w>\nar r</w>\nul ous\nven om\nph at</w>\ngreen ery</w>\nbra dy\nÃ ¦\n: ((</w>\nnever giveup</w>\ndi sha</w>\nmo ta</w>\nhealth care\ndun ham</w>\ndex po</w>\nden zel</w>\nbb ins</w>\nf ics</w>\nwh am\nmc g\neli an</w>\nwat a</w>\nstr alia</w>\ntel lu\npe sky</w>\nspin off</w>\nar moured</w>\nre acted</w>\ndo fficial</w>\nte du</w>\nsag ar</w>\nmor ally</w>\nparalle led</w>\nfi os</w>\ndow ner</w>\ndau gh\nre do</w>\nworld cup\ntari q</w>\nbar ne\nglaci ers</w>\noc cult</w>\nbarbar ian</w>\nher mosa</w>\n!! !)</w>\ny ur\ninter nation\np ss</w>\nsit u</w>\np int\namerican air</w>\nsw am</w>\ndopp ler</w>\nðŁĴĻ ðŁĴľ</w>\ncincode mayo</w>\nle van\nhell enic</w>\nmc ne\nju di\nyu h</w>\nst x</w>\nqu are</w>\nðŁĺĤ .</w>\nsti g</w>\ng els</w>\nmot ley</w>\nhard work\neuro zone</w>\ne ad\nç¥ Ń</w>\nseab ir\nci us</w>\nla id\nalpac a</w>\npresu mably</w>\npewdie pie</w>\nboo ted</w>\nam ari\ntam ine</w>\nsol ace</w>\nbar row\nacade mies</w>\nx ian</w>\nom ination</w>\ndun geons</w>\nb ma</w>\nde ity</w>\nai k</w>\nstab il\nhir a</w>\naffection ate</w>\nving ne</w>\nnew port\nãħĭ ãħĭ</w>\nthir ds</w>\nre tains</w>\naroma therapy</w>\nski er</w>\nni ma</w>\ndo pe\ncr inge</w>\ncon domin\nto or\nanim ator</w>\nsar aj\nseas cape</w>\nminim alism</w>\nlake shore</w>\ncalla way</w>\nberg man</w>\nà¤ Ĺ</w>\nwhisp ering</w>\nstupi d\nri ghtful</w>\nrequ is\nir n</w>\nse va</w>\nut pol</w>\ntuber culo\nsqu ish\nde but\ngovern mental</w>\nchrist ine\nall man</w>\nweap on\ns ito</w>\nbur i</w>\nlo lita</w>\nleaf y</w>\nfu ch\ntin ted</w>\nmck en\na hahaha</w>\nðŁĩµðŁĩ ¹</w>\nrepe al\nne gan</w>\nðŁķ Ĭ\ntail gating</w>\ngame insight</w>\nðŁıŁ ï¸ı</w>\nyaku za</w>\nz t</w>\nti ring</w>\npro posing</w>\nbow lers</w>\ntra itors</w>\nak shi</w>\ncler gy</w>\ncit o</w>\nup sets</w>\ntu scal\nsymph onic</w>\nsil ently</w>\nshu ff\nblack well</w>\nðŁĺĤ )</w>\nko be\nrober to\nri dg\ndc u</w>\nmer ino</w>\nft p</w>\neast side</w>\n. ~</w>\nnb l</w>\nmn leg</w>\nts for\nfrau dul\nca pping</w>\nin my\ngymna st</w>\nston es\nss in</w>\ntwe aks</w>\nshag gy</w>\noak land\ndem sin\nsang ria</w>\nmm va</w>\nhen nessy</w>\ndown ton</w>\nri ghtly</w>\nin it</w>\naga ve</w>\nob last</w>\nnorthe ast\nfriend ship\ndal a</w>\ntro phy\nðŁĳ ½\nmag in\nmargar itas</w>\nê ·\nww fc</w>\nfa sh\ndi ke</w>\ncu d\nchar t\nðŁĳ ®\nrefuge es\njop lin</w>\nn cs</w>\nimp y</w>\nfirm ware</w>\npas cu\nflam in\nhealth tech</w>\nbell letstalk</w>\nw aka</w>\nol ls</w>\nla go\nco wan</w>\nbombar dier</w>\nsh ome</w>\nðŁĻ ħ\nmc master</w>\nna ve\nwell s\nu ta\ntell ers</w>\nmis fits</w>\nkap il</w>\nface off</w>\naf firm\na pro\nwhit epaper</w>\nsuper yacht</w>\nspeci mens</w>\nal located</w>\n... ,</w>\n- __\nka w</w>\ndachsh und</w>\ndjo ker\ns work</w>\nqui ere</w>\nor um</w>\nðŁĲ ł</w>\nsom m\nc mt</w>\ningh our</w>\nskin ny\nlgb ti</w>\ngi ggles</w>\nbreak away</w>\nresear ched</w>\npar ity</w>\nmy al\nms l</w>\nre tained</w>\nsi vity</w>\nmake inindia</w>\nsol ves</w>\ndefam ation</w>\nwal tham\nsri racha</w>\nroad way</w>\nconcep tu\nal in\niw ant\nå Ī\ndel ft</w>\ntender loin</w>\nga ins\nfaul ts</w>\nsw ire</w>\nst ellen\npol lo</w>\ndy ne</w>\nbornon thisday</w>\nasdf ghj\nsq l\nsali m</w>\nadvis es</w>\nvo ip</w>\nìĹĳ ìĨ\nun touched</w>\nshe il\nontari o\nuph ill</w>\nso bre</w>\nde shi</w>\nnov ella</w>\ndu tton</w>\ncraw fish</w>\nØ§Ù Ĩ\nma a\ntw ine</w>\nkal in\nðŁĩµðŁĩ Ń</w>\nye ss\nbrook s\nhoo siers</w>\nton ka</w>\numbrel las</w>\nay ers</w>\nate am</w>\nacqu iring</w>\nsu ction</w>\nÃ¤ n\nwi es\ntari ans</w>\nsoci o</w>\nmat tb\nshepher ds</w>\no so\ncharity tuesday</w>\ns logans</w>\nninj as</w>\nal bat\nby te</w>\nbash ir</w>\ntrampol ine</w>\nmydayin la</w>\ni ja</w>\nbas el\nror y\ngol die</w>\nfi rec\nun noticed</w>\npecu liar</w>\nsch a\nker son</w>\nmour ns</w>\nliquid ity</w>\nqu ipment</w>\nhi bs</w>\nar s\naeron au\nslide show</w>\nsla bs</w>\ndelici ousness</w>\nsk itchen</w>\nhta fc</w>\nfull erton</w>\ncre ighton</w>\naer ob\nprocrastin ation</w>\naz ores</w>\nwhite hall</w>\nuss occer</w>\nmedi ation</w>\ndjoker nole</w>\nand me</w>\num en</w>\nnoxi ous</w>\njo ss</w>\nili fe</w>\nanni vers\nsudan ese</w>\net res</w>\nunder mine</w>\nwhole foods</w>\ndiso be\nkor i</w>\nade le\neli z\ncan ti\nal on</w>\ngymna sium</w>\nsarko die</w>\nmeteoro logist</w>\nyl de</w>\nste en\nstamp collecting</w>\nnas al</w>\nlo tt</w>\nfran ks</w>\nex ol</w>\nack i</w>\ngood year</w>\nanimal rights</w>\ny les</w>\nvio lets</w>\nmm es</w>\ns thel\nra pping</w>\ntu scan</w>\nwai ver</w>\ntur ner\neat local</w>\nnorthe asthour</w>\nanim ations</w>\ntom morow</w>\nt sh\nff ame</w>\nbra e\npe tron\nglam our\nbr yn</w>\nd cs</w>\nbal es</w>\nðŁĶ ¶\nbro v\nbre v</w>\nb ons</w>\nphysi que</w>\ncar ne</w>\nx e\nelix ir</w>\nvol ved</w>\nl oma</w>\nìľ ł\næ ĺ\nvan u\nri gs</w>\nbal ance\nva res</w>\nbon ita</w>\nsprink le</w>\nperfec to</w>\ndi on\nle ak\ncalcu tta</w>\no ba\nd ma</w>\nc mon</w>\ntun er</w>\npneu monia</w>\nbo gus</w>\napolo ge\ncl ough</w>\nbor ne\n)) ))\nrevi ved</w>\no varian</w>\nner f</w>\nc legg</w>\nfan fest</w>\ncho u</w>\nreali zes</w>\nmc n\nli gu\nleg alize</w>\njust saying</w>\nfor ster</w>\nbo sni\nk hi</w>\nin dom\nhei del\nen cryp\nsi ss\ned di\nmar bles</w>\nbrisban e\ny ing\npre paid</w>\nwal sall</w>\ncooper ate</w>\norche str\nmar isa</w>\nho wie</w>\nche wy</w>\nbren ner</w>\nandro meda</w>\ne gan</w>\nsto cki\ncav endish</w>\nag an\nban o</w>\nde ir\ngo g</w>\nbl k\nre thinking</w>\nch ig\nrhe u\nsni p</w>\np eng\nsemin ole</w>\nm swx</w>\nan nex\nlyn da</w>\nlewisham ilton</w>\ncu mul\ntb l</w>\ndolph in\nagu ero</w>\n........ ....</w>\npre lude</w>\nat our</w>\ngr anger</w>\ntoo ting</w>\nro tun\ndis ar\nhome items</w>\nda res</w>\n**** ****\nðŁĳ Ĩ\ncompre h\njin x</w>\nas well</w>\niri e</w>\ncircul ating</w>\nðŁĲ ¥</w>\nover board</w>\ncultiv ate</w>\nrhe tt</w>\noriente ering</w>\nca k</w>\nbal kans</w>\ns itt\njas min\nbritney spears</w>\nro tor</w>\nse aling</w>\ng bc</w>\noc ci\nf as</w>\neman cip\ncom er\nwar time</w>\ntic kle</w>\nson ny\npac es</w>\nlog g</w>\nat rix</w>\nsr p</w>\ng win\ndo bbs</w>\nuz be\nthe wanted</w>\ndru sh</w>\nex tru\nm icky</w>\nhonore es</w>\ndar win\nre dux</w>\nmm j</w>\nram i</w>\njalape Ã±o</w>\nio c</w>\ndo ver\nju ju</w>\nwhit ney\ns eng\nen ly</w>\nau ch</w>\narchipel ago</w>\nvigil ant</w>\nman gal\nwil dest</w>\nparano id</w>\nhal i</w>\nbb ly</w>\nsanc tioned</w>\nreal ms</w>\ncon co\nu ddin</w>\nc sk</w>\nplay time</w>\nlibr a</w>\nsav ag\noc tane</w>\nrec tan\nre turn\npar rish</w>\nmor rha\ncc p</w>\nc mu</w>\nsa iled</w>\nse vent\nro sie\npil ing</w>\nhe w</w>\nboar ded</w>\nseg ments</w>\nneph ro\n( .</w>\ncr ats</w>\nbak es</w>\nðŁį ¸\nback tothe\nsibl ing\nkirk land</w>\nke o\ngu wa\nbre ads</w>\nðŁĺľ ðŁĺľ</w>\nt q</w>\nharas sed</w>\nga u</w>\nwil bur</w>\nj isoo</w>\nep er</w>\nli sam\ntri ppin</w>\nsh ino\nru kh\nbeast mode</w>\ncho a</w>\ninst aweather\nrich land</w>\ngar i</w>\nfe z</w>\ncowboy snation</w>\nfur suit</w>\nk run\na en\nsycam ore</w>\nse gun\nent ennial</w>\ndi h</w>\no ax\ndemsin philly</w>\nðŁĻ Ģ</w>\nsn hl</w>\npen nies</w>\npass words</w>\nma kin\nty e</w>\nd eng\nkni gh\njeep life</w>\nhel pline</w>\na for\nzz zz</w>\nste amy</w>\npic ker</w>\niter ate</w>\nhappen ingnow</w>\nki b\nbloom berg\nmartyr dom</w>\nbul ly\nassor tment</w>\na hora</w>\nzo e\nno i\nillu stri\nagar wal</w>\np sc</w>\nelectr onica</w>\nrecruit er</w>\ngar diner</w>\nrad ha</w>\nnaf ta</w>\ndot net</w>\npi ero</w>\ngeor g</w>\nbel s</w>\nðŁĺĤ ðŁĺį</w>\ntuberculo sis</w>\nrun nin</w>\nmor is\nhaul ing</w>\nev oc\nbre thren</w>\nsha ir</w>\nframe works</w>\na stu\nri gid</w>\nku ma\nkre me</w>\njin nah</w>\ninsu rers</w>\nny u\nf ere</w>\nnol lywood</w>\ngood vibes</w>\n- ...</w>\ntoi le\nsk ril\ninstaweather pro</w>\ncze ch\npa vel</w>\none piece</w>\nnike plus</w>\nfi let</w>\ncav ity</w>\nðŁı½ âĢįâĻĤï¸ı</w>\nðŁİ £</w>\ndra stic</w>\ndail ys\nsiam ese</w>\nre bu\noste o\nlar k\nf re</w>\nsh elling</w>\np Ã©\nglad ys</w>\nðŁıĢ ðŁıĢ\ngusta ve</w>\nsubmer ged</w>\ngrand stand</w>\natt u</w>\nwon t\nf pv</w>\nb ley</w>\njon i</w>\nang ames</w>\nweigh ted</w>\nal ou\nà¤ ¶</w>\nles bians</w>\nf j\nanni es</w>\nam l</w>\ndor ia</w>\ndav in\nbe ta\ncan c\nmadewith unity</w>\nha j</w>\nbad lands</w>\nmu l</w>\nblu ec\npa wn</w>\ncov ington</w>\nneuro logy</w>\nhtt weets</w>\ndysle xia</w>\nthel ove</w>\nne at\nfork lift</w>\nautom ate</w>\nune ven</w>\nmonte ss\nhe in</w>\nha g</w>\nrel ics</w>\ncompetiti veness</w>\ncan elo</w>\nmar tens</w>\nbullet proof</w>\nsk ittles</w>\ng ya</w>\npri mo</w>\nameric afirst</w>\nwoo o</w>\nabor tions</w>\n?? !!</w>\nma che\nld ers</w>\nrl ly</w>\npreli ms</w>\ndirec t\ncour se\nswa in</w>\nsuper cell</w>\nec centric</w>\nsting ray</w>\nple ts</w>\nwil cox</w>\nwest in</w>\nokan agan</w>\nkir an\ncar bo\nbomb ings</w>\nra rest</w>\nbo h\ngaw d</w>\ndi gg\nmo ana</w>\nenti rety</w>\nen closed</w>\ndodge ball</w>\npar ton</w>\nmilky way</w>\nat r</w>\nthorough bred</w>\nre ally\nqant as</w>\nepiph any</w>\nine e\naero smith</w>\nspi eth</w>\nar thro\nell ini</w>\ndu bu\nbra ving</w>\nâļ½ âļ½\nre structuring</w>\nillumin ate</w>\nequ ili\nmp i</w>\nash ton\npony tail</w>\nma scots</w>\nflat tering</w>\ncru m\nast a</w>\nà® °</w>\nstranger things</w>\nbar nab\nØ± ÙĬ\nmake shift</w>\ngot cha</w>\nwill am\ncho irs</w>\nkilom etres</w>\ngho sh</w>\neu than\ndol ly\nun ning</w>\nthe ar\ncre we</w>\nw sw</w>\nj ace</w>\ndis miss</w>\nke an\nho ta</w>\nkh at\n~ ></w>\nthir u\nren dez\nhart man</w>\ntee ssi\ncas ca\nz ah</w>\nhydr ange\nfo d</w>\naw p</w>\nmzan si</w>\nthick er</w>\nnago ya</w>\nne va</w>\nsti que</w>\ncast el\ndam ian\nthere by</w>\nji ang\nale k</w>\nmusic islife</w>\nra q</w>\ncalla han</w>\ngou ache</w>\nsomal iland</w>\nsean hannity</w>\nra heem</w>\nlo se\nelo ve\nwhar ton</w>\nrectan gular</w>\nillustr ating</w>\nhar ne\nauti sma\nscra pped</w>\nell and</w>\ndecre e</w>\nnag pur</w>\nki pp\nso re\nn md</w>\nma as\ngun a</w>\ngart ner\nbel li\nthen ight</w>\nje on</w>\ngendere quality</w>\ngi ver</w>\na el</w>\ngar ments</w>\nne u</w>\nmardi gras</w>\nmar sden</w>\nro wer</w>\npollu ted</w>\ncamer aman</w>\nvin od</w>\nbe asley</w>\ncro c</w>\nji u\nhollyo aks</w>\nanesthe sia</w>\nal les</w>\nste ward</w>\nlati mes</w>\nðŁĩºðŁĩ¸ðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸</w>\ntic ian</w>\ngor ia</w>\ncome dic</w>\nðŁ¤Ķ ðŁ¤ĶðŁ¤Ķ</w>\nnai ve</w>\nsli ons</w>\nł Ī\nbur glar</w>\nðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃðŁĺŃ</w>\nyork shi\nse Ã±\nfan boy</w>\nlau rel\ninci dence</w>\npotom ac</w>\nrober ta</w>\npresi den\npr yor</w>\nos bourne</w>\nw ku</w>\nte me\npal ae\nðŁ¥ º\nre boun\nitu de\nred dish</w>\nk hand\ncoloni alism</w>\nnorth carolina</w>\nðĿ Ĵ\nmanne quin</w>\nlady bird</w>\nta sty\nknowledge able</w>\ng shore</w>\nðŁĮ Į</w>\nà® ©</w>\nqu aker</w>\nsalz burg</w>\nmed alists</w>\nchy na</w>\nbridesma id</w>\nma ori</w>\nro p</w>\noutra ged</w>\nin adequate</w>\ntruck ers</w>\nal ana</w>\nìĿ ¼\nri x\noooo oooo</w>\ncommand ments</w>\nlam beth</w>\naa j</w>\neco friendly</w>\nbla z\nmorecam be</w>\nboun cy</w>\nrou x</w>\nrai ded</w>\nmi zed</w>\nsh c</w>\ngaw x</w>\nlabor atories</w>\nru bs</w>\nrest room</w>\nconsult ations</w>\nca jun\nvirgin i\nso ir</w>\nrev ue</w>\nple in</w>\nwag er</w>\nç ¹\nwe do</w>\ngrowing up\n! ðŁĺĬ</w>\nface ted</w>\nsin ners</w>\nho vering</w>\nti ene</w>\nseas oning</w>\nan ja</w>\nleg go</w>\nil is</w>\nfla x</w>\ndev o</w>\nash ram</w>\nmati sse</w>\nker i</w>\ngo wer</w>\nbo tox</w>\nmar shes</w>\nunh cr</w>\nts m</w>\nopti mus</w>\ndun i</w>\nstu ffs</w>\nso k</w>\norder ly</w>\nn bad\nislam ophobia</w>\nraviol i</w>\nfab er\ncre ds</w>\nwon ka</w>\nin fusion</w>\nover weight</w>\ndaily news</w>\nassi mil\nacol lege</w>\nmedalli on</w>\nkili manjaro</w>\nsti ff\ntham es\nsun ken</w>\nth ard</w>\nmy dubai</w>\nhilari ously</w>\nhan nel</w>\nplu mber</w>\nfair view</w>\nsepar ating</w>\nrasc al</w>\nqui en</w>\nnecess ities</w>\nconfeder ation</w>\nll ll</w>\n: ]</w>\nweak nesses</w>\nbron co\nra ffles</w>\nel ot</w>\nãĤ¸ ãĥ\nadvent calendar</w>\nðŁİ ¹</w>\nstra vel</w>\ntun ic</w>\nk su</w>\nim peach</w>\ne spionage</w>\n! -</w>\ndi ment</w>\ncur rant</w>\nbio de\ncommu ting</w>\nby ron\nðŁĴĵ ðŁĴĵ</w>\nshad ed</w>\ntr uro</w>\ncray ons</w>\nar ne</w>\nh sc</w>\nfre aked</w>\ndram ati\nfle ek</w>\nu cd</w>\nmarl borough</w>\n^ -\ncross ings</w>\nmal o</w>\nblack ops</w>\nbin ance</w>\ncho ked</w>\nchen ey</w>\npl o</w>\nge stures</w>\nval edic\nryan air</w>\nrem ington</w>\nv cs</w>\nmc kee</w>\nec z\nbe gs</w>\nnail art</w>\nmayor of\nhappy fathersday</w>\nwar t\npet itions</w>\nn ingly</w>\nclean energy</w>\nbro x</w>\nsl alom</w>\nexist ent</w>\nab ay</w>\nug liest</w>\ntom p\nstom a</w>\nsel by</w>\ngoal scorer</w>\nben ji</w>\noverwhel mingly</w>\nlan s\nsemiconduc tor</w>\nsouth korea</w>\nre scheduled</w>\nsk yl\nen listed</w>\ndow ski</w>\nsi del\nrosen berg</w>\nnas ser</w>\nwhite head</w>\npri us</w>\nhar are</w>\nen n</w>\nry der\ní Ĥ\nmon g</w>\nclas ico</w>\ntranspor ter</w>\npo tty</w>\nis me</w>\n** ***</w>\nvic e\nsk it</w>\node ssa</w>\nl mp</w>\nher n</w>\nraci ally</w>\npin oy\nparagu ay</w>\nobitu ary</w>\ngo es\nbu cha</w>\nside walks</w>\nangu lar\nun constitutional</w>\ntransiti oning</w>\ni bu\ngu ys\nun packing</w>\noooo oo\nblack girl\nber gs</w>\nÂ ¯</w>\nwordof theday</w>\ntrump train</w>\nthunder bolt</w>\nm si\nfasci sts</w>\nà¤ ¬</w>\nt sk</w>\ncollap ses</w>\nraje sh</w>\nloveis love</w>\nmigr ating</w>\nset back</w>\nðŁĺĬ âĿ¤ï¸ı</w>\nt els</w>\nsafety first</w>\nnar rated</w>\njae joong</w>\nun answered</w>\nlique ur</w>\nen nes</w>\ndal go</w>\nbill ings</w>\nsalt water</w>\nmer maids</w>\nlon gs</w>\nclap ham</w>\nwe arec\npic collage</w>\nn ach</w>\nh ace</w>\npois oned</w>\nlo th</w>\nag na</w>\nadel rey</w>\nguar dia</w>\npoli shing</w>\npeace keeping</w>\nd all</w>\np isa</w>\nla pland</w>\nprocess ors</w>\nde andre</w>\nso bs</w>\np once</w>\ndra ins</w>\nc be</w>\nðŁİ¥ :</w>\nspla sh\nmeat ball</w>\nfon tana</w>\nworcester shirehour</w>\nne v</w>\nbri sk</w>\nb int\nac r</w>\npo x</w>\ncay enne</w>\nskril lex</w>\nj fc</w>\nhahahaha hahaha</w>\ngla s</w>\nen gul\ntempor al</w>\noni zed</w>\ncon cre\ncom pose</w>\nvibr ations</w>\nplant ers</w>\nfer t</w>\ncriticalrole fanart</w>\nt bli\nsch allenge</w>\nhuck abee</w>\nmunici pal\niam bic\nradi os</w>\nne vis</w>\ndura bility</w>\nmc cla\nhorse back</w>\ninst itutes</w>\nful fill\natta ch\nate ur</w>\nak an\nresi sting</w>\nillumin ation</w>\nhand le\nhair care</w>\nom ent</w>\nmacle od</w>\nka iser\ng no</w>\nbear down</w>\nly f</w>\ngl omer\ndistor tion</w>\nz m</w>\nsan k</w>\nroo sters</w>\nis now</w>\nas ports</w>\nag en</w>\nwo ken</w>\nst george\nro mper</w>\nmy le\neconom ists</w>\nru to</w>\nt will</w>\nhealth and\nd ito</w>\nws l</w>\ntair p</w>\npra kash\nmic heal</w>\nh ts</w>\nw rights</w>\nkat su</w>\nfioren tina</w>\ndefen seman</w>\nd itch\nvar sity\ntexan scheer</w>\nba ham\nsc anned</w>\nwe il</w>\nseduc tive</w>\nðŁĳį ðŁı½</w>\nfu e</w>\ner win</w>\ndav ison</w>\nter ran\nmoo ds</w>\nwool f</w>\nre source\n@ .</w>\ncu sh\nðŁį °\nregre ssion</w>\ncur led</w>\nla zer</w>\njo anne\nab bott\nmo z</w>\ndown ers</w>\nmm mmmm</w>\nvalent ina</w>\nk hair\ndream t</w>\ncro ok</w>\nche k</w>\nste aming</w>\nnephe ws</w>\ncl eric</w>\nas ober\nindefin itely</w>\nw ye</w>\nus news</w>\njoy ce\nflu shing</w>\nwynonna earp</w>\nron do</w>\nkis s\nhot dog</w>\nbar ns</w>\nsax ophon\nfar ley</w>\ngas p</w>\ndecre asing</w>\nal way</w>\npe x</w>\nl sd</w>\nshi ft\np outine</w>\nra zz\nrescu ing</w>\nni ko</w>\nho ch\ncc l</w>\nu aap</w>\nn ts</w>\nm car\nil wx</w>\nconqu ering</w>\nket tering</w>\nstur dy</w>\ndelay ing</w>\nsto k</w>\nvani shed</w>\ncath ar\nbin gham\nin v</w>\nic hiro</w>\nhe mo\nbudge ting</w>\n[... ]</w>\nbe ss</w>\nsebasti an\nslow ed</w>\nðĿ ĳ\nmusli m\nstun s</w>\nacton climate</w>\nve a</w>\nse ton</w>\nrose tta</w>\noun t\nhard in</w>\nflu id\nca w</w>\nðŁ¥ Ĥ\nyach t\nun l</w>\nsp hy\nprovoc ative</w>\nor ic</w>\nis back</w>\n__ _\nnicol as\ngy an</w>\nloo se\nfl in</w>\nreb ate</w>\n: ::</w>\n! \"@</w>\ncom icon</w>\nshe ff</w>\ndown stream</w>\nchic hester</w>\nbeach life</w>\nmom life</w>\ndiabe te\nar ra</w>\nvan e</w>\nok u</w>\nye o</w>\nman go\ntry out</w>\napp ell\nhe irs</w>\narjun a</w>\ndd u</w>\nna veen</w>\nmovi c</w>\nsoci alists</w>\ns back</w>\ncriteri on</w>\nsoyu z</w>\nk her</w>\nda z</w>\nyol anda</w>\nwine oclock</w>\nre ina</w>\none w</w>\nleon ard\nen dez</w>\nu bs</w>\nsupport local</w>\nfacilit ated</w>\ncarameli zed</w>\nb pa</w>\nvuel ta</w>\nmy tho\nm ami</w>\nspe are</w>\nnbap layoffs</w>\nfe vre</w>\nnick jonas</w>\nim print</w>\nc so</w>\ncraig slist</w>\nla salle</w>\ngi deon</w>\nha doop</w>\ndis regard</w>\nw ud</w>\ntu c</w>\nma gee</w>\nacou stics</w>\nta a</w>\nqui e\npol a</w>\ncr t</w>\ndw yer</w>\ndis sec\ncapit ol\nmen tion\nkn oll</w>\nhe igh\nfin ders</w>\nplac ements</w>\nl se</w>\nindi ra</w>\ngur i</w>\nmadhuri dixit</w>\nkingdom s</w>\niambic pent</w>\ngeor gina</w>\nje ky\nconflic ting</w>\nbay an</w>\naga tha</w>\nuph old</w>\ndr on\nvic ar</w>\nex pat</w>\nperiph eral</w>\npe ssi\nfa f</w>\nance stor</w>\n? ..</w>\nwid get</w>\npun c\ncomm enced</w>\nbeav s</w>\nair waves</w>\nad dis</w>\npo a</w>\nde sses</w>\nco den\nvu e\nru pee</w>\nkar in</w>\nspo ck</w>\nm sy</w>\nà¸ °\npr ick\nfill more</w>\nti fication</w>\nthing sto\nsar de\nem ile</w>\npere ira</w>\nn ad</w>\nbright ening</w>\narre sting</w>\nwo king</w>\nusc g</w>\nsp ill\nraspberry pi</w>\nhu go\nite c</w>\nis ma\ncuff links</w>\noptimi zed</w>\noc c</w>\nmi wx</w>\nen ka</w>\nel ited\nafford able\nsa kh</w>\ncoron ado</w>\nho h</w>\nat ul</w>\nai oli</w>\njim cantore</w>\naccoun ted</w>\nvin ay\nher mit</w>\ngroo ves</w>\nran ch\nr illa\nwe tter</w>\nou tof\nveter in\nni kov</w>\nki an\nfair banks</w>\nram apho\nn iti\nk ko</w>\nru sty\nne stle</w>\ntv xq</w>\nshahe er</w>\nâĿ¤âĿ¤ âĿ¤âĿ¤</w>\npenn ant</w>\ngem stones</w>\ndem debate</w>\nðŁĲ Ĭ</w>\nauton ews</w>\nsupport indiefilm</w>\nmach o</w>\nve x</w>\nnew sat</w>\nne ti\nconce ssions</w>\ncan died</w>\nyof the\nmac au\nden ds</w>\ncricke ters</w>\nsan iti\nmari ano</w>\ngh at</w>\nar toftheday</w>\n¡ ľ\ne gos</w>\ngen oa</w>\nchat bots</w>\nbri er</w>\nal labout\nmon ty\nspi ed</w>\nr tr</w>\ncomfor t\nsni ppets</w>\nreal time\ngra in\nexam ined</w>\nen lightening</w>\ntt u</w>\ngod bless</w>\nrelease the\nsing ular</w>\nki ans</w>\nha ka</w>\nsor ren\ndefe ct</w>\nmar g</w>\nequ ities</w>\nd orian</w>\nsu ka</w>\nper l\naishwar ya</w>\npul lover</w>\npreci sion\nfair way</w>\nne ve</w>\nrive ting</w>\nvill anova</w>\nen com\nak o\npassion ately</w>\neuropale ague</w>\nsiem pre</w>\nx vi</w>\nenligh tened</w>\nc fr</w>\nâĺħâĺħ âĺħâĺħ</w>\nwast eland</w>\nis f</w>\nnew comers</w>\nemergen cy\namphi theatre</w>\n- .</w>\ntext books</w>\nfigur ative</w>\ntre mb\npe sc\nab hin\nab bot</w>\nac acia</w>\nhar ds</w>\npor sche\nkau ai</w>\nel isa</w>\ncar rick</w>\nabo u</w>\nelli er</w>\nbe ch\nneu tron</w>\ngalap agos</w>\nru ben\nin nis\nhow to</w>\nnun s</w>\nsab ine</w>\ni ac</w>\nclin ched</w>\nno tori\nfi ves</w>\ncairn gor\nper i</w>\ngr c</w>\nðŁĴ¯ ðŁĴ¯</w>\nmal m\ntwelf th</w>\ndi ff\nrout ines</w>\nmarty n</w>\nlin den\nsynthesi zer</w>\nnu mber\ngame cube</w>\nfal kirk</w>\nbyz antine</w>\nqueu ing</w>\ngr ill\nscal able</w>\nchar red</w>\nrou ting</w>\nher bali\ngri zz</w>\nðŁĺŃðŁĺŃ ðŁĺŃ\ntol l\ntermin als</w>\nl pc</w>\nab d</w>\nwar mups</w>\nremo vable</w>\nÂ¯ \\\nvi go</w>\npap aya</w>\nne ve\nlov ingly</w>\njo kers</w>\nib les</w>\nsse tt</w>\npoten ti\npel e</w>\ngi gi\nsadi q</w>\nleg acy\nson o</w>\nru pees</w>\nretar ded</w>\nele e</w>\npar r</w>\nfi ance</w>\ney re</w>\nsay ers</w>\npend ants</w>\nmak nae</w>\nal bans</w>\nadap ting</w>\np ff</w>\npu berty</w>\nji u</w>\ning rad</w>\nhypocr ite</w>\ndiplom ats</w>\nphys ical\nrob by</w>\nbon sai</w>\nãģ ·\nf att\ncatal unya</w>\nâľ ĸï¸ı</w>\nro ma\nmore land</w>\nso e\nconver sions</w>\nstl blues</w>\nshol m</w>\ngra ssy</w>\npra do</w>\non u\nassaul ting</w>\n> _\nsett es</w>\ndis graceful</w>\naph ra\nâļ½ï¸ı âļ½ï¸ı</w>\nà¤ ª</w>\nkil n</w>\ngoal tender</w>\ns ru\nphilanthro pist</w>\nb als</w>\nth n\nstu den\nsando val</w>\ndogre scue</w>\neli ons</w>\nasse ssed</w>\nlar go</w>\nhec tares</w>\nsh rm</w>\nsa if</w>\ncle avage</w>\nno ches</w>\nn ene</w>\nfat alities</w>\ncur ing</w>\nclean ser</w>\nal es\np vp</w>\nsouth bank</w>\npizz eria</w>\nmarsh als</w>\nkni fe\nan dover</w>\ntbli ghtning</w>\nsr sly</w>\nou te</w>\ndigi mon</w>\ntimesof india</w>\nprome the\nle bo\nf su\nwit z\nrever e</w>\nman as\nmam ba</w>\nch ica</w>\ngu an\nexhibit or</w>\ncsr racing</w>\nd ere</w>\nxx xxx</w>\ngu sta</w>\nstory time</w>\nston ey</w>\norgan ics</w>\nand u\nse am</w>\nmin ogue</w>\nanushka sharma</w>\nab a\nðŁİĻ ï¸ı</w>\nugand an</w>\nchro matic</w>\nas sn</w>\ndocument aries</w>\nsh t</w>\nru paul</w>\nloy d</w>\nk ats</w>\ne us</w>\nite ch\nme dusa</w>\npan ty\nkel logg</w>\net to</w>\ntalla de\nsha a</w>\ndo st</w>\np ms</w>\nmari ana</w>\nje ster</w>\ncroo ks</w>\nðŁĶ ¬</w>\nmin danao</w>\nind hoven</w>\nðŁ¤ ª\nle xi\ntv n</w>\njan is</w>\nco te\nãģ Ĩ\nser rano</w>\niw m</w>\nðŁĲ ¬</w>\nk ke</w>\ndistribu tors</w>\ncap u\ncounterfe it</w>\ncamp site</w>\nag gie\nðŁĺ ¼</w>\nchhat tisgarh</w>\n~ @</w>\nstate u</w>\nsan di\nprevent able</w>\ncl s</w>\ncan ne\nmm c</w>\ni ver</w>\nsa haran</w>\npal is\nnight out</w>\ndo s\nap ia</w>\nabsc bn\nmanag erial</w>\naro se</w>\nmo wx</w>\naro sa</w>\nðŁĮ ³\nunder dog</w>\nremo ver</w>\nastronom ers</w>\nlent ils</w>\nsu scep\nsmoo ther</w>\npend leton</w>\nfau cet</w>\ne mory</w>\ndal mati\naf cb</w>\ntic us</w>\nexem pt</w>\nen rol\nd heim</w>\nðŁĲ º\nrestric tion</w>\nstar fish</w>\nsto w\nsnor kel\nthunder birds</w>\nshe ad\nhomo sexual</w>\ndy n\nas li</w>\nandre tti</w>\ndou che</w>\ndom o</w>\ntar mac</w>\nslu mber</w>\npr onto</w>\nfirst dayof\nmini ature\nmari achi</w>\nargu s</w>\nrecomm ending</w>\nmobi les</w>\nin ce</w>\nillustri ous</w>\nor c</w>\nadver ts</w>\ngr its</w>\nwea sel</w>\npag oda</w>\nover pass</w>\ngre ys</w>\nmaxi mus</w>\narma gh</w>\nwood land\nsun ni</w>\nðŁĴ ī\në Ŀ\nti one\nsoci o\nho s\nðŁ¤Ĺ ðŁ¤Ĺ</w>\nwind sor\nsubsequ ent</w>\nmunch ies</w>\nid h</w>\nexclu ding</w>\ne mi\ncu th\nz ai\nweek days</w>\nlaw suits</w>\nbarn ard</w>\nØ ª</w>\npe tting</w>\nnet es</w>\nmul ligan</w>\npharmac ists</w>\nra quel</w>\ne ton</w>\ncran ston</w>\ngil ded</w>\ncle ary</w>\nce ph\nra a</w>\npam per</w>\nlombar di</w>\nas in</w>\nsher ry\npro d\nfor te\nari anism</w>\nbuffalob ills</w>\næľ ¬\nðŁĶ¥ #</w>\nuu u\njust ices</w>\ncar ina</w>\nnat in</w>\nmas low</w>\ndro oling</w>\ncog nac</w>\ncam ber\nel ong\nr dr</w>\nin en</w>\nconvic tions</w>\nam use</w>\ntro ck</w>\nharm less</w>\nvisit ation</w>\ngen omic</w>\nbl and\nbeno it</w>\nchim p</w>\ntuscal oosa</w>\ngre asy</w>\nx po</w>\ngil t</w>\nse q</w>\nper mitted</w>\nchristma seve</w>\nbook s\nmu e\nold school\nhuman right\nbe ati\nðŁĶ Ŀ\nsh at</w>\nsculp ting</w>\nh wan</w>\nfern andes</w>\nsci utto</w>\nfu entes</w>\nendeav ors</w>\nmaid stone</w>\nun paralleled</w>\nshou ted</w>\nqueen of\nmer c</w>\nband ic\nve da</w>\nsel angor</w>\npi le\nja han\nintimid ating</w>\ndisapp ears</w>\ncl ich\nza ha</w>\nw urst</w>\nhi v\nfod ils</w>\ncor dless</w>\naaaa aa</w>\nhy dra\nbel inda</w>\ne els</w>\nbu f\nsu staining</w>\nrugby league</w>\nno c</w>\nbrig itte</w>\n( ðŁĵ¸:</w>\ntromb one</w>\nsoo the</w>\nsmo g</w>\nad p</w>\nstab le\ning ley</w>\ndiagno se</w>\nms g\nwe ss</w>\ntic keting</w>\none e</w>\nnsw pol</w>\ne up\nauto psy</w>\nadity anath</w>\nsun down</w>\nriver front</w>\nsi ya</w>\np is</w>\nhier archy</w>\ndur ango</w>\ndi jk</w>\nren shaw</w>\nhe aps</w>\nepide mi\ndavid bowie</w>\ninterne tof\ndd i</w>\nnation ality</w>\nmb ar\nair y</w>\nwin der\nw alia</w>\nelli ott\nc x\nbav arian</w>\npl att\nan tw\nwi wx</w>\nsof ter</w>\nne ha</w>\nh eller</w>\nth and\ndani ela</w>\nbo ast</w>\ndegra dation</w>\nðŁĴ¦ ðŁĴ¦</w>\ntransform ing\nman e\nav ut</w>\nðŁĺĪ ðŁĺĪ</w>\nvo ter\nthe e\nt ate\npu ff\nin door\nsop roud</w>\nboy ce</w>\nboris johnson</w>\nwait in</w>\nimmun ology</w>\nðŁıĨðŁıĨ ðŁıĨ</w>\nâĿ Į\nstreet food</w>\nliz asober\ncavali er</w>\nc elia</w>\nneed le\nmotor ing</w>\ng ato</w>\n, )</w>\nra de\nharve st\nt ms</w>\njar pad</w>\non ey\nair men</w>\nv re\nimpair ment</w>\nabhi shek</w>\nsnoo p\nl ant</w>\nfam ously</w>\nbl ou\ns ze\ng ander</w>\nun touch\ntu f\ndee jay</w>\ncol lateral</w>\nb ind</w>\nðŁļ ©</w>\npin ning</w>\nic n</w>\n' ;</w>\nthe economist</w>\nul tram\nworldwater day</w>\nti poff</w>\nthe i\nfeed ers</w>\ncampa ign\nsc umb\nday weekend</w>\nyo m</w>\npe dic</w>\nh ough</w>\nps v</w>\npl in\non de</w>\nboston marathon</w>\naz zy</w>\n* _*</w>\ncon ley</w>\nthi ago</w>\nhoo o</w>\ngal erie</w>\nluci d</w>\nje tt</w>\ngl itz</w>\nfinal fantasy</w>\nachiev ers</w>\ny ung\nperegr ine</w>\nop hi\ndam es</w>\nbiom ar\nâĺĢï¸ı âĺĢï¸ı\nsk c</w>\nl ics</w>\nfl ank</w>\nar rahman</w>\nho of</w>\nuphol stery</w>\nt ats</w>\nwo z\nÂ ¿\nsnor ing</w>\nra er</w>\nl ju\nap d</w>\npl ating</w>\nkan u</w>\nim ation</w>\nfragr ances</w>\nm ra\nmor ay</w>\nmo tt\nim muni\nhearti es</w>\nbho pal</w>\ntim ers</w>\ng ata</w>\ncolor way</w>\ncar nation</w>\nwin get</w>\nsi ghs</w>\ns ville\noptimi st</w>\nchate au\nolympi ans</w>\nci o\nsinger songwriter</w>\nny o</w>\nfi bers</w>\nbur ch</w>\nag ro</w>\nmil ne</w>\nig bo</w>\ncr amer</w>\nation als</w>\ndan ube</w>\npad ma\nnor mani</w>\nen forced</w>\nbre ck\nboeh ner</w>\nar den\nsur rendered</w>\npros thetic</w>\nom a\nha iled</w>\ncalcul ations</w>\nw fa\nbi b\nfcb live</w>\nfon da</w>\nwest coast</w>\nque sts</w>\nfriend ly\nto wie</w>\nfit ch</w>\nbal ot\nstar dom</w>\nscrat ching</w>\nho sa</w>\nthi ka</w>\no ven\nstro ke\nout post</w>\npharmaceu ticals</w>\nhi kari</w>\nmu y</w>\naf d</w>\nfallon tonight</w>\nsqu at\nor u\ndra ined</w>\nchocol at</w>\në¯ ¼</w>\nwor ths</w>\nri b\nmu j\nthat s\nresiden te\nit el</w>\nboo st\nmi gos</w>\nmul led</w>\nla a</w>\netsy shop</w>\ndon keys</w>\nme k</w>\np tc</w>\nflin ders</w>\ne hs</w>\nro hit\nmu ir\ng ad</w>\ncompos itions</w>\nåĨ Ļ\ncombu stion</w>\ni kh\nyemen i</w>\nwav ed</w>\ngar ci\nak os</w>\noo ds</w>\nfu sion\nse que\ns lan\npl ur\nkic chasu\nshenan do\ns ams</w>\nworl den\nhoro witz</w>\nwith me</w>\nmic robes</w>\nk ki</w>\nðŁĴĶ ðŁĴĶ\nw su\npatch work</w>\nfre er\ny aki</w>\nthe art\nsymboli sm</w>\nmil er</w>\nbt n</w>\nma bu\nside kick</w>\nmotiv ates</w>\nsag itt\nnatur als</w>\nserv iced</w>\nps ori\npa ola</w>\nqu ig\ni badan</w>\ngi ggs</w>\në ³\nsciento logy</w>\nsi oux\nsalam at</w>\nd res</w>\ncad bury</w>\nd hawan</w>\nci Ã³n</w>\n_ '</w>\nswa pping</w>\nmaris ka</w>\njames bond</w>\nexplo sives</w>\nay les\naf er\ns agu\ncen sor</w>\ntom a</w>\njeff erson\nring ed</w>\npar tist</w>\nir responsible</w>\naguil ar</w>\nvac ay</w>\nequ itable</w>\naltrin cham</w>\nac ur\nman ish</w>\nger min\nschoo led</w>\npu tter</w>\ned ad</w>\nnav al\ntoast y</w>\nsol areclipse</w>\ndish u</w>\ncoy ne</w>\nac co</w>\nmu ck\nmar an\nel os</w>\nlen der</w>\ncro ix</w>\nworth less</w>\nha ber\ngun men</w>\nðŁį ĵ\nzen ith</w>\nt enders</w>\nhur st\nhol tz</w>\nitali ans</w>\ncar low</w>\nu cd\ncharacteri stic</w>\nbun g</w>\nav l\nu th</w>\nsa sia</w>\nrs l</w>\nred man</w>\nneighbor ing</w>\ngreen peace</w>\nsti ps</w>\nfollow party</w>\ny gk</w>\nen os</w>\nomni bus</w>\nna issance</w>\nchri ssy\nsecu re\ncall back</w>\nji hoon</w>\nmemor y\nblock er</w>\nl anta</w>\ndaf fodils</w>\nbil t\nffer ty</w>\nfau st</w>\nie c</w>\nnipp les</w>\nso g</w>\nm nd</w>\njagu ar\nbol dly</w>\nab poli</w>\npro position</w>\ngun sense</w>\nevan sville</w>\ncu tters</w>\nwe go\ndou n</w>\ndo x\nstal lions</w>\nka j\nshi ppers</w>\nj awa\nvol o</w>\nle ven\npap rika</w>\nkov ich</w>\njor di</w>\ninduc tees</w>\napp alling</w>\ndial ysis</w>\nallevi ate</w>\nâĢĶ âĢĶ</w>\npie ter</w>\nmid wi\nq tr</w>\njuli ette</w>\ninter mission</w>\nhaw ks\nact ment</w>\none ill</w>\nk lin\nvam ps</w>\nfam ous\ncou ld\nautom obi\nda an</w>\nwest end</w>\nelli p\nnh c</w>\nmel anch\nweb series</w>\nton gue\nsnat ched</w>\nsmy th</w>\ntan gible</w>\nsl i</w>\ne asing</w>\nbar stool\nover lay</w>\nafford ability</w>\nting ed</w>\nter as</w>\nay ush\nwanna one</w>\nrh ine</w>\ndan a\nsh ana</w>\nkend al</w>\nfer tile</w>\nw ir</w>\nrepl eni\nlar vae</w>\nis ro</w>\ncon vos</w>\nab brevi\nu cc\nhun gry\nbur rows</w>\nag er\nnav i</w>\nmat in</w>\ndu per</w>\ncer n</w>\nma don\nķ ï¸ı</w>\né ģ\ntu ps</w>\nhy att\nsh ep</w>\nfriday night\nwis er</w>\nhei di\nhat ton</w>\np gh\nfoun tain\nwrist bands</w>\nahmadi yya</w>\naeri al\nsubscri bed</w>\nso los</w>\nm ace</w>\nsla yed</w>\nfor fe\ndul ce</w>\nchrist mass\narun jaitley</w>\nviol ate</w>\nob stru\nni eces</w>\nw vu\nidy l\nfa ze</w>\npre serves</w>\ninfr inge\npremi ers</w>\ninter vals</w>\nagen cy\n( Â©</w>\nstand alone</w>\ndi mes</w>\nbo er\nparam eters</w>\nge tit\nðŁĺĺðŁĺĺ ðŁĺĺðŁĺĺ</w>\ntu lane</w>\nfor given</w>\nscol l</w>\nmb ps</w>\nsmash bros</w>\nrob bi\nprima vera</w>\nali st\nghost ly</w>\nay at\nye ats</w>\nimpre ssionist</w>\near phones</w>\ncaul field</w>\nwai kiki</w>\nsal ute\nsc ou\nmu ay\nlouis vuitton</w>\nbak hta\nado g</w>\ninven tions</w>\nhur d</w>\nforec lo\nstream line</w>\nthalai var</w>\nch snews</w>\nwill ard</w>\nt sn\neuro parl</w>\ncru sher</w>\nmy sore</w>\ngro wer</w>\nra ping</w>\npat ti\ng den</w>\nsm w</w>\nmuf ti</w>\nkid man</w>\nab r\nsoun ders</w>\nskep tical</w>\nðŁĶ İ</w>\nsun dar\ni me\nfer g</w>\nfeather weight</w>\nar lington\npas qu\nag azine</w>\nwearab le\nnati c</w>\nmccl ure</w>\ninter mitt\nhor de</w>\nsix ties</w>\ncar te</w>\nbha v\nze al\nexperi ential</w>\nador ned</w>\nsom mer</w>\neno te</w>\nhypo thesis</w>\nstin ky</w>\npro to</w>\ndead lines</w>\nvo gel</w>\nmus ings</w>\nmonc ton</w>\ngu ter\nf le</w>\naci on\nvoice of\nta sha</w>\ninhabit ants</w>\ntype face</w>\ns ba</w>\nbts x\nðŁĶ Ĵ</w>\nwor x</w>\nu hc</w>\njo ko\ncell ars</w>\ngor o</w>\ncontinu um</w>\n... &</w>\nweather cee</w>\nha p\nsr k\nris ers</w>\nlonely planet</w>\nun named</w>\nco eur</w>\nðŁį Į</w>\nthe world\nili ke\nfa sten\nami go</w>\nri ba</w>\nramapho sa</w>\nstaf fers</w>\nhad ley</w>\n? ?\"</w>\nfi ore</w>\nsal ut\nhu ff</w>\nbez os</w>\nÑ ĭ\nra der</w>\nkam ala</w>\nin line</w>\nfill ers</w>\num atic</w>\nall in\nshat ter</w>\nre in</w>\no ku\nch ases</w>\nfla gged</w>\nbaby metal</w>\nwater stones</w>\nts b</w>\ncut out</w>\nop hel\naam a\nrockab illy</w>\nsto lic</w>\njet blue</w>\nich ick</w>\ndown ton\nuzbe kistan</w>\npat na</w>\nla q</w>\ngr ange\n) _/\nsubsi di\nsc p</w>\nnewsc ast</w>\nit sa\ntwee tyour\ne mor\narchae ologists</w>\nuni fication</w>\npor ta</w>\nq x</w>\nprotec tors</w>\npro hib\ncharis ma</w>\ncar tag\nren fre\nscul pt</w>\nguwa hati</w>\nde ma</w>\nboo p</w>\nunf pa</w>\ndex ter\nlay la</w>\nalleg es</w>\nsou ps</w>\nnever again</w>\nl ys</w>\ncal c</w>\nbar oness</w>\nvisu alize</w>\nger ber</w>\nabsor bed</w>\ni ers</w>\na han\nfon tein</w>\ndetec tors</w>\nverst appen</w>\nsv c</w>\nformul ated</w>\nac dc</w>\nli x</w>\nin competent</w>\nbh k</w>\nlour des</w>\nwater house</w>\nsnow ed</w>\nappreci ative</w>\nsig ma\nlizasober ano</w>\npen ned</w>\npay check</w>\ntall inn</w>\nfanc afe</w>\npar isi\nav alley</w>\nvi g</w>\nru fc</w>\nhard ship</w>\nso cute</w>\npo ise</w>\nì ¹\nroth schild</w>\nk ly</w>\n???? ????\nl hp</w>\nil ay\nf hs</w>\nam ad\nide als</w>\nbrad bury</w>\nbal boa</w>\nnic ot\nkid nap</w>\nwol ve\ntas manian</w>\nop t\nmatthi as</w>\nãĥ³ ãĤ\nsuper markets</w>\nmylittle pony</w>\nme lee</w>\nli ster</w>\ngr oun\nfe dora</w>\nkind ness\nen en</w>\nbra hms</w>\nÂ¯\\ _(</w>\nros well</w>\nmar lene</w>\nic u\nre formation</w>\nor ail</w>\nhe brides</w>\ndispar ities</w>\nterrac otta</w>\nswal lows</w>\nre id\ninflu encing</w>\nflu or\nden e</w>\ntum our</w>\nblon des</w>\nthunder bird</w>\nsh eva</w>\nmoga dishu</w>\nka b</w>\ncre eps</w>\ni ving</w>\nene ed\nanno y</w>\nâĶ Ģ\nintri gue</w>\nenqu iry</w>\nar aj</w>\ntur al\nkuber netes</w>\nend lessly</w>\ndivi dends</w>\ntor a</w>\nti sh\ncommemor ates</w>\nun ra\ntri b</w>\npon ty\nne m</w>\ndiss ent</w>\nbrew ingco</w>\nðŁĺ ½</w>\nnor mali\nbi of\n( ...</w>\nchil len</w>\nì£ ¼\nmell on</w>\nav is\nmccor mack</w>\ning ra\nenrich ed</w>\ncustome rexperience</w>\ntesto sterone</w>\nsnu g</w>\nsett i</w>\nger onimo</w>\ninqui rer</w>\nbre aches</w>\nvery thing</w>\nbloom ing\nmu ra\ndispo s\nbi de</w>\nde va</w>\nshade sof\nin trin\nsh ev\ns ven</w>\nnayanth ara</w>\ngan esha</w>\nc ws</w>\nber ta</w>\nlabel led</w>\nuse um</w>\nnick named</w>\nma han\ncar uso</w>\nap ur</w>\nðŁĳ Ĩ</w>\nw q\norphan age</w>\ndiscar ded</w>\nmag nu\nlu e</w>\nje on\nbridge port</w>\npac ing</w>\nmercur y\n( ðŁĵ¸</w>\nmarx ist</w>\namphi bious</w>\ntransplant ation</w>\nstit ching</w>\nthen burg</w>\ngradu al</w>\nãĤ Į</w>\nro ft</w>\nma ils</w>\nine c</w>\nguy ana</w>\ndopp elg\nver o\nre write</w>\nhead less</w>\nharb augh</w>\ngate way\ncar sforsale</w>\nsw i</w>\nst is</w>\nmach t</w>\nun de</w>\nsura baya</w>\nstap leton</w>\nnur turing</w>\nmil ner</w>\nya o</w>\nlma oooo</w>\nko sh</w>\narsen al\nk ame\ner ry\nar royo</w>\ndis misses</w>\nru bbed</w>\nrc b</w>\nlew d</w>\ndil u\nand or\nvi de</w>\nur in\ninter sec\nha ar\nal b\nyear swith\napp leton</w>\nÃ© al</w>\nul livan</w>\nsuc cu\nmonter rey</w>\nd mx</w>\nartem is</w>\nron nie\nfarm land</w>\ns football</w>\ngro tto</w>\nanth i</w>\nãĢ ģ</w>\nà® Ł</w>\nvid ya</w>\njimmy fallon</w>\nàµ į</w>\nt zer</w>\ngravit ational</w>\nw thr\nu hhh</w>\ne hr\ntin ker\nti juana</w>\nscran ton</w>\nram charan</w>\nbar clay</w>\nre van</w>\nm si</w>\nka p</w>\nwr s</w>\nwe thenorth</w>\ntor al</w>\nsat u</w>\ngro m</w>\nfac ep\nerick son</w>\nz yn\nse dge</w>\noo dle</w>\nspur sofficial</w>\nds p</w>\nsic ilian</w>\nsoli hull</w>\nrecei vers</w>\nladak h</w>\nhend rick</w>\nther i</w>\npresi ding</w>\nmc guinness</w>\nlitt ers</w>\ngun nar</w>\ngh oul</w>\nwi b</w>\nn tv</w>\nkar o</w>\nfro ck</w>\nb lau\nampli fy</w>\nall is</w>\nul lah</w>\nmemo irs</w>\nkh loe</w>\nintercep tions</w>\npet day</w>\nlo oney</w>\ncon fin\nch ay\npiyush goyal</w>\nfrequ encies</w>\nut z</w>\nevent ual</w>\nwarm ly</w>\nobli vion</w>\nan ka</w>\nta it</w>\nâĿ¤ï¸ı .</w>\ndirector ial</w>\nru lers</w>\nprince s\nmu ck</w>\nstur ridge</w>\ndeu ce</w>\nabri dged</w>\nbagu ette</w>\nun cles</w>\npen du\nmin ding</w>\nforre ster</w>\nav ila</w>\nwall er</w>\nwall street</w>\nment or\nhin o</w>\nhigh way\ncrom well</w>\nfanart friday</w>\nmb i</w>\nco yle</w>\na hi\ntro ve</w>\nspie gel</w>\npay tm</w>\nmcin tosh</w>\njan sen</w>\nnit i</w>\nnash ville\nlen o</w>\nleicester shire</w>\nle gos</w>\ndic t\nðŁĵ ½</w>\nsp ad\nbeverly hills</w>\nsy rah</w>\nsepar ates</w>\nz ain</w>\nun fit</w>\ndra gs</w>\ntan ia</w>\nover flowing</w>\nhri thik</w>\nhaw thorn</w>\nz ani</w>\nmac far\nfi de</w>\nto tem</w>\npe ds</w>\nfundament ally</w>\ncal ico</w>\nsin ner</w>\nj Ã¤\nhil de\nds d</w>\nten ay</w>\nta hit\nmil f</w>\nlie b</w>\ninform ing</w>\nup lift</w>\nra el</w>\nmortg ages</w>\nlec t</w>\nii ii</w>\nguillau me</w>\ncompos ites</w>\nold smobile</w>\nl end\ngar th\ncom mish</w>\nbapti zed</w>\nscorpi ons</w>\nru cker</w>\nbringback our\nalli ance\nthalap athy\ntal i</w>\nsp ans</w>\neri dge</w>\nwither spoon</w>\nlin da\nsky lar</w>\nkor n\nhom s</w>\nÄ į\nsil enced</w>\ncaf fe</w>\nar ty\ndist inguish</w>\nto wed</w>\npun g</w>\njessic a\near nest</w>\nbeau fort</w>\nt ama</w>\nstudy abroad</w>\nsi khs</w>\nnew bie</w>\nnav ratri</w>\nmar ble\nloun ging</w>\nlit ter\ndal it</w>\nso sa</w>\niz es</w>\ngra de\ncom promising</w>\ntr iton</w>\nde tta</w>\nv j\nchau ffe\nspec tral</w>\npowe red\nmontess ori</w>\nartic ulate</w>\nhal ton</w>\nal co</w>\nye y</w>\nmn twins</w>\nacoun ty</w>\nðŁĳı ðŁı¾</w>\nâī Ī</w>\nmad men</w>\nkal a\ngru m\nchi k</w>\nati s\nsu me</w>\nakh tar</w>\njob search</w>\nhigh lighter</w>\nbo ath\nâĦ ¹</w>\ntar zan</w>\nlam bo</w>\nâĽĦ ï¸ı</w>\nox fam</w>\ndump ster</w>\npretz els</w>\nmac os</w>\nincl ined</w>\nfac tual</w>\nadverti sers</w>\nshu i</w>\npu ree</w>\nml pfi\nanti dote</w>\ncap o</w>\npa str\nmerc ado</w>\nbut ton\nar min\nag g</w>\nlol la\nhorri bly</w>\ner rands</w>\nchristop he</w>\ntime snow</w>\nmonday motiv\nli ss\nscand als</w>\nmc i</w>\ndispropor tion\nâĺ İ</w>\nsur pass</w>\nsamar itan</w>\nso tho</w>\npu rest</w>\nfl att\ntrivi atuesday</w>\ndelec table</w>\nleop old</w>\nhermi one</w>\nchou dhary</w>\nen rich</w>\nÂ¡ Â¡</w>\nsubsi diary</w>\nine qualities</w>\nbachel or\nauto immune</w>\nla kota</w>\ni hop</w>\nad jec\nthe simpsons</w>\nsh es\nse k\ngret chen</w>\nup stream</w>\nhin akhan</w>\ncoper nic\nx tina</w>\nlu g</w>\ntough ness</w>\ne ad</w>\ncli pped</w>\nbi us</w>\nsl v</w>\nfah ren\ndee pak</w>\nca u</w>\nx an\nim mature</w>\ndig ni\nbo bs</w>\nshred ding</w>\nbut tery</w>\naccommod ations</w>\nde ven\nchun ks</w>\nsuper league</w>\nsky bet\nkil dare</w>\nje et\në į\nce k</w>\nwrec ks</w>\npro pane</w>\noh l\ntb d</w>\nquo i</w>\ntrum pp\nmi mo\nreluct ant</w>\nver ne</w>\no ic</w>\nma gh\nar nau\nse ver</w>\nli dge</w>\nstair way</w>\nkicchasu deep</w>\nðŁĶ º</w>\nmach ining</w>\naama admi\not i</w>\nc da</w>\nal it\npan y</w>\ninst alls</w>\nac ct</w>\ne shop</w>\ndi em</w>\nhard well</w>\nfulfill ment</w>\nsc afe</w>\nqu ack</w>\nextrac ts</w>\nswee tened</w>\nfi ghton</w>\nf di</w>\nd inger</w>\nwal tham</w>\nus ur\nrefe rees</w>\nseok jin</w>\ngran n</w>\naf rin</w>\nth n</w>\nsch af\npar cels</w>\nbet is</w>\namar ine</w>\nnom an\nkh tar</w>\nmor itz</w>\ncou pling</w>\nbar ons</w>\nðŁĲ ¸\nÃ ¸</w>\nsl p</w>\nsad ler</w>\nx ander</w>\ntri ad</w>\nmc millan</w>\nkh z</w>\ndivi ding</w>\nìĹĳìĨ Į</w>\ndar yl\nzed d</w>\nle ys\npla ques</w>\nflu ori\ntipper ary</w>\non nell</w>\ndi dier</w>\nlang ford</w>\nim c</w>\nthe sun</w>\nbir dies</w>\nar cha\nye ssss</w>\nt di</w>\ndar ia</w>\ncand ace</w>\nal tam\npal aces</w>\nch it</w>\nsant am\nevent ful</w>\nbook of\nad b</w>\nmon stax</w>\ncre ole</w>\nco el\nâĸ ½\nwe aren\nsten nis</w>\nshe ath</w>\nati sm</w>\ngron ingen</w>\nmlpfi m</w>\nle pre\nwrong ly</w>\nrsp ca</w>\nrendez vous</w>\nacknowle dging</w>\npel vic</w>\nsolic itor</w>\nsla ys</w>\nnue stra</w>\nlo d\nis lander</w>\nfer oci\nfashion show</w>\nra ss</w>\ndge on</w>\nadole scents</w>\nsma shes</w>\nnegli gence</w>\ngrate ful\nved ere</w>\nsw oop</w>\ning l\napol ice</w>\nvand alism</w>\ngan n</w>\njo ao</w>\ndi supdates</w>\nzimbab we\nunder age</w>\nradi ance</w>\nw of\nbour geo\npla s\ncr ani\ngh ue</w>\nwrec kem</w>\nwarran ts</w>\nre form\njim mie</w>\nat wood</w>\nys l</w>\nneil himself</w>\nl bj</w>\ni man\ntan to</w>\nnois se\nver bs</w>\nequip o</w>\nal together</w>\nmam ent</w>\nl ice</w>\ndou glass</w>\ntier ney</w>\npri med</w>\nj hal\nfurn itu\nbraz ili\nv ill</w>\npast els</w>\nn ison</w>\nu ff</w>\nparal ysis</w>\njay e</w>\nim po\nðŁĳ ģ</w>\nstrate gically</w>\npakistan is</w>\nwas sup</w>\nsuper bike</w>\nthank u</w>\ntru elove</w>\nsha ikh</w>\nisrael is</w>\nvi p\nto g</w>\nli en</w>\nla ker\ngrey hounds</w>\ncul ars</w>\nbian chi</w>\nbalot elli</w>\nar ran</w>\nloo s</w>\nstr ates</w>\nhe bron</w>\nar vo</w>\nsunder land\nthe al\ntomb stone</w>\nsand man</w>\nc pac</w>\nthanks giving\nlove him</w>\nlat ino\nan in</w>\naka if</w>\nĭ ãĤ\ntor quay</w>\ndi est</w>\nalli anz</w>\nðŁĺ ķ\ngolf club</w>\ncl lr\nwal cott</w>\nsch nau\npromp ted</w>\nnomin ating</w>\nlen nox</w>\nval et</w>\nmon ro\nmay ward\ne ph\nðŁĶ Ķ</w>\ninter oper\nr da</w>\nre flex\narm chair</w>\nê° ķ\nstri pper</w>\npor ti\nph arm</w>\nham za</w>\nni reland</w>\nne ue</w>\nh pv</w>\nport foli\nsun burn</w>\nfris bee</w>\nbe al</w>\nbapti ste</w>\nx h</w>\nty m</w>\npr ati\no vers\nhaz rat</w>\ndeser t\nder ry\nus ky</w>\nem mett</w>\nach arya</w>\n)_/ Â¯</w>\nshu d</w>\nmay a\nham ill\nra im\nnr c</w>\nfitt ings</w>\ncur vy</w>\nðŁı ĩ\nster ling\nà¥ Ģ\nwal kin</w>\nshort cuts</w>\nmil ly</w>\nast ur\nalpha be\npl i</w>\npe z\nmiss you</w>\nrad ford</w>\nml g</w>\nta eyang</w>\nnotjust lakes</w>\ndu mps</w>\nseren dip\nle ur</w>\nra ving</w>\ne ster</w>\nde priv\nabsc bn</w>\nðŁĳĩ ðŁı»\nscar city</w>\no cr\nmean ings</w>\ncap t\nda hl\nfer mentation</w>\nbri oche</w>\nto win</w>\nout lander\nmassi mo</w>\nen cro\nðŁ¥ ³\nbuil t\npo tam\nkir i</w>\ntm w</w>\nmonit ored</w>\nk ites</w>\npeoples vote</w>\ngray son\níģ ¬</w>\nafri ka</w>\na dies</w>\ni vote\ngy ne\ng annon</w>\ndi x\nc mc</w>\nou ral</w>\nfox andfriends</w>\nbel i</w>\nig ne</w>\ngl an</w>\nkatrin akaif</w>\nco politics</w>\nqual itative</w>\np si\nlu cci</w>\ndisc oura\nâĺ ®</w>\nkel li\ngau tam\ncarac as</w>\nreale st</w>\npu la\nin us</w>\nhill top</w>\nmake aw\natten borough</w>\ntw y\nr arity</w>\npeck ham</w>\nma hon\ncorn elius</w>\nclin icians</w>\nton line</w>\ntb i</w>\nparadi se\nka si\ninev it\nfresh ness</w>\ncolling wood</w>\nlun atic</w>\ndefen se\ncop d</w>\nin fra</w>\nwain wright</w>\nsains bury</w>\nalab am\nte ma</w>\nlac o\nchec ker</w>\nreleg ated</w>\ntren t\nstal ks</w>\nhuff post\nbhubanes war</w>\nast ral</w>\nshare your\nprim rose</w>\nhi me</w>\ncat an</w>\nend ment</w>\nen dow\ncle mens</w>\nmal oney</w>\nhil ary\ngame time</w>\nden ise\ncollabor ators</w>\nb wo\nradic als</w>\ngue tta</w>\nici on\nau a</w>\nsnap matic</w>\nsat chel</w>\nexcav ation</w>\nbase man</w>\ns Ã£o</w>\ngn ation</w>\nfel d\nsurve y\nshah zad</w>\nma st\nanirud hofficial</w>\ntru cker</w>\not ago</w>\ngeo graph\nethe l</w>\nâļ¡ï¸ı âļ¡ï¸ı</w>\ns ver\nmu tt</w>\ninternetof things</w>\nancho red</w>\nwh ouse</w>\nbang la</w>\nbal main</w>\nç¹ ĭãģ\nbreak fa\ná Ģ\ntwi ster</w>\nte tris</w>\nca v</w>\nstag s</w>\ng z\nau b</w>\nstor med</w>\nhel ens</w>\nyar mouth</w>\nst asy</w>\ngustav o</w>\nco sc\nvin son</w>\nup p</w>\nsc ricket</w>\nassump tions</w>\napp e</w>\nnu h</w>\nu er</w>\npre mise</w>\nn aga\ne amon\ncoron ary</w>\nna f</w>\nnorth side</w>\nel mer</w>\nro tar\nout lining</w>\nel f\nre surg\nkat elyn</w>\nin can\nhyster ia</w>\nce e\nam bani</w>\npro lly</w>\nĮ ãĤĬãģ\nax es</w>\nsan jose</w>\nrem brandt</w>\nmag pie</w>\neven ly</w>\nscor sese</w>\nqu aint</w>\nf g\nb buk</w>\nindian football</w>\nweare all\nspd wy</w>\npis ces</w>\nec g</w>\nâĺħâĺħâĺħâĺħ âĺħ</w>\npre orders</w>\n: |</w>\nni pple</w>\nsal azar</w>\nju me\njail break</w>\nmin n\nbas sett</w>\nze tta</w>\njef free\nad jun\ntic on</w>\nsan diego\ndrink local</w>\nchol era</w>\nsolic itors</w>\no bo\ncom post\nni an</w>\nwr a</w>\ntre ach\nic ic\nprofession al\ndel ve</w>\nleg ate</w>\nhistor ia</w>\ncro issant</w>\ncon noisse\nnam o\npalli ative</w>\nchem trails</w>\ni ority</w>\nglobal warming</w>\ncomic art</w>\nbehavi oural</w>\nre sted</w>\nli as</w>\ncli mates</w>\nŁ ãģĦ</w>\nrut land</w>\nnou rish</w>\nmenopau se</w>\nhot ties</w>\ndemen ti\nve spa</w>\nmel ville</w>\nanal ogue</w>\ntz man</w>\nstr ung</w>\nim perfect</w>\ngl are</w>\ncir cling</w>\nros berg</w>\nrec o</w>\noc ity\nlo ire</w>\nem be\ndo ssier</w>\nne el</w>\nnan do\nme a\ngal vani\nfin esse</w>\nag p</w>\nberke ley\nasi m</w>\nâĺº âĺº</w>\nquil ted</w>\nish ere</w>\nun matched</w>\npo tion</w>\nfor z\nat re\nselfi es\njuli ana</w>\nðŁļ ¶\nâĸ º\nmel ton</w>\nâłĢâłĢâłĢâłĢ âłĢâłĢâłĢâłĢ\nspin rilla</w>\npur cell</w>\ned p</w>\nat leti</w>\ntony awards</w>\nra ja\npro gno\nmol ten</w>\nstu ff\np ally</w>\nnobel prize</w>\nâĻ» ï¸ı</w>\nspiritu al\nspe ake\nsa sha\nbri um</w>\ntru ss</w>\ncritici ze</w>\nassassinscre ed</w>\nyor uba</w>\nu lo\nfire man</w>\nworkin progress</w>\nef cc</w>\nfla res</w>\nro bot\nhi kers</w>\ncl l\nshado wing</w>\npat sy</w>\nleh man</w>\nc ns</w>\nå ±\nguad al\nà± į</w>\nra pe\nr honda</w>\nparalle ls</w>\nson ja</w>\nlangu age\nland ings</w>\nz ola</w>\ncr amps</w>\nbur ning\napprais al</w>\njol la</w>\nham m</w>\nkas a</w>\ngul ly</w>\nf go</w>\nuly sses</w>\nri be\nðŁĴ Ħ\nib u</w>\neti enne</w>\nbri ar</w>\nfin ely</w>\ncomb ating</w>\ny ql</w>\ngo tham\nwe chat</w>\nto paz</w>\nprimar ies</w>\nl se\niz z</w>\nhel e</w>\ndispon ible</w>\ncy stic</w>\nbel ichick</w>\nth rush</w>\nkansas city</w>\nge om\nsoli di\nred bubble</w>\nby stand\ncambridge shire</w>\npar fait</w>\nast le</w>\now o</w>\nind ore</w>\nstom ping</w>\nsm elly</w>\nðŁ¤ ĸ</w>\nlocom o\nadm itting</w>\nhol me</w>\nclock wise</w>\nmin sk</w>\nmc co\nfor get\nev p</w>\ncam ra</w>\nab ella</w>\nyo tes</w>\nuniversit yof\nmÃ© xico</w>\nsilver ado</w>\nric ket\ncrom bie</w>\npu j\neradic ate</w>\ndeli ght\ny go\nglam ping</w>\nvic a</w>\ndu ggan</w>\ncoun ters</w>\ncf d</w>\nsc our\nreact js</w>\npu ram</w>\nparas ites</w>\nin ki\nvill en\nstel la\nli mbo</w>\nang as</w>\nk cr\nðŁĴļðŁĴļ ðŁĴļ</w>\nvap ori\nmum ford</w>\noli gar\nà ¼\nal oo</w>\nboo ties</w>\nad r</w>\nk elli</w>\ndru mmers</w>\nav ici\nnature uk</w>\nron al\nin trac\nun splash</w>\nle che</w>\ng oma</w>\nel ine\nenvir o</w>\nbi onic</w>\nbu eno</w>\nmi k</w>\nav in\nstar ling</w>\nem powers</w>\ncake day</w>\nboy cot\nðŁĴļ ðŁĴļ</w>\nðŁĮ¸ ðŁĮ¸\nv ach\nm ci\nfractu res</w>\nger i</w>\nsk ing\nexclu ded</w>\nlu ce</w>\nja ve\nig gy\nevi den\naki stan</w>\na wn</w>\nmor als</w>\nluci fer\nha ban\ntumb ling</w>\nsunday motivation</w>\nmo sley</w>\ncaptain america</w>\nsch icago</w>\nthe one</w>\nmo td</w>\nd ts</w>\nðŁĲ ¼</w>\nrep ell\nii i\nlocu st</w>\ngeo spatial</w>\nmer sey</w>\nimmer se</w>\ndesc end</w>\nber nade\nj s\nboat sales</w>\nwin der</w>\ncran k\nsing leton</w>\ncandid acy</w>\nben a</w>\nðŁı» âĢį\nhigh lander</w>\nol t</w>\nk prs</w>\nhealthy lifestyle</w>\nfour teen</w>\nend the\nith aca</w>\ncircul ated</w>\nr ans</w>\npre valent</w>\nha vas\nsplend or</w>\nroo ster\nkalamaz oo</w>\njewell ers</w>\nenne dy</w>\nrou sey</w>\nes y\ncann ons</w>\nornam ental</w>\n// //\nren don</w>\nwin ne\nmol ding</w>\neid mubarak</w>\ncoun tess</w>\nsimon a</w>\nha wa</w>\nfo es</w>\ndu ster</w>\nsb u</w>\npor tray</w>\nmar ries</w>\ngoo dday\ncho co\nachi ever</w>\nðŁĺ¹ ðŁĺ¹\npre neur</w>\ntr amp</w>\ntom i</w>\nn bat\ngarden chat</w>\nfarra khan</w>\never glades</w>\nab ru\nsou sa</w>\nse ce\nhomes wee\nterre strial</w>\nbar it\nsri devi</w>\nol u</w>\nmel inda</w>\nf rick</w>\ncan dies</w>\nðŁĺŃ ðŁĴķ</w>\nqu reshi</w>\nfamily fun</w>\nexor cist</w>\ncardin al\nny t\ndies el\ncu mulus</w>\ncapric orn</w>\nsi ology</w>\nlor na</w>\ndou gie</w>\nan die</w>\nsuper sport</w>\nc fl\nÐ¿ ÑĢÐ¸\nsay ang</w>\npe ek\nà¸ Ĭ</w>\nlo be</w>\nj em\ning lis</w>\ngg led</w>\nc sn</w>\namne sty\nchu ps</w>\nba es</w>\nsau er\nðŁı Ĳ\nmongo lian</w>\nen et</w>\nback street\ndr illed</w>\nacce ssing</w>\nce o\nb se</w>\nai ken</w>\npur r</w>\nwor sen\nwhe res\nwar k\ntesti fying</w>\nbu ri\nbla st\naw g</w>\nðŁĵ ĭ</w>\nre defining</w>\nhear ing\nu ci\nc mp\nbon i</w>\ntail oring</w>\nta ji\nnoc chi</w>\nem t</w>\nstephen king</w>\nne et</w>\ncompla ins</w>\ncampaig ner</w>\nluci ano</w>\ntwili ght\nti esto</w>\npas sports</w>\nflo yd\ncathe dr\nna ked\ncaregi ver</w>\nb coz</w>\nade cides</w>\nku ri\nly k</w>\nbr aries</w>\ndren ched</w>\ndisc lose</w>\nðŁĴª ðŁı½\nle blanc</w>\nje tty</w>\ngar ty</w>\nchip mun\nb su</w>\nrhyth mic</w>\nic z</w>\nfri d</w>\nanne x</w>\name x</w>\nsolo ist</w>\nlanc ers</w>\narro whead</w>\nspeci fication</w>\nsimul ated</w>\nna is\ninver te\nbo wing</w>\nwor ship\nf z</w>\nabo ss</w>\nsha q\nì¶ ķ\nchalleng ers</w>\nan arch\naamaadmi party</w>\nãħĭãħĭ ãħĭ</w>\nsuffol k\nso corro</w>\nsn ell</w>\ncla dding</w>\nabsor bing</w>\nshaw a</w>\nparticip ates</w>\nðŁį Ķ\nbook stores</w>\nbak u\nseap ort</w>\nko jima</w>\ngab y</w>\npack ard</w>\nelectr ician</w>\nlet it\nmo wing</w>\nfa wad\nyoung jae</w>\nhot mail</w>\nmen ing\nu rie</w>\nintim acy</w>\ncon ti\n: \")</w>\nlifeis good</w>\nin ciner\ni dri\ncraz iness</w>\njour nos</w>\nfran chi\nbott len\nal da</w>\nff es</w>\nk x</w>\nsouth we\nair a</w>\nclay ton\nsco ti\nf j</w>\nbri ga\nðŁ¤ĺ ðŁı»\ndemonstr ators</w>\ny z</w>\nstor k</w>\nna q\ncasc ades</w>\ntravel chat</w>\nplat a</w>\npad ma</w>\nfran ci\nat tain</w>\nbat girl</w>\nlom bard</w>\nhoo s</w>\nd dos</w>\nneon atal</w>\ndiscla imer</w>\nr ss\nr ant\ndi sen\ntex aste\nso cal\nfrac tal</w>\ncam ry</w>\nstri fe</w>\nsn acking</w>\nmu h</w>\nsant ander</w>\nmor ons</w>\ngra f\npar ades</w>\nhu ston</w>\ndru pal</w>\nmi ento</w>\nkir stel</w>\nhy de\nvom it</w>\nforti fied</w>\nsphin x</w>\nda v</w>\nbir yani</w>\nwin nings</w>\ns baseball</w>\nmer ged</w>\nlovel ondon</w>\nling ering</w>\ndream big</w>\ncar leton</w>\nliveli hood</w>\ndjan go</w>\nastri d</w>\ngri ds</w>\ndown e</w>\nbru ised</w>\ns ne</w>\nscarec row</w>\nhel ium</w>\nf nc</w>\nbi ggs</w>\nan ter\nrestor ative</w>\nem pires</w>\nab del\nlife style\nkiwan is</w>\ncolloqui um</w>\nme en</w>\npr ick</w>\nanti que\nze b</w>\nmi mic</w>\nedmon ds</w>\nðŁĳĬ ðŁĳĬ</w>\nq ing\npp el</w>\nmc gill\ninterpre ting</w>\nâŀ ķ</w>\nrash ad</w>\ndo ka</w>\nnarr ator</w>\nelectro magnetic</w>\nash by</w>\nsau ra\niran deal</w>\nâģ īï¸ı</w>\nkrish nan</w>\nin di</w>\nff en</w>\nbre a</w>\nos man</w>\nmultin ational</w>\nchi ppe\nrecruit ers</w>\naus biz</w>\np ounding</w>\nre gen\ncur sor</w>\nrefu sal</w>\nmac s</w>\nin ak\nax ial</w>\nwa ifu</w>\nup cycled</w>\nhindu stan</w>\ncas sini</w>\ncarly le</w>\nscrat ches</w>\nre ef\nman atee</w>\neat ery</w>\nðŁĵ ¢\nun condition\nsen pai</w>\non ther\ncomic book</w>\npro sciutto</w>\nde mar</w>\nmi se\nma ge\nfre ec\naye sha</w>\nal der</w>\nandroid games</w>\nley ton</w>\nho ck</w>\ndoor way</w>\nchicagof ire</w>\naali yah</w>\nsw elling</w>\nbi x\n. ðŁĺĤ</w>\nevan kirstel</w>\ntorpe do</w>\nkon stant\ngenevie ve</w>\nma ia</w>\nha user</w>\ndo torg</w>\nhide ous</w>\nfi k</w>\nsp raw\ne ek</w>\nz appa</w>\nwan dered</w>\n' '\nra jan</w>\nbam bi</w>\n( $)</w>\nwid ening</w>\ntool box</w>\nsa ir\nillumin ating</w>\npra ys</w>\nout patient</w>\ni w</w>\nday o</w>\nlo b</w>\nsw fl</w>\nsha des\ngu ms</w>\ncoo kin</w>\nko di\ngri ffin\ntraum ati\nste a</w>\nslaugh tered</w>\ngod bless\nair time</w>\npseu do</w>\nb sa</w>\nhau led</w>\nar if</w>\nà¸Ńà¸ ĩ\nle l</w>\nwc po</w>\nmil iti\nchar ters</w>\nworl da\nru k</w>\nk gs</w>\ndigital india</w>\nis able</w>\nidyl lic</w>\nesp ino\nmarie tta</w>\ne bo</w>\nteam canada</w>\nab our</w>\nwil ton</w>\nrock stars</w>\nfav ored</w>\nphys ic\nwrink le</w>\ntb r</w>\nd print</w>\nball arat</w>\nad al\nz ey\nðŁĺį ðŁĶ¥</w>\ntom lin</w>\nmt r</w>\npal sy</w>\nfener bah\ntight en</w>\nphil ia</w>\nir oning</w>\nry u\nb ant</w>\nenqu ire</w>\nca ir</w>\nabur ger</w>\ntru n</w>\ngreen berg</w>\nchau han</w>\nir ina</w>\nsh ani\ntrend setter</w>\npre tt\nzaf ar</w>\nalo ve\nv ici\npan ic\nno o</w>\nlu stre</w>\ndisrup ted</w>\nbal lis\nson sof\nmon si\ninst ac\nake st</w>\nëĭ ¤\nkw ame</w>\nhorror movies</w>\ndistric t\nsau cy</w>\nmb an</w>\nar mies</w>\nwith drawn</w>\nmed ics</w>\nloft us</w>\ner oom</w>\nbe kind</w>\nar ns</w>\nall on</w>\nun ison</w>\ndavi ds</w>\ncr at</w>\nnicot ine</w>\nso or\nsm x</w>\non co\ncospla ying</w>\nzombi es\nhar ms</w>\ne ger\nro sy</w>\nmoon shine</w>\nfe in\nce tt</w>\ndu brov\nreg ents</w>\nben itez</w>\nðŁĳıðŁı¼ ðŁĳıðŁı¼</w>\nste c</w>\nm alia</w>\nprioriti ze</w>\nic eland\nft se</w>\nv amo\nlam ont</w>\nhomo sexuality</w>\nbre es</w>\nregu i</w>\ncb p</w>\nte j</w>\nsky sports</w>\ndeter gent</w>\nsha sta</w>\nde rel\nconserv ancy</w>\ncolori zed</w>\naccol ades</w>\nvis o</w>\nshow your\nnan ow\nbice ps</w>\nus ability</w>\nbi m\ndailys ketch</w>\npearl jam</w>\nstran gest</w>\nmega deth</w>\nbroad casts</w>\nbar ren</w>\nar ton</w>\nchri ss\nconfi gu\nlu res</w>\nis the\ne ul\nrailway ana</w>\nglobal health</w>\ngi anni</w>\nu aap\ns lum</w>\nconsci ously</w>\nab re</w>\nn up\nbud get\nv ada</w>\ne sch\nreal ness</w>\ner ased</w>\nth unt</w>\nbe z</w>\narmist ice</w>\nðŁĳ ¹</w>\nsh run\no led</w>\ndriver less</w>\nðŁ¤· ðŁı»âĢįâĻĢï¸ı</w>\nwon dr\nsk an\nsal aam</w>\nmother land</w>\nh wang</w>\ngen o</w>\ngang nam</w>\ntw right</w>\nendor sing</w>\nen ic\nador ation</w>\npau sed</w>\npatric ks</w>\ndo cked</w>\nplat te</w>\nff xv</w>\nethnic ity</w>\nauto show</w>\nside show</w>\nafter life</w>\nre located</w>\norphan ed</w>\nfood network</w>\ndare to\nand ra\nsla ps</w>\nv live</w>\nswim s</w>\nre imagined</w>\nmist le\nre vise</w>\nreal ity\nbhar ti</w>\nðŁĴĻ ðŁĴĽ\nlate st\nprou dest</w>\ngra sses</w>\nlan yard</w>\nfresh est</w>\ncarcin oma</w>\nanom aly</w>\nzieg ler</w>\nsum ner</w>\nly rix</w>\ngor g</w>\nis d\nav el\nswild life</w>\nme squ\njohn cena</w>\neuro league</w>\nsab er\nmaster ful</w>\nyar ra</w>\ncogn ition</w>\njacob son</w>\nabo lic</w>\nsir loin</w>\nshuk la</w>\nmoj ito</w>\nsu pere\nst weet</w>\nme z</w>\ne sa\nrudol f</w>\ngur a</w>\nwhere you\ntt m</w>\nwin s\ntrust worthy</w>\nny k</w>\nbra den</w>\ntable top\ngood food</w>\nes on\nbe k\nlingui stic</w>\ngra ys</w>\nch ath\nh cs</w>\nmon i\nde ans</w>\ncu ssions</w>\nch ell</w>\nslo ws</w>\nhe mi</w>\nd app\nshar pie</w>\nboo sters</w>\na os</w>\nstr ack</w>\nse dona</w>\nmu eller\nhard wick</w>\nor nate</w>\nthor a</w>\nsal ud</w>\no twol\nch um\nmi ho</w>\nfor age</w>\nthel ittle\ntear ful</w>\nones elf</w>\nmin dy\nsm g</w>\ngmb h</w>\nemer ald\nðŁĶ´ âļªï¸ı\ntu tti</w>\nrecep tions</w>\nre vising</w>\ni brox</w>\ntope ka</w>\nsal ami</w>\nexpan se</w>\ni books</w>\ndob son</w>\ncli o</w>\nat s\nðŁļ Į</w>\nmo ha\nis ance</w>\nshu tters</w>\nmoo t</w>\njan ine</w>\nmarvel comics</w>\njor dani\npos er</w>\nkenne th\nhy ung\nde ja</w>\nase ball</w>\nspeci ality</w>\neu ston</w>\nclassic car</w>\nhad ith</w>\nðŁĲ ī</w>\nchas ing\niz o</w>\ngros ven\nag lia</w>\nthisdayin history</w>\nt row</w>\nom ile</w>\nhu ar\nby n\nsal ine</w>\ndiv ine\ndemon ic</w>\nty ran\nhan dover</w>\nrevit alization</w>\npa ella</w>\ncryp tic</w>\nse dg\nm end</w>\ndun kirk</w>\nbre d\nwal d\nsport scar</w>\na ard\nwhe aton</w>\nda ener\nk lan</w>\nbr t</w>\nbakhta war\nspi res</w>\nschu bert</w>\nro ti</w>\npoli sh\no se\nag ame</w>\nwonder con</w>\nprote stant</w>\nbo sa</w>\nðŁĺ Ł</w>\nd Ã¼\njoy ride</w>\nger trude</w>\nâĿ Ŀ</w>\ngil a</w>\nv h\ntw a</w>\ntra v</w>\nswal lowed</w>\nstar ve</w>\nla in\nent ren\nrei ki</w>\nsu kh\ncra ic</w>\naz u</w>\nweb page</w>\nkee fe</w>\nhypo the\nhir sch</w>\nhel le</w>\ncamp ground</w>\nw amy</w>\ntra vi\nsha hi</w>\nsan deep</w>\nru i</w>\nhan uman</w>\ndw p</w>\nreposit ory</w>\nno or\nno ff</w>\nun real\np ell</w>\nblack history</w>\nhar vick</w>\nma scar\npay ee</w>\npa sha</w>\ngastron omy</w>\nd ÃŃ\nai g</w>\nrosen thal</w>\nopen day</w>\nembelli shed</w>\nt tip</w>\nsun bathing</w>\ngo pack\nend ome\nï¸ı #</w>\ninvali d</w>\nfinal four</w>\nst fu</w>\nsquish y</w>\nra sta</w>\nmo sch\njam esc\ndie trich</w>\nsel a</w>\nmel b\nel vi\nt dp</w>\nsun i</w>\nsli t</w>\nj ha\nbi za</w>\nspi ked</w>\nl li\nl illard</w>\nvam pi\nsyno psis</w>\naz har</w>\nkendrick lamar</w>\nĮãĤĬãģ ŁãģĦ</w>\nheart less</w>\ncountry file</w>\nair play</w>\narrog ance</w>\npre e</w>\nvirtu oso</w>\nãħłãħł ãħłãħł\nraj u</w>\nle bu\nfor ward\ntu g\ndro s</w>\nmondaymotiv aton</w>\nconcep cion</w>\nthel o\npad i</w>\nlooo ol</w>\nÑĢ Ð¾Ð´\nit ss\neth ical\nend uro</w>\n__ :</w>\nexpend iture</w>\nmon ste\nmas king</w>\nterri ers</w>\nib is</w>\ne mber</w>\ncu mple</w>\npunctu ation</w>\npi per\nir vin</w>\nade e</w>\nyy yyyy</w>\nflash backs</w>\ncel sius</w>\ndon nie\nbo gota</w>\nben evol\nthe script</w>\nshil pa\npro se\nfin dia</w>\nze ke</w>\nne ko</w>\ndo ves</w>\nblues lyrix</w>\nfro sh</w>\nsowe to</w>\nmp lo\nal ai</w>\nsab i</w>\nraq qa</w>\nwf tv</w>\nstro ller</w>\nian somerhalder</w>\nðŁĶ ª\nan on\nmo seley</w>\n! ?!?</w>\nsta king</w>\nmol y</w>\ncar tri\nc sg</w>\nast or</w>\ntransc end\nma er\nde ux</w>\ncow girl</w>\nsas k\npun ter</w>\nma ken\no ates</w>\nlove tt</w>\ngrow ler</w>\nsag in\nv n\nssi ble</w>\nofficeof rg</w>\ny mc\nsab ar\nfaul ty</w>\nap ha</w>\nak on</w>\nðŁĳ «\nsnow don</w>\nae w</w>\nraise the\nðĿ ĵ\ngrue some</w>\nclement ine</w>\nsp ing</w>\nlat a</w>\nworlden viron\nmi mic\ncan aria</w>\nbakhtawar bz</w>\nao a</w>\nfal a\nãĤ Ń\navi va</w>\nyou uuu</w>\nthi gh\nla dders</w>\ngu mbo</w>\ntz ky</w>\nfu zz\nplastic pollution</w>\nest ate\nstrength ened</w>\nk ant</w>\ndr in</w>\ncal vert</w>\ntransform ational</w>\nfrigh tened</w>\nmac lean</w>\nelited angerous</w>\near thy</w>\nt son</w>\nto da</w>\nj nu</w>\n.. ,</w>\nmic hal\ni ban\nje ong\nis real</w>\nsim coe</w>\nexclu sives</w>\nblue bells</w>\nben e</w>\nte u\npil sner</w>\npens ke</w>\nathe ists</w>\nm pu\ncartag ena</w>\nðŁĴĹ ðŁĴĹ\nmillion aires</w>\nkk kk</w>\nit ar</w>\nsubscri ptions</w>\nremo te\nma fi\nhin ton</w>\nw cc\nho k</w>\nds b\nab leton</w>\nsevent y</w>\npun ks</w>\ne indhoven</w>\nsh one</w>\nmcfar lane</w>\nlim popo</w>\nempha si\nÃ ¼</w>\nsin fo</w>\npe tre\nman grove</w>\nch ino\nber tie</w>\nplay lists</w>\npush awards\np af\ndeb bie\nc do</w>\nr ino</w>\nðŁı¾ âĢįâĻĤï¸ı</w>\nfol ke\nbon nar\nth ine</w>\nsl an</w>\nhal ter</w>\nevi e</w>\naw some</w>\nvul tures</w>\nspar ky</w>\nseiz ures</w>\nâľ Ķ\nram one</w>\nine ffe\nal n\npro ctor</w>\nast ra\nthe voice\ngro te\nsci on</w>\ndead line\nam aya</w>\ntain ted</w>\npatter ned</w>\nexce eding</w>\ncross fit\nkay lee</w>\ndrop box</w>\nru shes</w>\ntack led</w>\nmo by</w>\nretro gamer</w>\nn cbd</w>\nbenef itting</w>\nshay kh</w>\nguild hall</w>\ngen try</w>\ndream cast</w>\ndread ed</w>\nbun dled</w>\nth aw</w>\nrevol ving</w>\nn pt</w>\nkylie jenner</w>\nimagin ative</w>\nron i</w>\nover came</w>\nfamily time</w>\nds burg</w>\ncar naval</w>\nrelation ship\nrecogni zable</w>\ncor oner</w>\nho le\nfan fic</w>\nemir ates\nbur ritos</w>\nanaly se</w>\nthin ner</w>\nne es</w>\ngalli poli</w>\nbl r</w>\ncat woman</w>\n-- >></w>\nau lt\nada ily</w>\nnau ghty\nili o</w>\nsolit aire</w>\nmtv br\njocel yn</w>\narun ach\nrep ent\nsouth gate</w>\nhy acin\nessenti al\nfent on</w>\nand um</w>\nit or\ngo pal</w>\nsl inger</w>\npo sei\naw il\nwi elding</w>\nra ila</w>\neli as\na sto\nÃ ¤</w>\ntend ency</w>\nstr ata</w>\nker t</w>\n< -</w>\nim acele\nda es\nsti mulus</w>\nhan ley</w>\nfit nes\nec stasy</w>\nlim ous\nha iling</w>\nðŁ¤ Ń</w>\nchis wick</w>\ntar ies</w>\nsla v</w>\npul i</w>\nmoderni zation</w>\nblack mail</w>\nb ingham</w>\nh fx\n+ +\nðŁĩ®ðŁĩ ³\nni v</w>\nwe a</w>\nprofess or\nk off</w>\nbol ster</w>\nsu ave</w>\nsequ ences</w>\npepper oni</w>\nnot te</w>\ndre n</w>\nãģ¨ ç¹ĭãģ\nhs v</w>\no ga</w>\nap tly</w>\nz ad\nexcel si\nrin ka</w>\nmol dova</w>\nmin n</w>\nma bel</w>\nconferen cing</w>\nbas ing\nof er\nob si\nhamill himself</w>\ncare less</w>\nbrief ed</w>\ninhe rent</w>\npar ish\ndub nation</w>\ntown sville</w>\nsar awak</w>\ngee ky</w>\ndoncaster isgreat</w>\nwas abi</w>\ngu p</w>\nphen o\ndra inthe\ncarrie underwood</w>\nble eds</w>\nbbc world</w>\nane w</w>\nalta f</w>\ndul wich</w>\nani ston</w>\nw ti</w>\nsumat ra</w>\ngra fton</w>\nbl n</w>\nme ster</w>\nbode ga</w>\nre go</w>\nes q</w>\nan jo</w>\nsump tuous</w>\nmai sie</w>\nï¿ ½\nwil t</w>\njak ob</w>\nel vis\nse pul\nmu ster</w>\nair pollution</w>\npresident e</w>\nhappy monday</w>\nexten sively</w>\nfl ondon</w>\nt ls</w>\nplay ing\npe ed</w>\ndin ho</w>\nvar dy</w>\npi ka</w>\nn iro</w>\nau cus</w>\nðŁį ¦\nnu ll</w>\nel ondon</w>\njuvent us\nimag ines</w>\ndis ab\nlit o</w>\nd ura</w>\nwork places</w>\npromo te\nmc caf\nwood work</w>\nwaw x</w>\nà® ª</w>\ntt ino</w>\nshar i</w>\nsem per\nbetter together</w>\nðŁĳĬ ðŁı»\nze bra\npon dering</w>\nen chil\nho m</w>\ncosm ic\ntan z\nmo cked</w>\nec cc</w>\nath ed</w>\nabo lish</w>\nprop eller</w>\nparis agreement</w>\nassemb lies</w>\nindu stry\nfraudul ent</w>\npe sa</w>\nchang min</w>\nax x\nðŁĴ µ\nirr ational</w>\ncu sa</w>\nramad han</w>\nocta via</w>\non elove</w>\njac ki\nbar ak\ntaxi der\nseri ous\nnathan fillion</w>\nmc en\nch k</w>\npo part</w>\ngrav ity\ncopp ola</w>\nreading fc</w>\nillu sions</w>\nj ig</w>\nww x</w>\nre sh</w>\nex porting</w>\nbuzz ard</w>\nâĻ ¤</w>\np cm</w>\nlan apar\nko s\narom as</w>\nantal ya</w>\nww dc</w>\nven a</w>\nphil a</w>\nball in\nðŁĳ Ħ</w>\nquin ta</w>\nma o\nf ery</w>\neigh ty</w>\nsentim ents</w>\nsafe guarding</w>\nr wa</w>\npu ffs</w>\nluc ille</w>\nde cath\nsl u</w>\nnu gent</w>\nde ter</w>\nbraz il\nze iss</w>\nsuper bowl\nsubsi dy</w>\nalter n\nhi dalgo</w>\nenz ymes</w>\nä ½\ntag ne</w>\nhair dresser</w>\nadri en</w>\nwalk out</w>\noppo ses</w>\ncan tina</w>\nbed side</w>\naf an\nðŁĶ Ĺ\nprophe tic</w>\ndan es</w>\nun successful</w>\nsuper charged</w>\npk k</w>\nexem ption</w>\nhart le\nsecu lar\ncli pping</w>\nbr s</w>\nunited way\nc net</w>\npat chy</w>\nha gan</w>\ne en\nâļ ľ\nvar a</w>\nsym pathi\nnever trump</w>\naffir mation</w>\nom f</w>\nny cfc</w>\nma ja</w>\nsur ro\nkeer th\nup scale</w>\nsandal wood</w>\nmon archy</w>\nkno bs</w>\nå ĭ\npo tholes</w>\nhunger games</w>\nter races</w>\nna sir</w>\ncoun sell\nwelcome to\nwa q\nse aman</w>\nm ita</w>\nstun ningly</w>\non theroad</w>\nin ability</w>\n) !!</w>\nbon go</w>\nant v</w>\nsp ut\nworldenviron mentday</w>\nresu sc\ny td</w>\nfi m</w>\neun hyuk</w>\nsa chin\nrose anne</w>\ncler mont</w>\nape c</w>\nam ina</w>\nv ening</w>\nn antes</w>\nal most\nsin us</w>\nex as</w>\nty l</w>\nti en</w>\nple ad</w>\nlanc s</w>\nbur naby</w>\nre k\njo om\nobserv ers</w>\ndisco graphy</w>\ncl g</w>\nâĻ ¦</w>\nsn ack\nr ti</w>\no ily</w>\ncrystal li\nbru te</w>\nweb development</w>\ntopp ings</w>\nla f\nan is</w>\nad der</w>\nreli ving</w>\ncar lin</w>\nbattle of\nwe g</w>\nsyri an\npon t\nn dc</w>\nlagh ate\nyu ma</w>\nsp p</w>\np iti\nro bbing</w>\nmart ing\nrey kja\nraj put</w>\nnc ds</w>\nkie wicz</w>\nâĢ¢ âĢ¢</w>\nvam pire\nsubstan tially</w>\nopio ids</w>\nnepal i</w>\nk line</w>\nar oo</w>\nunder stand\nlit t</w>\nu it</w>\nthro mbo\nsar ies</w>\nqu ot</w>\nb alling</w>\nt tr\ns gh</w>\nphilip p</w>\nbr ant</w>\nac l\nm ello</w>\nwhit taker</w>\n. ;</w>\ndefi ant</w>\nb gc</w>\nrepl ying</w>\nmir ren</w>\nmetamor pho\nsch wab</w>\nbul ge</w>\nutili zed</w>\npick ering</w>\npar don\nd sa</w>\nà¸ Ī\ndoo ley</w>\ncumul ative</w>\nÐ »\nur gency</w>\ne mir</w>\n+ /-</w>\n¦ Ī</w>\not as</w>\nâı ³</w>\nstation ed</w>\ngrape vine</w>\nar ac\nkaran johar</w>\nf ancy\nsau l\ncoo gs</w>\nlgbt q\nØ§Ù ħ\njav i</w>\nu mmer</w>\npl l\nden is\ndai pur</w>\npu ffin</w>\nlewi sham</w>\nfand om\nco pe\nves matter</w>\ns ve\nhel pless</w>\ndeo dor\nostr ich</w>\nkaz an</w>\nfriday the</w>\ncon dor</w>\nv x</w>\nsophom ores</w>\nrob les</w>\ncu tt</w>\ncli mbers</w>\në¦ ¬\nsle g</w>\nsn f</w>\nmac ys</w>\nhydr ating</w>\ngrou pe</w>\npo yn\nmou lin</w>\nhg tv</w>\nlmfa ooo</w>\nsulph ur</w>\nasdfghj kl</w>\nannab elle</w>\nhump back</w>\nbra ved</w>\nviswas am</w>\nmulti purpose</w>\nhu midi\nescor ted</w>\nbarb ican</w>\nf ad</w>\ncor sa</w>\nðŁ¤ «</w>\npi ppa</w>\nhere to\ncan y\nser gi\nor cas</w>\no vie\ned ou\ns any\nglob alization</w>\nman cini</w>\nfood truck</w>\nf is</w>\ndefi brill\nsch re\nsma fia</w>\nlove wins</w>\nla ut\nk aka</w>\nhol lande</w>\ngame on</w>\nresurg ence</w>\nout side\nolympi ad</w>\nint an\nabstr action</w>\nrapi d\npal om\ncal le\njas min</w>\nattack ers</w>\nswag g</w>\nmit ra</w>\nky lo</w>\nà® ²</w>\nher mitage</w>\ngor do</w>\ne ira</w>\nso sfam</w>\nroll out</w>\nexc ite</w>\nsy nod</w>\nmer rill</w>\nc als</w>\nas sa</w>\nliveli hoods</w>\nju ve\nthe black\ngopack go</w>\nant lers</w>\nalban ian</w>\nwool ly</w>\nqu iche</w>\npuri fication</w>\nare th</w>\nsmar thome</w>\nne k</w>\nall blacks</w>\nmex icans</w>\nis m\nger ms</w>\ncomple xion</w>\nmar ck</w>\nu shi</w>\nðŁĲ Ĳ\nchar l\nca stic</w>\ntill erson</w>\ngiuli ani</w>\nbiode gradable</w>\nmal bec</w>\nbo is\nju bil\nim es</w>\nr ame</w>\ngene tic\nesp nu</w>\nch ley</w>\nso ho\ngo pher\ng sc</w>\nbuu ren</w>\ncu be\nbridesma ids</w>\nwebin ars</w>\nto e\nmani pur</w>\nviol ently</w>\nnotic ias</w>\nex changing</w>\nchi ev\nreplac eable</w>\nmuay thai</w>\nbu ss</w>\nsp il\ninstal ment</w>\ndiv ya</w>\ncait lin\no lim\nfil tering</w>\nwhirl wind</w>\nsta red</w>\nprior it\npr am\npompe ii</w>\nmono logue</w>\nk ite\nbu ka</w>\nâĢ¦ ..</w>\nvac cine\nbre ro</w>\nwoz ni\nsol ent</w>\nre ferr\nmy rt\ngridi ron</w>\ngalatasar ay</w>\nfro ze</w>\nclare mont</w>\nðŁ¥ ĥ</w>\nvictori as\nssel dorf</w>\npa stures</w>\nnet neutrality</w>\nch or</w>\nðŁĳ ģ\nà² ¿</w>\nwe ho</w>\nsymp tom</w>\njo sel\nin ous</w>\ndragon con</w>\npower ball</w>\np te</w>\nfour thofjuly</w>\nec la\near buds</w>\nwhere abouts</w>\nsalt life</w>\ndepriv ation</w>\nch ter</w>\nwi ggle</w>\nsyste m\nps st</w>\nch az\nd any</w>\nri mo</w>\noax aca</w>\nlanapar rilla</w>\nbarcel on\nmelanch oly</w>\nway back\nho tro\nn si\nl illy\nkur o</w>\nja han</w>\nintellec t</w>\nboard game</w>\nðŁı Ĭ</w>\nsneak peek</w>\nk prc</w>\njail s</w>\ncand el\nzan zi\nmor timer</w>\nstar ch</w>\nra gs</w>\np fa</w>\nlong live\nk art\ngir ona</w>\ncro cker</w>\nchristop h</w>\nprecau tions</w>\nwar ship</w>\nper m</w>\nparen t\nvan gogh</w>\ngif ford</w>\nallegh eny</w>\nra yn\nut m</w>\nsten cil</w>\nrec alling</w>\npen ney</w>\nz azzle</w>\nìĥ Ŀ\nhin ds</w>\naren as</w>\nnu ev\nlaw ler</w>\ngu in</w>\ndo this</w>\nðŁĳ ķ</w>\nì¶ķ íķĺ\nwe g\nti b\nri din</w>\ncomplex es</w>\nturbul ent</w>\npe sos</w>\nde marcus</w>\nvall arta</w>\nsam sun\nkis ses\nhein rich</w>\ndeport es</w>\nwil ms\nur d</w>\nthen ext\ninki gayo</w>\nho wi\nfir sts</w>\ncarri age\nclean liness</w>\nmas war\nis ch</w>\nax el\nsi zzle</w>\nroad house</w>\nfr ans</w>\nent ourage</w>\nco bble\nboo th\nbenedic t\ntal on</w>\nfc u</w>\nyear ofthe\nray on</w>\nraider nation</w>\nfo yle</w>\nko val\npi anos</w>\nl pg</w>\nbur mese</w>\nman ure</w>\ngeo caching</w>\ncosc ino</w>\nb np</w>\nfer ra\nstro phy</w>\nmar ais</w>\nce es</w>\nlegen dof\nkat niss</w>\neno ch</w>\nav ed</w>\nyou know\nd prk</w>\nðŁĺ¢ ðŁĺ¢</w>\nsp un\npro st</w>\nsor rows</w>\ncent red</w>\nke a</w>\ngal icia</w>\n? ðŁ¤Ķ</w>\nÑĢÐ¾Ð´ Ð°</w>\nbou chard</w>\nðŁĴĻ ðŁĴľ\nyu i</w>\nseed lings</w>\njon ah\nreco vers</w>\nny rd</w>\nboard room</w>\nsu ma</w>\nmy japs</w>\ntun g\nsha i</w>\nir gc</w>\neli o</w>\nwag ons</w>\nka shi\npolic emen</w>\njohn nie</w>\nale coscino</w>\nshop ify</w>\ndot ted</w>\nde tri\nva w</w>\nto fficial</w>\nin your\nchal mers</w>\ntrac ed</w>\nno vi\nby es</w>\nari el\nnipp on</w>\nla pel</w>\ngri ez\nb gs</w>\nfool ing</w>\nd ita</w>\nvijay sethu\nnm wx</w>\nas ot</w>\nkr anti</w>\nhel m\nve di</w>\nsic kest</w>\nmo chi</w>\nk abo\nshru bs</w>\nhe red\nb sp</w>\nsq m</w>\nham r</w>\ndul kar</w>\nanth a</w>\nnr f</w>\navoid ance</w>\nat en</w>\npubli x</w>\nbe arers</w>\nnas i</w>\nha p</w>\nh ells</w>\nðŁĸ ¥</w>\nà¸ ·</w>\nthelast jedi</w>\noh wx</w>\nðŁį «\nwa hoo</w>\nthere se</w>\nrec aps</w>\nss nhq</w>\nbird photography</w>\nv ay\npet ti\npau lo\nbel vedere</w>\n( *\ngr l</w>\ndu vet</w>\nc pec</w>\nsa it\npor sch\nmeas urable</w>\navi ators</w>\nfre mantle</w>\nbre en</w>\non om\nme and\nlife saving</w>\neu ref</w>\nen don</w>\nembar as\naira sia</w>\nel is</w>\ndun kin\nstar magic\ns ill</w>\nporto bello</w>\nki efer</w>\nex e</w>\nmu ted</w>\nãģ ¦\nwe thepeople</w>\nlogi a</w>\nliber al\ntheforce awakens</w>\nmin ed</w>\nhaun ts</w>\nfreck les</w>\ncare taker</w>\ns india</w>\nâķ Ĳ\ndev lin</w>\nlist on</w>\ndirection er</w>\noh n</w>\nfi garo</w>\nem manuel\ndu bois</w>\ncl ones</w>\nbru ise</w>\nðŁİĪ ðŁİī</w>\ndisin fe\nder matology</w>\nas r</w>\ns watch</w>\ndis comfort</w>\ntam anna\npi day</w>\nmack en\nk atic</w>\ndelu sional</w>\nshaw nee</w>\ngu d\nal bino</w>\np ali\ndin gh\ncucu mbers</w>\ncoffe y</w>\nanticip ating</w>\ntreas ured</w>\nweb summit</w>\nshel tered</w>\nsav or</w>\npedago gy</w>\nm gs</w>\nsh ma</w>\ns bu\nden ali</w>\ncam pos</w>\nbubble gum</w>\no ir\nle aps</w>\ny ler</w>\nr one\nsansk rit</w>\nmin t\nmeat less\nfuturi st</w>\ndu de\na vel</w>\nprote sted</w>\nsqu ire</w>\nz aki</w>\nsz n</w>\nhar court</w>\ncycl one\nbour dain</w>\ngather ings</w>\nd ant\nadvent urer</w>\nparag on</w>\nalt man</w>\ndd ing\nban erjee</w>\nsnorkel ing</w>\nmother well</w>\nmis sy\nen der\nglo ws</w>\nki wis</w>\nchick pea</w>\npor o\ne fron</w>\napp t</w>\nu y</w>\nspeci fied</w>\ngab by\ne strada</w>\ncom bos</w>\nbour bon\nvin i</w>\nvar un\nsteph ani\nkey words</w>\ncar vings</w>\namit abh</w>\nwr ought</w>\ntw al\nre els</w>\nclu bbing</w>\nubi quit\ncri t</w>\nambed kar</w>\næ Ļ\nprun ing</w>\nvaccin ated</w>\nboe ing\ns ks</w>\nlo ona</w>\nhypno sis</w>\nedel man</w>\npho l</w>\nhe w\ncolo sse\nmckin sey</w>\nu on\nto te\nsacrific ing</w>\nox i</w>\nn ang\ne mu\nÐ¿ÑĢÐ¸ ÑĢÐ¾Ð´Ð°</w>\nm th</w>\nkers wednesday</w>\nargu ed</w>\ntimel apse</w>\nris king</w>\nregul ating</w>\nni gh</w>\nlikeli hood</w>\ncu bic\nau ction\nrein for\npi stor\nno ses</w>\nye l</w>\nsnu ggles</w>\npe i\njean ette</w>\nta ku</w>\nri th\nguy z</w>\nà¸ ŀ</w>\ny te</w>\nver ted</w>\npay soff</w>\njau regui</w>\nhoo ligans</w>\nprocedu ral</w>\nmi b</w>\nhar dy\nel eng\nchec kers</w>\nall ine</w>\nthe met</w>\nprou dof\nkeerth yofficial</w>\ncollabor ator</w>\nni u</w>\ninfl icted</w>\nadv ani</w>\nre twee\nmemor iam</w>\nf icial</w>\nti ghter</w>\nsal em\nre viewers</w>\nbr ics</w>\nben digo</w>\nam ell</w>\ntur kish\nsush maswar\npaul son</w>\npal awan</w>\nmol lie</w>\nstitch er</w>\ns burgh</w>\nir u</w>\nhay dn</w>\nen ers</w>\naro a</w>\nu zzi</w>\nsaraj evo</w>\nhel a</w>\napol lo\nnine ty</w>\nvac a</w>\nsp on</w>\nvent u\njel ena</w>\nhei fer</w>\navo ids</w>\nsp ine\npri ze\nmar ist</w>\nre creating</w>\nme de</w>\nwoo den\nfind lay</w>\nro fl</w>\nn di</w>\ncompreh end</w>\nyu go\ny Ã¼\nto work</w>\nu fos</w>\nson ar</w>\npi ston</w>\nrecor ding\ntent ative</w>\nart forsale</w>\npel lets</w>\nfre do</w>\nÙĪ Ø±\nmu ses</w>\ncustom ization</w>\npro found\nis ner</w>\nide ally</w>\nsi am</w>\nplan kton</w>\ncm dr</w>\nman ger</w>\nfran ken</w>\ncustomiz able</w>\nà¤ ®\nwalk away</w>\nswi vel</w>\nvast ly</w>\nno ton\nlex a</w>\nex moor</w>\nz as</w>\ntan te</w>\nreduc tions</w>\nlol ly</w>\nhip sters</w>\nbenef ited</w>\në ²\nww www</w>\nmascul ine</w>\nfi ji\ndre y\nph ill</w>\nane ous</w>\nnic ol</w>\nmen dez</w>\ndisapp ro\nch ner</w>\nthrough s</w>\nshen mue</w>\neast man</w>\nðŁĲ İ\nyu ck</w>\nunder tale</w>\nre ys</w>\ngo beavs</w>\neng en</w>\nc na</w>\nmer r\nbir k\nãģ¨ç¹ĭãģ ĮãĤĬãģŁãģĦ</w>\nâĥ£ @</w>\nyn na</w>\nste ed</w>\noffen der</w>\nat um</w>\nvani shing</w>\npresi denti\nlove them</w>\ng nocchi</w>\nfri ggin</w>\nper il</w>\nmad hya</w>\nag ne</w>\ndee jay\nmar nock</w>\nm tb\nfold able</w>\n@ ___</w>\nstand re\nbron x\nbow ski</w>\nfin ite</w>\ncro ckett</w>\nb sf</w>\nge tit</w>\nseren awilliams</w>\nmir o</w>\nignati us</w>\nsla y\nrin se</w>\nfon due</w>\nsel dom</w>\ns more</w>\ngan i</w>\ndy ce</w>\ndmit ry</w>\ncru mb\nlate post</w>\npri mark</w>\noh ana</w>\nflor als</w>\ndo a</w>\nremembrance day</w>\nd ds</w>\nazi one</w>\ntoon ami</w>\nair port\næĿ ±\nth ad\nfi st\ndine sh</w>\ndr who</w>\nad words</w>\nadmi rer</w>\npro je\nkyrgy z\nà «\nmanife station</w>\nle wan\nj ic\nthi bau\nle ased</w>\nvan ity\nnouri shed</w>\nnever theless</w>\naug mente\nfu elled</w>\nche ad\nwil shere</w>\nru di\np z</w>\nmy co\nmor ro</w>\nherbali fe</w>\nhardro ck\nde man</w>\ndre ality</w>\nsp ades</w>\nce vic\nbha i\nbar on\nultimat efan\nhou news</w>\nto bi</w>\nstru t</w>\nke el</w>\naffili ation</w>\nthe masters</w>\nsm al\nhu e\neste ban</w>\ncon v</w>\nom nic\ndatab ases</w>\nco v</w>\nter ti\nst g</w>\nsnoop dogg</w>\nmetab ol\nleth bridge</w>\nðŁı» âĢįâĻĢï¸ı\nyear ling</w>\nresidente vil</w>\nnws l</w>\niy aki</w>\ngriez mann</w>\nc ous</w>\nðŁĵĿ :</w>\ntor ian</w>\nsam i\nðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\ng are</w>\nalli ances</w>\nwhit field</w>\nwe ther</w>\nrefin ing</w>\ncoy i</w>\nkra ken</w>\nðŁĺĺ âĿ¤</w>\nsingul arity</w>\nlil i</w>\nh ns</w>\nbol dand\nwaw rinka</w>\nmisogy ny</w>\nlo vers\nc q</w>\nb dg</w>\nad ona</w>\ngar ter</w>\nwomen of\nsc d</w>\nrecogn ising</w>\nmun a</w>\nstr ou\nsign alling</w>\nlare do</w>\nhell boy</w>\nalek sand\nun available</w>\npedi atric\nas in\nmer ia</w>\nri shi\nfuturi sm</w>\nw ye\npolari zed</w>\ne we</w>\npro pel</w>\nin forms</w>\ncre ase</w>\n~ \"</w>\narti ston\nlike for\nheidel berg</w>\ner ra</w>\nlife in\nlen ny\ninter rupt</w>\ncohe rent</w>\nca z\nvick ers</w>\nle veled</w>\nf bs</w>\ncab ins</w>\nbu mmed</w>\napost les</w>\nwe h\nten don</w>\nsouven irs</w>\ninfu ri\npier ce\nasse t\nm las</w>\ngo th\ndi ggin</w>\nann as\nyl or</w>\nth waite</w>\nsw el\npan era</w>\nmur derers</w>\ncroo ked\nbs go</w>\nac u</w>\na on</w>\nre an</w>\none of\nko hl</w>\nbloo dh\npest icide</w>\nlost dog</w>\nfle xing</w>\nëĤ ĺ\nsu pra</w>\neter nally</w>\nðŁļ Ļ</w>\npa olo\nol an\nmom o\nis elle</w>\ncaptain marvel</w>\ns lou\nmistak enly</w>\nakhi lesh</w>\nmer t</w>\nil inan</w>\nbu on</w>\nbal kan</w>\nmir ro\nmill en\nder ail\ndam on\ntit i</w>\nbi os</w>\nre don\npic ard</w>\npar te</w>\nðŁ¤ Ł\nØ º\nson ics</w>\nfir sth\ndd c</w>\nveg ans</w>\ntur ban</w>\nni gan</w>\nlot tie</w>\nlyn don</w>\nstar buck\npink floyd</w>\nlife styles</w>\nam ara</w>\na she\nr sc</w>\nval a</w>\nsm er\ncw gc</w>\ncli ent\nbuen as</w>\njag an</w>\ncoo ps</w>\nðŁĳĳ ðŁĳĳ\nspeci alizes</w>\nsnag ged</w>\ng lar\nben net</w>\nwildlife wednesday</w>\nbow den</w>\npi k</w>\nart in</w>\nempor ium</w>\nar l</w>\nre ba</w>\npas ser</w>\ndisappo ints</w>\nadditi ve</w>\nâľĬ ðŁı½</w>\nbay er\nmissou la</w>\nha skell</w>\ncomm ences</w>\nni x\nne man</w>\nexplo ited</w>\nplastic surgery</w>\ncc d</w>\naso cial</w>\nvo t</w>\nsie gel</w>\nfro ome</w>\nkap am\nfar a</w>\ne ha</w>\npro bes</w>\nmw f</w>\nmeet ing\np bb\nak ins</w>\nmistle toe</w>\nkingdom hearts</w>\nfor kids</w>\nec r</w>\nbal e\nescor ts</w>\nadidas originals</w>\nk wa</w>\nk ts</w>\nhallo ffame</w>\nðŁĺį .</w>\nwag s</w>\npot ted</w>\no wing</w>\nhoney comb</w>\nhe fty</w>\nuro logy</w>\nmer le</w>\nb pd</w>\nstri pping</w>\nre ich\nk state\ngu ay\nyon ge</w>\nshak ti\ng loom</w>\nbat t</w>\nson om\nn ery</w>\nel ba</w>\nblan ks</w>\nhel le\ntriple ts</w>\nbom bay\nak arta</w>\nab ia</w>\ntransm itted</w>\nrol f</w>\nja is\nangular js</w>\nfi erc\nm ss</w>\ntrac e\nà¥ ĩ\ntom bs</w>\nold man</w>\nkom bucha</w>\nfo l</w>\ne health</w>\ncere als</w>\nare lli</w>\nin ari</w>\nðŁĴ ©\nwo l</w>\nliber ties</w>\nfa wn</w>\naf firm</w>\nnun avut</w>\nhyster ical</w>\nk drama</w>\nart es</w>\nâĢ¢âĢ¢âĢ¢âĢ¢ âĢ¢âĢ¢âĢ¢âĢ¢\nvalent in</w>\nman slaughter</w>\ngal es</w>\neo in</w>\nenergi zed</w>\ndel s</w>\nwith draws</w>\nst les</w>\nsar castic</w>\nram esh\nincredi bles</w>\nlock hart</w>\nya wn</w>\nultimatefan live</w>\noooooooo oooooooo\nmu en\nguru dev</w>\nte er</w>\npe eling</w>\nnew snow</w>\nlingui stics</w>\ndirec tv</w>\nag end\nuni lever</w>\nru ger</w>\nhan dedly</w>\nero se</w>\nli mel\nthe c\nroyal ties</w>\nfini shers</w>\nnr g</w>\nm gt</w>\nfid get</w>\ncom ps</w>\nbac on\naggre ssively</w>\nab it</w>\nch Ã¢\ntar de</w>\nslu gger</w>\nq anda</w>\ngre ening</w>\nd ats</w>\nensla ved</w>\nspec tor</w>\no ye\nfre ef\nb hand\nstop brexit</w>\nmis conceptions</w>\ncav a</w>\nðŁĺįðŁĺįðŁĺįðŁĺį ðŁĺįðŁĺįðŁĺįðŁĺį\nmultit asking</w>\nhou sel\nferre ira</w>\ncen time\nank les</w>\njo dh\nhel ly</w>\nfro me</w>\nout tuesday</w>\nnar nia</w>\nbal aji</w>\nl bloggers</w>\njyo ti</w>\nðŁį ĩ</w>\nlan cia</w>\ncap ri\ny ap\nnat ash\ndown fall</w>\n.\" âĢĶ</w>\nÃ ®\nligam ent</w>\ncoat ings</w>\nai ded</w>\nhi ko</w>\nfall ing\nencryp ted</w>\nyeg food</w>\ninfringe ment</w>\ncu di</w>\nce p</w>\nðŁĺį ðŁĺĤ</w>\ntra d\nsuper rugby</w>\ned win\nwh iche\nvi meo</w>\nlay ne</w>\nin vigor\nhe he\ndubrov nik</w>\nbie ber\nu tr\nsham an</w>\nop ers</w>\nham ill</w>\nen ig</w>\ndi f</w>\nar um</w>\nscrap book</w>\nmin h</w>\ndiver gence</w>\nmckin non</w>\nlife time\nguter res</w>\nwil le\nple as</w>\npatt y\nmic ron\nk z\ndom aine</w>\nru sher</w>\nm ds</w>\nches ney</w>\nscrew driver</w>\nâģ© ,</w>\nsle dge</w>\nhau er</w>\nchan a</w>\nstam ina</w>\nsprink ler</w>\npl n</w>\nhe ff\nbol ton\nom on\ncar rington</w>\naccor dion</w>\njor ge\ninter ception</w>\nin puts</w>\ngu ll\ntran scription</w>\nvanu atu</w>\nit ical</w>\neth os</w>\ntic h</w>\nspac ey</w>\npee king</w>\nu mi\nha ger\npsycho tic</w>\nilli an\nilli a</w>\nbonnar oo</w>\nan ese</w>\npu c\nlaghate parth</w>\nen hall</w>\neconom ical</w>\ndre dge</w>\n% -</w>\nu we</w>\ntu bular</w>\nscoun cil</w>\npe asants</w>\nfl er</w>\ntumb ler</w>\nhe p</w>\nford ham</w>\nrow ley</w>\niniti als</w>\nev asion</w>\ner nation</w>\nplu gins</w>\ncoch ran</w>\nc attle\nacid ity</w>\nðŁİĬ ðŁİī</w>\nre grann</w>\njump man</w>\nef ace</w>\nx ma\npatri archy</w>\nesco bar</w>\ncristi an</w>\ntip ton</w>\nnu eva</w>\nhack ney\nback seat</w>\nkill arney</w>\naid an\nsta dion</w>\nsimul taneous</w>\nida ho\na je\nu th\nfigu re\nclo s</w>\nbur k\nvolun tar\nrec ite</w>\nmacfar lane</w>\ncur few</w>\nbou do\nw gn\nsti x</w>\nsla p\nscrat ched</w>\nphilli p\njour ne\nex pelled</w>\nwa z</w>\nu ke\ntati ana</w>\nou e</w>\nho pp\ndimit ri</w>\nðŁĵ £\nmato logist</w>\nelectri fying</w>\nblu ffs</w>\nbill smafia</w>\naz cardinals</w>\ny aa\nx mas\nshar a</w>\nr ith</w>\ng ills</w>\ndre s\nbar ton\nauthori zation</w>\nimperi alism</w>\nhome of\nto do\nfoot path</w>\nband width</w>\nvisit spain</w>\nmoh sin</w>\nerup ted</w>\nmi ki</w>\ninsig nia</w>\nmike l</w>\nss h</w>\nger a</w>\nbank holiday\naw an\nt weak</w>\nstar craft</w>\ne al\nconstruc tion\nskelet ons</w>\nle ep\nine m</w>\nbar clay\nship wreck</w>\nmonsi eur</w>\nyo h</w>\nron t</w>\nform ative</w>\nser o\nle p\nhorse man</w>\nhoo sier</w>\nhaz mat</w>\ncylin ders</w>\ncen ti\nðŁĴ¥ðŁĴ¥ ðŁĴ¥</w>\nre em</w>\nna ire</w>\nmus ically</w>\ngras shopper</w>\nest onian</w>\ntermin ology</w>\nro main</w>\nblogger rt</w>\ntox in</w>\nstan ce\ncultiv ated</w>\nan ast\nðŁĲ į\nshi mano</w>\ngo pher</w>\nene i</w>\nrecycla ble</w>\ngam ification</w>\nfight for\nc q\navoc ados</w>\nke ys\neli ke\ngly cer\nshak ur</w>\nmobili zation</w>\ngal ley</w>\nexpla in\nex changed</w>\npe th</w>\nobe dience</w>\nilla ge</w>\nen nis\nãĥ ŀ\nwi v</w>\nwalla bies</w>\nma ar</w>\nig ers</w>\nfin tech\nfin alized</w>\nwo j\nmeaning less</w>\nin field</w>\nonna ise</w>\ne et</w>\nbron te</w>\npass ages</w>\nðŁĳ §\nstrick land</w>\nnorthern lights</w>\nlom ond</w>\nh tc\nwr ay</w>\nshi fter</w>\ndi alog</w>\nðŁį į</w>\n>> >>>></w>\nte atime</w>\nste ch\nsic huan</w>\nqu ill</w>\nfran ca\ncomple mentary</w>\nbar rington</w>\nmarcu s\nmal am</w>\ngoo oo</w>\nfor sa\nelec tra</w>\naf s</w>\nâĹ Ĩ</w>\ntri fe\nsn azzy</w>\nfo lia</w>\nand olan</w>\nafter dark</w>\nwood son</w>\nstra de</w>\nlitt lest</w>\no gun\ncon wy</w>\nco wards</w>\nðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤ</w>\níĬ ¸\nse ul\nmur phy\ndun ks</w>\nkapil shar\njo achim</w>\nwom ack</w>\nequal ity\naver ages</w>\na ine\nðŁ¦ Ī</w>\ntac ular</w>\ndis ability\nu ked\nmid century</w>\nbar thol\nteas ers</w>\ntab ern\nnj caa</w>\nsp out</w>\nop i</w>\nku bball</w>\nbl om\nso ar\npopu lism</w>\nmeth yl\nðŁĳĬ ðŁı¼\no spre\nalo ils</w>\nðŁĵ ĸ\nðŁĮ ļ\nx er\nsp illing</w>\npubl ica</w>\ncar dam\nadi sh</w>\nsa cha</w>\np kg</w>\nbu da</w>\nlyric ist</w>\ni bc</w>\ngru mp\nho ver</w>\nhal ep</w>\nanti body</w>\nanem one</w>\nâĻ¥âĻ¥ âĻ¥âĻ¥\nm cl\nlitho graph</w>\ncc u</w>\ns fest</w>\npath ic</w>\ncalli ster</w>\notta wa\ngun sn\nrut ger\nhali but</w>\nen vision</w>\ndifferenti ate</w>\nðŁļĢ ðŁļĢ\npir an\nlat el\nuc n</w>\ntrou bad\nra ine\nfierc ely</w>\nlearn english</w>\nlea se\nwex mondays</w>\nem it</w>\ndray ton</w>\nbur rell</w>\nscuba diving</w>\nhol ler</w>\ndr u</w>\nclo cked</w>\nw ral</w>\nap ro</w>\ntrans lucent</w>\nw bo</w>\npatri arch</w>\nmo ja\nlan nister</w>\nfish ery</w>\nne derland</w>\nmil dly</w>\nmi rai</w>\nma ko</w>\nja p</w>\nðŁĺ©ðŁĺ© ðŁĺ©</w>\npro statec\np anna</w>\nar ama</w>\nunder taking</w>\ntomp kins</w>\nne op\nsoli ds</w>\nsav oury</w>\ne ames</w>\ncut lery</w>\nwood bridge</w>\nsteam er</w>\nri zzo</w>\nwild cat\nrat na</w>\nlamin ated</w>\nkin eni</w>\njal ap\nai des</w>\nacknowle dges</w>\n?! ?!?!</w>\n! ðŁİī</w>\nw afc</w>\nmag gio</w>\nha ves</w>\ndar je\nof i</w>\ngr il\nv asi\nbru x\nmo hd</w>\nfake speare</w>\narn old\nr mb</w>\nfor be\nwal leye</w>\nro di\ntherapeu tics</w>\nstrate gi\nob ste\nmu dder</w>\ndownload able</w>\ndd ings</w>\nd ca</w>\nasi angames</w>\ncampe on\nappropri ation</w>\nth century</w>\nram atta</w>\ndra ped</w>\nbul lion</w>\nmu c</w>\none x</w>\nse greg\nophel ia</w>\nbod ily</w>\nâĿ¤ ðŁĺį</w>\nwi zar\nte ased</w>\nade my</w>\nto id</w>\nsur a</w>\nlazar us</w>\nsn ickers</w>\nma se\nlo h\nbow ed</w>\nbibli o\nx change</w>\nhar lan</w>\ngho shal</w>\nflavor ful</w>\nbha gat</w>\nalle z</w>\nwhiche ver</w>\nten stein</w>\ndisc er\norgan iser</w>\nmt g\ndream liner</w>\nt se\nhok kaido</w>\nmo k\nindulg ent</w>\nhick man</w>\nblin ded</w>\nal yn\naaa ah</w>\nsp ool</w>\nlough borough</w>\ninter pret\net v\naristo tle</w>\noptimi zing</w>\navici i</w>\nmadu rai</w>\nju li</w>\nnaw az\nmat chups</w>\nab ide</w>\npaint ing\nw elling</w>\nvel i</w>\noctag on</w>\nin scribed</w>\npo king</w>\nplac er</w>\nlife cycle</w>\nkili g</w>\ng sp</w>\neli ves</w>\ncle ments</w>\nna sheed</w>\nme sut</w>\nincarcer ated</w>\ndist illed</w>\nwal ang</w>\ndelic acy</w>\ndel gado</w>\nche z\nch ita</w>\nad ero</w>\ntu x</w>\npati l</w>\no do\nabh cosmetics</w>\ntv c</w>\np bc</w>\nin accurate</w>\nhardwork paysoff</w>\nball er\nquot ation</w>\nmerchandi sing</w>\nga stri\ndefen ses</w>\ndro gba</w>\nbex hill</w>\nban kno\nwin ona</w>\nsi eg\np gs</w>\nhahah ha</w>\nagu chi</w>\nsu bram\nmirac le\nde sch\nli bre\nba cher</w>\nent ine</w>\nbbcra di\nlou dest</w>\nr ps</w>\npi erc\nfr yer</w>\nstorm trooper</w>\nrafael nadal</w>\npas co</w>\nexhau stion</w>\nepic onetsy</w>\nrc tid</w>\nkel lie</w>\nga ines</w>\nd bz</w>\nsm riti\ns bridge</w>\nlim ited\ncla w\ntechnic al\nbio graphical</w>\nado red</w>\nà¸ °</w>\nexclu de</w>\nac adia</w>\nkey boards</w>\nfur man</w>\nso ca</w>\nsur u</w>\nni ps</w>\nsw aps</w>\nserver less</w>\nrun e</w>\npu ffy</w>\nnorth ampton\nnish ings</w>\nhen der\ncartri dges</w>\ngun shot</w>\nðŁĵ ¹</w>\nfil ament</w>\nrespon dents</w>\npey ton\nmountaine er</w>\nmer ging</w>\nlife span</w>\nintimid ation</w>\np afc</w>\nnl wx</w>\nexpan sive</w>\npur r\nf ck</w>\nca e</w>\nat ti\ntele thon</w>\nso hn</w>\nmend el\nlo pes</w>\ndor i</w>\nun broken</w>\nte red\ntast ings</w>\nin active</w>\ndisin tegr\nt assel</w>\nshare the\npi ano\nis lay</w>\nair space</w>\nz awa</w>\nricci ardo</w>\nming ton\nfresh er</w>\ncur ry\nre vs</w>\npharo ah</w>\nh mv</w>\nexhilar ating</w>\nwh oo</w>\nlin kin</w>\nkri spy</w>\ncompeten cy</w>\nste wards</w>\nne bu\nkat su\nad mins</w>\nbaz ar</w>\nas ar</w>\ngiving back</w>\ns summit</w>\nsong z</w>\nlin us</w>\nraj kumar</w>\nfarm ington</w>\nfanta sia</w>\nðŁĺ´ ðŁĺ´</w>\nso bri\nlis se</w>\nbarry more</w>\npri sm\nblo b</w>\nsen ew\nmono xide</w>\nexp ire</w>\neigh teen</w>\ndi pper</w>\nxi ao</w>\nkil t</w>\nhin ch\nbbc sport</w>\nbam boo\np ter\nex al\nðŁ¦ ĭ\nham lin</w>\nexpe ditions</w>\nstar gazing</w>\nfood security</w>\nwy lie</w>\nul f</w>\nst ingly</w>\non storm</w>\nlo eb</w>\nbro ome</w>\nbn ha</w>\npancre atic</w>\neli ve\n!!!!!!!! !!!</w>\nther apper</w>\northo pedic</w>\navengers endgame</w>\nantit rust</w>\nìļ °</w>\ngo te</w>\nom d</w>\noff side</w>\ngy llen\nwin eries</w>\nwhite water</w>\nad l</w>\nlu pita</w>\nexce eds</w>\nconsi sted</w>\nchew bacca</w>\nash leigh</w>\nnhl jets</w>\nis san\nsh ld</w>\nhay at</w>\ncran berries</w>\nðŁ¤ĺ ðŁı½</w>\nrock the\nspring training</w>\nfall out\ndairy free</w>\nwa j</w>\nun decided</w>\nso wn</w>\nrc n</w>\nnorth wales</w>\nhtt r</w>\nfu mble</w>\nd its</w>\ncomp elled</w>\npopu list</w>\nmin ted</w>\nblan chett</w>\n. ''</w>\npro pulsion</w>\nm illa</w>\nau berg\nher tz</w>\nh ta</w>\nu daipur</w>\nserendip ity</w>\nazte cs</w>\nals ace</w>\nðŁĲ ĳ</w>\nlu n</w>\nsho es\nchar li</w>\ngar za</w>\nðŁĴ Ł\npro biotics</w>\nfox tv</w>\nol is</w>\nmi ff\nloc alized</w>\ndiffu ser</w>\nsi gue</w>\nfun ko\nrend ous</w>\nðŁĴ ĳ</w>\njeky ll</w>\n"
  },
  {
    "path": "configs/flux/tokenizer/special_tokens_map.json",
    "content": "{\n  \"bos_token\": {\n    \"content\": \"<|startoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": true,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"eos_token\": {\n    \"content\": \"<|endoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": false,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"pad_token\": {\n    \"content\": \"<|endoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": false,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"unk_token\": {\n    \"content\": \"<|endoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": false,\n    \"rstrip\": false,\n    \"single_word\": false\n  }\n}\n"
  },
  {
    "path": "configs/flux/tokenizer/tokenizer_config.json",
    "content": "{\n  \"add_prefix_space\": false,\n  \"added_tokens_decoder\": {\n    \"49406\": {\n      \"content\": \"<|startoftext|>\",\n      \"lstrip\": false,\n      \"normalized\": true,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"49407\": {\n      \"content\": \"<|endoftext|>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    }\n  },\n  \"bos_token\": \"<|startoftext|>\",\n  \"clean_up_tokenization_spaces\": true,\n  \"do_lower_case\": true,\n  \"eos_token\": \"<|endoftext|>\",\n  \"errors\": \"replace\",\n  \"model_max_length\": 77,\n  \"pad_token\": \"<|endoftext|>\",\n  \"tokenizer_class\": \"CLIPTokenizer\",\n  \"unk_token\": \"<|endoftext|>\"\n}\n"
  },
  {
    "path": "configs/flux/tokenizer/vocab.json",
    "content": "{\n  \"!\": 0,\n  \"!!\": 1443,\n  \"!!!\": 11194,\n  \"!!!!\": 4003,\n  \"!!!!!!!!\": 11281,\n  \"!!!!!!!!!!!!!!!!\": 30146,\n  \"!!!!!!!!!!!</w>\": 49339,\n  \"!!!!!!!!!!</w>\": 35579,\n  \"!!!!!!!!!</w>\": 28560,\n  \"!!!!!!!!</w>\": 21622,\n  \"!!!!!!!</w>\": 15203,\n  \"!!!!!!</w>\": 9168,\n  \"!!!!!</w>\": 5203,\n  \"!!!!</w>\": 2360,\n  \"!!!\\\"</w>\": 28048,\n  \"!!!)</w>\": 42532,\n  \"!!!</w>\": 995,\n  \"!!\\\"</w>\": 20556,\n  \"!!#</w>\": 34997,\n  \"!!)</w>\": 28352,\n  \"!!</w>\": 748,\n  \"!!@</w>\": 40705,\n  \"!\\\"</w>\": 2947,\n  \"!\\\"@</w>\": 43819,\n  \"!#</w>\": 9670,\n  \"!'</w>\": 13222,\n  \"!),</w>\": 37904,\n  \"!).</w>\": 26225,\n  \"!)</w>\": 4571,\n  \"!*</w>\": 37737,\n  \"!,</w>\": 29325,\n  \"!-</w>\": 43499,\n  \"!...</w>\": 22121,\n  \"!..</w>\": 35475,\n  \"!.</w>\": 22517,\n  \"!:)</w>\": 31671,\n  \"!:</w>\": 17545,\n  \"!</w>\": 256,\n  \"!?!</w>\": 29767,\n  \"!?!?</w>\": 47081,\n  \"!?</w>\": 6004,\n  \"!@</w>\": 15117,\n  \"!]</w>\": 34466,\n  \"!âĢ¦</w>\": 35068,\n  \"!âĿ¤ï¸ı</w>\": 32559,\n  \"!ðŁİī</w>\": 49085,\n  \"!ðŁĺĬ</w>\": 43434,\n  \"!ðŁĺį</w>\": 36438,\n  \"\\\"\": 1,\n  \"\\\"!</w>\": 10377,\n  \"\\\"\\\"\": 41530,\n  \"\\\"\\\"\\\"</w>\": 25539,\n  \"\\\"\\\"</w>\": 8575,\n  \"\\\"#</w>\": 8345,\n  \"\\\"'</w>\": 31065,\n  \"\\\"(</w>\": 32741,\n  \"\\\")</w>\": 13112,\n  \"\\\",</w>\": 4332,\n  \"\\\"-</w>\": 9375,\n  \"\\\"....</w>\": 37785,\n  \"\\\"...</w>\": 9049,\n  \"\\\"..</w>\": 25403,\n  \"\\\".</w>\": 2811,\n  \"\\\"/</w>\": 39486,\n  \"\\\":</w>\": 7811,\n  \"\\\";</w>\": 37549,\n  \"\\\"</w>\": 257,\n  \"\\\"?</w>\": 11727,\n  \"\\\"@</w>\": 1512,\n  \"\\\"@_</w>\": 20236,\n  \"\\\"[</w>\": 36930,\n  \"\\\"âĢ¦</w>\": 33993,\n  \"\\\"âĢĶ</w>\": 41151,\n  \"#\": 2,\n  \"##</w>\": 15483,\n  \"#...</w>\": 31491,\n  \"#:</w>\": 30144,\n  \"#</w>\": 258,\n  \"#@</w>\": 35062,\n  \"#âĢ¦</w>\": 12834,\n  \"#âĢİ</w>\": 34262,\n  \"$\": 3,\n  \"$$\": 24233,\n  \"$$$</w>\": 31859,\n  \"$$</w>\": 14929,\n  \"$)</w>\": 39460,\n  \"$.</w>\": 34682,\n  \"$</w>\": 259,\n  \"%\": 4,\n  \"%!</w>\": 35070,\n  \"%),</w>\": 37819,\n  \"%)</w>\": 16063,\n  \"%,</w>\": 14505,\n  \"%-</w>\": 48784,\n  \"%.</w>\": 12475,\n  \"%;</w>\": 33379,\n  \"%</w>\": 260,\n  \"&\": 5,\n  \"&&</w>\": 27791,\n  \"&</w>\": 261,\n  \"'\": 6,\n  \"'!</w>\": 13781,\n  \"'\\\"</w>\": 19479,\n  \"'#</w>\": 15319,\n  \"''\": 46594,\n  \"''</w>\": 8445,\n  \"')</w>\": 19175,\n  \"',</w>\": 5662,\n  \"'-</w>\": 26152,\n  \"'...</w>\": 20474,\n  \"'.</w>\": 4645,\n  \"':</w>\": 7182,\n  \"';</w>\": 44517,\n  \"'</w>\": 262,\n  \"'?</w>\": 17242,\n  \"'@</w>\": 26397,\n  \"'d</w>\": 1896,\n  \"'ll</w>\": 1342,\n  \"'m</w>\": 880,\n  \"'re</w>\": 982,\n  \"'s</w>\": 568,\n  \"'t</w>\": 713,\n  \"'ve</w>\": 1200,\n  \"'âĢ¦</w>\": 42120,\n  \"(\": 7,\n  \"(!)</w>\": 30253,\n  \"(\\\"</w>\": 18741,\n  \"(#</w>\": 6229,\n  \"($)</w>\": 46597,\n  \"($</w>\": 15186,\n  \"(&</w>\": 15042,\n  \"('</w>\": 18235,\n  \"((\": 22944,\n  \"(((</w>\": 33287,\n  \"((</w>\": 13796,\n  \"().</w>\": 41737,\n  \"()</w>\": 8475,\n  \"(*\": 48004,\n  \"(*</w>\": 39575,\n  \"(+</w>\": 12903,\n  \"(-</w>\": 20228,\n  \"(...</w>\": 45159,\n  \"(.</w>\": 43055,\n  \"(:</w>\": 8528,\n  \"(;</w>\": 23983,\n  \"(</w>\": 263,\n  \"(?)</w>\": 22885,\n  \"(@</w>\": 2181,\n  \"(Â£</w>\": 33987,\n  \"(Â©</w>\": 44886,\n  \"(ðŁĵ·:</w>\": 34610,\n  \"(ðŁĵ·</w>\": 37999,\n  \"(ðŁĵ¸:</w>\": 44422,\n  \"(ðŁĵ¸</w>\": 45204,\n  \")\": 8,\n  \")!!</w>\": 47518,\n  \")!</w>\": 7805,\n  \")\\\"</w>\": 13046,\n  \")#</w>\": 39981,\n  \")'</w>\": 23613,\n  \")(</w>\": 27956,\n  \"))\": 13720,\n  \"))))\": 42911,\n  \"))))</w>\": 34181,\n  \")))</w>\": 18305,\n  \"))</w>\": 5167,\n  \"),</w>\": 2361,\n  \")-</w>\": 19034,\n  \")...</w>\": 15274,\n  \")..</w>\": 41822,\n  \").</w>\": 1818,\n  \")/</w>\": 26616,\n  \"):</w>\": 4143,\n  \");</w>\": 19686,\n  \")</w>\": 264,\n  \")?</w>\": 18765,\n  \")@</w>\": 41928,\n  \")_/\": 45028,\n  \")_/Â¯</w>\": 45781,\n  \")âĢ¦</w>\": 41844,\n  \"*\": 9,\n  \"*)</w>\": 30956,\n  \"**\": 9825,\n  \"****\": 21326,\n  \"********\": 42974,\n  \"*****</w>\": 43571,\n  \"****</w>\": 25167,\n  \"***</w>\": 7829,\n  \"**</w>\": 4441,\n  \"*,</w>\": 41895,\n  \"*-*</w>\": 23568,\n  \"*.</w>\": 31304,\n  \"*</w>\": 265,\n  \"*_*</w>\": 44535,\n  \"+\": 10,\n  \"+)</w>\": 34810,\n  \"++\": 47298,\n  \"+++</w>\": 35986,\n  \"++</w>\": 19056,\n  \"+,</w>\": 35885,\n  \"+.</w>\": 25238,\n  \"+/-</w>\": 47614,\n  \"+</w>\": 266,\n  \",\": 11,\n  \",\\\"</w>\": 3823,\n  \",#</w>\": 11215,\n  \",&</w>\": 26905,\n  \",'</w>\": 10599,\n  \",)</w>\": 44493,\n  \",,\": 21340,\n  \",,,,</w>\": 33225,\n  \",,,</w>\": 14811,\n  \",,</w>\": 8844,\n  \",-</w>\": 29821,\n  \",...</w>\": 20365,\n  \",.</w>\": 41277,\n  \",</w>\": 267,\n  \",@</w>\": 13975,\n  \",âĢ¦</w>\": 14601,\n  \"-\": 12,\n  \"-\\\"</w>\": 18646,\n  \"-#</w>\": 10151,\n  \"-$</w>\": 24946,\n  \"-'</w>\": 28010,\n  \"-(</w>\": 33345,\n  \"-)</w>\": 3535,\n  \"-*</w>\": 21527,\n  \"--\": 2154,\n  \"----\": 5753,\n  \"--------\": 11772,\n  \"----------------\": 23122,\n  \"----</w>\": 30164,\n  \"----></w>\": 35999,\n  \"---</w>\": 11079,\n  \"---></w>\": 14518,\n  \"--</w>\": 2432,\n  \"--></w>\": 6422,\n  \"-->></w>\": 47252,\n  \"-.-</w>\": 32765,\n  \"-...</w>\": 43147,\n  \"-.</w>\": 44040,\n  \"-</w>\": 268,\n  \"-></w>\": 5081,\n  \"-@</w>\": 10087,\n  \"-_-</w>\": 27227,\n  \"-__\": 42718,\n  \"-âĢ¦</w>\": 30047,\n  \".\": 13,\n  \".!!</w>\": 37805,\n  \".!</w>\": 14030,\n  \".\\\"\": 18650,\n  \".\\\"-</w>\": 21234,\n  \".\\\"</w>\": 1081,\n  \".\\\"âĢĶ</w>\": 48703,\n  \".#</w>\": 5014,\n  \".'\\\"</w>\": 41558,\n  \".''</w>\": 49379,\n  \".'</w>\": 5938,\n  \".(</w>\": 22294,\n  \".)</w>\": 5376,\n  \".*</w>\": 26145,\n  \".,</w>\": 5276,\n  \".-</w>\": 12481,\n  \"..\": 608,\n  \"..!!</w>\": 23707,\n  \"..!</w>\": 17994,\n  \"..\\\"</w>\": 15229,\n  \"..#</w>\": 15735,\n  \"..,</w>\": 47143,\n  \"...\": 3002,\n  \"...!!!</w>\": 38351,\n  \"...!!</w>\": 39915,\n  \"...!</w>\": 16860,\n  \"...\\\"</w>\": 5240,\n  \"...#</w>\": 8195,\n  \"...&</w>\": 44979,\n  \"...'</w>\": 23167,\n  \"...(</w>\": 37981,\n  \"...)</w>\": 14040,\n  \"...,</w>\": 42717,\n  \"....\": 2386,\n  \"....\\\"</w>\": 26689,\n  \"....#</w>\": 20346,\n  \".....\": 34151,\n  \".....#</w>\": 38867,\n  \"........\": 8246,\n  \"................\": 24855,\n  \"............</w>\": 42965,\n  \"...........</w>\": 35008,\n  \"..........</w>\": 25526,\n  \".........</w>\": 19881,\n  \"........</w>\": 14720,\n  \".......</w>\": 9917,\n  \"......</w>\": 5590,\n  \".....</w>\": 3104,\n  \"....</w>\": 1390,\n  \"....@</w>\": 29790,\n  \"...:</w>\": 34570,\n  \"...</w>\": 678,\n  \"...?</w>\": 16388,\n  \"...@</w>\": 12672,\n  \"..</w>\": 852,\n  \"..?</w>\": 23875,\n  \"..@</w>\": 21124,\n  \"./</w>\": 31975,\n  \".:</w>\": 15811,\n  \".;</w>\": 47596,\n  \".</w>\": 269,\n  \".<</w>\": 29442,\n  \".?</w>\": 29294,\n  \".@</w>\": 1230,\n  \".]</w>\": 33511,\n  \".~</w>\": 42651,\n  \".âĢ¦</w>\": 18047,\n  \".âĿ¤ï¸ı</w>\": 39085,\n  \".âłĢ</w>\": 30097,\n  \".ðŁĺĤ</w>\": 46580,\n  \"/\": 14,\n  \"/#</w>\": 13217,\n  \"/$</w>\": 36266,\n  \"/-</w>\": 19811,\n  \"/.</w>\": 39382,\n  \"//\": 15348,\n  \"////\": 46271,\n  \"///</w>\": 22734,\n  \"//</w>\": 3502,\n  \"/</w>\": 270,\n  \"/@</w>\": 8216,\n  \"0\": 15,\n  \"0</w>\": 271,\n  \"1\": 16,\n  \"1</w>\": 272,\n  \"2\": 17,\n  \"2</w>\": 273,\n  \"3\": 18,\n  \"3</w>\": 274,\n  \"4\": 19,\n  \"4</w>\": 275,\n  \"5\": 20,\n  \"5</w>\": 276,\n  \"6\": 21,\n  \"6</w>\": 277,\n  \"7\": 22,\n  \"7</w>\": 278,\n  \"8\": 23,\n  \"8</w>\": 279,\n  \"9\": 24,\n  \"9</w>\": 280,\n  \":\": 25,\n  \":\\\"\": 29498,\n  \":\\\")</w>\": 46432,\n  \":\\\"</w>\": 12089,\n  \":#</w>\": 26625,\n  \":$</w>\": 33769,\n  \":'\": 8017,\n  \":'(</w>\": 21250,\n  \":')</w>\": 10701,\n  \":'</w>\": 23851,\n  \":((</w>\": 42496,\n  \":(</w>\": 5965,\n  \":)\": 11070,\n  \":))))</w>\": 42339,\n  \":)))</w>\": 21840,\n  \":))</w>\": 10164,\n  \":).</w>\": 39010,\n  \":)</w>\": 1408,\n  \":*</w>\": 12617,\n  \":-\": 13021,\n  \":-(</w>\": 25137,\n  \":-)</w>\": 4223,\n  \":-</w>\": 10323,\n  \":...</w>\": 42140,\n  \"://</w>\": 12441,\n  \":/</w>\": 13604,\n  \"::\": 33077,\n  \":::</w>\": 43818,\n  \"::</w>\": 9788,\n  \":</w>\": 281,\n  \":></w>\": 39677,\n  \":@</w>\": 14339,\n  \":]</w>\": 43486,\n  \":|</w>\": 45986,\n  \":âĢ¦</w>\": 22365,\n  \";\": 26,\n  \";))</w>\": 41873,\n  \";)</w>\": 3661,\n  \";-\": 35657,\n  \";-)</w>\": 10475,\n  \";;\": 34824,\n  \";;</w>\": 24492,\n  \";</w>\": 282,\n  \"<\": 27,\n  \"<-</w>\": 47280,\n  \"</</w>\": 34308,\n  \"<<\": 24588,\n  \"<</w>\": 283,\n  \"<<</w>\": 16482,\n  \"<<<</w>\": 35054,\n  \"<|endoftext|>\": 49407,\n  \"<|startoftext|>\": 49406,\n  \"=\": 28,\n  \"=))</w>\": 39587,\n  \"=)</w>\": 17840,\n  \"=</w>\": 284,\n  \"==\": 11748,\n  \"====\": 21734,\n  \"========\": 38952,\n  \"==></w>\": 29688,\n  \"=></w>\": 9714,\n  \">\": 29,\n  \">.<</w>\": 38507,\n  \">:</w>\": 36196,\n  \"></w>\": 285,\n  \"><</w>\": 28015,\n  \">>\": 8270,\n  \">></w>\": 2988,\n  \">>></w>\": 6395,\n  \">>>>\": 18461,\n  \">>>></w>\": 18435,\n  \">>>>></w>\": 32972,\n  \">>>>>></w>\": 48947,\n  \">>>>>>>>\": 41947,\n  \">_\": 44144,\n  \"?\": 30,\n  \"?!\": 9785,\n  \"?!!</w>\": 25342,\n  \"?!\\\"</w>\": 29315,\n  \"?!</w>\": 2835,\n  \"?!?!</w>\": 16349,\n  \"?!?!?!</w>\": 49084,\n  \"?!?!?</w>\": 37619,\n  \"?!?</w>\": 11395,\n  \"?\\\"</w>\": 3283,\n  \"?#</w>\": 24018,\n  \"?'</w>\": 13610,\n  \"?)</w>\": 9626,\n  \"?,</w>\": 41628,\n  \"?...</w>\": 22641,\n  \"?..</w>\": 43905,\n  \"?.</w>\": 41251,\n  \"?:</w>\": 21067,\n  \"?</w>\": 286,\n  \"??\": 5195,\n  \"??!!</w>\": 43219,\n  \"??!</w>\": 37341,\n  \"??\\\"</w>\": 44996,\n  \"??</w>\": 2197,\n  \"???\": 40017,\n  \"???</w>\": 3824,\n  \"????\": 15936,\n  \"????</w>\": 10362,\n  \"?????</w>\": 21370,\n  \"??????</w>\": 34589,\n  \"????????\": 45091,\n  \"?@</w>\": 29258,\n  \"?ðŁ¤Ķ</w>\": 47928,\n  \"@\": 31,\n  \"@#</w>\": 39397,\n  \"@.</w>\": 43730,\n  \"@/</w>\": 28639,\n  \"@</w>\": 287,\n  \"@@</w>\": 30314,\n  \"@_</w>\": 2692,\n  \"@__</w>\": 17042,\n  \"@___</w>\": 48308,\n  \"A\": 32,\n  \"A</w>\": 288,\n  \"B\": 33,\n  \"B</w>\": 289,\n  \"C\": 34,\n  \"C</w>\": 290,\n  \"D\": 35,\n  \"D</w>\": 291,\n  \"E\": 36,\n  \"E</w>\": 292,\n  \"F\": 37,\n  \"F</w>\": 293,\n  \"G\": 38,\n  \"G</w>\": 294,\n  \"H\": 39,\n  \"H</w>\": 295,\n  \"I\": 40,\n  \"I</w>\": 296,\n  \"J\": 41,\n  \"J</w>\": 297,\n  \"K\": 42,\n  \"K</w>\": 298,\n  \"L\": 43,\n  \"L</w>\": 299,\n  \"M\": 44,\n  \"M</w>\": 300,\n  \"N\": 45,\n  \"N</w>\": 301,\n  \"O\": 46,\n  \"O</w>\": 302,\n  \"P\": 47,\n  \"P</w>\": 303,\n  \"Q\": 48,\n  \"Q</w>\": 304,\n  \"R\": 49,\n  \"R</w>\": 305,\n  \"S\": 50,\n  \"S</w>\": 306,\n  \"T\": 51,\n  \"T</w>\": 307,\n  \"U\": 52,\n  \"U</w>\": 308,\n  \"V\": 53,\n  \"V</w>\": 309,\n  \"W\": 54,\n  \"W</w>\": 310,\n  \"X\": 55,\n  \"X</w>\": 311,\n  \"Y\": 56,\n  \"Y</w>\": 312,\n  \"Z\": 57,\n  \"Z</w>\": 313,\n  \"[\": 58,\n  \"[#</w>\": 11115,\n  \"[...\": 39975,\n  \"[...]</w>\": 43790,\n  \"[</w>\": 314,\n  \"[@</w>\": 15148,\n  \"[]</w>\": 22240,\n  \"\\\\\": 59,\n  \"\\\\'</w>\": 41239,\n  \"\\\\</w>\": 315,\n  \"]\": 60,\n  \"]\\\"</w>\": 39434,\n  \"],</w>\": 34067,\n  \"].</w>\": 26262,\n  \"]:</w>\": 21641,\n  \"]</w>\": 316,\n  \"][#</w>\": 39009,\n  \"][</w>\": 29329,\n  \"^\": 61,\n  \"^)</w>\": 30720,\n  \"^-\": 43516,\n  \"^.\": 31552,\n  \"^.^</w>\": 35791,\n  \"^</w>\": 317,\n  \"^^\": 34454,\n  \"^^</w>\": 9064,\n  \"^_\": 14423,\n  \"^_^</w>\": 15995,\n  \"_\": 62,\n  \"_'</w>\": 44701,\n  \"_(</w>\": 36951,\n  \"_)</w>\": 37393,\n  \"_*</w>\": 36237,\n  \"_,</w>\": 31417,\n  \"_-</w>\": 23193,\n  \"_.</w>\": 26841,\n  \"_/\": 37647,\n  \"_:</w>\": 13109,\n  \"_</w>\": 318,\n  \"__\": 2355,\n  \"__:</w>\": 47043,\n  \"__</w>\": 3838,\n  \"___\": 43812,\n  \"___</w>\": 13530,\n  \"____\": 4727,\n  \"____</w>\": 25350,\n  \"_____</w>\": 38803,\n  \"________\": 9549,\n  \"________________\": 20115,\n  \"`\": 63,\n  \"`</w>\": 319,\n  \"a\": 64,\n  \"a</w>\": 320,\n  \"aa\": 1821,\n  \"aa</w>\": 3894,\n  \"aaa\": 14376,\n  \"aaa</w>\": 9583,\n  \"aaaa\": 6727,\n  \"aaaa</w>\": 19336,\n  \"aaaaa</w>\": 31095,\n  \"aaaaaa</w>\": 44413,\n  \"aaaaaaaa\": 23126,\n  \"aaaah</w>\": 49151,\n  \"aaah</w>\": 35856,\n  \"aaay</w>\": 37846,\n  \"aab</w>\": 34108,\n  \"aac\": 23251,\n  \"aac</w>\": 11346,\n  \"aad\": 20464,\n  \"aad</w>\": 35894,\n  \"aaf\": 37638,\n  \"aaf</w>\": 31534,\n  \"aag\": 42174,\n  \"aah</w>\": 28990,\n  \"aaj\": 28727,\n  \"aaj</w>\": 43411,\n  \"aak\": 37739,\n  \"aal\": 22268,\n  \"aal</w>\": 30208,\n  \"aali\": 27896,\n  \"aaliyah</w>\": 46577,\n  \"aam\": 12943,\n  \"aam</w>\": 22775,\n  \"aama\": 45018,\n  \"aamaadmi\": 45563,\n  \"aamaadmiparty</w>\": 46406,\n  \"aamir</w>\": 27456,\n  \"aan\": 20705,\n  \"aan</w>\": 13426,\n  \"aand\": 38054,\n  \"aap\": 12023,\n  \"aap</w>\": 12052,\n  \"aapl</w>\": 34516,\n  \"aar\": 4695,\n  \"aar</w>\": 13234,\n  \"aard\": 46932,\n  \"aaron\": 13948,\n  \"aaron</w>\": 7709,\n  \"aas\": 28542,\n  \"aas</w>\": 32205,\n  \"aat\": 34018,\n  \"aat</w>\": 35004,\n  \"aau</w>\": 35426,\n  \"aay\": 38281,\n  \"aay</w>\": 40249,\n  \"aaz</w>\": 26770,\n  \"ab\": 596,\n  \"ab</w>\": 3937,\n  \"aba\": 44204,\n  \"aba</w>\": 11102,\n  \"abad\": 33444,\n  \"abad</w>\": 7155,\n  \"aban\": 41662,\n  \"aband\": 8595,\n  \"abandon</w>\": 28805,\n  \"abandoned</w>\": 11227,\n  \"abar\": 17860,\n  \"abar</w>\": 39805,\n  \"abas\": 25402,\n  \"abay</w>\": 43542,\n  \"abb\": 38954,\n  \"abb</w>\": 38297,\n  \"abba</w>\": 30870,\n  \"abbas\": 37494,\n  \"abbas</w>\": 24412,\n  \"abbey\": 31927,\n  \"abbey</w>\": 10132,\n  \"abbie</w>\": 39949,\n  \"abbo\": 13536,\n  \"abbot</w>\": 44046,\n  \"abbott\": 43737,\n  \"abbott</w>\": 15649,\n  \"abbrevi\": 44843,\n  \"abby\": 30586,\n  \"abby</w>\": 14694,\n  \"abc\": 13137,\n  \"abc</w>\": 5334,\n  \"abcnews</w>\": 31566,\n  \"abd</w>\": 44093,\n  \"abdel\": 46511,\n  \"abdomin\": 35335,\n  \"abdominal</w>\": 39328,\n  \"abdu\": 13361,\n  \"abduc\": 17884,\n  \"abducted</w>\": 31520,\n  \"abduction</w>\": 36984,\n  \"abdul\": 14227,\n  \"abdul</w>\": 15593,\n  \"abdullah</w>\": 21317,\n  \"abe\": 15856,\n  \"abe</w>\": 12734,\n  \"abee</w>\": 36037,\n  \"abel\": 31938,\n  \"abel</w>\": 25318,\n  \"abella</w>\": 46156,\n  \"aben\": 40865,\n  \"aber\": 7828,\n  \"aber</w>\": 41867,\n  \"aberdeen\": 30539,\n  \"aberdeen</w>\": 17236,\n  \"abh\": 27484,\n  \"abh</w>\": 33649,\n  \"abhcosmetics</w>\": 49189,\n  \"abhi\": 18113,\n  \"abhin\": 44045,\n  \"abhishek</w>\": 44502,\n  \"abi\": 16867,\n  \"abi</w>\": 14161,\n  \"abia</w>\": 48604,\n  \"abide</w>\": 49163,\n  \"abig\": 20863,\n  \"abigail</w>\": 25686,\n  \"abil\": 21135,\n  \"abilities</w>\": 8724,\n  \"ability\": 35146,\n  \"ability</w>\": 3024,\n  \"abit</w>\": 48668,\n  \"ablanc\": 33716,\n  \"able\": 10102,\n  \"able</w>\": 863,\n  \"abled</w>\": 10655,\n  \"ableg</w>\": 24055,\n  \"ables</w>\": 8486,\n  \"ableton</w>\": 47169,\n  \"ably</w>\": 6748,\n  \"abnormal</w>\": 40934,\n  \"abo\": 2889,\n  \"abo</w>\": 21861,\n  \"aboard</w>\": 11661,\n  \"abol\": 31768,\n  \"abolic</w>\": 46827,\n  \"abolish</w>\": 47403,\n  \"aboo</w>\": 42433,\n  \"abor\": 8416,\n  \"aboriginal</w>\": 20422,\n  \"abortion</w>\": 12336,\n  \"abortions</w>\": 43218,\n  \"aboss</w>\": 46401,\n  \"abou\": 36455,\n  \"abou</w>\": 44053,\n  \"abound</w>\": 41037,\n  \"abour</w>\": 46637,\n  \"about\": 20204,\n  \"about</w>\": 781,\n  \"abouts</w>\": 36339,\n  \"above\": 35019,\n  \"above</w>\": 4348,\n  \"aboy</w>\": 37077,\n  \"abpoli</w>\": 44779,\n  \"abq</w>\": 38767,\n  \"abr\": 44932,\n  \"abra\": 10694,\n  \"abra</w>\": 35087,\n  \"abraham\": 40623,\n  \"abraham</w>\": 15869,\n  \"abram\": 33255,\n  \"abrams</w>\": 29852,\n  \"abre\": 22472,\n  \"abre</w>\": 46756,\n  \"abri\": 28605,\n  \"abridged</w>\": 45333,\n  \"abroad</w>\": 11253,\n  \"abru\": 46295,\n  \"abs\": 18431,\n  \"abs</w>\": 11109,\n  \"absc\": 25389,\n  \"abscbn\": 44260,\n  \"abscbn</w>\": 45810,\n  \"absen\": 32453,\n  \"absence</w>\": 19240,\n  \"absent</w>\": 30363,\n  \"absol\": 4624,\n  \"absolu\": 7055,\n  \"absolut\": 4666,\n  \"absolute</w>\": 7501,\n  \"absolutely</w>\": 4703,\n  \"absor\": 14303,\n  \"absorb</w>\": 35806,\n  \"absorbed</w>\": 45059,\n  \"absorbing</w>\": 46412,\n  \"absorption</w>\": 42210,\n  \"abstr\": 7530,\n  \"abstract\": 23885,\n  \"abstract</w>\": 10197,\n  \"abstractart</w>\": 31170,\n  \"abstraction</w>\": 47696,\n  \"abstracts</w>\": 40065,\n  \"absur\": 21639,\n  \"absurd</w>\": 29757,\n  \"abt</w>\": 9850,\n  \"abu\": 9167,\n  \"abu</w>\": 11787,\n  \"abud\": 20180,\n  \"abudha\": 21450,\n  \"abudhabi</w>\": 25256,\n  \"abuja</w>\": 23371,\n  \"abun\": 20544,\n  \"abundance</w>\": 23236,\n  \"abundant</w>\": 31611,\n  \"abur\": 23377,\n  \"aburger</w>\": 46660,\n  \"abuse</w>\": 7678,\n  \"abused</w>\": 23855,\n  \"abuses</w>\": 37132,\n  \"abusing</w>\": 36558,\n  \"abusive</w>\": 26858,\n  \"abv</w>\": 34172,\n  \"aby\": 16342,\n  \"aby</w>\": 31378,\n  \"abyss</w>\": 33632,\n  \"abz</w>\": 42292,\n  \"ac\": 546,\n  \"ac</w>\": 2816,\n  \"aca</w>\": 9213,\n  \"acab\": 41388,\n  \"acacia</w>\": 44047,\n  \"acad</w>\": 32537,\n  \"acade\": 2892,\n  \"academia</w>\": 22662,\n  \"academic\": 31178,\n  \"academic</w>\": 7935,\n  \"academics</w>\": 26417,\n  \"academies</w>\": 42569,\n  \"academy\": 29968,\n  \"academy</w>\": 4041,\n  \"acadi\": 41455,\n  \"acadia</w>\": 49236,\n  \"acam\": 26172,\n  \"acan\": 42227,\n  \"acan</w>\": 26318,\n  \"acap\": 32357,\n  \"acar\": 22232,\n  \"acare</w>\": 16961,\n  \"acc\": 26805,\n  \"acc</w>\": 9318,\n  \"acca</w>\": 30883,\n  \"acce\": 8564,\n  \"acceler\": 10161,\n  \"accelerate</w>\": 23619,\n  \"accelerated</w>\": 38513,\n  \"accelerating</w>\": 41821,\n  \"acceleration</w>\": 39387,\n  \"accelerator</w>\": 25261,\n  \"accent\": 28110,\n  \"accent</w>\": 18931,\n  \"accents</w>\": 31738,\n  \"accenture</w>\": 41853,\n  \"accep\": 4616,\n  \"accept\": 16447,\n  \"accept</w>\": 9338,\n  \"acceptable</w>\": 14209,\n  \"acceptance</w>\": 17090,\n  \"accepted</w>\": 9159,\n  \"accepting</w>\": 12855,\n  \"accepts</w>\": 22338,\n  \"access\": 7596,\n  \"access</w>\": 3822,\n  \"accessi\": 10787,\n  \"accessibility</w>\": 23407,\n  \"accessible</w>\": 13977,\n  \"accessing</w>\": 46339,\n  \"accessories</w>\": 10220,\n  \"accessory</w>\": 20417,\n  \"acci\": 4263,\n  \"acci</w>\": 33943,\n  \"accident</w>\": 6608,\n  \"accidental</w>\": 24895,\n  \"accidentally</w>\": 11061,\n  \"accidents</w>\": 22072,\n  \"acclaimed</w>\": 21172,\n  \"acco</w>\": 44730,\n  \"accol\": 33858,\n  \"accolades</w>\": 46731,\n  \"accom\": 23658,\n  \"accommo\": 34495,\n  \"accommod\": 14386,\n  \"accommodate</w>\": 34708,\n  \"accommodation</w>\": 18066,\n  \"accommodations</w>\": 45536,\n  \"accomp\": 24985,\n  \"accompan\": 14746,\n  \"accompanied</w>\": 20715,\n  \"accompany</w>\": 34142,\n  \"accompanying</w>\": 38179,\n  \"accompli\": 10205,\n  \"accomplish</w>\": 25542,\n  \"accomplished</w>\": 16462,\n  \"accomplishment</w>\": 26100,\n  \"accomplishments</w>\": 24965,\n  \"accor\": 4182,\n  \"accord\": 34293,\n  \"accord</w>\": 28513,\n  \"according</w>\": 4717,\n  \"accordingly</w>\": 35535,\n  \"accordion</w>\": 48760,\n  \"accoun\": 3081,\n  \"account\": 18424,\n  \"account</w>\": 4684,\n  \"accountability</w>\": 19377,\n  \"accountable</w>\": 24216,\n  \"accountant</w>\": 31026,\n  \"accountants</w>\": 37222,\n  \"accounted</w>\": 43951,\n  \"accounting</w>\": 14805,\n  \"accounts</w>\": 9974,\n  \"accra</w>\": 31900,\n  \"accred\": 17451,\n  \"accreditation</w>\": 27015,\n  \"accredited</w>\": 27647,\n  \"acct</w>\": 45569,\n  \"accu\": 5618,\n  \"accumul\": 19275,\n  \"accumulation</w>\": 37112,\n  \"accur\": 6551,\n  \"accuracy</w>\": 18423,\n  \"accurate</w>\": 8858,\n  \"accurately</w>\": 24206,\n  \"accusations</w>\": 33615,\n  \"accuse</w>\": 39414,\n  \"accused</w>\": 9434,\n  \"accuses</w>\": 27496,\n  \"accusing</w>\": 41474,\n  \"acdc</w>\": 45067,\n  \"ace\": 2675,\n  \"ace</w>\": 804,\n  \"acea</w>\": 35219,\n  \"aceae</w>\": 38153,\n  \"acele\": 40868,\n  \"aceous</w>\": 33610,\n  \"acer\": 37990,\n  \"acer</w>\": 25809,\n  \"aces</w>\": 5725,\n  \"acet\": 28735,\n  \"acf</w>\": 38389,\n  \"ach\": 972,\n  \"ach</w>\": 987,\n  \"acha</w>\": 22686,\n  \"acharya</w>\": 45780,\n  \"achat</w>\": 32706,\n  \"ache\": 27771,\n  \"ache</w>\": 7214,\n  \"ached</w>\": 17048,\n  \"acher\": 38442,\n  \"acher</w>\": 17936,\n  \"achers</w>\": 25051,\n  \"aches</w>\": 14823,\n  \"achi\": 3264,\n  \"achi</w>\": 9087,\n  \"achiev\": 8160,\n  \"achieve\": 14798,\n  \"achieve</w>\": 8175,\n  \"achieved</w>\": 12359,\n  \"achievement</w>\": 8245,\n  \"achievements</w>\": 16114,\n  \"achiever</w>\": 46286,\n  \"achievers</w>\": 44544,\n  \"achieves</w>\": 40123,\n  \"achieving</w>\": 16120,\n  \"achilles</w>\": 33327,\n  \"achim</w>\": 42335,\n  \"aching</w>\": 12864,\n  \"acho</w>\": 33130,\n  \"achs</w>\": 41195,\n  \"aci\": 4359,\n  \"aci</w>\": 34100,\n  \"acia</w>\": 30163,\n  \"acial</w>\": 32422,\n  \"acid\": 35474,\n  \"acid</w>\": 10085,\n  \"acidity</w>\": 48800,\n  \"acids</w>\": 27751,\n  \"acies</w>\": 20162,\n  \"acin\": 39442,\n  \"acing</w>\": 9442,\n  \"acio</w>\": 26202,\n  \"acion\": 44965,\n  \"acion</w>\": 24968,\n  \"acional</w>\": 26435,\n  \"aciones</w>\": 35832,\n  \"acious</w>\": 16020,\n  \"acity</w>\": 7511,\n  \"aciÃ³n</w>\": 38175,\n  \"ack\": 877,\n  \"ack</w>\": 725,\n  \"acked</w>\": 5698,\n  \"acker\": 31201,\n  \"acker</w>\": 7940,\n  \"ackeray</w>\": 41843,\n  \"acki</w>\": 42857,\n  \"acking</w>\": 5515,\n  \"ackles</w>\": 28503,\n  \"acknow\": 13563,\n  \"acknowle\": 18100,\n  \"acknowledge</w>\": 25209,\n  \"acknowledged</w>\": 35913,\n  \"acknowledges</w>\": 49083,\n  \"acknowledging</w>\": 45645,\n  \"acks</w>\": 3858,\n  \"acl\": 47593,\n  \"acl</w>\": 23073,\n  \"acle</w>\": 6504,\n  \"acles</w>\": 34164,\n  \"aclu</w>\": 37354,\n  \"acm</w>\": 39317,\n  \"acmilan</w>\": 36500,\n  \"acne</w>\": 24195,\n  \"aco\": 9463,\n  \"aco</w>\": 8800,\n  \"acol\": 17431,\n  \"acollege</w>\": 43468,\n  \"acom\": 17224,\n  \"acom</w>\": 22342,\n  \"acon\": 11621,\n  \"acon</w>\": 11571,\n  \"aconf</w>\": 38851,\n  \"acons</w>\": 31599,\n  \"acor\": 22076,\n  \"acorn</w>\": 37537,\n  \"acos</w>\": 39943,\n  \"acosta</w>\": 31994,\n  \"acou\": 8794,\n  \"acoun\": 31295,\n  \"acounty</w>\": 45449,\n  \"acoustic</w>\": 10616,\n  \"acoustics</w>\": 43873,\n  \"acp</w>\": 19627,\n  \"acqu\": 7946,\n  \"acquainted</w>\": 40713,\n  \"acqui\": 12194,\n  \"acquire</w>\": 21576,\n  \"acquired</w>\": 15932,\n  \"acquires</w>\": 27376,\n  \"acquiring</w>\": 42785,\n  \"acquis\": 14207,\n  \"acquisition</w>\": 16543,\n  \"acquisitions</w>\": 39649,\n  \"acr</w>\": 43648,\n  \"acre\": 26749,\n  \"acre</w>\": 9493,\n  \"acres</w>\": 11630,\n  \"acro\": 21060,\n  \"acrob\": 40891,\n  \"acron\": 37770,\n  \"across</w>\": 2500,\n  \"acrosse</w>\": 40979,\n  \"acruz</w>\": 40455,\n  \"acry\": 10440,\n  \"acrylic</w>\": 12252,\n  \"acs</w>\": 11782,\n  \"act\": 10305,\n  \"act</w>\": 1393,\n  \"acted</w>\": 10971,\n  \"acti\": 4786,\n  \"acting</w>\": 6319,\n  \"action\": 12493,\n  \"action</w>\": 1816,\n  \"actions</w>\": 6271,\n  \"activ\": 3430,\n  \"activate</w>\": 26737,\n  \"activated</w>\": 22249,\n  \"activation</w>\": 26769,\n  \"active\": 19009,\n  \"active</w>\": 4046,\n  \"actively</w>\": 18645,\n  \"activi\": 7230,\n  \"activism</w>\": 20117,\n  \"activist</w>\": 10850,\n  \"activists</w>\": 12649,\n  \"activities</w>\": 6514,\n  \"activity</w>\": 6206,\n  \"actment</w>\": 44807,\n  \"acton\": 36167,\n  \"acton</w>\": 36697,\n  \"actonclimate</w>\": 43797,\n  \"actor\": 12181,\n  \"actor</w>\": 4035,\n  \"actors</w>\": 9255,\n  \"actorslife</w>\": 25117,\n  \"actorvijay</w>\": 34033,\n  \"actress</w>\": 5805,\n  \"actresses</w>\": 33639,\n  \"acts</w>\": 6816,\n  \"actu\": 2375,\n  \"actual</w>\": 7488,\n  \"actually</w>\": 2955,\n  \"acu\": 9204,\n  \"acu</w>\": 48475,\n  \"aculture</w>\": 38145,\n  \"acup\": 30869,\n  \"acup</w>\": 27278,\n  \"acupuncture</w>\": 40043,\n  \"acur\": 44719,\n  \"acura</w>\": 30120,\n  \"acus</w>\": 33710,\n  \"acute</w>\": 19734,\n  \"acy\": 18717,\n  \"acy</w>\": 2356,\n  \"ad\": 594,\n  \"ad</w>\": 680,\n  \"ada\": 25785,\n  \"ada</w>\": 1886,\n  \"adaily</w>\": 47254,\n  \"adal\": 46646,\n  \"adam\": 6037,\n  \"adam</w>\": 4944,\n  \"adamlambert</w>\": 27659,\n  \"adams</w>\": 7942,\n  \"adan</w>\": 41802,\n  \"adani</w>\": 37499,\n  \"adap\": 6341,\n  \"adapt</w>\": 22666,\n  \"adaptation</w>\": 16566,\n  \"adapted</w>\": 26657,\n  \"adapter</w>\": 21839,\n  \"adapting</w>\": 44120,\n  \"adaptive</w>\": 28672,\n  \"adar\": 27702,\n  \"adar</w>\": 32681,\n  \"adas</w>\": 23250,\n  \"adata</w>\": 39500,\n  \"aday\": 31367,\n  \"aday</w>\": 10280,\n  \"adays</w>\": 24337,\n  \"adb</w>\": 45630,\n  \"adc</w>\": 38201,\n  \"add\": 19408,\n  \"add</w>\": 3536,\n  \"addams</w>\": 38912,\n  \"added</w>\": 4149,\n  \"adder</w>\": 47557,\n  \"addi</w>\": 36378,\n  \"addic\": 5709,\n  \"addict</w>\": 14614,\n  \"addicted</w>\": 16275,\n  \"addiction</w>\": 11751,\n  \"addictive</w>\": 29638,\n  \"addicts</w>\": 29997,\n  \"adding</w>\": 8676,\n  \"addis</w>\": 43911,\n  \"addison</w>\": 32369,\n  \"additi\": 26927,\n  \"addition</w>\": 6698,\n  \"additional</w>\": 10666,\n  \"additions</w>\": 22575,\n  \"additive</w>\": 48546,\n  \"addo</w>\": 40001,\n  \"address</w>\": 5834,\n  \"addressed</w>\": 20817,\n  \"addresses</w>\": 12702,\n  \"addressing</w>\": 10594,\n  \"adds</w>\": 9944,\n  \"addy</w>\": 24746,\n  \"ade\": 2194,\n  \"ade</w>\": 1928,\n  \"adecides</w>\": 46374,\n  \"aded</w>\": 9994,\n  \"adee</w>\": 47054,\n  \"adel\": 4434,\n  \"adel</w>\": 27308,\n  \"adelaide\": 38193,\n  \"adelaide</w>\": 11611,\n  \"adele\": 42843,\n  \"adele</w>\": 21220,\n  \"adelrey</w>\": 43627,\n  \"ademy</w>\": 49123,\n  \"aden\": 28669,\n  \"aden</w>\": 28688,\n  \"adena</w>\": 23648,\n  \"adequ\": 18232,\n  \"adequate</w>\": 22281,\n  \"ader</w>\": 21365,\n  \"adero</w>\": 49185,\n  \"aders</w>\": 27672,\n  \"ades</w>\": 5793,\n  \"adh</w>\": 42301,\n  \"adhd</w>\": 32649,\n  \"adhe\": 21175,\n  \"adhesive</w>\": 38429,\n  \"adi\": 2486,\n  \"adi</w>\": 8779,\n  \"adia</w>\": 26874,\n  \"adic</w>\": 36780,\n  \"adid\": 8086,\n  \"adidas\": 22396,\n  \"adidas</w>\": 9589,\n  \"adidasoriginals</w>\": 48575,\n  \"adies</w>\": 45834,\n  \"adifference</w>\": 37217,\n  \"adilla</w>\": 41167,\n  \"ading</w>\": 15000,\n  \"adio</w>\": 15060,\n  \"adirond\": 36843,\n  \"adish</w>\": 49009,\n  \"adity\": 28596,\n  \"aditya</w>\": 37186,\n  \"adityanath</w>\": 44437,\n  \"adjac\": 32517,\n  \"adjacent</w>\": 33836,\n  \"adjec\": 45512,\n  \"adju\": 16413,\n  \"adjun\": 45995,\n  \"adjust\": 13784,\n  \"adjust</w>\": 28073,\n  \"adjustable</w>\": 20476,\n  \"adjusted</w>\": 30515,\n  \"adjusting</w>\": 41132,\n  \"adjustment</w>\": 36081,\n  \"adjustments</w>\": 36331,\n  \"adl</w>\": 49351,\n  \"adler</w>\": 30222,\n  \"adm\": 9892,\n  \"adm</w>\": 33604,\n  \"admi\": 11666,\n  \"admin</w>\": 12528,\n  \"admini\": 6434,\n  \"administr\": 12174,\n  \"administration</w>\": 9502,\n  \"administrative</w>\": 22424,\n  \"administrator</w>\": 22603,\n  \"administrators</w>\": 36123,\n  \"admins</w>\": 49297,\n  \"admir\": 17031,\n  \"admiral</w>\": 21013,\n  \"admiration</w>\": 39569,\n  \"admire</w>\": 17791,\n  \"admired</w>\": 36103,\n  \"admirer</w>\": 48344,\n  \"admiring</w>\": 29835,\n  \"admission</w>\": 11315,\n  \"admissions</w>\": 22463,\n  \"admit</w>\": 13769,\n  \"admits</w>\": 16332,\n  \"admitted</w>\": 20427,\n  \"admitting</w>\": 46148,\n  \"adn</w>\": 40339,\n  \"adnan</w>\": 42037,\n  \"ado\": 4775,\n  \"ado</w>\": 2933,\n  \"adobe\": 29256,\n  \"adobe</w>\": 16484,\n  \"adog</w>\": 44913,\n  \"adol\": 33512,\n  \"adole\": 22704,\n  \"adolescent</w>\": 36793,\n  \"adolescents</w>\": 45656,\n  \"adolf</w>\": 41179,\n  \"adon\": 25907,\n  \"adona</w>\": 48419,\n  \"adop\": 4183,\n  \"adopt\": 16441,\n  \"adopt</w>\": 11159,\n  \"adoptable</w>\": 36905,\n  \"adoptdont\": 19674,\n  \"adoptdontshop</w>\": 20089,\n  \"adopted</w>\": 12538,\n  \"adopting</w>\": 30158,\n  \"adoption</w>\": 11544,\n  \"adopts</w>\": 40853,\n  \"ador\": 4992,\n  \"ador</w>\": 9162,\n  \"adora</w>\": 40031,\n  \"adorable</w>\": 6298,\n  \"adoration</w>\": 46781,\n  \"adore</w>\": 15502,\n  \"adored</w>\": 49233,\n  \"adores</w>\": 30290,\n  \"adorned</w>\": 44953,\n  \"ados</w>\": 20079,\n  \"adox</w>\": 32188,\n  \"adp</w>\": 44426,\n  \"adr</w>\": 46189,\n  \"adren\": 24204,\n  \"adrenaline</w>\": 35552,\n  \"adri\": 5935,\n  \"adrian\": 25012,\n  \"adrian</w>\": 13163,\n  \"adriana</w>\": 41363,\n  \"adrid</w>\": 26562,\n  \"adrien</w>\": 47469,\n  \"adrienne</w>\": 40081,\n  \"ads</w>\": 2485,\n  \"adu\": 16882,\n  \"adu</w>\": 24446,\n  \"adukone</w>\": 30511,\n  \"adul\": 7222,\n  \"adult\": 42209,\n  \"adult</w>\": 7115,\n  \"adulthood</w>\": 40964,\n  \"adults</w>\": 9391,\n  \"adv\": 1647,\n  \"adv</w>\": 21018,\n  \"advan\": 33411,\n  \"advance\": 27291,\n  \"advance</w>\": 7022,\n  \"advanced</w>\": 7465,\n  \"advancement</w>\": 35437,\n  \"advances</w>\": 15852,\n  \"advancing</w>\": 21355,\n  \"advani</w>\": 48189,\n  \"advant\": 7017,\n  \"advantage</w>\": 8573,\n  \"advantaged</w>\": 38361,\n  \"advantages</w>\": 23506,\n  \"adven\": 41670,\n  \"advent\": 3071,\n  \"advent</w>\": 15199,\n  \"adventcalendar</w>\": 43492,\n  \"adventur\": 29627,\n  \"adventure\": 17251,\n  \"adventure</w>\": 4377,\n  \"adventurer</w>\": 48098,\n  \"adventures</w>\": 7941,\n  \"adventurous</w>\": 31179,\n  \"adver\": 4806,\n  \"adverse</w>\": 30348,\n  \"adversity</w>\": 32516,\n  \"advert</w>\": 19080,\n  \"adverti\": 5682,\n  \"advertise</w>\": 31473,\n  \"advertised</w>\": 38987,\n  \"advertisement</w>\": 18713,\n  \"advertiser</w>\": 41829,\n  \"advertisers</w>\": 45472,\n  \"advertising</w>\": 8158,\n  \"adverts</w>\": 44306,\n  \"advice</w>\": 4973,\n  \"advis\": 4634,\n  \"advise</w>\": 25962,\n  \"advised</w>\": 23196,\n  \"adviser</w>\": 20367,\n  \"advisers</w>\": 40984,\n  \"advises</w>\": 42761,\n  \"advising</w>\": 39648,\n  \"advisor</w>\": 12380,\n  \"advisors</w>\": 23197,\n  \"advisory</w>\": 10224,\n  \"advoc\": 6657,\n  \"advocacy</w>\": 14443,\n  \"advocate</w>\": 12044,\n  \"advocates</w>\": 17757,\n  \"adwords</w>\": 48343,\n  \"ady\": 41446,\n  \"ady</w>\": 8781,\n  \"ae\": 5548,\n  \"ae</w>\": 4542,\n  \"aea</w>\": 37048,\n  \"aed</w>\": 26912,\n  \"aege\": 42304,\n  \"ael\": 41533,\n  \"ael</w>\": 43340,\n  \"aen\": 43085,\n  \"aer\": 10195,\n  \"aeri\": 27685,\n  \"aerial\": 44866,\n  \"aerial</w>\": 12440,\n  \"aero\": 10196,\n  \"aero</w>\": 25026,\n  \"aerob\": 42824,\n  \"aeron\": 37286,\n  \"aeronau\": 42816,\n  \"aerop\": 27735,\n  \"aerosmith</w>\": 43253,\n  \"aerospace</w>\": 20530,\n  \"aes\": 10617,\n  \"aes</w>\": 35677,\n  \"aest</w>\": 40694,\n  \"aesthe\": 21181,\n  \"aesthetic</w>\": 16179,\n  \"aesthetics</w>\": 29295,\n  \"aew</w>\": 47108,\n  \"af\": 702,\n  \"af</w>\": 4391,\n  \"afa</w>\": 24953,\n  \"afan\": 47474,\n  \"afar\": 41637,\n  \"afar</w>\": 37866,\n  \"afb</w>\": 27022,\n  \"afc\": 29742,\n  \"afc</w>\": 6571,\n  \"afcb</w>\": 44276,\n  \"afcon</w>\": 30019,\n  \"afd</w>\": 44626,\n  \"afe\": 30487,\n  \"afe</w>\": 13912,\n  \"afer\": 44707,\n  \"aff\": 8849,\n  \"aff</w>\": 14864,\n  \"affair</w>\": 13998,\n  \"affairs</w>\": 9830,\n  \"affe\": 4556,\n  \"affect</w>\": 11361,\n  \"affected</w>\": 9715,\n  \"affecting</w>\": 18448,\n  \"affection\": 33780,\n  \"affection</w>\": 28381,\n  \"affectionate</w>\": 42578,\n  \"affects</w>\": 17285,\n  \"affili\": 12120,\n  \"affiliate</w>\": 18652,\n  \"affiliated</w>\": 37540,\n  \"affiliation</w>\": 48377,\n  \"affinity</w>\": 41451,\n  \"affir\": 25343,\n  \"affirm\": 42711,\n  \"affirm</w>\": 48625,\n  \"affirmation</w>\": 47495,\n  \"affl\": 34036,\n  \"affleck</w>\": 35584,\n  \"afford\": 7951,\n  \"afford</w>\": 13223,\n  \"affordability</w>\": 44828,\n  \"affordable\": 43944,\n  \"affordable</w>\": 8926,\n  \"afg</w>\": 33994,\n  \"afgh\": 9029,\n  \"afghan</w>\": 15919,\n  \"afghanistan</w>\": 9836,\n  \"afi\": 24074,\n  \"afi</w>\": 31958,\n  \"afil\": 27209,\n  \"afire</w>\": 42010,\n  \"afirst</w>\": 38601,\n  \"afl\": 15132,\n  \"afl</w>\": 14356,\n  \"aflo\": 41959,\n  \"afm</w>\": 38385,\n  \"afootball</w>\": 41694,\n  \"afor\": 43102,\n  \"afore\": 41468,\n  \"afp</w>\": 18311,\n  \"afraid</w>\": 9474,\n  \"afri\": 13888,\n  \"afric\": 2136,\n  \"africa</w>\": 3093,\n  \"african\": 17471,\n  \"african</w>\": 4736,\n  \"africans</w>\": 26534,\n  \"afridi</w>\": 37651,\n  \"afrika</w>\": 45833,\n  \"afrin</w>\": 45586,\n  \"afro\": 16267,\n  \"afro</w>\": 21795,\n  \"afs</w>\": 48960,\n  \"aft</w>\": 22693,\n  \"after\": 2278,\n  \"after</w>\": 953,\n  \"afterdark</w>\": 48966,\n  \"afterlife</w>\": 46790,\n  \"aftermath</w>\": 20958,\n  \"afterno\": 22330,\n  \"afternoon\": 39035,\n  \"afternoon</w>\": 2716,\n  \"afternoons</w>\": 31631,\n  \"afterparty</w>\": 35305,\n  \"afterwards</w>\": 23911,\n  \"ag\": 602,\n  \"ag</w>\": 5241,\n  \"aga\": 1050,\n  \"aga</w>\": 4654,\n  \"again</w>\": 1495,\n  \"against\": 23838,\n  \"against</w>\": 1601,\n  \"agame</w>\": 46943,\n  \"agan\": 42946,\n  \"agan</w>\": 9178,\n  \"agar\": 13199,\n  \"agar</w>\": 17544,\n  \"agarwal</w>\": 43117,\n  \"agas\": 20430,\n  \"agate</w>\": 25454,\n  \"agatha</w>\": 43896,\n  \"agave</w>\": 42671,\n  \"agawa</w>\": 39433,\n  \"agazine</w>\": 44942,\n  \"age\": 4758,\n  \"age</w>\": 805,\n  \"aged</w>\": 3889,\n  \"ageing</w>\": 25349,\n  \"agen\": 10101,\n  \"agen</w>\": 43696,\n  \"agencies</w>\": 13887,\n  \"agency\": 44885,\n  \"agency</w>\": 6270,\n  \"agend\": 48653,\n  \"agenda</w>\": 8728,\n  \"agent\": 21210,\n  \"agent</w>\": 6576,\n  \"agents</w>\": 10199,\n  \"agentsof\": 37074,\n  \"agentsofshield</w>\": 38801,\n  \"ager\": 44847,\n  \"ager</w>\": 10443,\n  \"agers</w>\": 22123,\n  \"ages</w>\": 2321,\n  \"agg</w>\": 45482,\n  \"aggarwal</w>\": 39386,\n  \"agger\": 27836,\n  \"aggi\": 36844,\n  \"aggie\": 44244,\n  \"aggie</w>\": 37618,\n  \"aggies</w>\": 31047,\n  \"aggio</w>\": 36685,\n  \"aggrav\": 35203,\n  \"aggre\": 10426,\n  \"aggreg\": 41968,\n  \"aggregate</w>\": 41318,\n  \"aggression</w>\": 28900,\n  \"aggressive</w>\": 16295,\n  \"aggressively</w>\": 48667,\n  \"agh\": 17917,\n  \"agh</w>\": 14402,\n  \"aghan</w>\": 31276,\n  \"agi\": 24036,\n  \"agi</w>\": 17645,\n  \"agic</w>\": 37652,\n  \"agile</w>\": 16276,\n  \"agility</w>\": 32161,\n  \"aging</w>\": 4336,\n  \"agio</w>\": 41746,\n  \"agirl</w>\": 35469,\n  \"agle\": 37035,\n  \"agle</w>\": 16702,\n  \"agles\": 36374,\n  \"agles</w>\": 22679,\n  \"aglia</w>\": 46912,\n  \"agm</w>\": 19162,\n  \"agn\": 36474,\n  \"agna</w>\": 43626,\n  \"agne\": 29374,\n  \"agne</w>\": 48303,\n  \"agnes</w>\": 26213,\n  \"agno\": 41540,\n  \"ago\": 6276,\n  \"ago</w>\": 1468,\n  \"agomez</w>\": 27127,\n  \"agon\": 26775,\n  \"agon</w>\": 14901,\n  \"agony</w>\": 36977,\n  \"agor\": 38920,\n  \"agos</w>\": 32657,\n  \"agov</w>\": 34227,\n  \"agp</w>\": 46048,\n  \"agr\": 36639,\n  \"agra\": 26660,\n  \"agra</w>\": 29830,\n  \"agram</w>\": 2447,\n  \"agre\": 3180,\n  \"agreat\": 37594,\n  \"agree</w>\": 5953,\n  \"agreed</w>\": 12774,\n  \"agreeing</w>\": 40720,\n  \"agreement</w>\": 8286,\n  \"agreements</w>\": 25865,\n  \"agrees</w>\": 17854,\n  \"agri\": 20527,\n  \"agri</w>\": 30326,\n  \"agricul\": 7234,\n  \"agricultural</w>\": 15440,\n  \"agriculture</w>\": 9720,\n  \"agro\": 33178,\n  \"agro</w>\": 44589,\n  \"agron\": 41314,\n  \"agroup</w>\": 40099,\n  \"ags</w>\": 16926,\n  \"agt</w>\": 39681,\n  \"agu\": 3922,\n  \"agu</w>\": 36544,\n  \"agua</w>\": 18482,\n  \"aguchi</w>\": 49206,\n  \"ague</w>\": 2095,\n  \"aguero</w>\": 42964,\n  \"agues</w>\": 7000,\n  \"aguil\": 27946,\n  \"aguilar</w>\": 44715,\n  \"ah\": 1772,\n  \"ah</w>\": 1288,\n  \"aha\": 12082,\n  \"aha</w>\": 8429,\n  \"ahah</w>\": 38661,\n  \"ahaha</w>\": 32423,\n  \"ahahaha</w>\": 42620,\n  \"aham\": 36036,\n  \"ahan\": 45061,\n  \"ahan</w>\": 19255,\n  \"ahar\": 31038,\n  \"ahar</w>\": 38760,\n  \"ahe\": 27688,\n  \"ahead</w>\": 3158,\n  \"ahem</w>\": 39995,\n  \"ahh</w>\": 13152,\n  \"ahhh</w>\": 14769,\n  \"ahhhh</w>\": 21054,\n  \"ahhhhh</w>\": 36392,\n  \"ahi\": 45349,\n  \"ahi</w>\": 24154,\n  \"ahl</w>\": 30433,\n  \"ahmad\": 32167,\n  \"ahmad</w>\": 16902,\n  \"ahmadi\": 38656,\n  \"ahmadiyya</w>\": 44865,\n  \"ahmed\": 19491,\n  \"ahmed</w>\": 12081,\n  \"ahmedabad</w>\": 26966,\n  \"ahn</w>\": 33405,\n  \"aho\": 28114,\n  \"aho</w>\": 38444,\n  \"ahora</w>\": 43113,\n  \"ahouse</w>\": 33197,\n  \"ahoy</w>\": 38652,\n  \"ahs</w>\": 16937,\n  \"ahu\": 11908,\n  \"ahu</w>\": 16515,\n  \"ai\": 2014,\n  \"ai</w>\": 2215,\n  \"aia</w>\": 27046,\n  \"aib</w>\": 34780,\n  \"aic\": 29454,\n  \"aid\": 13723,\n  \"aid</w>\": 5182,\n  \"aida</w>\": 33830,\n  \"aidan\": 48814,\n  \"aidan</w>\": 26945,\n  \"aide\": 31558,\n  \"aide</w>\": 9746,\n  \"aided</w>\": 48707,\n  \"aiden</w>\": 40020,\n  \"aides</w>\": 49082,\n  \"aids</w>\": 11759,\n  \"aig\": 27295,\n  \"aig</w>\": 46989,\n  \"aii</w>\": 22478,\n  \"aik</w>\": 42575,\n  \"aiken</w>\": 46342,\n  \"ail\": 1457,\n  \"ail</w>\": 9154,\n  \"ailed</w>\": 38919,\n  \"ailing</w>\": 29999,\n  \"ails</w>\": 27024,\n  \"aim\": 6787,\n  \"aim</w>\": 11255,\n  \"aime</w>\": 39872,\n  \"aimed</w>\": 20247,\n  \"aimee</w>\": 36318,\n  \"aiming</w>\": 21768,\n  \"aimo</w>\": 36706,\n  \"aims</w>\": 13326,\n  \"ain\": 8326,\n  \"ain</w>\": 2210,\n  \"aine\": 48983,\n  \"aine</w>\": 17634,\n  \"ains</w>\": 27621,\n  \"aint\": 29543,\n  \"aint</w>\": 13099,\n  \"ainted</w>\": 39933,\n  \"aioli</w>\": 43949,\n  \"air\": 1281,\n  \"air</w>\": 1922,\n  \"aira\": 35085,\n  \"aira</w>\": 46444,\n  \"airasia</w>\": 48020,\n  \"airbnb</w>\": 23098,\n  \"airborne</w>\": 22755,\n  \"airbus</w>\": 15324,\n  \"aircraft</w>\": 7706,\n  \"airdrop</w>\": 38434,\n  \"aire</w>\": 7682,\n  \"aired</w>\": 21938,\n  \"aires</w>\": 17034,\n  \"airfield</w>\": 40525,\n  \"airforce</w>\": 23511,\n  \"airing</w>\": 20453,\n  \"airline</w>\": 14847,\n  \"airlines</w>\": 8929,\n  \"airmen</w>\": 44499,\n  \"airplane</w>\": 16451,\n  \"airplanes</w>\": 33319,\n  \"airplay</w>\": 47024,\n  \"airpollution</w>\": 47362,\n  \"airport\": 48337,\n  \"airport</w>\": 3259,\n  \"airports</w>\": 21543,\n  \"airs</w>\": 18539,\n  \"airshow</w>\": 27139,\n  \"airsoft</w>\": 30134,\n  \"airspace</w>\": 49280,\n  \"airstrikes</w>\": 37220,\n  \"airtel</w>\": 34784,\n  \"airtime</w>\": 46617,\n  \"airwaves</w>\": 43910,\n  \"airways</w>\": 14299,\n  \"airy</w>\": 44453,\n  \"ais\": 7616,\n  \"ais</w>\": 11393,\n  \"aise</w>\": 30505,\n  \"aish\": 21946,\n  \"aisha</w>\": 40211,\n  \"aishwar\": 29687,\n  \"aishwarya</w>\": 44019,\n  \"aisle</w>\": 26917,\n  \"ait\": 25613,\n  \"ait</w>\": 40814,\n  \"aj\": 3990,\n  \"aj</w>\": 6342,\n  \"aja\": 42343,\n  \"aja</w>\": 19633,\n  \"ajax</w>\": 21933,\n  \"ajay\": 22494,\n  \"ajay</w>\": 28726,\n  \"ajaydevgn</w>\": 35515,\n  \"aje\": 48818,\n  \"aje</w>\": 33315,\n  \"ajes</w>\": 38791,\n  \"aji\": 26102,\n  \"aji</w>\": 21153,\n  \"ajit</w>\": 42261,\n  \"ajith</w>\": 24118,\n  \"ajo</w>\": 26958,\n  \"aju\": 36855,\n  \"ak\": 819,\n  \"ak</w>\": 1196,\n  \"aka\": 19154,\n  \"aka</w>\": 3412,\n  \"akaif</w>\": 45736,\n  \"akan\": 43678,\n  \"akan</w>\": 38244,\n  \"akapoor</w>\": 40064,\n  \"akarta</w>\": 48603,\n  \"akb</w>\": 41962,\n  \"akbar</w>\": 27180,\n  \"ake\": 10558,\n  \"ake</w>\": 5776,\n  \"aked</w>\": 6115,\n  \"aker\": 14245,\n  \"aker</w>\": 3074,\n  \"akers</w>\": 5788,\n  \"akes</w>\": 4764,\n  \"akest</w>\": 46679,\n  \"akh\": 14821,\n  \"akh</w>\": 30660,\n  \"akhan</w>\": 28158,\n  \"akhi\": 41660,\n  \"akhilesh</w>\": 48495,\n  \"akhtar</w>\": 45458,\n  \"aki\": 18173,\n  \"aki</w>\": 6592,\n  \"akin\": 24630,\n  \"akin</w>\": 13601,\n  \"aking</w>\": 1809,\n  \"akins</w>\": 48568,\n  \"akira</w>\": 34001,\n  \"akis</w>\": 27732,\n  \"akistan</w>\": 46221,\n  \"akley</w>\": 39908,\n  \"ako\": 44027,\n  \"ako</w>\": 14541,\n  \"akon</w>\": 47105,\n  \"akos</w>\": 44659,\n  \"akrish\": 37434,\n  \"akron</w>\": 26115,\n  \"aks</w>\": 2953,\n  \"aksh\": 28226,\n  \"akshay\": 21483,\n  \"akshay</w>\": 38914,\n  \"akshaykumar</w>\": 23624,\n  \"akshi</w>\": 42634,\n  \"aku\": 18151,\n  \"aku</w>\": 20815,\n  \"aky</w>\": 11977,\n  \"al\": 526,\n  \"al</w>\": 566,\n  \"ala\": 12783,\n  \"ala</w>\": 3449,\n  \"alab\": 6365,\n  \"alabam\": 45880,\n  \"alabama</w>\": 8422,\n  \"alach\": 24622,\n  \"alad\": 23074,\n  \"aladdin</w>\": 29951,\n  \"alai</w>\": 47072,\n  \"alain</w>\": 28999,\n  \"alam\": 16612,\n  \"alam</w>\": 16012,\n  \"alamo\": 41922,\n  \"alamo</w>\": 34632,\n  \"alan\": 9563,\n  \"alan</w>\": 5773,\n  \"alana</w>\": 43405,\n  \"aland\": 34304,\n  \"aland</w>\": 6819,\n  \"alar\": 34333,\n  \"alarm</w>\": 11321,\n  \"alarming</w>\": 37209,\n  \"alarms</w>\": 31236,\n  \"alarts</w>\": 31422,\n  \"alas\": 7276,\n  \"alas</w>\": 22412,\n  \"alaska</w>\": 9562,\n  \"alaskan</w>\": 33898,\n  \"alastair</w>\": 42062,\n  \"alay\": 30289,\n  \"alay</w>\": 36450,\n  \"alaya</w>\": 36397,\n  \"alb\": 45248,\n  \"alba</w>\": 25254,\n  \"alban\": 10882,\n  \"albania</w>\": 29170,\n  \"albanian</w>\": 47721,\n  \"albans</w>\": 44119,\n  \"albany</w>\": 17359,\n  \"albat\": 42797,\n  \"albeit</w>\": 38984,\n  \"alber\": 6413,\n  \"albert\": 34174,\n  \"albert</w>\": 9507,\n  \"alberta</w>\": 11048,\n  \"alberto</w>\": 22714,\n  \"albi\": 18512,\n  \"albino</w>\": 48062,\n  \"albion</w>\": 24071,\n  \"albu\": 2216,\n  \"album\": 40712,\n  \"album</w>\": 2431,\n  \"albums</w>\": 10705,\n  \"albuquerque</w>\": 31079,\n  \"alcat\": 35361,\n  \"alche\": 37909,\n  \"alchemist</w>\": 38913,\n  \"alchemy</w>\": 39501,\n  \"alco\": 6848,\n  \"alco</w>\": 45446,\n  \"alcohol</w>\": 9426,\n  \"alcoholic</w>\": 25098,\n  \"ald\": 4539,\n  \"ald</w>\": 2928,\n  \"alda</w>\": 46440,\n  \"alde\": 33114,\n  \"alden\": 17155,\n  \"alden</w>\": 27710,\n  \"aldenrichards</w>\": 20051,\n  \"alder\": 18220,\n  \"alder</w>\": 46571,\n  \"aldi</w>\": 23204,\n  \"aldo</w>\": 9933,\n  \"aldridge</w>\": 38084,\n  \"alds</w>\": 14285,\n  \"aldu\": 6505,\n  \"aldub\": 10532,\n  \"aldub</w>\": 15247,\n  \"ale\": 1440,\n  \"ale</w>\": 1336,\n  \"alea</w>\": 26518,\n  \"aleague</w>\": 38909,\n  \"alec\": 29804,\n  \"alec</w>\": 19954,\n  \"alecoscino</w>\": 47948,\n  \"aled</w>\": 4970,\n  \"alee</w>\": 24515,\n  \"alej\": 23440,\n  \"alejandro</w>\": 32950,\n  \"alek\": 26906,\n  \"alek</w>\": 43310,\n  \"aleksand\": 48429,\n  \"alem</w>\": 11825,\n  \"aleppo</w>\": 19258,\n  \"aler\": 25674,\n  \"aler</w>\": 27335,\n  \"alert</w>\": 4662,\n  \"alerts</w>\": 22144,\n  \"ales\": 44171,\n  \"ales</w>\": 5962,\n  \"aless\": 21864,\n  \"alessandro</w>\": 37344,\n  \"alestine</w>\": 31945,\n  \"alex\": 2959,\n  \"alex</w>\": 4134,\n  \"alexa</w>\": 16273,\n  \"alexand\": 10696,\n  \"alexander\": 25527,\n  \"alexander</w>\": 7563,\n  \"alexandra</w>\": 19054,\n  \"alexandre</w>\": 35711,\n  \"alexandria</w>\": 21171,\n  \"alexis\": 35023,\n  \"alexis</w>\": 14243,\n  \"aley</w>\": 21635,\n  \"alf</w>\": 27098,\n  \"alfa</w>\": 23482,\n  \"alfar\": 38870,\n  \"alfie</w>\": 28598,\n  \"alfon\": 31947,\n  \"alfonso</w>\": 41784,\n  \"alfre\": 20982,\n  \"alfred</w>\": 16553,\n  \"alfredo</w>\": 32291,\n  \"algae</w>\": 25654,\n  \"algar\": 36291,\n  \"algarve</w>\": 40290,\n  \"alge\": 24336,\n  \"algebra</w>\": 33694,\n  \"alger\": 18568,\n  \"algeria</w>\": 25257,\n  \"algon\": 33007,\n  \"algori\": 14912,\n  \"algorithm</w>\": 23295,\n  \"algorithms</w>\": 26039,\n  \"alham\": 23352,\n  \"alhamdulil\": 35129,\n  \"alhamdulillah</w>\": 38982,\n  \"ali\": 835,\n  \"ali</w>\": 3558,\n  \"alia</w>\": 2492,\n  \"aliaa</w>\": 36468,\n  \"alian</w>\": 3464,\n  \"alias</w>\": 40026,\n  \"alibaba</w>\": 39231,\n  \"alic\": 25265,\n  \"alice\": 23759,\n  \"alice</w>\": 9192,\n  \"alici\": 31630,\n  \"alicia</w>\": 20914,\n  \"alie</w>\": 8697,\n  \"alien\": 22846,\n  \"alien</w>\": 9639,\n  \"aliens</w>\": 14883,\n  \"alier</w>\": 39493,\n  \"alies</w>\": 38086,\n  \"alife\": 41347,\n  \"alife</w>\": 21100,\n  \"alig\": 21272,\n  \"alight</w>\": 36157,\n  \"align</w>\": 31160,\n  \"aligned</w>\": 29292,\n  \"alignment</w>\": 27267,\n  \"alik</w>\": 31141,\n  \"alike</w>\": 12665,\n  \"alim\": 42075,\n  \"alin\": 42746,\n  \"alin</w>\": 40063,\n  \"alina</w>\": 39529,\n  \"aline</w>\": 21799,\n  \"aling</w>\": 5169,\n  \"alion</w>\": 19049,\n  \"alis\": 21308,\n  \"alis</w>\": 20114,\n  \"alisa</w>\": 38918,\n  \"alisation</w>\": 42143,\n  \"alise</w>\": 36718,\n  \"alised</w>\": 25099,\n  \"alism</w>\": 5607,\n  \"alison\": 28653,\n  \"alison</w>\": 16970,\n  \"alist\": 44900,\n  \"alist</w>\": 3320,\n  \"alistair</w>\": 40551,\n  \"alistic</w>\": 22302,\n  \"alists</w>\": 5653,\n  \"alit\": 45566,\n  \"alities</w>\": 27925,\n  \"ality</w>\": 1694,\n  \"alive\": 40467,\n  \"alive</w>\": 4716,\n  \"aliz\": 30979,\n  \"alization</w>\": 8026,\n  \"alize</w>\": 10268,\n  \"alized</w>\": 6141,\n  \"alizer</w>\": 38922,\n  \"alizes</w>\": 26181,\n  \"alizing</w>\": 13023,\n  \"alk\": 30246,\n  \"alk</w>\": 21577,\n  \"alkal\": 33450,\n  \"alkaline</w>\": 39210,\n  \"all\": 813,\n  \"all</w>\": 615,\n  \"alla\": 13884,\n  \"alla</w>\": 14000,\n  \"allabout\": 43996,\n  \"allah</w>\": 6378,\n  \"allan\": 36552,\n  \"allan</w>\": 15404,\n  \"allblacks</w>\": 47728,\n  \"allday</w>\": 35862,\n  \"alle\": 4870,\n  \"alle</w>\": 29478,\n  \"alled</w>\": 7379,\n  \"alleg\": 7456,\n  \"allegations</w>\": 16992,\n  \"alleged</w>\": 12133,\n  \"allegedly</w>\": 14177,\n  \"alleges</w>\": 45051,\n  \"allegh\": 41479,\n  \"allegheny</w>\": 47851,\n  \"allegi\": 28832,\n  \"allegiance</w>\": 30955,\n  \"allen\": 16712,\n  \"allen</w>\": 6386,\n  \"allenge</w>\": 31387,\n  \"aller\": 10116,\n  \"aller</w>\": 30630,\n  \"allergic</w>\": 28809,\n  \"allergies</w>\": 28247,\n  \"allergy</w>\": 24408,\n  \"allery</w>\": 32542,\n  \"alles</w>\": 43354,\n  \"allevi\": 31682,\n  \"alleviate</w>\": 44799,\n  \"alley\": 36205,\n  \"alley</w>\": 10329,\n  \"allez</w>\": 49137,\n  \"alli\": 4123,\n  \"alli</w>\": 15268,\n  \"alliance\": 45404,\n  \"alliance</w>\": 8945,\n  \"alliances</w>\": 48403,\n  \"allianz</w>\": 45740,\n  \"allie</w>\": 25040,\n  \"allied</w>\": 20045,\n  \"allies</w>\": 17277,\n  \"alligator</w>\": 28574,\n  \"allin\": 45007,\n  \"allin</w>\": 22395,\n  \"alline</w>\": 48182,\n  \"alling</w>\": 2992,\n  \"allis</w>\": 45309,\n  \"allison\": 34602,\n  \"allison</w>\": 16578,\n  \"allman</w>\": 42611,\n  \"allo\": 8107,\n  \"allo</w>\": 18389,\n  \"allocated</w>\": 42716,\n  \"allocation</w>\": 35139,\n  \"allon</w>\": 46693,\n  \"allot\": 26363,\n  \"allotment</w>\": 33750,\n  \"allow\": 5645,\n  \"allow</w>\": 6722,\n  \"allowance</w>\": 35696,\n  \"allowed</w>\": 7885,\n  \"allowing</w>\": 12458,\n  \"allows</w>\": 9966,\n  \"alloy</w>\": 22467,\n  \"alls</w>\": 1997,\n  \"allstar\": 31247,\n  \"allstar</w>\": 22974,\n  \"allstars</w>\": 31198,\n  \"allthe\": 29253,\n  \"allu\": 20157,\n  \"alluarjun</w>\": 39333,\n  \"allure</w>\": 41814,\n  \"ally\": 7461,\n  \"ally</w>\": 769,\n  \"alm</w>\": 28303,\n  \"alma\": 32933,\n  \"alma</w>\": 18337,\n  \"alman\": 29394,\n  \"almanac</w>\": 41268,\n  \"almighty</w>\": 21898,\n  \"almond</w>\": 15646,\n  \"almonds</w>\": 30468,\n  \"almost\": 47534,\n  \"almost</w>\": 2671,\n  \"aln\": 47203,\n  \"alo\": 3435,\n  \"alo</w>\": 6183,\n  \"aloe</w>\": 30728,\n  \"alog</w>\": 15813,\n  \"alogue</w>\": 9101,\n  \"aloha</w>\": 23160,\n  \"aloils</w>\": 49002,\n  \"alom</w>\": 22236,\n  \"alon\": 14097,\n  \"alon</w>\": 42846,\n  \"alone</w>\": 4702,\n  \"along\": 8300,\n  \"along</w>\": 2528,\n  \"alongside</w>\": 8646,\n  \"alonso</w>\": 25704,\n  \"aloo</w>\": 46187,\n  \"alore</w>\": 14323,\n  \"alot</w>\": 16945,\n  \"alou\": 43180,\n  \"aloud</w>\": 30028,\n  \"alove\": 46669,\n  \"alove</w>\": 37045,\n  \"alp\": 32020,\n  \"alp</w>\": 39342,\n  \"alpac\": 30128,\n  \"alpaca</w>\": 42561,\n  \"alph\": 6720,\n  \"alpha\": 11807,\n  \"alpha</w>\": 8624,\n  \"alphabe\": 45796,\n  \"alphabet</w>\": 22335,\n  \"alphon\": 37865,\n  \"alpine</w>\": 17055,\n  \"alps</w>\": 18191,\n  \"already</w>\": 2426,\n  \"alright</w>\": 10866,\n  \"als\": 23982,\n  \"als</w>\": 938,\n  \"alsace</w>\": 49388,\n  \"also</w>\": 1446,\n  \"alt\": 9995,\n  \"alt</w>\": 10006,\n  \"alta\": 24470,\n  \"alta</w>\": 25378,\n  \"altaf</w>\": 47342,\n  \"altam\": 45624,\n  \"altar</w>\": 16385,\n  \"alter\": 4949,\n  \"alter</w>\": 21393,\n  \"altered</w>\": 25201,\n  \"altern\": 47463,\n  \"alternate</w>\": 15926,\n  \"alternati\": 16699,\n  \"alternative\": 37327,\n  \"alternative</w>\": 8248,\n  \"alternatives</w>\": 25041,\n  \"alth\": 23463,\n  \"alth</w>\": 5863,\n  \"although</w>\": 9421,\n  \"alti\": 35531,\n  \"alties</w>\": 17276,\n  \"altitude</w>\": 23241,\n  \"altman</w>\": 48100,\n  \"alto\": 35053,\n  \"alto</w>\": 17518,\n  \"altogether</w>\": 45689,\n  \"alton\": 41331,\n  \"alton</w>\": 36550,\n  \"altrin\": 38458,\n  \"altrincham</w>\": 44718,\n  \"alty</w>\": 5546,\n  \"alu\": 4776,\n  \"alu</w>\": 27991,\n  \"alum\": 5404,\n  \"alum</w>\": 10553,\n  \"alumin\": 14563,\n  \"alumini\": 22908,\n  \"aluminium</w>\": 23631,\n  \"aluminum</w>\": 15251,\n  \"alumna</w>\": 30313,\n  \"alumni</w>\": 6646,\n  \"alumnus</w>\": 23633,\n  \"alums</w>\": 30155,\n  \"alv\": 20928,\n  \"alvar\": 25196,\n  \"alvarez</w>\": 26924,\n  \"alvaro</w>\": 41941,\n  \"alves</w>\": 38547,\n  \"alvin</w>\": 27023,\n  \"alway\": 14046,\n  \"alway</w>\": 43764,\n  \"always\": 24997,\n  \"always</w>\": 1466,\n  \"alwx</w>\": 32768,\n  \"aly\": 6468,\n  \"aly</w>\": 12910,\n  \"alyn\": 49150,\n  \"alyss\": 29490,\n  \"alyssa</w>\": 18898,\n  \"alz\": 12936,\n  \"alz</w>\": 41128,\n  \"alzheim\": 15212,\n  \"alzheimer</w>\": 21151,\n  \"alzheimers</w>\": 34592,\n  \"am\": 548,\n  \"am</w>\": 687,\n  \"ama\": 18206,\n  \"ama</w>\": 1696,\n  \"amad\": 45095,\n  \"amade\": 37366,\n  \"amag\": 32049,\n  \"amal\": 15315,\n  \"amal</w>\": 36753,\n  \"aman\": 19890,\n  \"aman</w>\": 10110,\n  \"amand\": 14560,\n  \"amanda</w>\": 10036,\n  \"amar\": 6424,\n  \"amar</w>\": 19607,\n  \"amara</w>\": 48522,\n  \"amari\": 42565,\n  \"amarillo</w>\": 40449,\n  \"amarine</w>\": 45591,\n  \"amarketing</w>\": 30788,\n  \"amas\": 22716,\n  \"amas</w>\": 15667,\n  \"amat\": 38664,\n  \"amat</w>\": 25455,\n  \"amate\": 12453,\n  \"amateur</w>\": 14287,\n  \"amaya</w>\": 47210,\n  \"amaz\": 1185,\n  \"amaze</w>\": 24846,\n  \"amazed</w>\": 18944,\n  \"amazing\": 15949,\n  \"amazing</w>\": 1370,\n  \"amazingly</w>\": 20368,\n  \"amazon\": 13630,\n  \"amazon</w>\": 4140,\n  \"amb\": 9042,\n  \"amb</w>\": 16853,\n  \"amba</w>\": 27003,\n  \"ambani</w>\": 45967,\n  \"ambas\": 5634,\n  \"ambassad\": 5758,\n  \"ambassador</w>\": 6795,\n  \"ambassadors</w>\": 16832,\n  \"ambed\": 42089,\n  \"ambedkar</w>\": 48131,\n  \"amber\": 18292,\n  \"amber</w>\": 9986,\n  \"ambi\": 11844,\n  \"ambient</w>\": 23447,\n  \"ambigu\": 35702,\n  \"ambition</w>\": 20673,\n  \"ambitions</w>\": 34152,\n  \"ambitious</w>\": 18666,\n  \"ambro\": 17585,\n  \"ambrose</w>\": 24253,\n  \"ambu\": 34423,\n  \"ambul\": 13944,\n  \"ambulance</w>\": 15555,\n  \"ambush</w>\": 40725,\n  \"amc\": 24942,\n  \"amc</w>\": 16921,\n  \"amd</w>\": 20845,\n  \"ame\": 3995,\n  \"ame</w>\": 780,\n  \"amed</w>\": 5660,\n  \"ameen</w>\": 24229,\n  \"amel\": 31988,\n  \"amel</w>\": 10960,\n  \"ameli\": 21599,\n  \"amelia</w>\": 21433,\n  \"amell</w>\": 48198,\n  \"amen\": 18716,\n  \"amen</w>\": 12335,\n  \"amend\": 12425,\n  \"amendment</w>\": 15019,\n  \"amendments</w>\": 40901,\n  \"amenities</w>\": 30096,\n  \"ament</w>\": 27528,\n  \"amer\": 17081,\n  \"amer</w>\": 16147,\n  \"ameri\": 40422,\n  \"americ\": 1283,\n  \"america</w>\": 2224,\n  \"americafirst</w>\": 43216,\n  \"american\": 8746,\n  \"american</w>\": 2151,\n  \"americana</w>\": 26221,\n  \"americanair</w>\": 42538,\n  \"americani\": 39726,\n  \"americans</w>\": 6676,\n  \"americas\": 33343,\n  \"americas</w>\": 18142,\n  \"ames</w>\": 5469,\n  \"ameter</w>\": 23393,\n  \"amethy\": 30291,\n  \"amethyst</w>\": 31485,\n  \"amex</w>\": 46390,\n  \"amg</w>\": 21324,\n  \"amher\": 32311,\n  \"amherst</w>\": 39065,\n  \"ami\": 6100,\n  \"ami</w>\": 3065,\n  \"amic\": 25824,\n  \"amic</w>\": 21383,\n  \"amid\": 18908,\n  \"amid</w>\": 11953,\n  \"amide</w>\": 30952,\n  \"amidst</w>\": 25172,\n  \"amie</w>\": 36901,\n  \"amig\": 40294,\n  \"amiga</w>\": 35329,\n  \"amigo</w>\": 44991,\n  \"amigos</w>\": 28176,\n  \"amii\": 35462,\n  \"amiibo</w>\": 38871,\n  \"amily</w>\": 36732,\n  \"amin\": 14337,\n  \"amin</w>\": 20235,\n  \"amina</w>\": 47531,\n  \"amination</w>\": 30355,\n  \"amine</w>\": 35823,\n  \"aming</w>\": 3507,\n  \"amino</w>\": 33464,\n  \"amir\": 26029,\n  \"amir</w>\": 21973,\n  \"amis</w>\": 29829,\n  \"amish</w>\": 24958,\n  \"amit\": 15083,\n  \"amit</w>\": 25255,\n  \"amitabh</w>\": 48124,\n  \"amitshah</w>\": 32374,\n  \"aml</w>\": 43185,\n  \"amma</w>\": 29786,\n  \"amman</w>\": 29243,\n  \"ammo</w>\": 33474,\n  \"ammunition</w>\": 35060,\n  \"amn</w>\": 24073,\n  \"amne\": 14596,\n  \"amnesia</w>\": 41741,\n  \"amnesty\": 46330,\n  \"amnesty</w>\": 21177,\n  \"amo\": 4833,\n  \"amo</w>\": 11156,\n  \"amodi</w>\": 9826,\n  \"amon\": 17492,\n  \"amon</w>\": 24046,\n  \"among\": 12310,\n  \"among</w>\": 4265,\n  \"amongst</w>\": 12520,\n  \"amoo</w>\": 26977,\n  \"amor\": 19977,\n  \"amor</w>\": 15973,\n  \"amore\": 38937,\n  \"amore</w>\": 22691,\n  \"amores</w>\": 36338,\n  \"amos</w>\": 18133,\n  \"amoto</w>\": 25492,\n  \"amount</w>\": 6403,\n  \"amounts</w>\": 16747,\n  \"amour</w>\": 29908,\n  \"amovie</w>\": 41062,\n  \"amp\": 3521,\n  \"amp</w>\": 6259,\n  \"amped</w>\": 22640,\n  \"amphi\": 16379,\n  \"amphibious</w>\": 45206,\n  \"amphitheater</w>\": 41285,\n  \"amphitheatre</w>\": 44039,\n  \"ample</w>\": 34162,\n  \"amples</w>\": 14536,\n  \"ampli\": 15647,\n  \"amplifier</w>\": 31743,\n  \"amplify</w>\": 45308,\n  \"amps</w>\": 19252,\n  \"ampton\": 29410,\n  \"ampton</w>\": 9347,\n  \"amr</w>\": 30916,\n  \"amreading</w>\": 16546,\n  \"amrit\": 33849,\n  \"ams</w>\": 1396,\n  \"amster\": 9110,\n  \"amsterdam</w>\": 9441,\n  \"amtrak</w>\": 27855,\n  \"amu\": 11347,\n  \"amu</w>\": 32336,\n  \"amur\": 35014,\n  \"amura</w>\": 35487,\n  \"amus</w>\": 36269,\n  \"amuse\": 21421,\n  \"amuse</w>\": 44367,\n  \"amused</w>\": 30212,\n  \"amusement</w>\": 32570,\n  \"amusic</w>\": 20266,\n  \"amusing</w>\": 31789,\n  \"amwriting</w>\": 9660,\n  \"amy\": 10547,\n  \"amy</w>\": 5187,\n  \"an\": 514,\n  \"an</w>\": 550,\n  \"ana\": 6588,\n  \"ana</w>\": 1388,\n  \"anab\": 34742,\n  \"anada</w>\": 27948,\n  \"anag\": 12115,\n  \"anagh</w>\": 40774,\n  \"anaheim</w>\": 23728,\n  \"anak\": 34814,\n  \"anak</w>\": 38658,\n  \"anal\": 2785,\n  \"analo\": 34179,\n  \"analog</w>\": 19963,\n  \"analogue</w>\": 46031,\n  \"analy\": 4611,\n  \"analyse</w>\": 47246,\n  \"analyses</w>\": 39695,\n  \"analysis</w>\": 5296,\n  \"analyst</w>\": 14198,\n  \"analysts</w>\": 28075,\n  \"analytical</w>\": 34550,\n  \"analytics</w>\": 8558,\n  \"analyze</w>\": 28519,\n  \"analyzing</w>\": 32107,\n  \"anam\": 29525,\n  \"anan\": 37215,\n  \"anand\": 25073,\n  \"anand</w>\": 22083,\n  \"anap\": 41566,\n  \"anarch\": 46405,\n  \"anarchi\": 39879,\n  \"anarchy</w>\": 27707,\n  \"anas\": 31382,\n  \"anas</w>\": 12633,\n  \"anast\": 48902,\n  \"anasta\": 22915,\n  \"anastasi\": 36534,\n  \"anastasia</w>\": 37975,\n  \"anat\": 10045,\n  \"anath</w>\": 31277,\n  \"anatom\": 33759,\n  \"anatomy</w>\": 15376,\n  \"anc\": 1124,\n  \"anc</w>\": 17758,\n  \"anca</w>\": 14583,\n  \"ance\": 7165,\n  \"ance</w>\": 884,\n  \"anced</w>\": 5071,\n  \"ancer</w>\": 17415,\n  \"ancers</w>\": 37296,\n  \"ances</w>\": 3515,\n  \"ancestor</w>\": 43904,\n  \"ancestors</w>\": 24405,\n  \"ancestral</w>\": 41615,\n  \"ancestry</w>\": 30922,\n  \"anch\": 9489,\n  \"anche</w>\": 34679,\n  \"ancho\": 26610,\n  \"anchor\": 20030,\n  \"anchor</w>\": 13201,\n  \"anchorage</w>\": 31950,\n  \"anchored</w>\": 45926,\n  \"anchors</w>\": 37830,\n  \"anci\": 4192,\n  \"ancient\": 31495,\n  \"ancient</w>\": 5810,\n  \"ancies</w>\": 21647,\n  \"ancing</w>\": 7797,\n  \"anco</w>\": 15459,\n  \"ancy\": 16282,\n  \"ancy</w>\": 3633,\n  \"and\": 672,\n  \"and</w>\": 537,\n  \"anda</w>\": 2911,\n  \"andalu\": 31443,\n  \"andco</w>\": 36302,\n  \"ande\": 26889,\n  \"ande</w>\": 30354,\n  \"ander\": 3740,\n  \"ander</w>\": 3935,\n  \"anders</w>\": 10880,\n  \"andersen</w>\": 32661,\n  \"anderson\": 26683,\n  \"anderson</w>\": 6510,\n  \"andes</w>\": 24052,\n  \"andfriends</w>\": 36871,\n  \"andhi</w>\": 21617,\n  \"andhra</w>\": 32452,\n  \"andi\": 28870,\n  \"andi</w>\": 14354,\n  \"andie</w>\": 46318,\n  \"andme</w>\": 42831,\n  \"ando\": 35950,\n  \"ando</w>\": 5986,\n  \"andolan</w>\": 48965,\n  \"andon</w>\": 36488,\n  \"andor\": 45243,\n  \"andover</w>\": 44177,\n  \"andr\": 22661,\n  \"andra\": 46795,\n  \"andra</w>\": 21730,\n  \"andre\": 2657,\n  \"andre</w>\": 9400,\n  \"andrea</w>\": 10895,\n  \"andreas</w>\": 20444,\n  \"andrei</w>\": 42137,\n  \"andres</w>\": 25197,\n  \"andretti</w>\": 44291,\n  \"andrew\": 11717,\n  \"andrew</w>\": 4847,\n  \"andrews</w>\": 14506,\n  \"andri\": 37208,\n  \"andro\": 4417,\n  \"andro</w>\": 17980,\n  \"android\": 24284,\n  \"android</w>\": 5191,\n  \"androidgames</w>\": 46572,\n  \"andromeda</w>\": 42942,\n  \"andrÃ©</w>\": 35609,\n  \"ands</w>\": 32257,\n  \"andthe\": 22111,\n  \"andu\": 44200,\n  \"andum</w>\": 47266,\n  \"andy\": 9447,\n  \"andy</w>\": 2888,\n  \"ane\": 5846,\n  \"ane</w>\": 3051,\n  \"anec\": 33965,\n  \"anem\": 41395,\n  \"anemone</w>\": 49019,\n  \"aneous</w>\": 48273,\n  \"anes</w>\": 15381,\n  \"anese</w>\": 48778,\n  \"anesthe\": 30622,\n  \"anesthesia</w>\": 43353,\n  \"anew\": 39084,\n  \"anew</w>\": 47341,\n  \"anews</w>\": 20919,\n  \"aney</w>\": 22387,\n  \"anfield</w>\": 26993,\n  \"ang\": 883,\n  \"ang</w>\": 2704,\n  \"anga</w>\": 11641,\n  \"angames</w>\": 43178,\n  \"angan</w>\": 28264,\n  \"angas</w>\": 46180,\n  \"ange\": 2960,\n  \"ange</w>\": 3039,\n  \"angel\": 5029,\n  \"angel</w>\": 5130,\n  \"angela</w>\": 12354,\n  \"angeles</w>\": 7382,\n  \"angeli\": 15265,\n  \"angelic</w>\": 41038,\n  \"angelica</w>\": 38582,\n  \"angelina</w>\": 28890,\n  \"angelo</w>\": 14342,\n  \"angelou</w>\": 41328,\n  \"angels</w>\": 7809,\n  \"anger\": 32737,\n  \"anger</w>\": 6788,\n  \"angerous</w>\": 39716,\n  \"angers</w>\": 29756,\n  \"angh\": 34030,\n  \"angi\": 28003,\n  \"angi</w>\": 24301,\n  \"angie</w>\": 18859,\n  \"angle\": 21749,\n  \"angle</w>\": 6946,\n  \"angled</w>\": 32322,\n  \"angler</w>\": 22284,\n  \"anglers</w>\": 41608,\n  \"angles</w>\": 18627,\n  \"anglesey</w>\": 31850,\n  \"anglia</w>\": 32076,\n  \"anglic\": 28322,\n  \"anglican</w>\": 33284,\n  \"angling</w>\": 36824,\n  \"anglo\": 39515,\n  \"anglo</w>\": 30408,\n  \"ango</w>\": 19090,\n  \"angola</w>\": 36636,\n  \"angor</w>\": 41740,\n  \"angp</w>\": 19992,\n  \"angry\": 33910,\n  \"angry</w>\": 9054,\n  \"angs</w>\": 18441,\n  \"angst</w>\": 41714,\n  \"angu\": 11209,\n  \"angular\": 43584,\n  \"angular</w>\": 24981,\n  \"angularjs</w>\": 48608,\n  \"angus</w>\": 19688,\n  \"ani\": 1326,\n  \"ani</w>\": 3624,\n  \"ania</w>\": 9866,\n  \"anian</w>\": 9945,\n  \"anians</w>\": 39393,\n  \"anic</w>\": 23113,\n  \"anie\": 26697,\n  \"anie</w>\": 7671,\n  \"anil\": 28589,\n  \"anil</w>\": 34619,\n  \"anim\": 2190,\n  \"animal\": 10697,\n  \"animal</w>\": 4668,\n  \"animalrights</w>\": 42859,\n  \"animals</w>\": 4995,\n  \"animate</w>\": 40076,\n  \"animated</w>\": 13360,\n  \"animation</w>\": 10344,\n  \"animations</w>\": 42870,\n  \"animator</w>\": 42591,\n  \"anime\": 23314,\n  \"anime</w>\": 6469,\n  \"anin</w>\": 45735,\n  \"aning</w>\": 30972,\n  \"anir\": 27089,\n  \"anirud\": 35278,\n  \"anirudhofficial</w>\": 45917,\n  \"anis\": 40986,\n  \"anis</w>\": 47556,\n  \"anism</w>\": 20947,\n  \"anist</w>\": 16729,\n  \"anistan</w>\": 9727,\n  \"aniston</w>\": 47344,\n  \"anit\": 23683,\n  \"anita</w>\": 18544,\n  \"anium</w>\": 14794,\n  \"anj\": 22443,\n  \"anja</w>\": 43440,\n  \"anjali</w>\": 38834,\n  \"anjo</w>\": 47353,\n  \"ank\": 13339,\n  \"ank</w>\": 10029,\n  \"anka</w>\": 45324,\n  \"ankara</w>\": 34309,\n  \"ankle</w>\": 14777,\n  \"ankles</w>\": 48688,\n  \"ann\": 850,\n  \"ann</w>\": 5424,\n  \"anna\": 13821,\n  \"anna</w>\": 2160,\n  \"annab\": 22336,\n  \"annabelle</w>\": 47661,\n  \"annah\": 39166,\n  \"annah</w>\": 14327,\n  \"annak\": 41720,\n  \"annan</w>\": 32166,\n  \"annapolis</w>\": 34491,\n  \"annas\": 48467,\n  \"anne\": 9139,\n  \"anne</w>\": 4083,\n  \"anned</w>\": 27352,\n  \"anner</w>\": 12642,\n  \"annes</w>\": 24343,\n  \"annette</w>\": 36821,\n  \"annex\": 42958,\n  \"annex</w>\": 46389,\n  \"anni\": 2438,\n  \"anni</w>\": 13728,\n  \"annie\": 37270,\n  \"annie</w>\": 12173,\n  \"annies</w>\": 43184,\n  \"annihil\": 32734,\n  \"annis</w>\": 24742,\n  \"anniv</w>\": 31399,\n  \"anniver\": 29671,\n  \"annivers\": 42836,\n  \"anniversaire</w>\": 30882,\n  \"anniversary</w>\": 3048,\n  \"anno\": 9901,\n  \"anno</w>\": 26871,\n  \"annon</w>\": 26385,\n  \"annot\": 30411,\n  \"announ\": 1806,\n  \"announce</w>\": 3682,\n  \"announced</w>\": 4103,\n  \"announcement</w>\": 6932,\n  \"announcements</w>\": 23735,\n  \"announcer</w>\": 33626,\n  \"announces</w>\": 6500,\n  \"announcing</w>\": 11593,\n  \"annoy</w>\": 45138,\n  \"annoyed</w>\": 29863,\n  \"annoying</w>\": 15248,\n  \"annu\": 21698,\n  \"annual</w>\": 2906,\n  \"annually</w>\": 23703,\n  \"anny\": 34313,\n  \"anny</w>\": 5291,\n  \"ano\": 5617,\n  \"ano</w>\": 2658,\n  \"anom\": 21612,\n  \"anomaly</w>\": 46811,\n  \"anon\": 47079,\n  \"anon</w>\": 13667,\n  \"anonym\": 38605,\n  \"anonymous</w>\": 15036,\n  \"anoo\": 25690,\n  \"anor\": 13243,\n  \"anor</w>\": 16596,\n  \"anos</w>\": 20132,\n  \"another\": 29274,\n  \"another</w>\": 1380,\n  \"anova</w>\": 24116,\n  \"ans\": 24586,\n  \"ans</w>\": 885,\n  \"ansari</w>\": 40748,\n  \"ansel\": 40356,\n  \"answ\": 3369,\n  \"answe\": 14391,\n  \"answer</w>\": 4518,\n  \"answered</w>\": 14499,\n  \"answering</w>\": 18280,\n  \"answers</w>\": 8692,\n  \"ant\": 1103,\n  \"ant</w>\": 773,\n  \"anta</w>\": 3023,\n  \"antag\": 41745,\n  \"antal\": 39355,\n  \"antalya</w>\": 47440,\n  \"antan\": 32899,\n  \"antarc\": 21338,\n  \"antarctic</w>\": 27077,\n  \"antarctica</w>\": 22587,\n  \"ante\": 19311,\n  \"ante</w>\": 9769,\n  \"antebellum</w>\": 41683,\n  \"antelope</w>\": 39177,\n  \"anten\": 35517,\n  \"antenna</w>\": 26370,\n  \"anter\": 46508,\n  \"antes</w>\": 14927,\n  \"antgrasso</w>\": 39074,\n  \"anth\": 3737,\n  \"anth</w>\": 29741,\n  \"antha</w>\": 47981,\n  \"anthe\": 34167,\n  \"anthem</w>\": 12504,\n  \"anthi</w>\": 45261,\n  \"anthology</w>\": 21009,\n  \"anthony\": 17477,\n  \"anthony</w>\": 6113,\n  \"anthro\": 10019,\n  \"anthropo\": 18538,\n  \"anthropology</w>\": 32407,\n  \"anthus</w>\": 37639,\n  \"anti\": 3120,\n  \"anti</w>\": 3564,\n  \"antibio\": 18954,\n  \"antibiotic</w>\": 34387,\n  \"antibiotics</w>\": 29499,\n  \"antibody</w>\": 49018,\n  \"antic\": 8260,\n  \"anticip\": 11435,\n  \"anticipate</w>\": 38280,\n  \"anticipated</w>\": 18605,\n  \"anticipating</w>\": 48067,\n  \"anticipation</w>\": 26983,\n  \"antics</w>\": 37126,\n  \"antidote</w>\": 45476,\n  \"antifa</w>\": 35926,\n  \"antigua</w>\": 39910,\n  \"antine</w>\": 17641,\n  \"antino</w>\": 27818,\n  \"antioxid\": 23010,\n  \"antioxidant</w>\": 37452,\n  \"antioxidants</w>\": 34208,\n  \"antiqu\": 21745,\n  \"antique\": 46517,\n  \"antique</w>\": 9060,\n  \"antiques</w>\": 17365,\n  \"antis</w>\": 19748,\n  \"antisemitism</w>\": 36630,\n  \"antit\": 37833,\n  \"antitrust</w>\": 49343,\n  \"antlers</w>\": 47720,\n  \"antly</w>\": 5265,\n  \"anto\": 16826,\n  \"anto</w>\": 24486,\n  \"antoine</w>\": 25188,\n  \"anton\": 5497,\n  \"anton</w>\": 19644,\n  \"antoni\": 39958,\n  \"antonio\": 30497,\n  \"antonio</w>\": 7842,\n  \"antony</w>\": 30707,\n  \"antrim</w>\": 40252,\n  \"ants</w>\": 1589,\n  \"antv</w>\": 47520,\n  \"antw\": 44460,\n  \"antwer\": 26970,\n  \"antwerp</w>\": 33797,\n  \"antz</w>\": 25684,\n  \"anu\": 8537,\n  \"anu</w>\": 17152,\n  \"anup\": 29617,\n  \"anus</w>\": 27084,\n  \"anush\": 22765,\n  \"anushka\": 42080,\n  \"anushka</w>\": 39822,\n  \"anushkasharma</w>\": 44203,\n  \"anwar</w>\": 34261,\n  \"anxi\": 9021,\n  \"anxiety</w>\": 11103,\n  \"anxious</w>\": 27793,\n  \"any\": 1307,\n  \"any</w>\": 1504,\n  \"anya</w>\": 11173,\n  \"anybody</w>\": 10071,\n  \"anyi</w>\": 41632,\n  \"anymore</w>\": 7372,\n  \"anyone</w>\": 2302,\n  \"anything</w>\": 3582,\n  \"anytime</w>\": 13924,\n  \"anyway</w>\": 8931,\n  \"anyways</w>\": 19778,\n  \"anywhere</w>\": 8863,\n  \"anz\": 14445,\n  \"anz</w>\": 19425,\n  \"anza</w>\": 14669,\n  \"anzac</w>\": 31977,\n  \"ao\": 7313,\n  \"ao</w>\": 5703,\n  \"aoa</w>\": 47119,\n  \"aoc</w>\": 31918,\n  \"aofficial</w>\": 30840,\n  \"aoki</w>\": 33602,\n  \"aol</w>\": 40643,\n  \"aon\": 30928,\n  \"aon</w>\": 48476,\n  \"aor\": 32044,\n  \"aos</w>\": 46860,\n  \"ap\": 688,\n  \"ap</w>\": 2728,\n  \"apa\": 36954,\n  \"apa</w>\": 13537,\n  \"apac</w>\": 34320,\n  \"apache</w>\": 23921,\n  \"apal\": 38017,\n  \"apan</w>\": 36562,\n  \"apar\": 9161,\n  \"apark</w>\": 32528,\n  \"apart\": 6474,\n  \"apart</w>\": 7803,\n  \"aparthe\": 25121,\n  \"apartheid</w>\": 26597,\n  \"apartment</w>\": 8285,\n  \"apartments</w>\": 15791,\n  \"aparty</w>\": 26767,\n  \"apat\": 31755,\n  \"apathy</w>\": 18145,\n  \"apc</w>\": 20300,\n  \"apd</w>\": 44563,\n  \"ape\": 6098,\n  \"ape</w>\": 2609,\n  \"apec</w>\": 47530,\n  \"aper\": 13681,\n  \"aper</w>\": 5858,\n  \"apers</w>\": 15846,\n  \"apes</w>\": 9550,\n  \"apeu\": 19040,\n  \"apex\": 41935,\n  \"apex</w>\": 23712,\n  \"aph\": 16341,\n  \"aph</w>\": 29491,\n  \"apha</w>\": 47104,\n  \"apho\": 21758,\n  \"aphra\": 44147,\n  \"api\": 23342,\n  \"api</w>\": 14674,\n  \"apia</w>\": 44259,\n  \"apic\": 40679,\n  \"aping</w>\": 18456,\n  \"apink</w>\": 35725,\n  \"apis</w>\": 37575,\n  \"apk</w>\": 27648,\n  \"apo\": 4089,\n  \"apo</w>\": 19758,\n  \"apocaly\": 13932,\n  \"apocalypse</w>\": 17571,\n  \"apocalyptic</w>\": 35675,\n  \"apol\": 5023,\n  \"apolice</w>\": 45663,\n  \"apolis</w>\": 9598,\n  \"apollo\": 48213,\n  \"apollo</w>\": 11554,\n  \"apolo\": 31094,\n  \"apolog\": 25530,\n  \"apologe\": 42908,\n  \"apologi\": 14977,\n  \"apologies</w>\": 21959,\n  \"apologise</w>\": 39608,\n  \"apologize</w>\": 22879,\n  \"apologizes</w>\": 35298,\n  \"apology</w>\": 20768,\n  \"apor\": 21871,\n  \"apore</w>\": 6679,\n  \"apost\": 20309,\n  \"apostle</w>\": 33051,\n  \"apostles</w>\": 48457,\n  \"app\": 882,\n  \"app</w>\": 2231,\n  \"appa\": 4884,\n  \"appa</w>\": 13110,\n  \"appalach\": 30523,\n  \"appalachian</w>\": 36806,\n  \"appalling</w>\": 44797,\n  \"appar\": 26698,\n  \"apparatus</w>\": 37716,\n  \"apparel</w>\": 13972,\n  \"apparent</w>\": 23963,\n  \"apparently</w>\": 5287,\n  \"appe\": 3748,\n  \"appe</w>\": 45949,\n  \"appeal</w>\": 9625,\n  \"appealing</w>\": 25909,\n  \"appeals</w>\": 22447,\n  \"appear\": 5544,\n  \"appear</w>\": 9308,\n  \"appearance</w>\": 7238,\n  \"appearances</w>\": 17214,\n  \"appeared</w>\": 11561,\n  \"appearing</w>\": 18759,\n  \"appears</w>\": 8743,\n  \"appell\": 43833,\n  \"appen\": 37201,\n  \"appen</w>\": 26589,\n  \"apper</w>\": 18780,\n  \"appet\": 21686,\n  \"appeti\": 24179,\n  \"appetite</w>\": 24481,\n  \"appetizer</w>\": 36065,\n  \"applau\": 24713,\n  \"applaud</w>\": 42152,\n  \"applause</w>\": 22650,\n  \"apple\": 8629,\n  \"apple</w>\": 3055,\n  \"applemusic</w>\": 21390,\n  \"apples</w>\": 14032,\n  \"appleton</w>\": 45250,\n  \"appli\": 15495,\n  \"appliance</w>\": 33677,\n  \"appliances</w>\": 22134,\n  \"applic\": 4235,\n  \"applicable</w>\": 37927,\n  \"applicants</w>\": 28035,\n  \"application</w>\": 7241,\n  \"applications</w>\": 7341,\n  \"applied</w>\": 12636,\n  \"applies</w>\": 24910,\n  \"apply</w>\": 4356,\n  \"applying</w>\": 17965,\n  \"appo\": 5433,\n  \"appoint</w>\": 36190,\n  \"appointed</w>\": 11087,\n  \"appointment</w>\": 10890,\n  \"appointments</w>\": 23439,\n  \"appoints</w>\": 25132,\n  \"apprais\": 36972,\n  \"appraisal</w>\": 46108,\n  \"appreci\": 3474,\n  \"appreciate</w>\": 6263,\n  \"appreciated</w>\": 9264,\n  \"appreciates</w>\": 36573,\n  \"appreciating</w>\": 39352,\n  \"appreciation</w>\": 9212,\n  \"appreciationday</w>\": 37438,\n  \"appreciative</w>\": 45074,\n  \"appren\": 10582,\n  \"apprentic\": 15662,\n  \"apprentice\": 19122,\n  \"apprentice</w>\": 17985,\n  \"apprentices</w>\": 38252,\n  \"apprenticeship</w>\": 26939,\n  \"apprenticeships</w>\": 35425,\n  \"appro\": 2398,\n  \"approach\": 7781,\n  \"approach</w>\": 6241,\n  \"approached</w>\": 36499,\n  \"approaches</w>\": 14962,\n  \"approaching</w>\": 12164,\n  \"appropri\": 8446,\n  \"appropriate</w>\": 10768,\n  \"appropriately</w>\": 30383,\n  \"appropriation</w>\": 49110,\n  \"approval</w>\": 13549,\n  \"approve</w>\": 19064,\n  \"approved</w>\": 9412,\n  \"approves</w>\": 18107,\n  \"approx</w>\": 18266,\n  \"approxim\": 14201,\n  \"approximately</w>\": 16128,\n  \"apps</w>\": 7020,\n  \"appstore</w>\": 31377,\n  \"appt</w>\": 48112,\n  \"appy</w>\": 34420,\n  \"apr\": 39396,\n  \"apr</w>\": 11177,\n  \"apra\": 37027,\n  \"apric\": 25923,\n  \"apricot</w>\": 30815,\n  \"april\": 23548,\n  \"april</w>\": 2484,\n  \"apro\": 42712,\n  \"apro</w>\": 49051,\n  \"apron</w>\": 29502,\n  \"aps</w>\": 8868,\n  \"apse</w>\": 31843,\n  \"apt</w>\": 17921,\n  \"aptly</w>\": 47313,\n  \"apu\": 22166,\n  \"apur\": 36900,\n  \"apur</w>\": 45193,\n  \"aq\": 14018,\n  \"aq</w>\": 26862,\n  \"aqu\": 4458,\n  \"aqua</w>\": 18613,\n  \"aquaculture</w>\": 41885,\n  \"aquaman</w>\": 35098,\n  \"aquari\": 37605,\n  \"aquarium</w>\": 16814,\n  \"aquarius</w>\": 38879,\n  \"aquatic</w>\": 22658,\n  \"aque\": 35927,\n  \"aque</w>\": 37268,\n  \"aqui\": 36826,\n  \"aquino</w>\": 33796,\n  \"ar\": 516,\n  \"ar</w>\": 625,\n  \"ara\": 24161,\n  \"ara</w>\": 3340,\n  \"arab\": 5405,\n  \"arab</w>\": 12028,\n  \"arabia</w>\": 11746,\n  \"arabian</w>\": 24663,\n  \"arabic</w>\": 16709,\n  \"arabs</w>\": 39155,\n  \"arac\": 47620,\n  \"arach\": 37689,\n  \"arag\": 41502,\n  \"araj</w>\": 45142,\n  \"arak\": 23416,\n  \"aram\": 19223,\n  \"aram</w>\": 21473,\n  \"arama</w>\": 49066,\n  \"aran\": 20839,\n  \"aran</w>\": 19641,\n  \"aras</w>\": 36399,\n  \"arat</w>\": 30856,\n  \"arav\": 35836,\n  \"arbit\": 20267,\n  \"arbitr\": 22702,\n  \"arbitration</w>\": 34845,\n  \"arbor\": 33516,\n  \"arbor</w>\": 24878,\n  \"arboretum</w>\": 41719,\n  \"arc\": 4997,\n  \"arc</w>\": 11592,\n  \"arca\": 25189,\n  \"arca</w>\": 37612,\n  \"arcade</w>\": 13331,\n  \"arcadia</w>\": 38372,\n  \"arch\": 2458,\n  \"arch</w>\": 8557,\n  \"archa\": 45619,\n  \"archae\": 10121,\n  \"archaeological</w>\": 26163,\n  \"archaeologists</w>\": 45035,\n  \"archaeology</w>\": 14868,\n  \"archan\": 33359,\n  \"archbishop</w>\": 23994,\n  \"arche\": 22474,\n  \"archer</w>\": 21824,\n  \"archers</w>\": 38407,\n  \"archery</w>\": 23935,\n  \"arches</w>\": 30771,\n  \"archi\": 4479,\n  \"archie</w>\": 20557,\n  \"archipel\": 39750,\n  \"archipelago</w>\": 43025,\n  \"architec\": 3359,\n  \"architect</w>\": 12192,\n  \"architects</w>\": 13290,\n  \"architectural</w>\": 15360,\n  \"architecture\": 39038,\n  \"architecture</w>\": 4920,\n  \"archival</w>\": 39249,\n  \"archive\": 42257,\n  \"archive</w>\": 10548,\n  \"archived</w>\": 42379,\n  \"archives</w>\": 9411,\n  \"archy</w>\": 15643,\n  \"arctic\": 29716,\n  \"arctic</w>\": 9138,\n  \"ard\": 3793,\n  \"ard</w>\": 746,\n  \"arden\": 44600,\n  \"arden</w>\": 27057,\n  \"ardi\": 23932,\n  \"ardi</w>\": 19837,\n  \"ardo\": 35735,\n  \"ardo</w>\": 9394,\n  \"ards</w>\": 1654,\n  \"ardu\": 20906,\n  \"arduino</w>\": 25398,\n  \"are\": 1076,\n  \"are</w>\": 631,\n  \"area</w>\": 2445,\n  \"areas</w>\": 5429,\n  \"arec\": 18136,\n  \"areclipse</w>\": 36030,\n  \"ared</w>\": 5369,\n  \"arel</w>\": 12798,\n  \"arella</w>\": 24784,\n  \"arelli</w>\": 48619,\n  \"aren\": 4033,\n  \"aren</w>\": 4318,\n  \"arena</w>\": 5463,\n  \"arenas</w>\": 47860,\n  \"arent</w>\": 37487,\n  \"arer</w>\": 14857,\n  \"arers</w>\": 33159,\n  \"ares</w>\": 12224,\n  \"arest</w>\": 11708,\n  \"aret</w>\": 22247,\n  \"areth</w>\": 47725,\n  \"aretha</w>\": 42090,\n  \"areyou\": 37607,\n  \"arez</w>\": 13108,\n  \"arg</w>\": 27285,\n  \"argent\": 7812,\n  \"argentina</w>\": 9789,\n  \"argentine</w>\": 32582,\n  \"argon\": 40737,\n  \"argos</w>\": 37443,\n  \"argu\": 7440,\n  \"arguably</w>\": 30899,\n  \"argue</w>\": 19788,\n  \"argued</w>\": 48153,\n  \"argues</w>\": 30045,\n  \"arguing</w>\": 26549,\n  \"argument</w>\": 16224,\n  \"arguments</w>\": 24693,\n  \"argus</w>\": 44300,\n  \"argy\": 21066,\n  \"argyle</w>\": 36179,\n  \"argyll</w>\": 40667,\n  \"ari\": 1221,\n  \"ari</w>\": 3681,\n  \"aria</w>\": 8883,\n  \"arial</w>\": 42431,\n  \"arian\": 29980,\n  \"arian</w>\": 6953,\n  \"ariana</w>\": 14892,\n  \"arianag\": 23025,\n  \"arianagrande</w>\": 23321,\n  \"arianism</w>\": 44351,\n  \"arians</w>\": 19104,\n  \"arias</w>\": 22567,\n  \"arie</w>\": 18774,\n  \"ariel\": 47959,\n  \"ariel</w>\": 21025,\n  \"aries</w>\": 5213,\n  \"arif</w>\": 46621,\n  \"arily</w>\": 12993,\n  \"arin\": 29564,\n  \"arin</w>\": 18612,\n  \"arina</w>\": 29271,\n  \"arine</w>\": 29586,\n  \"aring</w>\": 2142,\n  \"ario</w>\": 8862,\n  \"arios</w>\": 25392,\n  \"aris</w>\": 15227,\n  \"arise</w>\": 26490,\n  \"arist</w>\": 12110,\n  \"aristo\": 25666,\n  \"aristotle</w>\": 49156,\n  \"arities</w>\": 31069,\n  \"arity</w>\": 16608,\n  \"arium</w>\": 11809,\n  \"arius</w>\": 21482,\n  \"ariz\": 6516,\n  \"arized</w>\": 40167,\n  \"arizon\": 28936,\n  \"arizona</w>\": 7106,\n  \"arjun\": 24565,\n  \"arjun</w>\": 20477,\n  \"arjuna</w>\": 43835,\n  \"ark\": 11921,\n  \"ark</w>\": 12010,\n  \"arkansas</w>\": 12227,\n  \"arkham</w>\": 36381,\n  \"arl</w>\": 48542,\n  \"arlington\": 44940,\n  \"arlington</w>\": 17865,\n  \"arly</w>\": 3637,\n  \"arm\": 5671,\n  \"arm</w>\": 4793,\n  \"arma\": 15887,\n  \"arma</w>\": 38716,\n  \"armad\": 37897,\n  \"armada</w>\": 34938,\n  \"armagh</w>\": 44313,\n  \"armani</w>\": 31314,\n  \"armb\": 37096,\n  \"armchair</w>\": 45757,\n  \"armed\": 40471,\n  \"armed</w>\": 8202,\n  \"armen\": 13145,\n  \"armenia</w>\": 22008,\n  \"armenian</w>\": 24891,\n  \"armies</w>\": 46686,\n  \"armin\": 45481,\n  \"arming</w>\": 19766,\n  \"armist\": 38150,\n  \"armistice</w>\": 46765,\n  \"armor</w>\": 16167,\n  \"armored</w>\": 28214,\n  \"armory</w>\": 38610,\n  \"armour</w>\": 18503,\n  \"armoured</w>\": 42514,\n  \"arms</w>\": 5706,\n  \"armstrong</w>\": 15005,\n  \"army\": 13541,\n  \"army</w>\": 3133,\n  \"armys</w>\": 27311,\n  \"arn\": 9348,\n  \"arn</w>\": 37597,\n  \"arnau\": 45556,\n  \"arne</w>\": 43509,\n  \"arney</w>\": 35962,\n  \"arnold\": 49096,\n  \"arnold</w>\": 13609,\n  \"arns</w>\": 46692,\n  \"aro\": 7514,\n  \"aro</w>\": 11551,\n  \"aroa</w>\": 48209,\n  \"arom\": 16831,\n  \"aroma\": 40143,\n  \"aroma</w>\": 26390,\n  \"aromas</w>\": 47439,\n  \"aromatherapy</w>\": 42584,\n  \"aromatic</w>\": 39669,\n  \"aron\": 30855,\n  \"aron</w>\": 28926,\n  \"aroo</w>\": 47581,\n  \"arora</w>\": 31897,\n  \"arosa</w>\": 44264,\n  \"arose</w>\": 44262,\n  \"around\": 35615,\n  \"around</w>\": 1630,\n  \"arqu\": 35654,\n  \"arquitec\": 41703,\n  \"arr\": 39106,\n  \"arr</w>\": 42489,\n  \"arra\": 32918,\n  \"arra</w>\": 43827,\n  \"arrahman</w>\": 44554,\n  \"arran</w>\": 45722,\n  \"arrang\": 16711,\n  \"arrange\": 15410,\n  \"arrange</w>\": 26311,\n  \"arranged</w>\": 22451,\n  \"arrangement</w>\": 23822,\n  \"arrangements</w>\": 23792,\n  \"arranging</w>\": 35321,\n  \"array</w>\": 17293,\n  \"arre\": 4374,\n  \"arrell</w>\": 28846,\n  \"arrest</w>\": 9320,\n  \"arrested</w>\": 5845,\n  \"arresting</w>\": 43930,\n  \"arrests</w>\": 20683,\n  \"arri\": 2115,\n  \"arrival</w>\": 9073,\n  \"arrivals</w>\": 19583,\n  \"arrive</w>\": 8851,\n  \"arrived</w>\": 3514,\n  \"arrives</w>\": 9905,\n  \"arriving</w>\": 10884,\n  \"arro\": 15729,\n  \"arrog\": 26997,\n  \"arrogance</w>\": 47025,\n  \"arrogant</w>\": 40582,\n  \"arrow\": 30920,\n  \"arrow</w>\": 11149,\n  \"arrowhead</w>\": 46393,\n  \"arrows</w>\": 24768,\n  \"arroyo</w>\": 45237,\n  \"ars\": 42815,\n  \"ars</w>\": 864,\n  \"arse</w>\": 22665,\n  \"arsen\": 5330,\n  \"arsenal\": 45234,\n  \"arsenal</w>\": 6084,\n  \"arsene</w>\": 32117,\n  \"arson</w>\": 29937,\n  \"art\": 1486,\n  \"art</w>\": 794,\n  \"arta</w>\": 12031,\n  \"arte\": 13482,\n  \"arte</w>\": 12947,\n  \"artem\": 40387,\n  \"artemis</w>\": 45256,\n  \"arten</w>\": 37043,\n  \"arter\": 29449,\n  \"artery</w>\": 40062,\n  \"artes</w>\": 48629,\n  \"artforsale</w>\": 48239,\n  \"artgallery</w>\": 31982,\n  \"arth\": 7146,\n  \"arth</w>\": 20265,\n  \"arthistory</w>\": 39313,\n  \"arthr\": 20807,\n  \"arthritis</w>\": 22916,\n  \"arthro\": 43255,\n  \"arthur\": 35660,\n  \"arthur</w>\": 8550,\n  \"arti\": 1635,\n  \"arti</w>\": 34601,\n  \"artic\": 3003,\n  \"articho\": 30937,\n  \"artichoke</w>\": 39647,\n  \"article</w>\": 3550,\n  \"articles</w>\": 11939,\n  \"articul\": 40343,\n  \"articulate</w>\": 45444,\n  \"artif\": 8950,\n  \"artifact</w>\": 37718,\n  \"artifacts</w>\": 30249,\n  \"artificial\": 19357,\n  \"artificial</w>\": 12040,\n  \"artificialintelligence</w>\": 20799,\n  \"artillery</w>\": 24465,\n  \"artin\": 33168,\n  \"artin</w>\": 48540,\n  \"artis</w>\": 41794,\n  \"artisan\": 36389,\n  \"artisan</w>\": 21535,\n  \"artisans</w>\": 40140,\n  \"artist\": 14326,\n  \"artist</w>\": 2456,\n  \"artiste</w>\": 41402,\n  \"artistic</w>\": 12421,\n  \"artiston\": 48443,\n  \"artistry</w>\": 38570,\n  \"artists</w>\": 4899,\n  \"artistson\": 32127,\n  \"artistsontwitter</w>\": 39469,\n  \"artlovers</w>\": 35617,\n  \"arto\": 28464,\n  \"artof\": 31751,\n  \"artoftheday</w>\": 43990,\n  \"arton</w>\": 46744,\n  \"arts\": 22040,\n  \"arts</w>\": 3812,\n  \"artsy</w>\": 31588,\n  \"arturo</w>\": 38591,\n  \"artwit</w>\": 36713,\n  \"artwork</w>\": 4188,\n  \"artworks</w>\": 26215,\n  \"arty\": 45417,\n  \"arty</w>\": 25916,\n  \"aru\": 13757,\n  \"aru</w>\": 23907,\n  \"aruba</w>\": 40131,\n  \"arugula</w>\": 40770,\n  \"arum</w>\": 48732,\n  \"arun\": 16105,\n  \"arun</w>\": 31877,\n  \"arunach\": 47260,\n  \"arunjaitley</w>\": 44874,\n  \"arus</w>\": 22644,\n  \"arvin\": 16971,\n  \"arvind\": 21209,\n  \"arvind</w>\": 41079,\n  \"arvindkejriwal</w>\": 22971,\n  \"arvo</w>\": 45726,\n  \"arwx</w>\": 29824,\n  \"ary\": 4617,\n  \"ary</w>\": 856,\n  \"arya</w>\": 23594,\n  \"aryan</w>\": 34966,\n  \"as\": 587,\n  \"as</w>\": 601,\n  \"asa\": 39676,\n  \"asa</w>\": 11914,\n  \"asad</w>\": 42376,\n  \"asaki</w>\": 22455,\n  \"asam\": 40603,\n  \"asan\": 22379,\n  \"asan</w>\": 17841,\n  \"asana</w>\": 42363,\n  \"asant</w>\": 25536,\n  \"asants</w>\": 37766,\n  \"asap\": 24199,\n  \"asap</w>\": 10822,\n  \"asar\": 24733,\n  \"asar</w>\": 49299,\n  \"asb</w>\": 31186,\n  \"asbe\": 32113,\n  \"asbestos</w>\": 33765,\n  \"asc\": 22720,\n  \"asc</w>\": 23305,\n  \"ascen\": 20767,\n  \"ascension</w>\": 35499,\n  \"ascent</w>\": 36625,\n  \"asci\": 12753,\n  \"asco\": 25578,\n  \"asco</w>\": 17488,\n  \"ascot</w>\": 23723,\n  \"ascri\": 15506,\n  \"asd</w>\": 36988,\n  \"asda</w>\": 29391,\n  \"asdf\": 36857,\n  \"asdfghj\": 42758,\n  \"asdfghjkl</w>\": 47660,\n  \"ase\": 8083,\n  \"ase</w>\": 894,\n  \"asean</w>\": 24472,\n  \"aseball</w>\": 46903,\n  \"ased</w>\": 2134,\n  \"asen\": 41085,\n  \"aser\": 39615,\n  \"aser</w>\": 7209,\n  \"ases</w>\": 3762,\n  \"asf</w>\": 25863,\n  \"asg</w>\": 34813,\n  \"ash\": 2067,\n  \"ash</w>\": 2612,\n  \"asha\": 40572,\n  \"asha</w>\": 13472,\n  \"ashamed</w>\": 20633,\n  \"ashby</w>\": 46531,\n  \"ashe\": 48523,\n  \"ashe</w>\": 31752,\n  \"asher</w>\": 37585,\n  \"ashes</w>\": 12587,\n  \"asheville</w>\": 28897,\n  \"ashford</w>\": 37796,\n  \"ashi\": 15563,\n  \"ashi</w>\": 15934,\n  \"ashish</w>\": 33145,\n  \"ashland</w>\": 39938,\n  \"ashleigh</w>\": 49356,\n  \"ashley\": 17825,\n  \"ashley</w>\": 8957,\n  \"asho\": 20273,\n  \"ashok</w>\": 38141,\n  \"ashore</w>\": 31194,\n  \"ashram</w>\": 43445,\n  \"ashton\": 43264,\n  \"ashton</w>\": 12228,\n  \"ashtra</w>\": 18118,\n  \"asi\": 3596,\n  \"asi</w>\": 12562,\n  \"asia</w>\": 5741,\n  \"asian\": 21737,\n  \"asian</w>\": 7128,\n  \"asiangames</w>\": 49108,\n  \"asians</w>\": 36771,\n  \"asics</w>\": 31097,\n  \"aside</w>\": 13676,\n  \"asif</w>\": 37302,\n  \"asim</w>\": 46050,\n  \"asin\": 48432,\n  \"asin</w>\": 44347,\n  \"asing</w>\": 4194,\n  \"asingly</w>\": 15803,\n  \"asion</w>\": 31753,\n  \"asis</w>\": 12398,\n  \"ask\": 11027,\n  \"ask</w>\": 2765,\n  \"asked</w>\": 3993,\n  \"asking</w>\": 5914,\n  \"asks</w>\": 7953,\n  \"asl</w>\": 41650,\n  \"asleep</w>\": 10749,\n  \"asley</w>\": 28206,\n  \"asli</w>\": 44290,\n  \"asm</w>\": 13851,\n  \"asma</w>\": 38497,\n  \"asmsg</w>\": 19839,\n  \"aso\": 30343,\n  \"aso</w>\": 27932,\n  \"asober\": 43749,\n  \"asocial</w>\": 48557,\n  \"ason</w>\": 1163,\n  \"asone</w>\": 31249,\n  \"asons</w>\": 4249,\n  \"asos</w>\": 37924,\n  \"asot</w>\": 47968,\n  \"asp\": 17814,\n  \"asp</w>\": 36666,\n  \"asparag\": 20301,\n  \"asparagus</w>\": 20604,\n  \"aspe\": 10894,\n  \"aspect</w>\": 19681,\n  \"aspects</w>\": 18203,\n  \"aspen\": 35695,\n  \"aspen</w>\": 25712,\n  \"asper\": 32991,\n  \"asph\": 28019,\n  \"asphalt</w>\": 30574,\n  \"aspir\": 12669,\n  \"aspirations</w>\": 36127,\n  \"aspire</w>\": 24836,\n  \"aspiring</w>\": 21862,\n  \"asports</w>\": 43695,\n  \"asr</w>\": 48052,\n  \"asroma</w>\": 41000,\n  \"ass\": 12664,\n  \"ass</w>\": 5301,\n  \"assa</w>\": 47715,\n  \"assad</w>\": 18699,\n  \"assam</w>\": 19930,\n  \"assan\": 26352,\n  \"assange</w>\": 27565,\n  \"assas\": 9603,\n  \"assassin\": 14366,\n  \"assassin</w>\": 20029,\n  \"assassinated</w>\": 40488,\n  \"assassination</w>\": 24907,\n  \"assassins</w>\": 34918,\n  \"assassinscre\": 36428,\n  \"assassinscreed</w>\": 46082,\n  \"assau\": 7908,\n  \"assaul\": 19596,\n  \"assault</w>\": 9679,\n  \"assaulted</w>\": 30785,\n  \"assaulting</w>\": 44143,\n  \"asse\": 3166,\n  \"asse</w>\": 38600,\n  \"assel</w>\": 37582,\n  \"assemb\": 5531,\n  \"assemble</w>\": 26169,\n  \"assembled</w>\": 22627,\n  \"assemblies</w>\": 47406,\n  \"assembling</w>\": 38670,\n  \"assembly\": 34542,\n  \"assembly</w>\": 7059,\n  \"assen</w>\": 38651,\n  \"asser\": 25665,\n  \"asses</w>\": 21596,\n  \"assess\": 9209,\n  \"assess</w>\": 23211,\n  \"assessed</w>\": 44160,\n  \"assessing</w>\": 31364,\n  \"assessment</w>\": 10590,\n  \"assessments</w>\": 32753,\n  \"asset\": 48463,\n  \"asset</w>\": 13039,\n  \"assets</w>\": 13170,\n  \"assi\": 2907,\n  \"assi</w>\": 39540,\n  \"assie</w>\": 31624,\n  \"assign\": 14190,\n  \"assigned</w>\": 25767,\n  \"assignment</w>\": 17342,\n  \"assignments</w>\": 34257,\n  \"assim</w>\": 36394,\n  \"assimil\": 43467,\n  \"assist\": 26558,\n  \"assist</w>\": 10286,\n  \"assistance</w>\": 11685,\n  \"assistant</w>\": 6799,\n  \"assistants</w>\": 31054,\n  \"assisted</w>\": 18095,\n  \"assisting</w>\": 24243,\n  \"assists</w>\": 12675,\n  \"assn</w>\": 44208,\n  \"asso</w>\": 17617,\n  \"assoc</w>\": 18891,\n  \"associ\": 3566,\n  \"associate</w>\": 11777,\n  \"associated</w>\": 11164,\n  \"associates</w>\": 17358,\n  \"association</w>\": 5578,\n  \"associations</w>\": 33209,\n  \"assor\": 38604,\n  \"assorted</w>\": 36701,\n  \"assortment</w>\": 43112,\n  \"asst</w>\": 24767,\n  \"assu\": 8328,\n  \"assume</w>\": 19294,\n  \"assumed</w>\": 37661,\n  \"assuming</w>\": 29422,\n  \"assump\": 41182,\n  \"assumption</w>\": 40773,\n  \"assumptions</w>\": 45948,\n  \"assurance</w>\": 28408,\n  \"assure</w>\": 39161,\n  \"assured</w>\": 25591,\n  \"assures</w>\": 41988,\n  \"assy\": 29940,\n  \"assy</w>\": 12963,\n  \"ast\": 1761,\n  \"ast</w>\": 1242,\n  \"asta</w>\": 43269,\n  \"aste\": 25033,\n  \"aste</w>\": 25579,\n  \"aster\": 11013,\n  \"aster</w>\": 9526,\n  \"asteroid</w>\": 32253,\n  \"asters</w>\": 33139,\n  \"asth\": 16684,\n  \"asthma</w>\": 24610,\n  \"asthour</w>\": 41238,\n  \"astic</w>\": 15876,\n  \"asting</w>\": 29984,\n  \"astle</w>\": 46141,\n  \"asto\": 47275,\n  \"aston\": 24760,\n  \"aston</w>\": 13879,\n  \"astoni\": 21962,\n  \"astonishing</w>\": 27110,\n  \"astonmartin</w>\": 40760,\n  \"astor\": 26391,\n  \"astor</w>\": 47086,\n  \"astoria</w>\": 34798,\n  \"astounding</w>\": 37748,\n  \"astr\": 37609,\n  \"astra\": 47205,\n  \"astra</w>\": 36079,\n  \"astral</w>\": 45889,\n  \"astri\": 31243,\n  \"astrid</w>\": 46499,\n  \"astro\": 8563,\n  \"astro</w>\": 15318,\n  \"astrology</w>\": 28526,\n  \"astron\": 7982,\n  \"astronaut</w>\": 18376,\n  \"astronauts</w>\": 29733,\n  \"astronom\": 23264,\n  \"astronomer</w>\": 40036,\n  \"astronomers</w>\": 44268,\n  \"astronomical</w>\": 39775,\n  \"astronomy</w>\": 17472,\n  \"astrophotography</w>\": 38559,\n  \"astros</w>\": 17598,\n  \"asts</w>\": 10452,\n  \"astu\": 43137,\n  \"astur\": 45795,\n  \"asu\": 13157,\n  \"asu</w>\": 16001,\n  \"asun\": 36044,\n  \"asure</w>\": 3813,\n  \"asus</w>\": 27269,\n  \"aswell</w>\": 42978,\n  \"asx</w>\": 38906,\n  \"asy\": 8524,\n  \"asy</w>\": 2333,\n  \"asylum</w>\": 15638,\n  \"asym\": 32539,\n  \"at\": 527,\n  \"at</w>\": 536,\n  \"ata</w>\": 4236,\n  \"atable</w>\": 23909,\n  \"atal\": 24877,\n  \"atal</w>\": 24797,\n  \"atan</w>\": 33446,\n  \"atar\": 20128,\n  \"atar</w>\": 7995,\n  \"atari</w>\": 21549,\n  \"atas</w>\": 30057,\n  \"atay\": 39518,\n  \"atc</w>\": 28383,\n  \"atch</w>\": 15938,\n  \"atd</w>\": 33890,\n  \"ate\": 992,\n  \"ate</w>\": 671,\n  \"ateam</w>\": 42784,\n  \"ateau</w>\": 16359,\n  \"atec\": 37352,\n  \"atech</w>\": 31306,\n  \"ated\": 14589,\n  \"ated</w>\": 943,\n  \"atedly</w>\": 24698,\n  \"atee</w>\": 32839,\n  \"ateful</w>\": 5419,\n  \"atelier</w>\": 29932,\n  \"ately</w>\": 3862,\n  \"atem\": 17116,\n  \"aten</w>\": 47984,\n  \"atene\": 30405,\n  \"ateneo</w>\": 33904,\n  \"ater\": 18597,\n  \"ater</w>\": 5877,\n  \"ateral</w>\": 18819,\n  \"aters</w>\": 22364,\n  \"ates\": 20370,\n  \"ates</w>\": 1150,\n  \"atest</w>\": 1705,\n  \"ateur</w>\": 43677,\n  \"atf</w>\": 28013,\n  \"ath\": 1374,\n  \"ath</w>\": 1649,\n  \"atha</w>\": 22530,\n  \"atham</w>\": 23383,\n  \"athan\": 41260,\n  \"athan</w>\": 26701,\n  \"athe\": 8963,\n  \"athed</w>\": 47402,\n  \"atheism</w>\": 25823,\n  \"atheist</w>\": 22571,\n  \"atheists</w>\": 47155,\n  \"athen\": 29112,\n  \"athena</w>\": 30705,\n  \"athens</w>\": 13524,\n  \"ather\": 6171,\n  \"ather</w>\": 1817,\n  \"athered</w>\": 34091,\n  \"athers</w>\": 17266,\n  \"athi</w>\": 28918,\n  \"athing</w>\": 36069,\n  \"athle\": 3310,\n  \"athlete</w>\": 7388,\n  \"athletes</w>\": 7125,\n  \"athletic\": 33182,\n  \"athletic</w>\": 9028,\n  \"athletics</w>\": 7019,\n  \"athlon</w>\": 14670,\n  \"athome</w>\": 38217,\n  \"athon</w>\": 4951,\n  \"aths</w>\": 28835,\n  \"athy\": 34488,\n  \"athy</w>\": 13183,\n  \"ati\": 591,\n  \"ati</w>\": 6751,\n  \"atia</w>\": 10908,\n  \"atic\": 20248,\n  \"atic</w>\": 2647,\n  \"atically</w>\": 13558,\n  \"atics</w>\": 15666,\n  \"atie</w>\": 30137,\n  \"aties</w>\": 40060,\n  \"atif</w>\": 41592,\n  \"atiku</w>\": 37912,\n  \"atile</w>\": 15474,\n  \"atility</w>\": 23373,\n  \"atime</w>\": 20158,\n  \"atin\": 36903,\n  \"atin</w>\": 23047,\n  \"atine</w>\": 39741,\n  \"ating\": 25653,\n  \"ating</w>\": 1074,\n  \"atio</w>\": 35401,\n  \"ation\": 2265,\n  \"ation</w>\": 656,\n  \"ational\": 14205,\n  \"ational</w>\": 3108,\n  \"ationals</w>\": 44593,\n  \"ationday</w>\": 20082,\n  \"ations</w>\": 986,\n  \"atis\": 45456,\n  \"atis</w>\": 41142,\n  \"atism</w>\": 45638,\n  \"ative\": 18422,\n  \"ative</w>\": 1648,\n  \"atively</w>\": 11929,\n  \"atives</w>\": 5629,\n  \"ativity</w>\": 25166,\n  \"atkins</w>\": 27734,\n  \"atkinson</w>\": 28908,\n  \"atl\": 5411,\n  \"atl</w>\": 10629,\n  \"atla\": 36043,\n  \"atlan\": 6818,\n  \"atlanta\": 39964,\n  \"atlanta</w>\": 6839,\n  \"atlantic\": 28804,\n  \"atlantic</w>\": 8189,\n  \"atlantis</w>\": 27790,\n  \"atlas</w>\": 15775,\n  \"atle\": 21170,\n  \"atleast</w>\": 33231,\n  \"atleti</w>\": 46067,\n  \"atletico</w>\": 27501,\n  \"atm</w>\": 14127,\n  \"atmo\": 8271,\n  \"atmosphere</w>\": 10506,\n  \"atmospheric</w>\": 24223,\n  \"ato\": 7987,\n  \"ato</w>\": 4364,\n  \"atoday</w>\": 26799,\n  \"atom\": 22418,\n  \"atom</w>\": 24031,\n  \"atomic</w>\": 18996,\n  \"atoms</w>\": 41434,\n  \"aton\": 31525,\n  \"aton</w>\": 10012,\n  \"atop</w>\": 17455,\n  \"ator\": 10748,\n  \"ator</w>\": 1962,\n  \"atore</w>\": 28314,\n  \"atorial</w>\": 32040,\n  \"atories</w>\": 35678,\n  \"atorium</w>\": 41306,\n  \"ators</w>\": 3389,\n  \"atory</w>\": 5920,\n  \"atos</w>\": 41643,\n  \"atour</w>\": 42967,\n  \"atown</w>\": 24000,\n  \"atp\": 38105,\n  \"atp</w>\": 19817,\n  \"atr</w>\": 43247,\n  \"atra\": 20227,\n  \"atra</w>\": 14401,\n  \"atravel</w>\": 36981,\n  \"atre\": 46057,\n  \"atri\": 13882,\n  \"atri</w>\": 38889,\n  \"atric\": 32238,\n  \"atric</w>\": 13652,\n  \"atrics</w>\": 36253,\n  \"atrist</w>\": 41879,\n  \"atrium</w>\": 29725,\n  \"atrix</w>\": 43003,\n  \"atro\": 18724,\n  \"atroc\": 36197,\n  \"atrocities</w>\": 37551,\n  \"atry</w>\": 28334,\n  \"ats\": 46890,\n  \"ats</w>\": 1032,\n  \"atsu</w>\": 26531,\n  \"att\": 1017,\n  \"att</w>\": 7103,\n  \"atta\": 7282,\n  \"atta</w>\": 9146,\n  \"attach\": 43676,\n  \"attach</w>\": 35653,\n  \"attached</w>\": 11038,\n  \"attachment</w>\": 28638,\n  \"attack\": 24971,\n  \"attack</w>\": 3815,\n  \"attacked</w>\": 12366,\n  \"attacker</w>\": 39288,\n  \"attackers</w>\": 47701,\n  \"attacking</w>\": 16813,\n  \"attacks</w>\": 7321,\n  \"attain</w>\": 46459,\n  \"attar</w>\": 37110,\n  \"attemp\": 4933,\n  \"attempt</w>\": 7409,\n  \"attempted</w>\": 17408,\n  \"attempting</w>\": 18195,\n  \"attempts</w>\": 15610,\n  \"atten\": 4084,\n  \"atten</w>\": 32408,\n  \"attenborough</w>\": 45860,\n  \"attend\": 9841,\n  \"attend</w>\": 5802,\n  \"attendance</w>\": 11928,\n  \"attendant</w>\": 35424,\n  \"attended</w>\": 8140,\n  \"attendees</w>\": 14648,\n  \"attending</w>\": 6696,\n  \"attends</w>\": 22248,\n  \"attention</w>\": 4936,\n  \"atters</w>\": 30675,\n  \"atthe\": 21489,\n  \"atti\": 49265,\n  \"atti</w>\": 16235,\n  \"attic</w>\": 26766,\n  \"attire</w>\": 21222,\n  \"attitude</w>\": 10648,\n  \"attitudes</w>\": 27611,\n  \"attle\": 14685,\n  \"attle</w>\": 5030,\n  \"attn</w>\": 25677,\n  \"attor\": 8856,\n  \"attorney</w>\": 10372,\n  \"attorneys</w>\": 29113,\n  \"attrac\": 7154,\n  \"attract</w>\": 17010,\n  \"attracted</w>\": 28493,\n  \"attracting</w>\": 31909,\n  \"attraction</w>\": 16807,\n  \"attractions</w>\": 22307,\n  \"attractive</w>\": 12231,\n  \"attracts</w>\": 31024,\n  \"attribu\": 24624,\n  \"attributed</w>\": 37520,\n  \"attributes</w>\": 40763,\n  \"attu</w>\": 43173,\n  \"atty</w>\": 36705,\n  \"atu\": 15191,\n  \"atu</w>\": 24295,\n  \"atuesday</w>\": 34841,\n  \"atul\": 1744,\n  \"atul</w>\": 43948,\n  \"atum</w>\": 48295,\n  \"atur\": 14986,\n  \"aturday</w>\": 29027,\n  \"ature\": 25305,\n  \"ature</w>\": 4490,\n  \"atures</w>\": 7358,\n  \"atus</w>\": 14795,\n  \"atv</w>\": 19598,\n  \"atwood</w>\": 45680,\n  \"atwork</w>\": 39680,\n  \"atx\": 34849,\n  \"atx</w>\": 20136,\n  \"aty\": 40974,\n  \"aty</w>\": 33107,\n  \"atz</w>\": 30432,\n  \"au\": 627,\n  \"au</w>\": 2566,\n  \"aua</w>\": 45906,\n  \"aub</w>\": 45938,\n  \"auberg\": 49382,\n  \"aubre\": 25899,\n  \"aubrey</w>\": 34110,\n  \"auburn\": 42269,\n  \"auburn</w>\": 14534,\n  \"auc\": 24489,\n  \"auch</w>\": 43024,\n  \"auck\": 14588,\n  \"auckland</w>\": 16072,\n  \"auction\": 48160,\n  \"auction</w>\": 6462,\n  \"auctioned</w>\": 41073,\n  \"auctions</w>\": 24876,\n  \"aucus</w>\": 47374,\n  \"aud\": 16107,\n  \"aud</w>\": 19711,\n  \"audi\": 5091,\n  \"audi</w>\": 10277,\n  \"audible</w>\": 33227,\n  \"audience</w>\": 6863,\n  \"audiences</w>\": 22328,\n  \"audio\": 13792,\n  \"audio</w>\": 5766,\n  \"audiobook</w>\": 26282,\n  \"audit\": 12505,\n  \"audit</w>\": 17625,\n  \"auditi\": 37377,\n  \"audition</w>\": 18673,\n  \"auditions</w>\": 21134,\n  \"auditor</w>\": 38050,\n  \"auditorium</w>\": 15063,\n  \"audre\": 16075,\n  \"audrey</w>\": 18812,\n  \"audu\": 27934,\n  \"audubon</w>\": 40275,\n  \"auer</w>\": 33460,\n  \"auf</w>\": 28924,\n  \"aug\": 15397,\n  \"aug</w>\": 5720,\n  \"auga</w>\": 22797,\n  \"augh\": 28310,\n  \"augh</w>\": 14005,\n  \"augmente\": 48356,\n  \"augmented</w>\": 32708,\n  \"augu\": 2610,\n  \"august\": 24353,\n  \"august</w>\": 3171,\n  \"augusta</w>\": 26144,\n  \"augustine</w>\": 27397,\n  \"augustus</w>\": 36835,\n  \"auk</w>\": 19058,\n  \"aul\": 20695,\n  \"aul</w>\": 34391,\n  \"ault\": 47253,\n  \"ault</w>\": 10219,\n  \"aun\": 10608,\n  \"aun</w>\": 38721,\n  \"aunt</w>\": 12685,\n  \"auntie</w>\": 23783,\n  \"aunty</w>\": 29528,\n  \"aur\": 8156,\n  \"aur</w>\": 17282,\n  \"aura</w>\": 27728,\n  \"aure\": 36010,\n  \"aureli\": 35980,\n  \"auror\": 30067,\n  \"aurora</w>\": 13500,\n  \"aus\": 10624,\n  \"aus</w>\": 7630,\n  \"ausa</w>\": 37384,\n  \"ausbiz</w>\": 46543,\n  \"ausch\": 33926,\n  \"auschwitz</w>\": 36523,\n  \"ausopen</w>\": 27831,\n  \"ausp\": 35039,\n  \"auspicious</w>\": 38806,\n  \"auspol</w>\": 8241,\n  \"aussi\": 19762,\n  \"aussie\": 40230,\n  \"aussie</w>\": 14424,\n  \"aussies</w>\": 35727,\n  \"aust\": 26301,\n  \"aust</w>\": 25418,\n  \"austen</w>\": 29885,\n  \"auster\": 25030,\n  \"austerity</w>\": 26982,\n  \"austin\": 12845,\n  \"austin</w>\": 5125,\n  \"austinmahone</w>\": 34678,\n  \"austr\": 2518,\n  \"australi\": 13798,\n  \"australia</w>\": 3444,\n  \"australian\": 23630,\n  \"australian</w>\": 6258,\n  \"australians</w>\": 31488,\n  \"austri\": 8946,\n  \"austria</w>\": 11960,\n  \"austrian</w>\": 20638,\n  \"ausv\": 35206,\n  \"ausvotes</w>\": 34661,\n  \"aut</w>\": 12343,\n  \"auth\": 2381,\n  \"auth</w>\": 38247,\n  \"authent\": 18158,\n  \"authentic\": 41266,\n  \"authentic</w>\": 10369,\n  \"authentication</w>\": 39746,\n  \"authenticity</w>\": 35734,\n  \"autho\": 34552,\n  \"author\": 14447,\n  \"author</w>\": 4358,\n  \"authored</w>\": 37928,\n  \"authori\": 19207,\n  \"authorities</w>\": 12729,\n  \"authority</w>\": 10524,\n  \"authorization</w>\": 48854,\n  \"authorized</w>\": 28463,\n  \"authors</w>\": 10765,\n  \"auti\": 8200,\n  \"autism\": 36256,\n  \"autism</w>\": 11244,\n  \"autisma\": 43324,\n  \"autistic</w>\": 29360,\n  \"auto\": 3917,\n  \"auto</w>\": 5668,\n  \"autobiography</w>\": 31509,\n  \"autodesk</w>\": 40415,\n  \"autograph\": 10657,\n  \"autograph</w>\": 13722,\n  \"autographed</w>\": 16309,\n  \"autographs</w>\": 17376,\n  \"autoimmune</w>\": 45509,\n  \"autom\": 4114,\n  \"automate</w>\": 43203,\n  \"automated</w>\": 19022,\n  \"automatic</w>\": 12126,\n  \"automatically</w>\": 20725,\n  \"automation</w>\": 12328,\n  \"automobi\": 44813,\n  \"automobile</w>\": 25258,\n  \"automotive</w>\": 12607,\n  \"auton\": 13100,\n  \"autonews</w>\": 43975,\n  \"autonom\": 17870,\n  \"autonomous</w>\": 20722,\n  \"autonomy</w>\": 39223,\n  \"autopsy</w>\": 44436,\n  \"autos</w>\": 31118,\n  \"autoshow</w>\": 46788,\n  \"auts</w>\": 21140,\n  \"autu\": 5445,\n  \"autum\": 31783,\n  \"autumn\": 28940,\n  \"autumn</w>\": 6110,\n  \"autumnal</w>\": 35481,\n  \"aux\": 18154,\n  \"aux</w>\": 8909,\n  \"auxiliary</w>\": 37778,\n  \"av\": 722,\n  \"av</w>\": 8484,\n  \"ava</w>\": 12385,\n  \"avage</w>\": 31505,\n  \"avail\": 1651,\n  \"avail</w>\": 16686,\n  \"availability</w>\": 17551,\n  \"available</w>\": 1685,\n  \"aval\": 18012,\n  \"avalan\": 23970,\n  \"avalanche</w>\": 25815,\n  \"avalley</w>\": 45082,\n  \"avalon</w>\": 30436,\n  \"avan\": 27971,\n  \"avan</w>\": 33351,\n  \"avant</w>\": 24305,\n  \"avar\": 33423,\n  \"avatar</w>\": 18219,\n  \"ave\": 10062,\n  \"ave</w>\": 4860,\n  \"avec</w>\": 25828,\n  \"aved</w>\": 47918,\n  \"avel\": 46817,\n  \"avel</w>\": 48088,\n  \"aven\": 5963,\n  \"aven</w>\": 32971,\n  \"aveng\": 21935,\n  \"avenger</w>\": 24799,\n  \"avengers\": 39413,\n  \"avengers</w>\": 12016,\n  \"avengersendgame</w>\": 49342,\n  \"avent\": 22700,\n  \"avenue</w>\": 7042,\n  \"aver\": 8788,\n  \"aver</w>\": 11403,\n  \"average</w>\": 6254,\n  \"averaged</w>\": 37310,\n  \"averages</w>\": 48982,\n  \"averaging</w>\": 35266,\n  \"avery</w>\": 20313,\n  \"aves</w>\": 14023,\n  \"avfc</w>\": 21304,\n  \"avg</w>\": 19452,\n  \"avgeek</w>\": 11114,\n  \"avi\": 3324,\n  \"avi</w>\": 11297,\n  \"avia</w>\": 38710,\n  \"avian</w>\": 24115,\n  \"aviation\": 27717,\n  \"aviation</w>\": 7617,\n  \"aviator</w>\": 38921,\n  \"aviators</w>\": 48011,\n  \"avici\": 46192,\n  \"avicii</w>\": 49158,\n  \"avid</w>\": 19118,\n  \"avier</w>\": 14598,\n  \"avila</w>\": 45339,\n  \"aville</w>\": 40689,\n  \"avin\": 46204,\n  \"avis\": 45163,\n  \"avis</w>\": 19765,\n  \"aviv</w>\": 22130,\n  \"aviva</w>\": 47122,\n  \"aviz</w>\": 27607,\n  \"avl\": 44749,\n  \"avo\": 4496,\n  \"avo</w>\": 32400,\n  \"avoc\": 12291,\n  \"avocado</w>\": 14135,\n  \"avocados</w>\": 48911,\n  \"avoi\": 16797,\n  \"avoid\": 30448,\n  \"avoid</w>\": 5983,\n  \"avoidance</w>\": 47983,\n  \"avoided</w>\": 32103,\n  \"avoiding</w>\": 22086,\n  \"avoids</w>\": 48220,\n  \"avon\": 22790,\n  \"avon</w>\": 17348,\n  \"avril</w>\": 37763,\n  \"avs</w>\": 31896,\n  \"avut</w>\": 44472,\n  \"avy</w>\": 29973,\n  \"aw\": 808,\n  \"aw</w>\": 5557,\n  \"awa\": 4820,\n  \"awa</w>\": 6872,\n  \"await</w>\": 20769,\n  \"awaited</w>\": 20092,\n  \"awaiting</w>\": 14872,\n  \"awaits</w>\": 15635,\n  \"awak\": 9776,\n  \"awak</w>\": 41387,\n  \"awake</w>\": 14695,\n  \"awaken</w>\": 35412,\n  \"awakening</w>\": 17017,\n  \"awakens</w>\": 23191,\n  \"awal\": 42447,\n  \"awal</w>\": 35090,\n  \"awan\": 48869,\n  \"awan</w>\": 20420,\n  \"awar\": 5745,\n  \"award\": 36310,\n  \"award</w>\": 2047,\n  \"awarded</w>\": 7368,\n  \"awarding</w>\": 37089,\n  \"awards\": 34528,\n  \"awards</w>\": 2320,\n  \"aware\": 4427,\n  \"aware</w>\": 7196,\n  \"awareness\": 19217,\n  \"awareness</w>\": 4823,\n  \"awarenessmonth</w>\": 34278,\n  \"awarenessweek</w>\": 35294,\n  \"away\": 21088,\n  \"away</w>\": 1520,\n  \"aways</w>\": 12782,\n  \"awaz</w>\": 18586,\n  \"awd</w>\": 34846,\n  \"awe\": 1693,\n  \"awe</w>\": 14106,\n  \"aweather\": 42142,\n  \"aweather</w>\": 28681,\n  \"awec</w>\": 38916,\n  \"aweed</w>\": 29724,\n  \"awesom\": 16727,\n  \"awesome\": 30390,\n  \"awesome</w>\": 1848,\n  \"awesomeness</w>\": 22430,\n  \"awful</w>\": 13617,\n  \"awg</w>\": 46350,\n  \"awgs</w>\": 35275,\n  \"awh</w>\": 39566,\n  \"awhile</w>\": 19171,\n  \"awi</w>\": 15167,\n  \"awil\": 47271,\n  \"awilliams</w>\": 42163,\n  \"awk\": 8888,\n  \"awk</w>\": 40943,\n  \"awkward\": 42337,\n  \"awkward</w>\": 10304,\n  \"awn</w>\": 46222,\n  \"awp</w>\": 43300,\n  \"aws</w>\": 19658,\n  \"awsome</w>\": 47196,\n  \"awson</w>\": 36286,\n  \"aww</w>\": 11568,\n  \"awww</w>\": 15634,\n  \"awwww</w>\": 26460,\n  \"awx</w>\": 28385,\n  \"ax\": 3165,\n  \"ax</w>\": 9203,\n  \"axe</w>\": 19861,\n  \"axel\": 47889,\n  \"axel</w>\": 32131,\n  \"axes</w>\": 45970,\n  \"axi\": 30672,\n  \"axial</w>\": 46550,\n  \"axis</w>\": 19614,\n  \"axle</w>\": 39003,\n  \"axx\": 47411,\n  \"ay\": 658,\n  \"ay</w>\": 551,\n  \"aya</w>\": 5917,\n  \"ayala</w>\": 39827,\n  \"ayama</w>\": 41194,\n  \"ayan\": 37781,\n  \"ayan</w>\": 16269,\n  \"ayana</w>\": 37400,\n  \"ayas</w>\": 40904,\n  \"ayat\": 44902,\n  \"ayat</w>\": 35720,\n  \"aye\": 21661,\n  \"aye</w>\": 12446,\n  \"ayer</w>\": 24852,\n  \"ayers</w>\": 42783,\n  \"ayesha</w>\": 46570,\n  \"ayi</w>\": 33025,\n  \"ayles\": 44706,\n  \"ayne</w>\": 35669,\n  \"ayo\": 21929,\n  \"ayo</w>\": 18708,\n  \"ayr\": 23002,\n  \"ayr</w>\": 36473,\n  \"ayrshire</w>\": 32687,\n  \"ays</w>\": 785,\n  \"ayu</w>\": 40769,\n  \"ayurve\": 27185,\n  \"ayurveda</w>\": 38986,\n  \"ayush\": 44831,\n  \"ayy</w>\": 32514,\n  \"ayyy</w>\": 41052,\n  \"az\": 854,\n  \"az</w>\": 5468,\n  \"aza</w>\": 22883,\n  \"azad</w>\": 37838,\n  \"azalea</w>\": 34087,\n  \"azam</w>\": 34727,\n  \"azar</w>\": 27911,\n  \"azcardinals</w>\": 48846,\n  \"aze\": 41157,\n  \"aze</w>\": 28485,\n  \"azer\": 19169,\n  \"azerbai\": 20649,\n  \"azerbaijan</w>\": 23888,\n  \"azhar</w>\": 47019,\n  \"azi\": 23914,\n  \"azi</w>\": 18452,\n  \"azine</w>\": 29140,\n  \"azione</w>\": 48335,\n  \"aziz\": 41205,\n  \"aziz</w>\": 29630,\n  \"azo</w>\": 41227,\n  \"azon</w>\": 36854,\n  \"azores</w>\": 42826,\n  \"azte\": 33270,\n  \"aztec</w>\": 34749,\n  \"aztecs</w>\": 49387,\n  \"azu\": 27701,\n  \"azu</w>\": 46963,\n  \"azul</w>\": 39807,\n  \"azure</w>\": 18514,\n  \"azwx</w>\": 30262,\n  \"azy</w>\": 24783,\n  \"azz\": 9817,\n  \"azz</w>\": 26453,\n  \"azza</w>\": 22255,\n  \"azzi</w>\": 18758,\n  \"azzle</w>\": 39974,\n  \"azzo</w>\": 26779,\n  \"azzur\": 37055,\n  \"azzy</w>\": 44534,\n  \"aÃ±\": 23716,\n  \"aÃ±os</w>\": 41634,\n  \"b\": 65,\n  \"b</w>\": 321,\n  \"ba\": 932,\n  \"ba</w>\": 1792,\n  \"baa</w>\": 33004,\n  \"baahu\": 34145,\n  \"baahubali</w>\": 38663,\n  \"bab\": 1202,\n  \"bab</w>\": 19039,\n  \"baba</w>\": 12631,\n  \"babe\": 31177,\n  \"babe</w>\": 7716,\n  \"babes</w>\": 14253,\n  \"babies</w>\": 6635,\n  \"babs</w>\": 36217,\n  \"babu</w>\": 21623,\n  \"baby\": 7268,\n  \"baby</w>\": 1794,\n  \"babygirl</w>\": 39554,\n  \"babylon</w>\": 31928,\n  \"babymetal</w>\": 45013,\n  \"babys\": 22266,\n  \"babysitting</w>\": 34186,\n  \"bac\": 2791,\n  \"bac</w>\": 25867,\n  \"bacca</w>\": 40708,\n  \"bach\": 11773,\n  \"bach</w>\": 8758,\n  \"bachchan</w>\": 17690,\n  \"bachel\": 11283,\n  \"bachelor\": 45508,\n  \"bachelor</w>\": 16766,\n  \"bachelore\": 26009,\n  \"bachelorette</w>\": 29093,\n  \"bacher</w>\": 49211,\n  \"back\": 1663,\n  \"back</w>\": 893,\n  \"backbone</w>\": 35635,\n  \"backdrop</w>\": 20802,\n  \"backed</w>\": 12721,\n  \"backer</w>\": 22183,\n  \"backers</w>\": 32934,\n  \"background</w>\": 5994,\n  \"backgrounds</w>\": 28215,\n  \"backing</w>\": 14935,\n  \"backlash</w>\": 31519,\n  \"backpack</w>\": 14894,\n  \"backpacking</w>\": 29524,\n  \"backpacks</w>\": 37063,\n  \"backs</w>\": 7562,\n  \"backseat</w>\": 48812,\n  \"backstage</w>\": 9236,\n  \"backstreet\": 46337,\n  \"backthe\": 26127,\n  \"backto\": 18703,\n  \"backtoschool</w>\": 28730,\n  \"backtothe\": 43059,\n  \"backup</w>\": 14415,\n  \"backward</w>\": 37964,\n  \"backwards</w>\": 21283,\n  \"backyard</w>\": 12608,\n  \"bacon\": 48666,\n  \"bacon</w>\": 7104,\n  \"bacter\": 11814,\n  \"bacteria</w>\": 16556,\n  \"bacterial</w>\": 26101,\n  \"bad\": 2564,\n  \"bad</w>\": 2103,\n  \"bada</w>\": 37475,\n  \"badan</w>\": 39149,\n  \"badass</w>\": 11616,\n  \"baddest</w>\": 38112,\n  \"baden</w>\": 36690,\n  \"bader</w>\": 42254,\n  \"badge</w>\": 11301,\n  \"badger\": 32686,\n  \"badger</w>\": 22363,\n  \"badgers</w>\": 22521,\n  \"badges</w>\": 20084,\n  \"badlands</w>\": 43192,\n  \"badly</w>\": 13684,\n  \"badminton</w>\": 21412,\n  \"badoo</w>\": 33192,\n  \"bados</w>\": 25755,\n  \"bae\": 32834,\n  \"bae</w>\": 6855,\n  \"baek\": 18557,\n  \"baek</w>\": 32702,\n  \"baekhyun</w>\": 21572,\n  \"baes</w>\": 46332,\n  \"baf\": 13616,\n  \"baff\": 35693,\n  \"bafta</w>\": 29199,\n  \"bag\": 3408,\n  \"bag</w>\": 3365,\n  \"bage</w>\": 9698,\n  \"bagel</w>\": 28777,\n  \"bagels</w>\": 37489,\n  \"baggage</w>\": 31402,\n  \"bagged</w>\": 34047,\n  \"bagh\": 21659,\n  \"bagh</w>\": 37271,\n  \"baghdad</w>\": 30763,\n  \"bago</w>\": 25105,\n  \"bags</w>\": 6136,\n  \"bagu\": 27749,\n  \"baguette</w>\": 45334,\n  \"bah\": 8372,\n  \"bah</w>\": 16685,\n  \"baha\": 29592,\n  \"baham\": 43718,\n  \"bahamas</w>\": 21224,\n  \"bahan</w>\": 28704,\n  \"bahn</w>\": 33452,\n  \"bahrain</w>\": 12503,\n  \"bai\": 6232,\n  \"bai</w>\": 23339,\n  \"bail\": 22933,\n  \"bail</w>\": 16986,\n  \"bailey\": 27535,\n  \"bailey</w>\": 10180,\n  \"bain\": 40784,\n  \"bain</w>\": 21593,\n  \"bair\": 29059,\n  \"baird</w>\": 40474,\n  \"bait</w>\": 18010,\n  \"baj\": 20713,\n  \"baja\": 40418,\n  \"baja</w>\": 28374,\n  \"bajo</w>\": 32619,\n  \"bak\": 4059,\n  \"bak</w>\": 23742,\n  \"bakar</w>\": 41414,\n  \"bake\": 20736,\n  \"bake</w>\": 11878,\n  \"baked</w>\": 10364,\n  \"baker\": 27303,\n  \"baker</w>\": 7743,\n  \"bakers\": 35293,\n  \"bakers</w>\": 40231,\n  \"bakersfield</w>\": 40149,\n  \"bakery</w>\": 13377,\n  \"bakes</w>\": 43057,\n  \"bakhta\": 44912,\n  \"bakhtawar\": 46937,\n  \"bakhtawarbz</w>\": 47118,\n  \"baking</w>\": 11467,\n  \"baku\": 46417,\n  \"baku</w>\": 31852,\n  \"bal\": 1398,\n  \"bal</w>\": 2282,\n  \"bala</w>\": 20291,\n  \"balaji</w>\": 48694,\n  \"balance\": 42894,\n  \"balance</w>\": 6827,\n  \"balanced</w>\": 15273,\n  \"balances</w>\": 37733,\n  \"balancing</w>\": 23541,\n  \"balboa</w>\": 45098,\n  \"balcony</w>\": 16169,\n  \"bald\": 11153,\n  \"bald</w>\": 14875,\n  \"baldhead</w>\": 29191,\n  \"baldwin</w>\": 16242,\n  \"bale\": 48573,\n  \"bale</w>\": 18873,\n  \"bales</w>\": 42879,\n  \"bali\": 16432,\n  \"bali</w>\": 10900,\n  \"balkan</w>\": 48499,\n  \"balkans</w>\": 42987,\n  \"ball\": 3807,\n  \"ball</w>\": 1069,\n  \"balla\": 42246,\n  \"ballad</w>\": 33472,\n  \"ballarat</w>\": 46645,\n  \"ballard</w>\": 31750,\n  \"baller\": 49194,\n  \"baller</w>\": 25655,\n  \"ballerina</w>\": 34962,\n  \"ballers</w>\": 34173,\n  \"ballet</w>\": 10703,\n  \"balli\": 29406,\n  \"ballin\": 47444,\n  \"ballin</w>\": 33057,\n  \"balling</w>\": 47588,\n  \"ballis\": 46675,\n  \"ballistic</w>\": 36667,\n  \"ballo\": 8871,\n  \"ballon</w>\": 36469,\n  \"balloon</w>\": 13634,\n  \"balloons</w>\": 18130,\n  \"ballot</w>\": 14185,\n  \"ballots</w>\": 35051,\n  \"ballpark</w>\": 26080,\n  \"ballroom</w>\": 15493,\n  \"balls</w>\": 6927,\n  \"bally\": 17275,\n  \"bally</w>\": 29451,\n  \"balm</w>\": 24962,\n  \"balmain</w>\": 45929,\n  \"balo\": 12395,\n  \"baloch</w>\": 23173,\n  \"balochistan</w>\": 21918,\n  \"balot\": 44615,\n  \"balotelli</w>\": 45721,\n  \"bals</w>\": 44154,\n  \"balsam\": 29121,\n  \"balsamic</w>\": 32654,\n  \"balt</w>\": 24441,\n  \"balti\": 8400,\n  \"baltic</w>\": 23817,\n  \"baltimore\": 38502,\n  \"baltimore</w>\": 9582,\n  \"balu\": 38093,\n  \"bam\": 6383,\n  \"bam</w>\": 12686,\n  \"bama</w>\": 20021,\n  \"bambam</w>\": 34538,\n  \"bambi</w>\": 46596,\n  \"bamboo\": 49322,\n  \"bamboo</w>\": 16748,\n  \"ban\": 1159,\n  \"ban</w>\": 2777,\n  \"bana</w>\": 18428,\n  \"banan\": 38410,\n  \"banana</w>\": 8922,\n  \"bananas</w>\": 19121,\n  \"banc\": 39252,\n  \"band\": 4613,\n  \"band</w>\": 1963,\n  \"banda</w>\": 31865,\n  \"bandai</w>\": 42054,\n  \"bandana</w>\": 39265,\n  \"bandcamp</w>\": 32229,\n  \"banded</w>\": 37804,\n  \"bandic\": 44400,\n  \"bandit</w>\": 27639,\n  \"bandits</w>\": 33940,\n  \"bandra</w>\": 41393,\n  \"bands</w>\": 7858,\n  \"bandung</w>\": 29512,\n  \"bandwagon</w>\": 36432,\n  \"bandwidth</w>\": 48859,\n  \"bane</w>\": 9597,\n  \"banerjee</w>\": 48102,\n  \"banff</w>\": 29565,\n  \"bang\": 3524,\n  \"bang</w>\": 6907,\n  \"bangalore</w>\": 14697,\n  \"banger</w>\": 24872,\n  \"bangers</w>\": 38311,\n  \"banging</w>\": 33033,\n  \"bangkok</w>\": 12351,\n  \"bangla\": 10339,\n  \"bangla</w>\": 45928,\n  \"bangladesh</w>\": 11245,\n  \"bangle</w>\": 37634,\n  \"bangor</w>\": 31190,\n  \"bangs</w>\": 27992,\n  \"bangtan</w>\": 39131,\n  \"bani</w>\": 19732,\n  \"banjo</w>\": 27014,\n  \"bank\": 7061,\n  \"bank</w>\": 2723,\n  \"banker</w>\": 27316,\n  \"bankers</w>\": 30599,\n  \"bankholiday\": 48868,\n  \"banking</w>\": 9566,\n  \"bankno\": 49201,\n  \"bankof\": 39120,\n  \"bankrup\": 21904,\n  \"bankrupt\": 23077,\n  \"bankrupt</w>\": 37288,\n  \"bankruptcy</w>\": 23978,\n  \"banks</w>\": 6367,\n  \"banksy</w>\": 33350,\n  \"bann\": 5304,\n  \"banned</w>\": 12012,\n  \"banner</w>\": 9185,\n  \"banners</w>\": 23145,\n  \"banning</w>\": 26246,\n  \"bannon</w>\": 29710,\n  \"bano</w>\": 42947,\n  \"banquet</w>\": 14254,\n  \"bans</w>\": 15146,\n  \"bant\": 23301,\n  \"bant</w>\": 46657,\n  \"banter</w>\": 25535,\n  \"bao\": 39487,\n  \"bao</w>\": 20408,\n  \"bap\": 7415,\n  \"bap</w>\": 23754,\n  \"bapti\": 15477,\n  \"baptism</w>\": 36765,\n  \"baptist</w>\": 13274,\n  \"baptiste</w>\": 45770,\n  \"baptized</w>\": 45400,\n  \"bar\": 1040,\n  \"bar</w>\": 2411,\n  \"bara</w>\": 19345,\n  \"barack\": 18670,\n  \"barack</w>\": 22481,\n  \"barackobama</w>\": 18885,\n  \"barak\": 47419,\n  \"barak</w>\": 16260,\n  \"barang\": 38446,\n  \"barb\": 24173,\n  \"barb</w>\": 20913,\n  \"barbados</w>\": 26992,\n  \"barbar\": 7906,\n  \"barbara</w>\": 10937,\n  \"barbarian</w>\": 42530,\n  \"barbe\": 18372,\n  \"barbecue</w>\": 23501,\n  \"barber\": 19517,\n  \"barber</w>\": 12296,\n  \"barbershop</w>\": 37707,\n  \"barbican</w>\": 47668,\n  \"barbie</w>\": 16923,\n  \"barca</w>\": 22942,\n  \"barcel\": 6134,\n  \"barcelon\": 47820,\n  \"barcelona</w>\": 6412,\n  \"barclay\": 48877,\n  \"barclay</w>\": 45276,\n  \"barclays</w>\": 29538,\n  \"bard\": 39812,\n  \"bard</w>\": 17514,\n  \"bare\": 16023,\n  \"bare</w>\": 14318,\n  \"barefoot</w>\": 30327,\n  \"barely</w>\": 12684,\n  \"bargain</w>\": 15076,\n  \"bargaining</w>\": 41282,\n  \"bargains</w>\": 34126,\n  \"barge</w>\": 28272,\n  \"bari\": 21428,\n  \"bari</w>\": 28016,\n  \"barista</w>\": 31078,\n  \"barit\": 46300,\n  \"bark\": 32333,\n  \"bark</w>\": 16560,\n  \"barker</w>\": 20618,\n  \"barking</w>\": 32676,\n  \"barkley</w>\": 30266,\n  \"barley</w>\": 22607,\n  \"barlow</w>\": 25483,\n  \"barn\": 10490,\n  \"barn</w>\": 10942,\n  \"barnab\": 43272,\n  \"barnard</w>\": 44332,\n  \"barne\": 42527,\n  \"barnes</w>\": 13102,\n  \"barnet</w>\": 41943,\n  \"barnett</w>\": 27650,\n  \"barney</w>\": 24563,\n  \"barns</w>\": 43759,\n  \"barnsley\": 37109,\n  \"barnsley</w>\": 32153,\n  \"baro\": 17422,\n  \"baro</w>\": 30817,\n  \"baron\": 48371,\n  \"baron</w>\": 19349,\n  \"baroness</w>\": 45056,\n  \"barons</w>\": 45596,\n  \"baroque</w>\": 25065,\n  \"barr\": 39473,\n  \"barr</w>\": 22492,\n  \"barra\": 28442,\n  \"barra</w>\": 33542,\n  \"barrabest</w>\": 41376,\n  \"barrac\": 40835,\n  \"barracks</w>\": 35822,\n  \"barre\": 13840,\n  \"barre</w>\": 38257,\n  \"barred</w>\": 33261,\n  \"barrel</w>\": 11703,\n  \"barrels</w>\": 22059,\n  \"barren</w>\": 46743,\n  \"barrett</w>\": 18701,\n  \"barri\": 8660,\n  \"barric\": 29189,\n  \"barrie</w>\": 27090,\n  \"barrier</w>\": 15706,\n  \"barriers</w>\": 16321,\n  \"barrington</w>\": 48954,\n  \"barron</w>\": 34881,\n  \"barrow\": 42568,\n  \"barrow</w>\": 24983,\n  \"barry\": 18028,\n  \"barry</w>\": 8461,\n  \"barrymore</w>\": 49310,\n  \"bars</w>\": 8616,\n  \"barstool\": 44826,\n  \"bart\": 14838,\n  \"bart</w>\": 12870,\n  \"bartender</w>\": 33498,\n  \"barthol\": 48989,\n  \"bartlett</w>\": 37130,\n  \"bartol\": 38209,\n  \"barton\": 48853,\n  \"barton</w>\": 20345,\n  \"baru</w>\": 16356,\n  \"barun\": 38278,\n  \"barunsob\": 41398,\n  \"barÃ§a</w>\": 32788,\n  \"bas\": 1244,\n  \"bas</w>\": 11420,\n  \"basa</w>\": 26142,\n  \"base\": 2776,\n  \"base</w>\": 4579,\n  \"baseball\": 23479,\n  \"baseball</w>\": 3470,\n  \"based\": 35196,\n  \"based</w>\": 2812,\n  \"basel\": 42803,\n  \"basel</w>\": 20903,\n  \"baseline</w>\": 40648,\n  \"baseman</w>\": 45910,\n  \"basement</w>\": 14792,\n  \"bases</w>\": 20496,\n  \"bash\": 20462,\n  \"bash</w>\": 10972,\n  \"bashing</w>\": 37545,\n  \"bashir</w>\": 42799,\n  \"basic\": 40452,\n  \"basic</w>\": 7696,\n  \"basically</w>\": 9125,\n  \"basics</w>\": 15825,\n  \"basil\": 19225,\n  \"basil</w>\": 14936,\n  \"basilica</w>\": 27879,\n  \"basin</w>\": 16117,\n  \"basing\": 47321,\n  \"basis</w>\": 12278,\n  \"baske\": 3713,\n  \"basket</w>\": 10338,\n  \"basketball\": 40023,\n  \"basketball</w>\": 3835,\n  \"baskets</w>\": 27787,\n  \"basking</w>\": 39769,\n  \"basque</w>\": 37175,\n  \"bass\": 22831,\n  \"bass</w>\": 5992,\n  \"bassett</w>\": 45992,\n  \"bassist</w>\": 26496,\n  \"bast\": 28092,\n  \"basti\": 8559,\n  \"bastille</w>\": 41874,\n  \"bat\": 2121,\n  \"bat</w>\": 6575,\n  \"bata</w>\": 39277,\n  \"batb</w>\": 33962,\n  \"batch</w>\": 9413,\n  \"bate\": 25034,\n  \"bate</w>\": 28277,\n  \"bateman</w>\": 41635,\n  \"bates</w>\": 21727,\n  \"batgirl</w>\": 46460,\n  \"bath\": 6064,\n  \"bath</w>\": 5713,\n  \"bathing</w>\": 20144,\n  \"bathro\": 21201,\n  \"bathroom</w>\": 8470,\n  \"bathrooms</w>\": 26434,\n  \"baths</w>\": 19442,\n  \"bathtub</w>\": 39942,\n  \"bathurst</w>\": 36365,\n  \"bati\": 23362,\n  \"bati</w>\": 37589,\n  \"batman\": 27811,\n  \"batman</w>\": 7223,\n  \"baton</w>\": 24331,\n  \"bats</w>\": 14984,\n  \"batsman</w>\": 35432,\n  \"batt\": 2407,\n  \"batt</w>\": 48595,\n  \"battalion</w>\": 20820,\n  \"batter\": 12654,\n  \"batter</w>\": 31855,\n  \"battered</w>\": 34375,\n  \"batteries</w>\": 16666,\n  \"battersea</w>\": 35839,\n  \"battery</w>\": 7870,\n  \"batting</w>\": 17401,\n  \"battle\": 7344,\n  \"battle</w>\": 3528,\n  \"battled</w>\": 37837,\n  \"battlefield</w>\": 16055,\n  \"battlefront</w>\": 42214,\n  \"battleof\": 47560,\n  \"battles</w>\": 14213,\n  \"battleship</w>\": 35165,\n  \"battling</w>\": 17268,\n  \"bau\": 6055,\n  \"bau</w>\": 34840,\n  \"bauer</w>\": 22903,\n  \"baugh</w>\": 41301,\n  \"baum</w>\": 19840,\n  \"bautista</w>\": 31881,\n  \"bav\": 21075,\n  \"bavaria</w>\": 39977,\n  \"bavarian</w>\": 44458,\n  \"baw\": 19808,\n  \"bax\": 21216,\n  \"baxter</w>\": 26168,\n  \"bay\": 3631,\n  \"bay</w>\": 2174,\n  \"baya</w>\": 31573,\n  \"bayan</w>\": 43895,\n  \"bayarea</w>\": 28260,\n  \"bayer\": 48548,\n  \"bayer</w>\": 29183,\n  \"bayern</w>\": 14666,\n  \"baylor</w>\": 21721,\n  \"bayou</w>\": 33955,\n  \"bays</w>\": 40156,\n  \"baz\": 10430,\n  \"baz</w>\": 25268,\n  \"bazaar</w>\": 20070,\n  \"bazar</w>\": 49298,\n  \"bb\": 1174,\n  \"bb</w>\": 3529,\n  \"bba</w>\": 27762,\n  \"bball</w>\": 15664,\n  \"bbb</w>\": 33535,\n  \"bbc\": 5123,\n  \"bbc</w>\": 5188,\n  \"bbcc\": 39052,\n  \"bbce\": 33818,\n  \"bbcnews</w>\": 29370,\n  \"bbcone</w>\": 28259,\n  \"bbcqt</w>\": 37343,\n  \"bbcr</w>\": 35802,\n  \"bbcra\": 17115,\n  \"bbcradi\": 49213,\n  \"bbcradio</w>\": 22876,\n  \"bbcsport</w>\": 49321,\n  \"bbcspringwatch</w>\": 37358,\n  \"bbctwo</w>\": 40395,\n  \"bbcworld</w>\": 47340,\n  \"bbe</w>\": 37559,\n  \"bbed</w>\": 9077,\n  \"bber</w>\": 7933,\n  \"bbers</w>\": 36494,\n  \"bbhutto\": 28085,\n  \"bbhuttozardari</w>\": 28135,\n  \"bbi</w>\": 37047,\n  \"bbin</w>\": 38553,\n  \"bbing</w>\": 9787,\n  \"bbins</w>\": 42504,\n  \"bbl</w>\": 21961,\n  \"bble\": 26570,\n  \"bble</w>\": 5924,\n  \"bbled</w>\": 37626,\n  \"bbles</w>\": 18093,\n  \"bblo\": 21231,\n  \"bbloggers</w>\": 26614,\n  \"bbly</w>\": 43031,\n  \"bbm</w>\": 25382,\n  \"bbmas</w>\": 22145,\n  \"bbn</w>\": 28427,\n  \"bbnaija</w>\": 20984,\n  \"bbo</w>\": 21892,\n  \"bbq\": 41270,\n  \"bbq</w>\": 6726,\n  \"bbs</w>\": 10002,\n  \"bbuk</w>\": 45978,\n  \"bby\": 11166,\n  \"bby</w>\": 3810,\n  \"bc\": 3116,\n  \"bc</w>\": 2162,\n  \"bcc</w>\": 41509,\n  \"bcci</w>\": 36138,\n  \"bce</w>\": 36510,\n  \"bcfc</w>\": 34359,\n  \"bch</w>\": 36684,\n  \"bcn</w>\": 25766,\n  \"bcoz</w>\": 46373,\n  \"bcpoli</w>\": 24389,\n  \"bcs</w>\": 24909,\n  \"bcu</w>\": 28299,\n  \"bd\": 24358,\n  \"bd</w>\": 11165,\n  \"bday\": 33022,\n  \"bday</w>\": 5781,\n  \"bdg</w>\": 48418,\n  \"bds</w>\": 26732,\n  \"be\": 571,\n  \"be</w>\": 655,\n  \"bea\": 21886,\n  \"bea</w>\": 20925,\n  \"beach\": 6068,\n  \"beach</w>\": 2117,\n  \"beaches</w>\": 12183,\n  \"beachlife</w>\": 43824,\n  \"beacon\": 36883,\n  \"beacon</w>\": 18858,\n  \"beacons</w>\": 39395,\n  \"bead\": 31621,\n  \"bead</w>\": 23557,\n  \"beaded</w>\": 26661,\n  \"beads</w>\": 14099,\n  \"beagle</w>\": 30044,\n  \"beak</w>\": 36498,\n  \"beal</w>\": 45769,\n  \"beale</w>\": 39717,\n  \"beam\": 35339,\n  \"beam</w>\": 13663,\n  \"beams</w>\": 23993,\n  \"bean\": 16471,\n  \"bean</w>\": 5328,\n  \"beanie</w>\": 21534,\n  \"beans</w>\": 8302,\n  \"bear\": 6375,\n  \"bear</w>\": 4298,\n  \"bearable</w>\": 38608,\n  \"bearcats</w>\": 33242,\n  \"beard\": 26157,\n  \"beard</w>\": 9052,\n  \"bearded</w>\": 28459,\n  \"beardown</w>\": 43687,\n  \"beards</w>\": 33020,\n  \"bearer</w>\": 30686,\n  \"bearers</w>\": 47986,\n  \"bearing</w>\": 18370,\n  \"bearings</w>\": 42083,\n  \"bearish</w>\": 34829,\n  \"bears</w>\": 6182,\n  \"beasley</w>\": 43349,\n  \"beast\": 20847,\n  \"beast</w>\": 6957,\n  \"beastmode</w>\": 43076,\n  \"beasts</w>\": 21771,\n  \"beat\": 3774,\n  \"beat</w>\": 3018,\n  \"beaten</w>\": 10864,\n  \"beater</w>\": 41974,\n  \"beati\": 44386,\n  \"beating</w>\": 10078,\n  \"beatles</w>\": 11961,\n  \"beatport</w>\": 31421,\n  \"beatrice</w>\": 36922,\n  \"beats</w>\": 6289,\n  \"beatthe\": 40550,\n  \"beatty</w>\": 39903,\n  \"beatz</w>\": 33363,\n  \"beau\": 1016,\n  \"beau</w>\": 14298,\n  \"beaufort</w>\": 45423,\n  \"beaumont</w>\": 32857,\n  \"beaut</w>\": 24559,\n  \"beauti\": 1154,\n  \"beauties</w>\": 14874,\n  \"beautiful\": 13662,\n  \"beautiful</w>\": 1215,\n  \"beautifully</w>\": 10627,\n  \"beauty\": 12881,\n  \"beauty</w>\": 2488,\n  \"beav\": 23260,\n  \"beaver\": 26432,\n  \"beaver</w>\": 22874,\n  \"beavers</w>\": 34513,\n  \"beavs</w>\": 43909,\n  \"bebe</w>\": 23331,\n  \"bec\": 6899,\n  \"bec</w>\": 10773,\n  \"became</w>\": 5464,\n  \"because\": 32714,\n  \"because</w>\": 1631,\n  \"becca</w>\": 27088,\n  \"bech\": 44055,\n  \"beck\": 8256,\n  \"beck</w>\": 10396,\n  \"becker</w>\": 26918,\n  \"beckett</w>\": 27249,\n  \"beckham</w>\": 18764,\n  \"becky\": 32406,\n  \"becky</w>\": 18921,\n  \"become</w>\": 2989,\n  \"becomes</w>\": 6766,\n  \"becoming</w>\": 6208,\n  \"bed\": 4152,\n  \"bed</w>\": 2722,\n  \"bedding</w>\": 31761,\n  \"bedford</w>\": 20779,\n  \"bedi</w>\": 39181,\n  \"bedro\": 18415,\n  \"bedroom</w>\": 8411,\n  \"bedrooms</w>\": 23996,\n  \"beds</w>\": 13914,\n  \"bedside</w>\": 47473,\n  \"bedtime</w>\": 22115,\n  \"bee\": 6097,\n  \"bee</w>\": 5028,\n  \"beech\": 32733,\n  \"beech</w>\": 27596,\n  \"beef\": 21703,\n  \"beef</w>\": 6529,\n  \"beek</w>\": 37915,\n  \"been\": 33986,\n  \"been</w>\": 1025,\n  \"beep</w>\": 33432,\n  \"beer\": 8885,\n  \"beer</w>\": 2544,\n  \"beers</w>\": 10907,\n  \"bees\": 36249,\n  \"bees</w>\": 9100,\n  \"beet\": 12582,\n  \"beet</w>\": 28621,\n  \"beethoven</w>\": 23656,\n  \"beetle</w>\": 16534,\n  \"beetles</w>\": 36317,\n  \"beetro\": 29251,\n  \"beetroot</w>\": 31638,\n  \"beets</w>\": 36087,\n  \"before\": 20898,\n  \"before</w>\": 1348,\n  \"beg\": 2219,\n  \"beg</w>\": 22401,\n  \"began</w>\": 8636,\n  \"begg\": 36769,\n  \"begging</w>\": 25371,\n  \"begin\": 19197,\n  \"begin</w>\": 4947,\n  \"beginner</w>\": 24351,\n  \"beginners</w>\": 21930,\n  \"beginning</w>\": 5791,\n  \"beginnings</w>\": 22581,\n  \"begins</w>\": 4635,\n  \"begs</w>\": 43531,\n  \"begun</w>\": 10514,\n  \"beh\": 21971,\n  \"beh</w>\": 41612,\n  \"beha\": 5737,\n  \"behalf</w>\": 11470,\n  \"behave</w>\": 28825,\n  \"behaved</w>\": 41617,\n  \"behavi\": 6149,\n  \"behaving</w>\": 40745,\n  \"behavior</w>\": 10461,\n  \"behavioral</w>\": 25135,\n  \"behaviors</w>\": 37741,\n  \"behaviour</w>\": 14655,\n  \"behavioural</w>\": 46019,\n  \"behe\": 42329,\n  \"behin\": 2335,\n  \"behind</w>\": 2403,\n  \"behindthe\": 21104,\n  \"behindthescenes</w>\": 26253,\n  \"behold</w>\": 15929,\n  \"bei\": 38991,\n  \"bei</w>\": 23227,\n  \"beige</w>\": 26677,\n  \"beij\": 11547,\n  \"beijing</w>\": 11796,\n  \"bein\": 39117,\n  \"bein</w>\": 24168,\n  \"being\": 13481,\n  \"being</w>\": 1265,\n  \"beings</w>\": 17998,\n  \"beingsalmankhan</w>\": 19637,\n  \"beir\": 20176,\n  \"beirut</w>\": 22352,\n  \"beit</w>\": 26963,\n  \"bek\": 46846,\n  \"bek</w>\": 26135,\n  \"bekind</w>\": 46691,\n  \"bel\": 1308,\n  \"bel</w>\": 3543,\n  \"bela</w>\": 30555,\n  \"belarus</w>\": 30849,\n  \"belated</w>\": 20256,\n  \"belfast\": 35100,\n  \"belfast</w>\": 10015,\n  \"belgi\": 7001,\n  \"belgian</w>\": 15008,\n  \"belgium</w>\": 10239,\n  \"belgrade</w>\": 30502,\n  \"beli\": 1859,\n  \"beli</w>\": 45842,\n  \"belichick</w>\": 46132,\n  \"belie\": 20854,\n  \"beliebers</w>\": 27714,\n  \"belief</w>\": 14802,\n  \"beliefs</w>\": 20575,\n  \"believ\": 4972,\n  \"believe\": 15819,\n  \"believe</w>\": 2649,\n  \"believed</w>\": 13380,\n  \"believein\": 24294,\n  \"believeinfilm</w>\": 37375,\n  \"believer</w>\": 26057,\n  \"believers</w>\": 28434,\n  \"believes</w>\": 12017,\n  \"believing</w>\": 19551,\n  \"belinda</w>\": 44415,\n  \"belize</w>\": 27990,\n  \"bell\": 5417,\n  \"bell</w>\": 3718,\n  \"bella\": 18282,\n  \"bella</w>\": 10418,\n  \"bellamy</w>\": 34461,\n  \"bellator</w>\": 31985,\n  \"belle\": 13587,\n  \"belle</w>\": 11496,\n  \"belles</w>\": 40678,\n  \"bellevue</w>\": 32715,\n  \"belli\": 43335,\n  \"bellletstalk</w>\": 42695,\n  \"bello</w>\": 21954,\n  \"bells</w>\": 12811,\n  \"bellum</w>\": 35493,\n  \"belly\": 25901,\n  \"belly</w>\": 10404,\n  \"belmont</w>\": 25612,\n  \"belo\": 8379,\n  \"belo</w>\": 41649,\n  \"belong\": 16453,\n  \"belong</w>\": 13596,\n  \"belonged</w>\": 39893,\n  \"belonging</w>\": 28193,\n  \"belongs</w>\": 14395,\n  \"beloved</w>\": 9363,\n  \"below</w>\": 3788,\n  \"bels</w>\": 43127,\n  \"belt\": 36416,\n  \"belt</w>\": 7373,\n  \"belts</w>\": 21888,\n  \"belvedere</w>\": 48003,\n  \"ben\": 1465,\n  \"ben</w>\": 3518,\n  \"bena</w>\": 46249,\n  \"bench\": 17770,\n  \"bench</w>\": 8771,\n  \"benches</w>\": 36349,\n  \"benchmark</w>\": 31775,\n  \"bend\": 22100,\n  \"bend</w>\": 13332,\n  \"bender</w>\": 22551,\n  \"bendigo</w>\": 48197,\n  \"bending</w>\": 33897,\n  \"bene\": 12091,\n  \"bene</w>\": 47151,\n  \"beneath</w>\": 16850,\n  \"bened\": 13216,\n  \"benedic\": 24402,\n  \"benedict\": 47896,\n  \"benedict</w>\": 18027,\n  \"benef\": 3260,\n  \"benefici\": 38593,\n  \"beneficial</w>\": 24660,\n  \"beneficiaries</w>\": 42160,\n  \"benefit</w>\": 6399,\n  \"benefited</w>\": 48266,\n  \"benefiting</w>\": 29474,\n  \"benefits</w>\": 5465,\n  \"benefitting</w>\": 47222,\n  \"benevol\": 47060,\n  \"benfica</w>\": 33873,\n  \"beng\": 6962,\n  \"bengal\": 17404,\n  \"bengal</w>\": 16374,\n  \"bengali</w>\": 33774,\n  \"bengals</w>\": 23737,\n  \"bengaluru</w>\": 21707,\n  \"benghazi</w>\": 25967,\n  \"benin</w>\": 40296,\n  \"benitez</w>\": 46711,\n  \"benjam\": 10550,\n  \"benjamin\": 38647,\n  \"benjamin</w>\": 12131,\n  \"benji</w>\": 43548,\n  \"benn</w>\": 39097,\n  \"bennet</w>\": 48536,\n  \"bennett</w>\": 12186,\n  \"benny\": 42369,\n  \"benny</w>\": 20595,\n  \"beno\": 35268,\n  \"benoit</w>\": 44373,\n  \"benson</w>\": 19578,\n  \"bent\": 9809,\n  \"bent</w>\": 18369,\n  \"bentley</w>\": 16859,\n  \"benton</w>\": 30812,\n  \"benz\": 27937,\n  \"benz</w>\": 13470,\n  \"ber\": 867,\n  \"ber</w>\": 1516,\n  \"bera</w>\": 32802,\n  \"bere\": 17458,\n  \"bered</w>\": 9193,\n  \"beren\": 33654,\n  \"beret</w>\": 41658,\n  \"berg\": 12022,\n  \"berg</w>\": 3294,\n  \"bergen</w>\": 22918,\n  \"berger\": 35933,\n  \"berger</w>\": 13873,\n  \"bergh</w>\": 35120,\n  \"bergman</w>\": 42597,\n  \"bergs</w>\": 43592,\n  \"berk\": 15633,\n  \"berke\": 14639,\n  \"berkeley\": 46049,\n  \"berkeley</w>\": 16667,\n  \"berkshire</w>\": 27300,\n  \"berlin\": 23532,\n  \"berlin</w>\": 5891,\n  \"berman</w>\": 21514,\n  \"bermu\": 21032,\n  \"bermuda</w>\": 24644,\n  \"bern\": 9195,\n  \"bern</w>\": 18382,\n  \"bernade\": 46242,\n  \"bernar\": 11962,\n  \"bernard</w>\": 14579,\n  \"bernardino</w>\": 35328,\n  \"bernardo\": 27137,\n  \"bernardo</w>\": 28696,\n  \"bernardokath</w>\": 29081,\n  \"bernat\": 40578,\n  \"berni\": 18798,\n  \"bernie\": 40093,\n  \"bernie</w>\": 10503,\n  \"berniesanders</w>\": 23745,\n  \"bernstein</w>\": 33936,\n  \"berra</w>\": 15089,\n  \"berries</w>\": 8319,\n  \"berry\": 15334,\n  \"berry</w>\": 3488,\n  \"bers</w>\": 6408,\n  \"berser\": 39037,\n  \"bert\": 17340,\n  \"bert</w>\": 2358,\n  \"berta</w>\": 45187,\n  \"berth</w>\": 28317,\n  \"bertie</w>\": 47182,\n  \"berto</w>\": 34073,\n  \"bertr\": 36962,\n  \"bertrand</w>\": 41594,\n  \"berts</w>\": 30205,\n  \"berty</w>\": 35973,\n  \"berwick</w>\": 40407,\n  \"bery</w>\": 11411,\n  \"bes\": 26911,\n  \"bes</w>\": 3635,\n  \"beside</w>\": 13519,\n  \"besides</w>\": 17596,\n  \"bespoke</w>\": 15612,\n  \"bess</w>\": 43791,\n  \"best\": 3419,\n  \"best</w>\": 949,\n  \"bestbuy</w>\": 29749,\n  \"bestest</w>\": 31199,\n  \"bestfan\": 23880,\n  \"bestfanarmy</w>\": 24590,\n  \"bestfriend\": 29832,\n  \"bestfriend</w>\": 11856,\n  \"bestfriends</w>\": 23555,\n  \"besti\": 35210,\n  \"bestie</w>\": 17188,\n  \"besties</w>\": 27346,\n  \"besto\": 28615,\n  \"bestof\": 27892,\n  \"bestof</w>\": 39533,\n  \"bestseller</w>\": 25841,\n  \"bestselling</w>\": 28632,\n  \"bet\": 1051,\n  \"bet</w>\": 4430,\n  \"beta\": 43188,\n  \"beta</w>\": 9505,\n  \"betes</w>\": 10255,\n  \"beth\": 9993,\n  \"beth</w>\": 4892,\n  \"bethan\": 18781,\n  \"bethany\": 39130,\n  \"bethany</w>\": 27952,\n  \"bethe\": 12624,\n  \"bethel</w>\": 33410,\n  \"bethesda</w>\": 32527,\n  \"bethle\": 30760,\n  \"bethlehem</w>\": 31827,\n  \"betis</w>\": 45590,\n  \"beto</w>\": 33721,\n  \"betra\": 18436,\n  \"betrayal</w>\": 33171,\n  \"betrayed</w>\": 35692,\n  \"bets</w>\": 17107,\n  \"betsy</w>\": 28946,\n  \"bett\": 17715,\n  \"bett</w>\": 20489,\n  \"betta</w>\": 36387,\n  \"bette</w>\": 35855,\n  \"better\": 10320,\n  \"better</w>\": 1539,\n  \"bettertogether</w>\": 47392,\n  \"betting</w>\": 14319,\n  \"betts</w>\": 38637,\n  \"betty\": 36175,\n  \"betty</w>\": 14350,\n  \"between</w>\": 1957,\n  \"beu\": 38660,\n  \"bev\": 40324,\n  \"bev</w>\": 30968,\n  \"bever\": 9924,\n  \"beverage</w>\": 18694,\n  \"beverages</w>\": 28521,\n  \"beverley</w>\": 39165,\n  \"beverly\": 30906,\n  \"beverly</w>\": 16728,\n  \"beverlyhills</w>\": 45363,\n  \"beware</w>\": 14532,\n  \"bewithyou</w>\": 36787,\n  \"bex\": 18676,\n  \"bex</w>\": 24748,\n  \"bexhill</w>\": 49200,\n  \"bey\": 3234,\n  \"bey</w>\": 6767,\n  \"beyon\": 11447,\n  \"beyonce</w>\": 16632,\n  \"beyoncÃ©</w>\": 19219,\n  \"beyond\": 22246,\n  \"beyond</w>\": 4432,\n  \"bez\": 28592,\n  \"bez</w>\": 46764,\n  \"bezos</w>\": 45000,\n  \"bf\": 19858,\n  \"bf</w>\": 7990,\n  \"bfc</w>\": 37183,\n  \"bff</w>\": 11984,\n  \"bffs</w>\": 31462,\n  \"bfi</w>\": 34244,\n  \"bg\": 16674,\n  \"bg</w>\": 11295,\n  \"bgc</w>\": 47598,\n  \"bgs</w>\": 47963,\n  \"bgt</w>\": 40665,\n  \"bh\": 9930,\n  \"bh</w>\": 13603,\n  \"bha\": 6144,\n  \"bha</w>\": 33068,\n  \"bhafc</w>\": 30779,\n  \"bhagat</w>\": 49136,\n  \"bhai\": 48370,\n  \"bhai</w>\": 20508,\n  \"bhak\": 34501,\n  \"bham\": 31874,\n  \"bham</w>\": 23491,\n  \"bhan\": 27356,\n  \"bhand\": 48679,\n  \"bhar\": 9108,\n  \"bharat\": 27454,\n  \"bharat</w>\": 17430,\n  \"bharti</w>\": 46803,\n  \"bhat\": 23784,\n  \"bhatt</w>\": 36143,\n  \"bhav\": 44950,\n  \"bhi\": 28943,\n  \"bhi</w>\": 21955,\n  \"bhk</w>\": 45070,\n  \"bhm</w>\": 38741,\n  \"bho\": 19721,\n  \"bhopal</w>\": 44573,\n  \"bhp</w>\": 29776,\n  \"bhs</w>\": 29195,\n  \"bhu\": 9172,\n  \"bhuban\": 38729,\n  \"bhubanes\": 41213,\n  \"bhubaneswar</w>\": 45888,\n  \"bhushan</w>\": 40884,\n  \"bhutan</w>\": 32391,\n  \"bhutto</w>\": 30153,\n  \"bi\": 717,\n  \"bi</w>\": 3035,\n  \"bia</w>\": 3841,\n  \"biaf\": 26961,\n  \"biafra</w>\": 36355,\n  \"bian\": 19531,\n  \"bian</w>\": 9027,\n  \"bianca</w>\": 25854,\n  \"bianchi</w>\": 45720,\n  \"bians</w>\": 28141,\n  \"bias</w>\": 11268,\n  \"biased</w>\": 22178,\n  \"bib\": 44607,\n  \"bib</w>\": 21022,\n  \"bibi</w>\": 31182,\n  \"bibl\": 20912,\n  \"bible\": 26738,\n  \"bible</w>\": 7583,\n  \"bibli\": 23465,\n  \"biblical</w>\": 22841,\n  \"biblio\": 49131,\n  \"bic\": 5960,\n  \"bic</w>\": 10675,\n  \"bice\": 35589,\n  \"biceps</w>\": 46735,\n  \"bick\": 27238,\n  \"bicy\": 9247,\n  \"bicycle</w>\": 11652,\n  \"bicycles</w>\": 31326,\n  \"bid\": 21035,\n  \"bid</w>\": 5553,\n  \"bidding</w>\": 23237,\n  \"bide</w>\": 45178,\n  \"biden</w>\": 19451,\n  \"bids</w>\": 16148,\n  \"bie\": 5561,\n  \"bie</w>\": 4173,\n  \"bieber\": 48725,\n  \"bieber</w>\": 7535,\n  \"bien\": 19176,\n  \"bien</w>\": 25742,\n  \"biennale</w>\": 33776,\n  \"biennial</w>\": 36609,\n  \"bier\": 27226,\n  \"bier</w>\": 23508,\n  \"bies</w>\": 7867,\n  \"big\": 1915,\n  \"big</w>\": 1205,\n  \"bigbaldhead</w>\": 30325,\n  \"bigbang\": 41680,\n  \"bigbang</w>\": 23734,\n  \"bigdata</w>\": 9440,\n  \"bige\": 37762,\n  \"bigfoot</w>\": 37095,\n  \"bigg\": 15312,\n  \"bigg</w>\": 35399,\n  \"biggboss</w>\": 27056,\n  \"bigger</w>\": 6806,\n  \"biggest\": 19483,\n  \"biggest</w>\": 3505,\n  \"biggie</w>\": 28392,\n  \"biggs</w>\": 46507,\n  \"bigh\": 18106,\n  \"bighit</w>\": 35508,\n  \"bigo\": 14278,\n  \"bigolive</w>\": 20735,\n  \"bigotry</w>\": 37269,\n  \"bigre\": 36330,\n  \"bih</w>\": 33471,\n  \"bihar</w>\": 22849,\n  \"bij\": 42478,\n  \"bik\": 30306,\n  \"bike\": 11686,\n  \"bike</w>\": 3701,\n  \"biker\": 36100,\n  \"biker</w>\": 23449,\n  \"bikers</w>\": 29468,\n  \"bikes</w>\": 9227,\n  \"bikin\": 12638,\n  \"biking</w>\": 19157,\n  \"bikini</w>\": 14531,\n  \"bil\": 3092,\n  \"bil</w>\": 20506,\n  \"bilateral</w>\": 25599,\n  \"bilbao</w>\": 34802,\n  \"bild</w>\": 35512,\n  \"bile</w>\": 25943,\n  \"bilingual</w>\": 29623,\n  \"bilities</w>\": 13582,\n  \"bility</w>\": 4694,\n  \"bill\": 4444,\n  \"bill</w>\": 2886,\n  \"billboard</w>\": 10856,\n  \"billboards</w>\": 34741,\n  \"billed</w>\": 37558,\n  \"billi\": 7693,\n  \"billie</w>\": 23990,\n  \"billing</w>\": 31797,\n  \"billings</w>\": 43615,\n  \"billion\": 14520,\n  \"billion</w>\": 5729,\n  \"billionaire</w>\": 19475,\n  \"billionaires</w>\": 41590,\n  \"billions</w>\": 20742,\n  \"bills</w>\": 9810,\n  \"billsmafia</w>\": 48845,\n  \"billy\": 15626,\n  \"billy</w>\": 6814,\n  \"bilt\": 44770,\n  \"bilt</w>\": 26654,\n  \"bim\": 46737,\n  \"bim</w>\": 24775,\n  \"bin\": 4849,\n  \"bin</w>\": 5346,\n  \"binance</w>\": 43520,\n  \"binary</w>\": 23497,\n  \"bind</w>\": 44513,\n  \"binder</w>\": 30541,\n  \"binding</w>\": 21287,\n  \"bine</w>\": 34848,\n  \"bing\": 24818,\n  \"bing</w>\": 5665,\n  \"binge</w>\": 22600,\n  \"bingham\": 43785,\n  \"bingham</w>\": 47296,\n  \"bingo</w>\": 18418,\n  \"bino\": 29172,\n  \"bino</w>\": 24313,\n  \"bins</w>\": 26934,\n  \"bint\": 43647,\n  \"bio\": 2830,\n  \"bio</w>\": 5162,\n  \"biode\": 43502,\n  \"biodegradable</w>\": 47740,\n  \"biodiversity</w>\": 17428,\n  \"biof\": 45158,\n  \"biographical</w>\": 49232,\n  \"biography</w>\": 15423,\n  \"biological</w>\": 18821,\n  \"biologist</w>\": 35149,\n  \"biology</w>\": 9796,\n  \"biom\": 13010,\n  \"biomar\": 44549,\n  \"biomass</w>\": 36746,\n  \"biome\": 26218,\n  \"biomed\": 29280,\n  \"biomedical</w>\": 33117,\n  \"bionic</w>\": 46201,\n  \"biop\": 15009,\n  \"biopic</w>\": 27942,\n  \"bios</w>\": 48505,\n  \"biotech</w>\": 22514,\n  \"biotechnology</w>\": 40375,\n  \"biotic</w>\": 33773,\n  \"biotics</w>\": 41371,\n  \"bious</w>\": 31845,\n  \"bipartisan</w>\": 32266,\n  \"bipolar</w>\": 37097,\n  \"bique</w>\": 27809,\n  \"bir\": 921,\n  \"bir</w>\": 16284,\n  \"birch\": 31569,\n  \"birch</w>\": 22907,\n  \"bird\": 6908,\n  \"bird</w>\": 3329,\n  \"birdie</w>\": 29612,\n  \"birdies</w>\": 45618,\n  \"birding</w>\": 15851,\n  \"birdman</w>\": 41915,\n  \"birdphotography</w>\": 47999,\n  \"birds\": 41951,\n  \"birds</w>\": 4337,\n  \"birdwatching</w>\": 33497,\n  \"birk\": 48289,\n  \"birken\": 40661,\n  \"birmin\": 37482,\n  \"birmingham\": 38580,\n  \"birmingham</w>\": 7720,\n  \"birth\": 1128,\n  \"birth</w>\": 5397,\n  \"birthday\": 7381,\n  \"birthday</w>\": 1166,\n  \"birthdays</w>\": 17954,\n  \"birthplace</w>\": 31429,\n  \"biryani</w>\": 46489,\n  \"bis\": 5064,\n  \"bis</w>\": 14461,\n  \"biscu\": 11532,\n  \"biscuit</w>\": 18731,\n  \"biscuits</w>\": 18248,\n  \"bisexual</w>\": 36829,\n  \"bish\": 33690,\n  \"bish</w>\": 31461,\n  \"bishop\": 20625,\n  \"bishop</w>\": 8024,\n  \"bishops</w>\": 31579,\n  \"bison</w>\": 19741,\n  \"bistro</w>\": 21770,\n  \"bit\": 3010,\n  \"bit</w>\": 2010,\n  \"bitcoin\": 30848,\n  \"bitcoin</w>\": 6366,\n  \"bite</w>\": 41613,\n  \"biting</w>\": 23016,\n  \"bits</w>\": 7747,\n  \"bitt</w>\": 39251,\n  \"bius</w>\": 45525,\n  \"bix\": 46579,\n  \"biz\": 8212,\n  \"biz</w>\": 5431,\n  \"biza</w>\": 47013,\n  \"bizar\": 14886,\n  \"bizarre</w>\": 16965,\n  \"bizhour</w>\": 39462,\n  \"bizitalk</w>\": 34929,\n  \"bj\": 4592,\n  \"bj</w>\": 18229,\n  \"bjj</w>\": 27437,\n  \"bjor\": 26525,\n  \"bjp\": 37264,\n  \"bjp</w>\": 6178,\n  \"bk\": 15099,\n  \"bk</w>\": 14083,\n  \"bkk</w>\": 36433,\n  \"bl\": 833,\n  \"bl</w>\": 9467,\n  \"bla\": 2205,\n  \"bla</w>\": 19630,\n  \"blac\": 21008,\n  \"black\": 2025,\n  \"black</w>\": 1449,\n  \"blackand\": 12809,\n  \"blackandwhite\": 23688,\n  \"blackandwhite</w>\": 19506,\n  \"blackandwhitephotography</w>\": 27544,\n  \"blackberry</w>\": 16470,\n  \"blackbird</w>\": 38526,\n  \"blackburn</w>\": 23789,\n  \"blackfish</w>\": 42193,\n  \"blackfriday</w>\": 16445,\n  \"blackgirl\": 43591,\n  \"blackhawks</w>\": 19203,\n  \"blackhistory</w>\": 46982,\n  \"blackhistorymonth</w>\": 20135,\n  \"blacklist</w>\": 30295,\n  \"blacklivesmatter</w>\": 23467,\n  \"blackmail</w>\": 47295,\n  \"blackops</w>\": 43519,\n  \"blackout</w>\": 21733,\n  \"blackpanther</w>\": 36592,\n  \"blackpink</w>\": 20339,\n  \"blackpool</w>\": 21031,\n  \"blacks</w>\": 16351,\n  \"blackwell</w>\": 42642,\n  \"blad</w>\": 36635,\n  \"bladder</w>\": 33593,\n  \"blade</w>\": 10264,\n  \"blades</w>\": 16893,\n  \"blah</w>\": 29212,\n  \"blaine</w>\": 32457,\n  \"blair\": 31824,\n  \"blair</w>\": 14749,\n  \"blake\": 20229,\n  \"blake</w>\": 9579,\n  \"blame</w>\": 10695,\n  \"blamed</w>\": 32906,\n  \"blames</w>\": 27841,\n  \"blaming</w>\": 29287,\n  \"blan\": 4609,\n  \"blanc\": 30936,\n  \"blanc</w>\": 13301,\n  \"blanca</w>\": 40670,\n  \"blanchard</w>\": 40177,\n  \"blanche</w>\": 34875,\n  \"blanchett</w>\": 49378,\n  \"blanco</w>\": 26801,\n  \"bland\": 44372,\n  \"bland</w>\": 30799,\n  \"blank</w>\": 15134,\n  \"blanket</w>\": 12878,\n  \"blankets</w>\": 24042,\n  \"blanks</w>\": 48599,\n  \"blasio</w>\": 35553,\n  \"blasphe\": 36622,\n  \"blast\": 46349,\n  \"blast</w>\": 5964,\n  \"blasted</w>\": 38976,\n  \"blaster</w>\": 36341,\n  \"blasting</w>\": 26178,\n  \"blasts</w>\": 23067,\n  \"blat\": 22048,\n  \"blatant</w>\": 41391,\n  \"blatt</w>\": 39138,\n  \"blau\": 45307,\n  \"blaz\": 43413,\n  \"blaze</w>\": 15497,\n  \"blazer</w>\": 17606,\n  \"blazers</w>\": 16984,\n  \"blazing</w>\": 25267,\n  \"bldg</w>\": 22981,\n  \"ble\": 1447,\n  \"ble</w>\": 1059,\n  \"bleach</w>\": 27034,\n  \"bleak</w>\": 40355,\n  \"bled</w>\": 12006,\n  \"bleed\": 23027,\n  \"bleed</w>\": 24791,\n  \"bleedblue</w>\": 39160,\n  \"bleeding</w>\": 20311,\n  \"bleeds</w>\": 47339,\n  \"blen\": 25651,\n  \"blend</w>\": 10780,\n  \"blended</w>\": 25813,\n  \"blender</w>\": 25066,\n  \"blending</w>\": 34307,\n  \"blends</w>\": 28572,\n  \"bler\": 31305,\n  \"bler</w>\": 11979,\n  \"blers</w>\": 26930,\n  \"bles</w>\": 5763,\n  \"bless\": 9640,\n  \"bless</w>\": 5387,\n  \"blessed</w>\": 4411,\n  \"blessing</w>\": 10729,\n  \"blessings</w>\": 11185,\n  \"bleu</w>\": 30114,\n  \"blew</w>\": 18176,\n  \"bley</w>\": 43176,\n  \"bli\": 1450,\n  \"bli</w>\": 28051,\n  \"blin\": 9678,\n  \"blin</w>\": 5406,\n  \"blind\": 17248,\n  \"blind</w>\": 8351,\n  \"blinded</w>\": 49149,\n  \"blindness</w>\": 38812,\n  \"blinds</w>\": 32449,\n  \"bling\": 39764,\n  \"bling</w>\": 7097,\n  \"blink</w>\": 18976,\n  \"bliss\": 28531,\n  \"bliss</w>\": 12893,\n  \"blissful</w>\": 42145,\n  \"blit\": 39327,\n  \"blitz\": 42151,\n  \"blitz</w>\": 17548,\n  \"blizz\": 13075,\n  \"blizzard</w>\": 16111,\n  \"blk\": 42950,\n  \"blk</w>\": 22872,\n  \"blm</w>\": 30957,\n  \"bln</w>\": 47348,\n  \"blo\": 1204,\n  \"blo</w>\": 25505,\n  \"blob</w>\": 49312,\n  \"bloc</w>\": 30961,\n  \"block\": 4638,\n  \"block</w>\": 4593,\n  \"blockade</w>\": 33489,\n  \"blockbuster</w>\": 19939,\n  \"blockchain</w>\": 6653,\n  \"blocked</w>\": 9106,\n  \"blocker</w>\": 44767,\n  \"blocking</w>\": 12652,\n  \"blocks</w>\": 10113,\n  \"blog\": 16376,\n  \"blog</w>\": 2589,\n  \"blogg\": 33282,\n  \"blogged</w>\": 41380,\n  \"blogger\": 21352,\n  \"blogger</w>\": 7806,\n  \"bloggerrt</w>\": 48898,\n  \"bloggers</w>\": 11627,\n  \"blogging</w>\": 18090,\n  \"blogpost</w>\": 41842,\n  \"blogs</w>\": 16682,\n  \"bloke</w>\": 24384,\n  \"blom\": 48996,\n  \"blon\": 7958,\n  \"blond</w>\": 32426,\n  \"blonde</w>\": 10711,\n  \"blondes</w>\": 45130,\n  \"blondie</w>\": 39236,\n  \"bloo\": 2373,\n  \"blood\": 9231,\n  \"blood</w>\": 3590,\n  \"blooded</w>\": 41946,\n  \"bloodh\": 48480,\n  \"bloods</w>\": 39539,\n  \"bloody\": 38568,\n  \"bloody</w>\": 9468,\n  \"bloom\": 7311,\n  \"bloom</w>\": 10257,\n  \"bloomberg\": 43109,\n  \"bloomberg</w>\": 21238,\n  \"bloomfield</w>\": 40342,\n  \"blooming\": 45175,\n  \"blooming</w>\": 19266,\n  \"bloomington</w>\": 34731,\n  \"blooms</w>\": 21439,\n  \"bloss\": 10017,\n  \"blossom</w>\": 14472,\n  \"blossoms</w>\": 21916,\n  \"blot</w>\": 41710,\n  \"blou\": 44506,\n  \"blouse</w>\": 23525,\n  \"blow\": 15230,\n  \"blow</w>\": 10211,\n  \"blower</w>\": 25832,\n  \"blowing</w>\": 12087,\n  \"blown</w>\": 11848,\n  \"blowout</w>\": 34857,\n  \"blows</w>\": 21063,\n  \"blr</w>\": 47250,\n  \"bls</w>\": 39458,\n  \"blu\": 1263,\n  \"blu</w>\": 10273,\n  \"blue\": 3829,\n  \"blue</w>\": 1746,\n  \"bluebells</w>\": 47150,\n  \"blueberries</w>\": 29551,\n  \"blueberry</w>\": 18251,\n  \"bluebird</w>\": 40747,\n  \"bluec\": 43194,\n  \"bluef\": 41174,\n  \"bluegrass</w>\": 26241,\n  \"bluejays</w>\": 18684,\n  \"blueprint</w>\": 30594,\n  \"blues\": 17566,\n  \"blues</w>\": 5159,\n  \"blueslyrix</w>\": 47068,\n  \"bluet\": 13469,\n  \"bluetooth</w>\": 14052,\n  \"bluewave</w>\": 40025,\n  \"bluff</w>\": 27232,\n  \"bluffs</w>\": 48844,\n  \"blum</w>\": 34818,\n  \"blumen\": 38714,\n  \"blun\": 34472,\n  \"blunt</w>\": 19305,\n  \"blur\": 12102,\n  \"blur</w>\": 27976,\n  \"bluray</w>\": 36818,\n  \"blurred</w>\": 38013,\n  \"blurry</w>\": 21977,\n  \"blush</w>\": 22889,\n  \"blvd</w>\": 12578,\n  \"bly\": 20930,\n  \"bly</w>\": 4426,\n  \"bm\": 4773,\n  \"bm</w>\": 15916,\n  \"bma</w>\": 42573,\n  \"bmc</w>\": 27807,\n  \"bmi</w>\": 40642,\n  \"bmo</w>\": 39083,\n  \"bms</w>\": 34074,\n  \"bmw\": 26637,\n  \"bmw</w>\": 7869,\n  \"bmx</w>\": 22535,\n  \"bn\": 10496,\n  \"bn</w>\": 7992,\n  \"bnb</w>\": 20010,\n  \"bnha</w>\": 49336,\n  \"bnp</w>\": 47910,\n  \"bnw</w>\": 35903,\n  \"bo\": 647,\n  \"bo</w>\": 2525,\n  \"boa</w>\": 14732,\n  \"boar\": 7837,\n  \"boar</w>\": 35473,\n  \"board\": 10419,\n  \"board</w>\": 1972,\n  \"boarded</w>\": 43052,\n  \"boarder</w>\": 37414,\n  \"boardgame</w>\": 47829,\n  \"boardgames</w>\": 32646,\n  \"boarding</w>\": 10086,\n  \"boardroom</w>\": 47937,\n  \"boards</w>\": 7963,\n  \"boardwalk</w>\": 29043,\n  \"boast</w>\": 44467,\n  \"boasts</w>\": 30309,\n  \"boat\": 12426,\n  \"boat</w>\": 4440,\n  \"boath\": 45461,\n  \"boating</w>\": 21951,\n  \"boats</w>\": 10080,\n  \"boatsales</w>\": 46244,\n  \"bob\": 8444,\n  \"bob</w>\": 4423,\n  \"boba</w>\": 39948,\n  \"bobb\": 16891,\n  \"bobble</w>\": 38796,\n  \"bobblehead</w>\": 33451,\n  \"bobby\": 17847,\n  \"bobby</w>\": 7816,\n  \"bobc\": 26153,\n  \"bobcat</w>\": 37896,\n  \"bobcats</w>\": 27568,\n  \"bobo</w>\": 38939,\n  \"bobs</w>\": 45533,\n  \"boc\": 27307,\n  \"boc</w>\": 39042,\n  \"boca</w>\": 26094,\n  \"bock</w>\": 24961,\n  \"bod\": 17904,\n  \"bod</w>\": 26340,\n  \"boda</w>\": 42030,\n  \"bode\": 28452,\n  \"bode</w>\": 40429,\n  \"bodega</w>\": 47350,\n  \"bodied</w>\": 36892,\n  \"bodies</w>\": 9799,\n  \"bodily</w>\": 49119,\n  \"body\": 7132,\n  \"body</w>\": 1774,\n  \"bodybuilding</w>\": 24538,\n  \"bodyguard</w>\": 35565,\n  \"boe\": 23476,\n  \"boe</w>\": 21773,\n  \"boeh\": 38002,\n  \"boehner</w>\": 44599,\n  \"boeing\": 48135,\n  \"boeing</w>\": 11857,\n  \"boer\": 44889,\n  \"boer</w>\": 40768,\n  \"bog\": 23426,\n  \"bog</w>\": 28318,\n  \"bogo</w>\": 35769,\n  \"bogota</w>\": 47059,\n  \"bogus</w>\": 42907,\n  \"boh\": 43238,\n  \"bohe\": 40541,\n  \"bohemi\": 21552,\n  \"bohemian</w>\": 25753,\n  \"boho</w>\": 25444,\n  \"boi\": 37129,\n  \"boi</w>\": 12673,\n  \"boil</w>\": 31332,\n  \"boiled</w>\": 23886,\n  \"boiler\": 28212,\n  \"boiler</w>\": 25615,\n  \"boiling</w>\": 32019,\n  \"bois\": 47742,\n  \"bois</w>\": 21640,\n  \"boise</w>\": 23304,\n  \"bok\": 26671,\n  \"bok</w>\": 15289,\n  \"boko</w>\": 30929,\n  \"boks</w>\": 40216,\n  \"bol\": 2860,\n  \"bol</w>\": 8413,\n  \"bola</w>\": 12840,\n  \"bold\": 26975,\n  \"bold</w>\": 8911,\n  \"boldand\": 48413,\n  \"boldly</w>\": 44778,\n  \"boli\": 12722,\n  \"bolic</w>\": 27343,\n  \"bolivia</w>\": 28628,\n  \"bollah</w>\": 36336,\n  \"bolly\": 25302,\n  \"bollywood\": 32448,\n  \"bollywood</w>\": 9604,\n  \"bolo</w>\": 40236,\n  \"bolog\": 22818,\n  \"bologna</w>\": 27513,\n  \"bolster</w>\": 47304,\n  \"bolt</w>\": 13131,\n  \"bolton\": 48757,\n  \"bolton</w>\": 16598,\n  \"bolts</w>\": 26028,\n  \"bom\": 3012,\n  \"bom</w>\": 19469,\n  \"bomb\": 18091,\n  \"bomb</w>\": 6331,\n  \"bombar\": 25544,\n  \"bombardier</w>\": 42700,\n  \"bombay\": 48602,\n  \"bombay</w>\": 23890,\n  \"bombed</w>\": 24542,\n  \"bomber</w>\": 15436,\n  \"bombers</w>\": 21786,\n  \"bombing</w>\": 14475,\n  \"bombings</w>\": 43236,\n  \"bombs</w>\": 14410,\n  \"bombshell</w>\": 36340,\n  \"bon\": 1871,\n  \"bon</w>\": 4216,\n  \"bona</w>\": 33342,\n  \"bonanza</w>\": 40304,\n  \"bond\": 37022,\n  \"bond</w>\": 6826,\n  \"bonded</w>\": 37390,\n  \"bondi</w>\": 40092,\n  \"bonding</w>\": 19609,\n  \"bonds</w>\": 15786,\n  \"bone\": 22502,\n  \"bone</w>\": 6195,\n  \"bones</w>\": 9476,\n  \"bonfire</w>\": 23151,\n  \"bongo</w>\": 47519,\n  \"boni\": 32269,\n  \"boni</w>\": 46356,\n  \"bonita</w>\": 42896,\n  \"bonjour</w>\": 33176,\n  \"bonkers</w>\": 39865,\n  \"bonn</w>\": 38969,\n  \"bonnar\": 47191,\n  \"bonnaroo</w>\": 48777,\n  \"bonne</w>\": 25844,\n  \"bonnet</w>\": 30636,\n  \"bonnie</w>\": 18555,\n  \"bono</w>\": 24476,\n  \"bons</w>\": 42883,\n  \"bonsai</w>\": 44129,\n  \"bonus</w>\": 8164,\n  \"bonuses</w>\": 35144,\n  \"boo\": 824,\n  \"boo</w>\": 7317,\n  \"boogie</w>\": 22639,\n  \"book\": 2828,\n  \"book</w>\": 1116,\n  \"bookboost</w>\": 31257,\n  \"bookclub</w>\": 34438,\n  \"bookday</w>\": 26327,\n  \"booked</w>\": 12584,\n  \"booker</w>\": 21302,\n  \"bookfest</w>\": 39381,\n  \"booking</w>\": 10145,\n  \"bookings</w>\": 18345,\n  \"booklet</w>\": 27405,\n  \"bookmark</w>\": 33596,\n  \"bookof\": 45629,\n  \"bookreview</w>\": 27362,\n  \"books\": 44382,\n  \"books</w>\": 2161,\n  \"bookshelf</w>\": 34821,\n  \"bookshop</w>\": 24705,\n  \"bookstore</w>\": 17999,\n  \"bookstores</w>\": 46416,\n  \"bookworm</w>\": 20743,\n  \"boom\": 9609,\n  \"boom</w>\": 7121,\n  \"boomer\": 33819,\n  \"boomer</w>\": 31766,\n  \"boomers</w>\": 37988,\n  \"booming</w>\": 33487,\n  \"boon\": 24979,\n  \"boon</w>\": 35821,\n  \"boone</w>\": 23453,\n  \"boop</w>\": 45047,\n  \"boost\": 44639,\n  \"boost</w>\": 6260,\n  \"boosted</w>\": 37631,\n  \"booster</w>\": 20877,\n  \"boosters</w>\": 46859,\n  \"boosting</w>\": 28480,\n  \"boosts</w>\": 29247,\n  \"boot\": 10843,\n  \"boot</w>\": 8087,\n  \"bootcamp</w>\": 22051,\n  \"booted</w>\": 42564,\n  \"booth\": 47895,\n  \"booth</w>\": 3971,\n  \"booths</w>\": 32653,\n  \"booties</w>\": 46188,\n  \"bootleg</w>\": 38139,\n  \"boots</w>\": 7319,\n  \"booze</w>\": 24341,\n  \"bop</w>\": 19720,\n  \"bor\": 1141,\n  \"bor</w>\": 15093,\n  \"bora</w>\": 24736,\n  \"bord</w>\": 36891,\n  \"bordeaux</w>\": 22009,\n  \"border\": 16304,\n  \"border</w>\": 6177,\n  \"borderlands</w>\": 38676,\n  \"borders</w>\": 13900,\n  \"bore\": 14084,\n  \"bore</w>\": 24638,\n  \"bored</w>\": 8933,\n  \"boredom</w>\": 31460,\n  \"boretum</w>\": 38902,\n  \"borg</w>\": 14770,\n  \"borgh\": 17180,\n  \"boring</w>\": 12519,\n  \"boris\": 31212,\n  \"boris</w>\": 15704,\n  \"borisjohnson</w>\": 44481,\n  \"born\": 17695,\n  \"born</w>\": 2683,\n  \"borne\": 42910,\n  \"borne</w>\": 9328,\n  \"borneo</w>\": 33332,\n  \"bornon\": 41811,\n  \"bornonthisday</w>\": 42757,\n  \"boro\": 26796,\n  \"boro</w>\": 7974,\n  \"borough\": 22761,\n  \"borough</w>\": 6203,\n  \"borrow</w>\": 22293,\n  \"borrowed</w>\": 28224,\n  \"borrowing</w>\": 41045,\n  \"borussia</w>\": 36764,\n  \"bos\": 14885,\n  \"bos</w>\": 9644,\n  \"bosa</w>\": 46946,\n  \"bosch\": 42009,\n  \"bosch</w>\": 19466,\n  \"bosco</w>\": 36960,\n  \"bose</w>\": 23142,\n  \"bosh</w>\": 42244,\n  \"bosni\": 42924,\n  \"bosnia</w>\": 31396,\n  \"boss\": 17935,\n  \"boss</w>\": 4206,\n  \"bosses</w>\": 23906,\n  \"boston\": 11540,\n  \"boston</w>\": 4399,\n  \"bostonmarathon</w>\": 44533,\n  \"bot\": 4136,\n  \"bot</w>\": 6947,\n  \"botan\": 12554,\n  \"botanic</w>\": 32560,\n  \"botanical</w>\": 21026,\n  \"botany</w>\": 22612,\n  \"botd</w>\": 34451,\n  \"both\": 36575,\n  \"both</w>\": 2212,\n  \"bother</w>\": 21125,\n  \"bothered</w>\": 27997,\n  \"botox</w>\": 43449,\n  \"bots</w>\": 13721,\n  \"botswana</w>\": 27584,\n  \"bott\": 3520,\n  \"bott</w>\": 37225,\n  \"bottle\": 37306,\n  \"bottle</w>\": 5392,\n  \"bottled</w>\": 29331,\n  \"bottlen\": 46439,\n  \"bottles</w>\": 9754,\n  \"bottling</w>\": 42006,\n  \"bottom\": 32314,\n  \"bottom</w>\": 5931,\n  \"bottoms</w>\": 31524,\n  \"bou\": 3728,\n  \"bou</w>\": 23165,\n  \"bouchard</w>\": 47930,\n  \"boudo\": 48827,\n  \"bought</w>\": 4142,\n  \"boul\": 24830,\n  \"boulder</w>\": 18260,\n  \"boule\": 17652,\n  \"boulevard</w>\": 19504,\n  \"boun\": 5993,\n  \"bounce</w>\": 14316,\n  \"bouncing</w>\": 32060,\n  \"bouncy</w>\": 43415,\n  \"bound\": 15140,\n  \"bound</w>\": 4567,\n  \"boundaries</w>\": 18690,\n  \"boundary</w>\": 21344,\n  \"bounds</w>\": 37469,\n  \"bounty</w>\": 21142,\n  \"bouquet</w>\": 20961,\n  \"bour\": 2934,\n  \"bour</w>\": 35486,\n  \"bourbon\": 48118,\n  \"bourbon</w>\": 14652,\n  \"bourdain</w>\": 48095,\n  \"bourg</w>\": 20690,\n  \"bourgeo\": 45672,\n  \"bourn</w>\": 39143,\n  \"bourne\": 13789,\n  \"bourne</w>\": 5192,\n  \"bournemouth</w>\": 20911,\n  \"bout\": 19982,\n  \"bout</w>\": 8123,\n  \"bouti\": 10926,\n  \"boutique</w>\": 12179,\n  \"bow\": 2297,\n  \"bow</w>\": 4040,\n  \"bowden</w>\": 48538,\n  \"bowed</w>\": 49130,\n  \"bowel</w>\": 36880,\n  \"bowen</w>\": 25368,\n  \"bower</w>\": 40414,\n  \"bowers</w>\": 42238,\n  \"bowie</w>\": 13036,\n  \"bowing</w>\": 46398,\n  \"bowl\": 26719,\n  \"bowl</w>\": 3814,\n  \"bowled</w>\": 39987,\n  \"bowler</w>\": 25528,\n  \"bowlers</w>\": 42632,\n  \"bowles</w>\": 41611,\n  \"bowling</w>\": 10390,\n  \"bowls</w>\": 17787,\n  \"bowman</w>\": 22052,\n  \"bows</w>\": 17000,\n  \"bowser</w>\": 38234,\n  \"bowski</w>\": 48311,\n  \"box\": 2774,\n  \"box</w>\": 2063,\n  \"boxed</w>\": 24190,\n  \"boxer\": 40394,\n  \"boxer</w>\": 15363,\n  \"boxers</w>\": 31019,\n  \"boxes</w>\": 8350,\n  \"boxing\": 33669,\n  \"boxing</w>\": 5554,\n  \"boy\": 2927,\n  \"boy</w>\": 1876,\n  \"boyband</w>\": 31568,\n  \"boyce</w>\": 44480,\n  \"boycot\": 46208,\n  \"boycott\": 31615,\n  \"boycott</w>\": 19559,\n  \"boyd</w>\": 18295,\n  \"boyfriend</w>\": 7328,\n  \"boyfriends</w>\": 36541,\n  \"boyle</w>\": 22802,\n  \"boys\": 25223,\n  \"boys</w>\": 2034,\n  \"boyz</w>\": 16152,\n  \"bp\": 23410,\n  \"bp</w>\": 11558,\n  \"bpa</w>\": 43855,\n  \"bpd</w>\": 48587,\n  \"bpl</w>\": 28901,\n  \"bpm</w>\": 40338,\n  \"bps</w>\": 37794,\n  \"br\": 711,\n  \"br</w>\": 7532,\n  \"bra\": 1195,\n  \"bra</w>\": 5860,\n  \"brac\": 6663,\n  \"brace\": 8376,\n  \"brace</w>\": 9183,\n  \"bracelet</w>\": 8969,\n  \"bracelets</w>\": 20027,\n  \"braces</w>\": 19249,\n  \"brack\": 25676,\n  \"bracket</w>\": 14780,\n  \"brackets</w>\": 36183,\n  \"brad\": 4848,\n  \"brad</w>\": 9405,\n  \"bradbury</w>\": 45097,\n  \"braden</w>\": 46842,\n  \"bradford</w>\": 15062,\n  \"bradley\": 31905,\n  \"bradley</w>\": 10952,\n  \"brador</w>\": 24062,\n  \"bradshaw</w>\": 37556,\n  \"brady\": 42494,\n  \"brady</w>\": 11117,\n  \"brae\": 42874,\n  \"brae</w>\": 40040,\n  \"brag</w>\": 30110,\n  \"bragg</w>\": 38545,\n  \"bragging</w>\": 38199,\n  \"brah\": 20276,\n  \"brahms</w>\": 45114,\n  \"brai\": 25048,\n  \"braid</w>\": 31067,\n  \"braided</w>\": 39997,\n  \"braids</w>\": 34221,\n  \"brain\": 9454,\n  \"brain</w>\": 4812,\n  \"brains</w>\": 17129,\n  \"brainstorming</w>\": 36607,\n  \"braised</w>\": 28363,\n  \"brake</w>\": 14937,\n  \"brakes</w>\": 23456,\n  \"bral</w>\": 31309,\n  \"bram\": 14815,\n  \"bram</w>\": 39456,\n  \"brampton</w>\": 35124,\n  \"bran\": 3684,\n  \"bran</w>\": 28348,\n  \"brance\": 36072,\n  \"brance</w>\": 15413,\n  \"branch</w>\": 7998,\n  \"branches</w>\": 15843,\n  \"brand\": 3910,\n  \"brand</w>\": 2896,\n  \"branded</w>\": 18097,\n  \"brandi</w>\": 41003,\n  \"branding</w>\": 10841,\n  \"brando</w>\": 41892,\n  \"brandon\": 20423,\n  \"brandon</w>\": 9166,\n  \"brands</w>\": 8681,\n  \"brandt</w>\": 22552,\n  \"brandy</w>\": 26232,\n  \"brane</w>\": 32340,\n  \"branson</w>\": 28280,\n  \"brant\": 28951,\n  \"brant</w>\": 47592,\n  \"braries</w>\": 46377,\n  \"brary</w>\": 24520,\n  \"bras</w>\": 22611,\n  \"brasil</w>\": 18991,\n  \"brass\": 24348,\n  \"brass</w>\": 11655,\n  \"brat\": 26717,\n  \"brat</w>\": 26631,\n  \"brate</w>\": 41864,\n  \"braun\": 39129,\n  \"braun</w>\": 29309,\n  \"brave\": 25461,\n  \"brave</w>\": 7769,\n  \"braved</w>\": 47663,\n  \"bravely</w>\": 42303,\n  \"bravery</w>\": 25831,\n  \"braves</w>\": 14422,\n  \"braving</w>\": 43258,\n  \"bravo\": 38613,\n  \"bravo</w>\": 13006,\n  \"braw\": 37871,\n  \"brawl</w>\": 26066,\n  \"braxton</w>\": 37451,\n  \"bray\": 26256,\n  \"bray</w>\": 22993,\n  \"braz\": 4625,\n  \"brazil\": 47459,\n  \"brazil</w>\": 6305,\n  \"brazili\": 45697,\n  \"brazilian</w>\": 12111,\n  \"brb</w>\": 25316,\n  \"brc</w>\": 40393,\n  \"bre\": 887,\n  \"bre</w>\": 7782,\n  \"brea\": 7318,\n  \"brea</w>\": 46538,\n  \"breach</w>\": 21363,\n  \"breaches</w>\": 45173,\n  \"bread\": 18886,\n  \"bread</w>\": 5066,\n  \"breads</w>\": 43064,\n  \"break\": 2206,\n  \"break</w>\": 2568,\n  \"breakable</w>\": 30691,\n  \"breakaway</w>\": 42732,\n  \"breakdown</w>\": 14519,\n  \"breaker</w>\": 14814,\n  \"breakers</w>\": 22270,\n  \"breakfa\": 45931,\n  \"breakfast\": 30210,\n  \"breakfast</w>\": 3290,\n  \"breaking\": 14698,\n  \"breaking</w>\": 2755,\n  \"breakingbad</w>\": 38032,\n  \"breakingnews</w>\": 23837,\n  \"breakout</w>\": 16752,\n  \"breaks</w>\": 7263,\n  \"breakthrough</w>\": 18802,\n  \"breakup</w>\": 38931,\n  \"breast\": 12930,\n  \"breast</w>\": 9475,\n  \"breastcancer\": 40813,\n  \"breastcancer</w>\": 30065,\n  \"breastfeeding</w>\": 29033,\n  \"breasts</w>\": 37637,\n  \"breath\": 9508,\n  \"breath</w>\": 9576,\n  \"breathe</w>\": 11364,\n  \"breathing</w>\": 14959,\n  \"breathtaking</w>\": 14709,\n  \"brecht</w>\": 34622,\n  \"breck\": 44598,\n  \"bred\": 46929,\n  \"bred</w>\": 16008,\n  \"bree\": 7892,\n  \"bree</w>\": 37138,\n  \"breed\": 28030,\n  \"breed</w>\": 13791,\n  \"breeders</w>\": 37472,\n  \"breeding</w>\": 16544,\n  \"breeds</w>\": 29021,\n  \"breen</w>\": 48013,\n  \"brees</w>\": 46721,\n  \"breeze</w>\": 13125,\n  \"breezy</w>\": 21451,\n  \"breit\": 23864,\n  \"breitbart</w>\": 37926,\n  \"brek\": 35494,\n  \"bremen</w>\": 39861,\n  \"bren\": 5209,\n  \"brenda</w>\": 23786,\n  \"brendan\": 35134,\n  \"brendan</w>\": 15414,\n  \"brendon</w>\": 36756,\n  \"brennan</w>\": 22372,\n  \"brenner</w>\": 42941,\n  \"brent\": 31439,\n  \"brent</w>\": 16355,\n  \"brentwood</w>\": 33108,\n  \"brero</w>\": 47781,\n  \"bres</w>\": 32561,\n  \"bret\": 38020,\n  \"bret</w>\": 32548,\n  \"brethren</w>\": 43134,\n  \"breton</w>\": 32290,\n  \"brett\": 22591,\n  \"brett</w>\": 12394,\n  \"brev</w>\": 42882,\n  \"brevi\": 39475,\n  \"brew\": 5048,\n  \"brew</w>\": 7253,\n  \"brewco</w>\": 33582,\n  \"brewed</w>\": 23238,\n  \"brewer</w>\": 20756,\n  \"breweries</w>\": 35277,\n  \"brewers</w>\": 17618,\n  \"brewery</w>\": 8850,\n  \"brewing</w>\": 8275,\n  \"brewingco</w>\": 45155,\n  \"brews</w>\": 21663,\n  \"brewster</w>\": 40274,\n  \"brex\": 22726,\n  \"brexit\": 27666,\n  \"brexit</w>\": 5801,\n  \"brgy</w>\": 35983,\n  \"bri\": 1036,\n  \"bri</w>\": 18636,\n  \"bria</w>\": 35890,\n  \"brian\": 9824,\n  \"brian</w>\": 4989,\n  \"brianna</w>\": 32308,\n  \"briar</w>\": 46119,\n  \"bribe</w>\": 40042,\n  \"bribery</w>\": 41792,\n  \"bric\": 27055,\n  \"brice</w>\": 40190,\n  \"brick\": 13937,\n  \"brick</w>\": 9518,\n  \"bricks</w>\": 21029,\n  \"brics</w>\": 48196,\n  \"brid\": 16995,\n  \"bridal\": 36875,\n  \"bridal</w>\": 14284,\n  \"bride\": 18342,\n  \"bride</w>\": 8964,\n  \"brides</w>\": 18067,\n  \"bridesma\": 28356,\n  \"bridesmaid</w>\": 43399,\n  \"bridesmaids</w>\": 47754,\n  \"bridg\": 20623,\n  \"bridge\": 8647,\n  \"bridge</w>\": 2465,\n  \"bridgeport</w>\": 45201,\n  \"bridges</w>\": 11811,\n  \"bridget</w>\": 27073,\n  \"bridgewater</w>\": 38732,\n  \"bridging</w>\": 38109,\n  \"brie</w>\": 26622,\n  \"brief\": 9435,\n  \"brief</w>\": 8954,\n  \"briefed</w>\": 47326,\n  \"briefing</w>\": 12991,\n  \"briefly</w>\": 26980,\n  \"briefs</w>\": 29557,\n  \"brien</w>\": 13504,\n  \"brier</w>\": 43995,\n  \"brig\": 11081,\n  \"briga\": 46448,\n  \"brigade</w>\": 16032,\n  \"briggs</w>\": 28108,\n  \"brigh\": 6710,\n  \"bright\": 10383,\n  \"bright</w>\": 4852,\n  \"brighten</w>\": 18208,\n  \"brightening</w>\": 43929,\n  \"brighter</w>\": 18507,\n  \"brightest</w>\": 26159,\n  \"brightly</w>\": 36298,\n  \"brightness</w>\": 42280,\n  \"brighton\": 28416,\n  \"brighton</w>\": 9470,\n  \"brigitte</w>\": 44421,\n  \"brill\": 27342,\n  \"brill</w>\": 28601,\n  \"brilli\": 3821,\n  \"brilliance</w>\": 28146,\n  \"brilliant</w>\": 4106,\n  \"brilliantly</w>\": 26803,\n  \"brin\": 25620,\n  \"bring\": 11596,\n  \"bring</w>\": 2430,\n  \"bringback\": 28969,\n  \"bringbackour\": 45403,\n  \"bringing</w>\": 4777,\n  \"brings</w>\": 5138,\n  \"brink\": 39296,\n  \"brink</w>\": 28796,\n  \"brioche</w>\": 45818,\n  \"bris\": 9385,\n  \"bris</w>\": 15783,\n  \"brisban\": 30431,\n  \"brisbane\": 42932,\n  \"brisbane</w>\": 12407,\n  \"brisk</w>\": 43646,\n  \"brisket</w>\": 31920,\n  \"bristol\": 18159,\n  \"bristol</w>\": 8010,\n  \"brit\": 2318,\n  \"brit</w>\": 20066,\n  \"britain\": 40802,\n  \"britain</w>\": 6272,\n  \"britanni\": 31373,\n  \"britannia</w>\": 36188,\n  \"brite</w>\": 33827,\n  \"briti\": 8155,\n  \"british\": 8651,\n  \"british</w>\": 3504,\n  \"britishmuseum</w>\": 41858,\n  \"britney\": 37192,\n  \"britney</w>\": 21853,\n  \"britneyspears</w>\": 42990,\n  \"brits</w>\": 21832,\n  \"britt\": 10811,\n  \"britt</w>\": 25976,\n  \"brittany\": 38187,\n  \"brittany</w>\": 18818,\n  \"britton</w>\": 37422,\n  \"brium</w>\": 46079,\n  \"brixton</w>\": 30056,\n  \"bro\": 927,\n  \"bro</w>\": 4410,\n  \"broad\": 3491,\n  \"broad</w>\": 12623,\n  \"broadband</w>\": 21050,\n  \"broadcast</w>\": 8967,\n  \"broadcaster</w>\": 29005,\n  \"broadcasting</w>\": 14403,\n  \"broadcasts</w>\": 46742,\n  \"broader</w>\": 36029,\n  \"broadway\": 34599,\n  \"broadway</w>\": 9092,\n  \"broc\": 15587,\n  \"broccoli</w>\": 19094,\n  \"broch\": 21419,\n  \"brochure</w>\": 25275,\n  \"brock\": 14841,\n  \"brock</w>\": 16745,\n  \"brodie</w>\": 42150,\n  \"brody</w>\": 29608,\n  \"broke\": 42165,\n  \"broke</w>\": 6509,\n  \"broken\": 26126,\n  \"broken</w>\": 5107,\n  \"broker\": 34032,\n  \"broker</w>\": 20449,\n  \"brokerage</w>\": 41327,\n  \"brokers</w>\": 28271,\n  \"brom\": 18972,\n  \"brom</w>\": 33296,\n  \"bromance</w>\": 35353,\n  \"bromley</w>\": 35715,\n  \"bron\": 4011,\n  \"bron</w>\": 10243,\n  \"bronco\": 43488,\n  \"bronco</w>\": 34370,\n  \"broncos</w>\": 12516,\n  \"bronson</w>\": 37042,\n  \"bronte</w>\": 48936,\n  \"bronx\": 48310,\n  \"bronx</w>\": 17183,\n  \"brony</w>\": 21084,\n  \"bronze</w>\": 8459,\n  \"broo\": 5204,\n  \"brooch</w>\": 21207,\n  \"brook\": 4782,\n  \"brook</w>\": 7322,\n  \"brooke\": 28576,\n  \"brooke</w>\": 12549,\n  \"brookes</w>\": 39707,\n  \"brooklyn\": 23253,\n  \"brooklyn</w>\": 6983,\n  \"brooks\": 42779,\n  \"brooks</w>\": 9991,\n  \"broom\": 32046,\n  \"broom</w>\": 28008,\n  \"broome</w>\": 49335,\n  \"bros</w>\": 7776,\n  \"broth</w>\": 29994,\n  \"brotha</w>\": 33974,\n  \"brother\": 12697,\n  \"brother</w>\": 3157,\n  \"brotherhood</w>\": 19059,\n  \"brothers</w>\": 4548,\n  \"brou\": 27874,\n  \"brough</w>\": 21033,\n  \"brought</w>\": 4222,\n  \"brov\": 42881,\n  \"brow\": 6547,\n  \"brow</w>\": 15895,\n  \"broward</w>\": 34719,\n  \"brown\": 6315,\n  \"brown</w>\": 2866,\n  \"browne</w>\": 28440,\n  \"brownie</w>\": 23045,\n  \"brownies</w>\": 22312,\n  \"browning</w>\": 32241,\n  \"browns</w>\": 14051,\n  \"brows</w>\": 14998,\n  \"browse</w>\": 19060,\n  \"browser</w>\": 19768,\n  \"browsing</w>\": 29318,\n  \"brox</w>\": 43539,\n  \"brs</w>\": 47485,\n  \"brt</w>\": 46936,\n  \"bru\": 1698,\n  \"bru</w>\": 31028,\n  \"bruce\": 21223,\n  \"bruce</w>\": 7085,\n  \"bruh</w>\": 17575,\n  \"bruins</w>\": 14736,\n  \"bruise</w>\": 48048,\n  \"bruised</w>\": 46502,\n  \"brum\": 23862,\n  \"brum</w>\": 28078,\n  \"brun\": 6870,\n  \"brunch</w>\": 9113,\n  \"brune\": 29057,\n  \"brunei</w>\": 41898,\n  \"brunette</w>\": 35528,\n  \"bruno</w>\": 14568,\n  \"brunomars</w>\": 41156,\n  \"brunswick</w>\": 24012,\n  \"brush\": 27969,\n  \"brush</w>\": 8594,\n  \"brushed</w>\": 30298,\n  \"brushes</w>\": 21550,\n  \"brushing</w>\": 35072,\n  \"brussels</w>\": 11020,\n  \"brut</w>\": 39499,\n  \"brutal\": 42144,\n  \"brutal</w>\": 14556,\n  \"brutality</w>\": 31348,\n  \"brutally</w>\": 28132,\n  \"brute</w>\": 47552,\n  \"brux\": 49093,\n  \"bry\": 6587,\n  \"bry</w>\": 28228,\n  \"bryan\": 16134,\n  \"bryan</w>\": 10412,\n  \"bryant</w>\": 12256,\n  \"bryce</w>\": 19895,\n  \"bryn\": 36569,\n  \"bryn</w>\": 42877,\n  \"bryson</w>\": 38990,\n  \"bs\": 11783,\n  \"bs</w>\": 1329,\n  \"bsa</w>\": 46619,\n  \"bsb</w>\": 23070,\n  \"bsbi\": 41728,\n  \"bsbibotany</w>\": 42086,\n  \"bsc</w>\": 32031,\n  \"bsd</w>\": 41848,\n  \"bse</w>\": 46341,\n  \"bsf</w>\": 48314,\n  \"bsgo</w>\": 48474,\n  \"bsp</w>\": 47977,\n  \"bst</w>\": 19698,\n  \"bsu</w>\": 46385,\n  \"bt\": 3317,\n  \"bt</w>\": 4205,\n  \"btc</w>\": 10315,\n  \"btcc</w>\": 30759,\n  \"btn</w>\": 44681,\n  \"bto</w>\": 35516,\n  \"btob</w>\": 29379,\n  \"btr</w>\": 39767,\n  \"bts\": 15154,\n  \"bts</w>\": 4007,\n  \"btsarmy</w>\": 30302,\n  \"btsbbmas</w>\": 35297,\n  \"btsx\": 44971,\n  \"btv</w>\": 38541,\n  \"btw</w>\": 9520,\n  \"btwn</w>\": 28284,\n  \"bu\": 609,\n  \"bu</w>\": 5831,\n  \"bub\": 27704,\n  \"bub</w>\": 33158,\n  \"bubb\": 9739,\n  \"bubba</w>\": 28149,\n  \"bubble\": 28687,\n  \"bubble</w>\": 10799,\n  \"bubblegum</w>\": 48078,\n  \"bubbles</w>\": 17648,\n  \"bubbly</w>\": 31034,\n  \"buc\": 8207,\n  \"buccane\": 32830,\n  \"buccaneers</w>\": 38058,\n  \"buch\": 22623,\n  \"bucha</w>\": 43582,\n  \"buchan\": 27237,\n  \"buchanan</w>\": 28975,\n  \"bucharest</w>\": 37013,\n  \"buck\": 6061,\n  \"buck</w>\": 11433,\n  \"bucket\": 22596,\n  \"bucket</w>\": 10498,\n  \"bucketlist</w>\": 30778,\n  \"buckets</w>\": 27168,\n  \"buckeye</w>\": 34549,\n  \"buckeyes</w>\": 30741,\n  \"buckingham</w>\": 28736,\n  \"buckle</w>\": 21948,\n  \"buckley</w>\": 25905,\n  \"bucks</w>\": 6103,\n  \"bucky</w>\": 35916,\n  \"bucs</w>\": 20011,\n  \"bud\": 2942,\n  \"bud</w>\": 10737,\n  \"buda\": 18520,\n  \"buda</w>\": 49012,\n  \"budapest</w>\": 19202,\n  \"budd\": 7296,\n  \"buddha</w>\": 13981,\n  \"buddhism</w>\": 23744,\n  \"buddhist</w>\": 18697,\n  \"buddies</w>\": 14543,\n  \"budding</w>\": 31992,\n  \"buddy\": 40948,\n  \"buddy</w>\": 6557,\n  \"budge\": 32005,\n  \"budget\": 46758,\n  \"budget</w>\": 5639,\n  \"budgeting</w>\": 43789,\n  \"budgets</w>\": 36419,\n  \"buds</w>\": 14665,\n  \"budweiser</w>\": 40900,\n  \"buen\": 15640,\n  \"buena</w>\": 30876,\n  \"buenas</w>\": 48529,\n  \"bueno</w>\": 46202,\n  \"buenos</w>\": 26055,\n  \"buf\": 44417,\n  \"buff\": 5456,\n  \"buff</w>\": 21416,\n  \"buffal\": 25836,\n  \"buffalo\": 31231,\n  \"buffalo</w>\": 8054,\n  \"buffalob\": 38831,\n  \"buffalobills</w>\": 44352,\n  \"buffe\": 13724,\n  \"buffer</w>\": 33050,\n  \"buffet</w>\": 17829,\n  \"buffett</w>\": 34081,\n  \"buffs</w>\": 28906,\n  \"buffy</w>\": 33356,\n  \"bug\": 14453,\n  \"bug</w>\": 8162,\n  \"bugatti</w>\": 35451,\n  \"buggy</w>\": 28963,\n  \"bugs</w>\": 13850,\n  \"buh</w>\": 31406,\n  \"buhari</w>\": 14661,\n  \"buick</w>\": 22000,\n  \"buil\": 1354,\n  \"build\": 22739,\n  \"build</w>\": 3289,\n  \"builder</w>\": 14474,\n  \"builders</w>\": 17694,\n  \"building\": 21206,\n  \"building</w>\": 2307,\n  \"buildings</w>\": 8866,\n  \"builds</w>\": 16449,\n  \"buildthe\": 41497,\n  \"built\": 45824,\n  \"built</w>\": 3874,\n  \"buk\": 28084,\n  \"buk</w>\": 24317,\n  \"buka</w>\": 47778,\n  \"bukit</w>\": 39888,\n  \"bul\": 2572,\n  \"bul</w>\": 10200,\n  \"bula</w>\": 18726,\n  \"bulaga</w>\": 41575,\n  \"bular</w>\": 32187,\n  \"bulb</w>\": 22373,\n  \"bulbs</w>\": 24808,\n  \"bulgar\": 15424,\n  \"bulgaria</w>\": 20295,\n  \"bulgarian</w>\": 38693,\n  \"bulge</w>\": 47603,\n  \"bulk</w>\": 19643,\n  \"bull\": 4537,\n  \"bull</w>\": 6029,\n  \"bulldo\": 37675,\n  \"bulldog\": 34828,\n  \"bulldog</w>\": 15611,\n  \"bulldogs</w>\": 13916,\n  \"bullet\": 14340,\n  \"bullet</w>\": 12465,\n  \"bulletin</w>\": 19638,\n  \"bulletproof</w>\": 43212,\n  \"bullets</w>\": 22117,\n  \"bullied</w>\": 34689,\n  \"bullies</w>\": 39050,\n  \"bullion</w>\": 49114,\n  \"bullish</w>\": 22142,\n  \"bullock</w>\": 33198,\n  \"bullpen</w>\": 38081,\n  \"bulls</w>\": 10313,\n  \"bully\": 43111,\n  \"bully</w>\": 20190,\n  \"bullying</w>\": 13548,\n  \"bum\": 27683,\n  \"bum</w>\": 14226,\n  \"bumble\": 25585,\n  \"bumble</w>\": 39303,\n  \"bumblebee</w>\": 36911,\n  \"bummed</w>\": 48456,\n  \"bump\": 9783,\n  \"bump</w>\": 15877,\n  \"bumped</w>\": 22495,\n  \"bumper</w>\": 17881,\n  \"bumping</w>\": 40196,\n  \"bumps</w>\": 21115,\n  \"bun\": 2591,\n  \"bun</w>\": 13665,\n  \"bunch</w>\": 7796,\n  \"bund</w>\": 41905,\n  \"bunde\": 18841,\n  \"bundesliga</w>\": 21582,\n  \"bundle</w>\": 11793,\n  \"bundled</w>\": 47228,\n  \"bundles</w>\": 29834,\n  \"bundy</w>\": 37332,\n  \"bung</w>\": 44748,\n  \"bungal\": 29549,\n  \"bungalow</w>\": 33696,\n  \"bunk</w>\": 41236,\n  \"bunker</w>\": 23615,\n  \"bunnies</w>\": 28998,\n  \"bunny\": 34198,\n  \"bunny</w>\": 9258,\n  \"buns</w>\": 22235,\n  \"bunting</w>\": 30695,\n  \"buon\": 31350,\n  \"buon</w>\": 48498,\n  \"bur\": 1039,\n  \"bur</w>\": 17362,\n  \"burbank</w>\": 34862,\n  \"burberry</w>\": 30412,\n  \"burch</w>\": 44588,\n  \"burden</w>\": 18687,\n  \"bure\": 11902,\n  \"bureau\": 32098,\n  \"bureau</w>\": 15400,\n  \"burg\": 19505,\n  \"burg</w>\": 3499,\n  \"burge\": 20522,\n  \"burger\": 22356,\n  \"burger</w>\": 6548,\n  \"burgers</w>\": 13007,\n  \"burgess</w>\": 26211,\n  \"burgh\": 18141,\n  \"burgh</w>\": 4965,\n  \"burgl\": 25554,\n  \"burglar</w>\": 43365,\n  \"burglary</w>\": 32573,\n  \"burgring</w>\": 40823,\n  \"burgundy</w>\": 23650,\n  \"buri\": 46348,\n  \"buri</w>\": 42614,\n  \"burial</w>\": 22012,\n  \"buried</w>\": 14233,\n  \"burk\": 48822,\n  \"burke</w>\": 15340,\n  \"burle\": 27891,\n  \"burlesque</w>\": 33732,\n  \"burlington</w>\": 23370,\n  \"burma</w>\": 30305,\n  \"burmese</w>\": 47906,\n  \"burn\": 7934,\n  \"burn</w>\": 4285,\n  \"burnaby</w>\": 47541,\n  \"burne</w>\": 27246,\n  \"burned</w>\": 15022,\n  \"burner</w>\": 23243,\n  \"burnett</w>\": 28558,\n  \"burnham</w>\": 36111,\n  \"burning\": 46107,\n  \"burning</w>\": 8405,\n  \"burnley</w>\": 24653,\n  \"burnout</w>\": 36078,\n  \"burns</w>\": 10234,\n  \"burnt</w>\": 15185,\n  \"burr</w>\": 30879,\n  \"burrell</w>\": 49045,\n  \"burrito</w>\": 23473,\n  \"burritos</w>\": 47245,\n  \"burroughs</w>\": 41337,\n  \"burrows</w>\": 44846,\n  \"burst</w>\": 13005,\n  \"bursting</w>\": 32566,\n  \"bursts</w>\": 37026,\n  \"burt</w>\": 27162,\n  \"burton\": 42354,\n  \"burton</w>\": 12704,\n  \"burundi</w>\": 33595,\n  \"bury\": 12276,\n  \"bury</w>\": 3899,\n  \"burys</w>\": 32362,\n  \"bus\": 1319,\n  \"bus</w>\": 2840,\n  \"busan</w>\": 40172,\n  \"busc\": 35000,\n  \"busch</w>\": 20475,\n  \"buses</w>\": 12879,\n  \"bush\": 11191,\n  \"bush</w>\": 6867,\n  \"bushes</w>\": 37578,\n  \"busiest</w>\": 32764,\n  \"busine\": 4598,\n  \"busines\": 25364,\n  \"business\": 8346,\n  \"business</w>\": 1716,\n  \"businesses</w>\": 7287,\n  \"businessman</w>\": 25635,\n  \"buss</w>\": 47764,\n  \"bust\": 31299,\n  \"bust</w>\": 9959,\n  \"busted</w>\": 18643,\n  \"buster\": 37219,\n  \"buster</w>\": 12094,\n  \"busters</w>\": 16362,\n  \"busting</w>\": 29622,\n  \"busy\": 39332,\n  \"busy</w>\": 4354,\n  \"but\": 2201,\n  \"but</w>\": 767,\n  \"butch</w>\": 35102,\n  \"butcher</w>\": 18732,\n  \"butchers</w>\": 42334,\n  \"bute</w>\": 39240,\n  \"butes</w>\": 14630,\n  \"butler\": 35867,\n  \"butler</w>\": 10702,\n  \"butt\": 12500,\n  \"butt</w>\": 31523,\n  \"butte</w>\": 31678,\n  \"butter\": 5427,\n  \"butter</w>\": 6952,\n  \"butterflies</w>\": 16232,\n  \"butterfly</w>\": 9738,\n  \"buttermilk</w>\": 40180,\n  \"butternut</w>\": 36867,\n  \"buttery</w>\": 45535,\n  \"button\": 45480,\n  \"button</w>\": 8007,\n  \"buttons</w>\": 16188,\n  \"butts</w>\": 25309,\n  \"buu\": 42313,\n  \"buuren</w>\": 47752,\n  \"buxton</w>\": 41370,\n  \"buy\": 11632,\n  \"buy</w>\": 2131,\n  \"buyer</w>\": 14682,\n  \"buyers</w>\": 14663,\n  \"buying</w>\": 6566,\n  \"buys</w>\": 15560,\n  \"buzz\": 7866,\n  \"buzz</w>\": 8706,\n  \"buzzard</w>\": 47434,\n  \"buzzer</w>\": 38064,\n  \"buzzfeed</w>\": 26613,\n  \"buzzing</w>\": 18511,\n  \"bv\": 18958,\n  \"bv</w>\": 35861,\n  \"bvb</w>\": 22454,\n  \"bw\": 17672,\n  \"bw</w>\": 15120,\n  \"bway</w>\": 26652,\n  \"bwfc</w>\": 40918,\n  \"bwo\": 45902,\n  \"bx</w>\": 33633,\n  \"by\": 1713,\n  \"by</w>\": 638,\n  \"bye\": 20076,\n  \"bye</w>\": 4460,\n  \"byes</w>\": 47958,\n  \"byl</w>\": 34994,\n  \"byn\": 46917,\n  \"byn</w>\": 11890,\n  \"byo\": 28039,\n  \"bypass</w>\": 26530,\n  \"byr\": 15534,\n  \"byrd</w>\": 30369,\n  \"byrne</w>\": 19676,\n  \"byron\": 43504,\n  \"byron</w>\": 19775,\n  \"bys</w>\": 26740,\n  \"bystand\": 46138,\n  \"byte</w>\": 42798,\n  \"bytes</w>\": 39538,\n  \"bythe\": 36621,\n  \"byu\": 41072,\n  \"byu</w>\": 23770,\n  \"byz\": 35406,\n  \"byzantine</w>\": 44081,\n  \"bz</w>\": 13631,\n  \"bÃ©\": 40365,\n  \"bÃ¼\": 38706,\n  \"c\": 66,\n  \"c</w>\": 322,\n  \"ca\": 772,\n  \"ca</w>\": 1684,\n  \"caa</w>\": 19316,\n  \"cab\": 3033,\n  \"cab</w>\": 11912,\n  \"cabaret</w>\": 26263,\n  \"cabbage</w>\": 18407,\n  \"cabe</w>\": 32731,\n  \"cabello</w>\": 34371,\n  \"caber\": 29062,\n  \"cabernet</w>\": 33730,\n  \"cabin</w>\": 14178,\n  \"cabine\": 23354,\n  \"cabinet</w>\": 9937,\n  \"cabinets</w>\": 33083,\n  \"cabins</w>\": 48455,\n  \"cable</w>\": 7925,\n  \"cables</w>\": 22408,\n  \"cabo\": 37318,\n  \"cabo</w>\": 28370,\n  \"cabrera</w>\": 42338,\n  \"cabs</w>\": 42048,\n  \"cac\": 8298,\n  \"cac</w>\": 23872,\n  \"cacao</w>\": 38022,\n  \"cache</w>\": 28993,\n  \"caching</w>\": 40655,\n  \"cactus</w>\": 19794,\n  \"cad\": 6297,\n  \"cad</w>\": 20166,\n  \"caday</w>\": 34187,\n  \"cadbury</w>\": 44698,\n  \"caddy</w>\": 41521,\n  \"cade\": 10497,\n  \"cade</w>\": 17306,\n  \"cadet</w>\": 22764,\n  \"cadets</w>\": 19160,\n  \"cadillac</w>\": 18156,\n  \"cae</w>\": 49264,\n  \"caer\": 28298,\n  \"caes\": 15740,\n  \"caesar</w>\": 21642,\n  \"caesars</w>\": 42162,\n  \"caf\": 3471,\n  \"caf</w>\": 20867,\n  \"cafc</w>\": 30748,\n  \"cafe\": 15201,\n  \"cafe</w>\": 4979,\n  \"cafes</w>\": 40166,\n  \"cafeteria</w>\": 32817,\n  \"caffe\": 18258,\n  \"caffe</w>\": 45416,\n  \"caffeine</w>\": 22487,\n  \"cafÃ©</w>\": 15304,\n  \"cag\": 15714,\n  \"cage</w>\": 11838,\n  \"cages</w>\": 37939,\n  \"cah</w>\": 40519,\n  \"cahill</w>\": 33185,\n  \"cai\": 38971,\n  \"cai</w>\": 36116,\n  \"cain</w>\": 13747,\n  \"caine</w>\": 16799,\n  \"cair\": 15804,\n  \"cair</w>\": 46659,\n  \"cairn\": 31264,\n  \"cairn</w>\": 42467,\n  \"cairngor\": 44067,\n  \"cairns</w>\": 32941,\n  \"cairo</w>\": 19615,\n  \"cait\": 14116,\n  \"caitlin\": 47768,\n  \"caitlin</w>\": 26809,\n  \"caitlyn</w>\": 35763,\n  \"cajun\": 43425,\n  \"cajun</w>\": 33044,\n  \"cak</w>\": 42986,\n  \"cake\": 15295,\n  \"cake</w>\": 2972,\n  \"cakeday</w>\": 46207,\n  \"cakes</w>\": 5950,\n  \"cal\": 1198,\n  \"cal</w>\": 6372,\n  \"cala</w>\": 32133,\n  \"calab\": 31795,\n  \"calais</w>\": 39886,\n  \"calam\": 28841,\n  \"calc</w>\": 45055,\n  \"calci\": 22824,\n  \"calcium</w>\": 27815,\n  \"calcu\": 15328,\n  \"calcul\": 15734,\n  \"calculate</w>\": 37656,\n  \"calculated</w>\": 40688,\n  \"calculations</w>\": 44605,\n  \"calculator</w>\": 26093,\n  \"calculus</w>\": 35104,\n  \"calcutta</w>\": 42901,\n  \"calder\": 29372,\n  \"calder</w>\": 36817,\n  \"caldwell</w>\": 30484,\n  \"cale</w>\": 32674,\n  \"caleb</w>\": 19619,\n  \"caled\": 28421,\n  \"calend\": 6057,\n  \"calendar</w>\": 7122,\n  \"calendars</w>\": 17229,\n  \"calf</w>\": 17508,\n  \"calgary\": 27415,\n  \"calgary</w>\": 10797,\n  \"calhoun</w>\": 38929,\n  \"cali\": 2857,\n  \"cali</w>\": 16337,\n  \"caliber</w>\": 32820,\n  \"calibr\": 32597,\n  \"calico</w>\": 45379,\n  \"calif</w>\": 30839,\n  \"califor\": 3526,\n  \"californi\": 21303,\n  \"california</w>\": 3729,\n  \"call\": 7950,\n  \"call</w>\": 1620,\n  \"calla\": 20658,\n  \"callahan</w>\": 43313,\n  \"callaway</w>\": 42596,\n  \"callback</w>\": 44764,\n  \"calle\": 47699,\n  \"calle</w>\": 38144,\n  \"called</w>\": 2726,\n  \"caller</w>\": 30666,\n  \"calli\": 16338,\n  \"callie</w>\": 36512,\n  \"calligraphy</w>\": 27775,\n  \"calling</w>\": 4597,\n  \"callister</w>\": 49026,\n  \"callme\": 42449,\n  \"callof\": 41280,\n  \"calls</w>\": 4572,\n  \"callum</w>\": 23224,\n  \"calm\": 34990,\n  \"calm</w>\": 7011,\n  \"calming</w>\": 30690,\n  \"calorie</w>\": 32679,\n  \"calories</w>\": 18029,\n  \"cals</w>\": 47714,\n  \"calum</w>\": 16405,\n  \"calvary</w>\": 40169,\n  \"calvert</w>\": 47134,\n  \"calves</w>\": 31857,\n  \"calvin\": 27642,\n  \"calvin</w>\": 17345,\n  \"caly\": 10244,\n  \"calyp\": 29851,\n  \"cam\": 1004,\n  \"cam</w>\": 5982,\n  \"camar\": 31991,\n  \"camber\": 44362,\n  \"cambo\": 14662,\n  \"cambodia</w>\": 17347,\n  \"cambridge\": 24651,\n  \"cambridge</w>\": 9334,\n  \"cambridgeshire</w>\": 46139,\n  \"camden\": 38735,\n  \"camden</w>\": 17984,\n  \"came</w>\": 1986,\n  \"camel\": 27005,\n  \"camel</w>\": 21914,\n  \"camels</w>\": 41357,\n  \"cameo</w>\": 19492,\n  \"camer\": 4961,\n  \"camera</w>\": 3934,\n  \"cameraman</w>\": 43347,\n  \"cameras</w>\": 12172,\n  \"camero\": 20320,\n  \"cameron\": 19634,\n  \"cameron</w>\": 8057,\n  \"camerondallas</w>\": 40587,\n  \"cameroon</w>\": 24061,\n  \"camil\": 37745,\n  \"camila</w>\": 19919,\n  \"camilla</w>\": 38897,\n  \"camille</w>\": 26741,\n  \"camino</w>\": 28529,\n  \"camo\": 28702,\n  \"camo</w>\": 19716,\n  \"camogie</w>\": 39547,\n  \"camou\": 23588,\n  \"camoufla\": 23667,\n  \"camouflage</w>\": 29049,\n  \"camp\": 2854,\n  \"camp</w>\": 2877,\n  \"campa\": 2793,\n  \"campaig\": 9448,\n  \"campaign\": 44524,\n  \"campaign</w>\": 3193,\n  \"campaigner</w>\": 46364,\n  \"campaigners</w>\": 40272,\n  \"campaigning</w>\": 19594,\n  \"campaigns</w>\": 15669,\n  \"campan\": 31765,\n  \"campbell\": 29094,\n  \"campbell</w>\": 8806,\n  \"campe\": 16672,\n  \"campeon\": 49109,\n  \"campeones</w>\": 30105,\n  \"camper\": 41914,\n  \"camper</w>\": 24522,\n  \"campers</w>\": 26619,\n  \"campfire</w>\": 32530,\n  \"campground</w>\": 46969,\n  \"camping</w>\": 9982,\n  \"campo</w>\": 27600,\n  \"campos</w>\": 48077,\n  \"camps</w>\": 12806,\n  \"campsite</w>\": 44243,\n  \"campu\": 19687,\n  \"campus</w>\": 4560,\n  \"campuses</w>\": 31895,\n  \"camra</w>\": 46155,\n  \"camry</w>\": 46472,\n  \"cams</w>\": 32590,\n  \"can\": 950,\n  \"can</w>\": 753,\n  \"cana</w>\": 28341,\n  \"canad\": 13193,\n  \"canada</w>\": 2698,\n  \"canadaday</w>\": 39800,\n  \"canadi\": 4329,\n  \"canadian\": 22160,\n  \"canadian</w>\": 5255,\n  \"canadians</w>\": 18989,\n  \"canadiens</w>\": 40932,\n  \"canal\": 28585,\n  \"canal</w>\": 9535,\n  \"canals</w>\": 38483,\n  \"canaria</w>\": 47117,\n  \"canary\": 40409,\n  \"canary</w>\": 24523,\n  \"canberra</w>\": 16719,\n  \"canc\": 43189,\n  \"cancel\": 12026,\n  \"cancel</w>\": 21546,\n  \"canceled</w>\": 25874,\n  \"cancell\": 28027,\n  \"cancellation</w>\": 38765,\n  \"cancelled</w>\": 13270,\n  \"cancels</w>\": 34089,\n  \"cancer\": 12690,\n  \"cancer</w>\": 3148,\n  \"cancers</w>\": 33201,\n  \"cancun</w>\": 34721,\n  \"cand\": 4986,\n  \"candace</w>\": 45623,\n  \"candel\": 47834,\n  \"candi\": 6034,\n  \"candice</w>\": 30024,\n  \"candid\": 7884,\n  \"candid</w>\": 19206,\n  \"candidacy</w>\": 46248,\n  \"candidate</w>\": 6475,\n  \"candidates</w>\": 8619,\n  \"candied</w>\": 43982,\n  \"candies</w>\": 46305,\n  \"candle\": 18995,\n  \"candle</w>\": 12674,\n  \"candlelight</w>\": 34724,\n  \"candles</w>\": 15472,\n  \"candy\": 20741,\n  \"candy</w>\": 6417,\n  \"cane\": 23644,\n  \"cane</w>\": 14716,\n  \"canelo</w>\": 43210,\n  \"canes</w>\": 21902,\n  \"cani\": 35592,\n  \"canine</w>\": 27380,\n  \"cann\": 4139,\n  \"cann</w>\": 23709,\n  \"cannab\": 7577,\n  \"cannabis\": 31837,\n  \"cannabis</w>\": 8861,\n  \"canne\": 44252,\n  \"canned</w>\": 27290,\n  \"cannes</w>\": 13773,\n  \"canni\": 26389,\n  \"canning</w>\": 38621,\n  \"cannon\": 28771,\n  \"cannon</w>\": 15661,\n  \"cannons</w>\": 46269,\n  \"cannot</w>\": 4785,\n  \"canny</w>\": 26986,\n  \"cano\": 31668,\n  \"cano</w>\": 25937,\n  \"canoe</w>\": 23503,\n  \"canola</w>\": 40389,\n  \"canon\": 17749,\n  \"canon</w>\": 9310,\n  \"canopy</w>\": 26061,\n  \"cans</w>\": 13707,\n  \"cant\": 13395,\n  \"cant</w>\": 5784,\n  \"canteen</w>\": 39230,\n  \"canter\": 19301,\n  \"canterbury</w>\": 22271,\n  \"canti\": 42845,\n  \"cantina</w>\": 47472,\n  \"canton\": 37735,\n  \"canton</w>\": 25363,\n  \"cantore</w>\": 41769,\n  \"cantwait</w>\": 33760,\n  \"canu\": 20171,\n  \"canucks</w>\": 24321,\n  \"canv\": 30714,\n  \"canvas\": 22441,\n  \"canvas</w>\": 7483,\n  \"canvass</w>\": 40054,\n  \"canvassing</w>\": 33783,\n  \"cany\": 47674,\n  \"canyon\": 41246,\n  \"canyon</w>\": 9755,\n  \"cao</w>\": 29207,\n  \"cap\": 1289,\n  \"cap</w>\": 3938,\n  \"capabilities</w>\": 19512,\n  \"capability</w>\": 25885,\n  \"capable</w>\": 14742,\n  \"capac\": 24665,\n  \"capacity</w>\": 8970,\n  \"capcom</w>\": 28342,\n  \"cape\": 10288,\n  \"cape</w>\": 6631,\n  \"capecod</w>\": 41339,\n  \"capes</w>\": 38785,\n  \"capetown</w>\": 20059,\n  \"capit\": 6889,\n  \"capita</w>\": 41833,\n  \"capital\": 11198,\n  \"capital</w>\": 5439,\n  \"capitalism</w>\": 20068,\n  \"capitalist</w>\": 37015,\n  \"capitals</w>\": 29579,\n  \"capitol\": 43880,\n  \"capitol</w>\": 11375,\n  \"capo</w>\": 45477,\n  \"capp\": 16718,\n  \"capped</w>\": 24659,\n  \"capping</w>\": 42656,\n  \"cappuccino</w>\": 37402,\n  \"capri\": 48699,\n  \"capri</w>\": 30982,\n  \"capric\": 28667,\n  \"capricorn</w>\": 46314,\n  \"caps</w>\": 23185,\n  \"capsu\": 15608,\n  \"capsul\": 40341,\n  \"capsule</w>\": 20627,\n  \"capsules</w>\": 32870,\n  \"capt\": 45815,\n  \"capt</w>\": 17369,\n  \"captain\": 14958,\n  \"captain</w>\": 4621,\n  \"captainamerica</w>\": 46229,\n  \"captainmarvel</w>\": 48492,\n  \"captains</w>\": 18706,\n  \"caption</w>\": 11327,\n  \"captions</w>\": 41878,\n  \"captiv\": 19776,\n  \"captivating</w>\": 30580,\n  \"captive</w>\": 29038,\n  \"captivity</w>\": 41141,\n  \"capture</w>\": 8818,\n  \"captured</w>\": 8020,\n  \"captures</w>\": 15305,\n  \"capturing</w>\": 19548,\n  \"capu\": 44241,\n  \"car\": 811,\n  \"car</w>\": 1615,\n  \"cara</w>\": 20016,\n  \"carab\": 32251,\n  \"carac\": 30029,\n  \"caracas</w>\": 45854,\n  \"caramel</w>\": 14788,\n  \"carameli\": 41739,\n  \"caramelized</w>\": 43854,\n  \"carat</w>\": 32981,\n  \"carav\": 13814,\n  \"caravan</w>\": 18566,\n  \"carb</w>\": 21379,\n  \"carbo\": 43235,\n  \"carbon\": 14038,\n  \"carbon</w>\": 7549,\n  \"carbs</w>\": 29313,\n  \"carcin\": 31587,\n  \"carcinoma</w>\": 46810,\n  \"card\": 10793,\n  \"card</w>\": 2601,\n  \"cardam\": 49008,\n  \"cardboard</w>\": 19845,\n  \"cardi\": 6211,\n  \"cardi</w>\": 29677,\n  \"cardiac</w>\": 21256,\n  \"cardiff\": 22488,\n  \"cardiff</w>\": 9781,\n  \"cardigan</w>\": 30501,\n  \"cardin\": 8457,\n  \"cardinal\": 46310,\n  \"cardinal</w>\": 16472,\n  \"cardinals</w>\": 12837,\n  \"cardio\": 15003,\n  \"cardio</w>\": 23455,\n  \"cardiology</w>\": 37276,\n  \"cardiovascular</w>\": 29291,\n  \"cardo</w>\": 40625,\n  \"cards</w>\": 4094,\n  \"care\": 2050,\n  \"care</w>\": 1776,\n  \"cared</w>\": 27675,\n  \"career\": 20609,\n  \"career</w>\": 3061,\n  \"careers</w>\": 10090,\n  \"careful</w>\": 11999,\n  \"carefully</w>\": 15789,\n  \"caregi\": 22042,\n  \"caregiver</w>\": 46372,\n  \"caregivers</w>\": 35909,\n  \"careless</w>\": 47325,\n  \"carers</w>\": 26484,\n  \"cares</w>\": 10968,\n  \"caretaker</w>\": 48037,\n  \"carey</w>\": 14895,\n  \"cargo</w>\": 12490,\n  \"cari\": 18497,\n  \"cari</w>\": 37273,\n  \"carib\": 9757,\n  \"caribbean</w>\": 10368,\n  \"caribou</w>\": 42135,\n  \"caric\": 25337,\n  \"caricature</w>\": 38857,\n  \"carina</w>\": 44357,\n  \"caring</w>\": 13083,\n  \"carl\": 8273,\n  \"carl</w>\": 9482,\n  \"carla</w>\": 25552,\n  \"carleton</w>\": 46496,\n  \"carlin</w>\": 47559,\n  \"carlisle</w>\": 23276,\n  \"carlo\": 17861,\n  \"carlo</w>\": 15266,\n  \"carlos</w>\": 9538,\n  \"carlow</w>\": 44745,\n  \"carls\": 39635,\n  \"carlson</w>\": 24114,\n  \"carlton</w>\": 18934,\n  \"carly\": 23166,\n  \"carly</w>\": 22689,\n  \"carlyle</w>\": 46555,\n  \"carmel\": 30757,\n  \"carmel</w>\": 25601,\n  \"carmen\": 41427,\n  \"carmen</w>\": 18834,\n  \"carmichael</w>\": 41657,\n  \"carn\": 21597,\n  \"carnage</w>\": 31385,\n  \"carnation</w>\": 44577,\n  \"carnaval</w>\": 47238,\n  \"carne\": 17053,\n  \"carne</w>\": 42885,\n  \"carnegie</w>\": 25287,\n  \"carney</w>\": 34194,\n  \"carni\": 8438,\n  \"carnival\": 36708,\n  \"carnival</w>\": 10577,\n  \"caro\": 30317,\n  \"caro</w>\": 29344,\n  \"carol\": 4242,\n  \"carol</w>\": 11489,\n  \"carole</w>\": 31955,\n  \"carolin\": 26418,\n  \"carolina</w>\": 7027,\n  \"caroline\": 31064,\n  \"caroline</w>\": 12641,\n  \"carols</w>\": 33269,\n  \"carolyn</w>\": 25825,\n  \"carou\": 32224,\n  \"carousel</w>\": 36665,\n  \"carp</w>\": 26085,\n  \"carpen\": 15584,\n  \"carpenter</w>\": 18475,\n  \"carpet</w>\": 6922,\n  \"carpets</w>\": 34612,\n  \"carr\": 26951,\n  \"carr</w>\": 17136,\n  \"carra\": 32332,\n  \"carre\": 31114,\n  \"carrera</w>\": 32952,\n  \"carri\": 4739,\n  \"carriage\": 47885,\n  \"carriage</w>\": 21087,\n  \"carrick</w>\": 44052,\n  \"carrie\": 30334,\n  \"carrie</w>\": 15848,\n  \"carried</w>\": 12960,\n  \"carrier</w>\": 12308,\n  \"carriers</w>\": 26865,\n  \"carries</w>\": 17982,\n  \"carrieunderwood</w>\": 47338,\n  \"carrington</w>\": 48759,\n  \"carroll\": 41911,\n  \"carroll</w>\": 14893,\n  \"carrot</w>\": 15435,\n  \"carrots</w>\": 19299,\n  \"carry\": 31863,\n  \"carry</w>\": 6998,\n  \"carrying</w>\": 9920,\n  \"cars</w>\": 3346,\n  \"carsforsale</w>\": 45222,\n  \"carson\": 41766,\n  \"carson</w>\": 13171,\n  \"cart\": 27705,\n  \"cart</w>\": 13065,\n  \"cartag\": 45042,\n  \"cartagena</w>\": 47157,\n  \"carte</w>\": 44949,\n  \"cartel</w>\": 30529,\n  \"carter\": 27330,\n  \"carter</w>\": 7260,\n  \"cartier</w>\": 32951,\n  \"carto\": 5487,\n  \"carton</w>\": 41812,\n  \"cartoon\": 33082,\n  \"cartoon</w>\": 7651,\n  \"cartoonist</w>\": 30793,\n  \"cartoons</w>\": 17673,\n  \"cartri\": 47084,\n  \"cartridge</w>\": 29432,\n  \"cartridges</w>\": 49249,\n  \"carts</w>\": 27581,\n  \"cartunesapp</w>\": 32888,\n  \"caruso</w>\": 45192,\n  \"carve</w>\": 40152,\n  \"carved</w>\": 15127,\n  \"carver</w>\": 28850,\n  \"carving</w>\": 19428,\n  \"carvings</w>\": 48123,\n  \"cary</w>\": 22844,\n  \"cas\": 1671,\n  \"cas</w>\": 13831,\n  \"casa</w>\": 14643,\n  \"casablanc\": 36572,\n  \"casablanca</w>\": 41950,\n  \"casc\": 36714,\n  \"casca\": 43296,\n  \"cascade</w>\": 29065,\n  \"cascades</w>\": 46454,\n  \"case\": 17698,\n  \"case</w>\": 2068,\n  \"cases</w>\": 6888,\n  \"casey\": 24899,\n  \"casey</w>\": 12836,\n  \"cash\": 11050,\n  \"cash</w>\": 5131,\n  \"cashback</w>\": 36368,\n  \"cashe\": 32233,\n  \"cashew</w>\": 39531,\n  \"cashi\": 29517,\n  \"cashier</w>\": 34547,\n  \"cashmere</w>\": 34566,\n  \"casi\": 38350,\n  \"casino</w>\": 10473,\n  \"casio</w>\": 32261,\n  \"cask</w>\": 26299,\n  \"casm</w>\": 35198,\n  \"casper</w>\": 35892,\n  \"cass</w>\": 22556,\n  \"cassandra</w>\": 35289,\n  \"casser\": 31093,\n  \"casserole</w>\": 36045,\n  \"cassette</w>\": 19717,\n  \"cassi\": 14942,\n  \"cassidy</w>\": 21757,\n  \"cassie</w>\": 29323,\n  \"cassini</w>\": 46554,\n  \"cast\": 2509,\n  \"cast</w>\": 1970,\n  \"caste</w>\": 32693,\n  \"casted</w>\": 33838,\n  \"castel\": 43306,\n  \"castell\": 31792,\n  \"caster\": 32101,\n  \"caster</w>\": 8449,\n  \"casters</w>\": 29721,\n  \"castic</w>\": 47737,\n  \"castillo</w>\": 30813,\n  \"casting</w>\": 7087,\n  \"castle\": 12496,\n  \"castle</w>\": 3540,\n  \"castles</w>\": 24766,\n  \"castro</w>\": 16950,\n  \"casts</w>\": 10595,\n  \"casu\": 15345,\n  \"casual</w>\": 10129,\n  \"casually</w>\": 18840,\n  \"casualties</w>\": 30244,\n  \"casualty</w>\": 31222,\n  \"cat\": 1481,\n  \"cat</w>\": 2368,\n  \"cata</w>\": 42279,\n  \"catal\": 12792,\n  \"catalan</w>\": 30532,\n  \"catalina</w>\": 36576,\n  \"catalo\": 34740,\n  \"catalog</w>\": 20036,\n  \"catalogue</w>\": 20985,\n  \"catalonia</w>\": 27039,\n  \"catalunya</w>\": 44132,\n  \"cataly\": 15894,\n  \"catalyst</w>\": 25387,\n  \"catan</w>\": 45893,\n  \"catap\": 39514,\n  \"catar\": 35801,\n  \"catastro\": 22736,\n  \"catastrophe</w>\": 41422,\n  \"catastrophic</w>\": 34448,\n  \"catch\": 18901,\n  \"catch</w>\": 3042,\n  \"catcher</w>\": 15965,\n  \"catchers</w>\": 39060,\n  \"catches</w>\": 17213,\n  \"catching</w>\": 8617,\n  \"catchy</w>\": 37114,\n  \"catday</w>\": 32243,\n  \"cate\": 6357,\n  \"cate</w>\": 24510,\n  \"cated</w>\": 31823,\n  \"categor\": 17006,\n  \"categori\": 40117,\n  \"categories</w>\": 19971,\n  \"category</w>\": 9432,\n  \"cater\": 16634,\n  \"cater</w>\": 38101,\n  \"catering</w>\": 16697,\n  \"caterpillar</w>\": 27111,\n  \"catfish</w>\": 26077,\n  \"cath\": 9196,\n  \"cath</w>\": 30811,\n  \"cathar\": 43784,\n  \"cathe\": 7174,\n  \"cathedr\": 46370,\n  \"cathedral</w>\": 7865,\n  \"catherine\": 35035,\n  \"catherine</w>\": 12339,\n  \"catho\": 7595,\n  \"cathol\": 16315,\n  \"catholic\": 20382,\n  \"catholic</w>\": 7757,\n  \"catholics</w>\": 36808,\n  \"cathy\": 40326,\n  \"cathy</w>\": 22731,\n  \"cation</w>\": 21367,\n  \"cato</w>\": 33558,\n  \"cats\": 38800,\n  \"cats</w>\": 3989,\n  \"catsofinstagram</w>\": 39901,\n  \"catsoftwitter</w>\": 17273,\n  \"catt\": 37339,\n  \"cattle\": 48799,\n  \"cattle</w>\": 13644,\n  \"caturday</w>\": 20892,\n  \"catwalk</w>\": 36565,\n  \"catwoman</w>\": 47251,\n  \"cau\": 1121,\n  \"cau</w>\": 45529,\n  \"caucus</w>\": 18847,\n  \"caught</w>\": 4520,\n  \"caul\": 23460,\n  \"cauley</w>\": 41682,\n  \"caulfield</w>\": 44906,\n  \"cauli\": 20123,\n  \"cauliflower</w>\": 23802,\n  \"cause\": 18982,\n  \"cause</w>\": 1394,\n  \"caused</w>\": 8940,\n  \"causes</w>\": 9775,\n  \"causeway</w>\": 35034,\n  \"causing</w>\": 10779,\n  \"caution</w>\": 15656,\n  \"cautious</w>\": 36579,\n  \"cav\": 4942,\n  \"cav</w>\": 45935,\n  \"cava</w>\": 48682,\n  \"caval\": 24537,\n  \"cavali\": 20783,\n  \"cavalier</w>\": 44488,\n  \"cavaliers</w>\": 30194,\n  \"cavalry</w>\": 32467,\n  \"cave\": 25441,\n  \"cave</w>\": 9654,\n  \"cavendish</w>\": 42945,\n  \"caver\": 41487,\n  \"caves</w>\": 22096,\n  \"cavi\": 27360,\n  \"caviar</w>\": 31228,\n  \"cavill</w>\": 40492,\n  \"cavity</w>\": 43156,\n  \"cavs</w>\": 16800,\n  \"caw\": 38405,\n  \"caw</w>\": 43804,\n  \"cawx</w>\": 26739,\n  \"cay\": 11876,\n  \"cay</w>\": 37399,\n  \"cayenne</w>\": 43650,\n  \"cayman</w>\": 33737,\n  \"caz\": 48451,\n  \"cb\": 4034,\n  \"cb</w>\": 8830,\n  \"cba</w>\": 38472,\n  \"cbb</w>\": 31487,\n  \"cbc\": 14096,\n  \"cbc</w>\": 14523,\n  \"cbd</w>\": 13176,\n  \"cbe</w>\": 43639,\n  \"cbi</w>\": 30875,\n  \"cbj</w>\": 35608,\n  \"cbn</w>\": 26579,\n  \"cbp</w>\": 46723,\n  \"cbr</w>\": 28762,\n  \"cbs\": 16788,\n  \"cbs</w>\": 8009,\n  \"cc\": 2976,\n  \"cc</w>\": 2021,\n  \"cca</w>\": 17987,\n  \"ccc</w>\": 21856,\n  \"ccd</w>\": 48556,\n  \"ccg</w>\": 37755,\n  \"cch\": 21789,\n  \"cchini</w>\": 28467,\n  \"cci\": 32942,\n  \"cci</w>\": 8196,\n  \"ccl</w>\": 43773,\n  \"ccm</w>\": 40435,\n  \"cco</w>\": 28786,\n  \"ccot</w>\": 24950,\n  \"ccp</w>\": 43045,\n  \"ccs</w>\": 30400,\n  \"cctv</w>\": 23097,\n  \"ccu</w>\": 49023,\n  \"cd\": 4308,\n  \"cd</w>\": 4480,\n  \"cda</w>\": 45565,\n  \"cdc\": 41098,\n  \"cdc</w>\": 25779,\n  \"cdn\": 8886,\n  \"cdn</w>\": 26802,\n  \"cdnpoli</w>\": 11645,\n  \"cdo</w>\": 47187,\n  \"cdp</w>\": 39624,\n  \"cds</w>\": 20784,\n  \"cdt</w>\": 18455,\n  \"ce\": 685,\n  \"ce</w>\": 629,\n  \"cea</w>\": 28355,\n  \"cean\": 34409,\n  \"cean</w>\": 37295,\n  \"cease\": 32856,\n  \"cease</w>\": 25499,\n  \"ceasefire</w>\": 38291,\n  \"cebu</w>\": 20146,\n  \"cec\": 29694,\n  \"cec</w>\": 40029,\n  \"cecil\": 26987,\n  \"cecil</w>\": 27169,\n  \"cecilia</w>\": 35440,\n  \"ced\": 25634,\n  \"ced</w>\": 2323,\n  \"cedar\": 24167,\n  \"cedar</w>\": 13799,\n  \"cedric</w>\": 36608,\n  \"cee\": 45966,\n  \"cee</w>\": 15015,\n  \"cees</w>\": 47914,\n  \"ceil\": 27275,\n  \"ceiling</w>\": 12374,\n  \"ceilings</w>\": 33770,\n  \"cek</w>\": 45544,\n  \"cel\": 2269,\n  \"cel</w>\": 7597,\n  \"cele\": 1314,\n  \"celeb\": 38862,\n  \"celeb</w>\": 19393,\n  \"celebr\": 1372,\n  \"celebrate\": 31414,\n  \"celebrate</w>\": 2694,\n  \"celebrated</w>\": 9184,\n  \"celebrates</w>\": 7564,\n  \"celebrating</w>\": 3382,\n  \"celebration</w>\": 4615,\n  \"celebrations</w>\": 10825,\n  \"celebratory</w>\": 34115,\n  \"celebrities</w>\": 17071,\n  \"celebrity\": 23981,\n  \"celebrity</w>\": 7320,\n  \"celebs</w>\": 19803,\n  \"celed</w>\": 25741,\n  \"celer\": 9621,\n  \"celery</w>\": 30990,\n  \"celeste</w>\": 29364,\n  \"celesti\": 29497,\n  \"celestial</w>\": 32669,\n  \"celi\": 25567,\n  \"celia</w>\": 44489,\n  \"celine</w>\": 33644,\n  \"cell\": 9316,\n  \"cell</w>\": 5533,\n  \"cellar</w>\": 24282,\n  \"cellars</w>\": 44976,\n  \"cellence</w>\": 34687,\n  \"cello</w>\": 23013,\n  \"cellphone</w>\": 39029,\n  \"cells</w>\": 8890,\n  \"cellu\": 16791,\n  \"cellular</w>\": 23268,\n  \"cels</w>\": 24021,\n  \"celsius</w>\": 47057,\n  \"celtic\": 21897,\n  \"celtic</w>\": 10523,\n  \"celticfc</w>\": 38612,\n  \"celtics</w>\": 16226,\n  \"cem</w>\": 41435,\n  \"ceme\": 10517,\n  \"cement</w>\": 4369,\n  \"cements</w>\": 19448,\n  \"cemetery</w>\": 11660,\n  \"cen\": 1306,\n  \"cen</w>\": 30106,\n  \"cena</w>\": 21591,\n  \"cence</w>\": 24410,\n  \"cency</w>\": 41259,\n  \"cene</w>\": 30038,\n  \"censor\": 24230,\n  \"censor</w>\": 44709,\n  \"censored</w>\": 30951,\n  \"censorship</w>\": 27284,\n  \"census</w>\": 23677,\n  \"cent\": 1784,\n  \"cent</w>\": 3662,\n  \"centenary</w>\": 22422,\n  \"centennial</w>\": 20895,\n  \"center\": 16651,\n  \"center</w>\": 2119,\n  \"centered</w>\": 24584,\n  \"centers</w>\": 14494,\n  \"centi\": 48889,\n  \"centime\": 48687,\n  \"centr\": 2370,\n  \"central\": 13448,\n  \"central</w>\": 3339,\n  \"centre\": 26310,\n  \"centre</w>\": 2916,\n  \"centred</w>\": 47925,\n  \"centres</w>\": 19354,\n  \"centri\": 30872,\n  \"centric</w>\": 19297,\n  \"centro</w>\": 37178,\n  \"cents</w>\": 11934,\n  \"centu\": 16818,\n  \"centuri\": 36816,\n  \"centuries</w>\": 19014,\n  \"century\": 26134,\n  \"century</w>\": 4275,\n  \"ceo\": 46340,\n  \"ceo</w>\": 3559,\n  \"ceos</w>\": 28332,\n  \"cep\": 2632,\n  \"cep</w>\": 48714,\n  \"ceph\": 44343,\n  \"cept</w>\": 3678,\n  \"ception</w>\": 12346,\n  \"cer\": 1364,\n  \"cer</w>\": 1925,\n  \"cera</w>\": 34608,\n  \"ceram\": 10677,\n  \"ceramic</w>\": 15112,\n  \"ceramics</w>\": 22438,\n  \"cere\": 3984,\n  \"cere</w>\": 22085,\n  \"cereal</w>\": 17581,\n  \"cereals</w>\": 48618,\n  \"cerebral</w>\": 39073,\n  \"ceremon\": 15796,\n  \"ceremonial</w>\": 33281,\n  \"ceremonies</w>\": 21547,\n  \"ceremony</w>\": 5193,\n  \"cern</w>\": 44851,\n  \"cers</w>\": 13638,\n  \"cert</w>\": 27522,\n  \"certain\": 8526,\n  \"certain</w>\": 7883,\n  \"certainly</w>\": 10883,\n  \"certainty</w>\": 20054,\n  \"certi\": 4888,\n  \"certific\": 9443,\n  \"certificate</w>\": 11786,\n  \"certificates</w>\": 25281,\n  \"certification</w>\": 14735,\n  \"certified</w>\": 9288,\n  \"cerv\": 25738,\n  \"cervical</w>\": 35953,\n  \"ces\": 28715,\n  \"ces</w>\": 1604,\n  \"cesar\": 37025,\n  \"cesar</w>\": 28603,\n  \"cess\": 2314,\n  \"cess</w>\": 1554,\n  \"cessna</w>\": 36596,\n  \"cest</w>\": 27245,\n  \"cester\": 15769,\n  \"cester</w>\": 12718,\n  \"cet</w>\": 14960,\n  \"cett</w>\": 46708,\n  \"ceu</w>\": 37457,\n  \"cevic\": 48369,\n  \"cey</w>\": 20971,\n  \"cf\": 10189,\n  \"cf</w>\": 11171,\n  \"cfa</w>\": 34521,\n  \"cfb</w>\": 32931,\n  \"cfc</w>\": 11577,\n  \"cfd</w>\": 46171,\n  \"cfl\": 46320,\n  \"cfl</w>\": 22332,\n  \"cfo</w>\": 26937,\n  \"cfp</w>\": 40756,\n  \"cfr</w>\": 44033,\n  \"cfs</w>\": 32835,\n  \"cg\": 27118,\n  \"cg</w>\": 14740,\n  \"cgc</w>\": 38775,\n  \"cgi</w>\": 30520,\n  \"ch\": 540,\n  \"ch</w>\": 634,\n  \"cha\": 1587,\n  \"cha</w>\": 4541,\n  \"chab\": 26670,\n  \"chad\": 13095,\n  \"chad</w>\": 12923,\n  \"chae\": 9460,\n  \"chaf\": 38123,\n  \"chag\": 27989,\n  \"chai\": 31590,\n  \"chai</w>\": 18919,\n  \"chain\": 13898,\n  \"chain</w>\": 3946,\n  \"chained</w>\": 34402,\n  \"chains</w>\": 14438,\n  \"chainsaw</w>\": 37617,\n  \"chainz</w>\": 39687,\n  \"chair\": 4728,\n  \"chair</w>\": 4269,\n  \"chaired</w>\": 31664,\n  \"chairing</w>\": 42205,\n  \"chairman</w>\": 6901,\n  \"chairperson</w>\": 31584,\n  \"chairs</w>\": 12033,\n  \"chak\": 13702,\n  \"chak</w>\": 41713,\n  \"chakra\": 38304,\n  \"chakra</w>\": 33241,\n  \"chal\": 7397,\n  \"chal</w>\": 30809,\n  \"chale</w>\": 38099,\n  \"chalet</w>\": 37907,\n  \"chalk\": 31362,\n  \"chalk</w>\": 17846,\n  \"chall\": 2073,\n  \"challeng\": 4138,\n  \"challenge\": 29462,\n  \"challenge</w>\": 2836,\n  \"challenged</w>\": 17380,\n  \"challenger</w>\": 18228,\n  \"challengers</w>\": 46404,\n  \"challenges</w>\": 6280,\n  \"challenging</w>\": 11754,\n  \"chalmers</w>\": 47955,\n  \"cham\": 1290,\n  \"cham</w>\": 19951,\n  \"chamber\": 18983,\n  \"chamber</w>\": 7642,\n  \"chamberlain</w>\": 32756,\n  \"chambers</w>\": 16501,\n  \"chamele\": 34759,\n  \"chameleon</w>\": 41317,\n  \"champ\": 36813,\n  \"champ</w>\": 6602,\n  \"champag\": 10283,\n  \"champagne</w>\": 11007,\n  \"champi\": 1680,\n  \"champion\": 2643,\n  \"champion</w>\": 3950,\n  \"champions</w>\": 4227,\n  \"championship</w>\": 3429,\n  \"championships</w>\": 7047,\n  \"championsleague</w>\": 27638,\n  \"champs</w>\": 6240,\n  \"chan\": 1255,\n  \"chan</w>\": 6704,\n  \"chana</w>\": 48752,\n  \"chanc\": 13931,\n  \"chance\": 32940,\n  \"chance</w>\": 2594,\n  \"chancellor</w>\": 15886,\n  \"chances</w>\": 10870,\n  \"chand\": 7126,\n  \"chand</w>\": 41508,\n  \"chandelier</w>\": 30570,\n  \"chandi\": 12482,\n  \"chandigarh</w>\": 34106,\n  \"chandler</w>\": 17595,\n  \"chandra\": 27082,\n  \"chandra</w>\": 25348,\n  \"chanel</w>\": 16951,\n  \"chang\": 2233,\n  \"chang</w>\": 16461,\n  \"change\": 11608,\n  \"change</w>\": 1799,\n  \"changeable</w>\": 41335,\n  \"changed</w>\": 4907,\n  \"changer</w>\": 18406,\n  \"changers</w>\": 35185,\n  \"changes</w>\": 4938,\n  \"changing\": 40384,\n  \"changing</w>\": 5621,\n  \"changmin</w>\": 47410,\n  \"chann\": 8804,\n  \"channel\": 25837,\n  \"channel</w>\": 3847,\n  \"channeling</w>\": 28197,\n  \"channels</w>\": 13961,\n  \"channing</w>\": 37417,\n  \"chant\": 18165,\n  \"chant</w>\": 13521,\n  \"chanting</w>\": 32111,\n  \"chants</w>\": 22723,\n  \"chanyeol</w>\": 18805,\n  \"chao</w>\": 31815,\n  \"chaos</w>\": 10853,\n  \"chaotic</w>\": 33501,\n  \"chap\": 3825,\n  \"chap</w>\": 21939,\n  \"chapel\": 40859,\n  \"chapel</w>\": 10137,\n  \"chaplain</w>\": 38348,\n  \"chaplin</w>\": 32545,\n  \"chapman</w>\": 17968,\n  \"chapp\": 20634,\n  \"chaps</w>\": 36823,\n  \"chapter</w>\": 6014,\n  \"chapters</w>\": 22936,\n  \"char\": 1054,\n  \"char</w>\": 16017,\n  \"chara</w>\": 35668,\n  \"charac\": 2792,\n  \"character\": 10997,\n  \"character</w>\": 4009,\n  \"characterdesign</w>\": 38149,\n  \"characteri\": 20920,\n  \"characteristic</w>\": 44747,\n  \"characteristics</w>\": 26037,\n  \"characters</w>\": 6564,\n  \"charan</w>\": 31851,\n  \"charcoal</w>\": 19268,\n  \"chard</w>\": 17524,\n  \"chardon\": 26599,\n  \"chardonnay</w>\": 28161,\n  \"charge\": 25032,\n  \"charge</w>\": 5948,\n  \"chargeable</w>\": 35664,\n  \"charged</w>\": 7916,\n  \"charger</w>\": 13090,\n  \"chargers</w>\": 17352,\n  \"charges</w>\": 8962,\n  \"charging</w>\": 12514,\n  \"chariot</w>\": 38811,\n  \"charis\": 24449,\n  \"charisma</w>\": 45041,\n  \"charismatic</w>\": 37205,\n  \"charitable</w>\": 23256,\n  \"charities</w>\": 18493,\n  \"charity\": 20008,\n  \"charity</w>\": 4607,\n  \"charitytuesday</w>\": 42794,\n  \"charl\": 47736,\n  \"charle\": 10217,\n  \"charles\": 27983,\n  \"charles</w>\": 5127,\n  \"charleston</w>\": 15478,\n  \"charley</w>\": 38027,\n  \"charli\": 21784,\n  \"charli</w>\": 49392,\n  \"charlie\": 16764,\n  \"charlie</w>\": 6393,\n  \"charlotte\": 18445,\n  \"charlotte</w>\": 7871,\n  \"charlottesville</w>\": 32027,\n  \"charlton</w>\": 27048,\n  \"charm</w>\": 10876,\n  \"charmed</w>\": 39790,\n  \"charming</w>\": 12177,\n  \"charms</w>\": 21944,\n  \"charred</w>\": 44085,\n  \"chart\": 42685,\n  \"chart</w>\": 5053,\n  \"charted</w>\": 27939,\n  \"charter\": 42345,\n  \"charter</w>\": 13569,\n  \"chartered</w>\": 31298,\n  \"charters</w>\": 46626,\n  \"charting</w>\": 39841,\n  \"charts</w>\": 10728,\n  \"chas\": 10717,\n  \"chas</w>\": 29838,\n  \"chase\": 21503,\n  \"chase</w>\": 3859,\n  \"chased</w>\": 30342,\n  \"chaser</w>\": 29560,\n  \"chasers</w>\": 34158,\n  \"chases</w>\": 45011,\n  \"chasing\": 46909,\n  \"chasing</w>\": 13376,\n  \"chassis</w>\": 29188,\n  \"chast\": 42176,\n  \"chasu\": 41352,\n  \"chat\": 5355,\n  \"chat</w>\": 2402,\n  \"chatbots</w>\": 43994,\n  \"chate\": 30377,\n  \"chateau\": 44582,\n  \"chateau</w>\": 23520,\n  \"chath\": 46849,\n  \"chatham</w>\": 32030,\n  \"chats</w>\": 13263,\n  \"chatt\": 21618,\n  \"chattanoo\": 28009,\n  \"chattanooga</w>\": 29866,\n  \"chatted</w>\": 34124,\n  \"chatter\": 33473,\n  \"chatter</w>\": 41103,\n  \"chatting</w>\": 12401,\n  \"chatur\": 33839,\n  \"chau\": 11263,\n  \"chau</w>\": 37536,\n  \"chauffe\": 45440,\n  \"chauhan</w>\": 46663,\n  \"chav\": 28997,\n  \"chavez</w>\": 27480,\n  \"chaw\": 39639,\n  \"chay\": 45317,\n  \"chaz\": 47815,\n  \"chc</w>\": 36233,\n  \"chd</w>\": 41645,\n  \"che\": 983,\n  \"che</w>\": 3842,\n  \"chea</w>\": 39580,\n  \"chead\": 48358,\n  \"cheap\": 27036,\n  \"cheap</w>\": 8678,\n  \"cheape\": 26164,\n  \"cheaper</w>\": 17776,\n  \"cheapest</w>\": 26640,\n  \"cheat</w>\": 18180,\n  \"cheated</w>\": 34285,\n  \"cheating</w>\": 19722,\n  \"chec\": 1113,\n  \"check\": 7672,\n  \"check</w>\": 1217,\n  \"checked</w>\": 10387,\n  \"checker</w>\": 45883,\n  \"checkers</w>\": 48181,\n  \"checking</w>\": 7441,\n  \"checklist</w>\": 26989,\n  \"checkout</w>\": 13101,\n  \"checkpoint</w>\": 27531,\n  \"checks</w>\": 13737,\n  \"ched\": 11341,\n  \"ched</w>\": 2146,\n  \"cheddar</w>\": 20551,\n  \"chee\": 5326,\n  \"chee</w>\": 20944,\n  \"cheek\": 40000,\n  \"cheek</w>\": 21227,\n  \"cheeks</w>\": 23019,\n  \"cheeky</w>\": 15068,\n  \"cheer\": 9733,\n  \"cheer</w>\": 6918,\n  \"cheered</w>\": 38111,\n  \"cheerful</w>\": 28882,\n  \"cheering</w>\": 14289,\n  \"cheerleader</w>\": 29072,\n  \"cheerleaders</w>\": 22343,\n  \"cheerleading</w>\": 36366,\n  \"cheers</w>\": 6562,\n  \"chees\": 15182,\n  \"cheese\": 10738,\n  \"cheese</w>\": 4108,\n  \"cheeseburger</w>\": 41200,\n  \"cheesecake</w>\": 17803,\n  \"cheeses</w>\": 36076,\n  \"cheesy</w>\": 22093,\n  \"cheetah</w>\": 27431,\n  \"chef\": 12137,\n  \"chef</w>\": 4895,\n  \"chefs</w>\": 14486,\n  \"chek</w>\": 43745,\n  \"chel\": 3084,\n  \"chel</w>\": 25970,\n  \"chell</w>\": 46854,\n  \"chelle</w>\": 30141,\n  \"chelms\": 34936,\n  \"chelmsford</w>\": 39890,\n  \"chelse\": 19071,\n  \"chelsea</w>\": 6031,\n  \"chelseafc</w>\": 25927,\n  \"chelten\": 18889,\n  \"cheltenham</w>\": 21589,\n  \"chem\": 5667,\n  \"chem</w>\": 13698,\n  \"chemi\": 7179,\n  \"chemical\": 39376,\n  \"chemical</w>\": 9208,\n  \"chemicals</w>\": 17426,\n  \"chemist</w>\": 23138,\n  \"chemistry</w>\": 8841,\n  \"chemo\": 33095,\n  \"chemo</w>\": 36348,\n  \"chemotherapy</w>\": 41412,\n  \"chemtrails</w>\": 46015,\n  \"chen\": 5907,\n  \"chen</w>\": 8983,\n  \"cheney</w>\": 43522,\n  \"cheng\": 32512,\n  \"cheng</w>\": 30190,\n  \"chenko</w>\": 29073,\n  \"chennai\": 28948,\n  \"chennai</w>\": 12791,\n  \"cheon</w>\": 11498,\n  \"cheque</w>\": 28168,\n  \"cher\": 3597,\n  \"cher</w>\": 3466,\n  \"cheri\": 26471,\n  \"cherish</w>\": 20053,\n  \"cherished</w>\": 42325,\n  \"cherno\": 35376,\n  \"chernobyl</w>\": 40554,\n  \"chero\": 19844,\n  \"cherokee</w>\": 22860,\n  \"cherries</w>\": 27248,\n  \"cherry\": 21470,\n  \"cherry</w>\": 7325,\n  \"chers</w>\": 5789,\n  \"chery</w>\": 38478,\n  \"cheryl\": 37784,\n  \"cheryl</w>\": 20600,\n  \"ches\": 18346,\n  \"ches</w>\": 1910,\n  \"chesa\": 28349,\n  \"chesapeake</w>\": 32909,\n  \"cheshire</w>\": 17130,\n  \"chesney</w>\": 48747,\n  \"chess\": 27170,\n  \"chess</w>\": 8397,\n  \"chest\": 18217,\n  \"chest</w>\": 10563,\n  \"chester\": 10466,\n  \"chester</w>\": 3343,\n  \"chesterfield</w>\": 32975,\n  \"chestnut</w>\": 21834,\n  \"chet</w>\": 9663,\n  \"chett</w>\": 24695,\n  \"chev\": 7152,\n  \"chev</w>\": 41145,\n  \"chevro\": 12850,\n  \"chevrolet</w>\": 13240,\n  \"chevron</w>\": 33792,\n  \"chevy</w>\": 16581,\n  \"chew\": 32645,\n  \"chew</w>\": 22642,\n  \"chewan</w>\": 23689,\n  \"chewbacca</w>\": 49355,\n  \"chewing</w>\": 31486,\n  \"chewy</w>\": 42940,\n  \"chey\": 26968,\n  \"chey</w>\": 31208,\n  \"cheyenne</w>\": 34805,\n  \"chez\": 49183,\n  \"chez</w>\": 10556,\n  \"chf</w>\": 33021,\n  \"chfield</w>\": 41619,\n  \"chhat\": 34127,\n  \"chhattisgarh</w>\": 44246,\n  \"chi\": 1337,\n  \"chi</w>\": 4039,\n  \"chia</w>\": 19147,\n  \"chiang</w>\": 33764,\n  \"chibi</w>\": 22306,\n  \"chic\": 2627,\n  \"chic</w>\": 9091,\n  \"chica</w>\": 44190,\n  \"chicag\": 16778,\n  \"chicago\": 15038,\n  \"chicago</w>\": 3530,\n  \"chicagof\": 40638,\n  \"chicagofire</w>\": 46576,\n  \"chicas</w>\": 40664,\n  \"chichester</w>\": 43823,\n  \"chick\": 3170,\n  \"chick</w>\": 11238,\n  \"chicken\": 26322,\n  \"chicken</w>\": 3717,\n  \"chickens</w>\": 21658,\n  \"chickpea</w>\": 48109,\n  \"chicks</w>\": 17810,\n  \"chico</w>\": 30379,\n  \"chie\": 40046,\n  \"chie</w>\": 12388,\n  \"chief\": 16830,\n  \"chief</w>\": 3455,\n  \"chiefs</w>\": 11419,\n  \"chiev\": 47761,\n  \"chiff\": 27407,\n  \"chiffon</w>\": 31817,\n  \"chig\": 42952,\n  \"chihu\": 22857,\n  \"chihuahu\": 25437,\n  \"chihuahua</w>\": 30181,\n  \"chik</w>\": 45455,\n  \"chil\": 1333,\n  \"child\": 4392,\n  \"child</w>\": 2913,\n  \"childcare</w>\": 31133,\n  \"childhood\": 34772,\n  \"childhood</w>\": 7551,\n  \"childish</w>\": 31939,\n  \"childre\": 2135,\n  \"children\": 11101,\n  \"children</w>\": 2153,\n  \"childrens\": 31551,\n  \"childrens</w>\": 21553,\n  \"childs</w>\": 39521,\n  \"chile</w>\": 10022,\n  \"chilean</w>\": 33186,\n  \"chili</w>\": 13033,\n  \"chill\": 6498,\n  \"chill</w>\": 6382,\n  \"chilled</w>\": 23540,\n  \"chillen</w>\": 45160,\n  \"chilli\": 26787,\n  \"chilli</w>\": 17067,\n  \"chillin</w>\": 10347,\n  \"chilling</w>\": 10179,\n  \"chillout</w>\": 39842,\n  \"chills</w>\": 25460,\n  \"chilly</w>\": 14450,\n  \"chim\": 10543,\n  \"chimney</w>\": 26821,\n  \"chimp</w>\": 44374,\n  \"chin\": 6555,\n  \"chin</w>\": 8979,\n  \"china\": 38943,\n  \"china</w>\": 2817,\n  \"chinatown</w>\": 28582,\n  \"chine\": 4013,\n  \"chinese\": 30568,\n  \"chinese</w>\": 4271,\n  \"ching\": 34621,\n  \"ching</w>\": 1439,\n  \"chino\": 47181,\n  \"chino</w>\": 27440,\n  \"chinook</w>\": 41577,\n  \"chinson</w>\": 33786,\n  \"chio</w>\": 19650,\n  \"chip\": 19271,\n  \"chip</w>\": 8730,\n  \"chipmun\": 46384,\n  \"chipot\": 17702,\n  \"chipotle</w>\": 19284,\n  \"chipp\": 39854,\n  \"chippe\": 46541,\n  \"chipped</w>\": 39892,\n  \"chipping</w>\": 40323,\n  \"chips</w>\": 8855,\n  \"chir\": 15564,\n  \"chiro\": 23413,\n  \"chiroprac\": 25987,\n  \"chiropractic</w>\": 34437,\n  \"chis\": 19920,\n  \"chistan</w>\": 20523,\n  \"chiswick</w>\": 47290,\n  \"chit\": 13515,\n  \"chit</w>\": 45626,\n  \"chita</w>\": 49184,\n  \"chitec\": 39862,\n  \"chive</w>\": 29222,\n  \"chives</w>\": 34921,\n  \"chk</w>\": 47424,\n  \"chl</w>\": 38592,\n  \"chley</w>\": 47748,\n  \"chlo\": 10374,\n  \"chloe\": 39966,\n  \"chloe</w>\": 13992,\n  \"chlor\": 23135,\n  \"chman</w>\": 35835,\n  \"chment</w>\": 20848,\n  \"chner</w>\": 48277,\n  \"cho\": 1327,\n  \"cho</w>\": 5150,\n  \"choa</w>\": 43077,\n  \"choc\": 32772,\n  \"choc</w>\": 21983,\n  \"choco\": 46285,\n  \"choco</w>\": 32692,\n  \"chocol\": 3443,\n  \"chocolat</w>\": 44631,\n  \"chocolate\": 29389,\n  \"chocolate</w>\": 3820,\n  \"chocolates</w>\": 24120,\n  \"choi</w>\": 23749,\n  \"choic\": 35606,\n  \"choice\": 23857,\n  \"choice</w>\": 4051,\n  \"choices</w>\": 11016,\n  \"choir</w>\": 9214,\n  \"choirs</w>\": 43277,\n  \"choke</w>\": 30231,\n  \"choked</w>\": 43521,\n  \"choker</w>\": 39642,\n  \"choking</w>\": 39993,\n  \"chol\": 19802,\n  \"cholera</w>\": 45999,\n  \"cholester\": 26861,\n  \"cholesterol</w>\": 27982,\n  \"chom\": 25151,\n  \"chon\": 20416,\n  \"chon</w>\": 21601,\n  \"chondri\": 37379,\n  \"chong</w>\": 26220,\n  \"choo\": 3869,\n  \"choo</w>\": 24437,\n  \"chool</w>\": 29578,\n  \"chools</w>\": 41958,\n  \"choose\": 22756,\n  \"choose</w>\": 5073,\n  \"chooses</w>\": 29923,\n  \"choosing</w>\": 13475,\n  \"chop\": 10458,\n  \"chop</w>\": 16663,\n  \"chopin</w>\": 42256,\n  \"chopped</w>\": 22580,\n  \"chopper</w>\": 24011,\n  \"chopping</w>\": 35375,\n  \"chopra</w>\": 24258,\n  \"chops</w>\": 26321,\n  \"chor\": 7567,\n  \"chor</w>\": 47795,\n  \"choral</w>\": 26684,\n  \"chord</w>\": 33005,\n  \"chords</w>\": 36152,\n  \"choreo\": 17443,\n  \"choreographer</w>\": 35952,\n  \"choreography</w>\": 32749,\n  \"chores</w>\": 40483,\n  \"chori\": 25718,\n  \"chorizo</w>\": 30802,\n  \"chorus</w>\": 20869,\n  \"chos</w>\": 26559,\n  \"chose</w>\": 11090,\n  \"chosen</w>\": 10044,\n  \"chou\": 16960,\n  \"chou</w>\": 42917,\n  \"choudhary</w>\": 45503,\n  \"chow\": 20257,\n  \"chow</w>\": 21657,\n  \"chowder</w>\": 37886,\n  \"chp</w>\": 35896,\n  \"chr</w>\": 36918,\n  \"chri\": 1135,\n  \"chris\": 9907,\n  \"chris</w>\": 2978,\n  \"chrisbrown</w>\": 41035,\n  \"chriss\": 46745,\n  \"chrissy\": 44762,\n  \"chrissy</w>\": 40485,\n  \"christ\": 1403,\n  \"christ</w>\": 6703,\n  \"christchurch</w>\": 27100,\n  \"christen\": 31956,\n  \"christensen</w>\": 42226,\n  \"christi\": 3328,\n  \"christi</w>\": 33213,\n  \"christian\": 11792,\n  \"christian</w>\": 4729,\n  \"christianity</w>\": 20000,\n  \"christians</w>\": 14842,\n  \"christie</w>\": 16084,\n  \"christin\": 30189,\n  \"christina</w>\": 15925,\n  \"christine\": 42610,\n  \"christine</w>\": 14712,\n  \"christma\": 12039,\n  \"christmas\": 18174,\n  \"christmas</w>\": 1677,\n  \"christmaseve</w>\": 44381,\n  \"christmass\": 44873,\n  \"christop\": 7917,\n  \"christoph</w>\": 47844,\n  \"christophe</w>\": 45486,\n  \"christopher\": 33349,\n  \"christopher</w>\": 9630,\n  \"christy</w>\": 28331,\n  \"chro\": 13207,\n  \"chromatic</w>\": 44207,\n  \"chrome\": 24843,\n  \"chrome</w>\": 9529,\n  \"chromo\": 35809,\n  \"chron\": 5577,\n  \"chron</w>\": 39781,\n  \"chronic\": 10115,\n  \"chronic</w>\": 13677,\n  \"chronicle</w>\": 20034,\n  \"chronicles</w>\": 18905,\n  \"chrono\": 29387,\n  \"chronograph</w>\": 38397,\n  \"chry\": 13508,\n  \"chrysler</w>\": 20078,\n  \"chs\": 40277,\n  \"chs</w>\": 8391,\n  \"chsnews</w>\": 44919,\n  \"cht</w>\": 11384,\n  \"chter</w>\": 47811,\n  \"chu\": 3799,\n  \"chu</w>\": 13622,\n  \"chubby</w>\": 29109,\n  \"chuck\": 13211,\n  \"chuck</w>\": 9894,\n  \"chuckle</w>\": 35733,\n  \"chucky</w>\": 42026,\n  \"chuffed</w>\": 27233,\n  \"chuk\": 25878,\n  \"chuk</w>\": 27221,\n  \"chul</w>\": 33001,\n  \"chum\": 46869,\n  \"chum</w>\": 41767,\n  \"chun\": 14693,\n  \"chun</w>\": 25391,\n  \"chung</w>\": 28418,\n  \"chunk</w>\": 30275,\n  \"chunks</w>\": 45538,\n  \"chunky</w>\": 27978,\n  \"chups</w>\": 46331,\n  \"chur\": 2309,\n  \"church\": 14956,\n  \"church</w>\": 2735,\n  \"churches</w>\": 15539,\n  \"churchill</w>\": 17527,\n  \"chus</w>\": 36246,\n  \"chut\": 28788,\n  \"chutney</w>\": 36261,\n  \"chy\": 15131,\n  \"chy</w>\": 8096,\n  \"chyna</w>\": 43398,\n  \"chÃ¢\": 48669,\n  \"ci\": 698,\n  \"ci</w>\": 5798,\n  \"cia</w>\": 4019,\n  \"cial</w>\": 1143,\n  \"cian</w>\": 32323,\n  \"ciao</w>\": 37677,\n  \"ciara</w>\": 31369,\n  \"cible</w>\": 28873,\n  \"cic\": 14539,\n  \"cic</w>\": 21517,\n  \"cid</w>\": 27359,\n  \"cide</w>\": 34178,\n  \"cider</w>\": 13547,\n  \"cides</w>\": 41326,\n  \"cie</w>\": 19730,\n  \"cier\": 24067,\n  \"cies</w>\": 6785,\n  \"cif</w>\": 35698,\n  \"cigar\": 26031,\n  \"cigar</w>\": 16525,\n  \"cigare\": 13044,\n  \"cigarette</w>\": 18548,\n  \"cigarettes</w>\": 22750,\n  \"cigars</w>\": 20750,\n  \"cii</w>\": 42408,\n  \"cil\": 9217,\n  \"cil</w>\": 2998,\n  \"cilan\": 33998,\n  \"cilantro</w>\": 34568,\n  \"cili\": 18977,\n  \"ciliation</w>\": 25294,\n  \"cim</w>\": 30021,\n  \"cin\": 2396,\n  \"cin</w>\": 25367,\n  \"cina</w>\": 39467,\n  \"cincin\": 13291,\n  \"cincinnati</w>\": 14197,\n  \"cinco</w>\": 25131,\n  \"cincode\": 40930,\n  \"cincodemayo</w>\": 42542,\n  \"cincy\": 30015,\n  \"cincy</w>\": 30286,\n  \"cinde\": 20660,\n  \"cinderella</w>\": 21515,\n  \"cindy\": 34439,\n  \"cindy</w>\": 18532,\n  \"cine\": 4015,\n  \"cine</w>\": 27451,\n  \"cinema\": 38251,\n  \"cinema</w>\": 6443,\n  \"cinemas</w>\": 14845,\n  \"cinematic</w>\": 25602,\n  \"cinemato\": 21919,\n  \"cinematographer</w>\": 39059,\n  \"cinematography</w>\": 33802,\n  \"ciner\": 39882,\n  \"cing</w>\": 4014,\n  \"cini</w>\": 25699,\n  \"cinnam\": 12768,\n  \"cinnamon</w>\": 13460,\n  \"cino</w>\": 18616,\n  \"cio\": 44584,\n  \"cio</w>\": 9954,\n  \"cion</w>\": 22024,\n  \"ciones</w>\": 37155,\n  \"cious</w>\": 38466,\n  \"cip\": 32884,\n  \"cir\": 2459,\n  \"cir</w>\": 41135,\n  \"circa</w>\": 10411,\n  \"circle\": 33574,\n  \"circle</w>\": 7117,\n  \"circles</w>\": 19411,\n  \"circling</w>\": 46036,\n  \"circu\": 5143,\n  \"circuit\": 35583,\n  \"circuit</w>\": 9801,\n  \"circuits</w>\": 33260,\n  \"circul\": 16618,\n  \"circular</w>\": 19733,\n  \"circulare\": 39525,\n  \"circulareconomy</w>\": 39878,\n  \"circulated</w>\": 46258,\n  \"circulating</w>\": 42980,\n  \"circulation</w>\": 27880,\n  \"circum\": 13406,\n  \"circumstances</w>\": 18786,\n  \"circus</w>\": 11833,\n  \"cirque</w>\": 36049,\n  \"cis\": 9459,\n  \"cis</w>\": 23513,\n  \"cisco\": 36689,\n  \"cisco</w>\": 19290,\n  \"cise</w>\": 19657,\n  \"cisely</w>\": 33434,\n  \"cision</w>\": 41957,\n  \"cism</w>\": 24166,\n  \"cist</w>\": 40906,\n  \"cit\": 4420,\n  \"cit</w>\": 31294,\n  \"citadel</w>\": 38036,\n  \"citation</w>\": 33581,\n  \"cite</w>\": 32641,\n  \"cited</w>\": 25069,\n  \"cites</w>\": 34490,\n  \"citi\": 4280,\n  \"citi</w>\": 30270,\n  \"cities</w>\": 5441,\n  \"citing</w>\": 29088,\n  \"citiz\": 5816,\n  \"citizen\": 11720,\n  \"citizen</w>\": 9814,\n  \"citizens</w>\": 7949,\n  \"citizenship</w>\": 17386,\n  \"cito</w>\": 42636,\n  \"citro\": 27941,\n  \"citroen</w>\": 35805,\n  \"citrus</w>\": 17379,\n  \"city\": 5002,\n  \"city</w>\": 1305,\n  \"cityfc</w>\": 28751,\n  \"cityo\": 25709,\n  \"cityof\": 11595,\n  \"cityscape</w>\": 40808,\n  \"ciu\": 39693,\n  \"cius</w>\": 42559,\n  \"civ\": 40039,\n  \"civic\": 32240,\n  \"civic</w>\": 11888,\n  \"civil\": 6923,\n  \"civil</w>\": 6450,\n  \"civilian</w>\": 21187,\n  \"civilians</w>\": 18076,\n  \"civilization</w>\": 22503,\n  \"civilwar</w>\": 34524,\n  \"ciÃ³n</w>\": 44700,\n  \"cj\": 15238,\n  \"cj</w>\": 15205,\n  \"ck\": 916,\n  \"ck</w>\": 868,\n  \"cke\": 25224,\n  \"cke</w>\": 40989,\n  \"cked</w>\": 3441,\n  \"cken\": 25566,\n  \"cker\": 15509,\n  \"cker</w>\": 4744,\n  \"ckers</w>\": 37073,\n  \"cket</w>\": 5525,\n  \"ckett</w>\": 33899,\n  \"ckey\": 15029,\n  \"ckey</w>\": 3657,\n  \"cki\": 36916,\n  \"cki</w>\": 41055,\n  \"cking</w>\": 4805,\n  \"cko</w>\": 28818,\n  \"cks</w>\": 2031,\n  \"cky\": 26229,\n  \"cky</w>\": 3083,\n  \"cl\": 969,\n  \"cl</w>\": 6482,\n  \"cla\": 940,\n  \"cla</w>\": 20636,\n  \"clad</w>\": 31606,\n  \"cladding</w>\": 46411,\n  \"clai\": 29459,\n  \"claim\": 4290,\n  \"claim</w>\": 6607,\n  \"claimed</w>\": 9010,\n  \"claiming</w>\": 15286,\n  \"claims</w>\": 6852,\n  \"clair\": 31441,\n  \"clair</w>\": 14039,\n  \"claire\": 20410,\n  \"claire</w>\": 10460,\n  \"clam\": 13588,\n  \"clam</w>\": 32598,\n  \"clamation</w>\": 21793,\n  \"clamp</w>\": 41501,\n  \"clams</w>\": 38849,\n  \"clan\": 29252,\n  \"clan</w>\": 14114,\n  \"clancy</w>\": 37227,\n  \"clans</w>\": 38279,\n  \"clap\": 30037,\n  \"clap</w>\": 25546,\n  \"clapham</w>\": 43619,\n  \"clapton</w>\": 37683,\n  \"clar\": 3617,\n  \"clara</w>\": 19468,\n  \"clare\": 18948,\n  \"clare</w>\": 15927,\n  \"claremont</w>\": 47789,\n  \"clarence</w>\": 29320,\n  \"clari\": 15175,\n  \"clarify</w>\": 37004,\n  \"clarinet</w>\": 41178,\n  \"clarity</w>\": 21323,\n  \"clark\": 13340,\n  \"clark</w>\": 7521,\n  \"clarke</w>\": 11548,\n  \"clarkson</w>\": 25706,\n  \"clas\": 32003,\n  \"clash\": 38367,\n  \"clash</w>\": 9359,\n  \"clashes</w>\": 25193,\n  \"clasico</w>\": 43567,\n  \"class\": 2876,\n  \"class</w>\": 1874,\n  \"classes</w>\": 6919,\n  \"classi\": 2507,\n  \"classic\": 9353,\n  \"classic</w>\": 2713,\n  \"classical\": 22179,\n  \"classical</w>\": 11355,\n  \"classicalmusic</w>\": 27806,\n  \"classiccar</w>\": 46906,\n  \"classiccars</w>\": 21064,\n  \"classics</w>\": 10634,\n  \"classification</w>\": 26612,\n  \"classified</w>\": 22056,\n  \"classmate</w>\": 37090,\n  \"classmates</w>\": 30062,\n  \"classof</w>\": 25345,\n  \"classroom</w>\": 9001,\n  \"classrooms</w>\": 25768,\n  \"classy</w>\": 11615,\n  \"clau\": 7526,\n  \"claude</w>\": 17461,\n  \"claudi\": 39439,\n  \"claudia</w>\": 21893,\n  \"claudio</w>\": 31230,\n  \"claus</w>\": 23317,\n  \"clause</w>\": 26151,\n  \"clave</w>\": 24111,\n  \"claw\": 49230,\n  \"claw</w>\": 19106,\n  \"claws</w>\": 29161,\n  \"clay\": 10402,\n  \"clay</w>\": 8823,\n  \"clays</w>\": 26128,\n  \"clayton\": 46445,\n  \"clayton</w>\": 19413,\n  \"clc</w>\": 31380,\n  \"cle\": 1321,\n  \"cle</w>\": 2537,\n  \"clean\": 3572,\n  \"clean</w>\": 3772,\n  \"cleaned</w>\": 17468,\n  \"cleanenergy</w>\": 43538,\n  \"cleaner</w>\": 15619,\n  \"cleaners</w>\": 33258,\n  \"cleaning</w>\": 7210,\n  \"cleanliness</w>\": 47886,\n  \"cleans</w>\": 40827,\n  \"cleanse</w>\": 28717,\n  \"cleanser</w>\": 44170,\n  \"cleansing</w>\": 25931,\n  \"cleanup</w>\": 22353,\n  \"clear\": 4631,\n  \"clear</w>\": 3143,\n  \"clearance</w>\": 17959,\n  \"cleared</w>\": 14880,\n  \"clearer</w>\": 37031,\n  \"clearing</w>\": 15481,\n  \"clearly</w>\": 7767,\n  \"clears</w>\": 29092,\n  \"clearwater</w>\": 32124,\n  \"cleary</w>\": 44342,\n  \"cleats</w>\": 33486,\n  \"cleavage</w>\": 44165,\n  \"cled</w>\": 12827,\n  \"clegg</w>\": 42915,\n  \"clemens</w>\": 45896,\n  \"clement\": 22592,\n  \"clement</w>\": 24714,\n  \"clemente</w>\": 42461,\n  \"clementine</w>\": 47112,\n  \"clements</w>\": 49175,\n  \"clemson\": 38170,\n  \"clemson</w>\": 19537,\n  \"clen\": 35547,\n  \"cleo</w>\": 40344,\n  \"cleop\": 36287,\n  \"cleopatra</w>\": 41212,\n  \"cler\": 11828,\n  \"clergy</w>\": 42635,\n  \"cleric</w>\": 43748,\n  \"clerk</w>\": 22230,\n  \"clermont</w>\": 47529,\n  \"cles</w>\": 8077,\n  \"cleve\": 37599,\n  \"clevel\": 7701,\n  \"cleveland\": 30716,\n  \"cleveland</w>\": 8430,\n  \"clever\": 30977,\n  \"clever</w>\": 13385,\n  \"clg</w>\": 47546,\n  \"cli\": 1503,\n  \"clich\": 44407,\n  \"click\": 16676,\n  \"click</w>\": 3585,\n  \"clicked</w>\": 29015,\n  \"clicking</w>\": 26542,\n  \"clicks</w>\": 31250,\n  \"client\": 48528,\n  \"client</w>\": 7467,\n  \"clients</w>\": 8114,\n  \"clif\": 13182,\n  \"cliff\": 23827,\n  \"cliff</w>\": 10625,\n  \"cliffe</w>\": 15170,\n  \"clifford</w>\": 24226,\n  \"cliffs</w>\": 20953,\n  \"clifton</w>\": 23878,\n  \"climat\": 37283,\n  \"climate\": 7854,\n  \"climate</w>\": 4589,\n  \"climateaction</w>\": 31622,\n  \"climatechange</w>\": 11055,\n  \"climates</w>\": 46022,\n  \"climax</w>\": 37033,\n  \"climb\": 7421,\n  \"climb</w>\": 10649,\n  \"climbed</w>\": 22528,\n  \"climber</w>\": 36910,\n  \"climbers</w>\": 47648,\n  \"climbing</w>\": 9877,\n  \"climbs</w>\": 29098,\n  \"clin\": 2879,\n  \"clinch</w>\": 30404,\n  \"clinched</w>\": 44064,\n  \"cline</w>\": 37460,\n  \"cling\": 37068,\n  \"cling</w>\": 4760,\n  \"clinic</w>\": 7926,\n  \"clinical\": 35133,\n  \"clinical</w>\": 9148,\n  \"clinicians</w>\": 45866,\n  \"clinics</w>\": 23330,\n  \"clint\": 37542,\n  \"clint</w>\": 21160,\n  \"clinton\": 34403,\n  \"clinton</w>\": 5820,\n  \"clio</w>\": 46889,\n  \"clip\": 39712,\n  \"clip</w>\": 9289,\n  \"clipped</w>\": 45524,\n  \"clipper</w>\": 42245,\n  \"clippers</w>\": 23319,\n  \"clipping</w>\": 47484,\n  \"clips</w>\": 16594,\n  \"clique</w>\": 34983,\n  \"clive\": 36086,\n  \"clive</w>\": 21509,\n  \"cll\": 46091,\n  \"cllr\": 45743,\n  \"cllr</w>\": 23034,\n  \"clo\": 1194,\n  \"cloak</w>\": 36528,\n  \"clock\": 19878,\n  \"clock</w>\": 6716,\n  \"clocked</w>\": 49049,\n  \"clocks</w>\": 25895,\n  \"clockwise</w>\": 46150,\n  \"clockwork</w>\": 42297,\n  \"clon\": 24477,\n  \"clone</w>\": 22854,\n  \"clones</w>\": 48047,\n  \"clooney</w>\": 33161,\n  \"clos</w>\": 48821,\n  \"close\": 10603,\n  \"close</w>\": 2660,\n  \"closed</w>\": 4552,\n  \"closely</w>\": 13478,\n  \"closer</w>\": 6377,\n  \"closes</w>\": 11354,\n  \"closest</w>\": 14975,\n  \"closet</w>\": 14221,\n  \"closeup</w>\": 35439,\n  \"closing</w>\": 7101,\n  \"closure</w>\": 13249,\n  \"closures</w>\": 22923,\n  \"cloth</w>\": 14559,\n  \"clothes</w>\": 7080,\n  \"clothing</w>\": 7425,\n  \"clou\": 4069,\n  \"cloud\": 12965,\n  \"cloud</w>\": 3887,\n  \"cloudcomputing</w>\": 41390,\n  \"clouds</w>\": 6244,\n  \"cloudy</w>\": 13106,\n  \"clough</w>\": 42909,\n  \"clover\": 39574,\n  \"clover</w>\": 22812,\n  \"clow\": 18386,\n  \"clown</w>\": 15329,\n  \"clowns</w>\": 30820,\n  \"cls</w>\": 44251,\n  \"clt\": 29651,\n  \"clt</w>\": 24236,\n  \"clu\": 996,\n  \"club\": 9642,\n  \"club</w>\": 1736,\n  \"clubbing</w>\": 48128,\n  \"clubhouse</w>\": 26553,\n  \"clubs</w>\": 9437,\n  \"clue</w>\": 14994,\n  \"clueless</w>\": 35350,\n  \"clues</w>\": 23764,\n  \"clusive</w>\": 41362,\n  \"cluster</w>\": 15595,\n  \"clusters</w>\": 33217,\n  \"clut\": 28507,\n  \"clutch</w>\": 13953,\n  \"clutter</w>\": 40804,\n  \"cly\": 12037,\n  \"clyde\": 39557,\n  \"clyde</w>\": 18469,\n  \"cm\": 10190,\n  \"cm</w>\": 3741,\n  \"cma\": 30554,\n  \"cma</w>\": 31388,\n  \"cmc</w>\": 45839,\n  \"cmdr</w>\": 48250,\n  \"cme</w>\": 34946,\n  \"cmo</w>\": 24589,\n  \"cmon</w>\": 42904,\n  \"cmp\": 46355,\n  \"cms</w>\": 22520,\n  \"cmt</w>\": 42727,\n  \"cmu</w>\": 43046,\n  \"cn\": 3886,\n  \"cn</w>\": 16200,\n  \"cna</w>\": 48287,\n  \"cnbc\": 41242,\n  \"cnbc</w>\": 24371,\n  \"cnblue</w>\": 36018,\n  \"cnc</w>\": 20571,\n  \"cnet</w>\": 47487,\n  \"cnews</w>\": 24319,\n  \"cng</w>\": 41496,\n  \"cnn\": 22405,\n  \"cnn</w>\": 8259,\n  \"cns</w>\": 46095,\n  \"cny</w>\": 31614,\n  \"co\": 622,\n  \"co</w>\": 1320,\n  \"coa</w>\": 29167,\n  \"coach\": 3275,\n  \"coach</w>\": 2312,\n  \"coached</w>\": 30228,\n  \"coachella</w>\": 20222,\n  \"coaches</w>\": 6924,\n  \"coaching</w>\": 7766,\n  \"coal\": 10227,\n  \"coal</w>\": 7919,\n  \"coalition</w>\": 12920,\n  \"coast\": 6398,\n  \"coast</w>\": 3720,\n  \"coastal\": 38246,\n  \"coastal</w>\": 10852,\n  \"coaster</w>\": 15944,\n  \"coasters</w>\": 31548,\n  \"coastguard</w>\": 40601,\n  \"coastline</w>\": 27959,\n  \"coasts</w>\": 42225,\n  \"coat\": 28869,\n  \"coat</w>\": 7356,\n  \"coated</w>\": 23401,\n  \"coates</w>\": 36899,\n  \"coating</w>\": 25369,\n  \"coatings</w>\": 48706,\n  \"coats</w>\": 18075,\n  \"cob\": 20140,\n  \"cob</w>\": 32863,\n  \"cobain</w>\": 36866,\n  \"cobalt</w>\": 30896,\n  \"cobb</w>\": 22719,\n  \"cobble\": 47894,\n  \"cobra</w>\": 21574,\n  \"coc\": 23036,\n  \"coc</w>\": 39498,\n  \"coca</w>\": 21197,\n  \"cocac\": 26393,\n  \"cocacola</w>\": 31248,\n  \"cocaine</w>\": 20534,\n  \"coch\": 18599,\n  \"cochran</w>\": 48798,\n  \"cochrane</w>\": 41752,\n  \"coco\": 11850,\n  \"coco</w>\": 13316,\n  \"cocoa</w>\": 18074,\n  \"cocon\": 8597,\n  \"coconut</w>\": 9581,\n  \"cod\": 16132,\n  \"cod</w>\": 11915,\n  \"code\": 11582,\n  \"code</w>\": 3217,\n  \"coded</w>\": 33703,\n  \"coden\": 43914,\n  \"coder</w>\": 41561,\n  \"codes</w>\": 14566,\n  \"codi\": 39711,\n  \"coding</w>\": 12647,\n  \"cody\": 23222,\n  \"cody</w>\": 12666,\n  \"coe</w>\": 15386,\n  \"coed</w>\": 41028,\n  \"coel\": 45633,\n  \"coer\": 41198,\n  \"coeur</w>\": 44986,\n  \"coffe\": 2255,\n  \"coffee\": 12898,\n  \"coffee</w>\": 2453,\n  \"coffees</w>\": 41184,\n  \"coffey</w>\": 48066,\n  \"cofficial</w>\": 18757,\n  \"coffin</w>\": 29907,\n  \"cog\": 26362,\n  \"cog</w>\": 35960,\n  \"cogn\": 12210,\n  \"cognac</w>\": 44361,\n  \"cognition</w>\": 46825,\n  \"cognitive</w>\": 16584,\n  \"cohe\": 20669,\n  \"cohen</w>\": 13381,\n  \"coherent</w>\": 48450,\n  \"cohort</w>\": 22782,\n  \"coil</w>\": 25307,\n  \"coim\": 41528,\n  \"coin\": 14651,\n  \"coin</w>\": 4170,\n  \"coinci\": 14015,\n  \"coincidence</w>\": 19807,\n  \"coins</w>\": 10530,\n  \"coke\": 39602,\n  \"coke</w>\": 14035,\n  \"col\": 754,\n  \"col</w>\": 9371,\n  \"cola</w>\": 15444,\n  \"colbert</w>\": 31647,\n  \"colby</w>\": 32068,\n  \"colchester</w>\": 31715,\n  \"cold\": 11146,\n  \"cold</w>\": 3153,\n  \"colder</w>\": 23859,\n  \"coldest</w>\": 31438,\n  \"coldplay</w>\": 27770,\n  \"cole\": 9305,\n  \"cole</w>\": 8166,\n  \"coleman</w>\": 15774,\n  \"coles\": 40265,\n  \"coles</w>\": 30398,\n  \"coli\": 18877,\n  \"coli</w>\": 15910,\n  \"colin\": 20989,\n  \"colin</w>\": 10238,\n  \"coliseum</w>\": 21836,\n  \"coll\": 25982,\n  \"coll</w>\": 23898,\n  \"colla\": 2929,\n  \"collab</w>\": 14013,\n  \"collabor\": 4437,\n  \"collaborate</w>\": 21271,\n  \"collaborated</w>\": 42265,\n  \"collaborating</w>\": 25545,\n  \"collaboration</w>\": 6642,\n  \"collaborations</w>\": 36520,\n  \"collaborative</w>\": 15841,\n  \"collaborator</w>\": 48186,\n  \"collaborators</w>\": 45901,\n  \"collage</w>\": 11258,\n  \"collagen</w>\": 36120,\n  \"collap\": 16881,\n  \"collapse</w>\": 16520,\n  \"collapsed</w>\": 25037,\n  \"collapses</w>\": 43601,\n  \"collar\": 39662,\n  \"collar</w>\": 13497,\n  \"collateral</w>\": 44512,\n  \"colle\": 1801,\n  \"colleague</w>\": 13067,\n  \"colleagues</w>\": 8203,\n  \"collec\": 1733,\n  \"collect</w>\": 10186,\n  \"collected</w>\": 11980,\n  \"collecti\": 18530,\n  \"collectible</w>\": 25680,\n  \"collectibles</w>\": 21519,\n  \"collecting</w>\": 10325,\n  \"collection</w>\": 2548,\n  \"collections</w>\": 12760,\n  \"collective</w>\": 10162,\n  \"collectively</w>\": 40687,\n  \"collector</w>\": 13522,\n  \"collectors</w>\": 20540,\n  \"collects</w>\": 31576,\n  \"colleen</w>\": 31020,\n  \"college\": 13512,\n  \"college</w>\": 2229,\n  \"colleges</w>\": 17357,\n  \"collegi\": 16311,\n  \"collegiate</w>\": 18068,\n  \"colli\": 8262,\n  \"collide</w>\": 27214,\n  \"collie</w>\": 30611,\n  \"collier</w>\": 35748,\n  \"collin\": 24056,\n  \"collin</w>\": 32116,\n  \"colling\": 32319,\n  \"collingwood</w>\": 45873,\n  \"collins</w>\": 8684,\n  \"collision</w>\": 15407,\n  \"collo\": 25115,\n  \"colloqui\": 37243,\n  \"colloquium</w>\": 46514,\n  \"collu\": 25658,\n  \"collusion</w>\": 33864,\n  \"colo\": 7300,\n  \"colo</w>\": 27288,\n  \"cologne</w>\": 22216,\n  \"cology</w>\": 19187,\n  \"colom\": 8987,\n  \"colombia</w>\": 12901,\n  \"colombian</w>\": 28701,\n  \"colombo</w>\": 33207,\n  \"colon\": 8280,\n  \"colon</w>\": 29050,\n  \"colonel</w>\": 22674,\n  \"coloni\": 22667,\n  \"colonial</w>\": 16530,\n  \"colonialism</w>\": 43385,\n  \"colonies</w>\": 38738,\n  \"colony</w>\": 18767,\n  \"color\": 4036,\n  \"color</w>\": 3140,\n  \"colorado\": 34580,\n  \"colorado</w>\": 6742,\n  \"colorec\": 41171,\n  \"colored</w>\": 11775,\n  \"colorful</w>\": 11444,\n  \"colori\": 28764,\n  \"coloring</w>\": 17696,\n  \"colorized</w>\": 46730,\n  \"colors</w>\": 5389,\n  \"colorstv</w>\": 28195,\n  \"colorway</w>\": 44576,\n  \"colossal</w>\": 40258,\n  \"colosse\": 48142,\n  \"colossus</w>\": 34022,\n  \"colour\": 10240,\n  \"colour</w>\": 4769,\n  \"coloured</w>\": 17111,\n  \"colourful</w>\": 15562,\n  \"colouring</w>\": 31803,\n  \"colours</w>\": 7626,\n  \"cols</w>\": 35726,\n  \"colt</w>\": 19726,\n  \"colton</w>\": 32249,\n  \"coltrane</w>\": 42333,\n  \"colts</w>\": 16135,\n  \"colum\": 4164,\n  \"columb\": 31043,\n  \"columbi\": 25947,\n  \"columbia</w>\": 9410,\n  \"columbus</w>\": 11273,\n  \"column</w>\": 10593,\n  \"columnist</w>\": 28958,\n  \"columns</w>\": 29056,\n  \"com\": 610,\n  \"com</w>\": 2464,\n  \"coma</w>\": 19620,\n  \"comb\": 3587,\n  \"comb</w>\": 16380,\n  \"combat\": 35083,\n  \"combat</w>\": 9275,\n  \"combating</w>\": 46121,\n  \"combe</w>\": 14363,\n  \"combin\": 25112,\n  \"combination</w>\": 11312,\n  \"combinations</w>\": 34950,\n  \"combine</w>\": 12919,\n  \"combined</w>\": 10427,\n  \"combines</w>\": 22991,\n  \"combining</w>\": 23561,\n  \"combo</w>\": 10155,\n  \"combos</w>\": 48117,\n  \"combs</w>\": 30694,\n  \"combu\": 35629,\n  \"combustion</w>\": 44654,\n  \"comcast</w>\": 30043,\n  \"come\": 4225,\n  \"come</w>\": 891,\n  \"comeback</w>\": 8234,\n  \"comedian</w>\": 13848,\n  \"comedians</w>\": 33758,\n  \"comedic</w>\": 43360,\n  \"comedy\": 19346,\n  \"comedy</w>\": 4749,\n  \"comer\": 42997,\n  \"comer</w>\": 20916,\n  \"comers</w>\": 34436,\n  \"comes</w>\": 2091,\n  \"comet</w>\": 21405,\n  \"comets</w>\": 40636,\n  \"comey</w>\": 22957,\n  \"comfor\": 6563,\n  \"comfort\": 44000,\n  \"comfort</w>\": 7808,\n  \"comfortable</w>\": 8652,\n  \"comfortably</w>\": 30392,\n  \"comforting</w>\": 33835,\n  \"comforts</w>\": 42243,\n  \"comfy</w>\": 15736,\n  \"comi\": 40781,\n  \"comic\": 7729,\n  \"comic</w>\": 4962,\n  \"comicart</w>\": 46018,\n  \"comicbook</w>\": 46564,\n  \"comicbooks</w>\": 22018,\n  \"comiccon</w>\": 18379,\n  \"comicon</w>\": 43820,\n  \"comics</w>\": 4256,\n  \"comin</w>\": 18164,\n  \"coming\": 14916,\n  \"coming</w>\": 1171,\n  \"comingsoon</w>\": 19894,\n  \"comm\": 965,\n  \"comm</w>\": 11413,\n  \"comman\": 39780,\n  \"command\": 18391,\n  \"command</w>\": 11350,\n  \"commander</w>\": 11265,\n  \"commanders</w>\": 41667,\n  \"commanding</w>\": 36933,\n  \"commandments</w>\": 43409,\n  \"commando</w>\": 31361,\n  \"commands</w>\": 38163,\n  \"comme</w>\": 29692,\n  \"commemor\": 9495,\n  \"commemorate</w>\": 21242,\n  \"commemorates</w>\": 45149,\n  \"commemorating</w>\": 28734,\n  \"commemoration</w>\": 29288,\n  \"commemorative</w>\": 24623,\n  \"commen\": 15795,\n  \"commence</w>\": 25059,\n  \"commenced</w>\": 43908,\n  \"commencement</w>\": 21666,\n  \"commences</w>\": 48551,\n  \"commend\": 37555,\n  \"commended</w>\": 40702,\n  \"comment\": 20035,\n  \"comment</w>\": 5761,\n  \"commentary</w>\": 14146,\n  \"commentator</w>\": 32016,\n  \"commented</w>\": 28328,\n  \"commenting</w>\": 37292,\n  \"comments</w>\": 6606,\n  \"commer\": 4028,\n  \"commerce</w>\": 8333,\n  \"commerci\": 15601,\n  \"commercial\": 31802,\n  \"commercial</w>\": 6287,\n  \"commercials</w>\": 30724,\n  \"commish</w>\": 45399,\n  \"commissi\": 6000,\n  \"commission</w>\": 5292,\n  \"commissioned</w>\": 16565,\n  \"commissioner</w>\": 10221,\n  \"commissioners</w>\": 30702,\n  \"commissioning</w>\": 29585,\n  \"commissions</w>\": 20668,\n  \"commit\": 3041,\n  \"commit</w>\": 11797,\n  \"commitment</w>\": 7770,\n  \"commitments</w>\": 32136,\n  \"commits</w>\": 20241,\n  \"committed</w>\": 7907,\n  \"committee</w>\": 5636,\n  \"committees</w>\": 40504,\n  \"committing</w>\": 21937,\n  \"commod\": 9496,\n  \"commodities</w>\": 30350,\n  \"commodity</w>\": 29041,\n  \"commodore</w>\": 31129,\n  \"common\": 8414,\n  \"common</w>\": 4176,\n  \"commonly</w>\": 20344,\n  \"commons</w>\": 16653,\n  \"commonwealth</w>\": 16569,\n  \"comms</w>\": 18832,\n  \"commu\": 9561,\n  \"commun\": 1515,\n  \"communal</w>\": 32809,\n  \"communi\": 16164,\n  \"communic\": 4784,\n  \"communicate</w>\": 19809,\n  \"communication</w>\": 7999,\n  \"communications</w>\": 10052,\n  \"communion</w>\": 28579,\n  \"communism</w>\": 35387,\n  \"communist</w>\": 18602,\n  \"communities</w>\": 6361,\n  \"community\": 14784,\n  \"community</w>\": 1927,\n  \"commute</w>\": 15898,\n  \"commuter</w>\": 27782,\n  \"commuters</w>\": 30823,\n  \"commuting</w>\": 43503,\n  \"como</w>\": 16236,\n  \"comp\": 2561,\n  \"comp</w>\": 11679,\n  \"compac\": 40014,\n  \"compact</w>\": 13690,\n  \"compan\": 1995,\n  \"companies</w>\": 5361,\n  \"companion</w>\": 14963,\n  \"companions</w>\": 37124,\n  \"company</w>\": 2634,\n  \"compar\": 7580,\n  \"comparable</w>\": 27092,\n  \"comparative</w>\": 33388,\n  \"compare</w>\": 13771,\n  \"compared</w>\": 10544,\n  \"compares</w>\": 25104,\n  \"comparing</w>\": 20564,\n  \"comparison</w>\": 14186,\n  \"comparisons</w>\": 40870,\n  \"compart\": 30072,\n  \"compartment</w>\": 40383,\n  \"compass</w>\": 19438,\n  \"compassion</w>\": 14463,\n  \"compassionate</w>\": 30193,\n  \"compati\": 17295,\n  \"compatibility</w>\": 41614,\n  \"compatible</w>\": 21286,\n  \"compe\": 5254,\n  \"compelled</w>\": 49375,\n  \"compelling</w>\": 21766,\n  \"compen\": 42079,\n  \"compens\": 15172,\n  \"compensation</w>\": 18663,\n  \"compet\": 2932,\n  \"compete</w>\": 10038,\n  \"competed</w>\": 27767,\n  \"competen\": 31853,\n  \"competence</w>\": 31165,\n  \"competency</w>\": 49293,\n  \"competent</w>\": 28113,\n  \"competes</w>\": 39826,\n  \"competing</w>\": 13068,\n  \"competit\": 15892,\n  \"competiti\": 32581,\n  \"competition</w>\": 3742,\n  \"competitions</w>\": 23259,\n  \"competitive</w>\": 10687,\n  \"competitiveness</w>\": 43209,\n  \"competitor</w>\": 26633,\n  \"competitors</w>\": 23638,\n  \"compilation</w>\": 20446,\n  \"compiled</w>\": 34579,\n  \"compla\": 7428,\n  \"complain</w>\": 19292,\n  \"complained</w>\": 42029,\n  \"complaining</w>\": 20812,\n  \"complains</w>\": 46363,\n  \"complaint</w>\": 20391,\n  \"complaints</w>\": 20020,\n  \"comple\": 1730,\n  \"complement</w>\": 36624,\n  \"complementary</w>\": 48953,\n  \"complete</w>\": 3263,\n  \"completed</w>\": 5976,\n  \"completely</w>\": 5989,\n  \"completes</w>\": 19321,\n  \"completing</w>\": 14949,\n  \"completion</w>\": 15915,\n  \"complex\": 16099,\n  \"complex</w>\": 6324,\n  \"complexes</w>\": 47870,\n  \"complexion</w>\": 47732,\n  \"complexity</w>\": 24815,\n  \"compli\": 5270,\n  \"compliance</w>\": 14658,\n  \"compliant</w>\": 29893,\n  \"complic\": 11460,\n  \"complicated</w>\": 16621,\n  \"complications</w>\": 29936,\n  \"compliment</w>\": 25116,\n  \"complimentary</w>\": 20948,\n  \"compliments</w>\": 25477,\n  \"comply</w>\": 36281,\n  \"component</w>\": 21284,\n  \"components</w>\": 16816,\n  \"compos\": 7783,\n  \"compose</w>\": 43659,\n  \"composed</w>\": 19916,\n  \"composer</w>\": 12104,\n  \"composers</w>\": 33314,\n  \"composing</w>\": 40412,\n  \"composite</w>\": 21606,\n  \"composites</w>\": 45395,\n  \"composition</w>\": 17510,\n  \"compositions</w>\": 44652,\n  \"compost\": 46002,\n  \"compost</w>\": 33307,\n  \"compound</w>\": 19980,\n  \"compounds</w>\": 33991,\n  \"compre\": 8483,\n  \"compreh\": 42976,\n  \"comprehen\": 12050,\n  \"comprehend</w>\": 48230,\n  \"comprehensive</w>\": 13854,\n  \"compress\": 33353,\n  \"compressed</w>\": 42359,\n  \"compression</w>\": 25638,\n  \"compressor</w>\": 39607,\n  \"compri\": 29445,\n  \"compromise</w>\": 26611,\n  \"compromised</w>\": 38576,\n  \"compromising</w>\": 45436,\n  \"comps</w>\": 48665,\n  \"compton</w>\": 28364,\n  \"compu\": 11639,\n  \"compul\": 25869,\n  \"compulsory</w>\": 39345,\n  \"computing</w>\": 12732,\n  \"comra\": 25553,\n  \"comrade</w>\": 30844,\n  \"comrades</w>\": 29282,\n  \"coms</w>\": 30493,\n  \"con\": 616,\n  \"con</w>\": 2457,\n  \"cona</w>\": 30605,\n  \"conan</w>\": 24750,\n  \"conce\": 9145,\n  \"concealed</w>\": 35419,\n  \"conceded</w>\": 37895,\n  \"conceived</w>\": 39725,\n  \"concentr\": 11085,\n  \"concentrate</w>\": 30846,\n  \"concentrated</w>\": 36776,\n  \"concentration</w>\": 18565,\n  \"concep\": 8389,\n  \"concepcion</w>\": 47035,\n  \"concept</w>\": 6353,\n  \"conceptart</w>\": 31162,\n  \"conception</w>\": 30510,\n  \"conceptions</w>\": 40307,\n  \"concepts</w>\": 16763,\n  \"conceptu\": 42745,\n  \"conceptual</w>\": 34070,\n  \"concer\": 2228,\n  \"concern</w>\": 12928,\n  \"concerned</w>\": 12020,\n  \"concerning</w>\": 21772,\n  \"concerns</w>\": 11134,\n  \"concert\": 32180,\n  \"concert</w>\": 3066,\n  \"concerto</w>\": 24710,\n  \"concerts</w>\": 14418,\n  \"concession</w>\": 38117,\n  \"concessions</w>\": 43981,\n  \"concier\": 28859,\n  \"concierge</w>\": 39850,\n  \"conclave</w>\": 38098,\n  \"conclu\": 9627,\n  \"conclude</w>\": 37525,\n  \"concluded</w>\": 27825,\n  \"concludes</w>\": 30634,\n  \"conclusion</w>\": 20932,\n  \"conclusions</w>\": 39507,\n  \"conco\": 43034,\n  \"concor\": 19913,\n  \"concord</w>\": 26448,\n  \"concordia</w>\": 35492,\n  \"concours</w>\": 36282,\n  \"concourse</w>\": 37793,\n  \"concre\": 43658,\n  \"concrete</w>\": 9637,\n  \"concussion</w>\": 28321,\n  \"condem\": 13287,\n  \"condemn</w>\": 27212,\n  \"condemned</w>\": 35145,\n  \"condemns</w>\": 32092,\n  \"conden\": 24816,\n  \"conditi\": 11170,\n  \"condition\": 36978,\n  \"condition</w>\": 7336,\n  \"conditional</w>\": 24671,\n  \"conditioned</w>\": 37014,\n  \"conditioner</w>\": 31239,\n  \"conditioning</w>\": 18181,\n  \"conditions</w>\": 5892,\n  \"condo</w>\": 19952,\n  \"condol\": 18661,\n  \"condolences</w>\": 20836,\n  \"condom</w>\": 39021,\n  \"condomin\": 42589,\n  \"condoms</w>\": 37878,\n  \"condor</w>\": 47643,\n  \"condos</w>\": 42342,\n  \"condu\": 40772,\n  \"conduc\": 5379,\n  \"conduct</w>\": 11647,\n  \"conducted</w>\": 13080,\n  \"conducting</w>\": 16787,\n  \"conductor</w>\": 22317,\n  \"conducts</w>\": 32084,\n  \"cone\": 39279,\n  \"cone</w>\": 10266,\n  \"cones</w>\": 26718,\n  \"coney</w>\": 41837,\n  \"conf</w>\": 6477,\n  \"confe\": 1968,\n  \"confeder\": 17104,\n  \"confederate</w>\": 24864,\n  \"confederation</w>\": 43484,\n  \"conferen\": 37961,\n  \"conference</w>\": 2230,\n  \"conferences</w>\": 22811,\n  \"conferencing</w>\": 47320,\n  \"confess</w>\": 38860,\n  \"confession</w>\": 22572,\n  \"confessions</w>\": 29404,\n  \"confetti</w>\": 37923,\n  \"confi\": 5005,\n  \"confidence</w>\": 8510,\n  \"confident</w>\": 12365,\n  \"confidential</w>\": 28712,\n  \"configu\": 46746,\n  \"configur\": 26950,\n  \"configuration</w>\": 33378,\n  \"confin\": 45316,\n  \"confined</w>\": 40973,\n  \"confir\": 3930,\n  \"confirm</w>\": 12130,\n  \"confirmation</w>\": 19645,\n  \"confirmed</w>\": 6346,\n  \"confirming</w>\": 38433,\n  \"confirms</w>\": 11803,\n  \"confis\": 36285,\n  \"confit</w>\": 42241,\n  \"confl\": 8173,\n  \"conflic\": 19029,\n  \"conflict</w>\": 10397,\n  \"conflicting</w>\": 43894,\n  \"conflicts</w>\": 28713,\n  \"confor\": 40933,\n  \"confron\": 20033,\n  \"confront</w>\": 38382,\n  \"confrontation</w>\": 41478,\n  \"confu\": 6890,\n  \"confuse</w>\": 37503,\n  \"confused</w>\": 10946,\n  \"confusing</w>\": 24683,\n  \"confusion</w>\": 20493,\n  \"cong</w>\": 24407,\n  \"conge\": 20013,\n  \"congestion</w>\": 24432,\n  \"congo</w>\": 20334,\n  \"congr\": 1227,\n  \"congrats</w>\": 1887,\n  \"congratul\": 1750,\n  \"congratulate</w>\": 16633,\n  \"congratulated</w>\": 42004,\n  \"congratulates</w>\": 24580,\n  \"congratulating</w>\": 30967,\n  \"congratulation</w>\": 24751,\n  \"congratulations</w>\": 1864,\n  \"congre\": 7947,\n  \"congreg\": 40727,\n  \"congregation</w>\": 32618,\n  \"congress\": 12452,\n  \"congress</w>\": 4599,\n  \"congressional</w>\": 15239,\n  \"congressman</w>\": 17145,\n  \"congresswoman</w>\": 37317,\n  \"coni\": 39031,\n  \"coni</w>\": 36651,\n  \"conj\": 41543,\n  \"conju\": 33821,\n  \"conjunction</w>\": 34226,\n  \"conley</w>\": 44536,\n  \"conline</w>\": 37593,\n  \"conn\": 41836,\n  \"conn</w>\": 20329,\n  \"conne\": 8437,\n  \"connec\": 29933,\n  \"connect</w>\": 19969,\n  \"connected</w>\": 27506,\n  \"connecting</w>\": 41429,\n  \"connection</w>\": 26840,\n  \"connections</w>\": 37161,\n  \"connie</w>\": 25739,\n  \"connoisse\": 46012,\n  \"connol\": 27739,\n  \"connolly</w>\": 29537,\n  \"connor\": 21984,\n  \"connor</w>\": 10218,\n  \"conom\": 2664,\n  \"conomy</w>\": 22529,\n  \"conor\": 29955,\n  \"conor</w>\": 19478,\n  \"conqu\": 13382,\n  \"conquer\": 38585,\n  \"conquer</w>\": 19821,\n  \"conquered</w>\": 27099,\n  \"conquering</w>\": 43778,\n  \"conquest</w>\": 35367,\n  \"conrad</w>\": 22073,\n  \"cons</w>\": 10311,\n  \"consci\": 9427,\n  \"conscience</w>\": 27310,\n  \"conscious</w>\": 14914,\n  \"consciously</w>\": 46755,\n  \"consciousness</w>\": 17894,\n  \"conse\": 34887,\n  \"consecu\": 12084,\n  \"consecutive</w>\": 12413,\n  \"consen\": 23110,\n  \"consensus</w>\": 25071,\n  \"consent</w>\": 21922,\n  \"consequ\": 13003,\n  \"consequence</w>\": 42262,\n  \"consequences</w>\": 15682,\n  \"conserv\": 4649,\n  \"conservancy</w>\": 46729,\n  \"conservation\": 37616,\n  \"conservation</w>\": 8322,\n  \"conservative</w>\": 11421,\n  \"conservatives</w>\": 17631,\n  \"conservatory</w>\": 32140,\n  \"conserve</w>\": 34231,\n  \"consi\": 2899,\n  \"consider\": 12471,\n  \"consider</w>\": 6734,\n  \"considerable</w>\": 38256,\n  \"considerably</w>\": 38510,\n  \"consideration</w>\": 24310,\n  \"considerations</w>\": 33700,\n  \"considered</w>\": 9487,\n  \"considering</w>\": 10761,\n  \"considers</w>\": 24691,\n  \"consist\": 10410,\n  \"consist</w>\": 33735,\n  \"consisted</w>\": 49354,\n  \"consistency</w>\": 25683,\n  \"consistent</w>\": 16439,\n  \"consistently</w>\": 23799,\n  \"consisting</w>\": 39241,\n  \"consists</w>\": 23458,\n  \"consol\": 27869,\n  \"consolation</w>\": 38888,\n  \"console</w>\": 13403,\n  \"consoles</w>\": 33136,\n  \"consoli\": 21586,\n  \"consolidation</w>\": 41111,\n  \"consor\": 27108,\n  \"consortium</w>\": 29988,\n  \"conspir\": 12680,\n  \"conspiracy</w>\": 15236,\n  \"const\": 3826,\n  \"constable</w>\": 29179,\n  \"constan\": 38718,\n  \"constance</w>\": 40682,\n  \"constant\": 32000,\n  \"constant</w>\": 13111,\n  \"constantine</w>\": 30640,\n  \"constantly</w>\": 14336,\n  \"constell\": 21913,\n  \"constellation</w>\": 25991,\n  \"constitu\": 6299,\n  \"constituency</w>\": 22464,\n  \"constituents</w>\": 32075,\n  \"constitution</w>\": 12157,\n  \"constitutional</w>\": 16091,\n  \"constra\": 28973,\n  \"constraints</w>\": 41910,\n  \"constru\": 3983,\n  \"construc\": 13321,\n  \"construct</w>\": 24467,\n  \"constructed</w>\": 16876,\n  \"constructing</w>\": 33653,\n  \"construction\": 48873,\n  \"construction</w>\": 4585,\n  \"constructive</w>\": 31810,\n  \"consu\": 4689,\n  \"consul\": 5295,\n  \"consul</w>\": 33630,\n  \"consulate</w>\": 34341,\n  \"consult\": 9438,\n  \"consult</w>\": 26727,\n  \"consultancy</w>\": 31735,\n  \"consultant</w>\": 14196,\n  \"consultants</w>\": 27203,\n  \"consultation</w>\": 15777,\n  \"consultations</w>\": 43424,\n  \"consulting</w>\": 15883,\n  \"consume</w>\": 28919,\n  \"consumed</w>\": 29653,\n  \"consumer\": 34408,\n  \"consumer</w>\": 10422,\n  \"consumers</w>\": 14014,\n  \"consuming</w>\": 30607,\n  \"consumption</w>\": 14904,\n  \"cont\": 2036,\n  \"cont</w>\": 21425,\n  \"contact\": 39367,\n  \"contact</w>\": 3523,\n  \"contacted</w>\": 37331,\n  \"contacts</w>\": 22789,\n  \"contag\": 29259,\n  \"contagious</w>\": 33984,\n  \"contain\": 9948,\n  \"contain</w>\": 15187,\n  \"contained</w>\": 23836,\n  \"container</w>\": 14913,\n  \"containers</w>\": 20448,\n  \"containing</w>\": 20281,\n  \"contains</w>\": 12844,\n  \"contamin\": 24662,\n  \"contaminated</w>\": 35773,\n  \"contamination</w>\": 31770,\n  \"conte\": 15402,\n  \"conte</w>\": 26882,\n  \"contempl\": 21924,\n  \"contemplating</w>\": 33854,\n  \"contempor\": 14538,\n  \"contemporary\": 16607,\n  \"contemporary</w>\": 8859,\n  \"contemporaryart</w>\": 20212,\n  \"contempt</w>\": 39293,\n  \"conten\": 42201,\n  \"contender</w>\": 23573,\n  \"contenders</w>\": 29711,\n  \"content\": 15526,\n  \"content</w>\": 4750,\n  \"contentmarketing</w>\": 20429,\n  \"contents</w>\": 14850,\n  \"contest\": 23103,\n  \"contest</w>\": 4576,\n  \"contestalert</w>\": 27313,\n  \"contestant</w>\": 25682,\n  \"contestants</w>\": 28062,\n  \"contested</w>\": 37845,\n  \"contests</w>\": 32210,\n  \"contex\": 42015,\n  \"context</w>\": 13089,\n  \"conti\": 46431,\n  \"conti</w>\": 40842,\n  \"contin\": 1918,\n  \"continent</w>\": 19623,\n  \"continental</w>\": 14089,\n  \"continents</w>\": 38642,\n  \"conting\": 27104,\n  \"contingent</w>\": 36467,\n  \"continu\": 4688,\n  \"continually</w>\": 34086,\n  \"continuation</w>\": 38964,\n  \"continue</w>\": 3942,\n  \"continued</w>\": 10150,\n  \"continues</w>\": 4305,\n  \"continuing</w>\": 11009,\n  \"continuity</w>\": 34035,\n  \"continuous</w>\": 17033,\n  \"continuously</w>\": 29634,\n  \"continuum</w>\": 44978,\n  \"contour</w>\": 34733,\n  \"contr\": 22871,\n  \"contra\": 9880,\n  \"contra</w>\": 38620,\n  \"contrac\": 7581,\n  \"contracep\": 35109,\n  \"contract</w>\": 6120,\n  \"contracting</w>\": 39091,\n  \"contractor</w>\": 21429,\n  \"contractors</w>\": 22427,\n  \"contracts</w>\": 16563,\n  \"contradic\": 27957,\n  \"contrary</w>\": 32805,\n  \"contrast</w>\": 18501,\n  \"contrasting</w>\": 40758,\n  \"contribu\": 4753,\n  \"contribute</w>\": 14112,\n  \"contributed</w>\": 19397,\n  \"contributes</w>\": 34203,\n  \"contributing</w>\": 21762,\n  \"contribution</w>\": 11116,\n  \"contributions</w>\": 14465,\n  \"contributor</w>\": 24553,\n  \"contributors</w>\": 32908,\n  \"contro\": 2372,\n  \"control\": 9963,\n  \"control</w>\": 3366,\n  \"controlled</w>\": 14140,\n  \"controller</w>\": 12929,\n  \"controllers</w>\": 30374,\n  \"controlling</w>\": 26427,\n  \"controls</w>\": 15746,\n  \"controversi\": 13674,\n  \"controversial</w>\": 14617,\n  \"controversy</w>\": 18659,\n  \"conv</w>\": 48382,\n  \"conve\": 18421,\n  \"conven\": 7283,\n  \"conveni\": 33278,\n  \"convenience</w>\": 17859,\n  \"convenient</w>\": 18978,\n  \"conveniently</w>\": 40844,\n  \"convention</w>\": 6752,\n  \"conventional</w>\": 20835,\n  \"conventions</w>\": 41404,\n  \"conver\": 6336,\n  \"convergence</w>\": 35381,\n  \"convers\": 4577,\n  \"conversation</w>\": 5690,\n  \"conversations</w>\": 12326,\n  \"converse</w>\": 24149,\n  \"conversion</w>\": 15111,\n  \"conversions</w>\": 44137,\n  \"convert</w>\": 20074,\n  \"converted</w>\": 20808,\n  \"converter</w>\": 34611,\n  \"convertible</w>\": 19608,\n  \"converting</w>\": 34674,\n  \"converts</w>\": 42470,\n  \"convey</w>\": 38342,\n  \"convic\": 11150,\n  \"convicted</w>\": 18668,\n  \"conviction</w>\": 24967,\n  \"convictions</w>\": 44366,\n  \"convin\": 12889,\n  \"convince</w>\": 20351,\n  \"convinced</w>\": 17388,\n  \"convincing</w>\": 27742,\n  \"convo</w>\": 19372,\n  \"convocation</w>\": 30674,\n  \"convos</w>\": 44842,\n  \"convoy</w>\": 30292,\n  \"conway</w>\": 21410,\n  \"conwy</w>\": 48971,\n  \"cony</w>\": 14501,\n  \"coo\": 1664,\n  \"coo</w>\": 21691,\n  \"coogs</w>\": 47624,\n  \"cook\": 9726,\n  \"cook</w>\": 5977,\n  \"cookbook</w>\": 21086,\n  \"cooke</w>\": 29979,\n  \"cooked</w>\": 11452,\n  \"cooker</w>\": 23806,\n  \"cookery</w>\": 38779,\n  \"cookie</w>\": 9367,\n  \"cookies</w>\": 8320,\n  \"cookin</w>\": 46610,\n  \"cooking\": 39248,\n  \"cooking</w>\": 6283,\n  \"cookout</w>\": 39743,\n  \"cooks</w>\": 24256,\n  \"cool\": 5594,\n  \"cool</w>\": 2077,\n  \"cooled</w>\": 37170,\n  \"cooler</w>\": 11078,\n  \"coolest</w>\": 10566,\n  \"cooling</w>\": 15291,\n  \"coom\": 41726,\n  \"coon\": 34260,\n  \"coon</w>\": 16958,\n  \"coop\": 39917,\n  \"coop</w>\": 18910,\n  \"cooper\": 7264,\n  \"cooper</w>\": 8133,\n  \"cooperate</w>\": 42936,\n  \"cooperation</w>\": 11785,\n  \"cooperative</w>\": 24517,\n  \"coops</w>\": 48531,\n  \"coordin\": 8187,\n  \"coordinate</w>\": 38250,\n  \"coordinated</w>\": 32540,\n  \"coordinating</w>\": 40075,\n  \"coordination</w>\": 25611,\n  \"coordinator</w>\": 13967,\n  \"coors</w>\": 36025,\n  \"cop\": 3196,\n  \"cop</w>\": 7070,\n  \"copa</w>\": 22749,\n  \"copd</w>\": 45876,\n  \"cope\": 47635,\n  \"cope</w>\": 12564,\n  \"copeland</w>\": 37604,\n  \"copen\": 15637,\n  \"copenhagen</w>\": 17390,\n  \"coper\": 41891,\n  \"copernic\": 45519,\n  \"copied</w>\": 36770,\n  \"copies</w>\": 9851,\n  \"coping</w>\": 30545,\n  \"copolitics</w>\": 45846,\n  \"copp\": 20937,\n  \"copped</w>\": 42229,\n  \"copper\": 24741,\n  \"copper</w>\": 10333,\n  \"coppola</w>\": 47427,\n  \"cops</w>\": 10719,\n  \"copter</w>\": 28049,\n  \"copy\": 11376,\n  \"copy</w>\": 4509,\n  \"copying</w>\": 38925,\n  \"copyright</w>\": 15778,\n  \"cor\": 851,\n  \"cor</w>\": 18559,\n  \"cora</w>\": 34953,\n  \"coral\": 31220,\n  \"coral</w>\": 12054,\n  \"corbett</w>\": 35699,\n  \"corbin</w>\": 35578,\n  \"corbyn</w>\": 14026,\n  \"cord\": 40893,\n  \"cord</w>\": 11181,\n  \"corden</w>\": 41999,\n  \"cordi\": 41681,\n  \"cordless</w>\": 44412,\n  \"cords</w>\": 22164,\n  \"core\": 19622,\n  \"core</w>\": 5000,\n  \"cores</w>\": 37874,\n  \"corey\": 31279,\n  \"corey</w>\": 15288,\n  \"corgi</w>\": 31320,\n  \"cori\": 26508,\n  \"coriander</w>\": 37491,\n  \"corin\": 17716,\n  \"corinthians</w>\": 34471,\n  \"cork\": 18148,\n  \"cork</w>\": 10376,\n  \"corn\": 5202,\n  \"corn</w>\": 5894,\n  \"cornelius</w>\": 45865,\n  \"cornell\": 38689,\n  \"cornell</w>\": 20859,\n  \"corner\": 18509,\n  \"corner</w>\": 5253,\n  \"corners</w>\": 19584,\n  \"cornerstone</w>\": 36280,\n  \"cornish</w>\": 23774,\n  \"cornwall\": 37903,\n  \"cornwall</w>\": 10777,\n  \"coron\": 13210,\n  \"corona</w>\": 25564,\n  \"coronado</w>\": 43946,\n  \"coronary</w>\": 45955,\n  \"coronation</w>\": 25014,\n  \"coroner</w>\": 47241,\n  \"corp\": 29203,\n  \"corp</w>\": 10918,\n  \"corpor\": 4258,\n  \"corporal</w>\": 42445,\n  \"corporate\": 33877,\n  \"corporate</w>\": 6838,\n  \"corporation</w>\": 11282,\n  \"corporations</w>\": 25482,\n  \"corps</w>\": 11330,\n  \"corpse</w>\": 29408,\n  \"corpus</w>\": 31672,\n  \"correc\": 5011,\n  \"correct</w>\": 8340,\n  \"corrected</w>\": 35628,\n  \"correction</w>\": 20843,\n  \"correctional</w>\": 38030,\n  \"corrections</w>\": 37507,\n  \"correctly</w>\": 15359,\n  \"correlation</w>\": 29218,\n  \"correspon\": 20203,\n  \"correspondent</w>\": 29996,\n  \"corri\": 12974,\n  \"corridor</w>\": 20592,\n  \"corrie</w>\": 23961,\n  \"corro\": 24936,\n  \"corro</w>\": 42033,\n  \"corrosion</w>\": 39191,\n  \"corru\": 6501,\n  \"corrup\": 30429,\n  \"corrupt</w>\": 15194,\n  \"corruption</w>\": 9141,\n  \"corsa</w>\": 47670,\n  \"corsair</w>\": 42367,\n  \"corset</w>\": 40408,\n  \"cortex</w>\": 40109,\n  \"cortez</w>\": 30461,\n  \"corvette</w>\": 24367,\n  \"cory\": 23221,\n  \"cory</w>\": 18329,\n  \"cos\": 5865,\n  \"cos</w>\": 5700,\n  \"cosby</w>\": 30324,\n  \"cosc\": 45944,\n  \"coscino</w>\": 47909,\n  \"cose</w>\": 26495,\n  \"cosm\": 37486,\n  \"cosme\": 9628,\n  \"cosmetic</w>\": 23918,\n  \"cosmetics</w>\": 12896,\n  \"cosmic\": 47398,\n  \"cosmic</w>\": 18304,\n  \"cosmo\": 12829,\n  \"cosmo</w>\": 32072,\n  \"cosmopolitan</w>\": 35518,\n  \"cosmos</w>\": 22151,\n  \"cospla\": 15149,\n  \"cosplay\": 42401,\n  \"cosplay</w>\": 6435,\n  \"cosplayer</w>\": 30215,\n  \"cosplaying</w>\": 46701,\n  \"cost\": 11360,\n  \"cost</w>\": 4713,\n  \"costa</w>\": 10480,\n  \"costar\": 28659,\n  \"costarica</w>\": 31272,\n  \"costco</w>\": 31045,\n  \"costello</w>\": 30667,\n  \"costing</w>\": 39193,\n  \"costly</w>\": 30170,\n  \"costs</w>\": 7628,\n  \"costu\": 5786,\n  \"costume</w>\": 7235,\n  \"costumes</w>\": 15150,\n  \"cosy</w>\": 22848,\n  \"cot\": 4718,\n  \"cot</w>\": 5871,\n  \"cote\": 44234,\n  \"cote</w>\": 20751,\n  \"cotland</w>\": 32576,\n  \"cotsw\": 23303,\n  \"cotswolds</w>\": 35546,\n  \"cott\": 8211,\n  \"cott</w>\": 11349,\n  \"cottage</w>\": 12155,\n  \"cottages</w>\": 34405,\n  \"cotton\": 22218,\n  \"cotton</w>\": 7050,\n  \"cou\": 1368,\n  \"couch</w>\": 12724,\n  \"cougar\": 35028,\n  \"cougar</w>\": 27042,\n  \"cougars</w>\": 20425,\n  \"cough\": 35631,\n  \"cough</w>\": 18498,\n  \"cougs</w>\": 28482,\n  \"coul\": 22483,\n  \"could\": 44812,\n  \"could</w>\": 1510,\n  \"couldn</w>\": 4072,\n  \"couldnt</w>\": 29042,\n  \"coulter</w>\": 42291,\n  \"coun\": 939,\n  \"counc\": 12927,\n  \"council\": 18187,\n  \"council</w>\": 3620,\n  \"councill\": 15732,\n  \"councillor</w>\": 21179,\n  \"councillors</w>\": 29695,\n  \"councilman</w>\": 40833,\n  \"councils</w>\": 29938,\n  \"counsel\": 13780,\n  \"counsel</w>\": 19814,\n  \"counseling</w>\": 25000,\n  \"counsell\": 47510,\n  \"counselling</w>\": 40581,\n  \"counselor</w>\": 26148,\n  \"counselors</w>\": 38688,\n  \"count\": 6073,\n  \"count</w>\": 5887,\n  \"countdown\": 39559,\n  \"countdown</w>\": 7500,\n  \"counted</w>\": 23149,\n  \"counter\": 10134,\n  \"counter</w>\": 7352,\n  \"counterfe\": 33067,\n  \"counterfeit</w>\": 44242,\n  \"counterpart</w>\": 39216,\n  \"counterparts</w>\": 42106,\n  \"counters</w>\": 46170,\n  \"countess</w>\": 46276,\n  \"counties</w>\": 12338,\n  \"counting</w>\": 9723,\n  \"countless</w>\": 21819,\n  \"countries</w>\": 5489,\n  \"country\": 7896,\n  \"country</w>\": 2157,\n  \"countryfile</w>\": 47023,\n  \"countrymusic</w>\": 30372,\n  \"countryside</w>\": 16303,\n  \"counts</w>\": 12264,\n  \"county\": 18734,\n  \"county</w>\": 2116,\n  \"coup\": 9871,\n  \"coup</w>\": 16479,\n  \"coupe</w>\": 16773,\n  \"couple\": 40136,\n  \"couple</w>\": 3377,\n  \"coupled</w>\": 37153,\n  \"couples</w>\": 14752,\n  \"coupling</w>\": 45595,\n  \"coupon</w>\": 14019,\n  \"coupons</w>\": 23945,\n  \"cour\": 1391,\n  \"coura\": 4436,\n  \"courage</w>\": 9828,\n  \"courageous</w>\": 25005,\n  \"courier</w>\": 27217,\n  \"cours</w>\": 21493,\n  \"course\": 43225,\n  \"course</w>\": 2613,\n  \"courses</w>\": 9464,\n  \"court\": 16837,\n  \"court</w>\": 2908,\n  \"courte\": 5088,\n  \"courtesy</w>\": 5228,\n  \"courthouse</w>\": 22205,\n  \"courtney\": 33601,\n  \"courtney</w>\": 15990,\n  \"courtroom</w>\": 41071,\n  \"courts</w>\": 13514,\n  \"courty\": 20121,\n  \"courtyard</w>\": 21900,\n  \"cous</w>\": 48397,\n  \"cousin</w>\": 7780,\n  \"cousins</w>\": 14073,\n  \"cout\": 29118,\n  \"coutinho</w>\": 35530,\n  \"couture</w>\": 14808,\n  \"cov\": 19384,\n  \"cov</w>\": 48385,\n  \"cove\": 21700,\n  \"cove</w>\": 14708,\n  \"coven\": 12483,\n  \"covenant</w>\": 29647,\n  \"coventry</w>\": 18007,\n  \"cover\": 13534,\n  \"cover</w>\": 2202,\n  \"coverage</w>\": 6810,\n  \"covered</w>\": 5603,\n  \"covering</w>\": 9462,\n  \"covers</w>\": 7745,\n  \"covert</w>\": 40134,\n  \"coveted</w>\": 36119,\n  \"covington</w>\": 43196,\n  \"cow\": 5076,\n  \"cow</w>\": 9706,\n  \"cowan</w>\": 42699,\n  \"coward</w>\": 33729,\n  \"cowards</w>\": 48972,\n  \"cowboy\": 25833,\n  \"cowboy</w>\": 13657,\n  \"cowboys</w>\": 11864,\n  \"cowboysnation</w>\": 43082,\n  \"cowell</w>\": 39015,\n  \"cowgirl</w>\": 47090,\n  \"coworker</w>\": 30727,\n  \"coworkers</w>\": 30821,\n  \"coworking</w>\": 36034,\n  \"cows</w>\": 15204,\n  \"cowx</w>\": 23831,\n  \"cox\": 25784,\n  \"cox</w>\": 11597,\n  \"coy\": 12765,\n  \"coy</w>\": 15742,\n  \"coyi</w>\": 48407,\n  \"coyle</w>\": 45348,\n  \"coyne</w>\": 44729,\n  \"coyo\": 16614,\n  \"coyote</w>\": 26586,\n  \"coyotes</w>\": 30423,\n  \"coys</w>\": 19736,\n  \"coz\": 39922,\n  \"coz</w>\": 14282,\n  \"cozy</w>\": 14873,\n  \"cp\": 7905,\n  \"cp</w>\": 9130,\n  \"cpa</w>\": 30095,\n  \"cpac</w>\": 45731,\n  \"cpc</w>\": 26125,\n  \"cpd</w>\": 23402,\n  \"cpec</w>\": 48007,\n  \"cpfc</w>\": 27553,\n  \"cpi</w>\": 41795,\n  \"cpl</w>\": 26852,\n  \"cpr</w>\": 25134,\n  \"cps</w>\": 27078,\n  \"cpt</w>\": 32892,\n  \"cpu</w>\": 27700,\n  \"cq\": 48910,\n  \"cq</w>\": 48417,\n  \"cr\": 1075,\n  \"cr</w>\": 3483,\n  \"cra\": 1184,\n  \"cra</w>\": 18362,\n  \"crab\": 27382,\n  \"crab</w>\": 11574,\n  \"crabs</w>\": 30908,\n  \"crack\": 11222,\n  \"crack</w>\": 10334,\n  \"crackdown</w>\": 29527,\n  \"cracked</w>\": 19826,\n  \"cracker</w>\": 16298,\n  \"crackers</w>\": 26200,\n  \"cracking</w>\": 13008,\n  \"cracks</w>\": 21426,\n  \"cracy</w>\": 24749,\n  \"cradle</w>\": 29384,\n  \"crae</w>\": 40438,\n  \"craf\": 10873,\n  \"craft\": 7717,\n  \"craft</w>\": 3588,\n  \"craftbeer</w>\": 12371,\n  \"crafted</w>\": 12424,\n  \"crafthour</w>\": 42324,\n  \"crafting</w>\": 26886,\n  \"crafts\": 33276,\n  \"crafts</w>\": 13383,\n  \"craftsman</w>\": 39528,\n  \"craftsmanship</w>\": 36682,\n  \"crafty</w>\": 32317,\n  \"craic</w>\": 46962,\n  \"craig\": 14042,\n  \"craig</w>\": 8061,\n  \"craigslist</w>\": 43865,\n  \"cram\": 29809,\n  \"cramer</w>\": 44592,\n  \"cramps</w>\": 46106,\n  \"cran\": 7761,\n  \"cranberries</w>\": 49361,\n  \"cranberry</w>\": 23824,\n  \"crane</w>\": 14626,\n  \"cranes</w>\": 26979,\n  \"crani\": 45674,\n  \"crank\": 46246,\n  \"crank</w>\": 32283,\n  \"cranston</w>\": 44340,\n  \"crap</w>\": 11899,\n  \"crappy</w>\": 30475,\n  \"crash\": 37150,\n  \"crash</w>\": 5033,\n  \"crashed</w>\": 16638,\n  \"crashes</w>\": 17013,\n  \"crashing</w>\": 24991,\n  \"crat</w>\": 46696,\n  \"crate</w>\": 24756,\n  \"crater</w>\": 22663,\n  \"crates</w>\": 30172,\n  \"cratic</w>\": 32175,\n  \"crative</w>\": 39999,\n  \"crats</w>\": 43056,\n  \"crave</w>\": 33397,\n  \"craven</w>\": 33625,\n  \"craving</w>\": 18344,\n  \"cravings</w>\": 34476,\n  \"craw\": 7400,\n  \"crawfish</w>\": 42772,\n  \"crawford</w>\": 15918,\n  \"crawl</w>\": 20106,\n  \"crawler</w>\": 41012,\n  \"crawley</w>\": 42316,\n  \"crawling</w>\": 37066,\n  \"cray\": 24184,\n  \"cray</w>\": 27032,\n  \"crayon</w>\": 41801,\n  \"crayons</w>\": 43508,\n  \"craz\": 25776,\n  \"craze</w>\": 30637,\n  \"craziest</w>\": 32690,\n  \"craziness</w>\": 46436,\n  \"crazy\": 17540,\n  \"crazy</w>\": 3578,\n  \"crc</w>\": 25618,\n  \"cre\": 798,\n  \"cre</w>\": 17762,\n  \"cream\": 23184,\n  \"cream</w>\": 3867,\n  \"creams</w>\": 41447,\n  \"creamy</w>\": 17206,\n  \"crease</w>\": 48441,\n  \"create\": 30949,\n  \"create</w>\": 3380,\n  \"created</w>\": 4080,\n  \"creates</w>\": 10361,\n  \"creati\": 6714,\n  \"creating</w>\": 5524,\n  \"creation\": 38293,\n  \"creation</w>\": 6900,\n  \"creations</w>\": 17411,\n  \"creative\": 15237,\n  \"creative</w>\": 4450,\n  \"creatives</w>\": 29352,\n  \"creativity</w>\": 9636,\n  \"creator</w>\": 10173,\n  \"creators</w>\": 17981,\n  \"creature</w>\": 14317,\n  \"creatures</w>\": 13938,\n  \"cred\": 7314,\n  \"cred</w>\": 22377,\n  \"credenti\": 29487,\n  \"credentials</w>\": 33422,\n  \"credi\": 21097,\n  \"credibility</w>\": 34984,\n  \"credible</w>\": 32983,\n  \"credit\": 21467,\n  \"credit</w>\": 3900,\n  \"credited</w>\": 32480,\n  \"credits</w>\": 10654,\n  \"creds</w>\": 43462,\n  \"cree\": 33961,\n  \"cree</w>\": 36014,\n  \"creed</w>\": 18845,\n  \"creek\": 26120,\n  \"creek</w>\": 5526,\n  \"creep\": 8153,\n  \"creep</w>\": 26084,\n  \"creeper</w>\": 38662,\n  \"creeping</w>\": 29697,\n  \"creeps</w>\": 45135,\n  \"creepy</w>\": 11943,\n  \"creighton</w>\": 42823,\n  \"creme</w>\": 22681,\n  \"creole</w>\": 45632,\n  \"crepe</w>\": 38611,\n  \"crescent</w>\": 18211,\n  \"cress</w>\": 39124,\n  \"crest\": 35985,\n  \"crest</w>\": 15760,\n  \"crested</w>\": 36656,\n  \"crete</w>\": 8584,\n  \"crew\": 21560,\n  \"crew</w>\": 3462,\n  \"crewe</w>\": 43284,\n  \"crews</w>\": 10463,\n  \"cri\": 1621,\n  \"cri</w>\": 38962,\n  \"crib</w>\": 23271,\n  \"cric\": 4328,\n  \"cricke\": 19098,\n  \"cricket\": 21859,\n  \"cricket</w>\": 5373,\n  \"cricketer</w>\": 28439,\n  \"cricketers</w>\": 43986,\n  \"cried</w>\": 15290,\n  \"cries</w>\": 19769,\n  \"crime\": 13872,\n  \"crime</w>\": 4896,\n  \"crimea</w>\": 28614,\n  \"crimes</w>\": 11827,\n  \"crimin\": 5874,\n  \"criminal\": 30197,\n  \"criminal</w>\": 8255,\n  \"criminals</w>\": 18783,\n  \"crimson</w>\": 19437,\n  \"cringe</w>\": 42588,\n  \"cripp\": 33588,\n  \"cris</w>\": 37818,\n  \"crises</w>\": 36403,\n  \"crisis</w>\": 5712,\n  \"crisp</w>\": 15145,\n  \"crispr</w>\": 39784,\n  \"crisps</w>\": 35744,\n  \"crispy</w>\": 16458,\n  \"criss</w>\": 29708,\n  \"cristi\": 12699,\n  \"cristian</w>\": 48808,\n  \"cristiano</w>\": 14807,\n  \"cristina</w>\": 33395,\n  \"cristo</w>\": 38315,\n  \"crit\": 3613,\n  \"crit</w>\": 48130,\n  \"criteri\": 33627,\n  \"criteria</w>\": 24849,\n  \"criterion</w>\": 43841,\n  \"criti\": 25333,\n  \"critic\": 12417,\n  \"critic</w>\": 19361,\n  \"critical\": 15314,\n  \"critical</w>\": 6808,\n  \"critically</w>\": 21570,\n  \"criticalrole\": 33606,\n  \"criticalrole</w>\": 22742,\n  \"criticalrolefanart</w>\": 43663,\n  \"critici\": 20333,\n  \"criticism</w>\": 17405,\n  \"criticize</w>\": 46081,\n  \"criticized</w>\": 41557,\n  \"critics</w>\": 16946,\n  \"critique</w>\": 32982,\n  \"critters</w>\": 35423,\n  \"crm</w>\": 22610,\n  \"cro\": 1192,\n  \"cro</w>\": 22522,\n  \"croati\": 28072,\n  \"croatia</w>\": 13323,\n  \"croatian</w>\": 34795,\n  \"croc</w>\": 43350,\n  \"croche\": 35352,\n  \"crochet</w>\": 17554,\n  \"crock\": 41685,\n  \"crocker</w>\": 47843,\n  \"crockett</w>\": 48313,\n  \"crocod\": 24519,\n  \"crocodile</w>\": 24757,\n  \"crocs</w>\": 38988,\n  \"croft</w>\": 16657,\n  \"croissant</w>\": 46011,\n  \"croix</w>\": 44735,\n  \"crom\": 25082,\n  \"crombie</w>\": 46162,\n  \"cromwell</w>\": 45345,\n  \"cron\": 17361,\n  \"croo\": 16443,\n  \"crook</w>\": 43744,\n  \"crooked\": 48473,\n  \"crooked</w>\": 25644,\n  \"crooks</w>\": 44226,\n  \"crop\": 40751,\n  \"crop</w>\": 9955,\n  \"cropped</w>\": 31139,\n  \"crops</w>\": 16290,\n  \"crore</w>\": 18274,\n  \"crores</w>\": 37281,\n  \"cros\": 16670,\n  \"crosby</w>\": 21095,\n  \"cross\": 5266,\n  \"cross</w>\": 3417,\n  \"crossed</w>\": 11731,\n  \"crosses</w>\": 20473,\n  \"crossfit\": 47214,\n  \"crossfit</w>\": 20395,\n  \"crossing</w>\": 8673,\n  \"crossings</w>\": 43517,\n  \"crossover</w>\": 17194,\n  \"crossroads</w>\": 27427,\n  \"crossword</w>\": 32945,\n  \"crou\": 31206,\n  \"crouch</w>\": 36506,\n  \"crow\": 3138,\n  \"crow</w>\": 16019,\n  \"crowd\": 12036,\n  \"crowd</w>\": 4570,\n  \"crowded</w>\": 20182,\n  \"crowdfunding</w>\": 17971,\n  \"crowds</w>\": 16092,\n  \"crowe</w>\": 33560,\n  \"crowley</w>\": 32287,\n  \"crown\": 22190,\n  \"crown</w>\": 6902,\n  \"crowned</w>\": 16109,\n  \"crowns</w>\": 33229,\n  \"crows</w>\": 27134,\n  \"croy\": 21676,\n  \"croydon</w>\": 27116,\n  \"crs</w>\": 28449,\n  \"crt</w>\": 43877,\n  \"cru\": 1815,\n  \"cru</w>\": 29788,\n  \"cruci\": 18499,\n  \"crucial</w>\": 12396,\n  \"crude</w>\": 20677,\n  \"cruel\": 16073,\n  \"cruel</w>\": 17573,\n  \"cruelty</w>\": 20675,\n  \"cruis\": 27721,\n  \"cruise\": 36425,\n  \"cruise</w>\": 6764,\n  \"cruiser</w>\": 21394,\n  \"cruises</w>\": 19214,\n  \"cruising</w>\": 19743,\n  \"crum\": 43268,\n  \"crumb\": 48327,\n  \"crumb</w>\": 39909,\n  \"crumble</w>\": 36595,\n  \"crumbs</w>\": 35893,\n  \"crun\": 17407,\n  \"crunch</w>\": 16620,\n  \"crunchy</w>\": 31366,\n  \"crusad\": 19133,\n  \"crusade</w>\": 36846,\n  \"crusader</w>\": 40171,\n  \"crusaders</w>\": 31319,\n  \"crush\": 22296,\n  \"crush</w>\": 7610,\n  \"crushed</w>\": 18270,\n  \"crusher</w>\": 44923,\n  \"crushes</w>\": 35844,\n  \"crushing</w>\": 20790,\n  \"crust</w>\": 23136,\n  \"crusted</w>\": 37314,\n  \"cruz\": 33689,\n  \"cruz</w>\": 8403,\n  \"cry\": 2837,\n  \"cry</w>\": 6290,\n  \"crying</w>\": 6828,\n  \"cryo\": 32215,\n  \"cryp\": 4865,\n  \"crypt</w>\": 37814,\n  \"cryptic</w>\": 46925,\n  \"crypto\": 8080,\n  \"crypto</w>\": 9608,\n  \"cryptocurrencies</w>\": 33329,\n  \"cryptocurrency</w>\": 12070,\n  \"cryst\": 15891,\n  \"crystal\": 17387,\n  \"crystal</w>\": 6517,\n  \"crystalli\": 47551,\n  \"crystals</w>\": 18350,\n  \"cs\": 11978,\n  \"cs</w>\": 2804,\n  \"csa</w>\": 26355,\n  \"csc\": 41727,\n  \"csc</w>\": 37266,\n  \"csd</w>\": 36913,\n  \"cse</w>\": 41659,\n  \"csg</w>\": 47085,\n  \"csgo</w>\": 28928,\n  \"csi\": 41750,\n  \"csi</w>\": 28070,\n  \"csk</w>\": 43036,\n  \"csm</w>\": 40061,\n  \"csn</w>\": 46329,\n  \"cso</w>\": 43864,\n  \"csp</w>\": 39243,\n  \"csr\": 32105,\n  \"csr</w>\": 24598,\n  \"csrracing</w>\": 44193,\n  \"css\": 41418,\n  \"css</w>\": 19846,\n  \"cst</w>\": 17016,\n  \"csu\": 35948,\n  \"csu</w>\": 31261,\n  \"csw</w>\": 41031,\n  \"ct\": 3381,\n  \"ct</w>\": 1122,\n  \"cta</w>\": 28397,\n  \"ctar</w>\": 27842,\n  \"ctc</w>\": 34123,\n  \"cte</w>\": 31410,\n  \"cted</w>\": 2910,\n  \"ctf</w>\": 35250,\n  \"cthulhu</w>\": 41064,\n  \"cting</w>\": 7985,\n  \"ction\": 17578,\n  \"ction</w>\": 1569,\n  \"ctions</w>\": 7021,\n  \"ctive</w>\": 9313,\n  \"cto</w>\": 17445,\n  \"ctor</w>\": 8108,\n  \"ctr\": 35602,\n  \"ctr</w>\": 18481,\n  \"cts</w>\": 6936,\n  \"ctto</w>\": 25118,\n  \"ctu\": 20834,\n  \"cture</w>\": 17668,\n  \"ctv\": 21213,\n  \"ctv</w>\": 27590,\n  \"cu\": 729,\n  \"cu</w>\": 11224,\n  \"cuando</w>\": 40388,\n  \"cub\": 16938,\n  \"cub</w>\": 19972,\n  \"cuba</w>\": 11576,\n  \"cuban</w>\": 15536,\n  \"cube\": 47753,\n  \"cube</w>\": 11353,\n  \"cubes</w>\": 31413,\n  \"cubic\": 48159,\n  \"cubic</w>\": 29614,\n  \"cubs</w>\": 9858,\n  \"cuck\": 26364,\n  \"cuckoo</w>\": 38062,\n  \"cucu\": 16705,\n  \"cucumber</w>\": 19787,\n  \"cucumbers</w>\": 48065,\n  \"cud\": 42684,\n  \"cudd\": 12820,\n  \"cuddle</w>\": 19568,\n  \"cuddles</w>\": 24001,\n  \"cuddling</w>\": 29696,\n  \"cuddly</w>\": 36208,\n  \"cudi</w>\": 48713,\n  \"cue</w>\": 13424,\n  \"cuer\": 39506,\n  \"cues</w>\": 35719,\n  \"cuff\": 34693,\n  \"cuff</w>\": 22414,\n  \"cufflinks</w>\": 43938,\n  \"cuffs</w>\": 37221,\n  \"cuis\": 9938,\n  \"cuisine</w>\": 10605,\n  \"cuk</w>\": 34838,\n  \"cul\": 1877,\n  \"cula</w>\": 35935,\n  \"cular</w>\": 10940,\n  \"culars</w>\": 45719,\n  \"cule</w>\": 31066,\n  \"cules</w>\": 18984,\n  \"culin\": 14772,\n  \"culinary</w>\": 16466,\n  \"cull\": 21880,\n  \"cull</w>\": 42061,\n  \"cullen</w>\": 25973,\n  \"culmin\": 33778,\n  \"culo\": 36305,\n  \"culprit</w>\": 41593,\n  \"cult</w>\": 11965,\n  \"cultiv\": 16781,\n  \"cultivate</w>\": 42983,\n  \"cultivated</w>\": 48901,\n  \"cultivation</w>\": 41539,\n  \"cultur\": 20780,\n  \"cultural\": 34908,\n  \"cultural</w>\": 6753,\n  \"culturally</w>\": 36783,\n  \"culture\": 20197,\n  \"culture</w>\": 3673,\n  \"cultured</w>\": 40176,\n  \"cultures</w>\": 19552,\n  \"culver</w>\": 42103,\n  \"cum\": 20142,\n  \"cum</w>\": 27119,\n  \"cumb\": 10858,\n  \"cumber\": 15309,\n  \"cumberbatch</w>\": 27541,\n  \"cumberland</w>\": 28747,\n  \"cumbri\": 32010,\n  \"cumbria</w>\": 17953,\n  \"cumin</w>\": 42285,\n  \"cumple</w>\": 47050,\n  \"cumul\": 42961,\n  \"cumulative</w>\": 47610,\n  \"cumulus</w>\": 46313,\n  \"cun\": 12423,\n  \"cun</w>\": 29532,\n  \"cunningham</w>\": 25321,\n  \"cuomo</w>\": 25681,\n  \"cup\": 5059,\n  \"cup</w>\": 1937,\n  \"cupboard</w>\": 32074,\n  \"cupcake</w>\": 17025,\n  \"cupcakes</w>\": 12747,\n  \"cupid</w>\": 34885,\n  \"cuppa</w>\": 28077,\n  \"cups</w>\": 11463,\n  \"cur\": 1092,\n  \"cur</w>\": 33073,\n  \"curated</w>\": 20341,\n  \"curator</w>\": 20753,\n  \"curb</w>\": 21931,\n  \"curd</w>\": 38881,\n  \"cure\": 36758,\n  \"cure</w>\": 9088,\n  \"cured</w>\": 26248,\n  \"cures</w>\": 38204,\n  \"curfew</w>\": 48826,\n  \"curi\": 12640,\n  \"curing</w>\": 44169,\n  \"curiosity</w>\": 21583,\n  \"curious</w>\": 9865,\n  \"curl</w>\": 24306,\n  \"curled</w>\": 43734,\n  \"curling</w>\": 18543,\n  \"curls</w>\": 24340,\n  \"curly</w>\": 20795,\n  \"curran</w>\": 40999,\n  \"currant</w>\": 43501,\n  \"curren\": 6142,\n  \"currencies</w>\": 23530,\n  \"currency</w>\": 7853,\n  \"current</w>\": 3653,\n  \"currently</w>\": 3792,\n  \"currents</w>\": 35450,\n  \"curric\": 16201,\n  \"curriculum</w>\": 17947,\n  \"currie</w>\": 39385,\n  \"curry\": 49285,\n  \"curry</w>\": 8051,\n  \"curse</w>\": 18479,\n  \"cursed</w>\": 26408,\n  \"cursor</w>\": 46546,\n  \"curt</w>\": 38137,\n  \"curtain</w>\": 17223,\n  \"curtains</w>\": 30223,\n  \"curti\": 39925,\n  \"curtis</w>\": 13808,\n  \"curve</w>\": 15792,\n  \"curved</w>\": 25789,\n  \"curves</w>\": 22814,\n  \"curvy</w>\": 45788,\n  \"cus</w>\": 2736,\n  \"cusa</w>\": 47414,\n  \"cuse</w>\": 37950,\n  \"cush\": 43731,\n  \"cushi\": 15333,\n  \"cushion</w>\": 20853,\n  \"cushions</w>\": 34163,\n  \"cussion</w>\": 16658,\n  \"cussions</w>\": 46853,\n  \"cust\": 20900,\n  \"custard</w>\": 26516,\n  \"custo\": 4376,\n  \"custody</w>\": 16176,\n  \"custom\": 2662,\n  \"custom</w>\": 4996,\n  \"custome\": 41323,\n  \"customer\": 24035,\n  \"customer</w>\": 5102,\n  \"customerexperience</w>\": 45167,\n  \"customers</w>\": 5528,\n  \"customerservice</w>\": 40611,\n  \"customiz\": 41793,\n  \"customizable</w>\": 48253,\n  \"customization</w>\": 48244,\n  \"customize</w>\": 32179,\n  \"customized</w>\": 23229,\n  \"customs</w>\": 16880,\n  \"cut\": 10511,\n  \"cut</w>\": 3032,\n  \"cute\": 16031,\n  \"cute</w>\": 2242,\n  \"cuteness</w>\": 19342,\n  \"cuter</w>\": 27151,\n  \"cutest</w>\": 8032,\n  \"cuth\": 44328,\n  \"cutie</w>\": 10733,\n  \"cuties\": 40939,\n  \"cuties</w>\": 23420,\n  \"cutiesaturday</w>\": 41883,\n  \"cutler</w>\": 40428,\n  \"cutlery</w>\": 49073,\n  \"cutout</w>\": 45016,\n  \"cuts</w>\": 7435,\n  \"cutt\": 27338,\n  \"cutt</w>\": 47647,\n  \"cutter</w>\": 19719,\n  \"cutters</w>\": 44783,\n  \"cutting</w>\": 7266,\n  \"cuz</w>\": 9215,\n  \"cv\": 13531,\n  \"cv</w>\": 13947,\n  \"cvs</w>\": 29603,\n  \"cw\": 10652,\n  \"cw</w>\": 11065,\n  \"cwc</w>\": 19179,\n  \"cwgc</w>\": 48527,\n  \"cws</w>\": 45186,\n  \"cx\": 44457,\n  \"cx</w>\": 14283,\n  \"cy\": 1470,\n  \"cy</w>\": 1678,\n  \"cyber\": 5830,\n  \"cyber</w>\": 10210,\n  \"cybercrime</w>\": 41772,\n  \"cybermonday</w>\": 36578,\n  \"cyberpunk</w>\": 36896,\n  \"cybersecurity</w>\": 10581,\n  \"cyborg</w>\": 36650,\n  \"cycl\": 9791,\n  \"cycle\": 19083,\n  \"cycle</w>\": 5072,\n  \"cycled</w>\": 31055,\n  \"cycles</w>\": 14605,\n  \"cycli\": 12201,\n  \"cycling\": 26353,\n  \"cycling</w>\": 6321,\n  \"cyclist</w>\": 20686,\n  \"cyclists</w>\": 20303,\n  \"cyclo\": 18122,\n  \"cyclone\": 48094,\n  \"cyclone</w>\": 20917,\n  \"cyclones</w>\": 34669,\n  \"cylin\": 18569,\n  \"cylinder</w>\": 22092,\n  \"cylinders</w>\": 48888,\n  \"cymb\": 36677,\n  \"cymru</w>\": 24005,\n  \"cyn\": 14324,\n  \"cynthi\": 41994,\n  \"cynthia</w>\": 23748,\n  \"cyp\": 14809,\n  \"cypress</w>\": 25347,\n  \"cypri\": 36481,\n  \"cyprus</w>\": 15263,\n  \"cyril</w>\": 36028,\n  \"cyrus</w>\": 14204,\n  \"cystic</w>\": 46131,\n  \"cyto\": 31864,\n  \"cz\": 22898,\n  \"cz</w>\": 22921,\n  \"cze\": 12152,\n  \"czech\": 43151,\n  \"czech</w>\": 16141,\n  \"cÃ©\": 36454,\n  \"cÃ©</w>\": 18317,\n  \"d\": 67,\n  \"d</w>\": 323,\n  \"da\": 925,\n  \"da</w>\": 1140,\n  \"daa</w>\": 32642,\n  \"daan</w>\": 44814,\n  \"dab\": 10413,\n  \"dab</w>\": 22900,\n  \"dac\": 16222,\n  \"dac</w>\": 27478,\n  \"daca</w>\": 28477,\n  \"dach\": 34166,\n  \"dachsh\": 41641,\n  \"dachshund</w>\": 42720,\n  \"dad\": 4346,\n  \"dad</w>\": 2639,\n  \"dada</w>\": 31325,\n  \"daddy\": 29466,\n  \"daddy</w>\": 6546,\n  \"dade</w>\": 23299,\n  \"dades</w>\": 28289,\n  \"dads</w>\": 12741,\n  \"dae\": 23358,\n  \"dae</w>\": 15422,\n  \"daener\": 46934,\n  \"daes\": 47282,\n  \"daesh</w>\": 35047,\n  \"daf\": 9972,\n  \"daf</w>\": 36704,\n  \"daffodils</w>\": 44769,\n  \"daft</w>\": 36347,\n  \"dag\": 11434,\n  \"dag</w>\": 25650,\n  \"dagger</w>\": 34251,\n  \"dah\": 16976,\n  \"dah</w>\": 11776,\n  \"dahl\": 45816,\n  \"dahl</w>\": 22621,\n  \"dahlia</w>\": 41768,\n  \"dai\": 13559,\n  \"dai</w>\": 10632,\n  \"dail\": 14676,\n  \"dailies</w>\": 21260,\n  \"daily\": 6689,\n  \"daily</w>\": 2873,\n  \"dailynews</w>\": 43466,\n  \"dailys\": 43160,\n  \"dailysketch</w>\": 46738,\n  \"daim\": 40421,\n  \"dain\": 32222,\n  \"dain</w>\": 28315,\n  \"daipur</w>\": 47631,\n  \"dair\": 19998,\n  \"dair</w>\": 42078,\n  \"dairy\": 25243,\n  \"dairy</w>\": 10302,\n  \"dairyfree</w>\": 49366,\n  \"dais\": 10502,\n  \"daisi\": 39947,\n  \"daisies</w>\": 40654,\n  \"daisy\": 39310,\n  \"daisy</w>\": 12865,\n  \"dak\": 6999,\n  \"dak</w>\": 16095,\n  \"dakar</w>\": 31137,\n  \"dakota\": 38522,\n  \"dakota</w>\": 12358,\n  \"dal\": 2476,\n  \"dal</w>\": 5601,\n  \"dala</w>\": 42675,\n  \"dalai</w>\": 41222,\n  \"dalail\": 35169,\n  \"dalailama</w>\": 35849,\n  \"dale\": 11533,\n  \"dale</w>\": 4677,\n  \"dalejr</w>\": 38207,\n  \"dales</w>\": 29031,\n  \"daley</w>\": 28544,\n  \"dalgo</w>\": 43614,\n  \"dali\": 36735,\n  \"dali</w>\": 25703,\n  \"dalit</w>\": 45432,\n  \"dall</w>\": 43631,\n  \"dalla\": 16772,\n  \"dallas\": 27414,\n  \"dallas</w>\": 5759,\n  \"dallascowboys</w>\": 33016,\n  \"dalmati\": 44275,\n  \"dalton</w>\": 21488,\n  \"daly</w>\": 24873,\n  \"dam\": 1880,\n  \"dam</w>\": 4926,\n  \"damage</w>\": 6822,\n  \"damaged</w>\": 13568,\n  \"damages</w>\": 28842,\n  \"damaging</w>\": 20610,\n  \"damas\": 23345,\n  \"damascus</w>\": 25396,\n  \"dame</w>\": 10069,\n  \"dames</w>\": 44548,\n  \"dami\": 17783,\n  \"damian\": 43307,\n  \"damian</w>\": 25375,\n  \"damien</w>\": 25090,\n  \"dammit</w>\": 31057,\n  \"damn\": 37409,\n  \"damn</w>\": 4451,\n  \"damned</w>\": 28428,\n  \"damon\": 48503,\n  \"damon</w>\": 18244,\n  \"damp</w>\": 26520,\n  \"dams</w>\": 37680,\n  \"dan\": 2257,\n  \"dan</w>\": 2284,\n  \"dana\": 44834,\n  \"dana</w>\": 13777,\n  \"danao</w>\": 38598,\n  \"danc\": 3945,\n  \"dance\": 10619,\n  \"dance</w>\": 2724,\n  \"danced</w>\": 32891,\n  \"dancehall</w>\": 33300,\n  \"dancer</w>\": 11400,\n  \"dancers</w>\": 13153,\n  \"dances</w>\": 24083,\n  \"dancing\": 33280,\n  \"dancing</w>\": 6226,\n  \"dand\": 12593,\n  \"dandelion</w>\": 38903,\n  \"dandy</w>\": 31932,\n  \"dane</w>\": 19330,\n  \"danes</w>\": 47477,\n  \"dang\": 4283,\n  \"dang</w>\": 14992,\n  \"danger\": 20083,\n  \"danger</w>\": 11212,\n  \"dangerous</w>\": 7350,\n  \"dangerously</w>\": 35012,\n  \"dangers</w>\": 23726,\n  \"dangle</w>\": 39907,\n  \"dani\": 3001,\n  \"dani</w>\": 17009,\n  \"daniel\": 7859,\n  \"daniel</w>\": 4981,\n  \"daniela</w>\": 44466,\n  \"danielle\": 30396,\n  \"danielle</w>\": 15292,\n  \"danielpadilla</w>\": 34702,\n  \"daniels</w>\": 16146,\n  \"danish</w>\": 15467,\n  \"dank</w>\": 31849,\n  \"dann\": 11951,\n  \"danny\": 14950,\n  \"danny</w>\": 7621,\n  \"dano</w>\": 29703,\n  \"dans</w>\": 16241,\n  \"dant\": 48097,\n  \"dant</w>\": 28237,\n  \"dante</w>\": 21911,\n  \"danube</w>\": 44594,\n  \"dany</w>\": 47816,\n  \"dao</w>\": 36099,\n  \"dap\": 12149,\n  \"dap</w>\": 38034,\n  \"daph\": 24591,\n  \"daphne</w>\": 31687,\n  \"dapl</w>\": 34478,\n  \"dapp\": 46857,\n  \"dapper</w>\": 26071,\n  \"daq</w>\": 25381,\n  \"dar\": 1377,\n  \"dar</w>\": 6242,\n  \"dara</w>\": 17064,\n  \"darby</w>\": 34366,\n  \"darcy</w>\": 32916,\n  \"dare\": 14833,\n  \"dare</w>\": 9863,\n  \"daredevil</w>\": 28849,\n  \"dares</w>\": 42973,\n  \"dareto\": 46794,\n  \"dari\": 16292,\n  \"dari</w>\": 14552,\n  \"daria</w>\": 45622,\n  \"daries</w>\": 18184,\n  \"daring</w>\": 28166,\n  \"dario</w>\": 33918,\n  \"darius</w>\": 32606,\n  \"darje\": 49089,\n  \"dark\": 5724,\n  \"dark</w>\": 3144,\n  \"darker</w>\": 18737,\n  \"darkest</w>\": 25898,\n  \"darkness</w>\": 10521,\n  \"darling</w>\": 13048,\n  \"darlings</w>\": 39961,\n  \"darlington</w>\": 34565,\n  \"darn</w>\": 26059,\n  \"darrell</w>\": 33522,\n  \"darren\": 20263,\n  \"darren</w>\": 12275,\n  \"darry\": 29200,\n  \"darryl</w>\": 35359,\n  \"darshan</w>\": 34564,\n  \"dart\": 14001,\n  \"dart</w>\": 19841,\n  \"darth\": 41304,\n  \"darth</w>\": 23164,\n  \"dartmoor</w>\": 31477,\n  \"dartmouth</w>\": 29667,\n  \"darts</w>\": 15246,\n  \"darwin\": 43013,\n  \"darwin</w>\": 20926,\n  \"daryl\": 45607,\n  \"daryl</w>\": 24532,\n  \"das\": 9940,\n  \"das</w>\": 7359,\n  \"dash\": 13858,\n  \"dash</w>\": 10206,\n  \"dashboard</w>\": 27679,\n  \"dashi\": 12876,\n  \"dashing</w>\": 33825,\n  \"dat\": 1717,\n  \"dat</w>\": 9445,\n  \"data\": 14876,\n  \"data</w>\": 2281,\n  \"datab\": 11941,\n  \"database</w>\": 14678,\n  \"databases</w>\": 48384,\n  \"datac\": 27329,\n  \"datacenter</w>\": 40133,\n  \"datasci\": 14496,\n  \"datascience</w>\": 15748,\n  \"dataviz</w>\": 28138,\n  \"date\": 34300,\n  \"date</w>\": 1524,\n  \"dated</w>\": 13564,\n  \"dates</w>\": 7228,\n  \"dating</w>\": 8534,\n  \"dation</w>\": 15311,\n  \"datlantic\": 34270,\n  \"dato</w>\": 36075,\n  \"dats</w>\": 48674,\n  \"dau\": 3162,\n  \"dau</w>\": 33828,\n  \"daugh\": 42523,\n  \"daughter</w>\": 3944,\n  \"daughters</w>\": 13585,\n  \"daun\": 29470,\n  \"dav\": 3700,\n  \"dav</w>\": 46488,\n  \"davao</w>\": 31502,\n  \"dave\": 10089,\n  \"dave</w>\": 5077,\n  \"daven\": 28350,\n  \"davenport</w>\": 34624,\n  \"davey</w>\": 33391,\n  \"davi\": 1732,\n  \"david\": 4640,\n  \"david</w>\": 2259,\n  \"davidbowie</w>\": 44448,\n  \"davido</w>\": 35989,\n  \"davids</w>\": 46695,\n  \"davidson</w>\": 13166,\n  \"davies</w>\": 13120,\n  \"davin\": 43187,\n  \"davis\": 24426,\n  \"davis</w>\": 5536,\n  \"davison</w>\": 43725,\n  \"davos</w>\": 31887,\n  \"davy</w>\": 41565,\n  \"daw\": 5971,\n  \"daw</w>\": 24404,\n  \"dawg</w>\": 18660,\n  \"dawgs</w>\": 26431,\n  \"dawn\": 30590,\n  \"dawn</w>\": 7689,\n  \"dawson</w>\": 18611,\n  \"dax</w>\": 29458,\n  \"day\": 1405,\n  \"day</w>\": 575,\n  \"daya</w>\": 38165,\n  \"daybreak</w>\": 33862,\n  \"daycare</w>\": 36363,\n  \"daydream</w>\": 41587,\n  \"dayin\": 20332,\n  \"daylight</w>\": 20809,\n  \"dayo\": 29856,\n  \"dayo</w>\": 46605,\n  \"dayof\": 16272,\n  \"dayofthe\": 38043,\n  \"days</w>\": 1161,\n  \"daysof\": 12379,\n  \"daysofcode</w>\": 36537,\n  \"daysto\": 29886,\n  \"daystogo</w>\": 42198,\n  \"dayswild</w>\": 42052,\n  \"daytime</w>\": 22830,\n  \"dayton\": 35729,\n  \"dayton</w>\": 20262,\n  \"daytona</w>\": 16335,\n  \"dayweekend</w>\": 44526,\n  \"dayz</w>\": 35949,\n  \"daz\": 15449,\n  \"daz</w>\": 43844,\n  \"daze</w>\": 33591,\n  \"dazz\": 17149,\n  \"dazzle</w>\": 41164,\n  \"dazzling</w>\": 28821,\n  \"db\": 19100,\n  \"db</w>\": 8128,\n  \"dbacks</w>\": 31175,\n  \"dbs</w>\": 40558,\n  \"dbz</w>\": 49226,\n  \"dc\": 5074,\n  \"dc</w>\": 2743,\n  \"dca</w>\": 49107,\n  \"dcc</w>\": 33747,\n  \"dccomics</w>\": 17610,\n  \"dcfc</w>\": 35526,\n  \"dci</w>\": 35336,\n  \"dcs</w>\": 42878,\n  \"dcu</w>\": 42647,\n  \"dd\": 1353,\n  \"dd</w>\": 3766,\n  \"dda</w>\": 35202,\n  \"ddad</w>\": 39049,\n  \"dday\": 32689,\n  \"dday</w>\": 26243,\n  \"ddc</w>\": 48513,\n  \"ddd</w>\": 24183,\n  \"dddd</w>\": 35362,\n  \"dden</w>\": 5013,\n  \"dder</w>\": 9300,\n  \"dders</w>\": 24827,\n  \"ddi</w>\": 44450,\n  \"ddin</w>\": 17175,\n  \"dding\": 48101,\n  \"dding</w>\": 8974,\n  \"ddings</w>\": 49106,\n  \"ddington</w>\": 29238,\n  \"ddle\": 17633,\n  \"ddle</w>\": 8357,\n  \"ddled</w>\": 38392,\n  \"ddles</w>\": 33901,\n  \"ddleston</w>\": 25647,\n  \"ddling</w>\": 30981,\n  \"ddlovato</w>\": 28244,\n  \"ddos</w>\": 46463,\n  \"ddr</w>\": 26027,\n  \"dds</w>\": 48334,\n  \"ddu</w>\": 43836,\n  \"ddy\": 14981,\n  \"ddy</w>\": 7876,\n  \"de\": 561,\n  \"de</w>\": 654,\n  \"dea</w>\": 18477,\n  \"deacon</w>\": 29155,\n  \"dead\": 3906,\n  \"dead</w>\": 2747,\n  \"deadliest</w>\": 40811,\n  \"deadline\": 47209,\n  \"deadline</w>\": 8458,\n  \"deadlines</w>\": 44959,\n  \"deadly</w>\": 10756,\n  \"deadpool</w>\": 21471,\n  \"deaf\": 28229,\n  \"deaf</w>\": 18358,\n  \"deal\": 7249,\n  \"deal</w>\": 2696,\n  \"dealer</w>\": 15218,\n  \"dealers</w>\": 21697,\n  \"dealership</w>\": 32096,\n  \"dealing</w>\": 13138,\n  \"deals</w>\": 4469,\n  \"dealt</w>\": 30101,\n  \"dean\": 13807,\n  \"dean</w>\": 5828,\n  \"deandre</w>\": 43635,\n  \"deans</w>\": 46852,\n  \"dear\": 15696,\n  \"dear</w>\": 3817,\n  \"dearest</w>\": 24880,\n  \"dearly</w>\": 31880,\n  \"deas</w>\": 34715,\n  \"death\": 7163,\n  \"death</w>\": 2767,\n  \"deaths</w>\": 12253,\n  \"deau</w>\": 12399,\n  \"deaux</w>\": 19883,\n  \"deb\": 2987,\n  \"deb</w>\": 25687,\n  \"debat\": 32082,\n  \"debate</w>\": 5196,\n  \"debates</w>\": 19239,\n  \"debating</w>\": 23472,\n  \"debbie\": 47186,\n  \"debbie</w>\": 16735,\n  \"debit</w>\": 32410,\n  \"debor\": 16738,\n  \"deborah\": 40997,\n  \"deborah</w>\": 22150,\n  \"debra</w>\": 33233,\n  \"debris</w>\": 19208,\n  \"debt</w>\": 8932,\n  \"debts</w>\": 38770,\n  \"debu\": 9790,\n  \"debun\": 33123,\n  \"debut\": 42608,\n  \"debut</w>\": 4085,\n  \"debuted</w>\": 25215,\n  \"debuting</w>\": 34817,\n  \"debuts</w>\": 17044,\n  \"dec\": 3063,\n  \"dec</w>\": 4628,\n  \"deca</w>\": 33428,\n  \"decad\": 29914,\n  \"decade</w>\": 11099,\n  \"decadent</w>\": 41716,\n  \"decades</w>\": 10488,\n  \"decal</w>\": 26678,\n  \"decals</w>\": 37606,\n  \"decan\": 40677,\n  \"decat\": 35334,\n  \"decath\": 47455,\n  \"decatur</w>\": 38540,\n  \"decay</w>\": 22703,\n  \"dece\": 3534,\n  \"deceased</w>\": 30035,\n  \"december</w>\": 3864,\n  \"decent</w>\": 10698,\n  \"decentr\": 28960,\n  \"decentralized</w>\": 38485,\n  \"decep\": 33529,\n  \"deception</w>\": 33046,\n  \"deci\": 2262,\n  \"decide</w>\": 8447,\n  \"decided</w>\": 4939,\n  \"decides</w>\": 17269,\n  \"deciding</w>\": 22513,\n  \"decision</w>\": 5575,\n  \"decisions</w>\": 9903,\n  \"decisive</w>\": 28690,\n  \"deck\": 24885,\n  \"deck</w>\": 6943,\n  \"decked</w>\": 39096,\n  \"decker</w>\": 21449,\n  \"decks</w>\": 23968,\n  \"decl\": 7091,\n  \"decla\": 10739,\n  \"declan</w>\": 42341,\n  \"declar\": 18040,\n  \"declaration</w>\": 19714,\n  \"declare</w>\": 19856,\n  \"declared</w>\": 13845,\n  \"declares</w>\": 23641,\n  \"declaring</w>\": 33273,\n  \"decline</w>\": 15084,\n  \"declined</w>\": 28911,\n  \"declines</w>\": 40478,\n  \"declining</w>\": 29221,\n  \"deco\": 26412,\n  \"deco</w>\": 16422,\n  \"decor\": 5148,\n  \"decor</w>\": 6928,\n  \"decorate</w>\": 23651,\n  \"decorated</w>\": 15917,\n  \"decorating</w>\": 16968,\n  \"decoration</w>\": 16029,\n  \"decorations</w>\": 19158,\n  \"decorative</w>\": 19289,\n  \"decre\": 12284,\n  \"decrease</w>\": 24703,\n  \"decreased</w>\": 33913,\n  \"decreasing</w>\": 43763,\n  \"decree</w>\": 43327,\n  \"ded\": 16744,\n  \"ded</w>\": 1241,\n  \"dedic\": 4701,\n  \"dedicate</w>\": 27610,\n  \"dedicated</w>\": 6770,\n  \"dedication</w>\": 10188,\n  \"dedly</w>\": 36204,\n  \"deduc\": 22799,\n  \"dee\": 5268,\n  \"dee</w>\": 6705,\n  \"deed</w>\": 30260,\n  \"deeds</w>\": 24516,\n  \"deejay\": 48304,\n  \"deejay</w>\": 44511,\n  \"deemed</w>\": 28102,\n  \"deen\": 26456,\n  \"deen</w>\": 12912,\n  \"deep\": 5462,\n  \"deep</w>\": 3383,\n  \"deepak</w>\": 45528,\n  \"deeper</w>\": 15224,\n  \"deepest</w>\": 22245,\n  \"deephouse</w>\": 35684,\n  \"deepi\": 19371,\n  \"deepika</w>\": 34120,\n  \"deepikap\": 29903,\n  \"deepikapadukone</w>\": 30646,\n  \"deeplear\": 22181,\n  \"deeplearning</w>\": 24362,\n  \"deeply</w>\": 11449,\n  \"deer\": 19454,\n  \"deer</w>\": 8700,\n  \"deere</w>\": 32901,\n  \"dees</w>\": 12547,\n  \"deets</w>\": 35537,\n  \"def\": 2044,\n  \"def</w>\": 11649,\n  \"defam\": 35670,\n  \"defamation</w>\": 42741,\n  \"default</w>\": 21650,\n  \"defe\": 4148,\n  \"defeat</w>\": 8477,\n  \"defeated</w>\": 8927,\n  \"defeating</w>\": 22594,\n  \"defeats</w>\": 16317,\n  \"defect</w>\": 44013,\n  \"defects</w>\": 37485,\n  \"defen\": 3619,\n  \"defence\": 30307,\n  \"defence</w>\": 9659,\n  \"defend\": 21970,\n  \"defend</w>\": 11397,\n  \"defended</w>\": 27161,\n  \"defender</w>\": 10618,\n  \"defenders</w>\": 20063,\n  \"defending</w>\": 13098,\n  \"defends</w>\": 20134,\n  \"defense\": 45875,\n  \"defense</w>\": 6021,\n  \"defenseman</w>\": 43714,\n  \"defenses</w>\": 49198,\n  \"defensive</w>\": 10824,\n  \"defi\": 17244,\n  \"defiance</w>\": 36186,\n  \"defiant</w>\": 47597,\n  \"defibrill\": 47684,\n  \"defic\": 18022,\n  \"defici\": 23387,\n  \"deficiency</w>\": 30685,\n  \"deficit</w>\": 20156,\n  \"defin\": 3188,\n  \"define</w>\": 14919,\n  \"defined</w>\": 15278,\n  \"defines</w>\": 28218,\n  \"defining</w>\": 20504,\n  \"definite</w>\": 40793,\n  \"definitely</w>\": 4824,\n  \"definition</w>\": 11405,\n  \"definitive</w>\": 25298,\n  \"defl\": 31467,\n  \"deforestation</w>\": 41330,\n  \"defstar</w>\": 36427,\n  \"defy</w>\": 39148,\n  \"defying</w>\": 38496,\n  \"deg</w>\": 38498,\n  \"degra\": 28939,\n  \"degradation</w>\": 44468,\n  \"degre\": 4653,\n  \"degree</w>\": 7119,\n  \"degrees</w>\": 8000,\n  \"deh</w>\": 35582,\n  \"dei\": 33833,\n  \"dei</w>\": 23279,\n  \"deir\": 42948,\n  \"deity</w>\": 42574,\n  \"deja</w>\": 46902,\n  \"dek</w>\": 23901,\n  \"dekalb</w>\": 37775,\n  \"del\": 1233,\n  \"del</w>\": 2003,\n  \"dela</w>\": 37986,\n  \"delaney</w>\": 31528,\n  \"delav\": 23706,\n  \"delavin\": 40477,\n  \"delavin</w>\": 40776,\n  \"delavinkisses</w>\": 40631,\n  \"delaware</w>\": 17547,\n  \"delay\": 12955,\n  \"delay</w>\": 10934,\n  \"delayed</w>\": 14567,\n  \"delaying</w>\": 43781,\n  \"delays</w>\": 11232,\n  \"dele\": 7922,\n  \"dele</w>\": 33431,\n  \"delec\": 38615,\n  \"delectable</w>\": 45500,\n  \"deleg\": 8046,\n  \"delegate</w>\": 27259,\n  \"delegates</w>\": 14623,\n  \"delegation</w>\": 14632,\n  \"delete</w>\": 19204,\n  \"deleted</w>\": 16588,\n  \"deleting</w>\": 41857,\n  \"delft</w>\": 42749,\n  \"delgado</w>\": 49182,\n  \"delhi\": 26723,\n  \"delhi</w>\": 5717,\n  \"deli\": 1932,\n  \"deli</w>\": 18601,\n  \"delia</w>\": 33193,\n  \"deliber\": 18316,\n  \"deliberate</w>\": 38271,\n  \"deliberately</w>\": 35163,\n  \"delic\": 13366,\n  \"delicacy</w>\": 49181,\n  \"delicate</w>\": 18768,\n  \"delici\": 19993,\n  \"delicious</w>\": 3959,\n  \"deliciously</w>\": 39589,\n  \"deliciousness</w>\": 42819,\n  \"delight\": 46165,\n  \"delight</w>\": 13073,\n  \"delighted</w>\": 5943,\n  \"delightful</w>\": 15513,\n  \"delights</w>\": 25330,\n  \"deline</w>\": 18797,\n  \"delines</w>\": 13562,\n  \"delish</w>\": 25093,\n  \"deliver\": 19561,\n  \"deliver</w>\": 7396,\n  \"delivered</w>\": 7278,\n  \"deliveries</w>\": 29336,\n  \"delivering</w>\": 9943,\n  \"delivers</w>\": 11753,\n  \"delivery</w>\": 5619,\n  \"dell\": 24381,\n  \"dell</w>\": 10242,\n  \"della</w>\": 22986,\n  \"delle</w>\": 35963,\n  \"deloit\": 29428,\n  \"deloitte</w>\": 38667,\n  \"dels</w>\": 48636,\n  \"delta\": 32250,\n  \"delta</w>\": 8768,\n  \"delu\": 18779,\n  \"delusional</w>\": 48059,\n  \"delux\": 13709,\n  \"deluxe</w>\": 14056,\n  \"delve</w>\": 46008,\n  \"dely</w>\": 15040,\n  \"dem\": 3251,\n  \"dem</w>\": 7825,\n  \"dema\": 40268,\n  \"dema</w>\": 45046,\n  \"deman</w>\": 48366,\n  \"demand\": 13072,\n  \"demand</w>\": 5650,\n  \"demanded</w>\": 33699,\n  \"demanding</w>\": 17099,\n  \"demands</w>\": 14241,\n  \"demar</w>\": 46566,\n  \"demarcus</w>\": 47873,\n  \"demb\": 35930,\n  \"demdebate</w>\": 43973,\n  \"deme\": 25143,\n  \"demean\": 37376,\n  \"demen\": 12604,\n  \"dementi\": 46028,\n  \"dementia</w>\": 14047,\n  \"demetri\": 39553,\n  \"demi\": 32879,\n  \"demi</w>\": 14480,\n  \"demise</w>\": 28756,\n  \"demo\": 2930,\n  \"demo</w>\": 7380,\n  \"democr\": 3573,\n  \"democracy</w>\": 7758,\n  \"democrat</w>\": 15431,\n  \"democratic</w>\": 9149,\n  \"democrats</w>\": 8865,\n  \"demographic</w>\": 31308,\n  \"demol\": 19382,\n  \"demolished</w>\": 26537,\n  \"demolition</w>\": 22237,\n  \"demon\": 5635,\n  \"demon</w>\": 12085,\n  \"demonetisation</w>\": 41338,\n  \"demonic</w>\": 46920,\n  \"demons</w>\": 18388,\n  \"demonstr\": 8579,\n  \"demonstrate</w>\": 22231,\n  \"demonstrated</w>\": 29477,\n  \"demonstrates</w>\": 24806,\n  \"demonstrating</w>\": 22107,\n  \"demonstration</w>\": 16722,\n  \"demonstrations</w>\": 33964,\n  \"demonstrators</w>\": 46450,\n  \"demos</w>\": 19304,\n  \"demp\": 22490,\n  \"dempsey</w>\": 30188,\n  \"dems</w>\": 10989,\n  \"demsin\": 42664,\n  \"demsinphilly</w>\": 43091,\n  \"den\": 1177,\n  \"den</w>\": 1181,\n  \"dena</w>\": 32431,\n  \"denali</w>\": 48076,\n  \"dence</w>\": 3370,\n  \"dency</w>\": 11659,\n  \"dend\": 37447,\n  \"dends</w>\": 43985,\n  \"dene</w>\": 45128,\n  \"dened</w>\": 19571,\n  \"deng\": 43098,\n  \"deng</w>\": 41788,\n  \"dengue</w>\": 41932,\n  \"denham</w>\": 39180,\n  \"deni\": 21995,\n  \"denial</w>\": 25716,\n  \"denied</w>\": 15780,\n  \"denies</w>\": 19565,\n  \"denim</w>\": 13606,\n  \"denis\": 47630,\n  \"denis</w>\": 18750,\n  \"denise\": 45900,\n  \"denise</w>\": 20899,\n  \"denmark</w>\": 13268,\n  \"dennis\": 32738,\n  \"dennis</w>\": 10534,\n  \"denny</w>\": 26808,\n  \"denomin\": 41016,\n  \"dens</w>\": 16533,\n  \"dense</w>\": 19353,\n  \"density</w>\": 22431,\n  \"dent\": 3593,\n  \"dent</w>\": 1258,\n  \"dental\": 24635,\n  \"dental</w>\": 8382,\n  \"dentally</w>\": 10346,\n  \"dented</w>\": 21923,\n  \"denti\": 4418,\n  \"dential</w>\": 5459,\n  \"dentist</w>\": 17816,\n  \"dentistry</w>\": 25754,\n  \"dently</w>\": 28817,\n  \"denton</w>\": 23567,\n  \"dents</w>\": 1517,\n  \"denver\": 27847,\n  \"denver</w>\": 8569,\n  \"deny</w>\": 18679,\n  \"denying</w>\": 32771,\n  \"denzel</w>\": 42503,\n  \"deo\": 26406,\n  \"deo</w>\": 12121,\n  \"deodor\": 47639,\n  \"deol</w>\": 41902,\n  \"deon\": 31466,\n  \"deon</w>\": 16079,\n  \"dep\": 6079,\n  \"dep</w>\": 24370,\n  \"depar\": 10794,\n  \"depart\": 5343,\n  \"depart</w>\": 30649,\n  \"departed</w>\": 32541,\n  \"departing</w>\": 26902,\n  \"department</w>\": 5744,\n  \"departments</w>\": 29523,\n  \"departs</w>\": 38998,\n  \"departure</w>\": 17850,\n  \"depe\": 36118,\n  \"depend\": 13894,\n  \"depend</w>\": 27371,\n  \"dependence</w>\": 40243,\n  \"dependent</w>\": 23280,\n  \"depending</w>\": 23673,\n  \"depends</w>\": 20497,\n  \"depic\": 11307,\n  \"depicted</w>\": 34637,\n  \"depicting</w>\": 24970,\n  \"depiction</w>\": 31071,\n  \"depicts</w>\": 29340,\n  \"deple\": 38504,\n  \"deplo\": 9356,\n  \"deplor\": 39232,\n  \"deploy</w>\": 26944,\n  \"deployed</w>\": 20009,\n  \"deploying</w>\": 42212,\n  \"deployment</w>\": 20183,\n  \"depo\": 14276,\n  \"depor\": 36110,\n  \"deport\": 23389,\n  \"deportation</w>\": 36617,\n  \"deported</w>\": 39320,\n  \"deportes</w>\": 47878,\n  \"depos\": 21266,\n  \"deposit</w>\": 16775,\n  \"deposits</w>\": 30740,\n  \"depot</w>\": 12589,\n  \"depp</w>\": 24941,\n  \"depre\": 7107,\n  \"depress\": 38869,\n  \"depressed</w>\": 23269,\n  \"depressing</w>\": 29235,\n  \"depression</w>\": 10023,\n  \"depri\": 28587,\n  \"depriv\": 45809,\n  \"deprivation</w>\": 47810,\n  \"deprived</w>\": 39140,\n  \"dept</w>\": 9201,\n  \"depth</w>\": 10350,\n  \"depths</w>\": 28855,\n  \"depu\": 6912,\n  \"deputies</w>\": 24914,\n  \"deputy</w>\": 7932,\n  \"der\": 839,\n  \"der</w>\": 801,\n  \"dera</w>\": 20696,\n  \"derail\": 48502,\n  \"derby\": 13904,\n  \"derby</w>\": 7177,\n  \"derbyshire</w>\": 22147,\n  \"derdale</w>\": 21513,\n  \"dere\": 5701,\n  \"dere</w>\": 44194,\n  \"dered</w>\": 3776,\n  \"derek\": 22461,\n  \"derek</w>\": 11205,\n  \"derel\": 46728,\n  \"derer</w>\": 11289,\n  \"derers</w>\": 20882,\n  \"deri\": 34573,\n  \"derick</w>\": 33908,\n  \"dering</w>\": 6076,\n  \"deriv\": 33458,\n  \"derived</w>\": 26461,\n  \"derland</w>\": 35488,\n  \"derman</w>\": 29740,\n  \"dermatology</w>\": 48051,\n  \"dern</w>\": 30086,\n  \"dero\": 37203,\n  \"dero</w>\": 34026,\n  \"derrick</w>\": 21798,\n  \"derry\": 45777,\n  \"derry</w>\": 20535,\n  \"ders\": 37307,\n  \"ders</w>\": 1923,\n  \"derson</w>\": 12677,\n  \"dery</w>\": 17172,\n  \"des\": 6797,\n  \"des</w>\": 1437,\n  \"desai</w>\": 35316,\n  \"desc\": 13866,\n  \"descen\": 32318,\n  \"descend\": 26004,\n  \"descend</w>\": 46241,\n  \"descendants</w>\": 36323,\n  \"descending</w>\": 36620,\n  \"descent</w>\": 19375,\n  \"desch\": 49209,\n  \"descri\": 4637,\n  \"describe</w>\": 10967,\n  \"described</w>\": 14671,\n  \"describes</w>\": 13678,\n  \"describing</w>\": 24239,\n  \"descrip\": 41832,\n  \"description</w>\": 13951,\n  \"descriptions</w>\": 40653,\n  \"desde</w>\": 42218,\n  \"dese\": 27195,\n  \"deser\": 3659,\n  \"desert\": 45776,\n  \"desert</w>\": 7301,\n  \"deserted</w>\": 41560,\n  \"deserve</w>\": 7043,\n  \"deserved</w>\": 10061,\n  \"deserves</w>\": 9079,\n  \"deserving</w>\": 26615,\n  \"desh\": 25320,\n  \"desh</w>\": 7448,\n  \"deshi</w>\": 42769,\n  \"desi\": 6772,\n  \"desi</w>\": 26635,\n  \"desig\": 1250,\n  \"design\": 8359,\n  \"design</w>\": 1681,\n  \"designated</w>\": 24119,\n  \"designation</w>\": 41155,\n  \"designed</w>\": 4486,\n  \"designer\": 35640,\n  \"designer</w>\": 5728,\n  \"designers</w>\": 12720,\n  \"designing</w>\": 13467,\n  \"designs</w>\": 6747,\n  \"designthinking</w>\": 32450,\n  \"desirable</w>\": 32368,\n  \"desire</w>\": 11858,\n  \"desired</w>\": 28631,\n  \"desires</w>\": 27598,\n  \"desk\": 11937,\n  \"desk</w>\": 6550,\n  \"desks</w>\": 41014,\n  \"desktop</w>\": 14345,\n  \"desmond</w>\": 27821,\n  \"desol\": 41258,\n  \"desp\": 3642,\n  \"despair</w>\": 28097,\n  \"desper\": 10144,\n  \"desperate</w>\": 15072,\n  \"desperately</w>\": 21993,\n  \"despic\": 32442,\n  \"despicable</w>\": 37158,\n  \"despite</w>\": 5325,\n  \"dess\": 7096,\n  \"dess</w>\": 10001,\n  \"dessert</w>\": 9753,\n  \"desserts</w>\": 22948,\n  \"desses</w>\": 43913,\n  \"dest\": 6540,\n  \"dest</w>\": 4549,\n  \"destin\": 4934,\n  \"destination\": 32191,\n  \"destination</w>\": 9179,\n  \"destinations</w>\": 16981,\n  \"destined</w>\": 28525,\n  \"destiny\": 39875,\n  \"destiny</w>\": 10867,\n  \"destro\": 8287,\n  \"destroy\": 8308,\n  \"destroy</w>\": 11930,\n  \"destroyed</w>\": 9965,\n  \"destroyer</w>\": 25291,\n  \"destroying</w>\": 19613,\n  \"destroys</w>\": 27634,\n  \"destruc\": 22945,\n  \"destruction</w>\": 14281,\n  \"destructive</w>\": 29591,\n  \"det\": 28966,\n  \"det</w>\": 15366,\n  \"deta\": 1914,\n  \"detached</w>\": 26252,\n  \"detail</w>\": 7657,\n  \"detailed</w>\": 12609,\n  \"detailing</w>\": 23163,\n  \"details</w>\": 2353,\n  \"detained</w>\": 20260,\n  \"dete\": 5606,\n  \"detec\": 17991,\n  \"detect</w>\": 22744,\n  \"detected</w>\": 26988,\n  \"detecting</w>\": 41290,\n  \"detection</w>\": 16220,\n  \"detective</w>\": 13672,\n  \"detectives</w>\": 27994,\n  \"detector</w>\": 27689,\n  \"detectors</w>\": 45063,\n  \"detention</w>\": 16908,\n  \"deter\": 10742,\n  \"deter</w>\": 47458,\n  \"detergent</w>\": 46726,\n  \"deterior\": 28512,\n  \"determin\": 8325,\n  \"determination</w>\": 17410,\n  \"determine</w>\": 16768,\n  \"determined</w>\": 14371,\n  \"determines</w>\": 42192,\n  \"determining</w>\": 39884,\n  \"deth</w>\": 38375,\n  \"deto\": 39710,\n  \"deton\": 39335,\n  \"detour</w>\": 31211,\n  \"detox</w>\": 22459,\n  \"detri\": 47951,\n  \"detro\": 6210,\n  \"detroit\": 19404,\n  \"detroit</w>\": 7073,\n  \"detta</w>\": 45438,\n  \"dette</w>\": 35750,\n  \"deu\": 21457,\n  \"deuce</w>\": 45332,\n  \"deus</w>\": 37625,\n  \"deut\": 14970,\n  \"deutsch\": 30389,\n  \"deutsche</w>\": 32760,\n  \"deutschland</w>\": 36878,\n  \"deux</w>\": 47089,\n  \"dev\": 2797,\n  \"dev</w>\": 3670,\n  \"deva</w>\": 45179,\n  \"devan\": 37072,\n  \"devast\": 12913,\n  \"devastated</w>\": 29865,\n  \"devastating</w>\": 19280,\n  \"devastation</w>\": 42452,\n  \"devel\": 1820,\n  \"develop\": 1966,\n  \"develop</w>\": 7708,\n  \"developed</w>\": 8763,\n  \"developer</w>\": 10929,\n  \"developers</w>\": 13248,\n  \"developing</w>\": 8131,\n  \"development</w>\": 2855,\n  \"developmental</w>\": 29347,\n  \"developments</w>\": 17393,\n  \"develops</w>\": 29895,\n  \"deven\": 45537,\n  \"devgn</w>\": 29871,\n  \"devi\": 12926,\n  \"devi</w>\": 20717,\n  \"deviant\": 25593,\n  \"deviantart</w>\": 26046,\n  \"device</w>\": 8163,\n  \"devices</w>\": 9067,\n  \"devil\": 8894,\n  \"devil</w>\": 8043,\n  \"deville</w>\": 34329,\n  \"devils</w>\": 11683,\n  \"devin\": 31193,\n  \"devin</w>\": 20996,\n  \"devine</w>\": 33019,\n  \"devlin</w>\": 48040,\n  \"devo\": 11861,\n  \"devo</w>\": 43444,\n  \"devon\": 16205,\n  \"devon</w>\": 10046,\n  \"devops</w>\": 21504,\n  \"devos</w>\": 40646,\n  \"devote\": 37777,\n  \"devoted</w>\": 24561,\n  \"devotees</w>\": 39759,\n  \"devotion</w>\": 25821,\n  \"devotional</w>\": 35456,\n  \"devs</w>\": 27374,\n  \"dew\": 31952,\n  \"dew</w>\": 16358,\n  \"dewey</w>\": 40399,\n  \"dex\": 10030,\n  \"dex</w>\": 13790,\n  \"dexpo</w>\": 42502,\n  \"dexter\": 45049,\n  \"dexter</w>\": 22781,\n  \"dey</w>\": 11829,\n  \"dez\": 23190,\n  \"dez</w>\": 8122,\n  \"df\": 12908,\n  \"df</w>\": 10468,\n  \"dfc</w>\": 41903,\n  \"dfs</w>\": 32880,\n  \"dfw</w>\": 20439,\n  \"dg\": 2394,\n  \"dg</w>\": 9742,\n  \"dgate</w>\": 41684,\n  \"dge\": 4016,\n  \"dge</w>\": 1360,\n  \"dged</w>\": 11830,\n  \"dgeon</w>\": 45655,\n  \"dgers</w>\": 8733,\n  \"dges</w>\": 5432,\n  \"dging</w>\": 9565,\n  \"dh\": 6669,\n  \"dh</w>\": 9960,\n  \"dha\": 11629,\n  \"dha</w>\": 27377,\n  \"dhabi</w>\": 22349,\n  \"dhaka</w>\": 32877,\n  \"dham\": 29635,\n  \"dham</w>\": 30838,\n  \"dhan\": 12542,\n  \"dhan</w>\": 28569,\n  \"dhanush\": 26162,\n  \"dhanush</w>\": 36200,\n  \"dhanushkraja</w>\": 29266,\n  \"dhar\": 12397,\n  \"dharma</w>\": 30536,\n  \"dhary</w>\": 28706,\n  \"dhawan</w>\": 44699,\n  \"dhe\": 29706,\n  \"dheim</w>\": 44280,\n  \"dhi\": 31553,\n  \"dhi</w>\": 26166,\n  \"dho\": 37834,\n  \"dhoni</w>\": 25698,\n  \"dhru\": 40257,\n  \"dhry</w>\": 39960,\n  \"dhs</w>\": 26849,\n  \"dhu\": 32387,\n  \"di\": 570,\n  \"di</w>\": 1618,\n  \"dia\": 7351,\n  \"dia</w>\": 3357,\n  \"diab\": 15954,\n  \"diabe\": 19167,\n  \"diabete\": 43826,\n  \"diabetes</w>\": 10319,\n  \"diabetic</w>\": 30230,\n  \"diablo</w>\": 23931,\n  \"diag\": 6851,\n  \"diagno\": 7736,\n  \"diagnose</w>\": 44429,\n  \"diagnosed</w>\": 16979,\n  \"diagnosis</w>\": 15715,\n  \"diagnostic</w>\": 26351,\n  \"diagnostics</w>\": 37723,\n  \"diagram</w>\": 22697,\n  \"dial\": 18416,\n  \"dial</w>\": 11381,\n  \"dialo\": 30709,\n  \"dialog</w>\": 48945,\n  \"dialogue</w>\": 11288,\n  \"dialogues</w>\": 40330,\n  \"dialysis</w>\": 44798,\n  \"diam\": 4347,\n  \"diameter</w>\": 27189,\n  \"diamon\": 8873,\n  \"diamond\": 18535,\n  \"diamond</w>\": 6235,\n  \"diamonds</w>\": 12687,\n  \"dian\": 16021,\n  \"dian</w>\": 4998,\n  \"diana</w>\": 12803,\n  \"diane</w>\": 15855,\n  \"dianne</w>\": 42299,\n  \"dians</w>\": 21041,\n  \"diaper</w>\": 34382,\n  \"diapers</w>\": 39659,\n  \"diar\": 25932,\n  \"diaries</w>\": 15541,\n  \"diary</w>\": 10380,\n  \"dias\": 22137,\n  \"dias</w>\": 29354,\n  \"diaspora</w>\": 28390,\n  \"diaz</w>\": 17688,\n  \"dic\": 1404,\n  \"dic</w>\": 6717,\n  \"dicap\": 30023,\n  \"dicaprio</w>\": 30755,\n  \"dice</w>\": 14406,\n  \"dick\": 14413,\n  \"dick</w>\": 9554,\n  \"dickens</w>\": 33421,\n  \"dict\": 45360,\n  \"dict</w>\": 15159,\n  \"dictat\": 26156,\n  \"dictator</w>\": 27399,\n  \"dictatorship</w>\": 37989,\n  \"dictionary</w>\": 19699,\n  \"did\": 1861,\n  \"did</w>\": 1335,\n  \"diddy</w>\": 33527,\n  \"didi</w>\": 34396,\n  \"didier</w>\": 45614,\n  \"didn</w>\": 2376,\n  \"didnt</w>\": 13057,\n  \"dido</w>\": 31725,\n  \"didyou\": 12295,\n  \"didyouknow</w>\": 12506,\n  \"die\": 3150,\n  \"die</w>\": 2082,\n  \"diec\": 27729,\n  \"diecast</w>\": 37936,\n  \"died</w>\": 3622,\n  \"diego\": 30940,\n  \"diego</w>\": 6306,\n  \"diem</w>\": 45571,\n  \"dience</w>\": 33686,\n  \"dient</w>\": 27231,\n  \"dier\": 29702,\n  \"dier</w>\": 16394,\n  \"dies\": 20104,\n  \"dies</w>\": 1862,\n  \"diesel\": 46312,\n  \"diesel</w>\": 10591,\n  \"diest</w>\": 45739,\n  \"diet\": 21295,\n  \"diet</w>\": 6582,\n  \"dietary</w>\": 29009,\n  \"dietrich</w>\": 47005,\n  \"diets</w>\": 35173,\n  \"dif\": 18656,\n  \"dif</w>\": 48731,\n  \"diff\": 44073,\n  \"diff</w>\": 20331,\n  \"diffe\": 1967,\n  \"differ</w>\": 34620,\n  \"differen\": 14903,\n  \"difference</w>\": 4731,\n  \"differences</w>\": 14003,\n  \"different</w>\": 2731,\n  \"differenti\": 21729,\n  \"differential</w>\": 34027,\n  \"differentiate</w>\": 49032,\n  \"differently</w>\": 18325,\n  \"diffic\": 6140,\n  \"difficult</w>\": 7405,\n  \"difficulties</w>\": 23468,\n  \"difficulty</w>\": 25245,\n  \"diffu\": 31603,\n  \"diffuser</w>\": 49400,\n  \"dig\": 1831,\n  \"dig</w>\": 9887,\n  \"dige\": 17820,\n  \"digest</w>\": 20413,\n  \"digestion</w>\": 40533,\n  \"digestive</w>\": 32304,\n  \"digg\": 43240,\n  \"digger</w>\": 35919,\n  \"diggin</w>\": 48466,\n  \"digging</w>\": 14971,\n  \"digi\": 15627,\n  \"digi</w>\": 39361,\n  \"digimon</w>\": 44181,\n  \"digit\": 14899,\n  \"digit</w>\": 27472,\n  \"digital\": 4704,\n  \"digital</w>\": 2794,\n  \"digitalart</w>\": 16987,\n  \"digitalhealth</w>\": 32190,\n  \"digitalindia</w>\": 46630,\n  \"digitally</w>\": 27543,\n  \"digitalmarketing</w>\": 15299,\n  \"digitaltransformation</w>\": 20047,\n  \"digiti\": 25935,\n  \"digits</w>\": 31710,\n  \"digni\": 45532,\n  \"dignit\": 39497,\n  \"dignity</w>\": 17744,\n  \"digo</w>\": 35701,\n  \"digs</w>\": 26877,\n  \"dih</w>\": 43089,\n  \"dii</w>\": 32755,\n  \"dijk</w>\": 44444,\n  \"dik\": 38854,\n  \"dik</w>\": 37747,\n  \"dike</w>\": 42683,\n  \"dil\": 7643,\n  \"dil</w>\": 17942,\n  \"dile\": 25428,\n  \"dilemma</w>\": 29787,\n  \"dilig\": 30664,\n  \"dill\": 12318,\n  \"dill</w>\": 27206,\n  \"dillon</w>\": 21056,\n  \"dilu\": 45242,\n  \"dim\": 19576,\n  \"dim</w>\": 17523,\n  \"dime</w>\": 24443,\n  \"dimen\": 10935,\n  \"dimension</w>\": 20479,\n  \"dimensional</w>\": 25252,\n  \"dimensions</w>\": 25086,\n  \"diment</w>\": 43500,\n  \"dimes</w>\": 44888,\n  \"dimini\": 37459,\n  \"dimit\": 22250,\n  \"dimitri</w>\": 48840,\n  \"dimp\": 38853,\n  \"din\": 1462,\n  \"din</w>\": 5673,\n  \"dina</w>\": 36815,\n  \"dinah</w>\": 30903,\n  \"dine\": 20951,\n  \"dine</w>\": 12989,\n  \"diner</w>\": 16963,\n  \"dinesh</w>\": 48341,\n  \"ding\": 7545,\n  \"ding</w>\": 796,\n  \"dinger</w>\": 45580,\n  \"dingh\": 48064,\n  \"dings</w>\": 5473,\n  \"dington</w>\": 24804,\n  \"dinho</w>\": 47370,\n  \"dini</w>\": 20196,\n  \"dining</w>\": 8658,\n  \"dinner\": 27548,\n  \"dinner</w>\": 2571,\n  \"dinners</w>\": 33570,\n  \"dino\": 9692,\n  \"dino</w>\": 14077,\n  \"dinosa\": 18955,\n  \"dinosaur</w>\": 15095,\n  \"dinosaurs</w>\": 20387,\n  \"dio\": 3779,\n  \"dio</w>\": 1521,\n  \"dioce\": 20763,\n  \"diocese</w>\": 27091,\n  \"dion\": 42899,\n  \"dion</w>\": 16250,\n  \"dior</w>\": 23655,\n  \"dios</w>\": 37563,\n  \"dious</w>\": 27417,\n  \"dioxide</w>\": 38102,\n  \"dip\": 19918,\n  \"dip</w>\": 11343,\n  \"dipl\": 8490,\n  \"diplo</w>\": 38115,\n  \"diplom\": 11169,\n  \"diploma</w>\": 21251,\n  \"diplomacy</w>\": 23798,\n  \"diplomat</w>\": 32828,\n  \"diplomatic</w>\": 23782,\n  \"diplomats</w>\": 44126,\n  \"dipped</w>\": 30610,\n  \"dipper</w>\": 49317,\n  \"dipping</w>\": 33544,\n  \"dips</w>\": 37522,\n  \"dir\": 4251,\n  \"dir</w>\": 8478,\n  \"dire\": 38355,\n  \"dire</w>\": 25664,\n  \"direc\": 1534,\n  \"direct\": 43224,\n  \"direct</w>\": 6016,\n  \"directed</w>\": 8392,\n  \"directing</w>\": 21817,\n  \"direction\": 15923,\n  \"direction</w>\": 5407,\n  \"directional</w>\": 38687,\n  \"directioner</w>\": 48042,\n  \"directioners</w>\": 22055,\n  \"directions</w>\": 16440,\n  \"directive</w>\": 40630,\n  \"directly</w>\": 9701,\n  \"director\": 20337,\n  \"director</w>\": 2681,\n  \"directorial</w>\": 45327,\n  \"directors</w>\": 11940,\n  \"directory</w>\": 25272,\n  \"directs</w>\": 34349,\n  \"directv</w>\": 48652,\n  \"dirk</w>\": 28171,\n  \"dirt\": 31415,\n  \"dirt</w>\": 11795,\n  \"dirty\": 20127,\n  \"dirty</w>\": 7615,\n  \"dis\": 1518,\n  \"dis</w>\": 6112,\n  \"disa\": 3882,\n  \"disab\": 47380,\n  \"disabilities</w>\": 17350,\n  \"disability\": 48986,\n  \"disability</w>\": 13261,\n  \"disabled</w>\": 13613,\n  \"disadvantaged</w>\": 40577,\n  \"disagree</w>\": 23199,\n  \"disapp\": 5384,\n  \"disappear\": 21148,\n  \"disappear</w>\": 25173,\n  \"disappearance</w>\": 35929,\n  \"disappeared</w>\": 23139,\n  \"disappearing</w>\": 35819,\n  \"disappears</w>\": 44406,\n  \"disappo\": 7605,\n  \"disappoint</w>\": 25446,\n  \"disappointed</w>\": 13794,\n  \"disappointing</w>\": 21941,\n  \"disappointment</w>\": 23884,\n  \"disappoints</w>\": 48545,\n  \"disappro\": 48276,\n  \"disar\": 42971,\n  \"disaster</w>\": 9072,\n  \"disasters</w>\": 26976,\n  \"disastrous</w>\": 35790,\n  \"disc\": 1472,\n  \"disc</w>\": 10712,\n  \"discar\": 40532,\n  \"discarded</w>\": 45197,\n  \"discer\": 49140,\n  \"dischar\": 22671,\n  \"discharge</w>\": 32485,\n  \"disci\": 9559,\n  \"discip\": 38951,\n  \"discipl\": 10467,\n  \"disciples</w>\": 39366,\n  \"disciplinary</w>\": 20232,\n  \"discipline</w>\": 18903,\n  \"disciplines</w>\": 42032,\n  \"discla\": 40248,\n  \"disclaimer</w>\": 46465,\n  \"disclo\": 17481,\n  \"disclose</w>\": 46379,\n  \"disclosed</w>\": 30905,\n  \"disclosure</w>\": 26502,\n  \"disco\": 2475,\n  \"disco</w>\": 11964,\n  \"discography</w>\": 47545,\n  \"discomfort</w>\": 48054,\n  \"discord</w>\": 23582,\n  \"discoun\": 18515,\n  \"discount</w>\": 7638,\n  \"discounted</w>\": 20993,\n  \"discounts</w>\": 18186,\n  \"discoura\": 45850,\n  \"discourse</w>\": 29441,\n  \"discover\": 10539,\n  \"discover</w>\": 4834,\n  \"discovered</w>\": 6986,\n  \"discoveries</w>\": 29308,\n  \"discovering</w>\": 17967,\n  \"discovers</w>\": 29719,\n  \"discovery\": 40491,\n  \"discovery</w>\": 8027,\n  \"discre\": 20616,\n  \"discrimin\": 11721,\n  \"discrimination</w>\": 14775,\n  \"discs</w>\": 29270,\n  \"discu\": 1984,\n  \"discus</w>\": 41828,\n  \"discuss</w>\": 4312,\n  \"discussed</w>\": 11300,\n  \"discusses</w>\": 8116,\n  \"discussing</w>\": 5900,\n  \"discussion</w>\": 5060,\n  \"discussions</w>\": 13806,\n  \"dise\": 4262,\n  \"disease</w>\": 5336,\n  \"diseases</w>\": 12035,\n  \"disen\": 46468,\n  \"disgrace</w>\": 29877,\n  \"disgraceful</w>\": 44146,\n  \"disgu\": 9793,\n  \"disguise</w>\": 27803,\n  \"disguised</w>\": 37149,\n  \"disgusted</w>\": 41977,\n  \"disgusting</w>\": 16218,\n  \"dish\": 11039,\n  \"dish</w>\": 4531,\n  \"disha</w>\": 42498,\n  \"dishes</w>\": 11412,\n  \"dishon\": 30777,\n  \"dishu</w>\": 44728,\n  \"dishwasher</w>\": 40524,\n  \"disin\": 19484,\n  \"disinfe\": 48050,\n  \"disintegr\": 49275,\n  \"disk</w>\": 17970,\n  \"dislike</w>\": 30796,\n  \"dism\": 30836,\n  \"dism</w>\": 38821,\n  \"dismant\": 36557,\n  \"dismiss</w>\": 43287,\n  \"dismissal</w>\": 42068,\n  \"dismissed</w>\": 30087,\n  \"dismisses</w>\": 45238,\n  \"disney\": 6729,\n  \"disney</w>\": 4696,\n  \"disneyland\": 39481,\n  \"disneyland</w>\": 13661,\n  \"disneyworld</w>\": 28469,\n  \"diso\": 26305,\n  \"disobe\": 42841,\n  \"dison</w>\": 19310,\n  \"disorder</w>\": 12635,\n  \"disorders</w>\": 17114,\n  \"disp\": 11073,\n  \"dispar\": 24633,\n  \"disparities</w>\": 45122,\n  \"dispat\": 28652,\n  \"dispatch</w>\": 26306,\n  \"dispen\": 19077,\n  \"dispenser</w>\": 40116,\n  \"disper\": 34499,\n  \"displa\": 9326,\n  \"displac\": 17718,\n  \"displaced</w>\": 22817,\n  \"displacement</w>\": 37931,\n  \"display</w>\": 4456,\n  \"displayed</w>\": 18967,\n  \"displaying</w>\": 26468,\n  \"displays</w>\": 15648,\n  \"dispo\": 13651,\n  \"dispon\": 38872,\n  \"disponible</w>\": 46130,\n  \"dispos\": 45177,\n  \"disposable</w>\": 37275,\n  \"disposal</w>\": 28231,\n  \"dispro\": 32927,\n  \"dispropor\": 40354,\n  \"disproportion\": 45492,\n  \"disregard</w>\": 43869,\n  \"disrespect</w>\": 34055,\n  \"disrespectful</w>\": 41723,\n  \"disru\": 13763,\n  \"disrup\": 14641,\n  \"disrupt</w>\": 25214,\n  \"disrupted</w>\": 46674,\n  \"disrupting</w>\": 42419,\n  \"disruption</w>\": 19635,\n  \"disruptive</w>\": 31554,\n  \"diss\": 10766,\n  \"diss</w>\": 35688,\n  \"dissec\": 43879,\n  \"dissemin\": 40463,\n  \"dissent</w>\": 45154,\n  \"disser\": 25560,\n  \"dissertation</w>\": 29448,\n  \"dissi\": 25088,\n  \"dissol\": 27398,\n  \"dissuper</w>\": 33461,\n  \"dist\": 5479,\n  \"dist</w>\": 12116,\n  \"distance</w>\": 7964,\n  \"distances</w>\": 37078,\n  \"distant</w>\": 18949,\n  \"distill\": 41586,\n  \"distilled</w>\": 49179,\n  \"distillery</w>\": 22200,\n  \"distin\": 11892,\n  \"distinct</w>\": 25056,\n  \"distinction</w>\": 28183,\n  \"distinctive</w>\": 25486,\n  \"distingui\": 15053,\n  \"distinguish</w>\": 45418,\n  \"distinguished</w>\": 16513,\n  \"distor\": 23781,\n  \"distortion</w>\": 43690,\n  \"distr\": 11885,\n  \"distract</w>\": 39309,\n  \"distracted</w>\": 24049,\n  \"distraction</w>\": 32039,\n  \"distress</w>\": 26866,\n  \"distressed</w>\": 37515,\n  \"distri\": 5987,\n  \"distribu\": 6138,\n  \"distribute</w>\": 32313,\n  \"distributed</w>\": 16419,\n  \"distributing</w>\": 35216,\n  \"distribution</w>\": 10484,\n  \"distributor</w>\": 28354,\n  \"distributors</w>\": 44240,\n  \"distric\": 3208,\n  \"district\": 46683,\n  \"district</w>\": 3506,\n  \"districts</w>\": 17565,\n  \"distur\": 11732,\n  \"disturb\": 33018,\n  \"disturb</w>\": 39449,\n  \"disturbance</w>\": 42416,\n  \"disturbed</w>\": 29967,\n  \"disturbing</w>\": 21476,\n  \"disupdates</w>\": 45667,\n  \"dit\": 5752,\n  \"dit</w>\": 2524,\n  \"dita</w>\": 47965,\n  \"ditch\": 43715,\n  \"ditch</w>\": 19291,\n  \"dited</w>\": 40392,\n  \"diti\": 2363,\n  \"dition\": 16452,\n  \"dition</w>\": 3015,\n  \"ditional</w>\": 4322,\n  \"ditions</w>\": 4503,\n  \"dito</w>\": 43705,\n  \"dits</w>\": 49374,\n  \"dity</w>\": 16436,\n  \"dium</w>\": 2903,\n  \"div\": 5293,\n  \"div</w>\": 14869,\n  \"diva</w>\": 13605,\n  \"divas</w>\": 23534,\n  \"dive\": 26042,\n  \"dive</w>\": 9058,\n  \"diver\": 13119,\n  \"diver</w>\": 22094,\n  \"divergence</w>\": 48735,\n  \"divergent</w>\": 36132,\n  \"divers\": 30241,\n  \"divers</w>\": 27038,\n  \"diverse</w>\": 11464,\n  \"diversi\": 24475,\n  \"diversion</w>\": 38457,\n  \"diversity\": 35634,\n  \"diversity</w>\": 6257,\n  \"diverted</w>\": 41049,\n  \"dives</w>\": 13893,\n  \"divi\": 8375,\n  \"divid\": 31337,\n  \"divide</w>\": 18842,\n  \"divided</w>\": 18689,\n  \"dividend</w>\": 32067,\n  \"dividends</w>\": 45146,\n  \"dividing</w>\": 45605,\n  \"divin\": 21838,\n  \"divine\": 46919,\n  \"divine</w>\": 10976,\n  \"diving</w>\": 9886,\n  \"divinity</w>\": 39754,\n  \"divisi\": 39196,\n  \"division</w>\": 5378,\n  \"divisional</w>\": 40912,\n  \"divisions</w>\": 33715,\n  \"divor\": 13543,\n  \"divorce</w>\": 17060,\n  \"divorced</w>\": 39437,\n  \"divya</w>\": 47767,\n  \"diwali</w>\": 18218,\n  \"dix\": 45838,\n  \"dix</w>\": 27620,\n  \"dixie</w>\": 24484,\n  \"dixit</w>\": 28279,\n  \"dixon</w>\": 16086,\n  \"diy\": 28472,\n  \"diy</w>\": 7845,\n  \"diya</w>\": 36459,\n  \"diz</w>\": 32740,\n  \"dized</w>\": 36232,\n  \"dizz\": 40239,\n  \"dizzy</w>\": 35464,\n  \"dj\": 3761,\n  \"dj</w>\": 3723,\n  \"djan\": 35338,\n  \"django</w>\": 46498,\n  \"dji\": 35284,\n  \"dji</w>\": 28379,\n  \"djing</w>\": 36113,\n  \"djo\": 19432,\n  \"djoker\": 42721,\n  \"djokernole</w>\": 42830,\n  \"djokovic</w>\": 27944,\n  \"djs</w>\": 18117,\n  \"dk\": 20702,\n  \"dk</w>\": 16196,\n  \"dl\": 12558,\n  \"dl</w>\": 9373,\n  \"dlc</w>\": 19079,\n  \"dle\": 11057,\n  \"dle</w>\": 3287,\n  \"dled</w>\": 23494,\n  \"dler</w>\": 40279,\n  \"dles</w>\": 7890,\n  \"dless</w>\": 14997,\n  \"dley</w>\": 12808,\n  \"dling</w>\": 18221,\n  \"dly</w>\": 3069,\n  \"dm\": 19070,\n  \"dm</w>\": 4667,\n  \"dma</w>\": 42903,\n  \"dman</w>\": 18826,\n  \"dmc</w>\": 28991,\n  \"dmit\": 31607,\n  \"dmitry</w>\": 48326,\n  \"dms</w>\": 19955,\n  \"dmv</w>\": 27508,\n  \"dmx</w>\": 45255,\n  \"dn\": 11552,\n  \"dn</w>\": 7459,\n  \"dna</w>\": 8790,\n  \"dnb</w>\": 35422,\n  \"dnc</w>\": 20237,\n  \"dnd</w>\": 11678,\n  \"dnr</w>\": 37051,\n  \"dns</w>\": 39245,\n  \"dnt</w>\": 26795,\n  \"do\": 639,\n  \"do</w>\": 818,\n  \"doa</w>\": 48332,\n  \"dob\": 29640,\n  \"doba</w>\": 35605,\n  \"dobbs</w>\": 43006,\n  \"dobson</w>\": 46888,\n  \"doc\": 3009,\n  \"doc</w>\": 7251,\n  \"doch</w>\": 25101,\n  \"dock\": 17311,\n  \"dock</w>\": 8997,\n  \"docked</w>\": 46784,\n  \"docker</w>\": 31152,\n  \"docking</w>\": 40845,\n  \"docks</w>\": 24091,\n  \"docs</w>\": 15157,\n  \"doctor\": 7872,\n  \"doctor</w>\": 5547,\n  \"doctoral</w>\": 23649,\n  \"doctorate</w>\": 39134,\n  \"doctors</w>\": 9705,\n  \"doctorwho</w>\": 12996,\n  \"doctr\": 28497,\n  \"doctrine</w>\": 35612,\n  \"docu\": 4433,\n  \"document\": 29293,\n  \"document</w>\": 15121,\n  \"documentaries</w>\": 44209,\n  \"documentary</w>\": 7881,\n  \"documentation</w>\": 31560,\n  \"documented</w>\": 22310,\n  \"documenting</w>\": 37876,\n  \"documents</w>\": 14105,\n  \"dod\": 13847,\n  \"dod</w>\": 30187,\n  \"dodd</w>\": 36748,\n  \"dodge\": 31263,\n  \"dodge</w>\": 12093,\n  \"dodgeball</w>\": 43244,\n  \"dodger</w>\": 31641,\n  \"dodgers</w>\": 12422,\n  \"dodgy</w>\": 37727,\n  \"doe</w>\": 13296,\n  \"does\": 2397,\n  \"does</w>\": 1897,\n  \"doesn</w>\": 2503,\n  \"doesnt</w>\": 17937,\n  \"dof\": 8277,\n  \"doff</w>\": 20193,\n  \"dofficial</w>\": 42516,\n  \"dog\": 4326,\n  \"dog</w>\": 1929,\n  \"dogcelebration</w>\": 41819,\n  \"dogday</w>\": 27475,\n  \"doge</w>\": 42187,\n  \"dogg</w>\": 20749,\n  \"doggie</w>\": 32237,\n  \"doggo</w>\": 42155,\n  \"doggy</w>\": 26359,\n  \"doglo\": 40733,\n  \"dogre\": 40030,\n  \"dogrescue</w>\": 44158,\n  \"dogs\": 42182,\n  \"dogs</w>\": 3255,\n  \"dogsoftwitter</w>\": 19415,\n  \"doh</w>\": 23581,\n  \"doha</w>\": 20908,\n  \"doherty</w>\": 31774,\n  \"doi</w>\": 36361,\n  \"doin</w>\": 15412,\n  \"doing\": 37408,\n  \"doing</w>\": 1960,\n  \"doit\": 32272,\n  \"doit</w>\": 28109,\n  \"doj</w>\": 25700,\n  \"dojo</w>\": 35901,\n  \"dok\": 40547,\n  \"dok</w>\": 41034,\n  \"doka</w>\": 46528,\n  \"dol\": 2287,\n  \"dol</w>\": 19170,\n  \"dola</w>\": 38005,\n  \"dolan</w>\": 27200,\n  \"dolby</w>\": 42414,\n  \"dolce\": 30033,\n  \"dolce</w>\": 30661,\n  \"dole</w>\": 41040,\n  \"doll\": 27031,\n  \"doll</w>\": 9286,\n  \"dollar\": 35092,\n  \"dollar</w>\": 7474,\n  \"dollars</w>\": 10669,\n  \"dolls</w>\": 15090,\n  \"dolly\": 43281,\n  \"dolly</w>\": 23821,\n  \"dolom\": 37137,\n  \"dolores</w>\": 40741,\n  \"dolph\": 8900,\n  \"dolph</w>\": 22257,\n  \"dolphin\": 42963,\n  \"dolphin</w>\": 16464,\n  \"dolphins</w>\": 14002,\n  \"dom\": 2164,\n  \"dom</w>\": 1919,\n  \"domain</w>\": 15492,\n  \"domaine</w>\": 48744,\n  \"domains</w>\": 36358,\n  \"dome\": 8515,\n  \"dome</w>\": 9827,\n  \"domen\": 37584,\n  \"domest\": 21936,\n  \"domestic\": 28189,\n  \"domestic</w>\": 9043,\n  \"domin\": 4361,\n  \"dominance</w>\": 30546,\n  \"dominant</w>\": 20565,\n  \"dominate</w>\": 21431,\n  \"dominated</w>\": 23048,\n  \"dominates</w>\": 34043,\n  \"dominating</w>\": 29303,\n  \"domination</w>\": 30919,\n  \"domingo</w>\": 24882,\n  \"dominic\": 39007,\n  \"dominic</w>\": 19095,\n  \"dominican</w>\": 22934,\n  \"dominion</w>\": 27155,\n  \"domino</w>\": 30752,\n  \"dominos</w>\": 39770,\n  \"domo</w>\": 44293,\n  \"doms</w>\": 30126,\n  \"don\": 1067,\n  \"don</w>\": 847,\n  \"dona</w>\": 26789,\n  \"donal\": 42375,\n  \"donald\": 5990,\n  \"donald</w>\": 4335,\n  \"donaldson</w>\": 37783,\n  \"donaldtrump</w>\": 6652,\n  \"donat\": 36384,\n  \"donate</w>\": 6429,\n  \"donated</w>\": 8705,\n  \"donates</w>\": 26960,\n  \"donating</w>\": 12621,\n  \"donation</w>\": 7924,\n  \"donations</w>\": 9928,\n  \"doncaster\": 38008,\n  \"doncaster</w>\": 25352,\n  \"doncasterisgreat</w>\": 47333,\n  \"done\": 5136,\n  \"done</w>\": 1700,\n  \"donegal</w>\": 24172,\n  \"donesia</w>\": 41281,\n  \"donet\": 33724,\n  \"donetsk</w>\": 33999,\n  \"dong\": 26242,\n  \"dong</w>\": 31478,\n  \"dongha\": 28365,\n  \"donghae</w>\": 28945,\n  \"donia</w>\": 24014,\n  \"donkey</w>\": 21415,\n  \"donkeys</w>\": 44644,\n  \"donna</w>\": 9158,\n  \"donne\": 30897,\n  \"donnein\": 38308,\n  \"donneinarte</w>\": 40193,\n  \"donnell</w>\": 35118,\n  \"donnelly</w>\": 39070,\n  \"donnie\": 47058,\n  \"donnie</w>\": 30609,\n  \"donny\": 37291,\n  \"donny</w>\": 32887,\n  \"dono\": 14840,\n  \"donor</w>\": 18013,\n  \"donors</w>\": 17887,\n  \"donovan</w>\": 21499,\n  \"dons</w>\": 22127,\n  \"dont\": 8094,\n  \"dont</w>\": 4632,\n  \"donut</w>\": 18471,\n  \"donuts</w>\": 13970,\n  \"doo\": 4543,\n  \"doo</w>\": 11643,\n  \"doodle</w>\": 9388,\n  \"doodled</w>\": 41030,\n  \"doodles</w>\": 22156,\n  \"doodling</w>\": 37548,\n  \"dooley</w>\": 47609,\n  \"doom\": 23263,\n  \"doom</w>\": 14344,\n  \"doomed</w>\": 33251,\n  \"doomsday</w>\": 41791,\n  \"doon</w>\": 36612,\n  \"doop</w>\": 33886,\n  \"door\": 7188,\n  \"door</w>\": 2489,\n  \"doors</w>\": 4228,\n  \"doorstep</w>\": 19533,\n  \"doorway</w>\": 46575,\n  \"dop\": 42381,\n  \"dop</w>\": 31722,\n  \"dope\": 42587,\n  \"dope</w>\": 10094,\n  \"doping</w>\": 30285,\n  \"dopp\": 21774,\n  \"doppelg\": 45216,\n  \"doppler</w>\": 42540,\n  \"dor\": 2766,\n  \"dor</w>\": 8695,\n  \"dora</w>\": 18104,\n  \"dorado</w>\": 32350,\n  \"dorchester</w>\": 32656,\n  \"dore</w>\": 39423,\n  \"dores</w>\": 34323,\n  \"dorf</w>\": 17296,\n  \"dori</w>\": 49270,\n  \"doria</w>\": 43186,\n  \"dorian</w>\": 44016,\n  \"doris</w>\": 24285,\n  \"dork</w>\": 36206,\n  \"dorm</w>\": 24263,\n  \"doro\": 15498,\n  \"doro</w>\": 37389,\n  \"dorothy</w>\": 20805,\n  \"dors</w>\": 31240,\n  \"dorset\": 42109,\n  \"dorset</w>\": 16047,\n  \"dorsey</w>\": 41607,\n  \"dortmund</w>\": 24290,\n  \"dory</w>\": 36135,\n  \"dos\": 44258,\n  \"dos</w>\": 5474,\n  \"dose</w>\": 11497,\n  \"doses</w>\": 37873,\n  \"dossier</w>\": 46042,\n  \"dost</w>\": 44222,\n  \"dot\": 7473,\n  \"dot</w>\": 7004,\n  \"dota</w>\": 23085,\n  \"dotcom</w>\": 12443,\n  \"dote</w>\": 31202,\n  \"dothis</w>\": 47864,\n  \"dotnet</w>\": 43124,\n  \"dotorg</w>\": 46587,\n  \"dots</w>\": 19019,\n  \"dotted</w>\": 47950,\n  \"dou\": 1756,\n  \"dou</w>\": 23608,\n  \"doub\": 19631,\n  \"double\": 13013,\n  \"double</w>\": 3200,\n  \"doubled</w>\": 24948,\n  \"doubleheader</w>\": 34668,\n  \"doubles</w>\": 12539,\n  \"doubling</w>\": 36850,\n  \"doubt\": 37071,\n  \"doubt</w>\": 8671,\n  \"doubts</w>\": 30894,\n  \"douche</w>\": 44292,\n  \"doug\": 20271,\n  \"doug</w>\": 10758,\n  \"dough\": 15785,\n  \"dough</w>\": 14983,\n  \"doughnut</w>\": 32555,\n  \"doughnuts</w>\": 31124,\n  \"dougie</w>\": 46317,\n  \"dougla\": 9140,\n  \"douglas</w>\": 10065,\n  \"douglass</w>\": 45692,\n  \"doun</w>\": 44785,\n  \"dov</w>\": 38856,\n  \"dova</w>\": 26551,\n  \"dove\": 27511,\n  \"dove</w>\": 18281,\n  \"dover\": 43019,\n  \"dover</w>\": 14683,\n  \"doves</w>\": 47067,\n  \"dow\": 8022,\n  \"dow</w>\": 10688,\n  \"dowell</w>\": 27344,\n  \"down\": 1833,\n  \"down</w>\": 1136,\n  \"downe</w>\": 46501,\n  \"downed</w>\": 35814,\n  \"downer</w>\": 42522,\n  \"downers</w>\": 43739,\n  \"downey</w>\": 29429,\n  \"downfall</w>\": 48702,\n  \"downhill</w>\": 27387,\n  \"downing</w>\": 28140,\n  \"download\": 35076,\n  \"download</w>\": 3794,\n  \"downloadable</w>\": 49105,\n  \"downloaded</w>\": 22961,\n  \"downloading</w>\": 30519,\n  \"downloads</w>\": 26481,\n  \"downpour</w>\": 39034,\n  \"downpours</w>\": 40160,\n  \"downs</w>\": 10706,\n  \"downside</w>\": 41937,\n  \"downstairs</w>\": 28174,\n  \"downstream</w>\": 43822,\n  \"downtime</w>\": 41964,\n  \"downton\": 45023,\n  \"downton</w>\": 42668,\n  \"downtown\": 18230,\n  \"downtown</w>\": 5061,\n  \"downward</w>\": 37430,\n  \"dowski</w>\": 43556,\n  \"dox\": 44786,\n  \"dox</w>\": 14510,\n  \"doyle</w>\": 17728,\n  \"doyou\": 27256,\n  \"doz</w>\": 31106,\n  \"dozen</w>\": 16401,\n  \"dozens</w>\": 17883,\n  \"dp\": 23820,\n  \"dp</w>\": 6465,\n  \"dprint</w>\": 46644,\n  \"dprinting</w>\": 16194,\n  \"dprk</w>\": 47920,\n  \"dps</w>\": 34288,\n  \"dq</w>\": 28741,\n  \"dr\": 1084,\n  \"dr</w>\": 1701,\n  \"dra\": 1114,\n  \"dra</w>\": 7402,\n  \"drac\": 20168,\n  \"dracing</w>\": 41253,\n  \"dracula</w>\": 25405,\n  \"draf\": 37426,\n  \"draft\": 30624,\n  \"draft</w>\": 5198,\n  \"drafted</w>\": 19129,\n  \"drafting</w>\": 33528,\n  \"drafts</w>\": 29194,\n  \"drag\": 8452,\n  \"drag</w>\": 12463,\n  \"dragged</w>\": 27884,\n  \"dragging</w>\": 37069,\n  \"dragon\": 9187,\n  \"dragon</w>\": 5471,\n  \"dragonball\": 40959,\n  \"dragoncon</w>\": 47802,\n  \"dragonfly</w>\": 32824,\n  \"dragons</w>\": 10203,\n  \"dragrace</w>\": 40762,\n  \"drags</w>\": 45368,\n  \"drain\": 23347,\n  \"drain</w>\": 19467,\n  \"drainage</w>\": 25953,\n  \"drained</w>\": 44630,\n  \"drains</w>\": 43638,\n  \"drainthe\": 47337,\n  \"drake\": 32504,\n  \"drake</w>\": 8958,\n  \"dral</w>\": 7503,\n  \"dram\": 6937,\n  \"dram</w>\": 32170,\n  \"drama</w>\": 5055,\n  \"dramas</w>\": 33467,\n  \"dramati\": 43512,\n  \"dramatic</w>\": 11240,\n  \"dramatically</w>\": 24495,\n  \"drank</w>\": 21712,\n  \"draped</w>\": 49113,\n  \"drastic</w>\": 43159,\n  \"drastically</w>\": 35478,\n  \"drau\": 18621,\n  \"draw\": 17675,\n  \"draw</w>\": 4001,\n  \"drawer</w>\": 23219,\n  \"drawers</w>\": 38975,\n  \"drawing\": 36996,\n  \"drawing</w>\": 3610,\n  \"drawings</w>\": 13397,\n  \"drawn</w>\": 8893,\n  \"draws</w>\": 12043,\n  \"dray\": 25562,\n  \"drayton</w>\": 49044,\n  \"drc</w>\": 21434,\n  \"dre\": 960,\n  \"dre</w>\": 14584,\n  \"dread\": 17412,\n  \"dread</w>\": 31403,\n  \"dreaded</w>\": 47227,\n  \"dreadful</w>\": 35846,\n  \"dreality</w>\": 48367,\n  \"dream\": 4595,\n  \"dream</w>\": 2984,\n  \"dreambig</w>\": 46495,\n  \"dreamcast</w>\": 47226,\n  \"dreamed</w>\": 27984,\n  \"dreamer</w>\": 25692,\n  \"dreamers</w>\": 27194,\n  \"dreaming</w>\": 11662,\n  \"dreamliner</w>\": 49143,\n  \"dreams</w>\": 4405,\n  \"dreamt</w>\": 43743,\n  \"dreamteam</w>\": 40090,\n  \"dreamy</w>\": 23517,\n  \"dred</w>\": 10903,\n  \"dredge</w>\": 48783,\n  \"dren\": 29068,\n  \"dren</w>\": 47309,\n  \"drenched</w>\": 46378,\n  \"dres\": 48852,\n  \"dres</w>\": 44697,\n  \"dresden</w>\": 34836,\n  \"dress\": 12622,\n  \"dress</w>\": 2595,\n  \"dressage</w>\": 36144,\n  \"dressed</w>\": 6559,\n  \"dresser</w>\": 26346,\n  \"dresses</w>\": 8184,\n  \"dressing</w>\": 6348,\n  \"drew\": 18792,\n  \"drew</w>\": 5281,\n  \"drex\": 33985,\n  \"drey\": 48271,\n  \"dri\": 1203,\n  \"dri</w>\": 28833,\n  \"drian</w>\": 36870,\n  \"dribb\": 42153,\n  \"dric</w>\": 23448,\n  \"dridge</w>\": 22956,\n  \"drie</w>\": 40170,\n  \"dried</w>\": 16037,\n  \"drier</w>\": 39877,\n  \"dries</w>\": 33857,\n  \"drif\": 33585,\n  \"drift</w>\": 18194,\n  \"drifting</w>\": 30276,\n  \"drill</w>\": 11626,\n  \"drilled</w>\": 46338,\n  \"drilling</w>\": 18634,\n  \"drills</w>\": 24378,\n  \"drin\": 3375,\n  \"drin</w>\": 47133,\n  \"drink\": 14131,\n  \"drink</w>\": 3979,\n  \"drinking</w>\": 5778,\n  \"drinklocal</w>\": 45998,\n  \"drinks</w>\": 6732,\n  \"drip</w>\": 24050,\n  \"dripping</w>\": 38787,\n  \"dris</w>\": 35804,\n  \"drive\": 11402,\n  \"drive</w>\": 2620,\n  \"driven</w>\": 9314,\n  \"driver\": 27563,\n  \"driver</w>\": 4383,\n  \"driverless</w>\": 46769,\n  \"drivers</w>\": 7384,\n  \"drives</w>\": 11441,\n  \"driveway</w>\": 26273,\n  \"driving\": 37800,\n  \"driving</w>\": 4161,\n  \"drizzle</w>\": 28240,\n  \"drm</w>\": 39674,\n  \"dro\": 1494,\n  \"dro</w>\": 12442,\n  \"drogba</w>\": 49199,\n  \"droid</w>\": 38016,\n  \"drome</w>\": 9157,\n  \"dron\": 43898,\n  \"dron</w>\": 23360,\n  \"drone\": 33557,\n  \"drone</w>\": 9397,\n  \"drones</w>\": 14006,\n  \"droo\": 30715,\n  \"drool</w>\": 41554,\n  \"drooling</w>\": 44360,\n  \"drop\": 16407,\n  \"drop</w>\": 3387,\n  \"dropbox</w>\": 47216,\n  \"dropped</w>\": 6792,\n  \"dropping</w>\": 8339,\n  \"drops</w>\": 6437,\n  \"dros</w>\": 47033,\n  \"drou\": 38558,\n  \"drought</w>\": 13935,\n  \"drove</w>\": 13753,\n  \"drow\": 21159,\n  \"drown</w>\": 28571,\n  \"drowned</w>\": 34005,\n  \"drowning</w>\": 24618,\n  \"drs</w>\": 21257,\n  \"dru\": 2275,\n  \"dru</w>\": 49048,\n  \"drug\": 20601,\n  \"drug</w>\": 5600,\n  \"drugs</w>\": 8021,\n  \"druid</w>\": 40297,\n  \"drum\": 13353,\n  \"drum</w>\": 8698,\n  \"drummer</w>\": 13618,\n  \"drummers</w>\": 46191,\n  \"drumming</w>\": 35480,\n  \"drummond</w>\": 42213,\n  \"drums</w>\": 11690,\n  \"drun\": 15488,\n  \"drunk\": 37398,\n  \"drunk</w>\": 8232,\n  \"drunken</w>\": 28196,\n  \"drupal</w>\": 46481,\n  \"drush</w>\": 43009,\n  \"drwho</w>\": 48342,\n  \"dry\": 13544,\n  \"dry</w>\": 4501,\n  \"dryer</w>\": 24425,\n  \"drying</w>\": 23203,\n  \"ds\": 3361,\n  \"ds</w>\": 646,\n  \"dsa</w>\": 47607,\n  \"dsb\": 47168,\n  \"dsb</w>\": 14257,\n  \"dsburg</w>\": 47237,\n  \"dsc</w>\": 37240,\n  \"dsd</w>\": 45383,\n  \"dsley</w>\": 40740,\n  \"dslr</w>\": 33740,\n  \"dsm</w>\": 39502,\n  \"dson</w>\": 40310,\n  \"dsp</w>\": 45291,\n  \"dss</w>\": 41580,\n  \"dstv</w>\": 35027,\n  \"dt\": 13104,\n  \"dt</w>\": 7427,\n  \"dthe\": 13863,\n  \"dtla</w>\": 31885,\n  \"dtm</w>\": 42407,\n  \"dts</w>\": 46233,\n  \"du\": 691,\n  \"du</w>\": 3686,\n  \"dua</w>\": 25244,\n  \"dual\": 39739,\n  \"dual</w>\": 5347,\n  \"duane</w>\": 38946,\n  \"dub\": 14526,\n  \"dub</w>\": 13144,\n  \"duba\": 5485,\n  \"dubai\": 32599,\n  \"dubai</w>\": 5985,\n  \"dubbed</w>\": 27740,\n  \"dublin\": 20707,\n  \"dublin</w>\": 6145,\n  \"dubnation</w>\": 47329,\n  \"dubois</w>\": 48046,\n  \"dubrov\": 46709,\n  \"dubrovnik</w>\": 48724,\n  \"dubs</w>\": 27013,\n  \"dubstep</w>\": 38303,\n  \"dubu\": 43257,\n  \"duc\": 979,\n  \"duc</w>\": 36446,\n  \"ducati</w>\": 28570,\n  \"ducation</w>\": 17197,\n  \"duce</w>\": 3660,\n  \"duchess</w>\": 21713,\n  \"duck\": 12708,\n  \"duck</w>\": 6910,\n  \"ducks</w>\": 11202,\n  \"duct</w>\": 26829,\n  \"dude\": 48087,\n  \"dude</w>\": 5710,\n  \"dudes</w>\": 14449,\n  \"dudley</w>\": 27324,\n  \"due</w>\": 2887,\n  \"duel</w>\": 27143,\n  \"dues</w>\": 37646,\n  \"duet</w>\": 25457,\n  \"duf\": 38713,\n  \"duff\": 38071,\n  \"duff</w>\": 21934,\n  \"duffy</w>\": 23599,\n  \"dug\": 22743,\n  \"dug</w>\": 21000,\n  \"dugg\": 40523,\n  \"duggan</w>\": 46169,\n  \"dugout</w>\": 36831,\n  \"duh</w>\": 26716,\n  \"dui</w>\": 29693,\n  \"duk</w>\": 14160,\n  \"duke\": 18402,\n  \"duke</w>\": 7732,\n  \"dukes</w>\": 27914,\n  \"dul\": 6738,\n  \"dulce</w>\": 44872,\n  \"dulil\": 32565,\n  \"dulkar</w>\": 47980,\n  \"dull</w>\": 19433,\n  \"dulu\": 28865,\n  \"duluth</w>\": 32109,\n  \"dulwich</w>\": 47343,\n  \"dum\": 13400,\n  \"dum</w>\": 11564,\n  \"dumb\": 15901,\n  \"dumb</w>\": 12464,\n  \"dumbass</w>\": 38980,\n  \"dummies</w>\": 40899,\n  \"dummy</w>\": 34246,\n  \"dump\": 12655,\n  \"dump</w>\": 17146,\n  \"dumped</w>\": 23768,\n  \"dumping</w>\": 31707,\n  \"dumplings</w>\": 35495,\n  \"dumps</w>\": 45804,\n  \"dumpster</w>\": 45467,\n  \"dun\": 2616,\n  \"dun</w>\": 18284,\n  \"dunbar</w>\": 41453,\n  \"duncan\": 31084,\n  \"duncan</w>\": 13502,\n  \"dundal\": 38185,\n  \"dundas</w>\": 39300,\n  \"dundee</w>\": 18619,\n  \"dune\": 32833,\n  \"dune</w>\": 28208,\n  \"dunedin</w>\": 40121,\n  \"dunes</w>\": 23526,\n  \"dung</w>\": 33712,\n  \"dungeon\": 28812,\n  \"dungeon</w>\": 22931,\n  \"dungeons</w>\": 42572,\n  \"dungeonsand\": 34970,\n  \"dungeonsanddragons</w>\": 35497,\n  \"dunham</w>\": 42501,\n  \"duni</w>\": 43454,\n  \"dunk</w>\": 17222,\n  \"dunkin\": 48022,\n  \"dunkin</w>\": 36415,\n  \"dunkirk</w>\": 46928,\n  \"dunks</w>\": 48977,\n  \"dunlop</w>\": 34753,\n  \"dunn</w>\": 19185,\n  \"dunne</w>\": 38538,\n  \"dunno</w>\": 24502,\n  \"duo</w>\": 8696,\n  \"dup\": 36805,\n  \"dup</w>\": 10445,\n  \"duper</w>\": 44850,\n  \"duplex</w>\": 41186,\n  \"duplic\": 28992,\n  \"dupont</w>\": 35994,\n  \"dur\": 4355,\n  \"dur</w>\": 23230,\n  \"dura\": 28173,\n  \"dura</w>\": 47382,\n  \"durability</w>\": 43671,\n  \"durable</w>\": 22285,\n  \"duran</w>\": 28185,\n  \"durango</w>\": 44443,\n  \"durant</w>\": 24861,\n  \"duras</w>\": 27518,\n  \"duration</w>\": 31663,\n  \"durban</w>\": 24474,\n  \"dure</w>\": 19108,\n  \"durga</w>\": 38456,\n  \"durham\": 26765,\n  \"durham</w>\": 14335,\n  \"during</w>\": 1590,\n  \"dus</w>\": 9931,\n  \"dusa</w>\": 28546,\n  \"dusk</w>\": 19708,\n  \"dust\": 29723,\n  \"dust</w>\": 8349,\n  \"dusted</w>\": 38274,\n  \"duster</w>\": 46280,\n  \"dustin\": 42423,\n  \"dustin</w>\": 21235,\n  \"dusting</w>\": 41756,\n  \"dusty</w>\": 22029,\n  \"dut\": 32625,\n  \"dutch\": 22277,\n  \"dutch</w>\": 7991,\n  \"duter\": 21624,\n  \"duterte</w>\": 22371,\n  \"duties</w>\": 19603,\n  \"dutt</w>\": 30081,\n  \"dutton</w>\": 42771,\n  \"duty</w>\": 6458,\n  \"duval</w>\": 42459,\n  \"duvet</w>\": 48006,\n  \"dux</w>\": 28562,\n  \"dv\": 4288,\n  \"dv</w>\": 26265,\n  \"dvd</w>\": 7170,\n  \"dvds</w>\": 36655,\n  \"dvn</w>\": 29811,\n  \"dvr</w>\": 29210,\n  \"dw\": 8455,\n  \"dw</w>\": 19997,\n  \"dwar\": 13487,\n  \"dwarf</w>\": 22643,\n  \"dwayne</w>\": 31395,\n  \"dwell\": 27549,\n  \"dwell</w>\": 18755,\n  \"dwelling</w>\": 37098,\n  \"dwight</w>\": 22473,\n  \"dwp</w>\": 46976,\n  \"dwts</w>\": 30220,\n  \"dwyer</w>\": 43878,\n  \"dx\": 22717,\n  \"dx</w>\": 15679,\n  \"dy\": 1444,\n  \"dy</w>\": 907,\n  \"dyce</w>\": 48325,\n  \"dye\": 37159,\n  \"dye</w>\": 15997,\n  \"dyed</w>\": 24906,\n  \"dyer</w>\": 29495,\n  \"dyes</w>\": 39874,\n  \"dying</w>\": 5115,\n  \"dyk</w>\": 12142,\n  \"dyke</w>\": 32632,\n  \"dylan\": 21004,\n  \"dylan</w>\": 9900,\n  \"dyn\": 44289,\n  \"dyn</w>\": 30669,\n  \"dynam\": 5735,\n  \"dynamic</w>\": 10057,\n  \"dynamics</w>\": 14329,\n  \"dynamite</w>\": 29003,\n  \"dynamo</w>\": 28281,\n  \"dynasty</w>\": 14593,\n  \"dyne</w>\": 42756,\n  \"dyou\": 11484,\n  \"dyour\": 22525,\n  \"dys\": 11022,\n  \"dys</w>\": 38384,\n  \"dysfunction</w>\": 36865,\n  \"dysfunctional</w>\": 40757,\n  \"dysle\": 33681,\n  \"dyslexia</w>\": 43199,\n  \"dyson</w>\": 34475,\n  \"dyssey</w>\": 17435,\n  \"dystop\": 28276,\n  \"dystopian</w>\": 38915,\n  \"dz\": 24421,\n  \"dz</w>\": 22913,\n  \"dÃ©\": 25466,\n  \"dÃ¼\": 46948,\n  \"dÃŃ\": 46988,\n  \"e\": 68,\n  \"e</w>\": 324,\n  \"ea\": 2150,\n  \"ea</w>\": 8100,\n  \"eable</w>\": 20693,\n  \"each\": 31442,\n  \"each</w>\": 2416,\n  \"eachother</w>\": 40792,\n  \"ead\": 42556,\n  \"ead</w>\": 45523,\n  \"eae</w>\": 27446,\n  \"eag\": 3743,\n  \"eager</w>\": 21551,\n  \"eagerly</w>\": 30094,\n  \"eagle\": 20207,\n  \"eagle</w>\": 7517,\n  \"eagles</w>\": 6920,\n  \"eal\": 48872,\n  \"ealing</w>\": 40484,\n  \"eames</w>\": 49072,\n  \"eamon\": 45954,\n  \"ean</w>\": 13327,\n  \"ear\": 1055,\n  \"ear</w>\": 8373,\n  \"earbuds</w>\": 47807,\n  \"eared</w>\": 9127,\n  \"earl\": 30573,\n  \"earl</w>\": 14235,\n  \"earle</w>\": 40292,\n  \"earlier</w>\": 4297,\n  \"earliest</w>\": 22097,\n  \"early\": 15840,\n  \"early</w>\": 2090,\n  \"earn\": 33977,\n  \"earn</w>\": 8465,\n  \"earned</w>\": 8898,\n  \"earnest</w>\": 45422,\n  \"earning</w>\": 14550,\n  \"earnings</w>\": 15912,\n  \"earns</w>\": 16760,\n  \"earp</w>\": 35296,\n  \"earphones</w>\": 44905,\n  \"earring</w>\": 28664,\n  \"earrings</w>\": 9136,\n  \"ears</w>\": 9861,\n  \"eart\": 7086,\n  \"earth\": 5184,\n  \"earth</w>\": 3475,\n  \"earthand\": 34229,\n  \"earthandclouds</w>\": 34480,\n  \"earthday</w>\": 19481,\n  \"earthquake</w>\": 10060,\n  \"earthquakes</w>\": 32895,\n  \"earthy</w>\": 47139,\n  \"earts</w>\": 38824,\n  \"eas\": 5740,\n  \"ease</w>\": 13574,\n  \"easier</w>\": 8817,\n  \"easiest</w>\": 26314,\n  \"easily</w>\": 8197,\n  \"easing</w>\": 44825,\n  \"easport\": 42251,\n  \"east\": 5022,\n  \"east</w>\": 2602,\n  \"eastbound</w>\": 28827,\n  \"eastbourne</w>\": 38455,\n  \"eastenders</w>\": 23545,\n  \"easter\": 14783,\n  \"easter</w>\": 4811,\n  \"eastern\": 34522,\n  \"eastern</w>\": 6311,\n  \"eastman</w>\": 48280,\n  \"easton</w>\": 29619,\n  \"eastside</w>\": 42650,\n  \"eastwood</w>\": 28270,\n  \"easy\": 18308,\n  \"easy</w>\": 3176,\n  \"eat\": 5418,\n  \"eat</w>\": 3384,\n  \"eaten</w>\": 16750,\n  \"eater</w>\": 24060,\n  \"eaters</w>\": 37645,\n  \"eatery</w>\": 46559,\n  \"eating</w>\": 4371,\n  \"eatlocal</w>\": 42868,\n  \"eaton</w>\": 28462,\n  \"eats</w>\": 13188,\n  \"eau</w>\": 17608,\n  \"eazy</w>\": 36536,\n  \"eb\": 12283,\n  \"eb</w>\": 8677,\n  \"eba</w>\": 40889,\n  \"ebay\": 34412,\n  \"ebay</w>\": 4099,\n  \"eber\": 34020,\n  \"ebo</w>\": 46635,\n  \"ebola</w>\": 15864,\n  \"ebon\": 22013,\n  \"ebony</w>\": 30651,\n  \"ebook</w>\": 13122,\n  \"ebooks</w>\": 25774,\n  \"ec\": 747,\n  \"ec</w>\": 10879,\n  \"eca</w>\": 18465,\n  \"ecar\": 34500,\n  \"ecb</w>\": 26205,\n  \"ecc</w>\": 33128,\n  \"eccc</w>\": 47401,\n  \"eccentric</w>\": 43228,\n  \"eccle\": 27494,\n  \"ece</w>\": 2163,\n  \"eces</w>\": 5905,\n  \"ecg</w>\": 45983,\n  \"ech\": 15797,\n  \"ech</w>\": 31147,\n  \"echel\": 41233,\n  \"echo\": 17366,\n  \"echo</w>\": 13989,\n  \"echoes</w>\": 32564,\n  \"eci\": 31936,\n  \"eck\": 25866,\n  \"eck</w>\": 15969,\n  \"ecker\": 39661,\n  \"ecker</w>\": 40890,\n  \"ecla\": 47806,\n  \"eclec\": 25114,\n  \"eclectic</w>\": 28382,\n  \"eclip\": 30841,\n  \"eclipse</w>\": 11505,\n  \"eclub</w>\": 38983,\n  \"eco\": 5106,\n  \"eco</w>\": 10077,\n  \"ecofriendly</w>\": 43412,\n  \"ecol\": 22706,\n  \"ecological</w>\": 25127,\n  \"ecology</w>\": 18578,\n  \"ecommerce</w>\": 15529,\n  \"econ\": 26755,\n  \"econ</w>\": 21158,\n  \"econom\": 2768,\n  \"economic\": 36649,\n  \"economic</w>\": 5259,\n  \"economical</w>\": 48782,\n  \"economically</w>\": 39406,\n  \"economics</w>\": 12625,\n  \"economies</w>\": 27136,\n  \"economist</w>\": 18836,\n  \"economists</w>\": 43701,\n  \"economy</w>\": 5644,\n  \"ecor\": 28962,\n  \"ecosystem</w>\": 15788,\n  \"ecosystems</w>\": 28725,\n  \"ecoun\": 27924,\n  \"ecr</w>\": 48572,\n  \"ecraft</w>\": 11439,\n  \"ecs</w>\": 23485,\n  \"ecstasy</w>\": 47286,\n  \"ecstatic</w>\": 36244,\n  \"ect</w>\": 25168,\n  \"ecu\": 13087,\n  \"ecu</w>\": 32919,\n  \"ecuador</w>\": 19813,\n  \"ecz\": 43530,\n  \"ed\": 843,\n  \"ed</w>\": 538,\n  \"eda</w>\": 10804,\n  \"edad</w>\": 44724,\n  \"eday\": 39258,\n  \"edc</w>\": 21245,\n  \"edchat</w>\": 14702,\n  \"edd</w>\": 35431,\n  \"eddi\": 42930,\n  \"eddie\": 22748,\n  \"eddie</w>\": 9517,\n  \"eddy</w>\": 25959,\n  \"ede\": 29632,\n  \"eded</w>\": 19555,\n  \"edel\": 20460,\n  \"edelman</w>\": 48139,\n  \"eden\": 23621,\n  \"eden</w>\": 13741,\n  \"eder</w>\": 16249,\n  \"edes</w>\": 36247,\n  \"edfringe</w>\": 27402,\n  \"edg\": 35955,\n  \"edgar\": 33543,\n  \"edgar</w>\": 17914,\n  \"edge\": 16914,\n  \"edge</w>\": 5461,\n  \"edged</w>\": 39188,\n  \"edges</w>\": 20938,\n  \"edgy</w>\": 35393,\n  \"edi\": 8750,\n  \"edi</w>\": 27148,\n  \"edible</w>\": 19795,\n  \"edic\": 25184,\n  \"edics</w>\": 30641,\n  \"edin\": 6524,\n  \"edinburgh\": 27574,\n  \"edinburgh</w>\": 8068,\n  \"eding</w>\": 5742,\n  \"edison</w>\": 25846,\n  \"edit\": 8239,\n  \"edit</w>\": 8013,\n  \"edited</w>\": 13945,\n  \"edith</w>\": 28597,\n  \"editing</w>\": 10178,\n  \"edition</w>\": 3062,\n  \"editions</w>\": 21664,\n  \"editor</w>\": 7661,\n  \"editorial</w>\": 12325,\n  \"editors</w>\": 19486,\n  \"edits</w>\": 24945,\n  \"edm\": 37843,\n  \"edm</w>\": 13539,\n  \"edmon\": 11275,\n  \"edmond</w>\": 41581,\n  \"edmonds</w>\": 46520,\n  \"edmonton\": 37311,\n  \"edmonton</w>\": 15058,\n  \"edmun\": 36561,\n  \"edmund</w>\": 27567,\n  \"edna</w>\": 39002,\n  \"edo\": 29145,\n  \"edo</w>\": 18096,\n  \"edon</w>\": 41467,\n  \"edor\": 30184,\n  \"edou\": 47678,\n  \"edp</w>\": 46066,\n  \"eds</w>\": 1941,\n  \"edsheeran</w>\": 30386,\n  \"edt</w>\": 15071,\n  \"edtech\": 41825,\n  \"edtech</w>\": 15262,\n  \"edu\": 11757,\n  \"edu</w>\": 11799,\n  \"eduardo</w>\": 30604,\n  \"educ\": 2200,\n  \"educate</w>\": 17563,\n  \"educated</w>\": 21447,\n  \"education\": 22358,\n  \"education</w>\": 2806,\n  \"educational</w>\": 10400,\n  \"educator</w>\": 19875,\n  \"educators</w>\": 15420,\n  \"edwar\": 27586,\n  \"edward\": 26184,\n  \"edward</w>\": 7450,\n  \"edwards</w>\": 12627,\n  \"edwin\": 48718,\n  \"edwin</w>\": 22471,\n  \"edy\": 17072,\n  \"edy</w>\": 4144,\n  \"ee\": 2644,\n  \"ee</w>\": 4708,\n  \"eed</w>\": 17513,\n  \"eee\": 24632,\n  \"eee</w>\": 9361,\n  \"eeee\": 11696,\n  \"eeee</w>\": 17570,\n  \"eeeee</w>\": 26938,\n  \"eeeeee</w>\": 41407,\n  \"eek</w>\": 46591,\n  \"eel</w>\": 27462,\n  \"eels</w>\": 44416,\n  \"eem</w>\": 27236,\n  \"een\": 47490,\n  \"een</w>\": 21230,\n  \"eer\": 35409,\n  \"eer</w>\": 31846,\n  \"eera</w>\": 36664,\n  \"eerie</w>\": 33846,\n  \"ees</w>\": 40308,\n  \"eet</w>\": 48935,\n  \"eez</w>\": 39033,\n  \"ef\": 1490,\n  \"ef</w>\": 1829,\n  \"efa</w>\": 16999,\n  \"eface</w>\": 48804,\n  \"efan\": 33556,\n  \"efc</w>\": 22065,\n  \"efcc</w>\": 46087,\n  \"efer</w>\": 26199,\n  \"eff\": 20548,\n  \"eff</w>\": 21715,\n  \"effe\": 2808,\n  \"effec\": 3943,\n  \"effect</w>\": 5436,\n  \"effective</w>\": 6837,\n  \"effectively</w>\": 17516,\n  \"effectiveness</w>\": 26847,\n  \"effects</w>\": 7331,\n  \"effic\": 36004,\n  \"efficacy</w>\": 39937,\n  \"effici\": 6670,\n  \"efficiency</w>\": 11823,\n  \"efficient</w>\": 11334,\n  \"efficiently</w>\": 32915,\n  \"effor\": 6356,\n  \"effort\": 40078,\n  \"effort</w>\": 6255,\n  \"effortless</w>\": 41639,\n  \"effortlessly</w>\": 42320,\n  \"efforts</w>\": 6847,\n  \"efish</w>\": 35813,\n  \"efl</w>\": 27172,\n  \"efron</w>\": 48111,\n  \"efs</w>\": 7389,\n  \"eg\": 8053,\n  \"eg</w>\": 14599,\n  \"ega</w>\": 41193,\n  \"egan</w>\": 42943,\n  \"eger\": 46704,\n  \"eger</w>\": 22767,\n  \"egg\": 13778,\n  \"egg</w>\": 5911,\n  \"eggplant</w>\": 34906,\n  \"eggs</w>\": 7099,\n  \"ego\": 34712,\n  \"ego</w>\": 14250,\n  \"egos</w>\": 43992,\n  \"egre\": 27044,\n  \"egret</w>\": 42002,\n  \"egy\": 5224,\n  \"egyp\": 10250,\n  \"egypt</w>\": 7267,\n  \"egyptian</w>\": 12428,\n  \"eh\": 9277,\n  \"eh</w>\": 9135,\n  \"eha</w>\": 48563,\n  \"ehealth</w>\": 48617,\n  \"ehr\": 45271,\n  \"ehs</w>\": 44648,\n  \"ei\": 4006,\n  \"ei</w>\": 18264,\n  \"eic\": 40251,\n  \"eid\": 28038,\n  \"eid</w>\": 13979,\n  \"eidmubarak</w>\": 46275,\n  \"eiffel</w>\": 29720,\n  \"eigh\": 13468,\n  \"eight</w>\": 7910,\n  \"eighteen</w>\": 49316,\n  \"eighth</w>\": 21237,\n  \"eighty</w>\": 47449,\n  \"eil\": 29457,\n  \"eileen</w>\": 31468,\n  \"ein\": 29944,\n  \"ein</w>\": 24524,\n  \"eindhoven</w>\": 47172,\n  \"eing</w>\": 7702,\n  \"einstein</w>\": 20587,\n  \"eira</w>\": 47708,\n  \"eis\": 13802,\n  \"eisen\": 25273,\n  \"eisenhower</w>\": 35562,\n  \"either</w>\": 6036,\n  \"ej\": 19887,\n  \"ej</w>\": 25009,\n  \"ejec\": 29771,\n  \"ek\": 4212,\n  \"ek</w>\": 2092,\n  \"el\": 544,\n  \"el</w>\": 832,\n  \"ela\": 11284,\n  \"ela</w>\": 3787,\n  \"elab</w>\": 38866,\n  \"elabor\": 26034,\n  \"elaborate</w>\": 33855,\n  \"elaine</w>\": 22523,\n  \"elan\": 17763,\n  \"elan</w>\": 18399,\n  \"eland\": 24930,\n  \"eland</w>\": 6275,\n  \"elas</w>\": 41078,\n  \"elast\": 27479,\n  \"elastic</w>\": 30282,\n  \"elba</w>\": 48598,\n  \"elbow</w>\": 21965,\n  \"eld</w>\": 5684,\n  \"elder\": 11791,\n  \"elder</w>\": 14416,\n  \"elderly</w>\": 15455,\n  \"elders</w>\": 28617,\n  \"eldest</w>\": 33503,\n  \"elding</w>\": 28223,\n  \"elds</w>\": 13466,\n  \"ele\": 2084,\n  \"ele</w>\": 9766,\n  \"eleague</w>\": 36577,\n  \"eleanor</w>\": 18604,\n  \"elearning</w>\": 29969,\n  \"elec\": 1564,\n  \"elec</w>\": 38768,\n  \"elect</w>\": 15336,\n  \"elected</w>\": 8828,\n  \"election\": 19312,\n  \"election</w>\": 4247,\n  \"electionday</w>\": 40540,\n  \"elections</w>\": 6949,\n  \"elector\": 16465,\n  \"electoral</w>\": 19544,\n  \"electr\": 3654,\n  \"electra</w>\": 48959,\n  \"electri\": 23927,\n  \"electric\": 19547,\n  \"electric</w>\": 5031,\n  \"electrical</w>\": 12176,\n  \"electrician</w>\": 46422,\n  \"electricity</w>\": 10950,\n  \"electrifying</w>\": 48843,\n  \"electro\": 11648,\n  \"electro</w>\": 23244,\n  \"electromagnetic</w>\": 46530,\n  \"electron</w>\": 33396,\n  \"electronic\": 33865,\n  \"electronic</w>\": 9273,\n  \"electronica</w>\": 43119,\n  \"electronics</w>\": 13081,\n  \"eled</w>\": 20357,\n  \"elee</w>\": 44112,\n  \"eleg\": 8075,\n  \"elegance</w>\": 19146,\n  \"elegant</w>\": 11124,\n  \"elek\": 34559,\n  \"elem</w>\": 25406,\n  \"element</w>\": 14909,\n  \"elementary</w>\": 8143,\n  \"elements</w>\": 10925,\n  \"elen\": 30654,\n  \"elen</w>\": 39164,\n  \"elena</w>\": 19421,\n  \"eleng\": 48180,\n  \"eleph\": 7554,\n  \"elephant</w>\": 10299,\n  \"elephants</w>\": 16871,\n  \"eler</w>\": 24646,\n  \"eless\": 15244,\n  \"eless</w>\": 30837,\n  \"elets</w>\": 19400,\n  \"elev\": 7921,\n  \"elevate</w>\": 26736,\n  \"elevated</w>\": 23967,\n  \"elevation</w>\": 23826,\n  \"elevator</w>\": 19021,\n  \"eleven\": 31617,\n  \"eleven</w>\": 17795,\n  \"elf\": 45961,\n  \"elf</w>\": 11924,\n  \"elfie</w>\": 39955,\n  \"elg\": 28790,\n  \"elgin</w>\": 31868,\n  \"eli\": 1018,\n  \"eli</w>\": 6292,\n  \"elia</w>\": 10956,\n  \"elian</w>\": 42508,\n  \"elias\": 47274,\n  \"elias</w>\": 29902,\n  \"elic\": 34743,\n  \"elic</w>\": 13492,\n  \"elie\": 38677,\n  \"elie</w>\": 26501,\n  \"elier</w>\": 14634,\n  \"elife\": 37429,\n  \"elife</w>\": 12719,\n  \"eligibility</w>\": 34937,\n  \"eligible</w>\": 16978,\n  \"elijah</w>\": 26065,\n  \"elike\": 48913,\n  \"elim\": 9296,\n  \"elimin\": 11386,\n  \"eliminate</w>\": 19655,\n  \"eliminated</w>\": 29075,\n  \"eliminating</w>\": 36619,\n  \"elimination</w>\": 24176,\n  \"elin\": 25353,\n  \"elin</w>\": 13458,\n  \"eline\": 46199,\n  \"eline</w>\": 7153,\n  \"eling</w>\": 9990,\n  \"elio</w>\": 47943,\n  \"elion</w>\": 30682,\n  \"elions</w>\": 44159,\n  \"eliot</w>\": 33326,\n  \"elis\": 23411,\n  \"elis</w>\": 48021,\n  \"elisa\": 25610,\n  \"elisa</w>\": 44051,\n  \"elisabeth</w>\": 33127,\n  \"elise</w>\": 27124,\n  \"elit\": 40882,\n  \"elite\": 32277,\n  \"elite</w>\": 6553,\n  \"elited\": 43943,\n  \"elitedangerous</w>\": 47138,\n  \"elites</w>\": 35975,\n  \"elius</w>\": 35623,\n  \"elive\": 49338,\n  \"elive</w>\": 23505,\n  \"elives</w>\": 49174,\n  \"elix\": 32926,\n  \"elixir</w>\": 42887,\n  \"eliz\": 42844,\n  \"eliza\": 6132,\n  \"eliza</w>\": 29992,\n  \"elizabeth\": 22397,\n  \"elizabeth</w>\": 7026,\n  \"elk\": 34013,\n  \"elk</w>\": 21896,\n  \"ell\": 826,\n  \"ell</w>\": 812,\n  \"ella\": 20692,\n  \"ella</w>\": 2957,\n  \"elland</w>\": 43326,\n  \"ellar</w>\": 38443,\n  \"ellas</w>\": 37053,\n  \"elle\": 12818,\n  \"elle</w>\": 4765,\n  \"elled</w>\": 13146,\n  \"ellen\": 14007,\n  \"ellen</w>\": 12312,\n  \"ellenshow</w>\": 34812,\n  \"eller\": 20927,\n  \"eller</w>\": 4465,\n  \"ellers</w>\": 19010,\n  \"elles</w>\": 24431,\n  \"elli\": 3367,\n  \"elli</w>\": 6673,\n  \"ellic\": 38905,\n  \"ellie</w>\": 16769,\n  \"ellier</w>\": 44054,\n  \"ellin</w>\": 40374,\n  \"elling</w>\": 2220,\n  \"ellington</w>\": 34477,\n  \"ellini</w>\": 43256,\n  \"elliot</w>\": 20761,\n  \"elliott\": 44456,\n  \"elliott</w>\": 13788,\n  \"ellip\": 44816,\n  \"ellis</w>\": 11553,\n  \"ellison</w>\": 32295,\n  \"ello</w>\": 2512,\n  \"ellor</w>\": 14594,\n  \"ells</w>\": 2433,\n  \"ellu\": 35560,\n  \"elly\": 8041,\n  \"elly</w>\": 20355,\n  \"elm\": 25199,\n  \"elm</w>\": 22082,\n  \"elman</w>\": 33622,\n  \"elmer</w>\": 45958,\n  \"elmo</w>\": 32150,\n  \"elo\": 6170,\n  \"elo</w>\": 13490,\n  \"elon\": 26381,\n  \"elon</w>\": 20406,\n  \"elondon</w>\": 47377,\n  \"elong\": 44363,\n  \"elonmusk</w>\": 37076,\n  \"elope</w>\": 23367,\n  \"eloqu\": 37795,\n  \"elos</w>\": 44733,\n  \"elot</w>\": 43490,\n  \"elove\": 43319,\n  \"elove</w>\": 19165,\n  \"elover</w>\": 21732,\n  \"elovers</w>\": 33946,\n  \"els\": 35958,\n  \"els</w>\": 1645,\n  \"elsa</w>\": 22050,\n  \"else\": 18857,\n  \"else</w>\": 3344,\n  \"elsewhere</w>\": 22906,\n  \"elson</w>\": 19624,\n  \"elt</w>\": 18692,\n  \"elton</w>\": 20758,\n  \"elu\": 14208,\n  \"elusive</w>\": 28903,\n  \"elves</w>\": 29111,\n  \"elvi\": 47008,\n  \"elvis\": 47359,\n  \"elvis</w>\": 14498,\n  \"elxn</w>\": 37726,\n  \"ely\": 12189,\n  \"ely</w>\": 1273,\n  \"elyn\": 29691,\n  \"elyn</w>\": 18126,\n  \"em\": 908,\n  \"em</w>\": 2270,\n  \"ema\": 7002,\n  \"ema</w>\": 11131,\n  \"emabiggest\": 23101,\n  \"emabiggestfans</w>\": 29587,\n  \"email\": 33537,\n  \"email</w>\": 4462,\n  \"emailed</w>\": 40470,\n  \"emailmarketing</w>\": 40188,\n  \"emails</w>\": 12871,\n  \"eman\": 24416,\n  \"eman</w>\": 36868,\n  \"emancip\": 42996,\n  \"emanuel</w>\": 35232,\n  \"emb\": 3692,\n  \"embar\": 8266,\n  \"embaras\": 48019,\n  \"embark</w>\": 33953,\n  \"embarra\": 11382,\n  \"embarrass\": 27183,\n  \"embarrassed</w>\": 28217,\n  \"embarrassing</w>\": 19653,\n  \"embarrassment</w>\": 41346,\n  \"embassy</w>\": 13598,\n  \"embe\": 46041,\n  \"embed\": 19703,\n  \"embedded</w>\": 22046,\n  \"embelli\": 32144,\n  \"embellished</w>\": 46992,\n  \"ember</w>\": 47049,\n  \"emblem</w>\": 21163,\n  \"embo\": 23065,\n  \"embr\": 35267,\n  \"embrac\": 16928,\n  \"embrace</w>\": 12118,\n  \"embraced</w>\": 35739,\n  \"embraces</w>\": 38404,\n  \"embracing</w>\": 22196,\n  \"embro\": 12550,\n  \"embroi\": 18667,\n  \"embroide\": 21530,\n  \"embroidered</w>\": 22381,\n  \"embroidery</w>\": 20823,\n  \"emc\": 20897,\n  \"emc</w>\": 31602,\n  \"emcee</w>\": 42038,\n  \"eme\": 22910,\n  \"eme</w>\": 21548,\n  \"emea</w>\": 40352,\n  \"emed</w>\": 11028,\n  \"emen</w>\": 22033,\n  \"ement\": 40841,\n  \"ement</w>\": 2057,\n  \"ements</w>\": 11058,\n  \"emer\": 3132,\n  \"emer</w>\": 25727,\n  \"emerald\": 46878,\n  \"emerald</w>\": 16980,\n  \"emerge</w>\": 22182,\n  \"emerged</w>\": 26425,\n  \"emergen\": 24096,\n  \"emergence</w>\": 39867,\n  \"emergencies</w>\": 35759,\n  \"emergency\": 44038,\n  \"emergency</w>\": 5897,\n  \"emerges</w>\": 30801,\n  \"emerging\": 38174,\n  \"emerging</w>\": 11113,\n  \"emeritus</w>\": 35333,\n  \"emerson</w>\": 24147,\n  \"emery</w>\": 32678,\n  \"emi\": 44327,\n  \"emi</w>\": 18525,\n  \"emil\": 26794,\n  \"emil</w>\": 40624,\n  \"emile</w>\": 43926,\n  \"emili\": 20709,\n  \"emilia</w>\": 34238,\n  \"emilio</w>\": 39722,\n  \"emily\": 14545,\n  \"emily</w>\": 7640,\n  \"emin\": 17227,\n  \"emin</w>\": 23995,\n  \"eminem</w>\": 22129,\n  \"eminent</w>\": 33779,\n  \"eming</w>\": 40398,\n  \"emir\": 13337,\n  \"emir</w>\": 47613,\n  \"emirates\": 47244,\n  \"emirates</w>\": 17867,\n  \"emission</w>\": 27761,\n  \"emissions</w>\": 14172,\n  \"emit</w>\": 49043,\n  \"emma\": 18177,\n  \"emma</w>\": 7445,\n  \"emmanuel\": 48045,\n  \"emmanuel</w>\": 20411,\n  \"emmett</w>\": 45779,\n  \"emmy\": 35625,\n  \"emmy</w>\": 17089,\n  \"emmys</w>\": 21875,\n  \"emo\": 3738,\n  \"emo</w>\": 19381,\n  \"emoji</w>\": 16327,\n  \"emojis</w>\": 27870,\n  \"emon</w>\": 34406,\n  \"emor\": 45034,\n  \"emory</w>\": 44274,\n  \"emotion</w>\": 17464,\n  \"emotional</w>\": 7357,\n  \"emotionally</w>\": 24088,\n  \"emotions</w>\": 12904,\n  \"emp\": 3831,\n  \"emp</w>\": 41004,\n  \"empathy</w>\": 22420,\n  \"emper\": 12522,\n  \"emperor</w>\": 13828,\n  \"empha\": 16237,\n  \"emphasi\": 47176,\n  \"emphasis</w>\": 29588,\n  \"empire\": 26212,\n  \"empire</w>\": 7614,\n  \"empires</w>\": 46510,\n  \"emplo\": 3409,\n  \"employ\": 37290,\n  \"employ</w>\": 39626,\n  \"employe\": 5037,\n  \"employed</w>\": 26567,\n  \"employee\": 36631,\n  \"employee</w>\": 9560,\n  \"employees</w>\": 7377,\n  \"employer</w>\": 21296,\n  \"employers</w>\": 17647,\n  \"employment</w>\": 10959,\n  \"empor\": 27386,\n  \"emporium</w>\": 48541,\n  \"empower\": 13612,\n  \"empower</w>\": 17230,\n  \"empowered</w>\": 29087,\n  \"empowering</w>\": 20086,\n  \"empowerment</w>\": 15747,\n  \"empowers</w>\": 46206,\n  \"empress</w>\": 26656,\n  \"empty\": 41203,\n  \"empty</w>\": 7893,\n  \"emra\": 39259,\n  \"ems</w>\": 2858,\n  \"emt</w>\": 46360,\n  \"emu\": 48149,\n  \"emu</w>\": 29296,\n  \"emul\": 23272,\n  \"emy\": 31076,\n  \"en\": 524,\n  \"en</w>\": 576,\n  \"ena</w>\": 3452,\n  \"enab\": 17308,\n  \"enable</w>\": 15642,\n  \"enabled</w>\": 23666,\n  \"enables</w>\": 23417,\n  \"enabling</w>\": 23590,\n  \"enam\": 41486,\n  \"enamel</w>\": 22746,\n  \"enary</w>\": 13132,\n  \"enas</w>\": 34536,\n  \"enation</w>\": 20860,\n  \"enberg</w>\": 15658,\n  \"enburg</w>\": 28430,\n  \"enc</w>\": 33169,\n  \"enca</w>\": 37774,\n  \"encan\": 30345,\n  \"encapsul\": 40874,\n  \"ence\": 6495,\n  \"ence</w>\": 954,\n  \"enced</w>\": 6549,\n  \"ences</w>\": 3777,\n  \"enchan\": 17290,\n  \"enchanted</w>\": 28258,\n  \"enchanting</w>\": 32531,\n  \"enchil\": 47396,\n  \"enci\": 32207,\n  \"encia</w>\": 30068,\n  \"encies</w>\": 18729,\n  \"encing</w>\": 10326,\n  \"enclosed</w>\": 43243,\n  \"enclosure</w>\": 37419,\n  \"encom\": 44026,\n  \"encore</w>\": 20549,\n  \"encoun\": 17309,\n  \"encounter</w>\": 13164,\n  \"encountered</w>\": 32492,\n  \"encounters</w>\": 25399,\n  \"encoura\": 6169,\n  \"encourage</w>\": 12090,\n  \"encouraged</w>\": 20299,\n  \"encouragement</w>\": 24959,\n  \"encourages</w>\": 23848,\n  \"encouraging</w>\": 15875,\n  \"encro\": 45822,\n  \"encry\": 28600,\n  \"encryp\": 42928,\n  \"encrypted</w>\": 48710,\n  \"encryption</w>\": 31423,\n  \"ency</w>\": 3484,\n  \"encyclo\": 32104,\n  \"encyclopedia</w>\": 38376,\n  \"end\": 945,\n  \"end</w>\": 806,\n  \"enda</w>\": 6735,\n  \"endale</w>\": 20290,\n  \"endange\": 13990,\n  \"endangered</w>\": 14931,\n  \"ende\": 11373,\n  \"ende</w>\": 40306,\n  \"endeav\": 18134,\n  \"endeavor</w>\": 40502,\n  \"endeavors</w>\": 44394,\n  \"endeavour</w>\": 38035,\n  \"ended</w>\": 2622,\n  \"endemic</w>\": 41241,\n  \"endent</w>\": 16265,\n  \"ender\": 48106,\n  \"ender</w>\": 12383,\n  \"enders</w>\": 7418,\n  \"endez</w>\": 43850,\n  \"endgame</w>\": 23042,\n  \"endi</w>\": 31359,\n  \"ending</w>\": 2695,\n  \"endings</w>\": 36516,\n  \"endish</w>\": 38841,\n  \"endless</w>\": 12688,\n  \"endlessly</w>\": 45145,\n  \"endment</w>\": 45894,\n  \"endo\": 13476,\n  \"endo</w>\": 15830,\n  \"endocr\": 36486,\n  \"endof\": 40786,\n  \"endome\": 46996,\n  \"endon</w>\": 48018,\n  \"endor\": 8092,\n  \"endorf</w>\": 37249,\n  \"endorse</w>\": 28819,\n  \"endorsed</w>\": 24307,\n  \"endorsement</w>\": 21205,\n  \"endorses</w>\": 34603,\n  \"endorsing</w>\": 46779,\n  \"endow\": 45895,\n  \"endra</w>\": 22321,\n  \"ends</w>\": 1339,\n  \"endthe\": 46256,\n  \"endu\": 26032,\n  \"endur\": 19557,\n  \"endurance</w>\": 21027,\n  \"endure</w>\": 32419,\n  \"enduring</w>\": 30851,\n  \"enduro</w>\": 47042,\n  \"ene\": 3297,\n  \"ene</w>\": 6049,\n  \"ened</w>\": 2494,\n  \"eneed\": 45137,\n  \"enegger</w>\": 33235,\n  \"enei</w>\": 48906,\n  \"enemies</w>\": 15824,\n  \"enemy</w>\": 10310,\n  \"enen</w>\": 45113,\n  \"ener\": 2244,\n  \"ener</w>\": 13600,\n  \"energ\": 39451,\n  \"energetic</w>\": 24197,\n  \"energi\": 23044,\n  \"energies</w>\": 42374,\n  \"energized</w>\": 48635,\n  \"energy\": 14974,\n  \"energy</w>\": 2650,\n  \"energye\": 32271,\n  \"energyefficiency</w>\": 40586,\n  \"eners</w>\": 48208,\n  \"enes</w>\": 42066,\n  \"eness</w>\": 11806,\n  \"enet</w>\": 46336,\n  \"enew\": 29672,\n  \"enews</w>\": 13442,\n  \"eney</w>\": 20706,\n  \"enez</w>\": 33110,\n  \"enf\": 38167,\n  \"enfield</w>\": 27808,\n  \"enfor\": 10592,\n  \"enforce</w>\": 40224,\n  \"enforced</w>\": 44597,\n  \"enforcement</w>\": 12460,\n  \"eng\": 1035,\n  \"eng</w>\": 6730,\n  \"enga</w>\": 22297,\n  \"engag\": 6793,\n  \"engage</w>\": 11089,\n  \"engaged</w>\": 11475,\n  \"engagement</w>\": 7281,\n  \"engaging</w>\": 13060,\n  \"enge\": 26279,\n  \"enge</w>\": 2742,\n  \"engel\": 38265,\n  \"engen</w>\": 48286,\n  \"enger</w>\": 6618,\n  \"engers</w>\": 7533,\n  \"engine\": 3355,\n  \"engine</w>\": 5857,\n  \"engineer\": 40151,\n  \"engineer</w>\": 8517,\n  \"engineered</w>\": 26580,\n  \"engineering</w>\": 5273,\n  \"engineers</w>\": 11494,\n  \"engines</w>\": 14487,\n  \"england\": 20904,\n  \"england</w>\": 3595,\n  \"english\": 15942,\n  \"english</w>\": 3469,\n  \"engra\": 17560,\n  \"engraved</w>\": 29421,\n  \"engraving</w>\": 33309,\n  \"engul\": 43655,\n  \"engv\": 28401,\n  \"enh\": 7449,\n  \"enhall</w>\": 48781,\n  \"enham</w>\": 24592,\n  \"enhan\": 26827,\n  \"enhance</w>\": 13993,\n  \"enhanced</w>\": 16070,\n  \"enhancement</w>\": 35601,\n  \"enhances</w>\": 38259,\n  \"enhancing</w>\": 25986,\n  \"eni\": 4395,\n  \"eni</w>\": 17538,\n  \"enic\": 46780,\n  \"enic</w>\": 28292,\n  \"enig\": 19754,\n  \"enig</w>\": 48730,\n  \"enight\": 32848,\n  \"enight</w>\": 20640,\n  \"enigma</w>\": 34998,\n  \"ening</w>\": 1133,\n  \"enium</w>\": 34380,\n  \"enix</w>\": 25720,\n  \"enjo\": 1498,\n  \"enjoy\": 12981,\n  \"enjoy</w>\": 2218,\n  \"enjoyable</w>\": 17444,\n  \"enjoyed</w>\": 5045,\n  \"enjoying</w>\": 3603,\n  \"enjoyment</w>\": 34905,\n  \"enjoys</w>\": 17024,\n  \"enka</w>\": 43942,\n  \"enko</w>\": 25312,\n  \"enlar\": 38136,\n  \"enligh\": 21364,\n  \"enlighten\": 28200,\n  \"enlightened</w>\": 44032,\n  \"enlightening</w>\": 44005,\n  \"enlightenment</w>\": 29255,\n  \"enlisted</w>\": 43555,\n  \"enly</w>\": 43023,\n  \"enn</w>\": 43563,\n  \"enna</w>\": 8095,\n  \"enne\": 21176,\n  \"enne</w>\": 11518,\n  \"ennedy</w>\": 46266,\n  \"ennes</w>\": 43613,\n  \"enni\": 7049,\n  \"ennial</w>\": 14220,\n  \"ennis\": 48923,\n  \"ennis</w>\": 26309,\n  \"eno\": 9429,\n  \"eno</w>\": 12843,\n  \"enoch</w>\": 47917,\n  \"enor\": 13955,\n  \"enormous</w>\": 20129,\n  \"enos</w>\": 44759,\n  \"enote</w>\": 44955,\n  \"enough</w>\": 2744,\n  \"enow</w>\": 26876,\n  \"enqu\": 28417,\n  \"enqui\": 22810,\n  \"enquire</w>\": 46658,\n  \"enquiries</w>\": 31901,\n  \"enquiry</w>\": 45141,\n  \"enri\": 18915,\n  \"enrich\": 20058,\n  \"enrich</w>\": 45504,\n  \"enriched</w>\": 45166,\n  \"enrichment</w>\": 32903,\n  \"enrique</w>\": 25489,\n  \"enrol\": 44279,\n  \"enroll\": 23739,\n  \"enroll</w>\": 30366,\n  \"enrolled</w>\": 36853,\n  \"enrollment</w>\": 24875,\n  \"enroute</w>\": 40548,\n  \"ens\": 41799,\n  \"ens</w>\": 1323,\n  \"ense\": 12657,\n  \"ense</w>\": 27658,\n  \"ensemble</w>\": 14843,\n  \"ensis</w>\": 32842,\n  \"ensla\": 37535,\n  \"enslaved</w>\": 48675,\n  \"ensure</w>\": 7492,\n  \"ensures</w>\": 29707,\n  \"ensuring</w>\": 19403,\n  \"ent\": 724,\n  \"ent</w>\": 621,\n  \"enta</w>\": 17681,\n  \"ental\": 32342,\n  \"ental</w>\": 6168,\n  \"entary</w>\": 9833,\n  \"entation</w>\": 37412,\n  \"ente\": 17433,\n  \"ente</w>\": 9935,\n  \"ented</w>\": 3800,\n  \"entennial</w>\": 43088,\n  \"enter\": 2963,\n  \"enter</w>\": 3819,\n  \"entered</w>\": 10679,\n  \"entering</w>\": 12580,\n  \"enterpri\": 7339,\n  \"enterprise</w>\": 9220,\n  \"enterprises</w>\": 21219,\n  \"enters</w>\": 15287,\n  \"entertain\": 5566,\n  \"entertain</w>\": 23510,\n  \"entertained</w>\": 30631,\n  \"entertainer</w>\": 28674,\n  \"entertaining</w>\": 13897,\n  \"entertainment</w>\": 6166,\n  \"entes</w>\": 24213,\n  \"enthr\": 36202,\n  \"enthusi\": 9631,\n  \"enthusiasm</w>\": 20525,\n  \"enthusiast</w>\": 27153,\n  \"enthusiastic</w>\": 22068,\n  \"enthusiasts</w>\": 27514,\n  \"enti\": 1938,\n  \"ential</w>\": 5194,\n  \"entially</w>\": 37695,\n  \"entic</w>\": 10340,\n  \"entine</w>\": 49212,\n  \"enting</w>\": 20526,\n  \"entire</w>\": 4709,\n  \"entirely</w>\": 13911,\n  \"entirety</w>\": 43242,\n  \"entit\": 15209,\n  \"entities</w>\": 38134,\n  \"entitled</w>\": 18680,\n  \"entity</w>\": 28455,\n  \"ently</w>\": 2922,\n  \"ento\": 21917,\n  \"ento</w>\": 8762,\n  \"entom\": 31676,\n  \"entourage</w>\": 47893,\n  \"entr\": 7129,\n  \"entrance</w>\": 9129,\n  \"entrata</w>\": 27304,\n  \"entre\": 34188,\n  \"entre</w>\": 19600,\n  \"entren\": 46959,\n  \"entrepre\": 4583,\n  \"entreprene\": 4789,\n  \"entrepreneu\": 26784,\n  \"entrepreneur\": 12119,\n  \"entrepreneur</w>\": 8033,\n  \"entrepreneurial</w>\": 28261,\n  \"entrepreneurs</w>\": 11054,\n  \"entrepreneurship</w>\": 12858,\n  \"entries</w>\": 13766,\n  \"entry</w>\": 5362,\n  \"ents</w>\": 870,\n  \"entu\": 6650,\n  \"enty</w>\": 5657,\n  \"enu\": 23430,\n  \"env\": 32280,\n  \"env</w>\": 39207,\n  \"envel\": 20052,\n  \"envelope</w>\": 27358,\n  \"envir\": 3512,\n  \"enviro</w>\": 46200,\n  \"environ\": 3599,\n  \"environment\": 33039,\n  \"environment</w>\": 5501,\n  \"environmental</w>\": 7831,\n  \"environmentally</w>\": 32855,\n  \"environments</w>\": 19577,\n  \"envision</w>\": 49031,\n  \"envoy</w>\": 29263,\n  \"envy</w>\": 21017,\n  \"eny</w>\": 20482,\n  \"enya</w>\": 36509,\n  \"enyc</w>\": 39520,\n  \"enz\": 25805,\n  \"enz</w>\": 31873,\n  \"enza</w>\": 25239,\n  \"enzie</w>\": 14839,\n  \"enzo</w>\": 31543,\n  \"enzyme</w>\": 40348,\n  \"enzymes</w>\": 47465,\n  \"eo\": 16054,\n  \"eo</w>\": 11712,\n  \"eoin</w>\": 48634,\n  \"eon</w>\": 31915,\n  \"eos</w>\": 17805,\n  \"ep\": 1178,\n  \"ep</w>\": 1117,\n  \"epa</w>\": 15866,\n  \"epage</w>\": 26931,\n  \"epaper</w>\": 33584,\n  \"epcot</w>\": 32524,\n  \"eper</w>\": 43071,\n  \"eph\": 45752,\n  \"eph</w>\": 41240,\n  \"ephe\": 25129,\n  \"epi\": 7219,\n  \"epi</w>\": 34641,\n  \"epic\": 12683,\n  \"epic</w>\": 4991,\n  \"epiconetsy</w>\": 49222,\n  \"epide\": 17382,\n  \"epidemi\": 44447,\n  \"epidemic</w>\": 21522,\n  \"epile\": 23150,\n  \"epilepsy</w>\": 29547,\n  \"epilo\": 31291,\n  \"epilots</w>\": 39766,\n  \"epiph\": 40561,\n  \"epiphany</w>\": 43251,\n  \"epis\": 24616,\n  \"episcop\": 28037,\n  \"episcopal</w>\": 31221,\n  \"episo\": 2708,\n  \"episode</w>\": 2965,\n  \"episodes</w>\": 11837,\n  \"epit\": 21967,\n  \"epitome</w>\": 35114,\n  \"epl</w>\": 25950,\n  \"epo\": 25810,\n  \"epp\": 39054,\n  \"epp</w>\": 39593,\n  \"eps</w>\": 4090,\n  \"epsilon</w>\": 40019,\n  \"epsom</w>\": 40364,\n  \"epstein</w>\": 34688,\n  \"eq\": 39331,\n  \"eq</w>\": 33692,\n  \"equ\": 2563,\n  \"equal\": 17373,\n  \"equal</w>\": 10433,\n  \"equality\": 48981,\n  \"equality</w>\": 9578,\n  \"equally</w>\": 18172,\n  \"equals</w>\": 30278,\n  \"equation</w>\": 28591,\n  \"equations</w>\": 38225,\n  \"eque\": 19518,\n  \"equestrian</w>\": 24728,\n  \"equi\": 8752,\n  \"equili\": 43262,\n  \"equine</w>\": 33801,\n  \"equinox</w>\": 32652,\n  \"equip\": 6526,\n  \"equip</w>\": 36979,\n  \"equipment</w>\": 6893,\n  \"equipo</w>\": 45688,\n  \"equipped</w>\": 18331,\n  \"equitable</w>\": 44717,\n  \"equities</w>\": 44015,\n  \"equity</w>\": 11293,\n  \"equivalent</w>\": 19489,\n  \"er\": 517,\n  \"er</w>\": 528,\n  \"era\": 30548,\n  \"era</w>\": 2072,\n  \"erable</w>\": 18801,\n  \"erad\": 24194,\n  \"eradic\": 36346,\n  \"eradicate</w>\": 46164,\n  \"eral</w>\": 6222,\n  \"eran</w>\": 13069,\n  \"eras\": 19325,\n  \"eras</w>\": 39090,\n  \"erase</w>\": 33893,\n  \"erased</w>\": 46762,\n  \"erasmus</w>\": 38935,\n  \"erc\": 5360,\n  \"erc</w>\": 32382,\n  \"erd</w>\": 25645,\n  \"erdo\": 21112,\n  \"erdogan</w>\": 24453,\n  \"ere\": 17907,\n  \"ere</w>\": 642,\n  \"erec\": 21526,\n  \"erected</w>\": 39365,\n  \"ered</w>\": 9097,\n  \"eres</w>\": 15751,\n  \"ergon\": 38120,\n  \"ergy</w>\": 19550,\n  \"eri\": 2769,\n  \"eri</w>\": 9509,\n  \"eria</w>\": 11634,\n  \"erial</w>\": 5409,\n  \"eric\": 1206,\n  \"eric</w>\": 5396,\n  \"erica</w>\": 13208,\n  \"erich</w>\": 26070,\n  \"erick\": 27434,\n  \"erick</w>\": 36959,\n  \"erickson</w>\": 45286,\n  \"ericsson</w>\": 39645,\n  \"eridge</w>\": 45408,\n  \"erie</w>\": 7005,\n  \"eries</w>\": 9099,\n  \"erik\": 22805,\n  \"erik</w>\": 16532,\n  \"erika</w>\": 25531,\n  \"erin\": 17532,\n  \"erin</w>\": 11333,\n  \"erina</w>\": 25176,\n  \"ering</w>\": 1785,\n  \"erit\": 23335,\n  \"eritrea</w>\": 30738,\n  \"erjee</w>\": 41665,\n  \"erly</w>\": 14380,\n  \"erm</w>\": 31649,\n  \"erman</w>\": 17990,\n  \"ern\": 6992,\n  \"ern</w>\": 12140,\n  \"ernal</w>\": 20868,\n  \"ernan</w>\": 34617,\n  \"ernation</w>\": 48796,\n  \"erne\": 33930,\n  \"ernest</w>\": 23006,\n  \"ernie</w>\": 23636,\n  \"ernity</w>\": 14653,\n  \"erno</w>\": 40812,\n  \"ernst</w>\": 30099,\n  \"ero\": 3211,\n  \"ero</w>\": 3732,\n  \"erock</w>\": 38206,\n  \"eron</w>\": 32837,\n  \"eroom</w>\": 46690,\n  \"eros</w>\": 30597,\n  \"erose</w>\": 48657,\n  \"erosion</w>\": 30174,\n  \"erotic</w>\": 30708,\n  \"erotica</w>\": 39126,\n  \"erous</w>\": 6384,\n  \"eroy</w>\": 36461,\n  \"erp</w>\": 28268,\n  \"err\": 22479,\n  \"err</w>\": 25346,\n  \"erra</w>\": 48446,\n  \"errands</w>\": 45485,\n  \"error</w>\": 12097,\n  \"errors</w>\": 21195,\n  \"erry\": 45236,\n  \"erry</w>\": 24124,\n  \"ers\": 4840,\n  \"ers</w>\": 612,\n  \"ersfc</w>\": 37925,\n  \"ership</w>\": 2884,\n  \"erson\": 25780,\n  \"erson</w>\": 6811,\n  \"ert\": 40325,\n  \"ert</w>\": 3112,\n  \"erta</w>\": 32007,\n  \"erton</w>\": 26245,\n  \"erts</w>\": 12921,\n  \"eru\": 36068,\n  \"erun</w>\": 41642,\n  \"erup\": 17093,\n  \"erupted</w>\": 48862,\n  \"eruption</w>\": 33705,\n  \"erville</w>\": 37557,\n  \"erwin</w>\": 43724,\n  \"ery\": 12467,\n  \"ery</w>\": 1692,\n  \"erz</w>\": 38711,\n  \"es\": 957,\n  \"es</w>\": 542,\n  \"esa\": 46834,\n  \"esa</w>\": 12489,\n  \"esanders</w>\": 23099,\n  \"esc\": 3330,\n  \"esc</w>\": 28420,\n  \"escal\": 15902,\n  \"escap\": 11499,\n  \"escape\": 32484,\n  \"escape</w>\": 7568,\n  \"escaped</w>\": 18707,\n  \"escapes</w>\": 29916,\n  \"escaping</w>\": 21767,\n  \"escar\": 39229,\n  \"escence</w>\": 37972,\n  \"esch\": 46760,\n  \"esch</w>\": 41945,\n  \"esco\": 32482,\n  \"escobar</w>\": 48807,\n  \"escor\": 24360,\n  \"escort</w>\": 24976,\n  \"escorted</w>\": 47667,\n  \"escorts</w>\": 48574,\n  \"escu\": 36517,\n  \"esday</w>\": 19553,\n  \"ese\": 18766,\n  \"ese</w>\": 2260,\n  \"esg</w>\": 41674,\n  \"esh\": 17119,\n  \"esh</w>\": 13407,\n  \"esha</w>\": 28799,\n  \"eshop\": 38451,\n  \"eshop</w>\": 45570,\n  \"eshopsuk</w>\": 39349,\n  \"esi</w>\": 30064,\n  \"esis</w>\": 12414,\n  \"esk\": 19359,\n  \"esl</w>\": 26201,\n  \"eso\": 29890,\n  \"eso</w>\": 28921,\n  \"esof\": 17047,\n  \"eson\": 46845,\n  \"esp\": 3849,\n  \"esp</w>\": 13870,\n  \"espa\": 37301,\n  \"espan\": 41731,\n  \"espaÃ±a</w>\": 41118,\n  \"especially</w>\": 4878,\n  \"esper\": 29216,\n  \"espino\": 46633,\n  \"espionage</w>\": 43498,\n  \"espn\": 22917,\n  \"espn</w>\": 7540,\n  \"espnu</w>\": 47747,\n  \"espo\": 34381,\n  \"esports</w>\": 16035,\n  \"espresso</w>\": 17098,\n  \"esq</w>\": 47352,\n  \"esqu\": 34616,\n  \"esque</w>\": 25877,\n  \"ess\": 3118,\n  \"ess</w>\": 9764,\n  \"essa</w>\": 39125,\n  \"essay</w>\": 12751,\n  \"essays</w>\": 27328,\n  \"esse</w>\": 22305,\n  \"essen</w>\": 30489,\n  \"essence</w>\": 17830,\n  \"essenti\": 11163,\n  \"essential\": 47264,\n  \"essential</w>\": 6895,\n  \"essentially</w>\": 30042,\n  \"essentials</w>\": 16191,\n  \"essex\": 30563,\n  \"essex</w>\": 11623,\n  \"est\": 2291,\n  \"est</w>\": 1509,\n  \"esta\": 41449,\n  \"esta</w>\": 10135,\n  \"estab\": 7010,\n  \"establi\": 8412,\n  \"establish</w>\": 19709,\n  \"established</w>\": 13143,\n  \"establishing</w>\": 29420,\n  \"establishment</w>\": 20213,\n  \"estas</w>\": 39072,\n  \"estate\": 47130,\n  \"estate</w>\": 6159,\n  \"estates</w>\": 26054,\n  \"este\": 12968,\n  \"este</w>\": 20579,\n  \"esteban</w>\": 48381,\n  \"esteem</w>\": 31541,\n  \"esteemed</w>\": 36293,\n  \"ester</w>\": 45808,\n  \"esthe\": 18468,\n  \"esther</w>\": 24393,\n  \"estim\": 8904,\n  \"estimate</w>\": 21883,\n  \"estimated</w>\": 16665,\n  \"estimates</w>\": 21957,\n  \"esto\": 31589,\n  \"esto</w>\": 23958,\n  \"estonia</w>\": 26260,\n  \"estonian</w>\": 48895,\n  \"estrada</w>\": 48116,\n  \"estre\": 31271,\n  \"estu\": 26272,\n  \"estuary</w>\": 35269,\n  \"esur\": 35758,\n  \"esville</w>\": 39187,\n  \"esy\": 46268,\n  \"et\": 1169,\n  \"et</w>\": 875,\n  \"eta</w>\": 8761,\n  \"etal</w>\": 25221,\n  \"etary</w>\": 13074,\n  \"etc</w>\": 5353,\n  \"etched</w>\": 40411,\n  \"etching</w>\": 41375,\n  \"ete\": 38820,\n  \"ete</w>\": 40245,\n  \"eter\": 8587,\n  \"eter</w>\": 17007,\n  \"eternal</w>\": 13732,\n  \"eternally</w>\": 48486,\n  \"eternity</w>\": 23832,\n  \"eters</w>\": 18392,\n  \"etf</w>\": 31661,\n  \"eth\": 4819,\n  \"eth</w>\": 5927,\n  \"ethan\": 24245,\n  \"ethan</w>\": 15958,\n  \"ethanol</w>\": 38166,\n  \"ethe\": 21312,\n  \"ethel</w>\": 45921,\n  \"ether\": 23349,\n  \"ethere\": 18705,\n  \"ethereal</w>\": 40925,\n  \"ethereum</w>\": 19612,\n  \"ethernet</w>\": 35026,\n  \"ethi\": 10327,\n  \"ethic</w>\": 39104,\n  \"ethical\": 47041,\n  \"ethical</w>\": 17679,\n  \"ethics</w>\": 13355,\n  \"ethiop\": 10897,\n  \"ethiopia</w>\": 13920,\n  \"ethiopian</w>\": 24507,\n  \"ethnic\": 30522,\n  \"ethnic</w>\": 16344,\n  \"ethnicity</w>\": 46787,\n  \"ethno\": 34225,\n  \"ethos</w>\": 48768,\n  \"eti\": 11188,\n  \"eti</w>\": 30394,\n  \"etienne</w>\": 46118,\n  \"eties</w>\": 15137,\n  \"etihad</w>\": 38489,\n  \"etiquette</w>\": 37957,\n  \"etis\": 38216,\n  \"etisation</w>\": 39733,\n  \"etna</w>\": 41940,\n  \"eto\": 27829,\n  \"eto</w>\": 33837,\n  \"eton</w>\": 44339,\n  \"etour</w>\": 41462,\n  \"etr\": 23012,\n  \"etres</w>\": 42838,\n  \"ets</w>\": 3442,\n  \"etsy\": 13237,\n  \"etsy</w>\": 6282,\n  \"etsym\": 22902,\n  \"etsymntt</w>\": 25416,\n  \"etsyshop</w>\": 44643,\n  \"ett\": 32729,\n  \"ett</w>\": 24998,\n  \"etta</w>\": 30466,\n  \"ette\": 19981,\n  \"ette</w>\": 5212,\n  \"ettes</w>\": 35326,\n  \"etto</w>\": 44219,\n  \"etty</w>\": 40759,\n  \"etu\": 36593,\n  \"etv\": 49155,\n  \"etv</w>\": 20325,\n  \"etwork</w>\": 20585,\n  \"ety\": 25920,\n  \"ety</w>\": 2746,\n  \"etz\": 36181,\n  \"etz</w>\": 25301,\n  \"eu\": 1506,\n  \"eu</w>\": 3238,\n  \"eucalyp\": 41068,\n  \"eucalyptus</w>\": 42351,\n  \"euchar\": 38362,\n  \"eugen\": 30678,\n  \"eugene</w>\": 17760,\n  \"eul\": 46749,\n  \"eun\": 16431,\n  \"eun</w>\": 26219,\n  \"eunhyuk</w>\": 47526,\n  \"eup\": 44435,\n  \"euph\": 21386,\n  \"euphoria</w>\": 41051,\n  \"eur\": 18343,\n  \"eur</w>\": 12018,\n  \"eura\": 32605,\n  \"eure\": 25311,\n  \"euref</w>\": 48017,\n  \"eureka</w>\": 31686,\n  \"euro\": 2039,\n  \"euro</w>\": 8463,\n  \"euroleague</w>\": 46821,\n  \"europa</w>\": 18290,\n  \"europale\": 42473,\n  \"europaleague</w>\": 44029,\n  \"europarl</w>\": 44922,\n  \"europe\": 4198,\n  \"europe</w>\": 3848,\n  \"european\": 26712,\n  \"european</w>\": 4759,\n  \"europeans</w>\": 37082,\n  \"euros</w>\": 22274,\n  \"eurovision</w>\": 17593,\n  \"eurozone</w>\": 42555,\n  \"eurusd</w>\": 40895,\n  \"eus</w>\": 44214,\n  \"euston</w>\": 46905,\n  \"euthan\": 43280,\n  \"euve</w>\": 40652,\n  \"eux</w>\": 25019,\n  \"ev\": 776,\n  \"ev</w>\": 10133,\n  \"eva</w>\": 6845,\n  \"evacu\": 13187,\n  \"evacuated</w>\": 26806,\n  \"evacuation</w>\": 27353,\n  \"eval\": 25139,\n  \"eval</w>\": 9703,\n  \"evalu\": 10314,\n  \"evaluate</w>\": 27174,\n  \"evaluating</w>\": 34541,\n  \"evaluation</w>\": 17640,\n  \"evan\": 12821,\n  \"evan</w>\": 12847,\n  \"evangel\": 20518,\n  \"evangeli\": 21372,\n  \"evangelical</w>\": 36151,\n  \"evangelist</w>\": 42275,\n  \"evankirstel</w>\": 46581,\n  \"evans</w>\": 8836,\n  \"evansville</w>\": 44782,\n  \"evapor\": 33352,\n  \"evasion</w>\": 48795,\n  \"eve\": 5732,\n  \"eve</w>\": 1866,\n  \"eved</w>\": 19820,\n  \"evel\": 39315,\n  \"evelyn</w>\": 26687,\n  \"evement</w>\": 8210,\n  \"even\": 6359,\n  \"even</w>\": 1427,\n  \"evening\": 34487,\n  \"evening</w>\": 2285,\n  \"evenings</w>\": 19994,\n  \"evenly</w>\": 45974,\n  \"event\": 10612,\n  \"event</w>\": 1655,\n  \"eventful</w>\": 45628,\n  \"evento</w>\": 38155,\n  \"eventprofs</w>\": 24980,\n  \"events</w>\": 3667,\n  \"eventu\": 14055,\n  \"eventual</w>\": 45321,\n  \"eventually</w>\": 14397,\n  \"ever\": 888,\n  \"ever</w>\": 1247,\n  \"everest</w>\": 21722,\n  \"everett</w>\": 25456,\n  \"everglades</w>\": 46294,\n  \"evergreen</w>\": 23852,\n  \"everlasting</w>\": 32849,\n  \"evers</w>\": 31914,\n  \"everton</w>\": 13315,\n  \"every\": 1091,\n  \"every</w>\": 1505,\n  \"everybody</w>\": 5901,\n  \"everyday\": 25049,\n  \"everyday</w>\": 5160,\n  \"everyone</w>\": 1584,\n  \"everything\": 36376,\n  \"everything</w>\": 2410,\n  \"everytime</w>\": 16911,\n  \"everywhere</w>\": 6364,\n  \"eves</w>\": 7323,\n  \"evi\": 5348,\n  \"evi</w>\": 36989,\n  \"evic\": 21336,\n  \"eviction</w>\": 37111,\n  \"eviden\": 46220,\n  \"evidence</w>\": 6439,\n  \"evident</w>\": 34529,\n  \"evie</w>\": 47195,\n  \"evil\": 23218,\n  \"evil</w>\": 6006,\n  \"eville</w>\": 16143,\n  \"eving</w>\": 24729,\n  \"evo\": 17962,\n  \"evo</w>\": 13169,\n  \"evoc\": 43133,\n  \"evol\": 5350,\n  \"evolu\": 7725,\n  \"evolution</w>\": 8902,\n  \"evolutionary</w>\": 30629,\n  \"evolve</w>\": 23406,\n  \"evolved</w>\": 22613,\n  \"evolving</w>\": 23675,\n  \"evp</w>\": 46154,\n  \"evs</w>\": 33576,\n  \"ew\": 11942,\n  \"ew</w>\": 15428,\n  \"ewan</w>\": 40247,\n  \"ewe</w>\": 48438,\n  \"ewing</w>\": 38873,\n  \"ews</w>\": 9878,\n  \"ex\": 659,\n  \"ex</w>\": 4118,\n  \"exac\": 5460,\n  \"exact</w>\": 12651,\n  \"exactly</w>\": 5840,\n  \"exagger\": 29766,\n  \"exal\": 49324,\n  \"exam\": 4428,\n  \"exam</w>\": 8785,\n  \"examination</w>\": 20970,\n  \"examine</w>\": 25728,\n  \"examined</w>\": 44004,\n  \"examiner</w>\": 29149,\n  \"examines</w>\": 28160,\n  \"examining</w>\": 30616,\n  \"example</w>\": 6228,\n  \"examples</w>\": 14790,\n  \"exams</w>\": 14028,\n  \"exas</w>\": 47536,\n  \"exc\": 1302,\n  \"excav\": 20733,\n  \"excavation</w>\": 45909,\n  \"exce\": 10999,\n  \"exceed</w>\": 32521,\n  \"exceeded</w>\": 36221,\n  \"exceeding</w>\": 47213,\n  \"exceeds</w>\": 49353,\n  \"excel\": 28351,\n  \"excel</w>\": 18754,\n  \"excell\": 3298,\n  \"excellence</w>\": 8171,\n  \"excellency</w>\": 36503,\n  \"excellent</w>\": 4239,\n  \"excelsi\": 47315,\n  \"excep\": 8882,\n  \"except</w>\": 8541,\n  \"exception</w>\": 25018,\n  \"exceptional</w>\": 13425,\n  \"exceptionally</w>\": 29306,\n  \"excer\": 17737,\n  \"excerpt</w>\": 20586,\n  \"excess</w>\": 22491,\n  \"excessive</w>\": 21332,\n  \"exchange</w>\": 6616,\n  \"exchanged</w>\": 48919,\n  \"exchanges</w>\": 29730,\n  \"exchanging</w>\": 47760,\n  \"excit\": 10510,\n  \"excite</w>\": 47711,\n  \"excited</w>\": 1889,\n  \"excitement</w>\": 11407,\n  \"exciting</w>\": 4300,\n  \"exclu\": 3114,\n  \"exclude</w>\": 49235,\n  \"excluded</w>\": 46216,\n  \"excluding</w>\": 44326,\n  \"exclusion</w>\": 40219,\n  \"exclusive</w>\": 3747,\n  \"exclusively</w>\": 13565,\n  \"exclusives</w>\": 47149,\n  \"excu\": 7324,\n  \"excur\": 27533,\n  \"excursion</w>\": 34869,\n  \"excuse</w>\": 9266,\n  \"excuses</w>\": 19388,\n  \"exe\": 3554,\n  \"exe</w>\": 48027,\n  \"exec</w>\": 15052,\n  \"execs</w>\": 35728,\n  \"execu\": 4360,\n  \"execute</w>\": 36405,\n  \"executed</w>\": 20432,\n  \"execution</w>\": 18085,\n  \"executive</w>\": 5944,\n  \"executives</w>\": 24357,\n  \"exem\": 19753,\n  \"exemp\": 28602,\n  \"exempl\": 36371,\n  \"exemplary</w>\": 39123,\n  \"exempli\": 41934,\n  \"exempt</w>\": 44278,\n  \"exemption</w>\": 47481,\n  \"exer\": 40295,\n  \"exerc\": 5932,\n  \"exercise</w>\": 7016,\n  \"exercises</w>\": 19669,\n  \"exercising</w>\": 39036,\n  \"exeter\": 32137,\n  \"exeter</w>\": 18837,\n  \"exfoli\": 38823,\n  \"exhau\": 11154,\n  \"exhaust</w>\": 21812,\n  \"exhausted</w>\": 21741,\n  \"exhausting</w>\": 40035,\n  \"exhaustion</w>\": 49221,\n  \"exhi\": 3022,\n  \"exhib\": 3783,\n  \"exhibit\": 24992,\n  \"exhibit</w>\": 8209,\n  \"exhibiting</w>\": 23889,\n  \"exhibition</w>\": 4219,\n  \"exhibitions</w>\": 28311,\n  \"exhibitor</w>\": 44192,\n  \"exhibitors</w>\": 38542,\n  \"exhibits</w>\": 30093,\n  \"exhilar\": 40262,\n  \"exhilarating</w>\": 49289,\n  \"exi\": 5297,\n  \"exico</w>\": 38712,\n  \"exile</w>\": 28566,\n  \"exist\": 10899,\n  \"exist</w>\": 9645,\n  \"existed</w>\": 23198,\n  \"existence</w>\": 13832,\n  \"existent</w>\": 43541,\n  \"existential</w>\": 38752,\n  \"existing</w>\": 12886,\n  \"exists</w>\": 14608,\n  \"exit</w>\": 9374,\n  \"exited</w>\": 37581,\n  \"exiting</w>\": 39577,\n  \"exits</w>\": 34943,\n  \"exmoor</w>\": 48260,\n  \"exo\": 15600,\n  \"exo</w>\": 5842,\n  \"exodus</w>\": 30098,\n  \"exol</w>\": 42856,\n  \"exop\": 35288,\n  \"exoplan\": 37980,\n  \"exor\": 24506,\n  \"exorcist</w>\": 46309,\n  \"exotic</w>\": 15639,\n  \"exp\": 9923,\n  \"exp</w>\": 19066,\n  \"expan\": 7512,\n  \"expand\": 10382,\n  \"expand</w>\": 13141,\n  \"expanded</w>\": 18390,\n  \"expanding</w>\": 15755,\n  \"expands</w>\": 22223,\n  \"expanse</w>\": 46886,\n  \"expansion</w>\": 10138,\n  \"expansive</w>\": 49261,\n  \"expat</w>\": 43900,\n  \"expe\": 2560,\n  \"expect\": 9802,\n  \"expect</w>\": 5716,\n  \"expectation</w>\": 34273,\n  \"expectations</w>\": 12529,\n  \"expected</w>\": 5573,\n  \"expecting</w>\": 12525,\n  \"expects</w>\": 24536,\n  \"expedition</w>\": 16761,\n  \"expeditions</w>\": 49327,\n  \"expelled</w>\": 48834,\n  \"expen\": 7216,\n  \"expend\": 29302,\n  \"expenditure</w>\": 47044,\n  \"expense</w>\": 28473,\n  \"expenses</w>\": 21797,\n  \"expensive</w>\": 9649,\n  \"exper\": 1533,\n  \"experi\": 4723,\n  \"experience\": 31867,\n  \"experience</w>\": 2415,\n  \"experienced</w>\": 10417,\n  \"experiences</w>\": 8233,\n  \"experiencing</w>\": 16643,\n  \"experiential</w>\": 44952,\n  \"experim\": 6697,\n  \"experiment</w>\": 13079,\n  \"experimental</w>\": 16539,\n  \"experimenting</w>\": 28263,\n  \"experiments</w>\": 21077,\n  \"expert</w>\": 6284,\n  \"expertise</w>\": 16555,\n  \"experts</w>\": 6960,\n  \"expi\": 26850,\n  \"expir\": 35077,\n  \"expire</w>\": 49315,\n  \"expired</w>\": 30200,\n  \"expires</w>\": 34739,\n  \"expl\": 3261,\n  \"expla\": 3517,\n  \"explain\": 48918,\n  \"explain</w>\": 7304,\n  \"explained</w>\": 14229,\n  \"explaining</w>\": 13136,\n  \"explains</w>\": 6655,\n  \"explan\": 13294,\n  \"explanation</w>\": 16577,\n  \"explanations</w>\": 34383,\n  \"explic\": 21011,\n  \"explicit</w>\": 33228,\n  \"explo\": 3586,\n  \"explode</w>\": 31262,\n  \"exploded</w>\": 28947,\n  \"explodes</w>\": 38119,\n  \"exploding</w>\": 34683,\n  \"exploit</w>\": 36953,\n  \"exploited</w>\": 48554,\n  \"explor\": 11958,\n  \"exploration</w>\": 14043,\n  \"explore\": 10405,\n  \"explore</w>\": 5147,\n  \"explorebc</w>\": 38754,\n  \"explorecanada</w>\": 36600,\n  \"explored</w>\": 25016,\n  \"explorer</w>\": 15776,\n  \"explorers</w>\": 28491,\n  \"explores</w>\": 13996,\n  \"exploring</w>\": 7584,\n  \"explosion</w>\": 13785,\n  \"explosions</w>\": 38646,\n  \"explosive</w>\": 18888,\n  \"explosives</w>\": 44705,\n  \"expo\": 7820,\n  \"expo</w>\": 6344,\n  \"expon\": 27905,\n  \"export</w>\": 14444,\n  \"exporting</w>\": 47433,\n  \"exports</w>\": 20088,\n  \"expose</w>\": 23181,\n  \"exposed</w>\": 12180,\n  \"exposes</w>\": 33575,\n  \"exposing</w>\": 28362,\n  \"exposition</w>\": 36943,\n  \"exposure</w>\": 11903,\n  \"expre\": 6085,\n  \"express\": 18553,\n  \"express</w>\": 5642,\n  \"expressed</w>\": 20777,\n  \"expresses</w>\": 31931,\n  \"expressing</w>\": 30207,\n  \"expression</w>\": 11357,\n  \"expressions</w>\": 20314,\n  \"expressive</w>\": 42060,\n  \"expressway</w>\": 31658,\n  \"exquis\": 16575,\n  \"exquisite</w>\": 17958,\n  \"ext\": 5711,\n  \"ext</w>\": 20072,\n  \"exten\": 5555,\n  \"extend</w>\": 14492,\n  \"extended</w>\": 9614,\n  \"extending</w>\": 25652,\n  \"extends</w>\": 20688,\n  \"extension</w>\": 10275,\n  \"extensions</w>\": 24525,\n  \"extensive</w>\": 16870,\n  \"extensively</w>\": 47365,\n  \"extent</w>\": 24913,\n  \"exter\": 9797,\n  \"exterior</w>\": 19352,\n  \"extermin\": 41671,\n  \"external</w>\": 15028,\n  \"extin\": 13553,\n  \"extinct</w>\": 24488,\n  \"extinction</w>\": 21186,\n  \"extingui\": 38567,\n  \"extor\": 35620,\n  \"extr\": 29082,\n  \"extra\": 6416,\n  \"extra</w>\": 4231,\n  \"extrac\": 18550,\n  \"extract</w>\": 18962,\n  \"extraction</w>\": 28789,\n  \"extracts</w>\": 45576,\n  \"extraordin\": 23628,\n  \"extraordinaire</w>\": 30909,\n  \"extraordinary</w>\": 10982,\n  \"extras</w>\": 29817,\n  \"extravag\": 22299,\n  \"extravaganza</w>\": 29461,\n  \"extre\": 3978,\n  \"extreme\": 38357,\n  \"extreme</w>\": 8331,\n  \"extremely</w>\": 6519,\n  \"extremism</w>\": 31493,\n  \"extremist</w>\": 36383,\n  \"extremists</w>\": 41425,\n  \"extru\": 43010,\n  \"ey\": 1541,\n  \"ey</w>\": 1477,\n  \"eyang</w>\": 28915,\n  \"eye\": 5034,\n  \"eye</w>\": 3272,\n  \"eyebrow</w>\": 34250,\n  \"eyebrows</w>\": 19923,\n  \"eyed</w>\": 15512,\n  \"eyeing</w>\": 34916,\n  \"eyel\": 17075,\n  \"eyelashes</w>\": 42074,\n  \"eyeliner</w>\": 33354,\n  \"eyeon</w>\": 25126,\n  \"eyes</w>\": 3095,\n  \"eyeshadow</w>\": 35213,\n  \"eyewear</w>\": 30165,\n  \"eyewitness</w>\": 36258,\n  \"eyou\": 31996,\n  \"eyour\": 40229,\n  \"eyre</w>\": 44115,\n  \"ez\": 10082,\n  \"ez</w>\": 8387,\n  \"eze\": 25993,\n  \"eze</w>\": 27229,\n  \"ezekiel</w>\": 41428,\n  \"ezra</w>\": 27552,\n  \"f\": 69,\n  \"f</w>\": 325,\n  \"fa\": 778,\n  \"fa</w>\": 2800,\n  \"faa</w>\": 27577,\n  \"fab\": 2833,\n  \"fab</w>\": 5492,\n  \"faber\": 43461,\n  \"faber</w>\": 42488,\n  \"fabi\": 29425,\n  \"fabian</w>\": 34539,\n  \"fabio</w>\": 31666,\n  \"fabric\": 16217,\n  \"fabric</w>\": 10033,\n  \"fabricated</w>\": 40851,\n  \"fabrication</w>\": 33476,\n  \"fabrics</w>\": 23159,\n  \"fabulous</w>\": 5189,\n  \"fac\": 1053,\n  \"fac</w>\": 35438,\n  \"facade</w>\": 29217,\n  \"face\": 2545,\n  \"face</w>\": 1710,\n  \"facebook\": 36156,\n  \"facebook</w>\": 2943,\n  \"faced</w>\": 10941,\n  \"faceli\": 32023,\n  \"facelift</w>\": 36380,\n  \"faceoff</w>\": 42710,\n  \"facep\": 45285,\n  \"faces</w>\": 4905,\n  \"faceted</w>\": 43435,\n  \"facetime</w>\": 24076,\n  \"facial</w>\": 11909,\n  \"facil\": 39973,\n  \"facilit\": 13567,\n  \"facilitate</w>\": 26733,\n  \"facilitated</w>\": 43853,\n  \"facilitating</w>\": 34796,\n  \"facilities</w>\": 10388,\n  \"facility</w>\": 8165,\n  \"facing</w>\": 7619,\n  \"fact\": 17189,\n  \"fact</w>\": 3598,\n  \"factfriday</w>\": 27953,\n  \"faction</w>\": 14629,\n  \"factor\": 21082,\n  \"factor</w>\": 8124,\n  \"factories</w>\": 36492,\n  \"factors</w>\": 12733,\n  \"factory\": 42483,\n  \"factory</w>\": 6072,\n  \"facts</w>\": 5085,\n  \"factual</w>\": 45471,\n  \"faculty</w>\": 9504,\n  \"facup</w>\": 25283,\n  \"fad\": 12632,\n  \"fad</w>\": 47669,\n  \"fade</w>\": 20486,\n  \"faded</w>\": 26051,\n  \"fades</w>\": 40441,\n  \"fading</w>\": 32882,\n  \"fadnavis</w>\": 38945,\n  \"faf\": 31052,\n  \"faf</w>\": 43903,\n  \"fag\": 25617,\n  \"fag</w>\": 39305,\n  \"fah\": 25495,\n  \"fah</w>\": 35429,\n  \"fahren\": 45527,\n  \"fai\": 20519,\n  \"fai</w>\": 26384,\n  \"fail\": 7105,\n  \"fail</w>\": 6801,\n  \"failed</w>\": 8314,\n  \"failing</w>\": 15757,\n  \"fails</w>\": 13388,\n  \"failure</w>\": 8732,\n  \"failures</w>\": 25442,\n  \"faint</w>\": 30807,\n  \"fair\": 3031,\n  \"fair</w>\": 2849,\n  \"fairbanks</w>\": 43962,\n  \"faire\": 34745,\n  \"faire</w>\": 20798,\n  \"fairfax</w>\": 29368,\n  \"fairfield</w>\": 29664,\n  \"fairgrounds</w>\": 38325,\n  \"fairi\": 28884,\n  \"fairies</w>\": 33590,\n  \"fairly</w>\": 14961,\n  \"fairmont</w>\": 41547,\n  \"fairness</w>\": 29388,\n  \"fairs</w>\": 8655,\n  \"fairtrade</w>\": 33361,\n  \"fairview</w>\": 43479,\n  \"fairway</w>\": 44022,\n  \"fairy\": 17021,\n  \"fairy</w>\": 10444,\n  \"fairytale</w>\": 28944,\n  \"fais\": 23542,\n  \"faisal</w>\": 35459,\n  \"fait</w>\": 20567,\n  \"faith\": 10653,\n  \"faith</w>\": 5080,\n  \"faithful</w>\": 15511,\n  \"faiz\": 41775,\n  \"fake\": 18794,\n  \"fake</w>\": 5777,\n  \"faken\": 22853,\n  \"fakenews</w>\": 26943,\n  \"fakespeare</w>\": 49095,\n  \"fal\": 2778,\n  \"fal</w>\": 40494,\n  \"fala\": 47120,\n  \"falcon\": 22498,\n  \"falcon</w>\": 13571,\n  \"falcons</w>\": 13834,\n  \"falk\": 34648,\n  \"falkirk</w>\": 44080,\n  \"fall\": 6489,\n  \"fall</w>\": 2359,\n  \"fallen</w>\": 8688,\n  \"falling\": 48709,\n  \"falling</w>\": 7293,\n  \"fallon\": 39596,\n  \"fallon</w>\": 21281,\n  \"fallontonight</w>\": 44627,\n  \"fallout\": 49365,\n  \"fallout</w>\": 16009,\n  \"falls</w>\": 4778,\n  \"falmouth</w>\": 38261,\n  \"false\": 38948,\n  \"false</w>\": 9078,\n  \"falsely</w>\": 42321,\n  \"fam\": 1058,\n  \"fam</w>\": 5128,\n  \"fame</w>\": 6573,\n  \"famed</w>\": 23302,\n  \"famer</w>\": 24554,\n  \"famil\": 3395,\n  \"famili\": 8488,\n  \"familia</w>\": 25622,\n  \"familiar</w>\": 10020,\n  \"families</w>\": 4612,\n  \"family\": 8137,\n  \"family</w>\": 1315,\n  \"familyfun</w>\": 46308,\n  \"familytime</w>\": 47236,\n  \"familytravel</w>\": 38222,\n  \"famine</w>\": 35847,\n  \"famous\": 44811,\n  \"famous</w>\": 4096,\n  \"famously</w>\": 44505,\n  \"fan\": 1675,\n  \"fan</w>\": 2261,\n  \"fanart\": 41059,\n  \"fanart</w>\": 7855,\n  \"fanartfriday</w>\": 45346,\n  \"fanatic</w>\": 36643,\n  \"fanatics</w>\": 39610,\n  \"fanbase</w>\": 36921,\n  \"fanboy</w>\": 43369,\n  \"fanc\": 29017,\n  \"fancafe</w>\": 45080,\n  \"fanci\": 35908,\n  \"fanclub</w>\": 31530,\n  \"fancy\": 47622,\n  \"fancy</w>\": 6733,\n  \"fand\": 19684,\n  \"fandom\": 47634,\n  \"fandom</w>\": 11534,\n  \"fanfest</w>\": 42916,\n  \"fanfic</w>\": 47243,\n  \"fang\": 14269,\n  \"fang</w>\": 27428,\n  \"fangirl</w>\": 28813,\n  \"fangirling</w>\": 39463,\n  \"fanning</w>\": 37282,\n  \"fanny</w>\": 30401,\n  \"fans\": 32454,\n  \"fans</w>\": 1840,\n  \"fansign</w>\": 25288,\n  \"fant\": 4467,\n  \"fanta\": 2703,\n  \"fantaken</w>\": 39412,\n  \"fantasia</w>\": 49306,\n  \"fantastic\": 31289,\n  \"fantastic</w>\": 2935,\n  \"fantasy\": 15124,\n  \"fantasy</w>\": 5267,\n  \"fantasyfootball</w>\": 35713,\n  \"fao</w>\": 31155,\n  \"faq</w>\": 28533,\n  \"far\": 1578,\n  \"far</w>\": 2384,\n  \"fara</w>\": 48562,\n  \"farage</w>\": 28340,\n  \"farah</w>\": 31547,\n  \"fare\": 8620,\n  \"fare</w>\": 6461,\n  \"fares</w>\": 27525,\n  \"farewell</w>\": 10734,\n  \"fargo</w>\": 18870,\n  \"fari\": 26197,\n  \"farley</w>\": 43761,\n  \"farm\": 9066,\n  \"farm</w>\": 3985,\n  \"farmer\": 19735,\n  \"farmer</w>\": 10474,\n  \"farmers\": 29752,\n  \"farmers</w>\": 6402,\n  \"farmersmarket</w>\": 41808,\n  \"farmhouse</w>\": 26293,\n  \"farming</w>\": 10399,\n  \"farmington</w>\": 49305,\n  \"farmland</w>\": 45258,\n  \"farms</w>\": 11277,\n  \"farn\": 27527,\n  \"faroo\": 39147,\n  \"farra\": 33657,\n  \"farrakhan</w>\": 46293,\n  \"farrell</w>\": 24234,\n  \"fart</w>\": 34664,\n  \"farther</w>\": 42233,\n  \"fas\": 4830,\n  \"fas</w>\": 42995,\n  \"fasci\": 17191,\n  \"fascin\": 7327,\n  \"fascinated</w>\": 32964,\n  \"fascinating</w>\": 8640,\n  \"fascism</w>\": 28213,\n  \"fascist</w>\": 23870,\n  \"fascists</w>\": 43598,\n  \"fash\": 42682,\n  \"fashi\": 2099,\n  \"fashion\": 6976,\n  \"fashion</w>\": 2444,\n  \"fashionable</w>\": 24597,\n  \"fashionblogger</w>\": 31726,\n  \"fashioned</w>\": 21563,\n  \"fashioni\": 26062,\n  \"fashionista</w>\": 30415,\n  \"fashions</w>\": 37601,\n  \"fashionshow</w>\": 45653,\n  \"fashionweek</w>\": 28684,\n  \"fass\": 42398,\n  \"fast\": 8509,\n  \"fast</w>\": 1953,\n  \"fasten\": 44990,\n  \"faster</w>\": 8835,\n  \"fastest</w>\": 9808,\n  \"fasting</w>\": 24656,\n  \"fat\": 4751,\n  \"fat</w>\": 5484,\n  \"fatal</w>\": 12124,\n  \"fatalities</w>\": 44168,\n  \"fatally</w>\": 34069,\n  \"fate\": 26315,\n  \"fate</w>\": 11734,\n  \"father\": 11607,\n  \"father</w>\": 3224,\n  \"fathers</w>\": 12780,\n  \"fathersday</w>\": 16731,\n  \"fati\": 13430,\n  \"fatigue</w>\": 23747,\n  \"fatima</w>\": 28202,\n  \"fats</w>\": 30151,\n  \"fatt\": 44131,\n  \"fatty</w>\": 22953,\n  \"fau\": 5571,\n  \"fau</w>\": 31381,\n  \"faucet</w>\": 44273,\n  \"faul\": 16230,\n  \"faulkner</w>\": 37840,\n  \"fault</w>\": 13862,\n  \"faults</w>\": 42752,\n  \"faulty</w>\": 47103,\n  \"fauna</w>\": 30808,\n  \"faust</w>\": 44772,\n  \"faux</w>\": 19429,\n  \"fav\": 1355,\n  \"fav</w>\": 5426,\n  \"fave</w>\": 7272,\n  \"faves</w>\": 18003,\n  \"favor\": 1766,\n  \"favor</w>\": 12160,\n  \"favorable</w>\": 35392,\n  \"favored</w>\": 46640,\n  \"favorite\": 35262,\n  \"favorite</w>\": 1916,\n  \"favorited</w>\": 36926,\n  \"favorites</w>\": 10564,\n  \"favors</w>\": 36085,\n  \"favour\": 3111,\n  \"favour</w>\": 20469,\n  \"favourite</w>\": 3342,\n  \"favourites</w>\": 16585,\n  \"favs</w>\": 18879,\n  \"faw\": 21800,\n  \"fawad\": 46425,\n  \"fawn</w>\": 48624,\n  \"fax\": 32535,\n  \"fax</w>\": 9337,\n  \"fay\": 8939,\n  \"fay</w>\": 40074,\n  \"faye</w>\": 30257,\n  \"fayette\": 32043,\n  \"fayette</w>\": 19782,\n  \"fayetteville</w>\": 37771,\n  \"fayre</w>\": 34982,\n  \"faz\": 26238,\n  \"faze</w>\": 44880,\n  \"fb\": 22637,\n  \"fb</w>\": 3307,\n  \"fball</w>\": 29663,\n  \"fbf</w>\": 20004,\n  \"fbi</w>\": 10293,\n  \"fbloggers</w>\": 41389,\n  \"fbs</w>\": 48454,\n  \"fc\": 4278,\n  \"fc</w>\": 1399,\n  \"fca</w>\": 24540,\n  \"fcb\": 26639,\n  \"fcb</w>\": 25045,\n  \"fcbarcelona</w>\": 32174,\n  \"fcbayern</w>\": 35033,\n  \"fcblive</w>\": 44608,\n  \"fcc</w>\": 21240,\n  \"fck\": 40080,\n  \"fck</w>\": 49263,\n  \"fcofficial</w>\": 27805,\n  \"fcs</w>\": 32095,\n  \"fcu</w>\": 47898,\n  \"fd\": 16972,\n  \"fd</w>\": 11525,\n  \"fda</w>\": 17823,\n  \"fdi</w>\": 45579,\n  \"fdn</w>\": 18563,\n  \"fdny</w>\": 41084,\n  \"fdr</w>\": 42298,\n  \"fe\": 623,\n  \"fe</w>\": 873,\n  \"fear\": 8744,\n  \"fear</w>\": 5402,\n  \"feared</w>\": 31154,\n  \"fearless</w>\": 17470,\n  \"fears</w>\": 13867,\n  \"fearthe\": 33449,\n  \"feasi\": 34977,\n  \"feast\": 37963,\n  \"feast</w>\": 9564,\n  \"feat\": 1703,\n  \"feat</w>\": 5611,\n  \"feather\": 24905,\n  \"feather</w>\": 17871,\n  \"feathers</w>\": 21138,\n  \"featherweight</w>\": 44939,\n  \"feature\": 30413,\n  \"feature</w>\": 4527,\n  \"featured</w>\": 4743,\n  \"features</w>\": 4643,\n  \"featuring</w>\": 3706,\n  \"feb</w>\": 4317,\n  \"febru\": 4202,\n  \"february</w>\": 4248,\n  \"fect</w>\": 31293,\n  \"fed\": 22518,\n  \"fed</w>\": 7035,\n  \"feder\": 4737,\n  \"federal</w>\": 6369,\n  \"federation</w>\": 15530,\n  \"federer</w>\": 18246,\n  \"federico</w>\": 40539,\n  \"fedex</w>\": 32603,\n  \"fedora</w>\": 45111,\n  \"feds</w>\": 30593,\n  \"fee\": 28242,\n  \"fee</w>\": 9224,\n  \"feed\": 6662,\n  \"feed</w>\": 5839,\n  \"feedback</w>\": 8683,\n  \"feeder</w>\": 24482,\n  \"feeders</w>\": 44523,\n  \"feeding</w>\": 9879,\n  \"feeds</w>\": 21788,\n  \"feel\": 2408,\n  \"feel</w>\": 2051,\n  \"feelin</w>\": 19903,\n  \"feeling\": 33087,\n  \"feeling</w>\": 3045,\n  \"feelings</w>\": 9452,\n  \"feels</w>\": 4808,\n  \"feelthe\": 22322,\n  \"feelthebern</w>\": 27743,\n  \"fees</w>\": 11765,\n  \"feet</w>\": 4804,\n  \"fei\": 23441,\n  \"fei</w>\": 34217,\n  \"fein\": 46707,\n  \"feinstein</w>\": 41313,\n  \"fel\": 2081,\n  \"fel</w>\": 20304,\n  \"feld\": 45913,\n  \"feld</w>\": 14219,\n  \"feldman</w>\": 41942,\n  \"feli\": 7498,\n  \"felic\": 25845,\n  \"felici\": 23379,\n  \"felicia</w>\": 41139,\n  \"felicidades</w>\": 41648,\n  \"felicity</w>\": 35123,\n  \"feline</w>\": 29471,\n  \"felipe</w>\": 27681,\n  \"felix\": 33455,\n  \"felix</w>\": 16514,\n  \"feliz\": 26104,\n  \"feliz</w>\": 20221,\n  \"fell\": 33540,\n  \"fell</w>\": 6266,\n  \"fella</w>\": 17586,\n  \"fellas</w>\": 18787,\n  \"feller</w>\": 29226,\n  \"fellow\": 12099,\n  \"fellow</w>\": 5242,\n  \"fellows</w>\": 15766,\n  \"fellowship</w>\": 13857,\n  \"felony</w>\": 31068,\n  \"felt</w>\": 5413,\n  \"fem\": 24574,\n  \"fem</w>\": 36615,\n  \"fema</w>\": 41721,\n  \"female\": 22062,\n  \"female</w>\": 3970,\n  \"females</w>\": 21028,\n  \"femi</w>\": 38607,\n  \"femin\": 11423,\n  \"femini\": 11894,\n  \"feminine</w>\": 24911,\n  \"feminism</w>\": 18784,\n  \"feminist</w>\": 14921,\n  \"feminists</w>\": 38809,\n  \"femme</w>\": 31331,\n  \"fen\": 5509,\n  \"fen</w>\": 25024,\n  \"fence</w>\": 12679,\n  \"fences</w>\": 34312,\n  \"fencing</w>\": 23489,\n  \"fender</w>\": 17117,\n  \"fener\": 41208,\n  \"fenerbah\": 46652,\n  \"feng</w>\": 33291,\n  \"fennel</w>\": 28689,\n  \"fent\": 26395,\n  \"fenton</w>\": 47265,\n  \"fenway</w>\": 29206,\n  \"fer\": 1765,\n  \"fer</w>\": 2897,\n  \"fera</w>\": 37705,\n  \"feral</w>\": 29972,\n  \"ferdin\": 25541,\n  \"ferdinand</w>\": 27591,\n  \"fere</w>\": 43144,\n  \"feren\": 35652,\n  \"ference</w>\": 19984,\n  \"ferg</w>\": 44938,\n  \"fergie</w>\": 39119,\n  \"fergu\": 10988,\n  \"fergus</w>\": 42041,\n  \"ferguson</w>\": 11904,\n  \"fermentation</w>\": 45817,\n  \"fermented</w>\": 36886,\n  \"fern\": 10747,\n  \"fern</w>\": 21685,\n  \"fernandes</w>\": 44391,\n  \"fernandez</w>\": 23436,\n  \"fernando</w>\": 17140,\n  \"ferns</w>\": 38277,\n  \"feroci\": 45652,\n  \"ferr\": 7256,\n  \"ferra\": 47911,\n  \"ferrari</w>\": 9606,\n  \"ferre\": 29626,\n  \"ferred</w>\": 10432,\n  \"ferreira</w>\": 48686,\n  \"ferrell</w>\": 41112,\n  \"ferrer</w>\": 38904,\n  \"ferri\": 42008,\n  \"ferries</w>\": 28489,\n  \"ferris</w>\": 27532,\n  \"ferry\": 38936,\n  \"ferry</w>\": 10278,\n  \"fers</w>\": 12378,\n  \"fert\": 14925,\n  \"fert</w>\": 43662,\n  \"fertil\": 41987,\n  \"fertile</w>\": 44837,\n  \"fertili\": 23912,\n  \"fertility</w>\": 23528,\n  \"fertilizer</w>\": 36786,\n  \"fery</w>\": 47448,\n  \"fes</w>\": 32300,\n  \"fest\": 17383,\n  \"fest</w>\": 2590,\n  \"festa</w>\": 42124,\n  \"festi\": 1943,\n  \"festiv\": 19222,\n  \"festival\": 20946,\n  \"festival</w>\": 2240,\n  \"festivals</w>\": 17834,\n  \"festive</w>\": 9533,\n  \"festivities</w>\": 21020,\n  \"fet\": 21409,\n  \"feta</w>\": 31705,\n  \"fetal</w>\": 42031,\n  \"fetch</w>\": 30271,\n  \"fete</w>\": 34629,\n  \"fett</w>\": 37979,\n  \"fetus</w>\": 26768,\n  \"feu\": 24912,\n  \"feu</w>\": 32990,\n  \"feud</w>\": 27365,\n  \"fever\": 40896,\n  \"fever</w>\": 9989,\n  \"fevre</w>\": 43861,\n  \"few</w>\": 1939,\n  \"fewer</w>\": 19128,\n  \"fex\": 41584,\n  \"fex</w>\": 26392,\n  \"fey\": 39069,\n  \"fey</w>\": 23298,\n  \"fez</w>\": 43081,\n  \"ff\": 1021,\n  \"ff</w>\": 1304,\n  \"ffa</w>\": 15355,\n  \"ffame</w>\": 42873,\n  \"ffc</w>\": 19832,\n  \"ffe\": 1138,\n  \"ffe</w>\": 8631,\n  \"ffect</w>\": 29151,\n  \"ffed</w>\": 8448,\n  \"ffee</w>\": 26377,\n  \"ffel</w>\": 22656,\n  \"ffen</w>\": 46537,\n  \"ffer\": 27369,\n  \"ffer</w>\": 11636,\n  \"ffers</w>\": 32163,\n  \"fferty</w>\": 44771,\n  \"ffes</w>\": 46441,\n  \"ffey</w>\": 30138,\n  \"fff</w>\": 28106,\n  \"ffi\": 19961,\n  \"ffic\": 4762,\n  \"ffice</w>\": 26044,\n  \"ffici\": 3639,\n  \"fficial\": 39818,\n  \"fficial</w>\": 6463,\n  \"fficiency</w>\": 27800,\n  \"fficient</w>\": 20424,\n  \"ffin\": 12779,\n  \"ffin</w>\": 7367,\n  \"ffing</w>\": 16592,\n  \"ffins</w>\": 17898,\n  \"ffl</w>\": 39490,\n  \"ffle</w>\": 7749,\n  \"ffler</w>\": 39819,\n  \"ffles</w>\": 19344,\n  \"ffman</w>\": 15823,\n  \"ffo</w>\": 42264,\n  \"ffs</w>\": 4424,\n  \"ffxiv</w>\": 26569,\n  \"ffxv</w>\": 46786,\n  \"ffy\": 26404,\n  \"ffy</w>\": 7795,\n  \"fg\": 45977,\n  \"fg</w>\": 6823,\n  \"fgm</w>\": 32178,\n  \"fgo</w>\": 46113,\n  \"fh\": 21649,\n  \"fh</w>\": 21010,\n  \"fhs</w>\": 45094,\n  \"fi\": 701,\n  \"fi</w>\": 3589,\n  \"fia</w>\": 8827,\n  \"fiable</w>\": 34373,\n  \"fianc\": 27752,\n  \"fiance</w>\": 44114,\n  \"fiancÃ©</w>\": 34039,\n  \"fiasco</w>\": 40944,\n  \"fiat</w>\": 16740,\n  \"fiawec</w>\": 39485,\n  \"fib</w>\": 40594,\n  \"fiba</w>\": 34993,\n  \"fiber\": 35074,\n  \"fiber</w>\": 12612,\n  \"fibers</w>\": 44587,\n  \"fibre</w>\": 21401,\n  \"fibro\": 21294,\n  \"fibrosis</w>\": 36307,\n  \"fic\": 1788,\n  \"fic</w>\": 2059,\n  \"fica</w>\": 26952,\n  \"fically</w>\": 14854,\n  \"fication</w>\": 4523,\n  \"fications</w>\": 12512,\n  \"ficial</w>\": 48192,\n  \"fics</w>\": 42505,\n  \"fiction</w>\": 6218,\n  \"fictional</w>\": 25570,\n  \"fid\": 34197,\n  \"fid</w>\": 23966,\n  \"fidd\": 25218,\n  \"fiddle</w>\": 35968,\n  \"fide</w>\": 45375,\n  \"fidel\": 21740,\n  \"fidel</w>\": 36837,\n  \"fidelity</w>\": 30109,\n  \"fidget</w>\": 48664,\n  \"fie\": 28487,\n  \"fie</w>\": 10348,\n  \"fied\": 29642,\n  \"fied</w>\": 2853,\n  \"fiel\": 1361,\n  \"field\": 7571,\n  \"field</w>\": 1570,\n  \"fielder</w>\": 11046,\n  \"fieldhouse</w>\": 37969,\n  \"fielding</w>\": 30465,\n  \"fields</w>\": 6494,\n  \"fieldwork</w>\": 33155,\n  \"fiends</w>\": 37869,\n  \"fier\": 11167,\n  \"fier</w>\": 10598,\n  \"fierc\": 48609,\n  \"fierce</w>\": 13896,\n  \"fiercely</w>\": 49039,\n  \"fiers</w>\": 16113,\n  \"fiery</w>\": 24557,\n  \"fies</w>\": 9537,\n  \"fiesta</w>\": 14580,\n  \"fif\": 5309,\n  \"fifa\": 21976,\n  \"fifa</w>\": 8516,\n  \"fifaworldcup</w>\": 38819,\n  \"fifawwc</w>\": 41329,\n  \"fife</w>\": 24374,\n  \"fifteen</w>\": 29504,\n  \"fifth\": 25515,\n  \"fifth</w>\": 8772,\n  \"fifthharmony</w>\": 31075,\n  \"fifty\": 24456,\n  \"fifty</w>\": 15978,\n  \"fig\": 4814,\n  \"fig</w>\": 20719,\n  \"figaro</w>\": 48044,\n  \"figh\": 23274,\n  \"fight\": 5262,\n  \"fight</w>\": 2757,\n  \"fighter\": 35884,\n  \"fighter</w>\": 6438,\n  \"fighters</w>\": 7371,\n  \"fightfor\": 48909,\n  \"fightfor</w>\": 35740,\n  \"fighting\": 38625,\n  \"fighting</w>\": 4652,\n  \"fighton</w>\": 45578,\n  \"fights</w>\": 12132,\n  \"figs</w>\": 38882,\n  \"figu\": 6390,\n  \"figur\": 16948,\n  \"figurative</w>\": 44042,\n  \"figure\": 48820,\n  \"figure</w>\": 5274,\n  \"figured</w>\": 15630,\n  \"figures</w>\": 8739,\n  \"figurine</w>\": 33306,\n  \"figuring</w>\": 31513,\n  \"fiji\": 48270,\n  \"fiji</w>\": 18285,\n  \"fik</w>\": 46589,\n  \"fil\": 1142,\n  \"fil</w>\": 14915,\n  \"fila</w>\": 30992,\n  \"filament</w>\": 49252,\n  \"file\": 12545,\n  \"file</w>\": 4512,\n  \"filed</w>\": 13864,\n  \"files</w>\": 7850,\n  \"filet</w>\": 43155,\n  \"fili\": 9590,\n  \"filing</w>\": 16576,\n  \"filip\": 14368,\n  \"filipino</w>\": 19153,\n  \"fill\": 15904,\n  \"fill</w>\": 6277,\n  \"filled</w>\": 5589,\n  \"filler</w>\": 32816,\n  \"fillers</w>\": 45005,\n  \"fillet</w>\": 39276,\n  \"filling</w>\": 9736,\n  \"fillion</w>\": 38048,\n  \"fillmore</w>\": 43922,\n  \"fills</w>\": 21750,\n  \"filly</w>\": 27690,\n  \"film\": 5117,\n  \"film</w>\": 1860,\n  \"filmed</w>\": 15801,\n  \"filmfare</w>\": 42224,\n  \"filmfest</w>\": 24508,\n  \"filmfestival</w>\": 28066,\n  \"filming</w>\": 6866,\n  \"filmmaker</w>\": 17202,\n  \"filmmakers</w>\": 24896,\n  \"filmmaking</w>\": 18226,\n  \"films</w>\": 5370,\n  \"fils</w>\": 40271,\n  \"filter</w>\": 7541,\n  \"filtered</w>\": 29926,\n  \"filtering</w>\": 47770,\n  \"filters</w>\": 18385,\n  \"filth</w>\": 39713,\n  \"filthy</w>\": 26899,\n  \"filtr\": 21408,\n  \"filtration</w>\": 42036,\n  \"fim</w>\": 47525,\n  \"fin\": 735,\n  \"fin</w>\": 10663,\n  \"fina</w>\": 34497,\n  \"final\": 11968,\n  \"final</w>\": 1755,\n  \"finale</w>\": 7844,\n  \"finalfantasy</w>\": 44543,\n  \"finalfour</w>\": 46999,\n  \"finalist</w>\": 12620,\n  \"finalists</w>\": 13422,\n  \"finalized</w>\": 48930,\n  \"finally</w>\": 1992,\n  \"finals</w>\": 4536,\n  \"finan\": 4807,\n  \"finance</w>\": 6117,\n  \"finances</w>\": 28767,\n  \"financi\": 12846,\n  \"financial\": 19783,\n  \"financial</w>\": 4930,\n  \"financially</w>\": 28124,\n  \"financing</w>\": 18375,\n  \"finch</w>\": 18523,\n  \"find\": 18638,\n  \"find</w>\": 1416,\n  \"finder</w>\": 15045,\n  \"finders</w>\": 43884,\n  \"findia</w>\": 47064,\n  \"finding\": 37455,\n  \"finding</w>\": 6002,\n  \"findings</w>\": 16529,\n  \"findlay</w>\": 48227,\n  \"findom</w>\": 36463,\n  \"finds</w>\": 6680,\n  \"findyour\": 25936,\n  \"findyourpark</w>\": 38924,\n  \"fine\": 12042,\n  \"fine</w>\": 3797,\n  \"fineart\": 7484,\n  \"fineart</w>\": 16005,\n  \"fineartamerica</w>\": 7724,\n  \"fined</w>\": 20094,\n  \"finely</w>\": 46120,\n  \"finer</w>\": 36681,\n  \"fines</w>\": 25053,\n  \"finesse</w>\": 46047,\n  \"finest</w>\": 7707,\n  \"fing\": 6485,\n  \"fing</w>\": 17955,\n  \"finger\": 13480,\n  \"finger</w>\": 8895,\n  \"fingerprint</w>\": 39579,\n  \"fingers</w>\": 9690,\n  \"fini\": 2405,\n  \"finish\": 42178,\n  \"finish</w>\": 3958,\n  \"finished</w>\": 3078,\n  \"finisher</w>\": 38636,\n  \"finishers</w>\": 48661,\n  \"finishes</w>\": 13078,\n  \"finishing</w>\": 7912,\n  \"finite</w>\": 48312,\n  \"finity\": 41463,\n  \"finity</w>\": 21273,\n  \"fink</w>\": 40158,\n  \"finland</w>\": 10775,\n  \"finley</w>\": 41652,\n  \"finn\": 28479,\n  \"finn</w>\": 16925,\n  \"finna</w>\": 35180,\n  \"finnish</w>\": 19616,\n  \"fino</w>\": 30083,\n  \"fins</w>\": 32810,\n  \"fintech\": 48929,\n  \"fintech</w>\": 8899,\n  \"fion\": 27476,\n  \"fiona</w>\": 20099,\n  \"fior\": 37086,\n  \"fiore</w>\": 44997,\n  \"fioren\": 33188,\n  \"fiorentina</w>\": 43713,\n  \"fios</w>\": 42521,\n  \"fir\": 770,\n  \"fir</w>\": 16233,\n  \"fire\": 2951,\n  \"fire</w>\": 1769,\n  \"firearm</w>\": 40311,\n  \"firearms</w>\": 23960,\n  \"fireball</w>\": 40543,\n  \"firec\": 42806,\n  \"fired</w>\": 8846,\n  \"firefighter</w>\": 20498,\n  \"firefighters</w>\": 12600,\n  \"firefly</w>\": 33997,\n  \"firefox</w>\": 35372,\n  \"fireman</w>\": 46085,\n  \"firen\": 34752,\n  \"firenze</w>\": 38445,\n  \"fireplace</w>\": 23050,\n  \"fires</w>\": 8749,\n  \"fireside</w>\": 36185,\n  \"firework</w>\": 40750,\n  \"fireworks</w>\": 10641,\n  \"firing</w>\": 15105,\n  \"firm\": 16936,\n  \"firm</w>\": 7705,\n  \"firmly</w>\": 29156,\n  \"firms</w>\": 13655,\n  \"firmware</w>\": 42691,\n  \"first\": 6853,\n  \"first</w>\": 874,\n  \"firstdayof\": 44297,\n  \"firsth\": 48512,\n  \"firsts</w>\": 47884,\n  \"firth</w>\": 26078,\n  \"fis\": 7846,\n  \"fis</w>\": 47683,\n  \"fiscal</w>\": 20825,\n  \"fischer</w>\": 26532,\n  \"fish\": 6431,\n  \"fish</w>\": 2759,\n  \"fisher\": 11175,\n  \"fisher</w>\": 9176,\n  \"fisheries</w>\": 24612,\n  \"fisherman</w>\": 25055,\n  \"fishermen</w>\": 28547,\n  \"fishers</w>\": 42065,\n  \"fishery</w>\": 49057,\n  \"fishes</w>\": 35470,\n  \"fishing\": 31703,\n  \"fishing</w>\": 4935,\n  \"fishy</w>\": 35665,\n  \"fist\": 48340,\n  \"fist</w>\": 17085,\n  \"fit\": 2366,\n  \"fit</w>\": 2478,\n  \"fitbit</w>\": 33768,\n  \"fitch</w>\": 44614,\n  \"fitfam</w>\": 20662,\n  \"fitnes\": 47285,\n  \"fitness\": 20044,\n  \"fitness</w>\": 4838,\n  \"fits</w>\": 6401,\n  \"fitt\": 32994,\n  \"fitted</w>\": 14863,\n  \"fitter</w>\": 42096,\n  \"fitters</w>\": 32364,\n  \"fitting</w>\": 11769,\n  \"fittings</w>\": 45787,\n  \"fitz\": 11120,\n  \"fitz</w>\": 25913,\n  \"fitzgerald</w>\": 20606,\n  \"fitzpatrick</w>\": 37141,\n  \"fiu</w>\": 38374,\n  \"five\": 19508,\n  \"five</w>\": 3127,\n  \"fives</w>\": 44066,\n  \"fix\": 4596,\n  \"fix</w>\": 6028,\n  \"fixed</w>\": 9393,\n  \"fixes</w>\": 25473,\n  \"fixing</w>\": 17423,\n  \"fixture</w>\": 17317,\n  \"fixtures</w>\": 19904,\n  \"fizz</w>\": 31242,\n  \"fj\": 43183,\n  \"fj</w>\": 46447,\n  \"fjor\": 31260,\n  \"fk</w>\": 12410,\n  \"fl\": 1082,\n  \"fl</w>\": 2685,\n  \"fla\": 1577,\n  \"fla</w>\": 20292,\n  \"flag\": 11536,\n  \"flag</w>\": 4859,\n  \"flagged</w>\": 45012,\n  \"flags</w>\": 12221,\n  \"flagship</w>\": 19779,\n  \"flagstaff</w>\": 40406,\n  \"flair</w>\": 24938,\n  \"flake</w>\": 21221,\n  \"flakes</w>\": 20934,\n  \"flam\": 10559,\n  \"flame\": 40351,\n  \"flame</w>\": 13484,\n  \"flamen\": 28826,\n  \"flamenco</w>\": 37362,\n  \"flames</w>\": 13441,\n  \"flamin\": 42693,\n  \"flaming</w>\": 34782,\n  \"flamingo</w>\": 30323,\n  \"flan\": 14572,\n  \"flanagan</w>\": 28641,\n  \"flanders</w>\": 34837,\n  \"flank</w>\": 44553,\n  \"flann\": 39510,\n  \"flannel</w>\": 37807,\n  \"flap</w>\": 35253,\n  \"flappy</w>\": 40241,\n  \"flare</w>\": 21185,\n  \"flares</w>\": 46088,\n  \"flash\": 6089,\n  \"flash</w>\": 5815,\n  \"flashback\": 14616,\n  \"flashback</w>\": 11988,\n  \"flashbackfriday</w>\": 15014,\n  \"flashbacks</w>\": 47056,\n  \"flashes</w>\": 31259,\n  \"flashing</w>\": 31764,\n  \"flashlight</w>\": 37256,\n  \"flask</w>\": 36194,\n  \"flat\": 8986,\n  \"flat</w>\": 6313,\n  \"flats</w>\": 17228,\n  \"flatt\": 45498,\n  \"flattering</w>\": 43267,\n  \"flaun\": 41421,\n  \"flav\": 7191,\n  \"flavo\": 28895,\n  \"flavor\": 31835,\n  \"flavor</w>\": 11818,\n  \"flavored</w>\": 29350,\n  \"flavorful</w>\": 49135,\n  \"flavors</w>\": 16930,\n  \"flavour</w>\": 17026,\n  \"flavoured</w>\": 42397,\n  \"flavours</w>\": 21083,\n  \"flaw\": 14268,\n  \"flaw</w>\": 34978,\n  \"flawed</w>\": 35136,\n  \"flawless</w>\": 15531,\n  \"flaws</w>\": 30492,\n  \"flax</w>\": 43443,\n  \"fle\": 2428,\n  \"fle</w>\": 44964,\n  \"flea</w>\": 24883,\n  \"fleck</w>\": 28143,\n  \"fled</w>\": 26731,\n  \"flee\": 19427,\n  \"flee</w>\": 30167,\n  \"fleece</w>\": 25038,\n  \"fleeing</w>\": 30543,\n  \"fleek</w>\": 43513,\n  \"fleet\": 35922,\n  \"fleet</w>\": 9147,\n  \"fleetwood</w>\": 28883,\n  \"fleming</w>\": 25769,\n  \"fler</w>\": 48789,\n  \"flesh</w>\": 17495,\n  \"flet\": 16102,\n  \"fletcher</w>\": 19810,\n  \"fleur</w>\": 28593,\n  \"flew</w>\": 13768,\n  \"flex\": 16426,\n  \"flex</w>\": 12038,\n  \"flexi\": 10032,\n  \"flexibility</w>\": 22547,\n  \"flexible</w>\": 14502,\n  \"flexing</w>\": 48483,\n  \"fli\": 2472,\n  \"flick\": 13746,\n  \"flick</w>\": 23414,\n  \"flickr</w>\": 17755,\n  \"flies</w>\": 8070,\n  \"flight\": 24701,\n  \"flight</w>\": 3795,\n  \"flights</w>\": 10515,\n  \"flin\": 24730,\n  \"flin</w>\": 43816,\n  \"flinders</w>\": 44647,\n  \"fling</w>\": 22768,\n  \"flint\": 28306,\n  \"flint</w>\": 18324,\n  \"flip\": 20385,\n  \"flip</w>\": 11035,\n  \"flipk\": 30829,\n  \"flipkart</w>\": 33154,\n  \"flipped</w>\": 28144,\n  \"flipping</w>\": 25881,\n  \"flips</w>\": 35089,\n  \"flir\": 24330,\n  \"flirt</w>\": 38352,\n  \"flirting</w>\": 35243,\n  \"flix</w>\": 40663,\n  \"flo\": 1945,\n  \"flo</w>\": 20711,\n  \"float</w>\": 16123,\n  \"floating</w>\": 12619,\n  \"floats</w>\": 33272,\n  \"flock\": 36297,\n  \"flock</w>\": 21822,\n  \"flondon</w>\": 47366,\n  \"floo\": 4062,\n  \"flood\": 23793,\n  \"flood</w>\": 7148,\n  \"flooded</w>\": 19706,\n  \"flooding</w>\": 10204,\n  \"floods</w>\": 16369,\n  \"floor\": 23657,\n  \"floor</w>\": 4125,\n  \"flooring</w>\": 19227,\n  \"floors</w>\": 15671,\n  \"flop</w>\": 22994,\n  \"floppy</w>\": 38267,\n  \"flops</w>\": 29146,\n  \"flor\": 15784,\n  \"flor</w>\": 41669,\n  \"flora</w>\": 18906,\n  \"floral</w>\": 10732,\n  \"florals</w>\": 48331,\n  \"floren\": 37706,\n  \"florence</w>\": 11617,\n  \"flores</w>\": 21537,\n  \"flori\": 3482,\n  \"florian</w>\": 41861,\n  \"florida\": 34264,\n  \"florida</w>\": 3966,\n  \"florist</w>\": 38403,\n  \"floss</w>\": 36453,\n  \"flotus</w>\": 35181,\n  \"flour</w>\": 18592,\n  \"flouri\": 23239,\n  \"flourish</w>\": 36038,\n  \"flow\": 2180,\n  \"flow</w>\": 5608,\n  \"flower\": 12772,\n  \"flower</w>\": 4055,\n  \"flowering</w>\": 19953,\n  \"flowers</w>\": 4023,\n  \"flowing</w>\": 14922,\n  \"flown</w>\": 25659,\n  \"flows</w>\": 16715,\n  \"floyd\": 46369,\n  \"floyd</w>\": 13656,\n  \"flu\": 3698,\n  \"flu</w>\": 13528,\n  \"fluctu\": 40181,\n  \"fluence</w>\": 38169,\n  \"fluent</w>\": 30025,\n  \"fluff</w>\": 31174,\n  \"fluffy\": 40346,\n  \"fluffy</w>\": 17054,\n  \"fluid\": 43803,\n  \"fluid</w>\": 16717,\n  \"fluids</w>\": 41490,\n  \"fluor\": 45127,\n  \"fluore\": 26974,\n  \"fluorescent</w>\": 35036,\n  \"fluori\": 45611,\n  \"flur\": 31591,\n  \"flush</w>\": 25777,\n  \"flushing</w>\": 43754,\n  \"flute</w>\": 23746,\n  \"flux</w>\": 25249,\n  \"flwx</w>\": 30907,\n  \"fly\": 5666,\n  \"fly</w>\": 3228,\n  \"flye\": 30873,\n  \"flyeagles\": 39927,\n  \"flyeaglesfly</w>\": 39931,\n  \"flyer</w>\": 11875,\n  \"flyers</w>\": 14181,\n  \"flyfishing</w>\": 31800,\n  \"flying\": 20782,\n  \"flying</w>\": 4610,\n  \"flyn\": 40676,\n  \"flynn</w>\": 15721,\n  \"flyo\": 33506,\n  \"flyover</w>\": 38083,\n  \"fm\": 13715,\n  \"fm</w>\": 3689,\n  \"fman</w>\": 25152,\n  \"fml</w>\": 26730,\n  \"fmr</w>\": 32875,\n  \"fn\": 22773,\n  \"fn</w>\": 21763,\n  \"fnc</w>\": 46506,\n  \"fo\": 898,\n  \"fo</w>\": 6157,\n  \"foal</w>\": 40386,\n  \"foam\": 30039,\n  \"foam</w>\": 14587,\n  \"foamed</w>\": 26711,\n  \"fob</w>\": 40315,\n  \"focal</w>\": 30934,\n  \"focu\": 5827,\n  \"focus</w>\": 4353,\n  \"focused</w>\": 9319,\n  \"focuses</w>\": 20093,\n  \"focusing</w>\": 15551,\n  \"fod\": 31015,\n  \"fod</w>\": 43299,\n  \"fodils</w>\": 44411,\n  \"foe</w>\": 22952,\n  \"foes</w>\": 46279,\n  \"fog</w>\": 9417,\n  \"foggy</w>\": 19770,\n  \"foil</w>\": 17302,\n  \"fol\": 1106,\n  \"fol</w>\": 48616,\n  \"fold\": 35201,\n  \"fold</w>\": 11021,\n  \"foldable</w>\": 48307,\n  \"folded</w>\": 25233,\n  \"folder</w>\": 25717,\n  \"folding</w>\": 15464,\n  \"folds</w>\": 24266,\n  \"foley</w>\": 22850,\n  \"foli\": 7713,\n  \"folia</w>\": 48964,\n  \"foliage</w>\": 26350,\n  \"folio</w>\": 10772,\n  \"folk\": 10665,\n  \"folk</w>\": 6032,\n  \"folke\": 47190,\n  \"folkl\": 27273,\n  \"folklore\": 22133,\n  \"folklore</w>\": 28620,\n  \"folklorethursday</w>\": 23270,\n  \"folks</w>\": 5422,\n  \"follo\": 41417,\n  \"follow\": 1964,\n  \"follow</w>\": 1979,\n  \"followart</w>\": 40957,\n  \"followback</w>\": 33863,\n  \"followed</w>\": 6499,\n  \"follower</w>\": 17039,\n  \"followers</w>\": 4856,\n  \"following</w>\": 3473,\n  \"followme</w>\": 29668,\n  \"followparty</w>\": 44757,\n  \"follows</w>\": 11287,\n  \"followthe\": 30747,\n  \"folly</w>\": 41408,\n  \"folsom</w>\": 42108,\n  \"fom\": 34540,\n  \"fon\": 5017,\n  \"fon</w>\": 38318,\n  \"fond</w>\": 19964,\n  \"fonda</w>\": 44609,\n  \"fondue</w>\": 48321,\n  \"fone</w>\": 40672,\n  \"font\": 37610,\n  \"font</w>\": 16248,\n  \"fontaine</w>\": 37864,\n  \"fontana</w>\": 43643,\n  \"fontein</w>\": 45062,\n  \"fonts</w>\": 32801,\n  \"foo\": 1183,\n  \"foo</w>\": 23435,\n  \"food\": 4586,\n  \"food</w>\": 1559,\n  \"foodand\": 38317,\n  \"foodbank</w>\": 31926,\n  \"foodie\": 30762,\n  \"foodie</w>\": 9847,\n  \"foodies</w>\": 22416,\n  \"foodnetwork</w>\": 46793,\n  \"foods</w>\": 7057,\n  \"foodsecurity</w>\": 49329,\n  \"foodtruck</w>\": 47682,\n  \"fool\": 23959,\n  \"fool</w>\": 12212,\n  \"fooled</w>\": 28761,\n  \"fooling</w>\": 47964,\n  \"foolish</w>\": 33824,\n  \"fools</w>\": 15946,\n  \"foot\": 6702,\n  \"foot</w>\": 4738,\n  \"footage</w>\": 11130,\n  \"footb\": 33466,\n  \"football\": 9376,\n  \"football</w>\": 1882,\n  \"footballer</w>\": 20646,\n  \"footballers</w>\": 30269,\n  \"footed</w>\": 38040,\n  \"footh\": 25951,\n  \"foothills</w>\": 37020,\n  \"footpath</w>\": 48858,\n  \"footprint</w>\": 23206,\n  \"footprints</w>\": 39640,\n  \"footsteps</w>\": 27289,\n  \"footwear</w>\": 22772,\n  \"footy\": 39866,\n  \"footy</w>\": 18922,\n  \"for\": 645,\n  \"for</w>\": 556,\n  \"forage</w>\": 46871,\n  \"foraging</w>\": 39056,\n  \"forall</w>\": 17824,\n  \"forbe\": 49098,\n  \"forbes</w>\": 13925,\n  \"forbi\": 24754,\n  \"forbidden</w>\": 25164,\n  \"force\": 12068,\n  \"force</w>\": 2869,\n  \"forced</w>\": 8201,\n  \"forces</w>\": 5381,\n  \"forchange</w>\": 35848,\n  \"forcing</w>\": 21573,\n  \"ford\": 3751,\n  \"ford</w>\": 1623,\n  \"fordfc</w>\": 28581,\n  \"fordham</w>\": 48792,\n  \"fords</w>\": 29351,\n  \"fordshire</w>\": 14645,\n  \"fore\": 1484,\n  \"fore</w>\": 1332,\n  \"forec\": 34155,\n  \"forecast</w>\": 7361,\n  \"forecasting</w>\": 38133,\n  \"forecasts</w>\": 27696,\n  \"foreclo\": 44916,\n  \"forefront</w>\": 37679,\n  \"foreground</w>\": 35186,\n  \"forehead</w>\": 25394,\n  \"foreig\": 26497,\n  \"foreign\": 42255,\n  \"foreign</w>\": 6046,\n  \"foreigners</w>\": 38549,\n  \"foreman</w>\": 36174,\n  \"foremost</w>\": 42128,\n  \"foren\": 16526,\n  \"forensic</w>\": 23158,\n  \"forensics</w>\": 38763,\n  \"forest\": 18760,\n  \"forest</w>\": 4167,\n  \"forestation</w>\": 33939,\n  \"forestry</w>\": 26281,\n  \"forests</w>\": 14095,\n  \"forever\": 14748,\n  \"forever</w>\": 3225,\n  \"forevery\": 40605,\n  \"forex\": 40200,\n  \"forex</w>\": 17395,\n  \"forfe\": 44871,\n  \"forge</w>\": 19232,\n  \"forged</w>\": 28105,\n  \"forget\": 46153,\n  \"forget</w>\": 2678,\n  \"forgets</w>\": 35613,\n  \"forgetting</w>\": 25452,\n  \"forgi\": 22080,\n  \"forgive</w>\": 15332,\n  \"forgiven</w>\": 44894,\n  \"forgiveness</w>\": 23585,\n  \"forgood</w>\": 39169,\n  \"forgot</w>\": 6483,\n  \"forgotten</w>\": 7994,\n  \"fork\": 24501,\n  \"fork</w>\": 13700,\n  \"forkids</w>\": 48571,\n  \"forklift</w>\": 43202,\n  \"forks</w>\": 28769,\n  \"forlife</w>\": 17624,\n  \"form\": 1157,\n  \"form</w>\": 1907,\n  \"forma</w>\": 38829,\n  \"formal</w>\": 12978,\n  \"formally</w>\": 24867,\n  \"format\": 16252,\n  \"format</w>\": 11874,\n  \"formation</w>\": 2510,\n  \"formations</w>\": 37715,\n  \"formative</w>\": 48882,\n  \"formats</w>\": 32085,\n  \"forme</w>\": 42085,\n  \"formed</w>\": 6528,\n  \"former</w>\": 2276,\n  \"formerly</w>\": 20866,\n  \"formid\": 38599,\n  \"formidable</w>\": 39834,\n  \"forming</w>\": 15443,\n  \"formity</w>\": 42290,\n  \"forms</w>\": 5161,\n  \"formu\": 8689,\n  \"formul\": 23923,\n  \"formula\": 24485,\n  \"formula</w>\": 10776,\n  \"formulae</w>\": 34586,\n  \"formulated</w>\": 45066,\n  \"forre\": 38876,\n  \"forrest</w>\": 25205,\n  \"forrester</w>\": 45338,\n  \"forsa\": 48958,\n  \"forsale</w>\": 13303,\n  \"forster</w>\": 42923,\n  \"forsy\": 29629,\n  \"forsyth</w>\": 40952,\n  \"fort\": 12300,\n  \"fort</w>\": 2921,\n  \"forte\": 44350,\n  \"forte</w>\": 27367,\n  \"forth\": 17068,\n  \"forth</w>\": 11932,\n  \"forthcoming</w>\": 19989,\n  \"forthe\": 12521,\n  \"forti\": 26984,\n  \"fortified</w>\": 46486,\n  \"fortn\": 14428,\n  \"fortnight</w>\": 39235,\n  \"fortnite\": 38734,\n  \"fortnite</w>\": 17890,\n  \"fortress</w>\": 19988,\n  \"fortun\": 6950,\n  \"fortunate</w>\": 19898,\n  \"fortunately</w>\": 34358,\n  \"fortune\": 40931,\n  \"fortune</w>\": 11451,\n  \"fortunes</w>\": 41989,\n  \"forty</w>\": 24399,\n  \"forum\": 37851,\n  \"forum</w>\": 4538,\n  \"forums</w>\": 31518,\n  \"forwar\": 34364,\n  \"forward\": 47031,\n  \"forward</w>\": 2342,\n  \"forwards</w>\": 38974,\n  \"foryou</w>\": 35150,\n  \"forz\": 46056,\n  \"forza\": 33293,\n  \"forza</w>\": 28089,\n  \"fos\": 36925,\n  \"fos</w>\": 22081,\n  \"foss\": 14240,\n  \"foss</w>\": 37911,\n  \"fossil\": 20419,\n  \"fossil</w>\": 15202,\n  \"fossilfriday</w>\": 26079,\n  \"fossils</w>\": 30652,\n  \"foster\": 26778,\n  \"foster</w>\": 8139,\n  \"fostering</w>\": 35996,\n  \"fosters</w>\": 37644,\n  \"foto\": 15908,\n  \"foto</w>\": 12823,\n  \"fotogra\": 23687,\n  \"fotografia</w>\": 40256,\n  \"fotos</w>\": 26124,\n  \"fou\": 14516,\n  \"fought</w>\": 10844,\n  \"foul</w>\": 19784,\n  \"foun\": 3154,\n  \"found\": 3454,\n  \"found</w>\": 1546,\n  \"foundation</w>\": 4058,\n  \"foundations</w>\": 25219,\n  \"founded</w>\": 12240,\n  \"founder</w>\": 5145,\n  \"founders</w>\": 14602,\n  \"founding</w>\": 15317,\n  \"foundry</w>\": 31426,\n  \"fountain\": 44863,\n  \"fountain</w>\": 13405,\n  \"fountains</w>\": 37411,\n  \"four\": 5113,\n  \"four</w>\": 2721,\n  \"foursquare</w>\": 34484,\n  \"fourteen</w>\": 46255,\n  \"fourth</w>\": 7516,\n  \"fourthofjuly</w>\": 47805,\n  \"fow\": 17084,\n  \"fowl</w>\": 31685,\n  \"fowler</w>\": 20980,\n  \"fox\": 5007,\n  \"fox</w>\": 3240,\n  \"foxandfriends</w>\": 45841,\n  \"foxes</w>\": 24145,\n  \"foxnews</w>\": 18830,\n  \"foxsports</w>\": 39267,\n  \"foxtv</w>\": 49396,\n  \"foxx</w>\": 32993,\n  \"foxy</w>\": 27945,\n  \"foy</w>\": 30284,\n  \"foyer</w>\": 38011,\n  \"foyle</w>\": 47902,\n  \"fp\": 28058,\n  \"fp</w>\": 8941,\n  \"fpl</w>\": 27970,\n  \"fpp</w>\": 36464,\n  \"fps</w>\": 25300,\n  \"fpv</w>\": 43175,\n  \"fr\": 936,\n  \"fr</w>\": 5512,\n  \"fra\": 3368,\n  \"fra</w>\": 15644,\n  \"frac\": 15607,\n  \"fracking</w>\": 21894,\n  \"fractal</w>\": 46471,\n  \"fraction</w>\": 26788,\n  \"fractu\": 25847,\n  \"fracture</w>\": 28995,\n  \"fractured</w>\": 37421,\n  \"fractures</w>\": 46213,\n  \"frag\": 13093,\n  \"fragile</w>\": 23579,\n  \"fragment</w>\": 39209,\n  \"fragments</w>\": 41424,\n  \"fragr\": 15403,\n  \"fragrance</w>\": 17874,\n  \"fragrances</w>\": 44567,\n  \"fragrant</w>\": 37030,\n  \"fram\": 27987,\n  \"frame\": 11029,\n  \"frame</w>\": 6481,\n  \"framed</w>\": 13135,\n  \"frames</w>\": 15479,\n  \"framework</w>\": 13195,\n  \"frameworks</w>\": 43136,\n  \"framing</w>\": 24539,\n  \"frampton</w>\": 41733,\n  \"fran\": 2118,\n  \"fran</w>\": 18878,\n  \"franc\": 3872,\n  \"franc</w>\": 42340,\n  \"franca\": 48952,\n  \"france\": 12045,\n  \"france</w>\": 3552,\n  \"frances</w>\": 20803,\n  \"francesca</w>\": 32327,\n  \"francesco</w>\": 25816,\n  \"franch\": 11756,\n  \"franchi\": 46438,\n  \"franchise</w>\": 13664,\n  \"franci\": 46458,\n  \"francis\": 22187,\n  \"francis</w>\": 7660,\n  \"francisco</w>\": 6887,\n  \"franco\": 17934,\n  \"franco</w>\": 17052,\n  \"francois</w>\": 29317,\n  \"frank\": 5390,\n  \"frank</w>\": 5229,\n  \"franken\": 20487,\n  \"franken</w>\": 48252,\n  \"frankenstein</w>\": 26410,\n  \"frankfur\": 17442,\n  \"frankfurt</w>\": 18598,\n  \"franki\": 39227,\n  \"frankie\": 38373,\n  \"frankie</w>\": 16215,\n  \"franklin\": 40935,\n  \"franklin</w>\": 9999,\n  \"frankly</w>\": 38015,\n  \"franks</w>\": 42855,\n  \"frans</w>\": 47892,\n  \"franz</w>\": 25449,\n  \"franÃ§\": 38381,\n  \"fraser\": 39082,\n  \"fraser</w>\": 16754,\n  \"frat\": 15225,\n  \"frat</w>\": 39292,\n  \"fraternity</w>\": 24433,\n  \"frau\": 23063,\n  \"fraud\": 40647,\n  \"fraud</w>\": 9961,\n  \"fraudul\": 42655,\n  \"fraudulent</w>\": 47408,\n  \"fray</w>\": 41154,\n  \"frazier</w>\": 32841,\n  \"frc</w>\": 41507,\n  \"fre\": 821,\n  \"fre</w>\": 43165,\n  \"freak\": 20352,\n  \"freak</w>\": 13701,\n  \"freaked</w>\": 43511,\n  \"freakin</w>\": 23900,\n  \"freaking</w>\": 11992,\n  \"freaks</w>\": 27009,\n  \"freaky</w>\": 31583,\n  \"freck\": 33328,\n  \"freckles</w>\": 48036,\n  \"fred\": 9486,\n  \"fred</w>\": 6678,\n  \"freddie\": 41890,\n  \"freddie</w>\": 17014,\n  \"freddy</w>\": 24394,\n  \"freder\": 10745,\n  \"frederic</w>\": 41165,\n  \"frederick\": 37103,\n  \"frederick</w>\": 18570,\n  \"fredo</w>\": 48241,\n  \"free\": 2065,\n  \"free</w>\": 1139,\n  \"freebie</w>\": 35865,\n  \"freebies</w>\": 28630,\n  \"freec\": 46569,\n  \"freed\": 12585,\n  \"freed</w>\": 23392,\n  \"freedom\": 17992,\n  \"freedom</w>\": 4511,\n  \"freedoms</w>\": 32500,\n  \"freef\": 48678,\n  \"freel\": 14174,\n  \"freelance</w>\": 21942,\n  \"freely</w>\": 24436,\n  \"freeman</w>\": 16450,\n  \"freep\": 32499,\n  \"freepalestine</w>\": 39242,\n  \"freer\": 44676,\n  \"frees\": 27455,\n  \"freestyle</w>\": 15594,\n  \"freeway</w>\": 24927,\n  \"freeze</w>\": 14187,\n  \"freezer</w>\": 25390,\n  \"freezing</w>\": 12499,\n  \"frei\": 30183,\n  \"freight</w>\": 17023,\n  \"fremantle</w>\": 48012,\n  \"fremont</w>\": 34578,\n  \"fren\": 2919,\n  \"french\": 13118,\n  \"french</w>\": 3461,\n  \"frenzy</w>\": 30084,\n  \"frequ\": 9211,\n  \"frequencies</w>\": 45319,\n  \"frequency</w>\": 18825,\n  \"frequent</w>\": 19836,\n  \"frequently</w>\": 22434,\n  \"fresco</w>\": 31609,\n  \"fresh\": 4065,\n  \"fresh</w>\": 2975,\n  \"fresher</w>\": 49284,\n  \"freshers</w>\": 35810,\n  \"freshest</w>\": 46809,\n  \"freshly</w>\": 16081,\n  \"freshman</w>\": 9381,\n  \"freshmen</w>\": 21292,\n  \"freshness</w>\": 45872,\n  \"freshwater</w>\": 24803,\n  \"fresno\": 40879,\n  \"fresno</w>\": 20995,\n  \"fret</w>\": 40510,\n  \"freud</w>\": 40787,\n  \"frey\": 22136,\n  \"frey</w>\": 9082,\n  \"fri\": 815,\n  \"fri</w>\": 6882,\n  \"friars</w>\": 30513,\n  \"fric\": 18981,\n  \"frick</w>\": 46304,\n  \"friction</w>\": 38563,\n  \"frid</w>\": 46388,\n  \"frida</w>\": 36001,\n  \"friday\": 6350,\n  \"friday</w>\": 1461,\n  \"fridayfeeling</w>\": 11952,\n  \"fridaymotivation</w>\": 38544,\n  \"fridaynight\": 44858,\n  \"fridayreads</w>\": 37736,\n  \"fridays</w>\": 15589,\n  \"fridaythe</w>\": 47642,\n  \"fridge</w>\": 13491,\n  \"fridges</w>\": 40734,\n  \"frie\": 36999,\n  \"fried\": 13743,\n  \"fried</w>\": 7310,\n  \"friedman</w>\": 29402,\n  \"friedrich</w>\": 34171,\n  \"friend\": 3017,\n  \"friend</w>\": 1625,\n  \"friendly\": 44612,\n  \"friendly</w>\": 4681,\n  \"friends\": 38875,\n  \"friends</w>\": 1574,\n  \"friendship\": 42674,\n  \"friendship</w>\": 7679,\n  \"friendships</w>\": 28840,\n  \"fries</w>\": 11369,\n  \"frifotos</w>\": 40493,\n  \"friger\": 20785,\n  \"friggin</w>\": 48300,\n  \"frigh\": 34831,\n  \"fright\": 24277,\n  \"fright</w>\": 40207,\n  \"frightened</w>\": 47136,\n  \"frightening</w>\": 39290,\n  \"fringe</w>\": 10640,\n  \"fris\": 37252,\n  \"frisbee</w>\": 45768,\n  \"frisco</w>\": 35945,\n  \"frit\": 34614,\n  \"fritz</w>\": 29860,\n  \"friyay</w>\": 38887,\n  \"frm</w>\": 12951,\n  \"fro\": 626,\n  \"fro</w>\": 26603,\n  \"frock</w>\": 45306,\n  \"frog\": 26494,\n  \"frog</w>\": 11438,\n  \"frogs</w>\": 20781,\n  \"from\": 8330,\n  \"from</w>\": 633,\n  \"frome</w>\": 48691,\n  \"fromhome</w>\": 41477,\n  \"fromthe\": 18756,\n  \"fron\": 1847,\n  \"fron</w>\": 18036,\n  \"front\": 10996,\n  \"front</w>\": 2184,\n  \"frontal</w>\": 35794,\n  \"frontier</w>\": 18253,\n  \"frontiers</w>\": 38396,\n  \"frontline</w>\": 29589,\n  \"frontman</w>\": 36775,\n  \"fronts</w>\": 26846,\n  \"froome</w>\": 48560,\n  \"frosh</w>\": 47069,\n  \"frost\": 39420,\n  \"frost</w>\": 11619,\n  \"frosted</w>\": 35988,\n  \"frosting</w>\": 33872,\n  \"frosty</w>\": 22760,\n  \"froze</w>\": 47788,\n  \"frozen\": 42464,\n  \"frozen</w>\": 8507,\n  \"frs</w>\": 26216,\n  \"fru\": 3248,\n  \"fruit\": 16771,\n  \"fruit</w>\": 5190,\n  \"fruitful</w>\": 31494,\n  \"fruits</w>\": 13282,\n  \"fruity</w>\": 22320,\n  \"frustr\": 16046,\n  \"frustrated</w>\": 25111,\n  \"frustrating</w>\": 31342,\n  \"frustration</w>\": 30535,\n  \"fry\": 33914,\n  \"fry</w>\": 13686,\n  \"fryer</w>\": 49217,\n  \"frying</w>\": 38516,\n  \"fs\": 23699,\n  \"fs</w>\": 3854,\n  \"fsa</w>\": 33373,\n  \"fsu\": 44185,\n  \"fsu</w>\": 19317,\n  \"ft\": 3391,\n  \"ft</w>\": 981,\n  \"fta</w>\": 41975,\n  \"ftc</w>\": 33752,\n  \"fted</w>\": 5612,\n  \"fter</w>\": 25063,\n  \"fthe\": 22886,\n  \"ftheday</w>\": 9823,\n  \"fting</w>\": 6174,\n  \"fton</w>\": 26605,\n  \"ftp</w>\": 42649,\n  \"fts</w>\": 3767,\n  \"ftse</w>\": 46717,\n  \"ftw</w>\": 19298,\n  \"fty</w>\": 17494,\n  \"fu\": 665,\n  \"fu</w>\": 9098,\n  \"fuch\": 42617,\n  \"fudge</w>\": 24270,\n  \"fue</w>\": 43723,\n  \"fuego</w>\": 41500,\n  \"fuel\": 21113,\n  \"fuel</w>\": 5945,\n  \"fueled</w>\": 28792,\n  \"fueling</w>\": 38793,\n  \"fuelled</w>\": 48357,\n  \"fuels</w>\": 19365,\n  \"fuentes</w>\": 44393,\n  \"fuer\": 29645,\n  \"fug\": 29227,\n  \"fugitive</w>\": 39257,\n  \"fuji\": 15573,\n  \"fuji</w>\": 21634,\n  \"fujifilm</w>\": 24765,\n  \"fuk</w>\": 31051,\n  \"fuku\": 20728,\n  \"fukushima</w>\": 33929,\n  \"ful\": 1814,\n  \"ful</w>\": 857,\n  \"fulbright</w>\": 41834,\n  \"fulfill\": 43675,\n  \"fulfill</w>\": 27467,\n  \"fulfilled</w>\": 29919,\n  \"fulfilling</w>\": 30621,\n  \"fulfillment</w>\": 45573,\n  \"fulham</w>\": 25574,\n  \"full\": 9407,\n  \"full</w>\": 1476,\n  \"fuller</w>\": 20225,\n  \"fullerton</w>\": 42822,\n  \"fullest</w>\": 35603,\n  \"fully\": 39142,\n  \"fully</w>\": 2401,\n  \"fulness</w>\": 10526,\n  \"fuls</w>\": 41606,\n  \"fulton</w>\": 26725,\n  \"fum</w>\": 38393,\n  \"fumble</w>\": 49373,\n  \"fun\": 1229,\n  \"fun</w>\": 1499,\n  \"func\": 8679,\n  \"function</w>\": 8093,\n  \"functional</w>\": 12885,\n  \"functionality</w>\": 33316,\n  \"functioning</w>\": 25479,\n  \"functions</w>\": 18001,\n  \"fund\": 19089,\n  \"fund</w>\": 4877,\n  \"fundam\": 11670,\n  \"fundament\": 18852,\n  \"fundamental</w>\": 17627,\n  \"fundamentally</w>\": 45378,\n  \"fundamentals</w>\": 27887,\n  \"funday</w>\": 15439,\n  \"funded</w>\": 10588,\n  \"funding</w>\": 5588,\n  \"fundra\": 6201,\n  \"fundraiser</w>\": 10049,\n  \"fundraising</w>\": 10755,\n  \"funds</w>\": 7066,\n  \"funer\": 40693,\n  \"funeral</w>\": 10606,\n  \"funfact</w>\": 31596,\n  \"funfactfriday</w>\": 40710,\n  \"fungal</w>\": 38838,\n  \"fungi</w>\": 27837,\n  \"fungus</w>\": 30677,\n  \"funk\": 37353,\n  \"funk</w>\": 13372,\n  \"funko\": 49402,\n  \"funko</w>\": 23697,\n  \"funky</w>\": 16492,\n  \"funnel</w>\": 27862,\n  \"funnier</w>\": 42232,\n  \"funniest</w>\": 15557,\n  \"funny\": 19124,\n  \"funny</w>\": 3789,\n  \"funrun</w>\": 34185,\n  \"fur\": 2395,\n  \"fur</w>\": 9686,\n  \"furi\": 40816,\n  \"furious</w>\": 17522,\n  \"furman</w>\": 49238,\n  \"furn\": 21348,\n  \"furnace</w>\": 31913,\n  \"furnished</w>\": 37388,\n  \"furnitu\": 45696,\n  \"furniture</w>\": 7993,\n  \"furry\": 33414,\n  \"furry</w>\": 15351,\n  \"fursuit\": 25306,\n  \"fursuit</w>\": 43083,\n  \"fursuitfriday</w>\": 27917,\n  \"further</w>\": 5583,\n  \"fury</w>\": 14404,\n  \"fus</w>\": 18419,\n  \"fuse</w>\": 23386,\n  \"fused</w>\": 38994,\n  \"fusion\": 44661,\n  \"fusion</w>\": 9364,\n  \"fuss</w>\": 26331,\n  \"fut\": 21460,\n  \"fut</w>\": 34049,\n  \"futbol</w>\": 33014,\n  \"futsal</w>\": 20558,\n  \"futu\": 33454,\n  \"futur\": 38840,\n  \"future\": 7959,\n  \"future</w>\": 1904,\n  \"futureof\": 22599,\n  \"futureofwork</w>\": 33202,\n  \"futures</w>\": 13488,\n  \"futuri\": 19068,\n  \"futurism</w>\": 48435,\n  \"futurist</w>\": 48086,\n  \"futuristic</w>\": 30987,\n  \"fuzz\": 47128,\n  \"fuzz</w>\": 40443,\n  \"fuzzy</w>\": 25876,\n  \"fv\": 29795,\n  \"fw\": 23934,\n  \"fw</w>\": 5277,\n  \"fwd</w>\": 27052,\n  \"fx\": 17807,\n  \"fx</w>\": 9025,\n  \"fy\": 8440,\n  \"fy</w>\": 2702,\n  \"fyi</w>\": 16014,\n  \"fying</w>\": 5294,\n  \"fz</w>\": 46400,\n  \"fÃ©\": 34072,\n  \"g\": 70,\n  \"g</w>\": 326,\n  \"ga\": 1275,\n  \"ga</w>\": 1531,\n  \"gaa</w>\": 10715,\n  \"gaal</w>\": 40867,\n  \"gaard</w>\": 24645,\n  \"gab\": 3927,\n  \"gab</w>\": 37382,\n  \"gabbana</w>\": 36272,\n  \"gabby\": 48115,\n  \"gabby</w>\": 24567,\n  \"gabe</w>\": 18916,\n  \"gabi</w>\": 41931,\n  \"gable</w>\": 33387,\n  \"gables</w>\": 40928,\n  \"gabri\": 8311,\n  \"gabriel\": 31684,\n  \"gabriel</w>\": 13244,\n  \"gabrielle</w>\": 33572,\n  \"gaby</w>\": 46420,\n  \"gac</w>\": 32520,\n  \"gad\": 7786,\n  \"gad</w>\": 44651,\n  \"gadget</w>\": 25525,\n  \"gadgets</w>\": 22840,\n  \"gado</w>\": 29489,\n  \"gae</w>\": 22003,\n  \"gael</w>\": 35663,\n  \"gaelic</w>\": 31173,\n  \"gaf\": 21354,\n  \"gaf</w>\": 32670,\n  \"gag\": 14121,\n  \"gag</w>\": 18844,\n  \"gaga</w>\": 9782,\n  \"gage</w>\": 21081,\n  \"gah</w>\": 27750,\n  \"gai\": 24214,\n  \"gai</w>\": 25153,\n  \"gaia</w>\": 41269,\n  \"gail\": 41160,\n  \"gail</w>\": 27676,\n  \"gain\": 21536,\n  \"gain</w>\": 6202,\n  \"gaine\": 35747,\n  \"gained</w>\": 14489,\n  \"gaines</w>\": 49225,\n  \"gainesville</w>\": 40427,\n  \"gaining</w>\": 15260,\n  \"gains\": 42751,\n  \"gains</w>\": 12107,\n  \"gal\": 2001,\n  \"gal</w>\": 4488,\n  \"gala</w>\": 7211,\n  \"galac\": 18864,\n  \"galactic</w>\": 25514,\n  \"galap\": 41115,\n  \"galapagos</w>\": 44057,\n  \"galat\": 39853,\n  \"galatasar\": 42413,\n  \"galatasaray</w>\": 47787,\n  \"galax\": 5647,\n  \"galaxies</w>\": 32435,\n  \"galaxy\": 32130,\n  \"galaxy</w>\": 6545,\n  \"gale\": 37658,\n  \"gale</w>\": 21380,\n  \"galerie</w>\": 44539,\n  \"gales</w>\": 48633,\n  \"gali\": 17546,\n  \"gali</w>\": 30552,\n  \"galicia</w>\": 47927,\n  \"galileo</w>\": 39671,\n  \"gall\": 3011,\n  \"gall</w>\": 33374,\n  \"galla\": 16847,\n  \"gallagher</w>\": 19168,\n  \"galleria</w>\": 40656,\n  \"galleries</w>\": 22304,\n  \"gallery\": 36648,\n  \"gallery</w>\": 3830,\n  \"galley</w>\": 48917,\n  \"galli\": 22568,\n  \"gallipoli</w>\": 47249,\n  \"gallo\": 37350,\n  \"gallo</w>\": 33265,\n  \"gallon</w>\": 24615,\n  \"gallons</w>\": 29335,\n  \"galloway</w>\": 27796,\n  \"galore</w>\": 22286,\n  \"gals</w>\": 20125,\n  \"galvani\": 46046,\n  \"galve\": 34328,\n  \"galveston</w>\": 36003,\n  \"galway\": 38045,\n  \"galway</w>\": 17112,\n  \"gam\": 1162,\n  \"gam</w>\": 34195,\n  \"gama</w>\": 35873,\n  \"gambia</w>\": 32988,\n  \"gamble</w>\": 26121,\n  \"gambling</w>\": 20287,\n  \"game\": 2882,\n  \"game</w>\": 1063,\n  \"gameart</w>\": 31490,\n  \"gameboy</w>\": 40951,\n  \"gamecube</w>\": 44079,\n  \"gameday</w>\": 9241,\n  \"gamedev</w>\": 7544,\n  \"gameinsight</w>\": 42626,\n  \"gameof\": 10987,\n  \"gameofthrones</w>\": 11822,\n  \"gameon</w>\": 47691,\n  \"gameplay</w>\": 16794,\n  \"gamer\": 12595,\n  \"gamer</w>\": 11598,\n  \"gamergate</w>\": 25961,\n  \"gamers</w>\": 16166,\n  \"gamersunite</w>\": 26423,\n  \"games\": 18551,\n  \"games</w>\": 1955,\n  \"gamescom</w>\": 37003,\n  \"gamestop</w>\": 39436,\n  \"gametime</w>\": 45899,\n  \"gami</w>\": 42025,\n  \"gamification</w>\": 48908,\n  \"gaming\": 28803,\n  \"gaming</w>\": 4017,\n  \"gamma</w>\": 22180,\n  \"gamo</w>\": 39325,\n  \"gan\": 1822,\n  \"gan</w>\": 1670,\n  \"gand\": 8399,\n  \"ganda</w>\": 27261,\n  \"gander</w>\": 44508,\n  \"gandhi</w>\": 12322,\n  \"ganesh</w>\": 30362,\n  \"ganesha</w>\": 45185,\n  \"gang\": 8066,\n  \"gang</w>\": 5674,\n  \"ganga</w>\": 36275,\n  \"gangnam</w>\": 46777,\n  \"gangs</w>\": 29844,\n  \"gangsta</w>\": 37365,\n  \"gangster</w>\": 26514,\n  \"gani</w>\": 48324,\n  \"gann</w>\": 45665,\n  \"gannon</w>\": 45837,\n  \"gano</w>\": 25304,\n  \"gao</w>\": 26556,\n  \"gaon</w>\": 19279,\n  \"gap\": 29906,\n  \"gap</w>\": 7609,\n  \"gaps</w>\": 25296,\n  \"gar\": 1099,\n  \"gar</w>\": 5824,\n  \"gara</w>\": 28710,\n  \"garage</w>\": 8474,\n  \"garbage</w>\": 13760,\n  \"garci\": 44658,\n  \"garcia</w>\": 10529,\n  \"gard\": 7751,\n  \"gard</w>\": 21003,\n  \"garda</w>\": 31906,\n  \"garde</w>\": 22649,\n  \"garden\": 4674,\n  \"garden</w>\": 2756,\n  \"gardenchat</w>\": 46292,\n  \"gardener</w>\": 28554,\n  \"gardeners</w>\": 38205,\n  \"gardening</w>\": 10483,\n  \"gardens</w>\": 6152,\n  \"gardiner</w>\": 43121,\n  \"gardner</w>\": 18710,\n  \"gare\": 5633,\n  \"gare</w>\": 48402,\n  \"gareth\": 37140,\n  \"gareth</w>\": 18175,\n  \"garfield</w>\": 26728,\n  \"garh</w>\": 16762,\n  \"gari\": 40898,\n  \"gari</w>\": 43080,\n  \"garis</w>\": 37839,\n  \"garland</w>\": 23418,\n  \"garlic</w>\": 9685,\n  \"garment</w>\": 31418,\n  \"garments</w>\": 43341,\n  \"garmin</w>\": 39885,\n  \"garner</w>\": 20340,\n  \"garnet</w>\": 37669,\n  \"garo</w>\": 30388,\n  \"garrett</w>\": 15881,\n  \"garri\": 21764,\n  \"garrison</w>\": 30108,\n  \"garros</w>\": 40425,\n  \"garry</w>\": 24398,\n  \"gars</w>\": 12055,\n  \"gart\": 18380,\n  \"gart</w>\": 18751,\n  \"garten</w>\": 14684,\n  \"garter</w>\": 48420,\n  \"garth\": 45398,\n  \"garth</w>\": 24469,\n  \"gartner\": 43334,\n  \"gartner</w>\": 29678,\n  \"garty</w>\": 46383,\n  \"garu</w>\": 31140,\n  \"garvey</w>\": 39511,\n  \"garwal</w>\": 38623,\n  \"gary\": 10535,\n  \"gary</w>\": 4516,\n  \"garza</w>\": 49393,\n  \"gas\": 5047,\n  \"gas</w>\": 2474,\n  \"gases</w>\": 36971,\n  \"gasoline</w>\": 27691,\n  \"gasp</w>\": 43762,\n  \"gaston</w>\": 40669,\n  \"gastri\": 49197,\n  \"gastro\": 23740,\n  \"gastron\": 30699,\n  \"gastronomy</w>\": 46987,\n  \"gat\": 5314,\n  \"gat</w>\": 18941,\n  \"gata</w>\": 44575,\n  \"gate\": 8071,\n  \"gate</w>\": 3302,\n  \"gated</w>\": 23997,\n  \"gates</w>\": 9472,\n  \"gateshead</w>\": 40051,\n  \"gateway\": 45221,\n  \"gateway</w>\": 14943,\n  \"gather\": 36345,\n  \"gather</w>\": 12602,\n  \"gathered</w>\": 14646,\n  \"gathering</w>\": 9197,\n  \"gatherings</w>\": 48096,\n  \"gathers</w>\": 39250,\n  \"gating</w>\": 27561,\n  \"gation</w>\": 11095,\n  \"gations</w>\": 33906,\n  \"gato</w>\": 44492,\n  \"gator\": 20216,\n  \"gator</w>\": 16390,\n  \"gatorade</w>\": 36354,\n  \"gators</w>\": 17173,\n  \"gatory</w>\": 24796,\n  \"gatsby</w>\": 32586,\n  \"gatwick</w>\": 37122,\n  \"gau\": 5919,\n  \"gau</w>\": 43068,\n  \"gauge</w>\": 18728,\n  \"gaunt\": 31862,\n  \"gauntlet</w>\": 37163,\n  \"gautam\": 45853,\n  \"gautam</w>\": 31356,\n  \"gauteng</w>\": 40333,\n  \"gav\": 8966,\n  \"gave</w>\": 3485,\n  \"gavin\": 32974,\n  \"gavin</w>\": 16389,\n  \"gaw\": 15405,\n  \"gawd</w>\": 43239,\n  \"gawx</w>\": 43420,\n  \"gay\": 7460,\n  \"gay</w>\": 5627,\n  \"gaya</w>\": 39477,\n  \"gaye</w>\": 41401,\n  \"gayle</w>\": 29998,\n  \"gayo</w>\": 36768,\n  \"gays</w>\": 28001,\n  \"gaz\": 4837,\n  \"gaz</w>\": 36475,\n  \"gaza\": 38391,\n  \"gaza</w>\": 10112,\n  \"gazaunderattack</w>\": 42458,\n  \"gaze</w>\": 23212,\n  \"gazette</w>\": 20443,\n  \"gazing</w>\": 28373,\n  \"gb\": 8727,\n  \"gb</w>\": 4619,\n  \"gba</w>\": 18528,\n  \"gbbo</w>\": 34474,\n  \"gbc</w>\": 42993,\n  \"gbp</w>\": 27391,\n  \"gbr</w>\": 31984,\n  \"gby</w>\": 40509,\n  \"gc\": 8577,\n  \"gc</w>\": 6043,\n  \"gcc</w>\": 26804,\n  \"gcse</w>\": 28763,\n  \"gcu</w>\": 34137,\n  \"gd\": 13264,\n  \"gd</w>\": 14604,\n  \"gdc</w>\": 32793,\n  \"gden</w>\": 44928,\n  \"gdp</w>\": 17100,\n  \"gdpr</w>\": 22963,\n  \"ge\": 619,\n  \"ge</w>\": 710,\n  \"gea</w>\": 26790,\n  \"gear\": 15532,\n  \"gear</w>\": 4802,\n  \"gearbox</w>\": 42454,\n  \"geared</w>\": 33903,\n  \"gearing</w>\": 19027,\n  \"gears</w>\": 21147,\n  \"geaux\": 36313,\n  \"gecko</w>\": 38616,\n  \"ged\": 17252,\n  \"ged</w>\": 3480,\n  \"geddon</w>\": 31720,\n  \"gedly</w>\": 13991,\n  \"gee\": 9806,\n  \"gee</w>\": 9071,\n  \"geek\": 17920,\n  \"geek</w>\": 7135,\n  \"geeks</w>\": 20110,\n  \"geeky</w>\": 47332,\n  \"geel\": 25906,\n  \"geelong</w>\": 34555,\n  \"gees</w>\": 38088,\n  \"geese</w>\": 26413,\n  \"geez</w>\": 42394,\n  \"geh\": 30320,\n  \"geist</w>\": 38290,\n  \"gel\": 7343,\n  \"gel</w>\": 5697,\n  \"gelato</w>\": 29577,\n  \"gels</w>\": 42552,\n  \"gely</w>\": 14637,\n  \"gem\": 14261,\n  \"gem</w>\": 7613,\n  \"gement</w>\": 19495,\n  \"gemini</w>\": 23086,\n  \"gemma</w>\": 23952,\n  \"gems</w>\": 14355,\n  \"gemstone</w>\": 27747,\n  \"gemstones</w>\": 43972,\n  \"gen\": 1024,\n  \"gen</w>\": 3278,\n  \"gence</w>\": 16088,\n  \"gency</w>\": 5245,\n  \"gend\": 33247,\n  \"gender\": 22976,\n  \"gender</w>\": 5906,\n  \"gendere\": 35824,\n  \"genderequality</w>\": 43338,\n  \"gene\": 5822,\n  \"gene</w>\": 7962,\n  \"genealo\": 24142,\n  \"genealogy</w>\": 29381,\n  \"gener\": 1832,\n  \"general\": 20576,\n  \"general</w>\": 3658,\n  \"generally</w>\": 19256,\n  \"generals</w>\": 30296,\n  \"generate</w>\": 16896,\n  \"generated</w>\": 19450,\n  \"generates</w>\": 33938,\n  \"generating</w>\": 23882,\n  \"generation\": 41211,\n  \"generation</w>\": 4883,\n  \"generational</w>\": 34506,\n  \"generations</w>\": 12247,\n  \"generative</w>\": 29472,\n  \"generator</w>\": 19399,\n  \"generators</w>\": 41917,\n  \"generic</w>\": 26978,\n  \"generosity</w>\": 23015,\n  \"generous</w>\": 12570,\n  \"generously</w>\": 35113,\n  \"genes</w>\": 19683,\n  \"genesis</w>\": 13518,\n  \"genetic\": 47746,\n  \"genetic</w>\": 13578,\n  \"genetically</w>\": 36745,\n  \"genetics</w>\": 18276,\n  \"geneva</w>\": 14799,\n  \"genevie\": 41633,\n  \"genevieve</w>\": 46584,\n  \"geni\": 22334,\n  \"genic</w>\": 15750,\n  \"genie</w>\": 24221,\n  \"genital</w>\": 32960,\n  \"genius</w>\": 8235,\n  \"geniuses</w>\": 41406,\n  \"geno\": 41544,\n  \"geno</w>\": 46776,\n  \"genoa</w>\": 43993,\n  \"genoci\": 14687,\n  \"genocide</w>\": 15903,\n  \"genome</w>\": 23991,\n  \"genomic</w>\": 44371,\n  \"genomics</w>\": 26227,\n  \"genre</w>\": 14249,\n  \"genres</w>\": 30340,\n  \"gens</w>\": 17449,\n  \"gent\": 3685,\n  \"gent</w>\": 7139,\n  \"gente</w>\": 34325,\n  \"gentle\": 7262,\n  \"gentle</w>\": 13577,\n  \"gentleman</w>\": 13293,\n  \"gentlemen</w>\": 11692,\n  \"gently</w>\": 17187,\n  \"gento</w>\": 28320,\n  \"gentri\": 41148,\n  \"gentry</w>\": 47225,\n  \"gents</w>\": 18862,\n  \"genu\": 9182,\n  \"genuine</w>\": 12184,\n  \"genuinely</w>\": 20006,\n  \"genus</w>\": 38161,\n  \"geny</w>\": 35323,\n  \"geo\": 5038,\n  \"geo</w>\": 11604,\n  \"geocaching</w>\": 47908,\n  \"geof\": 20629,\n  \"geoff\": 33697,\n  \"geoff</w>\": 20386,\n  \"geoffrey</w>\": 29520,\n  \"geograph\": 45920,\n  \"geographic</w>\": 22635,\n  \"geographical</w>\": 39380,\n  \"geography</w>\": 17101,\n  \"geological</w>\": 38380,\n  \"geology</w>\": 21578,\n  \"geom\": 46135,\n  \"geome\": 12958,\n  \"geometric</w>\": 22419,\n  \"geometry</w>\": 21731,\n  \"geon\": 20844,\n  \"geon</w>\": 7295,\n  \"geons</w>\": 15914,\n  \"geopol\": 39758,\n  \"geor\": 2549,\n  \"georg</w>\": 43126,\n  \"george\": 8377,\n  \"george</w>\": 3296,\n  \"georges</w>\": 25042,\n  \"georgetown</w>\": 22970,\n  \"georgie</w>\": 42115,\n  \"georgina</w>\": 43892,\n  \"geospatial</w>\": 46238,\n  \"geothermal</w>\": 38413,\n  \"geous</w>\": 3068,\n  \"ger\": 1291,\n  \"ger</w>\": 1502,\n  \"gera</w>\": 48867,\n  \"gerald\": 29901,\n  \"gerald</w>\": 13269,\n  \"gerard\": 35979,\n  \"gerard</w>\": 20826,\n  \"gerber</w>\": 45058,\n  \"gered</w>\": 40179,\n  \"geri\": 41664,\n  \"geri</w>\": 46214,\n  \"gering</w>\": 24077,\n  \"germain</w>\": 38786,\n  \"german\": 14972,\n  \"german</w>\": 4710,\n  \"germans</w>\": 28400,\n  \"germany</w>\": 4464,\n  \"germin\": 44721,\n  \"germs</w>\": 47731,\n  \"geronimo</w>\": 45171,\n  \"gerrard</w>\": 26538,\n  \"gerry\": 29825,\n  \"gerry</w>\": 23026,\n  \"gers</w>\": 3314,\n  \"gertrude</w>\": 46950,\n  \"gervais</w>\": 36527,\n  \"gery</w>\": 32845,\n  \"ges</w>\": 3316,\n  \"gest\": 11843,\n  \"gest</w>\": 2033,\n  \"gesture</w>\": 21780,\n  \"gestures</w>\": 43524,\n  \"get\": 5670,\n  \"get</w>\": 779,\n  \"geta\": 13155,\n  \"getaway</w>\": 16131,\n  \"gether</w>\": 27224,\n  \"getic</w>\": 20661,\n  \"getin\": 25822,\n  \"getit\": 44891,\n  \"getit</w>\": 48315,\n  \"getoutside</w>\": 35644,\n  \"gets\": 39448,\n  \"gets</w>\": 2127,\n  \"gett\": 6647,\n  \"gett</w>\": 27965,\n  \"gettable</w>\": 15620,\n  \"gette</w>\": 29800,\n  \"gettin</w>\": 13428,\n  \"getting\": 30885,\n  \"getting</w>\": 1500,\n  \"getty\": 31185,\n  \"getty</w>\": 13965,\n  \"gettys\": 35189,\n  \"gettysburg</w>\": 37062,\n  \"getyour\": 42159,\n  \"gey</w>\": 29289,\n  \"gf\": 28953,\n  \"gf</w>\": 10846,\n  \"gfriend</w>\": 35245,\n  \"gfs</w>\": 37553,\n  \"gg\": 1129,\n  \"gg</w>\": 3286,\n  \"gga</w>\": 26003,\n  \"ggan</w>\": 25626,\n  \"gge\": 21521,\n  \"gge</w>\": 31659,\n  \"gged</w>\": 6095,\n  \"gger\": 12367,\n  \"gger</w>\": 3493,\n  \"ggers</w>\": 7480,\n  \"ggg</w>\": 20143,\n  \"gggg</w>\": 33513,\n  \"ggi</w>\": 21662,\n  \"ggin</w>\": 17160,\n  \"gging</w>\": 4966,\n  \"ggins</w>\": 12444,\n  \"ggle\": 34981,\n  \"ggle</w>\": 11430,\n  \"ggled</w>\": 46328,\n  \"ggles</w>\": 14703,\n  \"ggling</w>\": 16523,\n  \"ggly</w>\": 39407,\n  \"ggs</w>\": 4797,\n  \"ggy\": 24935,\n  \"ggy</w>\": 6476,\n  \"gh\": 583,\n  \"gh</w>\": 790,\n  \"gha\": 10010,\n  \"gha</w>\": 25183,\n  \"gham\": 21456,\n  \"ghan\": 18945,\n  \"ghan</w>\": 6624,\n  \"ghana\": 30330,\n  \"ghana</w>\": 9731,\n  \"ghanaian</w>\": 34223,\n  \"ghani</w>\": 36699,\n  \"ghar\": 37334,\n  \"ghar</w>\": 36973,\n  \"ghat</w>\": 43989,\n  \"ghaz\": 37493,\n  \"ghc</w>\": 42139,\n  \"ghe\": 10754,\n  \"ghe</w>\": 28561,\n  \"ghead</w>\": 40783,\n  \"ghee</w>\": 34794,\n  \"gher\": 21542,\n  \"gher</w>\": 14796,\n  \"ghet\": 18447,\n  \"ghetti</w>\": 17485,\n  \"ghetto</w>\": 22403,\n  \"ghi\": 22436,\n  \"ghi</w>\": 22279,\n  \"ghibli</w>\": 40555,\n  \"ghj\": 38439,\n  \"ghlin</w>\": 24131,\n  \"gho\": 4307,\n  \"ghorn</w>\": 38094,\n  \"ghosh</w>\": 43279,\n  \"ghoshal</w>\": 49134,\n  \"ghost\": 11417,\n  \"ghost</w>\": 7108,\n  \"ghostbusters</w>\": 25462,\n  \"ghostly</w>\": 44901,\n  \"ghosts</w>\": 16737,\n  \"ghou\": 35843,\n  \"ghoul</w>\": 45302,\n  \"ghouse</w>\": 38238,\n  \"ghs</w>\": 14157,\n  \"ght\": 1413,\n  \"ght</w>\": 630,\n  \"ghted</w>\": 4963,\n  \"ghter</w>\": 2427,\n  \"ghters</w>\": 12994,\n  \"ghtful</w>\": 8334,\n  \"ghting</w>\": 3019,\n  \"ghtly</w>\": 6993,\n  \"ghtning</w>\": 39740,\n  \"ghton</w>\": 16353,\n  \"ghts</w>\": 1259,\n  \"ghty\": 20968,\n  \"ghty</w>\": 5866,\n  \"ghu\": 25808,\n  \"ghue</w>\": 45675,\n  \"ghyun</w>\": 25010,\n  \"ghz</w>\": 24325,\n  \"gi\": 707,\n  \"gi</w>\": 4478,\n  \"gia</w>\": 8864,\n  \"giac\": 35444,\n  \"giam\": 39623,\n  \"gian\": 17274,\n  \"gian</w>\": 12866,\n  \"gianni</w>\": 46752,\n  \"giant\": 23668,\n  \"giant</w>\": 4687,\n  \"giants</w>\": 7076,\n  \"giar\": 34241,\n  \"gib\": 9816,\n  \"gibb\": 18964,\n  \"gibbons</w>\": 31974,\n  \"gibbs</w>\": 26488,\n  \"gibility</w>\": 33297,\n  \"gible</w>\": 13159,\n  \"gibr\": 20206,\n  \"gibraltar</w>\": 23988,\n  \"gibson\": 37420,\n  \"gibson</w>\": 12178,\n  \"gic\": 27900,\n  \"gic</w>\": 2570,\n  \"gical</w>\": 32973,\n  \"gically</w>\": 26320,\n  \"gid\": 36774,\n  \"gid</w>\": 21413,\n  \"giddy</w>\": 40894,\n  \"gideon</w>\": 43867,\n  \"gidi</w>\": 30603,\n  \"gie\": 11459,\n  \"gie</w>\": 3991,\n  \"gier</w>\": 28974,\n  \"gies</w>\": 5505,\n  \"gif\": 11363,\n  \"gif</w>\": 11677,\n  \"gifford</w>\": 47850,\n  \"gifs</w>\": 37643,\n  \"gift\": 20569,\n  \"gift</w>\": 2733,\n  \"gifted</w>\": 15110,\n  \"giftide\": 20152,\n  \"giftideas</w>\": 23487,\n  \"gifting</w>\": 39546,\n  \"gifts</w>\": 5836,\n  \"gig\": 26981,\n  \"gig</w>\": 7471,\n  \"gigab\": 34530,\n  \"gigan\": 24104,\n  \"gigantic</w>\": 31507,\n  \"giggle</w>\": 36426,\n  \"giggles</w>\": 42731,\n  \"giggs</w>\": 44692,\n  \"gigi\": 44106,\n  \"gigi</w>\": 26171,\n  \"gigs</w>\": 20316,\n  \"gil\": 3997,\n  \"gil</w>\": 10088,\n  \"gila</w>\": 46952,\n  \"gilbert</w>\": 14154,\n  \"gilded</w>\": 44341,\n  \"giles</w>\": 24802,\n  \"gill\": 14280,\n  \"gill</w>\": 12003,\n  \"gille\": 29610,\n  \"gilles</w>\": 39590,\n  \"gillespie</w>\": 36242,\n  \"gillette</w>\": 38603,\n  \"gilli\": 13695,\n  \"gillian</w>\": 28753,\n  \"gills</w>\": 48851,\n  \"gilmore</w>\": 27603,\n  \"gilt</w>\": 44378,\n  \"gim\": 31284,\n  \"gimm\": 40692,\n  \"gimme</w>\": 21525,\n  \"gin\": 3374,\n  \"gin</w>\": 4941,\n  \"gina</w>\": 15604,\n  \"gine\": 27482,\n  \"ging\": 10829,\n  \"ging</w>\": 3905,\n  \"ginger\": 16287,\n  \"ginger</w>\": 9718,\n  \"gingerbread</w>\": 23692,\n  \"gini</w>\": 35768,\n  \"gino</w>\": 36521,\n  \"gins</w>\": 18328,\n  \"gio\": 16329,\n  \"gio</w>\": 8050,\n  \"gion</w>\": 41226,\n  \"gior\": 14920,\n  \"giorgio</w>\": 33271,\n  \"giorno</w>\": 33310,\n  \"gios</w>\": 41927,\n  \"gious</w>\": 14419,\n  \"giov\": 21404,\n  \"giovanni</w>\": 26574,\n  \"gipp\": 41351,\n  \"gir\": 1077,\n  \"gir</w>\": 25481,\n  \"gira\": 16949,\n  \"giraffe</w>\": 22826,\n  \"giri</w>\": 31709,\n  \"girl\": 3914,\n  \"girl</w>\": 1611,\n  \"girlfriend</w>\": 8217,\n  \"girlfriends</w>\": 30736,\n  \"girlpower</w>\": 37433,\n  \"girls\": 15480,\n  \"girls</w>\": 1917,\n  \"girly</w>\": 29605,\n  \"giro\": 39664,\n  \"giro</w>\": 26454,\n  \"girona</w>\": 47842,\n  \"giroud</w>\": 41177,\n  \"gis\": 16266,\n  \"gis</w>\": 12773,\n  \"gist</w>\": 21241,\n  \"git\": 16060,\n  \"git</w>\": 20918,\n  \"gita</w>\": 40838,\n  \"github</w>\": 31196,\n  \"giu\": 17931,\n  \"giuli\": 29762,\n  \"giuliani</w>\": 47739,\n  \"giuse\": 29385,\n  \"giuseppe</w>\": 33563,\n  \"give\": 4120,\n  \"give</w>\": 1781,\n  \"giveaway</w>\": 5310,\n  \"giveaways</w>\": 18974,\n  \"giveback</w>\": 41385,\n  \"given\": 33323,\n  \"given</w>\": 4302,\n  \"givenchy</w>\": 38245,\n  \"giver</w>\": 43339,\n  \"gives</w>\": 3926,\n  \"giveup</w>\": 35485,\n  \"giving\": 14673,\n  \"giving</w>\": 2339,\n  \"givingback</w>\": 49300,\n  \"givingtuesday</w>\": 23556,\n  \"giz\": 29237,\n  \"gk\": 38953,\n  \"gk</w>\": 18719,\n  \"gl\": 1849,\n  \"gl</w>\": 14751,\n  \"gla\": 1523,\n  \"gla</w>\": 36904,\n  \"glaci\": 14924,\n  \"glacial</w>\": 40782,\n  \"glacier</w>\": 19282,\n  \"glaciers</w>\": 42528,\n  \"glad\": 20841,\n  \"glad</w>\": 4761,\n  \"glades</w>\": 37432,\n  \"gladi\": 21742,\n  \"gladiator</w>\": 38477,\n  \"gladiators</w>\": 41087,\n  \"gladly</w>\": 41598,\n  \"gladys</w>\": 43168,\n  \"glam\": 8738,\n  \"glam</w>\": 16905,\n  \"glamorous</w>\": 22896,\n  \"glamour\": 42876,\n  \"glamour</w>\": 17499,\n  \"glamping</w>\": 46167,\n  \"glan\": 40482,\n  \"glan</w>\": 45844,\n  \"glance</w>\": 26557,\n  \"gland</w>\": 41441,\n  \"glar\": 48535,\n  \"glar</w>\": 41702,\n  \"glare</w>\": 46035,\n  \"glas\": 29935,\n  \"glas</w>\": 43654,\n  \"glasgo\": 6757,\n  \"glasgow\": 29990,\n  \"glasgow</w>\": 7363,\n  \"glass\": 16305,\n  \"glass</w>\": 3313,\n  \"glasses</w>\": 6116,\n  \"glaston\": 26848,\n  \"glastonbury</w>\": 28233,\n  \"glau\": 39171,\n  \"glaze</w>\": 28112,\n  \"glazed</w>\": 24122,\n  \"gle\": 7166,\n  \"gle</w>\": 2865,\n  \"glee\": 32379,\n  \"glee</w>\": 21614,\n  \"glen\": 6158,\n  \"glen</w>\": 11049,\n  \"glend\": 38332,\n  \"glendale</w>\": 33043,\n  \"glenn\": 32004,\n  \"glenn</w>\": 12861,\n  \"gler</w>\": 34649,\n  \"gley</w>\": 21998,\n  \"gli\": 5896,\n  \"gli</w>\": 28791,\n  \"glia</w>\": 22217,\n  \"glide</w>\": 37321,\n  \"glider</w>\": 41636,\n  \"glimp\": 12888,\n  \"glimpse</w>\": 13817,\n  \"glio</w>\": 29785,\n  \"glit\": 21079,\n  \"glitch</w>\": 29563,\n  \"glitter</w>\": 16528,\n  \"glitz</w>\": 44542,\n  \"glo\": 1721,\n  \"glo</w>\": 30474,\n  \"glob\": 13363,\n  \"global\": 6707,\n  \"global</w>\": 2779,\n  \"globalgoals</w>\": 33211,\n  \"globalhealth</w>\": 46751,\n  \"globalization</w>\": 47680,\n  \"globally</w>\": 17775,\n  \"globalwarming</w>\": 46017,\n  \"globe\": 19436,\n  \"globe</w>\": 9368,\n  \"globes</w>\": 38085,\n  \"glock</w>\": 38818,\n  \"glomer\": 43689,\n  \"gloom</w>\": 48594,\n  \"gloomy</w>\": 32199,\n  \"glori\": 7270,\n  \"gloria</w>\": 19244,\n  \"glorious</w>\": 9171,\n  \"glory\": 36107,\n  \"glory</w>\": 7285,\n  \"glos</w>\": 40633,\n  \"gloss\": 38258,\n  \"gloss</w>\": 22014,\n  \"glossy</w>\": 29802,\n  \"glou\": 15989,\n  \"gloucester\": 28133,\n  \"gloucester</w>\": 23835,\n  \"gloucestershire</w>\": 33789,\n  \"glove</w>\": 16078,\n  \"glover</w>\": 21594,\n  \"gloves</w>\": 12363,\n  \"glow\": 30472,\n  \"glow</w>\": 10111,\n  \"glowing</w>\": 18437,\n  \"glows</w>\": 48107,\n  \"glu\": 5952,\n  \"glu</w>\": 32281,\n  \"glucose</w>\": 34642,\n  \"glue</w>\": 22103,\n  \"glued</w>\": 38135,\n  \"gluten\": 15482,\n  \"gluten</w>\": 15524,\n  \"glutenfree</w>\": 16138,\n  \"gly\": 13027,\n  \"glycer\": 48914,\n  \"gm\": 18743,\n  \"gm</w>\": 5918,\n  \"gma</w>\": 18155,\n  \"gmail</w>\": 11119,\n  \"gman\": 41043,\n  \"gman</w>\": 36936,\n  \"gmb\": 35934,\n  \"gmb</w>\": 31799,\n  \"gmbh</w>\": 46877,\n  \"gmc</w>\": 27257,\n  \"gmo</w>\": 23486,\n  \"gms</w>\": 36987,\n  \"gmt</w>\": 13803,\n  \"gn\": 2455,\n  \"gn</w>\": 9831,\n  \"gna</w>\": 23009,\n  \"gnation</w>\": 45912,\n  \"gne</w>\": 25407,\n  \"gni\": 5104,\n  \"gnment</w>\": 25110,\n  \"gno\": 23376,\n  \"gno</w>\": 43686,\n  \"gnocchi</w>\": 48299,\n  \"gnome</w>\": 33643,\n  \"gnon</w>\": 20561,\n  \"go\": 650,\n  \"go</w>\": 861,\n  \"goa</w>\": 14399,\n  \"goal\": 9003,\n  \"goal</w>\": 3321,\n  \"goalie</w>\": 20723,\n  \"goalkeeper</w>\": 16601,\n  \"goals</w>\": 3295,\n  \"goalscorer</w>\": 43547,\n  \"goaltender</w>\": 44151,\n  \"goat\": 34082,\n  \"goat</w>\": 9530,\n  \"goats</w>\": 18393,\n  \"gob\": 29559,\n  \"gobeavs</w>\": 48285,\n  \"goblin</w>\": 26223,\n  \"goblue</w>\": 25232,\n  \"gobucks</w>\": 29175,\n  \"gocougs</w>\": 34202,\n  \"god\": 4190,\n  \"god</w>\": 1731,\n  \"godawgs</w>\": 40436,\n  \"godbless\": 46616,\n  \"godbless</w>\": 44007,\n  \"godd\": 16589,\n  \"goddamn</w>\": 28495,\n  \"goddard</w>\": 37827,\n  \"goddess</w>\": 10808,\n  \"godfather</w>\": 26222,\n  \"godfrey</w>\": 40148,\n  \"godis\": 38521,\n  \"godly</w>\": 42438,\n  \"gods\": 33620,\n  \"gods</w>\": 10328,\n  \"goducks</w>\": 35889,\n  \"godzilla</w>\": 23369,\n  \"goe\": 22084,\n  \"goers</w>\": 27784,\n  \"goes\": 43581,\n  \"goes</w>\": 2635,\n  \"gof\": 17537,\n  \"goff</w>\": 34399,\n  \"goftheday</w>\": 39360,\n  \"gofund\": 34445,\n  \"gofundme</w>\": 34686,\n  \"gog</w>\": 42949,\n  \"goggles</w>\": 31027,\n  \"gogh</w>\": 19697,\n  \"gogo</w>\": 22688,\n  \"gogreen</w>\": 36279,\n  \"gohawks</w>\": 34884,\n  \"goi</w>\": 24917,\n  \"goin</w>\": 13939,\n  \"going\": 25787,\n  \"going</w>\": 1245,\n  \"goku</w>\": 29550,\n  \"gol\": 1537,\n  \"gol</w>\": 18257,\n  \"gola</w>\": 41090,\n  \"gold\": 4999,\n  \"gold</w>\": 2209,\n  \"goldberg</w>\": 25161,\n  \"goldcoast</w>\": 34634,\n  \"golden\": 10763,\n  \"golden</w>\": 3878,\n  \"goldeng\": 20650,\n  \"goldenglobes</w>\": 26842,\n  \"goldfish</w>\": 40293,\n  \"goldie</w>\": 42805,\n  \"goldman</w>\": 27164,\n  \"golds\": 30526,\n  \"golds</w>\": 40283,\n  \"goldsmith</w>\": 40214,\n  \"gole\": 41297,\n  \"golf\": 9096,\n  \"golf</w>\": 3096,\n  \"golfclub</w>\": 45742,\n  \"golfer</w>\": 24579,\n  \"golfers</w>\": 28441,\n  \"golfing</w>\": 31379,\n  \"goli\": 29265,\n  \"goliath</w>\": 41602,\n  \"gom\": 7051,\n  \"goma</w>\": 46198,\n  \"gomes</w>\": 39128,\n  \"gomez</w>\": 16433,\n  \"gon\": 1854,\n  \"gon</w>\": 3379,\n  \"gona</w>\": 34835,\n  \"gone\": 35135,\n  \"gone</w>\": 3601,\n  \"gong</w>\": 28486,\n  \"gonna</w>\": 2562,\n  \"gonz\": 10587,\n  \"gonzaga</w>\": 36241,\n  \"gonzale\": 17512,\n  \"gonzales</w>\": 31265,\n  \"gonzalez</w>\": 18198,\n  \"goo\": 1381,\n  \"goo</w>\": 17882,\n  \"good\": 2185,\n  \"good</w>\": 886,\n  \"goodbye</w>\": 6968,\n  \"goodday\": 46284,\n  \"goode</w>\": 42076,\n  \"goodfood</w>\": 46844,\n  \"goodfriday</w>\": 40360,\n  \"goodie</w>\": 29213,\n  \"goodies</w>\": 13308,\n  \"goodluck</w>\": 19718,\n  \"goodman</w>\": 24146,\n  \"goodmorning</w>\": 14421,\n  \"goodness</w>\": 10531,\n  \"goodnight</w>\": 8540,\n  \"goodreads</w>\": 31629,\n  \"goods</w>\": 9340,\n  \"goodtimes</w>\": 22570,\n  \"goodvibes</w>\": 43146,\n  \"goodwill</w>\": 24902,\n  \"goodwin</w>\": 28080,\n  \"goodwood</w>\": 30008,\n  \"goody</w>\": 35937,\n  \"goodyear</w>\": 42858,\n  \"goofy</w>\": 26879,\n  \"goog\": 18581,\n  \"google\": 12195,\n  \"google</w>\": 3460,\n  \"googled</w>\": 40345,\n  \"googleplay</w>\": 37309,\n  \"goon</w>\": 15267,\n  \"goons</w>\": 30440,\n  \"goooo\": 35876,\n  \"goooo</w>\": 48957,\n  \"goose\": 21445,\n  \"goose</w>\": 13822,\n  \"goosebumps</w>\": 32254,\n  \"gop\": 18942,\n  \"gop</w>\": 6250,\n  \"gopack\": 46995,\n  \"gopackgo</w>\": 47719,\n  \"gopal</w>\": 47268,\n  \"gopdebate</w>\": 39806,\n  \"gopher\": 47750,\n  \"gopher</w>\": 48905,\n  \"gophers</w>\": 31957,\n  \"gopro</w>\": 17511,\n  \"gor\": 1747,\n  \"gor</w>\": 29827,\n  \"gordo</w>\": 47707,\n  \"gordon\": 20485,\n  \"gordon</w>\": 8244,\n  \"gore\": 30311,\n  \"gore</w>\": 17872,\n  \"gorg</w>\": 46815,\n  \"gorge\": 35548,\n  \"gorge</w>\": 20038,\n  \"gorgeous</w>\": 3241,\n  \"gori\": 12461,\n  \"goria</w>\": 43359,\n  \"gorilla\": 37910,\n  \"gorilla</w>\": 21994,\n  \"gorman</w>\": 35741,\n  \"goro</w>\": 44977,\n  \"gory</w>\": 7160,\n  \"gos\": 20517,\n  \"gos</w>\": 5693,\n  \"gosh</w>\": 15395,\n  \"gosling</w>\": 35320,\n  \"gosp\": 9617,\n  \"gospel</w>\": 11313,\n  \"goss\": 39734,\n  \"goss</w>\": 36924,\n  \"gossi\": 15684,\n  \"gossip</w>\": 18963,\n  \"got\": 10125,\n  \"got</w>\": 1005,\n  \"gota</w>\": 36693,\n  \"gotcha</w>\": 43275,\n  \"gote</w>\": 49345,\n  \"goth\": 48465,\n  \"goth</w>\": 20437,\n  \"gotham\": 46123,\n  \"gotham</w>\": 18299,\n  \"gothic</w>\": 15426,\n  \"goti\": 9497,\n  \"goto\": 39715,\n  \"gots</w>\": 35215,\n  \"gott\": 5089,\n  \"gott</w>\": 36466,\n  \"gotta</w>\": 4633,\n  \"gotten</w>\": 5889,\n  \"gotti</w>\": 41881,\n  \"gotv</w>\": 36089,\n  \"gou\": 10520,\n  \"gou</w>\": 36555,\n  \"gouache</w>\": 43314,\n  \"goul\": 33187,\n  \"gould</w>\": 31087,\n  \"gour\": 13580,\n  \"gourmet</w>\": 19111,\n  \"gov\": 4022,\n  \"gov</w>\": 4564,\n  \"gove</w>\": 36997,\n  \"govegan</w>\": 38886,\n  \"gover\": 10471,\n  \"gover</w>\": 16759,\n  \"govern\": 2351,\n  \"govern</w>\": 32404,\n  \"governance</w>\": 13386,\n  \"governing</w>\": 30946,\n  \"government</w>\": 3149,\n  \"governmental</w>\": 42609,\n  \"governments</w>\": 19582,\n  \"governor\": 17459,\n  \"governor</w>\": 6630,\n  \"governors</w>\": 26881,\n  \"govin\": 42451,\n  \"govt</w>\": 5345,\n  \"govuk</w>\": 28830,\n  \"gow\": 21885,\n  \"gow</w>\": 33788,\n  \"gowan</w>\": 31307,\n  \"gower</w>\": 43448,\n  \"gown</w>\": 13719,\n  \"gowns</w>\": 38029,\n  \"goyal</w>\": 35105,\n  \"gp\": 19329,\n  \"gp</w>\": 5051,\n  \"gpa</w>\": 24098,\n  \"gps</w>\": 13639,\n  \"gpu</w>\": 38561,\n  \"gq\": 40286,\n  \"gq</w>\": 31324,\n  \"gr\": 709,\n  \"gr</w>\": 6062,\n  \"gra\": 782,\n  \"gra</w>\": 15276,\n  \"grab</w>\": 4646,\n  \"grabbed</w>\": 22856,\n  \"grabbing</w>\": 26440,\n  \"grabs</w>\": 17076,\n  \"grac\": 11323,\n  \"grace\": 13225,\n  \"grace</w>\": 5142,\n  \"graced</w>\": 31894,\n  \"graceful</w>\": 25242,\n  \"graces</w>\": 38629,\n  \"graci\": 11174,\n  \"gracias</w>\": 16463,\n  \"gracie</w>\": 23235,\n  \"gracing</w>\": 37263,\n  \"gracious</w>\": 29044,\n  \"grad\": 19869,\n  \"grad</w>\": 7291,\n  \"gradable</w>\": 41529,\n  \"grade\": 45435,\n  \"grade</w>\": 3394,\n  \"graded</w>\": 13823,\n  \"grader</w>\": 23930,\n  \"graders</w>\": 10930,\n  \"grades</w>\": 10838,\n  \"gradient</w>\": 36885,\n  \"grading</w>\": 19016,\n  \"grads</w>\": 17811,\n  \"gradu\": 3230,\n  \"gradual</w>\": 45210,\n  \"gradually</w>\": 32192,\n  \"graduate</w>\": 6675,\n  \"graduated</w>\": 15128,\n  \"graduates</w>\": 12236,\n  \"graduating</w>\": 14819,\n  \"graduation</w>\": 8060,\n  \"grady</w>\": 33980,\n  \"graeme</w>\": 30192,\n  \"graf\": 46478,\n  \"graf</w>\": 39765,\n  \"graff\": 10656,\n  \"graffiti</w>\": 11676,\n  \"graft</w>\": 32698,\n  \"grafton</w>\": 47347,\n  \"graham\": 19805,\n  \"graham</w>\": 7711,\n  \"grail</w>\": 37184,\n  \"grain\": 44003,\n  \"grain</w>\": 12109,\n  \"grains</w>\": 25791,\n  \"gral</w>\": 25631,\n  \"gram\": 2949,\n  \"gram</w>\": 2338,\n  \"grammar</w>\": 16077,\n  \"grammy</w>\": 15388,\n  \"grammys</w>\": 18121,\n  \"grams</w>\": 6294,\n  \"gran\": 3892,\n  \"gran</w>\": 14493,\n  \"granada</w>\": 31172,\n  \"grand\": 3058,\n  \"grand</w>\": 2991,\n  \"grandad</w>\": 29148,\n  \"grandchildren</w>\": 36856,\n  \"granddaughter</w>\": 29460,\n  \"grande\": 37514,\n  \"grande</w>\": 10757,\n  \"grandes</w>\": 36382,\n  \"grandfather</w>\": 15346,\n  \"grandma</w>\": 10525,\n  \"grandmother</w>\": 17469,\n  \"grandpa</w>\": 14582,\n  \"grandparents</w>\": 21311,\n  \"grandprix</w>\": 39358,\n  \"grandson</w>\": 20766,\n  \"grandstand</w>\": 43172,\n  \"grange\": 45027,\n  \"grange</w>\": 23850,\n  \"granger</w>\": 42968,\n  \"granite</w>\": 18813,\n  \"grann</w>\": 45585,\n  \"granny</w>\": 22710,\n  \"granola</w>\": 34271,\n  \"grant\": 18682,\n  \"grant</w>\": 5442,\n  \"granted</w>\": 14156,\n  \"granth\": 41283,\n  \"grants</w>\": 15123,\n  \"grape\": 19131,\n  \"grape</w>\": 15959,\n  \"grapefruit</w>\": 28347,\n  \"grapes</w>\": 18580,\n  \"grapevine</w>\": 47619,\n  \"graph\": 1349,\n  \"graph</w>\": 4407,\n  \"graphene</w>\": 38387,\n  \"grapher</w>\": 14987,\n  \"graphers</w>\": 32088,\n  \"graphic\": 15653,\n  \"graphic</w>\": 4245,\n  \"graphical</w>\": 20878,\n  \"graphicdesign</w>\": 21907,\n  \"graphics</w>\": 9492,\n  \"graphies</w>\": 40164,\n  \"graphite</w>\": 29447,\n  \"graphs</w>\": 24670,\n  \"graphy</w>\": 4897,\n  \"grapp\": 30843,\n  \"gras\": 31517,\n  \"gras</w>\": 17584,\n  \"grasp</w>\": 34975,\n  \"grass\": 11584,\n  \"grass</w>\": 5922,\n  \"grasses</w>\": 46807,\n  \"grasshopper</w>\": 48894,\n  \"grassi</w>\": 42294,\n  \"grasso</w>\": 34808,\n  \"grassroots</w>\": 21991,\n  \"grassy</w>\": 44140,\n  \"grat\": 9221,\n  \"grate\": 32463,\n  \"grateful\": 45659,\n  \"grateful</w>\": 5730,\n  \"grati\": 36402,\n  \"gratis</w>\": 33638,\n  \"gratitude</w>\": 12614,\n  \"grav\": 20663,\n  \"grave\": 16606,\n  \"grave</w>\": 9981,\n  \"gravel</w>\": 27054,\n  \"graves</w>\": 17665,\n  \"graveyard</w>\": 31176,\n  \"gravit\": 26150,\n  \"gravitational</w>\": 45268,\n  \"gravity\": 47426,\n  \"gravity</w>\": 15160,\n  \"gravy</w>\": 21225,\n  \"gray\": 12703,\n  \"gray</w>\": 7048,\n  \"grays</w>\": 46848,\n  \"grayson\": 45831,\n  \"grayson</w>\": 25471,\n  \"grazi\": 42427,\n  \"grazie</w>\": 38698,\n  \"grazing</w>\": 29889,\n  \"grc</w>\": 44069,\n  \"gre\": 689,\n  \"gre</w>\": 17878,\n  \"grease</w>\": 24132,\n  \"greasy</w>\": 44376,\n  \"great\": 3265,\n  \"great</w>\": 830,\n  \"greate\": 31930,\n  \"greater\": 32725,\n  \"greater</w>\": 7033,\n  \"greatest\": 39080,\n  \"greatest</w>\": 4153,\n  \"greatly</w>\": 13978,\n  \"greatness</w>\": 14189,\n  \"greats</w>\": 21855,\n  \"greaves</w>\": 42350,\n  \"greco</w>\": 39103,\n  \"gree\": 9987,\n  \"gree</w>\": 30774,\n  \"greece</w>\": 6965,\n  \"greed</w>\": 26147,\n  \"greedy</w>\": 33301,\n  \"greek\": 23844,\n  \"greek</w>\": 6842,\n  \"greeks</w>\": 35866,\n  \"green\": 2762,\n  \"green</w>\": 1901,\n  \"greenberg</w>\": 46662,\n  \"greene</w>\": 16383,\n  \"greener</w>\": 31169,\n  \"greenery</w>\": 42493,\n  \"greenfield</w>\": 39924,\n  \"greeng\": 42077,\n  \"greenhouse</w>\": 20819,\n  \"greening</w>\": 48673,\n  \"greenland</w>\": 27345,\n  \"greenpeace</w>\": 44755,\n  \"greens</w>\": 10235,\n  \"greensboro</w>\": 33436,\n  \"greenville</w>\": 25156,\n  \"greenway</w>\": 35205,\n  \"greenwich</w>\": 18658,\n  \"greenwood</w>\": 25782,\n  \"greer</w>\": 34345,\n  \"greet\": 11042,\n  \"greet</w>\": 11997,\n  \"greeted</w>\": 24546,\n  \"greeting</w>\": 17754,\n  \"greetings</w>\": 11569,\n  \"greets</w>\": 25464,\n  \"greg\": 6894,\n  \"greg</w>\": 7943,\n  \"gregation</w>\": 20131,\n  \"gregg\": 39422,\n  \"gregg</w>\": 22929,\n  \"gregor\": 33856,\n  \"gregor</w>\": 16177,\n  \"gregory</w>\": 16253,\n  \"gren\": 13941,\n  \"gren</w>\": 20119,\n  \"grenade</w>\": 33679,\n  \"grenfell</w>\": 42107,\n  \"gres</w>\": 39670,\n  \"gress</w>\": 2752,\n  \"gret\": 30041,\n  \"greta</w>\": 33443,\n  \"gretchen</w>\": 45516,\n  \"grette</w>\": 38774,\n  \"grew</w>\": 10451,\n  \"grey\": 9190,\n  \"grey</w>\": 5046,\n  \"greyhound</w>\": 27363,\n  \"greyhounds</w>\": 45718,\n  \"greys</w>\": 44311,\n  \"greysanatomy</w>\": 36833,\n  \"gri\": 2169,\n  \"gri</w>\": 18484,\n  \"grid\": 29067,\n  \"grid</w>\": 9882,\n  \"gridi\": 41063,\n  \"gridiron</w>\": 47786,\n  \"grids</w>\": 46500,\n  \"grief</w>\": 21058,\n  \"grier</w>\": 22016,\n  \"griev\": 36400,\n  \"grieving</w>\": 42383,\n  \"griez\": 47962,\n  \"griezmann</w>\": 48396,\n  \"griff\": 17855,\n  \"griff</w>\": 35551,\n  \"griffi\": 28676,\n  \"griffin\": 46612,\n  \"griffin</w>\": 13161,\n  \"griffith</w>\": 24375,\n  \"griffiths</w>\": 34182,\n  \"gril\": 49091,\n  \"grill\": 44083,\n  \"grill</w>\": 9519,\n  \"grille</w>\": 34748,\n  \"grilled</w>\": 10691,\n  \"grilling</w>\": 28324,\n  \"grills</w>\": 39464,\n  \"grim\": 20383,\n  \"grim</w>\": 23635,\n  \"grime</w>\": 37101,\n  \"grimes</w>\": 25057,\n  \"grimm</w>\": 27865,\n  \"grims\": 34861,\n  \"grimsby</w>\": 41513,\n  \"grin\": 11033,\n  \"grin</w>\": 28697,\n  \"grinch</w>\": 40527,\n  \"grind\": 25730,\n  \"grind</w>\": 11810,\n  \"grinder</w>\": 31733,\n  \"grinding</w>\": 21541,\n  \"gring</w>\": 40135,\n  \"grip</w>\": 15521,\n  \"gripping</w>\": 34567,\n  \"grips</w>\": 27819,\n  \"gris</w>\": 29150,\n  \"grit\": 22037,\n  \"grit</w>\": 22087,\n  \"grits</w>\": 44307,\n  \"gritty</w>\": 33704,\n  \"grizz\": 14877,\n  \"grizz</w>\": 44088,\n  \"grizzlies</w>\": 25594,\n  \"grizzly</w>\": 29676,\n  \"grl</w>\": 48005,\n  \"gro\": 1464,\n  \"gro</w>\": 12691,\n  \"grocer\": 11633,\n  \"groceries</w>\": 32409,\n  \"grocery</w>\": 13826,\n  \"grom</w>\": 45284,\n  \"gron\": 22345,\n  \"groningen</w>\": 45639,\n  \"groo\": 9015,\n  \"groom\": 39883,\n  \"groom</w>\": 22813,\n  \"grooming</w>\": 25575,\n  \"groot</w>\": 37708,\n  \"groove\": 39484,\n  \"groove</w>\": 17680,\n  \"grooves</w>\": 43954,\n  \"groovy</w>\": 30143,\n  \"gros\": 26834,\n  \"gros</w>\": 32639,\n  \"gross\": 31080,\n  \"gross</w>\": 11541,\n  \"grosven\": 46911,\n  \"grote\": 47207,\n  \"grotto</w>\": 45260,\n  \"grou\": 1582,\n  \"groun\": 45110,\n  \"ground\": 9558,\n  \"ground</w>\": 2461,\n  \"groundbreaking</w>\": 21006,\n  \"grounded</w>\": 27799,\n  \"grounds</w>\": 8454,\n  \"groundwater</w>\": 39457,\n  \"group\": 19045,\n  \"group</w>\": 1771,\n  \"groupe</w>\": 47654,\n  \"groups</w>\": 6776,\n  \"grouse</w>\": 36327,\n  \"grove\": 31756,\n  \"grove</w>\": 7463,\n  \"grover</w>\": 31345,\n  \"groves</w>\": 27306,\n  \"grow\": 3179,\n  \"grow</w>\": 4559,\n  \"grower</w>\": 44925,\n  \"growers</w>\": 25689,\n  \"growing\": 28429,\n  \"growing</w>\": 4425,\n  \"growingup\": 43433,\n  \"growler</w>\": 47096,\n  \"grown\": 41762,\n  \"grown</w>\": 7120,\n  \"grows</w>\": 13352,\n  \"growth\": 17925,\n  \"growth</w>\": 4026,\n  \"growthhacking</w>\": 25963,\n  \"grp</w>\": 27321,\n  \"grt</w>\": 28557,\n  \"gru\": 5957,\n  \"grub</w>\": 34019,\n  \"grue\": 42047,\n  \"gruesome</w>\": 47111,\n  \"grum\": 45454,\n  \"grump\": 49015,\n  \"grumpy</w>\": 23610,\n  \"grun\": 16203,\n  \"grunge</w>\": 33745,\n  \"gry\": 16140,\n  \"gry</w>\": 5364,\n  \"gs\": 25818,\n  \"gs</w>\": 1345,\n  \"gsa</w>\": 40433,\n  \"gsc</w>\": 47751,\n  \"gshore</w>\": 43392,\n  \"gsm</w>\": 32181,\n  \"gsp</w>\": 49173,\n  \"gst</w>\": 22239,\n  \"gt\": 16151,\n  \"gt</w>\": 4725,\n  \"gta\": 14826,\n  \"gta</w>\": 15338,\n  \"gtaonline</w>\": 27292,\n  \"gtav</w>\": 27283,\n  \"gti</w>\": 39954,\n  \"gto</w>\": 39071,\n  \"gtr</w>\": 33407,\n  \"gts</w>\": 37338,\n  \"gtx</w>\": 35230,\n  \"gu\": 700,\n  \"gu</w>\": 12916,\n  \"gua</w>\": 23751,\n  \"guacam\": 37477,\n  \"guacamole</w>\": 40115,\n  \"guad\": 22966,\n  \"guadal\": 46097,\n  \"guadalu\": 36994,\n  \"guadalupe</w>\": 38360,\n  \"guam</w>\": 37325,\n  \"guan\": 44191,\n  \"guan</w>\": 42406,\n  \"guang\": 27019,\n  \"guangzhou</w>\": 37857,\n  \"guar\": 4119,\n  \"guaran\": 9242,\n  \"guarantee</w>\": 17421,\n  \"guaranteed</w>\": 14731,\n  \"guarantees</w>\": 40154,\n  \"guard\": 30776,\n  \"guard</w>\": 4901,\n  \"guarded</w>\": 40602,\n  \"guardi\": 12008,\n  \"guardia</w>\": 43628,\n  \"guardian\": 23713,\n  \"guardian</w>\": 9498,\n  \"guardians</w>\": 21479,\n  \"guarding</w>\": 24966,\n  \"guardiola</w>\": 32100,\n  \"guards</w>\": 12810,\n  \"guatem\": 19423,\n  \"guatemala</w>\": 21670,\n  \"guay\": 48591,\n  \"guay</w>\": 24247,\n  \"gubernat\": 41400,\n  \"gubernatorial</w>\": 41618,\n  \"gucci</w>\": 16779,\n  \"gud\": 48061,\n  \"gud</w>\": 22378,\n  \"gue\": 2030,\n  \"gue</w>\": 2917,\n  \"gued</w>\": 38893,\n  \"guel\": 23146,\n  \"guelph</w>\": 27660,\n  \"guer\": 10391,\n  \"guern\": 29277,\n  \"guernsey</w>\": 33982,\n  \"guerra</w>\": 38215,\n  \"guerrero</w>\": 31967,\n  \"guerrilla</w>\": 36715,\n  \"gues\": 39971,\n  \"gues</w>\": 12601,\n  \"guess\": 35506,\n  \"guess</w>\": 3135,\n  \"guessed</w>\": 28005,\n  \"guesses</w>\": 30623,\n  \"guessing</w>\": 21891,\n  \"guest\": 27349,\n  \"guest</w>\": 3781,\n  \"guests</w>\": 6212,\n  \"guet</w>\": 36797,\n  \"guetta</w>\": 45904,\n  \"guez</w>\": 12313,\n  \"gug\": 31358,\n  \"guggen\": 35086,\n  \"guggenheim</w>\": 37135,\n  \"gui\": 2587,\n  \"gui</w>\": 25746,\n  \"guid\": 11437,\n  \"guidance</w>\": 12508,\n  \"guide\": 21845,\n  \"guide</w>\": 3555,\n  \"guided</w>\": 13194,\n  \"guidelines</w>\": 16591,\n  \"guides</w>\": 14375,\n  \"guiding</w>\": 22759,\n  \"guido</w>\": 41818,\n  \"guil\": 5008,\n  \"guild\": 19755,\n  \"guild</w>\": 16597,\n  \"guildford</w>\": 34450,\n  \"guildhall</w>\": 47224,\n  \"guillau\": 41123,\n  \"guillaume</w>\": 45394,\n  \"guiller\": 33660,\n  \"guillermo</w>\": 39524,\n  \"guilt</w>\": 26354,\n  \"guilty</w>\": 9761,\n  \"guin\": 13284,\n  \"guin</w>\": 47863,\n  \"guine\": 13759,\n  \"guinea</w>\": 18537,\n  \"guinness</w>\": 16648,\n  \"guire</w>\": 18209,\n  \"guise</w>\": 42024,\n  \"guit\": 3759,\n  \"guitar\": 21746,\n  \"guitar</w>\": 5084,\n  \"guitarist</w>\": 13035,\n  \"guitars</w>\": 15023,\n  \"guj\": 34935,\n  \"gujar\": 12698,\n  \"gujarat</w>\": 14714,\n  \"guk</w>\": 20280,\n  \"gul\": 5530,\n  \"gul</w>\": 21350,\n  \"gula</w>\": 27426,\n  \"gular</w>\": 34969,\n  \"gulf\": 22101,\n  \"gulf</w>\": 11279,\n  \"gull\": 48764,\n  \"gull</w>\": 28778,\n  \"gulls</w>\": 37501,\n  \"gully</w>\": 46112,\n  \"gum\": 22041,\n  \"gum</w>\": 11235,\n  \"gumb\": 40147,\n  \"gumbo</w>\": 47126,\n  \"gummy</w>\": 34276,\n  \"gums</w>\": 46609,\n  \"gun\": 2748,\n  \"gun</w>\": 3496,\n  \"guna</w>\": 43333,\n  \"gundam</w>\": 26087,\n  \"gundy</w>\": 21162,\n  \"gunman</w>\": 32743,\n  \"gunmen</w>\": 44738,\n  \"gunn</w>\": 27473,\n  \"gunna</w>\": 24002,\n  \"gunnar</w>\": 45301,\n  \"gunner</w>\": 35285,\n  \"gunners</w>\": 37788,\n  \"guns</w>\": 7591,\n  \"gunsense</w>\": 44781,\n  \"gunshot</w>\": 49250,\n  \"gunsn\": 49028,\n  \"gup\": 38632,\n  \"gup</w>\": 47335,\n  \"gupta</w>\": 15905,\n  \"gur\": 3218,\n  \"gur</w>\": 30224,\n  \"gura</w>\": 46836,\n  \"gurgaon</w>\": 33240,\n  \"guri</w>\": 43888,\n  \"gurl</w>\": 25445,\n  \"gurmee\": 35482,\n  \"gurmeetramrahim</w>\": 36549,\n  \"guru\": 18629,\n  \"guru</w>\": 10800,\n  \"gurudev</w>\": 48647,\n  \"gus</w>\": 8018,\n  \"gust</w>\": 24629,\n  \"gusta\": 23024,\n  \"gusta</w>\": 44196,\n  \"gustav\": 32062,\n  \"gustav</w>\": 37921,\n  \"gustave</w>\": 43170,\n  \"gustavo</w>\": 45943,\n  \"gusto</w>\": 37937,\n  \"gusts</w>\": 20896,\n  \"gusty</w>\": 27589,\n  \"gut\": 24780,\n  \"gut</w>\": 13486,\n  \"guter\": 44963,\n  \"guterres</w>\": 48738,\n  \"guth\": 31696,\n  \"guthrie</w>\": 33164,\n  \"gutier\": 32773,\n  \"gutierrez</w>\": 33739,\n  \"guts</w>\": 25983,\n  \"gutted</w>\": 26524,\n  \"gutter</w>\": 40537,\n  \"guwa\": 43063,\n  \"guwahati</w>\": 45045,\n  \"guy\": 10008,\n  \"guy</w>\": 2149,\n  \"guyana</w>\": 45215,\n  \"guyen</w>\": 28031,\n  \"guys\": 43588,\n  \"guys</w>\": 1791,\n  \"guyz</w>\": 48170,\n  \"guzman</w>\": 37960,\n  \"gv\": 15462,\n  \"gv</w>\": 17336,\n  \"gw\": 7172,\n  \"gw</w>\": 15717,\n  \"gwen\": 32165,\n  \"gwen</w>\": 24182,\n  \"gwin\": 43005,\n  \"gwy\": 32226,\n  \"gwyne\": 36923,\n  \"gx</w>\": 40227,\n  \"gy\": 2168,\n  \"gy</w>\": 1164,\n  \"gya</w>\": 43214,\n  \"gyan</w>\": 43814,\n  \"gye\": 21728,\n  \"gyllen\": 49348,\n  \"gym\": 9902,\n  \"gym</w>\": 5222,\n  \"gymna\": 13517,\n  \"gymnasium</w>\": 42847,\n  \"gymnast</w>\": 42658,\n  \"gymnastics</w>\": 20116,\n  \"gyn</w>\": 39603,\n  \"gyne\": 45836,\n  \"gyp\": 40053,\n  \"gypsy</w>\": 22354,\n  \"gypt</w>\": 41921,\n  \"gz\": 45937,\n  \"gz</w>\": 35841,\n  \"gÃ¶\": 40778,\n  \"gÃ¼\": 31907,\n  \"h\": 71,\n  \"h</w>\": 327,\n  \"ha\": 560,\n  \"ha</w>\": 1429,\n  \"haa</w>\": 26814,\n  \"haal</w>\": 35869,\n  \"haan</w>\": 36284,\n  \"haar\": 45247,\n  \"haar</w>\": 35859,\n  \"haas</w>\": 27443,\n  \"haasan</w>\": 26601,\n  \"hab\": 20573,\n  \"hab</w>\": 20002,\n  \"haban\": 46225,\n  \"haber\": 44737,\n  \"habit\": 8491,\n  \"habit</w>\": 17215,\n  \"habitat</w>\": 11747,\n  \"habitats</w>\": 35344,\n  \"habits</w>\": 14540,\n  \"habs</w>\": 27489,\n  \"hac\": 20343,\n  \"hace</w>\": 43623,\n  \"haci\": 40674,\n  \"hack\": 6610,\n  \"hack</w>\": 11182,\n  \"hackathon</w>\": 25182,\n  \"hacked</w>\": 19575,\n  \"hacker</w>\": 22376,\n  \"hackers</w>\": 21498,\n  \"hacking</w>\": 12939,\n  \"hackney\": 48811,\n  \"hackney</w>\": 24928,\n  \"hacks</w>\": 19965,\n  \"had\": 10660,\n  \"had</w>\": 1100,\n  \"hadi</w>\": 39058,\n  \"hadid</w>\": 26415,\n  \"hadith</w>\": 46907,\n  \"hadley</w>\": 44995,\n  \"hadn</w>\": 21480,\n  \"hadoop</w>\": 43868,\n  \"hae\": 30723,\n  \"hae</w>\": 27193,\n  \"hafi\": 39914,\n  \"hag\": 26855,\n  \"hag</w>\": 43207,\n  \"hagan</w>\": 47489,\n  \"hagen</w>\": 14664,\n  \"hager\": 48773,\n  \"hagg\": 26324,\n  \"hague</w>\": 28988,\n  \"hah\": 18108,\n  \"hah</w>\": 13680,\n  \"haha\": 1913,\n  \"haha</w>\": 3060,\n  \"hahah\": 27253,\n  \"hahah</w>\": 15441,\n  \"hahaha</w>\": 4722,\n  \"hahahah\": 37513,\n  \"hahahah</w>\": 20096,\n  \"hahahaha\": 8058,\n  \"hahahaha</w>\": 9501,\n  \"hahahahah</w>\": 33334,\n  \"hahahahaha</w>\": 16347,\n  \"hahahahahaha</w>\": 26487,\n  \"hahahahahahaha</w>\": 43653,\n  \"hahahahahahahaha\": 36126,\n  \"hahahha</w>\": 49205,\n  \"hahn</w>\": 35596,\n  \"hai\": 8734,\n  \"hai</w>\": 5234,\n  \"haider</w>\": 42200,\n  \"haiku</w>\": 19542,\n  \"hail\": 15272,\n  \"hail</w>\": 8634,\n  \"hailed</w>\": 44604,\n  \"hailey</w>\": 27703,\n  \"hailing</w>\": 47288,\n  \"hails</w>\": 32571,\n  \"hailstate</w>\": 35063,\n  \"hain</w>\": 23861,\n  \"hair\": 4658,\n  \"hair</w>\": 2225,\n  \"haircare</w>\": 43682,\n  \"haircut</w>\": 14711,\n  \"hairdresser</w>\": 47468,\n  \"haired</w>\": 27202,\n  \"hairs</w>\": 27951,\n  \"hairstyle</w>\": 22324,\n  \"hairstyles</w>\": 40627,\n  \"hairy</w>\": 26513,\n  \"haiti</w>\": 17368,\n  \"haitian</w>\": 37577,\n  \"haj\": 27885,\n  \"haj</w>\": 43191,\n  \"haji</w>\": 41889,\n  \"hajj</w>\": 35576,\n  \"hak\": 25142,\n  \"hak</w>\": 40671,\n  \"haka</w>\": 44011,\n  \"hake\": 41663,\n  \"hal\": 1296,\n  \"hal</w>\": 8708,\n  \"hala</w>\": 25918,\n  \"halal</w>\": 34216,\n  \"halam\": 29061,\n  \"halamadrid</w>\": 31132,\n  \"halder</w>\": 32201,\n  \"hale\": 37038,\n  \"hale</w>\": 14701,\n  \"halen</w>\": 39204,\n  \"halep</w>\": 49017,\n  \"haley\": 37330,\n  \"haley</w>\": 16839,\n  \"half\": 7453,\n  \"half</w>\": 2349,\n  \"halftime</w>\": 13742,\n  \"halfway</w>\": 16736,\n  \"hali\": 9860,\n  \"hali</w>\": 43030,\n  \"halibut</w>\": 49030,\n  \"halifax</w>\": 13411,\n  \"hall\": 6850,\n  \"hall</w>\": 2140,\n  \"halla</w>\": 29569,\n  \"halle\": 27763,\n  \"halle</w>\": 32239,\n  \"hallelujah</w>\": 36993,\n  \"halli\": 32665,\n  \"hallmark\": 31040,\n  \"hallmark</w>\": 32053,\n  \"hallmarkchannel</w>\": 36840,\n  \"hallo\": 3463,\n  \"halloffame</w>\": 48578,\n  \"halloween\": 28537,\n  \"halloween</w>\": 3739,\n  \"halls</w>\": 18052,\n  \"hallucin\": 35385,\n  \"hallway</w>\": 26845,\n  \"halo\": 33331,\n  \"halo</w>\": 11918,\n  \"halsey</w>\": 34256,\n  \"halt</w>\": 25640,\n  \"halter</w>\": 47194,\n  \"halton</w>\": 45445,\n  \"ham\": 1522,\n  \"ham</w>\": 1714,\n  \"hama</w>\": 17944,\n  \"hamas</w>\": 14818,\n  \"hamburg</w>\": 18409,\n  \"hamburger</w>\": 33928,\n  \"hamid</w>\": 32377,\n  \"hamil\": 6725,\n  \"hamill\": 45784,\n  \"hamill</w>\": 48729,\n  \"hamillhimself</w>\": 47324,\n  \"hamilton\": 22448,\n  \"hamilton</w>\": 7684,\n  \"hamlet</w>\": 27722,\n  \"hamlin</w>\": 49326,\n  \"hamm</w>\": 46110,\n  \"hammer\": 15331,\n  \"hammer</w>\": 9401,\n  \"hammered</w>\": 37251,\n  \"hammers</w>\": 35649,\n  \"hammersmith</w>\": 42127,\n  \"hammock</w>\": 33682,\n  \"hammond</w>\": 21761,\n  \"hamont</w>\": 18518,\n  \"hamp\": 6665,\n  \"hamper</w>\": 27692,\n  \"hampshire</w>\": 16006,\n  \"hampstead</w>\": 37340,\n  \"hampton\": 36582,\n  \"hampton</w>\": 12285,\n  \"hamptons</w>\": 42415,\n  \"hamr</w>\": 47979,\n  \"hamradio</w>\": 36712,\n  \"hams</w>\": 25619,\n  \"hamster</w>\": 33313,\n  \"hamstring</w>\": 39990,\n  \"hamza</w>\": 45762,\n  \"han\": 1545,\n  \"han</w>\": 3565,\n  \"hana</w>\": 16801,\n  \"hand\": 1722,\n  \"hand</w>\": 2463,\n  \"handbag</w>\": 22654,\n  \"handbags</w>\": 35667,\n  \"handball</w>\": 27988,\n  \"handbook</w>\": 25147,\n  \"handcrafted</w>\": 22185,\n  \"handed</w>\": 10881,\n  \"handedly</w>\": 48656,\n  \"handel</w>\": 40072,\n  \"handful</w>\": 23725,\n  \"handheld</w>\": 26812,\n  \"handic\": 17812,\n  \"handicap</w>\": 27063,\n  \"handicapp\": 42349,\n  \"handing</w>\": 19196,\n  \"handle\": 43681,\n  \"handle</w>\": 7245,\n  \"handled</w>\": 26824,\n  \"handler</w>\": 29097,\n  \"handles</w>\": 22124,\n  \"handling</w>\": 14071,\n  \"handmade\": 18054,\n  \"handmade</w>\": 6737,\n  \"handmadehour</w>\": 25724,\n  \"handover</w>\": 46922,\n  \"hands</w>\": 3500,\n  \"handshake</w>\": 38418,\n  \"handsome</w>\": 7438,\n  \"handwriting</w>\": 29986,\n  \"handwritten</w>\": 35192,\n  \"handy</w>\": 13479,\n  \"hane</w>\": 28411,\n  \"hang\": 3351,\n  \"hang</w>\": 5592,\n  \"hangar</w>\": 33439,\n  \"hanged</w>\": 40807,\n  \"hanger</w>\": 28905,\n  \"hangin</w>\": 22670,\n  \"hanging</w>\": 4850,\n  \"hangout</w>\": 17572,\n  \"hangover</w>\": 20755,\n  \"hangs</w>\": 21785,\n  \"hani\": 39944,\n  \"hani</w>\": 18374,\n  \"hank\": 35993,\n  \"hank</w>\": 17655,\n  \"hanks</w>\": 29943,\n  \"hanley</w>\": 47284,\n  \"hann\": 5584,\n  \"hanna</w>\": 10075,\n  \"hannah\": 18622,\n  \"hannah</w>\": 9142,\n  \"hannel</w>\": 43477,\n  \"hanni\": 19493,\n  \"hannibal</w>\": 25149,\n  \"hannity</w>\": 24569,\n  \"hannover</w>\": 39976,\n  \"hanoi</w>\": 36134,\n  \"hanover</w>\": 33246,\n  \"hans\": 35172,\n  \"hans</w>\": 16628,\n  \"hansen</w>\": 19729,\n  \"hanson</w>\": 24602,\n  \"hant\": 40641,\n  \"hanuk\": 32774,\n  \"hanukkah</w>\": 34247,\n  \"hanuman</w>\": 46975,\n  \"hao</w>\": 27184,\n  \"hap\": 44981,\n  \"hap</w>\": 47988,\n  \"happ\": 784,\n  \"happen\": 21486,\n  \"happen</w>\": 4506,\n  \"happened</w>\": 4402,\n  \"happening</w>\": 4284,\n  \"happeningnow</w>\": 43107,\n  \"happenings</w>\": 41998,\n  \"happens</w>\": 4988,\n  \"happier</w>\": 14118,\n  \"happiest</w>\": 13811,\n  \"happily</w>\": 17316,\n  \"happiness</w>\": 5096,\n  \"happy\": 2952,\n  \"happy</w>\": 900,\n  \"happybirthday\": 9651,\n  \"happybirthday</w>\": 12207,\n  \"happydays</w>\": 25106,\n  \"happye\": 33922,\n  \"happyeaster</w>\": 38745,\n  \"happyfathersday</w>\": 43534,\n  \"happyfriday</w>\": 33340,\n  \"happyhalloween</w>\": 28750,\n  \"happyholidays</w>\": 32186,\n  \"happyhour</w>\": 32036,\n  \"happymonday</w>\": 47364,\n  \"happymothersday</w>\": 42425,\n  \"happynewyear</w>\": 18655,\n  \"happythanksgiving</w>\": 40593,\n  \"happyvalentinesday</w>\": 42403,\n  \"haps</w>\": 9114,\n  \"haq</w>\": 32445,\n  \"har\": 915,\n  \"har</w>\": 5888,\n  \"hara</w>\": 10367,\n  \"haram\": 35732,\n  \"haram</w>\": 22950,\n  \"haran</w>\": 27921,\n  \"harare</w>\": 43562,\n  \"haras\": 26644,\n  \"harass\": 16481,\n  \"harassed</w>\": 43067,\n  \"harassment</w>\": 16641,\n  \"harat</w>\": 28984,\n  \"harb\": 5856,\n  \"harbaugh</w>\": 45220,\n  \"harbor\": 40686,\n  \"harbor</w>\": 10202,\n  \"harbour\": 35430,\n  \"harbour</w>\": 10011,\n  \"harcourt</w>\": 48093,\n  \"hard\": 3312,\n  \"hard</w>\": 1626,\n  \"hardcover</w>\": 31123,\n  \"harden</w>\": 27350,\n  \"harder</w>\": 12274,\n  \"hardest</w>\": 15258,\n  \"hardin</w>\": 43802,\n  \"harding</w>\": 24382,\n  \"hardly</w>\": 17363,\n  \"hardro\": 28126,\n  \"hardrock\": 48365,\n  \"hardrock</w>\": 40739,\n  \"hards</w>\": 44048,\n  \"hardship</w>\": 45085,\n  \"hardt</w>\": 17922,\n  \"hardware</w>\": 11957,\n  \"hardwell</w>\": 45572,\n  \"hardwick</w>\": 46864,\n  \"hardwood</w>\": 28167,\n  \"hardwork\": 42554,\n  \"hardwork</w>\": 27404,\n  \"hardworking</w>\": 28095,\n  \"hardworkpaysoff</w>\": 49193,\n  \"hardy\": 48179,\n  \"hardy</w>\": 14113,\n  \"hare\": 27903,\n  \"hare</w>\": 18464,\n  \"harga</w>\": 39738,\n  \"hari\": 25472,\n  \"hari</w>\": 8981,\n  \"harlan</w>\": 49133,\n  \"harle\": 29096,\n  \"harlem</w>\": 17771,\n  \"harley\": 24702,\n  \"harley</w>\": 13632,\n  \"harleydavidson</w>\": 39183,\n  \"harlow</w>\": 34113,\n  \"harm\": 16656,\n  \"harm</w>\": 14452,\n  \"harman</w>\": 42434,\n  \"harmed</w>\": 39637,\n  \"harmful</w>\": 21725,\n  \"harmless</w>\": 44369,\n  \"harmon\": 10828,\n  \"harmon</w>\": 28729,\n  \"harmony</w>\": 10785,\n  \"harms</w>\": 46703,\n  \"harne\": 43323,\n  \"harness</w>\": 23205,\n  \"harold</w>\": 16917,\n  \"harp</w>\": 27339,\n  \"harper\": 31288,\n  \"harper</w>\": 12634,\n  \"harri\": 6639,\n  \"harrier</w>\": 37372,\n  \"harriet</w>\": 27154,\n  \"harrington</w>\": 34340,\n  \"harris\": 25356,\n  \"harris</w>\": 6925,\n  \"harrisburg</w>\": 40590,\n  \"harrison\": 34389,\n  \"harrison</w>\": 10540,\n  \"harro\": 18939,\n  \"harrogate</w>\": 30842,\n  \"harrow</w>\": 38807,\n  \"harry\": 11094,\n  \"harry</w>\": 3600,\n  \"harrypotter</w>\": 23375,\n  \"harsh\": 30596,\n  \"harsh</w>\": 16944,\n  \"hart\": 9335,\n  \"hart</w>\": 7752,\n  \"hartford</w>\": 23434,\n  \"harth</w>\": 35619,\n  \"hartle\": 47482,\n  \"hartley</w>\": 31268,\n  \"hartman</w>\": 43294,\n  \"haru</w>\": 35099,\n  \"harvard\": 28118,\n  \"harvard</w>\": 12848,\n  \"harve\": 6405,\n  \"harvest\": 44495,\n  \"harvest</w>\": 8971,\n  \"harvested</w>\": 35899,\n  \"harvesting</w>\": 26674,\n  \"harvey\": 33289,\n  \"harvey</w>\": 9586,\n  \"harvick</w>\": 46983,\n  \"haryana</w>\": 27661,\n  \"has\": 13855,\n  \"has</w>\": 791,\n  \"hasan</w>\": 30049,\n  \"hasbro</w>\": 37405,\n  \"hash\": 6338,\n  \"hash</w>\": 19199,\n  \"hashi</w>\": 41831,\n  \"hashmi</w>\": 35852,\n  \"hashtag\": 34015,\n  \"hashtag</w>\": 9238,\n  \"hashtags</w>\": 23514,\n  \"haskell</w>\": 48550,\n  \"hasn</w>\": 9143,\n  \"hass\": 9298,\n  \"hassan</w>\": 15829,\n  \"hassee</w>\": 37117,\n  \"hassel\": 32204,\n  \"hassle</w>\": 35762,\n  \"hast\": 18146,\n  \"hasta</w>\": 36623,\n  \"hastings</w>\": 22035,\n  \"hat\": 3447,\n  \"hat</w>\": 3801,\n  \"hatch\": 24202,\n  \"hatch</w>\": 17809,\n  \"hatchback</w>\": 42348,\n  \"hatched</w>\": 42158,\n  \"hate\": 23546,\n  \"hate</w>\": 3753,\n  \"hated</w>\": 21298,\n  \"hateful</w>\": 36418,\n  \"hater</w>\": 36917,\n  \"haters</w>\": 14027,\n  \"hates</w>\": 14957,\n  \"hatfield</w>\": 38448,\n  \"hath\": 27894,\n  \"hath</w>\": 34416,\n  \"hathaway</w>\": 31801,\n  \"hati</w>\": 26045,\n  \"hating</w>\": 25668,\n  \"hatred</w>\": 19046,\n  \"hats</w>\": 9812,\n  \"hatt\": 8747,\n  \"hatton</w>\": 44861,\n  \"hau\": 5152,\n  \"hauer</w>\": 48751,\n  \"haul\": 23743,\n  \"haul</w>\": 12332,\n  \"hauled</w>\": 46620,\n  \"hauling</w>\": 43132,\n  \"haun\": 9676,\n  \"haunt</w>\": 31039,\n  \"haunted</w>\": 14944,\n  \"haunting</w>\": 24034,\n  \"haunts</w>\": 48035,\n  \"haus\": 41755,\n  \"haus</w>\": 16478,\n  \"hausen</w>\": 33338,\n  \"hauser</w>\": 46586,\n  \"haute</w>\": 28854,\n  \"hav\": 13443,\n  \"hav</w>\": 20447,\n  \"havan</w>\": 36304,\n  \"havana</w>\": 23357,\n  \"havas\": 46261,\n  \"have\": 18053,\n  \"have</w>\": 720,\n  \"haven\": 33074,\n  \"haven</w>\": 3871,\n  \"havent</w>\": 29130,\n  \"haver\": 27876,\n  \"haves</w>\": 49088,\n  \"havin</w>\": 31937,\n  \"having</w>\": 1977,\n  \"havoc</w>\": 24447,\n  \"haw\": 2788,\n  \"haw</w>\": 26954,\n  \"hawa\": 6067,\n  \"hawa</w>\": 46278,\n  \"hawai\": 15800,\n  \"hawaii\": 32413,\n  \"hawaii</w>\": 8265,\n  \"hawaiian</w>\": 17734,\n  \"hawan</w>\": 27765,\n  \"hawk\": 14704,\n  \"hawk</w>\": 8218,\n  \"hawke</w>\": 38178,\n  \"hawker</w>\": 39051,\n  \"hawkeye</w>\": 38666,\n  \"hawkeyes</w>\": 34266,\n  \"hawking</w>\": 33437,\n  \"hawkins</w>\": 19740,\n  \"hawks\": 44806,\n  \"hawks</w>\": 5841,\n  \"hawthorn</w>\": 45372,\n  \"hawthorne</w>\": 36730,\n  \"hay\": 4871,\n  \"hay</w>\": 11367,\n  \"haya</w>\": 41325,\n  \"hayat</w>\": 49360,\n  \"hayden</w>\": 19806,\n  \"haydn</w>\": 48207,\n  \"haye\": 36583,\n  \"hayes</w>\": 13555,\n  \"hayley\": 39986,\n  \"hayley</w>\": 22204,\n  \"haynes</w>\": 30496,\n  \"hays</w>\": 41524,\n  \"hayward</w>\": 29400,\n  \"haz\": 5040,\n  \"haz</w>\": 39921,\n  \"hazard\": 26174,\n  \"hazard</w>\": 15178,\n  \"hazardous</w>\": 27102,\n  \"hazards</w>\": 30639,\n  \"haze</w>\": 22785,\n  \"hazel\": 19838,\n  \"hazel</w>\": 21882,\n  \"hazelnut</w>\": 35816,\n  \"hazi</w>\": 22740,\n  \"hazmat</w>\": 48887,\n  \"hazrat</w>\": 45775,\n  \"hazy</w>\": 32655,\n  \"hb\": 6854,\n  \"hb</w>\": 12576,\n  \"hbcu</w>\": 40008,\n  \"hbd\": 25277,\n  \"hbd</w>\": 13594,\n  \"hbo</w>\": 15252,\n  \"hc\": 15831,\n  \"hc</w>\": 7821,\n  \"hcs</w>\": 46850,\n  \"hd\": 11601,\n  \"hd</w>\": 4414,\n  \"hdd</w>\": 40508,\n  \"hdmi</w>\": 33302,\n  \"hdr</w>\": 28065,\n  \"he\": 651,\n  \"he</w>\": 797,\n  \"hea\": 27150,\n  \"hea</w>\": 32790,\n  \"head\": 1603,\n  \"head</w>\": 1375,\n  \"headache</w>\": 23849,\n  \"headaches</w>\": 38025,\n  \"headband</w>\": 28556,\n  \"headed</w>\": 6153,\n  \"header</w>\": 11077,\n  \"heading</w>\": 4409,\n  \"headless</w>\": 45219,\n  \"headlights</w>\": 42422,\n  \"headline</w>\": 10891,\n  \"headliner</w>\": 38880,\n  \"headlines</w>\": 14706,\n  \"headlining</w>\": 26971,\n  \"headphone</w>\": 37524,\n  \"headphones</w>\": 14906,\n  \"headquarters</w>\": 13041,\n  \"heads</w>\": 5174,\n  \"headset</w>\": 23883,\n  \"headshot</w>\": 34890,\n  \"heal\": 1231,\n  \"heal</w>\": 13833,\n  \"healed</w>\": 31456,\n  \"healer</w>\": 38328,\n  \"healey</w>\": 38985,\n  \"healing</w>\": 9295,\n  \"heals</w>\": 32384,\n  \"health\": 2145,\n  \"health</w>\": 1728,\n  \"healthand\": 43704,\n  \"healthcare\": 42500,\n  \"healthcare</w>\": 6023,\n  \"healthier</w>\": 18242,\n  \"healthtech</w>\": 42694,\n  \"healthy\": 10330,\n  \"healthy</w>\": 3782,\n  \"healthye\": 31532,\n  \"healthyeating</w>\": 33761,\n  \"healthyfood</w>\": 39996,\n  \"healthylifestyle</w>\": 46254,\n  \"healthyliving</w>\": 27293,\n  \"healy</w>\": 34299,\n  \"heap</w>\": 34781,\n  \"heaps</w>\": 44446,\n  \"hear\": 2749,\n  \"hear</w>\": 2584,\n  \"heard</w>\": 4063,\n  \"hearing\": 46353,\n  \"hearing</w>\": 5541,\n  \"hearings</w>\": 33175,\n  \"hearn</w>\": 36613,\n  \"hears</w>\": 25395,\n  \"heart\": 4975,\n  \"heart</w>\": 1936,\n  \"heartbeat</w>\": 29154,\n  \"heartbreak</w>\": 29281,\n  \"heartbreaking</w>\": 21322,\n  \"heartbroken</w>\": 35383,\n  \"hearted</w>\": 21679,\n  \"heartfelt</w>\": 22904,\n  \"hearth\": 31563,\n  \"hearthstone</w>\": 34054,\n  \"hearti\": 29345,\n  \"hearties</w>\": 44572,\n  \"heartland</w>\": 31923,\n  \"heartless</w>\": 47022,\n  \"heartnews</w>\": 40426,\n  \"hearts</w>\": 5516,\n  \"heartw\": 30002,\n  \"heartwarming</w>\": 34080,\n  \"hearty</w>\": 26994,\n  \"heat\": 12175,\n  \"heat</w>\": 4403,\n  \"heated</w>\": 17057,\n  \"heater</w>\": 23246,\n  \"heath\": 12794,\n  \"heath</w>\": 11719,\n  \"heather\": 20230,\n  \"heather</w>\": 12470,\n  \"heathrow</w>\": 24171,\n  \"heating</w>\": 12478,\n  \"heaton</w>\": 34557,\n  \"heats</w>\": 36106,\n  \"heatwave</w>\": 25726,\n  \"heav\": 2409,\n  \"heaven\": 15520,\n  \"heaven</w>\": 5545,\n  \"heavenly</w>\": 19117,\n  \"heavens</w>\": 26026,\n  \"heavier</w>\": 31253,\n  \"heaviest</w>\": 33268,\n  \"heavily</w>\": 14123,\n  \"heavy\": 12048,\n  \"heavy</w>\": 4200,\n  \"heavymetal</w>\": 39804,\n  \"heavyweight</w>\": 17448,\n  \"heb\": 24700,\n  \"heb</w>\": 34515,\n  \"hebdo</w>\": 41817,\n  \"hebrew</w>\": 27298,\n  \"hebrides</w>\": 45121,\n  \"hebron</w>\": 45725,\n  \"hec\": 18932,\n  \"heck\": 22985,\n  \"heck</w>\": 14427,\n  \"hectares</w>\": 44162,\n  \"hectic</w>\": 37245,\n  \"hector</w>\": 25852,\n  \"hed\": 18271,\n  \"hedge\": 16229,\n  \"hedge</w>\": 20294,\n  \"hedgehog</w>\": 21940,\n  \"hedges</w>\": 41345,\n  \"hee\": 18364,\n  \"hee</w>\": 15773,\n  \"heechul</w>\": 42487,\n  \"heed</w>\": 15118,\n  \"heel\": 33646,\n  \"heel</w>\": 16861,\n  \"heels</w>\": 10909,\n  \"heem</w>\": 30061,\n  \"heer</w>\": 40473,\n  \"hef\": 29473,\n  \"heff\": 48756,\n  \"hefty</w>\": 48584,\n  \"heg\": 41995,\n  \"heh</w>\": 25834,\n  \"hehe\": 48723,\n  \"hehe</w>\": 10658,\n  \"hehehe</w>\": 24138,\n  \"hei\": 6101,\n  \"hei</w>\": 29051,\n  \"heidel\": 42927,\n  \"heidelberg</w>\": 48445,\n  \"heidi\": 44860,\n  \"heidi</w>\": 23867,\n  \"heifer</w>\": 48219,\n  \"heigh\": 43883,\n  \"height</w>\": 10788,\n  \"heights</w>\": 8418,\n  \"heim\": 10931,\n  \"heim</w>\": 9768,\n  \"heimer</w>\": 39517,\n  \"hein\": 15487,\n  \"hein</w>\": 43206,\n  \"heine\": 28742,\n  \"heineken</w>\": 36874,\n  \"heinrich</w>\": 47877,\n  \"heinz</w>\": 32359,\n  \"heir\": 27083,\n  \"heir</w>\": 34007,\n  \"heirloom</w>\": 34232,\n  \"heirs</w>\": 43834,\n  \"heis\": 21849,\n  \"heisman</w>\": 34537,\n  \"heist</w>\": 31035,\n  \"heit</w>\": 37255,\n  \"hel\": 919,\n  \"hel</w>\": 11579,\n  \"hela</w>\": 48212,\n  \"held</w>\": 4042,\n  \"hele</w>\": 46129,\n  \"helen\": 17576,\n  \"helen</w>\": 11291,\n  \"helena</w>\": 23109,\n  \"helene</w>\": 41591,\n  \"helens</w>\": 45940,\n  \"heli\": 33874,\n  \"heli</w>\": 40183,\n  \"helicop\": 10035,\n  \"helicopter</w>\": 11956,\n  \"helicopters</w>\": 26922,\n  \"helium</w>\": 46505,\n  \"helix</w>\": 35247,\n  \"hell\": 8410,\n  \"hell</w>\": 4141,\n  \"hella</w>\": 19800,\n  \"hellboy</w>\": 48428,\n  \"helle\": 48600,\n  \"helle</w>\": 46968,\n  \"hellenic</w>\": 42544,\n  \"heller</w>\": 44464,\n  \"hello\": 12887,\n  \"hello</w>\": 3306,\n  \"hells</w>\": 47989,\n  \"helly</w>\": 48690,\n  \"helm\": 47970,\n  \"helm</w>\": 19520,\n  \"helmet</w>\": 11122,\n  \"helmets</w>\": 21843,\n  \"help\": 8641,\n  \"help</w>\": 1318,\n  \"helped</w>\": 4845,\n  \"helper</w>\": 29321,\n  \"helpers</w>\": 36316,\n  \"helpful</w>\": 12695,\n  \"helping</w>\": 3875,\n  \"helpless</w>\": 47638,\n  \"helpline</w>\": 43101,\n  \"helps</w>\": 5144,\n  \"helsin\": 17842,\n  \"helsinki</w>\": 19626,\n  \"hem\": 20270,\n  \"hem</w>\": 11148,\n  \"hemi\": 14256,\n  \"hemi</w>\": 46856,\n  \"heming\": 30819,\n  \"hemingway</w>\": 33470,\n  \"hemisphere</w>\": 32767,\n  \"hemmings</w>\": 34882,\n  \"hemo\": 43788,\n  \"hemp\": 28225,\n  \"hemp</w>\": 18467,\n  \"hems\": 32451,\n  \"hemsworth</w>\": 39428,\n  \"hen\": 2385,\n  \"hen</w>\": 8047,\n  \"hence</w>\": 23640,\n  \"hend\": 11560,\n  \"hender\": 49248,\n  \"henderson</w>\": 14348,\n  \"hendrick</w>\": 45296,\n  \"hendricks</w>\": 37588,\n  \"hendrix</w>\": 23605,\n  \"henge</w>\": 33104,\n  \"henley</w>\": 27853,\n  \"henna</w>\": 39455,\n  \"hennessy</w>\": 42667,\n  \"henri\": 19431,\n  \"henri</w>\": 21610,\n  \"henrik</w>\": 35772,\n  \"henry\": 16018,\n  \"henry</w>\": 5508,\n  \"hens</w>\": 31742,\n  \"henson</w>\": 32935,\n  \"hep\": 17724,\n  \"hep</w>\": 48791,\n  \"hepat\": 23767,\n  \"hepatitis</w>\": 32169,\n  \"hepburn</w>\": 26348,\n  \"her\": 1223,\n  \"her</w>\": 899,\n  \"hera</w>\": 38724,\n  \"heral\": 37809,\n  \"herald\": 27625,\n  \"herald</w>\": 12851,\n  \"herb\": 26116,\n  \"herb</w>\": 15302,\n  \"herbal</w>\": 21868,\n  \"herbali\": 44087,\n  \"herbalife</w>\": 48364,\n  \"herbert</w>\": 19935,\n  \"herbs</w>\": 17320,\n  \"hercules</w>\": 26539,\n  \"herd\": 36142,\n  \"herd</w>\": 18589,\n  \"here\": 9134,\n  \"here</w>\": 763,\n  \"hered\": 47976,\n  \"hereford</w>\": 35543,\n  \"heres</w>\": 13566,\n  \"hereto\": 47673,\n  \"heri</w>\": 31392,\n  \"herit\": 4720,\n  \"heritag\": 38273,\n  \"heritage\": 20962,\n  \"heritage</w>\": 5455,\n  \"herman\": 31890,\n  \"herman</w>\": 21568,\n  \"hermann</w>\": 40942,\n  \"hermes</w>\": 34563,\n  \"hermi\": 35265,\n  \"hermione</w>\": 45502,\n  \"hermit</w>\": 43953,\n  \"hermitage</w>\": 47706,\n  \"hermo\": 40967,\n  \"hermosa</w>\": 42531,\n  \"hern\": 30571,\n  \"hern</w>\": 43576,\n  \"hernandez</w>\": 17707,\n  \"hero\": 7338,\n  \"hero</w>\": 3756,\n  \"heroes\": 38010,\n  \"heroes</w>\": 5506,\n  \"heroic</w>\": 24255,\n  \"heroin</w>\": 23841,\n  \"heroine</w>\": 27420,\n  \"heron</w>\": 22593,\n  \"heros</w>\": 37642,\n  \"herr</w>\": 38537,\n  \"herrera</w>\": 27755,\n  \"herring</w>\": 30211,\n  \"hers</w>\": 25359,\n  \"herself</w>\": 9207,\n  \"hersh\": 20379,\n  \"hershey</w>\": 29734,\n  \"hert\": 26744,\n  \"hertfordshire</w>\": 41070,\n  \"herts</w>\": 35784,\n  \"herty</w>\": 23454,\n  \"hertz</w>\": 49383,\n  \"hes\": 30553,\n  \"hes</w>\": 12784,\n  \"hesit\": 23933,\n  \"hesitate</w>\": 34967,\n  \"hess</w>\": 41888,\n  \"hester</w>\": 31105,\n  \"het\": 37527,\n  \"het</w>\": 19678,\n  \"hetero\": 26405,\n  \"heu\": 20105,\n  \"heughan</w>\": 32298,\n  \"hew\": 48141,\n  \"hew</w>\": 43051,\n  \"hewitt</w>\": 28871,\n  \"hex\": 16255,\n  \"hex</w>\": 31241,\n  \"hey\": 10759,\n  \"hey</w>\": 2189,\n  \"hez\": 34591,\n  \"hezbollah</w>\": 37636,\n  \"hf\": 26606,\n  \"hf</w>\": 20603,\n  \"hfx\": 47297,\n  \"hg\": 23986,\n  \"hg</w>\": 26237,\n  \"hgtv</w>\": 47657,\n  \"hh\": 3280,\n  \"hh</w>\": 5180,\n  \"hhh</w>\": 8281,\n  \"hhhh\": 19391,\n  \"hhhh</w>\": 13121,\n  \"hhhhh</w>\": 24246,\n  \"hhhhhh</w>\": 37278,\n  \"hhs</w>\": 27006,\n  \"hi\": 677,\n  \"hi</w>\": 1883,\n  \"hia</w>\": 20672,\n  \"hiatus</w>\": 27823,\n  \"hib\": 15922,\n  \"hiber\": 38799,\n  \"hibis\": 36226,\n  \"hibiscus</w>\": 36460,\n  \"hibition</w>\": 24658,\n  \"hibs</w>\": 42814,\n  \"hic\": 3549,\n  \"hic</w>\": 38079,\n  \"hick\": 14813,\n  \"hickman</w>\": 49148,\n  \"hickory</w>\": 29905,\n  \"hicks</w>\": 23429,\n  \"hid\": 15552,\n  \"hid</w>\": 14451,\n  \"hidalgo</w>\": 47464,\n  \"hidden\": 28305,\n  \"hidden</w>\": 7029,\n  \"hiddleston</w>\": 31444,\n  \"hide\": 17725,\n  \"hide</w>\": 9379,\n  \"hideous</w>\": 46588,\n  \"hides</w>\": 30800,\n  \"hiding</w>\": 11371,\n  \"hie</w>\": 15763,\n  \"hier\": 23433,\n  \"hier</w>\": 29913,\n  \"hierarchy</w>\": 44442,\n  \"hifi</w>\": 38168,\n  \"hig\": 38108,\n  \"higgins</w>\": 21783,\n  \"high\": 1487,\n  \"high</w>\": 1400,\n  \"higher</w>\": 5321,\n  \"highered</w>\": 27072,\n  \"highest</w>\": 5317,\n  \"highland\": 32244,\n  \"highland</w>\": 16062,\n  \"highlander</w>\": 46251,\n  \"highlanders</w>\": 40445,\n  \"highlands</w>\": 16883,\n  \"highlight</w>\": 8264,\n  \"highlighted</w>\": 22252,\n  \"highlighter</w>\": 45460,\n  \"highlighting</w>\": 17344,\n  \"highlights</w>\": 6173,\n  \"highly</w>\": 5302,\n  \"highness</w>\": 38694,\n  \"highs</w>\": 15144,\n  \"highschool</w>\": 23102,\n  \"highway\": 45344,\n  \"highway</w>\": 7620,\n  \"highways</w>\": 28007,\n  \"higu\": 39115,\n  \"hihi</w>\": 36240,\n  \"hii</w>\": 42315,\n  \"hijab</w>\": 31407,\n  \"hika</w>\": 41356,\n  \"hikari</w>\": 44624,\n  \"hike</w>\": 9404,\n  \"hiked</w>\": 36471,\n  \"hiker</w>\": 40947,\n  \"hikers</w>\": 46090,\n  \"hikes</w>\": 27076,\n  \"hiking</w>\": 9118,\n  \"hiko</w>\": 48708,\n  \"hil\": 3508,\n  \"hil</w>\": 17927,\n  \"hila</w>\": 38837,\n  \"hilar\": 37337,\n  \"hilari\": 7784,\n  \"hilarious</w>\": 8358,\n  \"hilariously</w>\": 43476,\n  \"hilary\": 45898,\n  \"hilary</w>\": 25415,\n  \"hilde\": 45382,\n  \"hill\": 3671,\n  \"hill</w>\": 2682,\n  \"hillary\": 13257,\n  \"hillary</w>\": 7074,\n  \"hillaryclinton</w>\": 15357,\n  \"hilli\": 32513,\n  \"hills\": 24178,\n  \"hills</w>\": 5289,\n  \"hillsborough</w>\": 32157,\n  \"hillside</w>\": 37194,\n  \"hilltop</w>\": 45858,\n  \"hilly</w>\": 32483,\n  \"hilton\": 33621,\n  \"hilton</w>\": 14012,\n  \"him\": 4128,\n  \"him</w>\": 1269,\n  \"himach\": 29132,\n  \"himachal</w>\": 35461,\n  \"himalay\": 17552,\n  \"himalayan</w>\": 30318,\n  \"himalayas</w>\": 32872,\n  \"hime</w>\": 45892,\n  \"himself</w>\": 4530,\n  \"himss</w>\": 41730,\n  \"hin\": 1676,\n  \"hin</w>\": 37930,\n  \"hina</w>\": 40571,\n  \"hinakhan</w>\": 45518,\n  \"hinch\": 49320,\n  \"hind\": 34460,\n  \"hind</w>\": 23293,\n  \"hindi</w>\": 14967,\n  \"hinds</w>\": 47859,\n  \"hindu\": 17587,\n  \"hindu</w>\": 12053,\n  \"hinduism</w>\": 40592,\n  \"hindus</w>\": 25701,\n  \"hindustan</w>\": 46553,\n  \"hines</w>\": 37462,\n  \"hing\": 37968,\n  \"hini</w>\": 33564,\n  \"hino</w>\": 45343,\n  \"hint</w>\": 11868,\n  \"hinton</w>\": 47165,\n  \"hints</w>\": 20594,\n  \"hio</w>\": 32897,\n  \"hip\": 11725,\n  \"hip</w>\": 6584,\n  \"hipho\": 8819,\n  \"hiphop\": 26598,\n  \"hiphop</w>\": 10914,\n  \"hipp\": 13607,\n  \"hippie</w>\": 28637,\n  \"hippo\": 28398,\n  \"hippo</w>\": 36729,\n  \"hips</w>\": 30191,\n  \"hipstamatic</w>\": 31002,\n  \"hipster</w>\": 19987,\n  \"hipsters</w>\": 48265,\n  \"hir\": 4959,\n  \"hir</w>\": 14728,\n  \"hira</w>\": 42577,\n  \"hire\": 32356,\n  \"hire</w>\": 8243,\n  \"hired</w>\": 17602,\n  \"hires</w>\": 24133,\n  \"hiring</w>\": 7835,\n  \"hiro\": 17396,\n  \"hiro</w>\": 20588,\n  \"hiroshima</w>\": 33867,\n  \"hirsch</w>\": 46967,\n  \"his\": 15211,\n  \"his</w>\": 787,\n  \"hism</w>\": 23502,\n  \"hispan\": 16843,\n  \"hispanic</w>\": 22676,\n  \"hist\": 21710,\n  \"hist</w>\": 13779,\n  \"histo\": 33479,\n  \"histor\": 2993,\n  \"historia</w>\": 46010,\n  \"historian</w>\": 20697,\n  \"historians</w>\": 35200,\n  \"historic\": 30195,\n  \"historic</w>\": 5726,\n  \"historical\": 34154,\n  \"historical</w>\": 8039,\n  \"historically</w>\": 30445,\n  \"histories</w>\": 34736,\n  \"history\": 11142,\n  \"history</w>\": 1695,\n  \"historymonth</w>\": 19356,\n  \"historyof\": 35905,\n  \"hit\": 5453,\n  \"hit</w>\": 2341,\n  \"hitch\": 22937,\n  \"hitch</w>\": 36203,\n  \"hitler</w>\": 16518,\n  \"hitman</w>\": 33290,\n  \"hits</w>\": 4712,\n  \"hitter</w>\": 23538,\n  \"hitters</w>\": 39724,\n  \"hitting</w>\": 7957,\n  \"hiv\": 44410,\n  \"hiv</w>\": 11018,\n  \"hive\": 38162,\n  \"hive</w>\": 18521,\n  \"hiya</w>\": 42393,\n  \"hk\": 22648,\n  \"hk</w>\": 12307,\n  \"hl\": 8297,\n  \"hl</w>\": 5956,\n  \"hle</w>\": 32389,\n  \"hler</w>\": 35418,\n  \"hm\": 17913,\n  \"hm</w>\": 7631,\n  \"hmm</w>\": 13725,\n  \"hmmm</w>\": 17032,\n  \"hmmmm</w>\": 34598,\n  \"hms</w>\": 14625,\n  \"hmu</w>\": 21630,\n  \"hmv</w>\": 49288,\n  \"hn\": 22905,\n  \"hn</w>\": 7478,\n  \"hns</w>\": 48412,\n  \"ho\": 606,\n  \"ho</w>\": 2971,\n  \"hoa</w>\": 37517,\n  \"hoar\": 31628,\n  \"hoax</w>\": 33438,\n  \"hob\": 18212,\n  \"hobart</w>\": 31646,\n  \"hobb\": 16175,\n  \"hobbies</w>\": 36370,\n  \"hobbit</w>\": 23207,\n  \"hobbs</w>\": 34343,\n  \"hobby\": 41120,\n  \"hobby</w>\": 17557,\n  \"hobo\": 34613,\n  \"hobo</w>\": 41334,\n  \"hoboken</w>\": 41568,\n  \"hoc</w>\": 35880,\n  \"hoch\": 43772,\n  \"hock\": 34914,\n  \"hock</w>\": 46574,\n  \"hockey\": 16499,\n  \"hockey</w>\": 4111,\n  \"hoco</w>\": 34771,\n  \"hod\": 31062,\n  \"hodg\": 23660,\n  \"hodge</w>\": 40585,\n  \"hodges</w>\": 35061,\n  \"hodgson</w>\": 37044,\n  \"hoe\": 32502,\n  \"hoe</w>\": 11262,\n  \"hoek</w>\": 40073,\n  \"hoes</w>\": 21164,\n  \"hof\": 20186,\n  \"hof</w>\": 12789,\n  \"hofer</w>\": 38654,\n  \"hoff\": 32860,\n  \"hoff</w>\": 22751,\n  \"hofficial</w>\": 41949,\n  \"hoffman</w>\": 22026,\n  \"hog\": 12075,\n  \"hog</w>\": 13255,\n  \"hogan</w>\": 19757,\n  \"hogg</w>\": 42005,\n  \"hogs</w>\": 23242,\n  \"hogwarts</w>\": 29168,\n  \"hoh</w>\": 43947,\n  \"hoi\": 39295,\n  \"hok\": 26942,\n  \"hok</w>\": 47167,\n  \"hokies</w>\": 35168,\n  \"hokkaido</w>\": 49145,\n  \"hol\": 1187,\n  \"hol</w>\": 7349,\n  \"hola</w>\": 28724,\n  \"hold\": 36496,\n  \"hold</w>\": 3254,\n  \"holden</w>\": 21869,\n  \"holder</w>\": 7862,\n  \"holders</w>\": 10074,\n  \"holding</w>\": 5050,\n  \"holdings</w>\": 24832,\n  \"holds</w>\": 7286,\n  \"hole\": 47242,\n  \"hole</w>\": 5341,\n  \"holes</w>\": 11266,\n  \"holi\": 2093,\n  \"holi</w>\": 21926,\n  \"holic</w>\": 16348,\n  \"holics</w>\": 29782,\n  \"holiday\": 13168,\n  \"holiday</w>\": 2878,\n  \"holidays</w>\": 5372,\n  \"holiness</w>\": 37259,\n  \"holistic</w>\": 26300,\n  \"holl\": 27699,\n  \"holla</w>\": 26500,\n  \"holland\": 31608,\n  \"holland</w>\": 9978,\n  \"hollande</w>\": 47690,\n  \"holler</w>\": 49047,\n  \"holli\": 24019,\n  \"holliday</w>\": 41624,\n  \"hollow\": 41221,\n  \"hollow</w>\": 16691,\n  \"holloway</w>\": 29435,\n  \"holly\": 12731,\n  \"holly</w>\": 11923,\n  \"hollyo\": 41525,\n  \"hollyoaks</w>\": 43352,\n  \"hollywood\": 24655,\n  \"hollywood</w>\": 5518,\n  \"holm\": 34758,\n  \"holm</w>\": 12739,\n  \"holme</w>\": 46149,\n  \"holmes</w>\": 12756,\n  \"holo\": 10317,\n  \"holocau\": 14688,\n  \"holocaust</w>\": 16476,\n  \"hols</w>\": 33344,\n  \"holt</w>\": 18868,\n  \"holtz</w>\": 44743,\n  \"holy\": 13910,\n  \"holy</w>\": 4874,\n  \"hom\": 906,\n  \"hom</w>\": 47397,\n  \"homa</w>\": 9557,\n  \"homage</w>\": 17746,\n  \"home\": 2143,\n  \"home</w>\": 1137,\n  \"homebrew</w>\": 35046,\n  \"homec\": 33869,\n  \"homecoming</w>\": 9008,\n  \"homedecor</w>\": 15695,\n  \"homedepot</w>\": 38707,\n  \"homegrown</w>\": 32554,\n  \"homeitems</w>\": 42972,\n  \"homeland</w>\": 21633,\n  \"homeless\": 18403,\n  \"homeless</w>\": 9661,\n  \"homelessness</w>\": 19851,\n  \"homemade</w>\": 7889,\n  \"homeof\": 48856,\n  \"homeowner</w>\": 37267,\n  \"homeowners</w>\": 29882,\n  \"homepage</w>\": 29828,\n  \"homer\": 29307,\n  \"homer</w>\": 16931,\n  \"homers</w>\": 38333,\n  \"homes\": 19480,\n  \"homes</w>\": 5416,\n  \"homeschool</w>\": 40994,\n  \"homestead</w>\": 32609,\n  \"homeswee\": 46298,\n  \"hometown</w>\": 12238,\n  \"homework</w>\": 12495,\n  \"homicide</w>\": 21520,\n  \"homie</w>\": 12540,\n  \"homies</w>\": 18893,\n  \"homme</w>\": 26193,\n  \"homo\": 18129,\n  \"homo</w>\": 30504,\n  \"homophobia</w>\": 37875,\n  \"homophobic</w>\": 40975,\n  \"homosexual</w>\": 44288,\n  \"homosexuality</w>\": 46720,\n  \"homs</w>\": 45413,\n  \"hon\": 1279,\n  \"hon</w>\": 10296,\n  \"honda</w>\": 8553,\n  \"honduras</w>\": 29715,\n  \"hone</w>\": 38640,\n  \"honest\": 7814,\n  \"honest</w>\": 9602,\n  \"honestly</w>\": 9155,\n  \"honesty</w>\": 24939,\n  \"honey\": 9843,\n  \"honey</w>\": 6406,\n  \"honeycomb</w>\": 48583,\n  \"honeymoon</w>\": 22527,\n  \"hong\": 12144,\n  \"hong</w>\": 8598,\n  \"hongkong</w>\": 16659,\n  \"honi</w>\": 17918,\n  \"honolulu</w>\": 28096,\n  \"honor\": 9206,\n  \"honor</w>\": 3402,\n  \"honorable</w>\": 19498,\n  \"honorary</w>\": 15675,\n  \"honore\": 25868,\n  \"honored</w>\": 5494,\n  \"honoree</w>\": 38993,\n  \"honorees</w>\": 43012,\n  \"honoring</w>\": 10771,\n  \"honors</w>\": 10248,\n  \"honour</w>\": 8240,\n  \"honourable</w>\": 29855,\n  \"honoured</w>\": 11945,\n  \"honouring</w>\": 37754,\n  \"honours</w>\": 22558,\n  \"hoo\": 2300,\n  \"hoo</w>\": 7920,\n  \"hood\": 18681,\n  \"hood</w>\": 3222,\n  \"hooded</w>\": 33631,\n  \"hoodie</w>\": 13444,\n  \"hoodies</w>\": 25974,\n  \"hoods</w>\": 16664,\n  \"hoof</w>\": 44555,\n  \"hook\": 30488,\n  \"hook</w>\": 10395,\n  \"hookah</w>\": 34214,\n  \"hooked</w>\": 18138,\n  \"hookem</w>\": 31465,\n  \"hooker</w>\": 37891,\n  \"hooking</w>\": 35240,\n  \"hooks</w>\": 25068,\n  \"hooligans</w>\": 48176,\n  \"hoon</w>\": 21368,\n  \"hooo</w>\": 44538,\n  \"hoop\": 31516,\n  \"hoop</w>\": 19573,\n  \"hooper</w>\": 35221,\n  \"hoops</w>\": 9351,\n  \"hoor\": 22155,\n  \"hooray</w>\": 24940,\n  \"hoos</w>\": 46462,\n  \"hoosier</w>\": 48886,\n  \"hoosiers</w>\": 42780,\n  \"hoot</w>\": 29164,\n  \"hoover</w>\": 25691,\n  \"hop\": 10848,\n  \"hop</w>\": 5833,\n  \"hope\": 5263,\n  \"hope</w>\": 1683,\n  \"hoped</w>\": 30628,\n  \"hopeful</w>\": 21453,\n  \"hopefully</w>\": 7602,\n  \"hopeless</w>\": 35586,\n  \"hopes</w>\": 10018,\n  \"hoping</w>\": 7207,\n  \"hopkins</w>\": 17821,\n  \"hopp\": 48839,\n  \"hopped</w>\": 34220,\n  \"hopper</w>\": 21748,\n  \"hopping</w>\": 27606,\n  \"hoppy</w>\": 38359,\n  \"hops</w>\": 21137,\n  \"hor\": 1407,\n  \"hor</w>\": 33847,\n  \"hora</w>\": 26013,\n  \"horace</w>\": 39282,\n  \"horan</w>\": 26857,\n  \"horde</w>\": 44947,\n  \"hore</w>\": 15380,\n  \"horiz\": 8144,\n  \"horizon\": 17924,\n  \"horizon</w>\": 11920,\n  \"horizons</w>\": 29685,\n  \"horizontal</w>\": 25775,\n  \"hormon\": 27096,\n  \"hormone</w>\": 31283,\n  \"hormones</w>\": 35162,\n  \"horn\": 15771,\n  \"horn</w>\": 9607,\n  \"horne</w>\": 38143,\n  \"horned</w>\": 34526,\n  \"hornet</w>\": 28739,\n  \"hornets</w>\": 20124,\n  \"horns</w>\": 22109,\n  \"horny</w>\": 32622,\n  \"horo\": 21500,\n  \"horoscope</w>\": 38453,\n  \"horowitz</w>\": 44669,\n  \"horri\": 8656,\n  \"horrible</w>\": 13726,\n  \"horribly</w>\": 45484,\n  \"horrific</w>\": 25314,\n  \"horrifying</w>\": 38901,\n  \"horror\": 13787,\n  \"horror</w>\": 5032,\n  \"horrormovies</w>\": 46682,\n  \"horrors</w>\": 33321,\n  \"horse\": 8562,\n  \"horse</w>\": 4558,\n  \"horseback</w>\": 43673,\n  \"horseman</w>\": 48885,\n  \"horsepower</w>\": 36882,\n  \"horser\": 23096,\n  \"horseracing</w>\": 30693,\n  \"horses</w>\": 8809,\n  \"horseshoe</w>\": 29242,\n  \"horst</w>\": 37182,\n  \"hort</w>\": 19482,\n  \"horticul\": 27141,\n  \"horticulture</w>\": 39998,\n  \"horton</w>\": 25945,\n  \"hortons</w>\": 38422,\n  \"horus</w>\": 29794,\n  \"hos\": 44320,\n  \"hos</w>\": 25008,\n  \"hosa</w>\": 44618,\n  \"hose</w>\": 19662,\n  \"hoseok</w>\": 38817,\n  \"hosp\": 2847,\n  \"hosp</w>\": 37853,\n  \"hospice</w>\": 20533,\n  \"hospit\": 7180,\n  \"hospital\": 29399,\n  \"hospital</w>\": 3851,\n  \"hospitality</w>\": 11657,\n  \"hospitalized</w>\": 36915,\n  \"hospitals</w>\": 13816,\n  \"host\": 17403,\n  \"host</w>\": 3953,\n  \"hostage</w>\": 26119,\n  \"hoste\": 31700,\n  \"hosted</w>\": 6017,\n  \"hostel</w>\": 27225,\n  \"hostess</w>\": 39692,\n  \"hostile</w>\": 28074,\n  \"hosting</w>\": 4857,\n  \"hosts</w>\": 8718,\n  \"hot\": 2851,\n  \"hot</w>\": 2069,\n  \"hota</w>\": 43289,\n  \"hotdog</w>\": 43758,\n  \"hotel\": 14591,\n  \"hotel</w>\": 2738,\n  \"hotels</w>\": 8654,\n  \"hotline</w>\": 30516,\n  \"hotmail</w>\": 46427,\n  \"hotness</w>\": 39803,\n  \"hotra</w>\": 27109,\n  \"hotro\": 47823,\n  \"hotspot</w>\": 36606,\n  \"hotspur</w>\": 35176,\n  \"hotter</w>\": 23591,\n  \"hottest</w>\": 8279,\n  \"hottie</w>\": 22804,\n  \"hotties</w>\": 46027,\n  \"hou\": 1011,\n  \"hou</w>\": 10122,\n  \"hough</w>\": 44529,\n  \"houghton</w>\": 36133,\n  \"houn\": 39273,\n  \"houn</w>\": 33607,\n  \"hound\": 33996,\n  \"hound</w>\": 13561,\n  \"hounds</w>\": 21178,\n  \"hounews</w>\": 48373,\n  \"hour\": 14930,\n  \"hour</w>\": 2232,\n  \"hourly</w>\": 30918,\n  \"hours</w>\": 2382,\n  \"house\": 4107,\n  \"house</w>\": 1212,\n  \"housed</w>\": 37518,\n  \"household</w>\": 12412,\n  \"households</w>\": 27167,\n  \"housel\": 48685,\n  \"housemusic</w>\": 28468,\n  \"houseof\": 19928,\n  \"houses</w>\": 7791,\n  \"housewives</w>\": 38523,\n  \"housing\": 32924,\n  \"housing</w>\": 5734,\n  \"houston\": 16564,\n  \"houston</w>\": 5663,\n  \"hov</w>\": 40291,\n  \"hove</w>\": 29674,\n  \"hoven</w>\": 35559,\n  \"hover\": 36252,\n  \"hover</w>\": 49016,\n  \"hovering</w>\": 43437,\n  \"how\": 7470,\n  \"how</w>\": 829,\n  \"howar\": 37672,\n  \"howard\": 25447,\n  \"howard</w>\": 7632,\n  \"howdy</w>\": 42216,\n  \"howe\": 8179,\n  \"howe</w>\": 24614,\n  \"howell</w>\": 25297,\n  \"hower</w>\": 32920,\n  \"however</w>\": 8467,\n  \"howi\": 47883,\n  \"howie</w>\": 42939,\n  \"howl</w>\": 40332,\n  \"howling</w>\": 41771,\n  \"howto\": 38191,\n  \"howto</w>\": 44060,\n  \"hoy\": 39625,\n  \"hoy</w>\": 13278,\n  \"hoya</w>\": 40978,\n  \"hp\": 23753,\n  \"hp</w>\": 6371,\n  \"hpa</w>\": 30983,\n  \"hpc</w>\": 39936,\n  \"hpe</w>\": 33787,\n  \"hpv</w>\": 45765,\n  \"hq\": 33571,\n  \"hq</w>\": 4693,\n  \"hr\": 4810,\n  \"hr</w>\": 4086,\n  \"hra\": 21320,\n  \"hra</w>\": 17212,\n  \"hrc</w>\": 18139,\n  \"hrh</w>\": 29103,\n  \"hri\": 21068,\n  \"hrithik</w>\": 45371,\n  \"hrs</w>\": 7157,\n  \"hru</w>\": 24127,\n  \"hrw</w>\": 25064,\n  \"hs\": 9343,\n  \"hs</w>\": 2466,\n  \"hsbc</w>\": 31508,\n  \"hsc</w>\": 43510,\n  \"hse</w>\": 34057,\n  \"hsfb</w>\": 29539,\n  \"hsv</w>\": 47311,\n  \"ht\": 11123,\n  \"ht</w>\": 7801,\n  \"hta\": 23452,\n  \"hta</w>\": 49384,\n  \"htafc</w>\": 42821,\n  \"htc\": 48942,\n  \"htc</w>\": 17635,\n  \"html</w>\": 18231,\n  \"hts</w>\": 43710,\n  \"htt\": 10620,\n  \"http</w>\": 15066,\n  \"https</w>\": 30901,\n  \"httr</w>\": 49372,\n  \"httweets</w>\": 43198,\n  \"hu\": 845,\n  \"hu</w>\": 5949,\n  \"hua</w>\": 22138,\n  \"huan</w>\": 41405,\n  \"huang</w>\": 32013,\n  \"huar\": 46916,\n  \"huawe\": 17709,\n  \"huawei</w>\": 21128,\n  \"hub\": 18775,\n  \"hub</w>\": 7028,\n  \"hubb\": 23183,\n  \"hubbard</w>\": 33288,\n  \"hubble</w>\": 30421,\n  \"hubby</w>\": 16947,\n  \"hubert</w>\": 40699,\n  \"hubs</w>\": 29327,\n  \"huck\": 22909,\n  \"huckabee</w>\": 43666,\n  \"hud\": 7169,\n  \"hud</w>\": 28563,\n  \"hudder\": 22629,\n  \"huddersfield</w>\": 24220,\n  \"huddle</w>\": 33435,\n  \"hudson\": 25873,\n  \"hudson</w>\": 11260,\n  \"hue\": 48380,\n  \"hue</w>\": 21465,\n  \"hues</w>\": 38003,\n  \"huey</w>\": 39663,\n  \"huff\": 18746,\n  \"huff</w>\": 44999,\n  \"huffpost\": 45887,\n  \"hug\": 40790,\n  \"hug</w>\": 10359,\n  \"huge</w>\": 2699,\n  \"hugely</w>\": 24648,\n  \"hugged</w>\": 41333,\n  \"hugging</w>\": 27058,\n  \"hugh\": 8723,\n  \"hugh</w>\": 15385,\n  \"hughes</w>\": 11418,\n  \"hugo\": 43935,\n  \"hugo</w>\": 17132,\n  \"hugs</w>\": 14248,\n  \"huh</w>\": 13348,\n  \"huhu</w>\": 32134,\n  \"hui</w>\": 29978,\n  \"hul\": 7911,\n  \"hula</w>\": 40145,\n  \"hulk</w>\": 17637,\n  \"hull\": 25154,\n  \"hull</w>\": 10375,\n  \"hulu</w>\": 24666,\n  \"hum\": 5823,\n  \"hum</w>\": 16283,\n  \"human\": 3175,\n  \"human</w>\": 2751,\n  \"humane</w>\": 20220,\n  \"humanitarian</w>\": 14170,\n  \"humanities</w>\": 24949,\n  \"humanity</w>\": 9420,\n  \"humanright\": 44385,\n  \"humanrights</w>\": 14148,\n  \"humans</w>\": 8324,\n  \"humb\": 9988,\n  \"humber\": 30602,\n  \"humber</w>\": 38063,\n  \"humble\": 38703,\n  \"humble</w>\": 10889,\n  \"humbled</w>\": 19682,\n  \"humbling</w>\": 39757,\n  \"humbold\": 24739,\n  \"humboldt</w>\": 31389,\n  \"hume</w>\": 38197,\n  \"humid\": 14778,\n  \"humid</w>\": 27447,\n  \"humidi\": 47666,\n  \"humidity</w>\": 15469,\n  \"humil\": 27205,\n  \"humili\": 25332,\n  \"humility</w>\": 28535,\n  \"humming\": 26515,\n  \"hummingbird</w>\": 33072,\n  \"hummus</w>\": 31785,\n  \"humor\": 29369,\n  \"humor</w>\": 11186,\n  \"humorous</w>\": 38173,\n  \"humour</w>\": 19161,\n  \"hump\": 16673,\n  \"hump</w>\": 24529,\n  \"humpback</w>\": 47662,\n  \"humpday</w>\": 27693,\n  \"humph\": 19767,\n  \"humphrey</w>\": 31549,\n  \"hun\": 1616,\n  \"hun</w>\": 10795,\n  \"hundre\": 8505,\n  \"hundred</w>\": 11898,\n  \"hundreds</w>\": 8879,\n  \"hung</w>\": 13825,\n  \"hungar\": 19420,\n  \"hungarian</w>\": 23325,\n  \"hungary</w>\": 17232,\n  \"hunger\": 25565,\n  \"hunger</w>\": 10184,\n  \"hungergames</w>\": 47507,\n  \"hungover</w>\": 41110,\n  \"hungry\": 44845,\n  \"hungry</w>\": 8451,\n  \"hunk</w>\": 33912,\n  \"hunt\": 16498,\n  \"hunt</w>\": 5774,\n  \"hunted</w>\": 37373,\n  \"hunter\": 16531,\n  \"hunter</w>\": 6099,\n  \"hunters</w>\": 16115,\n  \"hunting\": 27830,\n  \"hunting</w>\": 7507,\n  \"huntington</w>\": 23521,\n  \"hunts</w>\": 34041,\n  \"huntsville</w>\": 34544,\n  \"hur\": 2305,\n  \"hur</w>\": 34523,\n  \"hurd</w>\": 44915,\n  \"hurdle</w>\": 27486,\n  \"hurdles</w>\": 25440,\n  \"huri</w>\": 42486,\n  \"hurley</w>\": 30166,\n  \"hurling</w>\": 24738,\n  \"huron</w>\": 36147,\n  \"hurrah</w>\": 40599,\n  \"hurric\": 6543,\n  \"hurrican\": 36105,\n  \"hurricane\": 24051,\n  \"hurricane</w>\": 8782,\n  \"hurricanes</w>\": 22357,\n  \"hurry</w>\": 10921,\n  \"hurst\": 44742,\n  \"hurst</w>\": 11760,\n  \"hurt</w>\": 7413,\n  \"hurting</w>\": 24017,\n  \"hurts</w>\": 13059,\n  \"hus\": 5111,\n  \"hus</w>\": 35853,\n  \"husband</w>\": 6179,\n  \"husbands</w>\": 33612,\n  \"hush</w>\": 28728,\n  \"husk\": 19246,\n  \"huskers</w>\": 26946,\n  \"huskies</w>\": 20988,\n  \"husky</w>\": 20421,\n  \"huss\": 13733,\n  \"hussain</w>\": 17940,\n  \"hussein</w>\": 31336,\n  \"hust\": 27279,\n  \"hustle</w>\": 15709,\n  \"huston</w>\": 46480,\n  \"hut\": 20924,\n  \"hut</w>\": 16503,\n  \"hutch\": 31018,\n  \"hutch</w>\": 33203,\n  \"hutchinson</w>\": 35721,\n  \"hutto\": 27662,\n  \"hutton</w>\": 38321,\n  \"hv\": 17209,\n  \"hv</w>\": 18593,\n  \"hvac</w>\": 27492,\n  \"hw\": 27491,\n  \"hw</w>\": 18876,\n  \"hwa</w>\": 32352,\n  \"hwan</w>\": 44390,\n  \"hwang</w>\": 46775,\n  \"hwy</w>\": 13812,\n  \"hy\": 1441,\n  \"hy</w>\": 17827,\n  \"hya</w>\": 31600,\n  \"hyacin\": 47263,\n  \"hyatt\": 44856,\n  \"hyatt</w>\": 25146,\n  \"hybri\": 9084,\n  \"hybrid</w>\": 10156,\n  \"hyd</w>\": 42382,\n  \"hyde\": 46484,\n  \"hyde</w>\": 16343,\n  \"hyder\": 13960,\n  \"hyderabad</w>\": 14801,\n  \"hydr\": 8031,\n  \"hydra\": 44414,\n  \"hydra</w>\": 40420,\n  \"hydrange\": 43298,\n  \"hydrate</w>\": 29628,\n  \"hydrated</w>\": 23300,\n  \"hydrating</w>\": 47653,\n  \"hydration</w>\": 24174,\n  \"hydrau\": 26017,\n  \"hydraulic</w>\": 26189,\n  \"hydro\": 8368,\n  \"hydro</w>\": 22595,\n  \"hydrogen</w>\": 20974,\n  \"hye\": 32724,\n  \"hye</w>\": 25792,\n  \"hygi\": 16277,\n  \"hygiene</w>\": 19591,\n  \"hymn</w>\": 41350,\n  \"hyo\": 38960,\n  \"hyo</w>\": 35078,\n  \"hyp\": 16964,\n  \"hype\": 30353,\n  \"hype</w>\": 11111,\n  \"hyped</w>\": 22507,\n  \"hyper\": 7997,\n  \"hyper</w>\": 22146,\n  \"hypertension</w>\": 40698,\n  \"hypno\": 23355,\n  \"hypnosis</w>\": 48138,\n  \"hypnoti\": 40440,\n  \"hypo\": 10252,\n  \"hypocr\": 30711,\n  \"hypocri\": 25606,\n  \"hypocrisy</w>\": 26296,\n  \"hypocrite</w>\": 44125,\n  \"hypothe\": 46966,\n  \"hypothesis</w>\": 44956,\n  \"hyster\": 24235,\n  \"hysteria</w>\": 45965,\n  \"hysterical</w>\": 48627,\n  \"hyuk</w>\": 20452,\n  \"hyun\": 11831,\n  \"hyun</w>\": 8589,\n  \"hyundai</w>\": 17094,\n  \"hyung\": 46901,\n  \"hyung</w>\": 16551,\n  \"hz</w>\": 32533,\n  \"i\": 72,\n  \"i</w>\": 328,\n  \"ia\": 12486,\n  \"ia</w>\": 1073,\n  \"iac\": 32838,\n  \"iac</w>\": 44063,\n  \"iaf</w>\": 40789,\n  \"iah</w>\": 35052,\n  \"iain</w>\": 30103,\n  \"ial\": 11530,\n  \"ial</w>\": 1974,\n  \"ials</w>\": 20940,\n  \"iam\": 3579,\n  \"iam</w>\": 11415,\n  \"iambic\": 43668,\n  \"iambicpent</w>\": 43891,\n  \"iamsrk</w>\": 15103,\n  \"ian\": 7723,\n  \"ian</w>\": 1800,\n  \"ians</w>\": 6451,\n  \"iansomerhalder</w>\": 47077,\n  \"iart\": 18413,\n  \"iartg</w>\": 18669,\n  \"ias\": 32303,\n  \"ias</w>\": 14620,\n  \"ib\": 3962,\n  \"ib</w>\": 13554,\n  \"iba</w>\": 39763,\n  \"ibadan</w>\": 44691,\n  \"iban\": 47145,\n  \"ibc</w>\": 49014,\n  \"ibd</w>\": 40732,\n  \"iber\": 23814,\n  \"ibi\": 12337,\n  \"ibis</w>\": 47048,\n  \"ibiza</w>\": 13853,\n  \"ible</w>\": 37792,\n  \"ibles</w>\": 44102,\n  \"ibm\": 23415,\n  \"ibm</w>\": 13918,\n  \"ibn</w>\": 25729,\n  \"ibooks</w>\": 46887,\n  \"ibra\": 15476,\n  \"ibrahi\": 40350,\n  \"ibrahim</w>\": 20816,\n  \"ibrox</w>\": 46883,\n  \"ibs</w>\": 41993,\n  \"ibu\": 43587,\n  \"ibu</w>\": 46117,\n  \"ic\": 535,\n  \"ic</w>\": 1029,\n  \"ica</w>\": 2576,\n  \"icago</w>\": 37492,\n  \"ical\": 6082,\n  \"ical</w>\": 1110,\n  \"ically</w>\": 3161,\n  \"icals</w>\": 13999,\n  \"ican\": 17653,\n  \"ican</w>\": 5246,\n  \"icans</w>\": 20511,\n  \"icar\": 37211,\n  \"ication</w>\": 21629,\n  \"icc</w>\": 12945,\n  \"ice\": 2739,\n  \"ice</w>\": 733,\n  \"iceberg</w>\": 33662,\n  \"icec\": 13636,\n  \"icecream</w>\": 21334,\n  \"iced</w>\": 8049,\n  \"icelan\": 34114,\n  \"iceland\": 46716,\n  \"iceland</w>\": 11935,\n  \"icelandic</w>\": 34705,\n  \"ices</w>\": 1931,\n  \"ich\": 5333,\n  \"ich</w>\": 1232,\n  \"icha\": 31453,\n  \"iche\": 28972,\n  \"iche</w>\": 21143,\n  \"ichi\": 21669,\n  \"ichi</w>\": 14647,\n  \"ichick</w>\": 45022,\n  \"ichiro</w>\": 43787,\n  \"ici\": 948,\n  \"ici</w>\": 22189,\n  \"icia</w>\": 11774,\n  \"icial\": 17543,\n  \"icial</w>\": 6397,\n  \"ician\": 40522,\n  \"ician</w>\": 5374,\n  \"icians</w>\": 6264,\n  \"iciary</w>\": 21329,\n  \"icic\": 46006,\n  \"icide</w>\": 6558,\n  \"icides</w>\": 28253,\n  \"icing</w>\": 7676,\n  \"icio</w>\": 24207,\n  \"icion\": 45905,\n  \"icious</w>\": 3325,\n  \"icist</w>\": 21165,\n  \"icists</w>\": 42171,\n  \"icity</w>\": 7243,\n  \"ick\": 1168,\n  \"ick</w>\": 1068,\n  \"icked</w>\": 39799,\n  \"icker</w>\": 40357,\n  \"ickers</w>\": 30701,\n  \"icki</w>\": 35468,\n  \"icking</w>\": 6619,\n  \"icks</w>\": 3727,\n  \"icky</w>\": 11587,\n  \"icn</w>\": 44516,\n  \"ico\": 13697,\n  \"ico</w>\": 3040,\n  \"icom\": 17693,\n  \"icom</w>\": 29796,\n  \"icon\": 13843,\n  \"icon</w>\": 5646,\n  \"iconic</w>\": 6959,\n  \"icons</w>\": 15553,\n  \"icop\": 9389,\n  \"icos</w>\": 32002,\n  \"ics</w>\": 1324,\n  \"ict</w>\": 6349,\n  \"icted</w>\": 36515,\n  \"iction</w>\": 40560,\n  \"icton</w>\": 36548,\n  \"icu\": 45118,\n  \"icu</w>\": 30443,\n  \"icular</w>\": 40660,\n  \"icus</w>\": 31459,\n  \"icy\": 28780,\n  \"icy</w>\": 3495,\n  \"icymi</w>\": 5315,\n  \"icz</w>\": 46387,\n  \"id\": 1568,\n  \"id</w>\": 1014,\n  \"ida\": 11032,\n  \"ida</w>\": 11600,\n  \"idad</w>\": 22462,\n  \"idaho\": 48817,\n  \"idaho</w>\": 15165,\n  \"idal</w>\": 39684,\n  \"idan</w>\": 17929,\n  \"idc</w>\": 22386,\n  \"ide\": 1909,\n  \"ide</w>\": 14104,\n  \"idea</w>\": 3612,\n  \"ideal</w>\": 8789,\n  \"ideally</w>\": 48247,\n  \"ideals</w>\": 45096,\n  \"ideas</w>\": 4452,\n  \"ident\": 7113,\n  \"identi\": 6009,\n  \"identical</w>\": 25587,\n  \"identification</w>\": 23337,\n  \"identified</w>\": 15217,\n  \"identifies</w>\": 35712,\n  \"identify</w>\": 10949,\n  \"identifying</w>\": 23589,\n  \"identities</w>\": 34292,\n  \"identity</w>\": 8892,\n  \"ideology</w>\": 25840,\n  \"iders</w>\": 8980,\n  \"ides</w>\": 31791,\n  \"idf</w>\": 28987,\n  \"idge</w>\": 35567,\n  \"idh</w>\": 44325,\n  \"idi\": 9611,\n  \"idi</w>\": 14264,\n  \"idio\": 15994,\n  \"idiot</w>\": 14087,\n  \"idiots</w>\": 20856,\n  \"idk</w>\": 8972,\n  \"idle</w>\": 34754,\n  \"idlib</w>\": 36199,\n  \"ido\": 6763,\n  \"ido</w>\": 29641,\n  \"idol\": 24866,\n  \"idol</w>\": 8884,\n  \"idols</w>\": 21398,\n  \"idr</w>\": 10106,\n  \"idri\": 46435,\n  \"idris</w>\": 41312,\n  \"ids</w>\": 6111,\n  \"idu</w>\": 28655,\n  \"idy\": 33058,\n  \"idyl\": 44879,\n  \"idyllic</w>\": 46632,\n  \"ie\": 6789,\n  \"ie</w>\": 1718,\n  \"iec</w>\": 44773,\n  \"ied</w>\": 10059,\n  \"ieee</w>\": 39860,\n  \"iel\": 27875,\n  \"iel</w>\": 22729,\n  \"ience</w>\": 1542,\n  \"ient</w>\": 13115,\n  \"ier\": 33173,\n  \"ier</w>\": 5912,\n  \"iers</w>\": 45060,\n  \"ies\": 27912,\n  \"ies</w>\": 963,\n  \"iest</w>\": 10818,\n  \"if\": 8063,\n  \"if</w>\": 878,\n  \"ifa</w>\": 37574,\n  \"ifc</w>\": 36524,\n  \"ife\": 41172,\n  \"ife</w>\": 19590,\n  \"iff\": 35753,\n  \"ification</w>\": 35755,\n  \"ified</w>\": 41403,\n  \"ift\": 31143,\n  \"iftar</w>\": 35153,\n  \"ifu</w>\": 41523,\n  \"ify</w>\": 32807,\n  \"ig\": 1089,\n  \"ig</w>\": 3072,\n  \"iga</w>\": 16493,\n  \"igan</w>\": 27468,\n  \"igans</w>\": 25419,\n  \"igbo</w>\": 44591,\n  \"ige</w>\": 10806,\n  \"igen</w>\": 33070,\n  \"iger\": 30758,\n  \"iger</w>\": 20685,\n  \"igers\": 40755,\n  \"igers</w>\": 48928,\n  \"iggy\": 46219,\n  \"iggy</w>\": 27604,\n  \"igh\": 2712,\n  \"igh</w>\": 5451,\n  \"ight\": 14571,\n  \"ight</w>\": 897,\n  \"ighton</w>\": 35292,\n  \"igi</w>\": 21901,\n  \"igle\": 29912,\n  \"iglesias</w>\": 39432,\n  \"ign\": 7303,\n  \"ign</w>\": 2326,\n  \"ignati\": 37573,\n  \"ignatius</w>\": 48318,\n  \"igne</w>\": 45843,\n  \"ignite</w>\": 25210,\n  \"ignition</w>\": 36115,\n  \"igno\": 15375,\n  \"ignor\": 7653,\n  \"ignorance</w>\": 22735,\n  \"ignorant</w>\": 26933,\n  \"ignore</w>\": 12304,\n  \"ignored</w>\": 20428,\n  \"ignores</w>\": 40129,\n  \"ignoring</w>\": 23969,\n  \"igor</w>\": 33024,\n  \"igs</w>\": 31344,\n  \"igu\": 21279,\n  \"ih\": 12162,\n  \"ih</w>\": 34135,\n  \"ihear\": 13043,\n  \"iheart\": 30332,\n  \"iheartawards</w>\": 18811,\n  \"iheartradio</w>\": 25934,\n  \"ihop</w>\": 45511,\n  \"ihri\": 39108,\n  \"ihrithik</w>\": 39326,\n  \"ii\": 5103,\n  \"ii</w>\": 2329,\n  \"iii\": 46236,\n  \"iii</w>\": 6572,\n  \"iiii\": 20133,\n  \"iiii</w>\": 45393,\n  \"iiot</w>\": 30704,\n  \"iit\": 39330,\n  \"iit</w>\": 33238,\n  \"ij\": 7337,\n  \"ija</w>\": 42802,\n  \"ik\": 3903,\n  \"ik</w>\": 10177,\n  \"ika</w>\": 18188,\n  \"ike\": 12329,\n  \"ike</w>\": 19696,\n  \"ikea</w>\": 20528,\n  \"iker</w>\": 38653,\n  \"ikh\": 44655,\n  \"ikh</w>\": 12758,\n  \"iklan\": 32028,\n  \"iklan</w>\": 29584,\n  \"iko\": 35659,\n  \"iko</w>\": 39272,\n  \"ikon\": 38543,\n  \"ikon</w>\": 19156,\n  \"iku</w>\": 17780,\n  \"il\": 543,\n  \"il</w>\": 958,\n  \"ila</w>\": 4344,\n  \"ilah</w>\": 32211,\n  \"ilan\": 13889,\n  \"ilan</w>\": 28076,\n  \"iland</w>\": 20957,\n  \"ilation</w>\": 16180,\n  \"ilay\": 45093,\n  \"ild\": 22278,\n  \"ild</w>\": 17164,\n  \"ile\": 18398,\n  \"ile</w>\": 989,\n  \"iled</w>\": 3358,\n  \"iler\": 22446,\n  \"iler</w>\": 3615,\n  \"ilers</w>\": 8975,\n  \"iles</w>\": 42274,\n  \"ili\": 2076,\n  \"ili</w>\": 19601,\n  \"ilia</w>\": 14855,\n  \"ilian</w>\": 10272,\n  \"iliary</w>\": 32585,\n  \"ilife</w>\": 42835,\n  \"ilike\": 44989,\n  \"ilinan</w>\": 48497,\n  \"iling</w>\": 3299,\n  \"ilio</w>\": 47256,\n  \"ilion</w>\": 12561,\n  \"ilis</w>\": 43442,\n  \"ilit\": 11178,\n  \"ilities</w>\": 5446,\n  \"ility</w>\": 1787,\n  \"ilive</w>\": 26478,\n  \"ill\": 828,\n  \"ill</w>\": 660,\n  \"illa\": 8877,\n  \"illa</w>\": 3043,\n  \"illac</w>\": 17218,\n  \"illage</w>\": 48922,\n  \"illard</w>\": 21920,\n  \"illary</w>\": 33667,\n  \"illas</w>\": 23404,\n  \"ille\": 18213,\n  \"ille</w>\": 5559,\n  \"illed</w>\": 2527,\n  \"illeg\": 35808,\n  \"illegal</w>\": 7983,\n  \"illegally</w>\": 24466,\n  \"illegals</w>\": 40490,\n  \"iller\": 23341,\n  \"iller</w>\": 2956,\n  \"illers</w>\": 30547,\n  \"illery</w>\": 14514,\n  \"illes</w>\": 20037,\n  \"illi\": 1086,\n  \"illi</w>\": 25187,\n  \"illia</w>\": 48776,\n  \"illiams</w>\": 30301,\n  \"illian\": 48775,\n  \"illian</w>\": 17355,\n  \"illic\": 37152,\n  \"illicit</w>\": 40998,\n  \"illie</w>\": 26083,\n  \"illin</w>\": 35868,\n  \"illing</w>\": 2803,\n  \"illini</w>\": 28957,\n  \"illino\": 8920,\n  \"illinois</w>\": 9414,\n  \"illion\": 35542,\n  \"illion</w>\": 2035,\n  \"illness</w>\": 11145,\n  \"illnesses</w>\": 33861,\n  \"illo\": 34153,\n  \"illo</w>\": 7588,\n  \"illon</w>\": 20516,\n  \"ills</w>\": 1900,\n  \"illu\": 3025,\n  \"illumin\": 11446,\n  \"illuminate</w>\": 43261,\n  \"illuminated</w>\": 28814,\n  \"illuminati</w>\": 34551,\n  \"illuminating</w>\": 46601,\n  \"illumination</w>\": 43680,\n  \"illus</w>\": 41386,\n  \"illusion</w>\": 20318,\n  \"illusions</w>\": 47429,\n  \"illustr\": 6268,\n  \"illustrate</w>\": 37468,\n  \"illustrated</w>\": 13151,\n  \"illustrates</w>\": 38129,\n  \"illustrating</w>\": 43322,\n  \"illustration</w>\": 6052,\n  \"illustrations</w>\": 17852,\n  \"illustrator</w>\": 16649,\n  \"illustri\": 43116,\n  \"illustrious</w>\": 44304,\n  \"illy\": 11707,\n  \"illy</w>\": 9532,\n  \"ilm</w>\": 36326,\n  \"ilo\": 4220,\n  \"ilo</w>\": 14835,\n  \"ilove\": 7183,\n  \"ilove</w>\": 32914,\n  \"iloveart</w>\": 41114,\n  \"ilovemy\": 28863,\n  \"iloveyou</w>\": 28829,\n  \"ils</w>\": 1543,\n  \"ilt</w>\": 25334,\n  \"ilton</w>\": 28494,\n  \"ilu\": 27337,\n  \"ilwx</w>\": 43777,\n  \"ily\": 4881,\n  \"ily</w>\": 1026,\n  \"ilya</w>\": 33377,\n  \"ilysm</w>\": 29228,\n  \"im\": 732,\n  \"im</w>\": 1496,\n  \"ima\": 2414,\n  \"ima</w>\": 6432,\n  \"imac</w>\": 40675,\n  \"imacele\": 47281,\n  \"imag\": 2316,\n  \"image\": 24101,\n  \"image</w>\": 2867,\n  \"imagery</w>\": 22828,\n  \"images</w>\": 4952,\n  \"imagin\": 18178,\n  \"imaginary</w>\": 30417,\n  \"imagination</w>\": 13783,\n  \"imaginative</w>\": 47233,\n  \"imagine\": 35752,\n  \"imagine</w>\": 4826,\n  \"imagined</w>\": 18478,\n  \"imagines</w>\": 47379,\n  \"imaging</w>\": 14231,\n  \"imagining</w>\": 27384,\n  \"imam\": 37552,\n  \"imam</w>\": 19024,\n  \"iman\": 45684,\n  \"iman</w>\": 16247,\n  \"imation</w>\": 44566,\n  \"imax</w>\": 32066,\n  \"imc</w>\": 45616,\n  \"imdanielpadilla</w>\": 36357,\n  \"imdb</w>\": 30407,\n  \"ime\": 44937,\n  \"ime</w>\": 31151,\n  \"imel\": 31594,\n  \"iment</w>\": 37157,\n  \"imer</w>\": 21802,\n  \"imes</w>\": 47744,\n  \"imf</w>\": 28403,\n  \"img</w>\": 24157,\n  \"imi</w>\": 23559,\n  \"imin\": 23942,\n  \"imit\": 23462,\n  \"imitation</w>\": 41630,\n  \"imma</w>\": 19487,\n  \"immac\": 25085,\n  \"immaculate</w>\": 29649,\n  \"immature</w>\": 45531,\n  \"immedi\": 7366,\n  \"immediate</w>\": 14440,\n  \"immediately</w>\": 10108,\n  \"immen\": 17278,\n  \"immense</w>\": 22722,\n  \"immensely</w>\": 35013,\n  \"immer\": 13954,\n  \"immerse</w>\": 46240,\n  \"immersion</w>\": 31861,\n  \"immersive</w>\": 27521,\n  \"immigr\": 5851,\n  \"immigrant</w>\": 16474,\n  \"immigrants</w>\": 14460,\n  \"immigration</w>\": 9588,\n  \"imminent</w>\": 27299,\n  \"immort\": 39244,\n  \"immortal</w>\": 24717,\n  \"immun\": 8961,\n  \"immune</w>\": 15606,\n  \"immuni\": 44571,\n  \"immunity</w>\": 26254,\n  \"immuno\": 24361,\n  \"immunology</w>\": 44483,\n  \"immunotherapy</w>\": 39185,\n  \"imo\": 26349,\n  \"imo</w>\": 13738,\n  \"imp\": 3335,\n  \"imp</w>\": 31037,\n  \"impac\": 7573,\n  \"impact\": 33036,\n  \"impact</w>\": 3844,\n  \"impacted</w>\": 21424,\n  \"impactful</w>\": 41631,\n  \"impacting</w>\": 29359,\n  \"impacts</w>\": 15069,\n  \"impair\": 36451,\n  \"impaired</w>\": 28028,\n  \"impairment</w>\": 44501,\n  \"impala</w>\": 36641,\n  \"impe\": 23612,\n  \"impeach\": 16874,\n  \"impeach</w>\": 43497,\n  \"impeachment</w>\": 32979,\n  \"impeachtrump</w>\": 38006,\n  \"impecc\": 34511,\n  \"impeccable</w>\": 40111,\n  \"impending</w>\": 34486,\n  \"imper\": 7727,\n  \"imperative</w>\": 39833,\n  \"imperfect</w>\": 46034,\n  \"imperi\": 30911,\n  \"imperial\": 32425,\n  \"imperial</w>\": 12361,\n  \"imperialism</w>\": 48855,\n  \"imperson\": 25551,\n  \"implant</w>\": 33106,\n  \"implants</w>\": 32202,\n  \"imple\": 7423,\n  \"implement</w>\": 17966,\n  \"implementation</w>\": 15102,\n  \"implemented</w>\": 24315,\n  \"implementing</w>\": 22862,\n  \"implic\": 15269,\n  \"implications</w>\": 19229,\n  \"implo\": 40337,\n  \"impo\": 45704,\n  \"import\": 2336,\n  \"import</w>\": 16294,\n  \"importance</w>\": 6821,\n  \"important</w>\": 2829,\n  \"importantly</w>\": 21580,\n  \"imported</w>\": 28798,\n  \"imports</w>\": 25286,\n  \"impose</w>\": 35879,\n  \"imposed</w>\": 25871,\n  \"imposing</w>\": 42289,\n  \"impossible</w>\": 9815,\n  \"impre\": 3763,\n  \"impress</w>\": 20015,\n  \"impressed</w>\": 9689,\n  \"impression</w>\": 14468,\n  \"impressionism</w>\": 36114,\n  \"impressionist</w>\": 44904,\n  \"impressions</w>\": 22276,\n  \"impressive</w>\": 6634,\n  \"imprint</w>\": 43863,\n  \"imprison\": 22141,\n  \"imprisoned</w>\": 32999,\n  \"imprisonment</w>\": 39024,\n  \"impro\": 2531,\n  \"impromp\": 28100,\n  \"impromptu</w>\": 28611,\n  \"improv</w>\": 22868,\n  \"improve</w>\": 4971,\n  \"improved</w>\": 9446,\n  \"improvement</w>\": 10790,\n  \"improvements</w>\": 16320,\n  \"improves</w>\": 18035,\n  \"improving</w>\": 10381,\n  \"improvis\": 32343,\n  \"improvised</w>\": 40886,\n  \"impulse</w>\": 29683,\n  \"impy</w>\": 42690,\n  \"imran\": 19647,\n  \"imran</w>\": 19212,\n  \"imrankhan\": 25956,\n  \"imrankhanpti</w>\": 26688,\n  \"ims</w>\": 17800,\n  \"imsa</w>\": 37262,\n  \"imv\": 35731,\n  \"imvkohli</w>\": 37136,\n  \"imwith\": 26822,\n  \"imwithher</w>\": 32651,\n  \"in\": 512,\n  \"in</w>\": 530,\n  \"ina\": 18026,\n  \"ina</w>\": 1366,\n  \"inability</w>\": 47517,\n  \"inaccurate</w>\": 49192,\n  \"inaction</w>\": 41916,\n  \"inactive</w>\": 49274,\n  \"inadequate</w>\": 43403,\n  \"inak\": 46549,\n  \"inal</w>\": 19178,\n  \"inals</w>\": 26438,\n  \"inan</w>\": 26204,\n  \"inappropriate</w>\": 26722,\n  \"inari</w>\": 48620,\n  \"inary</w>\": 11337,\n  \"inas\": 36731,\n  \"inas</w>\": 12362,\n  \"inated</w>\": 38530,\n  \"ination</w>\": 4706,\n  \"inau\": 10832,\n  \"inaugu\": 11309,\n  \"inaugur\": 11448,\n  \"inaugural</w>\": 11340,\n  \"inaugurated</w>\": 29011,\n  \"inauguration</w>\": 16805,\n  \"inbound</w>\": 24420,\n  \"inbox</w>\": 18683,\n  \"inc\": 14570,\n  \"inc</w>\": 4438,\n  \"incan\": 45964,\n  \"incar\": 18070,\n  \"incarcer\": 26334,\n  \"incarcerated</w>\": 49178,\n  \"incarceration</w>\": 39887,\n  \"incase</w>\": 30463,\n  \"ince</w>\": 44303,\n  \"incen\": 13259,\n  \"incense</w>\": 35059,\n  \"incentive</w>\": 29024,\n  \"incentives</w>\": 29813,\n  \"inception</w>\": 36653,\n  \"inch</w>\": 6523,\n  \"incheon</w>\": 30645,\n  \"inches</w>\": 10809,\n  \"inci\": 5747,\n  \"incidence</w>\": 43371,\n  \"incident</w>\": 10103,\n  \"incidents</w>\": 22120,\n  \"incindia</w>\": 26161,\n  \"inciner\": 46434,\n  \"incl\": 27857,\n  \"incl</w>\": 13338,\n  \"inclined</w>\": 45470,\n  \"inclu\": 1738,\n  \"include</w>\": 5942,\n  \"included</w>\": 7414,\n  \"includes</w>\": 6197,\n  \"including</w>\": 2814,\n  \"inclusion</w>\": 12079,\n  \"inclusive</w>\": 13393,\n  \"income</w>\": 8044,\n  \"incoming</w>\": 15416,\n  \"incomparable</w>\": 36027,\n  \"incompetent</w>\": 45069,\n  \"incomplete</w>\": 34040,\n  \"incon\": 42372,\n  \"inconvenience</w>\": 40563,\n  \"incorpor\": 19335,\n  \"incorporate</w>\": 34168,\n  \"incorporated</w>\": 29494,\n  \"incorporating</w>\": 40303,\n  \"incorrect</w>\": 31872,\n  \"incre\": 1870,\n  \"increase</w>\": 5230,\n  \"increased</w>\": 9156,\n  \"increases</w>\": 13797,\n  \"increasing</w>\": 10270,\n  \"increasingly</w>\": 16106,\n  \"incredi\": 2883,\n  \"incredible\": 22128,\n  \"incredible</w>\": 3457,\n  \"incredibleindia</w>\": 24680,\n  \"incredibles</w>\": 48641,\n  \"incredibly</w>\": 9513,\n  \"incu\": 38830,\n  \"incub\": 24587,\n  \"incubator</w>\": 35736,\n  \"incumb\": 32246,\n  \"incumbent</w>\": 38038,\n  \"incur\": 42356,\n  \"ind\": 5386,\n  \"ind</w>\": 4655,\n  \"inda</w>\": 15710,\n  \"inde\": 2645,\n  \"indeed</w>\": 10031,\n  \"indefin\": 29501,\n  \"indefinitely</w>\": 43750,\n  \"independ\": 4147,\n  \"independence\": 23117,\n  \"independence</w>\": 7955,\n  \"independenceday</w>\": 25971,\n  \"independent\": 33844,\n  \"independent</w>\": 7088,\n  \"independently</w>\": 39831,\n  \"inder</w>\": 29225,\n  \"index\": 35209,\n  \"index</w>\": 9458,\n  \"indhoven</w>\": 44229,\n  \"indi\": 1098,\n  \"indi</w>\": 46536,\n  \"india\": 27067,\n  \"india</w>\": 1762,\n  \"indian\": 7685,\n  \"indian</w>\": 3606,\n  \"indiana</w>\": 8615,\n  \"indianapolis</w>\": 17196,\n  \"indianfootball</w>\": 45979,\n  \"indians</w>\": 10271,\n  \"indic\": 7136,\n  \"indicate</w>\": 26679,\n  \"indicated</w>\": 39416,\n  \"indicates</w>\": 29412,\n  \"indication</w>\": 38539,\n  \"indicator</w>\": 24776,\n  \"indicators</w>\": 30054,\n  \"indicted</w>\": 34992,\n  \"indictment</w>\": 42278,\n  \"indie\": 5260,\n  \"indie</w>\": 9383,\n  \"indiedev</w>\": 10863,\n  \"indiefilm</w>\": 22588,\n  \"indiegame</w>\": 17969,\n  \"indiegamedev</w>\": 40466,\n  \"indiegames</w>\": 35864,\n  \"indiegogo</w>\": 38057,\n  \"indies</w>\": 23618,\n  \"indiffe\": 41372,\n  \"indigen\": 8348,\n  \"indigenous</w>\": 9303,\n  \"indigo</w>\": 21002,\n  \"indira</w>\": 43887,\n  \"indirec\": 26398,\n  \"indirect</w>\": 35416,\n  \"indivi\": 5649,\n  \"individu\": 9574,\n  \"individual</w>\": 8512,\n  \"individually</w>\": 33782,\n  \"individuals</w>\": 11990,\n  \"indo\": 26303,\n  \"indo</w>\": 18297,\n  \"indom\": 42926,\n  \"indone\": 6180,\n  \"indonesia</w>\": 7229,\n  \"indonesian</w>\": 19593,\n  \"indoor\": 44478,\n  \"indoor</w>\": 9546,\n  \"indoors</w>\": 22973,\n  \"indore</w>\": 46143,\n  \"indu\": 2298,\n  \"induc\": 7973,\n  \"induced</w>\": 24103,\n  \"inducted</w>\": 20596,\n  \"inductee</w>\": 39558,\n  \"inductees</w>\": 44796,\n  \"induction</w>\": 18338,\n  \"indul\": 19402,\n  \"indulg\": 28388,\n  \"indulge</w>\": 24851,\n  \"indulgence</w>\": 40856,\n  \"indulgent</w>\": 49147,\n  \"industri\": 5082,\n  \"industrial\": 30853,\n  \"industrial</w>\": 7520,\n  \"industries</w>\": 11700,\n  \"industry\": 47407,\n  \"industry</w>\": 3318,\n  \"indv\": 16942,\n  \"indy\": 9821,\n  \"indy</w>\": 10098,\n  \"indycar</w>\": 20484,\n  \"indyref</w>\": 22569,\n  \"ine\": 855,\n  \"ine</w>\": 715,\n  \"ineau</w>\": 38122,\n  \"inec</w>\": 45214,\n  \"ined</w>\": 2038,\n  \"inee\": 43252,\n  \"inee</w>\": 7986,\n  \"inees</w>\": 13056,\n  \"ineffe\": 47202,\n  \"inely</w>\": 18234,\n  \"inem</w>\": 48876,\n  \"inema</w>\": 29232,\n  \"inen</w>\": 44365,\n  \"inequalities</w>\": 45507,\n  \"inequality</w>\": 17372,\n  \"iner\": 17438,\n  \"iner</w>\": 5155,\n  \"iners</w>\": 41863,\n  \"ines</w>\": 2137,\n  \"inese</w>\": 35966,\n  \"iness</w>\": 1463,\n  \"inet</w>\": 8121,\n  \"inette</w>\": 38911,\n  \"inev\": 19527,\n  \"inevit\": 45871,\n  \"inevitable</w>\": 25004,\n  \"inews</w>\": 24300,\n  \"inexpensive</w>\": 38614,\n  \"iney</w>\": 30254,\n  \"inez</w>\": 12700,\n  \"inf\": 1529,\n  \"inf</w>\": 35241,\n  \"infamous</w>\": 18688,\n  \"infan\": 17219,\n  \"infant</w>\": 19192,\n  \"infantry</w>\": 21655,\n  \"infants</w>\": 34726,\n  \"infe\": 7164,\n  \"infec\": 26088,\n  \"infected</w>\": 26136,\n  \"infection</w>\": 14774,\n  \"infections</w>\": 22227,\n  \"infectious</w>\": 29157,\n  \"infeld</w>\": 25035,\n  \"infer\": 16258,\n  \"inferno</w>\": 31290,\n  \"infertility</w>\": 40701,\n  \"infield</w>\": 48933,\n  \"infiltr\": 28683,\n  \"infin\": 6246,\n  \"infinite</w>\": 12748,\n  \"infiniti</w>\": 34644,\n  \"infinity\": 34863,\n  \"infinity</w>\": 12895,\n  \"infl\": 7627,\n  \"inflam\": 16080,\n  \"inflammation</w>\": 24893,\n  \"inflammatory</w>\": 26831,\n  \"inflatable</w>\": 30135,\n  \"inflation</w>\": 17497,\n  \"inflicted</w>\": 48188,\n  \"influ\": 4835,\n  \"influen\": 13229,\n  \"influence</w>\": 9199,\n  \"influenced</w>\": 21183,\n  \"influencer</w>\": 25013,\n  \"influencers</w>\": 29891,\n  \"influences</w>\": 24926,\n  \"influencing</w>\": 45126,\n  \"influential</w>\": 17553,\n  \"influenza</w>\": 39897,\n  \"info\": 5680,\n  \"info</w>\": 2222,\n  \"infographic</w>\": 10076,\n  \"infographics</w>\": 33172,\n  \"infor\": 31773,\n  \"inform\": 10241,\n  \"inform</w>\": 19449,\n  \"informal</w>\": 25705,\n  \"informat\": 29625,\n  \"informatics</w>\": 35685,\n  \"information</w>\": 3204,\n  \"informative</w>\": 19364,\n  \"informed</w>\": 13876,\n  \"informing</w>\": 45388,\n  \"informs</w>\": 48440,\n  \"infosec</w>\": 17863,\n  \"infr\": 29718,\n  \"infra\": 7312,\n  \"infra</w>\": 45877,\n  \"infrared</w>\": 22867,\n  \"infrastructure</w>\": 9034,\n  \"infringe\": 44882,\n  \"infringement</w>\": 48712,\n  \"infront</w>\": 37668,\n  \"infu\": 15048,\n  \"infuri\": 48461,\n  \"infused</w>\": 21461,\n  \"infusion</w>\": 43464,\n  \"ing\": 653,\n  \"ing</w>\": 519,\n  \"inga</w>\": 15233,\n  \"ingco</w>\": 40444,\n  \"ingday</w>\": 16561,\n  \"ingdon</w>\": 38731,\n  \"inge\": 11790,\n  \"inge</w>\": 7071,\n  \"inged</w>\": 30046,\n  \"ingen</w>\": 19088,\n  \"ingeni\": 36884,\n  \"inger\": 33883,\n  \"inger</w>\": 3541,\n  \"ingfor\": 33430,\n  \"ingh\": 9170,\n  \"ingh</w>\": 30495,\n  \"ingham\": 24497,\n  \"ingham</w>\": 4291,\n  \"inghamshire</w>\": 39289,\n  \"inghour</w>\": 42728,\n  \"inging</w>\": 4066,\n  \"ingl\": 45662,\n  \"ingle\": 22228,\n  \"ingle</w>\": 17005,\n  \"ingles</w>\": 24490,\n  \"ingley</w>\": 44428,\n  \"inglis</w>\": 46327,\n  \"ingly</w>\": 4796,\n  \"ingnow</w>\": 34766,\n  \"ingo\": 30175,\n  \"ingo</w>\": 9012,\n  \"ingra\": 45165,\n  \"ingrad</w>\": 44124,\n  \"ingram</w>\": 26998,\n  \"ingredi\": 9272,\n  \"ingredient</w>\": 19799,\n  \"ingredients</w>\": 11788,\n  \"ingrid</w>\": 33496,\n  \"ings</w>\": 895,\n  \"ingthe\": 20170,\n  \"ingtips</w>\": 39373,\n  \"ington\": 11846,\n  \"ington</w>\": 2156,\n  \"ingu\": 8714,\n  \"ingual</w>\": 22795,\n  \"ingue</w>\": 36838,\n  \"ingui\": 12788,\n  \"inguish</w>\": 36146,\n  \"inha</w>\": 32612,\n  \"inhabit\": 36189,\n  \"inhabitants</w>\": 44968,\n  \"inhal\": 30786,\n  \"inhe\": 32617,\n  \"inher\": 24611,\n  \"inherent</w>\": 47327,\n  \"inherit\": 34322,\n  \"inheritance</w>\": 39341,\n  \"inherited</w>\": 39111,\n  \"inhi\": 25557,\n  \"inhibit\": 32196,\n  \"inho</w>\": 12984,\n  \"ini\": 6154,\n  \"ini</w>\": 3581,\n  \"inian</w>\": 36638,\n  \"inim\": 38717,\n  \"inindia</w>\": 34021,\n  \"ining</w>\": 1389,\n  \"inist</w>\": 30976,\n  \"init</w>\": 42670,\n  \"initi\": 4580,\n  \"initial</w>\": 13980,\n  \"initially</w>\": 28123,\n  \"initials</w>\": 48794,\n  \"initiated</w>\": 27756,\n  \"initiation</w>\": 41009,\n  \"initiative</w>\": 8152,\n  \"initiatives</w>\": 16549,\n  \"inity</w>\": 22126,\n  \"inj\": 5112,\n  \"injec\": 13688,\n  \"injection</w>\": 21438,\n  \"inju\": 5006,\n  \"injured</w>\": 7505,\n  \"injuries</w>\": 9481,\n  \"injury</w>\": 6223,\n  \"injustice</w>\": 20541,\n  \"ink\": 4547,\n  \"ink</w>\": 967,\n  \"inka</w>\": 40685,\n  \"inked</w>\": 29356,\n  \"inki\": 46176,\n  \"inkigayo</w>\": 47882,\n  \"inking</w>\": 37586,\n  \"inks</w>\": 20966,\n  \"inktober</w>\": 9387,\n  \"inland</w>\": 21943,\n  \"inlet</w>\": 35161,\n  \"inline</w>\": 45004,\n  \"inlove</w>\": 28415,\n  \"inmate</w>\": 32341,\n  \"inmates</w>\": 28216,\n  \"inmy\": 42657,\n  \"inn\": 27260,\n  \"inn</w>\": 5569,\n  \"inna</w>\": 35088,\n  \"inner\": 24512,\n  \"inner</w>\": 6955,\n  \"inning</w>\": 4415,\n  \"innings</w>\": 11580,\n  \"innis\": 44059,\n  \"inno\": 7961,\n  \"innocence</w>\": 26383,\n  \"innocent</w>\": 11241,\n  \"innov\": 2890,\n  \"innovate</w>\": 24549,\n  \"innovation\": 33063,\n  \"innovation</w>\": 4272,\n  \"innovations</w>\": 18817,\n  \"innovative</w>\": 8494,\n  \"innovator</w>\": 34735,\n  \"innovators</w>\": 27834,\n  \"ino\": 4211,\n  \"ino</w>\": 2691,\n  \"inoa</w>\": 25649,\n  \"inos</w>\": 21828,\n  \"inous</w>\": 47801,\n  \"inox</w>\": 22698,\n  \"input</w>\": 16952,\n  \"inputs</w>\": 48763,\n  \"inqu\": 10628,\n  \"inqui\": 18527,\n  \"inquirer</w>\": 45172,\n  \"inquiries</w>\": 29469,\n  \"inquiry</w>\": 15865,\n  \"inquis\": 31171,\n  \"inr</w>\": 36325,\n  \"ins\": 12786,\n  \"ins</w>\": 1041,\n  \"insan\": 7875,\n  \"insane</w>\": 10260,\n  \"insanely</w>\": 27846,\n  \"insanity</w>\": 26645,\n  \"inscribed</w>\": 49168,\n  \"inscription</w>\": 41127,\n  \"insec\": 15744,\n  \"insect</w>\": 21297,\n  \"insects</w>\": 18714,\n  \"insecure</w>\": 35112,\n  \"insecurity</w>\": 36964,\n  \"inser\": 13830,\n  \"insert</w>\": 18807,\n  \"insi\": 3453,\n  \"inside\": 19141,\n  \"inside</w>\": 2912,\n  \"insider</w>\": 13300,\n  \"insiders</w>\": 32171,\n  \"insig\": 40503,\n  \"insight</w>\": 8795,\n  \"insightful</w>\": 20354,\n  \"insights</w>\": 8729,\n  \"insignia</w>\": 48864,\n  \"insist</w>\": 35504,\n  \"insisted</w>\": 40423,\n  \"insists</w>\": 27255,\n  \"inski</w>\": 32630,\n  \"insky</w>\": 24607,\n  \"insol\": 42366,\n  \"insom\": 21755,\n  \"insomni\": 42040,\n  \"insomnia</w>\": 30598,\n  \"inson</w>\": 21007,\n  \"insp\": 1597,\n  \"inspec\": 7915,\n  \"inspect</w>\": 40815,\n  \"inspecting</w>\": 40565,\n  \"inspection</w>\": 15142,\n  \"inspections</w>\": 39513,\n  \"inspector</w>\": 20514,\n  \"inspir\": 2573,\n  \"inspiration</w>\": 4195,\n  \"inspirational\": 41936,\n  \"inspirational</w>\": 9855,\n  \"inspirations</w>\": 35093,\n  \"inspire\": 27901,\n  \"inspire</w>\": 8583,\n  \"inspired\": 39849,\n  \"inspired</w>\": 3516,\n  \"inspires</w>\": 17245,\n  \"inspiring\": 41847,\n  \"inspiring</w>\": 5705,\n  \"inspo</w>\": 26897,\n  \"inst\": 1264,\n  \"inst</w>\": 1581,\n  \"insta\": 22411,\n  \"insta</w>\": 11694,\n  \"instability</w>\": 41377,\n  \"instac\": 46678,\n  \"instaf\": 33800,\n  \"instag\": 14612,\n  \"instagood</w>\": 23718,\n  \"instagram\": 27910,\n  \"instagram</w>\": 2659,\n  \"instal\": 38805,\n  \"install\": 6940,\n  \"install</w>\": 11168,\n  \"installation</w>\": 9358,\n  \"installations</w>\": 27909,\n  \"installed</w>\": 8807,\n  \"installing</w>\": 18301,\n  \"installment</w>\": 25315,\n  \"installs</w>\": 45568,\n  \"instalment</w>\": 47766,\n  \"instance</w>\": 34572,\n  \"instant\": 38810,\n  \"instant</w>\": 10635,\n  \"instantly</w>\": 17703,\n  \"instap\": 23758,\n  \"instapic</w>\": 34378,\n  \"instaweather\": 43078,\n  \"instaweatherpro</w>\": 43150,\n  \"inste\": 3571,\n  \"instead</w>\": 4191,\n  \"instein</w>\": 13421,\n  \"instem</w>\": 27030,\n  \"instin\": 23382,\n  \"instinct</w>\": 30544,\n  \"institu\": 4257,\n  \"institute</w>\": 5861,\n  \"institutes</w>\": 43674,\n  \"institution</w>\": 18823,\n  \"institutional</w>\": 27442,\n  \"institutions</w>\": 15207,\n  \"instore</w>\": 41679,\n  \"instru\": 4544,\n  \"instruc\": 19648,\n  \"instruction</w>\": 19407,\n  \"instructional</w>\": 31022,\n  \"instructions</w>\": 17040,\n  \"instructor</w>\": 16087,\n  \"instructors</w>\": 31998,\n  \"instrument\": 42196,\n  \"instrument</w>\": 15806,\n  \"instrumental</w>\": 23041,\n  \"instruments</w>\": 14793,\n  \"instyle</w>\": 41321,\n  \"insu\": 8805,\n  \"insul\": 9615,\n  \"insulated</w>\": 42051,\n  \"insulation</w>\": 28194,\n  \"insulin</w>\": 29311,\n  \"insult</w>\": 26673,\n  \"insulting</w>\": 39646,\n  \"insults</w>\": 40451,\n  \"insur\": 5024,\n  \"insurance</w>\": 5870,\n  \"insured</w>\": 31321,\n  \"insurers</w>\": 43142,\n  \"insurtech</w>\": 28716,\n  \"int\": 1828,\n  \"int</w>\": 1207,\n  \"inta</w>\": 38314,\n  \"intact</w>\": 26870,\n  \"intake</w>\": 19539,\n  \"intan\": 47695,\n  \"inte\": 1598,\n  \"inte</w>\": 41900,\n  \"intech</w>\": 26504,\n  \"inted</w>\": 6147,\n  \"integr\": 5151,\n  \"integral</w>\": 27018,\n  \"integrate</w>\": 25735,\n  \"integrated</w>\": 12797,\n  \"integrating</w>\": 31555,\n  \"integration</w>\": 12583,\n  \"integrity</w>\": 14791,\n  \"intel\": 11778,\n  \"intel</w>\": 11426,\n  \"intellec\": 13281,\n  \"intellect</w>\": 47828,\n  \"intellectu\": 31966,\n  \"intellectual</w>\": 18069,\n  \"intelli\": 5324,\n  \"intellig\": 5632,\n  \"intelligence</w>\": 6846,\n  \"intelligent</w>\": 14063,\n  \"inten\": 2967,\n  \"intend</w>\": 36674,\n  \"intended</w>\": 16812,\n  \"intense</w>\": 10258,\n  \"intensi\": 22928,\n  \"intensity</w>\": 19956,\n  \"intensive</w>\": 21049,\n  \"intent</w>\": 18881,\n  \"intention</w>\": 26786,\n  \"intentional</w>\": 29536,\n  \"intentionally</w>\": 31215,\n  \"intentions</w>\": 26710,\n  \"inter\": 1006,\n  \"inter</w>\": 10093,\n  \"interact</w>\": 21736,\n  \"interacting</w>\": 35045,\n  \"interaction</w>\": 17650,\n  \"interactions</w>\": 22162,\n  \"interactive</w>\": 9456,\n  \"intercep\": 23676,\n  \"interception</w>\": 48762,\n  \"interceptions</w>\": 45313,\n  \"interchange</w>\": 34222,\n  \"intercontinental</w>\": 31983,\n  \"interdisciplinary</w>\": 38132,\n  \"intere\": 2008,\n  \"interest</w>\": 5095,\n  \"interested</w>\": 4620,\n  \"interesting</w>\": 3628,\n  \"interests</w>\": 16425,\n  \"interface</w>\": 18753,\n  \"interfaith</w>\": 38399,\n  \"interference</w>\": 29099,\n  \"interim</w>\": 19509,\n  \"interior\": 10700,\n  \"interior</w>\": 7305,\n  \"interiordesign</w>\": 12902,\n  \"interiors</w>\": 14836,\n  \"intermedi\": 20246,\n  \"intermediate</w>\": 24304,\n  \"intermission</w>\": 44805,\n  \"intermitt\": 44946,\n  \"intern\": 9976,\n  \"intern</w>\": 14068,\n  \"internal</w>\": 11285,\n  \"internally</w>\": 41134,\n  \"internation\": 42534,\n  \"international\": 8566,\n  \"international</w>\": 2436,\n  \"internationaldayof\": 41518,\n  \"internationally</w>\": 24059,\n  \"internationalwomensday</w>\": 17682,\n  \"interne\": 32713,\n  \"internet\": 30180,\n  \"internet</w>\": 4757,\n  \"internetof\": 44449,\n  \"internetofthings</w>\": 45925,\n  \"interns</w>\": 19902,\n  \"internship</w>\": 16661,\n  \"internships</w>\": 39410,\n  \"interoper\": 45754,\n  \"interpre\": 11162,\n  \"interpret\": 49154,\n  \"interpret</w>\": 40459,\n  \"interpretation</w>\": 20652,\n  \"interpreted</w>\": 42157,\n  \"interpreting</w>\": 46525,\n  \"interro\": 29548,\n  \"interrup\": 21609,\n  \"interrupt</w>\": 48449,\n  \"interrupted</w>\": 30288,\n  \"intersec\": 45246,\n  \"intersection</w>\": 19210,\n  \"interstate</w>\": 21963,\n  \"interstellar</w>\": 41506,\n  \"interval</w>\": 36032,\n  \"intervals</w>\": 44884,\n  \"interven\": 18245,\n  \"intervention</w>\": 16804,\n  \"interventions</w>\": 28848,\n  \"interview</w>\": 2885,\n  \"interviewed</w>\": 11688,\n  \"interviewing</w>\": 16399,\n  \"interviews</w>\": 9910,\n  \"intestin\": 37938,\n  \"intestinal</w>\": 38896,\n  \"inthe\": 7486,\n  \"inti\": 14459,\n  \"intim\": 38832,\n  \"intimacy</w>\": 46430,\n  \"intimate</w>\": 16382,\n  \"intimid\": 24041,\n  \"intimidating</w>\": 44405,\n  \"intimidation</w>\": 49258,\n  \"inting</w>\": 15571,\n  \"intl\": 38186,\n  \"intl</w>\": 14224,\n  \"intment</w>\": 9020,\n  \"intments</w>\": 21420,\n  \"into\": 35235,\n  \"into</w>\": 1095,\n  \"intoler\": 28534,\n  \"intolerance</w>\": 37808,\n  \"intothe\": 38511,\n  \"intra\": 20922,\n  \"intrac\": 46195,\n  \"intram\": 40956,\n  \"intre\": 29397,\n  \"intrepid</w>\": 39127,\n  \"intri\": 15421,\n  \"intric\": 23763,\n  \"intricate</w>\": 29616,\n  \"intrigu\": 18856,\n  \"intrigue</w>\": 45140,\n  \"intrigued</w>\": 40034,\n  \"intriguing</w>\": 24334,\n  \"intrin\": 45181,\n  \"intro\": 2999,\n  \"intro</w>\": 13224,\n  \"introduc\": 3621,\n  \"introduce</w>\": 9813,\n  \"introduced</w>\": 10446,\n  \"introduces</w>\": 12933,\n  \"introducing</w>\": 6256,\n  \"introduction</w>\": 11812,\n  \"introductory</w>\": 38121,\n  \"intru\": 22949,\n  \"ints</w>\": 2514,\n  \"intu\": 17225,\n  \"intuition</w>\": 40897,\n  \"intuitive</w>\": 35224,\n  \"inu\": 21131,\n  \"inuit</w>\": 41250,\n  \"inus</w>\": 45857,\n  \"inv\": 2279,\n  \"inv</w>\": 43786,\n  \"inva\": 10084,\n  \"invade</w>\": 34609,\n  \"invaded</w>\": 32596,\n  \"invaders</w>\": 35188,\n  \"invading</w>\": 40101,\n  \"invali\": 31592,\n  \"invalid</w>\": 46998,\n  \"invaluable</w>\": 33976,\n  \"invasi\": 38100,\n  \"invasion</w>\": 13378,\n  \"invasive</w>\": 19554,\n  \"inve\": 2024,\n  \"inven\": 26233,\n  \"invent\": 11665,\n  \"invent</w>\": 23558,\n  \"invented</w>\": 14100,\n  \"invention</w>\": 23607,\n  \"inventions</w>\": 44914,\n  \"inventor</w>\": 22836,\n  \"inventory</w>\": 19444,\n  \"inver\": 12061,\n  \"inverness</w>\": 33080,\n  \"inverte\": 46397,\n  \"inverted</w>\": 40709,\n  \"invest\": 4180,\n  \"invest</w>\": 9716,\n  \"invested</w>\": 22536,\n  \"investig\": 4626,\n  \"investigate</w>\": 15703,\n  \"investigated</w>\": 29180,\n  \"investigates</w>\": 29621,\n  \"investigating</w>\": 13713,\n  \"investigation</w>\": 8194,\n  \"investigations</w>\": 24020,\n  \"investigative</w>\": 30233,\n  \"investigator</w>\": 30528,\n  \"investigators</w>\": 24121,\n  \"investin\": 40195,\n  \"investing</w>\": 10554,\n  \"investment</w>\": 5605,\n  \"investments</w>\": 14675,\n  \"investor</w>\": 15490,\n  \"investors</w>\": 10486,\n  \"invests</w>\": 38378,\n  \"invic\": 25253,\n  \"invigor\": 48722,\n  \"invin\": 30252,\n  \"invincible</w>\": 38052,\n  \"invisible</w>\": 16093,\n  \"invit\": 12454,\n  \"invitation</w>\": 15032,\n  \"invitational</w>\": 14511,\n  \"invitations</w>\": 40120,\n  \"invite</w>\": 8109,\n  \"invited</w>\": 7731,\n  \"invites</w>\": 16034,\n  \"inviting</w>\": 14349,\n  \"invo\": 29417,\n  \"invol\": 4000,\n  \"involve</w>\": 26325,\n  \"involved</w>\": 5320,\n  \"involvement</w>\": 19502,\n  \"involves</w>\": 22652,\n  \"involving</w>\": 14786,\n  \"inwx</w>\": 35674,\n  \"iny</w>\": 23257,\n  \"inyour\": 47954,\n  \"io\": 3167,\n  \"io</w>\": 3752,\n  \"ioc</w>\": 43018,\n  \"iom\": 33000,\n  \"iom</w>\": 31135,\n  \"ion\": 14871,\n  \"ion</w>\": 3668,\n  \"ions</w>\": 26289,\n  \"ior\": 7354,\n  \"ior</w>\": 2498,\n  \"iority</w>\": 46016,\n  \"iors</w>\": 6427,\n  \"ios</w>\": 6614,\n  \"iot\": 32694,\n  \"iot</w>\": 6627,\n  \"iota</w>\": 37294,\n  \"ious</w>\": 6994,\n  \"iously</w>\": 38233,\n  \"iow\": 7439,\n  \"iowa\": 38847,\n  \"iowa</w>\": 8290,\n  \"ip\": 1719,\n  \"ip</w>\": 8600,\n  \"ipa</w>\": 11199,\n  \"ipad\": 39067,\n  \"ipad</w>\": 7491,\n  \"ipads</w>\": 35281,\n  \"ipc</w>\": 41981,\n  \"iphone\": 26030,\n  \"iphone</w>\": 4314,\n  \"iphones</w>\": 37561,\n  \"ipl</w>\": 13440,\n  \"ipment</w>\": 37824,\n  \"ipo\": 40218,\n  \"ipo</w>\": 24090,\n  \"ipod</w>\": 17889,\n  \"ipp\": 31706,\n  \"ips</w>\": 26910,\n  \"ipsw\": 22221,\n  \"ipswich</w>\": 24494,\n  \"iq\": 15554,\n  \"iq</w>\": 19996,\n  \"iqbal</w>\": 33553,\n  \"ir\": 582,\n  \"ir</w>\": 742,\n  \"ira\": 4923,\n  \"ira</w>\": 5371,\n  \"irah</w>\": 35724,\n  \"iran\": 19273,\n  \"iran</w>\": 5075,\n  \"irandeal</w>\": 46533,\n  \"irani</w>\": 37984,\n  \"iranian</w>\": 14158,\n  \"iraq</w>\": 8543,\n  \"iraqi</w>\": 18617,\n  \"irc</w>\": 41527,\n  \"ird</w>\": 2770,\n  \"ire\": 3013,\n  \"ire</w>\": 1454,\n  \"ired\": 32728,\n  \"ired</w>\": 2995,\n  \"ireland\": 32806,\n  \"ireland</w>\": 4157,\n  \"irene</w>\": 21600,\n  \"ires</w>\": 12435,\n  \"irez</w>\": 21581,\n  \"irgc</w>\": 47942,\n  \"iri\": 2155,\n  \"iri</w>\": 13880,\n  \"irical</w>\": 33366,\n  \"irie</w>\": 42979,\n  \"irina</w>\": 46664,\n  \"iring</w>\": 10169,\n  \"iris</w>\": 16437,\n  \"irish\": 9386,\n  \"irish</w>\": 4889,\n  \"irl\": 34494,\n  \"irl</w>\": 8570,\n  \"irling</w>\": 26493,\n  \"irls</w>\": 24344,\n  \"irma</w>\": 22406,\n  \"irn</w>\": 42603,\n  \"iro\": 23209,\n  \"iro</w>\": 7280,\n  \"iron\": 7699,\n  \"iron</w>\": 5391,\n  \"ironic</w>\": 24518,\n  \"ironically</w>\": 36779,\n  \"ironing</w>\": 46655,\n  \"ironman</w>\": 20330,\n  \"irons</w>\": 30032,\n  \"irony</w>\": 20681,\n  \"irport</w>\": 27769,\n  \"irr\": 24641,\n  \"irrational</w>\": 47413,\n  \"irregular</w>\": 38692,\n  \"irrelevant</w>\": 34677,\n  \"irresi\": 31200,\n  \"irresistible</w>\": 35252,\n  \"irresponsible</w>\": 44714,\n  \"irri\": 21484,\n  \"irrigation</w>\": 23761,\n  \"irrit\": 24218,\n  \"irs</w>\": 6086,\n  \"irst</w>\": 32701,\n  \"iru</w>\": 48206,\n  \"irvin</w>\": 47053,\n  \"irvine</w>\": 24201,\n  \"irving</w>\": 19738,\n  \"irwin</w>\": 23750,\n  \"iry</w>\": 7239,\n  \"is\": 595,\n  \"is</w>\": 533,\n  \"isa\": 11034,\n  \"isa</w>\": 6536,\n  \"isaac\": 37544,\n  \"isaac</w>\": 13659,\n  \"isab\": 13357,\n  \"isabel</w>\": 27466,\n  \"isabella</w>\": 26192,\n  \"isabelle</w>\": 31072,\n  \"isable</w>\": 46631,\n  \"isai\": 15365,\n  \"isaiah</w>\": 17952,\n  \"isak\": 40619,\n  \"isance</w>\": 46893,\n  \"isation</w>\": 7194,\n  \"isback</w>\": 43811,\n  \"isc</w>\": 39316,\n  \"isch</w>\": 47888,\n  \"isco</w>\": 5736,\n  \"iscoming</w>\": 26458,\n  \"isd\": 46816,\n  \"isd</w>\": 12002,\n  \"ise\": 7669,\n  \"ise</w>\": 1479,\n  \"ised</w>\": 2861,\n  \"iselle</w>\": 48491,\n  \"iser\": 23080,\n  \"iser</w>\": 5626,\n  \"isers</w>\": 34879,\n  \"ises</w>\": 5153,\n  \"isf</w>\": 44036,\n  \"isgreat</w>\": 34595,\n  \"ish\": 6844,\n  \"ish</w>\": 1061,\n  \"isha</w>\": 28050,\n  \"ishable</w>\": 37949,\n  \"ished</w>\": 35341,\n  \"ishere</w>\": 46053,\n  \"ishi\": 26224,\n  \"ishq\": 27996,\n  \"ishqba\": 32503,\n  \"ishqbaaaz</w>\": 36591,\n  \"isi\": 7233,\n  \"isi</w>\": 17880,\n  \"isil</w>\": 34636,\n  \"isin</w>\": 37676,\n  \"ising</w>\": 3426,\n  \"isis</w>\": 7531,\n  \"isk</w>\": 30171,\n  \"isl</w>\": 31368,\n  \"isla</w>\": 22807,\n  \"islam\": 6003,\n  \"islam</w>\": 8770,\n  \"islamabad</w>\": 19959,\n  \"islamic\": 31627,\n  \"islamic</w>\": 9552,\n  \"islamist</w>\": 38798,\n  \"islamophobia</w>\": 43459,\n  \"island\": 13408,\n  \"island</w>\": 2619,\n  \"islander</w>\": 45651,\n  \"islanders</w>\": 27804,\n  \"islands</w>\": 7145,\n  \"islay</w>\": 49279,\n  \"isle\": 19082,\n  \"isle</w>\": 11849,\n  \"isleof\": 24718,\n  \"isles</w>\": 21816,\n  \"islife</w>\": 26433,\n  \"islington</w>\": 34945,\n  \"ism\": 47730,\n  \"ism</w>\": 1935,\n  \"isma\": 43937,\n  \"ismail</w>\": 36140,\n  \"isme</w>\": 43570,\n  \"ismo</w>\": 41926,\n  \"isms</w>\": 18700,\n  \"isn</w>\": 2923,\n  \"isner</w>\": 48246,\n  \"isnow</w>\": 43694,\n  \"isnt</w>\": 19416,\n  \"iso\": 2462,\n  \"iso</w>\": 12263,\n  \"isol\": 11414,\n  \"isolated</w>\": 19044,\n  \"isolation</w>\": 26400,\n  \"ison\": 12949,\n  \"ison</w>\": 4553,\n  \"isons</w>\": 33318,\n  \"isoo</w>\": 35857,\n  \"isp\": 31397,\n  \"isp</w>\": 39041,\n  \"isra\": 3591,\n  \"israel\": 20837,\n  \"israel</w>\": 4779,\n  \"israeli</w>\": 8994,\n  \"israelis</w>\": 45713,\n  \"isreal</w>\": 47147,\n  \"isro</w>\": 44841,\n  \"iss\": 11738,\n  \"iss</w>\": 4950,\n  \"issa\": 38579,\n  \"issa</w>\": 7560,\n  \"issan\": 49358,\n  \"issance</w>\": 40828,\n  \"issant</w>\": 38828,\n  \"isse</w>\": 18986,\n  \"ission</w>\": 37946,\n  \"issu\": 2049,\n  \"issue</w>\": 3202,\n  \"issued</w>\": 9246,\n  \"issues</w>\": 4082,\n  \"issuing</w>\": 37226,\n  \"ist\": 9751,\n  \"ist</w>\": 2304,\n  \"istanbul</w>\": 12258,\n  \"istandwith\": 33820,\n  \"iste</w>\": 32563,\n  \"ister</w>\": 14555,\n  \"isthe\": 46748,\n  \"istic</w>\": 29556,\n  \"ists</w>\": 8426,\n  \"isu\": 17030,\n  \"isu</w>\": 23328,\n  \"it\": 529,\n  \"it</w>\": 585,\n  \"ita\": 36920,\n  \"ita</w>\": 2864,\n  \"itable</w>\": 8915,\n  \"ital\": 2306,\n  \"ital</w>\": 1660,\n  \"itali\": 11644,\n  \"italia</w>\": 11025,\n  \"italian\": 20264,\n  \"italian</w>\": 5175,\n  \"italians</w>\": 44744,\n  \"italk</w>\": 32894,\n  \"italy</w>\": 4052,\n  \"itan</w>\": 18383,\n  \"itans</w>\": 40711,\n  \"itar</w>\": 47161,\n  \"itarian</w>\": 11599,\n  \"itary</w>\": 17604,\n  \"itas\": 31634,\n  \"itas</w>\": 13436,\n  \"itate</w>\": 42457,\n  \"itated</w>\": 36744,\n  \"itation</w>\": 5070,\n  \"itative</w>\": 22892,\n  \"itc</w>\": 36449,\n  \"itch\": 2387,\n  \"itch</w>\": 8147,\n  \"itchen</w>\": 32664,\n  \"itchy</w>\": 41980,\n  \"ite\": 2732,\n  \"ite</w>\": 802,\n  \"iteam</w>\": 37828,\n  \"itec\": 3099,\n  \"itec</w>\": 43936,\n  \"itech\": 44215,\n  \"itech</w>\": 23040,\n  \"ited\": 8603,\n  \"ited</w>\": 1108,\n  \"itel</w>\": 44638,\n  \"itely</w>\": 4605,\n  \"item</w>\": 8532,\n  \"items</w>\": 6207,\n  \"iter\": 7938,\n  \"iter</w>\": 19773,\n  \"iteracy</w>\": 39634,\n  \"iterate</w>\": 43106,\n  \"iteration</w>\": 38790,\n  \"ites</w>\": 2454,\n  \"itez</w>\": 42131,\n  \"itf</w>\": 35436,\n  \"itfc</w>\": 36519,\n  \"ith\": 6133,\n  \"ith</w>\": 1757,\n  \"ithaca</w>\": 46257,\n  \"iti\": 760,\n  \"iti</w>\": 6165,\n  \"itia</w>\": 22634,\n  \"itian</w>\": 23365,\n  \"itic</w>\": 11950,\n  \"itical</w>\": 48767,\n  \"itics</w>\": 33967,\n  \"ities\": 41423,\n  \"ities</w>\": 1480,\n  \"itim\": 15676,\n  \"itiner\": 32803,\n  \"itinerary</w>\": 41564,\n  \"iting</w>\": 1257,\n  \"ition\": 25263,\n  \"ition</w>\": 1104,\n  \"itions</w>\": 5540,\n  \"itious</w>\": 13329,\n  \"itis\": 33539,\n  \"itis</w>\": 8388,\n  \"itive</w>\": 3067,\n  \"itly</w>\": 42240,\n  \"ito\": 22167,\n  \"ito</w>\": 4661,\n  \"iton</w>\": 21119,\n  \"itor\": 47267,\n  \"itor</w>\": 4584,\n  \"itors</w>\": 22005,\n  \"itos</w>\": 24560,\n  \"its\": 7140,\n  \"its</w>\": 902,\n  \"itsa\": 45032,\n  \"itself</w>\": 7290,\n  \"itsme\": 41125,\n  \"itss\": 47040,\n  \"itt\": 1031,\n  \"itt</w>\": 11228,\n  \"itta</w>\": 21233,\n  \"itte</w>\": 31962,\n  \"itted</w>\": 24429,\n  \"itten\": 30014,\n  \"itten</w>\": 4343,\n  \"itter</w>\": 11456,\n  \"itters</w>\": 13082,\n  \"itti</w>\": 28629,\n  \"ittin</w>\": 25646,\n  \"itting</w>\": 3147,\n  \"ittle\": 24208,\n  \"ittle</w>\": 21366,\n  \"ittles</w>\": 38989,\n  \"itton</w>\": 25707,\n  \"itty</w>\": 35096,\n  \"itu\": 1668,\n  \"itu</w>\": 32128,\n  \"itude\": 43382,\n  \"itude</w>\": 5012,\n  \"itudes</w>\": 20459,\n  \"itunes</w>\": 7007,\n  \"itup</w>\": 35838,\n  \"iture</w>\": 25547,\n  \"itus</w>\": 24364,\n  \"itutes</w>\": 32883,\n  \"itv\": 20159,\n  \"itv</w>\": 12805,\n  \"ity\": 2480,\n  \"ity</w>\": 696,\n  \"itya</w>\": 32055,\n  \"itz\": 14544,\n  \"itz</w>\": 7807,\n  \"iu\": 14292,\n  \"iu</w>\": 15575,\n  \"ium</w>\": 10762,\n  \"ius</w>\": 6740,\n  \"iv\": 6775,\n  \"iv</w>\": 9315,\n  \"iva</w>\": 42463,\n  \"ivan\": 15544,\n  \"ivan</w>\": 15689,\n  \"ivanka</w>\": 37914,\n  \"ive\": 26885,\n  \"ive</w>\": 8653,\n  \"ived</w>\": 15654,\n  \"iver\": 36849,\n  \"iver</w>\": 44254,\n  \"ives</w>\": 27333,\n  \"ivf</w>\": 39159,\n  \"iving</w>\": 45136,\n  \"ivory</w>\": 16776,\n  \"ivote\": 45835,\n  \"ivy\": 36939,\n  \"ivy</w>\": 16045,\n  \"iw\": 13058,\n  \"iw</w>\": 46604,\n  \"iwant\": 42747,\n  \"iwd</w>\": 16815,\n  \"iwm</w>\": 44237,\n  \"ix\": 13272,\n  \"ix</w>\": 8756,\n  \"iy\": 13704,\n  \"iya</w>\": 18595,\n  \"iyaki</w>\": 48395,\n  \"iz\": 2845,\n  \"iz</w>\": 8407,\n  \"iza</w>\": 37704,\n  \"ization</w>\": 10847,\n  \"ize</w>\": 10885,\n  \"ized</w>\": 7690,\n  \"izen</w>\": 34776,\n  \"izer</w>\": 23895,\n  \"izes</w>\": 45434,\n  \"izing</w>\": 17354,\n  \"izo</w>\": 46910,\n  \"izz\": 31779,\n  \"izz</w>\": 46128,\n  \"izzy</w>\": 28861,\n  \"j\": 73,\n  \"j</w>\": 329,\n  \"ja\": 1586,\n  \"ja</w>\": 2641,\n  \"jaan</w>\": 25052,\n  \"jab\": 8059,\n  \"jab</w>\": 9439,\n  \"jac\": 2293,\n  \"jac</w>\": 30198,\n  \"jace</w>\": 43286,\n  \"jack\": 2679,\n  \"jack</w>\": 3267,\n  \"jacked</w>\": 27923,\n  \"jacket</w>\": 6164,\n  \"jackets</w>\": 14745,\n  \"jacki\": 47418,\n  \"jackie\": 28023,\n  \"jackie</w>\": 11716,\n  \"jacking</w>\": 40929,\n  \"jackman</w>\": 35723,\n  \"jackpot</w>\": 23926,\n  \"jacks</w>\": 19649,\n  \"jackson\": 12321,\n  \"jackson</w>\": 4363,\n  \"jacksonville</w>\": 19263,\n  \"jaco\": 6840,\n  \"jacob\": 14385,\n  \"jacob</w>\": 9222,\n  \"jacobs</w>\": 17482,\n  \"jacobson</w>\": 46826,\n  \"jacqu\": 14495,\n  \"jacqueline</w>\": 22843,\n  \"jacques</w>\": 17799,\n  \"jad\": 12976,\n  \"jad</w>\": 38691,\n  \"jada</w>\": 37416,\n  \"jade\": 25123,\n  \"jade</w>\": 14513,\n  \"jaden</w>\": 37174,\n  \"jadine</w>\": 37445,\n  \"jae\": 16869,\n  \"jae</w>\": 15765,\n  \"jaejoong</w>\": 43610,\n  \"jaf\": 19362,\n  \"jag\": 7984,\n  \"jag</w>\": 36236,\n  \"jagan</w>\": 48530,\n  \"jagger</w>\": 30835,\n  \"jags</w>\": 31086,\n  \"jagu\": 10096,\n  \"jaguar\": 44777,\n  \"jaguar</w>\": 14757,\n  \"jaguars</w>\": 21854,\n  \"jah\": 20067,\n  \"jah</w>\": 11084,\n  \"jahan\": 44404,\n  \"jahan</w>\": 47827,\n  \"jai\": 10542,\n  \"jai</w>\": 13819,\n  \"jail\": 18574,\n  \"jail</w>\": 9332,\n  \"jailbreak</w>\": 45990,\n  \"jailed</w>\": 19456,\n  \"jails</w>\": 47833,\n  \"jaime</w>\": 24716,\n  \"jain</w>\": 21999,\n  \"jaipur</w>\": 23593,\n  \"jais\": 48607,\n  \"jait\": 28910,\n  \"jaitley</w>\": 32776,\n  \"jak\": 9225,\n  \"jak</w>\": 30589,\n  \"jakarta</w>\": 15471,\n  \"jake\": 13140,\n  \"jake</w>\": 7419,\n  \"jakob</w>\": 47358,\n  \"jal\": 8380,\n  \"jal</w>\": 26773,\n  \"jalan</w>\": 27270,\n  \"jalap\": 49081,\n  \"jalape\": 34263,\n  \"jalapeÃ±o</w>\": 43017,\n  \"jalen</w>\": 33548,\n  \"jam\": 1434,\n  \"jam</w>\": 5201,\n  \"jama\": 8977,\n  \"jama</w>\": 35366,\n  \"jamaica</w>\": 13019,\n  \"jamaican</w>\": 25144,\n  \"jamal</w>\": 26108,\n  \"jambo\": 35599,\n  \"jamboree</w>\": 38506,\n  \"jame\": 12341,\n  \"james\": 6963,\n  \"james</w>\": 2392,\n  \"jamesbond</w>\": 44704,\n  \"jamesc\": 47004,\n  \"jameson</w>\": 31731,\n  \"jami\": 15092,\n  \"jamie\": 16454,\n  \"jamie</w>\": 8078,\n  \"jamiedor\": 34310,\n  \"jamiedornan</w>\": 34896,\n  \"jammed</w>\": 35590,\n  \"jammin</w>\": 35223,\n  \"jamming</w>\": 25862,\n  \"jammu</w>\": 25926,\n  \"jams</w>\": 20243,\n  \"jan\": 1891,\n  \"jan</w>\": 3334,\n  \"jana</w>\": 18182,\n  \"jane\": 12389,\n  \"jane</w>\": 6736,\n  \"janeiro</w>\": 31740,\n  \"janet\": 29665,\n  \"janet</w>\": 15872,\n  \"jang\": 41526,\n  \"jang</w>\": 22074,\n  \"jani</w>\": 22606,\n  \"janice</w>\": 36048,\n  \"janine</w>\": 46896,\n  \"janis</w>\": 44233,\n  \"jann\": 35377,\n  \"jans</w>\": 22578,\n  \"jansen</w>\": 45354,\n  \"janu\": 3623,\n  \"january</w>\": 3697,\n  \"jap\": 2299,\n  \"jap</w>\": 49062,\n  \"japan\": 4502,\n  \"japan</w>\": 3400,\n  \"japanese\": 27211,\n  \"japanese</w>\": 4925,\n  \"japs</w>\": 42121,\n  \"jar\": 5120,\n  \"jar</w>\": 10837,\n  \"jard\": 25778,\n  \"jardin</w>\": 37371,\n  \"jare\": 17654,\n  \"jared\": 35597,\n  \"jared</w>\": 12571,\n  \"jaredle\": 36739,\n  \"jaredleto</w>\": 37106,\n  \"jaro</w>\": 35505,\n  \"jarpad</w>\": 44497,\n  \"jarre\": 23385,\n  \"jarrett</w>\": 30531,\n  \"jars</w>\": 27583,\n  \"jarvis</w>\": 29286,\n  \"jas\": 4492,\n  \"jas</w>\": 17559,\n  \"jasmin\": 42989,\n  \"jasmin</w>\": 47700,\n  \"jasmine</w>\": 17056,\n  \"jason\": 10009,\n  \"jason</w>\": 5395,\n  \"jasper</w>\": 19827,\n  \"jat\": 26106,\n  \"jau\": 26932,\n  \"jauregui</w>\": 48175,\n  \"jav\": 6234,\n  \"java</w>\": 12918,\n  \"javascri\": 16289,\n  \"javascript</w>\": 16423,\n  \"jave\": 46218,\n  \"javed</w>\": 42268,\n  \"javelin</w>\": 41701,\n  \"javi</w>\": 47627,\n  \"javier</w>\": 23307,\n  \"jaw\": 14804,\n  \"jaw</w>\": 17307,\n  \"jawa\": 44790,\n  \"jaws</w>\": 25491,\n  \"jax\": 22348,\n  \"jax</w>\": 12390,\n  \"jay\": 3427,\n  \"jay</w>\": 4155,\n  \"jaya</w>\": 21960,\n  \"jayanti</w>\": 37732,\n  \"jaye</w>\": 45703,\n  \"jayne</w>\": 35228,\n  \"jays</w>\": 12393,\n  \"jaz\": 3465,\n  \"jaz</w>\": 32874,\n  \"jazeera</w>\": 38260,\n  \"jazz\": 11488,\n  \"jazz</w>\": 4528,\n  \"jazzfest</w>\": 36683,\n  \"jazzy</w>\": 28191,\n  \"jb\": 21915,\n  \"jb</w>\": 13637,\n  \"jc\": 14991,\n  \"jc</w>\": 11517,\n  \"jd\": 18289,\n  \"jd</w>\": 14125,\n  \"jdm</w>\": 42013,\n  \"je\": 1013,\n  \"je</w>\": 8776,\n  \"jeal\": 9964,\n  \"jealous</w>\": 11093,\n  \"jealousy</w>\": 37654,\n  \"jean\": 13943,\n  \"jean</w>\": 6473,\n  \"jeanette</w>\": 48167,\n  \"jeanne</w>\": 29201,\n  \"jeans</w>\": 10157,\n  \"jeb</w>\": 35101,\n  \"jec\": 1347,\n  \"ject</w>\": 6070,\n  \"jed\": 12166,\n  \"jed</w>\": 38748,\n  \"jeddah</w>\": 40982,\n  \"jedi</w>\": 16681,\n  \"jee\": 29250,\n  \"jee</w>\": 14870,\n  \"jeep\": 16593,\n  \"jeep</w>\": 11286,\n  \"jeeplife</w>\": 43100,\n  \"jeet\": 45542,\n  \"jeet</w>\": 30944,\n  \"jef\": 10276,\n  \"jeff\": 6245,\n  \"jeff</w>\": 5550,\n  \"jefferson\": 44711,\n  \"jefferson</w>\": 13976,\n  \"jeffery</w>\": 41470,\n  \"jeffree\": 45994,\n  \"jeffrey\": 32886,\n  \"jeffrey</w>\": 16027,\n  \"jeho\": 42437,\n  \"jeky\": 43893,\n  \"jekyll</w>\": 49405,\n  \"jel\": 9794,\n  \"jelena</w>\": 48218,\n  \"jelly\": 19110,\n  \"jelly</w>\": 13762,\n  \"jellyfish</w>\": 30988,\n  \"jem\": 46326,\n  \"jem</w>\": 37530,\n  \"jen\": 2554,\n  \"jen</w>\": 12997,\n  \"jenkins</w>\": 16162,\n  \"jenn\": 33921,\n  \"jenn</w>\": 29869,\n  \"jenna</w>\": 17125,\n  \"jenner</w>\": 14260,\n  \"jenni\": 6774,\n  \"jennie</w>\": 28875,\n  \"jennifer\": 19786,\n  \"jennifer</w>\": 8613,\n  \"jennings</w>\": 21564,\n  \"jenny\": 20165,\n  \"jenny</w>\": 13414,\n  \"jens</w>\": 40806,\n  \"jensen\": 35558,\n  \"jensen</w>\": 19004,\n  \"jensenackles</w>\": 41011,\n  \"jeon\": 45200,\n  \"jeon</w>\": 43337,\n  \"jeong\": 47146,\n  \"jeong</w>\": 39264,\n  \"jeopar\": 22988,\n  \"jeopardy</w>\": 29613,\n  \"jer\": 2310,\n  \"jer</w>\": 35307,\n  \"jere\": 5614,\n  \"jeremi\": 22362,\n  \"jeremiah</w>\": 27301,\n  \"jeremy\": 14656,\n  \"jeremy</w>\": 8127,\n  \"jeremycorbyn</w>\": 37484,\n  \"jeric\": 25084,\n  \"jericho</w>\": 28892,\n  \"jerk</w>\": 23917,\n  \"jerky</w>\": 40079,\n  \"jermaine</w>\": 40722,\n  \"jerome</w>\": 19876,\n  \"jerry\": 18163,\n  \"jerry</w>\": 9164,\n  \"jersey\": 21921,\n  \"jersey</w>\": 4471,\n  \"jerseys</w>\": 15518,\n  \"jerus\": 12257,\n  \"jerusalem</w>\": 12557,\n  \"jes\": 7686,\n  \"jes</w>\": 35826,\n  \"jess\": 5313,\n  \"jess</w>\": 13758,\n  \"jesse\": 23112,\n  \"jesse</w>\": 11770,\n  \"jessi\": 24373,\n  \"jessic\": 14881,\n  \"jessica\": 45421,\n  \"jessica</w>\": 8178,\n  \"jessie</w>\": 19424,\n  \"jester</w>\": 44225,\n  \"jesu\": 19777,\n  \"jesuit</w>\": 33234,\n  \"jesus</w>\": 4070,\n  \"jet\": 11515,\n  \"jet</w>\": 6565,\n  \"jetblue</w>\": 45021,\n  \"jeter</w>\": 38450,\n  \"jets\": 38584,\n  \"jets</w>\": 10025,\n  \"jett</w>\": 44541,\n  \"jetty</w>\": 46382,\n  \"jew</w>\": 27450,\n  \"jewel\": 4880,\n  \"jewel</w>\": 17591,\n  \"jewell\": 9777,\n  \"jewellers</w>\": 46265,\n  \"jewellery</w>\": 11192,\n  \"jewelry\": 28018,\n  \"jewelry</w>\": 6039,\n  \"jewels</w>\": 20205,\n  \"jewish\": 29594,\n  \"jewish</w>\": 9104,\n  \"jews</w>\": 14200,\n  \"jf\": 31130,\n  \"jf</w>\": 33718,\n  \"jfc</w>\": 43652,\n  \"jfk</w>\": 18486,\n  \"jg\": 41986,\n  \"jg</w>\": 35138,\n  \"jh\": 24858,\n  \"jh</w>\": 21485,\n  \"jha\": 47012,\n  \"jha</w>\": 38092,\n  \"jhal\": 45695,\n  \"jhar\": 31546,\n  \"jharkhand</w>\": 39001,\n  \"jhb</w>\": 34631,\n  \"ji\": 3252,\n  \"ji</w>\": 2697,\n  \"jia</w>\": 32907,\n  \"jian</w>\": 33427,\n  \"jiang\": 43309,\n  \"jiang</w>\": 25762,\n  \"jic\": 48350,\n  \"jic</w>\": 40215,\n  \"jid</w>\": 24403,\n  \"jie</w>\": 40005,\n  \"jig\": 15136,\n  \"jig</w>\": 47430,\n  \"jigsaw</w>\": 32987,\n  \"jiha\": 23194,\n  \"jihad</w>\": 29637,\n  \"jihoon</w>\": 44765,\n  \"jil\": 36225,\n  \"jill\": 24136,\n  \"jill</w>\": 15254,\n  \"jillian</w>\": 37820,\n  \"jim\": 3190,\n  \"jim</w>\": 4550,\n  \"jima</w>\": 20679,\n  \"jimcantore</w>\": 43950,\n  \"jimenez</w>\": 35947,\n  \"jimi</w>\": 30565,\n  \"jimin</w>\": 16286,\n  \"jimmie</w>\": 45679,\n  \"jimmy\": 12215,\n  \"jimmy</w>\": 6817,\n  \"jimmyfallon</w>\": 45265,\n  \"jin\": 7927,\n  \"jin</w>\": 8485,\n  \"jind\": 40609,\n  \"jing\": 34933,\n  \"jing</w>\": 28607,\n  \"jingle</w>\": 28699,\n  \"jinnah</w>\": 43141,\n  \"jinping</w>\": 39308,\n  \"jinx</w>\": 42977,\n  \"jinyoung</w>\": 38051,\n  \"jio</w>\": 40501,\n  \"jis\": 25988,\n  \"jis</w>\": 23515,\n  \"jisoo</w>\": 43070,\n  \"jit\": 11947,\n  \"jit</w>\": 20308,\n  \"jitsu</w>\": 24530,\n  \"jiu\": 43351,\n  \"jiu</w>\": 44123,\n  \"jj\": 12502,\n  \"jj</w>\": 12790,\n  \"jk\": 20189,\n  \"jk</w>\": 9702,\n  \"jkt</w>\": 21494,\n  \"jl\": 25027,\n  \"jl</w>\": 22911,\n  \"jlo</w>\": 31017,\n  \"jm\": 24044,\n  \"jm</w>\": 18657,\n  \"jn\": 24576,\n  \"jn</w>\": 21717,\n  \"jnr</w>\": 37145,\n  \"jnu</w>\": 47142,\n  \"jo\": 683,\n  \"jo</w>\": 3804,\n  \"joachim</w>\": 48979,\n  \"joan\": 28064,\n  \"joan</w>\": 12710,\n  \"joann\": 35484,\n  \"joanna</w>\": 25357,\n  \"joanne\": 43736,\n  \"joanne</w>\": 25092,\n  \"joao</w>\": 45666,\n  \"joaqu\": 25140,\n  \"joaquin</w>\": 30745,\n  \"job\": 13114,\n  \"job</w>\": 2075,\n  \"jobs</w>\": 3735,\n  \"jobsearch</w>\": 45459,\n  \"joburg</w>\": 39343,\n  \"jocel\": 36879,\n  \"jocelyn</w>\": 47259,\n  \"jock</w>\": 34485,\n  \"jockey</w>\": 20126,\n  \"jodh\": 48689,\n  \"jodi\": 36812,\n  \"jodi</w>\": 26888,\n  \"jodie</w>\": 33100,\n  \"jody</w>\": 32959,\n  \"joe\": 9309,\n  \"joe</w>\": 3305,\n  \"joel\": 19819,\n  \"joel</w>\": 11429,\n  \"joes</w>\": 34756,\n  \"joey\": 16281,\n  \"joey</w>\": 10455,\n  \"jog\": 37967,\n  \"jog</w>\": 31691,\n  \"jogging</w>\": 37922,\n  \"joh\": 1201,\n  \"johan\": 17416,\n  \"johan</w>\": 27789,\n  \"johann</w>\": 31180,\n  \"johanna</w>\": 41494,\n  \"johannes</w>\": 37779,\n  \"johannesburg</w>\": 28377,\n  \"johansson</w>\": 41512,\n  \"johar</w>\": 34871,\n  \"john\": 2004,\n  \"john</w>\": 1742,\n  \"johncena</w>\": 46820,\n  \"johnnie</w>\": 47947,\n  \"johnny\": 14464,\n  \"johnny</w>\": 6904,\n  \"johns</w>\": 14515,\n  \"johnson\": 26036,\n  \"johnson</w>\": 4010,\n  \"johnston</w>\": 19791,\n  \"johnstone</w>\": 40766,\n  \"johor</w>\": 34750,\n  \"join\": 14737,\n  \"join</w>\": 1384,\n  \"joined</w>\": 4954,\n  \"joining</w>\": 5118,\n  \"joins</w>\": 5681,\n  \"joint</w>\": 6640,\n  \"jointhe\": 30422,\n  \"jointly</w>\": 37471,\n  \"joints</w>\": 27204,\n  \"jojo\": 41484,\n  \"jojo</w>\": 22075,\n  \"joke</w>\": 7198,\n  \"joker</w>\": 18200,\n  \"jokers</w>\": 44101,\n  \"jokes</w>\": 11336,\n  \"joking</w>\": 26112,\n  \"joko\": 44975,\n  \"jol\": 9174,\n  \"jol</w>\": 36470,\n  \"jolie</w>\": 31633,\n  \"jolla</w>\": 46109,\n  \"jolly</w>\": 21516,\n  \"jom\": 32152,\n  \"jon\": 3026,\n  \"jon</w>\": 6139,\n  \"jona\": 6629,\n  \"jonah\": 47934,\n  \"jonah</w>\": 27556,\n  \"jonas\": 42373,\n  \"jonas</w>\": 13650,\n  \"jonathan\": 19026,\n  \"jonathan</w>\": 7762,\n  \"jone\": 33934,\n  \"jones\": 19091,\n  \"jones</w>\": 3538,\n  \"jong\": 20214,\n  \"jong</w>\": 14726,\n  \"jonghyun</w>\": 29023,\n  \"jongin</w>\": 36957,\n  \"joni</w>\": 43177,\n  \"jonny\": 28454,\n  \"jonny</w>\": 21895,\n  \"joo\": 25807,\n  \"joo</w>\": 27680,\n  \"joom\": 47543,\n  \"joon</w>\": 18547,\n  \"joong</w>\": 26544,\n  \"jop\": 30486,\n  \"joplin</w>\": 42688,\n  \"jor\": 2482,\n  \"jor</w>\": 31595,\n  \"jordan\": 14644,\n  \"jordan</w>\": 4388,\n  \"jordani\": 46898,\n  \"jordi</w>\": 44795,\n  \"jorge\": 48761,\n  \"jorge</w>\": 18225,\n  \"jos\": 20560,\n  \"jos</w>\": 19661,\n  \"jose\": 4647,\n  \"jose</w>\": 7075,\n  \"josef</w>\": 36584,\n  \"josel\": 47800,\n  \"joseph\": 14163,\n  \"joseph</w>\": 6478,\n  \"josephine</w>\": 34866,\n  \"josh\": 9998,\n  \"josh</w>\": 5679,\n  \"joshi</w>\": 24786,\n  \"joshu\": 9112,\n  \"joshua</w>\": 11852,\n  \"josi\": 33583,\n  \"josie</w>\": 33167,\n  \"joss</w>\": 42834,\n  \"josÃ©</w>\": 27922,\n  \"jou\": 19921,\n  \"jou</w>\": 32029,\n  \"jour\": 2078,\n  \"jour</w>\": 17142,\n  \"journ\": 4563,\n  \"journal</w>\": 6626,\n  \"journalism</w>\": 10123,\n  \"journalist</w>\": 9914,\n  \"journalists</w>\": 12249,\n  \"journals</w>\": 24391,\n  \"journe\": 48833,\n  \"journey\": 32156,\n  \"journey</w>\": 3749,\n  \"journeys</w>\": 23329,\n  \"journo</w>\": 37034,\n  \"journos</w>\": 46437,\n  \"jovi</w>\": 33866,\n  \"joy\": 6308,\n  \"joy</w>\": 4273,\n  \"joyce\": 43753,\n  \"joyce</w>\": 15275,\n  \"joye\": 34052,\n  \"joyeux</w>\": 41876,\n  \"joyful</w>\": 24139,\n  \"joyous</w>\": 32245,\n  \"joyride</w>\": 46949,\n  \"joys</w>\": 22996,\n  \"jp\": 18249,\n  \"jp</w>\": 10557,\n  \"jpg</w>\": 36950,\n  \"jpn</w>\": 36212,\n  \"jr\": 13973,\n  \"jr</w>\": 3605,\n  \"js\": 46243,\n  \"js</w>\": 8006,\n  \"jst</w>\": 26523,\n  \"jt\": 39480,\n  \"jt</w>\": 18119,\n  \"ju\": 669,\n  \"ju</w>\": 9970,\n  \"jual</w>\": 38720,\n  \"juan\": 17148,\n  \"juan</w>\": 9274,\n  \"juana</w>\": 9081,\n  \"jubi\": 15485,\n  \"jubil\": 47743,\n  \"jubilee</w>\": 16907,\n  \"juco</w>\": 31570,\n  \"jud\": 8363,\n  \"juda\": 32478,\n  \"judah</w>\": 41066,\n  \"judaism</w>\": 42217,\n  \"judas</w>\": 39532,\n  \"judd</w>\": 29770,\n  \"judg\": 20012,\n  \"judge\": 16824,\n  \"judge</w>\": 5656,\n  \"judged</w>\": 33453,\n  \"judgement</w>\": 25246,\n  \"judges</w>\": 12575,\n  \"judging</w>\": 16570,\n  \"judgment</w>\": 24191,\n  \"judi\": 42546,\n  \"judice</w>\": 28032,\n  \"judicial</w>\": 19579,\n  \"judiciary</w>\": 24545,\n  \"judith</w>\": 24047,\n  \"judo</w>\": 27011,\n  \"judy\": 34663,\n  \"judy</w>\": 16510,\n  \"jug</w>\": 27619,\n  \"jugg\": 38628,\n  \"juic\": 38761,\n  \"juice\": 37954,\n  \"juice</w>\": 6916,\n  \"juices</w>\": 36757,\n  \"juicy</w>\": 17623,\n  \"juju</w>\": 43020,\n  \"juke\": 32519,\n  \"jukebox</w>\": 36411,\n  \"jul\": 34662,\n  \"jul</w>\": 15975,\n  \"jule\": 40819,\n  \"jules</w>\": 21996,\n  \"juli\": 3614,\n  \"juli</w>\": 49160,\n  \"julia</w>\": 10207,\n  \"julian\": 25459,\n  \"julian</w>\": 12643,\n  \"juliana</w>\": 46059,\n  \"julie\": 22534,\n  \"julie</w>\": 10505,\n  \"julien</w>\": 32595,\n  \"juliet</w>\": 20641,\n  \"juliette</w>\": 44804,\n  \"julio</w>\": 24888,\n  \"julius</w>\": 20870,\n  \"july</w>\": 2272,\n  \"jum\": 20791,\n  \"jumbo</w>\": 24678,\n  \"jume\": 45989,\n  \"jump\": 5519,\n  \"jump</w>\": 6423,\n  \"jumped</w>\": 16901,\n  \"jumper</w>\": 16558,\n  \"jumpers</w>\": 36485,\n  \"jumping</w>\": 11476,\n  \"jumpman</w>\": 48803,\n  \"jumps</w>\": 18911,\n  \"jumpsuit</w>\": 31044,\n  \"jun\": 1637,\n  \"jun</w>\": 7719,\n  \"junction</w>\": 11320,\n  \"june\": 23188,\n  \"june</w>\": 2345,\n  \"jung\": 13086,\n  \"jung</w>\": 13031,\n  \"jungkook</w>\": 20040,\n  \"jungle\": 42421,\n  \"jungle</w>\": 10865,\n  \"juni\": 4029,\n  \"junior\": 21167,\n  \"junior</w>\": 5027,\n  \"juniors</w>\": 16811,\n  \"juniper</w>\": 33829,\n  \"junk</w>\": 16000,\n  \"junkie</w>\": 27613,\n  \"junkies</w>\": 41207,\n  \"juno</w>\": 28845,\n  \"junto</w>\": 34282,\n  \"jupit\": 15270,\n  \"jupiter</w>\": 16212,\n  \"jur\": 15896,\n  \"jura\": 14715,\n  \"jurassic\": 28844,\n  \"jurassic</w>\": 21255,\n  \"jurgen</w>\": 39263,\n  \"juris\": 37010,\n  \"jurisdic\": 37714,\n  \"jury</w>\": 12931,\n  \"jus</w>\": 14999,\n  \"just\": 1770,\n  \"just</w>\": 761,\n  \"justi\": 14700,\n  \"justic\": 30399,\n  \"justice\": 16904,\n  \"justice</w>\": 3604,\n  \"justicefor\": 25812,\n  \"justiceleague</w>\": 41929,\n  \"justices</w>\": 44356,\n  \"justified</w>\": 34546,\n  \"justify</w>\": 28192,\n  \"justin\": 7537,\n  \"justin</w>\": 4394,\n  \"justinbieber</w>\": 12501,\n  \"justine</w>\": 34418,\n  \"justintrudeau</w>\": 32184,\n  \"justsaying</w>\": 42922,\n  \"juve\": 47717,\n  \"juve</w>\": 23092,\n  \"juven\": 12944,\n  \"juvenile</w>\": 19333,\n  \"juvent\": 13908,\n  \"juventus\": 47378,\n  \"juventus</w>\": 16208,\n  \"jux\": 33552,\n  \"juxta\": 34964,\n  \"jv\": 37932,\n  \"jv</w>\": 11805,\n  \"jw\": 30221,\n  \"jw</w>\": 24215,\n  \"jy\": 20979,\n  \"jyo\": 27378,\n  \"jyoti</w>\": 48696,\n  \"jÃ¤\": 45381,\n  \"k\": 74,\n  \"k</w>\": 330,\n  \"ka\": 1595,\n  \"ka</w>\": 1525,\n  \"kaa</w>\": 34496,\n  \"kab\": 6554,\n  \"kab</w>\": 45134,\n  \"kabaddi</w>\": 41749,\n  \"kabir</w>\": 38619,\n  \"kabo\": 47974,\n  \"kabul</w>\": 26160,\n  \"kac\": 21693,\n  \"kach\": 14341,\n  \"kad\": 10901,\n  \"kade</w>\": 41130,\n  \"kaduna</w>\": 38053,\n  \"kae\": 22542,\n  \"kaeper\": 30070,\n  \"kaepernick</w>\": 30713,\n  \"kaf\": 19870,\n  \"kag\": 13666,\n  \"kag</w>\": 31003,\n  \"kah\": 16068,\n  \"kah</w>\": 15463,\n  \"kahn</w>\": 35397,\n  \"kai\": 12752,\n  \"kai</w>\": 9601,\n  \"kaido</w>\": 40255,\n  \"kail\": 23623,\n  \"kaine</w>\": 39028,\n  \"kair\": 33027,\n  \"kaiser\": 43685,\n  \"kaiser</w>\": 29960,\n  \"kait\": 19326,\n  \"kaitlyn</w>\": 34948,\n  \"kaj\": 44788,\n  \"kaj</w>\": 40381,\n  \"kak\": 10401,\n  \"kak</w>\": 40128,\n  \"kaka</w>\": 47689,\n  \"kaku</w>\": 30900,\n  \"kal\": 4187,\n  \"kal</w>\": 18712,\n  \"kala\": 45453,\n  \"kala</w>\": 33105,\n  \"kalam</w>\": 40142,\n  \"kalamaz\": 42328,\n  \"kalamazoo</w>\": 46264,\n  \"kalb</w>\": 34483,\n  \"kale\": 17162,\n  \"kale</w>\": 16625,\n  \"kaleido\": 41144,\n  \"kali\": 17844,\n  \"kali</w>\": 26964,\n  \"kalin\": 42776,\n  \"kalyan</w>\": 23825,\n  \"kam\": 4104,\n  \"kam</w>\": 26011,\n  \"kamal\": 31371,\n  \"kamal</w>\": 28619,\n  \"kamala</w>\": 45003,\n  \"kame\": 45235,\n  \"kamen</w>\": 40738,\n  \"kami</w>\": 28707,\n  \"kamloops</w>\": 36602,\n  \"kamp\": 35179,\n  \"kamp</w>\": 29522,\n  \"kampala</w>\": 37134,\n  \"kan\": 2532,\n  \"kan</w>\": 8101,\n  \"kana</w>\": 35178,\n  \"kand\": 17478,\n  \"kane\": 32218,\n  \"kane</w>\": 9765,\n  \"kang\": 12226,\n  \"kang</w>\": 20789,\n  \"kangar\": 20622,\n  \"kangaroo</w>\": 25513,\n  \"kani\": 40907,\n  \"kani</w>\": 41948,\n  \"kann\": 18533,\n  \"kannada</w>\": 30053,\n  \"kano</w>\": 28201,\n  \"kans</w>\": 34012,\n  \"kansas\": 25507,\n  \"kansas</w>\": 6539,\n  \"kansascity</w>\": 46134,\n  \"kant\": 39923,\n  \"kant</w>\": 47132,\n  \"kanth</w>\": 24427,\n  \"kanu</w>\": 44565,\n  \"kany\": 13590,\n  \"kanye\": 29680,\n  \"kanye</w>\": 14965,\n  \"kanyewest</w>\": 31943,\n  \"kap\": 6804,\n  \"kap</w>\": 45279,\n  \"kapam\": 48561,\n  \"kapil\": 32337,\n  \"kapil</w>\": 42709,\n  \"kapilshar\": 48978,\n  \"kaplan</w>\": 37401,\n  \"kapoor</w>\": 9117,\n  \"kapp\": 36717,\n  \"kappa</w>\": 20239,\n  \"kapur</w>\": 42371,\n  \"kar\": 1813,\n  \"kar</w>\": 5933,\n  \"kara</w>\": 12552,\n  \"karab\": 40916,\n  \"karachi</w>\": 13671,\n  \"karak\": 40372,\n  \"karan\": 20077,\n  \"karan</w>\": 20931,\n  \"karanjohar</w>\": 47621,\n  \"karao\": 16262,\n  \"karaoke</w>\": 16640,\n  \"karate</w>\": 21211,\n  \"kardashi\": 13619,\n  \"kardashian</w>\": 14578,\n  \"kare\": 14310,\n  \"kare</w>\": 38354,\n  \"kareem</w>\": 38885,\n  \"kareena</w>\": 41569,\n  \"karen\": 17719,\n  \"karen</w>\": 10349,\n  \"kari\": 15339,\n  \"kari</w>\": 15161,\n  \"karim</w>\": 33477,\n  \"karin</w>\": 43917,\n  \"karina</w>\": 40250,\n  \"karl\": 20967,\n  \"karl</w>\": 13134,\n  \"karla</w>\": 42309,\n  \"karma</w>\": 17658,\n  \"karnat\": 13994,\n  \"karnataka</w>\": 15515,\n  \"karo</w>\": 45305,\n  \"kart\": 47841,\n  \"kart</w>\": 21310,\n  \"karthik</w>\": 41397,\n  \"karti\": 23053,\n  \"kartikeyan</w>\": 32584,\n  \"karting</w>\": 41655,\n  \"kas\": 6119,\n  \"kas</w>\": 14372,\n  \"kasa</w>\": 46111,\n  \"kash\": 6954,\n  \"kash</w>\": 21371,\n  \"kashi\": 47945,\n  \"kashmir\": 20251,\n  \"kashmir</w>\": 10783,\n  \"kashmiri</w>\": 35331,\n  \"kasi\": 45870,\n  \"kasi</w>\": 32819,\n  \"kasich</w>\": 39666,\n  \"kat\": 2844,\n  \"kat</w>\": 9341,\n  \"kata</w>\": 14558,\n  \"kate\": 11620,\n  \"kate</w>\": 6699,\n  \"katelyn</w>\": 45963,\n  \"kath\": 7386,\n  \"kath</w>\": 19745,\n  \"katharine</w>\": 41473,\n  \"katherine</w>\": 17687,\n  \"kathle\": 18721,\n  \"kathleen</w>\": 21709,\n  \"kathmandu</w>\": 34456,\n  \"kathniel</w>\": 36159,\n  \"kathr\": 14905,\n  \"kathryn\": 33142,\n  \"kathryn</w>\": 19999,\n  \"kathy\": 34775,\n  \"kathy</w>\": 18795,\n  \"kati\": 6515,\n  \"kati</w>\": 29928,\n  \"katic</w>\": 48058,\n  \"katie\": 24117,\n  \"katie</w>\": 9076,\n  \"katniss</w>\": 47916,\n  \"kato</w>\": 27573,\n  \"katrin\": 31282,\n  \"katrina</w>\": 21397,\n  \"katrinakaif</w>\": 45845,\n  \"kats</w>\": 44213,\n  \"katsu\": 49296,\n  \"katsu</w>\": 43712,\n  \"katy\": 17609,\n  \"katy</w>\": 14435,\n  \"katyperry</w>\": 28309,\n  \"katz</w>\": 30790,\n  \"kau\": 9299,\n  \"kau</w>\": 36895,\n  \"kauai</w>\": 44050,\n  \"kaufman</w>\": 37188,\n  \"kaur</w>\": 30518,\n  \"kav\": 10228,\n  \"kavan\": 18576,\n  \"kavanaugh</w>\": 20252,\n  \"kaw\": 10842,\n  \"kaw</w>\": 42719,\n  \"kawa</w>\": 33244,\n  \"kawaii</w>\": 26891,\n  \"kawasaki</w>\": 28227,\n  \"kawhi</w>\": 41220,\n  \"kay\": 4673,\n  \"kay</w>\": 9862,\n  \"kaya</w>\": 22752,\n  \"kayak</w>\": 27043,\n  \"kayaking</w>\": 28977,\n  \"kaye</w>\": 33003,\n  \"kayla</w>\": 17139,\n  \"kaylee</w>\": 47215,\n  \"kayo</w>\": 37021,\n  \"kaz\": 8812,\n  \"kaz</w>\": 39622,\n  \"kazakh\": 25451,\n  \"kazakhstan</w>\": 26720,\n  \"kazan</w>\": 47641,\n  \"kb\": 27381,\n  \"kb</w>\": 19960,\n  \"kbs</w>\": 27418,\n  \"kc\": 10869,\n  \"kc</w>\": 8638,\n  \"kca</w>\": 14347,\n  \"kcon</w>\": 39970,\n  \"kcr\": 46181,\n  \"kd\": 21826,\n  \"kd</w>\": 15597,\n  \"kday</w>\": 31074,\n  \"kdrama</w>\": 48628,\n  \"ke\": 643,\n  \"ke</w>\": 618,\n  \"kea</w>\": 47926,\n  \"kean\": 43288,\n  \"keane</w>\": 28635,\n  \"keanu</w>\": 40608,\n  \"kear\": 21562,\n  \"kearney</w>\": 36435,\n  \"keating</w>\": 40045,\n  \"keaton</w>\": 29975,\n  \"kebab</w>\": 36497,\n  \"ked\": 11730,\n  \"ked</w>\": 1243,\n  \"kee\": 9724,\n  \"kee</w>\": 6760,\n  \"keef</w>\": 42323,\n  \"keefe</w>\": 46965,\n  \"keegan</w>\": 31122,\n  \"keel</w>\": 48376,\n  \"keen\": 17714,\n  \"keen</w>\": 13218,\n  \"keenan</w>\": 36276,\n  \"keep\": 2924,\n  \"keep</w>\": 1726,\n  \"keeper</w>\": 7650,\n  \"keepers</w>\": 16130,\n  \"keepin</w>\": 41712,\n  \"keeping\": 38371,\n  \"keeping</w>\": 4873,\n  \"keepit\": 28044,\n  \"keeps</w>\": 6333,\n  \"keer\": 27412,\n  \"keerth\": 47500,\n  \"keerthyofficial</w>\": 48185,\n  \"kees</w>\": 10791,\n  \"keg</w>\": 32785,\n  \"keh\": 41272,\n  \"keh</w>\": 36983,\n  \"kei\": 18735,\n  \"kei</w>\": 24835,\n  \"keith\": 18762,\n  \"keith</w>\": 8252,\n  \"kej\": 15674,\n  \"kejri\": 16617,\n  \"kejriwal</w>\": 17334,\n  \"keke</w>\": 39195,\n  \"kel\": 2825,\n  \"kel</w>\": 7553,\n  \"kele\": 41765,\n  \"kell\": 16082,\n  \"kell</w>\": 40103,\n  \"keller</w>\": 21407,\n  \"kelley</w>\": 23776,\n  \"kelli\": 45852,\n  \"kelli</w>\": 46190,\n  \"kellie</w>\": 49224,\n  \"kellogg</w>\": 44218,\n  \"kelly\": 13417,\n  \"kelly</w>\": 5220,\n  \"kelown\": 31708,\n  \"kelowna</w>\": 32963,\n  \"kelsey\": 42295,\n  \"kelsey</w>\": 23018,\n  \"kelvin</w>\": 32859,\n  \"kem\": 31013,\n  \"kem</w>\": 17349,\n  \"kemp\": 18302,\n  \"kemp</w>\": 25325,\n  \"ken\": 1838,\n  \"ken</w>\": 1702,\n  \"kend\": 7497,\n  \"kendal</w>\": 44836,\n  \"kendall\": 34607,\n  \"kendall</w>\": 16238,\n  \"kendra</w>\": 36074,\n  \"kendrick\": 41787,\n  \"kendrick</w>\": 21953,\n  \"kendricklamar</w>\": 47020,\n  \"kenne\": 6209,\n  \"kennedy\": 38631,\n  \"kennedy</w>\": 9004,\n  \"kennel</w>\": 39595,\n  \"kenneth\": 46900,\n  \"kenneth</w>\": 17839,\n  \"kenney</w>\": 41373,\n  \"kenny\": 20185,\n  \"kenny</w>\": 9595,\n  \"kens</w>\": 29765,\n  \"kensing\": 21505,\n  \"kensington</w>\": 24988,\n  \"kent\": 13875,\n  \"kent</w>\": 8214,\n  \"kentu\": 9045,\n  \"kentucky\": 32230,\n  \"kentucky</w>\": 10014,\n  \"keny\": 17374,\n  \"kenya</w>\": 6181,\n  \"kenyan</w>\": 22624,\n  \"kenyans</w>\": 36263,\n  \"kenyatta</w>\": 31012,\n  \"kenzie</w>\": 38087,\n  \"keo\": 43062,\n  \"kept</w>\": 7737,\n  \"ker\": 2352,\n  \"ker</w>\": 1485,\n  \"keral\": 35122,\n  \"kerala</w>\": 11881,\n  \"kered</w>\": 26690,\n  \"kerel</w>\": 32232,\n  \"keri</w>\": 43447,\n  \"kermit</w>\": 40908,\n  \"kern</w>\": 40150,\n  \"kernel</w>\": 40684,\n  \"kerr</w>\": 20491,\n  \"kerri\": 41849,\n  \"kerry\": 24795,\n  \"kerry</w>\": 13097,\n  \"kers\": 30347,\n  \"kers</w>\": 2880,\n  \"kershaw</w>\": 40785,\n  \"kerson</w>\": 42810,\n  \"kerswednesday</w>\": 48152,\n  \"kert</w>\": 47279,\n  \"kes\": 38398,\n  \"kes</w>\": 1115,\n  \"kesh</w>\": 19751,\n  \"kesha</w>\": 36526,\n  \"kest</w>\": 15080,\n  \"ket\": 2715,\n  \"ket</w>\": 1236,\n  \"ketball</w>\": 38240,\n  \"ketch\": 22590,\n  \"ketch</w>\": 35371,\n  \"ketchup</w>\": 26724,\n  \"kete\": 25404,\n  \"keted</w>\": 41396,\n  \"keting</w>\": 15951,\n  \"keto\": 27485,\n  \"keto</w>\": 28754,\n  \"kets</w>\": 1632,\n  \"kett\": 23124,\n  \"kett</w>\": 10312,\n  \"kettering</w>\": 43779,\n  \"kettle\": 41992,\n  \"kettle</w>\": 24303,\n  \"kev\": 22758,\n  \"kev</w>\": 29419,\n  \"kevin\": 9419,\n  \"kevin</w>\": 4685,\n  \"kew\": 38014,\n  \"kew</w>\": 31409,\n  \"kex\": 30251,\n  \"key\": 2891,\n  \"key</w>\": 1458,\n  \"keyan</w>\": 27617,\n  \"keyboard</w>\": 13017,\n  \"keyboards</w>\": 49237,\n  \"keychain</w>\": 31050,\n  \"keye\": 40516,\n  \"keye</w>\": 20635,\n  \"keyes</w>\": 18336,\n  \"keynes</w>\": 32462,\n  \"keynote</w>\": 7556,\n  \"keys\": 48912,\n  \"keys</w>\": 6355,\n  \"keystone</w>\": 30688,\n  \"keyword</w>\": 42284,\n  \"keywords</w>\": 48122,\n  \"kf\": 33308,\n  \"kf</w>\": 42119,\n  \"kfc</w>\": 22032,\n  \"kg\": 36772,\n  \"kg</w>\": 7817,\n  \"kgs</w>\": 46629,\n  \"kh\": 2166,\n  \"kh</w>\": 7452,\n  \"kha\": 7333,\n  \"kha</w>\": 18929,\n  \"khair\": 43742,\n  \"khaki</w>\": 41646,\n  \"khal\": 13070,\n  \"khaled</w>\": 29343,\n  \"khali\": 11324,\n  \"khalid</w>\": 27166,\n  \"khalifa</w>\": 21389,\n  \"khalil</w>\": 36229,\n  \"kham\": 24892,\n  \"khan\": 13318,\n  \"khan</w>\": 3873,\n  \"khand\": 43384,\n  \"khand</w>\": 31110,\n  \"khanna</w>\": 29931,\n  \"khar\": 18340,\n  \"khar</w>\": 28578,\n  \"khart</w>\": 37458,\n  \"khat\": 43290,\n  \"khe\": 26360,\n  \"kher</w>\": 43843,\n  \"khi\": 39062,\n  \"khi</w>\": 42925,\n  \"khil\": 34101,\n  \"khloe</w>\": 45312,\n  \"kho\": 14022,\n  \"kho</w>\": 28774,\n  \"khou</w>\": 30656,\n  \"khs</w>\": 21239,\n  \"khtar</w>\": 45593,\n  \"khu\": 14041,\n  \"khur\": 32083,\n  \"khy\": 40917,\n  \"khz</w>\": 45604,\n  \"ki\": 848,\n  \"ki</w>\": 2608,\n  \"kia</w>\": 8712,\n  \"kian\": 43961,\n  \"kian</w>\": 25708,\n  \"kians</w>\": 44010,\n  \"kib\": 43108,\n  \"kiba\": 37207,\n  \"kic\": 24003,\n  \"kic</w>\": 27633,\n  \"kicchasu\": 44665,\n  \"kicchasudeep</w>\": 45560,\n  \"kick\": 4102,\n  \"kick</w>\": 4289,\n  \"kickass</w>\": 39299,\n  \"kickboxing</w>\": 36041,\n  \"kicked</w>\": 12479,\n  \"kicker</w>\": 26338,\n  \"kickin</w>\": 34597,\n  \"kicking</w>\": 7802,\n  \"kickoff</w>\": 10245,\n  \"kicks</w>\": 6989,\n  \"kickstart</w>\": 40780,\n  \"kickstarter</w>\": 13228,\n  \"kid\": 3948,\n  \"kid</w>\": 3551,\n  \"kidd</w>\": 24082,\n  \"kidding</w>\": 14535,\n  \"kiddo</w>\": 36360,\n  \"kiddos</w>\": 29205,\n  \"kidlit\": 39064,\n  \"kidlit</w>\": 33515,\n  \"kidlitart</w>\": 41600,\n  \"kidman</w>\": 44931,\n  \"kidnap</w>\": 45100,\n  \"kidnapp\": 16183,\n  \"kidnapped</w>\": 24737,\n  \"kidnapping</w>\": 32361,\n  \"kidney\": 37835,\n  \"kidney</w>\": 14610,\n  \"kids\": 15561,\n  \"kids</w>\": 1911,\n  \"kidz</w>\": 41938,\n  \"kie\": 8544,\n  \"kie</w>\": 3094,\n  \"kiefer</w>\": 48026,\n  \"kiel\": 40940,\n  \"kiel</w>\": 25509,\n  \"kien</w>\": 28782,\n  \"kier\": 20403,\n  \"kier</w>\": 35575,\n  \"kieran</w>\": 29231,\n  \"kies\": 36601,\n  \"kies</w>\": 4993,\n  \"kiest</w>\": 29755,\n  \"kiev</w>\": 24585,\n  \"kiewicz</w>\": 47574,\n  \"kigali</w>\": 40278,\n  \"kii</w>\": 39340,\n  \"kik</w>\": 36176,\n  \"kiki</w>\": 23962,\n  \"kiko</w>\": 40861,\n  \"kil\": 4912,\n  \"kil</w>\": 39337,\n  \"kildare</w>\": 45541,\n  \"kili\": 24386,\n  \"kilig</w>\": 49172,\n  \"kilimanjaro</w>\": 43470,\n  \"kilkenny</w>\": 33805,\n  \"kill\": 6163,\n  \"kill</w>\": 4367,\n  \"killa</w>\": 41355,\n  \"killarney</w>\": 48813,\n  \"killed</w>\": 3733,\n  \"killer\": 28230,\n  \"killer</w>\": 6613,\n  \"killers</w>\": 17614,\n  \"killin</w>\": 25903,\n  \"killing\": 37977,\n  \"killing</w>\": 5923,\n  \"killings</w>\": 24918,\n  \"kills</w>\": 9795,\n  \"kiln</w>\": 44150,\n  \"kilo\": 39281,\n  \"kilom\": 26285,\n  \"kilometers</w>\": 39192,\n  \"kilometres</w>\": 43278,\n  \"kilt</w>\": 49319,\n  \"kim\": 4639,\n  \"kim</w>\": 4606,\n  \"kimber\": 16796,\n  \"kimberley</w>\": 39859,\n  \"kimberly</w>\": 27465,\n  \"kimchi</w>\": 41027,\n  \"kimi</w>\": 31536,\n  \"kimkardashian</w>\": 35400,\n  \"kimmel</w>\": 27820,\n  \"kimono</w>\": 40024,\n  \"kin\": 1442,\n  \"kin</w>\": 2667,\n  \"kina</w>\": 28518,\n  \"kind\": 7204,\n  \"kind</w>\": 3044,\n  \"kinda</w>\": 6612,\n  \"kinder\": 12711,\n  \"kinder</w>\": 24159,\n  \"kindergarten</w>\": 16749,\n  \"kindle\": 24704,\n  \"kindle</w>\": 10746,\n  \"kindleunlimited</w>\": 32164,\n  \"kindly</w>\": 13952,\n  \"kindness\": 45112,\n  \"kindness</w>\": 10614,\n  \"kinds</w>\": 14879,\n  \"kine\": 17607,\n  \"kineni</w>\": 49080,\n  \"kinetic</w>\": 37699,\n  \"king\": 2365,\n  \"king</w>\": 674,\n  \"kingdom\": 21870,\n  \"kingdom</w>\": 7364,\n  \"kingdomhearts</w>\": 48570,\n  \"kingdoms</w>\": 43890,\n  \"kingfisher</w>\": 34330,\n  \"kingjames</w>\": 33153,\n  \"kingly</w>\": 33642,\n  \"kingof\": 27878,\n  \"kings\": 18590,\n  \"kings</w>\": 4232,\n  \"kingsley</w>\": 41807,\n  \"kingston\": 40736,\n  \"kingston</w>\": 15393,\n  \"kini</w>\": 41644,\n  \"kinky</w>\": 37006,\n  \"kinney</w>\": 37233,\n  \"kino</w>\": 39000,\n  \"kins\": 31060,\n  \"kins</w>\": 4386,\n  \"kinson</w>\": 12095,\n  \"kio\": 28210,\n  \"kio</w>\": 39401,\n  \"kiosk</w>\": 39146,\n  \"kip\": 27636,\n  \"kip</w>\": 15986,\n  \"kipp\": 43329,\n  \"kir\": 3476,\n  \"kir</w>\": 32949,\n  \"kira</w>\": 33038,\n  \"kiran\": 43234,\n  \"kiran</w>\": 36603,\n  \"kirby</w>\": 17065,\n  \"kiri\": 34170,\n  \"kiri</w>\": 45826,\n  \"kirk\": 10639,\n  \"kirk</w>\": 11508,\n  \"kirkland</w>\": 43061,\n  \"kiro</w>\": 39749,\n  \"kirstel</w>\": 46483,\n  \"kirsten</w>\": 31813,\n  \"kirsty</w>\": 37787,\n  \"kis\": 3199,\n  \"kis</w>\": 22796,\n  \"kish\": 25662,\n  \"kiss\": 43757,\n  \"kiss</w>\": 5946,\n  \"kissed</w>\": 22561,\n  \"kisses\": 47876,\n  \"kisses</w>\": 11220,\n  \"kissing</w>\": 18637,\n  \"kistan</w>\": 29580,\n  \"kit\": 4566,\n  \"kit</w>\": 4274,\n  \"kita</w>\": 29961,\n  \"kitch\": 3850,\n  \"kitchen\": 18131,\n  \"kitchen</w>\": 4485,\n  \"kitchener</w>\": 34428,\n  \"kitchens</w>\": 28301,\n  \"kite\": 47777,\n  \"kite</w>\": 19867,\n  \"kites</w>\": 45829,\n  \"kits</w>\": 13730,\n  \"kitt\": 10840,\n  \"kitten</w>\": 13063,\n  \"kittens</w>\": 17216,\n  \"kitties</w>\": 36013,\n  \"kitty\": 25067,\n  \"kitty</w>\": 8417,\n  \"kiwan\": 38709,\n  \"kiwanis</w>\": 46513,\n  \"kiwi</w>\": 22440,\n  \"kiwis</w>\": 48108,\n  \"kiya</w>\": 41610,\n  \"kj\": 27385,\n  \"kj</w>\": 28238,\n  \"kja\": 41048,\n  \"kjv</w>\": 37387,\n  \"kk\": 4390,\n  \"kk</w>\": 10849,\n  \"kka</w>\": 19002,\n  \"kke</w>\": 44239,\n  \"kker</w>\": 32399,\n  \"kki</w>\": 44672,\n  \"kkk</w>\": 20073,\n  \"kkkk\": 15834,\n  \"kkkk</w>\": 47160,\n  \"kkkkkkkk\": 31042,\n  \"kko</w>\": 43965,\n  \"kkr</w>\": 40855,\n  \"kl\": 8498,\n  \"kl</w>\": 14134,\n  \"kla\": 11249,\n  \"klan</w>\": 46935,\n  \"klar\": 41374,\n  \"klaus</w>\": 31788,\n  \"kle\": 7612,\n  \"kle</w>\": 7432,\n  \"klein\": 33475,\n  \"klein</w>\": 17579,\n  \"kley</w>\": 18594,\n  \"kli\": 31640,\n  \"klin\": 44809,\n  \"klin</w>\": 41647,\n  \"kline</w>\": 47580,\n  \"kling\": 40270,\n  \"klm</w>\": 38859,\n  \"klo\": 15296,\n  \"klopp</w>\": 26446,\n  \"kltu</w>\": 25978,\n  \"klu\": 21852,\n  \"kly</w>\": 45090,\n  \"km\": 29954,\n  \"km</w>\": 4590,\n  \"kman</w>\": 33312,\n  \"kms</w>\": 24996,\n  \"kn\": 4825,\n  \"kn</w>\": 23693,\n  \"knapp</w>\": 33945,\n  \"kne\": 6358,\n  \"knee</w>\": 9897,\n  \"knees</w>\": 19115,\n  \"kner</w>\": 31578,\n  \"knew</w>\": 5009,\n  \"kni\": 6312,\n  \"knick\": 33286,\n  \"knicks</w>\": 17657,\n  \"knife\": 44176,\n  \"knife</w>\": 8960,\n  \"knigh\": 43099,\n  \"knight\": 17949,\n  \"knight</w>\": 7355,\n  \"knights</w>\": 10385,\n  \"knit\": 18745,\n  \"knit</w>\": 14313,\n  \"knitted</w>\": 28151,\n  \"knitting</w>\": 18863,\n  \"knives</w>\": 20910,\n  \"kno\": 1482,\n  \"kno</w>\": 25362,\n  \"knob</w>\": 29736,\n  \"knobs</w>\": 47504,\n  \"knock\": 14195,\n  \"knock</w>\": 11583,\n  \"knocked</w>\": 15325,\n  \"knocking</w>\": 20380,\n  \"knockout</w>\": 22602,\n  \"knocks</w>\": 24296,\n  \"knoll</w>\": 43882,\n  \"knot</w>\": 18412,\n  \"knots</w>\": 32428,\n  \"know\": 4179,\n  \"know</w>\": 1038,\n  \"knowing</w>\": 9267,\n  \"knowledge\": 27864,\n  \"knowledge</w>\": 5510,\n  \"knowledgeable</w>\": 43391,\n  \"knowles</w>\": 32631,\n  \"known</w>\": 3102,\n  \"knows</w>\": 4309,\n  \"knowyour\": 30773,\n  \"knox\": 18630,\n  \"knox</w>\": 21833,\n  \"knoxville</w>\": 23232,\n  \"knu\": 14812,\n  \"knuck\": 21333,\n  \"knuckle</w>\": 42023,\n  \"knuckles</w>\": 40127,\n  \"knw</w>\": 40803,\n  \"ko\": 1313,\n  \"ko</w>\": 2448,\n  \"koala</w>\": 36654,\n  \"kobe\": 42644,\n  \"kobe</w>\": 14470,\n  \"kobo</w>\": 42390,\n  \"koch</w>\": 25331,\n  \"kochi</w>\": 36710,\n  \"kodak</w>\": 30425,\n  \"kodi\": 46611,\n  \"kof\": 17528,\n  \"koff</w>\": 47303,\n  \"kofi</w>\": 40400,\n  \"koh\": 13379,\n  \"koh</w>\": 31216,\n  \"kohl</w>\": 48479,\n  \"kohli</w>\": 17549,\n  \"koi</w>\": 28150,\n  \"kojima</w>\": 46419,\n  \"kok\": 32045,\n  \"kok</w>\": 11225,\n  \"koko\": 42426,\n  \"koko</w>\": 40003,\n  \"kol\": 7142,\n  \"kol</w>\": 31023,\n  \"kolkata</w>\": 18011,\n  \"kom\": 6686,\n  \"kom</w>\": 24181,\n  \"kombat</w>\": 29670,\n  \"kombucha</w>\": 48615,\n  \"komo</w>\": 31820,\n  \"kon\": 5743,\n  \"kon</w>\": 29519,\n  \"kona</w>\": 30203,\n  \"kong\": 31784,\n  \"kong</w>\": 6506,\n  \"konstant\": 46583,\n  \"koo\": 12225,\n  \"koo</w>\": 40472,\n  \"kook</w>\": 16003,\n  \"kool\": 36755,\n  \"kool</w>\": 26444,\n  \"kop\": 16623,\n  \"kop</w>\": 38999,\n  \"kor\": 6428,\n  \"kor</w>\": 24175,\n  \"kore\": 3919,\n  \"korea</w>\": 5915,\n  \"korean\": 31949,\n  \"korean</w>\": 8034,\n  \"kori</w>\": 42842,\n  \"korn\": 45412,\n  \"korn</w>\": 31492,\n  \"kors</w>\": 34535,\n  \"kos\": 47438,\n  \"kos</w>\": 22951,\n  \"kosh</w>\": 45233,\n  \"kosher</w>\": 36502,\n  \"koso\": 23892,\n  \"kosovo</w>\": 28343,\n  \"kot\": 23323,\n  \"kot</w>\": 20701,\n  \"kota</w>\": 21735,\n  \"koto\": 40945,\n  \"koto</w>\": 29977,\n  \"kou\": 18502,\n  \"kou</w>\": 39614,\n  \"kour\": 34134,\n  \"kov\": 17733,\n  \"kov</w>\": 15156,\n  \"kova</w>\": 26185,\n  \"koval\": 47903,\n  \"kovic</w>\": 16886,\n  \"kovich</w>\": 44794,\n  \"kovsky</w>\": 33384,\n  \"kow\": 29764,\n  \"kow</w>\": 23919,\n  \"kowski</w>\": 17649,\n  \"koz\": 29598,\n  \"kp\": 16174,\n  \"kp</w>\": 16894,\n  \"kpa</w>\": 38759,\n  \"kph</w>\": 41138,\n  \"kpk</w>\": 42094,\n  \"kpmg</w>\": 38243,\n  \"kpop\": 29534,\n  \"kpop</w>\": 15859,\n  \"kprc</w>\": 47832,\n  \"kprs</w>\": 46253,\n  \"kr\": 7309,\n  \"kr</w>\": 14107,\n  \"kra\": 5762,\n  \"kraft</w>\": 28057,\n  \"kraja</w>\": 29016,\n  \"kraken</w>\": 48408,\n  \"krakow</w>\": 40033,\n  \"kram\": 19075,\n  \"kramer</w>\": 27495,\n  \"kran\": 33243,\n  \"kranti</w>\": 47969,\n  \"krat\": 30470,\n  \"kre\": 8362,\n  \"kreme</w>\": 43140,\n  \"kremlin</w>\": 33979,\n  \"kri\": 3679,\n  \"kris\": 35251,\n  \"kris</w>\": 12261,\n  \"krish\": 11487,\n  \"krishna</w>\": 15863,\n  \"krishnan</w>\": 46535,\n  \"krispy</w>\": 49292,\n  \"krist\": 16490,\n  \"kristen\": 28881,\n  \"kristen</w>\": 16644,\n  \"kristi\": 26895,\n  \"kristin\": 35408,\n  \"kristin</w>\": 26785,\n  \"kristina</w>\": 33180,\n  \"krit\": 36265,\n  \"kro\": 16193,\n  \"kroger</w>\": 36344,\n  \"kron\": 25999,\n  \"kru\": 10609,\n  \"kruger</w>\": 32948,\n  \"krun\": 43084,\n  \"kry\": 13995,\n  \"krystal</w>\": 36554,\n  \"ks\": 10470,\n  \"ks</w>\": 662,\n  \"ksa</w>\": 25439,\n  \"ksh</w>\": 36594,\n  \"kst</w>\": 17420,\n  \"kstate\": 48590,\n  \"ksu</w>\": 43496,\n  \"kswx</w>\": 36180,\n  \"kt\": 17238,\n  \"kt</w>\": 7792,\n  \"ktm</w>\": 33989,\n  \"ktn\": 42170,\n  \"kton</w>\": 37848,\n  \"kts</w>\": 48577,\n  \"ktv\": 36444,\n  \"ku\": 1836,\n  \"ku</w>\": 4827,\n  \"kuala</w>\": 30336,\n  \"kubball</w>\": 48995,\n  \"kuber\": 41336,\n  \"kubernetes</w>\": 45144,\n  \"kubrick</w>\": 37032,\n  \"kuch</w>\": 39394,\n  \"kud\": 40818,\n  \"kudos</w>\": 14481,\n  \"kul\": 11325,\n  \"kul</w>\": 31514,\n  \"kum\": 18086,\n  \"kum</w>\": 28148,\n  \"kuma\": 43139,\n  \"kuma</w>\": 33920,\n  \"kumar\": 22329,\n  \"kumar</w>\": 7674,\n  \"kumb\": 31391,\n  \"kun\": 6849,\n  \"kun</w>\": 21842,\n  \"kung\": 39656,\n  \"kung</w>\": 22347,\n  \"kunst</w>\": 37881,\n  \"kup\": 39023,\n  \"kups</w>\": 27240,\n  \"kur\": 4862,\n  \"kurdi\": 23504,\n  \"kurdish</w>\": 21644,\n  \"kurdistan</w>\": 24459,\n  \"kurds</w>\": 20888,\n  \"kuri\": 46375,\n  \"kuro\": 28239,\n  \"kuro</w>\": 47826,\n  \"kurt\": 31903,\n  \"kurt</w>\": 14527,\n  \"kus\": 27618,\n  \"kus</w>\": 27505,\n  \"kush\": 22264,\n  \"kush</w>\": 24594,\n  \"kushner</w>\": 36716,\n  \"kut\": 17283,\n  \"kut</w>\": 36965,\n  \"kuwait</w>\": 19679,\n  \"kuya</w>\": 34815,\n  \"kuz\": 33253,\n  \"kv\": 27594,\n  \"kv</w>\": 34249,\n  \"kw\": 10072,\n  \"kw</w>\": 18339,\n  \"kwa\": 32784,\n  \"kwa</w>\": 48576,\n  \"kwame</w>\": 46681,\n  \"kwan\": 37100,\n  \"kwan</w>\": 39447,\n  \"kwang</w>\": 40260,\n  \"kwe\": 26050,\n  \"kwi\": 35327,\n  \"kwon</w>\": 36369,\n  \"kx\": 28190,\n  \"kx</w>\": 46442,\n  \"ky\": 2018,\n  \"ky</w>\": 2383,\n  \"kya</w>\": 29142,\n  \"kyc</w>\": 37758,\n  \"kyiv</w>\": 36422,\n  \"kyle\": 15847,\n  \"kyle</w>\": 7539,\n  \"kylie\": 28282,\n  \"kylie</w>\": 17983,\n  \"kyliejenner</w>\": 47232,\n  \"kylo</w>\": 47704,\n  \"kyo\": 13150,\n  \"kyo</w>\": 6281,\n  \"kyoto</w>\": 23223,\n  \"kyr\": 26329,\n  \"kyrgy\": 40013,\n  \"kyrgyz\": 48346,\n  \"kyrie</w>\": 21857,\n  \"kyu\": 28296,\n  \"kyu</w>\": 25490,\n  \"kyuhyun</w>\": 37229,\n  \"kyung</w>\": 41058,\n  \"kyungsoo</w>\": 30280,\n  \"kywx</w>\": 39940,\n  \"kz\": 48743,\n  \"kz</w>\": 36848,\n  \"kzn</w>\": 38264,\n  \"kÃ¶\": 32437,\n  \"l\": 75,\n  \"l</w>\": 331,\n  \"la\": 572,\n  \"la</w>\": 1210,\n  \"laa</w>\": 44642,\n  \"lab\": 3537,\n  \"lab</w>\": 4352,\n  \"labe\": 25749,\n  \"label\": 12235,\n  \"label</w>\": 9093,\n  \"labeled</w>\": 32720,\n  \"labeling</w>\": 36825,\n  \"labelled</w>\": 45188,\n  \"labels</w>\": 17413,\n  \"lable</w>\": 31879,\n  \"labor\": 11201,\n  \"labor</w>\": 7878,\n  \"laboratories</w>\": 43421,\n  \"laboratory</w>\": 17664,\n  \"laborday</w>\": 39324,\n  \"labou\": 32700,\n  \"labour\": 19586,\n  \"labour</w>\": 6019,\n  \"labourdoorstep</w>\": 37008,\n  \"labout\": 35961,\n  \"labra\": 37067,\n  \"labrador</w>\": 25409,\n  \"labs</w>\": 12021,\n  \"laby\": 29131,\n  \"labyrin\": 31782,\n  \"labyrinth</w>\": 35594,\n  \"lac\": 4477,\n  \"lac</w>\": 16189,\n  \"lace\": 30012,\n  \"lace</w>\": 5421,\n  \"laced</w>\": 36800,\n  \"laces</w>\": 23281,\n  \"lacey</w>\": 31754,\n  \"lach\": 30558,\n  \"lack\": 24915,\n  \"lack</w>\": 8069,\n  \"lacking</w>\": 30080,\n  \"lacks</w>\": 34388,\n  \"laco\": 45882,\n  \"lacrosse</w>\": 12915,\n  \"lacy</w>\": 38645,\n  \"lad\": 15991,\n  \"lad</w>\": 10707,\n  \"ladak\": 42312,\n  \"ladakh</w>\": 45295,\n  \"ladder</w>\": 16637,\n  \"ladders</w>\": 47125,\n  \"lade</w>\": 26447,\n  \"laden</w>\": 28634,\n  \"ladi\": 12934,\n  \"ladies\": 28932,\n  \"ladies</w>\": 3431,\n  \"lads</w>\": 9803,\n  \"lady\": 7275,\n  \"lady</w>\": 2909,\n  \"ladybird</w>\": 43389,\n  \"ladybug</w>\": 40038,\n  \"ladygaga</w>\": 21232,\n  \"laf\": 47555,\n  \"lafayette</w>\": 22683,\n  \"lag\": 30932,\n  \"lag</w>\": 20394,\n  \"laga</w>\": 30161,\n  \"lage</w>\": 24369,\n  \"lager\": 36811,\n  \"lager</w>\": 22989,\n  \"lagh\": 37237,\n  \"laghate\": 47565,\n  \"laghateparth</w>\": 48780,\n  \"lagi</w>\": 39786,\n  \"lago\": 42698,\n  \"lago</w>\": 31476,\n  \"lagoon</w>\": 22753,\n  \"lagos</w>\": 12728,\n  \"lagun\": 18500,\n  \"laguna</w>\": 23609,\n  \"lah\": 27315,\n  \"lah</w>\": 4299,\n  \"lahat</w>\": 42164,\n  \"lahore</w>\": 16733,\n  \"lai</w>\": 23947,\n  \"laid\": 42560,\n  \"laid</w>\": 11160,\n  \"lain\": 46958,\n  \"lain</w>\": 17151,\n  \"laine</w>\": 35860,\n  \"lair</w>\": 31981,\n  \"lais</w>\": 34923,\n  \"lak\": 12890,\n  \"lak</w>\": 26793,\n  \"lake\": 6441,\n  \"lake</w>\": 2553,\n  \"lakedistrict</w>\": 26437,\n  \"lakel\": 26133,\n  \"lakeland</w>\": 34306,\n  \"laker\": 45717,\n  \"lakers</w>\": 13570,\n  \"lakes</w>\": 9265,\n  \"lakeshore</w>\": 42595,\n  \"lakeside</w>\": 30915,\n  \"lakewood</w>\": 36417,\n  \"lakh</w>\": 21487,\n  \"lakhs</w>\": 37985,\n  \"lakings</w>\": 34289,\n  \"lakota</w>\": 45510,\n  \"laksh\": 24937,\n  \"lakshmi</w>\": 39682,\n  \"lal\": 12301,\n  \"lal</w>\": 19430,\n  \"lala</w>\": 33661,\n  \"lali\": 21726,\n  \"laliga</w>\": 32383,\n  \"lam\": 2022,\n  \"lam</w>\": 5704,\n  \"lama</w>\": 26049,\n  \"lamar\": 28678,\n  \"lamar</w>\": 17284,\n  \"lamb\": 19863,\n  \"lamb</w>\": 10034,\n  \"lambda</w>\": 36687,\n  \"lambert</w>\": 14574,\n  \"lambeth</w>\": 43410,\n  \"lambo</w>\": 45464,\n  \"lamborgh\": 18709,\n  \"lamborghini</w>\": 19462,\n  \"lambs</w>\": 30361,\n  \"lame</w>\": 23192,\n  \"lamin\": 22337,\n  \"laminated</w>\": 49079,\n  \"lamo\": 41461,\n  \"lamont</w>\": 46719,\n  \"lamp\": 26700,\n  \"lamp</w>\": 10725,\n  \"lampard</w>\": 39989,\n  \"lamps</w>\": 23424,\n  \"lan\": 1193,\n  \"lan</w>\": 4872,\n  \"lana</w>\": 15406,\n  \"lanapar\": 47437,\n  \"lanaparrilla</w>\": 47819,\n  \"lanc\": 11872,\n  \"lanca\": 15694,\n  \"lancashire</w>\": 20939,\n  \"lancaster</w>\": 16446,\n  \"lance\": 26025,\n  \"lance</w>\": 11609,\n  \"lancer</w>\": 38195,\n  \"lancers</w>\": 46392,\n  \"lancia</w>\": 48698,\n  \"lancs</w>\": 47540,\n  \"land\": 1567,\n  \"land</w>\": 973,\n  \"lande</w>\": 36556,\n  \"landed</w>\": 9873,\n  \"lander\": 37247,\n  \"lander</w>\": 9666,\n  \"landers</w>\": 20019,\n  \"landfall</w>\": 38465,\n  \"landfill</w>\": 34947,\n  \"landia</w>\": 41384,\n  \"landing</w>\": 8292,\n  \"landings</w>\": 46104,\n  \"landlord</w>\": 28938,\n  \"landlords</w>\": 35283,\n  \"landmark</w>\": 15208,\n  \"landmarks</w>\": 30393,\n  \"lando\": 25463,\n  \"lando</w>\": 7065,\n  \"landon</w>\": 32748,\n  \"landrover</w>\": 38125,\n  \"landry</w>\": 36137,\n  \"lands\": 40223,\n  \"lands</w>\": 2961,\n  \"landsc\": 4384,\n  \"landscape\": 21123,\n  \"landscape</w>\": 5727,\n  \"landscapephotography</w>\": 28125,\n  \"landscapes</w>\": 15344,\n  \"landscaping</w>\": 25642,\n  \"landslide</w>\": 31954,\n  \"lane\": 25534,\n  \"lane</w>\": 3980,\n  \"lanes</w>\": 10345,\n  \"laney</w>\": 38552,\n  \"lang\": 7969,\n  \"lang</w>\": 8578,\n  \"lange</w>\": 32021,\n  \"langford</w>\": 45615,\n  \"langley</w>\": 28595,\n  \"langu\": 4095,\n  \"language\": 46103,\n  \"language</w>\": 4781,\n  \"languages</w>\": 13527,\n  \"lani</w>\": 22964,\n  \"lanka</w>\": 16221,\n  \"lankan</w>\": 40531,\n  \"lannister</w>\": 49056,\n  \"lans\": 43550,\n  \"lansing</w>\": 30805,\n  \"lant</w>\": 44504,\n  \"lanta</w>\": 44768,\n  \"lantern</w>\": 17185,\n  \"lanterns</w>\": 33676,\n  \"lantic\": 32601,\n  \"lantic</w>\": 27678,\n  \"lants</w>\": 38425,\n  \"lanyard</w>\": 46808,\n  \"lao\": 32475,\n  \"lao</w>\": 29521,\n  \"laos</w>\": 34353,\n  \"lap\": 7213,\n  \"lap</w>\": 8639,\n  \"lapd</w>\": 32557,\n  \"lapel</w>\": 47961,\n  \"lapland</w>\": 43633,\n  \"laps</w>\": 18711,\n  \"lapse</w>\": 33365,\n  \"laptop</w>\": 10464,\n  \"laptops</w>\": 32189,\n  \"laq</w>\": 45026,\n  \"lar\": 1592,\n  \"lar</w>\": 1652,\n  \"lara</w>\": 19435,\n  \"lard</w>\": 40347,\n  \"lare\": 22415,\n  \"laredo</w>\": 48427,\n  \"large\": 40234,\n  \"large</w>\": 3638,\n  \"largely</w>\": 21418,\n  \"larger</w>\": 12567,\n  \"largest</w>\": 4960,\n  \"largo</w>\": 44161,\n  \"lari\": 34676,\n  \"lark\": 43164,\n  \"lark</w>\": 23536,\n  \"larkin</w>\": 34769,\n  \"larry\": 18642,\n  \"larry</w>\": 8242,\n  \"lars</w>\": 8669,\n  \"larsen</w>\": 39721,\n  \"larson</w>\": 27973,\n  \"larvae</w>\": 44840,\n  \"las\": 8295,\n  \"las</w>\": 2552,\n  \"lasag\": 31210,\n  \"lasagna</w>\": 40683,\n  \"lasalle</w>\": 43866,\n  \"laser\": 25607,\n  \"laser</w>\": 9885,\n  \"lasers</w>\": 37060,\n  \"lash\": 31995,\n  \"lash</w>\": 18480,\n  \"lashes</w>\": 21015,\n  \"lass\": 24203,\n  \"lass</w>\": 18263,\n  \"lassic</w>\": 39430,\n  \"last\": 10600,\n  \"last</w>\": 952,\n  \"lasted</w>\": 25711,\n  \"lasting</w>\": 13434,\n  \"lastnight</w>\": 30159,\n  \"lasts</w>\": 20141,\n  \"lasvegas</w>\": 17789,\n  \"lat\": 1591,\n  \"lat</w>\": 28437,\n  \"lata</w>\": 47114,\n  \"latam</w>\": 40012,\n  \"late\": 13267,\n  \"late</w>\": 2325,\n  \"latel\": 49035,\n  \"lately</w>\": 11824,\n  \"latepost</w>\": 48328,\n  \"later\": 24109,\n  \"later</w>\": 2941,\n  \"lateral</w>\": 26646,\n  \"latest\": 46805,\n  \"latest</w>\": 2053,\n  \"latex</w>\": 27520,\n  \"lati\": 16357,\n  \"latimes</w>\": 43356,\n  \"latin\": 16695,\n  \"latin</w>\": 9888,\n  \"latina</w>\": 27936,\n  \"latino\": 45734,\n  \"latino</w>\": 19470,\n  \"latinos</w>\": 40233,\n  \"lation</w>\": 6191,\n  \"latitude</w>\": 37392,\n  \"lative</w>\": 15719,\n  \"lator</w>\": 9291,\n  \"lators</w>\": 28278,\n  \"latt\": 33561,\n  \"latte</w>\": 17697,\n  \"latter</w>\": 26198,\n  \"latvia</w>\": 30034,\n  \"lau\": 1853,\n  \"lau</w>\": 23090,\n  \"lauderdale</w>\": 24352,\n  \"laugh\": 4969,\n  \"laugh</w>\": 6332,\n  \"laughed</w>\": 16746,\n  \"laughing</w>\": 8301,\n  \"laughs</w>\": 14322,\n  \"laughter</w>\": 10722,\n  \"laun\": 2944,\n  \"launch\": 31168,\n  \"launch</w>\": 2904,\n  \"launched</w>\": 6125,\n  \"launcher</w>\": 35782,\n  \"launches</w>\": 7023,\n  \"launching</w>\": 8565,\n  \"laundering</w>\": 34079,\n  \"laundry</w>\": 14797,\n  \"laur\": 15256,\n  \"laura\": 17091,\n  \"laura</w>\": 7763,\n  \"laure\": 16932,\n  \"laureate</w>\": 25675,\n  \"laurel\": 43370,\n  \"laurel</w>\": 19942,\n  \"lauren\": 10456,\n  \"lauren</w>\": 7634,\n  \"laurence</w>\": 29353,\n  \"laurent</w>\": 23226,\n  \"laurie</w>\": 20326,\n  \"laus\": 38895,\n  \"laus</w>\": 28111,\n  \"lause</w>\": 22269,\n  \"laut\": 47688,\n  \"lav\": 13767,\n  \"lav</w>\": 26919,\n  \"lava</w>\": 16765,\n  \"laven\": 15047,\n  \"lavender</w>\": 16033,\n  \"laver\": 28188,\n  \"lavish</w>\": 35443,\n  \"law\": 2874,\n  \"law</w>\": 2606,\n  \"lawful</w>\": 33845,\n  \"lawler</w>\": 47862,\n  \"lawless</w>\": 39468,\n  \"lawmaker</w>\": 37169,\n  \"lawmakers</w>\": 21190,\n  \"lawn\": 31675,\n  \"lawn</w>\": 11024,\n  \"lawrence\": 32221,\n  \"lawrence</w>\": 8820,\n  \"laws</w>\": 7306,\n  \"lawson</w>\": 22152,\n  \"lawsuit</w>\": 14346,\n  \"lawsuits</w>\": 44331,\n  \"lawyer</w>\": 10552,\n  \"lawyers</w>\": 14232,\n  \"lax\": 17750,\n  \"lax</w>\": 10024,\n  \"lay\": 7205,\n  \"lay</w>\": 6360,\n  \"laye\": 25995,\n  \"layer</w>\": 12411,\n  \"layered</w>\": 28520,\n  \"layers</w>\": 15900,\n  \"laying</w>\": 12333,\n  \"layla</w>\": 45050,\n  \"layne</w>\": 48721,\n  \"layo\": 21738,\n  \"layoffs</w>\": 29019,\n  \"layout</w>\": 17314,\n  \"lays</w>\": 19546,\n  \"layton</w>\": 38061,\n  \"laz\": 18806,\n  \"lazar\": 33075,\n  \"lazarus</w>\": 49126,\n  \"laze</w>\": 41559,\n  \"lazer</w>\": 43735,\n  \"lazio</w>\": 33010,\n  \"lazy\": 32614,\n  \"lazy</w>\": 10753,\n  \"lb\": 21958,\n  \"lb</w>\": 7422,\n  \"lbc</w>\": 37694,\n  \"lbj</w>\": 45683,\n  \"lbloggers</w>\": 48695,\n  \"lbs</w>\": 8912,\n  \"lc\": 9584,\n  \"lc</w>\": 7225,\n  \"lcd</w>\": 21356,\n  \"lcfc</w>\": 25339,\n  \"lcs</w>\": 32279,\n  \"ld\": 1431,\n  \"ld</w>\": 730,\n  \"lder</w>\": 6945,\n  \"lders</w>\": 43221,\n  \"ldn\": 37050,\n  \"ldn</w>\": 2517,\n  \"ldnont</w>\": 25827,\n  \"ldnt</w>\": 21690,\n  \"ldr</w>\": 37279,\n  \"lds</w>\": 31235,\n  \"le\": 534,\n  \"le</w>\": 579,\n  \"lea\": 2246,\n  \"lea</w>\": 13324,\n  \"leach</w>\": 35527,\n  \"lead\": 1328,\n  \"lead</w>\": 2784,\n  \"leader\": 14806,\n  \"leader</w>\": 3236,\n  \"leaderboard</w>\": 34519,\n  \"leaders</w>\": 3546,\n  \"leadership\": 36876,\n  \"leadership</w>\": 3652,\n  \"leading</w>\": 3833,\n  \"leads</w>\": 5335,\n  \"leaf\": 9377,\n  \"leaf</w>\": 7232,\n  \"leaflet</w>\": 38289,\n  \"leaflets</w>\": 39014,\n  \"leafs</w>\": 16688,\n  \"leafy</w>\": 42616,\n  \"leagu\": 13317,\n  \"league\": 16635,\n  \"league</w>\": 2313,\n  \"leagueof\": 26022,\n  \"leagueoflegends</w>\": 31737,\n  \"leagues</w>\": 19888,\n  \"leah\": 24350,\n  \"leah</w>\": 19308,\n  \"leak\": 42900,\n  \"leak</w>\": 15489,\n  \"leaked</w>\": 14353,\n  \"leaking</w>\": 34097,\n  \"leaks</w>\": 15657,\n  \"leam\": 39606,\n  \"lean\": 12447,\n  \"lean</w>\": 8208,\n  \"leaning</w>\": 24411,\n  \"leanne</w>\": 41448,\n  \"leans</w>\": 9357,\n  \"leap\": 29129,\n  \"leap</w>\": 15392,\n  \"leaps</w>\": 48080,\n  \"lear\": 1146,\n  \"lear</w>\": 27663,\n  \"learn\": 16959,\n  \"learn</w>\": 1768,\n  \"learned</w>\": 6048,\n  \"learnenglish</w>\": 49040,\n  \"learner</w>\": 33547,\n  \"learners</w>\": 19572,\n  \"learning\": 22632,\n  \"learning</w>\": 2378,\n  \"learns</w>\": 17569,\n  \"learnt</w>\": 18959,\n  \"leary</w>\": 36051,\n  \"lease\": 49041,\n  \"lease</w>\": 14394,\n  \"leased</w>\": 48352,\n  \"leash</w>\": 36192,\n  \"leasing</w>\": 29160,\n  \"least</w>\": 3651,\n  \"leather\": 21417,\n  \"leather</w>\": 5862,\n  \"leau</w>\": 26498,\n  \"leav\": 3198,\n  \"leave\": 37512,\n  \"leave</w>\": 3258,\n  \"leaves</w>\": 5579,\n  \"leaving</w>\": 5216,\n  \"leban\": 9360,\n  \"lebanese</w>\": 23819,\n  \"lebanon</w>\": 11695,\n  \"leblanc</w>\": 46381,\n  \"lebo\": 44184,\n  \"lebron</w>\": 11971,\n  \"lebu\": 47030,\n  \"lec\": 944,\n  \"lec</w>\": 35374,\n  \"leche</w>\": 46197,\n  \"lect</w>\": 45392,\n  \"lection</w>\": 18252,\n  \"lections</w>\": 30995,\n  \"lecture</w>\": 6617,\n  \"lecturer</w>\": 23795,\n  \"lectures</w>\": 21118,\n  \"led\": 8767,\n  \"led</w>\": 912,\n  \"ledge\": 23647,\n  \"ledge</w>\": 4815,\n  \"ledger</w>\": 26817,\n  \"leds</w>\": 36763,\n  \"lee\": 6224,\n  \"lee</w>\": 2592,\n  \"leed\": 16483,\n  \"leed</w>\": 40206,\n  \"leeds\": 38900,\n  \"leeds</w>\": 7420,\n  \"leek</w>\": 34585,\n  \"leeminho</w>\": 37831,\n  \"leen\": 35311,\n  \"leen</w>\": 15940,\n  \"leep\": 48875,\n  \"leep</w>\": 10191,\n  \"lees\": 29324,\n  \"lees</w>\": 34056,\n  \"lef\": 9152,\n  \"left\": 33949,\n  \"left</w>\": 1823,\n  \"leftist</w>\": 35143,\n  \"lefto\": 17437,\n  \"leftover</w>\": 26414,\n  \"leftovers</w>\": 28481,\n  \"lefty</w>\": 33935,\n  \"leg\": 1211,\n  \"leg</w>\": 4924,\n  \"lega</w>\": 38674,\n  \"legacy\": 44108,\n  \"legacy</w>\": 6447,\n  \"legal\": 17743,\n  \"legal</w>\": 3998,\n  \"legalization</w>\": 40584,\n  \"legalize</w>\": 42921,\n  \"legally</w>\": 14152,\n  \"legate</w>\": 46009,\n  \"lege</w>\": 8065,\n  \"legen\": 6105,\n  \"legend\": 5480,\n  \"legend</w>\": 3539,\n  \"legendary</w>\": 6053,\n  \"legendof\": 47915,\n  \"legends</w>\": 6396,\n  \"leges</w>\": 15356,\n  \"legg\": 18474,\n  \"legg</w>\": 32511,\n  \"legged</w>\": 25830,\n  \"leggings</w>\": 22895,\n  \"leggo</w>\": 43441,\n  \"legi\": 11183,\n  \"legion\": 35503,\n  \"legion</w>\": 14525,\n  \"legis\": 7200,\n  \"legislat\": 16486,\n  \"legislation</w>\": 14143,\n  \"legislative</w>\": 16755,\n  \"legislators</w>\": 31572,\n  \"legislature</w>\": 22309,\n  \"legit</w>\": 12563,\n  \"legitim\": 17656,\n  \"legitimate</w>\": 24491,\n  \"lego\": 28117,\n  \"lego</w>\": 7849,\n  \"legos</w>\": 45359,\n  \"legs</w>\": 7072,\n  \"leh\": 19105,\n  \"leh</w>\": 29298,\n  \"lehead</w>\": 28090,\n  \"lehigh</w>\": 34527,\n  \"lehman</w>\": 46094,\n  \"lei\": 15828,\n  \"lei</w>\": 21830,\n  \"leia</w>\": 32723,\n  \"leic\": 35073,\n  \"leica</w>\": 30206,\n  \"leice\": 10026,\n  \"leicester\": 28795,\n  \"leicester</w>\": 11510,\n  \"leicestershire</w>\": 45358,\n  \"leigh\": 14849,\n  \"leigh</w>\": 9292,\n  \"leighton</w>\": 30782,\n  \"leila</w>\": 41342,\n  \"lein\": 20026,\n  \"lein</w>\": 28551,\n  \"leinster</w>\": 32242,\n  \"leip\": 36401,\n  \"leipzig</w>\": 41860,\n  \"leis\": 13133,\n  \"leisure</w>\": 15849,\n  \"leit\": 35446,\n  \"leith</w>\": 34141,\n  \"lek\": 26626,\n  \"lek</w>\": 36535,\n  \"lel</w>\": 46623,\n  \"lele</w>\": 26075,\n  \"lem\": 10213,\n  \"lem</w>\": 8428,\n  \"leman</w>\": 24478,\n  \"lemans</w>\": 26694,\n  \"lement</w>\": 9693,\n  \"lements</w>\": 15833,\n  \"lemme</w>\": 23318,\n  \"lemon\": 12272,\n  \"lemon</w>\": 7184,\n  \"lemonade</w>\": 18884,\n  \"lemons</w>\": 29576,\n  \"lemore</w>\": 41147,\n  \"len\": 3687,\n  \"len</w>\": 2159,\n  \"lena</w>\": 22038,\n  \"lend\": 45397,\n  \"lend</w>\": 24987,\n  \"lender</w>\": 44734,\n  \"lenders</w>\": 42443,\n  \"lending</w>\": 20209,\n  \"lene</w>\": 17628,\n  \"leness</w>\": 36551,\n  \"leng\": 7861,\n  \"length</w>\": 10130,\n  \"lengths</w>\": 31858,\n  \"lengthy</w>\": 32624,\n  \"lenin</w>\": 41760,\n  \"lennon</w>\": 18360,\n  \"lennox</w>\": 45748,\n  \"lenny\": 48448,\n  \"lenny</w>\": 30124,\n  \"leno</w>\": 45357,\n  \"lenovo</w>\": 25886,\n  \"lens</w>\": 8666,\n  \"lenses</w>\": 21264,\n  \"lent\": 20943,\n  \"lent</w>\": 22605,\n  \"lentil</w>\": 41511,\n  \"lentils</w>\": 44269,\n  \"leo\": 24008,\n  \"leo</w>\": 8312,\n  \"leon\": 6581,\n  \"leon</w>\": 9763,\n  \"leonard\": 43849,\n  \"leonard</w>\": 13142,\n  \"leonardo</w>\": 20282,\n  \"leone</w>\": 22864,\n  \"leop\": 11234,\n  \"leopard</w>\": 15931,\n  \"leopards</w>\": 40996,\n  \"leopold</w>\": 45501,\n  \"lep\": 48884,\n  \"leppard</w>\": 41656,\n  \"lepre\": 45641,\n  \"ler\": 5587,\n  \"ler</w>\": 1803,\n  \"lero\": 15067,\n  \"lerosis</w>\": 35455,\n  \"leroy</w>\": 32441,\n  \"lers</w>\": 6247,\n  \"lery</w>\": 38184,\n  \"les\": 4339,\n  \"les</w>\": 840,\n  \"lesbian</w>\": 17419,\n  \"lesbians</w>\": 43182,\n  \"lesh</w>\": 32282,\n  \"lesley</w>\": 25506,\n  \"lesli\": 13649,\n  \"leslie</w>\": 16244,\n  \"lesn\": 39568,\n  \"lesnar</w>\": 42223,\n  \"less\": 3242,\n  \"less</w>\": 1285,\n  \"lesser</w>\": 20369,\n  \"lessly</w>\": 13103,\n  \"lessness</w>\": 24847,\n  \"lesson</w>\": 7714,\n  \"lessons</w>\": 7199,\n  \"lest\": 24372,\n  \"lest</w>\": 6794,\n  \"lester\": 23157,\n  \"lester</w>\": 24023,\n  \"lestwe\": 29726,\n  \"lestweforget</w>\": 30273,\n  \"let\": 1898,\n  \"let</w>\": 1094,\n  \"leta</w>\": 34319,\n  \"lete</w>\": 34078,\n  \"letes</w>\": 6815,\n  \"leth\": 30022,\n  \"leth</w>\": 42462,\n  \"lethal</w>\": 21905,\n  \"lethbridge</w>\": 48390,\n  \"leti</w>\": 34176,\n  \"letics</w>\": 14504,\n  \"letit\": 46423,\n  \"leto</w>\": 32203,\n  \"leton\": 37674,\n  \"leton</w>\": 7462,\n  \"lets\": 10448,\n  \"lets</w>\": 3243,\n  \"letsgo\": 16967,\n  \"letsgo</w>\": 29789,\n  \"letstalk</w>\": 35591,\n  \"lett\": 22428,\n  \"lett</w>\": 9778,\n  \"lette\": 41798,\n  \"lette</w>\": 10301,\n  \"letter\": 15567,\n  \"letter</w>\": 4861,\n  \"lettering</w>\": 26382,\n  \"letterman</w>\": 38447,\n  \"letters</w>\": 9181,\n  \"letting</w>\": 9510,\n  \"letto</w>\": 35449,\n  \"lettu\": 17933,\n  \"lettuce</w>\": 18573,\n  \"leu\": 15691,\n  \"leuke\": 31031,\n  \"leukemia</w>\": 32097,\n  \"leum</w>\": 21571,\n  \"leur</w>\": 45806,\n  \"lev\": 17022,\n  \"lev</w>\": 29950,\n  \"levan\": 42543,\n  \"leve\": 36271,\n  \"level\": 21682,\n  \"level</w>\": 2931,\n  \"leveled</w>\": 48453,\n  \"levels</w>\": 6295,\n  \"leven\": 44792,\n  \"leven</w>\": 34729,\n  \"lever\": 20178,\n  \"lever</w>\": 23094,\n  \"leverage</w>\": 24030,\n  \"leveraging</w>\": 37948,\n  \"levi\": 25630,\n  \"levi</w>\": 19113,\n  \"leviathan</w>\": 41736,\n  \"levin</w>\": 36949,\n  \"levine</w>\": 26594,\n  \"levit\": 22715,\n  \"levy</w>\": 17147,\n  \"lew\": 5063,\n  \"lew</w>\": 25329,\n  \"lewan\": 48349,\n  \"lewd</w>\": 45241,\n  \"lewes</w>\": 40431,\n  \"lewi\": 19589,\n  \"lewis\": 22043,\n  \"lewis</w>\": 6020,\n  \"lewisham\": 37385,\n  \"lewisham</w>\": 47633,\n  \"lewishamilton</w>\": 42960,\n  \"lewood</w>\": 37951,\n  \"lex\": 6586,\n  \"lex</w>\": 9658,\n  \"lexa</w>\": 48259,\n  \"lexi\": 44231,\n  \"lexi</w>\": 24679,\n  \"lexington</w>\": 22308,\n  \"lexus</w>\": 20694,\n  \"ley\": 2565,\n  \"ley</w>\": 1066,\n  \"leye</w>\": 37061,\n  \"leys\": 45609,\n  \"leys</w>\": 14834,\n  \"leyton</w>\": 46573,\n  \"lez</w>\": 26442,\n  \"lf\": 33960,\n  \"lf</w>\": 22078,\n  \"lfc\": 37826,\n  \"lfc</w>\": 8267,\n  \"lfw</w>\": 28514,\n  \"lg\": 4546,\n  \"lg</w>\": 11368,\n  \"lga</w>\": 39348,\n  \"lgb\": 25401,\n  \"lgbt\": 11743,\n  \"lgbt</w>\": 9592,\n  \"lgbti</w>\": 42730,\n  \"lgbtq\": 47625,\n  \"lgbtq</w>\": 14939,\n  \"lgm</w>\": 39389,\n  \"lh\": 27794,\n  \"lh</w>\": 31159,\n  \"lhp</w>\": 45092,\n  \"lhs</w>\": 33170,\n  \"li\": 554,\n  \"li</w>\": 4250,\n  \"lia\": 26118,\n  \"lia</w>\": 6964,\n  \"liability</w>\": 29139,\n  \"liaison</w>\": 39294,\n  \"liam\": 5258,\n  \"liam</w>\": 7167,\n  \"lian</w>\": 18058,\n  \"liance</w>\": 40864,\n  \"liar</w>\": 16334,\n  \"liars</w>\": 23863,\n  \"lias</w>\": 46021,\n  \"lib\": 10249,\n  \"lib</w>\": 13345,\n  \"libby</w>\": 36832,\n  \"libdems</w>\": 40869,\n  \"liber\": 3425,\n  \"liberal\": 48032,\n  \"liberal</w>\": 9985,\n  \"liberalism</w>\": 40018,\n  \"liberals</w>\": 15981,\n  \"liberated</w>\": 38690,\n  \"liberation</w>\": 19507,\n  \"liberia</w>\": 32208,\n  \"libertarian</w>\": 35067,\n  \"liberties</w>\": 48623,\n  \"liberty\": 23397,\n  \"liberty</w>\": 8480,\n  \"libr\": 2856,\n  \"libra</w>\": 43038,\n  \"librarian</w>\": 25148,\n  \"librarians</w>\": 37806,\n  \"libraries</w>\": 14277,\n  \"library\": 25713,\n  \"library</w>\": 3519,\n  \"libre\": 49210,\n  \"libre</w>\": 31681,\n  \"libs</w>\": 26401,\n  \"liby\": 36390,\n  \"libya</w>\": 16417,\n  \"libyan</w>\": 42319,\n  \"lic\": 2508,\n  \"lic</w>\": 3376,\n  \"lice</w>\": 45691,\n  \"licen\": 6706,\n  \"licence</w>\": 20550,\n  \"license</w>\": 10337,\n  \"licensed</w>\": 18752,\n  \"licenses</w>\": 36414,\n  \"licensing</w>\": 24219,\n  \"lich\": 23979,\n  \"lich</w>\": 25875,\n  \"lick\": 29197,\n  \"lick</w>\": 17541,\n  \"licking</w>\": 33013,\n  \"licks</w>\": 42117,\n  \"lics</w>\": 44552,\n  \"lid\": 39369,\n  \"lid</w>\": 17678,\n  \"lidge</w>\": 45558,\n  \"lido</w>\": 35683,\n  \"lids</w>\": 41609,\n  \"lie\": 6570,\n  \"lie</w>\": 2538,\n  \"lieb</w>\": 45387,\n  \"liebe</w>\": 37749,\n  \"lied</w>\": 6486,\n  \"lief</w>\": 38428,\n  \"lien</w>\": 45716,\n  \"lier</w>\": 3626,\n  \"liers</w>\": 19303,\n  \"lies\": 37236,\n  \"lies</w>\": 3205,\n  \"liest</w>\": 14020,\n  \"liet</w>\": 41107,\n  \"lieu\": 20401,\n  \"lieu</w>\": 35313,\n  \"lieutenant</w>\": 22538,\n  \"lif\": 16456,\n  \"life\": 2666,\n  \"life</w>\": 970,\n  \"lifeat\": 27801,\n  \"lifeboat</w>\": 37404,\n  \"lifecycle</w>\": 49171,\n  \"lifein\": 48447,\n  \"lifeis\": 24824,\n  \"lifeisgood</w>\": 46433,\n  \"lifel\": 15025,\n  \"lifeline</w>\": 38438,\n  \"lifelong</w>\": 21358,\n  \"lifeof\": 36061,\n  \"lifesaving</w>\": 48016,\n  \"lifespan</w>\": 49257,\n  \"lifestyle\": 46512,\n  \"lifestyle</w>\": 7037,\n  \"lifestyles</w>\": 48521,\n  \"lifetime\": 48737,\n  \"lifetime</w>\": 9107,\n  \"liff</w>\": 34404,\n  \"liffe</w>\": 38942,\n  \"lift\": 33146,\n  \"lift</w>\": 6779,\n  \"lifted</w>\": 16783,\n  \"lifter</w>\": 38555,\n  \"lifting</w>\": 10857,\n  \"lifts</w>\": 18291,\n  \"lig\": 19915,\n  \"lig</w>\": 38493,\n  \"liga</w>\": 16802,\n  \"ligam\": 31077,\n  \"ligament</w>\": 48705,\n  \"ligan</w>\": 27962,\n  \"ligans</w>\": 42133,\n  \"ligh\": 7510,\n  \"light\": 3885,\n  \"light</w>\": 1395,\n  \"lighted</w>\": 18404,\n  \"lighten</w>\": 32717,\n  \"lightening</w>\": 28170,\n  \"lighter</w>\": 14102,\n  \"lighthouse</w>\": 13717,\n  \"lighting</w>\": 5799,\n  \"lightly</w>\": 26878,\n  \"lightning</w>\": 7756,\n  \"lightroom</w>\": 41454,\n  \"lights</w>\": 3073,\n  \"lightweight</w>\": 16278,\n  \"ligu\": 42920,\n  \"ligue</w>\": 29196,\n  \"lik\": 4831,\n  \"lik</w>\": 18495,\n  \"like\": 9175,\n  \"like</w>\": 789,\n  \"liked</w>\": 7112,\n  \"likefor\": 48444,\n  \"likeli\": 40666,\n  \"likelihood</w>\": 48158,\n  \"likely</w>\": 5256,\n  \"liken\": 36084,\n  \"likes</w>\": 4724,\n  \"liking</w>\": 16810,\n  \"lil\": 6012,\n  \"lil</w>\": 4461,\n  \"lilac</w>\": 33647,\n  \"lili\": 26686,\n  \"lili</w>\": 48411,\n  \"lilies</w>\": 38110,\n  \"lillard</w>\": 47016,\n  \"lille</w>\": 38705,\n  \"lilli\": 40920,\n  \"lillian</w>\": 41563,\n  \"lilly\": 47825,\n  \"lilly</w>\": 21815,\n  \"lily\": 23803,\n  \"lily</w>\": 10647,\n  \"lim\": 2377,\n  \"lim</w>\": 17204,\n  \"lima</w>\": 17589,\n  \"limb\": 27061,\n  \"limb</w>\": 32363,\n  \"limbo</w>\": 46179,\n  \"limbs</w>\": 34886,\n  \"lime\": 17385,\n  \"lime</w>\": 11193,\n  \"limel\": 48658,\n  \"limer\": 16915,\n  \"limerick</w>\": 19501,\n  \"limestone</w>\": 27272,\n  \"limit\": 18933,\n  \"limit</w>\": 9973,\n  \"limitations</w>\": 32730,\n  \"limited\": 49229,\n  \"limited</w>\": 3472,\n  \"limiting</w>\": 35812,\n  \"limitless</w>\": 35833,\n  \"limits</w>\": 11966,\n  \"limo</w>\": 33166,\n  \"limous\": 47287,\n  \"limpopo</w>\": 47175,\n  \"lin\": 1254,\n  \"lin</w>\": 2424,\n  \"lina</w>\": 26110,\n  \"lincol\": 6239,\n  \"lincoln\": 16957,\n  \"lincoln</w>\": 7454,\n  \"lincolnshire</w>\": 29014,\n  \"lind\": 6492,\n  \"linda\": 45410,\n  \"linda</w>\": 10760,\n  \"linden\": 44076,\n  \"linden</w>\": 34832,\n  \"lindo</w>\": 38467,\n  \"lindsay\": 29846,\n  \"lindsay</w>\": 16858,\n  \"lindsey\": 29475,\n  \"lindsey</w>\": 18128,\n  \"line\": 3674,\n  \"line</w>\": 1148,\n  \"linear</w>\": 19816,\n  \"linebacker</w>\": 29848,\n  \"lined</w>\": 11842,\n  \"lineman</w>\": 31501,\n  \"linen</w>\": 20032,\n  \"liner</w>\": 11618,\n  \"liners</w>\": 24463,\n  \"lines</w>\": 3418,\n  \"liness</w>\": 28633,\n  \"lineup</w>\": 7316,\n  \"lineups</w>\": 33589,\n  \"ling\": 4851,\n  \"ling</w>\": 1358,\n  \"linger</w>\": 29593,\n  \"lingerie</w>\": 18473,\n  \"lingering</w>\": 46494,\n  \"lings</w>\": 11390,\n  \"lington\": 27673,\n  \"lington</w>\": 9002,\n  \"lingu\": 34449,\n  \"lingui\": 29942,\n  \"linguistic</w>\": 46847,\n  \"linguistics</w>\": 48651,\n  \"lining</w>\": 11589,\n  \"link\": 18433,\n  \"link</w>\": 2468,\n  \"linke\": 15088,\n  \"linked</w>\": 11059,\n  \"linkedin</w>\": 16302,\n  \"linkin\": 40287,\n  \"linkin</w>\": 49291,\n  \"linking</w>\": 23296,\n  \"links</w>\": 8113,\n  \"linn</w>\": 37431,\n  \"lino\": 41189,\n  \"lino</w>\": 34995,\n  \"lins</w>\": 6567,\n  \"linson</w>\": 15401,\n  \"linton</w>\": 36479,\n  \"linus</w>\": 49303,\n  \"linux</w>\": 14061,\n  \"lio</w>\": 19395,\n  \"lion\": 8872,\n  \"lion</w>\": 5567,\n  \"lionel</w>\": 19441,\n  \"lions</w>\": 7093,\n  \"lip\": 8630,\n  \"lip</w>\": 8546,\n  \"lipo\": 38795,\n  \"lipp\": 38074,\n  \"lips</w>\": 8847,\n  \"lipse</w>\": 10351,\n  \"lipstick</w>\": 15618,\n  \"liqu\": 6310,\n  \"lique\": 32680,\n  \"liqueur</w>\": 43612,\n  \"liqui\": 33817,\n  \"liquid\": 18366,\n  \"liquid</w>\": 10158,\n  \"liquidity</w>\": 42812,\n  \"liquor</w>\": 17828,\n  \"lis\": 7297,\n  \"lis</w>\": 12749,\n  \"lisa\": 25236,\n  \"lisa</w>\": 7424,\n  \"lisam\": 43072,\n  \"lisboa</w>\": 40052,\n  \"lisbon</w>\": 17708,\n  \"lish\": 12658,\n  \"lish</w>\": 2354,\n  \"lished</w>\": 22620,\n  \"lisle</w>\": 21529,\n  \"lism</w>\": 34390,\n  \"liss\": 45489,\n  \"liss</w>\": 35433,\n  \"lisse</w>\": 49309,\n  \"list\": 1734,\n  \"list</w>\": 1998,\n  \"lista</w>\": 37812,\n  \"listed</w>\": 6457,\n  \"listen\": 17454,\n  \"listen</w>\": 2672,\n  \"listened</w>\": 15347,\n  \"listener</w>\": 34819,\n  \"listeners</w>\": 26901,\n  \"listening</w>\": 3656,\n  \"listens</w>\": 25912,\n  \"lister</w>\": 45109,\n  \"listing</w>\": 8145,\n  \"listings</w>\": 21987,\n  \"liston</w>\": 48041,\n  \"lists</w>\": 12281,\n  \"lit\": 2213,\n  \"lit</w>\": 4350,\n  \"lita</w>\": 30100,\n  \"lite\": 29273,\n  \"lite</w>\": 13694,\n  \"litecoin</w>\": 39063,\n  \"liter\": 3085,\n  \"liter</w>\": 34904,\n  \"literacy</w>\": 12841,\n  \"literal</w>\": 24269,\n  \"literally</w>\": 4719,\n  \"literary</w>\": 13586,\n  \"literature</w>\": 11072,\n  \"litfest</w>\": 40369,\n  \"lith\": 37005,\n  \"lithium</w>\": 22794,\n  \"litho\": 31088,\n  \"lithograph</w>\": 49022,\n  \"lithu\": 21045,\n  \"lithuania</w>\": 27068,\n  \"liti\": 24292,\n  \"litigation</w>\": 31769,\n  \"lito</w>\": 47381,\n  \"litre</w>\": 25786,\n  \"litres</w>\": 39919,\n  \"litt\": 1216,\n  \"litt</w>\": 47583,\n  \"litter\": 45431,\n  \"litter</w>\": 17118,\n  \"litters</w>\": 45300,\n  \"little\": 7024,\n  \"little</w>\": 1274,\n  \"littlemix</w>\": 29731,\n  \"littlest</w>\": 48969,\n  \"litur\": 36830,\n  \"litz</w>\": 30357,\n  \"liu</w>\": 20466,\n  \"liv\": 13895,\n  \"liv</w>\": 19901,\n  \"livan</w>\": 12785,\n  \"live\": 3215,\n  \"live</w>\": 1064,\n  \"lived</w>\": 8867,\n  \"livel\": 17973,\n  \"liveli\": 26566,\n  \"livelihood</w>\": 46497,\n  \"livelihoods</w>\": 47716,\n  \"lively</w>\": 19663,\n  \"liveme</w>\": 35396,\n  \"livemusic</w>\": 15688,\n  \"liven\": 41057,\n  \"liveon\": 22815,\n  \"livepd\": 38742,\n  \"livepd</w>\": 31899,\n  \"liver\": 4755,\n  \"liver</w>\": 12639,\n  \"liverpool\": 29778,\n  \"liverpool</w>\": 5366,\n  \"livery</w>\": 23248,\n  \"lives</w>\": 3247,\n  \"livesmatter</w>\": 20348,\n  \"livestock</w>\": 22079,\n  \"livestream</w>\": 16844,\n  \"livetweet</w>\": 38546,\n  \"livin</w>\": 28061,\n  \"living\": 10965,\n  \"living</w>\": 2815,\n  \"livingston</w>\": 30551,\n  \"lix</w>\": 45068,\n  \"liz\": 8632,\n  \"liz</w>\": 12242,\n  \"liza</w>\": 28787,\n  \"lizard</w>\": 17221,\n  \"lizards</w>\": 41991,\n  \"lizasober\": 44487,\n  \"lizasoberano</w>\": 45076,\n  \"lizz\": 34430,\n  \"lizzie</w>\": 29530,\n  \"lizzy</w>\": 32306,\n  \"lj\": 34211,\n  \"lj</w>\": 32273,\n  \"lju\": 44562,\n  \"lk\": 39110,\n  \"lk</w>\": 26596,\n  \"lka</w>\": 21881,\n  \"ll\": 1657,\n  \"ll</w>\": 865,\n  \"lla</w>\": 15419,\n  \"llama</w>\": 36679,\n  \"llan\": 17281,\n  \"llan</w>\": 38728,\n  \"lland\": 31150,\n  \"llc</w>\": 17161,\n  \"lle\": 26550,\n  \"lle</w>\": 29732,\n  \"llen\": 41197,\n  \"ller</w>\": 7722,\n  \"llers</w>\": 26426,\n  \"lli\": 47015,\n  \"lli</w>\": 13368,\n  \"llis</w>\": 25518,\n  \"lll</w>\": 27177,\n  \"llll\": 34874,\n  \"llll</w>\": 43485,\n  \"llo</w>\": 19293,\n  \"lloy\": 10092,\n  \"lloyd\": 33339,\n  \"lloyd</w>\": 12400,\n  \"llp</w>\": 28042,\n  \"lls</w>\": 40535,\n  \"lly</w>\": 26379,\n  \"lm\": 6981,\n  \"lm</w>\": 15282,\n  \"lma\": 4493,\n  \"lmao</w>\": 5121,\n  \"lmaoo</w>\": 32623,\n  \"lmaooo</w>\": 33362,\n  \"lmaoooo</w>\": 45232,\n  \"lmfa\": 8928,\n  \"lmfao</w>\": 11068,\n  \"lmfaooo</w>\": 47658,\n  \"lmp</w>\": 43575,\n  \"lms</w>\": 30381,\n  \"ln\": 31644,\n  \"ln</w>\": 18654,\n  \"lng</w>\": 22339,\n  \"lnp</w>\": 39679,\n  \"lo\": 549,\n  \"lo</w>\": 2982,\n  \"loa</w>\": 39678,\n  \"load\": 4515,\n  \"load</w>\": 2834,\n  \"loaded</w>\": 6756,\n  \"loader</w>\": 28492,\n  \"loading</w>\": 9975,\n  \"loads</w>\": 8691,\n  \"loaf\": 26467,\n  \"loaf</w>\": 18273,\n  \"loan\": 28431,\n  \"loan</w>\": 8176,\n  \"loans</w>\": 14206,\n  \"lob\": 11197,\n  \"lob</w>\": 46606,\n  \"lobal</w>\": 34574,\n  \"lobb\": 27698,\n  \"lobby</w>\": 12449,\n  \"lobbying</w>\": 36047,\n  \"lobe</w>\": 46325,\n  \"lobes</w>\": 24148,\n  \"lobo</w>\": 39323,\n  \"lobos</w>\": 36586,\n  \"lobster</w>\": 13793,\n  \"loc\": 1378,\n  \"loc</w>\": 25826,\n  \"local\": 9202,\n  \"local</w>\": 2029,\n  \"localized</w>\": 49399,\n  \"locally</w>\": 15603,\n  \"locals</w>\": 15041,\n  \"locate</w>\": 20490,\n  \"located</w>\": 5677,\n  \"location</w>\": 4372,\n  \"locations</w>\": 9580,\n  \"loch\": 20188,\n  \"loch</w>\": 14101,\n  \"lock\": 7201,\n  \"lock</w>\": 4381,\n  \"lockdown</w>\": 35636,\n  \"locke</w>\": 29698,\n  \"locked</w>\": 8371,\n  \"locker</w>\": 14053,\n  \"lockhart</w>\": 48642,\n  \"lockheed</w>\": 36637,\n  \"locking</w>\": 19978,\n  \"locks</w>\": 13212,\n  \"lockscreen</w>\": 42439,\n  \"loco</w>\": 25555,\n  \"locom\": 22798,\n  \"locomo\": 46147,\n  \"locomotive</w>\": 30439,\n  \"locu\": 33635,\n  \"locust</w>\": 46237,\n  \"lod\": 45650,\n  \"lodge</w>\": 10504,\n  \"loe\": 30113,\n  \"loe</w>\": 25484,\n  \"loeb</w>\": 49334,\n  \"lof\": 15011,\n  \"loff</w>\": 31008,\n  \"loft\": 35707,\n  \"loft</w>\": 20049,\n  \"loftus</w>\": 46689,\n  \"log\": 3239,\n  \"log</w>\": 7383,\n  \"logan\": 20655,\n  \"logan</w>\": 10569,\n  \"logans</w>\": 40752,\n  \"logg</w>\": 43002,\n  \"logged</w>\": 31457,\n  \"logger</w>\": 39089,\n  \"logging</w>\": 24444,\n  \"logi\": 3177,\n  \"logia</w>\": 48031,\n  \"logic</w>\": 10670,\n  \"logical</w>\": 4791,\n  \"logically</w>\": 24782,\n  \"logie</w>\": 33445,\n  \"logies</w>\": 7378,\n  \"login</w>\": 31121,\n  \"logist</w>\": 7407,\n  \"logistics</w>\": 14755,\n  \"logists</w>\": 12233,\n  \"logne</w>\": 19911,\n  \"logo\": 31480,\n  \"logo</w>\": 5750,\n  \"logos</w>\": 24879,\n  \"logs</w>\": 22745,\n  \"logue</w>\": 27785,\n  \"logy\": 22721,\n  \"logy</w>\": 1659,\n  \"loh\": 49129,\n  \"loh</w>\": 37983,\n  \"loi</w>\": 35128,\n  \"loid</w>\": 31408,\n  \"loin</w>\": 21760,\n  \"loire</w>\": 46040,\n  \"lois</w>\": 27040,\n  \"lok\": 19908,\n  \"lok</w>\": 23575,\n  \"loki</w>\": 24435,\n  \"lol\": 10721,\n  \"lol</w>\": 1824,\n  \"lola</w>\": 19065,\n  \"lolita</w>\": 42615,\n  \"lolla\": 45483,\n  \"lolli\": 27906,\n  \"lollipop</w>\": 34605,\n  \"lolly</w>\": 48264,\n  \"lolo\": 16895,\n  \"lolo</w>\": 37481,\n  \"lolol</w>\": 25280,\n  \"lololol</w>\": 34738,\n  \"lolz</w>\": 35260,\n  \"lom\": 9279,\n  \"loma</w>\": 42889,\n  \"lombar\": 25493,\n  \"lombard</w>\": 46461,\n  \"lombardi</w>\": 44346,\n  \"lomond</w>\": 48941,\n  \"lon\": 1235,\n  \"lon</w>\": 6507,\n  \"london\": 6835,\n  \"london</w>\": 1789,\n  \"londonmarathon</w>\": 35018,\n  \"lone\": 22220,\n  \"lone</w>\": 13576,\n  \"lonel\": 28872,\n  \"loneliness</w>\": 30310,\n  \"lonely\": 34509,\n  \"lonely</w>\": 12368,\n  \"lonelyplanet</w>\": 44984,\n  \"long\": 4792,\n  \"long</w>\": 1538,\n  \"longe\": 25793,\n  \"longer</w>\": 5349,\n  \"longest</w>\": 10731,\n  \"longevity</w>\": 35354,\n  \"longh\": 20286,\n  \"longhorn</w>\": 41047,\n  \"longhorns</w>\": 38295,\n  \"longing</w>\": 38482,\n  \"longlive\": 47840,\n  \"longs</w>\": 43618,\n  \"longtime</w>\": 19685,\n  \"loo\": 731,\n  \"loo</w>\": 11804,\n  \"look\": 8874,\n  \"look</w>\": 1012,\n  \"lookalike</w>\": 38307,\n  \"lookbook</w>\": 39184,\n  \"looked</w>\": 4913,\n  \"lookin</w>\": 11254,\n  \"looking\": 36898,\n  \"looking</w>\": 1312,\n  \"lookout</w>\": 18330,\n  \"looks</w>\": 1606,\n  \"lool</w>\": 33125,\n  \"loom\": 37440,\n  \"loom</w>\": 17199,\n  \"looming</w>\": 35384,\n  \"looms</w>\": 30550,\n  \"loon</w>\": 28222,\n  \"loona</w>\": 48137,\n  \"looney</w>\": 45315,\n  \"looo\": 20902,\n  \"loool</w>\": 36016,\n  \"looool</w>\": 47038,\n  \"looooo\": 31484,\n  \"loop\": 19606,\n  \"loop</w>\": 10408,\n  \"loops</w>\": 21625,\n  \"loos</w>\": 45723,\n  \"loose\": 43815,\n  \"loose</w>\": 9786,\n  \"loot</w>\": 21518,\n  \"lop\": 36734,\n  \"lop</w>\": 17066,\n  \"lopes</w>\": 49269,\n  \"lopez</w>\": 12982,\n  \"lor\": 2179,\n  \"lor</w>\": 11335,\n  \"lord\": 18896,\n  \"lord</w>\": 3486,\n  \"lorde</w>\": 35483,\n  \"lords</w>\": 14969,\n  \"lore\": 12880,\n  \"lore</w>\": 27218,\n  \"loren\": 13602,\n  \"loren</w>\": 33398,\n  \"lorenzo</w>\": 21342,\n  \"lores</w>\": 34510,\n  \"loretta</w>\": 40863,\n  \"lori\": 20164,\n  \"lori</w>\": 23095,\n  \"lorna</w>\": 46316,\n  \"lorraine</w>\": 27602,\n  \"lorry</w>\": 31354,\n  \"los\": 32217,\n  \"los</w>\": 3087,\n  \"losange\": 14037,\n  \"losangeles</w>\": 14638,\n  \"lose\": 43318,\n  \"lose</w>\": 5354,\n  \"loser</w>\": 18168,\n  \"losers</w>\": 23201,\n  \"loses</w>\": 14263,\n  \"losing</w>\": 7918,\n  \"loss\": 34761,\n  \"loss</w>\": 4327,\n  \"losses</w>\": 16909,\n  \"lost\": 14258,\n  \"lost</w>\": 2624,\n  \"lostdog</w>\": 48482,\n  \"lot\": 5132,\n  \"lot</w>\": 1954,\n  \"loth</w>\": 43625,\n  \"lothian</w>\": 31360,\n  \"lothing</w>\": 42058,\n  \"lotion</w>\": 25260,\n  \"lotr</w>\": 34165,\n  \"lots</w>\": 2958,\n  \"lott</w>\": 42854,\n  \"lotta</w>\": 29125,\n  \"lotte\": 16535,\n  \"lotte</w>\": 7274,\n  \"lottery</w>\": 16975,\n  \"lottie</w>\": 48517,\n  \"lotto</w>\": 28265,\n  \"lotus</w>\": 13824,\n  \"lou\": 2207,\n  \"lou</w>\": 9745,\n  \"loubout\": 38369,\n  \"loud\": 22884,\n  \"loud</w>\": 7464,\n  \"louder</w>\": 25904,\n  \"loudest</w>\": 49214,\n  \"loudly</w>\": 39256,\n  \"lough\": 21927,\n  \"lough</w>\": 28045,\n  \"loughborough</w>\": 49153,\n  \"loui\": 42173,\n  \"louie</w>\": 25790,\n  \"louis\": 8916,\n  \"louis</w>\": 4459,\n  \"louisa</w>\": 40011,\n  \"louise\": 32275,\n  \"louise</w>\": 13076,\n  \"louisi\": 12187,\n  \"louisiana</w>\": 12946,\n  \"louisville</w>\": 13860,\n  \"louisvuitton</w>\": 44911,\n  \"loun\": 6466,\n  \"lounge</w>\": 7141,\n  \"lounging</w>\": 45430,\n  \"lour\": 29383,\n  \"lourdes</w>\": 45071,\n  \"louvre</w>\": 36995,\n  \"lov\": 8923,\n  \"lov</w>\": 21229,\n  \"lova</w>\": 37394,\n  \"lovable</w>\": 38565,\n  \"lovato</w>\": 18960,\n  \"love\": 2618,\n  \"love</w>\": 793,\n  \"lovecraft</w>\": 42405,\n  \"loved</w>\": 3249,\n  \"lovefl</w>\": 38884,\n  \"loveher</w>\": 38306,\n  \"lovehim</w>\": 45733,\n  \"loveis\": 30931,\n  \"loveisland</w>\": 30970,\n  \"loveislove</w>\": 43603,\n  \"loveit</w>\": 24764,\n  \"lovel\": 8999,\n  \"lovelies</w>\": 31412,\n  \"lovelondon</w>\": 46493,\n  \"lovely\": 33250,\n  \"lovely</w>\": 2165,\n  \"lovemy\": 20041,\n  \"lovemyjob</w>\": 40130,\n  \"loven\": 33754,\n  \"lover\": 28508,\n  \"lover</w>\": 7168,\n  \"lovers\": 48416,\n  \"lovers</w>\": 5973,\n  \"loves\": 37773,\n  \"loves</w>\": 3925,\n  \"lovethe\": 33040,\n  \"lovethem</w>\": 48298,\n  \"lovett</w>\": 47095,\n  \"lovewins</w>\": 47687,\n  \"loveyou\": 39226,\n  \"loveyou</w>\": 25964,\n  \"loveyour\": 26462,\n  \"lovin\": 33442,\n  \"lovin</w>\": 16354,\n  \"loving\": 29568,\n  \"loving</w>\": 3721,\n  \"lovingly</w>\": 44100,\n  \"low\": 1049,\n  \"low</w>\": 1042,\n  \"loway</w>\": 16104,\n  \"lowe</w>\": 17910,\n  \"lowed</w>\": 22733,\n  \"lowell</w>\": 24458,\n  \"lower\": 32578,\n  \"lower</w>\": 4909,\n  \"lowered</w>\": 34968,\n  \"lowering</w>\": 35261,\n  \"lowers</w>\": 36398,\n  \"lowes</w>\": 38515,\n  \"lowest</w>\": 12098,\n  \"lowing</w>\": 8283,\n  \"lowkey</w>\": 29481,\n  \"lowry</w>\": 27444,\n  \"lows</w>\": 4406,\n  \"lox</w>\": 41725,\n  \"loy\": 4519,\n  \"loy</w>\": 23929,\n  \"loyal</w>\": 13032,\n  \"loyalty</w>\": 14686,\n  \"loyd</w>\": 44212,\n  \"loyed</w>\": 29279,\n  \"loyment</w>\": 18307,\n  \"loyola</w>\": 32569,\n  \"lp\": 22282,\n  \"lp</w>\": 6392,\n  \"lpc</w>\": 44092,\n  \"lpg</w>\": 47905,\n  \"lpga</w>\": 34295,\n  \"lps</w>\": 32094,\n  \"lr\": 20572,\n  \"lr</w>\": 7041,\n  \"lrt</w>\": 32996,\n  \"ls\": 19051,\n  \"ls</w>\": 1268,\n  \"lsd</w>\": 43766,\n  \"lse\": 46127,\n  \"lse</w>\": 43886,\n  \"lsu\": 35428,\n  \"lsu</w>\": 15672,\n  \"lt\": 13642,\n  \"lt</w>\": 3333,\n  \"ltc</w>\": 27664,\n  \"ltd</w>\": 6802,\n  \"lte</w>\": 25202,\n  \"lton</w>\": 14237,\n  \"lu\": 664,\n  \"lu</w>\": 9657,\n  \"lub\": 22469,\n  \"lub</w>\": 11836,\n  \"lubbock</w>\": 37660,\n  \"lubric\": 40963,\n  \"luc\": 7013,\n  \"luc</w>\": 28014,\n  \"luca</w>\": 21053,\n  \"lucas\": 23425,\n  \"lucas</w>\": 10225,\n  \"lucci</w>\": 45849,\n  \"luce</w>\": 46217,\n  \"lucent</w>\": 41552,\n  \"lucer\": 36042,\n  \"luch\": 36646,\n  \"lucha</w>\": 38449,\n  \"luci\": 8787,\n  \"lucia</w>\": 22290,\n  \"luciano</w>\": 46365,\n  \"lucid</w>\": 44540,\n  \"lucie</w>\": 39461,\n  \"lucifer\": 46224,\n  \"lucifer</w>\": 27687,\n  \"lucille</w>\": 47454,\n  \"lucin\": 27523,\n  \"luck\": 9647,\n  \"luck</w>\": 2820,\n  \"luckiest</w>\": 42469,\n  \"luckily</w>\": 20100,\n  \"lucknow</w>\": 29407,\n  \"lucky\": 20495,\n  \"lucky</w>\": 4133,\n  \"lucrative</w>\": 41485,\n  \"lucy\": 17262,\n  \"lucy</w>\": 10120,\n  \"lud\": 14288,\n  \"lude</w>\": 28755,\n  \"ludo\": 40141,\n  \"ludwig</w>\": 30633,\n  \"lue</w>\": 45199,\n  \"luf\": 25264,\n  \"lufc</w>\": 17818,\n  \"luffy</w>\": 39047,\n  \"lufthan\": 37769,\n  \"lufthansa</w>\": 39145,\n  \"lug</w>\": 45521,\n  \"lugg\": 19673,\n  \"luggage</w>\": 20138,\n  \"luhan</w>\": 20975,\n  \"luigi</w>\": 28444,\n  \"luis\": 25231,\n  \"luis</w>\": 11339,\n  \"luiz</w>\": 39633,\n  \"lujah</w>\": 31639,\n  \"luk</w>\": 21652,\n  \"luka</w>\": 34878,\n  \"lukaku</w>\": 37177,\n  \"lukas</w>\": 37941,\n  \"luke\": 11970,\n  \"luke</w>\": 5652,\n  \"lul\": 20861,\n  \"lulla\": 37019,\n  \"lullaby</w>\": 41676,\n  \"lulu\": 32052,\n  \"lulu</w>\": 26935,\n  \"lum\": 18112,\n  \"lum</w>\": 5997,\n  \"lumb\": 36231,\n  \"lumber\": 27421,\n  \"lumber</w>\": 34692,\n  \"lumi\": 41437,\n  \"lumia</w>\": 31912,\n  \"lumin\": 15867,\n  \"luminous</w>\": 37913,\n  \"lump</w>\": 38704,\n  \"lumpur</w>\": 34411,\n  \"lun\": 3221,\n  \"lun</w>\": 49390,\n  \"luna</w>\": 14425,\n  \"lunar</w>\": 16043,\n  \"lunatic</w>\": 45874,\n  \"lunch\": 10954,\n  \"lunch</w>\": 2772,\n  \"luncheon</w>\": 15104,\n  \"lunches</w>\": 29705,\n  \"lunchtime</w>\": 14330,\n  \"lund\": 30975,\n  \"lund</w>\": 20181,\n  \"lunes</w>\": 35648,\n  \"lung\": 38479,\n  \"lung</w>\": 16271,\n  \"lungs</w>\": 27366,\n  \"lup</w>\": 27413,\n  \"lupita</w>\": 49352,\n  \"lupus</w>\": 36017,\n  \"lur\": 14439,\n  \"lure</w>\": 31376,\n  \"lures</w>\": 46747,\n  \"lurking</w>\": 29941,\n  \"lus</w>\": 7158,\n  \"lusci\": 38004,\n  \"luscious</w>\": 39935,\n  \"lush\": 40382,\n  \"lush</w>\": 16263,\n  \"lust\": 42071,\n  \"lust</w>\": 12662,\n  \"lustre</w>\": 46673,\n  \"luther\": 21848,\n  \"luther</w>\": 17208,\n  \"lutheran</w>\": 27341,\n  \"luton</w>\": 28288,\n  \"luv\": 24726,\n  \"luv</w>\": 8502,\n  \"lux\": 3439,\n  \"lux</w>\": 16704,\n  \"luxe</w>\": 26373,\n  \"luxemb\": 21314,\n  \"luxembour\": 22712,\n  \"luxembourg</w>\": 23949,\n  \"luxu\": 16112,\n  \"luxurious</w>\": 17292,\n  \"luxury\": 12083,\n  \"luxury</w>\": 5247,\n  \"luxurytravel</w>\": 29010,\n  \"luz</w>\": 41008,\n  \"lv\": 10862,\n  \"lv</w>\": 11184,\n  \"lvl</w>\": 31256,\n  \"lw\": 40515,\n  \"lw</w>\": 35115,\n  \"lx</w>\": 30789,\n  \"ly\": 1251,\n  \"ly</w>\": 597,\n  \"lydia</w>\": 24316,\n  \"lyf</w>\": 43688,\n  \"lyfe</w>\": 30787,\n  \"lyft</w>\": 32944,\n  \"lying</w>\": 7175,\n  \"lyk</w>\": 46376,\n  \"lyle</w>\": 36828,\n  \"lym\": 20087,\n  \"lyme</w>\": 31167,\n  \"lymph\": 30073,\n  \"lymphoma</w>\": 37648,\n  \"lyn\": 3957,\n  \"lyn</w>\": 5054,\n  \"lynch\": 31586,\n  \"lynch</w>\": 13560,\n  \"lynd\": 33416,\n  \"lynda</w>\": 42959,\n  \"lyndon</w>\": 48518,\n  \"lynn\": 25303,\n  \"lynn</w>\": 10667,\n  \"lynne</w>\": 26900,\n  \"lynx</w>\": 28941,\n  \"lyon</w>\": 17176,\n  \"lyons</w>\": 29453,\n  \"lyric\": 24366,\n  \"lyric</w>\": 21291,\n  \"lyrical</w>\": 33358,\n  \"lyricist</w>\": 49013,\n  \"lyrics</w>\": 9551,\n  \"lyrix</w>\": 46814,\n  \"lys</w>\": 45054,\n  \"lyte</w>\": 40059,\n  \"lywood</w>\": 4012,\n  \"lz</w>\": 30818,\n  \"lÃ©\": 39641,\n  \"m\": 76,\n  \"m</w>\": 332,\n  \"ma\": 577,\n  \"ma</w>\": 1226,\n  \"maa\": 42774,\n  \"maa</w>\": 21555,\n  \"maan</w>\": 33668,\n  \"maar</w>\": 48927,\n  \"maas\": 43332,\n  \"mab</w>\": 35639,\n  \"mabel</w>\": 47319,\n  \"mable</w>\": 23001,\n  \"mably</w>\": 40082,\n  \"mabu\": 44682,\n  \"mac\": 1961,\n  \"mac</w>\": 4945,\n  \"macar\": 21558,\n  \"macaroni</w>\": 41824,\n  \"macarthur</w>\": 36785,\n  \"macau\": 43984,\n  \"macau</w>\": 33370,\n  \"macbeth</w>\": 36321,\n  \"macbook</w>\": 20617,\n  \"macdonald</w>\": 20315,\n  \"mace</w>\": 44869,\n  \"maced\": 21102,\n  \"macedonia</w>\": 27071,\n  \"macfar\": 45374,\n  \"macfarlane</w>\": 48825,\n  \"mach\": 2637,\n  \"mach</w>\": 35091,\n  \"machado</w>\": 42318,\n  \"mache\": 43220,\n  \"macher</w>\": 29330,\n  \"machi\": 41783,\n  \"machin\": 17972,\n  \"machine\": 11539,\n  \"machine</w>\": 4169,\n  \"machinelearning</w>\": 13621,\n  \"machinery</w>\": 21858,\n  \"machines</w>\": 11108,\n  \"machining</w>\": 45562,\n  \"macho</w>\": 43977,\n  \"macht</w>\": 45225,\n  \"macin\": 36533,\n  \"mack\": 8590,\n  \"mack</w>\": 12145,\n  \"mackay</w>\": 32497,\n  \"macken\": 48057,\n  \"mackenzie</w>\": 22351,\n  \"mackerel</w>\": 35002,\n  \"mackin\": 26010,\n  \"macklemore</w>\": 41758,\n  \"macle\": 33843,\n  \"maclean</w>\": 47137,\n  \"macleod</w>\": 43684,\n  \"macmillan\": 36364,\n  \"macmillan</w>\": 35191,\n  \"macon</w>\": 35818,\n  \"macos</w>\": 45469,\n  \"macqu\": 38365,\n  \"macquarie</w>\": 40858,\n  \"macro\": 20891,\n  \"macro</w>\": 16626,\n  \"macron</w>\": 24859,\n  \"macs</w>\": 46548,\n  \"macy</w>\": 17113,\n  \"macys</w>\": 47652,\n  \"mad\": 2740,\n  \"mad</w>\": 3843,\n  \"mada</w>\": 37799,\n  \"madagas\": 24758,\n  \"madagascar</w>\": 25744,\n  \"madam\": 33634,\n  \"madam</w>\": 27538,\n  \"madame</w>\": 23507,\n  \"madd\": 31717,\n  \"madden</w>\": 19093,\n  \"maddie\": 39959,\n  \"maddie</w>\": 18875,\n  \"maddow</w>\": 32644,\n  \"maddy</w>\": 31734,\n  \"made\": 5388,\n  \"made</w>\": 1105,\n  \"madein\": 13670,\n  \"madeira</w>\": 33810,\n  \"madel\": 34532,\n  \"madele\": 29831,\n  \"madeleine</w>\": 33264,\n  \"madeline</w>\": 33905,\n  \"madewith\": 28627,\n  \"madewithunity</w>\": 43190,\n  \"madhu\": 23000,\n  \"madhuri\": 38346,\n  \"madhuridixit</w>\": 43889,\n  \"madhya</w>\": 48302,\n  \"madi\": 6527,\n  \"madi</w>\": 27282,\n  \"madison\": 24798,\n  \"madison</w>\": 8791,\n  \"madmen</w>\": 45452,\n  \"madness</w>\": 8755,\n  \"madon\": 44852,\n  \"madonna</w>\": 14137,\n  \"madra\": 27416,\n  \"madras</w>\": 42046,\n  \"madre</w>\": 42130,\n  \"madri\": 5529,\n  \"madrid</w>\": 5909,\n  \"mads</w>\": 41201,\n  \"madu\": 34913,\n  \"madurai</w>\": 49159,\n  \"maduro</w>\": 32912,\n  \"mae\": 16898,\n  \"mae</w>\": 17339,\n  \"maer\": 47088,\n  \"maestro</w>\": 24140,\n  \"mafi\": 47164,\n  \"mafia</w>\": 14890,\n  \"mag\": 1191,\n  \"mag</w>\": 4508,\n  \"maga</w>\": 8694,\n  \"magaz\": 2974,\n  \"magazine</w>\": 3113,\n  \"magazines</w>\": 22253,\n  \"magdal\": 29673,\n  \"mage\": 46568,\n  \"mage</w>\": 10923,\n  \"magee</w>\": 43872,\n  \"magenta</w>\": 38091,\n  \"magento</w>\": 42442,\n  \"mages</w>\": 31059,\n  \"maggi\": 29611,\n  \"maggie\": 41443,\n  \"maggie</w>\": 14524,\n  \"maggio</w>\": 49087,\n  \"magh\": 45555,\n  \"magi\": 19270,\n  \"magic\": 13061,\n  \"magic</w>\": 3778,\n  \"magical\": 36408,\n  \"magical</w>\": 7823,\n  \"magician</w>\": 26368,\n  \"magin\": 42678,\n  \"maging</w>\": 41310,\n  \"magn\": 10290,\n  \"magna</w>\": 34076,\n  \"magne\": 9921,\n  \"magnesium</w>\": 36379,\n  \"magnet</w>\": 18240,\n  \"magnetic</w>\": 13838,\n  \"magnets</w>\": 33030,\n  \"magni\": 24297,\n  \"magnific\": 9725,\n  \"magnificent</w>\": 10724,\n  \"magnitude</w>\": 22955,\n  \"magno\": 21184,\n  \"magnolia</w>\": 27123,\n  \"magnu\": 45198,\n  \"magnum</w>\": 23496,\n  \"magnus</w>\": 26275,\n  \"magpie</w>\": 45973,\n  \"mags</w>\": 31021,\n  \"maguire</w>\": 26470,\n  \"mah\": 7206,\n  \"mah</w>\": 10801,\n  \"maha\": 12237,\n  \"maha</w>\": 33983,\n  \"mahal</w>\": 22301,\n  \"mahan\": 45191,\n  \"mahar\": 11635,\n  \"maharaj</w>\": 38488,\n  \"maharashtra</w>\": 19328,\n  \"mahat\": 32434,\n  \"mahatma</w>\": 40530,\n  \"mahe\": 15756,\n  \"maher</w>\": 29826,\n  \"mahesh\": 33448,\n  \"mahesh</w>\": 22095,\n  \"mahi\": 32529,\n  \"mahi</w>\": 38659,\n  \"mahin\": 24113,\n  \"mahindra</w>\": 31285,\n  \"mahmoud</w>\": 41361,\n  \"mahog\": 30804,\n  \"mahogany</w>\": 33084,\n  \"mahon\": 45864,\n  \"mahon</w>\": 20371,\n  \"mahone</w>\": 26634,\n  \"mai\": 7138,\n  \"mai</w>\": 14595,\n  \"maia</w>\": 46585,\n  \"maid\": 23148,\n  \"maid</w>\": 10226,\n  \"maidan</w>\": 37346,\n  \"maiden\": 37011,\n  \"maiden</w>\": 13809,\n  \"maids</w>\": 27305,\n  \"maidstone</w>\": 44395,\n  \"mail\": 10478,\n  \"mail</w>\": 2614,\n  \"mailbox</w>\": 31482,\n  \"mailed</w>\": 42314,\n  \"mailing</w>\": 26680,\n  \"mailonline</w>\": 26021,\n  \"mails</w>\": 45213,\n  \"main\": 3904,\n  \"main</w>\": 2623,\n  \"maine\": 18639,\n  \"maine</w>\": 7836,\n  \"mained\": 15609,\n  \"mainedcm</w>\": 15845,\n  \"mainland</w>\": 27629,\n  \"mainly</w>\": 15280,\n  \"mains</w>\": 33656,\n  \"mainst\": 42102,\n  \"mainstream</w>\": 18034,\n  \"maintain</w>\": 12954,\n  \"maintained</w>\": 26665,\n  \"maintaining</w>\": 21964,\n  \"maintains</w>\": 38335,\n  \"mainten\": 9399,\n  \"maintenance</w>\": 9610,\n  \"mais</w>\": 28153,\n  \"maisie</w>\": 47355,\n  \"maison\": 37065,\n  \"maison</w>\": 27626,\n  \"mait\": 26387,\n  \"maize</w>\": 35386,\n  \"maj\": 2948,\n  \"maj</w>\": 28723,\n  \"maja</w>\": 47498,\n  \"maje\": 9852,\n  \"majestic</w>\": 15335,\n  \"majesty</w>\": 21188,\n  \"major\": 8008,\n  \"major</w>\": 3350,\n  \"majority</w>\": 10508,\n  \"majors</w>\": 23597,\n  \"mak\": 11271,\n  \"mak</w>\": 19253,\n  \"makar\": 42242,\n  \"makati</w>\": 39402,\n  \"make\": 3232,\n  \"make</w>\": 1078,\n  \"makeaw\": 45859,\n  \"makeinindia</w>\": 42739,\n  \"makeit\": 26308,\n  \"maken\": 47093,\n  \"makeover</w>\": 17926,\n  \"maker\": 15196,\n  \"maker</w>\": 4836,\n  \"makers</w>\": 6577,\n  \"makerspace</w>\": 42400,\n  \"makes</w>\": 2088,\n  \"makeshift</w>\": 43274,\n  \"makeu\": 41707,\n  \"makeup\": 26402,\n  \"makeup</w>\": 5853,\n  \"makeyourown\": 34090,\n  \"makeyourownlane</w>\": 34823,\n  \"maki</w>\": 34514,\n  \"makin\": 43096,\n  \"makin</w>\": 22407,\n  \"making\": 17976,\n  \"making</w>\": 1665,\n  \"makk\": 39852,\n  \"maknae</w>\": 44118,\n  \"mako</w>\": 49061,\n  \"mal\": 1662,\n  \"mal</w>\": 3796,\n  \"mala</w>\": 28290,\n  \"malade</w>\": 36928,\n  \"malaga</w>\": 35395,\n  \"malala</w>\": 41137,\n  \"malam</w>\": 48956,\n  \"malaria</w>\": 24929,\n  \"malawi</w>\": 23405,\n  \"malay\": 5323,\n  \"malay</w>\": 42430,\n  \"malayalam</w>\": 34860,\n  \"malaysi\": 39668,\n  \"malaysia</w>\": 8146,\n  \"malaysian</w>\": 21136,\n  \"malbec</w>\": 47741,\n  \"malcol\": 12645,\n  \"malcolm</w>\": 14139,\n  \"maldives</w>\": 16795,\n  \"male\": 11326,\n  \"male</w>\": 2801,\n  \"males</w>\": 14426,\n  \"malhotra</w>\": 28866,\n  \"mali\": 6701,\n  \"mali</w>\": 22669,\n  \"malia</w>\": 46714,\n  \"malibu</w>\": 21723,\n  \"malicious</w>\": 42147,\n  \"malign\": 41122,\n  \"malik</w>\": 11394,\n  \"mall\": 10984,\n  \"mall</w>\": 6220,\n  \"mallorca</w>\": 28082,\n  \"mallory</w>\": 38968,\n  \"malls</w>\": 36447,\n  \"malm\": 44071,\n  \"malnutrition</w>\": 41153,\n  \"malo</w>\": 43518,\n  \"malone</w>\": 19852,\n  \"maloney</w>\": 45897,\n  \"mals</w>\": 25370,\n  \"malt</w>\": 21688,\n  \"malta</w>\": 16989,\n  \"maltese</w>\": 39838,\n  \"malvern</w>\": 39356,\n  \"malware</w>\": 24153,\n  \"mam\": 4404,\n  \"mam</w>\": 17778,\n  \"mama</w>\": 7133,\n  \"mamamoo</w>\": 36012,\n  \"mamas</w>\": 42395,\n  \"mamba</w>\": 44189,\n  \"mament</w>\": 45690,\n  \"mami</w>\": 43858,\n  \"mamma</w>\": 34893,\n  \"mammal</w>\": 33385,\n  \"mammals</w>\": 31987,\n  \"mammoth</w>\": 28022,\n  \"man\": 723,\n  \"man</w>\": 786,\n  \"mana\": 29467,\n  \"mana</w>\": 15837,\n  \"manafort</w>\": 40108,\n  \"manag\": 1830,\n  \"manage</w>\": 9770,\n  \"managed</w>\": 7928,\n  \"management</w>\": 3319,\n  \"manager</w>\": 3898,\n  \"managerial</w>\": 44261,\n  \"managers</w>\": 12853,\n  \"manages</w>\": 29699,\n  \"managing</w>\": 10892,\n  \"manas\": 44188,\n  \"manatee</w>\": 46558,\n  \"mance</w>\": 2324,\n  \"manchester\": 24424,\n  \"manchester</w>\": 4651,\n  \"mancini</w>\": 47681,\n  \"mancity</w>\": 31538,\n  \"mancrush\": 36945,\n  \"mancrushmonday</w>\": 39307,\n  \"mand\": 4325,\n  \"mand</w>\": 27244,\n  \"mandala</w>\": 41106,\n  \"mandarin</w>\": 26455,\n  \"mandate</w>\": 26228,\n  \"mandatory</w>\": 19934,\n  \"mandel\": 34960,\n  \"mandela</w>\": 16280,\n  \"mandi\": 38961,\n  \"mandir</w>\": 35815,\n  \"mando</w>\": 34006,\n  \"mands</w>\": 12340,\n  \"mandu</w>\": 31440,\n  \"mandy\": 41505,\n  \"mandy</w>\": 24302,\n  \"mane\": 44471,\n  \"mane</w>\": 16044,\n  \"maneu\": 33216,\n  \"mang\": 25616,\n  \"mang</w>\": 31096,\n  \"manga</w>\": 11873,\n  \"mangal\": 43027,\n  \"manger</w>\": 48251,\n  \"mango\": 43831,\n  \"mango</w>\": 13962,\n  \"mangrove</w>\": 47180,\n  \"manhatt\": 10152,\n  \"manhattan</w>\": 10961,\n  \"mani\": 5654,\n  \"mani</w>\": 10718,\n  \"mania</w>\": 8435,\n  \"maniac</w>\": 31814,\n  \"maniacs</w>\": 41444,\n  \"manian</w>\": 40077,\n  \"manic\": 23017,\n  \"manic</w>\": 37825,\n  \"manicure</w>\": 33637,\n  \"manife\": 14379,\n  \"manifest</w>\": 34422,\n  \"manifestation</w>\": 48348,\n  \"manifesto</w>\": 20907,\n  \"manil\": 38827,\n  \"manila</w>\": 10969,\n  \"manipu\": 40261,\n  \"manipul\": 19237,\n  \"manipulation</w>\": 30277,\n  \"manipur</w>\": 47757,\n  \"manish\": 41759,\n  \"manish</w>\": 44720,\n  \"manit\": 15693,\n  \"manitoba</w>\": 20342,\n  \"manjaro</w>\": 41489,\n  \"mankind</w>\": 24155,\n  \"manly</w>\": 25194,\n  \"mann\": 19396,\n  \"mann</w>\": 4783,\n  \"manne\": 30160,\n  \"manned</w>\": 26139,\n  \"mannequin</w>\": 43388,\n  \"manner</w>\": 20700,\n  \"manners</w>\": 31693,\n  \"manning</w>\": 15996,\n  \"manny\": 37054,\n  \"manny</w>\": 20933,\n  \"mano\": 15753,\n  \"mano</w>\": 24016,\n  \"manoj</w>\": 41146,\n  \"manor\": 41830,\n  \"manor</w>\": 13614,\n  \"mans\": 28422,\n  \"mans</w>\": 7746,\n  \"mansfield</w>\": 25543,\n  \"manship</w>\": 15460,\n  \"mansion</w>\": 13404,\n  \"manslaughter</w>\": 48632,\n  \"manson</w>\": 26715,\n  \"mant\": 25122,\n  \"mant</w>\": 27037,\n  \"manta</w>\": 41431,\n  \"mantis</w>\": 39946,\n  \"mantle</w>\": 22159,\n  \"mantra</w>\": 25162,\n  \"manu\": 3404,\n  \"manu</w>\": 25799,\n  \"manual</w>\": 12268,\n  \"manuel\": 29171,\n  \"manuel</w>\": 9567,\n  \"manufac\": 5105,\n  \"manufacture</w>\": 27741,\n  \"manufactured</w>\": 24010,\n  \"manufacturer</w>\": 15668,\n  \"manufacturers</w>\": 18763,\n  \"manufacturing</w>\": 8386,\n  \"manure</w>\": 47907,\n  \"manus</w>\": 28181,\n  \"manuscript</w>\": 24365,\n  \"manuscripts</w>\": 40765,\n  \"manutd</w>\": 20994,\n  \"many\": 28484,\n  \"many</w>\": 1346,\n  \"manziel</w>\": 40637,\n  \"mao\": 47447,\n  \"mao</w>\": 25605,\n  \"maori</w>\": 43400,\n  \"map\": 25180,\n  \"map</w>\": 3923,\n  \"maple\": 21980,\n  \"maple</w>\": 10570,\n  \"mapleleafs</w>\": 41257,\n  \"mapoli</w>\": 28768,\n  \"mapp</w>\": 36894,\n  \"mapped</w>\": 41596,\n  \"mapping</w>\": 15231,\n  \"maps</w>\": 8765,\n  \"mapu\": 42082,\n  \"mar\": 675,\n  \"mar</w>\": 3091,\n  \"mara</w>\": 15655,\n  \"marais</w>\": 47913,\n  \"maran\": 44732,\n  \"marath\": 16274,\n  \"marathi</w>\": 34102,\n  \"marathon\": 40764,\n  \"marathon</w>\": 5910,\n  \"marau\": 38475,\n  \"marbella</w>\": 36182,\n  \"marble\": 45429,\n  \"marble</w>\": 13071,\n  \"marbles</w>\": 42931,\n  \"marc\": 14054,\n  \"marc</w>\": 9075,\n  \"marca</w>\": 38242,\n  \"marcel\": 17726,\n  \"marcel</w>\": 24652,\n  \"marcelo</w>\": 35939,\n  \"march\": 10638,\n  \"march</w>\": 2227,\n  \"marche</w>\": 36173,\n  \"marched</w>\": 37976,\n  \"marches</w>\": 38249,\n  \"marchfor\": 31721,\n  \"marching</w>\": 15082,\n  \"marchmadness</w>\": 28555,\n  \"marci\": 36698,\n  \"marcia</w>\": 41075,\n  \"marck</w>\": 47733,\n  \"marco\": 24719,\n  \"marco</w>\": 10924,\n  \"marcor\": 39945,\n  \"marcorubio</w>\": 41143,\n  \"marcos</w>\": 21696,\n  \"marcu\": 20760,\n  \"marcus\": 48955,\n  \"marcus</w>\": 9895,\n  \"mardi\": 39728,\n  \"mardi</w>\": 29229,\n  \"mardigras</w>\": 43343,\n  \"mare\": 26512,\n  \"mare</w>\": 8870,\n  \"mares</w>\": 19724,\n  \"marg</w>\": 44014,\n  \"margar\": 16838,\n  \"margare\": 10232,\n  \"margaret</w>\": 12185,\n  \"margarita</w>\": 25958,\n  \"margaritas</w>\": 42679,\n  \"margate</w>\": 37428,\n  \"margin\": 19464,\n  \"margin</w>\": 21357,\n  \"marginal</w>\": 38320,\n  \"margins</w>\": 33763,\n  \"margot</w>\": 37144,\n  \"mari\": 2603,\n  \"mari</w>\": 19322,\n  \"maria\": 41109,\n  \"maria</w>\": 6595,\n  \"mariachi</w>\": 44299,\n  \"mariah\": 31214,\n  \"mariah</w>\": 24789,\n  \"mariahcarey</w>\": 36538,\n  \"marian\": 41129,\n  \"marian</w>\": 24677,\n  \"mariana</w>\": 44224,\n  \"marianne</w>\": 32214,\n  \"mariano</w>\": 43988,\n  \"marie\": 20657,\n  \"marie</w>\": 7864,\n  \"marietta</w>\": 46634,\n  \"marig\": 41002,\n  \"marijuana</w>\": 9864,\n  \"maril\": 14611,\n  \"marilyn\": 38959,\n  \"marilyn</w>\": 18489,\n  \"marin\": 8910,\n  \"marin</w>\": 23992,\n  \"marina</w>\": 12060,\n  \"marinated</w>\": 33406,\n  \"marine\": 20674,\n  \"marine</w>\": 5746,\n  \"mariner</w>\": 39972,\n  \"mariners</w>\": 19086,\n  \"marines</w>\": 15018,\n  \"marino</w>\": 30878,\n  \"mario\": 39176,\n  \"mario</w>\": 7600,\n  \"marion\": 37765,\n  \"marion</w>\": 18397,\n  \"maris\": 21512,\n  \"maris</w>\": 33093,\n  \"marisa</w>\": 42938,\n  \"mariska</w>\": 44703,\n  \"marissa</w>\": 31219,\n  \"marist</w>\": 48223,\n  \"mariti\": 13124,\n  \"maritime</w>\": 14331,\n  \"marj\": 38639,\n  \"mark\": 3805,\n  \"mark</w>\": 2110,\n  \"marke\": 2399,\n  \"marked</w>\": 12360,\n  \"marker</w>\": 18170,\n  \"markers</w>\": 23664,\n  \"market\": 11614,\n  \"market</w>\": 2196,\n  \"marketer</w>\": 33482,\n  \"marketers</w>\": 23682,\n  \"marketing\": 19535,\n  \"marketing</w>\": 2905,\n  \"marketplace</w>\": 18241,\n  \"markets</w>\": 7292,\n  \"markham</w>\": 39817,\n  \"marking</w>\": 14705,\n  \"markings</w>\": 41046,\n  \"markle</w>\": 32672,\n  \"marko</w>\": 38338,\n  \"marks</w>\": 5466,\n  \"markus</w>\": 33725,\n  \"marl\": 24922,\n  \"marlborough</w>\": 43515,\n  \"marlene</w>\": 45117,\n  \"marley</w>\": 16504,\n  \"marlin</w>\": 34275,\n  \"marlins</w>\": 23309,\n  \"marlon</w>\": 32995,\n  \"marmalade</w>\": 39068,\n  \"marnock</w>\": 48305,\n  \"maro\": 27029,\n  \"maroon</w>\": 20501,\n  \"marqu\": 20704,\n  \"marque\": 13012,\n  \"marquee</w>\": 27725,\n  \"marquette</w>\": 37624,\n  \"marquez</w>\": 27317,\n  \"marquis</w>\": 33530,\n  \"marr</w>\": 32871,\n  \"marrake\": 37125,\n  \"marrakech</w>\": 39006,\n  \"marri\": 3839,\n  \"marriage\": 38047,\n  \"marriage</w>\": 7040,\n  \"marriages</w>\": 38190,\n  \"married</w>\": 6791,\n  \"marries</w>\": 46283,\n  \"marriott</w>\": 19211,\n  \"marrow</w>\": 31030,\n  \"marry</w>\": 13288,\n  \"marrying</w>\": 40507,\n  \"mars\": 41469,\n  \"mars</w>\": 7496,\n  \"marsden</w>\": 43344,\n  \"marse\": 26577,\n  \"marseille</w>\": 30365,\n  \"marsh\": 9237,\n  \"marsh</w>\": 13505,\n  \"marsha</w>\": 21491,\n  \"marshal</w>\": 26608,\n  \"marshall\": 30939,\n  \"marshall</w>\": 9811,\n  \"marshals</w>\": 44175,\n  \"marshes</w>\": 43450,\n  \"marshmal\": 21069,\n  \"marshmallow</w>\": 28530,\n  \"marshmallows</w>\": 39471,\n  \"mart\": 2348,\n  \"mart</w>\": 7772,\n  \"marta</w>\": 32858,\n  \"martens</w>\": 43211,\n  \"marth\": 34493,\n  \"martha</w>\": 16427,\n  \"marti\": 20577,\n  \"martial</w>\": 17088,\n  \"martialarts</w>\": 35895,\n  \"martian</w>\": 30214,\n  \"martin\": 6929,\n  \"martin</w>\": 3690,\n  \"martina</w>\": 34393,\n  \"martinez</w>\": 13913,\n  \"marting\": 47570,\n  \"martini</w>\": 22199,\n  \"martino</w>\": 41675,\n  \"martins</w>\": 30569,\n  \"marty\": 9926,\n  \"marty</w>\": 17169,\n  \"martyn</w>\": 44075,\n  \"martyr\": 36155,\n  \"martyr</w>\": 26067,\n  \"martyrdom</w>\": 43110,\n  \"martyred</w>\": 39114,\n  \"martyrs</w>\": 24707,\n  \"maru\": 37413,\n  \"maru</w>\": 31838,\n  \"marvel\": 13835,\n  \"marvel</w>\": 5996,\n  \"marvelcomics</w>\": 46897,\n  \"marvell\": 26576,\n  \"marvellous</w>\": 28402,\n  \"marvelous</w>\": 25487,\n  \"marvin</w>\": 19675,\n  \"marx\": 30559,\n  \"marx</w>\": 26001,\n  \"marxist</w>\": 45205,\n  \"mary\": 5146,\n  \"mary</w>\": 2676,\n  \"maryam\": 33636,\n  \"maryam</w>\": 36393,\n  \"maryland</w>\": 11379,\n  \"marys\": 40905,\n  \"marys</w>\": 40228,\n  \"mas\": 5226,\n  \"mas</w>\": 1412,\n  \"masa\": 24995,\n  \"masa</w>\": 41868,\n  \"masala</w>\": 31483,\n  \"masc\": 23564,\n  \"mascar\": 46984,\n  \"mascara</w>\": 31635,\n  \"mascot</w>\": 13983,\n  \"mascots</w>\": 43266,\n  \"mascul\": 25589,\n  \"masculine</w>\": 48269,\n  \"masculinity</w>\": 40465,\n  \"mase\": 49128,\n  \"maser\": 25798,\n  \"maserati</w>\": 30442,\n  \"mash\": 12317,\n  \"mash</w>\": 15680,\n  \"mashable</w>\": 41026,\n  \"mashed</w>\": 27395,\n  \"mashup</w>\": 27079,\n  \"masi\": 35965,\n  \"masjid</w>\": 31420,\n  \"mask\": 19262,\n  \"mask</w>\": 8306,\n  \"masked</w>\": 25757,\n  \"masking</w>\": 47046,\n  \"masks</w>\": 19055,\n  \"maslow</w>\": 44359,\n  \"mason\": 17424,\n  \"mason</w>\": 9699,\n  \"masonic</w>\": 36491,\n  \"masonry</w>\": 30764,\n  \"masons</w>\": 37195,\n  \"masqu\": 26593,\n  \"masquer\": 29604,\n  \"masquerade</w>\": 36944,\n  \"mass\": 4636,\n  \"mass</w>\": 4854,\n  \"massach\": 14484,\n  \"massachuse\": 14577,\n  \"massachusetts</w>\": 14756,\n  \"massacre</w>\": 14696,\n  \"massage</w>\": 13055,\n  \"masse\": 41735,\n  \"masses</w>\": 22978,\n  \"massey</w>\": 29868,\n  \"massi\": 17239,\n  \"massimo</w>\": 45821,\n  \"massive</w>\": 4818,\n  \"massively</w>\": 34297,\n  \"mast\": 45916,\n  \"mast</w>\": 27920,\n  \"master\": 4534,\n  \"master</w>\": 3498,\n  \"mastercard</w>\": 40542,\n  \"masterchef</w>\": 34809,\n  \"masterclass</w>\": 17529,\n  \"mastered</w>\": 32616,\n  \"masterful</w>\": 46823,\n  \"mastering</w>\": 28326,\n  \"mastermind</w>\": 34029,\n  \"masterpiece</w>\": 12066,\n  \"masterpieces</w>\": 37596,\n  \"masters</w>\": 6913,\n  \"mastery</w>\": 34800,\n  \"mastiff</w>\": 42311,\n  \"maswar\": 47887,\n  \"mat\": 905,\n  \"mat</w>\": 9063,\n  \"mata</w>\": 17270,\n  \"match\": 7733,\n  \"match</w>\": 2439,\n  \"matcha</w>\": 32433,\n  \"matchday</w>\": 15947,\n  \"matched</w>\": 17792,\n  \"matches</w>\": 8609,\n  \"matching</w>\": 11840,\n  \"matchup</w>\": 19355,\n  \"matchups</w>\": 49162,\n  \"mate\": 6137,\n  \"mate</w>\": 2936,\n  \"mated</w>\": 33813,\n  \"mateo</w>\": 34991,\n  \"mater</w>\": 23724,\n  \"materi\": 7084,\n  \"material</w>\": 7118,\n  \"materials</w>\": 8161,\n  \"maternal</w>\": 26131,\n  \"maternity</w>\": 23894,\n  \"mates</w>\": 5817,\n  \"math\": 13277,\n  \"math</w>\": 6025,\n  \"mathe\": 8725,\n  \"mathemat\": 11901,\n  \"mathematical</w>\": 25609,\n  \"mathematician</w>\": 41036,\n  \"mathematics</w>\": 20113,\n  \"mathew</w>\": 36333,\n  \"mathews</w>\": 37120,\n  \"mathi\": 23014,\n  \"mathieu</w>\": 40417,\n  \"maths</w>\": 14763,\n  \"mati\": 12716,\n  \"mati</w>\": 32268,\n  \"matic\": 36859,\n  \"matic</w>\": 7900,\n  \"matically</w>\": 38282,\n  \"matics</w>\": 23634,\n  \"matil\": 26751,\n  \"matilda</w>\": 36308,\n  \"matin</w>\": 44849,\n  \"matinee</w>\": 38525,\n  \"mating</w>\": 34346,\n  \"mation</w>\": 11701,\n  \"matisse</w>\": 43446,\n  \"mato\": 13127,\n  \"matologist</w>\": 48842,\n  \"matology</w>\": 27940,\n  \"matory</w>\": 25519,\n  \"matri\": 27041,\n  \"matrix</w>\": 18078,\n  \"mats</w>\": 22259,\n  \"matsu\": 30242,\n  \"matt\": 7972,\n  \"matt</w>\": 3972,\n  \"mattb\": 42791,\n  \"matte\": 31237,\n  \"matte</w>\": 19771,\n  \"mattel</w>\": 35365,\n  \"matteo</w>\": 33120,\n  \"matter\": 30471,\n  \"matter</w>\": 3828,\n  \"matters</w>\": 5708,\n  \"matth\": 41846,\n  \"matthe\": 5116,\n  \"matthew\": 17588,\n  \"matthew</w>\": 7008,\n  \"matthews</w>\": 16739,\n  \"matthi\": 29853,\n  \"matthias</w>\": 45104,\n  \"matti\": 39840,\n  \"mattress</w>\": 23438,\n  \"matty\": 31233,\n  \"matty</w>\": 29176,\n  \"matu\": 40616,\n  \"matur\": 22897,\n  \"mature</w>\": 14417,\n  \"maturity</w>\": 28047,\n  \"mau\": 8134,\n  \"mau</w>\": 23033,\n  \"maui</w>\": 20463,\n  \"maul\": 30725,\n  \"maur\": 10574,\n  \"maure\": 25191,\n  \"maureen</w>\": 31723,\n  \"maurice</w>\": 20200,\n  \"mauricio</w>\": 39066,\n  \"mauriti\": 28406,\n  \"mauritius</w>\": 29305,\n  \"mauro</w>\": 41691,\n  \"mav\": 25697,\n  \"maver\": 16700,\n  \"maverick</w>\": 27425,\n  \"mavericks</w>\": 30092,\n  \"mavs</w>\": 30665,\n  \"maw\": 39351,\n  \"maw</w>\": 42271,\n  \"mawards</w>\": 37682,\n  \"max\": 4898,\n  \"max</w>\": 3902,\n  \"maxi\": 8554,\n  \"maxi</w>\": 23266,\n  \"maxim\": 19892,\n  \"maxim</w>\": 38574,\n  \"maximize</w>\": 28673,\n  \"maximum</w>\": 13162,\n  \"maximus</w>\": 44312,\n  \"maxine</w>\": 38468,\n  \"maxwell</w>\": 19611,\n  \"maxx</w>\": 37466,\n  \"may\": 1686,\n  \"may</w>\": 1270,\n  \"maya\": 45783,\n  \"maya</w>\": 12987,\n  \"mayan</w>\": 37952,\n  \"maybe</w>\": 3746,\n  \"mayday</w>\": 29957,\n  \"mayer</w>\": 21196,\n  \"mayfair</w>\": 35171,\n  \"mayfield</w>\": 33933,\n  \"mayhem</w>\": 21502,\n  \"maymay\": 26600,\n  \"maymay</w>\": 33853,\n  \"maymayentrata</w>\": 30480,\n  \"maynard</w>\": 32487,\n  \"mayne</w>\": 35771,\n  \"mayo\": 22449,\n  \"mayo</w>\": 11280,\n  \"mayor\": 15429,\n  \"mayor</w>\": 4676,\n  \"mayoral</w>\": 28983,\n  \"mayorof\": 43533,\n  \"mayors</w>\": 28501,\n  \"mays</w>\": 35445,\n  \"maythe</w>\": 42281,\n  \"mayward\": 45751,\n  \"mayward</w>\": 23519,\n  \"mayweather</w>\": 22774,\n  \"maz\": 9177,\n  \"maz</w>\": 36215,\n  \"mazda</w>\": 18506,\n  \"maze</w>\": 21988,\n  \"mazz\": 29439,\n  \"maÃ±\": 37059,\n  \"maÃ±ana</w>\": 39354,\n  \"mb\": 758,\n  \"mb</w>\": 3996,\n  \"mba</w>\": 8329,\n  \"mban</w>\": 46685,\n  \"mbar\": 44452,\n  \"mbb</w>\": 10736,\n  \"mbc</w>\": 20137,\n  \"mbe\": 38395,\n  \"mbe</w>\": 27004,\n  \"mber\": 5467,\n  \"mber</w>\": 1034,\n  \"mberg</w>\": 26372,\n  \"mbers</w>\": 5443,\n  \"mbi</w>\": 45347,\n  \"mble\": 20310,\n  \"mble</w>\": 4756,\n  \"mbles</w>\": 28693,\n  \"mbling</w>\": 28604,\n  \"mbo\": 25733,\n  \"mbo</w>\": 11319,\n  \"mbps</w>\": 44896,\n  \"mbs</w>\": 10370,\n  \"mbta</w>\": 38979,\n  \"mbu</w>\": 42228,\n  \"mbuhari</w>\": 36752,\n  \"mc\": 1278,\n  \"mc</w>\": 4126,\n  \"mca\": 40570,\n  \"mca</w>\": 14635,\n  \"mcal\": 28663,\n  \"mcar\": 43776,\n  \"mcbride</w>\": 35080,\n  \"mcc</w>\": 21192,\n  \"mccabe</w>\": 37628,\n  \"mccaf\": 47385,\n  \"mccain</w>\": 20397,\n  \"mccall</w>\": 34844,\n  \"mccann</w>\": 27140,\n  \"mccar\": 9570,\n  \"mccarthy</w>\": 16974,\n  \"mccartney</w>\": 19958,\n  \"mccl\": 24709,\n  \"mccla\": 43672,\n  \"mccle\": 40139,\n  \"mcclure</w>\": 44945,\n  \"mcco\": 46152,\n  \"mccon\": 32638,\n  \"mccor\": 23057,\n  \"mccormack</w>\": 45164,\n  \"mccormick</w>\": 39088,\n  \"mccoy</w>\": 20218,\n  \"mccr\": 41996,\n  \"mccre\": 25393,\n  \"mccul\": 38833,\n  \"mccull\": 41782,\n  \"mcd</w>\": 28930,\n  \"mcder\": 27355,\n  \"mcdermott</w>\": 34504,\n  \"mcdon\": 12171,\n  \"mcdonald</w>\": 10741,\n  \"mcdonalds</w>\": 17674,\n  \"mcdonnell</w>\": 34360,\n  \"mcdowell</w>\": 34119,\n  \"mce\": 26864,\n  \"mcel\": 28752,\n  \"mcen\": 47423,\n  \"mcfad\": 36976,\n  \"mcfadden</w>\": 42105,\n  \"mcfar\": 29020,\n  \"mcfarlane</w>\": 47174,\n  \"mcfc</w>\": 16416,\n  \"mcfly</w>\": 38211,\n  \"mcg\": 42507,\n  \"mcg</w>\": 27995,\n  \"mcgee</w>\": 29223,\n  \"mcgill\": 46524,\n  \"mcgill</w>\": 35511,\n  \"mcgin\": 29596,\n  \"mcgowan</w>\": 40462,\n  \"mcgr\": 25169,\n  \"mcgra\": 29367,\n  \"mcgrath</w>\": 28759,\n  \"mcgraw</w>\": 40950,\n  \"mcgregor</w>\": 19642,\n  \"mcgu\": 34294,\n  \"mcguinness</w>\": 45299,\n  \"mcguire</w>\": 32635,\n  \"mci\": 46212,\n  \"mci</w>\": 45491,\n  \"mcil\": 30481,\n  \"mcin\": 18770,\n  \"mcintosh</w>\": 45353,\n  \"mcintyre</w>\": 33369,\n  \"mck\": 6781,\n  \"mckay</w>\": 33611,\n  \"mcke\": 27424,\n  \"mckee</w>\": 43529,\n  \"mcken\": 42619,\n  \"mckenna</w>\": 24924,\n  \"mckenzie</w>\": 25502,\n  \"mckin\": 15437,\n  \"mckinley</w>\": 39891,\n  \"mckinney</w>\": 33554,\n  \"mckinnon</w>\": 48736,\n  \"mckinsey</w>\": 48143,\n  \"mcl\": 49021,\n  \"mcla\": 12565,\n  \"mclaren\": 37381,\n  \"mclaren</w>\": 16789,\n  \"mclau\": 32285,\n  \"mclaughlin</w>\": 35346,\n  \"mcle\": 25299,\n  \"mclean</w>\": 28666,\n  \"mcleod</w>\": 40259,\n  \"mcm</w>\": 12251,\n  \"mcmahon</w>\": 24026,\n  \"mcmaster</w>\": 42703,\n  \"mcmillan</w>\": 45603,\n  \"mcn\": 42919,\n  \"mcnam\": 32682,\n  \"mcnamara</w>\": 37506,\n  \"mcne\": 42545,\n  \"mco</w>\": 33723,\n  \"mcqueen</w>\": 22544,\n  \"mcr\": 29884,\n  \"mcr</w>\": 16966,\n  \"mcs</w>\": 27020,\n  \"mcu</w>\": 30403,\n  \"md\": 8637,\n  \"md</w>\": 4732,\n  \"mdc\": 38773,\n  \"mdc</w>\": 41761,\n  \"mds</w>\": 48746,\n  \"mdt</w>\": 40822,\n  \"me\": 613,\n  \"me</w>\": 614,\n  \"mea\": 46045,\n  \"mea</w>\": 17711,\n  \"mead\": 12134,\n  \"mead</w>\": 21567,\n  \"meade</w>\": 37218,\n  \"meado\": 16402,\n  \"meadow\": 25213,\n  \"meadow</w>\": 17195,\n  \"meadows</w>\": 17178,\n  \"meal\": 29662,\n  \"meal</w>\": 5478,\n  \"meals</w>\": 11229,\n  \"mean\": 4189,\n  \"mean</w>\": 3450,\n  \"meand\": 48015,\n  \"meaning\": 14586,\n  \"meaning</w>\": 8342,\n  \"meaningful</w>\": 17480,\n  \"meaningless</w>\": 48932,\n  \"meanings</w>\": 45814,\n  \"means</w>\": 3494,\n  \"meant</w>\": 8674,\n  \"meantime</w>\": 27499,\n  \"meanwhile</w>\": 9650,\n  \"meas\": 5867,\n  \"measles</w>\": 38230,\n  \"measurable</w>\": 48010,\n  \"measure\": 15261,\n  \"measure</w>\": 10579,\n  \"measured</w>\": 23154,\n  \"measurement</w>\": 20973,\n  \"measurements</w>\": 29894,\n  \"measures</w>\": 11936,\n  \"measuring</w>\": 18064,\n  \"meat\": 10805,\n  \"meat</w>\": 6480,\n  \"meatball</w>\": 43642,\n  \"meatballs</w>\": 29233,\n  \"meath</w>\": 37920,\n  \"meatless\": 48085,\n  \"meats</w>\": 29558,\n  \"mec</w>\": 27432,\n  \"mecca</w>\": 36095,\n  \"mech</w>\": 38305,\n  \"mechan\": 6715,\n  \"mechanic</w>\": 24582,\n  \"mechanical</w>\": 14467,\n  \"mechanics</w>\": 20536,\n  \"mechanism</w>\": 22576,\n  \"mechanisms</w>\": 28610,\n  \"meck\": 41908,\n  \"med\": 1948,\n  \"med</w>\": 2177,\n  \"meda</w>\": 33614,\n  \"medal\": 29714,\n  \"medal</w>\": 6974,\n  \"medalist</w>\": 21040,\n  \"medalists</w>\": 43397,\n  \"medalli\": 31349,\n  \"medallion</w>\": 43469,\n  \"medallist</w>\": 41472,\n  \"medals</w>\": 14710,\n  \"mede</w>\": 48225,\n  \"meded</w>\": 27627,\n  \"medi\": 1436,\n  \"media\": 22064,\n  \"media</w>\": 1895,\n  \"mediac\": 37490,\n  \"median</w>\": 30491,\n  \"mediation</w>\": 42829,\n  \"medic\": 3602,\n  \"medic</w>\": 35441,\n  \"medicaid</w>\": 25421,\n  \"medical\": 18432,\n  \"medical</w>\": 4116,\n  \"medicare</w>\": 23710,\n  \"medication</w>\": 23771,\n  \"medications</w>\": 37181,\n  \"medicinal</w>\": 28772,\n  \"medicine</w>\": 5616,\n  \"medicines</w>\": 26541,\n  \"medics</w>\": 46688,\n  \"medieval\": 38956,\n  \"medieval</w>\": 10789,\n  \"medina</w>\": 27281,\n  \"mediocre</w>\": 41170,\n  \"medit\": 19130,\n  \"meditate</w>\": 38039,\n  \"meditation</w>\": 10827,\n  \"mediter\": 14194,\n  \"mediterran\": 14358,\n  \"mediterranean</w>\": 15327,\n  \"medium</w>\": 8675,\n  \"medley</w>\": 24793,\n  \"meds</w>\": 25075,\n  \"medtech</w>\": 42044,\n  \"medusa</w>\": 44216,\n  \"medway</w>\": 42286,\n  \"mee\": 1725,\n  \"mee</w>\": 14075,\n  \"meek</w>\": 28935,\n  \"meen\": 37940,\n  \"meen</w>\": 46515,\n  \"meer\": 26714,\n  \"meer</w>\": 27555,\n  \"meet\": 5714,\n  \"meet</w>\": 1633,\n  \"meeting\": 48566,\n  \"meeting</w>\": 2071,\n  \"meetings</w>\": 9980,\n  \"meets</w>\": 5972,\n  \"meetthe\": 27575,\n  \"meetup</w>\": 15430,\n  \"meg\": 11500,\n  \"meg</w>\": 16186,\n  \"mega\": 15979,\n  \"mega</w>\": 9068,\n  \"megab\": 38103,\n  \"megadeth</w>\": 46741,\n  \"megal\": 37650,\n  \"megam\": 26073,\n  \"megan\": 19127,\n  \"megan</w>\": 11503,\n  \"megap\": 33624,\n  \"megat\": 35581,\n  \"megh\": 31192,\n  \"meghan\": 39939,\n  \"meghan</w>\": 18261,\n  \"meh\": 10512,\n  \"meh</w>\": 22211,\n  \"mehta</w>\": 25031,\n  \"mei\": 22564,\n  \"mei</w>\": 25198,\n  \"meier</w>\": 29812,\n  \"mein\": 28857,\n  \"mein</w>\": 21466,\n  \"meister</w>\": 28407,\n  \"mek</w>\": 44645,\n  \"mel\": 1902,\n  \"mel</w>\": 6834,\n  \"mela</w>\": 35032,\n  \"melan\": 22261,\n  \"melanch\": 44818,\n  \"melancholy</w>\": 47821,\n  \"melani\": 34031,\n  \"melania</w>\": 32796,\n  \"melanie</w>\": 22153,\n  \"melanoma</w>\": 40862,\n  \"melb\": 47007,\n  \"melb</w>\": 28980,\n  \"melbourne\": 28387,\n  \"melbourne</w>\": 6995,\n  \"melee</w>\": 45108,\n  \"meli\": 28885,\n  \"melinda</w>\": 46303,\n  \"melis\": 18913,\n  \"melissa\": 41866,\n  \"melissa</w>\": 13030,\n  \"mell\": 22531,\n  \"mell</w>\": 41583,\n  \"mello</w>\": 47594,\n  \"mellon</w>\": 45162,\n  \"mellow</w>\": 32034,\n  \"melo\": 10354,\n  \"melo</w>\": 22374,\n  \"melodic</w>\": 41877,\n  \"melodies</w>\": 38412,\n  \"melody</w>\": 19119,\n  \"melon</w>\": 12146,\n  \"melrose</w>\": 36296,\n  \"melt\": 22209,\n  \"melt</w>\": 15957,\n  \"meltdown</w>\": 30613,\n  \"melted</w>\": 23037,\n  \"melting</w>\": 19247,\n  \"melton</w>\": 46062,\n  \"melts</w>\": 31446,\n  \"melville</w>\": 46030,\n  \"melvin</w>\": 31544,\n  \"mely</w>\": 6373,\n  \"mem\": 4937,\n  \"mem</w>\": 34944,\n  \"memb\": 2114,\n  \"member\": 29566,\n  \"member</w>\": 1640,\n  \"members</w>\": 2567,\n  \"membership</w>\": 11562,\n  \"membrane</w>\": 34088,\n  \"meme\": 35157,\n  \"meme</w>\": 9169,\n  \"memes</w>\": 12828,\n  \"memo\": 15967,\n  \"memo</w>\": 19334,\n  \"memoir</w>\": 20532,\n  \"memoirs</w>\": 45311,\n  \"memor\": 1858,\n  \"memorab\": 26271,\n  \"memorabilia</w>\": 27488,\n  \"memorable</w>\": 13172,\n  \"memorial\": 16285,\n  \"memorial</w>\": 4642,\n  \"memorialday</w>\": 21598,\n  \"memoriam</w>\": 48191,\n  \"memories</w>\": 4304,\n  \"memory\": 44766,\n  \"memory</w>\": 5137,\n  \"memph\": 10285,\n  \"memphis\": 38432,\n  \"memphis</w>\": 11298,\n  \"men\": 1552,\n  \"men</w>\": 1656,\n  \"mena</w>\": 23052,\n  \"menace</w>\": 29949,\n  \"mend\": 8151,\n  \"mend</w>\": 46927,\n  \"mendel\": 49268,\n  \"mendes</w>\": 18060,\n  \"mendez</w>\": 48275,\n  \"mendo\": 19327,\n  \"mendoza</w>\": 23680,\n  \"meng\": 37102,\n  \"meng</w>\": 37450,\n  \"mening\": 46428,\n  \"menon</w>\": 38255,\n  \"menopau\": 34974,\n  \"menopause</w>\": 46026,\n  \"mens\": 16924,\n  \"mens</w>\": 10495,\n  \"mensfashion</w>\": 27578,\n  \"menstru\": 28345,\n  \"menstrual</w>\": 40915,\n  \"menswear</w>\": 18803,\n  \"ment\": 1585,\n  \"ment</w>\": 777,\n  \"mental\": 8611,\n  \"mental</w>\": 3448,\n  \"mentalhealth\": 20593,\n  \"mentalhealth</w>\": 13022,\n  \"mentality</w>\": 26647,\n  \"mentally</w>\": 14307,\n  \"mentary</w>\": 4468,\n  \"mentation</w>\": 9512,\n  \"mentday</w>\": 40397,\n  \"mente\": 40302,\n  \"mente</w>\": 36396,\n  \"mented</w>\": 9249,\n  \"menting</w>\": 14471,\n  \"mention\": 43881,\n  \"mention</w>\": 6762,\n  \"mentioned</w>\": 11948,\n  \"mentioning</w>\": 34290,\n  \"mentions</w>\": 12334,\n  \"mento</w>\": 30582,\n  \"mentor\": 45342,\n  \"mentor</w>\": 11642,\n  \"mentoring</w>\": 19610,\n  \"mentors</w>\": 20945,\n  \"mentorship</w>\": 33878,\n  \"ments</w>\": 1827,\n  \"menu</w>\": 6225,\n  \"menus</w>\": 33534,\n  \"meo</w>\": 30792,\n  \"meow\": 39965,\n  \"meow</w>\": 17246,\n  \"mep</w>\": 27095,\n  \"mer\": 1316,\n  \"mer</w>\": 2452,\n  \"mera</w>\": 20028,\n  \"merc\": 34357,\n  \"merc</w>\": 44399,\n  \"mercado</w>\": 45479,\n  \"merce\": 8409,\n  \"mercede\": 34959,\n  \"mercedes\": 26403,\n  \"mercedes</w>\": 10685,\n  \"mercedesam\": 40107,\n  \"mercedesbenz</w>\": 32347,\n  \"mercen\": 40301,\n  \"mercer</w>\": 21632,\n  \"merch</w>\": 11504,\n  \"merchandi\": 14954,\n  \"merchandise</w>\": 16808,\n  \"merchandising</w>\": 49196,\n  \"merchant</w>\": 19563,\n  \"merchants</w>\": 34427,\n  \"merci\": 23364,\n  \"merci</w>\": 29378,\n  \"mercur\": 11471,\n  \"mercury\": 45203,\n  \"mercury</w>\": 12653,\n  \"mercy\": 33249,\n  \"mercy</w>\": 10815,\n  \"mere\": 29657,\n  \"mere</w>\": 10342,\n  \"mered\": 24657,\n  \"mered</w>\": 32297,\n  \"meredith</w>\": 25103,\n  \"merely</w>\": 28718,\n  \"merge</w>\": 30406,\n  \"merged</w>\": 46492,\n  \"merger</w>\": 24744,\n  \"merging</w>\": 49256,\n  \"meri\": 17993,\n  \"meri</w>\": 36109,\n  \"meria</w>\": 48433,\n  \"meric</w>\": 27097,\n  \"merica</w>\": 30561,\n  \"meridi\": 37901,\n  \"meridian</w>\": 31195,\n  \"mering</w>\": 41060,\n  \"meringue</w>\": 41661,\n  \"merino</w>\": 42648,\n  \"merit</w>\": 20830,\n  \"merkel</w>\": 24715,\n  \"merle</w>\": 48586,\n  \"merlin</w>\": 26517,\n  \"merlot</w>\": 40424,\n  \"mermaid</w>\": 16064,\n  \"mermaids</w>\": 43617,\n  \"mero</w>\": 19097,\n  \"merr\": 48288,\n  \"merri\": 21462,\n  \"merrill</w>\": 47713,\n  \"merritt</w>\": 36462,\n  \"merry\": 14167,\n  \"merry</w>\": 5779,\n  \"merrychristmas</w>\": 19672,\n  \"mers</w>\": 4199,\n  \"mersal</w>\": 36711,\n  \"mersey\": 25248,\n  \"mersey</w>\": 46239,\n  \"merseyside</w>\": 35382,\n  \"mert</w>\": 48496,\n  \"merton</w>\": 35315,\n  \"mery</w>\": 40873,\n  \"meryl</w>\": 35787,\n  \"mes\": 28432,\n  \"mes</w>\": 3029,\n  \"mesa</w>\": 18956,\n  \"mese</w>\": 42018,\n  \"mesh</w>\": 15030,\n  \"mesm\": 18695,\n  \"mesmer\": 38435,\n  \"mesmeri\": 25985,\n  \"mesmerizing</w>\": 35637,\n  \"meso\": 25537,\n  \"mesqu\": 46819,\n  \"mess\": 2490,\n  \"mess</w>\": 8188,\n  \"message</w>\": 3918,\n  \"messages</w>\": 9390,\n  \"messaging</w>\": 23234,\n  \"messe</w>\": 40391,\n  \"messed</w>\": 23580,\n  \"messenger</w>\": 17389,\n  \"messi\": 19394,\n  \"messi</w>\": 11252,\n  \"messiah</w>\": 28737,\n  \"messing</w>\": 23144,\n  \"messy</w>\": 15987,\n  \"mest</w>\": 23780,\n  \"mester</w>\": 47349,\n  \"mesut</w>\": 49177,\n  \"met\": 5249,\n  \"met</w>\": 2340,\n  \"meta\": 14803,\n  \"meta</w>\": 22701,\n  \"metab\": 16150,\n  \"metabol\": 48389,\n  \"metaboli\": 25573,\n  \"metabolic</w>\": 34311,\n  \"metabolism</w>\": 27824,\n  \"metal\": 8935,\n  \"metal</w>\": 4044,\n  \"metall\": 19084,\n  \"metallic</w>\": 17257,\n  \"metallica</w>\": 24079,\n  \"metals</w>\": 21375,\n  \"metam\": 28862,\n  \"metamor\": 39030,\n  \"metamorpho\": 47601,\n  \"metaph\": 24189,\n  \"metaphor</w>\": 34233,\n  \"metast\": 41973,\n  \"mete\": 11226,\n  \"meteor\": 26429,\n  \"meteor</w>\": 26823,\n  \"meteoro\": 25948,\n  \"meteorologist</w>\": 42849,\n  \"meter</w>\": 10104,\n  \"meters</w>\": 13247,\n  \"metgala</w>\": 30089,\n  \"meth\": 21867,\n  \"meth</w>\": 26177,\n  \"methane</w>\": 37565,\n  \"metho\": 5770,\n  \"method</w>\": 10284,\n  \"methodist</w>\": 25165,\n  \"methodo\": 28488,\n  \"methodology</w>\": 37316,\n  \"methods</w>\": 12200,\n  \"methyl\": 48999,\n  \"metmuseum</w>\": 28207,\n  \"meto\": 25679,\n  \"metoo</w>\": 24722,\n  \"metr\": 15086,\n  \"metre</w>\": 27889,\n  \"metres</w>\": 19798,\n  \"metric</w>\": 19950,\n  \"metrical</w>\": 40704,\n  \"metrics</w>\": 24396,\n  \"metro\": 7257,\n  \"metro</w>\": 6784,\n  \"metroid</w>\": 39957,\n  \"metropolis</w>\": 40476,\n  \"metropolitan</w>\": 19013,\n  \"metry</w>\": 20039,\n  \"mets</w>\": 9633,\n  \"mett</w>\": 28081,\n  \"metz</w>\": 40506,\n  \"meu</w>\": 34520,\n  \"mew</w>\": 40368,\n  \"mex\": 3213,\n  \"mex</w>\": 18387,\n  \"mexic\": 31728,\n  \"mexican\": 37442,\n  \"mexican</w>\": 8186,\n  \"mexicans</w>\": 47729,\n  \"mexico\": 31834,\n  \"mexico</w>\": 4604,\n  \"mey\": 28584,\n  \"mey</w>\": 27777,\n  \"meyer</w>\": 13963,\n  \"meyers</w>\": 32326,\n  \"mez\": 30615,\n  \"mez</w>\": 46833,\n  \"mezz\": 38771,\n  \"mf\": 18199,\n  \"mf</w>\": 11067,\n  \"mfa</w>\": 24107,\n  \"mfc</w>\": 39474,\n  \"mfg</w>\": 21912,\n  \"mfw</w>\": 27309,\n  \"mg\": 10003,\n  \"mg</w>\": 8014,\n  \"mga</w>\": 23954,\n  \"mgm</w>\": 27572,\n  \"mgmt</w>\": 22288,\n  \"mgr</w>\": 31500,\n  \"mgs</w>\": 48073,\n  \"mgt</w>\": 48663,\n  \"mh\": 9962,\n  \"mh</w>\": 10834,\n  \"mha</w>\": 41944,\n  \"mhealth</w>\": 41225,\n  \"mhs</w>\": 28815,\n  \"mhz</w>\": 31550,\n  \"mi\": 714,\n  \"mi</w>\": 2251,\n  \"mia</w>\": 5852,\n  \"miam\": 31053,\n  \"miami\": 15106,\n  \"miami</w>\": 4891,\n  \"mian</w>\": 24792,\n  \"miaw</w>\": 36046,\n  \"mib</w>\": 48178,\n  \"mic\": 1213,\n  \"mic</w>\": 3816,\n  \"mica</w>\": 41551,\n  \"micah</w>\": 33870,\n  \"mice</w>\": 19030,\n  \"mich\": 25628,\n  \"mich</w>\": 23029,\n  \"micha\": 2083,\n  \"michael\": 6051,\n  \"michael</w>\": 2511,\n  \"michaela</w>\": 41897,\n  \"michaeljackson</w>\": 33532,\n  \"michaels</w>\": 23868,\n  \"michal\": 47144,\n  \"miche\": 37966,\n  \"micheal</w>\": 43709,\n  \"michel\": 5158,\n  \"michel</w>\": 17153,\n  \"michelangelo</w>\": 41245,\n  \"michele</w>\": 20642,\n  \"michelin</w>\": 26330,\n  \"michelle\": 19028,\n  \"michelle</w>\": 8625,\n  \"michi\": 5658,\n  \"michigan\": 32344,\n  \"michigan</w>\": 6296,\n  \"mick\": 15171,\n  \"mick</w>\": 12592,\n  \"mickey\": 41813,\n  \"mickey</w>\": 13053,\n  \"micky</w>\": 43011,\n  \"micro\": 3160,\n  \"micro</w>\": 11374,\n  \"microbes</w>\": 44671,\n  \"microbi\": 19496,\n  \"microbial</w>\": 30335,\n  \"microbiology</w>\": 35348,\n  \"microbiome</w>\": 35148,\n  \"micron\": 48742,\n  \"microphone</w>\": 24643,\n  \"micropoetry</w>\": 35997,\n  \"microscope</w>\": 29114,\n  \"microscopy</w>\": 38431,\n  \"microsof\": 42424,\n  \"microsoft\": 38650,\n  \"microsoft</w>\": 7254,\n  \"microwave</w>\": 24240,\n  \"mics</w>\": 16554,\n  \"mid\": 2192,\n  \"mid</w>\": 4734,\n  \"midcentury</w>\": 48988,\n  \"midd\": 2983,\n  \"midday</w>\": 23390,\n  \"middle\": 9849,\n  \"middle</w>\": 3694,\n  \"middleeast</w>\": 32783,\n  \"middles\": 29769,\n  \"middlesbrough</w>\": 32436,\n  \"middlesex</w>\": 39154,\n  \"middleton</w>\": 23627,\n  \"middleweight</w>\": 35829,\n  \"midfield</w>\": 28116,\n  \"midfielder</w>\": 13423,\n  \"midget</w>\": 30734,\n  \"midi\": 39496,\n  \"midi</w>\": 27326,\n  \"midland</w>\": 24822,\n  \"midlands</w>\": 18062,\n  \"midnight\": 35746,\n  \"midnight</w>\": 6302,\n  \"mids</w>\": 40821,\n  \"midst</w>\": 24752,\n  \"midsummer</w>\": 35234,\n  \"midterm</w>\": 34365,\n  \"midterms</w>\": 32015,\n  \"midtown</w>\": 26069,\n  \"midway</w>\": 26536,\n  \"midweek</w>\": 29120,\n  \"midwest</w>\": 16627,\n  \"midwi\": 44802,\n  \"midwife</w>\": 37681,\n  \"midwives</w>\": 42355,\n  \"mie\": 20865,\n  \"mie</w>\": 10555,\n  \"miento</w>\": 46482,\n  \"mier</w>\": 36490,\n  \"mies</w>\": 8840,\n  \"miff\": 49398,\n  \"mig</w>\": 28743,\n  \"might</w>\": 2727,\n  \"mighty\": 26632,\n  \"mighty</w>\": 7815,\n  \"mign\": 41678,\n  \"migos</w>\": 44640,\n  \"migr\": 3736,\n  \"migra\": 28186,\n  \"migraine</w>\": 35360,\n  \"migrant</w>\": 18902,\n  \"migrants</w>\": 15814,\n  \"migrate</w>\": 41804,\n  \"migrating</w>\": 43604,\n  \"migration</w>\": 11891,\n  \"migu\": 12279,\n  \"miguel\": 33672,\n  \"miguel</w>\": 14436,\n  \"miho</w>\": 46870,\n  \"mii</w>\": 39896,\n  \"mik\": 15096,\n  \"mik</w>\": 46203,\n  \"mika\": 28609,\n  \"mika</w>\": 25185,\n  \"mike\": 5884,\n  \"mike</w>\": 3178,\n  \"mikel</w>\": 48865,\n  \"mikequind\": 33508,\n  \"mikequindazzi</w>\": 33551,\n  \"mikey\": 34934,\n  \"mikey</w>\": 23368,\n  \"mikha\": 30999,\n  \"mikhail</w>\": 38327,\n  \"miki</w>\": 48863,\n  \"miko</w>\": 35413,\n  \"miku</w>\": 37703,\n  \"mil\": 1469,\n  \"mil</w>\": 12826,\n  \"mila</w>\": 26183,\n  \"milan\": 30380,\n  \"milan</w>\": 8552,\n  \"milano</w>\": 18585,\n  \"milb</w>\": 42248,\n  \"mild</w>\": 16085,\n  \"mildly</w>\": 49059,\n  \"mile\": 7833,\n  \"mile</w>\": 6243,\n  \"mileage</w>\": 30579,\n  \"miler</w>\": 44680,\n  \"miles</w>\": 3446,\n  \"milestone</w>\": 13485,\n  \"milestones</w>\": 34025,\n  \"miley\": 25336,\n  \"miley</w>\": 14321,\n  \"mileycyrus</w>\": 28528,\n  \"milf</w>\": 45386,\n  \"milford</w>\": 35840,\n  \"mili\": 16698,\n  \"miliband</w>\": 41440,\n  \"milit\": 3715,\n  \"militant</w>\": 33629,\n  \"militants</w>\": 23974,\n  \"military\": 24498,\n  \"military</w>\": 4323,\n  \"militi\": 46625,\n  \"militia</w>\": 32114,\n  \"milk\": 13409,\n  \"milk</w>\": 5205,\n  \"milkshake</w>\": 29066,\n  \"milky\": 37320,\n  \"milky</w>\": 21120,\n  \"milkyway</w>\": 43246,\n  \"mill\": 4221,\n  \"mill</w>\": 6637,\n  \"milla</w>\": 49381,\n  \"millan\": 34930,\n  \"millan</w>\": 22188,\n  \"millar</w>\": 41851,\n  \"mille</w>\": 34066,\n  \"millen\": 48501,\n  \"millenni\": 10406,\n  \"millennial</w>\": 28357,\n  \"millennials</w>\": 18804,\n  \"millennium</w>\": 21116,\n  \"miller\": 21699,\n  \"miller</w>\": 5733,\n  \"milli\": 5340,\n  \"millie</w>\": 29283,\n  \"milling</w>\": 39133,\n  \"million\": 13154,\n  \"million</w>\": 2506,\n  \"millionaire</w>\": 25179,\n  \"millionaires</w>\": 47159,\n  \"millions</w>\": 8492,\n  \"mills</w>\": 10331,\n  \"millwall</w>\": 35902,\n  \"milly</w>\": 45794,\n  \"milne</w>\": 44590,\n  \"milner</w>\": 45230,\n  \"milo</w>\": 24548,\n  \"milton\": 39004,\n  \"milton</w>\": 17360,\n  \"milwau\": 13452,\n  \"milwaukee</w>\": 14259,\n  \"mim</w>\": 39379,\n  \"mimi</w>\": 27086,\n  \"mimic\": 47116,\n  \"mimic</w>\": 46519,\n  \"mimo\": 45551,\n  \"min\": 771,\n  \"min</w>\": 3331,\n  \"mina</w>\": 15281,\n  \"minaj</w>\": 25136,\n  \"minal</w>\": 40222,\n  \"minat</w>\": 33275,\n  \"mince</w>\": 32396,\n  \"mind\": 5890,\n  \"mind</w>\": 2575,\n  \"mindanao</w>\": 44228,\n  \"minded</w>\": 21330,\n  \"mindful</w>\": 28457,\n  \"mindfulness</w>\": 15707,\n  \"minding</w>\": 45337,\n  \"minds</w>\": 9244,\n  \"mindset</w>\": 14217,\n  \"mindy\": 46875,\n  \"mindy</w>\": 38551,\n  \"mine\": 20149,\n  \"mine</w>\": 3347,\n  \"minecraft</w>\": 15678,\n  \"mined</w>\": 48034,\n  \"minent</w>\": 12533,\n  \"miner\": 14109,\n  \"miner</w>\": 26572,\n  \"mineral</w>\": 17692,\n  \"minerals</w>\": 21169,\n  \"miners</w>\": 22119,\n  \"mines</w>\": 16211,\n  \"ming\": 10868,\n  \"ming</w>\": 2107,\n  \"mingham</w>\": 7590,\n  \"mingle</w>\": 38437,\n  \"mingly</w>\": 36909,\n  \"mington\": 49283,\n  \"mington</w>\": 23119,\n  \"minh</w>\": 48734,\n  \"minho</w>\": 21318,\n  \"mini\": 1810,\n  \"mini</w>\": 3954,\n  \"miniature\": 44298,\n  \"miniature</w>\": 16377,\n  \"miniatures</w>\": 38816,\n  \"minic\": 31522,\n  \"minim\": 10005,\n  \"minimal</w>\": 18458,\n  \"minimalism</w>\": 42594,\n  \"minimalist</w>\": 26641,\n  \"minimize</w>\": 38697,\n  \"minimum</w>\": 12244,\n  \"minindia</w>\": 28458,\n  \"mining</w>\": 8473,\n  \"minion</w>\": 28622,\n  \"minions</w>\": 27035,\n  \"minis\": 33409,\n  \"minis</w>\": 35976,\n  \"minister\": 25688,\n  \"minister</w>\": 3569,\n  \"ministerial</w>\": 33008,\n  \"ministers</w>\": 16406,\n  \"ministries</w>\": 27895,\n  \"ministry</w>\": 8742,\n  \"mink</w>\": 42017,\n  \"minn\": 45991,\n  \"minn</w>\": 47318,\n  \"minne\": 7083,\n  \"minneapolis</w>\": 16977,\n  \"minneso\": 9380,\n  \"minnesota</w>\": 9968,\n  \"minnie</w>\": 24493,\n  \"mino</w>\": 22791,\n  \"minogue</w>\": 44202,\n  \"minor</w>\": 8522,\n  \"minorities</w>\": 28119,\n  \"minority</w>\": 16210,\n  \"minors</w>\": 36789,\n  \"mins</w>\": 6196,\n  \"minsk</w>\": 46151,\n  \"minster</w>\": 11189,\n  \"mint\": 48084,\n  \"mint</w>\": 7506,\n  \"minted</w>\": 49377,\n  \"minton</w>\": 20050,\n  \"minu\": 29064,\n  \"minus</w>\": 15358,\n  \"minute\": 28931,\n  \"minute</w>\": 4497,\n  \"minutes</w>\": 3056,\n  \"mio</w>\": 26366,\n  \"mir\": 2750,\n  \"mir</w>\": 6585,\n  \"mira\": 21665,\n  \"mira</w>\": 22762,\n  \"mirac\": 13685,\n  \"miracle\": 49208,\n  \"miracle</w>\": 11543,\n  \"miracles</w>\": 23478,\n  \"miraculous</w>\": 38671,\n  \"mirage</w>\": 28679,\n  \"mirai</w>\": 49060,\n  \"mirand\": 32367,\n  \"miranda</w>\": 17590,\n  \"mire\": 38140,\n  \"mire</w>\": 30140,\n  \"miri\": 22273,\n  \"miriam</w>\": 30950,\n  \"miro\": 34851,\n  \"miro</w>\": 48317,\n  \"mirren</w>\": 47600,\n  \"mirro\": 48500,\n  \"mirror\": 29823,\n  \"mirror</w>\": 7220,\n  \"mirrors</w>\": 21823,\n  \"mirza</w>\": 36440,\n  \"mis\": 866,\n  \"mis</w>\": 11239,\n  \"mischief</w>\": 33896,\n  \"misconceptions</w>\": 48681,\n  \"misconduct</w>\": 30601,\n  \"mise\": 46567,\n  \"mise</w>\": 17267,\n  \"miser\": 33394,\n  \"miserable</w>\": 26196,\n  \"misery</w>\": 28360,\n  \"mises</w>\": 24390,\n  \"misfits</w>\": 42708,\n  \"mish\": 15494,\n  \"mish</w>\": 20981,\n  \"misha</w>\": 35434,\n  \"mishra</w>\": 33042,\n  \"misleading</w>\": 30862,\n  \"mism</w>\": 15948,\n  \"miso\": 27657,\n  \"miso</w>\": 33441,\n  \"misogy\": 31315,\n  \"misogyny</w>\": 48415,\n  \"miss\": 6984,\n  \"miss</w>\": 1526,\n  \"missal</w>\": 38337,\n  \"missed</w>\": 3955,\n  \"misses</w>\": 15844,\n  \"missi\": 3008,\n  \"missile</w>\": 14411,\n  \"missiles</w>\": 27868,\n  \"missin</w>\": 36209,\n  \"missing\": 23509,\n  \"missing</w>\": 3423,\n  \"mission\": 12738,\n  \"mission</w>\": 2406,\n  \"missionaries</w>\": 40580,\n  \"missionary</w>\": 27915,\n  \"missions</w>\": 6990,\n  \"mississ\": 26483,\n  \"mississauga</w>\": 28393,\n  \"mississi\": 11687,\n  \"mississippi</w>\": 12232,\n  \"missou\": 30710,\n  \"missoula</w>\": 48549,\n  \"missouri</w>\": 11835,\n  \"missuni\": 26347,\n  \"missuniverse</w>\": 28766,\n  \"missy\": 48105,\n  \"missy</w>\": 31515,\n  \"missyou</w>\": 45799,\n  \"mist\": 12610,\n  \"mist</w>\": 11946,\n  \"mistak\": 20478,\n  \"mistake</w>\": 11303,\n  \"mistaken</w>\": 29182,\n  \"mistakenly</w>\": 48494,\n  \"mistakes</w>\": 12824,\n  \"mister\": 26949,\n  \"mister</w>\": 18895,\n  \"mistle\": 46800,\n  \"mistletoe</w>\": 48569,\n  \"mistre\": 42039,\n  \"mistress</w>\": 24349,\n  \"mists</w>\": 28636,\n  \"misty</w>\": 18799,\n  \"misunderstood</w>\": 41574,\n  \"misuse</w>\": 40970,\n  \"mit\": 3303,\n  \"mit</w>\": 4551,\n  \"mita</w>\": 47514,\n  \"mitage</w>\": 27964,\n  \"mitch\": 6969,\n  \"mitch</w>\": 14150,\n  \"mitchell\": 39339,\n  \"mitchell</w>\": 9007,\n  \"mite</w>\": 26929,\n  \"mith\": 21752,\n  \"mith</w>\": 17948,\n  \"miti\": 17857,\n  \"mitigate</w>\": 42273,\n  \"mitigation</w>\": 35514,\n  \"mito\": 38254,\n  \"mitochondri\": 42132,\n  \"mitra</w>\": 47703,\n  \"mits</w>\": 24086,\n  \"mitsu\": 17905,\n  \"mitsubi\": 21604,\n  \"mitsubishi</w>\": 23030,\n  \"mitt\": 17321,\n  \"mitt</w>\": 21341,\n  \"mitted</w>\": 10307,\n  \"mitting</w>\": 27938,\n  \"mitz\": 41827,\n  \"mium</w>\": 35891,\n  \"miwx</w>\": 43941,\n  \"mix\": 3210,\n  \"mix</w>\": 3285,\n  \"mixed\": 29376,\n  \"mixed</w>\": 6780,\n  \"mixer</w>\": 17200,\n  \"mixers</w>\": 39175,\n  \"mixes</w>\": 19061,\n  \"mixing</w>\": 15588,\n  \"mixtape</w>\": 11044,\n  \"mixture</w>\": 28286,\n  \"miy\": 25695,\n  \"miya</w>\": 36257,\n  \"miz\": 20881,\n  \"miz</w>\": 30795,\n  \"mize</w>\": 19076,\n  \"mized</w>\": 43418,\n  \"mizing</w>\": 38715,\n  \"mizz\": 19985,\n  \"mizzou</w>\": 26165,\n  \"mj\": 13117,\n  \"mj</w>\": 14733,\n  \"mk\": 11581,\n  \"mk</w>\": 8937,\n  \"mke</w>\": 36642,\n  \"mkt</w>\": 24814,\n  \"ml\": 3627,\n  \"ml</w>\": 5780,\n  \"mla</w>\": 16723,\n  \"mlas</w>\": 48464,\n  \"mlb\": 21039,\n  \"mlb</w>\": 7482,\n  \"mley</w>\": 40329,\n  \"mlg</w>\": 45801,\n  \"mlin</w>\": 24556,\n  \"mlk</w>\": 17941,\n  \"mlkday</w>\": 39905,\n  \"mlm</w>\": 37611,\n  \"mln</w>\": 18971,\n  \"mlp</w>\": 23620,\n  \"mlpfi\": 45475,\n  \"mlpfim</w>\": 45640,\n  \"mls</w>\": 13077,\n  \"mm\": 1028,\n  \"mm</w>\": 2848,\n  \"mma\": 34140,\n  \"mma</w>\": 6096,\n  \"mmc</w>\": 44253,\n  \"mme</w>\": 13105,\n  \"mmed</w>\": 19570,\n  \"mmer\": 35717,\n  \"mmer</w>\": 7508,\n  \"mmers</w>\": 28128,\n  \"mmes</w>\": 42862,\n  \"mmi</w>\": 34147,\n  \"mming\": 21038,\n  \"mming</w>\": 16507,\n  \"mmings</w>\": 31357,\n  \"mmit</w>\": 41050,\n  \"mmj</w>\": 43015,\n  \"mmm\": 37908,\n  \"mmm</w>\": 7641,\n  \"mmmm\": 36312,\n  \"mmmm</w>\": 13180,\n  \"mmmmm</w>\": 21808,\n  \"mmmmmm</w>\": 43740,\n  \"mmo</w>\": 30418,\n  \"mmon</w>\": 41131,\n  \"mmor\": 36657,\n  \"mmorpg</w>\": 39476,\n  \"mms</w>\": 37803,\n  \"mmva</w>\": 42666,\n  \"mmy\": 28837,\n  \"mmy</w>\": 8722,\n  \"mn\": 5086,\n  \"mn</w>\": 4057,\n  \"mna</w>\": 34877,\n  \"mnd</w>\": 44776,\n  \"mnet</w>\": 34129,\n  \"mnf</w>\": 41105,\n  \"mnl</w>\": 32980,\n  \"mnleg</w>\": 42653,\n  \"mns</w>\": 39040,\n  \"mnt</w>\": 21477,\n  \"mntwins</w>\": 45448,\n  \"mnwild</w>\": 39044,\n  \"mnwx</w>\": 39592,\n  \"mo\": 617,\n  \"mo</w>\": 2080,\n  \"moa</w>\": 33174,\n  \"moana</w>\": 43241,\n  \"mob\": 2818,\n  \"mob</w>\": 12754,\n  \"mobi\": 9451,\n  \"mobil\": 26343,\n  \"mobil</w>\": 29815,\n  \"mobile\": 12935,\n  \"mobile</w>\": 3451,\n  \"mobiles</w>\": 44302,\n  \"mobili\": 20770,\n  \"mobility</w>\": 12546,\n  \"mobilization</w>\": 48916,\n  \"moby</w>\": 47219,\n  \"moc\": 41439,\n  \"moc</w>\": 36992,\n  \"mocha</w>\": 28425,\n  \"mochi</w>\": 47973,\n  \"mock\": 15641,\n  \"mock</w>\": 12759,\n  \"mocked</w>\": 47400,\n  \"mocking\": 28692,\n  \"mocking</w>\": 37870,\n  \"mocks</w>\": 35142,\n  \"mod\": 6362,\n  \"mod</w>\": 10893,\n  \"moda</w>\": 25814,\n  \"modal</w>\": 33157,\n  \"mode\": 20402,\n  \"mode</w>\": 6493,\n  \"model\": 4591,\n  \"model</w>\": 2863,\n  \"modeled</w>\": 39527,\n  \"modeling</w>\": 13706,\n  \"modelling</w>\": 19946,\n  \"models</w>\": 6176,\n  \"moder\": 2894,\n  \"moderate</w>\": 16435,\n  \"moderated</w>\": 27928,\n  \"moderating</w>\": 34242,\n  \"moderator</w>\": 32659,\n  \"modern\": 11706,\n  \"modern</w>\": 4077,\n  \"modernart</w>\": 34417,\n  \"moderni\": 24328,\n  \"modernism</w>\": 39601,\n  \"modernist</w>\": 36773,\n  \"modernization</w>\": 47294,\n  \"modes</w>\": 30454,\n  \"modest</w>\": 25436,\n  \"modi\": 9047,\n  \"modi</w>\": 7774,\n  \"modification</w>\": 37630,\n  \"modified</w>\": 17964,\n  \"modo</w>\": 36820,\n  \"mods</w>\": 23843,\n  \"modu\": 9036,\n  \"modular</w>\": 22437,\n  \"module</w>\": 16757,\n  \"modules</w>\": 30575,\n  \"moe\": 38655,\n  \"moe</w>\": 17938,\n  \"mof\": 30798,\n  \"moff\": 27160,\n  \"mog</w>\": 42362,\n  \"moga\": 41732,\n  \"mogadishu</w>\": 45133,\n  \"mogul</w>\": 41320,\n  \"moh\": 18979,\n  \"moh</w>\": 35388,\n  \"moha\": 46892,\n  \"moham\": 7923,\n  \"mohamed</w>\": 18472,\n  \"mohammad</w>\": 19926,\n  \"mohammed</w>\": 16168,\n  \"mohan\": 26521,\n  \"mohan</w>\": 23586,\n  \"mohawk</w>\": 34942,\n  \"mohd</w>\": 49094,\n  \"mohsin</w>\": 48861,\n  \"moi\": 20691,\n  \"moi</w>\": 21825,\n  \"moil</w>\": 30349,\n  \"moines</w>\": 32091,\n  \"moist\": 19831,\n  \"moist</w>\": 33263,\n  \"moisture</w>\": 20412,\n  \"moisturi\": 25942,\n  \"moj\": 34505,\n  \"moja\": 49055,\n  \"mojito</w>\": 46830,\n  \"mojo</w>\": 25204,\n  \"mok\": 49146,\n  \"mol\": 4246,\n  \"mol</w>\": 31582,\n  \"mold</w>\": 21846,\n  \"molding</w>\": 46274,\n  \"moldova</w>\": 47317,\n  \"mole\": 9927,\n  \"mole</w>\": 23529,\n  \"molecular</w>\": 19370,\n  \"molecule</w>\": 39233,\n  \"molecules</w>\": 35643,\n  \"molina</w>\": 34201,\n  \"mollie</w>\": 48203,\n  \"molly\": 24368,\n  \"molly</w>\": 12573,\n  \"molo\": 41510,\n  \"mology</w>\": 32255,\n  \"molten</w>\": 46071,\n  \"moly</w>\": 47083,\n  \"mom\": 1614,\n  \"mom</w>\": 2543,\n  \"moma</w>\": 33605,\n  \"mombasa</w>\": 40340,\n  \"moment\": 12197,\n  \"moment</w>\": 2495,\n  \"momento</w>\": 30078,\n  \"moments</w>\": 5251,\n  \"momentum</w>\": 15722,\n  \"momlife</w>\": 43825,\n  \"momma</w>\": 14508,\n  \"mommy</w>\": 12456,\n  \"momo\": 48490,\n  \"momo</w>\": 25980,\n  \"moms\": 28446,\n  \"moms</w>\": 10042,\n  \"momsdemand</w>\": 33744,\n  \"mon\": 749,\n  \"mon</w>\": 2173,\n  \"mona</w>\": 19143,\n  \"monaco</w>\": 14938,\n  \"monaghan</w>\": 39797,\n  \"monarch\": 27235,\n  \"monarch</w>\": 22619,\n  \"monarchs</w>\": 36750,\n  \"monarchy</w>\": 47503,\n  \"monaster\": 19422,\n  \"monastery</w>\": 21850,\n  \"monc\": 34847,\n  \"moncton</w>\": 44962,\n  \"mond\": 14522,\n  \"mond</w>\": 4475,\n  \"monday\": 6205,\n  \"monday</w>\": 2098,\n  \"mondaymorning</w>\": 40089,\n  \"mondaymotiv\": 45488,\n  \"mondaymotivation</w>\": 8198,\n  \"mondaymotivaton</w>\": 47034,\n  \"mondays</w>\": 13815,\n  \"monde</w>\": 29339,\n  \"mondo</w>\": 36207,\n  \"monds</w>\": 20317,\n  \"mone</w>\": 25990,\n  \"monet</w>\": 24499,\n  \"monetary</w>\": 26394,\n  \"moneti\": 38056,\n  \"money\": 12743,\n  \"money</w>\": 2327,\n  \"mong</w>\": 43566,\n  \"monger</w>\": 38928,\n  \"mongers</w>\": 27670,\n  \"mongo\": 20680,\n  \"mongolia</w>\": 27144,\n  \"mongolian</w>\": 46335,\n  \"moni\": 46851,\n  \"monia</w>\": 31161,\n  \"monic\": 30893,\n  \"monica</w>\": 13540,\n  \"monit\": 9014,\n  \"monitor</w>\": 10198,\n  \"monitored</w>\": 45828,\n  \"monitoring</w>\": 11030,\n  \"monitors</w>\": 30478,\n  \"monk\": 30557,\n  \"monk</w>\": 16424,\n  \"monkey\": 29597,\n  \"monkey</w>\": 9465,\n  \"monkeys</w>\": 15781,\n  \"monks</w>\": 29090,\n  \"monmouth</w>\": 36929,\n  \"mono\": 8220,\n  \"mono</w>\": 22537,\n  \"monochrome</w>\": 25576,\n  \"monogram</w>\": 39665,\n  \"monologue</w>\": 47776,\n  \"monopoly</w>\": 25241,\n  \"monoxide</w>\": 49314,\n  \"monro\": 45750,\n  \"monroe</w>\": 13625,\n  \"mons</w>\": 19885,\n  \"monsanto</w>\": 37592,\n  \"monsi\": 46677,\n  \"monsieur</w>\": 48879,\n  \"monsoon</w>\": 18872,\n  \"monsta</w>\": 30718,\n  \"monstax</w>\": 45631,\n  \"monste\": 47045,\n  \"monster\": 14454,\n  \"monster</w>\": 6060,\n  \"monsters</w>\": 11546,\n  \"mont\": 5186,\n  \"mont</w>\": 5382,\n  \"montag\": 37202,\n  \"montage</w>\": 32325,\n  \"montal\": 42126,\n  \"montan\": 28405,\n  \"montana</w>\": 11436,\n  \"monte\": 8711,\n  \"monte</w>\": 14667,\n  \"montene\": 28538,\n  \"montenegro</w>\": 30378,\n  \"monter\": 36673,\n  \"monterey</w>\": 23388,\n  \"monterrey</w>\": 45254,\n  \"montess\": 43205,\n  \"montessori</w>\": 45443,\n  \"montgom\": 13852,\n  \"montgomery</w>\": 14951,\n  \"month\": 7680,\n  \"month</w>\": 1924,\n  \"monthly</w>\": 8764,\n  \"months</w>\": 3109,\n  \"monthsary</w>\": 42420,\n  \"monton</w>\": 41961,\n  \"montp\": 39523,\n  \"montre\": 8434,\n  \"montreal</w>\": 9262,\n  \"montrose</w>\": 42347,\n  \"monty\": 43997,\n  \"monty</w>\": 24038,\n  \"monu\": 9748,\n  \"monument</w>\": 12019,\n  \"monumental</w>\": 31297,\n  \"monuments</w>\": 26916,\n  \"mony</w>\": 4117,\n  \"monza</w>\": 40380,\n  \"moo\": 4953,\n  \"moo</w>\": 24626,\n  \"mood\": 42358,\n  \"mood</w>\": 5394,\n  \"moods</w>\": 43727,\n  \"moody</w>\": 17170,\n  \"moom\": 36887,\n  \"moon\": 6334,\n  \"moon</w>\": 3293,\n  \"mooney</w>\": 37942,\n  \"moonlight</w>\": 20001,\n  \"moons</w>\": 29887,\n  \"moonshine</w>\": 46706,\n  \"moor\": 14817,\n  \"moor</w>\": 11877,\n  \"moore\": 28613,\n  \"moore</w>\": 6708,\n  \"moors</w>\": 32577,\n  \"moose\": 37562,\n  \"moose</w>\": 17338,\n  \"moot</w>\": 46895,\n  \"mop</w>\": 33900,\n  \"mopar</w>\": 41166,\n  \"mor\": 657,\n  \"mor</w>\": 18614,\n  \"mora</w>\": 29262,\n  \"moral</w>\": 11246,\n  \"morale</w>\": 39404,\n  \"morales</w>\": 27117,\n  \"morality</w>\": 34133,\n  \"morally</w>\": 42519,\n  \"morals</w>\": 46223,\n  \"moran</w>\": 21557,\n  \"moray</w>\": 44569,\n  \"more\": 5434,\n  \"more</w>\": 750,\n  \"morecam\": 37305,\n  \"morecambe</w>\": 43414,\n  \"mored</w>\": 20195,\n  \"moreland</w>\": 44135,\n  \"moreno</w>\": 24826,\n  \"morethan\": 30889,\n  \"morg\": 34284,\n  \"morgan\": 15432,\n  \"morgan</w>\": 6075,\n  \"morgen</w>\": 35106,\n  \"mori\": 25710,\n  \"mori</w>\": 29514,\n  \"moris\": 43131,\n  \"moritz</w>\": 45594,\n  \"morley</w>\": 40439,\n  \"mormon</w>\": 27715,\n  \"morn</w>\": 22393,\n  \"mornin</w>\": 28327,\n  \"morning\": 10769,\n  \"morning</w>\": 1119,\n  \"mornings</w>\": 12106,\n  \"moro</w>\": 31613,\n  \"moroc\": 11996,\n  \"moroccan</w>\": 27546,\n  \"morocco</w>\": 15228,\n  \"moron</w>\": 31875,\n  \"morons</w>\": 46477,\n  \"morow</w>\": 40779,\n  \"morph\": 23915,\n  \"morph</w>\": 41700,\n  \"morphe\": 38978,\n  \"morpho\": 38622,\n  \"morrha\": 43044,\n  \"morri\": 9876,\n  \"morris\": 22560,\n  \"morris</w>\": 9090,\n  \"morrison\": 40961,\n  \"morrison</w>\": 14094,\n  \"morrisons</w>\": 40965,\n  \"morrissey</w>\": 30040,\n  \"morro</w>\": 48363,\n  \"morrow</w>\": 21611,\n  \"mors</w>\": 13064,\n  \"morse</w>\": 25282,\n  \"mort\": 24257,\n  \"mort</w>\": 30583,\n  \"mortal\": 31883,\n  \"mortal</w>\": 14680,\n  \"mortality</w>\": 20347,\n  \"mortar</w>\": 27258,\n  \"mortg\": 12069,\n  \"mortgage</w>\": 13988,\n  \"mortgages</w>\": 45391,\n  \"mortimer</w>\": 47836,\n  \"morton</w>\": 20698,\n  \"morty</w>\": 37391,\n  \"mory</w>\": 22633,\n  \"mos\": 28658,\n  \"mos</w>\": 9593,\n  \"mosa\": 14164,\n  \"mosa</w>\": 23809,\n  \"mosaic</w>\": 17506,\n  \"mosch\": 47003,\n  \"mosco\": 9840,\n  \"moscow</w>\": 10371,\n  \"moseley</w>\": 47080,\n  \"moses</w>\": 18451,\n  \"mosley</w>\": 46228,\n  \"mosqu\": 15215,\n  \"mosque</w>\": 12694,\n  \"mosques</w>\": 41214,\n  \"mosquit\": 39699,\n  \"mosquito</w>\": 25083,\n  \"mosquitoes</w>\": 41870,\n  \"moss\": 25107,\n  \"moss</w>\": 12815,\n  \"most\": 7034,\n  \"most</w>\": 1096,\n  \"mostly</w>\": 8829,\n  \"mosul</w>\": 29165,\n  \"mot\": 16352,\n  \"mot</w>\": 15452,\n  \"mota</w>\": 42499,\n  \"motd</w>\": 46232,\n  \"motel</w>\": 26191,\n  \"moth\": 33208,\n  \"moth</w>\": 11736,\n  \"mother\": 7455,\n  \"mother</w>\": 3050,\n  \"motherhood</w>\": 32274,\n  \"motherland</w>\": 46774,\n  \"mothers</w>\": 10546,\n  \"mothersday</w>\": 15583,\n  \"motherwell</w>\": 48104,\n  \"moths</w>\": 29086,\n  \"moti\": 38210,\n  \"motif</w>\": 35373,\n  \"motion\": 32139,\n  \"motion</w>\": 7860,\n  \"motiv\": 3183,\n  \"motivate</w>\": 26771,\n  \"motivated</w>\": 16521,\n  \"motivates</w>\": 44684,\n  \"motivating</w>\": 37720,\n  \"motivation\": 26117,\n  \"motivation</w>\": 4193,\n  \"motivational\": 32832,\n  \"motivational</w>\": 20472,\n  \"motivationmonday</w>\": 28703,\n  \"motive</w>\": 36669,\n  \"motley</w>\": 42553,\n  \"motm</w>\": 41192,\n  \"moto\": 10646,\n  \"moto</w>\": 11431,\n  \"motocross</w>\": 34562,\n  \"motogp</w>\": 16615,\n  \"motor\": 3975,\n  \"motor</w>\": 7659,\n  \"motorbike</w>\": 33341,\n  \"motorcycle</w>\": 10297,\n  \"motorcycles</w>\": 24869,\n  \"motoring</w>\": 44491,\n  \"motorists</w>\": 32766,\n  \"motorola</w>\": 33738,\n  \"motors</w>\": 14989,\n  \"motorsport</w>\": 18371,\n  \"motorsports</w>\": 24264,\n  \"motorway</w>\": 31808,\n  \"motown</w>\": 32685,\n  \"mott\": 44570,\n  \"mott</w>\": 21708,\n  \"motto</w>\": 23338,\n  \"mou\": 2809,\n  \"mou</w>\": 25289,\n  \"moud</w>\": 37698,\n  \"moul\": 25725,\n  \"mould</w>\": 36743,\n  \"moulin</w>\": 47656,\n  \"moun\": 2023,\n  \"mound</w>\": 21414,\n  \"mount\": 20553,\n  \"mount</w>\": 5532,\n  \"mountain\": 14547,\n  \"mountain</w>\": 3965,\n  \"mountaine\": 24841,\n  \"mountaineer</w>\": 49255,\n  \"mountains</w>\": 5873,\n  \"mounted</w>\": 17897,\n  \"mounting</w>\": 29910,\n  \"mounts</w>\": 36767,\n  \"mour\": 9053,\n  \"mour</w>\": 42446,\n  \"moured</w>\": 29555,\n  \"mourinho</w>\": 18536,\n  \"mourn</w>\": 33592,\n  \"mourning</w>\": 24169,\n  \"mourns</w>\": 42811,\n  \"mous\": 24837,\n  \"mous</w>\": 17425,\n  \"mouse\": 33032,\n  \"mouse</w>\": 9301,\n  \"mousse</w>\": 31869,\n  \"moustache</w>\": 32795,\n  \"mouth\": 15152,\n  \"mouth</w>\": 4932,\n  \"mouths</w>\": 38518,\n  \"mov</w>\": 23950,\n  \"move\": 16624,\n  \"move</w>\": 2783,\n  \"moved</w>\": 6997,\n  \"movember</w>\": 23474,\n  \"movement</w>\": 5208,\n  \"movements</w>\": 19665,\n  \"mover</w>\": 37673,\n  \"movers</w>\": 33957,\n  \"moves</w>\": 6880,\n  \"movi\": 1707,\n  \"movic</w>\": 43838,\n  \"movie\": 11247,\n  \"movie</w>\": 2016,\n  \"movies</w>\": 4772,\n  \"moving\": 32160,\n  \"moving</w>\": 3584,\n  \"mow\": 31006,\n  \"mow</w>\": 36329,\n  \"mower</w>\": 30895,\n  \"mowing</w>\": 46424,\n  \"mowx</w>\": 44263,\n  \"moy\": 27276,\n  \"moy</w>\": 34205,\n  \"moyes</w>\": 37119,\n  \"moz\": 14761,\n  \"moz</w>\": 43738,\n  \"mozam\": 26648,\n  \"mozambique</w>\": 28831,\n  \"mozart</w>\": 22132,\n  \"mozz\": 26317,\n  \"mozzarella</w>\": 27845,\n  \"mp\": 1037,\n  \"mp</w>\": 1246,\n  \"mpa</w>\": 30749,\n  \"mpc</w>\": 38560,\n  \"mpd</w>\": 33814,\n  \"mped</w>\": 28134,\n  \"mper</w>\": 22803,\n  \"mpg\": 39830,\n  \"mpg</w>\": 37454,\n  \"mpgvip</w>\": 42149,\n  \"mph</w>\": 5306,\n  \"mpi</w>\": 43263,\n  \"mping</w>\": 27999,\n  \"mple</w>\": 21139,\n  \"mplo\": 47071,\n  \"mpls</w>\": 34298,\n  \"mpo</w>\": 33674,\n  \"mpp</w>\": 39570,\n  \"mps</w>\": 5504,\n  \"mption</w>\": 9717,\n  \"mpton</w>\": 27448,\n  \"mpu\": 47156,\n  \"mpus</w>\": 25864,\n  \"mpy</w>\": 17192,\n  \"mq\": 19103,\n  \"mqm</w>\": 24687,\n  \"mr\": 3139,\n  \"mr</w>\": 1982,\n  \"mra\": 44568,\n  \"mrc</w>\": 25897,\n  \"mri</w>\": 24773,\n  \"mrs\": 25003,\n  \"mrs</w>\": 4255,\n  \"mrt</w>\": 30256,\n  \"mru</w>\": 22370,\n  \"mrw</w>\": 15303,\n  \"ms\": 3525,\n  \"ms</w>\": 988,\n  \"msa</w>\": 36306,\n  \"msc\": 31826,\n  \"msc</w>\": 20529,\n  \"msd\": 25804,\n  \"msd</w>\": 36407,\n  \"msdhoni</w>\": 32850,\n  \"msf</w>\": 36239,\n  \"msg\": 44430,\n  \"msg</w>\": 10928,\n  \"msh\": 41751,\n  \"msi\": 43597,\n  \"msi</w>\": 45278,\n  \"msk\": 38501,\n  \"msl</w>\": 42736,\n  \"msm</w>\": 22210,\n  \"msn\": 18824,\n  \"msn</w>\": 41042,\n  \"msnbc</w>\": 20245,\n  \"mson\": 27773,\n  \"mson</w>\": 12298,\n  \"msp\": 41445,\n  \"msp</w>\": 22318,\n  \"mss\": 42136,\n  \"mss</w>\": 48610,\n  \"mst</w>\": 26335,\n  \"msu\": 26763,\n  \"msu</w>\": 17298,\n  \"mswx</w>\": 42957,\n  \"msy</w>\": 43919,\n  \"mt\": 4252,\n  \"mt</w>\": 3284,\n  \"mta</w>\": 28691,\n  \"mtb\": 48306,\n  \"mtb</w>\": 18747,\n  \"mtc</w>\": 42482,\n  \"mtg\": 49142,\n  \"mtg</w>\": 13648,\n  \"mth</w>\": 48151,\n  \"mtl</w>\": 22135,\n  \"mtn\": 26041,\n  \"mtn</w>\": 18953,\n  \"mtr</w>\": 46650,\n  \"mts</w>\": 38751,\n  \"mtv\": 8099,\n  \"mtv</w>\": 12555,\n  \"mtvbr\": 47258,\n  \"mtvhottest</w>\": 16751,\n  \"mtvstars</w>\": 19948,\n  \"mu\": 670,\n  \"mu</w>\": 6411,\n  \"mua</w>\": 21395,\n  \"muay\": 44910,\n  \"muaythai</w>\": 47763,\n  \"mubarak</w>\": 17957,\n  \"muc</w>\": 49115,\n  \"much\": 14300,\n  \"much</w>\": 1238,\n  \"mucha</w>\": 42191,\n  \"muchas</w>\": 26278,\n  \"mucho</w>\": 19864,\n  \"muck\": 44731,\n  \"muck</w>\": 45330,\n  \"mud\": 17491,\n  \"mud</w>\": 11673,\n  \"mudder</w>\": 49104,\n  \"muddy</w>\": 21524,\n  \"mue\": 44383,\n  \"mue</w>\": 40717,\n  \"mueller\": 46863,\n  \"mueller</w>\": 14719,\n  \"muen\": 48646,\n  \"muer\": 33840,\n  \"muf\": 33852,\n  \"mufc</w>\": 9013,\n  \"muffin</w>\": 22696,\n  \"muffins</w>\": 25922,\n  \"mufti</w>\": 44930,\n  \"mug\": 16339,\n  \"mug</w>\": 9722,\n  \"mugabe</w>\": 36441,\n  \"mughal</w>\": 37508,\n  \"mugs</w>\": 22852,\n  \"mugshot</w>\": 40028,\n  \"muh\": 36335,\n  \"muh</w>\": 46475,\n  \"muham\": 10043,\n  \"muhammad</w>\": 12259,\n  \"muir\": 44650,\n  \"muir</w>\": 24745,\n  \"muj\": 44635,\n  \"muk\": 17327,\n  \"muk</w>\": 32600,\n  \"mukher\": 34575,\n  \"mukherjee</w>\": 37862,\n  \"mul\": 1899,\n  \"mul</w>\": 43193,\n  \"mula</w>\": 40937,\n  \"mulator</w>\": 17463,\n  \"mulberry</w>\": 39221,\n  \"mule</w>\": 28695,\n  \"mull\": 17313,\n  \"mull</w>\": 35310,\n  \"mulled</w>\": 44641,\n  \"mullen</w>\": 30797,\n  \"muller</w>\": 33956,\n  \"mullet</w>\": 35010,\n  \"mulligan</w>\": 44336,\n  \"mullins</w>\": 41265,\n  \"mult\": 34219,\n  \"multi\": 3947,\n  \"multi</w>\": 6400,\n  \"multic\": 21683,\n  \"multicul\": 28004,\n  \"multicultural</w>\": 34667,\n  \"multil\": 27975,\n  \"multimedia</w>\": 27977,\n  \"multin\": 38996,\n  \"multinational</w>\": 46540,\n  \"multip\": 40314,\n  \"multiplayer</w>\": 27460,\n  \"multiple</w>\": 6470,\n  \"multipurpose</w>\": 47665,\n  \"multit\": 27814,\n  \"multitasking</w>\": 48684,\n  \"mulus</w>\": 26180,\n  \"mum\": 15565,\n  \"mum</w>\": 4030,\n  \"mumb\": 5850,\n  \"mumbai\": 24279,\n  \"mumbai</w>\": 6971,\n  \"mumford</w>\": 46184,\n  \"mummy</w>\": 16301,\n  \"mums</w>\": 17868,\n  \"mun\": 2617,\n  \"mun</w>\": 21059,\n  \"muna</w>\": 48424,\n  \"munch\": 23587,\n  \"munch</w>\": 33299,\n  \"munchies</w>\": 44324,\n  \"munchkin</w>\": 41305,\n  \"mund</w>\": 14244,\n  \"mundo</w>\": 20990,\n  \"muni\": 27327,\n  \"muni</w>\": 39795,\n  \"munich</w>\": 13526,\n  \"munici\": 12159,\n  \"municipal\": 43667,\n  \"municipal</w>\": 16600,\n  \"municipality</w>\": 29987,\n  \"munition</w>\": 32668,\n  \"munro</w>\": 36501,\n  \"munster</w>\": 27201,\n  \"mup</w>\": 21966,\n  \"muppet</w>\": 40598,\n  \"muppets</w>\": 40187,\n  \"mups</w>\": 42195,\n  \"mur\": 2144,\n  \"mur</w>\": 18293,\n  \"mura\": 45176,\n  \"mural</w>\": 12315,\n  \"murals</w>\": 31499,\n  \"murder\": 28136,\n  \"murder</w>\": 5787,\n  \"murdered</w>\": 13158,\n  \"murderer</w>\": 26956,\n  \"murderers</w>\": 48472,\n  \"murdering</w>\": 36055,\n  \"murders</w>\": 22409,\n  \"murdoch</w>\": 29037,\n  \"murphy\": 48976,\n  \"murphy</w>\": 8914,\n  \"murray\": 31978,\n  \"murray</w>\": 7513,\n  \"murs</w>\": 38783,\n  \"mus\": 2198,\n  \"mus</w>\": 8103,\n  \"musa</w>\": 30540,\n  \"musc\": 5696,\n  \"muscat</w>\": 33322,\n  \"muscle\": 27323,\n  \"muscle</w>\": 9269,\n  \"muscles</w>\": 16786,\n  \"muscular</w>\": 30606,\n  \"muse\": 2369,\n  \"muse</w>\": 15686,\n  \"museo</w>\": 36457,\n  \"muses</w>\": 48243,\n  \"museu\": 27087,\n  \"museum\": 15602,\n  \"museum</w>\": 2786,\n  \"museums</w>\": 15542,\n  \"museumweek</w>\": 37996,\n  \"mush\": 7635,\n  \"mushroom</w>\": 13011,\n  \"mushrooms</w>\": 14730,\n  \"musi\": 15628,\n  \"music\": 4110,\n  \"music</w>\": 1179,\n  \"musica</w>\": 26668,\n  \"musical\": 36002,\n  \"musical</w>\": 5173,\n  \"musically</w>\": 48893,\n  \"musicals</w>\": 36974,\n  \"musichistory</w>\": 37890,\n  \"musician</w>\": 11179,\n  \"musicians</w>\": 12498,\n  \"musicislife</w>\": 43311,\n  \"musicmonday</w>\": 35887,\n  \"musicvideo</w>\": 26764,\n  \"musik</w>\": 32986,\n  \"musings</w>\": 44961,\n  \"musique</w>\": 42250,\n  \"musk\": 32143,\n  \"musk</w>\": 19063,\n  \"muskete\": 32775,\n  \"musketeers</w>\": 37993,\n  \"musko\": 34987,\n  \"muskoka</w>\": 40832,\n  \"musli\": 4958,\n  \"muslim\": 43795,\n  \"muslim</w>\": 7060,\n  \"muslims</w>\": 10513,\n  \"muss\": 41493,\n  \"mussels</w>\": 33393,\n  \"must\": 6783,\n  \"must</w>\": 2048,\n  \"mustache</w>\": 23451,\n  \"mustaf\": 23596,\n  \"mustafa</w>\": 29000,\n  \"mustang\": 42361,\n  \"mustang</w>\": 13309,\n  \"mustangs</w>\": 22500,\n  \"mustard</w>\": 15794,\n  \"muster</w>\": 47361,\n  \"mustread</w>\": 28978,\n  \"mut\": 12598,\n  \"mut</w>\": 22839,\n  \"mutant</w>\": 28384,\n  \"mutation</w>\": 38626,\n  \"mutations</w>\": 39651,\n  \"mute</w>\": 31252,\n  \"muted</w>\": 48028,\n  \"muth</w>\": 34280,\n  \"mutil\": 39950,\n  \"mutt</w>\": 45924,\n  \"mutu\": 17574,\n  \"mutual</w>\": 15055,\n  \"mutuals</w>\": 31158,\n  \"muy</w>\": 44625,\n  \"mv\": 10580,\n  \"mv</w>\": 8269,\n  \"mvc</w>\": 40549,\n  \"mvp</w>\": 8905,\n  \"mw\": 16725,\n  \"mw</w>\": 11206,\n  \"mwc</w>\": 24289,\n  \"mwf</w>\": 48565,\n  \"mx\": 21947,\n  \"mx</w>\": 9575,\n  \"my\": 1152,\n  \"my</w>\": 607,\n  \"mya</w>\": 31401,\n  \"myal\": 42735,\n  \"myan\": 13761,\n  \"myanmar</w>\": 14764,\n  \"myart</w>\": 38826,\n  \"myco\": 48362,\n  \"mydayin\": 41896,\n  \"mydayinla</w>\": 42801,\n  \"mydubai</w>\": 43475,\n  \"mye\": 27551,\n  \"myel\": 40084,\n  \"myers</w>\": 15993,\n  \"myjaps</w>\": 47939,\n  \"myle\": 43700,\n  \"myles</w>\": 25511,\n  \"mylife</w>\": 30537,\n  \"mylittle\": 37757,\n  \"mylittlepony</w>\": 45107,\n  \"myo\": 16206,\n  \"myr\": 20272,\n  \"myra</w>\": 35694,\n  \"myri\": 34972,\n  \"myrt\": 47785,\n  \"myrtle</w>\": 27768,\n  \"mys</w>\": 11724,\n  \"myself</w>\": 3245,\n  \"mysore</w>\": 44924,\n  \"myspace</w>\": 41382,\n  \"myster\": 4669,\n  \"mysteries</w>\": 20605,\n  \"mysterious</w>\": 12650,\n  \"mystery\": 39828,\n  \"mystery</w>\": 6711,\n  \"mysti\": 28711,\n  \"mystic\": 36264,\n  \"mystic</w>\": 23722,\n  \"mystical</w>\": 34122,\n  \"myth\": 20322,\n  \"myth</w>\": 13878,\n  \"mythical</w>\": 34377,\n  \"mytho\": 43857,\n  \"mythology</w>\": 22496,\n  \"myths</w>\": 18675,\n  \"mz\": 29509,\n  \"mz</w>\": 33400,\n  \"mzan\": 36322,\n  \"mzansi</w>\": 43301,\n  \"mÃ¡\": 36842,\n  \"mÃ©\": 21890,\n  \"mÃ©xico</w>\": 46159,\n  \"mÃ¼\": 28142,\n  \"mÃ¼n\": 41235,\n  \"n\": 77,\n  \"n</w>\": 333,\n  \"na\": 1097,\n  \"na</w>\": 1272,\n  \"naa</w>\": 37738,\n  \"naacp</w>\": 32176,\n  \"nab\": 6951,\n  \"nab</w>\": 19440,\n  \"nabe\": 35111,\n  \"naby</w>\": 24800,\n  \"nac\": 14557,\n  \"nac</w>\": 18950,\n  \"nach\": 12168,\n  \"nach</w>\": 43622,\n  \"nacho</w>\": 35647,\n  \"nachos</w>\": 32847,\n  \"nacht</w>\": 37261,\n  \"nacional</w>\": 38782,\n  \"nad\": 6204,\n  \"nad</w>\": 43928,\n  \"nada</w>\": 31683,\n  \"nadal</w>\": 20814,\n  \"nade\": 24908,\n  \"nadi\": 30512,\n  \"nadia</w>\": 27487,\n  \"nadine</w>\": 23356,\n  \"nadu</w>\": 20936,\n  \"nae</w>\": 19374,\n  \"naf\": 16161,\n  \"naf</w>\": 45956,\n  \"nafta</w>\": 43123,\n  \"nag\": 6694,\n  \"nag</w>\": 23902,\n  \"naga\": 45953,\n  \"naga</w>\": 38997,\n  \"nagar</w>\": 17490,\n  \"nage</w>\": 41219,\n  \"nago\": 38349,\n  \"nagoya</w>\": 43303,\n  \"nagpur</w>\": 43328,\n  \"nah\": 26421,\n  \"nah</w>\": 11129,\n  \"nahi</w>\": 35244,\n  \"nai\": 6230,\n  \"nai</w>\": 10692,\n  \"naia</w>\": 31340,\n  \"naidu</w>\": 42429,\n  \"naija</w>\": 16326,\n  \"naik</w>\": 34424,\n  \"nail\": 19459,\n  \"nail</w>\": 9059,\n  \"nailart</w>\": 43532,\n  \"nailed</w>\": 19035,\n  \"nails</w>\": 8469,\n  \"nair</w>\": 27107,\n  \"naira</w>\": 39450,\n  \"naire</w>\": 48892,\n  \"nairobi</w>\": 17756,\n  \"nais\": 46396,\n  \"naissance</w>\": 44761,\n  \"naive</w>\": 43362,\n  \"naj\": 30985,\n  \"naji\": 32589,\n  \"nak\": 9248,\n  \"nak</w>\": 25550,\n  \"naked\": 46371,\n  \"naked</w>\": 11478,\n  \"naku\": 39864,\n  \"nal\": 14132,\n  \"nal</w>\": 3119,\n  \"nale</w>\": 27198,\n  \"nall</w>\": 32869,\n  \"nally</w>\": 26158,\n  \"nam\": 1410,\n  \"nam</w>\": 12344,\n  \"nama</w>\": 39586,\n  \"naman</w>\": 27635,\n  \"namaste</w>\": 35549,\n  \"name\": 18160,\n  \"name</w>\": 1981,\n  \"named</w>\": 3194,\n  \"nameis\": 40831,\n  \"nament</w>\": 3916,\n  \"naments</w>\": 16540,\n  \"names</w>\": 6130,\n  \"namesake</w>\": 41298,\n  \"nami\": 20393,\n  \"namibia</w>\": 23731,\n  \"naming</w>\": 19367,\n  \"namjoon</w>\": 31986,\n  \"namm</w>\": 35524,\n  \"namo\": 46013,\n  \"namo</w>\": 24854,\n  \"nan\": 4375,\n  \"nan</w>\": 7750,\n  \"nana</w>\": 18761,\n  \"nanaimo</w>\": 40518,\n  \"nancy\": 21511,\n  \"nancy</w>\": 11425,\n  \"nand\": 20435,\n  \"nandez</w>\": 12764,\n  \"nando\": 46044,\n  \"nang\": 48148,\n  \"nani</w>\": 27980,\n  \"nanny</w>\": 31104,\n  \"nano\": 15835,\n  \"nano</w>\": 22006,\n  \"nanop\": 34177,\n  \"nanotechnology</w>\": 42235,\n  \"nanow\": 46734,\n  \"nant</w>\": 22526,\n  \"nantes</w>\": 47533,\n  \"nantucket</w>\": 41573,\n  \"nao</w>\": 39319,\n  \"naom\": 34955,\n  \"naomi</w>\": 20173,\n  \"nap\": 6568,\n  \"nap</w>\": 11012,\n  \"napa</w>\": 20545,\n  \"napier</w>\": 40875,\n  \"napkin</w>\": 38930,\n  \"naples</w>\": 23560,\n  \"napo\": 18715,\n  \"napol\": 20122,\n  \"napoleon</w>\": 24969,\n  \"napoli</w>\": 22445,\n  \"napp\": 11359,\n  \"napping</w>\": 37657,\n  \"naps</w>\": 31317,\n  \"naq\": 46453,\n  \"nar\": 2977,\n  \"nar</w>\": 20145,\n  \"nara</w>\": 33823,\n  \"narcis\": 25229,\n  \"narcissi\": 35442,\n  \"narco\": 38461,\n  \"nard</w>\": 18216,\n  \"nare\": 34853,\n  \"naren\": 8468,\n  \"narendr\": 9807,\n  \"narendra</w>\": 25848,\n  \"narendramodi</w>\": 9853,\n  \"narnia</w>\": 48693,\n  \"narr\": 11845,\n  \"narrated</w>\": 43609,\n  \"narrative</w>\": 15933,\n  \"narratives</w>\": 35117,\n  \"narrator</w>\": 46529,\n  \"narrow\": 24006,\n  \"narrow</w>\": 16652,\n  \"narrowly</w>\": 29747,\n  \"naruto</w>\": 22732,\n  \"nas\": 3090,\n  \"nas</w>\": 15250,\n  \"nasa</w>\": 6841,\n  \"nasal</w>\": 42853,\n  \"nascar\": 25723,\n  \"nascar</w>\": 7868,\n  \"nasdaq</w>\": 26629,\n  \"nash\": 6771,\n  \"nash</w>\": 13620,\n  \"nasheed</w>\": 49176,\n  \"nashgrier</w>\": 33372,\n  \"nashville\": 45356,\n  \"nashville</w>\": 8585,\n  \"nasi</w>\": 47987,\n  \"nasir</w>\": 47509,\n  \"nassau</w>\": 34048,\n  \"nasser</w>\": 43559,\n  \"nasty\": 32930,\n  \"nasty</w>\": 8709,\n  \"nat\": 1276,\n  \"nat</w>\": 11310,\n  \"nata</w>\": 39392,\n  \"natal</w>\": 28516,\n  \"natali\": 20296,\n  \"natalia</w>\": 32978,\n  \"natalie\": 36634,\n  \"natalie</w>\": 13595,\n  \"natash\": 48701,\n  \"natasha</w>\": 23093,\n  \"nate\": 26643,\n  \"nate</w>\": 7587,\n  \"natgeo\": 33009,\n  \"natgeo</w>\": 25046,\n  \"nath\": 22203,\n  \"nath</w>\": 19843,\n  \"nathan\": 13028,\n  \"nathan</w>\": 9711,\n  \"nathanfillion</w>\": 47422,\n  \"nathaniel</w>\": 32667,\n  \"nati\": 1060,\n  \"nati</w>\": 13384,\n  \"natic</w>\": 44944,\n  \"natin</w>\": 44358,\n  \"nation\": 2317,\n  \"nation</w>\": 2670,\n  \"national\": 3126,\n  \"national</w>\": 1362,\n  \"nationalbestfriend\": 42222,\n  \"nationaldogday</w>\": 32227,\n  \"nationalism</w>\": 29867,\n  \"nationalist</w>\": 25058,\n  \"nationality</w>\": 44451,\n  \"nationally</w>\": 15130,\n  \"nationalpark</w>\": 33060,\n  \"nationalparks</w>\": 41204,\n  \"nationals</w>\": 10784,\n  \"nationaltrust</w>\": 34051,\n  \"nations</w>\": 7654,\n  \"nationwide</w>\": 13795,\n  \"native\": 20639,\n  \"native</w>\": 4562,\n  \"natives</w>\": 36060,\n  \"nativity</w>\": 33988,\n  \"natl\": 39225,\n  \"natl</w>\": 34465,\n  \"nato</w>\": 13139,\n  \"nats</w>\": 21106,\n  \"natu\": 2775,\n  \"natur\": 6800,\n  \"natural\": 13198,\n  \"natural</w>\": 3288,\n  \"naturally</w>\": 12995,\n  \"naturals</w>\": 44686,\n  \"nature\": 9382,\n  \"nature</w>\": 2625,\n  \"naturelovers</w>\": 41514,\n  \"naturephotography</w>\": 22533,\n  \"natures</w>\": 15616,\n  \"natureuk</w>\": 46193,\n  \"nau\": 5955,\n  \"nau</w>\": 32878,\n  \"naught</w>\": 41001,\n  \"naughty\": 47255,\n  \"naughty</w>\": 15101,\n  \"nautical</w>\": 31660,\n  \"nav\": 3413,\n  \"nav</w>\": 25308,\n  \"navajo</w>\": 35523,\n  \"naval\": 44725,\n  \"naval</w>\": 13273,\n  \"navar\": 24848,\n  \"navarro</w>\": 37104,\n  \"nave\": 42704,\n  \"naveen</w>\": 43837,\n  \"naver</w>\": 32534,\n  \"navi\": 16159,\n  \"navi</w>\": 44848,\n  \"navig\": 12507,\n  \"navigate</w>\": 24400,\n  \"navigating</w>\": 33134,\n  \"navigation</w>\": 20148,\n  \"navigator</w>\": 38910,\n  \"navis</w>\": 36377,\n  \"navratri</w>\": 45428,\n  \"navy\": 28414,\n  \"navy</w>\": 5598,\n  \"naw\": 16259,\n  \"naw</w>\": 30500,\n  \"nawaz\": 49161,\n  \"nawaz</w>\": 19523,\n  \"nax\": 38299,\n  \"nay\": 11704,\n  \"nay</w>\": 16182,\n  \"naya</w>\": 38917,\n  \"nayanth\": 38157,\n  \"nayanthara</w>\": 45184,\n  \"naz\": 6363,\n  \"naz</w>\": 35534,\n  \"nazi</w>\": 12972,\n  \"nazis</w>\": 21778,\n  \"nb\": 6459,\n  \"nb</w>\": 6813,\n  \"nba\": 22524,\n  \"nba</w>\": 5139,\n  \"nbad\": 43458,\n  \"nbaf\": 30127,\n  \"nbafinals</w>\": 33803,\n  \"nbap\": 41956,\n  \"nbaplayoffs</w>\": 43860,\n  \"nbat\": 46291,\n  \"nbc\": 9352,\n  \"nbc</w>\": 8799,\n  \"nbd</w>\": 24526,\n  \"nbl</w>\": 42652,\n  \"nc\": 5021,\n  \"nc</w>\": 4911,\n  \"nca\": 6921,\n  \"ncaa</w>\": 9418,\n  \"ncbd</w>\": 47221,\n  \"ncc\": 33195,\n  \"ncc</w>\": 36686,\n  \"ncds</w>\": 47573,\n  \"ncfc</w>\": 31274,\n  \"ncis</w>\": 33617,\n  \"ncpol</w>\": 40562,\n  \"ncr</w>\": 38474,\n  \"ncs</w>\": 42689,\n  \"nct\": 27723,\n  \"nct</w>\": 20319,\n  \"ncwx</w>\": 36166,\n  \"nd\": 5625,\n  \"nd</w>\": 1764,\n  \"nda</w>\": 32862,\n  \"ndc</w>\": 47564,\n  \"ndi</w>\": 48229,\n  \"ndp</w>\": 19257,\n  \"nds</w>\": 31347,\n  \"ndtv</w>\": 26261,\n  \"ne\": 557,\n  \"ne</w>\": 1422,\n  \"nea</w>\": 24068,\n  \"neal\": 33652,\n  \"neal</w>\": 16730,\n  \"near\": 11296,\n  \"near</w>\": 2252,\n  \"nearby</w>\": 13314,\n  \"nearest</w>\": 18985,\n  \"nearing</w>\": 26571,\n  \"nearly</w>\": 4816,\n  \"nears</w>\": 37710,\n  \"neat\": 43201,\n  \"neat</w>\": 15465,\n  \"neath</w>\": 18315,\n  \"neau</w>\": 31559,\n  \"neb\": 40209,\n  \"nebra\": 13371,\n  \"nebraska</w>\": 14565,\n  \"nebu\": 49295,\n  \"nebula</w>\": 22532,\n  \"nec\": 25109,\n  \"nec</w>\": 22992,\n  \"necess\": 6961,\n  \"necessarily</w>\": 25853,\n  \"necessary</w>\": 8955,\n  \"necessities</w>\": 43483,\n  \"necessity</w>\": 33163,\n  \"neck\": 6066,\n  \"neck</w>\": 6906,\n  \"necklace</w>\": 7385,\n  \"necklaces</w>\": 32276,\n  \"necks</w>\": 29701,\n  \"nectar</w>\": 33683,\n  \"ned\": 16030,\n  \"ned</w>\": 1369,\n  \"nederland</w>\": 49058,\n  \"nee\": 20494,\n  \"nee</w>\": 10601,\n  \"need\": 3229,\n  \"need</w>\": 1262,\n  \"needed</w>\": 4049,\n  \"needing</w>\": 22894,\n  \"needle\": 44490,\n  \"needle</w>\": 19886,\n  \"needles</w>\": 27250,\n  \"needless</w>\": 39984,\n  \"needs</w>\": 2536,\n  \"needy</w>\": 30150,\n  \"neel\": 33092,\n  \"neel</w>\": 46043,\n  \"neer\": 34245,\n  \"nees</w>\": 47248,\n  \"neet</w>\": 46362,\n  \"neg\": 5513,\n  \"negan</w>\": 42623,\n  \"negative</w>\": 8869,\n  \"negatively</w>\": 40254,\n  \"negativity</w>\": 34658,\n  \"neglec\": 18827,\n  \"neglect</w>\": 33680,\n  \"neglected</w>\": 31893,\n  \"negli\": 32594,\n  \"negligence</w>\": 45658,\n  \"negoti\": 10216,\n  \"negotiate</w>\": 32969,\n  \"negotiating</w>\": 35510,\n  \"negotiation</w>\": 36504,\n  \"negotiations</w>\": 20433,\n  \"negr\": 42190,\n  \"negro</w>\": 26554,\n  \"neh\": 40416,\n  \"neh</w>\": 41697,\n  \"neha</w>\": 44463,\n  \"nehru</w>\": 30316,\n  \"nei\": 9366,\n  \"neigh\": 4061,\n  \"neighb\": 6534,\n  \"neighbor\": 7759,\n  \"neighbor</w>\": 14485,\n  \"neighborhood</w>\": 9471,\n  \"neighborhoods</w>\": 26713,\n  \"neighboring</w>\": 44754,\n  \"neighbors</w>\": 13037,\n  \"neighbour\": 15858,\n  \"neighbour</w>\": 23719,\n  \"neighbourhood</w>\": 20312,\n  \"neighbours</w>\": 17594,\n  \"neil\": 13591,\n  \"neil</w>\": 8030,\n  \"neilhimself</w>\": 45682,\n  \"neill</w>\": 19324,\n  \"neither</w>\": 14398,\n  \"nek</w>\": 47727,\n  \"neko</w>\": 47066,\n  \"nel\": 5476,\n  \"nel</w>\": 2693,\n  \"nell\": 27081,\n  \"nell</w>\": 8117,\n  \"nelly</w>\": 21166,\n  \"nels</w>\": 19296,\n  \"nelson\": 24774,\n  \"nelson</w>\": 8586,\n  \"nem</w>\": 45153,\n  \"neman</w>\": 48553,\n  \"neme\": 30993,\n  \"nemesis</w>\": 37811,\n  \"nemo</w>\": 30441,\n  \"nen\": 17817,\n  \"nen</w>\": 15451,\n  \"nene</w>\": 44167,\n  \"neo\": 14562,\n  \"neo</w>\": 11017,\n  \"neon\": 21043,\n  \"neon</w>\": 13919,\n  \"neonatal</w>\": 46464,\n  \"neop\": 49069,\n  \"nep\": 20739,\n  \"nep</w>\": 41960,\n  \"nepal\": 25597,\n  \"nepal</w>\": 10066,\n  \"nepali</w>\": 47579,\n  \"neph\": 27926,\n  \"nephe\": 41810,\n  \"nephew</w>\": 11689,\n  \"nephews</w>\": 43747,\n  \"nephro\": 43054,\n  \"neptune</w>\": 30566,\n  \"ner\": 2064,\n  \"ner</w>\": 998,\n  \"nerd\": 24452,\n  \"nerd</w>\": 12273,\n  \"nerds</w>\": 22609,\n  \"nerdy</w>\": 33124,\n  \"nered</w>\": 17583,\n  \"nerf</w>\": 42914,\n  \"nering</w>\": 20226,\n  \"nero</w>\": 29048,\n  \"ners</w>\": 2129,\n  \"nerve</w>\": 18571,\n  \"nerves</w>\": 27813,\n  \"nervous</w>\": 13928,\n  \"nery</w>\": 48597,\n  \"nes\": 5457,\n  \"nes</w>\": 4980,\n  \"nesburg</w>\": 27159,\n  \"nese</w>\": 32220,\n  \"ness\": 7187,\n  \"ness</w>\": 1294,\n  \"nesses</w>\": 20107,\n  \"nessy</w>\": 32939,\n  \"nest\": 20302,\n  \"nest</w>\": 8719,\n  \"nesting</w>\": 28860,\n  \"nestle</w>\": 43967,\n  \"nestled</w>\": 38107,\n  \"nests</w>\": 41133,\n  \"net\": 1851,\n  \"net</w>\": 2315,\n  \"netany\": 23137,\n  \"netanyahu</w>\": 23583,\n  \"netball</w>\": 19761,\n  \"netes</w>\": 44335,\n  \"netfli\": 6304,\n  \"netflix\": 35325,\n  \"netflix</w>\": 6600,\n  \"nether\": 9946,\n  \"netherlands</w>\": 11060,\n  \"neti\": 43980,\n  \"netneutrality</w>\": 47794,\n  \"nets</w>\": 8582,\n  \"nett\": 23403,\n  \"nett</w>\": 6975,\n  \"nette</w>\": 13271,\n  \"network\": 23285,\n  \"network</w>\": 3304,\n  \"networking</w>\": 9818,\n  \"networks</w>\": 10004,\n  \"neu\": 3855,\n  \"neu</w>\": 43342,\n  \"neue</w>\": 45764,\n  \"neur\": 19001,\n  \"neur</w>\": 31976,\n  \"neural</w>\": 26388,\n  \"neuro\": 7401,\n  \"neuro</w>\": 36000,\n  \"neurological</w>\": 41718,\n  \"neurology</w>\": 43197,\n  \"neurons</w>\": 40442,\n  \"neuroscience</w>\": 23381,\n  \"neutr\": 17207,\n  \"neutral</w>\": 17011,\n  \"neutrality</w>\": 26511,\n  \"neutron</w>\": 44056,\n  \"nev\": 10236,\n  \"nev</w>\": 43645,\n  \"neva</w>\": 43304,\n  \"nevada</w>\": 13499,\n  \"neve\": 44099,\n  \"neve</w>\": 44023,\n  \"never\": 6746,\n  \"never</w>\": 1426,\n  \"neveragain</w>\": 45053,\n  \"neverforget</w>\": 19242,\n  \"nevergiveup</w>\": 42497,\n  \"neverland</w>\": 41483,\n  \"nevertheless</w>\": 48355,\n  \"nevertrump</w>\": 47494,\n  \"neville</w>\": 19269,\n  \"nevis</w>\": 43670,\n  \"new\": 1218,\n  \"new</w>\": 686,\n  \"newark</w>\": 20240,\n  \"newbie</w>\": 45427,\n  \"newborn</w>\": 18320,\n  \"newbury</w>\": 34169,\n  \"newcastle\": 41955,\n  \"newcastle</w>\": 9302,\n  \"newcomer</w>\": 30648,\n  \"newcomers</w>\": 44037,\n  \"newe\": 40068,\n  \"newell</w>\": 41436,\n  \"newer</w>\": 33099,\n  \"newest</w>\": 4990,\n  \"newfound\": 25250,\n  \"newfoundland</w>\": 28079,\n  \"newh\": 18546,\n  \"newin\": 31911,\n  \"newjersey</w>\": 32621,\n  \"newly\": 42186,\n  \"newly</w>\": 7056,\n  \"newman</w>\": 15815,\n  \"newmarket</w>\": 38617,\n  \"newmexico</w>\": 35238,\n  \"newmusic\": 32510,\n  \"newmusic</w>\": 17201,\n  \"newor\": 25969,\n  \"neworleans</w>\": 31205,\n  \"newport\": 42580,\n  \"newport</w>\": 14846,\n  \"newprofile\": 14633,\n  \"newprofilepic</w>\": 14754,\n  \"newrelease</w>\": 34793,\n  \"news\": 6216,\n  \"news</w>\": 1120,\n  \"newsat</w>\": 43979,\n  \"newsc\": 28656,\n  \"newscast</w>\": 45031,\n  \"newsle\": 10727,\n  \"newsletter</w>\": 11069,\n  \"newsnow</w>\": 48650,\n  \"newsp\": 7109,\n  \"newspaper</w>\": 8786,\n  \"newspapers</w>\": 22423,\n  \"newsroom</w>\": 23200,\n  \"newt</w>\": 37224,\n  \"newton\": 33122,\n  \"newton</w>\": 12606,\n  \"newtown</w>\": 31747,\n  \"newyear\": 22161,\n  \"newyear</w>\": 12999,\n  \"newyearseve</w>\": 37587,\n  \"newyork\": 18140,\n  \"newyork</w>\": 10454,\n  \"newyorkcity</w>\": 30460,\n  \"newyorker</w>\": 39732,\n  \"newzealand</w>\": 21117,\n  \"nex\": 6897,\n  \"nex</w>\": 39720,\n  \"next\": 12434,\n  \"next</w>\": 1131,\n  \"nextgen</w>\": 41933,\n  \"nexus</w>\": 19053,\n  \"ney\": 3857,\n  \"ney</w>\": 1438,\n  \"neymar</w>\": 21878,\n  \"neys</w>\": 12616,\n  \"nez</w>\": 27388,\n  \"nf\": 15195,\n  \"nf</w>\": 25643,\n  \"nfamily</w>\": 20098,\n  \"nfc</w>\": 23695,\n  \"nffc</w>\": 27893,\n  \"nfl\": 11219,\n  \"nfl</w>\": 4691,\n  \"nfldraft</w>\": 25002,\n  \"ng\": 10352,\n  \"ng</w>\": 5215,\n  \"nga</w>\": 35477,\n  \"ngc</w>\": 29046,\n  \"ngo\": 38740,\n  \"ngo</w>\": 24821,\n  \"ngos</w>\": 34627,\n  \"nguyen</w>\": 29947,\n  \"nh\": 3760,\n  \"nh</w>\": 10803,\n  \"nhc</w>\": 44817,\n  \"nhl\": 12290,\n  \"nhl</w>\": 8167,\n  \"nhlbruins</w>\": 39081,\n  \"nhljets</w>\": 49357,\n  \"nhm</w>\": 39483,\n  \"nhpolitics</w>\": 36125,\n  \"nhq</w>\": 42368,\n  \"nhra</w>\": 30052,\n  \"nhs\": 23282,\n  \"nhs</w>\": 7695,\n  \"ni\": 697,\n  \"ni</w>\": 3256,\n  \"nia</w>\": 3098,\n  \"niag\": 18071,\n  \"niagar\": 39298,\n  \"niagara</w>\": 18965,\n  \"niall\": 41354,\n  \"niall</w>\": 8327,\n  \"niallo\": 22855,\n  \"niallofficial</w>\": 23084,\n  \"niam\": 39347,\n  \"nian</w>\": 46003,\n  \"nib</w>\": 31049,\n  \"nic\": 2109,\n  \"nic</w>\": 6651,\n  \"nica</w>\": 29040,\n  \"nicar\": 25119,\n  \"nicaragua</w>\": 28423,\n  \"nice\": 28386,\n  \"nice</w>\": 1805,\n  \"nicely</w>\": 12303,\n  \"nicer</w>\": 29488,\n  \"nicest</w>\": 22967,\n  \"niche</w>\": 25279,\n  \"nichol\": 7668,\n  \"nicholas\": 39814,\n  \"nicholas</w>\": 13148,\n  \"nicholls</w>\": 38846,\n  \"nichols</w>\": 22730,\n  \"nicholson</w>\": 28745,\n  \"nick\": 4209,\n  \"nick</w>\": 4253,\n  \"nickel</w>\": 22034,\n  \"nickelo\": 28668,\n  \"nickelodeon</w>\": 33279,\n  \"nicki</w>\": 17738,\n  \"nickimin\": 27390,\n  \"nickiminaj</w>\": 27593,\n  \"nickjonas</w>\": 43862,\n  \"nickname</w>\": 24731,\n  \"nicknamed</w>\": 45190,\n  \"nicks</w>\": 15049,\n  \"nicky\": 28893,\n  \"nicky</w>\": 22091,\n  \"nico\": 20850,\n  \"nico</w>\": 17779,\n  \"nicol\": 9919,\n  \"nicol</w>\": 48274,\n  \"nicola</w>\": 21791,\n  \"nicolas\": 43813,\n  \"nicolas</w>\": 18918,\n  \"nicole\": 21246,\n  \"nicole</w>\": 10000,\n  \"nicot\": 45099,\n  \"nicotine</w>\": 46697,\n  \"nie\": 9524,\n  \"nie</w>\": 3501,\n  \"niece</w>\": 12795,\n  \"nieces</w>\": 44877,\n  \"niel\": 19109,\n  \"niel</w>\": 26837,\n  \"niels</w>\": 37154,\n  \"nielsen</w>\": 28372,\n  \"nier</w>\": 13014,\n  \"nies</w>\": 10586,\n  \"niest</w>\": 15007,\n  \"nieu\": 29781,\n  \"nific\": 4748,\n  \"nifty</w>\": 25604,\n  \"nig\": 27933,\n  \"nig</w>\": 28099,\n  \"nigan</w>\": 48516,\n  \"nigel\": 33919,\n  \"nigel</w>\": 15153,\n  \"niger\": 4524,\n  \"niger</w>\": 29920,\n  \"nigeri\": 40913,\n  \"nigeria</w>\": 6106,\n  \"nigerian</w>\": 12167,\n  \"nigerians</w>\": 25358,\n  \"nigh\": 13525,\n  \"nigh</w>\": 48157,\n  \"night\": 3870,\n  \"night</w>\": 930,\n  \"nightclub</w>\": 20418,\n  \"nighter</w>\": 41349,\n  \"nighting\": 36211,\n  \"nightingale</w>\": 40696,\n  \"nightlife</w>\": 28823,\n  \"nightly</w>\": 28868,\n  \"nightmare</w>\": 12867,\n  \"nightmares</w>\": 24032,\n  \"nightout</w>\": 44257,\n  \"nights</w>\": 4296,\n  \"nighttime</w>\": 38147,\n  \"nightw\": 39956,\n  \"nih</w>\": 25783,\n  \"nik\": 5126,\n  \"nik</w>\": 13705,\n  \"nike\": 16300,\n  \"nike</w>\": 5783,\n  \"nikeplus</w>\": 43154,\n  \"niki</w>\": 36136,\n  \"nikita</w>\": 37118,\n  \"nikk\": 38596,\n  \"nikki\": 23156,\n  \"nikki</w>\": 16689,\n  \"niko</w>\": 43771,\n  \"nikol\": 27430,\n  \"nikola</w>\": 42146,\n  \"nikon\": 25488,\n  \"nikon</w>\": 13849,\n  \"nikov</w>\": 43960,\n  \"nil\": 16852,\n  \"nil</w>\": 35030,\n  \"nile</w>\": 24252,\n  \"nim\": 30402,\n  \"nim</w>\": 42093,\n  \"nima</w>\": 42586,\n  \"nin\": 5794,\n  \"nin</w>\": 14145,\n  \"nina</w>\": 13891,\n  \"nine\": 16213,\n  \"nine</w>\": 7330,\n  \"ninety</w>\": 48214,\n  \"ning\": 6050,\n  \"ning</w>\": 762,\n  \"ningham</w>\": 23395,\n  \"ningly</w>\": 43537,\n  \"nings</w>\": 4588,\n  \"nington</w>\": 26214,\n  \"ninj\": 23225,\n  \"ninja</w>\": 11969,\n  \"ninjas</w>\": 42796,\n  \"nino</w>\": 25633,\n  \"ninten\": 6184,\n  \"nintendo\": 13969,\n  \"nintendo</w>\": 7886,\n  \"nintendoswitch</w>\": 16404,\n  \"ninth</w>\": 22770,\n  \"nip\": 33889,\n  \"nip</w>\": 22333,\n  \"nipp\": 24634,\n  \"nipple</w>\": 45987,\n  \"nipples</w>\": 44774,\n  \"nippon</w>\": 47960,\n  \"nips</w>\": 49241,\n  \"nir\": 15503,\n  \"nir</w>\": 40057,\n  \"nireland</w>\": 45763,\n  \"niro</w>\": 47373,\n  \"nirvana</w>\": 28300,\n  \"nis\": 5609,\n  \"nis</w>\": 3786,\n  \"nish\": 19834,\n  \"nish</w>\": 13256,\n  \"nished</w>\": 24141,\n  \"nishi\": 32386,\n  \"nishings</w>\": 49247,\n  \"nison</w>\": 45700,\n  \"niss</w>\": 39043,\n  \"nissan\": 37635,\n  \"nissan</w>\": 11082,\n  \"nist</w>\": 17782,\n  \"nister</w>\": 36640,\n  \"nit\": 4087,\n  \"nit</w>\": 19011,\n  \"nite</w>\": 8427,\n  \"niti\": 43964,\n  \"niti</w>\": 45355,\n  \"nitin</w>\": 37529,\n  \"nitro</w>\": 30726,\n  \"nitrogen</w>\": 30706,\n  \"niture</w>\": 7840,\n  \"nity</w>\": 12707,\n  \"niu</w>\": 48187,\n  \"niv</w>\": 47300,\n  \"niversary</w>\": 29643,\n  \"nix\": 48552,\n  \"nix</w>\": 32278,\n  \"nixon</w>\": 20671,\n  \"nj\": 8343,\n  \"nj</w>\": 6672,\n  \"njcaa</w>\": 48992,\n  \"njpw</w>\": 38992,\n  \"nk\": 22708,\n  \"nk</w>\": 17456,\n  \"nko\": 36353,\n  \"nl\": 12057,\n  \"nl</w>\": 7655,\n  \"nli</w>\": 37502,\n  \"nlp</w>\": 35680,\n  \"nlwx</w>\": 49260,\n  \"nm\": 15956,\n  \"nm</w>\": 11370,\n  \"nmd</w>\": 43331,\n  \"nme</w>\": 40454,\n  \"nmwx</w>\": 47967,\n  \"nn\": 8947,\n  \"nn</w>\": 12925,\n  \"nnn</w>\": 26277,\n  \"nnnn</w>\": 41420,\n  \"no\": 578,\n  \"no</w>\": 871,\n  \"noaa</w>\": 27557,\n  \"noah\": 28806,\n  \"noah</w>\": 11519,\n  \"nobel\": 33742,\n  \"nobel</w>\": 15605,\n  \"nobelprize</w>\": 46074,\n  \"noble\": 29430,\n  \"noble</w>\": 12051,\n  \"nobody</w>\": 7009,\n  \"noc\": 16988,\n  \"noc</w>\": 44420,\n  \"nocchi</w>\": 46359,\n  \"noch</w>\": 38672,\n  \"noche</w>\": 29689,\n  \"noches</w>\": 44166,\n  \"nock</w>\": 16993,\n  \"noctur\": 26291,\n  \"nocturnal</w>\": 41738,\n  \"nod</w>\": 18648,\n  \"nodapl</w>\": 39079,\n  \"node\": 31434,\n  \"node</w>\": 24871,\n  \"nodejs</w>\": 39262,\n  \"nodes</w>\": 40534,\n  \"noel\": 38406,\n  \"noel</w>\": 17496,\n  \"nof\": 29505,\n  \"noff</w>\": 46979,\n  \"nofilter</w>\": 16418,\n  \"nog</w>\": 31157,\n  \"noh</w>\": 40775,\n  \"noi\": 43115,\n  \"noi</w>\": 39889,\n  \"noida</w>\": 33404,\n  \"noir\": 39291,\n  \"noir</w>\": 12953,\n  \"nois\": 22057,\n  \"noise\": 41018,\n  \"noise</w>\": 9307,\n  \"noises</w>\": 31575,\n  \"noisse\": 45686,\n  \"noisy</w>\": 33495,\n  \"nokia</w>\": 17731,\n  \"nol\": 8055,\n  \"nola</w>\": 13289,\n  \"nolan</w>\": 17323,\n  \"nold</w>\": 40322,\n  \"nole</w>\": 34654,\n  \"noles</w>\": 40569,\n  \"nollywood</w>\": 43145,\n  \"nology</w>\": 42221,\n  \"nom\": 2981,\n  \"nom</w>\": 12799,\n  \"nomad</w>\": 27849,\n  \"noman\": 45592,\n  \"nomin\": 5643,\n  \"nominate</w>\": 17122,\n  \"nominated</w>\": 8710,\n  \"nominating</w>\": 45747,\n  \"nomination</w>\": 14136,\n  \"nominations</w>\": 17124,\n  \"nominee</w>\": 14122,\n  \"nominees</w>\": 17873,\n  \"nomnom</w>\": 26962,\n  \"nomore\": 35126,\n  \"noms</w>\": 35706,\n  \"non\": 4282,\n  \"non</w>\": 3353,\n  \"none\": 29644,\n  \"none</w>\": 8906,\n  \"nonetheless</w>\": 39675,\n  \"nonfiction</w>\": 31654,\n  \"nonprofit</w>\": 19315,\n  \"nonprofits</w>\": 37935,\n  \"nonsense</w>\": 19136,\n  \"nonstop</w>\": 30300,\n  \"nont</w>\": 25207,\n  \"noo\": 6759,\n  \"noo</w>\": 46672,\n  \"noodle</w>\": 19521,\n  \"noodles</w>\": 15782,\n  \"nook</w>\": 30088,\n  \"noon\": 37693,\n  \"noon</w>\": 2347,\n  \"noor\": 46978,\n  \"noor</w>\": 31323,\n  \"nope</w>\": 15625,\n  \"nor\": 1062,\n  \"nor</w>\": 6190,\n  \"nora</w>\": 25890,\n  \"norcal</w>\": 41970,\n  \"nord\": 19261,\n  \"nord</w>\": 36067,\n  \"nordic\": 36439,\n  \"nordic</w>\": 20734,\n  \"nordstrom</w>\": 38562,\n  \"norfolk\": 30232,\n  \"norfolk</w>\": 12202,\n  \"norm\": 10990,\n  \"norm</w>\": 22457,\n  \"norma</w>\": 35757,\n  \"normal\": 28748,\n  \"normal</w>\": 5967,\n  \"normali\": 45157,\n  \"normally</w>\": 15870,\n  \"norman\": 22027,\n  \"norman</w>\": 11338,\n  \"normandy</w>\": 23840,\n  \"normani</w>\": 44596,\n  \"norms</w>\": 33011,\n  \"norris</w>\": 21814,\n  \"norse</w>\": 36559,\n  \"norte</w>\": 35638,\n  \"north\": 3468,\n  \"north</w>\": 2188,\n  \"northampton\": 49246,\n  \"northampton</w>\": 26175,\n  \"northan\": 37081,\n  \"northbound</w>\": 24228,\n  \"northcarolina</w>\": 43386,\n  \"northe\": 24675,\n  \"northeast\": 42673,\n  \"northeast</w>\": 13009,\n  \"northeastern</w>\": 28297,\n  \"northeasthour</w>\": 42869,\n  \"norther\": 26908,\n  \"northern\": 17210,\n  \"northern</w>\": 5049,\n  \"northernlights</w>\": 48940,\n  \"northkorea</w>\": 38495,\n  \"northside</w>\": 45957,\n  \"northumber\": 22295,\n  \"northumberland</w>\": 22922,\n  \"northwales</w>\": 49371,\n  \"northwest</w>\": 12894,\n  \"northwestern</w>\": 23685,\n  \"norton</w>\": 18032,\n  \"norway</w>\": 8780,\n  \"norwe\": 14414,\n  \"norwegian</w>\": 15971,\n  \"norwich\": 37629,\n  \"norwich</w>\": 15812,\n  \"norwood</w>\": 37889,\n  \"nos</w>\": 13420,\n  \"nose\": 24192,\n  \"nose</w>\": 8231,\n  \"noses</w>\": 48163,\n  \"nostal\": 12076,\n  \"nostalgia</w>\": 16622,\n  \"nostalgic</w>\": 24468,\n  \"not\": 2534,\n  \"not</w>\": 783,\n  \"notable</w>\": 22023,\n  \"notch</w>\": 19476,\n  \"notdead</w>\": 42059,\n  \"note\": 10910,\n  \"note</w>\": 3246,\n  \"notebook</w>\": 16365,\n  \"notebooks</w>\": 37623,\n  \"noted</w>\": 22501,\n  \"notes</w>\": 5795,\n  \"nothin</w>\": 24291,\n  \"nothing\": 28412,\n  \"nothing</w>\": 2586,\n  \"noti\": 10686,\n  \"notic\": 6915,\n  \"notice</w>\": 6683,\n  \"noticeable</w>\": 40857,\n  \"noticed</w>\": 9324,\n  \"notices</w>\": 33459,\n  \"noticias</w>\": 47759,\n  \"noticing</w>\": 37571,\n  \"notification</w>\": 22512,\n  \"notifications</w>\": 23169,\n  \"notified</w>\": 39454,\n  \"noting</w>\": 38649,\n  \"notion</w>\": 37856,\n  \"notjust\": 33212,\n  \"notjustlakes</w>\": 45803,\n  \"notmy\": 39301,\n  \"noto\": 29878,\n  \"noton\": 48258,\n  \"notor\": 21711,\n  \"notori\": 44065,\n  \"notorious</w>\": 22489,\n  \"notre\": 24397,\n  \"notre</w>\": 15306,\n  \"notredame</w>\": 34077,\n  \"notsorry</w>\": 34361,\n  \"nott\": 9333,\n  \"nott</w>\": 34989,\n  \"notte</w>\": 47308,\n  \"nottingham</w>\": 12852,\n  \"notts</w>\": 25598,\n  \"nou\": 8751,\n  \"nou</w>\": 30953,\n  \"noun</w>\": 33663,\n  \"nouri\": 23796,\n  \"nourish</w>\": 46025,\n  \"nourished</w>\": 48354,\n  \"nous</w>\": 29485,\n  \"nouveau</w>\": 29948,\n  \"nouvel\": 34215,\n  \"nov\": 2264,\n  \"nov</w>\": 4293,\n  \"nova</w>\": 11236,\n  \"novak</w>\": 26465,\n  \"novasco\": 33785,\n  \"novascotia</w>\": 34744,\n  \"novation</w>\": 39753,\n  \"nove\": 30507,\n  \"novel\": 15044,\n  \"novel</w>\": 6080,\n  \"novelist</w>\": 27314,\n  \"novella</w>\": 42770,\n  \"novels</w>\": 16040,\n  \"novelty</w>\": 37750,\n  \"november</w>\": 3680,\n  \"nover</w>\": 37465,\n  \"novi\": 47957,\n  \"novice</w>\": 33743,\n  \"novo\": 27504,\n  \"novo</w>\": 36581,\n  \"now\": 2040,\n  \"now</w>\": 692,\n  \"nowadays</w>\": 26155,\n  \"nowhere</w>\": 14108,\n  \"nowplaying</w>\": 3708,\n  \"nowwatching</w>\": 30852,\n  \"nox</w>\": 27406,\n  \"noxi\": 39304,\n  \"noxious</w>\": 42833,\n  \"noy</w>\": 32787,\n  \"np\": 18205,\n  \"np</w>\": 6314,\n  \"npa</w>\": 42378,\n  \"npc</w>\": 33966,\n  \"npr\": 39941,\n  \"npr</w>\": 24078,\n  \"nps</w>\": 22025,\n  \"npt</w>\": 47231,\n  \"nr\": 6574,\n  \"nr</w>\": 9713,\n  \"nra</w>\": 17286,\n  \"nrc</w>\": 45786,\n  \"nrf</w>\": 47982,\n  \"nrg</w>\": 48662,\n  \"nrl\": 27142,\n  \"nrl</w>\": 18127,\n  \"ns\": 12405,\n  \"ns</w>\": 1373,\n  \"nsa</w>\": 23004,\n  \"nsc\": 32792,\n  \"nsd</w>\": 36659,\n  \"nsf</w>\": 34180,\n  \"nsfw</w>\": 19847,\n  \"nsi\": 47824,\n  \"nsw\": 21301,\n  \"nsw</w>\": 11693,\n  \"nswpol</w>\": 44434,\n  \"nt\": 10902,\n  \"nt</w>\": 3207,\n  \"ntr</w>\": 30845,\n  \"nts</w>\": 43775,\n  \"ntt</w>\": 22859,\n  \"ntv\": 24807,\n  \"ntv</w>\": 45304,\n  \"nu\": 1156,\n  \"nu</w>\": 9444,\n  \"nucle\": 25693,\n  \"nuclear\": 34136,\n  \"nuclear</w>\": 7279,\n  \"nude</w>\": 16630,\n  \"nudes</w>\": 32122,\n  \"nue\": 22834,\n  \"nuestra</w>\": 45649,\n  \"nuestro</w>\": 38590,\n  \"nuev\": 47861,\n  \"nueva</w>\": 48810,\n  \"nuevo</w>\": 30265,\n  \"nufc</w>\": 15720,\n  \"nuff</w>\": 37324,\n  \"nug\": 13471,\n  \"nugent</w>\": 47457,\n  \"nugget</w>\": 25448,\n  \"nuggets</w>\": 18970,\n  \"nuh</w>\": 45950,\n  \"nuit</w>\": 38815,\n  \"nuk</w>\": 39228,\n  \"nuke</w>\": 39399,\n  \"nul\": 29358,\n  \"null</w>\": 47376,\n  \"num\": 17896,\n  \"num</w>\": 30534,\n  \"numb\": 34639,\n  \"numb</w>\": 39427,\n  \"number\": 44078,\n  \"number</w>\": 2842,\n  \"numbered</w>\": 25975,\n  \"numbers</w>\": 6121,\n  \"numer\": 11442,\n  \"numerous</w>\": 17082,\n  \"numis\": 39100,\n  \"nun\": 12511,\n  \"nun</w>\": 28540,\n  \"nunavut</w>\": 48626,\n  \"nunes</w>\": 40697,\n  \"nuns</w>\": 44061,\n  \"nup\": 46757,\n  \"nur\": 3920,\n  \"nur</w>\": 33493,\n  \"nure\": 42480,\n  \"nurse\": 37547,\n  \"nurse</w>\": 10058,\n  \"nursery</w>\": 15540,\n  \"nurses</w>\": 12938,\n  \"nursing</w>\": 11126,\n  \"nurture</w>\": 38865,\n  \"nurturing</w>\": 45229,\n  \"nus\": 25157,\n  \"nus</w>\": 18239,\n  \"nut\": 10358,\n  \"nut</w>\": 6491,\n  \"nutcracker</w>\": 36733,\n  \"nutella</w>\": 27312,\n  \"nutr\": 6198,\n  \"nutri\": 15470,\n  \"nutrient</w>\": 32900,\n  \"nutrients</w>\": 24668,\n  \"nutriti\": 17978,\n  \"nutrition\": 41546,\n  \"nutrition</w>\": 7989,\n  \"nutritional</w>\": 26457,\n  \"nutritious</w>\": 30387,\n  \"nuts</w>\": 8644,\n  \"nutshell</w>\": 26659,\n  \"nutty</w>\": 39846,\n  \"nv\": 17217,\n  \"nv</w>\": 16985,\n  \"nvi\": 22847,\n  \"nvidia</w>\": 27325,\n  \"nw\": 7826,\n  \"nw</w>\": 7030,\n  \"nwa</w>\": 34237,\n  \"nwo</w>\": 40976,\n  \"nws\": 23333,\n  \"nws</w>\": 30998,\n  \"nwsl</w>\": 48394,\n  \"nwt</w>\": 25029,\n  \"nx\": 18810,\n  \"nx</w>\": 16997,\n  \"nxt\": 35037,\n  \"nxt</w>\": 17804,\n  \"ny\": 1383,\n  \"ny</w>\": 1350,\n  \"nya</w>\": 24165,\n  \"nyc\": 13304,\n  \"nyc</w>\": 2832,\n  \"nycc</w>\": 27187,\n  \"nycfc</w>\": 47497,\n  \"nye\": 40723,\n  \"nye</w>\": 13416,\n  \"nyfw</w>\": 21089,\n  \"nyk</w>\": 46841,\n  \"nylon</w>\": 25915,\n  \"nyo\": 41534,\n  \"nyo</w>\": 44586,\n  \"nypd\": 42293,\n  \"nypd</w>\": 18279,\n  \"nyr</w>\": 32538,\n  \"nyrd</w>\": 47936,\n  \"nys\": 36375,\n  \"nys</w>\": 23423,\n  \"nyse</w>\": 32650,\n  \"nyt\": 46311,\n  \"nyt</w>\": 12816,\n  \"nytimes</w>\": 13772,\n  \"nyu\": 43143,\n  \"nyu</w>\": 31355,\n  \"nz\": 10142,\n  \"nz</w>\": 7082,\n  \"o\": 78,\n  \"o</w>\": 334,\n  \"oa</w>\": 11994,\n  \"oahu</w>\": 37790,\n  \"oak\": 6010,\n  \"oak</w>\": 7221,\n  \"oakland\": 42663,\n  \"oakland</w>\": 12077,\n  \"oakley</w>\": 27810,\n  \"oaks</w>\": 16734,\n  \"oakville</w>\": 38500,\n  \"oasis</w>\": 18185,\n  \"oat\": 20095,\n  \"oat</w>\": 34132,\n  \"oates</w>\": 47094,\n  \"oath</w>\": 20108,\n  \"oatmeal</w>\": 26374,\n  \"oats</w>\": 24150,\n  \"oax\": 43090,\n  \"oaxaca</w>\": 47818,\n  \"ob\": 1411,\n  \"ob</w>\": 14908,\n  \"oba\": 42902,\n  \"oba</w>\": 15147,\n  \"obam\": 13174,\n  \"obama</w>\": 4276,\n  \"obamacare</w>\": 18005,\n  \"obe\": 11897,\n  \"obe</w>\": 29117,\n  \"obedience</w>\": 48921,\n  \"ober\": 15284,\n  \"obese</w>\": 41757,\n  \"obesity</w>\": 19499,\n  \"obey</w>\": 26926,\n  \"obi\": 21454,\n  \"obi</w>\": 18414,\n  \"obile</w>\": 20513,\n  \"obitu\": 39218,\n  \"obituary</w>\": 43580,\n  \"objec\": 7970,\n  \"object</w>\": 14115,\n  \"objective</w>\": 23663,\n  \"objectives</w>\": 30238,\n  \"objects</w>\": 13770,\n  \"obl\": 31452,\n  \"oblast</w>\": 42672,\n  \"obli\": 11416,\n  \"obligation</w>\": 34473,\n  \"obligations</w>\": 38232,\n  \"obligatory</w>\": 35020,\n  \"oblivion</w>\": 45323,\n  \"obo\": 46001,\n  \"obo</w>\": 26618,\n  \"obrien</w>\": 31946,\n  \"obs</w>\": 39162,\n  \"obsc\": 20392,\n  \"obscure</w>\": 33337,\n  \"obse\": 8433,\n  \"observ\": 9050,\n  \"observation</w>\": 20250,\n  \"observations</w>\": 27409,\n  \"observatory</w>\": 21236,\n  \"observe</w>\": 23217,\n  \"observed</w>\": 21267,\n  \"observer</w>\": 22077,\n  \"observers</w>\": 47544,\n  \"observing</w>\": 28359,\n  \"obsessed</w>\": 9744,\n  \"obsession</w>\": 15718,\n  \"obsi\": 47323,\n  \"obsole\": 35561,\n  \"obsolete</w>\": 40628,\n  \"obst\": 29398,\n  \"obstac\": 24075,\n  \"obstacle</w>\": 29751,\n  \"obstacles</w>\": 24480,\n  \"obste\": 49103,\n  \"obstru\": 44876,\n  \"obstruc\": 38762,\n  \"obstruction</w>\": 40240,\n  \"obtain</w>\": 26555,\n  \"obtained</w>\": 29322,\n  \"obvious</w>\": 13959,\n  \"obviously</w>\": 10068,\n  \"oc\": 1566,\n  \"oc</w>\": 6603,\n  \"oca</w>\": 31120,\n  \"ocal</w>\": 38148,\n  \"occ</w>\": 43940,\n  \"occa\": 8530,\n  \"occasion</w>\": 12280,\n  \"occasional</w>\": 33059,\n  \"occasionally</w>\": 32479,\n  \"occasions</w>\": 26154,\n  \"occer</w>\": 20804,\n  \"occi\": 42994,\n  \"occu\": 7863,\n  \"occult</w>\": 42529,\n  \"occup\": 11152,\n  \"occupation</w>\": 18624,\n  \"occupational</w>\": 30644,\n  \"occupied</w>\": 17271,\n  \"occupy\": 22453,\n  \"occupy</w>\": 24210,\n  \"occur\": 11264,\n  \"occur</w>\": 21813,\n  \"occurred</w>\": 19850,\n  \"occurrence</w>\": 40615,\n  \"occurring</w>\": 31335,\n  \"occurs</w>\": 26563,\n  \"ocd</w>\": 35904,\n  \"oce\": 3509,\n  \"ocean\": 12941,\n  \"ocean</w>\": 4918,\n  \"oceans</w>\": 16792,\n  \"och\": 29334,\n  \"och</w>\": 32011,\n  \"oche</w>\": 33045,\n  \"oci\": 9891,\n  \"ocity\": 46039,\n  \"ock\": 33579,\n  \"ock</w>\": 21313,\n  \"ocks</w>\": 22410,\n  \"oclock</w>\": 36274,\n  \"oco</w>\": 32553,\n  \"ocon</w>\": 33090,\n  \"ocr\": 45813,\n  \"ocre</w>\": 40320,\n  \"ocs</w>\": 27297,\n  \"oct</w>\": 4565,\n  \"octa\": 23444,\n  \"octag\": 37768,\n  \"octagon</w>\": 49167,\n  \"octane</w>\": 43040,\n  \"octavia</w>\": 47416,\n  \"octo\": 31032,\n  \"october</w>\": 3481,\n  \"octopus</w>\": 22327,\n  \"ocu\": 22709,\n  \"oculus</w>\": 30082,\n  \"od\": 4886,\n  \"od</w>\": 9719,\n  \"oda</w>\": 24777,\n  \"oday</w>\": 41954,\n  \"odd\": 15525,\n  \"odd</w>\": 11387,\n  \"oddly</w>\": 34213,\n  \"odds</w>\": 11555,\n  \"ode\": 19125,\n  \"ode</w>\": 19639,\n  \"odell</w>\": 41556,\n  \"odessa</w>\": 43574,\n  \"odi\": 12223,\n  \"odi</w>\": 18853,\n  \"odin</w>\": 35175,\n  \"odisha</w>\": 15737,\n  \"odo\": 49188,\n  \"odo</w>\": 40993,\n  \"odor</w>\": 39509,\n  \"odu\": 35095,\n  \"odu</w>\": 39904,\n  \"odyssey</w>\": 19991,\n  \"oe\": 24251,\n  \"oe</w>\": 11667,\n  \"oec\": 24288,\n  \"oecd</w>\": 30816,\n  \"oem</w>\": 29650,\n  \"oes</w>\": 3643,\n  \"of\": 684,\n  \"of</w>\": 539,\n  \"ofa</w>\": 29774,\n  \"ofc</w>\": 19877,\n  \"ofe\": 30000,\n  \"ofer\": 47322,\n  \"off\": 892,\n  \"off</w>\": 1007,\n  \"offe\": 8261,\n  \"offee</w>\": 34059,\n  \"offen\": 7231,\n  \"offence</w>\": 34594,\n  \"offences</w>\": 33972,\n  \"offended</w>\": 30765,\n  \"offender</w>\": 48294,\n  \"offenders</w>\": 35878,\n  \"offense</w>\": 15253,\n  \"offensive</w>\": 11037,\n  \"offer\": 20607,\n  \"offer</w>\": 3271,\n  \"offered</w>\": 9395,\n  \"offering</w>\": 6896,\n  \"offerings</w>\": 24535,\n  \"offers</w>\": 4679,\n  \"offic\": 3276,\n  \"office\": 18033,\n  \"office</w>\": 2171,\n  \"officeof\": 38750,\n  \"officeofrg</w>\": 47100,\n  \"officer</w>\": 4683,\n  \"officers</w>\": 6335,\n  \"offices</w>\": 10933,\n  \"offici\": 1401,\n  \"official\": 5768,\n  \"official</w>\": 1868,\n  \"officially</w>\": 4226,\n  \"officials</w>\": 7658,\n  \"officiel</w>\": 26548,\n  \"offl</w>\": 16851,\n  \"offline</w>\": 22724,\n  \"offro\": 32198,\n  \"offroad</w>\": 37173,\n  \"offs</w>\": 23987,\n  \"offseason</w>\": 25485,\n  \"offset</w>\": 28843,\n  \"offshore</w>\": 15496,\n  \"offside</w>\": 49347,\n  \"offspring</w>\": 38635,\n  \"offthe\": 38189,\n  \"ofi\": 36692,\n  \"ofi</w>\": 49090,\n  \"oficial</w>\": 18061,\n  \"oft</w>\": 16693,\n  \"oftball</w>\": 39768,\n  \"often</w>\": 4864,\n  \"ofthe\": 7592,\n  \"oftheday</w>\": 6988,\n  \"oftheweek</w>\": 20654,\n  \"oftheyear</w>\": 33975,\n  \"og\": 11542,\n  \"og</w>\": 8555,\n  \"oga</w>\": 47312,\n  \"ogden</w>\": 42011,\n  \"ogil\": 39013,\n  \"ography</w>\": 22399,\n  \"ogue</w>\": 24761,\n  \"ogun\": 48970,\n  \"oh\": 5648,\n  \"oh</w>\": 1779,\n  \"ohana</w>\": 48330,\n  \"ohh</w>\": 23076,\n  \"ohhh</w>\": 27697,\n  \"ohhhh</w>\": 40201,\n  \"ohi\": 5207,\n  \"ohio\": 18951,\n  \"ohio</w>\": 6155,\n  \"ohiostate</w>\": 41324,\n  \"ohl\": 45547,\n  \"ohl</w>\": 41095,\n  \"ohmy\": 29758,\n  \"ohn</w>\": 48043,\n  \"ohs</w>\": 39542,\n  \"ohwx</w>\": 47993,\n  \"oi\": 27357,\n  \"oi</w>\": 13934,\n  \"oic</w>\": 45554,\n  \"oid</w>\": 14758,\n  \"oids</w>\": 21847,\n  \"oil\": 11973,\n  \"oil</w>\": 2870,\n  \"oiland\": 32316,\n  \"oilandgas</w>\": 34130,\n  \"oilers</w>\": 21627,\n  \"oilpainting</w>\": 34279,\n  \"oils</w>\": 17886,\n  \"oily</w>\": 47550,\n  \"oir\": 48079,\n  \"oir</w>\": 37113,\n  \"ois</w>\": 23262,\n  \"oit\": 18453,\n  \"oitnb</w>\": 34865,\n  \"oj\": 30986,\n  \"oj</w>\": 34553,\n  \"ok\": 1944,\n  \"ok</w>\": 2481,\n  \"oka\": 42258,\n  \"oka</w>\": 19092,\n  \"okan\": 41263,\n  \"okanagan</w>\": 43233,\n  \"okay</w>\": 4917,\n  \"okc\": 42418,\n  \"okc</w>\": 18357,\n  \"oke\": 26636,\n  \"oke</w>\": 23598,\n  \"oki</w>\": 20390,\n  \"okin\": 30687,\n  \"okinawa</w>\": 35877,\n  \"okla\": 9431,\n  \"oklahoma</w>\": 10170,\n  \"oko\": 26892,\n  \"oko</w>\": 26095,\n  \"okstate</w>\": 36356,\n  \"oktoberfest</w>\": 32026,\n  \"oku\": 45010,\n  \"oku</w>\": 43829,\n  \"okwx</w>\": 27336,\n  \"ol\": 562,\n  \"ol</w>\": 2985,\n  \"ola\": 20499,\n  \"ola</w>\": 3373,\n  \"olaf</w>\": 39709,\n  \"olan\": 48489,\n  \"olan</w>\": 24227,\n  \"oland</w>\": 26452,\n  \"olas</w>\": 40800,\n  \"old\": 4931,\n  \"old</w>\": 896,\n  \"olde</w>\": 37731,\n  \"older</w>\": 7700,\n  \"oldest</w>\": 9285,\n  \"oldham</w>\": 29929,\n  \"oldie</w>\": 35280,\n  \"oldies</w>\": 36278,\n  \"oldman</w>\": 48614,\n  \"olds</w>\": 8580,\n  \"oldschool\": 44384,\n  \"oldschool</w>\": 25133,\n  \"oldsmobile</w>\": 45396,\n  \"ole\": 9089,\n  \"ole</w>\": 1947,\n  \"oled</w>\": 46768,\n  \"oler\": 24069,\n  \"oles</w>\": 16962,\n  \"olf</w>\": 16346,\n  \"olga</w>\": 34779,\n  \"oli\": 3811,\n  \"oli</w>\": 8810,\n  \"olic</w>\": 31341,\n  \"oligar\": 46185,\n  \"olim\": 47769,\n  \"olin\": 37823,\n  \"olin</w>\": 18283,\n  \"olina</w>\": 34711,\n  \"oline</w>\": 17441,\n  \"oling</w>\": 38033,\n  \"olini</w>\": 36040,\n  \"olis</w>\": 49397,\n  \"olithic</w>\": 35574,\n  \"olive\": 22486,\n  \"olive</w>\": 9898,\n  \"oliver\": 22882,\n  \"oliver</w>\": 9261,\n  \"olives</w>\": 27149,\n  \"olivi\": 20773,\n  \"olivia</w>\": 11697,\n  \"olivier</w>\": 23891,\n  \"oll\": 32270,\n  \"oll</w>\": 15510,\n  \"olla</w>\": 31908,\n  \"ollie</w>\": 24434,\n  \"olls</w>\": 42697,\n  \"olly</w>\": 23998,\n  \"olo\": 14628,\n  \"olo</w>\": 7606,\n  \"ological</w>\": 12345,\n  \"ologist</w>\": 23442,\n  \"ologists</w>\": 30912,\n  \"ology</w>\": 4627,\n  \"olor</w>\": 29245,\n  \"olph</w>\": 25077,\n  \"ols</w>\": 2236,\n  \"olsen</w>\": 26307,\n  \"olson</w>\": 28046,\n  \"olt</w>\": 46252,\n  \"olu\": 16502,\n  \"olu</w>\": 46302,\n  \"olulu</w>\": 27645,\n  \"oly\": 20323,\n  \"oly</w>\": 24823,\n  \"olym\": 3594,\n  \"olympi\": 13597,\n  \"olympia</w>\": 23965,\n  \"olympiad</w>\": 47694,\n  \"olympian</w>\": 25420,\n  \"olympians</w>\": 44583,\n  \"olympic\": 26099,\n  \"olympic</w>\": 6388,\n  \"olympics</w>\": 7629,\n  \"olympus</w>\": 30960,\n  \"om\": 547,\n  \"om</w>\": 3932,\n  \"oma\": 44603,\n  \"oma</w>\": 5358,\n  \"omaha</w>\": 16509,\n  \"oman\": 22088,\n  \"oman</w>\": 10871,\n  \"omar\": 19488,\n  \"omar</w>\": 13367,\n  \"omars</w>\": 37099,\n  \"omas</w>\": 36023,\n  \"omat\": 40788,\n  \"omb</w>\": 34447,\n  \"ombe</w>\": 35967,\n  \"omd</w>\": 49346,\n  \"ome\": 3693,\n  \"ome</w>\": 5832,\n  \"omed</w>\": 16835,\n  \"omega</w>\": 13465,\n  \"omelette</w>\": 38789,\n  \"omen\": 9969,\n  \"omen</w>\": 25469,\n  \"oment</w>\": 43683,\n  \"omeo</w>\": 39844,\n  \"omer\": 24087,\n  \"omer</w>\": 17902,\n  \"omes</w>\": 25736,\n  \"ometer</w>\": 20060,\n  \"ometric</w>\": 38702,\n  \"omez</w>\": 12541,\n  \"omf</w>\": 47496,\n  \"omfg</w>\": 12523,\n  \"omg\": 35233,\n  \"omg</w>\": 3186,\n  \"omi\": 24097,\n  \"omi</w>\": 10341,\n  \"omic\": 40536,\n  \"omic</w>\": 12793,\n  \"omics</w>\": 15138,\n  \"omile</w>\": 46915,\n  \"omin\": 16457,\n  \"omination</w>\": 42571,\n  \"oming</w>\": 10796,\n  \"ominous</w>\": 40914,\n  \"omni\": 18793,\n  \"omni</w>\": 39489,\n  \"omnibus</w>\": 44760,\n  \"omnic\": 48383,\n  \"omo\": 14478,\n  \"omo</w>\": 11066,\n  \"omon\": 48758,\n  \"omor\": 29431,\n  \"oms</w>\": 3770,\n  \"omusic</w>\": 38965,\n  \"omy\": 40805,\n  \"omy</w>\": 6884,\n  \"on\": 521,\n  \"on</w>\": 525,\n  \"ona</w>\": 2687,\n  \"onair</w>\": 29511,\n  \"onal</w>\": 918,\n  \"onboard</w>\": 21689,\n  \"once\": 16331,\n  \"once</w>\": 2654,\n  \"onceupon\": 28122,\n  \"onceuponatime</w>\": 33505,\n  \"onco\": 46700,\n  \"oncology</w>\": 24593,\n  \"ond\": 27918,\n  \"ond</w>\": 2636,\n  \"onda</w>\": 32643,\n  \"onday</w>\": 29864,\n  \"onde</w>\": 44532,\n  \"ondo</w>\": 29529,\n  \"ondon\": 42043,\n  \"ondon</w>\": 11851,\n  \"one\": 1980,\n  \"one</w>\": 637,\n  \"onec\": 27746,\n  \"oned\": 28012,\n  \"oned</w>\": 4698,\n  \"onedirection</w>\": 16245,\n  \"onee</w>\": 44433,\n  \"oneill</w>\": 44808,\n  \"onelove</w>\": 47417,\n  \"onent</w>\": 12147,\n  \"onents</w>\": 11709,\n  \"oneof\": 48478,\n  \"onep\": 20440,\n  \"onepiece</w>\": 43153,\n  \"oneplus</w>\": 25981,\n  \"oner\": 30055,\n  \"oner</w>\": 6071,\n  \"oners</w>\": 12324,\n  \"ones\": 20757,\n  \"ones</w>\": 1575,\n  \"oneself</w>\": 46874,\n  \"onesie</w>\": 33237,\n  \"oness</w>\": 25379,\n  \"onet</w>\": 36058,\n  \"oneteam</w>\": 41094,\n  \"onetsy</w>\": 33392,\n  \"onew</w>\": 43848,\n  \"onews</w>\": 18696,\n  \"onex</w>\": 49116,\n  \"oney\": 44498,\n  \"oney</w>\": 9408,\n  \"onf</w>\": 41790,\n  \"onfox</w>\": 29874,\n  \"ong\": 2787,\n  \"ong</w>\": 846,\n  \"onga</w>\": 30259,\n  \"ongchang</w>\": 35071,\n  \"ongi</w>\": 21754,\n  \"ongo</w>\": 31226,\n  \"ongoing</w>\": 10393,\n  \"ongs</w>\": 12143,\n  \"oni\": 4385,\n  \"oni</w>\": 8048,\n  \"onia</w>\": 8001,\n  \"onial</w>\": 27599,\n  \"onian</w>\": 21090,\n  \"onic\": 15838,\n  \"onic</w>\": 3711,\n  \"onica</w>\": 14631,\n  \"onics</w>\": 9779,\n  \"onie</w>\": 35249,\n  \"onies</w>\": 22601,\n  \"onimo</w>\": 41271,\n  \"oning</w>\": 5197,\n  \"onion</w>\": 10985,\n  \"onions</w>\": 15255,\n  \"onist</w>\": 10099,\n  \"onists</w>\": 19659,\n  \"onix</w>\": 27370,\n  \"onized</w>\": 43657,\n  \"onlin\": 31103,\n  \"online\": 12940,\n  \"online</w>\": 2027,\n  \"onlinemarketing</w>\": 41820,\n  \"onlineshopping</w>\": 38587,\n  \"only\": 11646,\n  \"only</w>\": 1033,\n  \"onlyin\": 32947,\n  \"onna\": 25438,\n  \"onna</w>\": 35458,\n  \"onnaise</w>\": 48934,\n  \"onne</w>\": 23466,\n  \"onnell</w>\": 45613,\n  \"ono\": 28165,\n  \"ono</w>\": 14388,\n  \"onom\": 48014,\n  \"onomy</w>\": 36873,\n  \"onpoli</w>\": 20708,\n  \"ons\": 26076,\n  \"ons</w>\": 708,\n  \"onsale</w>\": 36324,\n  \"onset</w>\": 30527,\n  \"onsite</w>\": 37336,\n  \"onstage</w>\": 21821,\n  \"onstorm</w>\": 49333,\n  \"ont\": 34303,\n  \"ont</w>\": 11157,\n  \"ontari\": 6739,\n  \"ontario\": 42766,\n  \"ontario</w>\": 7436,\n  \"onte</w>\": 34723,\n  \"onthe\": 12241,\n  \"onther\": 46563,\n  \"ontheroad</w>\": 47516,\n  \"onthisday</w>\": 6862,\n  \"onto\": 11745,\n  \"onto</w>\": 3141,\n  \"ontology</w>\": 37364,\n  \"ontour</w>\": 32155,\n  \"onu\": 44142,\n  \"onward</w>\": 34827,\n  \"onwards</w>\": 20682,\n  \"ony\": 9490,\n  \"ony</w>\": 2926,\n  \"onym\": 11483,\n  \"onymous</w>\": 13038,\n  \"onyx</w>\": 31353,\n  \"oo\": 574,\n  \"oo</w>\": 2822,\n  \"ood\": 16429,\n  \"ood</w>\": 738,\n  \"oodle</w>\": 45289,\n  \"oods</w>\": 44660,\n  \"oof</w>\": 42270,\n  \"ooh</w>\": 16806,\n  \"ook\": 22326,\n  \"ook</w>\": 8394,\n  \"ooks</w>\": 31082,\n  \"ool\": 37702,\n  \"ool</w>\": 929,\n  \"oom\": 22786,\n  \"oom</w>\": 15002,\n  \"oomf</w>\": 40607,\n  \"oon\": 35651,\n  \"oon</w>\": 7100,\n  \"ooo</w>\": 9571,\n  \"oooh</w>\": 28927,\n  \"oooo\": 4002,\n  \"oooo</w>\": 13643,\n  \"ooooo</w>\": 12532,\n  \"oooooo\": 43590,\n  \"oooooo</w>\": 20372,\n  \"ooooooo</w>\": 30859,\n  \"oooooooo\": 15473,\n  \"oooooooo</w>\": 43408,\n  \"oooooooooooooooo\": 48645,\n  \"oop</w>\": 7326,\n  \"ooper</w>\": 39906,\n  \"oops</w>\": 9116,\n  \"oor</w>\": 35239,\n  \"oos</w>\": 9896,\n  \"oosa</w>\": 30834,\n  \"oose</w>\": 38941,\n  \"oot</w>\": 17667,\n  \"ootball</w>\": 28914,\n  \"ootd</w>\": 16547,\n  \"ooth</w>\": 12682,\n  \"oott</w>\": 34316,\n  \"ooza</w>\": 22809,\n  \"op\": 676,\n  \"op</w>\": 3691,\n  \"opa</w>\": 28949,\n  \"opal</w>\": 28982,\n  \"opar\": 18167,\n  \"opath\": 33079,\n  \"opathic</w>\": 37521,\n  \"opathy</w>\": 28466,\n  \"opau\": 27239,\n  \"opd</w>\": 38288,\n  \"ope\": 31694,\n  \"ope</w>\": 11440,\n  \"opec</w>\": 33138,\n  \"opel</w>\": 36952,\n  \"open\": 3647,\n  \"open</w>\": 1488,\n  \"openaccess</w>\": 26591,\n  \"opend\": 28069,\n  \"opendata</w>\": 35709,\n  \"openday</w>\": 46991,\n  \"opened</w>\": 5303,\n  \"opener</w>\": 8998,\n  \"openhouse</w>\": 36091,\n  \"opening\": 33728,\n  \"opening</w>\": 2516,\n  \"openingday</w>\": 36359,\n  \"openings</w>\": 27643,\n  \"openly</w>\": 23005,\n  \"opens</w>\": 4801,\n  \"opensource</w>\": 29930,\n  \"oper\": 2796,\n  \"oper</w>\": 37533,\n  \"opera</w>\": 8056,\n  \"operate</w>\": 19306,\n  \"operated</w>\": 23031,\n  \"operates</w>\": 38675,\n  \"operating</w>\": 12218,\n  \"operation\": 27173,\n  \"operation</w>\": 7639,\n  \"operational</w>\": 18237,\n  \"operations</w>\": 8106,\n  \"operative</w>\": 28380,\n  \"operator</w>\": 15972,\n  \"operators</w>\": 19267,\n  \"opers</w>\": 48728,\n  \"opes</w>\": 37258,\n  \"oph\": 6796,\n  \"opha\": 38634,\n  \"ophel\": 45017,\n  \"ophelia</w>\": 49118,\n  \"ophi\": 44547,\n  \"ophile</w>\": 35915,\n  \"opho\": 12900,\n  \"ophobia</w>\": 21111,\n  \"ophobic</w>\": 29934,\n  \"ophon\": 25120,\n  \"ophone</w>\": 26345,\n  \"ophthal\": 33135,\n  \"ophy\": 28539,\n  \"opi\": 40056,\n  \"opi</w>\": 48994,\n  \"opin\": 7636,\n  \"opini\": 14825,\n  \"opinion</w>\": 7843,\n  \"opinions</w>\": 16192,\n  \"opio\": 17371,\n  \"opioid</w>\": 22833,\n  \"opioids</w>\": 47578,\n  \"opla\": 36270,\n  \"ople</w>\": 25663,\n  \"opol\": 15173,\n  \"opoly</w>\": 23729,\n  \"opor\": 39650,\n  \"opoulos</w>\": 42020,\n  \"opp\": 2020,\n  \"opp</w>\": 21024,\n  \"oppa</w>\": 23637,\n  \"oppo\": 7399,\n  \"oppo</w>\": 41770,\n  \"opponent</w>\": 17002,\n  \"opponents</w>\": 19664,\n  \"oppor\": 2914,\n  \"opportun\": 2939,\n  \"opportunities</w>\": 5978,\n  \"opportunity</w>\": 4004,\n  \"oppos\": 10091,\n  \"oppose</w>\": 23617,\n  \"opposed</w>\": 22509,\n  \"opposes</w>\": 47471,\n  \"opposing</w>\": 24376,\n  \"opposite</w>\": 12872,\n  \"opposition</w>\": 11062,\n  \"oppre\": 17341,\n  \"oppressed</w>\": 41492,\n  \"oppression</w>\": 30650,\n  \"opra</w>\": 28291,\n  \"oprah</w>\": 22562,\n  \"opry</w>\": 35340,\n  \"ops</w>\": 3054,\n  \"opt\": 45103,\n  \"opt</w>\": 27188,\n  \"opted</w>\": 42035,\n  \"opti\": 6580,\n  \"optic\": 25190,\n  \"optic</w>\": 24755,\n  \"optical</w>\": 16822,\n  \"optics</w>\": 27165,\n  \"optim\": 22331,\n  \"optimal</w>\": 25235,\n  \"optimi\": 9737,\n  \"optimis\": 39459,\n  \"optimism</w>\": 25226,\n  \"optimist</w>\": 44581,\n  \"optimistic</w>\": 23104,\n  \"optimization</w>\": 25125,\n  \"optimize</w>\": 30456,\n  \"optimized</w>\": 43939,\n  \"optimizing</w>\": 49157,\n  \"optimum</w>\": 35974,\n  \"optimus</w>\": 43453,\n  \"option</w>\": 8464,\n  \"optional</w>\": 25411,\n  \"options</w>\": 7063,\n  \"optome\": 35533,\n  \"opul\": 39858,\n  \"opus</w>\": 33295,\n  \"opy</w>\": 21835,\n  \"or\": 523,\n  \"or</w>\": 541,\n  \"ora</w>\": 4301,\n  \"orac\": 24673,\n  \"oracle\": 37308,\n  \"oracle</w>\": 15966,\n  \"orah</w>\": 40820,\n  \"orail</w>\": 45120,\n  \"oral\": 32490,\n  \"oral</w>\": 6007,\n  \"orama</w>\": 33619,\n  \"oran\": 32209,\n  \"oran</w>\": 28395,\n  \"orang\": 22116,\n  \"orange\": 13957,\n  \"orange</w>\": 4287,\n  \"oranges</w>\": 32417,\n  \"orangu\": 36112,\n  \"orb\": 28894,\n  \"orb</w>\": 36958,\n  \"orbit</w>\": 19713,\n  \"orbital</w>\": 40312,\n  \"orc</w>\": 44305,\n  \"orca</w>\": 18631,\n  \"orcas</w>\": 47676,\n  \"orch\": 11893,\n  \"orchar\": 40226,\n  \"orchard</w>\": 19530,\n  \"orche\": 8004,\n  \"orchestr\": 42937,\n  \"orchestra</w>\": 9573,\n  \"orchestral</w>\": 40285,\n  \"orchi\": 23696,\n  \"orchid</w>\": 18678,\n  \"orchids</w>\": 28376,\n  \"ord\": 26903,\n  \"ord</w>\": 11502,\n  \"orda\": 33462,\n  \"ordained</w>\": 38302,\n  \"order\": 24613,\n  \"order</w>\": 2191,\n  \"ordered</w>\": 8335,\n  \"ordering</w>\": 19588,\n  \"orderly</w>\": 43457,\n  \"orders</w>\": 6187,\n  \"ordin\": 4378,\n  \"ordinance</w>\": 38583,\n  \"ordinary</w>\": 8012,\n  \"ore\": 3580,\n  \"ore</w>\": 1423,\n  \"orean</w>\": 36696,\n  \"ored</w>\": 5133,\n  \"oregon\": 21759,\n  \"oregon</w>\": 8035,\n  \"oren\": 21645,\n  \"oreo</w>\": 21873,\n  \"oreos</w>\": 41688,\n  \"ores</w>\": 17328,\n  \"org\": 3401,\n  \"org</w>\": 5593,\n  \"organ\": 3338,\n  \"organ</w>\": 13213,\n  \"organi\": 3636,\n  \"organic\": 24080,\n  \"organic</w>\": 5980,\n  \"organics</w>\": 44199,\n  \"organis\": 13204,\n  \"organisation</w>\": 15868,\n  \"organisations</w>\": 20651,\n  \"organise</w>\": 36073,\n  \"organised</w>\": 13191,\n  \"organiser</w>\": 49141,\n  \"organisers</w>\": 35778,\n  \"organising</w>\": 22787,\n  \"organisms</w>\": 37041,\n  \"organiz\": 11107,\n  \"organization</w>\": 8064,\n  \"organizational</w>\": 29510,\n  \"organizations</w>\": 13453,\n  \"organize</w>\": 19973,\n  \"organized</w>\": 10681,\n  \"organizer</w>\": 23905,\n  \"organizers</w>\": 27191,\n  \"organizing</w>\": 15779,\n  \"organs</w>\": 29872,\n  \"orgs</w>\": 29500,\n  \"ori\": 1540,\n  \"ori</w>\": 8693,\n  \"oria</w>\": 11474,\n  \"orial</w>\": 8648,\n  \"orian</w>\": 21193,\n  \"oric</w>\": 43810,\n  \"orice</w>\": 41341,\n  \"orie</w>\": 18815,\n  \"orient\": 13149,\n  \"orient</w>\": 30770,\n  \"oriental</w>\": 23056,\n  \"orientation</w>\": 16873,\n  \"oriente\": 40390,\n  \"oriented</w>\": 24596,\n  \"orienteering</w>\": 42985,\n  \"ories</w>\": 5934,\n  \"orig\": 2273,\n  \"orig</w>\": 38463,\n  \"origami</w>\": 31832,\n  \"origin\": 2555,\n  \"origin</w>\": 12372,\n  \"original\": 18496,\n  \"original</w>\": 3117,\n  \"originally</w>\": 12849,\n  \"originals</w>\": 16953,\n  \"originated</w>\": 41823,\n  \"origins</w>\": 16291,\n  \"orin</w>\": 39863,\n  \"oring</w>\": 3006,\n  \"orio</w>\": 24308,\n  \"orioles</w>\": 21430,\n  \"orion</w>\": 21765,\n  \"oris</w>\": 37064,\n  \"orities</w>\": 7903,\n  \"ority</w>\": 5556,\n  \"orium</w>\": 12015,\n  \"ork\": 22202,\n  \"ork</w>\": 37235,\n  \"orkney</w>\": 34254,\n  \"orl</w>\": 39465,\n  \"orlando\": 32247,\n  \"orlando</w>\": 7827,\n  \"orleans</w>\": 11127,\n  \"orm</w>\": 38464,\n  \"orn\": 25412,\n  \"orn</w>\": 8130,\n  \"ornam\": 36122,\n  \"ornament</w>\": 23409,\n  \"ornamental</w>\": 46270,\n  \"ornaments</w>\": 28968,\n  \"ornate</w>\": 46865,\n  \"orni\": 27713,\n  \"ornithology</w>\": 38275,\n  \"orns</w>\": 19340,\n  \"oro\": 9848,\n  \"oro</w>\": 14573,\n  \"orous</w>\": 19286,\n  \"orph\": 17318,\n  \"orphan\": 22718,\n  \"orphan</w>\": 28994,\n  \"orphanage</w>\": 45196,\n  \"orphaned</w>\": 46792,\n  \"orphans</w>\": 36588,\n  \"orphe\": 39186,\n  \"orr</w>\": 32977,\n  \"ors</w>\": 1127,\n  \"orship</w>\": 20846,\n  \"ort</w>\": 1019,\n  \"ortega</w>\": 39727,\n  \"orth\": 22584,\n  \"orth</w>\": 24461,\n  \"ortho\": 11366,\n  \"orthodon\": 37730,\n  \"orthodox</w>\": 19008,\n  \"orthop\": 42123,\n  \"orthopedic</w>\": 49341,\n  \"ortiz</w>\": 23544,\n  \"orton</w>\": 37238,\n  \"oru\": 44629,\n  \"oru</w>\": 31281,\n  \"orum</w>\": 42724,\n  \"orwell</w>\": 41218,\n  \"ory\": 16983,\n  \"ory</w>\": 1985,\n  \"os\": 2211,\n  \"os</w>\": 1299,\n  \"osa\": 16340,\n  \"osa</w>\": 17237,\n  \"osaka</w>\": 21347,\n  \"osborne</w>\": 22402,\n  \"osbourne</w>\": 43376,\n  \"osc\": 5092,\n  \"oscar\": 21157,\n  \"oscar</w>\": 8191,\n  \"oscars</w>\": 11098,\n  \"osce</w>\": 37303,\n  \"oscill\": 38272,\n  \"ose\": 46942,\n  \"ose</w>\": 22541,\n  \"osh\": 30717,\n  \"osh</w>\": 35011,\n  \"osha</w>\": 33907,\n  \"oshi</w>\": 34770,\n  \"osi\": 25247,\n  \"osi</w>\": 17636,\n  \"osis</w>\": 13903,\n  \"osity</w>\": 12730,\n  \"oslo</w>\": 20547,\n  \"osm\": 31626,\n  \"osman</w>\": 46539,\n  \"oso\": 42793,\n  \"oso</w>\": 21285,\n  \"osp\": 24387,\n  \"ospre\": 49001,\n  \"osprey</w>\": 37893,\n  \"oss\": 29362,\n  \"oss</w>\": 34640,\n  \"ost\": 23701,\n  \"ost</w>\": 18749,\n  \"oste\": 20632,\n  \"osteo\": 43163,\n  \"oster\": 31781,\n  \"ostr\": 33673,\n  \"ostrich</w>\": 47640,\n  \"osu\": 29480,\n  \"osu</w>\": 19818,\n  \"oswald</w>\": 38471,\n  \"ot\": 1863,\n  \"ot</w>\": 2062,\n  \"ota\": 17509,\n  \"ota</w>\": 8741,\n  \"otago</w>\": 45919,\n  \"otaku</w>\": 40743,\n  \"otas</w>\": 47616,\n  \"otc</w>\": 37934,\n  \"otd</w>\": 5683,\n  \"ote\": 28511,\n  \"ote</w>\": 19744,\n  \"otes</w>\": 27280,\n  \"oth\": 33262,\n  \"oth</w>\": 33519,\n  \"other\": 9758,\n  \"other</w>\": 1010,\n  \"others</w>\": 3326,\n  \"otherwise</w>\": 12376,\n  \"oti\": 19567,\n  \"oti</w>\": 45564,\n  \"otic</w>\": 9671,\n  \"otis</w>\": 28246,\n  \"otive</w>\": 10877,\n  \"oto\": 23946,\n  \"oto</w>\": 23399,\n  \"otp</w>\": 29822,\n  \"otr</w>\": 38685,\n  \"ots</w>\": 5769,\n  \"ott\": 10167,\n  \"ott</w>\": 7936,\n  \"otta\": 7623,\n  \"otta</w>\": 20941,\n  \"ottawa\": 49027,\n  \"ottawa</w>\": 9019,\n  \"otte</w>\": 35214,\n  \"otter\": 34710,\n  \"otter</w>\": 22456,\n  \"otters</w>\": 38883,\n  \"otti</w>\": 36721,\n  \"ottnews</w>\": 33995,\n  \"otto</w>\": 17730,\n  \"ottoman</w>\": 27503,\n  \"otw</w>\": 35259,\n  \"otwol\": 46868,\n  \"ou\": 520,\n  \"ou</w>\": 6544,\n  \"ouat</w>\": 32954,\n  \"ouch</w>\": 13493,\n  \"oud</w>\": 1359,\n  \"oue</w>\": 48838,\n  \"ouf</w>\": 34618,\n  \"ough\": 4204,\n  \"ough</w>\": 991,\n  \"ought</w>\": 2253,\n  \"oughton</w>\": 36860,\n  \"oui</w>\": 39421,\n  \"ouk</w>\": 21796,\n  \"oul\": 20253,\n  \"oul</w>\": 8081,\n  \"ould</w>\": 859,\n  \"oulos</w>\": 32808,\n  \"oun\": 636,\n  \"oun</w>\": 20960,\n  \"ounce</w>\": 15027,\n  \"ounces</w>\": 30299,\n  \"ound\": 2013,\n  \"ound</w>\": 853,\n  \"oundation</w>\": 40132,\n  \"ounded</w>\": 9634,\n  \"ounding</w>\": 11944,\n  \"ounds</w>\": 2753,\n  \"oung\": 35875,\n  \"oung</w>\": 25341,\n  \"ounge</w>\": 29427,\n  \"ount\": 43801,\n  \"ount</w>\": 4172,\n  \"ounts</w>\": 10963,\n  \"oup</w>\": 32815,\n  \"our\": 727,\n  \"our</w>\": 581,\n  \"oura\": 29806,\n  \"oura</w>\": 36352,\n  \"ourable</w>\": 24126,\n  \"ourage</w>\": 34525,\n  \"oural</w>\": 45840,\n  \"oured</w>\": 6956,\n  \"ouri\": 12696,\n  \"ouring</w>\": 12000,\n  \"ourism</w>\": 25496,\n  \"ourke</w>\": 26480,\n  \"ourlives</w>\": 37541,\n  \"ouro\": 41224,\n  \"ours</w>\": 1491,\n  \"ourse</w>\": 15415,\n  \"ourselves</w>\": 10124,\n  \"ourt</w>\": 22960,\n  \"oury</w>\": 29484,\n  \"ous\": 1987,\n  \"ous</w>\": 879,\n  \"ouse\": 32048,\n  \"ouse</w>\": 7603,\n  \"ouses</w>\": 33666,\n  \"ously</w>\": 2501,\n  \"ousness</w>\": 10689,\n  \"ousy</w>\": 28302,\n  \"out\": 1130,\n  \"out</w>\": 620,\n  \"outa</w>\": 35187,\n  \"outage</w>\": 27320,\n  \"outages</w>\": 40353,\n  \"outback</w>\": 28532,\n  \"outbound</w>\": 41256,\n  \"outbreak</w>\": 20103,\n  \"outcome</w>\": 16552,\n  \"outcomes</w>\": 14016,\n  \"outdated</w>\": 38313,\n  \"outdoor\": 19184,\n  \"outdoor</w>\": 6368,\n  \"outdoors</w>\": 10469,\n  \"oute</w>\": 44180,\n  \"outed</w>\": 34435,\n  \"outer\": 30499,\n  \"outer</w>\": 14188,\n  \"outes</w>\": 39600,\n  \"outfield</w>\": 41826,\n  \"outfit</w>\": 6525,\n  \"outfits</w>\": 16366,\n  \"outfitters</w>\": 37725,\n  \"outfy</w>\": 34920,\n  \"outgoing</w>\": 27302,\n  \"outh\": 16933,\n  \"outh</w>\": 8111,\n  \"outine</w>\": 35452,\n  \"outing</w>\": 11251,\n  \"outlander\": 45820,\n  \"outlander</w>\": 17095,\n  \"outlaw\": 37498,\n  \"outlaw</w>\": 27340,\n  \"outlaws</w>\": 30935,\n  \"outlet</w>\": 16855,\n  \"outlets</w>\": 20822,\n  \"outline</w>\": 26894,\n  \"outlines</w>\": 29159,\n  \"outlining</w>\": 45960,\n  \"outlook</w>\": 12983,\n  \"outof\": 43958,\n  \"outpatient</w>\": 46603,\n  \"outpost</w>\": 44622,\n  \"output</w>\": 17255,\n  \"outra\": 14262,\n  \"outrage</w>\": 23577,\n  \"outraged</w>\": 43402,\n  \"outrageous</w>\": 29342,\n  \"outre\": 14373,\n  \"outreach</w>\": 15297,\n  \"outright</w>\": 38200,\n  \"outs</w>\": 5790,\n  \"outsi\": 22515,\n  \"outside\": 47693,\n  \"outside</w>\": 2782,\n  \"outsider</w>\": 41196,\n  \"outsiders</w>\": 41742,\n  \"outskirts</w>\": 42088,\n  \"outsourcing</w>\": 34543,\n  \"outstanding</w>\": 6387,\n  \"outta</w>\": 15807,\n  \"outtuesday</w>\": 48692,\n  \"outw\": 34650,\n  \"oux\": 40960,\n  \"oux</w>\": 14228,\n  \"ov\": 6420,\n  \"ov</w>\": 8479,\n  \"ova</w>\": 12762,\n  \"oval</w>\": 15039,\n  \"ovarian</w>\": 42913,\n  \"ovation</w>\": 24333,\n  \"ove\": 8649,\n  \"ove</w>\": 15456,\n  \"oven\": 44620,\n  \"oven</w>\": 12579,\n  \"over\": 1658,\n  \"over</w>\": 962,\n  \"overall</w>\": 6914,\n  \"overboard</w>\": 42982,\n  \"overcame</w>\": 47235,\n  \"overcast</w>\": 36942,\n  \"overcome</w>\": 14365,\n  \"overcoming</w>\": 29348,\n  \"overdose</w>\": 27017,\n  \"overdrive</w>\": 40088,\n  \"overdue</w>\": 30240,\n  \"overflow</w>\": 32885,\n  \"overflowing</w>\": 45370,\n  \"overhaul</w>\": 31531,\n  \"overhead</w>\": 20321,\n  \"overland</w>\": 38808,\n  \"overlay</w>\": 44827,\n  \"overload</w>\": 24327,\n  \"overlook</w>\": 35767,\n  \"overlooked</w>\": 27632,\n  \"overlooking</w>\": 17319,\n  \"overly</w>\": 28820,\n  \"overnight</w>\": 9913,\n  \"overpass</w>\": 44310,\n  \"overrated</w>\": 38214,\n  \"overs\": 45774,\n  \"overs</w>\": 17329,\n  \"overseas</w>\": 15100,\n  \"oversight</w>\": 32494,\n  \"oversized</w>\": 31557,\n  \"overtime</w>\": 19347,\n  \"overturned</w>\": 31048,\n  \"overview</w>\": 14789,\n  \"overwatch</w>\": 18124,\n  \"overweight</w>\": 43465,\n  \"overwhel\": 12204,\n  \"overwhelmed</w>\": 23459,\n  \"overwhelming</w>\": 20306,\n  \"overwhelmingly</w>\": 43549,\n  \"ovi\": 32508,\n  \"ovic</w>\": 22417,\n  \"ovich</w>\": 27623,\n  \"ovie\": 47677,\n  \"ovo\": 41920,\n  \"ovo</w>\": 18065,\n  \"ovski</w>\": 26167,\n  \"ow\": 2032,\n  \"ow</w>\": 2250,\n  \"owa</w>\": 32770,\n  \"owe</w>\": 19073,\n  \"owed</w>\": 37641,\n  \"owen\": 24838,\n  \"owen</w>\": 12056,\n  \"owens</w>\": 20664,\n  \"owes</w>\": 35069,\n  \"owing</w>\": 48582,\n  \"owl\": 34332,\n  \"owl</w>\": 9899,\n  \"owls</w>\": 18247,\n  \"own\": 3845,\n  \"own</w>\": 1758,\n  \"owned</w>\": 8536,\n  \"owner</w>\": 5019,\n  \"owners</w>\": 7712,\n  \"ownership</w>\": 16583,\n  \"owning</w>\": 24661,\n  \"owns</w>\": 17533,\n  \"owo</w>\": 46142,\n  \"ows</w>\": 27423,\n  \"owski</w>\": 22573,\n  \"ox\": 3282,\n  \"ox</w>\": 12071,\n  \"oxfam</w>\": 45466,\n  \"oxford\": 28588,\n  \"oxford</w>\": 8824,\n  \"oxfordshire</w>\": 37855,\n  \"oxi\": 33731,\n  \"oxi</w>\": 48147,\n  \"oxid\": 17701,\n  \"oxide</w>\": 28235,\n  \"oxo</w>\": 37088,\n  \"oxy\": 12432,\n  \"oxygen</w>\": 16214,\n  \"oy\": 6638,\n  \"oy</w>\": 12437,\n  \"oya</w>\": 38894,\n  \"oye\": 48677,\n  \"oyster\": 40545,\n  \"oyster</w>\": 17253,\n  \"oysters</w>\": 22672,\n  \"oz\": 10584,\n  \"oz</w>\": 6044,\n  \"ozar\": 31848,\n  \"ozil</w>\": 41365,\n  \"ozone</w>\": 37052,\n  \"ozzy</w>\": 39549,\n  \"p\": 79,\n  \"p</w>\": 335,\n  \"pa\": 765,\n  \"pa</w>\": 2217,\n  \"paa</w>\": 32812,\n  \"pab\": 9354,\n  \"pablo\": 42172,\n  \"pablo</w>\": 14473,\n  \"pac\": 2332,\n  \"pac</w>\": 7608,\n  \"pace\": 40600,\n  \"pace</w>\": 9450,\n  \"paced</w>\": 32611,\n  \"pacers</w>\": 23976,\n  \"paces</w>\": 43001,\n  \"paci\": 5699,\n  \"pacific\": 19723,\n  \"pacific</w>\": 6654,\n  \"pacing</w>\": 45202,\n  \"pack\": 2711,\n  \"pack</w>\": 3420,\n  \"package</w>\": 7053,\n  \"packaged</w>\": 29656,\n  \"packages</w>\": 14305,\n  \"packaging</w>\": 11658,\n  \"packard</w>\": 46421,\n  \"packed</w>\": 5883,\n  \"packer</w>\": 28209,\n  \"packers</w>\": 14294,\n  \"packet</w>\": 25022,\n  \"packets</w>\": 40448,\n  \"packing</w>\": 9829,\n  \"packs</w>\": 11086,\n  \"paco</w>\": 41364,\n  \"pacqui\": 28456,\n  \"pacquiao</w>\": 30485,\n  \"pact</w>\": 27182,\n  \"pad\": 3798,\n  \"pad</w>\": 7601,\n  \"padded</w>\": 42253,\n  \"paddington</w>\": 33162,\n  \"paddle\": 38276,\n  \"paddle</w>\": 20811,\n  \"paddling</w>\": 40645,\n  \"paddock</w>\": 29590,\n  \"paddy\": 33103,\n  \"paddy</w>\": 19855,\n  \"padi</w>\": 47037,\n  \"padilla</w>\": 22380,\n  \"padma\": 44595,\n  \"padma</w>\": 46457,\n  \"padre</w>\": 38343,\n  \"padres</w>\": 22829,\n  \"pads</w>\": 17353,\n  \"paedi\": 41488,\n  \"paella</w>\": 46924,\n  \"paf\": 47185,\n  \"pafc</w>\": 49259,\n  \"pag\": 4151,\n  \"pag</w>\": 30525,\n  \"pagan</w>\": 27854,\n  \"page\": 14996,\n  \"page</w>\": 2504,\n  \"pageant</w>\": 22139,\n  \"pages</w>\": 8082,\n  \"pagoda</w>\": 44309,\n  \"pah\": 41054,\n  \"pah</w>\": 26884,\n  \"pai\": 20624,\n  \"pai</w>\": 21198,\n  \"paid</w>\": 5057,\n  \"paige\": 33659,\n  \"paige</w>\": 16022,\n  \"paign</w>\": 31796,\n  \"pain\": 2141,\n  \"pain</w>\": 4495,\n  \"paine</w>\": 38069,\n  \"painful</w>\": 16361,\n  \"pains</w>\": 25639,\n  \"paint\": 7948,\n  \"paint</w>\": 5185,\n  \"paintball</w>\": 39730,\n  \"painted</w>\": 6433,\n  \"painter</w>\": 10888,\n  \"painters</w>\": 35703,\n  \"painting\": 49164,\n  \"painting</w>\": 3086,\n  \"paintings</w>\": 9956,\n  \"paints</w>\": 21672,\n  \"pair\": 19848,\n  \"pair</w>\": 4038,\n  \"paired</w>\": 12433,\n  \"pairing</w>\": 16313,\n  \"pairings</w>\": 41152,\n  \"pairs</w>\": 9950,\n  \"pais\": 16878,\n  \"paisley</w>\": 22954,\n  \"pajam\": 24110,\n  \"pajama</w>\": 40244,\n  \"pajamas</w>\": 37231,\n  \"pak\": 13186,\n  \"pak</w>\": 9094,\n  \"paki\": 3438,\n  \"pakistan\": 10713,\n  \"pakistan</w>\": 3994,\n  \"pakistani</w>\": 14050,\n  \"pakistanis</w>\": 45707,\n  \"pakv\": 38196,\n  \"pal\": 1850,\n  \"pal</w>\": 3611,\n  \"pala</w>\": 17895,\n  \"palace</w>\": 6381,\n  \"palaces</w>\": 45625,\n  \"palad\": 28371,\n  \"palae\": 43379,\n  \"palais</w>\": 35673,\n  \"palate</w>\": 34666,\n  \"palawan</w>\": 48202,\n  \"palazzo</w>\": 36006,\n  \"pale\": 4768,\n  \"pale</w>\": 12518,\n  \"paleo\": 36741,\n  \"paleo</w>\": 22198,\n  \"paler\": 38028,\n  \"palermo</w>\": 40635,\n  \"palestin\": 9449,\n  \"palestine</w>\": 11682,\n  \"palestinian</w>\": 11764,\n  \"palestinians</w>\": 21874,\n  \"palette</w>\": 13901,\n  \"pali\": 48063,\n  \"palin</w>\": 40153,\n  \"palis\": 44256,\n  \"pality</w>\": 27296,\n  \"pall\": 35817,\n  \"palla\": 21208,\n  \"palladium</w>\": 37888,\n  \"pallet</w>\": 39057,\n  \"palli\": 28954,\n  \"palliative</w>\": 46014,\n  \"pally</w>\": 46073,\n  \"palm\": 19651,\n  \"palm</w>\": 8612,\n  \"palma</w>\": 29888,\n  \"palmer\": 40112,\n  \"palmer</w>\": 13633,\n  \"palms</w>\": 27059,\n  \"palo</w>\": 31562,\n  \"palom\": 47698,\n  \"palooza</w>\": 25861,\n  \"pals</w>\": 11043,\n  \"palsy</w>\": 46651,\n  \"pam\": 8228,\n  \"pam</w>\": 18513,\n  \"pamela</w>\": 26991,\n  \"pamp\": 37653,\n  \"pamper</w>\": 44345,\n  \"pamph\": 41332,\n  \"pan\": 1072,\n  \"pan</w>\": 7437,\n  \"panam\": 24606,\n  \"panama</w>\": 15522,\n  \"panas\": 26207,\n  \"panasonic</w>\": 29750,\n  \"pancake</w>\": 18723,\n  \"pancakes</w>\": 15308,\n  \"panch\": 27251,\n  \"pancra\": 42472,\n  \"pancre\": 27708,\n  \"pancreatic</w>\": 49337,\n  \"pancy</w>\": 41625,\n  \"pand\": 5631,\n  \"panda</w>\": 12952,\n  \"pandas</w>\": 35119,\n  \"pande\": 38419,\n  \"pandey</w>\": 34895,\n  \"pandit</w>\": 41191,\n  \"pandor\": 30250,\n  \"pandora</w>\": 17727,\n  \"pandoramusic</w>\": 42344,\n  \"pane</w>\": 27470,\n  \"panel</w>\": 3724,\n  \"paneli\": 19410,\n  \"panelist</w>\": 39719,\n  \"panelists</w>\": 24619,\n  \"panels</w>\": 12735,\n  \"panera</w>\": 48471,\n  \"pang\": 16756,\n  \"pang</w>\": 23672,\n  \"panhandle</w>\": 40919,\n  \"pani</w>\": 36092,\n  \"panic\": 46671,\n  \"panic</w>\": 14124,\n  \"panini</w>\": 30410,\n  \"pann\": 42302,\n  \"panna</w>\": 49065,\n  \"pano</w>\": 36165,\n  \"panor\": 12962,\n  \"panorama</w>\": 19763,\n  \"panoramic</w>\": 22563,\n  \"pans</w>\": 35204,\n  \"pant</w>\": 22550,\n  \"panther\": 22825,\n  \"panther</w>\": 13262,\n  \"panthers</w>\": 10494,\n  \"panties</w>\": 32515,\n  \"panto</w>\": 28776,\n  \"pantry</w>\": 25608,\n  \"pants</w>\": 5003,\n  \"panty\": 44217,\n  \"pany</w>\": 45567,\n  \"panzer</w>\": 41159,\n  \"pao</w>\": 33790,\n  \"paola</w>\": 44689,\n  \"paolo\": 48488,\n  \"paolo</w>\": 21133,\n  \"pap\": 1884,\n  \"pap</w>\": 30756,\n  \"papa</w>\": 12211,\n  \"papar\": 32782,\n  \"paparazzi</w>\": 37842,\n  \"papaya</w>\": 44098,\n  \"paper\": 8680,\n  \"paper</w>\": 2802,\n  \"paperback</w>\": 17928,\n  \"papers</w>\": 8204,\n  \"paperwork</w>\": 35785,\n  \"papi</w>\": 35177,\n  \"papp\": 26361,\n  \"paprika</w>\": 44793,\n  \"papua</w>\": 32629,\n  \"par\": 699,\n  \"par</w>\": 9163,\n  \"para\": 18355,\n  \"para</w>\": 8976,\n  \"parach\": 23147,\n  \"parachute</w>\": 30122,\n  \"parad\": 37143,\n  \"parade</w>\": 5809,\n  \"parades</w>\": 46479,\n  \"paradi\": 6658,\n  \"paradig\": 27786,\n  \"paradigm</w>\": 33485,\n  \"paradise\": 45869,\n  \"paradise</w>\": 7247,\n  \"paradox</w>\": 33109,\n  \"parag\": 11866,\n  \"paragon</w>\": 48099,\n  \"paragra\": 24903,\n  \"paragraph</w>\": 28499,\n  \"paragu\": 38021,\n  \"paraguay</w>\": 43579,\n  \"paral\": 15143,\n  \"paralle\": 13184,\n  \"parallel</w>\": 18201,\n  \"paralleled</w>\": 42520,\n  \"parallels</w>\": 46101,\n  \"paraly\": 30255,\n  \"paralym\": 18727,\n  \"paralympic</w>\": 30806,\n  \"paralympics</w>\": 37162,\n  \"paralysis</w>\": 45702,\n  \"param\": 12250,\n  \"parame\": 27106,\n  \"paramedic</w>\": 34630,\n  \"paramedics</w>\": 35991,\n  \"parameters</w>\": 44890,\n  \"paramore</w>\": 34401,\n  \"paramount</w>\": 26642,\n  \"parano\": 30283,\n  \"paranoid</w>\": 43029,\n  \"paranor\": 16940,\n  \"paranormal</w>\": 19047,\n  \"parap\": 41091,\n  \"paras\": 15198,\n  \"parasite</w>\": 42460,\n  \"parasites</w>\": 46175,\n  \"parc</w>\": 30914,\n  \"parcel</w>\": 30367,\n  \"parcels</w>\": 45589,\n  \"pard</w>\": 18773,\n  \"pardon\": 47606,\n  \"pardon</w>\": 26565,\n  \"pare\": 18202,\n  \"pared</w>\": 5498,\n  \"paren\": 3106,\n  \"parent\": 47848,\n  \"parent</w>\": 10183,\n  \"parental</w>\": 28339,\n  \"parenthood</w>\": 23887,\n  \"parenting</w>\": 14529,\n  \"parents</w>\": 3731,\n  \"pares</w>\": 12420,\n  \"parfait</w>\": 46140,\n  \"pari\": 17961,\n  \"pari</w>\": 27979,\n  \"paris\": 13982,\n  \"paris</w>\": 3445,\n  \"parisagreement</w>\": 47405,\n  \"parish\": 47328,\n  \"parish</w>\": 13020,\n  \"parisi\": 45081,\n  \"parisian</w>\": 38512,\n  \"parity</w>\": 42734,\n  \"park\": 4985,\n  \"park</w>\": 1452,\n  \"parked</w>\": 16487,\n  \"parker\": 31119,\n  \"parker</w>\": 8365,\n  \"parkin\": 34868,\n  \"parking</w>\": 5984,\n  \"parkinson</w>\": 28129,\n  \"parkland</w>\": 31287,\n  \"parkrun</w>\": 25747,\n  \"parks</w>\": 6873,\n  \"parkway</w>\": 19882,\n  \"parl\": 30373,\n  \"parl</w>\": 29897,\n  \"parliam\": 5941,\n  \"parliament\": 41599,\n  \"parliament</w>\": 7151,\n  \"parliamentary</w>\": 17912,\n  \"parlor</w>\": 38253,\n  \"parlour</w>\": 37829,\n  \"parma</w>\": 36077,\n  \"parme\": 26295,\n  \"parmesan</w>\": 27274,\n  \"paro\": 17429,\n  \"parody</w>\": 24318,\n  \"parole</w>\": 32158,\n  \"parr</w>\": 44113,\n  \"parrish</w>\": 43043,\n  \"parrot</w>\": 23565,\n  \"parry</w>\": 40604,\n  \"parsley</w>\": 30077,\n  \"parsons</w>\": 22505,\n  \"part\": 1872,\n  \"part</w>\": 1551,\n  \"parte</w>\": 48508,\n  \"parth</w>\": 34790,\n  \"parti\": 10509,\n  \"partial</w>\": 18957,\n  \"partially</w>\": 21269,\n  \"partic\": 2871,\n  \"partici\": 9540,\n  \"particip\": 4400,\n  \"participant</w>\": 27674,\n  \"participants</w>\": 10237,\n  \"participate</w>\": 9433,\n  \"participated</w>\": 14252,\n  \"participates</w>\": 46414,\n  \"participating</w>\": 11535,\n  \"participation</w>\": 13529,\n  \"particle</w>\": 27716,\n  \"particles</w>\": 27012,\n  \"particul\": 11408,\n  \"particular</w>\": 14098,\n  \"particularly</w>\": 12170,\n  \"parties</w>\": 9032,\n  \"parting</w>\": 32844,\n  \"partisan</w>\": 20772,\n  \"partist</w>\": 44713,\n  \"partition</w>\": 42219,\n  \"partly</w>\": 21459,\n  \"partner\": 5210,\n  \"partner</w>\": 4568,\n  \"partnered</w>\": 21402,\n  \"partnering</w>\": 21182,\n  \"partners</w>\": 5568,\n  \"partnership</w>\": 6123,\n  \"partnerships</w>\": 17418,\n  \"parton</w>\": 43245,\n  \"partridge</w>\": 34872,\n  \"parts</w>\": 5149,\n  \"party\": 12877,\n  \"party</w>\": 1580,\n  \"partying</w>\": 25702,\n  \"pas\": 1341,\n  \"pas</w>\": 9525,\n  \"pasadena</w>\": 25892,\n  \"pascal</w>\": 28626,\n  \"pasco</w>\": 49220,\n  \"pascu\": 42692,\n  \"pash\": 23936,\n  \"pasha</w>\": 46986,\n  \"paso</w>\": 18542,\n  \"pasqu\": 44941,\n  \"pass\": 5016,\n  \"pass</w>\": 3511,\n  \"passage</w>\": 16477,\n  \"passages</w>\": 48937,\n  \"passed</w>\": 4957,\n  \"passenger</w>\": 12311,\n  \"passengers</w>\": 12781,\n  \"passer</w>\": 48544,\n  \"passes</w>\": 7633,\n  \"passi\": 32471,\n  \"passing</w>\": 6589,\n  \"passion\": 8822,\n  \"passion</w>\": 5332,\n  \"passionate</w>\": 10947,\n  \"passionately</w>\": 44028,\n  \"passions</w>\": 38441,\n  \"passive</w>\": 23171,\n  \"passover</w>\": 38426,\n  \"passport</w>\": 14739,\n  \"passports</w>\": 46368,\n  \"password</w>\": 20258,\n  \"passwords</w>\": 43095,\n  \"past\": 7315,\n  \"past</w>\": 2729,\n  \"pasta</w>\": 10441,\n  \"paste\": 34765,\n  \"paste</w>\": 17038,\n  \"pastel</w>\": 19457,\n  \"pastels</w>\": 45699,\n  \"pastor\": 19792,\n  \"pastor</w>\": 9664,\n  \"pastoral</w>\": 37191,\n  \"pastors</w>\": 30959,\n  \"pastr\": 45478,\n  \"pastries</w>\": 39409,\n  \"pastry</w>\": 18582,\n  \"pasture</w>\": 34764,\n  \"pastures</w>\": 47793,\n  \"pat\": 1300,\n  \"pat</w>\": 7036,\n  \"patag\": 29862,\n  \"patagonia</w>\": 32786,\n  \"patch\": 29284,\n  \"patch</w>\": 8721,\n  \"patches</w>\": 22104,\n  \"patchwork</w>\": 44675,\n  \"patchy</w>\": 47488,\n  \"pate\": 42122,\n  \"pate</w>\": 42098,\n  \"patel</w>\": 14168,\n  \"patent</w>\": 14692,\n  \"patented</w>\": 37277,\n  \"patents</w>\": 33911,\n  \"paterson</w>\": 36560,\n  \"path\": 7408,\n  \"path</w>\": 5035,\n  \"pathetic</w>\": 18222,\n  \"pathfinder</w>\": 35415,\n  \"pathi\": 34976,\n  \"pathi</w>\": 27347,\n  \"pathic</w>\": 49025,\n  \"patho\": 18534,\n  \"pathology</w>\": 23290,\n  \"paths</w>\": 16333,\n  \"pathway</w>\": 23488,\n  \"pathways</w>\": 24690,\n  \"pathy</w>\": 13330,\n  \"pati\": 2799,\n  \"pati</w>\": 26708,\n  \"patience</w>\": 13575,\n  \"patient\": 30139,\n  \"patient</w>\": 6262,\n  \"patiently</w>\": 22980,\n  \"patients</w>\": 5543,\n  \"patil</w>\": 49187,\n  \"patio</w>\": 14304,\n  \"pational</w>\": 30627,\n  \"patna</w>\": 45025,\n  \"patory</w>\": 41859,\n  \"patreon</w>\": 17165,\n  \"patri\": 4771,\n  \"patriarch</w>\": 49054,\n  \"patriarchy</w>\": 48806,\n  \"patric\": 12569,\n  \"patrice</w>\": 40731,\n  \"patricia</w>\": 18143,\n  \"patrick\": 12078,\n  \"patrick</w>\": 5286,\n  \"patricks</w>\": 46783,\n  \"patriot\": 28896,\n  \"patriot</w>\": 15692,\n  \"patrioti\": 35520,\n  \"patriotic</w>\": 20217,\n  \"patriotism</w>\": 35807,\n  \"patriots</w>\": 8707,\n  \"patro\": 31650,\n  \"patrol</w>\": 10073,\n  \"patrolling</w>\": 39344,\n  \"patrols</w>\": 35978,\n  \"patron\": 26658,\n  \"patron</w>\": 17683,\n  \"patrons</w>\": 28308,\n  \"pats</w>\": 24874,\n  \"patsy</w>\": 46093,\n  \"patt\": 12637,\n  \"patter\": 4982,\n  \"pattern</w>\": 7447,\n  \"patterned</w>\": 47212,\n  \"patterns</w>\": 11637,\n  \"patterson</w>\": 21384,\n  \"patti\": 44927,\n  \"patti</w>\": 26123,\n  \"pattinson</w>\": 32474,\n  \"patton</w>\": 29026,\n  \"patty\": 48741,\n  \"patty</w>\": 18321,\n  \"pau\": 1834,\n  \"pau</w>\": 35970,\n  \"paul\": 6035,\n  \"paul</w>\": 2597,\n  \"paula\": 37363,\n  \"paula</w>\": 16777,\n  \"pauline</w>\": 30438,\n  \"paulo\": 48002,\n  \"paulo</w>\": 21628,\n  \"pauls\": 41413,\n  \"pauls</w>\": 40010,\n  \"paulson</w>\": 48201,\n  \"pause</w>\": 19439,\n  \"paused</w>\": 46782,\n  \"pav\": 6661,\n  \"pave</w>\": 37107,\n  \"paved</w>\": 27898,\n  \"pavel</w>\": 43152,\n  \"pavement</w>\": 27669,\n  \"pavilion</w>\": 13374,\n  \"paving</w>\": 28651,\n  \"paw\": 14009,\n  \"paw</w>\": 16016,\n  \"pawan\": 29754,\n  \"pawankalyan</w>\": 33702,\n  \"pawn</w>\": 43195,\n  \"paws</w>\": 16714,\n  \"pax\": 20007,\n  \"pax</w>\": 19033,\n  \"paxton</w>\": 38347,\n  \"pay\": 2642,\n  \"pay</w>\": 3345,\n  \"payback</w>\": 36413,\n  \"paycheck</w>\": 45078,\n  \"payday</w>\": 26957,\n  \"payee</w>\": 46985,\n  \"payer</w>\": 41503,\n  \"paying</w>\": 8341,\n  \"payment</w>\": 10596,\n  \"payments</w>\": 11832,\n  \"payne</w>\": 12775,\n  \"paypal</w>\": 21442,\n  \"payroll</w>\": 31610,\n  \"pays</w>\": 10845,\n  \"paysoff</w>\": 48174,\n  \"paytm</w>\": 45352,\n  \"payton</w>\": 27348,\n  \"paz</w>\": 22267,\n  \"pb\": 20112,\n  \"pb</w>\": 10981,\n  \"pba</w>\": 28205,\n  \"pbb\": 48567,\n  \"pbb</w>\": 40589,\n  \"pbc</w>\": 49191,\n  \"pbl</w>\": 35166,\n  \"pbr</w>\": 32998,\n  \"pbs</w>\": 17908,\n  \"pc\": 6782,\n  \"pc</w>\": 3808,\n  \"pca</w>\": 35705,\n  \"pcb</w>\": 26235,\n  \"pcc</w>\": 36059,\n  \"pci</w>\": 38957,\n  \"pcm</w>\": 47436,\n  \"pcr</w>\": 35704,\n  \"pcs</w>\": 11917,\n  \"pcso</w>\": 31963,\n  \"pct</w>\": 22168,\n  \"pd\": 4387,\n  \"pd</w>\": 4675,\n  \"pdates</w>\": 16842,\n  \"pdc</w>\": 40498,\n  \"pdf</w>\": 15181,\n  \"pdp</w>\": 24601,\n  \"pdt</w>\": 21743,\n  \"pdx\": 25470,\n  \"pdx</w>\": 16153,\n  \"pe\": 661,\n  \"pe</w>\": 956,\n  \"pea</w>\": 13915,\n  \"peabo\": 34083,\n  \"peabody</w>\": 41244,\n  \"peac\": 34615,\n  \"peace\": 6249,\n  \"peace</w>\": 3021,\n  \"peaceful</w>\": 9461,\n  \"peacefully</w>\": 30530,\n  \"peacekeeping</w>\": 43630,\n  \"peach\": 10522,\n  \"peach</w>\": 11538,\n  \"peaches</w>\": 27216,\n  \"peak\": 18572,\n  \"peak</w>\": 6026,\n  \"peakdistrict</w>\": 41289,\n  \"peake</w>\": 24810,\n  \"peaked</w>\": 36391,\n  \"peaks</w>\": 14067,\n  \"pean\": 11563,\n  \"peanu\": 25843,\n  \"peanut</w>\": 12491,\n  \"peanuts</w>\": 26503,\n  \"pear\": 4910,\n  \"pear</w>\": 18820,\n  \"pearce</w>\": 25996,\n  \"pearl\": 21806,\n  \"pearl</w>\": 8560,\n  \"pearljam</w>\": 46739,\n  \"pearls</w>\": 19581,\n  \"pears</w>\": 39565,\n  \"pearson</w>\": 20461,\n  \"peas</w>\": 15937,\n  \"peasant</w>\": 40621,\n  \"peasants</w>\": 48788,\n  \"peat</w>\": 26914,\n  \"pebble</w>\": 28056,\n  \"pebbles</w>\": 40155,\n  \"pec\": 32447,\n  \"pec</w>\": 17611,\n  \"pecan</w>\": 32177,\n  \"peck\": 25186,\n  \"peck</w>\": 29234,\n  \"pecker</w>\": 30169,\n  \"peckham</w>\": 45863,\n  \"pecu\": 34200,\n  \"peculiar</w>\": 42808,\n  \"ped\": 13197,\n  \"ped</w>\": 2966,\n  \"pedago\": 34590,\n  \"pedagogy</w>\": 48072,\n  \"pedal\": 32943,\n  \"pedal</w>\": 19621,\n  \"pedals</w>\": 38535,\n  \"pede\": 12862,\n  \"pede</w>\": 19560,\n  \"pedestri\": 30027,\n  \"pedestrian</w>\": 18256,\n  \"pedestrians</w>\": 33895,\n  \"pedi\": 12967,\n  \"pedia</w>\": 11733,\n  \"pediatric\": 48431,\n  \"pediatric</w>\": 22071,\n  \"pedic\": 35319,\n  \"pedic</w>\": 44528,\n  \"pedro\": 29963,\n  \"pedro</w>\": 15114,\n  \"peds</w>\": 45377,\n  \"pee\": 12988,\n  \"pee</w>\": 11196,\n  \"peed</w>\": 47369,\n  \"peek\": 46323,\n  \"peek</w>\": 7569,\n  \"peeking</w>\": 48771,\n  \"peel\": 34386,\n  \"peel</w>\": 17158,\n  \"peeled</w>\": 33533,\n  \"peeling</w>\": 48649,\n  \"peep\": 25425,\n  \"peep</w>\": 16857,\n  \"peeps</w>\": 11681,\n  \"peer\": 32416,\n  \"peer</w>\": 14432,\n  \"peers</w>\": 21626,\n  \"pees</w>\": 31830,\n  \"peg\": 32182,\n  \"peg</w>\": 11207,\n  \"pegas\": 30018,\n  \"pegasus</w>\": 37822,\n  \"peggy</w>\": 24271,\n  \"pei\": 48166,\n  \"pei</w>\": 12917,\n  \"pel\": 4286,\n  \"pel</w>\": 7006,\n  \"pele</w>\": 44105,\n  \"pelican</w>\": 34131,\n  \"pelicans</w>\": 29363,\n  \"pell</w>\": 46981,\n  \"pelle\": 31267,\n  \"pelled</w>\": 32506,\n  \"pellegr\": 38529,\n  \"pellets</w>\": 48240,\n  \"pelo\": 40192,\n  \"pelo</w>\": 40238,\n  \"pelosi</w>\": 22169,\n  \"pelvic</w>\": 45646,\n  \"pemb\": 19880,\n  \"pembro\": 24084,\n  \"pembroke\": 36702,\n  \"pembroke</w>\": 40044,\n  \"pembrokeshire</w>\": 40695,\n  \"pen\": 1501,\n  \"pen</w>\": 5356,\n  \"pena</w>\": 35788,\n  \"penalties</w>\": 25417,\n  \"penalty</w>\": 11491,\n  \"penang</w>\": 29545,\n  \"penc\": 20065,\n  \"pence</w>\": 18002,\n  \"pencil\": 41303,\n  \"pencil</w>\": 11200,\n  \"pencils</w>\": 21909,\n  \"pend\": 3052,\n  \"pendant</w>\": 12415,\n  \"pendants</w>\": 44117,\n  \"pending</w>\": 12770,\n  \"pendleton</w>\": 44272,\n  \"pendu\": 45336,\n  \"penelope</w>\": 36703,\n  \"penetr\": 26058,\n  \"peng\": 42955,\n  \"peng</w>\": 39200,\n  \"pengu\": 8854,\n  \"penguin\": 28249,\n  \"penguin</w>\": 14952,\n  \"penguins</w>\": 16557,\n  \"peninsu\": 13464,\n  \"peninsula</w>\": 14070,\n  \"penn\": 7760,\n  \"penn</w>\": 11128,\n  \"pennant</w>\": 43971,\n  \"penned</w>\": 45077,\n  \"penney</w>\": 47856,\n  \"pennies</w>\": 43094,\n  \"pennsylvania</w>\": 13673,\n  \"penny\": 20400,\n  \"penny</w>\": 11388,\n  \"pens\": 13307,\n  \"pens</w>\": 13310,\n  \"pensac\": 30925,\n  \"pensacola</w>\": 33573,\n  \"pension\": 32840,\n  \"pension</w>\": 17764,\n  \"pensions</w>\": 29773,\n  \"penske</w>\": 47154,\n  \"pent\": 10699,\n  \"pent</w>\": 22725,\n  \"pentagon</w>\": 23133,\n  \"pente\": 33165,\n  \"penthouse</w>\": 32673,\n  \"penultimate</w>\": 36553,\n  \"peop\": 1030,\n  \"people\": 10573,\n  \"people</w>\": 1047,\n  \"peoples\": 28241,\n  \"peoples</w>\": 14627,\n  \"peopleschoice</w>\": 32418,\n  \"peoplesvote</w>\": 45830,\n  \"peoria</w>\": 36985,\n  \"pep\": 12761,\n  \"pep</w>\": 14898,\n  \"pepe</w>\": 24778,\n  \"pepp\": 34425,\n  \"pepper\": 14861,\n  \"pepper</w>\": 8253,\n  \"peppermint</w>\": 30321,\n  \"pepperoni</w>\": 47307,\n  \"peppers</w>\": 14650,\n  \"pepsi</w>\": 21307,\n  \"per\": 703,\n  \"per</w>\": 1284,\n  \"pera</w>\": 26294,\n  \"perce\": 24135,\n  \"perceived</w>\": 38436,\n  \"percent\": 16328,\n  \"percent</w>\": 9017,\n  \"percentage</w>\": 19477,\n  \"percep\": 28017,\n  \"perception</w>\": 20591,\n  \"perceptions</w>\": 38138,\n  \"perch</w>\": 34281,\n  \"perched</w>\": 40071,\n  \"percu\": 41722,\n  \"percussion</w>\": 23980,\n  \"percy</w>\": 23940,\n  \"pere\": 8665,\n  \"pere</w>\": 36300,\n  \"pered</w>\": 24509,\n  \"peregr\": 37479,\n  \"peregrine</w>\": 44546,\n  \"pereira</w>\": 43927,\n  \"peren\": 24564,\n  \"perenni\": 26996,\n  \"perennial</w>\": 34038,\n  \"perez</w>\": 15107,\n  \"perf</w>\": 22816,\n  \"perfe\": 1624,\n  \"perfec\": 6599,\n  \"perfect\": 17261,\n  \"perfect</w>\": 1878,\n  \"perfection</w>\": 9646,\n  \"perfectly</w>\": 8037,\n  \"perfecto</w>\": 42898,\n  \"perfor\": 2311,\n  \"perform\": 3866,\n  \"perform</w>\": 5940,\n  \"performan\": 8973,\n  \"performance</w>\": 2714,\n  \"performances</w>\": 9553,\n  \"performed</w>\": 9997,\n  \"performer</w>\": 17061,\n  \"performers</w>\": 18476,\n  \"performing</w>\": 5170,\n  \"performs</w>\": 13839,\n  \"perfu\": 14214,\n  \"perfume</w>\": 17525,\n  \"perhaps</w>\": 9297,\n  \"peri\": 12618,\n  \"peri</w>\": 44068,\n  \"perience</w>\": 19302,\n  \"peril\": 40119,\n  \"peril</w>\": 48301,\n  \"perimeter</w>\": 38499,\n  \"pering</w>\": 29746,\n  \"perio\": 5101,\n  \"period</w>\": 6131,\n  \"periodic</w>\": 36476,\n  \"periods</w>\": 24401,\n  \"periph\": 35308,\n  \"peripheral</w>\": 43901,\n  \"peris\": 19461,\n  \"periscope</w>\": 21668,\n  \"perk</w>\": 33424,\n  \"perkins</w>\": 20057,\n  \"perks</w>\": 17660,\n  \"perl\": 44018,\n  \"perm</w>\": 47847,\n  \"perman\": 9018,\n  \"permanent</w>\": 11144,\n  \"permanently</w>\": 25584,\n  \"perme\": 42456,\n  \"permission</w>\": 15822,\n  \"permit</w>\": 21950,\n  \"permits</w>\": 33267,\n  \"permitted</w>\": 44380,\n  \"pero</w>\": 23551,\n  \"perpe\": 15749,\n  \"perpetr\": 33376,\n  \"perpetu\": 30132,\n  \"perpetual</w>\": 32018,\n  \"perrie</w>\": 32691,\n  \"perry\": 28478,\n  \"perry</w>\": 7899,\n  \"pers\": 3688,\n  \"pers</w>\": 10710,\n  \"perse\": 27498,\n  \"persecu\": 22878,\n  \"persecution</w>\": 32009,\n  \"perseverance</w>\": 29820,\n  \"persi\": 11509,\n  \"persian</w>\": 19859,\n  \"persist\": 19412,\n  \"persist</w>\": 40938,\n  \"persistence</w>\": 34588,\n  \"persistent</w>\": 29028,\n  \"person\": 3510,\n  \"person</w>\": 2533,\n  \"persona</w>\": 18401,\n  \"personal\": 10114,\n  \"personal</w>\": 4121,\n  \"personalised</w>\": 24186,\n  \"personalities</w>\": 27888,\n  \"personality</w>\": 10386,\n  \"personalized</w>\": 17845,\n  \"personally</w>\": 13885,\n  \"personnel</w>\": 14546,\n  \"persons</w>\": 14592,\n  \"perspec\": 17997,\n  \"perspective</w>\": 8996,\n  \"perspectives</w>\": 18777,\n  \"persu\": 20972,\n  \"pert\": 36970,\n  \"pert</w>\": 16306,\n  \"perth\": 19067,\n  \"perth</w>\": 11011,\n  \"peru\": 20612,\n  \"peru</w>\": 12964,\n  \"peruvian</w>\": 30822,\n  \"pes\": 38368,\n  \"pes</w>\": 2598,\n  \"pesa</w>\": 47409,\n  \"pesc\": 44044,\n  \"pesh\": 33184,\n  \"peshaw\": 28524,\n  \"peshawar</w>\": 29230,\n  \"pesky</w>\": 42512,\n  \"pesos</w>\": 47872,\n  \"pessi\": 43902,\n  \"pest\": 20130,\n  \"pest</w>\": 9425,\n  \"pesticide</w>\": 48481,\n  \"pesticides</w>\": 37868,\n  \"pesto</w>\": 26186,\n  \"pests</w>\": 41919,\n  \"pet\": 2167,\n  \"pet</w>\": 3703,\n  \"peta</w>\": 28785,\n  \"petal\": 38430,\n  \"petal</w>\": 40469,\n  \"petals</w>\": 26064,\n  \"petday</w>\": 45314,\n  \"pete\": 14479,\n  \"pete</w>\": 8571,\n  \"peter\": 5093,\n  \"peter</w>\": 3696,\n  \"peterborough</w>\": 26012,\n  \"peters</w>\": 16336,\n  \"petersburg</w>\": 21052,\n  \"petersen</w>\": 39794,\n  \"peterson</w>\": 16877,\n  \"peth</w>\": 48920,\n  \"petit\": 36437,\n  \"petit</w>\": 21276,\n  \"petite</w>\": 27213,\n  \"petition</w>\": 10975,\n  \"petitions</w>\": 43536,\n  \"petr\": 29808,\n  \"petra</w>\": 31300,\n  \"petre\": 47179,\n  \"petri\": 31831,\n  \"petro\": 8716,\n  \"petrol</w>\": 18149,\n  \"petroleum</w>\": 22063,\n  \"petron\": 42875,\n  \"pets</w>\": 7663,\n  \"pett\": 27051,\n  \"petti\": 48001,\n  \"petting</w>\": 44334,\n  \"petty</w>\": 17324,\n  \"peu\": 21411,\n  \"peuge\": 22893,\n  \"peugeot</w>\": 24129,\n  \"pew\": 21608,\n  \"pew</w>\": 30783,\n  \"pewdie\": 41882,\n  \"pewdiepie</w>\": 42563,\n  \"pex</w>\": 43765,\n  \"pey\": 14966,\n  \"pey</w>\": 30933,\n  \"peyton\": 49254,\n  \"peyton</w>\": 20307,\n  \"pez\": 45798,\n  \"pez</w>\": 10482,\n  \"pf\": 16680,\n  \"pf</w>\": 12572,\n  \"pfa</w>\": 47839,\n  \"pfc</w>\": 35007,\n  \"pff</w>\": 44121,\n  \"pfi\": 29810,\n  \"pfw</w>\": 31229,\n  \"pg\": 12476,\n  \"pg</w>\": 5211,\n  \"pga</w>\": 13351,\n  \"pgat\": 36514,\n  \"pgatour</w>\": 40094,\n  \"pgh\": 44862,\n  \"pgh</w>\": 30031,\n  \"pgs</w>\": 49204,\n  \"ph\": 745,\n  \"ph</w>\": 2042,\n  \"pha\": 4443,\n  \"pha</w>\": 26255,\n  \"phal\": 19962,\n  \"phan\": 8731,\n  \"phan</w>\": 40126,\n  \"phant\": 36998,\n  \"phantom\": 37688,\n  \"phantom</w>\": 14490,\n  \"phar\": 5570,\n  \"phara\": 35792,\n  \"pharaoh</w>\": 40437,\n  \"pharm</w>\": 45761,\n  \"pharma</w>\": 17831,\n  \"pharmac\": 8193,\n  \"pharmaceu\": 19490,\n  \"pharmaceutical</w>\": 25217,\n  \"pharmaceuticals</w>\": 44623,\n  \"pharmacist</w>\": 41024,\n  \"pharmacists</w>\": 44337,\n  \"pharmacy</w>\": 15293,\n  \"pharo\": 42308,\n  \"pharoah</w>\": 49287,\n  \"pharrell</w>\": 31316,\n  \"phase</w>\": 8304,\n  \"phases</w>\": 35337,\n  \"phat</w>\": 42492,\n  \"phc</w>\": 41102,\n  \"phd\": 20875,\n  \"phd</w>\": 8472,\n  \"phdchat</w>\": 39564,\n  \"phdlife</w>\": 39638,\n  \"phe\": 4787,\n  \"phe</w>\": 19853,\n  \"pheasant</w>\": 41983,\n  \"phee</w>\": 41292,\n  \"phel\": 23711,\n  \"phelps</w>\": 27128,\n  \"phen\": 7718,\n  \"pheno\": 47336,\n  \"phenom\": 31673,\n  \"phenom</w>\": 39618,\n  \"phenomen\": 11304,\n  \"phenomena</w>\": 41538,\n  \"phenomenal</w>\": 15035,\n  \"phenomenon</w>\": 24464,\n  \"pher\": 9194,\n  \"pher</w>\": 19828,\n  \"phers</w>\": 29531,\n  \"pherson</w>\": 36421,\n  \"phew</w>\": 10295,\n  \"phi\": 2239,\n  \"phi</w>\": 12220,\n  \"phia</w>\": 9228,\n  \"phic</w>\": 3977,\n  \"phie</w>\": 30237,\n  \"phies</w>\": 17062,\n  \"phil\": 2821,\n  \"phil</w>\": 6199,\n  \"phila</w>\": 47443,\n  \"philadel\": 9428,\n  \"philadelphia</w>\": 9749,\n  \"philanthro\": 16587,\n  \"philanthropist</w>\": 44153,\n  \"philanthropy</w>\": 25047,\n  \"philately</w>\": 33695,\n  \"phile</w>\": 36543,\n  \"philharmon\": 25228,\n  \"philharmonic</w>\": 31699,\n  \"phili\": 4277,\n  \"philia</w>\": 46654,\n  \"philip\": 20748,\n  \"philip</w>\": 11074,\n  \"philipp\": 5623,\n  \"philipp</w>\": 47591,\n  \"philippe</w>\": 20942,\n  \"philippine</w>\": 17629,\n  \"philippines</w>\": 8149,\n  \"philips</w>\": 25175,\n  \"phill\": 42346,\n  \"phill</w>\": 48272,\n  \"philli\": 6456,\n  \"phillies</w>\": 18748,\n  \"phillip\": 48832,\n  \"phillip</w>\": 19323,\n  \"phillips</w>\": 11041,\n  \"philly\": 19545,\n  \"philly</w>\": 7785,\n  \"philos\": 8395,\n  \"philosop\": 20349,\n  \"philosoph\": 10187,\n  \"philosopher</w>\": 25220,\n  \"philosophical</w>\": 32628,\n  \"philosophy</w>\": 12213,\n  \"phils</w>\": 38573,\n  \"phin</w>\": 33816,\n  \"phine</w>\": 40985,\n  \"phins</w>\": 40210,\n  \"phish</w>\": 36897,\n  \"phishing</w>\": 36546,\n  \"phl</w>\": 25603,\n  \"pho\": 816,\n  \"pho</w>\": 22707,\n  \"phobia</w>\": 28749,\n  \"phoe\": 22673,\n  \"phoebe</w>\": 27582,\n  \"phoeni\": 6778,\n  \"phoenix\": 20615,\n  \"phoenix</w>\": 7793,\n  \"phol</w>\": 48140,\n  \"phon\": 19602,\n  \"phon</w>\": 31115,\n  \"phone\": 15486,\n  \"phone</w>\": 1951,\n  \"phones</w>\": 6351,\n  \"phony</w>\": 31925,\n  \"phora</w>\": 31363,\n  \"phosp\": 22638,\n  \"photo\": 1153,\n  \"photo</w>\": 1125,\n  \"photobomb</w>\": 37075,\n  \"photobook</w>\": 41894,\n  \"photog</w>\": 28115,\n  \"photogenic</w>\": 36108,\n  \"photogra\": 36754,\n  \"photograph\": 1688,\n  \"photograph</w>\": 8853,\n  \"photographed</w>\": 11573,\n  \"photographer</w>\": 5748,\n  \"photographers</w>\": 17141,\n  \"photographic</w>\": 22053,\n  \"photographing</w>\": 30074,\n  \"photographs</w>\": 15759,\n  \"photography\": 33183,\n  \"photography</w>\": 2108,\n  \"photom\": 32223,\n  \"photoo\": 11106,\n  \"photooftheday</w>\": 11933,\n  \"photos</w>\": 2479,\n  \"photoshoot</w>\": 11121,\n  \"photoshop</w>\": 12419,\n  \"photoshopped</w>\": 35738,\n  \"phouse</w>\": 27848,\n  \"php</w>\": 17370,\n  \"phra\": 12777,\n  \"phrase</w>\": 18809,\n  \"phrases</w>\": 35264,\n  \"phs</w>\": 16495,\n  \"phu\": 21274,\n  \"phuket</w>\": 34028,\n  \"phx\": 35466,\n  \"phx</w>\": 29507,\n  \"phy\": 6484,\n  \"phy</w>\": 4292,\n  \"phyl\": 35600,\n  \"phyllis</w>\": 37844,\n  \"phys\": 3734,\n  \"phys</w>\": 37894,\n  \"physi\": 13782,\n  \"physic\": 46641,\n  \"physical\": 44127,\n  \"physical</w>\": 6671,\n  \"physically</w>\": 18105,\n  \"physician</w>\": 21055,\n  \"physicians</w>\": 26702,\n  \"physicist</w>\": 29052,\n  \"physics</w>\": 9369,\n  \"physio\": 29574,\n  \"physio</w>\": 29177,\n  \"physiology</w>\": 32349,\n  \"physique</w>\": 42884,\n  \"phyto\": 42197,\n  \"pi\": 741,\n  \"pi</w>\": 5357,\n  \"pia</w>\": 8918,\n  \"pian</w>\": 24637,\n  \"pianist</w>\": 21048,\n  \"piano\": 49278,\n  \"piano</w>\": 7894,\n  \"pianos</w>\": 47904,\n  \"piazza</w>\": 28496,\n  \"pic\": 901,\n  \"pic</w>\": 1282,\n  \"pical</w>\": 5482,\n  \"picard</w>\": 48507,\n  \"picasso</w>\": 21481,\n  \"piccad\": 33876,\n  \"piccadilly</w>\": 37287,\n  \"piccollage</w>\": 43621,\n  \"pick\": 6379,\n  \"pick</w>\": 3142,\n  \"picked</w>\": 6018,\n  \"picker</w>\": 43105,\n  \"pickering</w>\": 47605,\n  \"picket</w>\": 33559,\n  \"picking</w>\": 9545,\n  \"pickle</w>\": 24570,\n  \"pickled</w>\": 21705,\n  \"pickles</w>\": 25001,\n  \"picks</w>\": 8551,\n  \"pickup</w>\": 15382,\n  \"pickups</w>\": 33383,\n  \"picnic</w>\": 12007,\n  \"pico</w>\": 23363,\n  \"picoftheday</w>\": 18319,\n  \"pics</w>\": 2559,\n  \"pict</w>\": 18778,\n  \"pictorial</w>\": 40640,\n  \"picture\": 11663,\n  \"picture</w>\": 1674,\n  \"pictured</w>\": 7647,\n  \"pictures</w>\": 3646,\n  \"picturesque</w>\": 24894,\n  \"pid</w>\": 5225,\n  \"piday</w>\": 48056,\n  \"pie\": 12065,\n  \"pie</w>\": 5319,\n  \"piece\": 39632,\n  \"piece</w>\": 2754,\n  \"pieces</w>\": 6194,\n  \"pied\": 24686,\n  \"pied</w>\": 12713,\n  \"piedmont</w>\": 39691,\n  \"pier\": 5641,\n  \"pier</w>\": 11348,\n  \"pierc\": 49216,\n  \"pierce\": 48462,\n  \"pierce</w>\": 16782,\n  \"pierced</w>\": 32799,\n  \"piercing</w>\": 22557,\n  \"piero</w>\": 43125,\n  \"pierre\": 34670,\n  \"pierre</w>\": 11985,\n  \"piers</w>\": 29030,\n  \"pies</w>\": 6898,\n  \"pieter</w>\": 44801,\n  \"pietro</w>\": 42169,\n  \"piff</w>\": 40719,\n  \"pig\": 12009,\n  \"pig</w>\": 9619,\n  \"pigeon</w>\": 18008,\n  \"pigeons</w>\": 32910,\n  \"piggy</w>\": 28245,\n  \"pigment</w>\": 40284,\n  \"pigs</w>\": 16228,\n  \"pik</w>\": 48539,\n  \"pika</w>\": 47372,\n  \"pikach\": 27268,\n  \"pikachu</w>\": 28107,\n  \"pike\": 33457,\n  \"pike</w>\": 14011,\n  \"pil\": 2893,\n  \"pil</w>\": 20645,\n  \"pilates</w>\": 29518,\n  \"pile\": 44403,\n  \"pile</w>\": 13930,\n  \"piled</w>\": 26873,\n  \"piles</w>\": 31968,\n  \"pilgri\": 13966,\n  \"pilgrim</w>\": 32662,\n  \"pilgrimage</w>\": 24335,\n  \"pilgrims</w>\": 31370,\n  \"piling</w>\": 43050,\n  \"pilip\": 27234,\n  \"pilipinas</w>\": 32392,\n  \"pill\": 14830,\n  \"pill</w>\": 19226,\n  \"pillar</w>\": 17322,\n  \"pillars</w>\": 22054,\n  \"pillow\": 42237,\n  \"pillow</w>\": 12182,\n  \"pillows</w>\": 26499,\n  \"pills</w>\": 23964,\n  \"pilo\": 37526,\n  \"pilot\": 31619,\n  \"pilot</w>\": 6687,\n  \"pilots</w>\": 15586,\n  \"pilsner</w>\": 47153,\n  \"pim\": 15285,\n  \"pim</w>\": 35472,\n  \"pimp\": 35789,\n  \"pin\": 2629,\n  \"pin</w>\": 5164,\n  \"pinball</w>\": 31679,\n  \"pinch</w>\": 26114,\n  \"pine\": 9398,\n  \"pine</w>\": 7374,\n  \"pineapple</w>\": 14831,\n  \"pines</w>\": 20338,\n  \"ping\": 23720,\n  \"ping</w>\": 2089,\n  \"pinion</w>\": 40557,\n  \"pink\": 11151,\n  \"pink</w>\": 3360,\n  \"pinkfloyd</w>\": 48520,\n  \"pinky</w>\": 29803,\n  \"pinn\": 31448,\n  \"pinnacle</w>\": 32754,\n  \"pinned</w>\": 12165,\n  \"pinning</w>\": 44515,\n  \"pino</w>\": 36633,\n  \"pinot\": 41399,\n  \"pinot</w>\": 21146,\n  \"pinoy\": 43578,\n  \"pinoy</w>\": 35258,\n  \"pins</w>\": 14619,\n  \"pinst\": 41173,\n  \"pint\": 42537,\n  \"pint</w>\": 13584,\n  \"pinterest</w>\": 15379,\n  \"pinto</w>\": 35992,\n  \"pints</w>\": 27935,\n  \"pinup</w>\": 37349,\n  \"pio</w>\": 22108,\n  \"pion\": 36728,\n  \"pion</w>\": 29190,\n  \"pione\": 7975,\n  \"pioneer\": 34892,\n  \"pioneer</w>\": 12459,\n  \"pioneering</w>\": 25933,\n  \"pioneers</w>\": 22383,\n  \"pious</w>\": 42441,\n  \"pip</w>\": 30854,\n  \"pipe\": 29333,\n  \"pipe</w>\": 10459,\n  \"pipel\": 12387,\n  \"pipeline</w>\": 14151,\n  \"pipelines</w>\": 39683,\n  \"piper\": 47052,\n  \"piper</w>\": 16293,\n  \"pipes</w>\": 16991,\n  \"piping</w>\": 40744,\n  \"pippa</w>\": 47672,\n  \"pir\": 4351,\n  \"pir</w>\": 38899,\n  \"piracy</w>\": 39452,\n  \"piran\": 49034,\n  \"pirate\": 38680,\n  \"pirate</w>\": 13592,\n  \"pirates</w>\": 10442,\n  \"pire\": 16613,\n  \"pires</w>\": 14988,\n  \"pis\": 9230,\n  \"pis</w>\": 44441,\n  \"pisa</w>\": 43632,\n  \"pisces</w>\": 45982,\n  \"piss</w>\": 20818,\n  \"pissed</w>\": 17989,\n  \"pist\": 15556,\n  \"pist</w>\": 32826,\n  \"pistachi\": 29760,\n  \"pistachio</w>\": 36320,\n  \"pistol</w>\": 20480,\n  \"piston</w>\": 48236,\n  \"pistons</w>\": 27242,\n  \"pistor\": 48162,\n  \"pit\": 2946,\n  \"pit</w>\": 7476,\n  \"pita</w>\": 27070,\n  \"pitbull</w>\": 25295,\n  \"pitch\": 8992,\n  \"pitch</w>\": 5872,\n  \"pitched</w>\": 28447,\n  \"pitcher</w>\": 13445,\n  \"pitchers</w>\": 27835,\n  \"pitches</w>\": 21005,\n  \"pitching</w>\": 16455,\n  \"piti\": 47568,\n  \"pits</w>\": 24144,\n  \"pitt\": 7607,\n  \"pitt</w>\": 15599,\n  \"pitts\": 9531,\n  \"pittsburgh</w>\": 10453,\n  \"pity</w>\": 24380,\n  \"pius</w>\": 39988,\n  \"pivo\": 18009,\n  \"pivot</w>\": 31805,\n  \"pivotal</w>\": 31432,\n  \"pix\": 6185,\n  \"pix</w>\": 13088,\n  \"pixar</w>\": 27493,\n  \"pixel\": 14384,\n  \"pixel</w>\": 13241,\n  \"pixelart</w>\": 18516,\n  \"pixels</w>\": 34099,\n  \"pixie</w>\": 35573,\n  \"piyu\": 30772,\n  \"piyush\": 36191,\n  \"piyushgoyal</w>\": 45318,\n  \"pizz\": 3897,\n  \"pizza</w>\": 4474,\n  \"pizzas</w>\": 30647,\n  \"pizzeria</w>\": 44174,\n  \"pj\": 12524,\n  \"pj</w>\": 17179,\n  \"pjnet</w>\": 22011,\n  \"pjs</w>\": 36009,\n  \"pk\": 10149,\n  \"pk</w>\": 10991,\n  \"pkg</w>\": 49011,\n  \"pkk</w>\": 47480,\n  \"pknot</w>\": 41779,\n  \"pkwy</w>\": 36827,\n  \"pl\": 712,\n  \"pl</w>\": 5678,\n  \"pla\": 841,\n  \"pla</w>\": 19945,\n  \"plac\": 2331,\n  \"place\": 14884,\n  \"place</w>\": 1445,\n  \"placed</w>\": 9729,\n  \"placement</w>\": 16724,\n  \"placements</w>\": 43885,\n  \"placer</w>\": 49170,\n  \"places</w>\": 4448,\n  \"placing</w>\": 18531,\n  \"plague</w>\": 25360,\n  \"plaid</w>\": 23291,\n  \"plain\": 22776,\n  \"plain</w>\": 10709,\n  \"plains</w>\": 16345,\n  \"plan\": 1740,\n  \"plan</w>\": 2970,\n  \"pland</w>\": 24801,\n  \"plane\": 22728,\n  \"plane</w>\": 5363,\n  \"planes</w>\": 12581,\n  \"planet\": 16833,\n  \"planet</w>\": 5172,\n  \"planetary</w>\": 28361,\n  \"planets</w>\": 22315,\n  \"plank</w>\": 30991,\n  \"plankton</w>\": 48249,\n  \"plann\": 6409,\n  \"planned</w>\": 8169,\n  \"planner</w>\": 18083,\n  \"planners</w>\": 33664,\n  \"planning</w>\": 4446,\n  \"plano</w>\": 34063,\n  \"plans</w>\": 4181,\n  \"plant\": 8521,\n  \"plant</w>\": 3912,\n  \"plantation</w>\": 20014,\n  \"plantbased</w>\": 33720,\n  \"planted</w>\": 14286,\n  \"planter</w>\": 34453,\n  \"planters</w>\": 43661,\n  \"planting</w>\": 13922,\n  \"plants</w>\": 5829,\n  \"plaque</w>\": 16097,\n  \"plaques</w>\": 45610,\n  \"plar</w>\": 26754,\n  \"plas\": 45673,\n  \"plasma</w>\": 24999,\n  \"plaster</w>\": 31980,\n  \"plastic\": 15645,\n  \"plastic</w>\": 6102,\n  \"plasticpollution</w>\": 47129,\n  \"plastics</w>\": 20999,\n  \"plasticsurgery</w>\": 48555,\n  \"plat\": 3172,\n  \"plata</w>\": 46456,\n  \"plate\": 28744,\n  \"plate</w>\": 5135,\n  \"plateau</w>\": 29301,\n  \"plated</w>\": 21161,\n  \"plates</w>\": 11485,\n  \"platform</w>\": 5549,\n  \"platforms</w>\": 13551,\n  \"platin\": 10267,\n  \"plating</w>\": 44564,\n  \"platinum</w>\": 10979,\n  \"plato</w>\": 41101,\n  \"platoon</w>\": 41254,\n  \"platt\": 44459,\n  \"platt</w>\": 40097,\n  \"platte</w>\": 46785,\n  \"platter</w>\": 29071,\n  \"platz</w>\": 40878,\n  \"plau\": 39139,\n  \"play\": 1222,\n  \"play</w>\": 1453,\n  \"playa</w>\": 23756,\n  \"playable</w>\": 33885,\n  \"playback</w>\": 39194,\n  \"playbook</w>\": 34856,\n  \"playboy</w>\": 24383,\n  \"played</w>\": 3432,\n  \"player\": 24503,\n  \"player</w>\": 2477,\n  \"players</w>\": 3030,\n  \"playful</w>\": 23871,\n  \"playground</w>\": 15861,\n  \"playhouse</w>\": 23254,\n  \"playin</w>\": 24674,\n  \"playing\": 47368,\n  \"playing</w>\": 1629,\n  \"playlist</w>\": 9180,\n  \"playlists</w>\": 47183,\n  \"playo\": 5804,\n  \"playoff</w>\": 9655,\n  \"playoffs</w>\": 9548,\n  \"plays</w>\": 5134,\n  \"playstation</w>\": 11332,\n  \"playtime</w>\": 43037,\n  \"playwright</w>\": 32070,\n  \"plaza</w>\": 8943,\n  \"plc</w>\": 16827,\n  \"ple\": 926,\n  \"ple</w>\": 1619,\n  \"plea</w>\": 21956,\n  \"plead</w>\": 47539,\n  \"pleads</w>\": 31425,\n  \"plear\": 21362,\n  \"pleas\": 8481,\n  \"pleas</w>\": 48740,\n  \"pleasant</w>\": 12271,\n  \"please\": 41074,\n  \"please</w>\": 1474,\n  \"pleased</w>\": 6107,\n  \"pleasing</w>\": 32893,\n  \"pleasure</w>\": 5854,\n  \"pleasures</w>\": 29513,\n  \"pledge</w>\": 11507,\n  \"pledged</w>\": 36799,\n  \"pledges</w>\": 26746,\n  \"pledis</w>\": 41202,\n  \"plein</w>\": 43429,\n  \"plenary</w>\": 19891,\n  \"plenty</w>\": 7524,\n  \"pler</w>\": 17677,\n  \"ples</w>\": 6248,\n  \"pless\": 39821,\n  \"pless</w>\": 17059,\n  \"plets</w>\": 43230,\n  \"plex\": 23765,\n  \"plex</w>\": 15241,\n  \"pley</w>\": 19543,\n  \"pli\": 30001,\n  \"pli</w>\": 45797,\n  \"plic\": 5806,\n  \"plicity</w>\": 19823,\n  \"plight</w>\": 40317,\n  \"plin\": 44531,\n  \"plin</w>\": 32335,\n  \"pline</w>\": 25376,\n  \"pling</w>\": 12899,\n  \"plings</w>\": 31184,\n  \"pll\": 47629,\n  \"pll</w>\": 25266,\n  \"pln</w>\": 48755,\n  \"plo\": 1778,\n  \"plo</w>\": 43523,\n  \"plor\": 34695,\n  \"plot</w>\": 9918,\n  \"plots</w>\": 25672,\n  \"plotting</w>\": 30751,\n  \"plough\": 33811,\n  \"plow</w>\": 38363,\n  \"pls</w>\": 5572,\n  \"plu\": 2052,\n  \"plug</w>\": 12628,\n  \"plugged</w>\": 23261,\n  \"plugin</w>\": 31278,\n  \"plugins</w>\": 48797,\n  \"plugs</w>\": 28083,\n  \"plum\": 26267,\n  \"plum</w>\": 16202,\n  \"plumb\": 21769,\n  \"plumber</w>\": 43478,\n  \"plumbing</w>\": 24647,\n  \"plume</w>\": 39495,\n  \"plun\": 15122,\n  \"plunge</w>\": 26506,\n  \"plur\": 44664,\n  \"plus</w>\": 3097,\n  \"plush</w>\": 18926,\n  \"pluto</w>\": 26380,\n  \"ply\": 17249,\n  \"ply</w>\": 28705,\n  \"plying</w>\": 36071,\n  \"plym\": 11907,\n  \"plymouth</w>\": 13786,\n  \"plz</w>\": 10538,\n  \"pm\": 13699,\n  \"pm</w>\": 990,\n  \"pmi</w>\": 41206,\n  \"pmln</w>\": 23208,\n  \"pmo\": 18782,\n  \"pmoindia</w>\": 20374,\n  \"pms</w>\": 44223,\n  \"pn\": 14431,\n  \"pn</w>\": 13774,\n  \"pnc</w>\": 37148,\n  \"pne\": 30966,\n  \"pneu\": 28714,\n  \"pneumonia</w>\": 42906,\n  \"png</w>\": 20992,\n  \"pnp</w>\": 25972,\n  \"pnpp\": 42175,\n  \"pnw</w>\": 31521,\n  \"po\": 628,\n  \"po</w>\": 3057,\n  \"poa</w>\": 43912,\n  \"poached</w>\": 27665,\n  \"poaching</w>\": 35140,\n  \"poc\": 13232,\n  \"poc</w>\": 27780,\n  \"pocaly\": 37987,\n  \"pocalypse</w>\": 42307,\n  \"poche\": 38336,\n  \"poche</w>\": 39022,\n  \"pocket\": 29147,\n  \"pocket</w>\": 8504,\n  \"pockets</w>\": 19566,\n  \"pocon\": 41850,\n  \"pod\": 3583,\n  \"pod</w>\": 7446,\n  \"podcast\": 39654,\n  \"podcast</w>\": 4294,\n  \"podcasting</w>\": 40106,\n  \"podcasts</w>\": 19392,\n  \"pode\": 33368,\n  \"poder\": 24960,\n  \"podernfamily</w>\": 26620,\n  \"podi\": 32853,\n  \"podium</w>\": 14093,\n  \"pods</w>\": 18776,\n  \"poe\": 4746,\n  \"poe</w>\": 19254,\n  \"poem</w>\": 9436,\n  \"poems</w>\": 15577,\n  \"poet\": 41019,\n  \"poet</w>\": 9872,\n  \"poetic</w>\": 26365,\n  \"poetry\": 20192,\n  \"poetry</w>\": 6038,\n  \"poetryday</w>\": 39255,\n  \"poets</w>\": 19804,\n  \"pof\": 40850,\n  \"poff</w>\": 28236,\n  \"pogba</w>\": 25998,\n  \"poign\": 29682,\n  \"poignant</w>\": 32138,\n  \"poin\": 9074,\n  \"point\": 13280,\n  \"point</w>\": 2301,\n  \"pointe</w>\": 24631,\n  \"pointed</w>\": 20703,\n  \"pointer</w>\": 29883,\n  \"pointers</w>\": 36760,\n  \"pointing</w>\": 19233,\n  \"pointless</w>\": 33586,\n  \"points</w>\": 3396,\n  \"pois\": 17008,\n  \"poise</w>\": 45087,\n  \"poised</w>\": 27354,\n  \"poison\": 30722,\n  \"poison</w>\": 17074,\n  \"poisoned</w>\": 43624,\n  \"poisoning</w>\": 25750,\n  \"poisonous</w>\": 37131,\n  \"pok\": 15387,\n  \"poke\": 6892,\n  \"poke</w>\": 23186,\n  \"pokemon\": 16239,\n  \"pokemon</w>\": 9528,\n  \"pokemongo</w>\": 23985,\n  \"poker\": 30735,\n  \"poker</w>\": 11865,\n  \"pokes</w>\": 40221,\n  \"poking</w>\": 49169,\n  \"pokÃ©\": 20656,\n  \"pokÃ©mon</w>\": 22066,\n  \"pol\": 977,\n  \"pol</w>\": 7649,\n  \"pola</w>\": 43876,\n  \"poland</w>\": 9834,\n  \"polar\": 21432,\n  \"polar</w>\": 12214,\n  \"polari\": 27919,\n  \"polaris</w>\": 37965,\n  \"polarized</w>\": 48437,\n  \"polaro\": 25237,\n  \"polaroid</w>\": 30427,\n  \"poldark</w>\": 41322,\n  \"pole\": 26682,\n  \"pole</w>\": 8170,\n  \"poles</w>\": 22585,\n  \"poli\": 9675,\n  \"poli</w>\": 5414,\n  \"polic\": 16126,\n  \"police\": 15535,\n  \"police</w>\": 2120,\n  \"policeman</w>\": 37713,\n  \"policemen</w>\": 47946,\n  \"polici\": 10819,\n  \"policies</w>\": 10993,\n  \"policing</w>\": 20969,\n  \"policy\": 30173,\n  \"policy</w>\": 4660,\n  \"polio</w>\": 30533,\n  \"polis</w>\": 16133,\n  \"polish\": 46941,\n  \"polish</w>\": 9632,\n  \"polished</w>\": 21478,\n  \"polishing</w>\": 43629,\n  \"polit\": 2247,\n  \"politan</w>\": 15337,\n  \"polite</w>\": 31497,\n  \"politi\": 40597,\n  \"politic\": 33333,\n  \"political\": 37744,\n  \"political</w>\": 4197,\n  \"politically</w>\": 24323,\n  \"politician</w>\": 15960,\n  \"politicians</w>\": 12914,\n  \"politico</w>\": 39403,\n  \"politics</w>\": 4929,\n  \"polk</w>\": 33317,\n  \"polka</w>\": 29476,\n  \"poll</w>\": 7032,\n  \"pollen</w>\": 27651,\n  \"pollin\": 19152,\n  \"pollinators</w>\": 36599,\n  \"polling</w>\": 18024,\n  \"pollo</w>\": 42755,\n  \"pollock</w>\": 37614,\n  \"polls</w>\": 11813,\n  \"pollu\": 8370,\n  \"polluted</w>\": 43346,\n  \"pollution</w>\": 10384,\n  \"polly</w>\": 31204,\n  \"polo\": 35928,\n  \"polo</w>\": 10229,\n  \"poly\": 6833,\n  \"poly</w>\": 18367,\n  \"polye\": 31730,\n  \"polyester</w>\": 38514,\n  \"polym\": 23626,\n  \"polymer</w>\": 29993,\n  \"polyne\": 38892,\n  \"polyvore</w>\": 24771,\n  \"pom\": 7548,\n  \"pom</w>\": 24280,\n  \"pome\": 27963,\n  \"pomegran\": 29326,\n  \"pomegranate</w>\": 32415,\n  \"pomer\": 35156,\n  \"pomona</w>\": 41690,\n  \"pompe\": 18352,\n  \"pompeii</w>\": 47775,\n  \"pompeo</w>\": 34351,\n  \"pompey</w>\": 35079,\n  \"pon\": 3809,\n  \"pon</w>\": 22391,\n  \"ponce</w>\": 43637,\n  \"pond</w>\": 10750,\n  \"ponder</w>\": 36863,\n  \"pondering</w>\": 47395,\n  \"ponds</w>\": 31033,\n  \"pone</w>\": 32183,\n  \"pong\": 40546,\n  \"pong</w>\": 17710,\n  \"ponies</w>\": 34157,\n  \"pons</w>\": 41255,\n  \"pont\": 47563,\n  \"pont</w>\": 22997,\n  \"ponte</w>\": 40892,\n  \"ponti\": 15527,\n  \"pontiac</w>\": 25373,\n  \"pontifex</w>\": 33566,\n  \"ponty\": 45152,\n  \"pony\": 24438,\n  \"pony</w>\": 12678,\n  \"ponytail</w>\": 43265,\n  \"poo\": 6601,\n  \"poo</w>\": 14389,\n  \"pooch</w>\": 37037,\n  \"poodle</w>\": 34961,\n  \"pooh</w>\": 27103,\n  \"pooja</w>\": 35676,\n  \"pool\": 12484,\n  \"pool</w>\": 2831,\n  \"poole</w>\": 26290,\n  \"pools</w>\": 18736,\n  \"poolside</w>\": 35509,\n  \"poon\": 33799,\n  \"poon</w>\": 36178,\n  \"poop</w>\": 23310,\n  \"poor\": 14528,\n  \"poor</w>\": 3665,\n  \"poorest</w>\": 40771,\n  \"poorly</w>\": 21101,\n  \"pop\": 6530,\n  \"pop</w>\": 2852,\n  \"popart</w>\": 47425,\n  \"popcorn</w>\": 15034,\n  \"pope\": 16994,\n  \"pope</w>\": 9283,\n  \"popefrancis</w>\": 37254,\n  \"poplar</w>\": 38726,\n  \"popo\": 38835,\n  \"popo</w>\": 35572,\n  \"popp\": 13156,\n  \"popped</w>\": 14934,\n  \"poppies</w>\": 30385,\n  \"poppin</w>\": 28536,\n  \"popping</w>\": 18152,\n  \"poppins</w>\": 41216,\n  \"poppy\": 32194,\n  \"poppy</w>\": 15447,\n  \"pops</w>\": 11705,\n  \"popsic\": 38481,\n  \"popu\": 3785,\n  \"popul\": 6593,\n  \"popular\": 15854,\n  \"popular</w>\": 4368,\n  \"popularity</w>\": 19235,\n  \"populated</w>\": 38420,\n  \"population</w>\": 8423,\n  \"populations</w>\": 23797,\n  \"populism</w>\": 48998,\n  \"populist</w>\": 49376,\n  \"popup</w>\": 33053,\n  \"por\": 817,\n  \"por</w>\": 7697,\n  \"pora</w>\": 23537,\n  \"porcel\": 19409,\n  \"porcelain</w>\": 20451,\n  \"porch</w>\": 17154,\n  \"pore</w>\": 28267,\n  \"pork\": 40379,\n  \"pork</w>\": 7897,\n  \"poro\": 48110,\n  \"porridge</w>\": 34924,\n  \"porsch\": 48009,\n  \"porsche\": 44049,\n  \"porsche</w>\": 8783,\n  \"port\": 1641,\n  \"port</w>\": 1418,\n  \"porta</w>\": 45037,\n  \"portable</w>\": 11949,\n  \"portage</w>\": 32087,\n  \"portal</w>\": 14982,\n  \"porte</w>\": 28654,\n  \"ported</w>\": 16879,\n  \"porter\": 28319,\n  \"porter</w>\": 10318,\n  \"porters</w>\": 15670,\n  \"portfoli\": 45766,\n  \"portfolio</w>\": 11938,\n  \"porth\": 37425,\n  \"porti\": 45760,\n  \"porting</w>\": 26052,\n  \"portion</w>\": 13739,\n  \"portions</w>\": 22914,\n  \"portland\": 38366,\n  \"portland</w>\": 8880,\n  \"portman</w>\": 34755,\n  \"porto\": 24853,\n  \"porto</w>\": 18947,\n  \"portobello</w>\": 48025,\n  \"portra\": 4175,\n  \"portrait\": 39312,\n  \"portrait</w>\": 5352,\n  \"portraits</w>\": 14203,\n  \"portray</w>\": 46282,\n  \"portrayal</w>\": 39238,\n  \"portrayed</w>\": 36093,\n  \"ports</w>\": 7734,\n  \"portsm\": 17063,\n  \"portsmouth</w>\": 19074,\n  \"portu\": 7159,\n  \"portugal</w>\": 9503,\n  \"portugue\": 17498,\n  \"portuguese</w>\": 18019,\n  \"pos\": 1780,\n  \"pos</w>\": 11839,\n  \"pose\": 25478,\n  \"pose</w>\": 4230,\n  \"posed</w>\": 5206,\n  \"posei\": 47270,\n  \"poser</w>\": 46899,\n  \"poses</w>\": 9773,\n  \"posey</w>\": 34852,\n  \"posh</w>\": 26748,\n  \"posing</w>\": 10518,\n  \"posit\": 28793,\n  \"positi\": 7895,\n  \"position</w>\": 4657,\n  \"positioned</w>\": 34482,\n  \"positioning</w>\": 30657,\n  \"positions</w>\": 12188,\n  \"positive\": 21811,\n  \"positive</w>\": 4844,\n  \"positively</w>\": 24688,\n  \"positivity</w>\": 19966,\n  \"poss</w>\": 39745,\n  \"posse\": 17414,\n  \"posse</w>\": 28413,\n  \"possess</w>\": 36810,\n  \"possessed</w>\": 36220,\n  \"possession</w>\": 16154,\n  \"possessions</w>\": 40588,\n  \"possi\": 2521,\n  \"possibilities</w>\": 17932,\n  \"possibility</w>\": 18517,\n  \"possible</w>\": 3134,\n  \"possibly</w>\": 8601,\n  \"possum</w>\": 38575,\n  \"post\": 3489,\n  \"post</w>\": 1549,\n  \"postage</w>\": 27570,\n  \"postal</w>\": 21687,\n  \"postcard</w>\": 14785,\n  \"postcards</w>\": 23922,\n  \"postdoc</w>\": 41013,\n  \"posted</w>\": 4752,\n  \"poster\": 22881,\n  \"poster</w>\": 3574,\n  \"posters</w>\": 9673,\n  \"postgame</w>\": 34873,\n  \"postgraduate</w>\": 31997,\n  \"posthum\": 42410,\n  \"posting</w>\": 7559,\n  \"postman</w>\": 38285,\n  \"postpon\": 23247,\n  \"postponed</w>\": 25097,\n  \"posts</w>\": 7824,\n  \"postseason</w>\": 24521,\n  \"posture</w>\": 29681,\n  \"posure</w>\": 35539,\n  \"pot\": 3547,\n  \"pot</w>\": 5168,\n  \"potam\": 45825,\n  \"potassi\": 36889,\n  \"potassium</w>\": 37147,\n  \"potat\": 5975,\n  \"potato</w>\": 8527,\n  \"potatoes</w>\": 11567,\n  \"potd</w>\": 28765,\n  \"pote</w>\": 41869,\n  \"poten\": 4454,\n  \"potent</w>\": 26082,\n  \"potenti\": 44104,\n  \"potential</w>\": 5100,\n  \"potentially</w>\": 16508,\n  \"potholes</w>\": 47506,\n  \"potion</w>\": 46055,\n  \"potom\": 38848,\n  \"potomac</w>\": 43372,\n  \"pots</w>\": 19234,\n  \"pott\": 28698,\n  \"potted</w>\": 48581,\n  \"potter\": 24975,\n  \"potter</w>\": 9026,\n  \"pottery</w>\": 18396,\n  \"potts</w>\": 39839,\n  \"potty</w>\": 43569,\n  \"potus</w>\": 8740,\n  \"pou\": 9423,\n  \"pouch</w>\": 26811,\n  \"poul\": 22485,\n  \"poultry</w>\": 31005,\n  \"poun\": 33719,\n  \"pound\": 33809,\n  \"pound</w>\": 10674,\n  \"pounding</w>\": 46544,\n  \"pounds</w>\": 10752,\n  \"pour\": 33112,\n  \"pour</w>\": 8180,\n  \"poured</w>\": 26621,\n  \"pouring</w>\": 16098,\n  \"pours</w>\": 26005,\n  \"pout</w>\": 39621,\n  \"poutine</w>\": 43768,\n  \"pov</w>\": 25731,\n  \"pover\": 8432,\n  \"pover</w>\": 29464,\n  \"poverty</w>\": 9095,\n  \"pow\": 1317,\n  \"pow</w>\": 17745,\n  \"powder\": 32427,\n  \"powder</w>\": 9674,\n  \"powe\": 36955,\n  \"powell</w>\": 13305,\n  \"power\": 2789,\n  \"power</w>\": 1807,\n  \"powerball</w>\": 47803,\n  \"powered\": 45442,\n  \"powered</w>\": 7332,\n  \"powerful</w>\": 4875,\n  \"powerhouse</w>\": 22858,\n  \"powering</w>\": 16231,\n  \"powerof\": 31961,\n  \"powerpoint</w>\": 38940,\n  \"powerrangers</w>\": 40620,\n  \"powers</w>\": 9422,\n  \"pox</w>\": 43649,\n  \"poy</w>\": 34737,\n  \"poyn\": 47655,\n  \"poz\": 39953,\n  \"pp\": 604,\n  \"pp</w>\": 4186,\n  \"ppa</w>\": 10416,\n  \"ppard</w>\": 23391,\n  \"ppc</w>\": 27778,\n  \"ppe\": 24573,\n  \"ppe</w>\": 11867,\n  \"pped</w>\": 1873,\n  \"ppel</w>\": 46523,\n  \"ppen</w>\": 30663,\n  \"pper\": 6719,\n  \"pper</w>\": 2440,\n  \"ppers</w>\": 5232,\n  \"ppery</w>\": 27833,\n  \"ppet</w>\": 20744,\n  \"ppets</w>\": 25849,\n  \"ppg</w>\": 27433,\n  \"ppi</w>\": 9594,\n  \"ppie</w>\": 33795,\n  \"ppin</w>\": 8076,\n  \"pping\": 22214,\n  \"pping</w>\": 1682,\n  \"ppings</w>\": 35687,\n  \"ppl</w>\": 6758,\n  \"pple</w>\": 12302,\n  \"ppm</w>\": 42053,\n  \"ppo</w>\": 10215,\n  \"ppor\": 37613,\n  \"ppp</w>\": 14017,\n  \"pps</w>\": 10683,\n  \"ppv</w>\": 38864,\n  \"ppy\": 30360,\n  \"ppy</w>\": 3860,\n  \"pr\": 766,\n  \"pr</w>\": 4150,\n  \"pra\": 1865,\n  \"pra</w>\": 19285,\n  \"prab\": 17901,\n  \"prabhas</w>\": 29959,\n  \"prabhu</w>\": 31529,\n  \"prac\": 2243,\n  \"practi\": 29995,\n  \"practic\": 5495,\n  \"practical</w>\": 10792,\n  \"practically</w>\": 25588,\n  \"practice</w>\": 3349,\n  \"practiced</w>\": 36749,\n  \"practices</w>\": 9040,\n  \"practicing</w>\": 12750,\n  \"practise</w>\": 38938,\n  \"practising</w>\": 36478,\n  \"practiti\": 19909,\n  \"practitioner</w>\": 32591,\n  \"practitioners</w>\": 29045,\n  \"prada</w>\": 29456,\n  \"pradesh</w>\": 15384,\n  \"prado</w>\": 44141,\n  \"prag\": 31025,\n  \"prague</w>\": 14940,\n  \"prairi\": 12629,\n  \"prairie</w>\": 14753,\n  \"praise</w>\": 10013,\n  \"praised</w>\": 27649,\n  \"praises</w>\": 23049,\n  \"praising</w>\": 36961,\n  \"prakash\": 43708,\n  \"prakash</w>\": 25366,\n  \"pram\": 47774,\n  \"pran\": 20048,\n  \"prank</w>\": 23654,\n  \"pras</w>\": 41562,\n  \"prasad</w>\": 29562,\n  \"prat\": 23069,\n  \"prati\": 45773,\n  \"pratt\": 37863,\n  \"pratt</w>\": 23396,\n  \"prawn</w>\": 33102,\n  \"prawns</w>\": 34903,\n  \"pray\": 12671,\n  \"pray</w>\": 6041,\n  \"prayed</w>\": 34665,\n  \"prayer\": 41452,\n  \"prayer</w>\": 6583,\n  \"prayers</w>\": 8393,\n  \"prayfor\": 18443,\n  \"praying</w>\": 11550,\n  \"prays</w>\": 46602,\n  \"prc</w>\": 28781,\n  \"pre\": 679,\n  \"pre</w>\": 2900,\n  \"preach</w>\": 22545,\n  \"preacher</w>\": 29357,\n  \"preaching</w>\": 23642,\n  \"precau\": 36532,\n  \"precautions</w>\": 47845,\n  \"prece\": 15361,\n  \"preci\": 5470,\n  \"precin\": 27908,\n  \"precinct</w>\": 32587,\n  \"precious</w>\": 8226,\n  \"precipit\": 27463,\n  \"precipitation</w>\": 33399,\n  \"precise</w>\": 24457,\n  \"precisely</w>\": 34954,\n  \"precision\": 44021,\n  \"precision</w>\": 15621,\n  \"pred\": 40370,\n  \"predat\": 13364,\n  \"predator</w>\": 20653,\n  \"predators</w>\": 25569,\n  \"prede\": 38454,\n  \"predecess\": 38963,\n  \"predic\": 4876,\n  \"predict</w>\": 16900,\n  \"predictable</w>\": 25344,\n  \"predicted</w>\": 18702,\n  \"predicting</w>\": 30414,\n  \"prediction</w>\": 16296,\n  \"predictions</w>\": 15125,\n  \"predictive</w>\": 29798,\n  \"predicts</w>\": 25960,\n  \"preds</w>\": 40125,\n  \"pree</w>\": 47026,\n  \"preet</w>\": 30131,\n  \"prefe\": 14542,\n  \"prefecture</w>\": 32890,\n  \"prefer\": 33426,\n  \"prefer</w>\": 11450,\n  \"preference</w>\": 35057,\n  \"preferences</w>\": 38118,\n  \"preferred</w>\": 18772,\n  \"prefers</w>\": 38528,\n  \"pregame</w>\": 18575,\n  \"pregn\": 7190,\n  \"pregnancy</w>\": 12769,\n  \"pregnant</w>\": 11195,\n  \"prehistoric</w>\": 32750,\n  \"prejudice</w>\": 28337,\n  \"preli\": 15523,\n  \"prelimin\": 19990,\n  \"preliminary</w>\": 20997,\n  \"prelims</w>\": 43223,\n  \"prelude</w>\": 42966,\n  \"prem\": 32090,\n  \"prem</w>\": 21724,\n  \"premature</w>\": 39253,\n  \"premi\": 2413,\n  \"premier\": 16996,\n  \"premier</w>\": 5539,\n  \"premiere</w>\": 5367,\n  \"premiered</w>\": 27652,\n  \"premieres</w>\": 19907,\n  \"premiering</w>\": 32615,\n  \"premierleague</w>\": 22608,\n  \"premiers</w>\": 44883,\n  \"premiership</w>\": 23665,\n  \"premiosm\": 38460,\n  \"premiosmtvmiaw</w>\": 38630,\n  \"premise</w>\": 45952,\n  \"premises</w>\": 27266,\n  \"premium</w>\": 8011,\n  \"pren\": 20801,\n  \"preneur</w>\": 46288,\n  \"preorder</w>\": 16703,\n  \"preorders</w>\": 45985,\n  \"prep\": 6430,\n  \"prep</w>\": 7277,\n  \"prepa\": 26270,\n  \"prepaid</w>\": 42934,\n  \"prepar\": 4968,\n  \"preparation</w>\": 11651,\n  \"preparations</w>\": 19135,\n  \"prepare</w>\": 7014,\n  \"prepared</w>\": 7677,\n  \"preparedness</w>\": 29492,\n  \"prepares</w>\": 16375,\n  \"preparing</w>\": 7365,\n  \"prepped</w>\": 34379,\n  \"prepping</w>\": 16459,\n  \"preps</w>\": 14765,\n  \"prequel</w>\": 40461,\n  \"pres\": 1385,\n  \"pres</w>\": 8529,\n  \"presale</w>\": 27135,\n  \"presby\": 30447,\n  \"presbyter\": 33959,\n  \"presbyterian</w>\": 35370,\n  \"preschool</w>\": 24354,\n  \"prescott</w>\": 29392,\n  \"prescri\": 14851,\n  \"prescribed</w>\": 36968,\n  \"prescription</w>\": 23061,\n  \"preseason</w>\": 13813,\n  \"presen\": 16742,\n  \"presence</w>\": 8848,\n  \"present\": 2344,\n  \"present</w>\": 2881,\n  \"presentation</w>\": 4594,\n  \"presentations</w>\": 16998,\n  \"presented</w>\": 4587,\n  \"presenter</w>\": 18587,\n  \"presenters</w>\": 32759,\n  \"presenting</w>\": 5339,\n  \"presents</w>\": 4215,\n  \"preserv\": 17616,\n  \"preservation</w>\": 21074,\n  \"preserve</w>\": 15570,\n  \"preserved</w>\": 23161,\n  \"preserves</w>\": 44881,\n  \"preserving</w>\": 32315,\n  \"presi\": 1697,\n  \"presiden\": 43374,\n  \"presidency</w>\": 18077,\n  \"president\": 19900,\n  \"president</w>\": 1940,\n  \"presidente</w>\": 47363,\n  \"presidenti\": 48297,\n  \"presidential</w>\": 8503,\n  \"presidents</w>\": 16726,\n  \"presiding</w>\": 45298,\n  \"presley</w>\": 30013,\n  \"press\": 4124,\n  \"press</w>\": 2124,\n  \"pressed</w>\": 20080,\n  \"presser</w>\": 27826,\n  \"presses</w>\": 33748,\n  \"pressing</w>\": 20893,\n  \"pressure</w>\": 6083,\n  \"pressures</w>\": 38487,\n  \"prest\": 41840,\n  \"presti\": 12245,\n  \"prestige</w>\": 29328,\n  \"prestigious</w>\": 15888,\n  \"presto</w>\": 42211,\n  \"preston\": 37335,\n  \"preston</w>\": 15179,\n  \"presu\": 21667,\n  \"presumably</w>\": 42562,\n  \"pret\": 9652,\n  \"preten\": 15871,\n  \"pretend</w>\": 18111,\n  \"pretending</w>\": 21306,\n  \"pretoria</w>\": 36080,\n  \"prett\": 46667,\n  \"prettier</w>\": 31745,\n  \"prettiest</w>\": 22866,\n  \"pretty\": 18286,\n  \"pretty</w>\": 2111,\n  \"pretz\": 24890,\n  \"pretzel</w>\": 36707,\n  \"pretzels</w>\": 45468,\n  \"prev\": 20274,\n  \"prevail</w>\": 31637,\n  \"prevalence</w>\": 41729,\n  \"prevalent</w>\": 46260,\n  \"preven\": 29382,\n  \"prevent\": 26436,\n  \"prevent</w>\": 7968,\n  \"preventable</w>\": 44250,\n  \"prevented</w>\": 35356,\n  \"preventing</w>\": 21756,\n  \"prevention</w>\": 9500,\n  \"preventive</w>\": 40949,\n  \"prevents</w>\": 31746,\n  \"preview</w>\": 4449,\n  \"previews</w>\": 20279,\n  \"previous</w>\": 9252,\n  \"previously</w>\": 13359,\n  \"prey</w>\": 17131,\n  \"prez</w>\": 17956,\n  \"pri\": 955,\n  \"pri</w>\": 23400,\n  \"pric\": 24275,\n  \"price\": 13254,\n  \"price</w>\": 2827,\n  \"priced</w>\": 16934,\n  \"priceless</w>\": 15743,\n  \"prices</w>\": 5954,\n  \"pricing</w>\": 14800,\n  \"prick\": 43921,\n  \"prick</w>\": 46516,\n  \"pride\": 15323,\n  \"pride</w>\": 3436,\n  \"pridemonth</w>\": 41410,\n  \"prie\": 22477,\n  \"priest\": 38756,\n  \"priest</w>\": 14222,\n  \"priests</w>\": 30005,\n  \"prim\": 22004,\n  \"prima\": 35611,\n  \"prima</w>\": 33277,\n  \"primal</w>\": 36604,\n  \"primar\": 21579,\n  \"primaries</w>\": 46126,\n  \"primarily</w>\": 29465,\n  \"primark</w>\": 48329,\n  \"primary\": 35024,\n  \"primary</w>\": 5814,\n  \"primavera</w>\": 44899,\n  \"prime\": 14162,\n  \"prime</w>\": 5183,\n  \"primed</w>\": 45694,\n  \"primer</w>\": 22388,\n  \"primetime</w>\": 29763,\n  \"primitive</w>\": 37467,\n  \"primo</w>\": 43215,\n  \"primrose</w>\": 45891,\n  \"prin\": 1588,\n  \"prince\": 9457,\n  \"prince</w>\": 4735,\n  \"princes\": 45329,\n  \"princes</w>\": 30136,\n  \"princess\": 24123,\n  \"princess</w>\": 5079,\n  \"princesses</w>\": 34161,\n  \"princeton</w>\": 22433,\n  \"princi\": 5129,\n  \"principal\": 33599,\n  \"principal</w>\": 8860,\n  \"principals</w>\": 27524,\n  \"principle</w>\": 19595,\n  \"principles</w>\": 13755,\n  \"print\": 17851,\n  \"print</w>\": 3557,\n  \"printable</w>\": 29648,\n  \"printed</w>\": 7978,\n  \"printer</w>\": 14521,\n  \"printers</w>\": 27881,\n  \"printing</w>\": 7369,\n  \"printmaking</w>\": 38669,\n  \"prints</w>\": 7704,\n  \"prior\": 20328,\n  \"prior</w>\": 10572,\n  \"priorit\": 47773,\n  \"prioriti\": 28822,\n  \"priorities</w>\": 15232,\n  \"prioritize</w>\": 46715,\n  \"priority</w>\": 12451,\n  \"priory</w>\": 38665,\n  \"prisc\": 32468,\n  \"priscilla</w>\": 42396,\n  \"prise</w>\": 23343,\n  \"prism\": 49311,\n  \"prism</w>\": 34356,\n  \"prison\": 9281,\n  \"prison</w>\": 6622,\n  \"prisoner</w>\": 21427,\n  \"prisoners</w>\": 17460,\n  \"prisons</w>\": 26607,\n  \"pristine</w>\": 30618,\n  \"prit\": 41668,\n  \"prit</w>\": 37523,\n  \"prith\": 39173,\n  \"prius</w>\": 43561,\n  \"priv\": 3270,\n  \"privacy</w>\": 10437,\n  \"private\": 20362,\n  \"private</w>\": 4439,\n  \"privately</w>\": 32970,\n  \"privati\": 27379,\n  \"privi\": 8367,\n  \"privileg\": 18015,\n  \"privilege</w>\": 11537,\n  \"privileged</w>\": 18166,\n  \"prix</w>\": 10875,\n  \"priya</w>\": 31275,\n  \"priyan\": 16488,\n  \"priyanka</w>\": 31959,\n  \"priyankach\": 30030,\n  \"priyankachopra</w>\": 30264,\n  \"prize\": 48222,\n  \"prize</w>\": 4521,\n  \"prized</w>\": 38769,\n  \"prizes</w>\": 9268,\n  \"prk</w>\": 37094,\n  \"pro\": 644,\n  \"pro</w>\": 2630,\n  \"proactive</w>\": 33364,\n  \"prob\": 17706,\n  \"prob</w>\": 24007,\n  \"probab\": 3907,\n  \"probability</w>\": 32637,\n  \"probable</w>\": 42444,\n  \"probably</w>\": 4047,\n  \"probation</w>\": 36531,\n  \"probe</w>\": 14359,\n  \"probes</w>\": 48564,\n  \"probiotics</w>\": 49395,\n  \"proble\": 2719,\n  \"problem</w>\": 4324,\n  \"problematic</w>\": 33767,\n  \"problems</w>\": 4671,\n  \"probs</w>\": 16330,\n  \"probz</w>\": 34243,\n  \"proc\": 38417,\n  \"proce\": 4076,\n  \"procedu\": 18204,\n  \"procedural</w>\": 48177,\n  \"procedure</w>\": 20163,\n  \"procedures</w>\": 21109,\n  \"proceed\": 26664,\n  \"proceed</w>\": 33894,\n  \"proceedings</w>\": 26953,\n  \"proceeds</w>\": 11882,\n  \"process\": 17291,\n  \"process</w>\": 4078,\n  \"processed</w>\": 23816,\n  \"processes</w>\": 15169,\n  \"processing</w>\": 11737,\n  \"procession</w>\": 26288,\n  \"processor</w>\": 22838,\n  \"processors</w>\": 43634,\n  \"proclaimed</w>\": 34489,\n  \"proclamation</w>\": 32065,\n  \"procra\": 25361,\n  \"procrastin\": 25586,\n  \"procrastination</w>\": 42825,\n  \"procreate</w>\": 39336,\n  \"proctor</w>\": 47204,\n  \"procu\": 21001,\n  \"procurement</w>\": 23733,\n  \"prod\": 44349,\n  \"prod</w>\": 11991,\n  \"prodi\": 27759,\n  \"prodigy</w>\": 31973,\n  \"produ\": 27852,\n  \"produc\": 1471,\n  \"produce</w>\": 7529,\n  \"produced</w>\": 7479,\n  \"producer</w>\": 7064,\n  \"producers</w>\": 13883,\n  \"produces</w>\": 19940,\n  \"producing</w>\": 13579,\n  \"product\": 32602,\n  \"product</w>\": 4306,\n  \"production</w>\": 4146,\n  \"productions</w>\": 14166,\n  \"productive</w>\": 9697,\n  \"productivity</w>\": 12800,\n  \"products</w>\": 3964,\n  \"prof\": 15043,\n  \"prof</w>\": 5488,\n  \"profe\": 2611,\n  \"profess\": 5486,\n  \"professi\": 3705,\n  \"profession\": 8104,\n  \"profession</w>\": 19671,\n  \"professional\": 46007,\n  \"professional</w>\": 4774,\n  \"professionalism</w>\": 41252,\n  \"professionally</w>\": 33892,\n  \"professionals</w>\": 10165,\n  \"professor\": 47302,\n  \"professor</w>\": 6092,\n  \"professors</w>\": 27758,\n  \"profici\": 34685,\n  \"profile\": 14291,\n  \"profile</w>\": 6444,\n  \"profiles</w>\": 22070,\n  \"profiling</w>\": 37123,\n  \"profit\": 16941,\n  \"profit</w>\": 7909,\n  \"profitable</w>\": 25465,\n  \"profits</w>\": 13410,\n  \"profound\": 48245,\n  \"profound</w>\": 22998,\n  \"profs</w>\": 19260,\n  \"prog</w>\": 22219,\n  \"progno\": 46070,\n  \"program\": 4162,\n  \"program</w>\": 2737,\n  \"programme</w>\": 6322,\n  \"programmer</w>\": 37001,\n  \"programmes</w>\": 20468,\n  \"programming</w>\": 10831,\n  \"programs</w>\": 7345,\n  \"progre\": 7069,\n  \"progress</w>\": 4421,\n  \"progressi\": 23297,\n  \"progressing</w>\": 32346,\n  \"progression</w>\": 24772,\n  \"progressive</w>\": 12208,\n  \"progressives</w>\": 41709,\n  \"prohi\": 41124,\n  \"prohib\": 45040,\n  \"prohibition</w>\": 34440,\n  \"proj</w>\": 39156,\n  \"proje\": 48345,\n  \"projec\": 1610,\n  \"project\": 15911,\n  \"project</w>\": 1965,\n  \"projected</w>\": 22873,\n  \"projection</w>\": 22384,\n  \"projections</w>\": 34638,\n  \"projector</w>\": 27816,\n  \"projects</w>\": 5090,\n  \"proli\": 19710,\n  \"prolife</w>\": 32126,\n  \"prolifer\": 39018,\n  \"prolific</w>\": 27839,\n  \"prolly</w>\": 45968,\n  \"prolon\": 35379,\n  \"prolonged</w>\": 41972,\n  \"prom\": 40363,\n  \"prom</w>\": 7944,\n  \"prome\": 34355,\n  \"promen\": 33578,\n  \"promenade</w>\": 35522,\n  \"promethe\": 44183,\n  \"promin\": 35217,\n  \"prominent</w>\": 19172,\n  \"promis\": 3963,\n  \"promise</w>\": 6745,\n  \"promised</w>\": 11516,\n  \"promises</w>\": 12064,\n  \"promising</w>\": 14183,\n  \"promo\": 3037,\n  \"promo</w>\": 6755,\n  \"promos</w>\": 35044,\n  \"promote\": 47384,\n  \"promote</w>\": 8003,\n  \"promoted</w>\": 16395,\n  \"promoter</w>\": 33081,\n  \"promotes</w>\": 20169,\n  \"promoting</w>\": 9695,\n  \"promotion</w>\": 9259,\n  \"promotional</w>\": 17619,\n  \"promotions</w>\": 19142,\n  \"promp\": 11671,\n  \"prompt</w>\": 20198,\n  \"prompted</w>\": 45746,\n  \"prompts</w>\": 33490,\n  \"proms</w>\": 37759,\n  \"pron\": 13285,\n  \"prone</w>\": 30964,\n  \"pronoun\": 23022,\n  \"pronounce</w>\": 40489,\n  \"pronounced</w>\": 34109,\n  \"pronto</w>\": 44296,\n  \"proof\": 17020,\n  \"proof</w>\": 5248,\n  \"proofing</w>\": 35679,\n  \"proofs</w>\": 41023,\n  \"prop\": 19123,\n  \"prop</w>\": 16254,\n  \"propag\": 12151,\n  \"propaganda</w>\": 14718,\n  \"propane</w>\": 45546,\n  \"propel</w>\": 48439,\n  \"propeller</w>\": 47404,\n  \"proper\": 3577,\n  \"proper</w>\": 8205,\n  \"properly</w>\": 12560,\n  \"properties</w>\": 10922,\n  \"property\": 26486,\n  \"property</w>\": 5043,\n  \"prophe\": 9662,\n  \"prophecy</w>\": 32501,\n  \"prophet</w>\": 15549,\n  \"prophetic</w>\": 47476,\n  \"prophets</w>\": 39441,\n  \"propor\": 35016,\n  \"proportion</w>\": 35775,\n  \"proportions</w>\": 39391,\n  \"propos\": 9455,\n  \"proposal</w>\": 12139,\n  \"proposals</w>\": 20568,\n  \"propose</w>\": 28471,\n  \"proposed</w>\": 10615,\n  \"proposes</w>\": 27133,\n  \"proposing</w>\": 42631,\n  \"proposition</w>\": 44780,\n  \"propri\": 28243,\n  \"props</w>\": 15249,\n  \"propulsion</w>\": 49380,\n  \"pros\": 33925,\n  \"pros</w>\": 14147,\n  \"prosciutto</w>\": 46565,\n  \"prose\": 47063,\n  \"prose</w>\": 28675,\n  \"prosecco</w>\": 28839,\n  \"prosecu\": 12136,\n  \"prosecution</w>\": 30902,\n  \"prosecutor</w>\": 23736,\n  \"prosecutors</w>\": 31656,\n  \"prosp\": 24242,\n  \"prospec\": 12693,\n  \"prospect</w>\": 11211,\n  \"prospective</w>\": 28034,\n  \"prospects</w>\": 15372,\n  \"prosper\": 16121,\n  \"prosper</w>\": 33526,\n  \"prosperity</w>\": 17203,\n  \"prosperous</w>\": 28252,\n  \"prost</w>\": 47923,\n  \"prostate</w>\": 28808,\n  \"prostatec\": 49064,\n  \"prosthetic</w>\": 44602,\n  \"prostitu\": 37333,\n  \"protag\": 28950,\n  \"protagonist</w>\": 38183,\n  \"prote\": 1845,\n  \"protec\": 5640,\n  \"protect\": 25563,\n  \"protect</w>\": 4817,\n  \"protected</w>\": 12266,\n  \"protecting</w>\": 11710,\n  \"protection</w>\": 6238,\n  \"protections</w>\": 33772,\n  \"protective</w>\": 17028,\n  \"protector</w>\": 20441,\n  \"protectors</w>\": 45039,\n  \"protects</w>\": 21889,\n  \"protein</w>\": 8088,\n  \"proteins</w>\": 28661,\n  \"protest</w>\": 6279,\n  \"protestant</w>\": 46945,\n  \"protested</w>\": 48089,\n  \"protester</w>\": 42073,\n  \"protesters</w>\": 12660,\n  \"protesting</w>\": 18788,\n  \"protestors</w>\": 27822,\n  \"protests</w>\": 12450,\n  \"proto\": 8672,\n  \"proto</w>\": 44958,\n  \"protocol</w>\": 19938,\n  \"protocols</w>\": 39631,\n  \"proton</w>\": 40009,\n  \"prototype</w>\": 16675,\n  \"prototyping</w>\": 42081,\n  \"prou\": 5739,\n  \"proud\": 11080,\n  \"proud</w>\": 1679,\n  \"prouder</w>\": 39585,\n  \"proudest</w>\": 46806,\n  \"proudly</w>\": 11203,\n  \"proudof\": 48184,\n  \"proudtobe\": 35043,\n  \"prov\": 23772,\n  \"prov</w>\": 35021,\n  \"prove</w>\": 10107,\n  \"proved</w>\": 16473,\n  \"proven\": 35405,\n  \"proven</w>\": 14569,\n  \"provence</w>\": 28067,\n  \"prover\": 18312,\n  \"proverb</w>\": 34419,\n  \"proverbs</w>\": 27016,\n  \"proves</w>\": 16119,\n  \"provi\": 2289,\n  \"provide</w>\": 4832,\n  \"provided</w>\": 9046,\n  \"providence</w>\": 19331,\n  \"provider</w>\": 14409,\n  \"providers</w>\": 17120,\n  \"provides</w>\": 7161,\n  \"providing</w>\": 7250,\n  \"provin\": 12074,\n  \"province</w>\": 8978,\n  \"provinces</w>\": 35050,\n  \"provincial</w>\": 16002,\n  \"proving</w>\": 18055,\n  \"provision</w>\": 30148,\n  \"provisional</w>\": 36008,\n  \"provisions</w>\": 39269,\n  \"provo\": 15367,\n  \"provoc\": 31618,\n  \"provocative</w>\": 43809,\n  \"provoking</w>\": 25510,\n  \"provost</w>\": 36627,\n  \"prow\": 38737,\n  \"prowrestling</w>\": 39825,\n  \"prox\": 41616,\n  \"proxim\": 31436,\n  \"proximity</w>\": 38298,\n  \"proxy</w>\": 31680,\n  \"prs</w>\": 23879,\n  \"pru\": 12961,\n  \"pruitt</w>\": 39453,\n  \"prun\": 29029,\n  \"pruning</w>\": 48133,\n  \"pry\": 31965,\n  \"pryor</w>\": 43375,\n  \"ps\": 3982,\n  \"ps</w>\": 814,\n  \"psa</w>\": 14031,\n  \"psal\": 13859,\n  \"psalm</w>\": 17995,\n  \"psalms</w>\": 35003,\n  \"psb</w>\": 37017,\n  \"psc</w>\": 43118,\n  \"psd</w>\": 28810,\n  \"pse\": 19737,\n  \"pse</w>\": 5423,\n  \"pseu\": 24919,\n  \"pseudo</w>\": 46618,\n  \"psg</w>\": 17123,\n  \"psi\": 45848,\n  \"psi</w>\": 24533,\n  \"psic\": 29299,\n  \"psis</w>\": 33041,\n  \"psl</w>\": 21373,\n  \"psn</w>\": 36781,\n  \"pso\": 27045,\n  \"pson</w>\": 7487,\n  \"psori\": 44688,\n  \"psp</w>\": 32769,\n  \"pss\": 35718,\n  \"pss</w>\": 42535,\n  \"psst</w>\": 47814,\n  \"pst</w>\": 12692,\n  \"psu\": 41286,\n  \"psu</w>\": 28338,\n  \"psv</w>\": 44530,\n  \"psy\": 3576,\n  \"psy</w>\": 11056,\n  \"psych\": 31041,\n  \"psych</w>\": 20509,\n  \"psyched\": 19932,\n  \"psyched</w>\": 35199,\n  \"psychedelic</w>\": 23292,\n  \"psychi\": 18147,\n  \"psychiatric</w>\": 30578,\n  \"psychiatry</w>\": 39706,\n  \"psychic</w>\": 24916,\n  \"psycho\": 6472,\n  \"psycho</w>\": 22154,\n  \"psychological</w>\": 18153,\n  \"psychologist</w>\": 32827,\n  \"psychology</w>\": 12352,\n  \"psychop\": 30112,\n  \"psychotic</w>\": 48774,\n  \"pt\": 11139,\n  \"pt</w>\": 1459,\n  \"pta</w>\": 11586,\n  \"ptbo</w>\": 40481,\n  \"ptc</w>\": 44646,\n  \"pte</w>\": 47804,\n  \"pter\": 49323,\n  \"pti\": 29375,\n  \"pti</w>\": 10491,\n  \"ptic</w>\": 20670,\n  \"ption</w>\": 3479,\n  \"ptions</w>\": 24963,\n  \"pto\": 31372,\n  \"pto</w>\": 34092,\n  \"pton</w>\": 19780,\n  \"pts</w>\": 5886,\n  \"ptsd</w>\": 23973,\n  \"ptv</w>\": 42402,\n  \"pu\": 755,\n  \"pu</w>\": 11780,\n  \"pub\": 20720,\n  \"pub</w>\": 6301,\n  \"puberty</w>\": 44122,\n  \"pubg</w>\": 31496,\n  \"publ\": 3434,\n  \"publi\": 1617,\n  \"public\": 3592,\n  \"public</w>\": 2122,\n  \"publica</w>\": 49007,\n  \"publication</w>\": 13538,\n  \"publications</w>\": 27334,\n  \"publichealth</w>\": 35872,\n  \"publicity</w>\": 20831,\n  \"publicly</w>\": 18554,\n  \"publish</w>\": 19032,\n  \"published</w>\": 4311,\n  \"publisher</w>\": 20455,\n  \"publishers</w>\": 25222,\n  \"publishes</w>\": 35633,\n  \"publishing</w>\": 10994,\n  \"publix</w>\": 47985,\n  \"pubs</w>\": 21099,\n  \"puc\": 48779,\n  \"puck</w>\": 17550,\n  \"pud\": 39234,\n  \"pudding</w>\": 14025,\n  \"puddle</w>\": 33545,\n  \"pue\": 20161,\n  \"pueblo</w>\": 33076,\n  \"puer\": 8968,\n  \"puerto</w>\": 12289,\n  \"puertor\": 22757,\n  \"puertorico</w>\": 26356,\n  \"puff\": 44477,\n  \"puff</w>\": 17184,\n  \"puffin</w>\": 47632,\n  \"puffs</w>\": 47453,\n  \"puffy</w>\": 49245,\n  \"pug\": 20950,\n  \"pug</w>\": 17739,\n  \"pugchat</w>\": 42266,\n  \"pugh</w>\": 41302,\n  \"puglia</w>\": 38345,\n  \"pugs</w>\": 39425,\n  \"puj\": 46163,\n  \"puja</w>\": 33753,\n  \"puk</w>\": 31811,\n  \"pul\": 2469,\n  \"pul</w>\": 40512,\n  \"pula\": 45856,\n  \"puli</w>\": 47293,\n  \"pulit\": 27745,\n  \"pulitzer</w>\": 31419,\n  \"pull\": 20155,\n  \"pull</w>\": 6857,\n  \"pulled</w>\": 8525,\n  \"pulling</w>\": 12897,\n  \"pullman</w>\": 40203,\n  \"pullover</w>\": 44020,\n  \"pulls</w>\": 16041,\n  \"pulmon\": 32613,\n  \"pulmonary</w>\": 39132,\n  \"pulp</w>\": 25410,\n  \"pulse\": 40091,\n  \"pulse</w>\": 12485,\n  \"pulses</w>\": 42177,\n  \"pulsion</w>\": 35398,\n  \"pum\": 37497,\n  \"puma</w>\": 20858,\n  \"pump\": 5179,\n  \"pump</w>\": 9173,\n  \"pumped</w>\": 12796,\n  \"pumping</w>\": 25150,\n  \"pumpkin\": 36386,\n  \"pumpkin</w>\": 8842,\n  \"pumpkins</w>\": 23787,\n  \"pumps</w>\": 18540,\n  \"pun\": 2707,\n  \"pun</w>\": 19929,\n  \"punc\": 43907,\n  \"punch\": 29332,\n  \"punch</w>\": 10730,\n  \"punched</w>\": 31689,\n  \"punches</w>\": 35279,\n  \"punching</w>\": 33468,\n  \"punctu\": 31565,\n  \"punctuation</w>\": 47051,\n  \"pundit</w>\": 41466,\n  \"pune\": 32593,\n  \"pune</w>\": 14488,\n  \"pung</w>\": 45420,\n  \"puni\": 11479,\n  \"punish</w>\": 34569,\n  \"punished</w>\": 31598,\n  \"punisher</w>\": 38509,\n  \"punishment</w>\": 19099,\n  \"punjab\": 19405,\n  \"punjab</w>\": 12883,\n  \"punjabi</w>\": 25430,\n  \"punk\": 28933,\n  \"punk</w>\": 7246,\n  \"punks</w>\": 47171,\n  \"puns</w>\": 35231,\n  \"punt</w>\": 32699,\n  \"punta</w>\": 34112,\n  \"punter</w>\": 47092,\n  \"pup\": 11926,\n  \"pup</w>\": 11302,\n  \"pupil</w>\": 27265,\n  \"pupils</w>\": 13628,\n  \"pupp\": 7116,\n  \"puppet</w>\": 18439,\n  \"puppets</w>\": 28475,\n  \"puppies</w>\": 14820,\n  \"puppy\": 25431,\n  \"puppy</w>\": 6829,\n  \"puppylove</w>\": 40849,\n  \"pups</w>\": 20778,\n  \"pur\": 1727,\n  \"pur</w>\": 6265,\n  \"pura</w>\": 25596,\n  \"puram</w>\": 46174,\n  \"purcell</w>\": 46065,\n  \"purch\": 8384,\n  \"purchase</w>\": 5481,\n  \"purchased</w>\": 13399,\n  \"purchases</w>\": 21887,\n  \"purchasing</w>\": 20718,\n  \"purdu\": 40691,\n  \"purdue</w>\": 22280,\n  \"pure\": 14202,\n  \"pure</w>\": 5979,\n  \"puree</w>\": 45474,\n  \"purely</w>\": 32459,\n  \"puremichigan</w>\": 39783,\n  \"purest</w>\": 45497,\n  \"purge</w>\": 33514,\n  \"puri\": 16910,\n  \"puri</w>\": 21974,\n  \"purification</w>\": 47724,\n  \"purity</w>\": 29780,\n  \"purple\": 17837,\n  \"purple</w>\": 5496,\n  \"purpose\": 33492,\n  \"purpose</w>\": 7391,\n  \"purposes</w>\": 22020,\n  \"purr\": 49262,\n  \"purr</w>\": 46343,\n  \"purse</w>\": 16480,\n  \"pursue</w>\": 19463,\n  \"pursuing</w>\": 26424,\n  \"pursuit</w>\": 16469,\n  \"purÃ©e</w>\": 40981,\n  \"pus</w>\": 13841,\n  \"pusa</w>\": 40825,\n  \"push\": 16028,\n  \"push</w>\": 6831,\n  \"pushaw\": 35407,\n  \"pushaward\": 35448,\n  \"pushawards\": 47184,\n  \"pushed</w>\": 16155,\n  \"pushes</w>\": 23828,\n  \"pushing</w>\": 11549,\n  \"put\": 29535,\n  \"put</w>\": 1983,\n  \"putin</w>\": 10693,\n  \"putnam</w>\": 40235,\n  \"puts</w>\": 7898,\n  \"putt</w>\": 30279,\n  \"putter</w>\": 44723,\n  \"putting</w>\": 5154,\n  \"puzz\": 19760,\n  \"puzzle</w>\": 12875,\n  \"puzzles</w>\": 27986,\n  \"pv\": 14517,\n  \"pv</w>\": 13495,\n  \"pvc</w>\": 26959,\n  \"pvp</w>\": 44172,\n  \"pvt</w>\": 29898,\n  \"pw\": 19419,\n  \"pw</w>\": 16067,\n  \"pwc</w>\": 22965,\n  \"px\": 24790,\n  \"px</w>\": 10262,\n  \"pxrtg</w>\": 36262,\n  \"py\": 4005,\n  \"py</w>\": 7504,\n  \"pye\": 31099,\n  \"pyeongchang</w>\": 36066,\n  \"pyg\": 41450,\n  \"pyram\": 14405,\n  \"pyramid</w>\": 18725,\n  \"pyramids</w>\": 36877,\n  \"pyrene\": 36740,\n  \"pyrenees</w>\": 39744,\n  \"pyro\": 39762,\n  \"python</w>\": 13370,\n  \"pz</w>\": 48361,\n  \"pÃ©\": 43167,\n  \"q\": 80,\n  \"q</w>\": 336,\n  \"qa\": 24944,\n  \"qa</w>\": 16360,\n  \"qad\": 27844,\n  \"qadri</w>\": 35672,\n  \"qaeda</w>\": 31246,\n  \"qanda</w>\": 48672,\n  \"qanon</w>\": 19182,\n  \"qant\": 35404,\n  \"qantas</w>\": 43250,\n  \"qatar\": 32804,\n  \"qatar</w>\": 10872,\n  \"qb</w>\": 8073,\n  \"qbs</w>\": 38188,\n  \"qc</w>\": 17406,\n  \"qe</w>\": 30974,\n  \"qf</w>\": 27215,\n  \"qi\": 25054,\n  \"qi</w>\": 11256,\n  \"qing\": 46522,\n  \"qing</w>\": 34339,\n  \"ql</w>\": 28366,\n  \"qld\": 23039,\n  \"qld</w>\": 13765,\n  \"qldpol</w>\": 42296,\n  \"qm</w>\": 42148,\n  \"qotd</w>\": 24504,\n  \"qpr</w>\": 24788,\n  \"qq\": 31960,\n  \"qr</w>\": 18193,\n  \"qs</w>\": 14364,\n  \"qt</w>\": 15013,\n  \"qtr</w>\": 44803,\n  \"qu\": 666,\n  \"qu</w>\": 28646,\n  \"qua</w>\": 20363,\n  \"quack</w>\": 45575,\n  \"quad\": 11656,\n  \"quad</w>\": 13419,\n  \"quadcopter</w>\": 39792,\n  \"quadru\": 35831,\n  \"quaid</w>\": 34265,\n  \"quail</w>\": 34392,\n  \"quaint</w>\": 45976,\n  \"quake</w>\": 8421,\n  \"quaker</w>\": 43395,\n  \"quakes</w>\": 24572,\n  \"qual\": 9979,\n  \"qual</w>\": 32405,\n  \"qualcomm</w>\": 38683,\n  \"quali\": 4574,\n  \"qualification</w>\": 21508,\n  \"qualifications</w>\": 35225,\n  \"qualified</w>\": 11927,\n  \"qualifier</w>\": 18733,\n  \"qualifiers</w>\": 21388,\n  \"qualifies</w>\": 35820,\n  \"qualify</w>\": 17019,\n  \"qualifying</w>\": 11895,\n  \"qualitative</w>\": 45847,\n  \"qualities</w>\": 20488,\n  \"quality\": 28545,\n  \"quality</w>\": 3027,\n  \"quan\": 11669,\n  \"quan</w>\": 27490,\n  \"quand</w>\": 28198,\n  \"quant\": 15050,\n  \"quanti\": 31540,\n  \"quantitative</w>\": 40583,\n  \"quantities</w>\": 33917,\n  \"quantity</w>\": 26920,\n  \"quantum</w>\": 15320,\n  \"quar\": 3856,\n  \"quare</w>\": 42549,\n  \"quarry</w>\": 27601,\n  \"quart\": 7851,\n  \"quarter\": 8816,\n  \"quarter</w>\": 6632,\n  \"quarterback</w>\": 16545,\n  \"quarterfinal</w>\": 37992,\n  \"quarterfinals</w>\": 28971,\n  \"quarterly</w>\": 23350,\n  \"quarters</w>\": 10146,\n  \"quartet</w>\": 18056,\n  \"quartz</w>\": 17752,\n  \"quat\": 25715,\n  \"quattro</w>\": 40300,\n  \"quay\": 40276,\n  \"quay</w>\": 17304,\n  \"que\": 1147,\n  \"que</w>\": 2319,\n  \"quebec</w>\": 15373,\n  \"queen\": 6407,\n  \"queen</w>\": 2997,\n  \"queenof\": 44398,\n  \"queens\": 22943,\n  \"queens</w>\": 9330,\n  \"queensland</w>\": 15168,\n  \"queer\": 38874,\n  \"queer</w>\": 18161,\n  \"quel\": 39774,\n  \"quel</w>\": 21879,\n  \"quen\": 23876,\n  \"quen</w>\": 38324,\n  \"quent\": 23808,\n  \"quentin</w>\": 27530,\n  \"quer\": 17378,\n  \"quer</w>\": 26859,\n  \"quered</w>\": 23210,\n  \"queries</w>\": 32958,\n  \"querque</w>\": 30338,\n  \"query</w>\": 27464,\n  \"ques\": 25328,\n  \"ques</w>\": 7715,\n  \"queso</w>\": 40110,\n  \"quest\": 31653,\n  \"quest</w>\": 4846,\n  \"questi\": 2391,\n  \"question\": 18961,\n  \"question</w>\": 4382,\n  \"questionable</w>\": 30733,\n  \"questioned</w>\": 31847,\n  \"questioning</w>\": 24887,\n  \"questions</w>\": 3883,\n  \"quests</w>\": 44611,\n  \"quet</w>\": 8513,\n  \"quets</w>\": 39055,\n  \"quetta</w>\": 38326,\n  \"quette</w>\": 18993,\n  \"queu\": 32705,\n  \"queue</w>\": 18549,\n  \"queues</w>\": 40649,\n  \"queuing</w>\": 44082,\n  \"quez</w>\": 18677,\n  \"quezon</w>\": 41117,\n  \"qui\": 1912,\n  \"qui</w>\": 18046,\n  \"quic\": 26474,\n  \"quiche</w>\": 47723,\n  \"quick\": 5969,\n  \"quick</w>\": 3712,\n  \"quicker</w>\": 29211,\n  \"quickest</w>\": 37734,\n  \"quickly</w>\": 7787,\n  \"quid</w>\": 30732,\n  \"quie\": 43875,\n  \"quien</w>\": 43482,\n  \"quiere</w>\": 42723,\n  \"quiero</w>\": 32567,\n  \"quiet\": 17853,\n  \"quiet</w>\": 7557,\n  \"quietly</w>\": 22208,\n  \"quig\": 44690,\n  \"quil\": 12305,\n  \"quill</w>\": 48951,\n  \"quilt</w>\": 23977,\n  \"quilted</w>\": 46052,\n  \"quin\": 8607,\n  \"quin</w>\": 17167,\n  \"quincy</w>\": 27640,\n  \"quind\": 32339,\n  \"quinn</w>\": 12306,\n  \"quinoa</w>\": 26703,\n  \"quins</w>\": 39701,\n  \"quint\": 26898,\n  \"quinta</w>\": 47446,\n  \"quinte\": 22098,\n  \"quintess\": 37538,\n  \"quintet</w>\": 35125,\n  \"quipment</w>\": 42813,\n  \"quir\": 15943,\n  \"quirky</w>\": 25044,\n  \"quis\": 15064,\n  \"quist</w>\": 25128,\n  \"quit\": 19358,\n  \"quit</w>\": 11140,\n  \"quite</w>\": 4135,\n  \"quito</w>\": 35828,\n  \"quits</w>\": 32505,\n  \"quitting</w>\": 33871,\n  \"quity</w>\": 33133,\n  \"quiz\": 31197,\n  \"quiz</w>\": 8344,\n  \"quizz\": 35041,\n  \"quo\": 3046,\n  \"quo</w>\": 28127,\n  \"quoi</w>\": 45549,\n  \"quot\": 5452,\n  \"quot</w>\": 47587,\n  \"quota</w>\": 42097,\n  \"quotation</w>\": 49195,\n  \"quote\": 15446,\n  \"quote</w>\": 4020,\n  \"quoted</w>\": 27706,\n  \"quoteoftheday</w>\": 19975,\n  \"quotes</w>\": 5808,\n  \"quoting</w>\": 31651,\n  \"qur</w>\": 37782,\n  \"quran</w>\": 19690,\n  \"qureshi</w>\": 46307,\n  \"qvist</w>\": 42322,\n  \"qx</w>\": 45038,\n  \"r\": 81,\n  \"r</w>\": 337,\n  \"ra\": 559,\n  \"ra</w>\": 1735,\n  \"raa</w>\": 44344,\n  \"rab\": 14816,\n  \"rab</w>\": 33224,\n  \"rabb\": 6875,\n  \"rabbi</w>\": 20959,\n  \"rabbit</w>\": 10274,\n  \"rabbits</w>\": 27028,\n  \"rabhu</w>\": 25806,\n  \"rable</w>\": 10182,\n  \"rac\": 1773,\n  \"rac</w>\": 30462,\n  \"raccoon</w>\": 29516,\n  \"race\": 10978,\n  \"race</w>\": 2471,\n  \"racec\": 18814,\n  \"racecourse</w>\": 25036,\n  \"raced</w>\": 36021,\n  \"racer</w>\": 16798,\n  \"racers</w>\": 33603,\n  \"races</w>\": 8605,\n  \"raceway</w>\": 24650,\n  \"rach\": 6876,\n  \"rach</w>\": 33429,\n  \"racha\": 21952,\n  \"racha</w>\": 35022,\n  \"rachael</w>\": 29095,\n  \"rachel\": 13511,\n  \"rachel</w>\": 8029,\n  \"raci\": 33381,\n  \"racial</w>\": 13801,\n  \"racially</w>\": 43577,\n  \"racing\": 23306,\n  \"racing</w>\": 3699,\n  \"racism</w>\": 11276,\n  \"racist</w>\": 9684,\n  \"racists</w>\": 41777,\n  \"rack\": 24600,\n  \"rack</w>\": 12034,\n  \"racket</w>\": 37691,\n  \"racks</w>\": 21191,\n  \"rad\": 4473,\n  \"rad</w>\": 8238,\n  \"rada</w>\": 30437,\n  \"radar</w>\": 9672,\n  \"radcliffe</w>\": 33096,\n  \"rade\": 44494,\n  \"rade</w>\": 17911,\n  \"rader</w>\": 45002,\n  \"radford</w>\": 45800,\n  \"radha</w>\": 43122,\n  \"radi\": 5772,\n  \"radial</w>\": 42028,\n  \"radiance</w>\": 45670,\n  \"radiant</w>\": 25614,\n  \"radiation</w>\": 18210,\n  \"radiator</w>\": 39372,\n  \"radic\": 18082,\n  \"radical</w>\": 13712,\n  \"radicals</w>\": 45903,\n  \"radio\": 7176,\n  \"radio</w>\": 2638,\n  \"radioactive</w>\": 34704,\n  \"radiodisney</w>\": 36483,\n  \"radiohead</w>\": 39472,\n  \"radiology</w>\": 29684,\n  \"radios</w>\": 43669,\n  \"radish</w>\": 37789,\n  \"radius</w>\": 37570,\n  \"rado</w>\": 29784,\n  \"rae\": 21646,\n  \"rae</w>\": 15051,\n  \"rael</w>\": 45390,\n  \"raer</w>\": 44561,\n  \"raf\": 11495,\n  \"raf</w>\": 11490,\n  \"rafa\": 14352,\n  \"rafa</w>\": 24850,\n  \"rafael\": 38221,\n  \"rafael</w>\": 19216,\n  \"rafaelnadal</w>\": 49219,\n  \"raff\": 34900,\n  \"raffic</w>\": 32928,\n  \"raffle</w>\": 13752,\n  \"raffles</w>\": 43489,\n  \"rafi\": 35304,\n  \"raft</w>\": 9233,\n  \"rafting</w>\": 36309,\n  \"rag\": 13958,\n  \"rag</w>\": 20687,\n  \"rage</w>\": 8593,\n  \"rages</w>\": 34253,\n  \"ragh\": 35642,\n  \"ragha\": 40972,\n  \"raging</w>\": 25015,\n  \"ragn\": 24125,\n  \"ragnar\": 34385,\n  \"ragnarok</w>\": 41856,\n  \"ragon</w>\": 34768,\n  \"rags</w>\": 47838,\n  \"rah\": 12277,\n  \"rah</w>\": 8766,\n  \"raheem</w>\": 43317,\n  \"rahim</w>\": 24152,\n  \"rahman</w>\": 19680,\n  \"rahu\": 13129,\n  \"rahul\": 37239,\n  \"rahul</w>\": 17440,\n  \"rahulg\": 27510,\n  \"rahulgandhi</w>\": 28293,\n  \"rai\": 9165,\n  \"rai</w>\": 9638,\n  \"raid</w>\": 6877,\n  \"raided</w>\": 43417,\n  \"raider\": 27368,\n  \"raider</w>\": 21455,\n  \"raidernation</w>\": 47901,\n  \"raiders</w>\": 11817,\n  \"raids</w>\": 26655,\n  \"rail\": 4573,\n  \"rail</w>\": 6879,\n  \"raila</w>\": 47273,\n  \"railminindia</w>\": 35557,\n  \"railroad</w>\": 17080,\n  \"rails</w>\": 23427,\n  \"railway\": 27614,\n  \"railway</w>\": 7856,\n  \"railwayana</w>\": 46750,\n  \"railways</w>\": 20765,\n  \"raim\": 45785,\n  \"rain\": 3128,\n  \"rain</w>\": 2443,\n  \"raina</w>\": 30564,\n  \"rainbow\": 24562,\n  \"rainbow</w>\": 6286,\n  \"rainbows</w>\": 30483,\n  \"raine\": 49038,\n  \"raine</w>\": 6871,\n  \"rained</w>\": 32310,\n  \"rainf\": 15024,\n  \"rainfall</w>\": 15350,\n  \"rainforest</w>\": 22823,\n  \"rainier</w>\": 37850,\n  \"raining</w>\": 13964,\n  \"rains</w>\": 14272,\n  \"rainy</w>\": 10222,\n  \"rais\": 14729,\n  \"raise\": 24249,\n  \"raise</w>\": 5078,\n  \"raised</w>\": 6027,\n  \"raiser</w>\": 33555,\n  \"raises</w>\": 13297,\n  \"raisethe\": 47109,\n  \"raisin</w>\": 36864,\n  \"raising</w>\": 6883,\n  \"raj\": 5958,\n  \"raj</w>\": 10813,\n  \"raja\": 46069,\n  \"raja</w>\": 19150,\n  \"rajan</w>\": 46595,\n  \"rajas\": 16185,\n  \"rajasthan</w>\": 18017,\n  \"raje\": 21899,\n  \"rajesh</w>\": 43602,\n  \"raji\": 27569,\n  \"rajini\": 29600,\n  \"rajini</w>\": 40622,\n  \"rajinikanth</w>\": 32922,\n  \"rajiv</w>\": 40197,\n  \"rajkumar</w>\": 49304,\n  \"rajput</w>\": 47572,\n  \"raju</w>\": 47029,\n  \"rak\": 13523,\n  \"rak</w>\": 26287,\n  \"rake\": 26825,\n  \"rake</w>\": 32712,\n  \"rakesh</w>\": 41083,\n  \"ral\": 8062,\n  \"ral</w>\": 1406,\n  \"rale\": 14192,\n  \"raleigh</w>\": 18207,\n  \"rall\": 23249,\n  \"rallies</w>\": 25230,\n  \"rally\": 18882,\n  \"rally</w>\": 5041,\n  \"rallying</w>\": 36836,\n  \"ralph\": 25290,\n  \"ralph</w>\": 12234,\n  \"ram\": 1976,\n  \"ram</w>\": 2007,\n  \"rama</w>\": 22112,\n  \"ramad\": 12736,\n  \"ramadan</w>\": 15547,\n  \"ramadhan</w>\": 47415,\n  \"raman</w>\": 39816,\n  \"ramapho\": 43963,\n  \"ramaphosa</w>\": 44993,\n  \"ramatta</w>\": 49112,\n  \"rambo</w>\": 41855,\n  \"ramcharan</w>\": 45275,\n  \"rame</w>\": 47745,\n  \"ramen</w>\": 18892,\n  \"ramesh\": 48640,\n  \"ramesh</w>\": 40186,\n  \"rami</w>\": 43016,\n  \"ramirez</w>\": 23877,\n  \"ramon</w>\": 27958,\n  \"ramone</w>\": 47201,\n  \"ramos</w>\": 21046,\n  \"ramp</w>\": 14271,\n  \"rampage</w>\": 32077,\n  \"rampant</w>\": 41985,\n  \"ramps</w>\": 35257,\n  \"rams</w>\": 10292,\n  \"ramsay</w>\": 26259,\n  \"ramsey</w>\": 19215,\n  \"ran\": 1433,\n  \"ran</w>\": 4031,\n  \"rana</w>\": 22143,\n  \"ranbir</w>\": 40881,\n  \"rance</w>\": 29034,\n  \"ranch\": 43955,\n  \"ranch</w>\": 10659,\n  \"rancho</w>\": 26258,\n  \"rand\": 5628,\n  \"rand</w>\": 18718,\n  \"randall</w>\": 23639,\n  \"rande</w>\": 21469,\n  \"randolph</w>\": 29899,\n  \"random\": 11396,\n  \"random</w>\": 6160,\n  \"randomly</w>\": 17272,\n  \"rands</w>\": 39153,\n  \"randy\": 29479,\n  \"randy</w>\": 13279,\n  \"rane</w>\": 28852,\n  \"rang\": 4043,\n  \"rang</w>\": 24377,\n  \"range\": 13627,\n  \"range</w>\": 3818,\n  \"ranger\": 31472,\n  \"ranger</w>\": 13593,\n  \"rangers</w>\": 7664,\n  \"ranges</w>\": 25685,\n  \"ranging</w>\": 25946,\n  \"rani\": 29264,\n  \"rani</w>\": 22631,\n  \"rank</w>\": 11501,\n  \"ranked</w>\": 8307,\n  \"rankin</w>\": 37539,\n  \"ranking</w>\": 12347,\n  \"rankings</w>\": 12596,\n  \"ranks</w>\": 14469,\n  \"rano</w>\": 18608,\n  \"rans</w>\": 46259,\n  \"ransom\": 28523,\n  \"ransom</w>\": 34646,\n  \"ransomware</w>\": 33815,\n  \"rant\": 46467,\n  \"rant</w>\": 9819,\n  \"rants</w>\": 34014,\n  \"ranveer\": 32402,\n  \"ranveer</w>\": 41482,\n  \"ranveerofficial</w>\": 42116,\n  \"rao</w>\": 16913,\n  \"rap\": 7773,\n  \"rap</w>\": 7348,\n  \"rape\": 46099,\n  \"rape</w>\": 10070,\n  \"raped</w>\": 23700,\n  \"rapha\": 22754,\n  \"raphael</w>\": 30091,\n  \"rapi\": 8610,\n  \"rapid\": 47697,\n  \"rapid</w>\": 12205,\n  \"rapidly</w>\": 16710,\n  \"rapids</w>\": 18848,\n  \"raping</w>\": 44926,\n  \"rapist</w>\": 33360,\n  \"rapp\": 19283,\n  \"rapper</w>\": 11860,\n  \"rappers</w>\": 30315,\n  \"rapping</w>\": 42864,\n  \"raps</w>\": 37887,\n  \"raptor</w>\": 26762,\n  \"raptors</w>\": 17035,\n  \"raq\": 39787,\n  \"raq</w>\": 43312,\n  \"raqqa</w>\": 47074,\n  \"raquel</w>\": 44338,\n  \"rar\": 26819,\n  \"rar</w>\": 24605,\n  \"rard</w>\": 21012,\n  \"rare\": 18992,\n  \"rare</w>\": 3865,\n  \"rarely</w>\": 17315,\n  \"rarest</w>\": 43237,\n  \"rarity</w>\": 45862,\n  \"ras\": 23492,\n  \"ras</w>\": 8224,\n  \"rasc\": 30085,\n  \"rascal</w>\": 43481,\n  \"rash\": 14917,\n  \"rash</w>\": 30608,\n  \"rashad</w>\": 46527,\n  \"rasheed</w>\": 41638,\n  \"rashi\": 19426,\n  \"rashid</w>\": 26757,\n  \"rasp\": 10487,\n  \"raspberries</w>\": 37742,\n  \"raspberry\": 40162,\n  \"raspberry</w>\": 13615,\n  \"raspberrypi</w>\": 43934,\n  \"rass</w>\": 45654,\n  \"rasta</w>\": 47002,\n  \"rat\": 3806,\n  \"rat</w>\": 8985,\n  \"rata</w>\": 28568,\n  \"ratchet</w>\": 25078,\n  \"rate</w>\": 5068,\n  \"rated</w>\": 8183,\n  \"rates</w>\": 6864,\n  \"rath\": 18268,\n  \"rath</w>\": 39772,\n  \"rather</w>\": 5252,\n  \"rati\": 11486,\n  \"rating</w>\": 10567,\n  \"ratings</w>\": 14176,\n  \"ratio</w>\": 15893,\n  \"ration\": 27002,\n  \"ration</w>\": 35662,\n  \"rational</w>\": 33086,\n  \"ratna</w>\": 49078,\n  \"ratri</w>\": 32288,\n  \"rats</w>\": 19043,\n  \"ratt\": 20737,\n  \"ratt</w>\": 34785,\n  \"rattle\": 40824,\n  \"rattle</w>\": 41839,\n  \"rau\": 27744,\n  \"raul</w>\": 30218,\n  \"raun\": 41169,\n  \"rav\": 14367,\n  \"rav</w>\": 23606,\n  \"rave\": 38784,\n  \"rave</w>\": 17601,\n  \"ravel</w>\": 27927,\n  \"raven\": 10269,\n  \"raven</w>\": 16803,\n  \"ravens</w>\": 17946,\n  \"ravi\": 22947,\n  \"ravi</w>\": 19538,\n  \"ravin\": 39099,\n  \"raving</w>\": 45807,\n  \"raviol\": 41104,\n  \"ravioli</w>\": 43460,\n  \"raw\": 10166,\n  \"raw</w>\": 6323,\n  \"rawlings</w>\": 40662,\n  \"rax</w>\": 38520,\n  \"ray\": 5312,\n  \"ray</w>\": 3077,\n  \"raya</w>\": 29991,\n  \"raymond</w>\": 16683,\n  \"rayn\": 47852,\n  \"rayon</w>\": 47900,\n  \"rays</w>\": 11064,\n  \"raz\": 9700,\n  \"raz</w>\": 19087,\n  \"raza</w>\": 37724,\n  \"razer</w>\": 33832,\n  \"razor\": 24934,\n  \"razor</w>\": 21300,\n  \"razz\": 43769,\n  \"rb\": 12740,\n  \"rb</w>\": 7477,\n  \"rbc</w>\": 37500,\n  \"rbi</w>\": 15687,\n  \"rbs</w>\": 29102,\n  \"rc\": 7575,\n  \"rc</w>\": 7457,\n  \"rca</w>\": 33942,\n  \"rcb</w>\": 45240,\n  \"rcmp</w>\": 31489,\n  \"rcn</w>\": 49370,\n  \"rctid</w>\": 49223,\n  \"rd\": 13501,\n  \"rd</w>\": 1973,\n  \"rda</w>\": 45755,\n  \"rdr</w>\": 44364,\n  \"rds</w>\": 32378,\n  \"re\": 515,\n  \"re</w>\": 810,\n  \"rea</w>\": 11521,\n  \"reach\": 4483,\n  \"reach</w>\": 4279,\n  \"reached</w>\": 6878,\n  \"reaches</w>\": 14462,\n  \"reaching</w>\": 11358,\n  \"react\": 36566,\n  \"react</w>\": 15065,\n  \"reacted</w>\": 42515,\n  \"reacting</w>\": 40595,\n  \"reaction</w>\": 7189,\n  \"reactions</w>\": 18438,\n  \"reactive</w>\": 42072,\n  \"reactjs</w>\": 46173,\n  \"reactor</w>\": 32037,\n  \"reacts</w>\": 23115,\n  \"read\": 933,\n  \"read</w>\": 1199,\n  \"reader</w>\": 9884,\n  \"readers</w>\": 10335,\n  \"readiness</w>\": 28131,\n  \"reading\": 17556,\n  \"reading</w>\": 2337,\n  \"readingfc</w>\": 47428,\n  \"readings</w>\": 23361,\n  \"reads</w>\": 6597,\n  \"ready\": 17351,\n  \"ready</w>\": 1112,\n  \"reagan</w>\": 17767,\n  \"real\": 2017,\n  \"real</w>\": 1532,\n  \"realdonaldtrump</w>\": 7025,\n  \"reale\": 5930,\n  \"realest</w>\": 45855,\n  \"realestate\": 32937,\n  \"realestate</w>\": 6569,\n  \"reali\": 4185,\n  \"realis</w>\": 38114,\n  \"realise</w>\": 14773,\n  \"realised</w>\": 17945,\n  \"realising</w>\": 39537,\n  \"realism</w>\": 20024,\n  \"realist</w>\": 30248,\n  \"realistic</w>\": 16157,\n  \"realities</w>\": 32443,\n  \"reality\": 46802,\n  \"reality</w>\": 5004,\n  \"realization</w>\": 40402,\n  \"realize</w>\": 7538,\n  \"realized</w>\": 10489,\n  \"realizes</w>\": 42918,\n  \"realizing</w>\": 23284,\n  \"reall\": 39686,\n  \"really\": 43249,\n  \"really</w>\": 1414,\n  \"realm</w>\": 23083,\n  \"realmadrid</w>\": 27866,\n  \"realms</w>\": 43033,\n  \"realness</w>\": 46761,\n  \"realtime\": 44002,\n  \"realtime</w>\": 38203,\n  \"realtor</w>\": 18038,\n  \"realtors</w>\": 31759,\n  \"realty</w>\": 20471,\n  \"ream\": 37242,\n  \"ream</w>\": 15219,\n  \"rean</w>\": 48477,\n  \"reap</w>\": 31334,\n  \"reaper</w>\": 29922,\n  \"rear\": 39652,\n  \"rear</w>\": 10223,\n  \"reas\": 9121,\n  \"reason\": 12882,\n  \"reason</w>\": 3893,\n  \"reasonable</w>\": 18558,\n  \"reasonably</w>\": 38589,\n  \"reasoning</w>\": 30341,\n  \"reasons</w>\": 5686,\n  \"reau</w>\": 32398,\n  \"reb\": 12370,\n  \"reb</w>\": 18796,\n  \"reba</w>\": 48543,\n  \"rebate</w>\": 43817,\n  \"rebe\": 25227,\n  \"rebec\": 10774,\n  \"rebecca</w>\": 12892,\n  \"rebel\": 8185,\n  \"rebel</w>\": 12248,\n  \"rebellion</w>\": 22170,\n  \"rebels</w>\": 13623,\n  \"rebirth</w>\": 33303,\n  \"reboot</w>\": 22385,\n  \"reborn</w>\": 30229,\n  \"reboun\": 43381,\n  \"rebound</w>\": 31280,\n  \"rebounds</w>\": 19190,\n  \"rebs</w>\": 28164,\n  \"rebu\": 43162,\n  \"rebuild</w>\": 20022,\n  \"rebuilding</w>\": 30880,\n  \"rebuilt</w>\": 33137,\n  \"rec\": 1020,\n  \"rec</w>\": 11243,\n  \"recall</w>\": 15151,\n  \"recalled</w>\": 32142,\n  \"recalling</w>\": 47855,\n  \"recalls</w>\": 24740,\n  \"recap\": 29816,\n  \"recap</w>\": 8337,\n  \"recaps</w>\": 47997,\n  \"recard</w>\": 35536,\n  \"rece\": 1890,\n  \"recei\": 2148,\n  \"receip\": 38503,\n  \"receipt</w>\": 30479,\n  \"receipts</w>\": 41181,\n  \"receive</w>\": 4800,\n  \"received</w>\": 4178,\n  \"receiver</w>\": 17659,\n  \"receivers</w>\": 45294,\n  \"receives</w>\": 10027,\n  \"receiving</w>\": 7252,\n  \"recent</w>\": 3969,\n  \"recently</w>\": 4482,\n  \"recep\": 17450,\n  \"reception</w>\": 8364,\n  \"receptions</w>\": 46881,\n  \"receptor</w>\": 41835,\n  \"recess</w>\": 38182,\n  \"recession</w>\": 27176,\n  \"recharge</w>\": 29396,\n  \"rechargeable</w>\": 37516,\n  \"reci\": 2037,\n  \"recipe\": 28923,\n  \"recipe</w>\": 4614,\n  \"recipeoftheday</w>\": 38727,\n  \"recipes</w>\": 9243,\n  \"recipi\": 10136,\n  \"recipient</w>\": 13703,\n  \"recipients</w>\": 18940,\n  \"recipro\": 41789,\n  \"recital</w>\": 23457,\n  \"recite</w>\": 48824,\n  \"reck\": 11715,\n  \"reckless</w>\": 26284,\n  \"reckon</w>\": 23854,\n  \"recl\": 42277,\n  \"reclaim</w>\": 35969,\n  \"reclaimed</w>\": 32648,\n  \"reco\": 2535,\n  \"reco</w>\": 46038,\n  \"recogn\": 6343,\n  \"recogni\": 5329,\n  \"recognise</w>\": 19824,\n  \"recognised</w>\": 20986,\n  \"recognising</w>\": 48423,\n  \"recognition</w>\": 9415,\n  \"recognizable</w>\": 47240,\n  \"recognize</w>\": 10905,\n  \"recognized</w>\": 9929,\n  \"recognizes</w>\": 26909,\n  \"recognizing</w>\": 19666,\n  \"recomm\": 4540,\n  \"recommend\": 11628,\n  \"recommend</w>\": 8942,\n  \"recommendation</w>\": 20118,\n  \"recommendations</w>\": 16516,\n  \"recommended</w>\": 11100,\n  \"recommending</w>\": 44301,\n  \"recommends</w>\": 22940,\n  \"recon\": 15371,\n  \"recon</w>\": 28996,\n  \"reconciliation</w>\": 26451,\n  \"reconstruction</w>\": 24955,\n  \"recor\": 1723,\n  \"record\": 21328,\n  \"record</w>\": 2717,\n  \"recorded</w>\": 9392,\n  \"recorder</w>\": 26747,\n  \"recording\": 48237,\n  \"recording</w>\": 6942,\n  \"recordings</w>\": 19715,\n  \"records</w>\": 4529,\n  \"recover</w>\": 16785,\n  \"recovered</w>\": 16444,\n  \"recovering</w>\": 19005,\n  \"recovers</w>\": 47935,\n  \"recovery</w>\": 6591,\n  \"recre\": 22148,\n  \"recreate</w>\": 29775,\n  \"recreated</w>\": 40888,\n  \"recreating</w>\": 48224,\n  \"recreation</w>\": 17331,\n  \"recreational</w>\": 24329,\n  \"recru\": 4745,\n  \"recruit\": 9011,\n  \"recruit</w>\": 15585,\n  \"recruited</w>\": 36518,\n  \"recruiter</w>\": 43120,\n  \"recruiters</w>\": 46542,\n  \"recruiting</w>\": 10533,\n  \"recruitment</w>\": 10541,\n  \"recruits</w>\": 22647,\n  \"recs</w>\": 33069,\n  \"rectan\": 43041,\n  \"rectangular</w>\": 43321,\n  \"rector</w>\": 41585,\n  \"recu\": 26798,\n  \"recur\": 19983,\n  \"recurring</w>\": 35912,\n  \"recy\": 6790,\n  \"recycla\": 40659,\n  \"recyclable</w>\": 48907,\n  \"recycle</w>\": 19366,\n  \"recycled</w>\": 16829,\n  \"recycling</w>\": 12566,\n  \"red\": 1893,\n  \"red</w>\": 736,\n  \"redbubble</w>\": 46137,\n  \"redbull\": 29483,\n  \"redbull</w>\": 29219,\n  \"redcarpet</w>\": 32259,\n  \"redcross</w>\": 30659,\n  \"redd\": 22149,\n  \"redd</w>\": 40618,\n  \"redding</w>\": 41061,\n  \"reddish</w>\": 43383,\n  \"reddit</w>\": 15226,\n  \"reddy</w>\": 23028,\n  \"rede\": 10913,\n  \"redeem</w>\": 37449,\n  \"redefining</w>\": 46352,\n  \"redemption</w>\": 20233,\n  \"redesign</w>\": 24188,\n  \"redesigned</w>\": 33111,\n  \"redevelopment</w>\": 30322,\n  \"redhead</w>\": 36267,\n  \"redi\": 7976,\n  \"redman</w>\": 44753,\n  \"redmond</w>\": 39627,\n  \"rednation\": 28180,\n  \"rednationrising</w>\": 28262,\n  \"redneck</w>\": 39105,\n  \"redness</w>\": 22626,\n  \"redo</w>\": 42524,\n  \"redon\": 48506,\n  \"redro\": 37722,\n  \"reds</w>\": 11221,\n  \"redskins</w>\": 19023,\n  \"redsox</w>\": 19144,\n  \"reduc\": 5015,\n  \"reduce</w>\": 6604,\n  \"reduced</w>\": 10821,\n  \"reduces</w>\": 20539,\n  \"reducing</w>\": 13836,\n  \"reduction</w>\": 12219,\n  \"reductions</w>\": 48263,\n  \"redux</w>\": 43014,\n  \"redvelvet</w>\": 41845,\n  \"redwings</w>\": 31058,\n  \"redwood</w>\": 31748,\n  \"ree\": 9282,\n  \"ree</w>\": 5813,\n  \"reebok</w>\": 26734,\n  \"reece</w>\": 30457,\n  \"reed\": 26209,\n  \"reed</w>\": 10435,\n  \"reedus</w>\": 32865,\n  \"reef\": 46557,\n  \"reef</w>\": 15624,\n  \"reefs</w>\": 34459,\n  \"reel\": 34467,\n  \"reel</w>\": 17166,\n  \"reels</w>\": 48127,\n  \"reem</w>\": 48891,\n  \"reen\": 21638,\n  \"reen</w>\": 23679,\n  \"rees</w>\": 18314,\n  \"reese</w>\": 20929,\n  \"reeves</w>\": 23060,\n  \"ref\": 4067,\n  \"ref</w>\": 9591,\n  \"refe\": 5624,\n  \"refer\": 18425,\n  \"refer</w>\": 22325,\n  \"referee</w>\": 20398,\n  \"referees</w>\": 45583,\n  \"referen\": 13535,\n  \"reference</w>\": 10214,\n  \"references</w>\": 24009,\n  \"referendum</w>\": 16732,\n  \"referr\": 47784,\n  \"referral</w>\": 30219,\n  \"referred</w>\": 22969,\n  \"referring</w>\": 29797,\n  \"refers</w>\": 30069,\n  \"refill</w>\": 37859,\n  \"refin\": 13455,\n  \"refined</w>\": 26098,\n  \"refinery</w>\": 31393,\n  \"refining</w>\": 48406,\n  \"reflec\": 4608,\n  \"reflect</w>\": 13373,\n  \"reflected</w>\": 28732,\n  \"reflecting</w>\": 19700,\n  \"reflection</w>\": 11884,\n  \"reflections</w>\": 16647,\n  \"reflective</w>\": 27008,\n  \"reflects</w>\": 15821,\n  \"reflex\": 45756,\n  \"reflex</w>\": 36050,\n  \"reform\": 45678,\n  \"reform</w>\": 8875,\n  \"reformation</w>\": 45119,\n  \"reformed</w>\": 40880,\n  \"reforms</w>\": 19274,\n  \"refr\": 34850,\n  \"refre\": 11995,\n  \"refresh\": 17836,\n  \"refresh</w>\": 23288,\n  \"refreshed</w>\": 35925,\n  \"refresher</w>\": 41481,\n  \"refreshing</w>\": 14159,\n  \"refreshments</w>\": 31127,\n  \"refriger\": 21076,\n  \"refrigerator</w>\": 36662,\n  \"refs</w>\": 35595,\n  \"refu\": 3545,\n  \"refuge\": 5638,\n  \"refuge</w>\": 17432,\n  \"refugee</w>\": 11556,\n  \"refugees\": 42687,\n  \"refugees</w>\": 8316,\n  \"refund</w>\": 28899,\n  \"refur\": 15519,\n  \"refurbi\": 18259,\n  \"refurbished</w>\": 26190,\n  \"refurbishment</w>\": 35803,\n  \"refusal</w>\": 46547,\n  \"refuse</w>\": 16412,\n  \"refused</w>\": 17190,\n  \"refuses</w>\": 20085,\n  \"refusing</w>\": 26704,\n  \"reg\": 5472,\n  \"reg</w>\": 12353,\n  \"regain</w>\": 37510,\n  \"regal\": 31512,\n  \"regal</w>\": 25028,\n  \"regan</w>\": 34062,\n  \"regar\": 5881,\n  \"regard</w>\": 21801,\n  \"regarded</w>\": 32017,\n  \"regarding</w>\": 8493,\n  \"regardless</w>\": 17220,\n  \"regards</w>\": 23079,\n  \"regatta</w>\": 26316,\n  \"regen\": 46545,\n  \"regency</w>\": 29341,\n  \"regeneration</w>\": 29257,\n  \"regent</w>\": 30455,\n  \"regents</w>\": 46710,\n  \"regg\": 12757,\n  \"reggae\": 37821,\n  \"reggae</w>\": 15214,\n  \"reggie</w>\": 21872,\n  \"regi\": 1608,\n  \"regime</w>\": 11378,\n  \"regiment</w>\": 18603,\n  \"regin\": 23287,\n  \"regina</w>\": 16841,\n  \"region\": 16542,\n  \"region</w>\": 4341,\n  \"regional</w>\": 5552,\n  \"regionals</w>\": 26043,\n  \"regions</w>\": 14530,\n  \"regis</w>\": 28094,\n  \"register</w>\": 3967,\n  \"registered</w>\": 10254,\n  \"registering</w>\": 33510,\n  \"registr\": 29193,\n  \"registration</w>\": 7302,\n  \"registrations</w>\": 38423,\n  \"registry</w>\": 30020,\n  \"rego</w>\": 47351,\n  \"regram</w>\": 30329,\n  \"regrann</w>\": 48802,\n  \"regre\": 8627,\n  \"regression</w>\": 43733,\n  \"regret</w>\": 14374,\n  \"regrets</w>\": 23231,\n  \"regu\": 3411,\n  \"regui</w>\": 46722,\n  \"regul\": 11847,\n  \"regular\": 14882,\n  \"regular</w>\": 6307,\n  \"regularly</w>\": 17263,\n  \"regulat\": 14575,\n  \"regulate</w>\": 33494,\n  \"regulated</w>\": 31384,\n  \"regulating</w>\": 48156,\n  \"regulation</w>\": 14267,\n  \"regulations</w>\": 16654,\n  \"regulator</w>\": 30364,\n  \"regulators</w>\": 35837,\n  \"regulatory</w>\": 17717,\n  \"reh\": 21492,\n  \"reha\": 10193,\n  \"rehab</w>\": 16973,\n  \"rehabil\": 17930,\n  \"rehabilitation</w>\": 21042,\n  \"rehear\": 7273,\n  \"rehearsal</w>\": 11482,\n  \"rehearsals</w>\": 17977,\n  \"rehearsing</w>\": 23125,\n  \"rehman</w>\": 39206,\n  \"rei\": 15343,\n  \"rei</w>\": 26033,\n  \"reic\": 41230,\n  \"reich\": 48589,\n  \"reich</w>\": 28929,\n  \"reid\": 45125,\n  \"reid</w>\": 11744,\n  \"reig\": 13092,\n  \"reign\": 41419,\n  \"reign</w>\": 14827,\n  \"reigning</w>\": 28409,\n  \"reigns</w>\": 21217,\n  \"reiki</w>\": 46960,\n  \"reilly</w>\": 28120,\n  \"reim\": 35421,\n  \"reimagined</w>\": 46799,\n  \"reimbur\": 39857,\n  \"rein\": 9240,\n  \"rein</w>\": 45009,\n  \"reina</w>\": 43847,\n  \"reinde\": 23810,\n  \"reindeer</w>\": 25072,\n  \"reinfor\": 48161,\n  \"reinforced</w>\": 41909,\n  \"reinst\": 33969,\n  \"reinvent</w>\": 38171,\n  \"reissue</w>\": 34042,\n  \"reiter\": 35394,\n  \"rejec\": 9958,\n  \"reject</w>\": 22435,\n  \"rejected</w>\": 17505,\n  \"rejection</w>\": 32264,\n  \"rejects</w>\": 23155,\n  \"rejo\": 20150,\n  \"rejoice</w>\": 24712,\n  \"rejuven\": 26332,\n  \"rek\": 47542,\n  \"rek</w>\": 19201,\n  \"rel\": 1825,\n  \"rel</w>\": 5233,\n  \"rela\": 4362,\n  \"reland</w>\": 15220,\n  \"relat\": 27192,\n  \"relatable</w>\": 31010,\n  \"relate</w>\": 17520,\n  \"related</w>\": 5880,\n  \"relates</w>\": 36064,\n  \"relating</w>\": 27373,\n  \"relation\": 4561,\n  \"relation</w>\": 16207,\n  \"relations</w>\": 10100,\n  \"relationship\": 47239,\n  \"relationship</w>\": 5837,\n  \"relationships</w>\": 10610,\n  \"relative</w>\": 17265,\n  \"relatively</w>\": 18351,\n  \"relatives</w>\": 21981,\n  \"relax\": 6777,\n  \"relax</w>\": 9035,\n  \"relaxation</w>\": 22194,\n  \"relaxed</w>\": 18999,\n  \"relaxing</w>\": 10256,\n  \"relay</w>\": 12403,\n  \"relays</w>\": 28404,\n  \"rele\": 1602,\n  \"release\": 29100,\n  \"release</w>\": 2706,\n  \"released</w>\": 3410,\n  \"releases</w>\": 7393,\n  \"releasethe\": 44008,\n  \"releasing</w>\": 10321,\n  \"releg\": 23378,\n  \"relegated</w>\": 45884,\n  \"relegation</w>\": 35040,\n  \"relent\": 22213,\n  \"relentless</w>\": 27207,\n  \"relessly</w>\": 33927,\n  \"relev\": 9349,\n  \"relevance</w>\": 31400,\n  \"relevant</w>\": 10568,\n  \"reli\": 2674,\n  \"reliability</w>\": 27220,\n  \"reliable</w>\": 13714,\n  \"reliance</w>\": 27727,\n  \"relic</w>\": 27802,\n  \"relics</w>\": 43208,\n  \"relief</w>\": 7518,\n  \"relies</w>\": 41579,\n  \"relieve</w>\": 28623,\n  \"relieved</w>\": 36597,\n  \"religi\": 4940,\n  \"religion</w>\": 8803,\n  \"religions</w>\": 31189,\n  \"religious</w>\": 8289,\n  \"relish</w>\": 35550,\n  \"relive</w>\": 23939,\n  \"reliving</w>\": 47558,\n  \"rell\": 28802,\n  \"rell</w>\": 7127,\n  \"rella</w>\": 9952,\n  \"relle</w>\": 31390,\n  \"reloaded</w>\": 38908,\n  \"relocated</w>\": 46791,\n  \"relocation</w>\": 39198,\n  \"rels</w>\": 23320,\n  \"relu\": 32058,\n  \"reluct\": 32549,\n  \"reluctant</w>\": 45552,\n  \"rely</w>\": 4158,\n  \"relying</w>\": 42168,\n  \"rem\": 15098,\n  \"rem</w>\": 21637,\n  \"rema\": 4569,\n  \"remain\": 29144,\n  \"remain</w>\": 6415,\n  \"remainder</w>\": 41672,\n  \"remained</w>\": 23714,\n  \"remaining</w>\": 11392,\n  \"remains</w>\": 6807,\n  \"remake</w>\": 16234,\n  \"remark\": 11136,\n  \"remarkable</w>\": 12404,\n  \"remarkably</w>\": 39087,\n  \"remarks</w>\": 15001,\n  \"remastered</w>\": 24932,\n  \"rematch</w>\": 26473,\n  \"rembrandt</w>\": 45972,\n  \"reme\": 20071,\n  \"remedi\": 18442,\n  \"remedies</w>\": 25581,\n  \"remedy</w>\": 25794,\n  \"remem\": 7966,\n  \"rememb\": 7062,\n  \"remember\": 22045,\n  \"remember</w>\": 2195,\n  \"remembered</w>\": 11763,\n  \"remembering</w>\": 8135,\n  \"remembers</w>\": 12551,\n  \"remembrance\": 40321,\n  \"remembrance</w>\": 15860,\n  \"remembranceday</w>\": 48333,\n  \"rement</w>\": 7173,\n  \"rements</w>\": 12667,\n  \"remi</w>\": 41693,\n  \"remin\": 3216,\n  \"remind</w>\": 9868,\n  \"reminded</w>\": 12309,\n  \"reminder</w>\": 5565,\n  \"reminders</w>\": 34121,\n  \"reminding</w>\": 19976,\n  \"reminds</w>\": 8303,\n  \"remington</w>\": 43527,\n  \"reminis\": 17723,\n  \"reminiscent</w>\": 41704,\n  \"reminiscing</w>\": 32552,\n  \"remix</w>\": 8519,\n  \"remixes</w>\": 31011,\n  \"remn\": 29127,\n  \"remnants</w>\": 39032,\n  \"remo\": 4064,\n  \"remo</w>\": 33259,\n  \"remodel\": 34159,\n  \"remodel</w>\": 37495,\n  \"remodeling</w>\": 41432,\n  \"remote\": 47163,\n  \"remote</w>\": 9687,\n  \"remotely</w>\": 32375,\n  \"removable</w>\": 44095,\n  \"removal</w>\": 13679,\n  \"remove</w>\": 9709,\n  \"removed</w>\": 10289,\n  \"remover</w>\": 44267,\n  \"removes</w>\": 29018,\n  \"removing</w>\": 18504,\n  \"remy</w>\": 30434,\n  \"ren\": 737,\n  \"ren</w>\": 2596,\n  \"rena</w>\": 12591,\n  \"renais\": 15409,\n  \"renaissance</w>\": 16007,\n  \"renal</w>\": 36096,\n  \"renamed</w>\": 31535,\n  \"renault</w>\": 17600,\n  \"rence\": 19245,\n  \"rence</w>\": 1553,\n  \"rences</w>\": 8545,\n  \"rend\": 33932,\n  \"rend</w>\": 22851,\n  \"render\": 39752,\n  \"render</w>\": 13024,\n  \"rendered</w>\": 23652,\n  \"rendering</w>\": 21339,\n  \"renders</w>\": 39419,\n  \"rendez\": 43293,\n  \"rendezvous</w>\": 45644,\n  \"rendition</w>\": 28891,\n  \"rendon</w>\": 46272,\n  \"rendous</w>\": 49403,\n  \"rends</w>\": 38842,\n  \"rene\": 15438,\n  \"rene</w>\": 12597,\n  \"renee</w>\": 23480,\n  \"reneg\": 29909,\n  \"renegade</w>\": 41229,\n  \"renergy</w>\": 37151,\n  \"renew\": 6645,\n  \"renew</w>\": 22015,\n  \"renewable\": 31269,\n  \"renewable</w>\": 15941,\n  \"renewableenergy</w>\": 33357,\n  \"renewables</w>\": 21619,\n  \"renewal</w>\": 21270,\n  \"renewed</w>\": 20524,\n  \"renfre\": 45043,\n  \"reng</w>\": 36795,\n  \"reno\": 11520,\n  \"reno</w>\": 12831,\n  \"renov\": 9984,\n  \"renovated</w>\": 23839,\n  \"renovation</w>\": 17121,\n  \"renovations</w>\": 31311,\n  \"renowned</w>\": 14727,\n  \"rens</w>\": 18183,\n  \"renshaw</w>\": 44445,\n  \"rent\": 17377,\n  \"rent</w>\": 1609,\n  \"rental</w>\": 12193,\n  \"rentals</w>\": 24105,\n  \"rented</w>\": 35932,\n  \"rential</w>\": 31692,\n  \"renting</w>\": 37662,\n  \"rently</w>\": 2615,\n  \"rents</w>\": 31109,\n  \"reo\": 15963,\n  \"reo</w>\": 26854,\n  \"reon</w>\": 15761,\n  \"reopen</w>\": 26883,\n  \"reopened</w>\": 32868,\n  \"reopening</w>\": 36663,\n  \"reopens</w>\": 40644,\n  \"rep\": 4229,\n  \"rep</w>\": 6487,\n  \"repair</w>\": 8419,\n  \"repaired</w>\": 32953,\n  \"repairing</w>\": 38534,\n  \"repairs</w>\": 16297,\n  \"repar\": 34065,\n  \"repe\": 5785,\n  \"repeal\": 42622,\n  \"repeal</w>\": 23938,\n  \"repeat</w>\": 10192,\n  \"repeated</w>\": 27904,\n  \"repeatedly</w>\": 26630,\n  \"repeating</w>\": 33834,\n  \"repeats</w>\": 39158,\n  \"repell\": 46235,\n  \"repent\": 47261,\n  \"reper\": 29085,\n  \"repet\": 38533,\n  \"repl\": 13047,\n  \"replac\": 6069,\n  \"replace</w>\": 9466,\n  \"replaceable</w>\": 47762,\n  \"replaced</w>\": 13200,\n  \"replacement</w>\": 10835,\n  \"replaces</w>\": 27781,\n  \"replacing</w>\": 18647,\n  \"replay</w>\": 16875,\n  \"repleni\": 44839,\n  \"replic\": 21651,\n  \"replica</w>\": 18125,\n  \"replied</w>\": 24238,\n  \"replies</w>\": 18808,\n  \"reply</w>\": 8965,\n  \"replying</w>\": 47599,\n  \"repor\": 2628,\n  \"report</w>\": 2417,\n  \"reported</w>\": 7598,\n  \"reportedly</w>\": 10953,\n  \"reporter</w>\": 11019,\n  \"reporters</w>\": 18454,\n  \"reporting</w>\": 9218,\n  \"reports</w>\": 4908,\n  \"reposit\": 41276,\n  \"repository</w>\": 46977,\n  \"repost\": 33147,\n  \"repost</w>\": 7217,\n  \"repostapp</w>\": 38388,\n  \"reposting</w>\": 20223,\n  \"reppin</w>\": 19163,\n  \"repping</w>\": 22574,\n  \"repre\": 3397,\n  \"represent\": 8293,\n  \"represent</w>\": 8406,\n  \"representation</w>\": 13520,\n  \"representative</w>\": 13175,\n  \"representatives</w>\": 15591,\n  \"represented</w>\": 12299,\n  \"representing</w>\": 7561,\n  \"represents</w>\": 14433,\n  \"repri\": 31854,\n  \"reproduction</w>\": 35714,\n  \"reproductive</w>\": 25522,\n  \"reps</w>\": 14265,\n  \"reptile</w>\": 36938,\n  \"reptiles</w>\": 38679,\n  \"republic\": 6376,\n  \"republic</w>\": 7185,\n  \"republican</w>\": 9842,\n  \"republicans</w>\": 12384,\n  \"repur\": 41852,\n  \"req</w>\": 42411,\n  \"requ\": 10664,\n  \"reque\": 9539,\n  \"request</w>\": 7813,\n  \"requested</w>\": 16199,\n  \"requesting</w>\": 33245,\n  \"requests</w>\": 17087,\n  \"requi\": 4863,\n  \"requiem</w>\": 40316,\n  \"require</w>\": 14437,\n  \"required</w>\": 8500,\n  \"requirement</w>\": 27146,\n  \"requirements</w>\": 12860,\n  \"requires</w>\": 13396,\n  \"requiring</w>\": 33425,\n  \"requis\": 42602,\n  \"rer\": 41295,\n  \"rer</w>\": 3407,\n  \"rera</w>\": 14301,\n  \"rero</w>\": 21860,\n  \"rers</w>\": 18869,\n  \"res\": 4466,\n  \"res</w>\": 934,\n  \"resc\": 3956,\n  \"rescheduled</w>\": 43553,\n  \"rescu\": 8618,\n  \"rescue\": 28567,\n  \"rescue</w>\": 5718,\n  \"rescued</w>\": 11919,\n  \"rescues</w>\": 32439,\n  \"rescuing</w>\": 43770,\n  \"rese\": 13000,\n  \"resear\": 6090,\n  \"research\": 25694,\n  \"research</w>\": 2379,\n  \"researched</w>\": 42733,\n  \"researcher</w>\": 18334,\n  \"researchers</w>\": 9522,\n  \"researching</w>\": 24544,\n  \"reseller</w>\": 35391,\n  \"resemb\": 16916,\n  \"resemblance</w>\": 26856,\n  \"resemble</w>\": 37230,\n  \"resembles</w>\": 35417,\n  \"reser\": 16420,\n  \"reserv\": 11906,\n  \"reservation</w>\": 20289,\n  \"reservations</w>\": 19307,\n  \"reserve</w>\": 6911,\n  \"reserved</w>\": 19796,\n  \"reserves</w>\": 19705,\n  \"reservoir</w>\": 20574,\n  \"reset</w>\": 26250,\n  \"resh</w>\": 47432,\n  \"reshi</w>\": 39435,\n  \"resi\": 2152,\n  \"residen\": 22311,\n  \"residence</w>\": 11672,\n  \"residences</w>\": 38855,\n  \"residency</w>\": 18545,\n  \"resident</w>\": 9016,\n  \"residente\": 44637,\n  \"residentevil</w>\": 48393,\n  \"residential</w>\": 11002,\n  \"residents</w>\": 6008,\n  \"resign</w>\": 23584,\n  \"resignation</w>\": 24779,\n  \"resigned</w>\": 31014,\n  \"resigns</w>\": 29738,\n  \"resil\": 10932,\n  \"resili\": 39212,\n  \"resilience</w>\": 15271,\n  \"resilient</w>\": 24694,\n  \"resin</w>\": 24156,\n  \"resist\": 37345,\n  \"resist</w>\": 9587,\n  \"resistance</w>\": 7392,\n  \"resistant</w>\": 17542,\n  \"resisting</w>\": 43679,\n  \"resolution</w>\": 9977,\n  \"resolutions</w>\": 26816,\n  \"resolve</w>\": 20787,\n  \"resolved</w>\": 28807,\n  \"reson\": 18092,\n  \"resonance</w>\": 42310,\n  \"resort</w>\": 6594,\n  \"resorts</w>\": 18839,\n  \"resource\": 43729,\n  \"resource</w>\": 9760,\n  \"resources</w>\": 6723,\n  \"respec\": 7466,\n  \"respect\": 31411,\n  \"respect</w>\": 4916,\n  \"respected</w>\": 19126,\n  \"respectful</w>\": 24379,\n  \"respecting</w>\": 36172,\n  \"respective</w>\": 25817,\n  \"respectively</w>\": 28794,\n  \"respects</w>\": 23553,\n  \"respir\": 20771,\n  \"respiratory</w>\": 24483,\n  \"respon\": 2421,\n  \"respond</w>\": 12355,\n  \"responded</w>\": 21121,\n  \"respondents</w>\": 49253,\n  \"responders</w>\": 25155,\n  \"responding</w>\": 18037,\n  \"responds</w>\": 17436,\n  \"response</w>\": 5399,\n  \"responses</w>\": 19006,\n  \"responsi\": 5490,\n  \"responsibilities</w>\": 30375,\n  \"responsibility</w>\": 11272,\n  \"responsible</w>\": 8936,\n  \"responsibly</w>\": 33675,\n  \"responsive</w>\": 21544,\n  \"ress\": 34651,\n  \"ress</w>\": 13629,\n  \"resso</w>\": 15133,\n  \"rest\": 10974,\n  \"rest</w>\": 2539,\n  \"restart</w>\": 37378,\n  \"restaur\": 3775,\n  \"restaurant\": 41930,\n  \"restaurant</w>\": 4489,\n  \"restaurants</w>\": 11714,\n  \"rested</w>\": 46020,\n  \"resting</w>\": 18044,\n  \"restless</w>\": 36724,\n  \"restling</w>\": 30076,\n  \"resto\": 11118,\n  \"resto</w>\": 41666,\n  \"restock</w>\": 34060,\n  \"restocked</w>\": 36966,\n  \"restor\": 8984,\n  \"restoration</w>\": 11989,\n  \"restorative</w>\": 46509,\n  \"restore</w>\": 14008,\n  \"restored</w>\": 14238,\n  \"restoring</w>\": 24406,\n  \"restra\": 25424,\n  \"restric\": 11036,\n  \"restricted</w>\": 27197,\n  \"restriction</w>\": 44282,\n  \"restrictions</w>\": 19884,\n  \"restroom</w>\": 43423,\n  \"restructuring</w>\": 43260,\n  \"rests</w>\": 33775,\n  \"resu\": 10095,\n  \"resul\": 2655,\n  \"result</w>\": 5659,\n  \"resulted</w>\": 26449,\n  \"resulting</w>\": 24581,\n  \"results</w>\": 3790,\n  \"resume</w>\": 15077,\n  \"resumes</w>\": 30268,\n  \"resur\": 14865,\n  \"resurg\": 45962,\n  \"resurgence</w>\": 47692,\n  \"resurrec\": 18487,\n  \"resurrection</w>\": 25811,\n  \"resusc\": 47523,\n  \"ret\": 20500,\n  \"ret</w>\": 10048,\n  \"reta\": 20153,\n  \"retail\": 14910,\n  \"retail</w>\": 6455,\n  \"retailer</w>\": 22549,\n  \"retailers</w>\": 19418,\n  \"retain</w>\": 24430,\n  \"retained</w>\": 42737,\n  \"retaining</w>\": 35571,\n  \"retains</w>\": 42583,\n  \"retali\": 33101,\n  \"retar\": 29964,\n  \"retarded</w>\": 44111,\n  \"retention</w>\": 26247,\n  \"rethink</w>\": 29078,\n  \"rethinking</w>\": 42951,\n  \"reti\": 4721,\n  \"retin\": 31270,\n  \"retina</w>\": 36919,\n  \"retire</w>\": 18846,\n  \"retired</w>\": 11477,\n  \"retirement</w>\": 9205,\n  \"retires</w>\": 29060,\n  \"retiring</w>\": 21200,\n  \"retrac\": 32735,\n  \"retreat</w>\": 11210,\n  \"retri\": 16918,\n  \"retriever</w>\": 28394,\n  \"retro\": 6535,\n  \"retro</w>\": 7755,\n  \"retrogamer</w>\": 47220,\n  \"retrogaming</w>\": 11316,\n  \"retrospective</w>\": 27105,\n  \"rett\": 41082,\n  \"rett</w>\": 8425,\n  \"rette</w>\": 33066,\n  \"return\": 43042,\n  \"return</w>\": 3458,\n  \"returned</w>\": 10476,\n  \"returning</w>\": 9290,\n  \"returns</w>\": 5020,\n  \"retwee\": 48190,\n  \"retweet</w>\": 3195,\n  \"retweeted</w>\": 12705,\n  \"retweeting</w>\": 32345,\n  \"retweets</w>\": 10160,\n  \"rety</w>\": 41550,\n  \"reu\": 20255,\n  \"reu</w>\": 40371,\n  \"reuben</w>\": 40450,\n  \"reunion</w>\": 10247,\n  \"reunite</w>\": 26179,\n  \"reunited</w>\": 13516,\n  \"reusable</w>\": 30395,\n  \"reuse</w>\": 26535,\n  \"reut\": 15210,\n  \"reuters</w>\": 15569,\n  \"rev\": 8424,\n  \"rev</w>\": 11789,\n  \"revamp</w>\": 29819,\n  \"revamped</w>\": 36420,\n  \"revan</w>\": 45277,\n  \"reve\": 3115,\n  \"reveal</w>\": 8052,\n  \"revealed</w>\": 7171,\n  \"revealing</w>\": 21321,\n  \"reveals</w>\": 6621,\n  \"revel\": 14133,\n  \"revelation</w>\": 24053,\n  \"revelations</w>\": 36163,\n  \"reven\": 10171,\n  \"revenge</w>\": 12717,\n  \"revenue</w>\": 10637,\n  \"revenues</w>\": 33348,\n  \"rever\": 14829,\n  \"rever</w>\": 41913,\n  \"revere</w>\": 44187,\n  \"reverend</w>\": 34407,\n  \"revers\": 20726,\n  \"reversal</w>\": 33367,\n  \"reverse</w>\": 12812,\n  \"reversed</w>\": 42485,\n  \"reversi\": 31601,\n  \"reversible</w>\": 34212,\n  \"revi\": 8317,\n  \"review</w>\": 2268,\n  \"reviewed</w>\": 16678,\n  \"reviewer</w>\": 36409,\n  \"reviewers</w>\": 48195,\n  \"reviewing</w>\": 20458,\n  \"reviews</w>\": 7227,\n  \"revise</w>\": 46801,\n  \"revised</w>\": 22806,\n  \"revising</w>\": 46882,\n  \"revision</w>\": 20335,\n  \"revisit</w>\": 26568,\n  \"revisited</w>\": 34302,\n  \"revisiting</w>\": 33144,\n  \"revit\": 26367,\n  \"revitalization</w>\": 46923,\n  \"revival</w>\": 14142,\n  \"revive</w>\": 26450,\n  \"revived</w>\": 42912,\n  \"revo\": 28660,\n  \"revol\": 13447,\n  \"revolt</w>\": 31697,\n  \"revolu\": 4900,\n  \"revolution\": 17699,\n  \"revolution</w>\": 6644,\n  \"revolutionary</w>\": 14734,\n  \"revolver</w>\": 38747,\n  \"revolving</w>\": 47230,\n  \"revs</w>\": 49286,\n  \"revue</w>\": 43428,\n  \"rew</w>\": 37564,\n  \"rewar\": 15857,\n  \"reward</w>\": 11223,\n  \"rewarded</w>\": 27163,\n  \"rewarding</w>\": 23351,\n  \"rewards</w>\": 15235,\n  \"rewatch</w>\": 35610,\n  \"rewatching</w>\": 41287,\n  \"rewind</w>\": 26867,\n  \"rewrite</w>\": 45218,\n  \"rex\": 13002,\n  \"rex</w>\": 10904,\n  \"rexperience</w>\": 33924,\n  \"rey\": 9681,\n  \"rey</w>\": 4517,\n  \"reyes</w>\": 18255,\n  \"reykja\": 47571,\n  \"reyn\": 11998,\n  \"reynolds</w>\": 14309,\n  \"reys</w>\": 48284,\n  \"rez\": 27597,\n  \"rez</w>\": 15192,\n  \"reza</w>\": 35888,\n  \"rf\": 35529,\n  \"rf</w>\": 16368,\n  \"rfc</w>\": 19003,\n  \"rfid</w>\": 40204,\n  \"rg\": 33055,\n  \"rg</w>\": 14897,\n  \"rgb</w>\": 36128,\n  \"rgv</w>\": 33685,\n  \"rh\": 8745,\n  \"rh</w>\": 22404,\n  \"rha\": 19473,\n  \"rhapso\": 32532,\n  \"rhapsody</w>\": 35774,\n  \"rhe\": 9186,\n  \"rhea</w>\": 28612,\n  \"rhetor\": 24359,\n  \"rhetoric</w>\": 29985,\n  \"rhett</w>\": 42984,\n  \"rheu\": 42953,\n  \"rhi\": 21212,\n  \"rhin\": 12269,\n  \"rhine\": 22863,\n  \"rhine</w>\": 44833,\n  \"rhinestone</w>\": 30450,\n  \"rhino\": 41744,\n  \"rhino</w>\": 20056,\n  \"rhinos</w>\": 30671,\n  \"rho\": 7637,\n  \"rhode\": 39302,\n  \"rhode</w>\": 27907,\n  \"rhodes</w>\": 17785,\n  \"rhon\": 25882,\n  \"rhonda</w>\": 46100,\n  \"rhp</w>\": 27199,\n  \"rhs</w>\": 24551,\n  \"rhu\": 23897,\n  \"rhubarb</w>\": 30213,\n  \"rhy\": 7740,\n  \"rhyme</w>\": 37356,\n  \"rhymes</w>\": 33143,\n  \"rhys</w>\": 28647,\n  \"rhyth\": 27069,\n  \"rhythm</w>\": 16172,\n  \"rhythmic</w>\": 46386,\n  \"rhythms</w>\": 40872,\n  \"ri\": 553,\n  \"ri</w>\": 2574,\n  \"ria</w>\": 3650,\n  \"rial</w>\": 15200,\n  \"rian</w>\": 7788,\n  \"rib\": 44634,\n  \"rib</w>\": 18298,\n  \"riba</w>\": 44992,\n  \"ribb\": 10081,\n  \"ribbon</w>\": 12114,\n  \"ribbons</w>\": 35271,\n  \"ribe\": 46115,\n  \"ribs</w>\": 17519,\n  \"ric\": 920,\n  \"ric</w>\": 4798,\n  \"rica</w>\": 14230,\n  \"rical</w>\": 18109,\n  \"rican</w>\": 30958,\n  \"ricardo</w>\": 23140,\n  \"ricci\": 35783,\n  \"ricciardo</w>\": 49282,\n  \"rice\": 36362,\n  \"rice</w>\": 4741,\n  \"rich\": 5223,\n  \"rich</w>\": 4021,\n  \"richar\": 9350,\n  \"richard\": 9080,\n  \"richard</w>\": 4470,\n  \"richards</w>\": 11372,\n  \"richardson</w>\": 15984,\n  \"riche\": 23286,\n  \"richer</w>\": 34138,\n  \"riches</w>\": 37093,\n  \"richest</w>\": 25572,\n  \"richi\": 38934,\n  \"richie</w>\": 19797,\n  \"richland</w>\": 43079,\n  \"richmond\": 34143,\n  \"richmond</w>\": 11292,\n  \"richter</w>\": 37591,\n  \"rick\": 6237,\n  \"rick</w>\": 3064,\n  \"ricket\": 46161,\n  \"ricket</w>\": 23671,\n  \"ricks</w>\": 23111,\n  \"ricky\": 19188,\n  \"ricky</w>\": 12814,\n  \"rico\": 37962,\n  \"rico</w>\": 11362,\n  \"ricotta</w>\": 38473,\n  \"rics</w>\": 7353,\n  \"ricul\": 6980,\n  \"rid\": 18103,\n  \"rid</w>\": 9874,\n  \"ridd\": 21990,\n  \"ridden</w>\": 32025,\n  \"riddle</w>\": 31839,\n  \"ride\": 15816,\n  \"ride</w>\": 2994,\n  \"rider\": 31056,\n  \"rider</w>\": 9707,\n  \"riders</w>\": 10826,\n  \"rides</w>\": 11308,\n  \"ridg\": 42646,\n  \"ridge\": 16580,\n  \"ridge</w>\": 6352,\n  \"ridic\": 9624,\n  \"ridiculous</w>\": 12659,\n  \"ridiculously</w>\": 25661,\n  \"ridin</w>\": 47869,\n  \"riding</w>\": 6765,\n  \"ridley</w>\": 27883,\n  \"rie\": 14824,\n  \"rie</w>\": 5322,\n  \"ried</w>\": 7552,\n  \"riel</w>\": 26696,\n  \"rien</w>\": 35237,\n  \"rier\": 40714,\n  \"rier</w>\": 13336,\n  \"ries\": 28179,\n  \"ries</w>\": 3059,\n  \"riesling</w>\": 36372,\n  \"rif\": 7044,\n  \"riff</w>\": 30359,\n  \"rifle</w>\": 15354,\n  \"rifles</w>\": 25678,\n  \"rift</w>\": 26681,\n  \"rig\": 18462,\n  \"rig</w>\": 13871,\n  \"riga</w>\": 36626,\n  \"rigged</w>\": 35897,\n  \"rigging</w>\": 38160,\n  \"riggs</w>\": 40328,\n  \"righ\": 15391,\n  \"right\": 13341,\n  \"right</w>\": 1155,\n  \"righte\": 20762,\n  \"righteous</w>\": 28169,\n  \"righteousness</w>\": 42481,\n  \"rightful</w>\": 42601,\n  \"rightly</w>\": 42669,\n  \"rights</w>\": 3336,\n  \"rigid</w>\": 43138,\n  \"rigor\": 36788,\n  \"rigorous</w>\": 41654,\n  \"rigs</w>\": 42893,\n  \"rihanna</w>\": 13744,\n  \"rij\": 41097,\n  \"rik\": 31136,\n  \"rik</w>\": 27832,\n  \"rika</w>\": 28580,\n  \"ril\": 12270,\n  \"ril</w>\": 2388,\n  \"riley\": 35056,\n  \"riley</w>\": 12260,\n  \"rill</w>\": 23705,\n  \"rilla\": 43956,\n  \"rilla</w>\": 18685,\n  \"rim\": 28147,\n  \"rim</w>\": 12199,\n  \"rime</w>\": 27064,\n  \"rimin\": 11527,\n  \"rimo</w>\": 47817,\n  \"rims</w>\": 34327,\n  \"rin\": 5859,\n  \"rin</w>\": 11739,\n  \"rina</w>\": 12869,\n  \"rine</w>\": 24952,\n  \"ring\": 8318,\n  \"ring</w>\": 2540,\n  \"ringed</w>\": 44712,\n  \"ringer</w>\": 35761,\n  \"ringing</w>\": 26035,\n  \"ringo</w>\": 38845,\n  \"rings</w>\": 5751,\n  \"rington</w>\": 12455,\n  \"rink</w>\": 21497,\n  \"rinka</w>\": 47316,\n  \"rino</w>\": 47188,\n  \"rinse</w>\": 48320,\n  \"rio\": 15681,\n  \"rio</w>\": 5782,\n  \"rion\": 31623,\n  \"rion</w>\": 34046,\n  \"rios</w>\": 32814,\n  \"riot\": 32636,\n  \"riot</w>\": 14218,\n  \"riots</w>\": 24844,\n  \"rious</w>\": 6340,\n  \"rip\": 10353,\n  \"rip</w>\": 4243,\n  \"ripe</w>\": 22832,\n  \"ripley</w>\": 41589,\n  \"ripp\": 25276,\n  \"ripped</w>\": 17815,\n  \"ripper</w>\": 35347,\n  \"ripping</w>\": 29126,\n  \"ripple</w>\": 24825,\n  \"rips</w>\": 30182,\n  \"rir</w>\": 36792,\n  \"ris\": 6108,\n  \"ris</w>\": 1999,\n  \"rise\": 13641,\n  \"rise</w>\": 3151,\n  \"risen</w>\": 23653,\n  \"risers</w>\": 44983,\n  \"rises</w>\": 13362,\n  \"riseup</w>\": 35760,\n  \"rish\": 18378,\n  \"rish</w>\": 18927,\n  \"rishi\": 48434,\n  \"rising\": 30452,\n  \"rising</w>\": 5448,\n  \"risis</w>\": 37998,\n  \"risk\": 27967,\n  \"risk</w>\": 4213,\n  \"risking</w>\": 48155,\n  \"risks</w>\": 12474,\n  \"risky</w>\": 27630,\n  \"risotto</w>\": 31471,\n  \"rist</w>\": 40610,\n  \"rit\": 5156,\n  \"rit</w>\": 17333,\n  \"rita</w>\": 16178,\n  \"ritchie</w>\": 30997,\n  \"rite\": 39318,\n  \"rite</w>\": 18429,\n  \"rites</w>\": 36160,\n  \"rith\": 48169,\n  \"rith</w>\": 48850,\n  \"riti\": 32904,\n  \"rito</w>\": 19379,\n  \"ritos</w>\": 33507,\n  \"ritt</w>\": 26092,\n  \"ritter</w>\": 34854,\n  \"ritu\": 13391,\n  \"ritual</w>\": 19712,\n  \"rituals</w>\": 31145,\n  \"ritz\": 39151,\n  \"ritz</w>\": 25627,\n  \"rium</w>\": 33884,\n  \"riv\": 25113,\n  \"rival\": 13412,\n  \"rival</w>\": 15629,\n  \"rivalry</w>\": 19511,\n  \"rivals</w>\": 15135,\n  \"rive\": 27588,\n  \"rive</w>\": 34917,\n  \"river\": 5239,\n  \"river</w>\": 2473,\n  \"rivera</w>\": 18275,\n  \"riverdale</w>\": 28304,\n  \"riverfront</w>\": 44439,\n  \"rivers</w>\": 10723,\n  \"riverside</w>\": 15809,\n  \"riveting</w>\": 44024,\n  \"riviera</w>\": 25851,\n  \"rix\": 43407,\n  \"rix</w>\": 9483,\n  \"riya</w>\": 36908,\n  \"riyad\": 31564,\n  \"riyadh</w>\": 33577,\n  \"riz\": 18426,\n  \"riz</w>\": 35411,\n  \"rizal</w>\": 41555,\n  \"rizio</w>\": 40191,\n  \"rizz\": 34826,\n  \"rizzo</w>\": 49076,\n  \"rj\": 26016,\n  \"rj</w>\": 20949,\n  \"rk\": 38725,\n  \"rk</w>\": 21422,\n  \"rl\": 18041,\n  \"rl</w>\": 14590,\n  \"rlly</w>\": 43222,\n  \"rly</w>\": 25954,\n  \"rm\": 20202,\n  \"rm</w>\": 8431,\n  \"rmb</w>\": 49097,\n  \"rms</w>\": 40529,\n  \"rn\": 13206,\n  \"rn</w>\": 7666,\n  \"rna</w>\": 24566,\n  \"rnb</w>\": 31556,\n  \"rnc</w>\": 35309,\n  \"rnli</w>\": 29748,\n  \"ro\": 532,\n  \"ro</w>\": 2795,\n  \"roa\": 8313,\n  \"roach</w>\": 31073,\n  \"road\": 4370,\n  \"road</w>\": 1759,\n  \"roadhouse</w>\": 47891,\n  \"roadmap</w>\": 30111,\n  \"roads</w>\": 6189,\n  \"roadsafety</w>\": 39992,\n  \"roadshow</w>\": 21168,\n  \"roadside</w>\": 26928,\n  \"roadster</w>\": 28920,\n  \"roadto\": 24681,\n  \"roadtrip</w>\": 15094,\n  \"roadway</w>\": 42744,\n  \"roam</w>\": 34045,\n  \"roaming</w>\": 29240,\n  \"roano\": 34184,\n  \"roanoke</w>\": 36587,\n  \"roar\": 34193,\n  \"roar</w>\": 18483,\n  \"roaring</w>\": 26428,\n  \"roast</w>\": 11404,\n  \"roasted</w>\": 10479,\n  \"roasting</w>\": 32228,\n  \"rob\": 2668,\n  \"rob</w>\": 6442,\n  \"robb\": 14059,\n  \"robb</w>\": 39673,\n  \"robbed</w>\": 24163,\n  \"robber</w>\": 35545,\n  \"robbers</w>\": 40852,\n  \"robbery</w>\": 16393,\n  \"robbi\": 44898,\n  \"robbie\": 37200,\n  \"robbie</w>\": 15970,\n  \"robbing</w>\": 47569,\n  \"robbins</w>\": 23461,\n  \"robby</w>\": 44128,\n  \"robe</w>\": 23116,\n  \"rober\": 4532,\n  \"robert\": 8811,\n  \"robert</w>\": 3929,\n  \"roberta</w>\": 43373,\n  \"roberto\": 42645,\n  \"roberto</w>\": 16227,\n  \"roberts</w>\": 10366,\n  \"robertson</w>\": 17643,\n  \"robes</w>\": 29304,\n  \"robi</w>\": 16743,\n  \"robin\": 6681,\n  \"robin</w>\": 7988,\n  \"robins</w>\": 35502,\n  \"robinson</w>\": 8523,\n  \"robles</w>\": 47646,\n  \"roblo\": 27481,\n  \"roblox</w>\": 37798,\n  \"robo\": 4672,\n  \"robo</w>\": 36057,\n  \"robot\": 46089,\n  \"robot</w>\": 8797,\n  \"robotic</w>\": 23975,\n  \"robotics</w>\": 13546,\n  \"robots</w>\": 13473,\n  \"robson</w>\": 31113,\n  \"robust</w>\": 22780,\n  \"robyn</w>\": 34533,\n  \"roc\": 3268,\n  \"roc</w>\": 13776,\n  \"rocco</w>\": 30009,\n  \"roch\": 23788,\n  \"rochdale</w>\": 41880,\n  \"roche</w>\": 31776,\n  \"rochelle</w>\": 40161,\n  \"rochester</w>\": 18057,\n  \"rock\": 2640,\n  \"rock</w>\": 2172,\n  \"rockab\": 39353,\n  \"rockabilly</w>\": 45019,\n  \"rocke\": 19914,\n  \"rocked</w>\": 16116,\n  \"rockefeller</w>\": 35476,\n  \"rocker</w>\": 29008,\n  \"rockers</w>\": 32338,\n  \"rocket\": 25435,\n  \"rocket</w>\": 8383,\n  \"rockets</w>\": 13292,\n  \"rockford</w>\": 41039,\n  \"rockies</w>\": 20621,\n  \"rockin</w>\": 12073,\n  \"rocking</w>\": 7081,\n  \"rockn\": 24442,\n  \"rocknroll</w>\": 27840,\n  \"rocks</w>\": 6135,\n  \"rockstar\": 23603,\n  \"rockstar</w>\": 18000,\n  \"rockstargames</w>\": 27516,\n  \"rockstars</w>\": 46639,\n  \"rockthe\": 49363,\n  \"rockwell</w>\": 34747,\n  \"rocky\": 33481,\n  \"rocky</w>\": 9648,\n  \"rod\": 9712,\n  \"rod</w>\": 8291,\n  \"roddy</w>\": 42332,\n  \"rode</w>\": 18449,\n  \"rodeo</w>\": 18250,\n  \"rodgers</w>\": 17612,\n  \"rodi\": 49100,\n  \"rodney</w>\": 21753,\n  \"rodri\": 11053,\n  \"rodrigo</w>\": 33944,\n  \"rodriguez</w>\": 14057,\n  \"rods</w>\": 28618,\n  \"roe\": 27671,\n  \"roe</w>\": 9996,\n  \"rof\": 33029,\n  \"rofl</w>\": 48228,\n  \"roft</w>\": 45212,\n  \"rog\": 34269,\n  \"rog</w>\": 34017,\n  \"rogen</w>\": 23380,\n  \"roger\": 13929,\n  \"roger</w>\": 7735,\n  \"rogerfederer</w>\": 40182,\n  \"rogers</w>\": 10661,\n  \"rogue\": 32575,\n  \"rogue</w>\": 15162,\n  \"roh\": 14933,\n  \"roh</w>\": 29840,\n  \"rohan</w>\": 39848,\n  \"rohing\": 23600,\n  \"rohingya</w>\": 26146,\n  \"rohit\": 44649,\n  \"rohit</w>\": 24299,\n  \"roi</w>\": 21877,\n  \"rok</w>\": 36807,\n  \"rol\": 3393,\n  \"rol</w>\": 7818,\n  \"roland\": 33713,\n  \"roland</w>\": 19569,\n  \"role\": 18485,\n  \"role</w>\": 3414,\n  \"roles</w>\": 11871,\n  \"rolex</w>\": 21093,\n  \"rolf</w>\": 48606,\n  \"roll\": 4711,\n  \"roll</w>\": 3341,\n  \"rolled</w>\": 11982,\n  \"roller\": 21034,\n  \"roller</w>\": 12342,\n  \"rollercoaster</w>\": 38248,\n  \"rollers</w>\": 36941,\n  \"rollin</w>\": 27545,\n  \"rolling\": 24250,\n  \"rolling</w>\": 6347,\n  \"rollingstones</w>\": 41309,\n  \"rollins</w>\": 27724,\n  \"rollout</w>\": 47710,\n  \"rollover</w>\": 39214,\n  \"rolls</w>\": 8614,\n  \"rolltide</w>\": 28101,\n  \"rom\": 11377,\n  \"rom</w>\": 19205,\n  \"roma\": 44134,\n  \"roma</w>\": 11631,\n  \"romain</w>\": 48897,\n  \"roman\": 4416,\n  \"roman</w>\": 7370,\n  \"romance</w>\": 7215,\n  \"romania</w>\": 15884,\n  \"romanian</w>\": 30866,\n  \"romano</w>\": 38409,\n  \"romans</w>\": 23066,\n  \"romantic\": 41457,\n  \"romantic</w>\": 8821,\n  \"rome\": 9406,\n  \"rome</w>\": 5243,\n  \"romeo</w>\": 14429,\n  \"romero</w>\": 23694,\n  \"romney</w>\": 19287,\n  \"romo</w>\": 32248,\n  \"romper</w>\": 43699,\n  \"ron\": 2393,\n  \"ron</w>\": 3372,\n  \"rona</w>\": 42385,\n  \"ronal\": 46194,\n  \"ronald</w>\": 15683,\n  \"ronaldo</w>\": 13463,\n  \"ronan</w>\": 34971,\n  \"rond\": 31935,\n  \"ronda</w>\": 37436,\n  \"rondo</w>\": 43756,\n  \"rone\": 48082,\n  \"rone</w>\": 32763,\n  \"roni</w>\": 47234,\n  \"ronnie\": 45257,\n  \"ronnie</w>\": 16421,\n  \"rons</w>\": 19536,\n  \"ront</w>\": 48881,\n  \"roo\": 1249,\n  \"roo</w>\": 31227,\n  \"rood</w>\": 38007,\n  \"roof\": 9120,\n  \"roof</w>\": 6449,\n  \"roofing</w>\": 24415,\n  \"roofs</w>\": 34635,\n  \"rooftop</w>\": 16319,\n  \"rook</w>\": 35918,\n  \"rookie</w>\": 9771,\n  \"rookies</w>\": 31917,\n  \"room\": 8845,\n  \"room</w>\": 1530,\n  \"roomie</w>\": 36851,\n  \"roommate</w>\": 19825,\n  \"roommates</w>\": 37323,\n  \"rooms</w>\": 6328,\n  \"rooney</w>\": 17712,\n  \"roos</w>\": 32938,\n  \"roosevel\": 17644,\n  \"roosevelt</w>\": 18488,\n  \"rooster\": 46263,\n  \"rooster</w>\": 30926,\n  \"roosters</w>\": 43693,\n  \"root\": 25930,\n  \"root</w>\": 9728,\n  \"rooted</w>\": 30428,\n  \"rooting</w>\": 25523,\n  \"roots</w>\": 8084,\n  \"rop</w>\": 43401,\n  \"rope</w>\": 9953,\n  \"ropes</w>\": 30506,\n  \"ror\": 8668,\n  \"ror</w>\": 2843,\n  \"rors</w>\": 12072,\n  \"rory\": 42804,\n  \"rory</w>\": 17813,\n  \"ros\": 5288,\n  \"ros</w>\": 6930,\n  \"rosa</w>\": 14393,\n  \"rosal\": 30397,\n  \"rosario</w>\": 33640,\n  \"rosary</w>\": 33098,\n  \"rosberg</w>\": 46037,\n  \"rose\": 6146,\n  \"rose</w>\": 3568,\n  \"roseanne</w>\": 47528,\n  \"rosel\": 33616,\n  \"rosemary</w>\": 19472,\n  \"rosen\": 13214,\n  \"rosen</w>\": 36424,\n  \"rosenberg</w>\": 43558,\n  \"rosenthal</w>\": 46990,\n  \"roses</w>\": 9061,\n  \"rosetta</w>\": 43800,\n  \"rosewood</w>\": 38686,\n  \"rosie\": 43049,\n  \"rosie</w>\": 16888,\n  \"ross\": 8801,\n  \"ross</w>\": 2158,\n  \"rosse</w>\": 11602,\n  \"rossi</w>\": 24817,\n  \"rosso</w>\": 33023,\n  \"roster</w>\": 12487,\n  \"roswell</w>\": 45116,\n  \"rosy</w>\": 46705,\n  \"rosÃ©</w>\": 28006,\n  \"rot\": 10055,\n  \"rot</w>\": 9643,\n  \"rotar\": 45959,\n  \"rotary</w>\": 14654,\n  \"rotating</w>\": 32265,\n  \"rotation</w>\": 18089,\n  \"rotc</w>\": 32252,\n  \"roth\": 17741,\n  \"roth</w>\": 19139,\n  \"rother\": 23174,\n  \"rotherham</w>\": 37687,\n  \"rothschild</w>\": 45089,\n  \"roti</w>\": 46940,\n  \"roto\": 34698,\n  \"rotor</w>\": 42991,\n  \"rots</w>\": 16642,\n  \"rott\": 34806,\n  \"rotten</w>\": 24324,\n  \"rotter\": 22614,\n  \"rotterdam</w>\": 23422,\n  \"rotun\": 42970,\n  \"rou\": 2964,\n  \"rou</w>\": 34783,\n  \"roud</w>\": 28375,\n  \"rouge</w>\": 16209,\n  \"rough\": 11699,\n  \"rough</w>\": 8511,\n  \"roughly</w>\": 21910,\n  \"roughs</w>\": 37598,\n  \"rouhani</w>\": 39912,\n  \"roulette</w>\": 39930,\n  \"roun\": 5602,\n  \"round\": 9403,\n  \"round</w>\": 2522,\n  \"roundabout</w>\": 29953,\n  \"rounded</w>\": 26973,\n  \"rounder</w>\": 37024,\n  \"rounding</w>\": 40208,\n  \"rounds</w>\": 11242,\n  \"roundtable</w>\": 19386,\n  \"roundup</w>\": 17503,\n  \"roup</w>\": 29220,\n  \"rourke</w>\": 38753,\n  \"rous\": 33645,\n  \"rous</w>\": 34531,\n  \"rousey</w>\": 46267,\n  \"rout\": 7502,\n  \"rout</w>\": 41778,\n  \"route</w>\": 5261,\n  \"router</w>\": 29962,\n  \"routes</w>\": 14923,\n  \"routine</w>\": 12319,\n  \"routines</w>\": 44074,\n  \"routing</w>\": 44086,\n  \"roux</w>\": 43416,\n  \"rov</w>\": 23971,\n  \"rove</w>\": 30130,\n  \"rover</w>\": 12776,\n  \"rovers</w>\": 16373,\n  \"row\": 5275,\n  \"row</w>\": 1044,\n  \"rowan</w>\": 26240,\n  \"rowdy</w>\": 32141,\n  \"rowe</w>\": 28323,\n  \"rowed</w>\": 22615,\n  \"rower</w>\": 43345,\n  \"rowers</w>\": 41806,\n  \"rowing</w>\": 12807,\n  \"rowland</w>\": 33037,\n  \"rowley</w>\": 48793,\n  \"rowling</w>\": 29371,\n  \"rown\": 22287,\n  \"rown</w>\": 25060,\n  \"rows</w>\": 9409,\n  \"rox\": 14111,\n  \"rox</w>\": 41033,\n  \"roxy</w>\": 28093,\n  \"roy\": 2128,\n  \"roy</w>\": 6354,\n  \"royal\": 6691,\n  \"royal</w>\": 3853,\n  \"royale</w>\": 20630,\n  \"royalnavy</w>\": 41545,\n  \"royals</w>\": 13335,\n  \"royalties</w>\": 48660,\n  \"royalty</w>\": 18296,\n  \"royalwedding</w>\": 27461,\n  \"royce</w>\": 18444,\n  \"royd</w>\": 41476,\n  \"royo</w>\": 39357,\n  \"roz\": 28989,\n  \"roz</w>\": 37250,\n  \"rp\": 17305,\n  \"rp</w>\": 8174,\n  \"rpa</w>\": 41872,\n  \"rpg</w>\": 12445,\n  \"rpm</w>\": 23715,\n  \"rps</w>\": 49215,\n  \"rr\": 5311,\n  \"rr</w>\": 9126,\n  \"rrp</w>\": 36967,\n  \"rrr</w>\": 18267,\n  \"rrrr\": 25561,\n  \"rrrr</w>\": 34444,\n  \"rs\": 6978,\n  \"rs</w>\": 1724,\n  \"rsa</w>\": 29437,\n  \"rsc</w>\": 48524,\n  \"rsd</w>\": 34426,\n  \"rsi</w>\": 39046,\n  \"rsl</w>\": 44752,\n  \"rsp\": 16381,\n  \"rspb\": 38508,\n  \"rspb</w>\": 36727,\n  \"rspca</w>\": 45643,\n  \"rss\": 46466,\n  \"rss</w>\": 22350,\n  \"rstats</w>\": 38700,\n  \"rsvp</w>\": 9774,\n  \"rt\": 8959,\n  \"rt</w>\": 8991,\n  \"rtc</w>\": 31648,\n  \"rte\": 33822,\n  \"rte</w>\": 23322,\n  \"rtg</w>\": 22028,\n  \"rti</w>\": 47549,\n  \"rtr</w>\": 43999,\n  \"rts</w>\": 8496,\n  \"rtw</w>\": 34673,\n  \"ru\": 681,\n  \"ru</w>\": 13735,\n  \"rub\": 15862,\n  \"rub</w>\": 22586,\n  \"rubb\": 19597,\n  \"rubbed</w>\": 45239,\n  \"rubber\": 31131,\n  \"rubber</w>\": 11331,\n  \"rubbing</w>\": 41262,\n  \"rubbish</w>\": 21108,\n  \"rubble</w>\": 42230,\n  \"ruben\": 44058,\n  \"ruben</w>\": 29722,\n  \"rubi\": 27856,\n  \"rubin</w>\": 34128,\n  \"rubio</w>\": 24244,\n  \"rubs</w>\": 43422,\n  \"ruby\": 24552,\n  \"ruby</w>\": 11493,\n  \"ruck\": 27449,\n  \"rucker</w>\": 45402,\n  \"rud\": 35256,\n  \"rudd</w>\": 31836,\n  \"rude</w>\": 16548,\n  \"rudi\": 48360,\n  \"rudol\": 40927,\n  \"rudolf</w>\": 46835,\n  \"rudolph</w>\": 30119,\n  \"rudy\": 38226,\n  \"rudy</w>\": 22131,\n  \"rue\": 38024,\n  \"rue</w>\": 19276,\n  \"rufc</w>\": 45084,\n  \"ruff\": 28177,\n  \"ruff</w>\": 30304,\n  \"rufus</w>\": 39322,\n  \"rug\": 4217,\n  \"rug</w>\": 19220,\n  \"rugby\": 15091,\n  \"rugby</w>\": 4964,\n  \"rugbyleague</w>\": 44419,\n  \"ruger</w>\": 48655,\n  \"rugged</w>\": 25225,\n  \"rugs</w>\": 29946,\n  \"rui</w>\": 46974,\n  \"ruin</w>\": 16256,\n  \"ruined</w>\": 17231,\n  \"ruining</w>\": 29952,\n  \"ruins</w>\": 16094,\n  \"ruiz</w>\": 27873,\n  \"ruk</w>\": 46628,\n  \"rukh\": 43075,\n  \"rukh</w>\": 27631,\n  \"rule\": 31643,\n  \"rule</w>\": 6175,\n  \"ruled</w>\": 16324,\n  \"ruler</w>\": 26286,\n  \"rulers</w>\": 45328,\n  \"rules</w>\": 5272,\n  \"ruling</w>\": 14690,\n  \"rum\": 9223,\n  \"rum</w>\": 11233,\n  \"rumb\": 42432,\n  \"rumble</w>\": 18900,\n  \"rumi</w>\": 31428,\n  \"rumor</w>\": 22254,\n  \"rumored</w>\": 36694,\n  \"rumors</w>\": 16160,\n  \"rumour</w>\": 34296,\n  \"rumours</w>\": 20716,\n  \"rump</w>\": 29366,\n  \"run\": 1639,\n  \"run</w>\": 1934,\n  \"runaway</w>\": 28851,\n  \"runchat</w>\": 25838,\n  \"rundown</w>\": 41100,\n  \"rune\": 33882,\n  \"rune</w>\": 49244,\n  \"runner\": 37370,\n  \"runner</w>\": 7913,\n  \"runners</w>\": 10571,\n  \"runnin</w>\": 43130,\n  \"running\": 24451,\n  \"running</w>\": 2761,\n  \"runoff</w>\": 38564,\n  \"runs</w>\": 5586,\n  \"runway</w>\": 13927,\n  \"rup\": 7996,\n  \"rup</w>\": 14980,\n  \"rupaul</w>\": 44211,\n  \"rupee</w>\": 43916,\n  \"rupees</w>\": 44110,\n  \"rupert</w>\": 25625,\n  \"rupt</w>\": 23055,\n  \"ruption</w>\": 35403,\n  \"rural\": 28801,\n  \"rural</w>\": 8737,\n  \"rus\": 35811,\n  \"rus</w>\": 5998,\n  \"rush\": 12148,\n  \"rush</w>\": 6973,\n  \"rushed</w>\": 28104,\n  \"rusher</w>\": 48745,\n  \"rushes</w>\": 47217,\n  \"rushing</w>\": 20284,\n  \"russ\": 6285,\n  \"russ</w>\": 20764,\n  \"russell\": 26122,\n  \"russell</w>\": 8150,\n  \"russi\": 2600,\n  \"russia</w>\": 4018,\n  \"russian\": 30731,\n  \"russian</w>\": 4868,\n  \"russians</w>\": 25413,\n  \"russo</w>\": 30679,\n  \"rust\": 28682,\n  \"rust</w>\": 14212,\n  \"rustic</w>\": 19822,\n  \"rusty\": 43966,\n  \"rusty</w>\": 22646,\n  \"rut\": 14973,\n  \"rut</w>\": 39102,\n  \"rutger\": 49029,\n  \"rutgers</w>\": 28934,\n  \"ruth\": 15798,\n  \"ruth</w>\": 12029,\n  \"ruther\": 26676,\n  \"rutherford</w>\": 31070,\n  \"ruthless</w>\": 36063,\n  \"rutland</w>\": 46024,\n  \"ruto</w>\": 43702,\n  \"ruz</w>\": 23275,\n  \"rv\": 17135,\n  \"rv</w>\": 17951,\n  \"rva</w>\": 24278,\n  \"rw\": 9085,\n  \"rw</w>\": 22926,\n  \"rwa</w>\": 47452,\n  \"rwand\": 31758,\n  \"rwanda</w>\": 15427,\n  \"rwby</w>\": 39698,\n  \"rwc</w>\": 32321,\n  \"rx\": 41188,\n  \"rx</w>\": 15945,\n  \"ry\": 1511,\n  \"ry</w>\": 913,\n  \"ryan\": 8682,\n  \"ryan</w>\": 4053,\n  \"ryanair</w>\": 43526,\n  \"ryder\": 43564,\n  \"ryder</w>\": 21805,\n  \"rye\": 24015,\n  \"rye</w>\": 17409,\n  \"rying</w>\": 7838,\n  \"ryn</w>\": 37728,\n  \"ryo\": 24460,\n  \"rys</w>\": 21654,\n  \"ryu\": 46656,\n  \"ryu</w>\": 34604,\n  \"rÃ©\": 29106,\n  \"s\": 82,\n  \"s</w>\": 338,\n  \"sa\": 774,\n  \"sa</w>\": 1344,\n  \"saa</w>\": 13429,\n  \"saab</w>\": 27158,\n  \"saad</w>\": 36530,\n  \"saas</w>\": 25761,\n  \"saat\": 33151,\n  \"sab\": 3233,\n  \"sab</w>\": 23213,\n  \"saba</w>\": 38344,\n  \"sabah</w>\": 32854,\n  \"saban</w>\": 41620,\n  \"sabar\": 47102,\n  \"sabbath</w>\": 26008,\n  \"sabc</w>\": 30010,\n  \"sabcnews</w>\": 41093,\n  \"saber\": 46822,\n  \"saber</w>\": 25624,\n  \"sabha</w>\": 23431,\n  \"sabi</w>\": 47073,\n  \"sabine</w>\": 44062,\n  \"sable</w>\": 19224,\n  \"sabot\": 30700,\n  \"sabotage</w>\": 40496,\n  \"sabre</w>\": 35110,\n  \"sabres</w>\": 29620,\n  \"sabrin\": 37029,\n  \"sabrina</w>\": 24994,\n  \"sac\": 3632,\n  \"sac</w>\": 12905,\n  \"sach\": 30168,\n  \"sacha</w>\": 49010,\n  \"sachin\": 47527,\n  \"sachin</w>\": 30297,\n  \"sachs</w>\": 31451,\n  \"sack\": 28964,\n  \"sack</w>\": 14979,\n  \"sacked</w>\": 27519,\n  \"sacks</w>\": 26441,\n  \"sacram\": 13334,\n  \"sacramento</w>\": 16065,\n  \"sacred\": 40612,\n  \"sacred</w>\": 12477,\n  \"sacri\": 15283,\n  \"sacrif\": 12117,\n  \"sacrific\": 16919,\n  \"sacrifice</w>\": 12556,\n  \"sacrificed</w>\": 31116,\n  \"sacrifices</w>\": 28858,\n  \"sacrificing</w>\": 48146,\n  \"sad\": 2810,\n  \"sad</w>\": 3719,\n  \"saddened</w>\": 27720,\n  \"saddest</w>\": 34925,\n  \"saddle\": 30469,\n  \"saddle</w>\": 20283,\n  \"sade</w>\": 27429,\n  \"sadh\": 40955,\n  \"sadi\": 22207,\n  \"sadie</w>\": 30333,\n  \"sadiq</w>\": 44107,\n  \"sadler</w>\": 45600,\n  \"sadly</w>\": 11603,\n  \"sadness</w>\": 20399,\n  \"sae\": 38633,\n  \"sae</w>\": 34883,\n  \"saeed</w>\": 29745,\n  \"saf\": 2125,\n  \"saf</w>\": 25760,\n  \"safar\": 23443,\n  \"safari</w>\": 14091,\n  \"safarilive</w>\": 34816,\n  \"safc</w>\": 27998,\n  \"safe\": 2901,\n  \"safe</w>\": 2996,\n  \"safeguard</w>\": 42249,\n  \"safeguarding</w>\": 47451,\n  \"safely</w>\": 11513,\n  \"safer\": 40124,\n  \"safer</w>\": 15504,\n  \"safest</w>\": 38973,\n  \"safety\": 19050,\n  \"safety</w>\": 3406,\n  \"safetyfirst</w>\": 43608,\n  \"saffron</w>\": 27529,\n  \"sag\": 6609,\n  \"sag</w>\": 30048,\n  \"saga</w>\": 15758,\n  \"sagan</w>\": 37193,\n  \"sagar</w>\": 42518,\n  \"sage\": 25800,\n  \"sage</w>\": 7509,\n  \"sages</w>\": 25979,\n  \"sagin\": 47097,\n  \"sagitt\": 44685,\n  \"sagu\": 44708,\n  \"sah\": 30943,\n  \"sah</w>\": 26342,\n  \"saha\": 36062,\n  \"sahara</w>\": 24599,\n  \"saharan</w>\": 44255,\n  \"sahi\": 24608,\n  \"sahib</w>\": 34150,\n  \"sai\": 16048,\n  \"sai</w>\": 10886,\n  \"said\": 40319,\n  \"said</w>\": 1946,\n  \"saif</w>\": 44164,\n  \"saig\": 36328,\n  \"saigon</w>\": 41081,\n  \"sail\": 7528,\n  \"sail</w>\": 12156,\n  \"sailed</w>\": 43047,\n  \"sailing</w>\": 11003,\n  \"sailor\": 28002,\n  \"sailor</w>\": 16076,\n  \"sailormoon</w>\": 40673,\n  \"sailors</w>\": 25355,\n  \"sails</w>\": 27526,\n  \"sain\": 21226,\n  \"sain</w>\": 40378,\n  \"sains\": 24860,\n  \"sainsbury</w>\": 45879,\n  \"sainsburys</w>\": 36934,\n  \"saint\": 11274,\n  \"saint</w>\": 5599,\n  \"saints</w>\": 8769,\n  \"saintsfc</w>\": 31102,\n  \"sair\": 46600,\n  \"sair</w>\": 30971,\n  \"saire</w>\": 28087,\n  \"saison</w>\": 33256,\n  \"sait\": 48008,\n  \"saj\": 33580,\n  \"sak\": 11511,\n  \"sak</w>\": 35900,\n  \"saka</w>\": 33609,\n  \"sake</w>\": 12874,\n  \"sakh</w>\": 43945,\n  \"saki</w>\": 40514,\n  \"saku\": 37550,\n  \"sakura</w>\": 24162,\n  \"sal\": 980,\n  \"sal</w>\": 6126,\n  \"sala</w>\": 17300,\n  \"salaam</w>\": 46773,\n  \"salad</w>\": 6188,\n  \"salads</w>\": 30948,\n  \"salah</w>\": 22516,\n  \"salam\": 19007,\n  \"salam</w>\": 33963,\n  \"salamat</w>\": 44696,\n  \"salami</w>\": 46885,\n  \"salaries</w>\": 33132,\n  \"salary</w>\": 16312,\n  \"salazar</w>\": 45988,\n  \"sale\": 17786,\n  \"sale</w>\": 1690,\n  \"saleh</w>\": 38353,\n  \"salem\": 48194,\n  \"salem</w>\": 16884,\n  \"sales\": 13347,\n  \"sales</w>\": 3765,\n  \"salesforce</w>\": 22680,\n  \"salesman</w>\": 37633,\n  \"salford</w>\": 25629,\n  \"sali\": 15411,\n  \"salim</w>\": 42760,\n  \"salinas</w>\": 41990,\n  \"saline</w>\": 46918,\n  \"salis\": 20667,\n  \"salis</w>\": 39378,\n  \"salisbury</w>\": 24763,\n  \"sall\": 27122,\n  \"sall</w>\": 20883,\n  \"salle</w>\": 23738,\n  \"sally\": 29542,\n  \"sally</w>\": 13349,\n  \"salman\": 13754,\n  \"salman</w>\": 16219,\n  \"salmankhan</w>\": 15177,\n  \"salmon\": 37040,\n  \"salmon</w>\": 9137,\n  \"salom\": 38268,\n  \"salon\": 33916,\n  \"salon</w>\": 11105,\n  \"saloon</w>\": 26038,\n  \"sals</w>\": 16307,\n  \"salsa</w>\": 16442,\n  \"salt\": 12763,\n  \"salt</w>\": 6611,\n  \"salted</w>\": 26313,\n  \"saltlife</w>\": 47809,\n  \"salts</w>\": 40559,\n  \"saltwater</w>\": 43616,\n  \"salty</w>\": 20678,\n  \"salu\": 31711,\n  \"salud</w>\": 46867,\n  \"salut\": 44998,\n  \"salute\": 44908,\n  \"salute</w>\": 9747,\n  \"salutes</w>\": 32762,\n  \"salv\": 8299,\n  \"salvador</w>\": 20874,\n  \"salvage</w>\": 33131,\n  \"salvation</w>\": 19534,\n  \"salvatore</w>\": 38772,\n  \"salz\": 33594,\n  \"salzburg</w>\": 43396,\n  \"sam\": 1644,\n  \"sam</w>\": 3730,\n  \"sama</w>\": 19272,\n  \"samanth\": 11465,\n  \"samantha</w>\": 15466,\n  \"samanthap\": 38266,\n  \"samanthaprabhu</w>\": 38643,\n  \"samar\": 21820,\n  \"samaritan</w>\": 45495,\n  \"samba</w>\": 37190,\n  \"same\": 23062,\n  \"same</w>\": 2208,\n  \"samheughan</w>\": 36255,\n  \"sami\": 48400,\n  \"sami</w>\": 24322,\n  \"sammy\": 31091,\n  \"sammy</w>\": 16758,\n  \"samo\": 30006,\n  \"samoa</w>\": 34932,\n  \"samp\": 31225,\n  \"sample</w>\": 9542,\n  \"sampler</w>\": 40629,\n  \"samples</w>\": 13387,\n  \"sampling</w>\": 19522,\n  \"sampson</w>\": 39983,\n  \"sams</w>\": 44667,\n  \"samson</w>\": 34659,\n  \"samsun\": 47875,\n  \"samsung\": 35369,\n  \"samsung</w>\": 8115,\n  \"samu\": 7646,\n  \"samuel\": 30612,\n  \"samuel</w>\": 12787,\n  \"samurai</w>\": 21739,\n  \"san\": 1489,\n  \"san</w>\": 2223,\n  \"sana</w>\": 19434,\n  \"sanantonio</w>\": 34714,\n  \"sanat\": 29091,\n  \"sanatomy</w>\": 36052,\n  \"sanc\": 7398,\n  \"sance</w>\": 15930,\n  \"sanchez</w>\": 13971,\n  \"sanctioned</w>\": 43032,\n  \"sanctions</w>\": 17790,\n  \"sanctu\": 12712,\n  \"sanctuary</w>\": 14044,\n  \"sand\": 2147,\n  \"sand</w>\": 5094,\n  \"sandal\": 36445,\n  \"sandal</w>\": 42185,\n  \"sandals</w>\": 20731,\n  \"sandalwood</w>\": 47502,\n  \"sandeep</w>\": 46973,\n  \"sander</w>\": 34111,\n  \"sanders</w>\": 10429,\n  \"sanderson</w>\": 36198,\n  \"sandi\": 44249,\n  \"sandiego\": 45997,\n  \"sandiego</w>\": 15793,\n  \"sandman</w>\": 45730,\n  \"sando\": 35921,\n  \"sandoval</w>\": 44157,\n  \"sandra\": 33733,\n  \"sandra</w>\": 13415,\n  \"sandro</w>\": 42389,\n  \"sands</w>\": 5936,\n  \"sandstone</w>\": 36796,\n  \"sandwich\": 17050,\n  \"sandwich</w>\": 8687,\n  \"sandwiches</w>\": 19667,\n  \"sandy\": 29679,\n  \"sandy</w>\": 10355,\n  \"sane</w>\": 23419,\n  \"sanford</w>\": 32330,\n  \"sanfrancisco</w>\": 20254,\n  \"sang\": 13235,\n  \"sang</w>\": 11684,\n  \"sange\": 12466,\n  \"sangria</w>\": 42665,\n  \"sani\": 39137,\n  \"sani</w>\": 34492,\n  \"sanitary</w>\": 33842,\n  \"sanitation</w>\": 25414,\n  \"saniti\": 43987,\n  \"sanity</w>\": 30517,\n  \"sanjay\": 31712,\n  \"sanjay</w>\": 25796,\n  \"sanje\": 40405,\n  \"sanjose</w>\": 45971,\n  \"sank</w>\": 43692,\n  \"sano</w>\": 34053,\n  \"sans</w>\": 16982,\n  \"sansk\": 39689,\n  \"sanskrit</w>\": 48083,\n  \"sant\": 8356,\n  \"sant</w>\": 23120,\n  \"santa\": 22175,\n  \"santa</w>\": 4555,\n  \"santac\": 28876,\n  \"santam\": 45627,\n  \"santana</w>\": 27033,\n  \"santander</w>\": 46476,\n  \"santi\": 13856,\n  \"santiago</w>\": 16568,\n  \"santo\": 29631,\n  \"santo</w>\": 18400,\n  \"santor\": 28448,\n  \"santorini</w>\": 39573,\n  \"santos</w>\": 16582,\n  \"sany\": 47679,\n  \"sao</w>\": 28026,\n  \"sap\": 8089,\n  \"sap</w>\": 11591,\n  \"sapi\": 40016,\n  \"sapp\": 13427,\n  \"sapp</w>\": 40729,\n  \"sapphire</w>\": 22044,\n  \"sar\": 1808,\n  \"sar</w>\": 9424,\n  \"sara\": 37196,\n  \"sara</w>\": 10063,\n  \"sarab\": 40716,\n  \"sarac\": 35722,\n  \"sarah\": 9086,\n  \"sarah</w>\": 5327,\n  \"saraj\": 42592,\n  \"sarajevo</w>\": 48211,\n  \"saras\": 20373,\n  \"sarasota</w>\": 31990,\n  \"sarato\": 24845,\n  \"saratoga</w>\": 29496,\n  \"sarawak</w>\": 47331,\n  \"sarcasm</w>\": 37246,\n  \"sarcastic</w>\": 48639,\n  \"sardar</w>\": 41786,\n  \"sarde\": 43925,\n  \"sardin\": 27383,\n  \"sardinia</w>\": 41025,\n  \"sare\": 13051,\n  \"saree</w>\": 30860,\n  \"sargent</w>\": 34864,\n  \"sari\": 42327,\n  \"sari</w>\": 20261,\n  \"saries</w>\": 47586,\n  \"sarkar</w>\": 30673,\n  \"sarko\": 33658,\n  \"sarkodie</w>\": 42848,\n  \"sarmy</w>\": 20954,\n  \"sart</w>\": 33006,\n  \"sary</w>\": 15398,\n  \"sas\": 3960,\n  \"sas</w>\": 5235,\n  \"sash</w>\": 35656,\n  \"sasha\": 46078,\n  \"sasha</w>\": 20894,\n  \"sasia</w>\": 44751,\n  \"sask\": 47091,\n  \"sask</w>\": 30416,\n  \"saskat\": 17102,\n  \"saskatchewan</w>\": 23899,\n  \"saskatoon</w>\": 31128,\n  \"sass</w>\": 31351,\n  \"sassy</w>\": 20827,\n  \"sat\": 1382,\n  \"sat</w>\": 3279,\n  \"sata</w>\": 41520,\n  \"satan</w>\": 19446,\n  \"satanic</w>\": 38224,\n  \"satchel</w>\": 45908,\n  \"sate</w>\": 35749,\n  \"satell\": 9031,\n  \"satellite</w>\": 10316,\n  \"satellites</w>\": 28483,\n  \"sath\": 29675,\n  \"sathletics</w>\": 30154,\n  \"sati\": 7038,\n  \"satin</w>\": 21803,\n  \"sation</w>\": 23674,\n  \"sations</w>\": 31232,\n  \"satire</w>\": 29875,\n  \"satis\": 9906,\n  \"satisf\": 22941,\n  \"satisfaction</w>\": 19925,\n  \"satisfied</w>\": 18101,\n  \"satisfy</w>\": 29444,\n  \"satisfying</w>\": 23755,\n  \"sato</w>\": 34376,\n  \"satu</w>\": 45283,\n  \"satur\": 1634,\n  \"saturated</w>\": 32466,\n  \"saturday\": 12537,\n  \"saturday</w>\": 1748,\n  \"saturdaymorning</w>\": 29053,\n  \"saturdaymotivation</w>\": 40843,\n  \"saturdays</w>\": 18930,\n  \"saturn</w>\": 17312,\n  \"saty\": 39426,\n  \"sau\": 2096,\n  \"sau</w>\": 19455,\n  \"sauce</w>\": 5520,\n  \"saucer</w>\": 42272,\n  \"sauces</w>\": 40367,\n  \"saucy</w>\": 46684,\n  \"saudi\": 24511,\n  \"saudi</w>\": 8548,\n  \"saudiarabia</w>\": 28680,\n  \"sauer\": 46333,\n  \"saul\": 47623,\n  \"saul</w>\": 23252,\n  \"sault</w>\": 40361,\n  \"sauna</w>\": 35460,\n  \"saunders</w>\": 23794,\n  \"saur</w>\": 13227,\n  \"saura\": 46532,\n  \"saurus</w>\": 22118,\n  \"saus</w>\": 36121,\n  \"sausage</w>\": 11855,\n  \"sausages</w>\": 31593,\n  \"sautÃ©\": 36290,\n  \"sautÃ©ed</w>\": 38517,\n  \"sauvi\": 30116,\n  \"sauvignon</w>\": 32745,\n  \"sav\": 2248,\n  \"sav</w>\": 26533,\n  \"sava</w>\": 40198,\n  \"savag\": 43039,\n  \"savage</w>\": 11859,\n  \"savannah</w>\": 18662,\n  \"save\": 5895,\n  \"save</w>\": 2673,\n  \"saved</w>\": 7137,\n  \"saveour\": 33390,\n  \"saver</w>\": 20987,\n  \"savers</w>\": 31416,\n  \"saves</w>\": 12907,\n  \"savethe\": 18031,\n  \"savi\": 14721,\n  \"saving\": 28498,\n  \"saving</w>\": 6979,\n  \"savings</w>\": 10651,\n  \"savior</w>\": 24762,\n  \"saviour</w>\": 35800,\n  \"savor</w>\": 48071,\n  \"savory</w>\": 32992,\n  \"savoury</w>\": 49071,\n  \"savoy</w>\": 39552,\n  \"savvy</w>\": 29278,\n  \"saw\": 12429,\n  \"saw</w>\": 2425,\n  \"sawa</w>\": 39613,\n  \"sawards</w>\": 29012,\n  \"sawyer</w>\": 27726,\n  \"sax\": 14169,\n  \"sax</w>\": 23766,\n  \"saxon</w>\": 31856,\n  \"saxophon\": 43760,\n  \"saxophone</w>\": 32296,\n  \"say\": 3047,\n  \"say</w>\": 1451,\n  \"saya</w>\": 35170,\n  \"sayang</w>\": 46322,\n  \"sayers</w>\": 44116,\n  \"sayin</w>\": 23662,\n  \"saying</w>\": 4455,\n  \"says</w>\": 1563,\n  \"saz</w>\": 35577,\n  \"sb\": 5576,\n  \"sb</w>\": 4977,\n  \"sba</w>\": 44970,\n  \"sback</w>\": 43840,\n  \"sband</w>\": 27539,\n  \"sbaseball</w>\": 46491,\n  \"sbball</w>\": 39190,\n  \"sbc</w>\": 31404,\n  \"sberg</w>\": 20358,\n  \"sbi</w>\": 41369,\n  \"sbk</w>\": 39211,\n  \"sboro</w>\": 18909,\n  \"sbridge</w>\": 49228,\n  \"sbs</w>\": 18883,\n  \"sbu\": 48075,\n  \"sbu</w>\": 46281,\n  \"sburg</w>\": 7390,\n  \"sburgh</w>\": 48205,\n  \"sbury</w>\": 14081,\n  \"sby\": 26519,\n  \"sby</w>\": 10287,\n  \"sc\": 663,\n  \"sc</w>\": 3219,\n  \"sca</w>\": 11001,\n  \"scab\": 31716,\n  \"scaf\": 28981,\n  \"scafe</w>\": 45574,\n  \"scaffolding</w>\": 41687,\n  \"scal\": 10859,\n  \"scala</w>\": 37997,\n  \"scalable</w>\": 44084,\n  \"scale\": 37817,\n  \"scale</w>\": 5879,\n  \"scaled</w>\": 41923,\n  \"scales</w>\": 22891,\n  \"scaling</w>\": 29116,\n  \"scallo\": 19936,\n  \"scallop</w>\": 39544,\n  \"scallops</w>\": 31430,\n  \"scalp</w>\": 38898,\n  \"scam\": 17620,\n  \"scam</w>\": 13215,\n  \"scamp</w>\": 28451,\n  \"scams</w>\": 34395,\n  \"scan\": 10650,\n  \"scan</w>\": 11261,\n  \"scanada</w>\": 27121,\n  \"scand\": 8110,\n  \"scandal\": 35420,\n  \"scandal</w>\": 11622,\n  \"scandals</w>\": 45490,\n  \"scandin\": 32014,\n  \"scandinavian</w>\": 35661,\n  \"scanned</w>\": 43719,\n  \"scanner</w>\": 24185,\n  \"scanning</w>\": 24092,\n  \"scans</w>\": 31251,\n  \"scap\": 35883,\n  \"scape\": 36005,\n  \"scape</w>\": 12314,\n  \"scapes</w>\": 31933,\n  \"scar\": 4171,\n  \"scar</w>\": 18088,\n  \"scarborough</w>\": 24254,\n  \"scarce</w>\": 38572,\n  \"scarcity</w>\": 45812,\n  \"scare\": 33536,\n  \"scare</w>\": 15920,\n  \"scarec\": 38814,\n  \"scarecrow</w>\": 46504,\n  \"scared</w>\": 9870,\n  \"scares</w>\": 34096,\n  \"scarf</w>\": 13365,\n  \"scari\": 27050,\n  \"scariest</w>\": 37213,\n  \"scarlet</w>\": 20389,\n  \"scarlett</w>\": 28325,\n  \"scars</w>\": 20747,\n  \"scarves</w>\": 29249,\n  \"scary</w>\": 9250,\n  \"scat\": 13899,\n  \"scattered</w>\": 22090,\n  \"scavenger</w>\": 36778,\n  \"scc</w>\": 19458,\n  \"scd</w>\": 48422,\n  \"scen\": 2204,\n  \"scenario</w>\": 20456,\n  \"scenarios</w>\": 31346,\n  \"scence</w>\": 33418,\n  \"scene</w>\": 3562,\n  \"scenery</w>\": 16025,\n  \"scenes</w>\": 5415,\n  \"scenic</w>\": 15394,\n  \"scent\": 36277,\n  \"scent</w>\": 7683,\n  \"scented</w>\": 27190,\n  \"scenter</w>\": 23059,\n  \"scentre</w>\": 39371,\n  \"scents</w>\": 26336,\n  \"scep\": 24439,\n  \"scfc</w>\": 38578,\n  \"sch\": 844,\n  \"sch</w>\": 7542,\n  \"scha\": 42809,\n  \"schaf\": 45588,\n  \"schaft</w>\": 41010,\n  \"schal\": 35568,\n  \"schalke</w>\": 41029,\n  \"schallenge</w>\": 43665,\n  \"schan\": 31328,\n  \"schar\": 15085,\n  \"schat</w>\": 31842,\n  \"schau\": 35830,\n  \"sche\": 3038,\n  \"sche</w>\": 7289,\n  \"schedu\": 4207,\n  \"schedule</w>\": 5521,\n  \"scheduled</w>\": 10986,\n  \"schedules</w>\": 28986,\n  \"scheduling</w>\": 32216,\n  \"scheer</w>\": 26776,\n  \"schel\": 39881,\n  \"schel</w>\": 38569,\n  \"schem\": 17720,\n  \"scheme</w>\": 9024,\n  \"schemes</w>\": 22958,\n  \"schen\": 22738,\n  \"scher\": 21925,\n  \"scher</w>\": 21299,\n  \"schi\": 13731,\n  \"schi</w>\": 24984,\n  \"schicago</w>\": 46230,\n  \"schiff</w>\": 39431,\n  \"schild</w>\": 32148,\n  \"schiz\": 33230,\n  \"schizoph\": 40004,\n  \"schizophre\": 41163,\n  \"schle\": 32022,\n  \"schmid\": 17375,\n  \"schmidt</w>\": 18463,\n  \"schnau\": 45745,\n  \"schnei\": 19941,\n  \"schneider</w>\": 22972,\n  \"schnit\": 40903,\n  \"scho\": 2493,\n  \"schoice</w>\": 23860,\n  \"schol\": 4498,\n  \"scholar\": 7192,\n  \"scholar</w>\": 12830,\n  \"scholarly</w>\": 41065,\n  \"scholars</w>\": 13818,\n  \"scholarship</w>\": 9070,\n  \"scholarships</w>\": 17866,\n  \"scholastic</w>\": 35743,\n  \"schoo\": 20721,\n  \"school\": 6063,\n  \"school</w>\": 1228,\n  \"schooled</w>\": 44722,\n  \"schoolers</w>\": 31455,\n  \"schooling</w>\": 28608,\n  \"schools</w>\": 3513,\n  \"schre\": 47685,\n  \"schri\": 25453,\n  \"schro\": 32381,\n  \"schu\": 11318,\n  \"schubert</w>\": 46939,\n  \"schul\": 14945,\n  \"schultz</w>\": 30308,\n  \"schulz</w>\": 39572,\n  \"schumacher</w>\": 39208,\n  \"schumer</w>\": 25313,\n  \"schur\": 42475,\n  \"schwab</w>\": 47602,\n  \"schwar\": 13985,\n  \"schwartz</w>\": 30617,\n  \"schwarz\": 27074,\n  \"schwarzenegger</w>\": 33860,\n  \"schwe\": 25324,\n  \"sci\": 2267,\n  \"sci</w>\": 8309,\n  \"sciart</w>\": 31704,\n  \"scicom\": 28606,\n  \"scicomm</w>\": 29573,\n  \"scien\": 39261,\n  \"science\": 10201,\n  \"science</w>\": 2497,\n  \"sciencefiction</w>\": 39170,\n  \"sciences</w>\": 11481,\n  \"scienti\": 4338,\n  \"scientific</w>\": 9750,\n  \"scientist</w>\": 11083,\n  \"scientists</w>\": 8045,\n  \"sciento\": 36193,\n  \"scientology</w>\": 44694,\n  \"scifi\": 41862,\n  \"scifi</w>\": 12230,\n  \"scion</w>\": 47208,\n  \"sciss\": 25667,\n  \"scissors</w>\": 30867,\n  \"sciutto</w>\": 44392,\n  \"sclerosis</w>\": 39446,\n  \"sclub</w>\": 20017,\n  \"sco\": 1065,\n  \"sco</w>\": 4763,\n  \"scoe</w>\": 31164,\n  \"scol\": 13599,\n  \"scoll</w>\": 44895,\n  \"scollege</w>\": 39536,\n  \"scom</w>\": 26407,\n  \"scon\": 17163,\n  \"scon</w>\": 29272,\n  \"scones</w>\": 36443,\n  \"sconf</w>\": 39704,\n  \"scoo\": 14199,\n  \"scooby</w>\": 34469,\n  \"scoop</w>\": 13829,\n  \"scoops</w>\": 41360,\n  \"scope</w>\": 7979,\n  \"scopes</w>\": 30328,\n  \"scopic</w>\": 23869,\n  \"scopy</w>\": 20018,\n  \"scor\": 8442,\n  \"score\": 12067,\n  \"score</w>\": 4431,\n  \"scoreboard</w>\": 30104,\n  \"scorecard</w>\": 38128,\n  \"scored</w>\": 6143,\n  \"scoreless</w>\": 33469,\n  \"scorer</w>\": 16572,\n  \"scorers</w>\": 26699,\n  \"scores</w>\": 7039,\n  \"scoring</w>\": 9198,\n  \"scorpi\": 15445,\n  \"scorpio</w>\": 34331,\n  \"scorpion</w>\": 28461,\n  \"scorpions</w>\": 45401,\n  \"scorsese</w>\": 45975,\n  \"scot\": 2496,\n  \"scot</w>\": 9271,\n  \"scotch</w>\": 16687,\n  \"scoti\": 46446,\n  \"scotia</w>\": 27859,\n  \"scotland\": 29174,\n  \"scotland</w>\": 4203,\n  \"scots</w>\": 17260,\n  \"scotsman</w>\": 39612,\n  \"scott\": 7775,\n  \"scott</w>\": 3664,\n  \"scotti\": 6227,\n  \"scottish\": 18039,\n  \"scottish</w>\": 7442,\n  \"scottsdale</w>\": 27817,\n  \"scotty\": 39697,\n  \"scotty</w>\": 26836,\n  \"scotus</w>\": 21720,\n  \"scou\": 44909,\n  \"scoun\": 16110,\n  \"scouncil</w>\": 48787,\n  \"scountry</w>\": 40432,\n  \"scour\": 46172,\n  \"scout\": 32213,\n  \"scout</w>\": 10786,\n  \"scouting</w>\": 19072,\n  \"scouts</w>\": 14837,\n  \"scow\": 27929,\n  \"scowboys</w>\": 31386,\n  \"scp</w>\": 45030,\n  \"scr</w>\": 36131,\n  \"scra\": 11187,\n  \"scrabble</w>\": 39488,\n  \"scram\": 17289,\n  \"scramble</w>\": 32688,\n  \"scrambled</w>\": 39026,\n  \"scran\": 41774,\n  \"scranton</w>\": 45274,\n  \"scrap\": 27950,\n  \"scrap</w>\": 21695,\n  \"scrapbook</w>\": 48733,\n  \"scrapped</w>\": 43325,\n  \"scraps</w>\": 40809,\n  \"scrat\": 9572,\n  \"scratch</w>\": 13258,\n  \"scratched</w>\": 48831,\n  \"scratches</w>\": 46556,\n  \"scratching</w>\": 44617,\n  \"scre\": 1795,\n  \"scream\": 31645,\n  \"scream</w>\": 13239,\n  \"screamed</w>\": 35427,\n  \"screaming</w>\": 12891,\n  \"screams</w>\": 23989,\n  \"screen\": 5351,\n  \"screen</w>\": 3750,\n  \"screened</w>\": 31450,\n  \"screening</w>\": 6688,\n  \"screenings</w>\": 27655,\n  \"screenplay</w>\": 30058,\n  \"screens</w>\": 12689,\n  \"screenshot\": 20637,\n  \"screenshot</w>\": 12646,\n  \"screenshots</w>\": 26783,\n  \"screenshotsaturday</w>\": 21406,\n  \"screenwriter</w>\": 37293,\n  \"screenwriting</w>\": 35465,\n  \"screw\": 25529,\n  \"screw</w>\": 14225,\n  \"screwdriver</w>\": 48748,\n  \"screwed</w>\": 30592,\n  \"screws</w>\": 38292,\n  \"scri\": 2139,\n  \"scrib\": 34259,\n  \"scribe</w>\": 36228,\n  \"scribed</w>\": 38334,\n  \"scricket</w>\": 45947,\n  \"scrim\": 21978,\n  \"scrimmage</w>\": 25216,\n  \"scrip\": 11955,\n  \"script</w>\": 8374,\n  \"scripted</w>\": 40513,\n  \"scription</w>\": 26604,\n  \"scriptions</w>\": 39512,\n  \"scripts</w>\": 20109,\n  \"scripture</w>\": 27186,\n  \"scro\": 30768,\n  \"scroll</w>\": 24160,\n  \"scrolling</w>\": 28889,\n  \"scrolls</w>\": 38113,\n  \"scroo\": 42263,\n  \"scru\": 7589,\n  \"scrub</w>\": 23432,\n  \"scrubs</w>\": 37919,\n  \"scrum</w>\": 29047,\n  \"scrump\": 39791,\n  \"scrumptious</w>\": 40987,\n  \"scrutiny</w>\": 34305,\n  \"scs</w>\": 26853,\n  \"sct</w>\": 39284,\n  \"scu\": 8181,\n  \"scu</w>\": 32135,\n  \"scuba\": 39053,\n  \"scuba</w>\": 20559,\n  \"scubadiving</w>\": 49046,\n  \"scue</w>\": 25955,\n  \"scul\": 4948,\n  \"scully</w>\": 36598,\n  \"sculp\": 6093,\n  \"sculpt</w>\": 45044,\n  \"sculpted</w>\": 41296,\n  \"sculpting</w>\": 44389,\n  \"sculptor</w>\": 29409,\n  \"sculpture</w>\": 8757,\n  \"sculptures</w>\": 20378,\n  \"scum</w>\": 29655,\n  \"scumb\": 44525,\n  \"scup</w>\": 21506,\n  \"scur\": 32742,\n  \"scwx</w>\": 41966,\n  \"scy\": 27471,\n  \"sd\": 3080,\n  \"sd</w>\": 4159,\n  \"sda</w>\": 25548,\n  \"sdale</w>\": 12327,\n  \"sday\": 5902,\n  \"sday</w>\": 1376,\n  \"sdays</w>\": 14491,\n  \"sdc</w>\": 40992,\n  \"sdcc</w>\": 13246,\n  \"sden</w>\": 17241,\n  \"sdf</w>\": 34681,\n  \"sdg</w>\": 20177,\n  \"sdgs</w>\": 16261,\n  \"sdk</w>\": 40015,\n  \"sdlive</w>\": 34561,\n  \"sdn</w>\": 41925,\n  \"sdsu</w>\": 41284,\n  \"se\": 567,\n  \"se</w>\": 611,\n  \"sea\": 5970,\n  \"sea</w>\": 2102,\n  \"seab\": 15728,\n  \"seabir\": 42558,\n  \"seac\": 35626,\n  \"seaf\": 9336,\n  \"seafood</w>\": 12472,\n  \"seag\": 15730,\n  \"seagu\": 38076,\n  \"seagull</w>\": 38858,\n  \"seagulls</w>\": 42215,\n  \"seahawks</w>\": 15341,\n  \"seal\": 21381,\n  \"seal</w>\": 10159,\n  \"sealed</w>\": 13358,\n  \"sealing</w>\": 42992,\n  \"seals</w>\": 18179,\n  \"seam\": 13710,\n  \"seam</w>\": 44201,\n  \"seaman</w>\": 47513,\n  \"seamless</w>\": 29373,\n  \"seamus</w>\": 40175,\n  \"sean\": 11406,\n  \"sean</w>\": 6077,\n  \"seanhannity</w>\": 43316,\n  \"seap\": 29983,\n  \"seaport</w>\": 46418,\n  \"sear\": 1612,\n  \"search\": 23129,\n  \"search</w>\": 1920,\n  \"searched</w>\": 28961,\n  \"searches</w>\": 26378,\n  \"searching</w>\": 10626,\n  \"seared</w>\": 29727,\n  \"sears</w>\": 26693,\n  \"seas\": 7329,\n  \"seas</w>\": 9556,\n  \"seascape</w>\": 42593,\n  \"seaside</w>\": 18867,\n  \"season\": 19288,\n  \"season</w>\": 1367,\n  \"seasonal</w>\": 14215,\n  \"seasoned</w>\": 28399,\n  \"seasoning</w>\": 43439,\n  \"seasons</w>\": 8635,\n  \"seat\": 19670,\n  \"seat</w>\": 4922,\n  \"seated</w>\": 23953,\n  \"seater</w>\": 37543,\n  \"seating</w>\": 16240,\n  \"seats</w>\": 6944,\n  \"seattle\": 24388,\n  \"seattle</w>\": 6274,\n  \"seau</w>\": 32263,\n  \"seaw\": 32658,\n  \"seaweed</w>\": 30204,\n  \"seaworld</w>\": 27422,\n  \"seb\": 35766,\n  \"seb</w>\": 25171,\n  \"sebasti\": 10324,\n  \"sebastian\": 43792,\n  \"sebastian</w>\": 13181,\n  \"sebring</w>\": 41086,\n  \"sec\": 2875,\n  \"sec</w>\": 5338,\n  \"seca</w>\": 37847,\n  \"secco</w>\": 27394,\n  \"sece\": 46297,\n  \"seclu\": 42392,\n  \"secon\": 1846,\n  \"second\": 9329,\n  \"second</w>\": 2241,\n  \"secondary</w>\": 13107,\n  \"seconds</w>\": 6541,\n  \"secre\": 2460,\n  \"secret\": 20710,\n  \"secret</w>\": 4145,\n  \"secretari\": 29515,\n  \"secretariat</w>\": 31767,\n  \"secretary</w>\": 6552,\n  \"secretly</w>\": 21400,\n  \"secrets</w>\": 9735,\n  \"secs</w>\": 28665,\n  \"sect</w>\": 15772,\n  \"section\": 34986,\n  \"section</w>\": 4853,\n  \"sectional</w>\": 21876,\n  \"sections</w>\": 20061,\n  \"sector</w>\": 6579,\n  \"sectors</w>\": 22173,\n  \"secu\": 4894,\n  \"secular\": 47483,\n  \"secular</w>\": 27560,\n  \"secur\": 2557,\n  \"secure\": 44763,\n  \"secure</w>\": 7515,\n  \"secured</w>\": 16848,\n  \"secures</w>\": 31567,\n  \"securing</w>\": 24759,\n  \"securities</w>\": 25080,\n  \"security\": 31245,\n  \"security</w>\": 2741,\n  \"sed\": 14034,\n  \"sed</w>\": 1252,\n  \"sedan</w>\": 24237,\n  \"sedg\": 46926,\n  \"sedge</w>\": 45288,\n  \"sedi\": 29269,\n  \"sedly</w>\": 31771,\n  \"sedona</w>\": 46862,\n  \"seduc\": 19933,\n  \"seductive</w>\": 43721,\n  \"see\": 1751,\n  \"see</w>\": 862,\n  \"seed\": 14064,\n  \"seed</w>\": 6488,\n  \"seeded</w>\": 33688,\n  \"seeding</w>\": 40050,\n  \"seedlings</w>\": 47933,\n  \"seeds</w>\": 9128,\n  \"seeing</w>\": 3214,\n  \"seek</w>\": 8839,\n  \"seeker</w>\": 28011,\n  \"seekers</w>\": 20732,\n  \"seeking</w>\": 8592,\n  \"seeks</w>\": 12594,\n  \"seem\": 20043,\n  \"seem</w>\": 7523,\n  \"seemed</w>\": 17240,\n  \"seemingly</w>\": 25917,\n  \"seems</w>\": 4453,\n  \"seen\": 36273,\n  \"seen</w>\": 2041,\n  \"seer</w>\": 32486,\n  \"sees</w>\": 7594,\n  \"seeyou\": 41279,\n  \"sef</w>\": 27453,\n  \"seg\": 10551,\n  \"sega</w>\": 16122,\n  \"segment</w>\": 15615,\n  \"segments</w>\": 43053,\n  \"segreg\": 49117,\n  \"segregation</w>\": 39086,\n  \"segu\": 33156,\n  \"segun\": 43087,\n  \"seh\": 27536,\n  \"seh</w>\": 41430,\n  \"sehun</w>\": 17705,\n  \"sei\": 13130,\n  \"sei</w>\": 15907,\n  \"sein</w>\": 24669,\n  \"seine</w>\": 41378,\n  \"seinfeld</w>\": 33706,\n  \"seis\": 25559,\n  \"seismic</w>\": 38459,\n  \"seiz\": 22171,\n  \"seize</w>\": 26624,\n  \"seized</w>\": 15826,\n  \"seizure</w>\": 36804,\n  \"seizures</w>\": 47199,\n  \"sek\": 45515,\n  \"sek</w>\": 25880,\n  \"sel\": 1000,\n  \"sel</w>\": 4098,\n  \"sela</w>\": 47006,\n  \"selamat</w>\": 37692,\n  \"selangor</w>\": 44402,\n  \"selby</w>\": 43546,\n  \"selca</w>\": 38606,\n  \"selcaday</w>\": 35924,\n  \"seldom</w>\": 48322,\n  \"sele\": 29137,\n  \"selec\": 3014,\n  \"select</w>\": 8690,\n  \"selected</w>\": 6881,\n  \"selecting</w>\": 32696,\n  \"selection</w>\": 6724,\n  \"selections</w>\": 24099,\n  \"selective</w>\": 28686,\n  \"selects</w>\": 32902,\n  \"selen\": 19970,\n  \"selena</w>\": 14677,\n  \"selenagomez</w>\": 27653,\n  \"seley</w>\": 30556,\n  \"self\": 10139,\n  \"self</w>\": 1322,\n  \"selfcare</w>\": 39560,\n  \"selfi\": 3007,\n  \"selfie\": 26735,\n  \"selfie</w>\": 3666,\n  \"selfies\": 46058,\n  \"selfies</w>\": 10050,\n  \"selfish</w>\": 26907,\n  \"selfless</w>\": 34236,\n  \"sell\": 10279,\n  \"sell</w>\": 5119,\n  \"seller</w>\": 11779,\n  \"sellers</w>\": 16562,\n  \"selling</w>\": 4396,\n  \"sells</w>\": 14306,\n  \"selma</w>\": 36652,\n  \"sels</w>\": 42070,\n  \"selves</w>\": 4505,\n  \"sely</w>\": 8402,\n  \"sem\": 8645,\n  \"sem</w>\": 17106,\n  \"sema</w>\": 31816,\n  \"seman\": 29119,\n  \"seman</w>\": 28378,\n  \"semana</w>\": 41780,\n  \"semb\": 36054,\n  \"seme\": 10855,\n  \"sement</w>\": 10714,\n  \"sements</w>\": 31449,\n  \"semester</w>\": 11905,\n  \"semi\": 11023,\n  \"semi</w>\": 6684,\n  \"semic\": 26967,\n  \"semicon\": 34315,\n  \"semiconduc\": 35646,\n  \"semiconductor</w>\": 43551,\n  \"semifinal</w>\": 22935,\n  \"semifinals</w>\": 21863,\n  \"semin\": 5595,\n  \"seminar</w>\": 7269,\n  \"seminars</w>\": 34870,\n  \"seminary</w>\": 31655,\n  \"seminole</w>\": 42956,\n  \"semis</w>\": 24013,\n  \"semit\": 22628,\n  \"semite</w>\": 23721,\n  \"semitic</w>\": 34894,\n  \"semitism</w>\": 25911,\n  \"semper\": 47391,\n  \"sen\": 1057,\n  \"sen</w>\": 2249,\n  \"sena</w>\": 21584,\n  \"senate\": 30703,\n  \"senate</w>\": 6843,\n  \"senator\": 20871,\n  \"senator</w>\": 8495,\n  \"senators</w>\": 16889,\n  \"send\": 27684,\n  \"send</w>\": 3625,\n  \"sending</w>\": 6985,\n  \"sends</w>\": 10817,\n  \"sene\": 25269,\n  \"seneca</w>\": 33419,\n  \"senegal</w>\": 28255,\n  \"senew\": 49313,\n  \"seng\": 43022,\n  \"seng</w>\": 29971,\n  \"senior\": 19865,\n  \"senior</w>\": 3415,\n  \"seniors</w>\": 8138,\n  \"senna</w>\": 36195,\n  \"senpai</w>\": 46562,\n  \"sens\": 5218,\n  \"sens</w>\": 22837,\n  \"sensation</w>\": 19383,\n  \"sensational</w>\": 23051,\n  \"sense\": 29162,\n  \"sense</w>\": 4747,\n  \"sensei</w>\": 36158,\n  \"senses</w>\": 21809,\n  \"sensi\": 38802,\n  \"sensible</w>\": 30635,\n  \"sensing</w>\": 29236,\n  \"sensiti\": 20531,\n  \"sensitive</w>\": 13734,\n  \"sensitivity</w>\": 27788,\n  \"sensor</w>\": 15330,\n  \"sensors</w>\": 20356,\n  \"sensory</w>\": 21831,\n  \"sensu\": 28157,\n  \"sensual</w>\": 40860,\n  \"sent\": 6200,\n  \"sent</w>\": 3676,\n  \"sentence</w>\": 12737,\n  \"sentenced</w>\": 17773,\n  \"sentences</w>\": 25858,\n  \"sentencing</w>\": 34394,\n  \"senti\": 19042,\n  \"sentim\": 25102,\n  \"sentiment</w>\": 25949,\n  \"sentimental</w>\": 40070,\n  \"sentiments</w>\": 47450,\n  \"sentin\": 20042,\n  \"sentinel</w>\": 23123,\n  \"senting</w>\": 3924,\n  \"seo\": 24743,\n  \"seo</w>\": 8622,\n  \"seok\": 34697,\n  \"seok</w>\": 22482,\n  \"seokjin</w>\": 45584,\n  \"seoul</w>\": 13253,\n  \"sep\": 3212,\n  \"sep</w>\": 10434,\n  \"separ\": 6859,\n  \"separate</w>\": 13886,\n  \"separated</w>\": 22163,\n  \"separately</w>\": 41904,\n  \"separates</w>\": 45365,\n  \"separati\": 39377,\n  \"separating</w>\": 43480,\n  \"separation</w>\": 22007,\n  \"sephora</w>\": 38414,\n  \"sepsis</w>\": 40205,\n  \"sept</w>\": 5380,\n  \"septe\": 3672,\n  \"september</w>\": 3707,\n  \"septic</w>\": 34690,\n  \"sepul\": 47360,\n  \"seq</w>\": 44379,\n  \"sequ\": 5491,\n  \"seque\": 44662,\n  \"sequel</w>\": 15701,\n  \"sequence</w>\": 18833,\n  \"sequences</w>\": 47306,\n  \"sequencing</w>\": 33484,\n  \"sequo\": 32781,\n  \"sequoia</w>\": 42404,\n  \"ser\": 803,\n  \"ser</w>\": 2771,\n  \"sera</w>\": 28250,\n  \"serbia</w>\": 19038,\n  \"serbian</w>\": 33687,\n  \"sere\": 35770,\n  \"seren\": 7880,\n  \"serena</w>\": 19519,\n  \"serenawilliams</w>\": 48316,\n  \"serendip\": 45805,\n  \"serendipity</w>\": 49386,\n  \"serene</w>\": 28269,\n  \"serenity</w>\": 24187,\n  \"serge\": 13477,\n  \"serge</w>\": 35700,\n  \"sergeant</w>\": 22049,\n  \"sergei</w>\": 39870,\n  \"sergey</w>\": 35390,\n  \"sergi\": 47675,\n  \"sergio</w>\": 18359,\n  \"seri\": 2763,\n  \"seri</w>\": 37509,\n  \"serial</w>\": 14216,\n  \"serie</w>\": 19752,\n  \"seriea</w>\": 32660,\n  \"series</w>\": 1857,\n  \"serious\": 47421,\n  \"serious</w>\": 4770,\n  \"seriously</w>\": 4885,\n  \"sermon</w>\": 24884,\n  \"sero\": 48883,\n  \"serpent\": 37084,\n  \"serpent</w>\": 35364,\n  \"serra</w>\": 39851,\n  \"serrano</w>\": 44236,\n  \"sers</w>\": 13509,\n  \"serum</w>\": 25385,\n  \"serv\": 1297,\n  \"serv</w>\": 24571,\n  \"servant</w>\": 20810,\n  \"servants</w>\": 29652,\n  \"serve\": 39202,\n  \"serve</w>\": 2838,\n  \"served</w>\": 4740,\n  \"server\": 36458,\n  \"server</w>\": 8398,\n  \"serverless</w>\": 49243,\n  \"servers</w>\": 22262,\n  \"serves</w>\": 9915,\n  \"servic\": 27115,\n  \"service\": 21496,\n  \"service</w>\": 2086,\n  \"serviced</w>\": 44687,\n  \"services</w>\": 3100,\n  \"servicing</w>\": 41300,\n  \"serving</w>\": 5722,\n  \"sery</w>\": 14279,\n  \"ses\": 23708,\n  \"ses</w>\": 1386,\n  \"sesame</w>\": 21706,\n  \"sese</w>\": 37128,\n  \"sesh</w>\": 24274,\n  \"session</w>\": 2550,\n  \"sessions</w>\": 6327,\n  \"set\": 7965,\n  \"set</w>\": 1167,\n  \"setback</w>\": 43605,\n  \"seth\": 20005,\n  \"seth</w>\": 11870,\n  \"sethu\": 38933,\n  \"setlist</w>\": 33141,\n  \"seton</w>\": 43799,\n  \"sets</w>\": 4650,\n  \"sett\": 4984,\n  \"sett</w>\": 17567,\n  \"sette</w>\": 14613,\n  \"setter</w>\": 23153,\n  \"settes</w>\": 44145,\n  \"setti</w>\": 45170,\n  \"setting</w>\": 5264,\n  \"settings</w>\": 18628,\n  \"settle</w>\": 15075,\n  \"settled</w>\": 18310,\n  \"settlement</w>\": 16494,\n  \"settlements</w>\": 36605,\n  \"settlers</w>\": 35671,\n  \"settles</w>\": 41498,\n  \"settling</w>\": 22036,\n  \"setup</w>\": 11092,\n  \"seu</w>\": 31539,\n  \"seul\": 48975,\n  \"seum</w>\": 18838,\n  \"seun\": 24209,\n  \"seung\": 32393,\n  \"seung</w>\": 33711,\n  \"seungri</w>\": 41627,\n  \"seuss</w>\": 34441,\n  \"sev\": 26585,\n  \"sev</w>\": 37600,\n  \"seva</w>\": 42604,\n  \"seve\": 21458,\n  \"seve</w>\": 22468,\n  \"sevel\": 17439,\n  \"seven\": 7874,\n  \"seven</w>\": 5757,\n  \"sevens</w>\": 29911,\n  \"sevent\": 43048,\n  \"seventeen</w>\": 19337,\n  \"seventh</w>\": 17568,\n  \"seventy</w>\": 47170,\n  \"sever\": 3250,\n  \"sever</w>\": 45557,\n  \"several</w>\": 5560,\n  \"severance</w>\": 26194,\n  \"severe</w>\": 6215,\n  \"severely</w>\": 24417,\n  \"severn</w>\": 34626,\n  \"severy\": 34207,\n  \"sevilla</w>\": 24947,\n  \"seville</w>\": 34988,\n  \"sew</w>\": 28640,\n  \"sewage</w>\": 32777,\n  \"sewer</w>\": 28294,\n  \"sewing</w>\": 15974,\n  \"sewn</w>\": 42118,\n  \"sex\": 3548,\n  \"sex</w>\": 5937,\n  \"sexi\": 20562,\n  \"sexiest</w>\": 25426,\n  \"sexism</w>\": 32059,\n  \"sexist</w>\": 33047,\n  \"sexu\": 14741,\n  \"sexual</w>\": 6749,\n  \"sexuality</w>\": 21244,\n  \"sexually</w>\": 23032,\n  \"sexy\": 21019,\n  \"sexy</w>\": 38127,\n  \"sey\": 6317,\n  \"sey</w>\": 2258,\n  \"seychel\": 36809,\n  \"seychelles</w>\": 38519,\n  \"seye</w>\": 35604,\n  \"seym\": 22657,\n  \"seymour</w>\": 25850,\n  \"seys</w>\": 15081,\n  \"sez</w>\": 42377,\n  \"seÃ±\": 43368,\n  \"sf\": 4435,\n  \"sf</w>\": 4915,\n  \"sfa</w>\": 32675,\n  \"sfam</w>\": 37649,\n  \"sfb</w>\": 27930,\n  \"sfc</w>\": 14129,\n  \"sfest</w>\": 49024,\n  \"sff</w>\": 42056,\n  \"sfgiants</w>\": 20923,\n  \"sfield</w>\": 11801,\n  \"sfo</w>\": 39182,\n  \"sfootball</w>\": 45259,\n  \"sfor\": 9115,\n  \"sford</w>\": 28917,\n  \"sforsale</w>\": 28888,\n  \"sfw</w>\": 18073,\n  \"sfx</w>\": 37995,\n  \"sg\": 9599,\n  \"sg</w>\": 7611,\n  \"sga</w>\": 33049,\n  \"sgate</w>\": 27558,\n  \"sgh</w>\": 47590,\n  \"sgo\": 5393,\n  \"sgo</w>\": 21044,\n  \"sgt</w>\": 13748,\n  \"sh\": 552,\n  \"sh</w>\": 849,\n  \"sha\": 1514,\n  \"sha</w>\": 3337,\n  \"shaa</w>\": 44221,\n  \"shab\": 8323,\n  \"shabbat</w>\": 38042,\n  \"shabby</w>\": 28838,\n  \"shack\": 23866,\n  \"shack</w>\": 18785,\n  \"shad\": 3182,\n  \"shad</w>\": 23874,\n  \"shade\": 34554,\n  \"shade</w>\": 10097,\n  \"shaded</w>\": 43506,\n  \"shades\": 46608,\n  \"shades</w>\": 9270,\n  \"shadesof\": 45180,\n  \"shading</w>\": 37348,\n  \"shado\": 9325,\n  \"shadow\": 15243,\n  \"shadow</w>\": 7068,\n  \"shadowhun\": 19931,\n  \"shadowhunters</w>\": 24834,\n  \"shadowing</w>\": 46092,\n  \"shadows</w>\": 12971,\n  \"shady</w>\": 22158,\n  \"shaf\": 12032,\n  \"shaft</w>\": 21545,\n  \"shag\": 22439,\n  \"shaggy</w>\": 42662,\n  \"shah\": 13203,\n  \"shah</w>\": 8439,\n  \"shahe\": 23643,\n  \"shaheed</w>\": 30060,\n  \"shaheer</w>\": 43969,\n  \"shahi</w>\": 46972,\n  \"shahid\": 25696,\n  \"shahid</w>\": 27138,\n  \"shahidkapoor</w>\": 29892,\n  \"shahzad</w>\": 45915,\n  \"shai</w>\": 47941,\n  \"shaikh</w>\": 45712,\n  \"shail\": 37603,\n  \"shair</w>\": 43135,\n  \"shak\": 8385,\n  \"shake\": 8206,\n  \"shake</w>\": 8251,\n  \"shaken</w>\": 38237,\n  \"shaker</w>\": 26210,\n  \"shakers</w>\": 38411,\n  \"shakes</w>\": 19668,\n  \"shakespe\": 9890,\n  \"shakespeare\": 22499,\n  \"shakespeare</w>\": 12488,\n  \"shakespearesunday</w>\": 32320,\n  \"shaking</w>\": 19101,\n  \"shakira</w>\": 40795,\n  \"shakti\": 48593,\n  \"shakti</w>\": 32458,\n  \"shakur</w>\": 48915,\n  \"shal\": 15056,\n  \"shal</w>\": 28175,\n  \"shale</w>\": 32864,\n  \"shall</w>\": 4742,\n  \"shallow</w>\": 23730,\n  \"shalom</w>\": 31339,\n  \"sham\": 6453,\n  \"sham</w>\": 9005,\n  \"shaman</w>\": 48727,\n  \"shambles</w>\": 40799,\n  \"shame\": 14776,\n  \"shame</w>\": 7593,\n  \"shameful</w>\": 28283,\n  \"shameless</w>\": 25380,\n  \"shaming</w>\": 40553,\n  \"shampoo</w>\": 23944,\n  \"shamrock</w>\": 34199,\n  \"shan\": 5171,\n  \"shan</w>\": 8834,\n  \"shana</w>\": 44835,\n  \"shand\": 29101,\n  \"shane\": 26863,\n  \"shane</w>\": 11572,\n  \"shang\": 11141,\n  \"shanghai</w>\": 12742,\n  \"shani\": 46665,\n  \"shank</w>\": 24685,\n  \"shankar</w>\": 24108,\n  \"shann\": 9932,\n  \"shannon\": 22842,\n  \"shannon</w>\": 13581,\n  \"shant\": 36610,\n  \"shap\": 5581,\n  \"shape\": 26925,\n  \"shape</w>\": 6448,\n  \"shaped</w>\": 10127,\n  \"shapes</w>\": 15377,\n  \"shaping</w>\": 18632,\n  \"shapiro</w>\": 32110,\n  \"shaq\": 46402,\n  \"shaq</w>\": 26843,\n  \"shar\": 1669,\n  \"shar</w>\": 36542,\n  \"shara</w>\": 48849,\n  \"sharapo\": 36489,\n  \"sharapova</w>\": 36671,\n  \"shard</w>\": 42207,\n  \"share\": 7585,\n  \"share</w>\": 1978,\n  \"shared</w>\": 5368,\n  \"shareholder</w>\": 38241,\n  \"shareholders</w>\": 34778,\n  \"sharepoint</w>\": 39213,\n  \"shares</w>\": 4974,\n  \"sharethe\": 49277,\n  \"shareyour\": 45890,\n  \"shari\": 27738,\n  \"shari</w>\": 47390,\n  \"sharia</w>\": 37244,\n  \"sharif</w>\": 15501,\n  \"sharing</w>\": 3567,\n  \"sharjah</w>\": 33420,\n  \"shark\": 15836,\n  \"shark</w>\": 7980,\n  \"sharks</w>\": 10047,\n  \"sharkweek</w>\": 39571,\n  \"sharma</w>\": 10105,\n  \"sharon\": 28722,\n  \"sharon</w>\": 14138,\n  \"sharp\": 17126,\n  \"sharp</w>\": 8157,\n  \"sharpe</w>\": 34374,\n  \"sharpen\": 41465,\n  \"sharpie</w>\": 46858,\n  \"sharply</w>\": 37185,\n  \"shasta</w>\": 46727,\n  \"shat\": 12169,\n  \"shat</w>\": 44388,\n  \"shatter</w>\": 45008,\n  \"shattered</w>\": 26820,\n  \"shau\": 13750,\n  \"shaun\": 23446,\n  \"shaun</w>\": 16669,\n  \"shav\": 11410,\n  \"shave</w>\": 17735,\n  \"shaved</w>\": 25571,\n  \"shaving</w>\": 24261,\n  \"shaw\": 6122,\n  \"shaw</w>\": 6805,\n  \"shawa</w>\": 46413,\n  \"shawl</w>\": 35132,\n  \"shawn\": 16677,\n  \"shawn</w>\": 10970,\n  \"shawnee</w>\": 48060,\n  \"shawnmendes</w>\": 27277,\n  \"shawty</w>\": 38026,\n  \"shay\": 10778,\n  \"shay</w>\": 18361,\n  \"shaykh</w>\": 47223,\n  \"shaz\": 18618,\n  \"shazam</w>\": 29063,\n  \"shc</w>\": 43419,\n  \"shd</w>\": 37729,\n  \"she\": 1729,\n  \"she</w>\": 1043,\n  \"shea</w>\": 20407,\n  \"shead\": 44287,\n  \"shead</w>\": 20434,\n  \"shealth\": 41743,\n  \"shealth</w>\": 22197,\n  \"shear\": 27974,\n  \"shear</w>\": 32108,\n  \"shearer</w>\": 40505,\n  \"sheath</w>\": 45637,\n  \"shed\": 16586,\n  \"shed</w>\": 1492,\n  \"shedding</w>\": 33608,\n  \"sheds</w>\": 25921,\n  \"shee\": 23450,\n  \"shee</w>\": 34321,\n  \"sheed</w>\": 26105,\n  \"sheehan</w>\": 41809,\n  \"sheen</w>\": 25025,\n  \"sheep\": 23604,\n  \"sheep</w>\": 9629,\n  \"sheer</w>\": 17577,\n  \"sheeran</w>\": 18561,\n  \"sheet</w>\": 7298,\n  \"sheets</w>\": 12744,\n  \"shef\": 8237,\n  \"sheff\": 38844,\n  \"sheff</w>\": 43821,\n  \"sheffiel\": 26940,\n  \"sheffield\": 41763,\n  \"sheffield</w>\": 10420,\n  \"sheffieldissuper</w>\": 33628,\n  \"sheh\": 31667,\n  \"sheikh</w>\": 15031,\n  \"sheil\": 42765,\n  \"sheila</w>\": 25734,\n  \"shek</w>\": 33285,\n  \"shel\": 3159,\n  \"shelby\": 36906,\n  \"shelby</w>\": 16885,\n  \"sheldon</w>\": 25079,\n  \"shelf</w>\": 10955,\n  \"shell\": 23374,\n  \"shell</w>\": 6648,\n  \"shelley</w>\": 22497,\n  \"shelling</w>\": 43166,\n  \"shells</w>\": 19265,\n  \"shelly</w>\": 37461,\n  \"shelter</w>\": 8599,\n  \"sheltered</w>\": 48070,\n  \"shelters</w>\": 24312,\n  \"shelton</w>\": 24471,\n  \"shelves</w>\": 16225,\n  \"shem</w>\": 40299,\n  \"shen\": 10154,\n  \"shen</w>\": 31098,\n  \"shenan\": 20965,\n  \"shenando\": 44666,\n  \"shenanigans</w>\": 26590,\n  \"shenko</w>\": 39751,\n  \"shenmue</w>\": 48279,\n  \"shenzhen</w>\": 38970,\n  \"shep\": 33757,\n  \"shep</w>\": 44857,\n  \"shepard</w>\": 26810,\n  \"shepher\": 11008,\n  \"shepherd</w>\": 13242,\n  \"shepherds</w>\": 42792,\n  \"sheppard</w>\": 37304,\n  \"sher\": 3570,\n  \"sher</w>\": 4510,\n  \"sheraton</w>\": 39400,\n  \"shere</w>\": 21507,\n  \"sheri\": 9235,\n  \"sheridan</w>\": 27085,\n  \"sheriff</w>\": 10309,\n  \"sherlock</w>\": 17294,\n  \"sherman</w>\": 17822,\n  \"sherry\": 44348,\n  \"sherry</w>\": 24689,\n  \"shers</w>\": 14141,\n  \"sherwood</w>\": 24527,\n  \"sheryl</w>\": 39773,\n  \"shes\": 45514,\n  \"shes</w>\": 2502,\n  \"shet\": 15850,\n  \"shetland</w>\": 29595,\n  \"shetty</w>\": 25533,\n  \"shev\": 45182,\n  \"sheva</w>\": 45132,\n  \"shh</w>\": 35025,\n  \"shhh</w>\": 36932,\n  \"shi\": 823,\n  \"shi</w>\": 3533,\n  \"shia</w>\": 23791,\n  \"shibu\": 36177,\n  \"shibuya</w>\": 41623,\n  \"shie</w>\": 26638,\n  \"shiel\": 33413,\n  \"shield</w>\": 8670,\n  \"shields</w>\": 19085,\n  \"shies</w>\": 35312,\n  \"shif\": 35317,\n  \"shift\": 43767,\n  \"shift</w>\": 6905,\n  \"shifted</w>\": 34429,\n  \"shifter</w>\": 48944,\n  \"shifting</w>\": 21992,\n  \"shifts</w>\": 23957,\n  \"shik</w>\": 36980,\n  \"shil\": 14370,\n  \"shill\": 32121,\n  \"shill</w>\": 30090,\n  \"shilpa\": 47062,\n  \"shilpa</w>\": 40690,\n  \"shim\": 11986,\n  \"shim</w>\": 32780,\n  \"shima</w>\": 14382,\n  \"shimano</w>\": 48904,\n  \"shimi</w>\": 40517,\n  \"shimmer</w>\": 38792,\n  \"shin\": 5664,\n  \"shin</w>\": 11784,\n  \"shinde</w>\": 41516,\n  \"shine\": 17582,\n  \"shine</w>\": 3780,\n  \"shinee</w>\": 19660,\n  \"shines</w>\": 16015,\n  \"shing\": 38641,\n  \"shing</w>\": 1743,\n  \"shining</w>\": 10485,\n  \"shino\": 43074,\n  \"shiny</w>\": 12190,\n  \"ship\": 7645,\n  \"ship</w>\": 1158,\n  \"shipment</w>\": 28553,\n  \"shipp\": 34709,\n  \"shipped</w>\": 15279,\n  \"shippers</w>\": 44789,\n  \"shipping</w>\": 5721,\n  \"ships</w>\": 3262,\n  \"shipwreck</w>\": 48878,\n  \"shipy\": 26828,\n  \"shipyard</w>\": 31273,\n  \"shir\": 1956,\n  \"shiraz</w>\": 35618,\n  \"shire\": 11975,\n  \"shire</w>\": 2968,\n  \"shirehour</w>\": 32456,\n  \"shirley</w>\": 18189,\n  \"shiro</w>\": 26048,\n  \"shirt\": 27576,\n  \"shirt</w>\": 2523,\n  \"shirtless</w>\": 28959,\n  \"shirts</w>\": 5803,\n  \"shistory</w>\": 34979,\n  \"shiv\": 18042,\n  \"shiv</w>\": 37121,\n  \"shiva\": 33881,\n  \"shiva</w>\": 21174,\n  \"shka</w>\": 38944,\n  \"shld</w>\": 49359,\n  \"shma</w>\": 48074,\n  \"shment</w>\": 8802,\n  \"shments</w>\": 18822,\n  \"sho\": 719,\n  \"sho</w>\": 13756,\n  \"shock\": 19617,\n  \"shock</w>\": 8736,\n  \"shocked</w>\": 15787,\n  \"shocker</w>\": 37971,\n  \"shockey</w>\": 22258,\n  \"shocking</w>\": 13394,\n  \"shocks</w>\": 31886,\n  \"shoe\": 16308,\n  \"shoe</w>\": 7342,\n  \"shoes\": 49391,\n  \"shoes</w>\": 4079,\n  \"shol\": 21472,\n  \"sholm</w>\": 44139,\n  \"shome</w>\": 42701,\n  \"shon\": 19526,\n  \"shon</w>\": 37621,\n  \"shone</w>\": 47173,\n  \"shoo\": 1975,\n  \"shook</w>\": 20730,\n  \"shoops</w>\": 29956,\n  \"shoot\": 12531,\n  \"shoot</w>\": 3704,\n  \"shooter</w>\": 13645,\n  \"shooters</w>\": 31902,\n  \"shooting</w>\": 3992,\n  \"shootings</w>\": 26753,\n  \"shootout</w>\": 20666,\n  \"shoots</w>\": 14144,\n  \"shop\": 5738,\n  \"shop</w>\": 1557,\n  \"shopify</w>\": 47949,\n  \"shoplocal</w>\": 21775,\n  \"shopp\": 38486,\n  \"shoppe</w>\": 38236,\n  \"shopped</w>\": 28088,\n  \"shopper</w>\": 24346,\n  \"shoppers</w>\": 22316,\n  \"shopping\": 42101,\n  \"shopping</w>\": 4266,\n  \"shops</w>\": 6467,\n  \"shopsmall</w>\": 35942,\n  \"shor\": 3209,\n  \"shore\": 14717,\n  \"shore</w>\": 5928,\n  \"shored\": 33140,\n  \"shoreditch</w>\": 35042,\n  \"shoreline</w>\": 34807,\n  \"shores</w>\": 18102,\n  \"short\": 6803,\n  \"short</w>\": 3005,\n  \"shortage</w>\": 19910,\n  \"shortages</w>\": 38730,\n  \"shortcuts</w>\": 45793,\n  \"shorten</w>\": 41711,\n  \"shorter</w>\": 20350,\n  \"shortest</w>\": 33717,\n  \"shortfilm</w>\": 37204,\n  \"shorth\": 37397,\n  \"shortlist</w>\": 28163,\n  \"shortlisted</w>\": 20631,\n  \"shortly</w>\": 11967,\n  \"shorts</w>\": 9680,\n  \"shorty</w>\": 33502,\n  \"shot\": 9805,\n  \"shot</w>\": 2000,\n  \"shotel</w>\": 42365,\n  \"shotgun</w>\": 21643,\n  \"shots</w>\": 5342,\n  \"shou\": 3890,\n  \"shoul\": 29847,\n  \"should\": 14947,\n  \"should</w>\": 1535,\n  \"shoulder</w>\": 8476,\n  \"shoulders</w>\": 18738,\n  \"shouldn</w>\": 9416,\n  \"shour</w>\": 20025,\n  \"shouse</w>\": 28671,\n  \"shout\": 7335,\n  \"shout</w>\": 5214,\n  \"shouted</w>\": 44397,\n  \"shouting</w>\": 26464,\n  \"shoutout</w>\": 8274,\n  \"shouts</w>\": 26709,\n  \"shovel</w>\": 31778,\n  \"show\": 2133,\n  \"show</w>\": 1080,\n  \"showbiz</w>\": 34156,\n  \"showcas\": 14290,\n  \"showcase</w>\": 7265,\n  \"showcased</w>\": 35786,\n  \"showcases</w>\": 26266,\n  \"showcasing</w>\": 17036,\n  \"showdown</w>\": 15576,\n  \"showed</w>\": 7150,\n  \"shower</w>\": 7777,\n  \"showers</w>\": 9893,\n  \"showing</w>\": 3649,\n  \"shown</w>\": 8506,\n  \"showroom</w>\": 16821,\n  \"shows</w>\": 2665,\n  \"showtime\": 40576,\n  \"showtime</w>\": 15442,\n  \"showyour\": 46733,\n  \"shp</w>\": 38341,\n  \"shq</w>\": 21145,\n  \"shr\": 10118,\n  \"shra\": 21360,\n  \"shradd\": 28172,\n  \"shraddha\": 35208,\n  \"shraddhakapoor</w>\": 40385,\n  \"shre\": 12101,\n  \"shred\": 19756,\n  \"shred</w>\": 33017,\n  \"shredded</w>\": 31772,\n  \"shredding</w>\": 45534,\n  \"shree</w>\": 37410,\n  \"shrek</w>\": 35009,\n  \"shrews\": 26411,\n  \"shrewsbury</w>\": 30921,\n  \"shri\": 8838,\n  \"shri</w>\": 11424,\n  \"shrimp</w>\": 12727,\n  \"shrin\": 24865,\n  \"shrine</w>\": 16156,\n  \"shrink</w>\": 34957,\n  \"shrinking</w>\": 41243,\n  \"shrm</w>\": 44163,\n  \"shro\": 15259,\n  \"shroff</w>\": 32081,\n  \"shrop\": 22630,\n  \"shropshire</w>\": 26344,\n  \"shru\": 14911,\n  \"shrub</w>\": 41464,\n  \"shrubs</w>\": 47975,\n  \"shrun\": 46767,\n  \"shs</w>\": 16184,\n  \"sht</w>\": 44210,\n  \"shti</w>\": 38927,\n  \"shu\": 2872,\n  \"shu</w>\": 17651,\n  \"shua</w>\": 33771,\n  \"shub</w>\": 40552,\n  \"shud</w>\": 45782,\n  \"shuff\": 42641,\n  \"shuffle</w>\": 21681,\n  \"shui</w>\": 45473,\n  \"shuk\": 29927,\n  \"shukla</w>\": 46829,\n  \"shul\": 30721,\n  \"shum\": 37383,\n  \"shun\": 24479,\n  \"shun</w>\": 39594,\n  \"shur\": 41032,\n  \"shut\": 8702,\n  \"shut</w>\": 8282,\n  \"shutdown</w>\": 16051,\n  \"shutout</w>\": 24385,\n  \"shuts</w>\": 28313,\n  \"shutt\": 31866,\n  \"shutter\": 36235,\n  \"shutter</w>\": 33902,\n  \"shutters</w>\": 46894,\n  \"shutting</w>\": 31383,\n  \"shuttle</w>\": 15842,\n  \"shwar</w>\": 41640,\n  \"shy\": 22678,\n  \"shy</w>\": 9682,\n  \"si\": 564,\n  \"si</w>\": 2990,\n  \"sia</w>\": 2357,\n  \"siam\": 29686,\n  \"siam</w>\": 48248,\n  \"siamese</w>\": 43161,\n  \"sian\": 28510,\n  \"sian</w>\": 6221,\n  \"sians</w>\": 26583,\n  \"sias</w>\": 28645,\n  \"siber\": 22206,\n  \"siberia</w>\": 39969,\n  \"siberian</w>\": 34058,\n  \"sibl\": 14338,\n  \"sible</w>\": 14507,\n  \"sibling\": 43060,\n  \"sibling</w>\": 23779,\n  \"siblings</w>\": 17156,\n  \"sic\": 8278,\n  \"sic</w>\": 1118,\n  \"sica</w>\": 34125,\n  \"sical</w>\": 33875,\n  \"sichuan</w>\": 48950,\n  \"sicilian</w>\": 45292,\n  \"sicily</w>\": 23179,\n  \"sick\": 11143,\n  \"sick</w>\": 5359,\n  \"sickest</w>\": 47972,\n  \"sickle</w>\": 41459,\n  \"sickness</w>\": 28898,\n  \"sics</w>\": 26297,\n  \"sid\": 10117,\n  \"sid</w>\": 15119,\n  \"sidd\": 19842,\n  \"siddi\": 35227,\n  \"side\": 5869,\n  \"side</w>\": 1145,\n  \"sided</w>\": 21061,\n  \"sidekick</w>\": 44683,\n  \"sidel\": 43557,\n  \"sideline</w>\": 32056,\n  \"sidelines</w>\": 31046,\n  \"sider</w>\": 30581,\n  \"siders</w>\": 41249,\n  \"sides</w>\": 7578,\n  \"sideshow</w>\": 46789,\n  \"sidewalk</w>\": 23278,\n  \"sidewalks</w>\": 43583,\n  \"sideways</w>\": 35593,\n  \"siding</w>\": 38758,\n  \"sidney</w>\": 22598,\n  \"sie\": 8533,\n  \"sie</w>\": 5685,\n  \"sieg\": 49203,\n  \"siege</w>\": 18460,\n  \"siegel</w>\": 48559,\n  \"siem\": 18434,\n  \"siemens</w>\": 30147,\n  \"siempre</w>\": 44030,\n  \"siena</w>\": 33336,\n  \"sienna</w>\": 40373,\n  \"sier\": 10028,\n  \"sier</w>\": 7444,\n  \"sierra</w>\": 13552,\n  \"siers</w>\": 35923,\n  \"sies</w>\": 16367,\n  \"siest</w>\": 18323,\n  \"sif</w>\": 29300,\n  \"sig\": 872,\n  \"sig</w>\": 19145,\n  \"sigh\": 36303,\n  \"sigh</w>\": 15505,\n  \"sighs</w>\": 44579,\n  \"sight\": 16897,\n  \"sight</w>\": 6329,\n  \"sighted</w>\": 33034,\n  \"sighting</w>\": 17507,\n  \"sightings</w>\": 30004,\n  \"sights</w>\": 17364,\n  \"sightseeing</w>\": 34210,\n  \"sigma\": 45075,\n  \"sigma</w>\": 15697,\n  \"sign\": 5538,\n  \"sign</w>\": 2292,\n  \"signage</w>\": 21156,\n  \"signal</w>\": 10781,\n  \"signaling</w>\": 38492,\n  \"signalling</w>\": 48426,\n  \"signals</w>\": 17150,\n  \"signation</w>\": 24347,\n  \"signature</w>\": 9189,\n  \"signatures</w>\": 21865,\n  \"signed</w>\": 3163,\n  \"signee</w>\": 39778,\n  \"signi\": 34023,\n  \"signific\": 6374,\n  \"significance</w>\": 23769,\n  \"significant</w>\": 8735,\n  \"significantly</w>\": 16187,\n  \"signing</w>\": 4401,\n  \"signingday</w>\": 40282,\n  \"signings</w>\": 27731,\n  \"signs</w>\": 4659,\n  \"signup</w>\": 40791,\n  \"sigue</w>\": 49401,\n  \"sii</w>\": 36672,\n  \"sik\": 19974,\n  \"sik</w>\": 22413,\n  \"sika</w>\": 31144,\n  \"sikh</w>\": 21829,\n  \"sikhs</w>\": 45426,\n  \"sil\": 1556,\n  \"sil</w>\": 8315,\n  \"sila</w>\": 41754,\n  \"sile\": 37620,\n  \"silen\": 39048,\n  \"silence</w>\": 8462,\n  \"silenced</w>\": 45415,\n  \"silent\": 30352,\n  \"silent</w>\": 8487,\n  \"silently</w>\": 42640,\n  \"silhou\": 20589,\n  \"silhouette</w>\": 26149,\n  \"silic\": 23830,\n  \"silicon\": 32412,\n  \"silicon</w>\": 17888,\n  \"silicone</w>\": 28221,\n  \"silk\": 25891,\n  \"silk</w>\": 9743,\n  \"silky</w>\": 29554,\n  \"sill\": 42468,\n  \"sill</w>\": 48024,\n  \"silly</w>\": 11883,\n  \"silon</w>\": 31841,\n  \"sils</w>\": 39708,\n  \"silva</w>\": 16489,\n  \"silve\": 37697,\n  \"silver\": 7525,\n  \"silver</w>\": 3467,\n  \"silverado</w>\": 46160,\n  \"silverstone</w>\": 29666,\n  \"silvia</w>\": 37289,\n  \"sim\": 5026,\n  \"sim</w>\": 10740,\n  \"sima</w>\": 35871,\n  \"simba</w>\": 39492,\n  \"simcoe</w>\": 47148,\n  \"sime\": 28329,\n  \"simi</w>\": 38073,\n  \"simil\": 7202,\n  \"similar</w>\": 8547,\n  \"similarities</w>\": 34716,\n  \"simm\": 13001,\n  \"simmons</w>\": 14699,\n  \"simo</w>\": 37171,\n  \"simon\": 8796,\n  \"simon</w>\": 6668,\n  \"simona</w>\": 46277,\n  \"simone</w>\": 19062,\n  \"simons</w>\": 33097,\n  \"simp\": 2542,\n  \"simple\": 19018,\n  \"simple</w>\": 4129,\n  \"simpler</w>\": 35489,\n  \"simplest</w>\": 39588,\n  \"simpli\": 16868,\n  \"simplicity</w>\": 21262,\n  \"simplified</w>\": 36647,\n  \"simplify</w>\": 35479,\n  \"simply\": 25637,\n  \"simply</w>\": 6151,\n  \"simpson\": 41805,\n  \"simpson</w>\": 11750,\n  \"simpsons</w>\": 21092,\n  \"sims</w>\": 14021,\n  \"simul\": 9845,\n  \"simulated</w>\": 46395,\n  \"simulation</w>\": 18610,\n  \"simulator</w>\": 20821,\n  \"simultaneous</w>\": 48816,\n  \"simultaneously</w>\": 28575,\n  \"sin\": 1303,\n  \"sin</w>\": 3421,\n  \"sina</w>\": 19541,\n  \"sinai</w>\": 33226,\n  \"sinatra</w>\": 27262,\n  \"sinc</w>\": 30464,\n  \"since</w>\": 1855,\n  \"sincere\": 24513,\n  \"sincere</w>\": 24886,\n  \"sincerely</w>\": 25673,\n  \"sinclair</w>\": 23100,\n  \"sind\": 39598,\n  \"sind</w>\": 30877,\n  \"sindh</w>\": 20754,\n  \"sindia</w>\": 48038,\n  \"sine\": 22741,\n  \"sine</w>\": 33793,\n  \"sinfo</w>\": 47178,\n  \"sing\": 1387,\n  \"sing</w>\": 1197,\n  \"singapo\": 27861,\n  \"singapore\": 28879,\n  \"singapore</w>\": 6754,\n  \"singer\": 33880,\n  \"singer</w>\": 5108,\n  \"singers</w>\": 15613,\n  \"singersongwriter</w>\": 44585,\n  \"singh\": 19445,\n  \"singh</w>\": 5715,\n  \"singing</w>\": 5864,\n  \"single\": 19524,\n  \"single</w>\": 2688,\n  \"singles</w>\": 12025,\n  \"singleton</w>\": 46247,\n  \"singly</w>\": 16619,\n  \"sings</w>\": 13635,\n  \"singul\": 34003,\n  \"singular</w>\": 44009,\n  \"singularity</w>\": 48410,\n  \"sinha</w>\": 29416,\n  \"sini\": 41781,\n  \"sini</w>\": 26319,\n  \"sinister</w>\": 31313,\n  \"sink\": 37232,\n  \"sink</w>\": 14551,\n  \"sinking</w>\": 27949,\n  \"sinks</w>\": 32710,\n  \"sinn</w>\": 36315,\n  \"sinner</w>\": 45380,\n  \"sinners</w>\": 43436,\n  \"sino</w>\": 29759,\n  \"sins</w>\": 9345,\n  \"sinthe\": 30737,\n  \"sinu\": 37351,\n  \"sinus</w>\": 47535,\n  \"sio</w>\": 10807,\n  \"siob\": 40954,\n  \"siology</w>\": 46315,\n  \"sion\": 5676,\n  \"sion</w>\": 1015,\n  \"sional</w>\": 14533,\n  \"sionally</w>\": 30754,\n  \"sions</w>\": 4060,\n  \"sioux\": 44695,\n  \"sioux</w>\": 24954,\n  \"sip</w>\": 16096,\n  \"sipping</w>\": 28527,\n  \"sir\": 10708,\n  \"sir</w>\": 3846,\n  \"sire</w>\": 28450,\n  \"siren</w>\": 33026,\n  \"sirens</w>\": 35907,\n  \"siri\": 13986,\n  \"siri</w>\": 18394,\n  \"sirius\": 23574,\n  \"sirius</w>\": 34999,\n  \"siriusxm</w>\": 29833,\n  \"sirloin</w>\": 46828,\n  \"sis\": 18132,\n  \"sis</w>\": 2580,\n  \"sisd</w>\": 27132,\n  \"sisi</w>\": 37892,\n  \"siss\": 42929,\n  \"sissy</w>\": 27564,\n  \"sist</w>\": 20520,\n  \"sista</w>\": 37448,\n  \"sister\": 17417,\n  \"sister</w>\": 3677,\n  \"sisterhood</w>\": 37313,\n  \"sisters</w>\": 6404,\n  \"sit\": 7387,\n  \"sit</w>\": 4037,\n  \"sitcom</w>\": 30426,\n  \"site\": 26792,\n  \"site</w>\": 1988,\n  \"sites</w>\": 7236,\n  \"sith</w>\": 41499,\n  \"sito</w>\": 42613,\n  \"sits</w>\": 12726,\n  \"sitt\": 42988,\n  \"sitter</w>\": 40777,\n  \"sittin</w>\": 40887,\n  \"sitting</w>\": 4919,\n  \"situ\": 5562,\n  \"situ</w>\": 42536,\n  \"situated</w>\": 22030,\n  \"situation</w>\": 7144,\n  \"situations</w>\": 19096,\n  \"sity\": 38177,\n  \"sity</w>\": 5477,\n  \"siu</w>\": 40174,\n  \"sium</w>\": 8090,\n  \"sius</w>\": 27595,\n  \"siva</w>\": 20991,\n  \"sivan</w>\": 36931,\n  \"sive\": 23572,\n  \"sive</w>\": 1875,\n  \"sively</w>\": 10343,\n  \"siveness</w>\": 39667,\n  \"sives</w>\": 23896,\n  \"sivity</w>\": 42738,\n  \"siwon</w>\": 29055,\n  \"six\": 5968,\n  \"six</w>\": 4093,\n  \"sixers</w>\": 25941,\n  \"sixteen</w>\": 28677,\n  \"sixth</w>\": 12909,\n  \"sixties</w>\": 44948,\n  \"sixty</w>\": 32588,\n  \"siya</w>\": 44440,\n  \"size\": 38377,\n  \"size</w>\": 3235,\n  \"sized</w>\": 9832,\n  \"sizes</w>\": 10253,\n  \"sizing</w>\": 28330,\n  \"sizz\": 23778,\n  \"sizzle</w>\": 47890,\n  \"sizzling</w>\": 35799,\n  \"sj\": 7536,\n  \"sj</w>\": 16010,\n  \"sjo\": 42012,\n  \"sk\": 909,\n  \"sk</w>\": 2058,\n  \"ska</w>\": 7495,\n  \"skag\": 31948,\n  \"skan\": 46772,\n  \"skar\": 27587,\n  \"skar</w>\": 26835,\n  \"skate\": 13740,\n  \"skate</w>\": 12745,\n  \"skateboard</w>\": 31777,\n  \"skateboarding</w>\": 31352,\n  \"skater</w>\": 30337,\n  \"skaters</w>\": 39824,\n  \"skates</w>\": 31479,\n  \"skc</w>\": 44551,\n  \"ske\": 6261,\n  \"ske</w>\": 25516,\n  \"skel\": 36564,\n  \"skelet\": 27075,\n  \"skeletal</w>\": 37369,\n  \"skeleton</w>\": 20062,\n  \"skeletons</w>\": 48874,\n  \"skell</w>\": 40801,\n  \"skep\": 27772,\n  \"skeptical</w>\": 44934,\n  \"sker\": 37640,\n  \"sker</w>\": 33600,\n  \"sket\": 3744,\n  \"sketch\": 11767,\n  \"sketch</w>\": 5269,\n  \"sketchbook</w>\": 18899,\n  \"sketched</w>\": 38581,\n  \"sketches</w>\": 17622,\n  \"sketching</w>\": 23228,\n  \"sketchy</w>\": 41582,\n  \"skey</w>\": 37453,\n  \"ski\": 3327,\n  \"ski</w>\": 3428,\n  \"skid\": 36574,\n  \"skid</w>\": 32099,\n  \"skier</w>\": 42585,\n  \"skies</w>\": 7244,\n  \"skiing</w>\": 14400,\n  \"skil\": 24543,\n  \"skill\": 15598,\n  \"skill</w>\": 10604,\n  \"skilled</w>\": 17535,\n  \"skillet</w>\": 40568,\n  \"skills</w>\": 4113,\n  \"skim\": 33191,\n  \"skin\": 5821,\n  \"skin</w>\": 3575,\n  \"skincare</w>\": 12648,\n  \"skine</w>\": 37300,\n  \"sking\": 46215,\n  \"skinned</w>\": 42199,\n  \"skinner</w>\": 30261,\n  \"skinny\": 42729,\n  \"skinny</w>\": 15457,\n  \"skins</w>\": 11594,\n  \"skip\": 39793,\n  \"skip</w>\": 14296,\n  \"skipped</w>\": 40639,\n  \"skipper</w>\": 22226,\n  \"skipping</w>\": 34867,\n  \"skir\": 8919,\n  \"skirt</w>\": 12386,\n  \"skirts</w>\": 24840,\n  \"skis</w>\": 32843,\n  \"skit</w>\": 43573,\n  \"skitchen</w>\": 42820,\n  \"skittles</w>\": 43213,\n  \"sko\": 15141,\n  \"sko</w>\": 23493,\n  \"skoda</w>\": 38668,\n  \"skool</w>\": 26743,\n  \"skril\": 43149,\n  \"skrillex</w>\": 43651,\n  \"sks</w>\": 48136,\n  \"sku\": 10836,\n  \"skul\": 17561,\n  \"skull\": 34068,\n  \"skull</w>\": 12092,\n  \"skulls</w>\": 31804,\n  \"skunk</w>\": 42194,\n  \"sky\": 3075,\n  \"sky</w>\": 2390,\n  \"skybet\": 45540,\n  \"skye</w>\": 21475,\n  \"skyl\": 43554,\n  \"skylar</w>\": 45411,\n  \"skyline</w>\": 14606,\n  \"skymap</w>\": 41734,\n  \"skynews</w>\": 40977,\n  \"skype</w>\": 17069,\n  \"skyrim</w>\": 33693,\n  \"skysports\": 39845,\n  \"skysports</w>\": 46725,\n  \"skywalker</w>\": 32936,\n  \"sl\": 2621,\n  \"sl</w>\": 7489,\n  \"sla\": 2725,\n  \"sla</w>\": 26707,\n  \"slab</w>\": 24241,\n  \"slabs</w>\": 42818,\n  \"slack\": 37108,\n  \"slack</w>\": 30142,\n  \"slade</w>\": 33546,\n  \"slain</w>\": 35972,\n  \"slalom</w>\": 43540,\n  \"slam\": 14891,\n  \"slam</w>\": 10131,\n  \"slammed</w>\": 29772,\n  \"slams</w>\": 18907,\n  \"slan\": 44663,\n  \"slan</w>\": 47193,\n  \"sland</w>\": 11294,\n  \"slang</w>\": 33655,\n  \"slap\": 48830,\n  \"slap</w>\": 21751,\n  \"slapped</w>\": 38861,\n  \"slaps</w>\": 46796,\n  \"slash</w>\": 19749,\n  \"slat\": 38966,\n  \"slate</w>\": 17919,\n  \"slated</w>\": 36094,\n  \"slater</w>\": 25968,\n  \"slaugh\": 26782,\n  \"slaughter</w>\": 19815,\n  \"slaughtered</w>\": 46615,\n  \"slav</w>\": 47292,\n  \"slava</w>\": 41797,\n  \"slave</w>\": 14029,\n  \"slavery</w>\": 15754,\n  \"slaves</w>\": 23833,\n  \"slaw</w>\": 28178,\n  \"slay\": 48319,\n  \"slay</w>\": 19380,\n  \"slayed</w>\": 44870,\n  \"slayer</w>\": 21605,\n  \"slaying</w>\": 27812,\n  \"slays</w>\": 45648,\n  \"slc</w>\": 21972,\n  \"sle\": 1709,\n  \"sleague</w>\": 23336,\n  \"sled</w>\": 28438,\n  \"sledge</w>\": 48750,\n  \"slee\": 17642,\n  \"slee</w>\": 38977,\n  \"sleek</w>\": 23187,\n  \"sleep\": 4656,\n  \"sleep</w>\": 3840,\n  \"sleeper</w>\": 28709,\n  \"sleeping</w>\": 6982,\n  \"sleepless</w>\": 39779,\n  \"sleepover</w>\": 39415,\n  \"sleeps</w>\": 16610,\n  \"sleepy\": 32572,\n  \"sleepy</w>\": 14497,\n  \"sleet</w>\": 36948,\n  \"sleeve\": 35270,\n  \"sleeve</w>\": 10536,\n  \"sleeveless</w>\": 38049,\n  \"sleeves</w>\": 19691,\n  \"sleg</w>\": 47650,\n  \"sleigh</w>\": 30865,\n  \"slender</w>\": 40331,\n  \"slept</w>\": 20388,\n  \"sler</w>\": 14066,\n  \"sley\": 17198,\n  \"sley</w>\": 6496,\n  \"sli\": 1811,\n  \"sli</w>\": 44824,\n  \"slic\": 19692,\n  \"slice</w>\": 13431,\n  \"sliced</w>\": 28121,\n  \"slices</w>\": 28424,\n  \"slick</w>\": 18341,\n  \"slide\": 27828,\n  \"slide</w>\": 8837,\n  \"slider</w>\": 37861,\n  \"sliders</w>\": 40700,\n  \"slides</w>\": 15939,\n  \"slideshow</w>\": 42817,\n  \"sliding</w>\": 21468,\n  \"slife</w>\": 15448,\n  \"sliga</w>\": 21080,\n  \"slight</w>\": 14297,\n  \"slightly</w>\": 8456,\n  \"sligo</w>\": 30424,\n  \"slike\": 38744,\n  \"slim\": 35226,\n  \"slim</w>\": 12364,\n  \"slime</w>\": 29107,\n  \"sling\": 28021,\n  \"sling</w>\": 32607,\n  \"slinger</w>\": 47269,\n  \"slions</w>\": 43363,\n  \"slip\": 39785,\n  \"slip</w>\": 12105,\n  \"slipknot</w>\": 41816,\n  \"slipped</w>\": 30344,\n  \"slipper</w>\": 39644,\n  \"slippers</w>\": 26509,\n  \"slippery</w>\": 30814,\n  \"slipping</w>\": 36301,\n  \"slips</w>\": 30632,\n  \"slist</w>\": 33749,\n  \"slit</w>\": 47011,\n  \"slive</w>\": 31652,\n  \"slo\": 4303,\n  \"slo</w>\": 36083,\n  \"sloan</w>\": 29110,\n  \"sloane</w>\": 41553,\n  \"slogan</w>\": 23398,\n  \"slogans</w>\": 42795,\n  \"slope</w>\": 22769,\n  \"slopes</w>\": 24066,\n  \"sloppy</w>\": 36154,\n  \"slot</w>\": 14500,\n  \"sloth</w>\": 30007,\n  \"slots</w>\": 19238,\n  \"slou\": 48493,\n  \"slovak\": 23315,\n  \"slovakia</w>\": 25994,\n  \"sloven\": 17018,\n  \"slovenia</w>\": 21037,\n  \"slow\": 6674,\n  \"slow</w>\": 5444,\n  \"slowdown</w>\": 38421,\n  \"slowed</w>\": 43793,\n  \"slower</w>\": 29181,\n  \"slowing</w>\": 29839,\n  \"slowly</w>\": 9568,\n  \"slows</w>\": 46855,\n  \"slp</w>\": 45599,\n  \"slr</w>\": 21325,\n  \"sls</w>\": 33651,\n  \"slt</w>\": 39283,\n  \"sltd</w>\": 36388,\n  \"slu\": 7224,\n  \"slu</w>\": 47456,\n  \"slug</w>\": 34190,\n  \"slugger</w>\": 48671,\n  \"slum</w>\": 46754,\n  \"slumber</w>\": 44295,\n  \"slump</w>\": 35588,\n  \"slur\": 30476,\n  \"slush</w>\": 39815,\n  \"slv</w>\": 45526,\n  \"sly\": 28145,\n  \"sly</w>\": 21062,\n  \"sm\": 978,\n  \"sm</w>\": 2764,\n  \"sma\": 4357,\n  \"sma</w>\": 11854,\n  \"smack\": 21280,\n  \"smack</w>\": 30026,\n  \"smackdown</w>\": 26138,\n  \"smafia</w>\": 47686,\n  \"smag</w>\": 32212,\n  \"smal\": 48379,\n  \"small\": 5244,\n  \"small</w>\": 2442,\n  \"smallbiz\": 41724,\n  \"smallbiz</w>\": 18987,\n  \"smallbusiness</w>\": 21316,\n  \"smalle\": 18490,\n  \"smaller</w>\": 12431,\n  \"smallest</w>\": 18686,\n  \"smalls</w>\": 41696,\n  \"sman</w>\": 9612,\n  \"smar\": 3201,\n  \"smart\": 5383,\n  \"smart</w>\": 4115,\n  \"smartcities</w>\": 34822,\n  \"smartcity</w>\": 33973,\n  \"smarter</w>\": 18990,\n  \"smartest</w>\": 37092,\n  \"smarthome</w>\": 47726,\n  \"smartphone</w>\": 11290,\n  \"smartphones</w>\": 22212,\n  \"smartwatch</w>\": 35798,\n  \"smash\": 17258,\n  \"smash</w>\": 10332,\n  \"smashbros</w>\": 44897,\n  \"smashed</w>\": 18410,\n  \"smashes</w>\": 45657,\n  \"smashing</w>\": 19632,\n  \"smatter</w>\": 16537,\n  \"smb</w>\": 30446,\n  \"smc\": 31375,\n  \"smc</w>\": 28312,\n  \"smd</w>\": 34582,\n  \"sme\": 11758,\n  \"sme</w>\": 15650,\n  \"smear</w>\": 37546,\n  \"smel\": 28476,\n  \"smell</w>\": 9688,\n  \"smelling</w>\": 32493,\n  \"smells</w>\": 14668,\n  \"smelly</w>\": 46145,\n  \"smen</w>\": 15961,\n  \"smer\": 48526,\n  \"smere</w>\": 39629,\n  \"smes</w>\": 26141,\n  \"smg</w>\": 46876,\n  \"smh</w>\": 9623,\n  \"smi\": 5655,\n  \"smi</w>\": 40049,\n  \"smil\": 33937,\n  \"smile\": 27641,\n  \"smile</w>\": 3490,\n  \"smiled</w>\": 34362,\n  \"smiles</w>\": 8726,\n  \"smiley</w>\": 22925,\n  \"smiling</w>\": 9200,\n  \"smir\": 24667,\n  \"smith\": 10527,\n  \"smith</w>\": 2915,\n  \"smiths</w>\": 27872,\n  \"smithson\": 25372,\n  \"smithsonian</w>\": 31209,\n  \"smm</w>\": 19510,\n  \"smma</w>\": 42370,\n  \"smo\": 2513,\n  \"smo</w>\": 13437,\n  \"smobile</w>\": 38923,\n  \"smog</w>\": 44425,\n  \"smoke\": 20381,\n  \"smoke</w>\": 6664,\n  \"smoked</w>\": 11161,\n  \"smoker</w>\": 32348,\n  \"smokers</w>\": 29571,\n  \"smokes</w>\": 40336,\n  \"smokey</w>\": 23670,\n  \"smokin</w>\": 32825,\n  \"smoking</w>\": 9038,\n  \"smoky</w>\": 25549,\n  \"smol\": 29939,\n  \"smol</w>\": 40403,\n  \"smoo\": 5430,\n  \"smooth\": 10958,\n  \"smooth</w>\": 8990,\n  \"smoother</w>\": 44271,\n  \"smoothie</w>\": 16668,\n  \"smoothies</w>\": 34458,\n  \"smoothly</w>\": 32380,\n  \"smore</w>\": 48323,\n  \"smp</w>\": 32260,\n  \"smriti\": 49227,\n  \"sms</w>\": 10409,\n  \"smt</w>\": 26672,\n  \"smtown</w>\": 26072,\n  \"smu\": 10878,\n  \"smu</w>\": 30458,\n  \"smug</w>\": 41021,\n  \"smugg\": 28130,\n  \"smuggling</w>\": 34146,\n  \"smur\": 24708,\n  \"smusic</w>\": 19191,\n  \"smw</w>\": 44929,\n  \"smx</w>\": 46699,\n  \"smy\": 14381,\n  \"smyth</w>\": 44822,\n  \"sn\": 1672,\n  \"sn</w>\": 5844,\n  \"sna\": 4032,\n  \"snack\": 47548,\n  \"snack</w>\": 10039,\n  \"snacking</w>\": 46474,\n  \"snacks</w>\": 12349,\n  \"snag\": 34789,\n  \"snag</w>\": 28043,\n  \"snagged</w>\": 48534,\n  \"snail</w>\": 23132,\n  \"snails</w>\": 34928,\n  \"snake\": 30133,\n  \"snake</w>\": 8798,\n  \"snakes</w>\": 19605,\n  \"snap\": 4578,\n  \"snap</w>\": 7404,\n  \"snapback</w>\": 31234,\n  \"snapchat</w>\": 7799,\n  \"snapmatic</w>\": 45907,\n  \"snapp\": 10185,\n  \"snapped</w>\": 15543,\n  \"snapper</w>\": 31677,\n  \"snapping</w>\": 31581,\n  \"snaps</w>\": 16890,\n  \"snapshot</w>\": 18243,\n  \"snar\": 30810,\n  \"snare</w>\": 40651,\n  \"snat\": 18457,\n  \"snatch</w>\": 35302,\n  \"snatched</w>\": 44821,\n  \"snation</w>\": 14362,\n  \"snazzy</w>\": 48963,\n  \"snc</w>\": 39918,\n  \"sne\": 3791,\n  \"sne</w>\": 46503,\n  \"sneak\": 27871,\n  \"sneak</w>\": 6917,\n  \"sneaker\": 31698,\n  \"sneaker</w>\": 24781,\n  \"sneakers</w>\": 17397,\n  \"sneaking</w>\": 34633,\n  \"sneakpeek</w>\": 47831,\n  \"sneaks</w>\": 40926,\n  \"sneaky</w>\": 21293,\n  \"snee\": 42095,\n  \"snell</w>\": 46410,\n  \"sner</w>\": 31424,\n  \"snes</w>\": 26667,\n  \"snews</w>\": 18623,\n  \"snf</w>\": 47651,\n  \"sng</w>\": 41549,\n  \"snhl</w>\": 43093,\n  \"sni\": 7186,\n  \"sni</w>\": 35570,\n  \"snickers</w>\": 49127,\n  \"sniff</w>\": 37841,\n  \"snip</w>\": 42954,\n  \"sniper</w>\": 22157,\n  \"snippet</w>\": 37531,\n  \"snippets</w>\": 44001,\n  \"snl</w>\": 16011,\n  \"sno\": 8567,\n  \"sno</w>\": 17802,\n  \"snoo\": 11352,\n  \"snooker</w>\": 25657,\n  \"snoop\": 44503,\n  \"snoop</w>\": 27754,\n  \"snoopdogg</w>\": 48388,\n  \"snoopy</w>\": 41967,\n  \"snooze</w>\": 40718,\n  \"snor\": 16590,\n  \"snoring</w>\": 44560,\n  \"snorkel\": 44285,\n  \"snorkeling</w>\": 48103,\n  \"snow\": 3880,\n  \"snow</w>\": 2583,\n  \"snowball</w>\": 39254,\n  \"snowboard</w>\": 33403,\n  \"snowboarding</w>\": 32397,\n  \"snowday</w>\": 37982,\n  \"snowden</w>\": 32154,\n  \"snowdon</w>\": 47107,\n  \"snowdonia</w>\": 36088,\n  \"snowed</w>\": 45073,\n  \"snowfall</w>\": 21714,\n  \"snowflake</w>\": 33447,\n  \"snowflakes</w>\": 38618,\n  \"snowing</w>\": 21443,\n  \"snowman</w>\": 22668,\n  \"snowstorm</w>\": 38777,\n  \"snowy</w>\": 14191,\n  \"snp</w>\": 15301,\n  \"sns</w>\": 36343,\n  \"snsd</w>\": 27961,\n  \"snt</w>\": 34834,\n  \"snu\": 9694,\n  \"snuck</w>\": 36522,\n  \"snug</w>\": 45169,\n  \"snuggle</w>\": 31327,\n  \"snuggles</w>\": 48165,\n  \"sny\": 17526,\n  \"snyder</w>\": 22106,\n  \"snz</w>\": 37678,\n  \"so\": 759,\n  \"so</w>\": 706,\n  \"soa</w>\": 39584,\n  \"soak</w>\": 24839,\n  \"soaked</w>\": 26592,\n  \"soaking</w>\": 26750,\n  \"soap\": 26086,\n  \"soap</w>\": 11088,\n  \"soaps</w>\": 40958,\n  \"soar\": 48997,\n  \"soar</w>\": 22241,\n  \"soaring</w>\": 27968,\n  \"soars</w>\": 41348,\n  \"sob\": 24900,\n  \"sob</w>\": 35507,\n  \"sobbing</w>\": 36691,\n  \"sober\": 30969,\n  \"sober</w>\": 24487,\n  \"sobre</w>\": 42768,\n  \"sobri\": 49308,\n  \"sobs</w>\": 43636,\n  \"soc\": 3253,\n  \"soc</w>\": 7741,\n  \"soca</w>\": 49239,\n  \"socal\": 46470,\n  \"socal</w>\": 20450,\n  \"soccer\": 16268,\n  \"soccer</w>\": 4233,\n  \"socceroos</w>\": 41997,\n  \"socent</w>\": 30831,\n  \"sochi</w>\": 21014,\n  \"soci\": 1720,\n  \"social\": 4803,\n  \"social</w>\": 2346,\n  \"socialism</w>\": 23372,\n  \"socialist</w>\": 18450,\n  \"socialists</w>\": 43839,\n  \"socially</w>\": 24555,\n  \"socialmedi\": 23813,\n  \"socialmedia</w>\": 9600,\n  \"socialmediamarketing</w>\": 31790,\n  \"societal</w>\": 40058,\n  \"societies</w>\": 25855,\n  \"society</w>\": 3757,\n  \"socio\": 44319,\n  \"socio</w>\": 42790,\n  \"sociology</w>\": 32373,\n  \"sock\": 29801,\n  \"sock</w>\": 18277,\n  \"socket</w>\": 28657,\n  \"socks</w>\": 8774,\n  \"socorro</w>\": 46409,\n  \"socute</w>\": 45086,\n  \"sod</w>\": 31435,\n  \"soda</w>\": 13533,\n  \"sodium</w>\": 29070,\n  \"soe\": 44136,\n  \"soe</w>\": 25498,\n  \"soever</w>\": 34024,\n  \"sof\": 1571,\n  \"sof</w>\": 41187,\n  \"sofa</w>\": 15723,\n  \"soff\": 35290,\n  \"soff</w>\": 30684,\n  \"sofficial</w>\": 20563,\n  \"sofi\": 41537,\n  \"sofia</w>\": 18914,\n  \"sofinstagram</w>\": 17301,\n  \"soft\": 12778,\n  \"soft</w>\": 3773,\n  \"softball</w>\": 8369,\n  \"softer</w>\": 44462,\n  \"softhe\": 23127,\n  \"softly</w>\": 34958,\n  \"software\": 35941,\n  \"software</w>\": 5847,\n  \"softwitter</w>\": 11311,\n  \"sog</w>\": 44775,\n  \"soggy</w>\": 41168,\n  \"sohn</w>\": 49267,\n  \"soho\": 47749,\n  \"soho</w>\": 17592,\n  \"soi</w>\": 40495,\n  \"soil\": 33417,\n  \"soil</w>\": 9216,\n  \"soils</w>\": 34891,\n  \"soir</w>\": 43427,\n  \"sok</w>\": 43456,\n  \"sol\": 1175,\n  \"sol</w>\": 9941,\n  \"sola</w>\": 40086,\n  \"solace</w>\": 42567,\n  \"solar\": 16990,\n  \"solar</w>\": 5199,\n  \"solareclipse</w>\": 44727,\n  \"sold\": 33116,\n  \"sold</w>\": 3939,\n  \"soldi\": 5098,\n  \"soldier</w>\": 9355,\n  \"soldiers</w>\": 7547,\n  \"sole\": 10519,\n  \"sole</w>\": 8576,\n  \"soleil</w>\": 33148,\n  \"solely</w>\": 27913,\n  \"solent</w>\": 47783,\n  \"soles</w>\": 22682,\n  \"soli\": 3911,\n  \"solic\": 19369,\n  \"solicitor</w>\": 45647,\n  \"solicitors</w>\": 46000,\n  \"solid\": 30626,\n  \"solid</w>\": 6148,\n  \"solidar\": 10415,\n  \"solidarity</w>\": 10983,\n  \"solidi\": 46136,\n  \"solids</w>\": 49070,\n  \"solihull</w>\": 45293,\n  \"solit\": 37039,\n  \"solitaire</w>\": 47257,\n  \"solitary</w>\": 33094,\n  \"solitude</w>\": 33199,\n  \"solo\": 17626,\n  \"solo</w>\": 5797,\n  \"soloist</w>\": 46391,\n  \"solom\": 15768,\n  \"solomon</w>\": 19785,\n  \"solos</w>\": 44868,\n  \"solst\": 20298,\n  \"solstice</w>\": 21359,\n  \"solu\": 2487,\n  \"solution</w>\": 4575,\n  \"solutions</w>\": 5140,\n  \"solve</w>\": 8917,\n  \"solved</w>\": 13451,\n  \"solves</w>\": 42740,\n  \"solving</w>\": 15581,\n  \"som\": 734,\n  \"som</w>\": 10672,\n  \"soma</w>\": 36170,\n  \"somal\": 40281,\n  \"somali</w>\": 26231,\n  \"somalia</w>\": 17051,\n  \"somaliland</w>\": 43315,\n  \"some\": 1132,\n  \"some</w>\": 836,\n  \"somebody</w>\": 8305,\n  \"someday</w>\": 17127,\n  \"somehow</w>\": 11735,\n  \"someone</w>\": 2100,\n  \"somer\": 9656,\n  \"somerhalder</w>\": 33990,\n  \"somerset</w>\": 14926,\n  \"somerville</w>\": 41409,\n  \"somes</w>\": 38124,\n  \"somethin</w>\": 33541,\n  \"something\": 28316,\n  \"something</w>\": 2006,\n  \"sometime</w>\": 21464,\n  \"sometimes</w>\": 4237,\n  \"somewhat</w>\": 17864,\n  \"somewhere</w>\": 8119,\n  \"somm\": 42726,\n  \"somme</w>\": 30625,\n  \"sommer</w>\": 44954,\n  \"somos</w>\": 24951,\n  \"son\": 1176,\n  \"son</w>\": 825,\n  \"sona</w>\": 21249,\n  \"sonam\": 40096,\n  \"sonar</w>\": 48235,\n  \"sonata</w>\": 37009,\n  \"sone</w>\": 29599,\n  \"song\": 6868,\n  \"song</w>\": 2295,\n  \"songs</w>\": 4641,\n  \"songwriter</w>\": 13034,\n  \"songwriters</w>\": 39583,\n  \"songwriting</w>\": 33567,\n  \"songz</w>\": 49302,\n  \"soni\": 34899,\n  \"soni</w>\": 35911,\n  \"sonia</w>\": 20409,\n  \"sonic\": 23785,\n  \"sonic</w>\": 9132,\n  \"sonics</w>\": 48511,\n  \"sonja</w>\": 46102,\n  \"sonline</w>\": 23412,\n  \"sonny\": 43000,\n  \"sonny</w>\": 20880,\n  \"sono</w>\": 44109,\n  \"sonom\": 48596,\n  \"sonoma</w>\": 26269,\n  \"sons</w>\": 5502,\n  \"sonsof\": 46676,\n  \"sont</w>\": 31063,\n  \"sonthe\": 40923,\n  \"sony\": 16042,\n  \"sony</w>\": 8748,\n  \"sonya</w>\": 39172,\n  \"soo\": 5517,\n  \"soo</w>\": 8602,\n  \"soom\": 39771,\n  \"soon\": 27559,\n  \"soon</w>\": 1745,\n  \"sooner</w>\": 18968,\n  \"sooners</w>\": 30449,\n  \"sooo</w>\": 11526,\n  \"soooo</w>\": 13658,\n  \"sooooo</w>\": 21199,\n  \"soooooo</w>\": 34859,\n  \"soor\": 46698,\n  \"soothe</w>\": 44424,\n  \"soothing</w>\": 27730,\n  \"sop\": 3974,\n  \"sop</w>\": 19194,\n  \"soph</w>\": 34963,\n  \"sophi\": 6192,\n  \"sophia</w>\": 16790,\n  \"sophie\": 38648,\n  \"sophie</w>\": 12357,\n  \"sophistic\": 17646,\n  \"sophisticated</w>\": 20833,\n  \"sophom\": 13696,\n  \"sophomore</w>\": 15242,\n  \"sophomores</w>\": 47645,\n  \"soprano</w>\": 28880,\n  \"soproud</w>\": 44479,\n  \"sor\": 1852,\n  \"sor</w>\": 16872,\n  \"sora</w>\": 38719,\n  \"sorbet</w>\": 39994,\n  \"sore\": 43330,\n  \"sore</w>\": 15454,\n  \"sored</w>\": 6731,\n  \"soren\": 38907,\n  \"sorg</w>\": 28152,\n  \"sori\": 38588,\n  \"sorority</w>\": 30059,\n  \"soros</w>\": 33248,\n  \"sorren\": 44012,\n  \"sorrow</w>\": 28020,\n  \"sorrows</w>\": 47924,\n  \"sorry\": 25745,\n  \"sorry</w>\": 3675,\n  \"sorrynotsorry</w>\": 37105,\n  \"sort</w>\": 8450,\n  \"sorta</w>\": 34700,\n  \"sorted</w>\": 13221,\n  \"sorting</w>\": 19198,\n  \"sorts</w>\": 12577,\n  \"sory</w>\": 16257,\n  \"sos\": 25145,\n  \"sos</w>\": 5792,\n  \"sosa</w>\": 45433,\n  \"sosfam</w>\": 47709,\n  \"sot\": 41542,\n  \"sot</w>\": 34116,\n  \"sothe\": 32145,\n  \"sotho</w>\": 45496,\n  \"soto</w>\": 27947,\n  \"sotto</w>\": 26047,\n  \"sotu</w>\": 32286,\n  \"sou\": 1101,\n  \"sou</w>\": 24293,\n  \"sought</w>\": 18874,\n  \"soul\": 8701,\n  \"soul</w>\": 3755,\n  \"soulful</w>\": 30196,\n  \"soulmate</w>\": 38130,\n  \"souls</w>\": 10951,\n  \"soun\": 19474,\n  \"sound\": 5236,\n  \"sound</w>\": 3608,\n  \"soundcheck</w>\": 31394,\n  \"soundcloud</w>\": 15190,\n  \"sounded</w>\": 28287,\n  \"sounders</w>\": 44933,\n  \"sounding</w>\": 21351,\n  \"sounds</w>\": 5694,\n  \"soundtrack</w>\": 11389,\n  \"soup</w>\": 7077,\n  \"soups</w>\": 45052,\n  \"sour\": 2235,\n  \"sour</w>\": 12049,\n  \"source\": 23698,\n  \"source</w>\": 3634,\n  \"sourced</w>\": 23340,\n  \"sources</w>\": 5124,\n  \"sourcing</w>\": 19574,\n  \"sourdough</w>\": 29921,\n  \"souri</w>\": 11674,\n  \"sous</w>\": 32093,\n  \"sousa</w>\": 46296,\n  \"sout\": 38156,\n  \"sout</w>\": 32732,\n  \"south\": 2938,\n  \"south</w>\": 2045,\n  \"southafrica</w>\": 15184,\n  \"southampton</w>\": 15767,\n  \"southbank</w>\": 44173,\n  \"southbound</w>\": 22932,\n  \"southeast</w>\": 13942,\n  \"southeastern</w>\": 26813,\n  \"southend</w>\": 25583,\n  \"souther\": 33330,\n  \"southern\": 17704,\n  \"southern</w>\": 5036,\n  \"southgate</w>\": 47262,\n  \"southkorea</w>\": 43552,\n  \"southport</w>\": 37446,\n  \"southside</w>\": 36436,\n  \"southsudan</w>\": 30419,\n  \"southwark</w>\": 39098,\n  \"southwe\": 46443,\n  \"southwest</w>\": 13320,\n  \"southwestern</w>\": 30157,\n  \"souven\": 20210,\n  \"souvenir</w>\": 24811,\n  \"souvenirs</w>\": 48460,\n  \"souza</w>\": 29424,\n  \"sov</w>\": 29737,\n  \"sover</w>\": 31876,\n  \"sovere\": 17736,\n  \"sovereign\": 29418,\n  \"sovereign</w>\": 26337,\n  \"sovereignty</w>\": 31701,\n  \"soviet</w>\": 14274,\n  \"sow</w>\": 33089,\n  \"sowe\": 36130,\n  \"soweto</w>\": 47070,\n  \"sown</w>\": 49369,\n  \"sox\": 39556,\n  \"sox</w>\": 8657,\n  \"soy\": 16524,\n  \"soy</w>\": 15010,\n  \"soybean</w>\": 34606,\n  \"soybeans</w>\": 40840,\n  \"soyu\": 39578,\n  \"soyuz</w>\": 43842,\n  \"sp\": 588,\n  \"sp</w>\": 4393,\n  \"spa\": 7852,\n  \"spa</w>\": 6692,\n  \"spac\": 10336,\n  \"space\": 7857,\n  \"space</w>\": 2138,\n  \"spacecraft</w>\": 25940,\n  \"spaces</w>\": 9006,\n  \"spaceship</w>\": 34317,\n  \"spacex</w>\": 22511,\n  \"spacey</w>\": 48770,\n  \"spacious</w>\": 24769,\n  \"spad\": 45362,\n  \"spade</w>\": 32562,\n  \"spades</w>\": 48368,\n  \"spaghetti</w>\": 18440,\n  \"spain</w>\": 5083,\n  \"spal\": 26018,\n  \"spam\": 29712,\n  \"spam</w>\": 14624,\n  \"span\": 4270,\n  \"span</w>\": 14537,\n  \"spandex</w>\": 41686,\n  \"spani\": 16721,\n  \"spaniel</w>\": 35435,\n  \"spanish\": 29966,\n  \"spanish</w>\": 6013,\n  \"spann</w>\": 25323,\n  \"spanning</w>\": 38638,\n  \"spans</w>\": 45407,\n  \"spaper\": 34548,\n  \"spar\": 3378,\n  \"spar</w>\": 34576,\n  \"spare</w>\": 12615,\n  \"spares</w>\": 39505,\n  \"spark\": 9555,\n  \"spark</w>\": 11047,\n  \"sparked</w>\": 32647,\n  \"sparkle</w>\": 18287,\n  \"sparkles</w>\": 36410,\n  \"sparkling</w>\": 17893,\n  \"sparkly</w>\": 30542,\n  \"sparks</w>\": 15046,\n  \"sparky</w>\": 47198,\n  \"sparring</w>\": 42161,\n  \"sparrow</w>\": 22888,\n  \"spart\": 10143,\n  \"sparta</w>\": 38401,\n  \"spartan\": 26582,\n  \"spartan</w>\": 24225,\n  \"spartans</w>\": 20457,\n  \"sparty</w>\": 36477,\n  \"spas\": 31714,\n  \"spati\": 19200,\n  \"spatial</w>\": 22022,\n  \"spaw\": 31605,\n  \"spawn</w>\": 29166,\n  \"spay\": 40634,\n  \"spc</w>\": 20492,\n  \"spca</w>\": 37018,\n  \"spd\": 37717,\n  \"spd</w>\": 28307,\n  \"spdwy</w>\": 45981,\n  \"spe\": 876,\n  \"spe</w>\": 36676,\n  \"speak\": 20599,\n  \"speak</w>\": 4208,\n  \"speake\": 46077,\n  \"speaker\": 25764,\n  \"speaker</w>\": 4914,\n  \"speakers</w>\": 7675,\n  \"speaking</w>\": 3714,\n  \"speaks</w>\": 5661,\n  \"spear\": 23277,\n  \"spear</w>\": 30420,\n  \"speare</w>\": 43859,\n  \"spears</w>\": 20242,\n  \"spec\": 1711,\n  \"spec</w>\": 18596,\n  \"speci\": 1969,\n  \"special\": 11422,\n  \"special</w>\": 1689,\n  \"specialist</w>\": 10630,\n  \"specialists</w>\": 21719,\n  \"speciality</w>\": 46904,\n  \"specialized</w>\": 23265,\n  \"specializes</w>\": 48533,\n  \"specially</w>\": 4513,\n  \"specials</w>\": 11983,\n  \"specialty</w>\": 18262,\n  \"species</w>\": 6330,\n  \"specific</w>\": 10528,\n  \"specifically</w>\": 17174,\n  \"specification</w>\": 46394,\n  \"specifications</w>\": 39705,\n  \"specified</w>\": 48114,\n  \"specimen</w>\": 30263,\n  \"specimens</w>\": 42715,\n  \"specs</w>\": 24093,\n  \"spect</w>\": 3416,\n  \"spectac\": 7242,\n  \"spectacle</w>\": 34342,\n  \"spectacular</w>\": 8404,\n  \"spectator</w>\": 32372,\n  \"spectators</w>\": 39306,\n  \"spective</w>\": 6633,\n  \"spector</w>\": 48676,\n  \"spectral</w>\": 45441,\n  \"spectre</w>\": 35998,\n  \"spectro\": 27646,\n  \"spectrum</w>\": 13532,\n  \"specul\": 19209,\n  \"speculation</w>\": 30898,\n  \"sped</w>\": 38813,\n  \"spee\": 4050,\n  \"speech\": 19556,\n  \"speech</w>\": 4902,\n  \"speeches</w>\": 25208,\n  \"speechless</w>\": 23152,\n  \"speed\": 6860,\n  \"speed</w>\": 4163,\n  \"speeding</w>\": 27264,\n  \"speeds</w>\": 22017,\n  \"speedway</w>\": 11480,\n  \"speedy</w>\": 21603,\n  \"spel\": 41887,\n  \"spell\": 22784,\n  \"spell</w>\": 11230,\n  \"spelled</w>\": 24339,\n  \"spelling</w>\": 15614,\n  \"spells</w>\": 25335,\n  \"spelt</w>\": 38316,\n  \"spen\": 5087,\n  \"spence</w>\": 33324,\n  \"spencer\": 27509,\n  \"spencer</w>\": 10678,\n  \"spend</w>\": 4664,\n  \"spending</w>\": 5961,\n  \"spends</w>\": 22508,\n  \"spent</w>\": 4429,\n  \"speople</w>\": 33035,\n  \"sper\": 8213,\n  \"sper</w>\": 15313,\n  \"sperm</w>\": 35781,\n  \"sperson</w>\": 22687,\n  \"spf</w>\": 34973,\n  \"spg</w>\": 34623,\n  \"sph\": 28909,\n  \"sph</w>\": 24684,\n  \"sphe\": 33691,\n  \"spher\": 18349,\n  \"sphere</w>\": 6987,\n  \"spheres</w>\": 37478,\n  \"spheric</w>\": 21744,\n  \"sphin\": 39237,\n  \"sphinx</w>\": 46487,\n  \"spho\": 20442,\n  \"sphoto</w>\": 38594,\n  \"sphy\": 43808,\n  \"spi\": 3174,\n  \"spi</w>\": 37080,\n  \"spic\": 17264,\n  \"spice\": 29761,\n  \"spice</w>\": 10141,\n  \"spiced</w>\": 24267,\n  \"spicer</w>\": 37627,\n  \"spices</w>\": 21194,\n  \"spicy</w>\": 10915,\n  \"spide\": 36801,\n  \"spider\": 11963,\n  \"spider</w>\": 7622,\n  \"spiderman\": 39808,\n  \"spiderman</w>\": 18427,\n  \"spiders</w>\": 23141,\n  \"spidey</w>\": 41706,\n  \"spie\": 28573,\n  \"spie</w>\": 28746,\n  \"spied</w>\": 43998,\n  \"spiegel</w>\": 45351,\n  \"spiel\": 28435,\n  \"spiel</w>\": 37690,\n  \"spielberg</w>\": 37569,\n  \"spies</w>\": 25374,\n  \"spieth</w>\": 43254,\n  \"spike\": 35306,\n  \"spike</w>\": 15310,\n  \"spiked</w>\": 47014,\n  \"spikes</w>\": 29582,\n  \"spil\": 47765,\n  \"spill\": 43933,\n  \"spill</w>\": 18006,\n  \"spilled</w>\": 33206,\n  \"spilling</w>\": 49006,\n  \"spills</w>\": 35796,\n  \"spin\": 6288,\n  \"spin</w>\": 9226,\n  \"spinach</w>\": 14747,\n  \"spinal</w>\": 23925,\n  \"spine\": 48221,\n  \"spine</w>\": 19646,\n  \"sping</w>\": 47113,\n  \"spinner</w>\": 29924,\n  \"spinning</w>\": 13987,\n  \"spino\": 40848,\n  \"spinoff</w>\": 42513,\n  \"spinrilla</w>\": 46064,\n  \"spins</w>\": 27243,\n  \"spion\": 39604,\n  \"spionage</w>\": 41838,\n  \"spir\": 3745,\n  \"spiral</w>\": 19873,\n  \"spiration</w>\": 38126,\n  \"spire</w>\": 27439,\n  \"spired</w>\": 40650,\n  \"spires</w>\": 46938,\n  \"spiri\": 4024,\n  \"spirit\": 18224,\n  \"spirit</w>\": 4071,\n  \"spirited</w>\": 34701,\n  \"spirits</w>\": 13192,\n  \"spiritu\": 7237,\n  \"spiritual\": 46076,\n  \"spiritual</w>\": 9473,\n  \"spirituality</w>\": 22165,\n  \"spiro\": 40085,\n  \"spit\": 18115,\n  \"spit</w>\": 23177,\n  \"spite</w>\": 26060,\n  \"spitfire</w>\": 31126,\n  \"spitting</w>\": 40721,\n  \"spl\": 2470,\n  \"spl</w>\": 33052,\n  \"spla\": 4809,\n  \"splac\": 16059,\n  \"splace</w>\": 38743,\n  \"splash\": 43641,\n  \"splash</w>\": 11879,\n  \"splat\": 15733,\n  \"splatoon</w>\": 22565,\n  \"splay</w>\": 3169,\n  \"splen\": 18552,\n  \"splend\": 29861,\n  \"splendid</w>\": 21016,\n  \"splendor</w>\": 46262,\n  \"splin\": 38090,\n  \"split\": 25443,\n  \"split</w>\": 9109,\n  \"splits</w>\": 34897,\n  \"splitting</w>\": 37210,\n  \"splus</w>\": 40866,\n  \"spn\": 35467,\n  \"spn</w>\": 19414,\n  \"spnfamily</w>\": 38566,\n  \"spo\": 1261,\n  \"spo</w>\": 21085,\n  \"spock</w>\": 43918,\n  \"spoil</w>\": 25600,\n  \"spoiled</w>\": 21399,\n  \"spoiler</w>\": 16512,\n  \"spoilers</w>\": 18326,\n  \"spoils</w>\": 42436,\n  \"spoilt</w>\": 35358,\n  \"spokane</w>\": 24528,\n  \"spoke\": 13890,\n  \"spoke</w>\": 6518,\n  \"spoken</w>\": 12979,\n  \"spokesman</w>\": 31632,\n  \"spokesperson</w>\": 26234,\n  \"spol\": 22476,\n  \"spol</w>\": 8132,\n  \"spoli</w>\": 34301,\n  \"spolice</w>\": 37406,\n  \"spon\": 1715,\n  \"spon</w>\": 48216,\n  \"sponge\": 22861,\n  \"sponge</w>\": 24345,\n  \"spongebob</w>\": 25089,\n  \"spons\": 5597,\n  \"sponsor\": 10424,\n  \"sponsor</w>\": 7574,\n  \"sponsored</w>\": 7197,\n  \"sponsoring</w>\": 16181,\n  \"sponsors</w>\": 11005,\n  \"sponsorship</w>\": 17632,\n  \"spontaneous</w>\": 32465,\n  \"spoo\": 11248,\n  \"spooky</w>\": 15369,\n  \"spool</w>\": 49152,\n  \"spoon\": 27001,\n  \"spoon</w>\": 14024,\n  \"spoons</w>\": 29661,\n  \"spor\": 1475,\n  \"spor</w>\": 33746,\n  \"sport\": 4379,\n  \"sport</w>\": 2364,\n  \"sporting\": 32620,\n  \"sporting</w>\": 8944,\n  \"sports\": 6436,\n  \"sports</w>\": 2054,\n  \"sportsc\": 40114,\n  \"sportscar</w>\": 46931,\n  \"sportscenter</w>\": 39157,\n  \"sportsman</w>\": 39020,\n  \"sportsmanship</w>\": 34858,\n  \"sportsnet</w>\": 34144,\n  \"sportswear</w>\": 39747,\n  \"sporty</w>\": 33346,\n  \"spot\": 3223,\n  \"spot</w>\": 3049,\n  \"spotify</w>\": 7193,\n  \"spotlight</w>\": 7901,\n  \"spots</w>\": 7670,\n  \"spotted</w>\": 4533,\n  \"spotter</w>\": 30742,\n  \"spotting</w>\": 15885,\n  \"spouse</w>\": 24724,\n  \"spout</w>\": 48993,\n  \"spp</w>\": 47567,\n  \"spr\": 1536,\n  \"spr</w>\": 19417,\n  \"spra\": 12966,\n  \"spraw\": 46590,\n  \"spray\": 37885,\n  \"spray</w>\": 10449,\n  \"sprayed</w>\": 40022,\n  \"spraying</w>\": 39224,\n  \"spre\": 18740,\n  \"spread\": 20620,\n  \"spread</w>\": 5284,\n  \"spreading</w>\": 11821,\n  \"spreads</w>\": 27579,\n  \"spree</w>\": 21851,\n  \"spri\": 35498,\n  \"spride</w>\": 26685,\n  \"spring\": 5166,\n  \"spring</w>\": 2420,\n  \"springbreak</w>\": 37753,\n  \"springer</w>\": 30117,\n  \"springfield</w>\": 16599,\n  \"springs</w>\": 7308,\n  \"springst</w>\": 32132,\n  \"springsteen</w>\": 28367,\n  \"springtime</w>\": 28285,\n  \"springtraining</w>\": 49364,\n  \"springwatch</w>\": 29239,\n  \"sprink\": 15817,\n  \"sprinkle</w>\": 42897,\n  \"sprinkler</w>\": 48754,\n  \"sprinkles</w>\": 37326,\n  \"sprint\": 29248,\n  \"sprint</w>\": 10751,\n  \"sprinter</w>\": 36947,\n  \"sprints</w>\": 36404,\n  \"sprite</w>\": 32544,\n  \"spro\": 13902,\n  \"spro</w>\": 37403,\n  \"sproject</w>\": 37802,\n  \"sproud</w>\": 37686,\n  \"sprout</w>\": 35863,\n  \"sprouts</w>\": 25756,\n  \"spru\": 17041,\n  \"spruce</w>\": 23812,\n  \"sprung</w>\": 32968,\n  \"sps</w>\": 13869,\n  \"spu\": 23566,\n  \"spun\": 47922,\n  \"spun</w>\": 32852,\n  \"spur\": 15206,\n  \"spur</w>\": 20361,\n  \"spurs</w>\": 10916,\n  \"spursofficial</w>\": 45290,\n  \"sput\": 47521,\n  \"spx</w>\": 20584,\n  \"spy\": 13861,\n  \"spy</w>\": 6656,\n  \"spyder</w>\": 39952,\n  \"spying</w>\": 36227,\n  \"sq\": 9370,\n  \"sq</w>\": 11590,\n  \"sqft</w>\": 41912,\n  \"sql\": 42759,\n  \"sql</w>\": 18938,\n  \"sqm</w>\": 47978,\n  \"sqn</w>\": 41209,\n  \"squ\": 1653,\n  \"squad\": 13892,\n  \"squad</w>\": 4234,\n  \"squadron</w>\": 18579,\n  \"squads</w>\": 36590,\n  \"square\": 19314,\n  \"square</w>\": 3999,\n  \"squared</w>\": 32967,\n  \"squares</w>\": 26972,\n  \"squash</w>\": 13312,\n  \"squat\": 44628,\n  \"squat</w>\": 30680,\n  \"squats</w>\": 40213,\n  \"sque\": 9721,\n  \"sque</w>\": 8097,\n  \"squee\": 14420,\n  \"squeeze</w>\": 21684,\n  \"squeezed</w>\": 40413,\n  \"squid\": 42057,\n  \"squid</w>\": 22553,\n  \"squir\": 9683,\n  \"squire</w>\": 48090,\n  \"squirrel</w>\": 14004,\n  \"squirrels</w>\": 26623,\n  \"squish\": 42607,\n  \"squishy</w>\": 47001,\n  \"sr\": 3437,\n  \"sr</w>\": 5428,\n  \"srbachchan</w>\": 32353,\n  \"src</w>\": 23445,\n  \"sre\": 17748,\n  \"sri\": 11051,\n  \"sri</w>\": 9276,\n  \"sridevi</w>\": 46301,\n  \"srilan\": 15559,\n  \"srilanka</w>\": 16922,\n  \"srin\": 26818,\n  \"srinagar</w>\": 33671,\n  \"srini\": 41899,\n  \"sriracha</w>\": 42743,\n  \"sris\": 27851,\n  \"srisri</w>\": 32966,\n  \"srk\": 44982,\n  \"srk</w>\": 11216,\n  \"srl</w>\": 33808,\n  \"srp</w>\": 43004,\n  \"srs</w>\": 41764,\n  \"srsly</w>\": 44179,\n  \"srt</w>\": 28139,\n  \"sru\": 44152,\n  \"srugby</w>\": 40526,\n  \"ss\": 690,\n  \"ss</w>\": 632,\n  \"ssa</w>\": 6088,\n  \"ssal\": 31330,\n  \"ssal</w>\": 35936,\n  \"ssb</w>\": 37511,\n  \"ssc\": 21692,\n  \"ssc</w>\": 20364,\n  \"ssd</w>\": 23107,\n  \"sse\": 9030,\n  \"sse</w>\": 8938,\n  \"ssed\": 38755,\n  \"ssed</w>\": 1804,\n  \"ssel\": 17402,\n  \"ssel</w>\": 19373,\n  \"sseldorf</w>\": 47792,\n  \"ssell</w>\": 42388,\n  \"ssels</w>\": 8355,\n  \"ssen\": 39408,\n  \"ssen</w>\": 22645,\n  \"sser</w>\": 20445,\n  \"sses</w>\": 1802,\n  \"ssett</w>\": 44103,\n  \"ssf</w>\": 33239,\n  \"ssg</w>\": 40707,\n  \"ssh</w>\": 48866,\n  \"ssi\": 834,\n  \"ssi</w>\": 14953,\n  \"ssia</w>\": 22238,\n  \"ssian</w>\": 31218,\n  \"ssible</w>\": 47099,\n  \"ssic\": 27774,\n  \"ssic</w>\": 17077,\n  \"ssie</w>\": 7572,\n  \"ssier</w>\": 26422,\n  \"ssil</w>\": 15026,\n  \"ssin</w>\": 42660,\n  \"ssing</w>\": 2112,\n  \"ssion\": 16050,\n  \"ssion</w>\": 1627,\n  \"ssional</w>\": 13727,\n  \"ssionism</w>\": 24787,\n  \"ssionist</w>\": 27682,\n  \"ssions</w>\": 4137,\n  \"ssive</w>\": 2734,\n  \"ssively</w>\": 28060,\n  \"ssl</w>\": 32195,\n  \"ssler</w>\": 30287,\n  \"ssly</w>\": 24904,\n  \"ssn</w>\": 39116,\n  \"ssnhq</w>\": 47998,\n  \"sso\": 25900,\n  \"sso</w>\": 7914,\n  \"ssoccer</w>\": 32546,\n  \"sson\": 36124,\n  \"sson</w>\": 7271,\n  \"ssor</w>\": 35152,\n  \"ssp</w>\": 31101,\n  \"ssr</w>\": 39880,\n  \"sss</w>\": 11176,\n  \"ssss\": 30676,\n  \"ssss</w>\": 15880,\n  \"sssss</w>\": 24298,\n  \"sst</w>\": 40396,\n  \"ssu</w>\": 35351,\n  \"ssummit</w>\": 49301,\n  \"ssus</w>\": 31286,\n  \"ssw</w>\": 36937,\n  \"ssy\": 22519,\n  \"ssy</w>\": 8661,\n  \"st\": 522,\n  \"st</w>\": 545,\n  \"sta\": 1363,\n  \"sta</w>\": 2745,\n  \"stab\": 7726,\n  \"stab</w>\": 29974,\n  \"stabbed</w>\": 24534,\n  \"stabbing</w>\": 25474,\n  \"stabil\": 42576,\n  \"stabili\": 23903,\n  \"stability</w>\": 16716,\n  \"stable\": 44427,\n  \"stable</w>\": 10492,\n  \"stables</w>\": 34218,\n  \"stac\": 10175,\n  \"stacey\": 41653,\n  \"stacey</w>\": 24262,\n  \"stache</w>\": 23616,\n  \"stack\": 24723,\n  \"stack</w>\": 11257,\n  \"stacked</w>\": 24990,\n  \"stacking</w>\": 39836,\n  \"stacks</w>\": 24734,\n  \"stacy</w>\": 26628,\n  \"stad\": 15832,\n  \"stad</w>\": 16485,\n  \"stade</w>\": 38198,\n  \"stadi\": 26587,\n  \"stadion</w>\": 48815,\n  \"stadium</w>\": 3390,\n  \"stadiums</w>\": 38852,\n  \"stadt</w>\": 22713,\n  \"staf\": 2367,\n  \"staff\": 31188,\n  \"staff</w>\": 2813,\n  \"staffer</w>\": 38494,\n  \"staffers</w>\": 44994,\n  \"staffing</w>\": 32932,\n  \"stafford</w>\": 25006,\n  \"staffordshire</w>\": 29198,\n  \"staffs</w>\": 36098,\n  \"stag\": 12088,\n  \"stag</w>\": 20277,\n  \"stage\": 23182,\n  \"stage</w>\": 2170,\n  \"staged</w>\": 19906,\n  \"stages</w>\": 12297,\n  \"staggering</w>\": 37315,\n  \"staging</w>\": 27026,\n  \"stagram</w>\": 19503,\n  \"stags</w>\": 45936,\n  \"stain\": 3933,\n  \"stain</w>\": 14603,\n  \"stained</w>\": 13751,\n  \"staining</w>\": 32523,\n  \"stainless</w>\": 12320,\n  \"stains</w>\": 32008,\n  \"stair\": 7240,\n  \"stair</w>\": 17662,\n  \"staircase</w>\": 22777,\n  \"stairs</w>\": 9577,\n  \"stairway</w>\": 45559,\n  \"stak\": 39144,\n  \"stake\": 15955,\n  \"stake</w>\": 7937,\n  \"stakeholder</w>\": 39122,\n  \"stakeholders</w>\": 22968,\n  \"stakes</w>\": 7519,\n  \"staking</w>\": 47082,\n  \"stal\": 3861,\n  \"stal</w>\": 5535,\n  \"stale</w>\": 42471,\n  \"stalert</w>\": 25450,\n  \"stalin</w>\": 28346,\n  \"stalk\": 40826,\n  \"stalk</w>\": 14878,\n  \"stalker</w>\": 26777,\n  \"stalking</w>\": 24721,\n  \"stalks</w>\": 45886,\n  \"stall\": 24636,\n  \"stall</w>\": 12058,\n  \"stalled</w>\": 40362,\n  \"stallion</w>\": 28273,\n  \"stallions</w>\": 44787,\n  \"stallone</w>\": 40969,\n  \"stalls</w>\": 25427,\n  \"stam\": 4663,\n  \"stamatic</w>\": 30904,\n  \"stamford</w>\": 27843,\n  \"stamina</w>\": 48753,\n  \"stamp\": 28694,\n  \"stamp</w>\": 12771,\n  \"stampcollecting</w>\": 42852,\n  \"stamped</w>\": 38356,\n  \"stampede</w>\": 25384,\n  \"stamps</w>\": 13827,\n  \"stan\": 2203,\n  \"stan</w>\": 2434,\n  \"stana</w>\": 33311,\n  \"stanbul</w>\": 11231,\n  \"stance\": 48900,\n  \"stance</w>\": 3542,\n  \"stances</w>\": 15054,\n  \"stand\": 1819,\n  \"stand</w>\": 2087,\n  \"standalone</w>\": 44887,\n  \"standard\": 35780,\n  \"standard</w>\": 5807,\n  \"standardi\": 30247,\n  \"standards</w>\": 9022,\n  \"standby</w>\": 36184,\n  \"standing\": 39934,\n  \"standing</w>\": 2862,\n  \"standings</w>\": 19835,\n  \"standoff</w>\": 31821,\n  \"standout</w>\": 23131,\n  \"standre\": 48309,\n  \"stands</w>\": 6446,\n  \"standup\": 35108,\n  \"standup</w>\": 24964,\n  \"standwith\": 19540,\n  \"stanford\": 36219,\n  \"stanford</w>\": 15087,\n  \"stang</w>\": 12536,\n  \"stani</w>\": 38228,\n  \"stanis\": 37711,\n  \"stanley\": 19048,\n  \"stanley</w>\": 10079,\n  \"stanleycup</w>\": 28662,\n  \"stans</w>\": 26564,\n  \"stant\": 41576,\n  \"stant</w>\": 4906,\n  \"stanton</w>\": 25400,\n  \"stap\": 10438,\n  \"staple</w>\": 22695,\n  \"staples</w>\": 23646,\n  \"stapleton</w>\": 45228,\n  \"star\": 993,\n  \"star</w>\": 1565,\n  \"starbuck\": 48519,\n  \"starbucks</w>\": 9499,\n  \"starch</w>\": 47837,\n  \"starcraft</w>\": 48871,\n  \"stardom</w>\": 44616,\n  \"stardust</w>\": 34337,\n  \"stare</w>\": 18094,\n  \"stared</w>\": 47772,\n  \"stares</w>\": 37916,\n  \"starfish</w>\": 44283,\n  \"stargate</w>\": 41099,\n  \"stargazing</w>\": 49328,\n  \"staring</w>\": 13800,\n  \"stark\": 40446,\n  \"stark</w>\": 15353,\n  \"starlight</w>\": 32197,\n  \"starling</w>\": 46205,\n  \"starmagic\": 48023,\n  \"starplus</w>\": 37815,\n  \"starr</w>\": 19186,\n  \"starred</w>\": 24180,\n  \"starrer</w>\": 41311,\n  \"starring</w>\": 6660,\n  \"starry</w>\": 30963,\n  \"stars</w>\": 2895,\n  \"starship</w>\": 37166,\n  \"start\": 17466,\n  \"start</w>\": 1572,\n  \"started</w>\": 2760,\n  \"starter</w>\": 7800,\n  \"starters</w>\": 22222,\n  \"starting</w>\": 2530,\n  \"startrek\": 30642,\n  \"startrek</w>\": 15349,\n  \"starts</w>\": 3105,\n  \"startu\": 6996,\n  \"startup\": 18049,\n  \"startup</w>\": 5882,\n  \"startups</w>\": 9056,\n  \"starve</w>\": 46957,\n  \"starving</w>\": 30473,\n  \"starwar\": 17287,\n  \"starwars\": 26239,\n  \"starwars</w>\": 7887,\n  \"starz</w>\": 25928,\n  \"stas</w>\": 19866,\n  \"stash</w>\": 27711,\n  \"stasy</w>\": 45942,\n  \"stat\": 3004,\n  \"stat</w>\": 15216,\n  \"state\": 3492,\n  \"state</w>\": 1295,\n  \"statec\": 33931,\n  \"stated</w>\": 19629,\n  \"statedept</w>\": 41458,\n  \"statefair</w>\": 40305,\n  \"statement</w>\": 5401,\n  \"statements</w>\": 19513,\n  \"staten</w>\": 38263,\n  \"stateof\": 35195,\n  \"states\": 22125,\n  \"states</w>\": 4218,\n  \"statesman</w>\": 35301,\n  \"stateu</w>\": 44248,\n  \"statewide</w>\": 29561,\n  \"stati\": 9622,\n  \"static</w>\": 16363,\n  \"stating</w>\": 35147,\n  \"station\": 13498,\n  \"station</w>\": 2631,\n  \"stationary</w>\": 29493,\n  \"stationed</w>\": 47618,\n  \"stationery</w>\": 33851,\n  \"stations</w>\": 10051,\n  \"statistical</w>\": 29349,\n  \"statistics</w>\": 14165,\n  \"stats</w>\": 7294,\n  \"statu\": 32481,\n  \"statue</w>\": 8222,\n  \"statues</w>\": 24363,\n  \"status</w>\": 6414,\n  \"stau\": 28550,\n  \"staur\": 3709,\n  \"stav\": 20285,\n  \"stax</w>\": 32235,\n  \"stay\": 4714,\n  \"stay</w>\": 2277,\n  \"stayed</w>\": 13805,\n  \"staying</w>\": 8993,\n  \"stays</w>\": 13311,\n  \"staytuned</w>\": 39285,\n  \"stc</w>\": 29859,\n  \"std</w>\": 30477,\n  \"ste\": 795,\n  \"ste</w>\": 2686,\n  \"stea</w>\": 46614,\n  \"stead\": 16101,\n  \"stead</w>\": 11031,\n  \"steadily</w>\": 35049,\n  \"steady</w>\": 12937,\n  \"steak\": 26955,\n  \"steak</w>\": 8913,\n  \"steakhouse</w>\": 35031,\n  \"steaks</w>\": 30655,\n  \"steal\": 37070,\n  \"steal</w>\": 10181,\n  \"stealing</w>\": 14242,\n  \"steals</w>\": 20224,\n  \"stealth</w>\": 25327,\n  \"steam\": 10962,\n  \"steam</w>\": 6972,\n  \"steamboat</w>\": 41121,\n  \"steamed</w>\": 29007,\n  \"steamer</w>\": 49075,\n  \"steaming</w>\": 43746,\n  \"steampunk</w>\": 24130,\n  \"steamy</w>\": 43104,\n  \"stec</w>\": 46713,\n  \"stech\": 48949,\n  \"stech</w>\": 32455,\n  \"sted\": 20426,\n  \"sted</w>\": 1356,\n  \"stee\": 31793,\n  \"steed</w>\": 48293,\n  \"steel\": 6938,\n  \"steel</w>\": 4726,\n  \"steele</w>\": 19460,\n  \"steelers</w>\": 14430,\n  \"steen\": 42851,\n  \"steen</w>\": 18625,\n  \"steep\": 28648,\n  \"steep</w>\": 20714,\n  \"steer</w>\": 27612,\n  \"steering</w>\": 19833,\n  \"stef\": 29158,\n  \"stefan\": 15004,\n  \"stefan</w>\": 18829,\n  \"stefani</w>\": 38319,\n  \"stefano</w>\": 30719,\n  \"steff\": 30075,\n  \"stein\": 13653,\n  \"stein</w>\": 5818,\n  \"steiner</w>\": 36314,\n  \"stel\": 9102,\n  \"stel</w>\": 10798,\n  \"stell\": 22355,\n  \"stella\": 46178,\n  \"stella</w>\": 17869,\n  \"stellar</w>\": 13810,\n  \"stellen\": 42754,\n  \"stem\": 24342,\n  \"stem</w>\": 6761,\n  \"stemc\": 40486,\n  \"stems</w>\": 31503,\n  \"sten\": 7652,\n  \"sten</w>\": 7877,\n  \"stencil</w>\": 47854,\n  \"stennis</w>\": 45636,\n  \"step\": 15572,\n  \"step</w>\": 3348,\n  \"steph\": 3522,\n  \"steph</w>\": 16251,\n  \"stephan</w>\": 37312,\n  \"stephani\": 48121,\n  \"stephanie</w>\": 14361,\n  \"stephen\": 10421,\n  \"stephen</w>\": 6078,\n  \"stephenking</w>\": 46361,\n  \"stephens</w>\": 22256,\n  \"stephenson</w>\": 37280,\n  \"stepped</w>\": 18384,\n  \"stepping</w>\": 15906,\n  \"steps</w>\": 5408,\n  \"ster\": 1022,\n  \"ster</w>\": 881,\n  \"stere\": 9229,\n  \"stered</w>\": 6935,\n  \"stereo\": 15992,\n  \"stereo</w>\": 17400,\n  \"stereotypes</w>\": 27890,\n  \"steria</w>\": 38804,\n  \"stering</w>\": 14175,\n  \"sterling\": 45790,\n  \"sterling</w>\": 9378,\n  \"stern\": 36254,\n  \"stern</w>\": 2945,\n  \"steroids</w>\": 37670,\n  \"sterone</w>\": 39418,\n  \"sters</w>\": 2132,\n  \"stery</w>\": 24232,\n  \"stest</w>\": 8556,\n  \"stev\": 11640,\n  \"steve\": 7412,\n  \"steve</w>\": 3803,\n  \"steven\": 10973,\n  \"steven</w>\": 8016,\n  \"stevens</w>\": 13877,\n  \"stevenson</w>\": 25091,\n  \"stevie\": 42104,\n  \"stevie</w>\": 18969,\n  \"stew</w>\": 17906,\n  \"stewar\": 28453,\n  \"steward\": 34980,\n  \"steward</w>\": 43355,\n  \"stewards</w>\": 49294,\n  \"stewardship</w>\": 36720,\n  \"stewart</w>\": 8120,\n  \"stfu</w>\": 47000,\n  \"stg</w>\": 48387,\n  \"stgeorge\": 43698,\n  \"sth\": 13456,\n  \"sth</w>\": 34004,\n  \"sthe\": 16491,\n  \"sthel\": 42863,\n  \"sti\": 860,\n  \"sti</w>\": 12439,\n  \"stia</w>\": 26492,\n  \"stible</w>\": 25835,\n  \"stic\": 5868,\n  \"stic</w>\": 1561,\n  \"stical</w>\": 16660,\n  \"stically</w>\": 19041,\n  \"stick\": 5483,\n  \"stick</w>\": 4987,\n  \"sticker</w>\": 11270,\n  \"stickers</w>\": 11613,\n  \"sticking</w>\": 21021,\n  \"sticks</w>\": 10016,\n  \"sticky</w>\": 18887,\n  \"stics</w>\": 5449,\n  \"stie\": 38164,\n  \"stie</w>\": 11000,\n  \"stier</w>\": 42069,\n  \"sties</w>\": 16428,\n  \"stiff\": 43471,\n  \"stiff</w>\": 21441,\n  \"stig\": 4088,\n  \"stig</w>\": 42551,\n  \"stigate</w>\": 15390,\n  \"stigma</w>\": 20619,\n  \"stik</w>\": 42247,\n  \"stil\": 21790,\n  \"stil</w>\": 37519,\n  \"stiles</w>\": 33028,\n  \"still\": 13209,\n  \"still</w>\": 1170,\n  \"stills</w>\": 20259,\n  \"stim\": 18269,\n  \"stime</w>\": 24711,\n  \"stimul\": 16434,\n  \"stimulate</w>\": 42380,\n  \"stimulating</w>\": 41237,\n  \"stimulation</w>\": 39530,\n  \"stimulus</w>\": 47283,\n  \"stin\": 2588,\n  \"stin</w>\": 4025,\n  \"stina</w>\": 22359,\n  \"stine</w>\": 7098,\n  \"sting\": 19868,\n  \"sting</w>\": 1271,\n  \"stingly</w>\": 49332,\n  \"stingray</w>\": 43229,\n  \"stink</w>\": 38213,\n  \"stinky</w>\": 44957,\n  \"stino</w>\": 40658,\n  \"stint</w>\": 33531,\n  \"stion</w>\": 10812,\n  \"stip\": 39869,\n  \"stips</w>\": 44756,\n  \"stique</w>\": 43305,\n  \"stir\": 12416,\n  \"stir</w>\": 19564,\n  \"stirling</w>\": 23128,\n  \"stirring</w>\": 39205,\n  \"stis</w>\": 45224,\n  \"stit\": 14110,\n  \"stitch\": 30003,\n  \"stitch</w>\": 14771,\n  \"stitched</w>\": 36540,\n  \"stitcher</w>\": 48204,\n  \"stitches</w>\": 32360,\n  \"stitching</w>\": 45208,\n  \"stitu\": 14585,\n  \"stitutes</w>\": 40479,\n  \"stive</w>\": 22426,\n  \"stix</w>\": 48829,\n  \"stjohn\": 36153,\n  \"stl\": 14179,\n  \"stl</w>\": 12527,\n  \"stlblues</w>\": 44138,\n  \"stlcards</w>\": 28644,\n  \"stle</w>\": 7698,\n  \"stles</w>\": 48638,\n  \"stlouis\": 40358,\n  \"stlouis</w>\": 39516,\n  \"stm</w>\": 28333,\n  \"stn</w>\": 27175,\n  \"sto\": 928,\n  \"sto</w>\": 5723,\n  \"stock\": 5899,\n  \"stock</w>\": 3206,\n  \"stocked</w>\": 23552,\n  \"stockholm</w>\": 16024,\n  \"stocki\": 42944,\n  \"stocking</w>\": 17335,\n  \"stockings</w>\": 28040,\n  \"stockmarket</w>\": 40359,\n  \"stockport</w>\": 35569,\n  \"stocks</w>\": 9321,\n  \"stockton</w>\": 26130,\n  \"stoday</w>\": 22392,\n  \"stok</w>\": 43782,\n  \"stoke\": 31338,\n  \"stoke</w>\": 13550,\n  \"stoked</w>\": 13160,\n  \"stokes</w>\": 27512,\n  \"stol\": 11401,\n  \"stol</w>\": 6700,\n  \"stole</w>\": 10995,\n  \"stolen</w>\": 8704,\n  \"stolic</w>\": 45020,\n  \"stom\": 2343,\n  \"stom</w>\": 38068,\n  \"stoma</w>\": 43545,\n  \"stomach</w>\": 14722,\n  \"stomp</w>\": 40165,\n  \"stomping</w>\": 46144,\n  \"ston\": 4101,\n  \"ston</w>\": 1839,\n  \"stone\": 7694,\n  \"stone</w>\": 2441,\n  \"stoned</w>\": 36248,\n  \"stonehenge</w>\": 42417,\n  \"stoner\": 35131,\n  \"stoner</w>\": 29115,\n  \"stones\": 42659,\n  \"stones</w>\": 6885,\n  \"stonewall</w>\": 39688,\n  \"stoney</w>\": 44198,\n  \"stony\": 41717,\n  \"stony</w>\": 35691,\n  \"stoo\": 24505,\n  \"stood</w>\": 9151,\n  \"stool\": 34413,\n  \"stool</w>\": 22314,\n  \"stop\": 6005,\n  \"stop</w>\": 1691,\n  \"stopbrexit</w>\": 48680,\n  \"stopp\": 15738,\n  \"stopped</w>\": 6015,\n  \"stopper</w>\": 32147,\n  \"stoppers</w>\": 34457,\n  \"stopping</w>\": 10735,\n  \"stops</w>\": 9822,\n  \"stopthe\": 26463,\n  \"stor\": 809,\n  \"stor</w>\": 17740,\n  \"storage</w>\": 6824,\n  \"store\": 17769,\n  \"store</w>\": 2183,\n  \"stored</w>\": 28257,\n  \"stores</w>\": 6370,\n  \"storey</w>\": 24025,\n  \"storians</w>\": 34628,\n  \"stories</w>\": 3784,\n  \"storing</w>\": 40087,\n  \"stork</w>\": 46452,\n  \"storm\": 7434,\n  \"storm</w>\": 2819,\n  \"stormed</w>\": 45939,\n  \"stormhour</w>\": 12161,\n  \"storming</w>\": 24842,\n  \"storms</w>\": 6464,\n  \"stormtrooper</w>\": 49218,\n  \"stormy</w>\": 20075,\n  \"stors</w>\": 7178,\n  \"story\": 6512,\n  \"story</w>\": 1134,\n  \"storyline</w>\": 37079,\n  \"storymonth</w>\": 23717,\n  \"storyteller</w>\": 35882,\n  \"storytelling</w>\": 14457,\n  \"storytime</w>\": 44197,\n  \"stos</w>\": 19281,\n  \"stou\": 37168,\n  \"stour\": 37361,\n  \"stour</w>\": 21928,\n  \"stout</w>\": 16550,\n  \"stove</w>\": 21423,\n  \"stow\": 44284,\n  \"stow</w>\": 17046,\n  \"stowe</w>\": 34196,\n  \"stown\": 28071,\n  \"stown</w>\": 7939,\n  \"stp</w>\": 30576,\n  \"stpatrick\": 21343,\n  \"stpatricksday</w>\": 22747,\n  \"str\": 807,\n  \"str</w>\": 15913,\n  \"stra\": 1894,\n  \"stra</w>\": 6253,\n  \"strack</w>\": 46861,\n  \"strada</w>\": 31134,\n  \"strade</w>\": 48968,\n  \"straigh\": 31016,\n  \"straight\": 22114,\n  \"straight</w>\": 4241,\n  \"strain</w>\": 16887,\n  \"strains</w>\": 38067,\n  \"strait</w>\": 22946,\n  \"straits</w>\": 41984,\n  \"stral</w>\": 23289,\n  \"stralia</w>\": 42510,\n  \"stran\": 18411,\n  \"strand\": 18214,\n  \"strand</w>\": 17826,\n  \"stranded</w>\": 22975,\n  \"strang\": 11138,\n  \"strange\": 33380,\n  \"strange</w>\": 7288,\n  \"strangely</w>\": 37566,\n  \"stranger\": 35541,\n  \"stranger</w>\": 14149,\n  \"strangers</w>\": 20684,\n  \"strangerthings</w>\": 43271,\n  \"strangest</w>\": 46740,\n  \"strap</w>\": 13946,\n  \"strapped</w>\": 40922,\n  \"straps</w>\": 31213,\n  \"stras\": 36814,\n  \"stras</w>\": 42125,\n  \"strasbourg</w>\": 39576,\n  \"strat\": 11345,\n  \"strat</w>\": 32925,\n  \"strata</w>\": 47278,\n  \"strate\": 3532,\n  \"strate</w>\": 28758,\n  \"strategi\": 49102,\n  \"strategic</w>\": 10246,\n  \"strategically</w>\": 45706,\n  \"strategies</w>\": 9942,\n  \"strategist</w>\": 37180,\n  \"strategy</w>\": 5637,\n  \"strates</w>\": 45724,\n  \"stratford</w>\": 23955,\n  \"strath\": 21997,\n  \"stration</w>\": 3156,\n  \"strato\": 28878,\n  \"strauss</w>\": 32033,\n  \"strava</w>\": 34625,\n  \"stravel</w>\": 43494,\n  \"straw\": 7430,\n  \"straw</w>\": 16438,\n  \"strawberries</w>\": 17796,\n  \"strawberry</w>\": 10233,\n  \"straws</w>\": 33048,\n  \"stray\": 30784,\n  \"stray</w>\": 15712,\n  \"stre\": 1079,\n  \"stre</w>\": 19652,\n  \"stread</w>\": 27797,\n  \"streak</w>\": 11749,\n  \"streaks</w>\": 42092,\n  \"stream\": 8659,\n  \"stream</w>\": 3322,\n  \"streamed</w>\": 26280,\n  \"streamer</w>\": 25178,\n  \"streamers</w>\": 19937,\n  \"streaming</w>\": 6278,\n  \"streamline</w>\": 44917,\n  \"streams</w>\": 13545,\n  \"stree\": 35082,\n  \"stree</w>\": 32438,\n  \"streep</w>\": 38701,\n  \"street\": 4839,\n  \"street</w>\": 2012,\n  \"streetart</w>\": 12948,\n  \"streetcar</w>\": 34268,\n  \"streetfood</w>\": 44486,\n  \"streetphotography</w>\": 20786,\n  \"streets</w>\": 6058,\n  \"streetstyle</w>\": 39118,\n  \"streetwear</w>\": 37298,\n  \"strel</w>\": 39685,\n  \"stren\": 4349,\n  \"streng\": 4472,\n  \"strength\": 15475,\n  \"strength</w>\": 5959,\n  \"strengthen</w>\": 16318,\n  \"strengthened</w>\": 47131,\n  \"strengthening</w>\": 23475,\n  \"strengthens</w>\": 40280,\n  \"strengths</w>\": 29268,\n  \"stress\": 17297,\n  \"stress</w>\": 5843,\n  \"stressed</w>\": 16497,\n  \"stresses</w>\": 32112,\n  \"stressful</w>\": 24268,\n  \"stressing</w>\": 35917,\n  \"stret\": 12265,\n  \"stretch</w>\": 10064,\n  \"stretched</w>\": 29393,\n  \"stretches</w>\": 32231,\n  \"stretching</w>\": 24423,\n  \"stri\": 1493,\n  \"stri</w>\": 27795,\n  \"stria</w>\": 39620,\n  \"strial</w>\": 30217,\n  \"strian</w>\": 12924,\n  \"stric\": 2607,\n  \"strick\": 25181,\n  \"strickland</w>\": 48939,\n  \"strict</w>\": 21585,\n  \"strictly</w>\": 16475,\n  \"stride</w>\": 36024,\n  \"strides</w>\": 37355,\n  \"stries</w>\": 18171,\n  \"strife</w>\": 46473,\n  \"strike\": 20774,\n  \"strike</w>\": 5767,\n  \"striker</w>\": 12448,\n  \"strikers</w>\": 33465,\n  \"strikes</w>\": 9280,\n  \"striking</w>\": 13392,\n  \"string\": 25512,\n  \"string</w>\": 9696,\n  \"strings</w>\": 15699,\n  \"strip</w>\": 9317,\n  \"stripe</w>\": 19368,\n  \"striped</w>\": 22192,\n  \"stripes</w>\": 14239,\n  \"stripped</w>\": 26602,\n  \"stripper</w>\": 45759,\n  \"stripping</w>\": 48588,\n  \"strips</w>\": 19000,\n  \"strive</w>\": 22140,\n  \"striving</w>\": 37671,\n  \"stro\": 3121,\n  \"stro</w>\": 6186,\n  \"stroke\": 44621,\n  \"stroke</w>\": 10403,\n  \"strokes</w>\": 26595,\n  \"strol\": 30123,\n  \"stroll</w>\": 15924,\n  \"stroller</w>\": 47076,\n  \"strolling</w>\": 40911,\n  \"strom</w>\": 14707,\n  \"stron\": 4165,\n  \"strong\": 10436,\n  \"strong</w>\": 2389,\n  \"stronger\": 27760,\n  \"stronger</w>\": 9245,\n  \"strongertogether</w>\": 38532,\n  \"strongest</w>\": 16171,\n  \"strongh\": 38678,\n  \"strongly</w>\": 15507,\n  \"strophy</w>\": 47912,\n  \"strou\": 48425,\n  \"stroud</w>\": 39895,\n  \"strous</w>\": 23752,\n  \"stru\": 1666,\n  \"struc\": 3311,\n  \"struck</w>\": 10861,\n  \"struction</w>\": 12497,\n  \"structural</w>\": 16899,\n  \"structure</w>\": 5285,\n  \"structured</w>\": 27147,\n  \"structures</w>\": 14171,\n  \"structuring</w>\": 37496,\n  \"strugg\": 5176,\n  \"struggle</w>\": 8443,\n  \"struggled</w>\": 32921,\n  \"struggles</w>\": 17446,\n  \"struggling</w>\": 12135,\n  \"struly\": 34118,\n  \"strum</w>\": 37632,\n  \"strung</w>\": 46033,\n  \"strust</w>\": 23920,\n  \"strut</w>\": 48375,\n  \"stry\": 17325,\n  \"stry</w>\": 2245,\n  \"sts</w>\": 1088,\n  \"stu\": 858,\n  \"stu</w>\": 23531,\n  \"stuart\": 32054,\n  \"stuart</w>\": 11723,\n  \"stub\": 27066,\n  \"stubborn</w>\": 38955,\n  \"stuck</w>\": 6596,\n  \"stud\": 22368,\n  \"stud</w>\": 13319,\n  \"studded</w>\": 29153,\n  \"studen\": 44156,\n  \"student\": 14681,\n  \"student</w>\": 2556,\n  \"students</w>\": 1712,\n  \"studi\": 5691,\n  \"studied</w>\": 21369,\n  \"studies</w>\": 6426,\n  \"studio\": 17798,\n  \"studio</w>\": 3155,\n  \"studios</w>\": 6231,\n  \"studs</w>\": 27571,\n  \"study\": 21051,\n  \"study</w>\": 3123,\n  \"studyabroad</w>\": 45425,\n  \"studying</w>\": 8826,\n  \"stuff\": 46072,\n  \"stuff</w>\": 3487,\n  \"stuffed</w>\": 11781,\n  \"stuffing</w>\": 31612,\n  \"stuffs</w>\": 43455,\n  \"stuk</w>\": 32424,\n  \"stumb\": 16784,\n  \"stumble</w>\": 39045,\n  \"stumbled</w>\": 21776,\n  \"stump</w>\": 32064,\n  \"stun\": 3088,\n  \"stun</w>\": 37959,\n  \"stunned</w>\": 34034,\n  \"stunner</w>\": 29965,\n  \"stunning</w>\": 3769,\n  \"stunningly</w>\": 47515,\n  \"stuns</w>\": 43796,\n  \"stunt</w>\": 19905,\n  \"stunts</w>\": 40118,\n  \"stupi\": 18975,\n  \"stupid\": 42600,\n  \"stupid</w>\": 8085,\n  \"stupidity</w>\": 33766,\n  \"stur\": 10676,\n  \"sturdy</w>\": 43780,\n  \"stures</w>\": 27223,\n  \"sturgeon</w>\": 31580,\n  \"sturi\": 21747,\n  \"sturridge</w>\": 45331,\n  \"stutt\": 30444,\n  \"stuttgart</w>\": 32219,\n  \"stv\": 27060,\n  \"stv</w>\": 9708,\n  \"stweet</w>\": 46832,\n  \"stweets</w>\": 39174,\n  \"stx</w>\": 42548,\n  \"sty\": 1421,\n  \"sty</w>\": 2920,\n  \"style\": 12356,\n  \"style</w>\": 1844,\n  \"styled</w>\": 17974,\n  \"styles</w>\": 6948,\n  \"styli\": 38577,\n  \"styling</w>\": 14597,\n  \"stylish</w>\": 10378,\n  \"stylist</w>\": 15928,\n  \"styn</w>\": 41394,\n  \"su\": 605,\n  \"su</w>\": 2937,\n  \"sua</w>\": 42448,\n  \"suarez</w>\": 21437,\n  \"suave</w>\": 47305,\n  \"sub\": 1783,\n  \"sub</w>\": 7765,\n  \"subaru</w>\": 21319,\n  \"subjec\": 16090,\n  \"subject</w>\": 10300,\n  \"subjects</w>\": 22099,\n  \"subli\": 16350,\n  \"sublime</w>\": 22367,\n  \"submarine</w>\": 19968,\n  \"submer\": 27156,\n  \"submerged</w>\": 43171,\n  \"submission</w>\": 16571,\n  \"submissions</w>\": 21566,\n  \"submit</w>\": 10423,\n  \"submitted</w>\": 15189,\n  \"submitting</w>\": 38788,\n  \"subram\": 49207,\n  \"subs</w>\": 16398,\n  \"subscri\": 5838,\n  \"subscribe</w>\": 9839,\n  \"subscribed</w>\": 44867,\n  \"subscriber</w>\": 36292,\n  \"subscribers</w>\": 17337,\n  \"subscription</w>\": 17979,\n  \"subscriptions</w>\": 47162,\n  \"subsequ\": 33598,\n  \"subsequent</w>\": 44323,\n  \"subsi\": 14856,\n  \"subsidi\": 45029,\n  \"subsidiary</w>\": 45506,\n  \"subsidies</w>\": 37685,\n  \"subsidy</w>\": 47462,\n  \"substan\": 17487,\n  \"substance</w>\": 19309,\n  \"substances</w>\": 36834,\n  \"substantial</w>\": 27171,\n  \"substantially</w>\": 47577,\n  \"substitu\": 18529,\n  \"substitute</w>\": 25340,\n  \"subtitles</w>\": 39479,\n  \"subtle</w>\": 16536,\n  \"subur\": 12517,\n  \"suburb</w>\": 37664,\n  \"suburban</w>\": 23570,\n  \"suburbs</w>\": 25317,\n  \"subway</w>\": 12196,\n  \"suc\": 1869,\n  \"succe\": 7981,\n  \"succeed</w>\": 13556,\n  \"succeeded</w>\": 41077,\n  \"succes\": 39019,\n  \"success\": 3695,\n  \"success</w>\": 3034,\n  \"successes</w>\": 29436,\n  \"successful</w>\": 4670,\n  \"successfully</w>\": 9934,\n  \"succession</w>\": 38491,\n  \"successive</w>\": 41319,\n  \"successor</w>\": 34774,\n  \"succu\": 45253,\n  \"succul\": 25671,\n  \"succulent</w>\": 35236,\n  \"such</w>\": 2046,\n  \"suction</w>\": 42786,\n  \"sud\": 8067,\n  \"sud</w>\": 33714,\n  \"sudan\": 31149,\n  \"sudan</w>\": 13474,\n  \"sudanese</w>\": 42837,\n  \"sudbury</w>\": 32488,\n  \"sudden\": 10833,\n  \"sudden</w>\": 15433,\n  \"suddenly</w>\": 11076,\n  \"sue\": 14045,\n  \"sue</w>\": 6641,\n  \"sued</w>\": 22225,\n  \"suede</w>\": 21036,\n  \"sues</w>\": 17105,\n  \"suf\": 21204,\n  \"suf</w>\": 22579,\n  \"sufc</w>\": 37091,\n  \"suff\": 4866,\n  \"suffe\": 13510,\n  \"suffer</w>\": 13557,\n  \"suffered</w>\": 14766,\n  \"suffering</w>\": 10140,\n  \"suffers</w>\": 22389,\n  \"sufficient</w>\": 28410,\n  \"suffol\": 13775,\n  \"suffolk\": 46408,\n  \"suffolk</w>\": 15685,\n  \"suffra\": 34596,\n  \"suffrage</w>\": 39567,\n  \"sufi</w>\": 39756,\n  \"sug\": 3189,\n  \"suga</w>\": 28757,\n  \"sugar\": 12418,\n  \"sugar</w>\": 5574,\n  \"sugge\": 6345,\n  \"suggest</w>\": 13356,\n  \"suggested</w>\": 18790,\n  \"suggesti\": 15033,\n  \"suggesting</w>\": 29792,\n  \"suggestion</w>\": 23741,\n  \"suggestions</w>\": 16052,\n  \"suggests</w>\": 13333,\n  \"suho</w>\": 32744,\n  \"sui</w>\": 24972,\n  \"suici\": 16372,\n  \"suicidal</w>\": 37165,\n  \"suicide\": 31310,\n  \"suicide</w>\": 8247,\n  \"suing</w>\": 18309,\n  \"suisse</w>\": 35964,\n  \"suit\": 11887,\n  \"suit</w>\": 3940,\n  \"suitable</w>\": 17476,\n  \"suitcase</w>\": 27792,\n  \"suite</w>\": 9346,\n  \"suited</w>\": 25919,\n  \"suites</w>\": 21523,\n  \"suits</w>\": 9949,\n  \"suk\": 24820,\n  \"suk</w>\": 6886,\n  \"suka</w>\": 44017,\n  \"suke</w>\": 25590,\n  \"sukh\": 46961,\n  \"suki</w>\": 32704,\n  \"sul\": 1767,\n  \"sul</w>\": 19879,\n  \"sula\": 34713,\n  \"sula</w>\": 26143,\n  \"sullivan</w>\": 14477,\n  \"sully</w>\": 37752,\n  \"sulph\": 37234,\n  \"sulphur</w>\": 47659,\n  \"sultan\": 35650,\n  \"sultan</w>\": 17049,\n  \"sum\": 7054,\n  \"sum</w>\": 8257,\n  \"suma</w>\": 47938,\n  \"sumat\": 32640,\n  \"sumatra</w>\": 47346,\n  \"sume</w>\": 45457,\n  \"sumi</w>\": 41248,\n  \"summ\": 1309,\n  \"summar\": 34657,\n  \"summari\": 31993,\n  \"summary</w>\": 13435,\n  \"summed</w>\": 34912,\n  \"summer\": 5500,\n  \"summer</w>\": 1673,\n  \"summers</w>\": 18254,\n  \"summerslam</w>\": 40264,\n  \"summertime</w>\": 19025,\n  \"summit\": 30011,\n  \"summit</w>\": 3768,\n  \"summon\": 27622,\n  \"summon</w>\": 39782,\n  \"sumner</w>\": 46813,\n  \"sumo</w>\": 33734,\n  \"sump\": 34252,\n  \"sumptuous</w>\": 47354,\n  \"sums</w>\": 13325,\n  \"sun\": 968,\n  \"sun</w>\": 2176,\n  \"sunbathing</w>\": 46994,\n  \"sunburn</w>\": 45767,\n  \"sund</w>\": 40735,\n  \"sundae</w>\": 38078,\n  \"sundance</w>\": 24128,\n  \"sundar\": 44936,\n  \"sunday\": 6649,\n  \"sunday</w>\": 1706,\n  \"sundayfunday</w>\": 21565,\n  \"sundaymorning</w>\": 24809,\n  \"sundaymotivation</w>\": 46227,\n  \"sundays</w>\": 15827,\n  \"sundaywith\": 26469,\n  \"sundaywithmarsha</w>\": 26662,\n  \"sunder\": 15097,\n  \"sunderland\": 45727,\n  \"sunderland</w>\": 18851,\n  \"sundown</w>\": 44438,\n  \"sune</w>\": 41096,\n  \"sunflower</w>\": 21559,\n  \"sunflowers</w>\": 39809,\n  \"sung\": 16903,\n  \"sung</w>\": 6047,\n  \"sunglasses</w>\": 12906,\n  \"suni\": 17663,\n  \"suni</w>\": 47010,\n  \"sunil</w>\": 32861,\n  \"sunite</w>\": 21382,\n  \"sunited</w>\": 35276,\n  \"sunk</w>\": 37534,\n  \"sunken</w>\": 43473,\n  \"sunlight</w>\": 17996,\n  \"sunni</w>\": 44315,\n  \"sunny\": 15632,\n  \"sunny</w>\": 5438,\n  \"sunrise</w>\": 5610,\n  \"suns</w>\": 18322,\n  \"sunscreen</w>\": 29355,\n  \"sunset\": 37880,\n  \"sunset</w>\": 3424,\n  \"sunsets</w>\": 17721,\n  \"sunshine\": 32761,\n  \"sunshine</w>\": 5385,\n  \"suny</w>\": 41308,\n  \"sup\": 19078,\n  \"sup</w>\": 8249,\n  \"supdates</w>\": 24177,\n  \"super\": 1642,\n  \"super</w>\": 1994,\n  \"superb</w>\": 8930,\n  \"superbike</w>\": 45709,\n  \"superbowl\": 47461,\n  \"superbowl</w>\": 16467,\n  \"supercar</w>\": 27021,\n  \"supercars</w>\": 32185,\n  \"supercell</w>\": 43227,\n  \"supercharged</w>\": 47479,\n  \"supere\": 46831,\n  \"superfood</w>\": 41715,\n  \"supergirl</w>\": 25771,\n  \"superhero</w>\": 14049,\n  \"superheroes</w>\": 23334,\n  \"superint\": 17615,\n  \"superintendent</w>\": 19020,\n  \"superior</w>\": 13205,\n  \"superjunior</w>\": 40475,\n  \"superleague</w>\": 45539,\n  \"superman</w>\": 11237,\n  \"supermarket</w>\": 19897,\n  \"supermarkets</w>\": 45106,\n  \"supermodel</w>\": 41963,\n  \"supermoon</w>\": 36571,\n  \"supernatural</w>\": 15484,\n  \"supernova</w>\": 39843,\n  \"superrugby</w>\": 48717,\n  \"supersonic</w>\": 42019,\n  \"supersport</w>\": 46319,\n  \"superst\": 38202,\n  \"superstar\": 32551,\n  \"superstar</w>\": 10472,\n  \"superstars</w>\": 25797,\n  \"supervis\": 12709,\n  \"supervised</w>\": 41316,\n  \"supervision</w>\": 36234,\n  \"supervisor</w>\": 20366,\n  \"supervisors</w>\": 37958,\n  \"superyacht</w>\": 42714,\n  \"supp\": 1023,\n  \"supper</w>\": 15727,\n  \"supple\": 31431,\n  \"supplement</w>\": 19924,\n  \"supplements</w>\": 21265,\n  \"supplied</w>\": 24106,\n  \"supplier</w>\": 18043,\n  \"suppliers</w>\": 24196,\n  \"supplies</w>\": 9384,\n  \"supply\": 25074,\n  \"supply</w>\": 6389,\n  \"supplychain</w>\": 31224,\n  \"supplying</w>\": 32739,\n  \"suppo\": 6941,\n  \"suppor\": 2104,\n  \"support\": 12062,\n  \"support</w>\": 1425,\n  \"supported</w>\": 8038,\n  \"supporter</w>\": 12992,\n  \"supporters</w>\": 7403,\n  \"supportindiefilm</w>\": 43976,\n  \"supporting</w>\": 3976,\n  \"supportive</w>\": 18313,\n  \"supportlocal</w>\": 43852,\n  \"supports</w>\": 8336,\n  \"supportsmall\": 30941,\n  \"supportsmallstreamers</w>\": 36097,\n  \"suppose</w>\": 18924,\n  \"supposed</w>\": 9119,\n  \"supposedly</w>\": 32302,\n  \"suppre\": 20542,\n  \"suppression</w>\": 36508,\n  \"supra</w>\": 48485,\n  \"supre\": 5875,\n  \"supremac\": 28643,\n  \"supremacist</w>\": 39005,\n  \"supremacy</w>\": 28913,\n  \"supreme\": 35222,\n  \"supreme</w>\": 7468,\n  \"supt</w>\": 23625,\n  \"sur\": 1090,\n  \"sur</w>\": 7123,\n  \"sura\": 33412,\n  \"sura</w>\": 49125,\n  \"surabaya</w>\": 45227,\n  \"surance</w>\": 22184,\n  \"surat</w>\": 30201,\n  \"sure\": 14320,\n  \"sure</w>\": 1650,\n  \"sured</w>\": 36869,\n  \"surely</w>\": 11409,\n  \"sures</w>\": 12725,\n  \"suresh\": 32118,\n  \"suresh</w>\": 31464,\n  \"sureshpp\": 41924,\n  \"sureshpprabhu</w>\": 42050,\n  \"surf\": 10176,\n  \"surf</w>\": 10322,\n  \"surface</w>\": 7744,\n  \"surfaces</w>\": 20746,\n  \"surfer</w>\": 24925,\n  \"surfers</w>\": 34842,\n  \"surfing</w>\": 15762,\n  \"surg\": 13045,\n  \"surge</w>\": 17457,\n  \"surgeon</w>\": 16039,\n  \"surgeons</w>\": 26000,\n  \"surger\": 5122,\n  \"surgeries</w>\": 34940,\n  \"surgery</w>\": 5344,\n  \"surgical</w>\": 16386,\n  \"suri\": 14130,\n  \"suri</w>\": 33952,\n  \"suring</w>\": 16817,\n  \"suriya</w>\": 17832,\n  \"surpass</w>\": 45494,\n  \"surpassed</w>\": 25648,\n  \"surplus</w>\": 29413,\n  \"surpri\": 3244,\n  \"surprise</w>\": 5099,\n  \"surprised</w>\": 8949,\n  \"surprises</w>\": 16920,\n  \"surprising</w>\": 14964,\n  \"surprisingly</w>\": 17367,\n  \"surreal</w>\": 18408,\n  \"surrealism</w>\": 41773,\n  \"surrender</w>\": 20964,\n  \"surrendered</w>\": 44601,\n  \"surrey\": 26489,\n  \"surrey</w>\": 14315,\n  \"surro\": 47499,\n  \"surroun\": 8250,\n  \"surround\": 26543,\n  \"surround</w>\": 22999,\n  \"surrounded</w>\": 13589,\n  \"surrounding</w>\": 12544,\n  \"surroundings</w>\": 26915,\n  \"surrounds</w>\": 39012,\n  \"suru</w>\": 49240,\n  \"surve\": 8952,\n  \"surveill\": 15408,\n  \"surveillance</w>\": 15578,\n  \"survey\": 45914,\n  \"survey</w>\": 6809,\n  \"surveying</w>\": 33085,\n  \"surveys</w>\": 25096,\n  \"survi\": 3440,\n  \"surviv\": 12922,\n  \"survival</w>\": 10172,\n  \"survive</w>\": 10431,\n  \"survived</w>\": 13483,\n  \"survives</w>\": 30927,\n  \"surviving</w>\": 18609,\n  \"survivor\": 31934,\n  \"survivor</w>\": 10944,\n  \"survivors</w>\": 13711,\n  \"surya</w>\": 37767,\n  \"sus\": 8091,\n  \"sus</w>\": 3036,\n  \"susa</w>\": 20546,\n  \"susan\": 19922,\n  \"susan</w>\": 10168,\n  \"suscep\": 44270,\n  \"sush\": 22298,\n  \"sushi</w>\": 11729,\n  \"sushmaswar\": 48200,\n  \"susie</w>\": 32284,\n  \"susp\": 7971,\n  \"suspec\": 10298,\n  \"suspect</w>\": 9065,\n  \"suspected</w>\": 15579,\n  \"suspects</w>\": 18265,\n  \"suspen\": 10578,\n  \"suspend</w>\": 41007,\n  \"suspended</w>\": 13126,\n  \"suspends</w>\": 39535,\n  \"suspense</w>\": 21556,\n  \"suspension</w>\": 15417,\n  \"suspici\": 25714,\n  \"suspicion</w>\": 34910,\n  \"suspicious</w>\": 19862,\n  \"sussex\": 31244,\n  \"sussex</w>\": 13266,\n  \"sustain\": 4644,\n  \"sustain</w>\": 28156,\n  \"sustainability</w>\": 9635,\n  \"sustainable\": 23645,\n  \"sustainable</w>\": 7078,\n  \"sustained</w>\": 22699,\n  \"sustaining</w>\": 44418,\n  \"sut\": 23984,\n  \"sut</w>\": 28956,\n  \"sutherland</w>\": 27592,\n  \"sutton\": 39359,\n  \"sutton</w>\": 18564,\n  \"suv</w>\": 15985,\n  \"suz\": 9957,\n  \"suzanne</w>\": 24617,\n  \"suzu\": 36289,\n  \"suzuki</w>\": 16892,\n  \"suzy</w>\": 26552,\n  \"sv\": 6508,\n  \"sv</w>\": 17083,\n  \"svc</w>\": 45065,\n  \"sve\": 47637,\n  \"sven\": 37786,\n  \"sven</w>\": 45183,\n  \"sver\": 45923,\n  \"sville\": 44580,\n  \"sville</w>\": 6741,\n  \"svp</w>\": 28465,\n  \"svt</w>\": 42014,\n  \"svu</w>\": 32123,\n  \"sw\": 1220,\n  \"sw</w>\": 4457,\n  \"swa\": 4707,\n  \"swa</w>\": 31916,\n  \"swach\": 20862,\n  \"swachhb\": 31898,\n  \"swachhbharat</w>\": 36927,\n  \"swag\": 8852,\n  \"swag</w>\": 8177,\n  \"swagg</w>\": 47702,\n  \"swagger</w>\": 35797,\n  \"swain</w>\": 43226,\n  \"swal\": 13433,\n  \"swallow</w>\": 28979,\n  \"swallowed</w>\": 46956,\n  \"swallows</w>\": 45124,\n  \"swam</w>\": 42539,\n  \"swami</w>\": 25021,\n  \"swamp\": 41953,\n  \"swamp</w>\": 16595,\n  \"swamy</w>\": 28445,\n  \"swan\": 8215,\n  \"swan</w>\": 12530,\n  \"swana</w>\": 24699,\n  \"swans</w>\": 19516,\n  \"swansea</w>\": 16567,\n  \"swanson</w>\": 34797,\n  \"swap</w>\": 15234,\n  \"swapped</w>\": 39077,\n  \"swapping</w>\": 44702,\n  \"swaps</w>\": 49242,\n  \"swar\": 11680,\n  \"swarm</w>\": 31577,\n  \"swarovski</w>\": 28515,\n  \"swat\": 32547,\n  \"swat</w>\": 26482,\n  \"swatch</w>\": 48053,\n  \"sway\": 26443,\n  \"sway</w>\": 26617,\n  \"swc</w>\": 42231,\n  \"swe\": 2350,\n  \"swe</w>\": 38070,\n  \"swear</w>\": 7406,\n  \"swearing</w>\": 32627,\n  \"sweat\": 10282,\n  \"sweat</w>\": 12663,\n  \"sweater</w>\": 11455,\n  \"sweaters</w>\": 31303,\n  \"sweating</w>\": 33215,\n  \"sweats</w>\": 39321,\n  \"sweatshirt</w>\": 22442,\n  \"sweaty</w>\": 28419,\n  \"sweden</w>\": 8760,\n  \"swedish</w>\": 11585,\n  \"swee\": 1812,\n  \"sweek</w>\": 30017,\n  \"sweeney</w>\": 27286,\n  \"sweep\": 23220,\n  \"sweep</w>\": 13669,\n  \"sweeping</w>\": 25719,\n  \"sweeps</w>\": 26887,\n  \"sweepstakes</w>\": 25992,\n  \"sweet\": 10957,\n  \"sweet</w>\": 2418,\n  \"sweetened</w>\": 45577,\n  \"sweeter</w>\": 32873,\n  \"sweetest</w>\": 15180,\n  \"sweethe\": 16316,\n  \"sweetheart</w>\": 18079,\n  \"sweetie</w>\": 24450,\n  \"sweetness</w>\": 29713,\n  \"sweets</w>\": 18045,\n  \"swel\": 48470,\n  \"swell\": 35538,\n  \"swell</w>\": 21490,\n  \"swelling</w>\": 46578,\n  \"swept</w>\": 23311,\n  \"swer\": 30514,\n  \"swfc</w>\": 30227,\n  \"swfl</w>\": 46607,\n  \"swi\": 3881,\n  \"swi</w>\": 45223,\n  \"swick</w>\": 17159,\n  \"swif\": 28548,\n  \"swift\": 34843,\n  \"swift</w>\": 8229,\n  \"swild\": 33909,\n  \"swild</w>\": 38696,\n  \"swildlife</w>\": 46818,\n  \"swim\": 4928,\n  \"swim</w>\": 7681,\n  \"swimmer</w>\": 25475,\n  \"swimmers</w>\": 27776,\n  \"swimming</w>\": 7411,\n  \"swims</w>\": 46798,\n  \"swimsuit</w>\": 25504,\n  \"swimwear</w>\": 31889,\n  \"swin\": 14554,\n  \"swin</w>\": 40798,\n  \"swindon</w>\": 29540,\n  \"swine</w>\": 31166,\n  \"swing\": 25292,\n  \"swing</w>\": 7429,\n  \"swinging</w>\": 26760,\n  \"swings</w>\": 29141,\n  \"swipe</w>\": 31828,\n  \"swire</w>\": 42753,\n  \"swirl</w>\": 35795,\n  \"swis\": 23611,\n  \"swish</w>\": 38571,\n  \"swiss\": 37917,\n  \"swiss</w>\": 9287,\n  \"swit\": 3726,\n  \"switch\": 22480,\n  \"switch</w>\": 5893,\n  \"switched</w>\": 22869,\n  \"switches</w>\": 33569,\n  \"switching</w>\": 21155,\n  \"swith\": 17299,\n  \"switzer\": 9835,\n  \"switzerland</w>\": 9912,\n  \"swivel</w>\": 48256,\n  \"swo\": 38673,\n  \"swol\": 29575,\n  \"swollen</w>\": 36129,\n  \"swoo\": 29744,\n  \"swood</w>\": 24158,\n  \"swoon</w>\": 37028,\n  \"swoop</w>\": 45661,\n  \"sword\": 33294,\n  \"sword</w>\": 11356,\n  \"swords</w>\": 27181,\n  \"swork</w>\": 42722,\n  \"sworld</w>\": 33305,\n  \"sworn</w>\": 21130,\n  \"sworth</w>\": 13322,\n  \"swt</w>\": 38878,\n  \"swx</w>\": 20597,\n  \"sx\": 9402,\n  \"sx</w>\": 17806,\n  \"sxsw</w>\": 13369,\n  \"sy\": 974,\n  \"sy</w>\": 2126,\n  \"sya</w>\": 35017,\n  \"sycam\": 34911,\n  \"sycamore</w>\": 43086,\n  \"syd\": 4525,\n  \"syd</w>\": 22504,\n  \"sydney\": 15878,\n  \"sydney</w>\": 5278,\n  \"syed</w>\": 27624,\n  \"syfy</w>\": 32047,\n  \"sykes</w>\": 27287,\n  \"syl\": 6452,\n  \"sylla\": 41708,\n  \"sylvania</w>\": 12011,\n  \"sylve\": 28369,\n  \"sylvester</w>\": 37214,\n  \"sylvia</w>\": 25670,\n  \"sym\": 3645,\n  \"sym</w>\": 40327,\n  \"symb\": 22987,\n  \"symbol</w>\": 13085,\n  \"symboli\": 22019,\n  \"symbolic</w>\": 33177,\n  \"symbolism</w>\": 44679,\n  \"symbols</w>\": 25476,\n  \"symmetry</w>\": 31427,\n  \"symp\": 11468,\n  \"sympathi\": 47493,\n  \"sympathy</w>\": 32477,\n  \"symph\": 9544,\n  \"symphonic</w>\": 42639,\n  \"symphony</w>\": 11180,\n  \"sympo\": 9730,\n  \"symposium</w>\": 9971,\n  \"symptom</w>\": 47799,\n  \"symptoms</w>\": 12956,\n  \"syn\": 3758,\n  \"syn</w>\": 36090,\n  \"synago\": 30945,\n  \"synagogue</w>\": 33518,\n  \"sync</w>\": 20081,\n  \"synchron\": 23943,\n  \"syndic\": 21098,\n  \"syndicate</w>\": 28779,\n  \"syndrome</w>\": 10927,\n  \"syner\": 22283,\n  \"synergy</w>\": 32012,\n  \"syno\": 31533,\n  \"synod</w>\": 47712,\n  \"synopsis</w>\": 47018,\n  \"synth\": 33841,\n  \"synth</w>\": 24462,\n  \"synthe\": 22604,\n  \"synthesi\": 33565,\n  \"synthesis</w>\": 21602,\n  \"synthesizer</w>\": 44077,\n  \"synthetic</w>\": 19917,\n  \"syou\": 26742,\n  \"syour\": 21718,\n  \"syrac\": 17279,\n  \"syracuse</w>\": 19640,\n  \"syrah</w>\": 45364,\n  \"syri\": 18917,\n  \"syria</w>\": 5563,\n  \"syrian\": 47562,\n  \"syrian</w>\": 10041,\n  \"syrians</w>\": 41392,\n  \"syrup</w>\": 16611,\n  \"sys</w>\": 26726,\n  \"syste\": 1933,\n  \"system\": 47813,\n  \"system</w>\": 2422,\n  \"systematic</w>\": 28586,\n  \"systemic</w>\": 33807,\n  \"systems</w>\": 4828,\n  \"sz\": 13438,\n  \"sz</w>\": 15879,\n  \"sze\": 44507,\n  \"szn</w>\": 48092,\n  \"sÃ£o</w>\": 45911,\n  \"sÃ©\": 37879,\n  \"t\": 83,\n  \"t</w>\": 339,\n  \"ta\": 648,\n  \"ta</w>\": 1397,\n  \"taa</w>\": 43874,\n  \"tab\": 2648,\n  \"tab</w>\": 14724,\n  \"tabby</w>\": 36145,\n  \"tabern\": 48991,\n  \"tability</w>\": 15770,\n  \"table\": 12108,\n  \"table</w>\": 2175,\n  \"tableau</w>\": 39723,\n  \"tables</w>\": 7822,\n  \"tablet</w>\": 12494,\n  \"tabletop\": 46843,\n  \"tabletop</w>\": 25773,\n  \"tablets</w>\": 20436,\n  \"tably</w>\": 24440,\n  \"taboo</w>\": 38400,\n  \"tabs</w>\": 29163,\n  \"tac\": 3145,\n  \"tac</w>\": 22653,\n  \"tache</w>\": 39239,\n  \"tack\": 6339,\n  \"tack</w>\": 34446,\n  \"tackle</w>\": 10294,\n  \"tackled</w>\": 47218,\n  \"tackles</w>\": 18021,\n  \"tackling</w>\": 19628,\n  \"taco\": 31924,\n  \"taco</w>\": 12436,\n  \"tacoma</w>\": 25397,\n  \"tacos</w>\": 14090,\n  \"tactic</w>\": 40377,\n  \"tactical</w>\": 17137,\n  \"tactics</w>\": 16410,\n  \"tacular</w>\": 48985,\n  \"tad\": 15890,\n  \"tad</w>\": 19860,\n  \"tado</w>\": 40846,\n  \"tae\": 15257,\n  \"tae</w>\": 15580,\n  \"taehyung</w>\": 24642,\n  \"taek\": 30753,\n  \"taekwondo</w>\": 39963,\n  \"taemin</w>\": 30600,\n  \"taeyang</w>\": 45802,\n  \"taeyeon</w>\": 27389,\n  \"taf\": 29660,\n  \"taft</w>\": 42141,\n  \"tag\": 3456,\n  \"tag</w>\": 3640,\n  \"tage</w>\": 2669,\n  \"tages</w>\": 39902,\n  \"tagged</w>\": 12969,\n  \"tagging</w>\": 25138,\n  \"tagne</w>\": 47467,\n  \"tags</w>\": 11606,\n  \"tah\": 14822,\n  \"tah</w>\": 7090,\n  \"tahit\": 45385,\n  \"tahoe</w>\": 26140,\n  \"tai\": 6511,\n  \"tai</w>\": 13040,\n  \"taiji</w>\": 30185,\n  \"tail\": 7156,\n  \"tail</w>\": 4132,\n  \"tailed</w>\": 20626,\n  \"tailgate</w>\": 23168,\n  \"tailgating</w>\": 42625,\n  \"tailo\": 27230,\n  \"tailor</w>\": 29870,\n  \"tailored</w>\": 28275,\n  \"tailoring</w>\": 46357,\n  \"tails</w>\": 16066,\n  \"tain\": 2841,\n  \"tain</w>\": 1908,\n  \"taine\": 21214,\n  \"taine</w>\": 32299,\n  \"tained</w>\": 10212,\n  \"taining</w>\": 7565,\n  \"tainment</w>\": 30063,\n  \"tains</w>\": 3952,\n  \"tainted</w>\": 47211,\n  \"taipei</w>\": 24356,\n  \"tair\": 29143,\n  \"tairp</w>\": 43707,\n  \"tait</w>\": 45325,\n  \"taiwan\": 36319,\n  \"taiwan</w>\": 12626,\n  \"taiwanese</w>\": 41416,\n  \"taj\": 28937,\n  \"taj</w>\": 24805,\n  \"taji\": 46358,\n  \"tak\": 15070,\n  \"tak</w>\": 14458,\n  \"taka\": 24070,\n  \"taka</w>\": 40968,\n  \"take\": 5052,\n  \"take</w>\": 1172,\n  \"takeaway</w>\": 25737,\n  \"takeaways</w>\": 32080,\n  \"takeme\": 41748,\n  \"taken</w>\": 2807,\n  \"takeoff</w>\": 32789,\n  \"takeover</w>\": 11863,\n  \"taker</w>\": 17939,\n  \"takers</w>\": 30775,\n  \"takes</w>\": 2633,\n  \"takin</w>\": 30890,\n  \"taking</w>\": 2019,\n  \"taku</w>\": 48168,\n  \"tal\": 976,\n  \"tal</w>\": 2066,\n  \"tala</w>\": 29845,\n  \"talaga</w>\": 35349,\n  \"talbot</w>\": 30585,\n  \"tale\": 33971,\n  \"tale</w>\": 7798,\n  \"talent\": 30435,\n  \"talent</w>\": 5114,\n  \"talented</w>\": 5331,\n  \"talents</w>\": 16136,\n  \"tales</w>\": 9469,\n  \"tali\": 12122,\n  \"tali</w>\": 45406,\n  \"taliban</w>\": 20788,\n  \"talis\": 36480,\n  \"tality</w>\": 15631,\n  \"talk\": 12462,\n  \"talk</w>\": 1841,\n  \"talked</w>\": 10153,\n  \"talkin</w>\": 26040,\n  \"talking\": 31463,\n  \"talking</w>\": 2578,\n  \"talks</w>\": 3237,\n  \"tall\": 11664,\n  \"tall</w>\": 7771,\n  \"talla\": 21528,\n  \"tallade\": 44220,\n  \"tallahassee</w>\": 37832,\n  \"taller</w>\": 23470,\n  \"tallest</w>\": 19774,\n  \"tallinn</w>\": 45079,\n  \"tally</w>\": 16323,\n  \"talon</w>\": 47897,\n  \"tam\": 2661,\n  \"tam</w>\": 12246,\n  \"tama</w>\": 45424,\n  \"tamanna\": 48055,\n  \"tamar\": 22901,\n  \"tamara</w>\": 35697,\n  \"tame\": 38557,\n  \"tame</w>\": 32778,\n  \"tamed</w>\": 40575,\n  \"tami</w>\": 39429,\n  \"tamil\": 23046,\n  \"tamil</w>\": 14033,\n  \"tamilnadu</w>\": 32371,\n  \"tamine</w>\": 42566,\n  \"tammy</w>\": 28396,\n  \"tampa</w>\": 10906,\n  \"tampab\": 37852,\n  \"tamu</w>\": 34105,\n  \"tan\": 2123,\n  \"tan</w>\": 5039,\n  \"tana</w>\": 21396,\n  \"tand\": 20244,\n  \"tandem</w>\": 33756,\n  \"tane\": 13344,\n  \"tane</w>\": 24923,\n  \"taneous</w>\": 22275,\n  \"taneously</w>\": 24422,\n  \"tang\": 10425,\n  \"tang</w>\": 20794,\n  \"tanger\": 31844,\n  \"tangerine</w>\": 42045,\n  \"tangible</w>\": 44823,\n  \"tangle</w>\": 36568,\n  \"tangled</w>\": 33587,\n  \"tango</w>\": 24089,\n  \"tani\": 31374,\n  \"tani</w>\": 32985,\n  \"tania</w>\": 45369,\n  \"tank\": 29858,\n  \"tank</w>\": 6172,\n  \"tanker</w>\": 25020,\n  \"tanks</w>\": 14223,\n  \"tann\": 19174,\n  \"tanner</w>\": 22001,\n  \"tanning</w>\": 27985,\n  \"tans</w>\": 27332,\n  \"tant\": 41383,\n  \"tant</w>\": 41695,\n  \"tante</w>\": 48262,\n  \"tanto</w>\": 45685,\n  \"tany\": 34410,\n  \"tanya</w>\": 26800,\n  \"tanz\": 47399,\n  \"tanzania</w>\": 15711,\n  \"tao\": 29084,\n  \"tao</w>\": 18923,\n  \"tap\": 17923,\n  \"tap</w>\": 7888,\n  \"tapas</w>\": 27361,\n  \"tape\": 18332,\n  \"tape</w>\": 5749,\n  \"taped</w>\": 33219,\n  \"tapes</w>\": 17903,\n  \"tapestry</w>\": 33525,\n  \"taping</w>\": 24355,\n  \"tapp\": 27644,\n  \"tapp</w>\": 27764,\n  \"tapped</w>\": 26649,\n  \"tapping</w>\": 27882,\n  \"tapro\": 34415,\n  \"taproom</w>\": 40266,\n  \"taps</w>\": 23267,\n  \"tar\": 2002,\n  \"tar</w>\": 6977,\n  \"tara</w>\": 15264,\n  \"tarak</w>\": 37813,\n  \"taran\": 32370,\n  \"tarantino</w>\": 41180,\n  \"tarde</w>\": 48670,\n  \"tardis</w>\": 35410,\n  \"tares</w>\": 34587,\n  \"targe\": 9620,\n  \"target\": 38556,\n  \"target</w>\": 5400,\n  \"targeted</w>\": 14968,\n  \"targeting</w>\": 15818,\n  \"targets</w>\": 12468,\n  \"tari\": 4238,\n  \"tari</w>\": 38012,\n  \"tarian</w>\": 11762,\n  \"tarians</w>\": 42789,\n  \"taries</w>\": 47291,\n  \"tariff</w>\": 40220,\n  \"tariffs</w>\": 28335,\n  \"tariq</w>\": 42526,\n  \"tarmac</w>\": 44294,\n  \"taro</w>\": 26264,\n  \"tarot</w>\": 23702,\n  \"tart\": 16707,\n  \"tart</w>\": 14120,\n  \"tartan</w>\": 35064,\n  \"tarts</w>\": 29799,\n  \"tary\": 31729,\n  \"tary</w>\": 5065,\n  \"tarzan</w>\": 45463,\n  \"tas\": 6538,\n  \"tas</w>\": 10163,\n  \"tash\": 35272,\n  \"tasha</w>\": 44967,\n  \"task\": 39189,\n  \"task</w>\": 10549,\n  \"tasks</w>\": 19453,\n  \"tasmania</w>\": 22429,\n  \"tasmanian</w>\": 45102,\n  \"tassel</w>\": 49276,\n  \"tast\": 10839,\n  \"taste\": 14314,\n  \"taste</w>\": 5219,\n  \"tasted</w>\": 22827,\n  \"tasteof\": 38097,\n  \"taster</w>\": 29743,\n  \"tastes</w>\": 13736,\n  \"tastic</w>\": 21337,\n  \"tasting</w>\": 7656,\n  \"tastings</w>\": 49273,\n  \"tasty\": 43390,\n  \"tasty</w>\": 8568,\n  \"tat\": 2652,\n  \"tat</w>\": 21592,\n  \"tata</w>\": 19300,\n  \"tate\": 44476,\n  \"tate</w>\": 13295,\n  \"tath\": 27566,\n  \"tati\": 31433,\n  \"tatiana</w>\": 48837,\n  \"tation</w>\": 5280,\n  \"tations</w>\": 32324,\n  \"tator</w>\": 18791,\n  \"tators</w>\": 37206,\n  \"tats</w>\": 44557,\n  \"tatt\": 9232,\n  \"tatted</w>\": 41605,\n  \"tattoo\": 15980,\n  \"tattoo</w>\": 6325,\n  \"tattooed</w>\": 28541,\n  \"tattoos</w>\": 14900,\n  \"tatum</w>\": 26103,\n  \"tau\": 6620,\n  \"tau</w>\": 20510,\n  \"taught</w>\": 9306,\n  \"taun\": 23910,\n  \"taunton</w>\": 40681,\n  \"taurus</w>\": 32881,\n  \"taver\": 37776,\n  \"tavern</w>\": 18644,\n  \"taw\": 33868,\n  \"taw</w>\": 40289,\n  \"tawa</w>\": 29035,\n  \"tawards</w>\": 14351,\n  \"tax\": 4581,\n  \"tax</w>\": 3879,\n  \"taxation</w>\": 36847,\n  \"taxes</w>\": 11462,\n  \"taxi\": 25160,\n  \"taxi</w>\": 11380,\n  \"taxider\": 47420,\n  \"taxis</w>\": 34009,\n  \"taxpay\": 17986,\n  \"taxpayer</w>\": 30978,\n  \"taxpayers</w>\": 25503,\n  \"tay\": 6542,\n  \"tay</w>\": 15073,\n  \"taya</w>\": 38484,\n  \"tayl\": 3913,\n  \"taylor\": 9044,\n  \"taylor</w>\": 3961,\n  \"taylorswift</w>\": 18936,\n  \"tayo</w>\": 33941,\n  \"taz\": 41475,\n  \"taz</w>\": 31870,\n  \"tb\": 1990,\n  \"tb</w>\": 7490,\n  \"tba</w>\": 34363,\n  \"tball\": 8390,\n  \"tball</w>\": 1467,\n  \"tbc</w>\": 31807,\n  \"tbd</w>\": 45548,\n  \"tbh</w>\": 13238,\n  \"tbi</w>\": 45868,\n  \"tbl</w>\": 42962,\n  \"tbli\": 43664,\n  \"tblightning</w>\": 44178,\n  \"tbo</w>\": 34255,\n  \"tbr</w>\": 46643,\n  \"tbs</w>\": 37368,\n  \"tbt</w>\": 2950,\n  \"tc\": 6820,\n  \"tc</w>\": 5454,\n  \"tca</w>\": 35116,\n  \"tch\": 10744,\n  \"tch</w>\": 4048,\n  \"tches</w>\": 42001,\n  \"tcm\": 21501,\n  \"tcm</w>\": 26588,\n  \"tcmparty</w>\": 24338,\n  \"tcot</w>\": 8995,\n  \"tcs</w>\": 39107,\n  \"tcu</w>\": 26791,\n  \"td\": 20578,\n  \"td</w>\": 3192,\n  \"tdf</w>\": 21844,\n  \"tdi</w>\": 45621,\n  \"tdp</w>\": 47009,\n  \"tds</w>\": 20238,\n  \"tdsb</w>\": 29836,\n  \"te\": 600,\n  \"te</w>\": 756,\n  \"tea\": 41053,\n  \"tea</w>\": 3274,\n  \"teach\": 2043,\n  \"teach</w>\": 6865,\n  \"teacher\": 18051,\n  \"teacher</w>\": 4008,\n  \"teachers</w>\": 5069,\n  \"teaches</w>\": 17110,\n  \"teaching</w>\": 5141,\n  \"teachings</w>\": 32119,\n  \"teal</w>\": 22821,\n  \"team\": 2085,\n  \"team</w>\": 1027,\n  \"teamcanada</w>\": 46636,\n  \"teamed</w>\": 20590,\n  \"teamgb</w>\": 40971,\n  \"teaming</w>\": 24392,\n  \"teammate</w>\": 17900,\n  \"teammates</w>\": 13921,\n  \"teams</w>\": 3891,\n  \"teamsisd</w>\": 34703,\n  \"teamusa</w>\": 28625,\n  \"teamwork</w>\": 14657,\n  \"teaparty</w>\": 33065,\n  \"teapo\": 35745,\n  \"teapot</w>\": 40749,\n  \"tear\": 15802,\n  \"tear</w>\": 11862,\n  \"tearful</w>\": 46873,\n  \"tearing</w>\": 24785,\n  \"tears</w>\": 7688,\n  \"teas\": 23003,\n  \"teas</w>\": 29314,\n  \"tease</w>\": 25163,\n  \"teased</w>\": 49122,\n  \"teaser</w>\": 8982,\n  \"teasers</w>\": 48990,\n  \"teases</w>\": 28509,\n  \"teasing</w>\": 36507,\n  \"teat\": 26376,\n  \"teatime</w>\": 48948,\n  \"teatro</w>\": 35756,\n  \"teau</w>\": 24931,\n  \"tebow</w>\": 37797,\n  \"tec\": 17381,\n  \"tec</w>\": 11612,\n  \"tech\": 1782,\n  \"tech</w>\": 2061,\n  \"techcrunch</w>\": 42110,\n  \"techn\": 6252,\n  \"technews</w>\": 31787,\n  \"technic\": 16639,\n  \"technic</w>\": 37666,\n  \"technical\": 49231,\n  \"technical</w>\": 7582,\n  \"technically</w>\": 23180,\n  \"technician</w>\": 22540,\n  \"technicians</w>\": 35513,\n  \"techno\": 2599,\n  \"techno</w>\": 17564,\n  \"technological</w>\": 23068,\n  \"technologies</w>\": 10040,\n  \"technology</w>\": 3089,\n  \"techs</w>\": 41353,\n  \"ted\": 4841,\n  \"ted</w>\": 775,\n  \"tedcruz</w>\": 27517,\n  \"teddy\": 25758,\n  \"teddy</w>\": 11798,\n  \"tedly</w>\": 8539,\n  \"tedu</w>\": 42517,\n  \"tedx\": 17950,\n  \"tedx</w>\": 41504,\n  \"tee\": 12676,\n  \"tee</w>\": 3385,\n  \"teed</w>\": 13692,\n  \"teen\": 5398,\n  \"teen</w>\": 4697,\n  \"teenage</w>\": 14069,\n  \"teenager</w>\": 19338,\n  \"teenagers</w>\": 25989,\n  \"teenchoice</w>\": 28203,\n  \"teens</w>\": 12375,\n  \"teenth</w>\": 20249,\n  \"teenwolf</w>\": 40067,\n  \"teeny</w>\": 41622,\n  \"teer</w>\": 48648,\n  \"tees</w>\": 9641,\n  \"teessi\": 43295,\n  \"teeth</w>\": 8225,\n  \"tega</w>\": 29508,\n  \"tegr\": 39801,\n  \"teh\": 18720,\n  \"teh</w>\": 29601,\n  \"tehran</w>\": 26399,\n  \"tein</w>\": 33223,\n  \"tej</w>\": 46724,\n  \"tek\": 17489,\n  \"tek</w>\": 18294,\n  \"tekken</w>\": 29843,\n  \"tel\": 4978,\n  \"tel</w>\": 2226,\n  \"telang\": 23469,\n  \"telangana</w>\": 26386,\n  \"tele\": 3103,\n  \"tele</w>\": 32851,\n  \"telecom</w>\": 21057,\n  \"telecommunications</w>\": 39900,\n  \"telegram</w>\": 26780,\n  \"telegraph</w>\": 14713,\n  \"telephone</w>\": 17243,\n  \"telescope</w>\": 19037,\n  \"telethon</w>\": 49266,\n  \"televised</w>\": 39470,\n  \"television</w>\": 8608,\n  \"telford</w>\": 38323,\n  \"tell\": 16069,\n  \"tell</w>\": 2330,\n  \"teller</w>\": 20415,\n  \"tellers</w>\": 42707,\n  \"telling</w>\": 5507,\n  \"tells</w>\": 5217,\n  \"tellu\": 42511,\n  \"telly</w>\": 31475,\n  \"tels</w>\": 43607,\n  \"telugu</w>\": 22927,\n  \"tely</w>\": 5630,\n  \"tem\": 2404,\n  \"tem</w>\": 17536,\n  \"tema</w>\": 45881,\n  \"teme\": 43378,\n  \"temp\": 2684,\n  \"temp</w>\": 11097,\n  \"tempe</w>\": 36723,\n  \"temper\": 5981,\n  \"temper</w>\": 35521,\n  \"temperature</w>\": 9543,\n  \"temperatures</w>\": 11575,\n  \"tempered</w>\": 40521,\n  \"tempest</w>\": 36053,\n  \"templ\": 16679,\n  \"template</w>\": 18591,\n  \"templates</w>\": 30498,\n  \"temple\": 21841,\n  \"temple</w>\": 5620,\n  \"temples</w>\": 24024,\n  \"tempo</w>\": 19625,\n  \"tempor\": 4858,\n  \"temporal</w>\": 43656,\n  \"temporarily</w>\": 23189,\n  \"temporary</w>\": 6513,\n  \"temps</w>\": 11668,\n  \"tempt</w>\": 28460,\n  \"temptation</w>\": 30118,\n  \"tempted</w>\": 26226,\n  \"tempting</w>\": 34876,\n  \"ten\": 1149,\n  \"ten</w>\": 2581,\n  \"tenant</w>\": 16954,\n  \"tenants</w>\": 26023,\n  \"tenay</w>\": 45384,\n  \"tenberg</w>\": 31329,\n  \"tend\": 17630,\n  \"tend</w>\": 21252,\n  \"tendency</w>\": 47277,\n  \"tender\": 23020,\n  \"tender</w>\": 9838,\n  \"tenderloin</w>\": 42750,\n  \"tenders</w>\": 44741,\n  \"tending</w>\": 35084,\n  \"tendon</w>\": 48459,\n  \"tends</w>\": 39962,\n  \"tene\": 24868,\n  \"tened</w>\": 13682,\n  \"tener</w>\": 29054,\n  \"teneri\": 28000,\n  \"tenerife</w>\": 29401,\n  \"teners</w>\": 41307,\n  \"teness</w>\": 18018,\n  \"teng\": 34016,\n  \"teng</w>\": 28474,\n  \"tennant</w>\": 29310,\n  \"tennes\": 9514,\n  \"tennessee</w>\": 10053,\n  \"tennis\": 31504,\n  \"tennis</w>\": 5298,\n  \"tenor</w>\": 30521,\n  \"tens</w>\": 14062,\n  \"tense</w>\": 23518,\n  \"tension</w>\": 15221,\n  \"tensions</w>\": 24224,\n  \"tenstein</w>\": 49139,\n  \"tent\": 18505,\n  \"tent</w>\": 10782,\n  \"tentative</w>\": 48238,\n  \"tenth</w>\": 27483,\n  \"tention</w>\": 12191,\n  \"tents</w>\": 30730,\n  \"tenure</w>\": 30739,\n  \"teo</w>\": 18665,\n  \"tep</w>\": 31806,\n  \"tequ\": 17502,\n  \"tequila</w>\": 18510,\n  \"ter\": 704,\n  \"ter</w>\": 652,\n  \"tera</w>\": 15155,\n  \"teras</w>\": 44830,\n  \"tere\": 11329,\n  \"tered\": 49272,\n  \"tered</w>\": 4389,\n  \"terence</w>\": 33806,\n  \"teresa</w>\": 19081,\n  \"teri</w>\": 30917,\n  \"teria</w>\": 22685,\n  \"terie</w>\": 42276,\n  \"tering</w>\": 7929,\n  \"term\": 40991,\n  \"term</w>\": 4780,\n  \"termin\": 4766,\n  \"terminal</w>\": 11816,\n  \"terminals</w>\": 44091,\n  \"terminator</w>\": 29609,\n  \"terminology</w>\": 48896,\n  \"terms</w>\": 8663,\n  \"tern\": 41572,\n  \"tern</w>\": 12959,\n  \"terns</w>\": 25251,\n  \"tero\": 20727,\n  \"tero</w>\": 24697,\n  \"terps</w>\": 41471,\n  \"terr\": 3921,\n  \"terra\": 22366,\n  \"terra</w>\": 18816,\n  \"terrac\": 28549,\n  \"terrace</w>\": 13820,\n  \"terraces</w>\": 47508,\n  \"terracotta</w>\": 45123,\n  \"terrain</w>\": 20184,\n  \"terran\": 43726,\n  \"terre\": 33888,\n  \"terre</w>\": 27537,\n  \"terrell</w>\": 39494,\n  \"terrence</w>\": 38746,\n  \"terrestrial</w>\": 46299,\n  \"terri\": 4504,\n  \"terri</w>\": 36722,\n  \"terrible</w>\": 9741,\n  \"terribly</w>\": 34558,\n  \"terrier</w>\": 14455,\n  \"terriers</w>\": 47047,\n  \"terrific</w>\": 13837,\n  \"terrified</w>\": 28204,\n  \"terrifying</w>\": 18526,\n  \"territ\": 10720,\n  \"territorial</w>\": 39163,\n  \"territories</w>\": 32846,\n  \"territory</w>\": 13936,\n  \"terror\": 9596,\n  \"terror</w>\": 9327,\n  \"terrori\": 6836,\n  \"terrorism</w>\": 10583,\n  \"terrorist</w>\": 10575,\n  \"terrorists</w>\": 12835,\n  \"terry\": 19378,\n  \"terry</w>\": 8561,\n  \"ters\": 24102,\n  \"ters</w>\": 1737,\n  \"terti\": 48386,\n  \"tery</w>\": 4184,\n  \"tes\": 8019,\n  \"tes</w>\": 3609,\n  \"tesco</w>\": 15434,\n  \"tese</w>\": 33320,\n  \"tesla</w>\": 12254,\n  \"tess\": 21807,\n  \"tess</w>\": 20840,\n  \"tessa</w>\": 32063,\n  \"test\": 7738,\n  \"test</w>\": 1628,\n  \"testam\": 23477,\n  \"testament</w>\": 24609,\n  \"tested</w>\": 10576,\n  \"tester</w>\": 32707,\n  \"testi\": 18373,\n  \"testic\": 42364,\n  \"testify</w>\": 33088,\n  \"testifying</w>\": 46347,\n  \"testim\": 12553,\n  \"testimonial</w>\": 28834,\n  \"testimony</w>\": 18672,\n  \"testing</w>\": 4967,\n  \"testo\": 42428,\n  \"testosterone</w>\": 45168,\n  \"tests</w>\": 8715,\n  \"tet\": 40468,\n  \"tet</w>\": 13275,\n  \"tetra\": 40902,\n  \"tetris</w>\": 45934,\n  \"teu\": 47152,\n  \"teuk</w>\": 39979,\n  \"teur</w>\": 27120,\n  \"tex\": 2056,\n  \"tex</w>\": 11728,\n  \"texan\": 35287,\n  \"texan</w>\": 38386,\n  \"texans</w>\": 17580,\n  \"texanscheer</w>\": 43717,\n  \"texas\": 15713,\n  \"texas</w>\": 3403,\n  \"texaste\": 46469,\n  \"text\": 18169,\n  \"text</w>\": 4160,\n  \"textbook</w>\": 25952,\n  \"textbooks</w>\": 44041,\n  \"texted</w>\": 29004,\n  \"textile</w>\": 19789,\n  \"textiles</w>\": 24326,\n  \"texting</w>\": 18600,\n  \"texts</w>\": 12767,\n  \"texture</w>\": 16505,\n  \"textured</w>\": 32168,\n  \"textures</w>\": 28063,\n  \"tey</w>\": 32395,\n  \"tez</w>\": 22664,\n  \"tf\": 18828,\n  \"tf</w>\": 5001,\n  \"tfc</w>\": 30186,\n  \"tfl</w>\": 29918,\n  \"tford</w>\": 22493,\n  \"tful</w>\": 17108,\n  \"tfw</w>\": 16741,\n  \"tg\": 7665,\n  \"tg</w>\": 11981,\n  \"tgif</w>\": 14483,\n  \"th\": 513,\n  \"th</w>\": 640,\n  \"tha\": 18470,\n  \"tha</w>\": 4715,\n  \"thab\": 38219,\n  \"thad\": 48339,\n  \"thai\": 28054,\n  \"thai</w>\": 8825,\n  \"thail\": 7258,\n  \"thailand</w>\": 7469,\n  \"thak\": 22801,\n  \"thakur</w>\": 38427,\n  \"thal\": 7967,\n  \"thal</w>\": 12323,\n  \"thala</w>\": 17784,\n  \"thalai\": 25206,\n  \"thalaivar</w>\": 44918,\n  \"thalap\": 39789,\n  \"thalapathy\": 45405,\n  \"thalapathy</w>\": 23324,\n  \"thall</w>\": 36007,\n  \"tham\": 11761,\n  \"tham</w>\": 8896,\n  \"thames\": 43472,\n  \"thames</w>\": 15321,\n  \"than\": 792,\n  \"than</w>\": 1126,\n  \"thand\": 44465,\n  \"thane</w>\": 21463,\n  \"thang</w>\": 24870,\n  \"thani</w>\": 31322,\n  \"thank\": 2790,\n  \"thank</w>\": 1144,\n  \"thanked</w>\": 32079,\n  \"thankful\": 38839,\n  \"thankful</w>\": 6217,\n  \"thankfully</w>\": 22089,\n  \"thanking</w>\": 21989,\n  \"thanks\": 5672,\n  \"thanks</w>\": 1085,\n  \"thanksgiving\": 45732,\n  \"thanksgiving</w>\": 6167,\n  \"thanku</w>\": 45710,\n  \"thankyou\": 18050,\n  \"thankyou</w>\": 9911,\n  \"thanniversary</w>\": 35564,\n  \"thanos</w>\": 36709,\n  \"thanx</w>\": 25095,\n  \"thar\": 14396,\n  \"thar</w>\": 38843,\n  \"thard</w>\": 43474,\n  \"that\": 6303,\n  \"that</w>\": 682,\n  \"thatcher</w>\": 32496,\n  \"thats\": 44636,\n  \"thats</w>\": 9254,\n  \"thaw\": 26081,\n  \"thaw</w>\": 47229,\n  \"thbewithyou</w>\": 41067,\n  \"thc</w>\": 20091,\n  \"thcentury</w>\": 49111,\n  \"thd</w>\": 28219,\n  \"thday</w>\": 37801,\n  \"the\": 599,\n  \"the</w>\": 518,\n  \"thea\": 15935,\n  \"thea</w>\": 25429,\n  \"thead</w>\": 25259,\n  \"theal\": 45728,\n  \"thealth</w>\": 31398,\n  \"thear\": 43283,\n  \"theart\": 44678,\n  \"theast</w>\": 8378,\n  \"theastern</w>\": 17877,\n  \"theat\": 2263,\n  \"theater\": 39438,\n  \"theater</w>\": 6128,\n  \"theaters</w>\": 14689,\n  \"theatre\": 19857,\n  \"theatre</w>\": 3292,\n  \"theatres</w>\": 21680,\n  \"theatrical</w>\": 26833,\n  \"theband</w>\": 27695,\n  \"thebeatles</w>\": 35645,\n  \"thebest\": 40883,\n  \"thebest</w>\": 25856,\n  \"thebig\": 24732,\n  \"theblack\": 47718,\n  \"thec\": 48659,\n  \"thed</w>\": 31405,\n  \"thedaily\": 33550,\n  \"theday</w>\": 4408,\n  \"thedream</w>\": 39417,\n  \"thee\": 44475,\n  \"thee</w>\": 15108,\n  \"theeconomist</w>\": 44518,\n  \"theellenshow</w>\": 35342,\n  \"thefilm</w>\": 31665,\n  \"theflash</w>\": 25434,\n  \"theforce\": 40002,\n  \"theforceawakens</w>\": 48033,\n  \"theft</w>\": 13286,\n  \"thefuture</w>\": 34287,\n  \"thegame</w>\": 24428,\n  \"thegood\": 28594,\n  \"thegreat\": 28721,\n  \"thei\": 44522,\n  \"their</w>\": 911,\n  \"theirs</w>\": 29297,\n  \"thel\": 5403,\n  \"thelast\": 23495,\n  \"thelastjedi</w>\": 47992,\n  \"theless</w>\": 27712,\n  \"theli\": 15277,\n  \"thelittle\": 46872,\n  \"thelo\": 47036,\n  \"thelove\": 40668,\n  \"thelove</w>\": 43200,\n  \"them\": 5435,\n  \"them</w>\": 1180,\n  \"themasters</w>\": 48378,\n  \"theme\": 38524,\n  \"theme</w>\": 5849,\n  \"themed</w>\": 10126,\n  \"themes</w>\": 17849,\n  \"themet</w>\": 48183,\n  \"themovie</w>\": 27062,\n  \"themselves</w>\": 6503,\n  \"then\": 5929,\n  \"then</w>\": 1594,\n  \"thenburg</w>\": 45209,\n  \"thene\": 17012,\n  \"thenew\": 24212,\n  \"thenext\": 47881,\n  \"thenight</w>\": 43336,\n  \"theno\": 37172,\n  \"thenorth</w>\": 34338,\n  \"theo\": 17043,\n  \"theo</w>\": 18084,\n  \"theod\": 26653,\n  \"theodore</w>\": 30743,\n  \"theological</w>\": 41162,\n  \"theology</w>\": 24095,\n  \"theon</w>\": 34653,\n  \"theone</w>\": 46231,\n  \"theopen</w>\": 41438,\n  \"theore\": 22690,\n  \"theoretical</w>\": 35585,\n  \"theori\": 34804,\n  \"theories</w>\": 23937,\n  \"theory</w>\": 7143,\n  \"thepeople</w>\": 33597,\n  \"thepersonal\": 29981,\n  \"thepersonalnetwork</w>\": 30016,\n  \"thephoto\": 18303,\n  \"thephotohour</w>\": 18607,\n  \"ther\": 1160,\n  \"ther</w>\": 743,\n  \"therap\": 4499,\n  \"therapeu\": 19332,\n  \"therapeutic</w>\": 23240,\n  \"therapeutics</w>\": 49101,\n  \"therapies</w>\": 30179,\n  \"therapist</w>\": 20608,\n  \"therapists</w>\": 34763,\n  \"therapper</w>\": 49340,\n  \"therapy</w>\": 5257,\n  \"there\": 5283,\n  \"there</w>\": 997,\n  \"thereal\": 8074,\n  \"thereal</w>\": 41140,\n  \"thereby</w>\": 43308,\n  \"thered</w>\": 10208,\n  \"therefore</w>\": 16865,\n  \"theres</w>\": 18494,\n  \"theresa</w>\": 14126,\n  \"therese</w>\": 47996,\n  \"theresistance</w>\": 22845,\n  \"theri\": 28967,\n  \"theri</w>\": 45297,\n  \"therine\": 26807,\n  \"therine</w>\": 9239,\n  \"thering</w>\": 7891,\n  \"therland</w>\": 25351,\n  \"thermal</w>\": 13689,\n  \"thermo\": 22303,\n  \"thermom\": 31138,\n  \"thermometer</w>\": 38172,\n  \"thermost\": 42391,\n  \"thern\": 10919,\n  \"thern</w>\": 3137,\n  \"thero\": 13165,\n  \"theroad</w>\": 29807,\n  \"therock</w>\": 30036,\n  \"theroy\": 38146,\n  \"thers</w>\": 1959,\n  \"thes\": 40556,\n  \"thes</w>\": 6460,\n  \"thescript</w>\": 47061,\n  \"these\": 40366,\n  \"these</w>\": 1071,\n  \"theses</w>\": 39388,\n  \"thesimpsons</w>\": 45513,\n  \"thesims</w>\": 34192,\n  \"thesis</w>\": 10673,\n  \"thessal\": 41491,\n  \"thessaloni\": 41753,\n  \"thest</w>\": 35343,\n  \"thesun</w>\": 45617,\n  \"theta</w>\": 27694,\n  \"thetic</w>\": 7954,\n  \"thetimes</w>\": 36039,\n  \"thevamp\": 33701,\n  \"thevoice\": 47206,\n  \"thevoice</w>\": 30258,\n  \"thewalkingdead</w>\": 18087,\n  \"thewanted</w>\": 43008,\n  \"theworld\": 44988,\n  \"theworld</w>\": 17475,\n  \"thex\": 35990,\n  \"they\": 15174,\n  \"they</w>\": 889,\n  \"theyre</w>\": 28266,\n  \"thfc</w>\": 17729,\n  \"thi\": 2362,\n  \"thi</w>\": 9111,\n  \"thia</w>\": 17943,\n  \"thiago</w>\": 44537,\n  \"thian</w>\": 23214,\n  \"thians</w>\": 28187,\n  \"thibau\": 48351,\n  \"thic\": 26107,\n  \"thic</w>\": 11794,\n  \"thick\": 18417,\n  \"thick</w>\": 11006,\n  \"thicker</w>\": 43302,\n  \"thickness</w>\": 40754,\n  \"thief</w>\": 18508,\n  \"thier</w>\": 25595,\n  \"thierry</w>\": 32929,\n  \"thieves</w>\": 17899,\n  \"thigh\": 47124,\n  \"thigh</w>\": 22877,\n  \"thighs</w>\": 30847,\n  \"thik</w>\": 20512,\n  \"thika</w>\": 44619,\n  \"thill</w>\": 31266,\n  \"thim\": 42331,\n  \"thin\": 2178,\n  \"thin</w>\": 7847,\n  \"thine</w>\": 47192,\n  \"thing\": 7499,\n  \"thing</w>\": 946,\n  \"things\": 30670,\n  \"things</w>\": 1739,\n  \"thingsto\": 43924,\n  \"thingy</w>\": 36888,\n  \"think\": 9820,\n  \"think</w>\": 1331,\n  \"thinkbig\": 26015,\n  \"thinkbigsundaywithmarsha</w>\": 26666,\n  \"thinker</w>\": 34577,\n  \"thinkers</w>\": 32779,\n  \"thinkin</w>\": 34443,\n  \"thinking</w>\": 3291,\n  \"thinks</w>\": 6109,\n  \"thinner</w>\": 47247,\n  \"thir\": 6030,\n  \"third\": 32102,\n  \"third</w>\": 3981,\n  \"thirds</w>\": 42582,\n  \"thirst</w>\": 23563,\n  \"thirsty\": 39731,\n  \"thirsty</w>\": 17521,\n  \"thirteen</w>\": 34209,\n  \"thirty</w>\": 20813,\n  \"thiru\": 43292,\n  \"this\": 4340,\n  \"this</w>\": 589,\n  \"thisday</w>\": 6532,\n  \"thisdayin\": 33641,\n  \"thisdayinhistory</w>\": 46913,\n  \"thisi\": 7299,\n  \"thisis\": 14887,\n  \"thismorning</w>\": 36245,\n  \"thistle</w>\": 29039,\n  \"thistory</w>\": 28904,\n  \"thium</w>\": 21804,\n  \"thletics</w>\": 17765,\n  \"thm</w>\": 10407,\n  \"thman</w>\": 30079,\n  \"thms</w>\": 19874,\n  \"thn\": 44155,\n  \"thn</w>\": 45587,\n  \"thnx</w>\": 25480,\n  \"tho\": 1325,\n  \"tho</w>\": 5025,\n  \"thof\": 18943,\n  \"thofjuly</w>\": 21613,\n  \"thol\": 29319,\n  \"thole</w>\": 31029,\n  \"tholes</w>\": 42465,\n  \"thology</w>\": 9881,\n  \"thom\": 2585,\n  \"thom</w>\": 24094,\n  \"thomas\": 12574,\n  \"thomas</w>\": 3888,\n  \"thome</w>\": 21289,\n  \"thomp\": 37274,\n  \"thompson\": 42181,\n  \"thompson</w>\": 8535,\n  \"thomson</w>\": 24151,\n  \"thon\": 38776,\n  \"thon</w>\": 8924,\n  \"thong</w>\": 37058,\n  \"thood</w>\": 15623,\n  \"thor\": 4130,\n  \"thor</w>\": 13691,\n  \"thora</w>\": 46866,\n  \"thorn\": 12957,\n  \"thorn</w>\": 18466,\n  \"thorne</w>\": 18025,\n  \"thorns</w>\": 33650,\n  \"thornton</w>\": 23592,\n  \"thorough\": 15294,\n  \"thorough</w>\": 34788,\n  \"thoroughbred</w>\": 43248,\n  \"thoroughly</w>\": 19750,\n  \"thorpe</w>\": 18099,\n  \"thos</w>\": 41965,\n  \"those</w>\": 1753,\n  \"thot</w>\": 33736,\n  \"thou\": 1513,\n  \"thou</w>\": 17781,\n  \"though</w>\": 2846,\n  \"thought\": 23948,\n  \"thought</w>\": 2449,\n  \"thoughtful</w>\": 19592,\n  \"thoughts</w>\": 3618,\n  \"thour</w>\": 27125,\n  \"thousand</w>\": 9344,\n  \"thousands</w>\": 7089,\n  \"thouse\": 40318,\n  \"thouse</w>\": 7819,\n  \"thoven</w>\": 23078,\n  \"thr\": 1111,\n  \"thr</w>\": 19138,\n  \"thra\": 17761,\n  \"thra</w>\": 32797,\n  \"thrash</w>\": 38262,\n  \"thre\": 1607,\n  \"thread\": 31108,\n  \"thread</w>\": 8815,\n  \"threads</w>\": 24957,\n  \"threat\": 7527,\n  \"threat</w>\": 7212,\n  \"threaten</w>\": 26097,\n  \"threatened</w>\": 16391,\n  \"threatening</w>\": 16400,\n  \"threatens</w>\": 20555,\n  \"threats</w>\": 12766,\n  \"three\": 21615,\n  \"three</w>\": 2097,\n  \"thren</w>\": 41776,\n  \"thresh\": 29779,\n  \"threshold</w>\": 33791,\n  \"threw</w>\": 12746,\n  \"thri\": 8713,\n  \"thrift</w>\": 27779,\n  \"thrill</w>\": 21023,\n  \"thrilled</w>\": 7879,\n  \"thriller</w>\": 9653,\n  \"thrilling</w>\": 20101,\n  \"thrills</w>\": 39829,\n  \"thrive</w>\": 17669,\n  \"thriving</w>\": 22677,\n  \"thro\": 2101,\n  \"thro</w>\": 28624,\n  \"throat</w>\": 16371,\n  \"thrombo\": 47585,\n  \"throne</w>\": 15999,\n  \"thrones</w>\": 8072,\n  \"throp</w>\": 34939,\n  \"throttle</w>\": 37139,\n  \"through\": 6091,\n  \"through</w>\": 1417,\n  \"throughout</w>\": 6721,\n  \"throughs</w>\": 48278,\n  \"throw\": 3315,\n  \"throw</w>\": 6293,\n  \"throwback\": 6001,\n  \"throwback</w>\": 5058,\n  \"throwbackthursday</w>\": 6326,\n  \"thrower</w>\": 40199,\n  \"throwing</w>\": 9734,\n  \"thrown</w>\": 15079,\n  \"throws</w>\": 14723,\n  \"thru\": 23856,\n  \"thru</w>\": 6162,\n  \"thrush</w>\": 46133,\n  \"thrust</w>\": 40202,\n  \"ths</w>\": 2079,\n  \"tht</w>\": 23554,\n  \"thu\": 3837,\n  \"thu</w>\": 14153,\n  \"thub</w>\": 25660,\n  \"thug\": 37212,\n  \"thug</w>\": 18137,\n  \"thugs</w>\": 27686,\n  \"thul\": 28368,\n  \"thulhu</w>\": 37560,\n  \"thum\": 14679,\n  \"thumb\": 19514,\n  \"thumb</w>\": 18674,\n  \"thumbnail</w>\": 32365,\n  \"thumbs</w>\": 17599,\n  \"thun\": 32267,\n  \"thunder\": 6161,\n  \"thunder</w>\": 8951,\n  \"thunderbird</w>\": 45131,\n  \"thunderbirds</w>\": 44286,\n  \"thunderbolt</w>\": 43596,\n  \"thunderstorm</w>\": 12005,\n  \"thunderstorms</w>\": 19525,\n  \"thunt</w>\": 46763,\n  \"thur\": 1837,\n  \"thur</w>\": 21704,\n  \"thurman</w>\": 41291,\n  \"thurs</w>\": 9908,\n  \"thursday\": 11218,\n  \"thursday</w>\": 2221,\n  \"thursdaymotivation</w>\": 39375,\n  \"thursdays</w>\": 21444,\n  \"thursdaythoughts</w>\": 14866,\n  \"thurst</w>\": 33970,\n  \"thus</w>\": 12457,\n  \"thusi\": 9488,\n  \"thwaite</w>\": 48469,\n  \"thweeksary</w>\": 30871,\n  \"thx</w>\": 5913,\n  \"thy\": 7804,\n  \"thy</w>\": 3362,\n  \"thyme</w>\": 29805,\n  \"thyro\": 25174,\n  \"thyroid</w>\": 32558,\n  \"ti\": 555,\n  \"ti</w>\": 2605,\n  \"tia</w>\": 6709,\n  \"tial</w>\": 2826,\n  \"tially</w>\": 14503,\n  \"tian\": 23011,\n  \"tian</w>\": 8125,\n  \"tians</w>\": 35182,\n  \"tiara</w>\": 38322,\n  \"tib\": 47868,\n  \"tibet\": 19927,\n  \"tibet</w>\": 22234,\n  \"tibetan</w>\": 24057,\n  \"tible</w>\": 11453,\n  \"tic\": 890,\n  \"tic</w>\": 1550,\n  \"tica</w>\": 9669,\n  \"tical\": 34191,\n  \"tical</w>\": 4342,\n  \"tically</w>\": 13375,\n  \"ticals</w>\": 30861,\n  \"tice</w>\": 3122,\n  \"tich</w>\": 48769,\n  \"tician</w>\": 43358,\n  \"ticism</w>\": 26491,\n  \"tick\": 24640,\n  \"tick</w>\": 15617,\n  \"ticket\": 25740,\n  \"ticket</w>\": 4500,\n  \"ticketing</w>\": 44432,\n  \"tickets</w>\": 2015,\n  \"ticking</w>\": 35842,\n  \"tickle</w>\": 42999,\n  \"ticks</w>\": 40269,\n  \"tico</w>\": 17670,\n  \"ticon</w>\": 45996,\n  \"tics</w>\": 2419,\n  \"ticul\": 15538,\n  \"ticus</w>\": 44277,\n  \"tid\": 26002,\n  \"tid</w>\": 23727,\n  \"tidal</w>\": 21949,\n  \"tide\": 15698,\n  \"tide</w>\": 9105,\n  \"tides</w>\": 25524,\n  \"tidy</w>\": 23858,\n  \"tie\": 14072,\n  \"tie</w>\": 3422,\n  \"tied</w>\": 9889,\n  \"tiem\": 34762,\n  \"tien</w>\": 47538,\n  \"tiene</w>\": 43438,\n  \"tier\": 14390,\n  \"tier</w>\": 6598,\n  \"tierney</w>\": 45693,\n  \"tiers</w>\": 24604,\n  \"ties\": 25556,\n  \"ties</w>\": 2499,\n  \"tiest</w>\": 18300,\n  \"tiesto</w>\": 46367,\n  \"tif</w>\": 23216,\n  \"tiff\": 11112,\n  \"tiff</w>\": 20699,\n  \"tiffany\": 30467,\n  \"tiffany</w>\": 14446,\n  \"tification</w>\": 43923,\n  \"tified</w>\": 40854,\n  \"tiful</w>\": 29123,\n  \"tify</w>\": 6677,\n  \"tig</w>\": 31999,\n  \"tiger\": 11954,\n  \"tiger</w>\": 6531,\n  \"tigers</w>\": 6934,\n  \"tigh\": 31365,\n  \"tight\": 25763,\n  \"tight</w>\": 9123,\n  \"tighten</w>\": 46653,\n  \"tighter</w>\": 48193,\n  \"tightly</w>\": 37568,\n  \"tights</w>\": 29581,\n  \"tijuana</w>\": 45273,\n  \"tik\": 24986,\n  \"tik</w>\": 32403,\n  \"tiki</w>\": 30107,\n  \"til\": 6124,\n  \"til</w>\": 1763,\n  \"tile\": 26217,\n  \"tile</w>\": 8227,\n  \"tiles</w>\": 10607,\n  \"tility</w>\": 38180,\n  \"till\": 17462,\n  \"till</w>\": 4267,\n  \"tilla</w>\": 26063,\n  \"tillerson</w>\": 47738,\n  \"tilly</w>\": 41199,\n  \"tilt</w>\": 23601,\n  \"tim\": 1292,\n  \"tim</w>\": 3863,\n  \"timate</w>\": 4754,\n  \"timb\": 26627,\n  \"timber\": 14441,\n  \"timber</w>\": 16246,\n  \"timberlake</w>\": 28274,\n  \"timbers</w>\": 39911,\n  \"timberwolves</w>\": 41190,\n  \"time\": 3764,\n  \"time</w>\": 788,\n  \"timed</w>\": 32727,\n  \"timehop</w>\": 19944,\n  \"timel\": 23549,\n  \"timelapse</w>\": 48154,\n  \"timeless</w>\": 15558,\n  \"timeline</w>\": 11492,\n  \"timely</w>\": 19250,\n  \"timeout</w>\": 41536,\n  \"timer</w>\": 19725,\n  \"timers</w>\": 44574,\n  \"times\": 26445,\n  \"times</w>\": 1661,\n  \"timesnow</w>\": 45487,\n  \"timesof\": 32522,\n  \"timesofindia</w>\": 44182,\n  \"timetable</w>\": 31971,\n  \"timeto\": 29187,\n  \"timing</w>\": 13624,\n  \"timm\": 22444,\n  \"timmy</w>\": 33252,\n  \"timo\": 13390,\n  \"timo</w>\": 33777,\n  \"timothy\": 42087,\n  \"timothy</w>\": 18560,\n  \"timp\": 42166,\n  \"tin\": 1310,\n  \"tin</w>\": 5420,\n  \"tina</w>\": 9257,\n  \"tinder</w>\": 24287,\n  \"tine</w>\": 22341,\n  \"ting\": 7451,\n  \"ting</w>\": 694,\n  \"tinged</w>\": 44829,\n  \"tings</w>\": 35332,\n  \"tini</w>\": 26839,\n  \"tink\": 39278,\n  \"tinker\": 45272,\n  \"tinker</w>\": 40910,\n  \"tino</w>\": 20538,\n  \"tins</w>\": 37359,\n  \"tint</w>\": 40497,\n  \"tinted</w>\": 42618,\n  \"tiny\": 21716,\n  \"tiny</w>\": 5591,\n  \"tio</w>\": 27562,\n  \"tion\": 2274,\n  \"tion</w>\": 740,\n  \"tional\": 22460,\n  \"tional</w>\": 2986,\n  \"tionality</w>\": 24514,\n  \"tionally</w>\": 12409,\n  \"tionary</w>\": 8381,\n  \"tione\": 44318,\n  \"tioned</w>\": 9083,\n  \"tioning</w>\": 15528,\n  \"tionist</w>\": 25732,\n  \"tions</w>\": 1371,\n  \"tious</w>\": 14255,\n  \"tip\": 15383,\n  \"tip</w>\": 4623,\n  \"tipoff</w>\": 44521,\n  \"tipp\": 32294,\n  \"tipped</w>\": 31878,\n  \"tipper\": 38095,\n  \"tipperary</w>\": 45612,\n  \"tipping</w>\": 27827,\n  \"tips</w>\": 3173,\n  \"tipton</w>\": 48809,\n  \"tiptuesday</w>\": 42112,\n  \"tique</w>\": 37772,\n  \"tir\": 25467,\n  \"tir</w>\": 38462,\n  \"tire\": 29128,\n  \"tire</w>\": 9362,\n  \"tired</w>\": 6533,\n  \"tireless</w>\": 39835,\n  \"tirelessly</w>\": 41548,\n  \"tires</w>\": 15533,\n  \"tiring</w>\": 42630,\n  \"tiru\": 36033,\n  \"tis\": 7839,\n  \"tis</w>\": 7394,\n  \"tise</w>\": 13745,\n  \"tisgarh</w>\": 40538,\n  \"tish\": 45148,\n  \"tish</w>\": 28784,\n  \"tism</w>\": 27113,\n  \"tiss\": 28155,\n  \"tissue</w>\": 15368,\n  \"tissues</w>\": 32172,\n  \"tist</w>\": 7902,\n  \"tista</w>\": 25580,\n  \"tists</w>\": 25944,\n  \"tit\": 1991,\n  \"tit</w>\": 13202,\n  \"tita</w>\": 40936,\n  \"titan\": 13496,\n  \"titan</w>\": 15516,\n  \"titanic</w>\": 20729,\n  \"titanium</w>\": 24409,\n  \"titans</w>\": 13066,\n  \"titi\": 17434,\n  \"titi</w>\": 48504,\n  \"title\": 28033,\n  \"title</w>\": 3644,\n  \"titled</w>\": 9939,\n  \"titles</w>\": 9780,\n  \"tito</w>\": 26838,\n  \"titus</w>\": 36102,\n  \"tium</w>\": 21975,\n  \"tiv\": 1835,\n  \"tiva</w>\": 41886,\n  \"tive\": 14640,\n  \"tive</w>\": 1420,\n  \"tively</w>\": 9883,\n  \"tiveness</w>\": 20955,\n  \"tives</w>\": 7570,\n  \"tivity</w>\": 9859,\n  \"tivo</w>\": 32162,\n  \"tix</w>\": 5835,\n  \"tiz</w>\": 19376,\n  \"tj\": 18890,\n  \"tj</w>\": 18988,\n  \"tk\": 22344,\n  \"tk</w>\": 20676,\n  \"tko</w>\": 37347,\n  \"tks</w>\": 38739,\n  \"tl\": 14325,\n  \"tl</w>\": 8190,\n  \"tland</w>\": 30697,\n  \"tlap</w>\": 41976,\n  \"tlc</w>\": 22047,\n  \"tle\": 39141,\n  \"tle</w>\": 5825,\n  \"tles</w>\": 39363,\n  \"tless</w>\": 17427,\n  \"tlot</w>\": 41080,\n  \"tls</w>\": 47367,\n  \"tly\": 37483,\n  \"tly</w>\": 1646,\n  \"tm\": 9430,\n  \"tm</w>\": 7789,\n  \"tman</w>\": 20796,\n  \"tmc</w>\": 35263,\n  \"tment</w>\": 26485,\n  \"tml\": 39445,\n  \"tmltalk</w>\": 42260,\n  \"tmnt</w>\": 32444,\n  \"tmobile</w>\": 34901,\n  \"tmr</w>\": 35906,\n  \"tmrw</w>\": 16496,\n  \"tms</w>\": 44496,\n  \"tmund</w>\": 23801,\n  \"tmw</w>\": 45827,\n  \"tmz</w>\": 37248,\n  \"tn\": 3827,\n  \"tn</w>\": 7248,\n  \"tna</w>\": 21150,\n  \"tnam</w>\": 8079,\n  \"tner</w>\": 34922,\n  \"tness</w>\": 35212,\n  \"tney</w>\": 9523,\n  \"tng</w>\": 35898,\n  \"tnt</w>\": 20659,\n  \"tnx</w>\": 38220,\n  \"to\": 580,\n  \"to</w>\": 531,\n  \"toa\": 17916,\n  \"toad</w>\": 26096,\n  \"toast\": 24654,\n  \"toast</w>\": 10920,\n  \"toasted</w>\": 23533,\n  \"toaster</w>\": 39061,\n  \"toasty</w>\": 44726,\n  \"tob</w>\": 24260,\n  \"tobac\": 12611,\n  \"tobacco</w>\": 13905,\n  \"tobago</w>\": 39482,\n  \"tobe\": 17534,\n  \"tobe</w>\": 28740,\n  \"tober\": 18162,\n  \"tober</w>\": 2925,\n  \"toberfest</w>\": 26249,\n  \"tobi\": 40335,\n  \"tobi</w>\": 48374,\n  \"tobias</w>\": 32464,\n  \"tobin</w>\": 42466,\n  \"toby\": 29659,\n  \"toby</w>\": 18333,\n  \"toc\": 41907,\n  \"toc</w>\": 30643,\n  \"tock</w>\": 25274,\n  \"tod\": 38239,\n  \"tod</w>\": 33568,\n  \"toda</w>\": 47141,\n  \"todas</w>\": 36150,\n  \"today\": 11800,\n  \"today</w>\": 721,\n  \"todayin\": 32957,\n  \"todays</w>\": 13513,\n  \"todayshow</w>\": 29739,\n  \"todd\": 10398,\n  \"todd</w>\": 9951,\n  \"toddler</w>\": 17772,\n  \"toddlers</w>\": 36719,\n  \"toddy</w>\": 38926,\n  \"todo\": 48857,\n  \"todo</w>\": 23087,\n  \"todos</w>\": 33355,\n  \"toe\": 47756,\n  \"toe</w>\": 11344,\n  \"toes</w>\": 16511,\n  \"tof\": 6659,\n  \"toff</w>\": 27319,\n  \"toffee</w>\": 34880,\n  \"tofficial</w>\": 47953,\n  \"tofthe\": 23678,\n  \"toftheday</w>\": 20566,\n  \"tofu</w>\": 24692,\n  \"tog</w>\": 45715,\n  \"toge\": 1903,\n  \"together\": 17858,\n  \"together</w>\": 1952,\n  \"togo</w>\": 26729,\n  \"tography</w>\": 33968,\n  \"toh</w>\": 26851,\n  \"toi\": 7472,\n  \"toi</w>\": 26941,\n  \"toid</w>\": 49124,\n  \"toile\": 43148,\n  \"toilet</w>\": 11071,\n  \"toilets</w>\": 24027,\n  \"toire</w>\": 39534,\n  \"tok\": 16690,\n  \"tok</w>\": 27010,\n  \"token\": 32634,\n  \"token</w>\": 17134,\n  \"tokens</w>\": 23562,\n  \"tokyo\": 35038,\n  \"tokyo</w>\": 6667,\n  \"tol\": 4678,\n  \"tol</w>\": 32962,\n  \"told</w>\": 3527,\n  \"tole\": 15677,\n  \"toledo</w>\": 19812,\n  \"toler\": 12150,\n  \"tolerance</w>\": 20377,\n  \"tolerant</w>\": 38536,\n  \"tolerate</w>\": 35556,\n  \"tolkien</w>\": 32989,\n  \"toll\": 44090,\n  \"toll</w>\": 14155,\n  \"tollywood</w>\": 42016,\n  \"tology</w>\": 34799,\n  \"tom\": 999,\n  \"tom</w>\": 2435,\n  \"toma\": 42360,\n  \"toma</w>\": 44710,\n  \"tomas\": 35944,\n  \"tomas</w>\": 27178,\n  \"tomat\": 12041,\n  \"tomato</w>\": 9867,\n  \"tomatoes</w>\": 13004,\n  \"tomb\": 37187,\n  \"tomb</w>\": 15582,\n  \"tombs</w>\": 48613,\n  \"tombstone</w>\": 45729,\n  \"tome\": 24137,\n  \"tome</w>\": 24283,\n  \"tomi</w>\": 46290,\n  \"tomlin</w>\": 46649,\n  \"tomlinson</w>\": 17484,\n  \"tommorow</w>\": 42871,\n  \"tommy\": 16573,\n  \"tommy</w>\": 8876,\n  \"tomo\": 31223,\n  \"tomo</w>\": 34434,\n  \"tomor\": 1277,\n  \"tomorrow\": 19728,\n  \"tomorrow</w>\": 1293,\n  \"tomorrowland</w>\": 34951,\n  \"tomorrows</w>\": 32258,\n  \"tomorrowspaper\": 35005,\n  \"tomorrowspaperstoday</w>\": 35190,\n  \"tomp\": 43544,\n  \"tompkins</w>\": 49068,\n  \"toms</w>\": 10545,\n  \"tomy</w>\": 18730,\n  \"ton\": 838,\n  \"ton</w>\": 917,\n  \"tona</w>\": 13459,\n  \"tone\": 32366,\n  \"tone</w>\": 8408,\n  \"toned</w>\": 29426,\n  \"toner</w>\": 40614,\n  \"tones</w>\": 14744,\n  \"tong</w>\": 21510,\n  \"tonga</w>\": 37882,\n  \"tongue\": 44820,\n  \"tongue</w>\": 13626,\n  \"tongues</w>\": 39837,\n  \"toni\": 17766,\n  \"toni</w>\": 17171,\n  \"tonic</w>\": 17808,\n  \"tonics</w>\": 34647,\n  \"tonight</w>\": 1009,\n  \"tonights</w>\": 23312,\n  \"tonite</w>\": 13449,\n  \"tonka</w>\": 42781,\n  \"tonline</w>\": 45867,\n  \"tonne</w>\": 42450,\n  \"tonnes</w>\": 24813,\n  \"tons</w>\": 7555,\n  \"tony\": 9150,\n  \"tony</w>\": 4767,\n  \"tonyawards</w>\": 46068,\n  \"too\": 1843,\n  \"too</w>\": 1256,\n  \"took</w>\": 2280,\n  \"tool\": 13718,\n  \"tool</w>\": 5999,\n  \"toolbox</w>\": 46599,\n  \"toolkit</w>\": 29849,\n  \"tools</w>\": 5771,\n  \"toom\": 27550,\n  \"toon\": 24664,\n  \"toon</w>\": 19701,\n  \"toonami</w>\": 48336,\n  \"toons</w>\": 35345,\n  \"toor\": 42590,\n  \"tooth\": 15316,\n  \"tooth</w>\": 12030,\n  \"toothbrush</w>\": 36841,\n  \"toothpaste</w>\": 37322,\n  \"tooting</w>\": 42969,\n  \"top\": 5534,\n  \"top</w>\": 1253,\n  \"topaz</w>\": 46125,\n  \"tope\": 32149,\n  \"tope</w>\": 42239,\n  \"topeka</w>\": 46884,\n  \"topia</w>\": 29618,\n  \"topic</w>\": 8720,\n  \"topical</w>\": 37464,\n  \"topics</w>\": 11916,\n  \"topless</w>\": 37415,\n  \"topo\": 23008,\n  \"topoli</w>\": 30152,\n  \"topp\": 19529,\n  \"topped</w>\": 12588,\n  \"topper</w>\": 31780,\n  \"toppers</w>\": 41651,\n  \"topping</w>\": 21071,\n  \"toppings</w>\": 47554,\n  \"topps</w>\": 20201,\n  \"tops</w>\": 8154,\n  \"topshop</w>\": 40953,\n  \"topus</w>\": 21495,\n  \"tor\": 937,\n  \"tor</w>\": 1208,\n  \"tora</w>\": 45147,\n  \"torah</w>\": 37945,\n  \"toral</w>\": 45282,\n  \"torch\": 31921,\n  \"torch</w>\": 15820,\n  \"tore\": 38066,\n  \"tore</w>\": 19385,\n  \"tored</w>\": 38046,\n  \"torg</w>\": 33214,\n  \"tori\": 17689,\n  \"tori</w>\": 17539,\n  \"toria</w>\": 23732,\n  \"torial</w>\": 28029,\n  \"torian</w>\": 48399,\n  \"tories</w>\": 14193,\n  \"torino</w>\": 29178,\n  \"torio</w>\": 34235,\n  \"torn\": 8572,\n  \"torn</w>\": 18023,\n  \"tornad\": 24676,\n  \"tornado</w>\": 9062,\n  \"tornadoes</w>\": 28254,\n  \"toro</w>\": 17892,\n  \"toron\": 37407,\n  \"toronto\": 16866,\n  \"toronto</w>\": 4514,\n  \"torpe\": 34093,\n  \"torpedo</w>\": 46582,\n  \"torquay</w>\": 45738,\n  \"torque</w>\": 31940,\n  \"torre\": 39563,\n  \"torre</w>\": 38009,\n  \"torrent</w>\": 42317,\n  \"torrential</w>\": 41158,\n  \"torres</w>\": 16049,\n  \"tors</w>\": 2546,\n  \"tortilla</w>\": 32683,\n  \"torto\": 24170,\n  \"tortoise</w>\": 30178,\n  \"torture</w>\": 16013,\n  \"tortured</w>\": 29900,\n  \"tory\": 29390,\n  \"tory</w>\": 4214,\n  \"tos</w>\": 6094,\n  \"tosc\": 37719,\n  \"tose</w>\": 38154,\n  \"tosh</w>\": 17109,\n  \"toshi\": 31744,\n  \"toss</w>\": 19656,\n  \"tossed</w>\": 31296,\n  \"tot\": 4618,\n  \"tot</w>\": 23659,\n  \"total\": 13507,\n  \"total</w>\": 4445,\n  \"totally</w>\": 5440,\n  \"totals</w>\": 25772,\n  \"tote\": 48145,\n  \"tote</w>\": 19031,\n  \"totem</w>\": 45376,\n  \"totes</w>\": 37199,\n  \"tothe\": 12222,\n  \"toto</w>\": 39823,\n  \"tots</w>\": 24978,\n  \"totten\": 14360,\n  \"tottenham</w>\": 14889,\n  \"tou\": 1879,\n  \"tou</w>\": 29261,\n  \"touch\": 9480,\n  \"touch</w>\": 4526,\n  \"touchdown</w>\": 18664,\n  \"touchdowns</w>\": 37905,\n  \"touched</w>\": 13190,\n  \"touches</w>\": 14832,\n  \"touching</w>\": 14088,\n  \"touchscreen</w>\": 39095,\n  \"tough\": 12063,\n  \"tough</w>\": 5499,\n  \"tougher</w>\": 33722,\n  \"toughest</w>\": 23773,\n  \"toughness</w>\": 45522,\n  \"toulou\": 27145,\n  \"toulouse</w>\": 30267,\n  \"tour\": 2710,\n  \"tour</w>\": 1760,\n  \"tourde\": 39247,\n  \"toured</w>\": 27654,\n  \"touri\": 4224,\n  \"touring</w>\": 11853,\n  \"tourism\": 23661,\n  \"tourism</w>\": 6556,\n  \"tourist</w>\": 12123,\n  \"tourists</w>\": 15546,\n  \"tournament</w>\": 4097,\n  \"tournaments</w>\": 23058,\n  \"tourney</w>\": 12603,\n  \"tours</w>\": 8948,\n  \"tous</w>\": 37424,\n  \"tout</w>\": 22300,\n  \"touts</w>\": 41274,\n  \"tov</w>\": 28970,\n  \"tow\": 11557,\n  \"tow</w>\": 18653,\n  \"toward</w>\": 8508,\n  \"towards</w>\": 4447,\n  \"towed</w>\": 45419,\n  \"towel</w>\": 15953,\n  \"towels</w>\": 26578,\n  \"tower\": 26669,\n  \"tower</w>\": 4730,\n  \"towering</w>\": 39444,\n  \"towers</w>\": 12701,\n  \"towie</w>\": 44613,\n  \"towin</w>\": 45819,\n  \"towing</w>\": 36963,\n  \"town\": 4068,\n  \"town</w>\": 1605,\n  \"townfc</w>\": 33981,\n  \"townhall</w>\": 33408,\n  \"townhouse</w>\": 40178,\n  \"towns</w>\": 14173,\n  \"townsend</w>\": 26826,\n  \"township</w>\": 14622,\n  \"townsville</w>\": 47330,\n  \"towork</w>\": 48233,\n  \"tox\": 7742,\n  \"tox</w>\": 16145,\n  \"toxic\": 27436,\n  \"toxic</w>\": 12348,\n  \"toxicity</w>\": 41234,\n  \"toxin</w>\": 48899,\n  \"toxins</w>\": 36618,\n  \"toy\": 14387,\n  \"toy</w>\": 5988,\n  \"toya</w>\": 37602,\n  \"toyo\": 7644,\n  \"toyota</w>\": 8908,\n  \"toys\": 39508,\n  \"toys</w>\": 7162,\n  \"tp\": 23760,\n  \"tp</w>\": 15188,\n  \"tpp</w>\": 29411,\n  \"tps</w>\": 35246,\n  \"tq</w>\": 43066,\n  \"tr\": 635,\n  \"tr</w>\": 6337,\n  \"tra\": 752,\n  \"tra</w>\": 2483,\n  \"trac\": 2266,\n  \"trace\": 48611,\n  \"trace</w>\": 14767,\n  \"traced</w>\": 47956,\n  \"traces</w>\": 30913,\n  \"tracey</w>\": 25558,\n  \"tracing</w>\": 27897,\n  \"track\": 10887,\n  \"track</w>\": 2700,\n  \"tracked</w>\": 27049,\n  \"tracker</w>\": 18123,\n  \"tracking</w>\": 10428,\n  \"tracklist</w>\": 39777,\n  \"tracks</w>\": 7579,\n  \"tract</w>\": 4690,\n  \"traction</w>\": 10644,\n  \"tractor</w>\": 14607,\n  \"tractors</w>\": 37854,\n  \"tracy\": 32984,\n  \"tracy</w>\": 15508,\n  \"trad\": 48716,\n  \"trad</w>\": 38037,\n  \"trade\": 10457,\n  \"trade</w>\": 3629,\n  \"traded</w>\": 18860,\n  \"trademark</w>\": 25011,\n  \"trader</w>\": 17700,\n  \"traders</w>\": 19112,\n  \"trades</w>\": 18519,\n  \"trading\": 40083,\n  \"trading</w>\": 6520,\n  \"tradio</w>\": 20689,\n  \"tradition\": 20838,\n  \"tradition</w>\": 8784,\n  \"traditional\": 41113,\n  \"traditional</w>\": 5604,\n  \"traditionally</w>\": 35532,\n  \"traditions</w>\": 18016,\n  \"traf\": 3227,\n  \"trafal\": 32461,\n  \"trafalgar</w>\": 36969,\n  \"traff\": 31571,\n  \"traffic\": 12080,\n  \"traffic</w>\": 3399,\n  \"trafficking</w>\": 15983,\n  \"trafford</w>\": 22912,\n  \"trage\": 12430,\n  \"tragedy</w>\": 14082,\n  \"tragic</w>\": 14828,\n  \"tragically</w>\": 39599,\n  \"trail\": 11523,\n  \"trail</w>\": 4921,\n  \"trailblazer</w>\": 41015,\n  \"trailblazers</w>\": 35954,\n  \"trailer</w>\": 4700,\n  \"trailers</w>\": 24862,\n  \"trailing</w>\": 37427,\n  \"trails</w>\": 10633,\n  \"train\": 9122,\n  \"train</w>\": 3231,\n  \"trained</w>\": 10874,\n  \"trainee</w>\": 25795,\n  \"trainees</w>\": 30382,\n  \"trainer</w>\": 9767,\n  \"trainers</w>\": 18871,\n  \"training\": 34508,\n  \"training</w>\": 2199,\n  \"trains</w>\": 9541,\n  \"trait</w>\": 35160,\n  \"traitor</w>\": 31760,\n  \"traitors</w>\": 42633,\n  \"traits</w>\": 25748,\n  \"trajec\": 42042,\n  \"trak</w>\": 24065,\n  \"tral</w>\": 14609,\n  \"tram\": 9800,\n  \"tram</w>\": 17500,\n  \"tramp</w>\": 46289,\n  \"trampol\": 32905,\n  \"trampoline</w>\": 42800,\n  \"tramrahim</w>\": 35220,\n  \"tran\": 1357,\n  \"tran</w>\": 22031,\n  \"trance\": 30584,\n  \"trance</w>\": 18671,\n  \"trancefamily</w>\": 39630,\n  \"trane</w>\": 35779,\n  \"tranqu\": 18912,\n  \"tranquil</w>\": 35764,\n  \"tranquility</w>\": 36688,\n  \"trans\": 1826,\n  \"trans</w>\": 8126,\n  \"transaction</w>\": 24881,\n  \"transactions</w>\": 21653,\n  \"transat\": 37872,\n  \"transatlantic</w>\": 40703,\n  \"transc\": 21073,\n  \"transcend\": 47087,\n  \"transcript</w>\": 39008,\n  \"transcription</w>\": 48765,\n  \"transfer\": 22659,\n  \"transfer</w>\": 7134,\n  \"transferred</w>\": 29700,\n  \"transferring</w>\": 40924,\n  \"transfers</w>\": 21621,\n  \"transform\": 8142,\n  \"transform</w>\": 12288,\n  \"transformation\": 34204,\n  \"transformation</w>\": 7832,\n  \"transformational</w>\": 47135,\n  \"transformationtuesday</w>\": 36511,\n  \"transformative</w>\": 38106,\n  \"transformed</w>\": 17453,\n  \"transformer</w>\": 38235,\n  \"transformers</w>\": 17843,\n  \"transforming\": 44470,\n  \"transforming</w>\": 19251,\n  \"transforms</w>\": 30312,\n  \"transgender</w>\": 17732,\n  \"transi\": 32236,\n  \"transit</w>\": 10174,\n  \"transiti\": 22939,\n  \"transition</w>\": 11391,\n  \"transitional</w>\": 41519,\n  \"transitioning</w>\": 43586,\n  \"transitions</w>\": 39374,\n  \"transl\": 12243,\n  \"translate</w>\": 22655,\n  \"translated</w>\": 20752,\n  \"translates</w>\": 36334,\n  \"translating</w>\": 42156,\n  \"translation</w>\": 12153,\n  \"translations</w>\": 41367,\n  \"translator</w>\": 36230,\n  \"translucent</w>\": 49052,\n  \"transm\": 18861,\n  \"transmission</w>\": 16103,\n  \"transmitted</w>\": 48605,\n  \"transmitter</w>\": 40457,\n  \"transp\": 11726,\n  \"transpa\": 18524,\n  \"transparen\": 16108,\n  \"transparency</w>\": 16828,\n  \"transparent</w>\": 19017,\n  \"transpl\": 16038,\n  \"transplant\": 41871,\n  \"transplant</w>\": 18771,\n  \"transplantation</w>\": 45207,\n  \"transpor\": 19406,\n  \"transport\": 10231,\n  \"transport</w>\": 7362,\n  \"transportation</w>\": 10911,\n  \"transported</w>\": 29089,\n  \"transporter</w>\": 43568,\n  \"transporting</w>\": 42259,\n  \"trap\": 36224,\n  \"trap</w>\": 9677,\n  \"trape\": 42435,\n  \"trapped</w>\": 15592,\n  \"traps</w>\": 28517,\n  \"tras</w>\": 30638,\n  \"trash\": 39215,\n  \"trash</w>\": 9798,\n  \"traum\": 22263,\n  \"trauma</w>\": 13846,\n  \"traumati\": 46613,\n  \"traumatic</w>\": 29958,\n  \"trav\": 7586,\n  \"trav</w>\": 46955,\n  \"trave\": 35357,\n  \"travel\": 2824,\n  \"travel</w>\": 1949,\n  \"travelblog</w>\": 35957,\n  \"travelblogger</w>\": 25494,\n  \"travelchat</w>\": 46455,\n  \"traveled</w>\": 20384,\n  \"traveler</w>\": 17794,\n  \"travelers</w>\": 20644,\n  \"travelgram</w>\": 40069,\n  \"traveling</w>\": 9365,\n  \"travelled</w>\": 23428,\n  \"traveller</w>\": 22546,\n  \"travellers</w>\": 29583,\n  \"travelling</w>\": 11190,\n  \"travelphotography</w>\": 22808,\n  \"travelpics</w>\": 32293,\n  \"travels</w>\": 11472,\n  \"traveltips</w>\": 36260,\n  \"traveltuesday</w>\": 16713,\n  \"traverse</w>\": 35058,\n  \"travi\": 46971,\n  \"travis\": 27441,\n  \"travis</w>\": 12287,\n  \"traw\": 42288,\n  \"trax</w>\": 34421,\n  \"tray\": 38470,\n  \"tray</w>\": 14621,\n  \"trays</w>\": 39798,\n  \"trc</w>\": 41803,\n  \"tre\": 975,\n  \"tre</w>\": 6033,\n  \"treach\": 46005,\n  \"tread\": 26182,\n  \"tread</w>\": 35658,\n  \"treadmill</w>\": 37780,\n  \"treas\": 8591,\n  \"treason</w>\": 28103,\n  \"treasure</w>\": 9922,\n  \"treasured</w>\": 48068,\n  \"treasurer</w>\": 26985,\n  \"treasures</w>\": 16500,\n  \"treasury</w>\": 20956,\n  \"treat\": 3968,\n  \"treat</w>\": 3901,\n  \"treated</w>\": 9772,\n  \"treating</w>\": 13842,\n  \"treatment</w>\": 4869,\n  \"treatments</w>\": 15839,\n  \"treats</w>\": 8878,\n  \"treaty</w>\": 19967,\n  \"treble</w>\": 33194,\n  \"trecht</w>\": 33812,\n  \"tree\": 13354,\n  \"tree</w>\": 2677,\n  \"treehouse</w>\": 42387,\n  \"trees</w>\": 4682,\n  \"trek\": 13236,\n  \"trek</w>\": 8136,\n  \"trekking</w>\": 25293,\n  \"trell</w>\": 35159,\n  \"tremb\": 44043,\n  \"tremend\": 14659,\n  \"tremendous</w>\": 15988,\n  \"tren\": 2579,\n  \"trench</w>\": 23846,\n  \"trenches</w>\": 38723,\n  \"trend\": 19986,\n  \"trend</w>\": 6643,\n  \"trending</w>\": 6087,\n  \"trends</w>\": 7015,\n  \"trendsetter</w>\": 46666,\n  \"trendy</w>\": 23072,\n  \"trent\": 45885,\n  \"trent</w>\": 15548,\n  \"trenton</w>\": 37470,\n  \"tres</w>\": 23569,\n  \"tress</w>\": 4733,\n  \"tresses</w>\": 24273,\n  \"trevor\": 23437,\n  \"trevor</w>\": 13219,\n  \"trex</w>\": 42114,\n  \"trey\": 36670,\n  \"trey</w>\": 16939,\n  \"tri\": 924,\n  \"tri</w>\": 9618,\n  \"triad</w>\": 45602,\n  \"trial</w>\": 5991,\n  \"trials</w>\": 10992,\n  \"triangle</w>\": 14615,\n  \"triathlon</w>\": 18080,\n  \"trib</w>\": 45151,\n  \"tribal</w>\": 16629,\n  \"tribe\": 19943,\n  \"tribe</w>\": 11365,\n  \"tribeca</w>\": 35184,\n  \"tribes</w>\": 26546,\n  \"tribu\": 3028,\n  \"tribun\": 14311,\n  \"tribunal</w>\": 32911,\n  \"tribune</w>\": 18556,\n  \"tribute</w>\": 5493,\n  \"tributes</w>\": 15537,\n  \"tric\": 9511,\n  \"tric</w>\": 4081,\n  \"trich</w>\": 39519,\n  \"trick\": 17177,\n  \"trick</w>\": 8172,\n  \"tricks</w>\": 13177,\n  \"tricky</w>\": 22319,\n  \"trics</w>\": 31437,\n  \"trident</w>\": 35491,\n  \"tridge</w>\": 18722,\n  \"tried</w>\": 4554,\n  \"tries</w>\": 4315,\n  \"trife\": 48962,\n  \"trigge\": 30509,\n  \"trigger</w>\": 16158,\n  \"triggered</w>\": 30924,\n  \"triggers</w>\": 37319,\n  \"tright</w>\": 29915,\n  \"tril\": 40626,\n  \"trill</w>\": 39297,\n  \"trilli\": 39350,\n  \"trillion</w>\": 20160,\n  \"trilo\": 15183,\n  \"trilogy</w>\": 16862,\n  \"trim</w>\": 14182,\n  \"trimmed</w>\": 40657,\n  \"trin\": 6628,\n  \"trinidad</w>\": 26244,\n  \"trinity\": 30744,\n  \"trinity</w>\": 12267,\n  \"trio</w>\": 10263,\n  \"trip\": 23421,\n  \"trip</w>\": 2529,\n  \"tripad\": 37189,\n  \"tripadvisor</w>\": 38708,\n  \"triple\": 16519,\n  \"triple</w>\": 7673,\n  \"triplets</w>\": 48601,\n  \"tripod</w>\": 36141,\n  \"tripoli</w>\": 40095,\n  \"trippin</w>\": 43073,\n  \"tripping</w>\": 35229,\n  \"trippy</w>\": 35137,\n  \"trips</w>\": 12292,\n  \"tris</w>\": 29690,\n  \"trish\": 40511,\n  \"trish</w>\": 37179,\n  \"trisha</w>\": 39152,\n  \"tristan</w>\": 25497,\n  \"trit\": 37087,\n  \"triton</w>\": 45437,\n  \"triu\": 14782,\n  \"trium\": 21065,\n  \"triumph\": 26507,\n  \"triumph</w>\": 15307,\n  \"triumphant</w>\": 41918,\n  \"trivi\": 21228,\n  \"trivia</w>\": 10642,\n  \"triviatuesday</w>\": 45499,\n  \"trix</w>\": 41017,\n  \"tro\": 1046,\n  \"tro</w>\": 3332,\n  \"trock</w>\": 44368,\n  \"trojan</w>\": 30653,\n  \"trojans</w>\": 25310,\n  \"trol\": 10306,\n  \"troll\": 39737,\n  \"troll</w>\": 17103,\n  \"trolley</w>\": 25124,\n  \"trolling</w>\": 28552,\n  \"trolls</w>\": 20890,\n  \"tromb\": 32390,\n  \"trombone</w>\": 44423,\n  \"tron\": 19057,\n  \"tron</w>\": 10684,\n  \"tronic</w>\": 34258,\n  \"tronics</w>\": 34397,\n  \"troom</w>\": 23691,\n  \"troop\": 12492,\n  \"troop</w>\": 24054,\n  \"trooper</w>\": 18327,\n  \"troopers</w>\": 23576,\n  \"troops</w>\": 10109,\n  \"trop</w>\": 31585,\n  \"trope</w>\": 41150,\n  \"trophies</w>\": 20998,\n  \"trophy\": 42676,\n  \"trophy</w>\": 6502,\n  \"tropic\": 21794,\n  \"tropic</w>\": 36736,\n  \"tropical\": 41699,\n  \"tropical</w>\": 8686,\n  \"tropics</w>\": 36940,\n  \"tros</w>\": 40456,\n  \"trose</w>\": 36022,\n  \"trot</w>\": 30453,\n  \"trotter</w>\": 38287,\n  \"trou\": 5181,\n  \"troubad\": 49037,\n  \"trouble\": 25669,\n  \"trouble</w>\": 7848,\n  \"troubled</w>\": 25568,\n  \"troubles</w>\": 27254,\n  \"trough</w>\": 39761,\n  \"troupe</w>\": 34803,\n  \"trous\": 19727,\n  \"trousers</w>\": 23172,\n  \"trout</w>\": 14853,\n  \"trove</w>\": 45350,\n  \"trow</w>\": 46914,\n  \"troy\": 26283,\n  \"troy</w>\": 12819,\n  \"trs</w>\": 24770,\n  \"tru\": 931,\n  \"tru</w>\": 25326,\n  \"truck\": 14781,\n  \"truck</w>\": 4629,\n  \"trucker</w>\": 45918,\n  \"truckers</w>\": 43404,\n  \"trucking</w>\": 26208,\n  \"trucks</w>\": 9569,\n  \"trude</w>\": 39017,\n  \"trudeau</w>\": 15752,\n  \"true\": 13096,\n  \"true</w>\": 2328,\n  \"truec\": 37583,\n  \"truelove</w>\": 45711,\n  \"truffle</w>\": 23064,\n  \"truffles</w>\": 37057,\n  \"truly</w>\": 4545,\n  \"trum\": 11766,\n  \"trum</w>\": 11399,\n  \"truman</w>\": 29414,\n  \"trump\": 9124,\n  \"trump</w>\": 1797,\n  \"trumpet</w>\": 23681,\n  \"trumpp\": 45550,\n  \"trumprussia</w>\": 39135,\n  \"trumps</w>\": 29793,\n  \"trumptrain</w>\": 43595,\n  \"trun\": 16163,\n  \"trun</w>\": 46661,\n  \"trunk</w>\": 18347,\n  \"trunks</w>\": 38531,\n  \"truro</w>\": 43507,\n  \"truss</w>\": 46080,\n  \"trust\": 17691,\n  \"trust</w>\": 3876,\n  \"truste\": 17356,\n  \"trusted</w>\": 16538,\n  \"trustee</w>\": 30803,\n  \"trustees</w>\": 28853,\n  \"trusting</w>\": 33221,\n  \"trusts</w>\": 27507,\n  \"trustworthy</w>\": 46840,\n  \"trusty</w>\": 37955,\n  \"truth\": 21335,\n  \"truth</w>\": 4319,\n  \"truths</w>\": 27179,\n  \"trx</w>\": 31620,\n  \"try\": 4487,\n  \"try</w>\": 1209,\n  \"tryin</w>\": 31085,\n  \"trying</w>\": 2551,\n  \"tryna</w>\": 15702,\n  \"tryout</w>\": 43832,\n  \"tryouts</w>\": 28053,\n  \"ts\": 2290,\n  \"ts</w>\": 590,\n  \"tsa</w>\": 25977,\n  \"tsal</w>\": 20438,\n  \"tsb</w>\": 45015,\n  \"tsc</w>\": 37437,\n  \"tsch</w>\": 38778,\n  \"tsd</w>\": 20611,\n  \"tse\": 49144,\n  \"tsfor\": 42654,\n  \"tsford</w>\": 32823,\n  \"tsh\": 42872,\n  \"tshirt</w>\": 14907,\n  \"tshirts</w>\": 29377,\n  \"tsi\": 40048,\n  \"tsi</w>\": 37867,\n  \"tsk</w>\": 43600,\n  \"tsla</w>\": 35681,\n  \"tsm</w>\": 43452,\n  \"tsman</w>\": 20046,\n  \"tsn\": 44921,\n  \"tsn</w>\": 26896,\n  \"tson\": 42353,\n  \"tson</w>\": 47140,\n  \"tsp</w>\": 34230,\n  \"tsu\": 13950,\n  \"tsu</w>\": 20175,\n  \"tsun\": 19155,\n  \"tsunami</w>\": 24286,\n  \"tsville</w>\": 29080,\n  \"tt\": 971,\n  \"tt</w>\": 1402,\n  \"tta</w>\": 2646,\n  \"ttc</w>\": 27668,\n  \"tte\": 23105,\n  \"tte</w>\": 3070,\n  \"tted</w>\": 15163,\n  \"tten\": 11351,\n  \"tten</w>\": 17479,\n  \"tter\": 18691,\n  \"tter</w>\": 5165,\n  \"tters</w>\": 6318,\n  \"ttes</w>\": 9293,\n  \"tti</w>\": 5237,\n  \"ttin</w>\": 36589,\n  \"tting</w>\": 1188,\n  \"ttino</w>\": 47389,\n  \"ttip</w>\": 46993,\n  \"ttle</w>\": 9253,\n  \"ttm</w>\": 46838,\n  \"tto\": 8759,\n  \"tto</w>\": 8105,\n  \"tton</w>\": 10562,\n  \"ttot</w>\": 12480,\n  \"ttp</w>\": 30828,\n  \"ttr\": 47589,\n  \"tts</w>\": 11570,\n  \"ttt</w>\": 17256,\n  \"tttt</w>\": 33119,\n  \"ttu</w>\": 44006,\n  \"ttv</w>\": 24281,\n  \"tty\": 11457,\n  \"tty</w>\": 1856,\n  \"tu\": 764,\n  \"tu</w>\": 5760,\n  \"tua</w>\": 41344,\n  \"tual</w>\": 4799,\n  \"tuan</w>\": 37297,\n  \"tub\": 34907,\n  \"tub</w>\": 15450,\n  \"tube\": 38229,\n  \"tube</w>\": 3308,\n  \"tuber\": 30371,\n  \"tuberculo\": 42606,\n  \"tuberculosis</w>\": 43129,\n  \"tubes</w>\": 22870,\n  \"tubing</w>\": 40794,\n  \"tubs</w>\": 41705,\n  \"tubular</w>\": 48786,\n  \"tuc\": 14456,\n  \"tuc</w>\": 43871,\n  \"tuck</w>\": 22398,\n  \"tucked</w>\": 26923,\n  \"tucker\": 39703,\n  \"tucker</w>\": 15726,\n  \"tucket</w>\": 32677,\n  \"tucson</w>\": 17250,\n  \"tudor</w>\": 24547,\n  \"tue</w>\": 17515,\n  \"tues\": 2283,\n  \"tues</w>\": 12113,\n  \"tuesday\": 10209,\n  \"tuesday</w>\": 2519,\n  \"tuesdaymotivation</w>\": 25432,\n  \"tuesdays</w>\": 23195,\n  \"tuesdaythoughts</w>\": 17988,\n  \"tuf\": 44510,\n  \"tuff</w>\": 38868,\n  \"tug\": 47032,\n  \"tug</w>\": 27902,\n  \"tuition</w>\": 21129,\n  \"tuk\": 39271,\n  \"tuk</w>\": 14993,\n  \"tul\": 9069,\n  \"tul</w>\": 40837,\n  \"tula</w>\": 36332,\n  \"tulane</w>\": 44893,\n  \"tulip</w>\": 28389,\n  \"tulips</w>\": 30886,\n  \"tulsa</w>\": 18850,\n  \"tum\": 12932,\n  \"tum</w>\": 8843,\n  \"tumb\": 8831,\n  \"tumble</w>\": 38284,\n  \"tumbler</w>\": 48790,\n  \"tumbling</w>\": 46226,\n  \"tumblr</w>\": 11841,\n  \"tummy</w>\": 26053,\n  \"tumor</w>\": 22616,\n  \"tumors</w>\": 39894,\n  \"tumour</w>\": 45129,\n  \"tun\": 1415,\n  \"tun</w>\": 21349,\n  \"tuna</w>\": 15037,\n  \"tundra</w>\": 39899,\n  \"tune\": 11427,\n  \"tune</w>\": 3300,\n  \"tuned</w>\": 5898,\n  \"tunein</w>\": 16809,\n  \"tuner</w>\": 42905,\n  \"tunes\": 31688,\n  \"tunes</w>\": 10810,\n  \"tunesapp</w>\": 32550,\n  \"tung\": 47940,\n  \"tung</w>\": 31092,\n  \"tuni\": 16270,\n  \"tunic</w>\": 43495,\n  \"tuning</w>\": 19585,\n  \"tunisia</w>\": 23346,\n  \"tunnel</w>\": 11096,\n  \"tunnels</w>\": 29814,\n  \"tuous</w>\": 28738,\n  \"tup\": 37956,\n  \"tup</w>\": 4507,\n  \"tupac</w>\": 31506,\n  \"tups</w>\": 44855,\n  \"tur\": 985,\n  \"tur</w>\": 17182,\n  \"tura</w>\": 16127,\n  \"tural\": 45143,\n  \"tural</w>\": 4261,\n  \"turb\": 18973,\n  \"turban</w>\": 48515,\n  \"turbine</w>\": 26880,\n  \"turbines</w>\": 38863,\n  \"turbo\": 23578,\n  \"turbo</w>\": 13668,\n  \"turbul\": 31100,\n  \"turbulent</w>\": 47871,\n  \"ture\": 4321,\n  \"ture</w>\": 941,\n  \"tured</w>\": 3987,\n  \"turer</w>\": 11993,\n  \"turers</w>\": 16956,\n  \"tures</w>\": 2400,\n  \"turf\": 36762,\n  \"turf</w>\": 12510,\n  \"turi\": 11896,\n  \"turin</w>\": 36251,\n  \"turing</w>\": 5812,\n  \"turismo</w>\": 30202,\n  \"turk\": 8254,\n  \"turk</w>\": 32507,\n  \"turkey\": 35977,\n  \"turkey</w>\": 4790,\n  \"turkeys</w>\": 37991,\n  \"turkish\": 48199,\n  \"turkish</w>\": 9278,\n  \"turks</w>\": 34344,\n  \"turmeric</w>\": 34044,\n  \"turmoil</w>\": 37751,\n  \"turn\": 5522,\n  \"turn</w>\": 2105,\n  \"turnaround</w>\": 32719,\n  \"turnbull</w>\": 27863,\n  \"turned</w>\": 3771,\n  \"turner\": 42867,\n  \"turner</w>\": 8777,\n  \"turning</w>\": 4976,\n  \"turno\": 21377,\n  \"turnout</w>\": 11654,\n  \"turnover</w>\": 30794,\n  \"turnpike</w>\": 38301,\n  \"turns</w>\": 3185,\n  \"turnt</w>\": 28887,\n  \"turntable</w>\": 37953,\n  \"turnup</w>\": 30591,\n  \"turo</w>\": 29224,\n  \"turquo\": 19390,\n  \"turquoise</w>\": 19899,\n  \"turt\": 13716,\n  \"turtle\": 35943,\n  \"turtle</w>\": 10912,\n  \"turtles</w>\": 17862,\n  \"tus\": 24828,\n  \"tus</w>\": 7079,\n  \"tusc\": 17909,\n  \"tuscal\": 42638,\n  \"tuscaloosa</w>\": 44375,\n  \"tuscan</w>\": 42865,\n  \"tuscany</w>\": 20885,\n  \"tuss\": 31741,\n  \"tut</w>\": 35121,\n  \"tutor\": 10054,\n  \"tutor</w>\": 27858,\n  \"tutorial</w>\": 12857,\n  \"tutorials</w>\": 30973,\n  \"tutoring</w>\": 37532,\n  \"tutti</w>\": 46880,\n  \"tutu</w>\": 35845,\n  \"tux\": 28720,\n  \"tux</w>\": 49186,\n  \"tuxedo</w>\": 40173,\n  \"tv\": 3197,\n  \"tv</w>\": 1583,\n  \"tvc</w>\": 49190,\n  \"tvd</w>\": 25889,\n  \"tvmiaw</w>\": 38554,\n  \"tvn</w>\": 44232,\n  \"tvs</w>\": 27114,\n  \"tvtime</w>\": 19947,\n  \"tvxq</w>\": 43968,\n  \"tw\": 966,\n  \"tw</w>\": 12842,\n  \"twa</w>\": 46954,\n  \"twain</w>\": 30689,\n  \"twal\": 48126,\n  \"tware</w>\": 5707,\n  \"twc</w>\": 41217,\n  \"twd\": 29440,\n  \"twd</w>\": 19343,\n  \"twdfamily</w>\": 38218,\n  \"twe\": 18365,\n  \"tweak</w>\": 48870,\n  \"tweaks</w>\": 42661,\n  \"twee\": 1330,\n  \"tweed</w>\": 26904,\n  \"tweeps</w>\": 14928,\n  \"tweet\": 11826,\n  \"tweet</w>\": 1842,\n  \"tweeta\": 32024,\n  \"tweetapicture\": 40596,\n  \"tweeted</w>\": 7841,\n  \"tweeter</w>\": 32876,\n  \"tweeters</w>\": 31713,\n  \"tweeting</w>\": 8901,\n  \"tweets</w>\": 3560,\n  \"tweetyour\": 45033,\n  \"twel\": 14476,\n  \"twelf\": 39443,\n  \"twelfth</w>\": 44072,\n  \"twell\": 38722,\n  \"twell</w>\": 30162,\n  \"twelve</w>\": 19694,\n  \"twent\": 27027,\n  \"twenti\": 35167,\n  \"twenty</w>\": 13016,\n  \"twentyon\": 39609,\n  \"twentyonepilots</w>\": 40007,\n  \"twer\": 13923,\n  \"twerk</w>\": 28506,\n  \"twi\": 5537,\n  \"twice</w>\": 6970,\n  \"twick\": 34326,\n  \"twickenham</w>\": 39619,\n  \"twil\": 12804,\n  \"twili\": 35754,\n  \"twilight\": 46366,\n  \"twilight</w>\": 14512,\n  \"twill</w>\": 43703,\n  \"twin\": 9342,\n  \"twin</w>\": 6769,\n  \"twine</w>\": 42775,\n  \"twinkle</w>\": 36545,\n  \"twinning</w>\": 30156,\n  \"twinpeaks</w>\": 32042,\n  \"twins</w>\": 8040,\n  \"twist</w>\": 10589,\n  \"twisted</w>\": 18233,\n  \"twister</w>\": 45933,\n  \"twists</w>\": 34149,\n  \"twit\": 1643,\n  \"twit</w>\": 18704,\n  \"twitart</w>\": 27709,\n  \"twitch\": 13251,\n  \"twitch</w>\": 9153,\n  \"twitter\": 7546,\n  \"twitter</w>\": 1989,\n  \"twitterkurds</w>\": 32722,\n  \"twitterstorians</w>\": 35389,\n  \"two\": 17211,\n  \"two</w>\": 1237,\n  \"twol\": 31964,\n  \"twood\": 40404,\n  \"twood</w>\": 13245,\n  \"twp</w>\": 33283,\n  \"twright</w>\": 46778,\n  \"twt</w>\": 6825,\n  \"twx</w>\": 26830,\n  \"twy\": 45861,\n  \"tx\": 6636,\n  \"tx</w>\": 5200,\n  \"txhsfb</w>\": 34757,\n  \"txlege</w>\": 26995,\n  \"txst</w>\": 40761,\n  \"txt</w>\": 24595,\n  \"txwx</w>\": 22995,\n  \"ty\": 1260,\n  \"ty</w>\": 744,\n  \"tya</w>\": 41273,\n  \"tycoon</w>\": 36803,\n  \"tye</w>\": 43097,\n  \"tyfree</w>\": 41215,\n  \"tyga</w>\": 41952,\n  \"tying</w>\": 22559,\n  \"tyl</w>\": 47537,\n  \"tyler\": 14787,\n  \"tyler</w>\": 7058,\n  \"tym</w>\": 45772,\n  \"tyne\": 27000,\n  \"tyne</w>\": 29729,\n  \"tyour\": 16823,\n  \"type\": 15673,\n  \"type</w>\": 3877,\n  \"typed</w>\": 40753,\n  \"typeface</w>\": 44969,\n  \"types</w>\": 7543,\n  \"typewriter</w>\": 42180,\n  \"typho\": 17486,\n  \"typhoon</w>\": 21110,\n  \"typic\": 21648,\n  \"typical</w>\": 9854,\n  \"typically</w>\": 23175,\n  \"typing</w>\": 20102,\n  \"typo\": 18831,\n  \"typo</w>\": 29076,\n  \"typography</w>\": 24332,\n  \"tyr\": 15590,\n  \"tyran\": 46921,\n  \"tyranny</w>\": 35402,\n  \"tyre\": 38330,\n  \"tyre</w>\": 16864,\n  \"tyres</w>\": 21376,\n  \"tyrone</w>\": 30226,\n  \"tyson</w>\": 16616,\n  \"tz\": 7710,\n  \"tz</w>\": 4983,\n  \"tzer</w>\": 45267,\n  \"tzky</w>\": 47127,\n  \"tzman</w>\": 46032,\n  \"tzu</w>\": 34354,\n  \"tÃ©\": 27208,\n  \"tÃ©</w>\": 39694,\n  \"u\": 84,\n  \"u</w>\": 340,\n  \"ua\": 34075,\n  \"ua</w>\": 8441,\n  \"uaap\": 46753,\n  \"uaap</w>\": 43774,\n  \"uab</w>\": 35587,\n  \"uae</w>\": 9752,\n  \"ual</w>\": 1921,\n  \"ually</w>\": 10767,\n  \"uan</w>\": 33062,\n  \"uas</w>\": 38339,\n  \"uav</w>\": 30303,\n  \"ub\": 18430,\n  \"ub</w>\": 13494,\n  \"uba</w>\": 29768,\n  \"ubc\": 42479,\n  \"ubc</w>\": 29455,\n  \"ube</w>\": 30892,\n  \"uber\": 25896,\n  \"uber</w>\": 10668,\n  \"ubi\": 26758,\n  \"ubio</w>\": 32867,\n  \"ubiquit\": 48129,\n  \"ubis\": 28248,\n  \"ubisoft</w>\": 32051,\n  \"ubs</w>\": 43851,\n  \"ubun\": 28184,\n  \"ubuntu</w>\": 30791,\n  \"uc\": 4903,\n  \"uc</w>\": 12438,\n  \"uca</w>\": 30942,\n  \"ucc\": 44844,\n  \"ucc</w>\": 29138,\n  \"ucci</w>\": 30746,\n  \"uccino</w>\": 30409,\n  \"ucd\": 44746,\n  \"ucd</w>\": 43514,\n  \"ucf</w>\": 24414,\n  \"uch\": 19465,\n  \"uch</w>\": 22394,\n  \"uchi\": 37473,\n  \"uci\": 46354,\n  \"uci</w>\": 28925,\n  \"uck</w>\": 34189,\n  \"ucl\": 12013,\n  \"ucl</w>\": 13647,\n  \"ucla\": 37667,\n  \"ucla</w>\": 17259,\n  \"ucn</w>\": 49036,\n  \"uconn</w>\": 30549,\n  \"ud\": 6560,\n  \"ud</w>\": 5765,\n  \"uda</w>\": 22800,\n  \"udaipur</w>\": 49385,\n  \"uddin</w>\": 43035,\n  \"ude\": 37016,\n  \"ude</w>\": 35194,\n  \"ue\": 16696,\n  \"ue</w>\": 1190,\n  \"uefa</w>\": 19189,\n  \"uel</w>\": 24231,\n  \"uer</w>\": 45951,\n  \"ues</w>\": 2526,\n  \"uf\": 17777,\n  \"uf</w>\": 19230,\n  \"ufc\": 20396,\n  \"ufc</w>\": 6490,\n  \"uff</w>\": 45701,\n  \"ufo</w>\": 19443,\n  \"ufos</w>\": 48234,\n  \"ug\": 3754,\n  \"ug</w>\": 16061,\n  \"uga</w>\": 16056,\n  \"ugand\": 25965,\n  \"uganda</w>\": 11125,\n  \"ugandan</w>\": 44206,\n  \"ugby</w>\": 30658,\n  \"ugh\": 39736,\n  \"ugh</w>\": 12755,\n  \"ugliest</w>\": 43543,\n  \"ugly\": 36070,\n  \"ugly</w>\": 8159,\n  \"ugu</w>\": 18144,\n  \"uh\": 17661,\n  \"uh</w>\": 9219,\n  \"uhc</w>\": 44974,\n  \"uhh</w>\": 35938,\n  \"uhhh</w>\": 45270,\n  \"uhm</w>\": 35614,\n  \"uhur\": 29434,\n  \"uhuru</w>\": 35690,\n  \"ui\": 17326,\n  \"ui</w>\": 11458,\n  \"uil</w>\": 29395,\n  \"uit\": 30696,\n  \"uit</w>\": 47584,\n  \"uj\": 33266,\n  \"uji</w>\": 39672,\n  \"uk\": 2294,\n  \"uk</w>\": 1432,\n  \"uka</w>\": 23294,\n  \"uke\": 48836,\n  \"uke</w>\": 28577,\n  \"uked\": 48987,\n  \"uki\": 37435,\n  \"uki</w>\": 9009,\n  \"ukin\": 34996,\n  \"ukip</w>\": 20360,\n  \"uklabour</w>\": 36902,\n  \"ukmfg</w>\": 38764,\n  \"uko</w>\": 33562,\n  \"ukone</w>\": 24682,\n  \"ukrain\": 15468,\n  \"ukraine</w>\": 7768,\n  \"ukrainian</w>\": 16927,\n  \"ukrunchat</w>\": 34481,\n  \"uku\": 29541,\n  \"uku</w>\": 36082,\n  \"ukulele</w>\": 39094,\n  \"ul\": 914,\n  \"ul</w>\": 6625,\n  \"ula\": 34104,\n  \"ula</w>\": 9506,\n  \"ular</w>\": 4927,\n  \"ulary</w>\": 21701,\n  \"ulate</w>\": 20467,\n  \"ulation</w>\": 32896,\n  \"ule</w>\": 35616,\n  \"ules</w>\": 26274,\n  \"ulf</w>\": 49331,\n  \"uli\": 41841,\n  \"uli</w>\": 22174,\n  \"ull\": 33254,\n  \"ulla</w>\": 30577,\n  \"ullah</w>\": 45310,\n  \"ullivan</w>\": 45252,\n  \"ulls</w>\": 37418,\n  \"ulo\": 46084,\n  \"ulo</w>\": 36738,\n  \"ulous\": 42490,\n  \"ulous</w>\": 4281,\n  \"ulously</w>\": 20167,\n  \"ulster\": 29709,\n  \"ulster</w>\": 24639,\n  \"ult</w>\": 4380,\n  \"ulti\": 11925,\n  \"ulties</w>\": 21884,\n  \"ultimat\": 16522,\n  \"ultimate\": 34684,\n  \"ultimate</w>\": 5377,\n  \"ultimatefan\": 48372,\n  \"ultimatefanlive</w>\": 48644,\n  \"ultimately</w>\": 23023,\n  \"ultr\": 25636,\n  \"ultra\": 11398,\n  \"ultra</w>\": 8118,\n  \"ultram\": 44519,\n  \"ultrasound</w>\": 29717,\n  \"ulture</w>\": 22272,\n  \"ulty</w>\": 8036,\n  \"ulu\": 41815,\n  \"ulu</w>\": 15659,\n  \"ulum</w>\": 17235,\n  \"uly\": 33220,\n  \"ulysses</w>\": 46114,\n  \"um\": 1622,\n  \"um</w>\": 1008,\n  \"uma\": 29982,\n  \"uma</w>\": 9256,\n  \"uman</w>\": 27112,\n  \"umar</w>\": 25656,\n  \"umass</w>\": 39390,\n  \"umatic</w>\": 45006,\n  \"umb\": 7493,\n  \"umber\": 19195,\n  \"umbrel\": 34773,\n  \"umbrella</w>\": 17143,\n  \"umbrellas</w>\": 42782,\n  \"umbria</w>\": 39287,\n  \"umc</w>\": 39491,\n  \"umd</w>\": 42067,\n  \"ume\": 38480,\n  \"umen</w>\": 42832,\n  \"uments</w>\": 25924,\n  \"umer</w>\": 23539,\n  \"umes</w>\": 21403,\n  \"umi\": 48772,\n  \"umi</w>\": 15458,\n  \"umich\": 41294,\n  \"umin</w>\": 31542,\n  \"umm\": 26129,\n  \"umm</w>\": 21215,\n  \"ummer</w>\": 47628,\n  \"ummm</w>\": 33665,\n  \"umni</w>\": 31739,\n  \"ump\": 22224,\n  \"umpire</w>\": 36214,\n  \"ums</w>\": 8643,\n  \"umu</w>\": 39788,\n  \"un\": 569,\n  \"un</w>\": 2271,\n  \"una</w>\": 6385,\n  \"unable</w>\": 17793,\n  \"unacceptable</w>\": 25234,\n  \"unanim\": 20800,\n  \"unanimous</w>\": 33520,\n  \"unanimously</w>\": 31798,\n  \"unanswered</w>\": 43611,\n  \"unarmed</w>\": 41541,\n  \"unas</w>\": 41366,\n  \"unavailable</w>\": 48430,\n  \"unaware</w>\": 33347,\n  \"unbeat\": 37056,\n  \"unbeatable</w>\": 40267,\n  \"unbeaten</w>\": 19228,\n  \"unbeliev\": 11383,\n  \"unbelievable</w>\": 13306,\n  \"unbelievably</w>\": 33781,\n  \"unborn</w>\": 37257,\n  \"unboxing</w>\": 32866,\n  \"unbreakable</w>\": 32956,\n  \"unbroken</w>\": 49271,\n  \"unc\": 24921,\n  \"unc</w>\": 15322,\n  \"uncanny</w>\": 32556,\n  \"uncertain</w>\": 30384,\n  \"uncertainty</w>\": 23956,\n  \"unch</w>\": 1527,\n  \"unchanged</w>\": 34272,\n  \"uncharted</w>\": 34560,\n  \"unci\": 25521,\n  \"unciation</w>\": 34117,\n  \"uncle\": 31537,\n  \"uncle</w>\": 8002,\n  \"unclear</w>\": 32955,\n  \"uncles</w>\": 45335,\n  \"uncomfortable</w>\": 22470,\n  \"uncommon</w>\": 34888,\n  \"uncondition\": 46561,\n  \"unconditional</w>\": 31112,\n  \"unconscious</w>\": 34791,\n  \"unconstitutional</w>\": 43585,\n  \"unconventional</w>\": 39440,\n  \"uncover</w>\": 33031,\n  \"uncovered</w>\": 28234,\n  \"uncture</w>\": 38736,\n  \"uncut</w>\": 41056,\n  \"und\": 9762,\n  \"und</w>\": 9732,\n  \"unda</w>\": 39932,\n  \"undant</w>\": 25377,\n  \"unday</w>\": 29338,\n  \"unde</w>\": 45226,\n  \"undead</w>\": 40105,\n  \"undecided</w>\": 49368,\n  \"undefeated</w>\": 15326,\n  \"undeni\": 38424,\n  \"under\": 1473,\n  \"under</w>\": 1798,\n  \"underage</w>\": 45669,\n  \"underattack</w>\": 35075,\n  \"undercover</w>\": 21595,\n  \"underdog</w>\": 44266,\n  \"undere\": 21675,\n  \"underestim\": 23348,\n  \"underestimate</w>\": 31794,\n  \"undergo</w>\": 31545,\n  \"undergoing</w>\": 26419,\n  \"undergrad</w>\": 38331,\n  \"undergraduate</w>\": 24320,\n  \"underground</w>\": 9396,\n  \"undering</w>\": 30826,\n  \"underlying</w>\": 31812,\n  \"undermine</w>\": 42839,\n  \"underneath</w>\": 20857,\n  \"underrated</w>\": 19494,\n  \"unders</w>\": 20376,\n  \"understand\": 47582,\n  \"understand</w>\": 4600,\n  \"understanding</w>\": 7522,\n  \"understands</w>\": 21607,\n  \"understatement</w>\": 38296,\n  \"understood</w>\": 17303,\n  \"undertaker</w>\": 40144,\n  \"undertaking</w>\": 49067,\n  \"undertale</w>\": 48283,\n  \"underthe\": 41161,\n  \"underwater</w>\": 14760,\n  \"underway</w>\": 6273,\n  \"underwear</w>\": 21154,\n  \"underwood</w>\": 21474,\n  \"underworld</w>\": 34760,\n  \"undi</w>\": 23845,\n  \"undisclosed</w>\": 39334,\n  \"undo</w>\": 35454,\n  \"undocumented</w>\": 35414,\n  \"undoub\": 38836,\n  \"undoubtedly</w>\": 42204,\n  \"undp</w>\": 26691,\n  \"une\": 4522,\n  \"une</w>\": 10966,\n  \"unearth\": 32716,\n  \"unearthed</w>\": 36632,\n  \"unemp\": 15139,\n  \"unemployed</w>\": 32721,\n  \"unemployment</w>\": 19350,\n  \"unes</w>\": 6394,\n  \"unesco</w>\": 16216,\n  \"uneven</w>\": 43204,\n  \"unex\": 9484,\n  \"unexpe\": 10802,\n  \"unexpec\": 31829,\n  \"unexpected</w>\": 12293,\n  \"unexpectedly</w>\": 35622,\n  \"unf\": 29285,\n  \"unfair</w>\": 22193,\n  \"unfinished</w>\": 26526,\n  \"unfit</w>\": 45367,\n  \"unfold</w>\": 38681,\n  \"unfollow</w>\": 38797,\n  \"unfor\": 14010,\n  \"unforgettable</w>\": 16173,\n  \"unfortun\": 10194,\n  \"unfortunate</w>\": 22361,\n  \"unfortunately</w>\": 12863,\n  \"unfpa</w>\": 45048,\n  \"ung\": 10439,\n  \"ung</w>\": 4334,\n  \"unga</w>\": 19151,\n  \"ungsoo</w>\": 25582,\n  \"unh\": 25365,\n  \"unhappy</w>\": 26528,\n  \"unhcr</w>\": 43451,\n  \"unhealthy</w>\": 30994,\n  \"uni\": 1107,\n  \"uni</w>\": 5926,\n  \"unic\": 7648,\n  \"unicef\": 38286,\n  \"unicef</w>\": 19259,\n  \"unicorn</w>\": 15660,\n  \"unicorns</w>\": 35183,\n  \"unidenti\": 33707,\n  \"unidentified</w>\": 35563,\n  \"unification</w>\": 45036,\n  \"unified</w>\": 20876,\n  \"uniform</w>\": 11075,\n  \"uniforms</w>\": 17838,\n  \"unil\": 32388,\n  \"unilever</w>\": 48654,\n  \"uniof\": 21218,\n  \"union\": 14210,\n  \"union</w>\": 3503,\n  \"unions</w>\": 18353,\n  \"unis\": 30482,\n  \"unis</w>\": 39266,\n  \"unisex</w>\": 27609,\n  \"unison</w>\": 46694,\n  \"unit\": 28522,\n  \"unit</w>\": 5695,\n  \"unite\": 15078,\n  \"unite</w>\": 11305,\n  \"uniteblue</w>\": 20935,\n  \"united\": 10898,\n  \"united</w>\": 2690,\n  \"unitedstates</w>\": 39636,\n  \"unitedway\": 47486,\n  \"unites</w>\": 32061,\n  \"uniting</w>\": 31318,\n  \"units</w>\": 10394,\n  \"unity\": 38300,\n  \"unity</w>\": 8581,\n  \"univ\": 36680,\n  \"univ</w>\": 14896,\n  \"univer\": 15574,\n  \"univers\": 5855,\n  \"universal\": 19148,\n  \"universal</w>\": 8754,\n  \"universe</w>\": 6104,\n  \"universi\": 41692,\n  \"universit\": 26019,\n  \"universities</w>\": 16408,\n  \"university\": 40728,\n  \"university</w>\": 2182,\n  \"universityof\": 46158,\n  \"unk</w>\": 5542,\n  \"unknown</w>\": 8685,\n  \"unl</w>\": 43807,\n  \"unlawful</w>\": 42305,\n  \"unle\": 19677,\n  \"unlea\": 23893,\n  \"unleash</w>\": 26706,\n  \"unleashed</w>\": 27955,\n  \"unless</w>\": 10602,\n  \"unlike</w>\": 16694,\n  \"unlikely</w>\": 18904,\n  \"unlimited</w>\": 11015,\n  \"unlock</w>\": 18649,\n  \"unlocked</w>\": 16770,\n  \"unlocking</w>\": 40810,\n  \"unlucky</w>\": 35029,\n  \"unlv</w>\": 42283,\n  \"unmanned</w>\": 36751,\n  \"unmatched</w>\": 46054,\n  \"unn</w>\": 38364,\n  \"unnamed</w>\": 44985,\n  \"unnecessary</w>\": 24100,\n  \"unner</w>\": 31481,\n  \"unning</w>\": 43282,\n  \"unnoticed</w>\": 42807,\n  \"uno\": 32446,\n  \"uno</w>\": 17078,\n  \"unofficial</w>\": 22506,\n  \"unpacking</w>\": 43589,\n  \"unpaid</w>\": 32811,\n  \"unparalleled</w>\": 44396,\n  \"unplugged</w>\": 31724,\n  \"unpopular</w>\": 40232,\n  \"unprece\": 23054,\n  \"unprecedented</w>\": 23344,\n  \"unpredictable</w>\": 38684,\n  \"unra\": 45150,\n  \"unreal\": 46980,\n  \"unreal</w>\": 15636,\n  \"unrelated</w>\": 38644,\n  \"unreleased</w>\": 29654,\n  \"unrest</w>\": 36452,\n  \"uns</w>\": 25908,\n  \"unsafe</w>\": 32071,\n  \"unsc</w>\": 36395,\n  \"unseen</w>\": 19069,\n  \"unsigned</w>\": 39346,\n  \"unsolved</w>\": 40836,\n  \"unsplash</w>\": 46196,\n  \"unstable</w>\": 34730,\n  \"unstopp\": 22105,\n  \"unstoppable</w>\": 23484,\n  \"unsuccessful</w>\": 47478,\n  \"unsung</w>\": 33015,\n  \"unsure</w>\": 26396,\n  \"unt\": 19654,\n  \"unt</w>\": 6537,\n  \"until</w>\": 1942,\n  \"untitled</w>\": 21309,\n  \"unto</w>\": 19801,\n  \"untold</w>\": 32206,\n  \"untouch\": 44509,\n  \"untouched</w>\": 42764,\n  \"unused</w>\": 29636,\n  \"unusual</w>\": 12613,\n  \"unusually</w>\": 36465,\n  \"unve\": 6685,\n  \"unveil</w>\": 20483,\n  \"unveiled</w>\": 13572,\n  \"unveiling</w>\": 20327,\n  \"unveils</w>\": 15057,\n  \"unwanted</w>\": 25285,\n  \"unwind</w>\": 34064,\n  \"unya</w>\": 37142,\n  \"uo\": 30874,\n  \"uo</w>\": 36162,\n  \"uof\": 11155,\n  \"uoft</w>\": 37329,\n  \"uon\": 48144,\n  \"uous</w>\": 40185,\n  \"up\": 1083,\n  \"up</w>\": 705,\n  \"upa</w>\": 31727,\n  \"upbeat</w>\": 39201,\n  \"upcoming</w>\": 4196,\n  \"upcycled</w>\": 46552,\n  \"upd\": 3226,\n  \"update</w>\": 2491,\n  \"updated</w>\": 5974,\n  \"updates</w>\": 4904,\n  \"updating</w>\": 22792,\n  \"uper\": 38082,\n  \"uper</w>\": 33056,\n  \"upfront</w>\": 42064,\n  \"upgrade</w>\": 10365,\n  \"upgraded</w>\": 18577,\n  \"upgrades</w>\": 21253,\n  \"upgrading</w>\": 34368,\n  \"uph\": 14128,\n  \"uphill</w>\": 42767,\n  \"uphol\": 26195,\n  \"uphold</w>\": 43897,\n  \"upholstery</w>\": 44556,\n  \"upl\": 41939,\n  \"uplift</w>\": 45389,\n  \"uplifting</w>\": 29546,\n  \"upload</w>\": 13968,\n  \"uploaded</w>\": 16793,\n  \"uploading</w>\": 30145,\n  \"upon\": 23524,\n  \"upon</w>\": 5067,\n  \"upp\": 19549,\n  \"upp</w>\": 45946,\n  \"upper\": 22465,\n  \"upper</w>\": 7067,\n  \"upri\": 15982,\n  \"upright</w>\": 29818,\n  \"uprising</w>\": 26006,\n  \"upro\": 28922,\n  \"ups</w>\": 6926,\n  \"upscale</w>\": 47501,\n  \"upset</w>\": 11214,\n  \"upsets</w>\": 42637,\n  \"upside</w>\": 15362,\n  \"upstairs</w>\": 21387,\n  \"upstate</w>\": 33335,\n  \"upstream</w>\": 45517,\n  \"upthe\": 31510,\n  \"upto</w>\": 26575,\n  \"upton</w>\": 31910,\n  \"uptown</w>\": 23807,\n  \"upward</w>\": 32526,\n  \"upwards</w>\": 34915,\n  \"uq</w>\": 39591,\n  \"ur\": 565,\n  \"ur</w>\": 1775,\n  \"ura\": 29337,\n  \"ura</w>\": 3544,\n  \"urable</w>\": 40194,\n  \"ural\": 23547,\n  \"ural</w>\": 33948,\n  \"uran</w>\": 16197,\n  \"uranium</w>\": 29850,\n  \"urban\": 7931,\n  \"urban</w>\": 5800,\n  \"urbanart</w>\": 40834,\n  \"urd</w>\": 47880,\n  \"urday</w>\": 19742,\n  \"urdu</w>\": 29976,\n  \"ure\": 5514,\n  \"ure</w>\": 726,\n  \"ured</w>\": 4210,\n  \"urer</w>\": 20864,\n  \"ures</w>\": 2288,\n  \"urg</w>\": 35995,\n  \"urge</w>\": 14852,\n  \"urged</w>\": 23790,\n  \"urgency</w>\": 47612,\n  \"urgent</w>\": 13693,\n  \"urgently</w>\": 34534,\n  \"urges</w>\": 16692,\n  \"urging</w>\": 27748,\n  \"uri\": 11052,\n  \"uri</w>\": 8699,\n  \"urie</w>\": 46429,\n  \"urin\": 45245,\n  \"urine</w>\": 28864,\n  \"uring</w>\": 1351,\n  \"url</w>\": 23464,\n  \"urn</w>\": 38075,\n  \"uro\": 17343,\n  \"uro</w>\": 5925,\n  \"urology</w>\": 48585,\n  \"urope</w>\": 14918,\n  \"urs</w>\": 4794,\n  \"urself</w>\": 31942,\n  \"urst</w>\": 19181,\n  \"urstruly\": 34751,\n  \"urstrulymahesh</w>\": 35314,\n  \"ursula</w>\": 38390,\n  \"urt</w>\": 24309,\n  \"uru\": 16322,\n  \"uru</w>\": 11768,\n  \"uruguay</w>\": 27931,\n  \"urus</w>\": 14246,\n  \"urve\": 24583,\n  \"ury\": 8642,\n  \"ury</w>\": 2106,\n  \"us\": 904,\n  \"us</w>\": 718,\n  \"usa\": 9491,\n  \"usa</w>\": 2547,\n  \"usability</w>\": 46736,\n  \"usable</w>\": 22890,\n  \"usaf</w>\": 25017,\n  \"usage</w>\": 19137,\n  \"usaid</w>\": 34507,\n  \"usair\": 36742,\n  \"usairforce</w>\": 42179,\n  \"usarmy</w>\": 19132,\n  \"usatoday</w>\": 40263,\n  \"usav\": 36056,\n  \"usb</w>\": 10281,\n  \"usc\": 13346,\n  \"usc</w>\": 14995,\n  \"uscg</w>\": 43932,\n  \"usd</w>\": 7485,\n  \"usda</w>\": 25829,\n  \"use\": 4419,\n  \"use</w>\": 1483,\n  \"used\": 32289,\n  \"used</w>\": 2026,\n  \"useful</w>\": 9784,\n  \"useless</w>\": 20154,\n  \"usemb\": 39700,\n  \"user\": 21248,\n  \"user</w>\": 7031,\n  \"username</w>\": 28162,\n  \"users</w>\": 7433,\n  \"uses</w>\": 5282,\n  \"useum</w>\": 45189,\n  \"usf\": 32385,\n  \"usf</w>\": 28942,\n  \"usgs</w>\": 35103,\n  \"ush\": 12001,\n  \"ush</w>\": 18335,\n  \"usher</w>\": 27411,\n  \"ushi</w>\": 47734,\n  \"usi</w>\": 25540,\n  \"usic\": 34909,\n  \"usic</w>\": 16753,\n  \"using</w>\": 1996,\n  \"usky</w>\": 45778,\n  \"usl</w>\": 42113,\n  \"usm</w>\": 40041,\n  \"usmc</w>\": 21678,\n  \"usmnt</w>\": 30662,\n  \"usn</w>\": 40579,\n  \"usnavy</w>\": 24500,\n  \"usnews</w>\": 43752,\n  \"uso</w>\": 21539,\n  \"usopen</w>\": 21782,\n  \"usp\": 26651,\n  \"usps</w>\": 39980,\n  \"usrc</w>\": 33274,\n  \"uss\": 11545,\n  \"uss</w>\": 9260,\n  \"ussia</w>\": 29553,\n  \"ussoccer</w>\": 42828,\n  \"ussr</w>\": 32697,\n  \"ust\": 35501,\n  \"ust</w>\": 24725,\n  \"usu\": 4254,\n  \"usu</w>\": 40434,\n  \"usual</w>\": 6129,\n  \"usually</w>\": 8296,\n  \"usur\": 45582,\n  \"uswnt</w>\": 35255,\n  \"ut\": 1419,\n  \"ut</w>\": 3641,\n  \"uta\": 42706,\n  \"uta</w>\": 25925,\n  \"utah\": 27474,\n  \"utah</w>\": 9312,\n  \"utc</w>\": 18196,\n  \"utd</w>\": 10493,\n  \"ute\": 16856,\n  \"ute</w>\": 3130,\n  \"uten\": 32089,\n  \"uter\": 39197,\n  \"utes</w>\": 2850,\n  \"uth\": 48819,\n  \"uth</w>\": 44750,\n  \"uti</w>\": 24568,\n  \"util\": 28824,\n  \"utili\": 17015,\n  \"utilities</w>\": 27210,\n  \"utility</w>\": 14941,\n  \"utilize</w>\": 36861,\n  \"utilized</w>\": 47604,\n  \"utilizing</w>\": 40212,\n  \"utm</w>\": 47853,\n  \"utmost</w>\": 42352,\n  \"uto\": 18866,\n  \"uto</w>\": 13683,\n  \"utopia</w>\": 34433,\n  \"utpol</w>\": 42605,\n  \"utr\": 48726,\n  \"utrecht</w>\": 37216,\n  \"uts</w>\": 11740,\n  \"utsa</w>\": 37528,\n  \"utt\": 17096,\n  \"uttar</w>\": 40168,\n  \"uttarak\": 33755,\n  \"uttarakhand</w>\": 35655,\n  \"utter\": 18769,\n  \"utter</w>\": 24558,\n  \"utterly</w>\": 21353,\n  \"utto</w>\": 42183,\n  \"utv</w>\": 36351,\n  \"utz</w>\": 45320,\n  \"uu\": 5702,\n  \"uu</w>\": 14553,\n  \"uuu\": 44355,\n  \"uuu</w>\": 27656,\n  \"uuuu\": 16720,\n  \"uuuu</w>\": 40797,\n  \"uv\": 23777,\n  \"uv</w>\": 15977,\n  \"uva</w>\": 23908,\n  \"uw\": 13933,\n  \"uw</w>\": 19166,\n  \"uwe</w>\": 48785,\n  \"uwu</w>\": 35544,\n  \"ux\": 9251,\n  \"ux</w>\": 6213,\n  \"uy\": 31929,\n  \"uy</w>\": 48113,\n  \"uz\": 19398,\n  \"uz</w>\": 36991,\n  \"uzbe\": 43007,\n  \"uzbekistan</w>\": 45024,\n  \"uzzi</w>\": 48210,\n  \"v\": 85,\n  \"v</w>\": 341,\n  \"va\": 4648,\n  \"va</w>\": 1892,\n  \"vaa</w>\": 37488,\n  \"vable</w>\": 23088,\n  \"vac\": 3125,\n  \"vac</w>\": 34085,\n  \"vaca</w>\": 48215,\n  \"vacancies</w>\": 26333,\n  \"vacancy</w>\": 21247,\n  \"vacant</w>\": 25262,\n  \"vacation\": 28336,\n  \"vacation</w>\": 6561,\n  \"vacations</w>\": 29002,\n  \"vacay</w>\": 44716,\n  \"vacc\": 13342,\n  \"vaccin\": 19164,\n  \"vaccinated</w>\": 48134,\n  \"vaccination</w>\": 32518,\n  \"vaccine\": 47780,\n  \"vaccine</w>\": 17493,\n  \"vaccines</w>\": 25860,\n  \"vach\": 46211,\n  \"vacu\": 16058,\n  \"vacuum</w>\": 18420,\n  \"vad\": 11880,\n  \"vada</w>\": 46759,\n  \"vader</w>\": 21908,\n  \"vae</w>\": 39384,\n  \"vag\": 13015,\n  \"vague</w>\": 42154,\n  \"vah</w>\": 26921,\n  \"vai\": 26893,\n  \"vai</w>\": 36802,\n  \"vail</w>\": 21189,\n  \"vain</w>\": 25538,\n  \"vais</w>\": 28719,\n  \"vaj\": 34206,\n  \"vak\": 16288,\n  \"vak</w>\": 41597,\n  \"val\": 1214,\n  \"val</w>\": 1560,\n  \"vala</w>\": 48525,\n  \"valdez</w>\": 40617,\n  \"vale\": 35554,\n  \"vale</w>\": 10820,\n  \"valedic\": 43525,\n  \"valen\": 12630,\n  \"valence</w>\": 30225,\n  \"valenci\": 34183,\n  \"valencia</w>\": 16559,\n  \"valent\": 3655,\n  \"valent</w>\": 15300,\n  \"valentin</w>\": 48631,\n  \"valentina</w>\": 43741,\n  \"valentine\": 11208,\n  \"valentine</w>\": 5876,\n  \"valentines</w>\": 10259,\n  \"valentinesday</w>\": 12369,\n  \"valentino</w>\": 29624,\n  \"valeri\": 31951,\n  \"valerie</w>\": 25592,\n  \"valet</w>\": 45749,\n  \"vali\": 8230,\n  \"valiant</w>\": 33804,\n  \"valid</w>\": 15126,\n  \"validation</w>\": 32536,\n  \"valkyrie</w>\": 42326,\n  \"vall\": 23523,\n  \"vall</w>\": 35295,\n  \"vallarta</w>\": 47874,\n  \"valle\": 24857,\n  \"valle</w>\": 29105,\n  \"valley\": 18354,\n  \"valley</w>\": 3136,\n  \"valleys</w>\": 28649,\n  \"valor</w>\": 30930,\n  \"vals</w>\": 7431,\n  \"valu\": 6291,\n  \"valuable</w>\": 10056,\n  \"valuation</w>\": 25894,\n  \"value\": 41358,\n  \"value</w>\": 4602,\n  \"valued</w>\": 17801,\n  \"values</w>\": 8857,\n  \"valve</w>\": 17001,\n  \"valves</w>\": 33517,\n  \"vam\": 9983,\n  \"vamo\": 46718,\n  \"vamos</w>\": 30346,\n  \"vamp\": 10680,\n  \"vampi\": 47017,\n  \"vampire\": 47576,\n  \"vampire</w>\": 13220,\n  \"vampires</w>\": 30868,\n  \"vamps</w>\": 44810,\n  \"van\": 2446,\n  \"van</w>\": 2451,\n  \"vana</w>\": 20543,\n  \"vanc\": 6320,\n  \"vance</w>\": 31447,\n  \"vancou\": 6750,\n  \"vancouver\": 31904,\n  \"vancouver</w>\": 7208,\n  \"vand\": 11691,\n  \"vandalism</w>\": 45664,\n  \"vander\": 16264,\n  \"vanderbilt</w>\": 33524,\n  \"vandy\": 39268,\n  \"vane</w>\": 43828,\n  \"vaness\": 13328,\n  \"vanessa</w>\": 16836,\n  \"vangogh</w>\": 47849,\n  \"vanguard</w>\": 27916,\n  \"vani\": 15396,\n  \"vani</w>\": 26459,\n  \"vania</w>\": 10998,\n  \"vanilla</w>\": 11974,\n  \"vanished</w>\": 43783,\n  \"vanishing</w>\": 48296,\n  \"vanity\": 48353,\n  \"vanity</w>\": 22938,\n  \"vans</w>\": 11711,\n  \"vant\": 26298,\n  \"vantage</w>\": 31749,\n  \"vanu\": 42892,\n  \"vanuatu</w>\": 48766,\n  \"vap\": 10462,\n  \"vape\": 25423,\n  \"vape</w>\": 20219,\n  \"vaping</w>\": 29403,\n  \"vapor\": 37167,\n  \"vapor</w>\": 30729,\n  \"vapori\": 46183,\n  \"var\": 3187,\n  \"var</w>\": 12998,\n  \"vara</w>\": 47492,\n  \"varan\": 36585,\n  \"varanasi</w>\": 39364,\n  \"vard\": 21866,\n  \"vard</w>\": 8773,\n  \"vardy</w>\": 47371,\n  \"vare\": 38159,\n  \"vares</w>\": 42895,\n  \"vargas</w>\": 32752,\n  \"vari\": 3354,\n  \"variable</w>\": 26416,\n  \"varian</w>\": 34334,\n  \"variant</w>\": 20293,\n  \"variants</w>\": 38312,\n  \"variation</w>\": 26420,\n  \"variations</w>\": 29025,\n  \"varied</w>\": 32334,\n  \"varies</w>\": 32543,\n  \"varieties</w>\": 23805,\n  \"variety</w>\": 8396,\n  \"various</w>\": 7395,\n  \"varsity\": 43716,\n  \"varsity</w>\": 8574,\n  \"varun\": 48120,\n  \"varun</w>\": 22069,\n  \"vary</w>\": 18855,\n  \"varying</w>\": 36456,\n  \"vas\": 5669,\n  \"vas</w>\": 5995,\n  \"vasc</w>\": 40995,\n  \"vascular</w>\": 19218,\n  \"vase</w>\": 20431,\n  \"vasi\": 49092,\n  \"vast\": 24413,\n  \"vast</w>\": 16414,\n  \"vastly</w>\": 48257,\n  \"vat\": 11588,\n  \"vat</w>\": 18363,\n  \"vatican</w>\": 21030,\n  \"vation</w>\": 37884,\n  \"vau\": 6391,\n  \"vaugh\": 25158,\n  \"vaughan</w>\": 21392,\n  \"vaughn</w>\": 29013,\n  \"vaul\": 27469,\n  \"vault</w>\": 15240,\n  \"vaus</w>\": 40217,\n  \"vaux\": 27403,\n  \"vauxhall</w>\": 29173,\n  \"vaw</w>\": 47952,\n  \"vay\": 48000,\n  \"vaz\": 38142,\n  \"vb\": 29365,\n  \"vb</w>\": 8778,\n  \"vball</w>\": 38329,\n  \"vc\": 28670,\n  \"vc</w>\": 7952,\n  \"vcs</w>\": 43528,\n  \"vcu</w>\": 40102,\n  \"vd</w>\": 9515,\n  \"vday</w>\": 42055,\n  \"ve\": 673,\n  \"ve</w>\": 563,\n  \"vea</w>\": 43798,\n  \"veal</w>\": 36616,\n  \"veau</w>\": 24419,\n  \"vec\": 19912,\n  \"vector\": 40453,\n  \"vector</w>\": 21533,\n  \"ved\": 19515,\n  \"ved</w>\": 1102,\n  \"veda</w>\": 44401,\n  \"vedere</w>\": 45660,\n  \"vedi</w>\": 47971,\n  \"vee\": 35708,\n  \"vee</w>\": 17073,\n  \"veen</w>\": 22432,\n  \"veer\": 21243,\n  \"veer</w>\": 22058,\n  \"veg\": 9048,\n  \"veg</w>\": 16460,\n  \"vega</w>\": 22930,\n  \"vegan\": 15705,\n  \"vegan</w>\": 5615,\n  \"vegans</w>\": 48514,\n  \"vegas\": 20288,\n  \"vegas</w>\": 4413,\n  \"vege\": 6219,\n  \"vegetable</w>\": 15725,\n  \"vegetables</w>\": 14119,\n  \"vegetarian</w>\": 14600,\n  \"vegetation</w>\": 33947,\n  \"veggie</w>\": 19401,\n  \"veggies</w>\": 16767,\n  \"vehic\": 3973,\n  \"vehicle</w>\": 5299,\n  \"vehicles</w>\": 8361,\n  \"veil</w>\": 23516,\n  \"vein</w>\": 29169,\n  \"veins</w>\": 28867,\n  \"veit</w>\": 30620,\n  \"vel\": 942,\n  \"vel</w>\": 1287,\n  \"vela</w>\": 34898,\n  \"veld</w>\": 34011,\n  \"veled</w>\": 15370,\n  \"veli</w>\": 49166,\n  \"veling</w>\": 37970,\n  \"vell\": 21173,\n  \"vell</w>\": 32997,\n  \"velo\": 14357,\n  \"velo</w>\": 33850,\n  \"velocity</w>\": 23811,\n  \"vels</w>\": 5109,\n  \"velve\": 37849,\n  \"velvet</w>\": 11063,\n  \"vely</w>\": 1708,\n  \"vember</w>\": 3477,\n  \"vement</w>\": 3129,\n  \"vements</w>\": 11104,\n  \"ven\": 1240,\n  \"ven</w>\": 1638,\n  \"vena</w>\": 47442,\n  \"vend\": 10851,\n  \"vending</w>\": 29202,\n  \"vendor</w>\": 21261,\n  \"vendors</w>\": 20353,\n  \"vene\": 5365,\n  \"veness</w>\": 10516,\n  \"venetian</w>\": 34336,\n  \"venezia</w>\": 34139,\n  \"venezu\": 10939,\n  \"venezuela</w>\": 12839,\n  \"venezuelan</w>\": 34699,\n  \"veng</w>\": 31526,\n  \"venge\": 27757,\n  \"vengeance</w>\": 32057,\n  \"veni</w>\": 31142,\n  \"venice</w>\": 11010,\n  \"vening</w>\": 47532,\n  \"venison</w>\": 40037,\n  \"venom\": 42491,\n  \"venom</w>\": 21588,\n  \"vens</w>\": 20884,\n  \"vent\": 4373,\n  \"vent</w>\": 5687,\n  \"ventil\": 39522,\n  \"ventilation</w>\": 35066,\n  \"venting</w>\": 15731,\n  \"vention</w>\": 4122,\n  \"vents</w>\": 12833,\n  \"ventu\": 48217,\n  \"ventura</w>\": 20921,\n  \"venture\": 37046,\n  \"venture</w>\": 12543,\n  \"ventures</w>\": 20829,\n  \"venue</w>\": 5097,\n  \"venues</w>\": 18120,\n  \"venus</w>\": 14691,\n  \"ver\": 624,\n  \"ver</w>\": 667,\n  \"vera</w>\": 13350,\n  \"verage</w>\": 3725,\n  \"verb</w>\": 34952,\n  \"verbal</w>\": 26522,\n  \"verbally</w>\": 39985,\n  \"verbs</w>\": 45687,\n  \"verde</w>\": 16935,\n  \"verdi</w>\": 42306,\n  \"verdict</w>\": 18030,\n  \"vere\": 11135,\n  \"vere</w>\": 34707,\n  \"vered</w>\": 2868,\n  \"verge</w>\": 23913,\n  \"veri\": 11638,\n  \"verification</w>\": 33521,\n  \"verified</w>\": 22555,\n  \"verify</w>\": 34722,\n  \"vering</w>\": 4630,\n  \"veriz\": 19707,\n  \"verizon</w>\": 21532,\n  \"verma</w>\": 41261,\n  \"vermont</w>\": 19241,\n  \"vern\": 2214,\n  \"vern</w>\": 12586,\n  \"verne</w>\": 45553,\n  \"vernon</w>\": 18348,\n  \"vero\": 45217,\n  \"vero</w>\": 38208,\n  \"verona</w>\": 31819,\n  \"veronic\": 39551,\n  \"veronica</w>\": 24039,\n  \"vers\": 1219,\n  \"vers</w>\": 2094,\n  \"versa</w>\": 35765,\n  \"versace</w>\": 25422,\n  \"versail\": 29857,\n  \"versailles</w>\": 32129,\n  \"versary</w>\": 2940,\n  \"versatile</w>\": 18110,\n  \"versatility</w>\": 41340,\n  \"verse\": 39466,\n  \"verse</w>\": 3131,\n  \"verses</w>\": 30769,\n  \"versi\": 8934,\n  \"version</w>\": 3273,\n  \"versions</w>\": 16190,\n  \"versity</w>\": 1906,\n  \"verst\": 42484,\n  \"verstappen</w>\": 45064,\n  \"versus</w>\": 14548,\n  \"versy</w>\": 18522,\n  \"vert</w>\": 11742,\n  \"verte\": 35158,\n  \"verted</w>\": 48173,\n  \"verti\": 30459,\n  \"vertical</w>\": 14293,\n  \"vertigo</w>\": 42477,\n  \"verton</w>\": 40632,\n  \"verts</w>\": 37265,\n  \"very\": 11698,\n  \"very</w>\": 1070,\n  \"veryday</w>\": 37944,\n  \"verything</w>\": 45174,\n  \"ves\": 9616,\n  \"ves</w>\": 1003,\n  \"vesmatter</w>\": 47636,\n  \"vespa</w>\": 46029,\n  \"vessel</w>\": 16387,\n  \"vessels</w>\": 22822,\n  \"vest\": 31657,\n  \"vest</w>\": 12473,\n  \"vesti\": 40349,\n  \"vests</w>\": 41906,\n  \"vet\": 12294,\n  \"vet</w>\": 5951,\n  \"veter\": 4330,\n  \"veteran\": 20797,\n  \"veteran</w>\": 8814,\n  \"veterans</w>\": 7092,\n  \"veteransday</w>\": 26409,\n  \"veterin\": 43959,\n  \"veterinary</w>\": 25458,\n  \"veto</w>\": 36570,\n  \"vets</w>\": 13113,\n  \"vette</w>\": 17045,\n  \"vettel</w>\": 28700,\n  \"vevo</w>\": 35141,\n  \"vex\": 36187,\n  \"vex</w>\": 43978,\n  \"vey\": 34792,\n  \"vey</w>\": 3884,\n  \"vez\": 35987,\n  \"vez</w>\": 17226,\n  \"vf</w>\": 25966,\n  \"vfl</w>\": 33726,\n  \"vfx</w>\": 30149,\n  \"vg\": 40591,\n  \"vg</w>\": 22346,\n  \"vh\": 46953,\n  \"vh</w>\": 23847,\n  \"vhs</w>\": 21932,\n  \"vi\": 603,\n  \"vi</w>\": 4259,\n  \"via</w>\": 1048,\n  \"viable</w>\": 25752,\n  \"viadu\": 37012,\n  \"viaduct</w>\": 39113,\n  \"vial</w>\": 39951,\n  \"vian\": 40487,\n  \"vian</w>\": 16124,\n  \"vibe\": 37974,\n  \"vibe</w>\": 12813,\n  \"vibes</w>\": 7764,\n  \"vibr\": 9527,\n  \"vibrant</w>\": 14270,\n  \"vibration</w>\": 37456,\n  \"vibrations</w>\": 43660,\n  \"vic\": 1555,\n  \"vic</w>\": 4412,\n  \"vica</w>\": 46168,\n  \"vicar</w>\": 43899,\n  \"vice\": 43572,\n  \"vice</w>\": 6931,\n  \"vicente</w>\": 39411,\n  \"vices</w>\": 8332,\n  \"vich</w>\": 24143,\n  \"vici\": 46670,\n  \"vicious</w>\": 25177,\n  \"vick\": 15116,\n  \"vick</w>\": 29704,\n  \"vickers</w>\": 48452,\n  \"vicki</w>\": 34927,\n  \"vicky\": 37176,\n  \"vicky</w>\": 25788,\n  \"victi\": 6861,\n  \"victim</w>\": 9133,\n  \"victims</w>\": 7131,\n  \"victor\": 2423,\n  \"victor</w>\": 10690,\n  \"victori\": 17555,\n  \"victoria\": 39286,\n  \"victoria</w>\": 6127,\n  \"victorian</w>\": 12350,\n  \"victorias\": 47791,\n  \"victories</w>\": 24577,\n  \"victorious</w>\": 24033,\n  \"victory\": 36668,\n  \"victory</w>\": 4127,\n  \"vid\": 17233,\n  \"vid</w>\": 9284,\n  \"vida</w>\": 19015,\n  \"vidal</w>\": 36678,\n  \"vide\": 1334,\n  \"vide</w>\": 45244,\n  \"video\": 9478,\n  \"video</w>\": 1455,\n  \"videogame</w>\": 35097,\n  \"videogames</w>\": 21149,\n  \"videos</w>\": 6081,\n  \"vids</w>\": 23035,\n  \"vidy\": 29639,\n  \"vidya</w>\": 45264,\n  \"vie\": 922,\n  \"vie</w>\": 8538,\n  \"vien\": 36493,\n  \"vienna</w>\": 12670,\n  \"vier\": 15352,\n  \"vier</w>\": 11987,\n  \"viera</w>\": 21114,\n  \"viernes</w>\": 33826,\n  \"vies</w>\": 22458,\n  \"viest</w>\": 31979,\n  \"viet\": 17558,\n  \"viet</w>\": 13128,\n  \"vietnam\": 19558,\n  \"vietnam</w>\": 8623,\n  \"vietnamese</w>\": 22382,\n  \"view\": 12004,\n  \"view</w>\": 1093,\n  \"viewed</w>\": 7226,\n  \"viewer</w>\": 15061,\n  \"viewers</w>\": 14275,\n  \"viewing</w>\": 7124,\n  \"viewpoint</w>\": 41604,\n  \"views</w>\": 2758,\n  \"vig\": 8549,\n  \"vig</w>\": 45083,\n  \"vigil\": 21538,\n  \"vigil</w>\": 19896,\n  \"vigilant</w>\": 43026,\n  \"vigne\": 40447,\n  \"vigne</w>\": 34581,\n  \"vigo</w>\": 44097,\n  \"vigor\": 26781,\n  \"vii</w>\": 17759,\n  \"viii</w>\": 20414,\n  \"vijay\": 12014,\n  \"vijay</w>\": 10823,\n  \"vijaysethu\": 47966,\n  \"vik\": 10764,\n  \"vik</w>\": 17181,\n  \"vika</w>\": 39562,\n  \"vikas</w>\": 37116,\n  \"viking\": 26663,\n  \"viking</w>\": 15897,\n  \"vikings</w>\": 11713,\n  \"vikram\": 41136,\n  \"vikram</w>\": 24314,\n  \"viktor</w>\": 36101,\n  \"vil\": 1338,\n  \"vil</w>\": 3000,\n  \"vila</w>\": 37505,\n  \"vile</w>\": 27247,\n  \"vill\": 10481,\n  \"vill</w>\": 45698,\n  \"villa\": 3203,\n  \"villa</w>\": 7754,\n  \"village\": 34584,\n  \"village</w>\": 4331,\n  \"villagers</w>\": 34283,\n  \"villages</w>\": 17621,\n  \"villain</w>\": 15425,\n  \"villains</w>\": 25271,\n  \"villanova</w>\": 44025,\n  \"villar\": 35164,\n  \"villas</w>\": 28907,\n  \"ville\": 11110,\n  \"ville</w>\": 1930,\n  \"villen\": 46177,\n  \"villi\": 36907,\n  \"vimeo</w>\": 48720,\n  \"vin\": 1379,\n  \"vin</w>\": 2558,\n  \"vina</w>\": 35682,\n  \"vinai\": 37396,\n  \"vinaigrette</w>\": 39876,\n  \"vinay\": 43952,\n  \"vince\": 32429,\n  \"vince</w>\": 6236,\n  \"vincen\": 33402,\n  \"vincent\": 29069,\n  \"vincent</w>\": 10357,\n  \"vinci</w>\": 30199,\n  \"vind</w>\": 20275,\n  \"vindic\": 39582,\n  \"vine\": 8471,\n  \"vine</w>\": 7721,\n  \"vinegar</w>\": 23834,\n  \"vines</w>\": 21268,\n  \"vineyard</w>\": 16527,\n  \"vineyards</w>\": 23082,\n  \"ving\": 5375,\n  \"ving</w>\": 903,\n  \"vingne</w>\": 42579,\n  \"vings</w>\": 22510,\n  \"vini</w>\": 48119,\n  \"vinnie</w>\": 40885,\n  \"vinny</w>\": 36794,\n  \"vino</w>\": 14509,\n  \"vinod</w>\": 43348,\n  \"vins</w>\": 34820,\n  \"vinson</w>\": 45945,\n  \"vintag\": 10936,\n  \"vintage\": 13654,\n  \"vintage</w>\": 3266,\n  \"viny\": 40990,\n  \"vinyl\": 22835,\n  \"vinyl</w>\": 5754,\n  \"vio\": 11913,\n  \"vio</w>\": 20324,\n  \"viol\": 3164,\n  \"viola</w>\": 27438,\n  \"violate</w>\": 44875,\n  \"violated</w>\": 38192,\n  \"violating</w>\": 37554,\n  \"violation</w>\": 22919,\n  \"violations</w>\": 21969,\n  \"violence</w>\": 5450,\n  \"violent</w>\": 11565,\n  \"violently</w>\": 47758,\n  \"violet</w>\": 16118,\n  \"violets</w>\": 42861,\n  \"violin</w>\": 17058,\n  \"violinist</w>\": 36299,\n  \"vion</w>\": 35496,\n  \"vious</w>\": 6418,\n  \"viously</w>\": 7149,\n  \"vip\": 45714,\n  \"vip</w>\": 7111,\n  \"viper</w>\": 27401,\n  \"vips</w>\": 41149,\n  \"vir\": 1790,\n  \"vir</w>\": 25319,\n  \"vira</w>\": 35910,\n  \"viral</w>\": 11653,\n  \"virat</w>\": 32473,\n  \"virgil</w>\": 39076,\n  \"virgin\": 5651,\n  \"virgin</w>\": 12103,\n  \"virgini\": 43426,\n  \"virginia</w>\": 6728,\n  \"virgo</w>\": 39978,\n  \"viro\": 32301,\n  \"viron\": 38309,\n  \"virtu\": 7977,\n  \"virtual\": 18059,\n  \"virtual</w>\": 7790,\n  \"virtually</w>\": 22475,\n  \"virtualreality</w>\": 32608,\n  \"virtue</w>\": 26860,\n  \"virtues</w>\": 42167,\n  \"virtuoso</w>\": 47027,\n  \"virus</w>\": 11808,\n  \"viruses</w>\": 34830,\n  \"vis\": 1301,\n  \"vis</w>\": 5337,\n  \"visa</w>\": 12802,\n  \"visas</w>\": 41228,\n  \"vise</w>\": 24977,\n  \"vised</w>\": 14810,\n  \"vish\": 12024,\n  \"vish</w>\": 29124,\n  \"vishal</w>\": 33648,\n  \"vishnu</w>\": 37816,\n  \"visi\": 1409,\n  \"visibility</w>\": 15921,\n  \"visible\": 36658,\n  \"visible</w>\": 8626,\n  \"vising</w>\": 37439,\n  \"vision\": 11147,\n  \"vision</w>\": 2515,\n  \"visional</w>\": 24627,\n  \"visionary</w>\": 22959,\n  \"visions</w>\": 13804,\n  \"visit\": 3388,\n  \"visit</w>\": 1600,\n  \"visitation</w>\": 44370,\n  \"visited</w>\": 5580,\n  \"visiting</w>\": 4680,\n  \"visitor</w>\": 13881,\n  \"visitors</w>\": 9160,\n  \"visits</w>\": 8489,\n  \"visitscotland</w>\": 28760,\n  \"visitspain</w>\": 48860,\n  \"vism</w>\": 15514,\n  \"viso</w>\": 46732,\n  \"visor</w>\": 24217,\n  \"vist</w>\": 21436,\n  \"vista</w>\": 13865,\n  \"visu\": 7739,\n  \"visual\": 17004,\n  \"visual</w>\": 7195,\n  \"visualization</w>\": 28500,\n  \"visualize</w>\": 45057,\n  \"visually</w>\": 25743,\n  \"visuals</w>\": 21315,\n  \"viswas\": 36513,\n  \"viswasam</w>\": 47664,\n  \"vit\": 4056,\n  \"vit</w>\": 35580,\n  \"vita</w>\": 15700,\n  \"vital\": 32525,\n  \"vital</w>\": 10585,\n  \"vitality</w>\": 36385,\n  \"vitam\": 9856,\n  \"vitamin</w>\": 13675,\n  \"vitamins</w>\": 22582,\n  \"vito</w>\": 36725,\n  \"vity</w>\": 4893,\n  \"vitz</w>\": 26188,\n  \"vius</w>\": 41571,\n  \"viv\": 21827,\n  \"viv</w>\": 35363,\n  \"viva</w>\": 17399,\n  \"vival\": 35920,\n  \"vive\": 18980,\n  \"vive</w>\": 24004,\n  \"vivek</w>\": 36243,\n  \"vivi\": 11625,\n  \"vivian</w>\": 30129,\n  \"vivid</w>\": 22984,\n  \"vivo\": 28091,\n  \"vivo</w>\": 25888,\n  \"vix\": 28976,\n  \"vix</w>\": 34811,\n  \"vixen</w>\": 38757,\n  \"vixx</w>\": 32106,\n  \"viz\": 28251,\n  \"viz</w>\": 31786,\n  \"vj\": 45439,\n  \"vj</w>\": 30827,\n  \"vk</w>\": 41893,\n  \"vl\": 37580,\n  \"vl</w>\": 36442,\n  \"vla\": 23686,\n  \"vlad</w>\": 41089,\n  \"vladi\": 19320,\n  \"vladimir</w>\": 21702,\n  \"vlive</w>\": 46797,\n  \"vlog</w>\": 18894,\n  \"vm\": 16204,\n  \"vm</w>\": 20269,\n  \"vma</w>\": 35666,\n  \"vmas</w>\": 30236,\n  \"vmware</w>\": 29615,\n  \"vn\": 47098,\n  \"vn</w>\": 25076,\n  \"vo\": 947,\n  \"vo</w>\": 3951,\n  \"voc\": 4105,\n  \"voc</w>\": 20855,\n  \"vocab\": 21346,\n  \"vocabulary</w>\": 23804,\n  \"vocal\": 34037,\n  \"vocal</w>\": 13147,\n  \"vocali\": 19134,\n  \"vocalist</w>\": 22102,\n  \"vocals</w>\": 17666,\n  \"vocation</w>\": 20521,\n  \"vocational</w>\": 33751,\n  \"vod\": 11820,\n  \"vod</w>\": 35854,\n  \"vodaf\": 28436,\n  \"vodafone</w>\": 38695,\n  \"vodka</w>\": 13646,\n  \"vogel</w>\": 44960,\n  \"vogue\": 24418,\n  \"vogue</w>\": 13178,\n  \"voic\": 29185,\n  \"voice\": 13179,\n  \"voice</w>\": 3386,\n  \"voiced</w>\": 34352,\n  \"voiceof\": 44966,\n  \"voiceover</w>\": 41979,\n  \"voices</w>\": 9144,\n  \"void</w>\": 21561,\n  \"voip</w>\": 42762,\n  \"voir</w>\": 16036,\n  \"vol\": 1343,\n  \"vol</w>\": 7945,\n  \"volatile</w>\": 41022,\n  \"volatility</w>\": 32355,\n  \"volcan\": 9916,\n  \"volcanic</w>\": 24072,\n  \"volcano</w>\": 14581,\n  \"volcanoes</w>\": 38055,\n  \"voli</w>\": 40138,\n  \"volk\": 13432,\n  \"volkswag\": 14407,\n  \"volkswagen</w>\": 15342,\n  \"volley\": 7130,\n  \"volley</w>\": 34656,\n  \"volleyball</w>\": 7458,\n  \"volo</w>\": 44791,\n  \"vols</w>\": 20404,\n  \"volt</w>\": 26430,\n  \"volta\": 29879,\n  \"volta</w>\": 33480,\n  \"voltage</w>\": 23118,\n  \"voltron</w>\": 39314,\n  \"volu\": 3563,\n  \"volume</w>\": 8284,\n  \"volumes</w>\": 22651,\n  \"volun\": 3356,\n  \"voluntar\": 48823,\n  \"voluntary</w>\": 23815,\n  \"volunte\": 3556,\n  \"volunteer\": 32331,\n  \"volunteer</w>\": 7114,\n  \"volunteered</w>\": 34000,\n  \"volunteering</w>\": 14902,\n  \"volunteers</w>\": 5939,\n  \"volution</w>\": 24043,\n  \"volved</w>\": 42888,\n  \"volvo\": 39991,\n  \"volvo</w>\": 16906,\n  \"vom\": 24198,\n  \"vomit</w>\": 46485,\n  \"von\": 11269,\n  \"von</w>\": 8497,\n  \"voo\": 19497,\n  \"voodoo</w>\": 26869,\n  \"voor\": 34291,\n  \"voor</w>\": 34464,\n  \"vor\": 8338,\n  \"vor</w>\": 5308,\n  \"vore</w>\": 18215,\n  \"vortex</w>\": 30071,\n  \"vos</w>\": 16863,\n  \"vot</w>\": 48558,\n  \"vote\": 6830,\n  \"vote</w>\": 2187,\n  \"voted</w>\": 6454,\n  \"votel\": 41379,\n  \"voter\": 44474,\n  \"voter</w>\": 14065,\n  \"voters</w>\": 8925,\n  \"votes</w>\": 6693,\n  \"voting</w>\": 5756,\n  \"vou\": 11045,\n  \"voucher</w>\": 18190,\n  \"vouchers</w>\": 23384,\n  \"vous</w>\": 10636,\n  \"vow</w>\": 34787,\n  \"vows</w>\": 21677,\n  \"vox\": 29215,\n  \"vox</w>\": 22692,\n  \"voy\": 10622,\n  \"voy</w>\": 15021,\n  \"voyage</w>\": 16299,\n  \"voyager</w>\": 29669,\n  \"vp\": 32758,\n  \"vp</w>\": 3896,\n  \"vpn</w>\": 38212,\n  \"vr\": 16840,\n  \"vr</w>\": 5921,\n  \"vre\": 44500,\n  \"vre</w>\": 17501,\n  \"vs\": 11385,\n  \"vs</w>\": 1547,\n  \"vsco\": 26752,\n  \"vsco</w>\": 32822,\n  \"vscocam</w>\": 34694,\n  \"vsky</w>\": 37791,\n  \"vss</w>\": 31919,\n  \"vt\": 31732,\n  \"vt</w>\": 10291,\n  \"vu\": 8664,\n  \"vu</w>\": 13230,\n  \"vue\": 43915,\n  \"vue</w>\": 19313,\n  \"vuel\": 31312,\n  \"vuelta</w>\": 43856,\n  \"vuitton</w>\": 26705,\n  \"vul\": 6856,\n  \"vulcan</w>\": 34767,\n  \"vulner\": 11213,\n  \"vulnerability</w>\": 28797,\n  \"vulnerable</w>\": 14332,\n  \"vulture</w>\": 34593,\n  \"vultures</w>\": 47197,\n  \"vv\": 19264,\n  \"vv</w>\": 35686,\n  \"vw\": 28650,\n  \"vw</w>\": 13250,\n  \"vx</w>\": 47644,\n  \"vy\": 11566,\n  \"vy</w>\": 5157,\n  \"w\": 86,\n  \"w</w>\": 342,\n  \"wa\": 869,\n  \"wa</w>\": 2663,\n  \"waa</w>\": 35874,\n  \"wab\": 19893,\n  \"wab</w>\": 36852,\n  \"wac\": 27445,\n  \"wac</w>\": 37947,\n  \"wack\": 22880,\n  \"wack</w>\": 38270,\n  \"wacky</w>\": 34318,\n  \"waco</w>\": 36035,\n  \"wad\": 11133,\n  \"wad</w>\": 30451,\n  \"wada</w>\": 40006,\n  \"wade\": 40237,\n  \"wade</w>\": 14180,\n  \"wadi</w>\": 37253,\n  \"waf\": 17638,\n  \"wafc</w>\": 49086,\n  \"waff\": 13940,\n  \"waffle</w>\": 20375,\n  \"waffles</w>\": 24205,\n  \"wag\": 5764,\n  \"wag</w>\": 19177,\n  \"wage</w>\": 10716,\n  \"wager</w>\": 43430,\n  \"wages</w>\": 19114,\n  \"wagner</w>\": 18081,\n  \"wagon</w>\": 13260,\n  \"wagons</w>\": 47944,\n  \"wags</w>\": 48580,\n  \"wah\": 24812,\n  \"wah</w>\": 18014,\n  \"wahl\": 27500,\n  \"wahlberg</w>\": 35151,\n  \"wahoo</w>\": 47995,\n  \"wai\": 11469,\n  \"wai</w>\": 21569,\n  \"waifu</w>\": 46551,\n  \"waikiki</w>\": 44907,\n  \"wain\": 28358,\n  \"wain</w>\": 20120,\n  \"wainwright</w>\": 45878,\n  \"waist\": 36946,\n  \"waist</w>\": 18459,\n  \"wait\": 10021,\n  \"wait</w>\": 1885,\n  \"waite</w>\": 24272,\n  \"waited</w>\": 18492,\n  \"waiter</w>\": 32946,\n  \"waitin</w>\": 44482,\n  \"waiting</w>\": 2680,\n  \"waitress</w>\": 39760,\n  \"waitrose</w>\": 37164,\n  \"waits</w>\": 21361,\n  \"waiver</w>\": 42866,\n  \"waj</w>\": 49367,\n  \"wak\": 11172,\n  \"wak</w>\": 36015,\n  \"waka</w>\": 42696,\n  \"wake\": 10501,\n  \"wake</w>\": 5731,\n  \"wakefield</w>\": 26358,\n  \"wakes</w>\": 29108,\n  \"wakeup\": 26328,\n  \"wakeup</w>\": 35380,\n  \"wakeupamerica</w>\": 37474,\n  \"waking</w>\": 13025,\n  \"wal\": 1056,\n  \"wal</w>\": 6903,\n  \"wala</w>\": 16468,\n  \"walang</w>\": 49180,\n  \"walcott</w>\": 45744,\n  \"wald\": 46930,\n  \"wald</w>\": 15724,\n  \"walden</w>\": 39311,\n  \"waldo</w>\": 32440,\n  \"waldorf</w>\": 38227,\n  \"wale\": 41247,\n  \"wale</w>\": 20336,\n  \"wales\": 25383,\n  \"wales</w>\": 5110,\n  \"walgreens</w>\": 38490,\n  \"wali\": 37576,\n  \"wali</w>\": 14768,\n  \"walia</w>\": 44455,\n  \"walk\": 8588,\n  \"walk</w>\": 2374,\n  \"walkaway</w>\": 48255,\n  \"walked</w>\": 8667,\n  \"walker\": 24735,\n  \"walker</w>\": 6150,\n  \"walkers</w>\": 23366,\n  \"walkin</w>\": 45792,\n  \"walking\": 12644,\n  \"walking</w>\": 3941,\n  \"walkingdead</w>\": 14948,\n  \"walkout</w>\": 47470,\n  \"walks</w>\": 8192,\n  \"walkway</w>\": 36614,\n  \"wall\": 4316,\n  \"wall</w>\": 2569,\n  \"walla\": 26007,\n  \"walla</w>\": 39982,\n  \"wallabies</w>\": 48926,\n  \"wallace</w>\": 12535,\n  \"wallart</w>\": 36223,\n  \"walled</w>\": 36567,\n  \"waller</w>\": 45340,\n  \"wallet</w>\": 12154,\n  \"wallets</w>\": 38550,\n  \"walleye</w>\": 49099,\n  \"wallis</w>\": 42206,\n  \"wallpaper</w>\": 10560,\n  \"wallpapers</w>\": 29841,\n  \"walls</w>\": 8258,\n  \"wallstreet</w>\": 45341,\n  \"wally</w>\": 26024,\n  \"walmart</w>\": 11972,\n  \"walnut</w>\": 16310,\n  \"walnuts</w>\": 38294,\n  \"walsall</w>\": 42935,\n  \"walsh</w>\": 12856,\n  \"walt\": 23535,\n  \"walt</w>\": 14312,\n  \"waltdisneyworld</w>\": 36505,\n  \"walter\": 31156,\n  \"walter</w>\": 10645,\n  \"walters</w>\": 25532,\n  \"waltham\": 42742,\n  \"waltham</w>\": 45581,\n  \"walton</w>\": 19485,\n  \"waltz</w>\": 35982,\n  \"wam\": 20503,\n  \"wamy</w>\": 46970,\n  \"wan\": 2060,\n  \"wan</w>\": 4557,\n  \"wana</w>\": 30830,\n  \"wand\": 14636,\n  \"wand</w>\": 28559,\n  \"wanda</w>\": 25070,\n  \"wander\": 12985,\n  \"wander</w>\": 24473,\n  \"wandered</w>\": 46593,\n  \"wanderers</w>\": 27540,\n  \"wandering</w>\": 22597,\n  \"wanderlust</w>\": 16129,\n  \"wane</w>\": 27459,\n  \"wang\": 19731,\n  \"wang</w>\": 11900,\n  \"wani</w>\": 21674,\n  \"wankers</w>\": 42189,\n  \"wann\": 23622,\n  \"wanna\": 35940,\n  \"wanna</w>\": 3836,\n  \"wannabe</w>\": 40730,\n  \"wannaone</w>\": 44832,\n  \"want\": 18356,\n  \"want</w>\": 1280,\n  \"wanted</w>\": 3146,\n  \"wanting</w>\": 12801,\n  \"wants</w>\": 3107,\n  \"wap\": 27393,\n  \"wap</w>\": 30368,\n  \"waq\": 47512,\n  \"war\": 984,\n  \"war</w>\": 2238,\n  \"wara</w>\": 21631,\n  \"warbler</w>\": 33891,\n  \"warcraft</w>\": 13660,\n  \"ward\": 7728,\n  \"ward</w>\": 1460,\n  \"warden</w>\": 27798,\n  \"wardly</w>\": 30780,\n  \"wardro\": 14247,\n  \"wardrobe</w>\": 15020,\n  \"wards</w>\": 2593,\n  \"ware\": 7416,\n  \"ware</w>\": 4476,\n  \"wareagle</w>\": 35716,\n  \"warehouse</w>\": 13054,\n  \"wareness\": 41601,\n  \"wareness</w>\": 35870,\n  \"wares</w>\": 30692,\n  \"warfare</w>\": 15739,\n  \"warhammer</w>\": 26832,\n  \"warhol</w>\": 27554,\n  \"wari</w>\": 20977,\n  \"wark\": 46346,\n  \"wark</w>\": 15164,\n  \"warlock</w>\": 42455,\n  \"warm\": 14725,\n  \"warm</w>\": 3616,\n  \"warmed</w>\": 36695,\n  \"warmer</w>\": 14328,\n  \"warmest</w>\": 30910,\n  \"warming</w>\": 8606,\n  \"warmly</w>\": 45322,\n  \"warmongers</w>\": 33205,\n  \"warms</w>\": 32917,\n  \"warmth</w>\": 19636,\n  \"warmup</w>\": 29904,\n  \"warmups</w>\": 44094,\n  \"warn</w>\": 19360,\n  \"warned</w>\": 16409,\n  \"warner\": 28564,\n  \"warner</w>\": 13402,\n  \"warning</w>\": 4994,\n  \"warnings</w>\": 18098,\n  \"warns</w>\": 14086,\n  \"waron\": 38947,\n  \"warp</w>\": 32411,\n  \"warped</w>\": 32125,\n  \"warran\": 17392,\n  \"warrant</w>\": 22554,\n  \"warrants</w>\": 45677,\n  \"warranty</w>\": 23999,\n  \"warren\": 23143,\n  \"warren</w>\": 9234,\n  \"warri\": 4109,\n  \"warrington</w>\": 31203,\n  \"warrior\": 18998,\n  \"warrior</w>\": 8148,\n  \"warriors</w>\": 6421,\n  \"wars</w>\": 3931,\n  \"warsaw</w>\": 21072,\n  \"warship</w>\": 47846,\n  \"wart\": 43535,\n  \"wart</w>\": 7346,\n  \"wartime</w>\": 42998,\n  \"warts</w>\": 21781,\n  \"warwick\": 23081,\n  \"warwick</w>\": 22215,\n  \"warwickshire</w>\": 36766,\n  \"wary</w>\": 36213,\n  \"was\": 3398,\n  \"was</w>\": 739,\n  \"wasabi</w>\": 47334,\n  \"wash\": 3363,\n  \"wash</w>\": 7810,\n  \"washed</w>\": 14092,\n  \"washer</w>\": 24085,\n  \"washes</w>\": 38950,\n  \"washing</w>\": 13029,\n  \"washington\": 16774,\n  \"washington</w>\": 4365,\n  \"washingtondc</w>\": 40225,\n  \"washingtonpost</w>\": 28426,\n  \"wasn</w>\": 5044,\n  \"wasnt</w>\": 29607,\n  \"wasp</w>\": 24889,\n  \"wasps</w>\": 35300,\n  \"wassup</w>\": 45708,\n  \"wast\": 28886,\n  \"waste\": 18157,\n  \"waste</w>\": 6065,\n  \"wasted</w>\": 18278,\n  \"wasteland</w>\": 44035,\n  \"wastewater</w>\": 34463,\n  \"wasting</w>\": 25577,\n  \"wat\": 800,\n  \"wat</w>\": 10621,\n  \"wata</w>\": 42509,\n  \"watch\": 7046,\n  \"watch</w>\": 1239,\n  \"watchdog</w>\": 35303,\n  \"watched</w>\": 5775,\n  \"watcher</w>\": 35971,\n  \"watchers</w>\": 28443,\n  \"watches</w>\": 9521,\n  \"watchin</w>\": 32432,\n  \"watching</w>\": 2113,\n  \"water\": 2505,\n  \"water</w>\": 1573,\n  \"watercolor</w>\": 14211,\n  \"watercolour</w>\": 18377,\n  \"waterfall</w>\": 16403,\n  \"waterfalls</w>\": 26692,\n  \"waterford</w>\": 24448,\n  \"waterfront</w>\": 16605,\n  \"waterhouse</w>\": 45072,\n  \"watering</w>\": 19871,\n  \"waterloo</w>\": 17465,\n  \"watermelon</w>\": 19889,\n  \"waterproof</w>\": 17613,\n  \"waters</w>\": 7753,\n  \"watershed</w>\": 33204,\n  \"waterstones</w>\": 45014,\n  \"waterways</w>\": 37395,\n  \"watford</w>\": 23162,\n  \"watfordfc</w>\": 37328,\n  \"wati</w>\": 27966,\n  \"watkins</w>\": 22539,\n  \"watson\": 35490,\n  \"watson</w>\": 9294,\n  \"watt\": 22899,\n  \"watt</w>\": 15805,\n  \"wattpad</w>\": 32351,\n  \"watts</w>\": 14750,\n  \"wau\": 9479,\n  \"wav\": 6054,\n  \"wave\": 17530,\n  \"wave</w>\": 4535,\n  \"waved</w>\": 44657,\n  \"waver\": 25997,\n  \"waves</w>\": 7882,\n  \"waving</w>\": 26545,\n  \"wavy</w>\": 31941,\n  \"waw\": 22039,\n  \"wawrinka</w>\": 48414,\n  \"wawx</w>\": 47387,\n  \"wax\": 18789,\n  \"wax</w>\": 11910,\n  \"waxing</w>\": 38781,\n  \"way\": 3079,\n  \"way</w>\": 923,\n  \"wayback\": 47822,\n  \"wayne\": 23632,\n  \"wayne</w>\": 7003,\n  \"ways</w>\": 1248,\n  \"waz\": 20889,\n  \"waz</w>\": 48835,\n  \"wb\": 10726,\n  \"wb</w>\": 12377,\n  \"wba</w>\": 22675,\n  \"wbb</w>\": 14482,\n  \"wbc</w>\": 26745,\n  \"wbo</w>\": 49053,\n  \"wbz</w>\": 35471,\n  \"wc\": 4842,\n  \"wc</w>\": 5755,\n  \"wcc\": 47166,\n  \"wcc</w>\": 34926,\n  \"wcpo</w>\": 46624,\n  \"wcs</w>\": 39916,\n  \"wcvb</w>\": 32709,\n  \"wcw</w>\": 9041,\n  \"wd\": 15998,\n  \"wd</w>\": 7494,\n  \"wdw</w>\": 40334,\n  \"we\": 598,\n  \"we</w>\": 649,\n  \"wea\": 37146,\n  \"wea</w>\": 47301,\n  \"weak\": 12128,\n  \"weak</w>\": 10128,\n  \"weaker</w>\": 39735,\n  \"weakness</w>\": 21448,\n  \"weaknesses</w>\": 43487,\n  \"weal\": 14759,\n  \"wealth\": 33150,\n  \"wealth</w>\": 7904,\n  \"wealthy</w>\": 22617,\n  \"weap\": 6156,\n  \"weapon\": 42612,\n  \"weapon</w>\": 10537,\n  \"weapons</w>\": 10007,\n  \"wear\": 12206,\n  \"wear</w>\": 2839,\n  \"wearab\": 22983,\n  \"wearable\": 44943,\n  \"wearable</w>\": 24973,\n  \"wearables</w>\": 30319,\n  \"weare\": 4264,\n  \"weare</w>\": 27867,\n  \"weareall\": 45980,\n  \"wearec\": 43620,\n  \"wearen\": 45635,\n  \"weareone\": 16149,\n  \"weareoneexo</w>\": 16448,\n  \"wearethe\": 40242,\n  \"wearing</w>\": 3309,\n  \"wears</w>\": 11869,\n  \"weary</w>\": 38766,\n  \"weasel</w>\": 44308,\n  \"weather\": 8808,\n  \"weather</w>\": 2237,\n  \"weathercee</w>\": 44980,\n  \"weatherchannel</w>\": 42138,\n  \"weav\": 22260,\n  \"weave</w>\": 22450,\n  \"weaver</w>\": 20297,\n  \"weaving</w>\": 27131,\n  \"web\": 2055,\n  \"web</w>\": 4601,\n  \"webb</w>\": 15708,\n  \"webber</w>\": 34248,\n  \"webcam\": 24211,\n  \"webcam</w>\": 22589,\n  \"webcamtoy</w>\": 27719,\n  \"webcast</w>\": 28256,\n  \"webcomic</w>\": 34286,\n  \"webcomics</w>\": 39811,\n  \"webdesign</w>\": 20470,\n  \"webdev</w>\": 37000,\n  \"webdevelopment</w>\": 47553,\n  \"weber</w>\": 20179,\n  \"webin\": 8460,\n  \"webinar</w>\": 8921,\n  \"webinars</w>\": 47755,\n  \"webpage</w>\": 46964,\n  \"webs</w>\": 32829,\n  \"webseries</w>\": 44819,\n  \"website</w>\": 3364,\n  \"websites</w>\": 19278,\n  \"webster</w>\": 19471,\n  \"websummit</w>\": 48069,\n  \"wec</w>\": 33152,\n  \"wechat</w>\": 46124,\n  \"wed\": 1687,\n  \"wed</w>\": 3478,\n  \"wedd\": 7576,\n  \"wedding\": 11204,\n  \"wedding</w>\": 3101,\n  \"weddings</w>\": 15964,\n  \"wedge</w>\": 21446,\n  \"wedges</w>\": 33179,\n  \"wedne\": 2380,\n  \"wednesday\": 9311,\n  \"wednesday</w>\": 2689,\n  \"wednesdaymotivation</w>\": 37860,\n  \"wednesdays</w>\": 24943,\n  \"wednesdaywisdom</w>\": 11445,\n  \"wedo</w>\": 43432,\n  \"weds</w>\": 19107,\n  \"wee\": 716,\n  \"wee</w>\": 8288,\n  \"weed\": 36935,\n  \"weed</w>\": 8015,\n  \"weeds</w>\": 26326,\n  \"week\": 1286,\n  \"week</w>\": 994,\n  \"weekday</w>\": 29244,\n  \"weekdays</w>\": 44330,\n  \"weekend\": 17205,\n  \"weekend</w>\": 1456,\n  \"weekender</w>\": 36547,\n  \"weekends</w>\": 14564,\n  \"weekly\": 34652,\n  \"weekly</w>\": 5885,\n  \"weeknd</w>\": 29925,\n  \"weeks</w>\": 2898,\n  \"weeksary</w>\": 24628,\n  \"ween\": 17517,\n  \"ween</w>\": 1599,\n  \"weep</w>\": 39270,\n  \"weeping</w>\": 36629,\n  \"weer</w>\": 32491,\n  \"weet</w>\": 17742,\n  \"weets</w>\": 13454,\n  \"wef</w>\": 23313,\n  \"weg\": 47867,\n  \"weg</w>\": 47561,\n  \"wego\": 44784,\n  \"wego</w>\": 28220,\n  \"weh\": 48458,\n  \"weh</w>\": 40313,\n  \"weho</w>\": 47798,\n  \"wei\": 6958,\n  \"wei</w>\": 20952,\n  \"weibo</w>\": 20613,\n  \"weigh\": 10565,\n  \"weigh</w>\": 17346,\n  \"weighed</w>\": 33210,\n  \"weighing</w>\": 24455,\n  \"weighs</w>\": 20481,\n  \"weight\": 12723,\n  \"weight</w>\": 3868,\n  \"weighted</w>\": 43179,\n  \"weightlifting</w>\": 36164,\n  \"weightloss</w>\": 20359,\n  \"weights</w>\": 21374,\n  \"weil</w>\": 43720,\n  \"weiler</w>\": 42203,\n  \"wein\": 29134,\n  \"wein</w>\": 37684,\n  \"weiner</w>\": 38822,\n  \"weinstein</w>\": 34367,\n  \"weir\": 11299,\n  \"weir</w>\": 25517,\n  \"weird\": 27981,\n  \"weird</w>\": 5613,\n  \"weirdest</w>\": 29482,\n  \"weirdo</w>\": 32476,\n  \"weis\": 26251,\n  \"weiser</w>\": 34833,\n  \"weiss</w>\": 24794,\n  \"wel\": 1267,\n  \"wel</w>\": 8042,\n  \"welch</w>\": 25820,\n  \"welcom\": 11578,\n  \"welcome\": 18318,\n  \"welcome</w>\": 1881,\n  \"welcomed</w>\": 12590,\n  \"welcomes</w>\": 9304,\n  \"welcometo\": 47511,\n  \"welcoming</w>\": 8775,\n  \"weld</w>\": 39776,\n  \"welding</w>\": 24956,\n  \"welfare</w>\": 12129,\n  \"well\": 3277,\n  \"well</w>\": 1123,\n  \"wellbeing</w>\": 14273,\n  \"weller</w>\": 40921,\n  \"welling</w>\": 49165,\n  \"wellington</w>\": 15389,\n  \"wellness\": 40574,\n  \"wellness</w>\": 9904,\n  \"wells\": 42705,\n  \"wells</w>\": 9804,\n  \"welove\": 13573,\n  \"welp</w>\": 28391,\n  \"wels</w>\": 20852,\n  \"welsh\": 19173,\n  \"welsh</w>\": 10977,\n  \"welt</w>\": 38595,\n  \"welter\": 37115,\n  \"welterweight</w>\": 39617,\n  \"wemb\": 15213,\n  \"wembley</w>\": 16579,\n  \"wen\": 6590,\n  \"wen</w>\": 11278,\n  \"wend\": 15166,\n  \"wendell</w>\": 42091,\n  \"wendy\": 31616,\n  \"wendy</w>\": 14074,\n  \"wenger</w>\": 21105,\n  \"went\": 18633,\n  \"went</w>\": 2437,\n  \"wentworth</w>\": 36423,\n  \"wentz</w>\": 39179,\n  \"wer\": 6316,\n  \"wer</w>\": 2980,\n  \"were\": 15461,\n  \"were</w>\": 1365,\n  \"wered</w>\": 6605,\n  \"weren</w>\": 13611,\n  \"werewolf</w>\": 32001,\n  \"werk</w>\": 30176,\n  \"werner</w>\": 29917,\n  \"wers</w>\": 7110,\n  \"wes\": 18620,\n  \"wes</w>\": 14738,\n  \"wesle\": 29606,\n  \"wesley</w>\": 17332,\n  \"wesleyan</w>\": 32509,\n  \"wesome</w>\": 33292,\n  \"wess</w>\": 44431,\n  \"west\": 2973,\n  \"west</w>\": 1593,\n  \"westbound</w>\": 29208,\n  \"westbrook</w>\": 26948,\n  \"westchester</w>\": 36675,\n  \"westcoast</w>\": 44610,\n  \"westend</w>\": 44815,\n  \"wester\": 9846,\n  \"western\": 17079,\n  \"western</w>\": 4463,\n  \"westfield</w>\": 32309,\n  \"westh\": 36798,\n  \"westin</w>\": 43232,\n  \"westlake</w>\": 41535,\n  \"westminster</w>\": 15158,\n  \"weston</w>\": 22771,\n  \"westside</w>\": 33762,\n  \"westwood</w>\": 26371,\n  \"westworld</w>\": 42287,\n  \"wet\": 12406,\n  \"wet</w>\": 6682,\n  \"weta</w>\": 40946,\n  \"wethenorth</w>\": 45281,\n  \"wethepeople</w>\": 48030,\n  \"wether\": 33794,\n  \"wether</w>\": 48405,\n  \"wetland</w>\": 37357,\n  \"wetlands</w>\": 26547,\n  \"wett</w>\": 41971,\n  \"wetter</w>\": 43957,\n  \"wewant\": 39280,\n  \"wewill\": 37241,\n  \"wex\": 17234,\n  \"wexford</w>\": 29876,\n  \"wexmondays</w>\": 49042,\n  \"wey\": 30376,\n  \"wey</w>\": 19781,\n  \"weymouth</w>\": 41433,\n  \"wf\": 14576,\n  \"wf</w>\": 22313,\n  \"wfa\": 44606,\n  \"wfc</w>\": 36431,\n  \"wfp</w>\": 35193,\n  \"wftv</w>\": 47075,\n  \"wg\": 21091,\n  \"wg</w>\": 25857,\n  \"wga</w>\": 32354,\n  \"wgn\": 48828,\n  \"wh\": 573,\n  \"wh</w>\": 13844,\n  \"wha\": 18994,\n  \"wha</w>\": 25884,\n  \"whal\": 38967,\n  \"whale\": 37083,\n  \"whale</w>\": 11650,\n  \"whales</w>\": 17722,\n  \"wham\": 42506,\n  \"whar\": 15517,\n  \"wharf</w>\": 22452,\n  \"wharton</w>\": 43320,\n  \"what\": 4268,\n  \"what</w>\": 768,\n  \"whatcha</w>\": 37160,\n  \"whate\": 6695,\n  \"whatever</w>\": 6743,\n  \"whati\": 23500,\n  \"whats\": 9263,\n  \"whats</w>\": 13084,\n  \"whatsapp</w>\": 10119,\n  \"whatsoever</w>\": 39928,\n  \"whatson\": 35632,\n  \"whatyou\": 30508,\n  \"whe\": 2009,\n  \"whead</w>\": 34583,\n  \"wheat\": 20505,\n  \"wheat</w>\": 10303,\n  \"wheaton</w>\": 46933,\n  \"wheel\": 7360,\n  \"wheel</w>\": 6744,\n  \"wheelchair</w>\": 17713,\n  \"wheeler</w>\": 18405,\n  \"wheeling</w>\": 34839,\n  \"wheels</w>\": 8025,\n  \"whel\": 9792,\n  \"whelan</w>\": 40715,\n  \"when\": 8753,\n  \"when</w>\": 827,\n  \"whenever</w>\": 10500,\n  \"where\": 7052,\n  \"where</w>\": 1234,\n  \"whereabouts</w>\": 47808,\n  \"whereas</w>\": 42234,\n  \"wheres\": 46345,\n  \"wherever</w>\": 14103,\n  \"whereyou\": 46837,\n  \"whether</w>\": 5903,\n  \"whew</w>\": 39016,\n  \"whey</w>\": 34556,\n  \"whi\": 4295,\n  \"whi</w>\": 33129,\n  \"which</w>\": 1448,\n  \"whiche\": 48719,\n  \"whichever</w>\": 49138,\n  \"whil\": 8499,\n  \"while</w>\": 1519,\n  \"whilst</w>\": 8596,\n  \"whim\": 27766,\n  \"whimsical</w>\": 42282,\n  \"whip</w>\": 14412,\n  \"whipped</w>\": 22323,\n  \"whipping</w>\": 41567,\n  \"whir\": 20873,\n  \"whirl\": 30962,\n  \"whirlwind</w>\": 47771,\n  \"whis\": 6024,\n  \"whiskey\": 41381,\n  \"whiskey</w>\": 11610,\n  \"whisky\": 37567,\n  \"whisky</w>\": 12599,\n  \"whisp\": 21986,\n  \"whispe\": 30356,\n  \"whisper</w>\": 27616,\n  \"whisperer</w>\": 41368,\n  \"whispering</w>\": 42599,\n  \"whispers</w>\": 29133,\n  \"whist\": 13640,\n  \"whistle\": 23972,\n  \"whistle</w>\": 19746,\n  \"whistleblower</w>\": 40410,\n  \"whistler</w>\": 29633,\n  \"whit\": 4398,\n  \"whit</w>\": 31498,\n  \"whitaker</w>\": 35851,\n  \"whitby</w>\": 30858,\n  \"white\": 4699,\n  \"white</w>\": 1579,\n  \"whiteboard</w>\": 40839,\n  \"whitec\": 24575,\n  \"whitehall</w>\": 42827,\n  \"whitehead</w>\": 43560,\n  \"whitehouse</w>\": 20776,\n  \"whitening</w>\": 35540,\n  \"whitepaper</w>\": 42713,\n  \"whites\": 35886,\n  \"whites</w>\": 18835,\n  \"whitesox</w>\": 28816,\n  \"whitewater</w>\": 49350,\n  \"whitfield</w>\": 48404,\n  \"whitley</w>\": 40564,\n  \"whitman</w>\": 32394,\n  \"whitney\": 43021,\n  \"whitney</w>\": 18048,\n  \"whitt\": 33784,\n  \"whittaker</w>\": 47595,\n  \"whl</w>\": 25801,\n  \"who\": 2969,\n  \"who</w>\": 822,\n  \"whoa</w>\": 16943,\n  \"whoever</w>\": 11137,\n  \"whois\": 41884,\n  \"whole\": 10360,\n  \"whole</w>\": 2954,\n  \"wholefoods</w>\": 42840,\n  \"wholesale</w>\": 18306,\n  \"wholesome</w>\": 35959,\n  \"whom\": 38158,\n  \"whom</w>\": 12873,\n  \"whoo\": 20003,\n  \"whoo</w>\": 49290,\n  \"whoop</w>\": 22060,\n  \"whoops</w>\": 28433,\n  \"whopping</w>\": 34384,\n  \"whore</w>\": 31690,\n  \"whos\": 41460,\n  \"whos</w>\": 27130,\n  \"whose</w>\": 6933,\n  \"whouse</w>\": 45927,\n  \"whs</w>\": 26292,\n  \"wht</w>\": 32470,\n  \"whufc</w>\": 31695,\n  \"whun\": 18272,\n  \"why\": 11040,\n  \"why</w>\": 1182,\n  \"whyte</w>\": 42386,\n  \"wi\": 820,\n  \"wi</w>\": 5585,\n  \"wib</w>\": 45303,\n  \"wic\": 7834,\n  \"wich\": 9759,\n  \"wich</w>\": 5238,\n  \"wichita</w>\": 22566,\n  \"wick\": 6798,\n  \"wick</w>\": 6479,\n  \"wicked\": 32579,\n  \"wicked</w>\": 12825,\n  \"wicker</w>\": 38096,\n  \"wicket</w>\": 19180,\n  \"wickets</w>\": 22110,\n  \"wicklow</w>\": 39039,\n  \"wicz</w>\": 30121,\n  \"wid\": 11886,\n  \"wid</w>\": 20886,\n  \"wide\": 19341,\n  \"wide</w>\": 3184,\n  \"widely</w>\": 16195,\n  \"widening</w>\": 46598,\n  \"wider</w>\": 21263,\n  \"widesp\": 20598,\n  \"widespread</w>\": 21258,\n  \"widget</w>\": 43906,\n  \"wido\": 28068,\n  \"widow</w>\": 19949,\n  \"widows</w>\": 42129,\n  \"width</w>\": 23571,\n  \"wie\": 21378,\n  \"wie</w>\": 9131,\n  \"wielding</w>\": 47272,\n  \"wien</w>\": 38131,\n  \"wiener</w>\": 40567,\n  \"wies\": 42788,\n  \"wif</w>\": 37572,\n  \"wife</w>\": 3607,\n  \"wifey</w>\": 35282,\n  \"wifi</w>\": 11026,\n  \"wig\": 23690,\n  \"wig</w>\": 12216,\n  \"wigan</w>\": 23130,\n  \"wiggins</w>\": 32329,\n  \"wiggle</w>\": 47812,\n  \"wight\": 41278,\n  \"wight</w>\": 15545,\n  \"wigs</w>\": 31207,\n  \"wii</w>\": 8005,\n  \"wiiu</w>\": 40980,\n  \"wiki\": 10373,\n  \"wiki</w>\": 24265,\n  \"wikileaks</w>\": 28731,\n  \"wikipedia</w>\": 15176,\n  \"wil\": 1352,\n  \"wil</w>\": 20581,\n  \"wilbur</w>\": 43069,\n  \"wilcox</w>\": 43231,\n  \"wild\": 2780,\n  \"wild</w>\": 3220,\n  \"wildatlantic\": 35500,\n  \"wildatlanticway</w>\": 35776,\n  \"wildcard</w>\": 37360,\n  \"wildcat\": 49077,\n  \"wildcat</w>\": 25870,\n  \"wildcats</w>\": 15909,\n  \"wilde</w>\": 23498,\n  \"wilder\": 14343,\n  \"wilder</w>\": 23499,\n  \"wilderness</w>\": 16506,\n  \"wildest</w>\": 43028,\n  \"wildfire</w>\": 22788,\n  \"wildfires</w>\": 29184,\n  \"wildflower\": 27628,\n  \"wildflower</w>\": 33181,\n  \"wildflowerhour</w>\": 31302,\n  \"wildflowers</w>\": 29136,\n  \"wildlife\": 13298,\n  \"wildlife</w>\": 5250,\n  \"wildlifephotography</w>\": 32307,\n  \"wildlifewednesday</w>\": 48537,\n  \"wildly</w>\": 35981,\n  \"wildoz</w>\": 40113,\n  \"wiley</w>\": 32747,\n  \"wilhelm</w>\": 39696,\n  \"wilkes</w>\": 39548,\n  \"wilkins</w>\": 36986,\n  \"wilkinson</w>\": 26797,\n  \"will\": 5062,\n  \"will</w>\": 751,\n  \"willam\": 43276,\n  \"willard</w>\": 44920,\n  \"wille\": 48739,\n  \"willem</w>\": 38044,\n  \"willi\": 2256,\n  \"william\": 8420,\n  \"william</w>\": 4705,\n  \"williams\": 38452,\n  \"williams</w>\": 4075,\n  \"williamsburg</w>\": 30683,\n  \"williamson</w>\": 20793,\n  \"willie</w>\": 13907,\n  \"willing\": 34160,\n  \"willing</w>\": 11718,\n  \"willingness</w>\": 40573,\n  \"willis</w>\": 18491,\n  \"willow\": 33887,\n  \"willow</w>\": 15665,\n  \"wills</w>\": 26913,\n  \"willy\": 34502,\n  \"willy</w>\": 19599,\n  \"wilmington</w>\": 28052,\n  \"wilms\": 47879,\n  \"wilshere</w>\": 48359,\n  \"wilson\": 23629,\n  \"wilson</w>\": 5622,\n  \"wilt\": 23394,\n  \"wilt</w>\": 47357,\n  \"wilton</w>\": 46638,\n  \"wiltshire</w>\": 28025,\n  \"wim\": 8662,\n  \"wim</w>\": 27580,\n  \"wimble\": 11752,\n  \"wimbledon</w>\": 12229,\n  \"win\": 831,\n  \"win</w>\": 1225,\n  \"winchester</w>\": 20647,\n  \"wind\": 6812,\n  \"wind</w>\": 3630,\n  \"winder\": 44454,\n  \"winder</w>\": 46245,\n  \"winding</w>\": 22390,\n  \"windmill</w>\": 34084,\n  \"windo\": 3110,\n  \"window\": 26675,\n  \"window</w>\": 4879,\n  \"windows</w>\": 5437,\n  \"winds\": 12668,\n  \"winds</w>\": 7012,\n  \"windshield</w>\": 33002,\n  \"windsor\": 44322,\n  \"windsor</w>\": 12884,\n  \"windy</w>\": 13446,\n  \"wine\": 7375,\n  \"wine</w>\": 2604,\n  \"winelover</w>\": 26357,\n  \"winemaker</w>\": 41588,\n  \"wineoclock</w>\": 43846,\n  \"wineries</w>\": 49349,\n  \"winery</w>\": 15500,\n  \"wines</w>\": 8263,\n  \"winetasting</w>\": 41288,\n  \"winewednesday</w>\": 35447,\n  \"wing\": 8141,\n  \"wing</w>\": 1340,\n  \"winged</w>\": 24993,\n  \"winger</w>\": 22727,\n  \"winget</w>\": 44578,\n  \"wings</w>\": 5178,\n  \"wink\": 34455,\n  \"wink</w>\": 25859,\n  \"winkle</w>\": 36430,\n  \"winn</w>\": 38104,\n  \"winne\": 46273,\n  \"winner\": 32961,\n  \"winner</w>\": 2520,\n  \"winners</w>\": 4320,\n  \"winni\": 13018,\n  \"winnie</w>\": 29022,\n  \"winning\": 42099,\n  \"winning</w>\": 2577,\n  \"winnings</w>\": 46490,\n  \"winnipeg</w>\": 14369,\n  \"winona</w>\": 49202,\n  \"wins\": 46839,\n  \"wins</w>\": 2718,\n  \"winslow</w>\": 39658,\n  \"winston</w>\": 14848,\n  \"winter\": 7340,\n  \"winter</w>\": 2541,\n  \"winters</w>\": 21587,\n  \"wintry</w>\": 39504,\n  \"wip</w>\": 10447,\n  \"wipe</w>\": 26761,\n  \"wiped</w>\": 31822,\n  \"wipes</w>\": 33463,\n  \"wir\": 16849,\n  \"wir</w>\": 44838,\n  \"wire\": 7558,\n  \"wire</w>\": 7794,\n  \"wired</w>\": 18935,\n  \"wireless</w>\": 9103,\n  \"wires</w>\": 24311,\n  \"wiring</w>\": 36434,\n  \"wirral</w>\": 34675,\n  \"wis\": 3392,\n  \"wis</w>\": 20405,\n  \"wiscon\": 9857,\n  \"wisconsin</w>\": 10265,\n  \"wisdom\": 42474,\n  \"wisdom</w>\": 5425,\n  \"wise\": 19116,\n  \"wise</w>\": 5558,\n  \"wisely</w>\": 26173,\n  \"wiser</w>\": 44859,\n  \"wish\": 11328,\n  \"wish</w>\": 2412,\n  \"wished</w>\": 25883,\n  \"wishes</w>\": 6045,\n  \"wishing</w>\": 5307,\n  \"wishlist</w>\": 31969,\n  \"wit\": 584,\n  \"wit</w>\": 8531,\n  \"witch\": 20139,\n  \"witch</w>\": 10083,\n  \"witchcraft</w>\": 35065,\n  \"witcher</w>\": 33684,\n  \"witches</w>\": 21673,\n  \"with\": 1435,\n  \"with</w>\": 593,\n  \"withdra\": 24696,\n  \"withdraw</w>\": 31670,\n  \"withdrawal</w>\": 25765,\n  \"withdrawn</w>\": 46687,\n  \"withdraws</w>\": 48637,\n  \"wither\": 39655,\n  \"witherspoon</w>\": 45409,\n  \"within</w>\": 4154,\n  \"withme</w>\": 44670,\n  \"without\": 32836,\n  \"without</w>\": 2193,\n  \"withstand</w>\": 42236,\n  \"withthe\": 36872,\n  \"withus</w>\": 30572,\n  \"withyou</w>\": 30351,\n  \"witne\": 12096,\n  \"witness</w>\": 8793,\n  \"witnessed</w>\": 20187,\n  \"witnesses</w>\": 22778,\n  \"witnessing</w>\": 33618,\n  \"wits</w>\": 30938,\n  \"witt\": 38194,\n  \"witt</w>\": 17168,\n  \"witter</w>\": 31597,\n  \"witty</w>\": 29970,\n  \"witz\": 44186,\n  \"witz</w>\": 13265,\n  \"wiv</w>\": 48925,\n  \"wives</w>\": 14378,\n  \"wiwx</w>\": 44461,\n  \"wiz\": 7730,\n  \"wiz</w>\": 23178,\n  \"wizar\": 49121,\n  \"wizard\": 30490,\n  \"wizard</w>\": 14295,\n  \"wizards</w>\": 19140,\n  \"wizkid</w>\": 40146,\n  \"wj\": 19739,\n  \"wj</w>\": 35453,\n  \"wk\": 11512,\n  \"wk</w>\": 11528,\n  \"wkend</w>\": 42336,\n  \"wknd</w>\": 20851,\n  \"wks</w>\": 25508,\n  \"wku</w>\": 43377,\n  \"wl\": 13299,\n  \"wl</w>\": 9613,\n  \"wm\": 20268,\n  \"wm</w>\": 15790,\n  \"wn\": 1186,\n  \"wn</w>\": 757,\n  \"wnba</w>\": 32358,\n  \"wned</w>\": 8628,\n  \"wns</w>\": 12950,\n  \"wnt</w>\": 22484,\n  \"wny</w>\": 24833,\n  \"wo\": 1613,\n  \"wo</w>\": 11132,\n  \"woah</w>\": 17751,\n  \"wob\": 35984,\n  \"woc</w>\": 39011,\n  \"wod</w>\": 41522,\n  \"woes</w>\": 27860,\n  \"wof\": 45671,\n  \"woj\": 48931,\n  \"wok</w>\": 28912,\n  \"woke</w>\": 9331,\n  \"woken</w>\": 43697,\n  \"woking</w>\": 43931,\n  \"wol\": 2798,\n  \"wol</w>\": 48622,\n  \"wold</w>\": 42399,\n  \"wolf\": 9453,\n  \"wolf</w>\": 5916,\n  \"wolfe</w>\": 24989,\n  \"wolff</w>\": 34369,\n  \"wolfgang</w>\": 34061,\n  \"wolfpack</w>\": 30887,\n  \"wolve\": 45101,\n  \"wolver\": 14334,\n  \"wolverhampton</w>\": 34518,\n  \"wolverine</w>\": 23353,\n  \"wolverines</w>\": 42003,\n  \"wolves</w>\": 9372,\n  \"wom\": 1087,\n  \"womack</w>\": 48980,\n  \"woman\": 15716,\n  \"woman</w>\": 2308,\n  \"womanc\": 35630,\n  \"womancrush\": 37721,\n  \"womancrushwednesday</w>\": 39714,\n  \"womanin\": 30562,\n  \"womaninbiz</w>\": 36482,\n  \"womb</w>\": 37023,\n  \"women\": 3648,\n  \"women</w>\": 1507,\n  \"womenin\": 13062,\n  \"womeninscience</w>\": 41343,\n  \"womeninstem</w>\": 29380,\n  \"womenintech</w>\": 31470,\n  \"womenof\": 48421,\n  \"womens\": 12822,\n  \"womens</w>\": 14408,\n  \"womensart</w>\": 38548,\n  \"womensday</w>\": 13956,\n  \"womenshi\": 22887,\n  \"womenshistorymonth</w>\": 24982,\n  \"womensmarch</w>\": 30102,\n  \"won\": 1528,\n  \"won</w>\": 1749,\n  \"wonder\": 2070,\n  \"wonder</w>\": 3936,\n  \"wondercon</w>\": 46944,\n  \"wondered</w>\": 15550,\n  \"wonderful</w>\": 2582,\n  \"wonderfully</w>\": 23245,\n  \"wondering</w>\": 8360,\n  \"wonderland</w>\": 13874,\n  \"wonders</w>\": 14048,\n  \"wonderwoman</w>\": 31000,\n  \"wondo</w>\": 38402,\n  \"wondr\": 46771,\n  \"wong</w>\": 17876,\n  \"wonka</w>\": 43463,\n  \"wont\": 43174,\n  \"wont</w>\": 15952,\n  \"woo\": 1867,\n  \"woo</w>\": 9322,\n  \"wood\": 3269,\n  \"wood</w>\": 1704,\n  \"woodbridge</w>\": 49074,\n  \"wooden\": 48226,\n  \"wooden</w>\": 9057,\n  \"woodland\": 44314,\n  \"woodland</w>\": 17447,\n  \"woodlands</w>\": 32430,\n  \"woodley</w>\": 40566,\n  \"woodpecker</w>\": 32684,\n  \"woods</w>\": 6267,\n  \"woodson</w>\": 48967,\n  \"woodstock</w>\": 29486,\n  \"woodward</w>\": 27419,\n  \"woodwork</w>\": 47386,\n  \"woodworking</w>\": 29267,\n  \"woody\": 38627,\n  \"woody</w>\": 17144,\n  \"woof\": 34234,\n  \"woof</w>\": 24028,\n  \"woohoo</w>\": 20172,\n  \"wook</w>\": 29192,\n  \"wool\": 9967,\n  \"wool</w>\": 13283,\n  \"woolf</w>\": 43728,\n  \"woolly</w>\": 47722,\n  \"woon</w>\": 33126,\n  \"wooo</w>\": 43217,\n  \"woop</w>\": 31884,\n  \"woot</w>\": 22466,\n  \"wor\": 641,\n  \"worcester\": 22172,\n  \"worcester</w>\": 19580,\n  \"worcestershire</w>\": 38440,\n  \"worcestershirehour</w>\": 43644,\n  \"word\": 8272,\n  \"word</w>\": 2653,\n  \"wordof\": 33500,\n  \"wordoftheday</w>\": 43594,\n  \"wordpress</w>\": 15193,\n  \"words\": 31007,\n  \"words</w>\": 2709,\n  \"wore</w>\": 8953,\n  \"work\": 1636,\n  \"work</w>\": 951,\n  \"workday</w>\": 29735,\n  \"worked</w>\": 5410,\n  \"worker</w>\": 8098,\n  \"workers</w>\": 4795,\n  \"workflow</w>\": 28502,\n  \"workforce</w>\": 14672,\n  \"workin\": 31825,\n  \"workin</w>\": 26323,\n  \"working\": 20806,\n  \"working</w>\": 1699,\n  \"workinprogress</w>\": 46086,\n  \"workout</w>\": 6773,\n  \"workouts</w>\": 22779,\n  \"workplace</w>\": 11959,\n  \"workplaces</w>\": 47383,\n  \"works</w>\": 2322,\n  \"workshop</w>\": 3832,\n  \"workshops</w>\": 12262,\n  \"workspace</w>\": 34470,\n  \"worl\": 5221,\n  \"world\": 2334,\n  \"world</w>\": 1002,\n  \"worlda\": 46627,\n  \"worldbank</w>\": 36759,\n  \"worldbookday</w>\": 31191,\n  \"worldcup\": 42525,\n  \"worldcup</w>\": 8650,\n  \"worlden\": 44668,\n  \"worldenviron\": 47115,\n  \"worldenvironmentday</w>\": 47522,\n  \"worldly</w>\": 36268,\n  \"worldo\": 41698,\n  \"worldof\": 22636,\n  \"worldre\": 33951,\n  \"worlds</w>\": 7691,\n  \"worldseries</w>\": 26695,\n  \"worldtour</w>\": 23202,\n  \"worldwater\": 41176,\n  \"worldwaterday</w>\": 44520,\n  \"worldwide</w>\": 6214,\n  \"worm\": 33709,\n  \"worm</w>\": 10945,\n  \"worms</w>\": 20231,\n  \"worn</w>\": 9037,\n  \"worried</w>\": 11911,\n  \"worries</w>\": 17684,\n  \"worry</w>\": 7534,\n  \"worrying</w>\": 24058,\n  \"worse</w>\": 8236,\n  \"worsen\": 46344,\n  \"worshi\": 31840,\n  \"worship\": 46399,\n  \"worship</w>\": 9023,\n  \"worst</w>\": 5719,\n  \"wort</w>\": 30209,\n  \"worth\": 10671,\n  \"worth</w>\": 2450,\n  \"worthing</w>\": 39929,\n  \"worthit</w>\": 40830,\n  \"worthless</w>\": 44736,\n  \"worths</w>\": 44633,\n  \"worthwhile</w>\": 36295,\n  \"worthy</w>\": 8881,\n  \"worx</w>\": 44973,\n  \"wot</w>\": 24863,\n  \"wou\": 5279,\n  \"would\": 39873,\n  \"would</w>\": 1311,\n  \"wouldn</w>\": 5878,\n  \"wouldnt</w>\": 41595,\n  \"wound</w>\": 19231,\n  \"wounded</w>\": 14859,\n  \"wounds</w>\": 21290,\n  \"woven</w>\": 19830,\n  \"wow\": 22191,\n  \"wow</w>\": 2781,\n  \"woz\": 44558,\n  \"wozni\": 47782,\n  \"wp\": 15378,\n  \"wp</w>\": 13302,\n  \"wpg</w>\": 35048,\n  \"wps</w>\": 33386,\n  \"wq\": 45195,\n  \"wr\": 1189,\n  \"wr</w>\": 8028,\n  \"wra\": 3852,\n  \"wra</w>\": 46004,\n  \"wral</w>\": 49050,\n  \"wrangler</w>\": 30923,\n  \"wrap</w>\": 7094,\n  \"wrapped</w>\": 9875,\n  \"wrapping</w>\": 15223,\n  \"wraps</w>\": 18236,\n  \"wrath</w>\": 29783,\n  \"wray</w>\": 48943,\n  \"wrc</w>\": 16004,\n  \"wre\": 3168,\n  \"wreath</w>\": 23091,\n  \"wrec\": 20879,\n  \"wreck\": 28775,\n  \"wreck</w>\": 15017,\n  \"wrecked</w>\": 32695,\n  \"wreckem</w>\": 45676,\n  \"wrecking</w>\": 36956,\n  \"wrecks</w>\": 45545,\n  \"wren\": 20191,\n  \"wren</w>\": 31970,\n  \"wrench</w>\": 30980,\n  \"wrest\": 4177,\n  \"wrestle\": 17097,\n  \"wrestle</w>\": 28086,\n  \"wrestlemania</w>\": 18849,\n  \"wrestler</w>\": 19790,\n  \"wrestlers</w>\": 25902,\n  \"wrestling\": 31292,\n  \"wrestling</w>\": 5904,\n  \"wrexham</w>\": 34479,\n  \"wri\": 7667,\n  \"wri</w>\": 42007,\n  \"wright\": 28616,\n  \"wright</w>\": 6991,\n  \"wrights</w>\": 43711,\n  \"wrigley</w>\": 33538,\n  \"wrink\": 22201,\n  \"wrinkle</w>\": 46642,\n  \"wrinkles</w>\": 35525,\n  \"wrist\": 19243,\n  \"wrist</w>\": 16139,\n  \"wristband</w>\": 36890,\n  \"wristbands</w>\": 44864,\n  \"writ\": 2902,\n  \"write\": 28874,\n  \"write</w>\": 4946,\n  \"writer\": 27886,\n  \"writer</w>\": 4422,\n  \"writers\": 18742,\n  \"writers</w>\": 7307,\n  \"writerslife</w>\": 25007,\n  \"writes</w>\": 8023,\n  \"writing\": 16053,\n  \"writing</w>\": 2979,\n  \"writingcommunity</w>\": 39178,\n  \"writings</w>\": 36259,\n  \"written</w>\": 5231,\n  \"wro\": 5447,\n  \"wrong\": 18381,\n  \"wrong</w>\": 3669,\n  \"wrongly</w>\": 45642,\n  \"wrote</w>\": 5796,\n  \"wrought</w>\": 48125,\n  \"wrs</w>\": 45280,\n  \"ws\": 6300,\n  \"ws</w>\": 799,\n  \"wsb\": 30681,\n  \"wsbtv</w>\": 38394,\n  \"wsj</w>\": 19764,\n  \"wski</w>\": 12548,\n  \"wsl</w>\": 43706,\n  \"wsoc</w>\": 40253,\n  \"wson</w>\": 33954,\n  \"wsop</w>\": 41231,\n  \"wsu\": 44674,\n  \"wsu</w>\": 32913,\n  \"wsw</w>\": 43285,\n  \"wt\": 15873,\n  \"wt</w>\": 12255,\n  \"wta</w>\": 25984,\n  \"wtc</w>\": 39718,\n  \"wtf</w>\": 6891,\n  \"wth</w>\": 23021,\n  \"wthr\": 45269,\n  \"wti</w>\": 47345,\n  \"wto</w>\": 36406,\n  \"wts</w>\": 32159,\n  \"wu\": 9710,\n  \"wu</w>\": 9837,\n  \"wud</w>\": 43870,\n  \"wul\": 35154,\n  \"wunder\": 36661,\n  \"wur\": 24040,\n  \"wurst</w>\": 44409,\n  \"wusa</w>\": 40021,\n  \"wut</w>\": 28590,\n  \"wv\": 18920,\n  \"wv</w>\": 14743,\n  \"wvu\": 44878,\n  \"wvu</w>\": 25879,\n  \"ww\": 3181,\n  \"ww</w>\": 4491,\n  \"wwc</w>\": 26505,\n  \"wwdc</w>\": 47441,\n  \"wwe\": 12112,\n  \"wwe</w>\": 5290,\n  \"wwen\": 23308,\n  \"wwenetwork</w>\": 37228,\n  \"wwenxt</w>\": 39898,\n  \"wwer\": 32038,\n  \"wwf</w>\": 23332,\n  \"wwfc</w>\": 42681,\n  \"wwg</w>\": 35322,\n  \"wwi</w>\": 20194,\n  \"wwii</w>\": 10261,\n  \"www\": 26074,\n  \"www</w>\": 9667,\n  \"wwwbigbaldhead</w>\": 30761,\n  \"wwww\": 34224,\n  \"wwww</w>\": 25200,\n  \"wwwww</w>\": 48268,\n  \"wwx</w>\": 47431,\n  \"wx\": 18192,\n  \"wx</w>\": 3561,\n  \"wy\": 4665,\n  \"wy</w>\": 7625,\n  \"wyatt</w>\": 21660,\n  \"wyd</w>\": 33113,\n  \"wye\": 48436,\n  \"wye</w>\": 43751,\n  \"wylie</w>\": 49330,\n  \"wyn\": 11802,\n  \"wyn</w>\": 17504,\n  \"wynn</w>\": 36117,\n  \"wynne</w>\": 35951,\n  \"wynonna\": 41456,\n  \"wynonnaearp</w>\": 43755,\n  \"wyoming</w>\": 18693,\n  \"x\": 87,\n  \"x</w>\": 343,\n  \"xa</w>\": 24831,\n  \"xan\": 45530,\n  \"xander</w>\": 45601,\n  \"xavi\": 36342,\n  \"xavier\": 41044,\n  \"xavier</w>\": 18567,\n  \"xb</w>\": 33678,\n  \"xbox\": 18063,\n  \"xbox</w>\": 7748,\n  \"xboxone</w>\": 27410,\n  \"xc</w>\": 12515,\n  \"xchange</w>\": 49132,\n  \"xd</w>\": 6380,\n  \"xe\": 42886,\n  \"xe</w>\": 19183,\n  \"xen\": 15568,\n  \"xer\": 49005,\n  \"xf</w>\": 35274,\n  \"xfactor</w>\": 25211,\n  \"xfinity</w>\": 35107,\n  \"xford</w>\": 34732,\n  \"xh</w>\": 45771,\n  \"xham</w>\": 25284,\n  \"xi\": 2467,\n  \"xi</w>\": 7376,\n  \"xia\": 19854,\n  \"xia</w>\": 20724,\n  \"xian</w>\": 42570,\n  \"xiao</w>\": 49318,\n  \"xiaomi</w>\": 27477,\n  \"xico</w>\": 38469,\n  \"xide</w>\": 17398,\n  \"xie\": 40122,\n  \"xie</w>\": 15976,\n  \"xii</w>\": 36525,\n  \"xiii</w>\": 28199,\n  \"xim\": 11217,\n  \"xin\": 27053,\n  \"xin</w>\": 41517,\n  \"xing</w>\": 14383,\n  \"xion</w>\": 24164,\n  \"xis</w>\": 35793,\n  \"xit</w>\": 5316,\n  \"xiumin</w>\": 36563,\n  \"xiv</w>\": 16125,\n  \"xj</w>\": 42453,\n  \"xl\": 36529,\n  \"xl</w>\": 8833,\n  \"xley</w>\": 38223,\n  \"xm</w>\": 18626,\n  \"xma\": 48805,\n  \"xmas\": 48848,\n  \"xmas</w>\": 6425,\n  \"xmen</w>\": 28708,\n  \"xn</w>\": 25388,\n  \"xo\": 26936,\n  \"xo</w>\": 9000,\n  \"xon\": 29186,\n  \"xon</w>\": 8482,\n  \"xox\": 11531,\n  \"xox</w>\": 34050,\n  \"xoxo</w>\": 13313,\n  \"xp</w>\": 15651,\n  \"xper\": 32200,\n  \"xperia</w>\": 37615,\n  \"xpo</w>\": 44377,\n  \"xpress</w>\": 31809,\n  \"xq</w>\": 40606,\n  \"xr</w>\": 26276,\n  \"xrp</w>\": 26965,\n  \"xs</w>\": 16397,\n  \"xt</w>\": 1052,\n  \"xtina</w>\": 45520,\n  \"xton\": 32666,\n  \"xton</w>\": 10597,\n  \"xtra</w>\": 26969,\n  \"xtre\": 27025,\n  \"xtreme</w>\": 33483,\n  \"xu\": 42063,\n  \"xu</w>\": 37198,\n  \"xv</w>\": 17768,\n  \"xvi</w>\": 44031,\n  \"xx\": 5675,\n  \"xx</w>\": 3553,\n  \"xxl</w>\": 29777,\n  \"xxx\": 33923,\n  \"xxx</w>\": 8352,\n  \"xxxx\": 32035,\n  \"xxxx</w>\": 22819,\n  \"xxxxx</w>\": 44195,\n  \"xy\": 20023,\n  \"xy</w>\": 11443,\n  \"y\": 88,\n  \"y</w>\": 344,\n  \"ya\": 5018,\n  \"ya</w>\": 1430,\n  \"yaa\": 48847,\n  \"yaa</w>\": 34498,\n  \"yaan</w>\": 34680,\n  \"yab\": 27737,\n  \"yach\": 9039,\n  \"yacht\": 43806,\n  \"yacht</w>\": 12859,\n  \"yachts</w>\": 29260,\n  \"yad\": 13276,\n  \"yad</w>\": 40047,\n  \"yadav</w>\": 26650,\n  \"yaf\": 38019,\n  \"yag\": 35081,\n  \"yah\": 16170,\n  \"yah</w>\": 12381,\n  \"yaho\": 37929,\n  \"yahoo\": 38152,\n  \"yahoo</w>\": 16846,\n  \"yak\": 11014,\n  \"yak</w>\": 29074,\n  \"yaki</w>\": 44677,\n  \"yaku\": 29572,\n  \"yakuza</w>\": 42628,\n  \"yal\": 16198,\n  \"yal</w>\": 13418,\n  \"yale\": 39926,\n  \"yale</w>\": 17157,\n  \"yall</w>\": 9210,\n  \"yam\": 6666,\n  \"yam</w>\": 19318,\n  \"yama</w>\": 23512,\n  \"yamaha</w>\": 18854,\n  \"yan\": 3949,\n  \"yan</w>\": 4788,\n  \"yana</w>\": 18698,\n  \"yand\": 38609,\n  \"yang\": 23818,\n  \"yang</w>\": 12605,\n  \"yani</w>\": 26439,\n  \"yankee</w>\": 21554,\n  \"yankees</w>\": 11889,\n  \"yann\": 40246,\n  \"yann</w>\": 38657,\n  \"yao</w>\": 45231,\n  \"yap\": 48700,\n  \"yap</w>\": 34468,\n  \"yar\": 6786,\n  \"yar</w>\": 23071,\n  \"yard\": 20234,\n  \"yard</w>\": 4313,\n  \"yards</w>\": 7550,\n  \"yarmouth</w>\": 45941,\n  \"yarn</w>\": 19702,\n  \"yarra</w>\": 46824,\n  \"yas\": 8168,\n  \"yas</w>\": 20570,\n  \"yash\": 30216,\n  \"yash</w>\": 37836,\n  \"yasi\": 37700,\n  \"yasss</w>\": 23873,\n  \"yat\": 29443,\n  \"yat</w>\": 34965,\n  \"yates</w>\": 27677,\n  \"yatra</w>\": 38932,\n  \"yav\": 41275,\n  \"yaw\": 31989,\n  \"yawn</w>\": 48643,\n  \"yay\": 20614,\n  \"yay</w>\": 6712,\n  \"yaya</w>\": 37608,\n  \"yaz\": 19348,\n  \"yaz</w>\": 42252,\n  \"yb\": 41785,\n  \"yb</w>\": 27615,\n  \"yc</w>\": 11931,\n  \"ycle</w>\": 38089,\n  \"yd\": 29896,\n  \"yd</w>\": 9534,\n  \"yday</w>\": 15899,\n  \"yds</w>\": 24819,\n  \"ye\": 693,\n  \"ye</w>\": 4582,\n  \"yea</w>\": 13687,\n  \"yeah\": 29405,\n  \"yeah</w>\": 3908,\n  \"year\": 5163,\n  \"year</w>\": 935,\n  \"yearbook</w>\": 21636,\n  \"yearling</w>\": 48392,\n  \"yearly</w>\": 24541,\n  \"yearof\": 31944,\n  \"yearofthe\": 47899,\n  \"years\": 30864,\n  \"years</w>\": 1151,\n  \"yearsof\": 14932,\n  \"yearswith\": 45249,\n  \"yeast</w>\": 25819,\n  \"yeats</w>\": 44903,\n  \"yed\": 28137,\n  \"yed</w>\": 3301,\n  \"yee\": 18114,\n  \"yee</w>\": 23108,\n  \"yeezy</w>\": 24901,\n  \"yeg\": 16854,\n  \"yeg</w>\": 11976,\n  \"yegfood</w>\": 48711,\n  \"yeh</w>\": 21331,\n  \"yel\": 3323,\n  \"yel</w>\": 48164,\n  \"yell</w>\": 30824,\n  \"yelled</w>\": 39199,\n  \"yelling</w>\": 26581,\n  \"yellow\": 12059,\n  \"yellow</w>\": 4481,\n  \"yellowstone</w>\": 29241,\n  \"yelp</w>\": 31674,\n  \"yemen\": 29276,\n  \"yemen</w>\": 12513,\n  \"yemeni</w>\": 44656,\n  \"yemi</w>\": 42267,\n  \"yen\": 29602,\n  \"yen</w>\": 17960,\n  \"yeo\": 32292,\n  \"yeo</w>\": 43830,\n  \"yeol</w>\": 15808,\n  \"yeon</w>\": 16602,\n  \"yep</w>\": 10964,\n  \"yer\": 15491,\n  \"yer</w>\": 2371,\n  \"yers</w>\": 3722,\n  \"yes\": 21620,\n  \"yes</w>\": 1958,\n  \"yess\": 42778,\n  \"yess</w>\": 40189,\n  \"yesss</w>\": 36210,\n  \"yessss</w>\": 45620,\n  \"yester\": 1905,\n  \"yesterday</w>\": 1926,\n  \"yesterdays</w>\": 36238,\n  \"yesung</w>\": 38527,\n  \"yet</w>\": 2296,\n  \"yeti</w>\": 34228,\n  \"yev</w>\": 39855,\n  \"yew</w>\": 34660,\n  \"yey</w>\": 45447,\n  \"yg</w>\": 16396,\n  \"ygk</w>\": 44758,\n  \"ygo\": 46166,\n  \"yh</w>\": 41978,\n  \"yi\": 5826,\n  \"yi</w>\": 14762,\n  \"yield</w>\": 16825,\n  \"yields</w>\": 24856,\n  \"yikes</w>\": 25094,\n  \"yin\": 26476,\n  \"yin</w>\": 23543,\n  \"ying\": 42933,\n  \"ying</w>\": 910,\n  \"yixing</w>\": 32120,\n  \"yk</w>\": 30965,\n  \"yl\": 2656,\n  \"yl</w>\": 4045,\n  \"ylan</w>\": 41875,\n  \"ylde</w>\": 42850,\n  \"yle\": 32305,\n  \"yle</w>\": 10770,\n  \"ylene</w>\": 34239,\n  \"yler</w>\": 48081,\n  \"yles</w>\": 42860,\n  \"ylon</w>\": 22375,\n  \"ylor</w>\": 48468,\n  \"ym\": 1786,\n  \"ym</w>\": 19587,\n  \"yman</w>\": 29077,\n  \"ymc\": 47101,\n  \"ymca</w>\": 22369,\n  \"yment</w>\": 8199,\n  \"ymes</w>\": 39968,\n  \"ymi</w>\": 5271,\n  \"ymm</w>\": 37133,\n  \"ymoun\": 41426,\n  \"ymouth</w>\": 36429,\n  \"yn\": 2823,\n  \"yn</w>\": 4100,\n  \"yne</w>\": 18238,\n  \"ynes</w>\": 18020,\n  \"ynn</w>\": 10499,\n  \"ynna</w>\": 48292,\n  \"ynwa</w>\": 27372,\n  \"yo\": 586,\n  \"yo</w>\": 3497,\n  \"yoda</w>\": 31922,\n  \"yof\": 5966,\n  \"yofficial</w>\": 21818,\n  \"yofthe\": 43983,\n  \"yog\": 34985,\n  \"yog</w>\": 36539,\n  \"yoga\": 25872,\n  \"yoga</w>\": 5523,\n  \"yogh\": 32626,\n  \"yoghurt</w>\": 33491,\n  \"yogi</w>\": 22766,\n  \"yogur\": 16137,\n  \"yogurt</w>\": 16819,\n  \"yoh</w>\": 48880,\n  \"yoke</w>\": 41969,\n  \"yoko\": 25929,\n  \"yoko</w>\": 32256,\n  \"yokohama</w>\": 42409,\n  \"yol\": 19387,\n  \"yol</w>\": 35218,\n  \"yolanda</w>\": 43845,\n  \"yolo</w>\": 20905,\n  \"yom\": 34718,\n  \"yom</w>\": 44527,\n  \"yon\": 10147,\n  \"yon</w>\": 7604,\n  \"yong\": 27960,\n  \"yong</w>\": 20887,\n  \"yonge</w>\": 48592,\n  \"yoo\": 25842,\n  \"yoo</w>\": 20775,\n  \"yoon\": 30863,\n  \"yoon</w>\": 22113,\n  \"yoona</w>\": 32736,\n  \"yoongi</w>\": 24037,\n  \"yor\": 2028,\n  \"yor</w>\": 21132,\n  \"york\": 5318,\n  \"york</w>\": 2705,\n  \"yorker</w>\": 23865,\n  \"yorkers</w>\": 41041,\n  \"yorks</w>\": 39093,\n  \"yorkshi\": 43367,\n  \"yorkshire\": 27007,\n  \"yorkshire</w>\": 8633,\n  \"yoruba</w>\": 46083,\n  \"yos</w>\": 35607,\n  \"yosemite</w>\": 25893,\n  \"yoshi\": 22920,\n  \"yoshi</w>\": 25354,\n  \"yot\": 22875,\n  \"yotes</w>\": 46157,\n  \"yotpo</w>\": 26113,\n  \"you\": 1562,\n  \"you</w>\": 592,\n  \"youare\": 33879,\n  \"youcan\": 32498,\n  \"youknow\": 47919,\n  \"youknow</w>\": 41088,\n  \"youn\": 1596,\n  \"young\": 6939,\n  \"young</w>\": 1888,\n  \"younger</w>\": 10414,\n  \"youngest</w>\": 12316,\n  \"youngjae</w>\": 46426,\n  \"youngster</w>\": 35881,\n  \"youngsters</w>\": 28098,\n  \"younow</w>\": 33831,\n  \"your\": 2130,\n  \"your</w>\": 695,\n  \"youre\": 28344,\n  \"youre</w>\": 19695,\n  \"yourown\": 28583,\n  \"yours</w>\": 3834,\n  \"yourself</w>\": 3053,\n  \"yourselves</w>\": 19747,\n  \"youth\": 10743,\n  \"youth</w>\": 3281,\n  \"youthful</w>\": 37480,\n  \"youths</w>\": 23614,\n  \"youts</w>\": 22737,\n  \"youtu\": 13868,\n  \"youtube\": 31258,\n  \"youtube</w>\": 3895,\n  \"youtuber</w>\": 24720,\n  \"youtubers</w>\": 36822,\n  \"youu</w>\": 35055,\n  \"youuu</w>\": 35324,\n  \"youuuu</w>\": 47123,\n  \"yoy</w>\": 41865,\n  \"yp\": 38370,\n  \"yp</w>\": 34734,\n  \"ypg</w>\": 37386,\n  \"yql</w>\": 46122,\n  \"yqr</w>\": 36881,\n  \"yr\": 18395,\n  \"yr</w>\": 4333,\n  \"yrs</w>\": 4822,\n  \"ys\": 1971,\n  \"ys</w>\": 961,\n  \"yser</w>\": 33121,\n  \"ysis</w>\": 4843,\n  \"ysl</w>\": 45681,\n  \"ysm</w>\": 23842,\n  \"yst\": 40528,\n  \"yt\": 36777,\n  \"yt</w>\": 14779,\n  \"ytd</w>\": 47524,\n  \"yte</w>\": 48172,\n  \"yu\": 3371,\n  \"yu</w>\": 8887,\n  \"yuan</w>\": 26236,\n  \"yuck</w>\": 48282,\n  \"yugo\": 48231,\n  \"yuh</w>\": 42547,\n  \"yui</w>\": 47932,\n  \"yuk\": 17037,\n  \"yuk</w>\": 24063,\n  \"yuki</w>\": 34010,\n  \"yukon</w>\": 27094,\n  \"yul\": 39832,\n  \"yum\": 6869,\n  \"yum</w>\": 7259,\n  \"yuma</w>\": 47566,\n  \"yummy</w>\": 7687,\n  \"yun\": 14976,\n  \"yun</w>\": 18288,\n  \"yung\": 44545,\n  \"yung</w>\": 17676,\n  \"yunho</w>\": 39748,\n  \"yup</w>\": 13231,\n  \"yur\": 42533,\n  \"yuri</w>\": 23823,\n  \"yusuf</w>\": 33222,\n  \"yuv\": 36784,\n  \"yves</w>\": 33698,\n  \"yvon\": 23327,\n  \"yvonne</w>\": 32583,\n  \"yvr</w>\": 29058,\n  \"yw\": 33741,\n  \"yx</w>\": 35624,\n  \"yxe</w>\": 34240,\n  \"yy\": 3433,\n  \"yy</w>\": 8321,\n  \"yya</w>\": 37444,\n  \"yyc\": 27542,\n  \"yyc</w>\": 11741,\n  \"yyj</w>\": 26203,\n  \"yyy</w>\": 11514,\n  \"yyyy\": 38749,\n  \"yyyy</w>\": 16955,\n  \"yyyyy</w>\": 26089,\n  \"yyyyyy</w>\": 47055,\n  \"yz\": 37579,\n  \"yz</w>\": 46451,\n  \"yÃ¼\": 48232,\n  \"z\": 89,\n  \"z</w>\": 345,\n  \"za\": 3710,\n  \"za</w>\": 2186,\n  \"zab\": 22982,\n  \"zable</w>\": 37002,\n  \"zac\": 25501,\n  \"zac</w>\": 19159,\n  \"zach\": 13401,\n  \"zach</w>\": 11815,\n  \"zachary</w>\": 32401,\n  \"zack\": 30567,\n  \"zack</w>\": 19120,\n  \"zad\": 47314,\n  \"zad</w>\": 27838,\n  \"zada</w>\": 34889,\n  \"zaf\": 21837,\n  \"zafar</w>\": 46668,\n  \"zag\": 26091,\n  \"zag</w>\": 29346,\n  \"zagre\": 34107,\n  \"zagreb</w>\": 35355,\n  \"zah\": 23258,\n  \"zah</w>\": 43297,\n  \"zaha</w>\": 44408,\n  \"zai\": 44329,\n  \"zai</w>\": 27065,\n  \"zain\": 34400,\n  \"zain</w>\": 45366,\n  \"zak\": 13050,\n  \"zak</w>\": 20738,\n  \"zaki</w>\": 48091,\n  \"zal\": 20552,\n  \"zal</w>\": 33298,\n  \"zam\": 7218,\n  \"zam</w>\": 41578,\n  \"zambia</w>\": 21671,\n  \"zan\": 7284,\n  \"zan</w>\": 17835,\n  \"zana</w>\": 39643,\n  \"zand\": 37712,\n  \"zane</w>\": 34786,\n  \"zani</w>\": 45373,\n  \"zania</w>\": 15059,\n  \"zano</w>\": 27637,\n  \"zanzi\": 47835,\n  \"zap\": 24134,\n  \"zapp\": 33504,\n  \"zappa</w>\": 46592,\n  \"zar\": 5458,\n  \"zar</w>\": 16392,\n  \"zara</w>\": 24454,\n  \"zardari</w>\": 20174,\n  \"zas</w>\": 48261,\n  \"zation</w>\": 3683,\n  \"zawa</w>\": 49281,\n  \"zay\": 7102,\n  \"zayed</w>\": 36726,\n  \"zayn\": 22292,\n  \"zayn</w>\": 10308,\n  \"zaynmalik</w>\": 25278,\n  \"zazzle</w>\": 47857,\n  \"ze\": 2254,\n  \"ze</w>\": 1298,\n  \"zeal\": 44951,\n  \"zealand</w>\": 7618,\n  \"zeb</w>\": 46518,\n  \"zebra\": 47394,\n  \"zebra</w>\": 22548,\n  \"zed\": 21047,\n  \"zed</w>\": 1993,\n  \"zedd</w>\": 45608,\n  \"zee\": 25468,\n  \"zee</w>\": 14080,\n  \"zeiss</w>\": 47460,\n  \"zeit\": 37898,\n  \"zeit</w>\": 37906,\n  \"zek</w>\": 40829,\n  \"zeke</w>\": 47065,\n  \"zel\": 10389,\n  \"zel</w>\": 12027,\n  \"zelda</w>\": 17138,\n  \"zell</w>\": 39526,\n  \"zen\": 8518,\n  \"zen</w>\": 3928,\n  \"zend\": 33478,\n  \"zendaya</w>\": 35956,\n  \"zenith</w>\": 44740,\n  \"zens</w>\": 15298,\n  \"zeph\": 40726,\n  \"zepp\": 22977,\n  \"zeppelin</w>\": 25408,\n  \"zer\": 6118,\n  \"zer</w>\": 3716,\n  \"zero\": 14867,\n  \"zero</w>\": 5848,\n  \"zers</w>\": 9547,\n  \"zes</w>\": 4073,\n  \"zest</w>\": 37709,\n  \"zet\": 34098,\n  \"zeta</w>\": 30954,\n  \"zetta</w>\": 45993,\n  \"zeus</w>\": 32800,\n  \"zey\": 46647,\n  \"zh\": 33389,\n  \"zh</w>\": 41621,\n  \"zhang</w>\": 21127,\n  \"zhen\": 37374,\n  \"zhen</w>\": 33236,\n  \"zhou</w>\": 17384,\n  \"zhu\": 42049,\n  \"zi\": 2651,\n  \"zi</w>\": 5819,\n  \"zia</w>\": 13764,\n  \"zid\": 30235,\n  \"zidane</w>\": 34643,\n  \"zie\": 29316,\n  \"zie</w>\": 8956,\n  \"zieg\": 40157,\n  \"ziegler</w>\": 46812,\n  \"ziel</w>\": 32151,\n  \"zier</w>\": 15399,\n  \"zies</w>\": 38001,\n  \"ziest</w>\": 28159,\n  \"zig\": 15950,\n  \"zig</w>\": 21345,\n  \"ziggy</w>\": 39274,\n  \"zik</w>\": 30125,\n  \"zika</w>\": 28783,\n  \"zil\": 25039,\n  \"zil</w>\": 33190,\n  \"zilla</w>\": 17879,\n  \"zim\": 8112,\n  \"zim</w>\": 22577,\n  \"zimbab\": 12373,\n  \"zimbabwe\": 45668,\n  \"zimbabwe</w>\": 13583,\n  \"zimmer\": 27452,\n  \"zimmer</w>\": 35211,\n  \"zimmerman</w>\": 38231,\n  \"zin\": 14085,\n  \"zin</w>\": 21278,\n  \"zinc</w>\": 27458,\n  \"zind\": 26206,\n  \"zindabad</w>\": 42208,\n  \"zine</w>\": 16100,\n  \"zing\": 25062,\n  \"zing</w>\": 3152,\n  \"zinger</w>\": 42027,\n  \"zio</w>\": 13906,\n  \"zion\": 31763,\n  \"zion</w>\": 20963,\n  \"zione</w>\": 36161,\n  \"zionist</w>\": 33078,\n  \"zip\": 26479,\n  \"zip</w>\": 16083,\n  \"zipper</w>\": 33670,\n  \"zir\": 31892,\n  \"zl</w>\": 39168,\n  \"zlat\": 32489,\n  \"zlatan</w>\": 37877,\n  \"zm</w>\": 43691,\n  \"zman</w>\": 24248,\n  \"zn</w>\": 18004,\n  \"zo\": 4397,\n  \"zo</w>\": 5056,\n  \"zodi\": 22660,\n  \"zodiac</w>\": 27753,\n  \"zoe\": 43114,\n  \"zoe</w>\": 16662,\n  \"zoey</w>\": 39871,\n  \"zog</w>\": 40680,\n  \"zol\": 25939,\n  \"zola</w>\": 46105,\n  \"zom\": 6623,\n  \"zombi\": 29452,\n  \"zombie</w>\": 11819,\n  \"zombies\": 46702,\n  \"zombies</w>\": 16517,\n  \"zon\": 15109,\n  \"zon</w>\": 14618,\n  \"zona</w>\": 42134,\n  \"zone\": 37197,\n  \"zone</w>\": 4442,\n  \"zones</w>\": 17247,\n  \"zoning</w>\": 36790,\n  \"zoo\": 8182,\n  \"zoo</w>\": 7147,\n  \"zoom\": 32671,\n  \"zoom</w>\": 13909,\n  \"zor\": 17605,\n  \"zou\": 38072,\n  \"zr</w>\": 39275,\n  \"zs</w>\": 35248,\n  \"zshq</w>\": 41442,\n  \"zt</w>\": 42629,\n  \"zu\": 4091,\n  \"zu</w>\": 14184,\n  \"zucchini</w>\": 29873,\n  \"zucker\": 26890,\n  \"zuckerberg</w>\": 30066,\n  \"zul\": 31146,\n  \"zulu</w>\": 32821,\n  \"zum</w>\": 35094,\n  \"zuma</w>\": 23326,\n  \"zumba</w>\": 32976,\n  \"zun\": 42440,\n  \"zur\": 17128,\n  \"zurich</w>\": 21288,\n  \"zw</w>\": 42188,\n  \"zx</w>\": 31604,\n  \"zy\": 6615,\n  \"zy</w>\": 2303,\n  \"zyk</w>\": 39112,\n  \"zyme</w>\": 36472,\n  \"zyn\": 45287,\n  \"zz\": 1544,\n  \"zz</w>\": 4943,\n  \"zza</w>\": 14642,\n  \"zzi</w>\": 13974,\n  \"zzie</w>\": 18635,\n  \"zzle</w>\": 7873,\n  \"zzled</w>\": 39075,\n  \"zzo</w>\": 14036,\n  \"zzy\": 21275,\n  \"zzy</w>\": 8353,\n  \"zzz</w>\": 20055,\n  \"zzzz\": 35742,\n  \"zzzz</w>\": 43103,\n  \"{\": 90,\n  \"{</w>\": 346,\n  \"{}</w>\": 39025,\n  \"|\": 91,\n  \"|#</w>\": 31183,\n  \"|</w>\": 347,\n  \"|@</w>\": 41677,\n  \"||</w>\": 7566,\n  \"}\": 92,\n  \"}</w>\": 348,\n  \"~\": 93,\n  \"~!</w>\": 31181,\n  \"~\\\"</w>\": 48442,\n  \"~</w>\": 349,\n  \"~></w>\": 43291,\n  \"~@</w>\": 44247,\n  \"~~\": 11461,\n  \"~~</w>\": 16671,\n  \"~~~</w>\": 32472,\n  \"~~~~\": 28295,\n  \"¡\": 94,\n  \"¡</w>\": 350,\n  \"¡ï¸ı\": 15113,\n  \"¡ï¸ı</w>\": 4174,\n  \"¡ľ\": 43991,\n  \"¢\": 95,\n  \"¢</w>\": 351,\n  \"£\": 96,\n  \"£</w>\": 352,\n  \"£ï¸ı</w>\": 18446,\n  \"¤\": 97,\n  \"¤</w>\": 353,\n  \"¥\": 98,\n  \"¥</w>\": 354,\n  \"¦\": 99,\n  \"¦</w>\": 355,\n  \"¦Ī</w>\": 47615,\n  \"§\": 100,\n  \"§</w>\": 356,\n  \"¨\": 101,\n  \"¨</w>\": 357,\n  \"©\": 102,\n  \"©</w>\": 358,\n  \"ª\": 103,\n  \"ª</w>\": 359,\n  \"«\": 104,\n  \"«</w>\": 360,\n  \"¬\": 105,\n  \"¬</w>\": 361,\n  \"¬ë\": 31736,\n  \"®\": 106,\n  \"®</w>\": 362,\n  \"¯\": 107,\n  \"¯</w>\": 363,\n  \"°\": 108,\n  \"°:</w>\": 21787,\n  \"°</w>\": 364,\n  \"°ï¸ı</w>\": 34777,\n  \"±\": 109,\n  \"±</w>\": 365,\n  \"±ï¸ı</w>\": 41020,\n  \"²\": 110,\n  \"²</w>\": 366,\n  \"³\": 111,\n  \"³</w>\": 367,\n  \"³ï¸ı\": 22195,\n  \"³ï¸ı</w>\": 24706,\n  \"´\": 112,\n  \"´</w>\": 368,\n  \"µ\": 113,\n  \"µ</w>\": 369,\n  \"µï¸ı</w>\": 27605,\n  \"¶\": 114,\n  \"¶</w>\": 370,\n  \"·\": 115,\n  \"·</w>\": 371,\n  \"¸\": 116,\n  \"¸</w>\": 372,\n  \"¸ë\": 19693,\n  \"¹\": 117,\n  \"¹</w>\": 373,\n  \"º\": 118,\n  \"º</w>\": 374,\n  \"»\": 119,\n  \"»</w>\": 375,\n  \"¼\": 120,\n  \"¼</w>\": 376,\n  \"½\": 121,\n  \"½</w>\": 377,\n  \"½ï¸ı</w>\": 31333,\n  \"¾\": 122,\n  \"¾</w>\": 378,\n  \"¿\": 123,\n  \"¿</w>\": 379,\n  \"À\": 124,\n  \"À</w>\": 380,\n  \"Á\": 125,\n  \"Á</w>\": 381,\n  \"Â\": 126,\n  \"Â</w>\": 382,\n  \"Â¡\": 26868,\n  \"Â¡</w>\": 10830,\n  \"Â¡Â¡</w>\": 45505,\n  \"Â¢</w>\": 41359,\n  \"Â£\": 31117,\n  \"Â£</w>\": 1950,\n  \"Â¥</w>\": 20199,\n  \"Â¨\": 19957,\n  \"Â¨Â¨\": 23089,\n  \"Â¨Â¨Â¨Â¨\": 41223,\n  \"Â©\": 31148,\n  \"Â©</w>\": 5811,\n  \"Â«</w>\": 14434,\n  \"Â®\": 30857,\n  \"Â®</w>\": 8436,\n  \"Â¯\": 38682,\n  \"Â¯</w>\": 43593,\n  \"Â¯\\\\\": 44096,\n  \"Â¯\\\\_(</w>\": 45115,\n  \"Â°\": 21305,\n  \"Â°</w>\": 6858,\n  \"Â²</w>\": 41175,\n  \"Â´\": 30560,\n  \"Â´</w>\": 12559,\n  \"Â·</w>\": 14844,\n  \"Âº</w>\": 28059,\n  \"Â»\": 31642,\n  \"Â»</w>\": 7599,\n  \"Â½</w>\": 33613,\n  \"Â¿\": 44559,\n  \"Â¿</w>\": 17133,\n  \"ÂŃ</w>\": 22618,\n  \"Ã\": 127,\n  \"Ã</w>\": 383,\n  \"Ã¡\": 7261,\n  \"Ã¡</w>\": 22229,\n  \"Ã¡n\": 38340,\n  \"Ã¡n</w>\": 21385,\n  \"Ã¢\": 26170,\n  \"Ã£\": 19339,\n  \"Ã£o</w>\": 21141,\n  \"Ã¤\": 10896,\n  \"Ã¤</w>\": 47276,\n  \"Ã¤n\": 42787,\n  \"Ã¥\": 23176,\n  \"Ã¦\": 42495,\n  \"Ã§\": 10067,\n  \"Ã§a</w>\": 22711,\n  \"Ã¨\": 12138,\n  \"Ã¨</w>\": 37761,\n  \"Ã¨re</w>\": 30272,\n  \"Ã¨s</w>\": 41210,\n  \"Ã©\": 3459,\n  \"Ã©</w>\": 4166,\n  \"Ã©al</w>\": 45251,\n  \"Ã©e</w>\": 13489,\n  \"Ã©s</w>\": 20507,\n  \"Ãª\": 27515,\n  \"Ã«\": 29526,\n  \"Ã«</w>\": 40520,\n  \"Ã®\": 48704,\n  \"Ã¯\": 35689,\n  \"Ã±\": 6445,\n  \"Ã±a</w>\": 17753,\n  \"Ã±o</w>\": 16574,\n  \"Ã±os</w>\": 40104,\n  \"Ã³\": 8891,\n  \"Ã³</w>\": 27733,\n  \"Ã³n</w>\": 13926,\n  \"Ã´\": 26815,\n  \"Ã¶\": 7255,\n  \"Ã¶</w>\": 37423,\n  \"Ã¶r\": 31762,\n  \"Ã¸\": 17483,\n  \"Ã¸</w>\": 45598,\n  \"Ãº\": 17963,\n  \"Ãº</w>\": 36019,\n  \"Ã¼\": 6522,\n  \"Ã¼</w>\": 47177,\n  \"Ã¼r\": 26132,\n  \"ÃĹ</w>\": 16165,\n  \"Ãł\": 36149,\n  \"Ãł</w>\": 21259,\n  \"ÃŃ\": 8366,\n  \"ÃŃ</w>\": 23928,\n  \"ÃŃa</w>\": 16609,\n  \"ÃŃn</w>\": 33623,\n  \"Ä\": 128,\n  \"Ä</w>\": 384,\n  \"Ä±\": 18562,\n  \"Ä±</w>\": 41901,\n  \"Äģ\": 23134,\n  \"Äĩ</w>\": 31719,\n  \"Äį\": 45414,\n  \"ÄŁ\": 26540,\n  \"Å\": 129,\n  \"Å</w>\": 385,\n  \"Å¡\": 35621,\n  \"ÅĤ\": 40419,\n  \"Åį\": 41267,\n  \"ÅŁ\": 21254,\n  \"ÅŁ</w>\": 40706,\n  \"Æ\": 130,\n  \"Æ</w>\": 386,\n  \"Ç\": 131,\n  \"Ç</w>\": 387,\n  \"È\": 132,\n  \"È</w>\": 388,\n  \"É\": 133,\n  \"É</w>\": 389,\n  \"Ê\": 134,\n  \"Ê</w>\": 390,\n  \"Ë\": 135,\n  \"Ë</w>\": 391,\n  \"Ì\": 136,\n  \"Ì</w>\": 392,\n  \"Ìĩ</w>\": 16384,\n  \"Í\": 137,\n  \"Í</w>\": 393,\n  \"Î\": 138,\n  \"Î</w>\": 394,\n  \"Ï\": 139,\n  \"Ï</w>\": 395,\n  \"Ïī</w>\": 38065,\n  \"Ð\": 140,\n  \"Ð</w>\": 396,\n  \"Ð°\": 16912,\n  \"Ð°</w>\": 27080,\n  \"Ð°Ð\": 31090,\n  \"Ð²\": 39813,\n  \"Ðµ\": 22176,\n  \"Ð¸\": 16701,\n  \"Ð¸Ð\": 29503,\n  \"Ðº\": 27152,\n  \"Ð»\": 47611,\n  \"Ð¼\": 38018,\n  \"Ð½\": 22705,\n  \"Ð¾\": 13506,\n  \"Ð¾</w>\": 29386,\n  \"Ð¾Ð\": 20978,\n  \"Ð¾Ð´\": 38416,\n  \"Ð¾ÑĤ\": 28599,\n  \"Ð¿\": 26302,\n  \"Ð¿ÑĢÐ¸\": 46321,\n  \"Ð¿ÑĢÐ¸ÑĢÐ¾Ð´Ð°</w>\": 48150,\n  \"Ñ\": 141,\n  \"Ñ</w>\": 397,\n  \"ÑĢ\": 16370,\n  \"ÑĢÐ¸\": 41092,\n  \"ÑĢÐ¾Ð´\": 47039,\n  \"ÑĢÐ¾Ð´Ð°</w>\": 47929,\n  \"Ñģ\": 23669,\n  \"ÑĤ\": 17875,\n  \"Ñĥ\": 39729,\n  \"ÑĦ\": 27993,\n  \"ÑĦÐ¾ÑĤ\": 35155,\n  \"ÑĦÐ¾ÑĤÐ¾</w>\": 38981,\n  \"Ñĭ\": 45001,\n  \"Ò\": 142,\n  \"Ò</w>\": 398,\n  \"Ó\": 143,\n  \"Ó</w>\": 399,\n  \"Ô\": 144,\n  \"Ô</w>\": 400,\n  \"Õ\": 145,\n  \"Õ</w>\": 401,\n  \"Ö\": 146,\n  \"Ö</w>\": 402,\n  \"×\": 147,\n  \"×</w>\": 403,\n  \"Ø\": 148,\n  \"Ø</w>\": 404,\n  \"Ø§\": 6042,\n  \"Ø§</w>\": 22625,\n  \"Ø§Ø\": 13189,\n  \"Ø§Ø±\": 40137,\n  \"Ø§Ù\": 8453,\n  \"Ø§ÙĦ\": 12973,\n  \"Ø§Ùħ\": 47626,\n  \"Ø§ÙĨ\": 42773,\n  \"Ø§ÙĨ</w>\": 33200,\n  \"Ø¨\": 16378,\n  \"Ø¨</w>\": 35330,\n  \"Ø©</w>\": 20915,\n  \"Øª\": 18197,\n  \"Øª</w>\": 44333,\n  \"Ø¬\": 26375,\n  \"Ø®\": 41495,\n  \"Ø¯\": 19872,\n  \"Ø¯</w>\": 35566,\n  \"Ø±\": 10948,\n  \"Ø±</w>\": 24933,\n  \"Ø±ÙĬ\": 43273,\n  \"Ø²\": 36169,\n  \"Ø³\": 17856,\n  \"Ø´\": 28770,\n  \"Øµ\": 27271,\n  \"Ø·\": 32050,\n  \"Ø¹\": 18843,\n  \"Øº\": 48510,\n  \"ØŃ\": 25722,\n  \"Ù\": 149,\n  \"Ù</w>\": 405,\n  \"Ùģ\": 24112,\n  \"ÙĤ\": 27585,\n  \"Ùĥ\": 33499,\n  \"ÙĦ\": 14251,\n  \"ÙĦ</w>\": 37899,\n  \"Ùħ\": 12986,\n  \"Ùħ</w>\": 29945,\n  \"ÙĨ\": 16655,\n  \"ÙĨ</w>\": 25386,\n  \"Ùĩ\": 34274,\n  \"Ùĩ</w>\": 31343,\n  \"ÙĪ\": 12203,\n  \"ÙĪ</w>\": 38310,\n  \"ÙĪØ±\": 48242,\n  \"ÙĬ\": 12046,\n  \"ÙĬ</w>\": 23853,\n  \"Ú\": 150,\n  \"Ú</w>\": 406,\n  \"Ú©\": 26475,\n  \"Û\": 151,\n  \"Û</w>\": 407,\n  \"Ûģ\": 40480,\n  \"ÛĮ\": 21452,\n  \"ÛĮ</w>\": 32703,\n  \"Ü\": 152,\n  \"Ü</w>\": 408,\n  \"Ý\": 153,\n  \"Ý</w>\": 409,\n  \"Þ\": 154,\n  \"Þ</w>\": 410,\n  \"ß\": 155,\n  \"ß</w>\": 411,\n  \"à\": 156,\n  \"à</w>\": 412,\n  \"à¤\": 3124,\n  \"à¤¤</w>\": 27263,\n  \"à¤¦</w>\": 29552,\n  \"à¤¨</w>\": 26090,\n  \"à¤ª</w>\": 44149,\n  \"à¤¬</w>\": 43599,\n  \"à¤®\": 48254,\n  \"à¤®</w>\": 26774,\n  \"à¤¯</w>\": 37299,\n  \"à¤°\": 39136,\n  \"à¤°</w>\": 19052,\n  \"à¤²</w>\": 30881,\n  \"à¤µ</w>\": 39545,\n  \"à¤¶</w>\": 43181,\n  \"à¤¸</w>\": 28505,\n  \"à¤¹</w>\": 29446,\n  \"à¤¾\": 37973,\n  \"à¤¾</w>\": 13343,\n  \"à¤¿</w>\": 26721,\n  \"à¤Ĥ</w>\": 30833,\n  \"à¤ķ</w>\": 22067,\n  \"à¤Ĺ</w>\": 42598,\n  \"à¤ľ</w>\": 39561,\n  \"à¥\": 7410,\n  \"à¥Ģ\": 45791,\n  \"à¥Ģ</w>\": 25751,\n  \"à¥ģ</w>\": 39653,\n  \"à¥ĩ\": 48612,\n  \"à¥ĩ</w>\": 25130,\n  \"à¥ĭ</w>\": 34452,\n  \"à¥į</w>\": 19389,\n  \"à¦\": 11322,\n  \"à¦¾</w>\": 41532,\n  \"à§\": 26339,\n  \"à¨\": 15741,\n  \"à©\": 32086,\n  \"àª\": 22990,\n  \"à«\": 48347,\n  \"à¬\": 32791,\n  \"à®\": 6022,\n  \"à®¤</w>\": 34691,\n  \"à®©</w>\": 43394,\n  \"à®ª</w>\": 47388,\n  \"à®®</w>\": 35463,\n  \"à®°</w>\": 43270,\n  \"à®²</w>\": 47705,\n  \"à®¾</w>\": 32831,\n  \"à®¿</w>\": 27126,\n  \"à®ķ</w>\": 36168,\n  \"à®Ł</w>\": 45263,\n  \"à¯\": 11259,\n  \"à¯ģ</w>\": 33115,\n  \"à¯į</w>\": 16631,\n  \"à°\": 12100,\n  \"à±\": 23550,\n  \"à±į</w>\": 46098,\n  \"à²\": 9992,\n  \"à²¿</w>\": 47797,\n  \"à³\": 20745,\n  \"à³į</w>\": 36148,\n  \"à´\": 15418,\n  \"àµ\": 27392,\n  \"àµį</w>\": 45266,\n  \"à¶\": 29881,\n  \"à·\": 30766,\n  \"à¸\": 1777,\n  \"à¸¡\": 26137,\n  \"à¸¡</w>\": 29570,\n  \"à¸¢\": 27241,\n  \"à¸¢</w>\": 33091,\n  \"à¸£\": 32225,\n  \"à¸£</w>\": 27331,\n  \"à¸¥\": 34696,\n  \"à¸¥</w>\": 32746,\n  \"à¸§\": 26990,\n  \"à¸§</w>\": 30245,\n  \"à¸ª\": 37883,\n  \"à¸ª</w>\": 35737,\n  \"à¸«\": 33064,\n  \"à¸°\": 43920,\n  \"à¸°</w>\": 49234,\n  \"à¸±</w>\": 14978,\n  \"à¸²\": 11529,\n  \"à¸²</w>\": 38476,\n  \"à¸²à¸\": 12330,\n  \"à¸´</w>\": 17092,\n  \"à¸µ\": 22421,\n  \"à¸µ</w>\": 20278,\n  \"à¸µà¹Ī</w>\": 31511,\n  \"à¸·</w>\": 47991,\n  \"à¸¸</w>\": 30524,\n  \"à¸¹</w>\": 35273,\n  \"à¸ģ</w>\": 30767,\n  \"à¸ģà¸\": 31474,\n  \"à¸Ħ</w>\": 31757,\n  \"à¸Ħà¸\": 39628,\n  \"à¸ĩ\": 24603,\n  \"à¸ĩ</w>\": 33382,\n  \"à¸Ī\": 47608,\n  \"à¸Ĭ</w>\": 46324,\n  \"à¸Ķ\": 31107,\n  \"à¸Ķ</w>\": 38825,\n  \"à¸ķ\": 40273,\n  \"à¸ķ</w>\": 41108,\n  \"à¸Ĺ</w>\": 36171,\n  \"à¸Ļ\": 17474,\n  \"à¸Ļ</w>\": 17639,\n  \"à¸Ļà¸\": 23121,\n  \"à¸ļ\": 33859,\n  \"à¸ļ</w>\": 39616,\n  \"à¸ŀ</w>\": 48171,\n  \"à¸Ń\": 13398,\n  \"à¸Ń</w>\": 32818,\n  \"à¸Ńà¸\": 14649,\n  \"à¸Ńà¸ĩ\": 46622,\n  \"à¹\": 4484,\n  \"à¹Ģ\": 13729,\n  \"à¹Ģà¸\": 14076,\n  \"à¹ģà¸\": 23916,\n  \"à¹Ĥ\": 33118,\n  \"à¹ĥ\": 40962,\n  \"à¹Ħà¸\": 31718,\n  \"à¹ĩ</w>\": 38699,\n  \"à¹Ī</w>\": 11722,\n  \"à¹ī</w>\": 13123,\n  \"à¹Į</w>\": 28353,\n  \"à¼\": 46186,\n  \"à½\": 39219,\n  \"á\": 157,\n  \"á</w>\": 413,\n  \"á´\": 19036,\n  \"áµ\": 17330,\n  \"áĢ\": 45932,\n  \"áĥ\": 24829,\n  \"áĥ¦</w>\": 32193,\n  \"â\": 158,\n  \"â</w>\": 414,\n  \"â¤\": 25087,\n  \"â¤µï¸ı</w>\": 36026,\n  \"â¬\": 7930,\n  \"â¬ħï¸ı</w>\": 42111,\n  \"â¬Ĩ\": 27718,\n  \"â¬Ĩï¸ı</w>\": 32798,\n  \"â¬ĩ\": 10917,\n  \"â¬ĩ</w>\": 39370,\n  \"â¬ĩï¸ı\": 25621,\n  \"â¬ĩï¸ı</w>\": 13984,\n  \"â¬ĩï¸ıâ¬ĩï¸ı\": 40159,\n  \"âĢ\": 728,\n  \"âĢ¢\": 9485,\n  \"âĢ¢</w>\": 2701,\n  \"âĢ¢âĢ¢\": 15006,\n  \"âĢ¢âĢ¢</w>\": 47575,\n  \"âĢ¢âĢ¢âĢ¢âĢ¢\": 27502,\n  \"âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢\": 48630,\n  \"âĢ¦\": 7095,\n  \"âĢ¦\\\"</w>\": 20215,\n  \"âĢ¦..</w>\": 47779,\n  \"âĢ¦.</w>\": 18615,\n  \"âĢ¦/</w>\": 29842,\n  \"âĢ¦</w>\": 959,\n  \"âĢ¦âĢ¦</w>\": 40066,\n  \"âĢ²</w>\": 32633,\n  \"âĢ³</w>\": 25061,\n  \"âĢ¼\": 6578,\n  \"âĢ¼ï¸ı\": 15622,\n  \"âĢ¼ï¸ı</w>\": 8310,\n  \"âĢ¼ï¸ıâĢ¼ï¸ı</w>\": 33218,\n  \"âĢĭ\": 17086,\n  \"âĢĭ</w>\": 9844,\n  \"âĢį\": 4244,\n  \"âĢįâĻ\": 5177,\n  \"âĢįâĻĢï¸ı\": 18897,\n  \"âĢįâĻĢï¸ı</w>\": 9605,\n  \"âĢįâĻĤ\": 8832,\n  \"âĢįâĻĤï¸ı\": 21779,\n  \"âĢįâĻĤï¸ı</w>\": 10613,\n  \"âĢİ</w>\": 31001,\n  \"âĢĲ</w>\": 34512,\n  \"âĢĵ\": 21070,\n  \"âĢĵ</w>\": 1224,\n  \"âĢĶ\": 6718,\n  \"âĢĶ</w>\": 2005,\n  \"âĢĶ></w>\": 26341,\n  \"âĢĶ@</w>\": 28470,\n  \"âĢĶâĢĶ\": 10037,\n  \"âĢĶâĢĶ</w>\": 44800,\n  \"âĢĶâĢĶâĢĶâĢĶ\": 17797,\n  \"âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ\": 34432,\n  \"âĢķ</w>\": 14236,\n  \"âģ\": 1667,\n  \"âģ£\": 31089,\n  \"âģ£</w>\": 16845,\n  \"âģ¦\": 2773,\n  \"âģ¦</w>\": 34855,\n  \"âģ¦@</w>\": 2859,\n  \"âģ¦âģ¦@</w>\": 27783,\n  \"âģ©\": 20097,\n  \"âģ©,</w>\": 48749,\n  \"âģ©.</w>\": 35777,\n  \"âģ©</w>\": 2918,\n  \"âģīï¸ı</w>\": 46534,\n  \"âģł\": 23881,\n  \"âģł</w>\": 13503,\n  \"âģłâģł</w>\": 33488,\n  \"âĤ\": 5227,\n  \"âĤ¬\": 34919,\n  \"âĤ¬</w>\": 6309,\n  \"âĤ¹</w>\": 21777,\n  \"âĥ\": 2805,\n  \"âĥ£\": 11250,\n  \"âĥ£</w>\": 3076,\n  \"âĥ£@</w>\": 48291,\n  \"âĦ\": 8604,\n  \"âĦ¢\": 29438,\n  \"âĦ¢</w>\": 11675,\n  \"âĦ¹</w>\": 45462,\n  \"âĨ\": 6059,\n  \"âĨĴ</w>\": 7481,\n  \"âĨĵ</w>\": 41603,\n  \"âĩ\": 27228,\n  \"âĪ\": 17788,\n  \"âī\": 22684,\n  \"âīĪ</w>\": 45451,\n  \"âĮ\": 17848,\n  \"âĮļ\": 31301,\n  \"âĮļï¸ı</w>\": 35931,\n  \"âı\": 7960,\n  \"âı©</w>\": 40847,\n  \"âı°</w>\": 12714,\n  \"âı±</w>\": 33149,\n  \"âı³</w>\": 47617,\n  \"âĵ\": 27400,\n  \"âĶ\": 13389,\n  \"âĶĢ\": 45139,\n  \"âĶģ\": 42022,\n  \"âķ\": 17027,\n  \"âķĲ\": 48039,\n  \"âĸ\": 4168,\n  \"âĸª\": 21203,\n  \"âĸª</w>\": 36628,\n  \"âĸªï¸ı</w>\": 24974,\n  \"âĸ«\": 39478,\n  \"âĸ¬\": 33798,\n  \"âĸ¬âĸ¬\": 36975,\n  \"âĸ¶\": 12509,\n  \"âĸ¶</w>\": 21126,\n  \"âĸ¶ï¸ı</w>\": 14442,\n  \"âĸº\": 46061,\n  \"âĸº</w>\": 12086,\n  \"âĸ½\": 45634,\n  \"âĸł</w>\": 36791,\n  \"âĹ\": 9323,\n  \"âĹĨ</w>\": 48961,\n  \"âĹı</w>\": 26999,\n  \"âĺ\": 1741,\n  \"âĺ®</w>\": 45851,\n  \"âĺ¹\": 28811,\n  \"âĺ¹ï¸ı</w>\": 39605,\n  \"âĺº\": 5010,\n  \"âĺº</w>\": 8703,\n  \"âĺºâĺº</w>\": 46051,\n  \"âĺºï¸ı\": 11506,\n  \"âĺºï¸ı</w>\": 7779,\n  \"âĺºï¸ıâĺºï¸ı</w>\": 41315,\n  \"âĺ¼</w>\": 38877,\n  \"âĺĢ\": 32146,\n  \"âĺĢ</w>\": 22242,\n  \"âĺĢï¸ı\": 12817,\n  \"âĺĢï¸ı</w>\": 8219,\n  \"âĺĢï¸ıâĺĢï¸ı\": 44550,\n  \"âĺģ\": 25195,\n  \"âĺģï¸ı</w>\": 35197,\n  \"âĺĥ\": 38972,\n  \"âĺħ\": 9339,\n  \"âĺħ</w>\": 10643,\n  \"âĺħâĺħ\": 12681,\n  \"âĺħâĺħ</w>\": 36644,\n  \"âĺħâĺħâĺħâĺħ\": 34431,\n  \"âĺħâĺħâĺħâĺħ</w>\": 44034,\n  \"âĺħâĺħâĺħâĺħâĺħ</w>\": 45984,\n  \"âĺĨ\": 23941,\n  \"âĺĨ</w>\": 13439,\n  \"âĺİ\": 24045,\n  \"âĺİ</w>\": 45493,\n  \"âĺİï¸ı</w>\": 27219,\n  \"âĺĳ\": 20983,\n  \"âĺĳ</w>\": 42300,\n  \"âĺĳï¸ı</w>\": 22291,\n  \"âĺĶï¸ı</w>\": 31238,\n  \"âĺķ\": 11454,\n  \"âĺķ</w>\": 26561,\n  \"âĺķï¸ı\": 25839,\n  \"âĺķï¸ı</w>\": 15499,\n  \"âĺĺ\": 23483,\n  \"âĺĺï¸ı</w>\": 31454,\n  \"âĺĿ\": 21982,\n  \"âĺĿï¸ı</w>\": 38891,\n  \"âĺŀ</w>\": 31255,\n  \"âĺłï¸ı</w>\": 34672,\n  \"âĻ\": 1548,\n  \"âĻ¡\": 11091,\n  \"âĻ¡</w>\": 6251,\n  \"âĻ¡âĻ¡\": 22360,\n  \"âĻ¡âĻ¡</w>\": 34267,\n  \"âĻ¡âĻ¡âĻ¡</w>\": 36611,\n  \"âĻ¤</w>\": 47435,\n  \"âĻ¥\": 4622,\n  \"âĻ¥</w>\": 3405,\n  \"âĻ¥âĻ¥\": 12975,\n  \"âĻ¥âĻ¥</w>\": 19604,\n  \"âĻ¥âĻ¥âĻ¥</w>\": 23255,\n  \"âĻ¥âĻ¥âĻ¥âĻ¥\": 49020,\n  \"âĻ¥ï¸ı\": 17774,\n  \"âĻ¥ï¸ı</w>\": 10561,\n  \"âĻ¥ï¸ıâĻ¥ï¸ı\": 40309,\n  \"âĻ¦\": 32376,\n  \"âĻ¦</w>\": 47547,\n  \"âĻ©\": 30339,\n  \"âĻ©âĻ«</w>\": 31636,\n  \"âĻª\": 27364,\n  \"âĻª</w>\": 12382,\n  \"âĻ«\": 39217,\n  \"âĻ«</w>\": 10814,\n  \"âĻ¬</w>\": 24753,\n  \"âĻ»\": 39611,\n  \"âĻ»ï¸ı</w>\": 46075,\n  \"âļ\": 2234,\n  \"âļ¡\": 40098,\n  \"âļ¡</w>\": 20712,\n  \"âļ¡ï¸ı\": 19500,\n  \"âļ¡ï¸ı</w>\": 11605,\n  \"âļ¡ï¸ıâļ¡ï¸ı</w>\": 45922,\n  \"âļª\": 11922,\n  \"âļª</w>\": 36373,\n  \"âļªï¸ı\": 22251,\n  \"âļªï¸ı</w>\": 17885,\n  \"âļ«\": 15374,\n  \"âļ«ï¸ı\": 26529,\n  \"âļ«ï¸ı</w>\": 24649,\n  \"âļ½\": 4867,\n  \"âļ½</w>\": 13173,\n  \"âļ½âļ½\": 43259,\n  \"âļ½ï¸ı\": 11342,\n  \"âļ½ï¸ı</w>\": 6768,\n  \"âļ½ï¸ıâļ½ï¸ı\": 30358,\n  \"âļ½ï¸ıâļ½ï¸ı</w>\": 44148,\n  \"âļ¾\": 11314,\n  \"âļ¾</w>\": 34717,\n  \"âļ¾ï¸ı\": 24727,\n  \"âļ¾ï¸ı</w>\": 14858,\n  \"âļĵ\": 23522,\n  \"âļĵï¸ı</w>\": 35299,\n  \"âļĶï¸ı</w>\": 29361,\n  \"âļľ\": 47491,\n  \"âļł</w>\": 39203,\n  \"âļłï¸ı\": 40966,\n  \"âļłï¸ı</w>\": 15596,\n  \"âĽ\": 7956,\n  \"âĽ³ï¸ı</w>\": 29204,\n  \"âĽĦ\": 30668,\n  \"âĽĦï¸ı</w>\": 45465,\n  \"âľ\": 1508,\n  \"âľ¨\": 7181,\n  \"âľ¨</w>\": 3531,\n  \"âľ¨âľ¨\": 35174,\n  \"âľ¨âľ¨</w>\": 21985,\n  \"âľ¨âľ¨âľ¨</w>\": 39424,\n  \"âľĤ\": 38602,\n  \"âľħ\": 29544,\n  \"âľħ</w>\": 5564,\n  \"âľĪ\": 10682,\n  \"âľĪ</w>\": 30712,\n  \"âľĪï¸ı\": 26176,\n  \"âľĪï¸ı</w>\": 13413,\n  \"âľĬ\": 12392,\n  \"âľĬ</w>\": 17819,\n  \"âľĬðŁı½</w>\": 48547,\n  \"âľĬðŁı¾</w>\": 41185,\n  \"âľĭ\": 39383,\n  \"âľĭ</w>\": 30239,\n  \"âľĮ\": 6419,\n  \"âľĮ</w>\": 12656,\n  \"âľĮï¸ı\": 21906,\n  \"âľĮï¸ı</w>\": 12239,\n  \"âľĮðŁı»</w>\": 30538,\n  \"âľĮðŁı¼</w>\": 30588,\n  \"âľį\": 20872,\n  \"âľįï¸ı</w>\": 30888,\n  \"âľı\": 32574,\n  \"âľıï¸ı</w>\": 40724,\n  \"âľĵ</w>\": 36700,\n  \"âľĶ\": 47200,\n  \"âľĶ</w>\": 13749,\n  \"âľĶï¸ı\": 40544,\n  \"âľĶï¸ı</w>\": 9191,\n  \"âľĸï¸ı</w>\": 44133,\n  \"âľĿ\": 42220,\n  \"âĿ\": 1045,\n  \"âĿ£\": 37007,\n  \"âĿ£</w>\": 25623,\n  \"âĿ£ï¸ı</w>\": 25240,\n  \"âĿ¤\": 1266,\n  \"âĿ¤</w>\": 2720,\n  \"âĿ¤âĿ¤\": 9033,\n  \"âĿ¤âĿ¤</w>\": 14058,\n  \"âĿ¤âĿ¤âĿ¤</w>\": 16708,\n  \"âĿ¤âĿ¤âĿ¤âĿ¤\": 37918,\n  \"âĿ¤âĿ¤âĿ¤âĿ¤</w>\": 43970,\n  \"âĿ¤ï¸ı\": 2626,\n  \"âĿ¤ï¸ı#</w>\": 30281,\n  \"âĿ¤ï¸ı.</w>\": 45326,\n  \"âĿ¤ï¸ı</w>\": 1752,\n  \"âĿ¤ï¸ı@</w>\": 31187,\n  \"âĿ¤ï¸ıâĿ¤ï¸ı\": 6713,\n  \"âĿ¤ï¸ıâĿ¤ï¸ı</w>\": 10363,\n  \"âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı</w>\": 12282,\n  \"âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı\": 39167,\n  \"âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı</w>\": 29880,\n  \"âĿ¤ï¸ıðŁĴĻ</w>\": 37380,\n  \"âĿ¤ï¸ıðŁĺį</w>\": 37272,\n  \"âĿ¤ï¸ıðŁĺĺ</w>\": 41800,\n  \"âĿ¤ðŁĺį</w>\": 49120,\n  \"âĿ¥</w>\": 36914,\n  \"âĿĦ\": 8501,\n  \"âĿĦ</w>\": 30494,\n  \"âĿĦï¸ı\": 16834,\n  \"âĿĦï¸ı</w>\": 12402,\n  \"âĿĦï¸ıâĿĦï¸ı\": 41626,\n  \"âĿĮ\": 44485,\n  \"âĿĮ</w>\": 17975,\n  \"âĿĵ</w>\": 29791,\n  \"âĿĹ\": 12868,\n  \"âĿĹ</w>\": 29079,\n  \"âĿĹï¸ı\": 28642,\n  \"âĿĹï¸ı</w>\": 17391,\n  \"âĿĿ</w>\": 46951,\n  \"âŀ\": 3257,\n  \"âŀ¡</w>\": 12854,\n  \"âŀ¡ï¸ı\": 31860,\n  \"âŀ¡ï¸ı</w>\": 4956,\n  \"âŀ¤</w>\": 18651,\n  \"âŀķ</w>\": 46526,\n  \"âŀĸ\": 21327,\n  \"âŀĸ</w>\": 34902,\n  \"âŀĸâŀĸ\": 23316,\n  \"âŀĸâŀĸâŀĸâŀĸ\": 40401,\n  \"âŀľ</w>\": 23775,\n  \"âł\": 5689,\n  \"âłĢ\": 9691,\n  \"âłĢ</w>\": 8621,\n  \"âłĢâłĢ\": 11466,\n  \"âłĢâłĢ</w>\": 39092,\n  \"âłĢâłĢâłĢâłĢ\": 20976,\n  \"âłĢâłĢâłĢâłĢâłĢâłĢâłĢâłĢ\": 46063,\n  \"âŃ\": 5527,\n  \"âŃĲ\": 6410,\n  \"âŃĲ</w>\": 19012,\n  \"âŃĲâŃĲ\": 32663,\n  \"âŃĲï¸ı\": 12427,\n  \"âŃĲï¸ı</w>\": 10251,\n  \"âŃĲï¸ıâŃĲï¸ı\": 18640,\n  \"âŃĲï¸ıâŃĲï¸ıâŃĲï¸ı</w>\": 40746,\n  \"ã\": 159,\n  \"ã</w>\": 415,\n  \"ãĢ\": 4092,\n  \"ãĢģ</w>\": 45262,\n  \"ãĢĤ\": 38060,\n  \"ãĢĤ</w>\": 38000,\n  \"ãĢĬ</w>\": 39920,\n  \"ãĢĭ</w>\": 32898,\n  \"ãĢĮ</w>\": 18116,\n  \"ãĢį</w>\": 19149,\n  \"ãĢİ</w>\": 26947,\n  \"ãĢı</w>\": 30293,\n  \"ãĢĲ</w>\": 12534,\n  \"ãĢĳ</w>\": 12990,\n  \"ãĢľ</w>\": 39581,\n  \"ãģ\": 4813,\n  \"ãģ¦\": 48029,\n  \"ãģ¨\": 34671,\n  \"ãģ¨ç¹ĭãģ\": 47310,\n  \"ãģ¨ç¹ĭãģĮãĤĬãģŁãģĦ</w>\": 48290,\n  \"ãģª\": 29104,\n  \"ãģ®\": 21575,\n  \"ãģ·\": 44130,\n  \"ãģĦ\": 33523,\n  \"ãģĦ</w>\": 38850,\n  \"ãģĨ\": 44235,\n  \"ãģį\": 42184,\n  \"ãĤ\": 3909,\n  \"ãĤ¢\": 26560,\n  \"ãĤ¤\": 19319,\n  \"ãĤ¤ãĥ\": 36294,\n  \"ãĤ«\": 37367,\n  \"ãĤ¯\": 31574,\n  \"ãĤ·\": 37665,\n  \"ãĤ¸\": 32234,\n  \"ãĤ¸ãĥ\": 43491,\n  \"ãĤ¹\": 22694,\n  \"ãĤ¹</w>\": 39220,\n  \"ãĤ¹ãĥ\": 32421,\n  \"ãĤ¿\": 34941,\n  \"ãĤĬãģ\": 40500,\n  \"ãĤĮ</w>\": 45211,\n  \"ãĤŃ\": 47121,\n  \"ãĥ\": 2429,\n  \"ãĥ©\": 23007,\n  \"ãĥª\": 32115,\n  \"ãĥ«\": 33257,\n  \"ãĥ¬\": 32965,\n  \"ãĥ³\": 17671,\n  \"ãĥ³</w>\": 26875,\n  \"ãĥ³ãĤ\": 45105,\n  \"ãĥ³ãĥ\": 25914,\n  \"ãĥ»\": 8415,\n  \"ãĥ»</w>\": 11158,\n  \"ãĥ»ãĥ»\": 13949,\n  \"ãĥ»ãĥ»ãĥ»</w>\": 14234,\n  \"ãĥ¼\": 13457,\n  \"ãĥ¼</w>\": 30391,\n  \"ãĥ¼ãĥ\": 18584,\n  \"ãĥĥ\": 28902,\n  \"ãĥĦ</w>\": 32173,\n  \"ãĥĪ\": 42384,\n  \"ãĥİ</w>\": 39967,\n  \"ãĥķãĤ\": 33371,\n  \"ãĥŀ\": 48924,\n  \"ãĥŃ\": 35827,\n  \"ãħ\": 5947,\n  \"ãħ¤\": 21096,\n  \"ãħ¤ãħ¤\": 22583,\n  \"ãħ¤ãħ¤ãħ¤ãħ¤\": 39329,\n  \"ãħĭ\": 13052,\n  \"ãħĭ</w>\": 25108,\n  \"ãħĭãħĭ\": 16604,\n  \"ãħĭãħĭ</w>\": 42581,\n  \"ãħĭãħĭãħĭ</w>\": 46407,\n  \"ãħĭãħĭãħĭãħĭ\": 39362,\n  \"ãħł\": 16089,\n  \"ãħł</w>\": 25781,\n  \"ãħłãħł\": 22021,\n  \"ãħłãħł</w>\": 34398,\n  \"ãħłãħłãħłãħł\": 47028,\n  \"ä\": 160,\n  \"ä</w>\": 416,\n  \"ä¸\": 19759,\n  \"ä¹\": 41854,\n  \"äº\": 21078,\n  \"äºº\": 36839,\n  \"ä»\": 37743,\n  \"ä½\": 47466,\n  \"å\": 161,\n  \"å</w>\": 417,\n  \"å¤\": 23170,\n  \"å¥\": 29290,\n  \"å®\": 27047,\n  \"å°\": 34720,\n  \"å±\": 46096,\n  \"å¸\": 42021,\n  \"å¹\": 38780,\n  \"åħ\": 34314,\n  \"åĨ\": 27972,\n  \"åĨĻ\": 44653,\n  \"åĪ\": 42748,\n  \"åĭ\": 47505,\n  \"åı\": 34517,\n  \"åĲ\": 41673,\n  \"åĽ\": 39027,\n  \"åľ\": 37746,\n  \"åŃ\": 35751,\n  \"æ\": 162,\n  \"æ</w>\": 418,\n  \"æĸ\": 29032,\n  \"æĹ\": 22265,\n  \"æĹ¥\": 39121,\n  \"æĹ¥</w>\": 37156,\n  \"æĺ\": 42891,\n  \"æĻ\": 48132,\n  \"æľ\": 19277,\n  \"æľ¬\": 44353,\n  \"æĿ\": 27667,\n  \"æĿ±\": 48338,\n  \"ç\": 163,\n  \"ç</w>\": 419,\n  \"ç¥\": 26369,\n  \"ç¥Ń</w>\": 42557,\n  \"çµ\": 37810,\n  \"ç¹\": 43431,\n  \"ç¹ĭãģ\": 45930,\n  \"çĶ\": 20211,\n  \"çĶŁ\": 33375,\n  \"çľ\": 33440,\n  \"çľŁ\": 41570,\n  \"è\": 164,\n  \"è</w>\": 420,\n  \"èª\": 34002,\n  \"èªķ\": 41293,\n  \"é\": 165,\n  \"é</w>\": 421,\n  \"éģ\": 44854,\n  \"éĩ\": 38283,\n  \"ê\": 166,\n  \"ê</w>\": 422,\n  \"ê°\": 21122,\n  \"ê°ĵ\": 41076,\n  \"ê°ĵìĦ¸ë¸Ĳ</w>\": 41689,\n  \"ê°ķ\": 45758,\n  \"ê²\": 35555,\n  \"ê³\": 36216,\n  \"êµ\": 31871,\n  \"ê·\": 42680,\n  \"ê¸\": 32495,\n  \"ê¹\": 24531,\n  \"ê¹Ģ\": 25203,\n  \"ë\": 167,\n  \"ë</w>\": 423,\n  \"ë¦\": 24621,\n  \"ë¦¬\": 47649,\n  \"ë§\": 28024,\n  \"ë§Ī\": 40027,\n  \"ëª\": 36311,\n  \"ë¯\": 19528,\n  \"ë¯¼\": 34442,\n  \"ë¯¼</w>\": 44632,\n  \"ë°\": 15810,\n  \"ë°©\": 23273,\n  \"ë°©íĥ\": 25081,\n  \"ë°©íĥĦ\": 25641,\n  \"ë°©íĥĦìĨĮëħĦëĭ\": 26068,\n  \"ë°©íĥĦìĨĮëħĦëĭ¨</w>\": 27129,\n  \"ë°ķ\": 40988,\n  \"ë²\": 48267,\n  \"ë³\": 44693,\n  \"ë¹\": 24193,\n  \"ëĤ\": 27252,\n  \"ëĤĺ\": 48484,\n  \"ëĭ\": 13094,\n  \"ëĭ¤\": 46680,\n  \"ëĭĪ\": 33708,\n  \"ëį\": 45543,\n  \"ëı\": 31972,\n  \"ëĵ\": 30850,\n  \"ëĿ\": 44317,\n  \"ì\": 168,\n  \"ì</w>\": 424,\n  \"ì£\": 39856,\n  \"ì£¼\": 45161,\n  \"ì¤\": 31153,\n  \"ì§\": 16279,\n  \"ì§Ģ\": 28836,\n  \"ì§Ħ</w>\": 38890,\n  \"ì°\": 40742,\n  \"ì¶\": 42476,\n  \"ì¶ķ\": 46403,\n  \"ì¶ķíķĺ\": 47866,\n  \"ì¹\": 45088,\n  \"ìĤ\": 31061,\n  \"ìĥ\": 30587,\n  \"ìĥĿ\": 47858,\n  \"ìĦ\": 15074,\n  \"ìĦ¸ë\": 29254,\n  \"ìĦ¸ë¸\": 29658,\n  \"ìĦ¸ë¸Ĳ</w>\": 41415,\n  \"ìĨ\": 15115,\n  \"ìĨĮë\": 20515,\n  \"ìĨĮëħ\": 21391,\n  \"ìĨĮëħĦëĭ\": 25887,\n  \"ìĪ\": 32757,\n  \"ìĬ\": 12125,\n  \"ìĬ¤\": 20305,\n  \"ìĬ¤</w>\": 23829,\n  \"ìĭ\": 23924,\n  \"ìķ\": 16071,\n  \"ìķĦ\": 23233,\n  \"ìĸ\": 31625,\n  \"ìĹ\": 13252,\n  \"ìĹĲ\": 37622,\n  \"ìĹĳ\": 31036,\n  \"ìĹĳìĨ\": 42763,\n  \"ìĹĳìĨĮ</w>\": 45606,\n  \"ìĺ\": 21144,\n  \"ìĻ\": 39405,\n  \"ìļ\": 18541,\n  \"ìļ°\": 38415,\n  \"ìļ°</w>\": 49344,\n  \"ìĽ\": 22543,\n  \"ìĽĲ</w>\": 36495,\n  \"ìľ\": 20909,\n  \"ìľł\": 42890,\n  \"ìĿ\": 8276,\n  \"ìĿ´\": 12286,\n  \"ìĿ´</w>\": 34746,\n  \"ìĿ´ì\": 37590,\n  \"ìĿ¼\": 43406,\n  \"ìŀ\": 20849,\n  \"ìł\": 20580,\n  \"ìłķ\": 34725,\n  \"í\": 169,\n  \"í</w>\": 425,\n  \"íģ\": 35641,\n  \"íģ¬</w>\": 45832,\n  \"íĤ\": 43565,\n  \"íĥ\": 15012,\n  \"íĥĢ\": 41126,\n  \"íĥľ\": 37663,\n  \"íĬ\": 23215,\n  \"íĬ¸\": 48974,\n  \"íĬ¸</w>\": 39820,\n  \"íĭ\": 34350,\n  \"íĶ\": 29450,\n  \"íķ\": 15197,\n  \"íķ´</w>\": 35286,\n  \"íķĺ\": 33992,\n  \"íĺ\": 15962,\n  \"íĺ¸</w>\": 39657,\n  \"íĺĦ</w>\": 34645,\n  \"íĻ\": 31882,\n  \"î\": 170,\n  \"î</w>\": 426,\n  \"îĢ\": 36288,\n  \"îĦ\": 35368,\n  \"îĮ\": 41006,\n  \"îĲ\": 16929,\n  \"îĲĴ\": 40100,\n  \"ï\": 171,\n  \"ï</w>\": 427,\n  \"ï¸\": 842,\n  \"ï¸İ</w>\": 24029,\n  \"ï¸ı\": 1392,\n  \"ï¸ı#</w>\": 46997,\n  \"ï¸ı:</w>\": 32604,\n  \"ï¸ı</w>\": 1001,\n  \"ï¸ı@</w>\": 34600,\n  \"ï¸ıâĥ£\": 17394,\n  \"ï¸ıâĥ£-</w>\": 40376,\n  \"ï¸ıâĥ£</w>\": 4603,\n  \"ï¿\": 27850,\n  \"ï¿½\": 47356,\n  \"ï¿½</w>\": 39802,\n  \"ð\": 172,\n  \"ð</w>\": 428,\n  \"ðĿ\": 6874,\n  \"ðĿĲ\": 15889,\n  \"ðĿĳ\": 43794,\n  \"ðĿĴ\": 43387,\n  \"ðĿĵ\": 47110,\n  \"ðĿĹ\": 18865,\n  \"ðĿĺ\": 26109,\n  \"ðĿĻ\": 29415,\n  \"ðŁ\": 558,\n  \"ðŁ¤\": 1793,\n  \"ðŁ¤£\": 9665,\n  \"ðŁ¤£</w>\": 9909,\n  \"ðŁ¤£ðŁ¤£\": 16430,\n  \"ðŁ¤£ðŁ¤£</w>\": 31009,\n  \"ðŁ¤£ðŁ¤£ðŁ¤£</w>\": 32262,\n  \"ðŁ¤¤\": 39550,\n  \"ðŁ¤¤</w>\": 26759,\n  \"ðŁ¤¦\": 17186,\n  \"ðŁ¤§</w>\": 40983,\n  \"ðŁ¤©\": 27351,\n  \"ðŁ¤©</w>\": 16074,\n  \"ðŁ¤ª\": 44230,\n  \"ðŁ¤ª</w>\": 24920,\n  \"ðŁ¤«</w>\": 47671,\n  \"ðŁ¤¯</w>\": 37595,\n  \"ðŁ¤·\": 13185,\n  \"ðŁ¤·ðŁı»âĢįâĻĢï¸ı</w>\": 46770,\n  \"ðŁ¤ĳ</w>\": 34801,\n  \"ðŁ¤ĵ\": 36580,\n  \"ðŁ¤ĵ</w>\": 18928,\n  \"ðŁ¤Ķ\": 12706,\n  \"ðŁ¤Ķ</w>\": 6497,\n  \"ðŁ¤ĶðŁ¤Ķ</w>\": 28490,\n  \"ðŁ¤ĶðŁ¤ĶðŁ¤Ķ</w>\": 43361,\n  \"ðŁ¤ĸ</w>\": 46146,\n  \"ðŁ¤Ĺ\": 16646,\n  \"ðŁ¤Ĺ</w>\": 10465,\n  \"ðŁ¤ĹðŁ¤Ĺ</w>\": 44321,\n  \"ðŁ¤ĺ\": 10623,\n  \"ðŁ¤ĺ</w>\": 17288,\n  \"ðŁ¤ĺðŁı»\": 46449,\n  \"ðŁ¤ĺðŁı»</w>\": 30891,\n  \"ðŁ¤ĺðŁı¼</w>\": 31458,\n  \"ðŁ¤ĺðŁı½</w>\": 49362,\n  \"ðŁ¤Ļ\": 23800,\n  \"ðŁ¤Ļ</w>\": 39101,\n  \"ðŁ¤Ŀ</w>\": 35242,\n  \"ðŁ¤ŀ\": 29463,\n  \"ðŁ¤ŀ</w>\": 38597,\n  \"ðŁ¤Ł\": 48509,\n  \"ðŁ¤ł</w>\": 36737,\n  \"ðŁ¤Ń</w>\": 47289,\n  \"ðŁ¥\": 4156,\n  \"ðŁ¥°\": 29246,\n  \"ðŁ¥°</w>\": 17597,\n  \"ðŁ¥³\": 45823,\n  \"ðŁ¥³</w>\": 28055,\n  \"ðŁ¥º\": 43380,\n  \"ðŁ¥º</w>\": 36858,\n  \"ðŁ¥Ĥ\": 43805,\n  \"ðŁ¥Ĥ</w>\": 25212,\n  \"ðŁ¥ĥ</w>\": 47790,\n  \"ðŁ¥ĩ\": 34372,\n  \"ðŁ¥ĩ</w>\": 20069,\n  \"ðŁ¥Ī</w>\": 35858,\n  \"ðŁ¥ī</w>\": 36782,\n  \"ðŁ¥Ĭ</w>\": 29275,\n  \"ðŁ¦\": 6040,\n  \"ðŁ¦ģ\": 36367,\n  \"ðŁ¦ģ</w>\": 26056,\n  \"ðŁ¦ĥ</w>\": 40184,\n  \"ðŁ¦Ħ</w>\": 37659,\n  \"ðŁ¦ħ</w>\": 28800,\n  \"ðŁ¦Ī</w>\": 48984,\n  \"ðŁ¦ĭ\": 49325,\n  \"ðŁ¦ĭ</w>\": 28985,\n  \"ðŁ§\": 8792,\n  \"ðŁ§¡\": 30996,\n  \"ðŁ§¡</w>\": 24578,\n  \"ðŁ§Ĳ</w>\": 33549,\n  \"ðŁħ\": 22010,\n  \"ðŁĨ\": 9536,\n  \"ðŁĨķ</w>\": 34956,\n  \"ðŁĨĺ</w>\": 39868,\n  \"ðŁĨļ</w>\": 16325,\n  \"ðŁĩ\": 1173,\n  \"ðŁĩ¦\": 12469,\n  \"ðŁĩ¦</w>\": 28565,\n  \"ðŁĩ¦ðŁĩ\": 33196,\n  \"ðŁĩ¦ðŁĩ·</w>\": 41629,\n  \"ðŁĩ¦ðŁĩº</w>\": 25192,\n  \"ðŁĩ§\": 14660,\n  \"ðŁĩ§ðŁĩ\": 37342,\n  \"ðŁĩ§ðŁĩª</w>\": 38794,\n  \"ðŁĩ§ðŁĩ·</w>\": 28182,\n  \"ðŁĩ¨\": 8889,\n  \"ðŁĩ¨ðŁĩ\": 8989,\n  \"ðŁĩ¨ðŁĩ¦\": 34324,\n  \"ðŁĩ¨ðŁĩ¦</w>\": 16364,\n  \"ðŁĩ¨ðŁĩ³</w>\": 36819,\n  \"ðŁĩ¨ðŁĩŃ</w>\": 41119,\n  \"ðŁĩ©\": 15222,\n  \"ðŁĩ©ðŁĩ\": 36350,\n  \"ðŁĩ©ðŁĩª</w>\": 21531,\n  \"ðŁĩª\": 11428,\n  \"ðŁĩª</w>\": 12331,\n  \"ðŁĩªðŁĩ\": 13917,\n  \"ðŁĩªðŁĩ¸</w>\": 22177,\n  \"ðŁĩªðŁĩº</w>\": 34655,\n  \"ðŁĩ«\": 12977,\n  \"ðŁĩ«ðŁĩ·\": 39109,\n  \"ðŁĩ«ðŁĩ·</w>\": 16223,\n  \"ðŁĩ¬\": 8129,\n  \"ðŁĩ¬ðŁĩ\": 8354,\n  \"ðŁĩ¬ðŁĩ§\": 23762,\n  \"ðŁĩ¬ðŁĩ§</w>\": 11559,\n  \"ðŁĩ®\": 8268,\n  \"ðŁĩ®ðŁĩ\": 8347,\n  \"ðŁĩ®ðŁĩª</w>\": 34148,\n  \"ðŁĩ®ðŁĩ³\": 47299,\n  \"ðŁĩ®ðŁĩ³</w>\": 23602,\n  \"ðŁĩ®ðŁĩ¹\": 42034,\n  \"ðŁĩ®ðŁĩ¹</w>\": 17070,\n  \"ðŁĩ¯\": 20090,\n  \"ðŁĩ¯ðŁĩ\": 22924,\n  \"ðŁĩ¯ðŁĩµ</w>\": 26527,\n  \"ðŁĩ°\": 28232,\n  \"ðŁĩ±\": 29533,\n  \"ðŁĩ±ðŁĩ\": 40941,\n  \"ðŁĩ²\": 16411,\n  \"ðŁĩ²ðŁĩ\": 17562,\n  \"ðŁĩ²ðŁĩ½</w>\": 32073,\n  \"ðŁĩ³\": 16645,\n  \"ðŁĩ³ðŁĩ\": 17747,\n  \"ðŁĩ³ðŁĩ±</w>\": 36747,\n  \"ðŁĩµ\": 12127,\n  \"ðŁĩµðŁĩ\": 13608,\n  \"ðŁĩµðŁĩ°</w>\": 37764,\n  \"ðŁĩµðŁĩ¹</w>\": 42621,\n  \"ðŁĩµðŁĩŃ</w>\": 42777,\n  \"ðŁĩ·\": 16026,\n  \"ðŁĩ·</w>\": 9869,\n  \"ðŁĩ·ðŁĩº</w>\": 37902,\n  \"ðŁĩ¸\": 19447,\n  \"ðŁĩ¸ðŁĩ\": 33325,\n  \"ðŁĩ¸ðŁĩª</w>\": 39260,\n  \"ðŁĩ¹\": 21810,\n  \"ðŁĩ¹ðŁĩ\": 36250,\n  \"ðŁĩº\": 4054,\n  \"ðŁĩº</w>\": 17467,\n  \"ðŁĩºðŁĩ\": 4131,\n  \"ðŁĩºðŁĩ¸\": 8907,\n  \"ðŁĩºðŁĩ¸</w>\": 5688,\n  \"ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸\": 18739,\n  \"ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸</w>\": 41411,\n  \"ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸</w>\": 43357,\n  \"ðŁĩ¿\": 25520,\n  \"ðŁĩ¿ðŁĩ¦</w>\": 36982,\n  \"ðŁĩŃ\": 30370,\n  \"ðŁĮ\": 1576,\n  \"ðŁĮ±\": 35318,\n  \"ðŁĮ±</w>\": 20665,\n  \"ðŁĮ²\": 34071,\n  \"ðŁĮ²</w>\": 28154,\n  \"ðŁĮ³\": 44265,\n  \"ðŁĮ³</w>\": 28543,\n  \"ðŁĮ´\": 20643,\n  \"ðŁĮ´</w>\": 15968,\n  \"ðŁĮµ</w>\": 40871,\n  \"ðŁĮ·\": 32328,\n  \"ðŁĮ·</w>\": 24259,\n  \"ðŁĮ¸\": 16314,\n  \"ðŁĮ¸</w>\": 10980,\n  \"ðŁĮ¸ðŁĮ¸\": 46210,\n  \"ðŁĮ¹\": 14990,\n  \"ðŁĮ¹</w>\": 10662,\n  \"ðŁĮ¹ðŁĮ¹\": 37933,\n  \"ðŁĮº\": 27608,\n  \"ðŁĮº</w>\": 19829,\n  \"ðŁĮ»\": 27196,\n  \"ðŁĮ»</w>\": 19772,\n  \"ðŁĮ¼\": 36484,\n  \"ðŁĮ¼</w>\": 26312,\n  \"ðŁĮ¾</w>\": 39796,\n  \"ðŁĮ¿\": 27736,\n  \"ðŁĮ¿</w>\": 18588,\n  \"ðŁĮĢ</w>\": 34348,\n  \"ðŁĮħ</w>\": 27547,\n  \"ðŁĮĪ\": 23038,\n  \"ðŁĮĪ</w>\": 13042,\n  \"ðŁĮĬ\": 20465,\n  \"ðŁĮĬ</w>\": 14302,\n  \"ðŁĮĮ</w>\": 43393,\n  \"ðŁĮį\": 34931,\n  \"ðŁĮį</w>\": 18641,\n  \"ðŁĮİ\": 31125,\n  \"ðŁĮİ</w>\": 16969,\n  \"ðŁĮı</w>\": 31527,\n  \"ðŁĮĲ</w>\": 33071,\n  \"ðŁĮĻ\": 42330,\n  \"ðŁĮĻ</w>\": 23283,\n  \"ðŁĮļ\": 49004,\n  \"ðŁĮļ</w>\": 27877,\n  \"ðŁĮŀ\": 21152,\n  \"ðŁĮŀ</w>\": 12980,\n  \"ðŁĮŁ\": 13196,\n  \"ðŁĮŁ</w>\": 8542,\n  \"ðŁĮŁðŁĮŁ\": 26014,\n  \"ðŁį\": 2011,\n  \"ðŁį¦\": 47375,\n  \"ðŁį¦</w>\": 32032,\n  \"ðŁį©</w>\": 38379,\n  \"ðŁįª</w>\": 38958,\n  \"ðŁį«\": 47994,\n  \"ðŁį«</w>\": 33401,\n  \"ðŁį°\": 43732,\n  \"ðŁį°</w>\": 30051,\n  \"ðŁį³</w>\": 37441,\n  \"ðŁį´\": 41531,\n  \"ðŁį´</w>\": 25338,\n  \"ðŁį·\": 24445,\n  \"ðŁį·</w>\": 18072,\n  \"ðŁį¸\": 43058,\n  \"ðŁį¸</w>\": 31217,\n  \"ðŁį¹</w>\": 35598,\n  \"ðŁįº\": 31081,\n  \"ðŁįº</w>\": 21590,\n  \"ðŁį»\": 22793,\n  \"ðŁį»</w>\": 13167,\n  \"ðŁį¾\": 27294,\n  \"ðŁį¾</w>\": 21656,\n  \"ðŁįĢ\": 22865,\n  \"ðŁįĢ</w>\": 15764,\n  \"ðŁįģ\": 29837,\n  \"ðŁįģ</w>\": 23075,\n  \"ðŁįĤ\": 35015,\n  \"ðŁįĤ</w>\": 25721,\n  \"ðŁįĥ\": 27157,\n  \"ðŁįĥ</w>\": 20147,\n  \"ðŁįĩ</w>\": 48697,\n  \"ðŁįĬ\": 35001,\n  \"ðŁįĬ</w>\": 28036,\n  \"ðŁįĭ</w>\": 39543,\n  \"ðŁįĮ</w>\": 44987,\n  \"ðŁįį</w>\": 48946,\n  \"ðŁįİ</w>\": 32069,\n  \"ðŁįĳ</w>\": 32889,\n  \"ðŁįĴ</w>\": 33160,\n  \"ðŁįĵ\": 44739,\n  \"ðŁįĵ</w>\": 33456,\n  \"ðŁįĶ\": 46415,\n  \"ðŁįĶ</w>\": 36031,\n  \"ðŁįķ\": 31469,\n  \"ðŁįķ</w>\": 23904,\n  \"ðŁįŃ</w>\": 42100,\n  \"ðŁİ\": 1165,\n  \"ðŁİ£</w>\": 43158,\n  \"ðŁİ¤\": 23490,\n  \"ðŁİ¤</w>\": 15690,\n  \"ðŁİ¥\": 22186,\n  \"ðŁİ¥:</w>\": 43640,\n  \"ðŁİ¥</w>\": 13233,\n  \"ðŁİ§\": 31254,\n  \"ðŁİ§</w>\": 14266,\n  \"ðŁİ¨\": 31953,\n  \"ðŁİ¨</w>\": 13461,\n  \"ðŁİ©</w>\": 37701,\n  \"ðŁİ«</w>\": 30331,\n  \"ðŁİ¬\": 36020,\n  \"ðŁİ¬</w>\": 18150,\n  \"ðŁİ®</w>\": 29312,\n  \"ðŁİ¯</w>\": 23114,\n  \"ðŁİµ\": 27435,\n  \"ðŁİµ</w>\": 14946,\n  \"ðŁİ¶\": 11755,\n  \"ðŁİ¶</w>\": 6011,\n  \"ðŁİ¶ðŁİ¶</w>\": 36283,\n  \"ðŁİ¸\": 29135,\n  \"ðŁİ¸</w>\": 22122,\n  \"ðŁİ¹</w>\": 43493,\n  \"ðŁİ¼\": 34949,\n  \"ðŁİ¼</w>\": 23757,\n  \"ðŁİ¾\": 41982,\n  \"ðŁİ¾</w>\": 24222,\n  \"ðŁİĢ\": 34347,\n  \"ðŁİĢ</w>\": 20151,\n  \"ðŁİģ\": 18368,\n  \"ðŁİģ</w>\": 13462,\n  \"ðŁİĤ\": 13026,\n  \"ðŁİĤ</w>\": 10392,\n  \"ðŁİĤðŁİĤ\": 39338,\n  \"ðŁİĥ\": 22622,\n  \"ðŁİĥ</w>\": 16780,\n  \"ðŁİĦ\": 12942,\n  \"ðŁİĦ</w>\": 11267,\n  \"ðŁİħ\": 17685,\n  \"ðŁİħ</w>\": 24276,\n  \"ðŁİĨ</w>\": 39222,\n  \"ðŁİĪ\": 16142,\n  \"ðŁİĪ</w>\": 14448,\n  \"ðŁİĪðŁİī</w>\": 48049,\n  \"ðŁİī\": 4310,\n  \"ðŁİī:</w>\": 17310,\n  \"ðŁİī</w>\": 3986,\n  \"ðŁİīðŁİ\": 11473,\n  \"ðŁİīðŁİĪ\": 40499,\n  \"ðŁİīðŁİĪ</w>\": 34008,\n  \"ðŁİīðŁİī\": 25159,\n  \"ðŁİīðŁİī</w>\": 13450,\n  \"ðŁİīðŁİīðŁİī</w>\": 20828,\n  \"ðŁİīðŁİĬ\": 31662,\n  \"ðŁİīðŁİĬ</w>\": 30781,\n  \"ðŁİĬ\": 22763,\n  \"ðŁİĬ</w>\": 22425,\n  \"ðŁİĬðŁİī</w>\": 48801,\n  \"ðŁİĵ\": 28916,\n  \"ðŁİĵ</w>\": 18744,\n  \"ðŁİĻ\": 29001,\n  \"ðŁİĻ</w>\": 29753,\n  \"ðŁİĻï¸ı</w>\": 44205,\n  \"ðŁİŁ\": 19248,\n  \"ðŁİŁ</w>\": 21107,\n  \"ðŁİŁï¸ı</w>\": 30243,\n  \"ðŁİŃ</w>\": 28856,\n  \"ðŁı\": 1109,\n  \"ðŁı¡</w>\": 27318,\n  \"ðŁı³ï¸ı\": 26844,\n  \"ðŁı³ï¸ıâĢį\": 27093,\n  \"ðŁı³ï¸ıâĢįðŁĮĪ</w>\": 32610,\n  \"ðŁı´\": 39690,\n  \"ðŁı´</w>\": 19704,\n  \"ðŁı»\": 5042,\n  \"ðŁı»</w>\": 3702,\n  \"ðŁı»âĢį\": 46250,\n  \"ðŁı»âĢįâĻĢï¸ı\": 48391,\n  \"ðŁı»âĢįâĻĢï¸ı</w>\": 23595,\n  \"ðŁı»âĢįâĻĤï¸ı</w>\": 30984,\n  \"ðŁı¼\": 6193,\n  \"ðŁı¼</w>\": 4027,\n  \"ðŁı¼âĢįâĻĢï¸ı</w>\": 28955,\n  \"ðŁı½\": 8514,\n  \"ðŁı½</w>\": 6114,\n  \"ðŁı½âĢįâĻĢï¸ı</w>\": 37036,\n  \"ðŁı½âĢįâĻĤï¸ı</w>\": 43157,\n  \"ðŁı¾\": 10230,\n  \"ðŁı¾</w>\": 7778,\n  \"ðŁı¾âĢįâĻĤï¸ı</w>\": 47189,\n  \"ðŁı¿\": 29854,\n  \"ðŁı¿</w>\": 21094,\n  \"ðŁıĢ\": 13708,\n  \"ðŁıĢ</w>\": 8813,\n  \"ðŁıĢðŁıĢ\": 43169,\n  \"ðŁıģ\": 29423,\n  \"ðŁıģ</w>\": 17473,\n  \"ðŁıĥ\": 16820,\n  \"ðŁıĥ</w>\": 32751,\n  \"ðŁıħ</w>\": 25500,\n  \"ðŁıĨ\": 9585,\n  \"ðŁıĨ</w>\": 5596,\n  \"ðŁıĨðŁıĨ\": 18946,\n  \"ðŁıĨðŁıĨ</w>\": 38269,\n  \"ðŁıĨðŁıĨðŁıĨ</w>\": 44484,\n  \"ðŁıĩ\": 45789,\n  \"ðŁıĩ</w>\": 40288,\n  \"ðŁıĪ\": 16144,\n  \"ðŁıĪ</w>\": 10477,\n  \"ðŁıī</w>\": 26020,\n  \"ðŁıĬ\": 33061,\n  \"ðŁıĬ</w>\": 47830,\n  \"ðŁıĮ\": 41116,\n  \"ðŁıı</w>\": 32460,\n  \"ðŁıĲ\": 46334,\n  \"ðŁıĲ</w>\": 29433,\n  \"ðŁıĴ</w>\": 37756,\n  \"ðŁıŁ\": 35914,\n  \"ðŁıŁ</w>\": 26472,\n  \"ðŁıŁï¸ı</w>\": 42627,\n  \"ðŁıł</w>\": 33727,\n  \"ðŁĲ\": 2074,\n  \"ðŁĲ¢</w>\": 37049,\n  \"ðŁĲ£</w>\": 39597,\n  \"ðŁĲ¥</w>\": 42981,\n  \"ðŁĲ¦</w>\": 37260,\n  \"ðŁĲ¬</w>\": 44238,\n  \"ðŁĲ¯\": 34825,\n  \"ðŁĲ¯</w>\": 26111,\n  \"ðŁĲ°\": 35378,\n  \"ðŁĲ°</w>\": 25050,\n  \"ðŁĲ±\": 35710,\n  \"ðŁĲ±</w>\": 22979,\n  \"ðŁĲ´</w>\": 33509,\n  \"ðŁĲ¶\": 14466,\n  \"ðŁĲ¶</w>\": 10631,\n  \"ðŁĲ·</w>\": 38408,\n  \"ðŁĲ¸\": 45597,\n  \"ðŁĲ¸</w>\": 40298,\n  \"ðŁĲº\": 44281,\n  \"ðŁĲº</w>\": 31445,\n  \"ðŁĲ»\": 30750,\n  \"ðŁĲ»</w>\": 25322,\n  \"ðŁĲ¼</w>\": 46234,\n  \"ðŁĲ¾\": 16057,\n  \"ðŁĲ¾</w>\": 11317,\n  \"ðŁĲ¾ðŁĲ¾</w>\": 42202,\n  \"ðŁĲī</w>\": 46908,\n  \"ðŁĲĬ</w>\": 43974,\n  \"ðŁĲį\": 48903,\n  \"ðŁĲį</w>\": 30177,\n  \"ðŁĲİ\": 48281,\n  \"ðŁĲİ</w>\": 32726,\n  \"ðŁĲĲ\": 47735,\n  \"ðŁĲĲ</w>\": 27954,\n  \"ðŁĲĳ</w>\": 49389,\n  \"ðŁĲķ</w>\": 41069,\n  \"ðŁĲĺ</w>\": 38733,\n  \"ðŁĲĿ\": 30619,\n  \"ðŁĲĿ</w>\": 20111,\n  \"ðŁĲŁ\": 42084,\n  \"ðŁĲŁ</w>\": 29989,\n  \"ðŁĲł</w>\": 42725,\n  \"ðŁĳ\": 964,\n  \"ðŁĳ£</w>\": 39755,\n  \"ðŁĳ§\": 48938,\n  \"ðŁĳ¨\": 18966,\n  \"ðŁĳ¨âĢį\": 25023,\n  \"ðŁĳ©\": 18800,\n  \"ðŁĳ©âĢį\": 26304,\n  \"ðŁĳ«\": 47106,\n  \"ðŁĳ«</w>\": 35457,\n  \"ðŁĳ®\": 42686,\n  \"ðŁĳ¯\": 25910,\n  \"ðŁĳ¯</w>\": 20582,\n  \"ðŁĳ¶\": 26187,\n  \"ðŁĳ¶</w>\": 33189,\n  \"ðŁĳ¸\": 26268,\n  \"ðŁĳ¸</w>\": 36645,\n  \"ðŁĳ¹</w>\": 46766,\n  \"ðŁĳ»\": 24625,\n  \"ðŁĳ»</w>\": 16243,\n  \"ðŁĳ¼\": 25270,\n  \"ðŁĳ¼</w>\": 31083,\n  \"ðŁĳ½\": 42677,\n  \"ðŁĳ½</w>\": 26257,\n  \"ðŁĳĢ\": 11524,\n  \"ðŁĳĢ</w>\": 5908,\n  \"ðŁĳĢðŁĳĢ</w>\": 31561,\n  \"ðŁĳģ\": 47796,\n  \"ðŁĳģ</w>\": 45705,\n  \"ðŁĳĦ</w>\": 47445,\n  \"ðŁĳħ\": 31833,\n  \"ðŁĳħ</w>\": 24672,\n  \"ðŁĳĨ\": 42975,\n  \"ðŁĳĨ</w>\": 45194,\n  \"ðŁĳĩ\": 7662,\n  \"ðŁĳĩ</w>\": 7475,\n  \"ðŁĳĩðŁı»\": 45811,\n  \"ðŁĳĩðŁı»</w>\": 32813,\n  \"ðŁĳĩðŁı¼</w>\": 37504,\n  \"ðŁĳĩðŁĳĩ\": 17915,\n  \"ðŁĳĩðŁĳĩ</w>\": 31891,\n  \"ðŁĳĩðŁĳĩðŁĳĩ</w>\": 35627,\n  \"ðŁĳĪ\": 32794,\n  \"ðŁĳĪ</w>\": 20832,\n  \"ðŁĳī\": 9477,\n  \"ðŁĳī</w>\": 3988,\n  \"ðŁĳīðŁı»</w>\": 23481,\n  \"ðŁĳīðŁı¼</w>\": 27534,\n  \"ðŁĳīðŁı½</w>\": 38059,\n  \"ðŁĳīðŁĳī</w>\": 41480,\n  \"ðŁĳĬ\": 8897,\n  \"ðŁĳĬ</w>\": 9704,\n  \"ðŁĳĬðŁı»\": 47393,\n  \"ðŁĳĬðŁı»</w>\": 29152,\n  \"ðŁĳĬðŁı¼\": 49000,\n  \"ðŁĳĬðŁı¼</w>\": 30115,\n  \"ðŁĳĬðŁĳĬ</w>\": 46521,\n  \"ðŁĳĭ\": 19351,\n  \"ðŁĳĭ</w>\": 17686,\n  \"ðŁĳĮ\": 4890,\n  \"ðŁĳĮ</w>\": 4494,\n  \"ðŁĳĮðŁı»\": 31818,\n  \"ðŁĳĮðŁı»</w>\": 18606,\n  \"ðŁĳĮðŁı¼\": 37655,\n  \"ðŁĳĮðŁı¼</w>\": 20031,\n  \"ðŁĳĮðŁı½</w>\": 35834,\n  \"ðŁĳĮðŁĳĮ\": 36139,\n  \"ðŁĳĮðŁĳĮ</w>\": 21435,\n  \"ðŁĳĮðŁĳĮðŁĳĮ</w>\": 40876,\n  \"ðŁĳį\": 4686,\n  \"ðŁĳį</w>\": 4201,\n  \"ðŁĳįðŁı»\": 25803,\n  \"ðŁĳįðŁı»</w>\": 15129,\n  \"ðŁĳįðŁı¼\": 37285,\n  \"ðŁĳįðŁı¼</w>\": 19689,\n  \"ðŁĳįðŁı½</w>\": 43722,\n  \"ðŁĳįðŁĳį\": 33012,\n  \"ðŁĳįðŁĳį</w>\": 18997,\n  \"ðŁĳįðŁĳįðŁĳį</w>\": 37284,\n  \"ðŁĳİ\": 39702,\n  \"ðŁĳİ</w>\": 32568,\n  \"ðŁĳı\": 3802,\n  \"ðŁĳı</w>\": 4829,\n  \"ðŁĳıðŁı»\": 19236,\n  \"ðŁĳıðŁı»</w>\": 17029,\n  \"ðŁĳıðŁı»ðŁĳıðŁı»\": 35254,\n  \"ðŁĳıðŁı¼\": 24496,\n  \"ðŁĳıðŁı¼</w>\": 19979,\n  \"ðŁĳıðŁı¼ðŁĳıðŁı¼</w>\": 46712,\n  \"ðŁĳıðŁı½\": 40796,\n  \"ðŁĳıðŁı½</w>\": 33978,\n  \"ðŁĳıðŁı¾</w>\": 45450,\n  \"ðŁĳıðŁĳı\": 10356,\n  \"ðŁĳıðŁĳı</w>\": 16706,\n  \"ðŁĳıðŁĳıðŁĳı</w>\": 17254,\n  \"ðŁĳĲ</w>\": 40877,\n  \"ðŁĳĳ\": 14955,\n  \"ðŁĳĳ</w>\": 8717,\n  \"ðŁĳĳðŁĳĳ\": 48532,\n  \"ðŁĳķ</w>\": 47865,\n  \"ðŁĳŁ</w>\": 41183,\n  \"ðŁĳł</w>\": 41264,\n  \"ðŁĳŃ\": 34175,\n  \"ðŁĳŃ</w>\": 27943,\n  \"ðŁĴ\": 837,\n  \"ðŁĴ¡</w>\": 24081,\n  \"ðŁĴ£\": 36862,\n  \"ðŁĴ£</w>\": 29006,\n  \"ðŁĴ¤\": 34706,\n  \"ðŁĴ¤</w>\": 25632,\n  \"ðŁĴ¥\": 12209,\n  \"ðŁĴ¥</w>\": 7347,\n  \"ðŁĴ¥ðŁĴ¥\": 27396,\n  \"ðŁĴ¥ðŁĴ¥</w>\": 39246,\n  \"ðŁĴ¥ðŁĴ¥ðŁĴ¥</w>\": 48890,\n  \"ðŁĴ¦\": 21180,\n  \"ðŁĴ¦</w>\": 14060,\n  \"ðŁĴ¦ðŁĴ¦</w>\": 44469,\n  \"ðŁĴ§</w>\": 34095,\n  \"ðŁĴ¨\": 27408,\n  \"ðŁĴ¨</w>\": 17891,\n  \"ðŁĴ©\": 48621,\n  \"ðŁĴ©</w>\": 28847,\n  \"ðŁĴª\": 5475,\n  \"ðŁĴª</w>\": 6440,\n  \"ðŁĴªðŁı»\": 31669,\n  \"ðŁĴªðŁı»</w>\": 21903,\n  \"ðŁĴªðŁı¼\": 32041,\n  \"ðŁĴªðŁı¼</w>\": 20759,\n  \"ðŁĴªðŁı½\": 46380,\n  \"ðŁĴªðŁı½</w>\": 31111,\n  \"ðŁĴªðŁı¾</w>\": 39398,\n  \"ðŁĴªðŁĴª</w>\": 24747,\n  \"ðŁĴªðŁĴªðŁĴª</w>\": 39913,\n  \"ðŁĴ«\": 25770,\n  \"ðŁĴ«</w>\": 12526,\n  \"ðŁĴ¬</w>\": 30947,\n  \"ðŁĴ¯\": 10611,\n  \"ðŁĴ¯</w>\": 7018,\n  \"ðŁĴ¯ðŁĴ¯\": 30234,\n  \"ðŁĴ¯ðŁĴ¯</w>\": 44070,\n  \"ðŁĴ°\": 20454,\n  \"ðŁĴ°</w>\": 14078,\n  \"ðŁĴ°ðŁĴ°\": 41747,\n  \"ðŁĴµ\": 47412,\n  \"ðŁĴµ</w>\": 38041,\n  \"ðŁĴ¸\": 37696,\n  \"ðŁĴ¸</w>\": 25957,\n  \"ðŁĴ»\": 33433,\n  \"ðŁĴ»</w>\": 18135,\n  \"ðŁĴ¿</w>\": 39541,\n  \"ðŁĴĢ\": 14888,\n  \"ðŁĴĢ</w>\": 12158,\n  \"ðŁĴĢðŁĴĢ\": 30884,\n  \"ðŁĴģ\": 13997,\n  \"ðŁĴģ</w>\": 14392,\n  \"ðŁĴĥ\": 9947,\n  \"ðŁĴĥ</w>\": 14333,\n  \"ðŁĴĥðŁı»</w>\": 38624,\n  \"ðŁĴĥðŁĴĥ\": 28041,\n  \"ðŁĴĦ\": 46116,\n  \"ðŁĴĦ</w>\": 34571,\n  \"ðŁĴħ\": 27457,\n  \"ðŁĴħ</w>\": 32414,\n  \"ðŁĴī\": 44316,\n  \"ðŁĴī</w>\": 30503,\n  \"ðŁĴĭ\": 12217,\n  \"ðŁĴĭ</w>\": 7417,\n  \"ðŁĴĭðŁĴĭ</w>\": 29214,\n  \"ðŁĴĮ</w>\": 40817,\n  \"ðŁĴį\": 35850,\n  \"ðŁĴį</w>\": 24898,\n  \"ðŁĴİ\": 25938,\n  \"ðŁĴİ</w>\": 15874,\n  \"ðŁĴĲ\": 27375,\n  \"ðŁĴĲ</w>\": 20554,\n  \"ðŁĴĳ</w>\": 49404,\n  \"ðŁĴĵ\": 20628,\n  \"ðŁĴĵ</w>\": 12568,\n  \"ðŁĴĵðŁĴĵ</w>\": 43505,\n  \"ðŁĴĶ\": 18880,\n  \"ðŁĴĶ</w>\": 10704,\n  \"ðŁĴĶðŁĴĶ\": 44673,\n  \"ðŁĴķ\": 5412,\n  \"ðŁĴķ</w>\": 3082,\n  \"ðŁĴķðŁĴķ\": 23106,\n  \"ðŁĴķðŁĴķ</w>\": 14117,\n  \"ðŁĴķðŁĴķðŁĴķ</w>\": 26772,\n  \"ðŁĴĸ\": 8466,\n  \"ðŁĴĸ</w>\": 5582,\n  \"ðŁĴĸðŁĴĸ\": 19562,\n  \"ðŁĴĸðŁĴĸ</w>\": 30595,\n  \"ðŁĴĸðŁĴĸðŁĴĸ</w>\": 33915,\n  \"ðŁĴĹ\": 10148,\n  \"ðŁĴĹ</w>\": 6690,\n  \"ðŁĴĹðŁĴĹ\": 47158,\n  \"ðŁĴĹðŁĴĹ</w>\": 24064,\n  \"ðŁĴĹðŁĴĹðŁĴĹ</w>\": 36990,\n  \"ðŁĴĺ\": 18223,\n  \"ðŁĴĺ</w>\": 10816,\n  \"ðŁĴĺðŁĴĺ</w>\": 40464,\n  \"ðŁĴĻ\": 5305,\n  \"ðŁĴĻ</w>\": 4074,\n  \"ðŁĴĻðŁĴĻ\": 17833,\n  \"ðŁĴĻðŁĴĻ</w>\": 27101,\n  \"ðŁĴĻðŁĴĻðŁĴĻ</w>\": 30698,\n  \"ðŁĴĻðŁĴĽ\": 46804,\n  \"ðŁĴĻðŁĴĽ</w>\": 26230,\n  \"ðŁĴĻðŁĴľ\": 47931,\n  \"ðŁĴĻðŁĴľ</w>\": 42541,\n  \"ðŁĴļ\": 8102,\n  \"ðŁĴļ</w>\": 6521,\n  \"ðŁĴļðŁĴļ\": 27497,\n  \"ðŁĴļðŁĴļ</w>\": 46209,\n  \"ðŁĴļðŁĴļðŁĴļ</w>\": 46182,\n  \"ðŁĴļðŁĴĽ</w>\": 41232,\n  \"ðŁĴĽ\": 8221,\n  \"ðŁĴĽ</w>\": 6233,\n  \"ðŁĴĽðŁĴĻ</w>\": 36337,\n  \"ðŁĴĽðŁĴļ\": 37994,\n  \"ðŁĴĽðŁĴĽ\": 32420,\n  \"ðŁĴľ\": 6832,\n  \"ðŁĴľ</w>\": 4882,\n  \"ðŁĴľðŁĴľ\": 17280,\n  \"ðŁĴľðŁĴľ</w>\": 28211,\n  \"ðŁĴľðŁĴľðŁĴľ</w>\": 31004,\n  \"ðŁĴĿ\": 36761,\n  \"ðŁĴĿ</w>\": 22002,\n  \"ðŁĴŀ\": 14862,\n  \"ðŁĴŀ</w>\": 8988,\n  \"ðŁĴŀðŁĴŀ</w>\": 36448,\n  \"ðŁĴŁ\": 49394,\n  \"ðŁĴŁ</w>\": 28828,\n  \"ðŁĴŃ</w>\": 33848,\n  \"ðŁĵ\": 1497,\n  \"ðŁĵ¢\": 46560,\n  \"ðŁĵ¢</w>\": 20901,\n  \"ðŁĵ£\": 48841,\n  \"ðŁĵ£</w>\": 21282,\n  \"ðŁĵ°:</w>\": 28952,\n  \"ðŁĵ°</w>\": 14985,\n  \"ðŁĵ±\": 36104,\n  \"ðŁĵ±</w>\": 20824,\n  \"ðŁĵ²</w>\": 19363,\n  \"ðŁĵ·\": 6966,\n  \"ðŁĵ·:</w>\": 8294,\n  \"ðŁĵ·</w>\": 5551,\n  \"ðŁĵ·@</w>\": 40032,\n  \"ðŁĵ¸\": 8401,\n  \"ðŁĵ¸:</w>\": 10379,\n  \"ðŁĵ¸</w>\": 6074,\n  \"ðŁĵ¸@</w>\": 39660,\n  \"ðŁĵ¹</w>\": 49251,\n  \"ðŁĵº\": 21792,\n  \"ðŁĵº:</w>\": 29728,\n  \"ðŁĵº</w>\": 10450,\n  \"ðŁĵ»\": 32711,\n  \"ðŁĵ»</w>\": 15882,\n  \"ðŁĵ½</w>\": 45361,\n  \"ðŁĵħ</w>\": 21277,\n  \"ðŁĵĨ</w>\": 23471,\n  \"ðŁĵĪ</w>\": 23359,\n  \"ðŁĵĬ</w>\": 22244,\n  \"ðŁĵĭ</w>\": 46351,\n  \"ðŁĵĮ</w>\": 22289,\n  \"ðŁĵį\": 25043,\n  \"ðŁĵį:</w>\": 36845,\n  \"ðŁĵį</w>\": 8903,\n  \"ðŁĵĸ\": 49003,\n  \"ðŁĵĸ</w>\": 23043,\n  \"ðŁĵļ\": 25433,\n  \"ðŁĵļ</w>\": 15566,\n  \"ðŁĵĿ\": 31888,\n  \"ðŁĵĿ:</w>\": 48398,\n  \"ðŁĵĿ</w>\": 15853,\n  \"ðŁĵŀ</w>\": 24022,\n  \"ðŁĶ\": 1428,\n  \"ðŁĶ¥\": 3191,\n  \"ðŁĶ¥#</w>\": 44354,\n  \"ðŁĶ¥</w>\": 3016,\n  \"ðŁĶ¥ðŁĶ¥\": 5692,\n  \"ðŁĶ¥ðŁĶ¥</w>\": 11771,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\": 11004,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥\": 23408,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\": 30989,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\": 48401,\n  \"ðŁĶ¥ðŁĶĹ</w>\": 35130,\n  \"ðŁĶª\": 47078,\n  \"ðŁĶª</w>\": 34545,\n  \"ðŁĶ«\": 38116,\n  \"ðŁĶ«</w>\": 20583,\n  \"ðŁĶ¬</w>\": 44227,\n  \"ðŁĶ®</w>\": 38077,\n  \"ðŁĶ´\": 12408,\n  \"ðŁĶ´</w>\": 10854,\n  \"ðŁĶ´âļªï¸ı\": 46879,\n  \"ðŁĶ´âļªï¸ı</w>\": 40055,\n  \"ðŁĶµ\": 17531,\n  \"ðŁĶµ</w>\": 17193,\n  \"ðŁĶµâļªï¸ı</w>\": 42412,\n  \"ðŁĶ¶\": 42880,\n  \"ðŁĶ¶</w>\": 36222,\n  \"ðŁĶ·</w>\": 37740,\n  \"ðŁĶ¸</w>\": 24200,\n  \"ðŁĶ¹</w>\": 19995,\n  \"ðŁĶº</w>\": 45561,\n  \"ðŁĶģ</w>\": 41299,\n  \"ðŁĶĬ\": 32580,\n  \"ðŁĶĬ</w>\": 20502,\n  \"ðŁĶİ</w>\": 44935,\n  \"ðŁĶĳ</w>\": 35127,\n  \"ðŁĶĴ</w>\": 44972,\n  \"ðŁĶĶ</w>\": 45753,\n  \"ðŁĶĹ\": 47475,\n  \"ðŁĶĹ</w>\": 14561,\n  \"ðŁĶĺ</w>\": 38995,\n  \"ðŁĶľ</w>\": 36011,\n  \"ðŁĶĿ\": 44387,\n  \"ðŁĶĿ</w>\": 29506,\n  \"ðŁķ\": 7692,\n  \"ðŁķº\": 33958,\n  \"ðŁķĬ\": 42624,\n  \"ðŁķĬ</w>\": 37760,\n  \"ðŁĸ\": 6269,\n  \"ðŁĸ¤\": 17603,\n  \"ðŁĸ¤</w>\": 10860,\n  \"ðŁĸ¥</w>\": 47990,\n  \"ðŁĹ\": 7045,\n  \"ðŁĹ£\": 33232,\n  \"ðŁĹ£</w>\": 18583,\n  \"ðŁĹ£ï¸ı</w>\": 37476,\n  \"ðŁĹĵ\": 34335,\n  \"ðŁĹĵ</w>\": 28773,\n  \"ðŁĹĵï¸ı</w>\": 39847,\n  \"ðŁĺ\": 668,\n  \"ðŁĺ¡\": 21968,\n  \"ðŁĺ¡</w>\": 17452,\n  \"ðŁĺ¡ðŁĺ¡\": 37223,\n  \"ðŁĺ¢\": 14308,\n  \"ðŁĺ¢</w>\": 9925,\n  \"ðŁĺ¢ðŁĺ¢\": 32923,\n  \"ðŁĺ¢ðŁĺ¢</w>\": 47921,\n  \"ðŁĺ£</w>\": 32718,\n  \"ðŁĺ¤\": 26872,\n  \"ðŁĺ¤</w>\": 20740,\n  \"ðŁĺ¥\": 38383,\n  \"ðŁĺ¥</w>\": 23951,\n  \"ðŁĺ¨</w>\": 38080,\n  \"ðŁĺ©\": 9051,\n  \"ðŁĺ©</w>\": 9494,\n  \"ðŁĺ©ðŁĺ©\": 22820,\n  \"ðŁĺ©ðŁĺ©</w>\": 38031,\n  \"ðŁĺ©ðŁĺ©ðŁĺ©</w>\": 49063,\n  \"ðŁĺª\": 38181,\n  \"ðŁĺª</w>\": 22243,\n  \"ðŁĺ«\": 25141,\n  \"ðŁĺ«</w>\": 22340,\n  \"ðŁĺ¬\": 23704,\n  \"ðŁĺ¬</w>\": 14549,\n  \"ðŁĺ®\": 40163,\n  \"ðŁĺ®</w>\": 21616,\n  \"ðŁĺ¯</w>\": 37858,\n  \"ðŁĺ°</w>\": 34728,\n  \"ðŁĺ±\": 10938,\n  \"ðŁĺ±</w>\": 9055,\n  \"ðŁĺ±ðŁĺ±\": 22061,\n  \"ðŁĺ±ðŁĺ±</w>\": 40767,\n  \"ðŁĺ±ðŁĺ±ðŁĺ±</w>\": 40909,\n  \"ðŁĺ²\": 40460,\n  \"ðŁĺ²</w>\": 24620,\n  \"ðŁĺ³\": 12047,\n  \"ðŁĺ³</w>\": 8223,\n  \"ðŁĺ³ðŁĺ³\": 32592,\n  \"ðŁĺ´\": 23527,\n  \"ðŁĺ´</w>\": 16415,\n  \"ðŁĺ´ðŁĺ´</w>\": 49307,\n  \"ðŁĺµ</w>\": 39368,\n  \"ðŁĺ¶</w>\": 35207,\n  \"ðŁĺ·\": 37943,\n  \"ðŁĺ·</w>\": 25759,\n  \"ðŁĺ¸</w>\": 36912,\n  \"ðŁĺ¹\": 26477,\n  \"ðŁĺ¹</w>\": 26573,\n  \"ðŁĺ¹ðŁĺ¹\": 46287,\n  \"ðŁĺº</w>\": 40613,\n  \"ðŁĺ»\": 15453,\n  \"ðŁĺ»</w>\": 12911,\n  \"ðŁĺ»ðŁĺ»\": 34414,\n  \"ðŁĺ¼</w>\": 44245,\n  \"ðŁĺ½</w>\": 45156,\n  \"ðŁĺĢ\": 12832,\n  \"ðŁĺĢ</w>\": 7334,\n  \"ðŁĺĢðŁĺĢ</w>\": 34503,\n  \"ðŁĺģ\": 6967,\n  \"ðŁĺģ</w>\": 4821,\n  \"ðŁĺģðŁĺģ\": 37900,\n  \"ðŁĺģðŁĺģ</w>\": 19213,\n  \"ðŁĺģðŁĺģðŁĺģ</w>\": 29083,\n  \"ðŁĺĤ\": 1424,\n  \"ðŁĺĤ)</w>\": 42643,\n  \"ðŁĺĤ.</w>\": 42550,\n  \"ðŁĺĤ</w>\": 1558,\n  \"ðŁĺĤâĿ¤ï¸ı</w>\": 36412,\n  \"ðŁĺĤðŁĳĮ</w>\": 42000,\n  \"ðŁĺĤðŁĺĤ\": 2286,\n  \"ðŁĺĤðŁĺĤ</w>\": 4112,\n  \"ðŁĺĤðŁĺĤðŁĺĤ\": 22233,\n  \"ðŁĺĤðŁĺĤðŁĺĤ</w>\": 4887,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ\": 9936,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 11522,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 19295,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 33415,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 48973,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ\": 28504,\n  \"ðŁĺĤðŁĺį</w>\": 43128,\n  \"ðŁĺĤðŁĺŃ\": 28965,\n  \"ðŁĺĤðŁĺŃ</w>\": 25802,\n  \"ðŁĺĥ\": 14079,\n  \"ðŁĺĥ</w>\": 8520,\n  \"ðŁĺĥðŁĺĥ</w>\": 38358,\n  \"ðŁĺĦ\": 12141,\n  \"ðŁĺĦ</w>\": 7624,\n  \"ðŁĺĦðŁĺĦ</w>\": 32312,\n  \"ðŁĺħ\": 15245,\n  \"ðŁĺħ</w>\": 9188,\n  \"ðŁĺħðŁĺħ</w>\": 39078,\n  \"ðŁĺĨ\": 16541,\n  \"ðŁĺĨ</w>\": 10943,\n  \"ðŁĺĨðŁĺĨ</w>\": 39503,\n  \"ðŁĺĩ\": 21694,\n  \"ðŁĺĩ</w>\": 13091,\n  \"ðŁĺĪ\": 14377,\n  \"ðŁĺĪ</w>\": 9756,\n  \"ðŁĺĪðŁĺĪ</w>\": 44473,\n  \"ðŁĺī\": 9740,\n  \"ðŁĺī</w>\": 4955,\n  \"ðŁĺīðŁĺī</w>\": 40430,\n  \"ðŁĺĬ\": 4692,\n  \"ðŁĺĬ</w>\": 3020,\n  \"ðŁĺĬâĿ¤ï¸ı</w>\": 43606,\n  \"ðŁĺĬðŁĺĬ\": 12838,\n  \"ðŁĺĬðŁĺĬ</w>\": 20842,\n  \"ðŁĺĬðŁĺĬðŁĺĬ</w>\": 28685,\n  \"ðŁĺĬðŁĺĬðŁĺĬðŁĺĬ\": 35519,\n  \"ðŁĺĭ\": 12391,\n  \"ðŁĺĭ</w>\": 7203,\n  \"ðŁĺĭðŁĺĭ</w>\": 33304,\n  \"ðŁĺĮ\": 19221,\n  \"ðŁĺĮ</w>\": 12163,\n  \"ðŁĺį\": 1796,\n  \"ðŁĺį#</w>\": 42357,\n  \"ðŁĺį.</w>\": 48579,\n  \"ðŁĺį</w>\": 1754,\n  \"ðŁĺįâĿ¤</w>\": 29122,\n  \"ðŁĺįâĿ¤ï¸ı</w>\": 21945,\n  \"ðŁĺįðŁĳĮ</w>\": 41005,\n  \"ðŁĺįðŁĴķ</w>\": 35946,\n  \"ðŁĺįðŁĶ¥</w>\": 46648,\n  \"ðŁĺįðŁĺĤ</w>\": 48715,\n  \"ðŁĺįðŁĺį\": 3663,\n  \"ðŁĺįðŁĺį</w>\": 6471,\n  \"ðŁĺįðŁĺįðŁĺį\": 30614,\n  \"ðŁĺįðŁĺįðŁĺį</w>\": 7703,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺį\": 16603,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺį</w>\": 18925,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺįðŁĺį</w>\": 32078,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺį\": 48683,\n  \"ðŁĺįðŁĺĺ\": 29646,\n  \"ðŁĺįðŁĺĺ</w>\": 19849,\n  \"ðŁĺįðŁĺŃ</w>\": 39555,\n  \"ðŁĺİ\": 7426,\n  \"ðŁĺİ</w>\": 4345,\n  \"ðŁĺİðŁĺİ</w>\": 24048,\n  \"ðŁĺİðŁĺİðŁĺİ</w>\": 39742,\n  \"ðŁĺı\": 11624,\n  \"ðŁĺı</w>\": 6909,\n  \"ðŁĺıðŁĺı</w>\": 38151,\n  \"ðŁĺĲ\": 38586,\n  \"ðŁĺĲ</w>\": 19618,\n  \"ðŁĺĳ\": 32469,\n  \"ðŁĺĳ</w>\": 18937,\n  \"ðŁĺĴ\": 20792,\n  \"ðŁĺĴ</w>\": 11702,\n  \"ðŁĺĵ</w>\": 28733,\n  \"ðŁĺĶ\": 19532,\n  \"ðŁĺĶ</w>\": 11432,\n  \"ðŁĺķ\": 45741,\n  \"ðŁĺķ</w>\": 20602,\n  \"ðŁĺĸ</w>\": 35006,\n  \"ðŁĺĺ\": 4240,\n  \"ðŁĺĺ</w>\": 3352,\n  \"ðŁĺĺâĿ¤</w>\": 48409,\n  \"ðŁĺĺâĿ¤ï¸ı</w>\": 39150,\n  \"ðŁĺĺðŁĺį</w>\": 38176,\n  \"ðŁĺĺðŁĺĺ\": 15663,\n  \"ðŁĺĺðŁĺĺ</w>\": 10507,\n  \"ðŁĺĺðŁĺĺðŁĺĺ</w>\": 20208,\n  \"ðŁĺĺðŁĺĺðŁĺĺðŁĺĺ</w>\": 44892,\n  \"ðŁĺĻ\": 36201,\n  \"ðŁĺĻ</w>\": 29209,\n  \"ðŁĺļ\": 24897,\n  \"ðŁĺļ</w>\": 19102,\n  \"ðŁĺĽ\": 24550,\n  \"ðŁĺĽ</w>\": 15745,\n  \"ðŁĺľ\": 13226,\n  \"ðŁĺľ</w>\": 7830,\n  \"ðŁĺľðŁĺľ</w>\": 43065,\n  \"ðŁĺĿ\": 20064,\n  \"ðŁĺĿ</w>\": 12970,\n  \"ðŁĺŀ\": 40458,\n  \"ðŁĺŀ</w>\": 21103,\n  \"ðŁĺŁ</w>\": 46947,\n  \"ðŁĺł</w>\": 34094,\n  \"ðŁĺŃ\": 2962,\n  \"ðŁĺŃ</w>\": 3915,\n  \"ðŁĺŃâĿ¤ï¸ı</w>\": 29567,\n  \"ðŁĺŃðŁĴķ</w>\": 46306,\n  \"ðŁĺŃðŁĺĤ</w>\": 38505,\n  \"ðŁĺŃðŁĺį</w>\": 36893,\n  \"ðŁĺŃðŁĺŃ\": 5300,\n  \"ðŁĺŃðŁĺŃ</w>\": 11834,\n  \"ðŁĺŃðŁĺŃðŁĺŃ\": 44089,\n  \"ðŁĺŃðŁĺŃðŁĺŃ</w>\": 13116,\n  \"ðŁĺŃðŁĺŃðŁĺŃðŁĺŃ\": 19793,\n  \"ðŁĺŃðŁĺŃðŁĺŃðŁĺŃ</w>\": 27322,\n  \"ðŁĺŃðŁĺŃðŁĺŃðŁĺŃðŁĺŃ</w>\": 43366,\n  \"ðŁĻ\": 1478,\n  \"ðŁĻĢ</w>\": 43092,\n  \"ðŁĻĤ\": 32006,\n  \"ðŁĻĤ</w>\": 14860,\n  \"ðŁĻĥ\": 27222,\n  \"ðŁĻĥ</w>\": 15652,\n  \"ðŁĻĦ\": 20648,\n  \"ðŁĻĦ</w>\": 13049,\n  \"ðŁĻħ\": 42702,\n  \"ðŁĻĨ\": 30050,\n  \"ðŁĻĨ</w>\": 35730,\n  \"ðŁĻĪ\": 12661,\n  \"ðŁĻĪ</w>\": 9516,\n  \"ðŁĻĪðŁĻĪ</w>\": 41796,\n  \"ðŁĻĬ\": 23684,\n  \"ðŁĻĬ</w>\": 16636,\n  \"ðŁĻĭ\": 19193,\n  \"ðŁĻĭ</w>\": 30274,\n  \"ðŁĻĮ\": 4366,\n  \"ðŁĻĮ</w>\": 4855,\n  \"ðŁĻĮðŁı»\": 26756,\n  \"ðŁĻĮðŁı»</w>\": 15799,\n  \"ðŁĻĮðŁı¼\": 26584,\n  \"ðŁĻĮðŁı¼</w>\": 15364,\n  \"ðŁĻĮðŁı½\": 36660,\n  \"ðŁĻĮðŁı½</w>\": 22962,\n  \"ðŁĻĮðŁı¾\": 38023,\n  \"ðŁĻĮðŁı¾</w>\": 26466,\n  \"ðŁĻĮðŁĻĮ\": 21202,\n  \"ðŁĻĮðŁĻĮ</w>\": 30430,\n  \"ðŁĻĮðŁĻĮðŁĻĮ</w>\": 37127,\n  \"ðŁĻı\": 4260,\n  \"ðŁĻı</w>\": 5503,\n  \"ðŁĻıðŁı»\": 25100,\n  \"ðŁĻıðŁı»</w>\": 16650,\n  \"ðŁĻıðŁı¼\": 31163,\n  \"ðŁĻıðŁı¼</w>\": 18952,\n  \"ðŁĻıðŁı½\": 34103,\n  \"ðŁĻıðŁı½</w>\": 21540,\n  \"ðŁĻıðŁı¾\": 34277,\n  \"ðŁĻıðŁı¾</w>\": 21979,\n  \"ðŁĻıðŁĻı\": 18227,\n  \"ðŁĻıðŁĻı</w>\": 26510,\n  \"ðŁĻıðŁĻıðŁĻı</w>\": 31702,\n  \"ðŁļ\": 2730,\n  \"ðŁļ¨\": 12198,\n  \"ðŁļ¨</w>\": 6056,\n  \"ðŁļ¨ðŁļ¨\": 36487,\n  \"ðŁļ¨ðŁļ¨</w>\": 21440,\n  \"ðŁļ¨ðŁļ¨ðŁļ¨</w>\": 41515,\n  \"ðŁļ©</w>\": 44514,\n  \"ðŁļ«</w>\": 35291,\n  \"ðŁļ²</w>\": 37085,\n  \"ðŁļ´\": 30825,\n  \"ðŁļ¶\": 46060,\n  \"ðŁļĢ\": 22400,\n  \"ðŁļĢ</w>\": 13542,\n  \"ðŁļĢðŁļĢ\": 49033,\n  \"ðŁļĤ</w>\": 38949,\n  \"ðŁļĮ</w>\": 46891,\n  \"ðŁļĹ\": 33054,\n  \"ðŁļĹ</w>\": 22783,\n  \"ðŁļĺ</w>\": 35825,\n  \"ðŁļĻ</w>\": 48487,\n  \"ðŁĽ\": 11306,\n  \"ñ\": 173,\n  \"ñ</w>\": 429,\n  \"ò\": 174,\n  \"ò</w>\": 430,\n  \"ó\": 175,\n  \"ó</w>\": 431,\n  \"ô\": 176,\n  \"ô</w>\": 432,\n  \"õ\": 177,\n  \"õ</w>\": 433,\n  \"ö\": 178,\n  \"ö</w>\": 434,\n  \"÷\": 179,\n  \"÷</w>\": 435,\n  \"ø\": 180,\n  \"ø</w>\": 436,\n  \"ù\": 181,\n  \"ù</w>\": 437,\n  \"ú\": 182,\n  \"ú</w>\": 438,\n  \"û\": 183,\n  \"û</w>\": 439,\n  \"ü\": 184,\n  \"ü</w>\": 440,\n  \"ý\": 185,\n  \"ý</w>\": 441,\n  \"þ\": 186,\n  \"þ</w>\": 442,\n  \"ÿ\": 187,\n  \"ÿ</w>\": 443,\n  \"Ā\": 188,\n  \"Ā</w>\": 444,\n  \"ā\": 189,\n  \"ā</w>\": 445,\n  \"Ă\": 190,\n  \"Ă</w>\": 446,\n  \"ă\": 191,\n  \"ă</w>\": 447,\n  \"Ą\": 192,\n  \"Ą</w>\": 448,\n  \"ą\": 193,\n  \"ą</w>\": 449,\n  \"Ć\": 194,\n  \"Ć</w>\": 450,\n  \"ć\": 195,\n  \"ć</w>\": 451,\n  \"Ĉ\": 196,\n  \"Ĉ</w>\": 452,\n  \"ĉ\": 197,\n  \"ĉ</w>\": 453,\n  \"Ċ\": 198,\n  \"Ċ</w>\": 454,\n  \"ċ\": 199,\n  \"ċ</w>\": 455,\n  \"Č\": 200,\n  \"Č</w>\": 456,\n  \"č\": 201,\n  \"č</w>\": 457,\n  \"Ď\": 202,\n  \"Ď</w>\": 458,\n  \"ď\": 203,\n  \"ď</w>\": 459,\n  \"Đ\": 204,\n  \"Đ</w>\": 460,\n  \"đ\": 205,\n  \"đ</w>\": 461,\n  \"Ē\": 206,\n  \"Ē</w>\": 462,\n  \"ē\": 207,\n  \"ē</w>\": 463,\n  \"Ĕ\": 208,\n  \"Ĕ</w>\": 464,\n  \"ĕ\": 209,\n  \"ĕ</w>\": 465,\n  \"Ė\": 210,\n  \"Ė</w>\": 466,\n  \"ė\": 211,\n  \"ė</w>\": 467,\n  \"Ę\": 212,\n  \"Ę</w>\": 468,\n  \"ę\": 213,\n  \"ę</w>\": 469,\n  \"Ě\": 214,\n  \"Ě</w>\": 470,\n  \"ě\": 215,\n  \"ě</w>\": 471,\n  \"Ĝ\": 216,\n  \"Ĝ</w>\": 472,\n  \"ĝ\": 217,\n  \"ĝ</w>\": 473,\n  \"Ğ\": 218,\n  \"Ğ</w>\": 474,\n  \"ğ\": 219,\n  \"ğ</w>\": 475,\n  \"Ġ\": 220,\n  \"Ġ</w>\": 476,\n  \"ġ\": 221,\n  \"ġ</w>\": 477,\n  \"Ģ\": 222,\n  \"Ģ</w>\": 478,\n  \"Ģï¸ı\": 9668,\n  \"Ģï¸ı</w>\": 5511,\n  \"ģ\": 223,\n  \"ģ</w>\": 479,\n  \"ģà¸\": 15016,\n  \"Ĥ\": 224,\n  \"Ĥ</w>\": 480,\n  \"Ĥâĸ\": 29036,\n  \"ĤâĸĤâĸ\": 30832,\n  \"ĥ\": 225,\n  \"ĥ</w>\": 481,\n  \"Ħ\": 226,\n  \"Ħ</w>\": 482,\n  \"Ħà¸\": 20537,\n  \"Ħë\": 34462,\n  \"Ħëĭ\": 25170,\n  \"ħ\": 227,\n  \"ħ</w>\": 483,\n  \"ħï¸ı</w>\": 33950,\n  \"Ĩ\": 228,\n  \"Ĩ</w>\": 484,\n  \"ĩ\": 229,\n  \"ĩ</w>\": 485,\n  \"Ī\": 230,\n  \"Ī</w>\": 486,\n  \"ī\": 231,\n  \"ī</w>\": 487,\n  \"īï¸ı</w>\": 37463,\n  \"Ĭ\": 232,\n  \"Ĭ</w>\": 488,\n  \"Ĭãģ\": 30294,\n  \"ĭ\": 233,\n  \"ĭ</w>\": 489,\n  \"ĭãģ\": 36218,\n  \"ĭãĤ\": 45737,\n  \"Į\": 234,\n  \"Į</w>\": 490,\n  \"ĮãĤĬãģ\": 45969,\n  \"ĮãĤĬãģŁãģĦ</w>\": 47021,\n  \"Įë\": 17003,\n  \"į\": 235,\n  \"į</w>\": 491,\n  \"İ\": 236,\n  \"İ</w>\": 492,\n  \"ı\": 237,\n  \"ı</w>\": 493,\n  \"Ĳ\": 238,\n  \"Ĳ</w>\": 494,\n  \"ĳ\": 239,\n  \"ĳ</w>\": 495,\n  \"Ĵ\": 240,\n  \"Ĵ</w>\": 496,\n  \"ĵ\": 241,\n  \"ĵ</w>\": 497,\n  \"Ķ\": 242,\n  \"Ķ</w>\": 498,\n  \"Ķë\": 37978,\n  \"Ķï¸ı\": 24395,\n  \"Ķï¸ı</w>\": 7443,\n  \"ķ\": 243,\n  \"ķ</w>\": 499,\n  \"ķãĤ\": 26609,\n  \"ķï¸ı</w>\": 44853,\n  \"ĸ\": 244,\n  \"ĸ</w>\": 500,\n  \"ĸï¸ı</w>\": 28877,\n  \"Ĺ\": 245,\n  \"Ĺ</w>\": 501,\n  \"ĺ\": 246,\n  \"ĺ</w>\": 502,\n  \"Ļ\": 247,\n  \"Ļ</w>\": 503,\n  \"ļ\": 248,\n  \"ļ</w>\": 504,\n  \"Ľ\": 249,\n  \"Ľ</w>\": 505,\n  \"ľ\": 250,\n  \"ľ</w>\": 506,\n  \"ľë\": 39810,\n  \"Ŀ\": 251,\n  \"Ŀ</w>\": 507,\n  \"ŀ\": 252,\n  \"ŀ</w>\": 508,\n  \"Ł\": 253,\n  \"Ł</w>\": 509,\n  \"ŁãģĦ</w>\": 46023,\n  \"ł\": 254,\n  \"ł</w>\": 510,\n  \"łï¸ı\": 27899,\n  \"łï¸ı</w>\": 12715,\n  \"łĪ\": 43364,\n  \"Ń\": 255,\n  \"Ń</w>\": 511\n}\n"
  },
  {
    "path": "configs/flux/tokenizer_2/special_tokens_map.json",
    "content": "{\n  \"additional_special_tokens\": [\n    \"<extra_id_0>\",\n    \"<extra_id_1>\",\n    \"<extra_id_2>\",\n    \"<extra_id_3>\",\n    \"<extra_id_4>\",\n    \"<extra_id_5>\",\n    \"<extra_id_6>\",\n    \"<extra_id_7>\",\n    \"<extra_id_8>\",\n    \"<extra_id_9>\",\n    \"<extra_id_10>\",\n    \"<extra_id_11>\",\n    \"<extra_id_12>\",\n    \"<extra_id_13>\",\n    \"<extra_id_14>\",\n    \"<extra_id_15>\",\n    \"<extra_id_16>\",\n    \"<extra_id_17>\",\n    \"<extra_id_18>\",\n    \"<extra_id_19>\",\n    \"<extra_id_20>\",\n    \"<extra_id_21>\",\n    \"<extra_id_22>\",\n    \"<extra_id_23>\",\n    \"<extra_id_24>\",\n    \"<extra_id_25>\",\n    \"<extra_id_26>\",\n    \"<extra_id_27>\",\n    \"<extra_id_28>\",\n    \"<extra_id_29>\",\n    \"<extra_id_30>\",\n    \"<extra_id_31>\",\n    \"<extra_id_32>\",\n    \"<extra_id_33>\",\n    \"<extra_id_34>\",\n    \"<extra_id_35>\",\n    \"<extra_id_36>\",\n    \"<extra_id_37>\",\n    \"<extra_id_38>\",\n    \"<extra_id_39>\",\n    \"<extra_id_40>\",\n    \"<extra_id_41>\",\n    \"<extra_id_42>\",\n    \"<extra_id_43>\",\n    \"<extra_id_44>\",\n    \"<extra_id_45>\",\n    \"<extra_id_46>\",\n    \"<extra_id_47>\",\n    \"<extra_id_48>\",\n    \"<extra_id_49>\",\n    \"<extra_id_50>\",\n    \"<extra_id_51>\",\n    \"<extra_id_52>\",\n    \"<extra_id_53>\",\n    \"<extra_id_54>\",\n    \"<extra_id_55>\",\n    \"<extra_id_56>\",\n    \"<extra_id_57>\",\n    \"<extra_id_58>\",\n    \"<extra_id_59>\",\n    \"<extra_id_60>\",\n    \"<extra_id_61>\",\n    \"<extra_id_62>\",\n    \"<extra_id_63>\",\n    \"<extra_id_64>\",\n    \"<extra_id_65>\",\n    \"<extra_id_66>\",\n    \"<extra_id_67>\",\n    \"<extra_id_68>\",\n    \"<extra_id_69>\",\n    \"<extra_id_70>\",\n    \"<extra_id_71>\",\n    \"<extra_id_72>\",\n    \"<extra_id_73>\",\n    \"<extra_id_74>\",\n    \"<extra_id_75>\",\n    \"<extra_id_76>\",\n    \"<extra_id_77>\",\n    \"<extra_id_78>\",\n    \"<extra_id_79>\",\n    \"<extra_id_80>\",\n    \"<extra_id_81>\",\n    \"<extra_id_82>\",\n    \"<extra_id_83>\",\n    \"<extra_id_84>\",\n    \"<extra_id_85>\",\n    \"<extra_id_86>\",\n    \"<extra_id_87>\",\n    \"<extra_id_88>\",\n    \"<extra_id_89>\",\n    \"<extra_id_90>\",\n    \"<extra_id_91>\",\n    \"<extra_id_92>\",\n    \"<extra_id_93>\",\n    \"<extra_id_94>\",\n    \"<extra_id_95>\",\n    \"<extra_id_96>\",\n    \"<extra_id_97>\",\n    \"<extra_id_98>\",\n    \"<extra_id_99>\"\n  ],\n  \"eos_token\": {\n    \"content\": \"</s>\",\n    \"lstrip\": false,\n    \"normalized\": false,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"pad_token\": {\n    \"content\": \"<pad>\",\n    \"lstrip\": false,\n    \"normalized\": false,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"unk_token\": {\n    \"content\": \"<unk>\",\n    \"lstrip\": false,\n    \"normalized\": false,\n    \"rstrip\": false,\n    \"single_word\": false\n  }\n}\n"
  },
  {
    "path": "configs/flux/tokenizer_2/tokenizer.json",
    "content": "{\n  \"version\": \"1.0\",\n  \"truncation\": null,\n  \"padding\": null,\n  \"added_tokens\": [\n    {\n      \"id\": 0,\n      \"content\": \"<pad>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 1,\n      \"content\": \"</s>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 2,\n      \"content\": \"<unk>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32000,\n      \"content\": \"<extra_id_99>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32001,\n      \"content\": \"<extra_id_98>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32002,\n      \"content\": \"<extra_id_97>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32003,\n      \"content\": \"<extra_id_96>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32004,\n      \"content\": \"<extra_id_95>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32005,\n      \"content\": \"<extra_id_94>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32006,\n      \"content\": \"<extra_id_93>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32007,\n      \"content\": \"<extra_id_92>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32008,\n      \"content\": \"<extra_id_91>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32009,\n      \"content\": \"<extra_id_90>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32010,\n      \"content\": \"<extra_id_89>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32011,\n      \"content\": \"<extra_id_88>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32012,\n      \"content\": \"<extra_id_87>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32013,\n      \"content\": \"<extra_id_86>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32014,\n      \"content\": \"<extra_id_85>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32015,\n      \"content\": \"<extra_id_84>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32016,\n      \"content\": \"<extra_id_83>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32017,\n      \"content\": \"<extra_id_82>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32018,\n      \"content\": \"<extra_id_81>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32019,\n      \"content\": \"<extra_id_80>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32020,\n      \"content\": \"<extra_id_79>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32021,\n      \"content\": \"<extra_id_78>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32022,\n      \"content\": \"<extra_id_77>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32023,\n      \"content\": \"<extra_id_76>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32024,\n      \"content\": \"<extra_id_75>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32025,\n      \"content\": \"<extra_id_74>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32026,\n      \"content\": \"<extra_id_73>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32027,\n      \"content\": \"<extra_id_72>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32028,\n      \"content\": \"<extra_id_71>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32029,\n      \"content\": \"<extra_id_70>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32030,\n      \"content\": \"<extra_id_69>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32031,\n      \"content\": \"<extra_id_68>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32032,\n      \"content\": \"<extra_id_67>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32033,\n      \"content\": \"<extra_id_66>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32034,\n      \"content\": \"<extra_id_65>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32035,\n      \"content\": \"<extra_id_64>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32036,\n      \"content\": \"<extra_id_63>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32037,\n      \"content\": \"<extra_id_62>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32038,\n      \"content\": \"<extra_id_61>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32039,\n      \"content\": \"<extra_id_60>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32040,\n      \"content\": \"<extra_id_59>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32041,\n      \"content\": \"<extra_id_58>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32042,\n      \"content\": \"<extra_id_57>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32043,\n      \"content\": \"<extra_id_56>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32044,\n      \"content\": \"<extra_id_55>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32045,\n      \"content\": \"<extra_id_54>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32046,\n      \"content\": \"<extra_id_53>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32047,\n      \"content\": \"<extra_id_52>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32048,\n      \"content\": \"<extra_id_51>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32049,\n      \"content\": \"<extra_id_50>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32050,\n      \"content\": \"<extra_id_49>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32051,\n      \"content\": \"<extra_id_48>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32052,\n      \"content\": \"<extra_id_47>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32053,\n      \"content\": \"<extra_id_46>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32054,\n      \"content\": \"<extra_id_45>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32055,\n      \"content\": \"<extra_id_44>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32056,\n      \"content\": \"<extra_id_43>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32057,\n      \"content\": \"<extra_id_42>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32058,\n      \"content\": \"<extra_id_41>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32059,\n      \"content\": \"<extra_id_40>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32060,\n      \"content\": \"<extra_id_39>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32061,\n      \"content\": \"<extra_id_38>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32062,\n      \"content\": \"<extra_id_37>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32063,\n      \"content\": \"<extra_id_36>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32064,\n      \"content\": \"<extra_id_35>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32065,\n      \"content\": \"<extra_id_34>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32066,\n      \"content\": \"<extra_id_33>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32067,\n      \"content\": \"<extra_id_32>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32068,\n      \"content\": \"<extra_id_31>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32069,\n      \"content\": \"<extra_id_30>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32070,\n      \"content\": \"<extra_id_29>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32071,\n      \"content\": \"<extra_id_28>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32072,\n      \"content\": \"<extra_id_27>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32073,\n      \"content\": \"<extra_id_26>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32074,\n      \"content\": \"<extra_id_25>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32075,\n      \"content\": \"<extra_id_24>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32076,\n      \"content\": \"<extra_id_23>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32077,\n      \"content\": \"<extra_id_22>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32078,\n      \"content\": \"<extra_id_21>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32079,\n      \"content\": \"<extra_id_20>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32080,\n      \"content\": \"<extra_id_19>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32081,\n      \"content\": \"<extra_id_18>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32082,\n      \"content\": \"<extra_id_17>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32083,\n      \"content\": \"<extra_id_16>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32084,\n      \"content\": \"<extra_id_15>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32085,\n      \"content\": \"<extra_id_14>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32086,\n      \"content\": \"<extra_id_13>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32087,\n      \"content\": \"<extra_id_12>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32088,\n      \"content\": \"<extra_id_11>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32089,\n      \"content\": \"<extra_id_10>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32090,\n      \"content\": \"<extra_id_9>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32091,\n      \"content\": \"<extra_id_8>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32092,\n      \"content\": \"<extra_id_7>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32093,\n      \"content\": \"<extra_id_6>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32094,\n      \"content\": \"<extra_id_5>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32095,\n      \"content\": \"<extra_id_4>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32096,\n      \"content\": \"<extra_id_3>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32097,\n      \"content\": \"<extra_id_2>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32098,\n      \"content\": \"<extra_id_1>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32099,\n      \"content\": \"<extra_id_0>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    }\n  ],\n  \"normalizer\": {\n    \"type\": \"Sequence\",\n    \"normalizers\": [\n      {\n        \"type\": \"Precompiled\",\n        \"precompiled_charsmap\": \"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gAkAAIRlAAD9GwCAzNAHAMzwBwAFHACAkYkAAMxMBgDNBAYAzHAGAM10BgDMQAcAmy0PAMyoBwDNrAcAhg0AAIdVDwCEQQ8ACQsAgIIBDACDVQ8AgDUBAIHZAQCkDACAj+kAAIztAACSDACA3R0AgIv1AACIbQ8AiQ0AAA8LAIC0CwCAgiUAAE0MAICBQQAAUwwAgBUeAIANHgCAJR4AgB0eAIAtHgCABR4AgIApAACBKQAA/AsAgA0cAICEeQAAFRwAgIFNAQCAoQEAGAsAgKP9DwDMOAIAzUgDAB0cAICBWQAAzXwCAMykDQAkCwCAWQwAgKjJDwCHOQAA1wkAgImhDwADCwCAkREAAJ4MAIDaCQCAmQsAgF8MAICAuQ8AgbkPANUdAICDjQ8A9gsAgCUcAICEBQAALRwAgB4LAIA1HACAKgsAgIGdDwCHIQAAh7UPAMyoAgDN6AIAzLQMAM3cDACmzQAAp8UAAE0cAICPgQ8AjIkPAKPlAAAwCwCAPRwAgDwLAICxyQAAhwUAAFUcAIBFHACAhz0AAF0cAIBxDACANgsAgKMFDwCB+QAAzKgDAGUcAIBICwCAjEkAAKPxAABtHACAdwwAgEILAICnlQAAfRwAgHUcAIDMrAMAzcgAAN0JAICHaQAA4AkAgIG9AACCeQAA4wkAgIe5AQBOCwCAkaUAAIEdAACdHACAVAsAgIgFAAClHACAm5EAAFoLAIDmCQCAjJEBANILAIDGCwCAwAsAgMwLAICDRQAAgrkBAIG5AQCApQEAPR4AgIZxAABgCwCAhEkAAIsVAACKPQAAiTkAAIhFAACP+QAAZgsAgLoLAICMBQAAp1EBAKZJAQBlDACAsHkAAKNZAQCMqQAAgKkAAIGpAACBlQAAgJUAAK1xAQBrDACAogsAgISNAABNHgCARR4AgKMhAABdHgCAVR4AgGUeAICBbQAAgG0AALEFAQCkOQAANR4AgIUcAIBsCwCAqAUAAJUcAICNHACArQkAAMywAQCBvQMAgL0DAIPNAwCtHACAtRwAgL0cAIDMvAEAzYQBAInpAwDMHAEAgdkCAIDFAgDNOAEAzDwBAMxoAgDNRAIAg00AAMUcAICH2QAAhy0AAIBFAACBEQAAggUAAHILAIDVHACAzRwAgN0cAIDMOAIAiBUAAIjhAACAbQAAgTkAAMyEAgDNUAEA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vBkBAL0ZAQC+fQEAv3UBAKPtAQCeOwCAojsAgKY7AICqOwCApu0BAKXtAQCuOwCAq3kBAKpxAQCyOwCAtjsAgK85AQCuMQEArVUBAKxVAQC6OwCAvjsAgMI7AIDGOwCAyjsAgOGsAQDOOwCA42AGANI7AIDWOwCA2jsAgO9UBgDeOwCA4jsAgL60GgDmOwCA6jsAgO47AICGaBwAh4wDAPI7AID2OwCA+jsAgP47AICAOQAAgTkAAIIFAAACPACACjwAgA48AIASPACAFjwAgKgdAwCpQQMAqkEDAKtBAwCsQQMArUkDAK5xAwCvcQMAhCAdABo8AIAePACAIjwAgCY8AIAqPACALjwAgDI8AIC46QAAufUAALr9AAC78QAAvJEAAL2RAAC+iQAAv4kAALDhAACx4QAAsuEAALPhAAC04QAAte0AALbZAAC32QAA4wwHAOEgBwDhMAEA4wgHADY8AIA6PACAPjwAgEI8AIBGPACASjwAgE48AIBSPACA75gHAFY8AIBaPACA74gHALOJAgBePACAYjwAgL6AGgBmPACAtokCALWJAgBqPACAu2UBALplAQBuPACAcjwAgL9pAQC+ZQEAvXUBALx1AQC3PQYAtj0GALU9BgC0IQYAszUGALI1BgCxAQYAsAkGAL9ZBgC+UQYAvVkGALxNBgC7bQYAunkGALlxBgC4eQYAgJ0AAIGtAACCpQAAejwAgH48AICCPACAhjwAgIo8AICvcQYArmkGAK1tBgCsbQYAq4EGAKqZBgCpkQYAqJkGAAY8AIB2PACAjjwAgKPFHQCSPACApcUdAKbFHQCWPACAhgADAIdkAwCqKR4AqykeAKw5HgCtOR4ArikeAK8lHgCzOR4AmjwAgJ48AICiPACApjwAgLb9HgC1/R4AqjwAgLvZHgC60R4ArjwAgLI8AIC/aR8AvmEfAL1pHwC8wR4AqPEeAKnxHgCq8R4Aq/EeAKw1HgCtPR4ArjUeAK8tHgC2PACAujwAgL48AIDCPACAxjwAgMo8AIDOPACA0jwAgLjlHwC57R8AuuUfALv5HwC86R8AvZEfAL6RHwC/jR8AsFUeALFdHgCyVR4As/0fALTlHwC17R8AtuUfALfdHwCjeR8A1jwAgNo8AIDePACA4jwAgKa9HwClvR8A5jwAgKuZHwCqkR8AhogAAIdMAQCvKR4AriEeAK0pHgCsgR8AgEkAAIFJAACCWQAAs5keAOo8AIC1iR4AtlEBAO48AIDyPACA9jwAgLotAQC7JQEAvD0BAL0lAQC+JQEAvxUBAKhNHgCpVR4Aql0eAKtVHgCsTR4ArZ0BAK6JAQCvgQEAhKwBAPo8AID+PACAAj0AgAY9AIAKPQCADj0AgBI9AIC4ZQEAuW0BALplAQC7fQEAvGUBAL1tAQC+ZQEAv9kAALClAQCxrQEAsqUBALO9AQC0rQEAtZ0BALaVAQC3XQEAo9UdABY9AIAaPQCAHj0AgCI9AICmHQIApcUdACY9AICraQIAqmECACo9AIAuPQCAr1kCAK5pAgCtaQIArHECADI9AIA2PQCAOj0AgD49AIBCPQCARj0AgEo9AIBOPQCAgDkAAIE5AACCBQAAUj0AgFo9AIBePQCAh0ADAIZcBACETAQAYj0AgGY9AICEBAUA4yABAGo9AIDhqAEAbj0AgO+UGgByPQCAdj0AgHo9AIB+PQCAgj0AgIY9AICKPQCAs6EDAI49AICSPQCAlj0AgJo9AIC2fQMAtX0DAJ49AIC7WQMAulEDAKI9AICmPQCAv/0AAL79AAC9/QAAvEEDAKhRAgCpWQIAqmkCAKtpAgCstQIArb0CAK61AgCvrQIAhKgHAKo9AICuPQCAsj0AgIKpAAC2PQCAgKkAAIGpAAC4aQEAuWkBALoJAQC7CQEAvBkBAL0ZAQC+CQEAvwkBALDVAgCx3QIAstUCALNpAQC0eQEAtXkBALZpAQC3YQEA4bgBAOHUHwDjOB8A4wwbALo9AIC+PQCAwj0AgMo9AIDOPQCA0j0AgNY9AIDaPQCAvjwJAN49AIDvhBsA74QbAKOhAgDiPQCAhugEAIe8BQDmPQCApn0CAKV9AgDqPQCAq1kCAKpRAgDuPQCA8j0AgK/9AQCu/QEArf0BAKxBAgCzhQYAxj0AgPY9AID6PQCA/j0AgLaJBgC1jQYAAj4AgLuRBgC6iQYABj4AgAo+AIC/9QYAvokGAL2BBgC8iQYADj4AgBI+AIAWPgCAGj4AgB4+AIAiPgCAJj4AgO+EHQAqPgCA4QAEAC4+AIDj/AQAgBEAAIEdAACCBQAAMj4AgKjxBgCp8QYAqg0GAKsFBgCsBQYArQkGAK49BgCvNQYANj4AgDo+AICGiAAAhxADAD4+AIBCPgCA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GkUAgB5FAIAiRQCAJkUAgIANAACBFQAAgh0AACpFAIAuRQCAMkUAgIR4AQC+FAAA4xQPADpFAIDh4A0AhAADAIawBACHFAMAPkUAgEJFAIBGRQCASkUAgE5FAIBSRQCA78APAFZFAIBaRQCAXkUAgGJFAIBmRQCAakUAgLNtAwBuRQCAtX0DALZ1AwByRQCAdkUAgHpFAIC6UQMAu1EDALz1AwC9/QMAvukDAL/hAwB+RQCAgkUAgIZFAICKRQCAjkUAgJJFAICWRQCAmkUAgKhxAgCpeQIAqokDAKuJAwCsmQMArZkDAK6JAwCviQMAsPkDALH5AwCyTQMAs0UDALRBAwC1SQMAtnEDALdxAwC4IQMAuSEDALohAwC7IQMAvCEDAL0hAwC+IQMAvyEDAICdAQCBEQAAghEAAIQEBQDvFAAAnkUAgKJFAIC+EAUA48gAAKpFAIDh0AEArkUAgLJFAIC2RQCAukUAgL5FAICqeQIAq3kCAIboBACHYAUArsECAK/JAgCs3QIArdUCAMJFAICjRQIAxkUAgMpFAICmXQIAzkUAgNJFAIClVQIA1kUAgNpFAIDeRQCA4kUAgOZFAIDqRQCA7kUAgO+EDgC+rAQA4dAOAPJFAIDjFAEA9kUAgPpFAID+RQCAAkYAgLPdAQAGRgCACkYAgA5GAIASRgCAtv0BALX9AQAaRgCAu90BALrdAQCE4AQAHkYAgL+hAQC+vQEAvb0BALy9AQCoBQYAqR0GAKoVBgCrLQYArDUGAK09BgCuNQYArykGAKZFAICC9QcAgeUHAIDlBwAWRgCAIkYAgIYcAACHsAMAuCUGALnFBgC6zQYAu8UGALzdBgC9xQYAvs0GAL/FBgCwWQYAsVkGALIpBgCzKQYAtDkGALUlBgC2JQYAtx0GAKOdBgAmRgCAKkYAgC5GAIAyRgCApr0GAKW9BgA2RgCAq50GAKqdBgA6RgCAPkYAgK/hBgCu/QYArf0GAKz9BgBCRgCAs/UHAEZGAIBKRgCAtu0HAE5GAIBSRgCAteUHALqNBwC7kQcAVkYAgFpGAIC+dQcAv30HALyBBwC9fQcAqCUGAKkpBgCqOQYAqzkGAKwpBgCtKQYArnkGAK91BgBeRgCAYkYAgGZGAIBqRgCAbkYAgHJGAIB2RgCAekYAgLjVBgC53QYAuuEGALv9BgC85QYAve0GAL7lBgC/mQYAsA0GALERBgCyEQYAs+0GALT1BgC1/QYAtvUGALftBgCjsQYAgi0AAIEVAACAsQAANkUAgKapBgCloQYAfkYAgKvVBgCqyQYAgkYAgL5oAQCvOQYArjEGAK05BgCsxQYAikYAgLPxAQCGaAAAh3wBALZdAQCORgCAkkYAgLVVAQC6SQEAu0kBAJZGAICaRgCAvj0BAL8hAQC8OQEAvTUBAJ5GAICiRgCAhAQDAL6AHACmRgCA4RwGAKpGAIDjAAYAvwguAK5GAICyRgCA78gHALZGAIC6RgCAvkYAgMJGAIDGRgCAykYAgKN9AgDORgCApdkCANJGAIDWRgCAptECANpGAIDeRgCAq8UCAKrFAgCtuQIArLUCAK+tAgCusQIAqW0FAKhZBQCrDQIAqrkCAK0dAgCsHQIArwUCAK4NAgC+aB0A4kYAgOZGAIDqRgCAgB0AAIEJAACCmQEA7kYAgLnhAwC4KQIAu+EDALrpAwC94QMAvPkDAL/hAwC+6QMAsU0CALBNAgCzIQIAsi0CALUlAgC0OQIAtxECALYlAgCowQIAqdECAKrRAgCr5QIArP0CAK0VAQCuHQEArw0BAPJGAID6RgCA/kYAgAJHAIAGRwCACkcAgA5HAIASRwCAuAUBALkJAQC6HQEAuxUBALwxAQC9MQEAvv0BAL/1AQCweQEAsUEBALJBAQCzXQEAtEUBALVNAQC2RQEAtz0BAIagHQCHxB0AFkcAgO/YAAAaRwCAHkcAgCJHAIDvxAYAhGwcAOH0BgAmRwCA47AGACpHAIDhlAEALkcAgONEBgCzGQIAMkcAgDZHAIA6RwCAhewsALbVAQC1NQIAPkcAgLvFAQC6/QEAQkcAgEZHAIC/yQEAvsEBAL3JAQC81QEAo9kdAPZGAIBKRwCATkcAgFJHAICmFR4ApfUdAFZHAICrBR4Aqj0eAFpHAIBeRwCArwkeAK4BHgCtCR4ArBUeAIBpAACBaQAAggUAAGJHAIBmRwCAakcAgIcQAwCGfAMAbkcAgHJHAIB2RwCAekcAgH5HAICCRwCAhkcAgIpHAICopR8Aqa0fAKqlHwCrvR8ArKUfAK2tHwCupR8ArxUfAI5HAICSRwCAlkcAgJpHAICeRwCAokcAgKZHAICqRwCAuA0fALkZHwC6IR8AuyEfALzZAAC92QAAvskAAL/BAACwcR8AsXEfALJxHwCzRR8AtEEfALVNHwC2PR8AtzUfALMtHgCuRwCAskcAgLZHAIC6RwCAti0eALUtHgC+RwCAu7UeALq1HgDCRwCAxkcAgL+JHgC+hR4AvZEeALylHgCCKQAAo2keAIAdAACBFQAApmkeAMpHAIDORwCApWkeAKrxHgCr8R4A0kcAgITgAQCuwR4Ar80eAKzhHgCt1R4AqNUBAKnlAQCq7QEAq+UBAKz9AQCt5QEAru0BAK/lAQC+oAEAhkYAgNZHAIDaRwCAhhAAAId0AQDeRwCA4kcAgLh9AQC5wQAAusEAALvBAAC8wQAAvckAAL7xAAC/8QAAsJ0BALFFAQCyTQEAs0UBALRdAQC1RQEAtk0BALdFAQDmRwCA6kcAgO5HAIDyRwCA9kcAgO80AgDv7B4A+kcAgOHwHQDj4AIA4zAeAOGEAQD+RwCAAkgAgAZIAIAKSACAsyUCAJQAAAAOSACAEkgAgBZIAIC2JQIAtTUCABpIAIC7wQIAuhkCAB5IAIAiSACAv8ECAL7ZAgC90QIAvNkCACZIAIAqSACALkgAgKPpAgAySACApfkCAKbpAgA2SACAOkgAgD5IAICq1QIAqw0CAKwVAgCtHQIArhUCAK8NAgCAYQAAgWEAAIIFAABCSACASkgAgIQABAC+FAQATkgAgIbABACHUAMAUkgAgFZIAIBaSACAXkgAgGJIAIBmSACAqK0CAKm9AgCqtQIAqw0BAKwVAQCtHQEArhUBAK8NAQCE7AQAakgAgG5IAIBySACAdkgAgHpIAIB+SACAgkgAgLgdAQC5LQEAuiUBALvNAQC81QEAvd0BAL7JAQC/wQEAsH0BALFVAQCyXQEAs1UBALRNAQC1PQEAtjUBALctAQDhGB4AhkgAgOM4HgCKSACAjkgAgJJIAICWSACAmkgAgJ5IAICiSACAvmAEAKZIAICBdQAAgHUAAO/gHwCCbQAAqkgAgK5IAICG6AQAh3wFALJIAIDhkAEAukgAgOOgAAC+SACAwkgAgMZIAIDvtAAAykgAgM5IAIDSSACA1kgAgLUFBgBGSACAtkgAgLYFBgDaSACA3kgAgLOlBQDiSACAvRkGALwRBgC/YQYAvhEGAOZIAIDqSACAuwkGALohBgCj/QUA7kgAgPJIAID2SACA+kgAgKZdBgClXQYA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sY0CALKFAgCzbQEAtHkBALV5AQC2aQEAt2kBAIYgBACHCAUAYksAgGZLAIBqSwCAbksAgHJLAIDvXAAAhOwEAOFcDgB2SwCA44wOAHpLAIB+SwCAgksAgIZLAICjVQIAiksAgI5LAICSSwCAlksAgKYdAgClHQIAmksAgKsJAgCqOQIAnksAgKJLAICv/QEArv0BAK35AQCsEQIAqGkGAKlpBgCqeQYAq3kGAKxpBgCtaQYArp0GAK+VBgBWSwCApksAgKpLAICuSwCAsksAgLZLAIC6SwCAvksAgLj1BgC5+QYAuo0GALuFBgC8nQYAvYUGAL6FBgC/tQYAsO0GALH1BgCy/QYAs/UGALTtBgC10QYAttEGALfRBgCz8QYAghUAAIG1AACAtQAAwksAgLbpBgC14QYAvtQDALsxBgC6KQYAxksAgMpLAIC/FQYAvikGAL0hBgC8KQYAzksAgKO1BgCGyAAAh8gAAKatBgDSSwCA1ksAgKWlBgCqbQYAq3UGANpLAIDeSwCArm0GAK9RBgCsbQYArWUGAKg1BgCpOQYAqoEGAKuBBgCsgQYArYEGAK6BBgCvtQYA4ksAgOZLAIDqSwCA7ksAgPJLAID2SwCA+ksAgP5LAIC4nQYAua0GALqlBgC7aQEAvHkBAL15AQC+aQEAv2kBALDRBgCx0QYAstEGALPRBgC0tQYAtb0GALa1BgC3rQYAswkGAAJMAIAGTACACkwAgA5MAIC2AQYAtQkGABJMAIC7FQYAuhUGABZMAIAaTACAv3kGAL5xBgC9BQYAvAUGAB5MAICjTQYAIkwAgOZKAICmRQYAJkwAgCpMAIClTQYAqlEGAKtRBgAuTACAMkwAgK41BgCvPQYArEEGAK1BBgCB6QMAgN0DAISIAwCC4QMAhrA8AIeIAgC+VAMAOkwAgD5MAIBCTACARkwAgEpMAIBOTACAUkwAgFZMAIBaTACA4/AGAF5MAIDhMAYAhAA8AGJMAIBmTACAakwAgG5MAIByTACAhTQ9AHZMAIB6TACA77AHAH5MAICCTACAhkwAgIpMAICOTACAkkwAgL7EPACWTACAgp0BAIGdAQCAnQEAqA0CAKllAgCqfQIAq3UCAKxZAgCtWQIArpkDAK+ZAwCw6QMAsekDALL5AwCz+QMAtOkDALXpAwC2XQMAt1UDALhtAwC5dQMA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t/0eALO5HgBeUgCAYlIAgGZSAIBqUgCAtsUeALXVHgBuUgCAu8EeALr5HgByUgCAdlIAgL/FHgC+2R4AvdEeALzZHgB6UgCAo/0eAH5SAICCUgCApoEeAIZSAICKUgCApZEeAKq9HgCrhR4AjlIAgJJSAICunR4Ar4EeAKydHgCtlR4AqCkeAKkpHgCqVR4Aq20eAKx1HgCtfR4ArnUeAK9pHgCWUgCAmlIAgJ5SAICiUgCAplIAgKpSAICuUgCAslIAgLjpHgC59R4Auv0eALv1HgC87R4AvZEeAL6RHgC/kR4AsB0eALHlHgCy7R4As+UeALT9HgC15R4Atu0eALflHgCz3R4AtlIAgLpSAIC+UgCAwlIAgLb9HgC1/R4AhFgBALshHgC62R4AvigAAMpSAIC/IR4AvjkeAL0xHgC8OR4AgU0AAIBNAACjlR4Agl0AAKW1HgDGUgCAzlIAgKa1HgB2UQCA0lIAgKtpHgCqkR4ArXkeAKxxHgCvaR4ArnEeAIYABACHRAMAs4ECANZSAIC1gQIA2lIAgN5SAIC2gQIAiAAAAOJSAIC74QIAuu0CAL3lAgC8+QIAv9ECAL7lAgDmUgCA6lIAgIREAwC+jAMA4UgCAO5SAIDjAAIA7/wfAPJSAIDhPB4A79wCAONgHwD2UgCA+lIAgP5SAIACUwCAqQUCAKixAgCrBQIAqgUCAK0NAgCsBQIArzUCAK41AgCEbAUABlMAgApTAIAOUwCAElMAgBZTAIAaUwCAHlMAgLnpAwC44QMAu/kDALrhAwC96QMAvOEDAL9dAwC+4QMAsSkCALAlAgCzPQIAsiECALUZAgC0LQIAt9kDALYRAgAiUwCAJlMAgCpTAICjhQMALlMAgKWFAwCmhQMAMlMAgDpTAIA+UwCAqukDAKvlAwCs/QMAreEDAK7hAwCv1QMAgEkAAIFVAACCVQAAo6kCAL6YBAClQQEApkEBAEJTAICG4AUAh+AFAKotAQCrOQEArBEBAK0FAQCuDQEArwUBAEZTAIBKUwCATlMAgO/cAABSUwCAVlMAgFpTAIDviB4AhCwHAOHsHgBeUwCA4xweAGJTAIDhlAEAZlMAgOMwAACzJQIAhWDmAGpTAIBuUwCAclMAgLbNAQC1zQEAdlMAgLu1AQC6oQEAelMAgH5TAIC/iQEAvoEBAL2JAQC8nQEA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qoECAKuBAgCsgQIArYECAK6FAgCvHQEAAlYAgAZWAIAKVgCADlYAgBJWAIAWVgCAGlYAgIS4BQC4dQEAuX0BALp1AQC7CQEAvBkBAL0ZAQC+CQEAvwEBALBlAQCxbQEAsmUBALN9AQC0aQEAtV0BALZVAQC3TQEAHlYAgCJWAIAmVgCAKlYAgC5WAIAyVgCA7zQAAO/ADgDhXA4A4UwPAOOUAADjnA4ANlYAgIJlAACBfQAAgH0AADpWAIA+VgCAvsQHALNFAgBCVgCAtUUCALZNAgBKVgCAhkAGAIeQBAC67QEAu+UBALz9AQC95QEAvuEBAL/VAQCflQgAngUIAJ3dDQCcPQwAmzEMAJr1DQCZ7RAAmD0QAJfVEQCWsRUAlQUUAJTlFQCTtRkAkjEYAJE5GACQDRwAj2EcANZVAICz1QYATlYAgLX9BgBGVgCAUlYAgLaRBgBWVgCAWlYAgLuVBgC6lQYAvVUHALxVBwC/VQcAvlUHAF5WAIBiVgCAqo0GAKuFBgCsnQYArYUGAK6BBgCvtQYAhKgAAGZWAIBqVgCAoyUFAG5WAIClJQUApi0FAHJWAIB2VgCAelYAgH5WAICCVgCAhlYAgIpWAICOVgCAklYAgJZWAICaVgCAnlYAgKJWAICjqQUAotEEAKHZBACgZQUAgiEdAIM1HQCmVgCAqlYAgIaVGACH3RQAhBkZAIUZGQCKDRUAi7EUAK5WAICyVgCAjsURAI/VDACMzRAAjR0RAJJhDQCTdQ0AvkwAALpWAICWxQkAl80EAJSNDACVXQkAmkEFAJtBBQCGyP8Ah0wAAIFZAACAeQAAnCEEAIJRAAChxQEAvlYAgKMB/ACi2QEApRX9AKS1/QCnufkApgH4AKkJ+AColfkAqwX1AKqt9QCtsfEArAHwAK8d8ACurfEAseHtALAB7ACzAegAsv3sALVd6QC09ekAwlYAgMZWAIDKVgCAzlYAgNJWAIDWVgCA2lYAgN5WAIDiVgCA5lYAgKiNBACplQQAqpUEAKulBACsvQQArdkEAK75BACv8QQAhGz8AOpWAIDuVgCA8lYAgPZWAID6VgCA/lYAgAJXAIC4eQUAucUFALrNBQC7xQUAvN0FAL3FBQC+zQUAv+0FALCZBACxmQQAskkFALNJBQC0WQUAtVkFALZJBQC3SQUAox0EAL7M/AAGVwCAClcAgA5XAICmWQQApTUEABJXAICrXQQAql0EABZXAIAaVwCAr50FAK6dBQCtnQUArJ0FAB5XAICznQIAIlcAgCpXAIC2UQIALlcAgDJXAIC1uQIAukkCALtVAgCGSP0Ah8D8AL41AgC/PQIAvEUCAL09AgCo3QQAqUkDAKpRAwCrbQMArHUDAK2VAwCunQMAr7kDAICNAQCB5QEAguEBADZXAIA6VwCAPlcAgEJXAIBGVwCAuJUDALmdAwC6lQMAu60DALy1AwC9vQMAvrUDAL9VAgCwyQMAsdUDALLVAwCzrQMAtLUDALW9AwC2tQMAt60DAEpXAIBOVwCAo9EDAFJXAICl9QMAVlcAgFpXAICmHQMAXlcAgGJXAICrGQMAqgUDAK1xAwCsCQMAr3EDAK55AwDhKAcAZlcAgOPkBgBqVwCA4SgGAG5XAIDjaAEAclcAgHZXAIB6VwCA71gAAH5XAICCVwCAhlcAgO/IBgCKVwCAqE39AKmB/QCq0f0Aq9H9AKzx/QCt8f0ArvH9AK/x/QAmVwCAghEAAIEZAACA0f8AjlcAgJJXAICEdAMAvnQDALh1/gC5ff4AunX+ALvF/gC83f4AvcX+AL7F/gC/9f4AsJH9ALGR/QCykf0As5H9ALRV/gC1Xf4AtlX+ALdN/gCzWf0AllcAgIasAACHRAMAmlcAgLZx/QC1ef0AnlcAgLtV/QC6Vf0AolcAgKZXAIC/mf4AvpH+AL1F/QC8Rf0AqlcAgKMd/QCuVwCAslcAgKY1/QC2VwCAulcAgKU9/QCqEf0AqxH9AL5XAIDCVwCArtX+AK/d/gCsAf0ArQH9AKjN/wCp0f8AqtH/AKsh/gCsIf4ArSH+AK4h/gCvIf4AxlcAgMpXAIDOVwCA0lcAgNZXAIDaVwCA3lcAgOJXAIC4jf4AuZH+ALqV/gC7rf4AvLX+AL25/gC+qf4Av6n+ALDh/gCx4f4AsuX+ALP5/gC06f4AtdX+ALbd/gC3uf4As1n/AOZXAIC2VgCA6lcAgO5XAIC2of4Atan+APJXAIC7Jf4AuiX+APZXAID6VwCAvxH+AL4t/gC9Lf4AvDH+AIIZAACjHf8AgGUAAIEZAACm5f4A/lcAgAJYAICl7f4AqmH+AKth/gCEZAEAviAAAK5p/gCvVf4ArHX+AK1p/gAKWACA4zT+AA5YAIDhfP0AhrAEAIcIAwASWACAFlgAgBpYAIAeWACAhCQDAIQkBAAiWACA70j+ACZYAIAqWACAs+kCAC5YAIC+RAQAvkAFADJYAIC2nQIAtZkCADZYAIC7iQIAur0CADpYAIA+WACAv1kDAL5RAwC9WQMAvJECAKkdAgCoFQIAqyUCAKolAgCtWQIArFUCAK9NAgCuUQIAvmQGAEJYAIBGWACASlgAgE5YAIBSWACAVlgAgFpYAIC5+QMAuPEDALtNAwC68QMAvUEDALxZAwC/cQMAvkEDALEJAgCwPQIAs8kDALIBAgC12QMAtNEDALfJAwC20QMA4ZABAF5YAIDj8AAAYlgAgGZYAICCPQAAgT0AAIA9AABqWACAblgAgHJYAIB6WACAflgAgIJYAIDvLAAAhlgAgKPpAwCKWACAhugEAIdgBQCOWACApp0DAKWZAwCSWACAq4kDAKq9AwCWWACAmlgAgK9ZAgCuUQIArVkCAKyRAwCeWACAolgAgKZYAICqWACArlgAgLJYAIC2WACA71gBAISgBADhVP8AulgAgOOEAQC+WACAwlgAgMZYAIDKWACAs9kBAM5YAICFzBkA0lgAgNZYAIC28QEAtfkBANpYAIC7pQEAutkBAN5YAIDiWACAv50BAL6dAQC9pQEAvK0BAKgBBgCpDQYAqhEGAKsRBgCsMQYArTEGAK4pBgCvJQYAdlgAgILJBwCBwQcAgPEHAOZYAIDqWACAhhwAAIf8AwC47QYAufUGALr9BgC79QYAvO0GAL1RBwC+VQcAv00HALBdBgCxIQYAsjkGALMxBgC0GQYAtRkGALbdBgC31QYAo5kGAO5YAIDyWACA9lgAgPpYAICmsQYApbkGAP5YAICr5QYAqpkGAAJZAIAGWQCAr90GAK7dBgCt5QYArO0GAApZAICz8QcADlkAgBJZAIC2gQcAFlkAgBpZAIC1mQcAuo0HALtlBwAeWQCAIlkAgL59BwC/ZQcAvH0HAL11BwCoLQYAqTUGAKo9BgCrMQYArFUGAK1FBgCuRQYAr3UGACZZAIAqWQCALlkAgDJZAIA2WQCAOlkAgD5ZAIBCWQCAuOkGALn1BgC6/QYAu/UGALztBgC9kQYAvpUGAL+NBgCwDQYAseUGALLtBgCz5QYAtP0GALXlBgC27QYAt+UGAKO1BgBGWQCASlkAgE5ZAIBSWQCA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nlsAgLshBwC6yQcAolsAgKZbAIC/KQcAviEHAL0pBwC8NQcAqlsAgKOBBwCuWwCAslsAgKaBBwC2WwCAulsAgKWRBwCqjQcAq2UHAL5bAIDCWwCArmUHAK9tBwCscQcArW0HAKgVAQCpgQEAqoEBAKuBAQCsgQEArYkBAK6xAQCvsQEAxlsAgMpbAIDOWwCA0lsAgNZbAIDaWwCA3lsAgOJbAIC4ZQAAuW0AALplAAC7fQAAvGUAAL1tAAC+ZQAAv90AALChAQCxrQEAsqUBALO5AQC0qQEAtZ0BALaVAQC3XQAA5lsAgIIdAACBHQAAgB0AAOpbAIDuWwCA8lsAgL5YAQCErAIA9lsAgIcIAQCGjAEA+lsAgKZaAID+WwCAAlwAgLNJAQAGXACAClwAgA5cAIASXACAtkkBALVJAQAWXACAuykBALolAQAaXACAHlwAgL8ZAQC+LQEAvS0BALwxAQC+2AMAIlwAgO/4BgAmXACAKlwAgC5cAIDv4AIAMlwAgOGUAQA2XACA43QCADpcAIDhmAUAPlwAgOMMBwBCXACARlwAgEpcAICjwQIAhIwDAKXBAgBOXACAUlwAgKbBAgBWXACAWlwAgKuhAgCqrQIAraUCAKy5AgCvkQIArqUCAKgxAwCpPQMAqjUDAKtJAwCsWQMArVkDAK5JAwCvQQMAgMUAAIEJAACCGQAAXlwAgGJcAIBqXACAh2wDAIYcHAC47QAAufEAALr1AAC7jQAAvJUAAL2BAAC+gQAAv70AALAJAwCxCQMAsu0AALPhAAC04QAAteEAALblAAC32QAAblwAgHJcAIB2XACAs7ECAHpcAIC13QIAttUCAH5cAICCXACAhlwAgLrBAgC7wQIAvDUBAL05AQC+KQEAvykBAKaNAgCKXACAjlwAgKWFAgCSXACAo+kCAJZcAICaXACArnEBAK9xAQCsbQEArWEBAKqZAgCrmQIAnlwAgKJcAICmXACA4YQGAKpcAIDjJAYArlwAgOGUAQCyXACA4ywAAL7oHQC2XACAulwAgO/IAACE/B0AvvAcAL5cAIDvSAcAwlwAgMZcAIDKXACAzlwAgIEdAACAHQAA0lwAgIIFAACGQBwAh8QcANpcAIDeXACA4lwAgOZcAIDqXACA7lwAgKi1HgCpBR8Aqg0fAKsFHwCsAR8ArQkfAK45HwCvOR8A1lwAgPJcAID2XACA+lwAgP5cAIACXQCABl0AgApdAIC4yR8AudUfALrRHwC76R8AvPkfAL3tHwC+mR8Av5kfALAlHwCxLR8AsjkfALM1HwC0LR8AtQ0fALYFHwC3/R8As4UfAA5dAIASXQCAFl0AgBpdAIC2iR8AtYkfAB5dAIC76R8AuuEfACJdAIAmXQCAv8kfAL7pHwC94R8AvO0fACpdAICjwR8ALl0AgDJdAICmzR8ANl0AgDpdAIClzR8AqqUfAKutHwA+XQCAQl0AgK6tHwCvjR8ArKkfAK2lHwCo6R4AqekeAKr5HgCr+R4ArOkeAK3pHgCuPQEArzUBAID5AQCBzQEAgsUBAIRgAgBGXQCASl0AgIdoAQCGnAAAuNEBALnZAQC64QEAu+EBALyRAQC9nQEAvpUBAL+JAQCwTQEAsVUBALJdAQCzVQEAtE0BALXxAQC28QEAt/EBALNxHgBOXQCAUl0AgFZdAIBaXQCAtmkeALVhHgBeXQCAu5EBALqJAQBiXQCAZl0AgL81AQC+iQEAvYEBALyJAQBqXQCAZlwAgKM5HgBuXQCApSkeAHJdAIB2XQCApiEeAHpdAIB+XQCAq9kBAKrBAQCtyQEArMEBAK99AQCuwQEAgl0AgIZdAICKXQCAjl0AgJJdAICWXQCAml0AgJ5dAICiXQCApl0AgKpdAICuXQCAsl0AgLpdAIC+XQCAvnADAOHkHgCESAIA4+gfAIQABACAeQAAgXkAAIJpAADCXQCAhsAEAIdEAwDGXQCAyl0AgM5dAIDSXQCA7yAfANZdAIDaXQCA3l0AgOJdAIDvSAIA5l0AgOpdAIDuXQCA8l0AgL7oBAD2XQCA+l0AgP5dAIACXgCA4ZABAAZeAIDj6AIAs0kDAApeAIAOXgCAEl4AgBZeAIC2SQMAtUkDABpeAIC7LQMAuiUDAB5eAIAiXgCAvxUDAL4VAwC9IQMAvCkDAKg1AgCpgQIAqoECAKuBAgCsgQIArYkCAK6xAgCvsQIAgP0BAIHNAQCCxQEAKl4AgIaQBACHBAUALl4AgIRwBAC4SQEAuUkBALpZAQC7WQEAvEkBAL1JAQC+eQEAv3kBALChAgCxqQIAsr0CALO1AgC0kQIAtZECALZ5AQC3eQEAMl4AgDZeAIA6XgCAPl4AgEJeAIBGXgCASl4AgO/QHgC+6AQA4VweAE5eAIDjkAAAUl4AgFZeAIBaXgCAXl4AgKNJAgBiXgCAZl4AgGpeAIBuXgCApkkCAKVJAgByXgCAqy0CAKolAgB2XgCAel4AgK8VAgCuFQIArSECAKwpAgCoNQYAqT0GAKpVBgCrZQYArH0GAK1lBgCubQYAr2EGACZeAIB+XgCAgl4AgIZeAICADQAAgbEAAIKxAACKXgCAuOkGALnpBgC6+QYAu/UGALyVBgC9nQYAvpUGAL+NBgCw4QYAseEGALLhBgCz/QYAtOUGALXtBgC25QYAt9kGALPdBgCOXgCAkl4AgJZeAICaXgCAtuUGALX1BgCeXgCAuyUGALolBgCGmAAAh6wAAL8pBgC+IQYAvSkGALw1BgCiXgCAo5kGAKZeAICqXgCApqEGAK5eAICyXgCApbEGAKphBgCrYQYAtl4AgLpeAICuZQYAr20GAKxxBgCtbQYAqC0GAKk9BgCqiQYAq4kGAKyZBgCtmQYArokGAK+JBgC+XgCAwl4AgMZeAIDKXgCAzl4AgNJeAIDWXgCA2l4AgLiNBgC5lQYAupUGALulBgC8vQYAvXEBAL5xAQC/cQEAsPkGALHNBgCy2QYAs9kGALTJBgC1yQYAtr0GALe1BgCzAQYA3l4AgOJeAIDmXgCA6l4AgLYZBgC1EQYA7l4AgLsJBgC6PQYA8l4AgPZeAIC/DQYAvg0GAL0NBgC8DQYA+l4AgKNFBgC2XQCA/l4AgKZdBgACXwCAhFgAAKVVBgCqeQYAq00GAL5oAQAGXwCArkkGAK9JBgCsSQYArUkGAIDBAwCByQMAgt0DAKPNAgAKXwCApdkCAKbNAgAOXwCAhoANAIeUAwCqxQIAqw0DAKwVAwCtHQMArhUDAK8NAwDhnBcA4xgGAOMUAwDhNAYA7xgCABJfAIAWXwCAGl8AgOPQAgAeXwCA4VACACJfAIAmXwCA7ywGAO/kJQAqXwCArE0CAK1RAgCuUQIAr2UCAKgBAgCpCQIAqlkCAKtVAgCE7A0ALl8AgDJfAIA2XwCAvvgNADpfAIA+XwCAQl8AgLxRAwC9WQMAvmEDAL9hAwC47QMAuVEDALpRAwC7UQMAtM0DALXVAwC23QMAt9UDALAdAgCx1QMAst0DALPVAwDjyAAARl8AgOG4AQBKXwCAhFQPAE5fAIBSXwCAVl8AgKHpAgCgFQYAo6UDAKINAwDvIAAAWl8AgF5fAIBiXwCAZl8AgGpfAICFNCYAs40DAG5fAIC1mQMAto0DAHJfAICGwA8Ah5QNALqFAwC7TQIAvFUCAL1dAgC+VQIAv00CAHpfAIB+XwCAgl8AgIZfAICKXwCAjl8AgI/d6wDvxAYAvuAPAOGMBgCSXwCA44AGAID1AACB5QAAguUAAJZfAICZbR8AmMUfAJvJGwCaeRoAnXUaAJzFGwCf+QcAnhkGAJFpFgCQsesAk20XAJLNFwCV0RMAlGkSAJdREgCWzRMAg1XkAIJB5AB2XwCAml8AgIeNHQCGkRgAhTkYAISVGQCLERwAigUcAJ5fAICiXwCAj4UVAI6ZEACNORAAjJUdAJNRFACSRRQApl8AgKpfAICXYQkAlnUIAJWdCQCU+RUAm0EMAJqtDQCuXwCAsl8AgLZfAIC6XwCAvl8AgJzxDAChbQ0Awl8AgKMBBACihQAApZkEAKSRBACnGTgApsUFAKkJOACoKTgAq4k8AKoBPACtATAArB08AK8pMACunTAAseE0ALABNACzASgAsv00ALXZKAC00SgAxl8AgMpfAIDOXwCA0l8AgNZfAIDaXwCAgB0AAIEJAACC2QEA3l8AgKgRDwCpGQ8Aql0PAKtVDwCsTQ8ArXEPAK51DwCvbQ8A4l8AgOpfAICGiAAAhxABAO5fAIDyXwCA9l8AgPpfAIC4TQ4AuVEOALpRDgC7UQ4AvGUOAL1tDgC+ZQ4Avx0OALAdDwCxwQ8AssEPALPBDwC0xQ8Atc0PALbFDwC3eQ4As9UPAP5fAIACYACABmAAgApgAIC28Q8AtcUPAA5gAIC7BQ8AutkPABJgAIAWYACAvwkPAL4BDwC9FQ8AvBUPABpgAICjkQ8AHmAAgCJgAICmtQ8AJmAAgCpgAIClgQ8Aqp0PAKtBDwAuYACAMmAAgK5FDwCvTQ8ArFEPAK1RDwCogQ0AqYENAKqBDQCrgQ0ArIENAK2BDQCusQ0Ar6ENADZgAIA6YACAPmAAgEJgAIBGYACAgrkAAIG9AACAvQAAuDUCALk9AgC6zQIAu5UCALyNAgC9tQIAvr0CAL+1AgCwbQIAsU0CALJFAgCzJQIAtD0CALUdAgC2FQIAtw0CAEpgAIBOYACAswENAFJgAIC1AQ0AWmAAgISUAwC2CQ0AviwEAF5gAIC7gQIAuqECAL35AgC8mQIAv9ECAL7xAgBiYACAZmAAgGpgAICjRQ0AbmAAgKVFDQCmTQ0AcmAAgIbgBACHpAQAquUCAKvFAgCs3QIArb0CAK61AgCvlQIAqCUCAKk1AgCqPQIAqzUCAKwtAgCtkQIArpECAK+RAgB2YACAemAAgH5gAICCYACAzAAAAIZgAICKYACAjmAAgLiZAgC5rQIAuqUCALttAQC8dQEAvX0BAL51AQC/bQEAsPECALH5AgCywQIAs8ECALSxAgC1vQIAtrUCALepAgCSYACA44QOAJZgAIDh9A4AmmAAgJ5gAICiYACApmAAgIQgBQCqYACArmAAgLJgAIC2YACA7+wOALpgAIC+YACAs/UCAMJgAICG6AQAh4wEAL5cBAC2UQIAteUCAMpgAIC7fQIAunUCAM5gAIDSYACAvzkCAL41AgC9VQIAvFUCAKM1BQBWYACAxmAAgNZgAIDaYACAppEFAKUlBQDeYACAq70FAKq1BQDiYACA5mAAgK/5BQCu9QUArZUFAKyVBQCA+QcAgfkHAIKNBwCzjQYA6mAAgLWdBgC2iQYA7mAAgPJgAID2YACAuk0HALtFBwC8XQcAvUEHAL5BBwC/QQcA+mAAgP5gAIDmXwCAAmEAgAZhAIAKYQCADmEAgBJhAICoNQYAqQEGAKppBgCraQYArHkGAK1lBgCuZQYAr50HALDlBwCx7QcAsuUHALP5BwC06QcAtekHALZZBwC3VQcAuHEHALlxBwC6cQcAu3EHALxVBwC9XQcAvlUHAL9NBwCjwQcAFmEAgBphAIAeYQCAImEAgKbFBwCl0QcAJmEAgKsJBgCqAQYAKmEAgC5hAICvDQYArg0GAK0NBgCsEQYAgGkAAIFpAACCBQAAMmEAgL6YAQCEmAEANmEAgDphAICGADwAh8QBAD5hAIBCYQCARmEAgEphAIBOYQCAUmEAgKhdBgCpbQYAqmUGAKuBAQCsgQEArYkBAK6xAQCvsQEAVmEAgFphAIBeYQCAYmEAgGZhAIBqYQCAbmEAgHJhAIC4VQEAuV0BALpVAQC7yQAAvNkAAL3ZAAC+yQAAv8EAALCxAQCxuQEAsokBALOJAQC0cQEAtXEBALZ1AQC3bQEAs+0FAHZhAIB6YQCAfmEAgIJhAIC2CQIAtQkCAIZhAIC7fQIAunUCAIphAICOYQCAv7UCAL61AgC9XQIAvF0CAL5gAgCjqQUAkmEAgJZhAICmTQIAmmEAgJ5hAIClTQIAqjECAKs5AgCiYQCAhOADAK7xAgCv8QIArBkCAK0ZAgC+iDwAqmEAgKotAwCrJQMArD0DAK0lAwCuLQMAryUDAID1AACB/QAAgsEAAKPBAwCuYQCApcEDAKbBAwCyYQCAhmA8AIdUAwC2YQCAumEAgL5hAIDjqAIAwmEAgOGkAQDGYQCA71wCAMphAIDOYQCA0mEAgNZhAIDaYQCA3mEAgOJhAIDjjAcA5mEAgOE8BADqYQCA7mEAgPJhAID2YQCAhCACAPphAID+YQCAAmIAgAZiAIDvbAcACmIAgA5iAICzLQIAhEQ9ABJiAIAaYgCAHmIAgLYtAgC1LQIAImIAgLvJAgC6wQIAJmIAgCpiAIC/yQIAvsECAL3JAgC80QIA4XgHAOPAAADjOAYA4VwGAICpAACBqQAAgtEAAC5iAIAyYgCANmIAgL6kPAA6YgCAPmIAgO8cAADvkAYAQmIAgIZgPACHBD0ARmIAgLNxAQBKYgCAtRkBALYJAQBOYgCAUmIAgFZiAIC6AQEAuwEBALwBAQC9AQEAvgEBAL8BAQCohT4AqbU+AKq1PgCrxT4ArN0+AK3FPgCuwT4Ar/0+AFpiAIBeYgCAYmIAgGZiAIBqYgCAbmIAgHJiAIB2YgCAuFE/ALlRPwC6UT8Au1E/ALx1PwC9fT8AvnU/AL9tPwCwiT4AsYk+ALKZPgCzmT4AtIk+ALWJPgC2eT8At3U/AKZhAICjOT4AemIAgBZiAICmQT4AfmIAgIJiAIClUT4Aqkk+AKtJPgCGYgCAimIAgK5JPgCvST4ArEk+AK1JPgCASQAAgVEAAIJRAACzkT8AjmIAgLW5PwC2RT8AkmIAgIZAAACHBAMAukU/ALtdPwC8TT8AvT0/AL4pPwC/IT8AqE0+AKlVPgCqVT4Aq2U+AKx9PgCtiT4Arrk+AK+5PgCWYgCAmmIAgJ5iAICiYgCApmIAgKpiAICuYgCAsmIAgLhhAQC5YQEAumEBALthAQC8YQEAvWEBAL5hAQC/YQEAsM0+ALHVPgCy1T4As6U+ALShPgC1qT4Atpk+ALeZPgCj3T4AtmIAgLpiAIC+YgCAwmIAgKYJPgCl9T4AxmIAgKsRPgCqCT4AymIAgM5iAICvbT4ArmU+AK1xPgCsAT4A0mIAgNZiAIDaYgCA3mIAgOJiAIDmYgCA6mIAgO5iAICAOQAAgTkAAIIFAADyYgCAvrgBAIS4AQD6YgCA/mIAgKitAgCp1QIAqtUCAKstAwCsNQMArT0DAK41AwCvLQMAAmMAgAZjAIAKYwCADmMAgBJjAIAWYwCAGmMAgB5jAIC46QMAuekDALqJAwC7iQMAvJkDAL2ZAwC+iQMAv4kDALBVAwCxXQMAslUDALPpAwC0+QMAtfkDALbpAwC34QMAs10CACJjAICGKAQAh8wDACZjAIC2vQMAtb0DACpjAIC7mQMAupEDAC5jAIAyYwCAvz0DAL49AwC9PQMAvIEDAIUAFACjGQIANmMAgDpjAICm+QMAPmMAgEJjAICl+QMAqtUDAKvdAwBGYwCASmMAgK55AwCveQMArMUDAK15AwDjVD4A4dw/AOHQPgDjPD4ATmMAgO8cAABSYwCAVmMAgFpjAIDjwAAAXmMAgOHUAQDvYD4AYmMAgGpjAIDvRD8AgGEAAIFtAACCfQAAhAAFAIbwBACHnAUAvhAFAG5jAIByYwCAdmMAgHpjAIB+YwCAgmMAgIZjAICKYwCAjmMAgLiJPQC5iT0Aupk9ALuRPQC8uT0Avbk9AL7RPQC/0T0AsAU+ALENPgCyBT4Asx0+ALQFPgC1DT4AtgU+ALe5PQConT4Aqa0+AKqlPgCrvT4ArKU+AK2tPgCupT4Ar30+AISsBAC+rAQAkmMAgJZjAICaYwCAnmMAgKJjAICmYwCAqPkFAKn5BQCqKQYAqykGAKw5BgCtOQYArikGAK8pBgBmYwCAqmMAgK5jAICyYwCAtmMAgLpjAIC+YwCAwmMAgLiNBgC5kQYAupEGALulBgC8vQYAvUUHAL5BBwC/QQcAsFkGALFZBgCy7QYAs/0GALTtBgC13QYAttUGALe1BgCzoQYAxmMAgMpjAIDOYwCA0mMAgLa5BgC1sQYA2mMAgLudBgC6nQYA1mMAgPZiAIC/GQYAvikGAL0pBgC8OQYAglEAAKPlBgCAQQAAgUEAAKb9BgDeYwCA4mMAgKX1BgCq2QYAq9kGAIZIAACHbAAArm0GAK9dBgCsfQYArW0GAKg5BgCpWQYAqmkGAKtpBgCseQYArXkGAK5pBgCvaQYA5mMAgOpjAIDuYwCA8mMAgPZjAID6YwCA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uNEGALnZBgC64QYAu+EGALyRBgC9nQYAvpUGAL+JBgCwSQYAsUkGALJdBgCzVQYAtE0GALXxBgC28QYAt/EGALDhBwCx4QcAsgkHALMJBwC0GQcAtRkHALYJBwC3CQcAuDkHALkNBwC6GQcAuxkHALwJBwC9CQcAvn0HAL9xBwCCZgCAlmUAgIZmAICKZgCAjmYAgJJmAICWZgCAmmYAgKjxBwCpxQcAqsEHAKvdBwCsyQcArb0HAK6pBwCvoQcAsykGAJ5mAICiZgCApmYAgKpmAIC2XQYAtSEGAK5mAIC7RQYAukUGALJmAIC2ZgCAv70GAL69BgC9vQYAvL0GALpmAICjbQYAvmYAgMJmAICmGQYAxmYAgMpmAIClZQYAqgEGAKsBBgDOZgCA0mYAgK75BgCv+QYArPkGAK35BgCobQYAqbEBAKpJAQCrRQEArF0BAK1FAQCuTQEAr0UBANZmAICCHQAAgR0AAIAdAADaZgCA3mYAgOJmAIC+VAEAuIEAALmNAAC6hQAAu5kAALyJAAC9vQAAvrUAAL99AACwPQEAseEAALLhAACz4QAAtOEAALXpAAC20QAAt9EAALsFAwC62QIAhiwCAIcsAwC/DQMAvgUDAL0VAwC8FQMAs+ECAOpmAIDuZgCAhCwDAPJmAIC25QIAtfUCAPZmAICqnQIAq0EDAPpmAID+ZgCArkEDAK9JAwCsUQMArVEDAAJnAICjpQIABmcAgApnAICmoQIADmcAgBJnAIClsQIAqakAAKihAACrtQAAqr0AAK3dAACs3QAAr/EAAK79AAC+LBwAFmcAgBpnAIAeZwCAImcAgCZnAIAqZwCALmcAgLl9AAC4fQAAu80BALrNAQC93QEAvN0BAL/NAQC+zQEAsZUAALCJAACzTQAAspUAALVdAAC0XQAAt00AALZNAAAyZwCANmcAgDpnAIA+ZwCAQmcAgEZnAIBKZwCATmcAgIA5AACBOQAAggUAAFJnAIBaZwCAXmcAgIf4AgCGfB0A4bgEAL7IHADjQAYAYmcAgGZnAIBqZwCAbmcAgHJnAIB2ZwCAemcAgH5nAICCZwCAhmcAgIpnAIDvsAcAjmcAgJJnAICWZwCAmmcAgO/IAACeZwCAomcAgKZnAIDvQAYAqmcAgOH8BgCuZwCA4xwGALJnAIDhlAEAtmcAgONkBgCAEQAAgRkAAIIpAACz/QEAumcAgLWdAQC2lQEAvmcAgMJnAICEbB0AuoUBALuZAQC8iQEAvVEBAL5RAQC/UQEAozEeAFZnAIDGZwCAymcAgM5nAICmWR4ApVEeANJnAICrVR4AqkkeAIYIAwCHbAMAr50eAK6dHgCtnR4ArEUeANZnAICzCR8A2mcAgN5nAIC2CR8A4mcAgOZnAIC1CR8AugUfALsNHwDqZwCA7mcAgL4FHwC/CR8AvBUfAL0NHwCw5R8Ase0fALLlHwCz/R8AtOUfALXpHwC2GR8AtxkfALgpHwC5NR8Auj0fALs1HwC8ER8AvR0fAL4JHwC/BR8A8mcAgPZnAIDmZgCA+mcAgP5nAIACaACABmgAgApoAICo0R8AqdEfAKqlHwCrvR8ArKUfAK2tHwCupR8Ar50fAKNNHgAOaACAEmgAgBZoAIAaaACApk0eAKVNHgAeaACAq0keAKpBHgAiaACAJmgAgK9NHgCuQR4ArUkeAKxRHgCADQAAgRUAAIIdAAAqaACALmgAgDJoAICEtAEAvrQBAL/oAQA6aACAhkgHAIc0AACEvAYAPmgAgEJoAIC+tAYAqI0BAKmVAQCqlQEAq80BAKzZAQCt2QEArs0BAK/FAQBGaACASmgAgE5oAIBSaACAVmgAgFpoAIBeaACAYmgAgLgdAQC5wQAAusEAALvBAAC8wQAAvckAAL7xAAC/8QAAsIkBALGJAQCyKQEAsykBALQ9AQC1JQEAti0BALclAQC7bQIAum0CAGZoAIBqaACAv8ECAL7ZAgC93QIAvN0CALM9AgBuaACAcmgAgHZoAICE/AYAtnkCALVxAgB6aACAqikCAKspAgB+aACAgmgAgK6dAgCvhQIArJkCAK2ZAgCGaACAo3kCAIpoAICOaACApj0CAJJoAICWaACApTUCAIJtJwCDjSoAhqgFAIdsAwCGmS4Ah80vAIQRLgCFmS4AiiESAIspEgCaaACAnmgAgI6RFgCPHRYAjBESAI0RFgCScRoAk+UaAKJoAIDvlHYAlvEeAJflHgCUSRoAlRkeAJopAgCb4QIAqmgAgK5oAICyaACA4SASAJzxAgDjIBYAnyEfAJ7BHwCdmRsAnC0bAJuhGwCavRcAmTkXAJixFwCXiRMAlqkTAJWpEwCUdS4AkzkvAJIxLwCRsS8AkDUrAI+tJgDjeB8A0gAAAOFcHwCCmQEAtmgAgIDxAQCB8QEAvqgHALpoAIC+aACAwmgAgIS8BgDvLB8AxmgAgMpoAIDhpB4A48wAAON8HgDhvAEAzmgAgNJoAIDWaACAhJwGANpoAIC+bAYA3mgAgOJoAIDmaACA7xAAAO8EHgDqaACA7mgAgPJoAID2aACA+mgAgP5oAIACaQCABmkAgAppAICAPQAAgQkAAILJBwAOaQCAo/kDAKLxAwChMQMAoM0fALBJcQCxAXwAsgl8ALMhfQC0AXgAtRV4ADZoAICmaACAEmkAgL4oDgCGDAAAh4wDABZpAIAaaQCAHmkAgCJpAIAmaQCAoV0AAKJVAACjfQAApAEMAKUVDACm9QwApwEIAKghCACpxQgAqgF0AKsJdACsAXQArR11AK55cACveXAAqOUFAKnxBQCq8QUAqy0FAKw1BQCtPQUArjUFAK8tBQAqaQCALmkAgDJpAIA2aQCAOmkAgD5pAIBCaQCARmkAgLj9BgC5jQYAuoUGALutBgC8uQYAvbkGAL6tBgC/pQYAsFUFALFdBQCyVQUAs+UGALT9BgC10QYAttEGALfRBgCzeQQASmkAgE5pAIBSaQCAVmkAgLa9BAC1vQQAWmkAgLuZBAC6kQQAXmkAgGJpAIC/FQcAvjkHAL0xBwC8gQQAZmkAgKM9BABqaQCAbmkAgKb5BAByaQCAdmkAgKX5BACq1QQAq90EAHppAIB+aQCArn0HAK9RBwCsxQQArXUHAKhpBwCpaQcAqnkHAKvZBgCs9QYArf0GAK71BgCv5QYAgMkAAIHJAACCBQAAgmkAgIZwDwCHNAAAimkAgI5pAIC4fQYAuQUGALoNBgC7BQYAvB0GAL0FBgC+DQYAvwUGALCdBgCxdQYAsn0GALN1BgC0UQYAtV0GALZVBgC3TQYAs/EEAJJpAICWaQCAmmkAgJ5pAIC2fQUAtX0FAKJpAIC7sQUAulkFAKZpAICqaQCAv5kFAL6VBQC9oQUAvKkFAK5pAICjtQQAsmkAgLZpAICmOQUAumkAgL5pAIClOQUAqh0FAKv1BQDCaQCAxmkAgK7RBQCv3QUArO0FAK3lBQCpuQIAqLECAKvJAgCqsQIArTUCAKw1AgCvNQIArjUCAMppAIDOaQCA0mkAgNZpAIDaaQCA3mkAgOJpAIDmaQCAuekDALjZAwC7iQMA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teEBALbhAQC3zQEAo60NAKp1AICudQCAsnUAgLZ1AICm1Q0ApaENALp1AICr/Q0AqvUNAL51AIDCdQCAryUCAK4lAgCt3Q0ArN0NAIBdAACBbQAAgmUAALNRAwC+nAMAtXkDALYZAwDKdQCAhOACAM51AIC6PQMAuzUDALwZAwC9GQMAvtkDAL/ZAwCohQMAqZUDAKqVAwCrpQMArL0DAK3VAwCu0QMAr9EDAIYABACHNAMAv6AzANJ1AIDWdQCA2nUAgN51AIDidQCAuHEDALlxAwC6cQMAu3EDALzVAAC93QAAvtUAAL/NAACwtQMAsb0DALKBAwCzgQMAtFEDALVRAwC2UQMAt1EDAO+oAwDmdQCA6nUAgO51AICEHAIA8nUAgPZ1AID6dQCAviwFAP51AIACdgCABnYAgONAAwAKdgCA4SgAAA52AICjXQIAEnYAgBZ2AIAadgCAHnYAgKYVAgCldQIAInYAgKs5AgCqMQIAJnYAgCp2AICv1QIArtUCAK0VAgCsFQIA4ygBAOEADwDhCA4A4wgOAID9AACBCQAAgjkAAC52AIAydgCAOnYAgD52AIBCdgCA7+gOAEZ2AIBKdgCA72QOALNtAQBOdgCAhugEAIcMBQBSdgCAtm0BALVtAQBWdgCAu+0AALrtAABadgCAXnYAgL/VAAC+6QAAveEAALzpAACoXQYAqWEGAKqlBgCrvQYArKUGAK2tBgCupQYArxkHADZ2AIBidgCAZnYAgGp2AIBudgCAcnYAgHZ2AIB6dgCAuHUHALl5BwC6DQcAuwUHALwdBwC9BQcAvgUHAL81BwCwaQcAsWkHALJ9BwCzdQcAtG0HALVRBwC2UQcAt1EHAKMtBgB+dgCAgnYAgIZ2AICKdgCApi0GAKUtBgCOdgCAq60HAKqtBwCSdgCAlnYAgK+VBwCuqQcAraEHAKypBwCADQAAgRUAAIIdAACadgCAnnYAgKJ2AICEVAMAvlwAAKZ2AICqdgCAhugAAIdMAwCudgCAsnYAgLZ2AIC6dgCAvnYAgOMEBADCdgCA4bQFAMZ2AIDKdgCAznYAgNJ2AIDWdgCA2nYAgN52AIDidgCA5nYAgO/sBADqdgCA7nYAgLPtBgDydgCA9nYAgPp2AID+dgCAtpEGALXhBgACdwCAu40GALqNBgAGdwCACncAgL9BAQC+WQEAvVEBALxZAQCoJQYAqS0GAKolBgCrOQYArCkGAK1RBgCuSQYAr0EGAIDNAACBCQAAghkAAA53AIASdwCAhCwBAL40AAAadwCAuP0BALlBAQC6QQEAu0EBALxBAQC9SQEAvnEBAL9xAQCwCQYAsQkGALLNAQCzxQEAtN0BALXFAQC2zQEAt8UBAIagPACHRAMAHncAgKOhBQAidwCApa0FAKbdBQAmdwCAKncAgL4oPACqwQUAq8EFAKwVAgCtHQIArhUCAK8NAgC2QQMALncAgDJ3AIC1sQIANncAgLOhAgA6dwCAPncAgL5FAwC/TQMAvHUDAL1NAwC6ZQMAu20DAEJ3AIBGdwCASncAgE53AIDGdQCAUncAgFZ3AIBadwCAXncAgGJ3AICoRQIAqVUCAKpdAgCrVQIArE0CAK21AwCusQMAr60DALDVAwCx3QMAstUDALPtAwC09QMAtf0DALb1AwC37QMAuNkDALnZAwC6rQMAu6UDALy9AwC9pQMAvqUDAL+VAwCj9QMAZncAgGp3AIBudwCAcncAgKYVAgCl5QMAdncAgKs5AgCqMQIAencAgH53AICvGQIArhECAK0ZAgCsIQIAgGkAAIFpAACCBQAAgncAgIp3AICOdwCAkncAgO8cAACEbAIA4ZQBAJZ3AIDjyAAAmncAgJ53AICGWDwAh1A9AKJ3AICmdwCAqncAgISEPQCudwCAsncAgLZ3AIDvuAEAvmw8AOF0BgC6dwCA42QBAL53AIDCdwCAxncAgMp3AICz0QEAzncAgNJ3AIDWdwCA2ncAgLaRAQC1+QEA3ncAgLu9AQC6vQEA4ncAgOZ3AIC/dQEAvnUBAL2FAQC8hQEAqL09AKkNPgCqGT4AqxE+AKwxPgCtUT4ArlE+AK9NPgCGdwCAgh0AAIEdAACAHQAA6ncAgO53AIDydwCA9ncAgLjVPgC53T4AutU+ALtJPwC8WT8AvVk/AL5JPwC/QT8AsDk+ALE5PgCyET4AsxE+ALTxPgC18T4AtvU+ALftPgCjkT4A+ncAgIYoAACHwAMA/ncAgKbRPgCluT4AAngAgKv9PgCq/T4ABngAgAp4AICvNT4ArjU+AK3FPgCsxT4ADngAgLOdPwASeACAFngAgLalPwAaeACAHngAgLWtPwC6aT8Au3U/ACJ4AIAmeACAvlk/AL9FPwC8bT8A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IoUAgOH8AQBWgwCAJoUAgO/IBgAqhQCALoUAgDKFAICzjQMANoUAgLWNAwA6hQCAPoUAgLa1AwBChQCARoUAgLtBAwC6SQMAvUEDALxZAwC/QQMAvkkDAKNFDACmhACAFoUAgEqFAIBOhQCApn0MAKVFDABShQCAq4kMAKqBDABWhQCAWoUAgK+JDACugQwArYkMAKyRDACAFQ8AgR0PAIIhDwCzIQ4AXoUAgLUhDgC2JQ4AYoUAgGaFAIBqhQCAusEOALvBDgC8wQ4AvcEOAL7BDgC/wQ4AqK0OAKntDgCq5Q4Aq/0OAKzlDgCt6Q4ArjkOAK85DgBuhQCAcoUAgHaFAIB6hQCAgB0AAIEJAACCvQEAfoUAgLjNDwC51Q8AutUPALvlDwC8/Q8AvZUPAL6RDwC/kQ8AsEkOALFJDgCyWQ4As1kOALRJDgC1SQ4Atv0PALf1DwCjbQ8AgoUAgL6EAQCKhQCAjoUAgKZpDwClbQ8AkoUAgKuNDwCqjQ8AhogAAIdsAQCvjQ8Aro0PAK2NDwCsjQ8AloUAgLPtDgCahQCAnoUAgLaRDgCihQCApoUAgLXhDgC6tQ4Au70OAKqFAICuhQCAvn0BAL9lAQC8mQ4AvZkOAKgRDgCpJQ4AqiEOAKs5DgCsLQ4ArVUOAK5dDgCvUQ4AhKgAALKFAIC2hQCAuoUAgL6FAIDChQCAxoUAgMqFAIC47QEAuZUBALqVAQC7rQEAvLUBAL11AQC+fQEAv3UBALA1DgCxPQ4AsgkOALMJDgC0/QEAteUBALblAQC31QEAo6kNAM6FAIDShQCA1oUAgNqFAICm1Q0ApaUNAN6FAICr+Q0AqvENAOKFAIDmhQCAryECAK45AgCt3Q0ArN0NAIANAACBFQAAgh0AAOqFAIDuhQCA8oUAgIeQAwCGfAQAvuwEAPqFAID+hQCAAoYAgAaGAIAKhgCADoYAgBKGAICyLQ4AszUOALAtDgCxJQ4Ati0OALedDwC0LQ4AtSUOALq9DwC7jQ8AuKUPALm9DwC+LQ8AvxUPALyVDwC9JQ8AFoYAgBqGAIAehgCAIoYAgCaGAIAqhgCALoYAgDKGAICqpQ4Aq7UOAKjFDgCp3Q4Arp0OAK9VDgCspQ4ArZUOAKgNAgCpFQIAqhUCAKtNAgCsWQIArVkCAK5NAgCvRQIAhKgFADaGAIA6hgCA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mogAgJ6IAIC+cAMAgGkAAIFpAACCeQAAhAAEAIbwBACHdAMAoogAgO8MHwCmiACA4aweAKqIAIDj8B4ArogAgLKIAIC2iACAuogAgL6IAIDCiACAxogAgMqIAIDvVAIAzogAgNKIAIDWiACA46QCANqIAIDhgAEA3ogAgOKIAIDmiACA6ogAgO6IAICzRQMA8ogAgPaIAID6iACA/ogAgLZFAwC1VQMAAokAgLshAwC6SQMAvqAEAAqJAIC/KQMAviEDAL01AwC8OQMAqDkCAKk5AgCqjQIAq4UCAKydAgCthQIAroUCAK+1AgCA7QEAgfUBAIL1AQAOiQCAhpAEAIcEBQASiQCAFokAgLhFAQC5TQEAukUBALtdAQC8SQEAvUkBAL55AQC/eQEAsM0CALGlAgCyrQIAs6ECALSlAgC1rQIAtp0CALd9AQAaiQCAHokAgCKJAIAmiQCAKokAgC6JAIAyiQCA74gBAITsBADhVB4ANokAgONUAQA6iQCAPokAgEKJAIBGiQCAo0UCAEqJAIBOiQCAUokAgFaJAICmRQIApVUCAFqJAICrIQIAqkkCAF6JAIBiiQCArykCAK4hAgCtNQIArDkCAKg1BgCpPQYAqlEGAKttBgCseQYArWUGAK5tBgCvZQYABokAgGaJAIBqiQCAbokAgIAZAACBGQAAggUAAHKJAIC45QYAuekGALr5BgC7+QYAvOkGAL3pBgC+nQYAv5UGALAdBgCx5QYAsu0GALPlBgC0/QYAteEGALbhBgC34QYAs9kGAL7QAwB2iQCAeokAgH6JAIC25QYAtfEGAIKJAIC7IQYAutkGAIaYAACHeAMAvyUGAL45BgC9MQYAvDkGAIaJAICjnQYAiokAgI6JAICmoQYAkokAgJaJAICltQYAqp0GAKtlBgCaiQCAnokAgK59BgCvYQYArH0GAK11BgCo7QcAqSkGAKoxBgCrMQYArJEGAK2RBgCukQYAr5EGAKKJAICmiQCAqokAgK6JAICyiQCAtokAgLqJAIC+iQCAuIUGALmNBgC6hQYAu50GALyNBgC9vQYAvrUGAL95AQCw8QYAsfEGALLxBgCzxQYAtMEGALXBBgC2wQYAt8EGALO5BgDCiQCAxokAgMqJAIDOiQCAthEGALUZBgDSiQCAuzUGALo1BgDWiQCA2okAgL8FBgC+BQYAvREGALwlBgClQQYA3okAgOKJAICmSQYAgRUAAIB5AACj4QYAghUAAK1JBgCsfQYAr10GAK5dBgCENAEAlogAgKttBgCqbQYAvswDAOqJAICzlQIA7okAgLXZAgDyiQCA9okAgLbRAgCGgAwAhzgDALvFAgC6xQIAvRUDALwVAwC/FQMAvhUDAPqJAID+iQCA71gGAIRAAwACigCABooAgAqKAIAOigCAEooAgBaKAIAaigCAHooAgOE4BgAiigCA4yQGAL5wDACsSQIArUkCAK5dAgCvVQIAqB0CAKkFAgCqBQIAq10CAISoDAAmigCAKooAgC6KAIC+vA0AMooAgDaKAIA6igCAvE0DAL1VAwC+VQMAv2UDALjpAwC56QMAul0DALtVAwC0yQMAtckDALbZAwC32QMAsBkCALEZAgCy2QMAs9kDAD6KAIDj5AAAQooAgOG8AQBGigCAgj0AAIE9AACAPQAASooAgE6KAIBSigCAWooAgF6KAIDvzAMAYooAgGaKAICj3QMAaooAgIboDACHYA0AbooAgKaZAwClkQMAcooAgKuNAwCqjQMAdooAgHqKAICvXQIArl0CAK1dAgCsXQIAfooAgIKKAICGigCAiooAgI6KAICSigCAlooAgO/gAQCEvAwA4YwGAJqKAIDjHAYAnooAgKKKAICmigCAqooAgLPVAQCuigCAsooAgLaKAIC6igCAtpEBALWZAQC+igCAu70BALq9AQDCigCAyooAgL+dAQC+nQEAvZ0BALydAQCoBQ4AqQkOAKodDgCrFQ4ArFEOAK1RDgCuSQ4Ar0kOAFaKAICCzQ8AgfUPAID9DwDGigCAzooAgIYcAACHsAMAuOkOALnpDgC6/Q4Au/UOALztDgC9VQ8AvlEPAL9NDwCwOQ4AsTkOALIJDgCzCQ4AtBkOALUZDgC2DQ4At9kOAKOVDgDSigCA1ooAgNqKAIDeigCAptEOAKXZDgDiigCAq/0OAKr9DgDmigCA6ooAgK/dDgCu3Q4Ard0OAKzdDgDuigCAs/0PAPKKAID2igCAtoEPAPqKAID+igCAtZkPALqNDwC7ZQ8AAosAgAaLAIC+fQ8Av2UPALx9DwC9dQ8AqC0OAKk1DgCqMQ4AqzEOAKxVDgCtRQ4ArkUOAK91DgAKiwCADosAgBKLAIAWiwCAGosAgB6LAIAiiwCAJosAgLjpDgC59Q4Auv0OALv1DgC87Q4AvZEOAL6RDgC/kQ4AsA0OALHlDgCy7Q4As+UOALT9DgC15Q4Atu0OALflDgCjuQ4Agi0AAIEVAACAHQAAKosAgKbFDgCl3Q4ALosAgKshDgCqyQ4AMosAgL4sAQCvIQ4ArjkOAK0xDgCsOQ4AOosAgLZVAQC1RQEANosAgLNVAQA+iwCAhngAAIdcAAC/OQEAvjEBAL0lAQC8JQEAuzEBALpZAQDmiQCAQosAgEaLAIBKiwCAhAQDAKOJAgBOiwCApZkCAKaJAgBSiwCAvyg5AFaLAICqhQIAq+0CAKz5AgCt+QIAru0CAK/lAgDjWAIA78AOAOGIAQBaiwCAXosAgGKLAIBmiwCAaosAgG6LAIByiwCAdosAgHqLAIDvKAIA4ygOAH6LAIDhRA4AqbUCAKhpDQCrAQIAqgkCAK0BAgCsGQIArzECAK4BAgC+AAQAgosAgIaLAICKiwCAjosAgJKLAICWiwCAmosAgLnlAwC45QMAu+UDALrlAwC95QMAvOUDAL/lAwC+5QMAsSECALBJAgCzJQIAsiUCALUpAgC0IQIAtxUCALYVAgCowQIAqdECAKr1AgCrDQEArBUBAK0FAQCuBQEArzkBAJ6LAICiiwCAqosAgK6LAICyiwCAtosAgLqLAIC+iwCAuC0BALk9AQC67QEAu+UBALz9AQC95QEAvu0BAL/lAQCwLQEAsTUBALI9AQCzNQEAtC0BALUVAQC2HQEAtxUBAIA9AQCBpQAAgq0AAO/YAACGsAUAh9gFAMKLAIDv1A8AhGwEAOH0DgDGiwCA4xwPAMqLAIDhlAEAzosAgOMMDgCzPQIA0osAgNaLAIDaiwCA3osAgLbFAQC13QEA4osAgLuxAQC6qQEA5osAgOqLAIC/kQEAvqkBAL2hAQC8qQEAposAgO6LAICqRQYAq10GAKxFBgCtTQYArkUGAK99BgDyiwCA9osAgPqLAICj0QUA/osAgKUxBgCmKQYAAowAgAaMAICCHQAAgR0AAIAdAAAKjACADowAgBKMAIC+lAMAFowAgBqMAICGSAMAh8wDAB6MAIAijACAJowAgCqMAICoqQcAqakHAKq5BwCruQcArKkHAK2pBwCuAQcArzUHAC6MAIAyjACANowAgDqMAIA+jACAQowAgEaMAIBKjACAuC0HALnBAAC66QAAu+kAALz5AAC95QAAvuUAAL+dAACwUQcAsV0HALItBwCzJQcAtD0HALUlBwC2JQcAtxUHALMxBgBOjACAUowAgFaMAIBajACAtikGALUhBgBejACAu5kGALqVBgBijACAZowAgL/hBgC++QYAvfEGALz5BgBqjACAo3UGAG6MAIByjACApm0GAHaMAIB6jACApWUGAKrRBgCr3QYAfowAgIKMAICuvQYAr6UGAKy9BgCttQYAqOUBAKn1AQCq/QEAq/UBAKztAQCtNQEArj0BAK81AQCA+QAAgc0AAILFAACEYAEAvngBAIqMAICHrAAAhpABALjRAAC52QAAuuEAALvhAAC8kQAAvZ0AAL6VAAC/iQAAsE0BALFVAQCyXQEAs1UBALRNAQC18QAAtvEAALfxAACzdQIAjowAgJKMAICWjACAmowAgLa1AgC1ZQIAnowAgLuRAgC6iQIAoowAgKaMAIC/NQMAvokCAL2BAgC8iQIAqowAgKMxAgCujACAhMADAKbxAgCyjACAtowAgKUhAgCqzQIAq9UCALqMAIC+jACArs0CAK9xAwCszQIArcUCAKuNAACqjQAAqY0AAKg5AwCvvQAArr0AAK2FAACsjQAAqgAAAKsAAADCjACAxowAgMqMAIDOjACA0owAgNaMAIC7fQAAun0AALl9AAC4fQAAv90BAL7dAQC93QEAvN0BALO5AACysQAAsaEAALCtAAC3XQAAtl0AALWVAAC0lQAA2owAgN6MAIDijACA5owAgIE1AACADQAA6owAgII1AAC+rD0A7owAgPKMAICFaD0A+owAgP6MAICGODwAh8ACALNJAQACjQCA0AAAAAaNAIAKjQCAtkkBALVJAQAOjQCAuykBALolAQASjQCAFo0AgL8dAQC+HQEAvSEBALwpAQDjNDYA4QwGAOGwAgDjPAYAGo0AgB6NAIAijQCAJo0AgIQsPwC+oD8AKo0AgC6NAIDvfDcAMo0AgDaNAIDvGAEAOo0AgD6NAICGaD4Ah8w/AEKNAIBGjQCASo0AgO+UAABOjQCA4ZQBAFKNAIDjUAAAVo0AgILpPwCB6T8AgPE/AKMJPgCPASQA9owAgFqNAIBejQCApgk+AKUJPgBijQCAq2k+AKplPgBmjQCAao0AgK9dPgCuXT4ArWE+AKxpPgCeYTgA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vY0CAL69AgC/fQMAsFkCALFZAgCy7QIAs+UCALT9AgC15QIAtuUCALfVAgCjUQUAEpIAgBaSAIAakgCAHpIAgKZ5BQClcQUAIpIAgKudAgCqnQIAJpIAgCqSAICvIQIArjkCAK0xAgCsOQIAghEAAC6SAICAZQAAgQkAADKSAIC+mAMAOpIAgD6SAICEJAMAQpIAgIdoAwCGjBwARpIAgEqSAIBOkgCAUpIAgFaSAIBakgCAs6ECAITAHAC10QIAXpIAgGKSAIC21QIAZpIAgGqSAIC7wQIAuvUCAL0RAQC82QIAvxEBAL4ZAQBukgCAcpIAgHaSAIB6kgCAfpIAgIKSAICGkgCA77gGAIqSAIDhnAQAjpIAgON0BgCSkgCAlpIAgJqSAICekgCAgPkAAIH5AACCBQAAopIAgL5YHACEWB8A71wAAO9ABgDhkAEA4fwGAOM8AADjdAYAqpIAgK6SAICGmBwAh/QcAKNpAgC+DB8AspIAgLaSAIC6kgCAph0CAKUZAgC+kgCAqwkCAKo9AgDCkgCAxpIAgK/ZAQCu0QEArdkBAKwRAgCokR0AqZkdAKqhHQCroR0ArNEdAK3dHQCu1R0Ar8kdADaSAICmkgCAypIAgM6SAIDSkgCA1pIAgNqSAIDekgCAuHkeALl5HgC6zR4Au8UeALzdHgC9xR4AvsUeAL/1HgCwuR0AsY0dALKFHQCzTR4AtFUeALVdHgC2VR4At0keALjNHwC51R8Aut0fALvVHwC88R8Avf0fAL7pHwC/6R8AsKUfALGxHwCysR8As40fALSVHwC19R8Atv0fALf1HwCoGR4AqRkeAKotHgCrPR4ArCUeAK0tHgCuJR4Ar90fAOKSAIDmkgCA6pIAgO6SAIDykgCAxpEAgPaSAID6kgCAs+UfAP6SAIACkwCABpMAgAqTAIC27R8Ate0fAA6TAIC7NR4AuiEeABKTAIAWkwCAv3EeAL4RHgC9GR4AvCUeAIJpAACjoR8AgFkAAIFRAACmqR8AGpMAgB6TAIClqR8AqmUeAKtxHgCGAAQAh+wBAK5VHgCvNR4ArGEeAK1dHgCoMR4AqTEeAKpBHgCrQR4ArEEeAK1JHgCucR4Ar3EeACKTAIAmkwCAKpMAgC6TAIAykwCANpMAgDqTAIA+kwCAuCkBALkpAQC6OQEAuzUBALwtAQC90QAA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qnkOAKshDgC2lQCAupUAgK4hDgCvKQ4ArDEOAK0xDgCoYQ4AqXUOAKp9DgCrdQ4ArG0OAK31DgCu/Q4Ar/UOAIaAAQCHpAEAvpUAgMKVAIDGlQCAypUAgM6VAIDSlQCAuHUBALl9AQC6dQEAu8kBALzdAQC9xQEAvsUBAL/1AQCwjQ4AsZUOALKdDgCzkQ4AtFUBALVdAQC2VQEAt00BALP1DgDWlQCA2pUAgN6VAIDilQCAtnUOALXlDgDmlQCAu1EOALpJDgDqlQCA7pUAgL+ZAQC+kQEAvUUOALxJDgDylQCAo7EOAPaVAID6lQCApjEOAP6VAIAClgCApaEOAKoNDgCrFQ4ABpYAgAqWAICu1QEAr90BAKwNDgCtAQ4AqO0CAKktAwCqJQMAqz0DAKwlAwCtLQMAriUDAK+ZAwAOlgCAEpYAgBaWAIAalgCAHpYAgCKWAIC+dAIAKpYAgLiNAwC5kQMAupEDALulAwC8vQMAvXUAAL59AAC/dQAAsOkDALHpAwCy+QMAs/EDALTZAwC12QMAtrkDALe1AwCArQAAgbUAAIK9AACzoQMALpYAgLWhAwC2oQMAMpYAgITgAgA2lgCAuiEDALshAwC8IQMAvSkDAL4RAwC/EQMAo+0DAIXABACFtG8AOpYAgD6WAICm7QMApe0DAEKWAICrbQMAqm0DAIZIBQCHbAMAr10DAK5dAwCtZQMArG0DAEaWAIDjAA4A71hsAOG0DwBKlgCATpYAgFKWAIBWlgCAoakDAKD9DwCjwQMAog0DAOHgAwDv4A8A4+QDAFqWAIBelgCAYpYAgIQEBAC+BAQAZpYAgO+UAwBqlgCAbpYAgHKWAIDj1AMAdpYAgOFUAAB6lgCAfpYAgIKWAICGlgCAgA0AAIEVAACCHQAAipYAgI6WAICSlgCAj5EbAO+cDgCE4AcA4dQOAJqWAIDj8A4AnpYAgKKWAICGGAcAh5AEAJnlFwCY5RcAm+kLAJo5CwCd/QoAnPELAJ9VDwCeXQ8AkSkfAJDNGwCTJR8Aks0fAJXREwCUKRMAlxkXAJZ1EwCM4RAAjSUQAI4tEACP+QwAJpYAgJaWAICKORQAi5UUAITpGACFBRgAhuUYAIfxFACmlgCAqpYAgIIxHACDFRwAnKkEAK6WAICylgCAtpYAgLqWAIC+lgCAmtEEAJt9BACUTQ0AleUIAJblCACXtQgAwpYAgMaWAICSWQwAk1kMAKGRAADKlgCAowF8AKKZAACluXwApJF8AKeZeACm4X0AqYF5AKiheACriXQAqgF0AK0BcACsWXQAr4VwAK6dcACx4WwAsAFsALMBaACyHWwAtfVoALT1aADOlgCA0pYAgNaWAIDalgCA3pYAgOKWAIDmlgCA6pYAgO6WAIDylgCAqD0HAKmVBwCqlQcAq6kHAKzdBwCtxQcArsUHAK8dBgD2lgCAgh0AAIEdAACAHQAA+pYAgP6WAIAClwCAvmABALgZBgC5GQYAuikGALslBgC8IQYAvSEGAL4hBgC/IQYAsHEGALFxBgCycQYAs3EGALRNBgC1NQYAtj0GALctBgCzHQcACpcAgIYoAACHqAAADpcAgLZFBwC1VQcAEpcAgLu1BgC6tQYAFpcAgBqXAIC/8QYAvokGAL2lBgC8pQYAHpcAgKNZBwAilwCAJpcAgKYBBwAqlwCALpcAgKURBwCq8QYAq/EGADKXAIA2lwCArs0GAK+1BgCs4QYAreEGAKipBQCptQUAqr0FAKs9AgCsJQIArVECAK5RAgCvUQIAOpcAgD6XAIBClwCARpcAgIQ8AwBKlwCATpcAgFKXAIC4pQIAua0CALqlAgC7vQIAvKUCAL2tAgC+pQIAv30DALAxAgCxMQIAshkCALMZAgC09QIAta0CALalAgC3nQIAVpcAgFqXAIBelwCAszkFAGKXAIC1oQIAtt0CAGaXAIBqlwCAbpcAgLr5AgC7+QIAvMECAL3BAgC+PQIAv2UCAHKXAICmgQIApf0CAHqXAICjZQUAvlh8AIbYfACHnHwArzkCAK5hAgCtnQIArJ0CAKulAgCqpQIAfpcAgIKXAICohQIAqZUCAKqVAgCrpQIArL0CAK3VAgCu0QIAr9ECAIGFAQCAhQEAhpcAgILtAQCKlwCAjpcAgJKXAICWlwCAuHUBALl9AQC6dQEAu80BALzVAQC93QEAvskBAL/BAQCwtQIAsb0CALKBAgCzgQIAtFEBALVRAQC2UQEAt1EBAJqXAICelwCAopcAgKaXAIDhMAYA4WQHAOMoBgDjxAYAhCB9AKqXAIDvbAAA7xgGAK6XAICylwCAtpcAgLqXAICzXQIAvkh8AL6XAIDClwCAxpcAgLYVAgC1dQIAypcAgLs5AgC6MQIAzpcAgNKXAIC/1QEAvtUBAL0VAgC8FQIAo519AHaXAIDWlwCA2pcAgN6XAICm1X0ApbV9AOKXAICr+X0AqvF9AOaXAIDqlwCArxV+AK4VfgCt1X0ArNV9AIBNAACBVQAAglUAALOxfgDulwCAtWV/ALZtfwDylwCAhkADAIcEAwC66X8Au+l/ALz5fwC9+X8Avt1/AL/NfwD2lwCA+pcAgAaXAID+lwCAApgAgAaYAIAKmACADpgAgKhtfgCpXX4AqlV+AKuFfwCsgX8ArYF/AK6BfwCvgX8AsEF/ALFBfwCyQX8As0F/ALR1fwC1ZX8Atm1/ALdlfwC4XX8AuS1/ALolfwC7PX8AvC1/AL0dfwC+FX8Av/UAAKP9fwASmACAFpgAgBqYAIAemACApiF+AKUpfgAimACAq6V+AKqlfgAmmACAKpgAgK+BfgCukX4ArbV+AKy1fgAumACAMpgAgDaYAIA6mACAPpgAgEKYAIBGmACASpgAgIA9AACBCQAAghkAAE6YAIBSmACAhLgBAL6wAQBWmACAqK0BAKnVAQCq1QEAqw0BAKwVAQCtGQEArgkBAK8JAQCGAAQAhwQBAFqYAIBemACAYpgAgGaYAIBqmACAbpgAgLjtAAC5hQAAuo0AALuFAAC8nQAAvYUAAL6NAAC/hQAAsHkBALF5AQCy7QAAs+UAALT9AAC15QAAtuUAALfVAACzXQIAcpgAgHaYAIB6mACAfpgAgLaZAgC1nQIAgpgAgLu9AgC6vQIAhpgAgIqYAIC/IQMAvjkDAL0xAwC8OQMAvigDAKMZAgCOmACAkpgAgKbdAgCWmACAmpgAgKXZAgCq+QIAq/kCAJ6YAICimACArn0DAK9lAwCsfQMArXUDAL7IBACmmACAqpgAgL7EBQCumACAspgAgLaYAIC6mACAgD0AAIEJAACCGQAAvpgAgMKYAICEOAMAypgAgM6YAIDveAIA0pgAgIZIBACHVAMA1pgAgNqYAIDemACA4pgAgOaYAIDqmACA7pgAgPKYAIDjVAIA9pgAgOFAAQD6mACA/pgAgOMkfwACmQCA4Zx8AAaZAIAKmQCADpkAgBKZAICEbAUAFpkAgBqZAIAemQCAIpkAgO8YfwAmmQCAKpkAgLPxAgAumQCAMpkAgDqZAIA+mQCAtukCALXhAgBCmQCAu3EBALppAQCHoAUAhswEAL85AQC+WQEAvVEBALxhAQDhQH8ARpkAgOM4fgCEwAQAgtkAAO8UAACApQAAgdkAAEqZAIDjwAAATpkAgOHUAQBSmQCAVpkAgO+EfgBamQCAqs0BAKvVAQBemQCAYpkAgK79AQCvnQEArMUBAK31AQBmmQCAo1UCAGqZAIBumQCApk0CAHKZAIB2mQCApUUCAMaYAIA2mQCAepkAgH6ZAICCmQCAhpkAgIqZAICOmQCAqJkGAKmZBgCq7QYAq/0GAKzlBgCt7QYAruUGAK/dBgCwpQYAsa0GALKlBgCzuQYAtK0GALVVBwC2UQcAt00HALh1BwC5fQcAunUHALtJBwC8WQcAvVkHAL5JBwC/RQcAs0UGAJKZAICWmQCAmpkAgJ6ZAIC2TQYAtU0GAKKZAIC7SQYAukEGAIYIAACHjAAAv7EHAL5JBgC9TQYAvFEGAIJdAACjAQYAgEUAAIFdAACmCQYAqpkAgK6ZAIClCQYAqgUGAKsNBgCymQCAtpkAgK4NBgCv9QcArBUGAK0JBgCoTQYAqVUGAKpVBgCriQYArLEGAK29BgCuqQYAr6kGAKaZAIC6mQCAvpkAgMKZAIDGmQCAypkAgM6ZAIDSmQCAuEkBALlJAQC6WQEAu1kBALxJAQC9SQEAvt0BAL/VAQCw3QYAsa0GALKlBgCzjQYAtJkGALWZBgC2jQYAt4UGALPdBgDWmQCA2pkAgN6ZAIDimQCAtj0GALU5BgDmmQCAu2kGALoZBgDqmQCA7pkAgL9dBgC+XQYAvVkGALxxBgDymQCAo5kGAPaZAID6mQCApnkGAP6ZAIACmgCApX0GAKpdBgCrLQYABpoAgAqaAICuGQYArxkGAKw1BgCtHQYAqNUCAKndAgCq4QIAq+ECAKw1AwCtPQMArjUDAK8tAwCAzQMAgQkAAIIZAAAOmgCAEpoAgIQYAgC+dAMAGpoAgLjpAwC56QMAuokDALuFAwC8nQMAvYEDAL6BAwC/tQMAsFUDALFdAwCyVQMAs+kDALT5AwC1+QMAtukDALfhAwCGIAwAhxADAB6aAIAimgCAJpoAgCqaAIAumgCA71wCADKaAIDhFAAANpoAgOOIAgC++AwAOpoAgD6aAIBCmgCAu/kDALrxAwC+gA0ARpoAgL9dAwC+XQMAvV0DALzhAwCzCQIASpoAgE6aAIBSmgCAVpoAgLbdAwC13QMAWpoAgKipBgCpqQYAqrkGAKu5BgCsqQYArakGAK4dBQCvFQUAXpoAgGKaAIBmmgCAapoAgG6aAIBymgCAdpoAgHqaAIC4GQUAuS0FALolBQC7yQUAvNkFAL3FBQC+zQUAv8UFALBtBQCxdQUAsnUFALNFBQC0XQUAtT0FALY1BQC3KQUA4fQGAOFUBwDjFAYA47wGAIEJAACAqQAAfpoAgII5AACE7A0AgpoAgIeIDACGDAwAipoAgI6aAIDvzAcA78QHAKMpAwCSmgCAlpoAgJqaAICemgCApv0CAKX9AgCimgCAq9kCAKrRAgCmmgCAqpoAgK99AgCufQIArX0CAKzBAgCoPQ4AqY0OAKqFDgCrnQ4ArIUOAK2NDgCuuQ4Ar7UOAIaaAICumgCAspoAgLaaAIC6mgCAvpoAgMKaAIDGmgCAuL0OALllDwC6bQ8Au2UPALx9DwC9ZQ8Avm0PAL9lDwCw1Q4Asd0OALLVDgCzoQ4AtJUOALWdDgC2lQ4At40OALMNDgDKmgCAzpoAgNKaAIDWmgCAtg0OALUNDgDamgCAuxkOALoRDgDemgCAFpoAgL9ZDgC+UQ4AvXUOALwBDgDimgCAo0kOAOaaAIDqmgCApkkOAO6aAIDymgCApUkOAKpVDgCrXQ4AhKQDAPaaAICuFQ4Arx0OAKxFDgCtMQ4AqLEOAKmxDgCqzQ4Aq8UOAKzdDgCtxQ4ArsUOAK/1DgCA7QEAgfEBAILxAQD6mgCAhpABAIe0AQD+mgCAApsAgLjFAQC5zQEAusUBALvdAQC8zQEAvf0BAL6ZAQC/lQEAsI0OALFBAQCyQQEAs0EBALRBAQC1QQEAtkEBALdBAQCzRQ4ABpsAgAqbAIAOmwCAEpsAgLZFDgC1VQ4AFpsAgLuFAQC6SQ4AGpsAgB6bAIC/hQEAvoUBAL2VAQC8lQEAIpsAgKMBDgAmmwCAKpsAgKYBDgAumwCAMpsAgKURDgCqDQ4Aq8EBADabAIA6mwCArsEBAK/BAQCs0QEArdEBAKgtAwCpPQMAqjUDAKuJAwCsmQMArZkDAK6JAwCvgQMAPpsAgEKbAIBGmwCASpsAgE6bAIBSmwCAVpsAgFqbAIC4rQMAuWUAALptAAC7ZQAAvH0AAL1lAAC+bQAAv2UAALDJAwCxyQMAsqkDALOlAwC0vQMAtaEDALahAwC3lQMAgL0AAIEJAACCGQAAXpsAgGKbAIC+2AMAapsAgG6bAICErAIAcpsAgIfoAwCGDAQAdpsAgHqbAIB+mwCAgpsAgLP9AwCGmwCAipsAgI6bAICSmwCAtlkDALVRAwCWmwCAu00DALpNAwCamwCAnpsAgL8lAwC+OQMAvTEDALw9AwCimwCAppsAgKqbAICumwCA71gPALKbAIC2mwCAupsAgOOQDgC+mwCA4bAPAMKbAIDGmwCAypsAgM6bAIDSmwCAgHUAAIF9AACCdQAAhBgFAO88AwDamwCAvhQFAN6bAIDj0AMA4psAgOFAAADmmwCAhtAEAIdYBQDqmwCA7psAgPKbAID2mwCA+psAgP6bAIACnACABpwAgAqcAIDvrA8AhOwEAOEQDgAOnACA41QBABKcAIAWnACAGpwAgB6cAICj/QIAIpwAgCacAIAqnACALpwAgKZZAgClUQIAMpwAgKtNAgCqTQIANpwAgDqcAICvJQIArjkCAK0xAgCsPQIAqJkGAKmZBgCqrQYAq70GAKylBgCtrQYArqUGAK/ZBgDWmwCAghEAAIEZAACAwQcAPpwAgEKcAIC+cAMARpwAgLhJBwC5SQcAul0HALtVBwC8TQcAvXEHAL51BwC/bQcAsKkGALGpBgCyuQYAs7EGALSZBgC1mQYAtnkHALd5BwC1NQYASpwAgE6cAIC2NQYAhjAAAIdcAwCzPQYAUpwAgL19BgC8dQYAv0UGAL5FBgBmmwCAVpwAgLt1BgC6dQYAo2UGAFqcAIBenACAYpwAgGacAICmbQYApW0GAGqcAICrLQYAqi0GAG6cAIBynACArx0GAK4dBgCtJQYArC0GAKhVBgCpWQYAqm0GAKthBgCsaQYArWkGAK6ZBgCvmQYAdpwAgHqcAIB+nACAgpwAgIacAICKnACAjpwAgJKcAIC4+QYAufkGALqNBgC7hQYAvJ0GAL2FBgC+hQYAv7UGALDpBgCx6QYAsvkGALP5BgC06QYAtd0GALbJBgC3yQYAs+UGAJacAICanACAnpwAgKKcAIC26QYAteEGAKacAIC7LQYAui0GAKqcAICunACAvxkGAL4tBgC9LQYAvC0GAIIVAACjoQYAgGEAAIFhAACmrQYAspwAgL6QAQClpQYAqmkGAKtpBgCEpAEAupwAgK5pBgCvXQYArGkGAK1pBgCohQIAqY0CAKqVAgCruQIArNUCAK3dAgCu1QIAr80CAIaAHACHZAMAvpwAgL5gAwDCnACAxpwAgMqcAIDOnACAuHUDALl9AwC6dQMAu8kDALzZAwC92QMAvskDAL/BAwCwvQIAsY0CALKFAgCzTQMAtFUDALVdAwC2VQMAt00DALMdAgDSnACAhAgDANacAIDanACAtl0CALVdAgDenACAu0kCALp5AgDinACA5pwAgL+ZAwC+kQMAvZkDALxRAgCwAAAAo1kCAOqcAIDunACAphkCAPKcAID2nACApRkCAKo9AgCrDQIA+pwAgP6cAICu1QMAr90DAKwVAgCt3QMAAp0AgAadAIAKnQCA76wGAA6dAIASnQCAFp0AgBqdAIC+6BwAHp0AgCKdAIAqnQCALp0AgOGABwAynQCA42AGAIBdAACBYQAAgmEAALN9AQA2nQCAtW0BALZlAQA6nQCAhiAdAIdYHQC6+QEAu/EBALzZAQC92QEAvrEBAL+xAQDvoAAAPp0AgEKdAIBGnQCASp0AgE6dAIBSnQCA71wBAIRsHADhzAYAVp0AgOMcBgDjSAAAWp0AgOEwAQBenQCAo/EBAGKdAICFABQAZp0AgGqdAICm6QEApeEBAG6dAICrfQEAqnUBAHKdAIB2nQCArz0BAK49AQCtVQEArFUBAKjtHQCpLR4AqjkeAKs5HgCsKR4ArSkeAK6dHgCvkR4AJp0AgHqdAIB+nQCAgp0AgIadAICC+QAAgfEAAID9AAC4qR4AuakeALpJHwC7SR8AvFkfAL1FHwC+TR8Av0UfALDxHgCx+R4AssEeALPBHgC0uR4AtbkeALatHgC3pR4AsBEfALERHwCyER8AsyUfALQlHwC1KR8Atl0fALdRHwC4cR8AuXkfALpBHwC7QR8AvJUAAL2dAAC+lQAAv40AAIqdAIC2nACAjp0AgJKdAICWnQCAmp0AgIb4AwCH0AAAqM0fAKnVHwCq0R8Aq70fAKytHwCtcR8ArnEfAK9xHwCzOR4Anp0AgKKdAICmnQCAqp0AgLaRHgC1RR4Arp0AgLu1HgC6tR4Asp0AgLadAIC/jR4AvoEeAL2RHgC8pR4Aup0AgKN9HgC+nQCAwp0AgKbVHgDGnQCAyp0AgKUBHgCq8R4Aq/EeAM6dAIDSnQCArsUeAK/JHgCs4R4A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gqIAgIaiAICKogCAjqIAgO9EBgCSogCA4dQGAJaiAIDjDAcAmqIAgJ6iAICiogCApqIAgLP1AQCqogCArqIAgLKiAIC2ogCAtkUBALXlAQC6ogCAuzEBALopAQC+ogCAwqIAgL8dAQC+HQEAvRkBALwlAQCoLT4AqTU+AKo9PgCrNT4ArC0+AK2FPgCuhT4Ar7k+AGaiAIDGogCAyqIAgM6iAICAGQAAgRkAAIIFAADSogCAuLk+ALm5PgC6ST8Au0k/ALxZPwC9WT8Avk0/AL9BPwCwrT4AsbU+ALKxPgCzjT4AtJk+ALWZPgC2iT4At4k+AKO1PgCEjAIA1qIAgNqiAIDeogCApgU+AKWlPgDiogCAq3E+AKppPgCGCAAAh2gDAK9dPgCuXT4ArVk+AKxlPgDmogCAs5E/AOqiAIDuogCAtlk/APKiAID2ogCAtbk/ALp1PwC7fT8A+qIAgP6iAIC+QT8Av0E/ALxZPwC9VT8AsJU+ALGdPgCyqT4As6U+ALShPgC1oT4AtqE+ALehPgC45T4Aue0+ALrlPgC7/T4AvO0+AL3dPgC+1T4AvxkBAAKjAIAGowCACqMAgA6jAIASowCA9qEAgBajAIAaowCAqF0+AKkhPgCqPT4AqzU+AKwVPgCt/T4ArvU+AK/tPgCj1T4AHqMAgCKjAIAmowCAKqMAgKYdPgCl/T4ALqMAgKs5PgCqMT4AMqMAgDajAICvBT4ArgU+AK0RPgCsHT4AgREAAIANAAA6owCAghkAAD6jAIBCowCAhJQBAL4QAACGQAcAhwABAEqjAIBOowCAUqMAgFajAIBaowCAXqMAgKiNAgCplQIAqpUCAKvNAgCs2QIArdkCAK7NAgCvxQIAYqMAgGajAIBqowCAbqMAgIwAAAByowCAdqMAgHqjAIC4HQMAucEDALrBAwC7wQMAvMEDAL3JAwC+8QMAv/EDALCJAgCxiQIAsikDALMpAwC0OQMAtTkDALYpAwC3JQMAsx0CAH6jAICCowCAhqMAgIqjAIC2WQIAtVECAI6jAIC7TQIAuk0CAJKjAICWowCAv/0DAL79AwC9/QMAvP0DAJqjAICeowCAoqMAgKajAIDhDD4AqqMAgOOoPwCuowCAgT0AAIAxAADvUD8Agh0AALKjAIC++AQAhhgFAIdMAwCEDAIA48wAALqjAIDhvAEA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tUkCACKmAIC7hQIAuoUCACamAIAqpgCAv4UCAL6FAgC9lQIAvJUCAIU8GgCjVQIALqYAgDKmAICmDQIANqYAgDqmAIClDQIAqsECAKvBAgA+pgCAQqYAgK7BAgCvwQIArNECAK3RAgCCGQAARqYAgIAZAACBGQAASqYAgE6mAIBSpgCAWqYAgL4ABABepgCAYqYAgGamAIBqpgCAbqYAgHKmAIB2pgCA7+gOAHqmAICG6AQAh1ADAH6mAICCpgCA74ACAIamAIDhlAEAiqYAgONYAQCOpgCA4wAOAJKmAIDhaA0AlqYAgKhxAgCpcQIAqnECAKupAgCsuQIArbkCAK6pAgCvqQIAhKwFAJqmAICepgCAoqYAgKamAICqpgCArqYAgLKmAIC4bQEAuQ0BALoFAQC7GQEAvAkBAL09AQC+NQEAv9kBALDZAgCx2QIAsm0BALNlAQC0fQEAtWUBALZlAQC3VQEA4WAPAOP0AADjHA4A4bwBALamAICCOQAAgTEAAIA9AAC6pgCAvigEAL6mAIDCpgCAvjwHAO8QAADv0A4AyqYAgIbgBACHyAQAzqYAgLO1AgDSpgCAtX0CALZ1AgDWpgCA2qYAgN6mAIC6UQIAu1ECALz1AQC9/QEAvvUBAL/tAQBWpgCAxqYAgKqxBQCrsQUArBUGAK0dBgCuFQYArw0GAOKmAIDmpgCA6qYAgKNVBQDupgCApZ0FAKaVBQDypgCAs+kGAPamAID6pgCA/qYAgAKnAIC24QYAtekGAAanAIC7sQYAuqEGAAqnAIAOpwCAv50GAL6RBgC9pQYAvKkGAKgdBgCpIQYAqiEGAKshBgCsIQYArSEGAK4hBgCvIQYAEqcAgBanAIAapwCAHqcAgCKnAIAmpwCAKqcAgC6nAIC45QcAue0HALrlBwC7/QcAvOUHAL3tBwC+5QcAv00HALAlBgCxNQYAsj0GALMxBgC0FQYAtRkGALYNBgC3AQYAo6kHAIIVAACBtQEAgLUBADKnAICmoQcApakHADanAICr8QcAquEHAISgAgA6pwCAr90HAK7RBwCt5QcArOkHAD6nAICzlQYAhugAAIcYAQC2tQYAQqcAgEanAIC1vQYAukkBALtVAQBKpwCATqcAgL45AQC/OQEAvEUBAL05AQCoPQYAqU0GAKpZBgCrUQYArHEGAK1xBgCuuQEAr7kBAISsAQBSpwCAVqcAgFqnAIBepwCAYqcAgGanAIBqpwCAuKkBALmpAQC6aQEAu2kBALx5AQC9eQEAvmkBAL9pAQCwyQEAsdUBALLVAQCzqQEAtLkBALW5AQC2qQEAt6EBAKPRBQBupwCAcqcAgHanAIB6pwCApvEFAKX5BQB+pwCAqxECAKoNAgCCpwCAhqcAgK99AgCufQIArX0CAKwBAgCKpwCAjqcAgJKnAICWpwCAgTEAAIANAACapwCAgjkAAJ6nAICipwCAviQDAKqnAICupwCAsqcAgIbYHACHTAMAtqcAgLqnAIC+pwCAhMAcAOMgAQDCpwCA4cgBAManAIDvMAIAyqcAgM6nAIDSpwCA1qcAgNqnAIDepwCA4qcAgLOVAwDmpwCA6qcAgO6nAIDypwCAtrkDALWxAwD2pwCAu1EDALpJAwD6pwCA/qcAgL/1AAC+SQMAvUEDALxJAwCoLQIAqUUCAKpdAgCrVQIArHkCAK15AgCuvQIAr7UCAL5oHQACqACABqgAgAqoAICAHQAAgQkAAIKpAAAOqACAuFEBALlZAQC6YQEAu2EBALwRAQC9EQEAvhEBAL8RAQCwzQIAsdUCALLdAgCz1QIAtM0CALVxAQC2cQEAt3EBAOFYBgDhVAcA47AAAOO8BgASqACAGqgAgIYYHACHVB0AHqgAgCKoAIAmqACAKqgAgL74HAAuqACA7/AGAO/gBgCjlQIAMqgAgDaoAIA6qACAPqgAgKa5AgClsQIAQqgAgKtRAgCqSQIARqgAgEqoAICv9QEArkkCAK1BAgCsSQIAqG0eAKl1HgCqfR4Aq40eAKyVHgCtnR4Aro0eAK+BHgAWqACATqgAgFKoAIBWqACAWqgAgF6oAIBiqACAZqgAgLiJHgC5iR4AupkeALuRHgC8uR4AvbkeAL59HwC/dR8AsMUeALHNHgCyxR4As90eALTFHgC1zR4AtsUeALe5HgCz9R4AaqgAgG6oAIByqACAdqgAgLYdHgC1HR4AeqgAgLsJHgC6AR4AfqgAgIKoAIC/CR4AvgEeAL0JHgC8ER4Agm0AAKOxHgCAVQAAgWUAAKZZHgCEmAMAv9ABAKVZHgCqRR4Aq00eAIYABACHmAEArkUeAK9NHgCsVR4ArU0eAIqoAICOqACAhCQAAJKoAICWqACAmqgAgKanAICGqACA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5qsAgIR0BwDqqwCA72gBAO6rAIDyqwCApXkCAKbNAQD2qwCAgCEAAIEhAACC3QcAo2kCAKzJAQCtyQEArqEBAK+hAQD6qwCA/qsAgKrpAQCr4QEAlqsAgAKsAIC+QAIABqwAgIYwAwCHMAMACqwAgA6sAICoOQcAqTkHAKoNBwCrHQcArAUHAK0NBwCuBQcAr3kHALAJBwCxCQcAshkHALMRBwC0OQcAtTkHALbdBwC3yQcAuPkHALn5BwC6zQcAu8EHALzFBwC9yQcAvrkHAL+xBwCzpQcAEqwAgBasAIAarACAHqwAgLatBwC1rQcAIqwAgLvtBwC67QcAJqwAgCqsAIC/3QcAvt0HAL3lBwC87QcALqwAgKPhBwAyrACANqwAgKbpBwA6rACAPqwAgKXpBwCqqQcAq6kHAEKsAIBGrACArpkHAK+ZBwCsqQcAraEHAEqsAIBOrACAUqwAgFasAIBarACAXqwAgGKsAIBmrACAgREAAIANAABqrACAghkAAG6sAIByrACAvuQBAHasAICG4AAAhxgBAHqsAIB+rACAgqwAgIasAICKrACA77AEAI6sAIDh1AYAkqwAgONcBACWrACAmqwAgJ6sAICirACAqJkBAKmZAQCqDQEAqwUBAKwdAQCtBQEArgUBAK81AQCEiAEApqwAgKqsAICurACAsqwAgLasAIC6rACAvqwAgLjBAAC5wQAAusEAALvBAAC8wQAAvcEAAL7BAAC/wQAAsE0BALElAQCyIQEAsyEBALQlAQC1LQEAthEBALcRAQDCrACAxqwAgLONAgDKrACAtZ0CAM6sAIDSrACAto0CANasAIDarACAu+kCALqBAgC9/QIAvP0CAL/hAgC+6QIA3qwAgKbVAgClxQIAvggDAKPVAgCCLQAAgRkAAIB5AACvuQIArrECAK2lAgCspQIAq7ECAKrZAgDirACA6qwAgO80AgDurACAhxgDAIYs/ADyrACA9qwAgPqsAID+rACAAq0AgAatAIAKrQCADq0AgOMAAQASrQCA4eABABatAIC6tQMAu70DABqtAIAerQCAvnkDAL95AwC8pQMAvXkDACarAICztQMAIq0AgCatAIC2kQMAKq0AgC6tAIC1pQMAqEkCAKlJAgCqWQIAq1kCAKxJAgCtdQIArnECAK9tAgC+aP0AvqT/ADKtAIA2rQCA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s1kGAA2yAIARsgCAFbIAgBmyAIC2ZQYAtXUGAB2yAIC7KQYAuiEGACGyAIAlsgCAvxUGAL4VBgC9JQYAvC0GAKOZBgCPmfwAKbIAgDGyAIA1sgCApqUGAKW1BgA5sgCAq+kGAKrhBgCGKB8Ah5wAAK/VBgCu1QYAreUGAKztBgCebQkAn30HAJwNCwCd7QkAmvENAJs5DQCY5fAAmQ0PAJbh8QCX6fEAlMX1AJUN8wCSHfcAk/H1AJD9+QCR7fkAgh3/AIMB+gA9sgCAQbIAgIYV9gCHOfYAhAn6AIXx9ACKwfAAiyXyAEWyAIBJsgCAjuEMAI8VDgCMNfIAjQHzAJKtDgCTgQgATbIAgFGyAICW6QQAl3UGAJR5CgCV8QoAmtEGAJvJAABVsgCAWbIAgIEdAwCAHQMAnFkCAIL1AwCrARAAqpUWAKmNFgCojRYAr5UuAK4BLACt/RIArJkSAKOlHgCipR4AoY0CAN2wAICnGRoAppUaAKUBGACknR8AXbIAgGGyAIBlsgCAabIAgG2yAIBxsgCAdbIAgHmyAICz5SoAsuUqALGtLwCw5S4AfbIAgIGyAIC1ASQAtBEqAKgpAwCpNQMAqj0DAKs1AwCsLQMArbUDAK69AwCvtQMAhbIAgImyAICNsgCAkbIAgIAdAACBCQAAgrkAAJWyAIC4TQIAuV0CALptAgC7CQIAvBkCAL0ZAgC+CQIAvwECALDNAwCx1QMAst0DALPVAwC0zQMAtXUCALZ9AgC3dQIAmbIAgITIHQChsgCAvgwfAKWyAICpsgCA70gGAO9YBwDhWAYA4ZgGAOOUAQDjAAYAhhAcAId8HQC+9B4ArbIAgLGyAIC2ZQMAtfUDALWyAICz5QMAubIAgL2yAIDBsgCAv+ECAL5ZAwC9UQMAvFkDALtBAwC6WQMAxbIAgMmyAIAtsgCAnbIAgM2yAIDRsgCA1bIAgNmyAIDdsgCA4bIAgKitHQCptR0AqrUdAKslHgCsPR4ArR0eAK4VHgCvdR4AsA0eALEtHgCyJR4As40eALSVHgC1nR4AtpUeALeNHgC4tR4Aub0eALq1HgC7nR4AvIUeAL1VHwC+XR8Av1UfALMdHQDlsgCA6bIAgO2yAIDxsgCAtr0eALWVHgD1sgCAu8keALrpHgD5sgCA/bIAgL95HgC+cR4AvXkeALzRHgCCKQAA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vPkBAL35AQC+mQEAv5UBALAFAQCxDQEAsgUBALMdAQC0BQEAtQ0BALYFAQC3+QEA4WQPAOGcDwDjFA4A49QPAJ22AIDhPA4AobYAgOPkAAC+rAQApbYAgKm2AIDvDAAArbYAgLG2AIDvYA4A77QPALW2AIC5tgCAhEQEALNhAgC9tgCAtWECALZhAgDBtgCAxbYAgMm2AIC6jQEAu4UBALydAQC9hQEAvo0BAL+FAQCjrQUAjbYAgM22AIDRtgCA1bYAgKatBQClrQUA2bYAgKtJBgCqQQYA3bYAgOG2AICvSQYArkEGAK1JBgCsUQYA5bYAgOm2AIDttgCA8bYAgIAdAACBCQAAgjkAAPW2AID5tgCA/bYAgIbIAACHIAMAAbcAgAW3AIAJtwCADbcAgKhtBgCptQcAqr0HAKsdBwCsCQcArTEHAK4xBwCvLQcAhKgDABG3AIAVtwCAGbcAgB23AIAhtwCAJbcAgCm3AIC4zQAAudUAALrVAAC75QAAvP0AAL2VAAC+nQAAv5UAALBVBwCxJQcAsi0HALM9BwC0LQcAtRUHALYdBwC39QAALbcAgOG8BgAxtwCA4/QFADW3AIA5twCAPbcAgEG3AIBFtwCASbcAgE23AIBRtwCAVbcAgFm3AIBdtwCA7+gEALN1BgCCLQAAgRUAAIAdAABhtwCAtvEGALXBBgBltwCAu6EGALrRBgBptwCAvmwBAL+RBgC+qQYAvakGALy5BgCjtQYAcbcAgIYoAACHTAEAdbcAgKYxBgClAQYAebcAgKthBgCqEQYAfbcAgIG3AICvUQYArmkGAK1pBgCseQYAhbcAgLO9AQCJtwCAjbcAgLZ5AQCRtwCAlbcAgLV5AQC6VQEAu10BAJm3AICdtwCAvvkAAL/lAAC8RQEAvf0AAKhxAgCpcQIAqnECAKtxAgCstQIArb0CAK61AgCvrQIAhOw8AKG3AICltwCAqbcAgK23AICxtwCAtbcAgLm3AIC4XQMAuWUDALptAwC7ZQMAvH0DAL1lAwC+bQMAv2UDALDVAgCx3QIAstUCALNtAwC0eQMAtWUDALZtAwC3ZQMAHbYAgL23AIDBtwCAo/UCAMW3AIClMQIApjECAMm3AIDNtwCA0bcAgKodAgCrFQIArA0CAK21AwCusQMAr60DAIBlAACBCQAAghkAANW3AIDZtwCA4bcAgL4QPADltwCAhsA8AIcgAwDptwCA7bcAgPG3AID1twCA+bcAgP23AICohQIAqZUCAKqVAgCrpQIArL0CAK3VAgCu0QIAr9ECAAG4AIAFuACACbgAgA24AIARuACAFbgAgBm4AIAduACAuHUBALl9AQC6dQEAu8kBALzZAQC9xQEAvsUBAL/9AQCwtQIAsb0CALKBAgCzgQIAtFUBALVdAQC2VQEAt00BAOGkBgAhuACA41AGAL6APACEHDwAvoA/ACW4AIApuACALbgAgDG4AIA1uACAObgAgD24AIBBuACA7+AGAEW4AICBfQAAgHEAAEm4AICCBQAAUbgAgFW4AIDvTAAAWbgAgOGQAQBduACA41gBAGG4AIBluACAabgAgIZYPwCH/DwAs509AN23AIBNuACAbbgAgHG4AIC21T0AtbU9AHW4AIC7+T0AuvE9AHm4AIB9uACAvxk+AL4RPgC91T0AvNU9AIG4AICj2T0AhbgAgIm4AICmkT0AjbgAgJG4AICl8T0AqrU9AKu9PQCVuACAmbgAgK5VPgCvXT4ArJE9AK2RPQCoVT4AqVk+AKphPgCrYT4ArGE+AK1hPgCuYT4Ar2E+AISoAwCduACAobgAgKW4AICpuACArbgAgLG4AIC1uACAuEU/ALldPwC6VT8Au20/ALx1PwC9fT8AvnU/AL9tPwCwwT8AscE/ALLBPwCzwT8AtME/ALXBPwC2wT8At8E/AIC5AQCBuQEAggUAALm4AIDhgD4AwbgAgOMoPQDFuACAhoAAAIcEAQDvCD0AybgAgM24AIDRuACA1bgAgNm4AICzqT8AvbgAgN24AIDhuACA5bgAgLahPwC1qT8A6bgAgLtFPgC6RT4A7bgAgPG4AIC/RT4AvkU+AL1VPgC8VT4Ao2k/APW4AID5uACA/bgAgAG5AICmYT8ApWk/AAW5AICrhT4AqoU+AAm5AIANuQCAr4U+AK6FPgCtlT4ArJU+ABG5AICzGT4AFbkAgBm5AIC2IT4AHbkAgCG5AIC1MT4AuvEBALv5AQAluQCAKbkAgL6xAQC/vQEAvNEBAL3RAQCo0T0AqdE9AKrVPQCr6T0ArP09AK3lPQCu7T0ArxECAID5AwCBzQMAgsUDAIQkAwC+AAQAMbkAgIesAwCGvAQAuBkCALktAgC6JQIAu+kCALz5AgC9+QIA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eLsAgOE0AgB8uwCA4zQBAIC7AIDjCAwAhLsAgOEIDQChoQEAiLsAgKMJBQCibQMApc0EAKQRBQCnHRkAph0ZAKmhHQCoORkAq+kcAKqpHQCtkREArAEQAK8BFACuUREAsfkVALDlFQCz6WkAsgFoALUBbAC0eWkAjLsAgJC7AICUuwCAmLsAgJy7AICguwCAowkDAKIZDQCh/Q0AoP0NAIIlJgCDBToApLsAgKi7AICGqTwAhzU+AIQdOgCFPTsAiok+AIslMgCsuwCAsLsAgI6xNACPMTYAjD0yAI0tMgCSJTYAk9EIAIREAwC+wAQAlhULAJdVDgCUXQoAlVUKAJplDgCbiQ4AtLsAgLi7AIC8uwCAwLsAgJyBAADEuwCAuLUCALm9AgC6tQIAuwkCALwZAgC9GQIAvgkCAL8BAgCwdQ0AsX0NALJJDQCzSQ0AtJUCALWdAgC2lQIAt40CAKi9DQCpUQ0AqlUNAKtpDQCsfQ0ArWUNAK5tDQCvEQ0AZLsAgILtAQCBHQAAgB0AAMi7AIDMuwCAfboAgL5wBQCznQwAhIwFANC7AIDYuwCA3LsAgLalDAC1tQwA4LsAgLv5DAC68QwAhigFAIcgBQC/GQMAvhEDAL3dDAC83QwA5LsAgKPZDADouwCA7LsAgKbhDADwuwCA9LsAgKXxDACqtQwAq70MAPi7AID8uwCArlUDAK9dAwCsmQwArZkMAAC8AIAEvACACLwAgAy8AIAQvACAFLwAgBi8AIDvvAEAHLwAgOF8DgAgvACA41ABACS8AIAovACALLwAgDC8AICzlQIANLwAgDi8AIA8vACAQLwAgLa9AgC1uQIASLwAgLs5AgC6YQIAhsgEAIesBAC/GQIAvhECAL0ZAgC8IQIAo1UFAILVBwCBxQcAgMUHAEy8AICmfQUApXkFAFC8AICr+QUAqqEFAFS8AIBYvACAr9kFAK7RBQCt2QUArOEFAFy8AICzWQcAYLwAgGS8AIC2HQcAaLwAgGy8AIC1FQcAugkHALsJBwBwvACAdLwAgL75BwC/+QcAvPkHAL35BwDUuwCARLwAgHi8AIB8vACAgLwAgIS8AICIvACAjLwAgKitBwCptQcAqrUHAKvtBwCs+QcArfkHAK7tBwCv5QcAsKkHALGpBwCySQcAs0kHALRZBwC1WQcAtkkHALdJBwC4eQcAuUUHALpBBwC7XQcAvEUHAL1NBwC+RQcAvzkHAKMdBgCQvACAlLwAgJi8AICcvACAplkGAKVRBgCgvACAq00GAKpNBgCkvACAqLwAgK+9BgCuvQYArb0GAKy9BgCAbQAAgQkAAIIZAACsvACAsLwAgISYAQC+kAEAtLwAgIYAHACHxAEAuLwAgLy8AIDAvACAxLwAgMi8AIDMvACAqF0GAKmVAQCqlQEAq6UBAKy9AQCt1QEArtEBAK/RAQDQvACA1LwAgNi8AIDcvACA4LwAgOS8AIDovACA7LwAgLhZAQC5WQEAus0AALvFAAC83QAAvcUAAL7FAAC/9QAAsLUBALG9AQCygQEAs4EBALR5AQC1eQEAtmkBALdpAQCzHQIA8LwAgPS8AIC+gBwA+LwAgLZVAgC1NQIA/LwAgLt5AgC6cQIAAL0AgAS9AIC/vQIAvr0CAL1VAgC8VQIACL0AgKNZAgAMvQCAEL0AgKYRAgAUvQCAGL0AgKVxAgCqNQIAqz0CABy9AIAgvQCArvkCAK/5AgCsEQIArRECACi9AIAsvQCAvgQdAL4AHgAwvQCANL0AgDi9AIA8vQCAgPkAAIHNAACCxQAAhCADAIawHACHlAMAQL0AgES9AIBIvQCATL0AgFC9AIBUvQCA42wCAFi9AIDhoAEAXL0AgO8UAgBgvQCAZL0AgGi9AIBsvQCAcL0AgHS9AIB4vQCA4fAGAOE0BgDjTAAA4xgGAHy9AICAvQCAhL0AgIi9AICAPQAAgQkAAIIZAACMvQCAkL0AgIS8HQDvmAAA7zgHALMxAgDRAAAAh9gdAIZsHACYvQCAtikCALUhAgCcvQCAu80CALrNAgCgvQCApL0AgL/NAgC+zQIAvc0CALzNAgCyXQYAs2UGALANBgCxVQYAtn0GALedBQC0fQYAtXUGALqNBQC7zQUAuKUFALmFBQC+xQUAv8kFALzVBQC9zQUAqL0AgKy9AICwvQCAtL0AgLi9AIC8vQCAwL0AgMS9AICqtQYAq70GAKgBBwCpvQYAroEGAK+NBgCsmQYArZUGAKNxHQDIvQCAzL0AgNC9AIDUvQCApmkdAKVhHQDYvQCAq40dAKqNHQDcvQCA4L0AgK+NHQCujR0ArY0dAKyNHQDkvQCAs9UeAOi9AIDsvQCAts0eAPC9AID0vQCAtcUeALqhHgC7oR4A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s5EOAPDFAID0xQCAtqUOAPjFAID8xQCAta0OALrhDgC74Q4AAMYAgATGAIC+6Q4Av9UOALz1DgC96Q4Ao6UKAAjGAIAMxgCAEMYAgBTGAICmzQ0Apc0NABjGAICrbQwAqm0MABzGAIAgxgCArz0MAK49DACtVQwArFUMAKgJDgCpCQ4Aqh0OAKsVDgCsIQ4ArSEOAK4hDgCvIQ4AJMYAgCjGAIAsxgCAMMYAgDTGAIA4xgCAPMYAgEDGAIC4zQEAudUBALrdAQC71QEAvM0BAL1RAQC+UQEAv1EBALAhDgCxIQ4AsiUOALM5DgC0KQ4AtRUOALYdDgC39QEARMYAgEjGAIBMxgCAo5kNAFDGAIClpQ0Apq0NAL7cAgCE7AMAWMYAgKrpDQCr6Q0ArP0NAK3hDQCu4Q0Ar90NAIBFAACBTQAAglkAAKNFAwBcxgCApUEDAKZBAwBgxgCAhsAEAIcAAwCqLQMAqyUDAKw9AwCtJQMAriUDAK8VAwCoWQIAqYUDAKqBAwCrgQMArIUDAK2NAwCusQMAr7EDAGTGAIBoxgCAbMYAgHDGAIB0xgCAeMYAgHzGAICAxgCAuGUDALltAwC6ZQMAu30DALxlAwC9bQMAvmUDAL/dAACwpQMAsa0DALKlAwCzvQMAtK0DALWdAwC2lQMAt10DALMJAgCExgCAiMYAgIzGAICQxgCAtg0CALUNAgCUxgCAu2kCALphAgCYxgCAnMYAgL9ZAgC+aQIAvWkCALxxAgCgxgCApMYAgKjGAICsxgCA4aABALDGAIDjaAMAtMYAgIEVAACAFQAA74wDAIIVAAC4xgCAvMYAgMDGAIC+cAUA4RgOAOGUDwDjOA8A49QPAISUAgDIxgCAzMYAgNDGAIDUxgCA2MYAgNzGAIDgxgCA5MYAgOjGAIDv7AEA7/gPAIZgBACHBAUAs5UBAITMBQC1dQEA7MYAgPDGAIC2dQEA9MYAgPjGAIC7UQEAulkBAL31AAC8SQEAv/UAAL71AACoJQYAqVUGAKpVBgCrrQYArLUGAK29BgCutQYAr60GAMTGAID8xgCAAMcAgATHAIAIxwCADMcAgBDHAIAUxwCAuGkHALlpBwC6CQcAuwkHALwZBwC9GQcAvg0HAL8BBwCw1QYAsd0GALLVBgCzaQcAtHkHALV5BwC2aQcAt2EHAKPdBgAYxwCAHMcAgCDHAIAkxwCApj0GAKU9BgAoxwCAqxkGAKoRBgAsxwCAMMcAgK+9BwCuvQcArb0HAKwBBgCAXQAAgW0AAIJlAACzUQcAvtgDALVxBwC2cQcANMcAgIbgAACHFAMAul0HALs5BwC8KQcAvRUHAL4dBwC/2QAAqJUGAKmdBgCqlQYAq60GAKy1BgCtvQYArrUGAK+tBgA4xwCAPMcAgEDHAIBExwCASMcAgEzHAIBQxwCAVMcAgLhxAQC5cQEAunEBALtxAQC81QEAvd0BAL7VAQC/zQEAsNUGALGxBgCysQYAs40GALSVBgC1UQEAtlEBALdRAQBYxwCAoxkGAFzHAIBgxwCApjkGAFTGAIBkxwCApTkGAKoVBgCrcQYAaMcAgGzHAICuVQYAr5EBAKxhBgCtXQYAcMcAgHTHAIB4xwCAfMcAgIDHAICExwCAiMcAgIzHAICQxwCAlMcAgJjHAICcxwCAgBkAAIEZAACCBQAAoMcAgISAAgC+gAMAhwwDAIasHADhaAYAqMcAgOOYBwCsxwCAsMcAgLTHAIDvrAcAuMcAgLzHAIDAxwCAxMcAgMjHAIDMxwCA0McAgNTHAICzZQMA2McAgLVlAwC2bQMA3McAgODHAIDkxwCAuukDALvlAwC8/QMAve0DAL7RAwC/0QMA6McAgOzHAIDwxwCA9McAgPjHAID8xwCAAMgAgATIAICogQMAqYEDAKqBAwCrgQMArIEDAK2BAwCugQMAr4EDALBBAwCxTQMAskUDALNVAwC0eQMAtXkDALYZAwC3GQMAuCkDALkpAwC6OQMAuzkDALwpAwC9KQMAvhkDAL8ZAwCBGQAAgBEAAKMhAgCCLQAApSECAAjIAIAMyACApikCABDIAIAYyACAq6ECAKqtAgCtqQIArLkCAK+VAgCulQIAhEwCAL5IHQCHZB0AhuwcAONAAwAcyACA4aABACDIAIDvnAMAJMgAgCjIAIAsyACAMMgAgDTIAIA4yACAPMgAgEDIAIBEyACASMgAgEzIAIBQyACAVMgAgFjIAIDvtAEAhKgdAOF8BgBcyACA43AGAGDIAIBkyACAaMgAgGzIAICz4QEAcMgAgHTIAIB4yACAfMgAgLblAQC19QEAgMgAgLuhAQC62QEAvuQcAIjIAIC/rQEAvqUBAL2xAQC8uQEAqBUeAKkZHgCqKR4AqykeAKw9HgCtJR4Ari0eAK8lHgAUyACAgvkfAIH5HwCA4R8AhMgAgIzIAICGHAAAh7ADALjBHgC5wR4AusEeALvBHgC8wR4AvcEeAL7BHgC/wR4AsF0eALElHgCyLR4AsyUeALQhHgC1KR4AthkeALcZHgCjoR4AkMgAgJTIAICYyACAnMgAgKalHgCltR4AoMgAgKvhHgCqmR4ApMgAgKjIAICv7R4AruUeAK3xHgCs+R4ArMgAgLOZHwCwyACAtMgAgLa9HwC4yACAvMgAgLW1HwC6mR8Au5kfAMDIAIDEyACAvnkfAL95HwC8eR8AvXkfAKglHgCpUR4AqlUeAKtpHgCseR4ArXkeAK5pHgCvaR4AyMgAgMzIAIDQyACA1MgAgNjIAIDcyACA4MgAgOTIAIC42R4Aue0eALr5HgC7+R4AvOkeAL3pHgC+nR4Av5UeALAZHgCxGR4AsukeALPpHgC0+R4AtfkeALbpHgC36R4Ao90eAIIpAACBFQAAgB0AAOjIAICm+R4ApfEeAOzIAICr3R4Aqt0eAKTHAIDwyACArz0eAK49HgCtPR4ArD0eAITIAgCzQQEAvgwBAPjIAIC2QQEA/MgAgADJAIC1UQEAuk0BALslAQCGSAAAh1ABAL4lAQC/LQEAvDEBAL0xAQAEyQCACMkAgIQEAwC+gAQADMkAgO+oHwAQyQCAFMkAgL8oMQDjdB8AGMkAgOE4HgAcyQCAIMkAgCTJAIAoyQCALMkAgDDJAICjzQIANMkAgKXdAgA4yQCAPMkAgKbNAgBAyQCARMkAgKupAgCqwQIArb0CAKy9AgCvoQIArqkCAKm1AgCoaR0AqwECAKoJAgCtAQIArBkCAK8xAgCuAQIAhGwFAEjJAIBMyQCAUMkAgFTJAICCnQEAgZ0BAICdAQC55QMAuOUDALvlAwC65QMAveUDALzlAwC/5QMAvuUDALEhAgCwSQIAsyUCALIlAgC1KQIAtCECALcVAgC2FQIAqM0CAKnRAgCq0QIAqw0BAKwVAQCtBQEArgEBAK8BAQBYyQCAXMkAgGDJAIBoyQCAvvgEAGzJAIBwyQCAdMkAgLgVAQC5HQEAuikBALspAQC89QEAvf0BAL71AQC/7QEAsEkBALFVAQCyXQEAs1UBALRNAQC1NQEAtj0BALcxAQCGoAUAh8gFAHjJAIDvvAAA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t6EFALa9BQC1vQUAtL0FAKu9BgCqvQYAqb0GAKi9BgCvfQYArn0GAK19BgCsfQYAJNMAgCjTAIAs0wCAMNMAgDTTAIA40wCAPNMAgEDTAICo7R0AqS0eAKoxHgCrMR4ArJUeAK2dHgCulR4Ar40eAATTAIBE0wCASNMAgEzTAIBQ0wCAVNMAgFjTAIBc0wCAuKkeALmpHgC6XR8Au1EfALxxHwC9cR8AvnUfAL9pHwCw/R4Asc0eALLFHgCzrR4AtLkeALW5HgC2rR4At6UeALO5HgBg0wCAZNMAgGjTAICU0gCAth0eALUdHgBs0wCAuwkeALo5HgBw0wCAhOADAL99HgC+fR4AvXkeALwRHgCCaQAAo/0eAIBFAACBUQAAplkeAL6cAwB00wCApVkeAKp9HgCrTR4AhkgAAIdsAACuOR4ArzkeAKxVHgCtPR4AqF0eAKltHgCqZR4Aq30eAKxlHgCtbR4ArmUeAK/9HgB40wCAfNMAgIDTAICE0wCAiNMAgIzTAICQ0wCAlNMAgLhpAQC5aQEAunkBALt5AQC8aQEAvWkBAL7dAQC/1QEAsIUeALGNHgCyhR4As50eALSFHgC1jR4AtoUeALdZAQCz7R4AmNMAgJzTAICg0wCApNMAgLbtHgC17R4AqNMAgLtJHgC6QR4ArNMAgLDTAIC/SR4AvkEeAL1JHgC8UR4AtNMAgKOpHgC40wCAvNMAgKapHgDA0wCAxNMAgKWpHgCqBR4Aqw0eAMjTAIDM0wCArgUeAK8NHgCsFR4ArQ0eAKghAwCpIQMAqiEDAKshAwCsIQMArSEDAK4hAwCvIQMA0NMAgNTTAIDY0wCAvmACANzTAIDg0wCA6NMAgOzTAIC4iQMAuYkDALqdAwC7lQMAvLkDAL25AwC+eQAAv3kAALDlAwCx7QMAsuUDALP9AwC07QMAtd0DALbVAwC3vQMAgKkAAIG1AACCvQAAs6UDAPDTAIC1pQMAtq0DAPTTAICE4AIA+NMAgLotAwC7JQMAvD0DAL0lAwC+JQMAvxUDAKPpAwD80wCAhmgEAIeAAwAA1ACApuEDAKXpAwAE1ACAq2kDAKphAwAI1ACADNQAgK9ZAwCuaQMArWkDAKxxAwAQ1ACAFNQAgBjUAIAc1ACAINQAgOE8HwAk1ACA40AeACjUAIAs1ACAMNQAgO+MHgA01ACAONQAgDzUAIBA1ACARNQAgIIlAACBEQAAgB0AAEjUAIDj5AMATNQAgOGsAQBQ1ACA77ADAIRkAgC+YAUAhtAEAIdEBQBY1ACAXNQAgGDUAIBk1ACAaNQAgGzUAIBw1ACAdNQAgHjUAIDvsAEAhKQFAOHcHgB81ACA4xABAIDUAICE1ACAiNQAgIzUAICzUQEAkNQAgJTUAICY1ACAnNQAgLYRAQC1fQEAoNQAgLsNAQC6DQEApNQAgKjUAIC//QAAvv0AAL39AAC8/QAAqDkGAKk5BgCqmQYAq5EGAKy1BgCt0QYArskGAK/BBgBU1ACArNQAgLDUAIC01ACAgA0AAIGxAACCsQAAuNQAgLhhBwC5YQcAumEHALt9BwC8ZQcAvW0HAL5lBwC/HQcAsIkGALGJBgCyaQcAs2kHALR5BwC1eQcAtmkHALdlBwCjEQYAvNQAgMDUAIC+gAMAxNQAgKZRBgClPQYAyNQAgKtNBgCqTQYAhggAAId8AwCvvQcArr0HAK29BwCsvQcAzNQAgNDUAICzSQcA1NQAgLVZBwDY1ACA3NQAgLZRBwDg1ACA5NMAgLtBBwC6dQcAvUUHALxFBwC/RQcAvkUHAKh5BgCpeQYAqokGAKuJBgCsmQYArZkGAK6JBgCviQYA5NQAgOjUAIDs1ACA8NQAgPTUAID41ACA/NQAgADVAIC4jQYAuZUGALqVBgC7pQYAvL0GAL1xAQC+cQEAv3EBALD5BgCxzQYAstkGALPZBgC0yQYAtckGALa9BgC3tQYAowEGAATVAIAI1QCADNUAgBDVAICmGQYApREGABTVAICrCQYAqj0GABjVAIAc1QCArw0GAK4NBgCtDQYArA0GACDVAIAk1QCAKNUAgCzVAICAGQAAgRkAAIIFAAAw1QCAhKwBAL6sAQCH6AAAhkwPADjVAIA81QCAQNUAgETVAIConQIAqcUCAKrNAgCrwQIArMUCAK3NAgCu+QIArz0DAEjVAIBM1QCAUNUAgFTVAIC+PAwAWNUAgFzVAIBg1QCAuMkDALnJAwC62QMAu9EDALz5AwC9+QMAvpkDAL+ZAwCwRQMAsU0DALJFAwCzXQMAtEUDALVNAwC2RQMAt/kDALNFAgBk1QCAaNUAgGzVAIBw1QCAtk0CALVNAgB01QCAu4kDALqBAwB41QCAfNUAgL+JAwC+gQMAvYkDALyRAwCA1QCAowECAITVAICI1QCApgkCAIzVAICQ1QCApQkCAKrFAwCrzQMAlNUAgJjVAICuxQMAr80DAKzVAwCtzQMAgO0BAIEVAACCEQAAhAACAJzVAIDhpAEAoNUAgOPsAACo1QCArNUAgLDVAIDvMAAAtNUAgLjVAIC81QCAwNUAgIbgDACH9AIAxNUAgMjVAIDM1QCA0NUAgO/MBgDU1QCA4bAHANjVAIDjEAYA3NUAgODVAIDk1QCA6NUAgOzVAIDw1QCA9NUAgPjVAID81QCAANYAgATWAIAI1gCA7+gBAIUYDwDhzAYADNYAgOMcBgCAKQAAgR0AAIIFAAAQ1gCAszkCAITMDQCGaA8Ah/wMAOHQ0gO28QEAtfkBABjWAIC72QEAutEBAL7kDAAc1gCAv30BAL59AQC9fQEAvMEBAKjxDQCp8Q0AqvENAKvxDQCsMQ4ArTEOAK4xDgCvMQ4ApNUAgBTWAIAg1gCAJNYAgCjWAIAs1gCAMNYAgDTWAIC46Q4AuekOALqJDgC7hQ4AvJ0OAL2BDgC+gQ4Av7UOALBVDgCxXQ4AslUOALPpDgC0+Q4AtfkOALbpDgC34Q4Ao3kNADjWAIA81gCAQNYAgETWAICmsQ4ApbkOAEjWAICrmQ4AqpEOAEzWAIBQ1gCArz0OAK49DgCtPQ4ArIEOAFTWAICz7Q8AWNYAgFzWAIC26Q8AYNYAgGTWAIC16Q8Auq0PALu1DwA01QCAaNYAgL6VDwC/mQ8AvK0PAL2hDwCoIQ4AqSEOAKohDgCrPQ4ArCUOAK0tDgCuJQ4Ar1UOAGzWAIBw1gCAdNYAgHjWAICAHQAAgQkAAIK9AAB81gCAuDkOALk5DgC6yQ4Au8kOALzZDgC92Q4AvskOAL/JDgCwLQ4AsTUOALI9DgCzMQ4AtBUOALUZDgC2CQ4AtwkOAKOpDgCA1gCAhIACAL6AAQCFAAQApq0OAKWtDgCI1gCAq/EOAKrpDgCGKAcAhxgAAK/dDgCu0Q4AreUOAKzpDgCM1gCAs+0BAJDWAICU1gCAtuUBAJjWAICc1gCAte0BALplAQC7bQEAoNYAgKTWAIC+bQEAv10BALx1AQC9bQEAqN0NAKnpDQCqIQIAqyECAKwhAgCtIQIAriECAK8hAgCo1gCArNYAgLDWAIC01gCAohECAKMRAgCgqQ4AodUCALiJAgC5iQIAup0CALuVAgC8vQIAvXUDAL59AwC/dQMAsOUCALHtAgCy5QIAs/0CALTtAgC13QIAttUCALe9AgCjqQIAj8UaALjWAIC81gCAwNYAgKahAgClqQIAxNYAgKspAgCqIQIAyNYAgMzWAICvGQIArikCAK0pAgCsMQIAniUOAJ/lDgCc6QoAnRUKAJpFFgCbRQoAmFkWAJlRFgCWcRIAl4ETAJRVEgCV7RIAktEeAJPZHgCQtRoAkVUeAISpHwCFJR8AhiUfAIexEwDQ1gCA1NYAgIJZGwCDURsAjEUSAI2lFwCOpRcAj7kXAIA5+wHY1gCAijkTAIutEwCUmQsAlaEPAJZpDwCX3Q8A3NYAgO+cDwCSyQsAk30LAJxFAwDjeA4A4NYAgOGYDADk1gCAhHgCAJqRAwCbXQMA4QQAAL6IBQDj3OoD6NYAgOzWAIDw1gCA7+wAAO+MDgDhcA4A4fwOAOMwAADjeA4AgSEAAIA5AADvtO0DgikAALMJAgD41gCAhmgEAIcsBQD81gCAtg0CALUNAgAA1wCAu8UBALrFAQAE1wCACNcAgL99AQC+fQEAvdUBALzVAQCE1gCA9NYAgAzXAIAQ1wCAFNcAgBjXAIAc1wCAINcAgKi9BQCp5QUAquEFAKvhBQCs5QUAre0FAK7RBQCv0QUAsGEGALFhBgCyYQYAs2EGALTZBgC12QYAtskGALfBBgC4yQYAuckGALp5BwC7eQcAvEUHAL0lBwC+EQcAvw0HAKNJBQAk1wCAKNcAgCzXAIAw1wCApk0FAKVNBQA01wCAq4UGAKqFBgA41wCAPNcAgK89BgCuPQYArZUGAKyVBgBA1wCARNcAgEjXAIBM1wCAUNcAgFTXAIBY1wCAXNcAgIA5AACBOQAAggUAAGDXAIC+uAMAhLgDAGjXAIBs1wCAqMUGAKnVBgCq1QYAq+UGAKz9BgCtHQEArhUBAK8NAQBk1wCAcNcAgIaIAQCHHAEAdNcAgHjXAIB81wCAgNcAgLjpAQC56QEAuokBALuJAQC8mQEAvZkBAL6JAQC/iQEAsHUBALF9AQCydQEAs+kBALT5AQC1+QEAtukBALfhAQCzXQYAhNcAgIjXAICM1wCAhLwBALadAQC1dQYAkNcAgLu5AQC6sQEAlNcAgJjXAIC/PQEAvj0BAL09AQC8oQEA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gNwAgLYVAgC1dQIAhNwAgLs5AgC6MQIAiNwAgIzcAIC/2QEAvtEBAL0VAgC8FQIAo50FADTcAICQ3ACAlNwAgJjcAICm1QUApbUFAJzcAICr+QUAqvEFAKDcAICk3ACArxkGAK4RBgCt1QUArNUFAIBRAACBWQAAgmEAALOVBgCo3ACAtXEHALZxBwCs3ACAhkADAIdUAwC67QcAu+UHALzlBwC97QcAvtEHAL/NBwCw3ACAtNwAgLjcAIC83ACAwNwAgMTcAIDvQAQAyNwAgOEwBwDM3ACA45QEANDcAIDU3ACA2NwAgNzcAIDg3ACAoxkGAOTcAIDo3ACA7NwAgPDcAICm/QcApf0HAPTcAICraQcAqmEHAPjcAID83ACAr0EHAK5dBwCtYQcArGkHAKjNBwCp0QcAqtEHAKstBgCsNQYArT0GAK41BgCvnQYAAN0AgATdAIAI3QCADN0AgIAZAACBGQAAggUAABDdAIC4iQYAuYkGALqZBgC7kQYAvLkGAL25BgC+UQEAv1EBALDlBgCx7QYAsv0GALP1BgC02QYAtcUGALbBBgC3uQYAqNEBAKnZAQCqCQEAqwkBAKwZAQCtGQEArgkBAK8JAQCEYAEAvnwBAIeoAACGjAEAGN0AgBzdAIAg3QCAJN0AgLgJAQC5CQEAuhkBALsRAQC8OQEAvTkBAL75AAC/+QAAsH0BALFBAQCyRQEAs10BALRFAQC1TQEAtkUBALc5AQAo3QCALN0AgDDdAICzjQIANN0AgLWdAgC2lQIAON0AgDzdAIBA3QCAurUCALuJAgC8nQIAvYUCAL6NAgC/hQIAps0CAETdAIBI3QCApcUCAEzdAICj1QIAUN0AgFTdAICu1QIAr90CAKzFAgCt3QIAqu0CAKvRAgCE9AMAWN0AgKgxAwCpMQMAqjEDAKsxAwCskQAArZEAAK6RAACvjQAAXN0AgGDdAIBk3QCAaN0AgGzdAIBw3QCAdN0AgHjdAIC4vQAAuWUAALptAAC7ZQAAvH0AAL1lAAC+bQAAv2UAALD9AACxxQAAss0AALOpAAC0uQAAtaUAALahAAC3oQAAgL0BAIEJAACCGQAAfN0AgIDdAIC+WAIAhxQdAIacHQCEbB0AxNsAgIjdAICM3QCAvrwcAJDdAICU3QCAmN0AgLP5AgCc3QCAoN0AgKTdAICo3QCA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gQkAAIIdAABM4gCA4cgGAFDiAIDjSAQAVOIAgKO1BgBY4gCAhigAAIdAAQBc4gCAptkGAKXRBgBg4gCAqyEGAKrNBgBk4gCAaOIAgK8pBgCuIQYArSkGAKw1BgBs4gCAs70BAHDiAIB04gCAtnkBAHjiAIB84gCAtXkBALpVAQC7XQEAgOIAgITiAIC++QAAv/kAALxFAQC9+QAAqHECAKlxAgCqcQIAq3ECAKy1AgCtvQIArrUCAK+tAgC+rDwAiOIAgIziAICQ4gCAlOIAgJjiAICc4gCAoOIAgLhpAwC5aQMAugkDALsJAwC8HQMAvQUDAL4NAwC/BQMAsNUCALHdAgCy1QIAs2kDALR5AwC1eQMAtmkDALdhAwCk4gCAqOIAgKziAICj9QIAsOIAgKUxAgCmMQIAtOIAgLjiAIC84gCAqh0CAKsVAgCsDQIArbEDAK6xAwCvsQMA7xgCAIIVAACBbQAAgG0AAMDiAIDI4gCAhvg8AIcYAwDM4gCA0OIAgNTiAIDY4gCA42wHAAThAIDhaAEA3OIAgKiFAgCplQIAqpUCAKulAgCsvQIArdUCAK7RAgCv0QIA4OIAgOTiAIDo4gCA7OIAgPDiAID04gCA+OIAgPziAIC4dQEAuX0BALp1AQC7zQEAvNUBAL3dAQC+yQEAv8EBALC1AgCxvQIAsoECALOBAgC0VQEAtV0BALZVAQC3TQEA4bQGAADjAIDj9AYABOMAgIQYPQAI4wCADOMAgBDjAIAU4wCAGOMAgBzjAIAg4wCAJOMAgCjjAIDvWAYALOMAgIF9AACAcQAAMOMAgIIFAAA44wCAPOMAgO+AAQC+VDwA4ZABAEDjAIDjfAYAROMAgEjjAIBM4wCAhtg8AIf0PACjnT0AxOIAgDTjAIBQ4wCAVOMAgKbVPQCltT0AWOMAgKv5PQCq8T0AXOMAgGDjAICvGT4ArhE+AK3VPQCs1T0AZOMAgLOhPgBo4wCAbOMAgLatPgBw4wCAdOMAgLWxPgC6ST8Au0k/AHjjAIB84wCAvkk/AL9JPwC8ST8AvUk/AKhVPgCpZT4Aqm0+AKtlPgCsfT4ArWk+AK65PwCvuT8AgOMAgITjAICI4wCAjOMAgJDjAICU4wCAmOMAgJzjAIC4VT8AuV0/ALpVPwC7bT8AvHU/AL19PwC+dT8Av20/ALDJPwCxyT8A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rjUCAK1VAgCsVQIAPOcAgEDnAIBE5wCASOcAgEznAIBQ5wCAVOcAgO/4AQC+bAQA4YAOAFjnAIDjFAEAXOcAgGDnAIBk5wCAaOcAgGznAIBw5wCAdOcAgLPdAQB45wCAtf0BALb1AQB85wCAgOcAgITnAIC6sQEAu4UBALydAQC9NQEAvj0BAL81AQCpBQYAqLkFAKsVBgCqHQYArT0GAKw9BgCvTQYArl0GACTnAICCHQAAgR0AAIAdAACI5wCAjOcAgJDnAICU5wCAuUEHALidBgC7QQcAukkHAL1FBwC8WQcAv0UHAL5FBwCxCQYAsD0GALOpBgCyAQYAtbkGALSxBgC3rQYAtrEGAKORBgCEjAIAhigAAIfAAwCY5wCAprkGAKWxBgCc5wCAq8kGAKr9BgCg5wCApOcAgK95BgCucQYArXkGAKzRBgCo5wCAs5kHAKznAICw5wCAtlEHALTnAIC45wCAtbEHALptBwC7dQcAvOcAgMDnAIC+WQcAv0UHALxtBwC9ZQcAxOcAgMjnAIDM5wCA0OcAgNTnAIDY5wCA3OcAgO+oBQDg5wCA4TQFAOTnAIDjdAUA6OcAgOznAIDw5wCA9OcAgKMdBgCCLQAAgRUAAIAdAAD45wCAptUGAKU1BgD85wCAq/EGAKrpBgAA6ACAhCgBAK/BBgCu3QYAreEGAKzpBgCoxQYAqdUGAKrVBgCr5QYArP0GAK0VBgCuHQYArxUGAL7sAQAI6ACAhggAAIcgAAAM6ACAEOgAgBToAIAY6ACAuH0GALkFBgC6DQYAuwUGALwBBgC9CQYAvjkGAL85BgCwbQYAsXUGALJ9BgCzdQYAtFkGALVFBgC2TQYAt0UGAKiRAgCpmQIAqqECAKuhAgCs0QIArd0CAK7VAgCvyQIAHOgAgCDoAIAk6ACAvyweACjoAIAs6ACAMOgAgDToAIC4VQMAuV0DALppAwC7ZQMAvGEDAL1hAwC+YQMAv2EDALC5AgCxjQIAsoUCALNtAwC0dQMAtX0DALZ1AwC3bQMAOOgAgDzoAICzIQIAQOgAgLVRAgCEiAMAROgAgLZVAgC05gCAvigcALtBAgC6dQIAvbEDALxZAgC/sQMAvrkDAKNpAgBI6ACATOgAgFDoAIBU6ACAph0CAKUZAgBY6ACAqwkCAKo9AgBc6ACAYOgAgK/5AwCu8QMA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hLkHAIW5BwCG2QcAh9kHAIjpBwCJ6QcAivkHAIv5BwCM6QcAjekHAI7RBwCP0QcAkLEHAJGxBwCSSQEAk0kBAJRZAQCVWQEAlkkBAJdJAQCYeQEAmXkBAJpJAQCbSQEAnFkBAJ1ZAQCeSQEAn0kBAKC5AQChuQEAoskBAKPJAQCk2QEApdkBAKbJAQCnyQEAqPkBAKn5AQCqyQEAq8kBAKzZAQCt2QEArskBAK/JAQCwuQEAsbkBALJJAQCzSQEAtFkBALVZAQC2SQEAt0kBALh5AQC5eQEAukkBALtJAQC8WQEAvVkBAL5JAQC/SQEA0jEAgNYxAIDaMQCAkjIAgNoyAIDmMgCA6jIAgO4yAIDyMgCA+jIAgP4yAIASMwCALjMAgDYzAIB2MwCAejMAgIIzAICGMwCAjjMAgJIzAIC2MwCAujMAgNYzAIDaMwCA3jMAgOIzAID2MwCAGjQAgB40AIAiNACARjQAgIY0AICKNACAqjQAgLo0AIDCNACA4jQAgAY1AIBKNQCAUjUAgGY1AIByNQCAejUAgII1AICGNQCAijUAgKI1AICmNQCAwjUAgMo1AIDSNQCA1jUAgOI1AIDqNQCA7jUAgPI1AID6NQCA/jUAgJ42AICyNgCAnoUMAOY2AIDqNgCA8jYAgIC5AwCBuQMAgskDAIPJAwCE2QMAhdkDAIbJAwCHyQMAiPkDAIn5AwCKyQMAi8kDAIzZAwCN2QMAjs0DAI/FAwCQvQMAkQEMAJJJDgCTSQ4AlFkOAJVZDgCWSQ4Al0kOAJh5DgCZeQ4AmkkOAJtJDgCcWQ4AnVkOAJ5JDgCfSQ4AoLkOAKG5DgCiyQ4Ao8kOAKTZDgCl2Q4ApskOAKfJDgCo+Q4AqfkOAKrJDgCryQ4ArNkOAK3ZDgCuyQ4Ar8kOALC5DgCxuQ4AskkOALNJDgC0WQ4AtVkOALZJDgC3SQ4AuHkOALl5DgC6SQ4Au0kOALxZDgC9WQ4AvkkOAL9JDgC8eQQAvXkEAL6JBAC/nQQAuHUEALl9BAC6aQQAu2kEALRxBAC1cQQAtnEEALdxBACwcQQAsXEEALJxBACzcQQArGkEAK1pBACucQQAr3EEAKhBBACpQQQAqkEEAKtBBACknQUApWEEAKZhBACnYQQAoJ0FAKGFBQCijQUAo4UFAJxdBQCdZQUAnm0FAJ9lBQCYXQUA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NAYAgEsGAIBoBgCAfwYAgJYGAIDdAwCA9gMAgA8EAIASBwCAQQgAgD4IAIA/BwCAOSQAgHIkAICjJACAyCQAgLkmAIDEJgCAyCYAgMwmAIDQJgCALygAgG4oAICWKACAmigAgL8oAIDHKACA4ygAgPUoAID5KACA/SgAgLrp0wAVKQCAMCkAgEspAIA9JACASiQAgFckAIBkJACAdiQAgIMkAICVJACApyQAgLckAIDMJACA1iQAgOQkAIDuJACA+yQAgAwlAIAWJQCAbyUAgHYlAIAkJQCAgBkDAIEZAwCCKQMAgykDAIQ5AwCFOQMAhikDAIcpAwCIGQMAiRkDAIppAwCLaQMAjHkDAI15AwCOaQMAj2kDAJAZAwCRGQMAkgEEAJMtAwCUNQMAlVUGAJZdBgCXVQYAmG0GAJl1BgCafQYAm3UGAJxtBgCdNQYAnj0GAJ81BgCgzQYAodUGAKLdBgCj1QYApPkDAKX5AwCm6QMAp+kDAKjZAwCp+QYAqikGAKspBgCsOQYArTkGAK7FAwCvPQMAsEUDALFNAwCyRQMAs10DALRFAwC1TQMAtkUDALd9AwC4SQMAuUkDALpZAwC7fQYAvGUGAL1tBgC+ZQYAgCUAgKkVDwCoAQ8Aq00PAKpNDwCtRQ8ArEUPAK+hDQCuqQ0AoXULAKBhCwCj7QsAoqkLAKXlCwCk5QsApzkPAKZZCAC5oQ0AuJkNALuhDQC6qQ0AvaENALy5DQAxJQCAvqkNALGhDQCw2Q0As6ENALKpDQC1oQ0AtLkNALehDQC2qQ0AOCUAgEglAIBbJQCAsiUAgLwlAICRJQCAoSUAgNAlAICB7Q0AgO0NAIP9DQCC/Q0Ahe0NAITtDQCH2Q0AhiEYAJlNDQCYTQ0Am1ENAJpdDQCdeQ0AnHUNAJ9pDQCecQ0AkYkNAJCBDQCTmQ0AkoENAJWJDQCUgQ0Al30NAJaBDQDgJACAICUAgI0lAIDMJQCA3iUAgAgmAIAtJgCAQiYAgPAlAID6JQCADCYAgBkmAIAxJgCATiYAgFgmAIB2JgCASiYAgGYmAIBuJgCAgCYAgIwmAICUJgCAoyYAgN4mAICcJgCAsiYAgKcmAIC9JgCA1CYAgOImAIABJwCAEScAgBsnAIBPJwCAkicAgOcnAIBPKQCAXSkAgGEpAIBlKQCA8CYAgC4nAIA+JwCASCcAgCMnAIBTJwCAYycAgH4nAIBwJwCAlicAgMInAIDJJwCApicAgNMnAIDdJwCAtCcAgBgoAIAKKACA6ycAgCUoAIDyJwCA/CcAgDMoAIBAKACASigAgFQoAIBeKACAcigAgH8oAICGKACAnigAgKUoAICyKACAyygAgNUoAIDnKACAASkAgA4pAIAZKQCAIykAgDQpAIA7KQCAUykAgMMDAIDmBACAhQUAgNgFAIATBgCAOQYAgFAGAIBtBgCAhAYAgJsGAIDjAwCA/AMAgBUEAIAoBACAOwQAgE4EAIBhBACAdAQAgIcEAICaBACAAAUAgA8FAIAeBQCALQUAgDwFAIBjCACAJAgAgMEGAID8BwCAHQkAgOMoEwAzCQCAKggAgC0IAIAxCACAJAcAgNwuAIDKMACA2S0AgLswAIBFMQCAJwkAgO/sEwAGCQCA3A0AgM8IAICDCACAMQcAgEwHAID8BgCACggAgJQIAIAqCQCACQkAgOANAIDsDQCA2wgAgJkIAIAVBwCAhggAgFUHAID/BgCApgcAgJEkAIDwDQCA4ggAgCcIAICcCACAWAgAgBUJAID0DQCA5QgAgBQIAICfCACA6AgAgBcIAIDJCACAoggAgOwIAIAbCACAzAgAgKYIAID3CACA/QgAgIgHAICKCACAWQcAgAMHAIA9CQCAQQkAgEkJAIA2CQCAGAkAgPgNAID0CACALQkAgAwJAIDkDQCA0ggAgI4IAIBdBwCAMAkAgA8JAIDoDQCA1QgAgJEIAIBgBwCArQgAgGMHAIDjSBIA4xQSAOP4EwDjuBMA4+wSAOOgEgDjbBIA43gSAO/ADQDv2A0A73QSAO9QEgDvqBIA79wSAO8oEwDvIBMA6QcAgMwGAIAOCACAEQgAgNgGAIDUBgCAIQgAgAcHAIBnCACADAcAgHYIAIA0BwCANwcAgKoIAIC2CACAuQgAgOPYEADjoBAA46AQAON0EQDjNBAA4wgQAOPkEADj9BAA77wQAO/gEADvzBAA7zgQAO8QEADvcBAA73AQAO9MEADjhBMA4+gTAOMwEADjEBAA42ATAONAEwDjpBMA47QTAO/IEwDvtBMA75gTAO98EwDvXBMA70wTAO8UEwDv6BAAgO08AIH1PACC/TwAg/U8AITtPACFFT0Ahh09AIcVPQCILT0AiTU9AIo9PQCLNT0AjC09AI0VPQCOHT0AjxU9AJBtPQCRdT0Akn09AJN1PQCUbT0AlRU9AJYdPQCXFT0AmC09AJk1PQCaPT0AmzU9AJwtPQCdFT0Anh09AJ8VPQCg7T0AofU9AKL9PQCj9T0ApO09AKUVPQCmHT0ApxU9AKgtPQCpNT0Aqj09AKs1PQCsLT0ArRU9AK4dPQCvFT0AsG09ALF1PQCyfT0As3U9ALRtPQC1FT0AthE9ALcRPQC4MT0AuTE9ALoxPQC7MT0AvBE9AL0RPQC+ET0AvxE9AIDxPACB/TwAgvU8AIMNPwCEFT8AhR0/AIYVPwCHDT8AiDU/AIk9PwCKNT8Aiw0/AIwVPwCNHT8AjhU/AI8NPwCQdT8AkX0/AJJ1PwCTDT8AlBU/AJUZPwCWCT8Alwk/AJg5PwCZOT8Amgk/AJsJPwCcGT8AnRk/AJ4JPwCfCT8AoPk/AKH5PwCiCT8Aowk/AKQZPwClGT8Apgk/AKcJPwCoOT8AqTk/AKoJPwCrCT8ArBk/AK0ZPwCuCT8Arwk/ALB5PwCxeT8Asgk/ALMJPwC0GT8AtRk/ALYJPwC3CT8AuDk/ALk5PwC6CT8Auwk/ALwZPwC9GT8Avgk/AL8JPwCA+TwAgfk8AIJJPQCDST0AhFk9AIVZPQCGST0Ah0k9AIh5PQCJeT0Aikk9AItJPQCMWT0AjVk9AI5JPQCPST0AkDk9AJE5PQCSAQQAk00GAJRVBgCVXQYAllUGAJdNBgCYdQYAmX0GAJp1BgCbTQYAnFUGAJ1dBgCeVQYAn00GAKC1BgChvQYAorUGAKPNBgCk1QYApd0GAKbVBgCnzQYAqPUGAKn9BgCq9QYAq80GAKzVBgCt3QYArtUGAK/NBgCwtQYAsb0GALK1BgCzTQYAtFUGALVdBgC2VQYAt00GALh1BgC5fQYAunUGALtNBgC8VQYAvV0GAL5VBgC/TQYArH0/AK2lPwCurT8Ar6U/AKh9PwCpZT8Aqm0/AKtlPwCkHT8ApUU/AKZNPwCnRT8AoB0/AKEFPwCiDT8AowU/ALydPwC9pT8Avq0/AL+lPwC4nT8AuYU/ALqNPwC7hT8AtN0/ALWlPwC2rT8At6U/ALDdPwCxxT8Ass0/ALPFPwCMZToAjW06AI5lOgCPfToAiEU6AIlNOgCKRToAi306AIRlOgCFbToAhmU6AId9OgCABToA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ACDZjgAg2Y7ZkQAg2Y8AINmP2ZEAINmQACDZkNmRACDZkQAg2ZHZsAAg2ZIAIOOCmQAg44KaACEAISEAIT8AIgAjACQAJQAmACcAKAAoMSkAKDEwKQAoMTEpACgxMikAKDEzKQAoMTQpACgxNSkAKDE2KQAoMTcpACgxOCkAKDE5KQAoMikAKDIwKQAoMykAKDQpACg1KQAoNikAKDcpACg4KQAoOSkAKEEpAChCKQAoQykAKEQpAChFKQAoRikAKEcpAChIKQAoSSkAKEopAChLKQAoTCkAKE0pAChOKQAoTykAKFApAChRKQAoUikAKFMpAChUKQAoVSkAKFYpAChXKQAoWCkAKFkpAChaKQAoYSkAKGIpAChjKQAoZCkAKGUpAChmKQAoZykAKGgpAChpKQAoaikAKGspAChsKQAobSkAKG4pAChvKQAocCkAKHEpAChyKQAocykAKHQpACh1KQAodikAKHcpACh4KQAoeSkAKHopACjhhIApACjhhIIpACjhhIMpACjhhIUpACjhhIYpACjhhIcpACjhhIkpACjhhIspACjhhIwpACjhhI4pACjhhI8pACjhhJApACjhhJEpACjhhJIpACjkuIApACjkuIMpACjkuIkpACjkuZ0pACjkuowpACjkupQpACjku6MpACjkvIEpACjkvJEpACjlhaspACjlha0pACjlirQpACjljYEpACjljZQpACjlkI0pACjlkbwpACjlm5spACjlnJ8pACjlraYpACjml6UpACjmnIgpACjmnIkpACjmnKgpACjmoKopACjmsLQpACjngaspACjnibkpACjnm6MpACjnpL4pACjnpZ0pACjnpa0pACjoh6opACjoh7MpACjosqEpACjos4cpACjph5EpACjqsIApACjrgpgpACjri6QpACjrnbwpACjrp4gpACjrsJQpACjsgqwpACjslYQpACjsmKTsoIQpACjsmKTtm4QpACjsnpApACjso7wpACjssKgpACjsubQpACjtg4ApACjtjIwpACjtlZgpACkAKgArACwALQAuAC4uAC4uLgAvADAAMCwAMC4AMOKBhDMAMOeCuQAxADEsADEuADEwADEwLgAxMOaXpQAxMOaciAAxMOeCuQAxMQAxMS4AMTHml6UAMTHmnIgAMTHngrkAMTIAMTIuADEy5pelADEy5pyIADEy54K5ADEzADEzLgAxM+aXpQAxM+eCuQAxNAAxNC4AMTTml6UAMTTngrkAMTUAMTUuADE15pelADE154K5ADE2ADE2LgAxNuaXpQAxNueCuQAxNwAxNy4AMTfml6UAMTfngrkAMTgAMTguADE45pelADE454K5ADE5ADE5LgAxOeaXpQAxOeeCuQAx4oGEADHigYQxMAAx4oGEMgAx4oGEMwAx4oGENAAx4oGENQAx4oGENgAx4oGENwAx4oGEOAAx4oGEOQAx5pelADHmnIgAMeeCuQAyADIsADIuADIwADIwLgAyMOaXpQAyMOeCuQAyMQAyMeaXpQAyMeeCuQAyMgAyMuaXpQAyMueCuQAyMwAyM+aXpQAyM+eCuQAyNAAyNOaXpQAyNOeCuQAyNQAyNeaXpQAyNgAyNuaXpQAyNwAyN+aXpQAyOAAyOOaXpQAyOQAyOeaXpQAy4oGEMwAy4oGENQAy5pelADLmnIgAMueCuQAzADMsADMuADMwADMw5pelADMxADMx5pelADMyADMzADM0ADM1ADM2ADM3ADM4ADM5ADPigYQ0ADPigYQ1ADPigYQ4ADPml6UAM+aciAAz54K5ADQANCwANC4ANDAANDEANDIANDMANDQANDUANDYANDcANDgANDkANOKBhDUANOaXpQA05pyIADTngrkANQA1LAA1LgA1MAA14oGENgA14oGEOAA15pelADXmnIgANeeCuQA2ADYsADYuADbml6UANuaciAA254K5ADcANywANy4AN+KBhDgAN+aXpQA35pyIADfngrkAOAA4LAA4LgA45pelADjmnIgAOOeCuQA5ADksADkuADnml6UAOeaciAA554K5ADoAOjo9ADsAPAA9AD09AD09PQA+AD8APyEAPz8AQABBAEFVAEHiiJVtAEIAQnEAQwBDRABDby4AQ+KIlWtnAEQAREoARFoARHoARMW9AETFvgBFAEYARkFYAEcAR0IAR0h6AEdQYQBHeQBIAEhQAEhWAEhnAEh6AEkASUkASUlJAElKAElVAElWAElYAEoASwBLQgBLSwBLTQBMAExKAExURABMagBMwrcATQBNQgBNQwBNRABNSHoATVBhAE1WAE1XAE3OqQBOAE5KAE5qAE5vAE8AUABQSABQUE0AUFBWAFBSAFBURQBQYQBRAFIAUnMAUwBTRABTTQBTUwBTdgBUAFRFTABUSHoAVE0AVQBWAFZJAFZJSQBWSUlJAFbiiJVtAFcAV0MAV1oAV2IAWABYSQBYSUkAWQBaAFsAXABdAF4AXwBgAGEAYS5tLgBhL2MAYS9zAGHKvgBiAGJhcgBjAGMvbwBjL3UAY2FsAGNjAGNkAGNtAGNtMgBjbTMAZABkQgBkYQBkbABkbQBkbTIAZG0zAGR6AGTFvgBlAGVWAGVyZwBmAGZmAGZmaQBmZmwAZmkAZmwAZm0AZwBnYWwAaABoUGEAaGEAaQBpaQBpaWkAaWoAaW4AaXYAaXgAagBrAGtBAGtIegBrUGEAa1YAa1cAa2NhbABrZwBrbABrbQBrbTIAa20zAGt0AGvOqQBsAGxqAGxtAGxuAGxvZwBseABswrcAbQBtMgBtMwBtQQBtVgBtVwBtYgBtZwBtaWwAbWwAbW0AbW0yAG1tMwBtb2wAbXMAbeKIlXMAbeKIlXMyAG4AbkEAbkYAblYAblcAbmoAbm0AbnMAbwBvVgBwAHAubS4AcEEAcEYAcFYAcFcAcGMAcHMAcQByAHJhZAByYWTiiJVzAHJhZOKIlXMyAHMAc3IAc3QAdAB1AHYAdmkAdmlpAHZpaWkAdwB4AHhpAHhpaQB5AHoAewB8AH0AwqIAwqMAwqUAwqYAwqwAwrBDAMKwRgDCtwDDgADDgQDDggDDgwDDhADDhQDDhgDDhwDDiADDiQDDigDDiwDDjADDjQDDjgDDjwDDkQDDkgDDkwDDlADDlQDDlgDDmQDDmgDDmwDDnADDnQDDoADDoQDDogDDowDDpADDpQDDpwDDqADDqQDDqgDDqwDDrADDrQDDrgDDrwDDsADDsQDDsgDDswDDtADDtQDDtgDDuQDDugDDuwDDvADDvQDDvwDEgADEgQDEggDEgwDEhADEhQDEhgDEhwDEiADEiQDEigDEiwDEjADEjQDEjgDEjwDEkgDEkwDElADElQDElgDElwDEmADEmQDEmgDEmwDEnADEnQDEngDEnwDEoADEoQDEogDEowDEpADEpQDEpgDEpwDEqADEqQDEqgDEqwDErADErQDErgDErwDEsADEsQDEtADEtQDEtgDEtwDEuQDEugDEuwDEvADEvQDEvgDFgwDFhADFhQDFhgDFhwDFiADFiwDFjADFjQDFjgDFjwDFkADFkQDFkwDFlADFlQDFlgDFlwDFmADFmQDFmgDFmwDFnADFnQDFngDFnwDFoADFoQDFogDFowDFpADFpQDFqADFqQDFqgDFqwDFrADFrQDFrgDFrwDFsADFsQDFsgDFswDFtADFtQDFtgDFtwDFuADFuQDFugDFuwDFvADFvQDFvgDGjgDGkADGoADGoQDGqwDGrwDGsADHjQDHjgDHjwDHkADHkQDHkgDHkwDHlADHlQDHlgDHlwDHmADHmQDHmgDHmwDHnADHngDHnwDHoADHoQDHogDHowDHpgDHpwDHqADHqQDHqgDHqwDHrADHrQDHrgDHrwDHsADHtADHtQDHuADHuQDHugDHuwDHvADHvQDHvgDHvwDIgADIgQDIggDIgwDIhADIhQDIhgDIhwDIiADIiQDIigDIiwDIjADIjQDIjgDIjwDIkADIkQDIkgDIkwDIlADIlQDIlgDIlwDImADImQDImgDImwDIngDInwDIogDIpgDIpwDIqADIqQDIqgDIqwDIrADIrQDIrgDIrwDIsADIsQDIsgDIswDItwDJkADJkQDJkgDJlADJlQDJmQDJmwDJnADJnwDJoQDJowDJpQDJpgDJqADJqQDJqgDJqwDJrQDJrwDJsADJsQDJsgDJswDJtADJtQDJuADJuQDJuwDKgQDKggDKgwDKiQDKigDKiwDKjADKkADKkQDKkgDKlQDKnQDKnwDKuQDKvG4AzIAAzIEAzIjMgQDMkwDOhgDOiADOiQDOigDOjADOjgDOjwDOkADOkQDOkgDOkwDOlADOlQDOlgDOlwDOmADOmQDOmgDOmwDOnADOnQDOngDOnwDOoADOoQDOowDOpADOpQDOpgDOpwDOqADOqQDOqgDOqwDOrADOrQDOrgDOrwDOsADOsQDOsgDOswDOtADOtQDOtgDOtwDOuADOuQDOugDOuwDOvADOvEEAzrxGAM68VgDOvFcAzrxnAM68bADOvG0AzrxzAM69AM6+AM6/AM+AAM+BAM+CAM+DAM+EAM+FAM+GAM+HAM+IAM+JAM+KAM+LAM+MAM+NAM+OAM+cAM+dANCAANCBANCDANCHANCMANCNANCOANCZANC5ANC9ANGKANGMANGQANGRANGTANGXANGcANGdANGeANG2ANG3ANOBANOCANOQANORANOSANOTANOWANOXANOaANObANOcANOdANOeANOfANOiANOjANOkANOlANOmANOnANOqANOrANOsANOtANOuANOvANOwANOxANOyANOzANO0ANO1ANO4ANO5ANWl1oIA1bTVpQDVtNWrANW01a0A1bTVtgDVvtW2ANeQANeQ1rcA15DWuADXkNa8ANeQ15wA15EA15HWvADXkda/ANeSANeS1rwA15MA15PWvADXlADXlNa8ANeV1rkA15XWvADXlta8ANeY1rwA15nWtADXmda8ANea1rwA15sA15vWvADXm9a/ANecANec1rwA150A157WvADXoNa8ANeh1rwA16IA16PWvADXpNa8ANek1r8A16bWvADXp9a8ANeoANeo1rwA16nWvADXqda814EA16nWvNeCANep14EA16nXggDXqgDXqta8ANey1rcA2KEA2KIA2KMA2KQA2KUA2KYA2KbYpwDYptisANim2K0A2KbYrgDYptixANim2LIA2KbZhQDYptmGANim2YcA2KbZiADYptmJANim2YoA2KbbhgDYptuHANim24gA2KbbkADYptuVANinANin2YPYqNixANin2YTZhNmHANin2YsA2KfZtADYqADYqNisANio2K0A2KjYrdmKANio2K4A2KjYrtmKANio2LEA2KjYsgDYqNmFANio2YYA2KjZhwDYqNmJANio2YoA2KkA2KoA2KrYrADYqtis2YUA2KrYrNmJANiq2KzZigDYqtitANiq2K3YrADYqtit2YUA2KrYrgDYqtiu2YUA2KrYrtmJANiq2K7ZigDYqtixANiq2LIA2KrZhQDYqtmF2KwA2KrZhditANiq2YXYrgDYqtmF2YkA2KrZhdmKANiq2YYA2KrZhwDYqtmJANiq2YoA2KsA2KvYrADYq9ixANir2LIA2KvZhQDYq9mGANir2YcA2KvZiQDYq9mKANisANis2K0A2KzYrdmJANis2K3ZigDYrNmEINis2YTYp9mE2YcA2KzZhQDYrNmF2K0A2KzZhdmJANis2YXZigDYrNmJANis2YoA2K0A2K3YrADYrdis2YoA2K3ZhQDYrdmF2YkA2K3ZhdmKANit2YkA2K3ZigDYrgDYrtisANiu2K0A2K7ZhQDYrtmJANiu2YoA2K8A2LAA2LDZsADYsQDYsdiz2YjZhADYsdmwANix24zYp9mEANiyANizANiz2KwA2LPYrNitANiz2KzZ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AOGEjQDhhI4A4YSPAOGEkADhhJEA4YSSAOGElADhhJUA4YSaAOGEnADhhJ0A4YSeAOGEoADhhKEA4YSiAOGEowDhhKcA4YSpAOGEqwDhhKwA4YStAOGErgDhhK8A4YSyAOGEtgDhhYAA4YWHAOGFjADhhZcA4YWYAOGFmQDhhaAA4YWhAOGFogDhhaMA4YWkAOGFpQDhhaYA4YWnAOGFqADhhakA4YWqAOGFqwDhhawA4YWtAOGFrgDhha8A4YWwAOGFsQDhhbIA4YWzAOGFtADhhbUA4YaEAOGGhQDhhogA4YaRAOGGkgDhhpQA4YaeAOGGoQDhhqoA4YasAOGGrQDhhrAA4YaxAOGGsgDhhrMA4Ya0AOGGtQDhh4cA4YeIAOGHjADhh44A4YeTAOGHlwDhh5kA4YedAOGHnwDhh7EA4YeyAOGshgDhrIgA4ayKAOGsjADhrI4A4aySAOGsuwDhrL0A4a2AAOGtgQDhrYMA4bSCAOG0lgDhtJcA4bScAOG0nQDhtKUA4bW7AOG2hQDhuIAA4biBAOG4ggDhuIMA4biEAOG4hQDhuIYA4biHAOG4iADhuIkA4biKAOG4iwDhuIwA4biNAOG4jgDhuI8A4biQAOG4kQDhuJIA4biTAOG4lADhuJUA4biWAOG4lwDhuJgA4biZAOG4mgDhuJsA4bicAOG4nQDhuJ4A4bifAOG4oADhuKEA4biiAOG4owDhuKQA4bilAOG4pgDhuKcA4bioAOG4qQDhuKoA4birAOG4rADhuK0A4biuAOG4rwDhuLAA4bixAOG4sgDhuLMA4bi0AOG4tQDhuLYA4bi3AOG4uADhuLkA4bi6AOG4uwDhuLwA4bi9AOG4vgDhuL8A4bmAAOG5gQDhuYIA4bmDAOG5hADhuYUA4bmGAOG5hwDhuYgA4bmJAOG5igDhuYsA4bmMAOG5jQDhuY4A4bmPAOG5kADhuZEA4bmSAOG5kwDhuZQA4bmVAOG5lgDhuZcA4bmYAOG5mQDhuZoA4bmbAOG5nADhuZ0A4bmeAOG5nwDhuaAA4bmhAOG5ogDhuaMA4bmkAOG5pQDhuaYA4bmnAOG5qADhuakA4bmqAOG5qwDhuawA4bmtAOG5rgDhua8A4bmwAOG5sQDhubIA4bmzAOG5tADhubUA4bm2AOG5twDhubgA4bm5AOG5ugDhubsA4bm8AOG5vQDhub4A4bm/AOG6gADhuoEA4bqCAOG6gwDhuoQA4bqFAOG6hgDhuocA4bqIAOG6iQDhuooA4bqLAOG6jADhuo0A4bqOAOG6jwDhupAA4bqRAOG6kgDhupMA4bqUAOG6lQDhupYA4bqXAOG6mADhupkA4bqgAOG6oQDhuqIA4bqjAOG6pADhuqUA4bqmAOG6pwDhuqgA4bqpAOG6qgDhuqsA4bqsAOG6rQDhuq4A4bqvAOG6sADhurEA4bqyAOG6swDhurQA4bq1AOG6tgDhurcA4bq4AOG6uQDhuroA4bq7AOG6vADhur0A4bq+AOG6vwDhu4AA4buBAOG7ggDhu4MA4buEAOG7hQDhu4YA4buHAOG7iADhu4kA4buKAOG7iwDhu4wA4buNAOG7jgDhu48A4buQAOG7kQDhu5IA4buTAOG7lADhu5UA4buWAOG7lwDhu5gA4buZAOG7mgDhu5sA4bucAOG7nQDhu54A4bufAOG7oADhu6EA4buiAOG7owDhu6QA4bulAOG7pgDhu6cA4buoAOG7qQDhu6oA4burAOG7rADhu60A4buuAOG7rwDhu7AA4buxAOG7sgDhu7MA4bu0AOG7tQDhu7YA4bu3AOG7uADhu7kA4byAAOG8gQDhvIIA4byDAOG8hADhvIUA4byGAOG8hwDhvIgA4byJAOG8igDhvIsA4byMAOG8jQDhvI4A4byPAOG8kADhvJEA4bySAOG8kwDhvJQA4byVAOG8mADhvJkA4byaAOG8mwDhvJwA4bydAOG8oADhvKEA4byiAOG8owDhvKQA4bylAOG8pgDhvKcA4byoAOG8qQDhvKoA4byrAOG8rADhvK0A4byuAOG8rwDhvLAA4byxAOG8sgDhvLMA4by0AOG8tQDhvLYA4by3AOG8uADhvLkA4by6AOG8uwDhvLwA4by9AOG8vgDhvL8A4b2AAOG9gQDhvYIA4b2DAOG9hADhvYUA4b2IAOG9iQDhvYoA4b2LAOG9jADhvY0A4b2QAOG9kQDhvZIA4b2TAOG9lADhvZUA4b2WAOG9lwDhvZkA4b2bAOG9nQDhvZ8A4b2gAOG9oQDhvaIA4b2jAOG9pADhvaUA4b2mAOG9pwDhvagA4b2pAOG9qgDhvasA4b2sAOG9rQDhva4A4b2vAOG9sADhvbIA4b20AOG9tgDhvbgA4b26AOG9vADhvoAA4b6BAOG+ggDhvoMA4b6EAOG+hQDhvoYA4b6HAOG+iADhvokA4b6KAOG+iwDhvowA4b6NAOG+jgDhvo8A4b6QAOG+kQDhvpIA4b6TAOG+lADhvpUA4b6WAOG+lwDhvpgA4b6ZAOG+mgDhvpsA4b6cAOG+nQDhvp4A4b6fAOG+oADhvqEA4b6iAOG+owDhvqQA4b6lAOG+pgDhvqcA4b6oAOG+qQDhvqoA4b6rAOG+rADhvq0A4b6uAOG+rwDhvrAA4b6xAOG+sgDhvrMA4b60AOG+tgDhvrcA4b64AOG+uQDhvroA4b68AOG/ggDhv4MA4b+EAOG/hgDhv4cA4b+IAOG/igDhv4wA4b+QAOG/kQDhv5IA4b+WAOG/lwDhv5gA4b+ZAOG/mgDhv6AA4b+hAOG/ogDhv6QA4b+lAOG/pgDhv6cA4b+oAOG/qQDhv6oA4b+sAOG/sgDhv7MA4b+0AOG/tgDhv7cA4b+4AOG/ugDhv7wA4oCQAOKAkwDigJQA4oCy4oCyAOKAsuKAsuKAsgDigLLigLLigLLigLIA4oC14oC1AOKAteKAteKAtQDigqkA4oaQAOKGkQDihpIA4oaTAOKGmgDihpsA4oauAOKHjQDih44A4oePAOKIggDiiIQA4oiHAOKIiQDiiIwA4oiRAOKIkgDiiKQA4oimAOKIq+KIqwDiiKviiKviiKsA4oir4oir4oir4oirAOKIruKIrgDiiK7iiK7iiK4A4omBAOKJhADiiYcA4omJAOKJoADiiaIA4omtAOKJrgDiia8A4omwAOKJsQDiibQA4om1AOKJuADiibkA4oqAAOKKgQDiioQA4oqFAOKKiADiiokA4oqsAOKKrQDiiq4A4oqvAOKLoADii6EA4ouiAOKLowDii6oA4ourAOKLrADii60A4pSCAOKWoADil4sA4qaFAOKmhgDiq53MuADitaEA44CBAOOAggDjgIgA44CJAOOAigDjgIsA44CMAOOAjQDjgI4A44CPAOOAkADjgJEA44CSAOOAlADjgJRT44CVAOOAlOS4ieOAlQDjgJTkuozjgJUA44CU5Yud44CVAOOAlOWuieOAlQDjgJTmiZPjgJUA44CU5pWX44CVAOOAlOacrOOAlQDjgJTngrnjgJUA44CU55uX44CVAOOAlQDjgJYA44CXAOOBjADjgY4A44GQAOOBkgDjgZQA44GWAOOBmADjgZoA44GcAOOBngDjgaAA44GiAOOBpQDjgacA44GpAOOBsADjgbEA44GzAOOBtADjgbYA44G3AOOBuQDjgboA44G744GLAOOBvADjgb0A44KI44KKAOOClADjgpkA44KaAOOCngDjgqEA44KiAOOCouODkeODvOODiADjgqLjg6vjg5XjgqEA44Ki44Oz44Oa44KiAOOCouODvOODqwDjgqMA44KkAOOCpOODi+ODs+OCsADjgqTjg7Pjg4EA44KlAOOCpgDjgqbjgqnjg7MA44KnAOOCqADjgqjjgrnjgq/jg7zjg4kA44Ko44O844Kr44O8AOOCqQDjgqoA44Kq44Oz44K5AOOCquODvOODoADjgqsA44Kr44Kk44OqAOOCq+ODqeODg+ODiADjgqvjg63jg6rjg7wA44KsAOOCrOODreODswDjgqzjg7Pjg54A44KtAOOCreODpeODquODvADjgq3jg60A44Kt44Ot44Kw44Op44OgAOOCreODreODoeODvOODiOODqwDjgq3jg63jg6/jg4Pjg4gA44KuAOOCruOCrADjgq7jg4vjg7wA44Ku44Or44OA44O8AOOCrwDjgq/jg6vjgrzjgqTjg60A44Kv44Ot44O844ONAOOCsADjgrDjg6njg6AA44Kw44Op44Og44OI44OzAOOCsQDjgrHjg7zjgrkA44KyAOOCswDjgrPjgrMA44Kz44OIAOOCs+ODq+ODigDjgrPjg7zjg50A44K0AOOCtQDjgrXjgqTjgq/jg6sA44K144Oz44OB44O844OgAOOCtgDjgrcA44K344Oq44Oz44KwAOOCuADjgrkA44K6AOOCuwDjgrvjg7Pjg4EA44K744Oz44OIAOOCvADjgr0A44K+AOOCvwDjg4AA44OA44O844K5AOODgQDjg4IA44ODAOODhADjg4UA44OGAOODhwDjg4fjgrcA44OIAOODiOODswDjg4kA44OJ44OrAOODigDjg4rjg44A44OLAOODjADjg40A44OOAOODjuODg+ODiADjg48A44OP44Kk44OEAOODkADjg5Djg7zjg6zjg6sA44ORAOODkeODvOOCu+ODs+ODiADjg5Hjg7zjg4QA44OSAOODkwDjg5Pjg6sA44OUAOODlOOCouOCueODiOODqwDjg5Tjgq/jg6sA44OU44KzAOODlQDjg5XjgqHjg6njg4Pjg4kA44OV44Kj44O844OIAOODleODqeODswDjg5YA44OW44OD44K344Kn44OrAOODlwDjg5gA44OY44Kv44K/44O844OrAOODmOODq+ODhADjg5kA44OZ44O844K/AOODmgDjg5rjgr0A44Oa44OL44OSAOODmuODs+OCuQDjg5rjg7zjgrgA44ObAOODm+ODswDjg5vjg7zjg6sA44Ob44O844OzAOODnADjg5zjg6vjg4gA44OdAOODneOCpOODs+ODiADjg53jg7Pjg4kA44OeAOODnuOCpOOCr+ODrQDjg57jgqTjg6sA44Oe44OD44OPAOODnuODq+OCrwDjg57jg7Pjgrfjg6fjg7MA44OfAOODn+OCr+ODreODswDjg5/jg6oA44Of44Oq44OQ44O844OrAOODoADjg6EA44Oh44KsAOODoeOCrOODiOODswDjg6Hjg7zjg4jjg6sA44OiAOODowDjg6QA44Ok44O844OJAOODpOODvOODqwDjg6UA44OmAOODpuOCouODswDjg6cA44OoAOODqQDjg6oA44Oq44OD44OI44OrAOODquODqQDjg6sA44Or44OU44O8AOODq+ODvOODluODqwDjg6wA44Os44OgAOODrOODs+ODiOOCsuODswDjg60A44OvAOODr+ODg+ODiADjg7AA44OxAOODsgDjg7MA44O0AOODtwDjg7gA44O5AOODugDjg7sA44O8AOODvgDjkp4A45K5AOOSuwDjk58A45SVAOObrgDjm7wA456BAOOgrwDjoaIA46G8AOOjhwDjo6MA46ScAOOkugDjqK4A46msAOOrpADjrIgA46yZAOOtiQDjrp0A47CYAOOxjgDjtLMA47aWAOO6rADjurgA47ybAOO/vADkgIgA5ICYAOSAuQDkgYYA5IKWAOSDowDkhK8A5IiCAOSIpwDkiqAA5IyBAOSMtADkjZkA5I+VAOSPmQDkkIsA5JGrAOSUqwDklZ0A5JWhAOSVqwDkl5cA5Je5AOSYtQDkmr4A5JuHAOSmlQDkp6YA5KmuAOSptgDkqrIA5KyzAOSvjgDks44A5LOtAOSzuADktZYA5LiAAOS4gQDkuIMA5LiJAOS4igDkuIsA5LiNAOS4mQDkuKYA5Lio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jQDmr5QA5q+bAOawjwDmsJQA5rC0AOaxjgDmsacA5rKIAOayvwDms4wA5rONAOazpQDms6gA5rSWAOa0mwDmtJ4A5rS0AOa0vgDmtYEA5rWpAOa1qgDmtbcA5rW4AOa2hQDmt4sA5reaAOa3qgDmt7kA5riaAOa4rwDmua4A5rqAAOa6nADmuroA5ruHAOa7iwDmu5EA5rubAOa8jwDmvJQA5ryiAOa8owDmva4A5r+GAOa/qwDmv74A54CbAOeAngDngLkA54GKAOeBqwDngbAA54G3AOeBvQDngpkA54KtAOeDiADng5kA54ShAOeFhQDnhYkA54WuAOeGnADnh44A54eQAOeIkADniJsA54ioAOeIqgDniKsA54i1AOeItgDniLsA54i/AOeJhwDniZAA54mZAOeJmwDniaIA54m5AOeKgADnipUA54qsAOeKrwDni4AA54u8AOeMqgDnjbUA5426AOeOhADnjocA546JAOeOiwDnjqUA546yAOePngDnkIYA55CJAOeQogDnkYcA55GcAOeRqQDnkbEA55KFAOeSiQDnkpgA55OKAOeTnADnk6YA55SGAOeUmADnlJ8A55SkAOeUqADnlLAA55SyAOeUswDnlLcA55S7AOeUvgDnlZkA55WlAOeVsADnlosA55aSAOeXogDnmJAA55idAOeYnwDnmYIA55mpAOeZtgDnmb0A55quAOeavwDnm4oA55ubAOebowDnm6cA55uuAOebtADnnIEA55yeAOecnwDnnYAA552KAOeeiwDnnqcA55+bAOefogDnn7MA56GOAOehqwDnoowA56KRAOejigDno4wA56O7AOekqgDnpLoA56S8AOekvgDnpYgA56WJAOelkADnpZYA56WdAOelngDnpaUA56W/AOemgQDnpo0A56aOAOemjwDnpq4A56a4AOemvgDnp4oA56eYAOenqwDnqJwA56mAAOepigDnqY8A56m0AOepugDnqoEA56qxAOeriwDnq64A56u5AOesoADnro8A56+AAOevhgDnr4kA57C+AOexoADnsbMA57G7AOeykgDnsr4A57OSAOezlgDns6MA57OnAOezqADns7gA57SAAOe0kADntKIA57SvAOe1ggDntZsA57WjAOe2oADntr4A57eHAOe3tADnuIIA57iJAOe4twDnuYEA57mFAOe8tgDnvL4A572RAOe9sgDnvbkA5726AOe+hQDnvooA576VAOe+mgDnvr0A57+6AOiAgQDogIUA6ICMAOiAkgDogLMA6IGGAOiBoADoga8A6IGwAOiBvgDogb8A6IKJAOiCiwDogq0A6IKyAOiEgwDohL4A6IeYAOiHowDoh6gA6IeqAOiHrQDoh7MA6Ie8AOiIgQDoiIQA6IiMAOiImADoiJsA6IifAOiJrgDoia8A6ImyAOiJuADoibkA6IqLAOiKkQDoip0A6IqxAOiKswDoir0A6IulAOiLpgDojJ0A6IyjAOiMtgDojZIA6I2TAOiNowDojq0A6I69AOiPiQDoj4oA6I+MAOiPnADoj6cA6I+vAOiPsQDokL0A6JGJAOiRlwDok64A6JOxAOiTswDok7wA6JSWAOiVpADol40A6Je6AOiYhgDomJIA6JitAOiYvwDomY0A6JmQAOiZnADomacA6JmpAOiZqwDomogA6JqpAOibogDonI4A6JyoAOidqwDonbkA6J6GAOieugDon6EA6KCBAOignwDooYAA6KGMAOihoADooaMA6KOCAOijjwDoo5cA6KOeAOijoQDoo7gA6KO6AOikkADopYEA6KWkAOilvgDopoYA6KaLAOimlgDop5IA6KejAOiogADoqqAA6KqqAOiqvwDoq4sA6KuSAOirlgDoq60A6Ku4AOirvgDorIEA6Ky5AOitmADoroAA6K6KAOiwtwDosYYA6LGIAOixlQDosbgA6LKdAOiyoQDosqkA6LKrAOizgQDos4IA6LOHAOiziADos5MA6LSIAOi0mwDotaQA6LWwAOi1twDotrMA6La8AOi3iwDot68A6LewAOi6qwDou4oA6LuUAOi8pgDovKoA6Ly4AOi8uwDovaIA6L6bAOi+ngDovrAA6L61AOi+tgDpgKMA6YC4AOmBigDpgakA6YGyAOmBvADpgo8A6YKRAOmClADpg44A6YOeAOmDsQDpg70A6YSRAOmEmwDphYkA6YWqAOmGmQDphrQA6YeGAOmHjADph48A6YeRAOmItADpiLgA6Ym2AOmJvADpi5cA6YuYAOmMhADpjYoA6Y+5AOmQlQDplbcA6ZaAAOmWiwDplq0A6Za3AOmYnADpmK4A6ZmLAOmZjQDpmbUA6Zm4AOmZvADpmoYA6ZqjAOmatgDpmrcA6Zq4AOmauQDpm4MA6ZuiAOmbowDpm6gA6Zu2AOmbtwDpnKMA6ZyyAOmdiADpnZEA6Z2WAOmdngDpnaIA6Z2pAOmfiwDpn5sA6Z+gAOmfrQDpn7MA6Z+/AOmggQDpoIUA6aCLAOmgmADpoKkA6aC7AOmhngDpoqgA6aObAOmjnwDpo6IA6aOvAOmjvADppKgA6aSpAOmmlgDpppkA6aanAOmmrADpp4IA6aexAOmnvgDpqaoA6aqoAOmrmADpq58A6aySAOmspQDprK8A6ayyAOmsvADprZoA6a2vAOmxgADpsZcA6bOlAOmzvQDptacA6ba0AOm3ugDpuJ4A6bm1AOm5vwDpupcA6bqfAOm6pQDpursA6buDAOm7jQDpu44A6buRAOm7uQDpu70A6bu+AOm8hQDpvI4A6byPAOm8kwDpvJYA6bygAOm8uwDpvYMA6b2KAOm9kgDpvo0A6b6OAOm+nADpvp8A6b6gAOqcpwDqna8A6qy3AOqtkgDqsIAA6rCBAOqwggDqsIMA6rCEAOqwhQDqsIYA6rCHAOqwiADqsIkA6rCKAOqwiwDqsIwA6rCNAOqwjgDqsI8A6rCQAOqwkQDqsJIA6rCTAOqwlADqsJUA6rCWAOqwlwDqsJgA6rCZAOqwmgDqsJsA6rCcAOqwnQDqsJ4A6rCfAOqwoADqsKEA6rCiAOqwowDqsKQA6rClAOqwpgDqsKcA6rCoAOqwqQDqsKoA6rCrAOqwrADqsK0A6rCuAOqwrwDqsLAA6rCxAOqwsgDqsLMA6rC0AOqwtQDqsLYA6rC3AOqwuADqsLkA6rC6AOqwuwDqsLwA6rC9AOqwvgDqsL8A6rGAAOqxgQDqsYIA6rGDAOqxhADqsYUA6rGGAOqxhwDqsYgA6rGJAOqxigDqsYsA6rGMAOqxjQDqsY4A6rGPAOqxkADqsZEA6rGSAOqxkwDqsZQA6rGVAOqxlgDqsZcA6rGYAOqxmQDqsZoA6rGbAOqxnADqsZ0A6rGeAOqxnwDqsaAA6rGhAOqxogDqsaMA6rGkAOqxpQDqsaYA6rGnAOqxqADqsakA6rGqAOqxqwDqsawA6rGtAOqxrgDqsa8A6rGwAOqxsQDqsbIA6rGzAOqxtADqsbUA6rG2AOqxtwDqsbgA6rG5AOqxugDqsbsA6rG8AOqxvQDqsb4A6rG/AOqygADqsoEA6rKCAOqygwDqsoQA6rKFAOqyhgDqsocA6rKIAOqyiQDqsooA6rKLAOqyjADqso0A6rKOAOqyjwDqspAA6rKRAOqykgDqspMA6rKUAOqylQDqspYA6rKXAOqymADqspkA6rKaAOqymwDqspwA6rKdAOqyngDqsp8A6rKgAOqyoQDqsqIA6rKjAOqypADqsqUA6rKmAOqypwDqsqgA6rKpAOqyqgDqsqsA6rKsAOqyrQDqsq4A6rKvAOqysADqsrEA6rKyAOqyswDqsrQA6rK1AOqytgDqsrcA6rK4AOqyuQDqsroA6rK7AOqyvADqsr0A6rK+AOqyvwDqs4AA6rOBAOqzggDqs4MA6rOEAOqzhQDqs4YA6rOHAOqziADqs4kA6rOKAOqziwDqs4wA6rONAOqzjgDqs48A6rOQAOqzkQDqs5IA6rOTAOqzlADqs5UA6rOWAOqzlwDqs5gA6rOZAOqzmgDqs5sA6rOcAOqznQDqs54A6rOfAOqzoADqs6EA6rOiAOqzowDqs6QA6rOlAOqzpgDqs6cA6rOoAOqzqQDqs6oA6rOrAOqzrADqs60A6rOuAOqzrwDqs7AA6rOxAOqzsgDqs7MA6rO0AOqztQDqs7YA6rO3AOqzuADqs7kA6rO6AOqzuwDqs7wA6rO9AOqzvgDqs78A6rSAAOq0gQDqtIIA6rSDAOq0hADqtIUA6rSGAOq0hwDqtIgA6rSJAOq0igDqtIsA6rSMAOq0jQDqtI4A6rSPAOq0kADqtJEA6rSSAOq0kwDqtJQA6rSVAOq0lgDqtJcA6rSYAOq0mQDqtJoA6rSbAOq0nADqtJ0A6rSeAOq0nwDqtKAA6rShAOq0ogDqtKMA6rSkAOq0pQDqtKYA6rSnAOq0qADqtKkA6rSqAOq0qwDqtKwA6rStAOq0rgDqtK8A6rSwAOq0sQDqtLIA6rSzAOq0tADqtLUA6rS2AOq0twDqtLgA6rS5AOq0ugDqtLsA6rS8AOq0vQDqtL4A6rS/AOq1gADqtYEA6rWCAOq1gwDqtYQA6rWFAOq1hgDqtYcA6rWIAOq1iQDqtYoA6rWLAOq1jADqtY0A6rWOAOq1jwDqtZAA6rWRAOq1kgDqtZMA6rWUAOq1lQDqtZYA6rWXAOq1mADqtZkA6rWaAOq1mwDqtZwA6rWdAOq1ngDqtZ8A6rWgAOq1oQDqtaIA6rWjAOq1pADqtaUA6rWmAOq1pwDqtagA6rWpAOq1qgDqtasA6rWsAOq1rQDqta4A6rWvAOq1sADqtbEA6rWyAOq1swDqtbQA6rW1AOq1tgDqtbcA6rW4AOq1uQDqtboA6rW7AOq1vADqtb0A6rW+AOq1vwDqtoAA6raBAOq2ggDqtoMA6raEAOq2hQDqtoYA6raHAOq2iADqtokA6raKAOq2iwDqtowA6raNAOq2jgDqto8A6raQAOq2kQDqtpIA6raTAOq2lADqtpUA6raWAOq2lwDqtpgA6raZAOq2mgDqtpsA6racAOq2nQDqtp4A6rafAOq2oADqtqEA6raiAOq2owDqtqQA6ralAOq2pgDqtqcA6raoAOq2qQDqtqoA6rarAOq2rADqtq0A6rauAOq2rwDqtrAA6raxAOq2sgDqtrMA6ra0AOq2tQDqtrYA6ra3AOq2uADqtrkA6ra6AOq2uwDqtrwA6ra9AOq2vgDqtr8A6reAAOq3gQDqt4IA6reDAOq3hADqt4UA6reGAOq3hwDqt4gA6reJAOq3igDqt4sA6reMAOq3jQDqt44A6rePAOq3kADqt5EA6reSAOq3kwDqt5QA6reVAOq3lgDqt5cA6reYAOq3mQDqt5oA6rebAOq3nADqt50A6reeAOq3nwDqt6AA6rehAOq3ogDqt6MA6rekAOq3pQDqt6YA6renAOq3qADqt6kA6reqAOq3qwDqt6wA6retAOq3rgDqt68A6rewAOq3sQDqt7IA6rezAOq3tADqt7UA6re2AOq3twDqt7gA6re5AOq3ugDqt7sA6re8AOq3vQDqt74A6re/AOq4gADquIEA6riCAOq4gwDquIQA6riFAOq4hgDquIcA6riIAOq4iQDquIoA6riLAOq4jADquI0A6riOAOq4jwDquJAA6riRAOq4kgDquJMA6riUAOq4lQDquJYA6riXAOq4mADquJkA6riaAOq4mwDquJwA6ridAOq4ngDquJ8A6rigAOq4oQDquKIA6rijAOq4pADquKUA6rimAOq4pwDquKgA6ripAOq4qgDquKsA6risAOq4rQDquK4A6rivAOq4sADquLEA6riyAOq4swDquLQA6ri1AOq4tgDquLcA6ri4AOq4uQDquLoA6ri7AOq4vADquL0A6ri+AOq4vwDquYAA6rmBAOq5ggDquYMA6rmEAOq5hQDquYYA6rmHAOq5iADquYkA6rmKAOq5iwDquYwA6rmNAOq5jgDquY8A6rmQAOq5kQDquZIA6rmTAOq5lADquZUA6rmWAOq5lwDquZgA6rmZAOq5mgDquZsA6rmcAOq5nQDquZ4A6rmfAOq5oADquaEA6rmiAOq5owDquaQA6rmlAOq5pgDquacA6rmoAOq5qQDquaoA6rmrAOq5rADqua0A6rmuAOq5rwDqubAA6rmxAOq5sgDqubMA6rm0AOq5tQDqubYA6rm3AOq5uADqubkA6rm6AOq5uwDqubwA6rm9AOq5vgDqub8A6rqAAOq6gQDquoIA6rqDAOq6hADquoUA6rqGAOq6hwDquogA6rqJAOq6igDquosA6rqMAOq6jQDquo4A6rqPAOq6kADqupEA6rqSAOq6kwDqupQA6rqVAOq6lgDqupcA6rqYAOq6mQDqupoA6rqbAOq6nADqup0A6rqeAOq6nwDquqAA6rqhAOq6ogDquqMA6rqkAOq6pQDquqYA6rqnAOq6qADquqkA6rqqAOq6qwDquqwA6rqtAOq6rgDquq8A6rqwAOq6sQDqurIA6rqzAOq6tADqurUA6rq2AOq6twDqurgA6rq5AOq6ugDqursA6rq8AOq6vQDqur4A6rq/AOq7gADqu4EA6ruCAOq7gwDqu4QA6ruFAOq7hgDqu4cA6ruIAOq7iQDqu4oA6ruLAOq7jADqu40A6ruOAOq7jwDqu5AA6ruRAOq7kgDqu5MA6ruUAOq7lQDqu5YA6ruXAOq7mADqu5kA6ruaAOq7mwDqu5wA6rudAOq7ngDqu58A6rugAOq7oQDqu6IA6rujAOq7pADqu6UA6rumAOq7pwDqu6gA6rupAOq7qgDqu6sA6rusAOq7rQDqu64A6ruvAOq7sADqu7EA6ruyAOq7swDqu7QA6ru1AOq7tgDqu7cA6ru4AOq7uQDqu7oA6ru7AOq7vADqu70A6ru+AOq7vwDqvIAA6ryBAOq8ggDqvIMA6ryEAOq8hQDqvIYA6ryHAOq8iADqvIkA6ryKAOq8iwDqvIwA6ryNAOq8jgDqvI8A6ryQAOq8kQDqvJIA6ryTAOq8lADqvJUA6ryWAOq8lwDqvJgA6ryZAOq8mgDqvJsA6rycAOq8nQDqvJ4A6ryfAOq8oADqvKEA6ryiAOq8owDqvKQA6rylAOq8pgDqvKcA6ryoAOq8qQDqvKoA6ryrAOq8rADqvK0A6ryuAOq8rwDqvLAA6ryxAOq8sgDqvLMA6ry0AOq8tQDqvLYA6ry3AOq8uADqvLkA6ry6AOq8uwDqvLwA6ry9AOq8vgDqvL8A6r2AAOq9gQDqvYIA6r2DAOq9hADqvYUA6r2GAOq9hwDqvYgA6r2JAOq9igDqvYsA6r2MAOq9jQDqvY4A6r2PAOq9kADqvZEA6r2SAOq9kwDqvZQA6r2VAOq9lgDqvZcA6r2YAOq9mQDqvZoA6r2bAOq9nADqvZ0A6r2eAOq9nwDqvaAA6r2hAOq9ogDqvaMA6r2kAOq9pQDqvaYA6r2nAOq9qADqvakA6r2qAOq9qwDqvawA6r2tAOq9rgDqva8A6r2wAOq9sQDqvbIA6r2zAOq9tADqvbUA6r22AOq9twDqvbgA6r25AOq9ugDqvbsA6r28AOq9vQDqvb4A6r2/AOq+gADqvoEA6r6CAOq+gwDqvoQA6r6FAOq+hgDqvocA6r6IAOq+iQDqvooA6r6LAOq+jADqvo0A6r6OAOq+jwDqvpAA6r6RAOq+kgDqvpMA6r6UAOq+lQDqvpYA6r6XAOq+mADqvpkA6r6aAOq+mwDqvpwA6r6dAOq+ngDqvp8A6r6gAOq+oQDqvqIA6r6jAOq+pADqvqUA6r6mAOq+pwDqvqgA6r6pAOq+qgDqvqsA6r6sAOq+rQDqvq4A6r6vAOq+sADqvrEA6r6yAOq+swDqvrQA6r61AOq+tgDqvrcA6r64AOq+uQDqvroA6r67AOq+vADqvr0A6r6+AOq+vwDqv4AA6r+BAOq/ggDqv4MA6r+EAOq/hQDqv4YA6r+HAOq/iADqv4kA6r+KAOq/iwDqv4wA6r+NAOq/jgDqv48A6r+QAOq/kQDqv5IA6r+TAOq/lADqv5UA6r+WAOq/lwDqv5gA6r+ZAOq/mgDqv5sA6r+cAOq/nQDqv54A6r+fAOq/oADqv6EA6r+iAOq/owDqv6QA6r+lAOq/pgDqv6cA6r+oAOq/qQDqv6oA6r+rAOq/rADqv60A6r+uAOq/rwDqv7AA6r+xAOq/sgDqv7MA6r+0AOq/tQDqv7YA6r+3AOq/uADqv7kA6r+6AOq/uwDqv7wA6r+9AOq/vgDqv78A64CAAOuAgQDrgIIA64CDAOuAhADrgIUA64CGAOuAhwDrgIgA64CJAOuAigDrgIsA64CMAOuAjQDrgI4A64CPAOuAkADrgJEA64CSAOuAkwDrgJQA64CVAOuAlgDrgJcA64CYAOuAmQDrgJoA64CbAOuAnADrgJ0A64CeAOuAnwDrgKAA64ChAOuAogDrgKMA64CkAOuApQDrgKYA64CnAOuAqADrgKkA64CqAOuAqwDrgKwA64CtAOuArgDrgK8A64CwAOuAsQDrgLIA64CzAOuAtADrgLUA64C2AOuAtwDrgLgA64C5AOuAugDrgLsA64C8AOuAvQDrgL4A64C/AOuBgADrgYEA64GCAOuBgwDrgYQA64GFAOuBhgDrgYcA64GIAOuBiQDrgYoA64GLAOuBjADrgY0A64GOAOuBjwDrgZAA64GRAOuBkgDrgZMA64GUAOuBlQDrgZYA64GXAOuBmADrgZkA64GaAOuBmwDrgZwA64GdAOuBngDrgZ8A64GgAOuBoQDrgaIA64GjAOuBpADrgaUA64GmAOuBpwDrgagA64GpAOuBqgDrgasA64GsAOuBrQDrga4A64GvAOuBsADrgbEA64GyAOuBswDrgbQA64G1AOuBtgDrgbcA64G4AOuBuQDrgboA64G7AOuBvADrgb0A64G+AOuBvwDrgoAA64KBAOuCggDrgoMA64KEAOuChQDrgoYA64KHAOuCiADrgokA64KKAOuCiwDrgowA64KNAOuCjgDrgo8A64KQAOuCkQDrgpIA64KTAOuClADrgpUA64KWAOuClwDrgpgA64KZAOuCmgDrgpsA64KcAOuCnQDrgp4A64KfAOuCoADrgqEA64KiAOuCowDrgqQA64KlAOuCpgDrgqcA64KoAOuCqQDrgqoA64KrAOuCrADrgq0A64KuAOuCrwDrgrAA64KxAOuCsgDrgrMA64K0AOuCtQDrgrYA64K3AOuCuADrgrkA64K6AOuCuwDrgrwA64K9AOuCvgDrgr8A64OAAOuDgQDrg4IA64ODAOuDhADrg4UA64OGAOuDhwDrg4gA64OJAOuDigDrg4sA64OMAOuDjQDrg44A64OPAOuDkADrg5EA64OSAOuDkwDrg5QA64OVAOuDlgDrg5cA64OYAOuDmQDrg5oA64ObAOuDnADrg50A64OeAOuDnwDrg6AA64OhAOuDogDrg6MA64OkAOuDpQDrg6YA64OnAOuDqADrg6kA64OqAOuDqwDrg6wA64OtAOuDrgDrg68A64OwAOuDsQDrg7IA64OzAOuDtADrg7UA64O2AOuDtwDrg7gA64O5AOuDugDrg7sA64O8AOuDvQDrg74A64O/AOuEgADrhIEA64SCAOuEgwDrhIQA64SFAOuEhgDrhIcA64SIAOuEiQDrhIoA64SLAOuEjADrhI0A64SOAOuEjwDrhJAA64SRAOuEkgDrhJMA64SUAOuElQDrhJYA64SXAOuEmADrhJkA64SaAOuEmwDrhJwA64SdAOuEngDrhJ8A64SgAOuEoQDrhKIA64SjAOuEpADrhKUA64SmAOuEpwDrhKgA64SpAOuEqgDrhKsA64SsAOuErQDrhK4A64SvAOuEsADrhLEA64SyAOuEswDrhLQA64S1AOuEtgDrhLcA64S4AOuEuQDrhLoA64S7AOuEvADrhL0A64S+AOuEvwDrhYAA64WBAOuFggDrhYMA64WEAOuFhQDrhYYA64WHAOuFiADrhYkA64WKAOuFiwDrhYwA64WNAOuFjgDrhY8A64WQAOuFkQDrhZIA64WTAOuFlADrhZUA64WWAOuFlwDrhZgA64WZAOuFmgDrhZsA64WcAOuFnQDrhZ4A64WfAOuFoADrhaEA64WiAOuFowDrhaQA64WlAOuFpgDrhacA64WoAOuFqQDrhaoA64WrAOuFrADrha0A64WuAOuFrwDrhbAA64WxAOuFsgDrhbMA64W0AOuFtQDrhbYA64W3AOuFuADrhbkA64W6AOuFuwDrhbwA64W9AOuFvgDrhb8A64aAAOuGgQDrhoIA64aDAOuGhADrhoUA64aGAOuGhwDrhogA64aJAOuGigDrhosA64aMAOuGjQDrho4A64aPAOuGkADrhpEA64aSAOuGkwDrhpQA64aVAOuGlgDrhpcA64aYAOuGmQDrhpoA64abAOuGnADrhp0A64aeAOuGnwDrhqAA64ahAOuGogDrhqMA64akAOuGpQDrhqYA64anAOuGqADrhqkA64aqAOuGqwDrhqwA64atAOuGrgDrhq8A64awAOuGsQDrhrIA64azAOuGtADrhrUA64a2AOuGtwDrhrgA64a5AOuGugDrhrsA64a8AOuGvQDrhr4A64a/AOuHgADrh4EA64eCAOuHgwDrh4QA64eFAOuHhgDrh4cA64eIAOuHiQDrh4oA64eLAOuHjADrh40A64eOAOuHjwDrh5AA64eRAOuHkgDrh5MA64eUAOuHlQDrh5YA64eXAOuHmADrh5kA64eaAOuHmwDrh5wA64edAOuHngDrh58A64egAOuHoQDrh6IA64ejAOuHpADrh6UA64emAOuHpwDrh6gA64epAOuHqgDrh6sA64esAOuHrQDrh64A64evAOuHsADrh7EA64eyAOuHswDrh7QA64e1AOuHtgDrh7cA64e4AOuHuQDrh7oA64e7AOuHvADrh70A64e+AOuHvwDriIAA64iBAOuIggDriIMA64iEAOuIhQDriIYA64iHAOuIiADriIkA64iKAOuIiwDriIwA64iNAOuIjgDriI8A64iQAOuIkQDriJIA64iTAOuIlADriJUA64iWAOuIlwDriJgA64iZAOuImgDriJsA64icAOuInQDriJ4A64ifAOuIoADriKEA64iiAOuIowDriKQA64ilAOuIpgDriKcA64ioAOuIqQDriKoA64irAOuIrADriK0A64iuAOuIrwDriLAA64ixAOuIsgDriLMA64i0AOuItQDriLYA64i3AOuIuADriLkA64i6AOuIuwDriLwA64i9AOuIvgDriL8A64mAAOuJgQDriYIA64mDAOuJhADriYUA64mGAOuJhwDriYgA64mJAOuJigDriYsA64mMAOuJjQDriY4A64mPAOuJkADriZEA64mSAOuJkwDriZQA64mVAOuJlgDriZcA64mYAOuJmQDriZoA64mbAOuJnADriZ0A64meAOuJnwDriaAA64mhAOuJogDriaMA64mkAOuJpQDriaYA64mnAOuJqADriakA64mqAOuJqwDriawA64mtAOuJrgDria8A64mwAOuJsQDribIA64mzAOuJtADribUA64m2AOuJtwDribgA64m5AOuJugDribsA64m8AOuJvQDrib4A64m/AOuKgADrioEA64qCAOuKgwDrioQA64qFAOuKhgDriocA64qIAOuKiQDriooA64qLAOuKjADrio0A64qOAOuKjwDripAA64qRAOuKkgDripMA64qUAOuKlQDripYA64qXAOuKmADripkA64qaAOuKmwDripwA64qdAOuKngDrip8A64qgAOuKoQDriqIA64qjAOuKpADriqUA64qmAOuKpwDriqgA64qpAOuKqgDriqsA64qsAOuKrQDriq4A64qvAOuKsADrirEA64qyAOuKswDrirQA64q1AOuKtgDrircA64q4AOuKuQDriroA64q7AOuKvADrir0A64q+AOuKvwDri4AA64uBAOuLggDri4MA64uEAOuLhQDri4YA64uHAOuLiADri4kA64uKAOuLiwDri4wA64uNAOuLjgDri48A64uQAOuLkQDri5IA64uTAOuLlADri5UA64uWAOuLlwDri5gA64uZAOuLmgDri5sA64ucAOuLnQDri54A64ufAOuLoADri6EA64uiAOuLowDri6QA64ulAOuLpgDri6cA64uoAOuLqQDri6oA64urAOuLrADri60A64uuAOuLrwDri7AA64uxAOuLsgDri7MA64u0AOuLtQDri7YA64u3AOuLuADri7kA64u6AOuLuwDri7wA64u9AOuLvgDri78A64yAAOuMgQDrjIIA64yDAOuMhADrjIUA64yGAOuMhwDrjIgA64yJAOuMigDrjIsA64yMAOuMjQDrjI4A64yPAOuMkADrjJEA64ySAOuMkwDrjJQA64yVAOuMlgDrjJcA64yYAOuMmQDrjJoA64ybAOuMnADrjJ0A64yeAOuMnwDrjKAA64yhAOuMogDrjKMA64ykAOuMpQDrjKYA64ynAOuMqADrjKkA64yqAOuMqwDrjKwA64ytAOuMrgDrjK8A64ywAOuMsQDrjLIA64yzAOuMtADrjLUA64y2AOuMtwDrjLgA64y5AOuMugDrjLsA64y8AOuMvQDrjL4A64y/AOuNgADrjYEA642CAOuNgwDrjYQA642FAOuNhgDrjYcA642IAOuNiQDrjYoA642LAOuNjADrjY0A642OAOuNjwDrjZAA642RAOuNkgDrjZMA642UAOuNlQDrjZYA642XAOuNmADrjZkA642aAOuNmwDrjZwA642dAOuNngDrjZ8A642gAOuNoQDrjaIA642jAOuNpADrjaUA642mAOuNpwDrjagA642pAOuNqgDrjasA642sAOuNrQDrja4A642vAOuNsADrjbEA642yAOuNswDrjbQA6421AOuNtgDrjbcA6424AOuNuQDrjboA6427AOuNvADrjb0A642+AOuNvwDrjoAA646BAOuOggDrjoMA646EAOuOhQDrjoYA646HAOuOiADrjokA646KAOuOiwDrjowA646NAOuOjgDrjo8A646QAOuOkQDrjpIA646TAOuOlADrjpUA646WAOuOlwDrjpgA646ZAOuOmgDrjpsA646cAOuOnQDrjp4A646fAOuOoADrjqEA646iAOuOowDrjqQA646lAOuOpgDrjqcA646oAOuOqQDrjqoA646rAOuOrADrjq0A646uAOuOrwDrjrAA646xAOuOsgDrjrMA6460AOuOtQDrjrYA6463AOuOuADrjrkA6466AOuOuwDrjrwA6469AOuOvgDrjr8A64+AAOuPgQDrj4IA64+DAOuPhADrj4UA64+GAOuPhwDrj4gA64+JAOuPigDrj4sA64+MAOuPjQDrj44A64+PAOuPkADrj5EA64+SAOuPkwDrj5QA64+VAOuPlgDrj5cA64+YAOuPmQDrj5oA64+bAOuPnADrj50A64+eAOuPnwDrj6AA64+hAOuPogDrj6MA64+kAOuPpQDrj6YA64+nAOuPqADrj6kA64+qAOuPqwDrj6wA64+tAOuPrgDrj68A64+wAOuPsQDrj7IA64+zAOuPtADrj7UA64+2AOuPtwDrj7gA64+5AOuPugDrj7sA64+8AOuPvQDrj74A64+/AOuQgADrkIEA65CCAOuQgwDrkIQA65CFAOuQhgDrkIcA65CIAOuQiQDrkIoA65CLAOuQjADrkI0A65COAOuQjwDrkJAA65CRAOuQkgDrkJMA65CUAOuQlQDrkJYA65CXAOuQmADrkJkA65CaAOuQmwDrkJwA65CdAOuQngDrkJ8A65CgAOuQoQDrkKIA65CjAOuQpADrkKUA65CmAOuQpwDrkKgA65CpAOuQqgDrkKsA65CsAOuQrQDrkK4A65CvAOuQsADrkLEA65CyAOuQswDrkLQA65C1AOuQtgDrkLcA65C4AOuQuQDrkLoA65C7AOuQvADrkL0A65C+AOuQvwDrkYAA65GBAOuRggDrkYMA65GEAOuRhQDrkYYA65GHAOuRiADrkYkA65GKAOuRiwDrkYwA65GNAOuRjgDrkY8A65GQAOuRkQDrkZIA65GTAOuRlADrkZUA65GWAOuRlwDrkZgA65GZAOuRmgDrkZsA65GcAOuRnQDrkZ4A65GfAOuRoADrkaEA65GiAOuRowDrkaQA65GlAOuRpgDrkacA65GoAOuRqQDrkaoA65GrAOuRrADrka0A65GuAOuRrwDrkbAA65GxAOuRsgDrkbMA65G0AOuRtQDrkbYA65G3AOuRuADrkbkA65G6AOuRuwDrkbwA65G9AOuRvgDrkb8A65KAAOuSgQDrkoIA65KDAOuShADrkoUA65KGAOuShwDrkogA65KJAOuSigDrkosA65KMAOuSjQDrko4A65KPAOuSkADrkpEA65KSAOuSkwDrkpQA65KVAOuSlgDrkpcA65KYAOuSmQDrkpoA65KbAOuSnADrkp0A65KeAOuSnwDrkqAA65KhAOuSogDrkqMA65KkAOuSpQDrkqYA65KnAOuSqADrkqkA65KqAOuSqwDrkqwA65KtAOuSrgDrkq8A65KwAOuSsQDrkrIA65KzAOuStADrkrUA65K2AOuStwDrkrgA65K5AOuSugDrkrsA65K8AOuSvQDrkr4A65K/AOuTgADrk4EA65OCAOuTgwDrk4QA65OFAOuThgDrk4cA65OIAOuTiQDrk4oA65OLAOuTjADrk40A65OOAOuTjwDrk5AA65ORAOuTkgDrk5MA65OUAOuTlQDrk5YA65OXAOuTmADrk5kA65OaAOuTmwDrk5wA65OdAOuTngDrk58A65OgAOuToQDrk6IA65OjAOuTpADrk6UA65OmAOuTpwDrk6gA65OpAOuTqgDrk6sA65OsAOuTrQDrk64A65OvAOuTsADrk7EA65OyAOuTswDrk7QA65O1AOuTtgDrk7cA65O4AOuTuQDrk7oA65O7AOuTvADrk70A65O+AOuTvwDrlIAA65SBAOuUggDrlIMA65SEAOuUhQDrlIYA65SHAOuUiADrlIkA65SKAOuUiwDrlIwA65SNAOuUjgDrlI8A65SQAOuUkQDrlJIA65STAOuUlADrlJUA65SWAOuUlwDrlJgA65SZAOuUmgDrlJsA65ScAOuUnQDrlJ4A65SfAOuUoADrlKEA65SiAOuUowDrlKQA65SlAOuUpgDrlKcA65SoAOuUqQDrlKoA65SrAOuUrADrlK0A65SuAOuUrwDrlLAA65SxAOuUsgDrlLMA65S0AOuUtQDrlLYA65S3AOuUuADrlLkA65S6AOuUuwDrlLwA65S9AOuUvgDrlL8A65WAAOuVgQDrlYIA65WDAOuVhADrlYUA65WGAOuVhwDrlYgA65WJAOuVigDrlYsA65WMAOuVjQDrlY4A65WPAOuVkADrlZEA65WSAOuVkwDrlZQA65WVAOuVlgDrlZcA65WYAOuVmQDrlZoA65WbAOuVnADrlZ0A65WeAOuVnwDrlaAA65WhAOuVogDrlaMA65WkAOuVpQDrlaYA65WnAOuVqADrlakA65WqAOuVqwDrlawA65WtAOuVrgDrla8A65WwAOuVsQDrlbIA65WzAOuVtADrlbUA65W2AOuVtwDrlbgA65W5AOuVugDrlbsA65W8AOuVvQDrlb4A65W/AOuWgADrloEA65aCAOuWgwDrloQA65aFAOuWhgDrlocA65aIAOuWiQDrlooA65aLAOuWjADrlo0A65aOAOuWjwDrlpAA65aRAOuWkgDrlpMA65aUAOuWlQDrlpYA65aXAOuWmADrlpkA65aaAOuWmwDrlpwA65adAOuWngDrlp8A65agAOuWoQDrlqIA65ajAOuWpADrlqUA65amAOuWpwDrlqgA65apAOuWqgDrlqsA65asAOuWrQDrlq4A65avAOuWsADrlrEA65ayAOuWswDrlrQA65a1AOuWtgDrlrcA65a4AOuWuQDrlroA65a7AOuWvADrlr0A65a+AOuWvwDrl4AA65eBAOuXggDrl4MA65eEAOuXhQDrl4YA65eHAOuXiADrl4kA65eKAOuXiwDrl4wA65eNAOuXjgDrl48A65eQAOuXkQDrl5IA65eTAOuXlADrl5UA65eWAOuXlwDrl5gA65eZAOuXmgDrl5sA65ecAOuXnQDrl54A65efAOuXoADrl6EA65eiAOuXowDrl6QA65elAOuXpgDrl6cA65eoAOuXqQDrl6oA65erAOuXrADrl60A65euAOuXrwDrl7AA65exAOuXsgDrl7MA65e0AOuXtQDrl7YA65e3AOuXuADrl7kA65e6AOuXuwDrl7wA65e9AOuXvgDrl78A65iAAOuYgQDrmIIA65iDAOuYhADrmIUA65iGAOuYhwDrmIgA65iJAOuYigDrmIsA65iMAOuYjQDrmI4A65iPAOuYkADrmJEA65iSAOuYkwDrmJQA65iVAOuYlgDrmJcA65iYAOuYmQDrmJoA65ibAOuYnADrmJ0A65ieAOuYnwDrmKAA65ihAOuYogDrmKMA65ikAOuYpQDrmKYA65inAOuYqADrmKkA65iqAOuYqwDrmKwA65itAOuYrgDrmK8A65iwAOuYsQDrmLIA65izAOuYtADrmLUA65i2AOuYtwDrmLgA65i5AOuYugDrmLsA65i8AOuYvQDrmL4A65i/AOuZgADrmYEA65mCAOuZgwDrmYQA65mFAOuZhgDrmYcA65mIAOuZiQDrmYoA65mLAOuZjADrmY0A65mOAOuZjwDrmZAA65mRAOuZkgDrmZMA65mUAOuZlQDrmZYA65mXAOuZmADrmZkA65maAOuZmwDrmZwA65mdAOuZngDrmZ8A65mgAOuZoQDrmaIA65mjAOuZpADrmaUA65mmAOuZpwDrmagA65mpAOuZqgDrmasA65msAOuZrQDrma4A65mvAOuZsADrmbEA65myAOuZswDrmbQA65m1AOuZtgDrmbcA65m4AOuZuQDrmboA65m7AOuZvADrmb0A65m+AOuZvwDrmoAA65qBAOuaggDrmoMA65qEAOuahQDrmoYA65qHAOuaiADrmokA65qKAOuaiwDrmowA65qNAOuajgDrmo8A65qQAOuakQDrmpIA65qTAOualADrmpUA65qWAOualwDrmpgA65qZAOuamgDrmpsA65qcAOuanQDrmp4A65qfAOuaoADrmqEA65qiAOuaowDrmqQA65qlAOuapgDrmqcA65qoAOuaqQDrmqoA65qrAOuarADrmq0A65quAOuarwDrmrAA65qxAOuasgDrmrMA65q0AOuatQDrmrYA65q3AOuauADrmrkA65q6AOuauwDrmrwA65q9AOuavgDrmr8A65uAAOubgQDrm4IA65uDAOubhADrm4UA65uGAOubhwDrm4gA65uJAOubigDrm4sA65uMAOubjQDrm44A65uPAOubkADrm5EA65uSAOubkwDrm5QA65uVAOublgDrm5cA65uYAOubmQDrm5oA65ubAOubnADrm50A65ueAOubnwDrm6AA65uhAOubogDrm6MA65ukAOubpQDrm6YA65unAOubqADrm6kA65uqAOubqwDrm6wA65utAOubrgDrm68A65uwAOubsQDrm7IA65uzAOubtADrm7UA65u2AOubtwDrm7gA65u5AOubugDrm7sA65u8AOubvQDrm74A65u/AOucgADrnIEA65yCAOucgwDrnIQA65yFAOuchgDrnIcA65yIAOuciQDrnIoA65yLAOucjADrnI0A65yOAOucjwDrnJAA65yRAOuckgDrnJMA65yUAOuclQDrnJYA65yXAOucmADrnJkA65yaAOucmwDrnJwA65ydAOucngDrnJ8A65ygAOucoQDrnKIA65yjAOucpADrnKUA65ymAOucpwDrnKgA65ypAOucqgDrnKsA65ysAOucrQDrnK4A65yvAOucsADrnLEA65yyAOucswDrnLQA65y1AOuctgDrnLcA65y4AOucuQDrnLoA65y7AOucvADrnL0A65y+AOucvwDrnYAA652BAOudggDrnYMA652EAOudhQDrnYYA652HAOudiADrnYkA652KAOudiwDrnYwA652NAOudjgDrnY8A652QAOudkQDrnZIA652TAOudlADrnZUA652WAOudlwDrnZgA652ZAOudmgDrnZsA652cAOudnQDrnZ4A652fAOudoADrnaEA652iAOudowDrnaQA652lAOudpgDrnacA652oAOudqQDrnaoA652rAOudrADrna0A652uAOudrwDrnbAA652xAOudsgDrnbMA6520AOudtQDrnbYA6523AOuduADrnbkA6526AOuduwDrnbwA6529AOudvgDrnb8A656AAOuegQDrnoIA656DAOuehADrnoUA656GAOuehwDrnogA656JAOueigDrnosA656MAOuejQDrno4A656PAOuekADrnpEA656SAOuekwDrnpQA656VAOuelgDrnpcA656YAOuemQDrnpoA656bAOuenADrnp0A656eAOuenwDrnqAA656hAOueogDrnqMA656kAOuepQDrnqYA656nAOueqADrnqkA656qAOueqwDrnqwA656tAOuergDrnq8A656wAOuesQDrnrIA656zAOuetADrnrUA6562AOuetwDrnrgA6565AOueugDrnrsA6568AOuevQDrnr4A656/AOufgADrn4EA65+CAOufgwDrn4QA65+FAOufhgDrn4cA65+IAOufiQDrn4oA65+LAOufjADrn40A65+OAOufjwDrn5AA65+RAOufkgDrn5MA65+UAOuflQDrn5YA65+XAOufmADrn5kA65+aAOufmwDrn5wA65+dAOufngDrn58A65+gAOufoQDrn6IA65+jAOufpADrn6UA65+mAOufpwDrn6gA65+pAOufqgDrn6sA65+sAOufrQDrn64A65+vAOufsADrn7EA65+yAOufswDrn7QA65+1AOuftgDrn7cA65+4AOufuQDrn7oA65+7AOufvADrn70A65++AOufvwDroIAA66CBAOugggDroIMA66CEAOughQDroIYA66CHAOugiADroIkA66CKAOugiwDroIwA66CNAOugjgDroI8A66CQAOugkQDroJIA66CTAOuglADroJUA66CWAOuglwDroJgA66CZAOugmgDroJsA66CcAOugnQDroJ4A66CfAOugoADroKEA66CiAOugowDroKQA66ClAOugpgDroKcA66CoAOugqQDroKoA66CrAOugrADroK0A66CuAOugrwDroLAA66CxAOugsgDroLMA66C0AOugtQDroLYA66C3AOuguADroLkA66C6AOuguwDroLwA66C9AOugvgDroL8A66GAAOuhgQDroYIA66GDAOuhhADroYUA66GGAOuhhwDroYgA66GJAOuhigDroYsA66GMAOuhjQDroY4A66GPAOuhkADroZEA66GSAOuhkwDroZQA66GVAOuhlgDroZcA66GYAOuhmQDroZoA66GbAOuhnADroZ0A66GeAOuhnwDroaAA66GhAOuhogDroaMA66GkAOuhpQDroaYA66GnAOuhqADroakA66GqAOuhqwDroawA66GtAOuhrgDroa8A66GwAOuhsQDrobIA66GzAOuhtADrobUA66G2AOuhtwDrobgA66G5AOuhugDrobsA66G8AOuhvQDrob4A66G/AOuigADrooEA66KCAOuigwDrooQA66KFAOuihgDroocA66KIAOuiiQDroooA66KLAOuijADroo0A66KOAOuijwDropAA66KRAOuikgDropMA66KUAOuilQDropYA66KXAOuimADropkA66KaAOuimwDropwA66KdAOuingDrop8A66KgAOuioQDroqIA66KjAOuipADroqUA66KmAOuipwDroqgA66KpAOuiqgDroqsA66KsAOuirQDroq4A66KvAOuisADrorEA66KyAOuiswDrorQA66K1AOuitgDrorcA66K4AOuiuQDroroA66K7AOuivADror0A66K+AOuivwDro4AA66OBAOujggDro4MA66OEAOujhQDro4YA66OHAOujiADro4kA66OKAOujiwDro4wA66ONAOujjgDro48A66OQAOujkQDro5IA66OTAOujlADro5UA66OWAOujlwDro5gA66OZAOujmgDro5sA66OcAOujnQDro54A66OfAOujoADro6EA66OiAOujowDro6QA66OlAOujpgDro6cA66OoAOujqQDro6oA66OrAOujrADro60A66OuAOujrwDro7AA66OxAOujsgDro7MA66O0AOujtQDro7YA66O3AOujuADro7kA66O6AOujuwDro7wA66O9AOujvgDro78A66SAAOukgQDrpIIA66SDAOukhADrpIUA66SGAOukhwDrpIgA66SJAOukigDrpIsA66SMAOukjQDrpI4A66SPAOukkADrpJEA66SSAOukkwDrpJQA66SVAOuklgDrpJcA66SYAOukmQDrpJoA66SbAOuknADrpJ0A66SeAOuknwDrpKAA66ShAOukogDrpKMA66SkAOukpQDrpKYA66SnAOukqADrpKkA66SqAOukqwDrpKwA66StAOukrgDrpK8A66SwAOuksQDrpLIA66SzAOuktADrpLUA66S2AOuktwDrpLgA66S5AOukugDrpLsA66S8AOukvQDrpL4A66S/AOulgADrpYEA66WCAOulgwDrpYQA66WFAOulhgDrpYcA66WIAOuliQDrpYoA66WLAOuljADrpY0A66WOAOuljwDrpZAA66WRAOulkgDrpZMA66WUAOullQDrpZYA66WXAOulmADrpZkA66WaAOulmwDrpZwA66WdAOulngDrpZ8A66WgAOuloQDrpaIA66WjAOulpADrpaUA66WmAOulpwDrpagA66WpAOulqgDrpasA66WsAOulrQDrpa4A66WvAOulsADrpbEA66WyAOulswDrpbQA66W1AOultgDrpbcA66W4AOuluQDrpboA66W7AOulvADrpb0A66W+AOulvwDrpoAA66aBAOumggDrpoMA66aEAOumhQDrpoYA66aHAOumiADrpokA66aKAOumiwDrpowA66aNAOumjgDrpo8A66aQAOumkQDrppIA66aTAOumlADrppUA66aWAOumlwDrppgA66aZAOummgDrppsA66acAOumnQDrpp4A66afAOumoADrpqEA66aiAOumowDrpqQA66alAOumpgDrpqcA66aoAOumqQDrpqoA66arAOumrADrpq0A66auAOumrwDrprAA66axAOumsgDrprMA66a0AOumtQDrprYA66a3AOumuADrprkA66a6AOumuwDrprwA66a9AOumvgDrpr8A66eAAOungQDrp4IA66eDAOunhADrp4UA66eGAOunhwDrp4gA66eJAOunigDrp4sA66eMAOunjQDrp44A66ePAOunkADrp5EA66eSAOunkwDrp5QA66eVAOunlgDrp5cA66eYAOunmQDrp5oA66ebAOunnADrp50A66eeAOunnwDrp6AA66ehAOunogDrp6MA66ekAOunpQDrp6YA66enAOunqADrp6kA66eqAOunqwDrp6wA66etAOunrgDrp68A66ewAOunsQDrp7IA66ezAOuntADrp7UA66e2AOuntwDrp7gA66e5AOunugDrp7sA66e8AOunvQDrp74A66e/AOuogADrqIEA66iCAOuogwDrqIQA66iFAOuohgDrqIcA66iIAOuoiQDrqIoA66iLAOuojADrqI0A66iOAOuojwDrqJAA66iRAOuokgDrqJMA66iUAOuolQDrqJYA66iXAOuomADrqJkA66iaAOuomwDrqJwA66idAOuongDrqJ8A66igAOuooQDrqKIA66ijAOuopADrqKUA66imAOuopwDrqKgA66ipAOuoqgDrqKsA66isAOuorQDrqK4A66ivAOuosADrqLEA66iyAOuoswDrqLQA66i1AOuotgDrqLcA66i4AOuouQDrqLoA66i7AOuovADrqL0A66i+AOuovwDrqYAA66mBAOupggDrqYMA66mEAOuphQDrqYYA66mHAOupiADrqYkA66mKAOupiwDrqYwA66mNAOupjgDrqY8A66mQAOupkQDrqZIA66mTAOuplADrqZUA66mWAOuplwDrqZgA66mZAOupmgDrqZsA66mcAOupnQDrqZ4A66mfAOupoADrqaEA66miAOupowDrqaQA66mlAOuppgDrqacA66moAOupqQDrqaoA66mrAOuprADrqa0A66muAOuprwDrqbAA66mxAOupsgDrqbMA66m0AOuptQDrqbYA66m3AOupuADrqbkA66m6AOupuwDrqbwA66m9AOupvgDrqb8A66qAAOuqgQDrqoIA66qDAOuqhADrqoUA66qGAOuqhwDrqogA66qJAOuqigDrqosA66qMAOuqjQDrqo4A66qPAOuqkADrqpEA66qSAOuqkwDrqpQA66qVAOuqlgDrqpcA66qYAOuqmQDrqpoA66qbAOuqnADrqp0A66qeAOuqnwDrqqAA66qhAOuqogDrqqMA66qkAOuqpQDrqqYA66qnAOuqqADrqqkA66qqAOuqqwDrqqwA66qtAOuqrgDrqq8A66qwAOuqsQDrqrIA66qzAOuqtADrqrUA66q2AOuqtwDrqrgA66q5AOuqugDrqrsA66q8AOuqvQDrqr4A66q/AOurgADrq4EA66uCAOurgwDrq4QA66uFAOurhgDrq4cA66uIAOuriQDrq4oA66uLAOurjADrq40A66uOAOurjwDrq5AA66uRAOurkgDrq5MA66uUAOurlQDrq5YA66uXAOurmADrq5kA66uaAOurmwDrq5wA66udAOurngDrq58A66ugAOuroQDrq6IA66ujAOurpADrq6UA66umAOurpwDrq6gA66upAOurqgDrq6sA66usAOurrQDrq64A66uvAOursADrq7EA66uyAOurswDrq7QA66u1AOurtgDrq7cA66u4AOuruQDrq7oA66u7AOurvADrq70A66u+AOurvwDrrIAA66yBAOusggDrrIMA66yEAOushQDrrIYA66yHAOusiADrrIkA66yKAOusiwDrrIwA66yNAOusjgDrrI8A66yQAOuskQDrrJIA66yTAOuslADrrJUA66yWAOuslwDrrJgA66yZAOusmgDrrJsA66ycAOusnQDrrJ4A66yfAOusoADrrKEA66yiAOusowDrrKQA66ylAOuspgDrrKcA66yoAOusqQDrrKoA66yrAOusrADrrK0A66yuAOusrwDrrLAA66yxAOussgDrrLMA66y0AOustQDrrLYA66y3AOusuADrrLkA66y6AOusuwDrrLwA66y9AOusvgDrrL8A662AAOutgQDrrYIA662DAOuthADrrYUA662GAOuthwDrrYgA662JAOutigDrrYsA662MAOutjQDrrY4A662PAOutkADrrZEA662SAOutkwDrrZQA662VAOutlgDrrZcA662YAOutmQDrrZoA662bAOutnADrrZ0A662eAOutnwDrraAA662hAOutogDrraMA662kAOutpQDrraYA662nAOutqADrrakA662qAOutqwDrrawA662tAOutrgDrra8A662wAOutsQDrrbIA662zAOuttADrrbUA6622AOuttwDrrbgA6625AOutugDrrbsA6628AOutvQDrrb4A662/AOuugADrroEA666CAOuugwDrroQA666FAOuuhgDrrocA666IAOuuiQDrrooA666LAOuujADrro0A666OAOuujwDrrpAA666RAOuukgDrrpMA666UAOuulQDrrpYA666XAOuumADrrpkA666aAOuumwDrrpwA666dAOuungDrrp8A666gAOuuoQDrrqIA666jAOuupADrrqUA666mAOuupwDrrqgA666pAOuuqgDrrqsA666sAOuurQDrrq4A666vAOuusADrrrEA666yAOuuswDrrrQA6661AOuutgDrrrcA6664AOuuuQDrrroA6667AOuuvADrrr0A666+AOuuvwDrr4AA66+BAOuvggDrr4MA66+EAOuvhQDrr4YA66+HAOuviADrr4kA66+KAOuviwDrr4wA66+NAOuvjgDrr48A66+QAOuvkQDrr5IA66+TAOuvlADrr5UA66+WAOuvlwDrr5gA66+ZAOuvmgDrr5sA66+cAOuvnQDrr54A66+fAOuvoADrr6EA66+iAOuvowDrr6QA66+lAOuvpgDrr6cA66+oAOuvqQDrr6oA66+rAOuvrADrr60A66+uAOuvrwDrr7AA66+xAOuvsgDrr7MA66+0AOuvtQDrr7YA66+3AOuvuADrr7kA66+6AOuvuwDrr7wA66+9AOuvvgDrr78A67CAAOuwgQDrsIIA67CDAOuwhADrsIUA67CGAOuwhwDrsIgA67CJAOuwigDrsIsA67CMAOuwjQDrsI4A67CPAOuwkADrsJEA67CSAOuwkwDrsJQA67CVAOuwlgDrsJcA67CYAOuwmQDrsJoA67CbAOuwnADrsJ0A67CeAOuwnwDrsKAA67ChAOuwogDrsKMA67CkAOuwpQDrsKYA67CnAOuwqADrsKkA67CqAOuwqwDrsKwA67CtAOuwrgDrsK8A67CwAOuwsQDrsLIA67CzAOuwtADrsLUA67C2AOuwtwDrsLgA67C5AOuwugDrsLsA67C8AOuwvQDrsL4A67C/AOuxgADrsYEA67GCAOuxgwDrsYQA67GFAOuxhgDrsYcA67GIAOuxiQDrsYoA67GLAOuxjADrsY0A67GOAOuxjwDrsZAA67GRAOuxkgDrsZMA67GUAOuxlQDrsZYA67GXAOuxmADrsZkA67GaAOuxmwDrsZwA67GdAOuxngDrsZ8A67GgAOuxoQDrsaIA67GjAOuxpADrsaUA67GmAOuxpwDrsagA67GpAOuxqgDrsasA67GsAOuxrQDrsa4A67GvAOuxsADrsbEA67GyAOuxswDrsbQA67G1AOuxtgDrsbcA67G4AOuxuQDrsboA67G7AOuxvADrsb0A67G+AOuxvwDrsoAA67KBAOuyggDrsoMA67KEAOuyhQDrsoYA67KHAOuyiADrsokA67KKAOuyiwDrsowA67KNAOuyjgDrso8A67KQAOuykQDrspIA67KTAOuylADrspUA67KWAOuylwDrspgA67KZAOuymgDrspsA67KcAOuynQDrsp4A67KfAOuyoADrsqEA67KiAOuyowDrsqQA67KlAOuypgDrsqcA67KoAOuyqQDrsqoA67KrAOuyrADrsq0A67KuAOuyrwDrsrAA67KxAOuysgDrsrMA67K0AOuytQDrsrYA67K3AOuyuADrsrkA67K6AOuyuwDrsrwA67K9AOuyvgDrsr8A67OAAOuzgQDrs4IA67ODAOuzhADrs4UA67OGAOuzhwDrs4gA67OJAOuzigDrs4sA67OMAOuzjQDrs44A67OPAOuzkADrs5EA67OSAOuzkwDrs5QA67OVAOuzlgDrs5cA67OYAOuzmQDrs5oA67ObAOuznADrs50A67OeAOuznwDrs6AA67OhAOuzogDrs6MA67OkAOuzpQDrs6YA67OnAOuzqADrs6kA67OqAOuzqwDrs6wA67OtAOuzrgDrs68A67OwAOuzsQDrs7IA67OzAOuztADrs7UA67O2AOuztwDrs7gA67O5AOuzugDrs7sA67O8AOuzvQDrs74A67O/AOu0gADrtIEA67SCAOu0gwDrtIQA67SFAOu0hgDrtIcA67SIAOu0iQDrtIoA67SLAOu0jADrtI0A67SOAOu0jwDrtJAA67SRAOu0kgDrtJMA67SUAOu0lQDrtJYA67SXAOu0mADrtJkA67SaAOu0mwDrtJwA67SdAOu0ngDrtJ8A67SgAOu0oQDrtKIA67SjAOu0pADrtKUA67SmAOu0pwDrtKgA67SpAOu0qgDrtKsA67SsAOu0rQDrtK4A67SvAOu0sADrtLEA67SyAOu0swDrtLQA67S1AOu0tgDrtLcA67S4AOu0uQDrtLoA67S7AOu0vADrtL0A67S+AOu0vwDrtYAA67WBAOu1ggDrtYMA67WEAOu1hQDrtYYA67WHAOu1iADrtYkA67WKAOu1iwDrtYwA67WNAOu1jgDrtY8A67WQAOu1kQDrtZIA67WTAOu1lADrtZUA67WWAOu1lwDrtZgA67WZAOu1mgDrtZsA67WcAOu1nQDrtZ4A67WfAOu1oADrtaEA67WiAOu1owDrtaQA67WlAOu1pgDrtacA67WoAOu1qQDrtaoA67WrAOu1rADrta0A67WuAOu1rwDrtbAA67WxAOu1sgDrtbMA67W0AOu1tQDrtbYA67W3AOu1uADrtbkA67W6AOu1uwDrtbwA67W9AOu1vgDrtb8A67aAAOu2gQDrtoIA67aDAOu2hADrtoUA67aGAOu2hwDrtogA67aJAOu2igDrtosA67aMAOu2jQDrto4A67aPAOu2kADrtpEA67aSAOu2kwDrtpQA67aVAOu2lgDrtpcA67aYAOu2mQDrtpoA67abAOu2nADrtp0A67aeAOu2nwDrtqAA67ahAOu2ogDrtqMA67akAOu2pQDrtqYA67anAOu2qADrtqkA67aqAOu2qwDrtqwA67atAOu2rgDrtq8A67awAOu2sQDrtrIA67azAOu2tADrtrUA67a2AOu2twDrtrgA67a5AOu2ugDrtrsA67a8AOu2vQDrtr4A67a/AOu3gADrt4EA67eCAOu3gwDrt4QA67eFAOu3hgDrt4cA67eIAOu3iQDrt4oA67eLAOu3jADrt40A67eOAOu3jwDrt5AA67eRAOu3kgDrt5MA67eUAOu3lQDrt5YA67eXAOu3mADrt5kA67eaAOu3mwDrt5wA67edAOu3ngDrt58A67egAOu3oQDrt6IA67ejAOu3pADrt6UA67emAOu3pwDrt6gA67epAOu3qgDrt6sA67esAOu3rQDrt64A67evAOu3sADrt7EA67eyAOu3swDrt7QA67e1AOu3tgDrt7cA67e4AOu3uQDrt7oA67e7AOu3vADrt70A67e+AOu3vwDruIAA67iBAOu4ggDruIMA67iEAOu4hQDruIYA67iHAOu4iADruIkA67iKAOu4iwDruIwA67iNAOu4jgDruI8A67iQAOu4kQDruJIA67iTAOu4lADruJUA67iWAOu4lwDruJgA67iZAOu4mgDruJsA67icAOu4nQDruJ4A67ifAOu4oADruKEA67iiAOu4owDruKQA67ilAOu4pgDruKcA67ioAOu4qQDruKoA67irAOu4rADruK0A67iuAOu4rwDruLAA67ixAOu4sgDruLMA67i0AOu4tQDruLYA67i3AOu4uADruLkA67i6AOu4uwDruLwA67i9AOu4vgDruL8A67mAAOu5gQDruYIA67mDAOu5hADruYUA67mGAOu5hwDruYgA67mJAOu5igDruYsA67mMAOu5jQDruY4A67mPAOu5kADruZEA67mSAOu5kwDruZQA67mVAOu5lgDruZcA67mYAOu5mQDruZoA67mbAOu5nADruZ0A67meAOu5nwDruaAA67mhAOu5ogDruaMA67mkAOu5pQDruaYA67mnAOu5qADruakA67mqAOu5qwDruawA67mtAOu5rgDrua8A67mwAOu5sQDrubIA67mzAOu5tADrubUA67m2AOu5twDrubgA67m5AOu5ugDrubsA67m8AOu5vQDrub4A67m/AOu6gADruoEA67qCAOu6gwDruoQA67qFAOu6hgDruocA67qIAOu6iQDruooA67qLAOu6jADruo0A67qOAOu6jwDrupAA67qRAOu6kgDrupMA67qUAOu6lQDrupYA67qXAOu6mADrupkA67qaAOu6mwDrupwA67qdAOu6ngDrup8A67qgAOu6oQDruqIA67qjAOu6pADruqUA67qmAOu6pwDruqgA67qpAOu6qgDruqsA67qsAOu6rQDruq4A67qvAOu6sADrurEA67qyAOu6swDrurQA67q1AOu6tgDrurcA67q4AOu6uQDruroA67q7AOu6vADrur0A67q+AOu6vwDru4AA67uBAOu7ggDru4MA67uEAOu7hQDru4YA67uHAOu7iADru4kA67uKAOu7iwDru4wA67uNAOu7jgDru48A67uQAOu7kQDru5IA67uTAOu7lADru5UA67uWAOu7lwDru5gA67uZAOu7mgDru5sA67ucAOu7nQDru54A67ufAOu7oADru6EA67uiAOu7owDru6QA67ulAOu7pgDru6cA67uoAOu7qQDru6oA67urAOu7rADru60A67uuAOu7rwDru7AA67uxAOu7sgDru7MA67u0AOu7tQDru7YA67u3AOu7uADru7kA67u6AOu7uwDru7wA67u9AOu7vgDru78A67yAAOu8gQDrvIIA67yDAOu8hADrvIUA67yGAOu8hwDrvIgA67yJAOu8igDrvIsA67yMAOu8jQDrvI4A67yPAOu8kADrvJEA67ySAOu8kwDrvJQA67yVAOu8lgDrvJcA67yYAOu8mQDrvJoA67ybAOu8nADrvJ0A67yeAOu8nwDrvKAA67yhAOu8ogDrvKMA67ykAOu8pQDrvKYA67ynAOu8qADrvKkA67yqAOu8qwDrvKwA67ytAOu8rgDrvK8A67ywAOu8sQDrvLIA67yzAOu8tADrvLUA67y2AOu8twDrvLgA67y5AOu8ugDrvLsA67y8AOu8vQDrvL4A67y/AOu9gADrvYEA672CAOu9gwDrvYQA672FAOu9hgDrvYcA672IAOu9iQDrvYoA672LAOu9jADrvY0A672OAOu9jwDrvZAA672RAOu9kgDrvZMA672UAOu9lQDrvZYA672XAOu9mADrvZkA672aAOu9mwDrvZwA672dAOu9ngDrvZ8A672gAOu9oQDrvaIA672jAOu9pADrvaUA672mAOu9pwDrvagA672pAOu9qgDrvasA672sAOu9rQDrva4A672vAOu9sADrvbEA672yAOu9swDrvbQA6721AOu9tgDrvbcA6724AOu9uQDrvboA6727AOu9vADrvb0A672+AOu9vwDrvoAA676BAOu+ggDrvoMA676EAOu+hQDrvoYA676HAOu+iADrvokA676KAOu+iwDrvowA676NAOu+jgDrvo8A676QAOu+kQDrvpIA676TAOu+lADrvpUA676WAOu+lwDrvpgA676ZAOu+mgDrvpsA676cAOu+nQDrvp4A676fAOu+oADrvqEA676iAOu+owDrvqQA676lAOu+pgDrvqcA676oAOu+qQDrvqoA676rAOu+rADrvq0A676uAOu+rwDrvrAA676xAOu+sgDrvrMA6760AOu+tQDrvrYA6763AOu+uADrvrkA6766AOu+uwDrvrwA6769AOu+vgDrvr8A67+AAOu/gQDrv4IA67+DAOu/hADrv4UA67+GAOu/hwDrv4gA67+JAOu/igDrv4sA67+MAOu/jQDrv44A67+PAOu/kADrv5EA67+SAOu/kwDrv5QA67+VAOu/lgDrv5cA67+YAOu/mQDrv5oA67+bAOu/nADrv50A67+eAOu/nwDrv6AA67+hAOu/ogDrv6MA67+kAOu/pQDrv6YA67+nAOu/qADrv6kA67+qAOu/qwDrv6wA67+tAOu/rgDrv68A67+wAOu/sQDrv7IA67+zAOu/tADrv7UA67+2AOu/twDrv7gA67+5AOu/ugDrv7sA67+8AOu/vQDrv74A67+/AOyAgADsgIEA7ICCAOyAgwDsgIQA7ICFAOyAhgDsgIcA7ICIAOyAiQDsgIoA7ICLAOyAjADsgI0A7ICOAOyAjwDsgJAA7ICRAOyAkgDsgJMA7ICUAOyAlQDsgJYA7ICXAOyAmADsgJkA7ICaAOyAmwDsgJwA7ICdAOyAngDsgJ8A7ICgAOyAoQDsgKIA7ICjAOyApADsgKUA7ICmAOyApwDsgKgA7ICpAOyAqgDsgKsA7ICsAOyArQDsgK4A7ICvAOyAsADsgLEA7ICyAOyAswDsgLQA7IC1AOyAtgDsgLcA7IC4AOyAuQDsgLoA7IC7AOyAvADsgL0A7IC+AOyAvwDsgYAA7IGBAOyBggDsgYMA7IGEAOyBhQDsgYYA7IGHAOyBiADsgYkA7IGKAOyBiwDsgYwA7IGNAOyBjgDsgY8A7IGQAOyBkQDsgZIA7IGTAOyBlADsgZUA7IGWAOyBlwDsgZgA7IGZAOyBmgDsgZsA7IGcAOyBnQDsgZ4A7IGfAOyBoADsgaEA7IGiAOyBowDsgaQA7IGlAOyBpgDsgacA7IGoAOyBqQDsgaoA7IGrAOyBrADsga0A7IGuAOyBrwDsgbAA7IGxAOyBsgDsgbMA7IG0AOyBtQDsgbYA7IG3AOyBuADsgbkA7IG6AOyBuwDsgbwA7IG9AOyBvgDsgb8A7IKAAOyCgQDsgoIA7IKDAOyChADsgoUA7IKGAOyChwDsgogA7IKJAOyCigDsgosA7IKMAOyCjQDsgo4A7IKPAOyCkADsgpEA7IKSAOyCkwDsgpQA7IKVAOyClgDsgpcA7IKYAOyCmQDsgpoA7IKbAOyCnADsgp0A7IKeAOyCnwDsgqAA7IKhAOyCogDsgqMA7IKkAOyCpQDsgqYA7IKnAOyCqADsgqkA7IKqAOyCqwDsgqwA7IKtAOyCrgDsgq8A7IKwAOyCsQDsgrIA7IKzAOyCtADsgrUA7IK2AOyCtwDsgrgA7IK5AOyCugDsgrsA7IK8AOyCvQDsgr4A7IK/AOyDgADsg4EA7IOCAOyDgwDsg4QA7IOFAOyDhgDsg4cA7IOIAOyDiQDsg4oA7IOLAOyDjADsg40A7IOOAOyDjwDsg5AA7IORAOyDkgDsg5MA7IOUAOyDlQDsg5YA7IOXAOyDmADsg5kA7IOaAOyDmwDsg5wA7IOdAOyDngDsg58A7IOgAOyDoQDsg6IA7IOjAOyDpADsg6UA7IOmAOyDpwDsg6gA7IOpAOyDqgDsg6sA7IOsAOyDrQDsg64A7IOvAOyDsADsg7EA7IOyAOyDswDsg7QA7IO1AOyDtgDsg7cA7IO4AOyDuQDsg7oA7IO7AOyDvADsg70A7IO+AOyDvwDshIAA7ISBAOyEggDshIMA7ISEAOyEhQDshIYA7ISHAOyEiADshIkA7ISKAOyEiwDshIwA7ISNAOyEjgDshI8A7ISQAOyEkQDshJIA7ISTAOyElADshJUA7ISWAOyElwDshJgA7ISZAOyEmgDshJsA7IScAOyEnQDshJ4A7ISfAOyEoADshKEA7ISiAOyEowDshKQA7ISlAOyEpgDshKcA7ISoAOyEqQDshKoA7ISrAOyErADshK0A7ISuAOyErwDshLAA7ISxAOyEsgDshLMA7IS0AOyEtQDshLYA7IS3AOyEuADshLkA7IS6AOyEuwDshLwA7IS9AOyEvgDshL8A7IWAAOyFgQDshYIA7IWDAOyFhADshYUA7IWGAOyFhwDshYgA7IWJAOyFigDshYsA7IWMAOyFjQDshY4A7IWPAOyFkADshZEA7IWSAOyFkwDshZQA7IWVAOyFlgDshZcA7IWYAOyFmQDshZoA7IWbAOyFnADshZ0A7IWeAOyFnwDshaAA7IWhAOyFogDshaMA7IWkAOyFpQDshaYA7IWnAOyFqADshakA7IWqAOyFqwDshawA7IWtAOyFrgDsha8A7IWwAOyFsQDshbIA7IWzAOyFtADshbUA7IW2AOyFtwDshbgA7IW5AOyFugDshbsA7IW8AOyFvQDshb4A7IW/AOyGgADshoEA7IaCAOyGgwDshoQA7IaFAOyGhgDshocA7IaIAOyGiQDshooA7IaLAOyGjADsho0A7IaOAOyGjwDshpAA7IaRAOyGkgDshpMA7IaUAOyGlQDshpYA7IaXAOyGmADshpkA7IaaAOyGmwDshpwA7IadAOyGngDshp8A7IagAOyGoQDshqIA7IajAOyGpADshqUA7IamAOyGpwDshqgA7IapAOyGqgDshqsA7IasAOyGrQDshq4A7IavAOyGsADshrEA7IayAOyGswDshrQA7Ia1AOyGtgDshrcA7Ia4AOyGuQDshroA7Ia7AOyGvADshr0A7Ia+AOyGvwDsh4AA7IeBAOyHggDsh4MA7IeEAOyHhQDsh4YA7IeHAOyHiADsh4kA7IeKAOyHiwDsh4wA7IeNAOyHjgDsh48A7IeQAOyHkQDsh5IA7IeTAOyHlADsh5UA7IeWAOyHlwDsh5gA7IeZAOyHmgDsh5sA7IecAOyHnQDsh54A7IefAOyHoADsh6EA7IeiAOyHowDsh6QA7IelAOyHpgDsh6cA7IeoAOyHqQDsh6oA7IerAOyHrADsh60A7IeuAOyHrwDsh7AA7IexAOyHsgDsh7MA7Ie0AOyHtQDsh7YA7Ie3AOyHuADsh7kA7Ie6AOyHuwDsh7wA7Ie9AOyHvgDsh78A7IiAAOyIgQDsiIIA7IiDAOyIhADsiIUA7IiGAOyIhwDsiIgA7IiJAOyIigDsiIsA7IiMAOyIjQDsiI4A7IiPAOyIkADsiJEA7IiSAOyIkwDsiJQA7IiVAOyIlgDsiJcA7IiYAOyImQDsiJoA7IibAOyInADsiJ0A7IieAOyInwDsiKAA7IihAOyIogDsiKMA7IikAOyIpQDsiKYA7IinAOyIqADsiKkA7IiqAOyIqwDsiKwA7IitAOyIrgDsiK8A7IiwAOyIsQDsiLIA7IizAOyItADsiLUA7Ii2AOyItwDsiLgA7Ii5AOyIugDsiLsA7Ii8AOyIvQDsiL4A7Ii/AOyJgADsiYEA7ImCAOyJgwDsiYQA7ImFAOyJhgDsiYcA7ImIAOyJiQDsiYoA7ImLAOyJjADsiY0A7ImOAOyJjwDsiZAA7ImRAOyJkgDsiZMA7ImUAOyJlQDsiZYA7ImXAOyJmADsiZkA7ImaAOyJmwDsiZwA7ImdAOyJngDsiZ8A7ImgAOyJoQDsiaIA7ImjAOyJpADsiaUA7ImmAOyJpwDsiagA7ImpAOyJqgDsiasA7ImsAOyJrQDsia4A7ImvAOyJsADsibEA7ImyAOyJswDsibQA7Im1AOyJtgDsibcA7Im4AOyJuQDsiboA7Im7AOyJvADsib0A7Im+AOyJvwDsioAA7IqBAOyKggDsioMA7IqEAOyKhQDsioYA7IqHAOyKiADsiokA7IqKAOyKiwDsiowA7IqNAOyKjgDsio8A7IqQAOyKkQDsipIA7IqTAOyKlADsipUA7IqWAOyKlwDsipgA7IqZAOyKmgDsipsA7IqcAOyKnQDsip4A7IqfAOyKoADsiqEA7IqiAOyKowDsiqQA7IqlAOyKpgDsiqcA7IqoAOyKqQDsiqoA7IqrAOyKrADsiq0A7IquAOyKrwDsirAA7IqxAOyKsgDsirMA7Iq0AOyKtQDsirYA7Iq3AOyKuADsirkA7Iq6AOyKuwDsirwA7Iq9AOyKvgDsir8A7IuAAOyLgQDsi4IA7IuDAOyLhADsi4UA7IuGAOyLhwDsi4gA7IuJAOyLigDsi4sA7IuMAOyLjQDsi44A7IuPAOyLkADsi5EA7IuSAOyLkwDsi5QA7IuVAOyLlgDsi5cA7IuYAOyLmQDsi5oA7IubAOyLnADsi50A7IueAOyLnwDsi6AA7IuhAOyLogDsi6MA7IukAOyLpQDsi6YA7IunAOyLqADsi6kA7IuqAOyLqwDsi6wA7IutAOyLrgDsi68A7IuwAOyLsQDsi7IA7IuzAOyLtADsi7UA7Iu2AOyLtwDsi7gA7Iu5AOyLugDsi7sA7Iu8AOyLvQDsi74A7Iu/AOyMgADsjIEA7IyCAOyMgwDsjIQA7IyFAOyMhgDsjIcA7IyIAOyMiQDsjIoA7IyLAOyMjADsjI0A7IyOAOyMjwDsjJAA7IyRAOyMkgDsjJMA7IyUAOyMlQDsjJYA7IyXAOyMmADsjJkA7IyaAOyMmwDsjJwA7IydAOyMngDsjJ8A7IygAOyMoQDsjKIA7IyjAOyMpADsjKUA7IymAOyMpwDsjKgA7IypAOyMqgDsjKsA7IysAOyMrQDsjK4A7IyvAOyMsADsjLEA7IyyAOyMswDsjLQA7Iy1AOyMtgDsjLcA7Iy4AOyMuQDsjLoA7Iy7AOyMvADsjL0A7Iy+AOyMvwDsjYAA7I2BAOyNggDsjYMA7I2EAOyNhQDsjYYA7I2HAOyNiADsjYkA7I2KAOyNiwDsjYwA7I2NAOyNjgDsjY8A7I2QAOyNkQDsjZIA7I2TAOyNlADsjZUA7I2WAOyNlwDsjZgA7I2ZAOyNmgDsjZsA7I2cAOyNnQDsjZ4A7I2fAOyNoADsjaEA7I2iAOyNowDsjaQA7I2lAOyNpgDsjacA7I2oAOyNqQDsjaoA7I2rAOyNrADsja0A7I2uAOyNrwDsjbAA7I2xAOyNsgDsjbMA7I20AOyNtQDsjbYA7I23AOyNuADsjbkA7I26AOyNuwDsjbwA7I29AOyNvgDsjb8A7I6AAOyOgQDsjoIA7I6DAOyOhADsjoUA7I6GAOyOhwDsjogA7I6JAOyOigDsjosA7I6MAOyOjQDsjo4A7I6PAOyOkADsjpEA7I6SAOyOkwDsjpQA7I6VAOyOlgDsjpcA7I6YAOyOmQDsjpoA7I6bAOyOnADsjp0A7I6eAOyOnwDsjqAA7I6hAOyOogDsjqMA7I6kAOyOpQDsjqYA7I6nAOyOqADsjqkA7I6qAOyOqwDsjqwA7I6tAOyOrgDsjq8A7I6wAOyOsQDsjrIA7I6zAOyOtADsjrUA7I62AOyOtwDsjrgA7I65AOyOugDsjrsA7I68AOyOvQDsjr4A7I6/AOyPgADsj4EA7I+CAOyPgwDsj4QA7I+FAOyPhgDsj4cA7I+IAOyPiQDsj4oA7I+LAOyPjADsj40A7I+OAOyPjwDsj5AA7I+RAOyPkgDsj5MA7I+UAOyPlQDsj5YA7I+XAOyPmADsj5kA7I+aAOyPmwDsj5wA7I+dAOyPngDsj58A7I+gAOyPoQDsj6IA7I+jAOyPpADsj6UA7I+mAOyPpwDsj6gA7I+pAOyPqgDsj6sA7I+sAOyPrQDsj64A7I+vAOyPsADsj7EA7I+yAOyPswDsj7QA7I+1AOyPtgDsj7cA7I+4AOyPuQDsj7oA7I+7AOyPvADsj70A7I++AOyPvwDskIAA7JCBAOyQggDskIMA7JCEAOyQhQDskIYA7JCHAOyQiADskIkA7JCKAOyQiwDskIwA7JCNAOyQjgDskI8A7JCQAOyQkQDskJIA7JCTAOyQlADskJUA7JCWAOyQlwDskJgA7JCZAOyQmgDskJsA7JCcAOyQnQDskJ4A7JCfAOyQoADskKEA7JCiAOyQowDskKQA7JClAOyQpgDskKcA7JCoAOyQqQDskKoA7JCrAOyQrADskK0A7JCuAOyQrwDskLAA7JCxAOyQsgDskLMA7JC0AOyQtQDskLYA7JC3AOyQuADskLkA7JC6AOyQuwDskLwA7JC9AOyQvgDskL8A7JGAAOyRgQDskYIA7JGDAOyRhADskYUA7JGGAOyRhwDskYgA7JGJAOyRigDskYsA7JGMAOyRjQDskY4A7JGPAOyRkADskZEA7JGSAOyRkwDskZQA7JGVAOyRlgDskZcA7JGYAOyRmQDskZoA7JGbAOyRnADskZ0A7JGeAOyRnwDskaAA7JGhAOyRogDskaMA7JGkAOyRpQDskaYA7JGnAOyRqADskakA7JGqAOyRqwDskawA7JGtAOyRrgDska8A7JGwAOyRsQDskbIA7JGzAOyRtADskbUA7JG2AOyRtwDskbgA7JG5AOyRugDskbsA7JG8AOyRvQDskb4A7JG/AOySgADskoEA7JKCAOySgwDskoQA7JKFAOyShgDskocA7JKIAOySiQDskooA7JKLAOySjADsko0A7JKOAOySjwDskpAA7JKRAOySkgDskpMA7JKUAOySlQDskpYA7JKXAOySmADskpkA7JKaAOySmwDskpwA7JKdAOySngDskp8A7JKgAOySoQDskqIA7JKjAOySpADskqUA7JKmAOySpwDskqgA7JKpAOySqgDskqsA7JKsAOySrQDskq4A7JKvAOySsADskrEA7JKyAOySswDskrQA7JK1AOyStgDskrcA7JK4AOySuQDskroA7JK7AOySvADskr0A7JK+AOySvwDsk4AA7JOBAOyTggDsk4MA7JOEAOyThQDsk4YA7JOHAOyTiADsk4kA7JOKAOyTiwDsk4wA7JONAOyTjgDsk48A7JOQAOyTkQDsk5IA7JOTAOyTlADsk5UA7JOWAOyTlwDsk5gA7JOZAOyTmgDsk5sA7JOcAOyTnQDsk54A7JOfAOyToADsk6EA7JOiAOyTowDsk6QA7JOlAOyTpgDsk6cA7JOoAOyTqQDsk6oA7JOrAOyTrADsk60A7JOuAOyTrwDsk7AA7JOxAOyTsgDsk7MA7JO0AOyTtQDsk7YA7JO3AOyTuADsk7kA7JO6AOyTuwDsk7wA7JO9AOyTvgDsk78A7JSAAOyUgQDslIIA7JSDAOyUhADslIUA7JSGAOyUhwDslIgA7JSJAOyUigDslIsA7JSMAOyUjQDslI4A7JSPAOyUkADslJEA7JSSAOyUkwDslJQA7JSVAOyUlgDslJcA7JSYAOyUmQDslJoA7JSbAOyUnADslJ0A7JSeAOyUnwDslKAA7JShAOyUogDslKMA7JSkAOyUpQDslKYA7JSnAOyUqADslKkA7JSqAOyUqwDslKwA7JStAOyUrgDslK8A7JSwAOyUsQDslLIA7JSzAOyUtADslLUA7JS2AOyUtwDslLgA7JS5AOyUugDslLsA7JS8AOyUvQDslL4A7JS/AOyVgADslYEA7JWCAOyVgwDslYQA7JWFAOyVhgDslYcA7JWIAOyViQDslYoA7JWLAOyVjADslY0A7JWOAOyVjwDslZAA7JWRAOyVkgDslZMA7JWUAOyVlQDslZYA7JWXAOyVmADslZkA7JWaAOyVmwDslZwA7JWdAOyVngDslZ8A7JWgAOyVoQDslaIA7JWjAOyVpADslaUA7JWmAOyVpwDslagA7JWpAOyVqgDslasA7JWsAOyVrQDsla4A7JWvAOyVsADslbEA7JWyAOyVswDslbQA7JW1AOyVtgDslbcA7JW4AOyVuQDslboA7JW7AOyVvADslb0A7JW+AOyVvwDsloAA7JaBAOyWggDsloMA7JaEAOyWhQDsloYA7JaHAOyWiADslokA7JaKAOyWiwDslowA7JaNAOyWjgDslo8A7JaQAOyWkQDslpIA7JaTAOyWlADslpUA7JaWAOyWlwDslpgA7JaZAOyWmgDslpsA7JacAOyWnQDslp4A7JafAOyWoADslqEA7JaiAOyWowDslqQA7JalAOyWpgDslqcA7JaoAOyWqQDslqoA7JarAOyWrADslq0A7JauAOyWrwDslrAA7JaxAOyWsgDslrMA7Ja0AOyWtQDslrYA7Ja3AOyWuADslrkA7Ja6AOyWuwDslrwA7Ja9AOyWvgDslr8A7JeAAOyXgQDsl4IA7JeDAOyXhADsl4UA7JeGAOyXhwDsl4gA7JeJAOyXigDsl4sA7JeMAOyXjQDsl44A7JePAOyXkADsl5EA7JeSAOyXkwDsl5QA7JeVAOyXlgDsl5cA7JeYAOyXmQDsl5oA7JebAOyXnADsl50A7JeeAOyXnwDsl6AA7JehAOyXogDsl6MA7JekAOyXpQDsl6YA7JenAOyXqADsl6kA7JeqAOyXqwDsl6wA7JetAOyXrgDsl68A7JewAOyXsQDsl7IA7JezAOyXtADsl7UA7Je2AOyXtwDsl7gA7Je5AOyXugDsl7sA7Je8AOyXvQDsl74A7Je/AOyYgADsmIEA7JiCAOyYgwDsmIQA7JiFAOyYhgDsmIcA7JiIAOyYiQDsmIoA7JiLAOyYjADsmI0A7JiOAOyYjwDsmJAA7JiRAOyYkgDsmJMA7JiUAOyYlQDsmJYA7JiXAOyYmADsmJkA7JiaAOyYmwDsmJwA7JidAOyYngDsmJ8A7JigAOyYoQDsmKIA7JijAOyYpADsmKUA7JimAOyYpwDsmKgA7JipAOyYqgDsmKsA7JisAOyYrQDsmK4A7JivAOyYsADsmLEA7JiyAOyYswDsmLQA7Ji1AOyYtgDsmLcA7Ji4AOyYuQDsmLoA7Ji7AOyYvADsmL0A7Ji+AOyYvwDsmYAA7JmBAOyZggDsmYMA7JmEAOyZhQDsmYYA7JmHAOyZiADsmYkA7JmKAOyZiwDsmYwA7JmNAOyZjgDsmY8A7JmQAOyZkQDsmZIA7JmTAOyZlADsmZUA7JmWAOyZlwDsmZgA7JmZAOyZmgDsmZsA7JmcAOyZnQDsmZ4A7JmfAOyZoADsmaEA7JmiAOyZowDsmaQA7JmlAOyZpgDsmacA7JmoAOyZqQDsmaoA7JmrAOyZrADsma0A7JmuAOyZrwDsmbAA7JmxAOyZsgDsmbMA7Jm0AOyZtQDsmbYA7Jm3AOyZuADsmbkA7Jm6AOyZuwDsmbwA7Jm9AOyZvgDsmb8A7JqAAOyagQDsmoIA7JqDAOyahADsmoUA7JqGAOyahwDsmogA7JqJAOyaigDsmosA7JqMAOyajQDsmo4A7JqPAOyakADsmpEA7JqSAOyakwDsmpQA7JqVAOyalgDsmpcA7JqYAOyamQDsmpoA7JqbAOyanADsmp0A7JqeAOyanwDsmqAA7JqhAOyaogDsmqMA7JqkAOyapQDsmqYA7JqnAOyaqADsmqkA7JqqAOyaqwDsmqwA7JqtAOyargDsmq8A7JqwAOyasQDsmrIA7JqzAOyatADsmrUA7Jq2AOyatwDsmrgA7Jq5AOyaugDsmrsA7Jq8AOyavQDsmr4A7Jq/AOybgADsm4EA7JuCAOybgwDsm4QA7JuFAOybhgDsm4cA7JuIAOybiQDsm4oA7JuLAOybjADsm40A7JuOAOybjwDsm5AA7JuRAOybkgDsm5MA7JuUAOyblQDsm5YA7JuXAOybmADsm5kA7JuaAOybmwDsm5wA7JudAOybngDsm58A7JugAOyboQDsm6IA7JujAOybpADsm6UA7JumAOybpwDsm6gA7JupAOybqgDsm6sA7JusAOybrQDsm64A7JuvAOybsADsm7EA7JuyAOybswDsm7QA7Ju1AOybtgDsm7cA7Ju4AOybuQDsm7oA7Ju7AOybvADsm70A7Ju+AOybvwDsnIAA7JyBAOycggDsnIMA7JyEAOychQDsnIYA7JyHAOyciADsnIkA7JyKAOyciwDsnIwA7JyNAOycjgDsnI8A7JyQAOyckQDsnJIA7JyTAOyclADsnJUA7JyWAOyclwDsnJgA7JyZAOycmgDsnJsA7JycAOycnQDsnJ4A7JyfAOycoADsnKEA7JyiAOycowDsnKQA7JylAOycpgDsnKcA7JyoAOycqQDsnKoA7JyrAOycrADsnK0A7JyuAOycrwDsnLAA7JyxAOycsgDsnLMA7Jy0AOyctQDsnLYA7Jy3AOycuADsnLkA7Jy6AOycuwDsnLwA7Jy9AOycvgDsnL8A7J2AAOydgQDsnYIA7J2DAOydhADsnYUA7J2GAOydhwDsnYgA7J2JAOydigDsnYsA7J2MAOydjQDsnY4A7J2PAOydkADsnZEA7J2SAOydkwDsnZQA7J2VAOydlgDsnZcA7J2YAOydmQDsnZoA7J2bAOydnADsnZ0A7J2eAOydnwDsnaAA7J2hAOydogDsnaMA7J2kAOydpQDsnaYA7J2nAOydqADsnakA7J2qAOydqwDsnawA7J2tAOydrgDsna8A7J2wAOydsQDsnbIA7J2zAOydtADsnbUA7J22AOydtwDsnbgA7J25AOydugDsnbsA7J28AOydvQDsnb4A7J2/AOyegADsnoEA7J6CAOyegwDsnoQA7J6FAOyehgDsnocA7J6IAOyeiQDsnooA7J6LAOyejADsno0A7J6OAOyejwDsnpAA7J6RAOyekgDsnpMA7J6UAOyelQDsnpYA7J6XAOyemADsnpkA7J6aAOyemwDsnpwA7J6dAOyengDsnp8A7J6gAOyeoQDsnqIA7J6jAOyepADsnqUA7J6mAOyepwDsnqgA7J6pAOyeqgDsnqsA7J6sAOyerQDsnq4A7J6vAOyesADsnrEA7J6yAOyeswDsnrQA7J61AOyetgDsnrcA7J64AOyeuQDsnroA7J67AOyevADsnr0A7J6+AOyevwDsn4AA7J+BAOyfggDsn4MA7J+EAOyfhQDsn4YA7J+HAOyfiADsn4kA7J+KAOyfiwDsn4wA7J+NAOyfjgDsn48A7J+QAOyfkQDsn5IA7J+TAOyflADsn5UA7J+WAOyflwDsn5gA7J+ZAOyfmgDsn5sA7J+cAOyfnQDsn54A7J+fAOyfoADsn6EA7J+iAOyfowDsn6QA7J+lAOyfpgDsn6cA7J+oAOyfqQDsn6oA7J+rAOyfrADsn60A7J+uAOyfrwDsn7AA7J+xAOyfsgDsn7MA7J+0AOyftQDsn7YA7J+3AOyfuADsn7kA7J+6AOyfuwDsn7wA7J+9AOyfvgDsn78A7KCAAOyggQDsoIIA7KCDAOyghADsoIUA7KCGAOyghwDsoIgA7KCJAOygigDsoIsA7KCMAOygjQDsoI4A7KCPAOygkADsoJEA7KCSAOygkwDsoJQA7KCVAOyglgDsoJcA7KCYAOygmQDsoJoA7KCbAOygnADsoJ0A7KCeAOygnwDsoKAA7KChAOygogDsoKMA7KCkAOygpQDsoKYA7KCnAOygqADsoKkA7KCqAOygqwDsoKwA7KCtAOygrgDsoK8A7KCwAOygsQDsoLIA7KCzAOygtADsoLUA7KC2AOygtwDsoLgA7KC5AOygugDsoLsA7KC8AOygvQDsoL4A7KC/AOyhgADsoYEA7KGCAOyhgwDsoYQA7KGFAOyhhgDsoYcA7KGIAOyhiQDsoYoA7KGLAOyhjADsoY0A7KGOAOyhjwDsoZAA7KGRAOyhkgDsoZMA7KGUAOyhlQDsoZYA7KGXAOyhmADsoZkA7KGaAOyhmwDsoZwA7KGdAOyhngDsoZ8A7KGgAOyhoQDsoaIA7KGjAOyhpADsoaUA7KGmAOyhpwDsoagA7KGpAOyhqgDsoasA7KGsAOyhrQDsoa4A7KGvAOyhsADsobEA7KGyAOyhswDsobQA7KG1AOyhtgDsobcA7KG4AOyhuQDsoboA7KG7AOyhvADsob0A7KG+AOyhvwDsooAA7KKBAOyiggDsooMA7KKEAOyihQDsooYA7KKHAOyiiADsookA7KKKAOyiiwDsoowA7KKNAOyijgDsoo8A7KKQAOyikQDsopIA7KKTAOyilADsopUA7KKWAOyilwDsopgA7KKZAOyimgDsopsA7KKcAOyinQDsop4A7KKfAOyioADsoqEA7KKiAOyiowDsoqQA7KKlAOyipgDsoqcA7KKoAOyiqQDsoqoA7KKrAOyirADsoq0A7KKuAOyirwDsorAA7KKxAOyisgDsorMA7KK0AOyitQDsorYA7KK3AOyiuADsorkA7KK6AOyiuwDsorwA7KK9AOyivgDsor8A7KOAAOyjgQDso4IA7KODAOyjhADso4UA7KOGAOyjhwDso4gA7KOJAOyjigDso4sA7KOMAOyjjQDso44A7KOPAOyjkADso5EA7KOSAOyjkwDso5QA7KOVAOyjlgDso5cA7KOYAOyjmQDso5oA7KObAOyjnADso50A7KOeAOyjnwDso6AA7KOhAOyjogDso6MA7KOkAOyjpQDso6YA7KOnAOyjqADso6kA7KOqAOyjqwDso6wA7KOtAOyjrgDso68A7KOwAOyjsQDso7IA7KOzAOyjtADso7UA7KO2AOyjtwDso7gA7KO5AOyjugDso7sA7KO8AOyjvOydmADso70A7KO+AOyjvwDspIAA7KSBAOykggDspIMA7KSEAOykhQDspIYA7KSHAOykiADspIkA7KSKAOykiwDspIwA7KSNAOykjgDspI8A7KSQAOykkQDspJIA7KSTAOyklADspJUA7KSWAOyklwDspJgA7KSZAOykmgDspJsA7KScAOyknQDspJ4A7KSfAOykoADspKEA7KSiAOykowDspKQA7KSlAOykpgDspKcA7KSoAOykqQDspKoA7KSrAOykrADspK0A7KSuAOykrwDspLAA7KSxAOyksgDspLMA7KS0AOyktQDspLYA7KS3AOykuADspLkA7KS6AOykuwDspLwA7KS9AOykvgDspL8A7KWAAOylgQDspYIA7KWDAOylhADspYUA7KWGAOylhwDspYgA7KWJAOyligDspYsA7KWMAOyljQDspY4A7KWPAOylkADspZEA7KWSAOylkwDspZQA7KWVAOyllgDspZcA7KWYAOylmQDspZoA7KWbAOylnADspZ0A7KWeAOylnwDspaAA7KWhAOylogDspaMA7KWkAOylpQDspaYA7KWnAOylqADspakA7KWqAOylqwDspawA7KWtAOylrgDspa8A7KWwAOylsQDspbIA7KWzAOyltADspbUA7KW2AOyltwDspbgA7KW5AOylugDspbsA7KW8AOylvQDspb4A7KW/AOymgADspoEA7KaCAOymgwDspoQA7KaFAOymhgDspocA7KaIAOymiQDspooA7KaLAOymjADspo0A7KaOAOymjwDsppAA7KaRAOymkgDsppMA7KaUAOymlQDsppYA7KaXAOymmADsppkA7KaaAOymmwDsppwA7KadAOymngDspp8A7KagAOymoQDspqIA7KajAOympADspqUA7KamAOympwDspqgA7KapAOymqgDspqsA7KasAOymrQDspq4A7KavAOymsADsprEA7KayAOymswDsprQA7Ka1AOymtgDsprcA7Ka4AOymuQDsproA7Ka7AOymvADspr0A7Ka+AOymvwDsp4AA7KeBAOynggDsp4MA7KeEAOynhQDsp4YA7KeHAOyniADsp4kA7KeKAOyniwDsp4wA7KeNAOynjgDsp48A7KeQAOynkQDsp5IA7KeTAOynlADsp5UA7KeWAOynlwDsp5gA7KeZAOynmgDsp5sA7KecAOynnQDsp54A7KefAOynoADsp6EA7KeiAOynowDsp6QA7KelAOynpgDsp6cA7KeoAOynqQDsp6oA7KerAOynrADsp60A7KeuAOynrwDsp7AA7KexAOynsgDsp7MA7Ke0AOyntQDsp7YA7Ke3AOynuADsp7kA7Ke6AOynuwDsp7wA7Ke9AOynvgDsp78A7KiAAOyogQDsqIIA7KiDAOyohADsqIUA7KiGAOyohwDsqIgA7KiJAOyoigDsqIsA7KiMAOyojQDsqI4A7KiPAOyokADsqJEA7KiSAOyokwDsqJQA7KiVAOyolgDsqJcA7KiYAOyomQDsqJoA7KibAOyonADsqJ0A7KieAOyonwDsqKAA7KihAOyoogDsqKMA7KikAOyopQDsqKYA7KinAOyoqADsqKkA7KiqAOyoqwDsqKwA7KitAOyorgDsqK8A7KiwAOyosQDsqLIA7KizAOyotADsqLUA7Ki2AOyotwDsqLgA7Ki5AOyougDsqLsA7Ki8AOyovQDsqL4A7Ki/AOypgADsqYEA7KmCAOypgwDsqYQA7KmFAOyphgDsqYcA7KmIAOypiQDsqYoA7KmLAOypjADsqY0A7KmOAOypjwDsqZAA7KmRAOypkgDsqZMA7KmUAOyplQDsqZYA7KmXAOypmADsqZkA7KmaAOypmwDsqZwA7KmdAOypngDsqZ8A7KmgAOypoQDsqaIA7KmjAOyppADsqaUA7KmmAOyppwDsqagA7KmpAOypqgDsqasA7KmsAOyprQDsqa4A7KmvAOypsADsqbEA7KmyAOypswDsqbQA7Km1AOyptgDsqbcA7Km4AOypuQDsqboA7Km7AOypvADsqb0A7Km+AOypvwDsqoAA7KqBAOyqggDsqoMA7KqEAOyqhQDsqoYA7KqHAOyqiADsqokA7KqKAOyqiwDsqowA7KqNAOyqjgDsqo8A7KqQAOyqkQDsqpIA7KqTAOyqlADsqpUA7KqWAOyqlwDsqpgA7KqZAOyqmgDsqpsA7KqcAOyqnQDsqp4A7KqfAOyqoADsqqEA7KqiAOyqowDsqqQA7KqlAOyqpgDsqqcA7KqoAOyqqQDsqqoA7KqrAOyqrADsqq0A7KquAOyqrwDsqrAA7KqxAOyqsgDsqrMA7Kq0AOyqtQDsqrYA7Kq3AOyquADsqrkA7Kq6AOyquwDsqrwA7Kq9AOyqvgDsqr8A7KuAAOyrgQDsq4IA7KuDAOyrhADsq4UA7KuGAOyrhwDsq4gA7KuJAOyrigDsq4sA7KuMAOyrjQDsq44A7KuPAOyrkADsq5EA7KuSAOyrkwDsq5QA7KuVAOyrlgDsq5cA7KuYAOyrmQDsq5oA7KubAOyrnADsq50A7KueAOyrnwDsq6AA7KuhAOyrogDsq6MA7KukAOyrpQDsq6YA7KunAOyrqADsq6kA7KuqAOyrqwDsq6wA7KutAOyrrgDsq68A7KuwAOyrsQDsq7IA7KuzAOyrtADsq7UA7Ku2AOyrtwDsq7gA7Ku5AOyrugDsq7sA7Ku8AOyrvQDsq74A7Ku/AOysgADsrIEA7KyCAOysgwDsrIQA7KyFAOyshgDsrIcA7KyIAOysiQDsrIoA7KyLAOysjADsrI0A7KyOAOysjwDsrJAA7KyRAOyskgDsrJMA7KyUAOyslQDsrJYA7KyXAOysmADsrJkA7KyaAOysmwDsrJwA7KydAOysngDsrJ8A7KygAOysoQDsrKIA7KyjAOyspADsrKUA7KymAOyspwDsrKgA7KypAOysqgDsrKsA7KysAOysrQDsrK4A7KyvAOyssADsrLEA7KyyAOysswDsrLQA7Ky1AOystgDsrLcA7Ky4AOysuQDsrLoA7Ky7AOysvADsrL0A7Ky+AOysvwDsrYAA7K2BAOytggDsrYMA7K2EAOythQDsrYYA7K2HAOytiADsrYkA7K2KAOytiwDsrYwA7K2NAOytjgDsrY8A7K2QAOytkQDsrZIA7K2TAOytlADsrZUA7K2WAOytlwDsrZgA7K2ZAOytmgDsrZsA7K2cAOytnQDsrZ4A7K2fAOytoADsraEA7K2iAOytowDsraQA7K2lAOytpgDsracA7K2oAOytqQDsraoA7K2rAOytrADsra0A7K2uAOytrwDsrbAA7K2xAOytsgDsrbMA7K20AOyttQDsrbYA7K23AOytuADsrbkA7K26AOytuwDsrbwA7K29AOytvgDsrb8A7K6AAOyugQDsroIA7K6DAOyuhADsroUA7K6GAOyuhwDsrogA7K6JAOyuigDsrosA7K6MAOyujQDsro4A7K6PAOyukADsrpEA7K6SAOyukwDsrpQA7K6VAOyulgDsrpcA7K6YAOyumQDsrpoA7K6bAOyunADsrp0A7K6eAOyunwDsrqAA7K6hAOyuogDsrqMA7K6kAOyupQDsrqYA7K6nAOyuqADsrqkA7K6qAOyuqwDsrqwA7K6tAOyurgDsrq8A7K6wAOyusQDsrrIA7K6zAOyutADsrrUA7K62AOyutwDsrrgA7K65AOyuugDsrrsA7K68AOyuvQDsrr4A7K6/AOyvgADsr4EA7K+CAOyvgwDsr4QA7K+FAOyvhgDsr4cA7K+IAOyviQDsr4oA7K+LAOyvjADsr40A7K+OAOyvjwDsr5AA7K+RAOyvkgDsr5MA7K+UAOyvlQDsr5YA7K+XAOyvmADsr5kA7K+aAOyvmwDsr5wA7K+dAOyvngDsr58A7K+gAOyvoQDsr6IA7K+jAOyvpADsr6UA7K+mAOyvpwDsr6gA7K+pAOyvqgDsr6sA7K+sAOyvrQDsr64A7K+vAOyvsADsr7EA7K+yAOyvswDsr7QA7K+1AOyvtgDsr7cA7K+4AOyvuQDsr7oA7K+7AOyvvADsr70A7K++AOyvvwDssIAA7LCBAOywggDssIMA7LCEAOywhQDssIYA7LCHAOywiADssIkA7LCKAOywiwDssIwA7LCNAOywjgDssI8A7LCQAOywkQDssJIA7LCTAOywlADssJUA7LCWAOywlwDssJgA7LCZAOywmgDssJsA7LCcAOywnQDssJ4A7LCfAOywoADssKEA7LCiAOywowDssKQA7LClAOywpgDssKcA7LCoAOywqQDssKoA7LCrAOywrADssK0A7LCuAOywrwDssLAA7LCxAOywsgDssLMA7LC0AOywtQDssLYA7LC3AOywuADssLjqs6AA7LC5AOywugDssLsA7LC8AOywvQDssL4A7LC/AOyxgADssYEA7LGCAOyxgwDssYQA7LGFAOyxhgDssYcA7LGIAOyxiQDssYoA7LGLAOyxjADssY0A7LGOAOyxjwDssZAA7LGRAOyxkgDssZMA7LGUAOyxlQDssZYA7LGXAOyxmADssZkA7LGaAOyxmwDssZwA7LGdAOyxngDssZ8A7LGgAOyxoQDssaIA7LGjAOyxpADssaUA7LGmAOyxpwDssagA7LGpAOyxqgDssasA7LGsAOyxrQDssa4A7LGvAOyxsADssbEA7LGyAOyxswDssbQA7LG1AOyxtgDssbcA7LG4AOyxuQDssboA7LG7AOyxvADssb0A7LG+AOyxvwDssoAA7LKBAOyyggDssoMA7LKEAOyyhQDssoYA7LKHAOyyiADssokA7LKKAOyyiwDssowA7LKNAOyyjgDsso8A7LKQAOyykQDsspIA7LKTAOyylADsspUA7LKWAOyylwDsspgA7LKZAOyymgDsspsA7LKcAOyynQDssp4A7LKfAOyyoADssqEA7LKiAOyyowDssqQA7LKlAOyypgDssqcA7LKoAOyyqQDssqoA7LKrAOyyrADssq0A7LKuAOyyrwDssrAA7LKxAOyysgDssrMA7LK0AOyytQDssrYA7LK3AOyyuADssrkA7LK6AOyyuwDssrwA7LK9AOyyvgDssr8A7LOAAOyzgQDss4IA7LODAOyzhADss4UA7LOGAOyzhwDss4gA7LOJAOyzigDss4sA7LOMAOyzjQDss44A7LOPAOyzkADss5EA7LOSAOyzkwDss5QA7LOVAOyzlgDss5cA7LOYAOyzmQDss5oA7LObAOyznADss50A7LOeAOyznwDss6AA7LOhAOyzogDss6MA7LOkAOyzpQDss6YA7LOnAOyzqADss6kA7LOqAOyzqwDss6wA7LOtAOyzrgDss68A7LOwAOyzsQDss7IA7LOzAOyztADss7UA7LO2AOyztwDss7gA7LO5AOyzugDss7sA7LO8AOyzvQDss74A7LO/AOy0gADstIEA7LSCAOy0gwDstIQA7LSFAOy0hgDstIcA7LSIAOy0iQDstIoA7LSLAOy0jADstI0A7LSOAOy0jwDstJAA7LSRAOy0kgDstJMA7LSUAOy0lQDstJYA7LSXAOy0mADstJkA7LSaAOy0mwDstJwA7LSdAOy0ngDstJ8A7LSgAOy0oQDstKIA7LSjAOy0pADstKUA7LSmAOy0pwDstKgA7LSpAOy0qgDstKsA7LSsAOy0rQDstK4A7LSvAOy0sADstLEA7LSyAOy0swDstLQA7LS1AOy0tgDstLcA7LS4AOy0uQDstLoA7LS7AOy0vADstL0A7LS+AOy0vwDstYAA7LWBAOy1ggDstYMA7LWEAOy1hQDstYYA7LWHAOy1iADstYkA7LWKAOy1iwDstYwA7LWNAOy1jgDstY8A7LWQAOy1kQDstZIA7LWTAOy1lADstZUA7LWWAOy1lwDstZgA7LWZAOy1mgDstZsA7LWcAOy1nQDstZ4A7LWfAOy1oADstaEA7LWiAOy1owDstaQA7LWlAOy1pgDstacA7LWoAOy1qQDstaoA7LWrAOy1rADsta0A7LWuAOy1rwDstbAA7LWxAOy1sgDstbMA7LW0AOy1tQDstbYA7LW3AOy1uADstbkA7LW6AOy1uwDstbwA7LW9AOy1vgDstb8A7LaAAOy2gQDstoIA7LaDAOy2hADstoUA7LaGAOy2hwDstogA7LaJAOy2igDstosA7LaMAOy2jQDsto4A7LaPAOy2kADstpEA7LaSAOy2kwDstpQA7LaVAOy2lgDstpcA7LaYAOy2mQDstpoA7LabAOy2nADstp0A7LaeAOy2nwDstqAA7LahAOy2ogDstqMA7LakAOy2pQDstqYA7LanAOy2qADstqkA7LaqAOy2qwDstqwA7LatAOy2rgDstq8A7LawAOy2sQDstrIA7LazAOy2tADstrUA7La2AOy2twDstrgA7La5AOy2ugDstrsA7La8AOy2vQDstr4A7La/AOy3gADst4EA7LeCAOy3gwDst4QA7LeFAOy3hgDst4cA7LeIAOy3iQDst4oA7LeLAOy3jADst40A7LeOAOy3jwDst5AA7LeRAOy3kgDst5MA7LeUAOy3lQDst5YA7LeXAOy3mADst5kA7LeaAOy3mwDst5wA7LedAOy3ngDst58A7LegAOy3oQDst6IA7LejAOy3pADst6UA7LemAOy3pwDst6gA7LepAOy3qgDst6sA7LesAOy3rQDst64A7LevAOy3sADst7EA7LeyAOy3swDst7QA7Le1AOy3tgDst7cA7Le4AOy3uQDst7oA7Le7AOy3vADst70A7Le+AOy3vwDsuIAA7LiBAOy4ggDsuIMA7LiEAOy4hQDsuIYA7LiHAOy4iADsuIkA7LiKAOy4iwDsuIwA7LiNAOy4jgDsuI8A7LiQAOy4kQDsuJIA7LiTAOy4lADsuJUA7LiWAOy4lwDsuJgA7LiZAOy4mgDsuJsA7LicAOy4nQDsuJ4A7LifAOy4oADsuKEA7LiiAOy4owDsuKQA7LilAOy4pgDsuKcA7LioAOy4qQDsuKoA7LirAOy4rADsuK0A7LiuAOy4rwDsuLAA7LixAOy4sgDsuLMA7Li0AOy4tQDsuLYA7Li3AOy4uADsuLkA7Li6AOy4uwDsuLwA7Li9AOy4vgDsuL8A7LmAAOy5gQDsuYIA7LmDAOy5hADsuYUA7LmGAOy5hwDsuYgA7LmJAOy5igDsuYsA7LmMAOy5jQDsuY4A7LmPAOy5kADsuZEA7LmSAOy5kwDsuZQA7LmVAOy5lgDsuZcA7LmYAOy5mQDsuZoA7LmbAOy5nADsuZ0A7LmeAOy5nwDsuaAA7LmhAOy5ogDsuaMA7LmkAOy5pQDsuaYA7LmnAOy5qADsuakA7LmqAOy5qwDsuawA7LmtAOy5rgDsua8A7LmwAOy5sQDsubIA7LmzAOy5tADsubUA7Lm2AOy5twDsubgA7Lm5AOy5ugDsubsA7Lm8AOy5vQDsub4A7Lm/AOy6gADsuoEA7LqCAOy6gwDsuoQA7LqFAOy6hgDsuocA7LqIAOy6iQDsuooA7LqLAOy6jADsuo0A7LqOAOy6jwDsupAA7LqRAOy6kgDsupMA7LqUAOy6lQDsupYA7LqXAOy6mADsupkA7LqaAOy6mwDsupwA7LqdAOy6ngDsup8A7LqgAOy6oQDsuqIA7LqjAOy6pADsuqUA7LqmAOy6pwDsuqgA7LqpAOy6qgDsuqsA7LqsAOy6rQDsuq4A7LqvAOy6sADsurEA7LqyAOy6swDsurQA7Lq1AOy6tgDsurcA7Lq4AOy6uQDsuroA7Lq7AOy6vADsur0A7Lq+AOy6vwDsu4AA7LuBAOy7ggDsu4MA7LuEAOy7hQDsu4YA7LuHAOy7iADsu4kA7LuKAOy7iwDsu4wA7LuNAOy7jgDsu48A7LuQAOy7kQDsu5IA7LuTAOy7lADsu5UA7LuWAOy7lwDsu5gA7LuZAOy7mgDsu5sA7LucAOy7nQDsu54A7LufAOy7oADsu6EA7LuiAOy7owDsu6QA7LulAOy7pgDsu6cA7LuoAOy7qQDsu6oA7LurAOy7rADsu60A7LuuAOy7rwDsu7AA7LuxAOy7sgDsu7MA7Lu0AOy7tQDsu7YA7Lu3AOy7uADsu7kA7Lu6AOy7uwDsu7wA7Lu9AOy7vgDsu78A7LyAAOy8gQDsvIIA7LyDAOy8hADsvIUA7LyGAOy8hwDsvIgA7LyJAOy8igDsvIsA7LyMAOy8jQDsvI4A7LyPAOy8kADsvJEA7LySAOy8kwDsvJQA7LyVAOy8lgDsvJcA7LyYAOy8mQDsvJoA7LybAOy8nADsvJ0A7LyeAOy8nwDsvKAA7LyhAOy8ogDsvKMA7LykAOy8pQDsvKYA7LynAOy8qADsvKkA7LyqAOy8qwDsvKwA7LytAOy8rgDsvK8A7LywAOy8sQDsvLIA7LyzAOy8tADsvLUA7Ly2AOy8twDsvLgA7Ly5AOy8ugDsvLsA7Ly8AOy8vQDsvL4A7Ly/AOy9gADsvYEA7L2CAOy9gwDsvYQA7L2FAOy9hgDsvYcA7L2IAOy9iQDsvYoA7L2LAOy9jADsvY0A7L2OAOy9jwDsvZAA7L2RAOy9kgDsvZMA7L2UAOy9lQDsvZYA7L2XAOy9mADsvZkA7L2aAOy9mwDsvZwA7L2dAOy9ngDsvZ8A7L2gAOy9oQDsvaIA7L2jAOy9pADsvaUA7L2mAOy9pwDsvagA7L2pAOy9qgDsvasA7L2sAOy9rQDsva4A7L2vAOy9sADsvbEA7L2yAOy9swDsvbQA7L21AOy9tgDsvbcA7L24AOy9uQDsvboA7L27AOy9vADsvb0A7L2+AOy9vwDsvoAA7L6BAOy+ggDsvoMA7L6EAOy+hQDsvoYA7L6HAOy+iADsvokA7L6KAOy+iwDsvowA7L6NAOy+jgDsvo8A7L6QAOy+kQDsvpIA7L6TAOy+lADsvpUA7L6WAOy+lwDsvpgA7L6ZAOy+mgDsvpsA7L6cAOy+nQDsvp4A7L6fAOy+oADsvqEA7L6iAOy+owDsvqQA7L6lAOy+pgDsvqcA7L6oAOy+qQDsvqoA7L6rAOy+rADsvq0A7L6uAOy+rwDsvrAA7L6xAOy+sgDsvrMA7L60AOy+tQDsvrYA7L63AOy+uADsvrkA7L66AOy+uwDsvrwA7L69AOy+vgDsvr8A7L+AAOy/gQDsv4IA7L+DAOy/hADsv4UA7L+GAOy/hwDsv4gA7L+JAOy/igDsv4sA7L+MAOy/jQDsv44A7L+PAOy/kADsv5EA7L+SAOy/kwDsv5QA7L+VAOy/lgDsv5cA7L+YAOy/mQDsv5oA7L+bAOy/nADsv50A7L+eAOy/nwDsv6AA7L+hAOy/ogDsv6MA7L+kAOy/pQDsv6YA7L+nAOy/qADsv6kA7L+qAOy/qwDsv6wA7L+tAOy/rgDsv68A7L+wAOy/sQDsv7IA7L+zAOy/tADsv7UA7L+2AOy/twDsv7gA7L+5AOy/ugDsv7sA7L+8AOy/vQDsv74A7L+/AO2AgADtgIEA7YCCAO2AgwDtgIQA7YCFAO2AhgDtgIcA7YCIAO2AiQDtgIoA7YCLAO2AjADtgI0A7YCOAO2AjwDtgJAA7YCRAO2AkgDtgJMA7YCUAO2AlQDtgJYA7YCXAO2AmADtgJkA7YCaAO2AmwDtgJwA7YCdAO2AngDtgJ8A7YCgAO2AoQDtgKIA7YCjAO2ApADtgKUA7YCmAO2ApwDtgKgA7YCpAO2AqgDtgKsA7YCsAO2ArQDtgK4A7YCvAO2AsADtgLEA7YCyAO2AswDtgLQA7YC1AO2AtgDtgLcA7YC4AO2AuQDtgLoA7YC7AO2AvADtgL0A7YC+AO2AvwDtgYAA7YGBAO2BggDtgYMA7YGEAO2BhQDtgYYA7YGHAO2BiADtgYkA7YGKAO2BiwDtgYwA7YGNAO2BjgDtgY8A7YGQAO2BkQDtgZIA7YGTAO2BlADtgZUA7YGWAO2BlwDtgZgA7YGZAO2BmgDtgZsA7YGcAO2BnQDtgZ4A7YGfAO2BoADtgaEA7YGiAO2BowDtgaQA7YGlAO2BpgDtgacA7YGoAO2BqQDtgaoA7YGrAO2BrADtga0A7YGuAO2BrwDtgbAA7YGxAO2BsgDtgbMA7YG0AO2BtQDtgbYA7YG3AO2BuADtgbkA7YG6AO2BuwDtgbwA7YG9AO2BvgDtgb8A7YKAAO2CgQDtgoIA7YKDAO2ChADtgoUA7YKGAO2ChwDtgogA7YKJAO2CigDtgosA7YKMAO2CjQDtgo4A7YKPAO2CkADtgpEA7YKSAO2CkwDtgpQA7YKVAO2ClgDtgpcA7YKYAO2CmQDtgpoA7YKbAO2CnADtgp0A7YKeAO2CnwDtgqAA7YKhAO2CogDtgqMA7YKkAO2CpQDtgqYA7YKnAO2CqADtgqkA7YKqAO2CqwDtgqwA7YKtAO2CrgDtgq8A7YKwAO2CsQDtgrIA7YKzAO2CtADtgrUA7YK2AO2CtwDtgrgA7YK5AO2CugDtgrsA7YK8AO2CvQDtgr4A7YK/AO2DgADtg4EA7YOCAO2DgwDtg4QA7YOFAO2DhgDtg4cA7YOIAO2DiQDtg4oA7YOLAO2DjADtg40A7YOOAO2DjwDtg5AA7YORAO2DkgDtg5MA7YOUAO2DlQDtg5YA7YOXAO2DmADtg5kA7YOaAO2DmwDtg5wA7YOdAO2DngDtg58A7YOgAO2DoQDtg6IA7YOjAO2DpADtg6UA7YOmAO2DpwDtg6gA7YOpAO2DqgDtg6sA7YOsAO2DrQDtg64A7YOvAO2DsADtg7EA7YOyAO2DswDtg7QA7YO1AO2DtgDtg7cA7YO4AO2DuQDtg7oA7YO7AO2DvADtg70A7YO+AO2DvwDthIAA7YSBAO2EggDthIMA7YSEAO2EhQDthIYA7YSHAO2EiADthIkA7YSKAO2EiwDthIwA7YSNAO2EjgDthI8A7YSQAO2EkQDthJIA7YSTAO2ElADthJUA7YSWAO2ElwDthJgA7YSZAO2EmgDthJsA7YScAO2EnQDthJ4A7YSfAO2EoADthKEA7YSiAO2EowDthKQA7YSlAO2EpgDthKcA7YSoAO2EqQDthKoA7YSrAO2ErADthK0A7YSuAO2ErwDthLAA7YSxAO2EsgDthLMA7YS0AO2EtQDthLYA7YS3AO2EuADthLkA7YS6AO2EuwDthLwA7YS9AO2EvgDthL8A7YWAAO2FgQDthYIA7YWDAO2FhADthYUA7YWGAO2FhwDthYgA7YWJAO2FigDthYsA7YWMAO2FjQDthY4A7YWPAO2FkADthZEA7YWSAO2FkwDthZQA7YWVAO2FlgDthZcA7YWYAO2FmQDthZoA7YWbAO2FnADthZ0A7YWeAO2FnwDthaAA7YWhAO2FogDthaMA7YWkAO2FpQDthaYA7YWnAO2FqADthakA7YWqAO2FqwDthawA7YWtAO2FrgDtha8A7YWwAO2FsQDthbIA7YWzAO2FtADthbUA7YW2AO2FtwDthbgA7YW5AO2FugDthbsA7YW8AO2FvQDthb4A7YW/AO2GgADthoEA7YaCAO2GgwDthoQA7YaFAO2GhgDthocA7YaIAO2GiQDthooA7YaLAO2GjADtho0A7YaOAO2GjwDthpAA7YaRAO2GkgDthpMA7YaUAO2GlQDthpYA7YaXAO2GmADthpkA7YaaAO2GmwDthpwA7YadAO2GngDthp8A7YagAO2GoQDthqIA7YajAO2GpADthqUA7YamAO2GpwDthqgA7YapAO2GqgDthqsA7YasAO2GrQDthq4A7YavAO2GsADthrEA7YayAO2GswDthrQA7Ya1AO2GtgDthrcA7Ya4AO2GuQDthroA7Ya7AO2GvADthr0A7Ya+AO2GvwDth4AA7YeBAO2HggDth4MA7YeEAO2HhQDth4YA7YeHAO2HiADth4kA7YeKAO2HiwDth4wA7YeNAO2HjgDth48A7YeQAO2HkQDth5IA7YeTAO2HlADth5UA7YeWAO2HlwDth5gA7YeZAO2HmgDth5sA7YecAO2HnQDth54A7YefAO2HoADth6EA7YeiAO2HowDth6QA7YelAO2HpgDth6cA7YeoAO2HqQDth6oA7YerAO2HrADth60A7YeuAO2HrwDth7AA7YexAO2HsgDth7MA7Ye0AO2HtQDth7YA7Ye3AO2HuADth7kA7Ye6AO2HuwDth7wA7Ye9AO2HvgDth78A7YiAAO2IgQDtiIIA7YiDAO2IhADtiIUA7YiGAO2IhwDtiIgA7YiJAO2IigDtiIsA7YiMAO2IjQDtiI4A7YiPAO2IkADtiJEA7YiSAO2IkwDtiJQA7YiVAO2IlgDtiJcA7YiYAO2ImQDtiJoA7YibAO2InADtiJ0A7YieAO2InwDtiKAA7YihAO2IogDtiKMA7YikAO2IpQDtiKYA7YinAO2IqADtiKkA7YiqAO2IqwDtiKwA7YitAO2IrgDtiK8A7YiwAO2IsQDtiLIA7YizAO2ItADtiLUA7Yi2AO2ItwDtiLgA7Yi5AO2IugDtiLsA7Yi8AO2IvQDtiL4A7Yi/AO2JgADtiYEA7YmCAO2JgwDtiYQA7YmFAO2JhgDtiYcA7YmIAO2JiQDtiYoA7YmLAO2JjADtiY0A7YmOAO2JjwDtiZAA7YmRAO2JkgDtiZMA7YmUAO2JlQDtiZYA7YmXAO2JmADtiZkA7YmaAO2JmwDtiZwA7YmdAO2JngDtiZ8A7YmgAO2JoQDtiaIA7YmjAO2JpADtiaUA7YmmAO2JpwDtiagA7YmpAO2JqgDtiasA7YmsAO2JrQDtia4A7YmvAO2JsADtibEA7YmyAO2JswDtibQA7Ym1AO2JtgDtibcA7Ym4AO2JuQDtiboA7Ym7AO2JvADtib0A7Ym+AO2JvwDtioAA7YqBAO2KggDtioMA7YqEAO2KhQDtioYA7YqHAO2KiADtiokA7YqKAO2KiwDtiowA7YqNAO2KjgDtio8A7YqQAO2KkQDtipIA7YqTAO2KlADtipUA7YqWAO2KlwDtipgA7YqZAO2KmgDtipsA7YqcAO2KnQDtip4A7YqfAO2KoADtiqEA7YqiAO2KowDtiqQA7YqlAO2KpgDtiqcA7YqoAO2KqQDtiqoA7YqrAO2KrADtiq0A7YquAO2KrwDtirAA7YqxAO2KsgDtirMA7Yq0AO2KtQDtirYA7Yq3AO2KuADtirkA7Yq6AO2KuwDtirwA7Yq9AO2KvgDtir8A7YuAAO2LgQDti4IA7YuDAO2LhADti4UA7YuGAO2LhwDti4gA7YuJAO2LigDti4sA7YuMAO2LjQDti44A7YuPAO2LkADti5EA7YuSAO2LkwDti5QA7YuVAO2LlgDti5cA7YuYAO2LmQDti5oA7YubAO2LnADti50A7YueAO2LnwDti6AA7YuhAO2LogDti6MA7YukAO2LpQDti6YA7YunAO2LqADti6kA7YuqAO2LqwDti6wA7YutAO2LrgDti68A7YuwAO2LsQDti7IA7YuzAO2LtADti7UA7Yu2AO2LtwDti7gA7Yu5AO2LugDti7sA7Yu8AO2LvQDti74A7Yu/AO2MgADtjIEA7YyCAO2MgwDtjIQA7YyFAO2MhgDtjIcA7YyIAO2MiQDtjIoA7YyLAO2MjADtjI0A7YyOAO2MjwDtjJAA7YyRAO2MkgDtjJMA7YyUAO2MlQDtjJYA7YyXAO2MmADtjJkA7YyaAO2MmwDtjJwA7YydAO2MngDtjJ8A7YygAO2MoQDtjKIA7YyjAO2MpADtjKUA7YymAO2MpwDtjKgA7YypAO2MqgDtjKsA7YysAO2MrQDtjK4A7YyvAO2MsADtjLEA7YyyAO2MswDtjLQA7Yy1AO2MtgDtjLcA7Yy4AO2MuQDtjLoA7Yy7AO2MvADtjL0A7Yy+AO2MvwDtjYAA7Y2BAO2NggDtjYMA7Y2EAO2NhQDtjYYA7Y2HAO2NiADtjYkA7Y2KAO2NiwDtjYwA7Y2NAO2NjgDtjY8A7Y2QAO2NkQDtjZIA7Y2TAO2NlADtjZUA7Y2WAO2NlwDtjZgA7Y2ZAO2NmgDtjZsA7Y2cAO2NnQDtjZ4A7Y2fAO2NoADtjaEA7Y2iAO2NowDtjaQA7Y2lAO2NpgDtjacA7Y2oAO2NqQDtjaoA7Y2rAO2NrADtja0A7Y2uAO2NrwDtjbAA7Y2xAO2NsgDtjbMA7Y20AO2NtQDtjbYA7Y23AO2NuADtjbkA7Y26AO2NuwDtjbwA7Y29AO2NvgDtjb8A7Y6AAO2OgQDtjoIA7Y6DAO2OhADtjoUA7Y6GAO2OhwDtjogA7Y6JAO2OigDtjosA7Y6MAO2OjQDtjo4A7Y6PAO2OkADtjpEA7Y6SAO2OkwDtjpQA7Y6VAO2OlgDtjpcA7Y6YAO2OmQDtjpoA7Y6bAO2OnADtjp0A7Y6eAO2OnwDtjqAA7Y6hAO2OogDtjqMA7Y6kAO2OpQDtjqYA7Y6nAO2OqADtjqkA7Y6qAO2OqwDtjqwA7Y6tAO2OrgDtjq8A7Y6wAO2OsQDtjrIA7Y6zAO2OtADtjrUA7Y62AO2OtwDtjrgA7Y65AO2OugDtjrsA7Y68AO2OvQDtjr4A7Y6/AO2PgADtj4EA7Y+CAO2PgwDtj4QA7Y+FAO2PhgDtj4cA7Y+IAO2PiQDtj4oA7Y+LAO2PjADtj40A7Y+OAO2PjwDtj5AA7Y+RAO2PkgDtj5MA7Y+UAO2PlQDtj5YA7Y+XAO2PmADtj5kA7Y+aAO2PmwDtj5wA7Y+dAO2PngDtj58A7Y+gAO2PoQDtj6IA7Y+jAO2PpADtj6UA7Y+mAO2PpwDtj6gA7Y+pAO2PqgDtj6sA7Y+sAO2PrQDtj64A7Y+vAO2PsADtj7EA7Y+yAO2PswDtj7QA7Y+1AO2PtgDtj7cA7Y+4AO2PuQDtj7oA7Y+7AO2PvADtj70A7Y++AO2PvwDtkIAA7ZCBAO2QggDtkIMA7ZCEAO2QhQDtkIYA7ZCHAO2QiADtkIkA7ZCKAO2QiwDtkIwA7ZCNAO2QjgDtkI8A7ZCQAO2QkQDtkJIA7ZCTAO2QlADtkJUA7ZCWAO2QlwDtkJgA7ZCZAO2QmgDtkJsA7ZCcAO2QnQDtkJ4A7ZCfAO2QoADtkKEA7ZCiAO2QowDtkKQA7ZClAO2QpgDtkKcA7ZCoAO2QqQDtkKoA7ZCrAO2QrADtkK0A7ZCuAO2QrwDtkLAA7ZCxAO2QsgDtkLMA7ZC0AO2QtQDtkLYA7ZC3AO2QuADtkLkA7ZC6AO2QuwDtkLwA7ZC9AO2QvgDtkL8A7ZGAAO2RgQDtkYIA7ZGDAO2RhADtkYUA7ZGGAO2RhwDtkYgA7ZGJAO2RigDtkYsA7ZGMAO2RjQDtkY4A7ZGPAO2RkADtkZEA7ZGSAO2RkwDtkZQA7ZGVAO2RlgDtkZcA7ZGYAO2RmQDtkZoA7ZGbAO2RnADtkZ0A7ZGeAO2RnwDtkaAA7ZGhAO2RogDtkaMA7ZGkAO2RpQDtkaYA7ZGnAO2RqADtkakA7ZGqAO2RqwDtkawA7ZGtAO2RrgDtka8A7ZGwAO2RsQDtkbIA7ZGzAO2RtADtkbUA7ZG2AO2RtwDtkbgA7ZG5AO2RugDtkbsA7ZG8AO2RvQDtkb4A7ZG/AO2SgADtkoEA7ZKCAO2SgwDtkoQA7ZKFAO2ShgDtkocA7ZKIAO2SiQDtkooA7ZKLAO2SjADtko0A7ZKOAO2SjwDtkpAA7ZKRAO2SkgDtkpMA7ZKUAO2SlQDtkpYA7ZKXAO2SmADtkpkA7ZKaAO2SmwDtkpwA7ZKdAO2SngDtkp8A7ZKgAO2SoQDtkqIA7ZKjAO2SpADtkqUA7ZKmAO2SpwDtkqgA7ZKpAO2SqgDtkqsA7ZKsAO2SrQDtkq4A7ZKvAO2SsADtkrEA7ZKyAO2SswDtkrQA7ZK1AO2StgDtkrcA7ZK4AO2SuQDtkroA7ZK7AO2SvADtkr0A7ZK+AO2SvwDtk4AA7ZOBAO2TggDtk4MA7ZOEAO2ThQDtk4YA7ZOHAO2TiADtk4kA7ZOKAO2TiwDtk4wA7ZONAO2TjgDtk48A7ZOQAO2TkQDtk5IA7ZOTAO2TlADtk5UA7ZOWAO2TlwDtk5gA7ZOZAO2TmgDtk5sA7ZOcAO2TnQDtk54A7ZOfAO2ToADtk6EA7ZOiAO2TowDtk6QA7ZOlAO2TpgDtk6cA7ZOoAO2TqQDtk6oA7ZOrAO2TrADtk60A7ZOuAO2TrwDtk7AA7ZOxAO2TsgDtk7MA7ZO0AO2TtQDtk7YA7ZO3AO2TuADtk7kA7ZO6AO2TuwDtk7wA7ZO9AO2TvgDtk78A7ZSAAO2UgQDtlIIA7ZSDAO2UhADtlIUA7ZSGAO2UhwDtlIgA7ZSJAO2UigDtlIsA7ZSMAO2UjQDtlI4A7ZSPAO2UkADtlJEA7ZSSAO2UkwDtlJQA7ZSVAO2UlgDtlJcA7ZSYAO2UmQDtlJoA7ZSbAO2UnADtlJ0A7ZSeAO2UnwDtlKAA7ZShAO2UogDtlKMA7ZSkAO2UpQDtlKYA7ZSnAO2UqADtlKkA7ZSqAO2UqwDtlKwA7ZStAO2UrgDtlK8A7ZSwAO2UsQDtlLIA7ZSzAO2UtADtlLUA7ZS2AO2UtwDtlLgA7ZS5AO2UugDtlLsA7ZS8AO2UvQDtlL4A7ZS/AO2VgADtlYEA7ZWCAO2VgwDtlYQA7ZWFAO2VhgDtlYcA7ZWIAO2ViQDtlYoA7ZWLAO2VjADtlY0A7ZWOAO2VjwDtlZAA7ZWRAO2VkgDtlZMA7ZWUAO2VlQDtlZYA7ZWXAO2VmADtlZkA7ZWaAO2VmwDtlZwA7ZWdAO2VngDtlZ8A7ZWgAO2VoQDtlaIA7ZWjAO2VpADtlaUA7ZWmAO2VpwDtlagA7ZWpAO2VqgDtlasA7ZWsAO2VrQDtla4A7ZWvAO2VsADtlbEA7ZWyAO2VswDtlbQA7ZW1AO2VtgDtlbcA7ZW4AO2VuQDtlboA7ZW7AO2VvADtlb0A7ZW+AO2VvwDtloAA7ZaBAO2WggDtloMA7ZaEAO2WhQDtloYA7ZaHAO2WiADtlokA7ZaKAO2WiwDtlowA7ZaNAO2WjgDtlo8A7ZaQAO2WkQDtlpIA7ZaTAO2WlADtlpUA7ZaWAO2WlwDtlpgA7ZaZAO2WmgDtlpsA7ZacAO2WnQDtlp4A7ZafAO2WoADtlqEA7ZaiAO2WowDtlqQA7ZalAO2WpgDtlqcA7ZaoAO2WqQDtlqoA7ZarAO2WrADtlq0A7ZauAO2WrwDtlrAA7ZaxAO2WsgDtlrMA7Za0AO2WtQDtlrYA7Za3AO2WuADtlrkA7Za6AO2WuwDtlrwA7Za9AO2WvgDtlr8A7ZeAAO2XgQDtl4IA7ZeDAO2XhADtl4UA7ZeGAO2XhwDtl4gA7ZeJAO2XigDtl4sA7ZeMAO2XjQDtl44A7ZePAO2XkADtl5EA7ZeSAO2XkwDtl5QA7ZeVAO2XlgDtl5cA7ZeYAO2XmQDtl5oA7ZebAO2XnADtl50A7ZeeAO2XnwDtl6AA7ZehAO2XogDtl6MA7ZekAO2XpQDtl6YA7ZenAO2XqADtl6kA7ZeqAO2XqwDtl6wA7ZetAO2XrgDtl68A7ZewAO2XsQDtl7IA7ZezAO2XtADtl7UA7Ze2AO2XtwDtl7gA7Ze5AO2XugDtl7sA7Ze8AO2XvQDtl74A7Ze/AO2YgADtmIEA7ZiCAO2YgwDtmIQA7ZiFAO2YhgDtmIcA7ZiIAO2YiQDtmIoA7ZiLAO2YjADtmI0A7ZiOAO2YjwDtmJAA7ZiRAO2YkgDtmJMA7ZiUAO2YlQDtmJYA7ZiXAO2YmADtmJkA7ZiaAO2YmwDtmJwA7ZidAO2YngDtmJ8A7ZigAO2YoQDtmKIA7ZijAO2YpADtmKUA7ZimAO2YpwDtmKgA7ZipAO2YqgDtmKsA7ZisAO2YrQDtmK4A7ZivAO2YsADtmLEA7ZiyAO2YswDtmLQA7Zi1AO2YtgDtmLcA7Zi4AO2YuQDtmLoA7Zi7AO2YvADtmL0A7Zi+AO2YvwDtmYAA7ZmBAO2ZggDtmYMA7ZmEAO2ZhQDtmYYA7ZmHAO2ZiADtmYkA7ZmKAO2ZiwDtmYwA7ZmNAO2ZjgDtmY8A7ZmQAO2ZkQDtmZIA7ZmTAO2ZlADtmZUA7ZmWAO2ZlwDtmZgA7ZmZAO2ZmgDtmZsA7ZmcAO2ZnQDtmZ4A7ZmfAO2ZoADtmaEA7ZmiAO2ZowDtmaQA7ZmlAO2ZpgDtmacA7ZmoAO2ZqQDtmaoA7ZmrAO2ZrADtma0A7ZmuAO2ZrwDtmbAA7ZmxAO2ZsgDtmbMA7Zm0AO2ZtQDtmbYA7Zm3AO2ZuADtmbkA7Zm6AO2ZuwDtmbwA7Zm9AO2ZvgDtmb8A7ZqAAO2agQDtmoIA7ZqDAO2ahADtmoUA7ZqGAO2ahwDtmogA7ZqJAO2aigDtmosA7ZqMAO2ajQDtmo4A7ZqPAO2akADtmpEA7ZqSAO2akwDtmpQA7ZqVAO2algDtmpcA7ZqYAO2amQDtmpoA7ZqbAO2anADtmp0A7ZqeAO2anwDtmqAA7ZqhAO2aogDtmqMA7ZqkAO2apQDtmqYA7ZqnAO2aqADtmqkA7ZqqAO2aqwDtmqwA7ZqtAO2argDtmq8A7ZqwAO2asQDtmrIA7ZqzAO2atADtmrUA7Zq2AO2atwDtmrgA7Zq5AO2augDtmrsA7Zq8AO2avQDtmr4A7Zq/AO2bgADtm4EA7ZuCAO2bgwDtm4QA7ZuFAO2bhgDtm4cA7ZuIAO2biQDtm4oA7ZuLAO2bjADtm40A7ZuOAO2bjwDtm5AA7ZuRAO2bkgDtm5MA7ZuUAO2blQDtm5YA7ZuXAO2bmADtm5kA7ZuaAO2bmwDtm5wA7ZudAO2bngDtm58A7ZugAO2boQDtm6IA7ZujAO2bpADtm6UA7ZumAO2bpwDtm6gA7ZupAO2bqgDtm6sA7ZusAO2brQDtm64A7ZuvAO2bsADtm7EA7ZuyAO2bswDtm7QA7Zu1AO2btgDtm7cA7Zu4AO2buQDtm7oA7Zu7AO2bvADtm70A7Zu+AO2bvwDtnIAA7ZyBAO2cggDtnIMA7ZyEAO2chQDtnIYA7ZyHAO2ciADtnIkA7ZyKAO2ciwDtnIwA7ZyNAO2cjgDtnI8A7ZyQAO2ckQDtnJIA7ZyTAO2clADtnJUA7ZyWAO2clwDtnJgA7ZyZAO2cmgDtnJsA7ZycAO2cnQDtnJ4A7ZyfAO2coADtnKEA7ZyiAO2cowDtnKQA7ZylAO2cpgDtnKcA7ZyoAO2cqQDtnKoA7ZyrAO2crADtnK0A7ZyuAO2crwDtnLAA7ZyxAO2csgDtnLMA7Zy0AO2ctQDtnLYA7Zy3AO2cuADtnLkA7Zy6AO2cuwDtnLwA7Zy9AO2cvgDtnL8A7Z2AAO2dgQDtnYIA7Z2DAO2dhADtnYUA7Z2GAO2dhwDtnYgA7Z2JAO2digDtnYsA7Z2MAO2djQDtnY4A7Z2PAO2dkADtnZEA7Z2SAO2dkwDtnZQA7Z2VAO2dlgDtnZcA7Z2YAO2dmQDtnZoA7Z2bAO2dnADtnZ0A7Z2eAO2dnwDtnaAA7Z2hAO2dogDtnaMA7Z2kAO2dpQDtnaYA7Z2nAO2dqADtnakA7Z2qAO2dqwDtnawA7Z2tAO2drgDtna8A7Z2wAO2dsQDtnbIA7Z2zAO2dtADtnbUA7Z22AO2dtwDtnbgA7Z25AO2dugDtnbsA7Z28AO2dvQDtnb4A7Z2/AO2egADtnoEA7Z6CAO2egwDtnoQA7Z6FAO2ehgDtnocA7Z6IAO2eiQDtnooA7Z6LAO2ejADtno0A7Z6OAO2ejwDtnpAA7Z6RAO2ekgDtnpMA7Z6UAO2elQDtnpYA7Z6XAO2emADtnpkA7Z6aAO2emwDtnpwA7Z6dAO2engDtnp8A7Z6gAO2eoQDtnqIA7Z6jAPCRgpoA8JGCnADwkYKrAPCRhK4A8JGErwDwkY2LAPCRjYwA8JGSuwDwkZK8APCRkr4A8JGWugDwkZa7APCdhZfwnYWlAPCdhZjwnYWlAPCdhZjwnYWl8J2FrgDwnYWY8J2FpfCdha8A8J2FmPCdhaXwnYWwAPCdhZjwnYWl8J2FsQDwnYWY8J2FpfCdhbIA8J2GufCdhaUA8J2GufCdhaXwnYWuAPCdhrnwnYWl8J2FrwDwnYa68J2FpQDwnYa68J2FpfCdha4A8J2GuvCdhaXwnYWvAPCghKIA8KCUnADwoJSlAPCglYsA8KCYugDwoKCEAPCgo54A8KCorADwoK2jAPChk6QA8KGaqADwoZuqAPChp4gA8KGsmADwobSLAPCht6QA8KG3pgDwooaDAPCihp8A8KKMsQDwopuUAPCioYQA8KKhigDwoqyMAPCir7EA8KOAigDwo4q4APCjjZ8A8KOOkwDwo46cAPCjj4MA8KOPlQDwo5GtAPCjmqMA8KOipwDwo6qNAPCjq7oA8KOyvADwo7SeAPCju5EA8KO9ngDwo76OAPCkiaMA8KSLrgDwpI6rAPCkmIgA8KSctQDwpKCUAPCksLYA8KSykgDwpL6hAPCkvrgA8KWBhADwpYOyAPClg7MA8KWEmQDwpYSzAPCliYkA8KWQnQDwpZimAPClmpoA8KWbhQDwpaW8APClqqcA8KWuqwDwpbKAAPCls5AA8KW+hgDwpoeaAPCmiKgA8KaJhwDwpouZAPCmjL4A8KaTmgDwppSjAPCmlqgA8KaepwDwpp61APCmrLwA8KawtgDwprOVAPCmtasA8Ka8rADwpr6xAPCng5IA8KePigDwp5mnAPCnoq4A8KelpgDwp7KoAPCnu5MA8Ke8rwDwqJeSAPCol60A8KicrgDwqK+6APCotbcA8KmFhQDwqYefAPCpiJoA8KmQigDwqZKWAPCplrYA8KmssADwqoOOAPCqhIUA8KqIjgDwqoqRAPCqjpIA8KqYgAA=\"\n      },\n      {\n        \"type\": \"Strip\",\n        \"strip_left\": false,\n        \"strip_right\": true\n      },\n      {\n        \"type\": \"Replace\",\n        \"pattern\": {\n          \"Regex\": \" {2,}\"\n        },\n        \"content\": \"▁\"\n      }\n    ]\n  },\n  \"pre_tokenizer\": {\n    \"type\": \"Metaspace\",\n    \"replacement\": \"▁\",\n    \"prepend_scheme\": \"always\",\n    \"split\": true\n  },\n  \"post_processor\": {\n    \"type\": \"TemplateProcessing\",\n    \"single\": [\n      {\n        \"Sequence\": {\n          \"id\": \"A\",\n          \"type_id\": 0\n        }\n      },\n      {\n        \"SpecialToken\": {\n          \"id\": \"</s>\",\n          \"type_id\": 0\n        }\n      }\n    ],\n    \"pair\": [\n      {\n        \"Sequence\": {\n          \"id\": \"A\",\n          \"type_id\": 0\n        }\n      },\n      {\n        \"SpecialToken\": {\n          \"id\": \"</s>\",\n          \"type_id\": 0\n        }\n      },\n      {\n        \"Sequence\": {\n          \"id\": \"B\",\n          \"type_id\": 0\n        }\n      },\n      {\n        \"SpecialToken\": {\n          \"id\": \"</s>\",\n          \"type_id\": 0\n        }\n      }\n    ],\n    \"special_tokens\": {\n      \"</s>\": {\n        \"id\": \"</s>\",\n        \"ids\": [\n          1\n        ],\n        \"tokens\": [\n          \"</s>\"\n        ]\n      }\n    }\n  },\n  \"decoder\": {\n    \"type\": \"Metaspace\",\n    \"replacement\": \"▁\",\n    \"prepend_scheme\": \"always\",\n    \"split\": true\n  },\n  \"model\": {\n    \"type\": \"Unigram\",\n    \"unk_id\": 2,\n    \"vocab\": [\n      [\n        \"<pad>\",\n        0.0\n      ],\n      [\n        \"</s>\",\n        0.0\n      ],\n      [\n        \"<unk>\",\n        0.0\n      ],\n      [\n        \"▁\",\n        -2.0122928619384766\n      ],\n      [\n        \"X\",\n        -2.486478805541992\n      ],\n      [\n        \".\",\n        -3.5449328422546387\n      ],\n      [\n        \",\",\n        -3.649247407913208\n      ],\n      [\n        \"s\",\n        -3.9033992290496826\n      ],\n      [\n        \"▁the\",\n        -3.9598512649536133\n      ],\n      [\n        \"a\",\n        -4.097104549407959\n      ],\n      [\n        \":\",\n        -4.414328098297119\n      ],\n      [\n        \"▁and\",\n        -4.420670986175537\n      ],\n      [\n        \"▁to\",\n        -4.4523234367370605\n      ],\n      [\n        \"▁of\",\n        -4.572070121765137\n      ],\n      [\n        \"▁fill\",\n        -4.575019836425781\n      ],\n      [\n        \"e\",\n        -4.674920082092285\n      ],\n      [\n        \"▁in\",\n        -4.812063694000244\n      ],\n      [\n        \"t\",\n        -5.063905715942383\n      ],\n      [\n        \"-\",\n        -5.129043102264404\n      ],\n      [\n        \"▁is\",\n        -5.283425331115723\n      ],\n      [\n        \"▁de\",\n        -5.344141960144043\n      ],\n      [\n        \"▁for\",\n        -5.3930158615112305\n      ],\n      [\n        \"’\",\n        -5.4228339195251465\n      ],\n      [\n        \"i\",\n        -5.469857692718506\n      ],\n      [\n        \"▁that\",\n        -5.576240539550781\n      ],\n      [\n        \"▁you\",\n        -5.596375465393066\n      ],\n      [\n        \"d\",\n        -5.6047282218933105\n      ],\n      [\n        \"▁I\",\n        -5.6640448570251465\n      ],\n      [\n        \"▁with\",\n        -5.703730583190918\n      ],\n      [\n        \"n\",\n        -5.737886905670166\n      ],\n      [\n        \"▁on\",\n        -5.784142971038818\n      ],\n      [\n        \"'\",\n        -5.828996181488037\n      ],\n      [\n        \"o\",\n        -5.925558090209961\n      ],\n      [\n        \"▁are\",\n        -5.931313991546631\n      ],\n      [\n        \"▁it\",\n        -5.939518928527832\n      ],\n      [\n        \"en\",\n        -5.9465556144714355\n      ],\n      [\n        \"▁be\",\n        -5.9556708335876465\n      ],\n      [\n        \"▁The\",\n        -5.990020751953125\n      ],\n      [\n        \"▁as\",\n        -6.057407379150391\n      ],\n      [\n        \"▁your\",\n        -6.132311820983887\n      ],\n      [\n        \"l\",\n        -6.139498710632324\n      ],\n      [\n        \"▁(\",\n        -6.184796333312988\n      ],\n      [\n        \"▁or\",\n        -6.241950035095215\n      ],\n      [\n        \"▁have\",\n        -6.27459192276001\n      ],\n      [\n        \"▁at\",\n        -6.327472686767578\n      ],\n      [\n        \"▁from\",\n        -6.349645137786865\n      ],\n      [\n        \"▁an\",\n        -6.350090980529785\n      ],\n      [\n        \"▁was\",\n        -6.350385665893555\n      ],\n      [\n        \"▁this\",\n        -6.352563381195068\n      ],\n      [\n        \"er\",\n        -6.3604278564453125\n      ],\n      [\n        \"▁la\",\n        -6.3624043464660645\n      ],\n      [\n        \"m\",\n        -6.375206470489502\n      ],\n      [\n        \"r\",\n        -6.376530170440674\n      ],\n      [\n        \"ing\",\n        -6.3778581619262695\n      ],\n      [\n        \"▁can\",\n        -6.387146472930908\n      ],\n      [\n        \"!\",\n        -6.421379566192627\n      ],\n      [\n        \"▁will\",\n        -6.423982620239258\n      ],\n      [\n        \"▁by\",\n        -6.44155216217041\n      ],\n      [\n        \"?\",\n        -6.585887432098389\n      ],\n      [\n        \"▁not\",\n        -6.5959086418151855\n      ],\n      [\n        \"re\",\n        -6.620072364807129\n      ],\n      [\n        \")\",\n        -6.63656759262085\n      ],\n      [\n        \"▁we\",\n        -6.643022060394287\n      ],\n      [\n        \"y\",\n        -6.654535293579102\n      ],\n      [\n        \"▁und\",\n        -6.741473197937012\n      ],\n      [\n        \"▁has\",\n        -6.7602033615112305\n      ],\n      [\n        \"▁all\",\n        -6.768176555633545\n      ],\n      [\n        \"▁die\",\n        -6.8641204833984375\n      ],\n      [\n        \"▁but\",\n        -6.906830310821533\n      ],\n      [\n        \"▁our\",\n        -6.909878730773926\n      ],\n      [\n        \"▁their\",\n        -6.91325044631958\n      ],\n      [\n        \"▁A\",\n        -6.915814399719238\n      ],\n      [\n        \"▁more\",\n        -6.918668746948242\n      ],\n      [\n        \"▁un\",\n        -6.924930572509766\n      ],\n      [\n        \"▁der\",\n        -6.925402641296387\n      ],\n      [\n        \"c\",\n        -6.925714015960693\n      ],\n      [\n        \"u\",\n        -6.932939052581787\n      ],\n      [\n        \"in\",\n        -6.934063911437988\n      ],\n      [\n        \"▁so\",\n        -6.947050094604492\n      ],\n      [\n        \"▁they\",\n        -6.989297866821289\n      ],\n      [\n        \"▁one\",\n        -7.012735843658447\n      ],\n      [\n        \"▁about\",\n        -7.071486473083496\n      ],\n      [\n        \"▁my\",\n        -7.072140693664551\n      ],\n      [\n        \"ul\",\n        -7.076492786407471\n      ],\n      [\n        \"▁which\",\n        -7.097039222717285\n      ],\n      [\n        \"à\",\n        -7.099997520446777\n      ],\n      [\n        \"▁In\",\n        -7.100254535675049\n      ],\n      [\n        \"/\",\n        -7.100865840911865\n      ],\n      [\n        \"he\",\n        -7.104752540588379\n      ],\n      [\n        \"f\",\n        -7.110044002532959\n      ],\n      [\n        \"▁le\",\n        -7.112937927246094\n      ],\n      [\n        \"▁out\",\n        -7.128556728363037\n      ],\n      [\n        \"▁also\",\n        -7.133583068847656\n      ],\n      [\n        \"▁des\",\n        -7.156766414642334\n      ],\n      [\n        \"▁It\",\n        -7.162121295928955\n      ],\n      [\n        \"▁up\",\n        -7.1723432540893555\n      ],\n      [\n        \"▁\\\"\",\n        -7.172809600830078\n      ],\n      [\n        \"▁time\",\n        -7.178046703338623\n      ],\n      [\n        \"ă\",\n        -7.183253765106201\n      ],\n      [\n        \"if\",\n        -7.185171127319336\n      ],\n      [\n        \"▁This\",\n        -7.191652297973633\n      ],\n      [\n        \"▁We\",\n        -7.223267078399658\n      ],\n      [\n        \"p\",\n        -7.224130153656006\n      ],\n      [\n        \"▁do\",\n        -7.228212356567383\n      ],\n      [\n        \"–\",\n        -7.235409736633301\n      ],\n      [\n        \"▁“\",\n        -7.238142013549805\n      ],\n      [\n        \"on\",\n        -7.240827560424805\n      ],\n      [\n        \"h\",\n        -7.2543206214904785\n      ],\n      [\n        \"▁si\",\n        -7.276725769042969\n      ],\n      [\n        \"le\",\n        -7.2994256019592285\n      ],\n      [\n        \"▁les\",\n        -7.312957286834717\n      ],\n      [\n        \"▁în\",\n        -7.314571857452393\n      ],\n      [\n        \"▁his\",\n        -7.324767112731934\n      ],\n      [\n        \"▁who\",\n        -7.35105562210083\n      ],\n      [\n        \"▁like\",\n        -7.371364116668701\n      ],\n      [\n        \"b\",\n        -7.375369071960449\n      ],\n      [\n        \"▁when\",\n        -7.380199432373047\n      ],\n      [\n        \";\",\n        -7.380846977233887\n      ],\n      [\n        \"▁been\",\n        -7.38668966293335\n      ],\n      [\n        \"▁other\",\n        -7.388518333435059\n      ],\n      [\n        \"ly\",\n        -7.394660949707031\n      ],\n      [\n        \"\\\"\",\n        -7.407205104827881\n      ],\n      [\n        \"g\",\n        -7.407997131347656\n      ],\n      [\n        \"▁cu\",\n        -7.415276527404785\n      ],\n      [\n        \"▁care\",\n        -7.432408332824707\n      ],\n      [\n        \"▁what\",\n        -7.433043003082275\n      ],\n      [\n        \"▁new\",\n        -7.4370903968811035\n      ],\n      [\n        \"or\",\n        -7.445409774780273\n      ],\n      [\n        \"▁some\",\n        -7.461953639984131\n      ],\n      [\n        \"▁get\",\n        -7.479001998901367\n      ],\n      [\n        \"▁were\",\n        -7.491549491882324\n      ],\n      [\n        \"▁just\",\n        -7.492495536804199\n      ],\n      [\n        \"▁there\",\n        -7.493194103240967\n      ],\n      [\n        \"▁would\",\n        -7.494382381439209\n      ],\n      [\n        \"S\",\n        -7.4974141120910645\n      ],\n      [\n        \"▁them\",\n        -7.513596057891846\n      ],\n      [\n        \"▁any\",\n        -7.520544052124023\n      ],\n      [\n        \").\",\n        -7.521052360534668\n      ],\n      [\n        \"al\",\n        -7.523056983947754\n      ],\n      [\n        \"▁into\",\n        -7.527902603149414\n      ],\n      [\n        \"▁me\",\n        -7.528337001800537\n      ],\n      [\n        \"▁had\",\n        -7.532425403594971\n      ],\n      [\n        \"▁se\",\n        -7.5451483726501465\n      ],\n      [\n        \"▁make\",\n        -7.5827131271362305\n      ],\n      [\n        \"at\",\n        -7.589433670043945\n      ],\n      [\n        \"▁than\",\n        -7.592360019683838\n      ],\n      [\n        \"▁du\",\n        -7.595852375030518\n      ],\n      [\n        \"▁over\",\n        -7.6078782081604\n      ],\n      [\n        \"▁You\",\n        -7.626111030578613\n      ],\n      [\n        \"▁how\",\n        -7.635554313659668\n      ],\n      [\n        \"▁no\",\n        -7.63729190826416\n      ],\n      [\n        \"▁people\",\n        -7.639947414398193\n      ],\n      [\n        \"an\",\n        -7.64084005355835\n      ],\n      [\n        \"”\",\n        -7.644528865814209\n      ],\n      [\n        \"é\",\n        -7.646921157836914\n      ],\n      [\n        \"it\",\n        -7.648641109466553\n      ],\n      [\n        \"▁If\",\n        -7.648687839508057\n      ],\n      [\n        \"k\",\n        -7.6605634689331055\n      ],\n      [\n        \"▁pe\",\n        -7.662139415740967\n      ],\n      [\n        \"is\",\n        -7.66726016998291\n      ],\n      [\n        \"▁her\",\n        -7.6733808517456055\n      ],\n      [\n        \"▁work\",\n        -7.680386543273926\n      ],\n      [\n        \"ve\",\n        -7.687412738800049\n      ],\n      [\n        \"▁only\",\n        -7.69785737991333\n      ],\n      [\n        \"▁may\",\n        -7.702393531799316\n      ],\n      [\n        \"▁its\",\n        -7.702449798583984\n      ],\n      [\n        \"▁first\",\n        -7.704373836517334\n      ],\n      [\n        \"▁most\",\n        -7.708309173583984\n      ],\n      [\n        \"▁well\",\n        -7.708758354187012\n      ],\n      [\n        \"▁use\",\n        -7.715085983276367\n      ],\n      [\n        \"▁zu\",\n        -7.718777656555176\n      ],\n      [\n        \"▁pour\",\n        -7.736708164215088\n      ],\n      [\n        \"z\",\n        -7.745654106140137\n      ],\n      [\n        \"il\",\n        -7.745913982391357\n      ],\n      [\n        \"▁need\",\n        -7.74778938293457\n      ],\n      [\n        \"▁these\",\n        -7.763317584991455\n      ],\n      [\n        \"▁din\",\n        -7.769891262054443\n      ],\n      [\n        \"▁den\",\n        -7.775663375854492\n      ],\n      [\n        \"▁us\",\n        -7.778133869171143\n      ],\n      [\n        \"able\",\n        -7.779712200164795\n      ],\n      [\n        \"▁S\",\n        -7.781893730163574\n      ],\n      [\n        \"▁mit\",\n        -7.792516231536865\n      ],\n      [\n        \"▁very\",\n        -7.79970645904541\n      ],\n      [\n        \"▁am\",\n        -7.814100742340088\n      ],\n      [\n        \"&\",\n        -7.829529285430908\n      ],\n      [\n        \"▁au\",\n        -7.83012056350708\n      ],\n      [\n        \"▁many\",\n        -7.83834171295166\n      ],\n      [\n        \"▁mai\",\n        -7.84363317489624\n      ],\n      [\n        \"A\",\n        -7.849830150604248\n      ],\n      [\n        \"th\",\n        -7.855541229248047\n      ],\n      [\n        \"▁through\",\n        -7.859585285186768\n      ],\n      [\n        \"▁pentru\",\n        -7.86391544342041\n      ],\n      [\n        \"▁two\",\n        -7.873607158660889\n      ],\n      [\n        \"▁von\",\n        -7.874959945678711\n      ],\n      [\n        \"▁way\",\n        -7.887117385864258\n      ],\n      [\n        \"ll\",\n        -7.887749195098877\n      ],\n      [\n        \"I\",\n        -7.891303539276123\n      ],\n      [\n        \"▁ce\",\n        -7.9015631675720215\n      ],\n      [\n        \"▁și\",\n        -7.904444694519043\n      ],\n      [\n        \"▁help\",\n        -7.907405853271484\n      ],\n      [\n        \"▁best\",\n        -7.907911777496338\n      ],\n      [\n        \"),\",\n        -7.908212184906006\n      ],\n      [\n        \"un\",\n        -7.925017833709717\n      ],\n      [\n        \"▁years\",\n        -7.925964832305908\n      ],\n      [\n        \"▁2\",\n        -7.9282684326171875\n      ],\n      [\n        \"▁C\",\n        -7.936962604522705\n      ],\n      [\n        \"▁nu\",\n        -7.939520835876465\n      ],\n      [\n        \"▁good\",\n        -7.943995952606201\n      ],\n      [\n        \"v\",\n        -7.94746732711792\n      ],\n      [\n        \"▁1\",\n        -7.94765567779541\n      ],\n      [\n        \"w\",\n        -7.947978496551514\n      ],\n      [\n        \"▁das\",\n        -7.960538864135742\n      ],\n      [\n        \"▁ca\",\n        -7.962430477142334\n      ],\n      [\n        \"▁where\",\n        -7.964908123016357\n      ],\n      [\n        \"▁know\",\n        -7.96622896194458\n      ],\n      [\n        \"▁year\",\n        -7.971063613891602\n      ],\n      [\n        \"▁He\",\n        -7.974609375\n      ],\n      [\n        \"▁see\",\n        -7.980011463165283\n      ],\n      [\n        \"▁für\",\n        -7.984004497528076\n      ],\n      [\n        \"▁auf\",\n        -7.984249114990234\n      ],\n      [\n        \"▁3\",\n        -7.984433650970459\n      ],\n      [\n        \"de\",\n        -7.985401153564453\n      ],\n      [\n        \"est\",\n        -8.002091407775879\n      ],\n      [\n        \"▁back\",\n        -8.007022857666016\n      ],\n      [\n        \"▁such\",\n        -8.008523941040039\n      ],\n      [\n        \"▁should\",\n        -8.011754989624023\n      ],\n      [\n        \"x\",\n        -8.015050888061523\n      ],\n      [\n        \"▁after\",\n        -8.01761245727539\n      ],\n      [\n        \"▁could\",\n        -8.019674301147461\n      ],\n      [\n        \"▁ist\",\n        -8.020784378051758\n      ],\n      [\n        \"▁now\",\n        -8.022845268249512\n      ],\n      [\n        \"▁much\",\n        -8.023111343383789\n      ],\n      [\n        \"and\",\n        -8.02390193939209\n      ],\n      [\n        \"...\",\n        -8.030110359191895\n      ],\n      [\n        \"▁home\",\n        -8.036273956298828\n      ],\n      [\n        \"to\",\n        -8.03821086883545\n      ],\n      [\n        \"▁ein\",\n        -8.04833984375\n      ],\n      [\n        \"▁even\",\n        -8.048656463623047\n      ],\n      [\n        \"▁que\",\n        -8.049829483032227\n      ],\n      [\n        \"▁day\",\n        -8.051553726196289\n      ],\n      [\n        \"▁take\",\n        -8.054189682006836\n      ],\n      [\n        \"▁want\",\n        -8.054435729980469\n      ],\n      [\n        \"▁For\",\n        -8.06217098236084\n      ],\n      [\n        \"▁said\",\n        -8.063249588012695\n      ],\n      [\n        \"▁sur\",\n        -8.073471069335938\n      ],\n      [\n        \"▁une\",\n        -8.077030181884766\n      ],\n      [\n        \"▁să\",\n        -8.082921028137207\n      ],\n      [\n        \"▁dans\",\n        -8.084549903869629\n      ],\n      [\n        \"▁great\",\n        -8.088057518005371\n      ],\n      [\n        \"▁este\",\n        -8.08947467803955\n      ],\n      [\n        \"▁because\",\n        -8.094311714172363\n      ],\n      [\n        \"▁information\",\n        -8.104085922241211\n      ],\n      [\n        \"ului\",\n        -8.105451583862305\n      ],\n      [\n        \"▁find\",\n        -8.112174987792969\n      ],\n      [\n        \"C\",\n        -8.119946479797363\n      ],\n      [\n        \"▁she\",\n        -8.125317573547363\n      ],\n      [\n        \"▁im\",\n        -8.126056671142578\n      ],\n      [\n        \"ation\",\n        -8.130115509033203\n      ],\n      [\n        \"▁then\",\n        -8.13021469116211\n      ],\n      [\n        \"▁est\",\n        -8.13099479675293\n      ],\n      [\n        \"▁par\",\n        -8.138585090637207\n      ],\n      [\n        \"▁used\",\n        -8.141871452331543\n      ],\n      [\n        \"▁E\",\n        -8.146790504455566\n      ],\n      [\n        \"▁made\",\n        -8.149978637695312\n      ],\n      [\n        \"▁So\",\n        -8.15785026550293\n      ],\n      [\n        \"am\",\n        -8.16288948059082\n      ],\n      [\n        \"▁eine\",\n        -8.165464401245117\n      ],\n      [\n        \"▁şi\",\n        -8.168368339538574\n      ],\n      [\n        \"▁business\",\n        -8.17335033416748\n      ],\n      [\n        \"▁right\",\n        -8.173593521118164\n      ],\n      [\n        \"▁here\",\n        -8.176125526428223\n      ],\n      [\n        \"▁being\",\n        -8.184967041015625\n      ],\n      [\n        \"▁B\",\n        -8.185355186462402\n      ],\n      [\n        \"▁those\",\n        -8.185736656188965\n      ],\n      [\n        \"▁before\",\n        -8.194721221923828\n      ],\n      [\n        \"▁And\",\n        -8.199501037597656\n      ],\n      [\n        \"▁P\",\n        -8.200712203979492\n      ],\n      [\n        \"ers\",\n        -8.200922012329102\n      ],\n      [\n        \"▁don\",\n        -8.204029083251953\n      ],\n      [\n        \"B\",\n        -8.20487117767334\n      ],\n      [\n        \"▁life\",\n        -8.206265449523926\n      ],\n      [\n        \"▁go\",\n        -8.209736824035645\n      ],\n      [\n        \"▁As\",\n        -8.210551261901855\n      ],\n      [\n        \"▁M\",\n        -8.221170425415039\n      ],\n      [\n        \"▁each\",\n        -8.22955322265625\n      ],\n      [\n        \"▁qui\",\n        -8.23323917388916\n      ],\n      [\n        \"▁place\",\n        -8.236248970031738\n      ],\n      [\n        \"com\",\n        -8.237479209899902\n      ],\n      [\n        \"ant\",\n        -8.252915382385254\n      ],\n      [\n        \"▁sich\",\n        -8.255932807922363\n      ],\n      [\n        \"▁There\",\n        -8.261948585510254\n      ],\n      [\n        \"ar\",\n        -8.264991760253906\n      ],\n      [\n        \"▁Sie\",\n        -8.273868560791016\n      ],\n      [\n        \"▁own\",\n        -8.277531623840332\n      ],\n      [\n        \"▁part\",\n        -8.279440879821777\n      ],\n      [\n        \"ent\",\n        -8.281047821044922\n      ],\n      [\n        \"▁world\",\n        -8.28173542022705\n      ],\n      [\n        \"ment\",\n        -8.282004356384277\n      ],\n      [\n        \"▁while\",\n        -8.294474601745605\n      ],\n      [\n        \"▁But\",\n        -8.295366287231445\n      ],\n      [\n        \"▁around\",\n        -8.300799369812012\n      ],\n      [\n        \"▁L\",\n        -8.301082611083984\n      ],\n      [\n        \"us\",\n        -8.304039001464844\n      ],\n      [\n        \"▁plus\",\n        -8.313054084777832\n      ],\n      [\n        \"▁To\",\n        -8.313691139221191\n      ],\n      [\n        \"▁5\",\n        -8.31412410736084\n      ],\n      [\n        \"▁high\",\n        -8.31862735748291\n      ],\n      [\n        \"▁long\",\n        -8.319378852844238\n      ],\n      [\n        \"D\",\n        -8.320075035095215\n      ],\n      [\n        \"▁D\",\n        -8.320279121398926\n      ],\n      [\n        \"▁really\",\n        -8.322924613952637\n      ],\n      [\n        \"▁nicht\",\n        -8.332040786743164\n      ],\n      [\n        \"▁Le\",\n        -8.335328102111816\n      ],\n      [\n        \"▁service\",\n        -8.3412504196167\n      ],\n      [\n        \"▁4\",\n        -8.342093467712402\n      ],\n      [\n        \"▁different\",\n        -8.342538833618164\n      ],\n      [\n        \"▁Die\",\n        -8.348092079162598\n      ],\n      [\n        \"▁think\",\n        -8.353771209716797\n      ],\n      [\n        \"—\",\n        -8.355998039245605\n      ],\n      [\n        \"▁auch\",\n        -8.357160568237305\n      ],\n      [\n        \"▁look\",\n        -8.362202644348145\n      ],\n      [\n        \"▁both\",\n        -8.366817474365234\n      ],\n      [\n        \"lor\",\n        -8.36687183380127\n      ],\n      [\n        \"▁down\",\n        -8.367999076843262\n      ],\n      [\n        \"ten\",\n        -8.368885040283203\n      ],\n      [\n        \"▁La\",\n        -8.378066062927246\n      ],\n      [\n        \"▁off\",\n        -8.380044937133789\n      ],\n      [\n        \"▁vous\",\n        -8.380541801452637\n      ],\n      [\n        \"▁They\",\n        -8.381462097167969\n      ],\n      [\n        \"M\",\n        -8.383248329162598\n      ],\n      [\n        \"▁pas\",\n        -8.384513854980469\n      ],\n      [\n        \"▁data\",\n        -8.385709762573242\n      ],\n      [\n        \"▁T\",\n        -8.386754989624023\n      ],\n      [\n        \"▁love\",\n        -8.388101577758789\n      ],\n      [\n        \"▁every\",\n        -8.390009880065918\n      ],\n      [\n        \"▁10\",\n        -8.391179084777832\n      ],\n      [\n        \"▁last\",\n        -8.392083168029785\n      ],\n      [\n        \"▁same\",\n        -8.393481254577637\n      ],\n      [\n        \"▁using\",\n        -8.395487785339355\n      ],\n      [\n        \"▁free\",\n        -8.408831596374512\n      ],\n      [\n        \"▁dem\",\n        -8.40894889831543\n      ],\n      [\n        \"▁still\",\n        -8.409984588623047\n      ],\n      [\n        \"ate\",\n        -8.410931587219238\n      ],\n      [\n        \"ist\",\n        -8.415611267089844\n      ],\n      [\n        \"▁between\",\n        -8.420283317565918\n      ],\n      [\n        \"P\",\n        -8.420982360839844\n      ],\n      [\n        \"be\",\n        -8.428167343139648\n      ],\n      [\n        \"▁available\",\n        -8.429443359375\n      ],\n      [\n        \"man\",\n        -8.432978630065918\n      ],\n      [\n        \"▁company\",\n        -8.439678192138672\n      ],\n      [\n        \"▁G\",\n        -8.441640853881836\n      ],\n      [\n        \"▁experience\",\n        -8.444950103759766\n      ],\n      [\n        \"▁going\",\n        -8.449073791503906\n      ],\n      [\n        \"▁site\",\n        -8.453832626342773\n      ],\n      [\n        \"j\",\n        -8.455142974853516\n      ],\n      [\n        \"are\",\n        -8.456900596618652\n      ],\n      [\n        \"▁set\",\n        -8.470661163330078\n      ],\n      [\n        \"2\",\n        -8.473684310913086\n      ],\n      [\n        \"▁system\",\n        -8.474678039550781\n      ],\n      [\n        \"▁important\",\n        -8.476791381835938\n      ],\n      [\n        \"▁few\",\n        -8.482437133789062\n      ],\n      [\n        \"▁fi\",\n        -8.482551574707031\n      ],\n      [\n        \"ich\",\n        -8.483301162719727\n      ],\n      [\n        \"▁What\",\n        -8.488649368286133\n      ],\n      [\n        \"▁services\",\n        -8.502433776855469\n      ],\n      [\n        \"▁under\",\n        -8.502569198608398\n      ],\n      [\n        \"▁When\",\n        -8.50308895111084\n      ],\n      [\n        \"▁online\",\n        -8.50699520111084\n      ],\n      [\n        \"▁New\",\n        -8.51494312286377\n      ],\n      [\n        \"▁come\",\n        -8.524871826171875\n      ],\n      [\n        \"▁provide\",\n        -8.525650024414062\n      ],\n      [\n        \"F\",\n        -8.526449203491211\n      ],\n      [\n        \"▁team\",\n        -8.52782154083252\n      ],\n      [\n        \"▁always\",\n        -8.529409408569336\n      ],\n      [\n        \"▁De\",\n        -8.530412673950195\n      ],\n      [\n        \"▁că\",\n        -8.532517433166504\n      ],\n      [\n        \"▁him\",\n        -8.53586196899414\n      ],\n      [\n        \"▁F\",\n        -8.538305282592773\n      ],\n      [\n        \"▁things\",\n        -8.550079345703125\n      ],\n      [\n        \"▁including\",\n        -8.550943374633789\n      ],\n      [\n        \"▁support\",\n        -8.552608489990234\n      ],\n      [\n        \"▁number\",\n        -8.554113388061523\n      ],\n      [\n        \"T\",\n        -8.557183265686035\n      ],\n      [\n        \"▁during\",\n        -8.55886459350586\n      ],\n      [\n        \"▁family\",\n        -8.560463905334473\n      ],\n      [\n        \"▁little\",\n        -8.561317443847656\n      ],\n      [\n        \"▁three\",\n        -8.567726135253906\n      ],\n      [\n        \"▁water\",\n        -8.56810188293457\n      ],\n      [\n        \"▁man\",\n        -8.569759368896484\n      ],\n      [\n        \"▁An\",\n        -8.57192611694336\n      ],\n      [\n        \"based\",\n        -8.572155952453613\n      ],\n      [\n        \"▁R\",\n        -8.57442855834961\n      ],\n      [\n        \"▁sau\",\n        -8.574433326721191\n      ],\n      [\n        \"▁avec\",\n        -8.576035499572754\n      ],\n      [\n        \"▁better\",\n        -8.576830863952637\n      ],\n      [\n        \"▁„\",\n        -8.582253456115723\n      ],\n      [\n        \"▁too\",\n        -8.58635425567627\n      ],\n      [\n        \"ge\",\n        -8.586719512939453\n      ],\n      [\n        \"▁must\",\n        -8.589736938476562\n      ],\n      [\n        \"▁per\",\n        -8.589916229248047\n      ],\n      [\n        \"ele\",\n        -8.590399742126465\n      ],\n      [\n        \"▁oder\",\n        -8.59264850616455\n      ],\n      [\n        \"au\",\n        -8.59555435180664\n      ],\n      [\n        \"▁aus\",\n        -8.595727920532227\n      ],\n      [\n        \"▁werden\",\n        -8.598653793334961\n      ],\n      [\n        \"▁does\",\n        -8.599140167236328\n      ],\n      [\n        \"▁without\",\n        -8.599270820617676\n      ],\n      [\n        \"▁ou\",\n        -8.599929809570312\n      ],\n      [\n        \"▁design\",\n        -8.60101318359375\n      ],\n      [\n        \"▁va\",\n        -8.605440139770508\n      ],\n      [\n        \"▁did\",\n        -8.615679740905762\n      ],\n      [\n        \"▁O\",\n        -8.619062423706055\n      ],\n      [\n        \"▁U\",\n        -8.623565673828125\n      ],\n      [\n        \"up\",\n        -8.62901496887207\n      ],\n      [\n        \"▁end\",\n        -8.63367748260498\n      ],\n      [\n        \"▁local\",\n        -8.636231422424316\n      ],\n      [\n        \"▁next\",\n        -8.638967514038086\n      ],\n      [\n        \"▁sure\",\n        -8.64098072052002\n      ],\n      [\n        \"▁lot\",\n        -8.64644718170166\n      ],\n      [\n        \"▁Re\",\n        -8.647016525268555\n      ],\n      [\n        \"▁top\",\n        -8.647642135620117\n      ],\n      [\n        \"▁Our\",\n        -8.656886100769043\n      ],\n      [\n        \"▁small\",\n        -8.656978607177734\n      ],\n      [\n        \"▁full\",\n        -8.659418106079102\n      ],\n      [\n        \"▁something\",\n        -8.662886619567871\n      ],\n      [\n        \"ung\",\n        -8.666722297668457\n      ],\n      [\n        \"▁vor\",\n        -8.673250198364258\n      ],\n      [\n        \"E\",\n        -8.673337936401367\n      ],\n      [\n        \"▁give\",\n        -8.67603588104248\n      ],\n      [\n        \"▁might\",\n        -8.67660903930664\n      ],\n      [\n        \"▁another\",\n        -8.679330825805664\n      ],\n      [\n        \"▁6\",\n        -8.680779457092285\n      ],\n      [\n        \"▁All\",\n        -8.681318283081055\n      ],\n      [\n        \"▁process\",\n        -8.681672096252441\n      ],\n      [\n        \"L\",\n        -8.682575225830078\n      ],\n      [\n        \"▁found\",\n        -8.68941593170166\n      ],\n      [\n        \"▁sind\",\n        -8.690044403076172\n      ],\n      [\n        \"▁since\",\n        -8.69528865814209\n      ],\n      [\n        \"▁With\",\n        -8.695560455322266\n      ],\n      [\n        \"K\",\n        -8.696988105773926\n      ],\n      [\n        \"um\",\n        -8.701016426086426\n      ],\n      [\n        \"▁within\",\n        -8.701669692993164\n      ],\n      [\n        \"▁post\",\n        -8.706608772277832\n      ],\n      [\n        \"▁car\",\n        -8.709365844726562\n      ],\n      [\n        \"une\",\n        -8.714099884033203\n      ],\n      [\n        \"▁N\",\n        -8.715041160583496\n      ],\n      [\n        \"▁J\",\n        -8.715597152709961\n      ],\n      [\n        \"ic\",\n        -8.71823787689209\n      ],\n      [\n        \"R\",\n        -8.722309112548828\n      ],\n      [\n        \"ter\",\n        -8.727437019348145\n      ],\n      [\n        \"ur\",\n        -8.728265762329102\n      ],\n      [\n        \"▁She\",\n        -8.73131275177002\n      ],\n      [\n        \"▁public\",\n        -8.732009887695312\n      ],\n      [\n        \"▁keep\",\n        -8.735784530639648\n      ],\n      [\n        \"▁H\",\n        -8.736178398132324\n      ],\n      [\n        \"▁order\",\n        -8.740762710571289\n      ],\n      [\n        \"▁start\",\n        -8.742195129394531\n      ],\n      [\n        \"ez\",\n        -8.74746322631836\n      ],\n      [\n        \"▁‘\",\n        -8.749832153320312\n      ],\n      [\n        \"uri\",\n        -8.751104354858398\n      ],\n      [\n        \"▁20\",\n        -8.752482414245605\n      ],\n      [\n        \"▁On\",\n        -8.753515243530273\n      ],\n      [\n        \"▁offer\",\n        -8.763005256652832\n      ],\n      [\n        \"▁quality\",\n        -8.764988899230957\n      ],\n      [\n        \"▁working\",\n        -8.769987106323242\n      ],\n      [\n        \"▁No\",\n        -8.770307540893555\n      ],\n      [\n        \"▁That\",\n        -8.775156021118164\n      ],\n      [\n        \"▁game\",\n        -8.7863187789917\n      ],\n      [\n        \"▁bei\",\n        -8.786642074584961\n      ],\n      [\n        \"▁today\",\n        -8.788661003112793\n      ],\n      [\n        \"▁never\",\n        -8.794586181640625\n      ],\n      [\n        \"▁week\",\n        -8.79587173461914\n      ],\n      [\n        \"▁St\",\n        -8.797786712646484\n      ],\n      [\n        \"▁feel\",\n        -8.799317359924316\n      ],\n      [\n        \"▁put\",\n        -8.801899909973145\n      ],\n      [\n        \"▁website\",\n        -8.80322265625\n      ],\n      [\n        \"Y\",\n        -8.804483413696289\n      ],\n      [\n        \"▁days\",\n        -8.804709434509277\n      ],\n      [\n        \"▁program\",\n        -8.805448532104492\n      ],\n      [\n        \"▁looking\",\n        -8.810463905334473\n      ],\n      [\n        \"▁K\",\n        -8.810808181762695\n      ],\n      [\n        \"▁students\",\n        -8.811436653137207\n      ],\n      [\n        \"▁create\",\n        -8.811800956726074\n      ],\n      [\n        \"▁change\",\n        -8.812616348266602\n      ],\n      [\n        \"▁book\",\n        -8.812932014465332\n      ],\n      [\n        \"ity\",\n        -8.813761711120605\n      ],\n      [\n        \"▁At\",\n        -8.815207481384277\n      ],\n      [\n        \"▁possible\",\n        -8.815670013427734\n      ],\n      [\n        \"▁sunt\",\n        -8.81651496887207\n      ],\n      [\n        \"▁7\",\n        -8.818120002746582\n      ],\n      [\n        \"▁real\",\n        -8.823369026184082\n      ],\n      [\n        \"▁al\",\n        -8.824172019958496\n      ],\n      [\n        \"▁making\",\n        -8.825371742248535\n      ],\n      [\n        \"▁Be\",\n        -8.825761795043945\n      ],\n      [\n        \"▁products\",\n        -8.82592487335205\n      ],\n      [\n        \"▁case\",\n        -8.82653522491455\n      ],\n      [\n        \"▁school\",\n        -8.8272066116333\n      ],\n      [\n        \"▁say\",\n        -8.830352783203125\n      ],\n      [\n        \"area\",\n        -8.832084655761719\n      ],\n      [\n        \"▁My\",\n        -8.833836555480957\n      ],\n      [\n        \"▁point\",\n        -8.834731101989746\n      ],\n      [\n        \"▁als\",\n        -8.83560848236084\n      ],\n      [\n        \"▁children\",\n        -8.836194038391113\n      ],\n      [\n        \"▁course\",\n        -8.844061851501465\n      ],\n      [\n        \"▁show\",\n        -8.847993850708008\n      ],\n      [\n        \"▁8\",\n        -8.849273681640625\n      ],\n      [\n        \"▁These\",\n        -8.849345207214355\n      ],\n      [\n        \"▁18\",\n        -8.851140975952148\n      ],\n      [\n        \"▁large\",\n        -8.851323127746582\n      ],\n      [\n        \"co\",\n        -8.854362487792969\n      ],\n      [\n        \"▁über\",\n        -8.854788780212402\n      ],\n      [\n        \"▁second\",\n        -8.856559753417969\n      ],\n      [\n        \"▁market\",\n        -8.859807014465332\n      ],\n      [\n        \"▁fost\",\n        -8.86048698425293\n      ],\n      [\n        \"▁easy\",\n        -8.863983154296875\n      ],\n      [\n        \"▁plan\",\n        -8.864302635192871\n      ],\n      [\n        \"▁project\",\n        -8.864927291870117\n      ],\n      [\n        \"G\",\n        -8.865178108215332\n      ],\n      [\n        \"W\",\n        -8.869574546813965\n      ],\n      [\n        \"3\",\n        -8.871939659118652\n      ],\n      [\n        \"▁son\",\n        -8.873332023620605\n      ],\n      [\n        \"la\",\n        -8.879053115844727\n      ],\n      [\n        \"▁face\",\n        -8.88137435913086\n      ],\n      [\n        \"▁needs\",\n        -8.88148021697998\n      ],\n      [\n        \"ch\",\n        -8.883138656616211\n      ],\n      [\n        \"▁personal\",\n        -8.88343620300293\n      ],\n      [\n        \"me\",\n        -8.886031150817871\n      ],\n      [\n        \"▁sont\",\n        -8.887377738952637\n      ],\n      [\n        \"▁je\",\n        -8.894930839538574\n      ],\n      [\n        \"▁non\",\n        -8.895471572875977\n      ],\n      [\n        \"▁got\",\n        -8.896591186523438\n      ],\n      [\n        \"▁Do\",\n        -8.897382736206055\n      ],\n      [\n        \"the\",\n        -8.89765453338623\n      ],\n      [\n        \"▁health\",\n        -8.89908504486084\n      ],\n      [\n        \"▁special\",\n        -8.90555477142334\n      ],\n      [\n        \".\\\"\",\n        -8.907710075378418\n      ],\n      [\n        \"1\",\n        -8.907852172851562\n      ],\n      [\n        \"den\",\n        -8.908616065979004\n      ],\n      [\n        \"▁state\",\n        -8.909355163574219\n      ],\n      [\n        \"▁open\",\n        -8.91019058227539\n      ],\n      [\n        \"▁money\",\n        -8.91053581237793\n      ],\n      [\n        \"▁again\",\n        -8.913084983825684\n      ],\n      [\n        \"▁food\",\n        -8.913167953491211\n      ],\n      [\n        \"▁page\",\n        -8.914595603942871\n      ],\n      [\n        \"▁together\",\n        -8.91628360748291\n      ],\n      [\n        \"age\",\n        -8.919108390808105\n      ],\n      [\n        \"▁qu\",\n        -8.921928405761719\n      ],\n      [\n        \"hat\",\n        -8.922386169433594\n      ],\n      [\n        \"▁ver\",\n        -8.926993370056152\n      ],\n      [\n        \"▁W\",\n        -8.927785873413086\n      ],\n      [\n        \"▁away\",\n        -8.928759574890137\n      ],\n      [\n        \"▁wird\",\n        -8.931641578674316\n      ],\n      [\n        \"▁until\",\n        -8.934249877929688\n      ],\n      [\n        \"V\",\n        -8.934935569763184\n      ],\n      [\n        \"▁pre\",\n        -8.935851097106934\n      ],\n      [\n        \"▁One\",\n        -8.936429977416992\n      ],\n      [\n        \"▁product\",\n        -8.936561584472656\n      ],\n      [\n        \"▁often\",\n        -8.939326286315918\n      ],\n      [\n        \"▁wir\",\n        -8.944111824035645\n      ],\n      [\n        \"▁nach\",\n        -8.945127487182617\n      ],\n      [\n        \"▁include\",\n        -8.946555137634277\n      ],\n      [\n        \"▁um\",\n        -8.948204040527344\n      ],\n      [\n        \"▁room\",\n        -8.953709602355957\n      ],\n      [\n        \"▁group\",\n        -8.953767776489258\n      ],\n      [\n        \"▁name\",\n        -8.954949378967285\n      ],\n      [\n        \"ce\",\n        -8.955448150634766\n      ],\n      [\n        \"H\",\n        -8.956180572509766\n      ],\n      [\n        \"N\",\n        -8.958139419555664\n      ],\n      [\n        \"▁person\",\n        -8.958183288574219\n      ],\n      [\n        \"▁social\",\n        -8.958606719970703\n      ],\n      [\n        \"▁list\",\n        -8.963666915893555\n      ],\n      [\n        \"▁How\",\n        -8.964127540588379\n      ],\n      [\n        \"▁why\",\n        -8.96571159362793\n      ],\n      [\n        \"▁community\",\n        -8.965995788574219\n      ],\n      [\n        \"▁contact\",\n        -8.973031044006348\n      ],\n      [\n        \"­\",\n        -8.9755859375\n      ],\n      [\n        \"▁co\",\n        -8.979683876037598\n      ],\n      [\n        \"▁play\",\n        -8.983960151672363\n      ],\n      [\n        \"▁having\",\n        -8.984169960021973\n      ],\n      [\n        \"▁power\",\n        -8.986917495727539\n      ],\n      [\n        \"▁call\",\n        -8.991690635681152\n      ],\n      [\n        \"▁against\",\n        -8.991816520690918\n      ],\n      [\n        \"▁become\",\n        -8.997780799865723\n      ],\n      [\n        \"▁cost\",\n        -9.003793716430664\n      ],\n      [\n        \"▁V\",\n        -9.004593849182129\n      ],\n      [\n        \"▁research\",\n        -9.006913185119629\n      ],\n      [\n        \"▁12\",\n        -9.007307052612305\n      ],\n      [\n        \"▁wie\",\n        -9.008277893066406\n      ],\n      [\n        \"der\",\n        -9.008386611938477\n      ],\n      [\n        \"▁thing\",\n        -9.014028549194336\n      ],\n      [\n        \"▁along\",\n        -9.017301559448242\n      ],\n      [\n        \"4\",\n        -9.017330169677734\n      ],\n      [\n        \"▁access\",\n        -9.020391464233398\n      ],\n      [\n        \"▁level\",\n        -9.020505905151367\n      ],\n      [\n        \"▁price\",\n        -9.022817611694336\n      ],\n      [\n        \"▁einen\",\n        -9.023714065551758\n      ],\n      [\n        \"▁side\",\n        -9.026359558105469\n      ],\n      [\n        \"▁Un\",\n        -9.026851654052734\n      ],\n      [\n        \"▁means\",\n        -9.030416488647461\n      ],\n      [\n        \"(\",\n        -9.032341957092285\n      ],\n      [\n        \"▁big\",\n        -9.034374237060547\n      ],\n      [\n        \"▁God\",\n        -9.036499977111816\n      ],\n      [\n        \"▁dass\",\n        -9.037314414978027\n      ],\n      [\n        \"im\",\n        -9.037374496459961\n      ],\n      [\n        \"▁30\",\n        -9.037432670593262\n      ],\n      [\n        \"▁event\",\n        -9.041665077209473\n      ],\n      [\n        \"▁development\",\n        -9.042060852050781\n      ],\n      [\n        \"▁form\",\n        -9.04226303100586\n      ],\n      [\n        \"▁read\",\n        -9.042579650878906\n      ],\n      [\n        \"▁hand\",\n        -9.043194770812988\n      ],\n      [\n        \"▁control\",\n        -9.04446792602539\n      ],\n      [\n        \"▁However\",\n        -9.046320915222168\n      ],\n      [\n        \"▁done\",\n        -9.048060417175293\n      ],\n      [\n        \"▁job\",\n        -9.051692008972168\n      ],\n      [\n        \"▁hard\",\n        -9.056619644165039\n      ],\n      [\n        \"▁war\",\n        -9.057538032531738\n      ],\n      [\n        \"▁area\",\n        -9.0584135055542\n      ],\n      [\n        \"▁add\",\n        -9.0586576461792\n      ],\n      [\n        \"▁votre\",\n        -9.0593900680542\n      ],\n      [\n        \"▁live\",\n        -9.059494018554688\n      ],\n      [\n        \"▁range\",\n        -9.060099601745605\n      ],\n      [\n        \"▁After\",\n        -9.060164451599121\n      ],\n      [\n        \"▁Les\",\n        -9.060513496398926\n      ],\n      [\n        \"▁far\",\n        -9.064413070678711\n      ],\n      [\n        \"ver\",\n        -9.064727783203125\n      ],\n      [\n        \"▁old\",\n        -9.069576263427734\n      ],\n      [\n        \"▁perfect\",\n        -9.06976318359375\n      ],\n      [\n        \"▁15\",\n        -9.070429801940918\n      ],\n      [\n        \"▁space\",\n        -9.073654174804688\n      ],\n      [\n        \"▁house\",\n        -9.074068069458008\n      ],\n      [\n        \"ine\",\n        -9.07408618927002\n      ],\n      [\n        \"▁enough\",\n        -9.074334144592285\n      ],\n      [\n        \"0\",\n        -9.075824737548828\n      ],\n      [\n        \"▁several\",\n        -9.077119827270508\n      ],\n      [\n        \"The\",\n        -9.081155776977539\n      ],\n      [\n        \"mm\",\n        -9.085619926452637\n      ],\n      [\n        \"▁University\",\n        -9.08637523651123\n      ],\n      [\n        \"▁diese\",\n        -9.087566375732422\n      ],\n      [\n        \"▁Co\",\n        -9.088335990905762\n      ],\n      [\n        \"▁comes\",\n        -9.088497161865234\n      ],\n      [\n        \"▁across\",\n        -9.088857650756836\n      ],\n      [\n        \"▁already\",\n        -9.090097427368164\n      ],\n      [\n        \",”\",\n        -9.090341567993164\n      ],\n      [\n        \"▁body\",\n        -9.09276294708252\n      ],\n      [\n        \"▁Das\",\n        -9.094594955444336\n      ],\n      [\n        \"▁einer\",\n        -9.095956802368164\n      ],\n      [\n        \"▁left\",\n        -9.09921646118164\n      ],\n      [\n        \"▁future\",\n        -9.105711936950684\n      ],\n      [\n        \"▁times\",\n        -9.106670379638672\n      ],\n      [\n        \"▁dar\",\n        -9.109651565551758\n      ],\n      [\n        \"▁simple\",\n        -9.110408782958984\n      ],\n      [\n        \"ry\",\n        -9.112407684326172\n      ],\n      [\n        \"▁getting\",\n        -9.113155364990234\n      ],\n      [\n        \"▁try\",\n        -9.115362167358398\n      ],\n      [\n        \"ți\",\n        -9.116897583007812\n      ],\n      [\n        \"ness\",\n        -9.120043754577637\n      ],\n      [\n        \"▁makes\",\n        -9.120377540588379\n      ],\n      [\n        \"▁past\",\n        -9.120619773864746\n      ],\n      [\n        \"ca\",\n        -9.12130069732666\n      ],\n      [\n        \"▁light\",\n        -9.122207641601562\n      ],\n      [\n        \"▁Der\",\n        -9.122997283935547\n      ],\n      [\n        \"▁run\",\n        -9.125843048095703\n      ],\n      [\n        \"▁four\",\n        -9.126943588256836\n      ],\n      [\n        \"ance\",\n        -9.130500793457031\n      ],\n      [\n        \"▁ever\",\n        -9.131503105163574\n      ],\n      [\n        \"▁einem\",\n        -9.131816864013672\n      ],\n      [\n        \"▁below\",\n        -9.133723258972168\n      ],\n      [\n        \"O\",\n        -9.134073257446289\n      ],\n      [\n        \"▁9\",\n        -9.137282371520996\n      ],\n      [\n        \"▁learn\",\n        -9.14004135131836\n      ],\n      [\n        \"out\",\n        -9.140358924865723\n      ],\n      [\n        \"▁video\",\n        -9.143178939819336\n      ],\n      [\n        \"▁etc\",\n        -9.146929740905762\n      ],\n      [\n        \"▁«\",\n        -9.148795127868652\n      ],\n      [\n        \"▁zum\",\n        -9.149712562561035\n      ],\n      [\n        \"▁kann\",\n        -9.1504487991333\n      ],\n      [\n        \"▁minutes\",\n        -9.151180267333984\n      ],\n      [\n        \"▁example\",\n        -9.154194831848145\n      ],\n      [\n        \"▁nous\",\n        -9.154619216918945\n      ],\n      [\n        \"▁Se\",\n        -9.157441139221191\n      ],\n      [\n        \"▁sie\",\n        -9.159955024719238\n      ],\n      [\n        \"▁industry\",\n        -9.161614418029785\n      ],\n      [\n        \"▁problem\",\n        -9.162016868591309\n      ],\n      [\n        \"J\",\n        -9.162480354309082\n      ],\n      [\n        \"▁country\",\n        -9.163366317749023\n      ],\n      [\n        \"▁fact\",\n        -9.164189338684082\n      ],\n      [\n        \"▁type\",\n        -9.164190292358398\n      ],\n      [\n        \"ner\",\n        -9.164238929748535\n      ],\n      [\n        \"▁companies\",\n        -9.165864944458008\n      ],\n      [\n        \"▁line\",\n        -9.169849395751953\n      ],\n      [\n        \"▁city\",\n        -9.172713279724121\n      ],\n      [\n        \"▁check\",\n        -9.173710823059082\n      ],\n      [\n        \"▁doing\",\n        -9.174406051635742\n      ],\n      [\n        \"elle\",\n        -9.175037384033203\n      ],\n      [\n        \"▁fun\",\n        -9.176549911499023\n      ],\n      [\n        \"▁En\",\n        -9.177546501159668\n      ],\n      [\n        \"▁Your\",\n        -9.178601264953613\n      ],\n      [\n        \"ling\",\n        -9.181450843811035\n      ],\n      [\n        \"▁share\",\n        -9.18185806274414\n      ],\n      [\n        \"ile\",\n        -9.182005882263184\n      ],\n      [\n        \"▁actually\",\n        -9.187544822692871\n      ],\n      [\n        \"▁value\",\n        -9.187751770019531\n      ],\n      [\n        \"zi\",\n        -9.188661575317383\n      ],\n      [\n        \"▁ab\",\n        -9.1898832321167\n      ],\n      [\n        \"▁offers\",\n        -9.1905517578125\n      ],\n      [\n        \"▁less\",\n        -9.190573692321777\n      ],\n      [\n        \"▁night\",\n        -9.193560600280762\n      ],\n      [\n        \"▁Dr\",\n        -9.19518756866455\n      ],\n      [\n        \"▁started\",\n        -9.195454597473145\n      ],\n      [\n        \"▁least\",\n        -9.198020935058594\n      ],\n      [\n        \"▁short\",\n        -9.198562622070312\n      ],\n      [\n        \"▁main\",\n        -9.201143264770508\n      ],\n      [\n        \"▁single\",\n        -9.202939987182617\n      ],\n      [\n        \"▁though\",\n        -9.203780174255371\n      ],\n      [\n        \"▁prin\",\n        -9.203930854797363\n      ],\n      [\n        \"time\",\n        -9.20531177520752\n      ],\n      [\n        \"▁hours\",\n        -9.206608772277832\n      ],\n      [\n        \"▁others\",\n        -9.206849098205566\n      ],\n      [\n        \"▁called\",\n        -9.20730209350586\n      ],\n      [\n        \"▁visit\",\n        -9.208869934082031\n      ],\n      [\n        \"▁bit\",\n        -9.209009170532227\n      ],\n      [\n        \"ée\",\n        -9.210821151733398\n      ],\n      [\n        \"▁customers\",\n        -9.211383819580078\n      ],\n      [\n        \"▁music\",\n        -9.212000846862793\n      ],\n      [\n        \"▁members\",\n        -9.217191696166992\n      ],\n      [\n        \"ies\",\n        -9.21743392944336\n      ],\n      [\n        \"▁pay\",\n        -9.219176292419434\n      ],\n      [\n        \"nd\",\n        -9.219744682312012\n      ],\n      [\n        \"▁once\",\n        -9.221125602722168\n      ],\n      [\n        \"gen\",\n        -9.2217378616333\n      ],\n      [\n        \"▁können\",\n        -9.222976684570312\n      ],\n      [\n        \"▁low\",\n        -9.223771095275879\n      ],\n      [\n        \"▁durch\",\n        -9.227394104003906\n      ],\n      [\n        \"▁story\",\n        -9.228075981140137\n      ],\n      [\n        \"▁understand\",\n        -9.22953987121582\n      ],\n      [\n        \"“\",\n        -9.229856491088867\n      ],\n      [\n        \"▁Am\",\n        -9.231831550598145\n      ],\n      [\n        \"▁didn\",\n        -9.234603881835938\n      ],\n      [\n        \"▁content\",\n        -9.237217903137207\n      ],\n      [\n        \"son\",\n        -9.24180793762207\n      ],\n      [\n        \"▁building\",\n        -9.242242813110352\n      ],\n      [\n        \"▁result\",\n        -9.242605209350586\n      ],\n      [\n        \"▁aux\",\n        -9.243107795715332\n      ],\n      [\n        \"▁complete\",\n        -9.244999885559082\n      ],\n      [\n        \"▁doesn\",\n        -9.24510669708252\n      ],\n      [\n        \"▁haben\",\n        -9.246070861816406\n      ],\n      [\n        \"▁questions\",\n        -9.24661636352539\n      ],\n      [\n        \"line\",\n        -9.247077941894531\n      ],\n      [\n        \"▁technology\",\n        -9.247429847717285\n      ],\n      [\n        \"▁Pro\",\n        -9.247976303100586\n      ],\n      [\n        \"▁current\",\n        -9.248504638671875\n      ],\n      [\n        \"▁won\",\n        -9.248883247375488\n      ],\n      [\n        \"▁let\",\n        -9.250710487365723\n      ],\n      [\n        \"▁features\",\n        -9.251978874206543\n      ],\n      [\n        \"▁please\",\n        -9.258262634277344\n      ],\n      [\n        \"5\",\n        -9.258519172668457\n      ],\n      [\n        \"▁above\",\n        -9.259394645690918\n      ],\n      [\n        \"ive\",\n        -9.262128829956055\n      ],\n      [\n        \"▁management\",\n        -9.262394905090332\n      ],\n      [\n        \"▁lui\",\n        -9.262539863586426\n      ],\n      [\n        \"her\",\n        -9.263057708740234\n      ],\n      [\n        \"▁training\",\n        -9.265711784362793\n      ],\n      [\n        \"▁everything\",\n        -9.2665433883667\n      ],\n      [\n        \"▁noch\",\n        -9.266846656799316\n      ],\n      [\n        \"▁came\",\n        -9.267708778381348\n      ],\n      [\n        \"▁web\",\n        -9.272823333740234\n      ],\n      [\n        \"▁ensure\",\n        -9.272987365722656\n      ],\n      [\n        \"▁months\",\n        -9.273130416870117\n      ],\n      [\n        \"▁art\",\n        -9.27313232421875\n      ],\n      [\n        \"▁sub\",\n        -9.274359703063965\n      ],\n      [\n        \"▁million\",\n        -9.274559020996094\n      ],\n      [\n        \"▁professional\",\n        -9.275035858154297\n      ],\n      [\n        \"▁results\",\n        -9.278368949890137\n      ],\n      [\n        \"▁kind\",\n        -9.278395652770996\n      ],\n      [\n        \"▁season\",\n        -9.279285430908203\n      ],\n      [\n        \"▁unique\",\n        -9.281067848205566\n      ],\n      [\n        \"ze\",\n        -9.284360885620117\n      ],\n      [\n        \"▁enjoy\",\n        -9.28487777709961\n      ],\n      [\n        \"▁early\",\n        -9.287765502929688\n      ],\n      [\n        \"▁major\",\n        -9.288202285766602\n      ],\n      [\n        \"▁yet\",\n        -9.29152774810791\n      ],\n      [\n        \"▁Ver\",\n        -9.293331146240234\n      ],\n      [\n        \"one\",\n        -9.296777725219727\n      ],\n      [\n        \"▁media\",\n        -9.29719352722168\n      ],\n      [\n        \"▁[\",\n        -9.30095100402832\n      ],\n      [\n        \"▁property\",\n        -9.302969932556152\n      ],\n      [\n        \"▁beautiful\",\n        -9.304466247558594\n      ],\n      [\n        \"▁given\",\n        -9.305286407470703\n      ],\n      [\n        \"▁due\",\n        -9.306716918945312\n      ],\n      [\n        \"▁government\",\n        -9.307181358337402\n      ],\n      [\n        \"▁nur\",\n        -9.30881404876709\n      ],\n      [\n        \"▁email\",\n        -9.309103012084961\n      ],\n      [\n        \"▁total\",\n        -9.311080932617188\n      ],\n      [\n        \"▁natural\",\n        -9.311264038085938\n      ],\n      [\n        \"▁test\",\n        -9.311450004577637\n      ],\n      [\n        \"▁provides\",\n        -9.311640739440918\n      ],\n      [\n        \"▁various\",\n        -9.312631607055664\n      ],\n      [\n        \"▁American\",\n        -9.315605163574219\n      ],\n      [\n        \"▁moment\",\n        -9.318109512329102\n      ],\n      [\n        \"▁air\",\n        -9.318952560424805\n      ],\n      [\n        \"▁idea\",\n        -9.319236755371094\n      ],\n      [\n        \"▁known\",\n        -9.319981575012207\n      ],\n      [\n        \"▁Il\",\n        -9.320504188537598\n      ],\n      [\n        \"▁friends\",\n        -9.320576667785645\n      ],\n      [\n        \"▁final\",\n        -9.320919036865234\n      ],\n      [\n        \"▁buy\",\n        -9.32139778137207\n      ],\n      [\n        \"▁specific\",\n        -9.322234153747559\n      ],\n      [\n        \"▁issues\",\n        -9.32454776763916\n      ],\n      [\n        \"▁took\",\n        -9.325233459472656\n      ],\n      [\n        \"▁mind\",\n        -9.326258659362793\n      ],\n      [\n        \"▁study\",\n        -9.32675838470459\n      ],\n      [\n        \"▁addition\",\n        -9.328418731689453\n      ],\n      [\n        \"▁size\",\n        -9.332446098327637\n      ],\n      [\n        \"▁pro\",\n        -9.334047317504883\n      ],\n      [\n        \"▁film\",\n        -9.33545970916748\n      ],\n      [\n        \"▁pot\",\n        -9.335636138916016\n      ],\n      [\n        \"▁thought\",\n        -9.338120460510254\n      ],\n      [\n        \"▁tell\",\n        -9.33890438079834\n      ],\n      [\n        \"▁While\",\n        -9.339675903320312\n      ],\n      [\n        \"▁head\",\n        -9.339983940124512\n      ],\n      [\n        \"▁clients\",\n        -9.340429306030273\n      ],\n      [\n        \"▁performance\",\n        -9.346199989318848\n      ],\n      [\n        \"▁question\",\n        -9.346835136413574\n      ],\n      [\n        \"▁whether\",\n        -9.347925186157227\n      ],\n      [\n        \"▁certain\",\n        -9.34826946258545\n      ],\n      [\n        \"▁model\",\n        -9.348764419555664\n      ],\n      [\n        \"▁following\",\n        -9.350926399230957\n      ],\n      [\n        \"▁energy\",\n        -9.354207992553711\n      ],\n      [\n        \"▁office\",\n        -9.354207992553711\n      ],\n      [\n        \"▁whole\",\n        -9.356687545776367\n      ],\n      [\n        \"▁bring\",\n        -9.356956481933594\n      ],\n      [\n        \"▁required\",\n        -9.35726261138916\n      ],\n      [\n        \"ţi\",\n        -9.358223915100098\n      ],\n      [\n        \"▁date\",\n        -9.358695030212402\n      ],\n      [\n        \"_\",\n        -9.358983039855957\n      ],\n      [\n        \"que\",\n        -9.359789848327637\n      ],\n      [\n        \"▁da\",\n        -9.360264778137207\n      ],\n      [\n        \"▁US\",\n        -9.36120319366455\n      ],\n      [\n        \"▁taking\",\n        -9.36143684387207\n      ],\n      [\n        \"go\",\n        -9.362788200378418\n      ],\n      [\n        \"▁living\",\n        -9.36341667175293\n      ],\n      [\n        \"▁someone\",\n        -9.363489151000977\n      ],\n      [\n        \"▁heart\",\n        -9.365120887756348\n      ],\n      [\n        \"▁key\",\n        -9.365775108337402\n      ],\n      [\n        \"▁areas\",\n        -9.366238594055176\n      ],\n      [\n        \"▁says\",\n        -9.367013931274414\n      ],\n      [\n        \"▁2018\",\n        -9.369132041931152\n      ],\n      [\n        \"▁month\",\n        -9.37012767791748\n      ],\n      [\n        \"▁Er\",\n        -9.371354103088379\n      ],\n      [\n        \"ste\",\n        -9.375077247619629\n      ],\n      [\n        \"▁11\",\n        -9.375179290771484\n      ],\n      [\n        \"▁front\",\n        -9.37528133392334\n      ],\n      [\n        \"▁Now\",\n        -9.37669563293457\n      ],\n      [\n        \"▁class\",\n        -9.376946449279785\n      ],\n      [\n        \"▁choose\",\n        -9.377082824707031\n      ],\n      [\n        \"pe\",\n        -9.37808609008789\n      ],\n      [\n        \"▁further\",\n        -9.379021644592285\n      ],\n      [\n        \"▁believe\",\n        -9.37936019897461\n      ],\n      [\n        \"of\",\n        -9.379590034484863\n      ],\n      [\n        \"▁among\",\n        -9.380990982055664\n      ],\n      [\n        \"sch\",\n        -9.381686210632324\n      ],\n      [\n        \"▁child\",\n        -9.382609367370605\n      ],\n      [\n        \"▁aber\",\n        -9.38376235961914\n      ],\n      [\n        \"▁Please\",\n        -9.386269569396973\n      ],\n      [\n        \"rea\",\n        -9.387248992919922\n      ],\n      [\n        \"▁later\",\n        -9.387272834777832\n      ],\n      [\n        \"▁amount\",\n        -9.388760566711426\n      ],\n      [\n        \"ice\",\n        -9.390128135681152\n      ],\n      [\n        \"▁National\",\n        -9.390177726745605\n      ],\n      [\n        \"▁style\",\n        -9.390748977661133\n      ],\n      [\n        \"▁tout\",\n        -9.391490936279297\n      ],\n      [\n        \"▁staff\",\n        -9.392939567565918\n      ],\n      [\n        \"▁white\",\n        -9.397933959960938\n      ],\n      [\n        \"▁ge\",\n        -9.399179458618164\n      ],\n      [\n        \"▁five\",\n        -9.400984764099121\n      ],\n      [\n        \"▁blog\",\n        -9.40109920501709\n      ],\n      [\n        \"▁designed\",\n        -9.40125846862793\n      ],\n      [\n        \"▁went\",\n        -9.402216911315918\n      ],\n      [\n        \"▁Da\",\n        -9.40268611907959\n      ],\n      [\n        \"▁general\",\n        -9.403801918029785\n      ],\n      [\n        \"▁rest\",\n        -9.403874397277832\n      ],\n      [\n        \"▁zur\",\n        -9.40579891204834\n      ],\n      [\n        \"▁quite\",\n        -9.405948638916016\n      ],\n      [\n        \"per\",\n        -9.40687084197998\n      ],\n      [\n        \"▁customer\",\n        -9.408379554748535\n      ],\n      [\n        \"▁close\",\n        -9.408747673034668\n      ],\n      [\n        \"▁Some\",\n        -9.41054630279541\n      ],\n      [\n        \"▁women\",\n        -9.41075611114502\n      ],\n      [\n        \"▁move\",\n        -9.410761833190918\n      ],\n      [\n        \"▁software\",\n        -9.411357879638672\n      ],\n      [\n        \"▁Ein\",\n        -9.413651466369629\n      ],\n      [\n        \"▁Ab\",\n        -9.413823127746582\n      ],\n      [\n        \"▁history\",\n        -9.413864135742188\n      ],\n      [\n        \"▁either\",\n        -9.41564655303955\n      ],\n      [\n        \"▁seen\",\n        -9.417396545410156\n      ],\n      [\n        \"▁card\",\n        -9.419726371765137\n      ],\n      [\n        \"▁City\",\n        -9.421541213989258\n      ],\n      [\n        \"▁hope\",\n        -9.421769142150879\n      ],\n      [\n        \"▁16\",\n        -9.422072410583496\n      ],\n      [\n        \"és\",\n        -9.422825813293457\n      ],\n      [\n        \"va\",\n        -9.423294067382812\n      ],\n      [\n        \"▁Al\",\n        -9.423827171325684\n      ],\n      [\n        \"▁especially\",\n        -9.424827575683594\n      ],\n      [\n        \"▁view\",\n        -9.426136016845703\n      ],\n      [\n        \"men\",\n        -9.427363395690918\n      ],\n      [\n        \"▁account\",\n        -9.427489280700684\n      ],\n      [\n        \"▁needed\",\n        -9.429777145385742\n      ],\n      [\n        \"▁United\",\n        -9.429789543151855\n      ],\n      [\n        \"]\",\n        -9.432387351989746\n      ],\n      [\n        \"▁yourself\",\n        -9.432788848876953\n      ],\n      [\n        \"▁100\",\n        -9.433059692382812\n      ],\n      [\n        \"▁receive\",\n        -9.433417320251465\n      ],\n      [\n        \"▁ideas\",\n        -9.43369197845459\n      ],\n      [\n        \"▁writing\",\n        -9.434585571289062\n      ],\n      [\n        \"▁simply\",\n        -9.434741973876953\n      ],\n      [\n        \"▁present\",\n        -9.435087203979492\n      ],\n      [\n        \"▁continue\",\n        -9.436107635498047\n      ],\n      [\n        \"▁application\",\n        -9.44115161895752\n      ],\n      [\n        \"▁build\",\n        -9.44187068939209\n      ],\n      [\n        \"▁turn\",\n        -9.44249439239502\n      ],\n      [\n        \"ated\",\n        -9.442923545837402\n      ],\n      [\n        \"▁everyone\",\n        -9.443060874938965\n      ],\n      [\n        \"cette\",\n        -9.443114280700684\n      ],\n      [\n        \"▁bien\",\n        -9.444964408874512\n      ],\n      [\n        \"less\",\n        -9.445222854614258\n      ],\n      [\n        \"▁Si\",\n        -9.445359230041504\n      ],\n      [\n        \"▁original\",\n        -9.446867942810059\n      ],\n      [\n        \"8\",\n        -9.44794750213623\n      ],\n      [\n        \"▁individual\",\n        -9.448895454406738\n      ],\n      [\n        \"tre\",\n        -9.449433326721191\n      ],\n      [\n        \"▁works\",\n        -9.45171070098877\n      ],\n      [\n        \"▁options\",\n        -9.451821327209473\n      ],\n      [\n        \"▁May\",\n        -9.454456329345703\n      ],\n      [\n        \"▁Not\",\n        -9.454940795898438\n      ],\n      [\n        \"▁report\",\n        -9.455467224121094\n      ],\n      [\n        \"mer\",\n        -9.457239151000977\n      ],\n      [\n        \"▁human\",\n        -9.459118843078613\n      ],\n      [\n        \"▁provided\",\n        -9.459603309631348\n      ],\n      [\n        \"▁By\",\n        -9.460925102233887\n      ],\n      [\n        \"▁series\",\n        -9.462006568908691\n      ],\n      [\n        \"7\",\n        -9.46226692199707\n      ],\n      [\n        \"▁modern\",\n        -9.463875770568848\n      ],\n      [\n        \"▁meet\",\n        -9.463921546936035\n      ],\n      [\n        \"▁50\",\n        -9.464119911193848\n      ],\n      [\n        \"▁25\",\n        -9.46969985961914\n      ],\n      [\n        \"▁color\",\n        -9.470091819763184\n      ],\n      [\n        \"▁download\",\n        -9.470109939575195\n      ],\n      [\n        \"▁Here\",\n        -9.471144676208496\n      ],\n      [\n        \"6\",\n        -9.471323013305664\n      ],\n      [\n        \"▁poate\",\n        -9.471449851989746\n      ],\n      [\n        \"▁În\",\n        -9.472321510314941\n      ],\n      [\n        \"▁phone\",\n        -9.473695755004883\n      ],\n      [\n        \"▁likely\",\n        -9.474374771118164\n      ],\n      [\n        \"▁table\",\n        -9.476469993591309\n      ],\n      [\n        \"▁ma\",\n        -9.476551055908203\n      ],\n      [\n        \"▁Or\",\n        -9.479181289672852\n      ],\n      [\n        \"Z\",\n        -9.48026180267334\n      ],\n      [\n        \"▁19\",\n        -9.482215881347656\n      ],\n      [\n        \"▁insurance\",\n        -9.482544898986816\n      ],\n      [\n        \"▁anything\",\n        -9.483808517456055\n      ],\n      [\n        \"▁search\",\n        -9.485033988952637\n      ],\n      [\n        \"▁Ge\",\n        -9.48520565032959\n      ],\n      [\n        \"▁issue\",\n        -9.485564231872559\n      ],\n      [\n        \"▁includes\",\n        -9.485688209533691\n      ],\n      [\n        \"▁clear\",\n        -9.487342834472656\n      ],\n      [\n        \"les\",\n        -9.488021850585938\n      ],\n      [\n        \"▁almost\",\n        -9.488259315490723\n      ],\n      [\n        \"ilor\",\n        -9.48935317993164\n      ],\n      [\n        \"▁14\",\n        -9.490717887878418\n      ],\n      [\n        \"by\",\n        -9.494056701660156\n      ],\n      [\n        \"▁Du\",\n        -9.49624252319336\n      ],\n      [\n        \"▁mais\",\n        -9.497303009033203\n      ],\n      [\n        \"ier\",\n        -9.499163627624512\n      ],\n      [\n        \"▁law\",\n        -9.49924087524414\n      ],\n      [\n        \"▁added\",\n        -9.500134468078613\n      ],\n      [\n        \"▁con\",\n        -9.500962257385254\n      ],\n      [\n        \",\\\"\",\n        -9.501530647277832\n      ],\n      [\n        \"▁ago\",\n        -9.502127647399902\n      ],\n      [\n        \"▁His\",\n        -9.504697799682617\n      ],\n      [\n        \"▁points\",\n        -9.504981994628906\n      ],\n      [\n        \"▁mult\",\n        -9.505581855773926\n      ],\n      [\n        \"▁financial\",\n        -9.506216049194336\n      ],\n      [\n        \"▁problems\",\n        -9.506428718566895\n      ],\n      [\n        \"▁however\",\n        -9.50648307800293\n      ],\n      [\n        \"▁events\",\n        -9.50675106048584\n      ],\n      [\n        \"▁half\",\n        -9.507889747619629\n      ],\n      [\n        \"ard\",\n        -9.511183738708496\n      ],\n      [\n        \"▁ask\",\n        -9.51156997680664\n      ],\n      [\n        \"▁version\",\n        -9.511631965637207\n      ],\n      [\n        \"end\",\n        -9.512478828430176\n      ],\n      [\n        \"▁created\",\n        -9.512639999389648\n      ],\n      [\n        \"▁lead\",\n        -9.512917518615723\n      ],\n      [\n        \"▁focus\",\n        -9.513853073120117\n      ],\n      [\n        \"▁increase\",\n        -9.515096664428711\n      ],\n      [\n        \"ex\",\n        -9.515118598937988\n      ],\n      [\n        \"▁allow\",\n        -9.515798568725586\n      ],\n      [\n        \"▁extra\",\n        -9.516464233398438\n      ],\n      [\n        \"▁24\",\n        -9.516692161560059\n      ],\n      [\n        \"▁credit\",\n        -9.516772270202637\n      ],\n      [\n        \"▁production\",\n        -9.516801834106445\n      ],\n      [\n        \"zu\",\n        -9.517256736755371\n      ],\n      [\n        \"▁black\",\n        -9.51754093170166\n      ],\n      [\n        \"▁systems\",\n        -9.518040657043457\n      ],\n      [\n        \"▁17\",\n        -9.518178939819336\n      ],\n      [\n        \"▁opportunity\",\n        -9.518531799316406\n      ],\n      [\n        \"▁bis\",\n        -9.519219398498535\n      ],\n      [\n        \"▁fast\",\n        -9.519807815551758\n      ],\n      [\n        \"ring\",\n        -9.521166801452637\n      ],\n      [\n        \"▁Don\",\n        -9.522114753723145\n      ],\n      [\n        \"▁via\",\n        -9.52242660522461\n      ],\n      [\n        \"fer\",\n        -9.5225248336792\n      ],\n      [\n        \"▁comme\",\n        -9.522799491882324\n      ],\n      [\n        \"▁popular\",\n        -9.523722648620605\n      ],\n      [\n        \"▁South\",\n        -9.524491310119629\n      ],\n      [\n        \"ating\",\n        -9.525003433227539\n      ],\n      [\n        \"▁State\",\n        -9.525198936462402\n      ],\n      [\n        \"ator\",\n        -9.525679588317871\n      ],\n      [\n        \"▁common\",\n        -9.525968551635742\n      ],\n      [\n        \"con\",\n        -9.526727676391602\n      ],\n      [\n        \"▁throughout\",\n        -9.527557373046875\n      ],\n      [\n        \"▁risk\",\n        -9.52774715423584\n      ],\n      [\n        \"▁young\",\n        -9.528532028198242\n      ],\n      [\n        \"▁Je\",\n        -9.528688430786133\n      ],\n      [\n        \"▁image\",\n        -9.52928352355957\n      ],\n      [\n        \"ha\",\n        -9.529376983642578\n      ],\n      [\n        \"▁third\",\n        -9.529587745666504\n      ],\n      [\n        \"▁taken\",\n        -9.530049324035645\n      ],\n      [\n        \"▁Z\",\n        -9.5314302444458\n      ],\n      [\n        \"▁dis\",\n        -9.5316162109375\n      ],\n      [\n        \"▁From\",\n        -9.533575057983398\n      ],\n      [\n        \"▁details\",\n        -9.534862518310547\n      ],\n      [\n        \"▁games\",\n        -9.53516674041748\n      ],\n      [\n        \"▁practice\",\n        -9.536040306091309\n      ],\n      [\n        \"che\",\n        -9.536151885986328\n      ],\n      [\n        \"▁security\",\n        -9.537364959716797\n      ],\n      [\n        \"▁medical\",\n        -9.537653923034668\n      ],\n      [\n        \"▁learning\",\n        -9.537806510925293\n      ],\n      [\n        \"▁material\",\n        -9.538509368896484\n      ],\n      [\n        \"▁international\",\n        -9.540703773498535\n      ],\n      [\n        \"▁forward\",\n        -9.541245460510254\n      ],\n      [\n        \"▁paper\",\n        -9.541247367858887\n      ],\n      [\n        \"▁action\",\n        -9.541348457336426\n      ],\n      [\n        \"▁file\",\n        -9.542378425598145\n      ],\n      [\n        \"▁oil\",\n        -9.543096542358398\n      ],\n      [\n        \"▁self\",\n        -9.54377555847168\n      ],\n      [\n        \"▁private\",\n        -9.545247077941895\n      ],\n      [\n        \"▁interest\",\n        -9.545559883117676\n      ],\n      [\n        \"bar\",\n        -9.546065330505371\n      ],\n      [\n        \"▁sale\",\n        -9.547115325927734\n      ],\n      [\n        \"▁stay\",\n        -9.547348976135254\n      ],\n      [\n        \"ke\",\n        -9.548089981079102\n      ],\n      [\n        \"▁San\",\n        -9.549053192138672\n      ],\n      [\n        \"▁matter\",\n        -9.549870491027832\n      ],\n      [\n        \"▁reason\",\n        -9.550254821777344\n      ],\n      [\n        \"ted\",\n        -9.55147647857666\n      ],\n      [\n        \"▁potential\",\n        -9.551742553710938\n      ],\n      [\n        \"▁brand\",\n        -9.552441596984863\n      ],\n      [\n        \"▁field\",\n        -9.55315113067627\n      ],\n      [\n        \"▁treatment\",\n        -9.553420066833496\n      ],\n      [\n        \"▁period\",\n        -9.553516387939453\n      ],\n      [\n        \"▁York\",\n        -9.553890228271484\n      ],\n      [\n        \"▁Park\",\n        -9.554738998413086\n      ],\n      [\n        \"▁acest\",\n        -9.556009292602539\n      ],\n      [\n        \"ou\",\n        -9.556926727294922\n      ],\n      [\n        \"▁Ce\",\n        -9.557014465332031\n      ],\n      [\n        \"▁ready\",\n        -9.558111190795898\n      ],\n      [\n        \"▁rather\",\n        -9.55860424041748\n      ],\n      [\n        \"▁outside\",\n        -9.560086250305176\n      ],\n      [\n        \"▁standard\",\n        -9.560121536254883\n      ],\n      [\n        \"▁located\",\n        -9.560770034790039\n      ],\n      [\n        \"▁marketing\",\n        -9.562313079833984\n      ],\n      [\n        \"cu\",\n        -9.564041137695312\n      ],\n      [\n        \"▁Can\",\n        -9.564562797546387\n      ],\n      [\n        \"▁education\",\n        -9.566105842590332\n      ],\n      [\n        \"use\",\n        -9.566640853881836\n      ],\n      [\n        \"▁role\",\n        -9.566828727722168\n      ],\n      [\n        \"▁men\",\n        -9.571505546569824\n      ],\n      [\n        \"▁probably\",\n        -9.571550369262695\n      ],\n      [\n        \"▁store\",\n        -9.57221508026123\n      ],\n      [\n        \"▁John\",\n        -9.572355270385742\n      ],\n      [\n        \"▁rate\",\n        -9.573956489562988\n      ],\n      [\n        \"▁code\",\n        -9.573994636535645\n      ],\n      [\n        \"▁kids\",\n        -9.574408531188965\n      ],\n      [\n        \"▁currently\",\n        -9.57552719116211\n      ],\n      [\n        \"▁near\",\n        -9.576475143432617\n      ],\n      [\n        \"▁sales\",\n        -9.576716423034668\n      ],\n      [\n        \"▁usually\",\n        -9.577012062072754\n      ],\n      [\n        \"▁activities\",\n        -9.577242851257324\n      ],\n      [\n        \"▁party\",\n        -9.577371597290039\n      ],\n      [\n        \"▁leur\",\n        -9.577434539794922\n      ],\n      [\n        \"▁particular\",\n        -9.577627182006836\n      ],\n      [\n        \"▁mehr\",\n        -9.577707290649414\n      ],\n      [\n        \"ill\",\n        -9.578757286071777\n      ],\n      [\n        \"▁percent\",\n        -9.579113006591797\n      ],\n      [\n        \"▁fait\",\n        -9.579537391662598\n      ],\n      [\n        \"▁happy\",\n        -9.579904556274414\n      ],\n      [\n        \"▁inside\",\n        -9.58005428314209\n      ],\n      [\n        \"▁save\",\n        -9.580510139465332\n      ],\n      [\n        \"▁skills\",\n        -9.580765724182129\n      ],\n      [\n        \"▁consider\",\n        -9.581025123596191\n      ],\n      [\n        \"▁recent\",\n        -9.58161735534668\n      ],\n      [\n        \"▁strong\",\n        -9.581781387329102\n      ],\n      [\n        \"▁position\",\n        -9.582076072692871\n      ],\n      [\n        \"▁knowledge\",\n        -9.582303047180176\n      ],\n      [\n        \"▁tax\",\n        -9.583868980407715\n      ],\n      [\n        \"▁users\",\n        -9.584261894226074\n      ],\n      [\n        \"und\",\n        -9.585564613342285\n      ],\n      [\n        \"▁coming\",\n        -9.585904121398926\n      ],\n      [\n        \"▁article\",\n        -9.585923194885254\n      ],\n      [\n        \"min\",\n        -9.586345672607422\n      ],\n      [\n        \"▁sein\",\n        -9.586555480957031\n      ],\n      [\n        \"▁travel\",\n        -9.586871147155762\n      ],\n      [\n        \"▁changes\",\n        -9.58765983581543\n      ],\n      [\n        \"▁impact\",\n        -9.588181495666504\n      ],\n      [\n        \"▁wanted\",\n        -9.588460922241211\n      ],\n      [\n        \"▁address\",\n        -9.5885591506958\n      ],\n      [\n        \"▁soon\",\n        -9.58873462677002\n      ],\n      [\n        \"▁North\",\n        -9.588915824890137\n      ],\n      [\n        \"ată\",\n        -9.589237213134766\n      ],\n      [\n        \"▁trying\",\n        -9.58985424041748\n      ],\n      [\n        \"▁app\",\n        -9.590612411499023\n      ],\n      [\n        \"▁School\",\n        -9.592510223388672\n      ],\n      [\n        \"▁Es\",\n        -9.592548370361328\n      ],\n      [\n        \"we\",\n        -9.59261703491211\n      ],\n      [\n        \"▁conditions\",\n        -9.59292984008789\n      ],\n      [\n        \"▁digital\",\n        -9.593293190002441\n      ],\n      [\n        \"▁similar\",\n        -9.594805717468262\n      ],\n      [\n        \"▁solution\",\n        -9.59514331817627\n      ],\n      [\n        \"▁location\",\n        -9.595183372497559\n      ],\n      [\n        \"▁Of\",\n        -9.595418930053711\n      ],\n      [\n        \"▁follow\",\n        -9.595842361450195\n      ],\n      [\n        \"▁red\",\n        -9.597526550292969\n      ],\n      [\n        \"▁review\",\n        -9.599202156066895\n      ],\n      [\n        \"▁skin\",\n        -9.599575996398926\n      ],\n      [\n        \"▁pretty\",\n        -9.600369453430176\n      ],\n      [\n        \"day\",\n        -9.600558280944824\n      ],\n      [\n        \"▁dé\",\n        -9.602072715759277\n      ],\n      [\n        \"▁cause\",\n        -9.602169036865234\n      ],\n      [\n        \"▁Sa\",\n        -9.602463722229004\n      ],\n      [\n        \"▁user\",\n        -9.602520942687988\n      ],\n      [\n        \"▁Man\",\n        -9.603377342224121\n      ],\n      [\n        \"”.\",\n        -9.604146003723145\n      ],\n      [\n        \"▁Just\",\n        -9.604366302490234\n      ],\n      [\n        \"▁faire\",\n        -9.604475021362305\n      ],\n      [\n        \"▁member\",\n        -9.605619430541992\n      ],\n      [\n        \"▁iar\",\n        -9.606892585754395\n      ],\n      [\n        \"▁higher\",\n        -9.607715606689453\n      ],\n      [\n        \"▁step\",\n        -9.607887268066406\n      ],\n      [\n        \"▁wide\",\n        -9.608185768127441\n      ],\n      [\n        \"▁uns\",\n        -9.608920097351074\n      ],\n      [\n        \"▁World\",\n        -9.609135627746582\n      ],\n      [\n        \"▁additional\",\n        -9.61176586151123\n      ],\n      [\n        \"ber\",\n        -9.613197326660156\n      ],\n      [\n        \"▁easily\",\n        -9.613990783691406\n      ],\n      [\n        \"▁deal\",\n        -9.615070343017578\n      ],\n      [\n        \"▁ways\",\n        -9.615514755249023\n      ],\n      [\n        \"▁mobile\",\n        -9.616837501525879\n      ],\n      [\n        \"▁national\",\n        -9.616913795471191\n      ],\n      [\n        \"▁couple\",\n        -9.617389678955078\n      ],\n      [\n        \"▁ihre\",\n        -9.61939811706543\n      ],\n      [\n        \"▁choice\",\n        -9.619612693786621\n      ],\n      [\n        \"for\",\n        -9.619686126708984\n      ],\n      [\n        \"ous\",\n        -9.62070083618164\n      ],\n      [\n        \"▁Google\",\n        -9.620855331420898\n      ],\n      [\n        \"▁environment\",\n        -9.622426986694336\n      ],\n      [\n        \"urile\",\n        -9.623322486877441\n      ],\n      [\n        \"▁Center\",\n        -9.626680374145508\n      ],\n      [\n        \"mp\",\n        -9.628592491149902\n      ],\n      [\n        \"▁»\",\n        -9.629727363586426\n      ],\n      [\n        \"qui\",\n        -9.630680084228516\n      ],\n      [\n        \"▁growth\",\n        -9.631048202514648\n      ],\n      [\n        \"ler\",\n        -9.633174896240234\n      ],\n      [\n        \"▁improve\",\n        -9.63360595703125\n      ],\n      [\n        \"▁items\",\n        -9.6336669921875\n      ],\n      [\n        \"▁Nu\",\n        -9.63393783569336\n      ],\n      [\n        \"▁leave\",\n        -9.634074211120605\n      ],\n      [\n        \"▁true\",\n        -9.634805679321289\n      ],\n      [\n        \"▁wurde\",\n        -9.63487434387207\n      ],\n      [\n        \"▁cannot\",\n        -9.635004043579102\n      ],\n      [\n        \"▁13\",\n        -9.635096549987793\n      ],\n      [\n        \"▁running\",\n        -9.636015892028809\n      ],\n      [\n        \"▁anti\",\n        -9.636177062988281\n      ],\n      [\n        \"▁option\",\n        -9.636306762695312\n      ],\n      [\n        \"▁reading\",\n        -9.63657283782959\n      ],\n      [\n        \"▁Car\",\n        -9.636698722839355\n      ],\n      [\n        \"▁Wir\",\n        -9.638110160827637\n      ],\n      [\n        \"▁April\",\n        -9.63975715637207\n      ],\n      [\n        \"▁behind\",\n        -9.640642166137695\n      ],\n      [\n        \"▁client\",\n        -9.640750885009766\n      ],\n      [\n        \"▁cover\",\n        -9.641012191772461\n      ],\n      [\n        \"▁stop\",\n        -9.641090393066406\n      ],\n      [\n        \"ja\",\n        -9.641277313232422\n      ],\n      [\n        \"▁built\",\n        -9.641307830810547\n      ],\n      [\n        \"▁Con\",\n        -9.641313552856445\n      ],\n      [\n        \"ement\",\n        -9.641366004943848\n      ],\n      [\n        \"▁projects\",\n        -9.641828536987305\n      ],\n      [\n        \"▁variety\",\n        -9.641840934753418\n      ],\n      [\n        \"▁Ihre\",\n        -9.642666816711426\n      ],\n      [\n        \"ș\",\n        -9.64302921295166\n      ],\n      [\n        \"▁unter\",\n        -9.64385986328125\n      ],\n      [\n        \"▁longer\",\n        -9.646577835083008\n      ],\n      [\n        \"year\",\n        -9.647161483764648\n      ],\n      [\n        \"▁photo\",\n        -9.648370742797852\n      ],\n      [\n        \"▁Also\",\n        -9.64933967590332\n      ],\n      [\n        \"▁received\",\n        -9.651098251342773\n      ],\n      [\n        \"▁return\",\n        -9.652676582336426\n      ],\n      [\n        \"00\",\n        -9.653081893920898\n      ],\n      [\n        \"▁bar\",\n        -9.653343200683594\n      ],\n      [\n        \"ary\",\n        -9.654427528381348\n      ],\n      [\n        \"elor\",\n        -9.655137062072754\n      ],\n      [\n        \"▁Home\",\n        -9.656189918518066\n      ],\n      [\n        \"our\",\n        -9.656298637390137\n      ],\n      [\n        \"▁Me\",\n        -9.65771198272705\n      ],\n      [\n        \"▁held\",\n        -9.659111022949219\n      ],\n      [\n        \"▁click\",\n        -9.66014289855957\n      ],\n      [\n        \"▁ex\",\n        -9.660178184509277\n      ],\n      [\n        \"▁cum\",\n        -9.661561965942383\n      ],\n      [\n        \"▁takes\",\n        -9.66395378112793\n      ],\n      [\n        \"▁computer\",\n        -9.665796279907227\n      ],\n      [\n        \"▁told\",\n        -9.668192863464355\n      ],\n      [\n        \"+\",\n        -9.670648574829102\n      ],\n      [\n        \"▁patients\",\n        -9.670809745788574\n      ],\n      [\n        \"ting\",\n        -9.672165870666504\n      ],\n      [\n        \"▁direct\",\n        -9.672248840332031\n      ],\n      [\n        \"▁quickly\",\n        -9.672410011291504\n      ],\n      [\n        \"tic\",\n        -9.672877311706543\n      ],\n      [\n        \"▁vom\",\n        -9.673723220825195\n      ],\n      [\n        \"▁di\",\n        -9.67381477355957\n      ],\n      [\n        \"▁kitchen\",\n        -9.674022674560547\n      ],\n      [\n        \"▁network\",\n        -9.675640106201172\n      ],\n      [\n        \"▁2015\",\n        -9.676688194274902\n      ],\n      [\n        \"▁effective\",\n        -9.677227020263672\n      ],\n      [\n        \"▁collection\",\n        -9.677703857421875\n      ],\n      [\n        \"▁2017\",\n        -9.677751541137695\n      ],\n      [\n        \"▁words\",\n        -9.678145408630371\n      ],\n      [\n        \"▁cele\",\n        -9.678857803344727\n      ],\n      [\n        \"▁student\",\n        -9.678862571716309\n      ],\n      [\n        \"▁amazing\",\n        -9.678932189941406\n      ],\n      [\n        \"eur\",\n        -9.680419921875\n      ],\n      [\n        \".”\",\n        -9.68227481842041\n      ],\n      [\n        \"▁ale\",\n        -9.682716369628906\n      ],\n      [\n        \"”,\",\n        -9.68414306640625\n      ],\n      [\n        \"▁purchase\",\n        -9.684350967407227\n      ],\n      [\n        \"▁mean\",\n        -9.68477725982666\n      ],\n      [\n        \"▁West\",\n        -9.686846733093262\n      ],\n      [\n        \"▁nice\",\n        -9.6889066696167\n      ],\n      [\n        \"▁age\",\n        -9.689131736755371\n      ],\n      [\n        \"▁base\",\n        -9.68923568725586\n      ],\n      [\n        \"▁summer\",\n        -9.68928337097168\n      ],\n      [\n        \"▁multi\",\n        -9.689496994018555\n      ],\n      [\n        \"▁allows\",\n        -9.689573287963867\n      ],\n      [\n        \"▁latest\",\n        -9.689604759216309\n      ],\n      [\n        \"▁global\",\n        -9.68992805480957\n      ],\n      [\n        \"▁chance\",\n        -9.690792083740234\n      ],\n      [\n        \"▁sense\",\n        -9.690872192382812\n      ],\n      [\n        \"ieren\",\n        -9.692789077758789\n      ],\n      [\n        \"▁difficult\",\n        -9.693133354187012\n      ],\n      [\n        \"ité\",\n        -9.694750785827637\n      ],\n      [\n        \"ka\",\n        -9.694792747497559\n      ],\n      [\n        \"du\",\n        -9.69483757019043\n      ],\n      [\n        \"▁providing\",\n        -9.695744514465332\n      ],\n      [\n        \"▁Art\",\n        -9.696940422058105\n      ],\n      [\n        \"▁drive\",\n        -9.698554992675781\n      ],\n      [\n        \"▁Go\",\n        -9.698877334594727\n      ],\n      [\n        \"▁très\",\n        -9.699414253234863\n      ],\n      [\n        \"U\",\n        -9.699579238891602\n      ],\n      [\n        \"▁Pre\",\n        -9.699846267700195\n      ],\n      [\n        \"▁shows\",\n        -9.700040817260742\n      ],\n      [\n        \"▁hair\",\n        -9.701324462890625\n      ],\n      [\n        \"▁success\",\n        -9.701513290405273\n      ],\n      [\n        \"▁UK\",\n        -9.703169822692871\n      ],\n      [\n        \"red\",\n        -9.703241348266602\n      ],\n      [\n        \"ü\",\n        -9.703370094299316\n      ],\n      [\n        \"ish\",\n        -9.703631401062012\n      ],\n      [\n        \"▁weeks\",\n        -9.704839706420898\n      ],\n      [\n        \"▁solutions\",\n        -9.7055025100708\n      ],\n      [\n        \"▁Pe\",\n        -9.7057523727417\n      ],\n      [\n        \"▁equipment\",\n        -9.706141471862793\n      ],\n      [\n        \"și\",\n        -9.706482887268066\n      ],\n      [\n        \"▁worked\",\n        -9.707073211669922\n      ],\n      [\n        \"\\\".\",\n        -9.708627700805664\n      ],\n      [\n        \"▁legal\",\n        -9.708720207214355\n      ],\n      [\n        \"▁bad\",\n        -9.70892333984375\n      ],\n      [\n        \"▁40\",\n        -9.709561347961426\n      ],\n      [\n        \"▁Internet\",\n        -9.709798812866211\n      ],\n      [\n        \"▁included\",\n        -9.709976196289062\n      ],\n      [\n        \"▁upon\",\n        -9.710977554321289\n      ],\n      [\n        \"▁excellent\",\n        -9.71106243133545\n      ],\n      [\n        \"▁goal\",\n        -9.71130084991455\n      ],\n      [\n        \"▁El\",\n        -9.711408615112305\n      ],\n      [\n        \"▁Mo\",\n        -9.711703300476074\n      ],\n      [\n        \"▁policy\",\n        -9.71319580078125\n      ],\n      [\n        \"▁aussi\",\n        -9.713537216186523\n      ],\n      [\n        \"▁weight\",\n        -9.713687896728516\n      ],\n      [\n        \"ici\",\n        -9.715133666992188\n      ],\n      [\n        \"▁approach\",\n        -9.715584754943848\n      ],\n      [\n        \"▁six\",\n        -9.71579647064209\n      ],\n      [\n        \"▁entire\",\n        -9.715911865234375\n      ],\n      [\n        \"9\",\n        -9.71633529663086\n      ],\n      [\n        \"▁send\",\n        -9.716832160949707\n      ],\n      [\n        \"▁1.\",\n        -9.718971252441406\n      ],\n      [\n        \"▁wenn\",\n        -9.719056129455566\n      ],\n      [\n        \"▁photos\",\n        -9.71993637084961\n      ],\n      [\n        \"://\",\n        -9.721014022827148\n      ],\n      [\n        \"ger\",\n        -9.72281551361084\n      ],\n      [\n        \"▁favorite\",\n        -9.723104476928711\n      ],\n      [\n        \"ley\",\n        -9.723477363586426\n      ],\n      [\n        \"▁else\",\n        -9.72463321685791\n      ],\n      [\n        \"▁types\",\n        -9.72468376159668\n      ],\n      [\n        \"▁link\",\n        -9.725333213806152\n      ],\n      [\n        \"▁recently\",\n        -9.72584056854248\n      ],\n      [\n        \"▁Mit\",\n        -9.72631549835205\n      ],\n      [\n        \"▁hot\",\n        -9.726548194885254\n      ],\n      [\n        \"tra\",\n        -9.726597785949707\n      ],\n      [\n        \"ş\",\n        -9.727307319641113\n      ],\n      [\n        \"▁according\",\n        -9.728511810302734\n      ],\n      [\n        \"▁necessary\",\n        -9.728511810302734\n      ],\n      [\n        \"▁multiple\",\n        -9.729269027709961\n      ],\n      [\n        \"▁Im\",\n        -9.729510307312012\n      ],\n      [\n        \"▁sehr\",\n        -9.729660034179688\n      ],\n      [\n        \"▁sign\",\n        -9.732263565063477\n      ],\n      [\n        \"▁anyone\",\n        -9.73283576965332\n      ],\n      [\n        \"▁land\",\n        -9.733613014221191\n      ],\n      [\n        \"▁States\",\n        -9.734037399291992\n      ],\n      [\n        \"▁unsere\",\n        -9.734119415283203\n      ],\n      [\n        \"ées\",\n        -9.734639167785645\n      ],\n      [\n        \"We\",\n        -9.735671043395996\n      ],\n      [\n        \"▁nothing\",\n        -9.735845565795898\n      ],\n      [\n        \"▁commercial\",\n        -9.736858367919922\n      ],\n      [\n        \"ful\",\n        -9.737265586853027\n      ],\n      [\n        \"▁seems\",\n        -9.739325523376465\n      ],\n      [\n        \"▁International\",\n        -9.740097045898438\n      ],\n      [\n        \"▁March\",\n        -9.74163818359375\n      ],\n      [\n        \"▁Thanks\",\n        -9.743307113647461\n      ],\n      [\n        \"▁County\",\n        -9.74365234375\n      ],\n      [\n        \"▁books\",\n        -9.744638442993164\n      ],\n      [\n        \"▁Ca\",\n        -9.7451753616333\n      ],\n      [\n        \"▁mi\",\n        -9.746304512023926\n      ],\n      [\n        \"▁meeting\",\n        -9.746662139892578\n      ],\n      [\n        \"▁tools\",\n        -9.747593879699707\n      ],\n      [\n        \"▁cut\",\n        -9.747650146484375\n      ],\n      [\n        \"▁related\",\n        -9.74765682220459\n      ],\n      [\n        \"▁lives\",\n        -9.748003005981445\n      ],\n      [\n        \"way\",\n        -9.748501777648926\n      ],\n      [\n        \"▁develop\",\n        -9.748651504516602\n      ],\n      [\n        \"▁sound\",\n        -9.748723983764648\n      ],\n      [\n        \"▁safe\",\n        -9.748950958251953\n      ],\n      [\n        \"▁Her\",\n        -9.74937629699707\n      ],\n      [\n        \"▁average\",\n        -9.751277923583984\n      ],\n      [\n        \"▁clean\",\n        -9.75174331665039\n      ],\n      [\n        \"▁talk\",\n        -9.752362251281738\n      ],\n      [\n        \"▁peut\",\n        -9.75241756439209\n      ],\n      [\n        \"▁dann\",\n        -9.752546310424805\n      ],\n      [\n        \"▁terms\",\n        -9.753265380859375\n      ],\n      [\n        \"▁foarte\",\n        -9.753512382507324\n      ],\n      [\n        \"▁super\",\n        -9.754284858703613\n      ],\n      [\n        \"▁programs\",\n        -9.754853248596191\n      ],\n      [\n        \"▁decision\",\n        -9.75540828704834\n      ],\n      [\n        \"▁costs\",\n        -9.756058692932129\n      ],\n      [\n        \"▁être\",\n        -9.756291389465332\n      ],\n      [\n        \"▁2019\",\n        -9.757674217224121\n      ],\n      [\n        \"led\",\n        -9.759482383728027\n      ],\n      [\n        \"▁parents\",\n        -9.759617805480957\n      ],\n      [\n        \"▁Mr\",\n        -9.761702537536621\n      ],\n      [\n        \"▁lower\",\n        -9.762362480163574\n      ],\n      [\n        \"▁door\",\n        -9.762978553771973\n      ],\n      [\n        \"▁été\",\n        -9.763933181762695\n      ],\n      [\n        \"▁box\",\n        -9.764954566955566\n      ],\n      [\n        \"▁record\",\n        -9.765517234802246\n      ],\n      [\n        \"▁win\",\n        -9.765650749206543\n      ],\n      [\n        \"ster\",\n        -9.766402244567871\n      ],\n      [\n        \"▁America\",\n        -9.766748428344727\n      ],\n      [\n        \"▁immer\",\n        -9.768763542175293\n      ],\n      [\n        \"▁road\",\n        -9.76996898651123\n      ],\n      [\n        \"▁leading\",\n        -9.772759437561035\n      ],\n      [\n        \"▁section\",\n        -9.772838592529297\n      ],\n      [\n        \"▁Facebook\",\n        -9.772990226745605\n      ],\n      [\n        \"▁Most\",\n        -9.7738676071167\n      ],\n      [\n        \"iert\",\n        -9.77435302734375\n      ],\n      [\n        \"▁morning\",\n        -9.774497032165527\n      ],\n      [\n        \"▁asked\",\n        -9.775190353393555\n      ],\n      [\n        \"▁involved\",\n        -9.77551555633545\n      ],\n      [\n        \"▁hier\",\n        -9.777607917785645\n      ],\n      [\n        \"▁images\",\n        -9.77821159362793\n      ],\n      [\n        \"▁House\",\n        -9.778263092041016\n      ],\n      [\n        \"▁highly\",\n        -9.780763626098633\n      ],\n      [\n        \"▁Bar\",\n        -9.781620979309082\n      ],\n      [\n        \"▁Service\",\n        -9.782510757446289\n      ],\n      [\n        \"▁attention\",\n        -9.784318923950195\n      ],\n      [\n        \"▁normal\",\n        -9.784571647644043\n      ],\n      [\n        \"▁plans\",\n        -9.785883903503418\n      ],\n      [\n        \"▁source\",\n        -9.785930633544922\n      ],\n      [\n        \"▁Aus\",\n        -9.788092613220215\n      ],\n      [\n        \"▁benefits\",\n        -9.788655281066895\n      ],\n      [\n        \"▁ses\",\n        -9.789348602294922\n      ],\n      [\n        \"des\",\n        -9.789867401123047\n      ],\n      [\n        \"▁internet\",\n        -9.789949417114258\n      ],\n      [\n        \"▁materials\",\n        -9.790080070495605\n      ],\n      [\n        \"▁même\",\n        -9.791318893432617\n      ],\n      [\n        \"▁fine\",\n        -9.791522026062012\n      ],\n      [\n        \"▁fit\",\n        -9.792226791381836\n      ],\n      [\n        \"▁21\",\n        -9.792612075805664\n      ],\n      [\n        \"▁itself\",\n        -9.793739318847656\n      ],\n      [\n        \"▁wieder\",\n        -9.793972969055176\n      ],\n      [\n        \"▁Many\",\n        -9.795313835144043\n      ],\n      [\n        \"▁nature\",\n        -9.795402526855469\n      ],\n      [\n        \"▁pain\",\n        -9.795467376708984\n      ],\n      [\n        \"▁device\",\n        -9.796183586120605\n      ],\n      [\n        \"art\",\n        -9.796989440917969\n      ],\n      [\n        \"pro\",\n        -9.7971830368042\n      ],\n      [\n        \"▁France\",\n        -9.797271728515625\n      ],\n      [\n        \"lich\",\n        -9.797314643859863\n      ],\n      [\n        \"▁2014\",\n        -9.799542427062988\n      ],\n      [\n        \"▁inter\",\n        -9.799964904785156\n      ],\n      [\n        \"▁Li\",\n        -9.800453186035156\n      ],\n      [\n        \"▁career\",\n        -9.801136016845703\n      ],\n      [\n        \"▁looks\",\n        -9.80145263671875\n      ],\n      [\n        \"▁ré\",\n        -9.802245140075684\n      ],\n      [\n        \"▁ability\",\n        -9.802556991577148\n      ],\n      [\n        \"▁situation\",\n        -9.803154945373535\n      ],\n      [\n        \"ville\",\n        -9.803157806396484\n      ],\n      [\n        \"▁2016\",\n        -9.80319595336914\n      ],\n      [\n        \"tes\",\n        -9.803462982177734\n      ],\n      [\n        \"▁remember\",\n        -9.803879737854004\n      ],\n      [\n        \"▁TV\",\n        -9.803998947143555\n      ],\n      [\n        \"▁levels\",\n        -9.805853843688965\n      ],\n      [\n        \"▁subject\",\n        -9.807723999023438\n      ],\n      [\n        \"ally\",\n        -9.80844497680664\n      ],\n      [\n        \"▁reduce\",\n        -9.810232162475586\n      ],\n      [\n        \"▁*\",\n        -9.8108491897583\n      ],\n      [\n        \"▁Day\",\n        -9.810867309570312\n      ],\n      [\n        \"▁write\",\n        -9.812152862548828\n      ],\n      [\n        \"▁pick\",\n        -9.814252853393555\n      ],\n      [\n        \"ence\",\n        -9.815399169921875\n      ],\n      [\n        \"▁fresh\",\n        -9.816520690917969\n      ],\n      [\n        \"▁traditional\",\n        -9.816662788391113\n      ],\n      [\n        \"chi\",\n        -9.817692756652832\n      ],\n      [\n        \"▁machine\",\n        -9.818047523498535\n      ],\n      [\n        \"▁resources\",\n        -9.819125175476074\n      ],\n      [\n        \"â\",\n        -9.819502830505371\n      ],\n      [\n        \"▁countries\",\n        -9.820009231567383\n      ],\n      [\n        \"▁Even\",\n        -9.820342063903809\n      ],\n      [\n        \"▁green\",\n        -9.821283340454102\n      ],\n      [\n        \"▁Free\",\n        -9.821910858154297\n      ],\n      [\n        \"▁daily\",\n        -9.822112083435059\n      ],\n      [\n        \"▁respect\",\n        -9.823013305664062\n      ],\n      [\n        \"▁instead\",\n        -9.823714256286621\n      ],\n      [\n        \"▁Once\",\n        -9.82418155670166\n      ],\n      [\n        \"▁word\",\n        -9.824407577514648\n      ],\n      [\n        \"▁construction\",\n        -9.82489013671875\n      ],\n      [\n        \"▁huge\",\n        -9.825064659118652\n      ],\n      [\n        \"▁feature\",\n        -9.825220108032227\n      ],\n      [\n        \"▁themselves\",\n        -9.826369285583496\n      ],\n      [\n        \"▁loss\",\n        -9.82919692993164\n      ],\n      [\n        \"%\",\n        -9.830063819885254\n      ],\n      [\n        \"▁safety\",\n        -9.830256462097168\n      ],\n      [\n        \"▁economic\",\n        -9.831406593322754\n      ],\n      [\n        \"▁require\",\n        -9.831945419311523\n      ],\n      [\n        \"30\",\n        -9.83255386352539\n      ],\n      [\n        \"▁planning\",\n        -9.833393096923828\n      ],\n      [\n        \"▁mal\",\n        -9.834482192993164\n      ],\n      [\n        \"▁directly\",\n        -9.835214614868164\n      ],\n      [\n        \"ure\",\n        -9.835719108581543\n      ],\n      [\n        \"▁track\",\n        -9.835734367370605\n      ],\n      [\n        \"▁tool\",\n        -9.836135864257812\n      ],\n      [\n        \"▁positive\",\n        -9.836392402648926\n      ],\n      [\n        \"▁piece\",\n        -9.837076187133789\n      ],\n      [\n        \"▁parts\",\n        -9.837140083312988\n      ],\n      [\n        \"ang\",\n        -9.83740520477295\n      ],\n      [\n        \"▁trip\",\n        -9.837453842163086\n      ],\n      [\n        \"▁organization\",\n        -9.837935447692871\n      ],\n      [\n        \"▁sites\",\n        -9.838274002075195\n      ],\n      [\n        \"▁fire\",\n        -9.83831787109375\n      ],\n      [\n        \"▁China\",\n        -9.838876724243164\n      ],\n      [\n        \"▁Pour\",\n        -9.839289665222168\n      ],\n      [\n        \"▁plant\",\n        -9.84011459350586\n      ],\n      [\n        \"▁board\",\n        -9.840341567993164\n      ],\n      [\n        \"▁interesting\",\n        -9.841227531433105\n      ],\n      [\n        \"gar\",\n        -9.841713905334473\n      ],\n      [\n        \"▁fie\",\n        -9.841752052307129\n      ],\n      [\n        \"▁late\",\n        -9.842166900634766\n      ],\n      [\n        \"▁wall\",\n        -9.842294692993164\n      ],\n      [\n        \"▁walk\",\n        -9.842741966247559\n      ],\n      [\n        \"ham\",\n        -9.843868255615234\n      ],\n      [\n        \"▁Ne\",\n        -9.845427513122559\n      ],\n      [\n        \"▁First\",\n        -9.845462799072266\n      ],\n      [\n        \"▁double\",\n        -9.845701217651367\n      ],\n      [\n        \"▁budget\",\n        -9.847657203674316\n      ],\n      [\n        \"▁cases\",\n        -9.847670555114746\n      ],\n      [\n        \"cal\",\n        -9.849738121032715\n      ],\n      [\n        \"old\",\n        -9.849796295166016\n      ],\n      [\n        \"▁Bo\",\n        -9.849822998046875\n      ],\n      [\n        \"▁spend\",\n        -9.850439071655273\n      ],\n      [\n        \"port\",\n        -9.850828170776367\n      ],\n      [\n        \"▁worth\",\n        -9.850934028625488\n      ],\n      [\n        \"ique\",\n        -9.851308822631836\n      ],\n      [\n        \"nes\",\n        -9.85190486907959\n      ],\n      [\n        \"cul\",\n        -9.852272033691406\n      ],\n      [\n        \"era\",\n        -9.85296630859375\n      ],\n      [\n        \"▁text\",\n        -9.853032112121582\n      ],\n      [\n        \"▁decided\",\n        -9.854948997497559\n      ],\n      [\n        \"▁floor\",\n        -9.855036735534668\n      ],\n      [\n        \"▁requirements\",\n        -9.85529899597168\n      ],\n      [\n        \"▁cel\",\n        -9.855361938476562\n      ],\n      [\n        \"▁effect\",\n        -9.855412483215332\n      ],\n      [\n        \"▁gibt\",\n        -9.856159210205078\n      ],\n      [\n        \"▁news\",\n        -9.859238624572754\n      ],\n      [\n        \"▁vos\",\n        -9.859931945800781\n      ],\n      [\n        \"▁players\",\n        -9.86057186126709\n      ],\n      [\n        \"▁saw\",\n        -9.862728118896484\n      ],\n      [\n        \"▁auto\",\n        -9.863056182861328\n      ],\n      [\n        \"▁town\",\n        -9.863207817077637\n      ],\n      [\n        \"▁myself\",\n        -9.864106178283691\n      ],\n      [\n        \"▁lost\",\n        -9.864988327026367\n      ],\n      [\n        \"▁$\",\n        -9.865124702453613\n      ],\n      [\n        \"▁June\",\n        -9.86609172821045\n      ],\n      [\n        \"▁significant\",\n        -9.866196632385254\n      ],\n      [\n        \"▁giving\",\n        -9.866230010986328\n      ],\n      [\n        \"▁stand\",\n        -9.866744041442871\n      ],\n      [\n        \"▁stock\",\n        -9.867657661437988\n      ],\n      [\n        \"▁hold\",\n        -9.867766380310059\n      ],\n      [\n        \"▁Are\",\n        -9.869078636169434\n      ],\n      [\n        \"▁shall\",\n        -9.86923599243164\n      ],\n      [\n        \"▁ideal\",\n        -9.869279861450195\n      ],\n      [\n        \"▁London\",\n        -9.87080192565918\n      ],\n      [\n        \"▁answer\",\n        -9.870853424072266\n      ],\n      [\n        \"▁Vor\",\n        -9.87157917022705\n      ],\n      [\n        \"▁gives\",\n        -9.873115539550781\n      ],\n      [\n        \"ative\",\n        -9.87316608428955\n      ],\n      [\n        \"▁timp\",\n        -9.873167991638184\n      ],\n      [\n        \"▁center\",\n        -9.87362289428711\n      ],\n      [\n        \"▁Group\",\n        -9.874580383300781\n      ],\n      [\n        \"▁sans\",\n        -9.875143051147461\n      ],\n      [\n        \"▁Ar\",\n        -9.875466346740723\n      ],\n      [\n        \"▁Ma\",\n        -9.875568389892578\n      ],\n      [\n        \"▁reach\",\n        -9.876279830932617\n      ],\n      [\n        \"ren\",\n        -9.876652717590332\n      ],\n      [\n        \"▁More\",\n        -9.877446174621582\n      ],\n      [\n        \"mit\",\n        -9.878068923950195\n      ],\n      [\n        \"▁guide\",\n        -9.87833309173584\n      ],\n      [\n        \"▁fully\",\n        -9.878828048706055\n      ],\n      [\n        \"▁Since\",\n        -9.878952980041504\n      ],\n      [\n        \"▁Inc\",\n        -9.87923812866211\n      ],\n      [\n        \"▁culture\",\n        -9.879780769348145\n      ],\n      [\n        \"eat\",\n        -9.880531311035156\n      ],\n      [\n        \"▁written\",\n        -9.880722999572754\n      ],\n      [\n        \"▁Ho\",\n        -9.881338119506836\n      ],\n      [\n        \"▁India\",\n        -9.881625175476074\n      ],\n      [\n        \"▁Well\",\n        -9.881708145141602\n      ],\n      [\n        \"back\",\n        -9.881752967834473\n      ],\n      [\n        \"▁goes\",\n        -9.882170677185059\n      ],\n      [\n        \"▁completely\",\n        -9.88217544555664\n      ],\n      [\n        \"▁tour\",\n        -9.883081436157227\n      ],\n      [\n        \"▁began\",\n        -9.883196830749512\n      ],\n      [\n        \"▁picture\",\n        -9.883255958557129\n      ],\n      [\n        \"▁mare\",\n        -9.88353157043457\n      ],\n      [\n        \"▁playing\",\n        -9.884223937988281\n      ],\n      [\n        \"▁trebuie\",\n        -9.884926795959473\n      ],\n      [\n        \"ils\",\n        -9.884940147399902\n      ],\n      [\n        \"chen\",\n        -9.885220527648926\n      ],\n      [\n        \"▁hit\",\n        -9.885416984558105\n      ],\n      [\n        \"▁complex\",\n        -9.88591480255127\n      ],\n      [\n        \"▁Thank\",\n        -9.886140823364258\n      ],\n      [\n        \"▁Let\",\n        -9.886350631713867\n      ],\n      [\n        \"▁applications\",\n        -9.887116432189941\n      ],\n      [\n        \"▁friend\",\n        -9.888312339782715\n      ],\n      [\n        \"▁English\",\n        -9.889549255371094\n      ],\n      [\n        \"▁charge\",\n        -9.890040397644043\n      ],\n      [\n        \"▁recommend\",\n        -9.893453598022461\n      ],\n      [\n        \"▁message\",\n        -9.893672943115234\n      ],\n      [\n        \"In\",\n        -9.893722534179688\n      ],\n      [\n        \"▁Mar\",\n        -9.894762992858887\n      ],\n      [\n        \"pp\",\n        -9.895845413208008\n      ],\n      [\n        \"▁method\",\n        -9.89692497253418\n      ],\n      [\n        \"▁successful\",\n        -9.897004127502441\n      ],\n      [\n        \"tion\",\n        -9.898880958557129\n      ],\n      [\n        \"▁release\",\n        -9.899920463562012\n      ],\n      [\n        \"▁creating\",\n        -9.900403022766113\n      ],\n      [\n        \"▁despre\",\n        -9.90141773223877\n      ],\n      [\n        \"esc\",\n        -9.902434349060059\n      ],\n      [\n        \"▁eye\",\n        -9.902752876281738\n      ],\n      [\n        \"▁apply\",\n        -9.905945777893066\n      ],\n      [\n        \"net\",\n        -9.906000137329102\n      ],\n      [\n        \"side\",\n        -9.906539916992188\n      ],\n      [\n        \"▁ar\",\n        -9.906949996948242\n      ],\n      [\n        \"▁platform\",\n        -9.90713882446289\n      ],\n      [\n        \"▁touch\",\n        -9.907329559326172\n      ],\n      [\n        \"▁towards\",\n        -9.90785026550293\n      ],\n      [\n        \"▁match\",\n        -9.908224105834961\n      ],\n      [\n        \"▁Black\",\n        -9.909344673156738\n      ],\n      [\n        \"▁fall\",\n        -9.90961742401123\n      ],\n      [\n        \"▁ground\",\n        -9.910234451293945\n      ],\n      [\n        \"▁High\",\n        -9.910740852355957\n      ],\n      [\n        \"▁Q\",\n        -9.911155700683594\n      ],\n      [\n        \"▁schon\",\n        -9.911709785461426\n      ],\n      [\n        \"▁hotel\",\n        -9.911751747131348\n      ],\n      [\n        \"▁prices\",\n        -9.912031173706055\n      ],\n      [\n        \"▁developed\",\n        -9.913411140441895\n      ],\n      [\n        \"uk\",\n        -9.913476943969727\n      ],\n      [\n        \"ide\",\n        -9.91367244720459\n      ],\n      [\n        \"▁September\",\n        -9.91370964050293\n      ],\n      [\n        \"ized\",\n        -9.914202690124512\n      ],\n      [\n        \"▁War\",\n        -9.914704322814941\n      ],\n      [\n        \"!!\",\n        -9.916285514831543\n      ],\n      [\n        \"▁grow\",\n        -9.916997909545898\n      ],\n      [\n        \"▁watch\",\n        -9.917067527770996\n      ],\n      [\n        \"▁storage\",\n        -9.917412757873535\n      ],\n      [\n        \"eau\",\n        -9.917513847351074\n      ],\n      [\n        \"can\",\n        -9.918373107910156\n      ],\n      [\n        \"▁Get\",\n        -9.919524192810059\n      ],\n      [\n        \"▁See\",\n        -9.91953182220459\n      ],\n      [\n        \"▁European\",\n        -9.919703483581543\n      ],\n      [\n        \"▁language\",\n        -9.91982650756836\n      ],\n      [\n        \"ează\",\n        -9.920175552368164\n      ],\n      [\n        \"▁court\",\n        -9.920334815979004\n      ],\n      [\n        \"▁Why\",\n        -9.921106338500977\n      ],\n      [\n        \"▁hear\",\n        -9.921342849731445\n      ],\n      [\n        \"▁doar\",\n        -9.921804428100586\n      ],\n      [\n        \"lan\",\n        -9.92330265045166\n      ],\n      [\n        \"▁Christmas\",\n        -9.923810958862305\n      ],\n      [\n        \"▁Web\",\n        -9.923871994018555\n      ],\n      [\n        \"vo\",\n        -9.92405891418457\n      ],\n      [\n        \"▁sent\",\n        -9.924983024597168\n      ],\n      [\n        \"▁businesses\",\n        -9.925868034362793\n      ],\n      [\n        \"▁Red\",\n        -9.926278114318848\n      ],\n      [\n        \"tel\",\n        -9.926375389099121\n      ],\n      [\n        \"▁Ha\",\n        -9.926508903503418\n      ],\n      [\n        \"▁wonderful\",\n        -9.926653861999512\n      ],\n      [\n        \"ations\",\n        -9.926738739013672\n      ],\n      [\n        \"za\",\n        -9.92748737335205\n      ],\n      [\n        \"▁22\",\n        -9.928659439086914\n      ],\n      [\n        \"▁thinking\",\n        -9.92941665649414\n      ],\n      [\n        \"▁became\",\n        -9.929733276367188\n      ],\n      [\n        \"▁cool\",\n        -9.929835319519043\n      ],\n      [\n        \"▁speed\",\n        -9.930370330810547\n      ],\n      [\n        \"mar\",\n        -9.930426597595215\n      ],\n      [\n        \"▁--\",\n        -9.931743621826172\n      ],\n      [\n        \"▁groups\",\n        -9.931920051574707\n      ],\n      [\n        \"▁interested\",\n        -9.93198299407959\n      ],\n      [\n        \"ak\",\n        -9.93218994140625\n      ],\n      [\n        \"▁60\",\n        -9.932672500610352\n      ],\n      [\n        \"▁screen\",\n        -9.93370246887207\n      ],\n      [\n        \"▁Design\",\n        -9.933789253234863\n      ],\n      [\n        \"▁limited\",\n        -9.935648918151855\n      ],\n      [\n        \"▁expected\",\n        -9.935959815979004\n      ],\n      [\n        \"▁opportunities\",\n        -9.936376571655273\n      ],\n      [\n        \"▁regular\",\n        -9.936870574951172\n      ],\n      [\n        \"off\",\n        -9.93702220916748\n      ],\n      [\n        \"▁Best\",\n        -9.937298774719238\n      ],\n      [\n        \"Re\",\n        -9.938436508178711\n      ],\n      [\n        \"▁ihr\",\n        -9.938719749450684\n      ],\n      [\n        \"▁Great\",\n        -9.938907623291016\n      ],\n      [\n        \"▁employees\",\n        -9.93924617767334\n      ],\n      [\n        \"▁custom\",\n        -9.939679145812988\n      ],\n      [\n        \"▁multe\",\n        -9.940123558044434\n      ],\n      [\n        \"let\",\n        -9.940876007080078\n      ],\n      [\n        \"▁benefit\",\n        -9.942487716674805\n      ],\n      [\n        \"▁term\",\n        -9.942623138427734\n      ],\n      [\n        \"▁bine\",\n        -9.942869186401367\n      ],\n      [\n        \"▁deep\",\n        -9.944526672363281\n      ],\n      [\n        \"▁August\",\n        -9.94526481628418\n      ],\n      [\n        \"▁President\",\n        -9.945381164550781\n      ],\n      [\n        \"▁Auf\",\n        -9.945854187011719\n      ],\n      [\n        \"▁wish\",\n        -9.946924209594727\n      ],\n      [\n        \"▁sometimes\",\n        -9.947274208068848\n      ],\n      [\n        \"ari\",\n        -9.947793960571289\n      ],\n      [\n        \"▁pressure\",\n        -9.948184967041016\n      ],\n      [\n        \"▁ani\",\n        -9.94859504699707\n      ],\n      [\n        \"▁trade\",\n        -9.949930191040039\n      ],\n      [\n        \"▁firm\",\n        -9.950027465820312\n      ],\n      [\n        \"▁comment\",\n        -9.95003604888916\n      ],\n      [\n        \"▁November\",\n        -9.950242042541504\n      ],\n      [\n        \"▁expect\",\n        -9.951102256774902\n      ],\n      [\n        \"▁2012\",\n        -9.952491760253906\n      ],\n      [\n        \"▁Ich\",\n        -9.95328140258789\n      ],\n      [\n        \"▁relationship\",\n        -9.95363998413086\n      ],\n      [\n        \"▁active\",\n        -9.954682350158691\n      ],\n      [\n        \"org\",\n        -9.954710960388184\n      ],\n      [\n        \"▁heat\",\n        -9.956732749938965\n      ],\n      [\n        \"▁wood\",\n        -9.95678997039795\n      ],\n      [\n        \"▁notre\",\n        -9.957921028137207\n      ],\n      [\n        \"▁function\",\n        -9.958330154418945\n      ],\n      [\n        \"▁2.\",\n        -9.95909309387207\n      ],\n      [\n        \"▁wedding\",\n        -9.960049629211426\n      ],\n      [\n        \"▁starting\",\n        -9.961235046386719\n      ],\n      [\n        \"▁Health\",\n        -9.961249351501465\n      ],\n      [\n        \"\\\",\",\n        -9.961713790893555\n      ],\n      [\n        \"▁death\",\n        -9.962173461914062\n      ],\n      [\n        \"▁pages\",\n        -9.962764739990234\n      ],\n      [\n        \"▁vehicle\",\n        -9.96293830871582\n      ],\n      [\n        \"▁request\",\n        -9.963874816894531\n      ],\n      [\n        \"▁helps\",\n        -9.963916778564453\n      ],\n      [\n        \"▁blue\",\n        -9.964017868041992\n      ],\n      [\n        \"▁analysis\",\n        -9.964414596557617\n      ],\n      [\n        \"▁posted\",\n        -9.964544296264648\n      ],\n      [\n        \"▁healthy\",\n        -9.964814186096191\n      ],\n      [\n        \"▁contract\",\n        -9.964988708496094\n      ],\n      [\n        \"▁•\",\n        -9.965263366699219\n      ],\n      [\n        \"▁Each\",\n        -9.965293884277344\n      ],\n      [\n        \"▁Fa\",\n        -9.966179847717285\n      ],\n      [\n        \"▁dintre\",\n        -9.966221809387207\n      ],\n      [\n        \"▁Friday\",\n        -9.967202186584473\n      ],\n      [\n        \"▁considered\",\n        -9.967992782592773\n      ],\n      [\n        \"cher\",\n        -9.96826457977295\n      ],\n      [\n        \"▁quick\",\n        -9.968731880187988\n      ],\n      [\n        \"▁understanding\",\n        -9.96916389465332\n      ],\n      [\n        \"▁condition\",\n        -9.969378471374512\n      ],\n      [\n        \"ization\",\n        -9.971049308776855\n      ],\n      [\n        \"▁document\",\n        -9.971664428710938\n      ],\n      [\n        \"▁prevent\",\n        -9.971890449523926\n      ],\n      [\n        \"▁growing\",\n        -9.9725341796875\n      ],\n      [\n        \"▁protection\",\n        -9.972620964050293\n      ],\n      [\n        \"▁cat\",\n        -9.974002838134766\n      ],\n      [\n        \"▁#\",\n        -9.975058555603027\n      ],\n      [\n        \"10\",\n        -9.975275039672852\n      ],\n      [\n        \"▁join\",\n        -9.9759521484375\n      ],\n      [\n        \"▁serve\",\n        -9.976580619812012\n      ],\n      [\n        \"▁blood\",\n        -9.977095603942871\n      ],\n      [\n        \"▁July\",\n        -9.977341651916504\n      ],\n      [\n        \"▁region\",\n        -9.977787971496582\n      ],\n      [\n        \"car\",\n        -9.97933578491211\n      ],\n      [\n        \"▁entre\",\n        -9.979788780212402\n      ],\n      [\n        \"▁physical\",\n        -9.981287002563477\n      ],\n      [\n        \"▁cash\",\n        -9.9813232421875\n      ],\n      [\n        \"aux\",\n        -9.981823921203613\n      ],\n      [\n        \"ng\",\n        -9.982654571533203\n      ],\n      [\n        \"▁stage\",\n        -9.98281478881836\n      ],\n      [\n        \"▁seem\",\n        -9.983034133911133\n      ],\n      [\n        \"▁definitely\",\n        -9.983795166015625\n      ],\n      [\n        \"▁investment\",\n        -9.983827590942383\n      ],\n      [\n        \"▁purpose\",\n        -9.985441207885742\n      ],\n      [\n        \"▁begin\",\n        -9.985486030578613\n      ],\n      [\n        \"®\",\n        -9.985495567321777\n      ],\n      [\n        \"▁break\",\n        -9.985701560974121\n      ],\n      [\n        \"itate\",\n        -9.987293243408203\n      ],\n      [\n        \"▁moving\",\n        -9.989288330078125\n      ],\n      [\n        \"▁met\",\n        -9.990678787231445\n      ],\n      [\n        \"ize\",\n        -9.990833282470703\n      ],\n      [\n        \"▁select\",\n        -9.991165161132812\n      ],\n      [\n        \"▁tous\",\n        -9.991310119628906\n      ],\n      [\n        \"▁Europe\",\n        -9.991639137268066\n      ],\n      [\n        \"@\",\n        -9.992724418640137\n      ],\n      [\n        \"▁individuals\",\n        -9.993392944335938\n      ],\n      [\n        \"▁Zeit\",\n        -9.993524551391602\n      ],\n      [\n        \"gu\",\n        -9.995670318603516\n      ],\n      [\n        \"▁unit\",\n        -9.995753288269043\n      ],\n      [\n        \"▁noi\",\n        -9.996089935302734\n      ],\n      [\n        \"▁places\",\n        -9.996171951293945\n      ],\n      [\n        \"all\",\n        -9.99632453918457\n      ],\n      [\n        \"▁wait\",\n        -9.996755599975586\n      ],\n      [\n        \"▁difference\",\n        -9.997234344482422\n      ],\n      [\n        \"▁round\",\n        -9.998015403747559\n      ],\n      [\n        \"50\",\n        -9.99953842163086\n      ],\n      [\n        \"rie\",\n        -9.999545097351074\n      ],\n      [\n        \"▁Et\",\n        -9.999933242797852\n      ],\n      [\n        \"20\",\n        -10.000725746154785\n      ],\n      [\n        \"▁activity\",\n        -10.000792503356934\n      ],\n      [\n        \"е\",\n        -10.000866889953613\n      ],\n      [\n        \"▁Windows\",\n        -10.001087188720703\n      ],\n      [\n        \"▁produce\",\n        -10.001385688781738\n      ],\n      [\n        \"▁keine\",\n        -10.00212574005127\n      ],\n      [\n        \"▁Air\",\n        -10.002567291259766\n      ],\n      [\n        \"▁January\",\n        -10.004890441894531\n      ],\n      [\n        \"▁deux\",\n        -10.005081176757812\n      ],\n      [\n        \"▁entry\",\n        -10.005208015441895\n      ],\n      [\n        \"king\",\n        -10.006500244140625\n      ],\n      [\n        \"▁goals\",\n        -10.006736755371094\n      ],\n      [\n        \"▁previous\",\n        -10.0077543258667\n      ],\n      [\n        \"▁+\",\n        -10.008035659790039\n      ],\n      [\n        \"▁Business\",\n        -10.008259773254395\n      ],\n      [\n        \"ont\",\n        -10.008552551269531\n      ],\n      [\n        \"▁Sunday\",\n        -10.008694648742676\n      ],\n      [\n        \"▁offering\",\n        -10.010359764099121\n      ],\n      [\n        \"▁response\",\n        -10.011018753051758\n      ],\n      [\n        \"▁surface\",\n        -10.011393547058105\n      ],\n      [\n        \"▁Department\",\n        -10.01212215423584\n      ],\n      [\n        \"▁exactly\",\n        -10.012190818786621\n      ],\n      [\n        \"▁Online\",\n        -10.012577056884766\n      ],\n      [\n        \"dem\",\n        -10.013803482055664\n      ],\n      [\n        \"ischen\",\n        -10.014006614685059\n      ],\n      [\n        \"▁hands\",\n        -10.015100479125977\n      ],\n      [\n        \"▁hour\",\n        -10.016197204589844\n      ],\n      [\n        \"▁dog\",\n        -10.016946792602539\n      ],\n      [\n        \"▁damage\",\n        -10.017006874084473\n      ],\n      [\n        \"▁capital\",\n        -10.018792152404785\n      ],\n      [\n        \"▁toate\",\n        -10.020488739013672\n      ],\n      [\n        \"▁wrong\",\n        -10.020674705505371\n      ],\n      [\n        \"unui\",\n        -10.022201538085938\n      ],\n      [\n        \"tri\",\n        -10.023979187011719\n      ],\n      [\n        \"▁sell\",\n        -10.023999214172363\n      ],\n      [\n        \"▁published\",\n        -10.024175643920898\n      ],\n      [\n        \"▁families\",\n        -10.024675369262695\n      ],\n      [\n        \"▁avoid\",\n        -10.025490760803223\n      ],\n      [\n        \"▁Ko\",\n        -10.025506019592285\n      ],\n      [\n        \"▁mod\",\n        -10.026697158813477\n      ],\n      [\n        \"rat\",\n        -10.027653694152832\n      ],\n      [\n        \"▁Make\",\n        -10.0299654006958\n      ],\n      [\n        \"▁October\",\n        -10.030153274536133\n      ],\n      [\n        \"▁former\",\n        -10.031285285949707\n      ],\n      [\n        \"▁Services\",\n        -10.03281021118164\n      ],\n      [\n        \"▁felt\",\n        -10.033045768737793\n      ],\n      [\n        \"▁selection\",\n        -10.033309936523438\n      ],\n      [\n        \"eaza\",\n        -10.034177780151367\n      ],\n      [\n        \"gel\",\n        -10.034422874450684\n      ],\n      [\n        \"▁Good\",\n        -10.035792350769043\n      ],\n      [\n        \"▁actual\",\n        -10.0364351272583\n      ],\n      [\n        \"▁gut\",\n        -10.036853790283203\n      ],\n      [\n        \"▁gas\",\n        -10.03708553314209\n      ],\n      [\n        \"15\",\n        -10.038182258605957\n      ],\n      [\n        \"▁structure\",\n        -10.038285255432129\n      ],\n      [\n        \"▁act\",\n        -10.0386381149292\n      ],\n      [\n        \"▁Zu\",\n        -10.038654327392578\n      ],\n      [\n        \"▁creative\",\n        -10.039134979248047\n      ],\n      [\n        \"▁Vi\",\n        -10.039159774780273\n      ],\n      [\n        \"▁shop\",\n        -10.04066276550293\n      ],\n      [\n        \"▁Lo\",\n        -10.040735244750977\n      ],\n      [\n        \"şi\",\n        -10.042192459106445\n      ],\n      [\n        \"▁mis\",\n        -10.042224884033203\n      ],\n      [\n        \"ungen\",\n        -10.042301177978516\n      ],\n      [\n        \"▁fan\",\n        -10.04240608215332\n      ],\n      [\n        \"▁|\",\n        -10.043391227722168\n      ],\n      [\n        \"▁Bei\",\n        -10.044037818908691\n      ],\n      [\n        \"▁protect\",\n        -10.04454517364502\n      ],\n      [\n        \"▁Na\",\n        -10.0447998046875\n      ],\n      [\n        \"q\",\n        -10.045693397521973\n      ],\n      [\n        \"ok\",\n        -10.04710578918457\n      ],\n      [\n        \"▁California\",\n        -10.047263145446777\n      ],\n      [\n        \"▁political\",\n        -10.047301292419434\n      ],\n      [\n        \"25\",\n        -10.047530174255371\n      ],\n      [\n        \"▁feeling\",\n        -10.047913551330566\n      ],\n      [\n        \"▁ces\",\n        -10.048321723937988\n      ],\n      [\n        \"▁display\",\n        -10.048857688903809\n      ],\n      [\n        \"▁essential\",\n        -10.04964542388916\n      ],\n      [\n        \"ând\",\n        -10.049971580505371\n      ],\n      [\n        \"▁seine\",\n        -10.050551414489746\n      ],\n      [\n        \"▁soft\",\n        -10.050915718078613\n      ],\n      [\n        \"ach\",\n        -10.05102252960205\n      ],\n      [\n        \"▁happen\",\n        -10.051118850708008\n      ],\n      [\n        \"▁Paul\",\n        -10.053346633911133\n      ],\n      [\n        \"▁Cu\",\n        -10.054024696350098\n      ],\n      [\n        \"house\",\n        -10.055376052856445\n      ],\n      [\n        \"ante\",\n        -10.05582046508789\n      ],\n      [\n        \"▁easier\",\n        -10.056551933288574\n      ],\n      [\n        \"▁sort\",\n        -10.0567045211792\n      ],\n      [\n        \"▁Post\",\n        -10.057138442993164\n      ],\n      [\n        \"▁accept\",\n        -10.05730152130127\n      ],\n      [\n        \"field\",\n        -10.057648658752441\n      ],\n      [\n        \"zen\",\n        -10.057741165161133\n      ],\n      [\n        \"▁character\",\n        -10.057848930358887\n      ],\n      [\n        \"▁beginning\",\n        -10.058433532714844\n      ],\n      [\n        \"▁Jesus\",\n        -10.058760643005371\n      ],\n      [\n        \"▁weekend\",\n        -10.059663772583008\n      ],\n      [\n        \"▁certainly\",\n        -10.06114387512207\n      ],\n      [\n        \"▁THE\",\n        -10.061254501342773\n      ],\n      [\n        \"▁alle\",\n        -10.06189250946045\n      ],\n      [\n        \"▁transport\",\n        -10.062220573425293\n      ],\n      [\n        \"▁Saturday\",\n        -10.063043594360352\n      ],\n      [\n        \"▁basic\",\n        -10.064136505126953\n      ],\n      [\n        \"▁loved\",\n        -10.06431770324707\n      ],\n      [\n        \"ros\",\n        -10.065333366394043\n      ],\n      [\n        \"▁offered\",\n        -10.065996170043945\n      ],\n      [\n        \"▁camera\",\n        -10.067024230957031\n      ],\n      [\n        \"▁Green\",\n        -10.06789779663086\n      ],\n      [\n        \"ology\",\n        -10.069480895996094\n      ],\n      [\n        \"ä\",\n        -10.069646835327148\n      ],\n      [\n        \"▁manage\",\n        -10.070416450500488\n      ],\n      [\n        \"▁paid\",\n        -10.070881843566895\n      ],\n      [\n        \"▁advice\",\n        -10.071617126464844\n      ],\n      [\n        \"▁patient\",\n        -10.072234153747559\n      ],\n      [\n        \"▁spent\",\n        -10.072272300720215\n      ],\n      [\n        \"▁mir\",\n        -10.072366714477539\n      ],\n      [\n        \"▁baby\",\n        -10.072400093078613\n      ],\n      [\n        \"ö\",\n        -10.073193550109863\n      ],\n      [\n        \"▁basis\",\n        -10.073338508605957\n      ],\n      [\n        \"▁cancer\",\n        -10.073765754699707\n      ],\n      [\n        \"▁Although\",\n        -10.07400894165039\n      ],\n      [\n        \"▁gift\",\n        -10.074336051940918\n      ],\n      [\n        \"▁3.\",\n        -10.074871063232422\n      ],\n      [\n        \"dieser\",\n        -10.075157165527344\n      ],\n      [\n        \"▁overall\",\n        -10.07520580291748\n      ],\n      [\n        \"▁Sch\",\n        -10.075265884399414\n      ],\n      [\n        \"▁Ex\",\n        -10.076258659362793\n      ],\n      [\n        \"▁December\",\n        -10.07689094543457\n      ],\n      [\n        \"▁released\",\n        -10.078214645385742\n      ],\n      [\n        \"▁prior\",\n        -10.07900333404541\n      ],\n      [\n        \"▁sowie\",\n        -10.081072807312012\n      ],\n      [\n        \"▁club\",\n        -10.081326484680176\n      ],\n      [\n        \"▁Street\",\n        -10.081535339355469\n      ],\n      [\n        \"▁College\",\n        -10.08254623413086\n      ],\n      [\n        \"▁î\",\n        -10.083059310913086\n      ],\n      [\n        \"over\",\n        -10.083159446716309\n      ],\n      [\n        \"▁gave\",\n        -10.08454704284668\n      ],\n      [\n        \"▁truly\",\n        -10.084784507751465\n      ],\n      [\n        \"par\",\n        -10.084806442260742\n      ],\n      [\n        \"▁Canada\",\n        -10.084888458251953\n      ],\n      [\n        \"▁existing\",\n        -10.085420608520508\n      ],\n      [\n        \"lie\",\n        -10.086335182189941\n      ],\n      [\n        \"▁ganz\",\n        -10.086658477783203\n      ],\n      [\n        \"▁setting\",\n        -10.087109565734863\n      ],\n      [\n        \"▁supply\",\n        -10.08739185333252\n      ],\n      [\n        \"▁college\",\n        -10.087540626525879\n      ],\n      [\n        \"▁communication\",\n        -10.088407516479492\n      ],\n      [\n        \"▁23\",\n        -10.088834762573242\n      ],\n      [\n        \"▁pass\",\n        -10.091546058654785\n      ],\n      [\n        \"▁devices\",\n        -10.091872215270996\n      ],\n      [\n        \"▁glass\",\n        -10.092083930969238\n      ],\n      [\n        \"▁experienced\",\n        -10.092395782470703\n      ],\n      [\n        \"▁grand\",\n        -10.093363761901855\n      ],\n      [\n        \"▁Po\",\n        -10.093396186828613\n      ],\n      [\n        \"▁beyond\",\n        -10.094029426574707\n      ],\n      [\n        \"▁format\",\n        -10.094165802001953\n      ],\n      [\n        \"▁mon\",\n        -10.09461498260498\n      ],\n      [\n        \"▁perform\",\n        -10.094635009765625\n      ],\n      [\n        \"sten\",\n        -10.095130920410156\n      ],\n      [\n        \"▁1,\",\n        -10.096270561218262\n      ],\n      [\n        \"▁Per\",\n        -10.096640586853027\n      ],\n      [\n        \"▁sold\",\n        -10.097247123718262\n      ],\n      [\n        \"▁rates\",\n        -10.0972900390625\n      ],\n      [\n        \"▁regarding\",\n        -10.097782135009766\n      ],\n      [\n        \"▁Paris\",\n        -10.098291397094727\n      ],\n      [\n        \"▁Dar\",\n        -10.099579811096191\n      ],\n      [\n        \"▁challenge\",\n        -10.099649429321289\n      ],\n      [\n        \"▁feet\",\n        -10.100564002990723\n      ],\n      [\n        \"▁Su\",\n        -10.102017402648926\n      ],\n      [\n        \"je\",\n        -10.102593421936035\n      ],\n      [\n        \"▁Bank\",\n        -10.102627754211426\n      ],\n      [\n        \"ven\",\n        -10.103126525878906\n      ],\n      [\n        \"jo\",\n        -10.103290557861328\n      ],\n      [\n        \"▁band\",\n        -10.10348892211914\n      ],\n      [\n        \"▁delivery\",\n        -10.104915618896484\n      ],\n      [\n        \"Vous\",\n        -10.104924201965332\n      ],\n      [\n        \"tele\",\n        -10.10495376586914\n      ],\n      [\n        \"▁East\",\n        -10.105379104614258\n      ],\n      [\n        \"▁pictures\",\n        -10.106067657470703\n      ],\n      [\n        \"▁useful\",\n        -10.106481552124023\n      ],\n      [\n        \"*\",\n        -10.107648849487305\n      ],\n      [\n        \"▁increased\",\n        -10.107746124267578\n      ],\n      [\n        \"▁stories\",\n        -10.108119010925293\n      ],\n      [\n        \"sion\",\n        -10.108280181884766\n      ],\n      [\n        \"bra\",\n        -10.108345985412598\n      ],\n      [\n        \"▁brought\",\n        -10.108466148376465\n      ],\n      [\n        \"▁effort\",\n        -10.109898567199707\n      ],\n      [\n        \"▁payment\",\n        -10.11058235168457\n      ],\n      [\n        \"▁heard\",\n        -10.110925674438477\n      ],\n      [\n        \"▁played\",\n        -10.111245155334473\n      ],\n      [\n        \"▁White\",\n        -10.111417770385742\n      ],\n      [\n        \"▁metal\",\n        -10.111721992492676\n      ],\n      [\n        \"tal\",\n        -10.111754417419434\n      ],\n      [\n        \"▁engine\",\n        -10.112006187438965\n      ],\n      [\n        \"▁Club\",\n        -10.11218547821045\n      ],\n      [\n        \"ical\",\n        -10.114581108093262\n      ],\n      [\n        \"▁effects\",\n        -10.115421295166016\n      ],\n      [\n        \"▁degree\",\n        -10.115763664245605\n      ],\n      [\n        \"▁bed\",\n        -10.1159086227417\n      ],\n      [\n        \"ette\",\n        -10.115991592407227\n      ],\n      [\n        \"▁David\",\n        -10.116386413574219\n      ],\n      [\n        \"°\",\n        -10.117666244506836\n      ],\n      [\n        \"▁Au\",\n        -10.117938041687012\n      ],\n      [\n        \"▁Company\",\n        -10.11845874786377\n      ],\n      [\n        \"▁player\",\n        -10.11938190460205\n      ],\n      [\n        \"▁Today\",\n        -10.120569229125977\n      ],\n      [\n        \"▁maintain\",\n        -10.12093448638916\n      ],\n      [\n        \"▁minute\",\n        -10.121193885803223\n      ],\n      [\n        \"mail\",\n        -10.122172355651855\n      ],\n      [\n        \"▁race\",\n        -10.122366905212402\n      ],\n      [\n        \"▁comfortable\",\n        -10.123887062072754\n      ],\n      [\n        \"▁responsible\",\n        -10.124085426330566\n      ],\n      [\n        \"vor\",\n        -10.124622344970703\n      ],\n      [\n        \"▁associated\",\n        -10.124695777893066\n      ],\n      [\n        \"▁weather\",\n        -10.124701499938965\n      ],\n      [\n        \"▁$1\",\n        -10.125639915466309\n      ],\n      [\n        \"▁tried\",\n        -10.126176834106445\n      ],\n      [\n        \"▁Check\",\n        -10.127649307250977\n      ],\n      [\n        \"▁solid\",\n        -10.127864837646484\n      ],\n      [\n        \"▁movie\",\n        -10.128364562988281\n      ],\n      [\n        \"▁coffee\",\n        -10.12874698638916\n      ],\n      [\n        \"board\",\n        -10.129073143005371\n      ],\n      [\n        \"▁po\",\n        -10.12946605682373\n      ],\n      [\n        \"▁warm\",\n        -10.129583358764648\n      ],\n      [\n        \"▁connect\",\n        -10.131733894348145\n      ],\n      [\n        \"▁Ad\",\n        -10.133807182312012\n      ],\n      [\n        \"work\",\n        -10.133859634399414\n      ],\n      [\n        \"mal\",\n        -10.13397216796875\n      ],\n      [\n        \"▁Act\",\n        -10.134634971618652\n      ],\n      [\n        \"▁achieve\",\n        -10.134769439697266\n      ],\n      [\n        \"▁Nach\",\n        -10.136604309082031\n      ],\n      [\n        \"www\",\n        -10.136669158935547\n      ],\n      [\n        \"term\",\n        -10.13672161102295\n      ],\n      [\n        \"▁claim\",\n        -10.137251853942871\n      ],\n      [\n        \"▁particularly\",\n        -10.138245582580566\n      ],\n      [\n        \"▁cas\",\n        -10.138396263122559\n      ],\n      [\n        \"▁furniture\",\n        -10.138461112976074\n      ],\n      [\n        \"▁finish\",\n        -10.13896369934082\n      ],\n      [\n        \"▁temps\",\n        -10.139026641845703\n      ],\n      [\n        \"▁disease\",\n        -10.139115333557129\n      ],\n      [\n        \"▁lots\",\n        -10.139196395874023\n      ],\n      [\n        \"▁ball\",\n        -10.139307975769043\n      ],\n      [\n        \"▁sun\",\n        -10.14010238647461\n      ],\n      [\n        \"▁strategy\",\n        -10.140498161315918\n      ],\n      [\n        \"bre\",\n        -10.140518188476562\n      ],\n      [\n        \"▁mine\",\n        -10.141541481018066\n      ],\n      [\n        \"▁Click\",\n        -10.141743659973145\n      ],\n      [\n        \"ran\",\n        -10.141983032226562\n      ],\n      [\n        \"▁Will\",\n        -10.142234802246094\n      ],\n      [\n        \"▁garden\",\n        -10.142974853515625\n      ],\n      [\n        \"▁stuff\",\n        -10.14359188079834\n      ],\n      [\n        \"▁limit\",\n        -10.144641876220703\n      ],\n      [\n        \"▁bottom\",\n        -10.14494800567627\n      ],\n      [\n        \"▁shown\",\n        -10.144962310791016\n      ],\n      [\n        \"ship\",\n        -10.145271301269531\n      ],\n      [\n        \"▁habe\",\n        -10.145858764648438\n      ],\n      [\n        \"▁Super\",\n        -10.146219253540039\n      ],\n      [\n        \"▁completed\",\n        -10.146971702575684\n      ],\n      [\n        \"▁wine\",\n        -10.146979331970215\n      ],\n      [\n        \"ische\",\n        -10.147262573242188\n      ],\n      [\n        \"▁largest\",\n        -10.147466659545898\n      ],\n      [\n        \"▁appropriate\",\n        -10.148261070251465\n      ],\n      [\n        \"▁immediately\",\n        -10.150248527526855\n      ],\n      [\n        \"▁Hi\",\n        -10.152358055114746\n      ],\n      [\n        \"▁trust\",\n        -10.152767181396484\n      ],\n      [\n        \"ability\",\n        -10.154254913330078\n      ],\n      [\n        \"▁powerful\",\n        -10.155101776123047\n      ],\n      [\n        \"▁helping\",\n        -10.155620574951172\n      ],\n      [\n        \"▁schedule\",\n        -10.155688285827637\n      ],\n      [\n        \"▁correct\",\n        -10.155707359313965\n      ],\n      [\n        \"▁transfer\",\n        -10.156496047973633\n      ],\n      [\n        \"pre\",\n        -10.15665340423584\n      ],\n      [\n        \"▁journey\",\n        -10.15688419342041\n      ],\n      [\n        \"pm\",\n        -10.157002449035645\n      ],\n      [\n        \"don\",\n        -10.158435821533203\n      ],\n      [\n        \"▁highest\",\n        -10.159249305725098\n      ],\n      [\n        \"▁finally\",\n        -10.15999698638916\n      ],\n      [\n        \"form\",\n        -10.160258293151855\n      ],\n      [\n        \"▁extremely\",\n        -10.160404205322266\n      ],\n      [\n        \"▁window\",\n        -10.160501480102539\n      ],\n      [\n        \"▁Over\",\n        -10.162222862243652\n      ],\n      [\n        \"▁remove\",\n        -10.162469863891602\n      ],\n      [\n        \"wood\",\n        -10.162479400634766\n      ],\n      [\n        \"▁2013\",\n        -10.163631439208984\n      ],\n      [\n        \"▁mother\",\n        -10.164072036743164\n      ],\n      [\n        \"▁Auto\",\n        -10.16436767578125\n      ],\n      [\n        \"▁annual\",\n        -10.164615631103516\n      ],\n      [\n        \"▁Star\",\n        -10.164834976196289\n      ],\n      [\n        \"▁Di\",\n        -10.166138648986816\n      ],\n      [\n        \"о\",\n        -10.16711139678955\n      ],\n      [\n        \"▁gold\",\n        -10.167129516601562\n      ],\n      [\n        \"tar\",\n        -10.167352676391602\n      ],\n      [\n        \"ju\",\n        -10.167750358581543\n      ],\n      [\n        \"▁Use\",\n        -10.169474601745605\n      ],\n      [\n        \"▁thanks\",\n        -10.16960334777832\n      ],\n      [\n        \"▁centre\",\n        -10.170127868652344\n      ],\n      [\n        \"▁Australia\",\n        -10.170358657836914\n      ],\n      [\n        \"▁estate\",\n        -10.170504570007324\n      ],\n      [\n        \"▁eyes\",\n        -10.1714448928833\n      ],\n      [\n        \"▁force\",\n        -10.171592712402344\n      ],\n      [\n        \"▁income\",\n        -10.17395305633545\n      ],\n      [\n        \"▁science\",\n        -10.174036026000977\n      ],\n      [\n        \"ori\",\n        -10.174230575561523\n      ],\n      [\n        \"▁enter\",\n        -10.174851417541504\n      ],\n      [\n        \"▁28\",\n        -10.175408363342285\n      ],\n      [\n        \"ire\",\n        -10.17568302154541\n      ],\n      [\n        \"▁schools\",\n        -10.175797462463379\n      ],\n      [\n        \"▁restaurant\",\n        -10.176088333129883\n      ],\n      [\n        \"▁Council\",\n        -10.177032470703125\n      ],\n      [\n        \"aus\",\n        -10.177885055541992\n      ],\n      [\n        \"▁agree\",\n        -10.17905330657959\n      ],\n      [\n        \"▁campaign\",\n        -10.179192543029785\n      ],\n      [\n        \"▁Ta\",\n        -10.179428100585938\n      ],\n      [\n        \"▁letter\",\n        -10.179814338684082\n      ],\n      [\n        \"▁central\",\n        -10.179931640625\n      ],\n      [\n        \"▁Because\",\n        -10.180054664611816\n      ],\n      [\n        \"▁path\",\n        -10.180349349975586\n      ],\n      [\n        \"▁loc\",\n        -10.180882453918457\n      ],\n      [\n        \"▁files\",\n        -10.182587623596191\n      ],\n      [\n        \"▁population\",\n        -10.182705879211426\n      ],\n      [\n        \"▁explore\",\n        -10.182723999023438\n      ],\n      [\n        \"▁mid\",\n        -10.182734489440918\n      ],\n      [\n        \"▁concept\",\n        -10.182748794555664\n      ],\n      [\n        \"▁church\",\n        -10.183015823364258\n      ],\n      [\n        \"80\",\n        -10.183026313781738\n      ],\n      [\n        \"▁einfach\",\n        -10.185834884643555\n      ],\n      [\n        \"▁reasons\",\n        -10.186690330505371\n      ],\n      [\n        \"▁determine\",\n        -10.186755180358887\n      ],\n      [\n        \"▁February\",\n        -10.187095642089844\n      ],\n      [\n        \"▁evidence\",\n        -10.18797779083252\n      ],\n      [\n        \"▁sleep\",\n        -10.188036918640137\n      ],\n      [\n        \"▁Board\",\n        -10.188652992248535\n      ],\n      [\n        \"▁maybe\",\n        -10.189635276794434\n      ],\n      [\n        \"▁wasn\",\n        -10.189701080322266\n      ],\n      [\n        \"▁Monday\",\n        -10.190101623535156\n      ],\n      [\n        \"▁director\",\n        -10.190481185913086\n      ],\n      [\n        \"well\",\n        -10.190974235534668\n      ],\n      [\n        \"During\",\n        -10.191001892089844\n      ],\n      [\n        \"▁sweet\",\n        -10.191061973571777\n      ],\n      [\n        \"▁assist\",\n        -10.19124984741211\n      ],\n      [\n        \"▁police\",\n        -10.191511154174805\n      ],\n      [\n        \"▁repair\",\n        -10.191729545593262\n      ],\n      [\n        \"▁techniques\",\n        -10.191733360290527\n      ],\n      [\n        \"▁served\",\n        -10.191808700561523\n      ],\n      [\n        \"vi\",\n        -10.192037582397461\n      ],\n      [\n        \"▁sports\",\n        -10.192331314086914\n      ],\n      [\n        \"▁opening\",\n        -10.192401885986328\n      ],\n      [\n        \"▁ones\",\n        -10.192731857299805\n      ],\n      [\n        \"▁notice\",\n        -10.193460464477539\n      ],\n      [\n        \"▁PC\",\n        -10.193547248840332\n      ],\n      [\n        \"▁alte\",\n        -10.194242477416992\n      ],\n      [\n        \"▁Bi\",\n        -10.194340705871582\n      ],\n      [\n        \"▁cold\",\n        -10.195606231689453\n      ],\n      [\n        \"▁billion\",\n        -10.195794105529785\n      ],\n      [\n        \"▁balance\",\n        -10.196361541748047\n      ],\n      [\n        \"cer\",\n        -10.196417808532715\n      ],\n      [\n        \"▁nearly\",\n        -10.196725845336914\n      ],\n      [\n        \"▁wear\",\n        -10.197259902954102\n      ],\n      [\n        \"free\",\n        -10.19760799407959\n      ],\n      [\n        \"▁Have\",\n        -10.197748184204102\n      ],\n      [\n        \"▁comfort\",\n        -10.199211120605469\n      ],\n      [\n        \"▁studies\",\n        -10.199225425720215\n      ],\n      [\n        \"▁traffic\",\n        -10.199540138244629\n      ],\n      [\n        \"▁item\",\n        -10.200214385986328\n      ],\n      [\n        \"▁teaching\",\n        -10.200467109680176\n      ],\n      [\n        \"▁turned\",\n        -10.201326370239258\n      ],\n      [\n        \"isation\",\n        -10.201354026794434\n      ],\n      [\n        \"12\",\n        -10.202038764953613\n      ],\n      [\n        \"▁greater\",\n        -10.202167510986328\n      ],\n      [\n        \"▁knew\",\n        -10.20233154296875\n      ],\n      [\n        \"▁Association\",\n        -10.203333854675293\n      ],\n      [\n        \"▁Office\",\n        -10.203802108764648\n      ],\n      [\n        \"▁established\",\n        -10.204085350036621\n      ],\n      [\n        \"45\",\n        -10.204170227050781\n      ],\n      [\n        \"▁Love\",\n        -10.204318046569824\n      ],\n      [\n        \"▁changed\",\n        -10.204882621765137\n      ],\n      [\n        \"▁pan\",\n        -10.205184936523438\n      ],\n      [\n        \"van\",\n        -10.20565414428711\n      ],\n      [\n        \"▁Mi\",\n        -10.205663681030273\n      ],\n      [\n        \"▁tend\",\n        -10.20637321472168\n      ],\n      [\n        \"▁connection\",\n        -10.206522941589355\n      ],\n      [\n        \"▁lack\",\n        -10.206954002380371\n      ],\n      [\n        \"▁bank\",\n        -10.208464622497559\n      ],\n      [\n        \"cat\",\n        -10.208720207214355\n      ],\n      [\n        \"▁helped\",\n        -10.209071159362793\n      ],\n      [\n        \"▁spot\",\n        -10.209417343139648\n      ],\n      [\n        \"▁spring\",\n        -10.20974063873291\n      ],\n      [\n        \"▁Wi\",\n        -10.210912704467773\n      ],\n      [\n        \"▁Mac\",\n        -10.211682319641113\n      ],\n      [\n        \"▁Christ\",\n        -10.212015151977539\n      ],\n      [\n        \"▁saying\",\n        -10.212835311889648\n      ],\n      [\n        \"▁General\",\n        -10.213062286376953\n      ],\n      [\n        \"▁port\",\n        -10.213099479675293\n      ],\n      [\n        \"▁Mal\",\n        -10.213156700134277\n      ],\n      [\n        \"▁System\",\n        -10.213486671447754\n      ],\n      [\n        \"▁According\",\n        -10.2152738571167\n      ],\n      [\n        \"▁chiar\",\n        -10.21568489074707\n      ],\n      [\n        \"log\",\n        -10.21576976776123\n      ],\n      [\n        \"▁mix\",\n        -10.215974807739258\n      ],\n      [\n        \"▁Lake\",\n        -10.216042518615723\n      ],\n      [\n        \"▁intr\",\n        -10.216590881347656\n      ],\n      [\n        \"▁deliver\",\n        -10.216793060302734\n      ],\n      [\n        \"mon\",\n        -10.216931343078613\n      ],\n      [\n        \"▁Ro\",\n        -10.217060089111328\n      ],\n      [\n        \"▁Management\",\n        -10.217504501342773\n      ],\n      [\n        \"bri\",\n        -10.218718528747559\n      ],\n      [\n        \"▁pieces\",\n        -10.218774795532227\n      ],\n      [\n        \"▁announced\",\n        -10.218926429748535\n      ],\n      [\n        \"▁Yes\",\n        -10.219268798828125\n      ],\n      [\n        \"▁dark\",\n        -10.220884323120117\n      ],\n      [\n        \"val\",\n        -10.221765518188477\n      ],\n      [\n        \"▁rights\",\n        -10.22309684753418\n      ],\n      [\n        \"▁Diese\",\n        -10.223100662231445\n      ],\n      [\n        \"ki\",\n        -10.223350524902344\n      ],\n      [\n        \"vent\",\n        -10.22375774383545\n      ],\n      [\n        \"▁born\",\n        -10.22380542755127\n      ],\n      [\n        \"▁muss\",\n        -10.224031448364258\n      ],\n      [\n        \"compared\",\n        -10.224660873413086\n      ],\n      [\n        \"▁demand\",\n        -10.224669456481934\n      ],\n      [\n        \"▁handle\",\n        -10.225493431091309\n      ],\n      [\n        \"▁mode\",\n        -10.226058006286621\n      ],\n      [\n        \"lic\",\n        -10.226137161254883\n      ],\n      [\n        \"▁ahead\",\n        -10.226436614990234\n      ],\n      [\n        \"▁sharing\",\n        -10.227599143981934\n      ],\n      [\n        \"▁micro\",\n        -10.227779388427734\n      ],\n      [\n        \"▁Par\",\n        -10.228626251220703\n      ],\n      [\n        \"▁Every\",\n        -10.22950553894043\n      ],\n      [\n        \"▁bag\",\n        -10.229736328125\n      ],\n      [\n        \"▁daca\",\n        -10.22974967956543\n      ],\n      [\n        \"▁Apple\",\n        -10.23022174835205\n      ],\n      [\n        \"▁Mark\",\n        -10.230239868164062\n      ],\n      [\n        \"▁larger\",\n        -10.231284141540527\n      ],\n      [\n        \"eze\",\n        -10.231978416442871\n      ],\n      [\n        \"▁progress\",\n        -10.232234001159668\n      ],\n      [\n        \"▁stress\",\n        -10.232929229736328\n      ],\n      [\n        \"▁cards\",\n        -10.233663558959961\n      ],\n      [\n        \"▁driving\",\n        -10.233738899230957\n      ],\n      [\n        \"▁dry\",\n        -10.233970642089844\n      ],\n      [\n        \"▁relevant\",\n        -10.234556198120117\n      ],\n      [\n        \"▁Jo\",\n        -10.234825134277344\n      ],\n      [\n        \"▁tree\",\n        -10.235036849975586\n      ],\n      [\n        \"▁reported\",\n        -10.235770225524902\n      ],\n      [\n        \"ities\",\n        -10.23577880859375\n      ],\n      [\n        \"▁tea\",\n        -10.235806465148926\n      ],\n      [\n        \"▁although\",\n        -10.236145973205566\n      ],\n      [\n        \"▁Research\",\n        -10.236261367797852\n      ],\n      [\n        \"▁pool\",\n        -10.23691463470459\n      ],\n      [\n        \"▁fin\",\n        -10.237163543701172\n      ],\n      [\n        \"▁Und\",\n        -10.238130569458008\n      ],\n      [\n        \"▁decide\",\n        -10.239217758178711\n      ],\n      [\n        \"▁expert\",\n        -10.239344596862793\n      ],\n      [\n        \"rate\",\n        -10.239428520202637\n      ],\n      [\n        \"zeit\",\n        -10.239971160888672\n      ],\n      [\n        \"▁26\",\n        -10.24040412902832\n      ],\n      [\n        \"▁Ka\",\n        -10.24056339263916\n      ],\n      [\n        \"▁fix\",\n        -10.240666389465332\n      ],\n      [\n        \"igen\",\n        -10.240713119506836\n      ],\n      [\n        \"▁direction\",\n        -10.241188049316406\n      ],\n      [\n        \"▁star\",\n        -10.241661071777344\n      ],\n      [\n        \"▁middle\",\n        -10.241889953613281\n      ],\n      [\n        \"▁Ja\",\n        -10.241962432861328\n      ],\n      [\n        \"▁Land\",\n        -10.24207878112793\n      ],\n      [\n        \"ken\",\n        -10.242605209350586\n      ],\n      [\n        \"▁button\",\n        -10.242630004882812\n      ],\n      [\n        \"▁rules\",\n        -10.242656707763672\n      ],\n      [\n        \"▁également\",\n        -10.242706298828125\n      ],\n      [\n        \"▁viel\",\n        -10.243158340454102\n      ],\n      [\n        \"▁welcome\",\n        -10.243682861328125\n      ],\n      [\n        \"că\",\n        -10.243932723999023\n      ],\n      [\n        \"▁Top\",\n        -10.245308876037598\n      ],\n      [\n        \"▁allowed\",\n        -10.245487213134766\n      ],\n      [\n        \"▁tip\",\n        -10.245584487915039\n      ],\n      [\n        \"▁cei\",\n        -10.245768547058105\n      ],\n      [\n        \"▁Nous\",\n        -10.246004104614258\n      ],\n      [\n        \"té\",\n        -10.246850967407227\n      ],\n      [\n        \"▁unei\",\n        -10.246903419494629\n      ],\n      [\n        \"▁efforts\",\n        -10.247260093688965\n      ],\n      [\n        \"▁note\",\n        -10.247719764709473\n      ],\n      [\n        \"▁title\",\n        -10.247977256774902\n      ],\n      [\n        \"ric\",\n        -10.248047828674316\n      ],\n      [\n        \"berg\",\n        -10.248252868652344\n      ],\n      [\n        \"▁ainsi\",\n        -10.248576164245605\n      ],\n      [\n        \"▁led\",\n        -10.248713493347168\n      ],\n      [\n        \"▁alone\",\n        -10.248786926269531\n      ],\n      [\n        \"ward\",\n        -10.249215126037598\n      ],\n      [\n        \"▁vie\",\n        -10.249323844909668\n      ],\n      [\n        \"▁brain\",\n        -10.249427795410156\n      ],\n      [\n        \"light\",\n        -10.250100135803223\n      ],\n      [\n        \"▁Court\",\n        -10.250598907470703\n      ],\n      [\n        \"set\",\n        -10.250869750976562\n      ],\n      [\n        \"▁steps\",\n        -10.251251220703125\n      ],\n      [\n        \"pri\",\n        -10.251391410827637\n      ],\n      [\n        \"Q\",\n        -10.251654624938965\n      ],\n      [\n        \"sti\",\n        -10.251938819885254\n      ],\n      [\n        \"▁voice\",\n        -10.252121925354004\n      ],\n      [\n        \"▁models\",\n        -10.252705574035645\n      ],\n      [\n        \"▁parties\",\n        -10.25442886352539\n      ],\n      [\n        \"▁radio\",\n        -10.255270957946777\n      ],\n      [\n        \"▁mission\",\n        -10.25545883178711\n      ],\n      [\n        \"▁methods\",\n        -10.255658149719238\n      ],\n      [\n        \"▁Te\",\n        -10.256019592285156\n      ],\n      [\n        \"air\",\n        -10.256489753723145\n      ],\n      [\n        \"▁essay\",\n        -10.256719589233398\n      ],\n      [\n        \"my\",\n        -10.256826400756836\n      ],\n      [\n        \"▁competition\",\n        -10.257049560546875\n      ],\n      [\n        \"ses\",\n        -10.257447242736816\n      ],\n      [\n        \"▁serious\",\n        -10.258724212646484\n      ],\n      [\n        \"▁Ti\",\n        -10.258733749389648\n      ],\n      [\n        \"▁Hand\",\n        -10.259561538696289\n      ],\n      [\n        \"not\",\n        -10.25958251953125\n      ],\n      [\n        \"▁winter\",\n        -10.261277198791504\n      ],\n      [\n        \"24\",\n        -10.261724472045898\n      ],\n      [\n        \"▁vision\",\n        -10.26174545288086\n      ],\n      [\n        \"▁technical\",\n        -10.262110710144043\n      ],\n      [\n        \"▁cross\",\n        -10.262799263000488\n      ],\n      [\n        \"▁update\",\n        -10.262947082519531\n      ],\n      [\n        \"▁Team\",\n        -10.263564109802246\n      ],\n      [\n        \"▁evening\",\n        -10.264286041259766\n      ],\n      [\n        \"▁experts\",\n        -10.26435661315918\n      ],\n      [\n        \"part\",\n        -10.264640808105469\n      ],\n      [\n        \"▁wo\",\n        -10.265190124511719\n      ],\n      [\n        \"▁App\",\n        -10.265729904174805\n      ],\n      [\n        \"▁peu\",\n        -10.266267776489258\n      ],\n      [\n        \"▁mich\",\n        -10.26630687713623\n      ],\n      [\n        \"▁reports\",\n        -10.267001152038574\n      ],\n      [\n        \"▁km\",\n        -10.267594337463379\n      ],\n      [\n        \"▁print\",\n        -10.2678804397583\n      ],\n      [\n        \"▁Hotel\",\n        -10.268101692199707\n      ],\n      [\n        \"▁earlier\",\n        -10.268235206604004\n      ],\n      [\n        \"▁uses\",\n        -10.26826286315918\n      ],\n      [\n        \"▁menu\",\n        -10.268416404724121\n      ],\n      [\n        \"▁miles\",\n        -10.26845645904541\n      ],\n      [\n        \"▁classes\",\n        -10.268463134765625\n      ],\n      [\n        \"▁mo\",\n        -10.268525123596191\n      ],\n      [\n        \"▁loan\",\n        -10.2691011428833\n      ],\n      [\n        \"▁host\",\n        -10.269192695617676\n      ],\n      [\n        \"▁author\",\n        -10.269274711608887\n      ],\n      [\n        \"-1\",\n        -10.269434928894043\n      ],\n      [\n        \"▁bun\",\n        -10.269940376281738\n      ],\n      [\n        \"19\",\n        -10.270011901855469\n      ],\n      [\n        \"uch\",\n        -10.270670890808105\n      ],\n      [\n        \"ble\",\n        -10.270813941955566\n      ],\n      [\n        \"▁holiday\",\n        -10.270859718322754\n      ],\n      [\n        \"los\",\n        -10.271894454956055\n      ],\n      [\n        \"▁looked\",\n        -10.272663116455078\n      ],\n      [\n        \"▁Test\",\n        -10.272759437561035\n      ],\n      [\n        \"▁moved\",\n        -10.273000717163086\n      ],\n      [\n        \"▁numbers\",\n        -10.273306846618652\n      ],\n      [\n        \"▁covered\",\n        -10.273405075073242\n      ],\n      [\n        \"ker\",\n        -10.273696899414062\n      ],\n      [\n        \"TM\",\n        -10.273768424987793\n      ],\n      [\n        \"▁album\",\n        -10.274727821350098\n      ],\n      [\n        \"▁27\",\n        -10.27476692199707\n      ],\n      [\n        \"▁când\",\n        -10.27523422241211\n      ],\n      [\n        \"▁shopping\",\n        -10.275248527526855\n      ],\n      [\n        \"▁Ihr\",\n        -10.27531623840332\n      ],\n      [\n        \"▁requires\",\n        -10.275786399841309\n      ],\n      [\n        \"▁USA\",\n        -10.275909423828125\n      ],\n      [\n        \"000\",\n        -10.275951385498047\n      ],\n      [\n        \"▁official\",\n        -10.276010513305664\n      ],\n      [\n        \"▁states\",\n        -10.276346206665039\n      ],\n      [\n        \"▁tips\",\n        -10.276570320129395\n      ],\n      [\n        \"ible\",\n        -10.277321815490723\n      ],\n      [\n        \"▁Lu\",\n        -10.27756404876709\n      ],\n      [\n        \"ces\",\n        -10.278343200683594\n      ],\n      [\n        \"▁figure\",\n        -10.27839469909668\n      ],\n      [\n        \"▁Take\",\n        -10.278576850891113\n      ],\n      [\n        \"▁după\",\n        -10.278687477111816\n      ],\n      [\n        \"▁teams\",\n        -10.278980255126953\n      ],\n      [\n        \"▁song\",\n        -10.279138565063477\n      ],\n      [\n        \"▁master\",\n        -10.279386520385742\n      ],\n      [\n        \"ED\",\n        -10.279841423034668\n      ],\n      [\n        \"▁cleaning\",\n        -10.280523300170898\n      ],\n      [\n        \"▁drop\",\n        -10.280651092529297\n      ],\n      [\n        \"▁primary\",\n        -10.2808837890625\n      ],\n      [\n        \"▁Life\",\n        -10.28108024597168\n      ],\n      [\n        \"▁carry\",\n        -10.281129837036133\n      ],\n      [\n        \"▁initial\",\n        -10.281270980834961\n      ],\n      [\n        \"▁encore\",\n        -10.281617164611816\n      ],\n      [\n        \"▁Add\",\n        -10.281670570373535\n      ],\n      [\n        \"▁woman\",\n        -10.282076835632324\n      ],\n      [\n        \"▁Water\",\n        -10.282219886779785\n      ],\n      [\n        \"▁advantage\",\n        -10.28277587890625\n      ],\n      [\n        \"see\",\n        -10.283234596252441\n      ],\n      [\n        \"ré\",\n        -10.283341407775879\n      ],\n      [\n        \"▁motor\",\n        -10.283479690551758\n      ],\n      [\n        \"mel\",\n        -10.2838716506958\n      ],\n      [\n        \"▁finding\",\n        -10.284419059753418\n      ],\n      [\n        \"▁plastic\",\n        -10.286365509033203\n      ],\n      [\n        \"▁IT\",\n        -10.286602973937988\n      ],\n      [\n        \"▁Church\",\n        -10.286916732788086\n      ],\n      [\n        \"▁shape\",\n        -10.287345886230469\n      ],\n      [\n        \"▁gets\",\n        -10.287763595581055\n      ],\n      [\n        \"▁followed\",\n        -10.288186073303223\n      ],\n      [\n        \"▁100%\",\n        -10.288315773010254\n      ],\n      [\n        \"▁Program\",\n        -10.28912353515625\n      ],\n      [\n        \"▁Another\",\n        -10.28934383392334\n      ],\n      [\n        \"▁zwei\",\n        -10.289522171020508\n      ],\n      [\n        \"▁father\",\n        -10.289839744567871\n      ],\n      [\n        \"▁rich\",\n        -10.290282249450684\n      ],\n      [\n        \"où\",\n        -10.290810585021973\n      ],\n      [\n        \"▁lines\",\n        -10.290934562683105\n      ],\n      [\n        \"▁distance\",\n        -10.291757583618164\n      ],\n      [\n        \"▁cell\",\n        -10.291876792907715\n      ],\n      [\n        \"▁parte\",\n        -10.292072296142578\n      ],\n      [\n        \"bit\",\n        -10.292445182800293\n      ],\n      [\n        \"▁perhaps\",\n        -10.292749404907227\n      ],\n      [\n        \"rii\",\n        -10.293590545654297\n      ],\n      [\n        \"▁session\",\n        -10.294137954711914\n      ],\n      [\n        \"▁Pentru\",\n        -10.294528007507324\n      ],\n      [\n        \"ING\",\n        -10.295049667358398\n      ],\n      [\n        \"ants\",\n        -10.295478820800781\n      ],\n      [\n        \"▁remain\",\n        -10.295543670654297\n      ],\n      [\n        \"13\",\n        -10.295588493347168\n      ],\n      [\n        \"▁finished\",\n        -10.295763969421387\n      ],\n      [\n        \"bel\",\n        -10.298725128173828\n      ],\n      [\n        \"▁organizations\",\n        -10.299455642700195\n      ],\n      [\n        \"▁Any\",\n        -10.299896240234375\n      ],\n      [\n        \"▁taste\",\n        -10.300277709960938\n      ],\n      [\n        \"Whether\",\n        -10.300600051879883\n      ],\n      [\n        \"ram\",\n        -10.300874710083008\n      ],\n      [\n        \"like\",\n        -10.301307678222656\n      ],\n      [\n        \"▁artist\",\n        -10.301319122314453\n      ],\n      [\n        \"aire\",\n        -10.303369522094727\n      ],\n      [\n        \"▁French\",\n        -10.303386688232422\n      ],\n      [\n        \"▁donc\",\n        -10.303634643554688\n      ],\n      [\n        \"ow\",\n        -10.30386734008789\n      ],\n      [\n        \"▁200\",\n        -10.303993225097656\n      ],\n      [\n        \"▁paint\",\n        -10.304465293884277\n      ],\n      [\n        \"▁Open\",\n        -10.304535865783691\n      ],\n      [\n        \"▁appear\",\n        -10.304722785949707\n      ],\n      [\n        \"▁Washington\",\n        -10.304765701293945\n      ],\n      [\n        \"▁target\",\n        -10.30491828918457\n      ],\n      [\n        \"pir\",\n        -10.305578231811523\n      ],\n      [\n        \"▁generally\",\n        -10.305987358093262\n      ],\n      [\n        \"▁British\",\n        -10.306790351867676\n      ],\n      [\n        \"▁seven\",\n        -10.306937217712402\n      ],\n      [\n        \"▁bio\",\n        -10.307162284851074\n      ],\n      [\n        \"▁sector\",\n        -10.307358741760254\n      ],\n      [\n        \"90\",\n        -10.30777359008789\n      ],\n      [\n        \"▁fapt\",\n        -10.307881355285645\n      ],\n      [\n        \"▁prefer\",\n        -10.308316230773926\n      ],\n      [\n        \"▁partner\",\n        -10.308427810668945\n      ],\n      [\n        \"ăm\",\n        -10.308547973632812\n      ],\n      [\n        \"▁diverse\",\n        -10.308610916137695\n      ],\n      [\n        \"▁onto\",\n        -10.309283256530762\n      ],\n      [\n        \"▁refer\",\n        -10.309828758239746\n      ],\n      [\n        \"▁Law\",\n        -10.310302734375\n      ],\n      [\n        \"▁Ri\",\n        -10.310596466064453\n      ],\n      [\n        \"▁critical\",\n        -10.310735702514648\n      ],\n      [\n        \"▁copy\",\n        -10.310897827148438\n      ],\n      [\n        \"ck\",\n        -10.311517715454102\n      ],\n      [\n        \"ix\",\n        -10.311732292175293\n      ],\n      [\n        \"tag\",\n        -10.311793327331543\n      ],\n      [\n        \"▁Road\",\n        -10.311936378479004\n      ],\n      [\n        \"▁concern\",\n        -10.312053680419922\n      ],\n      [\n        \"▁maximum\",\n        -10.312095642089844\n      ],\n      [\n        \"▁train\",\n        -10.312148094177246\n      ],\n      [\n        \"▁într\",\n        -10.312189102172852\n      ],\n      [\n        \"ura\",\n        -10.313023567199707\n      ],\n      [\n        \"▁Qu\",\n        -10.313481330871582\n      ],\n      [\n        \"▁links\",\n        -10.313538551330566\n      ],\n      [\n        \"▁audience\",\n        -10.313969612121582\n      ],\n      [\n        \"▁foot\",\n        -10.314554214477539\n      ],\n      [\n        \"▁Blue\",\n        -10.314605712890625\n      ],\n      [\n        \"ification\",\n        -10.315386772155762\n      ],\n      [\n        \"▁developing\",\n        -10.315847396850586\n      ],\n      [\n        \"▁interior\",\n        -10.315876007080078\n      ],\n      [\n        \"=\",\n        -10.316556930541992\n      ],\n      [\n        \"▁aceasta\",\n        -10.31698989868164\n      ],\n      [\n        \"▁dedicated\",\n        -10.317373275756836\n      ],\n      [\n        \"▁movement\",\n        -10.317383766174316\n      ],\n      [\n        \"sta\",\n        -10.318868637084961\n      ],\n      [\n        \"▁challenges\",\n        -10.319018363952637\n      ],\n      [\n        \"inte\",\n        -10.319074630737305\n      ],\n      [\n        \"▁Euro\",\n        -10.319075584411621\n      ],\n      [\n        \"▁classic\",\n        -10.320341110229492\n      ],\n      [\n        \"▁Um\",\n        -10.320767402648926\n      ],\n      [\n        \"▁alternative\",\n        -10.321407318115234\n      ],\n      [\n        \"mann\",\n        -10.321614265441895\n      ],\n      [\n        \"▁Une\",\n        -10.322278022766113\n      ],\n      [\n        \"qu\",\n        -10.322415351867676\n      ],\n      [\n        \"▁heavy\",\n        -10.322434425354004\n      ],\n      [\n        \"▁install\",\n        -10.322484970092773\n      ],\n      [\n        \"▁fiind\",\n        -10.322504043579102\n      ],\n      [\n        \"▁leaders\",\n        -10.323003768920898\n      ],\n      [\n        \"▁views\",\n        -10.323019981384277\n      ],\n      [\n        \"▁www\",\n        -10.323084831237793\n      ],\n      [\n        \"▁standards\",\n        -10.323270797729492\n      ],\n      [\n        \"ong\",\n        -10.323580741882324\n      ],\n      [\n        \"40\",\n        -10.323833465576172\n      ],\n      [\n        \"▁cm\",\n        -10.323848724365234\n      ],\n      [\n        \"▁park\",\n        -10.324324607849121\n      ],\n      [\n        \"▁himself\",\n        -10.324419021606445\n      ],\n      [\n        \"▁People\",\n        -10.324649810791016\n      ],\n      [\n        \"▁separate\",\n        -10.324843406677246\n      ],\n      [\n        \"▁secure\",\n        -10.325018882751465\n      ],\n      [\n        \"sie\",\n        -10.325084686279297\n      ],\n      [\n        \"▁maintenance\",\n        -10.325199127197266\n      ],\n      [\n        \"▁encourage\",\n        -10.32766056060791\n      ],\n      [\n        \"ein\",\n        -10.328139305114746\n      ],\n      [\n        \"▁reviews\",\n        -10.328202247619629\n      ],\n      [\n        \"▁Michael\",\n        -10.328210830688477\n      ],\n      [\n        \"▁background\",\n        -10.328283309936523\n      ],\n      [\n        \"▁therefore\",\n        -10.328433990478516\n      ],\n      [\n        \"▁server\",\n        -10.328487396240234\n      ],\n      [\n        \"▁dream\",\n        -10.328742027282715\n      ],\n      [\n        \"ping\",\n        -10.329025268554688\n      ],\n      [\n        \"▁block\",\n        -10.329855918884277\n      ],\n      [\n        \"▁2009\",\n        -10.330734252929688\n      ],\n      [\n        \"▁facilities\",\n        -10.330931663513184\n      ],\n      [\n        \"▁II\",\n        -10.331367492675781\n      ],\n      [\n        \"▁attend\",\n        -10.33156967163086\n      ],\n      [\n        \"▁cap\",\n        -10.33224105834961\n      ],\n      [\n        \"35\",\n        -10.332416534423828\n      ],\n      [\n        \"▁steel\",\n        -10.332796096801758\n      ],\n      [\n        \"▁shared\",\n        -10.333391189575195\n      ],\n      [\n        \"▁doctor\",\n        -10.333939552307129\n      ],\n      [\n        \"▁River\",\n        -10.33411693572998\n      ],\n      [\n        \"▁Bay\",\n        -10.334456443786621\n      ],\n      [\n        \"▁length\",\n        -10.335005760192871\n      ],\n      [\n        \"▁jobs\",\n        -10.335466384887695\n      ],\n      [\n        \"▁Plus\",\n        -10.335992813110352\n      ],\n      [\n        \"▁station\",\n        -10.336140632629395\n      ],\n      [\n        \"▁elements\",\n        -10.336268424987793\n      ],\n      [\n        \"▁rock\",\n        -10.336668014526367\n      ],\n      [\n        \"▁professionals\",\n        -10.336670875549316\n      ],\n      [\n        \"cle\",\n        -10.336777687072754\n      ],\n      [\n        \"▁dont\",\n        -10.336873054504395\n      ],\n      [\n        \"urilor\",\n        -10.337142944335938\n      ],\n      [\n        \"▁gain\",\n        -10.337271690368652\n      ],\n      [\n        \"▁programme\",\n        -10.337540626525879\n      ],\n      [\n        \"▁Cor\",\n        -10.338377952575684\n      ],\n      [\n        \"▁leader\",\n        -10.338542938232422\n      ],\n      [\n        \"ării\",\n        -10.33876895904541\n      ],\n      [\n        \"▁>\",\n        -10.339137077331543\n      ],\n      [\n        \"▁task\",\n        -10.339471817016602\n      ],\n      [\n        \"▁seeing\",\n        -10.339943885803223\n      ],\n      [\n        \"▁statement\",\n        -10.34045696258545\n      ],\n      [\n        \"vin\",\n        -10.341094017028809\n      ],\n      [\n        \"▁fish\",\n        -10.341700553894043\n      ],\n      [\n        \"▁advanced\",\n        -10.342403411865234\n      ],\n      [\n        \"▁discuss\",\n        -10.342494010925293\n      ],\n      [\n        \"die\",\n        -10.342904090881348\n      ],\n      [\n        \"isch\",\n        -10.342944145202637\n      ],\n      [\n        \"▁plenty\",\n        -10.342947959899902\n      ],\n      [\n        \"▁Hall\",\n        -10.343120574951172\n      ],\n      [\n        \"▁Other\",\n        -10.343339920043945\n      ],\n      [\n        \"▁homes\",\n        -10.344944953918457\n      ],\n      [\n        \"▁Ni\",\n        -10.345016479492188\n      ],\n      [\n        \"▁testing\",\n        -10.345102310180664\n      ],\n      [\n        \"▁Last\",\n        -10.345392227172852\n      ],\n      [\n        \"▁Note\",\n        -10.345595359802246\n      ],\n      [\n        \"▁talking\",\n        -10.345934867858887\n      ],\n      [\n        \"▁exchange\",\n        -10.347042083740234\n      ],\n      [\n        \"▁exercise\",\n        -10.347189903259277\n      ],\n      [\n        \"▁cea\",\n        -10.347546577453613\n      ],\n      [\n        \"▁wife\",\n        -10.34820556640625\n      ],\n      [\n        \"▁Für\",\n        -10.348480224609375\n      ],\n      [\n        \"▁Texas\",\n        -10.34981918334961\n      ],\n      [\n        \"▁fr\",\n        -10.35065746307373\n      ],\n      [\n        \"▁speak\",\n        -10.350894927978516\n      ],\n      [\n        \"17\",\n        -10.351007461547852\n      ],\n      [\n        \"70\",\n        -10.351462364196777\n      ],\n      [\n        \"▁promote\",\n        -10.351851463317871\n      ],\n      [\n        \"tul\",\n        -10.351990699768066\n      ],\n      [\n        \"apos\",\n        -10.35208511352539\n      ],\n      [\n        \"▁Jahr\",\n        -10.35214900970459\n      ],\n      [\n        \"▁Trump\",\n        -10.352204322814941\n      ],\n      [\n        \"▁ohne\",\n        -10.352357864379883\n      ],\n      [\n        \"▁learned\",\n        -10.353700637817383\n      ],\n      [\n        \"▁Sp\",\n        -10.353803634643555\n      ],\n      [\n        \"▁owner\",\n        -10.354275703430176\n      ],\n      [\n        \"mor\",\n        -10.354422569274902\n      ],\n      [\n        \"▁fois\",\n        -10.354452133178711\n      ],\n      [\n        \"▁meaning\",\n        -10.35518741607666\n      ],\n      [\n        \"▁dacă\",\n        -10.355249404907227\n      ],\n      [\n        \"nic\",\n        -10.355484008789062\n      ],\n      [\n        \"а\",\n        -10.355525970458984\n      ],\n      [\n        \"14\",\n        -10.355767250061035\n      ],\n      [\n        \"▁driver\",\n        -10.356258392333984\n      ],\n      [\n        \"▁Amazon\",\n        -10.3567533493042\n      ],\n      [\n        \"▁flow\",\n        -10.358469009399414\n      ],\n      [\n        \"▁shot\",\n        -10.358726501464844\n      ],\n      [\n        \"▁sous\",\n        -10.35914421081543\n      ],\n      [\n        \"▁Gold\",\n        -10.359339714050293\n      ],\n      [\n        \"▁straight\",\n        -10.359562873840332\n      ],\n      [\n        \"▁conference\",\n        -10.359610557556152\n      ],\n      [\n        \"▁peste\",\n        -10.359662055969238\n      ],\n      [\n        \"whose\",\n        -10.36030101776123\n      ],\n      [\n        \"▁installation\",\n        -10.36050796508789\n      ],\n      [\n        \"▁produced\",\n        -10.360607147216797\n      ],\n      [\n        \"▁independent\",\n        -10.36192512512207\n      ],\n      [\n        \"▁Institute\",\n        -10.362021446228027\n      ],\n      [\n        \"▁James\",\n        -10.362373352050781\n      ],\n      [\n        \"▁mental\",\n        -10.362601280212402\n      ],\n      [\n        \"ara\",\n        -10.362798690795898\n      ],\n      [\n        \"ium\",\n        -10.363021850585938\n      ],\n      [\n        \"▁husband\",\n        -10.36306095123291\n      ],\n      [\n        \"▁guests\",\n        -10.363907814025879\n      ],\n      [\n        \"27\",\n        -10.364319801330566\n      ],\n      [\n        \"▁Che\",\n        -10.364651679992676\n      ],\n      [\n        \"▁Indian\",\n        -10.364694595336914\n      ],\n      [\n        \"zer\",\n        -10.36478042602539\n      ],\n      [\n        \"▁minimum\",\n        -10.364962577819824\n      ],\n      [\n        \"500\",\n        -10.365096092224121\n      ],\n      [\n        \"▁sit\",\n        -10.36561393737793\n      ],\n      [\n        \"put\",\n        -10.36656379699707\n      ],\n      [\n        \"▁avea\",\n        -10.36665153503418\n      ],\n      [\n        \"▁ride\",\n        -10.367088317871094\n      ],\n      [\n        \"gan\",\n        -10.367152214050293\n      ],\n      [\n        \"▁Ke\",\n        -10.36747932434082\n      ],\n      [\n        \"book\",\n        -10.367515563964844\n      ],\n      [\n        \"ages\",\n        -10.368019104003906\n      ],\n      [\n        \"▁presented\",\n        -10.368157386779785\n      ],\n      [\n        \"▁Com\",\n        -10.368927955627441\n      ],\n      [\n        \"▁Call\",\n        -10.369053840637207\n      ],\n      [\n        \"▁fee\",\n        -10.369847297668457\n      ],\n      [\n        \"ări\",\n        -10.369905471801758\n      ],\n      [\n        \"▁putea\",\n        -10.37072467803955\n      ],\n      [\n        \"▁Public\",\n        -10.371030807495117\n      ],\n      [\n        \"▁pa\",\n        -10.371152877807617\n      ],\n      [\n        \"28\",\n        -10.371233940124512\n      ],\n      [\n        \"▁Director\",\n        -10.37126350402832\n      ],\n      [\n        \"▁contains\",\n        -10.3717622756958\n      ],\n      [\n        \"▁factors\",\n        -10.372554779052734\n      ],\n      [\n        \"▁famous\",\n        -10.372614860534668\n      ],\n      [\n        \"▁bathroom\",\n        -10.373040199279785\n      ],\n      [\n        \"▁core\",\n        -10.37353229522705\n      ],\n      [\n        \"▁viele\",\n        -10.373610496520996\n      ],\n      [\n        \"▁acum\",\n        -10.374361991882324\n      ],\n      [\n        \"▁animal\",\n        -10.374407768249512\n      ],\n      [\n        \"▁Ihnen\",\n        -10.374425888061523\n      ],\n      [\n        \"▁Find\",\n        -10.374545097351074\n      ],\n      [\n        \"▁Fall\",\n        -10.374861717224121\n      ],\n      [\n        \"ford\",\n        -10.376051902770996\n      ],\n      [\n        \"▁coverage\",\n        -10.3765287399292\n      ],\n      [\n        \"▁smart\",\n        -10.376830101013184\n      ],\n      [\n        \"ries\",\n        -10.376893997192383\n      ],\n      [\n        \"▁memory\",\n        -10.3772554397583\n      ],\n      [\n        \"▁dance\",\n        -10.377443313598633\n      ],\n      [\n        \"11\",\n        -10.37746810913086\n      ],\n      [\n        \"▁communities\",\n        -10.377655982971191\n      ],\n      [\n        \"eurs\",\n        -10.378050804138184\n      ],\n      [\n        \"▁Florida\",\n        -10.378463745117188\n      ],\n      [\n        \"▁sport\",\n        -10.379366874694824\n      ],\n      [\n        \"▁bus\",\n        -10.37992000579834\n      ],\n      [\n        \"▁colors\",\n        -10.379969596862793\n      ],\n      [\n        \"▁affect\",\n        -10.380044937133789\n      ],\n      [\n        \"▁score\",\n        -10.380183219909668\n      ],\n      [\n        \"▁properties\",\n        -10.38050365447998\n      ],\n      [\n        \"18\",\n        -10.380593299865723\n      ],\n      [\n        \"▁astfel\",\n        -10.381312370300293\n      ],\n      [\n        \"▁beach\",\n        -10.382407188415527\n      ],\n      [\n        \"▁friendly\",\n        -10.382795333862305\n      ],\n      [\n        \"izing\",\n        -10.38288688659668\n      ],\n      [\n        \"▁buying\",\n        -10.383146286010742\n      ],\n      [\n        \"▁forget\",\n        -10.383195877075195\n      ],\n      [\n        \"este\",\n        -10.383198738098145\n      ],\n      [\n        \"▁capacity\",\n        -10.38360595703125\n      ],\n      [\n        \"▁lose\",\n        -10.383692741394043\n      ],\n      [\n        \"▁listed\",\n        -10.38407039642334\n      ],\n      [\n        \"ica\",\n        -10.384084701538086\n      ],\n      [\n        \"han\",\n        -10.384085655212402\n      ],\n      [\n        \"▁selbst\",\n        -10.384390830993652\n      ],\n      [\n        \"▁values\",\n        -10.384391784667969\n      ],\n      [\n        \"▁Power\",\n        -10.384559631347656\n      ],\n      [\n        \"▁comments\",\n        -10.384831428527832\n      ],\n      [\n        \"eux\",\n        -10.385346412658691\n      ],\n      [\n        \"ați\",\n        -10.385419845581055\n      ],\n      [\n        \"▁context\",\n        -10.385710716247559\n      ],\n      [\n        \"liche\",\n        -10.385944366455078\n      ],\n      [\n        \"▁keeping\",\n        -10.38620662689209\n      ],\n      [\n        \"▁2008\",\n        -10.38647174835205\n      ],\n      [\n        \"▁su\",\n        -10.386670112609863\n      ],\n      [\n        \"▁biggest\",\n        -10.386838912963867\n      ],\n      [\n        \"▁fiecare\",\n        -10.387356758117676\n      ],\n      [\n        \"ight\",\n        -10.38845157623291\n      ],\n      [\n        \"▁toute\",\n        -10.389808654785156\n      ],\n      [\n        \"▁dinner\",\n        -10.389827728271484\n      ],\n      [\n        \"bau\",\n        -10.390706062316895\n      ],\n      [\n        \"▁Mai\",\n        -10.390762329101562\n      ],\n      [\n        \"▁status\",\n        -10.390776634216309\n      ],\n      [\n        \"rez\",\n        -10.391340255737305\n      ],\n      [\n        \"▁selected\",\n        -10.391549110412598\n      ],\n      [\n        \"▁cells\",\n        -10.392601013183594\n      ],\n      [\n        \"▁eight\",\n        -10.393319129943848\n      ],\n      [\n        \"▁package\",\n        -10.393320083618164\n      ],\n      [\n        \"▁scale\",\n        -10.39333724975586\n      ],\n      [\n        \"din\",\n        -10.39336109161377\n      ],\n      [\n        \"▁Who\",\n        -10.393381118774414\n      ],\n      [\n        \"▁century\",\n        -10.393399238586426\n      ],\n      [\n        \"▁bi\",\n        -10.393516540527344\n      ],\n      [\n        \"▁Africa\",\n        -10.39384937286377\n      ],\n      [\n        \"▁http\",\n        -10.394133567810059\n      ],\n      [\n        \"▁named\",\n        -10.394230842590332\n      ],\n      [\n        \"▁adding\",\n        -10.394901275634766\n      ],\n      [\n        \"▁mention\",\n        -10.395039558410645\n      ],\n      [\n        \"▁casino\",\n        -10.395421981811523\n      ],\n      [\n        \"▁couldn\",\n        -10.395624160766602\n      ],\n      [\n        \"▁outdoor\",\n        -10.395912170410156\n      ],\n      [\n        \"▁sugar\",\n        -10.3960542678833\n      ],\n      [\n        \"▁prepared\",\n        -10.396124839782715\n      ],\n      [\n        \"21\",\n        -10.396528244018555\n      ],\n      [\n        \"▁Ba\",\n        -10.396632194519043\n      ],\n      [\n        \"vers\",\n        -10.396697998046875\n      ],\n      [\n        \"ration\",\n        -10.396773338317871\n      ],\n      [\n        \"▁ja\",\n        -10.397035598754883\n      ],\n      [\n        \"▁aspect\",\n        -10.397224426269531\n      ],\n      [\n        \"▁31\",\n        -10.397462844848633\n      ],\n      [\n        \"▁treat\",\n        -10.397475242614746\n      ],\n      [\n        \"tru\",\n        -10.397841453552246\n      ],\n      [\n        \"▁flat\",\n        -10.397890090942383\n      ],\n      [\n        \"32\",\n        -10.397989273071289\n      ],\n      [\n        \"▁reality\",\n        -10.398238182067871\n      ],\n      [\n        \"▁waste\",\n        -10.39876937866211\n      ],\n      [\n        \"▁King\",\n        -10.399649620056152\n      ],\n      [\n        \"▁drug\",\n        -10.399870872497559\n      ],\n      [\n        \"▁operations\",\n        -10.400120735168457\n      ],\n      [\n        \"▁aim\",\n        -10.40042495727539\n      ],\n      [\n        \"▁fans\",\n        -10.400444984436035\n      ],\n      [\n        \"▁vers\",\n        -10.400891304016113\n      ],\n      [\n        \"▁plants\",\n        -10.400971412658691\n      ],\n      [\n        \"▁Dis\",\n        -10.401477813720703\n      ],\n      [\n        \"▁Daten\",\n        -10.401510238647461\n      ],\n      [\n        \"être\",\n        -10.40267276763916\n      ],\n      [\n        \"▁placed\",\n        -10.40326976776123\n      ],\n      [\n        \"▁bon\",\n        -10.403977394104004\n      ],\n      [\n        \"beim\",\n        -10.4041109085083\n      ],\n      [\n        \"▁slow\",\n        -10.40501880645752\n      ],\n      [\n        \"cri\",\n        -10.405512809753418\n      ],\n      [\n        \"▁Care\",\n        -10.405691146850586\n      ],\n      [\n        \"mes\",\n        -10.406211853027344\n      ],\n      [\n        \"26\",\n        -10.406257629394531\n      ],\n      [\n        \"box\",\n        -10.406330108642578\n      ],\n      [\n        \"▁helpful\",\n        -10.406362533569336\n      ],\n      [\n        \"▁documents\",\n        -10.406543731689453\n      ],\n      [\n        \"▁visitors\",\n        -10.406773567199707\n      ],\n      [\n        \"ture\",\n        -10.406862258911133\n      ],\n      [\n        \"▁Menschen\",\n        -10.406891822814941\n      ],\n      [\n        \"▁Chi\",\n        -10.406975746154785\n      ],\n      [\n        \"▁recipe\",\n        -10.40764045715332\n      ],\n      [\n        \"▁kept\",\n        -10.407693862915039\n      ],\n      [\n        \"▁Grand\",\n        -10.407915115356445\n      ],\n      [\n        \"▁operating\",\n        -10.408178329467773\n      ],\n      [\n        \"point\",\n        -10.408329010009766\n      ],\n      [\n        \"▁bin\",\n        -10.40837287902832\n      ],\n      [\n        \"▁Tri\",\n        -10.40845775604248\n      ],\n      [\n        \"Be\",\n        -10.408512115478516\n      ],\n      [\n        \"▁experiences\",\n        -10.40856647491455\n      ],\n      [\n        \"▁academic\",\n        -10.408608436584473\n      ],\n      [\n        \"▁finden\",\n        -10.40870475769043\n      ],\n      [\n        \"▁sera\",\n        -10.409092903137207\n      ],\n      [\n        \"act\",\n        -10.410541534423828\n      ],\n      [\n        \"▁Pa\",\n        -10.410907745361328\n      ],\n      [\n        \"▁society\",\n        -10.411056518554688\n      ],\n      [\n        \"▁combination\",\n        -10.411237716674805\n      ],\n      [\n        \"5%\",\n        -10.41182804107666\n      ],\n      [\n        \"▁owners\",\n        -10.41188907623291\n      ],\n      [\n        \"▁poor\",\n        -10.412039756774902\n      ],\n      [\n        \"▁Robert\",\n        -10.412378311157227\n      ],\n      [\n        \"▁military\",\n        -10.412964820861816\n      ],\n      [\n        \"▁economy\",\n        -10.413033485412598\n      ],\n      [\n        \"▁aware\",\n        -10.413055419921875\n      ],\n      [\n        \"rot\",\n        -10.413443565368652\n      ],\n      [\n        \"mie\",\n        -10.413544654846191\n      ],\n      [\n        \"▁Thursday\",\n        -10.414399147033691\n      ],\n      [\n        \"▁2011\",\n        -10.41490650177002\n      ],\n      [\n        \"▁fantastic\",\n        -10.41554069519043\n      ],\n      [\n        \"▁numerous\",\n        -10.415921211242676\n      ],\n      [\n        \"▁fair\",\n        -10.4165620803833\n      ],\n      [\n        \"med\",\n        -10.416753768920898\n      ],\n      [\n        \"▁welche\",\n        -10.416893005371094\n      ],\n      [\n        \"▁fruit\",\n        -10.41712760925293\n      ],\n      [\n        \"ku\",\n        -10.417325019836426\n      ],\n      [\n        \"▁Social\",\n        -10.417583465576172\n      ],\n      [\n        \"▁funds\",\n        -10.418157577514648\n      ],\n      [\n        \"▁atunci\",\n        -10.418214797973633\n      ],\n      [\n        \"▁Part\",\n        -10.418238639831543\n      ],\n      [\n        \"▁Big\",\n        -10.418301582336426\n      ],\n      [\n        \"▁2010\",\n        -10.419414520263672\n      ],\n      [\n        \"▁detail\",\n        -10.419889450073242\n      ],\n      [\n        \"▁Peter\",\n        -10.419942855834961\n      ],\n      [\n        \"ani\",\n        -10.420196533203125\n      ],\n      [\n        \"▁Wie\",\n        -10.420795440673828\n      ],\n      [\n        \"▁Tu\",\n        -10.421649932861328\n      ],\n      [\n        \"ear\",\n        -10.421706199645996\n      ],\n      [\n        \"▁Wenn\",\n        -10.421941757202148\n      ],\n      [\n        \"▁manager\",\n        -10.42199993133545\n      ],\n      [\n        \"▁Dan\",\n        -10.422409057617188\n      ],\n      [\n        \"▁Pi\",\n        -10.42257308959961\n      ],\n      [\n        \"▁wants\",\n        -10.422652244567871\n      ],\n      [\n        \"▁Data\",\n        -10.42322826385498\n      ],\n      [\n        \"pos\",\n        -10.42387580871582\n      ],\n      [\n        \"▁older\",\n        -10.423946380615234\n      ],\n      [\n        \"▁Download\",\n        -10.424071311950684\n      ],\n      [\n        \"▁Was\",\n        -10.424107551574707\n      ],\n      [\n        \"▁corner\",\n        -10.424195289611816\n      ],\n      [\n        \"▁president\",\n        -10.424199104309082\n      ],\n      [\n        \"mas\",\n        -10.424248695373535\n      ],\n      [\n        \"▁smaller\",\n        -10.424361228942871\n      ],\n      [\n        \"▁bright\",\n        -10.424459457397461\n      ],\n      [\n        \"▁proper\",\n        -10.424582481384277\n      ],\n      [\n        \"▁Kinder\",\n        -10.424637794494629\n      ],\n      [\n        \"▁Two\",\n        -10.424668312072754\n      ],\n      [\n        \"▁award\",\n        -10.42471694946289\n      ],\n      [\n        \"▁premier\",\n        -10.425211906433105\n      ],\n      [\n        \"▁seek\",\n        -10.425646781921387\n      ],\n      [\n        \"▁thank\",\n        -10.425662994384766\n      ],\n      [\n        \"▁proud\",\n        -10.426509857177734\n      ],\n      [\n        \"▁workers\",\n        -10.426774024963379\n      ],\n      [\n        \"▁2000\",\n        -10.426970481872559\n      ],\n      [\n        \"▁gone\",\n        -10.427482604980469\n      ],\n      [\n        \"▁medium\",\n        -10.427693367004395\n      ],\n      [\n        \"▁grade\",\n        -10.42777156829834\n      ],\n      [\n        \"▁Ru\",\n        -10.427800178527832\n      ],\n      [\n        \"cro\",\n        -10.427851676940918\n      ],\n      [\n        \"▁interview\",\n        -10.428311347961426\n      ],\n      [\n        \"23\",\n        -10.428787231445312\n      ],\n      [\n        \"▁mari\",\n        -10.429442405700684\n      ],\n      [\n        \"▁80\",\n        -10.429756164550781\n      ],\n      [\n        \"▁Ga\",\n        -10.430047035217285\n      ],\n      [\n        \"▁90\",\n        -10.431839942932129\n      ],\n      [\n        \"▁anderen\",\n        -10.432605743408203\n      ],\n      [\n        \"▁cultural\",\n        -10.433018684387207\n      ],\n      [\n        \"but\",\n        -10.433144569396973\n      ],\n      [\n        \"rum\",\n        -10.433300018310547\n      ],\n      [\n        \"get\",\n        -10.43338680267334\n      ],\n      [\n        \"▁pop\",\n        -10.433582305908203\n      ],\n      [\n        \"▁Information\",\n        -10.433594703674316\n      ],\n      [\n        \"▁press\",\n        -10.434972763061523\n      ],\n      [\n        \"▁Project\",\n        -10.435359001159668\n      ],\n      [\n        \"▁excited\",\n        -10.435755729675293\n      ],\n      [\n        \"▁Saint\",\n        -10.436088562011719\n      ],\n      [\n        \"▁England\",\n        -10.436192512512207\n      ],\n      [\n        \"▁beauty\",\n        -10.43643856048584\n      ],\n      [\n        \"▁agreement\",\n        -10.436464309692383\n      ],\n      [\n        \"▁Like\",\n        -10.437565803527832\n      ],\n      [\n        \"▁strength\",\n        -10.437664985656738\n      ],\n      [\n        \"▁waiting\",\n        -10.438165664672852\n      ],\n      [\n        \"и\",\n        -10.438270568847656\n      ],\n      [\n        \"Le\",\n        -10.438329696655273\n      ],\n      [\n        \"▁residents\",\n        -10.43835735321045\n      ],\n      [\n        \"▁Ben\",\n        -10.438603401184082\n      ],\n      [\n        \"▁mentioned\",\n        -10.439260482788086\n      ],\n      [\n        \"▁etwas\",\n        -10.43930721282959\n      ],\n      [\n        \"▁rooms\",\n        -10.439347267150879\n      ],\n      [\n        \"▁neue\",\n        -10.439501762390137\n      ],\n      [\n        \"▁Microsoft\",\n        -10.439726829528809\n      ],\n      [\n        \"▁passed\",\n        -10.440205574035645\n      ],\n      [\n        \"▁sea\",\n        -10.440893173217773\n      ],\n      [\n        \"▁electric\",\n        -10.441244125366211\n      ],\n      [\n        \"▁forms\",\n        -10.441384315490723\n      ],\n      [\n        \"▁Central\",\n        -10.441597938537598\n      ],\n      [\n        \"▁Lord\",\n        -10.442625999450684\n      ],\n      [\n        \"ute\",\n        -10.442763328552246\n      ],\n      [\n        \"▁pré\",\n        -10.442790031433105\n      ],\n      [\n        \"▁square\",\n        -10.44308090209961\n      ],\n      [\n        \"itatea\",\n        -10.443451881408691\n      ],\n      [\n        \"▁debt\",\n        -10.443757057189941\n      ],\n      [\n        \"▁street\",\n        -10.443975448608398\n      ],\n      [\n        \"▁pi\",\n        -10.444917678833008\n      ],\n      [\n        \"▁happened\",\n        -10.445326805114746\n      ],\n      [\n        \"▁Tuesday\",\n        -10.445592880249023\n      ],\n      [\n        \"recht\",\n        -10.446094512939453\n      ],\n      [\n        \"▁Eine\",\n        -10.44627857208252\n      ],\n      [\n        \"▁Set\",\n        -10.446768760681152\n      ],\n      [\n        \"▁federal\",\n        -10.4468412399292\n      ],\n      [\n        \"CC\",\n        -10.446905136108398\n      ],\n      [\n        \"....\",\n        -10.446938514709473\n      ],\n      [\n        \"lig\",\n        -10.447463035583496\n      ],\n      [\n        \"▁Christian\",\n        -10.44870662689209\n      ],\n      [\n        \"▁truth\",\n        -10.449213981628418\n      ],\n      [\n        \"▁map\",\n        -10.449728012084961\n      ],\n      [\n        \"▁secret\",\n        -10.449979782104492\n      ],\n      [\n        \"▁Chinese\",\n        -10.450844764709473\n      ],\n      [\n        \"hol\",\n        -10.450895309448242\n      ],\n      [\n        \"▁wrote\",\n        -10.451505661010742\n      ],\n      [\n        \"▁hospital\",\n        -10.451783180236816\n      ],\n      [\n        \"▁Island\",\n        -10.451870918273926\n      ],\n      [\n        \"▁frame\",\n        -10.451946258544922\n      ],\n      [\n        \"▁sources\",\n        -10.452117919921875\n      ],\n      [\n        \"pan\",\n        -10.453242301940918\n      ],\n      [\n        \"▁29\",\n        -10.453530311584473\n      ],\n      [\n        \"▁changing\",\n        -10.454547882080078\n      ],\n      [\n        \"▁Where\",\n        -10.454627990722656\n      ],\n      [\n        \"▁negative\",\n        -10.45471477508545\n      ],\n      [\n        \"▁processes\",\n        -10.45491886138916\n      ],\n      [\n        \"▁leadership\",\n        -10.455029487609863\n      ],\n      [\n        \"▁nos\",\n        -10.455195426940918\n      ],\n      [\n        \"▁info\",\n        -10.455780029296875\n      ],\n      [\n        \"▁Gu\",\n        -10.45595645904541\n      ],\n      [\n        \"▁CO\",\n        -10.45605182647705\n      ],\n      [\n        \"▁reference\",\n        -10.456884384155273\n      ],\n      [\n        \"▁corporate\",\n        -10.457097053527832\n      ],\n      [\n        \"▁characters\",\n        -10.457563400268555\n      ],\n      [\n        \"▁dining\",\n        -10.4577054977417\n      ],\n      [\n        \"▁becoming\",\n        -10.459708213806152\n      ],\n      [\n        \"▁4.\",\n        -10.460311889648438\n      ],\n      [\n        \"▁Science\",\n        -10.460626602172852\n      ],\n      [\n        \"▁Education\",\n        -10.461943626403809\n      ],\n      [\n        \"▁camp\",\n        -10.46207046508789\n      ],\n      [\n        \"fall\",\n        -10.462146759033203\n      ],\n      [\n        \"▁Auch\",\n        -10.462471961975098\n      ],\n      [\n        \"▁topic\",\n        -10.462519645690918\n      ],\n      [\n        \"▁influence\",\n        -10.463460922241211\n      ],\n      [\n        \"▁70\",\n        -10.463892936706543\n      ],\n      [\n        \"▁identify\",\n        -10.464459419250488\n      ],\n      [\n        \"▁(19\",\n        -10.464646339416504\n      ],\n      [\n        \"care\",\n        -10.465216636657715\n      ],\n      [\n        \"ions\",\n        -10.466215133666992\n      ],\n      [\n        \"ray\",\n        -10.4663724899292\n      ],\n      [\n        \"▁Both\",\n        -10.466577529907227\n      ],\n      [\n        \"▁collect\",\n        -10.466997146606445\n      ],\n      [\n        \"▁practices\",\n        -10.467667579650879\n      ],\n      [\n        \"▁fight\",\n        -10.468058586120605\n      ],\n      [\n        \"▁injury\",\n        -10.46873664855957\n      ],\n      [\n        \"▁nici\",\n        -10.46905517578125\n      ],\n      [\n        \"▁depuis\",\n        -10.469563484191895\n      ],\n      [\n        \"▁actions\",\n        -10.469609260559082\n      ],\n      [\n        \"▁Wednesday\",\n        -10.47089958190918\n      ],\n      [\n        \"▁bill\",\n        -10.471086502075195\n      ],\n      [\n        \"▁cheap\",\n        -10.471318244934082\n      ],\n      [\n        \"lui\",\n        -10.471719741821289\n      ],\n      [\n        \"▁awesome\",\n        -10.471731185913086\n      ],\n      [\n        \"tig\",\n        -10.472554206848145\n      ],\n      [\n        \"▁expensive\",\n        -10.472636222839355\n      ],\n      [\n        \"ceea\",\n        -10.472834587097168\n      ],\n      [\n        \"▁exact\",\n        -10.472907066345215\n      ],\n      [\n        \"22\",\n        -10.473462104797363\n      ],\n      [\n        \"▁avant\",\n        -10.47352123260498\n      ],\n      [\n        \"▁fat\",\n        -10.47353744506836\n      ],\n      [\n        \"▁spending\",\n        -10.474353790283203\n      ],\n      [\n        \"▁designs\",\n        -10.47608470916748\n      ],\n      [\n        \"▁damit\",\n        -10.4761323928833\n      ],\n      [\n        \"▁comp\",\n        -10.47619342803955\n      ],\n      [\n        \"▁whatever\",\n        -10.476434707641602\n      ],\n      [\n        \"▁Light\",\n        -10.476442337036133\n      ],\n      [\n        \"▁quarter\",\n        -10.47680377960205\n      ],\n      [\n        \"hand\",\n        -10.477301597595215\n      ],\n      [\n        \"▁connected\",\n        -10.477584838867188\n      ],\n      [\n        \"▁technologies\",\n        -10.47772216796875\n      ],\n      [\n        \"ges\",\n        -10.477808952331543\n      ],\n      [\n        \"▁shower\",\n        -10.478998184204102\n      ],\n      [\n        \"▁500\",\n        -10.47923469543457\n      ],\n      [\n        \"▁Time\",\n        -10.479436874389648\n      ],\n      [\n        \"▁zone\",\n        -10.480525970458984\n      ],\n      [\n        \"▁vote\",\n        -10.480624198913574\n      ],\n      [\n        \"▁andere\",\n        -10.480871200561523\n      ],\n      [\n        \"▁otherwise\",\n        -10.480988502502441\n      ],\n      [\n        \"tur\",\n        -10.481294631958008\n      ],\n      [\n        \"▁happens\",\n        -10.481504440307617\n      ],\n      [\n        \"hin\",\n        -10.481597900390625\n      ],\n      [\n        \"▁volume\",\n        -10.482161521911621\n      ],\n      [\n        \"▁thousands\",\n        -10.482391357421875\n      ],\n      [\n        \"war\",\n        -10.482551574707031\n      ],\n      [\n        \"▁Play\",\n        -10.482900619506836\n      ],\n      [\n        \"▁temperature\",\n        -10.48371410369873\n      ],\n      [\n        \"▁industrial\",\n        -10.483830451965332\n      ],\n      [\n        \"▁fuel\",\n        -10.483915328979492\n      ],\n      [\n        \"100\",\n        -10.48409366607666\n      ],\n      [\n        \"top\",\n        -10.484210014343262\n      ],\n      [\n        \"kin\",\n        -10.484312057495117\n      ],\n      [\n        \"▁efficient\",\n        -10.484414100646973\n      ],\n      [\n        \"teil\",\n        -10.484525680541992\n      ],\n      [\n        \"alt\",\n        -10.484578132629395\n      ],\n      [\n        \"▁monde\",\n        -10.48483657836914\n      ],\n      [\n        \"▁Ra\",\n        -10.484899520874023\n      ],\n      [\n        \"▁bedroom\",\n        -10.485103607177734\n      ],\n      [\n        \"▁showing\",\n        -10.485316276550293\n      ],\n      [\n        \"▁continued\",\n        -10.485490798950195\n      ],\n      [\n        \"▁Plan\",\n        -10.48552131652832\n      ],\n      [\n        \"▁assistance\",\n        -10.486014366149902\n      ],\n      [\n        \"▁discover\",\n        -10.48622989654541\n      ],\n      [\n        \"▁Year\",\n        -10.486238479614258\n      ],\n      [\n        \"▁applied\",\n        -10.486433029174805\n      ],\n      [\n        \"▁audio\",\n        -10.48755931854248\n      ],\n      [\n        \"▁thus\",\n        -10.487645149230957\n      ],\n      [\n        \"▁permet\",\n        -10.48806095123291\n      ],\n      [\n        \"▁fashion\",\n        -10.488532066345215\n      ],\n      [\n        \"cra\",\n        -10.488645553588867\n      ],\n      [\n        \"ious\",\n        -10.488700866699219\n      ],\n      [\n        \"▁focused\",\n        -10.489258766174316\n      ],\n      [\n        \"16\",\n        -10.48930549621582\n      ],\n      [\n        \"▁arm\",\n        -10.489364624023438\n      ],\n      [\n        \"▁Their\",\n        -10.489789962768555\n      ],\n      [\n        \"▁Foundation\",\n        -10.49022388458252\n      ],\n      [\n        \"▁majority\",\n        -10.49022388458252\n      ],\n      [\n        \"▁wind\",\n        -10.490785598754883\n      ],\n      [\n        \"▁bought\",\n        -10.491056442260742\n      ],\n      [\n        \"▁factor\",\n        -10.491918563842773\n      ],\n      [\n        \"▁opened\",\n        -10.49213695526123\n      ],\n      [\n        \"tern\",\n        -10.492374420166016\n      ],\n      [\n        \"▁cars\",\n        -10.492597579956055\n      ],\n      [\n        \"▁exciting\",\n        -10.492691040039062\n      ],\n      [\n        \"▁affordable\",\n        -10.493510246276855\n      ],\n      [\n        \"ches\",\n        -10.493563652038574\n      ],\n      [\n        \"▁panel\",\n        -10.493720054626465\n      ],\n      [\n        \"▁caused\",\n        -10.493793487548828\n      ],\n      [\n        \"▁travail\",\n        -10.493998527526855\n      ],\n      [\n        \"▁roof\",\n        -10.494073867797852\n      ],\n      [\n        \"▁enable\",\n        -10.494202613830566\n      ],\n      [\n        \"▁toward\",\n        -10.494491577148438\n      ],\n      [\n        \"▁Development\",\n        -10.494688987731934\n      ],\n      [\n        \"▁foreign\",\n        -10.495308876037598\n      ],\n      [\n        \"avi\",\n        -10.495320320129395\n      ],\n      [\n        \"long\",\n        -10.495328903198242\n      ],\n      [\n        \"De\",\n        -10.49578857421875\n      ],\n      [\n        \"▁Mon\",\n        -10.49588394165039\n      ],\n      [\n        \"▁Va\",\n        -10.495942115783691\n      ],\n      [\n        \"AP\",\n        -10.496097564697266\n      ],\n      [\n        \"▁asta\",\n        -10.49720573425293\n      ],\n      [\n        \"▁prepare\",\n        -10.497220993041992\n      ],\n      [\n        \"▁German\",\n        -10.497261047363281\n      ],\n      [\n        \"▁Centre\",\n        -10.497325897216797\n      ],\n      [\n        \"ère\",\n        -10.497367858886719\n      ],\n      [\n        \"▁fear\",\n        -10.497537612915039\n      ],\n      [\n        \"▁Este\",\n        -10.497878074645996\n      ],\n      [\n        \"▁Des\",\n        -10.49793529510498\n      ],\n      [\n        \"▁Kon\",\n        -10.499308586120605\n      ],\n      [\n        \"á\",\n        -10.499866485595703\n      ],\n      [\n        \"stand\",\n        -10.500805854797363\n      ],\n      [\n        \"▁Real\",\n        -10.500842094421387\n      ],\n      [\n        \"lichen\",\n        -10.50098705291748\n      ],\n      [\n        \"▁Beach\",\n        -10.501455307006836\n      ],\n      [\n        \"▁expertise\",\n        -10.50185775756836\n      ],\n      [\n        \"▁route\",\n        -10.502445220947266\n      ],\n      [\n        \"▁nation\",\n        -10.502551078796387\n      ],\n      [\n        \"▁snow\",\n        -10.503022193908691\n      ],\n      [\n        \"▁articles\",\n        -10.503127098083496\n      ],\n      [\n        \"▁Wood\",\n        -10.504426956176758\n      ],\n      [\n        \"▁operation\",\n        -10.50494384765625\n      ],\n      [\n        \"▁passion\",\n        -10.505215644836426\n      ],\n      [\n        \"▁cand\",\n        -10.505690574645996\n      ],\n      [\n        \"haus\",\n        -10.505701065063477\n      ],\n      [\n        \"OR\",\n        -10.505711555480957\n      ],\n      [\n        \"▁senior\",\n        -10.506511688232422\n      ],\n      [\n        \"▁becomes\",\n        -10.506546020507812\n      ],\n      [\n        \"▁sounds\",\n        -10.506878852844238\n      ],\n      [\n        \"▁enjoyed\",\n        -10.50704574584961\n      ],\n      [\n        \"▁gegen\",\n        -10.507533073425293\n      ],\n      [\n        \"▁courses\",\n        -10.507919311523438\n      ],\n      [\n        \"▁absolutely\",\n        -10.508257865905762\n      ],\n      [\n        \"tim\",\n        -10.508264541625977\n      ],\n      [\n        \"uff\",\n        -10.508516311645508\n      ],\n      [\n        \"▁moins\",\n        -10.50860595703125\n      ],\n      [\n        \"▁TO\",\n        -10.509060859680176\n      ],\n      [\n        \"▁fabric\",\n        -10.509267807006836\n      ],\n      [\n        \"poli\",\n        -10.509326934814453\n      ],\n      [\n        \"▁Bre\",\n        -10.509761810302734\n      ],\n      [\n        \"▁bo\",\n        -10.509916305541992\n      ],\n      [\n        \"▁Elle\",\n        -10.510469436645508\n      ],\n      [\n        \"bu\",\n        -10.512336730957031\n      ],\n      [\n        \"▁participants\",\n        -10.512401580810547\n      ],\n      [\n        \"stone\",\n        -10.512794494628906\n      ],\n      [\n        \"ties\",\n        -10.51366138458252\n      ],\n      [\n        \"▁listen\",\n        -10.513700485229492\n      ],\n      [\n        \"▁Spiel\",\n        -10.513752937316895\n      ],\n      [\n        \"pot\",\n        -10.513872146606445\n      ],\n      [\n        \"▁selling\",\n        -10.514358520507812\n      ],\n      [\n        \"▁geht\",\n        -10.514680862426758\n      ],\n      [\n        \"▁mini\",\n        -10.515146255493164\n      ],\n      [\n        \"▁trans\",\n        -10.515408515930176\n      ],\n      [\n        \"▁ingredients\",\n        -10.515642166137695\n      ],\n      [\n        \"auf\",\n        -10.515671730041504\n      ],\n      [\n        \"▁orice\",\n        -10.51595401763916\n      ],\n      [\n        \"▁Next\",\n        -10.516300201416016\n      ],\n      [\n        \"▁cream\",\n        -10.516756057739258\n      ],\n      [\n        \"▁edge\",\n        -10.516973495483398\n      ],\n      [\n        \"▁recommended\",\n        -10.517022132873535\n      ],\n      [\n        \"▁Form\",\n        -10.517277717590332\n      ],\n      [\n        \"▁processing\",\n        -10.51746940612793\n      ],\n      [\n        \"vert\",\n        -10.517709732055664\n      ],\n      [\n        \"▁described\",\n        -10.518362998962402\n      ],\n      [\n        \"▁installed\",\n        -10.51884937286377\n      ],\n      [\n        \"▁managed\",\n        -10.518952369689941\n      ],\n      [\n        \"▁electronic\",\n        -10.518966674804688\n      ],\n      [\n        \"▁performed\",\n        -10.519064903259277\n      ],\n      [\n        \"▁raise\",\n        -10.519098281860352\n      ],\n      [\n        \"▁imagine\",\n        -10.519281387329102\n      ],\n      [\n        \"down\",\n        -10.51952838897705\n      ],\n      [\n        \"▁fond\",\n        -10.519978523254395\n      ],\n      [\n        \"▁Inter\",\n        -10.520434379577637\n      ],\n      [\n        \"▁Mc\",\n        -10.520550727844238\n      ],\n      [\n        \"▁Dans\",\n        -10.520679473876953\n      ],\n      [\n        \"istic\",\n        -10.520966529846191\n      ],\n      [\n        \"▁miss\",\n        -10.521052360534668\n      ],\n      [\n        \"sur\",\n        -10.521062850952148\n      ],\n      [\n        \"▁Col\",\n        -10.521879196166992\n      ],\n      [\n        \"cut\",\n        -10.522021293640137\n      ],\n      [\n        \"▁dupa\",\n        -10.522160530090332\n      ],\n      [\n        \"▁Twitter\",\n        -10.522604942321777\n      ],\n      [\n        \"▁bowl\",\n        -10.523721694946289\n      ],\n      [\n        \"▁remains\",\n        -10.5237455368042\n      ],\n      [\n        \"▁Jan\",\n        -10.524046897888184\n      ],\n      [\n        \"▁smooth\",\n        -10.524162292480469\n      ],\n      [\n        \"▁fees\",\n        -10.524415969848633\n      ],\n      [\n        \"▁aid\",\n        -10.524494171142578\n      ],\n      [\n        \"▁presence\",\n        -10.524827003479004\n      ],\n      [\n        \"▁Android\",\n        -10.52499771118164\n      ],\n      [\n        \"▁decisions\",\n        -10.52539348602295\n      ],\n      [\n        \"▁names\",\n        -10.5254487991333\n      ],\n      [\n        \"▁Music\",\n        -10.525546073913574\n      ],\n      [\n        \"▁innovative\",\n        -10.525578498840332\n      ],\n      [\n        \"▁Tom\",\n        -10.525997161865234\n      ],\n      [\n        \"▁spread\",\n        -10.526165962219238\n      ],\n      [\n        \"▁lovely\",\n        -10.526222229003906\n      ],\n      [\n        \"▁daughter\",\n        -10.526397705078125\n      ],\n      [\n        \"US\",\n        -10.527050971984863\n      ],\n      [\n        \"▁facility\",\n        -10.52710247039795\n      ],\n      [\n        \"▁peace\",\n        -10.527105331420898\n      ],\n      [\n        \"▁department\",\n        -10.527277946472168\n      ],\n      [\n        \"▁weiter\",\n        -10.527591705322266\n      ],\n      [\n        \"▁Sun\",\n        -10.527756690979004\n      ],\n      [\n        \"▁fund\",\n        -10.527772903442383\n      ],\n      [\n        \"▁2018.\",\n        -10.52792739868164\n      ],\n      [\n        \"▁discussion\",\n        -10.528186798095703\n      ],\n      [\n        \"75\",\n        -10.528799057006836\n      ],\n      [\n        \"EC\",\n        -10.529126167297363\n      ],\n      [\n        \"▁lunch\",\n        -10.529144287109375\n      ],\n      [\n        \"▁videos\",\n        -10.52927017211914\n      ],\n      [\n        \"05\",\n        -10.531253814697266\n      ],\n      [\n        \"ige\",\n        -10.531266212463379\n      ],\n      [\n        \"▁parking\",\n        -10.531564712524414\n      ],\n      [\n        \"▁relationships\",\n        -10.531732559204102\n      ],\n      [\n        \"▁George\",\n        -10.532986640930176\n      ],\n      [\n        \"▁teachers\",\n        -10.53299617767334\n      ],\n      [\n        \"room\",\n        -10.533458709716797\n      ],\n      [\n        \"▁Tra\",\n        -10.533605575561523\n      ],\n      [\n        \"▁Sam\",\n        -10.533651351928711\n      ],\n      [\n        \"▁properly\",\n        -10.535590171813965\n      ],\n      [\n        \"▁Book\",\n        -10.535629272460938\n      ],\n      [\n        \"▁CA\",\n        -10.536957740783691\n      ],\n      [\n        \"▁calls\",\n        -10.53756046295166\n      ],\n      [\n        \"▁stat\",\n        -10.538175582885742\n      ],\n      [\n        \"ux\",\n        -10.538220405578613\n      ],\n      [\n        \"▁soit\",\n        -10.538439750671387\n      ],\n      [\n        \"▁Community\",\n        -10.538684844970703\n      ],\n      [\n        \"▁Jahren\",\n        -10.538714408874512\n      ],\n      [\n        \"▁increasing\",\n        -10.539575576782227\n      ],\n      [\n        \"▁civil\",\n        -10.540184020996094\n      ],\n      [\n        \"app\",\n        -10.540573120117188\n      ],\n      [\n        \"▁35\",\n        -10.540589332580566\n      ],\n      [\n        \"▁rise\",\n        -10.540600776672363\n      ],\n      [\n        \"▁dabei\",\n        -10.540989875793457\n      ],\n      [\n        \"▁studio\",\n        -10.541803359985352\n      ],\n      [\n        \"▁policies\",\n        -10.542054176330566\n      ],\n      [\n        \"▁agent\",\n        -10.542055130004883\n      ],\n      [\n        \"▁Before\",\n        -10.542601585388184\n      ],\n      [\n        \"▁Cal\",\n        -10.543017387390137\n      ],\n      [\n        \"▁2005\",\n        -10.543404579162598\n      ],\n      [\n        \"▁sample\",\n        -10.543777465820312\n      ],\n      [\n        \"▁manner\",\n        -10.545186996459961\n      ],\n      [\n        \"wing\",\n        -10.54521369934082\n      ],\n      [\n        \"stra\",\n        -10.545552253723145\n      ],\n      [\n        \"▁fel\",\n        -10.545793533325195\n      ],\n      [\n        \"▁Show\",\n        -10.545952796936035\n      ],\n      [\n        \"▁scene\",\n        -10.54656982421875\n      ],\n      [\n        \"mic\",\n        -10.546764373779297\n      ],\n      [\n        \"nom\",\n        -10.546995162963867\n      ],\n      [\n        \"▁typically\",\n        -10.547088623046875\n      ],\n      [\n        \"▁pair\",\n        -10.547104835510254\n      ],\n      [\n        \"▁detailed\",\n        -10.547394752502441\n      ],\n      [\n        \"▁Work\",\n        -10.547422409057617\n      ],\n      [\n        \"▁cities\",\n        -10.547451972961426\n      ],\n      [\n        \"▁Rock\",\n        -10.54749584197998\n      ],\n      [\n        \"▁Gar\",\n        -10.547906875610352\n      ],\n      [\n        \"▁serving\",\n        -10.548352241516113\n      ],\n      [\n        \"▁machen\",\n        -10.548521995544434\n      ],\n      [\n        \"▁trees\",\n        -10.54888916015625\n      ],\n      [\n        \"▁accident\",\n        -10.549199104309082\n      ],\n      [\n        \"▁cloud\",\n        -10.54920482635498\n      ],\n      [\n        \"▁animals\",\n        -10.549297332763672\n      ],\n      [\n        \"▁Den\",\n        -10.549897193908691\n      ],\n      [\n        \"▁Wa\",\n        -10.54990291595459\n      ],\n      [\n        \"▁suggest\",\n        -10.550220489501953\n      ],\n      [\n        \"putting\",\n        -10.550407409667969\n      ],\n      [\n        \"▁suite\",\n        -10.550434112548828\n      ],\n      [\n        \"▁clearly\",\n        -10.550849914550781\n      ],\n      [\n        \"▁net\",\n        -10.551287651062012\n      ],\n      [\n        \"▁funding\",\n        -10.551506996154785\n      ],\n      [\n        \"▁salt\",\n        -10.551935195922852\n      ],\n      [\n        \"▁Men\",\n        -10.552119255065918\n      ],\n      [\n        \"ped\",\n        -10.552419662475586\n      ],\n      [\n        \"▁Food\",\n        -10.553142547607422\n      ],\n      [\n        \"▁leaving\",\n        -10.553544998168945\n      ],\n      [\n        \"▁Government\",\n        -10.554243087768555\n      ],\n      [\n        \"ick\",\n        -10.554381370544434\n      ],\n      [\n        \"▁seat\",\n        -10.555121421813965\n      ],\n      [\n        \"▁Los\",\n        -10.555183410644531\n      ],\n      [\n        \"▁teacher\",\n        -10.555587768554688\n      ],\n      [\n        \"▁iPhone\",\n        -10.555693626403809\n      ],\n      [\n        \"▁300\",\n        -10.556120872497559\n      ],\n      [\n        \"▁commitment\",\n        -10.556180000305176\n      ],\n      [\n        \"▁aspects\",\n        -10.556498527526855\n      ],\n      [\n        \"▁previously\",\n        -10.55711555480957\n      ],\n      [\n        \"▁cent\",\n        -10.5572509765625\n      ],\n      [\n        \"▁Vo\",\n        -10.557341575622559\n      ],\n      [\n        \"▁artists\",\n        -10.557963371276855\n      ],\n      [\n        \"▁runs\",\n        -10.558130264282227\n      ],\n      [\n        \">\",\n        -10.558155059814453\n      ],\n      [\n        \"▁Gi\",\n        -10.558273315429688\n      ],\n      [\n        \"▁mar\",\n        -10.5585355758667\n      ],\n      [\n        \"!!!\",\n        -10.558544158935547\n      ],\n      [\n        \"▁Media\",\n        -10.558943748474121\n      ],\n      [\n        \"▁feedback\",\n        -10.559109687805176\n      ],\n      [\n        \"▁resolution\",\n        -10.559117317199707\n      ],\n      [\n        \"IN\",\n        -10.55915641784668\n      ],\n      [\n        \"▁wurden\",\n        -10.55952262878418\n      ],\n      [\n        \"▁busy\",\n        -10.559832572937012\n      ],\n      [\n        \"▁adult\",\n        -10.5600004196167\n      ],\n      [\n        \"29\",\n        -10.560487747192383\n      ],\n      [\n        \"elles\",\n        -10.561375617980957\n      ],\n      [\n        \"▁closed\",\n        -10.561762809753418\n      ],\n      [\n        \"▁trouble\",\n        -10.561767578125\n      ],\n      [\n        \"▁rent\",\n        -10.561984062194824\n      ],\n      [\n        \"lot\",\n        -10.56224536895752\n      ],\n      [\n        \"▁importance\",\n        -10.562314987182617\n      ],\n      [\n        \"▁units\",\n        -10.56257438659668\n      ],\n      [\n        \"Pro\",\n        -10.562713623046875\n      ],\n      [\n        \"▁provider\",\n        -10.563005447387695\n      ],\n      [\n        \"▁visual\",\n        -10.563288688659668\n      ],\n      [\n        \"IT\",\n        -10.563385009765625\n      ],\n      [\n        \"▁diet\",\n        -10.563733100891113\n      ],\n      [\n        \"▁appearance\",\n        -10.563932418823242\n      ],\n      [\n        \"pin\",\n        -10.564576148986816\n      ],\n      [\n        \"▁Din\",\n        -10.564760208129883\n      ],\n      [\n        \"▁eating\",\n        -10.565516471862793\n      ],\n      [\n        \"Fi\",\n        -10.565762519836426\n      ],\n      [\n        \"ball\",\n        -10.565765380859375\n      ],\n      [\n        \"är\",\n        -10.565861701965332\n      ],\n      [\n        \"ney\",\n        -10.565878868103027\n      ],\n      [\n        \"▁records\",\n        -10.566070556640625\n      ],\n      [\n        \"▁Fi\",\n        -10.566180229187012\n      ],\n      [\n        \"▁faut\",\n        -10.566329002380371\n      ],\n      [\n        \"▁CD\",\n        -10.566803932189941\n      ],\n      [\n        \"ign\",\n        -10.566930770874023\n      ],\n      [\n        \"▁vă\",\n        -10.566996574401855\n      ],\n      [\n        \"▁agency\",\n        -10.567153930664062\n      ],\n      [\n        \"ierung\",\n        -10.567323684692383\n      ],\n      [\n        \"▁Back\",\n        -10.567361831665039\n      ],\n      [\n        \"▁windows\",\n        -10.567545890808105\n      ],\n      [\n        \"▁pull\",\n        -10.567888259887695\n      ],\n      [\n        \"ash\",\n        -10.567959785461426\n      ],\n      [\n        \"▁profit\",\n        -10.568593978881836\n      ],\n      [\n        \"▁brings\",\n        -10.568605422973633\n      ],\n      [\n        \"▁Committee\",\n        -10.569122314453125\n      ],\n      [\n        \"▁girl\",\n        -10.569174766540527\n      ],\n      [\n        \"▁vehicles\",\n        -10.569372177124023\n      ],\n      [\n        \"▁Hier\",\n        -10.569567680358887\n      ],\n      [\n        \"ES\",\n        -10.569639205932617\n      ],\n      [\n        \"până\",\n        -10.569880485534668\n      ],\n      [\n        \"▁Kunden\",\n        -10.570380210876465\n      ],\n      [\n        \"pen\",\n        -10.570462226867676\n      ],\n      [\n        \"▁explain\",\n        -10.570505142211914\n      ],\n      [\n        \"▁cadru\",\n        -10.570760726928711\n      ],\n      [\n        \"▁attack\",\n        -10.571100234985352\n      ],\n      [\n        \"▁markets\",\n        -10.571115493774414\n      ],\n      [\n        \"▁claims\",\n        -10.571340560913086\n      ],\n      [\n        \"▁walking\",\n        -10.571385383605957\n      ],\n      [\n        \"▁pouv\",\n        -10.571528434753418\n      ],\n      [\n        \"low\",\n        -10.571642875671387\n      ],\n      [\n        \"▁showed\",\n        -10.572114944458008\n      ],\n      [\n        \"▁principal\",\n        -10.57211971282959\n      ],\n      [\n        \"▁lucru\",\n        -10.572144508361816\n      ],\n      [\n        \"▁precum\",\n        -10.572712898254395\n      ],\n      [\n        \"TA\",\n        -10.573094367980957\n      ],\n      [\n        \"▁partners\",\n        -10.573104858398438\n      ],\n      [\n        \"▁exist\",\n        -10.573136329650879\n      ],\n      [\n        \"▁internal\",\n        -10.57334041595459\n      ],\n      [\n        \"hen\",\n        -10.573945045471191\n      ],\n      [\n        \"▁Master\",\n        -10.573966979980469\n      ],\n      [\n        \"unless\",\n        -10.574013710021973\n      ],\n      [\n        \"▁doubt\",\n        -10.574721336364746\n      ],\n      [\n        \"$\",\n        -10.574785232543945\n      ],\n      [\n        \"▁Long\",\n        -10.574888229370117\n      ],\n      [\n        \"▁leaves\",\n        -10.574907302856445\n      ],\n      [\n        \"allowing\",\n        -10.575063705444336\n      ],\n      [\n        \"pol\",\n        -10.575272560119629\n      ],\n      [\n        \"▁Up\",\n        -10.575491905212402\n      ],\n      [\n        \"▁Contact\",\n        -10.576093673706055\n      ],\n      [\n        \"▁practical\",\n        -10.57708740234375\n      ],\n      [\n        \"▁suit\",\n        -10.57758903503418\n      ],\n      [\n        \"▁Site\",\n        -10.577656745910645\n      ],\n      [\n        \"▁formation\",\n        -10.57768726348877\n      ],\n      [\n        \"▁signal\",\n        -10.578215599060059\n      ],\n      [\n        \"▁approximately\",\n        -10.578414916992188\n      ],\n      [\n        \"▁ourselves\",\n        -10.578497886657715\n      ],\n      [\n        \"▁colour\",\n        -10.578519821166992\n      ],\n      [\n        \"▁species\",\n        -10.578530311584473\n      ],\n      [\n        \"▁advance\",\n        -10.578753471374512\n      ],\n      [\n        \"▁PM\",\n        -10.57891845703125\n      ],\n      [\n        \"ans\",\n        -10.579121589660645\n      ],\n      [\n        \"▁locations\",\n        -10.579397201538086\n      ],\n      [\n        \"vous\",\n        -10.579601287841797\n      ],\n      [\n        \"▁updated\",\n        -10.579636573791504\n      ],\n      [\n        \"▁faith\",\n        -10.579673767089844\n      ],\n      [\n        \"mus\",\n        -10.579740524291992\n      ],\n      [\n        \"▁stores\",\n        -10.579863548278809\n      ],\n      [\n        \"heim\",\n        -10.580127716064453\n      ],\n      [\n        \"▁suitable\",\n        -10.580558776855469\n      ],\n      [\n        \"▁continues\",\n        -10.580703735351562\n      ],\n      [\n        \"▁fac\",\n        -10.581133842468262\n      ],\n      [\n        \"ever\",\n        -10.581156730651855\n      ],\n      [\n        \"▁Bill\",\n        -10.581195831298828\n      ],\n      [\n        \"▁chose\",\n        -10.58121109008789\n      ],\n      [\n        \"▁inform\",\n        -10.581228256225586\n      ],\n      [\n        \"▁environmental\",\n        -10.581427574157715\n      ],\n      [\n        \"▁responsibility\",\n        -10.58188533782959\n      ],\n      [\n        \"99\",\n        -10.582542419433594\n      ],\n      [\n        \"▁competitive\",\n        -10.583723068237305\n      ],\n      [\n        \"▁strategies\",\n        -10.583903312683105\n      ],\n      [\n        \"▁toujours\",\n        -10.584270477294922\n      ],\n      [\n        \"tive\",\n        -10.58430290222168\n      ],\n      [\n        \"▁automatically\",\n        -10.585600852966309\n      ],\n      [\n        \"▁dress\",\n        -10.585609436035156\n      ],\n      [\n        \"▁Minister\",\n        -10.585624694824219\n      ],\n      [\n        \"har\",\n        -10.586076736450195\n      ],\n      [\n        \"▁Start\",\n        -10.586249351501465\n      ],\n      [\n        \"▁=\",\n        -10.586563110351562\n      ],\n      [\n        \"▁pattern\",\n        -10.58659553527832\n      ],\n      [\n        \"tier\",\n        -10.58676528930664\n      ],\n      [\n        \"▁pays\",\n        -10.587034225463867\n      ],\n      [\n        \"▁profile\",\n        -10.58725357055664\n      ],\n      [\n        \"▁raised\",\n        -10.587263107299805\n      ],\n      [\n        \"ange\",\n        -10.587288856506348\n      ],\n      [\n        \"▁drink\",\n        -10.587762832641602\n      ],\n      [\n        \"▁element\",\n        -10.588042259216309\n      ],\n      [\n        \"▁landscape\",\n        -10.58875560760498\n      ],\n      [\n        \"▁Tag\",\n        -10.589073181152344\n      ],\n      [\n        \"▁cheese\",\n        -10.589590072631836\n      ],\n      [\n        \"ific\",\n        -10.590009689331055\n      ],\n      [\n        \"▁Stadt\",\n        -10.590181350708008\n      ],\n      [\n        \"39\",\n        -10.591398239135742\n      ],\n      [\n        \"▁launch\",\n        -10.592113494873047\n      ],\n      [\n        \"▁wouldn\",\n        -10.592150688171387\n      ],\n      [\n        \"AS\",\n        -10.592202186584473\n      ],\n      [\n        \"▁push\",\n        -10.593059539794922\n      ],\n      [\n        \"▁mill\",\n        -10.593452453613281\n      ],\n      [\n        \"▁mass\",\n        -10.593647003173828\n      ],\n      [\n        \"▁category\",\n        -10.593790054321289\n      ],\n      [\n        \"sondern\",\n        -10.594050407409668\n      ],\n      [\n        \"col\",\n        -10.594111442565918\n      ],\n      [\n        \"▁climate\",\n        -10.594313621520996\n      ],\n      [\n        \"lier\",\n        -10.594437599182129\n      ],\n      [\n        \"▁slightly\",\n        -10.595514297485352\n      ],\n      [\n        \"95\",\n        -10.596519470214844\n      ],\n      [\n        \"ace\",\n        -10.596612930297852\n      ],\n      [\n        \"▁domain\",\n        -10.597633361816406\n      ],\n      [\n        \"kan\",\n        -10.598306655883789\n      ],\n      [\n        \"▁feed\",\n        -10.598485946655273\n      ],\n      [\n        \"▁Live\",\n        -10.598837852478027\n      ],\n      [\n        \"▁Mais\",\n        -10.599113464355469\n      ],\n      [\n        \"▁après\",\n        -10.599365234375\n      ],\n      [\n        \"▁village\",\n        -10.59941577911377\n      ],\n      [\n        \"▁hatte\",\n        -10.59968090057373\n      ],\n      [\n        \"▁joined\",\n        -10.599881172180176\n      ],\n      [\n        \"▁Museum\",\n        -10.600311279296875\n      ],\n      [\n        \"head\",\n        -10.600855827331543\n      ],\n      [\n        \"▁draw\",\n        -10.6009521484375\n      ],\n      [\n        \"▁concerns\",\n        -10.600966453552246\n      ],\n      [\n        \"ER\",\n        -10.601505279541016\n      ],\n      [\n        \"▁technique\",\n        -10.601648330688477\n      ],\n      [\n        \"▁Bio\",\n        -10.601861000061035\n      ],\n      [\n        \"▁Sea\",\n        -10.601881980895996\n      ],\n      [\n        \"▁@\",\n        -10.601927757263184\n      ],\n      [\n        \"wer\",\n        -10.6021146774292\n      ],\n      [\n        \"▁battery\",\n        -10.602462768554688\n      ],\n      [\n        \"▁mostly\",\n        -10.60267448425293\n      ],\n      [\n        \"▁familiar\",\n        -10.602680206298828\n      ],\n      [\n        \"▁Sub\",\n        -10.602689743041992\n      ],\n      [\n        \"▁delicious\",\n        -10.603222846984863\n      ],\n      [\n        \"doch\",\n        -10.60326099395752\n      ],\n      [\n        \"60\",\n        -10.603395462036133\n      ],\n      [\n        \"▁carte\",\n        -10.603611946105957\n      ],\n      [\n        \"▁avut\",\n        -10.604146957397461\n      ],\n      [\n        \"▁premium\",\n        -10.60460376739502\n      ],\n      [\n        \"▁attempt\",\n        -10.604704856872559\n      ],\n      [\n        \"▁Über\",\n        -10.60473346710205\n      ],\n      [\n        \"▁combined\",\n        -10.604935646057129\n      ],\n      [\n        \"lement\",\n        -10.604947090148926\n      ],\n      [\n        \"▁voi\",\n        -10.605031967163086\n      ],\n      [\n        \"▁wonder\",\n        -10.605376243591309\n      ],\n      [\n        \"▁failure\",\n        -10.606106758117676\n      ],\n      [\n        \"which\",\n        -10.606147766113281\n      ],\n      [\n        \"esti\",\n        -10.606316566467285\n      ],\n      [\n        \"31\",\n        -10.606547355651855\n      ],\n      [\n        \"▁sta\",\n        -10.606734275817871\n      ],\n      [\n        \"▁transform\",\n        -10.60673999786377\n      ],\n      [\n        \"▁license\",\n        -10.606743812561035\n      ],\n      [\n        \"▁depending\",\n        -10.606758117675781\n      ],\n      [\n        \"▁specifically\",\n        -10.606782913208008\n      ],\n      [\n        \"▁OF\",\n        -10.60693645477295\n      ],\n      [\n        \"band\",\n        -10.606959342956543\n      ],\n      [\n        \"▁Sport\",\n        -10.60731315612793\n      ],\n      [\n        \"list\",\n        -10.607434272766113\n      ],\n      [\n        \"▁Tour\",\n        -10.60753059387207\n      ],\n      [\n        \"▁Israel\",\n        -10.607564926147461\n      ],\n      [\n        \"▁filled\",\n        -10.607722282409668\n      ],\n      [\n        \"▁manual\",\n        -10.60776138305664\n      ],\n      [\n        \"▁watching\",\n        -10.608621597290039\n      ],\n      [\n        \"▁rule\",\n        -10.608877182006836\n      ],\n      [\n        \"mat\",\n        -10.60901927947998\n      ],\n      [\n        \"▁notes\",\n        -10.609585762023926\n      ],\n      [\n        \"▁Oh\",\n        -10.60960578918457\n      ],\n      [\n        \"▁bereits\",\n        -10.609634399414062\n      ],\n      [\n        \"▁foundation\",\n        -10.609916687011719\n      ],\n      [\n        \"▁vital\",\n        -10.610146522521973\n      ],\n      [\n        \"▁lassen\",\n        -10.610747337341309\n      ],\n      [\n        \"▁cât\",\n        -10.611162185668945\n      ],\n      [\n        \"▁shipping\",\n        -10.611433029174805\n      ],\n      [\n        \"▁registered\",\n        -10.611513137817383\n      ],\n      [\n        \"▁jour\",\n        -10.612669944763184\n      ],\n      [\n        \"▁island\",\n        -10.61276626586914\n      ],\n      [\n        \"▁sets\",\n        -10.613068580627441\n      ],\n      [\n        \"▁football\",\n        -10.613683700561523\n      ],\n      [\n        \"▁EU\",\n        -10.613860130310059\n      ],\n      [\n        \"▁stone\",\n        -10.614019393920898\n      ],\n      [\n        \"▁Press\",\n        -10.614699363708496\n      ],\n      [\n        \"▁adapt\",\n        -10.615066528320312\n      ],\n      [\n        \"ised\",\n        -10.615425109863281\n      ],\n      [\n        \"▁thoughts\",\n        -10.615434646606445\n      ],\n      [\n        \"▁doors\",\n        -10.615851402282715\n      ],\n      [\n        \"€\",\n        -10.615954399108887\n      ],\n      [\n        \"▁components\",\n        -10.616040229797363\n      ],\n      [\n        \"rig\",\n        -10.616332054138184\n      ],\n      [\n        \"▁generation\",\n        -10.616585731506348\n      ],\n      [\n        \"▁guess\",\n        -10.616700172424316\n      ],\n      [\n        \"cker\",\n        -10.61694049835205\n      ],\n      [\n        \"▁realize\",\n        -10.617207527160645\n      ],\n      [\n        \"▁Roman\",\n        -10.617310523986816\n      ],\n      [\n        \"▁contre\",\n        -10.617693901062012\n      ],\n      [\n        \"▁Out\",\n        -10.617938995361328\n      ],\n      [\n        \"▁IN\",\n        -10.619051933288574\n      ],\n      [\n        \"cip\",\n        -10.619085311889648\n      ],\n      [\n        \"59\",\n        -10.619330406188965\n      ],\n      [\n        \"▁enhance\",\n        -10.619768142700195\n      ],\n      [\n        \"▁battle\",\n        -10.61982250213623\n      ],\n      [\n        \"▁monitor\",\n        -10.619863510131836\n      ],\n      [\n        \"▁Martin\",\n        -10.62045955657959\n      ],\n      [\n        \"▁websites\",\n        -10.620461463928223\n      ],\n      [\n        \"▁DE\",\n        -10.620599746704102\n      ],\n      [\n        \"▁Festival\",\n        -10.620951652526855\n      ],\n      [\n        \"ân\",\n        -10.62131118774414\n      ],\n      [\n        \"▁Place\",\n        -10.621419906616211\n      ],\n      [\n        \"▁rare\",\n        -10.621554374694824\n      ],\n      [\n        \"această\",\n        -10.621726989746094\n      ],\n      [\n        \"▁sollte\",\n        -10.621731758117676\n      ],\n      [\n        \"▁Read\",\n        -10.621816635131836\n      ],\n      [\n        \"ware\",\n        -10.622169494628906\n      ],\n      [\n        \"Those\",\n        -10.622671127319336\n      ],\n      [\n        \"ende\",\n        -10.623543739318848\n      ],\n      [\n        \"▁prix\",\n        -10.623835563659668\n      ],\n      [\n        \"▁roman\",\n        -10.624101638793945\n      ],\n      [\n        \"▁creation\",\n        -10.624224662780762\n      ],\n      [\n        \"▁confidence\",\n        -10.624552726745605\n      ],\n      [\n        \"▁Japan\",\n        -10.624638557434082\n      ],\n      [\n        \"▁rain\",\n        -10.624942779541016\n      ],\n      [\n        \"▁guys\",\n        -10.62518310546875\n      ],\n      [\n        \"▁south\",\n        -10.625236511230469\n      ],\n      [\n        \"▁trading\",\n        -10.625646591186523\n      ],\n      [\n        \"▁€\",\n        -10.626100540161133\n      ],\n      [\n        \"▁Film\",\n        -10.626341819763184\n      ],\n      [\n        \"▁pana\",\n        -10.627065658569336\n      ],\n      [\n        \"▁asemenea\",\n        -10.627066612243652\n      ],\n      [\n        \"36\",\n        -10.627190589904785\n      ],\n      [\n        \"▁instance\",\n        -10.627884864807129\n      ],\n      [\n        \"cou\",\n        -10.629385948181152\n      ],\n      [\n        \"▁nun\",\n        -10.630074501037598\n      ],\n      [\n        \"▁Pass\",\n        -10.630390167236328\n      ],\n      [\n        \"Cette\",\n        -10.630579948425293\n      ],\n      [\n        \"▁Network\",\n        -10.630876541137695\n      ],\n      [\n        \"▁prime\",\n        -10.631010055541992\n      ],\n      [\n        \"▁spiritual\",\n        -10.632098197937012\n      ],\n      [\n        \"▁tough\",\n        -10.633030891418457\n      ],\n      [\n        \"▁AND\",\n        -10.633086204528809\n      ],\n      [\n        \"▁Cat\",\n        -10.633601188659668\n      ],\n      [\n        \"▁boat\",\n        -10.633611679077148\n      ],\n      [\n        \"▁leads\",\n        -10.634864807128906\n      ],\n      [\n        \"▁Germany\",\n        -10.63509750366211\n      ],\n      [\n        \"▁valuable\",\n        -10.635635375976562\n      ],\n      [\n        \"57\",\n        -10.635892868041992\n      ],\n      [\n        \"lect\",\n        -10.636148452758789\n      ],\n      [\n        \"▁distribution\",\n        -10.636445045471191\n      ],\n      [\n        \"dar\",\n        -10.636518478393555\n      ],\n      [\n        \"▁Manager\",\n        -10.637701988220215\n      ],\n      [\n        \"cha\",\n        -10.637725830078125\n      ],\n      [\n        \"▁obtain\",\n        -10.637741088867188\n      ],\n      [\n        \"GB\",\n        -10.637908935546875\n      ],\n      [\n        \"▁unor\",\n        -10.638079643249512\n      ],\n      [\n        \"schaft\",\n        -10.638603210449219\n      ],\n      [\n        \"▁zwischen\",\n        -10.638723373413086\n      ],\n      [\n        \"▁winning\",\n        -10.639172554016113\n      ],\n      [\n        \"▁suis\",\n        -10.639811515808105\n      ],\n      [\n        \"58\",\n        -10.640130996704102\n      ],\n      [\n        \"▁Party\",\n        -10.640372276306152\n      ],\n      [\n        \"▁ceva\",\n        -10.640416145324707\n      ],\n      [\n        \"▁comprehensive\",\n        -10.640684127807617\n      ],\n      [\n        \"▁aceste\",\n        -10.640726089477539\n      ],\n      [\n        \"▁committed\",\n        -10.640726089477539\n      ],\n      [\n        \"▁Hu\",\n        -10.641382217407227\n      ],\n      [\n        \"ţ\",\n        -10.64149284362793\n      ],\n      [\n        \"▁north\",\n        -10.642021179199219\n      ],\n      [\n        \"werk\",\n        -10.642542839050293\n      ],\n      [\n        \"▁interface\",\n        -10.642794609069824\n      ],\n      [\n        \"▁Valley\",\n        -10.64281177520752\n      ],\n      [\n        \"▁anywhere\",\n        -10.64281177520752\n      ],\n      [\n        \"▁Only\",\n        -10.642851829528809\n      ],\n      [\n        \"TE\",\n        -10.643295288085938\n      ],\n      [\n        \"hui\",\n        -10.6436767578125\n      ],\n      [\n        \"bus\",\n        -10.643951416015625\n      ],\n      [\n        \"vis\",\n        -10.6439790725708\n      ],\n      [\n        \"▁Society\",\n        -10.645116806030273\n      ],\n      [\n        \"▁reliable\",\n        -10.64556884765625\n      ],\n      [\n        \"▁quelques\",\n        -10.64563274383545\n      ],\n      [\n        \"tech\",\n        -10.646187782287598\n      ],\n      [\n        \"ual\",\n        -10.646377563476562\n      ],\n      [\n        \"▁educational\",\n        -10.646418571472168\n      ],\n      [\n        \"serv\",\n        -10.646490097045898\n      ],\n      [\n        \"▁opinion\",\n        -10.646628379821777\n      ],\n      [\n        \"▁appears\",\n        -10.646702766418457\n      ],\n      [\n        \"▁count\",\n        -10.646795272827148\n      ],\n      [\n        \"irea\",\n        -10.646981239318848\n      ],\n      [\n        \"ban\",\n        -10.647504806518555\n      ],\n      [\n        \"▁45\",\n        -10.647530555725098\n      ],\n      [\n        \"▁contain\",\n        -10.647661209106445\n      ],\n      [\n        \"ost\",\n        -10.647663116455078\n      ],\n      [\n        \"▁anul\",\n        -10.647706031799316\n      ],\n      [\n        \"rien\",\n        -10.648159980773926\n      ],\n      [\n        \"gra\",\n        -10.648360252380371\n      ],\n      [\n        \"▁counter\",\n        -10.648946762084961\n      ],\n      [\n        \"-3\",\n        -10.650411605834961\n      ],\n      [\n        \"▁resource\",\n        -10.650463104248047\n      ],\n      [\n        \"▁Wo\",\n        -10.6505126953125\n      ],\n      [\n        \"▁posts\",\n        -10.650618553161621\n      ],\n      [\n        \"▁employee\",\n        -10.651320457458496\n      ],\n      [\n        \"rol\",\n        -10.651863098144531\n      ],\n      [\n        \"▁ended\",\n        -10.651969909667969\n      ],\n      [\n        \"met\",\n        -10.653080940246582\n      ],\n      [\n        \"▁meine\",\n        -10.653165817260742\n      ],\n      [\n        \"▁reached\",\n        -10.653368949890137\n      ],\n      [\n        \"gri\",\n        -10.653716087341309\n      ],\n      [\n        \"▁Bra\",\n        -10.65374755859375\n      ],\n      [\n        \"▁conduct\",\n        -10.654294967651367\n      ],\n      [\n        \"▁housing\",\n        -10.654422760009766\n      ],\n      [\n        \"▁tickets\",\n        -10.654792785644531\n      ],\n      [\n        \"▁database\",\n        -10.655674934387207\n      ],\n      [\n        \"IL\",\n        -10.656150817871094\n      ],\n      [\n        \"▁perspective\",\n        -10.656359672546387\n      ],\n      [\n        \"▁Har\",\n        -10.656404495239258\n      ],\n      [\n        \"▁error\",\n        -10.656549453735352\n      ],\n      [\n        \"▁meal\",\n        -10.656569480895996\n      ],\n      [\n        \"▁hearing\",\n        -10.657238006591797\n      ],\n      [\n        \"▁transition\",\n        -10.657302856445312\n      ],\n      [\n        \"▁browser\",\n        -10.657609939575195\n      ],\n      [\n        \"▁supported\",\n        -10.657609939575195\n      ],\n      [\n        \"▁starts\",\n        -10.658814430236816\n      ],\n      [\n        \"țe\",\n        -10.658902168273926\n      ],\n      [\n        \"▁adults\",\n        -10.658905029296875\n      ],\n      [\n        \"▁România\",\n        -10.65917682647705\n      ],\n      [\n        \"dra\",\n        -10.659884452819824\n      ],\n      [\n        \"▁worry\",\n        -10.660222053527832\n      ],\n      [\n        \"▁avoir\",\n        -10.660497665405273\n      ],\n      [\n        \"▁regional\",\n        -10.660507202148438\n      ],\n      [\n        \"▁min\",\n        -10.660722732543945\n      ],\n      [\n        \"▁Does\",\n        -10.660806655883789\n      ],\n      [\n        \"▁Keep\",\n        -10.661200523376465\n      ],\n      [\n        \"rom\",\n        -10.661237716674805\n      ],\n      [\n        \"sco\",\n        -10.661320686340332\n      ],\n      [\n        \"tem\",\n        -10.661898612976074\n      ],\n      [\n        \"▁Old\",\n        -10.661954879760742\n      ],\n      [\n        \"▁Under\",\n        -10.662552833557129\n      ],\n      [\n        \"▁Commission\",\n        -10.662557601928711\n      ],\n      [\n        \"▁Bau\",\n        -10.6632661819458\n      ],\n      [\n        \"▁News\",\n        -10.663358688354492\n      ],\n      [\n        \"▁mois\",\n        -10.663444519042969\n      ],\n      [\n        \"▁respond\",\n        -10.66356372833252\n      ],\n      [\n        \"▁alles\",\n        -10.663878440856934\n      ],\n      [\n        \"▁chair\",\n        -10.664475440979004\n      ],\n      [\n        \"▁ho\",\n        -10.664854049682617\n      ],\n      [\n        \"right\",\n        -10.664908409118652\n      ],\n      [\n        \"▁totally\",\n        -10.665532112121582\n      ],\n      [\n        \"gle\",\n        -10.665534973144531\n      ],\n      [\n        \"▁32\",\n        -10.665604591369629\n      ],\n      [\n        \"66\",\n        -10.665664672851562\n      ],\n      [\n        \"town\",\n        -10.665902137756348\n      ],\n      [\n        \"Ch\",\n        -10.666261672973633\n      ],\n      [\n        \"▁gr\",\n        -10.66629695892334\n      ],\n      [\n        \"▁garage\",\n        -10.666328430175781\n      ],\n      [\n        \"ții\",\n        -10.666495323181152\n      ],\n      [\n        \"▁Union\",\n        -10.667136192321777\n      ],\n      [\n        \"ică\",\n        -10.667343139648438\n      ],\n      [\n        \"▁2,\",\n        -10.668437004089355\n      ],\n      [\n        \"▁reflect\",\n        -10.669163703918457\n      ],\n      [\n        \"▁retail\",\n        -10.669388771057129\n      ],\n      [\n        \"▁unde\",\n        -10.669605255126953\n      ],\n      [\n        \"▁accessible\",\n        -10.670262336730957\n      ],\n      [\n        \"water\",\n        -10.67059326171875\n      ],\n      [\n        \"▁regard\",\n        -10.670710563659668\n      ],\n      [\n        \"▁logo\",\n        -10.671489715576172\n      ],\n      [\n        \"▁inspired\",\n        -10.671518325805664\n      ],\n      [\n        \"▁Wall\",\n        -10.671859741210938\n      ],\n      [\n        \"▁Ste\",\n        -10.672093391418457\n      ],\n      [\n        \"▁asking\",\n        -10.672179222106934\n      ],\n      [\n        \"▁Journal\",\n        -10.673028945922852\n      ],\n      [\n        \"▁Teil\",\n        -10.674042701721191\n      ],\n      [\n        \"▁collaboration\",\n        -10.674185752868652\n      ],\n      [\n        \"▁acid\",\n        -10.674266815185547\n      ],\n      [\n        \"▁Fund\",\n        -10.674382209777832\n      ],\n      [\n        \"▁spirit\",\n        -10.6744384765625\n      ],\n      [\n        \"despite\",\n        -10.674457550048828\n      ],\n      [\n        \"▁delivered\",\n        -10.674821853637695\n      ],\n      [\n        \"▁girls\",\n        -10.675374984741211\n      ],\n      [\n        \"▁Look\",\n        -10.675896644592285\n      ],\n      [\n        \"rant\",\n        -10.675949096679688\n      ],\n      [\n        \"▁District\",\n        -10.676460266113281\n      ],\n      [\n        \"▁rental\",\n        -10.676709175109863\n      ],\n      [\n        \"▁spune\",\n        -10.676733016967773\n      ],\n      [\n        \"els\",\n        -10.677544593811035\n      ],\n      [\n        \"▁permanent\",\n        -10.677659034729004\n      ],\n      [\n        \"▁iron\",\n        -10.677709579467773\n      ],\n      [\n        \"▁Thomas\",\n        -10.677745819091797\n      ],\n      [\n        \"EL\",\n        -10.678071022033691\n      ],\n      [\n        \"▁except\",\n        -10.678074836730957\n      ],\n      [\n        \"▁catch\",\n        -10.678366661071777\n      ],\n      [\n        \"▁providers\",\n        -10.678375244140625\n      ],\n      [\n        \"▁2006\",\n        -10.678435325622559\n      ],\n      [\n        \"▁chat\",\n        -10.679931640625\n      ],\n      [\n        \"▁emergency\",\n        -10.680281639099121\n      ],\n      [\n        \"gre\",\n        -10.68030834197998\n      ],\n      [\n        \"site\",\n        -10.680888175964355\n      ],\n      [\n        \"▁missing\",\n        -10.68089485168457\n      ],\n      [\n        \"abil\",\n        -10.680914878845215\n      ],\n      [\n        \"▁Hill\",\n        -10.68099594116211\n      ],\n      [\n        \"urs\",\n        -10.681312561035156\n      ],\n      [\n        \"▁plusieurs\",\n        -10.681716918945312\n      ],\n      [\n        \"▁birthday\",\n        -10.681726455688477\n      ],\n      [\n        \"DS\",\n        -10.682019233703613\n      ],\n      [\n        \"ersten\",\n        -10.682381629943848\n      ],\n      [\n        \"▁5.\",\n        -10.68252944946289\n      ],\n      [\n        \"▁library\",\n        -10.68333911895752\n      ],\n      [\n        \"▁earth\",\n        -10.683515548706055\n      ],\n      [\n        \"CI\",\n        -10.683645248413086\n      ],\n      [\n        \"▁lighting\",\n        -10.684442520141602\n      ],\n      [\n        \"▁fixed\",\n        -10.684879302978516\n      ],\n      [\n        \"tori\",\n        -10.684891700744629\n      ],\n      [\n        \"▁replace\",\n        -10.684995651245117\n      ],\n      [\n        \"▁administration\",\n        -10.685074806213379\n      ],\n      [\n        \"leurs\",\n        -10.685229301452637\n      ],\n      [\n        \"▁meat\",\n        -10.686142921447754\n      ],\n      [\n        \"▁songs\",\n        -10.686662673950195\n      ],\n      [\n        \"▁confirm\",\n        -10.686866760253906\n      ],\n      [\n        \"▁rapid\",\n        -10.68698787689209\n      ],\n      [\n        \"▁Special\",\n        -10.686995506286621\n      ],\n      [\n        \"▁holding\",\n        -10.687115669250488\n      ],\n      [\n        \"▁honor\",\n        -10.687271118164062\n      ],\n      [\n        \"▁Market\",\n        -10.687409400939941\n      ],\n      [\n        \"La\",\n        -10.687535285949707\n      ],\n      [\n        \"▁measure\",\n        -10.687760353088379\n      ],\n      [\n        \"▁guarantee\",\n        -10.68785572052002\n      ],\n      [\n        \"▁switch\",\n        -10.68813419342041\n      ],\n      [\n        \"▁extensive\",\n        -10.688294410705566\n      ],\n      [\n        \"▁Neu\",\n        -10.688674926757812\n      ],\n      [\n        \"avez\",\n        -10.688901901245117\n      ],\n      [\n        \"▁protein\",\n        -10.688984870910645\n      ],\n      [\n        \"▁infrastructure\",\n        -10.689454078674316\n      ],\n      [\n        \"▁functions\",\n        -10.689494132995605\n      ],\n      [\n        \"▁cont\",\n        -10.689496040344238\n      ],\n      [\n        \"row\",\n        -10.689760208129883\n      ],\n      [\n        \"star\",\n        -10.689773559570312\n      ],\n      [\n        \"▁Port\",\n        -10.690192222595215\n      ],\n      [\n        \"Using\",\n        -10.690336227416992\n      ],\n      [\n        \"▁faster\",\n        -10.690557479858398\n      ],\n      [\n        \"44\",\n        -10.691168785095215\n      ],\n      [\n        \"▁measures\",\n        -10.691615104675293\n      ],\n      [\n        \"▁celor\",\n        -10.69186019897461\n      ],\n      [\n        \"▁exam\",\n        -10.69189739227295\n      ],\n      [\n        \"200\",\n        -10.69202995300293\n      ],\n      [\n        \"î\",\n        -10.692545890808105\n      ],\n      [\n        \"▁conversation\",\n        -10.692832946777344\n      ],\n      [\n        \"▁brands\",\n        -10.692959785461426\n      ],\n      [\n        \"▁Code\",\n        -10.69359016418457\n      ],\n      [\n        \"▁Website\",\n        -10.693748474121094\n      ],\n      [\n        \"OS\",\n        -10.693782806396484\n      ],\n      [\n        \"▁alors\",\n        -10.693822860717773\n      ],\n      [\n        \"▁organ\",\n        -10.694032669067383\n      ],\n      [\n        \"▁removed\",\n        -10.694823265075684\n      ],\n      [\n        \"▁Head\",\n        -10.694905281066895\n      ],\n      [\n        \"▁Cha\",\n        -10.694908142089844\n      ],\n      [\n        \"▁visiting\",\n        -10.694928169250488\n      ],\n      [\n        \"▁wild\",\n        -10.694928169250488\n      ],\n      [\n        \"▁seit\",\n        -10.694962501525879\n      ],\n      [\n        \"49\",\n        -10.695109367370605\n      ],\n      [\n        \"▁organic\",\n        -10.69539737701416\n      ],\n      [\n        \"aţi\",\n        -10.695775032043457\n      ],\n      [\n        \"▁kit\",\n        -10.695947647094727\n      ],\n      [\n        \"68\",\n        -10.695959091186523\n      ],\n      [\n        \"▁flowers\",\n        -10.696124076843262\n      ],\n      [\n        \"▁appreciate\",\n        -10.697006225585938\n      ],\n      [\n        \"▁dead\",\n        -10.697439193725586\n      ],\n      [\n        \"▁Fire\",\n        -10.697539329528809\n      ],\n      [\n        \"▁cela\",\n        -10.697591781616211\n      ],\n      [\n        \"▁Ph\",\n        -10.697633743286133\n      ],\n      [\n        \"▁arrive\",\n        -10.697921752929688\n      ],\n      [\n        \"▁purposes\",\n        -10.698213577270508\n      ],\n      [\n        \"▁qualité\",\n        -10.698226928710938\n      ],\n      [\n        \"▁restaurants\",\n        -10.698478698730469\n      ],\n      [\n        \"▁advertising\",\n        -10.698541641235352\n      ],\n      [\n        \"cur\",\n        -10.69855785369873\n      ],\n      [\n        \"▁ça\",\n        -10.698973655700684\n      ],\n      [\n        \"▁introduced\",\n        -10.699088096618652\n      ],\n      [\n        \"▁returned\",\n        -10.699111938476562\n      ],\n      [\n        \"▁desire\",\n        -10.699511528015137\n      ],\n      [\n        \"▁soul\",\n        -10.699983596801758\n      ],\n      [\n        \"▁Technology\",\n        -10.699994087219238\n      ],\n      [\n        \");\",\n        -10.700163841247559\n      ],\n      [\n        \"▁Royal\",\n        -10.700282096862793\n      ],\n      [\n        \"tant\",\n        -10.70068645477295\n      ],\n      [\n        \"▁possibly\",\n        -10.700702667236328\n      ],\n      [\n        \"▁consumers\",\n        -10.700812339782715\n      ],\n      [\n        \"▁doua\",\n        -10.70097541809082\n      ],\n      [\n        \"ified\",\n        -10.70097827911377\n      ],\n      [\n        \"▁Award\",\n        -10.70114803314209\n      ],\n      [\n        \"toutes\",\n        -10.70130443572998\n      ],\n      [\n        \"▁meant\",\n        -10.701325416564941\n      ],\n      [\n        \"ezi\",\n        -10.701616287231445\n      ],\n      [\n        \"▁plu\",\n        -10.701766014099121\n      ],\n      [\n        \"ţii\",\n        -10.7021484375\n      ],\n      [\n        \"▁talent\",\n        -10.702789306640625\n      ],\n      [\n        \"▁Security\",\n        -10.703309059143066\n      ],\n      [\n        \"arii\",\n        -10.703352928161621\n      ],\n      [\n        \"▁zi\",\n        -10.703455924987793\n      ],\n      [\n        \"▁Shop\",\n        -10.703667640686035\n      ],\n      [\n        \"▁breakfast\",\n        -10.704107284545898\n      ],\n      [\n        \"▁trial\",\n        -10.704485893249512\n      ],\n      [\n        \"ami\",\n        -10.704936981201172\n      ],\n      [\n        \"▁register\",\n        -10.705301284790039\n      ],\n      [\n        \"unserer\",\n        -10.705646514892578\n      ],\n      [\n        \"▁solar\",\n        -10.705697059631348\n      ],\n      [\n        \"▁deals\",\n        -10.70591926574707\n      ],\n      [\n        \"▁Ku\",\n        -10.7059326171875\n      ],\n      [\n        \"To\",\n        -10.706186294555664\n      ],\n      [\n        \"bat\",\n        -10.70680046081543\n      ],\n      [\n        \"MC\",\n        -10.707010269165039\n      ],\n      [\n        \"▁Global\",\n        -10.707018852233887\n      ],\n      [\n        \"у\",\n        -10.707405090332031\n      ],\n      [\n        \"▁nor\",\n        -10.707818984985352\n      ],\n      [\n        \"▁milk\",\n        -10.707868576049805\n      ],\n      [\n        \"▁choices\",\n        -10.708206176757812\n      ],\n      [\n        \"»\",\n        -10.7086763381958\n      ],\n      [\n        \"▁Sur\",\n        -10.708695411682129\n      ],\n      [\n        \"more\",\n        -10.708739280700684\n      ],\n      [\n        \"48\",\n        -10.709024429321289\n      ],\n      [\n        \"67\",\n        -10.709375381469727\n      ],\n      [\n        \"▁replacement\",\n        -10.709942817687988\n      ],\n      [\n        \"34\",\n        -10.710440635681152\n      ],\n      [\n        \"▁chocolate\",\n        -10.710485458374023\n      ],\n      [\n        \"▁Family\",\n        -10.71059513092041\n      ],\n      [\n        \"This\",\n        -10.71122932434082\n      ],\n      [\n        \"▁novel\",\n        -10.711435317993164\n      ],\n      [\n        \"▁Chicago\",\n        -10.711563110351562\n      ],\n      [\n        \"▁participate\",\n        -10.71166706085205\n      ],\n      [\n        \"▁trei\",\n        -10.712727546691895\n      ],\n      [\n        \"▁monthly\",\n        -10.713729858398438\n      ],\n      [\n        \"▁survey\",\n        -10.713977813720703\n      ],\n      [\n        \"▁End\",\n        -10.714285850524902\n      ],\n      [\n        \"▁Medical\",\n        -10.71442699432373\n      ],\n      [\n        \"autres\",\n        -10.714678764343262\n      ],\n      [\n        \"rich\",\n        -10.714698791503906\n      ],\n      [\n        \"▁bike\",\n        -10.714703559875488\n      ],\n      [\n        \"▁eventually\",\n        -10.714717864990234\n      ],\n      [\n        \"▁HD\",\n        -10.714722633361816\n      ],\n      [\n        \"bil\",\n        -10.714744567871094\n      ],\n      [\n        \"cent\",\n        -10.714902877807617\n      ],\n      [\n        \"▁afin\",\n        -10.715676307678223\n      ],\n      [\n        \"▁surgery\",\n        -10.716160774230957\n      ],\n      [\n        \"▁sin\",\n        -10.716455459594727\n      ],\n      [\n        \"▁manufacturing\",\n        -10.716955184936523\n      ],\n      [\n        \"▁consumer\",\n        -10.717245101928711\n      ],\n      [\n        \"system\",\n        -10.717306137084961\n      ],\n      [\n        \"▁object\",\n        -10.717400550842285\n      ],\n      [\n        \"▁Ju\",\n        -10.717422485351562\n      ],\n      [\n        \"ered\",\n        -10.7178373336792\n      ],\n      [\n        \"rac\",\n        -10.718070030212402\n      ],\n      [\n        \"▁clinical\",\n        -10.718664169311523\n      ],\n      [\n        \"▁dollars\",\n        -10.719761848449707\n      ],\n      [\n        \"▁chain\",\n        -10.71994686126709\n      ],\n      [\n        \"▁afternoon\",\n        -10.720196723937988\n      ],\n      [\n        \"▁ligne\",\n        -10.720422744750977\n      ],\n      [\n        \"▁accounts\",\n        -10.721806526184082\n      ],\n      [\n        \"ving\",\n        -10.722037315368652\n      ],\n      [\n        \"▁Australian\",\n        -10.72240924835205\n      ],\n      [\n        \"38\",\n        -10.722542762756348\n      ],\n      [\n        \"▁persoane\",\n        -10.72258472442627\n      ],\n      [\n        \"▁grande\",\n        -10.722668647766113\n      ],\n      [\n        \"▁Report\",\n        -10.723472595214844\n      ],\n      [\n        \"▁revenue\",\n        -10.723649024963379\n      ],\n      [\n        \"▁spre\",\n        -10.723760604858398\n      ],\n      [\n        \"▁cutting\",\n        -10.7239990234375\n      ],\n      [\n        \"▁approved\",\n        -10.724133491516113\n      ],\n      [\n        \"▁glad\",\n        -10.724188804626465\n      ],\n      [\n        \"chaque\",\n        -10.724395751953125\n      ],\n      [\n        \"win\",\n        -10.724435806274414\n      ],\n      [\n        \"▁waren\",\n        -10.724733352661133\n      ],\n      [\n        \"▁launched\",\n        -10.725071907043457\n      ],\n      [\n        \"▁layer\",\n        -10.725645065307617\n      ],\n      [\n        \"▁airport\",\n        -10.725716590881348\n      ],\n      [\n        \"▁effectively\",\n        -10.72572135925293\n      ],\n      [\n        \"▁coach\",\n        -10.725946426391602\n      ],\n      [\n        \"dé\",\n        -10.726130485534668\n      ],\n      [\n        \"LE\",\n        -10.72627067565918\n      ],\n      [\n        \"▁müssen\",\n        -10.726386070251465\n      ],\n      [\n        \"plan\",\n        -10.726641654968262\n      ],\n      [\n        \"dan\",\n        -10.726705551147461\n      ],\n      [\n        \"55\",\n        -10.726786613464355\n      ],\n      [\n        \"bringing\",\n        -10.726895332336426\n      ],\n      [\n        \"▁$2\",\n        -10.726995468139648\n      ],\n      [\n        \"nce\",\n        -10.727181434631348\n      ],\n      [\n        \"▁inspiration\",\n        -10.728177070617676\n      ],\n      [\n        \"You\",\n        -10.728657722473145\n      ],\n      [\n        \"▁soll\",\n        -10.729095458984375\n      ],\n      [\n        \"▁seemed\",\n        -10.729595184326172\n      ],\n      [\n        \"▁flight\",\n        -10.729687690734863\n      ],\n      [\n        \"▁prima\",\n        -10.729883193969727\n      ],\n      [\n        \"▁Welt\",\n        -10.730123519897461\n      ],\n      [\n        \"▁jetzt\",\n        -10.730315208435059\n      ],\n      [\n        \"ky\",\n        -10.730428695678711\n      ],\n      [\n        \"▁Western\",\n        -10.73054027557373\n      ],\n      [\n        \"▁label\",\n        -10.730600357055664\n      ],\n      [\n        \"▁möglich\",\n        -10.73081111907959\n      ],\n      [\n        \"▁input\",\n        -10.730862617492676\n      ],\n      [\n        \"▁laws\",\n        -10.730995178222656\n      ],\n      [\n        \"▁personnes\",\n        -10.731708526611328\n      ],\n      [\n        \"▁paying\",\n        -10.731731414794922\n      ],\n      [\n        \"▁Uhr\",\n        -10.73173713684082\n      ],\n      [\n        \"▁Mary\",\n        -10.731745719909668\n      ],\n      [\n        \"pur\",\n        -10.73190689086914\n      ],\n      [\n        \"▁covers\",\n        -10.732133865356445\n      ],\n      [\n        \"▁throw\",\n        -10.732522964477539\n      ],\n      [\n        \"▁Tor\",\n        -10.733281135559082\n      ],\n      [\n        \"▁bat\",\n        -10.73355484008789\n      ],\n      [\n        \"▁Gr\",\n        -10.73373031616211\n      ],\n      [\n        \"▁farm\",\n        -10.73376178741455\n      ],\n      [\n        \"▁improved\",\n        -10.733843803405762\n      ],\n      [\n        \"▁fără\",\n        -10.734286308288574\n      ],\n      [\n        \"▁theme\",\n        -10.73437213897705\n      ],\n      [\n        \"pens\",\n        -10.734865188598633\n      ],\n      [\n        \"▁Cup\",\n        -10.734975814819336\n      ],\n      [\n        \"▁settings\",\n        -10.735114097595215\n      ],\n      [\n        \"▁hire\",\n        -10.735234260559082\n      ],\n      [\n        \"▁massive\",\n        -10.735248565673828\n      ],\n      [\n        \"▁generate\",\n        -10.735405921936035\n      ],\n      [\n        \"▁earn\",\n        -10.735837936401367\n      ],\n      [\n        \"▁tab\",\n        -10.736431121826172\n      ],\n      [\n        \"For\",\n        -10.736616134643555\n      ],\n      [\n        \"gang\",\n        -10.736891746520996\n      ],\n      [\n        \"▁hin\",\n        -10.73709487915039\n      ],\n      [\n        \"▁roll\",\n        -10.737113952636719\n      ],\n      [\n        \"▁engagement\",\n        -10.737157821655273\n      ],\n      [\n        \"▁signed\",\n        -10.737177848815918\n      ],\n      [\n        \"▁League\",\n        -10.737323760986328\n      ],\n      [\n        \"▁registration\",\n        -10.737931251525879\n      ],\n      [\n        \"▁première\",\n        -10.738763809204102\n      ],\n      [\n        \"isse\",\n        -10.73896598815918\n      ],\n      [\n        \"▁university\",\n        -10.739027976989746\n      ],\n      [\n        \"ell\",\n        -10.739157676696777\n      ],\n      [\n        \"▁nou\",\n        -10.739169120788574\n      ],\n      [\n        \"rog\",\n        -10.739191055297852\n      ],\n      [\n        \"▁sitting\",\n        -10.739206314086914\n      ],\n      [\n        \"▁cazul\",\n        -10.739571571350098\n      ],\n      [\n        \"▁surrounding\",\n        -10.73983383178711\n      ],\n      [\n        \"▁Asia\",\n        -10.740357398986816\n      ],\n      [\n        \"▁bath\",\n        -10.740825653076172\n      ],\n      [\n        \"hal\",\n        -10.740923881530762\n      ],\n      [\n        \"▁plate\",\n        -10.741026878356934\n      ],\n      [\n        \"▁tests\",\n        -10.741151809692383\n      ],\n      [\n        \"▁presentation\",\n        -10.741156578063965\n      ],\n      [\n        \"▁chicken\",\n        -10.741501808166504\n      ],\n      [\n        \"▁Val\",\n        -10.741586685180664\n      ],\n      [\n        \"ably\",\n        -10.74166488647461\n      ],\n      [\n        \"▁magazine\",\n        -10.741697311401367\n      ],\n      [\n        \"▁Maybe\",\n        -10.74187183380127\n      ],\n      [\n        \"▁sauce\",\n        -10.742673873901367\n      ],\n      [\n        \"TC\",\n        -10.742887496948242\n      ],\n      [\n        \"▁exclusive\",\n        -10.74296760559082\n      ],\n      [\n        \"86\",\n        -10.74306869506836\n      ],\n      [\n        \"▁teeth\",\n        -10.743474960327148\n      ],\n      [\n        \"▁regularly\",\n        -10.743524551391602\n      ],\n      [\n        \"sed\",\n        -10.743824005126953\n      ],\n      [\n        \"gro\",\n        -10.744174003601074\n      ],\n      [\n        \"He\",\n        -10.744211196899414\n      ],\n      [\n        \"▁2017.\",\n        -10.744302749633789\n      ],\n      [\n        \"▁template\",\n        -10.74489688873291\n      ],\n      [\n        \"▁gleich\",\n        -10.744938850402832\n      ],\n      [\n        \"bal\",\n        -10.745061874389648\n      ],\n      [\n        \"▁African\",\n        -10.74511432647705\n      ],\n      [\n        \"în\",\n        -10.745231628417969\n      ],\n      [\n        \"▁rep\",\n        -10.74543571472168\n      ],\n      [\n        \"▁beat\",\n        -10.74588394165039\n      ],\n      [\n        \"▁deck\",\n        -10.746064186096191\n      ],\n      [\n        \"▁intended\",\n        -10.746221542358398\n      ],\n      [\n        \"▁para\",\n        -10.746513366699219\n      ],\n      [\n        \"▁IP\",\n        -10.746712684631348\n      ],\n      [\n        \"▁bra\",\n        -10.746881484985352\n      ],\n      [\n        \"▁forces\",\n        -10.746966361999512\n      ],\n      [\n        \"▁routine\",\n        -10.747184753417969\n      ],\n      [\n        \"▁Jahre\",\n        -10.747758865356445\n      ],\n      [\n        \"▁Bad\",\n        -10.74797534942627\n      ],\n      [\n        \"▁drivers\",\n        -10.748074531555176\n      ],\n      [\n        \"▁updates\",\n        -10.748095512390137\n      ],\n      [\n        \"▁elegant\",\n        -10.748279571533203\n      ],\n      [\n        \"▁external\",\n        -10.748444557189941\n      ],\n      [\n        \"▁engineering\",\n        -10.748819351196289\n      ],\n      [\n        \"ender\",\n        -10.749544143676758\n      ],\n      [\n        \"table\",\n        -10.749755859375\n      ],\n      [\n        \"inter\",\n        -10.749878883361816\n      ],\n      [\n        \"▁Romania\",\n        -10.749948501586914\n      ],\n      [\n        \"▁zile\",\n        -10.750468254089355\n      ],\n      [\n        \"▁luxury\",\n        -10.750570297241211\n      ],\n      [\n        \"▁calling\",\n        -10.750750541687012\n      ],\n      [\n        \"▁cooking\",\n        -10.75101375579834\n      ],\n      [\n        \"▁component\",\n        -10.75114631652832\n      ],\n      [\n        \"wan\",\n        -10.75121021270752\n      ],\n      [\n        \"schen\",\n        -10.751212120056152\n      ],\n      [\n        \"▁birth\",\n        -10.751242637634277\n      ],\n      [\n        \"asupra\",\n        -10.751349449157715\n      ],\n      [\n        \"Co\",\n        -10.751471519470215\n      ],\n      [\n        \"▁opt\",\n        -10.75153923034668\n      ],\n      [\n        \"▁discovered\",\n        -10.751860618591309\n      ],\n      [\n        \"▁teach\",\n        -10.752084732055664\n      ],\n      [\n        \"▁Son\",\n        -10.75234317779541\n      ],\n      [\n        \"▁guest\",\n        -10.752384185791016\n      ],\n      [\n        \"▁dogs\",\n        -10.752695083618164\n      ],\n      [\n        \"▁2003\",\n        -10.752745628356934\n      ],\n      [\n        \"▁behavior\",\n        -10.752750396728516\n      ],\n      [\n        \"pé\",\n        -10.7529935836792\n      ],\n      [\n        \"63\",\n        -10.75316333770752\n      ],\n      [\n        \"▁Human\",\n        -10.753702163696289\n      ],\n      [\n        \"▁expression\",\n        -10.754800796508789\n      ],\n      [\n        \"▁nevoie\",\n        -10.754936218261719\n      ],\n      [\n        \"▁recherche\",\n        -10.75528621673584\n      ],\n      [\n        \"ging\",\n        -10.755767822265625\n      ],\n      [\n        \"related\",\n        -10.755948066711426\n      ],\n      [\n        \"▁discount\",\n        -10.756040573120117\n      ],\n      [\n        \"▁Brown\",\n        -10.756054878234863\n      ],\n      [\n        \"▁Such\",\n        -10.756107330322266\n      ],\n      [\n        \"▁Ve\",\n        -10.757149696350098\n      ],\n      [\n        \"▁height\",\n        -10.757265090942383\n      ],\n      [\n        \"clo\",\n        -10.757414817810059\n      ],\n      [\n        \"▁incredible\",\n        -10.757912635803223\n      ],\n      [\n        \"▁bas\",\n        -10.757916450500488\n      ],\n      [\n        \"▁mă\",\n        -10.75798225402832\n      ],\n      [\n        \"▁purchased\",\n        -10.758240699768066\n      ],\n      [\n        \"▁compte\",\n        -10.75831127166748\n      ],\n      [\n        \"▁instructions\",\n        -10.758537292480469\n      ],\n      [\n        \"▁Instead\",\n        -10.75866985321045\n      ],\n      [\n        \"▁output\",\n        -10.758706092834473\n      ],\n      [\n        \"▁mom\",\n        -10.758886337280273\n      ],\n      [\n        \"DR\",\n        -10.759828567504883\n      ],\n      [\n        \"89\",\n        -10.760168075561523\n      ],\n      [\n        \"▁reduced\",\n        -10.760621070861816\n      ],\n      [\n        \"98\",\n        -10.7606840133667\n      ],\n      [\n        \"▁constant\",\n        -10.760879516601562\n      ],\n      [\n        \"▁therapy\",\n        -10.762417793273926\n      ],\n      [\n        \"▁capable\",\n        -10.762757301330566\n      ],\n      [\n        \"mark\",\n        -10.763265609741211\n      ],\n      [\n        \"▁Sometimes\",\n        -10.76332950592041\n      ],\n      [\n        \"▁joy\",\n        -10.763419151306152\n      ],\n      [\n        \"▁perfectly\",\n        -10.763589859008789\n      ],\n      [\n        \"▁painting\",\n        -10.763704299926758\n      ],\n      [\n        \"avait\",\n        -10.763765335083008\n      ],\n      [\n        \"▁Sha\",\n        -10.764384269714355\n      ],\n      [\n        \"▁dat\",\n        -10.764463424682617\n      ],\n      [\n        \"▁produits\",\n        -10.764479637145996\n      ],\n      [\n        \"tric\",\n        -10.76456356048584\n      ],\n      [\n        \"ierte\",\n        -10.765153884887695\n      ],\n      [\n        \"▁Smith\",\n        -10.765836715698242\n      ],\n      [\n        \"▁trebui\",\n        -10.766264915466309\n      ],\n      [\n        \"▁beaucoup\",\n        -10.766630172729492\n      ],\n      [\n        \"▁chosen\",\n        -10.767189025878906\n      ],\n      [\n        \"▁cre\",\n        -10.76732063293457\n      ],\n      [\n        \"▁complet\",\n        -10.767341613769531\n      ],\n      [\n        \"▁Ltd\",\n        -10.767599105834961\n      ],\n      [\n        \"▁recovery\",\n        -10.76781940460205\n      ],\n      [\n        \"▁district\",\n        -10.768423080444336\n      ],\n      [\n        \"78\",\n        -10.768640518188477\n      ],\n      [\n        \"▁Unter\",\n        -10.76872730255127\n      ],\n      [\n        \"▁schnell\",\n        -10.768729209899902\n      ],\n      [\n        \"▁apart\",\n        -10.768943786621094\n      ],\n      [\n        \"▁phase\",\n        -10.76894760131836\n      ],\n      [\n        \"▁seeking\",\n        -10.769091606140137\n      ],\n      [\n        \"▁mark\",\n        -10.769148826599121\n      ],\n      [\n        \"▁pet\",\n        -10.769233703613281\n      ],\n      [\n        \"▁PDF\",\n        -10.769296646118164\n      ],\n      [\n        \"▁efficiency\",\n        -10.769577980041504\n      ],\n      [\n        \"▁buildings\",\n        -10.769611358642578\n      ],\n      [\n        \"69\",\n        -10.769723892211914\n      ],\n      [\n        \"▁sens\",\n        -10.769858360290527\n      ],\n      [\n        \"▁Video\",\n        -10.770115852355957\n      ],\n      [\n        \"▁destination\",\n        -10.770181655883789\n      ],\n      [\n        \"▁female\",\n        -10.770319938659668\n      ],\n      [\n        \"▁supporting\",\n        -10.770674705505371\n      ],\n      [\n        \"▁signs\",\n        -10.77077865600586\n      ],\n      [\n        \"▁appeal\",\n        -10.770784378051758\n      ],\n      [\n        \"76\",\n        -10.77110481262207\n      ],\n      [\n        \"▁favourite\",\n        -10.771612167358398\n      ],\n      [\n        \"ock\",\n        -10.771702766418457\n      ],\n      [\n        \"▁readers\",\n        -10.771757125854492\n      ],\n      [\n        \"▁Did\",\n        -10.771868705749512\n      ],\n      [\n        \"rou\",\n        -10.772045135498047\n      ],\n      [\n        \"PA\",\n        -10.77222728729248\n      ],\n      [\n        \"▁Jean\",\n        -10.772480964660645\n      ],\n      [\n        \"▁Em\",\n        -10.772586822509766\n      ],\n      [\n        \"pass\",\n        -10.77280330657959\n      ],\n      [\n        \"▁Zi\",\n        -10.773090362548828\n      ],\n      [\n        \"▁între\",\n        -10.773261070251465\n      ],\n      [\n        \"▁fly\",\n        -10.773427963256836\n      ],\n      [\n        \"mos\",\n        -10.773666381835938\n      ],\n      [\n        \"▁emotional\",\n        -10.773860931396484\n      ],\n      [\n        \"asse\",\n        -10.774768829345703\n      ],\n      [\n        \"▁sessions\",\n        -10.775086402893066\n      ],\n      [\n        \"▁symptoms\",\n        -10.77564811706543\n      ],\n      [\n        \"▁died\",\n        -10.776217460632324\n      ],\n      [\n        \"▁seconds\",\n        -10.776628494262695\n      ],\n      [\n        \"▁procedure\",\n        -10.777206420898438\n      ],\n      [\n        \"▁express\",\n        -10.777420997619629\n      ],\n      [\n        \"▁două\",\n        -10.777885437011719\n      ],\n      [\n        \"▁valid\",\n        -10.778393745422363\n      ],\n      [\n        \"▁euro\",\n        -10.7788667678833\n      ],\n      [\n        \"▁interests\",\n        -10.779032707214355\n      ],\n      [\n        \"Having\",\n        -10.779237747192383\n      ],\n      [\n        \"▁hundreds\",\n        -10.779669761657715\n      ],\n      [\n        \"grad\",\n        -10.780023574829102\n      ],\n      [\n        \"▁neuen\",\n        -10.780084609985352\n      ],\n      [\n        \"▁cook\",\n        -10.780552864074707\n      ],\n      [\n        \"▁pur\",\n        -10.780834197998047\n      ],\n      [\n        \"▁charges\",\n        -10.781024932861328\n      ],\n      [\n        \"sche\",\n        -10.78118896484375\n      ],\n      [\n        \"▁smile\",\n        -10.781468391418457\n      ],\n      [\n        \"▁festival\",\n        -10.781611442565918\n      ],\n      [\n        \"cho\",\n        -10.781672477722168\n      ],\n      [\n        \"▁£\",\n        -10.781937599182129\n      ],\n      [\n        \"cht\",\n        -10.78201675415039\n      ],\n      [\n        \"▁macht\",\n        -10.782021522521973\n      ],\n      [\n        \"▁Wasser\",\n        -10.782028198242188\n      ],\n      [\n        \"▁Cap\",\n        -10.78226375579834\n      ],\n      [\n        \"▁Learn\",\n        -10.78274154663086\n      ],\n      [\n        \"▁load\",\n        -10.783162117004395\n      ],\n      [\n        \"▁aici\",\n        -10.783225059509277\n      ],\n      [\n        \"▁Ch\",\n        -10.784143447875977\n      ],\n      [\n        \"▁cycle\",\n        -10.784223556518555\n      ],\n      [\n        \"▁carried\",\n        -10.784337997436523\n      ],\n      [\n        \"▁jusqu\",\n        -10.784517288208008\n      ],\n      [\n        \"stein\",\n        -10.78505802154541\n      ],\n      [\n        \"ski\",\n        -10.78513240814209\n      ],\n      [\n        \"cap\",\n        -10.78579330444336\n      ],\n      [\n        \"▁Bal\",\n        -10.785852432250977\n      ],\n      [\n        \"▁minor\",\n        -10.786053657531738\n      ],\n      [\n        \"77\",\n        -10.786175727844238\n      ],\n      [\n        \"▁considering\",\n        -10.78632640838623\n      ],\n      [\n        \"innen\",\n        -10.78644847869873\n      ],\n      [\n        \"▁greatest\",\n        -10.787055015563965\n      ],\n      [\n        \"▁Training\",\n        -10.787137031555176\n      ],\n      [\n        \"08\",\n        -10.787307739257812\n      ],\n      [\n        \"▁significantly\",\n        -10.787607192993164\n      ],\n      [\n        \"gé\",\n        -10.787728309631348\n      ],\n      [\n        \"▁dumpster\",\n        -10.788351058959961\n      ],\n      [\n        \"▁allem\",\n        -10.788930892944336\n      ],\n      [\n        \"▁bonus\",\n        -10.7889404296875\n      ],\n      [\n        \"▁guy\",\n        -10.789036750793457\n      ],\n      [\n        \"fel\",\n        -10.78904914855957\n      ],\n      [\n        \"▁lifestyle\",\n        -10.789241790771484\n      ],\n      [\n        \"▁Bro\",\n        -10.78961181640625\n      ],\n      [\n        \"▁implement\",\n        -10.789687156677246\n      ],\n      [\n        \"lock\",\n        -10.790046691894531\n      ],\n      [\n        \"▁Earth\",\n        -10.790142059326172\n      ],\n      [\n        \"kar\",\n        -10.790733337402344\n      ],\n      [\n        \"▁invest\",\n        -10.790833473205566\n      ],\n      [\n        \"▁river\",\n        -10.790933609008789\n      ],\n      [\n        \"▁accurate\",\n        -10.791494369506836\n      ],\n      [\n        \"▁mu\",\n        -10.791579246520996\n      ],\n      [\n        \"▁celebrate\",\n        -10.792119979858398\n      ],\n      [\n        \"▁ran\",\n        -10.79256820678711\n      ],\n      [\n        \"▁bigger\",\n        -10.792988777160645\n      ],\n      [\n        \"▁Mer\",\n        -10.793476104736328\n      ],\n      [\n        \"▁millions\",\n        -10.793486595153809\n      ],\n      [\n        \"▁partie\",\n        -10.793563842773438\n      ],\n      [\n        \"▁dazu\",\n        -10.793951988220215\n      ],\n      [\n        \"▁Full\",\n        -10.794130325317383\n      ],\n      [\n        \"gie\",\n        -10.794207572937012\n      ],\n      [\n        \"bot\",\n        -10.794373512268066\n      ],\n      [\n        \"roll\",\n        -10.79472827911377\n      ],\n      [\n        \"▁Women\",\n        -10.795303344726562\n      ],\n      [\n        \"▁compare\",\n        -10.796135902404785\n      ],\n      [\n        \"▁van\",\n        -10.796503067016602\n      ],\n      [\n        \"▁apps\",\n        -10.796521186828613\n      ],\n      [\n        \"PC\",\n        -10.797050476074219\n      ],\n      [\n        \"▁drei\",\n        -10.79736042022705\n      ],\n      [\n        \"▁maison\",\n        -10.797588348388672\n      ],\n      [\n        \"▁knows\",\n        -10.797712326049805\n      ],\n      [\n        \"rid\",\n        -10.797972679138184\n      ],\n      [\n        \"62\",\n        -10.798396110534668\n      ],\n      [\n        \"class\",\n        -10.798508644104004\n      ],\n      [\n        \"▁chez\",\n        -10.798669815063477\n      ],\n      [\n        \"char\",\n        -10.798828125\n      ],\n      [\n        \"88\",\n        -10.798989295959473\n      ],\n      [\n        \"▁cast\",\n        -10.79948902130127\n      ],\n      [\n        \"▁examples\",\n        -10.79973030090332\n      ],\n      [\n        \"▁Therefore\",\n        -10.799823760986328\n      ],\n      [\n        \"▁topics\",\n        -10.799941062927246\n      ],\n      [\n        \"with\",\n        -10.80013656616211\n      ],\n      [\n        \"▁Anti\",\n        -10.800555229187012\n      ],\n      [\n        \"how\",\n        -10.800620079040527\n      ],\n      [\n        \"▁whom\",\n        -10.80094051361084\n      ],\n      [\n        \"▁Deutschland\",\n        -10.801124572753906\n      ],\n      [\n        \"tine\",\n        -10.80113697052002\n      ],\n      [\n        \"▁CEO\",\n        -10.801224708557129\n      ],\n      [\n        \"▁truck\",\n        -10.801350593566895\n      ],\n      [\n        \"▁Which\",\n        -10.8015718460083\n      ],\n      [\n        \"erie\",\n        -10.802017211914062\n      ],\n      [\n        \"fect\",\n        -10.802069664001465\n      ],\n      [\n        \"bou\",\n        -10.8026762008667\n      ],\n      [\n        \"▁(1\",\n        -10.802818298339844\n      ],\n      [\n        \"sum\",\n        -10.802980422973633\n      ],\n      [\n        \"▁bonne\",\n        -10.803068161010742\n      ],\n      [\n        \"▁remaining\",\n        -10.80321216583252\n      ],\n      [\n        \"▁equal\",\n        -10.803543090820312\n      ],\n      [\n        \"▁engage\",\n        -10.803561210632324\n      ],\n      [\n        \"▁RE\",\n        -10.803849220275879\n      ],\n      [\n        \"style\",\n        -10.804182052612305\n      ],\n      [\n        \"▁urma\",\n        -10.804337501525879\n      ],\n      [\n        \"▁Grund\",\n        -10.80496883392334\n      ],\n      [\n        \"ür\",\n        -10.8051176071167\n      ],\n      [\n        \"▁font\",\n        -10.805353164672852\n      ],\n      [\n        \"▁assets\",\n        -10.805916786193848\n      ],\n      [\n        \"AL\",\n        -10.806102752685547\n      ],\n      [\n        \"▁rear\",\n        -10.80635929107666\n      ],\n      [\n        \"▁contemporary\",\n        -10.80646800994873\n      ],\n      [\n        \"▁occur\",\n        -10.8067045211792\n      ],\n      [\n        \"rated\",\n        -10.806941986083984\n      ],\n      [\n        \"▁tight\",\n        -10.807088851928711\n      ],\n      [\n        \"▁machines\",\n        -10.807921409606934\n      ],\n      [\n        \"▁0.\",\n        -10.808456420898438\n      ],\n      [\n        \"▁Aber\",\n        -10.808470726013184\n      ],\n      [\n        \"sol\",\n        -10.808517456054688\n      ],\n      [\n        \"rü\",\n        -10.80858039855957\n      ],\n      [\n        \"▁2007\",\n        -10.809479713439941\n      ],\n      [\n        \"gg\",\n        -10.809488296508789\n      ],\n      [\n        \"▁unul\",\n        -10.809691429138184\n      ],\n      [\n        \"▁était\",\n        -10.809908866882324\n      ],\n      [\n        \"▁capture\",\n        -10.809980392456055\n      ],\n      [\n        \"▁command\",\n        -10.810037612915039\n      ],\n      [\n        \"▁wire\",\n        -10.810425758361816\n      ],\n      [\n        \"▁shift\",\n        -10.810762405395508\n      ],\n      [\n        \"▁bread\",\n        -10.81084156036377\n      ],\n      [\n        \"▁causes\",\n        -10.810937881469727\n      ],\n      [\n        \"PI\",\n        -10.810938835144043\n      ],\n      [\n        \"SC\",\n        -10.811086654663086\n      ],\n      [\n        \"▁lights\",\n        -10.811190605163574\n      ],\n      [\n        \"▁lived\",\n        -10.811293601989746\n      ],\n      [\n        \"mul\",\n        -10.811446189880371\n      ],\n      [\n        \"▁Cur\",\n        -10.811917304992676\n      ],\n      [\n        \"▁Richard\",\n        -10.811973571777344\n      ],\n      [\n        \"37\",\n        -10.812638282775879\n      ],\n      [\n        \"▁cup\",\n        -10.812737464904785\n      ],\n      [\n        \"▁fields\",\n        -10.812983512878418\n      ],\n      [\n        \"▁crusher\",\n        -10.813389778137207\n      ],\n      [\n        \"65\",\n        -10.813774108886719\n      ],\n      [\n        \"avons\",\n        -10.813822746276855\n      ],\n      [\n        \"▁gear\",\n        -10.813835144042969\n      ],\n      [\n        \"▁standing\",\n        -10.813844680786133\n      ],\n      [\n        \"▁thick\",\n        -10.81445026397705\n      ],\n      [\n        \"aff\",\n        -10.815132141113281\n      ],\n      [\n        \"ments\",\n        -10.815434455871582\n      ],\n      [\n        \"▁conflict\",\n        -10.815728187561035\n      ],\n      [\n        \"ität\",\n        -10.815825462341309\n      ],\n      [\n        \"▁worse\",\n        -10.816295623779297\n      ],\n      [\n        \"SE\",\n        -10.816332817077637\n      ],\n      [\n        \"imi\",\n        -10.816459655761719\n      ],\n      [\n        \"▁dating\",\n        -10.817033767700195\n      ],\n      [\n        \"Do\",\n        -10.817073822021484\n      ],\n      [\n        \"▁flexible\",\n        -10.817093849182129\n      ],\n      [\n        \"ologie\",\n        -10.817131996154785\n      ],\n      [\n        \"SU\",\n        -10.817200660705566\n      ],\n      [\n        \"▁contribute\",\n        -10.817306518554688\n      ],\n      [\n        \"▁denn\",\n        -10.817428588867188\n      ],\n      [\n        \"▁appointment\",\n        -10.81746768951416\n      ],\n      [\n        \"▁ticket\",\n        -10.817523002624512\n      ],\n      [\n        \"bed\",\n        -10.817892074584961\n      ],\n      [\n        \"▁2019.\",\n        -10.817936897277832\n      ],\n      [\n        \"▁tasks\",\n        -10.81871223449707\n      ],\n      [\n        \"▁carbon\",\n        -10.818734169006348\n      ],\n      [\n        \"▁situations\",\n        -10.819400787353516\n      ],\n      [\n        \"MA\",\n        -10.819402694702148\n      ],\n      [\n        \"▁portion\",\n        -10.819498062133789\n      ],\n      [\n        \"▁urban\",\n        -10.819585800170898\n      ],\n      [\n        \"▁Canadian\",\n        -10.819805145263672\n      ],\n      [\n        \"▁Bur\",\n        -10.819937705993652\n      ],\n      [\n        \"▁pack\",\n        -10.81995964050293\n      ],\n      [\n        \"▁effet\",\n        -10.819992065429688\n      ],\n      [\n        \"▁Ball\",\n        -10.82008171081543\n      ],\n      [\n        \"▁timpul\",\n        -10.82014274597168\n      ],\n      [\n        \"▁owned\",\n        -10.820211410522461\n      ],\n      [\n        \"▁surprise\",\n        -10.820413589477539\n      ],\n      [\n        \"▁Mu\",\n        -10.820582389831543\n      ],\n      [\n        \"▁decades\",\n        -10.821001052856445\n      ],\n      [\n        \"▁affected\",\n        -10.821728706359863\n      ],\n      [\n        \"▁proven\",\n        -10.821732521057129\n      ],\n      [\n        \"▁Fe\",\n        -10.821990966796875\n      ],\n      [\n        \"zy\",\n        -10.822042465209961\n      ],\n      [\n        \"42\",\n        -10.822175979614258\n      ],\n      [\n        \"▁trend\",\n        -10.8223876953125\n      ],\n      [\n        \"▁autres\",\n        -10.82262897491455\n      ],\n      [\n        \"No\",\n        -10.823028564453125\n      ],\n      [\n        \"▁nine\",\n        -10.823565483093262\n      ],\n      [\n        \"ON\",\n        -10.82376480102539\n      ],\n      [\n        \"NE\",\n        -10.823953628540039\n      ],\n      [\n        \"oli\",\n        -10.824359893798828\n      ],\n      [\n        \"▁Daniel\",\n        -10.824434280395508\n      ],\n      [\n        \"▁spa\",\n        -10.824939727783203\n      ],\n      [\n        \"▁messages\",\n        -10.825084686279297\n      ],\n      [\n        \"PS\",\n        -10.825183868408203\n      ],\n      [\n        \"47\",\n        -10.825703620910645\n      ],\n      [\n        \"▁doch\",\n        -10.826032638549805\n      ],\n      [\n        \"▁improvement\",\n        -10.826187133789062\n      ],\n      [\n        \"▁mountain\",\n        -10.826350212097168\n      ],\n      [\n        \"▁Room\",\n        -10.826451301574707\n      ],\n      [\n        \"▁edition\",\n        -10.826546669006348\n      ],\n      [\n        \"▁musical\",\n        -10.826712608337402\n      ],\n      [\n        \"CP\",\n        -10.827024459838867\n      ],\n      [\n        \"▁Mill\",\n        -10.827027320861816\n      ],\n      [\n        \"▁steht\",\n        -10.827740669250488\n      ],\n      [\n        \"▁determined\",\n        -10.828083038330078\n      ],\n      [\n        \"you\",\n        -10.828392028808594\n      ],\n      [\n        \"weg\",\n        -10.828554153442383\n      ],\n      [\n        \"▁Digital\",\n        -10.828624725341797\n      ],\n      [\n        \"▁filter\",\n        -10.828903198242188\n      ],\n      [\n        \"▁youth\",\n        -10.829047203063965\n      ],\n      [\n        \"▁assessment\",\n        -10.829301834106445\n      ],\n      [\n        \"▁butter\",\n        -10.829370498657227\n      ],\n      [\n        \"▁Watch\",\n        -10.829427719116211\n      ],\n      [\n        \"▁zusammen\",\n        -10.829471588134766\n      ],\n      [\n        \"▁View\",\n        -10.829606056213379\n      ],\n      [\n        \"09\",\n        -10.829649925231934\n      ],\n      [\n        \"▁sole\",\n        -10.829816818237305\n      ],\n      [\n        \".00\",\n        -10.830018997192383\n      ],\n      [\n        \"33\",\n        -10.83015251159668\n      ],\n      [\n        \"▁export\",\n        -10.830229759216309\n      ],\n      [\n        \"ery\",\n        -10.830373764038086\n      ],\n      [\n        \"▁zurück\",\n        -10.830426216125488\n      ],\n      [\n        \"▁walls\",\n        -10.83048152923584\n      ],\n      [\n        \"▁recognize\",\n        -10.8306884765625\n      ],\n      [\n        \"law\",\n        -10.830801963806152\n      ],\n      [\n        \"▁parent\",\n        -10.830863952636719\n      ],\n      [\n        \"ST\",\n        -10.831357955932617\n      ],\n      [\n        \"▁description\",\n        -10.831669807434082\n      ],\n      [\n        \"MS\",\n        -10.831887245178223\n      ],\n      [\n        \"SM\",\n        -10.83189582824707\n      ],\n      [\n        \"▁Finally\",\n        -10.831940650939941\n      ],\n      [\n        \"▁hardware\",\n        -10.831965446472168\n      ],\n      [\n        \"ident\",\n        -10.832464218139648\n      ],\n      [\n        \"▁brown\",\n        -10.832566261291504\n      ],\n      [\n        \"▁kinds\",\n        -10.832950592041016\n      ],\n      [\n        \"▁Arts\",\n        -10.83297061920166\n      ],\n      [\n        \"▁concert\",\n        -10.83341121673584\n      ],\n      [\n        \"▁sec\",\n        -10.83342456817627\n      ],\n      [\n        \"▁represent\",\n        -10.833512306213379\n      ],\n      [\n        \"▁institutions\",\n        -10.833597183227539\n      ],\n      [\n        \"▁fur\",\n        -10.833998680114746\n      ],\n      [\n        \"▁Support\",\n        -10.83403205871582\n      ],\n      [\n        \"87\",\n        -10.834076881408691\n      ],\n      [\n        \"▁ease\",\n        -10.834178924560547\n      ],\n      [\n        \"▁feels\",\n        -10.834218978881836\n      ],\n      [\n        \"▁sheet\",\n        -10.834342002868652\n      ],\n      [\n        \"▁Though\",\n        -10.83437442779541\n      ],\n      [\n        \"▁propose\",\n        -10.834381103515625\n      ],\n      [\n        \"▁personnel\",\n        -10.834409713745117\n      ],\n      [\n        \"bie\",\n        -10.834794044494629\n      ],\n      [\n        \"▁contest\",\n        -10.834836959838867\n      ],\n      [\n        \"▁successfully\",\n        -10.835152626037598\n      ],\n      [\n        \"▁direkt\",\n        -10.835397720336914\n      ],\n      [\n        \"bietet\",\n        -10.835597038269043\n      ],\n      [\n        \"▁submit\",\n        -10.835888862609863\n      ],\n      [\n        \"▁sicher\",\n        -10.835919380187988\n      ],\n      [\n        \"▁Personal\",\n        -10.83607006072998\n      ],\n      [\n        \"94\",\n        -10.836341857910156\n      ],\n      [\n        \"61\",\n        -10.836400985717773\n      ],\n      [\n        \"▁Very\",\n        -10.836540222167969\n      ],\n      [\n        \"bol\",\n        -10.836603164672852\n      ],\n      [\n        \"▁ha\",\n        -10.837089538574219\n      ],\n      [\n        \"▁channel\",\n        -10.8372220993042\n      ],\n      [\n        \"mut\",\n        -10.837289810180664\n      ],\n      [\n        \"▁mouth\",\n        -10.837342262268066\n      ],\n      [\n        \"▁vast\",\n        -10.837395668029785\n      ],\n      [\n        \"▁Ob\",\n        -10.837569236755371\n      ],\n      [\n        \"lit\",\n        -10.83763313293457\n      ],\n      [\n        \"▁poly\",\n        -10.837878227233887\n      ],\n      [\n        \"▁trained\",\n        -10.838102340698242\n      ],\n      [\n        \"▁specialist\",\n        -10.838122367858887\n      ],\n      [\n        \"UL\",\n        -10.83822250366211\n      ],\n      [\n        \"▁seiner\",\n        -10.838336944580078\n      ],\n      [\n        \"SS\",\n        -10.838627815246582\n      ],\n      [\n        \"▁vacation\",\n        -10.838672637939453\n      ],\n      [\n        \"▁resume\",\n        -10.839157104492188\n      ],\n      [\n        \"▁constantly\",\n        -10.839717864990234\n      ],\n      [\n        \"▁treated\",\n        -10.83986759185791\n      ],\n      [\n        \"▁150\",\n        -10.840936660766602\n      ],\n      [\n        \"▁native\",\n        -10.841246604919434\n      ],\n      [\n        \"▁Russian\",\n        -10.841329574584961\n      ],\n      [\n        \"▁patterns\",\n        -10.841371536254883\n      ],\n      [\n        \"▁knowing\",\n        -10.841670989990234\n      ],\n      [\n        \"▁Pan\",\n        -10.841682434082031\n      ],\n      [\n        \"peri\",\n        -10.841848373413086\n      ],\n      [\n        \"aci\",\n        -10.841864585876465\n      ],\n      [\n        \"▁answers\",\n        -10.842114448547363\n      ],\n      [\n        \"▁heute\",\n        -10.842985153198242\n      ],\n      [\n        \"93\",\n        -10.843056678771973\n      ],\n      [\n        \"▁Winter\",\n        -10.844083786010742\n      ],\n      [\n        \"▁yes\",\n        -10.844173431396484\n      ],\n      [\n        \"SP\",\n        -10.844185829162598\n      ],\n      [\n        \"].\",\n        -10.844388008117676\n      ],\n      [\n        \"▁kein\",\n        -10.844862937927246\n      ],\n      [\n        \"▁introduce\",\n        -10.8450927734375\n      ],\n      [\n        \"-4\",\n        -10.84555435180664\n      ],\n      [\n        \"▁shoot\",\n        -10.845762252807617\n      ],\n      [\n        \"AR\",\n        -10.84576416015625\n      ],\n      [\n        \"▁receiving\",\n        -10.845864295959473\n      ],\n      [\n        \"▁intre\",\n        -10.84702205657959\n      ],\n      [\n        \"▁appeared\",\n        -10.84708023071289\n      ],\n      [\n        \"▁brother\",\n        -10.847321510314941\n      ],\n      [\n        \"▁extend\",\n        -10.847765922546387\n      ],\n      [\n        \"▁fara\",\n        -10.848737716674805\n      ],\n      [\n        \"▁kommt\",\n        -10.848876953125\n      ],\n      [\n        \"ali\",\n        -10.848913192749023\n      ],\n      [\n        \"▁numai\",\n        -10.849047660827637\n      ],\n      [\n        \"▁scientific\",\n        -10.84913158416748\n      ],\n      [\n        \"▁virtual\",\n        -10.849145889282227\n      ],\n      [\n        \"▁Ac\",\n        -10.849513053894043\n      ],\n      [\n        \"▁procedures\",\n        -10.849631309509277\n      ],\n      [\n        \"▁silver\",\n        -10.849821090698242\n      ],\n      [\n        \"▁leather\",\n        -10.849979400634766\n      ],\n      [\n        \"DA\",\n        -10.85014820098877\n      ],\n      [\n        \"▁executive\",\n        -10.850263595581055\n      ],\n      [\n        \"▁officials\",\n        -10.850496292114258\n      ],\n      [\n        \"▁agencies\",\n        -10.850503921508789\n      ],\n      [\n        \"▁Software\",\n        -10.850540161132812\n      ],\n      [\n        \"▁cor\",\n        -10.850690841674805\n      ],\n      [\n        \"Con\",\n        -10.850741386413574\n      ],\n      [\n        \"▁log\",\n        -10.851066589355469\n      ],\n      [\n        \"ț\",\n        -10.851147651672363\n      ],\n      [\n        \"02\",\n        -10.851195335388184\n      ],\n      [\n        \"▁7.\",\n        -10.85245132446289\n      ],\n      [\n        \"▁accepted\",\n        -10.852483749389648\n      ],\n      [\n        \"▁Berlin\",\n        -10.852538108825684\n      ],\n      [\n        \"ID\",\n        -10.852582931518555\n      ],\n      [\n        \"cot\",\n        -10.852788925170898\n      ],\n      [\n        \"▁employment\",\n        -10.852799415588379\n      ],\n      [\n        \"run\",\n        -10.853020668029785\n      ],\n      [\n        \"▁identified\",\n        -10.853178977966309\n      ],\n      [\n        \"96\",\n        -10.853887557983398\n      ],\n      [\n        \"▁déjà\",\n        -10.853944778442383\n      ],\n      [\n        \"▁cuisine\",\n        -10.853952407836914\n      ],\n      [\n        \"turi\",\n        -10.854070663452148\n      ],\n      [\n        \"▁Japanese\",\n        -10.854316711425781\n      ],\n      [\n        \"▁golf\",\n        -10.854514122009277\n      ],\n      [\n        \"▁Ki\",\n        -10.854787826538086\n      ],\n      [\n        \"▁carefully\",\n        -10.854863166809082\n      ],\n      [\n        \"▁remote\",\n        -10.854973793029785\n      ],\n      [\n        \"▁2018,\",\n        -10.855148315429688\n      ],\n      [\n        \"▁sus\",\n        -10.855154991149902\n      ],\n      [\n        \"tique\",\n        -10.855293273925781\n      ],\n      [\n        \"▁residential\",\n        -10.855695724487305\n      ],\n      [\n        \"97\",\n        -10.855809211730957\n      ],\n      [\n        \"▁Spring\",\n        -10.855908393859863\n      ],\n      [\n        \"▁Marketing\",\n        -10.856186866760254\n      ],\n      [\n        \"▁Control\",\n        -10.85630989074707\n      ],\n      [\n        \"var\",\n        -10.856344223022461\n      ],\n      [\n        \"▁historical\",\n        -10.8563814163208\n      ],\n      [\n        \"▁freedom\",\n        -10.856423377990723\n      ],\n      [\n        \"sure\",\n        -10.856426239013672\n      ],\n      [\n        \"▁broken\",\n        -10.856796264648438\n      ],\n      [\n        \"▁criminal\",\n        -10.856949806213379\n      ],\n      [\n        \"▁innovation\",\n        -10.857075691223145\n      ],\n      [\n        \"▁Italian\",\n        -10.857192039489746\n      ],\n      [\n        \"sper\",\n        -10.857282638549805\n      ],\n      [\n        \"▁cake\",\n        -10.857653617858887\n      ],\n      [\n        \"▁candidates\",\n        -10.857894897460938\n      ],\n      [\n        \"▁sizes\",\n        -10.858267784118652\n      ],\n      [\n        \"pel\",\n        -10.858366966247559\n      ],\n      [\n        \"▁frequently\",\n        -10.85889720916748\n      ],\n      [\n        \"▁planet\",\n        -10.859138488769531\n      ],\n      [\n        \"▁writer\",\n        -10.859519958496094\n      ],\n      [\n        \"1,\",\n        -10.859569549560547\n      ],\n      [\n        \"uvent\",\n        -10.85959529876709\n      ],\n      [\n        \"▁awareness\",\n        -10.859807968139648\n      ],\n      [\n        \"name\",\n        -10.859954833984375\n      ],\n      [\n        \"▁Children\",\n        -10.859980583190918\n      ],\n      [\n        \"▁relatively\",\n        -10.860311508178711\n      ],\n      [\n        \"▁pu\",\n        -10.860321998596191\n      ],\n      [\n        \"▁quiet\",\n        -10.86038875579834\n      ],\n      [\n        \"▁planned\",\n        -10.860716819763184\n      ],\n      [\n        \"▁election\",\n        -10.861419677734375\n      ],\n      [\n        \"▁6.\",\n        -10.861761093139648\n      ],\n      [\n        \"▁broad\",\n        -10.861772537231445\n      ],\n      [\n        \"▁skill\",\n        -10.861835479736328\n      ],\n      [\n        \"▁reasonable\",\n        -10.862037658691406\n      ],\n      [\n        \"▁Fort\",\n        -10.862283706665039\n      ],\n      [\n        \"▁aceea\",\n        -10.862407684326172\n      ],\n      [\n        \"▁arrived\",\n        -10.86263370513916\n      ],\n      [\n        \"▁payments\",\n        -10.862680435180664\n      ],\n      [\n        \"ack\",\n        -10.862700462341309\n      ],\n      [\n        \"▁Ort\",\n        -10.863354682922363\n      ],\n      [\n        \"▁investors\",\n        -10.863364219665527\n      ],\n      [\n        \"▁operate\",\n        -10.86351203918457\n      ],\n      [\n        \"ME\",\n        -10.863556861877441\n      ],\n      [\n        \"dic\",\n        -10.863683700561523\n      ],\n      [\n        \"▁foods\",\n        -10.863731384277344\n      ],\n      [\n        \"▁stick\",\n        -10.863831520080566\n      ],\n      [\n        \"▁agents\",\n        -10.86412525177002\n      ],\n      [\n        \"▁crowd\",\n        -10.864175796508789\n      ],\n      [\n        \"▁Students\",\n        -10.864480972290039\n      ],\n      [\n        \"▁concerned\",\n        -10.864609718322754\n      ],\n      [\n        \"test\",\n        -10.864740371704102\n      ],\n      [\n        \"▁designer\",\n        -10.865334510803223\n      ],\n      [\n        \"▁Conference\",\n        -10.865593910217285\n      ],\n      [\n        \"▁saving\",\n        -10.866105079650879\n      ],\n      [\n        \"▁recorded\",\n        -10.866422653198242\n      ],\n      [\n        \"▁proposed\",\n        -10.866564750671387\n      ],\n      [\n        \"▁ship\",\n        -10.86657428741455\n      ],\n      [\n        \"▁cred\",\n        -10.867274284362793\n      ],\n      [\n        \"▁Ci\",\n        -10.867440223693848\n      ],\n      [\n        \"RE\",\n        -10.867619514465332\n      ],\n      [\n        \"▁tradition\",\n        -10.867753982543945\n      ],\n      [\n        \"▁worldwide\",\n        -10.867779731750488\n      ],\n      [\n        \"64\",\n        -10.867944717407227\n      ],\n      [\n        \"▁television\",\n        -10.867989540100098\n      ],\n      [\n        \"▁projet\",\n        -10.868102073669434\n      ],\n      [\n        \"ency\",\n        -10.868487358093262\n      ],\n      [\n        \"▁struggle\",\n        -10.868514060974121\n      ],\n      [\n        \"▁twice\",\n        -10.868955612182617\n      ],\n      [\n        \"▁Off\",\n        -10.869234085083008\n      ],\n      [\n        \"▁begins\",\n        -10.869577407836914\n      ],\n      [\n        \"key\",\n        -10.869794845581055\n      ],\n      [\n        \"▁Table\",\n        -10.869963645935059\n      ],\n      [\n        \"▁demande\",\n        -10.870177268981934\n      ],\n      [\n        \"▁liquid\",\n        -10.870441436767578\n      ],\n      [\n        \"meter\",\n        -10.870684623718262\n      ],\n      [\n        \"▁2001\",\n        -10.871190071105957\n      ],\n      [\n        \"▁willing\",\n        -10.871660232543945\n      ],\n      [\n        \"▁medicine\",\n        -10.871707916259766\n      ],\n      [\n        \"▁expand\",\n        -10.871747970581055\n      ],\n      [\n        \"▁2004\",\n        -10.871804237365723\n      ],\n      [\n        \"▁2002\",\n        -10.872016906738281\n      ],\n      [\n        \"▁accord\",\n        -10.872292518615723\n      ],\n      [\n        \"▁Chris\",\n        -10.872446060180664\n      ],\n      [\n        \"▁prove\",\n        -10.872543334960938\n      ],\n      [\n        \"ston\",\n        -10.872740745544434\n      ],\n      [\n        \"mettre\",\n        -10.872800827026367\n      ],\n      [\n        \"▁moments\",\n        -10.873537063598633\n      ],\n      [\n        \"tik\",\n        -10.87368392944336\n      ],\n      [\n        \"such\",\n        -10.874055862426758\n      ],\n      [\n        \"2.\",\n        -10.874431610107422\n      ],\n      [\n        \"▁UN\",\n        -10.874561309814453\n      ],\n      [\n        \"▁jump\",\n        -10.874737739562988\n      ],\n      [\n        \"▁dish\",\n        -10.87539291381836\n      ],\n      [\n        \"▁Key\",\n        -10.875663757324219\n      ],\n      [\n        \"▁challenging\",\n        -10.875975608825684\n      ],\n      [\n        \"▁domestic\",\n        -10.876410484313965\n      ],\n      [\n        \"▁impressive\",\n        -10.876752853393555\n      ],\n      [\n        \"iger\",\n        -10.877022743225098\n      ],\n      [\n        \"▁Ram\",\n        -10.877157211303711\n      ],\n      [\n        \"▁doit\",\n        -10.877263069152832\n      ],\n      [\n        \"▁concrete\",\n        -10.87734317779541\n      ],\n      [\n        \"▁Unternehmen\",\n        -10.877397537231445\n      ],\n      [\n        \"▁LED\",\n        -10.877429008483887\n      ],\n      [\n        \"▁trouver\",\n        -10.877533912658691\n      ],\n      [\n        \"▁fundamental\",\n        -10.877875328063965\n      ],\n      [\n        \"▁implementation\",\n        -10.878121376037598\n      ],\n      [\n        \"85\",\n        -10.878247261047363\n      ],\n      [\n        \"▁hosting\",\n        -10.87856388092041\n      ],\n      [\n        \"▁Game\",\n        -10.878691673278809\n      ],\n      [\n        \"▁taught\",\n        -10.878981590270996\n      ],\n      [\n        \"tung\",\n        -10.879016876220703\n      ],\n      [\n        \"ront\",\n        -10.87940502166748\n      ],\n      [\n        \"▁shoes\",\n        -10.879639625549316\n      ],\n      [\n        \"79\",\n        -10.8797607421875\n      ],\n      [\n        \"▁stunning\",\n        -10.879778861999512\n      ],\n      [\n        \"▁Congress\",\n        -10.880142211914062\n      ],\n      [\n        \"▁Ent\",\n        -10.880278587341309\n      ],\n      [\n        \"▁Wer\",\n        -10.880607604980469\n      ],\n      [\n        \"▁alt\",\n        -10.880608558654785\n      ],\n      [\n        \"ör\",\n        -10.880699157714844\n      ],\n      [\n        \"▁calm\",\n        -10.8808012008667\n      ],\n      [\n        \"46\",\n        -10.881132125854492\n      ],\n      [\n        \"▁Daca\",\n        -10.881404876708984\n      ],\n      [\n        \"71\",\n        -10.881938934326172\n      ],\n      [\n        \"▁Dec\",\n        -10.882392883300781\n      ],\n      [\n        \"▁Fo\",\n        -10.882437705993652\n      ],\n      [\n        \"▁defense\",\n        -10.88313102722168\n      ],\n      [\n        \"▁expectations\",\n        -10.883166313171387\n      ],\n      [\n        \"▁Alle\",\n        -10.88318920135498\n      ],\n      [\n        \"▁brief\",\n        -10.883691787719727\n      ],\n      [\n        \"▁Hospital\",\n        -10.883975982666016\n      ],\n      [\n        \"▁sides\",\n        -10.884121894836426\n      ],\n      [\n        \"▁yellow\",\n        -10.884140014648438\n      ],\n      [\n        \"lei\",\n        -10.88451862335205\n      ],\n      [\n        \"▁speaking\",\n        -10.884589195251465\n      ],\n      [\n        \"▁crucial\",\n        -10.885198593139648\n      ],\n      [\n        \"▁Town\",\n        -10.8854341506958\n      ],\n      [\n        \"▁married\",\n        -10.885574340820312\n      ],\n      [\n        \"▁acesta\",\n        -10.885583877563477\n      ],\n      [\n        \"▁noted\",\n        -10.885611534118652\n      ],\n      [\n        \"▁Word\",\n        -10.885659217834473\n      ],\n      [\n        \"▁conducted\",\n        -10.885963439941406\n      ],\n      [\n        \"▁decor\",\n        -10.886249542236328\n      ],\n      [\n        \"kon\",\n        -10.886565208435059\n      ],\n      [\n        \"▁supplies\",\n        -10.8866605758667\n      ],\n      [\n        \"▁adventure\",\n        -10.886691093444824\n      ],\n      [\n        \"▁exhibition\",\n        -10.887163162231445\n      ],\n      [\n        \"heit\",\n        -10.887300491333008\n      ],\n      [\n        \"▁36\",\n        -10.88744831085205\n      ],\n      [\n        \"eria\",\n        -10.887505531311035\n      ],\n      [\n        \"ines\",\n        -10.887551307678223\n      ],\n      [\n        \"ological\",\n        -10.887582778930664\n      ],\n      [\n        \"quel\",\n        -10.88806438446045\n      ],\n      [\n        \"▁Van\",\n        -10.88825511932373\n      ],\n      [\n        \"-19\",\n        -10.88853645324707\n      ],\n      [\n        \"2,\",\n        -10.888566970825195\n      ],\n      [\n        \"▁Band\",\n        -10.888989448547363\n      ],\n      [\n        \"▁soil\",\n        -10.889184951782227\n      ],\n      [\n        \"▁Tim\",\n        -10.889599800109863\n      ],\n      [\n        \"▁NOT\",\n        -10.88968563079834\n      ],\n      [\n        \"▁pilot\",\n        -10.889753341674805\n      ],\n      [\n        \"▁Sh\",\n        -10.889774322509766\n      ],\n      [\n        \"Ho\",\n        -10.890361785888672\n      ],\n      [\n        \"CA\",\n        -10.890509605407715\n      ],\n      [\n        \"▁Eu\",\n        -10.890745162963867\n      ],\n      [\n        \"▁committee\",\n        -10.890829086303711\n      ],\n      [\n        \"▁Store\",\n        -10.891075134277344\n      ],\n      [\n        \"▁joint\",\n        -10.89111614227295\n      ],\n      [\n        \"▁Op\",\n        -10.891315460205078\n      ],\n      [\n        \"▁Jack\",\n        -10.891985893249512\n      ],\n      [\n        \"quality\",\n        -10.89216423034668\n      ],\n      [\n        \"▁Has\",\n        -10.892489433288574\n      ],\n      [\n        \"▁wenig\",\n        -10.892507553100586\n      ],\n      [\n        \"hood\",\n        -10.892545700073242\n      ],\n      [\n        \"▁Class\",\n        -10.892582893371582\n      ],\n      [\n        \"rus\",\n        -10.892773628234863\n      ],\n      [\n        \"▁grown\",\n        -10.89294719696045\n      ],\n      [\n        \"▁About\",\n        -10.893518447875977\n      ],\n      [\n        \"▁sum\",\n        -10.893942832946777\n      ],\n      [\n        \"▁Fair\",\n        -10.893946647644043\n      ],\n      [\n        \"SA\",\n        -10.894149780273438\n      ],\n      [\n        \"92\",\n        -10.894185066223145\n      ],\n      [\n        \"▁fourth\",\n        -10.894354820251465\n      ],\n      [\n        \"▁featured\",\n        -10.894384384155273\n      ],\n      [\n        \"▁Pen\",\n        -10.89444637298584\n      ],\n      [\n        \"▁natürlich\",\n        -10.894885063171387\n      ],\n      [\n        \"ched\",\n        -10.894901275634766\n      ],\n      [\n        \"▁ban\",\n        -10.895112991333008\n      ],\n      [\n        \"anne\",\n        -10.89522647857666\n      ],\n      [\n        \"▁theory\",\n        -10.895413398742676\n      ],\n      [\n        \"bin\",\n        -10.895438194274902\n      ],\n      [\n        \"iers\",\n        -10.895819664001465\n      ],\n      [\n        \"▁strategic\",\n        -10.895903587341309\n      ],\n      [\n        \"▁jours\",\n        -10.895956039428711\n      ],\n      [\n        \"▁communicate\",\n        -10.896124839782715\n      ],\n      [\n        \"▁pin\",\n        -10.896320343017578\n      ],\n      [\n        \"▁Bon\",\n        -10.89721393585205\n      ],\n      [\n        \"kom\",\n        -10.897290229797363\n      ],\n      [\n        \"-5\",\n        -10.898177146911621\n      ],\n      [\n        \"▁degrees\",\n        -10.898643493652344\n      ],\n      [\n        \"▁entertainment\",\n        -10.899014472961426\n      ],\n      [\n        \"ară\",\n        -10.899248123168945\n      ],\n      [\n        \"ales\",\n        -10.899425506591797\n      ],\n      [\n        \"▁pendant\",\n        -10.89954662322998\n      ],\n      [\n        \"▁Series\",\n        -10.899575233459473\n      ],\n      [\n        \"▁holds\",\n        -10.899592399597168\n      ],\n      [\n        \"▁Mini\",\n        -10.899828910827637\n      ],\n      [\n        \"▁Obama\",\n        -10.899898529052734\n      ],\n      [\n        \"▁conform\",\n        -10.900163650512695\n      ],\n      [\n        \"-10\",\n        -10.900216102600098\n      ],\n      [\n        \"▁preparation\",\n        -10.9009370803833\n      ],\n      [\n        \"▁autre\",\n        -10.90105152130127\n      ],\n      [\n        \"▁mortgage\",\n        -10.901155471801758\n      ],\n      [\n        \"▁Kan\",\n        -10.901508331298828\n      ],\n      [\n        \"▁typical\",\n        -10.901538848876953\n      ],\n      [\n        \"01\",\n        -10.901711463928223\n      ],\n      [\n        \"▁Review\",\n        -10.901862144470215\n      ],\n      [\n        \"▁laptop\",\n        -10.902127265930176\n      ],\n      [\n        \"CR\",\n        -10.902610778808594\n      ],\n      [\n        \"▁thread\",\n        -10.90265941619873\n      ],\n      [\n        \"BS\",\n        -10.902661323547363\n      ],\n      [\n        \"▁upper\",\n        -10.902700424194336\n      ],\n      [\n        \"▁searching\",\n        -10.902932167053223\n      ],\n      [\n        \"▁pen\",\n        -10.903214454650879\n      ],\n      [\n        \"▁Middle\",\n        -10.90333080291748\n      ],\n      [\n        \"73\",\n        -10.903359413146973\n      ],\n      [\n        \"▁leg\",\n        -10.903650283813477\n      ],\n      [\n        \"onic\",\n        -10.904272079467773\n      ],\n      [\n        \"IS\",\n        -10.904356956481934\n      ],\n      [\n        \"▁Kar\",\n        -10.904623985290527\n      ],\n      [\n        \"anz\",\n        -10.9046630859375\n      ],\n      [\n        \"▁circuit\",\n        -10.904901504516602\n      ],\n      [\n        \"▁Casino\",\n        -10.905384063720703\n      ],\n      [\n        \"07\",\n        -10.90584659576416\n      ],\n      [\n        \"▁petit\",\n        -10.905906677246094\n      ],\n      [\n        \"TV\",\n        -10.905978202819824\n      ],\n      [\n        \"level\",\n        -10.906311988830566\n      ],\n      [\n        \"▁Point\",\n        -10.906312942504883\n      ],\n      [\n        \"rau\",\n        -10.906474113464355\n      ],\n      [\n        \"▁cabinet\",\n        -10.906991958618164\n      ],\n      [\n        \"▁failed\",\n        -10.907042503356934\n      ],\n      [\n        \"▁stated\",\n        -10.907126426696777\n      ],\n      [\n        \"LA\",\n        -10.907461166381836\n      ],\n      [\n        \"▁privacy\",\n        -10.907596588134766\n      ],\n      [\n        \"vol\",\n        -10.907901763916016\n      ],\n      [\n        \"ativ\",\n        -10.908151626586914\n      ],\n      [\n        \"▁matters\",\n        -10.908210754394531\n      ],\n      [\n        \"▁Mor\",\n        -10.908555030822754\n      ],\n      [\n        \"▁Ur\",\n        -10.90860652923584\n      ],\n      [\n        \"view\",\n        -10.908968925476074\n      ],\n      [\n        \"▁consultation\",\n        -10.90921688079834\n      ],\n      [\n        \"TS\",\n        -10.909296989440918\n      ],\n      [\n        \"▁apartment\",\n        -10.909412384033203\n      ],\n      [\n        \"▁integrated\",\n        -10.909425735473633\n      ],\n      [\n        \"74\",\n        -10.909669876098633\n      ],\n      [\n        \"▁Through\",\n        -10.909710884094238\n      ],\n      [\n        \"▁kick\",\n        -10.909798622131348\n      ],\n      [\n        \"▁perioada\",\n        -10.90993881225586\n      ],\n      [\n        \"▁entirely\",\n        -10.909953117370605\n      ],\n      [\n        \"▁impossible\",\n        -10.91015911102295\n      ],\n      [\n        \"▁consideration\",\n        -10.910268783569336\n      ],\n      [\n        \"▁Alt\",\n        -10.91054916381836\n      ],\n      [\n        \"▁Come\",\n        -10.911089897155762\n      ],\n      [\n        \"▁outstanding\",\n        -10.911276817321777\n      ],\n      [\n        \"83\",\n        -10.911727905273438\n      ],\n      [\n        \"▁prezent\",\n        -10.911859512329102\n      ],\n      [\n        \"▁Local\",\n        -10.911993980407715\n      ],\n      [\n        \"▁Camp\",\n        -10.912056922912598\n      ],\n      [\n        \"▁bear\",\n        -10.912067413330078\n      ],\n      [\n        \"enden\",\n        -10.912262916564941\n      ],\n      [\n        \"life\",\n        -10.91236686706543\n      ],\n      [\n        \"▁Haus\",\n        -10.912516593933105\n      ],\n      [\n        \"▁William\",\n        -10.912644386291504\n      ],\n      [\n        \"“,\",\n        -10.912665367126465\n      ],\n      [\n        \"▁Instagram\",\n        -10.91285514831543\n      ],\n      [\n        \"▁solve\",\n        -10.913195610046387\n      ],\n      [\n        \"▁Ze\",\n        -10.913431167602539\n      ],\n      [\n        \"▁everyday\",\n        -10.91357135772705\n      ],\n      [\n        \"bla\",\n        -10.913615226745605\n      ],\n      [\n        \"eng\",\n        -10.913662910461426\n      ],\n      [\n        \"ough\",\n        -10.914246559143066\n      ],\n      [\n        \"84\",\n        -10.914483070373535\n      ],\n      [\n        \"?\\\"\",\n        -10.914599418640137\n      ],\n      [\n        \"rely\",\n        -10.91476821899414\n      ],\n      [\n        \"TH\",\n        -10.914841651916504\n      ],\n      [\n        \"lang\",\n        -10.91511058807373\n      ],\n      [\n        \"82\",\n        -10.915817260742188\n      ],\n      [\n        \"▁removal\",\n        -10.91589641571045\n      ],\n      [\n        \"ală\",\n        -10.915956497192383\n      ],\n      [\n        \"▁circumstances\",\n        -10.916097640991211\n      ],\n      [\n        \"ente\",\n        -10.91622257232666\n      ],\n      [\n        \"▁lieu\",\n        -10.91645336151123\n      ],\n      [\n        \"▁2016.\",\n        -10.91710376739502\n      ],\n      [\n        \"▁ales\",\n        -10.917342185974121\n      ],\n      [\n        \"▁pure\",\n        -10.917482376098633\n      ],\n      [\n        \"▁choosing\",\n        -10.917590141296387\n      ],\n      [\n        \"▁Russia\",\n        -10.917698860168457\n      ],\n      [\n        \"amp\",\n        -10.917703628540039\n      ],\n      [\n        \"▁Santa\",\n        -10.91788387298584\n      ],\n      [\n        \"▁happening\",\n        -10.918203353881836\n      ],\n      [\n        \"▁crew\",\n        -10.91822338104248\n      ],\n      [\n        \"▁lei\",\n        -10.91855239868164\n      ],\n      [\n        \"IP\",\n        -10.91858196258545\n      ],\n      [\n        \"RO\",\n        -10.919425964355469\n      ],\n      [\n        \"▁resort\",\n        -10.919514656066895\n      ],\n      [\n        \"ened\",\n        -10.919689178466797\n      ],\n      [\n        \"MB\",\n        -10.920031547546387\n      ],\n      [\n        \"▁styles\",\n        -10.920052528381348\n      ],\n      [\n        \"▁dernier\",\n        -10.920533180236816\n      ],\n      [\n        \"uck\",\n        -10.920699119567871\n      ],\n      [\n        \"▁Guide\",\n        -10.920710563659668\n      ],\n      [\n        \"fic\",\n        -10.92096996307373\n      ],\n      [\n        \"▁fitness\",\n        -10.921977996826172\n      ],\n      [\n        \"▁healthcare\",\n        -10.92223072052002\n      ],\n      [\n        \"mol\",\n        -10.92237663269043\n      ],\n      [\n        \"▁vis\",\n        -10.922721862792969\n      ],\n      [\n        \"▁atmosphere\",\n        -10.922972679138184\n      ],\n      [\n        \"▁motion\",\n        -10.922989845275879\n      ],\n      [\n        \"▁closer\",\n        -10.923114776611328\n      ],\n      [\n        \"▁SA\",\n        -10.92335319519043\n      ],\n      [\n        \"▁default\",\n        -10.923371315002441\n      ],\n      [\n        \"▁architecture\",\n        -10.923471450805664\n      ],\n      [\n        \"iile\",\n        -10.923528671264648\n      ],\n      [\n        \"zel\",\n        -10.923675537109375\n      ],\n      [\n        \"cla\",\n        -10.92387866973877\n      ],\n      [\n        \"OP\",\n        -10.924382209777832\n      ],\n      [\n        \"▁west\",\n        -10.924965858459473\n      ],\n      [\n        \"▁Energy\",\n        -10.925613403320312\n      ],\n      [\n        \"▁positions\",\n        -10.925777435302734\n      ],\n      [\n        \"▁contrast\",\n        -10.925885200500488\n      ],\n      [\n        \"▁serves\",\n        -10.92605972290039\n      ],\n      [\n        \"cup\",\n        -10.926340103149414\n      ],\n      [\n        \"▁rose\",\n        -10.926485061645508\n      ],\n      [\n        \"pers\",\n        -10.92664623260498\n      ],\n      [\n        \"▁noise\",\n        -10.926846504211426\n      ],\n      [\n        \"mont\",\n        -10.92690658569336\n      ],\n      [\n        \"#\",\n        -10.927061080932617\n      ],\n      [\n        \"lies\",\n        -10.927326202392578\n      ],\n      [\n        \"pat\",\n        -10.927718162536621\n      ],\n      [\n        \"IC\",\n        -10.927956581115723\n      ],\n      [\n        \"arc\",\n        -10.927989959716797\n      ],\n      [\n        \"▁winner\",\n        -10.928524017333984\n      ],\n      [\n        \"tent\",\n        -10.928732872009277\n      ],\n      [\n        \"▁Preis\",\n        -10.929106712341309\n      ],\n      [\n        \"▁vin\",\n        -10.929254531860352\n      ],\n      [\n        \"blo\",\n        -10.92929458618164\n      ],\n      [\n        \"ție\",\n        -10.929520606994629\n      ],\n      [\n        \"▁OR\",\n        -10.930315017700195\n      ],\n      [\n        \"▁Buch\",\n        -10.930798530578613\n      ],\n      [\n        \"▁nearby\",\n        -10.931190490722656\n      ],\n      [\n        \"▁meetings\",\n        -10.931290626525879\n      ],\n      [\n        \"▁48\",\n        -10.931465148925781\n      ],\n      [\n        \"▁quand\",\n        -10.93152904510498\n      ],\n      [\n        \"▁usual\",\n        -10.931936264038086\n      ],\n      [\n        \"▁weitere\",\n        -10.932539939880371\n      ],\n      [\n        \"▁caught\",\n        -10.932571411132812\n      ],\n      [\n        \"▁issued\",\n        -10.932626724243164\n      ],\n      [\n        \"ști\",\n        -10.932896614074707\n      ],\n      [\n        \"upcoming\",\n        -10.933232307434082\n      ],\n      [\n        \"▁agreed\",\n        -10.933233261108398\n      ],\n      [\n        \"place\",\n        -10.933353424072266\n      ],\n      [\n        \"▁Brand\",\n        -10.93344497680664\n      ],\n      [\n        \"▁relation\",\n        -10.933969497680664\n      ],\n      [\n        \"▁atât\",\n        -10.934090614318848\n      ],\n      [\n        \"▁Tre\",\n        -10.934176445007324\n      ],\n      [\n        \"▁lors\",\n        -10.934438705444336\n      ],\n      [\n        \"▁adopt\",\n        -10.934452056884766\n      ],\n      [\n        \"▁celui\",\n        -10.93458366394043\n      ],\n      [\n        \"cken\",\n        -10.93505859375\n      ],\n      [\n        \"▁partnership\",\n        -10.935284614562988\n      ],\n      [\n        \"?”\",\n        -10.935376167297363\n      ],\n      [\n        \"▁ba\",\n        -10.935746192932129\n      ],\n      [\n        \"▁ID\",\n        -10.935832023620605\n      ],\n      [\n        \"▁consistent\",\n        -10.935835838317871\n      ],\n      [\n        \"▁Ya\",\n        -10.935941696166992\n      ],\n      [\n        \"▁Academy\",\n        -10.936182022094727\n      ],\n      [\n        \"cial\",\n        -10.936230659484863\n      ],\n      [\n        \"1%\",\n        -10.936366081237793\n      ],\n      [\n        \"▁mise\",\n        -10.936684608459473\n      ],\n      [\n        \"▁gute\",\n        -10.936728477478027\n      ],\n      [\n        \"gli\",\n        -10.936939239501953\n      ],\n      [\n        \"▁Bu\",\n        -10.937679290771484\n      ],\n      [\n        \"▁reduction\",\n        -10.937917709350586\n      ],\n      [\n        \"acy\",\n        -10.938126564025879\n      ],\n      [\n        \"aga\",\n        -10.938161849975586\n      ],\n      [\n        \"▁Sc\",\n        -10.938273429870605\n      ],\n      [\n        \"▁Informationen\",\n        -10.938308715820312\n      ],\n      [\n        \"▁kommen\",\n        -10.938352584838867\n      ],\n      [\n        \"press\",\n        -10.93837833404541\n      ],\n      [\n        \"▁bridge\",\n        -10.938379287719727\n      ],\n      [\n        \"▁qualified\",\n        -10.938671112060547\n      ],\n      [\n        \"position\",\n        -10.938821792602539\n      ],\n      [\n        \"▁combat\",\n        -10.938933372497559\n      ],\n      [\n        \"!\\\"\",\n        -10.938993453979492\n      ],\n      [\n        \"eva\",\n        -10.939217567443848\n      ],\n      [\n        \"oase\",\n        -10.939380645751953\n      ],\n      [\n        \"▁inner\",\n        -10.939410209655762\n      ],\n      [\n        \"▁loans\",\n        -10.939720153808594\n      ],\n      [\n        \"made\",\n        -10.939786911010742\n      ],\n      [\n        \"▁Mexico\",\n        -10.93993091583252\n      ],\n      [\n        \"▁formal\",\n        -10.940092086791992\n      ],\n      [\n        \"▁fell\",\n        -10.94021987915039\n      ],\n      [\n        \"91\",\n        -10.940524101257324\n      ],\n      [\n        \"▁campus\",\n        -10.9407320022583\n      ],\n      [\n        \"ienne\",\n        -10.940869331359863\n      ],\n      [\n        \"▁framework\",\n        -10.94105339050293\n      ],\n      [\n        \"ncing\",\n        -10.941157341003418\n      ],\n      [\n        \"▁Para\",\n        -10.941222190856934\n      ],\n      [\n        \"▁password\",\n        -10.941298484802246\n      ],\n      [\n        \"▁sei\",\n        -10.941422462463379\n      ],\n      [\n        \"▁Cross\",\n        -10.941532135009766\n      ],\n      [\n        \"▁Ten\",\n        -10.941873550415039\n      ],\n      [\n        \"bank\",\n        -10.941887855529785\n      ],\n      [\n        \"▁gun\",\n        -10.942000389099121\n      ],\n      [\n        \"ient\",\n        -10.942021369934082\n      ],\n      [\n        \"▁usage\",\n        -10.942176818847656\n      ],\n      [\n        \"▁(2\",\n        -10.942278861999512\n      ],\n      [\n        \"Gra\",\n        -10.942320823669434\n      ],\n      [\n        \"▁prea\",\n        -10.94253158569336\n      ],\n      [\n        \"▁Als\",\n        -10.942619323730469\n      ],\n      [\n        \"▁finance\",\n        -10.942638397216797\n      ],\n      [\n        \"tate\",\n        -10.942665100097656\n      ],\n      [\n        \"ition\",\n        -10.942703247070312\n      ],\n      [\n        \"▁regulations\",\n        -10.942741394042969\n      ],\n      [\n        \"▁Professional\",\n        -10.943001747131348\n      ],\n      [\n        \"▁pl\",\n        -10.94336986541748\n      ],\n      [\n        \"▁SEO\",\n        -10.943472862243652\n      ],\n      [\n        \"▁trecut\",\n        -10.943487167358398\n      ],\n      [\n        \"▁aller\",\n        -10.943509101867676\n      ],\n      [\n        \"▁violence\",\n        -10.943986892700195\n      ],\n      [\n        \"▁membership\",\n        -10.944117546081543\n      ],\n      [\n        \"▁picked\",\n        -10.944162368774414\n      ],\n      [\n        \"▁collected\",\n        -10.9443359375\n      ],\n      [\n        \"▁extended\",\n        -10.944449424743652\n      ],\n      [\n        \"▁religious\",\n        -10.944661140441895\n      ],\n      [\n        \"▁salle\",\n        -10.944767951965332\n      ],\n      [\n        \"RA\",\n        -10.944781303405762\n      ],\n      [\n        \"▁blend\",\n        -10.945232391357422\n      ],\n      [\n        \"▁Min\",\n        -10.94532299041748\n      ],\n      [\n        \"kal\",\n        -10.945887565612793\n      ],\n      [\n        \"▁featuring\",\n        -10.945902824401855\n      ],\n      [\n        \"▁researchers\",\n        -10.946263313293457\n      ],\n      [\n        \"▁Search\",\n        -10.946558952331543\n      ],\n      [\n        \"CE\",\n        -10.946675300598145\n      ],\n      [\n        \"▁recognized\",\n        -10.94682502746582\n      ],\n      [\n        \"▁semi\",\n        -10.94692611694336\n      ],\n      [\n        \"▁exposure\",\n        -10.94718074798584\n      ],\n      [\n        \"grew\",\n        -10.947466850280762\n      ],\n      [\n        \"▁candidate\",\n        -10.948250770568848\n      ],\n      [\n        \"▁shares\",\n        -10.948908805847168\n      ],\n      [\n        \"▁edit\",\n        -10.949745178222656\n      ],\n      [\n        \"CS\",\n        -10.949905395507812\n      ],\n      [\n        \"▁Cl\",\n        -10.950240135192871\n      ],\n      [\n        \"▁Enjoy\",\n        -10.951438903808594\n      ],\n      [\n        \"▁hurt\",\n        -10.951482772827148\n      ],\n      [\n        \"▁bottle\",\n        -10.951593399047852\n      ],\n      [\n        \"▁Buy\",\n        -10.95159912109375\n      ],\n      [\n        \"▁superior\",\n        -10.952286720275879\n      ],\n      [\n        \"▁missed\",\n        -10.952424049377441\n      ],\n      [\n        \"▁workshop\",\n        -10.952433586120605\n      ],\n      [\n        \"action\",\n        -10.952437400817871\n      ],\n      [\n        \"ple\",\n        -10.952699661254883\n      ],\n      [\n        \"▁Schul\",\n        -10.952814102172852\n      ],\n      [\n        \"▁houses\",\n        -10.953080177307129\n      ],\n      [\n        \"▁2017,\",\n        -10.953569412231445\n      ],\n      [\n        \"▁killed\",\n        -10.953750610351562\n      ],\n      [\n        \"▁calendar\",\n        -10.954306602478027\n      ],\n      [\n        \"▁Mike\",\n        -10.954597473144531\n      ],\n      [\n        \"FA\",\n        -10.954627990722656\n      ],\n      [\n        \"nut\",\n        -10.95487117767334\n      ],\n      [\n        \"▁establish\",\n        -10.955140113830566\n      ],\n      [\n        \"▁alcohol\",\n        -10.95514965057373\n      ],\n      [\n        \"▁closely\",\n        -10.955170631408691\n      ],\n      [\n        \"▁MA\",\n        -10.955381393432617\n      ],\n      [\n        \"pul\",\n        -10.955389022827148\n      ],\n      [\n        \"▁defined\",\n        -10.955666542053223\n      ],\n      [\n        \"aires\",\n        -10.955692291259766\n      ],\n      [\n        \"▁Shi\",\n        -10.955703735351562\n      ],\n      [\n        \"▁plays\",\n        -10.956303596496582\n      ],\n      [\n        \"▁sister\",\n        -10.95690631866455\n      ],\n      [\n        \"▁cable\",\n        -10.957179069519043\n      ],\n      [\n        \"▁desk\",\n        -10.957215309143066\n      ],\n      [\n        \"▁apoi\",\n        -10.957738876342773\n      ],\n      [\n        \"▁identity\",\n        -10.95785140991211\n      ],\n      [\n        \"▁stars\",\n        -10.957931518554688\n      ],\n      [\n        \"▁fata\",\n        -10.958008766174316\n      ],\n      [\n        \"▁obvious\",\n        -10.958330154418945\n      ],\n      [\n        \"▁dental\",\n        -10.95843505859375\n      ],\n      [\n        \"AM\",\n        -10.958802223205566\n      ],\n      [\n        \"▁sharp\",\n        -10.95881175994873\n      ],\n      [\n        \"duc\",\n        -10.959053993225098\n      ],\n      [\n        \"▁manufacturer\",\n        -10.95914077758789\n      ],\n      [\n        \"!)\",\n        -10.959270477294922\n      ],\n      [\n        \"▁objects\",\n        -10.959720611572266\n      ],\n      [\n        \"▁Ag\",\n        -10.959989547729492\n      ],\n      [\n        \"referred\",\n        -10.960195541381836\n      ],\n      [\n        \"▁Ak\",\n        -10.960308074951172\n      ],\n      [\n        \"burg\",\n        -10.960360527038574\n      ],\n      [\n        \"▁nouveau\",\n        -10.960854530334473\n      ],\n      [\n        \"▁Pal\",\n        -10.960994720458984\n      ],\n      [\n        \"▁Arbeits\",\n        -10.961280822753906\n      ],\n      [\n        \"▁personally\",\n        -10.961288452148438\n      ],\n      [\n        \"▁Dé\",\n        -10.961292266845703\n      ],\n      [\n        \"▁import\",\n        -10.961688041687012\n      ],\n      [\n        \"▁justice\",\n        -10.961913108825684\n      ],\n      [\n        \"▁photography\",\n        -10.962705612182617\n      ],\n      [\n        \"▁portfolio\",\n        -10.962841987609863\n      ],\n      [\n        \"56\",\n        -10.96314525604248\n      ],\n      [\n        \"▁nouvelle\",\n        -10.963293075561523\n      ],\n      [\n        \"▁oven\",\n        -10.964197158813477\n      ],\n      [\n        \"▁400\",\n        -10.964272499084473\n      ],\n      [\n        \"▁mixed\",\n        -10.964395523071289\n      ],\n      [\n        \"▁relax\",\n        -10.964427947998047\n      ],\n      [\n        \"▁imp\",\n        -10.964703559875488\n      ],\n      [\n        \"▁».\",\n        -10.964734077453613\n      ],\n      [\n        \"▁mail\",\n        -10.964777946472168\n      ],\n      [\n        \"rage\",\n        -10.964861869812012\n      ],\n      [\n        \"nos\",\n        -10.964974403381348\n      ],\n      [\n        \"▁drugs\",\n        -10.965195655822754\n      ],\n      [\n        \"▁jede\",\n        -10.965211868286133\n      ],\n      [\n        \"▁einige\",\n        -10.965232849121094\n      ],\n      [\n        \"▁8.\",\n        -10.965325355529785\n      ],\n      [\n        \"ters\",\n        -10.965412139892578\n      ],\n      [\n        \"▁electrical\",\n        -10.965432167053223\n      ],\n      [\n        \"▁puis\",\n        -10.965836524963379\n      ],\n      [\n        \"▁films\",\n        -10.965903282165527\n      ],\n      [\n        \"41\",\n        -10.966036796569824\n      ],\n      [\n        \"▁moral\",\n        -10.966398239135742\n      ],\n      [\n        \"lage\",\n        -10.966402053833008\n      ],\n      [\n        \"▁spaces\",\n        -10.966415405273438\n      ],\n      [\n        \"▁Ed\",\n        -10.966462135314941\n      ],\n      [\n        \"▁classroom\",\n        -10.966588020324707\n      ],\n      [\n        \"▁große\",\n        -10.966588973999023\n      ],\n      [\n        \"▁baza\",\n        -10.966887474060059\n      ],\n      [\n        \"face\",\n        -10.967308044433594\n      ],\n      [\n        \"▁informed\",\n        -10.967333793640137\n      ],\n      [\n        \"▁improving\",\n        -10.967477798461914\n      ],\n      [\n        \"▁guidance\",\n        -10.967880249023438\n      ],\n      [\n        \"▁gallery\",\n        -10.96800708770752\n      ],\n      [\n        \"cular\",\n        -10.968046188354492\n      ],\n      [\n        \"53\",\n        -10.968094825744629\n      ],\n      [\n        \"Despite\",\n        -10.968238830566406\n      ],\n      [\n        \"▁forme\",\n        -10.968304634094238\n      ],\n      [\n        \"▁système\",\n        -10.968415260314941\n      ],\n      [\n        \"▁Win\",\n        -10.968494415283203\n      ],\n      [\n        \"▁Small\",\n        -10.968537330627441\n      ],\n      [\n        \"▁Mobile\",\n        -10.968564987182617\n      ],\n      [\n        \"▁tape\",\n        -10.968606948852539\n      ],\n      [\n        \"▁erhalten\",\n        -10.968914985656738\n      ],\n      [\n        \"▁movies\",\n        -10.968928337097168\n      ],\n      [\n        \"▁Unfortunately\",\n        -10.968963623046875\n      ],\n      [\n        \"▁Looking\",\n        -10.96945858001709\n      ],\n      [\n        \"▁guard\",\n        -10.969584465026855\n      ],\n      [\n        \"▁pr\",\n        -10.969820976257324\n      ],\n      [\n        \"▁confident\",\n        -10.96988582611084\n      ],\n      [\n        \"BA\",\n        -10.970229148864746\n      ],\n      [\n        \"bas\",\n        -10.970272064208984\n      ],\n      [\n        \"hum\",\n        -10.97050666809082\n      ],\n      [\n        \"ular\",\n        -10.9705171585083\n      ],\n      [\n        \"▁Still\",\n        -10.970593452453613\n      ],\n      [\n        \"▁flavor\",\n        -10.970656394958496\n      ],\n      [\n        \"▁boost\",\n        -10.970773696899414\n      ],\n      [\n        \"▁division\",\n        -10.970842361450195\n      ],\n      [\n        \"ising\",\n        -10.971006393432617\n      ],\n      [\n        \"▁monitoring\",\n        -10.971044540405273\n      ],\n      [\n        \"▁Sen\",\n        -10.97105884552002\n      ],\n      [\n        \"▁https\",\n        -10.971527099609375\n      ],\n      [\n        \"mainly\",\n        -10.971735000610352\n      ],\n      [\n        \"play\",\n        -10.972251892089844\n      ],\n      [\n        \"▁dynamic\",\n        -10.972357749938965\n      ],\n      [\n        \"▁coup\",\n        -10.972370147705078\n      ],\n      [\n        \"▁carpet\",\n        -10.972561836242676\n      ],\n      [\n        \"iner\",\n        -10.972846984863281\n      ],\n      [\n        \"ral\",\n        -10.97325611114502\n      ],\n      [\n        \"iser\",\n        -10.973320007324219\n      ],\n      [\n        \"RC\",\n        -10.9739990234375\n      ],\n      [\n        \"▁definition\",\n        -10.97475814819336\n      ],\n      [\n        \"▁Za\",\n        -10.974767684936523\n      ],\n      [\n        \"friendly\",\n        -10.974883079528809\n      ],\n      [\n        \"43\",\n        -10.975123405456543\n      ],\n      [\n        \"link\",\n        -10.975180625915527\n      ],\n      [\n        \"▁Multi\",\n        -10.97519302368164\n      ],\n      [\n        \"▁einmal\",\n        -10.975272178649902\n      ],\n      [\n        \"▁stopped\",\n        -10.975394248962402\n      ],\n      [\n        \"vel\",\n        -10.975456237792969\n      ],\n      [\n        \"▁ongoing\",\n        -10.975565910339355\n      ],\n      [\n        \"▁ancient\",\n        -10.976259231567383\n      ],\n      [\n        \"take\",\n        -10.976301193237305\n      ],\n      [\n        \"cia\",\n        -10.976432800292969\n      ],\n      [\n        \"▁USB\",\n        -10.976545333862305\n      ],\n      [\n        \"▁attorney\",\n        -10.976866722106934\n      ],\n      [\n        \"▁slot\",\n        -10.976866722106934\n      ],\n      [\n        \"▁Line\",\n        -10.97693157196045\n      ],\n      [\n        \"rice\",\n        -10.977087020874023\n      ],\n      [\n        \"ify\",\n        -10.977520942687988\n      ],\n      [\n        \"ó\",\n        -10.978260040283203\n      ],\n      [\n        \"▁flash\",\n        -10.978483200073242\n      ],\n      [\n        \"▁extension\",\n        -10.978555679321289\n      ],\n      [\n        \"▁Ende\",\n        -10.979022979736328\n      ],\n      [\n        \"▁powder\",\n        -10.979114532470703\n      ],\n      [\n        \"ească\",\n        -10.979143142700195\n      ],\n      [\n        \"03\",\n        -10.979327201843262\n      ],\n      [\n        \"▁normally\",\n        -10.979416847229004\n      ],\n      [\n        \"▁pun\",\n        -10.980108261108398\n      ],\n      [\n        \"viewed\",\n        -10.980138778686523\n      ],\n      [\n        \"ssen\",\n        -10.980896949768066\n      ],\n      [\n        \"ache\",\n        -10.981121063232422\n      ],\n      [\n        \"ește\",\n        -10.98122787475586\n      ],\n      [\n        \"▁PA\",\n        -10.981266021728516\n      ],\n      [\n        \"FI\",\n        -10.981945991516113\n      ],\n      [\n        \"▁Frank\",\n        -10.98198127746582\n      ],\n      [\n        \"▁apa\",\n        -10.98242473602295\n      ],\n      [\n        \"▁coast\",\n        -10.982614517211914\n      ],\n      [\n        \"▁boy\",\n        -10.982665061950684\n      ],\n      [\n        \"lim\",\n        -10.982902526855469\n      ],\n      [\n        \"▁putin\",\n        -10.983194351196289\n      ],\n      [\n        \"▁script\",\n        -10.983332633972168\n      ],\n      [\n        \"▁noticed\",\n        -10.9837007522583\n      ],\n      [\n        \"▁dealing\",\n        -10.983922004699707\n      ],\n      [\n        \"▁Trans\",\n        -10.984100341796875\n      ],\n      [\n        \"▁border\",\n        -10.984447479248047\n      ],\n      [\n        \"▁reputation\",\n        -10.984657287597656\n      ],\n      [\n        \"-2\",\n        -10.984662055969238\n      ],\n      [\n        \"HS\",\n        -10.984707832336426\n      ],\n      [\n        \"▁supports\",\n        -10.984724998474121\n      ],\n      [\n        \"▁horse\",\n        -10.985146522521973\n      ],\n      [\n        \"nik\",\n        -10.98520565032959\n      ],\n      [\n        \"▁clothes\",\n        -10.985234260559082\n      ],\n      [\n        \"▁Card\",\n        -10.985612869262695\n      ],\n      [\n        \"▁relief\",\n        -10.98595905303955\n      ],\n      [\n        \"▁Visit\",\n        -10.986259460449219\n      ],\n      [\n        \"▁luni\",\n        -10.986593246459961\n      ],\n      [\n        \"81\",\n        -10.986693382263184\n      ],\n      [\n        \"qua\",\n        -10.986945152282715\n      ],\n      [\n        \"▁Comp\",\n        -10.98697280883789\n      ],\n      [\n        \"▁investigation\",\n        -10.987137794494629\n      ],\n      [\n        \"▁depth\",\n        -10.987598419189453\n      ],\n      [\n        \"▁earned\",\n        -10.987709045410156\n      ],\n      [\n        \"▁Ren\",\n        -10.988090515136719\n      ],\n      [\n        \"▁Dumnezeu\",\n        -10.988107681274414\n      ],\n      [\n        \"▁Joe\",\n        -10.988210678100586\n      ],\n      [\n        \"▁goods\",\n        -10.988288879394531\n      ],\n      [\n        \"▁Vol\",\n        -10.988686561584473\n      ],\n      [\n        \"▁certified\",\n        -10.989118576049805\n      ],\n      [\n        \"▁favor\",\n        -10.989326477050781\n      ],\n      [\n        \"▁Scott\",\n        -10.989599227905273\n      ],\n      [\n        \"▁protest\",\n        -10.989802360534668\n      ],\n      [\n        \"▁pace\",\n        -10.989803314208984\n      ],\n      [\n        \"▁Angeles\",\n        -10.990368843078613\n      ],\n      [\n        \"inch\",\n        -10.99050521850586\n      ],\n      [\n        \"▁charged\",\n        -10.99052619934082\n      ],\n      [\n        \"code\",\n        -10.990968704223633\n      ],\n      [\n        \"▁convenient\",\n        -10.99138355255127\n      ],\n      [\n        \"▁Nord\",\n        -10.991556167602539\n      ],\n      [\n        \"▁yesterday\",\n        -10.991691589355469\n      ],\n      [\n        \"Dacă\",\n        -10.99169635772705\n      ],\n      [\n        \"▁Travel\",\n        -10.991786003112793\n      ],\n      [\n        \"▁kid\",\n        -10.991941452026367\n      ],\n      [\n        \"ction\",\n        -10.991986274719238\n      ],\n      [\n        \"▁groupe\",\n        -10.992770195007324\n      ],\n      [\n        \"pu\",\n        -10.993056297302246\n      ],\n      [\n        \"bzw\",\n        -10.993196487426758\n      ],\n      [\n        \"▁mixture\",\n        -10.993513107299805\n      ],\n      [\n        \"▁Farm\",\n        -10.993715286254883\n      ],\n      [\n        \"▁acces\",\n        -10.993939399719238\n      ],\n      [\n        \"matic\",\n        -10.993950843811035\n      ],\n      [\n        \"▁comparison\",\n        -10.994006156921387\n      ],\n      [\n        \"reich\",\n        -10.994095802307129\n      ],\n      [\n        \"pet\",\n        -10.994502067565918\n      ],\n      [\n        \"▁lit\",\n        -10.994685173034668\n      ],\n      [\n        \"▁organized\",\n        -10.99476432800293\n      ],\n      [\n        \"just\",\n        -10.995564460754395\n      ],\n      [\n        \"▁fellow\",\n        -10.996004104614258\n      ],\n      [\n        \"Ver\",\n        -10.996209144592285\n      ],\n      [\n        \"▁trends\",\n        -10.99622631072998\n      ],\n      [\n        \"▁evaluation\",\n        -10.99626636505127\n      ],\n      [\n        \"feld\",\n        -10.99639892578125\n      ],\n      [\n        \"▁Pu\",\n        -10.99671459197998\n      ],\n      [\n        \"▁equipped\",\n        -10.99727725982666\n      ],\n      [\n        \"▁catre\",\n        -10.997278213500977\n      ],\n      [\n        \"eck\",\n        -10.997369766235352\n      ],\n      [\n        \"▁facing\",\n        -10.997998237609863\n      ],\n      [\n        \"▁instrument\",\n        -10.998361587524414\n      ],\n      [\n        \"▁pleased\",\n        -10.998507499694824\n      ],\n      [\n        \"▁tap\",\n        -10.998818397521973\n      ],\n      [\n        \"dom\",\n        -10.998826026916504\n      ],\n      [\n        \"▁pump\",\n        -10.999384880065918\n      ],\n      [\n        \"▁functional\",\n        -10.999429702758789\n      ],\n      [\n        \"▁authority\",\n        -10.999455451965332\n      ],\n      [\n        \"▁experiment\",\n        -10.999478340148926\n      ],\n      [\n        \"LO\",\n        -10.999529838562012\n      ],\n      [\n        \"▁scheduled\",\n        -10.999552726745605\n      ],\n      [\n        \"halt\",\n        -10.999604225158691\n      ],\n      [\n        \"▁ceiling\",\n        -10.999761581420898\n      ],\n      [\n        \"▁Step\",\n        -11.000310897827148\n      ],\n      [\n        \"▁orders\",\n        -11.00032901763916\n      ],\n      [\n        \"▁speech\",\n        -11.001046180725098\n      ],\n      [\n        \"▁stands\",\n        -11.001119613647461\n      ],\n      [\n        \"▁disc\",\n        -11.001920700073242\n      ],\n      [\n        \"▁rec\",\n        -11.001935958862305\n      ],\n      [\n        \"▁Text\",\n        -11.00243854522705\n      ],\n      [\n        \"▁banks\",\n        -11.00294017791748\n      ],\n      [\n        \"▁oameni\",\n        -11.003045082092285\n      ],\n      [\n        \"▁communications\",\n        -11.003194808959961\n      ],\n      [\n        \"trag\",\n        -11.003307342529297\n      ],\n      [\n        \"▁trail\",\n        -11.003803253173828\n      ],\n      [\n        \"AN\",\n        -11.00426197052002\n      ],\n      [\n        \"▁Federal\",\n        -11.004467964172363\n      ],\n      [\n        \"▁quote\",\n        -11.00455093383789\n      ],\n      [\n        \"▁spus\",\n        -11.004620552062988\n      ],\n      [\n        \"▁managing\",\n        -11.004990577697754\n      ],\n      [\n        \"▁booking\",\n        -11.00505256652832\n      ],\n      [\n        \"▁Blog\",\n        -11.005669593811035\n      ],\n      [\n        \"▁tank\",\n        -11.005681991577148\n      ],\n      [\n        \"pon\",\n        -11.005804061889648\n      ],\n      [\n        \"GE\",\n        -11.00582218170166\n      ],\n      [\n        \"▁fiscal\",\n        -11.005871772766113\n      ],\n      [\n        \"▁satisfaction\",\n        -11.006044387817383\n      ],\n      [\n        \"cre\",\n        -11.00614070892334\n      ],\n      [\n        \"▁protected\",\n        -11.006494522094727\n      ],\n      [\n        \"▁enfants\",\n        -11.006782531738281\n      ],\n      [\n        \"▁dort\",\n        -11.007554054260254\n      ],\n      [\n        \"▁Mel\",\n        -11.008041381835938\n      ],\n      [\n        \"▁turns\",\n        -11.00804615020752\n      ],\n      [\n        \"▁savings\",\n        -11.008106231689453\n      ],\n      [\n        \"▁voir\",\n        -11.008358001708984\n      ],\n      [\n        \"▁Boston\",\n        -11.008394241333008\n      ],\n      [\n        \"▁debate\",\n        -11.008469581604004\n      ],\n      [\n        \"▁SO\",\n        -11.008857727050781\n      ],\n      [\n        \"▁tables\",\n        -11.009193420410156\n      ],\n      [\n        \"▁honest\",\n        -11.009210586547852\n      ],\n      [\n        \"mate\",\n        -11.009283065795898\n      ],\n      [\n        \"▁chart\",\n        -11.0094633102417\n      ],\n      [\n        \"decât\",\n        -11.009682655334473\n      ],\n      [\n        \"▁Radio\",\n        -11.009685516357422\n      ],\n      [\n        \"54\",\n        -11.00986385345459\n      ],\n      [\n        \"▁vol\",\n        -11.010008811950684\n      ],\n      [\n        \"last\",\n        -11.010148048400879\n      ],\n      [\n        \"▁tall\",\n        -11.010408401489258\n      ],\n      [\n        \"▁Should\",\n        -11.010489463806152\n      ],\n      [\n        \"▁sink\",\n        -11.010525703430176\n      ],\n      [\n        \"▁Right\",\n        -11.010527610778809\n      ],\n      [\n        \"▁male\",\n        -11.010720252990723\n      ],\n      [\n        \"▁Modern\",\n        -11.010753631591797\n      ],\n      [\n        \"▁indeed\",\n        -11.010886192321777\n      ],\n      [\n        \"▁Garden\",\n        -11.011139869689941\n      ],\n      [\n        \"▁Mod\",\n        -11.011307716369629\n      ],\n      [\n        \"▁turning\",\n        -11.0115327835083\n      ],\n      [\n        \"▁inches\",\n        -11.011557579040527\n      ],\n      [\n        \"▁Police\",\n        -11.01183795928955\n      ],\n      [\n        \"▁Pay\",\n        -11.012016296386719\n      ],\n      [\n        \"UE\",\n        -11.0126371383667\n      ],\n      [\n        \"mé\",\n        -11.012652397155762\n      ],\n      [\n        \"EE\",\n        -11.013046264648438\n      ],\n      [\n        \"▁cookies\",\n        -11.013116836547852\n      ],\n      [\n        \"rip\",\n        -11.013351440429688\n      ],\n      [\n        \"▁Motor\",\n        -11.01352310180664\n      ],\n      [\n        \"▁lung\",\n        -11.01379680633545\n      ],\n      [\n        \"▁Ap\",\n        -11.013995170593262\n      ],\n      [\n        \"▁sustainable\",\n        -11.014066696166992\n      ],\n      [\n        \"▁instant\",\n        -11.014240264892578\n      ],\n      [\n        \"▁Rose\",\n        -11.014464378356934\n      ],\n      [\n        \"▁Carolina\",\n        -11.014906883239746\n      ],\n      [\n        \"▁Help\",\n        -11.014969825744629\n      ],\n      [\n        \"IE\",\n        -11.01535701751709\n      ],\n      [\n        \"▁Jersey\",\n        -11.015522956848145\n      ],\n      [\n        \"▁Spanish\",\n        -11.015586853027344\n      ],\n      [\n        \"▁wheel\",\n        -11.015660285949707\n      ],\n      [\n        \"▁fishing\",\n        -11.0158109664917\n      ],\n      [\n        \"gram\",\n        -11.015937805175781\n      ],\n      [\n        \"▁ST\",\n        -11.016227722167969\n      ],\n      [\n        \"▁Nov\",\n        -11.01632022857666\n      ],\n      [\n        \"▁reporting\",\n        -11.016362190246582\n      ],\n      [\n        \"ked\",\n        -11.016467094421387\n      ],\n      [\n        \"▁Leben\",\n        -11.016557693481445\n      ],\n      [\n        \"▁organisation\",\n        -11.016843795776367\n      ],\n      [\n        \"▁tiny\",\n        -11.017144203186035\n      ],\n      [\n        \"▁Alex\",\n        -11.017236709594727\n      ],\n      [\n        \"▁obtained\",\n        -11.017255783081055\n      ],\n      [\n        \"▁Acest\",\n        -11.017367362976074\n      ],\n      [\n        \"▁dangerous\",\n        -11.01749038696289\n      ],\n      [\n        \"utter\",\n        -11.017624855041504\n      ],\n      [\n        \"▁rev\",\n        -11.01801586151123\n      ],\n      [\n        \"Un\",\n        -11.018242835998535\n      ],\n      [\n        \"▁revealed\",\n        -11.018356323242188\n      ],\n      [\n        \"▁decade\",\n        -11.018709182739258\n      ],\n      [\n        \"▁possibility\",\n        -11.01945686340332\n      ],\n      [\n        \"service\",\n        -11.019577980041504\n      ],\n      [\n        \"è\",\n        -11.01966667175293\n      ],\n      [\n        \"▁Chief\",\n        -11.019674301147461\n      ],\n      [\n        \"▁Durch\",\n        -11.019795417785645\n      ],\n      [\n        \"▁cadre\",\n        -11.019843101501465\n      ],\n      [\n        \"▁wearing\",\n        -11.019845008850098\n      ],\n      [\n        \"sized\",\n        -11.01988410949707\n      ],\n      [\n        \"LY\",\n        -11.01989459991455\n      ],\n      [\n        \"▁unser\",\n        -11.019963264465332\n      ],\n      [\n        \"▁2016,\",\n        -11.019988059997559\n      ],\n      [\n        \"▁fail\",\n        -11.020028114318848\n      ],\n      [\n        \"iques\",\n        -11.020115852355957\n      ],\n      [\n        \"▁Angel\",\n        -11.020315170288086\n      ],\n      [\n        \"▁transportation\",\n        -11.020364761352539\n      ],\n      [\n        \"▁dates\",\n        -11.020395278930664\n      ],\n      [\n        \"▁danger\",\n        -11.020731925964355\n      ],\n      [\n        \"▁forum\",\n        -11.020828247070312\n      ],\n      [\n        \"zug\",\n        -11.020885467529297\n      ],\n      [\n        \"▁filed\",\n        -11.021199226379395\n      ],\n      [\n        \"loc\",\n        -11.021201133728027\n      ],\n      [\n        \"éri\",\n        -11.021234512329102\n      ],\n      [\n        \"tribu\",\n        -11.021393775939941\n      ],\n      [\n        \"▁entered\",\n        -11.021639823913574\n      ],\n      [\n        \"▁porte\",\n        -11.021928787231445\n      ],\n      [\n        \"▁arts\",\n        -11.021979331970215\n      ],\n      [\n        \"▁reform\",\n        -11.022001266479492\n      ],\n      [\n        \"▁Main\",\n        -11.022101402282715\n      ],\n      [\n        \"▁dir\",\n        -11.022111892700195\n      ],\n      [\n        \"▁approval\",\n        -11.022465705871582\n      ],\n      [\n        \"▁juice\",\n        -11.022750854492188\n      ],\n      [\n        \"vier\",\n        -11.022771835327148\n      ],\n      [\n        \"▁nivel\",\n        -11.02318000793457\n      ],\n      [\n        \"▁returns\",\n        -11.023423194885254\n      ],\n      [\n        \"▁formed\",\n        -11.023723602294922\n      ],\n      [\n        \"▁combine\",\n        -11.02436351776123\n      ],\n      [\n        \"▁cours\",\n        -11.024392127990723\n      ],\n      [\n        \"▁Standard\",\n        -11.024463653564453\n      ],\n      [\n        \"▁certification\",\n        -11.024677276611328\n      ],\n      [\n        \"escu\",\n        -11.024996757507324\n      ],\n      [\n        \"▁achieved\",\n        -11.025278091430664\n      ],\n      [\n        \"▁Model\",\n        -11.025280952453613\n      ],\n      [\n        \"rul\",\n        -11.025404930114746\n      ],\n      [\n        \"▁Tage\",\n        -11.025530815124512\n      ],\n      [\n        \"▁injuries\",\n        -11.02560806274414\n      ],\n      [\n        \"▁Sal\",\n        -11.025671005249023\n      ],\n      [\n        \"▁expenses\",\n        -11.025887489318848\n      ],\n      [\n        \"▁cet\",\n        -11.026009559631348\n      ],\n      [\n        \"▁taxes\",\n        -11.026028633117676\n      ],\n      [\n        \"diesen\",\n        -11.02626895904541\n      ],\n      [\n        \"▁fairly\",\n        -11.026638984680176\n      ],\n      [\n        \"▁Access\",\n        -11.026866912841797\n      ],\n      [\n        \"wind\",\n        -11.027122497558594\n      ],\n      [\n        \"IM\",\n        -11.027252197265625\n      ],\n      [\n        \"ense\",\n        -11.027548789978027\n      ],\n      [\n        \"▁hang\",\n        -11.027957916259766\n      ],\n      [\n        \"▁citizens\",\n        -11.028020858764648\n      ],\n      [\n        \"3%\",\n        -11.028101921081543\n      ],\n      [\n        \"lum\",\n        -11.028268814086914\n      ],\n      [\n        \"▁discussed\",\n        -11.028326034545898\n      ],\n      [\n        \"AC\",\n        -11.02841854095459\n      ],\n      [\n        \"‘\",\n        -11.0286865234375\n      ],\n      [\n        \"▁Sol\",\n        -11.028698921203613\n      ],\n      [\n        \"06\",\n        -11.028816223144531\n      ],\n      [\n        \"stellen\",\n        -11.029170989990234\n      ],\n      [\n        \"▁participation\",\n        -11.02917194366455\n      ],\n      [\n        \"▁Box\",\n        -11.029200553894043\n      ],\n      [\n        \"▁bieten\",\n        -11.029687881469727\n      ],\n      [\n        \"▁Louis\",\n        -11.029730796813965\n      ],\n      [\n        \"▁lessons\",\n        -11.029789924621582\n      ],\n      [\n        \"▁visible\",\n        -11.029966354370117\n      ],\n      [\n        \"▁Cam\",\n        -11.030128479003906\n      ],\n      [\n        \"▁Ban\",\n        -11.03053092956543\n      ],\n      [\n        \"▁Far\",\n        -11.03060245513916\n      ],\n      [\n        \"▁travers\",\n        -11.030759811401367\n      ],\n      [\n        \"▁telling\",\n        -11.030808448791504\n      ],\n      [\n        \"▁magic\",\n        -11.030855178833008\n      ],\n      [\n        \"▁Night\",\n        -11.031316757202148\n      ],\n      [\n        \"▁judge\",\n        -11.031400680541992\n      ],\n      [\n        \"▁Pat\",\n        -11.031482696533203\n      ],\n      [\n        \"▁Southern\",\n        -11.031901359558105\n      ],\n      [\n        \"OL\",\n        -11.031929969787598\n      ],\n      [\n        \"fully\",\n        -11.032191276550293\n      ],\n      [\n        \"▁acestea\",\n        -11.03223705291748\n      ],\n      [\n        \"▁Order\",\n        -11.032383918762207\n      ],\n      [\n        \"▁facut\",\n        -11.032523155212402\n      ],\n      [\n        \"▁Matt\",\n        -11.032600402832031\n      ],\n      [\n        \"registr\",\n        -11.03278923034668\n      ],\n      [\n        \"▁Yet\",\n        -11.032811164855957\n      ],\n      [\n        \"ß\",\n        -11.033596992492676\n      ],\n      [\n        \"▁făcut\",\n        -11.033618927001953\n      ],\n      [\n        \"▁versions\",\n        -11.033780097961426\n      ],\n      [\n        \"▁Force\",\n        -11.03396224975586\n      ],\n      [\n        \"rick\",\n        -11.034153938293457\n      ],\n      [\n        \"▁rund\",\n        -11.034563064575195\n      ],\n      [\n        \"ike\",\n        -11.034658432006836\n      ],\n      [\n        \"▁Young\",\n        -11.034675598144531\n      ],\n      [\n        \"▁ski\",\n        -11.034927368164062\n      ],\n      [\n        \"CU\",\n        -11.035385131835938\n      ],\n      [\n        \"▁Second\",\n        -11.035510063171387\n      ],\n      [\n        \"▁graduate\",\n        -11.03554916381836\n      ],\n      [\n        \"▁Bible\",\n        -11.036049842834473\n      ],\n      [\n        \"▁vary\",\n        -11.036060333251953\n      ],\n      [\n        \"▁celebration\",\n        -11.036151885986328\n      ],\n      [\n        \"▁risks\",\n        -11.036210060119629\n      ],\n      [\n        \"erii\",\n        -11.036327362060547\n      ],\n      [\n        \"rance\",\n        -11.036577224731445\n      ],\n      [\n        \"▁MP\",\n        -11.036787986755371\n      ],\n      [\n        \"▁tale\",\n        -11.036788940429688\n      ],\n      [\n        \"▁Ford\",\n        -11.037044525146484\n      ],\n      [\n        \"▁attached\",\n        -11.037278175354004\n      ],\n      [\n        \"▁Sy\",\n        -11.037312507629395\n      ],\n      [\n        \"▁Ly\",\n        -11.03765869140625\n      ],\n      [\n        \"stellung\",\n        -11.037687301635742\n      ],\n      [\n        \"▁trop\",\n        -11.0377197265625\n      ],\n      [\n        \"▁années\",\n        -11.037736892700195\n      ],\n      [\n        \"▁linked\",\n        -11.03792667388916\n      ],\n      [\n        \"pit\",\n        -11.038352012634277\n      ],\n      [\n        \"So\",\n        -11.03835391998291\n      ],\n      [\n        \"ţe\",\n        -11.038473129272461\n      ],\n      [\n        \"▁origin\",\n        -11.038509368896484\n      ],\n      [\n        \"▁boys\",\n        -11.039263725280762\n      ],\n      [\n        \"holder\",\n        -11.039352416992188\n      ],\n      [\n        \"read\",\n        -11.039461135864258\n      ],\n      [\n        \"▁relative\",\n        -11.03950023651123\n      ],\n      [\n        \"▁industries\",\n        -11.03958511352539\n      ],\n      [\n        \"making\",\n        -11.039688110351562\n      ],\n      [\n        \"▁tun\",\n        -11.039917945861816\n      ],\n      [\n        \"▁forced\",\n        -11.041061401367188\n      ],\n      [\n        \"▁Welcome\",\n        -11.041086196899414\n      ],\n      [\n        \"▁explained\",\n        -11.041138648986816\n      ],\n      [\n        \"MP\",\n        -11.041389465332031\n      ],\n      [\n        \"▁Three\",\n        -11.041613578796387\n      ],\n      [\n        \"aza\",\n        -11.041768074035645\n      ],\n      [\n        \"▁1999\",\n        -11.041924476623535\n      ],\n      [\n        \"▁erst\",\n        -11.042237281799316\n      ],\n      [\n        \"RS\",\n        -11.042623519897461\n      ],\n      [\n        \"▁attractive\",\n        -11.04279899597168\n      ],\n      [\n        \"▁visited\",\n        -11.042805671691895\n      ],\n      [\n        \"▁nom\",\n        -11.042874336242676\n      ],\n      [\n        \"▁drum\",\n        -11.042933464050293\n      ],\n      [\n        \"cast\",\n        -11.043068885803223\n      ],\n      [\n        \"ogen\",\n        -11.043105125427246\n      ],\n      [\n        \"▁tech\",\n        -11.04360294342041\n      ],\n      [\n        \"▁Comment\",\n        -11.043664932250977\n      ],\n      [\n        \"▁Little\",\n        -11.04405689239502\n      ],\n      [\n        \"▁suggested\",\n        -11.044086456298828\n      ],\n      [\n        \"▁gar\",\n        -11.044205665588379\n      ],\n      [\n        \"▁crack\",\n        -11.04458999633789\n      ],\n      [\n        \"▁shooting\",\n        -11.044676780700684\n      ],\n      [\n        \"▁Try\",\n        -11.044759750366211\n      ],\n      [\n        \"▁Remember\",\n        -11.045008659362793\n      ],\n      [\n        \"▁folks\",\n        -11.045217514038086\n      ],\n      [\n        \"▁MS\",\n        -11.045512199401855\n      ],\n      [\n        \"▁Dia\",\n        -11.04584789276123\n      ],\n      [\n        \"3)\",\n        -11.046561241149902\n      ],\n      [\n        \"arbeit\",\n        -11.04697036743164\n      ],\n      [\n        \"▁pepper\",\n        -11.047065734863281\n      ],\n      [\n        \"zz\",\n        -11.047107696533203\n      ],\n      [\n        \"▁extreme\",\n        -11.047235488891602\n      ],\n      [\n        \"▁extrem\",\n        -11.047367095947266\n      ],\n      [\n        \"▁severe\",\n        -11.047768592834473\n      ],\n      [\n        \"▁networks\",\n        -11.047882080078125\n      ],\n      [\n        \"păr\",\n        -11.047910690307617\n      ],\n      [\n        \"sent\",\n        -11.047933578491211\n      ],\n      [\n        \"▁structures\",\n        -11.048048973083496\n      ],\n      [\n        \"▁Join\",\n        -11.048078536987305\n      ],\n      [\n        \"▁privind\",\n        -11.048255920410156\n      ],\n      [\n        \"▁marriage\",\n        -11.04865837097168\n      ],\n      [\n        \"▁liegt\",\n        -11.048918724060059\n      ],\n      [\n        \"eben\",\n        -11.048995971679688\n      ],\n      [\n        \"▁produse\",\n        -11.049076080322266\n      ],\n      [\n        \"▁tested\",\n        -11.049090385437012\n      ],\n      [\n        \"▁Queen\",\n        -11.049134254455566\n      ],\n      [\n        \"▁Tax\",\n        -11.049687385559082\n      ],\n      [\n        \"rian\",\n        -11.049710273742676\n      ],\n      [\n        \"▁Problem\",\n        -11.050151824951172\n      ],\n      [\n        \"izat\",\n        -11.05023193359375\n      ],\n      [\n        \"udi\",\n        -11.050324440002441\n      ],\n      [\n        \"▁LA\",\n        -11.050718307495117\n      ],\n      [\n        \"▁afford\",\n        -11.051108360290527\n      ],\n      [\n        \"▁percentage\",\n        -11.05121898651123\n      ],\n      [\n        \"▁cute\",\n        -11.051547050476074\n      ],\n      [\n        \"▁gorgeous\",\n        -11.051891326904297\n      ],\n      [\n        \"▁indoor\",\n        -11.05190372467041\n      ],\n      [\n        \"▁configuration\",\n        -11.052103042602539\n      ],\n      [\n        \"▁immediate\",\n        -11.052303314208984\n      ],\n      [\n        \"▁exemple\",\n        -11.052450180053711\n      ],\n      [\n        \"▁Being\",\n        -11.052550315856934\n      ],\n      [\n        \"▁introduction\",\n        -11.052591323852539\n      ],\n      [\n        \"ella\",\n        -11.053206443786621\n      ],\n      [\n        \"bare\",\n        -11.053521156311035\n      ],\n      [\n        \"▁besser\",\n        -11.053539276123047\n      ],\n      [\n        \"▁Put\",\n        -11.053740501403809\n      ],\n      [\n        \"gon\",\n        -11.054248809814453\n      ],\n      [\n        \"▁Italy\",\n        -11.054259300231934\n      ],\n      [\n        \"▁Thus\",\n        -11.05435562133789\n      ],\n      [\n        \"tari\",\n        -11.054437637329102\n      ],\n      [\n        \"0.000\",\n        -11.054460525512695\n      ],\n      [\n        \"▁Price\",\n        -11.054651260375977\n      ],\n      [\n        \"▁Trust\",\n        -11.054824829101562\n      ],\n      [\n        \"▁contra\",\n        -11.054863929748535\n      ],\n      [\n        \"▁layout\",\n        -11.05504035949707\n      ],\n      [\n        \"▁Ireland\",\n        -11.055187225341797\n      ],\n      [\n        \"ctor\",\n        -11.055344581604004\n      ],\n      [\n        \"atoare\",\n        -11.055540084838867\n      ],\n      [\n        \"pra\",\n        -11.055729866027832\n      ],\n      [\n        \"rent\",\n        -11.055892944335938\n      ],\n      [\n        \"▁Seite\",\n        -11.05605411529541\n      ],\n      [\n        \"▁ori\",\n        -11.056280136108398\n      ],\n      [\n        \"spiel\",\n        -11.056541442871094\n      ],\n      [\n        \"▁Times\",\n        -11.056883811950684\n      ],\n      [\n        \"primarily\",\n        -11.056974411010742\n      ],\n      [\n        \"nov\",\n        -11.05703067779541\n      ],\n      [\n        \"▁desired\",\n        -11.057061195373535\n      ],\n      [\n        \"▁Would\",\n        -11.057072639465332\n      ],\n      [\n        \"PL\",\n        -11.057225227355957\n      ],\n      [\n        \"▁originally\",\n        -11.057367324829102\n      ],\n      [\n        \"▁Ana\",\n        -11.057463645935059\n      ],\n      [\n        \"EN\",\n        -11.05754566192627\n      ],\n      [\n        \"▁occasion\",\n        -11.05755615234375\n      ],\n      [\n        \"▁grant\",\n        -11.057572364807129\n      ],\n      [\n        \"igkeit\",\n        -11.057975769042969\n      ],\n      [\n        \"▁scheme\",\n        -11.058146476745605\n      ],\n      [\n        \"▁2015.\",\n        -11.058621406555176\n      ],\n      [\n        \"izare\",\n        -11.058778762817383\n      ],\n      [\n        \"gate\",\n        -11.058792114257812\n      ],\n      [\n        \"▁poker\",\n        -11.058899879455566\n      ],\n      [\n        \"pping\",\n        -11.058998107910156\n      ],\n      [\n        \"▁Wild\",\n        -11.059511184692383\n      ],\n      [\n        \"▁YouTube\",\n        -11.059995651245117\n      ],\n      [\n        \"▁assume\",\n        -11.060284614562988\n      ],\n      [\n        \"с\",\n        -11.060614585876465\n      ],\n      [\n        \"▁rapport\",\n        -11.060623168945312\n      ],\n      [\n        \"▁labor\",\n        -11.060996055603027\n      ],\n      [\n        \"teur\",\n        -11.061041831970215\n      ],\n      [\n        \"▁genre\",\n        -11.06116008758545\n      ],\n      [\n        \"▁plat\",\n        -11.061745643615723\n      ],\n      [\n        \"▁listening\",\n        -11.061750411987305\n      ],\n      [\n        \"sky\",\n        -11.061777114868164\n      ],\n      [\n        \"▁neighborhood\",\n        -11.061782836914062\n      ],\n      [\n        \"▁3-\",\n        -11.062150001525879\n      ],\n      [\n        \"▁Library\",\n        -11.062162399291992\n      ],\n      [\n        \"agit\",\n        -11.062249183654785\n      ],\n      [\n        \"▁platforms\",\n        -11.062849998474121\n      ],\n      [\n        \"bei\",\n        -11.062882423400879\n      ],\n      [\n        \"AB\",\n        -11.062897682189941\n      ],\n      [\n        \"▁manufacturers\",\n        -11.06295394897461\n      ],\n      [\n        \"▁printing\",\n        -11.063141822814941\n      ],\n      [\n        \"▁crisis\",\n        -11.063326835632324\n      ],\n      [\n        \"▁Smart\",\n        -11.06335163116455\n      ],\n      [\n        \"▁drawing\",\n        -11.063406944274902\n      ],\n      [\n        \"MO\",\n        -11.06348991394043\n      ],\n      [\n        \"▁durable\",\n        -11.063569068908691\n      ],\n      [\n        \"chant\",\n        -11.0636625289917\n      ],\n      [\n        \"▁chemical\",\n        -11.063764572143555\n      ],\n      [\n        \"▁savoir\",\n        -11.063776016235352\n      ],\n      [\n        \"▁Max\",\n        -11.063802719116211\n      ],\n      [\n        \"gestellt\",\n        -11.06380844116211\n      ],\n      [\n        \"▁rural\",\n        -11.063854217529297\n      ],\n      [\n        \"52\",\n        -11.064105033874512\n      ],\n      [\n        \"▁invited\",\n        -11.064169883728027\n      ],\n      [\n        \"▁fil\",\n        -11.0642728805542\n      ],\n      [\n        \"▁Rob\",\n        -11.064284324645996\n      ],\n      [\n        \"▁Bell\",\n        -11.064387321472168\n      ],\n      [\n        \"▁neck\",\n        -11.064831733703613\n      ],\n      [\n        \"pac\",\n        -11.064879417419434\n      ],\n      [\n        \"wal\",\n        -11.06491470336914\n      ],\n      [\n        \"▁là\",\n        -11.064922332763672\n      ],\n      [\n        \"▁Virginia\",\n        -11.065081596374512\n      ],\n      [\n        \"▁applicable\",\n        -11.06509017944336\n      ],\n      [\n        \"▁abuse\",\n        -11.065153121948242\n      ],\n      [\n        \"aide\",\n        -11.065321922302246\n      ],\n      [\n        \"▁increases\",\n        -11.065396308898926\n      ],\n      [\n        \"▁moi\",\n        -11.065568923950195\n      ],\n      [\n        \"▁Non\",\n        -11.065577507019043\n      ],\n      [\n        \"▁Produkt\",\n        -11.065627098083496\n      ],\n      [\n        \"FC\",\n        -11.065644264221191\n      ],\n      [\n        \"▁shops\",\n        -11.065677642822266\n      ],\n      [\n        \"▁prendre\",\n        -11.065923690795898\n      ],\n      [\n        \"atul\",\n        -11.065990447998047\n      ],\n      [\n        \"▁sal\",\n        -11.066137313842773\n      ],\n      [\n        \"▁société\",\n        -11.06627082824707\n      ],\n      [\n        \"▁Hot\",\n        -11.066329002380371\n      ],\n      [\n        \"rim\",\n        -11.066587448120117\n      ],\n      [\n        \"gue\",\n        -11.06661605834961\n      ],\n      [\n        \"▁enterprise\",\n        -11.066624641418457\n      ],\n      [\n        \"▁33\",\n        -11.067329406738281\n      ],\n      [\n        \"mittel\",\n        -11.067395210266113\n      ],\n      [\n        \"ged\",\n        -11.067439079284668\n      ],\n      [\n        \"▁formula\",\n        -11.06777286529541\n      ],\n      [\n        \"▁spin\",\n        -11.067784309387207\n      ],\n      [\n        \"als\",\n        -11.067826271057129\n      ],\n      [\n        \"2%\",\n        -11.06785774230957\n      ],\n      [\n        \"bon\",\n        -11.068192481994629\n      ],\n      [\n        \"▁Executive\",\n        -11.068323135375977\n      ],\n      [\n        \"▁wirklich\",\n        -11.068427085876465\n      ],\n      [\n        \"îl\",\n        -11.068608283996582\n      ],\n      [\n        \"1.\",\n        -11.068917274475098\n      ],\n      [\n        \"▁Arm\",\n        -11.069157600402832\n      ],\n      [\n        \"▁rid\",\n        -11.069358825683594\n      ],\n      [\n        \"aries\",\n        -11.069727897644043\n      ],\n      [\n        \"▁incident\",\n        -11.06982421875\n      ],\n      [\n        \"▁copii\",\n        -11.070008277893066\n      ],\n      [\n        \"▁Charles\",\n        -11.070141792297363\n      ],\n      [\n        \"▁meals\",\n        -11.070147514343262\n      ],\n      [\n        \"▁wireless\",\n        -11.070237159729004\n      ],\n      [\n        \"Ex\",\n        -11.070364952087402\n      ],\n      [\n        \"▁Financial\",\n        -11.070540428161621\n      ],\n      [\n        \"▁AM\",\n        -11.070615768432617\n      ],\n      [\n        \"▁fest\",\n        -11.070645332336426\n      ],\n      [\n        \"▁Ol\",\n        -11.071410179138184\n      ],\n      [\n        \"oir\",\n        -11.071447372436523\n      ],\n      [\n        \"300\",\n        -11.071893692016602\n      ],\n      [\n        \"▁punct\",\n        -11.072138786315918\n      ],\n      [\n        \"▁Mad\",\n        -11.07283878326416\n      ],\n      [\n        \"▁Ali\",\n        -11.072907447814941\n      ],\n      [\n        \"lag\",\n        -11.073214530944824\n      ],\n      [\n        \"▁ocean\",\n        -11.073314666748047\n      ],\n      [\n        \"▁mirror\",\n        -11.073326110839844\n      ],\n      [\n        \"▁Additionally\",\n        -11.073869705200195\n      ],\n      [\n        \"alia\",\n        -11.073884963989258\n      ],\n      [\n        \"▁county\",\n        -11.073899269104004\n      ],\n      [\n        \"▁hip\",\n        -11.074305534362793\n      ],\n      [\n        \"dale\",\n        -11.074395179748535\n      ],\n      [\n        \"▁Stra\",\n        -11.074429512023926\n      ],\n      [\n        \"▁drag\",\n        -11.074575424194336\n      ],\n      [\n        \"▁Sand\",\n        -11.074851036071777\n      ],\n      [\n        \"▁historic\",\n        -11.074980735778809\n      ],\n      [\n        \"ière\",\n        -11.075427055358887\n      ],\n      [\n        \"▁examine\",\n        -11.075624465942383\n      ],\n      [\n        \"soci\",\n        -11.075634002685547\n      ],\n      [\n        \"ime\",\n        -11.076088905334473\n      ],\n      [\n        \"▁Insurance\",\n        -11.07621955871582\n      ],\n      [\n        \"▁crime\",\n        -11.076736450195312\n      ],\n      [\n        \"▁pare\",\n        -11.076945304870605\n      ],\n      [\n        \"▁craft\",\n        -11.077105522155762\n      ],\n      [\n        \"▁Building\",\n        -11.077279090881348\n      ],\n      [\n        \"mission\",\n        -11.077534675598145\n      ],\n      [\n        \"▁Americans\",\n        -11.077573776245117\n      ],\n      [\n        \"▁mg\",\n        -11.077799797058105\n      ],\n      [\n        \"▁passage\",\n        -11.077938079833984\n      ],\n      [\n        \"▁deposit\",\n        -11.078346252441406\n      ],\n      [\n        \"▁widely\",\n        -11.078444480895996\n      ],\n      [\n        \"nch\",\n        -11.078453063964844\n      ],\n      [\n        \"▁Coast\",\n        -11.078756332397461\n      ],\n      [\n        \"▁recipes\",\n        -11.078784942626953\n      ],\n      [\n        \"▁Ziel\",\n        -11.07951545715332\n      ],\n      [\n        \"▁duty\",\n        -11.079646110534668\n      ],\n      [\n        \"▁gerne\",\n        -11.079704284667969\n      ],\n      [\n        \"most\",\n        -11.080034255981445\n      ],\n      [\n        \"▁argument\",\n        -11.080158233642578\n      ],\n      [\n        \"▁root\",\n        -11.08021354675293\n      ],\n      [\n        \"▁consult\",\n        -11.08024787902832\n      ],\n      [\n        \"▁muscle\",\n        -11.080255508422852\n      ],\n      [\n        \"▁spoke\",\n        -11.08038330078125\n      ],\n      [\n        \"▁Cum\",\n        -11.080950736999512\n      ],\n      [\n        \"▁orange\",\n        -11.081033706665039\n      ],\n      [\n        \"▁reader\",\n        -11.081123352050781\n      ],\n      [\n        \"schw\",\n        -11.081151008605957\n      ],\n      [\n        \"▁commission\",\n        -11.081332206726074\n      ],\n      [\n        \"histoire\",\n        -11.081811904907227\n      ],\n      [\n        \"▁represents\",\n        -11.082064628601074\n      ],\n      [\n        \"▁meilleur\",\n        -11.082343101501465\n      ],\n      [\n        \"▁10.\",\n        -11.082358360290527\n      ],\n      [\n        \"HA\",\n        -11.082427024841309\n      ],\n      [\n        \"▁Systems\",\n        -11.082573890686035\n      ],\n      [\n        \"▁blind\",\n        -11.082603454589844\n      ],\n      [\n        \"▁HP\",\n        -11.083221435546875\n      ],\n      [\n        \"▁doi\",\n        -11.083307266235352\n      ],\n      [\n        \"▁signature\",\n        -11.083404541015625\n      ],\n      [\n        \"▁invite\",\n        -11.083505630493164\n      ],\n      [\n        \"▁Samsung\",\n        -11.083802223205566\n      ],\n      [\n        \"▁liber\",\n        -11.083942413330078\n      ],\n      [\n        \"▁letters\",\n        -11.0840482711792\n      ],\n      [\n        \"▁primul\",\n        -11.084186553955078\n      ],\n      [\n        \"▁losing\",\n        -11.084328651428223\n      ],\n      [\n        \"resulting\",\n        -11.084467887878418\n      ],\n      [\n        \"▁Computer\",\n        -11.08474063873291\n      ],\n      [\n        \"▁poll\",\n        -11.0847749710083\n      ],\n      [\n        \"rile\",\n        -11.085102081298828\n      ],\n      [\n        \"TI\",\n        -11.085142135620117\n      ],\n      [\n        \"▁cur\",\n        -11.08566951751709\n      ],\n      [\n        \"▁fonction\",\n        -11.085833549499512\n      ],\n      [\n        \"gat\",\n        -11.086359977722168\n      ],\n      [\n        \"AA\",\n        -11.086480140686035\n      ],\n      [\n        \"tiv\",\n        -11.086692810058594\n      ],\n      [\n        \"▁Str\",\n        -11.087076187133789\n      ],\n      [\n        \"ești\",\n        -11.087677955627441\n      ],\n      [\n        \"▁officer\",\n        -11.0877046585083\n      ],\n      [\n        \"reducing\",\n        -11.08772087097168\n      ],\n      [\n        \"▁gifts\",\n        -11.08780288696289\n      ],\n      [\n        \"▁performing\",\n        -11.08788776397705\n      ],\n      [\n        \"▁»,\",\n        -11.088349342346191\n      ],\n      [\n        \"▁guitar\",\n        -11.08838939666748\n      ],\n      [\n        \"▁segment\",\n        -11.088580131530762\n      ],\n      [\n        \"▁Tar\",\n        -11.08861255645752\n      ],\n      [\n        \"▁ultimately\",\n        -11.088805198669434\n      ],\n      [\n        \"▁cam\",\n        -11.088960647583008\n      ],\n      [\n        \"▁Arbeit\",\n        -11.089076042175293\n      ],\n      [\n        \"▁accessories\",\n        -11.089418411254883\n      ],\n      [\n        \"bad\",\n        -11.089820861816406\n      ],\n      [\n        \"home\",\n        -11.0899019241333\n      ],\n      [\n        \"▁clip\",\n        -11.08995532989502\n      ],\n      [\n        \"range\",\n        -11.090432167053223\n      ],\n      [\n        \"CM\",\n        -11.090867042541504\n      ],\n      [\n        \"▁printed\",\n        -11.090883255004883\n      ],\n      [\n        \"▁Pet\",\n        -11.091177940368652\n      ],\n      [\n        \"▁attract\",\n        -11.091333389282227\n      ],\n      [\n        \"date\",\n        -11.091501235961914\n      ],\n      [\n        \"▁Senior\",\n        -11.091503143310547\n      ],\n      [\n        \"▁genau\",\n        -11.092177391052246\n      ],\n      [\n        \"num\",\n        -11.092435836791992\n      ],\n      [\n        \"▁attended\",\n        -11.092674255371094\n      ],\n      [\n        \"▁Turn\",\n        -11.092824935913086\n      ],\n      [\n        \"▁History\",\n        -11.092830657958984\n      ],\n      [\n        \"some\",\n        -11.092852592468262\n      ],\n      [\n        \"▁describe\",\n        -11.09308910369873\n      ],\n      [\n        \"▁Lee\",\n        -11.093143463134766\n      ],\n      [\n        \"▁Fre\",\n        -11.093314170837402\n      ],\n      [\n        \"▁league\",\n        -11.093345642089844\n      ],\n      [\n        \"new\",\n        -11.093505859375\n      ],\n      [\n        \"tors\",\n        -11.093535423278809\n      ],\n      [\n        \"▁storm\",\n        -11.094005584716797\n      ],\n      [\n        \"▁Beispiel\",\n        -11.094197273254395\n      ],\n      [\n        \"▁index\",\n        -11.094344139099121\n      ],\n      [\n        \"▁awarded\",\n        -11.094613075256348\n      ],\n      [\n        \"state\",\n        -11.094625473022461\n      ],\n      [\n        \"▁1990\",\n        -11.094874382019043\n      ],\n      [\n        \"▁ends\",\n        -11.094902992248535\n      ],\n      [\n        \"kor\",\n        -11.095070838928223\n      ],\n      [\n        \"far\",\n        -11.095418930053711\n      ],\n      [\n        \"▁Page\",\n        -11.095541000366211\n      ],\n      [\n        \"▁promotion\",\n        -11.095610618591309\n      ],\n      [\n        \"▁weekly\",\n        -11.095726013183594\n      ],\n      [\n        \"400\",\n        -11.095966339111328\n      ],\n      [\n        \"iuni\",\n        -11.096365928649902\n      ],\n      [\n        \"▁Summer\",\n        -11.096376419067383\n      ],\n      [\n        \"▁thin\",\n        -11.096627235412598\n      ],\n      [\n        \"▁dafür\",\n        -11.09669303894043\n      ],\n      [\n        \"51\",\n        -11.096769332885742\n      ],\n      [\n        \"PR\",\n        -11.096978187561035\n      ],\n      [\n        \"▁Hy\",\n        -11.097001075744629\n      ],\n      [\n        \"gas\",\n        -11.097013473510742\n      ],\n      [\n        \"▁atat\",\n        -11.097166061401367\n      ],\n      [\n        \"▁mining\",\n        -11.097347259521484\n      ],\n      [\n        \"▁principles\",\n        -11.09741497039795\n      ],\n      [\n        \"gent\",\n        -11.097545623779297\n      ],\n      [\n        \"ika\",\n        -11.097685813903809\n      ],\n      [\n        \"▁religion\",\n        -11.097787857055664\n      ],\n      [\n        \"▁ordered\",\n        -11.098284721374512\n      ],\n      [\n        \"▁developers\",\n        -11.098298072814941\n      ],\n      [\n        \"▁pleasure\",\n        -11.098456382751465\n      ],\n      [\n        \"vit\",\n        -11.098505020141602\n      ],\n      [\n        \"mers\",\n        -11.0988130569458\n      ],\n      [\n        \"▁Section\",\n        -11.098873138427734\n      ],\n      [\n        \"▁por\",\n        -11.098960876464844\n      ],\n      [\n        \"▁Name\",\n        -11.099200248718262\n      ],\n      [\n        \"▁pink\",\n        -11.099260330200195\n      ],\n      [\n        \"dig\",\n        -11.09934139251709\n      ],\n      [\n        \"▁eligible\",\n        -11.099397659301758\n      ],\n      [\n        \"▁Happy\",\n        -11.09941577911377\n      ],\n      [\n        \"▁fo\",\n        -11.099480628967285\n      ],\n      [\n        \"▁availability\",\n        -11.099541664123535\n      ],\n      [\n        \"GO\",\n        -11.099583625793457\n      ],\n      [\n        \"▁Europa\",\n        -11.099637985229492\n      ],\n      [\n        \"▁Unit\",\n        -11.099656105041504\n      ],\n      [\n        \"▁1000\",\n        -11.099837303161621\n      ],\n      [\n        \"▁Berg\",\n        -11.099846839904785\n      ],\n      [\n        \"fini\",\n        -11.099853515625\n      ],\n      [\n        \"▁$3\",\n        -11.100565910339355\n      ],\n      [\n        \"iza\",\n        -11.100749969482422\n      ],\n      [\n        \"▁promo\",\n        -11.100830078125\n      ],\n      [\n        \"▁Low\",\n        -11.101234436035156\n      ],\n      [\n        \"abord\",\n        -11.101326942443848\n      ],\n      [\n        \"äh\",\n        -11.101485252380371\n      ],\n      [\n        \"▁Professor\",\n        -11.101570129394531\n      ],\n      [\n        \"▁array\",\n        -11.101579666137695\n      ],\n      [\n        \"▁hate\",\n        -11.101594924926758\n      ],\n      [\n        \"▁recording\",\n        -11.101601600646973\n      ],\n      [\n        \"RI\",\n        -11.101649284362793\n      ],\n      [\n        \"▁proof\",\n        -11.101710319519043\n      ],\n      [\n        \"lay\",\n        -11.10185718536377\n      ],\n      [\n        \"DE\",\n        -11.102007865905762\n      ],\n      [\n        \"▁surprised\",\n        -11.102066040039062\n      ],\n      [\n        \"▁boxes\",\n        -11.102193832397461\n      ],\n      [\n        \"▁noastre\",\n        -11.102386474609375\n      ],\n      [\n        \"zie\",\n        -11.102387428283691\n      ],\n      [\n        \"▁însă\",\n        -11.10254192352295\n      ],\n      [\n        \"▁ajuta\",\n        -11.102783203125\n      ],\n      [\n        \"▁weil\",\n        -11.1028413772583\n      ],\n      [\n        \"▁whenever\",\n        -11.103026390075684\n      ],\n      [\n        \"shi\",\n        -11.103194236755371\n      ],\n      [\n        \"satz\",\n        -11.103605270385742\n      ],\n      [\n        \"▁remind\",\n        -11.10401725769043\n      ],\n      [\n        \"▁consist\",\n        -11.10412311553955\n      ],\n      [\n        \"▁motiv\",\n        -11.104240417480469\n      ],\n      [\n        \"▁PS\",\n        -11.1043062210083\n      ],\n      [\n        \"▁trois\",\n        -11.104543685913086\n      ],\n      [\n        \"pad\",\n        -11.10477352142334\n      ],\n      [\n        \"▁besten\",\n        -11.104904174804688\n      ],\n      [\n        \"▁Stone\",\n        -11.105140686035156\n      ],\n      [\n        \"itz\",\n        -11.105157852172852\n      ],\n      [\n        \"fit\",\n        -11.105164527893066\n      ],\n      [\n        \"▁Mountain\",\n        -11.105178833007812\n      ],\n      [\n        \"OC\",\n        -11.10519027709961\n      ],\n      [\n        \"▁depends\",\n        -11.105228424072266\n      ],\n      [\n        \"▁Cover\",\n        -11.105387687683105\n      ],\n      [\n        \"▁bags\",\n        -11.106058120727539\n      ],\n      [\n        \"▁Bel\",\n        -11.106199264526367\n      ],\n      [\n        \"▁Engineering\",\n        -11.106304168701172\n      ],\n      [\n        \"▁flower\",\n        -11.106647491455078\n      ],\n      [\n        \"▁gratuit\",\n        -11.106670379638672\n      ],\n      [\n        \"▁smartphone\",\n        -11.106780052185059\n      ],\n      [\n        \"stan\",\n        -11.107197761535645\n      ],\n      [\n        \"spect\",\n        -11.10726261138916\n      ],\n      [\n        \"SL\",\n        -11.107282638549805\n      ],\n      [\n        \"sho\",\n        -11.10738754272461\n      ],\n      [\n        \"▁Ser\",\n        -11.10791301727295\n      ],\n      [\n        \"▁Perhaps\",\n        -11.108247756958008\n      ],\n      [\n        \"▁codes\",\n        -11.108342170715332\n      ],\n      [\n        \"▁Wind\",\n        -11.10849666595459\n      ],\n      [\n        \"aient\",\n        -11.108757019042969\n      ],\n      [\n        \"▁Prin\",\n        -11.108802795410156\n      ],\n      [\n        \"▁(1)\",\n        -11.109090805053711\n      ],\n      [\n        \"▁figures\",\n        -11.109450340270996\n      ],\n      [\n        \"▁ausge\",\n        -11.10972785949707\n      ],\n      [\n        \"▁episode\",\n        -11.110050201416016\n      ],\n      [\n        \"▁Spa\",\n        -11.110370635986328\n      ],\n      [\n        \"▁Silver\",\n        -11.110386848449707\n      ],\n      [\n        \"▁Sky\",\n        -11.110396385192871\n      ],\n      [\n        \"▁capabilities\",\n        -11.1107177734375\n      ],\n      [\n        \"▁Uni\",\n        -11.11073112487793\n      ],\n      [\n        \"▁încă\",\n        -11.110876083374023\n      ],\n      [\n        \"TO\",\n        -11.111289978027344\n      ],\n      [\n        \"▁Hal\",\n        -11.111358642578125\n      ],\n      [\n        \"ghi\",\n        -11.111414909362793\n      ],\n      [\n        \"▁sofa\",\n        -11.111438751220703\n      ],\n      [\n        \"hard\",\n        -11.11150074005127\n      ],\n      [\n        \"▁FOR\",\n        -11.111587524414062\n      ],\n      [\n        \"▁Ber\",\n        -11.111820220947266\n      ],\n      [\n        \"▁firms\",\n        -11.11187744140625\n      ],\n      [\n        \"▁memories\",\n        -11.111883163452148\n      ],\n      [\n        \"▁lift\",\n        -11.11214542388916\n      ],\n      [\n        \"▁sending\",\n        -11.11214542388916\n      ],\n      [\n        \"▁narrow\",\n        -11.112646102905273\n      ],\n      [\n        \"▁Steve\",\n        -11.112784385681152\n      ],\n      [\n        \"▁integration\",\n        -11.112905502319336\n      ],\n      [\n        \"known\",\n        -11.113122940063477\n      ],\n      [\n        \"▁nostru\",\n        -11.113237380981445\n      ],\n      [\n        \"iţi\",\n        -11.113422393798828\n      ],\n      [\n        \"▁Georgia\",\n        -11.113759994506836\n      ],\n      [\n        \"▁slowly\",\n        -11.114026069641113\n      ],\n      [\n        \"iere\",\n        -11.114028930664062\n      ],\n      [\n        \"aka\",\n        -11.114255905151367\n      ],\n      [\n        \"PE\",\n        -11.114320755004883\n      ],\n      [\n        \"▁venue\",\n        -11.11468505859375\n      ],\n      [\n        \"jar\",\n        -11.11474609375\n      ],\n      [\n        \"buch\",\n        -11.114755630493164\n      ],\n      [\n        \"rad\",\n        -11.114858627319336\n      ],\n      [\n        \"▁resistance\",\n        -11.114899635314941\n      ],\n      [\n        \"▁stehen\",\n        -11.114914894104004\n      ],\n      [\n        \"chin\",\n        -11.11504077911377\n      ],\n      [\n        \"▁weak\",\n        -11.11535358428955\n      ],\n      [\n        \"▁DVD\",\n        -11.115598678588867\n      ],\n      [\n        \"▁bodies\",\n        -11.115856170654297\n      ],\n      [\n        \"▁split\",\n        -11.115884780883789\n      ],\n      [\n        \"What\",\n        -11.116231918334961\n      ],\n      [\n        \"setzen\",\n        -11.116467475891113\n      ],\n      [\n        \"▁loves\",\n        -11.116561889648438\n      ],\n      [\n        \"▁kleine\",\n        -11.117077827453613\n      ],\n      [\n        \"▁increasingly\",\n        -11.11746883392334\n      ],\n      [\n        \"▁alert\",\n        -11.117583274841309\n      ],\n      [\n        \"▁AC\",\n        -11.117647171020508\n      ],\n      [\n        \"▁partir\",\n        -11.117974281311035\n      ],\n      [\n        \"▁ratio\",\n        -11.11807918548584\n      ],\n      [\n        \"▁keeps\",\n        -11.118539810180664\n      ],\n      [\n        \"▁Area\",\n        -11.118544578552246\n      ],\n      [\n        \"▁données\",\n        -11.119071960449219\n      ],\n      [\n        \"▁flag\",\n        -11.119254112243652\n      ],\n      [\n        \"▁NO\",\n        -11.119277000427246\n      ],\n      [\n        \"▁hotels\",\n        -11.119336128234863\n      ],\n      [\n        \"▁debut\",\n        -11.119365692138672\n      ],\n      [\n        \"▁suffer\",\n        -11.119368553161621\n      ],\n      [\n        \"▁hidden\",\n        -11.119810104370117\n      ],\n      [\n        \"▁clothing\",\n        -11.120074272155762\n      ],\n      [\n        \"▁household\",\n        -11.120235443115234\n      ],\n      [\n        \"medi\",\n        -11.120268821716309\n      ],\n      [\n        \"▁reste\",\n        -11.120274543762207\n      ],\n      [\n        \"bro\",\n        -11.120381355285645\n      ],\n      [\n        \"▁Bus\",\n        -11.120405197143555\n      ],\n      [\n        \"▁Ken\",\n        -11.120572090148926\n      ],\n      [\n        \"IR\",\n        -11.120758056640625\n      ],\n      [\n        \"▁suffering\",\n        -11.121212005615234\n      ],\n      [\n        \"▁publication\",\n        -11.121246337890625\n      ],\n      [\n        \"▁Mat\",\n        -11.121360778808594\n      ],\n      [\n        \"▁impression\",\n        -11.121509552001953\n      ],\n      [\n        \"▁founded\",\n        -11.121562957763672\n      ],\n      [\n        \"▁stable\",\n        -11.121566772460938\n      ],\n      [\n        \"▁promise\",\n        -11.121719360351562\n      ],\n      [\n        \"▁Cloud\",\n        -11.121770858764648\n      ],\n      [\n        \"▁prison\",\n        -11.122099876403809\n      ],\n      [\n        \"cor\",\n        -11.122355461120605\n      ],\n      [\n        \"▁Sports\",\n        -11.122716903686523\n      ],\n      [\n        \"▁erste\",\n        -11.122745513916016\n      ],\n      [\n        \"shire\",\n        -11.122757911682129\n      ],\n      [\n        \"▁recommendations\",\n        -11.122916221618652\n      ],\n      [\n        \"▁permit\",\n        -11.123100280761719\n      ],\n      [\n        \"▁tomorrow\",\n        -11.123126983642578\n      ],\n      [\n        \"▁lucky\",\n        -11.123422622680664\n      ],\n      [\n        \"▁realized\",\n        -11.123449325561523\n      ],\n      [\n        \"▁famille\",\n        -11.123473167419434\n      ],\n      [\n        \"▁Zealand\",\n        -11.123542785644531\n      ],\n      [\n        \"▁wooden\",\n        -11.123601913452148\n      ],\n      [\n        \"▁east\",\n        -11.124269485473633\n      ],\n      [\n        \"▁Bereich\",\n        -11.12458324432373\n      ],\n      [\n        \"während\",\n        -11.124653816223145\n      ],\n      [\n        \"rite\",\n        -11.124836921691895\n      ],\n      [\n        \"▁fla\",\n        -11.124902725219727\n      ],\n      [\n        \"platz\",\n        -11.124991416931152\n      ],\n      [\n        \"▁zero\",\n        -11.125292778015137\n      ],\n      [\n        \"▁priority\",\n        -11.12535572052002\n      ],\n      [\n        \"▁Airport\",\n        -11.125506401062012\n      ],\n      [\n        \"▁Kauf\",\n        -11.125590324401855\n      ],\n      [\n        \"▁ultimate\",\n        -11.12601375579834\n      ],\n      [\n        \"▁chest\",\n        -11.126175880432129\n      ],\n      [\n        \"▁tone\",\n        -11.126376152038574\n      ],\n      [\n        \"▁Kal\",\n        -11.126431465148926\n      ],\n      [\n        \"▁supposed\",\n        -11.12669849395752\n      ],\n      [\n        \"▁vedere\",\n        -11.126846313476562\n      ],\n      [\n        \"▁50%\",\n        -11.126872062683105\n      ],\n      [\n        \"▁Ger\",\n        -11.127785682678223\n      ],\n      [\n        \"pack\",\n        -11.127849578857422\n      ],\n      [\n        \"▁priv\",\n        -11.128241539001465\n      ],\n      [\n        \"▁Kit\",\n        -11.128263473510742\n      ],\n      [\n        \"▁tent\",\n        -11.128457069396973\n      ],\n      [\n        \"▁guidelines\",\n        -11.128461837768555\n      ],\n      [\n        \"▁Republic\",\n        -11.128824234008789\n      ],\n      [\n        \"including\",\n        -11.129239082336426\n      ],\n      [\n        \"▁chief\",\n        -11.129615783691406\n      ],\n      [\n        \"▁Living\",\n        -11.129766464233398\n      ],\n      [\n        \"keit\",\n        -11.1298189163208\n      ],\n      [\n        \"▁convert\",\n        -11.129831314086914\n      ],\n      [\n        \"tail\",\n        -11.129928588867188\n      ],\n      [\n        \"orient\",\n        -11.129960060119629\n      ],\n      [\n        \"eigenen\",\n        -11.130245208740234\n      ],\n      [\n        \"▁soup\",\n        -11.130587577819824\n      ],\n      [\n        \"▁zona\",\n        -11.130661010742188\n      ],\n      [\n        \"▁composition\",\n        -11.130690574645996\n      ],\n      [\n        \"▁Bob\",\n        -11.130831718444824\n      ],\n      [\n        \"▁exception\",\n        -11.131170272827148\n      ],\n      [\n        \"▁cr\",\n        -11.131287574768066\n      ],\n      [\n        \"▁str\",\n        -11.131482124328613\n      ],\n      [\n        \"▁Fl\",\n        -11.13178825378418\n      ],\n      [\n        \"AT\",\n        -11.131909370422363\n      ],\n      [\n        \"kel\",\n        -11.132002830505371\n      ],\n      [\n        \"▁pricing\",\n        -11.132189750671387\n      ],\n      [\n        \"▁Mass\",\n        -11.132258415222168\n      ],\n      [\n        \"vir\",\n        -11.132333755493164\n      ],\n      [\n        \"leg\",\n        -11.132448196411133\n      ],\n      [\n        \"▁rating\",\n        -11.132455825805664\n      ],\n      [\n        \"▁Sale\",\n        -11.132628440856934\n      ],\n      [\n        \"▁somewhere\",\n        -11.132866859436035\n      ],\n      [\n        \"▁submitted\",\n        -11.133084297180176\n      ],\n      [\n        \"▁Pop\",\n        -11.133296012878418\n      ],\n      [\n        \"▁papers\",\n        -11.13330364227295\n      ],\n      [\n        \"▁authorities\",\n        -11.133326530456543\n      ],\n      [\n        \"▁Person\",\n        -11.133381843566895\n      ],\n      [\n        \"▁kill\",\n        -11.133512496948242\n      ],\n      [\n        \"▁suggestions\",\n        -11.133548736572266\n      ],\n      [\n        \"-6\",\n        -11.133644104003906\n      ],\n      [\n        \"▁dust\",\n        -11.133750915527344\n      ],\n      [\n        \"taire\",\n        -11.133805274963379\n      ],\n      [\n        \"▁recognition\",\n        -11.133870124816895\n      ],\n      [\n        \"3.\",\n        -11.134047508239746\n      ],\n      [\n        \"▁Mont\",\n        -11.134230613708496\n      ],\n      [\n        \"▁produit\",\n        -11.13430118560791\n      ],\n      [\n        \"▁transmission\",\n        -11.134340286254883\n      ],\n      [\n        \"▁Th\",\n        -11.13475513458252\n      ],\n      [\n        \"▁passing\",\n        -11.134928703308105\n      ],\n      [\n        \"▁Partner\",\n        -11.135161399841309\n      ],\n      [\n        \"▁dire\",\n        -11.135205268859863\n      ],\n      [\n        \"▁DC\",\n        -11.135432243347168\n      ],\n      [\n        \"▁sky\",\n        -11.135659217834473\n      ],\n      [\n        \"▁Kitchen\",\n        -11.135890007019043\n      ],\n      [\n        \"▁fluid\",\n        -11.135929107666016\n      ],\n      [\n        \"▁scored\",\n        -11.136005401611328\n      ],\n      [\n        \"▁chapter\",\n        -11.136100769042969\n      ],\n      [\n        \"If\",\n        -11.136231422424316\n      ],\n      [\n        \"letzten\",\n        -11.136275291442871\n      ],\n      [\n        \"▁officers\",\n        -11.13641357421875\n      ],\n      [\n        \"▁avem\",\n        -11.136631965637207\n      ],\n      [\n        \"ister\",\n        -11.136666297912598\n      ],\n      [\n        \"▁involves\",\n        -11.136688232421875\n      ],\n      [\n        \"ico\",\n        -11.136898040771484\n      ],\n      [\n        \"bur\",\n        -11.137056350708008\n      ],\n      [\n        \"▁mieux\",\n        -11.137064933776855\n      ],\n      [\n        \"▁Photo\",\n        -11.1371431350708\n      ],\n      [\n        \"▁Cro\",\n        -11.137228012084961\n      ],\n      [\n        \"▁professor\",\n        -11.137245178222656\n      ],\n      [\n        \"▁besonders\",\n        -11.137313842773438\n      ],\n      [\n        \"д\",\n        -11.137367248535156\n      ],\n      [\n        \"▁alongside\",\n        -11.137382507324219\n      ],\n      [\n        \"▁stored\",\n        -11.13770580291748\n      ],\n      [\n        \"▁activ\",\n        -11.137849807739258\n      ],\n      [\n        \"▁setup\",\n        -11.138169288635254\n      ],\n      [\n        \"▁extract\",\n        -11.138627052307129\n      ],\n      [\n        \"▁accent\",\n        -11.138633728027344\n      ],\n      [\n        \"▁replaced\",\n        -11.138638496398926\n      ],\n      [\n        \"tec\",\n        -11.138800621032715\n      ],\n      [\n        \"▁Natur\",\n        -11.138848304748535\n      ],\n      [\n        \"▁Pacific\",\n        -11.138887405395508\n      ],\n      [\n        \"▁NY\",\n        -11.139485359191895\n      ],\n      [\n        \"▁Capital\",\n        -11.139583587646484\n      ],\n      [\n        \"▁forest\",\n        -11.13969898223877\n      ],\n      [\n        \"incredibly\",\n        -11.14006233215332\n      ],\n      [\n        \"▁choix\",\n        -11.14021110534668\n      ],\n      [\n        \"▁seriously\",\n        -11.140281677246094\n      ],\n      [\n        \"▁konnte\",\n        -11.14030933380127\n      ],\n      [\n        \"▁2014.\",\n        -11.140443801879883\n      ],\n      [\n        \"ensuring\",\n        -11.140534400939941\n      ],\n      [\n        \"▁handling\",\n        -11.140661239624023\n      ],\n      [\n        \"▁9.\",\n        -11.140715599060059\n      ],\n      [\n        \"▁relations\",\n        -11.140876770019531\n      ],\n      [\n        \"▁Kom\",\n        -11.141045570373535\n      ],\n      [\n        \"▁Hol\",\n        -11.141282081604004\n      ],\n      [\n        \"▁none\",\n        -11.141515731811523\n      ],\n      [\n        \"rob\",\n        -11.141718864440918\n      ],\n      [\n        \"▁Forum\",\n        -11.141759872436523\n      ],\n      [\n        \"hour\",\n        -11.141776084899902\n      ],\n      [\n        \"ème\",\n        -11.141809463500977\n      ],\n      [\n        \"▁Space\",\n        -11.141986846923828\n      ],\n      [\n        \"▁Ham\",\n        -11.142992973327637\n      ],\n      [\n        \"rap\",\n        -11.143169403076172\n      ],\n      [\n        \"▁Michigan\",\n        -11.14317512512207\n      ],\n      [\n        \"km\",\n        -11.143202781677246\n      ],\n      [\n        \"▁utilize\",\n        -11.143548965454102\n      ],\n      [\n        \"lov\",\n        -11.143775939941406\n      ],\n      [\n        \"▁luck\",\n        -11.144388198852539\n      ],\n      [\n        \"lä\",\n        -11.144824981689453\n      ],\n      [\n        \"▁healing\",\n        -11.145010948181152\n      ],\n      [\n        \"▁neu\",\n        -11.145182609558105\n      ],\n      [\n        \"aging\",\n        -11.145251274108887\n      ],\n      [\n        \"▁compliance\",\n        -11.145583152770996\n      ],\n      [\n        \"▁vertical\",\n        -11.145675659179688\n      ],\n      [\n        \"▁FREE\",\n        -11.145729064941406\n      ],\n      [\n        \"▁differences\",\n        -11.146014213562012\n      ],\n      [\n        \"▁Server\",\n        -11.146252632141113\n      ],\n      [\n        \"▁estimated\",\n        -11.146378517150879\n      ],\n      [\n        \"schutz\",\n        -11.146692276000977\n      ],\n      [\n        \"▁notamment\",\n        -11.146736145019531\n      ],\n      [\n        \"▁120\",\n        -11.146919250488281\n      ],\n      [\n        \"72\",\n        -11.147282600402832\n      ],\n      [\n        \"▁heating\",\n        -11.147347450256348\n      ],\n      [\n        \"late\",\n        -11.14756965637207\n      ],\n      [\n        \"▁younger\",\n        -11.14783000946045\n      ],\n      [\n        \"▁Intel\",\n        -11.148171424865723\n      ],\n      [\n        \"▁salad\",\n        -11.148362159729004\n      ],\n      [\n        \"▁commonly\",\n        -11.148563385009766\n      ],\n      [\n        \"▁treatments\",\n        -11.148682594299316\n      ],\n      [\n        \"▁speaker\",\n        -11.148770332336426\n      ],\n      [\n        \"▁producing\",\n        -11.149120330810547\n      ],\n      [\n        \"▁eggs\",\n        -11.149367332458496\n      ],\n      [\n        \"▁Spirit\",\n        -11.149892807006836\n      ],\n      [\n        \"▁beide\",\n        -11.149918556213379\n      ],\n      [\n        \"▁transaction\",\n        -11.150283813476562\n      ],\n      [\n        \"▁Machine\",\n        -11.150464057922363\n      ],\n      [\n        \"▁Games\",\n        -11.150527000427246\n      ],\n      [\n        \"▁niveau\",\n        -11.150687217712402\n      ],\n      [\n        \"▁Need\",\n        -11.15082836151123\n      ],\n      [\n        \"radi\",\n        -11.150959968566895\n      ],\n      [\n        \"mir\",\n        -11.15096664428711\n      ],\n      [\n        \"causing\",\n        -11.151000022888184\n      ],\n      [\n        \"▁début\",\n        -11.151042938232422\n      ],\n      [\n        \"▁rencontre\",\n        -11.151063919067383\n      ],\n      [\n        \"▁threat\",\n        -11.151153564453125\n      ],\n      [\n        \"▁enjoying\",\n        -11.151320457458496\n      ],\n      [\n        \"Com\",\n        -11.151386260986328\n      ],\n      [\n        \"▁Johnson\",\n        -11.151555061340332\n      ],\n      [\n        \"▁tournament\",\n        -11.15156364440918\n      ],\n      [\n        \"▁Micro\",\n        -11.151582717895508\n      ],\n      [\n        \"▁Drive\",\n        -11.151667594909668\n      ],\n      [\n        \"▁Cre\",\n        -11.151866912841797\n      ],\n      [\n        \"▁Lebens\",\n        -11.151930809020996\n      ],\n      [\n        \"▁categories\",\n        -11.152358055114746\n      ],\n      [\n        \"5,000\",\n        -11.15261173248291\n      ],\n      [\n        \"▁confirmed\",\n        -11.152617454528809\n      ],\n      [\n        \"pli\",\n        -11.152763366699219\n      ],\n      [\n        \"▁Francisco\",\n        -11.153139114379883\n      ],\n      [\n        \"▁raw\",\n        -11.153157234191895\n      ],\n      [\n        \"▁managers\",\n        -11.153223991394043\n      ],\n      [\n        \"ţie\",\n        -11.153365135192871\n      ],\n      [\n        \"UR\",\n        -11.153368949890137\n      ],\n      [\n        \"▁aproape\",\n        -11.154065132141113\n      ],\n      [\n        \"via\",\n        -11.154606819152832\n      ],\n      [\n        \"▁engaged\",\n        -11.154646873474121\n      ],\n      [\n        \"▁parti\",\n        -11.154741287231445\n      ],\n      [\n        \"▁posting\",\n        -11.15517807006836\n      ],\n      [\n        \"CO\",\n        -11.155484199523926\n      ],\n      [\n        \"▁bois\",\n        -11.155815124511719\n      ],\n      [\n        \"▁inch\",\n        -11.15590763092041\n      ],\n      [\n        \"vie\",\n        -11.156068801879883\n      ],\n      [\n        \"▁aside\",\n        -11.156314849853516\n      ],\n      [\n        \"▁exceptional\",\n        -11.15658950805664\n      ],\n      [\n        \"▁vintage\",\n        -11.156668663024902\n      ],\n      [\n        \"▁Him\",\n        -11.156795501708984\n      ],\n      [\n        \"▁expansion\",\n        -11.156806945800781\n      ],\n      [\n        \"▁Weg\",\n        -11.157122611999512\n      ],\n      [\n        \"▁authors\",\n        -11.157535552978516\n      ],\n      [\n        \"▁deine\",\n        -11.15764045715332\n      ],\n      [\n        \"▁Prime\",\n        -11.158016204833984\n      ],\n      [\n        \"▁scan\",\n        -11.158055305480957\n      ],\n      [\n        \"▁reg\",\n        -11.158112525939941\n      ],\n      [\n        \"ția\",\n        -11.158141136169434\n      ],\n      [\n        \"riv\",\n        -11.158258438110352\n      ],\n      [\n        \"selon\",\n        -11.158440589904785\n      ],\n      [\n        \"▁Studio\",\n        -11.158571243286133\n      ],\n      [\n        \"▁dich\",\n        -11.158658027648926\n      ],\n      [\n        \"▁vi\",\n        -11.158745765686035\n      ],\n      [\n        \"▁sequence\",\n        -11.159016609191895\n      ],\n      [\n        \"▁Four\",\n        -11.159046173095703\n      ],\n      [\n        \"RT\",\n        -11.159050941467285\n      ],\n      [\n        \"▁ihn\",\n        -11.159072875976562\n      ],\n      [\n        \"▁employ\",\n        -11.159223556518555\n      ],\n      [\n        \"umb\",\n        -11.159659385681152\n      ],\n      [\n        \"ită\",\n        -11.159818649291992\n      ],\n      [\n        \"▁Station\",\n        -11.159950256347656\n      ],\n      [\n        \"▁upload\",\n        -11.159972190856934\n      ],\n      [\n        \"▁upgrade\",\n        -11.160445213317871\n      ],\n      [\n        \"▁exterior\",\n        -11.160528182983398\n      ],\n      [\n        \"▁writers\",\n        -11.160531997680664\n      ],\n      [\n        \"▁plot\",\n        -11.160543441772461\n      ],\n      [\n        \"▁Gen\",\n        -11.16068172454834\n      ],\n      [\n        \"TER\",\n        -11.160821914672852\n      ],\n      [\n        \"-12\",\n        -11.160930633544922\n      ],\n      [\n        \"http\",\n        -11.162168502807617\n      ],\n      [\n        \"▁smell\",\n        -11.1621732711792\n      ],\n      [\n        \"post\",\n        -11.162522315979004\n      ],\n      [\n        \"von\",\n        -11.162790298461914\n      ],\n      [\n        \"mili\",\n        -11.16280746459961\n      ],\n      [\n        \"8%\",\n        -11.162972450256348\n      ],\n      [\n        \"▁Andrew\",\n        -11.163065910339355\n      ],\n      [\n        \"▁spun\",\n        -11.16321086883545\n      ],\n      [\n        \"▁grass\",\n        -11.163444519042969\n      ],\n      [\n        \"unter\",\n        -11.163474082946777\n      ],\n      [\n        \"▁burn\",\n        -11.16356086730957\n      ],\n      [\n        \"▁Gegen\",\n        -11.163601875305176\n      ],\n      [\n        \"fest\",\n        -11.163721084594727\n      ],\n      [\n        \"▁Northern\",\n        -11.163738250732422\n      ],\n      [\n        \"▁consumption\",\n        -11.163775444030762\n      ],\n      [\n        \"▁bird\",\n        -11.164069175720215\n      ],\n      [\n        \"▁Miss\",\n        -11.164369583129883\n      ],\n      [\n        \"anti\",\n        -11.16447925567627\n      ],\n      [\n        \"▁viata\",\n        -11.164583206176758\n      ],\n      [\n        \"bereich\",\n        -11.164602279663086\n      ],\n      [\n        \"▁Change\",\n        -11.164871215820312\n      ],\n      [\n        \"▁pouvoir\",\n        -11.165255546569824\n      ],\n      [\n        \"▁demonstrate\",\n        -11.165435791015625\n      ],\n      [\n        \"▁requirement\",\n        -11.165483474731445\n      ],\n      [\n        \"BI\",\n        -11.16577434539795\n      ],\n      [\n        \"ied\",\n        -11.166099548339844\n      ],\n      [\n        \"▁spray\",\n        -11.166358947753906\n      ],\n      [\n        \"▁calitate\",\n        -11.166379928588867\n      ],\n      [\n        \"▁souvent\",\n        -11.1665620803833\n      ],\n      [\n        \"▁samples\",\n        -11.166682243347168\n      ],\n      [\n        \"▁compete\",\n        -11.166930198669434\n      ],\n      [\n        \"ank\",\n        -11.166946411132812\n      ],\n      [\n        \"année\",\n        -11.167037963867188\n      ],\n      [\n        \"wick\",\n        -11.167183876037598\n      ],\n      [\n        \"iff\",\n        -11.167254447937012\n      ],\n      [\n        \"noi\",\n        -11.167255401611328\n      ],\n      [\n        \"ography\",\n        -11.167450904846191\n      ],\n      [\n        \"▁SE\",\n        -11.167508125305176\n      ],\n      [\n        \"▁250\",\n        -11.16779899597168\n      ],\n      [\n        \"▁wealth\",\n        -11.167884826660156\n      ],\n      [\n        \"4%\",\n        -11.168235778808594\n      ],\n      [\n        \"▁swimming\",\n        -11.168269157409668\n      ],\n      [\n        \"enne\",\n        -11.168338775634766\n      ],\n      [\n        \"Qu\",\n        -11.168400764465332\n      ],\n      [\n        \"▁connections\",\n        -11.168476104736328\n      ],\n      [\n        \"onne\",\n        -11.16852855682373\n      ],\n      [\n        \"▁Way\",\n        -11.168676376342773\n      ],\n      [\n        \"voll\",\n        -11.168793678283691\n      ],\n      [\n        \"▁extent\",\n        -11.169041633605957\n      ],\n      [\n        \"▁objective\",\n        -11.169572830200195\n      ],\n      [\n        \"▁clinic\",\n        -11.169581413269043\n      ],\n      [\n        \"NA\",\n        -11.169848442077637\n      ],\n      [\n        \"▁Hope\",\n        -11.170098304748535\n      ],\n      [\n        \"▁coat\",\n        -11.170331954956055\n      ],\n      [\n        \"▁depend\",\n        -11.170393943786621\n      ],\n      [\n        \"▁tine\",\n        -11.170463562011719\n      ],\n      [\n        \"acc\",\n        -11.170486450195312\n      ],\n      [\n        \"▁editor\",\n        -11.170598983764648\n      ],\n      [\n        \"▁Jim\",\n        -11.170690536499023\n      ],\n      [\n        \"600\",\n        -11.171262741088867\n      ],\n      [\n        \"▁module\",\n        -11.171302795410156\n      ],\n      [\n        \"▁deja\",\n        -11.171821594238281\n      ],\n      [\n        \"atur\",\n        -11.171841621398926\n      ],\n      [\n        \"▁maintaining\",\n        -11.171918869018555\n      ],\n      [\n        \"▁hoch\",\n        -11.172059059143066\n      ],\n      [\n        \"▁covering\",\n        -11.17239761352539\n      ],\n      [\n        \"vielen\",\n        -11.172450065612793\n      ],\n      [\n        \"hem\",\n        -11.172531127929688\n      ],\n      [\n        \"▁illegal\",\n        -11.172656059265137\n      ],\n      [\n        \"▁certificate\",\n        -11.17329216003418\n      ],\n      [\n        \"▁collective\",\n        -11.173357963562012\n      ],\n      [\n        \"▁blow\",\n        -11.17343807220459\n      ],\n      [\n        \"▁programming\",\n        -11.17343807220459\n      ],\n      [\n        \"HE\",\n        -11.173727989196777\n      ],\n      [\n        \"▁Division\",\n        -11.173842430114746\n      ],\n      [\n        \"▁ceux\",\n        -11.174081802368164\n      ],\n      [\n        \"▁saved\",\n        -11.174202919006348\n      ],\n      [\n        \"▁worst\",\n        -11.17426586151123\n      ],\n      [\n        \"▁arms\",\n        -11.17430305480957\n      ],\n      [\n        \"▁Officer\",\n        -11.17463493347168\n      ],\n      [\n        \"▁association\",\n        -11.174838066101074\n      ],\n      [\n        \"ington\",\n        -11.1749906539917\n      ],\n      [\n        \"▁belle\",\n        -11.175024032592773\n      ],\n      [\n        \"tting\",\n        -11.17537784576416\n      ],\n      [\n        \"▁attacks\",\n        -11.175446510314941\n      ],\n      [\n        \"▁vei\",\n        -11.17546558380127\n      ],\n      [\n        \"▁gerade\",\n        -11.175470352172852\n      ],\n      [\n        \"▁strain\",\n        -11.175748825073242\n      ],\n      [\n        \"▁offices\",\n        -11.1759672164917\n      ],\n      [\n        \"EM\",\n        -11.17627239227295\n      ],\n      [\n        \"EST\",\n        -11.176509857177734\n      ],\n      [\n        \"-8\",\n        -11.176758766174316\n      ],\n      [\n        \"▁faculty\",\n        -11.176998138427734\n      ],\n      [\n        \"▁Plant\",\n        -11.177046775817871\n      ],\n      [\n        \"pla\",\n        -11.177295684814453\n      ],\n      [\n        \"card\",\n        -11.177618980407715\n      ],\n      [\n        \"▁loose\",\n        -11.177982330322266\n      ],\n      [\n        \"▁PR\",\n        -11.178044319152832\n      ],\n      [\n        \"profit\",\n        -11.178071022033691\n      ],\n      [\n        \"▁channels\",\n        -11.178119659423828\n      ],\n      [\n        \"ATE\",\n        -11.178257942199707\n      ],\n      [\n        \"atic\",\n        -11.178304672241211\n      ],\n      [\n        \"wegen\",\n        -11.178404808044434\n      ],\n      [\n        \"word\",\n        -11.178621292114258\n      ],\n      [\n        \"▁sehen\",\n        -11.178659439086914\n      ],\n      [\n        \"▁nombre\",\n        -11.178744316101074\n      ],\n      [\n        \"▁DO\",\n        -11.178763389587402\n      ],\n      [\n        \"▁hoping\",\n        -11.178949356079102\n      ],\n      [\n        \"▁wollen\",\n        -11.179091453552246\n      ],\n      [\n        \"▁decat\",\n        -11.179244995117188\n      ],\n      [\n        \"IF\",\n        -11.179386138916016\n      ],\n      [\n        \"▁permission\",\n        -11.179396629333496\n      ],\n      [\n        \"▁Williams\",\n        -11.179936408996582\n      ],\n      [\n        \"▁beer\",\n        -11.179962158203125\n      ],\n      [\n        \"▁dernière\",\n        -11.180052757263184\n      ],\n      [\n        \"▁purchasing\",\n        -11.18025016784668\n      ],\n      [\n        \"▁pride\",\n        -11.180416107177734\n      ],\n      [\n        \"solv\",\n        -11.180598258972168\n      ],\n      [\n        \"ego\",\n        -11.180691719055176\n      ],\n      [\n        \"▁Oil\",\n        -11.18079662322998\n      ],\n      [\n        \"▁dishes\",\n        -11.18102741241455\n      ],\n      [\n        \"▁Baby\",\n        -11.181109428405762\n      ],\n      [\n        \"▁Roll\",\n        -11.181137084960938\n      ],\n      [\n        \"vez\",\n        -11.18134593963623\n      ],\n      [\n        \"▁drept\",\n        -11.181367874145508\n      ],\n      [\n        \"lly\",\n        -11.18148136138916\n      ],\n      [\n        \"▁potrivit\",\n        -11.181495666503906\n      ],\n      [\n        \"person\",\n        -11.181961059570312\n      ],\n      [\n        \"▁interactive\",\n        -11.182269096374512\n      ],\n      [\n        \"▁brilliant\",\n        -11.182304382324219\n      ],\n      [\n        \"▁000\",\n        -11.182357788085938\n      ],\n      [\n        \"▁giant\",\n        -11.182657241821289\n      ],\n      [\n        \"▁plain\",\n        -11.182945251464844\n      ],\n      [\n        \"▁lock\",\n        -11.183197975158691\n      ],\n      [\n        \"▁inspection\",\n        -11.183762550354004\n      ],\n      [\n        \"▁symbol\",\n        -11.18392276763916\n      ],\n      [\n        \"▁Gal\",\n        -11.183953285217285\n      ],\n      [\n        \"▁concepts\",\n        -11.1840181350708\n      ],\n      [\n        \"▁venture\",\n        -11.18411922454834\n      ],\n      [\n        \"▁Tr\",\n        -11.184402465820312\n      ],\n      [\n        \"▁Color\",\n        -11.184469223022461\n      ],\n      [\n        \"▁behalf\",\n        -11.184635162353516\n      ],\n      [\n        \"ink\",\n        -11.184715270996094\n      ],\n      [\n        \"atii\",\n        -11.1848726272583\n      ],\n      [\n        \"wie\",\n        -11.184907913208008\n      ],\n      [\n        \"▁stream\",\n        -11.18514347076416\n      ],\n      [\n        \"▁buyers\",\n        -11.185192108154297\n      ],\n      [\n        \"legen\",\n        -11.185526847839355\n      ],\n      [\n        \"iness\",\n        -11.18578815460205\n      ],\n      [\n        \"▁absolute\",\n        -11.185945510864258\n      ],\n      [\n        \"▁council\",\n        -11.186067581176758\n      ],\n      [\n        \"▁displayed\",\n        -11.186172485351562\n      ],\n      [\n        \"▁Bun\",\n        -11.186405181884766\n      ],\n      [\n        \"▁darauf\",\n        -11.186585426330566\n      ],\n      [\n        \"▁rod\",\n        -11.186829566955566\n      ],\n      [\n        \"▁repeat\",\n        -11.186898231506348\n      ],\n      [\n        \"quelle\",\n        -11.187023162841797\n      ],\n      [\n        \"lation\",\n        -11.187433242797852\n      ],\n      [\n        \"gul\",\n        -11.18774700164795\n      ],\n      [\n        \"▁compensation\",\n        -11.188064575195312\n      ],\n      [\n        \"▁string\",\n        -11.1881685256958\n      ],\n      [\n        \"▁joining\",\n        -11.188251495361328\n      ],\n      [\n        \"▁Pra\",\n        -11.188429832458496\n      ],\n      [\n        \"hab\",\n        -11.188936233520508\n      ],\n      [\n        \"▁plane\",\n        -11.189024925231934\n      ],\n      [\n        \"▁conversion\",\n        -11.189078330993652\n      ],\n      [\n        \"▁lesson\",\n        -11.189361572265625\n      ],\n      [\n        \"bound\",\n        -11.1893949508667\n      ],\n      [\n        \"▁seats\",\n        -11.18946361541748\n      ],\n      [\n        \"voc\",\n        -11.189902305603027\n      ],\n      [\n        \"▁Disney\",\n        -11.190120697021484\n      ],\n      [\n        \"esse\",\n        -11.190277099609375\n      ],\n      [\n        \"▁awards\",\n        -11.190279006958008\n      ],\n      [\n        \"▁initiative\",\n        -11.190483093261719\n      ],\n      [\n        \"UM\",\n        -11.19050407409668\n      ],\n      [\n        \"▁intelligence\",\n        -11.190763473510742\n      ],\n      [\n        \"▁laser\",\n        -11.191128730773926\n      ],\n      [\n        \"än\",\n        -11.191228866577148\n      ],\n      [\n        \"▁generated\",\n        -11.191231727600098\n      ],\n      [\n        \"▁allen\",\n        -11.19186782836914\n      ],\n      [\n        \"▁Aug\",\n        -11.19261360168457\n      ],\n      [\n        \"lini\",\n        -11.192968368530273\n      ],\n      [\n        \"▁Update\",\n        -11.193015098571777\n      ],\n      [\n        \"▁grab\",\n        -11.193095207214355\n      ],\n      [\n        \"▁Bridge\",\n        -11.193219184875488\n      ],\n      [\n        \"rock\",\n        -11.193289756774902\n      ],\n      [\n        \"hold\",\n        -11.193461418151855\n      ],\n      [\n        \"seinen\",\n        -11.193643569946289\n      ],\n      [\n        \"▁false\",\n        -11.193758010864258\n      ],\n      [\n        \"type\",\n        -11.193792343139648\n      ],\n      [\n        \"▁outcome\",\n        -11.193906784057617\n      ],\n      [\n        \"▁crazy\",\n        -11.194161415100098\n      ],\n      [\n        \"▁Platz\",\n        -11.194281578063965\n      ],\n      [\n        \"▁believed\",\n        -11.194426536560059\n      ],\n      [\n        \"▁adjust\",\n        -11.194503784179688\n      ],\n      [\n        \"▁entrance\",\n        -11.194644927978516\n      ],\n      [\n        \"▁Colorado\",\n        -11.194751739501953\n      ],\n      [\n        \"▁concentration\",\n        -11.194865226745605\n      ],\n      [\n        \"aid\",\n        -11.194958686828613\n      ],\n      [\n        \"▁regardless\",\n        -11.195035934448242\n      ],\n      [\n        \"▁mici\",\n        -11.195063591003418\n      ],\n      [\n        \"▁potentially\",\n        -11.195109367370605\n      ],\n      [\n        \"▁Custom\",\n        -11.195867538452148\n      ],\n      [\n        \"rag\",\n        -11.196009635925293\n      ],\n      [\n        \"▁employer\",\n        -11.19604206085205\n      ],\n      [\n        \"tagged\",\n        -11.196158409118652\n      ],\n      [\n        \"▁34\",\n        -11.196271896362305\n      ],\n      [\n        \"fro\",\n        -11.196895599365234\n      ],\n      [\n        \"▁Pas\",\n        -11.197010040283203\n      ],\n      [\n        \"▁AS\",\n        -11.197013854980469\n      ],\n      [\n        \"PP\",\n        -11.197031021118164\n      ],\n      [\n        \"stru\",\n        -11.19741439819336\n      ],\n      [\n        \"grâce\",\n        -11.198037147521973\n      ],\n      [\n        \"▁anyway\",\n        -11.198240280151367\n      ],\n      [\n        \"▁streets\",\n        -11.1986083984375\n      ],\n      [\n        \"▁Region\",\n        -11.199190139770508\n      ],\n      [\n        \"▁newly\",\n        -11.199280738830566\n      ],\n      [\n        \"▁assistant\",\n        -11.199461936950684\n      ],\n      [\n        \"▁requests\",\n        -11.199618339538574\n      ],\n      [\n        \"▁Ohio\",\n        -11.199705123901367\n      ],\n      [\n        \"▁continuing\",\n        -11.200072288513184\n      ],\n      [\n        \"▁îm\",\n        -11.200136184692383\n      ],\n      [\n        \"7%\",\n        -11.20031452178955\n      ],\n      [\n        \"▁basically\",\n        -11.200325965881348\n      ],\n      [\n        \"gabe\",\n        -11.200334548950195\n      ],\n      [\n        \"▁ultra\",\n        -11.200355529785156\n      ],\n      [\n        \"pic\",\n        -11.200571060180664\n      ],\n      [\n        \"▁jeder\",\n        -11.200939178466797\n      ],\n      [\n        \"▁Cook\",\n        -11.201225280761719\n      ],\n      [\n        \"▁tie\",\n        -11.201227188110352\n      ],\n      [\n        \"▁yard\",\n        -11.20151424407959\n      ],\n      [\n        \"▁wash\",\n        -11.20152759552002\n      ],\n      [\n        \"▁3,\",\n        -11.20194149017334\n      ],\n      [\n        \"▁exista\",\n        -11.202128410339355\n      ],\n      [\n        \"▁egg\",\n        -11.202342987060547\n      ],\n      [\n        \"▁marché\",\n        -11.202616691589355\n      ],\n      [\n        \"kommen\",\n        -11.202630996704102\n      ],\n      [\n        \"▁Select\",\n        -11.202999114990234\n      ],\n      [\n        \"geben\",\n        -11.203126907348633\n      ],\n      [\n        \"▁Joseph\",\n        -11.203531265258789\n      ],\n      [\n        \"▁Ces\",\n        -11.203642845153809\n      ],\n      [\n        \"▁hundred\",\n        -11.203676223754883\n      ],\n      [\n        \"even\",\n        -11.203792572021484\n      ],\n      [\n        \"gal\",\n        -11.204232215881348\n      ],\n      [\n        \"800\",\n        -11.20443058013916\n      ],\n      [\n        \"▁Jones\",\n        -11.204599380493164\n      ],\n      [\n        \"ova\",\n        -11.204681396484375\n      ],\n      [\n        \"▁careful\",\n        -11.204727172851562\n      ],\n      [\n        \"▁alarm\",\n        -11.205070495605469\n      ],\n      [\n        \"NI\",\n        -11.205113410949707\n      ],\n      [\n        \"▁residence\",\n        -11.205327987670898\n      ],\n      [\n        \"▁wäre\",\n        -11.20590877532959\n      ],\n      [\n        \"▁Dor\",\n        -11.205986976623535\n      ],\n      [\n        \"▁amounts\",\n        -11.206369400024414\n      ],\n      [\n        \"▁mistake\",\n        -11.206687927246094\n      ],\n      [\n        \"ates\",\n        -11.206796646118164\n      ],\n      [\n        \"▁bune\",\n        -11.206951141357422\n      ],\n      [\n        \"▁vegetables\",\n        -11.207124710083008\n      ],\n      [\n        \"▁Ann\",\n        -11.207204818725586\n      ],\n      [\n        \"logical\",\n        -11.20776081085205\n      ],\n      [\n        \"stadt\",\n        -11.207806587219238\n      ],\n      [\n        \"▁chances\",\n        -11.207921981811523\n      ],\n      [\n        \"%)\",\n        -11.208030700683594\n      ],\n      [\n        \"▁minimal\",\n        -11.20810604095459\n      ],\n      [\n        \"▁naturally\",\n        -11.20817756652832\n      ],\n      [\n        \"▁Geld\",\n        -11.20822525024414\n      ],\n      [\n        \"▁Yu\",\n        -11.208361625671387\n      ],\n      [\n        \"▁wrap\",\n        -11.20840072631836\n      ],\n      [\n        \"rest\",\n        -11.208674430847168\n      ],\n      [\n        \"▁legs\",\n        -11.208758354187012\n      ],\n      [\n        \"PM\",\n        -11.208806991577148\n      ],\n      [\n        \"▁Heart\",\n        -11.208888053894043\n      ],\n      [\n        \"▁suspect\",\n        -11.209020614624023\n      ],\n      [\n        \"Go\",\n        -11.209098815917969\n      ],\n      [\n        \"▁Fil\",\n        -11.209175109863281\n      ],\n      [\n        \"▁YOU\",\n        -11.209175109863281\n      ],\n      [\n        \"▁victory\",\n        -11.209245681762695\n      ],\n      [\n        \"pun\",\n        -11.20960807800293\n      ],\n      [\n        \"▁Zo\",\n        -11.209632873535156\n      ],\n      [\n        \"CT\",\n        -11.209640502929688\n      ],\n      [\n        \"▁trim\",\n        -11.20969009399414\n      ],\n      [\n        \"▁stuck\",\n        -11.209836959838867\n      ],\n      [\n        \"ators\",\n        -11.209877014160156\n      ],\n      [\n        \"▁Ideas\",\n        -11.210016250610352\n      ],\n      [\n        \"▁voyage\",\n        -11.210166931152344\n      ],\n      [\n        \"▁Restaurant\",\n        -11.210205078125\n      ],\n      [\n        \"▁pat\",\n        -11.210234642028809\n      ],\n      [\n        \"▁bond\",\n        -11.210521697998047\n      ],\n      [\n        \"▁Del\",\n        -11.210552215576172\n      ],\n      [\n        \"▁fighting\",\n        -11.210705757141113\n      ],\n      [\n        \"▁concerning\",\n        -11.210867881774902\n      ],\n      [\n        \"▁etwa\",\n        -11.211141586303711\n      ],\n      [\n        \"▁Thema\",\n        -11.211237907409668\n      ],\n      [\n        \"▁preferred\",\n        -11.211423873901367\n      ],\n      [\n        \"▁pitch\",\n        -11.211465835571289\n      ],\n      [\n        \"▁Singapore\",\n        -11.211971282958984\n      ],\n      [\n        \"▁tub\",\n        -11.212018013000488\n      ],\n      [\n        \"FT\",\n        -11.212053298950195\n      ],\n      [\n        \"▁Product\",\n        -11.21212100982666\n      ],\n      [\n        \"▁applying\",\n        -11.212285995483398\n      ],\n      [\n        \"▁Fr\",\n        -11.212340354919434\n      ],\n      [\n        \"ţa\",\n        -11.212599754333496\n      ],\n      [\n        \"▁iPad\",\n        -11.212861061096191\n      ],\n      [\n        \"PD\",\n        -11.2129545211792\n      ],\n      [\n        \"▁comun\",\n        -11.212995529174805\n      ],\n      [\n        \"▁pie\",\n        -11.213286399841309\n      ],\n      [\n        \"rank\",\n        -11.21364688873291\n      ],\n      [\n        \"tron\",\n        -11.213677406311035\n      ],\n      [\n        \"▁pest\",\n        -11.213906288146973\n      ],\n      [\n        \"▁herself\",\n        -11.213936805725098\n      ],\n      [\n        \"▁intense\",\n        -11.213964462280273\n      ],\n      [\n        \"foot\",\n        -11.21413803100586\n      ],\n      [\n        \"▁1998\",\n        -11.2141695022583\n      ],\n      [\n        \"▁anxiety\",\n        -11.214616775512695\n      ],\n      [\n        \"▁portable\",\n        -11.214674949645996\n      ],\n      [\n        \"▁harm\",\n        -11.214735984802246\n      ],\n      [\n        \"▁admit\",\n        -11.214885711669922\n      ],\n      [\n        \"sted\",\n        -11.214900016784668\n      ],\n      [\n        \"▁regions\",\n        -11.215450286865234\n      ],\n      [\n        \"cie\",\n        -11.215556144714355\n      ],\n      [\n        \"▁robust\",\n        -11.21577262878418\n      ],\n      [\n        \"▁stem\",\n        -11.215982437133789\n      ],\n      [\n        \"▁roles\",\n        -11.216024398803711\n      ],\n      [\n        \"▁Latin\",\n        -11.216224670410156\n      ],\n      [\n        \"▁Ré\",\n        -11.216378211975098\n      ],\n      [\n        \"▁ref\",\n        -11.216381072998047\n      ],\n      [\n        \"isme\",\n        -11.216426849365234\n      ],\n      [\n        \"▁contribution\",\n        -11.216776847839355\n      ],\n      [\n        \"▁forever\",\n        -11.217447280883789\n      ],\n      [\n        \"▁frei\",\n        -11.21754264831543\n      ],\n      [\n        \"▁mont\",\n        -11.217818260192871\n      ],\n      [\n        \"that\",\n        -11.217999458312988\n      ],\n      [\n        \"▁sensitive\",\n        -11.218116760253906\n      ],\n      [\n        \"▁wider\",\n        -11.218175888061523\n      ],\n      [\n        \"AF\",\n        -11.218234062194824\n      ],\n      [\n        \"▁liability\",\n        -11.218748092651367\n      ],\n      [\n        \"ţiei\",\n        -11.219043731689453\n      ],\n      [\n        \"▁Cho\",\n        -11.219260215759277\n      ],\n      [\n        \"aria\",\n        -11.21960735321045\n      ],\n      [\n        \"rang\",\n        -11.21977710723877\n      ],\n      [\n        \"▁Account\",\n        -11.21986198425293\n      ],\n      [\n        \"▁III\",\n        -11.219941139221191\n      ],\n      [\n        \"▁tooth\",\n        -11.220222473144531\n      ],\n      [\n        \"▁factory\",\n        -11.220240592956543\n      ],\n      [\n        \"▁dropped\",\n        -11.220495223999023\n      ],\n      [\n        \"horn\",\n        -11.220780372619629\n      ],\n      [\n        \"RP\",\n        -11.221110343933105\n      ],\n      [\n        \"▁container\",\n        -11.22118091583252\n      ],\n      [\n        \"fran\",\n        -11.221474647521973\n      ],\n      [\n        \"▁lawyer\",\n        -11.221842765808105\n      ],\n      [\n        \"▁Image\",\n        -11.221907615661621\n      ],\n      [\n        \"HO\",\n        -11.22195816040039\n      ],\n      [\n        \"▁incorporate\",\n        -11.221992492675781\n      ],\n      [\n        \"▁lume\",\n        -11.22226333618164\n      ],\n      [\n        \"GA\",\n        -11.222331047058105\n      ],\n      [\n        \"itati\",\n        -11.222370147705078\n      ],\n      [\n        \"autre\",\n        -11.222665786743164\n      ],\n      [\n        \"ierten\",\n        -11.222688674926758\n      ],\n      [\n        \"[\",\n        -11.222746849060059\n      ],\n      [\n        \"▁packages\",\n        -11.222758293151855\n      ],\n      [\n        \"▁Simon\",\n        -11.22290325164795\n      ],\n      [\n        \"▁somewhat\",\n        -11.223734855651855\n      ],\n      [\n        \"mbo\",\n        -11.223737716674805\n      ],\n      [\n        \"lite\",\n        -11.223844528198242\n      ],\n      [\n        \"▁eliminate\",\n        -11.22395133972168\n      ],\n      [\n        \"▁decrease\",\n        -11.224117279052734\n      ],\n      [\n        \"▁geben\",\n        -11.224214553833008\n      ],\n      [\n        \"▁approaches\",\n        -11.224482536315918\n      ],\n      [\n        \"▁tissue\",\n        -11.224940299987793\n      ],\n      [\n        \"▁personne\",\n        -11.225192070007324\n      ],\n      [\n        \"ional\",\n        -11.225587844848633\n      ],\n      [\n        \"unable\",\n        -11.2256498336792\n      ],\n      [\n        \"▁Case\",\n        -11.225736618041992\n      ],\n      [\n        \"hill\",\n        -11.225744247436523\n      ],\n      [\n        \"och\",\n        -11.225862503051758\n      ],\n      [\n        \"▁minister\",\n        -11.225920677185059\n      ],\n      [\n        \"▁Rad\",\n        -11.226285934448242\n      ],\n      [\n        \"▁yoga\",\n        -11.226390838623047\n      ],\n      [\n        \"▁encounter\",\n        -11.22661018371582\n      ],\n      [\n        \"text\",\n        -11.22670841217041\n      ],\n      [\n        \"▁OS\",\n        -11.226719856262207\n      ],\n      [\n        \"▁opera\",\n        -11.22673225402832\n      ],\n      [\n        \"▁loving\",\n        -11.226977348327637\n      ],\n      [\n        \"▁birds\",\n        -11.227363586425781\n      ],\n      [\n        \"▁prim\",\n        -11.227389335632324\n      ],\n      [\n        \"easca\",\n        -11.227432250976562\n      ],\n      [\n        \"park\",\n        -11.227453231811523\n      ],\n      [\n        \"fü\",\n        -11.227797508239746\n      ],\n      [\n        \"▁champion\",\n        -11.227824211120605\n      ],\n      [\n        \"▁warning\",\n        -11.228245735168457\n      ],\n      [\n        \"DC\",\n        -11.228271484375\n      ],\n      [\n        \"▁yield\",\n        -11.228310585021973\n      ],\n      [\n        \"raum\",\n        -11.228334426879883\n      ],\n      [\n        \"▁Student\",\n        -11.228434562683105\n      ],\n      [\n        \"▁Rev\",\n        -11.22848892211914\n      ],\n      [\n        \"▁Fu\",\n        -11.228501319885254\n      ],\n      [\n        \"▁intra\",\n        -11.22854232788086\n      ],\n      [\n        \"▁proces\",\n        -11.228585243225098\n      ],\n      [\n        \"▁margin\",\n        -11.228621482849121\n      ],\n      [\n        \"lands\",\n        -11.228816986083984\n      ],\n      [\n        \"04\",\n        -11.228952407836914\n      ],\n      [\n        \"▁Steel\",\n        -11.229897499084473\n      ],\n      [\n        \"▁besoin\",\n        -11.230081558227539\n      ],\n      [\n        \"şti\",\n        -11.230561256408691\n      ],\n      [\n        \"▁39\",\n        -11.230635643005371\n      ],\n      [\n        \"▁outcomes\",\n        -11.230677604675293\n      ],\n      [\n        \"wert\",\n        -11.230719566345215\n      ],\n      [\n        \"3,\",\n        -11.23080062866211\n      ],\n      [\n        \"▁hole\",\n        -11.230888366699219\n      ],\n      [\n        \"▁Create\",\n        -11.23096752166748\n      ],\n      [\n        \"▁hall\",\n        -11.231266975402832\n      ],\n      [\n        \"nach\",\n        -11.231595039367676\n      ],\n      [\n        \"▁indicate\",\n        -11.232311248779297\n      ],\n      [\n        \"cum\",\n        -11.232604026794434\n      ],\n      [\n        \"▁Mann\",\n        -11.232690811157227\n      ],\n      [\n        \"▁reaction\",\n        -11.232828140258789\n      ],\n      [\n        \"▁empty\",\n        -11.23289680480957\n      ],\n      [\n        \"▁Sign\",\n        -11.232941627502441\n      ],\n      [\n        \"▁pm\",\n        -11.23300838470459\n      ],\n      [\n        \"erung\",\n        -11.23322582244873\n      ],\n      [\n        \"▁würde\",\n        -11.233592987060547\n      ],\n      [\n        \"▁declarat\",\n        -11.233602523803711\n      ],\n      [\n        \"6%\",\n        -11.23371410369873\n      ],\n      [\n        \"▁Client\",\n        -11.23377513885498\n      ],\n      [\n        \"vil\",\n        -11.234295845031738\n      ],\n      [\n        \"▁electricity\",\n        -11.234469413757324\n      ],\n      [\n        \"▁75\",\n        -11.234505653381348\n      ],\n      [\n        \"▁buna\",\n        -11.234505653381348\n      ],\n      [\n        \"eşte\",\n        -11.23473834991455\n      ],\n      [\n        \"▁prop\",\n        -11.234792709350586\n      ],\n      [\n        \"▁journal\",\n        -11.234883308410645\n      ],\n      [\n        \"▁meu\",\n        -11.23495101928711\n      ],\n      [\n        \"▁chef\",\n        -11.235034942626953\n      ],\n      [\n        \"▁Ever\",\n        -11.235102653503418\n      ],\n      [\n        \"▁feelings\",\n        -11.235466003417969\n      ],\n      [\n        \"PT\",\n        -11.23551082611084\n      ],\n      [\n        \"▁proposal\",\n        -11.235651969909668\n      ],\n      [\n        \"▁Its\",\n        -11.235709190368652\n      ],\n      [\n        \"▁2013.\",\n        -11.235795974731445\n      ],\n      [\n        \"▁Bundes\",\n        -11.23595142364502\n      ],\n      [\n        \"▁droit\",\n        -11.236333847045898\n      ],\n      [\n        \"▁10%\",\n        -11.236671447753906\n      ],\n      [\n        \"gard\",\n        -11.236772537231445\n      ],\n      [\n        \"information\",\n        -11.236814498901367\n      ],\n      [\n        \"FE\",\n        -11.237309455871582\n      ],\n      [\n        \"▁Dun\",\n        -11.237340927124023\n      ],\n      [\n        \"▁Stock\",\n        -11.237472534179688\n      ],\n      [\n        \"ație\",\n        -11.2374849319458\n      ],\n      [\n        \"▁mag\",\n        -11.237603187561035\n      ],\n      [\n        \"▁br\",\n        -11.237665176391602\n      ],\n      [\n        \"▁sight\",\n        -11.237772941589355\n      ],\n      [\n        \"phone\",\n        -11.237796783447266\n      ],\n      [\n        \"▁Cy\",\n        -11.237811088562012\n      ],\n      [\n        \"▁opposite\",\n        -11.238035202026367\n      ],\n      [\n        \"ically\",\n        -11.238235473632812\n      ],\n      [\n        \"großen\",\n        -11.238388061523438\n      ],\n      [\n        \"▁Without\",\n        -11.23845100402832\n      ],\n      [\n        \"espace\",\n        -11.238515853881836\n      ],\n      [\n        \"▁chairs\",\n        -11.238595008850098\n      ],\n      [\n        \"▁matches\",\n        -11.238685607910156\n      ],\n      [\n        \"ateur\",\n        -11.238697052001953\n      ],\n      [\n        \"▁Cost\",\n        -11.238699913024902\n      ],\n      [\n        \"▁WordPress\",\n        -11.238880157470703\n      ],\n      [\n        \"▁Opera\",\n        -11.239195823669434\n      ],\n      [\n        \"walked\",\n        -11.239234924316406\n      ],\n      [\n        \"▁transactions\",\n        -11.239521026611328\n      ],\n      [\n        \"▁nuclear\",\n        -11.239579200744629\n      ],\n      [\n        \"ways\",\n        -11.239594459533691\n      ],\n      [\n        \"▁Oct\",\n        -11.239738464355469\n      ],\n      [\n        \"▁bomb\",\n        -11.239835739135742\n      ],\n      [\n        \"▁tracking\",\n        -11.239879608154297\n      ],\n      [\n        \"▁photograph\",\n        -11.240066528320312\n      ],\n      [\n        \"bio\",\n        -11.240309715270996\n      ],\n      [\n        \"▁branch\",\n        -11.240363121032715\n      ],\n      [\n        \"▁$5\",\n        -11.240684509277344\n      ],\n      [\n        \"▁diagram\",\n        -11.240986824035645\n      ],\n      [\n        \"▁Hard\",\n        -11.241218566894531\n      ],\n      [\n        \"bach\",\n        -11.241232872009277\n      ],\n      [\n        \"▁42\",\n        -11.241249084472656\n      ],\n      [\n        \"logy\",\n        -11.241472244262695\n      ],\n      [\n        \"▁tile\",\n        -11.241593360900879\n      ],\n      [\n        \"▁API\",\n        -11.241833686828613\n      ],\n      [\n        \"seront\",\n        -11.24204158782959\n      ],\n      [\n        \"ENT\",\n        -11.242156982421875\n      ],\n      [\n        \"▁accommodation\",\n        -11.242409706115723\n      ],\n      [\n        \"▁fiber\",\n        -11.242438316345215\n      ],\n      [\n        \"▁Give\",\n        -11.242792129516602\n      ],\n      [\n        \"▁Gas\",\n        -11.242916107177734\n      ],\n      [\n        \"▁Spain\",\n        -11.243086814880371\n      ],\n      [\n        \"▁listing\",\n        -11.24312686920166\n      ],\n      [\n        \"▁blocks\",\n        -11.24349308013916\n      ],\n      [\n        \"▁constitu\",\n        -11.243762969970703\n      ],\n      [\n        \"▁convenience\",\n        -11.243797302246094\n      ],\n      [\n        \"▁prize\",\n        -11.243823051452637\n      ],\n      [\n        \"▁aircraft\",\n        -11.24404239654541\n      ],\n      [\n        \"containing\",\n        -11.244124412536621\n      ],\n      [\n        \"▁vice\",\n        -11.244247436523438\n      ],\n      [\n        \"▁organisations\",\n        -11.244304656982422\n      ],\n      [\n        \"▁complicated\",\n        -11.244588851928711\n      ],\n      [\n        \"rons\",\n        -11.244647979736328\n      ],\n      [\n        \"▁bars\",\n        -11.244670867919922\n      ],\n      [\n        \"était\",\n        -11.244705200195312\n      ],\n      [\n        \"▁checking\",\n        -11.245287895202637\n      ],\n      [\n        \"vant\",\n        -11.245542526245117\n      ],\n      [\n        \"▁couch\",\n        -11.245657920837402\n      ],\n      [\n        \"▁brush\",\n        -11.245870590209961\n      ],\n      [\n        \"▁printer\",\n        -11.245922088623047\n      ],\n      [\n        \"▁Rat\",\n        -11.246051788330078\n      ],\n      [\n        \"▁announce\",\n        -11.246057510375977\n      ],\n      [\n        \"▁salari\",\n        -11.246200561523438\n      ],\n      [\n        \"▁Sk\",\n        -11.246356964111328\n      ],\n      [\n        \"pal\",\n        -11.246383666992188\n      ],\n      [\n        \"▁yards\",\n        -11.24658203125\n      ],\n      [\n        \"▁flexibility\",\n        -11.246652603149414\n      ],\n      [\n        \"▁jamais\",\n        -11.24670696258545\n      ],\n      [\n        \"UC\",\n        -11.246740341186523\n      ],\n      [\n        \"▁4,\",\n        -11.246793746948242\n      ],\n      [\n        \"▁Made\",\n        -11.247078895568848\n      ],\n      [\n        \"▁solche\",\n        -11.247113227844238\n      ],\n      [\n        \"▁tri\",\n        -11.247237205505371\n      ],\n      [\n        \"▁outfit\",\n        -11.247243881225586\n      ],\n      [\n        \"м\",\n        -11.247267723083496\n      ],\n      [\n        \"▁encouraged\",\n        -11.247477531433105\n      ],\n      [\n        \"trac\",\n        -11.247552871704102\n      ],\n      [\n        \"▁genetic\",\n        -11.24755859375\n      ],\n      [\n        \"▁beneficial\",\n        -11.247747421264648\n      ],\n      [\n        \"mă\",\n        -11.247849464416504\n      ],\n      [\n        \"involving\",\n        -11.247879028320312\n      ],\n      [\n        \"▁knee\",\n        -11.247879028320312\n      ],\n      [\n        \"▁respective\",\n        -11.248316764831543\n      ],\n      [\n        \"▁controlled\",\n        -11.248350143432617\n      ],\n      [\n        \"▁Rück\",\n        -11.24837589263916\n      ],\n      [\n        \"LC\",\n        -11.248592376708984\n      ],\n      [\n        \"▁highlight\",\n        -11.248634338378906\n      ],\n      [\n        \"chem\",\n        -11.248797416687012\n      ],\n      [\n        \"▁Bis\",\n        -11.24956226348877\n      ],\n      [\n        \"▁graphics\",\n        -11.249592781066895\n      ],\n      [\n        \"▁posibil\",\n        -11.249672889709473\n      ],\n      [\n        \"orul\",\n        -11.249682426452637\n      ],\n      [\n        \"imagin\",\n        -11.249836921691895\n      ],\n      [\n        \"▁draft\",\n        -11.250006675720215\n      ],\n      [\n        \"shaped\",\n        -11.250219345092773\n      ],\n      [\n        \"▁suggests\",\n        -11.250221252441406\n      ],\n      [\n        \"uvre\",\n        -11.250509262084961\n      ],\n      [\n        \"page\",\n        -11.250545501708984\n      ],\n      [\n        \"▁sentiment\",\n        -11.250685691833496\n      ],\n      [\n        \"▁loop\",\n        -11.251015663146973\n      ],\n      [\n        \"▁Quality\",\n        -11.251839637756348\n      ],\n      [\n        \"▁volunteers\",\n        -11.251869201660156\n      ],\n      [\n        \"▁representation\",\n        -11.251923561096191\n      ],\n      [\n        \"▁examination\",\n        -11.252134323120117\n      ],\n      [\n        \"▁(2)\",\n        -11.252225875854492\n      ],\n      [\n        \"assi\",\n        -11.252435684204102\n      ],\n      [\n        \"▁till\",\n        -11.252486228942871\n      ],\n      [\n        \"▁Catholic\",\n        -11.252618789672852\n      ],\n      [\n        \"▁2020\",\n        -11.252726554870605\n      ],\n      [\n        \"▁random\",\n        -11.252764701843262\n      ],\n      [\n        \"tage\",\n        -11.253146171569824\n      ],\n      [\n        \"▁baking\",\n        -11.253690719604492\n      ],\n      [\n        \"▁Musik\",\n        -11.253852844238281\n      ],\n      [\n        \"▁SC\",\n        -11.253867149353027\n      ],\n      [\n        \"▁möchte\",\n        -11.254390716552734\n      ],\n      [\n        \"▁gene\",\n        -11.254411697387695\n      ],\n      [\n        \"▁kam\",\n        -11.254928588867188\n      ],\n      [\n        \"▁inspire\",\n        -11.254974365234375\n      ],\n      [\n        \"unk\",\n        -11.255097389221191\n      ],\n      [\n        \"▁Final\",\n        -11.255477905273438\n      ],\n      [\n        \"▁jeden\",\n        -11.255497932434082\n      ],\n      [\n        \"▁LLC\",\n        -11.255962371826172\n      ],\n      [\n        \"▁sistem\",\n        -11.25613784790039\n      ],\n      [\n        \"▁stages\",\n        -11.256441116333008\n      ],\n      [\n        \"▁texture\",\n        -11.256613731384277\n      ],\n      [\n        \"rib\",\n        -11.256739616394043\n      ],\n      [\n        \"lung\",\n        -11.256782531738281\n      ],\n      [\n        \"▁breath\",\n        -11.256814002990723\n      ],\n      [\n        \"▁hosted\",\n        -11.256844520568848\n      ],\n      [\n        \"▁Kingdom\",\n        -11.257079124450684\n      ],\n      [\n        \"▁politics\",\n        -11.257121086120605\n      ],\n      [\n        \"▁mood\",\n        -11.257122993469238\n      ],\n      [\n        \"cam\",\n        -11.257285118103027\n      ],\n      [\n        \"▁liked\",\n        -11.257287979125977\n      ],\n      [\n        \"▁Credit\",\n        -11.257304191589355\n      ],\n      [\n        \"tisch\",\n        -11.257527351379395\n      ],\n      [\n        \"▁everywhere\",\n        -11.257692337036133\n      ],\n      [\n        \"▁poti\",\n        -11.257915496826172\n      ],\n      [\n        \"▁fruits\",\n        -11.258264541625977\n      ],\n      [\n        \"oire\",\n        -11.258322715759277\n      ],\n      [\n        \"▁mesure\",\n        -11.258586883544922\n      ],\n      [\n        \"▁Studies\",\n        -11.258838653564453\n      ],\n      [\n        \"▁provision\",\n        -11.25888729095459\n      ],\n      [\n        \"▁Maria\",\n        -11.258927345275879\n      ],\n      [\n        \"▁necessarily\",\n        -11.259103775024414\n      ],\n      [\n        \"▁Net\",\n        -11.259212493896484\n      ],\n      [\n        \"▁scar\",\n        -11.259307861328125\n      ],\n      [\n        \"▁tracks\",\n        -11.259424209594727\n      ],\n      [\n        \"▁ads\",\n        -11.259856224060059\n      ],\n      [\n        \"termin\",\n        -11.259861946105957\n      ],\n      [\n        \"▁Yo\",\n        -11.26022720336914\n      ],\n      [\n        \"atory\",\n        -11.260252952575684\n      ],\n      [\n        \"itoare\",\n        -11.26025676727295\n      ],\n      [\n        \"▁colours\",\n        -11.260563850402832\n      ],\n      [\n        \"▁correctly\",\n        -11.260817527770996\n      ],\n      [\n        \"▁Trade\",\n        -11.26090145111084\n      ],\n      [\n        \"▁Week\",\n        -11.261052131652832\n      ],\n      [\n        \"▁Premier\",\n        -11.261499404907227\n      ],\n      [\n        \"▁designers\",\n        -11.261600494384766\n      ],\n      [\n        \"▁BE\",\n        -11.261879920959473\n      ],\n      [\n        \"▁desktop\",\n        -11.261929512023926\n      ],\n      [\n        \"▁lifetime\",\n        -11.262046813964844\n      ],\n      [\n        \"▁Kind\",\n        -11.26213264465332\n      ],\n      [\n        \"▁divers\",\n        -11.262246131896973\n      ],\n      [\n        \"rain\",\n        -11.262260437011719\n      ],\n      [\n        \"▁Von\",\n        -11.262263298034668\n      ],\n      [\n        \"▁bal\",\n        -11.262568473815918\n      ],\n      [\n        \"▁shots\",\n        -11.262624740600586\n      ],\n      [\n        \"▁accommodate\",\n        -11.262767791748047\n      ],\n      [\n        \"▁Paper\",\n        -11.263001441955566\n      ],\n      [\n        \"▁interaction\",\n        -11.263191223144531\n      ],\n      [\n        \"▁acquisition\",\n        -11.263233184814453\n      ],\n      [\n        \"▁neuro\",\n        -11.26378345489502\n      ],\n      [\n        \"▁institution\",\n        -11.26391887664795\n      ],\n      [\n        \"▁automatic\",\n        -11.26403522491455\n      ],\n      [\n        \"▁assess\",\n        -11.264177322387695\n      ],\n      [\n        \"▁manifest\",\n        -11.264199256896973\n      ],\n      [\n        \"▁audit\",\n        -11.264202117919922\n      ],\n      [\n        \"▁câte\",\n        -11.264406204223633\n      ],\n      [\n        \"▁insight\",\n        -11.264533996582031\n      ],\n      [\n        \"▁lange\",\n        -11.264781951904297\n      ],\n      [\n        \"▁retirement\",\n        -11.264795303344727\n      ],\n      [\n        \"sons\",\n        -11.264864921569824\n      ],\n      [\n        \"▁Asian\",\n        -11.26492691040039\n      ],\n      [\n        \"▁rail\",\n        -11.264978408813477\n      ],\n      [\n        \"▁Awards\",\n        -11.264982223510742\n      ],\n      [\n        \"Avec\",\n        -11.265035629272461\n      ],\n      [\n        \"SO\",\n        -11.26511287689209\n      ],\n      [\n        \"para\",\n        -11.265304565429688\n      ],\n      [\n        \"▁tant\",\n        -11.265562057495117\n      ],\n      [\n        \"▁strike\",\n        -11.265693664550781\n      ],\n      [\n        \"▁transformation\",\n        -11.265742301940918\n      ],\n      [\n        \"▁leicht\",\n        -11.26586627960205\n      ],\n      [\n        \"л\",\n        -11.265996932983398\n      ],\n      [\n        \"fat\",\n        -11.26629638671875\n      ],\n      [\n        \"▁Qui\",\n        -11.266626358032227\n      ],\n      [\n        \"▁chip\",\n        -11.26663589477539\n      ],\n      [\n        \"titude\",\n        -11.266640663146973\n      ],\n      [\n        \"▁Projekt\",\n        -11.266998291015625\n      ],\n      [\n        \"▁statt\",\n        -11.267010688781738\n      ],\n      [\n        \"▁findet\",\n        -11.267184257507324\n      ],\n      [\n        \"▁telephone\",\n        -11.267251968383789\n      ],\n      [\n        \"▁staying\",\n        -11.267267227172852\n      ],\n      [\n        \"▁Mess\",\n        -11.267353057861328\n      ],\n      [\n        \"▁patio\",\n        -11.267382621765137\n      ],\n      [\n        \"▁afla\",\n        -11.267890930175781\n      ],\n      [\n        \"▁administrative\",\n        -11.267910957336426\n      ],\n      [\n        \"▁gemeinsam\",\n        -11.268129348754883\n      ],\n      [\n        \"▁suppliers\",\n        -11.268136024475098\n      ],\n      [\n        \"ark\",\n        -11.268181800842285\n      ],\n      [\n        \"▁rice\",\n        -11.268397331237793\n      ],\n      [\n        \"▁stretch\",\n        -11.268439292907715\n      ],\n      [\n        \"▁compact\",\n        -11.268651008605957\n      ],\n      [\n        \"fire\",\n        -11.268756866455078\n      ],\n      [\n        \"в\",\n        -11.268963813781738\n      ],\n      [\n        \"vision\",\n        -11.269035339355469\n      ],\n      [\n        \"▁Mag\",\n        -11.269368171691895\n      ],\n      [\n        \"▁dreams\",\n        -11.269472122192383\n      ],\n      [\n        \"▁funny\",\n        -11.26968765258789\n      ],\n      [\n        \"▁lässt\",\n        -11.270216941833496\n      ],\n      [\n        \"cade\",\n        -11.270448684692383\n      ],\n      [\n        \"▁drama\",\n        -11.270484924316406\n      ],\n      [\n        \"▁schimb\",\n        -11.270767211914062\n      ],\n      [\n        \"PO\",\n        -11.270785331726074\n      ],\n      [\n        \"▁Sim\",\n        -11.270806312561035\n      ],\n      [\n        \"▁motivation\",\n        -11.271045684814453\n      ],\n      [\n        \"▁presents\",\n        -11.27138614654541\n      ],\n      [\n        \"▁1997\",\n        -11.271828651428223\n      ],\n      [\n        \"agi\",\n        -11.271883010864258\n      ],\n      [\n        \"▁optimal\",\n        -11.27198314666748\n      ],\n      [\n        \"▁folder\",\n        -11.271995544433594\n      ],\n      [\n        \"stro\",\n        -11.272034645080566\n      ],\n      [\n        \"▁Han\",\n        -11.272072792053223\n      ],\n      [\n        \"▁Ei\",\n        -11.27220344543457\n      ],\n      [\n        \"▁pus\",\n        -11.272356986999512\n      ],\n      [\n        \"▁Learning\",\n        -11.272531509399414\n      ],\n      [\n        \"oop\",\n        -11.272603034973145\n      ],\n      [\n        \"▁Type\",\n        -11.272658348083496\n      ],\n      [\n        \"space\",\n        -11.272665023803711\n      ],\n      [\n        \"▁define\",\n        -11.273098945617676\n      ],\n      [\n        \"▁plug\",\n        -11.273098945617676\n      ],\n      [\n        \"yard\",\n        -11.273188591003418\n      ],\n      [\n        \"▁utility\",\n        -11.273297309875488\n      ],\n      [\n        \"über\",\n        -11.273561477661133\n      ],\n      [\n        \"▁commun\",\n        -11.273627281188965\n      ],\n      [\n        \"▁directed\",\n        -11.273842811584473\n      ],\n      [\n        \"▁consent\",\n        -11.273893356323242\n      ],\n      [\n        \"▁DNA\",\n        -11.274068832397461\n      ],\n      [\n        \"▁statements\",\n        -11.274130821228027\n      ],\n      [\n        \"real\",\n        -11.274298667907715\n      ],\n      [\n        \"active\",\n        -11.274430274963379\n      ],\n      [\n        \"school\",\n        -11.274965286254883\n      ],\n      [\n        \"▁mic\",\n        -11.275360107421875\n      ],\n      [\n        \"▁acestui\",\n        -11.275467872619629\n      ],\n      [\n        \"scale\",\n        -11.27550220489502\n      ],\n      [\n        \"▁Mid\",\n        -11.275628089904785\n      ],\n      [\n        \"▁Chair\",\n        -11.275874137878418\n      ],\n      [\n        \"к\",\n        -11.275936126708984\n      ],\n      [\n        \"▁Bas\",\n        -11.27630615234375\n      ],\n      [\n        \"▁38\",\n        -11.276379585266113\n      ],\n      [\n        \"erin\",\n        -11.276461601257324\n      ],\n      [\n        \"▁Everyone\",\n        -11.27686882019043\n      ],\n      [\n        \"COM\",\n        -11.276907920837402\n      ],\n      [\n        \"▁chronic\",\n        -11.277079582214355\n      ],\n      [\n        \"▁doctors\",\n        -11.277222633361816\n      ],\n      [\n        \"▁sh\",\n        -11.277276039123535\n      ],\n      [\n        \"sport\",\n        -11.27740478515625\n      ],\n      [\n        \"▁volunteer\",\n        -11.277512550354004\n      ],\n      [\n        \"▁drinking\",\n        -11.277839660644531\n      ],\n      [\n        \"▁Mas\",\n        -11.277868270874023\n      ],\n      [\n        \"▁pursue\",\n        -11.2780122756958\n      ],\n      [\n        \"▁exposed\",\n        -11.278536796569824\n      ],\n      [\n        \"exe\",\n        -11.278660774230957\n      ],\n      [\n        \"hung\",\n        -11.278841972351074\n      ],\n      [\n        \"▁Tier\",\n        -11.278921127319336\n      ],\n      [\n        \"▁plac\",\n        -11.279121398925781\n      ],\n      [\n        \"▁proiect\",\n        -11.279136657714844\n      ],\n      [\n        \"▁literally\",\n        -11.279288291931152\n      ],\n      [\n        \"▁acolo\",\n        -11.279412269592285\n      ],\n      [\n        \"▁User\",\n        -11.279485702514648\n      ],\n      [\n        \"UT\",\n        -11.279598236083984\n      ],\n      [\n        \"▁hyper\",\n        -11.279623985290527\n      ],\n      [\n        \"▁seed\",\n        -11.279794692993164\n      ],\n      [\n        \"▁literature\",\n        -11.2802734375\n      ],\n      [\n        \"▁Holy\",\n        -11.280373573303223\n      ],\n      [\n        \"▁jeu\",\n        -11.280396461486816\n      ],\n      [\n        \"▁licensed\",\n        -11.280896186828613\n      ],\n      [\n        \"station\",\n        -11.280900955200195\n      ],\n      [\n        \"▁criteria\",\n        -11.281292915344238\n      ],\n      [\n        \"▁sufficient\",\n        -11.281292915344238\n      ],\n      [\n        \"▁gestion\",\n        -11.281512260437012\n      ],\n      [\n        \"▁pic\",\n        -11.281549453735352\n      ],\n      [\n        \"▁64\",\n        -11.28170108795166\n      ],\n      [\n        \"▁facts\",\n        -11.281905174255371\n      ],\n      [\n        \"▁Bild\",\n        -11.282098770141602\n      ],\n      [\n        \"obi\",\n        -11.28212833404541\n      ],\n      [\n        \"▁nie\",\n        -11.282362937927246\n      ],\n      [\n        \"▁Jewish\",\n        -11.282756805419922\n      ],\n      [\n        \"bor\",\n        -11.28281307220459\n      ],\n      [\n        \"▁1980\",\n        -11.28286361694336\n      ],\n      [\n        \"▁Fach\",\n        -11.282917976379395\n      ],\n      [\n        \"craft\",\n        -11.283047676086426\n      ],\n      [\n        \"▁Pakistan\",\n        -11.283408164978027\n      ],\n      [\n        \"▁Mos\",\n        -11.283621788024902\n      ],\n      [\n        \"▁toilet\",\n        -11.283844947814941\n      ],\n      [\n        \"partea\",\n        -11.28391170501709\n      ],\n      [\n        \"case\",\n        -11.284221649169922\n      ],\n      [\n        \"▁clock\",\n        -11.28430461883545\n      ],\n      [\n        \"▁parc\",\n        -11.284602165222168\n      ],\n      [\n        \"▁legislation\",\n        -11.284692764282227\n      ],\n      [\n        \"▁icon\",\n        -11.284933090209961\n      ],\n      [\n        \"etz\",\n        -11.285178184509277\n      ],\n      [\n        \"ept\",\n        -11.285270690917969\n      ],\n      [\n        \"▁Corporation\",\n        -11.28585433959961\n      ],\n      [\n        \"▁requested\",\n        -11.285983085632324\n      ],\n      [\n        \"▁column\",\n        -11.286088943481445\n      ],\n      [\n        \"rier\",\n        -11.286120414733887\n      ],\n      [\n        \"uß\",\n        -11.2861967086792\n      ],\n      [\n        \"▁wohl\",\n        -11.286418914794922\n      ],\n      [\n        \"tell\",\n        -11.286569595336914\n      ],\n      [\n        \"gno\",\n        -11.286608695983887\n      ],\n      [\n        \"▁diseases\",\n        -11.286726951599121\n      ],\n      [\n        \"Sch\",\n        -11.286762237548828\n      ],\n      [\n        \"▁colon\",\n        -11.287075996398926\n      ],\n      [\n        \"▁Based\",\n        -11.28709602355957\n      ],\n      [\n        \"▁flu\",\n        -11.28725528717041\n      ],\n      [\n        \"▁vocal\",\n        -11.287408828735352\n      ],\n      [\n        \"▁virus\",\n        -11.287693977355957\n      ],\n      [\n        \"▁traveling\",\n        -11.287750244140625\n      ],\n      [\n        \"bul\",\n        -11.287837982177734\n      ],\n      [\n        \"т\",\n        -11.28794002532959\n      ],\n      [\n        \"city\",\n        -11.287961959838867\n      ],\n      [\n        \"AU\",\n        -11.287991523742676\n      ],\n      [\n        \"wide\",\n        -11.288037300109863\n      ],\n      [\n        \"▁solo\",\n        -11.288061141967773\n      ],\n      [\n        \"▁functionality\",\n        -11.288214683532715\n      ],\n      [\n        \"▁reveal\",\n        -11.28831672668457\n      ],\n      [\n        \"sign\",\n        -11.288952827453613\n      ],\n      [\n        \"▁closing\",\n        -11.288971900939941\n      ],\n      [\n        \"▁peak\",\n        -11.289087295532227\n      ],\n      [\n        \"▁practic\",\n        -11.289398193359375\n      ],\n      [\n        \"than\",\n        -11.289473533630371\n      ],\n      [\n        \"▁driven\",\n        -11.289484977722168\n      ],\n      [\n        \"êtes\",\n        -11.289548873901367\n      ],\n      [\n        \"high\",\n        -11.290016174316406\n      ],\n      [\n        \"power\",\n        -11.290226936340332\n      ],\n      [\n        \"▁Lin\",\n        -11.29028606414795\n      ],\n      [\n        \"▁dose\",\n        -11.29034423828125\n      ],\n      [\n        \"▁pocket\",\n        -11.290650367736816\n      ],\n      [\n        \"▁Classic\",\n        -11.29067611694336\n      ],\n      [\n        \"▁packaging\",\n        -11.290792465209961\n      ],\n      [\n        \"▁distinct\",\n        -11.290800094604492\n      ],\n      [\n        \"▁côté\",\n        -11.291094779968262\n      ],\n      [\n        \"▁breast\",\n        -11.29127025604248\n      ],\n      [\n        \"▁folosit\",\n        -11.29133129119873\n      ],\n      [\n        \"▁drinks\",\n        -11.291353225708008\n      ],\n      [\n        \"▁Dog\",\n        -11.291529655456543\n      ],\n      [\n        \"ailleurs\",\n        -11.291658401489258\n      ],\n      [\n        \"▁caz\",\n        -11.291804313659668\n      ],\n      [\n        \"▁escape\",\n        -11.29188346862793\n      ],\n      [\n        \"▁warranty\",\n        -11.291902542114258\n      ],\n      [\n        \"▁pulled\",\n        -11.291996955871582\n      ],\n      [\n        \"data\",\n        -11.292088508605957\n      ],\n      [\n        \"▁facilitate\",\n        -11.292213439941406\n      ],\n      [\n        \"É\",\n        -11.292335510253906\n      ],\n      [\n        \"▁SP\",\n        -11.292403221130371\n      ],\n      [\n        \"lant\",\n        -11.292557716369629\n      ],\n      [\n        \"AD\",\n        -11.29256534576416\n      ],\n      [\n        \"▁Print\",\n        -11.292802810668945\n      ],\n      [\n        \"mond\",\n        -11.292863845825195\n      ],\n      [\n        \"▁strange\",\n        -11.292875289916992\n      ],\n      [\n        \"▁Hor\",\n        -11.293227195739746\n      ],\n      [\n        \"▁Collection\",\n        -11.293328285217285\n      ],\n      [\n        \"arm\",\n        -11.29346752166748\n      ],\n      [\n        \"cas\",\n        -11.293691635131836\n      ],\n      [\n        \"arrow\",\n        -11.29379940032959\n      ],\n      [\n        \"▁carrying\",\n        -11.293927192687988\n      ],\n      [\n        \"▁wave\",\n        -11.294661521911621\n      ],\n      [\n        \"setzt\",\n        -11.294907569885254\n      ],\n      [\n        \"▁construct\",\n        -11.29514217376709\n      ],\n      [\n        \"▁acts\",\n        -11.295269966125488\n      ],\n      [\n        \"▁Action\",\n        -11.295342445373535\n      ],\n      [\n        \"▁Kim\",\n        -11.295354843139648\n      ],\n      [\n        \"oxid\",\n        -11.295459747314453\n      ],\n      [\n        \"fish\",\n        -11.295519828796387\n      ],\n      [\n        \"▁damaged\",\n        -11.295660018920898\n      ],\n      [\n        \"▁Greek\",\n        -11.295747756958008\n      ],\n      [\n        \"▁belt\",\n        -11.295772552490234\n      ],\n      [\n        \"▁Prior\",\n        -11.295778274536133\n      ],\n      [\n        \"▁marks\",\n        -11.295936584472656\n      ],\n      [\n        \"▁lumea\",\n        -11.296183586120605\n      ],\n      [\n        \"▁twenty\",\n        -11.296196937561035\n      ],\n      [\n        \"▁locul\",\n        -11.296360969543457\n      ],\n      [\n        \"▁Army\",\n        -11.296524047851562\n      ],\n      [\n        \"apt\",\n        -11.296602249145508\n      ],\n      [\n        \"▁limits\",\n        -11.296733856201172\n      ],\n      [\n        \"▁cruise\",\n        -11.296966552734375\n      ],\n      [\n        \"▁List\",\n        -11.296998023986816\n      ],\n      [\n        \"utilisation\",\n        -11.29753589630127\n      ],\n      [\n        \"▁personality\",\n        -11.297622680664062\n      ],\n      [\n        \"▁sections\",\n        -11.297759056091309\n      ],\n      [\n        \"▁drawn\",\n        -11.29797649383545\n      ],\n      [\n        \"▁mold\",\n        -11.298277854919434\n      ],\n      [\n        \"▁Think\",\n        -11.298333168029785\n      ],\n      [\n        \"▁holidays\",\n        -11.298355102539062\n      ],\n      [\n        \"▁critic\",\n        -11.298545837402344\n      ],\n      [\n        \"grade\",\n        -11.298660278320312\n      ],\n      [\n        \"▁sick\",\n        -11.299074172973633\n      ],\n      [\n        \"▁characteristics\",\n        -11.299237251281738\n      ],\n      [\n        \"▁echipa\",\n        -11.299272537231445\n      ],\n      [\n        \"▁Fast\",\n        -11.29929256439209\n      ],\n      [\n        \"▁Br\",\n        -11.299600601196289\n      ],\n      [\n        \"▁Reise\",\n        -11.299734115600586\n      ],\n      [\n        \"teen\",\n        -11.299749374389648\n      ],\n      [\n        \"uci\",\n        -11.299949645996094\n      ],\n      [\n        \"!”\",\n        -11.300180435180664\n      ],\n      [\n        \"ppe\",\n        -11.300532341003418\n      ],\n      [\n        \"▁talked\",\n        -11.301164627075195\n      ],\n      [\n        \"▁gap\",\n        -11.301473617553711\n      ],\n      [\n        \"homme\",\n        -11.301778793334961\n      ],\n      [\n        \"▁interact\",\n        -11.301934242248535\n      ],\n      [\n        \"▁dollar\",\n        -11.302276611328125\n      ],\n      [\n        \"▁bone\",\n        -11.302309036254883\n      ],\n      [\n        \"▁Einsatz\",\n        -11.302343368530273\n      ],\n      [\n        \"▁sad\",\n        -11.302434921264648\n      ],\n      [\n        \"any\",\n        -11.302445411682129\n      ],\n      [\n        \"tation\",\n        -11.302666664123535\n      ],\n      [\n        \"▁Haupt\",\n        -11.302748680114746\n      ],\n      [\n        \"iva\",\n        -11.302781105041504\n      ],\n      [\n        \"▁Schu\",\n        -11.302916526794434\n      ],\n      [\n        \"▁evaluate\",\n        -11.3036470413208\n      ],\n      [\n        \"▁variant\",\n        -11.303807258605957\n      ],\n      [\n        \"▁IS\",\n        -11.303879737854004\n      ],\n      [\n        \"▁PRO\",\n        -11.303947448730469\n      ],\n      [\n        \"▁vine\",\n        -11.303959846496582\n      ],\n      [\n        \"rut\",\n        -11.304062843322754\n      ],\n      [\n        \"▁existence\",\n        -11.30443286895752\n      ],\n      [\n        \"-7\",\n        -11.304525375366211\n      ],\n      [\n        \"ancy\",\n        -11.304702758789062\n      ],\n      [\n        \"▁Want\",\n        -11.305023193359375\n      ],\n      [\n        \"alism\",\n        -11.305127143859863\n      ],\n      [\n        \"ranging\",\n        -11.30550765991211\n      ],\n      [\n        \"preis\",\n        -11.305551528930664\n      ],\n      [\n        \"All\",\n        -11.305620193481445\n      ],\n      [\n        \"▁reception\",\n        -11.30565071105957\n      ],\n      [\n        \"mai\",\n        -11.305730819702148\n      ],\n      [\n        \"▁lease\",\n        -11.30577278137207\n      ],\n      [\n        \"▁finest\",\n        -11.30578899383545\n      ],\n      [\n        \"▁evident\",\n        -11.305874824523926\n      ],\n      [\n        \"▁Easy\",\n        -11.306075096130371\n      ],\n      [\n        \"▁gilt\",\n        -11.306085586547852\n      ],\n      [\n        \"▁trips\",\n        -11.306344985961914\n      ],\n      [\n        \"▁skilled\",\n        -11.306368827819824\n      ],\n      [\n        \"consists\",\n        -11.306456565856934\n      ],\n      [\n        \"front\",\n        -11.306635856628418\n      ],\n      [\n        \"rati\",\n        -11.306652069091797\n      ],\n      [\n        \"▁Following\",\n        -11.30678653717041\n      ],\n      [\n        \"▁Medicine\",\n        -11.307161331176758\n      ],\n      [\n        \"▁pune\",\n        -11.30729866027832\n      ],\n      [\n        \"▁errors\",\n        -11.307354927062988\n      ],\n      [\n        \"arian\",\n        -11.307613372802734\n      ],\n      [\n        \"lib\",\n        -11.30811882019043\n      ],\n      [\n        \"SR\",\n        -11.308351516723633\n      ],\n      [\n        \"ML\",\n        -11.308568000793457\n      ],\n      [\n        \"▁Safety\",\n        -11.308823585510254\n      ],\n      [\n        \"▁clar\",\n        -11.309355735778809\n      ],\n      [\n        \"New\",\n        -11.309764862060547\n      ],\n      [\n        \"▁37\",\n        -11.309773445129395\n      ],\n      [\n        \"▁Administration\",\n        -11.309823036193848\n      ],\n      [\n        \"▁2.0\",\n        -11.310120582580566\n      ],\n      [\n        \"▁obviously\",\n        -11.310196876525879\n      ],\n      [\n        \"▁Mitarbeiter\",\n        -11.310254096984863\n      ],\n      [\n        \"▁improvements\",\n        -11.31043529510498\n      ],\n      [\n        \"▁Cut\",\n        -11.310630798339844\n      ],\n      [\n        \"▁Natural\",\n        -11.310672760009766\n      ],\n      [\n        \"▁arrival\",\n        -11.311182975769043\n      ],\n      [\n        \"▁pizza\",\n        -11.311339378356934\n      ],\n      [\n        \"eşti\",\n        -11.311570167541504\n      ],\n      [\n        \"cept\",\n        -11.311654090881348\n      ],\n      [\n        \"▁livre\",\n        -11.311686515808105\n      ],\n      [\n        \"▁nombreux\",\n        -11.312195777893066\n      ],\n      [\n        \"▁authentic\",\n        -11.312231063842773\n      ],\n      [\n        \"▁gemacht\",\n        -11.312472343444824\n      ],\n      [\n        \"▁broadcast\",\n        -11.312478065490723\n      ],\n      [\n        \"▁stronger\",\n        -11.312545776367188\n      ],\n      [\n        \"UP\",\n        -11.31257152557373\n      ],\n      [\n        \"▁centers\",\n        -11.312614440917969\n      ],\n      [\n        \"▁petite\",\n        -11.312617301940918\n      ],\n      [\n        \"▁spots\",\n        -11.312626838684082\n      ],\n      [\n        \"▁crystal\",\n        -11.312756538391113\n      ],\n      [\n        \"▁salon\",\n        -11.313044548034668\n      ],\n      [\n        \"▁gained\",\n        -11.313098907470703\n      ],\n      [\n        \"▁Mus\",\n        -11.313215255737305\n      ],\n      [\n        \"▁lens\",\n        -11.313223838806152\n      ],\n      [\n        \"▁ihm\",\n        -11.313231468200684\n      ],\n      [\n        \"minute\",\n        -11.313573837280273\n      ],\n      [\n        \"▁greatly\",\n        -11.313587188720703\n      ],\n      [\n        \"LP\",\n        -11.31361198425293\n      ],\n      [\n        \"rait\",\n        -11.314027786254883\n      ],\n      [\n        \"▁bid\",\n        -11.314154624938965\n      ],\n      [\n        \"▁cit\",\n        -11.314203262329102\n      ],\n      [\n        \"entreprise\",\n        -11.31435775756836\n      ],\n      [\n        \"▁55\",\n        -11.314533233642578\n      ],\n      [\n        \"▁respectively\",\n        -11.314536094665527\n      ],\n      [\n        \"▁lo\",\n        -11.314638137817383\n      ],\n      [\n        \"▁cons\",\n        -11.314743995666504\n      ],\n      [\n        \"▁Energie\",\n        -11.315169334411621\n      ],\n      [\n        \"▁OK\",\n        -11.31521224975586\n      ],\n      [\n        \"▁grill\",\n        -11.315338134765625\n      ],\n      [\n        \"▁heading\",\n        -11.31549072265625\n      ],\n      [\n        \"▁sollten\",\n        -11.315491676330566\n      ],\n      [\n        \"▁Fragen\",\n        -11.315528869628906\n      ],\n      [\n        \"▁Poli\",\n        -11.315556526184082\n      ],\n      [\n        \"▁studying\",\n        -11.315723419189453\n      ],\n      [\n        \"▁développement\",\n        -11.315882682800293\n      ],\n      [\n        \"▁foam\",\n        -11.316035270690918\n      ],\n      [\n        \"▁1996\",\n        -11.316511154174805\n      ],\n      [\n        \"▁disaster\",\n        -11.31662654876709\n      ],\n      [\n        \"▁cafe\",\n        -11.317262649536133\n      ],\n      [\n        \"▁moves\",\n        -11.317267417907715\n      ],\n      [\n        \"focuses\",\n        -11.317712783813477\n      ],\n      [\n        \"▁Avenue\",\n        -11.317834854125977\n      ],\n      [\n        \"▁humans\",\n        -11.31784439086914\n      ],\n      [\n        \"▁(3\",\n        -11.318021774291992\n      ],\n      [\n        \"▁région\",\n        -11.318347930908203\n      ],\n      [\n        \"▁DJ\",\n        -11.318608283996582\n      ],\n      [\n        \"shop\",\n        -11.318819046020508\n      ],\n      [\n        \"▁acting\",\n        -11.318843841552734\n      ],\n      [\n        \"▁Justice\",\n        -11.318967819213867\n      ],\n      [\n        \"▁trouve\",\n        -11.319010734558105\n      ],\n      [\n        \"▁Estate\",\n        -11.319040298461914\n      ],\n      [\n        \"▁strict\",\n        -11.319231986999512\n      ],\n      [\n        \"▁talks\",\n        -11.319283485412598\n      ],\n      [\n        \"▁mat\",\n        -11.319290161132812\n      ],\n      [\n        \"▁completion\",\n        -11.319327354431152\n      ],\n      [\n        \"delivering\",\n        -11.31943416595459\n      ],\n      [\n        \"CD\",\n        -11.31973934173584\n      ],\n      [\n        \"0%\",\n        -11.319960594177246\n      ],\n      [\n        \"▁creativity\",\n        -11.320253372192383\n      ],\n      [\n        \"BR\",\n        -11.320272445678711\n      ],\n      [\n        \"▁occurred\",\n        -11.320357322692871\n      ],\n      [\n        \"Car\",\n        -11.320590019226074\n      ],\n      [\n        \"▁rising\",\n        -11.320761680603027\n      ],\n      [\n        \"gger\",\n        -11.32086181640625\n      ],\n      [\n        \"▁Gene\",\n        -11.320901870727539\n      ],\n      [\n        \"▁workplace\",\n        -11.320914268493652\n      ],\n      [\n        \"phy\",\n        -11.321065902709961\n      ],\n      [\n        \"▁Bla\",\n        -11.32107162475586\n      ],\n      [\n        \"▁trailer\",\n        -11.32120418548584\n      ],\n      [\n        \"▁Forest\",\n        -11.321205139160156\n      ],\n      [\n        \"▁profession\",\n        -11.321246147155762\n      ],\n      [\n        \"▁Father\",\n        -11.32137680053711\n      ],\n      [\n        \"flu\",\n        -11.321487426757812\n      ],\n      [\n        \"tone\",\n        -11.321489334106445\n      ],\n      [\n        \"▁sexual\",\n        -11.321736335754395\n      ],\n      [\n        \"▁Map\",\n        -11.321805953979492\n      ],\n      [\n        \"OT\",\n        -11.3218412399292\n      ],\n      [\n        \"▁Us\",\n        -11.321878433227539\n      ],\n      [\n        \"tôt\",\n        -11.321892738342285\n      ],\n      [\n        \"▁Wert\",\n        -11.321901321411133\n      ],\n      [\n        \"preparing\",\n        -11.322121620178223\n      ],\n      [\n        \"isé\",\n        -11.322243690490723\n      ],\n      [\n        \"▁lake\",\n        -11.322461128234863\n      ],\n      [\n        \"eed\",\n        -11.32270336151123\n      ],\n      [\n        \"jun\",\n        -11.322888374328613\n      ],\n      [\n        \"▁implemented\",\n        -11.323014259338379\n      ],\n      [\n        \"vid\",\n        -11.323116302490234\n      ],\n      [\n        \"igne\",\n        -11.323201179504395\n      ],\n      [\n        \"▁follows\",\n        -11.323214530944824\n      ],\n      [\n        \"▁Eric\",\n        -11.323430061340332\n      ],\n      [\n        \"body\",\n        -11.323530197143555\n      ],\n      [\n        \"▁contained\",\n        -11.323585510253906\n      ],\n      [\n        \"▁massage\",\n        -11.323715209960938\n      ],\n      [\n        \"AV\",\n        -11.323725700378418\n      ],\n      [\n        \"▁insa\",\n        -11.323850631713867\n      ],\n      [\n        \"▁observed\",\n        -11.323892593383789\n      ],\n      [\n        \"▁marque\",\n        -11.324137687683105\n      ],\n      [\n        \"lines\",\n        -11.324451446533203\n      ],\n      [\n        \"▁Frage\",\n        -11.324482917785645\n      ],\n      [\n        \"largely\",\n        -11.324647903442383\n      ],\n      [\n        \"gegeben\",\n        -11.32473087310791\n      ],\n      [\n        \"▁colleagues\",\n        -11.324762344360352\n      ],\n      [\n        \"pha\",\n        -11.32494068145752\n      ],\n      [\n        \"▁representative\",\n        -11.325217247009277\n      ],\n      [\n        \"▁shut\",\n        -11.325650215148926\n      ],\n      [\n        \"▁secondary\",\n        -11.325779914855957\n      ],\n      [\n        \"▁exhibit\",\n        -11.325927734375\n      ],\n      [\n        \"1)\",\n        -11.325932502746582\n      ],\n      [\n        \"mid\",\n        -11.326109886169434\n      ],\n      [\n        \"▁Due\",\n        -11.326229095458984\n      ],\n      [\n        \"▁initiatives\",\n        -11.326457023620605\n      ],\n      [\n        \"▁occurs\",\n        -11.326458930969238\n      ],\n      [\n        \"lent\",\n        -11.326478958129883\n      ],\n      [\n        \"▁façon\",\n        -11.326778411865234\n      ],\n      [\n        \"▁iOS\",\n        -11.326803207397461\n      ],\n      [\n        \"▁exploring\",\n        -11.327000617980957\n      ],\n      [\n        \"▁stations\",\n        -11.327103614807129\n      ],\n      [\n        \"nton\",\n        -11.327234268188477\n      ],\n      [\n        \"▁Country\",\n        -11.32729721069336\n      ],\n      [\n        \"▁shouldn\",\n        -11.327406883239746\n      ],\n      [\n        \"▁casual\",\n        -11.327611923217773\n      ],\n      [\n        \"-18\",\n        -11.32769775390625\n      ],\n      [\n        \"▁maintained\",\n        -11.32772445678711\n      ],\n      [\n        \"▁cart\",\n        -11.327790260314941\n      ],\n      [\n        \"▁propre\",\n        -11.327836036682129\n      ],\n      [\n        \"▁asset\",\n        -11.327948570251465\n      ],\n      [\n        \"firm\",\n        -11.32803726196289\n      ],\n      [\n        \"gla\",\n        -11.328231811523438\n      ],\n      [\n        \"viv\",\n        -11.3282470703125\n      ],\n      [\n        \"▁scientists\",\n        -11.328873634338379\n      ],\n      [\n        \"▁Nor\",\n        -11.328936576843262\n      ],\n      [\n        \"ites\",\n        -11.329320907592773\n      ],\n      [\n        \"▁engaging\",\n        -11.329933166503906\n      ],\n      [\n        \"My\",\n        -11.330178260803223\n      ],\n      [\n        \"▁workshops\",\n        -11.330282211303711\n      ],\n      [\n        \"ffer\",\n        -11.3303804397583\n      ],\n      [\n        \"activité\",\n        -11.33047103881836\n      ],\n      [\n        \"▁tension\",\n        -11.330567359924316\n      ],\n      [\n        \"▁dual\",\n        -11.330668449401855\n      ],\n      [\n        \"uer\",\n        -11.33084774017334\n      ],\n      [\n        \"900\",\n        -11.330941200256348\n      ],\n      [\n        \"SF\",\n        -11.33108139038086\n      ],\n      [\n        \"▁kannst\",\n        -11.331146240234375\n      ],\n      [\n        \"▁bur\",\n        -11.33115291595459\n      ],\n      [\n        \"▁visitor\",\n        -11.331156730651855\n      ],\n      [\n        \"▁granted\",\n        -11.331178665161133\n      ],\n      [\n        \"▁union\",\n        -11.331355094909668\n      ],\n      [\n        \"▁tablet\",\n        -11.331461906433105\n      ],\n      [\n        \"▁Choose\",\n        -11.33146858215332\n      ],\n      [\n        \"ibil\",\n        -11.331551551818848\n      ],\n      [\n        \"▁settlement\",\n        -11.331830978393555\n      ],\n      [\n        \"genommen\",\n        -11.331892967224121\n      ],\n      [\n        \"▁marked\",\n        -11.332956314086914\n      ],\n      [\n        \"▁diagnostic\",\n        -11.333370208740234\n      ],\n      [\n        \"▁prayer\",\n        -11.333529472351074\n      ],\n      [\n        \"▁Toronto\",\n        -11.334035873413086\n      ],\n      [\n        \"trans\",\n        -11.334146499633789\n      ],\n      [\n        \"▁respectiv\",\n        -11.334160804748535\n      ],\n      [\n        \"▁2012.\",\n        -11.334207534790039\n      ],\n      [\n        \"icul\",\n        -11.334394454956055\n      ],\n      [\n        \"▁satisfied\",\n        -11.334527969360352\n      ],\n      [\n        \"▁Fla\",\n        -11.334596633911133\n      ],\n      [\n        \"▁estimate\",\n        -11.334638595581055\n      ],\n      [\n        \"▁Agency\",\n        -11.33466911315918\n      ],\n      [\n        \"OD\",\n        -11.334708213806152\n      ],\n      [\n        \"▁McC\",\n        -11.334746360778809\n      ],\n      [\n        \"bert\",\n        -11.334748268127441\n      ],\n      [\n        \"▁seal\",\n        -11.334771156311035\n      ],\n      [\n        \"aine\",\n        -11.334839820861816\n      ],\n      [\n        \"▁cauza\",\n        -11.334848403930664\n      ],\n      [\n        \"▁wallpaper\",\n        -11.335081100463867\n      ],\n      [\n        \"▁alb\",\n        -11.33536434173584\n      ],\n      [\n        \"▁Sound\",\n        -11.335681915283203\n      ],\n      [\n        \"worth\",\n        -11.33572769165039\n      ],\n      [\n        \"chten\",\n        -11.335858345031738\n      ],\n      [\n        \"programm\",\n        -11.335896492004395\n      ],\n      [\n        \"▁pounds\",\n        -11.336215019226074\n      ],\n      [\n        \"▁coaching\",\n        -11.336278915405273\n      ],\n      [\n        \"▁Furthermore\",\n        -11.336454391479492\n      ],\n      [\n        \"▁Korea\",\n        -11.336471557617188\n      ],\n      [\n        \"▁flour\",\n        -11.336530685424805\n      ],\n      [\n        \"▁sommes\",\n        -11.33657169342041\n      ],\n      [\n        \"▁Repair\",\n        -11.33661937713623\n      ],\n      [\n        \"”)\",\n        -11.336642265319824\n      ],\n      [\n        \"itch\",\n        -11.336675643920898\n      ],\n      [\n        \"blu\",\n        -11.336786270141602\n      ],\n      [\n        \"zar\",\n        -11.336882591247559\n      ],\n      [\n        \"▁diferite\",\n        -11.33745002746582\n      ],\n      [\n        \"▁Golf\",\n        -11.337685585021973\n      ],\n      [\n        \"arch\",\n        -11.33772087097168\n      ],\n      [\n        \"▁panels\",\n        -11.337799072265625\n      ],\n      [\n        \"jan\",\n        -11.337956428527832\n      ],\n      [\n        \"“.\",\n        -11.338240623474121\n      ],\n      [\n        \"izarea\",\n        -11.338324546813965\n      ],\n      [\n        \"▁golden\",\n        -11.33854866027832\n      ],\n      [\n        \"▁flying\",\n        -11.338550567626953\n      ],\n      [\n        \"▁museum\",\n        -11.338700294494629\n      ],\n      [\n        \"▁equivalent\",\n        -11.338759422302246\n      ],\n      [\n        \"▁Lang\",\n        -11.339032173156738\n      ],\n      [\n        \"schi\",\n        -11.339539527893066\n      ],\n      [\n        \"MI\",\n        -11.339595794677734\n      ],\n      [\n        \"▁faci\",\n        -11.339838027954102\n      ],\n      [\n        \"▁Rahmen\",\n        -11.339988708496094\n      ],\n      [\n        \"▁attending\",\n        -11.340130805969238\n      ],\n      [\n        \"′′\",\n        -11.340483665466309\n      ],\n      [\n        \"▁Tro\",\n        -11.341070175170898\n      ],\n      [\n        \"▁gaming\",\n        -11.341447830200195\n      ],\n      [\n        \"▁aujourd\",\n        -11.341479301452637\n      ],\n      [\n        \"▁Wochen\",\n        -11.341526985168457\n      ],\n      [\n        \"▁entering\",\n        -11.341535568237305\n      ],\n      [\n        \"its\",\n        -11.34155559539795\n      ],\n      [\n        \"▁Private\",\n        -11.341866493225098\n      ],\n      [\n        \"▁Ocean\",\n        -11.34188175201416\n      ],\n      [\n        \"▁01\",\n        -11.342098236083984\n      ],\n      [\n        \"▁coloring\",\n        -11.342188835144043\n      ],\n      [\n        \"ător\",\n        -11.34253215789795\n      ],\n      [\n        \"▁flooring\",\n        -11.342548370361328\n      ],\n      [\n        \"▁downtown\",\n        -11.34276294708252\n      ],\n      [\n        \"rab\",\n        -11.342998504638672\n      ],\n      [\n        \"HI\",\n        -11.343221664428711\n      ],\n      [\n        \"▁illness\",\n        -11.343234062194824\n      ],\n      [\n        \"▁whil\",\n        -11.343307495117188\n      ],\n      [\n        \"▁diamond\",\n        -11.34333324432373\n      ],\n      [\n        \"Mail\",\n        -11.343419075012207\n      ],\n      [\n        \"▁Dream\",\n        -11.34344482421875\n      ],\n      [\n        \"▁Golden\",\n        -11.344099044799805\n      ],\n      [\n        \"▁rein\",\n        -11.344220161437988\n      ],\n      [\n        \"▁hi\",\n        -11.344283103942871\n      ],\n      [\n        \"▁expressed\",\n        -11.344489097595215\n      ],\n      [\n        \"▁luat\",\n        -11.344511985778809\n      ],\n      [\n        \"▁Share\",\n        -11.34453010559082\n      ],\n      [\n        \"▁Programm\",\n        -11.344706535339355\n      ],\n      [\n        \"▁Sales\",\n        -11.344707489013672\n      ],\n      [\n        \"▁prof\",\n        -11.344890594482422\n      ],\n      [\n        \"▁MO\",\n        -11.34505844116211\n      ],\n      [\n        \"▁Short\",\n        -11.345088958740234\n      ],\n      [\n        \"▁charm\",\n        -11.345290184020996\n      ],\n      [\n        \"▁Cer\",\n        -11.345373153686523\n      ],\n      [\n        \"▁Run\",\n        -11.34553337097168\n      ],\n      [\n        \"▁tutorial\",\n        -11.345589637756348\n      ],\n      [\n        \"oul\",\n        -11.34561824798584\n      ],\n      [\n        \"▁Fest\",\n        -11.345794677734375\n      ],\n      [\n        \"▁uniform\",\n        -11.345929145812988\n      ],\n      [\n        \"aß\",\n        -11.346014976501465\n      ],\n      [\n        \"▁pipe\",\n        -11.346076965332031\n      ],\n      [\n        \"▁Square\",\n        -11.346283912658691\n      ],\n      [\n        \"▁Kosten\",\n        -11.346365928649902\n      ],\n      [\n        \"▁checked\",\n        -11.346590042114258\n      ],\n      [\n        \"▁65\",\n        -11.346626281738281\n      ],\n      [\n        \"▁Adam\",\n        -11.346686363220215\n      ],\n      [\n        \"cel\",\n        -11.346700668334961\n      ],\n      [\n        \"ello\",\n        -11.346965789794922\n      ],\n      [\n        \"▁Res\",\n        -11.347023963928223\n      ],\n      [\n        \"▁drain\",\n        -11.34708309173584\n      ],\n      [\n        \"ză\",\n        -11.347129821777344\n      ],\n      [\n        \"▁Tech\",\n        -11.34739875793457\n      ],\n      [\n        \"▁strive\",\n        -11.34749698638916\n      ],\n      [\n        \"cycl\",\n        -11.347506523132324\n      ],\n      [\n        \"▁stark\",\n        -11.347541809082031\n      ],\n      [\n        \"load\",\n        -11.34754753112793\n      ],\n      [\n        \"▁Stat\",\n        -11.347589492797852\n      ],\n      [\n        \"▁Rec\",\n        -11.347622871398926\n      ],\n      [\n        \"ians\",\n        -11.347716331481934\n      ],\n      [\n        \"▁Tin\",\n        -11.347738265991211\n      ],\n      [\n        \"▁Agreement\",\n        -11.347840309143066\n      ],\n      [\n        \"▁pret\",\n        -11.348027229309082\n      ],\n      [\n        \"-9\",\n        -11.348326683044434\n      ],\n      [\n        \"▁sentence\",\n        -11.348380088806152\n      ],\n      [\n        \"▁Direct\",\n        -11.348426818847656\n      ],\n      [\n        \"▁Rep\",\n        -11.348465919494629\n      ],\n      [\n        \"▁Prozent\",\n        -11.348799705505371\n      ],\n      [\n        \"▁invitation\",\n        -11.34882640838623\n      ],\n      [\n        \"▁refund\",\n        -11.349113464355469\n      ],\n      [\n        \"▁Kids\",\n        -11.349287986755371\n      ],\n      [\n        \"stock\",\n        -11.349383354187012\n      ],\n      [\n        \"TP\",\n        -11.349400520324707\n      ],\n      [\n        \"▁tau\",\n        -11.34941291809082\n      ],\n      [\n        \"from\",\n        -11.349421501159668\n      ],\n      [\n        \"▁Ash\",\n        -11.349451065063477\n      ],\n      [\n        \"store\",\n        -11.349535942077637\n      ],\n      [\n        \"▁Common\",\n        -11.34958553314209\n      ],\n      [\n        \"▁Qualität\",\n        -11.34968376159668\n      ],\n      [\n        \"▁strongly\",\n        -11.349727630615234\n      ],\n      [\n        \"▁importante\",\n        -11.34979248046875\n      ],\n      [\n        \"ome\",\n        -11.349912643432617\n      ],\n      [\n        \"▁surtout\",\n        -11.349946022033691\n      ],\n      [\n        \"enables\",\n        -11.35020637512207\n      ],\n      [\n        \"▁decent\",\n        -11.350221633911133\n      ],\n      [\n        \"▁neutral\",\n        -11.350237846374512\n      ],\n      [\n        \"▁produs\",\n        -11.350356101989746\n      ],\n      [\n        \"bury\",\n        -11.350451469421387\n      ],\n      [\n        \"▁Level\",\n        -11.350618362426758\n      ],\n      [\n        \"▁interes\",\n        -11.350699424743652\n      ],\n      [\n        \"mov\",\n        -11.350797653198242\n      ],\n      [\n        \"▁backup\",\n        -11.350939750671387\n      ],\n      [\n        \"même\",\n        -11.351094245910645\n      ],\n      [\n        \"doc\",\n        -11.351119041442871\n      ],\n      [\n        \"▁#1\",\n        -11.35130786895752\n      ],\n      [\n        \"▁specified\",\n        -11.351495742797852\n      ],\n      [\n        \"▁founder\",\n        -11.351655960083008\n      ],\n      [\n        \"And\",\n        -11.352090835571289\n      ],\n      [\n        \"isten\",\n        -11.352149963378906\n      ],\n      [\n        \"▁lecture\",\n        -11.352729797363281\n      ],\n      [\n        \"▁wake\",\n        -11.352895736694336\n      ],\n      [\n        \"▁vraiment\",\n        -11.352980613708496\n      ],\n      [\n        \"▁swing\",\n        -11.353188514709473\n      ],\n      [\n        \"▁addresses\",\n        -11.353275299072266\n      ],\n      [\n        \"▁Verfügung\",\n        -11.353504180908203\n      ],\n      [\n        \"▁deadline\",\n        -11.353761672973633\n      ],\n      [\n        \"н\",\n        -11.353791236877441\n      ],\n      [\n        \"▁Content\",\n        -11.353970527648926\n      ],\n      [\n        \"▁Gre\",\n        -11.354111671447754\n      ],\n      [\n        \"▁Experience\",\n        -11.354378700256348\n      ],\n      [\n        \"tura\",\n        -11.354458808898926\n      ],\n      [\n        \"▁exit\",\n        -11.354642868041992\n      ],\n      [\n        \"▁Britain\",\n        -11.354652404785156\n      ],\n      [\n        \"▁Sunt\",\n        -11.354684829711914\n      ],\n      [\n        \"▁documentation\",\n        -11.354690551757812\n      ],\n      [\n        \"▁showcase\",\n        -11.3547945022583\n      ],\n      [\n        \"▁photographs\",\n        -11.354822158813477\n      ],\n      [\n        \"qué\",\n        -11.35483169555664\n      ],\n      [\n        \"zin\",\n        -11.354909896850586\n      ],\n      [\n        \"pres\",\n        -11.354933738708496\n      ],\n      [\n        \"▁decline\",\n        -11.354955673217773\n      ],\n      [\n        \"▁Large\",\n        -11.355030059814453\n      ],\n      [\n        \"▁bills\",\n        -11.355141639709473\n      ],\n      [\n        \"▁entitled\",\n        -11.355222702026367\n      ],\n      [\n        \"▁passionate\",\n        -11.355393409729004\n      ],\n      [\n        \"▁workout\",\n        -11.355413436889648\n      ],\n      [\n        \"▁Again\",\n        -11.35560417175293\n      ],\n      [\n        \"▁Haut\",\n        -11.35582160949707\n      ],\n      [\n        \"▁guaranteed\",\n        -11.35599136352539\n      ],\n      [\n        \"▁vue\",\n        -11.35600471496582\n      ],\n      [\n        \"▁farmers\",\n        -11.356224060058594\n      ],\n      [\n        \"▁admission\",\n        -11.356500625610352\n      ],\n      [\n        \"▁manière\",\n        -11.357080459594727\n      ],\n      [\n        \"▁reverse\",\n        -11.357121467590332\n      ],\n      [\n        \"▁FL\",\n        -11.357142448425293\n      ],\n      [\n        \"▁terminal\",\n        -11.357206344604492\n      ],\n      [\n        \"GI\",\n        -11.35731029510498\n      ],\n      [\n        \"▁speakers\",\n        -11.35739803314209\n      ],\n      [\n        \"▁responses\",\n        -11.357398986816406\n      ],\n      [\n        \"▁Doch\",\n        -11.357457160949707\n      ],\n      [\n        \"▁2013,\",\n        -11.357717514038086\n      ],\n      [\n        \"▁phones\",\n        -11.357789993286133\n      ],\n      [\n        \"ential\",\n        -11.357851028442383\n      ],\n      [\n        \"▁operator\",\n        -11.357916831970215\n      ],\n      [\n        \"▁steam\",\n        -11.358036994934082\n      ],\n      [\n        \"burn\",\n        -11.358091354370117\n      ],\n      [\n        \"▁seul\",\n        -11.35815715789795\n      ],\n      [\n        \"▁unusual\",\n        -11.358322143554688\n      ],\n      [\n        \"▁educate\",\n        -11.358403205871582\n      ],\n      [\n        \"▁Que\",\n        -11.358680725097656\n      ],\n      [\n        \"▁believes\",\n        -11.359137535095215\n      ],\n      [\n        \"▁succeed\",\n        -11.359344482421875\n      ],\n      [\n        \"▁delay\",\n        -11.359533309936523\n      ],\n      [\n        \"▁deeper\",\n        -11.359633445739746\n      ],\n      [\n        \"▁reaching\",\n        -11.359890937805176\n      ],\n      [\n        \"▁objectives\",\n        -11.360086441040039\n      ],\n      [\n        \"▁temporary\",\n        -11.36028003692627\n      ],\n      [\n        \"▁artistic\",\n        -11.360421180725098\n      ],\n      [\n        \"▁sou\",\n        -11.360471725463867\n      ],\n      [\n        \"▁transparent\",\n        -11.36062240600586\n      ],\n      [\n        \"There\",\n        -11.360798835754395\n      ],\n      [\n        \"ception\",\n        -11.360836029052734\n      ],\n      [\n        \"▁excess\",\n        -11.360939979553223\n      ],\n      [\n        \"▁gathering\",\n        -11.361008644104004\n      ],\n      [\n        \"▁Save\",\n        -11.361095428466797\n      ],\n      [\n        \"ază\",\n        -11.361166000366211\n      ],\n      [\n        \"▁français\",\n        -11.361197471618652\n      ],\n      [\n        \"▁laid\",\n        -11.361210823059082\n      ],\n      [\n        \"▁modul\",\n        -11.361394882202148\n      ],\n      [\n        \"avoir\",\n        -11.361465454101562\n      ],\n      [\n        \"under\",\n        -11.362113952636719\n      ],\n      [\n        \"dding\",\n        -11.362226486206055\n      ],\n      [\n        \"▁falls\",\n        -11.362232208251953\n      ],\n      [\n        \"▁Möglichkeit\",\n        -11.362369537353516\n      ],\n      [\n        \"▁ceremony\",\n        -11.362370491027832\n      ],\n      [\n        \"rai\",\n        -11.36237621307373\n      ],\n      [\n        \"▁Bor\",\n        -11.362709045410156\n      ],\n      [\n        \"▁Below\",\n        -11.362750053405762\n      ],\n      [\n        \"4)\",\n        -11.362759590148926\n      ],\n      [\n        \"▁Field\",\n        -11.362833023071289\n      ],\n      [\n        \"wear\",\n        -11.362935066223145\n      ],\n      [\n        \"motion\",\n        -11.362948417663574\n      ],\n      [\n        \"print\",\n        -11.363311767578125\n      ],\n      [\n        \"game\",\n        -11.363360404968262\n      ],\n      [\n        \"▁Irish\",\n        -11.363458633422852\n      ],\n      [\n        \"▁Las\",\n        -11.363458633422852\n      ],\n      [\n        \"Among\",\n        -11.363570213317871\n      ],\n      [\n        \"atori\",\n        -11.363580703735352\n      ],\n      [\n        \"▁ajuns\",\n        -11.363837242126465\n      ],\n      [\n        \"▁alive\",\n        -11.363860130310059\n      ],\n      [\n        \"▁retour\",\n        -11.363900184631348\n      ],\n      [\n        \"▁smoke\",\n        -11.3640775680542\n      ],\n      [\n        \"▁math\",\n        -11.364285469055176\n      ],\n      [\n        \"▁Ye\",\n        -11.364337921142578\n      ],\n      [\n        \"▁Denn\",\n        -11.36436653137207\n      ],\n      [\n        \"▁1995\",\n        -11.364412307739258\n      ],\n      [\n        \"▁bani\",\n        -11.364644050598145\n      ],\n      [\n        \"raz\",\n        -11.364998817443848\n      ],\n      [\n        \"world\",\n        -11.365026473999023\n      ],\n      [\n        \"▁engines\",\n        -11.365140914916992\n      ],\n      [\n        \"nehmen\",\n        -11.365192413330078\n      ],\n      [\n        \"stor\",\n        -11.365328788757324\n      ],\n      [\n        \"▁interpret\",\n        -11.365403175354004\n      ],\n      [\n        \"▁Ven\",\n        -11.365489959716797\n      ],\n      [\n        \"▁cotton\",\n        -11.365622520446777\n      ],\n      [\n        \"▁represented\",\n        -11.366004943847656\n      ],\n      [\n        \"▁fabulous\",\n        -11.366166114807129\n      ],\n      [\n        \"▁gender\",\n        -11.366301536560059\n      ],\n      [\n        \"Mar\",\n        -11.366668701171875\n      ],\n      [\n        \"vic\",\n        -11.366991996765137\n      ],\n      [\n        \"▁newsletter\",\n        -11.367432594299316\n      ],\n      [\n        \"sburg\",\n        -11.367574691772461\n      ],\n      [\n        \"pond\",\n        -11.36838436126709\n      ],\n      [\n        \"▁Carl\",\n        -11.368454933166504\n      ],\n      [\n        \"▁bunch\",\n        -11.368714332580566\n      ],\n      [\n        \"▁tower\",\n        -11.368847846984863\n      ],\n      [\n        \"▁trigger\",\n        -11.368976593017578\n      ],\n      [\n        \"▁explanation\",\n        -11.369091033935547\n      ],\n      [\n        \"Man\",\n        -11.369114875793457\n      ],\n      [\n        \"iunea\",\n        -11.369168281555176\n      ],\n      [\n        \"▁announcement\",\n        -11.369492530822754\n      ],\n      [\n        \"▁seeds\",\n        -11.36952018737793\n      ],\n      [\n        \"▁shell\",\n        -11.369865417480469\n      ],\n      [\n        \"▁Working\",\n        -11.36989688873291\n      ],\n      [\n        \"viz\",\n        -11.370267868041992\n      ],\n      [\n        \"▁Simply\",\n        -11.370329856872559\n      ],\n      [\n        \"sub\",\n        -11.37037181854248\n      ],\n      [\n        \"▁Village\",\n        -11.37060832977295\n      ],\n      [\n        \"▁falling\",\n        -11.370742797851562\n      ],\n      [\n        \"▁fits\",\n        -11.37084674835205\n      ],\n      [\n        \"▁wichtig\",\n        -11.37088394165039\n      ],\n      [\n        \"▁Down\",\n        -11.37108039855957\n      ],\n      [\n        \"bble\",\n        -11.371573448181152\n      ],\n      [\n        \"▁Orange\",\n        -11.37165641784668\n      ],\n      [\n        \"promoting\",\n        -11.371932029724121\n      ],\n      [\n        \"▁rapidly\",\n        -11.37217903137207\n      ],\n      [\n        \"▁translation\",\n        -11.372330665588379\n      ],\n      [\n        \"nig\",\n        -11.3723726272583\n      ],\n      [\n        \"fusion\",\n        -11.37240982055664\n      ],\n      [\n        \"kosten\",\n        -11.372611045837402\n      ],\n      [\n        \"2)\",\n        -11.372783660888672\n      ],\n      [\n        \"▁Express\",\n        -11.372958183288574\n      ],\n      [\n        \"▁Sw\",\n        -11.373003959655762\n      ],\n      [\n        \"▁frequency\",\n        -11.373086929321289\n      ],\n      [\n        \"▁diversity\",\n        -11.373348236083984\n      ],\n      [\n        \"MT\",\n        -11.373452186584473\n      ],\n      [\n        \"▁bekannt\",\n        -11.373530387878418\n      ],\n      [\n        \"lion\",\n        -11.373871803283691\n      ],\n      [\n        \"▁cop\",\n        -11.37393856048584\n      ],\n      [\n        \"▁Customer\",\n        -11.374072074890137\n      ],\n      [\n        \"▁demands\",\n        -11.374427795410156\n      ],\n      [\n        \"▁corn\",\n        -11.374516487121582\n      ],\n      [\n        \"▁Hamburg\",\n        -11.374551773071289\n      ],\n      [\n        \"SD\",\n        -11.374628067016602\n      ],\n      [\n        \"▁Rome\",\n        -11.374677658081055\n      ],\n      [\n        \"▁Pur\",\n        -11.374750137329102\n      ],\n      [\n        \"▁stamp\",\n        -11.374885559082031\n      ],\n      [\n        \"▁grateful\",\n        -11.374967575073242\n      ],\n      [\n        \"RM\",\n        -11.37511157989502\n      ],\n      [\n        \"▁Pl\",\n        -11.37511920928955\n      ],\n      [\n        \"▁Tele\",\n        -11.375154495239258\n      ],\n      [\n        \"▁plugin\",\n        -11.375492095947266\n      ],\n      [\n        \"▁maxim\",\n        -11.375675201416016\n      ],\n      [\n        \"▁Hoch\",\n        -11.37574577331543\n      ],\n      [\n        \"igung\",\n        -11.375823020935059\n      ],\n      [\n        \"▁Entwicklung\",\n        -11.375858306884766\n      ],\n      [\n        \"▁File\",\n        -11.375931739807129\n      ],\n      [\n        \"▁Eastern\",\n        -11.376070022583008\n      ],\n      [\n        \"▁scrap\",\n        -11.376331329345703\n      ],\n      [\n        \"▁acquired\",\n        -11.376338958740234\n      ],\n      [\n        \"sau\",\n        -11.376364707946777\n      ],\n      [\n        \"▁Klein\",\n        -11.376452445983887\n      ],\n      [\n        \"▁milioane\",\n        -11.376492500305176\n      ],\n      [\n        \"▁Stand\",\n        -11.376693725585938\n      ],\n      [\n        \"▁childhood\",\n        -11.37671184539795\n      ],\n      [\n        \"▁artificial\",\n        -11.376752853393555\n      ],\n      [\n        \"▁substantial\",\n        -11.376851081848145\n      ],\n      [\n        \"druck\",\n        -11.377315521240234\n      ],\n      [\n        \"▁Kra\",\n        -11.377562522888184\n      ],\n      [\n        \"▁performances\",\n        -11.377645492553711\n      ],\n      [\n        \"▁row\",\n        -11.377824783325195\n      ],\n      [\n        \"NT\",\n        -11.377899169921875\n      ],\n      [\n        \"mod\",\n        -11.377904891967773\n      ],\n      [\n        \"remained\",\n        -11.378399848937988\n      ],\n      [\n        \"▁nimic\",\n        -11.378462791442871\n      ],\n      [\n        \"▁Limited\",\n        -11.378555297851562\n      ],\n      [\n        \"▁cookie\",\n        -11.378718376159668\n      ],\n      [\n        \"▁retain\",\n        -11.378816604614258\n      ],\n      [\n        \"▁600\",\n        -11.379144668579102\n      ],\n      [\n        \"▁eigene\",\n        -11.379158020019531\n      ],\n      [\n        \"▁tune\",\n        -11.379209518432617\n      ],\n      [\n        \"NS\",\n        -11.379256248474121\n      ],\n      [\n        \"▁dad\",\n        -11.379284858703613\n      ],\n      [\n        \"Moreover\",\n        -11.379415512084961\n      ],\n      [\n        \"ès\",\n        -11.379434585571289\n      ],\n      [\n        \"▁worship\",\n        -11.379439353942871\n      ],\n      [\n        \"▁Material\",\n        -11.3794584274292\n      ],\n      [\n        \"▁verb\",\n        -11.379528045654297\n      ],\n      [\n        \"ziehen\",\n        -11.37957763671875\n      ],\n      [\n        \"lton\",\n        -11.379645347595215\n      ],\n      [\n        \"▁boot\",\n        -11.379982948303223\n      ],\n      [\n        \"plo\",\n        -11.380118370056152\n      ],\n      [\n        \"CF\",\n        -11.380212783813477\n      ],\n      [\n        \"GM\",\n        -11.380215644836426\n      ],\n      [\n        \"▁Mix\",\n        -11.38046932220459\n      ],\n      [\n        \"▁Front\",\n        -11.380474090576172\n      ],\n      [\n        \"▁repairs\",\n        -11.380655288696289\n      ],\n      [\n        \"▁proportion\",\n        -11.381068229675293\n      ],\n      [\n        \"▁habit\",\n        -11.381132125854492\n      ],\n      [\n        \"▁hide\",\n        -11.38156509399414\n      ],\n      [\n        \"focusing\",\n        -11.381707191467285\n      ],\n      [\n        \"▁Annual\",\n        -11.381717681884766\n      ],\n      [\n        \"▁twin\",\n        -11.3817777633667\n      ],\n      [\n        \"▁acord\",\n        -11.381780624389648\n      ],\n      [\n        \"ehr\",\n        -11.381814956665039\n      ],\n      [\n        \"month\",\n        -11.382303237915039\n      ],\n      [\n        \"venir\",\n        -11.382535934448242\n      ],\n      [\n        \"Or\",\n        -11.38254165649414\n      ],\n      [\n        \"awa\",\n        -11.382600784301758\n      ],\n      [\n        \"lass\",\n        -11.382735252380371\n      ],\n      [\n        \"ffe\",\n        -11.383048057556152\n      ],\n      [\n        \"iți\",\n        -11.383074760437012\n      ],\n      [\n        \"NO\",\n        -11.3831148147583\n      ],\n      [\n        \"▁scope\",\n        -11.383295059204102\n      ],\n      [\n        \"▁lowest\",\n        -11.383527755737305\n      ],\n      [\n        \"▁afraid\",\n        -11.383572578430176\n      ],\n      [\n        \"▁subjects\",\n        -11.383578300476074\n      ],\n      [\n        \"▁templates\",\n        -11.383586883544922\n      ],\n      [\n        \"▁jos\",\n        -11.383604049682617\n      ],\n      [\n        \"DM\",\n        -11.383687973022461\n      ],\n      [\n        \"ensemble\",\n        -11.383792877197266\n      ],\n      [\n        \"▁Ski\",\n        -11.383941650390625\n      ],\n      [\n        \"DP\",\n        -11.384099960327148\n      ],\n      [\n        \"▁grip\",\n        -11.384171485900879\n      ],\n      [\n        \"2-\",\n        -11.38436222076416\n      ],\n      [\n        \"▁sécurité\",\n        -11.384743690490723\n      ],\n      [\n        \"▁mono\",\n        -11.384749412536621\n      ],\n      [\n        \"▁controls\",\n        -11.384854316711426\n      ],\n      [\n        \"SV\",\n        -11.384879112243652\n      ],\n      [\n        \"install\",\n        -11.384970664978027\n      ],\n      [\n        \"berry\",\n        -11.385042190551758\n      ],\n      [\n        \"nial\",\n        -11.385120391845703\n      ],\n      [\n        \"shed\",\n        -11.385462760925293\n      ],\n      [\n        \"▁celle\",\n        -11.385830879211426\n      ],\n      [\n        \"FR\",\n        -11.385936737060547\n      ],\n      [\n        \"äng\",\n        -11.385950088500977\n      ],\n      [\n        \"▁gaz\",\n        -11.385984420776367\n      ],\n      [\n        \"êt\",\n        -11.386184692382812\n      ],\n      [\n        \"▁viewing\",\n        -11.386412620544434\n      ],\n      [\n        \"▁asigura\",\n        -11.386524200439453\n      ],\n      [\n        \"bling\",\n        -11.3865327835083\n      ],\n      [\n        \"master\",\n        -11.386919975280762\n      ],\n      [\n        \"▁Fin\",\n        -11.387160301208496\n      ],\n      [\n        \"VC\",\n        -11.387365341186523\n      ],\n      [\n        \"▁patent\",\n        -11.387715339660645\n      ],\n      [\n        \"▁Clean\",\n        -11.38773250579834\n      ],\n      [\n        \"▁1970\",\n        -11.387789726257324\n      ],\n      [\n        \"▁Char\",\n        -11.387971878051758\n      ],\n      [\n        \"thi\",\n        -11.388010025024414\n      ],\n      [\n        \"bli\",\n        -11.388141632080078\n      ],\n      [\n        \"▁haut\",\n        -11.388307571411133\n      ],\n      [\n        \"tica\",\n        -11.38836669921875\n      ],\n      [\n        \"▁venit\",\n        -11.388578414916992\n      ],\n      [\n        \"▁compatible\",\n        -11.388678550720215\n      ],\n      [\n        \"▁hanging\",\n        -11.388690948486328\n      ],\n      [\n        \"UN\",\n        -11.388842582702637\n      ],\n      [\n        \"▁forth\",\n        -11.388911247253418\n      ],\n      [\n        \"▁painted\",\n        -11.388912200927734\n      ],\n      [\n        \"lip\",\n        -11.389031410217285\n      ],\n      [\n        \"▁deeply\",\n        -11.389089584350586\n      ],\n      [\n        \"▁participating\",\n        -11.389242172241211\n      ],\n      [\n        \"▁Iran\",\n        -11.38968276977539\n      ],\n      [\n        \"▁conventional\",\n        -11.389769554138184\n      ],\n      [\n        \"ARE\",\n        -11.38985824584961\n      ],\n      [\n        \"▁accuracy\",\n        -11.389896392822266\n      ],\n      [\n        \"▁Familie\",\n        -11.389955520629883\n      ],\n      [\n        \"▁Dir\",\n        -11.39001178741455\n      ],\n      [\n        \"▁gehen\",\n        -11.390127182006836\n      ],\n      [\n        \"▁moderne\",\n        -11.39022159576416\n      ],\n      [\n        \"▁Iraq\",\n        -11.39050579071045\n      ],\n      [\n        \"▁vente\",\n        -11.390582084655762\n      ],\n      [\n        \"▁Donald\",\n        -11.390998840332031\n      ],\n      [\n        \"▁passer\",\n        -11.391051292419434\n      ],\n      [\n        \"▁mehrere\",\n        -11.391267776489258\n      ],\n      [\n        \"▁Everything\",\n        -11.391291618347168\n      ],\n      [\n        \"▁studied\",\n        -11.391307830810547\n      ],\n      [\n        \"▁acquire\",\n        -11.391312599182129\n      ],\n      [\n        \"für\",\n        -11.391477584838867\n      ],\n      [\n        \"▁gal\",\n        -11.391502380371094\n      ],\n      [\n        \"▁headed\",\n        -11.391809463500977\n      ],\n      [\n        \"▁screening\",\n        -11.391865730285645\n      ],\n      [\n        \"▁findings\",\n        -11.392303466796875\n      ],\n      [\n        \"▁nutrition\",\n        -11.392305374145508\n      ],\n      [\n        \"▁Secretary\",\n        -11.392308235168457\n      ],\n      [\n        \"duct\",\n        -11.392431259155273\n      ],\n      [\n        \"born\",\n        -11.392436027526855\n      ],\n      [\n        \"«\",\n        -11.39261531829834\n      ],\n      [\n        \"▁statistics\",\n        -11.392616271972656\n      ],\n      [\n        \"▁Sydney\",\n        -11.392800331115723\n      ],\n      [\n        \"▁Prof\",\n        -11.392829895019531\n      ],\n      [\n        \"▁dialogue\",\n        -11.39327621459961\n      ],\n      [\n        \"▁gather\",\n        -11.393425941467285\n      ],\n      [\n        \"valu\",\n        -11.393746376037598\n      ],\n      [\n        \"▁currency\",\n        -11.394073486328125\n      ],\n      [\n        \"▁Kat\",\n        -11.394092559814453\n      ],\n      [\n        \"gotten\",\n        -11.394189834594727\n      ],\n      [\n        \"main\",\n        -11.39432144165039\n      ],\n      [\n        \"▁coin\",\n        -11.394340515136719\n      ],\n      [\n        \"▁Nick\",\n        -11.394380569458008\n      ],\n      [\n        \"vă\",\n        -11.394658088684082\n      ],\n      [\n        \"▁Victoria\",\n        -11.394832611083984\n      ],\n      [\n        \"▁conclusion\",\n        -11.3949613571167\n      ],\n      [\n        \"▁lemon\",\n        -11.394998550415039\n      ],\n      [\n        \"▁Article\",\n        -11.39516830444336\n      ],\n      [\n        \"▁necesar\",\n        -11.39516830444336\n      ],\n      [\n        \"mag\",\n        -11.395180702209473\n      ],\n      [\n        \"▁riding\",\n        -11.39537239074707\n      ],\n      [\n        \"▁Eli\",\n        -11.395599365234375\n      ],\n      [\n        \"▁cord\",\n        -11.395635604858398\n      ],\n      [\n        \"wä\",\n        -11.39572811126709\n      ],\n      [\n        \"ußerdem\",\n        -11.395737648010254\n      ],\n      [\n        \"▁Bed\",\n        -11.395759582519531\n      ],\n      [\n        \"▁layers\",\n        -11.395833015441895\n      ],\n      [\n        \"▁harder\",\n        -11.395975112915039\n      ],\n      [\n        \"▁processor\",\n        -11.396040916442871\n      ],\n      [\n        \"▁Ils\",\n        -11.39613151550293\n      ],\n      [\n        \"▁Edition\",\n        -11.39615535736084\n      ],\n      [\n        \"▁Link\",\n        -11.396393775939941\n      ],\n      [\n        \"éré\",\n        -11.396461486816406\n      ],\n      [\n        \"▁nume\",\n        -11.396576881408691\n      ],\n      [\n        \"▁Boy\",\n        -11.39659595489502\n      ],\n      [\n        \"▁equally\",\n        -11.396646499633789\n      ],\n      [\n        \"▁Regel\",\n        -11.397119522094727\n      ],\n      [\n        \"▁hopes\",\n        -11.397185325622559\n      ],\n      [\n        \"odor\",\n        -11.397311210632324\n      ],\n      [\n        \"▁initially\",\n        -11.397430419921875\n      ],\n      [\n        \"▁$4\",\n        -11.3974609375\n      ],\n      [\n        \"▁exemplu\",\n        -11.397537231445312\n      ],\n      [\n        \"▁vari\",\n        -11.397565841674805\n      ],\n      [\n        \"schl\",\n        -11.397698402404785\n      ],\n      [\n        \"▁southern\",\n        -11.39809799194336\n      ],\n      [\n        \"▁mein\",\n        -11.39818000793457\n      ],\n      [\n        \"▁1994\",\n        -11.398300170898438\n      ],\n      [\n        \"▁importantly\",\n        -11.398401260375977\n      ],\n      [\n        \"▁succes\",\n        -11.398526191711426\n      ],\n      [\n        \"▁developer\",\n        -11.398598670959473\n      ],\n      [\n        \"▁lips\",\n        -11.39889144897461\n      ],\n      [\n        \"▁attitude\",\n        -11.39900016784668\n      ],\n      [\n        \"▁Age\",\n        -11.399541854858398\n      ],\n      [\n        \"▁corps\",\n        -11.399713516235352\n      ],\n      [\n        \"▁clicking\",\n        -11.39976978302002\n      ],\n      [\n        \"▁putem\",\n        -11.399832725524902\n      ],\n      [\n        \"▁journée\",\n        -11.40003776550293\n      ],\n      [\n        \"boy\",\n        -11.4002103805542\n      ],\n      [\n        \"▁injured\",\n        -11.40028190612793\n      ],\n      [\n        \"▁watched\",\n        -11.400433540344238\n      ],\n      [\n        \"▁flights\",\n        -11.40079116821289\n      ],\n      [\n        \"turn\",\n        -11.400980949401855\n      ],\n      [\n        \"▁stainless\",\n        -11.401562690734863\n      ],\n      [\n        \"▁besondere\",\n        -11.40156364440918\n      ],\n      [\n        \"▁Tur\",\n        -11.401596069335938\n      ],\n      [\n        \"▁hiring\",\n        -11.401650428771973\n      ],\n      [\n        \"▁roads\",\n        -11.401727676391602\n      ],\n      [\n        \"ificat\",\n        -11.401785850524902\n      ],\n      [\n        \"▁Flor\",\n        -11.402045249938965\n      ],\n      [\n        \"▁puternic\",\n        -11.402215003967285\n      ],\n      [\n        \"▁unexpected\",\n        -11.40223503112793\n      ],\n      [\n        \"▁Est\",\n        -11.40238094329834\n      ],\n      [\n        \"▁adopted\",\n        -11.40253734588623\n      ],\n      [\n        \"▁Fox\",\n        -11.402647972106934\n      ],\n      [\n        \"▁contributions\",\n        -11.402870178222656\n      ],\n      [\n        \"sec\",\n        -11.402968406677246\n      ],\n      [\n        \"IO\",\n        -11.403059959411621\n      ],\n      [\n        \"▁santé\",\n        -11.403432846069336\n      ],\n      [\n        \"▁Tree\",\n        -11.403763771057129\n      ],\n      [\n        \"▁scurt\",\n        -11.40381908416748\n      ],\n      [\n        \"▁Products\",\n        -11.403848648071289\n      ],\n      [\n        \"▁forecast\",\n        -11.403998374938965\n      ],\n      [\n        \"▁actor\",\n        -11.404143333435059\n      ],\n      [\n        \"▁Gallery\",\n        -11.404149055480957\n      ],\n      [\n        \"▁continuous\",\n        -11.404163360595703\n      ],\n      [\n        \"▁Hat\",\n        -11.404291152954102\n      ],\n      [\n        \"▁slip\",\n        -11.404501914978027\n      ],\n      [\n        \"9%\",\n        -11.404960632324219\n      ],\n      [\n        \"▁depression\",\n        -11.405043601989746\n      ],\n      [\n        \"UI\",\n        -11.405229568481445\n      ],\n      [\n        \"abile\",\n        -11.405648231506348\n      ],\n      [\n        \"▁merit\",\n        -11.405671119689941\n      ],\n      [\n        \"▁Fer\",\n        -11.405805587768555\n      ],\n      [\n        \"▁robot\",\n        -11.405888557434082\n      ],\n      [\n        \"▁gel\",\n        -11.40589427947998\n      ],\n      [\n        \"▁gentle\",\n        -11.406017303466797\n      ],\n      [\n        \"▁wanting\",\n        -11.406071662902832\n      ],\n      [\n        \"▁understood\",\n        -11.406157493591309\n      ],\n      [\n        \"▁terrain\",\n        -11.406161308288574\n      ],\n      [\n        \"▁associate\",\n        -11.406176567077637\n      ],\n      [\n        \"▁discussions\",\n        -11.40632152557373\n      ],\n      [\n        \"▁Job\",\n        -11.406365394592285\n      ],\n      [\n        \"spec\",\n        -11.406440734863281\n      ],\n      [\n        \"Dabei\",\n        -11.406475067138672\n      ],\n      [\n        \"etic\",\n        -11.406517028808594\n      ],\n      [\n        \"gol\",\n        -11.40654468536377\n      ],\n      [\n        \"▁20%\",\n        -11.406584739685059\n      ],\n      [\n        \"▁grup\",\n        -11.406606674194336\n      ],\n      [\n        \"▁Doctor\",\n        -11.406813621520996\n      ],\n      [\n        \"verse\",\n        -11.407246589660645\n      ],\n      [\n        \"▁victim\",\n        -11.407258033752441\n      ],\n      [\n        \"ță\",\n        -11.407302856445312\n      ],\n      [\n        \"▁scores\",\n        -11.407544136047363\n      ],\n      [\n        \"▁Policy\",\n        -11.407634735107422\n      ],\n      [\n        \"▁Anna\",\n        -11.407736778259277\n      ],\n      [\n        \"IV\",\n        -11.407804489135742\n      ],\n      [\n        \"▁mineral\",\n        -11.408202171325684\n      ],\n      [\n        \"live\",\n        -11.40821647644043\n      ],\n      [\n        \"▁grey\",\n        -11.408368110656738\n      ],\n      [\n        \"struct\",\n        -11.40852165222168\n      ],\n      [\n        \"▁emails\",\n        -11.408738136291504\n      ],\n      [\n        \"▁anymore\",\n        -11.409114837646484\n      ],\n      [\n        \"▁productivity\",\n        -11.409387588500977\n      ],\n      [\n        \"▁Dark\",\n        -11.409463882446289\n      ],\n      [\n        \"▁neither\",\n        -11.409481048583984\n      ],\n      [\n        \"▁quotes\",\n        -11.409611701965332\n      ],\n      [\n        \"LS\",\n        -11.410368919372559\n      ],\n      [\n        \"▁Arizona\",\n        -11.41040325164795\n      ],\n      [\n        \"night\",\n        -11.410497665405273\n      ],\n      [\n        \"élé\",\n        -11.411019325256348\n      ],\n      [\n        \"▁assigned\",\n        -11.411153793334961\n      ],\n      [\n        \"▁satellite\",\n        -11.411328315734863\n      ],\n      [\n        \"▁stability\",\n        -11.411665916442871\n      ],\n      [\n        \"▁networking\",\n        -11.41172981262207\n      ],\n      [\n        \"▁Transport\",\n        -11.411847114562988\n      ],\n      [\n        \"▁persons\",\n        -11.411856651306152\n      ],\n      [\n        \"fund\",\n        -11.412043571472168\n      ],\n      [\n        \"▁pratique\",\n        -11.41213321685791\n      ],\n      [\n        \"▁inca\",\n        -11.412134170532227\n      ],\n      [\n        \"iller\",\n        -11.412349700927734\n      ],\n      [\n        \"▁packed\",\n        -11.41239070892334\n      ],\n      [\n        \"▁Vegas\",\n        -11.412484169006348\n      ],\n      [\n        \"▁offre\",\n        -11.412493705749512\n      ],\n      [\n        \"▁Bin\",\n        -11.412518501281738\n      ],\n      [\n        \"stop\",\n        -11.412609100341797\n      ],\n      [\n        \"mini\",\n        -11.412860870361328\n      ],\n      [\n        \"▁jam\",\n        -11.412877082824707\n      ],\n      [\n        \"cord\",\n        -11.41289234161377\n      ],\n      [\n        \"▁Beautiful\",\n        -11.412996292114258\n      ],\n      [\n        \"▁trash\",\n        -11.413012504577637\n      ],\n      [\n        \"▁wise\",\n        -11.413092613220215\n      ],\n      [\n        \"▁accounting\",\n        -11.413178443908691\n      ],\n      [\n        \"▁différents\",\n        -11.413182258605957\n      ],\n      [\n        \"▁stil\",\n        -11.413214683532715\n      ],\n      [\n        \"suit\",\n        -11.413951873779297\n      ],\n      [\n        \"▁vier\",\n        -11.414209365844727\n      ],\n      [\n        \"▁permis\",\n        -11.414224624633789\n      ],\n      [\n        \"flow\",\n        -11.414238929748535\n      ],\n      [\n        \"▁col\",\n        -11.414749145507812\n      ],\n      [\n        \"ected\",\n        -11.414960861206055\n      ],\n      [\n        \"▁singer\",\n        -11.414999008178711\n      ],\n      [\n        \"▁GmbH\",\n        -11.415038108825684\n      ],\n      [\n        \"tics\",\n        -11.415094375610352\n      ],\n      [\n        \"▁ser\",\n        -11.415159225463867\n      ],\n      [\n        \"On\",\n        -11.415315628051758\n      ],\n      [\n        \"▁insights\",\n        -11.415605545043945\n      ],\n      [\n        \"BB\",\n        -11.415946960449219\n      ],\n      [\n        \"▁differ\",\n        -11.415959358215332\n      ],\n      [\n        \"▁Glass\",\n        -11.416131973266602\n      ],\n      [\n        \"▁Six\",\n        -11.416482925415039\n      ],\n      [\n        \"▁subscription\",\n        -11.416584968566895\n      ],\n      [\n        \"BC\",\n        -11.416606903076172\n      ],\n      [\n        \"▁returning\",\n        -11.416664123535156\n      ],\n      [\n        \"kleinen\",\n        -11.416693687438965\n      ],\n      [\n        \"▁advantages\",\n        -11.416747093200684\n      ],\n      [\n        \"omme\",\n        -11.416852951049805\n      ],\n      [\n        \"lus\",\n        -11.417071342468262\n      ],\n      [\n        \"now\",\n        -11.417141914367676\n      ],\n      [\n        \"▁Pack\",\n        -11.417253494262695\n      ],\n      [\n        \"▁leak\",\n        -11.417333602905273\n      ],\n      [\n        \"▁muscles\",\n        -11.41748332977295\n      ],\n      [\n        \"▁davon\",\n        -11.417492866516113\n      ],\n      [\n        \"mph\",\n        -11.417858123779297\n      ],\n      [\n        \"▁temple\",\n        -11.417868614196777\n      ],\n      [\n        \"▁Après\",\n        -11.417901039123535\n      ],\n      [\n        \"▁Illinois\",\n        -11.41801643371582\n      ],\n      [\n        \"▁variable\",\n        -11.418065071105957\n      ],\n      [\n        \"▁judgment\",\n        -11.418389320373535\n      ],\n      [\n        \"gran\",\n        -11.41861629486084\n      ],\n      [\n        \"▁pose\",\n        -11.418621063232422\n      ],\n      [\n        \"das\",\n        -11.418647766113281\n      ],\n      [\n        \"ures\",\n        -11.418673515319824\n      ],\n      [\n        \"▁Championship\",\n        -11.418689727783203\n      ],\n      [\n        \"ebenfalls\",\n        -11.41872501373291\n      ],\n      [\n        \"▁hydro\",\n        -11.418753623962402\n      ],\n      [\n        \"▁angle\",\n        -11.419268608093262\n      ],\n      [\n        \"▁5-\",\n        -11.41940975189209\n      ],\n      [\n        \"▁gest\",\n        -11.419547080993652\n      ],\n      [\n        \"▁Frau\",\n        -11.420233726501465\n      ],\n      [\n        \"▁knock\",\n        -11.420275688171387\n      ],\n      [\n        \"FS\",\n        -11.420442581176758\n      ],\n      [\n        \"spi\",\n        -11.420577049255371\n      ],\n      [\n        \"▁Regional\",\n        -11.420717239379883\n      ],\n      [\n        \"lets\",\n        -11.421098709106445\n      ],\n      [\n        \"▁Date\",\n        -11.42115592956543\n      ],\n      [\n        \"▁Finance\",\n        -11.421211242675781\n      ],\n      [\n        \"▁Dann\",\n        -11.421320915222168\n      ],\n      [\n        \"Star\",\n        -11.421380043029785\n      ],\n      [\n        \"▁Creek\",\n        -11.421393394470215\n      ],\n      [\n        \"▁fu\",\n        -11.421648979187012\n      ],\n      [\n        \"wohn\",\n        -11.422141075134277\n      ],\n      [\n        \"▁anniversary\",\n        -11.422219276428223\n      ],\n      [\n        \"▁investments\",\n        -11.422292709350586\n      ],\n      [\n        \"▁universal\",\n        -11.422601699829102\n      ],\n      [\n        \"▁pit\",\n        -11.422745704650879\n      ],\n      [\n        \"ște\",\n        -11.422784805297852\n      ],\n      [\n        \"▁lab\",\n        -11.422822952270508\n      ],\n      [\n        \"dienst\",\n        -11.422884941101074\n      ],\n      [\n        \"▁pal\",\n        -11.422889709472656\n      ],\n      [\n        \"▁graphic\",\n        -11.42289924621582\n      ],\n      [\n        \"▁bearing\",\n        -11.422900199890137\n      ],\n      [\n        \"▁stylish\",\n        -11.423087120056152\n      ],\n      [\n        \"▁mé\",\n        -11.42319393157959\n      ],\n      [\n        \"▁există\",\n        -11.42326545715332\n      ],\n      [\n        \"▁découvrir\",\n        -11.423477172851562\n      ],\n      [\n        \"comp\",\n        -11.423606872558594\n      ],\n      [\n        \"ridge\",\n        -11.423667907714844\n      ],\n      [\n        \"▁heads\",\n        -11.423765182495117\n      ],\n      [\n        \"▁consequences\",\n        -11.423835754394531\n      ],\n      [\n        \"self\",\n        -11.423842430114746\n      ],\n      [\n        \"fried\",\n        -11.423870086669922\n      ],\n      [\n        \"▁inventory\",\n        -11.424199104309082\n      ],\n      [\n        \"▁strip\",\n        -11.42422866821289\n      ],\n      [\n        \"▁Civil\",\n        -11.42424488067627\n      ],\n      [\n        \"bell\",\n        -11.424307823181152\n      ],\n      [\n        \"▁neben\",\n        -11.424444198608398\n      ],\n      [\n        \"▁Perfect\",\n        -11.424470901489258\n      ],\n      [\n        \"▁Notre\",\n        -11.424478530883789\n      ],\n      [\n        \"▁fraud\",\n        -11.424630165100098\n      ],\n      [\n        \"▁employers\",\n        -11.424656867980957\n      ],\n      [\n        \"▁Jackson\",\n        -11.42470645904541\n      ],\n      [\n        \"▁probleme\",\n        -11.424915313720703\n      ],\n      [\n        \"▁richtig\",\n        -11.424957275390625\n      ],\n      [\n        \"▁Method\",\n        -11.425009727478027\n      ],\n      [\n        \"▁tired\",\n        -11.425010681152344\n      ],\n      [\n        \"dies\",\n        -11.425031661987305\n      ],\n      [\n        \"▁Number\",\n        -11.425315856933594\n      ],\n      [\n        \"rland\",\n        -11.425652503967285\n      ],\n      [\n        \"▁latter\",\n        -11.426031112670898\n      ],\n      [\n        \"rendre\",\n        -11.426064491271973\n      ],\n      [\n        \"▁cameras\",\n        -11.426095962524414\n      ],\n      [\n        \"▁euch\",\n        -11.426630020141602\n      ],\n      [\n        \"▁Description\",\n        -11.427038192749023\n      ],\n      [\n        \"Spec\",\n        -11.427061080932617\n      ],\n      [\n        \"▁mile\",\n        -11.427437782287598\n      ],\n      [\n        \"▁Challenge\",\n        -11.427474021911621\n      ],\n      [\n        \"▁Solutions\",\n        -11.427504539489746\n      ],\n      [\n        \"▁trusted\",\n        -11.427509307861328\n      ],\n      [\n        \"▁einge\",\n        -11.427515029907227\n      ],\n      [\n        \"rück\",\n        -11.427528381347656\n      ],\n      [\n        \"▁Ober\",\n        -11.427635192871094\n      ],\n      [\n        \"kes\",\n        -11.42764949798584\n      ],\n      [\n        \"▁Log\",\n        -11.427684783935547\n      ],\n      [\n        \"▁dessert\",\n        -11.427776336669922\n      ],\n      [\n        \"▁murder\",\n        -11.428033828735352\n      ],\n      [\n        \"▁1/2\",\n        -11.428311347961426\n      ],\n      [\n        \"▁Provide\",\n        -11.42872142791748\n      ],\n      [\n        \"nivelul\",\n        -11.428800582885742\n      ],\n      [\n        \"nici\",\n        -11.428818702697754\n      ],\n      [\n        \"▁observe\",\n        -11.42889404296875\n      ],\n      [\n        \"▁prescription\",\n        -11.429162979125977\n      ],\n      [\n        \"▁Sau\",\n        -11.429170608520508\n      ],\n      [\n        \"▁genuine\",\n        -11.42919635772705\n      ],\n      [\n        \"▁operated\",\n        -11.429231643676758\n      ],\n      [\n        \"▁generous\",\n        -11.429267883300781\n      ],\n      [\n        \"▁weapons\",\n        -11.429458618164062\n      ],\n      [\n        \"▁belief\",\n        -11.4295015335083\n      ],\n      [\n        \"▁consum\",\n        -11.429584503173828\n      ],\n      [\n        \"▁unknown\",\n        -11.430116653442383\n      ],\n      [\n        \"deoarece\",\n        -11.430135726928711\n      ],\n      [\n        \"Art\",\n        -11.430147171020508\n      ],\n      [\n        \"▁kurz\",\n        -11.430183410644531\n      ],\n      [\n        \"▁Gut\",\n        -11.430258750915527\n      ],\n      [\n        \"▁medication\",\n        -11.430522918701172\n      ],\n      [\n        \"▁Mau\",\n        -11.43058967590332\n      ],\n      [\n        \"▁divorce\",\n        -11.430678367614746\n      ],\n      [\n        \"▁claimed\",\n        -11.430811882019043\n      ],\n      [\n        \"halten\",\n        -11.430848121643066\n      ],\n      [\n        \"▁Cons\",\n        -11.43089485168457\n      ],\n      [\n        \"▁operational\",\n        -11.430975914001465\n      ],\n      [\n        \"▁Hong\",\n        -11.431081771850586\n      ],\n      [\n        \"VI\",\n        -11.431143760681152\n      ],\n      [\n        \"▁Blick\",\n        -11.431485176086426\n      ],\n      [\n        \"▁lamp\",\n        -11.431706428527832\n      ],\n      [\n        \"pati\",\n        -11.431853294372559\n      ],\n      [\n        \"▁4-\",\n        -11.43192195892334\n      ],\n      [\n        \"▁interven\",\n        -11.431964874267578\n      ],\n      [\n        \"ques\",\n        -11.43201732635498\n      ],\n      [\n        \"▁Talk\",\n        -11.432096481323242\n      ],\n      [\n        \"▁zeigt\",\n        -11.432318687438965\n      ],\n      [\n        \"▁targeted\",\n        -11.432390213012695\n      ],\n      [\n        \"round\",\n        -11.432640075683594\n      ],\n      [\n        \"enfant\",\n        -11.432748794555664\n      ],\n      [\n        \"▁Reg\",\n        -11.432836532592773\n      ],\n      [\n        \"▁instruments\",\n        -11.432872772216797\n      ],\n      [\n        \"▁calcul\",\n        -11.433363914489746\n      ],\n      [\n        \"▁Henry\",\n        -11.4335298538208\n      ],\n      [\n        \"▁Cla\",\n        -11.433616638183594\n      ],\n      [\n        \"▁rack\",\n        -11.433661460876465\n      ],\n      [\n        \"sehen\",\n        -11.43375301361084\n      ],\n      [\n        \"▁ending\",\n        -11.433754920959473\n      ],\n      [\n        \"▁resolve\",\n        -11.434130668640137\n      ],\n      [\n        \"▁advise\",\n        -11.434178352355957\n      ],\n      [\n        \"▁sociale\",\n        -11.434386253356934\n      ],\n      [\n        \"▁cabin\",\n        -11.434536933898926\n      ],\n      [\n        \"▁involve\",\n        -11.43480396270752\n      ],\n      [\n        \"gă\",\n        -11.434889793395996\n      ],\n      [\n        \"▁automat\",\n        -11.435132026672363\n      ],\n      [\n        \"▁consultant\",\n        -11.435258865356445\n      ],\n      [\n        \"Bu\",\n        -11.435370445251465\n      ],\n      [\n        \"▁safely\",\n        -11.435466766357422\n      ],\n      [\n        \"état\",\n        -11.435478210449219\n      ],\n      [\n        \"▁pros\",\n        -11.435657501220703\n      ],\n      [\n        \"▁lies\",\n        -11.435659408569336\n      ],\n      [\n        \"▁Brian\",\n        -11.435914993286133\n      ],\n      [\n        \"▁talented\",\n        -11.435954093933105\n      ],\n      [\n        \"pus\",\n        -11.43599796295166\n      ],\n      [\n        \"▁hub\",\n        -11.436060905456543\n      ],\n      [\n        \"▁Ji\",\n        -11.436066627502441\n      ],\n      [\n        \"▁sought\",\n        -11.436102867126465\n      ],\n      [\n        \"▁energie\",\n        -11.436210632324219\n      ],\n      [\n        \"▁möchten\",\n        -11.43634033203125\n      ],\n      [\n        \"▁11.\",\n        -11.436558723449707\n      ],\n      [\n        \"▁Kong\",\n        -11.436662673950195\n      ],\n      [\n        \"▁grave\",\n        -11.43666934967041\n      ],\n      [\n        \"▁lists\",\n        -11.436800956726074\n      ],\n      [\n        \"tati\",\n        -11.436809539794922\n      ],\n      [\n        \"verschiedenen\",\n        -11.43692398071289\n      ],\n      [\n        \"dam\",\n        -11.437061309814453\n      ],\n      [\n        \"▁charity\",\n        -11.437249183654785\n      ],\n      [\n        \"▁breaking\",\n        -11.43735122680664\n      ],\n      [\n        \"kins\",\n        -11.43747329711914\n      ],\n      [\n        \"▁könnte\",\n        -11.437517166137695\n      ],\n      [\n        \"▁appointed\",\n        -11.437532424926758\n      ],\n      [\n        \"roc\",\n        -11.4376859664917\n      ],\n      [\n        \"▁Senate\",\n        -11.437979698181152\n      ],\n      [\n        \"wit\",\n        -11.438002586364746\n      ],\n      [\n        \"▁emerging\",\n        -11.438162803649902\n      ],\n      [\n        \"▁année\",\n        -11.438288688659668\n      ],\n      [\n        \"▁Cool\",\n        -11.438365936279297\n      ],\n      [\n        \"▁sensor\",\n        -11.43842887878418\n      ],\n      [\n        \"How\",\n        -11.438488960266113\n      ],\n      [\n        \"▁Ryan\",\n        -11.438626289367676\n      ],\n      [\n        \"▁computers\",\n        -11.43871784210205\n      ],\n      [\n        \"▁fault\",\n        -11.4388427734375\n      ],\n      [\n        \"▁présent\",\n        -11.438843727111816\n      ],\n      [\n        \"ulation\",\n        -11.439149856567383\n      ],\n      [\n        \"▁stir\",\n        -11.439348220825195\n      ],\n      [\n        \"lauf\",\n        -11.439703941345215\n      ],\n      [\n        \"▁AI\",\n        -11.440389633178711\n      ],\n      [\n        \"▁Bri\",\n        -11.440438270568848\n      ],\n      [\n        \"▁bain\",\n        -11.441011428833008\n      ],\n      [\n        \"▁5,\",\n        -11.441287994384766\n      ],\n      [\n        \"schein\",\n        -11.44157886505127\n      ],\n      [\n        \"▁weiß\",\n        -11.441596031188965\n      ],\n      [\n        \"▁possibilities\",\n        -11.44235610961914\n      ],\n      [\n        \"gur\",\n        -11.442413330078125\n      ],\n      [\n        \"▁hinter\",\n        -11.442647933959961\n      ],\n      [\n        \"Innen\",\n        -11.442755699157715\n      ],\n      [\n        \"▁vorba\",\n        -11.442992210388184\n      ],\n      [\n        \"fahren\",\n        -11.443008422851562\n      ],\n      [\n        \"▁Cell\",\n        -11.443072319030762\n      ],\n      [\n        \"univers\",\n        -11.443137168884277\n      ],\n      [\n        \"▁Follow\",\n        -11.443424224853516\n      ],\n      [\n        \"▁emotions\",\n        -11.44360637664795\n      ],\n      [\n        \"▁Ministry\",\n        -11.443694114685059\n      ],\n      [\n        \"▁curriculum\",\n        -11.443694114685059\n      ],\n      [\n        \"Je\",\n        -11.443764686584473\n      ],\n      [\n        \"▁gab\",\n        -11.444080352783203\n      ],\n      [\n        \"▁sigur\",\n        -11.444270133972168\n      ],\n      [\n        \"rise\",\n        -11.444416999816895\n      ],\n      [\n        \"Pri\",\n        -11.44466495513916\n      ],\n      [\n        \"▁stabil\",\n        -11.444781303405762\n      ],\n      [\n        \"▁superb\",\n        -11.445100784301758\n      ],\n      [\n        \"▁Oak\",\n        -11.44510269165039\n      ],\n      [\n        \"▁rubber\",\n        -11.445286750793457\n      ],\n      [\n        \"▁tag\",\n        -11.445306777954102\n      ],\n      [\n        \"PG\",\n        -11.445361137390137\n      ],\n      [\n        \"▁Heat\",\n        -11.445477485656738\n      ],\n      [\n        \"▁thousand\",\n        -11.445504188537598\n      ],\n      [\n        \"▁meets\",\n        -11.445521354675293\n      ],\n      [\n        \"▁faced\",\n        -11.445578575134277\n      ],\n      [\n        \"▁reserve\",\n        -11.445640563964844\n      ],\n      [\n        \"cateva\",\n        -11.445767402648926\n      ],\n      [\n        \"▁gym\",\n        -11.445771217346191\n      ],\n      [\n        \"▁vitamin\",\n        -11.445960998535156\n      ],\n      [\n        \"▁Rest\",\n        -11.446457862854004\n      ],\n      [\n        \"▁Single\",\n        -11.446535110473633\n      ],\n      [\n        \"▁Stephen\",\n        -11.446623802185059\n      ],\n      [\n        \"▁trick\",\n        -11.446824073791504\n      ],\n      [\n        \"DU\",\n        -11.44694709777832\n      ],\n      [\n        \"▁telefon\",\n        -11.44711685180664\n      ],\n      [\n        \"▁gând\",\n        -11.447120666503906\n      ],\n      [\n        \"▁primit\",\n        -11.447345733642578\n      ],\n      [\n        \"▁Connect\",\n        -11.447351455688477\n      ],\n      [\n        \"▁führt\",\n        -11.447440147399902\n      ],\n      [\n        \"▁Info\",\n        -11.447500228881836\n      ],\n      [\n        \"▁recall\",\n        -11.447848320007324\n      ],\n      [\n        \"▁restore\",\n        -11.447885513305664\n      ],\n      [\n        \"lege\",\n        -11.44792652130127\n      ],\n      [\n        \"▁franchise\",\n        -11.448189735412598\n      ],\n      [\n        \"▁seulement\",\n        -11.44856071472168\n      ],\n      [\n        \"reci\",\n        -11.448598861694336\n      ],\n      [\n        \"▁2019,\",\n        -11.44864273071289\n      ],\n      [\n        \"▁Ring\",\n        -11.448663711547852\n      ],\n      [\n        \"▁assembly\",\n        -11.448678970336914\n      ],\n      [\n        \"intérieur\",\n        -11.448775291442871\n      ],\n      [\n        \"▁shade\",\n        -11.44887924194336\n      ],\n      [\n        \"▁meaningful\",\n        -11.448881149291992\n      ],\n      [\n        \"bag\",\n        -11.448989868164062\n      ],\n      [\n        \"ONE\",\n        -11.449249267578125\n      ],\n      [\n        \"▁globe\",\n        -11.449287414550781\n      ],\n      [\n        \"▁WA\",\n        -11.449406623840332\n      ],\n      [\n        \"▁intervention\",\n        -11.449495315551758\n      ],\n      [\n        \"öl\",\n        -11.449531555175781\n      ],\n      [\n        \"▁Marine\",\n        -11.45029067993164\n      ],\n      [\n        \"▁Angebot\",\n        -11.450512886047363\n      ],\n      [\n        \"▁align\",\n        -11.450618743896484\n      ],\n      [\n        \"▁temperatures\",\n        -11.450634956359863\n      ],\n      [\n        \"ifier\",\n        -11.45091724395752\n      ],\n      [\n        \"▁Nigeria\",\n        -11.451189041137695\n      ],\n      [\n        \"▁survive\",\n        -11.451216697692871\n      ],\n      [\n        \"ounce\",\n        -11.451275825500488\n      ],\n      [\n        \"▁placement\",\n        -11.451416969299316\n      ],\n      [\n        \"▁deci\",\n        -11.451528549194336\n      ],\n      [\n        \"▁Taylor\",\n        -11.451759338378906\n      ],\n      [\n        \"step\",\n        -11.45190715789795\n      ],\n      [\n        \"▁Geschichte\",\n        -11.452054023742676\n      ],\n      [\n        \"▁Bet\",\n        -11.452169418334961\n      ],\n      [\n        \"▁Nature\",\n        -11.45224380493164\n      ],\n      [\n        \"▁FC\",\n        -11.452256202697754\n      ],\n      [\n        \"▁ownership\",\n        -11.452286720275879\n      ],\n      [\n        \"▁behaviour\",\n        -11.452474594116211\n      ],\n      [\n        \"▁deutlich\",\n        -11.452532768249512\n      ],\n      [\n        \"▁wondering\",\n        -11.452798843383789\n      ],\n      [\n        \"▁cleaner\",\n        -11.453295707702637\n      ],\n      [\n        \"uring\",\n        -11.4534912109375\n      ],\n      [\n        \"rä\",\n        -11.453496932983398\n      ],\n      [\n        \"▁ga\",\n        -11.454296112060547\n      ],\n      [\n        \"ador\",\n        -11.454482078552246\n      ],\n      [\n        \"▁artwork\",\n        -11.454564094543457\n      ],\n      [\n        \"ologic\",\n        -11.45457649230957\n      ],\n      [\n        \"▁eigentlich\",\n        -11.454848289489746\n      ],\n      [\n        \"▁hell\",\n        -11.45522403717041\n      ],\n      [\n        \"source\",\n        -11.455251693725586\n      ],\n      [\n        \"▁gem\",\n        -11.455265045166016\n      ],\n      [\n        \"▁boss\",\n        -11.455307006835938\n      ],\n      [\n        \"▁arise\",\n        -11.455460548400879\n      ],\n      [\n        \"about\",\n        -11.455711364746094\n      ],\n      [\n        \"▁SI\",\n        -11.455951690673828\n      ],\n      [\n        \"▁ME\",\n        -11.45610237121582\n      ],\n      [\n        \"akt\",\n        -11.456191062927246\n      ],\n      [\n        \"▁Style\",\n        -11.456259727478027\n      ],\n      [\n        \"▁Körper\",\n        -11.456493377685547\n      ],\n      [\n        \"gui\",\n        -11.456799507141113\n      ],\n      [\n        \"▁navigate\",\n        -11.456819534301758\n      ],\n      [\n        \"▁Meanwhile\",\n        -11.456977844238281\n      ],\n      [\n        \"▁așa\",\n        -11.457111358642578\n      ],\n      [\n        \"▁bulk\",\n        -11.457298278808594\n      ],\n      [\n        \"▁directions\",\n        -11.457310676574707\n      ],\n      [\n        \"▁brick\",\n        -11.457747459411621\n      ],\n      [\n        \"▁Poly\",\n        -11.457752227783203\n      ],\n      [\n        \"▁politique\",\n        -11.457772254943848\n      ],\n      [\n        \"▁patch\",\n        -11.457777976989746\n      ],\n      [\n        \"ра\",\n        -11.457816123962402\n      ],\n      [\n        \"commerce\",\n        -11.457844734191895\n      ],\n      [\n        \"▁înainte\",\n        -11.457884788513184\n      ],\n      [\n        \"▁intelligent\",\n        -11.45823860168457\n      ],\n      [\n        \"▁infection\",\n        -11.458426475524902\n      ],\n      [\n        \"▁Tru\",\n        -11.458494186401367\n      ],\n      [\n        \"▁raising\",\n        -11.458504676818848\n      ],\n      [\n        \"tragen\",\n        -11.458539009094238\n      ],\n      [\n        \"▁portrait\",\n        -11.45858383178711\n      ],\n      [\n        \"▁meisten\",\n        -11.458783149719238\n      ],\n      [\n        \"▁organize\",\n        -11.45893669128418\n      ],\n      [\n        \"metric\",\n        -11.458962440490723\n      ],\n      [\n        \"▁Season\",\n        -11.459036827087402\n      ],\n      [\n        \"▁enforcement\",\n        -11.459259033203125\n      ],\n      [\n        \"origine\",\n        -11.459836959838867\n      ],\n      [\n        \"▁Ros\",\n        -11.460065841674805\n      ],\n      [\n        \"▁Mount\",\n        -11.460083961486816\n      ],\n      [\n        \"have\",\n        -11.460237503051758\n      ],\n      [\n        \"▁romantic\",\n        -11.460258483886719\n      ],\n      [\n        \"▁comic\",\n        -11.460810661315918\n      ],\n      [\n        \"▁greu\",\n        -11.461116790771484\n      ],\n      [\n        \"ET\",\n        -11.46133041381836\n      ],\n      [\n        \"▁hook\",\n        -11.461407661437988\n      ],\n      [\n        \"▁mort\",\n        -11.461411476135254\n      ],\n      [\n        \"▁indicated\",\n        -11.461583137512207\n      ],\n      [\n        \"▁7,\",\n        -11.461982727050781\n      ],\n      [\n        \"▁Neben\",\n        -11.46204662322998\n      ],\n      [\n        \"yer\",\n        -11.46214485168457\n      ],\n      [\n        \"▁momentul\",\n        -11.46214771270752\n      ],\n      [\n        \"note\",\n        -11.462313652038574\n      ],\n      [\n        \"▁baz\",\n        -11.46231460571289\n      ],\n      [\n        \"▁abroad\",\n        -11.462320327758789\n      ],\n      [\n        \"nite\",\n        -11.462464332580566\n      ],\n      [\n        \"▁bass\",\n        -11.462701797485352\n      ],\n      [\n        \"▁norm\",\n        -11.462714195251465\n      ],\n      [\n        \"▁É\",\n        -11.462788581848145\n      ],\n      [\n        \"4.\",\n        -11.462881088256836\n      ],\n      [\n        \"▁province\",\n        -11.463004112243652\n      ],\n      [\n        \"▁merge\",\n        -11.463419914245605\n      ],\n      [\n        \"arbeiten\",\n        -11.463438987731934\n      ],\n      [\n        \"-20\",\n        -11.463574409484863\n      ],\n      [\n        \"▁Nicht\",\n        -11.463674545288086\n      ],\n      [\n        \"spo\",\n        -11.463783264160156\n      ],\n      [\n        \"size\",\n        -11.463815689086914\n      ],\n      [\n        \"▁assure\",\n        -11.463849067687988\n      ],\n      [\n        \"charge\",\n        -11.463987350463867\n      ],\n      [\n        \"▁olive\",\n        -11.464017868041992\n      ],\n      [\n        \"▁Pot\",\n        -11.46408462524414\n      ],\n      [\n        \"▁Figure\",\n        -11.4642333984375\n      ],\n      [\n        \"clair\",\n        -11.464336395263672\n      ],\n      [\n        \"▁discipline\",\n        -11.464600563049316\n      ],\n      [\n        \"elli\",\n        -11.464639663696289\n      ],\n      [\n        \"▁tackle\",\n        -11.465169906616211\n      ],\n      [\n        \"▁buyer\",\n        -11.465237617492676\n      ],\n      [\n        \"▁loud\",\n        -11.465479850769043\n      ],\n      [\n        \"▁180\",\n        -11.465534210205078\n      ],\n      [\n        \"▁căt\",\n        -11.465587615966797\n      ],\n      [\n        \"▁Palm\",\n        -11.465738296508789\n      ],\n      [\n        \"away\",\n        -11.46593189239502\n      ],\n      [\n        \"▁Mother\",\n        -11.46607494354248\n      ],\n      [\n        \"onia\",\n        -11.466240882873535\n      ],\n      [\n        \"▁Protection\",\n        -11.466416358947754\n      ],\n      [\n        \"auto\",\n        -11.466547966003418\n      ],\n      [\n        \"▁Version\",\n        -11.466583251953125\n      ],\n      [\n        \"▁Nice\",\n        -11.466714859008789\n      ],\n      [\n        \"▁12.\",\n        -11.46682071685791\n      ],\n      [\n        \"▁0,\",\n        -11.466835021972656\n      ],\n      [\n        \"ATION\",\n        -11.466911315917969\n      ],\n      [\n        \"▁Produkte\",\n        -11.466955184936523\n      ],\n      [\n        \"▁tube\",\n        -11.467084884643555\n      ],\n      [\n        \"▁Houston\",\n        -11.467106819152832\n      ],\n      [\n        \"chu\",\n        -11.467500686645508\n      ],\n      [\n        \"pas\",\n        -11.467717170715332\n      ],\n      [\n        \"▁Ele\",\n        -11.467801094055176\n      ],\n      [\n        \"▁mountains\",\n        -11.467835426330566\n      ],\n      [\n        \"PH\",\n        -11.467937469482422\n      ],\n      [\n        \"▁languages\",\n        -11.468672752380371\n      ],\n      [\n        \"▁servicii\",\n        -11.468722343444824\n      ],\n      [\n        \"▁Stay\",\n        -11.468999862670898\n      ],\n      [\n        \"fil\",\n        -11.469138145446777\n      ],\n      [\n        \"▁propos\",\n        -11.469801902770996\n      ],\n      [\n        \"▁coll\",\n        -11.469825744628906\n      ],\n      [\n        \"▁mor\",\n        -11.470197677612305\n      ],\n      [\n        \"▁arrange\",\n        -11.470410346984863\n      ],\n      [\n        \"▁sorry\",\n        -11.470475196838379\n      ],\n      [\n        \"▁instruction\",\n        -11.470723152160645\n      ],\n      [\n        \"▁holes\",\n        -11.47077465057373\n      ],\n      [\n        \"letting\",\n        -11.471046447753906\n      ],\n      [\n        \"▁wa\",\n        -11.471074104309082\n      ],\n      [\n        \"▁Feb\",\n        -11.471227645874023\n      ],\n      [\n        \"omb\",\n        -11.471232414245605\n      ],\n      [\n        \"▁prise\",\n        -11.471290588378906\n      ],\n      [\n        \"VO\",\n        -11.471305847167969\n      ],\n      [\n        \"week\",\n        -11.471349716186523\n      ],\n      [\n        \"▁Event\",\n        -11.471427917480469\n      ],\n      [\n        \"▁AT\",\n        -11.471485137939453\n      ],\n      [\n        \"ket\",\n        -11.471492767333984\n      ],\n      [\n        \"haft\",\n        -11.471579551696777\n      ],\n      [\n        \"▁hits\",\n        -11.47159194946289\n      ],\n      [\n        \"foli\",\n        -11.471681594848633\n      ],\n      [\n        \"this\",\n        -11.471948623657227\n      ],\n      [\n        \"GP\",\n        -11.471970558166504\n      ],\n      [\n        \"▁Pin\",\n        -11.472332954406738\n      ],\n      [\n        \"▁Stein\",\n        -11.472503662109375\n      ],\n      [\n        \"thing\",\n        -11.472512245178223\n      ],\n      [\n        \"▁emphasis\",\n        -11.472556114196777\n      ],\n      [\n        \"▁Mur\",\n        -11.472631454467773\n      ],\n      [\n        \"▁Bag\",\n        -11.472647666931152\n      ],\n      [\n        \"cons\",\n        -11.47273063659668\n      ],\n      [\n        \"tons\",\n        -11.472835540771484\n      ],\n      [\n        \"lash\",\n        -11.472987174987793\n      ],\n      [\n        \"▁Grant\",\n        -11.473104476928711\n      ],\n      [\n        \"▁pris\",\n        -11.473175048828125\n      ],\n      [\n        \"▁bună\",\n        -11.47323989868164\n      ],\n      [\n        \"▁buc\",\n        -11.473699569702148\n      ],\n      [\n        \"▁passe\",\n        -11.473746299743652\n      ],\n      [\n        \"▁jewelry\",\n        -11.474213600158691\n      ],\n      [\n        \"iens\",\n        -11.474342346191406\n      ],\n      [\n        \"▁forma\",\n        -11.47453784942627\n      ],\n      [\n        \"▁Med\",\n        -11.474651336669922\n      ],\n      [\n        \"laufen\",\n        -11.474778175354004\n      ],\n      [\n        \"▁hunt\",\n        -11.474977493286133\n      ],\n      [\n        \"stayed\",\n        -11.475086212158203\n      ],\n      [\n        \"party\",\n        -11.475152015686035\n      ],\n      [\n        \"▁fra\",\n        -11.47529411315918\n      ],\n      [\n        \"▁scenes\",\n        -11.475305557250977\n      ],\n      [\n        \"▁absorb\",\n        -11.47535228729248\n      ],\n      [\n        \"▁abilities\",\n        -11.475377082824707\n      ],\n      [\n        \"lug\",\n        -11.475507736206055\n      ],\n      [\n        \"▁Sarah\",\n        -11.475693702697754\n      ],\n      [\n        \"mpf\",\n        -11.47570514678955\n      ],\n      [\n        \"▁fle\",\n        -11.4757080078125\n      ],\n      [\n        \"accès\",\n        -11.475872993469238\n      ],\n      [\n        \"▁solicit\",\n        -11.475926399230957\n      ],\n      [\n        \"pie\",\n        -11.476278305053711\n      ],\n      [\n        \"▁Zum\",\n        -11.476296424865723\n      ],\n      [\n        \"▁universe\",\n        -11.476390838623047\n      ],\n      [\n        \"▁exists\",\n        -11.476449012756348\n      ],\n      [\n        \"oane\",\n        -11.476597785949707\n      ],\n      [\n        \"IVE\",\n        -11.47668743133545\n      ],\n      [\n        \"▁2011.\",\n        -11.476906776428223\n      ],\n      [\n        \"▁specialists\",\n        -11.477072715759277\n      ],\n      [\n        \"▁mess\",\n        -11.477309226989746\n      ],\n      [\n        \"fach\",\n        -11.477402687072754\n      ],\n      [\n        \"▁Recht\",\n        -11.477404594421387\n      ],\n      [\n        \"▁hack\",\n        -11.47755241394043\n      ],\n      [\n        \"▁jacket\",\n        -11.477564811706543\n      ],\n      [\n        \"HC\",\n        -11.47769832611084\n      ],\n      [\n        \"▁substance\",\n        -11.477728843688965\n      ],\n      [\n        \"▁signing\",\n        -11.477775573730469\n      ],\n      [\n        \"▁allerdings\",\n        -11.478032112121582\n      ],\n      [\n        \"▁publish\",\n        -11.478139877319336\n      ],\n      [\n        \"▁Lab\",\n        -11.478157043457031\n      ],\n      [\n        \"▁agenda\",\n        -11.478249549865723\n      ],\n      [\n        \"lane\",\n        -11.478299140930176\n      ],\n      [\n        \"stream\",\n        -11.478620529174805\n      ],\n      [\n        \"schau\",\n        -11.47879409790039\n      ],\n      [\n        \"▁realizat\",\n        -11.478971481323242\n      ],\n      [\n        \"▁supplier\",\n        -11.479019165039062\n      ],\n      [\n        \"▁moderate\",\n        -11.47902774810791\n      ],\n      [\n        \"▁tours\",\n        -11.479212760925293\n      ],\n      [\n        \"▁narrative\",\n        -11.479220390319824\n      ],\n      [\n        \"ația\",\n        -11.479279518127441\n      ],\n      [\n        \"▁maps\",\n        -11.479423522949219\n      ],\n      [\n        \"treten\",\n        -11.479447364807129\n      ],\n      [\n        \"▁mars\",\n        -11.479706764221191\n      ],\n      [\n        \"▁moon\",\n        -11.479745864868164\n      ],\n      [\n        \"rose\",\n        -11.479751586914062\n      ],\n      [\n        \"▁exp\",\n        -11.479766845703125\n      ],\n      [\n        \"zahl\",\n        -11.480154037475586\n      ],\n      [\n        \"psych\",\n        -11.480195999145508\n      ],\n      [\n        \"▁gehört\",\n        -11.48024845123291\n      ],\n      [\n        \"▁bound\",\n        -11.4803466796875\n      ],\n      [\n        \"▁submission\",\n        -11.480451583862305\n      ],\n      [\n        \"▁clubs\",\n        -11.480722427368164\n      ],\n      [\n        \"Am\",\n        -11.480755805969238\n      ],\n      [\n        \"tenir\",\n        -11.480782508850098\n      ],\n      [\n        \"▁boast\",\n        -11.480851173400879\n      ],\n      [\n        \"▁boards\",\n        -11.4810791015625\n      ],\n      [\n        \"▁Geschäfts\",\n        -11.481216430664062\n      ],\n      [\n        \"zing\",\n        -11.48126220703125\n      ],\n      [\n        \"wort\",\n        -11.48137092590332\n      ],\n      [\n        \"lid\",\n        -11.481417655944824\n      ],\n      [\n        \"▁contractor\",\n        -11.481528282165527\n      ],\n      [\n        \"▁donner\",\n        -11.481672286987305\n      ],\n      [\n        \"▁coupon\",\n        -11.481974601745605\n      ],\n      [\n        \"adresse\",\n        -11.482004165649414\n      ],\n      [\n        \"colo\",\n        -11.48210334777832\n      ],\n      [\n        \"▁perception\",\n        -11.482124328613281\n      ],\n      [\n        \"NC\",\n        -11.48222541809082\n      ],\n      [\n        \"▁abge\",\n        -11.482245445251465\n      ],\n      [\n        \"▁cheaper\",\n        -11.482268333435059\n      ],\n      [\n        \"▁grace\",\n        -11.482312202453613\n      ],\n      [\n        \"▁resident\",\n        -11.482718467712402\n      ],\n      [\n        \"kla\",\n        -11.4828462600708\n      ],\n      [\n        \"▁bug\",\n        -11.4828462600708\n      ],\n      [\n        \"▁Available\",\n        -11.482893943786621\n      ],\n      [\n        \"▁BA\",\n        -11.483323097229004\n      ],\n      [\n        \"▁Met\",\n        -11.483601570129395\n      ],\n      [\n        \"▁climb\",\n        -11.48365592956543\n      ],\n      [\n        \"▁expanded\",\n        -11.484349250793457\n      ],\n      [\n        \"ying\",\n        -11.484426498413086\n      ],\n      [\n        \"▁matching\",\n        -11.484469413757324\n      ],\n      [\n        \"▁suffered\",\n        -11.484733581542969\n      ],\n      [\n        \"▁employed\",\n        -11.484755516052246\n      ],\n      [\n        \"pper\",\n        -11.484843254089355\n      ],\n      [\n        \"▁experiencing\",\n        -11.484884262084961\n      ],\n      [\n        \"ddy\",\n        -11.484953880310059\n      ],\n      [\n        \"▁philosophy\",\n        -11.484955787658691\n      ],\n      [\n        \"▁utilisé\",\n        -11.485008239746094\n      ],\n      [\n        \"▁Jane\",\n        -11.485079765319824\n      ],\n      [\n        \"LI\",\n        -11.485087394714355\n      ],\n      [\n        \"▁elected\",\n        -11.485185623168945\n      ],\n      [\n        \"▁MI\",\n        -11.485264778137207\n      ],\n      [\n        \"▁ISO\",\n        -11.485340118408203\n      ],\n      [\n        \"winning\",\n        -11.48537540435791\n      ],\n      [\n        \"▁vot\",\n        -11.485424041748047\n      ],\n      [\n        \"▁generic\",\n        -11.485519409179688\n      ],\n      [\n        \"▁Bol\",\n        -11.485650062561035\n      ],\n      [\n        \"▁copies\",\n        -11.48568058013916\n      ],\n      [\n        \"▁mechanical\",\n        -11.48568058013916\n      ],\n      [\n        \"günstig\",\n        -11.485682487487793\n      ],\n      [\n        \"roy\",\n        -11.485770225524902\n      ],\n      [\n        \"Astfel\",\n        -11.485808372497559\n      ],\n      [\n        \"media\",\n        -11.485868453979492\n      ],\n      [\n        \"▁shoulder\",\n        -11.4859037399292\n      ],\n      [\n        \"▁directory\",\n        -11.486000061035156\n      ],\n      [\n        \"▁banking\",\n        -11.486016273498535\n      ],\n      [\n        \"▁mistakes\",\n        -11.486040115356445\n      ],\n      [\n        \"▁Fran\",\n        -11.486425399780273\n      ],\n      [\n        \"▁Jon\",\n        -11.486544609069824\n      ],\n      [\n        \"▁spare\",\n        -11.486579895019531\n      ],\n      [\n        \"metri\",\n        -11.486668586730957\n      ],\n      [\n        \"▁mask\",\n        -11.486879348754883\n      ],\n      [\n        \"▁consistently\",\n        -11.48695182800293\n      ],\n      [\n        \"▁Columbia\",\n        -11.487278938293457\n      ],\n      [\n        \"roid\",\n        -11.48774242401123\n      ],\n      [\n        \"essen\",\n        -11.487935066223145\n      ],\n      [\n        \"▁(“\",\n        -11.48798656463623\n      ],\n      [\n        \"▁série\",\n        -11.488212585449219\n      ],\n      [\n        \"▁Phil\",\n        -11.488249778747559\n      ],\n      [\n        \"▁usor\",\n        -11.488249778747559\n      ],\n      [\n        \"▁stood\",\n        -11.488279342651367\n      ],\n      [\n        \"▁racing\",\n        -11.488335609436035\n      ],\n      [\n        \"▁Comme\",\n        -11.488555908203125\n      ],\n      [\n        \"▁exceed\",\n        -11.488565444946289\n      ],\n      [\n        \"на\",\n        -11.488618850708008\n      ],\n      [\n        \"▁activate\",\n        -11.48873233795166\n      ],\n      [\n        \"▁circle\",\n        -11.488836288452148\n      ],\n      [\n        \"▁bold\",\n        -11.488956451416016\n      ],\n      [\n        \"▁handy\",\n        -11.48909854888916\n      ],\n      [\n        \"merely\",\n        -11.489114761352539\n      ],\n      [\n        \"▁Edward\",\n        -11.489147186279297\n      ],\n      [\n        \"▁contracts\",\n        -11.489530563354492\n      ],\n      [\n        \"ê\",\n        -11.489595413208008\n      ],\n      [\n        \"▁campaigns\",\n        -11.489673614501953\n      ],\n      [\n        \"▁ought\",\n        -11.489733695983887\n      ],\n      [\n        \"▁nursing\",\n        -11.489781379699707\n      ],\n      [\n        \"▁Jr\",\n        -11.489917755126953\n      ],\n      [\n        \"▁rarely\",\n        -11.490032196044922\n      ],\n      [\n        \"▁Mir\",\n        -11.490050315856934\n      ],\n      [\n        \"▁diagnosis\",\n        -11.490379333496094\n      ],\n      [\n        \"▁Theatre\",\n        -11.490394592285156\n      ],\n      [\n        \"▁producer\",\n        -11.490407943725586\n      ],\n      [\n        \"Currently\",\n        -11.490492820739746\n      ],\n      [\n        \"▁fitting\",\n        -11.490580558776855\n      ],\n      [\n        \"▁ajunge\",\n        -11.490618705749512\n      ],\n      [\n        \"minte\",\n        -11.490754127502441\n      ],\n      [\n        \"▁termen\",\n        -11.490838050842285\n      ],\n      [\n        \"▁Linux\",\n        -11.491013526916504\n      ],\n      [\n        \"▁1-\",\n        -11.491068840026855\n      ],\n      [\n        \"▁hätte\",\n        -11.491202354431152\n      ],\n      [\n        \"▁Resort\",\n        -11.49129867553711\n      ],\n      [\n        \"image\",\n        -11.491527557373047\n      ],\n      [\n        \"▁Rod\",\n        -11.49189281463623\n      ],\n      [\n        \"▁Fly\",\n        -11.491924285888672\n      ],\n      [\n        \"try\",\n        -11.492317199707031\n      ],\n      [\n        \"▁expense\",\n        -11.49245834350586\n      ],\n      [\n        \"▁Interior\",\n        -11.492799758911133\n      ],\n      [\n        \"▁fence\",\n        -11.492920875549316\n      ],\n      [\n        \"▁Kontakt\",\n        -11.493063926696777\n      ],\n      [\n        \"▁ALL\",\n        -11.493142127990723\n      ],\n      [\n        \"VA\",\n        -11.493229866027832\n      ],\n      [\n        \"▁Exchange\",\n        -11.493316650390625\n      ],\n      [\n        \"ranked\",\n        -11.493558883666992\n      ],\n      [\n        \"▁Performance\",\n        -11.493621826171875\n      ],\n      [\n        \"prim\",\n        -11.493635177612305\n      ],\n      [\n        \"▁basket\",\n        -11.493694305419922\n      ],\n      [\n        \"▁Vice\",\n        -11.493703842163086\n      ],\n      [\n        \"phan\",\n        -11.4937105178833\n      ],\n      [\n        \"▁broke\",\n        -11.494003295898438\n      ],\n      [\n        \"voir\",\n        -11.49431324005127\n      ],\n      [\n        \"arg\",\n        -11.494512557983398\n      ],\n      [\n        \"ART\",\n        -11.494529724121094\n      ],\n      [\n        \"▁floors\",\n        -11.494856834411621\n      ],\n      [\n        \"pression\",\n        -11.495025634765625\n      ],\n      [\n        \"▁possession\",\n        -11.49507999420166\n      ],\n      [\n        \"▁domaine\",\n        -11.49510669708252\n      ],\n      [\n        \"▁valeur\",\n        -11.495132446289062\n      ],\n      [\n        \"▁suddenly\",\n        -11.495282173156738\n      ],\n      [\n        \"▁mild\",\n        -11.495304107666016\n      ],\n      [\n        \"▁aflat\",\n        -11.495431900024414\n      ],\n      [\n        \"▁Tea\",\n        -11.495731353759766\n      ],\n      [\n        \"tritt\",\n        -11.495767593383789\n      ],\n      [\n        \"▁Mittel\",\n        -11.495773315429688\n      ],\n      [\n        \"▁regulatory\",\n        -11.49580192565918\n      ],\n      [\n        \"▁spectacular\",\n        -11.495905876159668\n      ],\n      [\n        \"fahrt\",\n        -11.495949745178223\n      ],\n      [\n        \"GS\",\n        -11.496026039123535\n      ],\n      [\n        \"MM\",\n        -11.4961576461792\n      ],\n      [\n        \"▁environments\",\n        -11.496203422546387\n      ],\n      [\n        \"▁Raum\",\n        -11.496381759643555\n      ],\n      [\n        \"▁lay\",\n        -11.496664047241211\n      ],\n      [\n        \"▁cré\",\n        -11.496713638305664\n      ],\n      [\n        \"▁Selbst\",\n        -11.496726989746094\n      ],\n      [\n        \"▁opposition\",\n        -11.496821403503418\n      ],\n      [\n        \"two\",\n        -11.49729061126709\n      ],\n      [\n        \"▁Clark\",\n        -11.497822761535645\n      ],\n      [\n        \"▁Netz\",\n        -11.497845649719238\n      ],\n      [\n        \"bald\",\n        -11.497983932495117\n      ],\n      [\n        \"▁Innovation\",\n        -11.4982271194458\n      ],\n      [\n        \"▁overcome\",\n        -11.49825382232666\n      ],\n      [\n        \"quot\",\n        -11.499013900756836\n      ],\n      [\n        \"▁Sin\",\n        -11.499106407165527\n      ],\n      [\n        \"▁Sto\",\n        -11.499320983886719\n      ],\n      [\n        \"▁grain\",\n        -11.499560356140137\n      ],\n      [\n        \"▁collections\",\n        -11.499724388122559\n      ],\n      [\n        \"▁applies\",\n        -11.49986743927002\n      ],\n      [\n        \"mach\",\n        -11.499934196472168\n      ],\n      [\n        \"▁wheels\",\n        -11.499958992004395\n      ],\n      [\n        \"▁universities\",\n        -11.500049591064453\n      ],\n      [\n        \"▁Ray\",\n        -11.500182151794434\n      ],\n      [\n        \"lina\",\n        -11.500238418579102\n      ],\n      [\n        \"▁arrangements\",\n        -11.500393867492676\n      ],\n      [\n        \"▁western\",\n        -11.500728607177734\n      ],\n      [\n        \"rous\",\n        -11.500768661499023\n      ],\n      [\n        \"aise\",\n        -11.500784873962402\n      ],\n      [\n        \"▁highlights\",\n        -11.50112533569336\n      ],\n      [\n        \"▁intend\",\n        -11.501265525817871\n      ],\n      [\n        \"aimed\",\n        -11.501358032226562\n      ],\n      [\n        \"▁Scotland\",\n        -11.501360893249512\n      ],\n      [\n        \"▁acestei\",\n        -11.501466751098633\n      ],\n      [\n        \"graf\",\n        -11.50150203704834\n      ],\n      [\n        \"duction\",\n        -11.501517295837402\n      ],\n      [\n        \"path\",\n        -11.50156021118164\n      ],\n      [\n        \"▁evil\",\n        -11.501633644104004\n      ],\n      [\n        \"▁scris\",\n        -11.501791000366211\n      ],\n      [\n        \"▁disposition\",\n        -11.501927375793457\n      ],\n      [\n        \"▁designing\",\n        -11.5020751953125\n      ],\n      [\n        \"zwar\",\n        -11.502172470092773\n      ],\n      [\n        \"▁Retrieve\",\n        -11.50217342376709\n      ],\n      [\n        \"▁aggressive\",\n        -11.502374649047852\n      ],\n      [\n        \"▁Glen\",\n        -11.502411842346191\n      ],\n      [\n        \"▁daher\",\n        -11.502473831176758\n      ],\n      [\n        \"▁Quick\",\n        -11.502494812011719\n      ],\n      [\n        \"▁recover\",\n        -11.502632141113281\n      ],\n      [\n        \"▁prominent\",\n        -11.50288200378418\n      ],\n      [\n        \"▁visits\",\n        -11.503198623657227\n      ],\n      [\n        \"▁Mis\",\n        -11.503376960754395\n      ],\n      [\n        \"▁edited\",\n        -11.503456115722656\n      ],\n      [\n        \"▁distributed\",\n        -11.503564834594727\n      ],\n      [\n        \"▁dés\",\n        -11.503580093383789\n      ],\n      [\n        \"▁alter\",\n        -11.5035982131958\n      ],\n      [\n        \"▁cooked\",\n        -11.503697395324707\n      ],\n      [\n        \"embl\",\n        -11.503706932067871\n      ],\n      [\n        \"Univers\",\n        -11.503715515136719\n      ],\n      [\n        \"▁Minuten\",\n        -11.504156112670898\n      ],\n      [\n        \"▁compris\",\n        -11.504179954528809\n      ],\n      [\n        \"rais\",\n        -11.504182815551758\n      ],\n      [\n        \"essentially\",\n        -11.504199028015137\n      ],\n      [\n        \"▁rel\",\n        -11.504340171813965\n      ],\n      [\n        \"▁appel\",\n        -11.504570007324219\n      ],\n      [\n        \"▁trace\",\n        -11.504788398742676\n      ],\n      [\n        \"relating\",\n        -11.504830360412598\n      ],\n      [\n        \"dès\",\n        -11.504937171936035\n      ],\n      [\n        \"aste\",\n        -11.504961013793945\n      ],\n      [\n        \"▁raison\",\n        -11.504963874816895\n      ],\n      [\n        \"▁frequent\",\n        -11.505281448364258\n      ],\n      [\n        \"▁beds\",\n        -11.505316734313965\n      ],\n      [\n        \"▁Miami\",\n        -11.505511283874512\n      ],\n      [\n        \"▁vibrant\",\n        -11.50564193725586\n      ],\n      [\n        \"▁Kam\",\n        -11.505721092224121\n      ],\n      [\n        \"▁klar\",\n        -11.505861282348633\n      ],\n      [\n        \"▁Tan\",\n        -11.50598430633545\n      ],\n      [\n        \"▁vidéo\",\n        -11.506032943725586\n      ],\n      [\n        \"▁Kur\",\n        -11.506115913391113\n      ],\n      [\n        \"▁themes\",\n        -11.506134033203125\n      ],\n      [\n        \"▁struggling\",\n        -11.506440162658691\n      ],\n      [\n        \"▁Magazine\",\n        -11.506444931030273\n      ],\n      [\n        \"maker\",\n        -11.506476402282715\n      ],\n      [\n        \"veni\",\n        -11.506564140319824\n      ],\n      [\n        \"▁Groß\",\n        -11.506732940673828\n      ],\n      [\n        \"▁streaming\",\n        -11.506772994995117\n      ],\n      [\n        \"▁analyze\",\n        -11.506876945495605\n      ],\n      [\n        \"▁titles\",\n        -11.506982803344727\n      ],\n      [\n        \"pier\",\n        -11.507316589355469\n      ],\n      [\n        \"▁participant\",\n        -11.507347106933594\n      ],\n      [\n        \"aims\",\n        -11.507607460021973\n      ],\n      [\n        \"▁convention\",\n        -11.507638931274414\n      ],\n      [\n        \"▁flood\",\n        -11.507780075073242\n      ],\n      [\n        \"▁nights\",\n        -11.507842063903809\n      ],\n      [\n        \"▁titre\",\n        -11.50792407989502\n      ],\n      [\n        \"▁voul\",\n        -11.508010864257812\n      ],\n      [\n        \"weit\",\n        -11.50816822052002\n      ],\n      [\n        \"where\",\n        -11.508213996887207\n      ],\n      [\n        \"▁Seiten\",\n        -11.508286476135254\n      ],\n      [\n        \"▁relaxing\",\n        -11.508628845214844\n      ],\n      [\n        \"▁piano\",\n        -11.50883674621582\n      ],\n      [\n        \"▁Pick\",\n        -11.508842468261719\n      ],\n      [\n        \"▁Sony\",\n        -11.508955001831055\n      ],\n      [\n        \"▁enhanced\",\n        -11.509017944335938\n      ],\n      [\n        \"▁visa\",\n        -11.50915241241455\n      ],\n      [\n        \"CH\",\n        -11.50930118560791\n      ],\n      [\n        \"▁instantly\",\n        -11.50930404663086\n      ],\n      [\n        \"▁Fan\",\n        -11.509721755981445\n      ],\n      [\n        \"▁diabetes\",\n        -11.509988784790039\n      ],\n      [\n        \"▁popul\",\n        -11.50999641418457\n      ],\n      [\n        \"Ang\",\n        -11.510232925415039\n      ],\n      [\n        \"▁Ask\",\n        -11.510295867919922\n      ],\n      [\n        \"cate\",\n        -11.510650634765625\n      ],\n      [\n        \"▁simplu\",\n        -11.510666847229004\n      ],\n      [\n        \"nahme\",\n        -11.510685920715332\n      ],\n      [\n        \"▁dentist\",\n        -11.510842323303223\n      ],\n      [\n        \"ubi\",\n        -11.510920524597168\n      ],\n      [\n        \"article\",\n        -11.511030197143555\n      ],\n      [\n        \"▁graph\",\n        -11.511094093322754\n      ],\n      [\n        \"▁rival\",\n        -11.51121711730957\n      ],\n      [\n        \"jahr\",\n        -11.5113525390625\n      ],\n      [\n        \"▁bloc\",\n        -11.511370658874512\n      ],\n      [\n        \"fern\",\n        -11.511427879333496\n      ],\n      [\n        \"▁dispar\",\n        -11.511516571044922\n      ],\n      [\n        \"▁servers\",\n        -11.511582374572754\n      ],\n      [\n        \"▁patru\",\n        -11.511610984802246\n      ],\n      [\n        \"▁Within\",\n        -11.511634826660156\n      ],\n      [\n        \"▁situated\",\n        -11.511896133422852\n      ],\n      [\n        \"▁HR\",\n        -11.511981964111328\n      ],\n      [\n        \"▁leaf\",\n        -11.511981964111328\n      ],\n      [\n        \"▁curs\",\n        -11.512049674987793\n      ],\n      [\n        \"antes\",\n        -11.512325286865234\n      ],\n      [\n        \"lux\",\n        -11.512406349182129\n      ],\n      [\n        \"▁1993\",\n        -11.512463569641113\n      ],\n      [\n        \"stance\",\n        -11.512650489807129\n      ],\n      [\n        \"▁northern\",\n        -11.512683868408203\n      ],\n      [\n        \"lves\",\n        -11.512718200683594\n      ],\n      [\n        \"▁contractors\",\n        -11.512882232666016\n      ],\n      [\n        \"▁dimensions\",\n        -11.512920379638672\n      ],\n      [\n        \"▁rolling\",\n        -11.513068199157715\n      ],\n      [\n        \"▁automobile\",\n        -11.513211250305176\n      ],\n      [\n        \"▁cru\",\n        -11.51342487335205\n      ],\n      [\n        \"▁displays\",\n        -11.513570785522461\n      ],\n      [\n        \"web\",\n        -11.513812065124512\n      ],\n      [\n        \"had\",\n        -11.513850212097168\n      ],\n      [\n        \"▁Never\",\n        -11.513893127441406\n      ],\n      [\n        \"▁2-\",\n        -11.513932228088379\n      ],\n      [\n        \"vine\",\n        -11.51393985748291\n      ],\n      [\n        \"▁Wahl\",\n        -11.513975143432617\n      ],\n      [\n        \"▁Markt\",\n        -11.514166831970215\n      ],\n      [\n        \"▁Double\",\n        -11.514227867126465\n      ],\n      [\n        \"▁acknowledge\",\n        -11.514229774475098\n      ],\n      [\n        \"stal\",\n        -11.514288902282715\n      ],\n      [\n        \"▁equity\",\n        -11.514620780944824\n      ],\n      [\n        \"▁ministry\",\n        -11.514823913574219\n      ],\n      [\n        \"▁Lor\",\n        -11.514875411987305\n      ],\n      [\n        \"▁sud\",\n        -11.514968872070312\n      ],\n      [\n        \"idée\",\n        -11.515044212341309\n      ],\n      [\n        \"▁measured\",\n        -11.515448570251465\n      ],\n      [\n        \"▁editing\",\n        -11.515609741210938\n      ],\n      [\n        \"▁singur\",\n        -11.515620231628418\n      ],\n      [\n        \"▁coal\",\n        -11.515623092651367\n      ],\n      [\n        \"▁dramatic\",\n        -11.516212463378906\n      ],\n      [\n        \"AG\",\n        -11.516251564025879\n      ],\n      [\n        \"asca\",\n        -11.516280174255371\n      ],\n      [\n        \"▁crash\",\n        -11.516321182250977\n      ],\n      [\n        \"ischer\",\n        -11.516597747802734\n      ],\n      [\n        \"▁Pla\",\n        -11.516871452331543\n      ],\n      [\n        \"▁psycho\",\n        -11.517054557800293\n      ],\n      [\n        \"piece\",\n        -11.517118453979492\n      ],\n      [\n        \"▁finger\",\n        -11.517121315002441\n      ],\n      [\n        \"▁Hollywood\",\n        -11.517123222351074\n      ],\n      [\n        \"▁Cr\",\n        -11.517345428466797\n      ],\n      [\n        \"▁locally\",\n        -11.517622947692871\n      ],\n      [\n        \"▁mouse\",\n        -11.517792701721191\n      ],\n      [\n        \"▁Base\",\n        -11.517867088317871\n      ],\n      [\n        \"uite\",\n        -11.518095016479492\n      ],\n      [\n        \"▁detect\",\n        -11.518099784851074\n      ],\n      [\n        \"cea\",\n        -11.518150329589844\n      ],\n      [\n        \"▁bull\",\n        -11.518194198608398\n      ],\n      [\n        \"▁curve\",\n        -11.518208503723145\n      ],\n      [\n        \"été\",\n        -11.518218994140625\n      ],\n      [\n        \"ddle\",\n        -11.51839542388916\n      ],\n      [\n        \"▁span\",\n        -11.518523216247559\n      ],\n      [\n        \"WS\",\n        -11.518878936767578\n      ],\n      [\n        \"CL\",\n        -11.519017219543457\n      ],\n      [\n        \"▁officially\",\n        -11.519042015075684\n      ],\n      [\n        \"▁corect\",\n        -11.519168853759766\n      ],\n      [\n        \"▁Artikel\",\n        -11.5193510055542\n      ],\n      [\n        \"▁customized\",\n        -11.520099639892578\n      ],\n      [\n        \"▁intellectual\",\n        -11.52018928527832\n      ],\n      [\n        \"▁heures\",\n        -11.520334243774414\n      ],\n      [\n        \"schule\",\n        -11.520444869995117\n      ],\n      [\n        \"▁investing\",\n        -11.520585060119629\n      ],\n      [\n        \"▁parallel\",\n        -11.521227836608887\n      ],\n      [\n        \"▁loi\",\n        -11.521263122558594\n      ],\n      [\n        \"ările\",\n        -11.521566390991211\n      ],\n      [\n        \"р\",\n        -11.521679878234863\n      ],\n      [\n        \"▁bench\",\n        -11.521724700927734\n      ],\n      [\n        \"▁principle\",\n        -11.521756172180176\n      ],\n      [\n        \"▁Galaxy\",\n        -11.521829605102539\n      ],\n      [\n        \"ța\",\n        -11.522237777709961\n      ],\n      [\n        \"▁(4\",\n        -11.522418975830078\n      ],\n      [\n        \"▁bedrooms\",\n        -11.522578239440918\n      ],\n      [\n        \"née\",\n        -11.52273941040039\n      ],\n      [\n        \"▁surely\",\n        -11.52275276184082\n      ],\n      [\n        \"very\",\n        -11.522927284240723\n      ],\n      [\n        \"stelle\",\n        -11.523200988769531\n      ],\n      [\n        \"activ\",\n        -11.523216247558594\n      ],\n      [\n        \"cite\",\n        -11.523551940917969\n      ],\n      [\n        \"▁Original\",\n        -11.523553848266602\n      ],\n      [\n        \"▁palm\",\n        -11.523665428161621\n      ],\n      [\n        \"▁losses\",\n        -11.523934364318848\n      ],\n      [\n        \"▁newspaper\",\n        -11.524153709411621\n      ],\n      [\n        \"ciu\",\n        -11.52436351776123\n      ],\n      [\n        \"▁Hold\",\n        -11.524392127990723\n      ],\n      [\n        \"BO\",\n        -11.524422645568848\n      ],\n      [\n        \"▁CON\",\n        -11.524598121643066\n      ],\n      [\n        \"▁modified\",\n        -11.524624824523926\n      ],\n      [\n        \"▁stake\",\n        -11.524735450744629\n      ],\n      [\n        \"▁Ton\",\n        -11.524798393249512\n      ],\n      [\n        \"▁luna\",\n        -11.524968147277832\n      ],\n      [\n        \"▁Mind\",\n        -11.525094985961914\n      ],\n      [\n        \"lap\",\n        -11.525150299072266\n      ],\n      [\n        \"▁opinions\",\n        -11.525247573852539\n      ],\n      [\n        \"▁Jordan\",\n        -11.525351524353027\n      ],\n      [\n        \"div\",\n        -11.52537727355957\n      ],\n      [\n        \"indi\",\n        -11.525418281555176\n      ],\n      [\n        \"▁Story\",\n        -11.525476455688477\n      ],\n      [\n        \"▁affiliate\",\n        -11.52585506439209\n      ],\n      [\n        \"▁matière\",\n        -11.525918960571289\n      ],\n      [\n        \"▁fifth\",\n        -11.526399612426758\n      ],\n      [\n        \"▁sheets\",\n        -11.52645492553711\n      ],\n      [\n        \"▁puțin\",\n        -11.526909828186035\n      ],\n      [\n        \"ush\",\n        -11.526947021484375\n      ],\n      [\n        \"geführt\",\n        -11.526993751525879\n      ],\n      [\n        \"▁Falls\",\n        -11.527168273925781\n      ],\n      [\n        \"legi\",\n        -11.527295112609863\n      ],\n      [\n        \"▁auction\",\n        -11.527326583862305\n      ],\n      [\n        \"▁cooperation\",\n        -11.52735424041748\n      ],\n      [\n        \"▁Fee\",\n        -11.527474403381348\n      ],\n      [\n        \"▁Daily\",\n        -11.52774715423584\n      ],\n      [\n        \"pies\",\n        -11.527853965759277\n      ],\n      [\n        \"▁basketball\",\n        -11.527976036071777\n      ],\n      [\n        \"removing\",\n        -11.528056144714355\n      ],\n      [\n        \"Besides\",\n        -11.528294563293457\n      ],\n      [\n        \"▁Body\",\n        -11.528355598449707\n      ],\n      [\n        \"▁AD\",\n        -11.528369903564453\n      ],\n      [\n        \"RU\",\n        -11.528435707092285\n      ],\n      [\n        \"ţia\",\n        -11.52894401550293\n      ],\n      [\n        \"▁Extra\",\n        -11.528986930847168\n      ],\n      [\n        \"▁Practice\",\n        -11.52900218963623\n      ],\n      [\n        \"▁Jeff\",\n        -11.529017448425293\n      ],\n      [\n        \"▁început\",\n        -11.529253005981445\n      ],\n      [\n        \"ching\",\n        -11.529269218444824\n      ],\n      [\n        \"▁Gift\",\n        -11.529281616210938\n      ],\n      [\n        \"kk\",\n        -11.529295921325684\n      ],\n      [\n        \"\\\")\",\n        -11.529349327087402\n      ],\n      [\n        \"▁Austin\",\n        -11.529651641845703\n      ],\n      [\n        \"thro\",\n        -11.529766082763672\n      ],\n      [\n        \"▁camping\",\n        -11.529810905456543\n      ],\n      [\n        \"▁theatre\",\n        -11.529850959777832\n      ],\n      [\n        \"école\",\n        -11.529916763305664\n      ],\n      [\n        \"vient\",\n        -11.530159950256348\n      ],\n      [\n        \"▁faces\",\n        -11.530226707458496\n      ],\n      [\n        \"▁constructed\",\n        -11.530437469482422\n      ],\n      [\n        \"▁overnight\",\n        -11.530472755432129\n      ],\n      [\n        \"▁locale\",\n        -11.530574798583984\n      ],\n      [\n        \"▁roots\",\n        -11.530611038208008\n      ],\n      [\n        \"▁bu\",\n        -11.530662536621094\n      ],\n      [\n        \"4,\",\n        -11.530683517456055\n      ],\n      [\n        \"▁Enterprise\",\n        -11.530865669250488\n      ],\n      [\n        \"screen\",\n        -11.530935287475586\n      ],\n      [\n        \"▁Chef\",\n        -11.53096866607666\n      ],\n      [\n        \"▁Along\",\n        -11.531298637390137\n      ],\n      [\n        \"▁MD\",\n        -11.531431198120117\n      ],\n      [\n        \"▁Supreme\",\n        -11.531597137451172\n      ],\n      [\n        \"En\",\n        -11.531655311584473\n      ],\n      [\n        \"▁verwendet\",\n        -11.532015800476074\n      ],\n      [\n        \"▁processed\",\n        -11.532425880432129\n      ],\n      [\n        \"▁vendors\",\n        -11.532549858093262\n      ],\n      [\n        \"▁FA\",\n        -11.532651901245117\n      ],\n      [\n        \"▁44\",\n        -11.532716751098633\n      ],\n      [\n        \"▁beautifully\",\n        -11.532933235168457\n      ],\n      [\n        \"▁eficient\",\n        -11.533092498779297\n      ],\n      [\n        \"▁Wil\",\n        -11.533117294311523\n      ],\n      [\n        \"▁Member\",\n        -11.533121109008789\n      ],\n      [\n        \"▁damages\",\n        -11.5332670211792\n      ],\n      [\n        \"▁mutual\",\n        -11.533288955688477\n      ],\n      [\n        \"SN\",\n        -11.533506393432617\n      ],\n      [\n        \"▁Dave\",\n        -11.533665657043457\n      ],\n      [\n        \"??\",\n        -11.533998489379883\n      ],\n      [\n        \"stat\",\n        -11.534090995788574\n      ],\n      [\n        \"▁tourist\",\n        -11.534374237060547\n      ],\n      [\n        \"fie\",\n        -11.534425735473633\n      ],\n      [\n        \"şte\",\n        -11.534754753112793\n      ],\n      [\n        \"▁donne\",\n        -11.534764289855957\n      ],\n      [\n        \"▁shadow\",\n        -11.53493881225586\n      ],\n      [\n        \"▁dough\",\n        -11.534993171691895\n      ],\n      [\n        \"▁Gro\",\n        -11.535002708435059\n      ],\n      [\n        \"▁Mah\",\n        -11.535066604614258\n      ],\n      [\n        \"RF\",\n        -11.535126686096191\n      ],\n      [\n        \"▁mechanism\",\n        -11.535163879394531\n      ],\n      [\n        \"▁2011,\",\n        -11.535179138183594\n      ],\n      [\n        \"▁Alter\",\n        -11.53530502319336\n      ],\n      [\n        \"▁opposed\",\n        -11.53538990020752\n      ],\n      [\n        \"▁Fri\",\n        -11.535501480102539\n      ],\n      [\n        \"▁remarkable\",\n        -11.535572052001953\n      ],\n      [\n        \"oral\",\n        -11.535635948181152\n      ],\n      [\n        \"▁verschiedene\",\n        -11.535653114318848\n      ],\n      [\n        \"▁difficulty\",\n        -11.535691261291504\n      ],\n      [\n        \"▁Application\",\n        -11.535840034484863\n      ],\n      [\n        \"▁Hay\",\n        -11.535888671875\n      ],\n      [\n        \"▁continua\",\n        -11.535935401916504\n      ],\n      [\n        \"EP\",\n        -11.53609848022461\n      ],\n      [\n        \"▁Pr\",\n        -11.53617000579834\n      ],\n      [\n        \"▁Lady\",\n        -11.53631591796875\n      ],\n      [\n        \"▁interval\",\n        -11.536457061767578\n      ],\n      [\n        \"▁Mil\",\n        -11.536504745483398\n      ],\n      [\n        \"▁2010.\",\n        -11.537042617797852\n      ],\n      [\n        \"VE\",\n        -11.537074089050293\n      ],\n      [\n        \"integr\",\n        -11.537360191345215\n      ],\n      [\n        \"▁création\",\n        -11.537415504455566\n      ],\n      [\n        \"weed\",\n        -11.537456512451172\n      ],\n      [\n        \"EG\",\n        -11.53760051727295\n      ],\n      [\n        \"▁6,\",\n        -11.537784576416016\n      ],\n      [\n        \"▁god\",\n        -11.537866592407227\n      ],\n      [\n        \"▁accomplish\",\n        -11.537947654724121\n      ],\n      [\n        \"▁thoroughly\",\n        -11.538019180297852\n      ],\n      [\n        \"2019\",\n        -11.538228988647461\n      ],\n      [\n        \"izer\",\n        -11.538246154785156\n      ],\n      [\n        \"▁Wal\",\n        -11.538300514221191\n      ],\n      [\n        \"ifying\",\n        -11.538701057434082\n      ],\n      [\n        \"▁Wohn\",\n        -11.539227485656738\n      ],\n      [\n        \"▁Holz\",\n        -11.539474487304688\n      ],\n      [\n        \"▁Advanced\",\n        -11.539528846740723\n      ],\n      [\n        \"▁honey\",\n        -11.539626121520996\n      ],\n      [\n        \"proof\",\n        -11.539634704589844\n      ],\n      [\n        \"▁saison\",\n        -11.540029525756836\n      ],\n      [\n        \"ându\",\n        -11.540035247802734\n      ],\n      [\n        \"▁Kevin\",\n        -11.540116310119629\n      ],\n      [\n        \"▁shelter\",\n        -11.540199279785156\n      ],\n      [\n        \"▁discut\",\n        -11.540257453918457\n      ],\n      [\n        \"▁hike\",\n        -11.540257453918457\n      ],\n      [\n        \"ités\",\n        -11.540461540222168\n      ],\n      [\n        \"▁boutique\",\n        -11.540672302246094\n      ],\n      [\n        \"▁Email\",\n        -11.54067611694336\n      ],\n      [\n        \"▁cosmetic\",\n        -11.540830612182617\n      ],\n      [\n        \"dian\",\n        -11.540916442871094\n      ],\n      [\n        \"▁hohe\",\n        -11.540940284729004\n      ],\n      [\n        \"▁absence\",\n        -11.541071891784668\n      ],\n      [\n        \"axi\",\n        -11.541136741638184\n      ],\n      [\n        \"nah\",\n        -11.541178703308105\n      ],\n      [\n        \"▁Frauen\",\n        -11.541236877441406\n      ],\n      [\n        \"▁actively\",\n        -11.541278839111328\n      ],\n      [\n        \"bind\",\n        -11.541468620300293\n      ],\n      [\n        \"▁everybody\",\n        -11.541740417480469\n      ],\n      [\n        \"▁controller\",\n        -11.541802406311035\n      ],\n      [\n        \"▁1.5\",\n        -11.5418062210083\n      ],\n      [\n        \"erau\",\n        -11.541842460632324\n      ],\n      [\n        \"gehen\",\n        -11.541988372802734\n      ],\n      [\n        \"▁scenario\",\n        -11.542038917541504\n      ],\n      [\n        \"▁odd\",\n        -11.542083740234375\n      ],\n      [\n        \"▁Ultra\",\n        -11.542089462280273\n      ],\n      [\n        \"▁finishing\",\n        -11.542366981506348\n      ],\n      [\n        \"▁cuts\",\n        -11.542383193969727\n      ],\n      [\n        \"▁financing\",\n        -11.542515754699707\n      ],\n      [\n        \"▁Chance\",\n        -11.542579650878906\n      ],\n      [\n        \"surrounded\",\n        -11.542818069458008\n      ],\n      [\n        \"▁joc\",\n        -11.542903900146484\n      ],\n      [\n        \"▁shelf\",\n        -11.543004035949707\n      ],\n      [\n        \"tief\",\n        -11.54308032989502\n      ],\n      [\n        \"▁Sir\",\n        -11.543146133422852\n      ],\n      [\n        \"▁Agent\",\n        -11.543197631835938\n      ],\n      [\n        \"▁scratch\",\n        -11.543560981750488\n      ],\n      [\n        \"2,000\",\n        -11.54360294342041\n      ],\n      [\n        \"nutri\",\n        -11.54365348815918\n      ],\n      [\n        \"nier\",\n        -11.544063568115234\n      ],\n      [\n        \"▁Dur\",\n        -11.544175148010254\n      ],\n      [\n        \"▁grid\",\n        -11.544268608093262\n      ],\n      [\n        \"road\",\n        -11.544413566589355\n      ],\n      [\n        \"▁pets\",\n        -11.544429779052734\n      ],\n      [\n        \"stud\",\n        -11.54448127746582\n      ],\n      [\n        \"OM\",\n        -11.544569969177246\n      ],\n      [\n        \"Die\",\n        -11.544877052307129\n      ],\n      [\n        \"▁800\",\n        -11.54496955871582\n      ],\n      [\n        \"▁arrangement\",\n        -11.545088768005371\n      ],\n      [\n        \"▁Sri\",\n        -11.545185089111328\n      ],\n      [\n        \"▁Patrick\",\n        -11.545187950134277\n      ],\n      [\n        \"ava\",\n        -11.545212745666504\n      ],\n      [\n        \"▁pension\",\n        -11.54523754119873\n      ],\n      [\n        \"dung\",\n        -11.545353889465332\n      ],\n      [\n        \"▁Chapter\",\n        -11.545475006103516\n      ],\n      [\n        \"▁Property\",\n        -11.545475006103516\n      ],\n      [\n        \"▁structural\",\n        -11.545571327209473\n      ],\n      [\n        \"▁overview\",\n        -11.545731544494629\n      ],\n      [\n        \"2015\",\n        -11.545917510986328\n      ],\n      [\n        \"▁lawn\",\n        -11.545924186706543\n      ],\n      [\n        \"▁Vin\",\n        -11.546219825744629\n      ],\n      [\n        \"lik\",\n        -11.546402931213379\n      ],\n      [\n        \"dus\",\n        -11.546418190002441\n      ],\n      [\n        \"Several\",\n        -11.54654598236084\n      ],\n      [\n        \"▁Bou\",\n        -11.546670913696289\n      ],\n      [\n        \"▁copper\",\n        -11.546703338623047\n      ],\n      [\n        \"▁duration\",\n        -11.546867370605469\n      ],\n      [\n        \"inate\",\n        -11.546982765197754\n      ],\n      [\n        \"▁podcast\",\n        -11.547204971313477\n      ],\n      [\n        \"▁Self\",\n        -11.547208786010742\n      ],\n      [\n        \"▁Construction\",\n        -11.547491073608398\n      ],\n      [\n        \"achat\",\n        -11.54768180847168\n      ],\n      [\n        \"???\",\n        -11.547683715820312\n      ],\n      [\n        \"▁Electric\",\n        -11.547974586486816\n      ],\n      [\n        \"▁Mrs\",\n        -11.54799747467041\n      ],\n      [\n        \"▁CT\",\n        -11.548019409179688\n      ],\n      [\n        \"▁proceed\",\n        -11.548324584960938\n      ],\n      [\n        \"▁Course\",\n        -11.548333168029785\n      ],\n      [\n        \"▁Frei\",\n        -11.548699378967285\n      ],\n      [\n        \"▁heavily\",\n        -11.548868179321289\n      ],\n      [\n        \"rique\",\n        -11.548872947692871\n      ],\n      [\n        \"version\",\n        -11.549016952514648\n      ],\n      [\n        \"▁representatives\",\n        -11.549118041992188\n      ],\n      [\n        \"▁tourism\",\n        -11.549182891845703\n      ],\n      [\n        \"▁shirt\",\n        -11.5494966506958\n      ],\n      [\n        \"▁rough\",\n        -11.549507141113281\n      ],\n      [\n        \"▁weniger\",\n        -11.549735069274902\n      ],\n      [\n        \"▁keyboard\",\n        -11.550058364868164\n      ],\n      [\n        \"▁heritage\",\n        -11.550149917602539\n      ],\n      [\n        \"kat\",\n        -11.550535202026367\n      ],\n      [\n        \"assez\",\n        -11.550567626953125\n      ],\n      [\n        \"▁cabinets\",\n        -11.550591468811035\n      ],\n      [\n        \"▁Komm\",\n        -11.550762176513672\n      ],\n      [\n        \"▁impressed\",\n        -11.55078411102295\n      ],\n      [\n        \"▁Oregon\",\n        -11.550788879394531\n      ],\n      [\n        \"▁Davis\",\n        -11.55081558227539\n      ],\n      [\n        \"specialized\",\n        -11.55097770690918\n      ],\n      [\n        \"▁gross\",\n        -11.550999641418457\n      ],\n      [\n        \"Located\",\n        -11.551044464111328\n      ],\n      [\n        \"ttle\",\n        -11.551044464111328\n      ],\n      [\n        \"▁2010,\",\n        -11.551224708557129\n      ],\n      [\n        \"chan\",\n        -11.551253318786621\n      ],\n      [\n        \"mine\",\n        -11.551305770874023\n      ],\n      [\n        \"▁aduce\",\n        -11.551637649536133\n      ],\n      [\n        \"▁subsequent\",\n        -11.551729202270508\n      ],\n      [\n        \"▁demo\",\n        -11.551851272583008\n      ],\n      [\n        \"aba\",\n        -11.552209854125977\n      ],\n      [\n        \"▁shock\",\n        -11.552389144897461\n      ],\n      [\n        \"▁theater\",\n        -11.552854537963867\n      ],\n      [\n        \"▁engineers\",\n        -11.55294418334961\n      ],\n      [\n        \"▁feu\",\n        -11.553037643432617\n      ],\n      [\n        \"▁Rot\",\n        -11.553058624267578\n      ],\n      [\n        \"▁addressed\",\n        -11.553155899047852\n      ],\n      [\n        \"▁Letter\",\n        -11.553431510925293\n      ],\n      [\n        \"gré\",\n        -11.553448677062988\n      ],\n      [\n        \"▁quantity\",\n        -11.553449630737305\n      ],\n      [\n        \"▁Seit\",\n        -11.553640365600586\n      ],\n      [\n        \"▁bacteria\",\n        -11.553681373596191\n      ],\n      [\n        \"kg\",\n        -11.55408000946045\n      ],\n      [\n        \"▁conservation\",\n        -11.554191589355469\n      ],\n      [\n        \"▁entreprises\",\n        -11.55420207977295\n      ],\n      [\n        \"▁pleasant\",\n        -11.554207801818848\n      ],\n      [\n        \"armed\",\n        -11.554228782653809\n      ],\n      [\n        \"dorf\",\n        -11.554286003112793\n      ],\n      [\n        \"fact\",\n        -11.554320335388184\n      ],\n      [\n        \"▁Much\",\n        -11.554388046264648\n      ],\n      [\n        \"▁laugh\",\n        -11.55482006072998\n      ],\n      [\n        \"▁blade\",\n        -11.554835319519043\n      ],\n      [\n        \"amine\",\n        -11.554838180541992\n      ],\n      [\n        \"▁insert\",\n        -11.55493450164795\n      ],\n      [\n        \"▁toys\",\n        -11.555326461791992\n      ],\n      [\n        \"▁в\",\n        -11.555726051330566\n      ],\n      [\n        \"cell\",\n        -11.555747985839844\n      ],\n      [\n        \"▁strengthen\",\n        -11.555864334106445\n      ],\n      [\n        \"GR\",\n        -11.555882453918457\n      ],\n      [\n        \"▁autor\",\n        -11.556114196777344\n      ],\n      [\n        \"▁LI\",\n        -11.556147575378418\n      ],\n      [\n        \"▁oamenii\",\n        -11.556184768676758\n      ],\n      [\n        \"▁Modell\",\n        -11.556222915649414\n      ],\n      [\n        \"▁sophisticated\",\n        -11.556225776672363\n      ],\n      [\n        \"▁Write\",\n        -11.556283950805664\n      ],\n      [\n        \"eți\",\n        -11.556295394897461\n      ],\n      [\n        \"say\",\n        -11.556641578674316\n      ],\n      [\n        \"▁nutzen\",\n        -11.556783676147461\n      ],\n      [\n        \"▁amenities\",\n        -11.556979179382324\n      ],\n      [\n        \"chel\",\n        -11.557068824768066\n      ],\n      [\n        \"Unlike\",\n        -11.55720043182373\n      ],\n      [\n        \"▁Bilder\",\n        -11.557208061218262\n      ],\n      [\n        \"fertig\",\n        -11.55722713470459\n      ],\n      [\n        \"PER\",\n        -11.557244300842285\n      ],\n      [\n        \"▁apparently\",\n        -11.557282447814941\n      ],\n      [\n        \"▁pointed\",\n        -11.557332992553711\n      ],\n      [\n        \"lop\",\n        -11.557435989379883\n      ],\n      [\n        \"▁commande\",\n        -11.557848930358887\n      ],\n      [\n        \"▁NEW\",\n        -11.557923316955566\n      ],\n      [\n        \"▁primi\",\n        -11.55798625946045\n      ],\n      [\n        \"▁aluminum\",\n        -11.558046340942383\n      ],\n      [\n        \"ificare\",\n        -11.558063507080078\n      ],\n      [\n        \"open\",\n        -11.55815315246582\n      ],\n      [\n        \"▁establishment\",\n        -11.558305740356445\n      ],\n      [\n        \"▁blanc\",\n        -11.558349609375\n      ],\n      [\n        \"▁1960\",\n        -11.558454513549805\n      ],\n      [\n        \"▁parameters\",\n        -11.55856990814209\n      ],\n      [\n        \"schluss\",\n        -11.558685302734375\n      ],\n      [\n        \"▁jet\",\n        -11.55879020690918\n      ],\n      [\n        \"gam\",\n        -11.55902099609375\n      ],\n      [\n        \"▁oral\",\n        -11.559290885925293\n      ],\n      [\n        \"▁tons\",\n        -11.559348106384277\n      ],\n      [\n        \"▁AL\",\n        -11.55935001373291\n      ],\n      [\n        \"▁intention\",\n        -11.55947494506836\n      ],\n      [\n        \"ives\",\n        -11.55974292755127\n      ],\n      [\n        \"▁BMW\",\n        -11.559837341308594\n      ],\n      [\n        \"gun\",\n        -11.559967041015625\n      ],\n      [\n        \"leben\",\n        -11.560046195983887\n      ],\n      [\n        \"▁Fresh\",\n        -11.56010913848877\n      ],\n      [\n        \"▁tuturor\",\n        -11.560193061828613\n      ],\n      [\n        \"▁marine\",\n        -11.560208320617676\n      ],\n      [\n        \"mile\",\n        -11.560260772705078\n      ],\n      [\n        \"▁alta\",\n        -11.560271263122559\n      ],\n      [\n        \"nnen\",\n        -11.56050968170166\n      ],\n      [\n        \"▁courts\",\n        -11.560530662536621\n      ],\n      [\n        \"▁Hello\",\n        -11.560791015625\n      ],\n      [\n        \"BL\",\n        -11.560895919799805\n      ],\n      [\n        \"▁reply\",\n        -11.560962677001953\n      ],\n      [\n        \"environnement\",\n        -11.560975074768066\n      ],\n      [\n        \"American\",\n        -11.560995101928711\n      ],\n      [\n        \"▁Tell\",\n        -11.561040878295898\n      ],\n      [\n        \"▁chic\",\n        -11.56148624420166\n      ],\n      [\n        \"bir\",\n        -11.561542510986328\n      ],\n      [\n        \"▁singing\",\n        -11.561788558959961\n      ],\n      [\n        \"▁earnings\",\n        -11.561819076538086\n      ],\n      [\n        \"▁ensemble\",\n        -11.562082290649414\n      ],\n      [\n        \"▁($\",\n        -11.562169075012207\n      ],\n      [\n        \"▁Tout\",\n        -11.562192916870117\n      ],\n      [\n        \"▁Abs\",\n        -11.562264442443848\n      ],\n      [\n        \"▁describes\",\n        -11.562322616577148\n      ],\n      [\n        \"▁navigation\",\n        -11.5625\n      ],\n      [\n        \"▁destul\",\n        -11.562532424926758\n      ],\n      [\n        \"legate\",\n        -11.562586784362793\n      ],\n      [\n        \"tral\",\n        -11.562599182128906\n      ],\n      [\n        \"aţie\",\n        -11.562753677368164\n      ],\n      [\n        \"▁supplied\",\n        -11.562775611877441\n      ],\n      [\n        \"▁paar\",\n        -11.562911987304688\n      ],\n      [\n        \"ionat\",\n        -11.563241958618164\n      ],\n      [\n        \"9.\",\n        -11.563263893127441\n      ],\n      [\n        \"▁41\",\n        -11.563348770141602\n      ],\n      [\n        \"▁Track\",\n        -11.563451766967773\n      ],\n      [\n        \"▁happiness\",\n        -11.563636779785156\n      ],\n      [\n        \"▁Personen\",\n        -11.563680648803711\n      ],\n      [\n        \"▁sac\",\n        -11.56373119354248\n      ],\n      [\n        \"▁shapes\",\n        -11.563774108886719\n      ],\n      [\n        \"eld\",\n        -11.56393051147461\n      ],\n      [\n        \"bett\",\n        -11.563963890075684\n      ],\n      [\n        \"tile\",\n        -11.56400203704834\n      ],\n      [\n        \"▁divided\",\n        -11.564035415649414\n      ],\n      [\n        \"▁13.\",\n        -11.56403923034668\n      ],\n      [\n        \"market\",\n        -11.564109802246094\n      ],\n      [\n        \"crafted\",\n        -11.564115524291992\n      ],\n      [\n        \"▁periods\",\n        -11.564120292663574\n      ],\n      [\n        \"uş\",\n        -11.564568519592285\n      ],\n      [\n        \"▁trainer\",\n        -11.56460952758789\n      ],\n      [\n        \"▁Licht\",\n        -11.564871788024902\n      ],\n      [\n        \"▁advisor\",\n        -11.564948081970215\n      ],\n      [\n        \"▁Herr\",\n        -11.564980506896973\n      ],\n      [\n        \"▁Halloween\",\n        -11.565147399902344\n      ],\n      [\n        \"alter\",\n        -11.565154075622559\n      ],\n      [\n        \"▁radical\",\n        -11.565155029296875\n      ],\n      [\n        \"▁nose\",\n        -11.56527042388916\n      ],\n      [\n        \"▁Sat\",\n        -11.565323829650879\n      ],\n      [\n        \"▁Mom\",\n        -11.565372467041016\n      ],\n      [\n        \"moni\",\n        -11.565377235412598\n      ],\n      [\n        \"▁semn\",\n        -11.565397262573242\n      ],\n      [\n        \"vé\",\n        -11.565672874450684\n      ],\n      [\n        \"identifie\",\n        -11.56570053100586\n      ],\n      [\n        \"▁hatten\",\n        -11.565957069396973\n      ],\n      [\n        \"completing\",\n        -11.565959930419922\n      ],\n      [\n        \"▁gust\",\n        -11.565963745117188\n      ],\n      [\n        \"▁creat\",\n        -11.56601333618164\n      ],\n      [\n        \"ché\",\n        -11.566075325012207\n      ],\n      [\n        \"pay\",\n        -11.566216468811035\n      ],\n      [\n        \"▁Money\",\n        -11.566229820251465\n      ],\n      [\n        \"IG\",\n        -11.566243171691895\n      ],\n      [\n        \"▁Cash\",\n        -11.566327095031738\n      ],\n      [\n        \"altă\",\n        -11.566420555114746\n      ],\n      [\n        \"▁bekommen\",\n        -11.566620826721191\n      ],\n      [\n        \"▁43\",\n        -11.56662654876709\n      ],\n      [\n        \"▁supplement\",\n        -11.566637992858887\n      ],\n      [\n        \"▁Early\",\n        -11.566754341125488\n      ],\n      [\n        \"▁mattress\",\n        -11.56692123413086\n      ],\n      [\n        \"▁worn\",\n        -11.567182540893555\n      ],\n      [\n        \"rov\",\n        -11.567197799682617\n      ],\n      [\n        \"▁pray\",\n        -11.56733226776123\n      ],\n      [\n        \"▁beans\",\n        -11.567673683166504\n      ],\n      [\n        \"▁passé\",\n        -11.567782402038574\n      ],\n      [\n        \"▁facilit\",\n        -11.56782054901123\n      ],\n      [\n        \"▁meters\",\n        -11.56784439086914\n      ],\n      [\n        \"cke\",\n        -11.568163871765137\n      ],\n      [\n        \"▁Villa\",\n        -11.568199157714844\n      ],\n      [\n        \"▁Diego\",\n        -11.568217277526855\n      ],\n      [\n        \"▁chips\",\n        -11.568244934082031\n      ],\n      [\n        \"▁mes\",\n        -11.568349838256836\n      ],\n      [\n        \"▁Seattle\",\n        -11.568421363830566\n      ],\n      [\n        \"BU\",\n        -11.568621635437012\n      ],\n      [\n        \"▁nevoi\",\n        -11.568714141845703\n      ],\n      [\n        \"▁lets\",\n        -11.568737030029297\n      ],\n      [\n        \"▁hopefully\",\n        -11.56894302368164\n      ],\n      [\n        \"▁AG\",\n        -11.568954467773438\n      ],\n      [\n        \"liable\",\n        -11.568999290466309\n      ],\n      [\n        \"pound\",\n        -11.569067001342773\n      ],\n      [\n        \"près\",\n        -11.569085121154785\n      ],\n      [\n        \"arul\",\n        -11.56920337677002\n      ],\n      [\n        \"isiert\",\n        -11.569281578063965\n      ],\n      [\n        \"▁Expert\",\n        -11.569297790527344\n      ],\n      [\n        \"▁particulier\",\n        -11.569367408752441\n      ],\n      [\n        \"stoff\",\n        -11.569952964782715\n      ],\n      [\n        \"▁interpretation\",\n        -11.56999397277832\n      ],\n      [\n        \"După\",\n        -11.57007884979248\n      ],\n      [\n        \"sait\",\n        -11.57011604309082\n      ],\n      [\n        \"▁nouvelles\",\n        -11.570173263549805\n      ],\n      [\n        \"▁Ok\",\n        -11.570175170898438\n      ],\n      [\n        \"tap\",\n        -11.570301055908203\n      ],\n      [\n        \"▁targets\",\n        -11.570327758789062\n      ],\n      [\n        \"rung\",\n        -11.57052230834961\n      ],\n      [\n        \"▁stare\",\n        -11.570576667785645\n      ],\n      [\n        \"▁efficiently\",\n        -11.570908546447754\n      ],\n      [\n        \"EV\",\n        -11.571003913879395\n      ],\n      [\n        \"évit\",\n        -11.571310997009277\n      ],\n      [\n        \"▁Moldova\",\n        -11.571542739868164\n      ],\n      [\n        \"▁Face\",\n        -11.571663856506348\n      ],\n      [\n        \"▁flo\",\n        -11.57168960571289\n      ],\n      [\n        \"▁acestora\",\n        -11.5717134475708\n      ],\n      [\n        \"▁Victor\",\n        -11.57183837890625\n      ],\n      [\n        \"▁breed\",\n        -11.57198429107666\n      ],\n      [\n        \"morph\",\n        -11.572230339050293\n      ],\n      [\n        \"sley\",\n        -11.572274208068848\n      ],\n      [\n        \"mot\",\n        -11.57234001159668\n      ],\n      [\n        \"▁URL\",\n        -11.572395324707031\n      ],\n      [\n        \"ellen\",\n        -11.572502136230469\n      ],\n      [\n        \"▁resist\",\n        -11.572781562805176\n      ],\n      [\n        \"zon\",\n        -11.57282829284668\n      ],\n      [\n        \"ndel\",\n        -11.572967529296875\n      ],\n      [\n        \"will\",\n        -11.572989463806152\n      ],\n      [\n        \"▁alege\",\n        -11.573076248168945\n      ],\n      [\n        \"▁Easter\",\n        -11.573114395141602\n      ],\n      [\n        \"▁Bat\",\n        -11.573190689086914\n      ],\n      [\n        \"▁Höhe\",\n        -11.573223114013672\n      ],\n      [\n        \"▁fascinating\",\n        -11.573387145996094\n      ],\n      [\n        \"▁Know\",\n        -11.5735445022583\n      ],\n      [\n        \"illon\",\n        -11.573602676391602\n      ],\n      [\n        \"flex\",\n        -11.57363224029541\n      ],\n      [\n        \"who\",\n        -11.573701858520508\n      ],\n      [\n        \"▁Always\",\n        -11.573729515075684\n      ],\n      [\n        \"▁Bush\",\n        -11.573777198791504\n      ],\n      [\n        \"ICE\",\n        -11.574009895324707\n      ],\n      [\n        \"verein\",\n        -11.57448673248291\n      ],\n      [\n        \"▁später\",\n        -11.57448959350586\n      ],\n      [\n        \"▁cherch\",\n        -11.574575424194336\n      ],\n      [\n        \"makers\",\n        -11.574753761291504\n      ],\n      [\n        \"versus\",\n        -11.574790954589844\n      ],\n      [\n        \"▁Clear\",\n        -11.574846267700195\n      ],\n      [\n        \"▁Pennsylvania\",\n        -11.574912071228027\n      ],\n      [\n        \"Dieser\",\n        -11.575041770935059\n      ],\n      [\n        \"▁picking\",\n        -11.575072288513184\n      ],\n      [\n        \"▁restoration\",\n        -11.57513427734375\n      ],\n      [\n        \"▁interviews\",\n        -11.575201988220215\n      ],\n      [\n        \"pressed\",\n        -11.575210571289062\n      ],\n      [\n        \"nnerhalb\",\n        -11.575674057006836\n      ],\n      [\n        \"▁connecting\",\n        -11.575834274291992\n      ],\n      [\n        \"jou\",\n        -11.575943946838379\n      ],\n      [\n        \"▁react\",\n        -11.576189041137695\n      ],\n      [\n        \"▁Merci\",\n        -11.576223373413086\n      ],\n      [\n        \"▁Phone\",\n        -11.576356887817383\n      ],\n      [\n        \"▁1)\",\n        -11.57652473449707\n      ],\n      [\n        \"▁victims\",\n        -11.576618194580078\n      ],\n      [\n        \"▁Spo\",\n        -11.576685905456543\n      ],\n      [\n        \"atului\",\n        -11.576735496520996\n      ],\n      [\n        \"▁Harry\",\n        -11.576837539672852\n      ],\n      [\n        \"▁Sala\",\n        -11.576875686645508\n      ],\n      [\n        \"Pol\",\n        -11.577075958251953\n      ],\n      [\n        \"▁Clo\",\n        -11.577167510986328\n      ],\n      [\n        \"▁Erfolg\",\n        -11.577211380004883\n      ],\n      [\n        \"autour\",\n        -11.577308654785156\n      ],\n      [\n        \"▁Template\",\n        -11.577314376831055\n      ],\n      [\n        \"▁invention\",\n        -11.57754898071289\n      ],\n      [\n        \"▁schwer\",\n        -11.57761287689209\n      ],\n      [\n        \"vac\",\n        -11.577625274658203\n      ],\n      [\n        \"▁Trail\",\n        -11.577627182006836\n      ],\n      [\n        \"▁Vietnam\",\n        -11.577638626098633\n      ],\n      [\n        \"▁Size\",\n        -11.577689170837402\n      ],\n      [\n        \"▁Bern\",\n        -11.577783584594727\n      ],\n      [\n        \"▁emp\",\n        -11.577845573425293\n      ],\n      [\n        \"▁shake\",\n        -11.57787799835205\n      ],\n      [\n        \"▁Ave\",\n        -11.57794189453125\n      ],\n      [\n        \"▁productive\",\n        -11.578009605407715\n      ],\n      [\n        \"▁apple\",\n        -11.578015327453613\n      ],\n      [\n        \"▁portal\",\n        -11.578052520751953\n      ],\n      [\n        \"▁ceramic\",\n        -11.578082084655762\n      ],\n      [\n        \"▁pad\",\n        -11.578110694885254\n      ],\n      [\n        \"▁Syn\",\n        -11.578316688537598\n      ],\n      [\n        \"Ab\",\n        -11.57845401763916\n      ],\n      [\n        \"▁syn\",\n        -11.578761100769043\n      ],\n      [\n        \"find\",\n        -11.578888893127441\n      ],\n      [\n        \"▁settle\",\n        -11.578909873962402\n      ],\n      [\n        \"▁général\",\n        -11.578965187072754\n      ],\n      [\n        \"▁okay\",\n        -11.579032897949219\n      ],\n      [\n        \"▁receipt\",\n        -11.57906436920166\n      ],\n      [\n        \"orii\",\n        -11.579117774963379\n      ],\n      [\n        \"▁Mission\",\n        -11.579122543334961\n      ],\n      [\n        \"entrée\",\n        -11.579304695129395\n      ],\n      [\n        \"▁besteht\",\n        -11.579394340515137\n      ],\n      [\n        \"▁wisdom\",\n        -11.57950210571289\n      ],\n      [\n        \"▁heraus\",\n        -11.579645156860352\n      ],\n      [\n        \"▁balanced\",\n        -11.579753875732422\n      ],\n      [\n        \"▁habits\",\n        -11.579773902893066\n      ],\n      [\n        \"tang\",\n        -11.579888343811035\n      ],\n      [\n        \"ură\",\n        -11.580151557922363\n      ],\n      [\n        \"▁winners\",\n        -11.580182075500488\n      ],\n      [\n        \"ç\",\n        -11.580215454101562\n      ],\n      [\n        \"▁folosi\",\n        -11.580242156982422\n      ],\n      [\n        \"aliment\",\n        -11.5802583694458\n      ],\n      [\n        \"▁fiction\",\n        -11.580373764038086\n      ],\n      [\n        \"▁Spe\",\n        -11.580534934997559\n      ],\n      [\n        \"▁elsewhere\",\n        -11.580663681030273\n      ],\n      [\n        \"▁dependent\",\n        -11.580808639526367\n      ],\n      [\n        \"▁Anne\",\n        -11.581167221069336\n      ],\n      [\n        \"▁excellence\",\n        -11.581695556640625\n      ],\n      [\n        \"▁Feel\",\n        -11.581753730773926\n      ],\n      [\n        \"lieb\",\n        -11.581811904907227\n      ],\n      [\n        \"▁sectors\",\n        -11.581865310668945\n      ],\n      [\n        \"▁expir\",\n        -11.581886291503906\n      ],\n      [\n        \"▁surfaces\",\n        -11.58191204071045\n      ],\n      [\n        \"▁minim\",\n        -11.581937789916992\n      ],\n      [\n        \"▁tumor\",\n        -11.58204460144043\n      ],\n      [\n        \"▁paragraph\",\n        -11.582289695739746\n      ],\n      [\n        \"▁disk\",\n        -11.58232307434082\n      ],\n      [\n        \"▁tonight\",\n        -11.582379341125488\n      ],\n      [\n        \"▁precious\",\n        -11.582794189453125\n      ],\n      [\n        \"▁console\",\n        -11.58288288116455\n      ],\n      [\n        \"Th\",\n        -11.582939147949219\n      ],\n      [\n        \"neu\",\n        -11.583020210266113\n      ],\n      [\n        \"effective\",\n        -11.5839262008667\n      ],\n      [\n        \"▁Republican\",\n        -11.583944320678711\n      ],\n      [\n        \"format\",\n        -11.584297180175781\n      ],\n      [\n        \"▁preserve\",\n        -11.58436107635498\n      ],\n      [\n        \"▁wiring\",\n        -11.584599494934082\n      ],\n      [\n        \"▁exercises\",\n        -11.584757804870605\n      ],\n      [\n        \"▁pregnancy\",\n        -11.584774017333984\n      ],\n      [\n        \"tries\",\n        -11.58481502532959\n      ],\n      [\n        \"▁jeunes\",\n        -11.584883689880371\n      ],\n      [\n        \"▁publishing\",\n        -11.584932327270508\n      ],\n      [\n        \"▁nehmen\",\n        -11.584935188293457\n      ],\n      [\n        \"▁capability\",\n        -11.5849609375\n      ],\n      [\n        \"▁prompt\",\n        -11.584965705871582\n      ],\n      [\n        \"▁Further\",\n        -11.58497428894043\n      ],\n      [\n        \"▁semaine\",\n        -11.585173606872559\n      ],\n      [\n        \"abo\",\n        -11.585216522216797\n      ],\n      [\n        \"▁evolution\",\n        -11.585319519042969\n      ],\n      [\n        \"▁Sud\",\n        -11.585403442382812\n      ],\n      [\n        \"▁frais\",\n        -11.585525512695312\n      ],\n      [\n        \"LT\",\n        -11.585619926452637\n      ],\n      [\n        \"▁stack\",\n        -11.58581829071045\n      ],\n      [\n        \"▁Inside\",\n        -11.585854530334473\n      ],\n      [\n        \"▁programmes\",\n        -11.585997581481934\n      ],\n      [\n        \"▁passes\",\n        -11.586196899414062\n      ],\n      [\n        \"mü\",\n        -11.586474418640137\n      ],\n      [\n        \"▁progressive\",\n        -11.586518287658691\n      ],\n      [\n        \"▁calculator\",\n        -11.58658218383789\n      ],\n      [\n        \"▁Core\",\n        -11.586655616760254\n      ],\n      [\n        \"BT\",\n        -11.586956977844238\n      ],\n      [\n        \"core\",\n        -11.586996078491211\n      ],\n      [\n        \"▁Moon\",\n        -11.587004661560059\n      ],\n      [\n        \"▁tender\",\n        -11.587040901184082\n      ],\n      [\n        \"durch\",\n        -11.58721923828125\n      ],\n      [\n        \"▁commune\",\n        -11.587453842163086\n      ],\n      [\n        \"▁Prince\",\n        -11.587594032287598\n      ],\n      [\n        \"▁demonstrated\",\n        -11.587693214416504\n      ],\n      [\n        \"▁conversations\",\n        -11.587890625\n      ],\n      [\n        \"▁fri\",\n        -11.587984085083008\n      ],\n      [\n        \"igh\",\n        -11.587992668151855\n      ],\n      [\n        \"being\",\n        -11.588334083557129\n      ],\n      [\n        \"pause\",\n        -11.58853530883789\n      ],\n      [\n        \"▁Bear\",\n        -11.58871841430664\n      ],\n      [\n        \"ayant\",\n        -11.588875770568848\n      ],\n      [\n        \"▁Industry\",\n        -11.588967323303223\n      ],\n      [\n        \"▁sponsor\",\n        -11.589012145996094\n      ],\n      [\n        \"▁numele\",\n        -11.589098930358887\n      ],\n      [\n        \"▁VA\",\n        -11.589167594909668\n      ],\n      [\n        \"▁Sommer\",\n        -11.589366912841797\n      ],\n      [\n        \"TB\",\n        -11.589380264282227\n      ],\n      [\n        \"▁optional\",\n        -11.589505195617676\n      ],\n      [\n        \"▁Landes\",\n        -11.589812278747559\n      ],\n      [\n        \"coli\",\n        -11.589963912963867\n      ],\n      [\n        \"empt\",\n        -11.59018325805664\n      ],\n      [\n        \"▁Iron\",\n        -11.590620040893555\n      ],\n      [\n        \"▁1992\",\n        -11.59090518951416\n      ],\n      [\n        \"▁attempts\",\n        -11.59090518951416\n      ],\n      [\n        \"halb\",\n        -11.590960502624512\n      ],\n      [\n        \"▁photographer\",\n        -11.59097671508789\n      ],\n      [\n        \"▁witness\",\n        -11.59097957611084\n      ],\n      [\n        \"bru\",\n        -11.591073989868164\n      ],\n      [\n        \"▁Ras\",\n        -11.59107780456543\n      ],\n      [\n        \"▁burden\",\n        -11.591142654418945\n      ],\n      [\n        \"▁kaufen\",\n        -11.591256141662598\n      ],\n      [\n        \"▁vu\",\n        -11.591362953186035\n      ],\n      [\n        \"▁Wedding\",\n        -11.591601371765137\n      ],\n      [\n        \"▁Kla\",\n        -11.591604232788086\n      ],\n      [\n        \"occasion\",\n        -11.591915130615234\n      ],\n      [\n        \"▁keys\",\n        -11.592131614685059\n      ],\n      [\n        \"▁oferi\",\n        -11.592279434204102\n      ],\n      [\n        \"▁puzzle\",\n        -11.592302322387695\n      ],\n      [\n        \"eaux\",\n        -11.59254264831543\n      ],\n      [\n        \"▁Eco\",\n        -11.592805862426758\n      ],\n      [\n        \"▁52\",\n        -11.592817306518555\n      ],\n      [\n        \"▁Elizabeth\",\n        -11.59284496307373\n      ],\n      [\n        \"▁dispose\",\n        -11.593144416809082\n      ],\n      [\n        \"▁cluster\",\n        -11.59326171875\n      ],\n      [\n        \"iki\",\n        -11.593283653259277\n      ],\n      [\n        \"▁Guys\",\n        -11.593595504760742\n      ],\n      [\n        \"▁Economic\",\n        -11.593632698059082\n      ],\n      [\n        \"▁apar\",\n        -11.593677520751953\n      ],\n      [\n        \"▁ziua\",\n        -11.593688011169434\n      ],\n      [\n        \"▁integral\",\n        -11.593740463256836\n      ],\n      [\n        \"▁tac\",\n        -11.59376335144043\n      ],\n      [\n        \"▁restrictions\",\n        -11.593778610229492\n      ],\n      [\n        \"▁nerve\",\n        -11.593794822692871\n      ],\n      [\n        \"▁Stop\",\n        -11.59386157989502\n      ],\n      [\n        \"burger\",\n        -11.593897819519043\n      ],\n      [\n        \"explo\",\n        -11.593944549560547\n      ],\n      [\n        \"lö\",\n        -11.593958854675293\n      ],\n      [\n        \"NP\",\n        -11.594077110290527\n      ],\n      [\n        \"▁Brook\",\n        -11.59418773651123\n      ],\n      [\n        \"▁Close\",\n        -11.594278335571289\n      ],\n      [\n        \"▁representing\",\n        -11.59446907043457\n      ],\n      [\n        \"▁certaine\",\n        -11.594767570495605\n      ],\n      [\n        \"▁discovery\",\n        -11.594836235046387\n      ],\n      [\n        \"▁rece\",\n        -11.594964981079102\n      ],\n      [\n        \"FF\",\n        -11.594970703125\n      ],\n      [\n        \"▁salary\",\n        -11.595069885253906\n      ],\n      [\n        \"▁Wolf\",\n        -11.595137596130371\n      ],\n      [\n        \"▁deserve\",\n        -11.595166206359863\n      ],\n      [\n        \"ţele\",\n        -11.595417976379395\n      ],\n      [\n        \"gathered\",\n        -11.595934867858887\n      ],\n      [\n        \"▁comply\",\n        -11.59599494934082\n      ],\n      [\n        \"lagen\",\n        -11.596034049987793\n      ],\n      [\n        \"ătoare\",\n        -11.596192359924316\n      ],\n      [\n        \"▁relate\",\n        -11.596410751342773\n      ],\n      [\n        \"▁Roger\",\n        -11.59656810760498\n      ],\n      [\n        \"▁blame\",\n        -11.596575736999512\n      ],\n      [\n        \"▁Jen\",\n        -11.596914291381836\n      ],\n      [\n        \"▁army\",\n        -11.596936225891113\n      ],\n      [\n        \"▁$10\",\n        -11.597129821777344\n      ],\n      [\n        \"▁Cabinet\",\n        -11.597185134887695\n      ],\n      [\n        \"Gu\",\n        -11.597367286682129\n      ],\n      [\n        \"▁wildlife\",\n        -11.597452163696289\n      ],\n      [\n        \"▁Memorial\",\n        -11.597643852233887\n      ],\n      [\n        \"▁Holiday\",\n        -11.597742080688477\n      ],\n      [\n        \"▁curat\",\n        -11.598291397094727\n      ],\n      [\n        \"iilor\",\n        -11.598299026489258\n      ],\n      [\n        \"▁fleet\",\n        -11.598408699035645\n      ],\n      [\n        \"▁reviewed\",\n        -11.59843635559082\n      ],\n      [\n        \"cet\",\n        -11.598450660705566\n      ],\n      [\n        \"▁virtually\",\n        -11.598487854003906\n      ],\n      [\n        \"▁Crusher\",\n        -11.59852409362793\n      ],\n      [\n        \"▁slide\",\n        -11.59858226776123\n      ],\n      [\n        \"▁générale\",\n        -11.598604202270508\n      ],\n      [\n        \"▁sensation\",\n        -11.598630905151367\n      ],\n      [\n        \"▁garlic\",\n        -11.598638534545898\n      ],\n      [\n        \"5)\",\n        -11.598657608032227\n      ],\n      [\n        \"▁batteries\",\n        -11.598756790161133\n      ],\n      [\n        \"SH\",\n        -11.59876823425293\n      ],\n      [\n        \"▁seller\",\n        -11.59882926940918\n      ],\n      [\n        \"design\",\n        -11.598871231079102\n      ],\n      [\n        \"5.\",\n        -11.598944664001465\n      ],\n      [\n        \"▁Overall\",\n        -11.598969459533691\n      ],\n      [\n        \"▁investigate\",\n        -11.599058151245117\n      ],\n      [\n        \"max\",\n        -11.599064826965332\n      ],\n      [\n        \"▁attach\",\n        -11.599166870117188\n      ],\n      [\n        \"▁Future\",\n        -11.599209785461426\n      ],\n      [\n        \"OUR\",\n        -11.599284172058105\n      ],\n      [\n        \"▁LE\",\n        -11.59968090057373\n      ],\n      [\n        \"▁bite\",\n        -11.599811553955078\n      ],\n      [\n        \"tige\",\n        -11.599874496459961\n      ],\n      [\n        \"▁twist\",\n        -11.59987735748291\n      ],\n      [\n        \"hole\",\n        -11.600180625915527\n      ],\n      [\n        \"▁Tony\",\n        -11.600510597229004\n      ],\n      [\n        \"LU\",\n        -11.600598335266113\n      ],\n      [\n        \"▁Organization\",\n        -11.600617408752441\n      ],\n      [\n        \"▁invit\",\n        -11.600632667541504\n      ],\n      [\n        \"▁Ant\",\n        -11.600739479064941\n      ],\n      [\n        \"NR\",\n        -11.600788116455078\n      ],\n      [\n        \"sorgt\",\n        -11.600854873657227\n      ],\n      [\n        \"▁Lan\",\n        -11.600860595703125\n      ],\n      [\n        \"▁Manchester\",\n        -11.60091495513916\n      ],\n      [\n        \"schrift\",\n        -11.601066589355469\n      ],\n      [\n        \"▁kg\",\n        -11.601150512695312\n      ],\n      [\n        \"▁aroma\",\n        -11.60132884979248\n      ],\n      [\n        \"▁Source\",\n        -11.601388931274414\n      ],\n      [\n        \"▁permite\",\n        -11.601445198059082\n      ],\n      [\n        \"▁Consider\",\n        -11.601457595825195\n      ],\n      [\n        \"▁Artist\",\n        -11.601627349853516\n      ],\n      [\n        \"▁transmit\",\n        -11.601783752441406\n      ],\n      [\n        \"oasa\",\n        -11.601834297180176\n      ],\n      [\n        \"▁Zen\",\n        -11.60198974609375\n      ],\n      [\n        \"ANT\",\n        -11.602235794067383\n      ],\n      [\n        \"▁consulting\",\n        -11.602404594421387\n      ],\n      [\n        \"▁commence\",\n        -11.6025390625\n      ],\n      [\n        \"▁quilt\",\n        -11.60261058807373\n      ],\n      [\n        \"owned\",\n        -11.602642059326172\n      ],\n      [\n        \"▁bro\",\n        -11.602689743041992\n      ],\n      [\n        \"▁integrate\",\n        -11.602715492248535\n      ],\n      [\n        \"▁Ontario\",\n        -11.602775573730469\n      ],\n      [\n        \"TF\",\n        -11.602832794189453\n      ],\n      [\n        \"▁Study\",\n        -11.602887153625488\n      ],\n      [\n        \"▁ensuite\",\n        -11.603155136108398\n      ],\n      [\n        \"itatii\",\n        -11.603180885314941\n      ],\n      [\n        \"Mon\",\n        -11.603235244750977\n      ],\n      [\n        \"-11\",\n        -11.603299140930176\n      ],\n      [\n        \"what\",\n        -11.603384017944336\n      ],\n      [\n        \"▁Things\",\n        -11.60361385345459\n      ],\n      [\n        \"▁Eye\",\n        -11.603819847106934\n      ],\n      [\n        \"▁présente\",\n        -11.603828430175781\n      ],\n      [\n        \"tention\",\n        -11.603915214538574\n      ],\n      [\n        \"|\",\n        -11.603957176208496\n      ],\n      [\n        \"stall\",\n        -11.603963851928711\n      ],\n      [\n        \"▁beef\",\n        -11.603992462158203\n      ],\n      [\n        \"figur\",\n        -11.604005813598633\n      ],\n      [\n        \"▁cancel\",\n        -11.604146003723145\n      ],\n      [\n        \"▁domeniul\",\n        -11.604252815246582\n      ],\n      [\n        \"▁360\",\n        -11.604290008544922\n      ],\n      [\n        \"▁sleeping\",\n        -11.6045560836792\n      ],\n      [\n        \"▁traitement\",\n        -11.604580879211426\n      ],\n      [\n        \"ühl\",\n        -11.604769706726074\n      ],\n      [\n        \"▁Environmental\",\n        -11.604835510253906\n      ],\n      [\n        \"cier\",\n        -11.604894638061523\n      ],\n      [\n        \"▁NC\",\n        -11.604907035827637\n      ],\n      [\n        \"pub\",\n        -11.604925155639648\n      ],\n      [\n        \"▁addiction\",\n        -11.605071067810059\n      ],\n      [\n        \"▁nest\",\n        -11.605128288269043\n      ],\n      [\n        \"▁ON\",\n        -11.605395317077637\n      ],\n      [\n        \"▁discrimin\",\n        -11.605396270751953\n      ],\n      [\n        \"▁proved\",\n        -11.605517387390137\n      ],\n      [\n        \"▁occasions\",\n        -11.605864524841309\n      ],\n      [\n        \"OH\",\n        -11.606184959411621\n      ],\n      [\n        \"▁lawyers\",\n        -11.606203079223633\n      ],\n      [\n        \"own\",\n        -11.606290817260742\n      ],\n      [\n        \"▁Meeting\",\n        -11.606596946716309\n      ],\n      [\n        \"▁Industrial\",\n        -11.606704711914062\n      ],\n      [\n        \"owed\",\n        -11.606736183166504\n      ],\n      [\n        \"▁Cel\",\n        -11.606793403625488\n      ],\n      [\n        \"legt\",\n        -11.60706615447998\n      ],\n      [\n        \"ily\",\n        -11.607085227966309\n      ],\n      [\n        \"▁wins\",\n        -11.607155799865723\n      ],\n      [\n        \"▁strap\",\n        -11.607367515563965\n      ],\n      [\n        \"digit\",\n        -11.607441902160645\n      ],\n      [\n        \"▁hinaus\",\n        -11.607504844665527\n      ],\n      [\n        \"mple\",\n        -11.607712745666504\n      ],\n      [\n        \"▁(5\",\n        -11.607797622680664\n      ],\n      [\n        \"▁pdf\",\n        -11.607894897460938\n      ],\n      [\n        \"▁eco\",\n        -11.607915878295898\n      ],\n      [\n        \"▁junior\",\n        -11.608172416687012\n      ],\n      [\n        \"DB\",\n        -11.608556747436523\n      ],\n      [\n        \"gelegt\",\n        -11.608636856079102\n      ],\n      [\n        \"ION\",\n        -11.608678817749023\n      ],\n      [\n        \"▁competitors\",\n        -11.60880184173584\n      ],\n      [\n        \"▁Arab\",\n        -11.60898208618164\n      ],\n      [\n        \"▁Secret\",\n        -11.609148979187012\n      ],\n      [\n        \"▁Kunst\",\n        -11.609283447265625\n      ],\n      [\n        \"▁worried\",\n        -11.609297752380371\n      ],\n      [\n        \"meiner\",\n        -11.609378814697266\n      ],\n      [\n        \"▁Magic\",\n        -11.609450340270996\n      ],\n      [\n        \"▁groß\",\n        -11.609537124633789\n      ],\n      [\n        \"▁travaux\",\n        -11.609748840332031\n      ],\n      [\n        \"▁sollen\",\n        -11.609772682189941\n      ],\n      [\n        \"▁Sciences\",\n        -11.609850883483887\n      ],\n      [\n        \"▁athletes\",\n        -11.610055923461914\n      ],\n      [\n        \"▁discounts\",\n        -11.610079765319824\n      ],\n      [\n        \"kit\",\n        -11.610211372375488\n      ],\n      [\n        \"lind\",\n        -11.610305786132812\n      ],\n      [\n        \"▁enjoyable\",\n        -11.610421180725098\n      ],\n      [\n        \"ground\",\n        -11.610489845275879\n      ],\n      [\n        \"▁Tat\",\n        -11.610529899597168\n      ],\n      [\n        \"▁passengers\",\n        -11.610576629638672\n      ],\n      [\n        \"▁Dami\",\n        -11.610677719116211\n      ],\n      [\n        \"▁Major\",\n        -11.61070728302002\n      ],\n      [\n        \"watch\",\n        -11.610796928405762\n      ],\n      [\n        \"working\",\n        -11.610908508300781\n      ],\n      [\n        \"arrêt\",\n        -11.610923767089844\n      ],\n      [\n        \"▁subtle\",\n        -11.611069679260254\n      ],\n      [\n        \"▁epi\",\n        -11.611197471618652\n      ],\n      [\n        \"▁Jahres\",\n        -11.61128044128418\n      ],\n      [\n        \"▁cooling\",\n        -11.61141586303711\n      ],\n      [\n        \"▁makeup\",\n        -11.611427307128906\n      ],\n      [\n        \"jet\",\n        -11.611495018005371\n      ],\n      [\n        \"▁Given\",\n        -11.611519813537598\n      ],\n      [\n        \"plex\",\n        -11.61158275604248\n      ],\n      [\n        \"▁exploit\",\n        -11.611590385437012\n      ],\n      [\n        \"rine\",\n        -11.611604690551758\n      ],\n      [\n        \"▁delivers\",\n        -11.612122535705566\n      ],\n      [\n        \"▁summary\",\n        -11.612236022949219\n      ],\n      [\n        \"▁beaches\",\n        -11.612459182739258\n      ],\n      [\n        \"lift\",\n        -11.612550735473633\n      ],\n      [\n        \"▁Suite\",\n        -11.612554550170898\n      ],\n      [\n        \"▁Assistant\",\n        -11.612688064575195\n      ],\n      [\n        \"▁taxi\",\n        -11.61273193359375\n      ],\n      [\n        \"▁peaceful\",\n        -11.612805366516113\n      ],\n      [\n        \"▁Mode\",\n        -11.612980842590332\n      ],\n      [\n        \"▁Fun\",\n        -11.613059043884277\n      ],\n      [\n        \"▁diameter\",\n        -11.613142967224121\n      ],\n      [\n        \"▁phrase\",\n        -11.613150596618652\n      ],\n      [\n        \"ACT\",\n        -11.613265037536621\n      ],\n      [\n        \"▁différentes\",\n        -11.613322257995605\n      ],\n      [\n        \"▁14.\",\n        -11.613417625427246\n      ],\n      [\n        \"▁CE\",\n        -11.61352825164795\n      ],\n      [\n        \"▁2)\",\n        -11.613739013671875\n      ],\n      [\n        \"▁Nat\",\n        -11.613785743713379\n      ],\n      [\n        \"▁delete\",\n        -11.61388111114502\n      ],\n      [\n        \"other\",\n        -11.613930702209473\n      ],\n      [\n        \"hang\",\n        -11.613985061645508\n      ],\n      [\n        \"▁sujet\",\n        -11.614117622375488\n      ],\n      [\n        \"▁precise\",\n        -11.614212989807129\n      ],\n      [\n        \"▁Total\",\n        -11.614290237426758\n      ],\n      [\n        \"▁chambre\",\n        -11.614483833312988\n      ],\n      [\n        \"sati\",\n        -11.614666938781738\n      ],\n      [\n        \"▁Metal\",\n        -11.614995956420898\n      ],\n      [\n        \"rust\",\n        -11.615038871765137\n      ],\n      [\n        \"▁Brazil\",\n        -11.615508079528809\n      ],\n      [\n        \"▁hybrid\",\n        -11.615636825561523\n      ],\n      [\n        \"ops\",\n        -11.615691184997559\n      ],\n      [\n        \"▁electro\",\n        -11.615789413452148\n      ],\n      [\n        \"utz\",\n        -11.61608600616455\n      ],\n      [\n        \"▁quoi\",\n        -11.616246223449707\n      ],\n      [\n        \"▁adoption\",\n        -11.616331100463867\n      ],\n      [\n        \"3.5\",\n        -11.616518020629883\n      ],\n      [\n        \"50,000\",\n        -11.616599082946777\n      ],\n      [\n        \"veti\",\n        -11.616630554199219\n      ],\n      [\n        \"hir\",\n        -11.616957664489746\n      ],\n      [\n        \"▁adequate\",\n        -11.617067337036133\n      ],\n      [\n        \"ologist\",\n        -11.617109298706055\n      ],\n      [\n        \"torii\",\n        -11.617295265197754\n      ],\n      [\n        \"wasser\",\n        -11.617355346679688\n      ],\n      [\n        \"▁Authority\",\n        -11.617362976074219\n      ],\n      [\n        \"▁donation\",\n        -11.617364883422852\n      ],\n      [\n        \"700\",\n        -11.617375373840332\n      ],\n      [\n        \"▁somehow\",\n        -11.617375373840332\n      ],\n      [\n        \"▁kostenlos\",\n        -11.617425918579102\n      ],\n      [\n        \"▁generations\",\n        -11.617537498474121\n      ],\n      [\n        \"▁Turkey\",\n        -11.617711067199707\n      ],\n      [\n        \"rata\",\n        -11.617819786071777\n      ],\n      [\n        \"▁animation\",\n        -11.618206024169922\n      ],\n      [\n        \"▁CH\",\n        -11.618281364440918\n      ],\n      [\n        \"ending\",\n        -11.618317604064941\n      ],\n      [\n        \"welt\",\n        -11.618376731872559\n      ],\n      [\n        \"bac\",\n        -11.618380546569824\n      ],\n      [\n        \"MG\",\n        -11.618460655212402\n      ],\n      [\n        \"▁parks\",\n        -11.618468284606934\n      ],\n      [\n        \"▁placing\",\n        -11.618870735168457\n      ],\n      [\n        \"sort\",\n        -11.61915111541748\n      ],\n      [\n        \"▁Bitcoin\",\n        -11.619163513183594\n      ],\n      [\n        \"▁disorder\",\n        -11.619282722473145\n      ],\n      [\n        \"MAN\",\n        -11.619302749633789\n      ],\n      [\n        \"aught\",\n        -11.619412422180176\n      ],\n      [\n        \"▁guides\",\n        -11.61956787109375\n      ],\n      [\n        \"▁circul\",\n        -11.619651794433594\n      ],\n      [\n        \"▁Steven\",\n        -11.619954109191895\n      ],\n      [\n        \"rrière\",\n        -11.619976997375488\n      ],\n      [\n        \"▁Arch\",\n        -11.61999225616455\n      ],\n      [\n        \"▁plates\",\n        -11.620091438293457\n      ],\n      [\n        \"MR\",\n        -11.620118141174316\n      ],\n      [\n        \"▁cow\",\n        -11.620142936706543\n      ],\n      [\n        \"▁integrity\",\n        -11.620210647583008\n      ],\n      [\n        \"▁(18\",\n        -11.620217323303223\n      ],\n      [\n        \"▁totul\",\n        -11.62024211883545\n      ],\n      [\n        \"jack\",\n        -11.620373725891113\n      ],\n      [\n        \"▁privire\",\n        -11.620588302612305\n      ],\n      [\n        \"▁terme\",\n        -11.620752334594727\n      ],\n      [\n        \"▁execution\",\n        -11.620781898498535\n      ],\n      [\n        \"▁organism\",\n        -11.620838165283203\n      ],\n      [\n        \"▁führen\",\n        -11.620853424072266\n      ],\n      [\n        \"▁patron\",\n        -11.620940208435059\n      ],\n      [\n        \"▁appreciated\",\n        -11.62096881866455\n      ],\n      [\n        \"liant\",\n        -11.62100601196289\n      ],\n      [\n        \"▁Solar\",\n        -11.621055603027344\n      ],\n      [\n        \"▁vinyl\",\n        -11.621134757995605\n      ],\n      [\n        \"▁treasure\",\n        -11.621137619018555\n      ],\n      [\n        \"▁retro\",\n        -11.621167182922363\n      ],\n      [\n        \"▁bout\",\n        -11.621174812316895\n      ],\n      [\n        \"lab\",\n        -11.621183395385742\n      ],\n      [\n        \"▁dimension\",\n        -11.621394157409668\n      ],\n      [\n        \"called\",\n        -11.62146282196045\n      ],\n      [\n        \"▁intern\",\n        -11.621479034423828\n      ],\n      [\n        \"issement\",\n        -11.62173843383789\n      ],\n      [\n        \"▁Erst\",\n        -11.621837615966797\n      ],\n      [\n        \"▁stellen\",\n        -11.621920585632324\n      ],\n      [\n        \"▁familia\",\n        -11.622069358825684\n      ],\n      [\n        \"▁notion\",\n        -11.622176170349121\n      ],\n      [\n        \"▁Could\",\n        -11.622322082519531\n      ],\n      [\n        \"Getting\",\n        -11.622323036193848\n      ],\n      [\n        \"▁drives\",\n        -11.622397422790527\n      ],\n      [\n        \"▁Israeli\",\n        -11.622520446777344\n      ],\n      [\n        \"▁nations\",\n        -11.622546195983887\n      ],\n      [\n        \"▁duties\",\n        -11.622700691223145\n      ],\n      [\n        \"▁personalized\",\n        -11.622788429260254\n      ],\n      [\n        \"▁weren\",\n        -11.62282657623291\n      ],\n      [\n        \"▁chemicals\",\n        -11.622847557067871\n      ],\n      [\n        \"▁killing\",\n        -11.622913360595703\n      ],\n      [\n        \"▁masa\",\n        -11.622994422912598\n      ],\n      [\n        \"▁parce\",\n        -11.623026847839355\n      ],\n      [\n        \"▁lady\",\n        -11.623178482055664\n      ],\n      [\n        \"ides\",\n        -11.623221397399902\n      ],\n      [\n        \"▁execut\",\n        -11.62340259552002\n      ],\n      [\n        \"▁floral\",\n        -11.62341594696045\n      ],\n      [\n        \"▁Child\",\n        -11.623428344726562\n      ],\n      [\n        \"▁medal\",\n        -11.623503684997559\n      ],\n      [\n        \"▁casa\",\n        -11.623603820800781\n      ],\n      [\n        \"▁enabled\",\n        -11.623650550842285\n      ],\n      [\n        \"12.\",\n        -11.624239921569824\n      ],\n      [\n        \"nger\",\n        -11.624266624450684\n      ],\n      [\n        \"▁vent\",\n        -11.624297142028809\n      ],\n      [\n        \"▁urmă\",\n        -11.624727249145508\n      ],\n      [\n        \"▁Herz\",\n        -11.624835968017578\n      ],\n      [\n        \"▁Jay\",\n        -11.624916076660156\n      ],\n      [\n        \".....\",\n        -11.624942779541016\n      ],\n      [\n        \"▁Kris\",\n        -11.62499713897705\n      ],\n      [\n        \"kenn\",\n        -11.625001907348633\n      ],\n      [\n        \"ress\",\n        -11.625027656555176\n      ],\n      [\n        \"weight\",\n        -11.62519359588623\n      ],\n      [\n        \"▁indicates\",\n        -11.625198364257812\n      ],\n      [\n        \"▁mentor\",\n        -11.625328063964844\n      ],\n      [\n        \"using\",\n        -11.625386238098145\n      ],\n      [\n        \"▁femmes\",\n        -11.625460624694824\n      ],\n      [\n        \"▁Jung\",\n        -11.625528335571289\n      ],\n      [\n        \"▁Send\",\n        -11.625574111938477\n      ],\n      [\n        \"▁seasons\",\n        -11.625906944274902\n      ],\n      [\n        \"▁aesthetic\",\n        -11.625964164733887\n      ],\n      [\n        \"▁Block\",\n        -11.626086235046387\n      ],\n      [\n        \"▁babies\",\n        -11.626150131225586\n      ],\n      [\n        \"zig\",\n        -11.626242637634277\n      ],\n      [\n        \"edge\",\n        -11.626428604125977\n      ],\n      [\n        \"▁alike\",\n        -11.626458168029785\n      ],\n      [\n        \"▁immune\",\n        -11.626609802246094\n      ],\n      [\n        \"▁magical\",\n        -11.626710891723633\n      ],\n      [\n        \"▁Snow\",\n        -11.626748085021973\n      ],\n      [\n        \"▁spacious\",\n        -11.627058982849121\n      ],\n      [\n        \"▁Melbourne\",\n        -11.62706184387207\n      ],\n      [\n        \"order\",\n        -11.627081871032715\n      ],\n      [\n        \"▁timing\",\n        -11.627176284790039\n      ],\n      [\n        \"▁inainte\",\n        -11.627220153808594\n      ],\n      [\n        \"▁width\",\n        -11.627327919006348\n      ],\n      [\n        \"bild\",\n        -11.627386093139648\n      ],\n      [\n        \"Tra\",\n        -11.627429008483887\n      ],\n      [\n        \"▁appliances\",\n        -11.627449989318848\n      ],\n      [\n        \"▁dirt\",\n        -11.627498626708984\n      ],\n      [\n        \"▁Rent\",\n        -11.627689361572266\n      ],\n      [\n        \"responsibilities\",\n        -11.627747535705566\n      ],\n      [\n        \"▁blogs\",\n        -11.62778377532959\n      ],\n      [\n        \"nächsten\",\n        -11.627799034118652\n      ],\n      [\n        \"▁argue\",\n        -11.627928733825684\n      ],\n      [\n        \"▁Resume\",\n        -11.627985954284668\n      ],\n      [\n        \"▁Michel\",\n        -11.628044128417969\n      ],\n      [\n        \"▁terrible\",\n        -11.628092765808105\n      ],\n      [\n        \"graph\",\n        -11.628151893615723\n      ],\n      [\n        \"bird\",\n        -11.628202438354492\n      ],\n      [\n        \"▁Simple\",\n        -11.628457069396973\n      ],\n      [\n        \"nning\",\n        -11.628658294677734\n      ],\n      [\n        \"▁coconut\",\n        -11.628683090209961\n      ],\n      [\n        \"▁comprise\",\n        -11.628787994384766\n      ],\n      [\n        \"heure\",\n        -11.628918647766113\n      ],\n      [\n        \"▁nichts\",\n        -11.628921508789062\n      ],\n      [\n        \"▁manufacture\",\n        -11.628966331481934\n      ],\n      [\n        \"▁Sar\",\n        -11.629011154174805\n      ],\n      [\n        \"green\",\n        -11.629014015197754\n      ],\n      [\n        \"lining\",\n        -11.62910270690918\n      ],\n      [\n        \"▁tremendous\",\n        -11.629128456115723\n      ],\n      [\n        \"▁Wine\",\n        -11.629164695739746\n      ],\n      [\n        \"gir\",\n        -11.629290580749512\n      ],\n      [\n        \"▁Nothing\",\n        -11.629562377929688\n      ],\n      [\n        \"▁Miller\",\n        -11.62957763671875\n      ],\n      [\n        \"▁Schwe\",\n        -11.629712104797363\n      ],\n      [\n        \"zone\",\n        -11.629942893981934\n      ],\n      [\n        \"▁cunoscut\",\n        -11.629964828491211\n      ],\n      [\n        \"rupt\",\n        -11.630166053771973\n      ],\n      [\n        \"kle\",\n        -11.630187034606934\n      ],\n      [\n        \"▁Bucuresti\",\n        -11.630510330200195\n      ],\n      [\n        \"▁Abend\",\n        -11.630574226379395\n      ],\n      [\n        \"▁aura\",\n        -11.630583763122559\n      ],\n      [\n        \"▁Dance\",\n        -11.63073444366455\n      ],\n      [\n        \"▁Wilson\",\n        -11.63086986541748\n      ],\n      [\n        \"icide\",\n        -11.630901336669922\n      ],\n      [\n        \"bai\",\n        -11.630910873413086\n      ],\n      [\n        \"oriented\",\n        -11.63103199005127\n      ],\n      [\n        \"▁celebrated\",\n        -11.631421089172363\n      ],\n      [\n        \"schlag\",\n        -11.631531715393066\n      ],\n      [\n        \"▁10-\",\n        -11.631600379943848\n      ],\n      [\n        \"Unsere\",\n        -11.63167667388916\n      ],\n      [\n        \"énergie\",\n        -11.632009506225586\n      ],\n      [\n        \"▁qualify\",\n        -11.63205623626709\n      ],\n      [\n        \"▁contenu\",\n        -11.632177352905273\n      ],\n      [\n        \"▁Lauf\",\n        -11.63220500946045\n      ],\n      [\n        \"▁einzelne\",\n        -11.632360458374023\n      ],\n      [\n        \"▁Youth\",\n        -11.632415771484375\n      ],\n      [\n        \"explains\",\n        -11.632601737976074\n      ],\n      [\n        \"grat\",\n        -11.632782936096191\n      ],\n      [\n        \"▁72\",\n        -11.632804870605469\n      ],\n      [\n        \"labor\",\n        -11.632885932922363\n      ],\n      [\n        \"2018\",\n        -11.632940292358398\n      ],\n      [\n        \"▁Dank\",\n        -11.633149147033691\n      ],\n      [\n        \"▁Hey\",\n        -11.633523941040039\n      ],\n      [\n        \"▁refuse\",\n        -11.633536338806152\n      ],\n      [\n        \"▁graduated\",\n        -11.633599281311035\n      ],\n      [\n        \"▁României\",\n        -11.633627891540527\n      ],\n      [\n        \"punkt\",\n        -11.633807182312012\n      ],\n      [\n        \"▁regulation\",\n        -11.633834838867188\n      ],\n      [\n        \"Bru\",\n        -11.633842468261719\n      ],\n      [\n        \"▁Side\",\n        -11.633891105651855\n      ],\n      [\n        \"▁sol\",\n        -11.633970260620117\n      ],\n      [\n        \"▁extraordinary\",\n        -11.634182929992676\n      ],\n      [\n        \"▁ging\",\n        -11.634247779846191\n      ],\n      [\n        \"▁Creative\",\n        -11.634299278259277\n      ],\n      [\n        \"▁expanding\",\n        -11.634349822998047\n      ],\n      [\n        \"▁problème\",\n        -11.63444995880127\n      ],\n      [\n        \"▁Reserve\",\n        -11.63459300994873\n      ],\n      [\n        \"auteur\",\n        -11.634642601013184\n      ],\n      [\n        \"sphere\",\n        -11.634657859802246\n      ],\n      [\n        \"season\",\n        -11.634716987609863\n      ],\n      [\n        \"frei\",\n        -11.634756088256836\n      ],\n      [\n        \"▁8,\",\n        -11.634765625\n      ],\n      [\n        \"▁filing\",\n        -11.634810447692871\n      ],\n      [\n        \"▁Complete\",\n        -11.635017395019531\n      ],\n      [\n        \"▁revolution\",\n        -11.635035514831543\n      ],\n      [\n        \"▁unele\",\n        -11.63520622253418\n      ],\n      [\n        \"/8\",\n        -11.635272979736328\n      ],\n      [\n        \"istes\",\n        -11.635310173034668\n      ],\n      [\n        \"backed\",\n        -11.635400772094727\n      ],\n      [\n        \"shirt\",\n        -11.635554313659668\n      ],\n      [\n        \"▁Details\",\n        -11.635673522949219\n      ],\n      [\n        \"rod\",\n        -11.635695457458496\n      ],\n      [\n        \"▁pod\",\n        -11.63582992553711\n      ],\n      [\n        \"▁operators\",\n        -11.635921478271484\n      ],\n      [\n        \"was\",\n        -11.635930061340332\n      ],\n      [\n        \"hou\",\n        -11.63594913482666\n      ],\n      [\n        \"▁Coach\",\n        -11.636075019836426\n      ],\n      [\n        \"irii\",\n        -11.636138916015625\n      ],\n      [\n        \"▁ordinary\",\n        -11.636186599731445\n      ],\n      [\n        \"Institut\",\n        -11.63620662689209\n      ],\n      [\n        \"▁Flash\",\n        -11.63633918762207\n      ],\n      [\n        \"0-\",\n        -11.636537551879883\n      ],\n      [\n        \"▁flavour\",\n        -11.6367769241333\n      ],\n      [\n        \"specific\",\n        -11.636906623840332\n      ],\n      [\n        \"▁landing\",\n        -11.636930465698242\n      ],\n      [\n        \"▁geo\",\n        -11.636935234069824\n      ],\n      [\n        \"▁legend\",\n        -11.636983871459961\n      ],\n      [\n        \"vari\",\n        -11.63703441619873\n      ],\n      [\n        \"rop\",\n        -11.637084007263184\n      ],\n      [\n        \"▁Excel\",\n        -11.6370849609375\n      ],\n      [\n        \"▁Flu\",\n        -11.637203216552734\n      ],\n      [\n        \"▁intent\",\n        -11.637582778930664\n      ],\n      [\n        \"▁Deep\",\n        -11.637594223022461\n      ],\n      [\n        \"▁Kor\",\n        -11.63763427734375\n      ],\n      [\n        \"▁Philadelphia\",\n        -11.637914657592773\n      ],\n      [\n        \"▁rând\",\n        -11.63800048828125\n      ],\n      [\n        \"▁USD\",\n        -11.638033866882324\n      ],\n      [\n        \"laden\",\n        -11.63803482055664\n      ],\n      [\n        \"▁Hin\",\n        -11.638047218322754\n      ],\n      [\n        \"hap\",\n        -11.638197898864746\n      ],\n      [\n        \"▁thorough\",\n        -11.638227462768555\n      ],\n      [\n        \"▁oferit\",\n        -11.63826847076416\n      ],\n      [\n        \"kind\",\n        -11.63831615447998\n      ],\n      [\n        \"▁Cancer\",\n        -11.638428688049316\n      ],\n      [\n        \"apo\",\n        -11.638596534729004\n      ],\n      [\n        \"▁valve\",\n        -11.638650894165039\n      ],\n      [\n        \"▁encouraging\",\n        -11.63884449005127\n      ],\n      [\n        \"▁sûr\",\n        -11.638904571533203\n      ],\n      [\n        \"shing\",\n        -11.638981819152832\n      ],\n      [\n        \"▁49\",\n        -11.639132499694824\n      ],\n      [\n        \"gov\",\n        -11.639142990112305\n      ],\n      [\n        \"▁Five\",\n        -11.63933277130127\n      ],\n      [\n        \"▁stroke\",\n        -11.639344215393066\n      ],\n      [\n        \"▁apă\",\n        -11.639398574829102\n      ],\n      [\n        \"▁gambling\",\n        -11.639543533325195\n      ],\n      [\n        \"▁nord\",\n        -11.63963508605957\n      ],\n      [\n        \"onal\",\n        -11.639691352844238\n      ],\n      [\n        \"▁captured\",\n        -11.63979721069336\n      ],\n      [\n        \"▁lucruri\",\n        -11.640068054199219\n      ],\n      [\n        \"serait\",\n        -11.640192985534668\n      ],\n      [\n        \"▁Members\",\n        -11.640265464782715\n      ],\n      [\n        \"ital\",\n        -11.640275955200195\n      ],\n      [\n        \"▁mounted\",\n        -11.640475273132324\n      ],\n      [\n        \"▁opens\",\n        -11.640792846679688\n      ],\n      [\n        \"▁Marie\",\n        -11.640861511230469\n      ],\n      [\n        \"Tech\",\n        -11.640902519226074\n      ],\n      [\n        \"▁wishes\",\n        -11.641016006469727\n      ],\n      [\n        \"▁regards\",\n        -11.641073226928711\n      ],\n      [\n        \"going\",\n        -11.641156196594238\n      ],\n      [\n        \"Opti\",\n        -11.641250610351562\n      ],\n      [\n        \"▁femei\",\n        -11.641331672668457\n      ],\n      [\n        \"▁Fish\",\n        -11.64142894744873\n      ],\n      [\n        \"▁mount\",\n        -11.641800880432129\n      ],\n      [\n        \"▁Hunt\",\n        -11.641887664794922\n      ],\n      [\n        \"▁probabil\",\n        -11.64205265045166\n      ],\n      [\n        \"▁assured\",\n        -11.642191886901855\n      ],\n      [\n        \"pho\",\n        -11.642230033874512\n      ],\n      [\n        \"▁manufactured\",\n        -11.642313003540039\n      ],\n      [\n        \"▁realistic\",\n        -11.642437934875488\n      ],\n      [\n        \"ații\",\n        -11.642580032348633\n      ],\n      [\n        \"▁Planning\",\n        -11.642598152160645\n      ],\n      [\n        \"▁român\",\n        -11.642645835876465\n      ],\n      [\n        \"ggy\",\n        -11.642669677734375\n      ],\n      [\n        \"▁produces\",\n        -11.642696380615234\n      ],\n      [\n        \"▁reminder\",\n        -11.64284896850586\n      ],\n      [\n        \"TION\",\n        -11.642868041992188\n      ],\n      [\n        \"▁brake\",\n        -11.642909049987793\n      ],\n      [\n        \"▁pla\",\n        -11.643172264099121\n      ],\n      [\n        \"▁Premium\",\n        -11.643270492553711\n      ],\n      [\n        \"▁carb\",\n        -11.643310546875\n      ],\n      [\n        \"▁shine\",\n        -11.643390655517578\n      ],\n      [\n        \"▁carrier\",\n        -11.643492698669434\n      ],\n      [\n        \"▁poverty\",\n        -11.64350414276123\n      ],\n      [\n        \"▁effectiveness\",\n        -11.6436128616333\n      ],\n      [\n        \"administr\",\n        -11.643655776977539\n      ],\n      [\n        \"▁Chamber\",\n        -11.643658638000488\n      ],\n      [\n        \"▁suntem\",\n        -11.64376163482666\n      ],\n      [\n        \"▁noastră\",\n        -11.643855094909668\n      ],\n      [\n        \"▁sofort\",\n        -11.643877983093262\n      ],\n      [\n        \"▁moisture\",\n        -11.644058227539062\n      ],\n      [\n        \"limb\",\n        -11.6441011428833\n      ],\n      [\n        \"entre\",\n        -11.644328117370605\n      ],\n      [\n        \"▁SD\",\n        -11.644330978393555\n      ],\n      [\n        \"▁BC\",\n        -11.644539833068848\n      ],\n      [\n        \"▁selecting\",\n        -11.6445951461792\n      ],\n      [\n        \"achieving\",\n        -11.644673347473145\n      ],\n      [\n        \"info\",\n        -11.644735336303711\n      ],\n      [\n        \"▁membres\",\n        -11.644983291625977\n      ],\n      [\n        \"▁shoe\",\n        -11.645014762878418\n      ],\n      [\n        \"▁locate\",\n        -11.645065307617188\n      ],\n      [\n        \"▁assignment\",\n        -11.645085334777832\n      ],\n      [\n        \"lern\",\n        -11.645283699035645\n      ],\n      [\n        \"▁defeat\",\n        -11.645406723022461\n      ],\n      [\n        \"▁endless\",\n        -11.645458221435547\n      ],\n      [\n        \"▁Stunden\",\n        -11.645523071289062\n      ],\n      [\n        \"то\",\n        -11.645561218261719\n      ],\n      [\n        \"▁mur\",\n        -11.645586013793945\n      ],\n      [\n        \"▁wissen\",\n        -11.645844459533691\n      ],\n      [\n        \"aime\",\n        -11.645915031433105\n      ],\n      [\n        \"1-2\",\n        -11.646056175231934\n      ],\n      [\n        \"▁femme\",\n        -11.646212577819824\n      ],\n      [\n        \"robe\",\n        -11.646468162536621\n      ],\n      [\n        \"▁embrace\",\n        -11.64647102355957\n      ],\n      [\n        \"▁baseball\",\n        -11.646614074707031\n      ],\n      [\n        \"▁hunting\",\n        -11.64663314819336\n      ],\n      [\n        \"betrieb\",\n        -11.646790504455566\n      ],\n      [\n        \"▁gardens\",\n        -11.647045135498047\n      ],\n      [\n        \"▁risc\",\n        -11.647096633911133\n      ],\n      [\n        \"▁Cri\",\n        -11.647263526916504\n      ],\n      [\n        \"best\",\n        -11.647506713867188\n      ],\n      [\n        \"▁Audio\",\n        -11.647621154785156\n      ],\n      [\n        \"▁intens\",\n        -11.647659301757812\n      ],\n      [\n        \"▁Round\",\n        -11.647744178771973\n      ],\n      [\n        \"▁fireplace\",\n        -11.6478271484375\n      ],\n      [\n        \"▁dozen\",\n        -11.647912979125977\n      ],\n      [\n        \"▁hospitals\",\n        -11.64802360534668\n      ],\n      [\n        \"▁profits\",\n        -11.648076057434082\n      ],\n      [\n        \"▁Mail\",\n        -11.64811897277832\n      ],\n      [\n        \"obtenir\",\n        -11.648191452026367\n      ],\n      [\n        \"▁Ross\",\n        -11.648241996765137\n      ],\n      [\n        \"bun\",\n        -11.648573875427246\n      ],\n      [\n        \"polar\",\n        -11.648688316345215\n      ],\n      [\n        \"▁reflection\",\n        -11.648873329162598\n      ],\n      [\n        \"▁fut\",\n        -11.648992538452148\n      ],\n      [\n        \"phon\",\n        -11.649017333984375\n      ],\n      [\n        \"deck\",\n        -11.649094581604004\n      ],\n      [\n        \"renowned\",\n        -11.649188041687012\n      ],\n      [\n        \"▁cate\",\n        -11.649308204650879\n      ],\n      [\n        \"▁decorative\",\n        -11.6494722366333\n      ],\n      [\n        \"ieri\",\n        -11.64957332611084\n      ],\n      [\n        \"▁Tap\",\n        -11.64958381652832\n      ],\n      [\n        \"▁Dallas\",\n        -11.649600982666016\n      ],\n      [\n        \"rik\",\n        -11.649665832519531\n      ],\n      [\n        \"▁pied\",\n        -11.649727821350098\n      ],\n      [\n        \"rés\",\n        -11.649821281433105\n      ],\n      [\n        \"ppy\",\n        -11.650137901306152\n      ],\n      [\n        \"▁bitte\",\n        -11.650188446044922\n      ],\n      [\n        \"▁cave\",\n        -11.650257110595703\n      ],\n      [\n        \"▁rescue\",\n        -11.650559425354004\n      ],\n      [\n        \"▁Hilfe\",\n        -11.650714874267578\n      ],\n      [\n        \"▁Jason\",\n        -11.650786399841309\n      ],\n      [\n        \"▁Nations\",\n        -11.650838851928711\n      ],\n      [\n        \"▁profil\",\n        -11.650938987731934\n      ],\n      [\n        \"▁Atlantic\",\n        -11.651105880737305\n      ],\n      [\n        \"▁rub\",\n        -11.651126861572266\n      ],\n      [\n        \"▁collaborative\",\n        -11.65113353729248\n      ],\n      [\n        \"étude\",\n        -11.651150703430176\n      ],\n      [\n        \"▁Workshop\",\n        -11.651389122009277\n      ],\n      [\n        \"nez\",\n        -11.651628494262695\n      ],\n      [\n        \"▁chacun\",\n        -11.651714324951172\n      ],\n      [\n        \"▁Too\",\n        -11.65211296081543\n      ],\n      [\n        \"App\",\n        -11.652313232421875\n      ],\n      [\n        \"▁conseil\",\n        -11.652399063110352\n      ],\n      [\n        \"▁signals\",\n        -11.652474403381348\n      ],\n      [\n        \"▁Dead\",\n        -11.652497291564941\n      ],\n      [\n        \"▁Austria\",\n        -11.652522087097168\n      ],\n      [\n        \"▁slots\",\n        -11.652579307556152\n      ],\n      [\n        \"▁Dies\",\n        -11.652623176574707\n      ],\n      [\n        \"raj\",\n        -11.652629852294922\n      ],\n      [\n        \"stick\",\n        -11.652833938598633\n      ],\n      [\n        \"▁jaw\",\n        -11.653030395507812\n      ],\n      [\n        \"▁lounge\",\n        -11.653059005737305\n      ],\n      [\n        \"curi\",\n        -11.653359413146973\n      ],\n      [\n        \"nem\",\n        -11.653456687927246\n      ],\n      [\n        \"▁Cluj\",\n        -11.653512954711914\n      ],\n      [\n        \"▁rapide\",\n        -11.653584480285645\n      ],\n      [\n        \"▁companion\",\n        -11.653716087341309\n      ],\n      [\n        \"▁WE\",\n        -11.653879165649414\n      ],\n      [\n        \"▁bord\",\n        -11.65389347076416\n      ],\n      [\n        \"ody\",\n        -11.654045104980469\n      ],\n      [\n        \"gru\",\n        -11.654057502746582\n      ],\n      [\n        \"▁46\",\n        -11.654410362243652\n      ],\n      [\n        \"kra\",\n        -11.654717445373535\n      ],\n      [\n        \"eller\",\n        -11.65477180480957\n      ],\n      [\n        \"naire\",\n        -11.65511703491211\n      ],\n      [\n        \"hose\",\n        -11.655253410339355\n      ],\n      [\n        \"▁Atlanta\",\n        -11.655254364013672\n      ],\n      [\n        \"▁violent\",\n        -11.65530776977539\n      ],\n      [\n        \"▁imagination\",\n        -11.655352592468262\n      ],\n      [\n        \"▁reward\",\n        -11.655389785766602\n      ],\n      [\n        \"▁Korean\",\n        -11.655441284179688\n      ],\n      [\n        \"▁branches\",\n        -11.655501365661621\n      ],\n      [\n        \"▁GPS\",\n        -11.655625343322754\n      ],\n      [\n        \"glo\",\n        -11.655633926391602\n      ],\n      [\n        \"▁condo\",\n        -11.655705451965332\n      ],\n      [\n        \"▁Investment\",\n        -11.655765533447266\n      ],\n      [\n        \"▁involvement\",\n        -11.655813217163086\n      ],\n      [\n        \"▁trap\",\n        -11.655829429626465\n      ],\n      [\n        \"▁schön\",\n        -11.655872344970703\n      ],\n      [\n        \"▁ofera\",\n        -11.655933380126953\n      ],\n      [\n        \"▁unterschiedlich\",\n        -11.65596866607666\n      ],\n      [\n        \"Net\",\n        -11.655987739562988\n      ],\n      [\n        \"▁predict\",\n        -11.656113624572754\n      ],\n      [\n        \"identifying\",\n        -11.656309127807617\n      ],\n      [\n        \"▁noir\",\n        -11.6566162109375\n      ],\n      [\n        \"kos\",\n        -11.656816482543945\n      ],\n      [\n        \"poz\",\n        -11.656816482543945\n      ],\n      [\n        \"▁11,\",\n        -11.65698528289795\n      ],\n      [\n        \"▁fitted\",\n        -11.657384872436523\n      ],\n      [\n        \"MU\",\n        -11.657469749450684\n      ],\n      [\n        \"TT\",\n        -11.657645225524902\n      ],\n      [\n        \"▁vrea\",\n        -11.657846450805664\n      ],\n      [\n        \"▁wound\",\n        -11.657864570617676\n      ],\n      [\n        \"lac\",\n        -11.657971382141113\n      ],\n      [\n        \"▁purchases\",\n        -11.658409118652344\n      ],\n      [\n        \"▁Cape\",\n        -11.65843677520752\n      ],\n      [\n        \"▁Foto\",\n        -11.658537864685059\n      ],\n      [\n        \"▁acres\",\n        -11.65865707397461\n      ],\n      [\n        \"▁nec\",\n        -11.658677101135254\n      ],\n      [\n        \"▁burning\",\n        -11.659050941467285\n      ],\n      [\n        \"conf\",\n        -11.659457206726074\n      ],\n      [\n        \"▁browse\",\n        -11.659486770629883\n      ],\n      [\n        \"ural\",\n        -11.659762382507324\n      ],\n      [\n        \"▁Ah\",\n        -11.659841537475586\n      ],\n      [\n        \"▁stellt\",\n        -11.65992259979248\n      ],\n      [\n        \"▁ratings\",\n        -11.660012245178223\n      ],\n      [\n        \"▁Bowl\",\n        -11.660027503967285\n      ],\n      [\n        \"▁grav\",\n        -11.660289764404297\n      ],\n      [\n        \"titi\",\n        -11.66048526763916\n      ],\n      [\n        \"▁prêt\",\n        -11.66075325012207\n      ],\n      [\n        \"▁fallen\",\n        -11.660818099975586\n      ],\n      [\n        \"▁nombreuses\",\n        -11.660940170288086\n      ],\n      [\n        \"train\",\n        -11.660953521728516\n      ],\n      [\n        \"ène\",\n        -11.661009788513184\n      ],\n      [\n        \"Aceasta\",\n        -11.661091804504395\n      ],\n      [\n        \"▁drill\",\n        -11.661421775817871\n      ],\n      [\n        \"▁Exam\",\n        -11.661477088928223\n      ],\n      [\n        \"▁Furniture\",\n        -11.661651611328125\n      ],\n      [\n        \"eanu\",\n        -11.661919593811035\n      ],\n      [\n        \"étant\",\n        -11.66230297088623\n      ],\n      [\n        \"sville\",\n        -11.662391662597656\n      ],\n      [\n        \"▁swim\",\n        -11.662796020507812\n      ],\n      [\n        \"▁routes\",\n        -11.662826538085938\n      ],\n      [\n        \"INE\",\n        -11.662860870361328\n      ],\n      [\n        \"▁Por\",\n        -11.662976264953613\n      ],\n      [\n        \"ither\",\n        -11.663168907165527\n      ],\n      [\n        \"▁optim\",\n        -11.663180351257324\n      ],\n      [\n        \"▁lua\",\n        -11.66331958770752\n      ],\n      [\n        \"▁myth\",\n        -11.663491249084473\n      ],\n      [\n        \"▁Bett\",\n        -11.6635103225708\n      ],\n      [\n        \"chim\",\n        -11.66355037689209\n      ],\n      [\n        \"▁cyber\",\n        -11.663553237915039\n      ],\n      [\n        \"▁engineer\",\n        -11.663825035095215\n      ],\n      [\n        \"▁exploration\",\n        -11.663918495178223\n      ],\n      [\n        \"arranged\",\n        -11.663973808288574\n      ],\n      [\n        \"▁aged\",\n        -11.663993835449219\n      ],\n      [\n        \"▁beau\",\n        -11.664024353027344\n      ],\n      [\n        \"OUT\",\n        -11.66402530670166\n      ],\n      [\n        \"▁Minnesota\",\n        -11.664031982421875\n      ],\n      [\n        \"tress\",\n        -11.664407730102539\n      ],\n      [\n        \"▁Commercial\",\n        -11.664509773254395\n      ],\n      [\n        \"▁inspiring\",\n        -11.66462516784668\n      ],\n      [\n        \"▁Mare\",\n        -11.664725303649902\n      ],\n      [\n        \"apa\",\n        -11.665140151977539\n      ],\n      [\n        \"▁ignore\",\n        -11.6651611328125\n      ],\n      [\n        \"▁gros\",\n        -11.665186882019043\n      ],\n      [\n        \"▁measurement\",\n        -11.66531753540039\n      ],\n      [\n        \"ager\",\n        -11.665395736694336\n      ],\n      [\n        \"intele\",\n        -11.665966987609863\n      ],\n      [\n        \"▁suspension\",\n        -11.666180610656738\n      ],\n      [\n        \"▁cultures\",\n        -11.666211128234863\n      ],\n      [\n        \"▁Wow\",\n        -11.666231155395508\n      ],\n      [\n        \"▁pushing\",\n        -11.666363716125488\n      ],\n      [\n        \"▁bands\",\n        -11.666438102722168\n      ],\n      [\n        \"nage\",\n        -11.666450500488281\n      ],\n      [\n        \"▁Math\",\n        -11.666515350341797\n      ],\n      [\n        \"comb\",\n        -11.66658878326416\n      ],\n      [\n        \"▁créer\",\n        -11.66658878326416\n      ],\n      [\n        \"▁Lewis\",\n        -11.666685104370117\n      ],\n      [\n        \"▁VI\",\n        -11.66678524017334\n      ],\n      [\n        \"emploi\",\n        -11.666791915893555\n      ],\n      [\n        \"▁elections\",\n        -11.666890144348145\n      ],\n      [\n        \"▁logic\",\n        -11.666982650756836\n      ],\n      [\n        \"▁unlike\",\n        -11.667122840881348\n      ],\n      [\n        \"▁Matthew\",\n        -11.66743278503418\n      ],\n      [\n        \"▁pă\",\n        -11.667486190795898\n      ],\n      [\n        \"oxy\",\n        -11.667620658874512\n      ],\n      [\n        \"équipe\",\n        -11.667717933654785\n      ],\n      [\n        \"▁worden\",\n        -11.668088912963867\n      ],\n      [\n        \"dev\",\n        -11.668258666992188\n      ],\n      [\n        \"▁Massachusetts\",\n        -11.668691635131836\n      ],\n      [\n        \"▁Return\",\n        -11.668695449829102\n      ],\n      [\n        \"▁Friends\",\n        -11.66891098022461\n      ],\n      [\n        \"▁movements\",\n        -11.66894245147705\n      ],\n      [\n        \"chie\",\n        -11.668964385986328\n      ],\n      [\n        \"rak\",\n        -11.669017791748047\n      ],\n      [\n        \"▁Fit\",\n        -11.66904354095459\n      ],\n      [\n        \"▁copil\",\n        -11.669113159179688\n      ],\n      [\n        \"iunii\",\n        -11.669188499450684\n      ],\n      [\n        \"▁intensive\",\n        -11.669234275817871\n      ],\n      [\n        \"▁rug\",\n        -11.669452667236328\n      ],\n      [\n        \"lichkeit\",\n        -11.669686317443848\n      ],\n      [\n        \"kov\",\n        -11.669724464416504\n      ],\n      [\n        \"▁pense\",\n        -11.66978645324707\n      ],\n      [\n        \"pop\",\n        -11.66978931427002\n      ],\n      [\n        \"▁closet\",\n        -11.669865608215332\n      ],\n      [\n        \"▁prevention\",\n        -11.669920921325684\n      ],\n      [\n        \"▁Deb\",\n        -11.670256614685059\n      ],\n      [\n        \"▁devant\",\n        -11.670430183410645\n      ],\n      [\n        \"▁construit\",\n        -11.670440673828125\n      ],\n      [\n        \"▁breaks\",\n        -11.67082405090332\n      ],\n      [\n        \"otic\",\n        -11.670886993408203\n      ],\n      [\n        \"▁dig\",\n        -11.67088794708252\n      ],\n      [\n        \"▁près\",\n        -11.670930862426758\n      ],\n      [\n        \"chte\",\n        -11.671029090881348\n      ],\n      [\n        \"▁Chat\",\n        -11.671029090881348\n      ],\n      [\n        \"wel\",\n        -11.671219825744629\n      ],\n      [\n        \"▁edges\",\n        -11.671272277832031\n      ],\n      [\n        \"▁keen\",\n        -11.671419143676758\n      ],\n      [\n        \"▁infant\",\n        -11.671716690063477\n      ],\n      [\n        \"▁Hills\",\n        -11.6719388961792\n      ],\n      [\n        \"▁grounds\",\n        -11.671969413757324\n      ],\n      [\n        \"▁hab\",\n        -11.672039031982422\n      ],\n      [\n        \"▁Mun\",\n        -11.67215347290039\n      ],\n      [\n        \"▁references\",\n        -11.672215461730957\n      ],\n      [\n        \"▁hearts\",\n        -11.672446250915527\n      ],\n      [\n        \"exprim\",\n        -11.672487258911133\n      ],\n      [\n        \"▁tratament\",\n        -11.672553062438965\n      ],\n      [\n        \"LD\",\n        -11.67258358001709\n      ],\n      [\n        \"ssel\",\n        -11.67275333404541\n      ],\n      [\n        \"cover\",\n        -11.672782897949219\n      ],\n      [\n        \"bridge\",\n        -11.672837257385254\n      ],\n      [\n        \"▁Wein\",\n        -11.672924995422363\n      ],\n      [\n        \"▁voiture\",\n        -11.673035621643066\n      ],\n      [\n        \"▁Gemeinde\",\n        -11.67313289642334\n      ],\n      [\n        \"AI\",\n        -11.673169136047363\n      ],\n      [\n        \"▁renovation\",\n        -11.673264503479004\n      ],\n      [\n        \"bid\",\n        -11.673285484313965\n      ],\n      [\n        \"▁Reading\",\n        -11.673481941223145\n      ],\n      [\n        \"▁Gor\",\n        -11.673490524291992\n      ],\n      [\n        \"fur\",\n        -11.673527717590332\n      ],\n      [\n        \"▁Yoga\",\n        -11.673544883728027\n      ],\n      [\n        \"▁exclusively\",\n        -11.673630714416504\n      ],\n      [\n        \"▁emissions\",\n        -11.67385482788086\n      ],\n      [\n        \"ète\",\n        -11.673905372619629\n      ],\n      [\n        \"▁glasses\",\n        -11.674055099487305\n      ],\n      [\n        \"▁organizat\",\n        -11.674135208129883\n      ],\n      [\n        \"▁washing\",\n        -11.67415714263916\n      ],\n      [\n        \"▁Audi\",\n        -11.674173355102539\n      ],\n      [\n        \"▁Labor\",\n        -11.674331665039062\n      ],\n      [\n        \"▁legacy\",\n        -11.674381256103516\n      ],\n      [\n        \"▁abstract\",\n        -11.674519538879395\n      ],\n      [\n        \"▁knowledgeable\",\n        -11.674601554870605\n      ],\n      [\n        \"▁Glo\",\n        -11.674795150756836\n      ],\n      [\n        \"▁pregnant\",\n        -11.67481803894043\n      ],\n      [\n        \"liter\",\n        -11.674851417541504\n      ],\n      [\n        \"▁paintings\",\n        -11.67522144317627\n      ],\n      [\n        \"▁tête\",\n        -11.675244331359863\n      ],\n      [\n        \"voy\",\n        -11.675626754760742\n      ],\n      [\n        \"▁Jacob\",\n        -11.675667762756348\n      ],\n      [\n        \"▁dressing\",\n        -11.675679206848145\n      ],\n      [\n        \"▁provisions\",\n        -11.675768852233887\n      ],\n      [\n        \"bahn\",\n        -11.675870895385742\n      ],\n      [\n        \"▁depict\",\n        -11.675875663757324\n      ],\n      [\n        \"AW\",\n        -11.676068305969238\n      ],\n      [\n        \"▁bleibt\",\n        -11.676163673400879\n      ],\n      [\n        \"AND\",\n        -11.676292419433594\n      ],\n      [\n        \"▁fünf\",\n        -11.676386833190918\n      ],\n      [\n        \"▁hosts\",\n        -11.676426887512207\n      ],\n      [\n        \"vas\",\n        -11.676708221435547\n      ],\n      [\n        \"DO\",\n        -11.67674732208252\n      ],\n      [\n        \"▁max\",\n        -11.676753997802734\n      ],\n      [\n        \"▁contributed\",\n        -11.676774978637695\n      ],\n      [\n        \"roz\",\n        -11.676796913146973\n      ],\n      [\n        \"▁deschis\",\n        -11.676800727844238\n      ],\n      [\n        \"itaire\",\n        -11.676809310913086\n      ],\n      [\n        \"tube\",\n        -11.676959991455078\n      ],\n      [\n        \"▁Beck\",\n        -11.676959991455078\n      ],\n      [\n        \"▁curious\",\n        -11.677130699157715\n      ],\n      [\n        \"▁waves\",\n        -11.677178382873535\n      ],\n      [\n        \"▁regret\",\n        -11.677248001098633\n      ],\n      [\n        \"FO\",\n        -11.677326202392578\n      ],\n      [\n        \"droit\",\n        -11.67734146118164\n      ],\n      [\n        \"rö\",\n        -11.677565574645996\n      ],\n      [\n        \"▁Panel\",\n        -11.677624702453613\n      ],\n      [\n        \"▁pile\",\n        -11.677660942077637\n      ],\n      [\n        \"▁installing\",\n        -11.677674293518066\n      ],\n      [\n        \"▁Intr\",\n        -11.677797317504883\n      ],\n      [\n        \"nung\",\n        -11.677823066711426\n      ],\n      [\n        \"▁Outdoor\",\n        -11.677855491638184\n      ],\n      [\n        \"▁generator\",\n        -11.67786693572998\n      ],\n      [\n        \"▁zahlreiche\",\n        -11.677868843078613\n      ],\n      [\n        \"▁Third\",\n        -11.67813491821289\n      ],\n      [\n        \"frac\",\n        -11.678180694580078\n      ],\n      [\n        \"ovi\",\n        -11.678236961364746\n      ],\n      [\n        \"▁Casa\",\n        -11.678374290466309\n      ],\n      [\n        \"▁stomach\",\n        -11.678393363952637\n      ],\n      [\n        \"▁Lincoln\",\n        -11.67844009399414\n      ],\n      [\n        \"▁Electronic\",\n        -11.678584098815918\n      ],\n      [\n        \"coding\",\n        -11.67895221710205\n      ],\n      [\n        \"2017\",\n        -11.67900276184082\n      ],\n      [\n        \"▁friendship\",\n        -11.679238319396973\n      ],\n      [\n        \"ried\",\n        -11.679250717163086\n      ],\n      [\n        \"но\",\n        -11.679265022277832\n      ],\n      [\n        \"▁tail\",\n        -11.679267883300781\n      ],\n      [\n        \"▁petits\",\n        -11.679308891296387\n      ],\n      [\n        \"▁réseau\",\n        -11.679696083068848\n      ],\n      [\n        \"▁churches\",\n        -11.679999351501465\n      ],\n      [\n        \"▁marketplace\",\n        -11.680062294006348\n      ],\n      [\n        \"▁Pool\",\n        -11.680318832397461\n      ],\n      [\n        \"▁popularity\",\n        -11.680455207824707\n      ],\n      [\n        \"▁sprijin\",\n        -11.680496215820312\n      ],\n      [\n        \"▁Od\",\n        -11.680527687072754\n      ],\n      [\n        \"▁Transfer\",\n        -11.680562973022461\n      ],\n      [\n        \"▁fake\",\n        -11.680791854858398\n      ],\n      [\n        \"▁9,\",\n        -11.681007385253906\n      ],\n      [\n        \"▁weit\",\n        -11.681264877319336\n      ],\n      [\n        \"▁relaxed\",\n        -11.681415557861328\n      ],\n      [\n        \"pig\",\n        -11.68161678314209\n      ],\n      [\n        \"▁Lauren\",\n        -11.68166732788086\n      ],\n      [\n        \"gesetzt\",\n        -11.681669235229492\n      ],\n      [\n        \"▁Clar\",\n        -11.681694984436035\n      ],\n      [\n        \"▁unlikely\",\n        -11.681731224060059\n      ],\n      [\n        \"color\",\n        -11.681832313537598\n      ],\n      [\n        \"▁spouse\",\n        -11.681843757629395\n      ],\n      [\n        \"▁facile\",\n        -11.681859970092773\n      ],\n      [\n        \"▁Speed\",\n        -11.681872367858887\n      ],\n      [\n        \"KE\",\n        -11.682230949401855\n      ],\n      [\n        \"▁PO\",\n        -11.68231201171875\n      ],\n      [\n        \"▁Channel\",\n        -11.682321548461914\n      ],\n      [\n        \"argent\",\n        -11.682356834411621\n      ],\n      [\n        \"▁Making\",\n        -11.682430267333984\n      ],\n      [\n        \"▁Coll\",\n        -11.682585716247559\n      ],\n      [\n        \"cci\",\n        -11.682721138000488\n      ],\n      [\n        \"corresponding\",\n        -11.68300724029541\n      ],\n      [\n        \"▁heaven\",\n        -11.683160781860352\n      ],\n      [\n        \"ţă\",\n        -11.68319320678711\n      ],\n      [\n        \"▁darüber\",\n        -11.683236122131348\n      ],\n      [\n        \"acted\",\n        -11.683420181274414\n      ],\n      [\n        \"only\",\n        -11.683460235595703\n      ],\n      [\n        \"▁slight\",\n        -11.683465003967285\n      ],\n      [\n        \"lian\",\n        -11.68348503112793\n      ],\n      [\n        \"flă\",\n        -11.683510780334473\n      ],\n      [\n        \"▁vulnerable\",\n        -11.683530807495117\n      ],\n      [\n        \"▁creator\",\n        -11.68356704711914\n      ],\n      [\n        \"▁protecting\",\n        -11.68360424041748\n      ],\n      [\n        \"writing\",\n        -11.68360710144043\n      ],\n      [\n        \"▁Ter\",\n        -11.68387222290039\n      ],\n      [\n        \"▁barb\",\n        -11.683987617492676\n      ],\n      [\n        \"▁dată\",\n        -11.683995246887207\n      ],\n      [\n        \"▁Screen\",\n        -11.684052467346191\n      ],\n      [\n        \"▁BBC\",\n        -11.684082984924316\n      ],\n      [\n        \"Col\",\n        -11.684206008911133\n      ],\n      [\n        \"fung\",\n        -11.684453964233398\n      ],\n      [\n        \"▁dreptul\",\n        -11.684494972229004\n      ],\n      [\n        \"derived\",\n        -11.684538841247559\n      ],\n      [\n        \"▁designated\",\n        -11.684553146362305\n      ],\n      [\n        \"▁interactions\",\n        -11.684617042541504\n      ],\n      [\n        \"SG\",\n        -11.684621810913086\n      ],\n      [\n        \"▁häufig\",\n        -11.684625625610352\n      ],\n      [\n        \"▁Mega\",\n        -11.684638023376465\n      ],\n      [\n        \"▁jazz\",\n        -11.684660911560059\n      ],\n      [\n        \"lbs\",\n        -11.684797286987305\n      ],\n      [\n        \"▁Manual\",\n        -11.68484115600586\n      ],\n      [\n        \"pushed\",\n        -11.685017585754395\n      ],\n      [\n        \"▁analytics\",\n        -11.685234069824219\n      ],\n      [\n        \"▁lawsuit\",\n        -11.68533706665039\n      ],\n      [\n        \"▁gray\",\n        -11.685364723205566\n      ],\n      [\n        \"shirts\",\n        -11.685401916503906\n      ],\n      [\n        \"▁hill\",\n        -11.685508728027344\n      ],\n      [\n        \"▁1991\",\n        -11.68550968170166\n      ],\n      [\n        \"▁obligations\",\n        -11.685568809509277\n      ],\n      [\n        \"▁Dubai\",\n        -11.68580436706543\n      ],\n      [\n        \"()\",\n        -11.685808181762695\n      ],\n      [\n        \"▁acceptable\",\n        -11.685810089111328\n      ],\n      [\n        \"therapist\",\n        -11.685877799987793\n      ],\n      [\n        \"inger\",\n        -11.6860990524292\n      ],\n      [\n        \"▁territory\",\n        -11.686208724975586\n      ],\n      [\n        \"▁sang\",\n        -11.6862211227417\n      ],\n      [\n        \"ät\",\n        -11.686224937438965\n      ],\n      [\n        \"▁Zukunft\",\n        -11.686238288879395\n      ],\n      [\n        \"TU\",\n        -11.68657398223877\n      ],\n      [\n        \"▁horizontal\",\n        -11.68665599822998\n      ],\n      [\n        \"▁entrepreneurs\",\n        -11.686710357666016\n      ],\n      [\n        \"▁Eltern\",\n        -11.687017440795898\n      ],\n      [\n        \"▁presentations\",\n        -11.687129974365234\n      ],\n      [\n        \"▁confirmation\",\n        -11.687173843383789\n      ],\n      [\n        \"▁technological\",\n        -11.687432289123535\n      ],\n      [\n        \"▁1989\",\n        -11.687530517578125\n      ],\n      [\n        \"EF\",\n        -11.687640190124512\n      ],\n      [\n        \"ponent\",\n        -11.687663078308105\n      ],\n      [\n        \"NET\",\n        -11.687699317932129\n      ],\n      [\n        \"750\",\n        -11.687772750854492\n      ],\n      [\n        \"▁desert\",\n        -11.687891960144043\n      ],\n      [\n        \"▁contribu\",\n        -11.687932968139648\n      ],\n      [\n        \"▁Gun\",\n        -11.687944412231445\n      ],\n      [\n        \"▁Juli\",\n        -11.688091278076172\n      ],\n      [\n        \"ERS\",\n        -11.688261985778809\n      ],\n      [\n        \"▁inceput\",\n        -11.688261985778809\n      ],\n      [\n        \"▁answered\",\n        -11.688369750976562\n      ],\n      [\n        \"▁basement\",\n        -11.688410758972168\n      ],\n      [\n        \"film\",\n        -11.688434600830078\n      ],\n      [\n        \"▁taille\",\n        -11.688593864440918\n      ],\n      [\n        \"▁survival\",\n        -11.688655853271484\n      ],\n      [\n        \"ihnen\",\n        -11.68869400024414\n      ],\n      [\n        \"▁Bird\",\n        -11.688840866088867\n      ],\n      [\n        \"speed\",\n        -11.689336776733398\n      ],\n      [\n        \"▁journalist\",\n        -11.68941879272461\n      ],\n      [\n        \"▁Indonesia\",\n        -11.689626693725586\n      ],\n      [\n        \"▁15.\",\n        -11.689973831176758\n      ],\n      [\n        \"▁19.\",\n        -11.690025329589844\n      ],\n      [\n        \"étaient\",\n        -11.690114974975586\n      ],\n      [\n        \"▁tennis\",\n        -11.69024658203125\n      ],\n      [\n        \"▁aproximativ\",\n        -11.69039249420166\n      ],\n      [\n        \"▁Hans\",\n        -11.690650939941406\n      ],\n      [\n        \"▁Remove\",\n        -11.69067096710205\n      ],\n      [\n        \"▁cats\",\n        -11.691022872924805\n      ],\n      [\n        \"▁calories\",\n        -11.691052436828613\n      ],\n      [\n        \"▁limitations\",\n        -11.69119644165039\n      ],\n      [\n        \"▁subscribe\",\n        -11.691198348999023\n      ],\n      [\n        \"▁Dem\",\n        -11.691339492797852\n      ],\n      [\n        \"lust\",\n        -11.691370010375977\n      ],\n      [\n        \"▁adresa\",\n        -11.691394805908203\n      ],\n      [\n        \"▁sais\",\n        -11.69140911102295\n      ],\n      [\n        \"...\\\"\",\n        -11.691473960876465\n      ],\n      [\n        \"▁Luft\",\n        -11.691485404968262\n      ],\n      [\n        \"DL\",\n        -11.691597938537598\n      ],\n      [\n        \"▁estimates\",\n        -11.691600799560547\n      ],\n      [\n        \"▁protocol\",\n        -11.691603660583496\n      ],\n      [\n        \"▁Namen\",\n        -11.691776275634766\n      ],\n      [\n        \"▁grands\",\n        -11.691901206970215\n      ],\n      [\n        \"▁voter\",\n        -11.691970825195312\n      ],\n      [\n        \"▁vacuum\",\n        -11.692075729370117\n      ],\n      [\n        \"▁versch\",\n        -11.692103385925293\n      ],\n      [\n        \"▁Democratic\",\n        -11.692107200622559\n      ],\n      [\n        \"▁Books\",\n        -11.692170143127441\n      ],\n      [\n        \"▁frames\",\n        -11.692727088928223\n      ],\n      [\n        \"▁Bee\",\n        -11.692864418029785\n      ],\n      [\n        \"▁helfen\",\n        -11.692934036254883\n      ],\n      [\n        \"▁dive\",\n        -11.692963600158691\n      ],\n      [\n        \"▁physician\",\n        -11.693037033081055\n      ],\n      [\n        \"▁powered\",\n        -11.693131446838379\n      ],\n      [\n        \"▁zones\",\n        -11.693337440490723\n      ],\n      [\n        \"▁regime\",\n        -11.69345474243164\n      ],\n      [\n        \"check\",\n        -11.693578720092773\n      ],\n      [\n        \"11.\",\n        -11.693793296813965\n      ],\n      [\n        \"▁plaisir\",\n        -11.693793296813965\n      ],\n      [\n        \"▁physically\",\n        -11.693811416625977\n      ],\n      [\n        \"▁Pul\",\n        -11.694245338439941\n      ],\n      [\n        \"▁jardin\",\n        -11.694294929504395\n      ],\n      [\n        \"▁Nur\",\n        -11.694417953491211\n      ],\n      [\n        \"WC\",\n        -11.694425582885742\n      ],\n      [\n        \"▁Lock\",\n        -11.694506645202637\n      ],\n      [\n        \"▁économique\",\n        -11.694530487060547\n      ],\n      [\n        \"user\",\n        -11.694536209106445\n      ],\n      [\n        \"▁commit\",\n        -11.694731712341309\n      ],\n      [\n        \"▁oldest\",\n        -11.694764137268066\n      ],\n      [\n        \"▁fulfill\",\n        -11.694780349731445\n      ],\n      [\n        \"▁nervous\",\n        -11.69482135772705\n      ],\n      [\n        \"▁SH\",\n        -11.695014953613281\n      ],\n      [\n        \"SK\",\n        -11.695150375366211\n      ],\n      [\n        \"▁plein\",\n        -11.695291519165039\n      ],\n      [\n        \"show\",\n        -11.695354461669922\n      ],\n      [\n        \"▁disability\",\n        -11.695356369018555\n      ],\n      [\n        \"papier\",\n        -11.69544506072998\n      ],\n      [\n        \"▁Corp\",\n        -11.695611000061035\n      ],\n      [\n        \"ători\",\n        -11.695676803588867\n      ],\n      [\n        \"nţă\",\n        -11.695813179016113\n      ],\n      [\n        \"▁overseas\",\n        -11.696009635925293\n      ],\n      [\n        \"▁struck\",\n        -11.69603157043457\n      ],\n      [\n        \"astic\",\n        -11.69607162475586\n      ],\n      [\n        \"▁advised\",\n        -11.696088790893555\n      ],\n      [\n        \"BE\",\n        -11.696161270141602\n      ],\n      [\n        \"▁UV\",\n        -11.696218490600586\n      ],\n      [\n        \"patient\",\n        -11.69626235961914\n      ],\n      [\n        \"▁texte\",\n        -11.696344375610352\n      ],\n      [\n        \"▁timely\",\n        -11.696444511413574\n      ],\n      [\n        \"used\",\n        -11.696471214294434\n      ],\n      [\n        \"▁occasionally\",\n        -11.696524620056152\n      ],\n      [\n        \"▁entries\",\n        -11.696550369262695\n      ],\n      [\n        \"underlying\",\n        -11.6967191696167\n      ],\n      [\n        \"01.\",\n        -11.696748733520508\n      ],\n      [\n        \"▁automated\",\n        -11.696791648864746\n      ],\n      [\n        \"yes\",\n        -11.696828842163086\n      ],\n      [\n        \"▁Staff\",\n        -11.697057723999023\n      ],\n      [\n        \"▁Einzel\",\n        -11.697546005249023\n      ],\n      [\n        \"quit\",\n        -11.697687149047852\n      ],\n      [\n        \"▁Cela\",\n        -11.697951316833496\n      ],\n      [\n        \"▁snap\",\n        -11.698298454284668\n      ],\n      [\n        \"▁followers\",\n        -11.698330879211426\n      ],\n      [\n        \"CN\",\n        -11.698709487915039\n      ],\n      [\n        \"▁Cooper\",\n        -11.698892593383789\n      ],\n      [\n        \"ô\",\n        -11.698921203613281\n      ],\n      [\n        \"▁memorable\",\n        -11.698965072631836\n      ],\n      [\n        \"▁jur\",\n        -11.698996543884277\n      ],\n      [\n        \"▁ajutorul\",\n        -11.69905948638916\n      ],\n      [\n        \"▁Enter\",\n        -11.6991548538208\n      ],\n      [\n        \"Often\",\n        -11.699294090270996\n      ],\n      [\n        \"▁dintr\",\n        -11.699341773986816\n      ],\n      [\n        \"-30\",\n        -11.699419975280762\n      ],\n      [\n        \"ESS\",\n        -11.699454307556152\n      ],\n      [\n        \"▁weird\",\n        -11.699462890625\n      ],\n      [\n        \"▁Animal\",\n        -11.699706077575684\n      ],\n      [\n        \"▁complement\",\n        -11.699719429016113\n      ],\n      [\n        \"▁Bot\",\n        -11.699756622314453\n      ],\n      [\n        \"▁darf\",\n        -11.699764251708984\n      ],\n      [\n        \"yed\",\n        -11.699808120727539\n      ],\n      [\n        \"▁Mul\",\n        -11.699872016906738\n      ],\n      [\n        \"lick\",\n        -11.700080871582031\n      ],\n      [\n        \"▁Cambridge\",\n        -11.700216293334961\n      ],\n      [\n        \"adore\",\n        -11.700407981872559\n      ],\n      [\n        \"▁Dutch\",\n        -11.700420379638672\n      ],\n      [\n        \"▁Castle\",\n        -11.700431823730469\n      ],\n      [\n        \"igi\",\n        -11.700563430786133\n      ],\n      [\n        \"▁enemy\",\n        -11.70071029663086\n      ],\n      [\n        \"accompanied\",\n        -11.700725555419922\n      ],\n      [\n        \"▁teren\",\n        -11.701102256774902\n      ],\n      [\n        \"▁ET\",\n        -11.701498985290527\n      ],\n      [\n        \"ffle\",\n        -11.701557159423828\n      ],\n      [\n        \"-15\",\n        -11.701651573181152\n      ],\n      [\n        \"▁Geo\",\n        -11.701680183410645\n      ],\n      [\n        \"▁attractions\",\n        -11.701730728149414\n      ],\n      [\n        \"iker\",\n        -11.70185661315918\n      ],\n      [\n        \"▁bă\",\n        -11.701990127563477\n      ],\n      [\n        \"▁heal\",\n        -11.701995849609375\n      ],\n      [\n        \"weisen\",\n        -11.702144622802734\n      ],\n      [\n        \"▁spectrum\",\n        -11.702186584472656\n      ],\n      [\n        \"meld\",\n        -11.702394485473633\n      ],\n      [\n        \"▁eveniment\",\n        -11.70247745513916\n      ],\n      [\n        \"arra\",\n        -11.702478408813477\n      ],\n      [\n        \"rete\",\n        -11.70250129699707\n      ],\n      [\n        \"▁Had\",\n        -11.70250415802002\n      ],\n      [\n        \"looking\",\n        -11.702692031860352\n      ],\n      [\n        \"isierung\",\n        -11.702805519104004\n      ],\n      [\n        \"▁moyen\",\n        -11.703129768371582\n      ],\n      [\n        \"▁gesamte\",\n        -11.703202247619629\n      ],\n      [\n        \"▁destroy\",\n        -11.703407287597656\n      ],\n      [\n        \"125\",\n        -11.703518867492676\n      ],\n      [\n        \"▁suivant\",\n        -11.703913688659668\n      ],\n      [\n        \"▁declared\",\n        -11.703925132751465\n      ],\n      [\n        \"▁Urban\",\n        -11.704131126403809\n      ],\n      [\n        \"▁16.\",\n        -11.704168319702148\n      ],\n      [\n        \"▁Beg\",\n        -11.704168319702148\n      ],\n      [\n        \"▁canal\",\n        -11.704225540161133\n      ],\n      [\n        \"▁Pres\",\n        -11.70431137084961\n      ],\n      [\n        \"▁geeignet\",\n        -11.704339981079102\n      ],\n      [\n        \"▁strat\",\n        -11.704365730285645\n      ],\n      [\n        \"UB\",\n        -11.704395294189453\n      ],\n      [\n        \"▁Alexander\",\n        -11.704424858093262\n      ],\n      [\n        \"cycle\",\n        -11.704666137695312\n      ],\n      [\n        \"▁Var\",\n        -11.704802513122559\n      ],\n      [\n        \"▁domin\",\n        -11.704805374145508\n      ],\n      [\n        \"▁lasting\",\n        -11.704939842224121\n      ],\n      [\n        \"terio\",\n        -11.705262184143066\n      ],\n      [\n        \"▁Battle\",\n        -11.705339431762695\n      ],\n      [\n        \"▁publications\",\n        -11.705647468566895\n      ],\n      [\n        \"▁implica\",\n        -11.705886840820312\n      ],\n      [\n        \"▁NA\",\n        -11.705963134765625\n      ],\n      [\n        \"▁stocks\",\n        -11.706036567687988\n      ],\n      [\n        \"Plat\",\n        -11.70611572265625\n      ],\n      [\n        \"▁excitement\",\n        -11.706149101257324\n      ],\n      [\n        \"▁Muslim\",\n        -11.706524848937988\n      ],\n      [\n        \"▁Mari\",\n        -11.706530570983887\n      ],\n      [\n        \"▁Ul\",\n        -11.706647872924805\n      ],\n      [\n        \"nächst\",\n        -11.706757545471191\n      ],\n      [\n        \"▁trait\",\n        -11.706833839416504\n      ],\n      [\n        \"▁(3)\",\n        -11.706852912902832\n      ],\n      [\n        \"▁Attorney\",\n        -11.706894874572754\n      ],\n      [\n        \"▁Malaysia\",\n        -11.70689582824707\n      ],\n      [\n        \"▁slab\",\n        -11.706960678100586\n      ],\n      [\n        \"▁dam\",\n        -11.707113265991211\n      ],\n      [\n        \"▁Bir\",\n        -11.707226753234863\n      ],\n      [\n        \"▁sing\",\n        -11.70738410949707\n      ],\n      [\n        \"▁Culture\",\n        -11.7073974609375\n      ],\n      [\n        \"UD\",\n        -11.707417488098145\n      ],\n      [\n        \"▁Mes\",\n        -11.707443237304688\n      ],\n      [\n        \"ități\",\n        -11.707615852355957\n      ],\n      [\n        \"▁possess\",\n        -11.708173751831055\n      ],\n      [\n        \"enabling\",\n        -11.70820426940918\n      ],\n      [\n        \"▁settled\",\n        -11.708335876464844\n      ],\n      [\n        \"▁sagen\",\n        -11.708492279052734\n      ],\n      [\n        \"▁erfolgt\",\n        -11.708564758300781\n      ],\n      [\n        \"dog\",\n        -11.708600997924805\n      ],\n      [\n        \"ndu\",\n        -11.708732604980469\n      ],\n      [\n        \"ității\",\n        -11.708745002746582\n      ],\n      [\n        \"▁Islam\",\n        -11.708930015563965\n      ],\n      [\n        \"▁catalog\",\n        -11.708931922912598\n      ],\n      [\n        \"▁simt\",\n        -11.709102630615234\n      ],\n      [\n        \"tische\",\n        -11.709150314331055\n      ],\n      [\n        \"▁Mach\",\n        -11.709334373474121\n      ],\n      [\n        \"▁EP\",\n        -11.709359169006348\n      ],\n      [\n        \"▁Certified\",\n        -11.709386825561523\n      ],\n      [\n        \"▁Resources\",\n        -11.70945930480957\n      ],\n      [\n        \"▁Past\",\n        -11.709607124328613\n      ],\n      [\n        \"▁Termin\",\n        -11.709755897521973\n      ],\n      [\n        \"▁lightweight\",\n        -11.709755897521973\n      ],\n      [\n        \"▁championship\",\n        -11.70994758605957\n      ],\n      [\n        \"gebiet\",\n        -11.710122108459473\n      ],\n      [\n        \"▁jurisdiction\",\n        -11.710135459899902\n      ],\n      [\n        \"▁euros\",\n        -11.710169792175293\n      ],\n      [\n        \"▁Familien\",\n        -11.710554122924805\n      ],\n      [\n        \"▁GT\",\n        -11.710677146911621\n      ],\n      [\n        \"▁dvs\",\n        -11.71081256866455\n      ],\n      [\n        \"▁nouveaux\",\n        -11.710838317871094\n      ],\n      [\n        \"▁chill\",\n        -11.710916519165039\n      ],\n      [\n        \"▁ridicat\",\n        -11.710920333862305\n      ],\n      [\n        \"his\",\n        -11.711079597473145\n      ],\n      [\n        \"▁Indi\",\n        -11.711159706115723\n      ],\n      [\n        \"▁arrested\",\n        -11.71116828918457\n      ],\n      [\n        \"ităţii\",\n        -11.711170196533203\n      ],\n      [\n        \"onul\",\n        -11.711274147033691\n      ],\n      [\n        \"appar\",\n        -11.711296081542969\n      ],\n      [\n        \"▁Bachelor\",\n        -11.711297988891602\n      ],\n      [\n        \"▁erfolgreich\",\n        -11.711426734924316\n      ],\n      [\n        \"▁versatile\",\n        -11.71163558959961\n      ],\n      [\n        \"▁nécessaire\",\n        -11.711761474609375\n      ],\n      [\n        \"▁facial\",\n        -11.712160110473633\n      ],\n      [\n        \"▁Bull\",\n        -11.712226867675781\n      ],\n      [\n        \"Comm\",\n        -11.712237358093262\n      ],\n      [\n        \"atte\",\n        -11.712307929992676\n      ],\n      [\n        \"hom\",\n        -11.7123384475708\n      ],\n      [\n        \"start\",\n        -11.712576866149902\n      ],\n      [\n        \"▁roughly\",\n        -11.712936401367188\n      ],\n      [\n        \"▁bay\",\n        -11.712984085083008\n      ],\n      [\n        \"▁american\",\n        -11.712986946105957\n      ],\n      [\n        \"▁Wisconsin\",\n        -11.713135719299316\n      ],\n      [\n        \"▁Clinton\",\n        -11.713142395019531\n      ],\n      [\n        \"appareil\",\n        -11.713153839111328\n      ],\n      [\n        \"▁liberal\",\n        -11.713455200195312\n      ],\n      [\n        \"▁dau\",\n        -11.713519096374512\n      ],\n      [\n        \"ech\",\n        -11.713521957397461\n      ],\n      [\n        \"2014\",\n        -11.713624000549316\n      ],\n      [\n        \"▁lip\",\n        -11.713645935058594\n      ],\n      [\n        \"▁maintenant\",\n        -11.713762283325195\n      ],\n      [\n        \"▁Sil\",\n        -11.713805198669434\n      ],\n      [\n        \"rben\",\n        -11.713891983032227\n      ],\n      [\n        \"▁contents\",\n        -11.713980674743652\n      ],\n      [\n        \"▁magnetic\",\n        -11.714111328125\n      ],\n      [\n        \"▁terre\",\n        -11.714151382446289\n      ],\n      [\n        \"▁Rights\",\n        -11.714475631713867\n      ],\n      [\n        \"lose\",\n        -11.714570045471191\n      ],\n      [\n        \"▁crown\",\n        -11.71468448638916\n      ],\n      [\n        \"▁oils\",\n        -11.7147216796875\n      ],\n      [\n        \"▁entertaining\",\n        -11.714841842651367\n      ],\n      [\n        \"▁Option\",\n        -11.714848518371582\n      ],\n      [\n        \"▁Previous\",\n        -11.714916229248047\n      ],\n      [\n        \"▁vrai\",\n        -11.714930534362793\n      ],\n      [\n        \"▁Auswahl\",\n        -11.715056419372559\n      ],\n      [\n        \"▁horses\",\n        -11.715106010437012\n      ],\n      [\n        \"▁Author\",\n        -11.71533489227295\n      ],\n      [\n        \"▁Writing\",\n        -11.715461730957031\n      ],\n      [\n        \"▁travelling\",\n        -11.715522766113281\n      ],\n      [\n        \"▁350\",\n        -11.715567588806152\n      ],\n      [\n        \"daten\",\n        -11.71560287475586\n      ],\n      [\n        \"zan\",\n        -11.715765953063965\n      ],\n      [\n        \"▁sweat\",\n        -11.715924263000488\n      ],\n      [\n        \"▁Junior\",\n        -11.715970993041992\n      ],\n      [\n        \"markt\",\n        -11.71609878540039\n      ],\n      [\n        \"after\",\n        -11.716105461120605\n      ],\n      [\n        \"▁admitted\",\n        -11.716262817382812\n      ],\n      [\n        \"▁1950\",\n        -11.716347694396973\n      ],\n      [\n        \"▁Sche\",\n        -11.71648120880127\n      ],\n      [\n        \"▁dorit\",\n        -11.716818809509277\n      ],\n      [\n        \"▁transferred\",\n        -11.716958045959473\n      ],\n      [\n        \"utilise\",\n        -11.717194557189941\n      ],\n      [\n        \"sitz\",\n        -11.717301368713379\n      ],\n      [\n        \"gio\",\n        -11.717320442199707\n      ],\n      [\n        \"▁bisher\",\n        -11.717473983764648\n      ],\n      [\n        \"RD\",\n        -11.717491149902344\n      ],\n      [\n        \"▁Wales\",\n        -11.717747688293457\n      ],\n      [\n        \"▁smoking\",\n        -11.717904090881348\n      ],\n      [\n        \"dire\",\n        -11.717939376831055\n      ],\n      [\n        \"▁seating\",\n        -11.717979431152344\n      ],\n      [\n        \"▁constat\",\n        -11.718056678771973\n      ],\n      [\n        \"▁Hub\",\n        -11.718324661254883\n      ],\n      [\n        \"▁sieht\",\n        -11.718345642089844\n      ],\n      [\n        \"▁prospect\",\n        -11.718378067016602\n      ],\n      [\n        \"▁RO\",\n        -11.718413352966309\n      ],\n      [\n        \"▁Wars\",\n        -11.718423843383789\n      ],\n      [\n        \"eek\",\n        -11.718496322631836\n      ],\n      [\n        \"▁Bring\",\n        -11.718646049499512\n      ],\n      [\n        \"▁bleiben\",\n        -11.718696594238281\n      ],\n      [\n        \"arri\",\n        -11.718826293945312\n      ],\n      [\n        \"inal\",\n        -11.718904495239258\n      ],\n      [\n        \"▁Maryland\",\n        -11.718932151794434\n      ],\n      [\n        \"▁Process\",\n        -11.719145774841309\n      ],\n      [\n        \"They\",\n        -11.719154357910156\n      ],\n      [\n        \"▁Oxford\",\n        -11.719176292419434\n      ],\n      [\n        \"▁neat\",\n        -11.719330787658691\n      ],\n      [\n        \"▁cinema\",\n        -11.719597816467285\n      ],\n      [\n        \"▁Ist\",\n        -11.719620704650879\n      ],\n      [\n        \"▁vegan\",\n        -11.719682693481445\n      ],\n      [\n        \"wall\",\n        -11.719708442687988\n      ],\n      [\n        \"▁motive\",\n        -11.72010612487793\n      ],\n      [\n        \"▁mature\",\n        -11.720544815063477\n      ],\n      [\n        \"▁Dragon\",\n        -11.720653533935547\n      ],\n      [\n        \"▁google\",\n        -11.720677375793457\n      ],\n      [\n        \"blick\",\n        -11.72110652923584\n      ],\n      [\n        \"▁Cod\",\n        -11.721220970153809\n      ],\n      [\n        \"▁suffi\",\n        -11.721319198608398\n      ],\n      [\n        \"▁terrorist\",\n        -11.721478462219238\n      ],\n      [\n        \"Posted\",\n        -11.721484184265137\n      ],\n      [\n        \"▁Schi\",\n        -11.72157096862793\n      ],\n      [\n        \"▁Marc\",\n        -11.721597671508789\n      ],\n      [\n        \"▁operates\",\n        -11.721661567687988\n      ],\n      [\n        \"gress\",\n        -11.721805572509766\n      ],\n      [\n        \"has\",\n        -11.721899032592773\n      ],\n      [\n        \"sole\",\n        -11.722108840942383\n      ],\n      [\n        \"▁Buck\",\n        -11.722122192382812\n      ],\n      [\n        \"impl\",\n        -11.722160339355469\n      ],\n      [\n        \"▁Ron\",\n        -11.722172737121582\n      ],\n      [\n        \"▁handled\",\n        -11.722346305847168\n      ],\n      [\n        \"▁Apr\",\n        -11.722347259521484\n      ],\n      [\n        \"▁Storage\",\n        -11.722467422485352\n      ],\n      [\n        \"▁temp\",\n        -11.722512245178223\n      ],\n      [\n        \"▁differently\",\n        -11.722614288330078\n      ],\n      [\n        \"▁wherever\",\n        -11.722670555114746\n      ],\n      [\n        \"matched\",\n        -11.722695350646973\n      ],\n      [\n        \"rios\",\n        -11.72276496887207\n      ],\n      [\n        \"▁surprising\",\n        -11.722846031188965\n      ],\n      [\n        \"teilen\",\n        -11.722867965698242\n      ],\n      [\n        \"▁difficulties\",\n        -11.72294807434082\n      ],\n      [\n        \"tab\",\n        -11.723064422607422\n      ],\n      [\n        \"▁Leader\",\n        -11.723128318786621\n      ],\n      [\n        \"implementing\",\n        -11.723372459411621\n      ],\n      [\n        \"▁workforce\",\n        -11.723384857177734\n      ],\n      [\n        \"▁bereit\",\n        -11.723503112792969\n      ],\n      [\n        \"vig\",\n        -11.72352123260498\n      ],\n      [\n        \"▁LOVE\",\n        -11.723580360412598\n      ],\n      [\n        \"▁instances\",\n        -11.723954200744629\n      ],\n      [\n        \"▁frumos\",\n        -11.723960876464844\n      ],\n      [\n        \"▁Java\",\n        -11.723974227905273\n      ],\n      [\n        \"▁arrest\",\n        -11.723977088928223\n      ],\n      [\n        \"▁apparent\",\n        -11.724152565002441\n      ],\n      [\n        \"▁hence\",\n        -11.724200248718262\n      ],\n      [\n        \"▁entwickelt\",\n        -11.72437572479248\n      ],\n      [\n        \"▁Fra\",\n        -11.724471092224121\n      ],\n      [\n        \"▁prend\",\n        -11.724486351013184\n      ],\n      [\n        \"ließ\",\n        -11.724522590637207\n      ],\n      [\n        \"▁drawer\",\n        -11.724671363830566\n      ],\n      [\n        \"ARD\",\n        -11.724926948547363\n      ],\n      [\n        \"▁caring\",\n        -11.72499942779541\n      ],\n      [\n        \"▁wollte\",\n        -11.725024223327637\n      ],\n      [\n        \"▁vielleicht\",\n        -11.72511100769043\n      ],\n      [\n        \"▁iconic\",\n        -11.725324630737305\n      ],\n      [\n        \"äch\",\n        -11.72552490234375\n      ],\n      [\n        \"abel\",\n        -11.725639343261719\n      ],\n      [\n        \"▁génér\",\n        -11.72570514678955\n      ],\n      [\n        \"ault\",\n        -11.725727081298828\n      ],\n      [\n        \"▁alternatives\",\n        -11.725909233093262\n      ],\n      [\n        \"think\",\n        -11.726025581359863\n      ],\n      [\n        \"ро\",\n        -11.726055145263672\n      ],\n      [\n        \"whereas\",\n        -11.726058006286621\n      ],\n      [\n        \"erei\",\n        -11.726366996765137\n      ],\n      [\n        \"▁Eagle\",\n        -11.726766586303711\n      ],\n      [\n        \"situé\",\n        -11.72704792022705\n      ],\n      [\n        \"▁laboratory\",\n        -11.727157592773438\n      ],\n      [\n        \"▁Nutzung\",\n        -11.727256774902344\n      ],\n      [\n        \"▁Bathroom\",\n        -11.72728157043457\n      ],\n      [\n        \"▁loaded\",\n        -11.727293968200684\n      ],\n      [\n        \"niste\",\n        -11.727408409118652\n      ],\n      [\n        \"som\",\n        -11.727429389953613\n      ],\n      [\n        \"▁aucun\",\n        -11.727666854858398\n      ],\n      [\n        \"gebracht\",\n        -11.727676391601562\n      ],\n      [\n        \"▁tomb\",\n        -11.727771759033203\n      ],\n      [\n        \"▁Ty\",\n        -11.727785110473633\n      ],\n      [\n        \"▁afaceri\",\n        -11.727971076965332\n      ],\n      [\n        \"tex\",\n        -11.72803783416748\n      ],\n      [\n        \"ality\",\n        -11.728147506713867\n      ],\n      [\n        \"▁identification\",\n        -11.728150367736816\n      ],\n      [\n        \"▁cultiv\",\n        -11.728255271911621\n      ],\n      [\n        \"Not\",\n        -11.728326797485352\n      ],\n      [\n        \"▁acestor\",\n        -11.72846508026123\n      ],\n      [\n        \"▁PhD\",\n        -11.728466033935547\n      ],\n      [\n        \"nell\",\n        -11.728470802307129\n      ],\n      [\n        \"▁dial\",\n        -11.728594779968262\n      ],\n      [\n        \"chro\",\n        -11.728673934936523\n      ],\n      [\n        \"▁specifications\",\n        -11.728682518005371\n      ],\n      [\n        \"anii\",\n        -11.72877025604248\n      ],\n      [\n        \"▁cloth\",\n        -11.728836059570312\n      ],\n      [\n        \"▁highway\",\n        -11.728914260864258\n      ],\n      [\n        \"▁Vitamin\",\n        -11.729118347167969\n      ],\n      [\n        \"▁indication\",\n        -11.729349136352539\n      ],\n      [\n        \"80%\",\n        -11.72959041595459\n      ],\n      [\n        \"▁Lion\",\n        -11.729681015014648\n      ],\n      [\n        \"▁10,\",\n        -11.729693412780762\n      ],\n      [\n        \"▁Werk\",\n        -11.72974967956543\n      ],\n      [\n        \"▁combin\",\n        -11.729803085327148\n      ],\n      [\n        \"▁releases\",\n        -11.7298583984375\n      ],\n      [\n        \"LL\",\n        -11.730006217956543\n      ],\n      [\n        \"ktor\",\n        -11.730186462402344\n      ],\n      [\n        \"ufgrund\",\n        -11.73018741607666\n      ],\n      [\n        \"calc\",\n        -11.73034381866455\n      ],\n      [\n        \"▁accomplished\",\n        -11.730606079101562\n      ],\n      [\n        \"▁los\",\n        -11.730619430541992\n      ],\n      [\n        \"▁distant\",\n        -11.730688095092773\n      ],\n      [\n        \"▁secteur\",\n        -11.73068904876709\n      ],\n      [\n        \"logue\",\n        -11.730781555175781\n      ],\n      [\n        \"▁betting\",\n        -11.730792999267578\n      ],\n      [\n        \"elf\",\n        -11.731180191040039\n      ],\n      [\n        \"puteti\",\n        -11.73123550415039\n      ],\n      [\n        \"▁Moment\",\n        -11.731236457824707\n      ],\n      [\n        \"▁scoring\",\n        -11.731548309326172\n      ],\n      [\n        \"▁freuen\",\n        -11.731572151184082\n      ],\n      [\n        \"▁fastest\",\n        -11.731873512268066\n      ],\n      [\n        \"▁directors\",\n        -11.732080459594727\n      ],\n      [\n        \"▁fame\",\n        -11.732234954833984\n      ],\n      [\n        \"▁complaint\",\n        -11.732239723205566\n      ],\n      [\n        \"▁Ep\",\n        -11.732314109802246\n      ],\n      [\n        \"▁delicate\",\n        -11.732329368591309\n      ],\n      [\n        \"annonce\",\n        -11.73240852355957\n      ],\n      [\n        \"ext\",\n        -11.732454299926758\n      ],\n      [\n        \"▁quit\",\n        -11.732473373413086\n      ],\n      [\n        \"▁Cop\",\n        -11.73253345489502\n      ],\n      [\n        \"prop\",\n        -11.732565879821777\n      ],\n      [\n        \"365\",\n        -11.732742309570312\n      ],\n      [\n        \"▁Say\",\n        -11.732879638671875\n      ],\n      [\n        \"▁internationale\",\n        -11.733064651489258\n      ],\n      [\n        \"cott\",\n        -11.733213424682617\n      ],\n      [\n        \"▁Whatever\",\n        -11.733261108398438\n      ],\n      [\n        \"▁admir\",\n        -11.733261108398438\n      ],\n      [\n        \"▁bucur\",\n        -11.733549118041992\n      ],\n      [\n        \"▁entity\",\n        -11.733779907226562\n      ],\n      [\n        \"▁dancing\",\n        -11.733837127685547\n      ],\n      [\n        \"▁printre\",\n        -11.733892440795898\n      ],\n      [\n        \"▁meditation\",\n        -11.734396934509277\n      ],\n      [\n        \"▁avis\",\n        -11.734416961669922\n      ],\n      [\n        \"▁1988\",\n        -11.73447036743164\n      ],\n      [\n        \"10.\",\n        -11.734506607055664\n      ],\n      [\n        \"▁worker\",\n        -11.734638214111328\n      ],\n      [\n        \"▁$100\",\n        -11.734784126281738\n      ],\n      [\n        \"▁contrôle\",\n        -11.7349853515625\n      ],\n      [\n        \"▁insist\",\n        -11.734997749328613\n      ],\n      [\n        \"ements\",\n        -11.73505973815918\n      ],\n      [\n        \"izate\",\n        -11.735163688659668\n      ],\n      [\n        \"▁tied\",\n        -11.735332489013672\n      ],\n      [\n        \"▁correspond\",\n        -11.735396385192871\n      ],\n      [\n        \"▁apartments\",\n        -11.735547065734863\n      ],\n      [\n        \"▁2009.\",\n        -11.735599517822266\n      ],\n      [\n        \"▁tiles\",\n        -11.735624313354492\n      ],\n      [\n        \"▁boots\",\n        -11.735639572143555\n      ],\n      [\n        \"▁laundry\",\n        -11.735673904418945\n      ],\n      [\n        \"▁Coffee\",\n        -11.735674858093262\n      ],\n      [\n        \"▁CV\",\n        -11.735727310180664\n      ],\n      [\n        \"▁composed\",\n        -11.736035346984863\n      ],\n      [\n        \"atom\",\n        -11.73622989654541\n      ],\n      [\n        \"▁shore\",\n        -11.736270904541016\n      ],\n      [\n        \"▁marijuana\",\n        -11.736312866210938\n      ],\n      [\n        \"plic\",\n        -11.73648452758789\n      ],\n      [\n        \"▁Zahl\",\n        -11.736649513244629\n      ],\n      [\n        \"depth\",\n        -11.73682689666748\n      ],\n      [\n        \"▁Egypt\",\n        -11.736854553222656\n      ],\n      [\n        \"▁NFL\",\n        -11.736906051635742\n      ],\n      [\n        \"▁12,\",\n        -11.736922264099121\n      ],\n      [\n        \"▁pollution\",\n        -11.736964225769043\n      ],\n      [\n        \"▁Vergleich\",\n        -11.73704719543457\n      ],\n      [\n        \"û\",\n        -11.737109184265137\n      ],\n      [\n        \"▁nurse\",\n        -11.737153053283691\n      ],\n      [\n        \"▁Susan\",\n        -11.737173080444336\n      ],\n      [\n        \"▁verify\",\n        -11.737393379211426\n      ],\n      [\n        \"▁kon\",\n        -11.737504959106445\n      ],\n      [\n        \"▁ulei\",\n        -11.7376127243042\n      ],\n      [\n        \"▁Sept\",\n        -11.737699508666992\n      ],\n      [\n        \"▁Location\",\n        -11.737908363342285\n      ],\n      [\n        \"▁frozen\",\n        -11.737991333007812\n      ],\n      [\n        \"good\",\n        -11.73802661895752\n      ],\n      [\n        \"▁cine\",\n        -11.738066673278809\n      ],\n      [\n        \"forming\",\n        -11.738181114196777\n      ],\n      [\n        \"▁Near\",\n        -11.738391876220703\n      ],\n      [\n        \"▁Tab\",\n        -11.738545417785645\n      ],\n      [\n        \"▁Alexandr\",\n        -11.738600730895996\n      ],\n      [\n        \"ст\",\n        -11.73863697052002\n      ],\n      [\n        \"CK\",\n        -11.738656044006348\n      ],\n      [\n        \"▁loads\",\n        -11.738948822021484\n      ],\n      [\n        \"▁disorders\",\n        -11.738957405090332\n      ],\n      [\n        \"hip\",\n        -11.739596366882324\n      ],\n      [\n        \"▁blessing\",\n        -11.73987102508545\n      ],\n      [\n        \"▁vechi\",\n        -11.73997688293457\n      ],\n      [\n        \"▁Bookmark\",\n        -11.740296363830566\n      ],\n      [\n        \"SON\",\n        -11.74036979675293\n      ],\n      [\n        \"books\",\n        -11.740428924560547\n      ],\n      [\n        \"▁tropical\",\n        -11.740438461303711\n      ],\n      [\n        \"▁Garten\",\n        -11.740447044372559\n      ],\n      [\n        \"ôt\",\n        -11.740760803222656\n      ],\n      [\n        \"tures\",\n        -11.740827560424805\n      ],\n      [\n        \"▁obligation\",\n        -11.741010665893555\n      ],\n      [\n        \"▁admin\",\n        -11.741011619567871\n      ],\n      [\n        \"▁sélection\",\n        -11.741106986999512\n      ],\n      [\n        \"disp\",\n        -11.741172790527344\n      ],\n      [\n        \"▁Anyone\",\n        -11.741225242614746\n      ],\n      [\n        \"keeper\",\n        -11.74138355255127\n      ],\n      [\n        \"▁konnten\",\n        -11.741521835327148\n      ],\n      [\n        \"▁existe\",\n        -11.741615295410156\n      ],\n      [\n        \"▁Rund\",\n        -11.741798400878906\n      ],\n      [\n        \"▁retailers\",\n        -11.74184799194336\n      ],\n      [\n        \"folg\",\n        -11.741948127746582\n      ],\n      [\n        \"▁urmare\",\n        -11.742019653320312\n      ],\n      [\n        \"▁Liebe\",\n        -11.742321014404297\n      ],\n      [\n        \"▁actors\",\n        -11.742422103881836\n      ],\n      [\n        \"▁Druck\",\n        -11.742618560791016\n      ],\n      [\n        \"lien\",\n        -11.742752075195312\n      ],\n      [\n        \"sian\",\n        -11.742847442626953\n      ],\n      [\n        \"▁partid\",\n        -11.74304485321045\n      ],\n      [\n        \"▁loin\",\n        -11.743114471435547\n      ],\n      [\n        \"AZ\",\n        -11.743119239807129\n      ],\n      [\n        \"oasă\",\n        -11.743501663208008\n      ],\n      [\n        \"▁inclusiv\",\n        -11.743656158447266\n      ],\n      [\n        \"TD\",\n        -11.743680953979492\n      ],\n      [\n        \"▁anului\",\n        -11.743766784667969\n      ],\n      [\n        \"poc\",\n        -11.743844985961914\n      ],\n      [\n        \"▁musique\",\n        -11.743972778320312\n      ],\n      [\n        \"▁Hart\",\n        -11.743997573852539\n      ],\n      [\n        \"Sh\",\n        -11.744283676147461\n      ],\n      [\n        \"html\",\n        -11.744290351867676\n      ],\n      [\n        \"▁serial\",\n        -11.744318008422852\n      ],\n      [\n        \"țele\",\n        -11.744369506835938\n      ],\n      [\n        \"inning\",\n        -11.744544982910156\n      ],\n      [\n        \"▁Bureau\",\n        -11.744555473327637\n      ],\n      [\n        \"▁rush\",\n        -11.744626998901367\n      ],\n      [\n        \"▁deosebit\",\n        -11.744637489318848\n      ],\n      [\n        \"▁Wort\",\n        -11.744648933410645\n      ],\n      [\n        \"▁Thailand\",\n        -11.744688987731934\n      ],\n      [\n        \"▁Language\",\n        -11.745193481445312\n      ],\n      [\n        \"▁Governor\",\n        -11.745213508605957\n      ],\n      [\n        \"▁Later\",\n        -11.74525260925293\n      ],\n      [\n        \"rilor\",\n        -11.745282173156738\n      ],\n      [\n        \"▁activités\",\n        -11.745372772216797\n      ],\n      [\n        \"schaffen\",\n        -11.745598793029785\n      ],\n      [\n        \"▁harvest\",\n        -11.74567985534668\n      ],\n      [\n        \"▁municipal\",\n        -11.745783805847168\n      ],\n      [\n        \"einander\",\n        -11.74600601196289\n      ],\n      [\n        \"▁fingers\",\n        -11.746383666992188\n      ],\n      [\n        \"▁sculpture\",\n        -11.74638843536377\n      ],\n      [\n        \"▁Bien\",\n        -11.746390342712402\n      ],\n      [\n        \"▁departments\",\n        -11.746562957763672\n      ],\n      [\n        \"▁période\",\n        -11.746746063232422\n      ],\n      [\n        \"▁jeune\",\n        -11.746960639953613\n      ],\n      [\n        \"▁governments\",\n        -11.74710750579834\n      ],\n      [\n        \"uter\",\n        -11.747179985046387\n      ],\n      [\n        \"Aceste\",\n        -11.747220039367676\n      ],\n      [\n        \"▁Deal\",\n        -11.747243881225586\n      ],\n      [\n        \"▁Equipment\",\n        -11.74726390838623\n      ],\n      [\n        \"nous\",\n        -11.747300148010254\n      ],\n      [\n        \"▁gate\",\n        -11.747315406799316\n      ],\n      [\n        \"▁meta\",\n        -11.747447967529297\n      ],\n      [\n        \"▁stiu\",\n        -11.747474670410156\n      ],\n      [\n        \"fold\",\n        -11.747486114501953\n      ],\n      [\n        \"▁seule\",\n        -11.747523307800293\n      ],\n      [\n        \"▁varied\",\n        -11.747541427612305\n      ],\n      [\n        \"hit\",\n        -11.747635841369629\n      ],\n      [\n        \"▁DIY\",\n        -11.74768352508545\n      ],\n      [\n        \"▁lemn\",\n        -11.747685432434082\n      ],\n      [\n        \"OB\",\n        -11.747865676879883\n      ],\n      [\n        \"▁colorful\",\n        -11.748095512390137\n      ],\n      [\n        \"▁câ\",\n        -11.74826431274414\n      ],\n      [\n        \"▁semester\",\n        -11.74830150604248\n      ],\n      [\n        \"▁dealer\",\n        -11.748575210571289\n      ],\n      [\n        \"nett\",\n        -11.748788833618164\n      ],\n      [\n        \"▁shortly\",\n        -11.748932838439941\n      ],\n      [\n        \"▁Driver\",\n        -11.748983383178711\n      ],\n      [\n        \"culture\",\n        -11.749052047729492\n      ],\n      [\n        \"▁permitted\",\n        -11.749072074890137\n      ],\n      [\n        \"▁sorts\",\n        -11.749432563781738\n      ],\n      [\n        \"▁crop\",\n        -11.74999713897705\n      ],\n      [\n        \"▁valoare\",\n        -11.75046157836914\n      ],\n      [\n        \"▁analog\",\n        -11.750576972961426\n      ],\n      [\n        \"▁excuse\",\n        -11.750588417053223\n      ],\n      [\n        \"▁modèle\",\n        -11.750657081604004\n      ],\n      [\n        \"When\",\n        -11.75068473815918\n      ],\n      [\n        \"▁march\",\n        -11.750744819641113\n      ],\n      [\n        \"haz\",\n        -11.750978469848633\n      ],\n      [\n        \"▁minimize\",\n        -11.750992774963379\n      ],\n      [\n        \"traction\",\n        -11.751028060913086\n      ],\n      [\n        \"▁caracter\",\n        -11.752382278442383\n      ],\n      [\n        \"▁modules\",\n        -11.7523832321167\n      ],\n      [\n        \"clu\",\n        -11.75244426727295\n      ],\n      [\n        \"ţional\",\n        -11.752482414245605\n      ],\n      [\n        \"▁breach\",\n        -11.752562522888184\n      ],\n      [\n        \"▁priced\",\n        -11.752614974975586\n      ],\n      [\n        \"▁attorneys\",\n        -11.752644538879395\n      ],\n      [\n        \"▁implant\",\n        -11.752645492553711\n      ],\n      [\n        \"▁ANY\",\n        -11.752655029296875\n      ],\n      [\n        \"dition\",\n        -11.752707481384277\n      ],\n      [\n        \"▁trials\",\n        -11.752838134765625\n      ],\n      [\n        \"▁Nas\",\n        -11.75293254852295\n      ],\n      [\n        \"Pre\",\n        -11.752970695495605\n      ],\n      [\n        \"lorsque\",\n        -11.752979278564453\n      ],\n      [\n        \"plin\",\n        -11.753050804138184\n      ],\n      [\n        \"Er\",\n        -11.753056526184082\n      ],\n      [\n        \"▁Dom\",\n        -11.753067970275879\n      ],\n      [\n        \"▁tire\",\n        -11.753190040588379\n      ],\n      [\n        \"sili\",\n        -11.753233909606934\n      ],\n      [\n        \"▁coins\",\n        -11.753350257873535\n      ],\n      [\n        \"▁rend\",\n        -11.753470420837402\n      ],\n      [\n        \"▁reliability\",\n        -11.753503799438477\n      ],\n      [\n        \"▁Analysis\",\n        -11.753508567810059\n      ],\n      [\n        \"▁trails\",\n        -11.753692626953125\n      ],\n      [\n        \"trägt\",\n        -11.753762245178223\n      ],\n      [\n        \"▁Kansas\",\n        -11.753908157348633\n      ],\n      [\n        \"▁responsive\",\n        -11.75390911102295\n      ],\n      [\n        \"▁disappear\",\n        -11.753988265991211\n      ],\n      [\n        \"▁stakeholders\",\n        -11.754022598266602\n      ],\n      [\n        \"▁aplica\",\n        -11.754164695739746\n      ],\n      [\n        \"▁imi\",\n        -11.754180908203125\n      ],\n      [\n        \"▁Laura\",\n        -11.754369735717773\n      ],\n      [\n        \"▁Terms\",\n        -11.75440788269043\n      ],\n      [\n        \"450\",\n        -11.754460334777832\n      ],\n      [\n        \"▁voltage\",\n        -11.754483222961426\n      ],\n      [\n        \"▁Gel\",\n        -11.754544258117676\n      ],\n      [\n        \"▁qualities\",\n        -11.754549026489258\n      ],\n      [\n        \"▁qualifi\",\n        -11.754603385925293\n      ],\n      [\n        \"▁Mé\",\n        -11.754735946655273\n      ],\n      [\n        \"bereit\",\n        -11.754829406738281\n      ],\n      [\n        \"gleich\",\n        -11.754875183105469\n      ],\n      [\n        \"▁voting\",\n        -11.754961013793945\n      ],\n      [\n        \"▁trademark\",\n        -11.755128860473633\n      ],\n      [\n        \"▁2.5\",\n        -11.75515079498291\n      ],\n      [\n        \"ND\",\n        -11.755438804626465\n      ],\n      [\n        \"▁Kelly\",\n        -11.755470275878906\n      ],\n      [\n        \"▁weiteren\",\n        -11.755559921264648\n      ],\n      [\n        \"▁filters\",\n        -11.75562572479248\n      ],\n      [\n        \"▁coût\",\n        -11.75562858581543\n      ],\n      [\n        \"jur\",\n        -11.755765914916992\n      ],\n      [\n        \"acre\",\n        -11.755804061889648\n      ],\n      [\n        \"▁retired\",\n        -11.756022453308105\n      ],\n      [\n        \"▁Engine\",\n        -11.756205558776855\n      ],\n      [\n        \"▁président\",\n        -11.756264686584473\n      ],\n      [\n        \"ajul\",\n        -11.756307601928711\n      ],\n      [\n        \"▁GA\",\n        -11.756425857543945\n      ],\n      [\n        \"rät\",\n        -11.75666332244873\n      ],\n      [\n        \"▁instructor\",\n        -11.756669998168945\n      ],\n      [\n        \"▁Allen\",\n        -11.75668716430664\n      ],\n      [\n        \"▁Delhi\",\n        -11.756771087646484\n      ],\n      [\n        \"▁cure\",\n        -11.756844520568848\n      ],\n      [\n        \"seite\",\n        -11.756898880004883\n      ],\n      [\n        \"coming\",\n        -11.756914138793945\n      ],\n      [\n        \"▁mixing\",\n        -11.756963729858398\n      ],\n      [\n        \"▁Kno\",\n        -11.757041931152344\n      ],\n      [\n        \"▁Sure\",\n        -11.757079124450684\n      ],\n      [\n        \"▁hired\",\n        -11.757102012634277\n      ],\n      [\n        \"▁participated\",\n        -11.757196426391602\n      ],\n      [\n        \"Count\",\n        -11.757320404052734\n      ],\n      [\n        \"treffen\",\n        -11.757355690002441\n      ],\n      [\n        \"▁54\",\n        -11.75735855102539\n      ],\n      [\n        \"▁rings\",\n        -11.75735855102539\n      ],\n      [\n        \"▁Thor\",\n        -11.757359504699707\n      ],\n      [\n        \"éro\",\n        -11.75744915008545\n      ],\n      [\n        \"▁buttons\",\n        -11.757488250732422\n      ],\n      [\n        \"▁47\",\n        -11.757539749145508\n      ],\n      [\n        \"▁Tel\",\n        -11.757694244384766\n      ],\n      [\n        \"▁suport\",\n        -11.757776260375977\n      ],\n      [\n        \"▁rhythm\",\n        -11.75782585144043\n      ],\n      [\n        \"▁Theater\",\n        -11.758113861083984\n      ],\n      [\n        \"▁informatii\",\n        -11.758121490478516\n      ],\n      [\n        \"hält\",\n        -11.758201599121094\n      ],\n      [\n        \"▁ouvert\",\n        -11.758238792419434\n      ],\n      [\n        \"fewer\",\n        -11.75828742980957\n      ],\n      [\n        \"▁alumni\",\n        -11.758466720581055\n      ],\n      [\n        \"▁valley\",\n        -11.758508682250977\n      ],\n      [\n        \"tial\",\n        -11.75860595703125\n      ],\n      [\n        \"***\",\n        -11.758782386779785\n      ],\n      [\n        \"kri\",\n        -11.75905704498291\n      ],\n      [\n        \"▁accidents\",\n        -11.759113311767578\n      ],\n      [\n        \"▁barrel\",\n        -11.759170532226562\n      ],\n      [\n        \"mobil\",\n        -11.759310722351074\n      ],\n      [\n        \"etti\",\n        -11.759437561035156\n      ],\n      [\n        \"▁immigration\",\n        -11.759515762329102\n      ],\n      [\n        \"▁poveste\",\n        -11.759528160095215\n      ],\n      [\n        \"hren\",\n        -11.759669303894043\n      ],\n      [\n        \"hydr\",\n        -11.759719848632812\n      ],\n      [\n        \"▁tweet\",\n        -11.759744644165039\n      ],\n      [\n        \"▁zip\",\n        -11.759872436523438\n      ],\n      [\n        \"▁Bonus\",\n        -11.760189056396484\n      ],\n      [\n        \"ordnung\",\n        -11.760287284851074\n      ],\n      [\n        \"liber\",\n        -11.76046085357666\n      ],\n      [\n        \"▁Navy\",\n        -11.760591506958008\n      ],\n      [\n        \"▁agreements\",\n        -11.760612487792969\n      ],\n      [\n        \"▁detection\",\n        -11.7607421875\n      ],\n      [\n        \"DF\",\n        -11.760762214660645\n      ],\n      [\n        \"hur\",\n        -11.760774612426758\n      ],\n      [\n        \"0.00\",\n        -11.760798454284668\n      ],\n      [\n        \"▁07\",\n        -11.760866165161133\n      ],\n      [\n        \"etta\",\n        -11.760884284973145\n      ],\n      [\n        \"▁13,\",\n        -11.760887145996094\n      ],\n      [\n        \"rolled\",\n        -11.760970115661621\n      ],\n      [\n        \"▁injection\",\n        -11.761002540588379\n      ],\n      [\n        \"mig\",\n        -11.761017799377441\n      ],\n      [\n        \"wach\",\n        -11.761107444763184\n      ],\n      [\n        \"▁choisir\",\n        -11.761515617370605\n      ],\n      [\n        \"▁professionnels\",\n        -11.76159954071045\n      ],\n      [\n        \"▁Tower\",\n        -11.76169490814209\n      ],\n      [\n        \"▁neighbor\",\n        -11.76170539855957\n      ],\n      [\n        \"deutschen\",\n        -11.76187801361084\n      ],\n      [\n        \"▁luxurious\",\n        -11.76201057434082\n      ],\n      [\n        \"▁walks\",\n        -11.762033462524414\n      ],\n      [\n        \"reti\",\n        -11.762046813964844\n      ],\n      [\n        \"▁Pad\",\n        -11.762085914611816\n      ],\n      [\n        \"wise\",\n        -11.762297630310059\n      ],\n      [\n        \"▁exhaust\",\n        -11.762307167053223\n      ],\n      [\n        \"▁demonstration\",\n        -11.762582778930664\n      ],\n      [\n        \"▁agricultural\",\n        -11.762667655944824\n      ],\n      [\n        \"Upon\",\n        -11.762885093688965\n      ],\n      [\n        \"▁Blu\",\n        -11.76292610168457\n      ],\n      [\n        \"atorul\",\n        -11.762967109680176\n      ],\n      [\n        \"amour\",\n        -11.762984275817871\n      ],\n      [\n        \"issant\",\n        -11.763004302978516\n      ],\n      [\n        \"▁delighted\",\n        -11.763031959533691\n      ],\n      [\n        \"rita\",\n        -11.763113021850586\n      ],\n      [\n        \"requiring\",\n        -11.763195037841797\n      ],\n      [\n        \"ivity\",\n        -11.763216972351074\n      ],\n      [\n        \"▁Unser\",\n        -11.763306617736816\n      ],\n      [\n        \"FP\",\n        -11.763379096984863\n      ],\n      [\n        \"fait\",\n        -11.763533592224121\n      ],\n      [\n        \"dite\",\n        -11.763562202453613\n      ],\n      [\n        \"kul\",\n        -11.763716697692871\n      ],\n      [\n        \"arth\",\n        -11.76376724243164\n      ],\n      [\n        \"▁Ker\",\n        -11.763815879821777\n      ],\n      [\n        \"torilor\",\n        -11.763816833496094\n      ],\n      [\n        \"stage\",\n        -11.763866424560547\n      ],\n      [\n        \"▁HTML\",\n        -11.76398754119873\n      ],\n      [\n        \"▁Wheel\",\n        -11.764005661010742\n      ],\n      [\n        \"▁quelque\",\n        -11.76414680480957\n      ],\n      [\n        \"▁Ou\",\n        -11.764196395874023\n      ],\n      [\n        \"▁considerable\",\n        -11.764277458190918\n      ],\n      [\n        \"▁Sco\",\n        -11.76458740234375\n      ],\n      [\n        \"▁donations\",\n        -11.76481819152832\n      ],\n      [\n        \"dessen\",\n        -11.765002250671387\n      ],\n      [\n        \"▁pourquoi\",\n        -11.765039443969727\n      ],\n      [\n        \"▁Bow\",\n        -11.765189170837402\n      ],\n      [\n        \"▁Dupa\",\n        -11.76522445678711\n      ],\n      [\n        \"ska\",\n        -11.765707015991211\n      ],\n      [\n        \"hot\",\n        -11.765732765197754\n      ],\n      [\n        \"▁drove\",\n        -11.765849113464355\n      ],\n      [\n        \"▁oppos\",\n        -11.766018867492676\n      ],\n      [\n        \"▁hiking\",\n        -11.766035079956055\n      ],\n      [\n        \"▁Boot\",\n        -11.766081809997559\n      ],\n      [\n        \"One\",\n        -11.766087532043457\n      ],\n      [\n        \"▁guvern\",\n        -11.766094207763672\n      ],\n      [\n        \"▁15,\",\n        -11.766400337219238\n      ],\n      [\n        \"scheid\",\n        -11.766437530517578\n      ],\n      [\n        \"▁Miet\",\n        -11.766458511352539\n      ],\n      [\n        \"▁Technical\",\n        -11.766767501831055\n      ],\n      [\n        \"▁Dal\",\n        -11.7669038772583\n      ],\n      [\n        \"▁Metro\",\n        -11.766966819763184\n      ],\n      [\n        \"▁Baker\",\n        -11.767215728759766\n      ],\n      [\n        \"▁trece\",\n        -11.767252922058105\n      ],\n      [\n        \"tained\",\n        -11.767302513122559\n      ],\n      [\n        \"block\",\n        -11.76738452911377\n      ],\n      [\n        \"▁wander\",\n        -11.767401695251465\n      ],\n      [\n        \"▁penalty\",\n        -11.76742172241211\n      ],\n      [\n        \"▁shipped\",\n        -11.767509460449219\n      ],\n      [\n        \"▁30%\",\n        -11.767518043518066\n      ],\n      [\n        \"group\",\n        -11.767541885375977\n      ],\n      [\n        \"▁brothers\",\n        -11.767701148986816\n      ],\n      [\n        \"▁comanda\",\n        -11.767777442932129\n      ],\n      [\n        \"▁retreat\",\n        -11.767789840698242\n      ],\n      [\n        \"▁Movie\",\n        -11.767802238464355\n      ],\n      [\n        \"PU\",\n        -11.76787281036377\n      ],\n      [\n        \"▁Jun\",\n        -11.767885208129883\n      ],\n      [\n        \"▁$6\",\n        -11.767969131469727\n      ],\n      [\n        \"▁Fal\",\n        -11.768054962158203\n      ],\n      [\n        \"▁Palestinian\",\n        -11.768075942993164\n      ],\n      [\n        \"▁soccer\",\n        -11.768217086791992\n      ],\n      [\n        \"▁Autor\",\n        -11.768254280090332\n      ],\n      [\n        \"▁chamber\",\n        -11.768266677856445\n      ],\n      [\n        \"nement\",\n        -11.768463134765625\n      ],\n      [\n        \"▁offense\",\n        -11.768610954284668\n      ],\n      [\n        \"▁gig\",\n        -11.768631935119629\n      ],\n      [\n        \"▁abandon\",\n        -11.768691062927246\n      ],\n      [\n        \"▁Kraft\",\n        -11.768783569335938\n      ],\n      [\n        \"▁Medicare\",\n        -11.768784523010254\n      ],\n      [\n        \"▁soap\",\n        -11.768835067749023\n      ],\n      [\n        \"▁Fur\",\n        -11.768990516662598\n      ],\n      [\n        \"▁conditioning\",\n        -11.769103050231934\n      ],\n      [\n        \"rained\",\n        -11.769132614135742\n      ],\n      [\n        \"▁puts\",\n        -11.769134521484375\n      ],\n      [\n        \"▁cod\",\n        -11.76930046081543\n      ],\n      [\n        \"lassen\",\n        -11.76941967010498\n      ],\n      [\n        \"FL\",\n        -11.769600868225098\n      ],\n      [\n        \"▁komplett\",\n        -11.769664764404297\n      ],\n      [\n        \"▁entscheiden\",\n        -11.769665718078613\n      ],\n      [\n        \"▁Hour\",\n        -11.769691467285156\n      ],\n      [\n        \"?!\",\n        -11.770040512084961\n      ],\n      [\n        \"Stream\",\n        -11.770145416259766\n      ],\n      [\n        \"▁Grad\",\n        -11.770209312438965\n      ],\n      [\n        \"▁gently\",\n        -11.770231246948242\n      ],\n      [\n        \"▁poetry\",\n        -11.770429611206055\n      ],\n      [\n        \"▁secured\",\n        -11.770438194274902\n      ],\n      [\n        \"oph\",\n        -11.770466804504395\n      ],\n      [\n        \"hop\",\n        -11.770561218261719\n      ],\n      [\n        \"handel\",\n        -11.770634651184082\n      ],\n      [\n        \"▁besoins\",\n        -11.770658493041992\n      ],\n      [\n        \"got\",\n        -11.770824432373047\n      ],\n      [\n        \"▁Chrome\",\n        -11.77088737487793\n      ],\n      [\n        \"ILL\",\n        -11.770930290222168\n      ],\n      [\n        \"▁Schritt\",\n        -11.771014213562012\n      ],\n      [\n        \"▁spell\",\n        -11.771063804626465\n      ],\n      [\n        \"▁grinding\",\n        -11.771334648132324\n      ],\n      [\n        \"▁ramp\",\n        -11.77144718170166\n      ],\n      [\n        \"▁mama\",\n        -11.7716064453125\n      ],\n      [\n        \"▁bottles\",\n        -11.77180290222168\n      ],\n      [\n        \"▁canvas\",\n        -11.771906852722168\n      ],\n      [\n        \"▁ecosystem\",\n        -11.77194595336914\n      ],\n      [\n        \"aţii\",\n        -11.771967887878418\n      ],\n      [\n        \"cellular\",\n        -11.772085189819336\n      ],\n      [\n        \"▁Spin\",\n        -11.772164344787598\n      ],\n      [\n        \"▁Discover\",\n        -11.772217750549316\n      ],\n      [\n        \"-17\",\n        -11.772322654724121\n      ],\n      [\n        \"▁feeding\",\n        -11.77246379852295\n      ],\n      [\n        \"▁stops\",\n        -11.7725191116333\n      ],\n      [\n        \"▁haute\",\n        -11.772552490234375\n      ],\n      [\n        \"▁Entscheidung\",\n        -11.7725830078125\n      ],\n      [\n        \"▁semble\",\n        -11.772590637207031\n      ],\n      [\n        \"▁acele\",\n        -11.772857666015625\n      ],\n      [\n        \"▁Walk\",\n        -11.773154258728027\n      ],\n      [\n        \"▁joke\",\n        -11.773180961608887\n      ],\n      [\n        \"▁Fed\",\n        -11.773294448852539\n      ],\n      [\n        \"climat\",\n        -11.773306846618652\n      ],\n      [\n        \"▁Lot\",\n        -11.773460388183594\n      ],\n      [\n        \"runner\",\n        -11.773551940917969\n      ],\n      [\n        \"▁flip\",\n        -11.773786544799805\n      ],\n      [\n        \"▁werde\",\n        -11.773818016052246\n      ],\n      [\n        \"▁Deck\",\n        -11.77417278289795\n      ],\n      [\n        \"bala\",\n        -11.774296760559082\n      ],\n      [\n        \"▁sacrifice\",\n        -11.774375915527344\n      ],\n      [\n        \"cid\",\n        -11.774388313293457\n      ],\n      [\n        \"him\",\n        -11.774569511413574\n      ],\n      [\n        \"zahlen\",\n        -11.774587631225586\n      ],\n      [\n        \"▁heater\",\n        -11.774596214294434\n      ],\n      [\n        \"formed\",\n        -11.774619102478027\n      ],\n      [\n        \"plus\",\n        -11.774711608886719\n      ],\n      [\n        \"▁util\",\n        -11.774742126464844\n      ],\n      [\n        \"rama\",\n        -11.775019645690918\n      ],\n      [\n        \"(4)\",\n        -11.7750244140625\n      ],\n      [\n        \"▁knife\",\n        -11.775111198425293\n      ],\n      [\n        \"▁traditions\",\n        -11.77520751953125\n      ],\n      [\n        \"▁dip\",\n        -11.775357246398926\n      ],\n      [\n        \"kill\",\n        -11.775405883789062\n      ],\n      [\n        \"▁Rich\",\n        -11.775418281555176\n      ],\n      [\n        \"▁DI\",\n        -11.775555610656738\n      ],\n      [\n        \"▁containers\",\n        -11.775677680969238\n      ],\n      [\n        \"▁locuri\",\n        -11.775728225708008\n      ],\n      [\n        \"▁continent\",\n        -11.775797843933105\n      ],\n      [\n        \"teilung\",\n        -11.776005744934082\n      ],\n      [\n        \"▁vreme\",\n        -11.776028633117676\n      ],\n      [\n        \"organisation\",\n        -11.776126861572266\n      ],\n      [\n        \"serie\",\n        -11.776135444641113\n      ],\n      [\n        \"▁Diamond\",\n        -11.776204109191895\n      ],\n      [\n        \"magazin\",\n        -11.77627944946289\n      ],\n      [\n        \"▁poster\",\n        -11.776455879211426\n      ],\n      [\n        \"▁passenger\",\n        -11.7765474319458\n      ],\n      [\n        \"▁soldiers\",\n        -11.776552200317383\n      ],\n      [\n        \"▁urgent\",\n        -11.776616096496582\n      ],\n      [\n        \"▁Lip\",\n        -11.77680778503418\n      ],\n      [\n        \"▁aşa\",\n        -11.776972770690918\n      ],\n      [\n        \"▁BO\",\n        -11.777024269104004\n      ],\n      [\n        \"▁somebody\",\n        -11.777076721191406\n      ],\n      [\n        \"▁silence\",\n        -11.777132034301758\n      ],\n      [\n        \"cop\",\n        -11.777359962463379\n      ],\n      [\n        \"▁Burn\",\n        -11.77749252319336\n      ],\n      [\n        \"▁stopping\",\n        -11.777544021606445\n      ],\n      [\n        \"▁essence\",\n        -11.777568817138672\n      ],\n      [\n        \"▁hitting\",\n        -11.777762413024902\n      ],\n      [\n        \"▁producers\",\n        -11.777801513671875\n      ],\n      [\n        \"▁fibre\",\n        -11.777894020080566\n      ],\n      [\n        \"▁seasonal\",\n        -11.777960777282715\n      ],\n      [\n        \"▁tara\",\n        -11.778096199035645\n      ],\n      [\n        \"▁Jose\",\n        -11.778099060058594\n      ],\n      [\n        \"▁Better\",\n        -11.77825927734375\n      ],\n      [\n        \"▁steep\",\n        -11.778295516967773\n      ],\n      [\n        \"Alors\",\n        -11.778353691101074\n      ],\n      [\n        \"▁collecting\",\n        -11.778507232666016\n      ],\n      [\n        \"vre\",\n        -11.778635025024414\n      ],\n      [\n        \"▁disabled\",\n        -11.77863883972168\n      ],\n      [\n        \"▁voters\",\n        -11.778679847717285\n      ],\n      [\n        \"consuming\",\n        -11.779092788696289\n      ],\n      [\n        \"deemed\",\n        -11.779115676879883\n      ],\n      [\n        \"éra\",\n        -11.779227256774902\n      ],\n      [\n        \"opération\",\n        -11.779273986816406\n      ],\n      [\n        \"▁roller\",\n        -11.779305458068848\n      ],\n      [\n        \"Rather\",\n        -11.779321670532227\n      ],\n      [\n        \"▁leider\",\n        -11.779370307922363\n      ],\n      [\n        \"▁IV\",\n        -11.779434204101562\n      ],\n      [\n        \"▁erreichen\",\n        -11.779473304748535\n      ],\n      [\n        \"▁charging\",\n        -11.779657363891602\n      ],\n      [\n        \"tions\",\n        -11.77973747253418\n      ],\n      [\n        \"tiques\",\n        -11.779861450195312\n      ],\n      [\n        \"▁formats\",\n        -11.779876708984375\n      ],\n      [\n        \"▁painful\",\n        -11.78000545501709\n      ],\n      [\n        \"▁eager\",\n        -11.780061721801758\n      ],\n      [\n        \"generation\",\n        -11.780137062072754\n      ],\n      [\n        \"anna\",\n        -11.780235290527344\n      ],\n      [\n        \"▁races\",\n        -11.780323028564453\n      ],\n      [\n        \"force\",\n        -11.780357360839844\n      ],\n      [\n        \"▁ferm\",\n        -11.780522346496582\n      ],\n      [\n        \"▁breathing\",\n        -11.780618667602539\n      ],\n      [\n        \"▁offen\",\n        -11.780648231506348\n      ],\n      [\n        \"▁minds\",\n        -11.780805587768555\n      ],\n      [\n        \"▁musste\",\n        -11.780832290649414\n      ],\n      [\n        \"▁Vision\",\n        -11.780888557434082\n      ],\n      [\n        \"▁Installation\",\n        -11.780988693237305\n      ],\n      [\n        \"▁hesitate\",\n        -11.781002044677734\n      ],\n      [\n        \"▁somit\",\n        -11.781023979187012\n      ],\n      [\n        \"hôtel\",\n        -11.781044006347656\n      ],\n      [\n        \"cab\",\n        -11.781235694885254\n      ],\n      [\n        \"-16\",\n        -11.781312942504883\n      ],\n      [\n        \"▁Visual\",\n        -11.781418800354004\n      ],\n      [\n        \"intérêt\",\n        -11.781524658203125\n      ],\n      [\n        \"▁apel\",\n        -11.781831741333008\n      ],\n      [\n        \"therapy\",\n        -11.782089233398438\n      ],\n      [\n        \"volt\",\n        -11.78225040435791\n      ],\n      [\n        \"▁Rou\",\n        -11.782439231872559\n      ],\n      [\n        \"▁efficace\",\n        -11.782464027404785\n      ],\n      [\n        \"▁architectural\",\n        -11.782605171203613\n      ],\n      [\n        \"▁privilege\",\n        -11.782670974731445\n      ],\n      [\n        \"▁treating\",\n        -11.782711029052734\n      ],\n      [\n        \"▁Tam\",\n        -11.782722473144531\n      ],\n      [\n        \"tsch\",\n        -11.782744407653809\n      ],\n      [\n        \"building\",\n        -11.782750129699707\n      ],\n      [\n        \"▁associations\",\n        -11.782929420471191\n      ],\n      [\n        \"▁Consumer\",\n        -11.783424377441406\n      ],\n      [\n        \"▁Lim\",\n        -11.783496856689453\n      ],\n      [\n        \"newest\",\n        -11.7835054397583\n      ],\n      [\n        \"▁față\",\n        -11.783675193786621\n      ],\n      [\n        \"▁ships\",\n        -11.783732414245605\n      ],\n      [\n        \"lev\",\n        -11.78373908996582\n      ],\n      [\n        \"raft\",\n        -11.783817291259766\n      ],\n      [\n        \"▁variations\",\n        -11.783845901489258\n      ],\n      [\n        \"▁noua\",\n        -11.78386402130127\n      ],\n      [\n        \"▁Cab\",\n        -11.784063339233398\n      ],\n      [\n        \"1.2\",\n        -11.78409481048584\n      ],\n      [\n        \"▁ocazi\",\n        -11.784347534179688\n      ],\n      [\n        \"▁recommendation\",\n        -11.784449577331543\n      ],\n      [\n        \"titled\",\n        -11.78445053100586\n      ],\n      [\n        \"▁invoice\",\n        -11.78459644317627\n      ],\n      [\n        \"▁noastra\",\n        -11.784647941589355\n      ],\n      [\n        \"kur\",\n        -11.784700393676758\n      ],\n      [\n        \"issent\",\n        -11.784758567810059\n      ],\n      [\n        \"base\",\n        -11.784778594970703\n      ],\n      [\n        \"hä\",\n        -11.7848482131958\n      ],\n      [\n        \"888\",\n        -11.784914016723633\n      ],\n      [\n        \"▁declar\",\n        -11.784941673278809\n      ],\n      [\n        \"▁Football\",\n        -11.7850341796875\n      ],\n      [\n        \"▁Indeed\",\n        -11.785293579101562\n      ],\n      [\n        \"▁weapon\",\n        -11.785333633422852\n      ],\n      [\n        \"▁destroyed\",\n        -11.785457611083984\n      ],\n      [\n        \"▁enormous\",\n        -11.785594940185547\n      ],\n      [\n        \"▁blanket\",\n        -11.7857084274292\n      ],\n      [\n        \"▁aktiv\",\n        -11.785759925842285\n      ],\n      [\n        \"raw\",\n        -11.785791397094727\n      ],\n      [\n        \"▁computing\",\n        -11.785823822021484\n      ],\n      [\n        \"6)\",\n        -11.785955429077148\n      ],\n      [\n        \"▁Dam\",\n        -11.786152839660645\n      ],\n      [\n        \"▁confort\",\n        -11.786174774169922\n      ],\n      [\n        \"▁Gla\",\n        -11.786198616027832\n      ],\n      [\n        \"hardly\",\n        -11.786242485046387\n      ],\n      [\n        \"▁annually\",\n        -11.786269187927246\n      ],\n      [\n        \"▁destinations\",\n        -11.786401748657227\n      ],\n      [\n        \"▁guilty\",\n        -11.786404609680176\n      ],\n      [\n        \"▁scholarship\",\n        -11.786439895629883\n      ],\n      [\n        \"▁harmful\",\n        -11.786453247070312\n      ],\n      [\n        \"▁2-3\",\n        -11.786616325378418\n      ],\n      [\n        \"▁Race\",\n        -11.786638259887695\n      ],\n      [\n        \"▁hypo\",\n        -11.78671646118164\n      ],\n      [\n        \"▁shorter\",\n        -11.786733627319336\n      ],\n      [\n        \"quest\",\n        -11.78675651550293\n      ],\n      [\n        \"uze\",\n        -11.786812782287598\n      ],\n      [\n        \"izi\",\n        -11.787005424499512\n      ],\n      [\n        \"OO\",\n        -11.787095069885254\n      ],\n      [\n        \"▁Schutz\",\n        -11.787097930908203\n      ],\n      [\n        \"▁Teilnehmer\",\n        -11.787185668945312\n      ],\n      [\n        \"▁profiles\",\n        -11.787199020385742\n      ],\n      [\n        \"▁sustainability\",\n        -11.78747272491455\n      ],\n      [\n        \"▁emb\",\n        -11.787489891052246\n      ],\n      [\n        \"▁Augen\",\n        -11.787516593933105\n      ],\n      [\n        \"▁outdoors\",\n        -11.787542343139648\n      ],\n      [\n        \"▁Individual\",\n        -11.787548065185547\n      ],\n      [\n        \"▁pou\",\n        -11.78757095336914\n      ],\n      [\n        \"▁Together\",\n        -11.787575721740723\n      ],\n      [\n        \"HT\",\n        -11.787674903869629\n      ],\n      [\n        \"suited\",\n        -11.787755012512207\n      ],\n      [\n        \"▁tro\",\n        -11.787782669067383\n      ],\n      [\n        \"▁Strom\",\n        -11.787805557250977\n      ],\n      [\n        \"▁achievement\",\n        -11.78799819946289\n      ],\n      [\n        \"▁Range\",\n        -11.78815746307373\n      ],\n      [\n        \"tory\",\n        -11.78817081451416\n      ],\n      [\n        \"▁distribute\",\n        -11.788250923156738\n      ],\n      [\n        \"▁letzte\",\n        -11.788276672363281\n      ],\n      [\n        \"incorporated\",\n        -11.788287162780762\n      ],\n      [\n        \"▁Kir\",\n        -11.788325309753418\n      ],\n      [\n        \"ruf\",\n        -11.78839111328125\n      ],\n      [\n        \"▁disappointed\",\n        -11.788543701171875\n      ],\n      [\n        \"▁referral\",\n        -11.788602828979492\n      ],\n      [\n        \"flam\",\n        -11.788687705993652\n      ],\n      [\n        \"▁excessive\",\n        -11.7886962890625\n      ],\n      [\n        \"▁rapidement\",\n        -11.788743019104004\n      ],\n      [\n        \"▁Rio\",\n        -11.78875732421875\n      ],\n      [\n        \"aţia\",\n        -11.788951873779297\n      ],\n      [\n        \"▁meuble\",\n        -11.78912353515625\n      ],\n      [\n        \"▁2008.\",\n        -11.789135932922363\n      ],\n      [\n        \"▁Gall\",\n        -11.78915023803711\n      ],\n      [\n        \"▁française\",\n        -11.789369583129883\n      ],\n      [\n        \"▁ladies\",\n        -11.789695739746094\n      ],\n      [\n        \"ailed\",\n        -11.789746284484863\n      ],\n      [\n        \"El\",\n        -11.789834976196289\n      ],\n      [\n        \"▁wines\",\n        -11.789868354797363\n      ],\n      [\n        \"▁beispielsweise\",\n        -11.789876937866211\n      ],\n      [\n        \"▁gamme\",\n        -11.790193557739258\n      ],\n      [\n        \"▁guided\",\n        -11.79028034210205\n      ],\n      [\n        \"▁plin\",\n        -11.790339469909668\n      ],\n      [\n        \"Î\",\n        -11.790390968322754\n      ],\n      [\n        \"▁True\",\n        -11.790498733520508\n      ],\n      [\n        \"▁Temple\",\n        -11.790507316589355\n      ],\n      [\n        \"▁Pic\",\n        -11.790520668029785\n      ],\n      [\n        \"permalink\",\n        -11.790547370910645\n      ],\n      [\n        \"▁vedea\",\n        -11.790656089782715\n      ],\n      [\n        \"▁rank\",\n        -11.790922164916992\n      ],\n      [\n        \"▁Grill\",\n        -11.791025161743164\n      ],\n      [\n        \"clin\",\n        -11.791070938110352\n      ],\n      [\n        \"▁Hab\",\n        -11.791089057922363\n      ],\n      [\n        \"▁odds\",\n        -11.791125297546387\n      ],\n      [\n        \"▁anytime\",\n        -11.791146278381348\n      ],\n      [\n        \"▁Thanksgiving\",\n        -11.791265487670898\n      ],\n      [\n        \"guard\",\n        -11.791300773620605\n      ],\n      [\n        \"▁essays\",\n        -11.791389465332031\n      ],\n      [\n        \"▁PE\",\n        -11.79139518737793\n      ],\n      [\n        \"▁Rechts\",\n        -11.791494369506836\n      ],\n      [\n        \"mals\",\n        -11.791751861572266\n      ],\n      [\n        \"achi\",\n        -11.791762351989746\n      ],\n      [\n        \"▁Anthony\",\n        -11.791765213012695\n      ],\n      [\n        \"▁réponse\",\n        -11.792036056518555\n      ],\n      [\n        \"standing\",\n        -11.79227352142334\n      ],\n      [\n        \"▁Mol\",\n        -11.792427062988281\n      ],\n      [\n        \"▁Canon\",\n        -11.792474746704102\n      ],\n      [\n        \"▁silk\",\n        -11.792515754699707\n      ],\n      [\n        \"▁pourrait\",\n        -11.79278564453125\n      ],\n      [\n        \"▁raport\",\n        -11.79280948638916\n      ],\n      [\n        \"▁Woche\",\n        -11.792889595031738\n      ],\n      [\n        \"fallen\",\n        -11.79293155670166\n      ],\n      [\n        \"sting\",\n        -11.79310131072998\n      ],\n      [\n        \"▁circulation\",\n        -11.793102264404297\n      ],\n      [\n        \"▁skirt\",\n        -11.7931547164917\n      ],\n      [\n        \"▁Title\",\n        -11.793187141418457\n      ],\n      [\n        \"▁17.\",\n        -11.79331111907959\n      ],\n      [\n        \"▁Touch\",\n        -11.793486595153809\n      ],\n      [\n        \"▁utilizat\",\n        -11.79352855682373\n      ],\n      [\n        \"▁Organisation\",\n        -11.793569564819336\n      ],\n      [\n        \"▁mereu\",\n        -11.793848991394043\n      ],\n      [\n        \"▁oxygen\",\n        -11.793953895568848\n      ],\n      [\n        \"lique\",\n        -11.793985366821289\n      ],\n      [\n        \"▁consume\",\n        -11.794100761413574\n      ],\n      [\n        \"▁Barb\",\n        -11.794102668762207\n      ],\n      [\n        \"1.1\",\n        -11.794105529785156\n      ],\n      [\n        \"▁nicely\",\n        -11.79419231414795\n      ],\n      [\n        \"▁psychological\",\n        -11.794227600097656\n      ],\n      [\n        \"▁refrigerator\",\n        -11.794478416442871\n      ],\n      [\n        \"▁fantasy\",\n        -11.79481029510498\n      ],\n      [\n        \"▁dispute\",\n        -11.79494571685791\n      ],\n      [\n        \"▁IBM\",\n        -11.794954299926758\n      ],\n      [\n        \"▁Nation\",\n        -11.794971466064453\n      ],\n      [\n        \"▁mobil\",\n        -11.795063972473145\n      ],\n      [\n        \"▁density\",\n        -11.795201301574707\n      ],\n      [\n        \"ske\",\n        -11.795230865478516\n      ],\n      [\n        \"▁intimate\",\n        -11.795313835144043\n      ],\n      [\n        \"▁tailored\",\n        -11.795319557189941\n      ],\n      [\n        \"▁outline\",\n        -11.795472145080566\n      ],\n      [\n        \"TN\",\n        -11.79554557800293\n      ],\n      [\n        \"mur\",\n        -11.795634269714355\n      ],\n      [\n        \"GC\",\n        -11.795662879943848\n      ],\n      [\n        \"they\",\n        -11.795992851257324\n      ],\n      [\n        \"pag\",\n        -11.796161651611328\n      ],\n      [\n        \"▁Kultur\",\n        -11.796246528625488\n      ],\n      [\n        \"grün\",\n        -11.796281814575195\n      ],\n      [\n        \"voted\",\n        -11.796529769897461\n      ],\n      [\n        \"▁donné\",\n        -11.796546936035156\n      ],\n      [\n        \"▁Să\",\n        -11.796629905700684\n      ],\n      [\n        \"enberg\",\n        -11.796648979187012\n      ],\n      [\n        \"▁wi\",\n        -11.79686450958252\n      ],\n      [\n        \"▁Francis\",\n        -11.797057151794434\n      ],\n      [\n        \"▁Rick\",\n        -11.797157287597656\n      ],\n      [\n        \"accord\",\n        -11.797403335571289\n      ],\n      [\n        \"▁Zusammen\",\n        -11.797415733337402\n      ],\n      [\n        \"▁nonprofit\",\n        -11.797456741333008\n      ],\n      [\n        \"▁listings\",\n        -11.797615051269531\n      ],\n      [\n        \"6,\",\n        -11.797908782958984\n      ],\n      [\n        \"▁maximize\",\n        -11.798253059387207\n      ],\n      [\n        \"bud\",\n        -11.798345565795898\n      ],\n      [\n        \"▁promotional\",\n        -11.798486709594727\n      ],\n      [\n        \"cina\",\n        -11.798646926879883\n      ],\n      [\n        \"▁potatoes\",\n        -11.79869556427002\n      ],\n      [\n        \"▁mot\",\n        -11.798871040344238\n      ],\n      [\n        \"carries\",\n        -11.799384117126465\n      ],\n      [\n        \"▁stabilit\",\n        -11.799458503723145\n      ],\n      [\n        \"▁Door\",\n        -11.799574851989746\n      ],\n      [\n        \"▁downloaded\",\n        -11.799574851989746\n      ],\n      [\n        \"▁experimental\",\n        -11.799724578857422\n      ],\n      [\n        \"HD\",\n        -11.7997407913208\n      ],\n      [\n        \"▁parfois\",\n        -11.79980182647705\n      ],\n      [\n        \"▁zeigen\",\n        -11.800092697143555\n      ],\n      [\n        \"▁proposé\",\n        -11.80030632019043\n      ],\n      [\n        \"▁Verein\",\n        -11.800636291503906\n      ],\n      [\n        \"▁amestec\",\n        -11.800676345825195\n      ],\n      [\n        \"▁entreprise\",\n        -11.800718307495117\n      ],\n      [\n        \"▁PSD\",\n        -11.800841331481934\n      ],\n      [\n        \"▁bake\",\n        -11.800897598266602\n      ],\n      [\n        \"▁Rh\",\n        -11.800904273986816\n      ],\n      [\n        \"▁Mehr\",\n        -11.800922393798828\n      ],\n      [\n        \"▁purple\",\n        -11.801074028015137\n      ],\n      [\n        \"▁recipient\",\n        -11.80109691619873\n      ],\n      [\n        \"rare\",\n        -11.801166534423828\n      ],\n      [\n        \"egi\",\n        -11.80117130279541\n      ],\n      [\n        \"ancien\",\n        -11.801176071166992\n      ],\n      [\n        \"▁risque\",\n        -11.80118465423584\n      ],\n      [\n        \"▁mystery\",\n        -11.80157470703125\n      ],\n      [\n        \"mac\",\n        -11.801697731018066\n      ],\n      [\n        \"ibility\",\n        -11.80182933807373\n      ],\n      [\n        \"▁Moore\",\n        -11.801881790161133\n      ],\n      [\n        \"▁flavors\",\n        -11.801911354064941\n      ],\n      [\n        \"▁trauma\",\n        -11.801966667175293\n      ],\n      [\n        \"▁automotive\",\n        -11.802112579345703\n      ],\n      [\n        \"▁Anyway\",\n        -11.802197456359863\n      ],\n      [\n        \"▁simulation\",\n        -11.802253723144531\n      ],\n      [\n        \"▁crafts\",\n        -11.802525520324707\n      ],\n      [\n        \"▁measurements\",\n        -11.80257511138916\n      ],\n      [\n        \"▁cour\",\n        -11.80257797241211\n      ],\n      [\n        \"▁tard\",\n        -11.802600860595703\n      ],\n      [\n        \"nnie\",\n        -11.802881240844727\n      ],\n      [\n        \"▁Production\",\n        -11.803388595581055\n      ],\n      [\n        \"▁Cleaning\",\n        -11.803567886352539\n      ],\n      [\n        \"5,\",\n        -11.803644180297852\n      ],\n      [\n        \"▁Islamic\",\n        -11.803766250610352\n      ],\n      [\n        \"▁Gate\",\n        -11.80378532409668\n      ],\n      [\n        \"bay\",\n        -11.803814888000488\n      ],\n      [\n        \"HR\",\n        -11.803990364074707\n      ],\n      [\n        \"▁Offer\",\n        -11.80399227142334\n      ],\n      [\n        \"▁acceptance\",\n        -11.804107666015625\n      ],\n      [\n        \"▁Erfahrung\",\n        -11.80412769317627\n      ],\n      [\n        \"▁environ\",\n        -11.804193496704102\n      ],\n      [\n        \"▁fancy\",\n        -11.804218292236328\n      ],\n      [\n        \"▁bullet\",\n        -11.80437183380127\n      ],\n      [\n        \"organ\",\n        -11.804466247558594\n      ],\n      [\n        \"▁Peace\",\n        -11.804520606994629\n      ],\n      [\n        \"▁detalii\",\n        -11.80461597442627\n      ],\n      [\n        \"▁promised\",\n        -11.804715156555176\n      ],\n      [\n        \"▁wellness\",\n        -11.804746627807617\n      ],\n      [\n        \"▁satisfy\",\n        -11.80481243133545\n      ],\n      [\n        \"▁grants\",\n        -11.805212020874023\n      ],\n      [\n        \"accueil\",\n        -11.80522346496582\n      ],\n      [\n        \"▁oben\",\n        -11.805412292480469\n      ],\n      [\n        \"▁prospects\",\n        -11.80543327331543\n      ],\n      [\n        \"▁Events\",\n        -11.805513381958008\n      ],\n      [\n        \"2013\",\n        -11.805569648742676\n      ],\n      [\n        \"gesehen\",\n        -11.805685997009277\n      ],\n      [\n        \"▁£1\",\n        -11.805727005004883\n      ],\n      [\n        \"▁handelt\",\n        -11.805798530578613\n      ],\n      [\n        \"▁Spieler\",\n        -11.805876731872559\n      ],\n      [\n        \"▁Virtual\",\n        -11.806145668029785\n      ],\n      [\n        \"▁bubble\",\n        -11.806239128112793\n      ],\n      [\n        \"▁Trend\",\n        -11.806254386901855\n      ],\n      [\n        \"▁sistemul\",\n        -11.806315422058105\n      ],\n      [\n        \"▁Morgan\",\n        -11.806320190429688\n      ],\n      [\n        \"▁pole\",\n        -11.806503295898438\n      ],\n      [\n        \"▁spielen\",\n        -11.806533813476562\n      ],\n      [\n        \"tür\",\n        -11.806571006774902\n      ],\n      [\n        \"SCO\",\n        -11.806572914123535\n      ],\n      [\n        \"▁informative\",\n        -11.806678771972656\n      ],\n      [\n        \"▁affirm\",\n        -11.806755065917969\n      ],\n      [\n        \"▁Aqua\",\n        -11.806818008422852\n      ],\n      [\n        \"▁AR\",\n        -11.806888580322266\n      ],\n      [\n        \"richten\",\n        -11.807071685791016\n      ],\n      [\n        \"▁rewards\",\n        -11.807122230529785\n      ],\n      [\n        \"lub\",\n        -11.807235717773438\n      ],\n      [\n        \"shot\",\n        -11.807236671447754\n      ],\n      [\n        \"LM\",\n        -11.807540893554688\n      ],\n      [\n        \"Up\",\n        -11.807586669921875\n      ],\n      [\n        \"▁absolut\",\n        -11.807737350463867\n      ],\n      [\n        \"▁Mart\",\n        -11.807806968688965\n      ],\n      [\n        \"erweise\",\n        -11.807812690734863\n      ],\n      [\n        \"BP\",\n        -11.807977676391602\n      ],\n      [\n        \"▁difficile\",\n        -11.808152198791504\n      ],\n      [\n        \"▁Document\",\n        -11.808159828186035\n      ],\n      [\n        \"▁Sweet\",\n        -11.8082914352417\n      ],\n      [\n        \"▁indicator\",\n        -11.808338165283203\n      ],\n      [\n        \"▁Boden\",\n        -11.808389663696289\n      ],\n      [\n        \"mates\",\n        -11.808477401733398\n      ],\n      [\n        \"▁supporters\",\n        -11.808504104614258\n      ],\n      [\n        \"▁begun\",\n        -11.808600425720215\n      ],\n      [\n        \"▁blogging\",\n        -11.808611869812012\n      ],\n      [\n        \"▁CL\",\n        -11.808663368225098\n      ],\n      [\n        \"gres\",\n        -11.808692932128906\n      ],\n      [\n        \"▁preferences\",\n        -11.808738708496094\n      ],\n      [\n        \"▁screw\",\n        -11.808756828308105\n      ],\n      [\n        \"▁tutor\",\n        -11.808858871459961\n      ],\n      [\n        \"▁Additional\",\n        -11.80891227722168\n      ],\n      [\n        \"▁Bitte\",\n        -11.808976173400879\n      ],\n      [\n        \"utilizing\",\n        -11.808998107910156\n      ],\n      [\n        \"▁expérience\",\n        -11.809073448181152\n      ],\n      [\n        \"▁dur\",\n        -11.809146881103516\n      ],\n      [\n        \"▁precisely\",\n        -11.809178352355957\n      ],\n      [\n        \"▁janvier\",\n        -11.809394836425781\n      ],\n      [\n        \"AGE\",\n        -11.80987548828125\n      ],\n      [\n        \"moto\",\n        -11.810007095336914\n      ],\n      [\n        \"▁counsel\",\n        -11.810195922851562\n      ],\n      [\n        \"▁110\",\n        -11.810226440429688\n      ],\n      [\n        \"nick\",\n        -11.810245513916016\n      ],\n      [\n        \"licit\",\n        -11.810540199279785\n      ],\n      [\n        \"technik\",\n        -11.810659408569336\n      ],\n      [\n        \"▁collaborate\",\n        -11.810736656188965\n      ],\n      [\n        \"▁neighbors\",\n        -11.810794830322266\n      ],\n      [\n        \"tered\",\n        -11.810922622680664\n      ],\n      [\n        \"▁excel\",\n        -11.811025619506836\n      ],\n      [\n        \"▁Route\",\n        -11.811059951782227\n      ],\n      [\n        \"steuer\",\n        -11.81109619140625\n      ],\n      [\n        \"▁pioneer\",\n        -11.811607360839844\n      ],\n      [\n        \"nuit\",\n        -11.81169319152832\n      ],\n      [\n        \"▁skip\",\n        -11.811963081359863\n      ],\n      [\n        \"▁destruction\",\n        -11.811997413635254\n      ],\n      [\n        \"▁thesis\",\n        -11.812249183654785\n      ],\n      [\n        \"▁libre\",\n        -11.812317848205566\n      ],\n      [\n        \"▁petition\",\n        -11.81234073638916\n      ],\n      [\n        \"▁steady\",\n        -11.812456130981445\n      ],\n      [\n        \"▁medications\",\n        -11.812458992004395\n      ],\n      [\n        \"▁audiences\",\n        -11.812623023986816\n      ],\n      [\n        \"▁coaches\",\n        -11.812689781188965\n      ],\n      [\n        \"aller\",\n        -11.812704086303711\n      ],\n      [\n        \"3,000\",\n        -11.812705993652344\n      ],\n      [\n        \"▁anger\",\n        -11.812785148620605\n      ],\n      [\n        \"▁striking\",\n        -11.812844276428223\n      ],\n      [\n        \"▁shades\",\n        -11.81291675567627\n      ],\n      [\n        \"▁Sitz\",\n        -11.812994956970215\n      ],\n      [\n        \"▁gluten\",\n        -11.813162803649902\n      ],\n      [\n        \"▁egal\",\n        -11.813222885131836\n      ],\n      [\n        \"ania\",\n        -11.813223838806152\n      ],\n      [\n        \"▁defend\",\n        -11.813241004943848\n      ],\n      [\n        \"gut\",\n        -11.81382942199707\n      ],\n      [\n        \"▁reserves\",\n        -11.813895225524902\n      ],\n      [\n        \"▁advocate\",\n        -11.814053535461426\n      ],\n      [\n        \"▁Cit\",\n        -11.814082145690918\n      ],\n      [\n        \"▁technicians\",\n        -11.814105033874512\n      ],\n      [\n        \"▁cater\",\n        -11.814138412475586\n      ],\n      [\n        \"leitung\",\n        -11.814190864562988\n      ],\n      [\n        \"▁towns\",\n        -11.814335823059082\n      ],\n      [\n        \"▁Costa\",\n        -11.814364433288574\n      ],\n      [\n        \"▁confront\",\n        -11.814567565917969\n      ],\n      [\n        \"mount\",\n        -11.814652442932129\n      ],\n      [\n        \"▁nationale\",\n        -11.814706802368164\n      ],\n      [\n        \"▁adverse\",\n        -11.814932823181152\n      ],\n      [\n        \"▁couleur\",\n        -11.815112113952637\n      ],\n      [\n        \"▁delight\",\n        -11.815169334411621\n      ],\n      [\n        \"▁promises\",\n        -11.815224647521973\n      ],\n      [\n        \"▁silent\",\n        -11.81550121307373\n      ],\n      [\n        \"richtet\",\n        -11.815556526184082\n      ],\n      [\n        \"▁Companies\",\n        -11.815614700317383\n      ],\n      [\n        \"▁Charlotte\",\n        -11.815620422363281\n      ],\n      [\n        \"▁labels\",\n        -11.815652847290039\n      ],\n      [\n        \"▁Süd\",\n        -11.815656661987305\n      ],\n      [\n        \"▁Honor\",\n        -11.81567096710205\n      ],\n      [\n        \"▁complaints\",\n        -11.815710067749023\n      ],\n      [\n        \"▁siècle\",\n        -11.815752029418945\n      ],\n      [\n        \"▁suits\",\n        -11.815792083740234\n      ],\n      [\n        \"▁Bath\",\n        -11.815827369689941\n      ],\n      [\n        \"mise\",\n        -11.815926551818848\n      ],\n      [\n        \"▁acela\",\n        -11.8159818649292\n      ],\n      [\n        \"▁candidat\",\n        -11.816011428833008\n      ],\n      [\n        \"Flo\",\n        -11.816207885742188\n      ],\n      [\n        \"▁conservative\",\n        -11.816215515136719\n      ],\n      [\n        \"DD\",\n        -11.816314697265625\n      ],\n      [\n        \"▁changement\",\n        -11.816414833068848\n      ],\n      [\n        \"▁login\",\n        -11.816492080688477\n      ],\n      [\n        \"▁Fashion\",\n        -11.816585540771484\n      ],\n      [\n        \"reichen\",\n        -11.816672325134277\n      ],\n      [\n        \"through\",\n        -11.816751480102539\n      ],\n      [\n        \"aki\",\n        -11.817240715026855\n      ],\n      [\n        \"gna\",\n        -11.817547798156738\n      ],\n      [\n        \"▁verse\",\n        -11.817551612854004\n      ],\n      [\n        \"▁threats\",\n        -11.817622184753418\n      ],\n      [\n        \"▁Song\",\n        -11.817770004272461\n      ],\n      [\n        \"▁funded\",\n        -11.81792163848877\n      ],\n      [\n        \"langen\",\n        -11.818023681640625\n      ],\n      [\n        \"▁distribu\",\n        -11.818195343017578\n      ],\n      [\n        \"édition\",\n        -11.818316459655762\n      ],\n      [\n        \"▁royal\",\n        -11.818562507629395\n      ],\n      [\n        \"▁bevor\",\n        -11.818829536437988\n      ],\n      [\n        \"▁02\",\n        -11.818854331970215\n      ],\n      [\n        \"straße\",\n        -11.818938255310059\n      ],\n      [\n        \"edit\",\n        -11.81904125213623\n      ],\n      [\n        \"▁energetic\",\n        -11.81922721862793\n      ],\n      [\n        \"▁Carr\",\n        -11.819757461547852\n      ],\n      [\n        \"viol\",\n        -11.819937705993652\n      ],\n      [\n        \"▁niche\",\n        -11.820054054260254\n      ],\n      [\n        \"avais\",\n        -11.820099830627441\n      ],\n      [\n        \"▁backyard\",\n        -11.82010269165039\n      ],\n      [\n        \"▁Saudi\",\n        -11.820158958435059\n      ],\n      [\n        \"▁Zwei\",\n        -11.820207595825195\n      ],\n      [\n        \"▁Legal\",\n        -11.82027530670166\n      ],\n      [\n        \"accessed\",\n        -11.820277214050293\n      ],\n      [\n        \"▁choisi\",\n        -11.820340156555176\n      ],\n      [\n        \"▁GDP\",\n        -11.820343971252441\n      ],\n      [\n        \"oferă\",\n        -11.820352554321289\n      ],\n      [\n        \"hlen\",\n        -11.820490837097168\n      ],\n      [\n        \"▁Wor\",\n        -11.820520401000977\n      ],\n      [\n        \"▁cheer\",\n        -11.820586204528809\n      ],\n      [\n        \"▁barely\",\n        -11.820625305175781\n      ],\n      [\n        \"cost\",\n        -11.820646286010742\n      ],\n      [\n        \"▁Really\",\n        -11.820661544799805\n      ],\n      [\n        \"kol\",\n        -11.820721626281738\n      ],\n      [\n        \"▁binding\",\n        -11.821045875549316\n      ],\n      [\n        \"euer\",\n        -11.821136474609375\n      ],\n      [\n        \"▁optimization\",\n        -11.821158409118652\n      ],\n      [\n        \"▁Designer\",\n        -11.8211669921875\n      ],\n      [\n        \"▁measuring\",\n        -11.82117748260498\n      ],\n      [\n        \"ncy\",\n        -11.821516036987305\n      ],\n      [\n        \"weise\",\n        -11.821520805358887\n      ],\n      [\n        \"DER\",\n        -11.821850776672363\n      ],\n      [\n        \"▁$7\",\n        -11.821949005126953\n      ],\n      [\n        \"▁Anfang\",\n        -11.821954727172852\n      ],\n      [\n        \"material\",\n        -11.821967124938965\n      ],\n      [\n        \"▁antique\",\n        -11.822281837463379\n      ],\n      [\n        \"▁Certificate\",\n        -11.822294235229492\n      ],\n      [\n        \"▁modest\",\n        -11.822370529174805\n      ],\n      [\n        \"ției\",\n        -11.822427749633789\n      ],\n      [\n        \"▁praise\",\n        -11.82245922088623\n      ],\n      [\n        \"▁Springs\",\n        -11.822660446166992\n      ],\n      [\n        \"▁organiza\",\n        -11.823041915893555\n      ],\n      [\n        \"jurul\",\n        -11.823047637939453\n      ],\n      [\n        \"▁plumbing\",\n        -11.82341194152832\n      ],\n      [\n        \"▁foster\",\n        -11.823490142822266\n      ],\n      [\n        \"▁Wy\",\n        -11.823491096496582\n      ],\n      [\n        \"▁Sab\",\n        -11.823503494262695\n      ],\n      [\n        \"▁overwhelming\",\n        -11.823677062988281\n      ],\n      [\n        \"▁matin\",\n        -11.823812484741211\n      ],\n      [\n        \"▁responded\",\n        -11.82408332824707\n      ],\n      [\n        \"▁confused\",\n        -11.824150085449219\n      ],\n      [\n        \"▁blessed\",\n        -11.824280738830566\n      ],\n      [\n        \"▁160\",\n        -11.824295997619629\n      ],\n      [\n        \"▁ingredient\",\n        -11.824360847473145\n      ],\n      [\n        \"▁confer\",\n        -11.82448673248291\n      ],\n      [\n        \"▁Gesundheit\",\n        -11.824530601501465\n      ],\n      [\n        \"▁bucket\",\n        -11.824555397033691\n      ],\n      [\n        \"kraft\",\n        -11.824565887451172\n      ],\n      [\n        \"lange\",\n        -11.824630737304688\n      ],\n      [\n        \"▁Kopf\",\n        -11.824678421020508\n      ],\n      [\n        \"▁Prize\",\n        -11.824678421020508\n      ],\n      [\n        \"▁authorized\",\n        -11.824779510498047\n      ],\n      [\n        \"▁tick\",\n        -11.824803352355957\n      ],\n      [\n        \"▁steal\",\n        -11.824910163879395\n      ],\n      [\n        \"Depending\",\n        -11.824918746948242\n      ],\n      [\n        \"Depuis\",\n        -11.824952125549316\n      ],\n      [\n        \"▁functie\",\n        -11.82499885559082\n      ],\n      [\n        \"▁developments\",\n        -11.825053215026855\n      ],\n      [\n        \"▁Christians\",\n        -11.825311660766602\n      ],\n      [\n        \"▁calculated\",\n        -11.8256254196167\n      ],\n      [\n        \"▁Leave\",\n        -11.825672149658203\n      ],\n      [\n        \"▁Jam\",\n        -11.82573413848877\n      ],\n      [\n        \"▁habitat\",\n        -11.825760841369629\n      ],\n      [\n        \"▁Sorry\",\n        -11.825801849365234\n      ],\n      [\n        \"▁oficial\",\n        -11.825944900512695\n      ],\n      [\n        \"▁allein\",\n        -11.826079368591309\n      ],\n      [\n        \"▁concentrate\",\n        -11.82608413696289\n      ],\n      [\n        \"dica\",\n        -11.826302528381348\n      ],\n      [\n        \"▁Convention\",\n        -11.826476097106934\n      ],\n      [\n        \"illes\",\n        -11.826550483703613\n      ],\n      [\n        \"▁fum\",\n        -11.82664680480957\n      ],\n      [\n        \"▁Tal\",\n        -11.826651573181152\n      ],\n      [\n        \"Europe\",\n        -11.826899528503418\n      ],\n      [\n        \"▁attachment\",\n        -11.826949119567871\n      ],\n      [\n        \"▁sensibil\",\n        -11.826995849609375\n      ],\n      [\n        \"▁clue\",\n        -11.82715892791748\n      ],\n      [\n        \"▁specialty\",\n        -11.827203750610352\n      ],\n      [\n        \"▁Cou\",\n        -11.827229499816895\n      ],\n      [\n        \"▁liste\",\n        -11.827278137207031\n      ],\n      [\n        \"▁Penn\",\n        -11.827465057373047\n      ],\n      [\n        \"TRA\",\n        -11.827559471130371\n      ],\n      [\n        \"▁Themen\",\n        -11.827561378479004\n      ],\n      [\n        \"▁motivated\",\n        -11.827906608581543\n      ],\n      [\n        \"▁camere\",\n        -11.828017234802246\n      ],\n      [\n        \"▁14,\",\n        -11.828393936157227\n      ],\n      [\n        \"▁attendance\",\n        -11.828557968139648\n      ],\n      [\n        \"atorii\",\n        -11.828581809997559\n      ],\n      [\n        \"chemistry\",\n        -11.82873821258545\n      ],\n      [\n        \"▁roofing\",\n        -11.828959465026855\n      ],\n      [\n        \"▁Links\",\n        -11.829048156738281\n      ],\n      [\n        \"▁trou\",\n        -11.829103469848633\n      ],\n      [\n        \"▁trucks\",\n        -11.829136848449707\n      ],\n      [\n        \"hilfe\",\n        -11.829557418823242\n      ],\n      [\n        \"▁(6\",\n        -11.829599380493164\n      ],\n      [\n        \"vapor\",\n        -11.82964038848877\n      ],\n      [\n        \"mad\",\n        -11.829668045043945\n      ],\n      [\n        \"▁Albert\",\n        -11.829877853393555\n      ],\n      [\n        \"▁FIG\",\n        -11.830073356628418\n      ],\n      [\n        \"▁Rand\",\n        -11.830187797546387\n      ],\n      [\n        \"▁Constitution\",\n        -11.830219268798828\n      ],\n      [\n        \"ambi\",\n        -11.830294609069824\n      ],\n      [\n        \"▁Syria\",\n        -11.830307006835938\n      ],\n      [\n        \"▁Fond\",\n        -11.830477714538574\n      ],\n      [\n        \"▁gouvernement\",\n        -11.830594062805176\n      ],\n      [\n        \"▁Active\",\n        -11.830705642700195\n      ],\n      [\n        \"▁prints\",\n        -11.830801963806152\n      ],\n      [\n        \"▁weigh\",\n        -11.8308687210083\n      ],\n      [\n        \"▁Craft\",\n        -11.831069946289062\n      ],\n      [\n        \"▁projets\",\n        -11.831247329711914\n      ],\n      [\n        \"▁paste\",\n        -11.831377029418945\n      ],\n      [\n        \"anci\",\n        -11.83139705657959\n      ],\n      [\n        \"kie\",\n        -11.831411361694336\n      ],\n      [\n        \"▁gains\",\n        -11.83165168762207\n      ],\n      [\n        \"▁Record\",\n        -11.831942558288574\n      ],\n      [\n        \"▁beliefs\",\n        -11.831954956054688\n      ],\n      [\n        \"countless\",\n        -11.831957817077637\n      ],\n      [\n        \"▁tomatoes\",\n        -11.831997871398926\n      ],\n      [\n        \"arie\",\n        -11.832082748413086\n      ],\n      [\n        \"▁140\",\n        -11.83211612701416\n      ],\n      [\n        \"▁ethical\",\n        -11.832229614257812\n      ],\n      [\n        \"objectif\",\n        -11.832279205322266\n      ],\n      [\n        \"▁acestuia\",\n        -11.832283973693848\n      ],\n      [\n        \"▁Bluetooth\",\n        -11.832398414611816\n      ],\n      [\n        \"▁agriculture\",\n        -11.832746505737305\n      ],\n      [\n        \"uré\",\n        -11.833027839660645\n      ],\n      [\n        \"▁cale\",\n        -11.833072662353516\n      ],\n      [\n        \"▁articol\",\n        -11.833073616027832\n      ],\n      [\n        \"▁gum\",\n        -11.833319664001465\n      ],\n      [\n        \"▁vendor\",\n        -11.833490371704102\n      ],\n      [\n        \"ifié\",\n        -11.833527565002441\n      ],\n      [\n        \"▁peer\",\n        -11.833662033081055\n      ],\n      [\n        \"pod\",\n        -11.834036827087402\n      ],\n      [\n        \"▁utilized\",\n        -11.834113121032715\n      ],\n      [\n        \"▁Mü\",\n        -11.834207534790039\n      ],\n      [\n        \"owohl\",\n        -11.834208488464355\n      ],\n      [\n        \"hilst\",\n        -11.834233283996582\n      ],\n      [\n        \"frame\",\n        -11.834260940551758\n      ],\n      [\n        \"▁fridge\",\n        -11.834822654724121\n      ],\n      [\n        \"▁query\",\n        -11.835108757019043\n      ],\n      [\n        \"▁Survey\",\n        -11.835227012634277\n      ],\n      [\n        \"▁Hell\",\n        -11.835247993469238\n      ],\n      [\n        \"▁notification\",\n        -11.83530044555664\n      ],\n      [\n        \"TR\",\n        -11.83538818359375\n      ],\n      [\n        \"▁ultima\",\n        -11.835505485534668\n      ],\n      [\n        \"▁radiation\",\n        -11.835631370544434\n      ],\n      [\n        \"▁musicians\",\n        -11.835821151733398\n      ],\n      [\n        \"CAN\",\n        -11.83595085144043\n      ],\n      [\n        \"▁grocery\",\n        -11.83607292175293\n      ],\n      [\n        \"▁Sicherheit\",\n        -11.83611011505127\n      ],\n      [\n        \"▁Highway\",\n        -11.836276054382324\n      ],\n      [\n        \"▁Break\",\n        -11.836285591125488\n      ],\n      [\n        \"TED\",\n        -11.836345672607422\n      ],\n      [\n        \"ön\",\n        -11.836352348327637\n      ],\n      [\n        \"▁biological\",\n        -11.836352348327637\n      ],\n      [\n        \"qual\",\n        -11.836397171020508\n      ],\n      [\n        \"250\",\n        -11.83641242980957\n      ],\n      [\n        \"▁modify\",\n        -11.836651802062988\n      ],\n      [\n        \"▁Hit\",\n        -11.836698532104492\n      ],\n      [\n        \"▁Iar\",\n        -11.836838722229004\n      ],\n      [\n        \"aged\",\n        -11.836884498596191\n      ],\n      [\n        \"...)\",\n        -11.83688735961914\n      ],\n      [\n        \"▁contrat\",\n        -11.836928367614746\n      ],\n      [\n        \"▁centres\",\n        -11.836956977844238\n      ],\n      [\n        \"griff\",\n        -11.836987495422363\n      ],\n      [\n        \"Our\",\n        -11.837233543395996\n      ],\n      [\n        \"▁determination\",\n        -11.837300300598145\n      ],\n      [\n        \"▁variables\",\n        -11.83742904663086\n      ],\n      [\n        \"▁nuts\",\n        -11.837472915649414\n      ],\n      [\n        \"échange\",\n        -11.837577819824219\n      ],\n      [\n        \"extérieur\",\n        -11.837631225585938\n      ],\n      [\n        \"▁suflet\",\n        -11.83764362335205\n      ],\n      [\n        \"▁Scha\",\n        -11.837752342224121\n      ],\n      [\n        \"stück\",\n        -11.837774276733398\n      ],\n      [\n        \"▁Tau\",\n        -11.837821960449219\n      ],\n      [\n        \"▁participa\",\n        -11.838008880615234\n      ],\n      [\n        \"▁mad\",\n        -11.838034629821777\n      ],\n      [\n        \"▁relie\",\n        -11.838051795959473\n      ],\n      [\n        \"▁Fine\",\n        -11.83808422088623\n      ],\n      [\n        \"▁grape\",\n        -11.838118553161621\n      ],\n      [\n        \"▁wage\",\n        -11.838141441345215\n      ],\n      [\n        \"▁startup\",\n        -11.838193893432617\n      ],\n      [\n        \"▁blank\",\n        -11.838194847106934\n      ],\n      [\n        \"▁physique\",\n        -11.838199615478516\n      ],\n      [\n        \"▁punch\",\n        -11.838233947753906\n      ],\n      [\n        \"▁contacts\",\n        -11.838321685791016\n      ],\n      [\n        \"▁dezvolt\",\n        -11.83835220336914\n      ],\n      [\n        \"cross\",\n        -11.838639259338379\n      ],\n      [\n        \"▁TR\",\n        -11.838652610778809\n      ],\n      [\n        \"▁gener\",\n        -11.838754653930664\n      ],\n      [\n        \"▁indem\",\n        -11.838823318481445\n      ],\n      [\n        \"▁Stan\",\n        -11.838839530944824\n      ],\n      [\n        \"▁azi\",\n        -11.838930130004883\n      ],\n      [\n        \"▁Sel\",\n        -11.838958740234375\n      ],\n      [\n        \"▁Tot\",\n        -11.83924674987793\n      ],\n      [\n        \"vra\",\n        -11.839341163635254\n      ],\n      [\n        \"▁recruit\",\n        -11.839482307434082\n      ],\n      [\n        \"▁Yeah\",\n        -11.839494705200195\n      ],\n      [\n        \"/10\",\n        -11.839507102966309\n      ],\n      [\n        \"▁nail\",\n        -11.83956241607666\n      ],\n      [\n        \"▁Ky\",\n        -11.839611053466797\n      ],\n      [\n        \"▁beloved\",\n        -11.839760780334473\n      ],\n      [\n        \"operative\",\n        -11.839823722839355\n      ],\n      [\n        \"▁Tickets\",\n        -11.83983325958252\n      ],\n      [\n        \"▁tear\",\n        -11.840229988098145\n      ],\n      [\n        \"▁amp\",\n        -11.840352058410645\n      ],\n      [\n        \"▁04\",\n        -11.840361595153809\n      ],\n      [\n        \"▁illustrate\",\n        -11.840361595153809\n      ],\n      [\n        \"▁mac\",\n        -11.840400695800781\n      ],\n      [\n        \"▁receiver\",\n        -11.840482711791992\n      ],\n      [\n        \"atrice\",\n        -11.840508460998535\n      ],\n      [\n        \"▁souhait\",\n        -11.840572357177734\n      ],\n      [\n        \"▁Gewinn\",\n        -11.840619087219238\n      ],\n      [\n        \"▁Vit\",\n        -11.840808868408203\n      ],\n      [\n        \"roch\",\n        -11.841202735900879\n      ],\n      [\n        \"▁arata\",\n        -11.841262817382812\n      ],\n      [\n        \"▁Indiana\",\n        -11.841364860534668\n      ],\n      [\n        \"child\",\n        -11.841516494750977\n      ],\n      [\n        \"▁invested\",\n        -11.84157657623291\n      ],\n      [\n        \"▁Excellent\",\n        -11.841625213623047\n      ],\n      [\n        \"gori\",\n        -11.841769218444824\n      ],\n      [\n        \"▁thermal\",\n        -11.841813087463379\n      ],\n      [\n        \"Str\",\n        -11.841973304748535\n      ],\n      [\n        \"▁liver\",\n        -11.84201717376709\n      ],\n      [\n        \"miss\",\n        -11.842035293579102\n      ],\n      [\n        \"▁utiliser\",\n        -11.842120170593262\n      ],\n      [\n        \"▁prest\",\n        -11.842445373535156\n      ],\n      [\n        \"2016\",\n        -11.842506408691406\n      ],\n      [\n        \"isée\",\n        -11.842508316040039\n      ],\n      [\n        \"▁Index\",\n        -11.842559814453125\n      ],\n      [\n        \"▁arch\",\n        -11.842639923095703\n      ],\n      [\n        \"▁Toyota\",\n        -11.842748641967773\n      ],\n      [\n        \"▁YOUR\",\n        -11.842782020568848\n      ],\n      [\n        \"▁Mexican\",\n        -11.842891693115234\n      ],\n      [\n        \"▁gegenüber\",\n        -11.842940330505371\n      ],\n      [\n        \"▁cannabis\",\n        -11.843033790588379\n      ],\n      [\n        \"bis\",\n        -11.843077659606934\n      ],\n      [\n        \"vage\",\n        -11.843083381652832\n      ],\n      [\n        \"hall\",\n        -11.843091011047363\n      ],\n      [\n        \"fax\",\n        -11.843137741088867\n      ],\n      [\n        \"▁spoken\",\n        -11.843232154846191\n      ],\n      [\n        \"▁Zimmer\",\n        -11.843544960021973\n      ],\n      [\n        \"kauf\",\n        -11.8436279296875\n      ],\n      [\n        \"▁couleurs\",\n        -11.843705177307129\n      ],\n      [\n        \"▁NJ\",\n        -11.844026565551758\n      ],\n      [\n        \"▁Heritage\",\n        -11.844318389892578\n      ],\n      [\n        \"▁Pflege\",\n        -11.844321250915527\n      ],\n      [\n        \"luc\",\n        -11.844361305236816\n      ],\n      [\n        \"▁56\",\n        -11.844489097595215\n      ],\n      [\n        \"VP\",\n        -11.844542503356934\n      ],\n      [\n        \"▁cuvinte\",\n        -11.844594955444336\n      ],\n      [\n        \"▁Alliance\",\n        -11.844614028930664\n      ],\n      [\n        \"▁coco\",\n        -11.844615936279297\n      ],\n      [\n        \"▁leverage\",\n        -11.844762802124023\n      ],\n      [\n        \"auch\",\n        -11.844844818115234\n      ],\n      [\n        \"▁Cart\",\n        -11.84506607055664\n      ],\n      [\n        \"taux\",\n        -11.84532642364502\n      ],\n      [\n        \"east\",\n        -11.84560775756836\n      ],\n      [\n        \"▁decorating\",\n        -11.84565258026123\n      ],\n      [\n        \"tip\",\n        -11.84565544128418\n      ],\n      [\n        \"▁Communications\",\n        -11.845780372619629\n      ],\n      [\n        \"ACE\",\n        -11.84580135345459\n      ],\n      [\n        \"▁Consul\",\n        -11.845993041992188\n      ],\n      [\n        \"▁Swiss\",\n        -11.846197128295898\n      ],\n      [\n        \"inci\",\n        -11.846230506896973\n      ],\n      [\n        \"▁Fact\",\n        -11.846312522888184\n      ],\n      [\n        \"▁ajung\",\n        -11.846321105957031\n      ],\n      [\n        \"▁airline\",\n        -11.846325874328613\n      ],\n      [\n        \"▁kidney\",\n        -11.846379280090332\n      ],\n      [\n        \"▁Records\",\n        -11.84642505645752\n      ],\n      [\n        \"▁Olympic\",\n        -11.846747398376465\n      ],\n      [\n        \"▁dried\",\n        -11.84719467163086\n      ],\n      [\n        \"oivent\",\n        -11.847333908081055\n      ],\n      [\n        \"▁Adobe\",\n        -11.847467422485352\n      ],\n      [\n        \"▁powers\",\n        -11.847748756408691\n      ],\n      [\n        \"lande\",\n        -11.847834587097168\n      ],\n      [\n        \"▁relieve\",\n        -11.847858428955078\n      ],\n      [\n        \"ţine\",\n        -11.847898483276367\n      ],\n      [\n        \"▁gradually\",\n        -11.847945213317871\n      ],\n      [\n        \"mud\",\n        -11.84811019897461\n      ],\n      [\n        \"▁30,\",\n        -11.848116874694824\n      ],\n      [\n        \"▁plante\",\n        -11.848133087158203\n      ],\n      [\n        \"▁Hug\",\n        -11.848225593566895\n      ],\n      [\n        \"▁Focus\",\n        -11.84853458404541\n      ],\n      [\n        \"▁distinctive\",\n        -11.848594665527344\n      ],\n      [\n        \"▁Bab\",\n        -11.848662376403809\n      ],\n      [\n        \"tata\",\n        -11.848679542541504\n      ],\n      [\n        \"▁Nun\",\n        -11.848797798156738\n      ],\n      [\n        \"▁Eve\",\n        -11.848811149597168\n      ],\n      [\n        \"▁déc\",\n        -11.848881721496582\n      ],\n      [\n        \"▁Beitrag\",\n        -11.84900951385498\n      ],\n      [\n        \"▁devenit\",\n        -11.849042892456055\n      ],\n      [\n        \"driven\",\n        -11.849250793457031\n      ],\n      [\n        \"▁offerings\",\n        -11.84933853149414\n      ],\n      [\n        \"▁exc\",\n        -11.84941577911377\n      ],\n      [\n        \"encies\",\n        -11.849576950073242\n      ],\n      [\n        \"▁Neuro\",\n        -11.849588394165039\n      ],\n      [\n        \"scher\",\n        -11.849604606628418\n      ],\n      [\n        \"map\",\n        -11.849703788757324\n      ],\n      [\n        \"pending\",\n        -11.849783897399902\n      ],\n      [\n        \"▁courage\",\n        -11.849799156188965\n      ],\n      [\n        \"axe\",\n        -11.849894523620605\n      ],\n      [\n        \"▁Gesellschaft\",\n        -11.849900245666504\n      ],\n      [\n        \"▁ears\",\n        -11.85000991821289\n      ],\n      [\n        \"▁aider\",\n        -11.850403785705566\n      ],\n      [\n        \"▁Cast\",\n        -11.85042667388916\n      ],\n      [\n        \"fast\",\n        -11.850442886352539\n      ],\n      [\n        \"▁departe\",\n        -11.850502014160156\n      ],\n      [\n        \"▁oak\",\n        -11.850507736206055\n      ],\n      [\n        \"▁batch\",\n        -11.850730895996094\n      ],\n      [\n        \"▁Corporate\",\n        -11.850762367248535\n      ],\n      [\n        \"▁Ost\",\n        -11.850895881652832\n      ],\n      [\n        \"-14\",\n        -11.850897789001465\n      ],\n      [\n        \"▁Pie\",\n        -11.85115909576416\n      ],\n      [\n        \"▁ranking\",\n        -11.851273536682129\n      ],\n      [\n        \"clusion\",\n        -11.851316452026367\n      ],\n      [\n        \"▁costume\",\n        -11.851347923278809\n      ],\n      [\n        \"▁Knight\",\n        -11.851449966430664\n      ],\n      [\n        \"▁privat\",\n        -11.851577758789062\n      ],\n      [\n        \"▁Engineer\",\n        -11.851593971252441\n      ],\n      [\n        \"▁gens\",\n        -11.8517427444458\n      ],\n      [\n        \"physics\",\n        -11.85176944732666\n      ],\n      [\n        \"generating\",\n        -11.851773262023926\n      ],\n      [\n        \"directement\",\n        -11.851786613464355\n      ],\n      [\n        \"▁confidential\",\n        -11.851810455322266\n      ],\n      [\n        \"▁poet\",\n        -11.851937294006348\n      ],\n      [\n        \"▁monster\",\n        -11.851944923400879\n      ],\n      [\n        \"▁suppose\",\n        -11.851984977722168\n      ],\n      [\n        \"său\",\n        -11.851996421813965\n      ],\n      [\n        \"▁balls\",\n        -11.852103233337402\n      ],\n      [\n        \"▁substitute\",\n        -11.852137565612793\n      ],\n      [\n        \"▁simultaneously\",\n        -11.852238655090332\n      ],\n      [\n        \"▁specify\",\n        -11.852272033691406\n      ],\n      [\n        \"wald\",\n        -11.852287292480469\n      ],\n      [\n        \"▁collapse\",\n        -11.852352142333984\n      ],\n      [\n        \"dessus\",\n        -11.852458953857422\n      ],\n      [\n        \"▁vitr\",\n        -11.852516174316406\n      ],\n      [\n        \"▁recruitment\",\n        -11.852607727050781\n      ],\n      [\n        \"denken\",\n        -11.852632522583008\n      ],\n      [\n        \"▁candy\",\n        -11.852691650390625\n      ],\n      [\n        \"▁tourists\",\n        -11.852721214294434\n      ],\n      [\n        \"dimensional\",\n        -11.852782249450684\n      ],\n      [\n        \"conce\",\n        -11.852814674377441\n      ],\n      [\n        \"wechsel\",\n        -11.852822303771973\n      ],\n      [\n        \"▁passende\",\n        -11.852971076965332\n      ],\n      [\n        \"industrie\",\n        -11.85299301147461\n      ],\n      [\n        \"agne\",\n        -11.853127479553223\n      ],\n      [\n        \"▁warehouse\",\n        -11.853233337402344\n      ],\n      [\n        \"▁Jugend\",\n        -11.853277206420898\n      ],\n      [\n        \"▁Weise\",\n        -11.853357315063477\n      ],\n      [\n        \"▁Zone\",\n        -11.853528022766113\n      ],\n      [\n        \"▁licence\",\n        -11.853550910949707\n      ],\n      [\n        \"▁broker\",\n        -11.853630065917969\n      ],\n      [\n        \"▁Rolle\",\n        -11.85365104675293\n      ],\n      [\n        \"pton\",\n        -11.853789329528809\n      ],\n      [\n        \"▁preference\",\n        -11.853846549987793\n      ],\n      [\n        \"▁homeowners\",\n        -11.853861808776855\n      ],\n      [\n        \"▁Lum\",\n        -11.85387134552002\n      ],\n      [\n        \"▁Chairman\",\n        -11.853879928588867\n      ],\n      [\n        \"▁Pages\",\n        -11.853998184204102\n      ],\n      [\n        \"▁beam\",\n        -11.854005813598633\n      ],\n      [\n        \"▁coordinate\",\n        -11.854158401489258\n      ],\n      [\n        \"▁Tool\",\n        -11.854212760925293\n      ],\n      [\n        \"▁complexity\",\n        -11.854272842407227\n      ],\n      [\n        \"▁checks\",\n        -11.854339599609375\n      ],\n      [\n        \"▁Bedroom\",\n        -11.854405403137207\n      ],\n      [\n        \"minded\",\n        -11.854538917541504\n      ],\n      [\n        \"▁copiii\",\n        -11.854694366455078\n      ],\n      [\n        \"▁celebrating\",\n        -11.85470199584961\n      ],\n      [\n        \"zimmer\",\n        -11.854759216308594\n      ],\n      [\n        \"▁Imagine\",\n        -11.854759216308594\n      ],\n      [\n        \"▁decoration\",\n        -11.854830741882324\n      ],\n      [\n        \"team\",\n        -11.855354309082031\n      ],\n      [\n        \"▁împreună\",\n        -11.855369567871094\n      ],\n      [\n        \"▁publicly\",\n        -11.855391502380371\n      ],\n      [\n        \"▁centuries\",\n        -11.855514526367188\n      ],\n      [\n        \"▁Islands\",\n        -11.855644226074219\n      ],\n      [\n        \"▁ethnic\",\n        -11.855663299560547\n      ],\n      [\n        \"still\",\n        -11.85576057434082\n      ],\n      [\n        \"stieg\",\n        -11.855823516845703\n      ],\n      [\n        \"emia\",\n        -11.855904579162598\n      ],\n      [\n        \"tags\",\n        -11.856026649475098\n      ],\n      [\n        \"▁marche\",\n        -11.856062889099121\n      ],\n      [\n        \"▁migration\",\n        -11.856096267700195\n      ],\n      [\n        \"▁banner\",\n        -11.85616683959961\n      ],\n      [\n        \"▁macro\",\n        -11.856378555297852\n      ],\n      [\n        \"▁Edit\",\n        -11.856379508972168\n      ],\n      [\n        \"tran\",\n        -11.85656452178955\n      ],\n      [\n        \"ça\",\n        -11.856597900390625\n      ],\n      [\n        \"▁recycling\",\n        -11.856670379638672\n      ],\n      [\n        \"▁1,000\",\n        -11.856673240661621\n      ],\n      [\n        \"▁Quelle\",\n        -11.856891632080078\n      ],\n      [\n        \"▁Vel\",\n        -11.85700511932373\n      ],\n      [\n        \"▁Rit\",\n        -11.857025146484375\n      ],\n      [\n        \"▁Spaß\",\n        -11.857046127319336\n      ],\n      [\n        \"▁Corn\",\n        -11.857074737548828\n      ],\n      [\n        \"tracted\",\n        -11.857177734375\n      ],\n      [\n        \"cited\",\n        -11.857185363769531\n      ],\n      [\n        \"▁tablets\",\n        -11.857202529907227\n      ],\n      [\n        \"▁Display\",\n        -11.857337951660156\n      ],\n      [\n        \"▁persoana\",\n        -11.857392311096191\n      ],\n      [\n        \"Term\",\n        -11.857410430908203\n      ],\n      [\n        \"▁Vancouver\",\n        -11.857537269592285\n      ],\n      [\n        \"▁Gäste\",\n        -11.857550621032715\n      ],\n      [\n        \"determining\",\n        -11.857608795166016\n      ],\n      [\n        \"▁populations\",\n        -11.85778522491455\n      ],\n      [\n        \"aison\",\n        -11.857873916625977\n      ],\n      [\n        \"▁surgical\",\n        -11.858072280883789\n      ],\n      [\n        \"tale\",\n        -11.858160018920898\n      ],\n      [\n        \"ivi\",\n        -11.858283042907715\n      ],\n      [\n        \"▁Zur\",\n        -11.858388900756836\n      ],\n      [\n        \"esprit\",\n        -11.858574867248535\n      ],\n      [\n        \"▁Edge\",\n        -11.858665466308594\n      ],\n      [\n        \"dach\",\n        -11.858760833740234\n      ],\n      [\n        \"phi\",\n        -11.858773231506348\n      ],\n      [\n        \"▁suc\",\n        -11.858841896057129\n      ],\n      [\n        \"▁scrie\",\n        -11.858848571777344\n      ],\n      [\n        \"▁Ausbildung\",\n        -11.858885765075684\n      ],\n      [\n        \"▁51\",\n        -11.85892391204834\n      ],\n      [\n        \"ologi\",\n        -11.858938217163086\n      ],\n      [\n        \"▁correction\",\n        -11.859049797058105\n      ],\n      [\n        \"▁Wald\",\n        -11.859078407287598\n      ],\n      [\n        \"▁additionally\",\n        -11.859131813049316\n      ],\n      [\n        \"▁proche\",\n        -11.859353065490723\n      ],\n      [\n        \"▁classical\",\n        -11.859477996826172\n      ],\n      [\n        \"▁bringen\",\n        -11.859490394592285\n      ],\n      [\n        \"▁(10\",\n        -11.859611511230469\n      ],\n      [\n        \"▁Mile\",\n        -11.859809875488281\n      ],\n      [\n        \"lace\",\n        -11.859885215759277\n      ],\n      [\n        \"▁premi\",\n        -11.85988712310791\n      ],\n      [\n        \"▁constitute\",\n        -11.860029220581055\n      ],\n      [\n        \"▁bitter\",\n        -11.860078811645508\n      ],\n      [\n        \"▁Inform\",\n        -11.860295295715332\n      ],\n      [\n        \"▁corporations\",\n        -11.860334396362305\n      ],\n      [\n        \"▁Lisa\",\n        -11.860494613647461\n      ],\n      [\n        \"▁obligat\",\n        -11.860685348510742\n      ],\n      [\n        \"Throughout\",\n        -11.860738754272461\n      ],\n      [\n        \"▁Rs\",\n        -11.860769271850586\n      ],\n      [\n        \"▁Hair\",\n        -11.860916137695312\n      ],\n      [\n        \"▁supplements\",\n        -11.86099624633789\n      ],\n      [\n        \"▁motorcycle\",\n        -11.861054420471191\n      ],\n      [\n        \"escent\",\n        -11.861132621765137\n      ],\n      [\n        \"▁investi\",\n        -11.861222267150879\n      ],\n      [\n        \"▁continuously\",\n        -11.861265182495117\n      ],\n      [\n        \"▁Essen\",\n        -11.861334800720215\n      ],\n      [\n        \"▁precision\",\n        -11.8613862991333\n      ],\n      [\n        \"▁deficit\",\n        -11.861461639404297\n      ],\n      [\n        \"▁wallet\",\n        -11.861481666564941\n      ],\n      [\n        \"▁Bürger\",\n        -11.861531257629395\n      ],\n      [\n        \"chir\",\n        -11.861574172973633\n      ],\n      [\n        \"9)\",\n        -11.86161994934082\n      ],\n      [\n        \"▁Programme\",\n        -11.861716270446777\n      ],\n      [\n        \"▁simplement\",\n        -11.86193561553955\n      ],\n      [\n        \"MD\",\n        -11.862093925476074\n      ],\n      [\n        \"▁rouge\",\n        -11.862096786499023\n      ],\n      [\n        \"usion\",\n        -11.862133979797363\n      ],\n      [\n        \"▁stove\",\n        -11.862208366394043\n      ],\n      [\n        \"▁prospective\",\n        -11.862224578857422\n      ],\n      [\n        \"▁corp\",\n        -11.86234188079834\n      ],\n      [\n        \"▁impacts\",\n        -11.862401008605957\n      ],\n      [\n        \"▁bride\",\n        -11.86266803741455\n      ],\n      [\n        \"0.0\",\n        -11.862788200378418\n      ],\n      [\n        \"hid\",\n        -11.862833976745605\n      ],\n      [\n        \"▁warrant\",\n        -11.862930297851562\n      ],\n      [\n        \"▁Ice\",\n        -11.8631010055542\n      ],\n      [\n        \"▁sensible\",\n        -11.863151550292969\n      ],\n      [\n        \"▁vreo\",\n        -11.863166809082031\n      ],\n      [\n        \"spekt\",\n        -11.863249778747559\n      ],\n      [\n        \"▁appreciation\",\n        -11.8633394241333\n      ],\n      [\n        \"▁automation\",\n        -11.863377571105957\n      ],\n      [\n        \"Luc\",\n        -11.86341381072998\n      ],\n      [\n        \"teaches\",\n        -11.863471031188965\n      ],\n      [\n        \"▁fold\",\n        -11.863506317138672\n      ],\n      [\n        \"deutsche\",\n        -11.863523483276367\n      ],\n      [\n        \"▁assisted\",\n        -11.86380386352539\n      ],\n      [\n        \"▁straightforward\",\n        -11.863932609558105\n      ],\n      [\n        \"▁mechanic\",\n        -11.864068031311035\n      ],\n      [\n        \"observ\",\n        -11.864169120788574\n      ],\n      [\n        \"▁Schau\",\n        -11.864195823669434\n      ],\n      [\n        \"▁Recently\",\n        -11.864301681518555\n      ],\n      [\n        \"kers\",\n        -11.86435604095459\n      ],\n      [\n        \"▁Soft\",\n        -11.864455223083496\n      ],\n      [\n        \"muni\",\n        -11.864537239074707\n      ],\n      [\n        \"▁lie\",\n        -11.864617347717285\n      ],\n      [\n        \"▁Fat\",\n        -11.864728927612305\n      ],\n      [\n        \"cream\",\n        -11.86476993560791\n      ],\n      [\n        \"▁snack\",\n        -11.864909172058105\n      ],\n      [\n        \"▁juin\",\n        -11.865068435668945\n      ],\n      [\n        \"▁competent\",\n        -11.865134239196777\n      ],\n      [\n        \"▁Drug\",\n        -11.865141868591309\n      ],\n      [\n        \"▁Row\",\n        -11.865302085876465\n      ],\n      [\n        \"▁needle\",\n        -11.865852355957031\n      ],\n      [\n        \"▁convey\",\n        -11.865900039672852\n      ],\n      [\n        \"▁voie\",\n        -11.86600399017334\n      ],\n      [\n        \"▁Hon\",\n        -11.866190910339355\n      ],\n      [\n        \"▁ebook\",\n        -11.866194725036621\n      ],\n      [\n        \"▁veteran\",\n        -11.866209030151367\n      ],\n      [\n        \"▁statistical\",\n        -11.866217613220215\n      ],\n      [\n        \"190\",\n        -11.866312980651855\n      ],\n      [\n        \"▁munca\",\n        -11.866402626037598\n      ],\n      [\n        \"▁venues\",\n        -11.866438865661621\n      ],\n      [\n        \"▁Viel\",\n        -11.866604804992676\n      ],\n      [\n        \"▁décor\",\n        -11.866799354553223\n      ],\n      [\n        \"▁répond\",\n        -11.8670015335083\n      ],\n      [\n        \"▁produsele\",\n        -11.86700439453125\n      ],\n      [\n        \"ruc\",\n        -11.867009162902832\n      ],\n      [\n        \"▁drops\",\n        -11.867011070251465\n      ],\n      [\n        \"▁autant\",\n        -11.867311477661133\n      ],\n      [\n        \"▁Fahrzeug\",\n        -11.867313385009766\n      ],\n      [\n        \"▁hills\",\n        -11.86735725402832\n      ],\n      [\n        \"ference\",\n        -11.867414474487305\n      ],\n      [\n        \"▁Glück\",\n        -11.86742115020752\n      ],\n      [\n        \"▁Pac\",\n        -11.867480278015137\n      ],\n      [\n        \"▁permettr\",\n        -11.867568969726562\n      ],\n      [\n        \"▁mouvement\",\n        -11.867713928222656\n      ],\n      [\n        \"établissement\",\n        -11.867859840393066\n      ],\n      [\n        \"▁Parc\",\n        -11.867874145507812\n      ],\n      [\n        \"▁solving\",\n        -11.867900848388672\n      ],\n      [\n        \"▁jail\",\n        -11.867972373962402\n      ],\n      [\n        \"▁junk\",\n        -11.867980003356934\n      ],\n      [\n        \"▁jeux\",\n        -11.868091583251953\n      ],\n      [\n        \"▁rôle\",\n        -11.868107795715332\n      ],\n      [\n        \"▁cache\",\n        -11.868124961853027\n      ],\n      [\n        \"▁Answer\",\n        -11.86832046508789\n      ],\n      [\n        \"wir\",\n        -11.868706703186035\n      ],\n      [\n        \"option\",\n        -11.868732452392578\n      ],\n      [\n        \"▁Tiger\",\n        -11.868739128112793\n      ],\n      [\n        \"▁Ble\",\n        -11.868793487548828\n      ],\n      [\n        \"Mitglied\",\n        -11.868797302246094\n      ],\n      [\n        \"▁partial\",\n        -11.868819236755371\n      ],\n      [\n        \"▁Mercedes\",\n        -11.86888313293457\n      ],\n      [\n        \"tire\",\n        -11.869001388549805\n      ],\n      [\n        \"MENT\",\n        -11.869091987609863\n      ],\n      [\n        \"▁transit\",\n        -11.869230270385742\n      ],\n      [\n        \"▁cineva\",\n        -11.869285583496094\n      ],\n      [\n        \"▁Andrea\",\n        -11.869294166564941\n      ],\n      [\n        \"▁boundaries\",\n        -11.869497299194336\n      ],\n      [\n        \"script\",\n        -11.870061874389648\n      ],\n      [\n        \"▁Medi\",\n        -11.870123863220215\n      ],\n      [\n        \"schreiben\",\n        -11.870203018188477\n      ],\n      [\n        \"▁lobby\",\n        -11.87035846710205\n      ],\n      [\n        \"▁defendant\",\n        -11.870406150817871\n      ],\n      [\n        \"▁sq\",\n        -11.870467185974121\n      ],\n      [\n        \"▁forgotten\",\n        -11.870569229125977\n      ],\n      [\n        \"stimmung\",\n        -11.870651245117188\n      ],\n      [\n        \"hus\",\n        -11.870665550231934\n      ],\n      [\n        \"RY\",\n        -11.870728492736816\n      ],\n      [\n        \"▁Anderson\",\n        -11.870748519897461\n      ],\n      [\n        \"▁Dental\",\n        -11.870828628540039\n      ],\n      [\n        \"ject\",\n        -11.87110710144043\n      ],\n      [\n        \"▁Nutzer\",\n        -11.871377944946289\n      ],\n      [\n        \"▁Portland\",\n        -11.871540069580078\n      ],\n      [\n        \"scription\",\n        -11.871636390686035\n      ],\n      [\n        \"▁angel\",\n        -11.871695518493652\n      ],\n      [\n        \"▁monument\",\n        -11.871748924255371\n      ],\n      [\n        \"▁număr\",\n        -11.871784210205078\n      ],\n      [\n        \"▁Lane\",\n        -11.871800422668457\n      ],\n      [\n        \"▁Bai\",\n        -11.871894836425781\n      ],\n      [\n        \"But\",\n        -11.871909141540527\n      ],\n      [\n        \"▁calculate\",\n        -11.872315406799316\n      ],\n      [\n        \"▁provoca\",\n        -11.87247371673584\n      ],\n      [\n        \"▁votes\",\n        -11.872493743896484\n      ],\n      [\n        \"RNA\",\n        -11.872503280639648\n      ],\n      [\n        \"though\",\n        -11.87259292602539\n      ],\n      [\n        \"spor\",\n        -11.872631072998047\n      ],\n      [\n        \"▁connaissance\",\n        -11.872695922851562\n      ],\n      [\n        \"▁Anwendung\",\n        -11.872932434082031\n      ],\n      [\n        \"▁Kate\",\n        -11.873123168945312\n      ],\n      [\n        \"lob\",\n        -11.87315845489502\n      ],\n      [\n        \"▁Conf\",\n        -11.873180389404297\n      ],\n      [\n        \"bung\",\n        -11.873212814331055\n      ],\n      [\n        \"ander\",\n        -11.873282432556152\n      ],\n      [\n        \"▁functioning\",\n        -11.873297691345215\n      ],\n      [\n        \"▁sponsored\",\n        -11.873324394226074\n      ],\n      [\n        \"rav\",\n        -11.873734474182129\n      ],\n      [\n        \"▁resistant\",\n        -11.873797416687012\n      ],\n      [\n        \"tră\",\n        -11.873916625976562\n      ],\n      [\n        \"▁costly\",\n        -11.873923301696777\n      ],\n      [\n        \"▁Mars\",\n        -11.873991012573242\n      ],\n      [\n        \"▁tir\",\n        -11.874075889587402\n      ],\n      [\n        \"▁writes\",\n        -11.874134063720703\n      ],\n      [\n        \"▁Greg\",\n        -11.874267578125\n      ],\n      [\n        \"▁Question\",\n        -11.874714851379395\n      ],\n      [\n        \"▁corporation\",\n        -11.87485408782959\n      ],\n      [\n        \"▁lire\",\n        -11.874991416931152\n      ],\n      [\n        \"locked\",\n        -11.875048637390137\n      ],\n      [\n        \"8,\",\n        -11.875092506408691\n      ],\n      [\n        \"▁sagt\",\n        -11.875301361083984\n      ],\n      [\n        \"gaining\",\n        -11.87536907196045\n      ],\n      [\n        \"▁Pierre\",\n        -11.875688552856445\n      ],\n      [\n        \"verb\",\n        -11.875725746154785\n      ],\n      [\n        \"▁Barcelona\",\n        -11.87578296661377\n      ],\n      [\n        \"werte\",\n        -11.876474380493164\n      ],\n      [\n        \"▁disponible\",\n        -11.87651538848877\n      ],\n      [\n        \"▁urge\",\n        -11.876521110534668\n      ],\n      [\n        \"▁expecting\",\n        -11.876572608947754\n      ],\n      [\n        \"▁Girl\",\n        -11.87662124633789\n      ],\n      [\n        \"▁unlimited\",\n        -11.876761436462402\n      ],\n      [\n        \"watt\",\n        -11.876788139343262\n      ],\n      [\n        \"▁Möglichkeiten\",\n        -11.876813888549805\n      ],\n      [\n        \"▁schöne\",\n        -11.876847267150879\n      ],\n      [\n        \"rium\",\n        -11.877076148986816\n      ],\n      [\n        \"That\",\n        -11.877272605895996\n      ],\n      [\n        \"▁socio\",\n        -11.877296447753906\n      ],\n      [\n        \"▁Democrats\",\n        -11.877351760864258\n      ],\n      [\n        \"guten\",\n        -11.877422332763672\n      ],\n      [\n        \"▁Lou\",\n        -11.877425193786621\n      ],\n      [\n        \"ităţi\",\n        -11.877559661865234\n      ],\n      [\n        \"▁possibilité\",\n        -11.877717018127441\n      ],\n      [\n        \"▁adjustable\",\n        -11.877938270568848\n      ],\n      [\n        \"▁Salt\",\n        -11.877967834472656\n      ],\n      [\n        \"Thr\",\n        -11.878021240234375\n      ],\n      [\n        \"▁biseric\",\n        -11.878056526184082\n      ],\n      [\n        \"ieux\",\n        -11.87808895111084\n      ],\n      [\n        \"▁procur\",\n        -11.8782377243042\n      ],\n      [\n        \"▁credits\",\n        -11.878250122070312\n      ],\n      [\n        \"▁Netflix\",\n        -11.878585815429688\n      ],\n      [\n        \"doi\",\n        -11.878605842590332\n      ],\n      [\n        \"▁Jews\",\n        -11.878663063049316\n      ],\n      [\n        \"▁Ukraine\",\n        -11.87873363494873\n      ],\n      [\n        \"▁adevărat\",\n        -11.878785133361816\n      ],\n      [\n        \"▁Apply\",\n        -11.878813743591309\n      ],\n      [\n        \"▁coupons\",\n        -11.878859519958496\n      ],\n      [\n        \"▁Detroit\",\n        -11.878881454467773\n      ],\n      [\n        \"▁rue\",\n        -11.878889083862305\n      ],\n      [\n        \"anumite\",\n        -11.878926277160645\n      ],\n      [\n        \"ished\",\n        -11.878973960876465\n      ],\n      [\n        \"▁withdrawal\",\n        -11.87915325164795\n      ],\n      [\n        \"▁replacing\",\n        -11.87917709350586\n      ],\n      [\n        \"catching\",\n        -11.879385948181152\n      ],\n      [\n        \"▁climbing\",\n        -11.879612922668457\n      ],\n      [\n        \"▁Basic\",\n        -11.879770278930664\n      ],\n      [\n        \"▁inclus\",\n        -11.879783630371094\n      ],\n      [\n        \"scope\",\n        -11.879887580871582\n      ],\n      [\n        \"▁facem\",\n        -11.879892349243164\n      ],\n      [\n        \"▁plec\",\n        -11.879904747009277\n      ],\n      [\n        \"mäßig\",\n        -11.879980087280273\n      ],\n      [\n        \"▁tasty\",\n        -11.880064010620117\n      ],\n      [\n        \"▁tunnel\",\n        -11.880074501037598\n      ],\n      [\n        \"figured\",\n        -11.88032341003418\n      ],\n      [\n        \"gged\",\n        -11.880390167236328\n      ],\n      [\n        \"▁conditii\",\n        -11.880599975585938\n      ],\n      [\n        \"▁homework\",\n        -11.880631446838379\n      ],\n      [\n        \"volle\",\n        -11.88063907623291\n      ],\n      [\n        \"▁Gott\",\n        -11.880807876586914\n      ],\n      [\n        \"▁95\",\n        -11.880969047546387\n      ],\n      [\n        \"▁elect\",\n        -11.881020545959473\n      ],\n      [\n        \"▁blast\",\n        -11.881043434143066\n      ],\n      [\n        \"▁easiest\",\n        -11.881248474121094\n      ],\n      [\n        \"USE\",\n        -11.881462097167969\n      ],\n      [\n        \"concentr\",\n        -11.881475448608398\n      ],\n      [\n        \"orial\",\n        -11.881596565246582\n      ],\n      [\n        \"▁scroll\",\n        -11.881638526916504\n      ],\n      [\n        \"stead\",\n        -11.881691932678223\n      ],\n      [\n        \"▁hormone\",\n        -11.881710052490234\n      ],\n      [\n        \"▁starter\",\n        -11.88179874420166\n      ],\n      [\n        \"▁cald\",\n        -11.881878852844238\n      ],\n      [\n        \"▁wax\",\n        -11.881895065307617\n      ],\n      [\n        \"▁ridic\",\n        -11.881900787353516\n      ],\n      [\n        \"ously\",\n        -11.881982803344727\n      ],\n      [\n        \"maschine\",\n        -11.882101058959961\n      ],\n      [\n        \"licher\",\n        -11.882399559020996\n      ],\n      [\n        \"▁16,\",\n        -11.882452964782715\n      ],\n      [\n        \"▁hassle\",\n        -11.882469177246094\n      ],\n      [\n        \"semnat\",\n        -11.882535934448242\n      ],\n      [\n        \"▁pub\",\n        -11.88260555267334\n      ],\n      [\n        \"240\",\n        -11.882800102233887\n      ],\n      [\n        \"▁kits\",\n        -11.882871627807617\n      ],\n      [\n        \"▁Generation\",\n        -11.88293743133545\n      ],\n      [\n        \"▁merchant\",\n        -11.883052825927734\n      ],\n      [\n        \"▁Erd\",\n        -11.883068084716797\n      ],\n      [\n        \"▁café\",\n        -11.883077621459961\n      ],\n      [\n        \"hoff\",\n        -11.88314151763916\n      ],\n      [\n        \"▁WITH\",\n        -11.883376121520996\n      ],\n      [\n        \"▁gesch\",\n        -11.883515357971191\n      ],\n      [\n        \"▁Editor\",\n        -11.883557319641113\n      ],\n      [\n        \"▁treats\",\n        -11.883609771728516\n      ],\n      [\n        \"▁harsh\",\n        -11.883711814880371\n      ],\n      [\n        \"rome\",\n        -11.883729934692383\n      ],\n      [\n        \"▁Foreign\",\n        -11.883928298950195\n      ],\n      [\n        \"▁denied\",\n        -11.883968353271484\n      ],\n      [\n        \"▁Valentine\",\n        -11.884014129638672\n      ],\n      [\n        \"▁healthier\",\n        -11.88408088684082\n      ],\n      [\n        \"▁readily\",\n        -11.884138107299805\n      ],\n      [\n        \"nac\",\n        -11.884190559387207\n      ],\n      [\n        \"▁intake\",\n        -11.884191513061523\n      ],\n      [\n        \"▁puncte\",\n        -11.884230613708496\n      ],\n      [\n        \"erne\",\n        -11.884431838989258\n      ],\n      [\n        \"file\",\n        -11.884668350219727\n      ],\n      [\n        \"▁continually\",\n        -11.884688377380371\n      ],\n      [\n        \"door\",\n        -11.884699821472168\n      ],\n      [\n        \"▁imediat\",\n        -11.884822845458984\n      ],\n      [\n        \"▁accused\",\n        -11.884833335876465\n      ],\n      [\n        \"chy\",\n        -11.884854316711426\n      ],\n      [\n        \"▁wrapped\",\n        -11.884861946105957\n      ],\n      [\n        \"IES\",\n        -11.884878158569336\n      ],\n      [\n        \"▁terrace\",\n        -11.884883880615234\n      ],\n      [\n        \"mouth\",\n        -11.884897232055664\n      ],\n      [\n        \"▁defensive\",\n        -11.884991645812988\n      ],\n      [\n        \"▁Luci\",\n        -11.88508129119873\n      ],\n      [\n        \"▁significance\",\n        -11.885107040405273\n      ],\n      [\n        \"▁2007,\",\n        -11.885213851928711\n      ],\n      [\n        \"▁inclusion\",\n        -11.885221481323242\n      ],\n      [\n        \"▁rotation\",\n        -11.885248184204102\n      ],\n      [\n        \"hos\",\n        -11.885283470153809\n      ],\n      [\n        \"▁crea\",\n        -11.885357856750488\n      ],\n      [\n        \"üß\",\n        -11.885903358459473\n      ],\n      [\n        \"▁Install\",\n        -11.885988235473633\n      ],\n      [\n        \"▁dump\",\n        -11.885998725891113\n      ],\n      [\n        \"▁informations\",\n        -11.886114120483398\n      ],\n      [\n        \"▁Thi\",\n        -11.886117935180664\n      ],\n      [\n        \"▁85\",\n        -11.886252403259277\n      ],\n      [\n        \"dox\",\n        -11.886283874511719\n      ],\n      [\n        \"track\",\n        -11.886436462402344\n      ],\n      [\n        \"▁couples\",\n        -11.886571884155273\n      ],\n      [\n        \"▁Assembly\",\n        -11.886594772338867\n      ],\n      [\n        \"wagen\",\n        -11.88672161102295\n      ],\n      [\n        \"▁Hil\",\n        -11.886723518371582\n      ],\n      [\n        \"ières\",\n        -11.886833190917969\n      ],\n      [\n        \"▁Gabriel\",\n        -11.886903762817383\n      ],\n      [\n        \"▁patience\",\n        -11.887053489685059\n      ],\n      [\n        \"▁colored\",\n        -11.887147903442383\n      ],\n      [\n        \"▁separately\",\n        -11.88715934753418\n      ],\n      [\n        \"▁deployment\",\n        -11.887166023254395\n      ],\n      [\n        \"scape\",\n        -11.887306213378906\n      ],\n      [\n        \"▁Acum\",\n        -11.8875150680542\n      ],\n      [\n        \"▁länger\",\n        -11.887518882751465\n      ],\n      [\n        \"▁screens\",\n        -11.887598991394043\n      ],\n      [\n        \"▁prezenta\",\n        -11.887630462646484\n      ],\n      [\n        \"▁obicei\",\n        -11.887638092041016\n      ],\n      [\n        \"▁crisp\",\n        -11.887758255004883\n      ],\n      [\n        \"▁mechanisms\",\n        -11.887771606445312\n      ],\n      [\n        \"▁thirty\",\n        -11.887786865234375\n      ],\n      [\n        \"▁individually\",\n        -11.887989044189453\n      ],\n      [\n        \"▁internationally\",\n        -11.887991905212402\n      ],\n      [\n        \"lling\",\n        -11.888050079345703\n      ],\n      [\n        \"▁bureau\",\n        -11.88843059539795\n      ],\n      [\n        \"▁erfahren\",\n        -11.88844108581543\n      ],\n      [\n        \"TY\",\n        -11.888553619384766\n      ],\n      [\n        \"PF\",\n        -11.888607025146484\n      ],\n      [\n        \"wid\",\n        -11.888752937316895\n      ],\n      [\n        \"sell\",\n        -11.888835906982422\n      ],\n      [\n        \"▁Luke\",\n        -11.888879776000977\n      ],\n      [\n        \"▁Must\",\n        -11.888916969299316\n      ],\n      [\n        \"▁identical\",\n        -11.888927459716797\n      ],\n      [\n        \"▁Netherlands\",\n        -11.888980865478516\n      ],\n      [\n        \"▁investor\",\n        -11.88905143737793\n      ],\n      [\n        \"▁squad\",\n        -11.889073371887207\n      ],\n      [\n        \"▁21,\",\n        -11.889143943786621\n      ],\n      [\n        \"iko\",\n        -11.889230728149414\n      ],\n      [\n        \"▁departure\",\n        -11.88937759399414\n      ],\n      [\n        \"ega\",\n        -11.889384269714355\n      ],\n      [\n        \"uzi\",\n        -11.889408111572266\n      ],\n      [\n        \"▁lasa\",\n        -11.889458656311035\n      ],\n      [\n        \"bian\",\n        -11.889525413513184\n      ],\n      [\n        \"▁Madrid\",\n        -11.889623641967773\n      ],\n      [\n        \"▁Iowa\",\n        -11.889806747436523\n      ],\n      [\n        \"▁Yellow\",\n        -11.890026092529297\n      ],\n      [\n        \"conom\",\n        -11.89004898071289\n      ],\n      [\n        \"▁hint\",\n        -11.890098571777344\n      ],\n      [\n        \"NOW\",\n        -11.890111923217773\n      ],\n      [\n        \"dress\",\n        -11.890204429626465\n      ],\n      [\n        \"▁Stück\",\n        -11.890267372131348\n      ],\n      [\n        \"echt\",\n        -11.890424728393555\n      ],\n      [\n        \"rial\",\n        -11.89045238494873\n      ],\n      [\n        \"▁Initiative\",\n        -11.890474319458008\n      ],\n      [\n        \"▁magnificent\",\n        -11.890474319458008\n      ],\n      [\n        \"▁pipeline\",\n        -11.890543937683105\n      ],\n      [\n        \"▁08\",\n        -11.890806198120117\n      ],\n      [\n        \"▁écrit\",\n        -11.890889167785645\n      ],\n      [\n        \"KA\",\n        -11.891085624694824\n      ],\n      [\n        \"arile\",\n        -11.891151428222656\n      ],\n      [\n        \"▁unfortunately\",\n        -11.891352653503418\n      ],\n      [\n        \"dose\",\n        -11.891355514526367\n      ],\n      [\n        \"▁counts\",\n        -11.891427993774414\n      ],\n      [\n        \"deciding\",\n        -11.891549110412598\n      ],\n      [\n        \"WA\",\n        -11.89167308807373\n      ],\n      [\n        \"▁doresc\",\n        -11.891685485839844\n      ],\n      [\n        \"NY\",\n        -11.892008781433105\n      ],\n      [\n        \"olin\",\n        -11.892112731933594\n      ],\n      [\n        \"▁Urlaub\",\n        -11.892133712768555\n      ],\n      [\n        \"▁alătur\",\n        -11.892317771911621\n      ],\n      [\n        \"▁Vic\",\n        -11.892515182495117\n      ],\n      [\n        \"▁fier\",\n        -11.89269733428955\n      ],\n      [\n        \"EU\",\n        -11.892772674560547\n      ],\n      [\n        \"▁triple\",\n        -11.892871856689453\n      ],\n      [\n        \"▁compliment\",\n        -11.89310359954834\n      ],\n      [\n        \"▁vegetable\",\n        -11.89334487915039\n      ],\n      [\n        \"member\",\n        -11.893743515014648\n      ],\n      [\n        \"atiei\",\n        -11.893793106079102\n      ],\n      [\n        \"▁toxic\",\n        -11.893835067749023\n      ],\n      [\n        \"▁converted\",\n        -11.893888473510742\n      ],\n      [\n        \"▁Pink\",\n        -11.893999099731445\n      ],\n      [\n        \"▁fragment\",\n        -11.894020080566406\n      ],\n      [\n        \"presenting\",\n        -11.894027709960938\n      ],\n      [\n        \"▁garantie\",\n        -11.894031524658203\n      ],\n      [\n        \"▁31,\",\n        -11.894052505493164\n      ],\n      [\n        \"▁puisqu\",\n        -11.894105911254883\n      ],\n      [\n        \"aching\",\n        -11.894107818603516\n      ],\n      [\n        \"▁Shan\",\n        -11.894119262695312\n      ],\n      [\n        \"▁Affairs\",\n        -11.894368171691895\n      ],\n      [\n        \"üsse\",\n        -11.894405364990234\n      ],\n      [\n        \"▁CBD\",\n        -11.894428253173828\n      ],\n      [\n        \"▁quatre\",\n        -11.894588470458984\n      ],\n      [\n        \"▁horror\",\n        -11.894651412963867\n      ],\n      [\n        \"▁culoare\",\n        -11.894661903381348\n      ],\n      [\n        \"▁welcoming\",\n        -11.894673347473145\n      ],\n      [\n        \"▁headache\",\n        -11.894808769226074\n      ],\n      [\n        \"▁septembre\",\n        -11.894820213317871\n      ],\n      [\n        \"▁Tür\",\n        -11.894862174987793\n      ],\n      [\n        \"lateral\",\n        -11.89507007598877\n      ],\n      [\n        \"▁termin\",\n        -11.895228385925293\n      ],\n      [\n        \"▁Aid\",\n        -11.895291328430176\n      ],\n      [\n        \"second\",\n        -11.895308494567871\n      ],\n      [\n        \"▁Philip\",\n        -11.895310401916504\n      ],\n      [\n        \"berries\",\n        -11.895347595214844\n      ],\n      [\n        \"▁Slot\",\n        -11.895431518554688\n      ],\n      [\n        \"ка\",\n        -11.895442962646484\n      ],\n      [\n        \"▁consecutive\",\n        -11.895590782165527\n      ],\n      [\n        \"value\",\n        -11.895705223083496\n      ],\n      [\n        \"▁islands\",\n        -11.8958101272583\n      ],\n      [\n        \"▁posibilitatea\",\n        -11.895928382873535\n      ],\n      [\n        \"0.5\",\n        -11.896341323852539\n      ],\n      [\n        \"▁Dumpster\",\n        -11.896471977233887\n      ],\n      [\n        \"▁Gran\",\n        -11.89647388458252\n      ],\n      [\n        \"▁restricted\",\n        -11.8967924118042\n      ],\n      [\n        \"▁discussing\",\n        -11.896921157836914\n      ],\n      [\n        \"cock\",\n        -11.896966934204102\n      ],\n      [\n        \"Serie\",\n        -11.896989822387695\n      ],\n      [\n        \"▁crushing\",\n        -11.896998405456543\n      ],\n      [\n        \"RB\",\n        -11.897034645080566\n      ],\n      [\n        \"▁Gy\",\n        -11.897068977355957\n      ],\n      [\n        \"normal\",\n        -11.897098541259766\n      ],\n      [\n        \"DT\",\n        -11.897180557250977\n      ],\n      [\n        \"▁concurs\",\n        -11.897181510925293\n      ],\n      [\n        \"▁Beratung\",\n        -11.897231101989746\n      ],\n      [\n        \"▁handful\",\n        -11.897235870361328\n      ],\n      [\n        \"▁loading\",\n        -11.897237777709961\n      ],\n      [\n        \"▁WI\",\n        -11.897269248962402\n      ],\n      [\n        \"▁Fitness\",\n        -11.897283554077148\n      ],\n      [\n        \"▁RAM\",\n        -11.897302627563477\n      ],\n      [\n        \"▁Twi\",\n        -11.89730453491211\n      ],\n      [\n        \"adurch\",\n        -11.897345542907715\n      ],\n      [\n        \"▁obiectiv\",\n        -11.897366523742676\n      ],\n      [\n        \"BM\",\n        -11.897635459899902\n      ],\n      [\n        \"▁amendment\",\n        -11.8976469039917\n      ],\n      [\n        \"whi\",\n        -11.897652626037598\n      ],\n      [\n        \"▁Besonder\",\n        -11.897871017456055\n      ],\n      [\n        \"ALL\",\n        -11.898003578186035\n      ],\n      [\n        \"▁earning\",\n        -11.898090362548828\n      ],\n      [\n        \"▁nutrients\",\n        -11.898580551147461\n      ],\n      [\n        \"pru\",\n        -11.898633003234863\n      ],\n      [\n        \"▁offensive\",\n        -11.898696899414062\n      ],\n      [\n        \"▁shelves\",\n        -11.898711204528809\n      ],\n      [\n        \"▁încâ\",\n        -11.898726463317871\n      ],\n      [\n        \"▁execute\",\n        -11.898923873901367\n      ],\n      [\n        \"▁cauz\",\n        -11.898966789245605\n      ],\n      [\n        \"exist\",\n        -11.899179458618164\n      ],\n      [\n        \"▁Meter\",\n        -11.899191856384277\n      ],\n      [\n        \"there\",\n        -11.899201393127441\n      ],\n      [\n        \"▁réaliser\",\n        -11.899249076843262\n      ],\n      [\n        \"blog\",\n        -11.899362564086914\n      ],\n      [\n        \"▁résultats\",\n        -11.89937973022461\n      ],\n      [\n        \"baren\",\n        -11.899391174316406\n      ],\n      [\n        \"▁lang\",\n        -11.899425506591797\n      ],\n      [\n        \"▁mere\",\n        -11.899870872497559\n      ],\n      [\n        \"▁toti\",\n        -11.900079727172852\n      ],\n      [\n        \"DN\",\n        -11.90017032623291\n      ],\n      [\n        \"Hi\",\n        -11.900310516357422\n      ],\n      [\n        \"▁merg\",\n        -11.900359153747559\n      ],\n      [\n        \"▁Camera\",\n        -11.90054988861084\n      ],\n      [\n        \"▁parfum\",\n        -11.900697708129883\n      ],\n      [\n        \"CG\",\n        -11.900701522827148\n      ],\n      [\n        \"posed\",\n        -11.900713920593262\n      ],\n      [\n        \"▁proposals\",\n        -11.900732040405273\n      ],\n      [\n        \"▁incorrect\",\n        -11.900811195373535\n      ],\n      [\n        \"▁Denver\",\n        -11.901168823242188\n      ],\n      [\n        \"▁noapte\",\n        -11.901397705078125\n      ],\n      [\n        \"▁VPN\",\n        -11.901436805725098\n      ],\n      [\n        \"▁Oklahoma\",\n        -11.90159797668457\n      ],\n      [\n        \"horizon\",\n        -11.901647567749023\n      ],\n      [\n        \"▁villa\",\n        -11.901668548583984\n      ],\n      [\n        \"duce\",\n        -11.901812553405762\n      ],\n      [\n        \"Dienst\",\n        -11.902042388916016\n      ],\n      [\n        \"▁oversee\",\n        -11.902511596679688\n      ],\n      [\n        \"astr\",\n        -11.902548789978027\n      ],\n      [\n        \"brand\",\n        -11.902713775634766\n      ],\n      [\n        \"▁Safe\",\n        -11.902746200561523\n      ],\n      [\n        \"▁competing\",\n        -11.902812004089355\n      ],\n      [\n        \"▁subiect\",\n        -11.902812004089355\n      ],\n      [\n        \"▁équipe\",\n        -11.903091430664062\n      ],\n      [\n        \"▁Dress\",\n        -11.903095245361328\n      ],\n      [\n        \"▁Juni\",\n        -11.903139114379883\n      ],\n      [\n        \"▁repeated\",\n        -11.90317153930664\n      ],\n      [\n        \"2012\",\n        -11.903226852416992\n      ],\n      [\n        \"▁départ\",\n        -11.903234481811523\n      ],\n      [\n        \"immer\",\n        -11.903335571289062\n      ],\n      [\n        \"▁mondial\",\n        -11.903374671936035\n      ],\n      [\n        \"▁datelor\",\n        -11.903703689575195\n      ],\n      [\n        \"▁surgeon\",\n        -11.903782844543457\n      ],\n      [\n        \"▁demanding\",\n        -11.903812408447266\n      ],\n      [\n        \"▁concluded\",\n        -11.903878211975098\n      ],\n      [\n        \"țiile\",\n        -11.903950691223145\n      ],\n      [\n        \"marin\",\n        -11.903999328613281\n      ],\n      [\n        \"▁estim\",\n        -11.904206275939941\n      ],\n      [\n        \"▁Loan\",\n        -11.904361724853516\n      ],\n      [\n        \"sculpt\",\n        -11.904373168945312\n      ],\n      [\n        \"▁99\",\n        -11.904391288757324\n      ],\n      [\n        \"void\",\n        -11.904400825500488\n      ],\n      [\n        \"▁Empire\",\n        -11.904499053955078\n      ],\n      [\n        \"▁Brit\",\n        -11.90450382232666\n      ],\n      [\n        \"▁véhicule\",\n        -11.904777526855469\n      ],\n      [\n        \"▁dividend\",\n        -11.905069351196289\n      ],\n      [\n        \"▁refused\",\n        -11.905077934265137\n      ],\n      [\n        \"▁speaks\",\n        -11.905156135559082\n      ],\n      [\n        \"▁Morris\",\n        -11.905282020568848\n      ],\n      [\n        \"dict\",\n        -11.905349731445312\n      ],\n      [\n        \"▁funeral\",\n        -11.905556678771973\n      ],\n      [\n        \"▁Behandlung\",\n        -11.905763626098633\n      ],\n      [\n        \"▁Revolution\",\n        -11.905905723571777\n      ],\n      [\n        \"▁Sum\",\n        -11.905935287475586\n      ],\n      [\n        \"einigen\",\n        -11.906030654907227\n      ],\n      [\n        \"RES\",\n        -11.906070709228516\n      ],\n      [\n        \"▁vite\",\n        -11.906071662902832\n      ],\n      [\n        \"▁Captain\",\n        -11.906190872192383\n      ],\n      [\n        \"▁assurance\",\n        -11.9061918258667\n      ],\n      [\n        \"uga\",\n        -11.906500816345215\n      ],\n      [\n        \"▁conserv\",\n        -11.906583786010742\n      ],\n      [\n        \"▁therapeutic\",\n        -11.906641006469727\n      ],\n      [\n        \"▁Sweden\",\n        -11.906753540039062\n      ],\n      [\n        \"▁Lead\",\n        -11.906888961791992\n      ],\n      [\n        \"ément\",\n        -11.907071113586426\n      ],\n      [\n        \"▁53\",\n        -11.90709114074707\n      ],\n      [\n        \"▁fraction\",\n        -11.9071683883667\n      ],\n      [\n        \"▁magnet\",\n        -11.907170295715332\n      ],\n      [\n        \"assurer\",\n        -11.907184600830078\n      ],\n      [\n        \"▁Steuer\",\n        -11.90733814239502\n      ],\n      [\n        \"▁flori\",\n        -11.90735149383545\n      ],\n      [\n        \"▁charming\",\n        -11.907588958740234\n      ],\n      [\n        \"▁athletic\",\n        -11.907621383666992\n      ],\n      [\n        \"▁membri\",\n        -11.907706260681152\n      ],\n      [\n        \"▁Sep\",\n        -11.907726287841797\n      ],\n      [\n        \"ogue\",\n        -11.907800674438477\n      ],\n      [\n        \"▁familie\",\n        -11.907800674438477\n      ],\n      [\n        \"▁SW\",\n        -11.90796947479248\n      ],\n      [\n        \"▁diagnosed\",\n        -11.908023834228516\n      ],\n      [\n        \"RR\",\n        -11.908143997192383\n      ],\n      [\n        \"▁Fern\",\n        -11.908233642578125\n      ],\n      [\n        \"▁rational\",\n        -11.908281326293945\n      ],\n      [\n        \"▁talents\",\n        -11.90828800201416\n      ],\n      [\n        \"ziert\",\n        -11.908317565917969\n      ],\n      [\n        \"▁chemin\",\n        -11.908459663391113\n      ],\n      [\n        \"sheet\",\n        -11.908562660217285\n      ],\n      [\n        \"▁outer\",\n        -11.908565521240234\n      ],\n      [\n        \"▁Kap\",\n        -11.908591270446777\n      ],\n      [\n        \"▁HERE\",\n        -11.908656120300293\n      ],\n      [\n        \"▁uman\",\n        -11.908824920654297\n      ],\n      [\n        \"▁accompany\",\n        -11.908880233764648\n      ],\n      [\n        \"▁varieties\",\n        -11.908881187438965\n      ],\n      [\n        \"▁sensors\",\n        -11.908957481384277\n      ],\n      [\n        \"▁25%\",\n        -11.90919017791748\n      ],\n      [\n        \"▁tray\",\n        -11.909354209899902\n      ],\n      [\n        \"▁critique\",\n        -11.909459114074707\n      ],\n      [\n        \"▁puţin\",\n        -11.909515380859375\n      ],\n      [\n        \"▁Schüler\",\n        -11.90953540802002\n      ],\n      [\n        \"▁repar\",\n        -11.909744262695312\n      ],\n      [\n        \"▁overlook\",\n        -11.909931182861328\n      ],\n      [\n        \"▁surf\",\n        -11.910048484802246\n      ],\n      [\n        \"▁tasting\",\n        -11.910118103027344\n      ],\n      [\n        \"bog\",\n        -11.91027545928955\n      ],\n      [\n        \"▁Payment\",\n        -11.910289764404297\n      ],\n      [\n        \"▁Helen\",\n        -11.91049575805664\n      ],\n      [\n        \"▁Refer\",\n        -11.910694122314453\n      ],\n      [\n        \"application\",\n        -11.910698890686035\n      ],\n      [\n        \"lection\",\n        -11.910856246948242\n      ],\n      [\n        \"▁avril\",\n        -11.911042213439941\n      ],\n      [\n        \"▁Grace\",\n        -11.911109924316406\n      ],\n      [\n        \"▁kau\",\n        -11.911274909973145\n      ],\n      [\n        \"▁libraries\",\n        -11.911319732666016\n      ],\n      [\n        \"▁closest\",\n        -11.911347389221191\n      ],\n      [\n        \"▁coating\",\n        -11.911351203918457\n      ],\n      [\n        \"▁suicide\",\n        -11.911364555358887\n      ],\n      [\n        \"▁undergraduate\",\n        -11.911449432373047\n      ],\n      [\n        \"▁stitch\",\n        -11.91149616241455\n      ],\n      [\n        \"▁reset\",\n        -11.911593437194824\n      ],\n      [\n        \"▁Greece\",\n        -11.911626815795898\n      ],\n      [\n        \"▁Fred\",\n        -11.91197681427002\n      ],\n      [\n        \"▁18.\",\n        -11.912047386169434\n      ],\n      [\n        \"▁nuit\",\n        -11.912087440490723\n      ],\n      [\n        \"▁lying\",\n        -11.912199974060059\n      ],\n      [\n        \"▁cottage\",\n        -11.91232681274414\n      ],\n      [\n        \"bone\",\n        -11.912477493286133\n      ],\n      [\n        \"▁milieu\",\n        -11.912480354309082\n      ],\n      [\n        \"management\",\n        -11.912623405456543\n      ],\n      [\n        \"▁Freund\",\n        -11.912724494934082\n      ],\n      [\n        \"▁specially\",\n        -11.912841796875\n      ],\n      [\n        \"veut\",\n        -11.912961959838867\n      ],\n      [\n        \"▁necesare\",\n        -11.912999153137207\n      ],\n      [\n        \"▁cert\",\n        -11.913081169128418\n      ],\n      [\n        \"articul\",\n        -11.913151741027832\n      ],\n      [\n        \"150\",\n        -11.913174629211426\n      ],\n      [\n        \"rounded\",\n        -11.913180351257324\n      ],\n      [\n        \"▁longue\",\n        -11.913193702697754\n      ],\n      [\n        \"▁Quel\",\n        -11.913240432739258\n      ],\n      [\n        \"Until\",\n        -11.913322448730469\n      ],\n      [\n        \"▁700\",\n        -11.913398742675781\n      ],\n      [\n        \"▁installations\",\n        -11.913423538208008\n      ],\n      [\n        \"▁boats\",\n        -11.913467407226562\n      ],\n      [\n        \"Fig\",\n        -11.913609504699707\n      ],\n      [\n        \"▁cocktail\",\n        -11.913613319396973\n      ],\n      [\n        \"▁rocks\",\n        -11.91366958618164\n      ],\n      [\n        \"meinen\",\n        -11.91374683380127\n      ],\n      [\n        \"entrepreneur\",\n        -11.913780212402344\n      ],\n      [\n        \"schwarz\",\n        -11.913924217224121\n      ],\n      [\n        \"▁diesel\",\n        -11.91392993927002\n      ],\n      [\n        \"▁villages\",\n        -11.913969039916992\n      ],\n      [\n        \"▁cups\",\n        -11.914076805114746\n      ],\n      [\n        \"▁stairs\",\n        -11.914241790771484\n      ],\n      [\n        \"▁Match\",\n        -11.914350509643555\n      ],\n      [\n        \"Taking\",\n        -11.914437294006348\n      ],\n      [\n        \"prin\",\n        -11.914469718933105\n      ],\n      [\n        \"▁penal\",\n        -11.91472053527832\n      ],\n      [\n        \"partner\",\n        -11.914867401123047\n      ],\n      [\n        \"wave\",\n        -11.91497802734375\n      ],\n      [\n        \"▁baie\",\n        -11.91515064239502\n      ],\n      [\n        \"LAN\",\n        -11.915151596069336\n      ],\n      [\n        \"fix\",\n        -11.915202140808105\n      ],\n      [\n        \"▁surveillance\",\n        -11.915295600891113\n      ],\n      [\n        \"▁Register\",\n        -11.915343284606934\n      ],\n      [\n        \"oara\",\n        -11.915536880493164\n      ],\n      [\n        \"▁Phoenix\",\n        -11.915602684020996\n      ],\n      [\n        \"aktuellen\",\n        -11.915613174438477\n      ],\n      [\n        \"▁livres\",\n        -11.915618896484375\n      ],\n      [\n        \"▁entities\",\n        -11.916102409362793\n      ],\n      [\n        \"▁Regard\",\n        -11.916112899780273\n      ],\n      [\n        \"▁Jazz\",\n        -11.91614055633545\n      ],\n      [\n        \"▁flame\",\n        -11.91616153717041\n      ],\n      [\n        \"▁independence\",\n        -11.916215896606445\n      ],\n      [\n        \"▁Adventure\",\n        -11.916341781616211\n      ],\n      [\n        \"▁assign\",\n        -11.916399955749512\n      ],\n      [\n        \"▁Adult\",\n        -11.916579246520996\n      ],\n      [\n        \"kehr\",\n        -11.916666984558105\n      ],\n      [\n        \"▁ordering\",\n        -11.916850090026855\n      ],\n      [\n        \"▁charts\",\n        -11.91687297821045\n      ],\n      [\n        \"▁Român\",\n        -11.916936874389648\n      ],\n      [\n        \"bauen\",\n        -11.916982650756836\n      ],\n      [\n        \"▁Floor\",\n        -11.917065620422363\n      ],\n      [\n        \"▁Meet\",\n        -11.917101860046387\n      ],\n      [\n        \"▁compromise\",\n        -11.917158126831055\n      ],\n      [\n        \"regarded\",\n        -11.917171478271484\n      ],\n      [\n        \"02.\",\n        -11.917215347290039\n      ],\n      [\n        \"▁granite\",\n        -11.917299270629883\n      ],\n      [\n        \"▁Judge\",\n        -11.917314529418945\n      ],\n      [\n        \"opti\",\n        -11.917373657226562\n      ],\n      [\n        \"liste\",\n        -11.917379379272461\n      ],\n      [\n        \"▁capacité\",\n        -11.917427062988281\n      ],\n      [\n        \"▁criticism\",\n        -11.917450904846191\n      ],\n      [\n        \"LES\",\n        -11.918198585510254\n      ],\n      [\n        \"▁Century\",\n        -11.918211936950684\n      ],\n      [\n        \"▁mobility\",\n        -11.918252944946289\n      ],\n      [\n        \"▁variation\",\n        -11.918622016906738\n      ],\n      [\n        \"▁Utah\",\n        -11.91867446899414\n      ],\n      [\n        \"▁seminar\",\n        -11.918678283691406\n      ],\n      [\n        \"▁experiments\",\n        -11.918803215026855\n      ],\n      [\n        \"midst\",\n        -11.918943405151367\n      ],\n      [\n        \"▁Psycho\",\n        -11.919002532958984\n      ],\n      [\n        \"▁choses\",\n        -11.919121742248535\n      ],\n      [\n        \"▁Karl\",\n        -11.919175148010254\n      ],\n      [\n        \"▁ruling\",\n        -11.919286727905273\n      ],\n      [\n        \"▁Voice\",\n        -11.919404983520508\n      ],\n      [\n        \"▁împotriv\",\n        -11.919442176818848\n      ],\n      [\n        \"▁mesaj\",\n        -11.919500350952148\n      ],\n      [\n        \"▁vrei\",\n        -11.919594764709473\n      ],\n      [\n        \"fan\",\n        -11.919601440429688\n      ],\n      [\n        \"parent\",\n        -11.919648170471191\n      ],\n      [\n        \"▁oraș\",\n        -11.919770240783691\n      ],\n      [\n        \"▁printable\",\n        -11.919777870178223\n      ],\n      [\n        \"▁diver\",\n        -11.919859886169434\n      ],\n      [\n        \"▁ochi\",\n        -11.919949531555176\n      ],\n      [\n        \"▁teenager\",\n        -11.920125961303711\n      ],\n      [\n        \"▁Death\",\n        -11.920150756835938\n      ],\n      [\n        \"▁manque\",\n        -11.920289993286133\n      ],\n      [\n        \"ască\",\n        -11.920345306396484\n      ],\n      [\n        \"▁prob\",\n        -11.9203519821167\n      ],\n      [\n        \"▁télé\",\n        -11.920354843139648\n      ],\n      [\n        \"cursul\",\n        -11.920378684997559\n      ],\n      [\n        \"pion\",\n        -11.92052173614502\n      ],\n      [\n        \"▁dedication\",\n        -11.920644760131836\n      ],\n      [\n        \"▁opr\",\n        -11.920687675476074\n      ],\n      [\n        \"führung\",\n        -11.920761108398438\n      ],\n      [\n        \"▁cognitive\",\n        -11.920827865600586\n      ],\n      [\n        \"soft\",\n        -11.920868873596191\n      ],\n      [\n        \"▁19,\",\n        -11.9209623336792\n      ],\n      [\n        \"▁24-\",\n        -11.921197891235352\n      ],\n      [\n        \"▁legitimate\",\n        -11.921220779418945\n      ],\n      [\n        \"▁comedy\",\n        -11.921277046203613\n      ],\n      [\n        \"▁violation\",\n        -11.921327590942383\n      ],\n      [\n        \"▁disposal\",\n        -11.921472549438477\n      ],\n      [\n        \"▁liegen\",\n        -11.921605110168457\n      ],\n      [\n        \"ко\",\n        -11.921878814697266\n      ],\n      [\n        \"▁martie\",\n        -11.921931266784668\n      ],\n      [\n        \"▁Vas\",\n        -11.92212200164795\n      ],\n      [\n        \"rash\",\n        -11.922134399414062\n      ],\n      [\n        \"▁hadn\",\n        -11.922174453735352\n      ],\n      [\n        \"▁connu\",\n        -11.922204971313477\n      ],\n      [\n        \"▁regelmäßig\",\n        -11.922216415405273\n      ],\n      [\n        \"▁Webseite\",\n        -11.922224998474121\n      ],\n      [\n        \"▁failing\",\n        -11.922273635864258\n      ],\n      [\n        \"explique\",\n        -11.922449111938477\n      ],\n      [\n        \"▁Player\",\n        -11.922513961791992\n      ],\n      [\n        \"vul\",\n        -11.922560691833496\n      ],\n      [\n        \"camp\",\n        -11.922992706298828\n      ],\n      [\n        \"▁erreicht\",\n        -11.922996520996094\n      ],\n      [\n        \"▁tags\",\n        -11.922998428344727\n      ],\n      [\n        \"▁headline\",\n        -11.923210144042969\n      ],\n      [\n        \"▁banc\",\n        -11.923253059387207\n      ],\n      [\n        \"▁Mayor\",\n        -11.923309326171875\n      ],\n      [\n        \"trop\",\n        -11.923395156860352\n      ],\n      [\n        \"AK\",\n        -11.9235258102417\n      ],\n      [\n        \"▁lighter\",\n        -11.923602104187012\n      ],\n      [\n        \"▁syndrome\",\n        -11.923604965209961\n      ],\n      [\n        \"▁Adrian\",\n        -11.92365550994873\n      ],\n      [\n        \"▁EUR\",\n        -11.923759460449219\n      ],\n      [\n        \"▁Missouri\",\n        -11.923916816711426\n      ],\n      [\n        \"▁Chan\",\n        -11.924108505249023\n      ],\n      [\n        \"topped\",\n        -11.924233436584473\n      ],\n      [\n        \"▁nationwide\",\n        -11.924276351928711\n      ],\n      [\n        \"▁6-\",\n        -11.924302101135254\n      ],\n      [\n        \"final\",\n        -11.924408912658691\n      ],\n      [\n        \"ttes\",\n        -11.924485206604004\n      ],\n      [\n        \"▁FO\",\n        -11.924537658691406\n      ],\n      [\n        \"▁legi\",\n        -11.924556732177734\n      ],\n      [\n        \"▁Hum\",\n        -11.924575805664062\n      ],\n      [\n        \"vita\",\n        -11.924662590026855\n      ],\n      [\n        \"▁Regen\",\n        -11.924695014953613\n      ],\n      [\n        \"▁confusion\",\n        -11.92498779296875\n      ],\n      [\n        \"▁valori\",\n        -11.925142288208008\n      ],\n      [\n        \"mill\",\n        -11.92516803741455\n      ],\n      [\n        \"did\",\n        -11.925237655639648\n      ],\n      [\n        \"pid\",\n        -11.925253868103027\n      ],\n      [\n        \"▁implications\",\n        -11.925284385681152\n      ],\n      [\n        \"▁Value\",\n        -11.92552375793457\n      ],\n      [\n        \"lângă\",\n        -11.925666809082031\n      ],\n      [\n        \"▁véritable\",\n        -11.92577075958252\n      ],\n      [\n        \"▁Stick\",\n        -11.925814628601074\n      ],\n      [\n        \"zol\",\n        -11.925835609436035\n      ],\n      [\n        \"▁ebenso\",\n        -11.925863265991211\n      ],\n      [\n        \"west\",\n        -11.925895690917969\n      ],\n      [\n        \"▁auszu\",\n        -11.92600154876709\n      ],\n      [\n        \"▁adorable\",\n        -11.926016807556152\n      ],\n      [\n        \"▁clarity\",\n        -11.92605209350586\n      ],\n      [\n        \"▁Wash\",\n        -11.926335334777832\n      ],\n      [\n        \"▁alien\",\n        -11.926423072814941\n      ],\n      [\n        \"usement\",\n        -11.926626205444336\n      ],\n      [\n        \"▁bones\",\n        -11.9266357421875\n      ],\n      [\n        \"▁Beau\",\n        -11.926726341247559\n      ],\n      [\n        \"▁Jet\",\n        -11.926727294921875\n      ],\n      [\n        \"▁visibility\",\n        -11.927034378051758\n      ],\n      [\n        \"impose\",\n        -11.927063941955566\n      ],\n      [\n        \"food\",\n        -11.927133560180664\n      ],\n      [\n        \"▁duce\",\n        -11.927361488342285\n      ],\n      [\n        \"▁Format\",\n        -11.927386283874512\n      ],\n      [\n        \"▁durability\",\n        -11.927424430847168\n      ],\n      [\n        \"▁Prim\",\n        -11.927614212036133\n      ],\n      [\n        \"▁mele\",\n        -11.927629470825195\n      ],\n      [\n        \"▁dürfen\",\n        -11.927631378173828\n      ],\n      [\n        \"▁Angebote\",\n        -11.92765998840332\n      ],\n      [\n        \"▁discharge\",\n        -11.927745819091797\n      ],\n      [\n        \"▁Justin\",\n        -11.928055763244629\n      ],\n      [\n        \"▁shame\",\n        -11.928228378295898\n      ],\n      [\n        \"▁heated\",\n        -11.928282737731934\n      ],\n      [\n        \"ères\",\n        -11.92856216430664\n      ],\n      [\n        \"human\",\n        -11.928810119628906\n      ],\n      [\n        \"4.5\",\n        -11.928831100463867\n      ],\n      [\n        \"▁lien\",\n        -11.928955078125\n      ],\n      [\n        \"▁Alan\",\n        -11.92896556854248\n      ],\n      [\n        \"▁transmis\",\n        -11.929130554199219\n      ],\n      [\n        \"▁Bul\",\n        -11.929137229919434\n      ],\n      [\n        \"plu\",\n        -11.929169654846191\n      ],\n      [\n        \"acul\",\n        -11.929337501525879\n      ],\n      [\n        \"merk\",\n        -11.929434776306152\n      ],\n      [\n        \"▁altfel\",\n        -11.929566383361816\n      ],\n      [\n        \"deli\",\n        -11.929689407348633\n      ],\n      [\n        \"▁Cru\",\n        -11.930001258850098\n      ],\n      [\n        \"▁hommes\",\n        -11.930127143859863\n      ],\n      [\n        \"aurait\",\n        -11.930137634277344\n      ],\n      [\n        \"cca\",\n        -11.930187225341797\n      ],\n      [\n        \"▁Path\",\n        -11.930208206176758\n      ],\n      [\n        \"astronom\",\n        -11.930241584777832\n      ],\n      [\n        \"▁détail\",\n        -11.930276870727539\n      ],\n      [\n        \"▁blocked\",\n        -11.930394172668457\n      ],\n      [\n        \"iding\",\n        -11.93044376373291\n      ],\n      [\n        \"schä\",\n        -11.930500030517578\n      ],\n      [\n        \"▁30-\",\n        -11.930624008178711\n      ],\n      [\n        \"diction\",\n        -11.930813789367676\n      ],\n      [\n        \"▁pulling\",\n        -11.930868148803711\n      ],\n      [\n        \"▁Sample\",\n        -11.930924415588379\n      ],\n      [\n        \"▁renewable\",\n        -11.930997848510742\n      ],\n      [\n        \"▁Pinterest\",\n        -11.93106746673584\n      ],\n      [\n        \"▁Tages\",\n        -11.93106746673584\n      ],\n      [\n        \"▁shed\",\n        -11.931171417236328\n      ],\n      [\n        \"▁hart\",\n        -11.931188583374023\n      ],\n      [\n        \"▁serie\",\n        -11.931200981140137\n      ],\n      [\n        \"▁documentary\",\n        -11.931208610534668\n      ],\n      [\n        \"gebaut\",\n        -11.931220054626465\n      ],\n      [\n        \"▁Hause\",\n        -11.931272506713867\n      ],\n      [\n        \"share\",\n        -11.931303977966309\n      ],\n      [\n        \"▁inflation\",\n        -11.93138599395752\n      ],\n      [\n        \"▁gall\",\n        -11.931504249572754\n      ],\n      [\n        \"▁adjacent\",\n        -11.931673049926758\n      ],\n      [\n        \"jer\",\n        -11.93173885345459\n      ],\n      [\n        \"▁Universal\",\n        -11.931946754455566\n      ],\n      [\n        \"▁disabilities\",\n        -11.931984901428223\n      ],\n      [\n        \"▁proposition\",\n        -11.93204116821289\n      ],\n      [\n        \"Work\",\n        -11.932293891906738\n      ],\n      [\n        \"▁closure\",\n        -11.932306289672852\n      ],\n      [\n        \"▁separated\",\n        -11.932496070861816\n      ],\n      [\n        \"▁soda\",\n        -11.932549476623535\n      ],\n      [\n        \"▁elite\",\n        -11.93263053894043\n      ],\n      [\n        \"appro\",\n        -11.93265438079834\n      ],\n      [\n        \"▁acute\",\n        -11.93266487121582\n      ],\n      [\n        \"utton\",\n        -11.932938575744629\n      ],\n      [\n        \"▁facă\",\n        -11.933053016662598\n      ],\n      [\n        \"▁collector\",\n        -11.933121681213379\n      ],\n      [\n        \"▁unlock\",\n        -11.933249473571777\n      ],\n      [\n        \"▁Alpha\",\n        -11.933267593383789\n      ],\n      [\n        \"▁Used\",\n        -11.933267593383789\n      ],\n      [\n        \"▁applicants\",\n        -11.933302879333496\n      ],\n      [\n        \"▁înseamn\",\n        -11.933387756347656\n      ],\n      [\n        \"▁inclu\",\n        -11.933414459228516\n      ],\n      [\n        \"▁disclosure\",\n        -11.933544158935547\n      ],\n      [\n        \"▁Fahr\",\n        -11.933995246887207\n      ],\n      [\n        \"AST\",\n        -11.934061050415039\n      ],\n      [\n        \"▁vivre\",\n        -11.934069633483887\n      ],\n      [\n        \"»,\",\n        -11.934167861938477\n      ],\n      [\n        \"laud\",\n        -11.93430233001709\n      ],\n      [\n        \"▁soir\",\n        -11.934365272521973\n      ],\n      [\n        \"▁barrier\",\n        -11.934405326843262\n      ],\n      [\n        \"înd\",\n        -11.934470176696777\n      ],\n      [\n        \"▁ambition\",\n        -11.93451976776123\n      ],\n      [\n        \"asta\",\n        -11.934550285339355\n      ],\n      [\n        \"occupied\",\n        -11.934747695922852\n      ],\n      [\n        \"▁Gau\",\n        -11.934774398803711\n      ],\n      [\n        \"four\",\n        -11.93481159210205\n      ],\n      [\n        \"▁nap\",\n        -11.934887886047363\n      ],\n      [\n        \"iez\",\n        -11.934922218322754\n      ],\n      [\n        \"endra\",\n        -11.935242652893066\n      ],\n      [\n        \"gaben\",\n        -11.935464859008789\n      ],\n      [\n        \"▁Carol\",\n        -11.935481071472168\n      ],\n      [\n        \"▁Switzerland\",\n        -11.935575485229492\n      ],\n      [\n        \"▁Bond\",\n        -11.935617446899414\n      ],\n      [\n        \"▁crossing\",\n        -11.935630798339844\n      ],\n      [\n        \"▁Palace\",\n        -11.9359769821167\n      ],\n      [\n        \"NG\",\n        -11.935986518859863\n      ],\n      [\n        \"▁Budget\",\n        -11.93622875213623\n      ],\n      [\n        \"▁lid\",\n        -11.936372756958008\n      ],\n      [\n        \"bab\",\n        -11.936393737792969\n      ],\n      [\n        \"▁polish\",\n        -11.936416625976562\n      ],\n      [\n        \"▁herbs\",\n        -11.93673038482666\n      ],\n      [\n        \"▁dear\",\n        -11.936747550964355\n      ],\n      [\n        \"▁devrai\",\n        -11.936846733093262\n      ],\n      [\n        \"walk\",\n        -11.936864852905273\n      ],\n      [\n        \"▁humanity\",\n        -11.936897277832031\n      ],\n      [\n        \"▁tires\",\n        -11.936978340148926\n      ],\n      [\n        \"égal\",\n        -11.936994552612305\n      ],\n      [\n        \"▁bow\",\n        -11.937032699584961\n      ],\n      [\n        \"▁debris\",\n        -11.937201499938965\n      ],\n      [\n        \"▁keywords\",\n        -11.937273025512695\n      ],\n      [\n        \"irk\",\n        -11.937345504760742\n      ],\n      [\n        \"▁suspend\",\n        -11.937360763549805\n      ],\n      [\n        \"▁pourra\",\n        -11.93738079071045\n      ],\n      [\n        \"migran\",\n        -11.937454223632812\n      ],\n      [\n        \"thereby\",\n        -11.937570571899414\n      ],\n      [\n        \"▁Harris\",\n        -11.937943458557129\n      ],\n      [\n        \"ateurs\",\n        -11.937956809997559\n      ],\n      [\n        \"▁fal\",\n        -11.938271522521973\n      ],\n      [\n        \"alleged\",\n        -11.938355445861816\n      ],\n      [\n        \"noch\",\n        -11.938494682312012\n      ],\n      [\n        \"▁observation\",\n        -11.938506126403809\n      ],\n      [\n        \"▁București\",\n        -11.93855094909668\n      ],\n      [\n        \"▁SQL\",\n        -11.938624382019043\n      ],\n      [\n        \"▁Phase\",\n        -11.938760757446289\n      ],\n      [\n        \"▁adventures\",\n        -11.93881607055664\n      ],\n      [\n        \"▁Kol\",\n        -11.938885688781738\n      ],\n      [\n        \"▁professionnel\",\n        -11.938916206359863\n      ],\n      [\n        \"crit\",\n        -11.939026832580566\n      ],\n      [\n        \"LR\",\n        -11.939313888549805\n      ],\n      [\n        \"▁preview\",\n        -11.939464569091797\n      ],\n      [\n        \"▁highlighted\",\n        -11.939942359924316\n      ],\n      [\n        \"▁Stud\",\n        -11.939949035644531\n      ],\n      [\n        \"▁labour\",\n        -11.939956665039062\n      ],\n      [\n        \"MV\",\n        -11.9399995803833\n      ],\n      [\n        \"click\",\n        -11.940049171447754\n      ],\n      [\n        \"approche\",\n        -11.94016170501709\n      ],\n      [\n        \"tian\",\n        -11.940183639526367\n      ],\n      [\n        \"cité\",\n        -11.940192222595215\n      ],\n      [\n        \"▁Rain\",\n        -11.94028377532959\n      ],\n      [\n        \"typ\",\n        -11.94032096862793\n      ],\n      [\n        \"Usually\",\n        -11.940435409545898\n      ],\n      [\n        \"▁outlet\",\n        -11.940513610839844\n      ],\n      [\n        \"logging\",\n        -11.940814018249512\n      ],\n      [\n        \"▁Temperatur\",\n        -11.940906524658203\n      ],\n      [\n        \"▁Scottish\",\n        -11.94090747833252\n      ],\n      [\n        \"iga\",\n        -11.940942764282227\n      ],\n      [\n        \"▁glory\",\n        -11.941086769104004\n      ],\n      [\n        \"▁Rom\",\n        -11.941242218017578\n      ],\n      [\n        \"zeug\",\n        -11.941337585449219\n      ],\n      [\n        \"establishing\",\n        -11.941339492797852\n      ],\n      [\n        \"▁imaging\",\n        -11.941926002502441\n      ],\n      [\n        \"▁Beauty\",\n        -11.942015647888184\n      ],\n      [\n        \"igan\",\n        -11.942042350769043\n      ],\n      [\n        \"après\",\n        -11.94224739074707\n      ],\n      [\n        \"Adresse\",\n        -11.942267417907715\n      ],\n      [\n        \"cliff\",\n        -11.942349433898926\n      ],\n      [\n        \"▁unnecessary\",\n        -11.943267822265625\n      ],\n      [\n        \"▁slim\",\n        -11.943324089050293\n      ],\n      [\n        \"dir\",\n        -11.943490982055664\n      ],\n      [\n        \"▁leisure\",\n        -11.943660736083984\n      ],\n      [\n        \"▁principale\",\n        -11.94368839263916\n      ],\n      [\n        \"▁Viele\",\n        -11.943770408630371\n      ],\n      [\n        \"▁2007.\",\n        -11.943802833557129\n      ],\n      [\n        \"Hopefully\",\n        -11.943829536437988\n      ],\n      [\n        \"cola\",\n        -11.943851470947266\n      ],\n      [\n        \"▁Planet\",\n        -11.943927764892578\n      ],\n      [\n        \"▁orientation\",\n        -11.943933486938477\n      ],\n      [\n        \"▁angry\",\n        -11.94419002532959\n      ],\n      [\n        \"MIT\",\n        -11.944234848022461\n      ],\n      [\n        \"▁Kenya\",\n        -11.944265365600586\n      ],\n      [\n        \"▁bless\",\n        -11.94435977935791\n      ],\n      [\n        \"▁Fill\",\n        -11.944524765014648\n      ],\n      [\n        \"▁compar\",\n        -11.944664001464844\n      ],\n      [\n        \"▁curtain\",\n        -11.94473934173584\n      ],\n      [\n        \"ţei\",\n        -11.944754600524902\n      ],\n      [\n        \"▁Az\",\n        -11.94482421875\n      ],\n      [\n        \"▁Rang\",\n        -11.944908142089844\n      ],\n      [\n        \"▁dominant\",\n        -11.944974899291992\n      ],\n      [\n        \"race\",\n        -11.944985389709473\n      ],\n      [\n        \"▁Target\",\n        -11.944987297058105\n      ],\n      [\n        \"▁manually\",\n        -11.944987297058105\n      ],\n      [\n        \"objet\",\n        -11.945024490356445\n      ],\n      [\n        \"thrown\",\n        -11.945131301879883\n      ],\n      [\n        \"NF\",\n        -11.945149421691895\n      ],\n      [\n        \"durant\",\n        -11.945185661315918\n      ],\n      [\n        \"rect\",\n        -11.945302963256836\n      ],\n      [\n        \"▁Größe\",\n        -11.945320129394531\n      ],\n      [\n        \"VM\",\n        -11.9453763961792\n      ],\n      [\n        \"▁aprilie\",\n        -11.945476531982422\n      ],\n      [\n        \"▁Welche\",\n        -11.945639610290527\n      ],\n      [\n        \"▁verde\",\n        -11.946157455444336\n      ],\n      [\n        \"▁Portugal\",\n        -11.946266174316406\n      ],\n      [\n        \"▁algorithm\",\n        -11.94627571105957\n      ],\n      [\n        \"ăț\",\n        -11.946328163146973\n      ],\n      [\n        \"▁Grey\",\n        -11.946371078491211\n      ],\n      [\n        \"▁cleaned\",\n        -11.94644832611084\n      ],\n      [\n        \"▁modes\",\n        -11.946463584899902\n      ],\n      [\n        \"▁relaxation\",\n        -11.946599006652832\n      ],\n      [\n        \"mbr\",\n        -11.946786880493164\n      ],\n      [\n        \"étique\",\n        -11.946821212768555\n      ],\n      [\n        \"Her\",\n        -11.946904182434082\n      ],\n      [\n        \"▁beta\",\n        -11.946952819824219\n      ],\n      [\n        \"▁nobody\",\n        -11.94699764251709\n      ],\n      [\n        \"▁aplic\",\n        -11.947060585021973\n      ],\n      [\n        \"present\",\n        -11.947080612182617\n      ],\n      [\n        \"emis\",\n        -11.947197914123535\n      ],\n      [\n        \"éléments\",\n        -11.947257995605469\n      ],\n      [\n        \"▁lately\",\n        -11.947303771972656\n      ],\n      [\n        \"fab\",\n        -11.94732666015625\n      ],\n      [\n        \"▁aluminiu\",\n        -11.947373390197754\n      ],\n      [\n        \"▁vest\",\n        -11.947524070739746\n      ],\n      [\n        \"▁statue\",\n        -11.947558403015137\n      ],\n      [\n        \"▁publice\",\n        -11.947586059570312\n      ],\n      [\n        \"▁merchandise\",\n        -11.9476900100708\n      ],\n      [\n        \"▁relat\",\n        -11.947810173034668\n      ],\n      [\n        \"git\",\n        -11.94796371459961\n      ],\n      [\n        \"▁interne\",\n        -11.948281288146973\n      ],\n      [\n        \"▁Tokyo\",\n        -11.948325157165527\n      ],\n      [\n        \"chal\",\n        -11.948348045349121\n      ],\n      [\n        \"contacted\",\n        -11.948430061340332\n      ],\n      [\n        \"▁tras\",\n        -11.948455810546875\n      ],\n      [\n        \"▁Clinic\",\n        -11.948626518249512\n      ],\n      [\n        \"▁unbe\",\n        -11.948633193969727\n      ],\n      [\n        \"▁dumneavoastra\",\n        -11.948798179626465\n      ],\n      [\n        \"float\",\n        -11.949078559875488\n      ],\n      [\n        \"isson\",\n        -11.94909381866455\n      ],\n      [\n        \"▁vessel\",\n        -11.949126243591309\n      ],\n      [\n        \"attempting\",\n        -11.949161529541016\n      ],\n      [\n        \"▁doute\",\n        -11.94918441772461\n      ],\n      [\n        \"▁Leadership\",\n        -11.949322700500488\n      ],\n      [\n        \"▁sustain\",\n        -11.94947338104248\n      ],\n      [\n        \"▁textile\",\n        -11.949666023254395\n      ],\n      [\n        \"auer\",\n        -11.949702262878418\n      ],\n      [\n        \"▁90%\",\n        -11.949899673461914\n      ],\n      [\n        \"garten\",\n        -11.949911117553711\n      ],\n      [\n        \"▁adauga\",\n        -11.949991226196289\n      ],\n      [\n        \"▁Kil\",\n        -11.950061798095703\n      ],\n      [\n        \"▁troops\",\n        -11.950420379638672\n      ],\n      [\n        \"▁pale\",\n        -11.950568199157715\n      ],\n      [\n        \"host\",\n        -11.950743675231934\n      ],\n      [\n        \"▁cry\",\n        -11.950757026672363\n      ],\n      [\n        \"▁Alb\",\n        -11.950793266296387\n      ],\n      [\n        \"▁Brad\",\n        -11.95089340209961\n      ],\n      [\n        \"▁bicycle\",\n        -11.951054573059082\n      ],\n      [\n        \"▁24/7\",\n        -11.951217651367188\n      ],\n      [\n        \"▁с\",\n        -11.951228141784668\n      ],\n      [\n        \"▁stimul\",\n        -11.951401710510254\n      ],\n      [\n        \"gler\",\n        -11.951445579528809\n      ],\n      [\n        \"▁notwendig\",\n        -11.951496124267578\n      ],\n      [\n        \"▁cousin\",\n        -11.95158863067627\n      ],\n      [\n        \"cheie\",\n        -11.951600074768066\n      ],\n      [\n        \"hay\",\n        -11.951751708984375\n      ],\n      [\n        \"▁rezolv\",\n        -11.952134132385254\n      ],\n      [\n        \"▁THIS\",\n        -11.952143669128418\n      ],\n      [\n        \"ordre\",\n        -11.952157974243164\n      ],\n      [\n        \"iști\",\n        -11.952173233032227\n      ],\n      [\n        \"▁conclude\",\n        -11.952310562133789\n      ],\n      [\n        \"▁Lage\",\n        -11.952327728271484\n      ],\n      [\n        \"▁Entertainment\",\n        -11.952454566955566\n      ],\n      [\n        \"▁valued\",\n        -11.952478408813477\n      ],\n      [\n        \"ktion\",\n        -11.95253849029541\n      ],\n      [\n        \"▁priorities\",\n        -11.95268440246582\n      ],\n      [\n        \"▁1986\",\n        -11.952770233154297\n      ],\n      [\n        \"▁fatal\",\n        -11.952934265136719\n      ],\n      [\n        \"▁accurately\",\n        -11.952988624572754\n      ],\n      [\n        \"▁1987\",\n        -11.953022956848145\n      ],\n      [\n        \"▁folk\",\n        -11.953073501586914\n      ],\n      [\n        \"7)\",\n        -11.953163146972656\n      ],\n      [\n        \"führer\",\n        -11.95360279083252\n      ],\n      [\n        \"▁knot\",\n        -11.953612327575684\n      ],\n      [\n        \"haltung\",\n        -11.953720092773438\n      ],\n      [\n        \"▁Charlie\",\n        -11.953733444213867\n      ],\n      [\n        \"âge\",\n        -11.95376205444336\n      ],\n      [\n        \"▁threshold\",\n        -11.954041481018066\n      ],\n      [\n        \"▁assault\",\n        -11.954130172729492\n      ],\n      [\n        \"▁meist\",\n        -11.954141616821289\n      ],\n      [\n        \"bine\",\n        -11.954155921936035\n      ],\n      [\n        \"surprisingly\",\n        -11.954171180725098\n      ],\n      [\n        \"▁Protect\",\n        -11.954180717468262\n      ],\n      [\n        \"▁Hack\",\n        -11.954258918762207\n      ],\n      [\n        \"▁Quant\",\n        -11.954537391662598\n      ],\n      [\n        \"▁Cet\",\n        -11.954782485961914\n      ],\n      [\n        \"▁convinced\",\n        -11.95481014251709\n      ],\n      [\n        \"▁muncă\",\n        -11.955033302307129\n      ],\n      [\n        \"dging\",\n        -11.955066680908203\n      ],\n      [\n        \"▁Millionen\",\n        -11.955129623413086\n      ],\n      [\n        \"zahlung\",\n        -11.955148696899414\n      ],\n      [\n        \"▁anticipated\",\n        -11.955192565917969\n      ],\n      [\n        \"▁brass\",\n        -11.9552001953125\n      ],\n      [\n        \"KO\",\n        -11.955244064331055\n      ],\n      [\n        \"▁culori\",\n        -11.955286979675293\n      ],\n      [\n        \"▁Aero\",\n        -11.955326080322266\n      ],\n      [\n        \"▁intermediu\",\n        -11.955373764038086\n      ],\n      [\n        \"▁Philippines\",\n        -11.955381393432617\n      ],\n      [\n        \"▁jury\",\n        -11.955387115478516\n      ],\n      [\n        \"▁Funktion\",\n        -11.95569896697998\n      ],\n      [\n        \"▁probe\",\n        -11.955704689025879\n      ],\n      [\n        \"TL\",\n        -11.955748558044434\n      ],\n      [\n        \"1.0\",\n        -11.955804824829102\n      ],\n      [\n        \"ELL\",\n        -11.95581340789795\n      ],\n      [\n        \"She\",\n        -11.956001281738281\n      ],\n      [\n        \"▁Blood\",\n        -11.956073760986328\n      ],\n      [\n        \"▁Dean\",\n        -11.956111907958984\n      ],\n      [\n        \"▁scène\",\n        -11.9561185836792\n      ],\n      [\n        \"volu\",\n        -11.95621395111084\n      ],\n      [\n        \"▁Epi\",\n        -11.95621395111084\n      ],\n      [\n        \"▁séjour\",\n        -11.95627498626709\n      ],\n      [\n        \"▁Smartphone\",\n        -11.956306457519531\n      ],\n      [\n        \"▁fired\",\n        -11.956357955932617\n      ],\n      [\n        \"beat\",\n        -11.95650577545166\n      ],\n      [\n        \"▁pockets\",\n        -11.956506729125977\n      ],\n      [\n        \"▁serviciu\",\n        -11.956624031066895\n      ],\n      [\n        \"▁affairs\",\n        -11.95678424835205\n      ],\n      [\n        \"▁Ry\",\n        -11.956842422485352\n      ],\n      [\n        \"▁Stadium\",\n        -11.956954956054688\n      ],\n      [\n        \"▁snacks\",\n        -11.957182884216309\n      ],\n      [\n        \"▁efectu\",\n        -11.957221031188965\n      ],\n      [\n        \"▁Richtung\",\n        -11.957273483276367\n      ],\n      [\n        \"▁dresses\",\n        -11.957352638244629\n      ],\n      [\n        \"▁Medien\",\n        -11.95744800567627\n      ],\n      [\n        \"writer\",\n        -11.95759105682373\n      ],\n      [\n        \"changing\",\n        -11.957655906677246\n      ],\n      [\n        \"▁supportive\",\n        -11.957849502563477\n      ],\n      [\n        \"▁beneath\",\n        -11.957873344421387\n      ],\n      [\n        \"paid\",\n        -11.958078384399414\n      ],\n      [\n        \"▁customize\",\n        -11.958155632019043\n      ],\n      [\n        \"▁Ferr\",\n        -11.958187103271484\n      ],\n      [\n        \"reaches\",\n        -11.958338737487793\n      ],\n      [\n        \"arma\",\n        -11.958401679992676\n      ],\n      [\n        \"ción\",\n        -11.958598136901855\n      ],\n      [\n        \"▁elderly\",\n        -11.959243774414062\n      ],\n      [\n        \"▁modification\",\n        -11.95934009552002\n      ],\n      [\n        \"▁perfection\",\n        -11.959381103515625\n      ],\n      [\n        \"▁Allow\",\n        -11.959492683410645\n      ],\n      [\n        \"▁belonging\",\n        -11.959542274475098\n      ],\n      [\n        \"▁compound\",\n        -11.959589004516602\n      ],\n      [\n        \"▁Results\",\n        -11.959681510925293\n      ],\n      [\n        \"▁astăzi\",\n        -11.959793090820312\n      ],\n      [\n        \"▁Liber\",\n        -11.959818840026855\n      ],\n      [\n        \"jor\",\n        -11.959850311279297\n      ],\n      [\n        \"▁Nin\",\n        -11.959980964660645\n      ],\n      [\n        \"▁lumina\",\n        -11.959992408752441\n      ],\n      [\n        \"▁130\",\n        -11.960073471069336\n      ],\n      [\n        \"▁Platform\",\n        -11.960121154785156\n      ],\n      [\n        \"▁SMS\",\n        -11.960221290588379\n      ],\n      [\n        \"▁medic\",\n        -11.96024227142334\n      ],\n      [\n        \"hör\",\n        -11.960315704345703\n      ],\n      [\n        \"▁Kas\",\n        -11.96038818359375\n      ],\n      [\n        \"▁tomato\",\n        -11.960403442382812\n      ],\n      [\n        \"▁logiciel\",\n        -11.960505485534668\n      ],\n      [\n        \"php\",\n        -11.960654258728027\n      ],\n      [\n        \"▁premises\",\n        -11.96071720123291\n      ],\n      [\n        \"▁Communication\",\n        -11.96072769165039\n      ],\n      [\n        \"▁reprezintă\",\n        -11.960762023925781\n      ],\n      [\n        \"▁Partners\",\n        -11.960866928100586\n      ],\n      [\n        \"▁RV\",\n        -11.961090087890625\n      ],\n      [\n        \"▁pants\",\n        -11.961197853088379\n      ],\n      [\n        \"▁envie\",\n        -11.961256980895996\n      ],\n      [\n        \"▁commerce\",\n        -11.961263656616211\n      ],\n      [\n        \"▁tears\",\n        -11.961298942565918\n      ],\n      [\n        \"▁cooler\",\n        -11.961494445800781\n      ],\n      [\n        \"strand\",\n        -11.961556434631348\n      ],\n      [\n        \"▁Gil\",\n        -11.961588859558105\n      ],\n      [\n        \"▁référence\",\n        -11.961641311645508\n      ],\n      [\n        \"▁electronics\",\n        -11.961681365966797\n      ],\n      [\n        \"exposition\",\n        -11.961700439453125\n      ],\n      [\n        \"▁Caribbean\",\n        -11.96171760559082\n      ],\n      [\n        \"▁compelling\",\n        -11.96171760559082\n      ],\n      [\n        \"luci\",\n        -11.961723327636719\n      ],\n      [\n        \"▁Brooklyn\",\n        -11.961892127990723\n      ],\n      [\n        \"▁Thai\",\n        -11.961950302124023\n      ],\n      [\n        \"dler\",\n        -11.96198844909668\n      ],\n      [\n        \"▁supra\",\n        -11.962016105651855\n      ],\n      [\n        \"centered\",\n        -11.962026596069336\n      ],\n      [\n        \"▁metro\",\n        -11.962081909179688\n      ],\n      [\n        \"▁03\",\n        -11.962299346923828\n      ],\n      [\n        \"▁enrich\",\n        -11.962437629699707\n      ],\n      [\n        \"▁adevarat\",\n        -11.962594985961914\n      ],\n      [\n        \"5000\",\n        -11.962961196899414\n      ],\n      [\n        \"▁bell\",\n        -11.96297550201416\n      ],\n      [\n        \"▁sine\",\n        -11.962996482849121\n      ],\n      [\n        \"▁appealing\",\n        -11.963088989257812\n      ],\n      [\n        \"clam\",\n        -11.963116645812988\n      ],\n      [\n        \"▁vorhanden\",\n        -11.963165283203125\n      ],\n      [\n        \"▁pickup\",\n        -11.963268280029297\n      ],\n      [\n        \"▁Alaska\",\n        -11.963269233703613\n      ],\n      [\n        \"▁Nacht\",\n        -11.963300704956055\n      ],\n      [\n        \"borough\",\n        -11.9633207321167\n      ],\n      [\n        \"▁Blanc\",\n        -11.96340274810791\n      ],\n      [\n        \"▁apare\",\n        -11.963616371154785\n      ],\n      [\n        \"▁Works\",\n        -11.963798522949219\n      ],\n      [\n        \"mettent\",\n        -11.963801383972168\n      ],\n      [\n        \"atter\",\n        -11.96389389038086\n      ],\n      [\n        \"terra\",\n        -11.963946342468262\n      ],\n      [\n        \"▁Bit\",\n        -11.964105606079102\n      ],\n      [\n        \"RL\",\n        -11.964131355285645\n      ],\n      [\n        \"▁Wander\",\n        -11.964262962341309\n      ],\n      [\n        \"▁Hawk\",\n        -11.964595794677734\n      ],\n      [\n        \"▁Probleme\",\n        -11.964665412902832\n      ],\n      [\n        \"regel\",\n        -11.964729309082031\n      ],\n      [\n        \"hne\",\n        -11.964739799499512\n      ],\n      [\n        \"fass\",\n        -11.96486759185791\n      ],\n      [\n        \"▁Andy\",\n        -11.965014457702637\n      ],\n      [\n        \"▁befinde\",\n        -11.965179443359375\n      ],\n      [\n        \"boo\",\n        -11.965265274047852\n      ],\n      [\n        \"▁connectivity\",\n        -11.965304374694824\n      ],\n      [\n        \"▁spielt\",\n        -11.965418815612793\n      ],\n      [\n        \"zweiten\",\n        -11.96547794342041\n      ],\n      [\n        \"ţilor\",\n        -11.965526580810547\n      ],\n      [\n        \"▁confi\",\n        -11.96561336517334\n      ],\n      [\n        \"▁schlecht\",\n        -11.965773582458496\n      ],\n      [\n        \"▁Beginn\",\n        -11.96581745147705\n      ],\n      [\n        \"▁floating\",\n        -11.965903282165527\n      ],\n      [\n        \"nimmt\",\n        -11.966071128845215\n      ],\n      [\n        \"▁arbeiten\",\n        -11.96611213684082\n      ],\n      [\n        \"pillar\",\n        -11.966131210327148\n      ],\n      [\n        \"sterreich\",\n        -11.966347694396973\n      ],\n      [\n        \"▁Schule\",\n        -11.966446876525879\n      ],\n      [\n        \"▁durée\",\n        -11.966521263122559\n      ],\n      [\n        \"▁honestly\",\n        -11.96653938293457\n      ],\n      [\n        \"▁acel\",\n        -11.9666166305542\n      ],\n      [\n        \"▁Prozess\",\n        -11.96662425994873\n      ],\n      [\n        \"Min\",\n        -11.966629028320312\n      ],\n      [\n        \"enii\",\n        -11.966632843017578\n      ],\n      [\n        \"DAY\",\n        -11.966758728027344\n      ],\n      [\n        \"▁Blo\",\n        -11.966806411743164\n      ],\n      [\n        \"▁bolt\",\n        -11.966946601867676\n      ],\n      [\n        \"sicher\",\n        -11.967070579528809\n      ],\n      [\n        \"▁17,\",\n        -11.967122077941895\n      ],\n      [\n        \"▁anchor\",\n        -11.967215538024902\n      ],\n      [\n        \"▁consistency\",\n        -11.967241287231445\n      ],\n      [\n        \"▁relatives\",\n        -11.967263221740723\n      ],\n      [\n        \"▁lac\",\n        -11.967385292053223\n      ],\n      [\n        \"105\",\n        -11.967432975769043\n      ],\n      [\n        \"▁Craig\",\n        -11.967534065246582\n      ],\n      [\n        \"▁mandate\",\n        -11.967598915100098\n      ],\n      [\n        \"▁bedeutet\",\n        -11.967674255371094\n      ],\n      [\n        \"▁Soviet\",\n        -11.967680931091309\n      ],\n      [\n        \"▁arguments\",\n        -11.967938423156738\n      ],\n      [\n        \"▁Gebäude\",\n        -11.967997550964355\n      ],\n      [\n        \"▁Parliament\",\n        -11.968005180358887\n      ],\n      [\n        \"▁Kha\",\n        -11.968087196350098\n      ],\n      [\n        \"nica\",\n        -11.968130111694336\n      ],\n      [\n        \"▁Amazing\",\n        -11.968162536621094\n      ],\n      [\n        \"gründe\",\n        -11.968179702758789\n      ],\n      [\n        \"▁Ott\",\n        -11.968269348144531\n      ],\n      [\n        \"Exp\",\n        -11.968314170837402\n      ],\n      [\n        \"▁ianuarie\",\n        -11.96848201751709\n      ],\n      [\n        \"riot\",\n        -11.968571662902832\n      ],\n      [\n        \"▁futur\",\n        -11.968626976013184\n      ],\n      [\n        \"▁Honda\",\n        -11.968647956848145\n      ],\n      [\n        \"!!!!\",\n        -11.96865177154541\n      ],\n      [\n        \"▁citit\",\n        -11.968689918518066\n      ],\n      [\n        \"▁22,\",\n        -11.968708992004395\n      ],\n      [\n        \"țional\",\n        -11.968711853027344\n      ],\n      [\n        \"▁lovers\",\n        -11.968732833862305\n      ],\n      [\n        \"▁Current\",\n        -11.968835830688477\n      ],\n      [\n        \"▁drone\",\n        -11.96927261352539\n      ],\n      [\n        \"▁promising\",\n        -11.969335556030273\n      ],\n      [\n        \"devoted\",\n        -11.969443321228027\n      ],\n      [\n        \"▁Born\",\n        -11.969520568847656\n      ],\n      [\n        \"▁viitor\",\n        -11.969589233398438\n      ],\n      [\n        \"▁ritual\",\n        -11.969614028930664\n      ],\n      [\n        \"▁Guard\",\n        -11.969681739807129\n      ],\n      [\n        \"09.\",\n        -11.969828605651855\n      ],\n      [\n        \"▁Py\",\n        -11.970260620117188\n      ],\n      [\n        \"▁finds\",\n        -11.970380783081055\n      ],\n      [\n        \"▁boli\",\n        -11.970394134521484\n      ],\n      [\n        \"▁Mitglieder\",\n        -11.970697402954102\n      ],\n      [\n        \"ogni\",\n        -11.97107982635498\n      ],\n      [\n        \"▁stones\",\n        -11.97118854522705\n      ],\n      [\n        \"rox\",\n        -11.971210479736328\n      ],\n      [\n        \"▁dock\",\n        -11.971390724182129\n      ],\n      [\n        \"▁onion\",\n        -11.97144889831543\n      ],\n      [\n        \"▁classified\",\n        -11.971538543701172\n      ],\n      [\n        \"big\",\n        -11.971833229064941\n      ],\n      [\n        \"RG\",\n        -11.971857070922852\n      ],\n      [\n        \"influenced\",\n        -11.971955299377441\n      ],\n      [\n        \"▁sudden\",\n        -11.971988677978516\n      ],\n      [\n        \"▁ample\",\n        -11.97204303741455\n      ],\n      [\n        \"án\",\n        -11.972095489501953\n      ],\n      [\n        \"▁ornament\",\n        -11.972122192382812\n      ],\n      [\n        \"datele\",\n        -11.972227096557617\n      ],\n      [\n        \"▁Dad\",\n        -11.97225284576416\n      ],\n      [\n        \"BER\",\n        -11.972278594970703\n      ],\n      [\n        \"gerecht\",\n        -11.972380638122559\n      ],\n      [\n        \"kett\",\n        -11.972536087036133\n      ],\n      [\n        \"▁Antonio\",\n        -11.972572326660156\n      ],\n      [\n        \"Nu\",\n        -11.972834587097168\n      ],\n      [\n        \"dium\",\n        -11.97284984588623\n      ],\n      [\n        \"CAD\",\n        -11.972850799560547\n      ],\n      [\n        \"▁bundle\",\n        -11.972916603088379\n      ],\n      [\n        \"▁Vari\",\n        -11.97301197052002\n      ],\n      [\n        \"▁thrive\",\n        -11.973020553588867\n      ],\n      [\n        \"▁Seminar\",\n        -11.973071098327637\n      ],\n      [\n        \"wire\",\n        -11.973084449768066\n      ],\n      [\n        \"▁contributing\",\n        -11.973114967346191\n      ],\n      [\n        \"▁Bour\",\n        -11.97320556640625\n      ],\n      [\n        \"▁dori\",\n        -11.973206520080566\n      ],\n      [\n        \"▁packing\",\n        -11.97343921661377\n      ],\n      [\n        \"▁colleges\",\n        -11.973459243774414\n      ],\n      [\n        \"▁garbage\",\n        -11.97366714477539\n      ],\n      [\n        \"▁vector\",\n        -11.973837852478027\n      ],\n      [\n        \"▁suggestion\",\n        -11.973897933959961\n      ],\n      [\n        \"borne\",\n        -11.973904609680176\n      ],\n      [\n        \"▁Listen\",\n        -11.973938941955566\n      ],\n      [\n        \"▁Prix\",\n        -11.973957061767578\n      ],\n      [\n        \"viennent\",\n        -11.974162101745605\n      ],\n      [\n        \"insbesondere\",\n        -11.97426700592041\n      ],\n      [\n        \"▁fonctionne\",\n        -11.974435806274414\n      ],\n      [\n        \"▁mainstream\",\n        -11.974485397338867\n      ],\n      [\n        \"▁merci\",\n        -11.974574089050293\n      ],\n      [\n        \"oko\",\n        -11.97460651397705\n      ],\n      [\n        \"▁Commerce\",\n        -11.97493839263916\n      ],\n      [\n        \"▁droits\",\n        -11.975115776062012\n      ],\n      [\n        \"▁muzica\",\n        -11.975141525268555\n      ],\n      [\n        \"▁profesor\",\n        -11.9751558303833\n      ],\n      [\n        \"▁epic\",\n        -11.97518253326416\n      ],\n      [\n        \"▁intuitive\",\n        -11.975186347961426\n      ],\n      [\n        \"▁aggregate\",\n        -11.975223541259766\n      ],\n      [\n        \"▁vaccine\",\n        -11.97529411315918\n      ],\n      [\n        \"▁dank\",\n        -11.975459098815918\n      ],\n      [\n        \"▁situ\",\n        -11.975578308105469\n      ],\n      [\n        \"▁Cand\",\n        -11.975593566894531\n      ],\n      [\n        \"▁Ganz\",\n        -11.97562313079834\n      ],\n      [\n        \"▁Crystal\",\n        -11.97578239440918\n      ],\n      [\n        \"▁discretion\",\n        -11.975825309753418\n      ],\n      [\n        \"mug\",\n        -11.975997924804688\n      ],\n      [\n        \"▁anzu\",\n        -11.976144790649414\n      ],\n      [\n        \"▁cement\",\n        -11.97616958618164\n      ],\n      [\n        \"▁priest\",\n        -11.97625732421875\n      ],\n      [\n        \"▁rejected\",\n        -11.976298332214355\n      ],\n      [\n        \"▁Summit\",\n        -11.976325988769531\n      ],\n      [\n        \"▁Sara\",\n        -11.976424217224121\n      ],\n      [\n        \"▁palette\",\n        -11.976527214050293\n      ],\n      [\n        \"▁continuare\",\n        -11.976569175720215\n      ],\n      [\n        \"uge\",\n        -11.976676940917969\n      ],\n      [\n        \"ryl\",\n        -11.976844787597656\n      ],\n      [\n        \"▁Solid\",\n        -11.977142333984375\n      ],\n      [\n        \"▁meilleure\",\n        -11.977177619934082\n      ],\n      [\n        \"▁Tennessee\",\n        -11.977248191833496\n      ],\n      [\n        \"rail\",\n        -11.977326393127441\n      ],\n      [\n        \"▁attributes\",\n        -11.9773530960083\n      ],\n      [\n        \"▁vessels\",\n        -11.977840423583984\n      ],\n      [\n        \"cylinder\",\n        -11.977900505065918\n      ],\n      [\n        \"▁parfait\",\n        -11.977916717529297\n      ],\n      [\n        \"abb\",\n        -11.97801399230957\n      ],\n      [\n        \"▁Julie\",\n        -11.97806167602539\n      ],\n      [\n        \"▁pièces\",\n        -11.978120803833008\n      ],\n      [\n        \"▁proiecte\",\n        -11.978142738342285\n      ],\n      [\n        \"médi\",\n        -11.978273391723633\n      ],\n      [\n        \"▁décembre\",\n        -11.9783935546875\n      ],\n      [\n        \"Per\",\n        -11.97841739654541\n      ],\n      [\n        \"1/\",\n        -11.978520393371582\n      ],\n      [\n        \"regulated\",\n        -11.978601455688477\n      ],\n      [\n        \"▁Dy\",\n        -11.978633880615234\n      ],\n      [\n        \"▁23,\",\n        -11.978694915771484\n      ],\n      [\n        \"beck\",\n        -11.978763580322266\n      ],\n      [\n        \"tură\",\n        -11.97885513305664\n      ],\n      [\n        \"▁Chiar\",\n        -11.978931427001953\n      ],\n      [\n        \"▁isolated\",\n        -11.979012489318848\n      ],\n      [\n        \"▁kennen\",\n        -11.979259490966797\n      ],\n      [\n        \"Du\",\n        -11.979260444641113\n      ],\n      [\n        \"reflected\",\n        -11.979482650756836\n      ],\n      [\n        \"▁belong\",\n        -11.979571342468262\n      ],\n      [\n        \"▁welcomed\",\n        -11.97969913482666\n      ],\n      [\n        \"▁Rate\",\n        -11.979776382446289\n      ],\n      [\n        \"prestigious\",\n        -11.979859352111816\n      ],\n      [\n        \"▁1/4\",\n        -11.979930877685547\n      ],\n      [\n        \"▁distinction\",\n        -11.979966163635254\n      ],\n      [\n        \"▁boring\",\n        -11.980001449584961\n      ],\n      [\n        \"▁booked\",\n        -11.980369567871094\n      ],\n      [\n        \"▁citizen\",\n        -11.980441093444824\n      ],\n      [\n        \"▁comprises\",\n        -11.980498313903809\n      ],\n      [\n        \"▁aufge\",\n        -11.98051929473877\n      ],\n      [\n        \"GL\",\n        -11.980566024780273\n      ],\n      [\n        \"▁nearest\",\n        -11.980616569519043\n      ],\n      [\n        \"▁printr\",\n        -11.980692863464355\n      ],\n      [\n        \"▁département\",\n        -11.981318473815918\n      ],\n      [\n        \"▁planner\",\n        -11.981510162353516\n      ],\n      [\n        \"▁Rai\",\n        -11.981817245483398\n      ],\n      [\n        \"▁Broad\",\n        -11.981934547424316\n      ],\n      [\n        \"▁pastor\",\n        -11.981947898864746\n      ],\n      [\n        \"▁reservation\",\n        -11.982243537902832\n      ],\n      [\n        \"▁decembrie\",\n        -11.982315063476562\n      ],\n      [\n        \"▁suficient\",\n        -11.982501983642578\n      ],\n      [\n        \"geld\",\n        -11.982560157775879\n      ],\n      [\n        \"training\",\n        -11.982620239257812\n      ],\n      [\n        \"deshalb\",\n        -11.982634544372559\n      ],\n      [\n        \"▁chaud\",\n        -11.982651710510254\n      ],\n      [\n        \"Cor\",\n        -11.982662200927734\n      ],\n      [\n        \"▁Grade\",\n        -11.982769966125488\n      ],\n      [\n        \"▁faţă\",\n        -11.982809066772461\n      ],\n      [\n        \"story\",\n        -11.982839584350586\n      ],\n      [\n        \"gericht\",\n        -11.98286247253418\n      ],\n      [\n        \"▁Got\",\n        -11.982954025268555\n      ],\n      [\n        \"particulièrement\",\n        -11.982976913452148\n      ],\n      [\n        \"▁bump\",\n        -11.983051300048828\n      ],\n      [\n        \"▁fatigue\",\n        -11.983160018920898\n      ],\n      [\n        \"Activ\",\n        -11.983250617980957\n      ],\n      [\n        \"▁numéro\",\n        -11.983302116394043\n      ],\n      [\n        \"▁stranger\",\n        -11.983312606811523\n      ],\n      [\n        \"▁Skin\",\n        -11.983327865600586\n      ],\n      [\n        \"add\",\n        -11.98344898223877\n      ],\n      [\n        \"Ainsi\",\n        -11.98357105255127\n      ],\n      [\n        \"▁assists\",\n        -11.983684539794922\n      ],\n      [\n        \"▁zusätzlich\",\n        -11.983943939208984\n      ],\n      [\n        \"▁vede\",\n        -11.983979225158691\n      ],\n      [\n        \"RON\",\n        -11.984108924865723\n      ],\n      [\n        \"▁seemingly\",\n        -11.984126091003418\n      ],\n      [\n        \"▁NU\",\n        -11.98417854309082\n      ],\n      [\n        \"geb\",\n        -11.984273910522461\n      ],\n      [\n        \"▁Release\",\n        -11.984353065490723\n      ],\n      [\n        \"▁throwing\",\n        -11.984427452087402\n      ],\n      [\n        \"▁Alabama\",\n        -11.984447479248047\n      ],\n      [\n        \"▁Something\",\n        -11.984590530395508\n      ],\n      [\n        \"▁Cuba\",\n        -11.98464584350586\n      ],\n      [\n        \"▁Verbindung\",\n        -11.984649658203125\n      ],\n      [\n        \"▁Cir\",\n        -11.984654426574707\n      ],\n      [\n        \"your\",\n        -11.984713554382324\n      ],\n      [\n        \"-13\",\n        -11.984748840332031\n      ],\n      [\n        \"▁Delta\",\n        -11.984801292419434\n      ],\n      [\n        \"▁Twin\",\n        -11.98504638671875\n      ],\n      [\n        \"▁governance\",\n        -11.985156059265137\n      ],\n      [\n        \"▁groom\",\n        -11.985310554504395\n      ],\n      [\n        \"▁conception\",\n        -11.98533821105957\n      ],\n      [\n        \"▁governor\",\n        -11.985383033752441\n      ],\n      [\n        \"▁Spar\",\n        -11.985416412353516\n      ],\n      [\n        \"▁coastal\",\n        -11.985652923583984\n      ],\n      [\n        \"▁Seven\",\n        -11.985856056213379\n      ],\n      [\n        \"▁inclusive\",\n        -11.986002922058105\n      ],\n      [\n        \"cili\",\n        -11.986035346984863\n      ],\n      [\n        \"▁Ridge\",\n        -11.986100196838379\n      ],\n      [\n        \"teller\",\n        -11.986224174499512\n      ],\n      [\n        \"▁Kin\",\n        -11.986247062683105\n      ],\n      [\n        \"leiter\",\n        -11.986279487609863\n      ],\n      [\n        \"stern\",\n        -11.986364364624023\n      ],\n      [\n        \"change\",\n        -11.986404418945312\n      ],\n      [\n        \"▁presidential\",\n        -11.986433982849121\n      ],\n      [\n        \"▁composer\",\n        -11.986544609069824\n      ],\n      [\n        \"Stu\",\n        -11.986560821533203\n      ],\n      [\n        \"▁Frankfurt\",\n        -11.986584663391113\n      ],\n      [\n        \"prä\",\n        -11.986639976501465\n      ],\n      [\n        \"▁Ideal\",\n        -11.986644744873047\n      ],\n      [\n        \"▁linear\",\n        -11.986857414245605\n      ],\n      [\n        \"▁bloom\",\n        -11.986879348754883\n      ],\n      [\n        \"▁grades\",\n        -11.986881256103516\n      ],\n      [\n        \"mettant\",\n        -11.98692512512207\n      ],\n      [\n        \"▁finishes\",\n        -11.986952781677246\n      ],\n      [\n        \"holz\",\n        -11.987086296081543\n      ],\n      [\n        \"▁dirty\",\n        -11.987317085266113\n      ],\n      [\n        \"▁Roh\",\n        -11.987386703491211\n      ],\n      [\n        \"▁Praxis\",\n        -11.987408638000488\n      ],\n      [\n        \"tempo\",\n        -11.987433433532715\n      ],\n      [\n        \"▁attempted\",\n        -11.987433433532715\n      ],\n      [\n        \"▁primar\",\n        -11.987434387207031\n      ],\n      [\n        \"▁pomp\",\n        -11.987528800964355\n      ],\n      [\n        \"▁tolle\",\n        -11.987614631652832\n      ],\n      [\n        \"▁adres\",\n        -11.988011360168457\n      ],\n      [\n        \"▁Between\",\n        -11.988066673278809\n      ],\n      [\n        \"▁ruin\",\n        -11.988432884216309\n      ],\n      [\n        \"▁matériel\",\n        -11.988561630249023\n      ],\n      [\n        \"MER\",\n        -11.988913536071777\n      ],\n      [\n        \"Nevertheless\",\n        -11.989055633544922\n      ],\n      [\n        \"▁corruption\",\n        -11.989119529724121\n      ],\n      [\n        \"spire\",\n        -11.989180564880371\n      ],\n      [\n        \"▁mou\",\n        -11.989208221435547\n      ],\n      [\n        \"ROM\",\n        -11.989278793334961\n      ],\n      [\n        \"▁underground\",\n        -11.98935604095459\n      ],\n      [\n        \"▁relativ\",\n        -11.989389419555664\n      ],\n      [\n        \"waited\",\n        -11.989462852478027\n      ],\n      [\n        \"▁speeds\",\n        -11.989468574523926\n      ],\n      [\n        \"▁adjusted\",\n        -11.989486694335938\n      ],\n      [\n        \"▁Flat\",\n        -11.989514350891113\n      ],\n      [\n        \"UND\",\n        -11.98965835571289\n      ],\n      [\n        \"▁individuelle\",\n        -11.989744186401367\n      ],\n      [\n        \"▁anybody\",\n        -11.98978042602539\n      ],\n      [\n        \"EO\",\n        -11.989790916442871\n      ],\n      [\n        \"->\",\n        -11.989791870117188\n      ],\n      [\n        \"▁Spend\",\n        -11.989876747131348\n      ],\n      [\n        \"aktion\",\n        -11.990011215209961\n      ],\n      [\n        \"édit\",\n        -11.99006462097168\n      ],\n      [\n        \"▁quest\",\n        -11.990078926086426\n      ],\n      [\n        \"rind\",\n        -11.990541458129883\n      ],\n      [\n        \"▁mediu\",\n        -11.99057388305664\n      ],\n      [\n        \"▁barriers\",\n        -11.99062442779541\n      ],\n      [\n        \"▁répondre\",\n        -11.990633010864258\n      ],\n      [\n        \"▁novembre\",\n        -11.990708351135254\n      ],\n      [\n        \"▁champ\",\n        -11.990736961364746\n      ],\n      [\n        \"saw\",\n        -11.990757942199707\n      ],\n      [\n        \"▁fed\",\n        -11.990804672241211\n      ],\n      [\n        \"▁favorites\",\n        -11.990939140319824\n      ],\n      [\n        \"▁shield\",\n        -11.991055488586426\n      ],\n      [\n        \"▁Wide\",\n        -11.991146087646484\n      ],\n      [\n        \"▁problema\",\n        -11.991445541381836\n      ],\n      [\n        \"▁Asta\",\n        -11.991525650024414\n      ],\n      [\n        \"▁refreshing\",\n        -11.99168872833252\n      ],\n      [\n        \"hey\",\n        -11.991692543029785\n      ],\n      [\n        \"obtaining\",\n        -11.991788864135742\n      ],\n      [\n        \"▁parler\",\n        -11.992072105407715\n      ],\n      [\n        \"▁Cele\",\n        -11.992134094238281\n      ],\n      [\n        \"frage\",\n        -11.992136001586914\n      ],\n      [\n        \"écran\",\n        -11.992324829101562\n      ],\n      [\n        \"▁cleared\",\n        -11.992448806762695\n      ],\n      [\n        \"zehn\",\n        -11.992594718933105\n      ],\n      [\n        \"parmi\",\n        -11.992647171020508\n      ],\n      [\n        \"änder\",\n        -11.992691993713379\n      ],\n      [\n        \"▁Defense\",\n        -11.992693901062012\n      ],\n      [\n        \"tatea\",\n        -11.992696762084961\n      ],\n      [\n        \"▁reasonably\",\n        -11.992939949035645\n      ],\n      [\n        \"▁Idee\",\n        -11.992985725402832\n      ],\n      [\n        \"nehm\",\n        -11.993000030517578\n      ],\n      [\n        \"technologie\",\n        -11.993020057678223\n      ],\n      [\n        \"atura\",\n        -11.993048667907715\n      ],\n      [\n        \"▁slope\",\n        -11.993332862854004\n      ],\n      [\n        \"Hence\",\n        -11.993351936340332\n      ],\n      [\n        \"▁40%\",\n        -11.993391990661621\n      ],\n      [\n        \"▁jewe\",\n        -11.993448257446289\n      ],\n      [\n        \"▁queries\",\n        -11.993470191955566\n      ],\n      [\n        \"▁$8\",\n        -11.994096755981445\n      ],\n      [\n        \"▁Parker\",\n        -11.994107246398926\n      ],\n      [\n        \"▁publique\",\n        -11.994488716125488\n      ],\n      [\n        \"quant\",\n        -11.994529724121094\n      ],\n      [\n        \"issue\",\n        -11.994690895080566\n      ],\n      [\n        \"▁Cleveland\",\n        -11.994847297668457\n      ],\n      [\n        \"4,000\",\n        -11.995071411132812\n      ],\n      [\n        \"IDE\",\n        -11.995145797729492\n      ],\n      [\n        \"▁Barbara\",\n        -11.995233535766602\n      ],\n      [\n        \"udge\",\n        -11.995477676391602\n      ],\n      [\n        \"corn\",\n        -11.99554443359375\n      ],\n      [\n        \"veți\",\n        -11.995588302612305\n      ],\n      [\n        \"▁proteins\",\n        -11.995707511901855\n      ],\n      [\n        \"▁trăi\",\n        -11.995793342590332\n      ],\n      [\n        \"▁mijloc\",\n        -11.995842933654785\n      ],\n      [\n        \"logie\",\n        -11.995884895324707\n      ],\n      [\n        \"▁Walter\",\n        -11.995884895324707\n      ],\n      [\n        \"heißt\",\n        -11.99593448638916\n      ],\n      [\n        \"search\",\n        -11.995946884155273\n      ],\n      [\n        \"▁hochwertige\",\n        -11.996010780334473\n      ],\n      [\n        \"▁încerc\",\n        -11.996014595031738\n      ],\n      [\n        \"▁administrator\",\n        -11.99608039855957\n      ],\n      [\n        \"tension\",\n        -11.996133804321289\n      ],\n      [\n        \"▁homemade\",\n        -11.996438026428223\n      ],\n      [\n        \"▁$20\",\n        -11.99651050567627\n      ],\n      [\n        \"▁leben\",\n        -11.996662139892578\n      ],\n      [\n        \"netz\",\n        -11.996665954589844\n      ],\n      [\n        \"▁intensity\",\n        -11.996882438659668\n      ],\n      [\n        \"▁clever\",\n        -11.996891975402832\n      ],\n      [\n        \"▁installer\",\n        -11.996999740600586\n      ],\n      [\n        \"▁Wand\",\n        -11.997087478637695\n      ],\n      [\n        \"meister\",\n        -11.997130393981934\n      ],\n      [\n        \"ziel\",\n        -11.99744701385498\n      ],\n      [\n        \"▁architect\",\n        -11.99748706817627\n      ],\n      [\n        \"▁crede\",\n        -11.997512817382812\n      ],\n      [\n        \"▁Sleep\",\n        -11.997675895690918\n      ],\n      [\n        \"▁demonstr\",\n        -11.997745513916016\n      ],\n      [\n        \"cake\",\n        -11.997781753540039\n      ],\n      [\n        \"▁Cheap\",\n        -11.997783660888672\n      ],\n      [\n        \"pool\",\n        -11.9979829788208\n      ],\n      [\n        \"▁gadget\",\n        -11.998004913330078\n      ],\n      [\n        \"▁Anbieter\",\n        -11.998005867004395\n      ],\n      [\n        \"▁Jonathan\",\n        -11.998170852661133\n      ],\n      [\n        \"ül\",\n        -11.998492240905762\n      ],\n      [\n        \"▁Harvard\",\n        -11.998503684997559\n      ],\n      [\n        \"▁1985\",\n        -11.998773574829102\n      ],\n      [\n        \"HP\",\n        -11.998839378356934\n      ],\n      [\n        \"▁afara\",\n        -11.99893569946289\n      ],\n      [\n        \"▁halten\",\n        -11.999008178710938\n      ],\n      [\n        \"▁Technik\",\n        -11.999042510986328\n      ],\n      [\n        \"▁dressed\",\n        -11.999149322509766\n      ],\n      [\n        \"weis\",\n        -11.999165534973145\n      ],\n      [\n        \"▁donated\",\n        -11.9993314743042\n      ],\n      [\n        \"also\",\n        -11.99938678741455\n      ],\n      [\n        \"▁EN\",\n        -11.999405860900879\n      ],\n      [\n        \"▁imprim\",\n        -11.99942398071289\n      ],\n      [\n        \"▁onions\",\n        -11.999458312988281\n      ],\n      [\n        \"Par\",\n        -11.99950122833252\n      ],\n      [\n        \"▁donate\",\n        -11.99958324432373\n      ],\n      [\n        \"▁mice\",\n        -11.999610900878906\n      ],\n      [\n        \"referring\",\n        -11.999897956848145\n      ],\n      [\n        \"▁restored\",\n        -12.00003433227539\n      ],\n      [\n        \"▁amateur\",\n        -12.0000581741333\n      ],\n      [\n        \"▁Switch\",\n        -12.000075340270996\n      ],\n      [\n        \"appel\",\n        -12.00013542175293\n      ],\n      [\n        \"▁idéal\",\n        -12.0001859664917\n      ],\n      [\n        \"▁wheat\",\n        -12.000199317932129\n      ],\n      [\n        \"▁lime\",\n        -12.000240325927734\n      ],\n      [\n        \"REA\",\n        -12.00027084350586\n      ],\n      [\n        \"riti\",\n        -12.000357627868652\n      ],\n      [\n        \"ţiile\",\n        -12.00058364868164\n      ],\n      [\n        \"▁machinery\",\n        -12.00064754486084\n      ],\n      [\n        \"UNE\",\n        -12.00089168548584\n      ],\n      [\n        \"▁Cont\",\n        -12.000971794128418\n      ],\n      [\n        \"▁attendees\",\n        -12.001014709472656\n      ],\n      [\n        \"▁aparat\",\n        -12.001080513000488\n      ],\n      [\n        \"freundlich\",\n        -12.00117301940918\n      ],\n      [\n        \"▁zilnic\",\n        -12.001175880432129\n      ],\n      [\n        \"▁spark\",\n        -12.001421928405762\n      ],\n      [\n        \"▁Gast\",\n        -12.001459121704102\n      ],\n      [\n        \"▁Issue\",\n        -12.00147533416748\n      ],\n      [\n        \"▁scam\",\n        -12.001566886901855\n      ],\n      [\n        \"▁bonds\",\n        -12.001618385314941\n      ],\n      [\n        \"owner\",\n        -12.001641273498535\n      ],\n      [\n        \"▁empfehlen\",\n        -12.001673698425293\n      ],\n      [\n        \"elia\",\n        -12.001749992370605\n      ],\n      [\n        \"cic\",\n        -12.001757621765137\n      ],\n      [\n        \"▁honored\",\n        -12.001800537109375\n      ],\n      [\n        \"▁castle\",\n        -12.001846313476562\n      ],\n      [\n        \"avand\",\n        -12.002058982849121\n      ],\n      [\n        \"rough\",\n        -12.002108573913574\n      ],\n      [\n        \"▁Address\",\n        -12.002116203308105\n      ],\n      [\n        \"angle\",\n        -12.00217342376709\n      ],\n      [\n        \"leton\",\n        -12.002259254455566\n      ],\n      [\n        \"▁locked\",\n        -12.002392768859863\n      ],\n      [\n        \"▁consolid\",\n        -12.00248908996582\n      ],\n      [\n        \"▁voucher\",\n        -12.003011703491211\n      ],\n      [\n        \"ației\",\n        -12.003201484680176\n      ],\n      [\n        \"wachsen\",\n        -12.003211975097656\n      ],\n      [\n        \"▁magazines\",\n        -12.003287315368652\n      ],\n      [\n        \"▁Schools\",\n        -12.003318786621094\n      ],\n      [\n        \"▁voices\",\n        -12.003362655639648\n      ],\n      [\n        \"▁Dry\",\n        -12.003479957580566\n      ],\n      [\n        \"▁tricks\",\n        -12.00349235534668\n      ],\n      [\n        \"schließlich\",\n        -12.003546714782715\n      ],\n      [\n        \"▁loyalty\",\n        -12.003687858581543\n      ],\n      [\n        \"risk\",\n        -12.003764152526855\n      ],\n      [\n        \"▁Vers\",\n        -12.003786087036133\n      ],\n      [\n        \"chester\",\n        -12.003802299499512\n      ],\n      [\n        \"▁decorated\",\n        -12.003830909729004\n      ],\n      [\n        \"▁copiilor\",\n        -12.003969192504883\n      ],\n      [\n        \"riz\",\n        -12.003994941711426\n      ],\n      [\n        \"03.\",\n        -12.004013061523438\n      ],\n      [\n        \"▁Hur\",\n        -12.004016876220703\n      ],\n      [\n        \"▁archive\",\n        -12.004021644592285\n      ],\n      [\n        \"▁Continue\",\n        -12.004042625427246\n      ],\n      [\n        \"▁Nähe\",\n        -12.004043579101562\n      ],\n      [\n        \"jit\",\n        -12.004090309143066\n      ],\n      [\n        \"gekommen\",\n        -12.004301071166992\n      ],\n      [\n        \"▁conjunction\",\n        -12.004349708557129\n      ],\n      [\n        \"combining\",\n        -12.004404067993164\n      ],\n      [\n        \"▁Unterstützung\",\n        -12.004517555236816\n      ],\n      [\n        \"oza\",\n        -12.004593849182129\n      ],\n      [\n        \"▁sketch\",\n        -12.004720687866211\n      ],\n      [\n        \"▁arată\",\n        -12.004731178283691\n      ],\n      [\n        \"▁Mining\",\n        -12.004765510559082\n      ],\n      [\n        \"uous\",\n        -12.004791259765625\n      ],\n      [\n        \"▁devis\",\n        -12.004834175109863\n      ],\n      [\n        \"Almost\",\n        -12.004862785339355\n      ],\n      [\n        \"Hu\",\n        -12.005037307739258\n      ],\n      [\n        \"▁Om\",\n        -12.005366325378418\n      ],\n      [\n        \"MF\",\n        -12.00544548034668\n      ],\n      [\n        \"liz\",\n        -12.005451202392578\n      ],\n      [\n        \"▁fails\",\n        -12.005456924438477\n      ],\n      [\n        \"▁comparable\",\n        -12.005459785461426\n      ],\n      [\n        \"▁vein\",\n        -12.005547523498535\n      ],\n      [\n        \"▁Vis\",\n        -12.00561809539795\n      ],\n      [\n        \"▁viagra\",\n        -12.005654335021973\n      ],\n      [\n        \"▁farming\",\n        -12.005678176879883\n      ],\n      [\n        \"▁Late\",\n        -12.005765914916992\n      ],\n      [\n        \"geschrieben\",\n        -12.006033897399902\n      ],\n      [\n        \"hrew\",\n        -12.006103515625\n      ],\n      [\n        \"▁melt\",\n        -12.006120681762695\n      ],\n      [\n        \"lager\",\n        -12.006168365478516\n      ],\n      [\n        \"halte\",\n        -12.006240844726562\n      ],\n      [\n        \"▁Hotels\",\n        -12.006266593933105\n      ],\n      [\n        \"▁facebook\",\n        -12.0064058303833\n      ],\n      [\n        \"▁défi\",\n        -12.006550788879395\n      ],\n      [\n        \"shore\",\n        -12.006802558898926\n      ],\n      [\n        \"▁membrane\",\n        -12.006866455078125\n      ],\n      [\n        \"▁sixth\",\n        -12.006903648376465\n      ],\n      [\n        \"api\",\n        -12.007003784179688\n      ],\n      [\n        \"▁Owner\",\n        -12.007222175598145\n      ],\n      [\n        \"▁(\\\"\",\n        -12.007234573364258\n      ],\n      [\n        \"▁$50\",\n        -12.007280349731445\n      ],\n      [\n        \"▁protective\",\n        -12.007420539855957\n      ],\n      [\n        \"/2\",\n        -12.007548332214355\n      ],\n      [\n        \"▁Girls\",\n        -12.007562637329102\n      ],\n      [\n        \"Gri\",\n        -12.00769329071045\n      ],\n      [\n        \"▁nouă\",\n        -12.007708549499512\n      ],\n      [\n        \"▁infections\",\n        -12.007813453674316\n      ],\n      [\n        \"rân\",\n        -12.007868766784668\n      ],\n      [\n        \"▁Geb\",\n        -12.0078763961792\n      ],\n      [\n        \"▁Conseil\",\n        -12.007905006408691\n      ],\n      [\n        \"▁imagini\",\n        -12.007909774780273\n      ],\n      [\n        \"▁promotions\",\n        -12.00794792175293\n      ],\n      [\n        \"▁enforce\",\n        -12.00795841217041\n      ],\n      [\n        \"▁applicant\",\n        -12.007965087890625\n      ],\n      [\n        \"▁Apart\",\n        -12.008087158203125\n      ],\n      [\n        \"▁progression\",\n        -12.008151054382324\n      ],\n      [\n        \"▁careers\",\n        -12.008511543273926\n      ],\n      [\n        \"▁litigation\",\n        -12.008533477783203\n      ],\n      [\n        \"▁Menge\",\n        -12.00866413116455\n      ],\n      [\n        \"▁Contract\",\n        -12.00871753692627\n      ],\n      [\n        \"▁Kel\",\n        -12.0087308883667\n      ],\n      [\n        \"▁réserve\",\n        -12.008769035339355\n      ],\n      [\n        \"▁Cold\",\n        -12.008870124816895\n      ],\n      [\n        \"▁larg\",\n        -12.009040832519531\n      ],\n      [\n        \"▁microwave\",\n        -12.009090423583984\n      ],\n      [\n        \"▁Whit\",\n        -12.009212493896484\n      ],\n      [\n        \"▁Technologies\",\n        -12.009381294250488\n      ],\n      [\n        \"OU\",\n        -12.00949478149414\n      ],\n      [\n        \"itudine\",\n        -12.00959587097168\n      ],\n      [\n        \"▁handles\",\n        -12.009895324707031\n      ],\n      [\n        \"▁proceedings\",\n        -12.009982109069824\n      ],\n      [\n        \"▁prizes\",\n        -12.010043144226074\n      ],\n      [\n        \"▁unterstützen\",\n        -12.010062217712402\n      ],\n      [\n        \"▁piele\",\n        -12.010090827941895\n      ],\n      [\n        \"▁profound\",\n        -12.010153770446777\n      ],\n      [\n        \"schließen\",\n        -12.0101957321167\n      ],\n      [\n        \"▁trafic\",\n        -12.01025104522705\n      ],\n      [\n        \"▁Nar\",\n        -12.010441780090332\n      ],\n      [\n        \"▁Gesamt\",\n        -12.0106201171875\n      ],\n      [\n        \"▁bugs\",\n        -12.010720252990723\n      ],\n      [\n        \"▁Amy\",\n        -12.010764122009277\n      ],\n      [\n        \"▁eastern\",\n        -12.010775566101074\n      ],\n      [\n        \"nice\",\n        -12.010784149169922\n      ],\n      [\n        \"▁Besuch\",\n        -12.010835647583008\n      ],\n      [\n        \"▁synth\",\n        -12.010892868041992\n      ],\n      [\n        \"▁clasa\",\n        -12.011194229125977\n      ],\n      [\n        \"Book\",\n        -12.01134204864502\n      ],\n      [\n        \"▁ribbon\",\n        -12.011415481567383\n      ],\n      [\n        \"▁neues\",\n        -12.011431694030762\n      ],\n      [\n        \"ZE\",\n        -12.011504173278809\n      ],\n      [\n        \"▁peers\",\n        -12.011613845825195\n      ],\n      [\n        \"leistung\",\n        -12.011730194091797\n      ],\n      [\n        \"▁internship\",\n        -12.011808395385742\n      ],\n      [\n        \"count\",\n        -12.011850357055664\n      ],\n      [\n        \"nam\",\n        -12.01193618774414\n      ],\n      [\n        \"▁12-\",\n        -12.012072563171387\n      ],\n      [\n        \"acked\",\n        -12.012146949768066\n      ],\n      [\n        \"gonna\",\n        -12.012146949768066\n      ],\n      [\n        \"▁Dinge\",\n        -12.01215648651123\n      ],\n      [\n        \"Time\",\n        -12.012299537658691\n      ],\n      [\n        \"▁twelve\",\n        -12.01242446899414\n      ],\n      [\n        \"eye\",\n        -12.012432098388672\n      ],\n      [\n        \"▁avantaj\",\n        -12.01253604888916\n      ],\n      [\n        \"▁Glas\",\n        -12.012731552124023\n      ],\n      [\n        \"aucune\",\n        -12.0127534866333\n      ],\n      [\n        \"▁boil\",\n        -12.012763977050781\n      ],\n      [\n        \"▁Gray\",\n        -12.012773513793945\n      ],\n      [\n        \"adapt\",\n        -12.01288890838623\n      ],\n      [\n        \"occ\",\n        -12.012895584106445\n      ],\n      [\n        \"▁prieten\",\n        -12.012897491455078\n      ],\n      [\n        \"▁trai\",\n        -12.01296615600586\n      ],\n      [\n        \"▁Scal\",\n        -12.013009071350098\n      ],\n      [\n        \"▁conscious\",\n        -12.013057708740234\n      ],\n      [\n        \"▁charter\",\n        -12.013093948364258\n      ],\n      [\n        \"KS\",\n        -12.013242721557617\n      ],\n      [\n        \"▁Barr\",\n        -12.013404846191406\n      ],\n      [\n        \"▁summit\",\n        -12.013411521911621\n      ],\n      [\n        \"▁inflammation\",\n        -12.013439178466797\n      ],\n      [\n        \"tungs\",\n        -12.013440132141113\n      ],\n      [\n        \"ovic\",\n        -12.013449668884277\n      ],\n      [\n        \"▁conduit\",\n        -12.013465881347656\n      ],\n      [\n        \"▁Alice\",\n        -12.013702392578125\n      ],\n      [\n        \"▁veterans\",\n        -12.013850212097168\n      ],\n      [\n        \"Während\",\n        -12.013944625854492\n      ],\n      [\n        \"▁maximal\",\n        -12.014013290405273\n      ],\n      [\n        \"▁Hawaii\",\n        -12.014037132263184\n      ],\n      [\n        \"▁Pine\",\n        -12.01432991027832\n      ],\n      [\n        \"acelasi\",\n        -12.014391899108887\n      ],\n      [\n        \"hyp\",\n        -12.014424324035645\n      ],\n      [\n        \"sensitivity\",\n        -12.01445198059082\n      ],\n      [\n        \"pour\",\n        -12.014481544494629\n      ],\n      [\n        \"ре\",\n        -12.014493942260742\n      ],\n      [\n        \"▁Kentucky\",\n        -12.015129089355469\n      ],\n      [\n        \"▁badge\",\n        -12.015276908874512\n      ],\n      [\n        \"affecting\",\n        -12.015310287475586\n      ],\n      [\n        \"▁chairman\",\n        -12.015311241149902\n      ],\n      [\n        \"▁München\",\n        -12.015467643737793\n      ],\n      [\n        \"▁Hersteller\",\n        -12.015469551086426\n      ],\n      [\n        \"▁urmat\",\n        -12.015615463256836\n      ],\n      [\n        \"tels\",\n        -12.015654563903809\n      ],\n      [\n        \"▁FM\",\n        -12.015701293945312\n      ],\n      [\n        \"▁Basis\",\n        -12.015732765197754\n      ],\n      [\n        \"▁erklärt\",\n        -12.015809059143066\n      ],\n      [\n        \"▁changer\",\n        -12.015859603881836\n      ],\n      [\n        \"tischen\",\n        -12.0159330368042\n      ],\n      [\n        \"▁brave\",\n        -12.015960693359375\n      ],\n      [\n        \"▁siguranta\",\n        -12.015986442565918\n      ],\n      [\n        \"▁partnerships\",\n        -12.015989303588867\n      ],\n      [\n        \"ților\",\n        -12.015999794006348\n      ],\n      [\n        \"▁breathe\",\n        -12.016141891479492\n      ],\n      [\n        \"rink\",\n        -12.016551971435547\n      ],\n      [\n        \"▁footage\",\n        -12.016654014587402\n      ],\n      [\n        \"▁transformed\",\n        -12.016658782958984\n      ],\n      [\n        \"▁prep\",\n        -12.016866683959961\n      ],\n      [\n        \"▁upset\",\n        -12.016901969909668\n      ],\n      [\n        \"▁Native\",\n        -12.017059326171875\n      ],\n      [\n        \"▁Prima\",\n        -12.017154693603516\n      ],\n      [\n        \"▁jersey\",\n        -12.017163276672363\n      ],\n      [\n        \"230\",\n        -12.017182350158691\n      ],\n      [\n        \"▁lucrurile\",\n        -12.017393112182617\n      ],\n      [\n        \"▁divine\",\n        -12.017502784729004\n      ],\n      [\n        \"▁Pit\",\n        -12.017593383789062\n      ],\n      [\n        \"RIS\",\n        -12.01765251159668\n      ],\n      [\n        \"▁Cultural\",\n        -12.017672538757324\n      ],\n      [\n        \"▁exotic\",\n        -12.017786979675293\n      ],\n      [\n        \"▁tastes\",\n        -12.017881393432617\n      ],\n      [\n        \"▁bargain\",\n        -12.017913818359375\n      ],\n      [\n        \"▁optimize\",\n        -12.017985343933105\n      ],\n      [\n        \"▁électrique\",\n        -12.018012046813965\n      ],\n      [\n        \"deuxième\",\n        -12.018030166625977\n      ],\n      [\n        \"▁Gary\",\n        -12.018085479736328\n      ],\n      [\n        \"▁projection\",\n        -12.018122673034668\n      ],\n      [\n        \"▁sliding\",\n        -12.018195152282715\n      ],\n      [\n        \"club\",\n        -12.018216133117676\n      ],\n      [\n        \"association\",\n        -12.01823902130127\n      ],\n      [\n        \"▁LG\",\n        -12.018259048461914\n      ],\n      [\n        \"▁capsule\",\n        -12.018291473388672\n      ],\n      [\n        \"▁politicians\",\n        -12.018397331237793\n      ],\n      [\n        \"▁thumb\",\n        -12.018423080444336\n      ],\n      [\n        \"▁globally\",\n        -12.018743515014648\n      ],\n      [\n        \"positioned\",\n        -12.018796920776367\n      ],\n      [\n        \"▁Hamilton\",\n        -12.018861770629883\n      ],\n      [\n        \"arme\",\n        -12.018881797790527\n      ],\n      [\n        \"▁efectuat\",\n        -12.018881797790527\n      ],\n      [\n        \"zip\",\n        -12.019111633300781\n      ],\n      [\n        \"▁welfare\",\n        -12.019201278686523\n      ],\n      [\n        \"Leistung\",\n        -12.019230842590332\n      ],\n      [\n        \"▁Bac\",\n        -12.019316673278809\n      ],\n      [\n        \"▁fizic\",\n        -12.019338607788086\n      ],\n      [\n        \"OK\",\n        -12.019454002380371\n      ],\n      [\n        \"▁limba\",\n        -12.019545555114746\n      ],\n      [\n        \"▁wardrobe\",\n        -12.019549369812012\n      ],\n      [\n        \"▁offline\",\n        -12.019627571105957\n      ],\n      [\n        \"▁fortune\",\n        -12.019665718078613\n      ],\n      [\n        \"▁dialog\",\n        -12.019681930541992\n      ],\n      [\n        \"▁dramatically\",\n        -12.01997184753418\n      ],\n      [\n        \"▁NYC\",\n        -12.020045280456543\n      ],\n      [\n        \"▁Rem\",\n        -12.02017593383789\n      ],\n      [\n        \"▁bronze\",\n        -12.020455360412598\n      ],\n      [\n        \"▁pulse\",\n        -12.02053451538086\n      ],\n      [\n        \"Fortunately\",\n        -12.020562171936035\n      ],\n      [\n        \"▁glue\",\n        -12.020596504211426\n      ],\n      [\n        \"▁Expo\",\n        -12.020720481872559\n      ],\n      [\n        \"▁profitable\",\n        -12.020776748657227\n      ],\n      [\n        \"▁distributor\",\n        -12.020845413208008\n      ],\n      [\n        \"abilité\",\n        -12.020869255065918\n      ],\n      [\n        \"▁lyrics\",\n        -12.020913124084473\n      ],\n      [\n        \"▁mesh\",\n        -12.02114486694336\n      ],\n      [\n        \"▁organizational\",\n        -12.021157264709473\n      ],\n      [\n        \"▁vanilla\",\n        -12.021249771118164\n      ],\n      [\n        \"▁foc\",\n        -12.021355628967285\n      ],\n      [\n        \"▁1984\",\n        -12.02147388458252\n      ],\n      [\n        \"▁créé\",\n        -12.02172565460205\n      ],\n      [\n        \"▁servi\",\n        -12.022027969360352\n      ],\n      [\n        \"▁underneath\",\n        -12.022095680236816\n      ],\n      [\n        \"▁surveys\",\n        -12.022143363952637\n      ],\n      [\n        \"▁genes\",\n        -12.022238731384277\n      ],\n      [\n        \"▁limite\",\n        -12.02224349975586\n      ],\n      [\n        \"oder\",\n        -12.022247314453125\n      ],\n      [\n        \"▁mandatory\",\n        -12.022269248962402\n      ],\n      [\n        \"▁hospitality\",\n        -12.022303581237793\n      ],\n      [\n        \"▁bikes\",\n        -12.022309303283691\n      ],\n      [\n        \"▁Quote\",\n        -12.022358894348145\n      ],\n      [\n        \"glu\",\n        -12.02241039276123\n      ],\n      [\n        \"▁activitatea\",\n        -12.022513389587402\n      ],\n      [\n        \"preventing\",\n        -12.022584915161133\n      ],\n      [\n        \"▁Kh\",\n        -12.02259635925293\n      ],\n      [\n        \"économie\",\n        -12.022616386413574\n      ],\n      [\n        \"▁visite\",\n        -12.022757530212402\n      ],\n      [\n        \"▁spectacle\",\n        -12.022778511047363\n      ],\n      [\n        \"▁tract\",\n        -12.022860527038574\n      ],\n      [\n        \"▁quant\",\n        -12.022862434387207\n      ],\n      [\n        \"▁evolu\",\n        -12.022866249084473\n      ],\n      [\n        \"▁invata\",\n        -12.023070335388184\n      ],\n      [\n        \"▁homo\",\n        -12.02311897277832\n      ],\n      [\n        \"▁Users\",\n        -12.02344799041748\n      ],\n      [\n        \"introducing\",\n        -12.023632049560547\n      ],\n      [\n        \"hibi\",\n        -12.023661613464355\n      ],\n      [\n        \"▁Instrument\",\n        -12.023805618286133\n      ],\n      [\n        \"▁ép\",\n        -12.023839950561523\n      ],\n      [\n        \"▁Raj\",\n        -12.023869514465332\n      ],\n      [\n        \"▁executives\",\n        -12.023881912231445\n      ],\n      [\n        \"atoire\",\n        -12.023885726928711\n      ],\n      [\n        \"▁erforderlich\",\n        -12.02397346496582\n      ],\n      [\n        \"male\",\n        -12.024211883544922\n      ],\n      [\n        \"umble\",\n        -12.024271011352539\n      ],\n      [\n        \"erson\",\n        -12.024277687072754\n      ],\n      [\n        \"▁Treatment\",\n        -12.024286270141602\n      ],\n      [\n        \"▁Representative\",\n        -12.024314880371094\n      ],\n      [\n        \"▁corners\",\n        -12.024409294128418\n      ],\n      [\n        \"▁Petit\",\n        -12.024599075317383\n      ],\n      [\n        \"8)\",\n        -12.02464771270752\n      ],\n      [\n        \"▁Walker\",\n        -12.024714469909668\n      ],\n      [\n        \"▁Stir\",\n        -12.02476692199707\n      ],\n      [\n        \"/19\",\n        -12.024767875671387\n      ],\n      [\n        \"▁Stelle\",\n        -12.024979591369629\n      ],\n      [\n        \"ără\",\n        -12.025009155273438\n      ],\n      [\n        \"osse\",\n        -12.025166511535645\n      ],\n      [\n        \"2000\",\n        -12.025189399719238\n      ],\n      [\n        \"▁McG\",\n        -12.025580406188965\n      ],\n      [\n        \"DV\",\n        -12.025773048400879\n      ],\n      [\n        \"▁Firm\",\n        -12.025862693786621\n      ],\n      [\n        \"▁packet\",\n        -12.025904655456543\n      ],\n      [\n        \"Toate\",\n        -12.02640438079834\n      ],\n      [\n        \"▁institutional\",\n        -12.026479721069336\n      ],\n      [\n        \"rug\",\n        -12.026663780212402\n      ],\n      [\n        \"DG\",\n        -12.026837348937988\n      ],\n      [\n        \"fine\",\n        -12.026837348937988\n      ],\n      [\n        \"bringen\",\n        -12.026856422424316\n      ],\n      [\n        \"▁Horse\",\n        -12.026921272277832\n      ],\n      [\n        \"▁premiere\",\n        -12.026937484741211\n      ],\n      [\n        \"▁Că\",\n        -12.027026176452637\n      ],\n      [\n        \"acheter\",\n        -12.02703857421875\n      ],\n      [\n        \"▁Afghanistan\",\n        -12.027053833007812\n      ],\n      [\n        \"▁Prop\",\n        -12.027085304260254\n      ],\n      [\n        \"ühr\",\n        -12.02715015411377\n      ],\n      [\n        \"▁braucht\",\n        -12.027398109436035\n      ],\n      [\n        \"▁sunny\",\n        -12.027424812316895\n      ],\n      [\n        \"▁Sach\",\n        -12.027461051940918\n      ],\n      [\n        \"▁volumes\",\n        -12.02753734588623\n      ],\n      [\n        \"tinut\",\n        -12.02759838104248\n      ],\n      [\n        \"▁Sho\",\n        -12.027722358703613\n      ],\n      [\n        \"▁winds\",\n        -12.027735710144043\n      ],\n      [\n        \"▁Mall\",\n        -12.027873992919922\n      ],\n      [\n        \"ledge\",\n        -12.027937889099121\n      ],\n      [\n        \"▁sciences\",\n        -12.027997016906738\n      ],\n      [\n        \"plication\",\n        -12.028024673461914\n      ],\n      [\n        \"VR\",\n        -12.028068542480469\n      ],\n      [\n        \"destin\",\n        -12.028234481811523\n      ],\n      [\n        \"▁früh\",\n        -12.02833366394043\n      ],\n      [\n        \"▁tongue\",\n        -12.028359413146973\n      ],\n      [\n        \"▁Jennifer\",\n        -12.028425216674805\n      ],\n      [\n        \"▁bracket\",\n        -12.028427124023438\n      ],\n      [\n        \"▁episodes\",\n        -12.02845287322998\n      ],\n      [\n        \"breite\",\n        -12.028461456298828\n      ],\n      [\n        \"▁stoc\",\n        -12.028635025024414\n      ],\n      [\n        \"ilia\",\n        -12.028728485107422\n      ],\n      [\n        \"▁Gulf\",\n        -12.02874755859375\n      ],\n      [\n        \"▁transparency\",\n        -12.028768539428711\n      ],\n      [\n        \"Industrie\",\n        -12.028853416442871\n      ],\n      [\n        \"▁viewers\",\n        -12.028916358947754\n      ],\n      [\n        \"AIN\",\n        -12.029129981994629\n      ],\n      [\n        \"▁Registration\",\n        -12.029149055480957\n      ],\n      [\n        \"/4\",\n        -12.029309272766113\n      ],\n      [\n        \"▁fera\",\n        -12.029337882995605\n      ],\n      [\n        \"▁06\",\n        -12.029351234436035\n      ],\n      [\n        \"▁einzu\",\n        -12.029391288757324\n      ],\n      [\n        \"enburg\",\n        -12.02944278717041\n      ],\n      [\n        \"▁eff\",\n        -12.029449462890625\n      ],\n      [\n        \"▁Stage\",\n        -12.029558181762695\n      ],\n      [\n        \"▁Cour\",\n        -12.029685020446777\n      ],\n      [\n        \"indu\",\n        -12.029836654663086\n      ],\n      [\n        \"▁Tools\",\n        -12.029909133911133\n      ],\n      [\n        \"IST\",\n        -12.029921531677246\n      ],\n      [\n        \"grund\",\n        -12.030105590820312\n      ],\n      [\n        \"seitig\",\n        -12.030153274536133\n      ],\n      [\n        \"pai\",\n        -12.030250549316406\n      ],\n      [\n        \"▁waist\",\n        -12.030350685119629\n      ],\n      [\n        \"▁Therapy\",\n        -12.03049373626709\n      ],\n      [\n        \"▁nomination\",\n        -12.030599594116211\n      ],\n      [\n        \"▁seama\",\n        -12.030790328979492\n      ],\n      [\n        \"▁analyse\",\n        -12.030975341796875\n      ],\n      [\n        \"▁emerge\",\n        -12.031044006347656\n      ],\n      [\n        \"▁adjustment\",\n        -12.031106948852539\n      ],\n      [\n        \"▁stroll\",\n        -12.031106948852539\n      ],\n      [\n        \"▁Beyond\",\n        -12.031174659729004\n      ],\n      [\n        \"▁legally\",\n        -12.03122615814209\n      ],\n      [\n        \"▁gauge\",\n        -12.03123664855957\n      ],\n      [\n        \"▁26,\",\n        -12.031360626220703\n      ],\n      [\n        \"Tex\",\n        -12.031390190124512\n      ],\n      [\n        \"economic\",\n        -12.031488418579102\n      ],\n      [\n        \"stoffe\",\n        -12.031532287597656\n      ],\n      [\n        \"Wir\",\n        -12.031559944152832\n      ],\n      [\n        \"ffen\",\n        -12.031601905822754\n      ],\n      [\n        \"▁acoperi\",\n        -12.031609535217285\n      ],\n      [\n        \"▁finale\",\n        -12.031792640686035\n      ],\n      [\n        \"▁theoretical\",\n        -12.031864166259766\n      ],\n      [\n        \"1.3\",\n        -12.031875610351562\n      ],\n      [\n        \"anim\",\n        -12.031888008117676\n      ],\n      [\n        \"▁separation\",\n        -12.031928062438965\n      ],\n      [\n        \"agence\",\n        -12.031937599182129\n      ],\n      [\n        \"▁réalisé\",\n        -12.032069206237793\n      ],\n      [\n        \"sprech\",\n        -12.03215503692627\n      ],\n      [\n        \"▁embedded\",\n        -12.032208442687988\n      ],\n      [\n        \"▁defence\",\n        -12.032242774963379\n      ],\n      [\n        \"éni\",\n        -12.032569885253906\n      ],\n      [\n        \"▁Norman\",\n        -12.032613754272461\n      ],\n      [\n        \"▁insgesamt\",\n        -12.032621383666992\n      ],\n      [\n        \"▁reminde\",\n        -12.032631874084473\n      ],\n      [\n        \"▁timeline\",\n        -12.032703399658203\n      ],\n      [\n        \"▁symbols\",\n        -12.032770156860352\n      ],\n      [\n        \"▁booth\",\n        -12.032783508300781\n      ],\n      [\n        \"▁Window\",\n        -12.032788276672363\n      ],\n      [\n        \"▁Titan\",\n        -12.032910346984863\n      ],\n      [\n        \"înt\",\n        -12.033021926879883\n      ],\n      [\n        \"▁langa\",\n        -12.033021926879883\n      ],\n      [\n        \"isant\",\n        -12.03303337097168\n      ],\n      [\n        \"hart\",\n        -12.033113479614258\n      ],\n      [\n        \"broader\",\n        -12.033266067504883\n      ],\n      [\n        \"▁stays\",\n        -12.033288955688477\n      ],\n      [\n        \"dur\",\n        -12.033488273620605\n      ],\n      [\n        \"▁Actually\",\n        -12.033514022827148\n      ],\n      [\n        \"works\",\n        -12.03351879119873\n      ],\n      [\n        \"▁réussi\",\n        -12.03357219696045\n      ],\n      [\n        \"▁performant\",\n        -12.033658981323242\n      ],\n      [\n        \"▁banana\",\n        -12.033788681030273\n      ],\n      [\n        \"▁baked\",\n        -12.033870697021484\n      ],\n      [\n        \"▁Parlament\",\n        -12.033931732177734\n      ],\n      [\n        \"▁Legend\",\n        -12.033967018127441\n      ],\n      [\n        \"toata\",\n        -12.034172058105469\n      ],\n      [\n        \"platte\",\n        -12.03419017791748\n      ],\n      [\n        \"▁Mou\",\n        -12.034192085266113\n      ],\n      [\n        \"HL\",\n        -12.034235000610352\n      ],\n      [\n        \"▁(8\",\n        -12.034290313720703\n      ],\n      [\n        \"▁accepting\",\n        -12.034313201904297\n      ],\n      [\n        \"▁Senator\",\n        -12.034340858459473\n      ],\n      [\n        \"▁consciousness\",\n        -12.034396171569824\n      ],\n      [\n        \"▁conducting\",\n        -12.0344820022583\n      ],\n      [\n        \"▁panic\",\n        -12.034833908081055\n      ],\n      [\n        \"▁FDA\",\n        -12.035112380981445\n      ],\n      [\n        \"▁(7\",\n        -12.035163879394531\n      ],\n      [\n        \"tool\",\n        -12.035300254821777\n      ],\n      [\n        \"▁Shipping\",\n        -12.03538703918457\n      ],\n      [\n        \"▁hop\",\n        -12.035545349121094\n      ],\n      [\n        \"▁conferences\",\n        -12.03564167022705\n      ],\n      [\n        \"▁pork\",\n        -12.035661697387695\n      ],\n      [\n        \"▁spam\",\n        -12.035730361938477\n      ],\n      [\n        \"▁interesant\",\n        -12.035815238952637\n      ],\n      [\n        \"▁Tagen\",\n        -12.03581714630127\n      ],\n      [\n        \"sig\",\n        -12.035886764526367\n      ],\n      [\n        \"étro\",\n        -12.036044120788574\n      ],\n      [\n        \"▁legendary\",\n        -12.036449432373047\n      ],\n      [\n        \"▁Alternative\",\n        -12.036643981933594\n      ],\n      [\n        \"iana\",\n        -12.036704063415527\n      ],\n      [\n        \"▁responsable\",\n        -12.036888122558594\n      ],\n      [\n        \"▁Mihai\",\n        -12.037237167358398\n      ],\n      [\n        \"▁decreased\",\n        -12.037345886230469\n      ],\n      [\n        \"▁organised\",\n        -12.037485122680664\n      ],\n      [\n        \"▁Lamp\",\n        -12.037589073181152\n      ],\n      [\n        \"litz\",\n        -12.037622451782227\n      ],\n      [\n        \"ohn\",\n        -12.037622451782227\n      ],\n      [\n        \"▁moteur\",\n        -12.0376615524292\n      ],\n      [\n        \"III\",\n        -12.03768539428711\n      ],\n      [\n        \"▁Montag\",\n        -12.037755012512207\n      ],\n      [\n        \"▁naturel\",\n        -12.037814140319824\n      ],\n      [\n        \"▁Hus\",\n        -12.037842750549316\n      ],\n      [\n        \"▁Schl\",\n        -12.037884712219238\n      ],\n      [\n        \"ains\",\n        -12.037968635559082\n      ],\n      [\n        \"▁dying\",\n        -12.0380859375\n      ],\n      [\n        \"▁HIV\",\n        -12.038115501403809\n      ],\n      [\n        \"],\",\n        -12.038164138793945\n      ],\n      [\n        \"alität\",\n        -12.03818416595459\n      ],\n      [\n        \"▁institute\",\n        -12.038249015808105\n      ],\n      [\n        \"mix\",\n        -12.038433074951172\n      ],\n      [\n        \"▁Regulation\",\n        -12.038453102111816\n      ],\n      [\n        \"▁pagina\",\n        -12.03857707977295\n      ],\n      [\n        \"▁Awesome\",\n        -12.03860092163086\n      ],\n      [\n        \"▁Official\",\n        -12.03860092163086\n      ],\n      [\n        \"▁Minute\",\n        -12.038601875305176\n      ],\n      [\n        \"▁dairy\",\n        -12.038787841796875\n      ],\n      [\n        \"▁carti\",\n        -12.038881301879883\n      ],\n      [\n        \"isk\",\n        -12.039091110229492\n      ],\n      [\n        \"▁thrilled\",\n        -12.039138793945312\n      ],\n      [\n        \"▁german\",\n        -12.039172172546387\n      ],\n      [\n        \"▁frustration\",\n        -12.039228439331055\n      ],\n      [\n        \"▁forums\",\n        -12.03927230834961\n      ],\n      [\n        \"command\",\n        -12.039361000061035\n      ],\n      [\n        \"▁router\",\n        -12.039399147033691\n      ],\n      [\n        \"▁Lösung\",\n        -12.039423942565918\n      ],\n      [\n        \"white\",\n        -12.039470672607422\n      ],\n      [\n        \"▁synthetic\",\n        -12.039487838745117\n      ],\n      [\n        \"▁retrouver\",\n        -12.039554595947266\n      ],\n      [\n        \"alle\",\n        -12.039621353149414\n      ],\n      [\n        \"daran\",\n        -12.039653778076172\n      ],\n      [\n        \"▁wahr\",\n        -12.039697647094727\n      ],\n      [\n        \"▁paths\",\n        -12.039875984191895\n      ],\n      [\n        \"▁unver\",\n        -12.039962768554688\n      ],\n      [\n        \"▁Environment\",\n        -12.0400972366333\n      ],\n      [\n        \"▁médecin\",\n        -12.040510177612305\n      ],\n      [\n        \"crypt\",\n        -12.040572166442871\n      ],\n      [\n        \"▁pursuit\",\n        -12.040595054626465\n      ],\n      [\n        \"flat\",\n        -12.040611267089844\n      ],\n      [\n        \"bron\",\n        -12.040698051452637\n      ],\n      [\n        \"▁Specialist\",\n        -12.040852546691895\n      ],\n      [\n        \"▁Vent\",\n        -12.041157722473145\n      ],\n      [\n        \"Gen\",\n        -12.04132080078125\n      ],\n      [\n        \"▁attraction\",\n        -12.04132080078125\n      ],\n      [\n        \"▁piese\",\n        -12.041372299194336\n      ],\n      [\n        \"CHE\",\n        -12.041665077209473\n      ],\n      [\n        \"fähig\",\n        -12.04172420501709\n      ],\n      [\n        \"▁28,\",\n        -12.041773796081543\n      ],\n      [\n        \"defender\",\n        -12.041810989379883\n      ],\n      [\n        \"▁stupid\",\n        -12.04181957244873\n      ],\n      [\n        \"enfin\",\n        -12.04185962677002\n      ],\n      [\n        \"▁composite\",\n        -12.04207706451416\n      ],\n      [\n        \"fragen\",\n        -12.042202949523926\n      ],\n      [\n        \"Part\",\n        -12.042232513427734\n      ],\n      [\n        \"may\",\n        -12.042238235473633\n      ],\n      [\n        \"▁Bucureşti\",\n        -12.042248725891113\n      ],\n      [\n        \"▁février\",\n        -12.042248725891113\n      ],\n      [\n        \"RED\",\n        -12.042417526245117\n      ],\n      [\n        \"▁makers\",\n        -12.042462348937988\n      ],\n      [\n        \"▁guns\",\n        -12.042594909667969\n      ],\n      [\n        \"▁pasta\",\n        -12.042706489562988\n      ],\n      [\n        \"STR\",\n        -12.04271125793457\n      ],\n      [\n        \"▁worthy\",\n        -12.042760848999023\n      ],\n      [\n        \"Poate\",\n        -12.042783737182617\n      ],\n      [\n        \"▁101\",\n        -12.04286003112793\n      ],\n      [\n        \"▁souhaitez\",\n        -12.04299545288086\n      ],\n      [\n        \"GN\",\n        -12.043449401855469\n      ],\n      [\n        \"drive\",\n        -12.043499946594238\n      ],\n      [\n        \"▁aveti\",\n        -12.043582916259766\n      ],\n      [\n        \"▁eventual\",\n        -12.043591499328613\n      ],\n      [\n        \"▁américain\",\n        -12.043642044067383\n      ],\n      [\n        \"▁Mine\",\n        -12.043678283691406\n      ],\n      [\n        \"▁sunset\",\n        -12.043729782104492\n      ],\n      [\n        \"▁Choice\",\n        -12.043844223022461\n      ],\n      [\n        \"▁offset\",\n        -12.043944358825684\n      ],\n      [\n        \"APP\",\n        -12.04410457611084\n      ],\n      [\n        \"▁suchen\",\n        -12.044130325317383\n      ],\n      [\n        \"▁aduc\",\n        -12.044228553771973\n      ],\n      [\n        \"▁Unternehmens\",\n        -12.044342041015625\n      ],\n      [\n        \"▁//\",\n        -12.044651985168457\n      ],\n      [\n        \"▁astept\",\n        -12.044678688049316\n      ],\n      [\n        \"▁Birthday\",\n        -12.045061111450195\n      ],\n      [\n        \"▁barn\",\n        -12.045083999633789\n      ],\n      [\n        \"apport\",\n        -12.045105934143066\n      ],\n      [\n        \"▁collar\",\n        -12.045212745666504\n      ],\n      [\n        \"▁gefunden\",\n        -12.045294761657715\n      ],\n      [\n        \"▁Hai\",\n        -12.045429229736328\n      ],\n      [\n        \"▁Soul\",\n        -12.045441627502441\n      ],\n      [\n        \"ismus\",\n        -12.045654296875\n      ],\n      [\n        \"letzt\",\n        -12.045754432678223\n      ],\n      [\n        \"▁maker\",\n        -12.045841217041016\n      ],\n      [\n        \"▁executed\",\n        -12.045857429504395\n      ],\n      [\n        \"▁Forschung\",\n        -12.045915603637695\n      ],\n      [\n        \"▁täglich\",\n        -12.045958518981934\n      ],\n      [\n        \"▁tailor\",\n        -12.045960426330566\n      ],\n      [\n        \"▁headquarters\",\n        -12.0460844039917\n      ],\n      [\n        \"▁physicians\",\n        -12.046112060546875\n      ],\n      [\n        \"▁Scout\",\n        -12.046126365661621\n      ],\n      [\n        \"folgen\",\n        -12.046175003051758\n      ],\n      [\n        \"▁cycling\",\n        -12.046184539794922\n      ],\n      [\n        \"mindestens\",\n        -12.04620361328125\n      ],\n      [\n        \"▁joli\",\n        -12.046216011047363\n      ],\n      [\n        \"▁classification\",\n        -12.046225547790527\n      ],\n      [\n        \"▁Führung\",\n        -12.046258926391602\n      ],\n      [\n        \"▁peau\",\n        -12.04629135131836\n      ],\n      [\n        \"INT\",\n        -12.046502113342285\n      ],\n      [\n        \"▁Garage\",\n        -12.046664237976074\n      ],\n      [\n        \"teile\",\n        -12.046714782714844\n      ],\n      [\n        \"util\",\n        -12.046716690063477\n      ],\n      [\n        \"▁petrec\",\n        -12.046751022338867\n      ],\n      [\n        \"▁Nevada\",\n        -12.046826362609863\n      ],\n      [\n        \"▁laisser\",\n        -12.04706859588623\n      ],\n      [\n        \"▁territoire\",\n        -12.047131538391113\n      ],\n      [\n        \"▁fichier\",\n        -12.047154426574707\n      ],\n      [\n        \"▁Formula\",\n        -12.047343254089355\n      ],\n      [\n        \"scopul\",\n        -12.047379493713379\n      ],\n      [\n        \"▁Tee\",\n        -12.047486305236816\n      ],\n      [\n        \"▁Monte\",\n        -12.047529220581055\n      ],\n      [\n        \"▁pumpkin\",\n        -12.04757022857666\n      ],\n      [\n        \"▁picnic\",\n        -12.047589302062988\n      ],\n      [\n        \"▁occupation\",\n        -12.047652244567871\n      ],\n      [\n        \"▁numérique\",\n        -12.047831535339355\n      ],\n      [\n        \"linie\",\n        -12.04786491394043\n      ],\n      [\n        \"▁masina\",\n        -12.048117637634277\n      ],\n      [\n        \"▁Prä\",\n        -12.048173904418945\n      ],\n      [\n        \"▁dezvoltare\",\n        -12.048177719116211\n      ],\n      [\n        \"▁vient\",\n        -12.048291206359863\n      ],\n      [\n        \"▁ranks\",\n        -12.048295021057129\n      ],\n      [\n        \"▁Bruce\",\n        -12.048420906066895\n      ],\n      [\n        \"▁seara\",\n        -12.048433303833008\n      ],\n      [\n        \"▁hungry\",\n        -12.048563003540039\n      ],\n      [\n        \"▁resolved\",\n        -12.048650741577148\n      ],\n      [\n        \"paired\",\n        -12.048735618591309\n      ],\n      [\n        \"▁Congratulations\",\n        -12.048881530761719\n      ],\n      [\n        \"▁religi\",\n        -12.048918724060059\n      ],\n      [\n        \"sätze\",\n        -12.04897689819336\n      ],\n      [\n        \"▁Eat\",\n        -12.049172401428223\n      ],\n      [\n        \"▁dense\",\n        -12.049442291259766\n      ],\n      [\n        \"▁slice\",\n        -12.049447059631348\n      ],\n      [\n        \"▁mulți\",\n        -12.049463272094727\n      ],\n      [\n        \"▁vorbe\",\n        -12.049517631530762\n      ],\n      [\n        \"▁terminate\",\n        -12.049779891967773\n      ],\n      [\n        \"worm\",\n        -12.049880981445312\n      ],\n      [\n        \"ignon\",\n        -12.0499267578125\n      ],\n      [\n        \"▁Howard\",\n        -12.049992561340332\n      ],\n      [\n        \"▁toddler\",\n        -12.050017356872559\n      ],\n      [\n        \"▁waters\",\n        -12.050033569335938\n      ],\n      [\n        \"▁graduates\",\n        -12.0501708984375\n      ],\n      [\n        \"▁fundraising\",\n        -12.050298690795898\n      ],\n      [\n        \"06.\",\n        -12.05031967163086\n      ],\n      [\n        \"▁scent\",\n        -12.050346374511719\n      ],\n      [\n        \"▁CPU\",\n        -12.050406455993652\n      ],\n      [\n        \"▁Kid\",\n        -12.05045223236084\n      ],\n      [\n        \"▁Years\",\n        -12.050460815429688\n      ],\n      [\n        \"▁Oktober\",\n        -12.05063533782959\n      ],\n      [\n        \"filled\",\n        -12.050726890563965\n      ],\n      [\n        \"▁Laser\",\n        -12.05079460144043\n      ],\n      [\n        \"▁tut\",\n        -12.051032066345215\n      ],\n      [\n        \"ively\",\n        -12.051101684570312\n      ],\n      [\n        \"▁WiFi\",\n        -12.051161766052246\n      ],\n      [\n        \"standen\",\n        -12.051176071166992\n      ],\n      [\n        \"▁publié\",\n        -12.051243782043457\n      ],\n      [\n        \"▁explaining\",\n        -12.051279067993164\n      ],\n      [\n        \"trieb\",\n        -12.051288604736328\n      ],\n      [\n        \"▁Rapid\",\n        -12.0513334274292\n      ],\n      [\n        \"▁unterstützt\",\n        -12.051352500915527\n      ],\n      [\n        \"▁Sonnen\",\n        -12.051401138305664\n      ],\n      [\n        \"▁lenses\",\n        -12.05141544342041\n      ],\n      [\n        \"▁pressing\",\n        -12.051477432250977\n      ],\n      [\n        \"▁respected\",\n        -12.051657676696777\n      ],\n      [\n        \"adapted\",\n        -12.051706314086914\n      ],\n      [\n        \"Don\",\n        -12.051726341247559\n      ],\n      [\n        \"▁mun\",\n        -12.051733016967773\n      ],\n      [\n        \"MAR\",\n        -12.05180835723877\n      ],\n      [\n        \"▁seam\",\n        -12.051852226257324\n      ],\n      [\n        \"chev\",\n        -12.052140235900879\n      ],\n      [\n        \"▁Sozial\",\n        -12.052424430847168\n      ],\n      [\n        \"▁Arabia\",\n        -12.052485466003418\n      ],\n      [\n        \"▁equation\",\n        -12.05257511138916\n      ],\n      [\n        \"▁elevi\",\n        -12.052780151367188\n      ],\n      [\n        \"▁piata\",\n        -12.052868843078613\n      ],\n      [\n        \"JA\",\n        -12.052873611450195\n      ],\n      [\n        \"▁wholesale\",\n        -12.052887916564941\n      ],\n      [\n        \"▁faithful\",\n        -12.05296516418457\n      ],\n      [\n        \"legal\",\n        -12.053092002868652\n      ],\n      [\n        \"▁Brexit\",\n        -12.053095817565918\n      ],\n      [\n        \"vention\",\n        -12.053120613098145\n      ],\n      [\n        \"▁adhere\",\n        -12.053221702575684\n      ],\n      [\n        \"▁Associate\",\n        -12.053257942199707\n      ],\n      [\n        \"▁decorations\",\n        -12.053272247314453\n      ],\n      [\n        \"▁crois\",\n        -12.053359985351562\n      ],\n      [\n        \"buck\",\n        -12.053370475769043\n      ],\n      [\n        \"▁smartphones\",\n        -12.053421020507812\n      ],\n      [\n        \"Regardless\",\n        -12.053427696228027\n      ],\n      [\n        \"center\",\n        -12.053434371948242\n      ],\n      [\n        \"eiß\",\n        -12.053481101989746\n      ],\n      [\n        \"▁emotion\",\n        -12.053584098815918\n      ],\n      [\n        \"▁Gespräch\",\n        -12.053797721862793\n      ],\n      [\n        \"▁Avi\",\n        -12.053963661193848\n      ],\n      [\n        \"▁loft\",\n        -12.054059982299805\n      ],\n      [\n        \"▁Wissen\",\n        -12.054391860961914\n      ],\n      [\n        \"▁orchestra\",\n        -12.05439567565918\n      ],\n      [\n        \"▁gehören\",\n        -12.054421424865723\n      ],\n      [\n        \"▁Reich\",\n        -12.054532051086426\n      ],\n      [\n        \"▁abandoned\",\n        -12.054548263549805\n      ],\n      [\n        \"▁Lanka\",\n        -12.054586410522461\n      ],\n      [\n        \"pala\",\n        -12.054832458496094\n      ],\n      [\n        \"▁Stell\",\n        -12.054838180541992\n      ],\n      [\n        \"logged\",\n        -12.054924964904785\n      ],\n      [\n        \"terie\",\n        -12.054935455322266\n      ],\n      [\n        \"▁educa\",\n        -12.054954528808594\n      ],\n      [\n        \"1).\",\n        -12.055097579956055\n      ],\n      [\n        \"▁disponibil\",\n        -12.055119514465332\n      ],\n      [\n        \"IND\",\n        -12.055197715759277\n      ],\n      [\n        \"▁Pont\",\n        -12.055288314819336\n      ],\n      [\n        \"▁téléphone\",\n        -12.055398941040039\n      ],\n      [\n        \"▁rope\",\n        -12.055595397949219\n      ],\n      [\n        \"ève\",\n        -12.055622100830078\n      ],\n      [\n        \"▁Trainer\",\n        -12.056062698364258\n      ],\n      [\n        \"▁présence\",\n        -12.0560941696167\n      ],\n      [\n        \"▁Oscar\",\n        -12.056121826171875\n      ],\n      [\n        \"▁VR\",\n        -12.056342124938965\n      ],\n      [\n        \"▁Besucher\",\n        -12.056357383728027\n      ],\n      [\n        \"▁disponibles\",\n        -12.056447982788086\n      ],\n      [\n        \"▁gelten\",\n        -12.056604385375977\n      ],\n      [\n        \"▁ports\",\n        -12.056645393371582\n      ],\n      [\n        \"Invest\",\n        -12.056693077087402\n      ],\n      [\n        \"ésormais\",\n        -12.056795120239258\n      ],\n      [\n        \"schauen\",\n        -12.056880950927734\n      ],\n      [\n        \"▁Command\",\n        -12.056958198547363\n      ],\n      [\n        \"▁alternate\",\n        -12.05709171295166\n      ],\n      [\n        \"citation\",\n        -12.05713939666748\n      ],\n      [\n        \"évolution\",\n        -12.05714225769043\n      ],\n      [\n        \"▁Maine\",\n        -12.057145118713379\n      ],\n      [\n        \"pflege\",\n        -12.057174682617188\n      ],\n      [\n        \"2011\",\n        -12.057343482971191\n      ],\n      [\n        \"▁Ground\",\n        -12.057364463806152\n      ],\n      [\n        \"▁ghost\",\n        -12.057418823242188\n      ],\n      [\n        \"lebt\",\n        -12.057530403137207\n      ],\n      [\n        \"▁scenarios\",\n        -12.057595252990723\n      ],\n      [\n        \"▁mall\",\n        -12.057634353637695\n      ],\n      [\n        \"▁Kings\",\n        -12.057653427124023\n      ],\n      [\n        \"▁15%\",\n        -12.057848930358887\n      ],\n      [\n        \"▁Paint\",\n        -12.057848930358887\n      ],\n      [\n        \"FD\",\n        -12.057849884033203\n      ],\n      [\n        \"ugg\",\n        -12.058011054992676\n      ],\n      [\n        \"▁Leon\",\n        -12.058023452758789\n      ],\n      [\n        \"▁grows\",\n        -12.058135032653809\n      ],\n      [\n        \"▁pharmacy\",\n        -12.058384895324707\n      ],\n      [\n        \"▁situat\",\n        -12.0584135055542\n      ],\n      [\n        \"20,000\",\n        -12.05855941772461\n      ],\n      [\n        \"▁10,000\",\n        -12.058760643005371\n      ],\n      [\n        \"▁membre\",\n        -12.058771133422852\n      ],\n      [\n        \"▁facilement\",\n        -12.058806419372559\n      ],\n      [\n        \"▁Analytics\",\n        -12.058915138244629\n      ],\n      [\n        \"▁Marvel\",\n        -12.058930397033691\n      ],\n      [\n        \"▁survived\",\n        -12.059097290039062\n      ],\n      [\n        \"▁conviction\",\n        -12.059124946594238\n      ],\n      [\n        \"▁Produktion\",\n        -12.059260368347168\n      ],\n      [\n        \"▁professionally\",\n        -12.059293746948242\n      ],\n      [\n        \"▁contributor\",\n        -12.059486389160156\n      ],\n      [\n        \"▁Kurs\",\n        -12.059503555297852\n      ],\n      [\n        \"▁humor\",\n        -12.059549331665039\n      ],\n      [\n        \"▁cinci\",\n        -12.059609413146973\n      ],\n      [\n        \"▁Different\",\n        -12.059670448303223\n      ],\n      [\n        \"▁Verarbeitung\",\n        -12.059800148010254\n      ],\n      [\n        \"▁inexpensive\",\n        -12.059800148010254\n      ],\n      [\n        \"▁sortie\",\n        -12.05980110168457\n      ],\n      [\n        \"▁thankful\",\n        -12.059951782226562\n      ],\n      [\n        \"▁vacances\",\n        -12.059978485107422\n      ],\n      [\n        \"▁vergangen\",\n        -12.059979438781738\n      ],\n      [\n        \"▁wings\",\n        -12.05998420715332\n      ],\n      [\n        \"▁nano\",\n        -12.06003475189209\n      ],\n      [\n        \"▁touches\",\n        -12.060088157653809\n      ],\n      [\n        \"▁Notice\",\n        -12.060348510742188\n      ],\n      [\n        \"▁reprezinta\",\n        -12.060466766357422\n      ],\n      [\n        \"▁rewarding\",\n        -12.060555458068848\n      ],\n      [\n        \"▁Kurz\",\n        -12.060580253601074\n      ],\n      [\n        \"▁mega\",\n        -12.060611724853516\n      ],\n      [\n        \"▁secrets\",\n        -12.060646057128906\n      ],\n      [\n        \"▁vorher\",\n        -12.060667037963867\n      ],\n      [\n        \"▁crescut\",\n        -12.06074333190918\n      ],\n      [\n        \"▁coordination\",\n        -12.060754776000977\n      ],\n      [\n        \"▁dissertation\",\n        -12.060863494873047\n      ],\n      [\n        \"▁header\",\n        -12.060873985290527\n      ],\n      [\n        \"existent\",\n        -12.061070442199707\n      ],\n      [\n        \"thal\",\n        -12.061185836791992\n      ],\n      [\n        \"▁translate\",\n        -12.061214447021484\n      ],\n      [\n        \"vertrag\",\n        -12.06124210357666\n      ],\n      [\n        \"GU\",\n        -12.06126594543457\n      ],\n      [\n        \"▁Arthur\",\n        -12.061315536499023\n      ],\n      [\n        \"wahl\",\n        -12.061534881591797\n      ],\n      [\n        \"▁octobre\",\n        -12.061573028564453\n      ],\n      [\n        \"▁bother\",\n        -12.06157398223877\n      ],\n      [\n        \"▁pencil\",\n        -12.061580657958984\n      ],\n      [\n        \"▁Dyna\",\n        -12.061604499816895\n      ],\n      [\n        \"▁complimentary\",\n        -12.061651229858398\n      ],\n      [\n        \"écoute\",\n        -12.061676979064941\n      ],\n      [\n        \"PB\",\n        -12.061722755432129\n      ],\n      [\n        \"▁independently\",\n        -12.061759948730469\n      ],\n      [\n        \"▁targeting\",\n        -12.061840057373047\n      ],\n      [\n        \"fought\",\n        -12.061944961547852\n      ],\n      [\n        \"mental\",\n        -12.062112808227539\n      ],\n      [\n        \"▁Veranstaltung\",\n        -12.062300682067871\n      ],\n      [\n        \"▁tatsächlich\",\n        -12.062314987182617\n      ],\n      [\n        \"▁Features\",\n        -12.0625\n      ],\n      [\n        \"▁1920\",\n        -12.062554359436035\n      ],\n      [\n        \"▁Domain\",\n        -12.062885284423828\n      ],\n      [\n        \"▁rally\",\n        -12.062901496887207\n      ],\n      [\n        \"▁iunie\",\n        -12.063036918640137\n      ],\n      [\n        \"▁fabrics\",\n        -12.063070297241211\n      ],\n      [\n        \"▁mint\",\n        -12.063331604003906\n      ],\n      [\n        \"▁antioxidant\",\n        -12.063347816467285\n      ],\n      [\n        \"hut\",\n        -12.063432693481445\n      ],\n      [\n        \"EPA\",\n        -12.063496589660645\n      ],\n      [\n        \"▁rigid\",\n        -12.063498497009277\n      ],\n      [\n        \"▁evit\",\n        -12.063549995422363\n      ],\n      [\n        \"▁personnage\",\n        -12.063977241516113\n      ],\n      [\n        \"▁garanti\",\n        -12.0640287399292\n      ],\n      [\n        \"▁Hä\",\n        -12.064042091369629\n      ],\n      [\n        \"▁Days\",\n        -12.064048767089844\n      ],\n      [\n        \"boarding\",\n        -12.064050674438477\n      ],\n      [\n        \"jemand\",\n        -12.064166069030762\n      ],\n      [\n        \"▁Pos\",\n        -12.064262390136719\n      ],\n      [\n        \"▁wool\",\n        -12.064288139343262\n      ],\n      [\n        \"▁boom\",\n        -12.064349174499512\n      ],\n      [\n        \"▁wichtige\",\n        -12.06447982788086\n      ],\n      [\n        \"▁emerged\",\n        -12.064517974853516\n      ],\n      [\n        \"▁smoothly\",\n        -12.064802169799805\n      ],\n      [\n        \"▁Interview\",\n        -12.064942359924316\n      ],\n      [\n        \"gemäß\",\n        -12.06505012512207\n      ],\n      [\n        \"▁suivi\",\n        -12.065064430236816\n      ],\n      [\n        \"▁missions\",\n        -12.065129280090332\n      ],\n      [\n        \"▁Kreis\",\n        -12.065328598022461\n      ],\n      [\n        \"century\",\n        -12.065348625183105\n      ],\n      [\n        \"▁tuned\",\n        -12.065370559692383\n      ],\n      [\n        \"isieren\",\n        -12.065407752990723\n      ],\n      [\n        \"▁Branch\",\n        -12.065427780151367\n      ],\n      [\n        \"▁Russell\",\n        -12.065483093261719\n      ],\n      [\n        \"▁**\",\n        -12.065519332885742\n      ],\n      [\n        \"▁Lehr\",\n        -12.065617561340332\n      ],\n      [\n        \"▁perspectives\",\n        -12.065690040588379\n      ],\n      [\n        \"▁handed\",\n        -12.06570816040039\n      ],\n      [\n        \"▁apporte\",\n        -12.065743446350098\n      ],\n      [\n        \"unta\",\n        -12.065959930419922\n      ],\n      [\n        \"▁contemplat\",\n        -12.066255569458008\n      ],\n      [\n        \"riel\",\n        -12.06633472442627\n      ],\n      [\n        \"▁freely\",\n        -12.066341400146484\n      ],\n      [\n        \"▁loyal\",\n        -12.066451072692871\n      ],\n      [\n        \"▁evolved\",\n        -12.066518783569336\n      ],\n      [\n        \"▁Cafe\",\n        -12.066548347473145\n      ],\n      [\n        \"▁assignments\",\n        -12.066598892211914\n      ],\n      [\n        \"▁Cream\",\n        -12.066718101501465\n      ],\n      [\n        \"▁Build\",\n        -12.066731452941895\n      ],\n      [\n        \"▁exams\",\n        -12.066746711730957\n      ],\n      [\n        \"▁graduation\",\n        -12.066765785217285\n      ],\n      [\n        \"▁Dining\",\n        -12.066773414611816\n      ],\n      [\n        \"inne\",\n        -12.06684398651123\n      ],\n      [\n        \"▁propriu\",\n        -12.067055702209473\n      ],\n      [\n        \"▁accordingly\",\n        -12.067241668701172\n      ],\n      [\n        \"▁seniors\",\n        -12.067484855651855\n      ],\n      [\n        \"▁sisters\",\n        -12.067505836486816\n      ],\n      [\n        \"formerly\",\n        -12.067658424377441\n      ],\n      [\n        \"▁fleur\",\n        -12.067702293395996\n      ],\n      [\n        \"▁alten\",\n        -12.067802429199219\n      ],\n      [\n        \"▁Gefühl\",\n        -12.06797981262207\n      ],\n      [\n        \"▁freeze\",\n        -12.068222045898438\n      ],\n      [\n        \"▁structured\",\n        -12.068312644958496\n      ],\n      [\n        \"▁reserved\",\n        -12.068367004394531\n      ],\n      [\n        \"stellt\",\n        -12.068638801574707\n      ],\n      [\n        \"▁foto\",\n        -12.068668365478516\n      ],\n      [\n        \"linger\",\n        -12.06871223449707\n      ],\n      [\n        \"▁profiter\",\n        -12.068737030029297\n      ],\n      [\n        \"▁trup\",\n        -12.068862915039062\n      ],\n      [\n        \"▁Hunter\",\n        -12.068974494934082\n      ],\n      [\n        \"▁widespread\",\n        -12.069050788879395\n      ],\n      [\n        \"entretien\",\n        -12.069242477416992\n      ],\n      [\n        \"▁Truck\",\n        -12.06958293914795\n      ],\n      [\n        \"Can\",\n        -12.069656372070312\n      ],\n      [\n        \"péri\",\n        -12.06976318359375\n      ],\n      [\n        \"▁>>\",\n        -12.069926261901855\n      ],\n      [\n        \"▁trains\",\n        -12.070141792297363\n      ],\n      [\n        \"▁faca\",\n        -12.070149421691895\n      ],\n      [\n        \"▁Patienten\",\n        -12.070170402526855\n      ],\n      [\n        \"▁scor\",\n        -12.070361137390137\n      ],\n      [\n        \"▁perceived\",\n        -12.070384979248047\n      ],\n      [\n        \"setzung\",\n        -12.070393562316895\n      ],\n      [\n        \"▁Robin\",\n        -12.070558547973633\n      ],\n      [\n        \"▁geboren\",\n        -12.07060718536377\n      ],\n      [\n        \"lons\",\n        -12.070687294006348\n      ],\n      [\n        \"inţa\",\n        -12.070836067199707\n      ],\n      [\n        \"glob\",\n        -12.070887565612793\n      ],\n      [\n        \"subsequently\",\n        -12.07111930847168\n      ],\n      [\n        \"▁vet\",\n        -12.071170806884766\n      ],\n      [\n        \"▁Holland\",\n        -12.071328163146973\n      ],\n      [\n        \"▁Clinical\",\n        -12.071370124816895\n      ],\n      [\n        \"▁uncertainty\",\n        -12.071381568908691\n      ],\n      [\n        \"hohen\",\n        -12.071386337280273\n      ],\n      [\n        \"uza\",\n        -12.071431159973145\n      ],\n      [\n        \"▁kleiner\",\n        -12.071518898010254\n      ],\n      [\n        \"▁substances\",\n        -12.07155704498291\n      ],\n      [\n        \"ados\",\n        -12.071627616882324\n      ],\n      [\n        \"wheel\",\n        -12.07178020477295\n      ],\n      [\n        \"▁cone\",\n        -12.071990966796875\n      ],\n      [\n        \"▁castig\",\n        -12.072218894958496\n      ],\n      [\n        \"▁Conditions\",\n        -12.072242736816406\n      ],\n      [\n        \"minus\",\n        -12.072643280029297\n      ],\n      [\n        \"▁permits\",\n        -12.07265853881836\n      ],\n      [\n        \"fond\",\n        -12.072784423828125\n      ],\n      [\n        \"▁reactions\",\n        -12.07278823852539\n      ],\n      [\n        \"▁Mario\",\n        -12.072819709777832\n      ],\n      [\n        \"▁materiale\",\n        -12.07291030883789\n      ],\n      [\n        \"AH\",\n        -12.072924613952637\n      ],\n      [\n        \"▁juillet\",\n        -12.073172569274902\n      ],\n      [\n        \"▁juridic\",\n        -12.073182106018066\n      ],\n      [\n        \"▁dropping\",\n        -12.073200225830078\n      ],\n      [\n        \"expérience\",\n        -12.073225021362305\n      ],\n      [\n        \"▁depot\",\n        -12.073345184326172\n      ],\n      [\n        \"▁plea\",\n        -12.073490142822266\n      ],\n      [\n        \"dezvoltarea\",\n        -12.073512077331543\n      ],\n      [\n        \"▁Independent\",\n        -12.07363224029541\n      ],\n      [\n        \"▁Homes\",\n        -12.073674201965332\n      ],\n      [\n        \"▁crust\",\n        -12.073808670043945\n      ],\n      [\n        \"▁pillow\",\n        -12.073899269104004\n      ],\n      [\n        \"kreis\",\n        -12.073920249938965\n      ],\n      [\n        \"▁boiler\",\n        -12.073928833007812\n      ],\n      [\n        \"latin\",\n        -12.073978424072266\n      ],\n      [\n        \"▁stet\",\n        -12.074131965637207\n      ],\n      [\n        \"GH\",\n        -12.074143409729004\n      ],\n      [\n        \"▁absent\",\n        -12.074334144592285\n      ],\n      [\n        \"▁Directors\",\n        -12.074501037597656\n      ],\n      [\n        \"zwischen\",\n        -12.07462215423584\n      ],\n      [\n        \"▁comprendre\",\n        -12.07465648651123\n      ],\n      [\n        \"▁25,\",\n        -12.074832916259766\n      ],\n      [\n        \"▁pharmaceutical\",\n        -12.075145721435547\n      ],\n      [\n        \"▁placeholder\",\n        -12.075174331665039\n      ],\n      [\n        \"KI\",\n        -12.075176239013672\n      ],\n      [\n        \"▁români\",\n        -12.07540225982666\n      ],\n      [\n        \"▁Dollar\",\n        -12.075509071350098\n      ],\n      [\n        \"▁Operations\",\n        -12.075525283813477\n      ],\n      [\n        \"▁Dublin\",\n        -12.075550079345703\n      ],\n      [\n        \"▁drawings\",\n        -12.0756196975708\n      ],\n      [\n        \"▁respir\",\n        -12.075769424438477\n      ],\n      [\n        \"▁haul\",\n        -12.0758056640625\n      ],\n      [\n        \"Obviously\",\n        -12.075864791870117\n      ],\n      [\n        \"▁Beat\",\n        -12.075864791870117\n      ],\n      [\n        \"▁jeans\",\n        -12.07590103149414\n      ],\n      [\n        \"▁Masters\",\n        -12.075927734375\n      ],\n      [\n        \"▁bits\",\n        -12.076213836669922\n      ],\n      [\n        \"poți\",\n        -12.076226234436035\n      ],\n      [\n        \"▁asigur\",\n        -12.076228141784668\n      ],\n      [\n        \"▁intampla\",\n        -12.076228141784668\n      ],\n      [\n        \"▁marc\",\n        -12.076282501220703\n      ],\n      [\n        \"......\",\n        -12.076404571533203\n      ],\n      [\n        \"▁districts\",\n        -12.076437950134277\n      ],\n      [\n        \"cru\",\n        -12.076457023620605\n      ],\n      [\n        \"nav\",\n        -12.076608657836914\n      ],\n      [\n        \"huile\",\n        -12.076644897460938\n      ],\n      [\n        \"▁limitation\",\n        -12.076647758483887\n      ],\n      [\n        \"boat\",\n        -12.076712608337402\n      ],\n      [\n        \"IRE\",\n        -12.076720237731934\n      ],\n      [\n        \"Unis\",\n        -12.07675838470459\n      ],\n      [\n        \"dated\",\n        -12.0769624710083\n      ],\n      [\n        \"▁consultants\",\n        -12.07699203491211\n      ],\n      [\n        \"▁Josh\",\n        -12.077007293701172\n      ],\n      [\n        \"tanz\",\n        -12.077184677124023\n      ],\n      [\n        \"launching\",\n        -12.0772066116333\n      ],\n      [\n        \"▁browsing\",\n        -12.077310562133789\n      ],\n      [\n        \"▁incerc\",\n        -12.077314376831055\n      ],\n      [\n        \"▁27,\",\n        -12.077375411987305\n      ],\n      [\n        \"не\",\n        -12.077398300170898\n      ],\n      [\n        \"wig\",\n        -12.077415466308594\n      ],\n      [\n        \"▁spar\",\n        -12.077458381652832\n      ],\n      [\n        \"▁token\",\n        -12.077547073364258\n      ],\n      [\n        \"▁09\",\n        -12.077548027038574\n      ],\n      [\n        \"spa\",\n        -12.07766056060791\n      ],\n      [\n        \"ometer\",\n        -12.07772159576416\n      ],\n      [\n        \"▁riders\",\n        -12.077869415283203\n      ],\n      [\n        \"▁Drop\",\n        -12.077898979187012\n      ],\n      [\n        \"RN\",\n        -12.078103065490723\n      ],\n      [\n        \"▁pairs\",\n        -12.07815933227539\n      ],\n      [\n        \"▁psychology\",\n        -12.078420639038086\n      ],\n      [\n        \"▁Douglas\",\n        -12.078437805175781\n      ],\n      [\n        \"▁verwenden\",\n        -12.078516960144043\n      ],\n      [\n        \"▁(9\",\n        -12.07857894897461\n      ],\n      [\n        \"▁Rental\",\n        -12.078728675842285\n      ],\n      [\n        \"▁délai\",\n        -12.078847885131836\n      ],\n      [\n        \"▁sooner\",\n        -12.078882217407227\n      ],\n      [\n        \"▁bankruptcy\",\n        -12.079109191894531\n      ],\n      [\n        \"04.\",\n        -12.079110145568848\n      ],\n      [\n        \"abend\",\n        -12.079194068908691\n      ],\n      [\n        \"çon\",\n        -12.079237937927246\n      ],\n      [\n        \"▁Ple\",\n        -12.079243659973145\n      ],\n      [\n        \"fug\",\n        -12.079337120056152\n      ],\n      [\n        \"▁Wohnung\",\n        -12.079410552978516\n      ],\n      [\n        \"▁Preise\",\n        -12.079424858093262\n      ],\n      [\n        \"▁Kay\",\n        -12.079427719116211\n      ],\n      [\n        \"▁notify\",\n        -12.079474449157715\n      ],\n      [\n        \"▁Brain\",\n        -12.079534530639648\n      ],\n      [\n        \"▁optical\",\n        -12.079580307006836\n      ],\n      [\n        \"▁modifications\",\n        -12.079727172851562\n      ],\n      [\n        \"▁repos\",\n        -12.07999324798584\n      ],\n      [\n        \"▁worksheet\",\n        -12.0800142288208\n      ],\n      [\n        \"continu\",\n        -12.08005428314209\n      ],\n      [\n        \"▁assumed\",\n        -12.08059024810791\n      ],\n      [\n        \"varying\",\n        -12.080626487731934\n      ],\n      [\n        \"feier\",\n        -12.080643653869629\n      ],\n      [\n        \"▁Freedom\",\n        -12.080717086791992\n      ],\n      [\n        \"▁Inhalte\",\n        -12.080740928649902\n      ],\n      [\n        \"▁observations\",\n        -12.080755233764648\n      ],\n      [\n        \"▁Gruppe\",\n        -12.080791473388672\n      ],\n      [\n        \"▁Cyber\",\n        -12.080883979797363\n      ],\n      [\n        \"hort\",\n        -12.080889701843262\n      ],\n      [\n        \"▁langue\",\n        -12.080915451049805\n      ],\n      [\n        \"führen\",\n        -12.08110523223877\n      ],\n      [\n        \"ganze\",\n        -12.081254005432129\n      ],\n      [\n        \"▁forte\",\n        -12.081327438354492\n      ],\n      [\n        \"▁Stefan\",\n        -12.081376075744629\n      ],\n      [\n        \"▁Jetzt\",\n        -12.081463813781738\n      ],\n      [\n        \"mehr\",\n        -12.081489562988281\n      ],\n      [\n        \"trip\",\n        -12.081549644470215\n      ],\n      [\n        \"▁poem\",\n        -12.081583976745605\n      ],\n      [\n        \"▁practitioners\",\n        -12.081720352172852\n      ],\n      [\n        \"▁connector\",\n        -12.08177661895752\n      ],\n      [\n        \"ECT\",\n        -12.081794738769531\n      ],\n      [\n        \"▁inseamna\",\n        -12.081820487976074\n      ],\n      [\n        \"addressing\",\n        -12.081867218017578\n      ],\n      [\n        \"▁beliebt\",\n        -12.081908226013184\n      ],\n      [\n        \"▁Mama\",\n        -12.082002639770508\n      ],\n      [\n        \"▁fade\",\n        -12.08204460144043\n      ],\n      [\n        \"messen\",\n        -12.08205509185791\n      ],\n      [\n        \"▁Visa\",\n        -12.082080841064453\n      ],\n      [\n        \"▁Meta\",\n        -12.082154273986816\n      ],\n      [\n        \"lene\",\n        -12.082188606262207\n      ],\n      [\n        \"▁remembered\",\n        -12.082334518432617\n      ],\n      [\n        \"/3\",\n        -12.082337379455566\n      ],\n      [\n        \"apte\",\n        -12.082347869873047\n      ],\n      [\n        \"▁uncomfortable\",\n        -12.082364082336426\n      ],\n      [\n        \"▁romance\",\n        -12.08253002166748\n      ],\n      [\n        \"▁réalis\",\n        -12.082601547241211\n      ],\n      [\n        \"▁Vincent\",\n        -12.082706451416016\n      ],\n      [\n        \"▁ABC\",\n        -12.08275318145752\n      ],\n      [\n        \"▁handicap\",\n        -12.082756042480469\n      ],\n      [\n        \"▁Shin\",\n        -12.082801818847656\n      ],\n      [\n        \"▁Hunde\",\n        -12.082847595214844\n      ],\n      [\n        \"▁Ach\",\n        -12.083131790161133\n      ],\n      [\n        \"▁Questions\",\n        -12.083136558532715\n      ],\n      [\n        \"▁particles\",\n        -12.083226203918457\n      ],\n      [\n        \"usch\",\n        -12.083230018615723\n      ],\n      [\n        \"▁SUV\",\n        -12.083279609680176\n      ],\n      [\n        \"▁Tous\",\n        -12.083301544189453\n      ],\n      [\n        \"▁empower\",\n        -12.08336067199707\n      ],\n      [\n        \"▁Yi\",\n        -12.083446502685547\n      ],\n      [\n        \"▁LinkedIn\",\n        -12.083453178405762\n      ],\n      [\n        \"▁Profile\",\n        -12.083507537841797\n      ],\n      [\n        \"▁surround\",\n        -12.083553314208984\n      ],\n      [\n        \"▁wh\",\n        -12.083560943603516\n      ],\n      [\n        \"▁Weiter\",\n        -12.083577156066895\n      ],\n      [\n        \"▁Weight\",\n        -12.083672523498535\n      ],\n      [\n        \"▁creatures\",\n        -12.083807945251465\n      ],\n      [\n        \"Especially\",\n        -12.08381462097168\n      ],\n      [\n        \"▁repede\",\n        -12.08383560180664\n      ],\n      [\n        \"▁albums\",\n        -12.083885192871094\n      ],\n      [\n        \"▁compatibil\",\n        -12.0839204788208\n      ],\n      [\n        \"▁Interesse\",\n        -12.083929061889648\n      ],\n      [\n        \"abili\",\n        -12.084062576293945\n      ],\n      [\n        \"▁roast\",\n        -12.084310531616211\n      ],\n      [\n        \"▁unii\",\n        -12.084310531616211\n      ],\n      [\n        \"▁Glad\",\n        -12.084421157836914\n      ],\n      [\n        \"▁enthusiasm\",\n        -12.084539413452148\n      ],\n      [\n        \"▁whisk\",\n        -12.084547996520996\n      ],\n      [\n        \"▁freezer\",\n        -12.084712982177734\n      ],\n      [\n        \"▁stolen\",\n        -12.084715843200684\n      ],\n      [\n        \"▁neighbour\",\n        -12.084883689880371\n      ],\n      [\n        \"▁sake\",\n        -12.084967613220215\n      ],\n      [\n        \"▁Effect\",\n        -12.0850191116333\n      ],\n      [\n        \"▁fighter\",\n        -12.085044860839844\n      ],\n      [\n        \"▁tranquil\",\n        -12.085084915161133\n      ],\n      [\n        \"▁organizer\",\n        -12.085199356079102\n      ],\n      [\n        \"pixel\",\n        -12.085306167602539\n      ],\n      [\n        \"▁Guest\",\n        -12.085338592529297\n      ],\n      [\n        \"▁Philipp\",\n        -12.085369110107422\n      ],\n      [\n        \"kunft\",\n        -12.085382461547852\n      ],\n      [\n        \"▁Meer\",\n        -12.085409164428711\n      ],\n      [\n        \"▁inviting\",\n        -12.085432052612305\n      ],\n      [\n        \"gänge\",\n        -12.085450172424316\n      ],\n      [\n        \"▁Position\",\n        -12.085627555847168\n      ],\n      [\n        \"giving\",\n        -12.085693359375\n      ],\n      [\n        \"▁marble\",\n        -12.085807800292969\n      ],\n      [\n        \"▁neg\",\n        -12.085813522338867\n      ],\n      [\n        \"▁Haar\",\n        -12.085914611816406\n      ],\n      [\n        \"Ein\",\n        -12.086039543151855\n      ],\n      [\n        \"▁buses\",\n        -12.086187362670898\n      ],\n      [\n        \"▁Lodge\",\n        -12.086188316345215\n      ],\n      [\n        \"soare\",\n        -12.086319923400879\n      ],\n      [\n        \"▁Barn\",\n        -12.086409568786621\n      ],\n      [\n        \"▁captain\",\n        -12.086527824401855\n      ],\n      [\n        \"▁Fix\",\n        -12.08657169342041\n      ],\n      [\n        \"ulate\",\n        -12.086629867553711\n      ],\n      [\n        \"ență\",\n        -12.086709022521973\n      ],\n      [\n        \"▁finances\",\n        -12.086770057678223\n      ],\n      [\n        \"▁VIP\",\n        -12.086800575256348\n      ],\n      [\n        \"▁Adams\",\n        -12.086801528930664\n      ],\n      [\n        \"▁spécialisé\",\n        -12.086960792541504\n      ],\n      [\n        \"▁fortunate\",\n        -12.087236404418945\n      ],\n      [\n        \"ility\",\n        -12.087345123291016\n      ],\n      [\n        \"▁democracy\",\n        -12.08749771118164\n      ],\n      [\n        \"shu\",\n        -12.087580680847168\n      ],\n      [\n        \"▁consiste\",\n        -12.087624549865723\n      ],\n      [\n        \"▁tort\",\n        -12.087692260742188\n      ],\n      [\n        \"▁branding\",\n        -12.087793350219727\n      ],\n      [\n        \"▁porch\",\n        -12.08780288696289\n      ],\n      [\n        \"UNI\",\n        -12.087867736816406\n      ],\n      [\n        \"▁placut\",\n        -12.087915420532227\n      ],\n      [\n        \"▁coupled\",\n        -12.088058471679688\n      ],\n      [\n        \"▁ministre\",\n        -12.088187217712402\n      ],\n      [\n        \"▁minerals\",\n        -12.088335037231445\n      ],\n      [\n        \"▁safer\",\n        -12.088335990905762\n      ],\n      [\n        \"▁outlets\",\n        -12.088438034057617\n      ],\n      [\n        \"▁caution\",\n        -12.08864688873291\n      ],\n      [\n        \"▁lightly\",\n        -12.0886869430542\n      ],\n      [\n        \"▁utilizator\",\n        -12.088700294494629\n      ],\n      [\n        \"▁Pala\",\n        -12.088959693908691\n      ],\n      [\n        \"▁doll\",\n        -12.088961601257324\n      ],\n      [\n        \"(1)\",\n        -12.089065551757812\n      ],\n      [\n        \"chol\",\n        -12.089120864868164\n      ],\n      [\n        \"▁Left\",\n        -12.08919620513916\n      ],\n      [\n        \"▁roulant\",\n        -12.089277267456055\n      ],\n      [\n        \"▁propune\",\n        -12.089301109313965\n      ],\n      [\n        \"▁Cred\",\n        -12.089339256286621\n      ],\n      [\n        \"▁negotiations\",\n        -12.089362144470215\n      ],\n      [\n        \"amba\",\n        -12.089393615722656\n      ],\n      [\n        \"▁grasp\",\n        -12.089420318603516\n      ],\n      [\n        \"▁Amsterdam\",\n        -12.089451789855957\n      ],\n      [\n        \"▁Zweck\",\n        -12.08945369720459\n      ],\n      [\n        \"▁conven\",\n        -12.089563369750977\n      ],\n      [\n        \"▁organizing\",\n        -12.089574813842773\n      ],\n      [\n        \"section\",\n        -12.089618682861328\n      ],\n      [\n        \"▁endeavor\",\n        -12.089634895324707\n      ],\n      [\n        \"▁basics\",\n        -12.089722633361816\n      ],\n      [\n        \"jud\",\n        -12.089874267578125\n      ],\n      [\n        \"▁yarn\",\n        -12.090049743652344\n      ],\n      [\n        \"▁shout\",\n        -12.09009075164795\n      ],\n      [\n        \"fällt\",\n        -12.090285301208496\n      ],\n      [\n        \"▁dragoste\",\n        -12.09054946899414\n      ],\n      [\n        \"▁Rein\",\n        -12.090594291687012\n      ],\n      [\n        \"Cal\",\n        -12.090688705444336\n      ],\n      [\n        \"▁deaths\",\n        -12.090729713439941\n      ],\n      [\n        \"▁24,\",\n        -12.0907564163208\n      ],\n      [\n        \"▁măr\",\n        -12.090773582458496\n      ],\n      [\n        \"server\",\n        -12.090825080871582\n      ],\n      [\n        \"▁explic\",\n        -12.09085464477539\n      ],\n      [\n        \"▁sufer\",\n        -12.090903282165527\n      ],\n      [\n        \"▁lucrări\",\n        -12.091097831726074\n      ],\n      [\n        \"▁Disease\",\n        -12.091126441955566\n      ],\n      [\n        \"▁prescribed\",\n        -12.091194152832031\n      ],\n      [\n        \"prozess\",\n        -12.091285705566406\n      ],\n      [\n        \"▁dessin\",\n        -12.091343879699707\n      ],\n      [\n        \"▁refuge\",\n        -12.091473579406738\n      ],\n      [\n        \"▁cope\",\n        -12.091631889343262\n      ],\n      [\n        \"pole\",\n        -12.09196949005127\n      ],\n      [\n        \"▁vacant\",\n        -12.091984748840332\n      ],\n      [\n        \"▁sezon\",\n        -12.092035293579102\n      ],\n      [\n        \"▁Carbon\",\n        -12.092227935791016\n      ],\n      [\n        \"▁goût\",\n        -12.092233657836914\n      ],\n      [\n        \"Ste\",\n        -12.092320442199707\n      ],\n      [\n        \"▁surroundings\",\n        -12.092754364013672\n      ],\n      [\n        \"definite\",\n        -12.09284496307373\n      ],\n      [\n        \"▁adaptation\",\n        -12.093358993530273\n      ],\n      [\n        \"cteur\",\n        -12.0933837890625\n      ],\n      [\n        \"System\",\n        -12.093442916870117\n      ],\n      [\n        \"▁Burg\",\n        -12.093550682067871\n      ],\n      [\n        \"▁retention\",\n        -12.093579292297363\n      ],\n      [\n        \"examen\",\n        -12.093618392944336\n      ],\n      [\n        \"▁adjustments\",\n        -12.093668937683105\n      ],\n      [\n        \"nies\",\n        -12.094213485717773\n      ],\n      [\n        \"▁RSS\",\n        -12.094215393066406\n      ],\n      [\n        \"▁Umwelt\",\n        -12.094259262084961\n      ],\n      [\n        \"▁strengths\",\n        -12.094326972961426\n      ],\n      [\n        \"loom\",\n        -12.094401359558105\n      ],\n      [\n        \"▁pics\",\n        -12.094404220581055\n      ],\n      [\n        \"phase\",\n        -12.09443187713623\n      ],\n      [\n        \"▁Poland\",\n        -12.094472885131836\n      ],\n      [\n        \"▁practicing\",\n        -12.094558715820312\n      ],\n      [\n        \"monetary\",\n        -12.094756126403809\n      ],\n      [\n        \"▁embodiment\",\n        -12.094756126403809\n      ],\n      [\n        \"▁jocuri\",\n        -12.094846725463867\n      ],\n      [\n        \"▁impreuna\",\n        -12.094939231872559\n      ],\n      [\n        \"▁Lyon\",\n        -12.094985961914062\n      ],\n      [\n        \"keeping\",\n        -12.095157623291016\n      ],\n      [\n        \"▁Starting\",\n        -12.095202445983887\n      ],\n      [\n        \"▁începe\",\n        -12.095357894897461\n      ],\n      [\n        \"▁clay\",\n        -12.095440864562988\n      ],\n      [\n        \"bildung\",\n        -12.095444679260254\n      ],\n      [\n        \"Technologie\",\n        -12.095513343811035\n      ],\n      [\n        \"toxic\",\n        -12.095624923706055\n      ],\n      [\n        \"▁gasit\",\n        -12.095819473266602\n      ],\n      [\n        \"rott\",\n        -12.095870018005371\n      ],\n      [\n        \"brook\",\n        -12.095935821533203\n      ],\n      [\n        \"▁wann\",\n        -12.096029281616211\n      ],\n      [\n        \"▁lined\",\n        -12.09610366821289\n      ],\n      [\n        \"▁Chelsea\",\n        -12.096223831176758\n      ],\n      [\n        \"▁Orlando\",\n        -12.096224784851074\n      ],\n      [\n        \"▁Otherwise\",\n        -12.096267700195312\n      ],\n      [\n        \"▁debit\",\n        -12.096273422241211\n      ],\n      [\n        \"▁entsprechend\",\n        -12.09648323059082\n      ],\n      [\n        \"nism\",\n        -12.09654426574707\n      ],\n      [\n        \"issen\",\n        -12.09664535522461\n      ],\n      [\n        \"▁rendez\",\n        -12.096646308898926\n      ],\n      [\n        \"▁processus\",\n        -12.096745491027832\n      ],\n      [\n        \"mbi\",\n        -12.096890449523926\n      ],\n      [\n        \"▁Graduate\",\n        -12.096960067749023\n      ],\n      [\n        \"▁cozy\",\n        -12.097119331359863\n      ],\n      [\n        \"▁Freunde\",\n        -12.097320556640625\n      ],\n      [\n        \"▁teme\",\n        -12.097389221191406\n      ],\n      [\n        \"▁bias\",\n        -12.097548484802246\n      ],\n      [\n        \"102\",\n        -12.09756851196289\n      ],\n      [\n        \"terrorism\",\n        -12.09770679473877\n      ],\n      [\n        \"threatening\",\n        -12.097756385803223\n      ],\n      [\n        \"ни\",\n        -12.097776412963867\n      ],\n      [\n        \"▁Sonntag\",\n        -12.098062515258789\n      ],\n      [\n        \"▁efect\",\n        -12.098116874694824\n      ],\n      [\n        \"▁prayers\",\n        -12.098134994506836\n      ],\n      [\n        \"▁backpack\",\n        -12.09841537475586\n      ],\n      [\n        \"?)\",\n        -12.098489761352539\n      ],\n      [\n        \"▁searches\",\n        -12.098788261413574\n      ],\n      [\n        \"ouverture\",\n        -12.09880256652832\n      ],\n      [\n        \"▁sustained\",\n        -12.098865509033203\n      ],\n      [\n        \"hawk\",\n        -12.098869323730469\n      ],\n      [\n        \"messe\",\n        -12.098958969116211\n      ],\n      [\n        \"▁prototype\",\n        -12.098989486694336\n      ],\n      [\n        \"▁stră\",\n        -12.09903335571289\n      ],\n      [\n        \"▁Neo\",\n        -12.099040985107422\n      ],\n      [\n        \"▁29,\",\n        -12.099109649658203\n      ],\n      [\n        \"izo\",\n        -12.099306106567383\n      ],\n      [\n        \"▁Anton\",\n        -12.099333763122559\n      ],\n      [\n        \"SIS\",\n        -12.099564552307129\n      ],\n      [\n        \"pendant\",\n        -12.099617958068848\n      ],\n      [\n        \"▁passive\",\n        -12.099813461303711\n      ],\n      [\n        \"▁Aaron\",\n        -12.099824905395508\n      ],\n      [\n        \"▁Karen\",\n        -12.099831581115723\n      ],\n      [\n        \"▁Bildung\",\n        -12.09994888305664\n      ],\n      [\n        \"ario\",\n        -12.099949836730957\n      ],\n      [\n        \"▁regulator\",\n        -12.100006103515625\n      ],\n      [\n        \"gruppe\",\n        -12.100032806396484\n      ],\n      [\n        \"stepped\",\n        -12.100053787231445\n      ],\n      [\n        \"▁interventions\",\n        -12.10014533996582\n      ],\n      [\n        \"▁rounds\",\n        -12.100149154663086\n      ],\n      [\n        \"▁Khan\",\n        -12.10020637512207\n      ],\n      [\n        \"▁railway\",\n        -12.10028076171875\n      ],\n      [\n        \"▁souvenir\",\n        -12.100296974182129\n      ],\n      [\n        \"▁Plans\",\n        -12.100336074829102\n      ],\n      [\n        \"aille\",\n        -12.100372314453125\n      ],\n      [\n        \"▁billing\",\n        -12.100473403930664\n      ],\n      [\n        \"▁Spiele\",\n        -12.100541114807129\n      ],\n      [\n        \"▁supermarket\",\n        -12.100556373596191\n      ],\n      [\n        \"▁flows\",\n        -12.100625991821289\n      ],\n      [\n        \"▁PayPal\",\n        -12.100641250610352\n      ],\n      [\n        \"▁tribe\",\n        -12.10067081451416\n      ],\n      [\n        \"anni\",\n        -12.100780487060547\n      ],\n      [\n        \"▁rides\",\n        -12.100934982299805\n      ],\n      [\n        \"▁Orleans\",\n        -12.101009368896484\n      ],\n      [\n        \"▁evaluated\",\n        -12.101021766662598\n      ],\n      [\n        \"founder\",\n        -12.10106372833252\n      ],\n      [\n        \"▁Feld\",\n        -12.101212501525879\n      ],\n      [\n        \"▁altele\",\n        -12.10122299194336\n      ],\n      [\n        \"▁thermo\",\n        -12.101290702819824\n      ],\n      [\n        \"ugh\",\n        -12.101330757141113\n      ],\n      [\n        \"▁adus\",\n        -12.101375579833984\n      ],\n      [\n        \"▁Taiwan\",\n        -12.101396560668945\n      ],\n      [\n        \"▁clause\",\n        -12.101409912109375\n      ],\n      [\n        \"oxi\",\n        -12.101465225219727\n      ],\n      [\n        \"alcool\",\n        -12.101495742797852\n      ],\n      [\n        \"▁Noi\",\n        -12.101531982421875\n      ],\n      [\n        \"rub\",\n        -12.101540565490723\n      ],\n      [\n        \"▁dosar\",\n        -12.101582527160645\n      ],\n      [\n        \"▁Nelson\",\n        -12.101751327514648\n      ],\n      [\n        \"fassung\",\n        -12.102316856384277\n      ],\n      [\n        \"▁Kill\",\n        -12.102489471435547\n      ],\n      [\n        \"▁Standards\",\n        -12.102490425109863\n      ],\n      [\n        \"▁upward\",\n        -12.102653503417969\n      ],\n      [\n        \"▁Coloring\",\n        -12.102664947509766\n      ],\n      [\n        \"Designed\",\n        -12.102754592895508\n      ],\n      [\n        \"▁Nou\",\n        -12.10281753540039\n      ],\n      [\n        \"▁borrow\",\n        -12.102940559387207\n      ],\n      [\n        \"▁Poll\",\n        -12.10321044921875\n      ],\n      [\n        \"▁antibiotic\",\n        -12.103277206420898\n      ],\n      [\n        \"▁fabrication\",\n        -12.103388786315918\n      ],\n      [\n        \"quo\",\n        -12.103432655334473\n      ],\n      [\n        \"▁crimes\",\n        -12.103464126586914\n      ],\n      [\n        \"▁nahe\",\n        -12.103484153747559\n      ],\n      [\n        \"▁aplicat\",\n        -12.103565216064453\n      ],\n      [\n        \"OST\",\n        -12.1035737991333\n      ],\n      [\n        \"▁Beijing\",\n        -12.103599548339844\n      ],\n      [\n        \"fight\",\n        -12.103612899780273\n      ],\n      [\n        \"▁lodge\",\n        -12.103612899780273\n      ],\n      [\n        \"dreh\",\n        -12.103922843933105\n      ],\n      [\n        \"▁harness\",\n        -12.104036331176758\n      ],\n      [\n        \"▁noiembrie\",\n        -12.104151725769043\n      ],\n      [\n        \"ounded\",\n        -12.104161262512207\n      ],\n      [\n        \"▁Imp\",\n        -12.1041841506958\n      ],\n      [\n        \"▁nächste\",\n        -12.104275703430176\n      ],\n      [\n        \"funktion\",\n        -12.104476928710938\n      ],\n      [\n        \"exploitation\",\n        -12.104569435119629\n      ],\n      [\n        \"▁Ready\",\n        -12.10457706451416\n      ],\n      [\n        \"▁Plate\",\n        -12.104598999023438\n      ],\n      [\n        \"▁octombrie\",\n        -12.104706764221191\n      ],\n      [\n        \"▁considerat\",\n        -12.104982376098633\n      ],\n      [\n        \"▁Xbox\",\n        -12.105067253112793\n      ],\n      [\n        \"mind\",\n        -12.105107307434082\n      ],\n      [\n        \"▁Lind\",\n        -12.105111122131348\n      ],\n      [\n        \"runde\",\n        -12.105352401733398\n      ],\n      [\n        \"mination\",\n        -12.105374336242676\n      ],\n      [\n        \"▁memori\",\n        -12.105377197265625\n      ],\n      [\n        \"▁cere\",\n        -12.105389595031738\n      ],\n      [\n        \"barkeit\",\n        -12.105517387390137\n      ],\n      [\n        \"▁găsi\",\n        -12.105761528015137\n      ],\n      [\n        \"2.1\",\n        -12.105863571166992\n      ],\n      [\n        \"▁Finding\",\n        -12.105891227722168\n      ],\n      [\n        \"▁static\",\n        -12.106405258178711\n      ],\n      [\n        \"court\",\n        -12.106439590454102\n      ],\n      [\n        \"▁Gem\",\n        -12.106489181518555\n      ],\n      [\n        \"▁pièce\",\n        -12.106494903564453\n      ],\n      [\n        \"▁reel\",\n        -12.10651969909668\n      ],\n      [\n        \"▁manuscript\",\n        -12.106560707092285\n      ],\n      [\n        \"▁complications\",\n        -12.106578826904297\n      ],\n      [\n        \"▁controlling\",\n        -12.106585502624512\n      ],\n      [\n        \"▁favour\",\n        -12.106738090515137\n      ],\n      [\n        \"▁advancement\",\n        -12.106739044189453\n      ],\n      [\n        \"▁Radi\",\n        -12.106870651245117\n      ],\n      [\n        \"▁faites\",\n        -12.107076644897461\n      ],\n      [\n        \"▁ordin\",\n        -12.107131958007812\n      ],\n      [\n        \"sorted\",\n        -12.107152938842773\n      ],\n      [\n        \"▁1982\",\n        -12.10715389251709\n      ],\n      [\n        \"▁brutal\",\n        -12.107154846191406\n      ],\n      [\n        \"▁Guy\",\n        -12.107226371765137\n      ],\n      [\n        \"▁accomplishment\",\n        -12.107248306274414\n      ],\n      [\n        \"▁wer\",\n        -12.107329368591309\n      ],\n      [\n        \"▁withdraw\",\n        -12.107460975646973\n      ],\n      [\n        \"abilitate\",\n        -12.1075439453125\n      ],\n      [\n        \"▁NBA\",\n        -12.107625961303711\n      ],\n      [\n        \"▁Benefit\",\n        -12.107675552368164\n      ],\n      [\n        \"▁divide\",\n        -12.107824325561523\n      ],\n      [\n        \"induced\",\n        -12.107913970947266\n      ],\n      [\n        \"▁văzut\",\n        -12.108049392700195\n      ],\n      [\n        \"▁peel\",\n        -12.10807991027832\n      ],\n      [\n        \"▁joints\",\n        -12.108160972595215\n      ],\n      [\n        \"▁enthalten\",\n        -12.108301162719727\n      ],\n      [\n        \"▁spy\",\n        -12.108397483825684\n      ],\n      [\n        \"▁occasional\",\n        -12.108437538146973\n      ],\n      [\n        \"warm\",\n        -12.108514785766602\n      ],\n      [\n        \"ême\",\n        -12.108542442321777\n      ],\n      [\n        \"▁Betriebs\",\n        -12.108551979064941\n      ],\n      [\n        \"▁Ioan\",\n        -12.1087064743042\n      ],\n      [\n        \"▁balloon\",\n        -12.108809471130371\n      ],\n      [\n        \"▁leap\",\n        -12.108869552612305\n      ],\n      [\n        \"pelled\",\n        -12.109000205993652\n      ],\n      [\n        \"▁realise\",\n        -12.109073638916016\n      ],\n      [\n        \"▁Retail\",\n        -12.109118461608887\n      ],\n      [\n        \"▁Farben\",\n        -12.109151840209961\n      ],\n      [\n        \"▁Kennedy\",\n        -12.10916519165039\n      ],\n      [\n        \"▁Firma\",\n        -12.109196662902832\n      ],\n      [\n        \"▁tineri\",\n        -12.10934066772461\n      ],\n      [\n        \"tub\",\n        -12.109354019165039\n      ],\n      [\n        \"PORT\",\n        -12.109381675720215\n      ],\n      [\n        \"▁stiff\",\n        -12.109416007995605\n      ],\n      [\n        \"▁notable\",\n        -12.109476089477539\n      ],\n      [\n        \"tler\",\n        -12.109498023986816\n      ],\n      [\n        \"▁utile\",\n        -12.10958480834961\n      ],\n      [\n        \"▁jouer\",\n        -12.109674453735352\n      ],\n      [\n        \"▁Primary\",\n        -12.109735488891602\n      ],\n      [\n        \"▁retailer\",\n        -12.109764099121094\n      ],\n      [\n        \"▁jederzeit\",\n        -12.109808921813965\n      ],\n      [\n        \"▁amend\",\n        -12.109817504882812\n      ],\n      [\n        \"▁sagte\",\n        -12.109845161437988\n      ],\n      [\n        \"atch\",\n        -12.10995864868164\n      ],\n      [\n        \"ution\",\n        -12.110008239746094\n      ],\n      [\n        \"once\",\n        -12.110018730163574\n      ],\n      [\n        \"ended\",\n        -12.1100435256958\n      ],\n      [\n        \"▁literary\",\n        -12.11013126373291\n      ],\n      [\n        \"▁wrist\",\n        -12.110281944274902\n      ],\n      [\n        \"vii\",\n        -12.11036205291748\n      ],\n      [\n        \"scriere\",\n        -12.110367774963379\n      ],\n      [\n        \"▁compassion\",\n        -12.110443115234375\n      ],\n      [\n        \"▁Milan\",\n        -12.110474586486816\n      ],\n      [\n        \"▁Dach\",\n        -12.110490798950195\n      ],\n      [\n        \"▁problèmes\",\n        -12.110630989074707\n      ],\n      [\n        \"▁Pré\",\n        -12.110687255859375\n      ],\n      [\n        \"▁Feder\",\n        -12.110759735107422\n      ],\n      [\n        \"Dr\",\n        -12.110814094543457\n      ],\n      [\n        \"Spr\",\n        -12.110908508300781\n      ],\n      [\n        \"▁né\",\n        -12.110969543457031\n      ],\n      [\n        \"François\",\n        -12.111023902893066\n      ],\n      [\n        \"▁Shu\",\n        -12.111115455627441\n      ],\n      [\n        \"▁poison\",\n        -12.111154556274414\n      ],\n      [\n        \"zier\",\n        -12.111176490783691\n      ],\n      [\n        \"▁attain\",\n        -12.11124038696289\n      ],\n      [\n        \"▁switching\",\n        -12.111310958862305\n      ],\n      [\n        \"▁vibration\",\n        -12.111348152160645\n      ],\n      [\n        \"▁Tablet\",\n        -12.11136531829834\n      ],\n      [\n        \"▁Lern\",\n        -12.11148452758789\n      ],\n      [\n        \"offrir\",\n        -12.111660957336426\n      ],\n      [\n        \"123\",\n        -12.11168098449707\n      ],\n      [\n        \"cheapest\",\n        -12.11173152923584\n      ],\n      [\n        \"▁numărul\",\n        -12.111764907836914\n      ],\n      [\n        \"break\",\n        -12.11180305480957\n      ],\n      [\n        \"cyto\",\n        -12.111836433410645\n      ],\n      [\n        \"▁Mississippi\",\n        -12.111955642700195\n      ],\n      [\n        \"▁dragon\",\n        -12.11207389831543\n      ],\n      [\n        \"fir\",\n        -12.112176895141602\n      ],\n      [\n        \"▁fête\",\n        -12.112180709838867\n      ],\n      [\n        \"▁Wait\",\n        -12.112350463867188\n      ],\n      [\n        \"buy\",\n        -12.112359046936035\n      ],\n      [\n        \"având\",\n        -12.112391471862793\n      ],\n      [\n        \"▁Scar\",\n        -12.112517356872559\n      ],\n      [\n        \"▁Hund\",\n        -12.112586975097656\n      ],\n      [\n        \"bug\",\n        -12.112807273864746\n      ],\n      [\n        \"▁classique\",\n        -12.112811088562012\n      ],\n      [\n        \"▁tenant\",\n        -12.112860679626465\n      ],\n      [\n        \"▁Walt\",\n        -12.11296272277832\n      ],\n      [\n        \"▁timber\",\n        -12.11296272277832\n      ],\n      [\n        \"inscription\",\n        -12.11300277709961\n      ],\n      [\n        \"BD\",\n        -12.113016128540039\n      ],\n      [\n        \"▁Commissioner\",\n        -12.113018989562988\n      ],\n      [\n        \"▁casinos\",\n        -12.11306095123291\n      ],\n      [\n        \"▁prochain\",\n        -12.113168716430664\n      ],\n      [\n        \"▁rustic\",\n        -12.11349868774414\n      ],\n      [\n        \"▁Kent\",\n        -12.113607406616211\n      ],\n      [\n        \"▁Deci\",\n        -12.113761901855469\n      ],\n      [\n        \"ли\",\n        -12.113855361938477\n      ],\n      [\n        \"▁crossed\",\n        -12.113861083984375\n      ],\n      [\n        \"▁delightful\",\n        -12.113869667053223\n      ],\n      [\n        \"▁metres\",\n        -12.113872528076172\n      ],\n      [\n        \"▁scandal\",\n        -12.113906860351562\n      ],\n      [\n        \"▁activitate\",\n        -12.113986015319824\n      ],\n      [\n        \"▁nimeni\",\n        -12.114009857177734\n      ],\n      [\n        \"ease\",\n        -12.11402416229248\n      ],\n      [\n        \"▁revenues\",\n        -12.1140775680542\n      ],\n      [\n        \"▁partially\",\n        -12.114187240600586\n      ],\n      [\n        \"AE\",\n        -12.114263534545898\n      ],\n      [\n        \"nique\",\n        -12.114410400390625\n      ],\n      [\n        \"▁fixtures\",\n        -12.114426612854004\n      ],\n      [\n        \"▁pupils\",\n        -12.114694595336914\n      ],\n      [\n        \"Lib\",\n        -12.11471176147461\n      ],\n      [\n        \"analyse\",\n        -12.114739418029785\n      ],\n      [\n        \"▁Oracle\",\n        -12.114767074584961\n      ],\n      [\n        \"troph\",\n        -12.114859580993652\n      ],\n      [\n        \"▁detected\",\n        -12.114879608154297\n      ],\n      [\n        \"▁servant\",\n        -12.11507797241211\n      ],\n      [\n        \"▁badly\",\n        -12.115121841430664\n      ],\n      [\n        \"comparing\",\n        -12.115150451660156\n      ],\n      [\n        \"abs\",\n        -12.115238189697266\n      ],\n      [\n        \"▁fotografi\",\n        -12.115443229675293\n      ],\n      [\n        \"▁Million\",\n        -12.115541458129883\n      ],\n      [\n        \"▁Gordon\",\n        -12.11557388305664\n      ],\n      [\n        \"▁Smok\",\n        -12.115592002868652\n      ],\n      [\n        \"▁Essay\",\n        -12.11565113067627\n      ],\n      [\n        \"eptic\",\n        -12.115665435791016\n      ],\n      [\n        \"▁Transportation\",\n        -12.115728378295898\n      ],\n      [\n        \"/2019\",\n        -12.115767478942871\n      ],\n      [\n        \"▁alignment\",\n        -12.115778923034668\n      ],\n      [\n        \"▁laut\",\n        -12.11578369140625\n      ],\n      [\n        \"stände\",\n        -12.115791320800781\n      ],\n      [\n        \"▁concerts\",\n        -12.115811347961426\n      ],\n      [\n        \"▁weekends\",\n        -12.11589241027832\n      ],\n      [\n        \"▁obstacles\",\n        -12.115941047668457\n      ],\n      [\n        \"wür\",\n        -12.115964889526367\n      ],\n      [\n        \"▁Fisher\",\n        -12.116219520568848\n      ],\n      [\n        \"▁supervisor\",\n        -12.116242408752441\n      ],\n      [\n        \"▁traders\",\n        -12.116262435913086\n      ],\n      [\n        \"▁scary\",\n        -12.116484642028809\n      ],\n      [\n        \"▁Grove\",\n        -12.116538047790527\n      ],\n      [\n        \"▁expose\",\n        -12.116583824157715\n      ],\n      [\n        \"▁enemies\",\n        -12.116630554199219\n      ],\n      [\n        \"▁Lux\",\n        -12.11667537689209\n      ],\n      [\n        \"▁Berufs\",\n        -12.11672306060791\n      ],\n      [\n        \"▁Sheet\",\n        -12.116780281066895\n      ],\n      [\n        \"▁Natürlich\",\n        -12.116819381713867\n      ],\n      [\n        \"▁examined\",\n        -12.116886138916016\n      ],\n      [\n        \"pursuing\",\n        -12.116920471191406\n      ],\n      [\n        \"▁pools\",\n        -12.116923332214355\n      ],\n      [\n        \"▁Thompson\",\n        -12.117005348205566\n      ],\n      [\n        \"▁SAP\",\n        -12.117010116577148\n      ],\n      [\n        \"claiming\",\n        -12.117053985595703\n      ],\n      [\n        \"buried\",\n        -12.117055892944336\n      ],\n      [\n        \"assurance\",\n        -12.117138862609863\n      ],\n      [\n        \"▁sandwich\",\n        -12.117195129394531\n      ],\n      [\n        \"uber\",\n        -12.117310523986816\n      ],\n      [\n        \"▁laisse\",\n        -12.117321968078613\n      ],\n      [\n        \"peak\",\n        -12.117348670959473\n      ],\n      [\n        \"spring\",\n        -12.1173677444458\n      ],\n      [\n        \"▁august\",\n        -12.117369651794434\n      ],\n      [\n        \"▁benötigt\",\n        -12.11738109588623\n      ],\n      [\n        \"▁achievements\",\n        -12.117470741271973\n      ],\n      [\n        \"coala\",\n        -12.117478370666504\n      ],\n      [\n        \"▁scr\",\n        -12.117842674255371\n      ],\n      [\n        \"gesagt\",\n        -12.118122100830078\n      ],\n      [\n        \"▁envelope\",\n        -12.118141174316406\n      ],\n      [\n        \"▁mapping\",\n        -12.118169784545898\n      ],\n      [\n        \"▁Suche\",\n        -12.118298530578613\n      ],\n      [\n        \"first\",\n        -12.118329048156738\n      ],\n      [\n        \"▁Quin\",\n        -12.118447303771973\n      ],\n      [\n        \"räu\",\n        -12.118561744689941\n      ],\n      [\n        \"▁răs\",\n        -12.118583679199219\n      ],\n      [\n        \"chemical\",\n        -12.118597984313965\n      ],\n      [\n        \"dad\",\n        -12.118927955627441\n      ],\n      [\n        \"formation\",\n        -12.118983268737793\n      ],\n      [\n        \"▁cushion\",\n        -12.119026184082031\n      ],\n      [\n        \"▁Maß\",\n        -12.119046211242676\n      ],\n      [\n        \"07.\",\n        -12.119184494018555\n      ],\n      [\n        \"▁perioadă\",\n        -12.119257926940918\n      ],\n      [\n        \"▁Wunsch\",\n        -12.11925983428955\n      ],\n      [\n        \"▁joi\",\n        -12.119423866271973\n      ],\n      [\n        \"▁$25\",\n        -12.119482040405273\n      ],\n      [\n        \"▁uploaded\",\n        -12.11952018737793\n      ],\n      [\n        \"▁hobby\",\n        -12.119633674621582\n      ],\n      [\n        \"▁septembrie\",\n        -12.119633674621582\n      ],\n      [\n        \"▁Dimension\",\n        -12.119634628295898\n      ],\n      [\n        \"▁domeniu\",\n        -12.119661331176758\n      ],\n      [\n        \"▁Tourism\",\n        -12.119747161865234\n      ],\n      [\n        \"▁fais\",\n        -12.119800567626953\n      ],\n      [\n        \"aches\",\n        -12.119919776916504\n      ],\n      [\n        \"neck\",\n        -12.119969367980957\n      ],\n      [\n        \"▁Chip\",\n        -12.119982719421387\n      ],\n      [\n        \"▁Tisch\",\n        -12.1199951171875\n      ],\n      [\n        \"▁Pai\",\n        -12.120006561279297\n      ],\n      [\n        \"▁Butter\",\n        -12.120083808898926\n      ],\n      [\n        \"▁altor\",\n        -12.120133399963379\n      ],\n      [\n        \"cultural\",\n        -12.120182991027832\n      ],\n      [\n        \"▁bases\",\n        -12.12028980255127\n      ],\n      [\n        \"▁Christopher\",\n        -12.120396614074707\n      ],\n      [\n        \"Kindle\",\n        -12.120401382446289\n      ],\n      [\n        \"▁bathrooms\",\n        -12.12049388885498\n      ],\n      [\n        \"▁civilian\",\n        -12.12052059173584\n      ],\n      [\n        \"▁Architecture\",\n        -12.12058162689209\n      ],\n      [\n        \"heiten\",\n        -12.120641708374023\n      ],\n      [\n        \"otte\",\n        -12.120763778686523\n      ],\n      [\n        \"ри\",\n        -12.120784759521484\n      ],\n      [\n        \"wash\",\n        -12.120792388916016\n      ],\n      [\n        \"▁evenimente\",\n        -12.12086296081543\n      ],\n      [\n        \"lade\",\n        -12.121132850646973\n      ],\n      [\n        \"▁ermöglicht\",\n        -12.121140480041504\n      ],\n      [\n        \"Port\",\n        -12.121149063110352\n      ],\n      [\n        \"▁Horn\",\n        -12.12119197845459\n      ],\n      [\n        \"▁Housing\",\n        -12.121232032775879\n      ],\n      [\n        \"▁Profit\",\n        -12.121304512023926\n      ],\n      [\n        \"▁stressed\",\n        -12.12136459350586\n      ],\n      [\n        \"▁70%\",\n        -12.121431350708008\n      ],\n      [\n        \"laying\",\n        -12.121458053588867\n      ],\n      [\n        \"▁specialize\",\n        -12.121490478515625\n      ],\n      [\n        \"▁Published\",\n        -12.121519088745117\n      ],\n      [\n        \"corp\",\n        -12.121554374694824\n      ],\n      [\n        \"▁revision\",\n        -12.121611595153809\n      ],\n      [\n        \"▁sail\",\n        -12.121804237365723\n      ],\n      [\n        \"courtesy\",\n        -12.121909141540527\n      ],\n      [\n        \"tax\",\n        -12.1219482421875\n      ],\n      [\n        \"▁perfekt\",\n        -12.122018814086914\n      ],\n      [\n        \"▁Risk\",\n        -12.122088432312012\n      ],\n      [\n        \"▁chaleur\",\n        -12.122129440307617\n      ],\n      [\n        \"ych\",\n        -12.122132301330566\n      ],\n      [\n        \"▁spine\",\n        -12.12218189239502\n      ],\n      [\n        \"▁holders\",\n        -12.122264862060547\n      ],\n      [\n        \"▁Speaking\",\n        -12.122271537780762\n      ],\n      [\n        \"▁Bernard\",\n        -12.122400283813477\n      ],\n      [\n        \"incarc\",\n        -12.122532844543457\n      ],\n      [\n        \"shalb\",\n        -12.122639656066895\n      ],\n      [\n        \"Potrivit\",\n        -12.12264633178711\n      ],\n      [\n        \"arising\",\n        -12.122654914855957\n      ],\n      [\n        \"▁kingdom\",\n        -12.122665405273438\n      ],\n      [\n        \"▁potato\",\n        -12.122766494750977\n      ],\n      [\n        \"▁promoted\",\n        -12.122814178466797\n      ],\n      [\n        \"▁judges\",\n        -12.1228609085083\n      ],\n      [\n        \"▁naturelle\",\n        -12.122992515563965\n      ],\n      [\n        \"▁Kindern\",\n        -12.123022079467773\n      ],\n      [\n        \"schicht\",\n        -12.123047828674316\n      ],\n      [\n        \"▁Drag\",\n        -12.123066902160645\n      ],\n      [\n        \"atta\",\n        -12.123132705688477\n      ],\n      [\n        \"soient\",\n        -12.123249053955078\n      ],\n      [\n        \"INS\",\n        -12.12336540222168\n      ],\n      [\n        \"▁legislative\",\n        -12.123642921447754\n      ],\n      [\n        \"▁teens\",\n        -12.123785018920898\n      ],\n      [\n        \"▁Fotos\",\n        -12.123842239379883\n      ],\n      [\n        \"▁illustrations\",\n        -12.12392520904541\n      ],\n      [\n        \"möglichkeiten\",\n        -12.12415599822998\n      ],\n      [\n        \"Votre\",\n        -12.124194145202637\n      ],\n      [\n        \"▁tarif\",\n        -12.124195098876953\n      ],\n      [\n        \"cli\",\n        -12.124488830566406\n      ],\n      [\n        \"▁landlord\",\n        -12.12473201751709\n      ],\n      [\n        \"cine\",\n        -12.124743461608887\n      ],\n      [\n        \"▁bot\",\n        -12.124798774719238\n      ],\n      [\n        \"enhancing\",\n        -12.12491226196289\n      ],\n      [\n        \"▁März\",\n        -12.12491226196289\n      ],\n      [\n        \"▁succès\",\n        -12.125106811523438\n      ],\n      [\n        \"▁disclose\",\n        -12.125120162963867\n      ],\n      [\n        \"▁Geräte\",\n        -12.125321388244629\n      ],\n      [\n        \"▁Magn\",\n        -12.125422477722168\n      ],\n      [\n        \"dessous\",\n        -12.12580680847168\n      ],\n      [\n        \"▁miracle\",\n        -12.125862121582031\n      ],\n      [\n        \"▁travailler\",\n        -12.125933647155762\n      ],\n      [\n        \"▁herb\",\n        -12.125945091247559\n      ],\n      [\n        \"-01\",\n        -12.126049041748047\n      ],\n      [\n        \"litre\",\n        -12.126104354858398\n      ],\n      [\n        \"▁tău\",\n        -12.126120567321777\n      ],\n      [\n        \"ACC\",\n        -12.126190185546875\n      ],\n      [\n        \"▁diminu\",\n        -12.126275062561035\n      ],\n      [\n        \"itzer\",\n        -12.126317024230957\n      ],\n      [\n        \"▁personenbezogen\",\n        -12.126395225524902\n      ],\n      [\n        \"▁Pure\",\n        -12.126436233520508\n      ],\n      [\n        \"▁influences\",\n        -12.12668228149414\n      ],\n      [\n        \"ană\",\n        -12.126765251159668\n      ],\n      [\n        \"▁proposer\",\n        -12.126856803894043\n      ],\n      [\n        \"▁longest\",\n        -12.12692642211914\n      ],\n      [\n        \"euses\",\n        -12.127080917358398\n      ],\n      [\n        \"/1\",\n        -12.127487182617188\n      ],\n      [\n        \"hafte\",\n        -12.127716064453125\n      ],\n      [\n        \"▁Dich\",\n        -12.127761840820312\n      ],\n      [\n        \"▁candle\",\n        -12.128026962280273\n      ],\n      [\n        \"ouche\",\n        -12.128191947937012\n      ],\n      [\n        \"installation\",\n        -12.128241539001465\n      ],\n      [\n        \"▁Includes\",\n        -12.128280639648438\n      ],\n      [\n        \"▁entfernt\",\n        -12.12831974029541\n      ],\n      [\n        \"traf\",\n        -12.128499031066895\n      ],\n      [\n        \"▁None\",\n        -12.128508567810059\n      ],\n      [\n        \"▁produc\",\n        -12.128510475158691\n      ],\n      [\n        \"held\",\n        -12.128519058227539\n      ],\n      [\n        \"graphic\",\n        -12.128531455993652\n      ],\n      [\n        \"▁demographic\",\n        -12.128584861755371\n      ],\n      [\n        \"ingham\",\n        -12.1287841796875\n      ],\n      [\n        \"schul\",\n        -12.128812789916992\n      ],\n      [\n        \"▁sneak\",\n        -12.128843307495117\n      ],\n      [\n        \"laub\",\n        -12.128889083862305\n      ],\n      [\n        \"▁thickness\",\n        -12.12911605834961\n      ],\n      [\n        \"▁killer\",\n        -12.129297256469727\n      ],\n      [\n        \"▁entsprechende\",\n        -12.129344940185547\n      ],\n      [\n        \"▁theft\",\n        -12.129396438598633\n      ],\n      [\n        \"▁Jerusalem\",\n        -12.129457473754883\n      ],\n      [\n        \"Adapt\",\n        -12.129495620727539\n      ],\n      [\n        \"▁updating\",\n        -12.129497528076172\n      ],\n      [\n        \"tete\",\n        -12.12954330444336\n      ],\n      [\n        \"▁warming\",\n        -12.129701614379883\n      ],\n      [\n        \"anlage\",\n        -12.129739761352539\n      ],\n      [\n        \"▁lenders\",\n        -12.129814147949219\n      ],\n      [\n        \"mobile\",\n        -12.130008697509766\n      ],\n      [\n        \"▁Package\",\n        -12.130080223083496\n      ],\n      [\n        \"▁Volume\",\n        -12.130152702331543\n      ],\n      [\n        \"---\",\n        -12.130167007446289\n      ],\n      [\n        \"▁Others\",\n        -12.130173683166504\n      ],\n      [\n        \"content\",\n        -12.130188941955566\n      ],\n      [\n        \"tement\",\n        -12.130253791809082\n      ],\n      [\n        \"bildet\",\n        -12.13027572631836\n      ],\n      [\n        \"▁washer\",\n        -12.13053035736084\n      ],\n      [\n        \"▁freelance\",\n        -12.130623817443848\n      ],\n      [\n        \"▁fein\",\n        -12.130753517150879\n      ],\n      [\n        \"▁catering\",\n        -12.130851745605469\n      ],\n      [\n        \"▁warmth\",\n        -12.130911827087402\n      ],\n      [\n        \"▁Month\",\n        -12.131103515625\n      ],\n      [\n        \"▁Federation\",\n        -12.131134033203125\n      ],\n      [\n        \"▁editorial\",\n        -12.13121223449707\n      ],\n      [\n        \"▁Shopping\",\n        -12.131241798400879\n      ],\n      [\n        \"▁efort\",\n        -12.131296157836914\n      ],\n      [\n        \"▁damp\",\n        -12.131314277648926\n      ],\n      [\n        \"▁declined\",\n        -12.131332397460938\n      ],\n      [\n        \"▁1978\",\n        -12.13135051727295\n      ],\n      [\n        \"6,000\",\n        -12.131355285644531\n      ],\n      [\n        \"location\",\n        -12.131551742553711\n      ],\n      [\n        \"▁blogger\",\n        -12.131572723388672\n      ],\n      [\n        \"▁goodness\",\n        -12.131826400756836\n      ],\n      [\n        \"▁Purchase\",\n        -12.132119178771973\n      ],\n      [\n        \"▁suspended\",\n        -12.132159233093262\n      ],\n      [\n        \"▁assessed\",\n        -12.132201194763184\n      ],\n      [\n        \"rada\",\n        -12.132286071777344\n      ],\n      [\n        \"▁Lac\",\n        -12.132291793823242\n      ],\n      [\n        \"▁angeboten\",\n        -12.13235092163086\n      ],\n      [\n        \"▁Wetter\",\n        -12.132370948791504\n      ],\n      [\n        \"ores\",\n        -12.13243579864502\n      ],\n      [\n        \"▁fourni\",\n        -12.132476806640625\n      ],\n      [\n        \"▁retire\",\n        -12.13269329071045\n      ],\n      [\n        \"▁Baptist\",\n        -12.132741928100586\n      ],\n      [\n        \"▁Saison\",\n        -12.13277530670166\n      ],\n      [\n        \"Bar\",\n        -12.132794380187988\n      ],\n      [\n        \"▁dossier\",\n        -12.132979393005371\n      ],\n      [\n        \"brow\",\n        -12.133044242858887\n      ],\n      [\n        \"▁Kaffee\",\n        -12.133071899414062\n      ],\n      [\n        \"-25\",\n        -12.133463859558105\n      ],\n      [\n        \"▁festivals\",\n        -12.133599281311035\n      ],\n      [\n        \"▁sellers\",\n        -12.133716583251953\n      ],\n      [\n        \"Ü\",\n        -12.13393783569336\n      ],\n      [\n        \"▁publisher\",\n        -12.133960723876953\n      ],\n      [\n        \"▁Designs\",\n        -12.133970260620117\n      ],\n      [\n        \"▁putut\",\n        -12.13400936126709\n      ],\n      [\n        \"▁Built\",\n        -12.134417533874512\n      ],\n      [\n        \"▁recreational\",\n        -12.134476661682129\n      ],\n      [\n        \"▁european\",\n        -12.134514808654785\n      ],\n      [\n        \"▁binary\",\n        -12.134631156921387\n      ],\n      [\n        \"▁Nieder\",\n        -12.134764671325684\n      ],\n      [\n        \"taking\",\n        -12.1348237991333\n      ],\n      [\n        \"▁Lots\",\n        -12.13494873046875\n      ],\n      [\n        \"▁recognised\",\n        -12.135031700134277\n      ],\n      [\n        \"ssant\",\n        -12.135063171386719\n      ],\n      [\n        \"ITE\",\n        -12.135271072387695\n      ],\n      [\n        \"oom\",\n        -12.135298728942871\n      ],\n      [\n        \"▁Kre\",\n        -12.135310173034668\n      ],\n      [\n        \"▁pipes\",\n        -12.135631561279297\n      ],\n      [\n        \"▁hinge\",\n        -12.135653495788574\n      ],\n      [\n        \"▁enterprises\",\n        -12.135664939880371\n      ],\n      [\n        \"▁texts\",\n        -12.13583755493164\n      ],\n      [\n        \"Organiz\",\n        -12.136080741882324\n      ],\n      [\n        \"▁suivre\",\n        -12.136124610900879\n      ],\n      [\n        \"noc\",\n        -12.136157989501953\n      ],\n      [\n        \"fair\",\n        -12.136194229125977\n      ],\n      [\n        \"▁darkness\",\n        -12.136305809020996\n      ],\n      [\n        \"▁Whi\",\n        -12.13631534576416\n      ],\n      [\n        \"natural\",\n        -12.136321067810059\n      ],\n      [\n        \"Bas\",\n        -12.136422157287598\n      ],\n      [\n        \"▁tribute\",\n        -12.136443138122559\n      ],\n      [\n        \"▁Naţional\",\n        -12.136573791503906\n      ],\n      [\n        \"hara\",\n        -12.136622428894043\n      ],\n      [\n        \"▁catégorie\",\n        -12.136697769165039\n      ],\n      [\n        \"▁Schedule\",\n        -12.136698722839355\n      ],\n      [\n        \"▁lernen\",\n        -12.13671875\n      ],\n      [\n        \"▁Plastic\",\n        -12.136725425720215\n      ],\n      [\n        \"▁giveaway\",\n        -12.13675594329834\n      ],\n      [\n        \"▁Ideen\",\n        -12.136906623840332\n      ],\n      [\n        \"▁circa\",\n        -12.13718032836914\n      ],\n      [\n        \"▁lice\",\n        -12.137242317199707\n      ],\n      [\n        \"▁Meinung\",\n        -12.137264251708984\n      ],\n      [\n        \"▁beside\",\n        -12.137566566467285\n      ],\n      [\n        \"▁vazut\",\n        -12.137673377990723\n      ],\n      [\n        \"strom\",\n        -12.137749671936035\n      ],\n      [\n        \"boro\",\n        -12.137775421142578\n      ],\n      [\n        \"▁Soon\",\n        -12.137796401977539\n      ],\n      [\n        \"dozens\",\n        -12.137896537780762\n      ],\n      [\n        \"▁Arena\",\n        -12.137943267822266\n      ],\n      [\n        \"▁viața\",\n        -12.137989044189453\n      ],\n      [\n        \"▁Impact\",\n        -12.138082504272461\n      ],\n      [\n        \"current\",\n        -12.138106346130371\n      ],\n      [\n        \"FM\",\n        -12.138117790222168\n      ],\n      [\n        \"▁coil\",\n        -12.138657569885254\n      ],\n      [\n        \"gold\",\n        -12.138679504394531\n      ],\n      [\n        \"▁spate\",\n        -12.138679504394531\n      ],\n      [\n        \"1.4\",\n        -12.13875675201416\n      ],\n      [\n        \"solution\",\n        -12.138769149780273\n      ],\n      [\n        \"▁Wayne\",\n        -12.138835906982422\n      ],\n      [\n        \"▁queen\",\n        -12.138898849487305\n      ],\n      [\n        \"illion\",\n        -12.139022827148438\n      ],\n      [\n        \"greifen\",\n        -12.139127731323242\n      ],\n      [\n        \"▁Bil\",\n        -12.139174461364746\n      ],\n      [\n        \"rote\",\n        -12.139185905456543\n      ],\n      [\n        \"END\",\n        -12.13918685913086\n      ],\n      [\n        \"äl\",\n        -12.139206886291504\n      ],\n      [\n        \"▁reçu\",\n        -12.139378547668457\n      ],\n      [\n        \"flower\",\n        -12.139495849609375\n      ],\n      [\n        \"▁draws\",\n        -12.139519691467285\n      ],\n      [\n        \"plant\",\n        -12.139605522155762\n      ],\n      [\n        \"2010\",\n        -12.139702796936035\n      ],\n      [\n        \"▁oper\",\n        -12.139762878417969\n      ],\n      [\n        \"▁conserve\",\n        -12.139777183532715\n      ],\n      [\n        \"▁sprinkle\",\n        -12.13984203338623\n      ],\n      [\n        \"mode\",\n        -12.139924049377441\n      ],\n      [\n        \"▁lifting\",\n        -12.139941215515137\n      ],\n      [\n        \"▁Institution\",\n        -12.139951705932617\n      ],\n      [\n        \"Când\",\n        -12.14001750946045\n      ],\n      [\n        \"Aus\",\n        -12.140048027038574\n      ],\n      [\n        \"▁fears\",\n        -12.140054702758789\n      ],\n      [\n        \"▁appointments\",\n        -12.140079498291016\n      ],\n      [\n        \"oarele\",\n        -12.140162467956543\n      ],\n      [\n        \"▁duck\",\n        -12.140193939208984\n      ],\n      [\n        \"▁stadium\",\n        -12.140213012695312\n      ],\n      [\n        \"▁vezi\",\n        -12.140227317810059\n      ],\n      [\n        \"▁lap\",\n        -12.140315055847168\n      ],\n      [\n        \"▁proceeds\",\n        -12.140382766723633\n      ],\n      [\n        \"geschlossen\",\n        -12.140412330627441\n      ],\n      [\n        \"▁tren\",\n        -12.140478134155273\n      ],\n      [\n        \"VS\",\n        -12.140536308288574\n      ],\n      [\n        \"▁vais\",\n        -12.140800476074219\n      ],\n      [\n        \"ținut\",\n        -12.140859603881836\n      ],\n      [\n        \"▁Concert\",\n        -12.140928268432617\n      ],\n      [\n        \"▁planting\",\n        -12.141008377075195\n      ],\n      [\n        \"▁honour\",\n        -12.141069412231445\n      ],\n      [\n        \"▁gras\",\n        -12.141071319580078\n      ],\n      [\n        \"woo\",\n        -12.141092300415039\n      ],\n      [\n        \"▁Hero\",\n        -12.141282081604004\n      ],\n      [\n        \"▁stimulate\",\n        -12.14134407043457\n      ],\n      [\n        \"▁überhaupt\",\n        -12.141426086425781\n      ],\n      [\n        \"▁bounce\",\n        -12.14148235321045\n      ],\n      [\n        \"oodle\",\n        -12.14151382446289\n      ],\n      [\n        \"▁packs\",\n        -12.141576766967773\n      ],\n      [\n        \"▁Poker\",\n        -12.14158821105957\n      ],\n      [\n        \"▁acea\",\n        -12.141684532165527\n      ],\n      [\n        \"▁parish\",\n        -12.141754150390625\n      ],\n      [\n        \"-24\",\n        -12.141766548156738\n      ],\n      [\n        \"▁iTunes\",\n        -12.141874313354492\n      ],\n      [\n        \"▁lumière\",\n        -12.141948699951172\n      ],\n      [\n        \"third\",\n        -12.142024993896484\n      ],\n      [\n        \"▁dynamics\",\n        -12.142038345336914\n      ],\n      [\n        \"Unless\",\n        -12.142162322998047\n      ],\n      [\n        \"▁immense\",\n        -12.142416000366211\n      ],\n      [\n        \"▁Sec\",\n        -12.142781257629395\n      ],\n      [\n        \"lois\",\n        -12.143009185791016\n      ],\n      [\n        \"époque\",\n        -12.14302921295166\n      ],\n      [\n        \"NB\",\n        -12.143139839172363\n      ],\n      [\n        \"written\",\n        -12.143210411071777\n      ],\n      [\n        \"▁logement\",\n        -12.143226623535156\n      ],\n      [\n        \"submitting\",\n        -12.143295288085938\n      ],\n      [\n        \"▁Quand\",\n        -12.14331340789795\n      ],\n      [\n        \"▁foi\",\n        -12.143322944641113\n      ],\n      [\n        \"▁catalogue\",\n        -12.143351554870605\n      ],\n      [\n        \"nova\",\n        -12.14343547821045\n      ],\n      [\n        \"▁prezentat\",\n        -12.143527030944824\n      ],\n      [\n        \"▁tart\",\n        -12.143877983093262\n      ],\n      [\n        \"те\",\n        -12.143912315368652\n      ],\n      [\n        \"hack\",\n        -12.143916130065918\n      ],\n      [\n        \"▁Politic\",\n        -12.144003868103027\n      ],\n      [\n        \"▁18,\",\n        -12.144048690795898\n      ],\n      [\n        \"▁ignored\",\n        -12.144145965576172\n      ],\n      [\n        \"▁spoon\",\n        -12.144245147705078\n      ],\n      [\n        \"▁Joy\",\n        -12.144280433654785\n      ],\n      [\n        \"▁reside\",\n        -12.144482612609863\n      ],\n      [\n        \".99\",\n        -12.144488334655762\n      ],\n      [\n        \"lytic\",\n        -12.144625663757324\n      ],\n      [\n        \"▁bogat\",\n        -12.144643783569336\n      ],\n      [\n        \"▁nurses\",\n        -12.144845008850098\n      ],\n      [\n        \"▁funcţi\",\n        -12.145029067993164\n      ],\n      [\n        \"▁produselor\",\n        -12.145038604736328\n      ],\n      [\n        \"▁Associates\",\n        -12.145069122314453\n      ],\n      [\n        \"Est\",\n        -12.14511489868164\n      ],\n      [\n        \"▁peanut\",\n        -12.145187377929688\n      ],\n      [\n        \"▁résultat\",\n        -12.145257949829102\n      ],\n      [\n        \"08.\",\n        -12.145424842834473\n      ],\n      [\n        \"▁Astro\",\n        -12.145439147949219\n      ],\n      [\n        \"▁personnelle\",\n        -12.145527839660645\n      ],\n      [\n        \"320\",\n        -12.145668983459473\n      ],\n      [\n        \"▁Grab\",\n        -12.145748138427734\n      ],\n      [\n        \"éco\",\n        -12.145801544189453\n      ],\n      [\n        \"▁clasic\",\n        -12.145857810974121\n      ],\n      [\n        \"offre\",\n        -12.14588451385498\n      ],\n      [\n        \"▁idee\",\n        -12.14589786529541\n      ],\n      [\n        \"▁cheat\",\n        -12.146259307861328\n      ],\n      [\n        \"▁Flug\",\n        -12.146286964416504\n      ],\n      [\n        \"▁1500\",\n        -12.146413803100586\n      ],\n      [\n        \"▁kurze\",\n        -12.14643383026123\n      ],\n      [\n        \"With\",\n        -12.146512985229492\n      ],\n      [\n        \"▁Half\",\n        -12.146575927734375\n      ],\n      [\n        \"▁disciplines\",\n        -12.146642684936523\n      ],\n      [\n        \"sorption\",\n        -12.14669132232666\n      ],\n      [\n        \"▁greutate\",\n        -12.146927833557129\n      ],\n      [\n        \"mä\",\n        -12.146940231323242\n      ],\n      [\n        \"▁Literatur\",\n        -12.146956443786621\n      ],\n      [\n        \"3/\",\n        -12.147016525268555\n      ],\n      [\n        \"4.0\",\n        -12.147095680236816\n      ],\n      [\n        \"▁déco\",\n        -12.147119522094727\n      ],\n      [\n        \"▁Fuß\",\n        -12.147233963012695\n      ],\n      [\n        \"▁Deutsche\",\n        -12.147289276123047\n      ],\n      [\n        \"▁abundance\",\n        -12.14746379852295\n      ],\n      [\n        \"▁Luther\",\n        -12.14750862121582\n      ],\n      [\n        \"▁nutritional\",\n        -12.147562980651855\n      ],\n      [\n        \"▁Jude\",\n        -12.147687911987305\n      ],\n      [\n        \"AY\",\n        -12.14786148071289\n      ],\n      [\n        \"▁chore\",\n        -12.147916793823242\n      ],\n      [\n        \"▁Kro\",\n        -12.148006439208984\n      ],\n      [\n        \"▁alin\",\n        -12.14801025390625\n      ],\n      [\n        \"lösung\",\n        -12.148030281066895\n      ],\n      [\n        \"▁geworden\",\n        -12.148238182067871\n      ],\n      [\n        \"▁sociaux\",\n        -12.148255348205566\n      ],\n      [\n        \"▁Spark\",\n        -12.1486177444458\n      ],\n      [\n        \"▁phenomenon\",\n        -12.148624420166016\n      ],\n      [\n        \"ICA\",\n        -12.148805618286133\n      ],\n      [\n        \"▁Ran\",\n        -12.148836135864258\n      ],\n      [\n        \"▁Schwarz\",\n        -12.148959159851074\n      ],\n      [\n        \"▁1983\",\n        -12.148985862731934\n      ],\n      [\n        \"ет\",\n        -12.148990631103516\n      ],\n      [\n        \"möglich\",\n        -12.149084091186523\n      ],\n      [\n        \"vocation\",\n        -12.149087905883789\n      ],\n      [\n        \"▁Organic\",\n        -12.14926815032959\n      ],\n      [\n        \"Oh\",\n        -12.149408340454102\n      ],\n      [\n        \"▁blockchain\",\n        -12.149422645568848\n      ],\n      [\n        \"▁Bă\",\n        -12.149515151977539\n      ],\n      [\n        \"▁Bass\",\n        -12.14953899383545\n      ],\n      [\n        \"enie\",\n        -12.149687767028809\n      ],\n      [\n        \"▁rêve\",\n        -12.149807929992676\n      ],\n      [\n        \"▁Rap\",\n        -12.149986267089844\n      ],\n      [\n        \"▁democratic\",\n        -12.150044441223145\n      ],\n      [\n        \"▁Chart\",\n        -12.150167465209961\n      ],\n      [\n        \"▁Voi\",\n        -12.150189399719238\n      ],\n      [\n        \"process\",\n        -12.150263786315918\n      ],\n      [\n        \"▁preach\",\n        -12.150389671325684\n      ],\n      [\n        \"tient\",\n        -12.150456428527832\n      ],\n      [\n        \"▁Train\",\n        -12.150468826293945\n      ],\n      [\n        \"▁Reihe\",\n        -12.150472640991211\n      ],\n      [\n        \"help\",\n        -12.150514602661133\n      ],\n      [\n        \"1.6\",\n        -12.150547981262207\n      ],\n      [\n        \"▁cazuri\",\n        -12.150547981262207\n      ],\n      [\n        \"▁chap\",\n        -12.150559425354004\n      ],\n      [\n        \"aktiv\",\n        -12.150632858276367\n      ],\n      [\n        \"▁2006.\",\n        -12.15079116821289\n      ],\n      [\n        \"iene\",\n        -12.150849342346191\n      ],\n      [\n        \"▁BBQ\",\n        -12.150969505310059\n      ],\n      [\n        \"dauer\",\n        -12.151028633117676\n      ],\n      [\n        \"2).\",\n        -12.151226997375488\n      ],\n      [\n        \"▁Monat\",\n        -12.151277542114258\n      ],\n      [\n        \"Generally\",\n        -12.151285171508789\n      ],\n      [\n        \"▁bracelet\",\n        -12.151336669921875\n      ],\n      [\n        \"▁cartoon\",\n        -12.151349067687988\n      ],\n      [\n        \"▁pui\",\n        -12.151488304138184\n      ],\n      [\n        \"temp\",\n        -12.151506423950195\n      ],\n      [\n        \"▁Particip\",\n        -12.151555061340332\n      ],\n      [\n        \"▁dumneavoastră\",\n        -12.151725769042969\n      ],\n      [\n        \"▁Gin\",\n        -12.151824951171875\n      ],\n      [\n        \"iunile\",\n        -12.151829719543457\n      ],\n      [\n        \"reise\",\n        -12.151849746704102\n      ],\n      [\n        \"▁einzige\",\n        -12.15189266204834\n      ],\n      [\n        \"ANCE\",\n        -12.15192985534668\n      ],\n      [\n        \"▁humble\",\n        -12.151951789855957\n      ],\n      [\n        \"claim\",\n        -12.152093887329102\n      ],\n      [\n        \"LV\",\n        -12.152143478393555\n      ],\n      [\n        \"▁confiance\",\n        -12.152270317077637\n      ],\n      [\n        \"▁Trading\",\n        -12.152535438537598\n      ],\n      [\n        \"▁Fabric\",\n        -12.152770042419434\n      ],\n      [\n        \"▁Duke\",\n        -12.152851104736328\n      ],\n      [\n        \"spieler\",\n        -12.152937889099121\n      ],\n      [\n        \"▁reject\",\n        -12.152987480163574\n      ],\n      [\n        \"▁crise\",\n        -12.153170585632324\n      ],\n      [\n        \"▁borders\",\n        -12.153196334838867\n      ],\n      [\n        \"▁Vehicle\",\n        -12.153279304504395\n      ],\n      [\n        \"zeiten\",\n        -12.153481483459473\n      ],\n      [\n        \"enrolled\",\n        -12.153514862060547\n      ],\n      [\n        \"venue\",\n        -12.153555870056152\n      ],\n      [\n        \"▁forests\",\n        -12.153564453125\n      ],\n      [\n        \"vascular\",\n        -12.15358829498291\n      ],\n      [\n        \"▁phrases\",\n        -12.153661727905273\n      ],\n      [\n        \"▁receptor\",\n        -12.15368366241455\n      ],\n      [\n        \"schied\",\n        -12.153687477111816\n      ],\n      [\n        \"▁soirée\",\n        -12.153785705566406\n      ],\n      [\n        \"▁partener\",\n        -12.153987884521484\n      ],\n      [\n        \"▁Jobs\",\n        -12.15417194366455\n      ],\n      [\n        \"▁segments\",\n        -12.154216766357422\n      ],\n      [\n        \"▁violate\",\n        -12.154438972473145\n      ],\n      [\n        \"▁viable\",\n        -12.154500007629395\n      ],\n      [\n        \"▁encountered\",\n        -12.154533386230469\n      ],\n      [\n        \"▁travelers\",\n        -12.154552459716797\n      ],\n      [\n        \"▁împ\",\n        -12.154679298400879\n      ],\n      [\n        \"▁convince\",\n        -12.154693603515625\n      ],\n      [\n        \"▁mailing\",\n        -12.154693603515625\n      ],\n      [\n        \"▁Zahn\",\n        -12.154698371887207\n      ],\n      [\n        \"attend\",\n        -12.15477466583252\n      ],\n      [\n        \"▁eBay\",\n        -12.154836654663086\n      ],\n      [\n        \"▁Emergency\",\n        -12.154844284057617\n      ],\n      [\n        \"wirtschaft\",\n        -12.154882431030273\n      ],\n      [\n        \"▁scholars\",\n        -12.154947280883789\n      ],\n      [\n        \"▁considerably\",\n        -12.155118942260742\n      ],\n      [\n        \"▁combo\",\n        -12.1551513671875\n      ],\n      [\n        \"hiver\",\n        -12.155198097229004\n      ],\n      [\n        \"▁mysterious\",\n        -12.15522575378418\n      ],\n      [\n        \"▁Degree\",\n        -12.155234336853027\n      ],\n      [\n        \"▁fate\",\n        -12.155242919921875\n      ],\n      [\n        \"▁transplant\",\n        -12.155281066894531\n      ],\n      [\n        \"▁samedi\",\n        -12.155400276184082\n      ],\n      [\n        \"unit\",\n        -12.155519485473633\n      ],\n      [\n        \"▁moyenne\",\n        -12.155611991882324\n      ],\n      [\n        \"▁Liverpool\",\n        -12.155614852905273\n      ],\n      [\n        \"▁Champions\",\n        -12.155728340148926\n      ],\n      [\n        \"zzle\",\n        -12.155824661254883\n      ],\n      [\n        \"▁arena\",\n        -12.156228065490723\n      ],\n      [\n        \"▁Pipe\",\n        -12.15633487701416\n      ],\n      [\n        \"▁waterproof\",\n        -12.156356811523438\n      ],\n      [\n        \"▁eternal\",\n        -12.156463623046875\n      ],\n      [\n        \"Whenever\",\n        -12.156503677368164\n      ],\n      [\n        \"▁Hop\",\n        -12.156535148620605\n      ],\n      [\n        \"▁Betrieb\",\n        -12.156816482543945\n      ],\n      [\n        \"gne\",\n        -12.15692138671875\n      ],\n      [\n        \"▁spe\",\n        -12.156975746154785\n      ],\n      [\n        \"▁Corner\",\n        -12.157078742980957\n      ],\n      [\n        \"▁devenir\",\n        -12.157118797302246\n      ],\n      [\n        \"ambiance\",\n        -12.157144546508789\n      ],\n      [\n        \"▁Graham\",\n        -12.157200813293457\n      ],\n      [\n        \"▁desires\",\n        -12.157289505004883\n      ],\n      [\n        \"▁Applications\",\n        -12.157291412353516\n      ],\n      [\n        \"▁genutzt\",\n        -12.157477378845215\n      ],\n      [\n        \"tek\",\n        -12.157612800598145\n      ],\n      [\n        \"▁Career\",\n        -12.157641410827637\n      ],\n      [\n        \"▁staple\",\n        -12.157695770263672\n      ],\n      [\n        \"▁Dodge\",\n        -12.157817840576172\n      ],\n      [\n        \"▁strictly\",\n        -12.157889366149902\n      ],\n      [\n        \"▁Gruppen\",\n        -12.157952308654785\n      ],\n      [\n        \"▁Finanz\",\n        -12.157981872558594\n      ],\n      [\n        \"▁sporting\",\n        -12.15809440612793\n      ],\n      [\n        \"▁Wieder\",\n        -12.158127784729004\n      ],\n      [\n        \"anny\",\n        -12.158208847045898\n      ],\n      [\n        \"▁bucura\",\n        -12.158233642578125\n      ],\n      [\n        \"▁Pest\",\n        -12.15824031829834\n      ],\n      [\n        \"▁circles\",\n        -12.158246994018555\n      ],\n      [\n        \"▁richtige\",\n        -12.158309936523438\n      ],\n      [\n        \"▁cycles\",\n        -12.158379554748535\n      ],\n      [\n        \"static\",\n        -12.15845012664795\n      ],\n      [\n        \"lasting\",\n        -12.15847396850586\n      ],\n      [\n        \"▁calcium\",\n        -12.158549308776855\n      ],\n      [\n        \"▁digest\",\n        -12.158697128295898\n      ],\n      [\n        \"Enfin\",\n        -12.158865928649902\n      ],\n      [\n        \"▁stressful\",\n        -12.158951759338379\n      ],\n      [\n        \"▁schemes\",\n        -12.158981323242188\n      ],\n      [\n        \"▁décision\",\n        -12.158987045288086\n      ],\n      [\n        \"▁comercial\",\n        -12.15907096862793\n      ],\n      [\n        \"işti\",\n        -12.159098625183105\n      ],\n      [\n        \"▁Comic\",\n        -12.15910816192627\n      ],\n      [\n        \"▁extensions\",\n        -12.159140586853027\n      ],\n      [\n        \"▁Sieg\",\n        -12.159168243408203\n      ],\n      [\n        \"▁pine\",\n        -12.15919017791748\n      ],\n      [\n        \"ieß\",\n        -12.159272193908691\n      ],\n      [\n        \"▁Images\",\n        -12.159427642822266\n      ],\n      [\n        \"▁Mensch\",\n        -12.159668922424316\n      ],\n      [\n        \"Pap\",\n        -12.159773826599121\n      ],\n      [\n        \"▁crops\",\n        -12.15994930267334\n      ],\n      [\n        \"▁sheep\",\n        -12.159996032714844\n      ],\n      [\n        \"▁istoric\",\n        -12.160001754760742\n      ],\n      [\n        \"▁Assessment\",\n        -12.160035133361816\n      ],\n      [\n        \"▁mounting\",\n        -12.16035270690918\n      ],\n      [\n        \"wirken\",\n        -12.160469055175781\n      ],\n      [\n        \"▁augment\",\n        -12.160469055175781\n      ],\n      [\n        \"▁picioare\",\n        -12.160542488098145\n      ],\n      [\n        \"organisme\",\n        -12.160590171813965\n      ],\n      [\n        \"▁Monitor\",\n        -12.16060733795166\n      ],\n      [\n        \"▁celles\",\n        -12.160642623901367\n      ],\n      [\n        \"▁Maison\",\n        -12.160709381103516\n      ],\n      [\n        \"notified\",\n        -12.160783767700195\n      ],\n      [\n        \"▁chew\",\n        -12.160831451416016\n      ],\n      [\n        \"▁bleu\",\n        -12.16083812713623\n      ],\n      [\n        \"dow\",\n        -12.160844802856445\n      ],\n      [\n        \"▁Grav\",\n        -12.16097354888916\n      ],\n      [\n        \"▁curtains\",\n        -12.160975456237793\n      ],\n      [\n        \"▁Campus\",\n        -12.161076545715332\n      ],\n      [\n        \"▁controversial\",\n        -12.161087036132812\n      ],\n      [\n        \"▁soutien\",\n        -12.161189079284668\n      ],\n      [\n        \"▁Dell\",\n        -12.1613187789917\n      ],\n      [\n        \"▁instrumental\",\n        -12.161431312561035\n      ],\n      [\n        \"▁Nan\",\n        -12.161514282226562\n      ],\n      [\n        \"▁prom\",\n        -12.161520957946777\n      ],\n      [\n        \"▁spatial\",\n        -12.161523818969727\n      ],\n      [\n        \"Similarly\",\n        -12.161558151245117\n      ],\n      [\n        \"▁Gala\",\n        -12.161601066589355\n      ],\n      [\n        \"ultimul\",\n        -12.16162109375\n      ],\n      [\n        \"▁Vom\",\n        -12.161761283874512\n      ],\n      [\n        \"▁Foot\",\n        -12.161784172058105\n      ],\n      [\n        \"bike\",\n        -12.1618013381958\n      ],\n      [\n        \"▁acids\",\n        -12.161979675292969\n      ],\n      [\n        \"entend\",\n        -12.162002563476562\n      ],\n      [\n        \"ivă\",\n        -12.162040710449219\n      ],\n      [\n        \"▁Weitere\",\n        -12.162124633789062\n      ],\n      [\n        \"▁vitamins\",\n        -12.162131309509277\n      ],\n      [\n        \"▁enhancement\",\n        -12.16234016418457\n      ],\n      [\n        \"▁Cruise\",\n        -12.162367820739746\n      ],\n      [\n        \"assemble\",\n        -12.162385940551758\n      ],\n      [\n        \"▁spécifique\",\n        -12.162459373474121\n      ],\n      [\n        \"affaires\",\n        -12.16261100769043\n      ],\n      [\n        \"▁indispensable\",\n        -12.1626558303833\n      ],\n      [\n        \"▁logistics\",\n        -12.16283130645752\n      ],\n      [\n        \"▁manche\",\n        -12.162919044494629\n      ],\n      [\n        \"▁dealt\",\n        -12.16297435760498\n      ],\n      [\n        \"▁favorable\",\n        -12.163036346435547\n      ],\n      [\n        \"▁unwanted\",\n        -12.163047790527344\n      ],\n      [\n        \"▁handmade\",\n        -12.163065910339355\n      ],\n      [\n        \"▁Regi\",\n        -12.163102149963379\n      ],\n      [\n        \"safe\",\n        -12.163134574890137\n      ],\n      [\n        \"persoanele\",\n        -12.163202285766602\n      ],\n      [\n        \"▁destinat\",\n        -12.163252830505371\n      ],\n      [\n        \"▁Maxi\",\n        -12.163299560546875\n      ],\n      [\n        \"▁salmon\",\n        -12.163454055786133\n      ],\n      [\n        \"wag\",\n        -12.163578033447266\n      ],\n      [\n        \"210\",\n        -12.163769721984863\n      ],\n      [\n        \"▁warned\",\n        -12.163865089416504\n      ],\n      [\n        \"läuft\",\n        -12.16386604309082\n      ],\n      [\n        \"agging\",\n        -12.163931846618652\n      ],\n      [\n        \"▁responsabil\",\n        -12.16398811340332\n      ],\n      [\n        \"▁presse\",\n        -12.164271354675293\n      ],\n      [\n        \"▁amis\",\n        -12.164305686950684\n      ],\n      [\n        \"▁rolls\",\n        -12.164377212524414\n      ],\n      [\n        \"control\",\n        -12.164405822753906\n      ],\n      [\n        \"▁Manufacturer\",\n        -12.164422988891602\n      ],\n      [\n        \"hnen\",\n        -12.164449691772461\n      ],\n      [\n        \"▁buget\",\n        -12.164546012878418\n      ],\n      [\n        \"OW\",\n        -12.16467571258545\n      ],\n      [\n        \"etro\",\n        -12.164745330810547\n      ],\n      [\n        \"▁communauté\",\n        -12.164837837219238\n      ],\n      [\n        \"unci\",\n        -12.164944648742676\n      ],\n      [\n        \"▁Chine\",\n        -12.164952278137207\n      ],\n      [\n        \"combines\",\n        -12.16501235961914\n      ],\n      [\n        \"▁learners\",\n        -12.165046691894531\n      ],\n      [\n        \"STE\",\n        -12.165055274963379\n      ],\n      [\n        \"ckel\",\n        -12.16511344909668\n      ],\n      [\n        \"Service\",\n        -12.165169715881348\n      ],\n      [\n        \"▁veröffentlicht\",\n        -12.165209770202637\n      ],\n      [\n        \"besides\",\n        -12.165266036987305\n      ],\n      [\n        \"getragen\",\n        -12.165349960327148\n      ],\n      [\n        \"▁opponent\",\n        -12.165521621704102\n      ],\n      [\n        \"▁volum\",\n        -12.165533065795898\n      ],\n      [\n        \"▁confusing\",\n        -12.165802001953125\n      ],\n      [\n        \"invasive\",\n        -12.165813446044922\n      ],\n      [\n        \"▁conseils\",\n        -12.165881156921387\n      ],\n      [\n        \"▁vibe\",\n        -12.165928840637207\n      ],\n      [\n        \"View\",\n        -12.166062355041504\n      ],\n      [\n        \"oară\",\n        -12.166086196899414\n      ],\n      [\n        \"Link\",\n        -12.166261672973633\n      ],\n      [\n        \"▁holy\",\n        -12.166261672973633\n      ],\n      [\n        \"▁crema\",\n        -12.16629409790039\n      ],\n      [\n        \"▁Michelle\",\n        -12.166303634643555\n      ],\n      [\n        \"▁Wien\",\n        -12.166383743286133\n      ],\n      [\n        \"▁undertake\",\n        -12.166404724121094\n      ],\n      [\n        \"▁Photograph\",\n        -12.166421890258789\n      ],\n      [\n        \"humain\",\n        -12.16645336151123\n      ],\n      [\n        \"▁Hang\",\n        -12.166545867919922\n      ],\n      [\n        \"designed\",\n        -12.16657829284668\n      ],\n      [\n        \"▁analyses\",\n        -12.166614532470703\n      ],\n      [\n        \"▁compose\",\n        -12.166653633117676\n      ],\n      [\n        \"▁substantially\",\n        -12.166765213012695\n      ],\n      [\n        \"▁marking\",\n        -12.166772842407227\n      ],\n      [\n        \"▁campagne\",\n        -12.166826248168945\n      ],\n      [\n        \"▁$15\",\n        -12.166828155517578\n      ],\n      [\n        \"pharma\",\n        -12.166972160339355\n      ],\n      [\n        \"▁playoff\",\n        -12.1669921875\n      ],\n      [\n        \"▁momentum\",\n        -12.167091369628906\n      ],\n      [\n        \"Temp\",\n        -12.16714096069336\n      ],\n      [\n        \"▁vinegar\",\n        -12.167143821716309\n      ],\n      [\n        \"▁descriptions\",\n        -12.167581558227539\n      ],\n      [\n        \"christ\",\n        -12.167656898498535\n      ],\n      [\n        \"wore\",\n        -12.16773509979248\n      ],\n      [\n        \"ITY\",\n        -12.167768478393555\n      ],\n      [\n        \"stehen\",\n        -12.167771339416504\n      ],\n      [\n        \"▁insulation\",\n        -12.1677827835083\n      ],\n      [\n        \"grav\",\n        -12.167842864990234\n      ],\n      [\n        \"2.2\",\n        -12.167887687683105\n      ],\n      [\n        \"▁Explore\",\n        -12.168028831481934\n      ],\n      [\n        \"▁dye\",\n        -12.168127059936523\n      ],\n      [\n        \"stair\",\n        -12.168155670166016\n      ],\n      [\n        \"artisan\",\n        -12.168207168579102\n      ],\n      [\n        \"▁zoom\",\n        -12.168285369873047\n      ],\n      [\n        \"▁turkey\",\n        -12.168573379516602\n      ],\n      [\n        \"▁locksmith\",\n        -12.168577194213867\n      ],\n      [\n        \"▁sewing\",\n        -12.168610572814941\n      ],\n      [\n        \"▁modeling\",\n        -12.168627738952637\n      ],\n      [\n        \"lied\",\n        -12.16870403289795\n      ],\n      [\n        \"adel\",\n        -12.168773651123047\n      ],\n      [\n        \"▁Going\",\n        -12.168785095214844\n      ],\n      [\n        \"WH\",\n        -12.168798446655273\n      ],\n      [\n        \"▁deserves\",\n        -12.168919563293457\n      ],\n      [\n        \"▁arriving\",\n        -12.168960571289062\n      ],\n      [\n        \"OFF\",\n        -12.169039726257324\n      ],\n      [\n        \"torului\",\n        -12.169109344482422\n      ],\n      [\n        \"ucked\",\n        -12.16921615600586\n      ],\n      [\n        \"▁approached\",\n        -12.169351577758789\n      ],\n      [\n        \"▁élevé\",\n        -12.169354438781738\n      ],\n      [\n        \"▁quotidien\",\n        -12.169416427612305\n      ],\n      [\n        \"▁derzeit\",\n        -12.16942024230957\n      ],\n      [\n        \"nutzt\",\n        -12.169656753540039\n      ],\n      [\n        \"science\",\n        -12.169729232788086\n      ],\n      [\n        \"▁Emma\",\n        -12.169841766357422\n      ],\n      [\n        \"▁builds\",\n        -12.169879913330078\n      ],\n      [\n        \"▁Logo\",\n        -12.169949531555176\n      ],\n      [\n        \"▁clouds\",\n        -12.170061111450195\n      ],\n      [\n        \"inflammatory\",\n        -12.170141220092773\n      ],\n      [\n        \"țiuni\",\n        -12.170199394226074\n      ],\n      [\n        \"▁Cisco\",\n        -12.17025089263916\n      ],\n      [\n        \"▁würden\",\n        -12.170254707336426\n      ],\n      [\n        \"▁Shaw\",\n        -12.170256614685059\n      ],\n      [\n        \"▁Ell\",\n        -12.170266151428223\n      ],\n      [\n        \"avance\",\n        -12.1703519821167\n      ],\n      [\n        \"anglais\",\n        -12.170365333557129\n      ],\n      [\n        \"weil\",\n        -12.170368194580078\n      ],\n      [\n        \"▁singura\",\n        -12.170464515686035\n      ],\n      [\n        \"ACK\",\n        -12.170489311218262\n      ],\n      [\n        \"likewise\",\n        -12.170522689819336\n      ],\n      [\n        \"ographie\",\n        -12.170646667480469\n      ],\n      [\n        \"liegen\",\n        -12.17088508605957\n      ],\n      [\n        \"▁Crow\",\n        -12.170964241027832\n      ],\n      [\n        \"▁unic\",\n        -12.171187400817871\n      ],\n      [\n        \"▁Ale\",\n        -12.171241760253906\n      ],\n      [\n        \"▁păstr\",\n        -12.17125129699707\n      ],\n      [\n        \"▁informal\",\n        -12.171337127685547\n      ],\n      [\n        \"650\",\n        -12.17136287689209\n      ],\n      [\n        \"Benz\",\n        -12.171489715576172\n      ],\n      [\n        \"▁antenna\",\n        -12.171540260314941\n      ],\n      [\n        \"▁pagini\",\n        -12.171552658081055\n      ],\n      [\n        \"▁lansat\",\n        -12.171561241149902\n      ],\n      [\n        \"▁Fans\",\n        -12.171576499938965\n      ],\n      [\n        \"taine\",\n        -12.171822547912598\n      ],\n      [\n        \"JO\",\n        -12.171853065490723\n      ],\n      [\n        \"▁Tips\",\n        -12.172091484069824\n      ],\n      [\n        \"cir\",\n        -12.172130584716797\n      ],\n      [\n        \"nou\",\n        -12.172384262084961\n      ],\n      [\n        \"▁planted\",\n        -12.17241382598877\n      ],\n      [\n        \"▁steering\",\n        -12.172423362731934\n      ],\n      [\n        \"▁Waren\",\n        -12.172475814819336\n      ],\n      [\n        \"▁clearance\",\n        -12.172515869140625\n      ],\n      [\n        \"▁Moscow\",\n        -12.172516822814941\n      ],\n      [\n        \"▁Faith\",\n        -12.172534942626953\n      ],\n      [\n        \"▁Pizza\",\n        -12.172572135925293\n      ],\n      [\n        \"▁Tank\",\n        -12.17273998260498\n      ],\n      [\n        \"QUE\",\n        -12.172783851623535\n      ],\n      [\n        \"▁studii\",\n        -12.172804832458496\n      ],\n      [\n        \"éné\",\n        -12.172829627990723\n      ],\n      [\n        \"▁guerre\",\n        -12.1728515625\n      ],\n      [\n        \"▁celebr\",\n        -12.173083305358887\n      ],\n      [\n        \"▁Factory\",\n        -12.173111915588379\n      ],\n      [\n        \"▁Browse\",\n        -12.173198699951172\n      ],\n      [\n        \"▁Request\",\n        -12.17323112487793\n      ],\n      [\n        \"▁taxpayer\",\n        -12.173311233520508\n      ],\n      [\n        \"▁assert\",\n        -12.173562049865723\n      ],\n      [\n        \"unternehmen\",\n        -12.173588752746582\n      ],\n      [\n        \"▁Ergebnis\",\n        -12.173687934875488\n      ],\n      [\n        \"▁Antwort\",\n        -12.173727035522461\n      ],\n      [\n        \"▁Photography\",\n        -12.173808097839355\n      ],\n      [\n        \"▁plă\",\n        -12.173866271972656\n      ],\n      [\n        \"IME\",\n        -12.173982620239258\n      ],\n      [\n        \"▁prochaine\",\n        -12.174074172973633\n      ],\n      [\n        \"ajouter\",\n        -12.174103736877441\n      ],\n      [\n        \"▁buffet\",\n        -12.174227714538574\n      ],\n      [\n        \"▁pixels\",\n        -12.174239158630371\n      ],\n      [\n        \"▁pledge\",\n        -12.174250602722168\n      ],\n      [\n        \"▁Inhalt\",\n        -12.17435359954834\n      ],\n      [\n        \"▁chase\",\n        -12.174384117126465\n      ],\n      [\n        \"Flow\",\n        -12.174493789672852\n      ],\n      [\n        \"▁melodi\",\n        -12.174872398376465\n      ],\n      [\n        \"▁Abu\",\n        -12.174991607666016\n      ],\n      [\n        \"▁1979\",\n        -12.175042152404785\n      ],\n      [\n        \"▁Photos\",\n        -12.175042152404785\n      ],\n      [\n        \"▁qualifications\",\n        -12.175148963928223\n      ],\n      [\n        \"▁zis\",\n        -12.175213813781738\n      ],\n      [\n        \"IAL\",\n        -12.175354957580566\n      ],\n      [\n        \"▁lender\",\n        -12.175390243530273\n      ],\n      [\n        \"▁indiferent\",\n        -12.175494194030762\n      ],\n      [\n        \"▁behaviors\",\n        -12.175506591796875\n      ],\n      [\n        \"▁flowing\",\n        -12.175531387329102\n      ],\n      [\n        \"▁zweite\",\n        -12.1756010055542\n      ],\n      [\n        \"abl\",\n        -12.175765037536621\n      ],\n      [\n        \"Schw\",\n        -12.176004409790039\n      ],\n      [\n        \"opi\",\n        -12.176030158996582\n      ],\n      [\n        \"ggi\",\n        -12.176164627075195\n      ],\n      [\n        \"▁depart\",\n        -12.176314353942871\n      ],\n      [\n        \"▁garde\",\n        -12.17640209197998\n      ],\n      [\n        \"▁tuition\",\n        -12.176490783691406\n      ],\n      [\n        \"fälle\",\n        -12.17650032043457\n      ],\n      [\n        \"▁determina\",\n        -12.17652702331543\n      ],\n      [\n        \"▁spice\",\n        -12.176627159118652\n      ],\n      [\n        \"▁petites\",\n        -12.176777839660645\n      ],\n      [\n        \"kot\",\n        -12.176973342895508\n      ],\n      [\n        \"▁intersection\",\n        -12.177242279052734\n      ],\n      [\n        \"hak\",\n        -12.177248001098633\n      ],\n      [\n        \"▁autumn\",\n        -12.177284240722656\n      ],\n      [\n        \"▁verbunden\",\n        -12.177284240722656\n      ],\n      [\n        \"▁ferme\",\n        -12.177287101745605\n      ],\n      [\n        \"PN\",\n        -12.17733097076416\n      ],\n      [\n        \"▁insurer\",\n        -12.177390098571777\n      ],\n      [\n        \"arten\",\n        -12.177401542663574\n      ],\n      [\n        \"▁Turkish\",\n        -12.177715301513672\n      ],\n      [\n        \"▁shoulders\",\n        -12.177732467651367\n      ],\n      [\n        \"=>\",\n        -12.177742004394531\n      ],\n      [\n        \"▁Nike\",\n        -12.177760124206543\n      ],\n      [\n        \"uire\",\n        -12.177763938903809\n      ],\n      [\n        \"▁Chile\",\n        -12.177811622619629\n      ],\n      [\n        \"jon\",\n        -12.177842140197754\n      ],\n      [\n        \"▁fragrance\",\n        -12.177884101867676\n      ],\n      [\n        \"▁bean\",\n        -12.177908897399902\n      ],\n      [\n        \"ips\",\n        -12.178108215332031\n      ],\n      [\n        \"assuming\",\n        -12.178191184997559\n      ],\n      [\n        \"liens\",\n        -12.178215026855469\n      ],\n      [\n        \"tocmai\",\n        -12.178267478942871\n      ],\n      [\n        \"▁60%\",\n        -12.178301811218262\n      ],\n      [\n        \"ipped\",\n        -12.178384780883789\n      ],\n      [\n        \"DIS\",\n        -12.178473472595215\n      ],\n      [\n        \"▁predicted\",\n        -12.178537368774414\n      ],\n      [\n        \"▁Picture\",\n        -12.178555488586426\n      ],\n      [\n        \"Bahn\",\n        -12.178796768188477\n      ],\n      [\n        \"104\",\n        -12.178854942321777\n      ],\n      [\n        \"tended\",\n        -12.178958892822266\n      ],\n      [\n        \"▁approve\",\n        -12.179031372070312\n      ],\n      [\n        \"▁magasin\",\n        -12.17908000946045\n      ],\n      [\n        \"▁mindset\",\n        -12.179208755493164\n      ],\n      [\n        \"rase\",\n        -12.179363250732422\n      ],\n      [\n        \"grand\",\n        -12.179469108581543\n      ],\n      [\n        \"▁Principal\",\n        -12.17947769165039\n      ],\n      [\n        \"▁informații\",\n        -12.17959976196289\n      ],\n      [\n        \"▁legătur\",\n        -12.179628372192383\n      ],\n      [\n        \"▁Farb\",\n        -12.179692268371582\n      ],\n      [\n        \"▁Dieu\",\n        -12.179710388183594\n      ],\n      [\n        \"▁alliance\",\n        -12.180378913879395\n      ],\n      [\n        \"weiligen\",\n        -12.180397987365723\n      ],\n      [\n        \"▁Câ\",\n        -12.18048095703125\n      ],\n      [\n        \"▁counseling\",\n        -12.180521011352539\n      ],\n      [\n        \"▁traveled\",\n        -12.180533409118652\n      ],\n      [\n        \"▁translated\",\n        -12.180558204650879\n      ],\n      [\n        \"▁carne\",\n        -12.180679321289062\n      ],\n      [\n        \"aked\",\n        -12.180707931518555\n      ],\n      [\n        \"▁LCD\",\n        -12.180868148803711\n      ],\n      [\n        \"▁Folge\",\n        -12.180909156799316\n      ],\n      [\n        \"▁Erfahrungen\",\n        -12.18093204498291\n      ],\n      [\n        \"▁1981\",\n        -12.18106460571289\n      ],\n      [\n        \"▁răspuns\",\n        -12.181075096130371\n      ],\n      [\n        \"itori\",\n        -12.18117618560791\n      ],\n      [\n        \"▁elementary\",\n        -12.181200981140137\n      ],\n      [\n        \"▁vorbei\",\n        -12.18127727508545\n      ],\n      [\n        \"▁cargo\",\n        -12.181361198425293\n      ],\n      [\n        \"disciplinary\",\n        -12.18140983581543\n      ],\n      [\n        \"WR\",\n        -12.181492805480957\n      ],\n      [\n        \"▁counterpart\",\n        -12.18162727355957\n      ],\n      [\n        \"family\",\n        -12.181641578674316\n      ],\n      [\n        \"▁viață\",\n        -12.181644439697266\n      ],\n      [\n        \"▁Definition\",\n        -12.18167495727539\n      ],\n      [\n        \"▁Cow\",\n        -12.18171501159668\n      ],\n      [\n        \"fällig\",\n        -12.182003021240234\n      ],\n      [\n        \"▁Sicht\",\n        -12.182025909423828\n      ],\n      [\n        \"▁mum\",\n        -12.182145118713379\n      ],\n      [\n        \"▁Mediterranean\",\n        -12.182275772094727\n      ],\n      [\n        \"nev\",\n        -12.182278633117676\n      ],\n      [\n        \"bü\",\n        -12.182293891906738\n      ],\n      [\n        \"▁slave\",\n        -12.182293891906738\n      ],\n      [\n        \"schnitt\",\n        -12.18233871459961\n      ],\n      [\n        \"▁firme\",\n        -12.182430267333984\n      ],\n      [\n        \"▁spill\",\n        -12.182454109191895\n      ],\n      [\n        \"▁wages\",\n        -12.182592391967773\n      ],\n      [\n        \"▁refine\",\n        -12.182615280151367\n      ],\n      [\n        \"▁upgraded\",\n        -12.182632446289062\n      ],\n      [\n        \"▁gospel\",\n        -12.182698249816895\n      ],\n      [\n        \"▁quartier\",\n        -12.182744979858398\n      ],\n      [\n        \"▁#2\",\n        -12.182772636413574\n      ],\n      [\n        \"▁Situation\",\n        -12.18298625946045\n      ],\n      [\n        \"▁suggesting\",\n        -12.183075904846191\n      ],\n      [\n        \"▁acne\",\n        -12.183113098144531\n      ],\n      [\n        \"▁Murray\",\n        -12.183337211608887\n      ],\n      [\n        \"▁Ian\",\n        -12.183469772338867\n      ],\n      [\n        \"hören\",\n        -12.183489799499512\n      ],\n      [\n        \"bia\",\n        -12.183603286743164\n      ],\n      [\n        \"▁Bewegung\",\n        -12.183684349060059\n      ],\n      [\n        \"▁abzu\",\n        -12.18379020690918\n      ],\n      [\n        \"reveals\",\n        -12.183795928955078\n      ],\n      [\n        \"friend\",\n        -12.184025764465332\n      ],\n      [\n        \"▁Connecticut\",\n        -12.18407917022705\n      ],\n      [\n        \"▁Testament\",\n        -12.184151649475098\n      ],\n      [\n        \"▁Lit\",\n        -12.184199333190918\n      ],\n      [\n        \"▁Ship\",\n        -12.184209823608398\n      ],\n      [\n        \"▁minunat\",\n        -12.184344291687012\n      ],\n      [\n        \"▁Moving\",\n        -12.184346199035645\n      ],\n      [\n        \"▁Device\",\n        -12.184486389160156\n      ],\n      [\n        \"▁Bake\",\n        -12.18453598022461\n      ],\n      [\n        \"▁qualification\",\n        -12.184633255004883\n      ],\n      [\n        \"▁challenged\",\n        -12.184640884399414\n      ],\n      [\n        \"▁Hinweis\",\n        -12.184721946716309\n      ],\n      [\n        \"▁sechs\",\n        -12.184769630432129\n      ],\n      [\n        \"та\",\n        -12.184903144836426\n      ],\n      [\n        \"120\",\n        -12.184904098510742\n      ],\n      [\n        \"licht\",\n        -12.184940338134766\n      ],\n      [\n        \"▁supervision\",\n        -12.185022354125977\n      ],\n      [\n        \"▁milestone\",\n        -12.18503189086914\n      ],\n      [\n        \"zeig\",\n        -12.185050964355469\n      ],\n      [\n        \"▁emphasize\",\n        -12.185224533081055\n      ],\n      [\n        \"▁complain\",\n        -12.185232162475586\n      ],\n      [\n        \"sack\",\n        -12.185341835021973\n      ],\n      [\n        \"▁rebuild\",\n        -12.185445785522461\n      ],\n      [\n        \"projekt\",\n        -12.18548583984375\n      ],\n      [\n        \"▁saint\",\n        -12.185644149780273\n      ],\n      [\n        \"lette\",\n        -12.185752868652344\n      ],\n      [\n        \"rade\",\n        -12.18580150604248\n      ],\n      [\n        \"▁pacient\",\n        -12.185893058776855\n      ],\n      [\n        \"signed\",\n        -12.186169624328613\n      ],\n      [\n        \"▁mil\",\n        -12.186261177062988\n      ],\n      [\n        \"cali\",\n        -12.186266899108887\n      ],\n      [\n        \"▁brochure\",\n        -12.186487197875977\n      ],\n      [\n        \"▁Bulgaria\",\n        -12.186488151550293\n      ],\n      [\n        \"Har\",\n        -12.186623573303223\n      ],\n      [\n        \"DH\",\n        -12.186697006225586\n      ],\n      [\n        \"▁jumping\",\n        -12.186712265014648\n      ],\n      [\n        \"ären\",\n        -12.186732292175293\n      ],\n      [\n        \"▁tactics\",\n        -12.186911582946777\n      ],\n      [\n        \"▁soleil\",\n        -12.187030792236328\n      ],\n      [\n        \"lessness\",\n        -12.18705940246582\n      ],\n      [\n        \"steigen\",\n        -12.187085151672363\n      ],\n      [\n        \"▁Brief\",\n        -12.187117576599121\n      ],\n      [\n        \"▁Oz\",\n        -12.18718433380127\n      ],\n      [\n        \"credit\",\n        -12.187239646911621\n      ],\n      [\n        \"glass\",\n        -12.187241554260254\n      ],\n      [\n        \"▁Baltimore\",\n        -12.187292098999023\n      ],\n      [\n        \"varies\",\n        -12.187445640563965\n      ],\n      [\n        \"sourced\",\n        -12.187575340270996\n      ],\n      [\n        \"▁documented\",\n        -12.187604904174805\n      ],\n      [\n        \"▁devine\",\n        -12.187664985656738\n      ],\n      [\n        \"möglichst\",\n        -12.187732696533203\n      ],\n      [\n        \"▁früher\",\n        -12.187756538391113\n      ],\n      [\n        \"outefois\",\n        -12.18790054321289\n      ],\n      [\n        \"▁Engagement\",\n        -12.187934875488281\n      ],\n      [\n        \"▁anumit\",\n        -12.18806266784668\n      ],\n      [\n        \"▁1930\",\n        -12.188186645507812\n      ],\n      [\n        \"▁Aufgaben\",\n        -12.188214302062988\n      ],\n      [\n        \"▁lineup\",\n        -12.188227653503418\n      ],\n      [\n        \"▁Cad\",\n        -12.188349723815918\n      ],\n      [\n        \"améliorer\",\n        -12.188437461853027\n      ],\n      [\n        \"▁februarie\",\n        -12.188499450683594\n      ],\n      [\n        \"▁cancellation\",\n        -12.188529968261719\n      ],\n      [\n        \"▁locks\",\n        -12.188577651977539\n      ],\n      [\n        \"▁modèles\",\n        -12.188711166381836\n      ],\n      [\n        \"▁breakdown\",\n        -12.188748359680176\n      ],\n      [\n        \"Ticket\",\n        -12.188810348510742\n      ],\n      [\n        \"▁Chen\",\n        -12.188855171203613\n      ],\n      [\n        \"▁Competition\",\n        -12.188910484313965\n      ],\n      [\n        \"▁median\",\n        -12.18896770477295\n      ],\n      [\n        \"rische\",\n        -12.189159393310547\n      ],\n      [\n        \"▁multipli\",\n        -12.189269065856934\n      ],\n      [\n        \"▁Belgium\",\n        -12.189305305480957\n      ],\n      [\n        \"▁Physical\",\n        -12.189308166503906\n      ],\n      [\n        \"▁parameter\",\n        -12.189432144165039\n      ],\n      [\n        \"▁carrot\",\n        -12.189435005187988\n      ],\n      [\n        \"▁mandat\",\n        -12.189617156982422\n      ],\n      [\n        \"▁towel\",\n        -12.189697265625\n      ],\n      [\n        \"▁insured\",\n        -12.189825057983398\n      ],\n      [\n        \"PRI\",\n        -12.189868927001953\n      ],\n      [\n        \"etter\",\n        -12.189915657043457\n      ],\n      [\n        \"▁Oder\",\n        -12.190083503723145\n      ],\n      [\n        \"argued\",\n        -12.190171241760254\n      ],\n      [\n        \"FB\",\n        -12.190196990966797\n      ],\n      [\n        \"versicherung\",\n        -12.190197944641113\n      ],\n      [\n        \"abila\",\n        -12.190251350402832\n      ],\n      [\n        \"▁Coin\",\n        -12.190324783325195\n      ],\n      [\n        \"around\",\n        -12.19050121307373\n      ],\n      [\n        \"▁Lorsqu\",\n        -12.190773963928223\n      ],\n      [\n        \"valent\",\n        -12.190918922424316\n      ],\n      [\n        \"▁weltweit\",\n        -12.19092082977295\n      ],\n      [\n        \"Mod\",\n        -12.191039085388184\n      ],\n      [\n        \"▁defect\",\n        -12.191044807434082\n      ],\n      [\n        \"ibly\",\n        -12.191136360168457\n      ],\n      [\n        \"▁Juan\",\n        -12.191153526306152\n      ],\n      [\n        \"▁Jur\",\n        -12.191171646118164\n      ],\n      [\n        \"large\",\n        -12.191307067871094\n      ],\n      [\n        \"▁indicators\",\n        -12.191461563110352\n      ],\n      [\n        \"invest\",\n        -12.19168472290039\n      ],\n      [\n        \"▁rehabilitation\",\n        -12.191705703735352\n      ],\n      [\n        \"nag\",\n        -12.191823959350586\n      ],\n      [\n        \"▁Grundlage\",\n        -12.191829681396484\n      ],\n      [\n        \"▁Strategy\",\n        -12.192131042480469\n      ],\n      [\n        \"▁supérieur\",\n        -12.192173957824707\n      ],\n      [\n        \"▁orbit\",\n        -12.192281723022461\n      ],\n      [\n        \"▁Auftrag\",\n        -12.192360877990723\n      ],\n      [\n        \"▁Verb\",\n        -12.192441940307617\n      ],\n      [\n        \"ANA\",\n        -12.19256591796875\n      ],\n      [\n        \"▁trimis\",\n        -12.192611694335938\n      ],\n      [\n        \"▁Rub\",\n        -12.192704200744629\n      ],\n      [\n        \"institu\",\n        -12.192732810974121\n      ],\n      [\n        \"▁inspect\",\n        -12.1927490234375\n      ],\n      [\n        \"▁Princess\",\n        -12.192757606506348\n      ],\n      [\n        \"especially\",\n        -12.192777633666992\n      ],\n      [\n        \"▁combinations\",\n        -12.192793846130371\n      ],\n      [\n        \"▁gaze\",\n        -12.192842483520508\n      ],\n      [\n        \"elemente\",\n        -12.192970275878906\n      ],\n      [\n        \"deal\",\n        -12.192980766296387\n      ],\n      [\n        \"polis\",\n        -12.193157196044922\n      ],\n      [\n        \"shaw\",\n        -12.193168640136719\n      ],\n      [\n        \"▁Republicans\",\n        -12.193203926086426\n      ],\n      [\n        \"aded\",\n        -12.193244934082031\n      ],\n      [\n        \"▁Louisiana\",\n        -12.193364143371582\n      ],\n      [\n        \"▁Ville\",\n        -12.193368911743164\n      ],\n      [\n        \"▁afterwards\",\n        -12.193389892578125\n      ],\n      [\n        \"ONG\",\n        -12.193608283996582\n      ],\n      [\n        \"▁dryer\",\n        -12.193636894226074\n      ],\n      [\n        \"▁Manhattan\",\n        -12.19374942779541\n      ],\n      [\n        \"▁recomanda\",\n        -12.19412612915039\n      ],\n      [\n        \"▁juca\",\n        -12.194253921508789\n      ],\n      [\n        \"▁Crown\",\n        -12.194260597229004\n      ],\n      [\n        \"▁flesh\",\n        -12.194347381591797\n      ],\n      [\n        \"sichtig\",\n        -12.194358825683594\n      ],\n      [\n        \"▁rempli\",\n        -12.19437026977539\n      ],\n      [\n        \"▁deposits\",\n        -12.19438362121582\n      ],\n      [\n        \"▁Voll\",\n        -12.194599151611328\n      ],\n      [\n        \"▁analysts\",\n        -12.194672584533691\n      ],\n      [\n        \"▁Krieg\",\n        -12.19484806060791\n      ],\n      [\n        \"▁Rosa\",\n        -12.19495964050293\n      ],\n      [\n        \"▁Supply\",\n        -12.194964408874512\n      ],\n      [\n        \"GF\",\n        -12.19497013092041\n      ],\n      [\n        \"idad\",\n        -12.195098876953125\n      ],\n      [\n        \"▁flush\",\n        -12.195103645324707\n      ],\n      [\n        \"▁circular\",\n        -12.195355415344238\n      ],\n      [\n        \"▁național\",\n        -12.195379257202148\n      ],\n      [\n        \"▁lorsqu\",\n        -12.195441246032715\n      ],\n      [\n        \"▁analyst\",\n        -12.195459365844727\n      ],\n      [\n        \"▁Jahrhundert\",\n        -12.195586204528809\n      ],\n      [\n        \"▁biology\",\n        -12.195713996887207\n      ],\n      [\n        \"copy\",\n        -12.195733070373535\n      ],\n      [\n        \"▁bringt\",\n        -12.195765495300293\n      ],\n      [\n        \"▁Gospel\",\n        -12.195780754089355\n      ],\n      [\n        \"▁sorgen\",\n        -12.195842742919922\n      ],\n      [\n        \"zeichnung\",\n        -12.196181297302246\n      ],\n      [\n        \"chair\",\n        -12.196197509765625\n      ],\n      [\n        \"EB\",\n        -12.19636344909668\n      ],\n      [\n        \"▁Beth\",\n        -12.1964111328125\n      ],\n      [\n        \"115\",\n        -12.196416854858398\n      ],\n      [\n        \"▁Neue\",\n        -12.196479797363281\n      ],\n      [\n        \"▁faible\",\n        -12.196599960327148\n      ],\n      [\n        \"▁methodology\",\n        -12.196603775024414\n      ],\n      [\n        \"spiele\",\n        -12.196647644042969\n      ],\n      [\n        \"▁cherry\",\n        -12.196727752685547\n      ],\n      [\n        \"▁Mak\",\n        -12.196802139282227\n      ],\n      [\n        \"▁volet\",\n        -12.196982383728027\n      ],\n      [\n        \"funk\",\n        -12.197196006774902\n      ],\n      [\n        \"▁aktuelle\",\n        -12.197372436523438\n      ],\n      [\n        \"▁Yahoo\",\n        -12.197408676147461\n      ],\n      [\n        \"▁Zusammenarbeit\",\n        -12.197669982910156\n      ],\n      [\n        \"▁Serve\",\n        -12.197754859924316\n      ],\n      [\n        \"▁simpler\",\n        -12.197978019714355\n      ],\n      [\n        \"intégr\",\n        -12.197990417480469\n      ],\n      [\n        \"ndlich\",\n        -12.198083877563477\n      ],\n      [\n        \"▁actress\",\n        -12.198320388793945\n      ],\n      [\n        \"▁reuse\",\n        -12.198332786560059\n      ],\n      [\n        \"▁reviewing\",\n        -12.198405265808105\n      ],\n      [\n        \"statt\",\n        -12.198457717895508\n      ],\n      [\n        \"▁diving\",\n        -12.198469161987305\n      ],\n      [\n        \"▁Național\",\n        -12.198677062988281\n      ],\n      [\n        \"voi\",\n        -12.19873332977295\n      ],\n      [\n        \"Disc\",\n        -12.198812484741211\n      ],\n      [\n        \"▁Mineral\",\n        -12.19886302947998\n      ],\n      [\n        \"▁emit\",\n        -12.199007034301758\n      ],\n      [\n        \"witz\",\n        -12.199078559875488\n      ],\n      [\n        \"▁forgot\",\n        -12.19909954071045\n      ],\n      [\n        \"▁dim\",\n        -12.199115753173828\n      ],\n      [\n        \"upper\",\n        -12.19947624206543\n      ],\n      [\n        \"sichtlich\",\n        -12.19949722290039\n      ],\n      [\n        \"▁parcours\",\n        -12.199670791625977\n      ],\n      [\n        \"8:00\",\n        -12.199697494506836\n      ],\n      [\n        \"▁keyword\",\n        -12.199701309204102\n      ],\n      [\n        \"▁upgrades\",\n        -12.199763298034668\n      ],\n      [\n        \"kunden\",\n        -12.200177192687988\n      ],\n      [\n        \"▁Seg\",\n        -12.200257301330566\n      ],\n      [\n        \"▁Circle\",\n        -12.200289726257324\n      ],\n      [\n        \"▁ginger\",\n        -12.200336456298828\n      ],\n      [\n        \"mment\",\n        -12.200516700744629\n      ],\n      [\n        \"▁expenditure\",\n        -12.200655937194824\n      ],\n      [\n        \"▁parle\",\n        -12.200693130493164\n      ],\n      [\n        \"▁Counsel\",\n        -12.200722694396973\n      ],\n      [\n        \"▁Gui\",\n        -12.200722694396973\n      ],\n      [\n        \"resident\",\n        -12.20103645324707\n      ],\n      [\n        \"▁benchmark\",\n        -12.20103931427002\n      ],\n      [\n        \"▁Elektro\",\n        -12.201064109802246\n      ],\n      [\n        \"▁réalité\",\n        -12.201064109802246\n      ],\n      [\n        \"▁ridiculous\",\n        -12.201067924499512\n      ],\n      [\n        \"▁necklace\",\n        -12.20108699798584\n      ],\n      [\n        \"nian\",\n        -12.201117515563965\n      ],\n      [\n        \"▁Move\",\n        -12.20113468170166\n      ],\n      [\n        \"▁elevated\",\n        -12.201204299926758\n      ],\n      [\n        \"WE\",\n        -12.201281547546387\n      ],\n      [\n        \"▁Drum\",\n        -12.20132064819336\n      ],\n      [\n        \"▁Delivery\",\n        -12.201350212097168\n      ],\n      [\n        \"indicating\",\n        -12.201452255249023\n      ],\n      [\n        \"▁Benjamin\",\n        -12.201472282409668\n      ],\n      [\n        \"▁Samuel\",\n        -12.2014741897583\n      ],\n      [\n        \"bene\",\n        -12.201666831970215\n      ],\n      [\n        \"▁experienta\",\n        -12.201676368713379\n      ],\n      [\n        \"▁rocket\",\n        -12.201839447021484\n      ],\n      [\n        \"▁fossil\",\n        -12.201883316040039\n      ],\n      [\n        \"▁festive\",\n        -12.20193099975586\n      ],\n      [\n        \"▁conscience\",\n        -12.201964378356934\n      ],\n      [\n        \"▁bacon\",\n        -12.202136993408203\n      ],\n      [\n        \"▁aero\",\n        -12.202159881591797\n      ],\n      [\n        \"public\",\n        -12.202187538146973\n      ],\n      [\n        \"▁zic\",\n        -12.202218055725098\n      ],\n      [\n        \"ombre\",\n        -12.202356338500977\n      ],\n      [\n        \"▁Drain\",\n        -12.202550888061523\n      ],\n      [\n        \"7.5\",\n        -12.202672004699707\n      ],\n      [\n        \"▁Deutschen\",\n        -12.202703475952148\n      ],\n      [\n        \"reportedly\",\n        -12.202754974365234\n      ],\n      [\n        \"▁Français\",\n        -12.203105926513672\n      ],\n      [\n        \"▁enzyme\",\n        -12.203106880187988\n      ],\n      [\n        \"▁inquiry\",\n        -12.203117370605469\n      ],\n      [\n        \"▁presque\",\n        -12.203193664550781\n      ],\n      [\n        \"▁Airlines\",\n        -12.203228950500488\n      ],\n      [\n        \"▁Salon\",\n        -12.203237533569336\n      ],\n      [\n        \"▁Volunteer\",\n        -12.203310012817383\n      ],\n      [\n        \"▁modular\",\n        -12.203349113464355\n      ],\n      [\n        \"ón\",\n        -12.203364372253418\n      ],\n      [\n        \"NH\",\n        -12.203449249267578\n      ],\n      [\n        \"▁souhaite\",\n        -12.203516960144043\n      ],\n      [\n        \"social\",\n        -12.203659057617188\n      ],\n      [\n        \"▁Include\",\n        -12.203729629516602\n      ],\n      [\n        \"▁Decor\",\n        -12.2037992477417\n      ],\n      [\n        \"dded\",\n        -12.203965187072754\n      ],\n      [\n        \"▁Außen\",\n        -12.203969955444336\n      ],\n      [\n        \"rendu\",\n        -12.20412540435791\n      ],\n      [\n        \"▁MBA\",\n        -12.204150199890137\n      ],\n      [\n        \"▁columns\",\n        -12.204155921936035\n      ],\n      [\n        \"▁Wing\",\n        -12.204436302185059\n      ],\n      [\n        \"▁landmark\",\n        -12.204442977905273\n      ],\n      [\n        \"schritt\",\n        -12.204594612121582\n      ],\n      [\n        \"▁désir\",\n        -12.204630851745605\n      ],\n      [\n        \"(5)\",\n        -12.204680442810059\n      ],\n      [\n        \"▁réseaux\",\n        -12.204693794250488\n      ],\n      [\n        \"income\",\n        -12.204710960388184\n      ],\n      [\n        \"▁revised\",\n        -12.204819679260254\n      ],\n      [\n        \"HY\",\n        -12.204863548278809\n      ],\n      [\n        \"▁Explorer\",\n        -12.204873085021973\n      ],\n      [\n        \"▁Lam\",\n        -12.204877853393555\n      ],\n      [\n        \"▁almond\",\n        -12.204910278320312\n      ],\n      [\n        \"▁faux\",\n        -12.204910278320312\n      ],\n      [\n        \"opt\",\n        -12.204923629760742\n      ],\n      [\n        \"Out\",\n        -12.204939842224121\n      ],\n      [\n        \"▁virtue\",\n        -12.205025672912598\n      ],\n      [\n        \"▁Chocolate\",\n        -12.205151557922363\n      ],\n      [\n        \"▁spannend\",\n        -12.205305099487305\n      ],\n      [\n        \"▁spices\",\n        -12.205327033996582\n      ],\n      [\n        \"▁Climate\",\n        -12.205560684204102\n      ],\n      [\n        \"▁Residential\",\n        -12.205560684204102\n      ],\n      [\n        \"gung\",\n        -12.205700874328613\n      ],\n      [\n        \"▁filtr\",\n        -12.20606803894043\n      ],\n      [\n        \"circ\",\n        -12.206123352050781\n      ],\n      [\n        \"sisted\",\n        -12.206172943115234\n      ],\n      [\n        \"▁dedicat\",\n        -12.206243515014648\n      ],\n      [\n        \"▁foil\",\n        -12.206387519836426\n      ],\n      [\n        \"▁uita\",\n        -12.206392288208008\n      ],\n      [\n        \"▁lié\",\n        -12.206402778625488\n      ],\n      [\n        \"▁Demo\",\n        -12.206409454345703\n      ],\n      [\n        \"▁spoil\",\n        -12.2064208984375\n      ],\n      [\n        \"Cu\",\n        -12.206448554992676\n      ],\n      [\n        \"naut\",\n        -12.206525802612305\n      ],\n      [\n        \"▁configured\",\n        -12.206535339355469\n      ],\n      [\n        \"UK\",\n        -12.206543922424316\n      ],\n      [\n        \"▁disagree\",\n        -12.20656967163086\n      ],\n      [\n        \"Medic\",\n        -12.206767082214355\n      ],\n      [\n        \"cosm\",\n        -12.207074165344238\n      ],\n      [\n        \"Toute\",\n        -12.207109451293945\n      ],\n      [\n        \"▁beneficia\",\n        -12.207170486450195\n      ],\n      [\n        \"fassen\",\n        -12.207327842712402\n      ],\n      [\n        \"▁bail\",\n        -12.207337379455566\n      ],\n      [\n        \"igue\",\n        -12.207439422607422\n      ],\n      [\n        \"▁Mă\",\n        -12.20744800567627\n      ],\n      [\n        \"▁strips\",\n        -12.20748519897461\n      ],\n      [\n        \"▁Dritte\",\n        -12.207537651062012\n      ],\n      [\n        \"▁putere\",\n        -12.207597732543945\n      ],\n      [\n        \"Play\",\n        -12.20763111114502\n      ],\n      [\n        \"▁Samstag\",\n        -12.207632064819336\n      ],\n      [\n        \"▁households\",\n        -12.207791328430176\n      ],\n      [\n        \"▁persistent\",\n        -12.207914352416992\n      ],\n      [\n        \"uben\",\n        -12.207942962646484\n      ],\n      [\n        \"Web\",\n        -12.20809555053711\n      ],\n      [\n        \"▁scenery\",\n        -12.20820140838623\n      ],\n      [\n        \"▁défini\",\n        -12.208257675170898\n      ],\n      [\n        \"news\",\n        -12.208337783813477\n      ],\n      [\n        \"eira\",\n        -12.208428382873535\n      ],\n      [\n        \"▁Mumbai\",\n        -12.208438873291016\n      ],\n      [\n        \"▁Ward\",\n        -12.208558082580566\n      ],\n      [\n        \"▁ladder\",\n        -12.2086181640625\n      ],\n      [\n        \"▁plaque\",\n        -12.208623886108398\n      ],\n      [\n        \"nés\",\n        -12.208639144897461\n      ],\n      [\n        \"▁condamn\",\n        -12.20864486694336\n      ],\n      [\n        \"▁attribute\",\n        -12.208687782287598\n      ],\n      [\n        \"atti\",\n        -12.20873737335205\n      ],\n      [\n        \"▁Emily\",\n        -12.208953857421875\n      ],\n      [\n        \"▁pleine\",\n        -12.20896053314209\n      ],\n      [\n        \"▁automatisch\",\n        -12.209004402160645\n      ],\n      [\n        \"ifies\",\n        -12.209052085876465\n      ],\n      [\n        \"onna\",\n        -12.209104537963867\n      ],\n      [\n        \"▁inject\",\n        -12.209157943725586\n      ],\n      [\n        \"▁evolve\",\n        -12.209297180175781\n      ],\n      [\n        \"▁breeze\",\n        -12.209299087524414\n      ],\n      [\n        \"▁montre\",\n        -12.209415435791016\n      ],\n      [\n        \"▁memorial\",\n        -12.209425926208496\n      ],\n      [\n        \"ämlich\",\n        -12.209465026855469\n      ],\n      [\n        \"NBC\",\n        -12.209589958190918\n      ],\n      [\n        \"▁1940\",\n        -12.209836959838867\n      ],\n      [\n        \"▁trouvé\",\n        -12.209892272949219\n      ],\n      [\n        \"when\",\n        -12.209914207458496\n      ],\n      [\n        \"▁Büro\",\n        -12.209959983825684\n      ],\n      [\n        \"▁probability\",\n        -12.209978103637695\n      ],\n      [\n        \"cute\",\n        -12.21006965637207\n      ],\n      [\n        \"▁sturdy\",\n        -12.210078239440918\n      ],\n      [\n        \"AMP\",\n        -12.210165023803711\n      ],\n      [\n        \"▁Constantin\",\n        -12.210283279418945\n      ],\n      [\n        \"▁batter\",\n        -12.21037483215332\n      ],\n      [\n        \"▁bist\",\n        -12.210470199584961\n      ],\n      [\n        \"▁streams\",\n        -12.210528373718262\n      ],\n      [\n        \"rushing\",\n        -12.21057415008545\n      ],\n      [\n        \"▁shaft\",\n        -12.21065902709961\n      ],\n      [\n        \"▁proprii\",\n        -12.210722923278809\n      ],\n      [\n        \"émi\",\n        -12.21074390411377\n      ],\n      [\n        \"online\",\n        -12.210817337036133\n      ],\n      [\n        \"▁vanity\",\n        -12.210870742797852\n      ],\n      [\n        \"▁mural\",\n        -12.210878372192383\n      ],\n      [\n        \"▁distinguish\",\n        -12.210905075073242\n      ],\n      [\n        \"▁niciun\",\n        -12.211191177368164\n      ],\n      [\n        \"▁européenne\",\n        -12.211252212524414\n      ],\n      [\n        \"▁secretary\",\n        -12.211289405822754\n      ],\n      [\n        \"▁gaps\",\n        -12.211492538452148\n      ],\n      [\n        \"▁realm\",\n        -12.211499214172363\n      ],\n      [\n        \"▁elastic\",\n        -12.211504936218262\n      ],\n      [\n        \"▁Avoid\",\n        -12.211519241333008\n      ],\n      [\n        \"▁mauvais\",\n        -12.211931228637695\n      ],\n      [\n        \"▁innovations\",\n        -12.212663650512695\n      ],\n      [\n        \"▁suprem\",\n        -12.212776184082031\n      ],\n      [\n        \"▁vederea\",\n        -12.212817192077637\n      ],\n      [\n        \"wenden\",\n        -12.212892532348633\n      ],\n      [\n        \"-40\",\n        -12.213075637817383\n      ],\n      [\n        \"prenant\",\n        -12.213155746459961\n      ],\n      [\n        \"utilisateur\",\n        -12.213210105895996\n      ],\n      [\n        \"▁Oliver\",\n        -12.213228225708008\n      ],\n      [\n        \"111\",\n        -12.21326732635498\n      ],\n      [\n        \"▁manifestation\",\n        -12.213382720947266\n      ],\n      [\n        \"▁Rachel\",\n        -12.213458061218262\n      ],\n      [\n        \"agog\",\n        -12.21348762512207\n      ],\n      [\n        \"▁seamless\",\n        -12.213534355163574\n      ],\n      [\n        \"▁Employee\",\n        -12.213576316833496\n      ],\n      [\n        \"▁dimanche\",\n        -12.213582038879395\n      ],\n      [\n        \"▁banii\",\n        -12.213631629943848\n      ],\n      [\n        \"▁Ruth\",\n        -12.213781356811523\n      ],\n      [\n        \"▁Roy\",\n        -12.21385383605957\n      ],\n      [\n        \"▁homeless\",\n        -12.2139253616333\n      ],\n      [\n        \"▁Lower\",\n        -12.213932037353516\n      ],\n      [\n        \"health\",\n        -12.21393871307373\n      ],\n      [\n        \"▁atenti\",\n        -12.2140474319458\n      ],\n      [\n        \"▁touched\",\n        -12.214183807373047\n      ],\n      [\n        \"May\",\n        -12.214195251464844\n      ],\n      [\n        \"▁Buc\",\n        -12.214225769042969\n      ],\n      [\n        \"▁explored\",\n        -12.214393615722656\n      ],\n      [\n        \"▁declare\",\n        -12.214461326599121\n      ],\n      [\n        \"▁garment\",\n        -12.214469909667969\n      ],\n      [\n        \"▁buzz\",\n        -12.214483261108398\n      ],\n      [\n        \"▁rappel\",\n        -12.214662551879883\n      ],\n      [\n        \"▁uscat\",\n        -12.214903831481934\n      ],\n      [\n        \"▁Hyper\",\n        -12.214914321899414\n      ],\n      [\n        \"Etat\",\n        -12.215007781982422\n      ],\n      [\n        \"▁Titel\",\n        -12.215035438537598\n      ],\n      [\n        \"product\",\n        -12.215191841125488\n      ],\n      [\n        \"woman\",\n        -12.215280532836914\n      ],\n      [\n        \"▁Gab\",\n        -12.215450286865234\n      ],\n      [\n        \"▁advances\",\n        -12.215615272521973\n      ],\n      [\n        \"2/\",\n        -12.215753555297852\n      ],\n      [\n        \"prone\",\n        -12.215770721435547\n      ],\n      [\n        \"kö\",\n        -12.215986251831055\n      ],\n      [\n        \"▁counting\",\n        -12.21599292755127\n      ],\n      [\n        \"Sollte\",\n        -12.216043472290039\n      ],\n      [\n        \"▁Konzept\",\n        -12.216063499450684\n      ],\n      [\n        \"▁backgrounds\",\n        -12.216153144836426\n      ],\n      [\n        \"jährige\",\n        -12.216154098510742\n      ],\n      [\n        \"▁Alltag\",\n        -12.216187477111816\n      ],\n      [\n        \"▁metrics\",\n        -12.21619701385498\n      ],\n      [\n        \"▁illustrated\",\n        -12.216222763061523\n      ],\n      [\n        \"▁Charge\",\n        -12.21631908416748\n      ],\n      [\n        \"▁thoughtful\",\n        -12.216423034667969\n      ],\n      [\n        \"gesetz\",\n        -12.216527938842773\n      ],\n      [\n        \"pfen\",\n        -12.216611862182617\n      ],\n      [\n        \"▁déroul\",\n        -12.216713905334473\n      ],\n      [\n        \"▁checkout\",\n        -12.216876029968262\n      ],\n      [\n        \"quette\",\n        -12.216936111450195\n      ],\n      [\n        \"▁pierdut\",\n        -12.2170991897583\n      ],\n      [\n        \"▁Seat\",\n        -12.217140197753906\n      ],\n      [\n        \"▁linen\",\n        -12.217193603515625\n      ],\n      [\n        \"archiv\",\n        -12.217245101928711\n      ],\n      [\n        \"arna\",\n        -12.217254638671875\n      ],\n      [\n        \"importe\",\n        -12.21742057800293\n      ],\n      [\n        \"▁PHP\",\n        -12.217496871948242\n      ],\n      [\n        \"▁Parents\",\n        -12.217503547668457\n      ],\n      [\n        \"▁Birmingham\",\n        -12.217513084411621\n      ],\n      [\n        \"▁Integr\",\n        -12.217588424682617\n      ],\n      [\n        \"▁Mason\",\n        -12.217607498168945\n      ],\n      [\n        \"zieht\",\n        -12.217781066894531\n      ],\n      [\n        \"▁camps\",\n        -12.217803001403809\n      ],\n      [\n        \"OG\",\n        -12.21786117553711\n      ],\n      [\n        \"▁syrup\",\n        -12.217927932739258\n      ],\n      [\n        \"▁Cookies\",\n        -12.217928886413574\n      ],\n      [\n        \"▁Comfort\",\n        -12.217955589294434\n      ],\n      [\n        \"ută\",\n        -12.217976570129395\n      ],\n      [\n        \"abia\",\n        -12.217979431152344\n      ],\n      [\n        \"zeci\",\n        -12.218003273010254\n      ],\n      [\n        \"▁Gardens\",\n        -12.218009948730469\n      ],\n      [\n        \"▁incidents\",\n        -12.218149185180664\n      ],\n      [\n        \"▁participat\",\n        -12.218235969543457\n      ],\n      [\n        \"▁glimpse\",\n        -12.218342781066895\n      ],\n      [\n        \"5.5\",\n        -12.218437194824219\n      ],\n      [\n        \"▁dealers\",\n        -12.218469619750977\n      ],\n      [\n        \"▁Grande\",\n        -12.218565940856934\n      ],\n      [\n        \"▁raid\",\n        -12.218944549560547\n      ],\n      [\n        \"owing\",\n        -12.21903133392334\n      ],\n      [\n        \"▁contrary\",\n        -12.219109535217285\n      ],\n      [\n        \"Earlier\",\n        -12.219138145446777\n      ],\n      [\n        \"tien\",\n        -12.21916389465332\n      ],\n      [\n        \"drop\",\n        -12.219169616699219\n      ],\n      [\n        \"▁angajat\",\n        -12.219359397888184\n      ],\n      [\n        \"▁procesul\",\n        -12.219515800476074\n      ],\n      [\n        \"▁focal\",\n        -12.219564437866211\n      ],\n      [\n        \"▁impart\",\n        -12.219703674316406\n      ],\n      [\n        \"▁Abschluss\",\n        -12.219749450683594\n      ],\n      [\n        \"carui\",\n        -12.219830513000488\n      ],\n      [\n        \"insul\",\n        -12.220277786254883\n      ],\n      [\n        \"▁creamy\",\n        -12.220283508300781\n      ],\n      [\n        \"eille\",\n        -12.22032356262207\n      ],\n      [\n        \"suppl\",\n        -12.220335960388184\n      ],\n      [\n        \"▁Heaven\",\n        -12.220471382141113\n      ],\n      [\n        \"éna\",\n        -12.220667839050293\n      ],\n      [\n        \"▁swap\",\n        -12.220739364624023\n      ],\n      [\n        \"▁vreau\",\n        -12.220762252807617\n      ],\n      [\n        \"▁Bryan\",\n        -12.220809936523438\n      ],\n      [\n        \"▁Zug\",\n        -12.220815658569336\n      ],\n      [\n        \"▁glance\",\n        -12.220848083496094\n      ],\n      [\n        \"▁elimin\",\n        -12.220900535583496\n      ],\n      [\n        \"▁yeux\",\n        -12.221084594726562\n      ],\n      [\n        \"wehr\",\n        -12.221238136291504\n      ],\n      [\n        \"2.5\",\n        -12.221287727355957\n      ],\n      [\n        \"▁poses\",\n        -12.221364974975586\n      ],\n      [\n        \"▁parcel\",\n        -12.221585273742676\n      ],\n      [\n        \"▁Apartment\",\n        -12.221749305725098\n      ],\n      [\n        \"▁NASA\",\n        -12.221768379211426\n      ],\n      [\n        \"▁bénéfici\",\n        -12.22187614440918\n      ],\n      [\n        \"▁Umgebung\",\n        -12.221890449523926\n      ],\n      [\n        \"asia\",\n        -12.221946716308594\n      ],\n      [\n        \"abi\",\n        -12.221967697143555\n      ],\n      [\n        \"coup\",\n        -12.222002983093262\n      ],\n      [\n        \"synchron\",\n        -12.222017288208008\n      ],\n      [\n        \"▁Sicherheits\",\n        -12.222029685974121\n      ],\n      [\n        \"bic\",\n        -12.222076416015625\n      ],\n      [\n        \"▁distract\",\n        -12.222148895263672\n      ],\n      [\n        \"▁rentals\",\n        -12.222163200378418\n      ],\n      [\n        \"constru\",\n        -12.222290992736816\n      ],\n      [\n        \"curs\",\n        -12.222345352172852\n      ],\n      [\n        \"genannten\",\n        -12.222386360168457\n      ],\n      [\n        \"▁Shanghai\",\n        -12.222501754760742\n      ],\n      [\n        \"▁vague\",\n        -12.222504615783691\n      ],\n      [\n        \"▁Leather\",\n        -12.22250747680664\n      ],\n      [\n        \"▁Vintage\",\n        -12.222532272338867\n      ],\n      [\n        \"pointing\",\n        -12.22259521484375\n      ],\n      [\n        \"avant\",\n        -12.22268295288086\n      ],\n      [\n        \"gues\",\n        -12.222949028015137\n      ],\n      [\n        \"sweise\",\n        -12.22302532196045\n      ],\n      [\n        \"▁Greater\",\n        -12.223065376281738\n      ],\n      [\n        \"fig\",\n        -12.22310733795166\n      ],\n      [\n        \"▁Blut\",\n        -12.223217964172363\n      ],\n      [\n        \"▁Stellen\",\n        -12.22326946258545\n      ],\n      [\n        \"▁isolation\",\n        -12.22337818145752\n      ],\n      [\n        \"▁overhead\",\n        -12.22338581085205\n      ],\n      [\n        \"▁wondered\",\n        -12.223508834838867\n      ],\n      [\n        \"essai\",\n        -12.223609924316406\n      ],\n      [\n        \"aves\",\n        -12.2236328125\n      ],\n      [\n        \"▁Shore\",\n        -12.223637580871582\n      ],\n      [\n        \"▁INC\",\n        -12.223709106445312\n      ],\n      [\n        \"rufen\",\n        -12.223980903625488\n      ],\n      [\n        \"▁magnifique\",\n        -12.224069595336914\n      ],\n      [\n        \"▁intéressant\",\n        -12.224072456359863\n      ],\n      [\n        \"▁tanks\",\n        -12.224075317382812\n      ],\n      [\n        \"▁Tun\",\n        -12.224367141723633\n      ],\n      [\n        \"▁approaching\",\n        -12.224390029907227\n      ],\n      [\n        \"▁relay\",\n        -12.224479675292969\n      ],\n      [\n        \"▁Küche\",\n        -12.224529266357422\n      ],\n      [\n        \"describing\",\n        -12.224587440490723\n      ],\n      [\n        \"▁Certification\",\n        -12.224588394165039\n      ],\n      [\n        \"▁Breakfast\",\n        -12.224597930908203\n      ],\n      [\n        \"▁Frame\",\n        -12.224891662597656\n      ],\n      [\n        \"▁Stoff\",\n        -12.224909782409668\n      ],\n      [\n        \"▁victime\",\n        -12.224924087524414\n      ],\n      [\n        \"Observ\",\n        -12.224943161010742\n      ],\n      [\n        \"▁gutter\",\n        -12.224989891052246\n      ],\n      [\n        \"standard\",\n        -12.225220680236816\n      ],\n      [\n        \"▁Sci\",\n        -12.225244522094727\n      ],\n      [\n        \"▁sept\",\n        -12.225377082824707\n      ],\n      [\n        \"▁Potter\",\n        -12.225423812866211\n      ],\n      [\n        \"letter\",\n        -12.22577953338623\n      ],\n      [\n        \"▁tobacco\",\n        -12.225852012634277\n      ],\n      [\n        \"▁threatened\",\n        -12.22591781616211\n      ],\n      [\n        \"MW\",\n        -12.225936889648438\n      ],\n      [\n        \"▁Cher\",\n        -12.225944519042969\n      ],\n      [\n        \"0.1\",\n        -12.225957870483398\n      ],\n      [\n        \"mitted\",\n        -12.22596263885498\n      ],\n      [\n        \"zustellen\",\n        -12.225967407226562\n      ],\n      [\n        \"dominated\",\n        -12.226165771484375\n      ],\n      [\n        \"/16\",\n        -12.22623348236084\n      ],\n      [\n        \"POS\",\n        -12.226317405700684\n      ],\n      [\n        \"▁Zin\",\n        -12.226373672485352\n      ],\n      [\n        \"▁Okay\",\n        -12.226381301879883\n      ],\n      [\n        \"▁projected\",\n        -12.226405143737793\n      ],\n      [\n        \"▁selber\",\n        -12.226548194885254\n      ],\n      [\n        \"▁proiectului\",\n        -12.2266206741333\n      ],\n      [\n        \"▁Shell\",\n        -12.226683616638184\n      ],\n      [\n        \"▁cartridge\",\n        -12.226706504821777\n      ],\n      [\n        \"Message\",\n        -12.2267484664917\n      ],\n      [\n        \"haben\",\n        -12.226799964904785\n      ],\n      [\n        \"▁slides\",\n        -12.226829528808594\n      ],\n      [\n        \"▁gleichzeitig\",\n        -12.226886749267578\n      ],\n      [\n        \"▁Racing\",\n        -12.227051734924316\n      ],\n      [\n        \"▁20,\",\n        -12.227070808410645\n      ],\n      [\n        \"▁separat\",\n        -12.227094650268555\n      ],\n      [\n        \"▁repeatedly\",\n        -12.227110862731934\n      ],\n      [\n        \"▁casting\",\n        -12.22728157043457\n      ],\n      [\n        \"▁sacred\",\n        -12.227283477783203\n      ],\n      [\n        \"verfahren\",\n        -12.227387428283691\n      ],\n      [\n        \"▁echilibr\",\n        -12.227514266967773\n      ],\n      [\n        \"▁rebel\",\n        -12.2277250289917\n      ],\n      [\n        \"säu\",\n        -12.227794647216797\n      ],\n      [\n        \"ummy\",\n        -12.227815628051758\n      ],\n      [\n        \"▁backing\",\n        -12.227889060974121\n      ],\n      [\n        \"▁sponsors\",\n        -12.227912902832031\n      ],\n      [\n        \"▁Stress\",\n        -12.22802448272705\n      ],\n      [\n        \"▁Rules\",\n        -12.228083610534668\n      ],\n      [\n        \"▁render\",\n        -12.228241920471191\n      ],\n      [\n        \"▁funktioniert\",\n        -12.228384971618652\n      ],\n      [\n        \"▁Pearl\",\n        -12.228472709655762\n      ],\n      [\n        \"▁Scho\",\n        -12.228527069091797\n      ],\n      [\n        \"schwer\",\n        -12.228595733642578\n      ],\n      [\n        \"▁descoperit\",\n        -12.228702545166016\n      ],\n      [\n        \"holen\",\n        -12.228720664978027\n      ],\n      [\n        \"imposed\",\n        -12.228960990905762\n      ],\n      [\n        \"▁appearing\",\n        -12.228968620300293\n      ],\n      [\n        \"▁höher\",\n        -12.229082107543945\n      ],\n      [\n        \"▁Victorian\",\n        -12.229111671447754\n      ],\n      [\n        \"▁founding\",\n        -12.229155540466309\n      ],\n      [\n        \"▁Polish\",\n        -12.229239463806152\n      ],\n      [\n        \"▁anume\",\n        -12.229248046875\n      ],\n      [\n        \"Box\",\n        -12.229488372802734\n      ],\n      [\n        \"▁intrat\",\n        -12.229598999023438\n      ],\n      [\n        \"▁Inspiration\",\n        -12.229610443115234\n      ],\n      [\n        \"▁Canyon\",\n        -12.229625701904297\n      ],\n      [\n        \"▁Franklin\",\n        -12.22974681854248\n      ],\n      [\n        \"▁susceptible\",\n        -12.22982120513916\n      ],\n      [\n        \"trap\",\n        -12.229839324951172\n      ],\n      [\n        \"▁Roma\",\n        -12.23000717163086\n      ],\n      [\n        \"▁ethics\",\n        -12.230009078979492\n      ],\n      [\n        \"▁Privat\",\n        -12.230027198791504\n      ],\n      [\n        \"▁journalists\",\n        -12.230090141296387\n      ],\n      [\n        \"▁Universität\",\n        -12.230246543884277\n      ],\n      [\n        \"▁conditioner\",\n        -12.230308532714844\n      ],\n      [\n        \"folge\",\n        -12.230327606201172\n      ],\n      [\n        \"kirche\",\n        -12.230416297912598\n      ],\n      [\n        \"gehalten\",\n        -12.230530738830566\n      ],\n      [\n        \"midi\",\n        -12.230570793151855\n      ],\n      [\n        \"▁radar\",\n        -12.230619430541992\n      ],\n      [\n        \"▁Yard\",\n        -12.230775833129883\n      ],\n      [\n        \"▁professionnelle\",\n        -12.230863571166992\n      ],\n      [\n        \"▁Orchestra\",\n        -12.230870246887207\n      ],\n      [\n        \"▁immigrants\",\n        -12.230870246887207\n      ],\n      [\n        \"▁refined\",\n        -12.230929374694824\n      ],\n      [\n        \"▁Bishop\",\n        -12.231036186218262\n      ],\n      [\n        \"string\",\n        -12.231095314025879\n      ],\n      [\n        \"▁majoritatea\",\n        -12.231231689453125\n      ],\n      [\n        \"▁workflow\",\n        -12.23123836517334\n      ],\n      [\n        \"▁întreg\",\n        -12.231306076049805\n      ],\n      [\n        \"went\",\n        -12.231563568115234\n      ],\n      [\n        \"▁trat\",\n        -12.231689453125\n      ],\n      [\n        \"felul\",\n        -12.23176383972168\n      ],\n      [\n        \"▁hardwood\",\n        -12.231821060180664\n      ],\n      [\n        \"▁Task\",\n        -12.231867790222168\n      ],\n      [\n        \"branded\",\n        -12.231921195983887\n      ],\n      [\n        \"▁cinq\",\n        -12.231966018676758\n      ],\n      [\n        \"▁curb\",\n        -12.232041358947754\n      ],\n      [\n        \"▁Discount\",\n        -12.232043266296387\n      ],\n      [\n        \"▁Episode\",\n        -12.232131958007812\n      ],\n      [\n        \"▁Knowledge\",\n        -12.232144355773926\n      ],\n      [\n        \"▁tricky\",\n        -12.232173919677734\n      ],\n      [\n        \"▁characteristic\",\n        -12.232233047485352\n      ],\n      [\n        \"▁plata\",\n        -12.23226261138916\n      ],\n      [\n        \"▁Labour\",\n        -12.23232650756836\n      ],\n      [\n        \"▁Tha\",\n        -12.232372283935547\n      ],\n      [\n        \"▁Liefer\",\n        -12.232430458068848\n      ],\n      [\n        \"▁Reader\",\n        -12.232471466064453\n      ],\n      [\n        \"▁Linda\",\n        -12.232521057128906\n      ],\n      [\n        \"ittlerweile\",\n        -12.232552528381348\n      ],\n      [\n        \"defining\",\n        -12.232564926147461\n      ],\n      [\n        \"▁delayed\",\n        -12.232635498046875\n      ],\n      [\n        \"▁Bewertung\",\n        -12.232674598693848\n      ],\n      [\n        \"▁Unique\",\n        -12.232791900634766\n      ],\n      [\n        \"▁Champion\",\n        -12.232866287231445\n      ],\n      [\n        \"2008\",\n        -12.232897758483887\n      ],\n      [\n        \"▁conclu\",\n        -12.232934951782227\n      ],\n      [\n        \"▁câștig\",\n        -12.2329740524292\n      ],\n      [\n        \"▁scheduling\",\n        -12.2329740524292\n      ],\n      [\n        \"▁sailing\",\n        -12.233116149902344\n      ],\n      [\n        \"▁Storm\",\n        -12.23318862915039\n      ],\n      [\n        \"▁Stil\",\n        -12.23320198059082\n      ],\n      [\n        \"▁Album\",\n        -12.233211517333984\n      ],\n      [\n        \"▁ultime\",\n        -12.233343124389648\n      ],\n      [\n        \"url\",\n        -12.233369827270508\n      ],\n      [\n        \"▁terrific\",\n        -12.23339557647705\n      ],\n      [\n        \"▁remedy\",\n        -12.233396530151367\n      ],\n      [\n        \"▁Around\",\n        -12.233592987060547\n      ],\n      [\n        \"▁Kni\",\n        -12.233756065368652\n      ],\n      [\n        \"etty\",\n        -12.23376750946045\n      ],\n      [\n        \"Managing\",\n        -12.233809471130371\n      ],\n      [\n        \"▁Bedeutung\",\n        -12.233816146850586\n      ],\n      [\n        \"▁earthquake\",\n        -12.233817100524902\n      ],\n      [\n        \"▁Telefon\",\n        -12.233818054199219\n      ],\n      [\n        \"▁Upper\",\n        -12.233869552612305\n      ],\n      [\n        \"▁validation\",\n        -12.233892440795898\n      ],\n      [\n        \"-22\",\n        -12.233997344970703\n      ],\n      [\n        \"▁queue\",\n        -12.23401165008545\n      ],\n      [\n        \"tinde\",\n        -12.234025001525879\n      ],\n      [\n        \"built\",\n        -12.234047889709473\n      ],\n      [\n        \"▁voix\",\n        -12.234125137329102\n      ],\n      [\n        \"▁Resource\",\n        -12.234126091003418\n      ],\n      [\n        \"ţiuni\",\n        -12.234143257141113\n      ],\n      [\n        \"▁satisfying\",\n        -12.234299659729004\n      ],\n      [\n        \"▁Kohl\",\n        -12.234441757202148\n      ],\n      [\n        \"▁Materials\",\n        -12.234618186950684\n      ],\n      [\n        \"▁esp\",\n        -12.234732627868652\n      ],\n      [\n        \"enseignement\",\n        -12.234773635864258\n      ],\n      [\n        \"danach\",\n        -12.234883308410645\n      ],\n      [\n        \"peux\",\n        -12.234932899475098\n      ],\n      [\n        \"▁deployed\",\n        -12.235113143920898\n      ],\n      [\n        \"▁1976\",\n        -12.235126495361328\n      ],\n      [\n        \"ușor\",\n        -12.235334396362305\n      ],\n      [\n        \"élection\",\n        -12.235380172729492\n      ],\n      [\n        \"ettes\",\n        -12.235437393188477\n      ],\n      [\n        \"▁Madison\",\n        -12.235506057739258\n      ],\n      [\n        \"108\",\n        -12.235685348510742\n      ],\n      [\n        \"berger\",\n        -12.235696792602539\n      ],\n      [\n        \"▁pedal\",\n        -12.235702514648438\n      ],\n      [\n        \"▁quasi\",\n        -12.235820770263672\n      ],\n      [\n        \"▁lend\",\n        -12.235843658447266\n      ],\n      [\n        \"VER\",\n        -12.235940933227539\n      ],\n      [\n        \"▁chapters\",\n        -12.236002922058105\n      ],\n      [\n        \"▁idei\",\n        -12.23600959777832\n      ],\n      [\n        \"Deine\",\n        -12.236034393310547\n      ],\n      [\n        \"▁endure\",\n        -12.236092567443848\n      ],\n      [\n        \"▁Studios\",\n        -12.236259460449219\n      ],\n      [\n        \"structure\",\n        -12.236274719238281\n      ],\n      [\n        \"▁puiss\",\n        -12.236370086669922\n      ],\n      [\n        \"▁Morning\",\n        -12.236443519592285\n      ],\n      [\n        \"guide\",\n        -12.236462593078613\n      ],\n      [\n        \"▁Wave\",\n        -12.236617088317871\n      ],\n      [\n        \"▁banque\",\n        -12.236879348754883\n      ],\n      [\n        \"änd\",\n        -12.236912727355957\n      ],\n      [\n        \"oubli\",\n        -12.237070083618164\n      ],\n      [\n        \"▁mixer\",\n        -12.237125396728516\n      ],\n      [\n        \"▁remedi\",\n        -12.237210273742676\n      ],\n      [\n        \"▁scop\",\n        -12.237421989440918\n      ],\n      [\n        \"▁Rosen\",\n        -12.237561225891113\n      ],\n      [\n        \"▁spital\",\n        -12.23773193359375\n      ],\n      [\n        \"blau\",\n        -12.237811088562012\n      ],\n      [\n        \"▁financiar\",\n        -12.237865447998047\n      ],\n      [\n        \"avour\",\n        -12.237871170043945\n      ],\n      [\n        \"Def\",\n        -12.238025665283203\n      ],\n      [\n        \"▁socket\",\n        -12.238076210021973\n      ],\n      [\n        \"▁occurring\",\n        -12.238360404968262\n      ],\n      [\n        \"▁munci\",\n        -12.238368034362793\n      ],\n      [\n        \"▁realiza\",\n        -12.238426208496094\n      ],\n      [\n        \"▁beating\",\n        -12.2384614944458\n      ],\n      [\n        \"▁Phillip\",\n        -12.238490104675293\n      ],\n      [\n        \"▁courant\",\n        -12.238509178161621\n      ],\n      [\n        \"Auto\",\n        -12.238608360290527\n      ],\n      [\n        \"▁Lager\",\n        -12.238685607910156\n      ],\n      [\n        \"▁folos\",\n        -12.238696098327637\n      ],\n      [\n        \"▁moyens\",\n        -12.238770484924316\n      ],\n      [\n        \"▁Ec\",\n        -12.238780975341797\n      ],\n      [\n        \"▁Strip\",\n        -12.238788604736328\n      ],\n      [\n        \"sparen\",\n        -12.238848686218262\n      ],\n      [\n        \"▁Nintendo\",\n        -12.238886833190918\n      ],\n      [\n        \"▁Murphy\",\n        -12.238912582397461\n      ],\n      [\n        \"▁flux\",\n        -12.239034652709961\n      ],\n      [\n        \"▁mots\",\n        -12.239034652709961\n      ],\n      [\n        \"▁rechts\",\n        -12.239045143127441\n      ],\n      [\n        \"▁cardio\",\n        -12.239142417907715\n      ],\n      [\n        \"avoiding\",\n        -12.239343643188477\n      ],\n      [\n        \"érer\",\n        -12.239453315734863\n      ],\n      [\n        \"hiel\",\n        -12.239461898803711\n      ],\n      [\n        \"▁rezistent\",\n        -12.239521980285645\n      ],\n      [\n        \"close\",\n        -12.23954963684082\n      ],\n      [\n        \"hésitez\",\n        -12.239596366882324\n      ],\n      [\n        \"Hz\",\n        -12.239631652832031\n      ],\n      [\n        \"▁elaborate\",\n        -12.239689826965332\n      ],\n      [\n        \"▁permanently\",\n        -12.239709854125977\n      ],\n      [\n        \"▁Pittsburgh\",\n        -12.239734649658203\n      ],\n      [\n        \"▁counties\",\n        -12.239819526672363\n      ],\n      [\n        \"▁bookmark\",\n        -12.239919662475586\n      ],\n      [\n        \"▁Label\",\n        -12.239965438842773\n      ],\n      [\n        \"▁Freude\",\n        -12.239974021911621\n      ],\n      [\n        \"▁preferat\",\n        -12.239986419677734\n      ],\n      [\n        \"▁Mein\",\n        -12.239995002746582\n      ],\n      [\n        \"▁Crew\",\n        -12.240218162536621\n      ],\n      [\n        \"▁clips\",\n        -12.240253448486328\n      ],\n      [\n        \"8,000\",\n        -12.240263938903809\n      ],\n      [\n        \"▁recognise\",\n        -12.240311622619629\n      ],\n      [\n        \"ință\",\n        -12.240365028381348\n      ],\n      [\n        \"▁prieteni\",\n        -12.240447044372559\n      ],\n      [\n        \"Heute\",\n        -12.240522384643555\n      ],\n      [\n        \"ancienne\",\n        -12.240534782409668\n      ],\n      [\n        \"▁annoying\",\n        -12.240583419799805\n      ],\n      [\n        \"▁awful\",\n        -12.240704536437988\n      ],\n      [\n        \"▁Comments\",\n        -12.240774154663086\n      ],\n      [\n        \"▁musician\",\n        -12.240830421447754\n      ],\n      [\n        \"▁Elite\",\n        -12.241023063659668\n      ],\n      [\n        \"▁patri\",\n        -12.241024017333984\n      ],\n      [\n        \"▁Coupon\",\n        -12.241037368774414\n      ],\n      [\n        \"▁Farbe\",\n        -12.241097450256348\n      ],\n      [\n        \"▁contribui\",\n        -12.241110801696777\n      ],\n      [\n        \"hari\",\n        -12.241294860839844\n      ],\n      [\n        \"▁activitati\",\n        -12.24161148071289\n      ],\n      [\n        \"▁Traum\",\n        -12.2416410446167\n      ],\n      [\n        \"1.8\",\n        -12.24170207977295\n      ],\n      [\n        \"▁Healthcare\",\n        -12.24172306060791\n      ],\n      [\n        \"▁refresh\",\n        -12.241943359375\n      ],\n      [\n        \"▁Maha\",\n        -12.242060661315918\n      ],\n      [\n        \"▁dép\",\n        -12.242082595825195\n      ],\n      [\n        \"▁Studien\",\n        -12.242314338684082\n      ],\n      [\n        \"▁spectacol\",\n        -12.242378234863281\n      ],\n      [\n        \"impro\",\n        -12.24254035949707\n      ],\n      [\n        \"▁commentaire\",\n        -12.242544174194336\n      ],\n      [\n        \"ported\",\n        -12.242570877075195\n      ],\n      [\n        \"▁reclam\",\n        -12.242612838745117\n      ],\n      [\n        \"▁Verkauf\",\n        -12.242634773254395\n      ],\n      [\n        \"▁newspapers\",\n        -12.242661476135254\n      ],\n      [\n        \"▁iubit\",\n        -12.242838859558105\n      ],\n      [\n        \"▁Kenne\",\n        -12.242844581604004\n      ],\n      [\n        \"▁Consultant\",\n        -12.242958068847656\n      ],\n      [\n        \"▁stau\",\n        -12.242986679077148\n      ],\n      [\n        \"TON\",\n        -12.243057250976562\n      ],\n      [\n        \"▁Fehler\",\n        -12.243070602416992\n      ],\n      [\n        \"▁lettre\",\n        -12.243167877197266\n      ],\n      [\n        \"▁investigator\",\n        -12.243172645568848\n      ],\n      [\n        \"▁quantities\",\n        -12.243184089660645\n      ],\n      [\n        \"ogram\",\n        -12.243208885192871\n      ],\n      [\n        \"avaient\",\n        -12.24323844909668\n      ],\n      [\n        \"▁reducere\",\n        -12.243265151977539\n      ],\n      [\n        \"Lite\",\n        -12.243402481079102\n      ],\n      [\n        \"kurs\",\n        -12.243443489074707\n      ],\n      [\n        \"pré\",\n        -12.24383544921875\n      ],\n      [\n        \"pap\",\n        -12.243898391723633\n      ],\n      [\n        \"▁Männer\",\n        -12.243983268737793\n      ],\n      [\n        \"▁gauche\",\n        -12.244022369384766\n      ],\n      [\n        \"▁ähnlich\",\n        -12.244027137756348\n      ],\n      [\n        \"▁sunlight\",\n        -12.244063377380371\n      ],\n      [\n        \"▁rester\",\n        -12.24422550201416\n      ],\n      [\n        \"jumped\",\n        -12.244586944580078\n      ],\n      [\n        \"▁exclusiv\",\n        -12.24463176727295\n      ],\n      [\n        \"▁electoral\",\n        -12.244640350341797\n      ],\n      [\n        \"▁Portal\",\n        -12.244650840759277\n      ],\n      [\n        \"ulent\",\n        -12.244688987731934\n      ],\n      [\n        \"▁sonst\",\n        -12.24474048614502\n      ],\n      [\n        \"entraîne\",\n        -12.24483585357666\n      ],\n      [\n        \"▁repas\",\n        -12.244837760925293\n      ],\n      [\n        \"▁redus\",\n        -12.244858741760254\n      ],\n      [\n        \"aku\",\n        -12.244866371154785\n      ],\n      [\n        \"▁Graphic\",\n        -12.245251655578613\n      ],\n      [\n        \"▁geringe\",\n        -12.24539566040039\n      ],\n      [\n        \"plätze\",\n        -12.245474815368652\n      ],\n      [\n        \"Trebuie\",\n        -12.245479583740234\n      ],\n      [\n        \"▁rezultate\",\n        -12.245479583740234\n      ],\n      [\n        \"▁configure\",\n        -12.245683670043945\n      ],\n      [\n        \"▁PV\",\n        -12.245834350585938\n      ],\n      [\n        \"▁insect\",\n        -12.246109962463379\n      ],\n      [\n        \"▁Reviews\",\n        -12.246129035949707\n      ],\n      [\n        \"releasing\",\n        -12.246186256408691\n      ],\n      [\n        \"▁appliance\",\n        -12.246246337890625\n      ],\n      [\n        \"▁oferte\",\n        -12.246482849121094\n      ],\n      [\n        \"▁WILL\",\n        -12.246484756469727\n      ],\n      [\n        \"rion\",\n        -12.246499061584473\n      ],\n      [\n        \"▁Cole\",\n        -12.246582984924316\n      ],\n      [\n        \"▁1975\",\n        -12.246650695800781\n      ],\n      [\n        \"Admin\",\n        -12.24677848815918\n      ],\n      [\n        \"▁parade\",\n        -12.246800422668457\n      ],\n      [\n        \"▁mélange\",\n        -12.24692153930664\n      ],\n      [\n        \"▁shortage\",\n        -12.247007369995117\n      ],\n      [\n        \"▁Measure\",\n        -12.247400283813477\n      ],\n      [\n        \"anchmal\",\n        -12.24742603302002\n      ],\n      [\n        \"▁transfers\",\n        -12.247432708740234\n      ],\n      [\n        \"▁sistemului\",\n        -12.247573852539062\n      ],\n      [\n        \"▁deschide\",\n        -12.247819900512695\n      ],\n      [\n        \"▁Künstler\",\n        -12.247821807861328\n      ],\n      [\n        \"▁Plain\",\n        -12.247848510742188\n      ],\n      [\n        \"▁messaging\",\n        -12.247855186462402\n      ],\n      [\n        \"▁metabolism\",\n        -12.247879981994629\n      ],\n      [\n        \"fill\",\n        -12.248031616210938\n      ],\n      [\n        \"▁Bomb\",\n        -12.24814224243164\n      ],\n      [\n        \"usine\",\n        -12.248208045959473\n      ],\n      [\n        \"▁restart\",\n        -12.248233795166016\n      ],\n      [\n        \"▁Discussion\",\n        -12.248336791992188\n      ],\n      [\n        \"smith\",\n        -12.248472213745117\n      ],\n      [\n        \"▁Bh\",\n        -12.248607635498047\n      ],\n      [\n        \"▁sap\",\n        -12.248689651489258\n      ],\n      [\n        \"Moo\",\n        -12.248714447021484\n      ],\n      [\n        \"▁indirect\",\n        -12.248785972595215\n      ],\n      [\n        \"▁eingesetzt\",\n        -12.248863220214844\n      ],\n      [\n        \"▁Hip\",\n        -12.248870849609375\n      ],\n      [\n        \"▁iulie\",\n        -12.249113082885742\n      ],\n      [\n        \"▁atac\",\n        -12.249201774597168\n      ],\n      [\n        \"▁passport\",\n        -12.2492036819458\n      ],\n      [\n        \"▁Egyptian\",\n        -12.249290466308594\n      ],\n      [\n        \"▁soluți\",\n        -12.249349594116211\n      ],\n      [\n        \"▁cakes\",\n        -12.249356269836426\n      ],\n      [\n        \"▁Fellow\",\n        -12.24949836730957\n      ],\n      [\n        \"▁collision\",\n        -12.249533653259277\n      ],\n      [\n        \"▁abundant\",\n        -12.249961853027344\n      ],\n      [\n        \"▁Wonder\",\n        -12.24997329711914\n      ],\n      [\n        \"▁theories\",\n        -12.249991416931152\n      ],\n      [\n        \"landed\",\n        -12.250046730041504\n      ],\n      [\n        \"▁meantime\",\n        -12.2500638961792\n      ],\n      [\n        \"schlüsse\",\n        -12.25022029876709\n      ],\n      [\n        \"▁helicopter\",\n        -12.25039005279541\n      ],\n      [\n        \"Voici\",\n        -12.250479698181152\n      ],\n      [\n        \"▁Honey\",\n        -12.25049877166748\n      ],\n      [\n        \"▁deleted\",\n        -12.250511169433594\n      ],\n      [\n        \"▁Projekte\",\n        -12.250523567199707\n      ],\n      [\n        \"▁gasi\",\n        -12.2506742477417\n      ],\n      [\n        \"applique\",\n        -12.25068473815918\n      ],\n      [\n        \"TAL\",\n        -12.250699043273926\n      ],\n      [\n        \"notch\",\n        -12.250699996948242\n      ],\n      [\n        \"▁Response\",\n        -12.250818252563477\n      ],\n      [\n        \"▁deveni\",\n        -12.250818252563477\n      ],\n      [\n        \"▁regulate\",\n        -12.250829696655273\n      ],\n      [\n        \"▁vegetarian\",\n        -12.25083065032959\n      ],\n      [\n        \"▁Pastor\",\n        -12.250880241394043\n      ],\n      [\n        \"▁Strong\",\n        -12.250940322875977\n      ],\n      [\n        \"▁élèves\",\n        -12.251055717468262\n      ],\n      [\n        \"▁alimente\",\n        -12.25113582611084\n      ],\n      [\n        \"graphy\",\n        -12.251181602478027\n      ],\n      [\n        \"▁spirits\",\n        -12.251266479492188\n      ],\n      [\n        \"▁Cau\",\n        -12.251282691955566\n      ],\n      [\n        \"determin\",\n        -12.251304626464844\n      ],\n      [\n        \"arilor\",\n        -12.251382827758789\n      ],\n      [\n        \"▁masura\",\n        -12.251470565795898\n      ],\n      [\n        \"RAN\",\n        -12.251500129699707\n      ],\n      [\n        \"marked\",\n        -12.251564979553223\n      ],\n      [\n        \"cuba\",\n        -12.251602172851562\n      ],\n      [\n        \"omni\",\n        -12.251609802246094\n      ],\n      [\n        \"▁detox\",\n        -12.251662254333496\n      ],\n      [\n        \"▁quartz\",\n        -12.251741409301758\n      ],\n      [\n        \"▁Bug\",\n        -12.25177001953125\n      ],\n      [\n        \"▁Sugar\",\n        -12.25185775756836\n      ],\n      [\n        \"▁opponents\",\n        -12.25197982788086\n      ],\n      [\n        \"▁solved\",\n        -12.25207805633545\n      ],\n      [\n        \"semn\",\n        -12.252257347106934\n      ],\n      [\n        \"▁Prepare\",\n        -12.252558708190918\n      ],\n      [\n        \"ffel\",\n        -12.252586364746094\n      ],\n      [\n        \"▁Highlight\",\n        -12.252608299255371\n      ],\n      [\n        \"▁curent\",\n        -12.252618789672852\n      ],\n      [\n        \"▁praktisch\",\n        -12.252626419067383\n      ],\n      [\n        \"▁lending\",\n        -12.252676963806152\n      ],\n      [\n        \"▁minority\",\n        -12.252752304077148\n      ],\n      [\n        \"Free\",\n        -12.252970695495605\n      ],\n      [\n        \"business\",\n        -12.252997398376465\n      ],\n      [\n        \"▁outlook\",\n        -12.253097534179688\n      ],\n      [\n        \"▁assessments\",\n        -12.253168106079102\n      ],\n      [\n        \"▁Brother\",\n        -12.253266334533691\n      ],\n      [\n        \"▁partager\",\n        -12.25326919555664\n      ],\n      [\n        \"▁Brun\",\n        -12.25329303741455\n      ],\n      [\n        \"▁pedestrian\",\n        -12.25339412689209\n      ],\n      [\n        \"anța\",\n        -12.253413200378418\n      ],\n      [\n        \"▁recycled\",\n        -12.253457069396973\n      ],\n      [\n        \"▁quicker\",\n        -12.253626823425293\n      ],\n      [\n        \"▁lamps\",\n        -12.253683090209961\n      ],\n      [\n        \"▁nationally\",\n        -12.253813743591309\n      ],\n      [\n        \"▁Supplier\",\n        -12.253823280334473\n      ],\n      [\n        \"ograph\",\n        -12.253936767578125\n      ],\n      [\n        \"engage\",\n        -12.253981590270996\n      ],\n      [\n        \"▁Marg\",\n        -12.254131317138672\n      ],\n      [\n        \"▁aplicare\",\n        -12.254181861877441\n      ],\n      [\n        \"▁scared\",\n        -12.254194259643555\n      ],\n      [\n        \"▁accredited\",\n        -12.254255294799805\n      ],\n      [\n        \"▁outils\",\n        -12.25436019897461\n      ],\n      [\n        \"▁bâtiment\",\n        -12.254446029663086\n      ],\n      [\n        \"▁existed\",\n        -12.254586219787598\n      ],\n      [\n        \"gegangen\",\n        -12.254619598388672\n      ],\n      [\n        \"▁elevation\",\n        -12.25463581085205\n      ],\n      [\n        \"▁Tradition\",\n        -12.254670143127441\n      ],\n      [\n        \"▁Gericht\",\n        -12.254677772521973\n      ],\n      [\n        \"hub\",\n        -12.254680633544922\n      ],\n      [\n        \"strahl\",\n        -12.25473690032959\n      ],\n      [\n        \"build\",\n        -12.254796981811523\n      ],\n      [\n        \"▁Customers\",\n        -12.25487232208252\n      ],\n      [\n        \"klasse\",\n        -12.254890441894531\n      ],\n      [\n        \"▁pierre\",\n        -12.254895210266113\n      ],\n      [\n        \"(2)\",\n        -12.255006790161133\n      ],\n      [\n        \"Life\",\n        -12.255125999450684\n      ],\n      [\n        \"▁bachelor\",\n        -12.25513744354248\n      ],\n      [\n        \"▁quad\",\n        -12.255195617675781\n      ],\n      [\n        \"▁dispozitiv\",\n        -12.25523567199707\n      ],\n      [\n        \"106\",\n        -12.255266189575195\n      ],\n      [\n        \"▁suburb\",\n        -12.255495071411133\n      ],\n      [\n        \"▁1977\",\n        -12.255586624145508\n      ],\n      [\n        \"▁Alzheimer\",\n        -12.255973815917969\n      ],\n      [\n        \"▁spicy\",\n        -12.255988121032715\n      ],\n      [\n        \"▁spreading\",\n        -12.256002426147461\n      ],\n      [\n        \"nötigen\",\n        -12.256078720092773\n      ],\n      [\n        \"▁novels\",\n        -12.256104469299316\n      ],\n      [\n        \"▁responsabilité\",\n        -12.256141662597656\n      ],\n      [\n        \"▁Bud\",\n        -12.256332397460938\n      ],\n      [\n        \"▁desirable\",\n        -12.256407737731934\n      ],\n      [\n        \"TOR\",\n        -12.256444931030273\n      ],\n      [\n        \"five\",\n        -12.256547927856445\n      ],\n      [\n        \"▁Firmen\",\n        -12.256860733032227\n      ],\n      [\n        \"oeuvre\",\n        -12.257075309753418\n      ],\n      [\n        \"grass\",\n        -12.257233619689941\n      ],\n      [\n        \"▁practically\",\n        -12.257277488708496\n      ],\n      [\n        \"▁runners\",\n        -12.257281303405762\n      ],\n      [\n        \"▁mothers\",\n        -12.257341384887695\n      ],\n      [\n        \"Shop\",\n        -12.257345199584961\n      ],\n      [\n        \"▁Chicken\",\n        -12.257408142089844\n      ],\n      [\n        \"▁License\",\n        -12.257593154907227\n      ],\n      [\n        \"▁Bach\",\n        -12.25765323638916\n      ],\n      [\n        \"earliest\",\n        -12.257729530334473\n      ],\n      [\n        \"▁replica\",\n        -12.25774097442627\n      ],\n      [\n        \"▁haunt\",\n        -12.257833480834961\n      ],\n      [\n        \"▁materi\",\n        -12.257854461669922\n      ],\n      [\n        \"▁Finland\",\n        -12.257893562316895\n      ],\n      [\n        \"▁europene\",\n        -12.257919311523438\n      ],\n      [\n        \"abilă\",\n        -12.257944107055664\n      ],\n      [\n        \"cati\",\n        -12.258007049560547\n      ],\n      [\n        \"▁cholesterol\",\n        -12.258132934570312\n      ],\n      [\n        \"...).\",\n        -12.258151054382324\n      ],\n      [\n        \"cardi\",\n        -12.25838565826416\n      ],\n      [\n        \"▁(12\",\n        -12.258387565612793\n      ],\n      [\n        \"analyzed\",\n        -12.258506774902344\n      ],\n      [\n        \"▁respondents\",\n        -12.258591651916504\n      ],\n      [\n        \"▁höchste\",\n        -12.258646011352539\n      ],\n      [\n        \"▁Kern\",\n        -12.258647918701172\n      ],\n      [\n        \"▁knapp\",\n        -12.258781433105469\n      ],\n      [\n        \"▁Someone\",\n        -12.258955001831055\n      ],\n      [\n        \"▁équipé\",\n        -12.258997917175293\n      ],\n      [\n        \"credited\",\n        -12.259106636047363\n      ],\n      [\n        \"▁numar\",\n        -12.259163856506348\n      ],\n      [\n        \"▁Ace\",\n        -12.259185791015625\n      ],\n      [\n        \"zentrum\",\n        -12.2592191696167\n      ],\n      [\n        \"nehmer\",\n        -12.259270668029785\n      ],\n      [\n        \"arrivée\",\n        -12.259282112121582\n      ],\n      [\n        \"ELE\",\n        -12.259291648864746\n      ],\n      [\n        \"clean\",\n        -12.259418487548828\n      ],\n      [\n        \"Boost\",\n        -12.259538650512695\n      ],\n      [\n        \"call\",\n        -12.259575843811035\n      ],\n      [\n        \"▁Polizei\",\n        -12.259659767150879\n      ],\n      [\n        \"▁Januar\",\n        -12.259663581848145\n      ],\n      [\n        \"▁Tile\",\n        -12.259681701660156\n      ],\n      [\n        \"▁traduc\",\n        -12.259744644165039\n      ],\n      [\n        \"▁promptly\",\n        -12.259773254394531\n      ],\n      [\n        \"limit\",\n        -12.259809494018555\n      ],\n      [\n        \"▁recharge\",\n        -12.2598237991333\n      ],\n      [\n        \"▁wipe\",\n        -12.259862899780273\n      ],\n      [\n        \"▁Norway\",\n        -12.26001262664795\n      ],\n      [\n        \"▁Municipal\",\n        -12.260077476501465\n      ],\n      [\n        \"▁medieval\",\n        -12.260117530822754\n      ],\n      [\n        \"▁Treat\",\n        -12.26021671295166\n      ],\n      [\n        \"Orient\",\n        -12.260283470153809\n      ],\n      [\n        \"▁Stewart\",\n        -12.260294914245605\n      ],\n      [\n        \"▁lol\",\n        -12.26039981842041\n      ],\n      [\n        \"appartement\",\n        -12.260522842407227\n      ],\n      [\n        \"▁payer\",\n        -12.260655403137207\n      ],\n      [\n        \"▁splash\",\n        -12.260723114013672\n      ],\n      [\n        \"doubtedly\",\n        -12.260726928710938\n      ],\n      [\n        \"dry\",\n        -12.260846138000488\n      ],\n      [\n        \"▁Forex\",\n        -12.260939598083496\n      ],\n      [\n        \"▁Edinburgh\",\n        -12.260943412780762\n      ],\n      [\n        \"▁Traditional\",\n        -12.261032104492188\n      ],\n      [\n        \"▁1968\",\n        -12.261134147644043\n      ],\n      [\n        \"▁glow\",\n        -12.261248588562012\n      ],\n      [\n        \"Alternatively\",\n        -12.261265754699707\n      ],\n      [\n        \"▁partly\",\n        -12.261354446411133\n      ],\n      [\n        \"égi\",\n        -12.261401176452637\n      ],\n      [\n        \"▁Prices\",\n        -12.261640548706055\n      ],\n      [\n        \"haupt\",\n        -12.261651992797852\n      ],\n      [\n        \"▁sentences\",\n        -12.261711120605469\n      ],\n      [\n        \"ouvre\",\n        -12.261735916137695\n      ],\n      [\n        \"▁Liter\",\n        -12.261746406555176\n      ],\n      [\n        \"▁Important\",\n        -12.2620267868042\n      ],\n      [\n        \"▁Collins\",\n        -12.262077331542969\n      ],\n      [\n        \"▁reproduce\",\n        -12.262106895446777\n      ],\n      [\n        \"▁selten\",\n        -12.262124061584473\n      ],\n      [\n        \"▁Mitte\",\n        -12.262170791625977\n      ],\n      [\n        \"OA\",\n        -12.262174606323242\n      ],\n      [\n        \"▁Sister\",\n        -12.262358665466309\n      ],\n      [\n        \"▁responding\",\n        -12.262385368347168\n      ],\n      [\n        \"▁ballot\",\n        -12.262455940246582\n      ],\n      [\n        \"▁Nutrition\",\n        -12.262460708618164\n      ],\n      [\n        \"occurrence\",\n        -12.26246452331543\n      ],\n      [\n        \"Atunci\",\n        -12.262604713439941\n      ],\n      [\n        \"▁hockey\",\n        -12.262680053710938\n      ],\n      [\n        \"▁undertaking\",\n        -12.262697219848633\n      ],\n      [\n        \"▁educators\",\n        -12.262885093688965\n      ],\n      [\n        \"▁Swedish\",\n        -12.262893676757812\n      ],\n      [\n        \"▁Recovery\",\n        -12.262894630432129\n      ],\n      [\n        \"▁circum\",\n        -12.262910842895508\n      ],\n      [\n        \"▁chains\",\n        -12.263084411621094\n      ],\n      [\n        \"▁genug\",\n        -12.263113021850586\n      ],\n      [\n        \"▁Pil\",\n        -12.263227462768555\n      ],\n      [\n        \"▁farms\",\n        -12.263265609741211\n      ],\n      [\n        \"▁simplicity\",\n        -12.263336181640625\n      ],\n      [\n        \"-21\",\n        -12.263399124145508\n      ],\n      [\n        \"▁partition\",\n        -12.263493537902832\n      ],\n      [\n        \"▁Relations\",\n        -12.26360034942627\n      ],\n      [\n        \"zentrale\",\n        -12.263794898986816\n      ],\n      [\n        \"lapse\",\n        -12.263855934143066\n      ],\n      [\n        \"▁toast\",\n        -12.263862609863281\n      ],\n      [\n        \"▁citi\",\n        -12.263946533203125\n      ],\n      [\n        \"▁longtemps\",\n        -12.263984680175781\n      ],\n      [\n        \"maj\",\n        -12.264448165893555\n      ],\n      [\n        \"▁Cin\",\n        -12.264483451843262\n      ],\n      [\n        \"zeichen\",\n        -12.264504432678223\n      ],\n      [\n        \"▁Zoo\",\n        -12.264567375183105\n      ],\n      [\n        \"▁frisch\",\n        -12.264570236206055\n      ],\n      [\n        \"▁permettra\",\n        -12.264595031738281\n      ],\n      [\n        \"▁Liberty\",\n        -12.264642715454102\n      ],\n      [\n        \"▁playground\",\n        -12.264873504638672\n      ],\n      [\n        \"▁Mate\",\n        -12.265031814575195\n      ],\n      [\n        \"▁evolving\",\n        -12.265066146850586\n      ],\n      [\n        \"national\",\n        -12.265207290649414\n      ],\n      [\n        \"▁signifie\",\n        -12.265279769897461\n      ],\n      [\n        \"▁Related\",\n        -12.265292167663574\n      ],\n      [\n        \"NES\",\n        -12.265337944030762\n      ],\n      [\n        \"euil\",\n        -12.265473365783691\n      ],\n      [\n        \"▁struggles\",\n        -12.265542030334473\n      ],\n      [\n        \"▁instinct\",\n        -12.265628814697266\n      ],\n      [\n        \"arbre\",\n        -12.26608943939209\n      ],\n      [\n        \"▁commands\",\n        -12.266222953796387\n      ],\n      [\n        \"▁frumoase\",\n        -12.26637077331543\n      ],\n      [\n        \"▁watches\",\n        -12.266779899597168\n      ],\n      [\n        \"NM\",\n        -12.266804695129395\n      ],\n      [\n        \"▁influential\",\n        -12.266807556152344\n      ],\n      [\n        \"▁gewesen\",\n        -12.266901969909668\n      ],\n      [\n        \"▁Pictures\",\n        -12.267224311828613\n      ],\n      [\n        \"▁HVAC\",\n        -12.267242431640625\n      ],\n      [\n        \"▁skate\",\n        -12.26732063293457\n      ],\n      [\n        \"▁Robot\",\n        -12.267327308654785\n      ],\n      [\n        \"▁Boys\",\n        -12.267404556274414\n      ],\n      [\n        \"▁Mutter\",\n        -12.267425537109375\n      ],\n      [\n        \"▁marques\",\n        -12.267539024353027\n      ],\n      [\n        \"utiliser\",\n        -12.267793655395508\n      ],\n      [\n        \"▁amazed\",\n        -12.267799377441406\n      ],\n      [\n        \"ächtig\",\n        -12.26783275604248\n      ],\n      [\n        \"▁Success\",\n        -12.267870903015137\n      ],\n      [\n        \"gramm\",\n        -12.267956733703613\n      ],\n      [\n        \"▁1972\",\n        -12.267956733703613\n      ],\n      [\n        \"▁marina\",\n        -12.268269538879395\n      ],\n      [\n        \"▁lou\",\n        -12.268321990966797\n      ],\n      [\n        \"▁précis\",\n        -12.268380165100098\n      ],\n      [\n        \"ographic\",\n        -12.268482208251953\n      ],\n      [\n        \"people\",\n        -12.26848316192627\n      ],\n      [\n        \"fahr\",\n        -12.268547058105469\n      ],\n      [\n        \"▁Contemporary\",\n        -12.268550872802734\n      ],\n      [\n        \"▁frustrating\",\n        -12.26858139038086\n      ],\n      [\n        \"chide\",\n        -12.268704414367676\n      ],\n      [\n        \"1.5\",\n        -12.268807411193848\n      ],\n      [\n        \"▁ankle\",\n        -12.268850326538086\n      ],\n      [\n        \"▁proximity\",\n        -12.268986701965332\n      ],\n      [\n        \"▁Leute\",\n        -12.269006729125977\n      ],\n      [\n        \"UA\",\n        -12.269031524658203\n      ],\n      [\n        \"union\",\n        -12.269131660461426\n      ],\n      [\n        \"▁recovered\",\n        -12.269133567810059\n      ],\n      [\n        \"▁sword\",\n        -12.269216537475586\n      ],\n      [\n        \"▁Mut\",\n        -12.26923942565918\n      ],\n      [\n        \"▁Rin\",\n        -12.269360542297363\n      ],\n      [\n        \"▁lectures\",\n        -12.26942253112793\n      ],\n      [\n        \"▁licensing\",\n        -12.269423484802246\n      ],\n      [\n        \"MAC\",\n        -12.269498825073242\n      ],\n      [\n        \"▁commute\",\n        -12.269776344299316\n      ],\n      [\n        \"Acesta\",\n        -12.269858360290527\n      ],\n      [\n        \"▁Koch\",\n        -12.270088195800781\n      ],\n      [\n        \"▁depozit\",\n        -12.270119667053223\n      ],\n      [\n        \"▁erstmal\",\n        -12.270163536071777\n      ],\n      [\n        \"arhi\",\n        -12.270271301269531\n      ],\n      [\n        \"▁Normal\",\n        -12.270462036132812\n      ],\n      [\n        \"EZ\",\n        -12.270464897155762\n      ],\n      [\n        \"ărilor\",\n        -12.270986557006836\n      ],\n      [\n        \"▁favoris\",\n        -12.271041870117188\n      ],\n      [\n        \"▁$9\",\n        -12.271050453186035\n      ],\n      [\n        \"▁Lawrence\",\n        -12.271172523498535\n      ],\n      [\n        \"▁fixing\",\n        -12.271200180053711\n      ],\n      [\n        \"▁researching\",\n        -12.271288871765137\n      ],\n      [\n        \"▁Pant\",\n        -12.271467208862305\n      ],\n      [\n        \"▁candid\",\n        -12.271490097045898\n      ],\n      [\n        \"▁Arkansas\",\n        -12.27160930633545\n      ],\n      [\n        \"▁bitcoin\",\n        -12.271612167358398\n      ],\n      [\n        \"ва\",\n        -12.271645545959473\n      ],\n      [\n        \"▁Finger\",\n        -12.271692276000977\n      ],\n      [\n        \"▁SRL\",\n        -12.271718978881836\n      ],\n      [\n        \"Arg\",\n        -12.271797180175781\n      ],\n      [\n        \"trade\",\n        -12.271903991699219\n      ],\n      [\n        \"▁extraction\",\n        -12.271941184997559\n      ],\n      [\n        \"▁footprint\",\n        -12.2720308303833\n      ],\n      [\n        \"▁folosite\",\n        -12.272085189819336\n      ],\n      [\n        \"▁Flex\",\n        -12.272184371948242\n      ],\n      [\n        \"▁dys\",\n        -12.272294998168945\n      ],\n      [\n        \"▁Wright\",\n        -12.272343635559082\n      ],\n      [\n        \"▁multitude\",\n        -12.272378921508789\n      ],\n      [\n        \"▁Chu\",\n        -12.272494316101074\n      ],\n      [\n        \"▁Jerry\",\n        -12.27249526977539\n      ],\n      [\n        \"▁notebook\",\n        -12.272722244262695\n      ],\n      [\n        \"▁SIM\",\n        -12.272932052612305\n      ],\n      [\n        \"dietary\",\n        -12.272963523864746\n      ],\n      [\n        \"▁polished\",\n        -12.272984504699707\n      ],\n      [\n        \"▁carriers\",\n        -12.272993087768555\n      ],\n      [\n        \"▁cardiac\",\n        -12.27299976348877\n      ],\n      [\n        \"▁burned\",\n        -12.273038864135742\n      ],\n      [\n        \"▁sealed\",\n        -12.273062705993652\n      ],\n      [\n        \"▁pumps\",\n        -12.273224830627441\n      ],\n      [\n        \"▁consumed\",\n        -12.273233413696289\n      ],\n      [\n        \"▁Teaching\",\n        -12.273446083068848\n      ],\n      [\n        \"▁daughters\",\n        -12.27348518371582\n      ],\n      [\n        \"serviciile\",\n        -12.273600578308105\n      ],\n      [\n        \"▁Teams\",\n        -12.273690223693848\n      ],\n      [\n        \"▁avoided\",\n        -12.273903846740723\n      ],\n      [\n        \"▁compagnie\",\n        -12.274019241333008\n      ],\n      [\n        \"▁mașin\",\n        -12.274024963378906\n      ],\n      [\n        \"▁Sean\",\n        -12.27418041229248\n      ],\n      [\n        \"▁arunc\",\n        -12.274208068847656\n      ],\n      [\n        \"kräfte\",\n        -12.274238586425781\n      ],\n      [\n        \"vani\",\n        -12.274255752563477\n      ],\n      [\n        \"Metall\",\n        -12.27437973022461\n      ],\n      [\n        \"2009\",\n        -12.274449348449707\n      ],\n      [\n        \"moi\",\n        -12.274688720703125\n      ],\n      [\n        \"▁THAT\",\n        -12.274700164794922\n      ],\n      [\n        \"▁Ny\",\n        -12.274809837341309\n      ],\n      [\n        \"▁countertops\",\n        -12.274860382080078\n      ],\n      [\n        \"Pod\",\n        -12.274938583374023\n      ],\n      [\n        \"amente\",\n        -12.274943351745605\n      ],\n      [\n        \"▁offshore\",\n        -12.275001525878906\n      ],\n      [\n        \"luti\",\n        -12.275087356567383\n      ],\n      [\n        \"parked\",\n        -12.275160789489746\n      ],\n      [\n        \"ajout\",\n        -12.275247573852539\n      ],\n      [\n        \"Shirt\",\n        -12.275328636169434\n      ],\n      [\n        \"▁3/4\",\n        -12.275389671325684\n      ],\n      [\n        \"▁gratuite\",\n        -12.27543830871582\n      ],\n      [\n        \"mètres\",\n        -12.27557373046875\n      ],\n      [\n        \"▁Wish\",\n        -12.2755765914917\n      ],\n      [\n        \"▁holistic\",\n        -12.27558422088623\n      ],\n      [\n        \"gren\",\n        -12.275607109069824\n      ],\n      [\n        \"compiled\",\n        -12.275660514831543\n      ],\n      [\n        \"▁innocent\",\n        -12.275779724121094\n      ],\n      [\n        \"▁sorte\",\n        -12.275787353515625\n      ],\n      [\n        \"▁insulin\",\n        -12.275792121887207\n      ],\n      [\n        \"▁Academic\",\n        -12.275996208190918\n      ],\n      [\n        \"▁acrylic\",\n        -12.27600383758545\n      ],\n      [\n        \"▁hinzu\",\n        -12.27616024017334\n      ],\n      [\n        \"▁compression\",\n        -12.27619457244873\n      ],\n      [\n        \"▁viral\",\n        -12.276220321655273\n      ],\n      [\n        \"▁stereo\",\n        -12.2764892578125\n      ],\n      [\n        \"▁Concept\",\n        -12.276542663574219\n      ],\n      [\n        \"▁Margaret\",\n        -12.276659965515137\n      ],\n      [\n        \"▁consolidation\",\n        -12.276875495910645\n      ],\n      [\n        \"Figure\",\n        -12.277058601379395\n      ],\n      [\n        \"zzo\",\n        -12.277061462402344\n      ],\n      [\n        \"▁Egg\",\n        -12.277098655700684\n      ],\n      [\n        \"weiterhin\",\n        -12.277213096618652\n      ],\n      [\n        \"▁Vista\",\n        -12.277252197265625\n      ],\n      [\n        \"▁necessity\",\n        -12.277316093444824\n      ],\n      [\n        \"▁kayak\",\n        -12.277490615844727\n      ],\n      [\n        \"▁consensus\",\n        -12.277535438537598\n      ],\n      [\n        \"▁Katz\",\n        -12.277602195739746\n      ],\n      [\n        \"▁Warren\",\n        -12.277640342712402\n      ],\n      [\n        \"▁custody\",\n        -12.277755737304688\n      ],\n      [\n        \"++\",\n        -12.277759552001953\n      ],\n      [\n        \"▁paiement\",\n        -12.277782440185547\n      ],\n      [\n        \"▁foul\",\n        -12.277878761291504\n      ],\n      [\n        \"Chaque\",\n        -12.277934074401855\n      ],\n      [\n        \"▁Syrian\",\n        -12.277998924255371\n      ],\n      [\n        \"▁photographers\",\n        -12.278056144714355\n      ],\n      [\n        \"▁dismiss\",\n        -12.278270721435547\n      ],\n      [\n        \"▁Gaz\",\n        -12.278526306152344\n      ],\n      [\n        \"▁développer\",\n        -12.278529167175293\n      ],\n      [\n        \"▁Dakota\",\n        -12.27863883972168\n      ],\n      [\n        \"▁cardiovascular\",\n        -12.278642654418945\n      ],\n      [\n        \"▁tattoo\",\n        -12.278858184814453\n      ],\n      [\n        \"▁Lighting\",\n        -12.278918266296387\n      ],\n      [\n        \"▁nowhere\",\n        -12.278940200805664\n      ],\n      [\n        \"vada\",\n        -12.27895450592041\n      ],\n      [\n        \"▁Favor\",\n        -12.279084205627441\n      ],\n      [\n        \"ruled\",\n        -12.2791748046875\n      ],\n      [\n        \"▁Dating\",\n        -12.2793550491333\n      ],\n      [\n        \"gain\",\n        -12.279963493347168\n      ],\n      [\n        \"rism\",\n        -12.28016471862793\n      ],\n      [\n        \"coloured\",\n        -12.280169486999512\n      ],\n      [\n        \"▁refugees\",\n        -12.280184745788574\n      ],\n      [\n        \"▁Schm\",\n        -12.2803955078125\n      ],\n      [\n        \"▁happily\",\n        -12.280402183532715\n      ],\n      [\n        \"▁specification\",\n        -12.280607223510742\n      ],\n      [\n        \"WM\",\n        -12.280736923217773\n      ],\n      [\n        \"▁intro\",\n        -12.280823707580566\n      ],\n      [\n        \"rack\",\n        -12.28097915649414\n      ],\n      [\n        \"characterized\",\n        -12.28107738494873\n      ],\n      [\n        \"▁externe\",\n        -12.281136512756348\n      ],\n      [\n        \"▁arrives\",\n        -12.28114128112793\n      ],\n      [\n        \"WO\",\n        -12.281181335449219\n      ],\n      [\n        \"bericht\",\n        -12.281233787536621\n      ],\n      [\n        \"▁delays\",\n        -12.281242370605469\n      ],\n      [\n        \"▁Flight\",\n        -12.281256675720215\n      ],\n      [\n        \"1-3\",\n        -12.281524658203125\n      ],\n      [\n        \"▁Singh\",\n        -12.281548500061035\n      ],\n      [\n        \"▁shifting\",\n        -12.281651496887207\n      ],\n      [\n        \"▁dashboard\",\n        -12.281729698181152\n      ],\n      [\n        \"▁lieux\",\n        -12.281781196594238\n      ],\n      [\n        \"▁validate\",\n        -12.281901359558105\n      ],\n      [\n        \"▁uniquement\",\n        -12.281963348388672\n      ],\n      [\n        \"clip\",\n        -12.28199291229248\n      ],\n      [\n        \"cov\",\n        -12.282132148742676\n      ],\n      [\n        \"▁tendance\",\n        -12.282215118408203\n      ],\n      [\n        \"èle\",\n        -12.282258033752441\n      ],\n      [\n        \"▁incepe\",\n        -12.282261848449707\n      ],\n      [\n        \"▁chunk\",\n        -12.282585144042969\n      ],\n      [\n        \"▁Nr\",\n        -12.28266716003418\n      ],\n      [\n        \"▁Montana\",\n        -12.282674789428711\n      ],\n      [\n        \"▁sticks\",\n        -12.28277587890625\n      ],\n      [\n        \"▁caps\",\n        -12.28309154510498\n      ],\n      [\n        \"▁Jimmy\",\n        -12.283167839050293\n      ],\n      [\n        \"▁Levi\",\n        -12.283285140991211\n      ],\n      [\n        \"▁cables\",\n        -12.28345012664795\n      ],\n      [\n        \"▁SB\",\n        -12.283550262451172\n      ],\n      [\n        \"▁thème\",\n        -12.2836275100708\n      ],\n      [\n        \"ADA\",\n        -12.283672332763672\n      ],\n      [\n        \"▁garant\",\n        -12.283686637878418\n      ],\n      [\n        \"▁Joint\",\n        -12.283820152282715\n      ],\n      [\n        \"▁partage\",\n        -12.28398323059082\n      ],\n      [\n        \"schreib\",\n        -12.284119606018066\n      ],\n      [\n        \"ether\",\n        -12.28420352935791\n      ],\n      [\n        \"▁Klima\",\n        -12.284303665161133\n      ],\n      [\n        \"▁medicines\",\n        -12.284317016601562\n      ],\n      [\n        \"▁pH\",\n        -12.284320831298828\n      ],\n      [\n        \"Architect\",\n        -12.284378051757812\n      ],\n      [\n        \"știi\",\n        -12.284396171569824\n      ],\n      [\n        \"▁retrouve\",\n        -12.284700393676758\n      ],\n      [\n        \"▁posture\",\n        -12.284753799438477\n      ],\n      [\n        \"Feature\",\n        -12.284773826599121\n      ],\n      [\n        \"▁drying\",\n        -12.284884452819824\n      ],\n      [\n        \"trifft\",\n        -12.28488826751709\n      ],\n      [\n        \"ibi\",\n        -12.285079002380371\n      ],\n      [\n        \"▁rezerv\",\n        -12.285116195678711\n      ],\n      [\n        \"▁Vă\",\n        -12.28518009185791\n      ],\n      [\n        \"▁Speaker\",\n        -12.285282135009766\n      ],\n      [\n        \"▁illustration\",\n        -12.285319328308105\n      ],\n      [\n        \"oooo\",\n        -12.285419464111328\n      ],\n      [\n        \"▁initiated\",\n        -12.285518646240234\n      ],\n      [\n        \"PK\",\n        -12.285545349121094\n      ],\n      [\n        \"▁algorithms\",\n        -12.285630226135254\n      ],\n      [\n        \"▁zice\",\n        -12.285757064819336\n      ],\n      [\n        \"WI\",\n        -12.28581428527832\n      ],\n      [\n        \"urgence\",\n        -12.285823822021484\n      ],\n      [\n        \"▁bloggers\",\n        -12.285887718200684\n      ],\n      [\n        \"▁realitate\",\n        -12.285894393920898\n      ],\n      [\n        \"eks\",\n        -12.28598690032959\n      ],\n      [\n        \"▁cushions\",\n        -12.286149024963379\n      ],\n      [\n        \"▁Kri\",\n        -12.286224365234375\n      ],\n      [\n        \"▁réalisation\",\n        -12.286396026611328\n      ],\n      [\n        \"▁Photoshop\",\n        -12.286407470703125\n      ],\n      [\n        \"cret\",\n        -12.286462783813477\n      ],\n      [\n        \"faire\",\n        -12.286613464355469\n      ],\n      [\n        \"▁Cei\",\n        -12.286782264709473\n      ],\n      [\n        \"ICO\",\n        -12.286789894104004\n      ],\n      [\n        \"Contin\",\n        -12.28681755065918\n      ],\n      [\n        \"▁Builder\",\n        -12.286916732788086\n      ],\n      [\n        \"look\",\n        -12.28698444366455\n      ],\n      [\n        \"▁tenants\",\n        -12.287023544311523\n      ],\n      [\n        \"▁gloves\",\n        -12.287113189697266\n      ],\n      [\n        \"Day\",\n        -12.287169456481934\n      ],\n      [\n        \"firmly\",\n        -12.28725814819336\n      ],\n      [\n        \"CIA\",\n        -12.287352561950684\n      ],\n      [\n        \"▁TVA\",\n        -12.28741455078125\n      ],\n      [\n        \"▁notifications\",\n        -12.287446975708008\n      ],\n      [\n        \"▁Higher\",\n        -12.287459373474121\n      ],\n      [\n        \"▁Weihnachts\",\n        -12.287491798400879\n      ],\n      [\n        \"▁blur\",\n        -12.287755012512207\n      ],\n      [\n        \"ов\",\n        -12.288087844848633\n      ],\n      [\n        \"feder\",\n        -12.288159370422363\n      ],\n      [\n        \"▁explosion\",\n        -12.288171768188477\n      ],\n      [\n        \"▁Fenster\",\n        -12.288189888000488\n      ],\n      [\n        \"▁junge\",\n        -12.288225173950195\n      ],\n      [\n        \"▁Highland\",\n        -12.288230895996094\n      ],\n      [\n        \"▁Lü\",\n        -12.288290023803711\n      ],\n      [\n        \"▁Alba\",\n        -12.28832721710205\n      ],\n      [\n        \"▁Dort\",\n        -12.288338661193848\n      ],\n      [\n        \"▁recruiting\",\n        -12.28835391998291\n      ],\n      [\n        \"▁Multiple\",\n        -12.288549423217773\n      ],\n      [\n        \"▁animated\",\n        -12.288604736328125\n      ],\n      [\n        \"▁Virgin\",\n        -12.288637161254883\n      ],\n      [\n        \"1000\",\n        -12.288676261901855\n      ],\n      [\n        \"▁resin\",\n        -12.288700103759766\n      ],\n      [\n        \"▁matrix\",\n        -12.288826942443848\n      ],\n      [\n        \"irri\",\n        -12.289011001586914\n      ],\n      [\n        \"▁chiffre\",\n        -12.28904914855957\n      ],\n      [\n        \"▁Corps\",\n        -12.289252281188965\n      ],\n      [\n        \"▁advocacy\",\n        -12.28927230834961\n      ],\n      [\n        \"▁pozitiv\",\n        -12.289274215698242\n      ],\n      [\n        \"▁pouss\",\n        -12.289451599121094\n      ],\n      [\n        \"événement\",\n        -12.28950309753418\n      ],\n      [\n        \"▁pielii\",\n        -12.289717674255371\n      ],\n      [\n        \"onnais\",\n        -12.289750099182129\n      ],\n      [\n        \"▁Statement\",\n        -12.289754867553711\n      ],\n      [\n        \"crimin\",\n        -12.289868354797363\n      ],\n      [\n        \"hidrat\",\n        -12.289942741394043\n      ],\n      [\n        \"▁Jugendliche\",\n        -12.290057182312012\n      ],\n      [\n        \"TRI\",\n        -12.290223121643066\n      ],\n      [\n        \"erra\",\n        -12.290240287780762\n      ],\n      [\n        \"chat\",\n        -12.290321350097656\n      ],\n      [\n        \"▁traits\",\n        -12.290359497070312\n      ],\n      [\n        \"▁incentives\",\n        -12.29038143157959\n      ],\n      [\n        \"▁accelerate\",\n        -12.290568351745605\n      ],\n      [\n        \"woven\",\n        -12.290633201599121\n      ],\n      [\n        \"UST\",\n        -12.290688514709473\n      ],\n      [\n        \"▁premiers\",\n        -12.290717124938965\n      ],\n      [\n        \"▁Ferien\",\n        -12.290755271911621\n      ],\n      [\n        \"▁mariage\",\n        -12.290796279907227\n      ],\n      [\n        \"▁financially\",\n        -12.290801048278809\n      ],\n      [\n        \"gesellschaft\",\n        -12.290863037109375\n      ],\n      [\n        \"▁situaţi\",\n        -12.290865898132324\n      ],\n      [\n        \"▁quoted\",\n        -12.291373252868652\n      ],\n      [\n        \"▁periodic\",\n        -12.291421890258789\n      ],\n      [\n        \"▁chaos\",\n        -12.291543960571289\n      ],\n      [\n        \"▁remodel\",\n        -12.29159927368164\n      ],\n      [\n        \"▁Contractor\",\n        -12.291641235351562\n      ],\n      [\n        \"▁recuper\",\n        -12.291729927062988\n      ],\n      [\n        \"▁driveway\",\n        -12.291755676269531\n      ],\n      [\n        \"▁entertain\",\n        -12.291765213012695\n      ],\n      [\n        \"▁condus\",\n        -12.291769027709961\n      ],\n      [\n        \"▁chefs\",\n        -12.29184341430664\n      ],\n      [\n        \"pak\",\n        -12.291866302490234\n      ],\n      [\n        \"▁possède\",\n        -12.291948318481445\n      ],\n      [\n        \"▁outreach\",\n        -12.291984558105469\n      ],\n      [\n        \"▁navig\",\n        -12.292036056518555\n      ],\n      [\n        \"▁renewal\",\n        -12.292071342468262\n      ],\n      [\n        \"▁Rice\",\n        -12.292309761047363\n      ],\n      [\n        \"▁Czech\",\n        -12.292398452758789\n      ],\n      [\n        \"▁entstehen\",\n        -12.292445182800293\n      ],\n      [\n        \"▁droite\",\n        -12.292448997497559\n      ],\n      [\n        \"▁Investor\",\n        -12.292497634887695\n      ],\n      [\n        \"▁Soci\",\n        -12.29250431060791\n      ],\n      [\n        \"▁scalp\",\n        -12.292622566223145\n      ],\n      [\n        \"▁politiques\",\n        -12.292815208435059\n      ],\n      [\n        \"▁plaintiff\",\n        -12.292841911315918\n      ],\n      [\n        \"extending\",\n        -12.29287052154541\n      ],\n      [\n        \"▁paperwork\",\n        -12.29300594329834\n      ],\n      [\n        \"vizi\",\n        -12.293142318725586\n      ],\n      [\n        \"assisting\",\n        -12.29317569732666\n      ],\n      [\n        \"local\",\n        -12.293272972106934\n      ],\n      [\n        \"▁Wear\",\n        -12.293323516845703\n      ],\n      [\n        \"▁descend\",\n        -12.293340682983398\n      ],\n      [\n        \"▁Wikipedia\",\n        -12.293513298034668\n      ],\n      [\n        \"▁Consiliului\",\n        -12.293516159057617\n      ],\n      [\n        \"▁Nokia\",\n        -12.293540000915527\n      ],\n      [\n        \"▁facult\",\n        -12.293560028076172\n      ],\n      [\n        \"▁altogether\",\n        -12.293851852416992\n      ],\n      [\n        \"▁rankings\",\n        -12.29391860961914\n      ],\n      [\n        \"▁downloading\",\n        -12.293953895568848\n      ],\n      [\n        \"QU\",\n        -12.294007301330566\n      ],\n      [\n        \"▁Olive\",\n        -12.294041633605957\n      ],\n      [\n        \"▁backdrop\",\n        -12.294110298156738\n      ],\n      [\n        \"▁recomandat\",\n        -12.294116020202637\n      ],\n      [\n        \"▁Faculty\",\n        -12.294184684753418\n      ],\n      [\n        \"ANS\",\n        -12.294220924377441\n      ],\n      [\n        \"▁fracture\",\n        -12.294225692749023\n      ],\n      [\n        \"job\",\n        -12.29448127746582\n      ],\n      [\n        \"▁anticipate\",\n        -12.294525146484375\n      ],\n      [\n        \"▁drift\",\n        -12.294543266296387\n      ],\n      [\n        \"▁Marco\",\n        -12.294632911682129\n      ],\n      [\n        \"▁witnessed\",\n        -12.294700622558594\n      ],\n      [\n        \"▁comprend\",\n        -12.294974327087402\n      ],\n      [\n        \"▁bulb\",\n        -12.29504680633545\n      ],\n      [\n        \"▁shallow\",\n        -12.295059204101562\n      ],\n      [\n        \"stärke\",\n        -12.295063972473145\n      ],\n      [\n        \"▁Jessica\",\n        -12.295080184936523\n      ],\n      [\n        \"▁démarche\",\n        -12.29508113861084\n      ],\n      [\n        \"▁traditionally\",\n        -12.29508113861084\n      ],\n      [\n        \"Deputy\",\n        -12.295093536376953\n      ],\n      [\n        \"▁rivers\",\n        -12.295260429382324\n      ],\n      [\n        \"▁livraison\",\n        -12.29531192779541\n      ],\n      [\n        \"▁lacking\",\n        -12.295421600341797\n      ],\n      [\n        \"▁remodeling\",\n        -12.295426368713379\n      ],\n      [\n        \"▁acesteia\",\n        -12.295514106750488\n      ],\n      [\n        \"▁grosse\",\n        -12.295669555664062\n      ],\n      [\n        \"▁propus\",\n        -12.295833587646484\n      ],\n      [\n        \"lessly\",\n        -12.29587459564209\n      ],\n      [\n        \"▁Kredit\",\n        -12.295931816101074\n      ],\n      [\n        \"reputable\",\n        -12.295981407165527\n      ],\n      [\n        \"▁Sell\",\n        -12.2960205078125\n      ],\n      [\n        \"▁Crime\",\n        -12.296111106872559\n      ],\n      [\n        \"Ent\",\n        -12.296310424804688\n      ],\n      [\n        \"finity\",\n        -12.296422004699707\n      ],\n      [\n        \"▁Complex\",\n        -12.296500205993652\n      ],\n      [\n        \"easing\",\n        -12.296638488769531\n      ],\n      [\n        \"dynamic\",\n        -12.296670913696289\n      ],\n      [\n        \"▁eaten\",\n        -12.296727180480957\n      ],\n      [\n        \"gezogen\",\n        -12.296734809875488\n      ],\n      [\n        \"▁2004,\",\n        -12.296774864196777\n      ],\n      [\n        \"▁Muslims\",\n        -12.296822547912598\n      ],\n      [\n        \"▁Sprache\",\n        -12.296883583068848\n      ],\n      [\n        \"▁Truth\",\n        -12.296927452087402\n      ],\n      [\n        \"▁guarantees\",\n        -12.296928405761719\n      ],\n      [\n        \"/5\",\n        -12.29712963104248\n      ],\n      [\n        \"”).\",\n        -12.297135353088379\n      ],\n      [\n        \"▁Medium\",\n        -12.2972993850708\n      ],\n      [\n        \"▁décidé\",\n        -12.297445297241211\n      ],\n      [\n        \"▁balcony\",\n        -12.29747200012207\n      ],\n      [\n        \"leuchte\",\n        -12.297502517700195\n      ],\n      [\n        \"hik\",\n        -12.297849655151367\n      ],\n      [\n        \"▁Agriculture\",\n        -12.298221588134766\n      ],\n      [\n        \"▁securities\",\n        -12.298221588134766\n      ],\n      [\n        \"Probably\",\n        -12.298224449157715\n      ],\n      [\n        \"▁macar\",\n        -12.29824161529541\n      ],\n      [\n        \"▁Signal\",\n        -12.298399925231934\n      ],\n      [\n        \"lake\",\n        -12.298677444458008\n      ],\n      [\n        \"▁compétences\",\n        -12.298726081848145\n      ],\n      [\n        \"▁proprietary\",\n        -12.298812866210938\n      ],\n      [\n        \"allons\",\n        -12.298850059509277\n      ],\n      [\n        \"▁belongs\",\n        -12.298916816711426\n      ],\n      [\n        \"▁missile\",\n        -12.298958778381348\n      ],\n      [\n        \"țiune\",\n        -12.298999786376953\n      ],\n      [\n        \"▁Integration\",\n        -12.299116134643555\n      ],\n      [\n        \"▁testimony\",\n        -12.299120903015137\n      ],\n      [\n        \"▁wesentlich\",\n        -12.299142837524414\n      ],\n      [\n        \"▁donors\",\n        -12.299152374267578\n      ],\n      [\n        \"▁pivot\",\n        -12.299202919006348\n      ],\n      [\n        \"▁Uber\",\n        -12.299219131469727\n      ],\n      [\n        \"▁databases\",\n        -12.299281120300293\n      ],\n      [\n        \"▁studi\",\n        -12.299317359924316\n      ],\n      [\n        \"totdeauna\",\n        -12.299351692199707\n      ],\n      [\n        \"▁briefly\",\n        -12.299449920654297\n      ],\n      [\n        \"▁livr\",\n        -12.29952335357666\n      ],\n      [\n        \"▁CRM\",\n        -12.299581527709961\n      ],\n      [\n        \"gone\",\n        -12.299697875976562\n      ],\n      [\n        \"10)\",\n        -12.299761772155762\n      ],\n      [\n        \"▁zilele\",\n        -12.299920082092285\n      ],\n      [\n        \"Basically\",\n        -12.300008773803711\n      ],\n      [\n        \"▁medie\",\n        -12.300041198730469\n      ],\n      [\n        \"spotted\",\n        -12.30006217956543\n      ],\n      [\n        \"▁troubles\",\n        -12.30009937286377\n      ],\n      [\n        \"▁acknowledged\",\n        -12.300176620483398\n      ],\n      [\n        \"350\",\n        -12.300185203552246\n      ],\n      [\n        \"LB\",\n        -12.300273895263672\n      ],\n      [\n        \"Phy\",\n        -12.30038833618164\n      ],\n      [\n        \"natal\",\n        -12.300397872924805\n      ],\n      [\n        \"illé\",\n        -12.300445556640625\n      ],\n      [\n        \"bilder\",\n        -12.300625801086426\n      ],\n      [\n        \"▁apples\",\n        -12.300636291503906\n      ],\n      [\n        \"graphical\",\n        -12.300889015197754\n      ],\n      [\n        \"organiser\",\n        -12.301024436950684\n      ],\n      [\n        \"▁ochii\",\n        -12.301040649414062\n      ],\n      [\n        \"glas\",\n        -12.301178932189941\n      ],\n      [\n        \"CAP\",\n        -12.301180839538574\n      ],\n      [\n        \"▁Doors\",\n        -12.301331520080566\n      ],\n      [\n        \"▁Eis\",\n        -12.30156135559082\n      ],\n      [\n        \"tipuri\",\n        -12.301590919494629\n      ],\n      [\n        \"▁Worth\",\n        -12.301684379577637\n      ],\n      [\n        \"izează\",\n        -12.301719665527344\n      ],\n      [\n        \"nunț\",\n        -12.30180549621582\n      ],\n      [\n        \"▁Trip\",\n        -12.30186653137207\n      ],\n      [\n        \"ISS\",\n        -12.301976203918457\n      ],\n      [\n        \"efficient\",\n        -12.30201530456543\n      ],\n      [\n        \"Luckily\",\n        -12.302099227905273\n      ],\n      [\n        \"▁vase\",\n        -12.302133560180664\n      ],\n      [\n        \"▁gay\",\n        -12.302343368530273\n      ],\n      [\n        \"▁certificates\",\n        -12.302434921264648\n      ],\n      [\n        \"riad\",\n        -12.302549362182617\n      ],\n      [\n        \"stab\",\n        -12.302570343017578\n      ],\n      [\n        \"affiche\",\n        -12.302604675292969\n      ],\n      [\n        \"▁iPod\",\n        -12.302645683288574\n      ],\n      [\n        \"▁aștept\",\n        -12.302726745605469\n      ],\n      [\n        \"▁$500\",\n        -12.302751541137695\n      ],\n      [\n        \"▁Catherine\",\n        -12.302952766418457\n      ],\n      [\n        \"▁Circuit\",\n        -12.302957534790039\n      ],\n      [\n        \"▁ranch\",\n        -12.303045272827148\n      ],\n      [\n        \"▁consequence\",\n        -12.303118705749512\n      ],\n      [\n        \"listened\",\n        -12.303131103515625\n      ],\n      [\n        \"▁Options\",\n        -12.303187370300293\n      ],\n      [\n        \"feed\",\n        -12.30318832397461\n      ],\n      [\n        \"▁adviser\",\n        -12.303248405456543\n      ],\n      [\n        \"▁présenter\",\n        -12.30333423614502\n      ],\n      [\n        \"substant\",\n        -12.30337905883789\n      ],\n      [\n        \"▁Flag\",\n        -12.303604125976562\n      ],\n      [\n        \"▁Keith\",\n        -12.30366325378418\n      ],\n      [\n        \"▁inima\",\n        -12.303709983825684\n      ],\n      [\n        \"▁substrate\",\n        -12.30373764038086\n      ],\n      [\n        \"▁charger\",\n        -12.303803443908691\n      ],\n      [\n        \"▁reporter\",\n        -12.303844451904297\n      ],\n      [\n        \"ütz\",\n        -12.304068565368652\n      ],\n      [\n        \"▁unten\",\n        -12.30417537689209\n      ],\n      [\n        \"▁sympa\",\n        -12.304542541503906\n      ],\n      [\n        \"▁defeated\",\n        -12.304600715637207\n      ],\n      [\n        \"ändig\",\n        -12.304644584655762\n      ],\n      [\n        \"individu\",\n        -12.304747581481934\n      ],\n      [\n        \"▁Straßen\",\n        -12.304774284362793\n      ],\n      [\n        \"▁Nepal\",\n        -12.304791450500488\n      ],\n      [\n        \"million\",\n        -12.304803848266602\n      ],\n      [\n        \"▁Cake\",\n        -12.30499267578125\n      ],\n      [\n        \"▁investigations\",\n        -12.30526065826416\n      ],\n      [\n        \"▁inspector\",\n        -12.3054780960083\n      ],\n      [\n        \"▁Campbell\",\n        -12.305486679077148\n      ],\n      [\n        \"▁consommation\",\n        -12.305489540100098\n      ],\n      [\n        \"▁Ministerul\",\n        -12.305628776550293\n      ],\n      [\n        \"Advisory\",\n        -12.305749893188477\n      ],\n      [\n        \"▁Leistungs\",\n        -12.305939674377441\n      ],\n      [\n        \"▁Pull\",\n        -12.306157112121582\n      ],\n      [\n        \"▁lover\",\n        -12.306194305419922\n      ],\n      [\n        \"▁trunk\",\n        -12.306380271911621\n      ],\n      [\n        \"▁folosesc\",\n        -12.30639934539795\n      ],\n      [\n        \"pom\",\n        -12.306558609008789\n      ],\n      [\n        \"wunder\",\n        -12.306794166564941\n      ],\n      [\n        \"▁happier\",\n        -12.306801795959473\n      ],\n      [\n        \"▁embark\",\n        -12.30689525604248\n      ],\n      [\n        \"▁mediul\",\n        -12.3069486618042\n      ],\n      [\n        \"riff\",\n        -12.306973457336426\n      ],\n      [\n        \"▁copilul\",\n        -12.307039260864258\n      ],\n      [\n        \"ommage\",\n        -12.307126998901367\n      ],\n      [\n        \"rechnung\",\n        -12.307218551635742\n      ],\n      [\n        \"NU\",\n        -12.307220458984375\n      ],\n      [\n        \"▁fellowship\",\n        -12.307395935058594\n      ],\n      [\n        \"▁Mental\",\n        -12.307403564453125\n      ],\n      [\n        \"▁fever\",\n        -12.3074312210083\n      ],\n      [\n        \"▁silly\",\n        -12.307547569274902\n      ],\n      [\n        \"Object\",\n        -12.30756664276123\n      ],\n      [\n        \"NV\",\n        -12.307591438293457\n      ],\n      [\n        \"от\",\n        -12.30774974822998\n      ],\n      [\n        \"▁Strand\",\n        -12.307762145996094\n      ],\n      [\n        \"▁Exist\",\n        -12.30777359008789\n      ],\n      [\n        \"warum\",\n        -12.307832717895508\n      ],\n      [\n        \"CY\",\n        -12.307848930358887\n      ],\n      [\n        \"kä\",\n        -12.307856559753418\n      ],\n      [\n        \"!!!!!\",\n        -12.307869911193848\n      ],\n      [\n        \"▁moarte\",\n        -12.30793571472168\n      ],\n      [\n        \"▁waterfall\",\n        -12.308024406433105\n      ],\n      [\n        \"left\",\n        -12.30815601348877\n      ],\n      [\n        \"▁Nursing\",\n        -12.308225631713867\n      ],\n      [\n        \"▁invalid\",\n        -12.30826187133789\n      ],\n      [\n        \"struktur\",\n        -12.308385848999023\n      ],\n      [\n        \"Allerdings\",\n        -12.30838680267334\n      ],\n      [\n        \"étranger\",\n        -12.30838680267334\n      ],\n      [\n        \"▁prost\",\n        -12.308517456054688\n      ],\n      [\n        \"▁Parent\",\n        -12.308562278747559\n      ],\n      [\n        \"▁întreag\",\n        -12.308611869812012\n      ],\n      [\n        \"▁compensate\",\n        -12.308871269226074\n      ],\n      [\n        \"▁sometime\",\n        -12.308955192565918\n      ],\n      [\n        \"graduate\",\n        -12.308968544006348\n      ],\n      [\n        \"▁Carter\",\n        -12.30898380279541\n      ],\n      [\n        \"▁crap\",\n        -12.308998107910156\n      ],\n      [\n        \"▁mathematics\",\n        -12.309067726135254\n      ],\n      [\n        \"resemble\",\n        -12.309069633483887\n      ],\n      [\n        \"Dame\",\n        -12.309152603149414\n      ],\n      [\n        \"▁Swa\",\n        -12.309198379516602\n      ],\n      [\n        \"▁celebrity\",\n        -12.309239387512207\n      ],\n      [\n        \"▁verified\",\n        -12.309338569641113\n      ],\n      [\n        \"▁Behind\",\n        -12.309349060058594\n      ],\n      [\n        \"carbon\",\n        -12.309432983398438\n      ],\n      [\n        \"▁gateway\",\n        -12.309490203857422\n      ],\n      [\n        \"▁ambitious\",\n        -12.30952262878418\n      ],\n      [\n        \"▁Wellness\",\n        -12.30966567993164\n      ],\n      [\n        \"30,000\",\n        -12.30968189239502\n      ],\n      [\n        \"defined\",\n        -12.309929847717285\n      ],\n      [\n        \"specializes\",\n        -12.310121536254883\n      ],\n      [\n        \"▁Chase\",\n        -12.310199737548828\n      ],\n      [\n        \"HF\",\n        -12.310233116149902\n      ],\n      [\n        \"ABLE\",\n        -12.310348510742188\n      ],\n      [\n        \"▁Ehr\",\n        -12.310467720031738\n      ],\n      [\n        \"▁régime\",\n        -12.310480117797852\n      ],\n      [\n        \"▁awake\",\n        -12.310487747192383\n      ],\n      [\n        \"▁seafood\",\n        -12.310487747192383\n      ],\n      [\n        \"leading\",\n        -12.310554504394531\n      ],\n      [\n        \"▁Rule\",\n        -12.310602188110352\n      ],\n      [\n        \"verkehr\",\n        -12.310726165771484\n      ],\n      [\n        \"erem\",\n        -12.310737609863281\n      ],\n      [\n        \"▁1973\",\n        -12.310795783996582\n      ],\n      [\n        \"personal\",\n        -12.311171531677246\n      ],\n      [\n        \"ența\",\n        -12.311330795288086\n      ],\n      [\n        \"apprend\",\n        -12.311396598815918\n      ],\n      [\n        \"faisant\",\n        -12.311420440673828\n      ],\n      [\n        \"▁Sounds\",\n        -12.31151008605957\n      ],\n      [\n        \"▁Launch\",\n        -12.31151294708252\n      ],\n      [\n        \"half\",\n        -12.311636924743652\n      ],\n      [\n        \"▁verre\",\n        -12.311859130859375\n      ],\n      [\n        \"▁Regular\",\n        -12.31207275390625\n      ],\n      [\n        \"▁Nancy\",\n        -12.312142372131348\n      ],\n      [\n        \"quelles\",\n        -12.312161445617676\n      ],\n      [\n        \"▁erhält\",\n        -12.312169075012207\n      ],\n      [\n        \"▁socks\",\n        -12.3121919631958\n      ],\n      [\n        \"lamp\",\n        -12.312387466430664\n      ],\n      [\n        \"▁durchgeführt\",\n        -12.312472343444824\n      ],\n      [\n        \"▁advertise\",\n        -12.31260871887207\n      ],\n      [\n        \"powered\",\n        -12.312653541564941\n      ],\n      [\n        \"▁concur\",\n        -12.312699317932129\n      ],\n      [\n        \"▁ressources\",\n        -12.31293773651123\n      ],\n      [\n        \"▁allocation\",\n        -12.312986373901367\n      ],\n      [\n        \"chon\",\n        -12.313041687011719\n      ],\n      [\n        \"▁Larry\",\n        -12.313177108764648\n      ],\n      [\n        \"lässig\",\n        -12.313254356384277\n      ],\n      [\n        \"OLD\",\n        -12.313493728637695\n      ],\n      [\n        \"itty\",\n        -12.313599586486816\n      ],\n      [\n        \"▁immuno\",\n        -12.313645362854004\n      ],\n      [\n        \"▁(+\",\n        -12.313651084899902\n      ],\n      [\n        \"▁Essential\",\n        -12.313674926757812\n      ],\n      [\n        \"▁semaines\",\n        -12.313719749450684\n      ],\n      [\n        \"Ru\",\n        -12.31375503540039\n      ],\n      [\n        \"▁Gear\",\n        -12.313764572143555\n      ],\n      [\n        \"völlig\",\n        -12.313850402832031\n      ],\n      [\n        \"liga\",\n        -12.31391716003418\n      ],\n      [\n        \"▁Neg\",\n        -12.314082145690918\n      ],\n      [\n        \"▁gratitude\",\n        -12.31408977508545\n      ],\n      [\n        \"aventure\",\n        -12.314108848571777\n      ],\n      [\n        \"▁frustrated\",\n        -12.314115524291992\n      ],\n      [\n        \"▁retrait\",\n        -12.31422233581543\n      ],\n      [\n        \"▁statut\",\n        -12.314231872558594\n      ],\n      [\n        \"550\",\n        -12.31434440612793\n      ],\n      [\n        \"ла\",\n        -12.314428329467773\n      ],\n      [\n        \"risto\",\n        -12.314448356628418\n      ],\n      [\n        \"WAY\",\n        -12.314607620239258\n      ],\n      [\n        \"▁pigment\",\n        -12.314652442932129\n      ],\n      [\n        \"Selon\",\n        -12.314715385437012\n      ],\n      [\n        \"stil\",\n        -12.3148775100708\n      ],\n      [\n        \"▁Marin\",\n        -12.315055847167969\n      ],\n      [\n        \"ashi\",\n        -12.315085411071777\n      ],\n      [\n        \"▁contine\",\n        -12.31519889831543\n      ],\n      [\n        \"▁Economics\",\n        -12.315200805664062\n      ],\n      [\n        \"both\",\n        -12.3152437210083\n      ],\n      [\n        \"▁Dou\",\n        -12.31527328491211\n      ],\n      [\n        \"Fel\",\n        -12.315373420715332\n      ],\n      [\n        \"UNT\",\n        -12.315434455871582\n      ],\n      [\n        \"▁grandmother\",\n        -12.31548023223877\n      ],\n      [\n        \"▁domicile\",\n        -12.315678596496582\n      ],\n      [\n        \"▁buffer\",\n        -12.31574535369873\n      ],\n      [\n        \"▁fuse\",\n        -12.315815925598145\n      ],\n      [\n        \"▁dosage\",\n        -12.315821647644043\n      ],\n      [\n        \"▁Nici\",\n        -12.315839767456055\n      ],\n      [\n        \"▁worries\",\n        -12.315908432006836\n      ],\n      [\n        \"▁Rail\",\n        -12.3159818649292\n      ],\n      [\n        \"uneori\",\n        -12.315990447998047\n      ],\n      [\n        \"▁Sierra\",\n        -12.316030502319336\n      ],\n      [\n        \"▁porni\",\n        -12.316032409667969\n      ],\n      [\n        \"▁NOTE\",\n        -12.316056251525879\n      ],\n      [\n        \"▁tendency\",\n        -12.316065788269043\n      ],\n      [\n        \"Set\",\n        -12.316256523132324\n      ],\n      [\n        \"▁Hof\",\n        -12.31629753112793\n      ],\n      [\n        \"▁Ruhe\",\n        -12.316300392150879\n      ],\n      [\n        \"harm\",\n        -12.316360473632812\n      ],\n      [\n        \"▁Developer\",\n        -12.316367149353027\n      ],\n      [\n        \"suing\",\n        -12.316400527954102\n      ],\n      [\n        \"persönlichen\",\n        -12.31658935546875\n      ],\n      [\n        \"▁agréable\",\n        -12.316596031188965\n      ],\n      [\n        \"commissioned\",\n        -12.316696166992188\n      ],\n      [\n        \"▁1974\",\n        -12.31672191619873\n      ],\n      [\n        \"▁1969\",\n        -12.316758155822754\n      ],\n      [\n        \"▁regl\",\n        -12.316996574401855\n      ],\n      [\n        \"▁terror\",\n        -12.317042350769043\n      ],\n      [\n        \"▁température\",\n        -12.317051887512207\n      ],\n      [\n        \"▁Archiv\",\n        -12.31706714630127\n      ],\n      [\n        \"▁Military\",\n        -12.317140579223633\n      ],\n      [\n        \"▁König\",\n        -12.317290306091309\n      ],\n      [\n        \"▁forex\",\n        -12.31737232208252\n      ],\n      [\n        \"wiki\",\n        -12.31745719909668\n      ],\n      [\n        \"thetic\",\n        -12.317506790161133\n      ],\n      [\n        \"alaturi\",\n        -12.317974090576172\n      ],\n      [\n        \"▁montant\",\n        -12.3179931640625\n      ],\n      [\n        \"▁maladie\",\n        -12.318044662475586\n      ],\n      [\n        \"gust\",\n        -12.318151473999023\n      ],\n      [\n        \"▁demander\",\n        -12.318164825439453\n      ],\n      [\n        \"avocat\",\n        -12.318191528320312\n      ],\n      [\n        \"▁sci\",\n        -12.318192481994629\n      ],\n      [\n        \"▁Wireless\",\n        -12.318214416503906\n      ],\n      [\n        \"▁Dein\",\n        -12.318220138549805\n      ],\n      [\n        \"▁trio\",\n        -12.3183012008667\n      ],\n      [\n        \"▁Same\",\n        -12.318395614624023\n      ],\n      [\n        \"Datei\",\n        -12.318464279174805\n      ],\n      [\n        \"▁alerg\",\n        -12.318578720092773\n      ],\n      [\n        \"crowded\",\n        -12.318657875061035\n      ],\n      [\n        \"▁Punkt\",\n        -12.318853378295898\n      ],\n      [\n        \"▁sanctions\",\n        -12.318864822387695\n      ],\n      [\n        \"stating\",\n        -12.318922996520996\n      ],\n      [\n        \"▁discusse\",\n        -12.318949699401855\n      ],\n      [\n        \"▁Eigen\",\n        -12.319068908691406\n      ],\n      [\n        \"▁sănătate\",\n        -12.31911563873291\n      ],\n      [\n        \"▁correspondence\",\n        -12.319211959838867\n      ],\n      [\n        \"cred\",\n        -12.319331169128418\n      ],\n      [\n        \"VG\",\n        -12.319347381591797\n      ],\n      [\n        \"▁différence\",\n        -12.319347381591797\n      ],\n      [\n        \"▁Montreal\",\n        -12.319391250610352\n      ],\n      [\n        \"▁masini\",\n        -12.319398880004883\n      ],\n      [\n        \"iata\",\n        -12.319487571716309\n      ],\n      [\n        \"▁sampling\",\n        -12.319574356079102\n      ],\n      [\n        \"▁Gib\",\n        -12.319831848144531\n      ],\n      [\n        \"▁sheer\",\n        -12.319944381713867\n      ],\n      [\n        \"330\",\n        -12.319947242736816\n      ],\n      [\n        \"CHI\",\n        -12.319990158081055\n      ],\n      [\n        \"▁damn\",\n        -12.320030212402344\n      ],\n      [\n        \"▁Advisor\",\n        -12.320201873779297\n      ],\n      [\n        \"Typically\",\n        -12.320302963256836\n      ],\n      [\n        \"ssé\",\n        -12.320352554321289\n      ],\n      [\n        \"quart\",\n        -12.320361137390137\n      ],\n      [\n        \"chete\",\n        -12.320385932922363\n      ],\n      [\n        \"▁Puerto\",\n        -12.32049560546875\n      ],\n      [\n        \"2-1\",\n        -12.32050609588623\n      ],\n      [\n        \"NN\",\n        -12.320674896240234\n      ],\n      [\n        \"▁styling\",\n        -12.320707321166992\n      ],\n      [\n        \"rud\",\n        -12.320777893066406\n      ],\n      [\n        \"од\",\n        -12.320856094360352\n      ],\n      [\n        \"▁Hydro\",\n        -12.320941925048828\n      ],\n      [\n        \"▁Cable\",\n        -12.320961952209473\n      ],\n      [\n        \"video\",\n        -12.320974349975586\n      ],\n      [\n        \"▁Wirkung\",\n        -12.321194648742676\n      ],\n      [\n        \"▁noble\",\n        -12.321270942687988\n      ],\n      [\n        \"▁Sonder\",\n        -12.32129192352295\n      ],\n      [\n        \"mati\",\n        -12.321317672729492\n      ],\n      [\n        \"850\",\n        -12.321395874023438\n      ],\n      [\n        \"▁Richmond\",\n        -12.32143497467041\n      ],\n      [\n        \"▁niciodată\",\n        -12.321442604064941\n      ],\n      [\n        \"AO\",\n        -12.321527481079102\n      ],\n      [\n        \"▁altered\",\n        -12.321648597717285\n      ],\n      [\n        \"▁(15\",\n        -12.32168960571289\n      ],\n      [\n        \"▁Motiv\",\n        -12.322052001953125\n      ],\n      [\n        \"AKE\",\n        -12.322089195251465\n      ],\n      [\n        \"▁bestimmte\",\n        -12.322172164916992\n      ],\n      [\n        \"6.5\",\n        -12.322176933288574\n      ],\n      [\n        \"hectare\",\n        -12.322333335876465\n      ],\n      [\n        \"atorită\",\n        -12.322335243225098\n      ],\n      [\n        \"▁phases\",\n        -12.322447776794434\n      ],\n      [\n        \"▁Nova\",\n        -12.322566032409668\n      ],\n      [\n        \"ordinateur\",\n        -12.322579383850098\n      ],\n      [\n        \"▁corrupt\",\n        -12.322813034057617\n      ],\n      [\n        \"error\",\n        -12.322895050048828\n      ],\n      [\n        \"▁attacked\",\n        -12.323005676269531\n      ],\n      [\n        \"▁Kirche\",\n        -12.323019981384277\n      ],\n      [\n        \"heir\",\n        -12.323040962219238\n      ],\n      [\n        \"Das\",\n        -12.323254585266113\n      ],\n      [\n        \"▁anxious\",\n        -12.323258399963379\n      ],\n      [\n        \"▁Doc\",\n        -12.323386192321777\n      ],\n      [\n        \"▁Roth\",\n        -12.323415756225586\n      ],\n      [\n        \"▁Cine\",\n        -12.32388687133789\n      ],\n      [\n        \"▁auditor\",\n        -12.324418067932129\n      ],\n      [\n        \"▁beverage\",\n        -12.324586868286133\n      ],\n      [\n        \"▁précédent\",\n        -12.324637413024902\n      ],\n      [\n        \"▁deploy\",\n        -12.324837684631348\n      ],\n      [\n        \"▁accessibility\",\n        -12.324843406677246\n      ],\n      [\n        \"▁cage\",\n        -12.324885368347168\n      ],\n      [\n        \"▁Contra\",\n        -12.324934005737305\n      ],\n      [\n        \"Best\",\n        -12.324952125549316\n      ],\n      [\n        \"iji\",\n        -12.324972152709961\n      ],\n      [\n        \"▁père\",\n        -12.325060844421387\n      ],\n      [\n        \"▁scenic\",\n        -12.32511043548584\n      ],\n      [\n        \"synthesis\",\n        -12.325165748596191\n      ],\n      [\n        \"ßen\",\n        -12.32534408569336\n      ],\n      [\n        \"▁Videos\",\n        -12.325482368469238\n      ],\n      [\n        \"▁refus\",\n        -12.325484275817871\n      ],\n      [\n        \"stimmen\",\n        -12.3255615234375\n      ],\n      [\n        \"▁sleek\",\n        -12.325577735900879\n      ],\n      [\n        \"artige\",\n        -12.32563591003418\n      ],\n      [\n        \"mari\",\n        -12.32568359375\n      ],\n      [\n        \"▁excelent\",\n        -12.325740814208984\n      ],\n      [\n        \"▁negativ\",\n        -12.325806617736816\n      ],\n      [\n        \"▁blocking\",\n        -12.32590103149414\n      ],\n      [\n        \"spricht\",\n        -12.326001167297363\n      ],\n      [\n        \"▁discomfort\",\n        -12.32602310180664\n      ],\n      [\n        \"▁stratégie\",\n        -12.32602310180664\n      ],\n      [\n        \"▁Datenschutz\",\n        -12.326078414916992\n      ],\n      [\n        \"curg\",\n        -12.326128005981445\n      ],\n      [\n        \"▁lapte\",\n        -12.326432228088379\n      ],\n      [\n        \"▁acasă\",\n        -12.326491355895996\n      ],\n      [\n        \"▁ausschließlich\",\n        -12.32653522491455\n      ],\n      [\n        \"▁unbedingt\",\n        -12.326802253723145\n      ],\n      [\n        \"▁Linie\",\n        -12.32689380645752\n      ],\n      [\n        \"▁subscribers\",\n        -12.327019691467285\n      ],\n      [\n        \"109\",\n        -12.32702350616455\n      ],\n      [\n        \"▁Waste\",\n        -12.32712173461914\n      ],\n      [\n        \"▁Planung\",\n        -12.327231407165527\n      ],\n      [\n        \"▁visually\",\n        -12.32734489440918\n      ],\n      [\n        \"utilizarea\",\n        -12.327370643615723\n      ],\n      [\n        \"uba\",\n        -12.327381134033203\n      ],\n      [\n        \"▁fifteen\",\n        -12.327411651611328\n      ],\n      [\n        \"▁légère\",\n        -12.327411651611328\n      ],\n      [\n        \"ința\",\n        -12.327446937561035\n      ],\n      [\n        \"▁tolerance\",\n        -12.327460289001465\n      ],\n      [\n        \"▁piscine\",\n        -12.327536582946777\n      ],\n      [\n        \"▁nails\",\n        -12.327569007873535\n      ],\n      [\n        \"▁accus\",\n        -12.327693939208984\n      ],\n      [\n        \"▁coeur\",\n        -12.327773094177246\n      ],\n      [\n        \"freie\",\n        -12.327849388122559\n      ],\n      [\n        \"enţă\",\n        -12.32812213897705\n      ],\n      [\n        \"▁glucose\",\n        -12.328336715698242\n      ],\n      [\n        \"▁Jar\",\n        -12.32838249206543\n      ],\n      [\n        \"▁commencer\",\n        -12.328387260437012\n      ],\n      [\n        \"▁eliminating\",\n        -12.328414916992188\n      ],\n      [\n        \"▁mutation\",\n        -12.32844352722168\n      ],\n      [\n        \"▁afirma\",\n        -12.328444480895996\n      ],\n      [\n        \"▁Consulting\",\n        -12.328454971313477\n      ],\n      [\n        \"adia\",\n        -12.328543663024902\n      ],\n      [\n        \"zog\",\n        -12.328604698181152\n      ],\n      [\n        \"▁pielea\",\n        -12.328658103942871\n      ],\n      [\n        \"rton\",\n        -12.328706741333008\n      ],\n      [\n        \"exercice\",\n        -12.3287935256958\n      ],\n      [\n        \"namely\",\n        -12.328847885131836\n      ],\n      [\n        \"▁ajutor\",\n        -12.3289155960083\n      ],\n      [\n        \"▁markers\",\n        -12.328917503356934\n      ],\n      [\n        \"▁gardening\",\n        -12.328932762145996\n      ],\n      [\n        \"Karte\",\n        -12.329038619995117\n      ],\n      [\n        \"▁Pump\",\n        -12.329142570495605\n      ],\n      [\n        \"▁Dual\",\n        -12.329169273376465\n      ],\n      [\n        \"▁pratiques\",\n        -12.329349517822266\n      ],\n      [\n        \"▁behavioral\",\n        -12.329358100891113\n      ],\n      [\n        \"▁construire\",\n        -12.329511642456055\n      ],\n      [\n        \"▁Leonard\",\n        -12.329596519470215\n      ],\n      [\n        \"ediglich\",\n        -12.329630851745605\n      ],\n      [\n        \"ubbed\",\n        -12.3297758102417\n      ],\n      [\n        \"NK\",\n        -12.329792022705078\n      ],\n      [\n        \"shell\",\n        -12.329912185668945\n      ],\n      [\n        \"▁persönliche\",\n        -12.329996109008789\n      ],\n      [\n        \"ecuring\",\n        -12.329998970031738\n      ],\n      [\n        \"beaten\",\n        -12.33000373840332\n      ],\n      [\n        \"ALE\",\n        -12.330053329467773\n      ],\n      [\n        \"▁puppy\",\n        -12.33023452758789\n      ],\n      [\n        \"▁capac\",\n        -12.33027458190918\n      ],\n      [\n        \"▁seventh\",\n        -12.330394744873047\n      ],\n      [\n        \"▁nursery\",\n        -12.330400466918945\n      ],\n      [\n        \"▁Rum\",\n        -12.330419540405273\n      ],\n      [\n        \"▁exquisite\",\n        -12.330423355102539\n      ],\n      [\n        \"▁Legi\",\n        -12.330483436584473\n      ],\n      [\n        \"▁persist\",\n        -12.330497741699219\n      ],\n      [\n        \"bacterial\",\n        -12.330548286437988\n      ],\n      [\n        \"▁cereal\",\n        -12.330572128295898\n      ],\n      [\n        \"▁principe\",\n        -12.330693244934082\n      ],\n      [\n        \"chip\",\n        -12.330766677856445\n      ],\n      [\n        \"rush\",\n        -12.330832481384277\n      ],\n      [\n        \"▁funnel\",\n        -12.330904006958008\n      ],\n      [\n        \"▁calitatea\",\n        -12.331024169921875\n      ],\n      [\n        \"ibă\",\n        -12.33104419708252\n      ],\n      [\n        \"▁reign\",\n        -12.331086158752441\n      ],\n      [\n        \"▁congregation\",\n        -12.331120491027832\n      ],\n      [\n        \"▁obtine\",\n        -12.331270217895508\n      ],\n      [\n        \"▁découverte\",\n        -12.331286430358887\n      ],\n      [\n        \"▁gama\",\n        -12.331315040588379\n      ],\n      [\n        \"▁judec\",\n        -12.33132553100586\n      ],\n      [\n        \"Plan\",\n        -12.331351280212402\n      ],\n      [\n        \"▁gesture\",\n        -12.331539154052734\n      ],\n      [\n        \"öffentlichen\",\n        -12.331644058227539\n      ],\n      [\n        \"▁imported\",\n        -12.331693649291992\n      ],\n      [\n        \"▁rotate\",\n        -12.331747055053711\n      ],\n      [\n        \"blown\",\n        -12.331756591796875\n      ],\n      [\n        \"▁Protein\",\n        -12.331827163696289\n      ],\n      [\n        \"parfaitement\",\n        -12.331832885742188\n      ],\n      [\n        \"ondo\",\n        -12.331868171691895\n      ],\n      [\n        \"ologists\",\n        -12.331890106201172\n      ],\n      [\n        \"▁neighborhoods\",\n        -12.331989288330078\n      ],\n      [\n        \"▁Pope\",\n        -12.33202075958252\n      ],\n      [\n        \"▁museums\",\n        -12.332194328308105\n      ],\n      [\n        \"▁porter\",\n        -12.332330703735352\n      ],\n      [\n        \"▁kiss\",\n        -12.332335472106934\n      ],\n      [\n        \"pdf\",\n        -12.332354545593262\n      ],\n      [\n        \"sided\",\n        -12.332359313964844\n      ],\n      [\n        \"▁gern\",\n        -12.332395553588867\n      ],\n      [\n        \"bedingungen\",\n        -12.332496643066406\n      ],\n      [\n        \"▁Ride\",\n        -12.332582473754883\n      ],\n      [\n        \"Apoi\",\n        -12.332584381103516\n      ],\n      [\n        \"▁bestehen\",\n        -12.332603454589844\n      ],\n      [\n        \"5\\\"\",\n        -12.33285903930664\n      ],\n      [\n        \"bob\",\n        -12.332862854003906\n      ],\n      [\n        \"ficient\",\n        -12.33303165435791\n      ],\n      [\n        \"premise\",\n        -12.333086967468262\n      ],\n      [\n        \"▁Clip\",\n        -12.333112716674805\n      ],\n      [\n        \"▁concours\",\n        -12.333213806152344\n      ],\n      [\n        \"olar\",\n        -12.333281517028809\n      ],\n      [\n        \"▁Centr\",\n        -12.333356857299805\n      ],\n      [\n        \"outlined\",\n        -12.333429336547852\n      ],\n      [\n        \"▁observa\",\n        -12.333511352539062\n      ],\n      [\n        \"▁negotiate\",\n        -12.333537101745605\n      ],\n      [\n        \"▁Partnership\",\n        -12.33358383178711\n      ],\n      [\n        \"clock\",\n        -12.333662033081055\n      ],\n      [\n        \"roasted\",\n        -12.333755493164062\n      ],\n      [\n        \"Pourquoi\",\n        -12.33391284942627\n      ],\n      [\n        \"▁Marshall\",\n        -12.334005355834961\n      ],\n      [\n        \"▁Gerade\",\n        -12.334052085876465\n      ],\n      [\n        \"▁pachet\",\n        -12.334160804748535\n      ],\n      [\n        \"▁preliminary\",\n        -12.334162712097168\n      ],\n      [\n        \"▁tragic\",\n        -12.334200859069824\n      ],\n      [\n        \"author\",\n        -12.334268569946289\n      ],\n      [\n        \"▁Gov\",\n        -12.334309577941895\n      ],\n      [\n        \"▁comunic\",\n        -12.334403991699219\n      ],\n      [\n        \"▁coordinator\",\n        -12.334410667419434\n      ],\n      [\n        \"YA\",\n        -12.33445930480957\n      ],\n      [\n        \"▁Steam\",\n        -12.33476734161377\n      ],\n      [\n        \"▁Nag\",\n        -12.334796905517578\n      ],\n      [\n        \"▁Kara\",\n        -12.334851264953613\n      ],\n      [\n        \"▁Gang\",\n        -12.334858894348145\n      ],\n      [\n        \"aurez\",\n        -12.334868431091309\n      ],\n      [\n        \"▁horrible\",\n        -12.334869384765625\n      ],\n      [\n        \"▁Luxury\",\n        -12.335076332092285\n      ],\n      [\n        \"▁encouragement\",\n        -12.335169792175293\n      ],\n      [\n        \"▁conceptual\",\n        -12.335250854492188\n      ],\n      [\n        \"▁constituent\",\n        -12.335431098937988\n      ],\n      [\n        \"nvelop\",\n        -12.335494041442871\n      ],\n      [\n        \"ucc\",\n        -12.335500717163086\n      ],\n      [\n        \"▁conçu\",\n        -12.335542678833008\n      ],\n      [\n        \"pfel\",\n        -12.33559513092041\n      ],\n      [\n        \"special\",\n        -12.335700988769531\n      ],\n      [\n        \"▁Growth\",\n        -12.335834503173828\n      ],\n      [\n        \"cada\",\n        -12.335916519165039\n      ],\n      [\n        \"▁oamenilor\",\n        -12.335976600646973\n      ],\n      [\n        \"▁vendredi\",\n        -12.336021423339844\n      ],\n      [\n        \"▁coupe\",\n        -12.336055755615234\n      ],\n      [\n        \"▁Danke\",\n        -12.336134910583496\n      ],\n      [\n        \"reflects\",\n        -12.336181640625\n      ],\n      [\n        \"▁girlfriend\",\n        -12.336273193359375\n      ],\n      [\n        \"▁diffuse\",\n        -12.336325645446777\n      ],\n      [\n        \"HER\",\n        -12.336328506469727\n      ],\n      [\n        \"storing\",\n        -12.336464881896973\n      ],\n      [\n        \"ailing\",\n        -12.336591720581055\n      ],\n      [\n        \"▁Desi\",\n        -12.336601257324219\n      ],\n      [\n        \"stitution\",\n        -12.336832046508789\n      ],\n      [\n        \"▁adun\",\n        -12.336844444274902\n      ],\n      [\n        \"▁Partie\",\n        -12.336869239807129\n      ],\n      [\n        \"▁tissues\",\n        -12.336958885192871\n      ],\n      [\n        \"▁discovering\",\n        -12.337154388427734\n      ],\n      [\n        \"Jacques\",\n        -12.337178230285645\n      ],\n      [\n        \"lungs\",\n        -12.33724594116211\n      ],\n      [\n        \"▁Handy\",\n        -12.337261199951172\n      ],\n      [\n        \"centric\",\n        -12.337285995483398\n      ],\n      [\n        \"slav\",\n        -12.337442398071289\n      ],\n      [\n        \"▁sights\",\n        -12.337560653686523\n      ],\n      [\n        \"▁Category\",\n        -12.337644577026367\n      ],\n      [\n        \"▁Einrichtung\",\n        -12.337957382202148\n      ],\n      [\n        \"▁Robinson\",\n        -12.33804702758789\n      ],\n      [\n        \"▁Terra\",\n        -12.338150978088379\n      ],\n      [\n        \"▁creep\",\n        -12.338167190551758\n      ],\n      [\n        \"▁Lob\",\n        -12.338184356689453\n      ],\n      [\n        \"001\",\n        -12.33820629119873\n      ],\n      [\n        \"kop\",\n        -12.338208198547363\n      ],\n      [\n        \"Emb\",\n        -12.338292121887207\n      ],\n      [\n        \"▁forgive\",\n        -12.338391304016113\n      ],\n      [\n        \"▁icons\",\n        -12.33847427368164\n      ],\n      [\n        \"electric\",\n        -12.3385009765625\n      ],\n      [\n        \"▁faucet\",\n        -12.338516235351562\n      ],\n      [\n        \"▁invisible\",\n        -12.3386812210083\n      ],\n      [\n        \"sprach\",\n        -12.338801383972168\n      ],\n      [\n        \"▁beachten\",\n        -12.33881664276123\n      ],\n      [\n        \"rahm\",\n        -12.338833808898926\n      ],\n      [\n        \"▁Teacher\",\n        -12.338919639587402\n      ],\n      [\n        \"Fab\",\n        -12.339070320129395\n      ],\n      [\n        \"▁joue\",\n        -12.339101791381836\n      ],\n      [\n        \"▁Popular\",\n        -12.339120864868164\n      ],\n      [\n        \"▁Februar\",\n        -12.339171409606934\n      ],\n      [\n        \"sound\",\n        -12.339251518249512\n      ],\n      [\n        \"▁(0\",\n        -12.339317321777344\n      ],\n      [\n        \"▁Compare\",\n        -12.33938980102539\n      ],\n      [\n        \"▁pads\",\n        -12.339455604553223\n      ],\n      [\n        \"270\",\n        -12.339498519897461\n      ],\n      [\n        \"ousse\",\n        -12.339548110961914\n      ],\n      [\n        \"▁UAE\",\n        -12.339786529541016\n      ],\n      [\n        \"izări\",\n        -12.339787483215332\n      ],\n      [\n        \"▁bonuses\",\n        -12.33993911743164\n      ],\n      [\n        \"▁switches\",\n        -12.3400239944458\n      ],\n      [\n        \"▁Brothers\",\n        -12.340166091918945\n      ],\n      [\n        \"▁environmentally\",\n        -12.340171813964844\n      ],\n      [\n        \"vista\",\n        -12.340264320373535\n      ],\n      [\n        \"▁intentions\",\n        -12.3402738571167\n      ],\n      [\n        \"▁Terri\",\n        -12.340301513671875\n      ],\n      [\n        \"▁diabet\",\n        -12.34030532836914\n      ],\n      [\n        \"▁prese\",\n        -12.340333938598633\n      ],\n      [\n        \"▁parcurs\",\n        -12.340389251708984\n      ],\n      [\n        \"Warum\",\n        -12.340449333190918\n      ],\n      [\n        \"▁credentials\",\n        -12.340455055236816\n      ],\n      [\n        \"▁PLA\",\n        -12.34046459197998\n      ],\n      [\n        \"▁instruct\",\n        -12.340470314025879\n      ],\n      [\n        \"▁benefic\",\n        -12.340633392333984\n      ],\n      [\n        \"write\",\n        -12.340675354003906\n      ],\n      [\n        \"▁poids\",\n        -12.340773582458496\n      ],\n      [\n        \"▁Anspruch\",\n        -12.340923309326172\n      ],\n      [\n        \"▁avocado\",\n        -12.340923309326172\n      ],\n      [\n        \"▁inevitable\",\n        -12.340923309326172\n      ],\n      [\n        \"▁poorly\",\n        -12.340950965881348\n      ],\n      [\n        \"karte\",\n        -12.340994834899902\n      ],\n      [\n        \"▁Publishing\",\n        -12.340999603271484\n      ],\n      [\n        \"odată\",\n        -12.341140747070312\n      ],\n      [\n        \"▁scientifique\",\n        -12.341157913208008\n      ],\n      [\n        \"▁lăsa\",\n        -12.341262817382812\n      ],\n      [\n        \"▁secol\",\n        -12.34131908416748\n      ],\n      [\n        \"▁nevertheless\",\n        -12.341392517089844\n      ],\n      [\n        \"SAT\",\n        -12.341597557067871\n      ],\n      [\n        \"280\",\n        -12.341651916503906\n      ],\n      [\n        \"▁prevederi\",\n        -12.341670989990234\n      ],\n      [\n        \"▁chrome\",\n        -12.342002868652344\n      ],\n      [\n        \"institut\",\n        -12.342267036437988\n      ],\n      [\n        \"richtigen\",\n        -12.34228515625\n      ],\n      [\n        \"▁grief\",\n        -12.342338562011719\n      ],\n      [\n        \"▁penalties\",\n        -12.342373847961426\n      ],\n      [\n        \"▁Bayern\",\n        -12.34238052368164\n      ],\n      [\n        \"▁caramel\",\n        -12.342473983764648\n      ],\n      [\n        \"Now\",\n        -12.342495918273926\n      ],\n      [\n        \"Stiftung\",\n        -12.342576026916504\n      ],\n      [\n        \"country\",\n        -12.342737197875977\n      ],\n      [\n        \"dication\",\n        -12.34278678894043\n      ],\n      [\n        \"▁Chor\",\n        -12.342801094055176\n      ],\n      [\n        \"▁rămâne\",\n        -12.342936515808105\n      ],\n      [\n        \"▁TOP\",\n        -12.34300708770752\n      ],\n      [\n        \"▁complète\",\n        -12.34301471710205\n      ],\n      [\n        \"▁Marian\",\n        -12.34302806854248\n      ],\n      [\n        \"▁Avant\",\n        -12.343121528625488\n      ],\n      [\n        \"▁Shower\",\n        -12.343156814575195\n      ],\n      [\n        \"treu\",\n        -12.34316349029541\n      ],\n      [\n        \"▁chop\",\n        -12.34321403503418\n      ],\n      [\n        \"▁comfortably\",\n        -12.343220710754395\n      ],\n      [\n        \"▁autism\",\n        -12.34323787689209\n      ],\n      [\n        \"▁Sind\",\n        -12.34328556060791\n      ],\n      [\n        \"▁(20\",\n        -12.343340873718262\n      ],\n      [\n        \"▁Cinema\",\n        -12.343414306640625\n      ],\n      [\n        \"compania\",\n        -12.343606948852539\n      ],\n      [\n        \"▁Lex\",\n        -12.343622207641602\n      ],\n      [\n        \"▁Sofa\",\n        -12.343716621398926\n      ],\n      [\n        \"dru\",\n        -12.343753814697266\n      ],\n      [\n        \"▁verification\",\n        -12.343770027160645\n      ],\n      [\n        \"▁Immer\",\n        -12.343825340270996\n      ],\n      [\n        \"lomb\",\n        -12.343829154968262\n      ],\n      [\n        \"meric\",\n        -12.34385871887207\n      ],\n      [\n        \"▁slower\",\n        -12.34398365020752\n      ],\n      [\n        \"▁propag\",\n        -12.344090461730957\n      ],\n      [\n        \"Inter\",\n        -12.344097137451172\n      ],\n      [\n        \"selling\",\n        -12.34418773651123\n      ],\n      [\n        \"▁Bright\",\n        -12.344269752502441\n      ],\n      [\n        \"condition\",\n        -12.344280242919922\n      ],\n      [\n        \"PDF\",\n        -12.344291687011719\n      ],\n      [\n        \"oyez\",\n        -12.344391822814941\n      ],\n      [\n        \"▁Fried\",\n        -12.344420433044434\n      ],\n      [\n        \"▁Nazi\",\n        -12.34443187713623\n      ],\n      [\n        \"▁Buffalo\",\n        -12.344447135925293\n      ],\n      [\n        \"▁Sue\",\n        -12.344449043273926\n      ],\n      [\n        \"▁Rhein\",\n        -12.34468936920166\n      ],\n      [\n        \"▁Klaus\",\n        -12.344889640808105\n      ],\n      [\n        \"▁indiqu\",\n        -12.344963073730469\n      ],\n      [\n        \"echte\",\n        -12.344996452331543\n      ],\n      [\n        \"▁frecvent\",\n        -12.345165252685547\n      ],\n      [\n        \"▁conveniently\",\n        -12.345187187194824\n      ],\n      [\n        \"▁Moi\",\n        -12.345197677612305\n      ],\n      [\n        \"▁greenhouse\",\n        -12.345220565795898\n      ],\n      [\n        \"▁rédui\",\n        -12.34524154663086\n      ],\n      [\n        \"▁lengthy\",\n        -12.34542179107666\n      ],\n      [\n        \"verband\",\n        -12.345534324645996\n      ],\n      [\n        \"inţă\",\n        -12.345622062683105\n      ],\n      [\n        \"▁rigorous\",\n        -12.345625877380371\n      ],\n      [\n        \"▁Finish\",\n        -12.34580135345459\n      ],\n      [\n        \"▁FBI\",\n        -12.346052169799805\n      ],\n      [\n        \"cultura\",\n        -12.346083641052246\n      ],\n      [\n        \"▁compartment\",\n        -12.346110343933105\n      ],\n      [\n        \"▁pretend\",\n        -12.346117973327637\n      ],\n      [\n        \"▁assembled\",\n        -12.346212387084961\n      ],\n      [\n        \"▁Nie\",\n        -12.34639835357666\n      ],\n      [\n        \"fession\",\n        -12.34640884399414\n      ],\n      [\n        \"▁£2\",\n        -12.34642219543457\n      ],\n      [\n        \"algré\",\n        -12.3468017578125\n      ],\n      [\n        \"▁anterior\",\n        -12.346817970275879\n      ],\n      [\n        \"▁Wissenschaft\",\n        -12.34683609008789\n      ],\n      [\n        \"▁Harbor\",\n        -12.346923828125\n      ],\n      [\n        \"lix\",\n        -12.346985816955566\n      ],\n      [\n        \"=\\\"\",\n        -12.347049713134766\n      ],\n      [\n        \"▁breathtaking\",\n        -12.34705638885498\n      ],\n      [\n        \"▁Stern\",\n        -12.34708309173584\n      ],\n      [\n        \"▁Internetseite\",\n        -12.347132682800293\n      ],\n      [\n        \"▁locker\",\n        -12.347216606140137\n      ],\n      [\n        \"▁feather\",\n        -12.34726619720459\n      ],\n      [\n        \"Serv\",\n        -12.347297668457031\n      ],\n      [\n        \"▁snake\",\n        -12.347332000732422\n      ],\n      [\n        \"▁Border\",\n        -12.347396850585938\n      ],\n      [\n        \"▁undergo\",\n        -12.347518920898438\n      ],\n      [\n        \"▁petrol\",\n        -12.347558975219727\n      ],\n      [\n        \"▁dealership\",\n        -12.3475923538208\n      ],\n      [\n        \"▁commander\",\n        -12.347596168518066\n      ],\n      [\n        \"▁Monate\",\n        -12.347599983215332\n      ],\n      [\n        \"▁Guardian\",\n        -12.347665786743164\n      ],\n      [\n        \"▁Todd\",\n        -12.347774505615234\n      ],\n      [\n        \"Ann\",\n        -12.347825050354004\n      ],\n      [\n        \"ibilité\",\n        -12.347918510437012\n      ],\n      [\n        \"▁Quarter\",\n        -12.347987174987793\n      ],\n      [\n        \"▁portray\",\n        -12.348097801208496\n      ],\n      [\n        \"▁Tai\",\n        -12.34813404083252\n      ],\n      [\n        \"▁strikes\",\n        -12.348224639892578\n      ],\n      [\n        \"illage\",\n        -12.348381042480469\n      ],\n      [\n        \"▁IRS\",\n        -12.348417282104492\n      ],\n      [\n        \"▁lupta\",\n        -12.348455429077148\n      ],\n      [\n        \"▁Sper\",\n        -12.348493576049805\n      ],\n      [\n        \"PRO\",\n        -12.348530769348145\n      ],\n      [\n        \"▁Export\",\n        -12.348549842834473\n      ],\n      [\n        \"▁crypto\",\n        -12.348587989807129\n      ],\n      [\n        \"▁barbecue\",\n        -12.348692893981934\n      ],\n      [\n        \"▁portions\",\n        -12.348787307739258\n      ],\n      [\n        \"▁explicit\",\n        -12.348793983459473\n      ],\n      [\n        \"▁angenehm\",\n        -12.348834037780762\n      ],\n      [\n        \"▁marathon\",\n        -12.348946571350098\n      ],\n      [\n        \"▁apartament\",\n        -12.348982810974121\n      ],\n      [\n        \"▁Eva\",\n        -12.349079132080078\n      ],\n      [\n        \"plate\",\n        -12.349181175231934\n      ],\n      [\n        \"viel\",\n        -12.34925365447998\n      ],\n      [\n        \"FIN\",\n        -12.34926986694336\n      ],\n      [\n        \"dependent\",\n        -12.34935188293457\n      ],\n      [\n        \"▁cercet\",\n        -12.34942626953125\n      ],\n      [\n        \"▁midnight\",\n        -12.349499702453613\n      ],\n      [\n        \"copie\",\n        -12.349563598632812\n      ],\n      [\n        \"▁companii\",\n        -12.349621772766113\n      ],\n      [\n        \"▁tenu\",\n        -12.349660873413086\n      ],\n      [\n        \"1/2\",\n        -12.349662780761719\n      ],\n      [\n        \"2.4\",\n        -12.349693298339844\n      ],\n      [\n        \"abri\",\n        -12.349699974060059\n      ],\n      [\n        \"▁warn\",\n        -12.34980297088623\n      ],\n      [\n        \"▁luggage\",\n        -12.349875450134277\n      ],\n      [\n        \"numarul\",\n        -12.349968910217285\n      ],\n      [\n        \"▁contour\",\n        -12.350014686584473\n      ],\n      [\n        \"▁Ghost\",\n        -12.350016593933105\n      ],\n      [\n        \"Angaben\",\n        -12.35012435913086\n      ],\n      [\n        \"▁unemployment\",\n        -12.350296020507812\n      ],\n      [\n        \"▁rău\",\n        -12.350380897521973\n      ],\n      [\n        \"▁dispatch\",\n        -12.350445747375488\n      ],\n      [\n        \"investissement\",\n        -12.350547790527344\n      ],\n      [\n        \"▁passt\",\n        -12.35057258605957\n      ],\n      [\n        \"▁Germania\",\n        -12.350578308105469\n      ],\n      [\n        \"▁webpage\",\n        -12.350651741027832\n      ],\n      [\n        \"▁reservations\",\n        -12.350688934326172\n      ],\n      [\n        \"▁Kai\",\n        -12.350743293762207\n      ],\n      [\n        \"▁Cav\",\n        -12.350890159606934\n      ],\n      [\n        \"▁Patient\",\n        -12.351109504699707\n      ],\n      [\n        \"ер\",\n        -12.351213455200195\n      ],\n      [\n        \"▁Belle\",\n        -12.351236343383789\n      ],\n      [\n        \"▁Nashville\",\n        -12.351296424865723\n      ],\n      [\n        \"▁Talent\",\n        -12.351332664489746\n      ],\n      [\n        \"ouvrage\",\n        -12.351364135742188\n      ],\n      [\n        \"▁bekommt\",\n        -12.351365089416504\n      ],\n      [\n        \"USA\",\n        -12.351430892944336\n      ],\n      [\n        \"CES\",\n        -12.351432800292969\n      ],\n      [\n        \"▁Peru\",\n        -12.351499557495117\n      ],\n      [\n        \"▁erkennen\",\n        -12.35153579711914\n      ],\n      [\n        \"prinde\",\n        -12.351569175720215\n      ],\n      [\n        \"▁constitution\",\n        -12.351922035217285\n      ],\n      [\n        \"itatile\",\n        -12.351998329162598\n      ],\n      [\n        \"bah\",\n        -12.352147102355957\n      ],\n      [\n        \"▁avail\",\n        -12.352148056030273\n      ],\n      [\n        \"▁disponibile\",\n        -12.352149963378906\n      ],\n      [\n        \"hér\",\n        -12.352258682250977\n      ],\n      [\n        \"ол\",\n        -12.352411270141602\n      ],\n      [\n        \"▁startups\",\n        -12.352435111999512\n      ],\n      [\n        \"▁carton\",\n        -12.352485656738281\n      ],\n      [\n        \"▁Newsletter\",\n        -12.35251235961914\n      ],\n      [\n        \"éti\",\n        -12.352560997009277\n      ],\n      [\n        \"▁investigating\",\n        -12.352779388427734\n      ],\n      [\n        \"itul\",\n        -12.352925300598145\n      ],\n      [\n        \"touch\",\n        -12.352962493896484\n      ],\n      [\n        \"Sport\",\n        -12.353137016296387\n      ],\n      [\n        \"AME\",\n        -12.353203773498535\n      ],\n      [\n        \"MIN\",\n        -12.353222846984863\n      ],\n      [\n        \"metry\",\n        -12.353371620178223\n      ],\n      [\n        \"icy\",\n        -12.353492736816406\n      ],\n      [\n        \"▁Luna\",\n        -12.35351848602295\n      ],\n      [\n        \"▁asthma\",\n        -12.353614807128906\n      ],\n      [\n        \"▁conduc\",\n        -12.35365104675293\n      ],\n      [\n        \"▁Ari\",\n        -12.35369873046875\n      ],\n      [\n        \"trust\",\n        -12.353832244873047\n      ],\n      [\n        \"▁defines\",\n        -12.353894233703613\n      ],\n      [\n        \"▁Blend\",\n        -12.353927612304688\n      ],\n      [\n        \"azo\",\n        -12.353989601135254\n      ],\n      [\n        \"▁sweep\",\n        -12.354169845581055\n      ],\n      [\n        \"lope\",\n        -12.354331016540527\n      ],\n      [\n        \"ţinut\",\n        -12.35439682006836\n      ],\n      [\n        \"WD\",\n        -12.354503631591797\n      ],\n      [\n        \"▁appetite\",\n        -12.354619979858398\n      ],\n      [\n        \"▁Seed\",\n        -12.354753494262695\n      ],\n      [\n        \"Friend\",\n        -12.354854583740234\n      ],\n      [\n        \"▁repet\",\n        -12.354876518249512\n      ],\n      [\n        \"▁throat\",\n        -12.354936599731445\n      ],\n      [\n        \"philosoph\",\n        -12.355141639709473\n      ],\n      [\n        \"▁connaître\",\n        -12.355156898498535\n      ],\n      [\n        \"▁Counter\",\n        -12.355299949645996\n      ],\n      [\n        \"▁Anforderungen\",\n        -12.35533332824707\n      ],\n      [\n        \"▁Polit\",\n        -12.355363845825195\n      ],\n      [\n        \"▁Weather\",\n        -12.3554048538208\n      ],\n      [\n        \"bow\",\n        -12.355423927307129\n      ],\n      [\n        \"▁recreation\",\n        -12.355484008789062\n      ],\n      [\n        \"▁culinary\",\n        -12.355571746826172\n      ],\n      [\n        \"▁plage\",\n        -12.355609893798828\n      ],\n      [\n        \"▁Cruz\",\n        -12.355659484863281\n      ],\n      [\n        \"▁equip\",\n        -12.355668067932129\n      ],\n      [\n        \"▁Recent\",\n        -12.355697631835938\n      ],\n      [\n        \"LED\",\n        -12.355767250061035\n      ],\n      [\n        \"▁steak\",\n        -12.355772972106934\n      ],\n      [\n        \"▁belly\",\n        -12.355880737304688\n      ],\n      [\n        \"photo\",\n        -12.356130599975586\n      ],\n      [\n        \"▁lakes\",\n        -12.35623836517334\n      ],\n      [\n        \"▁intact\",\n        -12.356287956237793\n      ],\n      [\n        \"▁spiral\",\n        -12.356386184692383\n      ],\n      [\n        \"▁Billy\",\n        -12.356468200683594\n      ],\n      [\n        \"▁Understanding\",\n        -12.356534957885742\n      ],\n      [\n        \"▁Lay\",\n        -12.356558799743652\n      ],\n      [\n        \"▁roster\",\n        -12.356632232666016\n      ],\n      [\n        \"▁admire\",\n        -12.356647491455078\n      ],\n      [\n        \"▁android\",\n        -12.356732368469238\n      ],\n      [\n        \"▁technician\",\n        -12.356734275817871\n      ],\n      [\n        \"gène\",\n        -12.356818199157715\n      ],\n      [\n        \"motiv\",\n        -12.356954574584961\n      ],\n      [\n        \"▁Boat\",\n        -12.356988906860352\n      ],\n      [\n        \"▁genießen\",\n        -12.357000350952148\n      ],\n      [\n        \"▁Geschmack\",\n        -12.357001304626465\n      ],\n      [\n        \"▁heroes\",\n        -12.3570556640625\n      ],\n      [\n        \"▁1800\",\n        -12.357137680053711\n      ],\n      [\n        \"numeroase\",\n        -12.35776138305664\n      ],\n      [\n        \"▁anschließend\",\n        -12.357802391052246\n      ],\n      [\n        \"▁Spur\",\n        -12.357813835144043\n      ],\n      [\n        \"▁clarify\",\n        -12.35784912109375\n      ],\n      [\n        \"▁warmer\",\n        -12.357889175415039\n      ],\n      [\n        \"▁Ranch\",\n        -12.357955932617188\n      ],\n      [\n        \"▁simti\",\n        -12.358024597167969\n      ],\n      [\n        \"Thank\",\n        -12.35838508605957\n      ],\n      [\n        \"▁freight\",\n        -12.358434677124023\n      ],\n      [\n        \"▁administrators\",\n        -12.358453750610352\n      ],\n      [\n        \"Reg\",\n        -12.358588218688965\n      ],\n      [\n        \"Această\",\n        -12.358670234680176\n      ],\n      [\n        \"▁legume\",\n        -12.358741760253906\n      ],\n      [\n        \"▁utilizare\",\n        -12.358786582946777\n      ],\n      [\n        \"CON\",\n        -12.358904838562012\n      ],\n      [\n        \"urgi\",\n        -12.358917236328125\n      ],\n      [\n        \"▁Gesicht\",\n        -12.358920097351074\n      ],\n      [\n        \"▁counselor\",\n        -12.358954429626465\n      ],\n      [\n        \"▁mondiale\",\n        -12.359009742736816\n      ],\n      [\n        \"helm\",\n        -12.359137535095215\n      ],\n      [\n        \"▁Promo\",\n        -12.359156608581543\n      ],\n      [\n        \"▁Schweiz\",\n        -12.35917854309082\n      ],\n      [\n        \"Ich\",\n        -12.35929012298584\n      ],\n      [\n        \"▁intalni\",\n        -12.359295845031738\n      ],\n      [\n        \"▁Bloom\",\n        -12.359318733215332\n      ],\n      [\n        \"▁Score\",\n        -12.359362602233887\n      ],\n      [\n        \"▁Fruit\",\n        -12.35944652557373\n      ],\n      [\n        \"▁constraints\",\n        -12.359447479248047\n      ],\n      [\n        \"▁farmer\",\n        -12.359745979309082\n      ],\n      [\n        \"▁précise\",\n        -12.359807014465332\n      ],\n      [\n        \"evaluating\",\n        -12.359868049621582\n      ],\n      [\n        \"▁Period\",\n        -12.359891891479492\n      ],\n      [\n        \"byte\",\n        -12.359893798828125\n      ],\n      [\n        \"wah\",\n        -12.360025405883789\n      ],\n      [\n        \"Mac\",\n        -12.360123634338379\n      ],\n      [\n        \"iron\",\n        -12.360197067260742\n      ],\n      [\n        \"′\",\n        -12.360337257385254\n      ],\n      [\n        \"▁tehnic\",\n        -12.360539436340332\n      ],\n      [\n        \"▁legat\",\n        -12.36054515838623\n      ],\n      [\n        \"▁Pilot\",\n        -12.360574722290039\n      ],\n      [\n        \"▁Carpet\",\n        -12.36064624786377\n      ],\n      [\n        \"TEN\",\n        -12.360812187194824\n      ],\n      [\n        \"▁shareholders\",\n        -12.36082649230957\n      ],\n      [\n        \"vină\",\n        -12.360880851745605\n      ],\n      [\n        \"▁parole\",\n        -12.360939979553223\n      ],\n      [\n        \"ătă\",\n        -12.360984802246094\n      ],\n      [\n        \"bbing\",\n        -12.361000061035156\n      ],\n      [\n        \"▁switched\",\n        -12.361002922058105\n      ],\n      [\n        \"▁Petro\",\n        -12.361010551452637\n      ],\n      [\n        \"▁Vertrags\",\n        -12.36111831665039\n      ],\n      [\n        \"cham\",\n        -12.361178398132324\n      ],\n      [\n        \"wang\",\n        -12.361284255981445\n      ],\n      [\n        \"▁Bean\",\n        -12.36139965057373\n      ],\n      [\n        \"minister\",\n        -12.361442565917969\n      ],\n      [\n        \"▁Wu\",\n        -12.361522674560547\n      ],\n      [\n        \"▁Olympics\",\n        -12.361539840698242\n      ],\n      [\n        \"tipul\",\n        -12.361542701721191\n      ],\n      [\n        \"▁Citi\",\n        -12.36166763305664\n      ],\n      [\n        \"▁Fold\",\n        -12.361873626708984\n      ],\n      [\n        \"▁Partei\",\n        -12.361940383911133\n      ],\n      [\n        \"▁centrale\",\n        -12.361984252929688\n      ],\n      [\n        \"île\",\n        -12.362032890319824\n      ],\n      [\n        \"pflicht\",\n        -12.362175941467285\n      ],\n      [\n        \"heli\",\n        -12.362398147583008\n      ],\n      [\n        \"▁erwartet\",\n        -12.362414360046387\n      ],\n      [\n        \"▁oferta\",\n        -12.362458229064941\n      ],\n      [\n        \"▁NHS\",\n        -12.36246395111084\n      ],\n      [\n        \"annon\",\n        -12.362570762634277\n      ],\n      [\n        \"▁Rud\",\n        -12.362701416015625\n      ],\n      [\n        \"▁Stuttgart\",\n        -12.362737655639648\n      ],\n      [\n        \"▁rămas\",\n        -12.362746238708496\n      ],\n      [\n        \"▁eliminated\",\n        -12.36275577545166\n      ],\n      [\n        \"▁hiding\",\n        -12.362797737121582\n      ],\n      [\n        \"▁cadeau\",\n        -12.362832069396973\n      ],\n      [\n        \"▁mock\",\n        -12.363115310668945\n      ],\n      [\n        \"▁elder\",\n        -12.363333702087402\n      ],\n      [\n        \"▁Liz\",\n        -12.363364219665527\n      ],\n      [\n        \"aji\",\n        -12.363544464111328\n      ],\n      [\n        \"▁endlich\",\n        -12.363653182983398\n      ],\n      [\n        \"sufficient\",\n        -12.363668441772461\n      ],\n      [\n        \"▁zusätzliche\",\n        -12.363712310791016\n      ],\n      [\n        \"scient\",\n        -12.363757133483887\n      ],\n      [\n        \"▁Adjust\",\n        -12.363883972167969\n      ],\n      [\n        \"▁incentive\",\n        -12.363945007324219\n      ],\n      [\n        \"▁Papa\",\n        -12.364012718200684\n      ],\n      [\n        \"▁Pharma\",\n        -12.364041328430176\n      ],\n      [\n        \"▁conflicts\",\n        -12.364107131958008\n      ],\n      [\n        \"zählen\",\n        -12.364113807678223\n      ],\n      [\n        \"▁chien\",\n        -12.364118576049805\n      ],\n      [\n        \"KB\",\n        -12.36413288116455\n      ],\n      [\n        \"ultimi\",\n        -12.364188194274902\n      ],\n      [\n        \"▁Jul\",\n        -12.36421012878418\n      ],\n      [\n        \"▁Male\",\n        -12.36422061920166\n      ],\n      [\n        \"▁viewer\",\n        -12.36427116394043\n      ],\n      [\n        \"▁Sector\",\n        -12.364328384399414\n      ],\n      [\n        \"▁REAL\",\n        -12.364344596862793\n      ],\n      [\n        \"▁arbitr\",\n        -12.36436939239502\n      ],\n      [\n        \"resistant\",\n        -12.364399909973145\n      ],\n      [\n        \"▁Bristol\",\n        -12.364423751831055\n      ],\n      [\n        \"▁shy\",\n        -12.364540100097656\n      ],\n      [\n        \"SW\",\n        -12.364593505859375\n      ],\n      [\n        \"▁Kirk\",\n        -12.36460018157959\n      ],\n      [\n        \"centrul\",\n        -12.364653587341309\n      ],\n      [\n        \"▁Venezuela\",\n        -12.364657402038574\n      ],\n      [\n        \"▁communicating\",\n        -12.364657402038574\n      ],\n      [\n        \"▁Chemical\",\n        -12.364663124084473\n      ],\n      [\n        \"▁surprises\",\n        -12.364843368530273\n      ],\n      [\n        \"▁Jamie\",\n        -12.364933967590332\n      ],\n      [\n        \"▁Heavy\",\n        -12.364965438842773\n      ],\n      [\n        \"▁turnover\",\n        -12.36498737335205\n      ],\n      [\n        \"▁étudiants\",\n        -12.365114212036133\n      ],\n      [\n        \"welcher\",\n        -12.365124702453613\n      ],\n      [\n        \"▁preturi\",\n        -12.365200996398926\n      ],\n      [\n        \"▁Mono\",\n        -12.365283966064453\n      ],\n      [\n        \"▁paddle\",\n        -12.365309715270996\n      ],\n      [\n        \"▁accountability\",\n        -12.365364074707031\n      ],\n      [\n        \"OUS\",\n        -12.365592956542969\n      ],\n      [\n        \"▁marketers\",\n        -12.365762710571289\n      ],\n      [\n        \"fection\",\n        -12.365900993347168\n      ],\n      [\n        \"▁Outside\",\n        -12.365921020507812\n      ],\n      [\n        \"▁Jefferson\",\n        -12.366114616394043\n      ],\n      [\n        \"oaie\",\n        -12.36617660522461\n      ],\n      [\n        \"tenue\",\n        -12.366275787353516\n      ],\n      [\n        \"HU\",\n        -12.366329193115234\n      ],\n      [\n        \"Très\",\n        -12.36639404296875\n      ],\n      [\n        \"valoarea\",\n        -12.36642837524414\n      ],\n      [\n        \"103\",\n        -12.366482734680176\n      ],\n      [\n        \"▁Privacy\",\n        -12.366580963134766\n      ],\n      [\n        \"▁Leistungen\",\n        -12.366598129272461\n      ],\n      [\n        \"(3)\",\n        -12.36662483215332\n      ],\n      [\n        \"▁études\",\n        -12.366734504699707\n      ],\n      [\n        \"sko\",\n        -12.366750717163086\n      ],\n      [\n        \"drum\",\n        -12.366822242736816\n      ],\n      [\n        \"▁lamb\",\n        -12.366842269897461\n      ],\n      [\n        \"▁nicio\",\n        -12.367094993591309\n      ],\n      [\n        \"▁NATO\",\n        -12.367104530334473\n      ],\n      [\n        \"▁Freitag\",\n        -12.367178916931152\n      ],\n      [\n        \"▁precedent\",\n        -12.367178916931152\n      ],\n      [\n        \"▁partenaires\",\n        -12.367202758789062\n      ],\n      [\n        \"▁companiei\",\n        -12.367234230041504\n      ],\n      [\n        \"▁Plaza\",\n        -12.367249488830566\n      ],\n      [\n        \"▁disruption\",\n        -12.367274284362793\n      ],\n      [\n        \"▁violations\",\n        -12.367338180541992\n      ],\n      [\n        \"▁Reference\",\n        -12.367446899414062\n      ],\n      [\n        \"▁habitants\",\n        -12.36770248413086\n      ],\n      [\n        \"▁compost\",\n        -12.36776351928711\n      ],\n      [\n        \"▁citoyen\",\n        -12.367785453796387\n      ],\n      [\n        \"▁Historical\",\n        -12.367857933044434\n      ],\n      [\n        \"vollen\",\n        -12.36793327331543\n      ],\n      [\n        \"▁Eck\",\n        -12.36815357208252\n      ],\n      [\n        \"▁lumii\",\n        -12.368180274963379\n      ],\n      [\n        \"▁reusit\",\n        -12.368278503417969\n      ],\n      [\n        \"genic\",\n        -12.368307113647461\n      ],\n      [\n        \"Why\",\n        -12.368436813354492\n      ],\n      [\n        \"ASE\",\n        -12.368474006652832\n      ],\n      [\n        \"▁athlete\",\n        -12.36854076385498\n      ],\n      [\n        \"▁Spitze\",\n        -12.368559837341309\n      ],\n      [\n        \"▁schimbat\",\n        -12.368566513061523\n      ],\n      [\n        \"▁anonymous\",\n        -12.368850708007812\n      ],\n      [\n        \"jedes\",\n        -12.368856430053711\n      ],\n      [\n        \"exclu\",\n        -12.368874549865723\n      ],\n      [\n        \"factor\",\n        -12.369199752807617\n      ],\n      [\n        \"▁Dezember\",\n        -12.369231224060059\n      ],\n      [\n        \"▁scientist\",\n        -12.369373321533203\n      ],\n      [\n        \"▁likelihood\",\n        -12.36947250366211\n      ],\n      [\n        \"▁Rhode\",\n        -12.369488716125488\n      ],\n      [\n        \"▁Balance\",\n        -12.369521141052246\n      ],\n      [\n        \"istoria\",\n        -12.36959457397461\n      ],\n      [\n        \"▁Neil\",\n        -12.369780540466309\n      ],\n      [\n        \"▁bush\",\n        -12.369919776916504\n      ],\n      [\n        \"▁Ergebnisse\",\n        -12.369935989379883\n      ],\n      [\n        \"▁Sinn\",\n        -12.369956016540527\n      ],\n      [\n        \"▁spezielle\",\n        -12.370128631591797\n      ],\n      [\n        \"▁jucat\",\n        -12.37015438079834\n      ],\n      [\n        \"▁spite\",\n        -12.370179176330566\n      ],\n      [\n        \"▁Ultimate\",\n        -12.370365142822266\n      ],\n      [\n        \"▁fructe\",\n        -12.370401382446289\n      ],\n      [\n        \"▁asleep\",\n        -12.370441436767578\n      ],\n      [\n        \"▁Goal\",\n        -12.370539665222168\n      ],\n      [\n        \"▁PAR\",\n        -12.370631217956543\n      ],\n      [\n        \"▁rows\",\n        -12.370705604553223\n      ],\n      [\n        \"▁Fol\",\n        -12.3709135055542\n      ],\n      [\n        \"▁durata\",\n        -12.370945930480957\n      ],\n      [\n        \"▁traditionnel\",\n        -12.37100887298584\n      ],\n      [\n        \"▁tema\",\n        -12.37122917175293\n      ],\n      [\n        \"▁crédit\",\n        -12.371232986450195\n      ],\n      [\n        \"smallest\",\n        -12.371358871459961\n      ],\n      [\n        \"▁amino\",\n        -12.371358871459961\n      ],\n      [\n        \"▁elephant\",\n        -12.371405601501465\n      ],\n      [\n        \"▁tubes\",\n        -12.371685028076172\n      ],\n      [\n        \"▁Verwendung\",\n        -12.371719360351562\n      ],\n      [\n        \"▁Excellence\",\n        -12.371889114379883\n      ],\n      [\n        \"▁utilities\",\n        -12.371962547302246\n      ],\n      [\n        \"frau\",\n        -12.372111320495605\n      ],\n      [\n        \"▁poze\",\n        -12.3721342086792\n      ],\n      [\n        \"août\",\n        -12.372307777404785\n      ],\n      [\n        \"ango\",\n        -12.372514724731445\n      ],\n      [\n        \"give\",\n        -12.372532844543457\n      ],\n      [\n        \"▁appelé\",\n        -12.372576713562012\n      ],\n      [\n        \"▁yeast\",\n        -12.372671127319336\n      ],\n      [\n        \"▁enrollment\",\n        -12.372676849365234\n      ],\n      [\n        \"organiz\",\n        -12.3727445602417\n      ],\n      [\n        \"▁asociat\",\n        -12.372753143310547\n      ],\n      [\n        \"▁cattle\",\n        -12.372772216796875\n      ],\n      [\n        \"▁Solution\",\n        -12.372798919677734\n      ],\n      [\n        \"evoke\",\n        -12.372807502746582\n      ],\n      [\n        \"▁Hampshire\",\n        -12.372857093811035\n      ],\n      [\n        \"▁yeah\",\n        -12.372878074645996\n      ],\n      [\n        \"▁Argentina\",\n        -12.372928619384766\n      ],\n      [\n        \"▁abnormal\",\n        -12.373022079467773\n      ],\n      [\n        \"▁Heights\",\n        -12.373082160949707\n      ],\n      [\n        \"▁Mitchell\",\n        -12.373099327087402\n      ],\n      [\n        \"▁Quad\",\n        -12.373350143432617\n      ],\n      [\n        \"▁textures\",\n        -12.373382568359375\n      ],\n      [\n        \"▁coalition\",\n        -12.373384475708008\n      ],\n      [\n        \"▁dataset\",\n        -12.37338924407959\n      ],\n      [\n        \"World\",\n        -12.373438835144043\n      ],\n      [\n        \"ständ\",\n        -12.373456001281738\n      ],\n      [\n        \"▁groove\",\n        -12.373476028442383\n      ],\n      [\n        \"▁emotionally\",\n        -12.373562812805176\n      ],\n      [\n        \"▁preciz\",\n        -12.373636245727539\n      ],\n      [\n        \"kte\",\n        -12.373741149902344\n      ],\n      [\n        \"berechtigt\",\n        -12.373828887939453\n      ],\n      [\n        \"▁1971\",\n        -12.373888969421387\n      ],\n      [\n        \"grandes\",\n        -12.373907089233398\n      ],\n      [\n        \"▁Broadway\",\n        -12.37391185760498\n      ],\n      [\n        \"▁comunicat\",\n        -12.373994827270508\n      ],\n      [\n        \"nui\",\n        -12.37402629852295\n      ],\n      [\n        \"GER\",\n        -12.374079704284668\n      ],\n      [\n        \"pick\",\n        -12.374125480651855\n      ],\n      [\n        \"inscrit\",\n        -12.37414264678955\n      ],\n      [\n        \"▁Gross\",\n        -12.374258995056152\n      ],\n      [\n        \"▁McDonald\",\n        -12.374310493469238\n      ],\n      [\n        \"▁Zero\",\n        -12.374330520629883\n      ],\n      [\n        \"▁Halb\",\n        -12.374341011047363\n      ],\n      [\n        \"▁caractère\",\n        -12.374553680419922\n      ],\n      [\n        \"▁doctrine\",\n        -12.374553680419922\n      ],\n      [\n        \"▁Sinne\",\n        -12.37458610534668\n      ],\n      [\n        \"MLS\",\n        -12.374594688415527\n      ],\n      [\n        \"▁réel\",\n        -12.374759674072266\n      ],\n      [\n        \"▁Ful\",\n        -12.37476921081543\n      ],\n      [\n        \"limiting\",\n        -12.37483024597168\n      ],\n      [\n        \"▁Gan\",\n        -12.374870300292969\n      ],\n      [\n        \"▁exclude\",\n        -12.37490463256836\n      ],\n      [\n        \"imba\",\n        -12.374974250793457\n      ],\n      [\n        \"rolul\",\n        -12.374991416931152\n      ],\n      [\n        \"▁veggies\",\n        -12.375059127807617\n      ],\n      [\n        \"▁fasci\",\n        -12.375092506408691\n      ],\n      [\n        \"▁oval\",\n        -12.375173568725586\n      ],\n      [\n        \"▁contacter\",\n        -12.375221252441406\n      ],\n      [\n        \"▁linking\",\n        -12.375279426574707\n      ],\n      [\n        \"▁knit\",\n        -12.375308990478516\n      ],\n      [\n        \"▁enroll\",\n        -12.375504493713379\n      ],\n      [\n        \"▁dédié\",\n        -12.375533103942871\n      ],\n      [\n        \"▁renting\",\n        -12.375541687011719\n      ],\n      [\n        \"▁genera\",\n        -12.37567138671875\n      ],\n      [\n        \"citing\",\n        -12.375691413879395\n      ],\n      [\n        \"▁bend\",\n        -12.375700950622559\n      ],\n      [\n        \"guin\",\n        -12.375752449035645\n      ],\n      [\n        \"▁caregiver\",\n        -12.375768661499023\n      ],\n      [\n        \"▁könnt\",\n        -12.375791549682617\n      ],\n      [\n        \"▁Scripture\",\n        -12.375795364379883\n      ],\n      [\n        \"▁Mic\",\n        -12.375899314880371\n      ],\n      [\n        \"▁Denmark\",\n        -12.37590217590332\n      ],\n      [\n        \"▁qualifying\",\n        -12.375917434692383\n      ],\n      [\n        \"▁costumes\",\n        -12.375958442687988\n      ],\n      [\n        \"▁dwelling\",\n        -12.37601375579834\n      ],\n      [\n        \"▁recrut\",\n        -12.376099586486816\n      ],\n      [\n        \"▁bedding\",\n        -12.37618637084961\n      ],\n      [\n        \"gesprochen\",\n        -12.376253128051758\n      ],\n      [\n        \"▁editors\",\n        -12.376386642456055\n      ],\n      [\n        \"/12\",\n        -12.37657642364502\n      ],\n      [\n        \"▁cumparat\",\n        -12.376583099365234\n      ],\n      [\n        \"fiction\",\n        -12.376730918884277\n      ],\n      [\n        \"▁spinal\",\n        -12.376740455627441\n      ],\n      [\n        \"▁pathway\",\n        -12.376799583435059\n      ],\n      [\n        \"▁vârst\",\n        -12.37683391571045\n      ],\n      [\n        \"mba\",\n        -12.376874923706055\n      ],\n      [\n        \"▁enthusiastic\",\n        -12.37692642211914\n      ],\n      [\n        \"▁Watt\",\n        -12.37697982788086\n      ],\n      [\n        \"symptom\",\n        -12.376992225646973\n      ],\n      [\n        \"▁pup\",\n        -12.37712287902832\n      ],\n      [\n        \"▁glorious\",\n        -12.377225875854492\n      ],\n      [\n        \"▁fața\",\n        -12.377228736877441\n      ],\n      [\n        \"▁prohibited\",\n        -12.377256393432617\n      ],\n      [\n        \"vergleich\",\n        -12.377286911010742\n      ],\n      [\n        \"▁suspected\",\n        -12.377334594726562\n      ],\n      [\n        \"▁Railway\",\n        -12.377381324768066\n      ],\n      [\n        \"▁Aujourd\",\n        -12.377469062805176\n      ],\n      [\n        \"▁Patients\",\n        -12.377476692199707\n      ],\n      [\n        \"▁séance\",\n        -12.377501487731934\n      ],\n      [\n        \"▁contraire\",\n        -12.377503395080566\n      ],\n      [\n        \"▁cuvânt\",\n        -12.37771224975586\n      ],\n      [\n        \"▁trotzdem\",\n        -12.37773609161377\n      ],\n      [\n        \"émission\",\n        -12.377795219421387\n      ],\n      [\n        \"▁bore\",\n        -12.37782096862793\n      ],\n      [\n        \"▁safeguard\",\n        -12.377851486206055\n      ],\n      [\n        \"▁galleries\",\n        -12.37820053100586\n      ],\n      [\n        \"cron\",\n        -12.378268241882324\n      ],\n      [\n        \"▁Rica\",\n        -12.378335952758789\n      ],\n      [\n        \"fläche\",\n        -12.37839126586914\n      ],\n      [\n        \"▁Slow\",\n        -12.37842082977295\n      ],\n      [\n        \"▁vara\",\n        -12.378549575805664\n      ],\n      [\n        \"▁Swan\",\n        -12.378564834594727\n      ],\n      [\n        \"▁compounds\",\n        -12.378564834594727\n      ],\n      [\n        \"▁Slo\",\n        -12.378621101379395\n      ],\n      [\n        \"▁accommodations\",\n        -12.378621101379395\n      ],\n      [\n        \"▁Putin\",\n        -12.378708839416504\n      ],\n      [\n        \"▁undertaken\",\n        -12.378767967224121\n      ],\n      [\n        \"▁prépar\",\n        -12.37879467010498\n      ],\n      [\n        \"▁gandi\",\n        -12.37881088256836\n      ],\n      [\n        \"sediul\",\n        -12.378924369812012\n      ],\n      [\n        \"▁Nathan\",\n        -12.379143714904785\n      ],\n      [\n        \"▁fountain\",\n        -12.379173278808594\n      ],\n      [\n        \"▁mère\",\n        -12.379194259643555\n      ],\n      [\n        \"fatty\",\n        -12.379201889038086\n      ],\n      [\n        \"▁concentrated\",\n        -12.379241943359375\n      ],\n      [\n        \"richtung\",\n        -12.379300117492676\n      ],\n      [\n        \"▁appropriately\",\n        -12.37955379486084\n      ],\n      [\n        \"107\",\n        -12.379631996154785\n      ],\n      [\n        \"▁shark\",\n        -12.379735946655273\n      ],\n      [\n        \"▁Topic\",\n        -12.379867553710938\n      ],\n      [\n        \"▁Ausstellung\",\n        -12.379880905151367\n      ],\n      [\n        \"▁SUA\",\n        -12.380267143249512\n      ],\n      [\n        \"SER\",\n        -12.380359649658203\n      ],\n      [\n        \"▁Nicole\",\n        -12.38039779663086\n      ],\n      [\n        \"▁utilisateurs\",\n        -12.380620956420898\n      ],\n      [\n        \"▁Brazilian\",\n        -12.380753517150879\n      ],\n      [\n        \"▁continut\",\n        -12.380865097045898\n      ],\n      [\n        \"▁sanatate\",\n        -12.380881309509277\n      ],\n      [\n        \"faudra\",\n        -12.380882263183594\n      ],\n      [\n        \"nahm\",\n        -12.380938529968262\n      ],\n      [\n        \"▁Specific\",\n        -12.381153106689453\n      ],\n      [\n        \"aiba\",\n        -12.381199836730957\n      ],\n      [\n        \"cepând\",\n        -12.381296157836914\n      ],\n      [\n        \"▁Beer\",\n        -12.381366729736328\n      ],\n      [\n        \"roni\",\n        -12.381616592407227\n      ],\n      [\n        \"kay\",\n        -12.381636619567871\n      ],\n      [\n        \"▁gravity\",\n        -12.381844520568848\n      ],\n      [\n        \"▁verfügt\",\n        -12.381856918334961\n      ],\n      [\n        \"7:30\",\n        -12.381878852844238\n      ],\n      [\n        \"▁Players\",\n        -12.381945610046387\n      ],\n      [\n        \"▁Industries\",\n        -12.38198184967041\n      ],\n      [\n        \"punkte\",\n        -12.382119178771973\n      ],\n      [\n        \"▁yacht\",\n        -12.382135391235352\n      ],\n      [\n        \"-04\",\n        -12.382149696350098\n      ],\n      [\n        \"onné\",\n        -12.382192611694336\n      ],\n      [\n        \"▁Cards\",\n        -12.382221221923828\n      ],\n      [\n        \"▁fete\",\n        -12.382420539855957\n      ],\n      [\n        \"breaking\",\n        -12.38257884979248\n      ],\n      [\n        \"baum\",\n        -12.382621765136719\n      ],\n      [\n        \"nada\",\n        -12.382651329040527\n      ],\n      [\n        \"▁geplant\",\n        -12.382750511169434\n      ],\n      [\n        \"genuinely\",\n        -12.382766723632812\n      ],\n      [\n        \"talk\",\n        -12.382871627807617\n      ],\n      [\n        \"▁disadvantage\",\n        -12.382920265197754\n      ],\n      [\n        \"▁shutter\",\n        -12.383003234863281\n      ],\n      [\n        \"virus\",\n        -12.38302230834961\n      ],\n      [\n        \"▁cricket\",\n        -12.38308048248291\n      ],\n      [\n        \"▁comenzi\",\n        -12.383102416992188\n      ],\n      [\n        \"hier\",\n        -12.383170127868652\n      ],\n      [\n        \"▁aufzu\",\n        -12.383198738098145\n      ],\n      [\n        \"▁Rez\",\n        -12.38321304321289\n      ],\n      [\n        \"▁conclusions\",\n        -12.383329391479492\n      ],\n      [\n        \"▁Wang\",\n        -12.383509635925293\n      ],\n      [\n        \"Darüber\",\n        -12.383524894714355\n      ],\n      [\n        \"▁CSS\",\n        -12.383573532104492\n      ],\n      [\n        \"CW\",\n        -12.383780479431152\n      ],\n      [\n        \"▁Chr\",\n        -12.383790969848633\n      ],\n      [\n        \"▁traded\",\n        -12.383843421936035\n      ],\n      [\n        \"▁Schon\",\n        -12.384265899658203\n      ],\n      [\n        \"mped\",\n        -12.38429069519043\n      ],\n      [\n        \"▁alloy\",\n        -12.384385108947754\n      ],\n      [\n        \"AVE\",\n        -12.38451099395752\n      ],\n      [\n        \"▁imagery\",\n        -12.384542465209961\n      ],\n      [\n        \"▁resurse\",\n        -12.38479995727539\n      ],\n      [\n        \"▁Thunder\",\n        -12.384834289550781\n      ],\n      [\n        \"▁schimbare\",\n        -12.384860038757324\n      ],\n      [\n        \"▁Youtube\",\n        -12.38499927520752\n      ],\n      [\n        \"▁Monster\",\n        -12.385189056396484\n      ],\n      [\n        \"phil\",\n        -12.385234832763672\n      ],\n      [\n        \"▁bébé\",\n        -12.385284423828125\n      ],\n      [\n        \"Creating\",\n        -12.385428428649902\n      ],\n      [\n        \"ănă\",\n        -12.385466575622559\n      ],\n      [\n        \"▁Staat\",\n        -12.385504722595215\n      ],\n      [\n        \"adică\",\n        -12.385531425476074\n      ],\n      [\n        \"▁boyfriend\",\n        -12.385552406311035\n      ],\n      [\n        \"▁Winner\",\n        -12.385594367980957\n      ],\n      [\n        \"▁disputes\",\n        -12.385653495788574\n      ],\n      [\n        \"▁lush\",\n        -12.3856840133667\n      ],\n      [\n        \"▁CMS\",\n        -12.385719299316406\n      ],\n      [\n        \"▁locaux\",\n        -12.385725021362305\n      ],\n      [\n        \"▁Verfahren\",\n        -12.38576889038086\n      ],\n      [\n        \"▁Café\",\n        -12.385786056518555\n      ],\n      [\n        \"▁Vorstand\",\n        -12.385870933532715\n      ],\n      [\n        \"▁lucrat\",\n        -12.385960578918457\n      ],\n      [\n        \"▁Root\",\n        -12.38602352142334\n      ],\n      [\n        \"▁decis\",\n        -12.386059761047363\n      ],\n      [\n        \"▁Shadow\",\n        -12.386062622070312\n      ],\n      [\n        \"▁countryside\",\n        -12.386067390441895\n      ],\n      [\n        \"▁analiza\",\n        -12.386114120483398\n      ],\n      [\n        \"obos\",\n        -12.38616943359375\n      ],\n      [\n        \"opera\",\n        -12.386175155639648\n      ],\n      [\n        \"actu\",\n        -12.386207580566406\n      ],\n      [\n        \"▁Songs\",\n        -12.3864164352417\n      ],\n      [\n        \"reifen\",\n        -12.38648509979248\n      ],\n      [\n        \"▁hilft\",\n        -12.386650085449219\n      ],\n      [\n        \"region\",\n        -12.386727333068848\n      ],\n      [\n        \"▁categoria\",\n        -12.387001991271973\n      ],\n      [\n        \"capturing\",\n        -12.38701343536377\n      ],\n      [\n        \"▁1967\",\n        -12.387025833129883\n      ],\n      [\n        \"▁optimized\",\n        -12.387032508850098\n      ],\n      [\n        \"▁Dim\",\n        -12.387353897094727\n      ],\n      [\n        \"▁adapté\",\n        -12.387447357177734\n      ],\n      [\n        \"zeichnet\",\n        -12.387524604797363\n      ],\n      [\n        \"▁strada\",\n        -12.387625694274902\n      ],\n      [\n        \"fulness\",\n        -12.38774585723877\n      ],\n      [\n        \"▁technically\",\n        -12.38774585723877\n      ],\n      [\n        \"▁marker\",\n        -12.387757301330566\n      ],\n      [\n        \"▁vizita\",\n        -12.387808799743652\n      ],\n      [\n        \"▁imperative\",\n        -12.387986183166504\n      ],\n      [\n        \"▁pensé\",\n        -12.38802719116211\n      ],\n      [\n        \"▁drilling\",\n        -12.388030052185059\n      ],\n      [\n        \"ISA\",\n        -12.38818073272705\n      ],\n      [\n        \"▁Massage\",\n        -12.388201713562012\n      ],\n      [\n        \"▁Terry\",\n        -12.388238906860352\n      ],\n      [\n        \"▁pourtant\",\n        -12.38835334777832\n      ],\n      [\n        \"▁declaration\",\n        -12.388440132141113\n      ],\n      [\n        \"▁instructors\",\n        -12.388453483581543\n      ],\n      [\n        \"Eventually\",\n        -12.38847827911377\n      ],\n      [\n        \"▁banned\",\n        -12.38847827911377\n      ],\n      [\n        \"MAT\",\n        -12.388520240783691\n      ],\n      [\n        \"▁medici\",\n        -12.38856315612793\n      ],\n      [\n        \"▁Warm\",\n        -12.388615608215332\n      ],\n      [\n        \"▁trec\",\n        -12.388731002807617\n      ],\n      [\n        \"▁ecran\",\n        -12.388763427734375\n      ],\n      [\n        \"▁goat\",\n        -12.388838768005371\n      ],\n      [\n        \"▁manipulation\",\n        -12.388850212097168\n      ],\n      [\n        \"▁mayor\",\n        -12.388898849487305\n      ],\n      [\n        \"▁unterwegs\",\n        -12.388975143432617\n      ],\n      [\n        \"▁journals\",\n        -12.3890380859375\n      ],\n      [\n        \"▁hedge\",\n        -12.389239311218262\n      ],\n      [\n        \"Merc\",\n        -12.389300346374512\n      ],\n      [\n        \"▁joueurs\",\n        -12.389411926269531\n      ],\n      [\n        \"▁Religion\",\n        -12.3894624710083\n      ],\n      [\n        \"▁Mountains\",\n        -12.389477729797363\n      ],\n      [\n        \"▁renewed\",\n        -12.389497756958008\n      ],\n      [\n        \"▁Limit\",\n        -12.389543533325195\n      ],\n      [\n        \"ikea\",\n        -12.389771461486816\n      ],\n      [\n        \"▁utiliza\",\n        -12.38977336883545\n      ],\n      [\n        \"sogenannte\",\n        -12.389808654785156\n      ],\n      [\n        \"0.2\",\n        -12.389836311340332\n      ],\n      [\n        \"▁Organ\",\n        -12.38987922668457\n      ],\n      [\n        \"▁Shakespeare\",\n        -12.389952659606934\n      ],\n      [\n        \"▁Maintenance\",\n        -12.38995361328125\n      ],\n      [\n        \"▁Wärme\",\n        -12.389954566955566\n      ],\n      [\n        \"▁Northwest\",\n        -12.390060424804688\n      ],\n      [\n        \"▁numit\",\n        -12.390106201171875\n      ],\n      [\n        \"▁mica\",\n        -12.390165328979492\n      ],\n      [\n        \"turm\",\n        -12.390168190002441\n      ],\n      [\n        \"▁motivate\",\n        -12.390250205993652\n      ],\n      [\n        \"▁Staats\",\n        -12.390355110168457\n      ],\n      [\n        \"optimum\",\n        -12.390487670898438\n      ],\n      [\n        \"▁sortir\",\n        -12.390546798706055\n      ],\n      [\n        \"▁Asset\",\n        -12.390555381774902\n      ],\n      [\n        \"▁hervorragend\",\n        -12.390692710876465\n      ],\n      [\n        \"▁commentary\",\n        -12.39071273803711\n      ],\n      [\n        \"▁actuellement\",\n        -12.390732765197754\n      ],\n      [\n        \"NER\",\n        -12.390765190124512\n      ],\n      [\n        \"NL\",\n        -12.390789985656738\n      ],\n      [\n        \"ritt\",\n        -12.390803337097168\n      ],\n      [\n        \"▁Wirtschafts\",\n        -12.390813827514648\n      ],\n      [\n        \"träger\",\n        -12.390840530395508\n      ],\n      [\n        \"▁Versand\",\n        -12.390870094299316\n      ],\n      [\n        \"▁nostri\",\n        -12.390953063964844\n      ],\n      [\n        \"▁enorm\",\n        -12.391227722167969\n      ],\n      [\n        \"▁whale\",\n        -12.391260147094727\n      ],\n      [\n        \"▁Aufgabe\",\n        -12.391277313232422\n      ],\n      [\n        \"▁unfair\",\n        -12.391291618347168\n      ],\n      [\n        \"▁Cord\",\n        -12.391315460205078\n      ],\n      [\n        \"incorporating\",\n        -12.39134693145752\n      ],\n      [\n        \"luck\",\n        -12.39157772064209\n      ],\n      [\n        \"Afrique\",\n        -12.39168643951416\n      ],\n      [\n        \"▁coated\",\n        -12.391857147216797\n      ],\n      [\n        \"▁india\",\n        -12.391908645629883\n      ],\n      [\n        \"▁temporarily\",\n        -12.39193058013916\n      ],\n      [\n        \"▁ciuda\",\n        -12.392097473144531\n      ],\n      [\n        \"▁coral\",\n        -12.392184257507324\n      ],\n      [\n        \"▁wirkt\",\n        -12.392203330993652\n      ],\n      [\n        \"▁folding\",\n        -12.392309188842773\n      ],\n      [\n        \"wichtigsten\",\n        -12.392398834228516\n      ],\n      [\n        \"impacted\",\n        -12.392422676086426\n      ],\n      [\n        \"▁wählen\",\n        -12.392423629760742\n      ],\n      [\n        \"▁differentiate\",\n        -12.392492294311523\n      ],\n      [\n        \"▁froid\",\n        -12.392544746398926\n      ],\n      [\n        \"▁hug\",\n        -12.39255142211914\n      ],\n      [\n        \"▁construi\",\n        -12.39255428314209\n      ],\n      [\n        \"▁membru\",\n        -12.392603874206543\n      ],\n      [\n        \"▁masculin\",\n        -12.392667770385742\n      ],\n      [\n        \"partisan\",\n        -12.392711639404297\n      ],\n      [\n        \"▁schimba\",\n        -12.392725944519043\n      ],\n      [\n        \"▁economies\",\n        -12.392827987670898\n      ],\n      [\n        \"▁Abraham\",\n        -12.392914772033691\n      ],\n      [\n        \"wesen\",\n        -12.393013954162598\n      ],\n      [\n        \"enia\",\n        -12.393026351928711\n      ],\n      [\n        \"▁answering\",\n        -12.393080711364746\n      ],\n      [\n        \"▁activități\",\n        -12.39309024810791\n      ],\n      [\n        \"▁mémoire\",\n        -12.393160820007324\n      ],\n      [\n        \"▁versucht\",\n        -12.393305778503418\n      ],\n      [\n        \"ember\",\n        -12.39333438873291\n      ],\n      [\n        \"▁instala\",\n        -12.39334774017334\n      ],\n      [\n        \"▁eligibility\",\n        -12.393407821655273\n      ],\n      [\n        \"▁enjoyment\",\n        -12.393409729003906\n      ],\n      [\n        \"▁Arme\",\n        -12.39350414276123\n      ],\n      [\n        \"although\",\n        -12.393534660339355\n      ],\n      [\n        \"▁encompass\",\n        -12.393596649169922\n      ],\n      [\n        \"▁zufrieden\",\n        -12.393658638000488\n      ],\n      [\n        \"Script\",\n        -12.393691062927246\n      ],\n      [\n        \"KG\",\n        -12.39385986328125\n      ],\n      [\n        \"▁adhesive\",\n        -12.393902778625488\n      ],\n      [\n        \"▁Verkehrs\",\n        -12.393908500671387\n      ],\n      [\n        \"▁monitored\",\n        -12.394103050231934\n      ],\n      [\n        \"▁Conservation\",\n        -12.394148826599121\n      ],\n      [\n        \"hav\",\n        -12.394156455993652\n      ],\n      [\n        \"▁Above\",\n        -12.394174575805664\n      ],\n      [\n        \"▁Former\",\n        -12.394241333007812\n      ],\n      [\n        \"▁Certain\",\n        -12.394250869750977\n      ],\n      [\n        \"saving\",\n        -12.394311904907227\n      ],\n      [\n        \"▁Pun\",\n        -12.394390106201172\n      ],\n      [\n        \"▁awkward\",\n        -12.394397735595703\n      ],\n      [\n        \"▁Pretty\",\n        -12.394410133361816\n      ],\n      [\n        \"▁scanning\",\n        -12.394417762756348\n      ],\n      [\n        \"layer\",\n        -12.394527435302734\n      ],\n      [\n        \"motor\",\n        -12.39453125\n      ],\n      [\n        \"▁beginnt\",\n        -12.39455795288086\n      ],\n      [\n        \"▁affiliated\",\n        -12.394681930541992\n      ],\n      [\n        \"▁archives\",\n        -12.394686698913574\n      ],\n      [\n        \"▁sunshine\",\n        -12.394892692565918\n      ],\n      [\n        \"kha\",\n        -12.394988059997559\n      ],\n      [\n        \"▁investigated\",\n        -12.395149230957031\n      ],\n      [\n        \"▁fantas\",\n        -12.395277976989746\n      ],\n      [\n        \"▁united\",\n        -12.395355224609375\n      ],\n      [\n        \"allegedly\",\n        -12.395373344421387\n      ],\n      [\n        \"▁Eugen\",\n        -12.3955078125\n      ],\n      [\n        \"▁proprie\",\n        -12.395843505859375\n      ],\n      [\n        \"uca\",\n        -12.396183013916016\n      ],\n      [\n        \"DES\",\n        -12.396187782287598\n      ],\n      [\n        \"ştii\",\n        -12.396190643310547\n      ],\n      [\n        \"▁Running\",\n        -12.39620590209961\n      ],\n      [\n        \"lbstverständlich\",\n        -12.396248817443848\n      ],\n      [\n        \"index\",\n        -12.396300315856934\n      ],\n      [\n        \"▁studiu\",\n        -12.396512031555176\n      ],\n      [\n        \"URE\",\n        -12.396553039550781\n      ],\n      [\n        \"gültig\",\n        -12.396627426147461\n      ],\n      [\n        \"▁lundi\",\n        -12.396649360656738\n      ],\n      [\n        \"▁Zucker\",\n        -12.396650314331055\n      ],\n      [\n        \"▁positively\",\n        -12.396721839904785\n      ],\n      [\n        \"folgenden\",\n        -12.396758079528809\n      ],\n      [\n        \"anță\",\n        -12.396800994873047\n      ],\n      [\n        \"▁clan\",\n        -12.396866798400879\n      ],\n      [\n        \"▁literacy\",\n        -12.396879196166992\n      ],\n      [\n        \"▁ober\",\n        -12.39699935913086\n      ],\n      [\n        \"John\",\n        -12.397003173828125\n      ],\n      [\n        \"greg\",\n        -12.39700984954834\n      ],\n      [\n        \"▁titlu\",\n        -12.397049903869629\n      ],\n      [\n        \"▁ţări\",\n        -12.39707088470459\n      ],\n      [\n        \"Bra\",\n        -12.397100448608398\n      ],\n      [\n        \"▁Evans\",\n        -12.397164344787598\n      ],\n      [\n        \"modern\",\n        -12.397172927856445\n      ],\n      [\n        \"▁hauteur\",\n        -12.397353172302246\n      ],\n      [\n        \"refers\",\n        -12.397416114807129\n      ],\n      [\n        \"▁plasma\",\n        -12.397575378417969\n      ],\n      [\n        \"▁optic\",\n        -12.397595405578613\n      ],\n      [\n        \"▁shampoo\",\n        -12.397619247436523\n      ],\n      [\n        \"▁cheek\",\n        -12.397727966308594\n      ],\n      [\n        \"opted\",\n        -12.397741317749023\n      ],\n      [\n        \"▁persönlich\",\n        -12.397832870483398\n      ],\n      [\n        \"▁1945\",\n        -12.398118019104004\n      ],\n      [\n        \"ICI\",\n        -12.398193359375\n      ],\n      [\n        \"biotic\",\n        -12.398222923278809\n      ],\n      [\n        \"▁Beruf\",\n        -12.398372650146484\n      ],\n      [\n        \"▁trez\",\n        -12.398383140563965\n      ],\n      [\n        \"▁diploma\",\n        -12.398388862609863\n      ],\n      [\n        \"nahmen\",\n        -12.398421287536621\n      ],\n      [\n        \"▁curl\",\n        -12.398625373840332\n      ],\n      [\n        \"▁agricole\",\n        -12.398824691772461\n      ],\n      [\n        \"▁recomand\",\n        -12.398844718933105\n      ],\n      [\n        \"▁pediatric\",\n        -12.398862838745117\n      ],\n      [\n        \"Fiecare\",\n        -12.39887523651123\n      ],\n      [\n        \"Anlage\",\n        -12.398906707763672\n      ],\n      [\n        \"weiß\",\n        -12.398974418640137\n      ],\n      [\n        \"elecommunication\",\n        -12.39898681640625\n      ],\n      [\n        \"hog\",\n        -12.399184226989746\n      ],\n      [\n        \"▁Stamp\",\n        -12.399364471435547\n      ],\n      [\n        \"▁Tipp\",\n        -12.399369239807129\n      ],\n      [\n        \"▁kindness\",\n        -12.399415969848633\n      ],\n      [\n        \"▁Marina\",\n        -12.399577140808105\n      ],\n      [\n        \"▁Gleich\",\n        -12.39963436126709\n      ],\n      [\n        \"▁grij\",\n        -12.39970588684082\n      ],\n      [\n        \"▁desperate\",\n        -12.39974594116211\n      ],\n      [\n        \"▁recordings\",\n        -12.399842262268066\n      ],\n      [\n        \"▁neglect\",\n        -12.399861335754395\n      ],\n      [\n        \"▁inherent\",\n        -12.400035858154297\n      ],\n      [\n        \"▁Rezept\",\n        -12.400138854980469\n      ],\n      [\n        \"▁soins\",\n        -12.400164604187012\n      ],\n      [\n        \"▁brut\",\n        -12.400250434875488\n      ],\n      [\n        \"▁revolutionary\",\n        -12.400495529174805\n      ],\n      [\n        \"▁liberté\",\n        -12.400530815124512\n      ],\n      [\n        \"cours\",\n        -12.400945663452148\n      ],\n      [\n        \"▁Similar\",\n        -12.401247024536133\n      ],\n      [\n        \"▁cheveux\",\n        -12.40136432647705\n      ],\n      [\n        \"▁ieftin\",\n        -12.401599884033203\n      ],\n      [\n        \"▁promovare\",\n        -12.40160846710205\n      ],\n      [\n        \"▁grains\",\n        -12.401729583740234\n      ],\n      [\n        \"ти\",\n        -12.401749610900879\n      ],\n      [\n        \"▁fonctionnement\",\n        -12.401789665222168\n      ],\n      [\n        \"▁Coming\",\n        -12.401832580566406\n      ],\n      [\n        \"▁analytical\",\n        -12.401847839355469\n      ],\n      [\n        \"▁simplify\",\n        -12.401856422424316\n      ],\n      [\n        \"▁chambres\",\n        -12.401893615722656\n      ],\n      [\n        \"▁fifty\",\n        -12.401930809020996\n      ],\n      [\n        \"jour\",\n        -12.402070999145508\n      ],\n      [\n        \"▁(17\",\n        -12.402194023132324\n      ],\n      [\n        \"cărui\",\n        -12.402292251586914\n      ],\n      [\n        \"▁harmony\",\n        -12.402352333068848\n      ],\n      [\n        \"grin\",\n        -12.402355194091797\n      ],\n      [\n        \"▁drunk\",\n        -12.402359962463379\n      ],\n      [\n        \"260\",\n        -12.402374267578125\n      ],\n      [\n        \"3-5\",\n        -12.40243148803711\n      ],\n      [\n        \"▁articole\",\n        -12.402442932128906\n      ],\n      [\n        \"▁flooding\",\n        -12.402482986450195\n      ],\n      [\n        \"halle\",\n        -12.402580261230469\n      ],\n      [\n        \"▁defects\",\n        -12.40276050567627\n      ],\n      [\n        \"▁rifle\",\n        -12.402839660644531\n      ],\n      [\n        \"▁Boc\",\n        -12.402843475341797\n      ],\n      [\n        \"▁Athletic\",\n        -12.40284538269043\n      ],\n      [\n        \"▁acordat\",\n        -12.40292739868164\n      ],\n      [\n        \"AIR\",\n        -12.402969360351562\n      ],\n      [\n        \"▁entwickeln\",\n        -12.403104782104492\n      ],\n      [\n        \"▁Advance\",\n        -12.403188705444336\n      ],\n      [\n        \"▁Heil\",\n        -12.403216361999512\n      ],\n      [\n        \"Stainless\",\n        -12.403345108032227\n      ],\n      [\n        \"▁Psychology\",\n        -12.40337085723877\n      ],\n      [\n        \"▁omul\",\n        -12.403435707092285\n      ],\n      [\n        \"▁Arbeiten\",\n        -12.403494834899902\n      ],\n      [\n        \"▁rabbit\",\n        -12.403495788574219\n      ],\n      [\n        \"▁méta\",\n        -12.40351390838623\n      ],\n      [\n        \"ismul\",\n        -12.403534889221191\n      ],\n      [\n        \"▁Herausforderung\",\n        -12.403594970703125\n      ],\n      [\n        \"▁Euch\",\n        -12.403654098510742\n      ],\n      [\n        \"geschichte\",\n        -12.40390682220459\n      ],\n      [\n        \"▁Milk\",\n        -12.404057502746582\n      ],\n      [\n        \"▁pregăt\",\n        -12.404065132141113\n      ],\n      [\n        \"▁Standort\",\n        -12.404141426086426\n      ],\n      [\n        \"Val\",\n        -12.404180526733398\n      ],\n      [\n        \"▁Ronald\",\n        -12.404350280761719\n      ],\n      [\n        \"▁Werbe\",\n        -12.404558181762695\n      ],\n      [\n        \"▁restrict\",\n        -12.404658317565918\n      ],\n      [\n        \"▁tablespoon\",\n        -12.404844284057617\n      ],\n      [\n        \"▁Amendment\",\n        -12.404845237731934\n      ],\n      [\n        \"▁Johnny\",\n        -12.404914855957031\n      ],\n      [\n        \"▁lively\",\n        -12.404938697814941\n      ],\n      [\n        \"ORD\",\n        -12.405147552490234\n      ],\n      [\n        \"▁mulţi\",\n        -12.40523624420166\n      ],\n      [\n        \"èrent\",\n        -12.405241012573242\n      ],\n      [\n        \"Every\",\n        -12.405277252197266\n      ],\n      [\n        \"eignet\",\n        -12.405296325683594\n      ],\n      [\n        \"GD\",\n        -12.40546989440918\n      ],\n      [\n        \"▁Ghana\",\n        -12.405628204345703\n      ],\n      [\n        \"▁wealthy\",\n        -12.40576171875\n      ],\n      [\n        \"▁advocates\",\n        -12.405818939208984\n      ],\n      [\n        \"▁Campaign\",\n        -12.40584659576416\n      ],\n      [\n        \"▁posters\",\n        -12.405964851379395\n      ],\n      [\n        \"flug\",\n        -12.406011581420898\n      ],\n      [\n        \"▁métier\",\n        -12.406139373779297\n      ],\n      [\n        \"kir\",\n        -12.406148910522461\n      ],\n      [\n        \"bond\",\n        -12.406176567077637\n      ],\n      [\n        \"datorita\",\n        -12.406188011169434\n      ],\n      [\n        \"▁Hochzeit\",\n        -12.406230926513672\n      ],\n      [\n        \"▁effectué\",\n        -12.406271934509277\n      ],\n      [\n        \"▁angles\",\n        -12.40654182434082\n      ],\n      [\n        \"▁Electrical\",\n        -12.406705856323242\n      ],\n      [\n        \"▁Administrator\",\n        -12.40674114227295\n      ],\n      [\n        \"▁spur\",\n        -12.407389640808105\n      ],\n      [\n        \"▁größere\",\n        -12.407444953918457\n      ],\n      [\n        \"woke\",\n        -12.407515525817871\n      ],\n      [\n        \"▁gewinnen\",\n        -12.407689094543457\n      ],\n      [\n        \"▁ajută\",\n        -12.407712936401367\n      ],\n      [\n        \"▁ventilation\",\n        -12.407853126525879\n      ],\n      [\n        \"▁viaţa\",\n        -12.407853126525879\n      ],\n      [\n        \"▁Dinner\",\n        -12.408079147338867\n      ],\n      [\n        \"respond\",\n        -12.408095359802246\n      ],\n      [\n        \"▁OEM\",\n        -12.408120155334473\n      ],\n      [\n        \"▁affair\",\n        -12.4081392288208\n      ],\n      [\n        \"▁öffentlich\",\n        -12.408143043518066\n      ],\n      [\n        \"ENS\",\n        -12.408209800720215\n      ],\n      [\n        \"▁Cent\",\n        -12.408224105834961\n      ],\n      [\n        \"▁făc\",\n        -12.408267974853516\n      ],\n      [\n        \"▁Doppel\",\n        -12.408285140991211\n      ],\n      [\n        \"▁fericit\",\n        -12.408363342285156\n      ],\n      [\n        \"▁coordon\",\n        -12.40845775604248\n      ],\n      [\n        \"geht\",\n        -12.408547401428223\n      ],\n      [\n        \"▁perfekte\",\n        -12.408610343933105\n      ],\n      [\n        \"▁sportive\",\n        -12.408700942993164\n      ],\n      [\n        \"▁proiectul\",\n        -12.40870189666748\n      ],\n      [\n        \"▁deadly\",\n        -12.408804893493652\n      ],\n      [\n        \"Geschäft\",\n        -12.408822059631348\n      ],\n      [\n        \"▁inspirational\",\n        -12.408854484558105\n      ],\n      [\n        \"+1\",\n        -12.409013748168945\n      ],\n      [\n        \"▁pearl\",\n        -12.409022331237793\n      ],\n      [\n        \"▁scrub\",\n        -12.409036636352539\n      ],\n      [\n        \"▁scheint\",\n        -12.409079551696777\n      ],\n      [\n        \"poo\",\n        -12.409147262573242\n      ],\n      [\n        \"▁Pier\",\n        -12.409220695495605\n      ],\n      [\n        \"▁commented\",\n        -12.409285545349121\n      ],\n      [\n        \"lute\",\n        -12.409302711486816\n      ],\n      [\n        \"▁cancelled\",\n        -12.409488677978516\n      ],\n      [\n        \"Win\",\n        -12.409605979919434\n      ],\n      [\n        \"▁payroll\",\n        -12.409781455993652\n      ],\n      [\n        \"▁varsta\",\n        -12.409881591796875\n      ],\n      [\n        \"stuffed\",\n        -12.410097122192383\n      ],\n      [\n        \"▁beads\",\n        -12.410138130187988\n      ],\n      [\n        \"▁poems\",\n        -12.410356521606445\n      ],\n      [\n        \"pokesman\",\n        -12.410399436950684\n      ],\n      [\n        \"▁checklist\",\n        -12.410523414611816\n      ],\n      [\n        \"▁Mich\",\n        -12.410636901855469\n      ],\n      [\n        \"GEN\",\n        -12.410676002502441\n      ],\n      [\n        \"▁Lau\",\n        -12.410783767700195\n      ],\n      [\n        \"▁stie\",\n        -12.410965919494629\n      ],\n      [\n        \"▁Lovely\",\n        -12.4110107421875\n      ],\n      [\n        \"▁Anschluss\",\n        -12.411062240600586\n      ],\n      [\n        \"▁personaj\",\n        -12.41108226776123\n      ],\n      [\n        \"▁ausgestattet\",\n        -12.411121368408203\n      ],\n      [\n        \"▁beginners\",\n        -12.411163330078125\n      ],\n      [\n        \"▁noon\",\n        -12.411189079284668\n      ],\n      [\n        \"▁celule\",\n        -12.41128921508789\n      ],\n      [\n        \"Trans\",\n        -12.411324501037598\n      ],\n      [\n        \"boot\",\n        -12.411331176757812\n      ],\n      [\n        \"▁drumul\",\n        -12.41136646270752\n      ],\n      [\n        \"gruppen\",\n        -12.41140079498291\n      ],\n      [\n        \"étend\",\n        -12.41140365600586\n      ],\n      [\n        \"▁risques\",\n        -12.411405563354492\n      ],\n      [\n        \"acclaimed\",\n        -12.411447525024414\n      ],\n      [\n        \"▁celelalte\",\n        -12.411617279052734\n      ],\n      [\n        \"▁condiţii\",\n        -12.411620140075684\n      ],\n      [\n        \"▁skiing\",\n        -12.411685943603516\n      ],\n      [\n        \"▁optimale\",\n        -12.411689758300781\n      ],\n      [\n        \"technology\",\n        -12.411773681640625\n      ],\n      [\n        \"▁renew\",\n        -12.411784172058105\n      ],\n      [\n        \"Cloud\",\n        -12.41179084777832\n      ],\n      [\n        \"▁damaging\",\n        -12.411905288696289\n      ],\n      [\n        \"GT\",\n        -12.412219047546387\n      ],\n      [\n        \"▁Reform\",\n        -12.41230583190918\n      ],\n      [\n        \"vedem\",\n        -12.412349700927734\n      ],\n      [\n        \"▁indicat\",\n        -12.412461280822754\n      ],\n      [\n        \"▁Maker\",\n        -12.412467002868652\n      ],\n      [\n        \"▁lichid\",\n        -12.412582397460938\n      ],\n      [\n        \"3.1\",\n        -12.412614822387695\n      ],\n      [\n        \"păt\",\n        -12.412620544433594\n      ],\n      [\n        \"lumina\",\n        -12.41264820098877\n      ],\n      [\n        \"▁Situ\",\n        -12.412806510925293\n      ],\n      [\n        \"▁Archives\",\n        -12.412857055664062\n      ],\n      [\n        \"▁allergies\",\n        -12.41287899017334\n      ],\n      [\n        \"▁Cameron\",\n        -12.412883758544922\n      ],\n      [\n        \"▁Immun\",\n        -12.412899017333984\n      ],\n      [\n        \"wissenschaftlich\",\n        -12.41301441192627\n      ],\n      [\n        \"▁supplémentaire\",\n        -12.413128852844238\n      ],\n      [\n        \"▁puterea\",\n        -12.413261413574219\n      ],\n      [\n        \"Lab\",\n        -12.413331985473633\n      ],\n      [\n        \"inspired\",\n        -12.413384437561035\n      ],\n      [\n        \"▁shrink\",\n        -12.413403511047363\n      ],\n      [\n        \"▁voit\",\n        -12.413426399230957\n      ],\n      [\n        \"▁chopped\",\n        -12.413467407226562\n      ],\n      [\n        \"▁Franz\",\n        -12.413537979125977\n      ],\n      [\n        \"oku\",\n        -12.413652420043945\n      ],\n      [\n        \"▁suppress\",\n        -12.413673400878906\n      ],\n      [\n        \"▁impress\",\n        -12.413751602172852\n      ],\n      [\n        \"▁Liga\",\n        -12.413755416870117\n      ],\n      [\n        \"▁Eight\",\n        -12.41378402709961\n      ],\n      [\n        \"720\",\n        -12.413795471191406\n      ],\n      [\n        \"▁securely\",\n        -12.413870811462402\n      ],\n      [\n        \"KU\",\n        -12.413934707641602\n      ],\n      [\n        \"modell\",\n        -12.413992881774902\n      ],\n      [\n        \"Ensure\",\n        -12.414154052734375\n      ],\n      [\n        \"größte\",\n        -12.414204597473145\n      ],\n      [\n        \"▁réuni\",\n        -12.414215087890625\n      ],\n      [\n        \"▁Internal\",\n        -12.41423225402832\n      ],\n      [\n        \"▁Punkte\",\n        -12.414320945739746\n      ],\n      [\n        \"▁replicate\",\n        -12.414412498474121\n      ],\n      [\n        \"▁spreadsheet\",\n        -12.414434432983398\n      ],\n      [\n        \"▁Hindu\",\n        -12.414549827575684\n      ],\n      [\n        \"▁Cham\",\n        -12.414578437805176\n      ],\n      [\n        \"nati\",\n        -12.414670944213867\n      ],\n      [\n        \"imply\",\n        -12.414679527282715\n      ],\n      [\n        \"funded\",\n        -12.414894104003906\n      ],\n      [\n        \"▁charitable\",\n        -12.414896011352539\n      ],\n      [\n        \"▁imagined\",\n        -12.415014266967773\n      ],\n      [\n        \"hausen\",\n        -12.41517448425293\n      ],\n      [\n        \"Keeping\",\n        -12.415239334106445\n      ],\n      [\n        \"▁attitudes\",\n        -12.415287971496582\n      ],\n      [\n        \"esque\",\n        -12.415365219116211\n      ],\n      [\n        \"▁Tennis\",\n        -12.415409088134766\n      ],\n      [\n        \"Jeremy\",\n        -12.415410041809082\n      ],\n      [\n        \"▁majeur\",\n        -12.415475845336914\n      ],\n      [\n        \"▁stii\",\n        -12.4155912399292\n      ],\n      [\n        \"▁herbal\",\n        -12.415790557861328\n      ],\n      [\n        \"▁cauta\",\n        -12.41580867767334\n      ],\n      [\n        \"▁voluntary\",\n        -12.415828704833984\n      ],\n      [\n        \"wohl\",\n        -12.415877342224121\n      ],\n      [\n        \"▁ideea\",\n        -12.41588306427002\n      ],\n      [\n        \"▁WW\",\n        -12.415899276733398\n      ],\n      [\n        \"▁erneut\",\n        -12.416010856628418\n      ],\n      [\n        \"größten\",\n        -12.416094779968262\n      ],\n      [\n        \"Grâce\",\n        -12.416159629821777\n      ],\n      [\n        \"▁Köln\",\n        -12.416193008422852\n      ],\n      [\n        \"▁mobilier\",\n        -12.416199684143066\n      ],\n      [\n        \"▁fool\",\n        -12.416254043579102\n      ],\n      [\n        \"▁Calcul\",\n        -12.416295051574707\n      ],\n      [\n        \"attaque\",\n        -12.41637897491455\n      ],\n      [\n        \"▁digestive\",\n        -12.41656494140625\n      ],\n      [\n        \"performance\",\n        -12.416647911071777\n      ],\n      [\n        \"▁homeowner\",\n        -12.41675853729248\n      ],\n      [\n        \"▁hunger\",\n        -12.4169282913208\n      ],\n      [\n        \"2.3\",\n        -12.41696834564209\n      ],\n      [\n        \"▁Sort\",\n        -12.417085647583008\n      ],\n      [\n        \"▁Dennis\",\n        -12.41723918914795\n      ],\n      [\n        \"▁certificat\",\n        -12.417250633239746\n      ],\n      [\n        \"▁Canal\",\n        -12.417337417602539\n      ],\n      [\n        \"▁Yesterday\",\n        -12.417424201965332\n      ],\n      [\n        \"▁sausage\",\n        -12.417499542236328\n      ],\n      [\n        \"▁perdu\",\n        -12.417736053466797\n      ],\n      [\n        \"ösen\",\n        -12.417741775512695\n      ],\n      [\n        \"▁preserved\",\n        -12.417750358581543\n      ],\n      [\n        \"▁trendy\",\n        -12.4177885055542\n      ],\n      [\n        \"▁iubire\",\n        -12.417935371398926\n      ],\n      [\n        \"▁grandfather\",\n        -12.417961120605469\n      ],\n      [\n        \"▁shoppers\",\n        -12.41820240020752\n      ],\n      [\n        \"▁verschieden\",\n        -12.418252944946289\n      ],\n      [\n        \"▁gagner\",\n        -12.41826343536377\n      ],\n      [\n        \"▁lucra\",\n        -12.418437004089355\n      ],\n      [\n        \"metru\",\n        -12.418464660644531\n      ],\n      [\n        \"buz\",\n        -12.418469429016113\n      ],\n      [\n        \"▁flourish\",\n        -12.418484687805176\n      ],\n      [\n        \"affin\",\n        -12.418523788452148\n      ],\n      [\n        \"▁Pflanzen\",\n        -12.41858196258545\n      ],\n      [\n        \"agh\",\n        -12.418588638305664\n      ],\n      [\n        \"▁Gill\",\n        -12.418660163879395\n      ],\n      [\n        \"▁Kä\",\n        -12.418671607971191\n      ],\n      [\n        \"▁Wege\",\n        -12.41876220703125\n      ],\n      [\n        \"▁Liberal\",\n        -12.418929100036621\n      ],\n      [\n        \"▁Glasgow\",\n        -12.418944358825684\n      ],\n      [\n        \"Objekt\",\n        -12.4189453125\n      ],\n      [\n        \"▁Huawei\",\n        -12.4189453125\n      ],\n      [\n        \"appropri\",\n        -12.418986320495605\n      ],\n      [\n        \"▁genius\",\n        -12.419037818908691\n      ],\n      [\n        \"▁brokers\",\n        -12.419068336486816\n      ],\n      [\n        \"▁themed\",\n        -12.41918659210205\n      ],\n      [\n        \"▁barre\",\n        -12.419210433959961\n      ],\n      [\n        \"1.7\",\n        -12.419219017028809\n      ],\n      [\n        \"▁Electro\",\n        -12.419303894042969\n      ],\n      [\n        \"▁umbrella\",\n        -12.419333457946777\n      ],\n      [\n        \"▁advisory\",\n        -12.419417381286621\n      ],\n      [\n        \"▁comport\",\n        -12.419421195983887\n      ],\n      [\n        \"▁neuer\",\n        -12.419452667236328\n      ],\n      [\n        \"▁Wick\",\n        -12.419568061828613\n      ],\n      [\n        \"wak\",\n        -12.419618606567383\n      ],\n      [\n        \"▁Woman\",\n        -12.419695854187012\n      ],\n      [\n        \"▁lesser\",\n        -12.419843673706055\n      ],\n      [\n        \"▁replied\",\n        -12.419987678527832\n      ],\n      [\n        \"▁représente\",\n        -12.420050621032715\n      ],\n      [\n        \"▁thé\",\n        -12.420135498046875\n      ],\n      [\n        \"Deutsch\",\n        -12.420428276062012\n      ],\n      [\n        \"Cat\",\n        -12.420483589172363\n      ],\n      [\n        \"▁équipes\",\n        -12.420534133911133\n      ],\n      [\n        \"▁spider\",\n        -12.420578956604004\n      ],\n      [\n        \"▁Gaming\",\n        -12.420589447021484\n      ],\n      [\n        \"▁Liste\",\n        -12.420592308044434\n      ],\n      [\n        \"▁affection\",\n        -12.420639038085938\n      ],\n      [\n        \"lipsa\",\n        -12.420982360839844\n      ],\n      [\n        \"▁Spider\",\n        -12.420987129211426\n      ],\n      [\n        \"▁Julia\",\n        -12.421034812927246\n      ],\n      [\n        \"anlagen\",\n        -12.421159744262695\n      ],\n      [\n        \"Kon\",\n        -12.421363830566406\n      ],\n      [\n        \"nței\",\n        -12.421368598937988\n      ],\n      [\n        \"▁Verwaltung\",\n        -12.421483993530273\n      ],\n      [\n        \"▁raspuns\",\n        -12.421489715576172\n      ],\n      [\n        \"samt\",\n        -12.421491622924805\n      ],\n      [\n        \"▁creștere\",\n        -12.421512603759766\n      ],\n      [\n        \"▁decorate\",\n        -12.421701431274414\n      ],\n      [\n        \"▁Chain\",\n        -12.422021865844727\n      ],\n      [\n        \"ów\",\n        -12.422050476074219\n      ],\n      [\n        \"0-0\",\n        -12.422104835510254\n      ],\n      [\n        \"▁Cran\",\n        -12.422407150268555\n      ],\n      [\n        \"▁streak\",\n        -12.42242431640625\n      ],\n      [\n        \"ор\",\n        -12.422517776489258\n      ],\n      [\n        \"▁căuta\",\n        -12.422754287719727\n      ],\n      [\n        \"wende\",\n        -12.422801971435547\n      ],\n      [\n        \"▁haine\",\n        -12.42280387878418\n      ],\n      [\n        \"▁landscaping\",\n        -12.423009872436523\n      ],\n      [\n        \"▁historian\",\n        -12.423016548156738\n      ],\n      [\n        \"▁grandchildren\",\n        -12.423033714294434\n      ],\n      [\n        \"▁crawl\",\n        -12.423056602478027\n      ],\n      [\n        \"▁Cub\",\n        -12.423239707946777\n      ],\n      [\n        \"▁nécessaires\",\n        -12.423515319824219\n      ],\n      [\n        \"▁swift\",\n        -12.42352294921875\n      ],\n      [\n        \"▁calculation\",\n        -12.423656463623047\n      ],\n      [\n        \"▁acteurs\",\n        -12.423715591430664\n      ],\n      [\n        \"VT\",\n        -12.423752784729004\n      ],\n      [\n        \"▁Hristos\",\n        -12.423778533935547\n      ],\n      [\n        \"▁slices\",\n        -12.423850059509277\n      ],\n      [\n        \"See\",\n        -12.424203872680664\n      ],\n      [\n        \"▁Bran\",\n        -12.424233436584473\n      ],\n      [\n        \"Symbol\",\n        -12.424449920654297\n      ],\n      [\n        \"▁allowance\",\n        -12.424492835998535\n      ],\n      [\n        \"▁Effective\",\n        -12.424537658691406\n      ],\n      [\n        \"▁Wünsche\",\n        -12.424539566040039\n      ],\n      [\n        \"▁shiny\",\n        -12.424569129943848\n      ],\n      [\n        \"▁professionalism\",\n        -12.424715995788574\n      ],\n      [\n        \"/6\",\n        -12.424970626831055\n      ],\n      [\n        \"▁terrasse\",\n        -12.425087928771973\n      ],\n      [\n        \"▁researcher\",\n        -12.425156593322754\n      ],\n      [\n        \"▁fragile\",\n        -12.425203323364258\n      ],\n      [\n        \"▁greeting\",\n        -12.425274848937988\n      ],\n      [\n        \"freien\",\n        -12.4253511428833\n      ],\n      [\n        \"▁valuation\",\n        -12.425372123718262\n      ],\n      [\n        \"▁incur\",\n        -12.425386428833008\n      ],\n      [\n        \"▁Zwischen\",\n        -12.425559997558594\n      ],\n      [\n        \"▁comfy\",\n        -12.425569534301758\n      ],\n      [\n        \"▁méthode\",\n        -12.42569351196289\n      ],\n      [\n        \"▁Pirate\",\n        -12.425816535949707\n      ],\n      [\n        \"▁Moto\",\n        -12.425822257995605\n      ],\n      [\n        \"(6)\",\n        -12.425823211669922\n      ],\n      [\n        \"▁devin\",\n        -12.42582893371582\n      ],\n      [\n        \"▁civic\",\n        -12.425837516784668\n      ],\n      [\n        \"usage\",\n        -12.425889015197754\n      ],\n      [\n        \"▁istorie\",\n        -12.425945281982422\n      ],\n      [\n        \"▁piste\",\n        -12.425955772399902\n      ],\n      [\n        \"▁Rug\",\n        -12.426091194152832\n      ],\n      [\n        \"pä\",\n        -12.426129341125488\n      ],\n      [\n        \"▁matur\",\n        -12.426148414611816\n      ],\n      [\n        \"CAS\",\n        -12.426155090332031\n      ],\n      [\n        \"TIC\",\n        -12.42618465423584\n      ],\n      [\n        \"▁Reduce\",\n        -12.426234245300293\n      ],\n      [\n        \"▁commemorat\",\n        -12.426321983337402\n      ],\n      [\n        \"▁cease\",\n        -12.42653751373291\n      ],\n      [\n        \"unterschiedliche\",\n        -12.42656421661377\n      ],\n      [\n        \"▁cinnamon\",\n        -12.426581382751465\n      ],\n      [\n        \"▁Font\",\n        -12.426583290100098\n      ],\n      [\n        \"▁justify\",\n        -12.426751136779785\n      ],\n      [\n        \"deteriorat\",\n        -12.426797866821289\n      ],\n      [\n        \"▁Schön\",\n        -12.42684555053711\n      ],\n      [\n        \"plain\",\n        -12.426993370056152\n      ],\n      [\n        \"frist\",\n        -12.427002906799316\n      ],\n      [\n        \"▁helmet\",\n        -12.42712116241455\n      ],\n      [\n        \"▁statute\",\n        -12.42721939086914\n      ],\n      [\n        \"accept\",\n        -12.427236557006836\n      ],\n      [\n        \"▁1,5\",\n        -12.42724323272705\n      ],\n      [\n        \"▁recon\",\n        -12.42724323272705\n      ],\n      [\n        \"▁Möbel\",\n        -12.427348136901855\n      ],\n      [\n        \"▁idées\",\n        -12.427367210388184\n      ],\n      [\n        \"automat\",\n        -12.427552223205566\n      ],\n      [\n        \"Team\",\n        -12.42758846282959\n      ],\n      [\n        \"▁performers\",\n        -12.427688598632812\n      ],\n      [\n        \"▁microphone\",\n        -12.427722930908203\n      ],\n      [\n        \"impotriva\",\n        -12.427775382995605\n      ],\n      [\n        \"▁pillows\",\n        -12.42780876159668\n      ],\n      [\n        \"▁accountable\",\n        -12.427812576293945\n      ],\n      [\n        \"▁strings\",\n        -12.42782974243164\n      ],\n      [\n        \"hydrate\",\n        -12.427835464477539\n      ],\n      [\n        \"▁Yan\",\n        -12.427865028381348\n      ],\n      [\n        \"starea\",\n        -12.427918434143066\n      ],\n      [\n        \"▁présenté\",\n        -12.42793083190918\n      ],\n      [\n        \"▁extensively\",\n        -12.428048133850098\n      ],\n      [\n        \"äst\",\n        -12.428114891052246\n      ],\n      [\n        \"▁correlation\",\n        -12.428115844726562\n      ],\n      [\n        \"bespoke\",\n        -12.428119659423828\n      ],\n      [\n        \"▁creste\",\n        -12.428196907043457\n      ],\n      [\n        \"▁Armenia\",\n        -12.428248405456543\n      ],\n      [\n        \"nose\",\n        -12.428426742553711\n      ],\n      [\n        \"▁strengthening\",\n        -12.428604125976562\n      ],\n      [\n        \"▁Horizon\",\n        -12.428627014160156\n      ],\n      [\n        \"▁obesity\",\n        -12.428627967834473\n      ],\n      [\n        \"seasoned\",\n        -12.428686141967773\n      ],\n      [\n        \"▁screenshot\",\n        -12.428736686706543\n      ],\n      [\n        \"girl\",\n        -12.42875862121582\n      ],\n      [\n        \"▁hardest\",\n        -12.428826332092285\n      ],\n      [\n        \"▁weakness\",\n        -12.428855895996094\n      ],\n      [\n        \"effectuer\",\n        -12.429012298583984\n      ],\n      [\n        \"▁Florence\",\n        -12.429034233093262\n      ],\n      [\n        \"▁Europene\",\n        -12.429062843322754\n      ],\n      [\n        \"triggered\",\n        -12.429333686828613\n      ],\n      [\n        \"Apparently\",\n        -12.42939567565918\n      ],\n      [\n        \"▁diagnose\",\n        -12.42943286895752\n      ],\n      [\n        \"rushed\",\n        -12.429494857788086\n      ],\n      [\n        \"▁trotz\",\n        -12.429516792297363\n      ],\n      [\n        \"▁spécial\",\n        -12.429680824279785\n      ],\n      [\n        \"▁lumi\",\n        -12.429783821105957\n      ],\n      [\n        \"7:00\",\n        -12.429877281188965\n      ],\n      [\n        \"▁publicat\",\n        -12.429903984069824\n      ],\n      [\n        \"ос\",\n        -12.430086135864258\n      ],\n      [\n        \"▁hue\",\n        -12.430136680603027\n      ],\n      [\n        \"▁termination\",\n        -12.430139541625977\n      ],\n      [\n        \"▁Nam\",\n        -12.430240631103516\n      ],\n      [\n        \"Well\",\n        -12.430376052856445\n      ],\n      [\n        \"▁Extract\",\n        -12.430441856384277\n      ],\n      [\n        \"atiile\",\n        -12.43062686920166\n      ],\n      [\n        \"▁vivid\",\n        -12.43076229095459\n      ],\n      [\n        \"hrs\",\n        -12.430858612060547\n      ],\n      [\n        \"▁povesti\",\n        -12.430984497070312\n      ],\n      [\n        \"stehenden\",\n        -12.430988311767578\n      ],\n      [\n        \"▁informieren\",\n        -12.431070327758789\n      ],\n      [\n        \"employed\",\n        -12.431133270263672\n      ],\n      [\n        \"▁armor\",\n        -12.431180953979492\n      ],\n      [\n        \"▁Columbus\",\n        -12.431191444396973\n      ],\n      [\n        \"Registr\",\n        -12.431200981140137\n      ],\n      [\n        \"▁Kamera\",\n        -12.431203842163086\n      ],\n      [\n        \"▁ugly\",\n        -12.431203842163086\n      ],\n      [\n        \"outil\",\n        -12.431234359741211\n      ],\n      [\n        \"▁evenly\",\n        -12.43134593963623\n      ],\n      [\n        \"lungul\",\n        -12.431349754333496\n      ],\n      [\n        \"koch\",\n        -12.431439399719238\n      ],\n      [\n        \"▁Dig\",\n        -12.431450843811035\n      ],\n      [\n        \"purely\",\n        -12.431489944458008\n      ],\n      [\n        \"▁Surf\",\n        -12.431560516357422\n      ],\n      [\n        \"rilla\",\n        -12.431628227233887\n      ],\n      [\n        \"▁Watson\",\n        -12.43171215057373\n      ],\n      [\n        \"trug\",\n        -12.431719779968262\n      ],\n      [\n        \"figuring\",\n        -12.431784629821777\n      ],\n      [\n        \"▁competitor\",\n        -12.431807518005371\n      ],\n      [\n        \"▁humid\",\n        -12.431889533996582\n      ],\n      [\n        \"▁Lawyer\",\n        -12.43189811706543\n      ],\n      [\n        \"Added\",\n        -12.43205451965332\n      ],\n      [\n        \"▁salva\",\n        -12.432056427001953\n      ],\n      [\n        \"▁drainage\",\n        -12.4321870803833\n      ],\n      [\n        \"Featuring\",\n        -12.432220458984375\n      ],\n      [\n        \"▁Pel\",\n        -12.43234634399414\n      ],\n      [\n        \"▁acasa\",\n        -12.432611465454102\n      ],\n      [\n        \"▁expectation\",\n        -12.43265438079834\n      ],\n      [\n        \"gibt\",\n        -12.432663917541504\n      ],\n      [\n        \"▁marginal\",\n        -12.432831764221191\n      ],\n      [\n        \"ceni\",\n        -12.433028221130371\n      ],\n      [\n        \"▁européen\",\n        -12.433065414428711\n      ],\n      [\n        \"clav\",\n        -12.433090209960938\n      ],\n      [\n        \"▁Shot\",\n        -12.433167457580566\n      ],\n      [\n        \"commun\",\n        -12.43322467803955\n      ],\n      [\n        \"▁Calendar\",\n        -12.433247566223145\n      ],\n      [\n        \"▁trek\",\n        -12.433348655700684\n      ],\n      [\n        \"rechtliche\",\n        -12.433406829833984\n      ],\n      [\n        \"▁Perry\",\n        -12.43342399597168\n      ],\n      [\n        \"▁surge\",\n        -12.433484077453613\n      ],\n      [\n        \"geschäft\",\n        -12.433504104614258\n      ],\n      [\n        \"paced\",\n        -12.433793067932129\n      ],\n      [\n        \"depend\",\n        -12.433871269226074\n      ],\n      [\n        \"▁Sache\",\n        -12.433947563171387\n      ],\n      [\n        \"▁Example\",\n        -12.433998107910156\n      ],\n      [\n        \"▁lider\",\n        -12.434118270874023\n      ],\n      [\n        \"▁nochmal\",\n        -12.434240341186523\n      ],\n      [\n        \"▁Present\",\n        -12.434243202209473\n      ],\n      [\n        \"KW\",\n        -12.434335708618164\n      ],\n      [\n        \"prompted\",\n        -12.434350967407227\n      ],\n      [\n        \"logique\",\n        -12.434444427490234\n      ],\n      [\n        \"Université\",\n        -12.434466361999512\n      ],\n      [\n        \"lith\",\n        -12.434489250183105\n      ],\n      [\n        \"▁Gefahr\",\n        -12.434579849243164\n      ],\n      [\n        \"▁Acid\",\n        -12.434625625610352\n      ],\n      [\n        \"objets\",\n        -12.434791564941406\n      ],\n      [\n        \"▁societies\",\n        -12.434791564941406\n      ],\n      [\n        \"▁distraction\",\n        -12.434816360473633\n      ],\n      [\n        \"▁puissance\",\n        -12.434934616088867\n      ],\n      [\n        \"▁alleviat\",\n        -12.435026168823242\n      ],\n      [\n        \"▁Capitol\",\n        -12.435050010681152\n      ],\n      [\n        \"▁Heim\",\n        -12.435129165649414\n      ],\n      [\n        \"judicial\",\n        -12.435230255126953\n      ],\n      [\n        \"▁nowadays\",\n        -12.435309410095215\n      ],\n      [\n        \"▁Hammer\",\n        -12.435317039489746\n      ],\n      [\n        \"▁metallic\",\n        -12.435327529907227\n      ],\n      [\n        \"▁distr\",\n        -12.435388565063477\n      ],\n      [\n        \"▁dispos\",\n        -12.435397148132324\n      ],\n      [\n        \"profile\",\n        -12.435408592224121\n      ],\n      [\n        \"▁Nicolas\",\n        -12.435602188110352\n      ],\n      [\n        \"▁presa\",\n        -12.435760498046875\n      ],\n      [\n        \"augh\",\n        -12.43578052520752\n      ],\n      [\n        \"schuss\",\n        -12.435787200927734\n      ],\n      [\n        \"▁Diana\",\n        -12.436062812805176\n      ],\n      [\n        \"4-5\",\n        -12.436097145080566\n      ],\n      [\n        \"▁Chapel\",\n        -12.43612003326416\n      ],\n      [\n        \"▁zahar\",\n        -12.436150550842285\n      ],\n      [\n        \"âmb\",\n        -12.4362154006958\n      ],\n      [\n        \"▁Tarif\",\n        -12.436264991760254\n      ],\n      [\n        \"▁devastating\",\n        -12.436339378356934\n      ],\n      [\n        \"6:00\",\n        -12.4364013671875\n      ],\n      [\n        \"▁100,000\",\n        -12.43645191192627\n      ],\n      [\n        \"NIC\",\n        -12.436580657958984\n      ],\n      [\n        \"▁Lucas\",\n        -12.436612129211426\n      ],\n      [\n        \"▁bequem\",\n        -12.436662673950195\n      ],\n      [\n        \"▁Motion\",\n        -12.436698913574219\n      ],\n      [\n        \"7,000\",\n        -12.436701774597168\n      ],\n      [\n        \"▁malware\",\n        -12.436708450317383\n      ],\n      [\n        \"▁avenue\",\n        -12.436723709106445\n      ],\n      [\n        \"▁manger\",\n        -12.436747550964355\n      ],\n      [\n        \"▁Queensland\",\n        -12.436857223510742\n      ],\n      [\n        \"▁Papier\",\n        -12.436861991882324\n      ],\n      [\n        \"▁Increase\",\n        -12.436880111694336\n      ],\n      [\n        \"▁implies\",\n        -12.436954498291016\n      ],\n      [\n        \"▁äußer\",\n        -12.43697452545166\n      ],\n      [\n        \"▁Meine\",\n        -12.436980247497559\n      ],\n      [\n        \"Reuters\",\n        -12.437155723571777\n      ],\n      [\n        \"▁Belt\",\n        -12.437232971191406\n      ],\n      [\n        \"Educat\",\n        -12.437251091003418\n      ],\n      [\n        \"▁Aktion\",\n        -12.437355041503906\n      ],\n      [\n        \"schläge\",\n        -12.437372207641602\n      ],\n      [\n        \"▁înregistrat\",\n        -12.437426567077637\n      ],\n      [\n        \"▁Ortho\",\n        -12.43756103515625\n      ],\n      [\n        \"▁bulbs\",\n        -12.437761306762695\n      ],\n      [\n        \"kap\",\n        -12.437793731689453\n      ],\n      [\n        \"▁peinture\",\n        -12.437901496887207\n      ],\n      [\n        \"▁Lounge\",\n        -12.437907218933105\n      ],\n      [\n        \"▁Tampa\",\n        -12.438008308410645\n      ],\n      [\n        \"ifiziert\",\n        -12.438100814819336\n      ],\n      [\n        \"kinder\",\n        -12.438172340393066\n      ],\n      [\n        \"▁comparativ\",\n        -12.438281059265137\n      ],\n      [\n        \"häuser\",\n        -12.438323974609375\n      ],\n      [\n        \"incarn\",\n        -12.438363075256348\n      ],\n      [\n        \"▁amazon\",\n        -12.438464164733887\n      ],\n      [\n        \"▁Southeast\",\n        -12.438505172729492\n      ],\n      [\n        \"▁economical\",\n        -12.438667297363281\n      ],\n      [\n        \"▁broth\",\n        -12.438697814941406\n      ],\n      [\n        \"▁Secure\",\n        -12.438750267028809\n      ],\n      [\n        \"damals\",\n        -12.438875198364258\n      ],\n      [\n        \"▁Elementary\",\n        -12.438921928405762\n      ],\n      [\n        \"▁Wildlife\",\n        -12.438995361328125\n      ],\n      [\n        \"▁Jewel\",\n        -12.439001083374023\n      ],\n      [\n        \"▁protocols\",\n        -12.439297676086426\n      ],\n      [\n        \"▁zbor\",\n        -12.4393892288208\n      ],\n      [\n        \"▁enthusiasts\",\n        -12.439398765563965\n      ],\n      [\n        \"▁Mirror\",\n        -12.439444541931152\n      ],\n      [\n        \"▁soak\",\n        -12.439537048339844\n      ],\n      [\n        \"▁Sad\",\n        -12.439574241638184\n      ],\n      [\n        \"▁dishwasher\",\n        -12.439957618713379\n      ],\n      [\n        \"▁vollständig\",\n        -12.440186500549316\n      ],\n      [\n        \"▁Vermont\",\n        -12.440407752990723\n      ],\n      [\n        \"▁caut\",\n        -12.440449714660645\n      ],\n      [\n        \"▁fournisseur\",\n        -12.440475463867188\n      ],\n      [\n        \"▁Concrete\",\n        -12.44047737121582\n      ],\n      [\n        \"▁Instant\",\n        -12.440595626831055\n      ],\n      [\n        \"▁reveni\",\n        -12.440597534179688\n      ],\n      [\n        \"▁Surface\",\n        -12.44059944152832\n      ],\n      [\n        \"zumindest\",\n        -12.440713882446289\n      ],\n      [\n        \"▁feast\",\n        -12.440725326538086\n      ],\n      [\n        \"▁stretching\",\n        -12.440803527832031\n      ],\n      [\n        \"ERA\",\n        -12.440997123718262\n      ],\n      [\n        \"▁Scholarship\",\n        -12.441020965576172\n      ],\n      [\n        \"▁vineyard\",\n        -12.4410400390625\n      ],\n      [\n        \"▁régulièrement\",\n        -12.441083908081055\n      ],\n      [\n        \"▁patches\",\n        -12.441093444824219\n      ],\n      [\n        \"▁Gamb\",\n        -12.44113540649414\n      ],\n      [\n        \"▁Vereins\",\n        -12.441152572631836\n      ],\n      [\n        \"ège\",\n        -12.441372871398926\n      ],\n      [\n        \"▁constitutional\",\n        -12.441411018371582\n      ],\n      [\n        \"erreur\",\n        -12.441413879394531\n      ],\n      [\n        \"▁Colombia\",\n        -12.441514015197754\n      ],\n      [\n        \"UF\",\n        -12.441618919372559\n      ],\n      [\n        \"aider\",\n        -12.441665649414062\n      ],\n      [\n        \"cision\",\n        -12.44180965423584\n      ],\n      [\n        \"▁publishers\",\n        -12.441913604736328\n      ],\n      [\n        \"▁prelua\",\n        -12.441967964172363\n      ],\n      [\n        \"▁keiner\",\n        -12.441990852355957\n      ],\n      [\n        \"▁amid\",\n        -12.442020416259766\n      ],\n      [\n        \"▁quantitative\",\n        -12.442031860351562\n      ],\n      [\n        \"▁decay\",\n        -12.442058563232422\n      ],\n      [\n        \"▁distinguished\",\n        -12.4420747756958\n      ],\n      [\n        \"▁Gründe\",\n        -12.442209243774414\n      ],\n      [\n        \"▁statului\",\n        -12.442362785339355\n      ],\n      [\n        \"CAT\",\n        -12.442436218261719\n      ],\n      [\n        \"allow\",\n        -12.442481994628906\n      ],\n      [\n        \"▁mathematical\",\n        -12.442550659179688\n      ],\n      [\n        \"▁tragedy\",\n        -12.44255542755127\n      ],\n      [\n        \"▁heels\",\n        -12.442609786987305\n      ],\n      [\n        \"opia\",\n        -12.44265365600586\n      ],\n      [\n        \"▁merger\",\n        -12.4428071975708\n      ],\n      [\n        \"dispositif\",\n        -12.442813873291016\n      ],\n      [\n        \"▁pneu\",\n        -12.44283390045166\n      ],\n      [\n        \"elte\",\n        -12.443058013916016\n      ],\n      [\n        \"▁Introduction\",\n        -12.443070411682129\n      ],\n      [\n        \"▁biscuit\",\n        -12.443134307861328\n      ],\n      [\n        \"▁leftover\",\n        -12.443275451660156\n      ],\n      [\n        \"▁tester\",\n        -12.443314552307129\n      ],\n      [\n        \"▁Terre\",\n        -12.443380355834961\n      ],\n      [\n        \"▁Oui\",\n        -12.44338321685791\n      ],\n      [\n        \"▁rar\",\n        -12.443520545959473\n      ],\n      [\n        \"▁beverages\",\n        -12.443666458129883\n      ],\n      [\n        \"▁parenting\",\n        -12.443892478942871\n      ],\n      [\n        \"1-0\",\n        -12.444053649902344\n      ],\n      [\n        \"▁Barry\",\n        -12.44417667388916\n      ],\n      [\n        \"▁Lynn\",\n        -12.444209098815918\n      ],\n      [\n        \"▁Tyler\",\n        -12.444262504577637\n      ],\n      [\n        \"▁fotbal\",\n        -12.44437026977539\n      ],\n      [\n        \"dron\",\n        -12.444475173950195\n      ],\n      [\n        \"▁donor\",\n        -12.44455623626709\n      ],\n      [\n        \"▁drape\",\n        -12.444558143615723\n      ],\n      [\n        \"▁positioning\",\n        -12.444963455200195\n      ],\n      [\n        \"▁Tang\",\n        -12.445006370544434\n      ],\n      [\n        \"▁overwhelmed\",\n        -12.445161819458008\n      ],\n      [\n        \"▁perte\",\n        -12.445192337036133\n      ],\n      [\n        \"▁blender\",\n        -12.445302963256836\n      ],\n      [\n        \"TG\",\n        -12.445467948913574\n      ],\n      [\n        \"GHz\",\n        -12.445490837097168\n      ],\n      [\n        \"▁administrat\",\n        -12.445719718933105\n      ],\n      [\n        \"▁glaube\",\n        -12.445771217346191\n      ],\n      [\n        \"Char\",\n        -12.445947647094727\n      ],\n      [\n        \"impression\",\n        -12.44627571105957\n      ],\n      [\n        \"proving\",\n        -12.446297645568848\n      ],\n      [\n        \"▁Inner\",\n        -12.446434020996094\n      ],\n      [\n        \"root\",\n        -12.446501731872559\n      ],\n      [\n        \"▁Gedanken\",\n        -12.446508407592773\n      ],\n      [\n        \"▁underway\",\n        -12.446596145629883\n      ],\n      [\n        \"coat\",\n        -12.44660758972168\n      ],\n      [\n        \"▁thereof\",\n        -12.446663856506348\n      ],\n      [\n        \"rius\",\n        -12.446700096130371\n      ],\n      [\n        \"▁intermediate\",\n        -12.446751594543457\n      ],\n      [\n        \"gmail\",\n        -12.446869850158691\n      ],\n      [\n        \"114\",\n        -12.446893692016602\n      ],\n      [\n        \"▁interfere\",\n        -12.446908950805664\n      ],\n      [\n        \"▁Found\",\n        -12.446930885314941\n      ],\n      [\n        \"LF\",\n        -12.447071075439453\n      ],\n      [\n        \"▁equality\",\n        -12.447099685668945\n      ],\n      [\n        \"▁concurrent\",\n        -12.44710636138916\n      ],\n      [\n        \"akh\",\n        -12.447107315063477\n      ],\n      [\n        \"▁touching\",\n        -12.44715690612793\n      ],\n      [\n        \"▁curiosity\",\n        -12.447235107421875\n      ],\n      [\n        \"▁rendering\",\n        -12.447263717651367\n      ],\n      [\n        \"▁1964\",\n        -12.447442054748535\n      ],\n      [\n        \"sorge\",\n        -12.447468757629395\n      ],\n      [\n        \"ARC\",\n        -12.447505950927734\n      ],\n      [\n        \"▁Desktop\",\n        -12.44752311706543\n      ],\n      [\n        \"▁Tak\",\n        -12.44760799407959\n      ],\n      [\n        \"filtration\",\n        -12.447651863098145\n      ],\n      [\n        \"▁gates\",\n        -12.4478759765625\n      ],\n      [\n        \"Sehr\",\n        -12.44791316986084\n      ],\n      [\n        \"▁spatiu\",\n        -12.44798755645752\n      ],\n      [\n        \"▁Leg\",\n        -12.448103904724121\n      ],\n      [\n        \"▁aviation\",\n        -12.448277473449707\n      ],\n      [\n        \"wandel\",\n        -12.44827938079834\n      ],\n      [\n        \"▁Shar\",\n        -12.448323249816895\n      ],\n      [\n        \"▁Volks\",\n        -12.448409080505371\n      ],\n      [\n        \"maz\",\n        -12.448698997497559\n      ],\n      [\n        \"governmental\",\n        -12.44874095916748\n      ],\n      [\n        \"euros\",\n        -12.448819160461426\n      ],\n      [\n        \"avantage\",\n        -12.448823928833008\n      ],\n      [\n        \"sitzt\",\n        -12.448856353759766\n      ],\n      [\n        \"IER\",\n        -12.448920249938965\n      ],\n      [\n        \"▁Theory\",\n        -12.44894027709961\n      ],\n      [\n        \"Cependant\",\n        -12.44907283782959\n      ],\n      [\n        \"▁Teachers\",\n        -12.449080467224121\n      ],\n      [\n        \"anspruch\",\n        -12.449095726013184\n      ],\n      [\n        \"▁afecta\",\n        -12.449139595031738\n      ],\n      [\n        \"enko\",\n        -12.449193000793457\n      ],\n      [\n        \"▁breeding\",\n        -12.449198722839355\n      ],\n      [\n        \"▁Peak\",\n        -12.449457168579102\n      ],\n      [\n        \"▁găsit\",\n        -12.449516296386719\n      ],\n      [\n        \"▁măsuri\",\n        -12.4495267868042\n      ],\n      [\n        \"edia\",\n        -12.449625968933105\n      ],\n      [\n        \"biz\",\n        -12.449640274047852\n      ],\n      [\n        \"zum\",\n        -12.449776649475098\n      ],\n      [\n        \"▁schwierig\",\n        -12.449847221374512\n      ],\n      [\n        \"Sense\",\n        -12.450050354003906\n      ],\n      [\n        \"▁Jump\",\n        -12.450081825256348\n      ],\n      [\n        \"▁cocktails\",\n        -12.450108528137207\n      ],\n      [\n        \"abhängig\",\n        -12.45012378692627\n      ],\n      [\n        \"realised\",\n        -12.450140953063965\n      ],\n      [\n        \"▁programul\",\n        -12.450214385986328\n      ],\n      [\n        \"▁prévu\",\n        -12.450238227844238\n      ],\n      [\n        \"▁twitter\",\n        -12.450372695922852\n      ],\n      [\n        \"Union\",\n        -12.450400352478027\n      ],\n      [\n        \"▁Marathon\",\n        -12.45040225982666\n      ],\n      [\n        \"▁Christianity\",\n        -12.450432777404785\n      ],\n      [\n        \"▁Alberta\",\n        -12.450811386108398\n      ],\n      [\n        \"einheit\",\n        -12.45097827911377\n      ],\n      [\n        \"▁wellbeing\",\n        -12.450982093811035\n      ],\n      [\n        \"phen\",\n        -12.451166152954102\n      ],\n      [\n        \"▁Charleston\",\n        -12.451180458068848\n      ],\n      [\n        \"▁uncover\",\n        -12.451323509216309\n      ],\n      [\n        \"▁humaine\",\n        -12.451464653015137\n      ],\n      [\n        \"▁bleeding\",\n        -12.451531410217285\n      ],\n      [\n        \"▁manipul\",\n        -12.451532363891602\n      ],\n      [\n        \"▁humidity\",\n        -12.451570510864258\n      ],\n      [\n        \"▁Puis\",\n        -12.451748847961426\n      ],\n      [\n        \"▁aktuell\",\n        -12.451922416687012\n      ],\n      [\n        \"▁Nissan\",\n        -12.451943397521973\n      ],\n      [\n        \"▁Eisen\",\n        -12.45202922821045\n      ],\n      [\n        \"treiben\",\n        -12.452059745788574\n      ],\n      [\n        \"cios\",\n        -12.452073097229004\n      ],\n      [\n        \"ikh\",\n        -12.452381134033203\n      ],\n      [\n        \"acquiring\",\n        -12.452466011047363\n      ],\n      [\n        \"▁Wallpaper\",\n        -12.452488899230957\n      ],\n      [\n        \"▁rond\",\n        -12.452558517456055\n      ],\n      [\n        \"▁Doug\",\n        -12.45267391204834\n      ],\n      [\n        \"sourcing\",\n        -12.452696800231934\n      ],\n      [\n        \"▁1900\",\n        -12.452825546264648\n      ],\n      [\n        \"▁buni\",\n        -12.452913284301758\n      ],\n      [\n        \"vest\",\n        -12.452916145324707\n      ],\n      [\n        \"▁Bangladesh\",\n        -12.452990531921387\n      ],\n      [\n        \"Home\",\n        -12.453160285949707\n      ],\n      [\n        \"▁wrinkle\",\n        -12.453252792358398\n      ],\n      [\n        \"rado\",\n        -12.453290939331055\n      ],\n      [\n        \"▁Pain\",\n        -12.45334243774414\n      ],\n      [\n        \"▁herzlich\",\n        -12.453354835510254\n      ],\n      [\n        \"MRI\",\n        -12.453426361083984\n      ],\n      [\n        \"UG\",\n        -12.453631401062012\n      ],\n      [\n        \"▁Desk\",\n        -12.453679084777832\n      ],\n      [\n        \"▁remarc\",\n        -12.453718185424805\n      ],\n      [\n        \"▁sodium\",\n        -12.453857421875\n      ],\n      [\n        \"▁Jede\",\n        -12.453892707824707\n      ],\n      [\n        \"▁réelle\",\n        -12.453959465026855\n      ],\n      [\n        \"▁Polar\",\n        -12.454068183898926\n      ],\n      [\n        \"▁activists\",\n        -12.454273223876953\n      ],\n      [\n        \"lasted\",\n        -12.454300880432129\n      ],\n      [\n        \"Some\",\n        -12.45432186126709\n      ],\n      [\n        \"ISE\",\n        -12.454338073730469\n      ],\n      [\n        \"▁peine\",\n        -12.454671859741211\n      ],\n      [\n        \"▁crude\",\n        -12.454852104187012\n      ],\n      [\n        \"Maur\",\n        -12.454916954040527\n      ],\n      [\n        \"▁forcing\",\n        -12.454933166503906\n      ],\n      [\n        \"▁politici\",\n        -12.454970359802246\n      ],\n      [\n        \"▁condiții\",\n        -12.454988479614258\n      ],\n      [\n        \"▁Saving\",\n        -12.454999923706055\n      ],\n      [\n        \"▁descoperi\",\n        -12.455020904541016\n      ],\n      [\n        \"avenir\",\n        -12.455055236816406\n      ],\n      [\n        \"Akt\",\n        -12.455069541931152\n      ],\n      [\n        \"▁vocabulary\",\n        -12.45509147644043\n      ],\n      [\n        \"▁pont\",\n        -12.455168724060059\n      ],\n      [\n        \"West\",\n        -12.45518970489502\n      ],\n      [\n        \"lenk\",\n        -12.455278396606445\n      ],\n      [\n        \"▁Verbraucher\",\n        -12.455367088317871\n      ],\n      [\n        \"affects\",\n        -12.455448150634766\n      ],\n      [\n        \"▁Flower\",\n        -12.455543518066406\n      ],\n      [\n        \"▁Nebraska\",\n        -12.455617904663086\n      ],\n      [\n        \"▁assortment\",\n        -12.455618858337402\n      ],\n      [\n        \"hock\",\n        -12.455619812011719\n      ],\n      [\n        \"▁discounted\",\n        -12.455803871154785\n      ],\n      [\n        \"▁Sensor\",\n        -12.455840110778809\n      ],\n      [\n        \"Lie\",\n        -12.45588207244873\n      ],\n      [\n        \"▁Volkswagen\",\n        -12.455887794494629\n      ],\n      [\n        \"isseur\",\n        -12.455888748168945\n      ],\n      [\n        \"indice\",\n        -12.455936431884766\n      ],\n      [\n        \"▁scanner\",\n        -12.455986022949219\n      ],\n      [\n        \"fashioned\",\n        -12.456040382385254\n      ],\n      [\n        \"▁postal\",\n        -12.456141471862793\n      ],\n      [\n        \"ouvrir\",\n        -12.45615291595459\n      ],\n      [\n        \"▁seminars\",\n        -12.45622444152832\n      ],\n      [\n        \"ioase\",\n        -12.456232070922852\n      ],\n      [\n        \"▁Stanley\",\n        -12.456260681152344\n      ],\n      [\n        \"Various\",\n        -12.456335067749023\n      ],\n      [\n        \"essentiel\",\n        -12.45650577545166\n      ],\n      [\n        \"▁administered\",\n        -12.456693649291992\n      ],\n      [\n        \"▁concession\",\n        -12.456748008728027\n      ],\n      [\n        \"▁mould\",\n        -12.456789016723633\n      ],\n      [\n        \"▁strongest\",\n        -12.456826210021973\n      ],\n      [\n        \"Erlebnis\",\n        -12.456933975219727\n      ],\n      [\n        \"▁ehemalige\",\n        -12.456933975219727\n      ],\n      [\n        \"▁Tale\",\n        -12.457234382629395\n      ],\n      [\n        \"▁Buyer\",\n        -12.457353591918945\n      ],\n      [\n        \"ück\",\n        -12.457578659057617\n      ],\n      [\n        \"▁Kommentar\",\n        -12.457720756530762\n      ],\n      [\n        \"▁Schrift\",\n        -12.457756996154785\n      ],\n      [\n        \"Design\",\n        -12.457792282104492\n      ],\n      [\n        \"▁stirring\",\n        -12.457937240600586\n      ],\n      [\n        \"▁towels\",\n        -12.457987785339355\n      ],\n      [\n        \"▁$30\",\n        -12.458101272583008\n      ],\n      [\n        \"sprache\",\n        -12.458279609680176\n      ],\n      [\n        \"▁Regierung\",\n        -12.458346366882324\n      ],\n      [\n        \"▁nachhaltig\",\n        -12.458406448364258\n      ],\n      [\n        \"▁électronique\",\n        -12.458515167236328\n      ],\n      [\n        \"▁Andrei\",\n        -12.458587646484375\n      ],\n      [\n        \"because\",\n        -12.458647727966309\n      ],\n      [\n        \"informatique\",\n        -12.458650588989258\n      ],\n      [\n        \"IGHT\",\n        -12.4586820602417\n      ],\n      [\n        \"stepping\",\n        -12.4586820602417\n      ],\n      [\n        \"▁gris\",\n        -12.458748817443848\n      ],\n      [\n        \"vious\",\n        -12.458773612976074\n      ],\n      [\n        \"▁upside\",\n        -12.4591064453125\n      ],\n      [\n        \"▁Examples\",\n        -12.459108352661133\n      ],\n      [\n        \"IU\",\n        -12.459110260009766\n      ],\n      [\n        \"▁princess\",\n        -12.459111213684082\n      ],\n      [\n        \"spielen\",\n        -12.45921516418457\n      ],\n      [\n        \"legung\",\n        -12.45950984954834\n      ],\n      [\n        \"▁reflecting\",\n        -12.4597806930542\n      ],\n      [\n        \"▁Processing\",\n        -12.459939002990723\n      ],\n      [\n        \"▁jungle\",\n        -12.460033416748047\n      ],\n      [\n        \"▁insects\",\n        -12.46006965637207\n      ],\n      [\n        \"▁Sibiu\",\n        -12.460220336914062\n      ],\n      [\n        \"160\",\n        -12.460259437561035\n      ],\n      [\n        \"▁interessante\",\n        -12.460267066955566\n      ],\n      [\n        \"▁multimedia\",\n        -12.460455894470215\n      ],\n      [\n        \"essel\",\n        -12.46049690246582\n      ],\n      [\n        \"/18\",\n        -12.460647583007812\n      ],\n      [\n        \"nière\",\n        -12.460683822631836\n      ],\n      [\n        \"ministru\",\n        -12.46072006225586\n      ],\n      [\n        \"▁implants\",\n        -12.460826873779297\n      ],\n      [\n        \"▁Settings\",\n        -12.461360931396484\n      ],\n      [\n        \"▁invaluable\",\n        -12.461432456970215\n      ],\n      [\n        \"stains\",\n        -12.461448669433594\n      ],\n      [\n        \"onym\",\n        -12.461518287658691\n      ],\n      [\n        \"▁searched\",\n        -12.461570739746094\n      ],\n      [\n        \"▁disappointment\",\n        -12.461628913879395\n      ],\n      [\n        \"▁Iranian\",\n        -12.461630821228027\n      ],\n      [\n        \"▁questionnaire\",\n        -12.461630821228027\n      ],\n      [\n        \"Founder\",\n        -12.46178913116455\n      ],\n      [\n        \"▁Bericht\",\n        -12.461792945861816\n      ],\n      [\n        \"▁youngest\",\n        -12.461896896362305\n      ],\n      [\n        \"▁Automatic\",\n        -12.461956024169922\n      ],\n      [\n        \"▁plecat\",\n        -12.46203327178955\n      ],\n      [\n        \"geber\",\n        -12.462119102478027\n      ],\n      [\n        \"soweit\",\n        -12.462124824523926\n      ],\n      [\n        \"▁unfold\",\n        -12.462236404418945\n      ],\n      [\n        \"▁befinden\",\n        -12.462274551391602\n      ],\n      [\n        \"▁susţin\",\n        -12.462637901306152\n      ],\n      [\n        \"▁Mack\",\n        -12.462675094604492\n      ],\n      [\n        \"▁dificil\",\n        -12.462757110595703\n      ],\n      [\n        \"enseigne\",\n        -12.463038444519043\n      ],\n      [\n        \"▁vitamine\",\n        -12.463047981262207\n      ],\n      [\n        \"▁Memory\",\n        -12.463092803955078\n      ],\n      [\n        \"ripping\",\n        -12.463129043579102\n      ],\n      [\n        \"drin\",\n        -12.463146209716797\n      ],\n      [\n        \"3.2\",\n        -12.463278770446777\n      ],\n      [\n        \"▁verstehen\",\n        -12.463287353515625\n      ],\n      [\n        \"▁scaun\",\n        -12.46341323852539\n      ],\n      [\n        \"▁procédure\",\n        -12.46380615234375\n      ],\n      [\n        \"▁molecules\",\n        -12.463911056518555\n      ],\n      [\n        \"▁Anzahl\",\n        -12.46391487121582\n      ],\n      [\n        \"▁yogurt\",\n        -12.464071273803711\n      ],\n      [\n        \"▁Dominic\",\n        -12.464113235473633\n      ],\n      [\n        \"▁shocked\",\n        -12.464156150817871\n      ],\n      [\n        \"▁zilei\",\n        -12.464269638061523\n      ],\n      [\n        \"▁Heiz\",\n        -12.464412689208984\n      ],\n      [\n        \"▁Educational\",\n        -12.464571952819824\n      ],\n      [\n        \"BN\",\n        -12.464577674865723\n      ],\n      [\n        \"analyzing\",\n        -12.464601516723633\n      ],\n      [\n        \"hair\",\n        -12.464676856994629\n      ],\n      [\n        \"spiegel\",\n        -12.464871406555176\n      ],\n      [\n        \"▁illusion\",\n        -12.464889526367188\n      ],\n      [\n        \"BG\",\n        -12.46505355834961\n      ],\n      [\n        \"deductible\",\n        -12.46513557434082\n      ],\n      [\n        \"▁adj\",\n        -12.4651460647583\n      ],\n      [\n        \"▁accessory\",\n        -12.465166091918945\n      ],\n      [\n        \"▁Draw\",\n        -12.465167999267578\n      ],\n      [\n        \"▁airlines\",\n        -12.46518611907959\n      ],\n      [\n        \"▁satisfai\",\n        -12.46536636352539\n      ],\n      [\n        \"▁architects\",\n        -12.465447425842285\n      ],\n      [\n        \"istische\",\n        -12.465508460998535\n      ],\n      [\n        \"▁Healthy\",\n        -12.465539932250977\n      ],\n      [\n        \"großer\",\n        -12.465669631958008\n      ],\n      [\n        \"▁comunicare\",\n        -12.465764999389648\n      ],\n      [\n        \"▁Meyer\",\n        -12.46577262878418\n      ],\n      [\n        \"▁reproduction\",\n        -12.465882301330566\n      ],\n      [\n        \"▁Manufacturing\",\n        -12.465929985046387\n      ],\n      [\n        \"immobilier\",\n        -12.465930938720703\n      ],\n      [\n        \"▁Unterschied\",\n        -12.465958595275879\n      ],\n      [\n        \"▁cumpara\",\n        -12.466029167175293\n      ],\n      [\n        \"▁duplicate\",\n        -12.466094017028809\n      ],\n      [\n        \"▁(16\",\n        -12.466096878051758\n      ],\n      [\n        \"▁detector\",\n        -12.466279983520508\n      ],\n      [\n        \"▁observat\",\n        -12.466387748718262\n      ],\n      [\n        \"▁1965\",\n        -12.466682434082031\n      ],\n      [\n        \"▁Fantasy\",\n        -12.466728210449219\n      ],\n      [\n        \"▁brauchen\",\n        -12.466728210449219\n      ],\n      [\n        \"▁Participants\",\n        -12.466780662536621\n      ],\n      [\n        \"▁décide\",\n        -12.466817855834961\n      ],\n      [\n        \"▁kicke\",\n        -12.466819763183594\n      ],\n      [\n        \"▁SSL\",\n        -12.466885566711426\n      ],\n      [\n        \"360\",\n        -12.466989517211914\n      ],\n      [\n        \"Anim\",\n        -12.467019081115723\n      ],\n      [\n        \"▁cupcake\",\n        -12.467031478881836\n      ],\n      [\n        \"▁Lamb\",\n        -12.467107772827148\n      ],\n      [\n        \"▁Sä\",\n        -12.467155456542969\n      ],\n      [\n        \"ntă\",\n        -12.46738052368164\n      ],\n      [\n        \"▁Pig\",\n        -12.467421531677246\n      ],\n      [\n        \"1,000\",\n        -12.467677116394043\n      ],\n      [\n        \"nhof\",\n        -12.467782020568848\n      ],\n      [\n        \"▁discret\",\n        -12.467947959899902\n      ],\n      [\n        \"▁deloc\",\n        -12.467991828918457\n      ],\n      [\n        \"▁Bücher\",\n        -12.467999458312988\n      ],\n      [\n        \"chor\",\n        -12.468042373657227\n      ],\n      [\n        \"course\",\n        -12.468070030212402\n      ],\n      [\n        \"▁cough\",\n        -12.468076705932617\n      ],\n      [\n        \"▁erstellt\",\n        -12.468087196350098\n      ],\n      [\n        \"▁Than\",\n        -12.468097686767578\n      ],\n      [\n        \"stätte\",\n        -12.46812915802002\n      ],\n      [\n        \"▁exceptionally\",\n        -12.468162536621094\n      ],\n      [\n        \"▁semnal\",\n        -12.468186378479004\n      ],\n      [\n        \"▁Interessen\",\n        -12.468329429626465\n      ],\n      [\n        \"ле\",\n        -12.468356132507324\n      ],\n      [\n        \"xx\",\n        -12.468402862548828\n      ],\n      [\n        \"▁Veterans\",\n        -12.468422889709473\n      ],\n      [\n        \"▁Kreuz\",\n        -12.468683242797852\n      ],\n      [\n        \"▁Nachricht\",\n        -12.468701362609863\n      ],\n      [\n        \"treated\",\n        -12.468894004821777\n      ],\n      [\n        \"▁tide\",\n        -12.469230651855469\n      ],\n      [\n        \"▁nonetheless\",\n        -12.469390869140625\n      ],\n      [\n        \"▁Subject\",\n        -12.469439506530762\n      ],\n      [\n        \"▁Stau\",\n        -12.469440460205078\n      ],\n      [\n        \"▁stickers\",\n        -12.469463348388672\n      ],\n      [\n        \"Alp\",\n        -12.46950912475586\n      ],\n      [\n        \"▁flagship\",\n        -12.469541549682617\n      ],\n      [\n        \"▁trimite\",\n        -12.469619750976562\n      ],\n      [\n        \"▁polyester\",\n        -12.469664573669434\n      ],\n      [\n        \"▁locui\",\n        -12.469671249389648\n      ],\n      [\n        \"▁chili\",\n        -12.46968936920166\n      ],\n      [\n        \"▁Browser\",\n        -12.469808578491211\n      ],\n      [\n        \"sieg\",\n        -12.469809532165527\n      ],\n      [\n        \"▁Arabic\",\n        -12.469876289367676\n      ],\n      [\n        \"blich\",\n        -12.47001838684082\n      ],\n      [\n        \"▁wunderbar\",\n        -12.470090866088867\n      ],\n      [\n        \"▁furnishings\",\n        -12.470210075378418\n      ],\n      [\n        \"rtie\",\n        -12.470243453979492\n      ],\n      [\n        \"8.5\",\n        -12.470742225646973\n      ],\n      [\n        \"▁Sponsor\",\n        -12.471016883850098\n      ],\n      [\n        \"▁glitter\",\n        -12.471280097961426\n      ],\n      [\n        \"▁piaț\",\n        -12.471402168273926\n      ],\n      [\n        \"▁interviewed\",\n        -12.471519470214844\n      ],\n      [\n        \"▁Statistics\",\n        -12.471529006958008\n      ],\n      [\n        \"▁cerc\",\n        -12.47154712677002\n      ],\n      [\n        \"augmentation\",\n        -12.47155475616455\n      ],\n      [\n        \"▁Navi\",\n        -12.471558570861816\n      ],\n      [\n        \"▁Begriff\",\n        -12.47156047821045\n      ],\n      [\n        \"▁știu\",\n        -12.471596717834473\n      ],\n      [\n        \"▁unabhängig\",\n        -12.471778869628906\n      ],\n      [\n        \"▁könnten\",\n        -12.471978187561035\n      ],\n      [\n        \"▁travaille\",\n        -12.472000122070312\n      ],\n      [\n        \"▁companie\",\n        -12.472027778625488\n      ],\n      [\n        \"▁Scientific\",\n        -12.472061157226562\n      ],\n      [\n        \"▁Outlook\",\n        -12.472091674804688\n      ],\n      [\n        \"▁fairy\",\n        -12.472158432006836\n      ],\n      [\n        \"zam\",\n        -12.472282409667969\n      ],\n      [\n        \"bak\",\n        -12.472448348999023\n      ],\n      [\n        \"▁Traffic\",\n        -12.472596168518066\n      ],\n      [\n        \"gerät\",\n        -12.472671508789062\n      ],\n      [\n        \"▁freezing\",\n        -12.472701072692871\n      ],\n      [\n        \"▁broadband\",\n        -12.4727201461792\n      ],\n      [\n        \"110\",\n        -12.47279167175293\n      ],\n      [\n        \"▁revenu\",\n        -12.472887992858887\n      ],\n      [\n        \"listed\",\n        -12.472900390625\n      ],\n      [\n        \"▁Rico\",\n        -12.472941398620605\n      ],\n      [\n        \"Laure\",\n        -12.472990036010742\n      ],\n      [\n        \"ATA\",\n        -12.473112106323242\n      ],\n      [\n        \"▁participer\",\n        -12.47313117980957\n      ],\n      [\n        \"▁sponsorship\",\n        -12.473235130310059\n      ],\n      [\n        \"▁distress\",\n        -12.473286628723145\n      ],\n      [\n        \"▁Brisbane\",\n        -12.47339916229248\n      ],\n      [\n        \"schönen\",\n        -12.473437309265137\n      ],\n      [\n        \"▁fizice\",\n        -12.473465919494629\n      ],\n      [\n        \"▁Political\",\n        -12.47362232208252\n      ],\n      [\n        \"uhr\",\n        -12.473657608032227\n      ],\n      [\n        \"▁procedura\",\n        -12.473713874816895\n      ],\n      [\n        \"▁hervor\",\n        -12.473770141601562\n      ],\n      [\n        \"melted\",\n        -12.473776817321777\n      ],\n      [\n        \"▁Emp\",\n        -12.47384262084961\n      ],\n      [\n        \"▁Ernährung\",\n        -12.4739351272583\n      ],\n      [\n        \"▁Pendant\",\n        -12.473944664001465\n      ],\n      [\n        \"▁recipients\",\n        -12.474047660827637\n      ],\n      [\n        \"Claude\",\n        -12.474133491516113\n      ],\n      [\n        \"▁regimen\",\n        -12.47415828704834\n      ],\n      [\n        \"expo\",\n        -12.474346160888672\n      ],\n      [\n        \"adevăr\",\n        -12.47437858581543\n      ],\n      [\n        \"▁critically\",\n        -12.474440574645996\n      ],\n      [\n        \"▁grabbe\",\n        -12.474468231201172\n      ],\n      [\n        \"▁Kann\",\n        -12.474474906921387\n      ],\n      [\n        \"▁directeur\",\n        -12.474613189697266\n      ],\n      [\n        \"gator\",\n        -12.474908828735352\n      ],\n      [\n        \"problem\",\n        -12.474910736083984\n      ],\n      [\n        \"scribe\",\n        -12.474913597106934\n      ],\n      [\n        \"▁exig\",\n        -12.474920272827148\n      ],\n      [\n        \"Tri\",\n        -12.474969863891602\n      ],\n      [\n        \"▁aqua\",\n        -12.475631713867188\n      ],\n      [\n        \"appréci\",\n        -12.47569465637207\n      ],\n      [\n        \"▁viaţă\",\n        -12.47571849822998\n      ],\n      [\n        \"▁dominate\",\n        -12.475865364074707\n      ],\n      [\n        \"disc\",\n        -12.475889205932617\n      ],\n      [\n        \"▁conseiller\",\n        -12.47603988647461\n      ],\n      [\n        \"▁shuttle\",\n        -12.476180076599121\n      ],\n      [\n        \"▁Status\",\n        -12.47623062133789\n      ],\n      [\n        \"▁ausreichend\",\n        -12.476371765136719\n      ],\n      [\n        \"▁spät\",\n        -12.476411819458008\n      ],\n      [\n        \"▁remainder\",\n        -12.476417541503906\n      ],\n      [\n        \"wett\",\n        -12.476430892944336\n      ],\n      [\n        \"schlossen\",\n        -12.476491928100586\n      ],\n      [\n        \"PAC\",\n        -12.476505279541016\n      ],\n      [\n        \"▁suprafata\",\n        -12.476617813110352\n      ],\n      [\n        \"5.000\",\n        -12.476673126220703\n      ],\n      [\n        \"supplying\",\n        -12.47673225402832\n      ],\n      [\n        \"▁uniquely\",\n        -12.476905822753906\n      ],\n      [\n        \"▁retard\",\n        -12.476929664611816\n      ],\n      [\n        \"▁Bang\",\n        -12.477006912231445\n      ],\n      [\n        \"ieuse\",\n        -12.477087020874023\n      ],\n      [\n        \"▁Ted\",\n        -12.477248191833496\n      ],\n      [\n        \"▁ermöglichen\",\n        -12.47732925415039\n      ],\n      [\n        \"▁builders\",\n        -12.477380752563477\n      ],\n      [\n        \"▁proximité\",\n        -12.477423667907715\n      ],\n      [\n        \"▁unforgettable\",\n        -12.477423667907715\n      ],\n      [\n        \"256\",\n        -12.477446556091309\n      ],\n      [\n        \"fähigkeit\",\n        -12.477550506591797\n      ],\n      [\n        \"▁procurement\",\n        -12.477561950683594\n      ],\n      [\n        \"▁Gewicht\",\n        -12.477693557739258\n      ],\n      [\n        \"▁potentiel\",\n        -12.47778606414795\n      ],\n      [\n        \"▁topping\",\n        -12.478300094604492\n      ],\n      [\n        \"▁canada\",\n        -12.478304862976074\n      ],\n      [\n        \"▁Destin\",\n        -12.478355407714844\n      ],\n      [\n        \"▁Knowing\",\n        -12.478411674499512\n      ],\n      [\n        \"▁retained\",\n        -12.478426933288574\n      ],\n      [\n        \"▁zinc\",\n        -12.478470802307129\n      ],\n      [\n        \"▁worrying\",\n        -12.478655815124512\n      ],\n      [\n        \"faţa\",\n        -12.478676795959473\n      ],\n      [\n        \"▁initi\",\n        -12.478837966918945\n      ],\n      [\n        \"ORI\",\n        -12.4788818359375\n      ],\n      [\n        \"▁refuz\",\n        -12.478921890258789\n      ],\n      [\n        \"bruch\",\n        -12.479202270507812\n      ],\n      [\n        \"▁impun\",\n        -12.479233741760254\n      ],\n      [\n        \"▁persoană\",\n        -12.479308128356934\n      ],\n      [\n        \"EAR\",\n        -12.479347229003906\n      ],\n      [\n        \"bedarf\",\n        -12.479368209838867\n      ],\n      [\n        \"▁Gebiet\",\n        -12.47940731048584\n      ],\n      [\n        \"▁Roof\",\n        -12.479436874389648\n      ],\n      [\n        \"▁negligence\",\n        -12.47957706451416\n      ],\n      [\n        \"security\",\n        -12.479618072509766\n      ],\n      [\n        \"▁accesorii\",\n        -12.479641914367676\n      ],\n      [\n        \"▁unclear\",\n        -12.479667663574219\n      ],\n      [\n        \"▁securitate\",\n        -12.479848861694336\n      ],\n      [\n        \"▁spotlight\",\n        -12.479896545410156\n      ],\n      [\n        \"▁speziell\",\n        -12.479923248291016\n      ],\n      [\n        \"▁mentally\",\n        -12.479942321777344\n      ],\n      [\n        \"▁preservation\",\n        -12.48011589050293\n      ],\n      [\n        \"▁Promotion\",\n        -12.480156898498535\n      ],\n      [\n        \"partnered\",\n        -12.480274200439453\n      ],\n      [\n        \"▁Hinter\",\n        -12.48031997680664\n      ],\n      [\n        \"▁punishment\",\n        -12.480359077453613\n      ],\n      [\n        \"▁grease\",\n        -12.480713844299316\n      ],\n      [\n        \"▁NW\",\n        -12.480714797973633\n      ],\n      [\n        \"▁curse\",\n        -12.480897903442383\n      ],\n      [\n        \"ckle\",\n        -12.48101806640625\n      ],\n      [\n        \"▁Hire\",\n        -12.481043815612793\n      ],\n      [\n        \"▁Whole\",\n        -12.481088638305664\n      ],\n      [\n        \"▁basse\",\n        -12.481289863586426\n      ],\n      [\n        \"▁DNS\",\n        -12.481427192687988\n      ],\n      [\n        \"flamm\",\n        -12.481560707092285\n      ],\n      [\n        \"▁scoop\",\n        -12.481574058532715\n      ],\n      [\n        \"Norm\",\n        -12.481663703918457\n      ],\n      [\n        \"▁Surgery\",\n        -12.481735229492188\n      ],\n      [\n        \"▁widget\",\n        -12.481741905212402\n      ],\n      [\n        \"connected\",\n        -12.481863021850586\n      ],\n      [\n        \"autorité\",\n        -12.481961250305176\n      ],\n      [\n        \"▁utilis\",\n        -12.482096672058105\n      ],\n      [\n        \"▁formă\",\n        -12.482185363769531\n      ],\n      [\n        \"▁clearing\",\n        -12.482307434082031\n      ],\n      [\n        \"▁jumătate\",\n        -12.482815742492676\n      ],\n      [\n        \"größe\",\n        -12.482831954956055\n      ],\n      [\n        \"▁Tief\",\n        -12.482852935791016\n      ],\n      [\n        \"épi\",\n        -12.482939720153809\n      ],\n      [\n        \"zunehmen\",\n        -12.483174324035645\n      ],\n      [\n        \"▁touchdown\",\n        -12.48318099975586\n      ],\n      [\n        \"▁scholarships\",\n        -12.483236312866211\n      ],\n      [\n        \"▁dementia\",\n        -12.483319282531738\n      ],\n      [\n        \"▁Jeder\",\n        -12.48333740234375\n      ],\n      [\n        \"▁nightmare\",\n        -12.483379364013672\n      ],\n      [\n        \"▁Raw\",\n        -12.48342514038086\n      ],\n      [\n        \"absorbed\",\n        -12.483468055725098\n      ],\n      [\n        \"lohnt\",\n        -12.483484268188477\n      ],\n      [\n        \"quent\",\n        -12.483580589294434\n      ],\n      [\n        \"interest\",\n        -12.483626365661621\n      ],\n      [\n        \"OSS\",\n        -12.483649253845215\n      ],\n      [\n        \"▁Leaf\",\n        -12.483667373657227\n      ],\n      [\n        \"▁timeless\",\n        -12.48381519317627\n      ],\n      [\n        \"DY\",\n        -12.483865737915039\n      ],\n      [\n        \"▁Remote\",\n        -12.483907699584961\n      ],\n      [\n        \"chner\",\n        -12.483938217163086\n      ],\n      [\n        \"▁Pam\",\n        -12.484014511108398\n      ],\n      [\n        \"urban\",\n        -12.484060287475586\n      ],\n      [\n        \"во\",\n        -12.484146118164062\n      ],\n      [\n        \"▁Kunde\",\n        -12.484166145324707\n      ],\n      [\n        \"▁Laptop\",\n        -12.484169006347656\n      ],\n      [\n        \"finder\",\n        -12.484336853027344\n      ],\n      [\n        \"▁Pole\",\n        -12.484567642211914\n      ],\n      [\n        \"2.8\",\n        -12.484588623046875\n      ],\n      [\n        \"finished\",\n        -12.484670639038086\n      ],\n      [\n        \"▁prophet\",\n        -12.484697341918945\n      ],\n      [\n        \"mailed\",\n        -12.484758377075195\n      ],\n      [\n        \"2-0\",\n        -12.4849214553833\n      ],\n      [\n        \"▁disciples\",\n        -12.484949111938477\n      ],\n      [\n        \"▁intriguing\",\n        -12.484980583190918\n      ],\n      [\n        \"IRA\",\n        -12.485033988952637\n      ],\n      [\n        \"petit\",\n        -12.485077857971191\n      ],\n      [\n        \"▁Membership\",\n        -12.485097885131836\n      ],\n      [\n        \"▁provincial\",\n        -12.485177040100098\n      ],\n      [\n        \"▁Prüfung\",\n        -12.485292434692383\n      ],\n      [\n        \"-50\",\n        -12.485450744628906\n      ],\n      [\n        \"▁cryptocurrency\",\n        -12.485522270202637\n      ],\n      [\n        \"▁journalism\",\n        -12.485536575317383\n      ],\n      [\n        \"▁Downtown\",\n        -12.485593795776367\n      ],\n      [\n        \"inserted\",\n        -12.485655784606934\n      ],\n      [\n        \"▁Direction\",\n        -12.485718727111816\n      ],\n      [\n        \"lipid\",\n        -12.485732078552246\n      ],\n      [\n        \"▁Sebastian\",\n        -12.485793113708496\n      ],\n      [\n        \"fordert\",\n        -12.48591136932373\n      ],\n      [\n        \"Originally\",\n        -12.485989570617676\n      ],\n      [\n        \"tipp\",\n        -12.486048698425293\n      ],\n      [\n        \"verantwortlich\",\n        -12.486064910888672\n      ],\n      [\n        \"▁wheelchair\",\n        -12.486085891723633\n      ],\n      [\n        \"▁structura\",\n        -12.48609733581543\n      ],\n      [\n        \"▁Danny\",\n        -12.486138343811035\n      ],\n      [\n        \"999\",\n        -12.486284255981445\n      ],\n      [\n        \"▁Schiff\",\n        -12.486380577087402\n      ],\n      [\n        \"formally\",\n        -12.486408233642578\n      ],\n      [\n        \"focused\",\n        -12.486428260803223\n      ],\n      [\n        \"▁Vater\",\n        -12.486478805541992\n      ],\n      [\n        \"▁Dear\",\n        -12.486599922180176\n      ],\n      [\n        \"▁reinforce\",\n        -12.486794471740723\n      ],\n      [\n        \"proprietar\",\n        -12.48690414428711\n      ],\n      [\n        \"▁Kyle\",\n        -12.487004280090332\n      ],\n      [\n        \"În\",\n        -12.487015724182129\n      ],\n      [\n        \"▁servir\",\n        -12.487268447875977\n      ],\n      [\n        \"length\",\n        -12.48730754852295\n      ],\n      [\n        \"▁showroom\",\n        -12.48735237121582\n      ],\n      [\n        \"reli\",\n        -12.487473487854004\n      ],\n      [\n        \"▁Brü\",\n        -12.487529754638672\n      ],\n      [\n        \"▁Schle\",\n        -12.487634658813477\n      ],\n      [\n        \"▁profond\",\n        -12.487773895263672\n      ],\n      [\n        \"▁Superior\",\n        -12.487826347351074\n      ],\n      [\n        \"▁lifted\",\n        -12.487844467163086\n      ],\n      [\n        \"highlighting\",\n        -12.487850189208984\n      ],\n      [\n        \"▁Connection\",\n        -12.48793888092041\n      ],\n      [\n        \"▁similarly\",\n        -12.487998962402344\n      ],\n      [\n        \"▁diferit\",\n        -12.488005638122559\n      ],\n      [\n        \"▁sweater\",\n        -12.488014221191406\n      ],\n      [\n        \"État\",\n        -12.48803997039795\n      ],\n      [\n        \"rooted\",\n        -12.488069534301758\n      ],\n      [\n        \"▁sleeves\",\n        -12.488236427307129\n      ],\n      [\n        \"де\",\n        -12.488264083862305\n      ],\n      [\n        \"▁Laboratory\",\n        -12.488265991210938\n      ],\n      [\n        \"ündig\",\n        -12.488719940185547\n      ],\n      [\n        \"▁Viking\",\n        -12.488741874694824\n      ],\n      [\n        \"▁Origin\",\n        -12.48878002166748\n      ],\n      [\n        \"▁vibr\",\n        -12.488812446594238\n      ],\n      [\n        \"199\",\n        -12.488974571228027\n      ],\n      [\n        \"▁yummy\",\n        -12.489001274108887\n      ],\n      [\n        \"STAR\",\n        -12.489140510559082\n      ],\n      [\n        \"▁repro\",\n        -12.489152908325195\n      ],\n      [\n        \"▁Kirchen\",\n        -12.489229202270508\n      ],\n      [\n        \"hopper\",\n        -12.48925495147705\n      ],\n      [\n        \"zza\",\n        -12.489335060119629\n      ],\n      [\n        \"▁vitesse\",\n        -12.48934555053711\n      ],\n      [\n        \"▁minimalist\",\n        -12.489412307739258\n      ],\n      [\n        \"▁Election\",\n        -12.489420890808105\n      ],\n      [\n        \"draw\",\n        -12.489501953125\n      ],\n      [\n        \"▁candles\",\n        -12.48959732055664\n      ],\n      [\n        \"▁Mund\",\n        -12.489615440368652\n      ],\n      [\n        \"urged\",\n        -12.489901542663574\n      ],\n      [\n        \"▁cânt\",\n        -12.489917755126953\n      ],\n      [\n        \"Ultimately\",\n        -12.49002742767334\n      ],\n      [\n        \"▁Lift\",\n        -12.490124702453613\n      ],\n      [\n        \"loaded\",\n        -12.490334510803223\n      ],\n      [\n        \"demand\",\n        -12.490508079528809\n      ],\n      [\n        \"▁aleg\",\n        -12.490621566772461\n      ],\n      [\n        \"▁Discovery\",\n        -12.490755081176758\n      ],\n      [\n        \"▁Vienna\",\n        -12.490960121154785\n      ],\n      [\n        \"▁Kategorie\",\n        -12.490961074829102\n      ],\n      [\n        \"▁Cotton\",\n        -12.490962028503418\n      ],\n      [\n        \"▁$200\",\n        -12.491043090820312\n      ],\n      [\n        \"▁Drei\",\n        -12.491052627563477\n      ],\n      [\n        \"▁reicht\",\n        -12.491168975830078\n      ],\n      [\n        \"speicher\",\n        -12.491231918334961\n      ],\n      [\n        \"▁Immobilien\",\n        -12.491483688354492\n      ],\n      [\n        \"gefühl\",\n        -12.491509437561035\n      ],\n      [\n        \"make\",\n        -12.491525650024414\n      ],\n      [\n        \"pell\",\n        -12.49155044555664\n      ],\n      [\n        \"▁dull\",\n        -12.491598129272461\n      ],\n      [\n        \"▁arbeitet\",\n        -12.491681098937988\n      ],\n      [\n        \"retaining\",\n        -12.491700172424316\n      ],\n      [\n        \"losen\",\n        -12.491707801818848\n      ],\n      [\n        \"match\",\n        -12.491876602172852\n      ],\n      [\n        \"-60\",\n        -12.491880416870117\n      ],\n      [\n        \"▁ecological\",\n        -12.492000579833984\n      ],\n      [\n        \"▁vend\",\n        -12.492051124572754\n      ],\n      [\n        \"▁grammar\",\n        -12.492061614990234\n      ],\n      [\n        \"▁1:1\",\n        -12.492225646972656\n      ],\n      [\n        \"grilled\",\n        -12.492279052734375\n      ],\n      [\n        \"geordnet\",\n        -12.492321014404297\n      ],\n      [\n        \"▁Pav\",\n        -12.49236011505127\n      ],\n      [\n        \"▁Depot\",\n        -12.492368698120117\n      ],\n      [\n        \"▁Walking\",\n        -12.492372512817383\n      ],\n      [\n        \"teamed\",\n        -12.492402076721191\n      ],\n      [\n        \"▁torque\",\n        -12.492537498474121\n      ],\n      [\n        \"▁Venture\",\n        -12.492659568786621\n      ],\n      [\n        \"▁beginner\",\n        -12.49269962310791\n      ],\n      [\n        \"▁Monaten\",\n        -12.492712020874023\n      ],\n      [\n        \"▁Pune\",\n        -12.493054389953613\n      ],\n      [\n        \"connect\",\n        -12.493075370788574\n      ],\n      [\n        \"▁textbook\",\n        -12.493132591247559\n      ],\n      [\n        \"▁unprecedented\",\n        -12.49314022064209\n      ],\n      [\n        \"▁implied\",\n        -12.493168830871582\n      ],\n      [\n        \"▁cubic\",\n        -12.493668556213379\n      ],\n      [\n        \"enthält\",\n        -12.493696212768555\n      ],\n      [\n        \"▁Brenn\",\n        -12.49388313293457\n      ],\n      [\n        \"▁Expect\",\n        -12.49394416809082\n      ],\n      [\n        \"▁lever\",\n        -12.4939603805542\n      ],\n      [\n        \"veux\",\n        -12.49399185180664\n      ],\n      [\n        \"▁Claire\",\n        -12.494112968444824\n      ],\n      [\n        \"Acc\",\n        -12.49432373046875\n      ],\n      [\n        \"▁Typ\",\n        -12.494478225708008\n      ],\n      [\n        \"▁smoothie\",\n        -12.494501113891602\n      ],\n      [\n        \"▁Idaho\",\n        -12.494780540466309\n      ],\n      [\n        \"▁spati\",\n        -12.494802474975586\n      ],\n      [\n        \"▁bénéficier\",\n        -12.49488353729248\n      ],\n      [\n        \"▁Kle\",\n        -12.495161056518555\n      ],\n      [\n        \"▁serviciilor\",\n        -12.495169639587402\n      ],\n      [\n        \"▁prohibit\",\n        -12.495267868041992\n      ],\n      [\n        \"EAD\",\n        -12.495417594909668\n      ],\n      [\n        \"▁Turner\",\n        -12.495418548583984\n      ],\n      [\n        \"▁elibera\",\n        -12.49543571472168\n      ],\n      [\n        \"▁payday\",\n        -12.495464324951172\n      ],\n      [\n        \"▁prolong\",\n        -12.495466232299805\n      ],\n      [\n        \"▁sued\",\n        -12.495481491088867\n      ],\n      [\n        \"▁Devil\",\n        -12.495536804199219\n      ],\n      [\n        \"▁Skills\",\n        -12.495552062988281\n      ],\n      [\n        \"▁Marcel\",\n        -12.495553970336914\n      ],\n      [\n        \"▁silhouette\",\n        -12.495601654052734\n      ],\n      [\n        \"▁preț\",\n        -12.495742797851562\n      ],\n      [\n        \"▁Gö\",\n        -12.495747566223145\n      ],\n      [\n        \"▁Creator\",\n        -12.495774269104004\n      ],\n      [\n        \"fed\",\n        -12.4959077835083\n      ],\n      [\n        \"Cap\",\n        -12.495997428894043\n      ],\n      [\n        \"▁dedicate\",\n        -12.496042251586914\n      ],\n      [\n        \"0000\",\n        -12.496124267578125\n      ],\n      [\n        \"▁VAT\",\n        -12.496259689331055\n      ],\n      [\n        \"▁Firefox\",\n        -12.496443748474121\n      ],\n      [\n        \"▁therapies\",\n        -12.496477127075195\n      ],\n      [\n        \"▁screws\",\n        -12.496662139892578\n      ],\n      [\n        \"▁Province\",\n        -12.496697425842285\n      ],\n      [\n        \"▁problematic\",\n        -12.496871948242188\n      ],\n      [\n        \"▁Vid\",\n        -12.496915817260742\n      ],\n      [\n        \"▁Lost\",\n        -12.496950149536133\n      ],\n      [\n        \"▁elegance\",\n        -12.497520446777344\n      ],\n      [\n        \"▁Elegant\",\n        -12.497525215148926\n      ],\n      [\n        \"ignant\",\n        -12.497573852539062\n      ],\n      [\n        \"▁darin\",\n        -12.497649192810059\n      ],\n      [\n        \"▁anonym\",\n        -12.497669219970703\n      ],\n      [\n        \"▁vegeta\",\n        -12.49767780303955\n      ],\n      [\n        \"incoming\",\n        -12.497762680053711\n      ],\n      [\n        \"▁pills\",\n        -12.497846603393555\n      ],\n      [\n        \"governing\",\n        -12.497893333435059\n      ],\n      [\n        \"▁Haven\",\n        -12.497920989990234\n      ],\n      [\n        \"paper\",\n        -12.497947692871094\n      ],\n      [\n        \"räume\",\n        -12.497979164123535\n      ],\n      [\n        \"paw\",\n        -12.498099327087402\n      ],\n      [\n        \"▁spelling\",\n        -12.498283386230469\n      ],\n      [\n        \"ambele\",\n        -12.498318672180176\n      ],\n      [\n        \"▁reprezentat\",\n        -12.498371124267578\n      ],\n      [\n        \"▁mâ\",\n        -12.49853515625\n      ],\n      [\n        \"wirtschaftliche\",\n        -12.498558044433594\n      ],\n      [\n        \"▁valabil\",\n        -12.498579025268555\n      ],\n      [\n        \"▁konkret\",\n        -12.498618125915527\n      ],\n      [\n        \"▁financier\",\n        -12.498619079589844\n      ],\n      [\n        \"▁irre\",\n        -12.499135971069336\n      ],\n      [\n        \"▁Silicon\",\n        -12.499171257019043\n      ],\n      [\n        \"Viv\",\n        -12.499181747436523\n      ],\n      [\n        \"▁viruses\",\n        -12.49927043914795\n      ],\n      [\n        \"▁CNN\",\n        -12.499324798583984\n      ],\n      [\n        \"▁erleben\",\n        -12.499482154846191\n      ],\n      [\n        \"gina\",\n        -12.499492645263672\n      ],\n      [\n        \"punctul\",\n        -12.49951457977295\n      ],\n      [\n        \"▁Sfânt\",\n        -12.499753952026367\n      ],\n      [\n        \"▁Manage\",\n        -12.499811172485352\n      ],\n      [\n        \"▁payable\",\n        -12.499984741210938\n      ],\n      [\n        \"▁practitioner\",\n        -12.500143051147461\n      ],\n      [\n        \"▁conférence\",\n        -12.50026798248291\n      ],\n      [\n        \"▁drought\",\n        -12.50027084350586\n      ],\n      [\n        \"▁devote\",\n        -12.500361442565918\n      ],\n      [\n        \"wertung\",\n        -12.500420570373535\n      ],\n      [\n        \"stabil\",\n        -12.5004301071167\n      ],\n      [\n        \"▁balcon\",\n        -12.500553131103516\n      ],\n      [\n        \"▁Lebensmittel\",\n        -12.500603675842285\n      ],\n      [\n        \"COL\",\n        -12.500950813293457\n      ],\n      [\n        \"▁Domnul\",\n        -12.501093864440918\n      ],\n      [\n        \"carved\",\n        -12.501359939575195\n      ],\n      [\n        \"▁preparat\",\n        -12.5014009475708\n      ],\n      [\n        \"101\",\n        -12.501537322998047\n      ],\n      [\n        \"▁specimen\",\n        -12.501580238342285\n      ],\n      [\n        \"urgeon\",\n        -12.501596450805664\n      ],\n      [\n        \"LIC\",\n        -12.50163459777832\n      ],\n      [\n        \"Plattform\",\n        -12.501643180847168\n      ],\n      [\n        \"▁ramas\",\n        -12.501739501953125\n      ],\n      [\n        \"▁copilului\",\n        -12.501791954040527\n      ],\n      [\n        \"bacter\",\n        -12.501812934875488\n      ],\n      [\n        \"körper\",\n        -12.501940727233887\n      ],\n      [\n        \"▁Kru\",\n        -12.501981735229492\n      ],\n      [\n        \"▁Employ\",\n        -12.502055168151855\n      ],\n      [\n        \"office\",\n        -12.502080917358398\n      ],\n      [\n        \"▁simmer\",\n        -12.502120018005371\n      ],\n      [\n        \"qualität\",\n        -12.502137184143066\n      ],\n      [\n        \"▁freshly\",\n        -12.502215385437012\n      ],\n      [\n        \"▁Nine\",\n        -12.50223159790039\n      ],\n      [\n        \"▁tonnes\",\n        -12.50223445892334\n      ],\n      [\n        \"boden\",\n        -12.502236366271973\n      ],\n      [\n        \"enquête\",\n        -12.50240707397461\n      ],\n      [\n        \"▁Colour\",\n        -12.502481460571289\n      ],\n      [\n        \"▁Diagram\",\n        -12.502495765686035\n      ],\n      [\n        \"▁gewählt\",\n        -12.502516746520996\n      ],\n      [\n        \"▁viitoare\",\n        -12.502538681030273\n      ],\n      [\n        \"▁reporters\",\n        -12.502913475036621\n      ],\n      [\n        \"guer\",\n        -12.502991676330566\n      ],\n      [\n        \"▁Kombination\",\n        -12.503021240234375\n      ],\n      [\n        \"▁qualitative\",\n        -12.50302505493164\n      ],\n      [\n        \"Centrul\",\n        -12.503131866455078\n      ],\n      [\n        \"avy\",\n        -12.503170013427734\n      ],\n      [\n        \"▁Eng\",\n        -12.503175735473633\n      ],\n      [\n        \"▁sufletul\",\n        -12.50327205657959\n      ],\n      [\n        \"▁germ\",\n        -12.503412246704102\n      ],\n      [\n        \"▁prevented\",\n        -12.503448486328125\n      ],\n      [\n        \"appelle\",\n        -12.503533363342285\n      ],\n      [\n        \"gins\",\n        -12.503556251525879\n      ],\n      [\n        \"▁Skype\",\n        -12.503585815429688\n      ],\n      [\n        \"conditioned\",\n        -12.503617286682129\n      ],\n      [\n        \"▁clutch\",\n        -12.503641128540039\n      ],\n      [\n        \"environ\",\n        -12.503694534301758\n      ],\n      [\n        \"3.3\",\n        -12.503774642944336\n      ],\n      [\n        \"▁webinar\",\n        -12.503866195678711\n      ],\n      [\n        \"▁forty\",\n        -12.504104614257812\n      ],\n      [\n        \"▁Medicaid\",\n        -12.504127502441406\n      ],\n      [\n        \"▁dismissed\",\n        -12.504167556762695\n      ],\n      [\n        \"▁siblings\",\n        -12.504168510437012\n      ],\n      [\n        \"▁Jaw\",\n        -12.504196166992188\n      ],\n      [\n        \"guiding\",\n        -12.504220962524414\n      ],\n      [\n        \"cigarette\",\n        -12.504374504089355\n      ],\n      [\n        \"▁Shah\",\n        -12.504681587219238\n      ],\n      [\n        \"▁Lehrer\",\n        -12.504684448242188\n      ],\n      [\n        \"▁muscular\",\n        -12.504694938659668\n      ],\n      [\n        \"spatele\",\n        -12.504796981811523\n      ],\n      [\n        \"▁réduction\",\n        -12.504836082458496\n      ],\n      [\n        \"▁fixes\",\n        -12.504851341247559\n      ],\n      [\n        \"Span\",\n        -12.50511646270752\n      ],\n      [\n        \"▁Hudson\",\n        -12.505231857299805\n      ],\n      [\n        \"development\",\n        -12.505250930786133\n      ],\n      [\n        \"▁excluded\",\n        -12.50525951385498\n      ],\n      [\n        \"Democrat\",\n        -12.505260467529297\n      ],\n      [\n        \"▁nominal\",\n        -12.505317687988281\n      ],\n      [\n        \"purpose\",\n        -12.50540828704834\n      ],\n      [\n        \"▁bored\",\n        -12.505500793457031\n      ],\n      [\n        \"espèce\",\n        -12.50550651550293\n      ],\n      [\n        \"▁(30\",\n        -12.5055570602417\n      ],\n      [\n        \"Neither\",\n        -12.505608558654785\n      ],\n      [\n        \"hänge\",\n        -12.505610466003418\n      ],\n      [\n        \"square\",\n        -12.505728721618652\n      ],\n      [\n        \"voller\",\n        -12.505736351013184\n      ],\n      [\n        \"▁pertinent\",\n        -12.505783081054688\n      ],\n      [\n        \"▁Wool\",\n        -12.50595474243164\n      ],\n      [\n        \"settling\",\n        -12.50607681274414\n      ],\n      [\n        \"fangen\",\n        -12.506148338317871\n      ],\n      [\n        \"▁Testing\",\n        -12.506152153015137\n      ],\n      [\n        \"distin\",\n        -12.506196022033691\n      ],\n      [\n        \"▁Marken\",\n        -12.506227493286133\n      ],\n      [\n        \"▁Beta\",\n        -12.506300926208496\n      ],\n      [\n        \"▁fulfilling\",\n        -12.506339073181152\n      ],\n      [\n        \"Leider\",\n        -12.506357192993164\n      ],\n      [\n        \"black\",\n        -12.506389617919922\n      ],\n      [\n        \"occupe\",\n        -12.50658893585205\n      ],\n      [\n        \"itățile\",\n        -12.506688117980957\n      ],\n      [\n        \"Pay\",\n        -12.506887435913086\n      ],\n      [\n        \"▁bandwidth\",\n        -12.506890296936035\n      ],\n      [\n        \"▁neighbourhood\",\n        -12.506918907165527\n      ],\n      [\n        \"▁Gutschein\",\n        -12.506922721862793\n      ],\n      [\n        \"degree\",\n        -12.507055282592773\n      ],\n      [\n        \"ivité\",\n        -12.507116317749023\n      ],\n      [\n        \"4.1\",\n        -12.507169723510742\n      ],\n      [\n        \"▁tätig\",\n        -12.507170677185059\n      ],\n      [\n        \"topic\",\n        -12.507242202758789\n      ],\n      [\n        \"ätz\",\n        -12.507243156433105\n      ],\n      [\n        \"these\",\n        -12.50733470916748\n      ],\n      [\n        \"▁propriété\",\n        -12.507438659667969\n      ],\n      [\n        \"▁innings\",\n        -12.507458686828613\n      ],\n      [\n        \"▁Prevention\",\n        -12.50754165649414\n      ],\n      [\n        \"▁Saw\",\n        -12.507585525512695\n      ],\n      [\n        \"▁opener\",\n        -12.507752418518066\n      ],\n      [\n        \"entwicklung\",\n        -12.507824897766113\n      ],\n      [\n        \"▁Johann\",\n        -12.507865905761719\n      ],\n      [\n        \"▁statistic\",\n        -12.507881164550781\n      ],\n      [\n        \"oids\",\n        -12.507966995239258\n      ],\n      [\n        \"▁Delaware\",\n        -12.508000373840332\n      ],\n      [\n        \"▁Isle\",\n        -12.508001327514648\n      ],\n      [\n        \"▁accompagn\",\n        -12.508028984069824\n      ],\n      [\n        \"▁Risiko\",\n        -12.508079528808594\n      ],\n      [\n        \"▁Conform\",\n        -12.508268356323242\n      ],\n      [\n        \"zeichnen\",\n        -12.508395195007324\n      ],\n      [\n        \"▁acuz\",\n        -12.508479118347168\n      ],\n      [\n        \"▁Mort\",\n        -12.508524894714355\n      ],\n      [\n        \"Fällen\",\n        -12.50853157043457\n      ],\n      [\n        \"▁blended\",\n        -12.50871467590332\n      ],\n      [\n        \"found\",\n        -12.50872802734375\n      ],\n      [\n        \"▁gestalten\",\n        -12.50874137878418\n      ],\n      [\n        \"▁Découvrez\",\n        -12.508830070495605\n      ],\n      [\n        \"▁Wett\",\n        -12.508956909179688\n      ],\n      [\n        \"▁débat\",\n        -12.508990287780762\n      ],\n      [\n        \"▁Tire\",\n        -12.509007453918457\n      ],\n      [\n        \"benz\",\n        -12.509037017822266\n      ],\n      [\n        \"Yes\",\n        -12.509074211120605\n      ],\n      [\n        \"▁pierde\",\n        -12.509110450744629\n      ],\n      [\n        \"▁niciodata\",\n        -12.509121894836426\n      ],\n      [\n        \"▁precipit\",\n        -12.509145736694336\n      ],\n      [\n        \"▁lazy\",\n        -12.509334564208984\n      ],\n      [\n        \"▁creature\",\n        -12.509370803833008\n      ],\n      [\n        \"Wettbewerb\",\n        -12.509385108947754\n      ],\n      [\n        \"▁Explo\",\n        -12.509496688842773\n      ],\n      [\n        \"wolf\",\n        -12.509657859802246\n      ],\n      [\n        \"▁conséquence\",\n        -12.509662628173828\n      ],\n      [\n        \"▁jewellery\",\n        -12.509662628173828\n      ],\n      [\n        \"▁Extension\",\n        -12.509735107421875\n      ],\n      [\n        \"▁transmitted\",\n        -12.509872436523438\n      ],\n      [\n        \"▁darker\",\n        -12.509973526000977\n      ],\n      [\n        \"▁simbol\",\n        -12.510065078735352\n      ],\n      [\n        \"kim\",\n        -12.510069847106934\n      ],\n      [\n        \"▁proteja\",\n        -12.510098457336426\n      ],\n      [\n        \"▁Copper\",\n        -12.510189056396484\n      ],\n      [\n        \"mitglied\",\n        -12.510218620300293\n      ],\n      [\n        \"▁explosive\",\n        -12.510222434997559\n      ],\n      [\n        \"▁Nicolae\",\n        -12.510223388671875\n      ],\n      [\n        \"▁intricate\",\n        -12.510231971740723\n      ],\n      [\n        \"lati\",\n        -12.510313034057617\n      ],\n      [\n        \"Mark\",\n        -12.510334014892578\n      ],\n      [\n        \"▁Porsche\",\n        -12.510339736938477\n      ],\n      [\n        \"▁Revenue\",\n        -12.510479927062988\n      ],\n      [\n        \"4.2\",\n        -12.510613441467285\n      ],\n      [\n        \"certain\",\n        -12.510836601257324\n      ],\n      [\n        \"▁Coaching\",\n        -12.510879516601562\n      ],\n      [\n        \"▁allocated\",\n        -12.510879516601562\n      ],\n      [\n        \"▁optimiz\",\n        -12.511017799377441\n      ],\n      [\n        \"▁heel\",\n        -12.511205673217773\n      ],\n      [\n        \"▁indigenous\",\n        -12.511330604553223\n      ],\n      [\n        \"▁vineri\",\n        -12.511396408081055\n      ],\n      [\n        \"▁Inspector\",\n        -12.51145076751709\n      ],\n      [\n        \"▁colleague\",\n        -12.5115327835083\n      ],\n      [\n        \"ANG\",\n        -12.511649131774902\n      ],\n      [\n        \"éducation\",\n        -12.511887550354004\n      ],\n      [\n        \"▁Geschenk\",\n        -12.51188850402832\n      ],\n      [\n        \"channel\",\n        -12.511899948120117\n      ],\n      [\n        \"▁trapped\",\n        -12.511954307556152\n      ],\n      [\n        \"BF\",\n        -12.511974334716797\n      ],\n      [\n        \"▁firing\",\n        -12.512086868286133\n      ],\n      [\n        \"▁chlor\",\n        -12.512103080749512\n      ],\n      [\n        \"▁Carlos\",\n        -12.512115478515625\n      ],\n      [\n        \"▁proxy\",\n        -12.512128829956055\n      ],\n      [\n        \"▁pinch\",\n        -12.512167930603027\n      ],\n      [\n        \"▁Pete\",\n        -12.512201309204102\n      ],\n      [\n        \"phospho\",\n        -12.512458801269531\n      ],\n      [\n        \"▁waiver\",\n        -12.51246452331543\n      ],\n      [\n        \"▁Croatia\",\n        -12.512480735778809\n      ],\n      [\n        \"▁behave\",\n        -12.51258373260498\n      ],\n      [\n        \"▁frig\",\n        -12.512676239013672\n      ],\n      [\n        \"▁Vorteil\",\n        -12.51279067993164\n      ],\n      [\n        \"▁wichtiger\",\n        -12.512837409973145\n      ],\n      [\n        \"........\",\n        -12.512929916381836\n      ],\n      [\n        \"▁flick\",\n        -12.513007164001465\n      ],\n      [\n        \"▁Stanford\",\n        -12.51306438446045\n      ],\n      [\n        \"öse\",\n        -12.513096809387207\n      ],\n      [\n        \"▁Fernseh\",\n        -12.513099670410156\n      ],\n      [\n        \"▁vélo\",\n        -12.51322078704834\n      ],\n      [\n        \"reisen\",\n        -12.513304710388184\n      ],\n      [\n        \"residing\",\n        -12.513504981994629\n      ],\n      [\n        \"▁Taste\",\n        -12.513580322265625\n      ],\n      [\n        \"▁disappeared\",\n        -12.513630867004395\n      ],\n      [\n        \"▁Hood\",\n        -12.513776779174805\n      ],\n      [\n        \"▁fabriqu\",\n        -12.514046669006348\n      ],\n      [\n        \"▁Jake\",\n        -12.514470100402832\n      ],\n      [\n        \"Lastly\",\n        -12.51462173461914\n      ],\n      [\n        \"▁furnace\",\n        -12.514673233032227\n      ],\n      [\n        \"▁Ottawa\",\n        -12.51473331451416\n      ],\n      [\n        \"▁dictate\",\n        -12.514742851257324\n      ],\n      [\n        \"zece\",\n        -12.514817237854004\n      ],\n      [\n        \"protect\",\n        -12.514932632446289\n      ],\n      [\n        \"FU\",\n        -12.51495361328125\n      ],\n      [\n        \"Stack\",\n        -12.514954566955566\n      ],\n      [\n        \"▁teilweise\",\n        -12.515018463134766\n      ],\n      [\n        \"▁Publisher\",\n        -12.51506233215332\n      ],\n      [\n        \"▁lutte\",\n        -12.515159606933594\n      ],\n      [\n        \"202\",\n        -12.515178680419922\n      ],\n      [\n        \"psy\",\n        -12.515190124511719\n      ],\n      [\n        \"▁wünschen\",\n        -12.515238761901855\n      ],\n      [\n        \"▁pathways\",\n        -12.515356063842773\n      ],\n      [\n        \"ivitate\",\n        -12.515559196472168\n      ],\n      [\n        \"▁continuă\",\n        -12.515658378601074\n      ],\n      [\n        \"ziemlich\",\n        -12.515791893005371\n      ],\n      [\n        \"verted\",\n        -12.515812873840332\n      ],\n      [\n        \"▁sequel\",\n        -12.515839576721191\n      ],\n      [\n        \"tinct\",\n        -12.51599407196045\n      ],\n      [\n        \"vette\",\n        -12.516020774841309\n      ],\n      [\n        \"▁exceeding\",\n        -12.516032218933105\n      ],\n      [\n        \"▁Yorkshire\",\n        -12.51607608795166\n      ],\n      [\n        \"▁cleanse\",\n        -12.51613998413086\n      ],\n      [\n        \"Sadly\",\n        -12.516159057617188\n      ],\n      [\n        \"▁präsentiert\",\n        -12.516164779663086\n      ],\n      [\n        \"angled\",\n        -12.516311645507812\n      ],\n      [\n        \"tude\",\n        -12.516339302062988\n      ],\n      [\n        \"chain\",\n        -12.516371726989746\n      ],\n      [\n        \"▁Oakland\",\n        -12.51639175415039\n      ],\n      [\n        \"xia\",\n        -12.516514778137207\n      ],\n      [\n        \"▁foremost\",\n        -12.51653003692627\n      ],\n      [\n        \"▁incomplete\",\n        -12.516786575317383\n      ],\n      [\n        \"▁restriction\",\n        -12.516905784606934\n      ],\n      [\n        \"▁whatsoever\",\n        -12.516908645629883\n      ],\n      [\n        \"▁shipment\",\n        -12.517017364501953\n      ],\n      [\n        \"**\",\n        -12.517059326171875\n      ],\n      [\n        \"Aici\",\n        -12.517110824584961\n      ],\n      [\n        \"PART\",\n        -12.517247200012207\n      ],\n      [\n        \"▁grams\",\n        -12.517251014709473\n      ],\n      [\n        \"▁Folk\",\n        -12.517457008361816\n      ],\n      [\n        \"▁encryption\",\n        -12.517467498779297\n      ],\n      [\n        \"▁Alfred\",\n        -12.517748832702637\n      ],\n      [\n        \"▁Veränderung\",\n        -12.517749786376953\n      ],\n      [\n        \"▁privately\",\n        -12.517817497253418\n      ],\n      [\n        \"£\",\n        -12.517909049987793\n      ],\n      [\n        \"▁Sonne\",\n        -12.51799201965332\n      ],\n      [\n        \"kow\",\n        -12.518117904663086\n      ],\n      [\n        \"▁CBS\",\n        -12.518172264099121\n      ],\n      [\n        \"▁Feuer\",\n        -12.518198013305664\n      ],\n      [\n        \"▁crushed\",\n        -12.518230438232422\n      ],\n      [\n        \"▁cazare\",\n        -12.518270492553711\n      ],\n      [\n        \"▁beraten\",\n        -12.518401145935059\n      ],\n      [\n        \"envoi\",\n        -12.518423080444336\n      ],\n      [\n        \"▁genannt\",\n        -12.51843547821045\n      ],\n      [\n        \"▁Lok\",\n        -12.518472671508789\n      ],\n      [\n        \"nox\",\n        -12.518569946289062\n      ],\n      [\n        \"wishing\",\n        -12.518759727478027\n      ],\n      [\n        \"▁freak\",\n        -12.518759727478027\n      ],\n      [\n        \"rasi\",\n        -12.51879596710205\n      ],\n      [\n        \"▁calculations\",\n        -12.518888473510742\n      ],\n      [\n        \"▁sprechen\",\n        -12.51890754699707\n      ],\n      [\n        \"5:00\",\n        -12.519062042236328\n      ],\n      [\n        \"▁Gam\",\n        -12.519074440002441\n      ],\n      [\n        \"▁invasion\",\n        -12.519159317016602\n      ],\n      [\n        \"ZA\",\n        -12.519230842590332\n      ],\n      [\n        \"aiming\",\n        -12.519327163696289\n      ],\n      [\n        \"▁näher\",\n        -12.519404411315918\n      ],\n      [\n        \"▁Maßnahmen\",\n        -12.519433975219727\n      ],\n      [\n        \"▁măsură\",\n        -12.519490242004395\n      ],\n      [\n        \"▁Bestellung\",\n        -12.519610404968262\n      ],\n      [\n        \"▁gown\",\n        -12.519665718078613\n      ],\n      [\n        \"▁oblige\",\n        -12.519747734069824\n      ],\n      [\n        \"länder\",\n        -12.51977825164795\n      ],\n      [\n        \"posi\",\n        -12.519853591918945\n      ],\n      [\n        \"▁Earn\",\n        -12.51988410949707\n      ],\n      [\n        \"▁dubl\",\n        -12.51999282836914\n      ],\n      [\n        \"▁sticky\",\n        -12.520100593566895\n      ],\n      [\n        \"▁litter\",\n        -12.520181655883789\n      ],\n      [\n        \"▁Salz\",\n        -12.520257949829102\n      ],\n      [\n        \"▁Matter\",\n        -12.520272254943848\n      ],\n      [\n        \"▁Driving\",\n        -12.520275115966797\n      ],\n      [\n        \"▁pursu\",\n        -12.520285606384277\n      ],\n      [\n        \"ographer\",\n        -12.520390510559082\n      ],\n      [\n        \"▁touring\",\n        -12.520400047302246\n      ],\n      [\n        \"opter\",\n        -12.520444869995117\n      ],\n      [\n        \"▁fierce\",\n        -12.520475387573242\n      ],\n      [\n        \"▁Audit\",\n        -12.520480155944824\n      ],\n      [\n        \"▁imperi\",\n        -12.520755767822266\n      ],\n      [\n        \"▁positiv\",\n        -12.520780563354492\n      ],\n      [\n        \"règles\",\n        -12.520849227905273\n      ],\n      [\n        \"▁bouton\",\n        -12.520990371704102\n      ],\n      [\n        \"▁victorie\",\n        -12.520990371704102\n      ],\n      [\n        \"▁manuel\",\n        -12.521015167236328\n      ],\n      [\n        \"▁await\",\n        -12.52103042602539\n      ],\n      [\n        \"▁transformer\",\n        -12.521041870117188\n      ],\n      [\n        \"▁cupboard\",\n        -12.52108383178711\n      ],\n      [\n        \"▁Hag\",\n        -12.521117210388184\n      ],\n      [\n        \"naj\",\n        -12.521214485168457\n      ],\n      [\n        \"▁annoncé\",\n        -12.52139663696289\n      ],\n      [\n        \"▁scolaire\",\n        -12.521401405334473\n      ],\n      [\n        \"▁étape\",\n        -12.521482467651367\n      ],\n      [\n        \"▁pirate\",\n        -12.521761894226074\n      ],\n      [\n        \"▁Rated\",\n        -12.521794319152832\n      ],\n      [\n        \"LOT\",\n        -12.521846771240234\n      ],\n      [\n        \"▁natura\",\n        -12.521944046020508\n      ],\n      [\n        \"oga\",\n        -12.522336959838867\n      ],\n      [\n        \"Read\",\n        -12.522388458251953\n      ],\n      [\n        \"idio\",\n        -12.522444725036621\n      ],\n      [\n        \"▁recession\",\n        -12.522698402404785\n      ],\n      [\n        \"veţi\",\n        -12.522761344909668\n      ],\n      [\n        \"▁blossom\",\n        -12.523082733154297\n      ],\n      [\n        \"▁lunar\",\n        -12.523141860961914\n      ],\n      [\n        \"▁inhibit\",\n        -12.52316951751709\n      ],\n      [\n        \"gemein\",\n        -12.523219108581543\n      ],\n      [\n        \"▁Historic\",\n        -12.523262023925781\n      ],\n      [\n        \"▁HTTP\",\n        -12.523370742797852\n      ],\n      [\n        \"misiune\",\n        -12.5234956741333\n      ],\n      [\n        \"▁Manda\",\n        -12.523601531982422\n      ],\n      [\n        \"▁Hurricane\",\n        -12.523643493652344\n      ],\n      [\n        \"Strat\",\n        -12.523646354675293\n      ],\n      [\n        \"▁populaire\",\n        -12.523756980895996\n      ],\n      [\n        \"▁useless\",\n        -12.523762702941895\n      ],\n      [\n        \"▁Leipzig\",\n        -12.523924827575684\n      ],\n      [\n        \"▁Krankheit\",\n        -12.52392578125\n      ],\n      [\n        \"▁Bonne\",\n        -12.52397346496582\n      ],\n      [\n        \"▁tissu\",\n        -12.52399730682373\n      ],\n      [\n        \"▁Baum\",\n        -12.523998260498047\n      ],\n      [\n        \"▁BUT\",\n        -12.524152755737305\n      ],\n      [\n        \"▁Mondial\",\n        -12.52423095703125\n      ],\n      [\n        \"▁triangle\",\n        -12.524242401123047\n      ],\n      [\n        \"▁Tesla\",\n        -12.524250984191895\n      ],\n      [\n        \"▁pământ\",\n        -12.52430534362793\n      ],\n      [\n        \"▁aminte\",\n        -12.524726867675781\n      ],\n      [\n        \"▁vehicul\",\n        -12.524770736694336\n      ],\n      [\n        \"▁cerut\",\n        -12.52482795715332\n      ],\n      [\n        \"▁respiratory\",\n        -12.524836540222168\n      ],\n      [\n        \"▁rayon\",\n        -12.524993896484375\n      ],\n      [\n        \"▁gestaltet\",\n        -12.525067329406738\n      ],\n      [\n        \"310\",\n        -12.525139808654785\n      ],\n      [\n        \"pfl\",\n        -12.525239944458008\n      ],\n      [\n        \"▁shrimp\",\n        -12.525337219238281\n      ],\n      [\n        \"▁reconnu\",\n        -12.525409698486328\n      ],\n      [\n        \"ologique\",\n        -12.525476455688477\n      ],\n      [\n        \"▁unity\",\n        -12.525674819946289\n      ],\n      [\n        \"Speicher\",\n        -12.52569580078125\n      ],\n      [\n        \"▁Movement\",\n        -12.525794982910156\n      ],\n      [\n        \"ddling\",\n        -12.52581787109375\n      ],\n      [\n        \"OE\",\n        -12.525818824768066\n      ],\n      [\n        \"▁Resolution\",\n        -12.525863647460938\n      ],\n      [\n        \"esteem\",\n        -12.525898933410645\n      ],\n      [\n        \"▁Teen\",\n        -12.526288986206055\n      ],\n      [\n        \"▁believing\",\n        -12.526463508605957\n      ],\n      [\n        \"▁Tipps\",\n        -12.526481628417969\n      ],\n      [\n        \"jpg\",\n        -12.526494026184082\n      ],\n      [\n        \"▁obs\",\n        -12.526519775390625\n      ],\n      [\n        \"SHA\",\n        -12.526702880859375\n      ],\n      [\n        \"▁quietly\",\n        -12.526907920837402\n      ],\n      [\n        \"setting\",\n        -12.52712345123291\n      ],\n      [\n        \"▁elevator\",\n        -12.527185440063477\n      ],\n      [\n        \"phor\",\n        -12.527194023132324\n      ],\n      [\n        \"Just\",\n        -12.52725887298584\n      ],\n      [\n        \"▁legatura\",\n        -12.52739143371582\n      ],\n      [\n        \"elected\",\n        -12.527414321899414\n      ],\n      [\n        \"▁disclosed\",\n        -12.527419090270996\n      ],\n      [\n        \"quarter\",\n        -12.52743148803711\n      ],\n      [\n        \"zzy\",\n        -12.527461051940918\n      ],\n      [\n        \"▁gata\",\n        -12.527491569519043\n      ],\n      [\n        \"SAN\",\n        -12.527532577514648\n      ],\n      [\n        \"▁Cathedral\",\n        -12.527592658996582\n      ],\n      [\n        \"192\",\n        -12.527656555175781\n      ],\n      [\n        \"▁RBI\",\n        -12.527726173400879\n      ],\n      [\n        \"▁Seller\",\n        -12.527798652648926\n      ],\n      [\n        \"▁urine\",\n        -12.527807235717773\n      ],\n      [\n        \"▁Hardware\",\n        -12.527966499328613\n      ],\n      [\n        \"▁steadi\",\n        -12.527993202209473\n      ],\n      [\n        \"percussion\",\n        -12.528158187866211\n      ],\n      [\n        \"▁francez\",\n        -12.528172492980957\n      ],\n      [\n        \"▁rude\",\n        -12.528202056884766\n      ],\n      [\n        \"bod\",\n        -12.528223037719727\n      ],\n      [\n        \"cession\",\n        -12.528249740600586\n      ],\n      [\n        \"▁HTC\",\n        -12.528372764587402\n      ],\n      [\n        \"HB\",\n        -12.528576850891113\n      ],\n      [\n        \"▁descent\",\n        -12.528644561767578\n      ],\n      [\n        \"▁Painting\",\n        -12.528681755065918\n      ],\n      [\n        \"119\",\n        -12.528684616088867\n      ],\n      [\n        \"sagen\",\n        -12.52877426147461\n      ],\n      [\n        \"▁salvation\",\n        -12.52880573272705\n      ],\n      [\n        \"arro\",\n        -12.528814315795898\n      ],\n      [\n        \"0.3\",\n        -12.52886962890625\n      ],\n      [\n        \"▁Duck\",\n        -12.52890396118164\n      ],\n      [\n        \"Mit\",\n        -12.529052734375\n      ],\n      [\n        \"да\",\n        -12.52927017211914\n      ],\n      [\n        \"▁Diesel\",\n        -12.529322624206543\n      ],\n      [\n        \"▁Medal\",\n        -12.529413223266602\n      ],\n      [\n        \"▁interim\",\n        -12.529439926147461\n      ],\n      [\n        \"▁montagne\",\n        -12.529439926147461\n      ],\n      [\n        \"▁Pixel\",\n        -12.529631614685059\n      ],\n      [\n        \"LINE\",\n        -12.529806137084961\n      ],\n      [\n        \"▁dureri\",\n        -12.529938697814941\n      ],\n      [\n        \"▁Bengal\",\n        -12.529990196228027\n      ],\n      [\n        \"Legea\",\n        -12.530080795288086\n      ],\n      [\n        \"▁Strecke\",\n        -12.530094146728516\n      ],\n      [\n        \"▁schneller\",\n        -12.53012752532959\n      ],\n      [\n        \"▁Karten\",\n        -12.5301513671875\n      ],\n      [\n        \"cion\",\n        -12.530241966247559\n      ],\n      [\n        \"▁Coco\",\n        -12.53037166595459\n      ],\n      [\n        \"troisième\",\n        -12.53052806854248\n      ],\n      [\n        \"401\",\n        -12.530616760253906\n      ],\n      [\n        \"▁sandwiches\",\n        -12.530704498291016\n      ],\n      [\n        \"▁folosind\",\n        -12.530920028686523\n      ],\n      [\n        \"▁Folgen\",\n        -12.530953407287598\n      ],\n      [\n        \"▁triumph\",\n        -12.530991554260254\n      ],\n      [\n        \"▁Hintergrund\",\n        -12.530996322631836\n      ],\n      [\n        \"▁revelation\",\n        -12.531084060668945\n      ],\n      [\n        \"ôme\",\n        -12.531222343444824\n      ],\n      [\n        \"▁Nex\",\n        -12.531245231628418\n      ],\n      [\n        \"jährigen\",\n        -12.531295776367188\n      ],\n      [\n        \"▁militant\",\n        -12.531296730041504\n      ],\n      [\n        \"▁fabricant\",\n        -12.531671524047852\n      ],\n      [\n        \"iano\",\n        -12.531713485717773\n      ],\n      [\n        \"▁formulation\",\n        -12.53188705444336\n      ],\n      [\n        \"integrating\",\n        -12.532050132751465\n      ],\n      [\n        \"▁Items\",\n        -12.532142639160156\n      ],\n      [\n        \"▁contractual\",\n        -12.532320976257324\n      ],\n      [\n        \"AIDS\",\n        -12.532424926757812\n      ],\n      [\n        \"▁pitcher\",\n        -12.532610893249512\n      ],\n      [\n        \"▁Snap\",\n        -12.532623291015625\n      ],\n      [\n        \"▁systematic\",\n        -12.532663345336914\n      ],\n      [\n        \"▁referendum\",\n        -12.532694816589355\n      ],\n      [\n        \"gau\",\n        -12.53281021118164\n      ],\n      [\n        \"administration\",\n        -12.532917022705078\n      ],\n      [\n        \"▁speci\",\n        -12.532981872558594\n      ],\n      [\n        \"ieni\",\n        -12.532998085021973\n      ],\n      [\n        \"prox\",\n        -12.533186912536621\n      ],\n      [\n        \"▁bouquet\",\n        -12.533241271972656\n      ],\n      [\n        \"▁sinnvoll\",\n        -12.533270835876465\n      ],\n      [\n        \"▁Fleisch\",\n        -12.533309936523438\n      ],\n      [\n        \"ktuell\",\n        -12.533381462097168\n      ],\n      [\n        \"▁mushrooms\",\n        -12.533408164978027\n      ],\n      [\n        \"▁Straf\",\n        -12.533470153808594\n      ],\n      [\n        \"▁cresc\",\n        -12.533491134643555\n      ],\n      [\n        \"TEM\",\n        -12.533502578735352\n      ],\n      [\n        \"▁vindec\",\n        -12.53352165222168\n      ],\n      [\n        \"▁Drama\",\n        -12.533540725708008\n      ],\n      [\n        \"chief\",\n        -12.533550262451172\n      ],\n      [\n        \"▁müsst\",\n        -12.533614158630371\n      ],\n      [\n        \"▁Warner\",\n        -12.533662796020508\n      ],\n      [\n        \"118\",\n        -12.533761024475098\n      ],\n      [\n        \"▁saptamana\",\n        -12.533831596374512\n      ],\n      [\n        \"▁animaux\",\n        -12.53412914276123\n      ],\n      [\n        \"▁Directory\",\n        -12.534146308898926\n      ],\n      [\n        \"▁entgegen\",\n        -12.53415584564209\n      ],\n      [\n        \"▁deduction\",\n        -12.534156799316406\n      ],\n      [\n        \"▁Strategic\",\n        -12.53426456451416\n      ],\n      [\n        \"▁rats\",\n        -12.534419059753418\n      ],\n      [\n        \"▁Moses\",\n        -12.534448623657227\n      ],\n      [\n        \"eko\",\n        -12.534564971923828\n      ],\n      [\n        \"strict\",\n        -12.534590721130371\n      ],\n      [\n        \"▁Ashley\",\n        -12.534603118896484\n      ],\n      [\n        \"mik\",\n        -12.534622192382812\n      ],\n      [\n        \"▁relocate\",\n        -12.534668922424316\n      ],\n      [\n        \"▁whip\",\n        -12.534738540649414\n      ],\n      [\n        \"central\",\n        -12.534750938415527\n      ],\n      [\n        \"mack\",\n        -12.534892082214355\n      ],\n      [\n        \"stufe\",\n        -12.534961700439453\n      ],\n      [\n        \"▁Metropolitan\",\n        -12.5349702835083\n      ],\n      [\n        \"▁croissance\",\n        -12.534974098205566\n      ],\n      [\n        \"▁celebrities\",\n        -12.535021781921387\n      ],\n      [\n        \"▁Geh\",\n        -12.53507137298584\n      ],\n      [\n        \"▁verifica\",\n        -12.535196304321289\n      ],\n      [\n        \"▁satisfac\",\n        -12.535211563110352\n      ],\n      [\n        \"▁Julian\",\n        -12.535271644592285\n      ],\n      [\n        \"▁remotely\",\n        -12.535432815551758\n      ],\n      [\n        \"▁Safari\",\n        -12.535542488098145\n      ],\n      [\n        \"▁Chic\",\n        -12.53557014465332\n      ],\n      [\n        \"▁clamp\",\n        -12.535818099975586\n      ],\n      [\n        \"▁Schnee\",\n        -12.535918235778809\n      ],\n      [\n        \"grown\",\n        -12.536069869995117\n      ],\n      [\n        \"▁Character\",\n        -12.536110877990723\n      ],\n      [\n        \"▁charities\",\n        -12.536137580871582\n      ],\n      [\n        \"Thankfully\",\n        -12.536625862121582\n      ],\n      [\n        \"▁țară\",\n        -12.53681468963623\n      ],\n      [\n        \"IZ\",\n        -12.536816596984863\n      ],\n      [\n        \"Vielleicht\",\n        -12.536999702453613\n      ],\n      [\n        \"▁Pon\",\n        -12.537108421325684\n      ],\n      [\n        \"gegen\",\n        -12.53711986541748\n      ],\n      [\n        \"chez\",\n        -12.537185668945312\n      ],\n      [\n        \"Black\",\n        -12.537544250488281\n      ],\n      [\n        \"▁alimentare\",\n        -12.537555694580078\n      ],\n      [\n        \"▁verloren\",\n        -12.537562370300293\n      ],\n      [\n        \"▁predictions\",\n        -12.537657737731934\n      ],\n      [\n        \"Founded\",\n        -12.53795337677002\n      ],\n      [\n        \"▁femeie\",\n        -12.538022994995117\n      ],\n      [\n        \"wahrscheinlich\",\n        -12.538107872009277\n      ],\n      [\n        \"▁squeeze\",\n        -12.53819465637207\n      ],\n      [\n        \"▁verfügbar\",\n        -12.538259506225586\n      ],\n      [\n        \"▁hygiene\",\n        -12.538393020629883\n      ],\n      [\n        \"voire\",\n        -12.538667678833008\n      ],\n      [\n        \"▁birou\",\n        -12.538901329040527\n      ],\n      [\n        \"▁initiate\",\n        -12.538921356201172\n      ],\n      [\n        \"▁Patriot\",\n        -12.539009094238281\n      ],\n      [\n        \"▁Income\",\n        -12.539159774780273\n      ],\n      [\n        \"▁marry\",\n        -12.539310455322266\n      ],\n      [\n        \"lokal\",\n        -12.539336204528809\n      ],\n      [\n        \"logic\",\n        -12.53940486907959\n      ],\n      [\n        \"▁Abstract\",\n        -12.53966236114502\n      ],\n      [\n        \"▁grundsätzlich\",\n        -12.539822578430176\n      ],\n      [\n        \"▁tariff\",\n        -12.539886474609375\n      ],\n      [\n        \"▁definitiv\",\n        -12.539892196655273\n      ],\n      [\n        \"paz\",\n        -12.53989315032959\n      ],\n      [\n        \"Result\",\n        -12.539921760559082\n      ],\n      [\n        \"1:30\",\n        -12.54005241394043\n      ],\n      [\n        \"▁Latest\",\n        -12.540075302124023\n      ],\n      [\n        \"▁Dauer\",\n        -12.540155410766602\n      ],\n      [\n        \"Med\",\n        -12.540275573730469\n      ],\n      [\n        \"gewicht\",\n        -12.540348052978516\n      ],\n      [\n        \"▁Gaza\",\n        -12.540430068969727\n      ],\n      [\n        \"▁Newton\",\n        -12.540769577026367\n      ],\n      [\n        \"Dokument\",\n        -12.540897369384766\n      ],\n      [\n        \"formular\",\n        -12.540945053100586\n      ],\n      [\n        \"ILE\",\n        -12.540964126586914\n      ],\n      [\n        \"▁surse\",\n        -12.541040420532227\n      ],\n      [\n        \"MH\",\n        -12.54116153717041\n      ],\n      [\n        \"▁Arctic\",\n        -12.541255950927734\n      ],\n      [\n        \"▁ISBN\",\n        -12.541274070739746\n      ],\n      [\n        \"▁quarterback\",\n        -12.541315078735352\n      ],\n      [\n        \"▁absurd\",\n        -12.541555404663086\n      ],\n      [\n        \"▁Zusammenhang\",\n        -12.541561126708984\n      ],\n      [\n        \"▁Module\",\n        -12.54156494140625\n      ],\n      [\n        \"mented\",\n        -12.541667938232422\n      ],\n      [\n        \"worthy\",\n        -12.541797637939453\n      ],\n      [\n        \"▁célèbre\",\n        -12.541828155517578\n      ],\n      [\n        \"▁maritime\",\n        -12.541836738586426\n      ],\n      [\n        \"▁Reed\",\n        -12.541938781738281\n      ],\n      [\n        \"▁threaten\",\n        -12.542037010192871\n      ],\n      [\n        \"▁Satz\",\n        -12.542095184326172\n      ],\n      [\n        \"▁sticking\",\n        -12.542203903198242\n      ],\n      [\n        \"▁transcript\",\n        -12.542372703552246\n      ],\n      [\n        \"▁Morgen\",\n        -12.542425155639648\n      ],\n      [\n        \"▁Förder\",\n        -12.542435646057129\n      ],\n      [\n        \"▁Gottes\",\n        -12.542572021484375\n      ],\n      [\n        \"▁Coordinator\",\n        -12.542648315429688\n      ],\n      [\n        \"LOG\",\n        -12.54265022277832\n      ],\n      [\n        \"EAN\",\n        -12.542677879333496\n      ],\n      [\n        \"▁préparation\",\n        -12.54273509979248\n      ],\n      [\n        \"▁Brass\",\n        -12.542799949645996\n      ],\n      [\n        \"Așa\",\n        -12.542853355407715\n      ],\n      [\n        \"▁Utiliz\",\n        -12.54294490814209\n      ],\n      [\n        \"framed\",\n        -12.542973518371582\n      ],\n      [\n        \"▁asphalt\",\n        -12.543050765991211\n      ],\n      [\n        \"116\",\n        -12.543061256408691\n      ],\n      [\n        \"▁historically\",\n        -12.54310417175293\n      ],\n      [\n        \"▁doamn\",\n        -12.543176651000977\n      ],\n      [\n        \"Air\",\n        -12.543293952941895\n      ],\n      [\n        \"▁economist\",\n        -12.543838500976562\n      ],\n      [\n        \"fresh\",\n        -12.54384994506836\n      ],\n      [\n        \"engine\",\n        -12.543906211853027\n      ],\n      [\n        \"▁Rücken\",\n        -12.543919563293457\n      ],\n      [\n        \"▁worthwhile\",\n        -12.544124603271484\n      ],\n      [\n        \"▁Therapie\",\n        -12.544140815734863\n      ],\n      [\n        \"▁Joshua\",\n        -12.544151306152344\n      ],\n      [\n        \"sicherheit\",\n        -12.544175148010254\n      ],\n      [\n        \"▁scena\",\n        -12.544254302978516\n      ],\n      [\n        \"ifiant\",\n        -12.54433822631836\n      ],\n      [\n        \"/20\",\n        -12.54442024230957\n      ],\n      [\n        \"fehl\",\n        -12.544469833374023\n      ],\n      [\n        \"karten\",\n        -12.544515609741211\n      ],\n      [\n        \"501\",\n        -12.544656753540039\n      ],\n      [\n        \"▁vide\",\n        -12.544673919677734\n      ],\n      [\n        \"▁miliarde\",\n        -12.544699668884277\n      ],\n      [\n        \"▁trillion\",\n        -12.54470157623291\n      ],\n      [\n        \"oudre\",\n        -12.544761657714844\n      ],\n      [\n        \"nderung\",\n        -12.544803619384766\n      ],\n      [\n        \"▁inquiries\",\n        -12.544992446899414\n      ],\n      [\n        \"▁echipe\",\n        -12.545034408569336\n      ],\n      [\n        \"▁investiga\",\n        -12.545040130615234\n      ],\n      [\n        \"▁detailing\",\n        -12.545042991638184\n      ],\n      [\n        \"VIS\",\n        -12.545086860656738\n      ],\n      [\n        \"▁geographical\",\n        -12.545157432556152\n      ],\n      [\n        \"▁authentication\",\n        -12.54519271850586\n      ],\n      [\n        \"▁Schwa\",\n        -12.545201301574707\n      ],\n      [\n        \"▁Scri\",\n        -12.545230865478516\n      ],\n      [\n        \"▁discourage\",\n        -12.54527473449707\n      ],\n      [\n        \"Pass\",\n        -12.54529094696045\n      ],\n      [\n        \"▁scattered\",\n        -12.54529857635498\n      ],\n      [\n        \"▁langsam\",\n        -12.545300483703613\n      ],\n      [\n        \"telles\",\n        -12.545380592346191\n      ],\n      [\n        \"▁ramane\",\n        -12.5454740524292\n      ],\n      [\n        \"▁inhibitor\",\n        -12.545486450195312\n      ],\n      [\n        \"▁Habit\",\n        -12.54556941986084\n      ],\n      [\n        \"▁10:00\",\n        -12.545577049255371\n      ],\n      [\n        \"▁rezultat\",\n        -12.545595169067383\n      ],\n      [\n        \"äck\",\n        -12.545943260192871\n      ],\n      [\n        \",000.\",\n        -12.545979499816895\n      ],\n      [\n        \"▁remedies\",\n        -12.546103477478027\n      ],\n      [\n        \"▁comportament\",\n        -12.546195983886719\n      ],\n      [\n        \"namen\",\n        -12.546229362487793\n      ],\n      [\n        \"▁#3\",\n        -12.546327590942383\n      ],\n      [\n        \"enstein\",\n        -12.546493530273438\n      ],\n      [\n        \"▁relevance\",\n        -12.546516418457031\n      ],\n      [\n        \"▁présentation\",\n        -12.54655933380127\n      ],\n      [\n        \"MHz\",\n        -12.546648979187012\n      ],\n      [\n        \"EMA\",\n        -12.546661376953125\n      ],\n      [\n        \"▁palace\",\n        -12.546709060668945\n      ],\n      [\n        \"▁vizibil\",\n        -12.546723365783691\n      ],\n      [\n        \"▁griev\",\n        -12.546820640563965\n      ],\n      [\n        \"▁severely\",\n        -12.54688549041748\n      ],\n      [\n        \"expert\",\n        -12.546942710876465\n      ],\n      [\n        \"▁ravi\",\n        -12.54696273803711\n      ],\n      [\n        \"▁feasible\",\n        -12.547002792358398\n      ],\n      [\n        \"▁Wholesale\",\n        -12.547009468078613\n      ],\n      [\n        \"▁graduat\",\n        -12.547077178955078\n      ],\n      [\n        \"Kü\",\n        -12.547094345092773\n      ],\n      [\n        \"▁quotation\",\n        -12.547157287597656\n      ],\n      [\n        \"/11\",\n        -12.54716968536377\n      ],\n      [\n        \"lutter\",\n        -12.547415733337402\n      ],\n      [\n        \"▁dice\",\n        -12.547467231750488\n      ],\n      [\n        \"modal\",\n        -12.547749519348145\n      ],\n      [\n        \"ggling\",\n        -12.547819137573242\n      ],\n      [\n        \"▁considér\",\n        -12.547986030578613\n      ],\n      [\n        \"▁Insel\",\n        -12.548097610473633\n      ],\n      [\n        \"▁Database\",\n        -12.5483980178833\n      ],\n      [\n        \"icism\",\n        -12.548508644104004\n      ],\n      [\n        \"▁quarterly\",\n        -12.54851245880127\n      ],\n      [\n        \"▁formule\",\n        -12.548558235168457\n      ],\n      [\n        \"▁renouvel\",\n        -12.54873275756836\n      ],\n      [\n        \"▁Treasure\",\n        -12.548737525939941\n      ],\n      [\n        \"▁1962\",\n        -12.548844337463379\n      ],\n      [\n        \"▁republic\",\n        -12.549111366271973\n      ],\n      [\n        \"▁États\",\n        -12.549254417419434\n      ],\n      [\n        \"▁salut\",\n        -12.549356460571289\n      ],\n      [\n        \"HK\",\n        -12.54941463470459\n      ],\n      [\n        \"▁Bali\",\n        -12.549427032470703\n      ],\n      [\n        \"▁Rechnung\",\n        -12.549447059631348\n      ],\n      [\n        \"fruit\",\n        -12.54945182800293\n      ],\n      [\n        \"lays\",\n        -12.549467086791992\n      ],\n      [\n        \"LAS\",\n        -12.54951000213623\n      ],\n      [\n        \"inclin\",\n        -12.549708366394043\n      ],\n      [\n        \"▁Cré\",\n        -12.549813270568848\n      ],\n      [\n        \"▁compt\",\n        -12.54985237121582\n      ],\n      [\n        \"țiilor\",\n        -12.550056457519531\n      ],\n      [\n        \"heft\",\n        -12.550111770629883\n      ],\n      [\n        \"▁Comisi\",\n        -12.55024242401123\n      ],\n      [\n        \"▁Nurse\",\n        -12.550516128540039\n      ],\n      [\n        \"loid\",\n        -12.550540924072266\n      ],\n      [\n        \"grove\",\n        -12.550761222839355\n      ],\n      [\n        \"▁Copy\",\n        -12.550867080688477\n      ],\n      [\n        \"▁Kampf\",\n        -12.550873756408691\n      ],\n      [\n        \"izată\",\n        -12.550945281982422\n      ],\n      [\n        \"würdig\",\n        -12.551244735717773\n      ],\n      [\n        \"-2018\",\n        -12.551305770874023\n      ],\n      [\n        \"ozo\",\n        -12.551350593566895\n      ],\n      [\n        \"▁integriert\",\n        -12.551397323608398\n      ],\n      [\n        \"▁réunion\",\n        -12.551448822021484\n      ],\n      [\n        \"▁mică\",\n        -12.551520347595215\n      ],\n      [\n        \"▁Chau\",\n        -12.551595687866211\n      ],\n      [\n        \"▁allegations\",\n        -12.551626205444336\n      ],\n      [\n        \"▁shaping\",\n        -12.551640510559082\n      ],\n      [\n        \"▁transcription\",\n        -12.551671981811523\n      ],\n      [\n        \"▁Monica\",\n        -12.551711082458496\n      ],\n      [\n        \"▁torture\",\n        -12.551795959472656\n      ],\n      [\n        \"▁cooperative\",\n        -12.551962852478027\n      ],\n      [\n        \"▁invité\",\n        -12.551987648010254\n      ],\n      [\n        \"▁bamboo\",\n        -12.552204132080078\n      ],\n      [\n        \"▁Thinking\",\n        -12.55232048034668\n      ],\n      [\n        \"▁gratis\",\n        -12.552392959594727\n      ],\n      [\n        \"117\",\n        -12.55267333984375\n      ],\n      [\n        \"renz\",\n        -12.55279541015625\n      ],\n      [\n        \"▁Fußball\",\n        -12.552823066711426\n      ],\n      [\n        \"▁Gram\",\n        -12.552873611450195\n      ],\n      [\n        \"sprung\",\n        -12.55290412902832\n      ],\n      [\n        \"▁Schluss\",\n        -12.55308723449707\n      ],\n      [\n        \"▁Diploma\",\n        -12.553345680236816\n      ],\n      [\n        \"▁apparatus\",\n        -12.553363800048828\n      ],\n      [\n        \"notably\",\n        -12.553483963012695\n      ],\n      [\n        \"▁exercit\",\n        -12.553532600402832\n      ],\n      [\n        \"ământ\",\n        -12.553536415100098\n      ],\n      [\n        \"▁masses\",\n        -12.553610801696777\n      ],\n      [\n        \"▁preuve\",\n        -12.553642272949219\n      ],\n      [\n        \"great\",\n        -12.553754806518555\n      ],\n      [\n        \"▁Drink\",\n        -12.553792953491211\n      ],\n      [\n        \"islam\",\n        -12.553828239440918\n      ],\n      [\n        \"ARM\",\n        -12.553914070129395\n      ],\n      [\n        \"indre\",\n        -12.554404258728027\n      ],\n      [\n        \"DW\",\n        -12.554410934448242\n      ],\n      [\n        \"▁Flowers\",\n        -12.554500579833984\n      ],\n      [\n        \"▁pill\",\n        -12.554574966430664\n      ],\n      [\n        \"▁objectifs\",\n        -12.554594039916992\n      ],\n      [\n        \"▁Bezug\",\n        -12.554659843444824\n      ],\n      [\n        \"▁assumptions\",\n        -12.55466365814209\n      ],\n      [\n        \"▁vesti\",\n        -12.554742813110352\n      ],\n      [\n        \"route\",\n        -12.554783821105957\n      ],\n      [\n        \"▁Bangkok\",\n        -12.554815292358398\n      ],\n      [\n        \"▁seamlessly\",\n        -12.55482006072998\n      ],\n      [\n        \"config\",\n        -12.554882049560547\n      ],\n      [\n        \"▁username\",\n        -12.554890632629395\n      ],\n      [\n        \"unsure\",\n        -12.555024147033691\n      ],\n      [\n        \"▁poser\",\n        -12.555129051208496\n      ],\n      [\n        \"▁impozit\",\n        -12.555246353149414\n      ],\n      [\n        \"▁metode\",\n        -12.555333137512207\n      ],\n      [\n        \"defending\",\n        -12.555347442626953\n      ],\n      [\n        \"▁Nic\",\n        -12.555431365966797\n      ],\n      [\n        \"▁Vertrag\",\n        -12.555508613586426\n      ],\n      [\n        \"▁plăcut\",\n        -12.55552864074707\n      ],\n      [\n        \"▁Pou\",\n        -12.555675506591797\n      ],\n      [\n        \"UCH\",\n        -12.555785179138184\n      ],\n      [\n        \"▁Fein\",\n        -12.555903434753418\n      ],\n      [\n        \"reading\",\n        -12.555994987487793\n      ],\n      [\n        \"snip\",\n        -12.55604076385498\n      ],\n      [\n        \"▁Livre\",\n        -12.556401252746582\n      ],\n      [\n        \"lander\",\n        -12.556509971618652\n      ],\n      [\n        \"▁hydraulic\",\n        -12.556559562683105\n      ],\n      [\n        \"veiled\",\n        -12.556563377380371\n      ],\n      [\n        \"intr\",\n        -12.556609153747559\n      ],\n      [\n        \"▁Domnului\",\n        -12.556641578674316\n      ],\n      [\n        \"▁$0.\",\n        -12.556713104248047\n      ],\n      [\n        \"▁kilometers\",\n        -12.556753158569336\n      ],\n      [\n        \"spann\",\n        -12.556870460510254\n      ],\n      [\n        \"▁credibility\",\n        -12.556892395019531\n      ],\n      [\n        \"▁eBook\",\n        -12.556953430175781\n      ],\n      [\n        \"VERY\",\n        -12.556994438171387\n      ],\n      [\n        \"▁Charm\",\n        -12.557122230529785\n      ],\n      [\n        \"Evangeli\",\n        -12.557193756103516\n      ],\n      [\n        \"▁anderer\",\n        -12.557193756103516\n      ],\n      [\n        \"▁Entry\",\n        -12.557195663452148\n      ],\n      [\n        \"ffy\",\n        -12.5573148727417\n      ],\n      [\n        \"▁Exc\",\n        -12.55737018585205\n      ],\n      [\n        \"▁Omega\",\n        -12.557446479797363\n      ],\n      [\n        \"▁Funktionen\",\n        -12.557455062866211\n      ],\n      [\n        \"▁Gay\",\n        -12.55752182006836\n      ],\n      [\n        \"▁acht\",\n        -12.557608604431152\n      ],\n      [\n        \"colored\",\n        -12.557615280151367\n      ],\n      [\n        \"itude\",\n        -12.557634353637695\n      ],\n      [\n        \"▁accompagné\",\n        -12.557645797729492\n      ],\n      [\n        \"▁unfortunate\",\n        -12.557981491088867\n      ],\n      [\n        \"▁DIN\",\n        -12.558091163635254\n      ],\n      [\n        \"▁installment\",\n        -12.558252334594727\n      ],\n      [\n        \"▁indépendant\",\n        -12.558307647705078\n      ],\n      [\n        \"These\",\n        -12.558364868164062\n      ],\n      [\n        \"mitten\",\n        -12.558394432067871\n      ],\n      [\n        \"thank\",\n        -12.558470726013184\n      ],\n      [\n        \"▁Trek\",\n        -12.558721542358398\n      ],\n      [\n        \"üchte\",\n        -12.55874252319336\n      ],\n      [\n        \"▁cuir\",\n        -12.55875015258789\n      ],\n      [\n        \"▁turbo\",\n        -12.558802604675293\n      ],\n      [\n        \"Table\",\n        -12.558847427368164\n      ],\n      [\n        \"▁Extrem\",\n        -12.558866500854492\n      ],\n      [\n        \"▁advertisements\",\n        -12.55915355682373\n      ],\n      [\n        \"▁chaîne\",\n        -12.559206008911133\n      ],\n      [\n        \"▁corridor\",\n        -12.559473991394043\n      ],\n      [\n        \"▁râ\",\n        -12.559651374816895\n      ],\n      [\n        \"▁Opening\",\n        -12.559718132019043\n      ],\n      [\n        \"Get\",\n        -12.559747695922852\n      ],\n      [\n        \"▁storytelling\",\n        -12.55976676940918\n      ],\n      [\n        \"▁severity\",\n        -12.559771537780762\n      ],\n      [\n        \"4\\\"\",\n        -12.559956550598145\n      ],\n      [\n        \"▁parasit\",\n        -12.559967994689941\n      ],\n      [\n        \"angebot\",\n        -12.56002426147461\n      ],\n      [\n        \"Data\",\n        -12.56005573272705\n      ],\n      [\n        \"listen\",\n        -12.560086250305176\n      ],\n      [\n        \"▁vârstă\",\n        -12.560094833374023\n      ],\n      [\n        \"▁swallow\",\n        -12.56025505065918\n      ],\n      [\n        \"TRE\",\n        -12.560321807861328\n      ],\n      [\n        \"▁daunting\",\n        -12.56035041809082\n      ],\n      [\n        \"▁Oli\",\n        -12.560481071472168\n      ],\n      [\n        \"▁definitive\",\n        -12.56066608428955\n      ],\n      [\n        \"▁rezerva\",\n        -12.560667037963867\n      ],\n      [\n        \"/15\",\n        -12.560807228088379\n      ],\n      [\n        \"▁Landschaft\",\n        -12.560887336730957\n      ],\n      [\n        \"▁Automotive\",\n        -12.560934066772461\n      ],\n      [\n        \"▁convers\",\n        -12.56113052368164\n      ],\n      [\n        \"▁thru\",\n        -12.561139106750488\n      ],\n      [\n        \"▁Township\",\n        -12.561140060424805\n      ],\n      [\n        \"▁tilt\",\n        -12.56119441986084\n      ],\n      [\n        \"▁Criminal\",\n        -12.561227798461914\n      ],\n      [\n        \"riez\",\n        -12.561407089233398\n      ],\n      [\n        \"▁Parking\",\n        -12.561440467834473\n      ],\n      [\n        \"▁humanitarian\",\n        -12.561518669128418\n      ],\n      [\n        \"▁Kilometer\",\n        -12.561529159545898\n      ],\n      [\n        \"controlled\",\n        -12.56189250946045\n      ],\n      [\n        \"▁Klick\",\n        -12.561910629272461\n      ],\n      [\n        \"support\",\n        -12.56199836730957\n      ],\n      [\n        \"handed\",\n        -12.562005996704102\n      ],\n      [\n        \"ämtliche\",\n        -12.562104225158691\n      ],\n      [\n        \"access\",\n        -12.562232971191406\n      ],\n      [\n        \"▁eleven\",\n        -12.562232971191406\n      ],\n      [\n        \"▁ferry\",\n        -12.56229305267334\n      ],\n      [\n        \"zieren\",\n        -12.562620162963867\n      ],\n      [\n        \"▁Gebrauch\",\n        -12.562688827514648\n      ],\n      [\n        \"▁vigoare\",\n        -12.562689781188965\n      ],\n      [\n        \"MON\",\n        -12.562756538391113\n      ],\n      [\n        \"fox\",\n        -12.562886238098145\n      ],\n      [\n        \"bestimmten\",\n        -12.562894821166992\n      ],\n      [\n        \"▁Gur\",\n        -12.563069343566895\n      ],\n      [\n        \"▁Mannschaft\",\n        -12.563146591186523\n      ],\n      [\n        \"▁patrol\",\n        -12.563173294067383\n      ],\n      [\n        \"▁casă\",\n        -12.563376426696777\n      ],\n      [\n        \"▁Stories\",\n        -12.563380241394043\n      ],\n      [\n        \"▁robotic\",\n        -12.563425064086914\n      ],\n      [\n        \"tiri\",\n        -12.563576698303223\n      ],\n      [\n        \"gewiesen\",\n        -12.5636568069458\n      ],\n      [\n        \"CV\",\n        -12.563722610473633\n      ],\n      [\n        \"▁parinti\",\n        -12.563899040222168\n      ],\n      [\n        \"▁Owen\",\n        -12.563931465148926\n      ],\n      [\n        \"▁Katie\",\n        -12.564116477966309\n      ],\n      [\n        \"▁Combine\",\n        -12.56422233581543\n      ],\n      [\n        \"enfalls\",\n        -12.56442928314209\n      ],\n      [\n        \"▁financière\",\n        -12.564447402954102\n      ],\n      [\n        \"▁parliament\",\n        -12.564549446105957\n      ],\n      [\n        \"▁Weekend\",\n        -12.564616203308105\n      ],\n      [\n        \"▁Sonic\",\n        -12.564757347106934\n      ],\n      [\n        \"▁fixture\",\n        -12.56479263305664\n      ],\n      [\n        \"majorité\",\n        -12.56497573852539\n      ],\n      [\n        \"▁gravel\",\n        -12.565028190612793\n      ],\n      [\n        \"realizate\",\n        -12.565109252929688\n      ],\n      [\n        \"examining\",\n        -12.565113067626953\n      ],\n      [\n        \"▁grim\",\n        -12.5653657913208\n      ],\n      [\n        \"▁stabili\",\n        -12.565458297729492\n      ],\n      [\n        \"▁Wochenende\",\n        -12.56551456451416\n      ],\n      [\n        \"▁Hebrew\",\n        -12.565597534179688\n      ],\n      [\n        \"▁Harrison\",\n        -12.565799713134766\n      ],\n      [\n        \"▁boundary\",\n        -12.565858840942383\n      ],\n      [\n        \"40,000\",\n        -12.565902709960938\n      ],\n      [\n        \"▁Ambassador\",\n        -12.566208839416504\n      ],\n      [\n        \"▁scoate\",\n        -12.566229820251465\n      ],\n      [\n        \"ffin\",\n        -12.56623363494873\n      ],\n      [\n        \"▁crème\",\n        -12.566269874572754\n      ],\n      [\n        \"▁obiecte\",\n        -12.566378593444824\n      ],\n      [\n        \"enţa\",\n        -12.566763877868652\n      ],\n      [\n        \"▁subsidiary\",\n        -12.566797256469727\n      ],\n      [\n        \"▁Franco\",\n        -12.56688404083252\n      ],\n      [\n        \"▁visuel\",\n        -12.567042350769043\n      ],\n      [\n        \"▁uitat\",\n        -12.56708812713623\n      ],\n      [\n        \"▁revisit\",\n        -12.567122459411621\n      ],\n      [\n        \"▁Camping\",\n        -12.567150115966797\n      ],\n      [\n        \"▁Divine\",\n        -12.567304611206055\n      ],\n      [\n        \"4-6\",\n        -12.567323684692383\n      ],\n      [\n        \"▁Brandon\",\n        -12.567378997802734\n      ],\n      [\n        \"ма\",\n        -12.567450523376465\n      ],\n      [\n        \"sofern\",\n        -12.56745433807373\n      ],\n      [\n        \"ntweder\",\n        -12.56748104095459\n      ],\n      [\n        \"▁Shoot\",\n        -12.567618370056152\n      ],\n      [\n        \"étais\",\n        -12.56771183013916\n      ],\n      [\n        \"SPEC\",\n        -12.567930221557617\n      ],\n      [\n        \"▁dreapta\",\n        -12.567973136901855\n      ],\n      [\n        \"▁repaired\",\n        -12.568055152893066\n      ],\n      [\n        \"pyr\",\n        -12.568136215209961\n      ],\n      [\n        \"▁warranties\",\n        -12.568175315856934\n      ],\n      [\n        \"▁représent\",\n        -12.568263053894043\n      ],\n      [\n        \"ADE\",\n        -12.568293571472168\n      ],\n      [\n        \"▁selective\",\n        -12.56836223602295\n      ],\n      [\n        \"▁Banking\",\n        -12.568441390991211\n      ],\n      [\n        \"▁ergonomic\",\n        -12.568562507629395\n      ],\n      [\n        \"...”\",\n        -12.568602561950684\n      ],\n      [\n        \"▁willingness\",\n        -12.56867790222168\n      ],\n      [\n        \"isser\",\n        -12.568784713745117\n      ],\n      [\n        \"▁confection\",\n        -12.568961143493652\n      ],\n      [\n        \"admi\",\n        -12.569009780883789\n      ],\n      [\n        \"▁Freizeit\",\n        -12.569023132324219\n      ],\n      [\n        \"▁illuminate\",\n        -12.569151878356934\n      ],\n      [\n        \"▁Repeat\",\n        -12.569170951843262\n      ],\n      [\n        \"▁Zeitpunkt\",\n        -12.56933879852295\n      ],\n      [\n        \"claimed\",\n        -12.569439888000488\n      ],\n      [\n        \"▁erhältlich\",\n        -12.569480895996094\n      ],\n      [\n        \"▁paysage\",\n        -12.569537162780762\n      ],\n      [\n        \"▁Atom\",\n        -12.569890022277832\n      ],\n      [\n        \"▁Graf\",\n        -12.570086479187012\n      ],\n      [\n        \"▁firmware\",\n        -12.570093154907227\n      ],\n      [\n        \"▁Swift\",\n        -12.570180892944336\n      ],\n      [\n        \"▁cercetare\",\n        -12.57018756866455\n      ],\n      [\n        \"▁internațional\",\n        -12.570330619812012\n      ],\n      [\n        \"▁zombie\",\n        -12.570330619812012\n      ],\n      [\n        \"▁Spread\",\n        -12.57050609588623\n      ],\n      [\n        \"ECO\",\n        -12.57056999206543\n      ],\n      [\n        \"▁Gestaltung\",\n        -12.570758819580078\n      ],\n      [\n        \"rast\",\n        -12.570858001708984\n      ],\n      [\n        \"▁perfume\",\n        -12.5709228515625\n      ],\n      [\n        \"▁roulette\",\n        -12.570924758911133\n      ],\n      [\n        \"▁distill\",\n        -12.57096004486084\n      ],\n      [\n        \"▁Produkten\",\n        -12.570992469787598\n      ],\n      [\n        \"225\",\n        -12.571310043334961\n      ],\n      [\n        \"facing\",\n        -12.571371078491211\n      ],\n      [\n        \"▁paradigm\",\n        -12.571514129638672\n      ],\n      [\n        \"▁Rah\",\n        -12.571532249450684\n      ],\n      [\n        \"▁Renault\",\n        -12.571846961975098\n      ],\n      [\n        \"willig\",\n        -12.571864128112793\n      ],\n      [\n        \"▁Vet\",\n        -12.571890830993652\n      ],\n      [\n        \"▁reprezenta\",\n        -12.572126388549805\n      ],\n      [\n        \"stoß\",\n        -12.572185516357422\n      ],\n      [\n        \"▁Weiß\",\n        -12.5722074508667\n      ],\n      [\n        \"▁Solo\",\n        -12.572210311889648\n      ],\n      [\n        \"▁Jin\",\n        -12.572646141052246\n      ],\n      [\n        \"▁Brussels\",\n        -12.572693824768066\n      ],\n      [\n        \"▁Tournament\",\n        -12.572693824768066\n      ],\n      [\n        \"▁proced\",\n        -12.572710037231445\n      ],\n      [\n        \"▁Rabbi\",\n        -12.572835922241211\n      ],\n      [\n        \"▁gameplay\",\n        -12.572851181030273\n      ],\n      [\n        \"▁ATM\",\n        -12.572901725769043\n      ],\n      [\n        \"▁firearm\",\n        -12.572906494140625\n      ],\n      [\n        \"revealing\",\n        -12.573003768920898\n      ],\n      [\n        \"schütz\",\n        -12.57310676574707\n      ],\n      [\n        \"▁Absolutely\",\n        -12.573288917541504\n      ],\n      [\n        \"▁interference\",\n        -12.573433876037598\n      ],\n      [\n        \"▁Employment\",\n        -12.573558807373047\n      ],\n      [\n        \"▁chord\",\n        -12.57356071472168\n      ],\n      [\n        \"▁oportun\",\n        -12.573585510253906\n      ],\n      [\n        \"▁frontier\",\n        -12.573770523071289\n      ],\n      [\n        \"▁Lunch\",\n        -12.573891639709473\n      ],\n      [\n        \"bread\",\n        -12.57397174835205\n      ],\n      [\n        \"▁rendered\",\n        -12.573976516723633\n      ],\n      [\n        \"5.1\",\n        -12.573984146118164\n      ],\n      [\n        \"▁motif\",\n        -12.574066162109375\n      ],\n      [\n        \"▁Schlag\",\n        -12.574227333068848\n      ],\n      [\n        \"113\",\n        -12.574264526367188\n      ],\n      [\n        \"▁Deux\",\n        -12.574288368225098\n      ],\n      [\n        \"▁surplus\",\n        -12.574309349060059\n      ],\n      [\n        \"ALS\",\n        -12.574417114257812\n      ],\n      [\n        \"▁abortion\",\n        -12.574472427368164\n      ],\n      [\n        \"▁airplane\",\n        -12.574475288391113\n      ],\n      [\n        \"▁migrants\",\n        -12.574501991271973\n      ],\n      [\n        \"kli\",\n        -12.574539184570312\n      ],\n      [\n        \"▁crochet\",\n        -12.57454776763916\n      ],\n      [\n        \"fahrer\",\n        -12.574671745300293\n      ],\n      [\n        \"▁reconstruction\",\n        -12.57471752166748\n      ],\n      [\n        \"▁difer\",\n        -12.574752807617188\n      ],\n      [\n        \"▁Conserv\",\n        -12.57478141784668\n      ],\n      [\n        \"▁NSW\",\n        -12.57479476928711\n      ],\n      [\n        \"▁regim\",\n        -12.574844360351562\n      ],\n      [\n        \"▁Except\",\n        -12.574904441833496\n      ],\n      [\n        \"▁trage\",\n        -12.574978828430176\n      ],\n      [\n        \"▁Consiliul\",\n        -12.575058937072754\n      ],\n      [\n        \"▁Bedarf\",\n        -12.575064659118652\n      ],\n      [\n        \"▁additive\",\n        -12.5750732421875\n      ],\n      [\n        \"know\",\n        -12.5751371383667\n      ],\n      [\n        \"▁sauna\",\n        -12.57517147064209\n      ],\n      [\n        \"▁mortality\",\n        -12.575201034545898\n      ],\n      [\n        \"kräftig\",\n        -12.575358390808105\n      ],\n      [\n        \"▁Own\",\n        -12.575445175170898\n      ],\n      [\n        \"nzo\",\n        -12.575519561767578\n      ],\n      [\n        \"▁villes\",\n        -12.575543403625488\n      ],\n      [\n        \"▁recette\",\n        -12.575749397277832\n      ],\n      [\n        \"▁attacking\",\n        -12.575799942016602\n      ],\n      [\n        \"beruf\",\n        -12.57608699798584\n      ],\n      [\n        \"▁integrat\",\n        -12.57612419128418\n      ],\n      [\n        \"realizarea\",\n        -12.576201438903809\n      ],\n      [\n        \"▁exemption\",\n        -12.57628345489502\n      ],\n      [\n        \"GW\",\n        -12.576285362243652\n      ],\n      [\n        \"▁Nano\",\n        -12.576395034790039\n      ],\n      [\n        \"SCH\",\n        -12.576440811157227\n      ],\n      [\n        \"▁honesty\",\n        -12.576457023620605\n      ],\n      [\n        \"▁Arriv\",\n        -12.576515197753906\n      ],\n      [\n        \"▁gland\",\n        -12.576542854309082\n      ],\n      [\n        \"▁proactive\",\n        -12.576746940612793\n      ],\n      [\n        \"▁agile\",\n        -12.576837539672852\n      ],\n      [\n        \"▁kernel\",\n        -12.576844215393066\n      ],\n      [\n        \"▁nurture\",\n        -12.576860427856445\n      ],\n      [\n        \"▁Patent\",\n        -12.576963424682617\n      ],\n      [\n        \"▁excursi\",\n        -12.577189445495605\n      ],\n      [\n        \"pulsion\",\n        -12.577326774597168\n      ],\n      [\n        \"stellte\",\n        -12.577351570129395\n      ],\n      [\n        \"ständige\",\n        -12.577421188354492\n      ],\n      [\n        \"▁Rebecca\",\n        -12.577436447143555\n      ],\n      [\n        \"▁Securities\",\n        -12.577436447143555\n      ],\n      [\n        \"mètre\",\n        -12.577446937561035\n      ],\n      [\n        \"LOW\",\n        -12.577469825744629\n      ],\n      [\n        \"▁consilier\",\n        -12.577537536621094\n      ],\n      [\n        \"▁Architekt\",\n        -12.577733993530273\n      ],\n      [\n        \"▁china\",\n        -12.57777214050293\n      ],\n      [\n        \"älfte\",\n        -12.577778816223145\n      ],\n      [\n        \"▁Combin\",\n        -12.577795028686523\n      ],\n      [\n        \"480\",\n        -12.577999114990234\n      ],\n      [\n        \"liv\",\n        -12.578021049499512\n      ],\n      [\n        \"▁peur\",\n        -12.578067779541016\n      ],\n      [\n        \"keep\",\n        -12.57822322845459\n      ],\n      [\n        \"▁Verhalten\",\n        -12.578324317932129\n      ],\n      [\n        \"▁peek\",\n        -12.578446388244629\n      ],\n      [\n        \"▁dient\",\n        -12.578550338745117\n      ],\n      [\n        \"▁prevazut\",\n        -12.578625679016113\n      ],\n      [\n        \"Emmanuel\",\n        -12.57862663269043\n      ],\n      [\n        \"▁incidence\",\n        -12.57862663269043\n      ],\n      [\n        \"▁Framework\",\n        -12.578715324401855\n      ],\n      [\n        \"dass\",\n        -12.578816413879395\n      ],\n      [\n        \"artiste\",\n        -12.578874588012695\n      ],\n      [\n        \"▁Accept\",\n        -12.578971862792969\n      ],\n      [\n        \"▁plunge\",\n        -12.579073905944824\n      ],\n      [\n        \"chauff\",\n        -12.579118728637695\n      ],\n      [\n        \"▁guilt\",\n        -12.579156875610352\n      ],\n      [\n        \"▁senator\",\n        -12.57945442199707\n      ],\n      [\n        \"▁disable\",\n        -12.579776763916016\n      ],\n      [\n        \"▁partout\",\n        -12.579901695251465\n      ],\n      [\n        \"JC\",\n        -12.580045700073242\n      ],\n      [\n        \"▁Highly\",\n        -12.580150604248047\n      ],\n      [\n        \"▁beneficii\",\n        -12.58021068572998\n      ],\n      [\n        \"fibro\",\n        -12.580347061157227\n      ],\n      [\n        \"interpreted\",\n        -12.580550193786621\n      ],\n      [\n        \"▁genauso\",\n        -12.58056354522705\n      ],\n      [\n        \"▁basil\",\n        -12.580601692199707\n      ],\n      [\n        \"▁Angst\",\n        -12.580697059631348\n      ],\n      [\n        \"rzte\",\n        -12.580933570861816\n      ],\n      [\n        \"Master\",\n        -12.58112907409668\n      ],\n      [\n        \"▁french\",\n        -12.581324577331543\n      ],\n      [\n        \"▁Duration\",\n        -12.581343650817871\n      ],\n      [\n        \"HM\",\n        -12.581402778625488\n      ],\n      [\n        \"▁Bert\",\n        -12.581518173217773\n      ],\n      [\n        \"▁1963\",\n        -12.581534385681152\n      ],\n      [\n        \"▁warrior\",\n        -12.581604957580566\n      ],\n      [\n        \"2007\",\n        -12.581696510314941\n      ],\n      [\n        \"▁recycle\",\n        -12.581722259521484\n      ],\n      [\n        \"▁fertiliz\",\n        -12.581808090209961\n      ],\n      [\n        \"▁hatch\",\n        -12.581809997558594\n      ],\n      [\n        \"ISH\",\n        -12.581811904907227\n      ],\n      [\n        \"luft\",\n        -12.582321166992188\n      ],\n      [\n        \"▁crying\",\n        -12.582452774047852\n      ],\n      [\n        \"▁activist\",\n        -12.5824613571167\n      ],\n      [\n        \"schränkt\",\n        -12.582500457763672\n      ],\n      [\n        \"▁diff\",\n        -12.582500457763672\n      ],\n      [\n        \"▁Demand\",\n        -12.58262825012207\n      ],\n      [\n        \"▁transported\",\n        -12.582669258117676\n      ],\n      [\n        \"▁Remodel\",\n        -12.582686424255371\n      ],\n      [\n        \"▁Etats\",\n        -12.582704544067383\n      ],\n      [\n        \"ANI\",\n        -12.582777976989746\n      ],\n      [\n        \"▁spéciale\",\n        -12.582804679870605\n      ],\n      [\n        \"▁Konzert\",\n        -12.582805633544922\n      ],\n      [\n        \"▁Bedürfnisse\",\n        -12.58281135559082\n      ],\n      [\n        \"▁overlooked\",\n        -12.582864761352539\n      ],\n      [\n        \"▁cutter\",\n        -12.582974433898926\n      ],\n      [\n        \"klär\",\n        -12.58311939239502\n      ],\n      [\n        \"▁Materialien\",\n        -12.583135604858398\n      ],\n      [\n        \"▁gewisse\",\n        -12.583388328552246\n      ],\n      [\n        \"bull\",\n        -12.583499908447266\n      ],\n      [\n        \"Good\",\n        -12.583513259887695\n      ],\n      [\n        \"Gig\",\n        -12.583616256713867\n      ],\n      [\n        \"Logic\",\n        -12.583736419677734\n      ],\n      [\n        \"▁Schlaf\",\n        -12.583970069885254\n      ],\n      [\n        \"▁Yankee\",\n        -12.583996772766113\n      ],\n      [\n        \"▁Batman\",\n        -12.584020614624023\n      ],\n      [\n        \"▁funcție\",\n        -12.584166526794434\n      ],\n      [\n        \"▁partenariat\",\n        -12.584294319152832\n      ],\n      [\n        \"▁Antrag\",\n        -12.584348678588867\n      ],\n      [\n        \"▁Pill\",\n        -12.584519386291504\n      ],\n      [\n        \"▁tram\",\n        -12.584637641906738\n      ],\n      [\n        \"▁Minor\",\n        -12.58465576171875\n      ],\n      [\n        \"pertaining\",\n        -12.584678649902344\n      ],\n      [\n        \"▁apropiere\",\n        -12.584843635559082\n      ],\n      [\n        \"▁Barack\",\n        -12.584965705871582\n      ],\n      [\n        \"schön\",\n        -12.585174560546875\n      ],\n      [\n        \"▁Sandy\",\n        -12.585182189941406\n      ],\n      [\n        \"kilometre\",\n        -12.585192680358887\n      ],\n      [\n        \"▁diy\",\n        -12.585234642028809\n      ],\n      [\n        \"▁1966\",\n        -12.585453987121582\n      ],\n      [\n        \"gelassen\",\n        -12.585485458374023\n      ],\n      [\n        \"▁Trial\",\n        -12.585592269897461\n      ],\n      [\n        \"▁Bauer\",\n        -12.585603713989258\n      ],\n      [\n        \"▁assumption\",\n        -12.585648536682129\n      ],\n      [\n        \"birth\",\n        -12.585668563842773\n      ],\n      [\n        \"rechnen\",\n        -12.585861206054688\n      ],\n      [\n        \"▁meci\",\n        -12.585867881774902\n      ],\n      [\n        \"▁gloss\",\n        -12.585906982421875\n      ],\n      [\n        \"▁sewer\",\n        -12.58593463897705\n      ],\n      [\n        \"▁Stimme\",\n        -12.585955619812012\n      ],\n      [\n        \"▁Fortune\",\n        -12.585967063903809\n      ],\n      [\n        \"▁Lösungen\",\n        -12.586007118225098\n      ],\n      [\n        \"▁impresi\",\n        -12.586074829101562\n      ],\n      [\n        \"schlaf\",\n        -12.586089134216309\n      ],\n      [\n        \"prüfung\",\n        -12.586097717285156\n      ],\n      [\n        \"▁instalat\",\n        -12.586198806762695\n      ],\n      [\n        \"▁picturesque\",\n        -12.586233139038086\n      ],\n      [\n        \"vait\",\n        -12.586240768432617\n      ],\n      [\n        \"8.1\",\n        -12.58629035949707\n      ],\n      [\n        \"▁călători\",\n        -12.586392402648926\n      ],\n      [\n        \"▁dix\",\n        -12.586400032043457\n      ],\n      [\n        \"▁furnished\",\n        -12.586411476135254\n      ],\n      [\n        \"▁dolari\",\n        -12.586445808410645\n      ],\n      [\n        \"▁regener\",\n        -12.586562156677246\n      ],\n      [\n        \"▁astazi\",\n        -12.586621284484863\n      ],\n      [\n        \"▁Sprach\",\n        -12.586750030517578\n      ],\n      [\n        \"delà\",\n        -12.586846351623535\n      ],\n      [\n        \"avec\",\n        -12.58694076538086\n      ],\n      [\n        \"▁Buddhist\",\n        -12.586990356445312\n      ],\n      [\n        \"▁alphabet\",\n        -12.586990356445312\n      ],\n      [\n        \"▁berichtet\",\n        -12.587201118469238\n      ],\n      [\n        \"ideally\",\n        -12.587209701538086\n      ],\n      [\n        \"▁annuel\",\n        -12.587421417236328\n      ],\n      [\n        \"▁laughing\",\n        -12.587532997131348\n      ],\n      [\n        \"▁Zustand\",\n        -12.587639808654785\n      ],\n      [\n        \"cini\",\n        -12.587692260742188\n      ],\n      [\n        \"solid\",\n        -12.587724685668945\n      ],\n      [\n        \"▁Broker\",\n        -12.587868690490723\n      ],\n      [\n        \"▁developmental\",\n        -12.5879545211792\n      ],\n      [\n        \"▁Summary\",\n        -12.588191032409668\n      ],\n      [\n        \"▁Trinity\",\n        -12.58819580078125\n      ],\n      [\n        \"▁sucre\",\n        -12.58821964263916\n      ],\n      [\n        \"▁sandal\",\n        -12.588231086730957\n      ],\n      [\n        \"PEN\",\n        -12.588274955749512\n      ],\n      [\n        \"gewinn\",\n        -12.588486671447754\n      ],\n      [\n        \"olé\",\n        -12.588555335998535\n      ],\n      [\n        \"matric\",\n        -12.58865737915039\n      ],\n      [\n        \"xton\",\n        -12.588695526123047\n      ],\n      [\n        \"werten\",\n        -12.588740348815918\n      ],\n      [\n        \"▁Dust\",\n        -12.588765144348145\n      ],\n      [\n        \"▁Journey\",\n        -12.588791847229004\n      ],\n      [\n        \"▁Rush\",\n        -12.588793754577637\n      ],\n      [\n        \"▁NCAA\",\n        -12.588839530944824\n      ],\n      [\n        \"▁allgemeine\",\n        -12.588926315307617\n      ],\n      [\n        \"▁Universe\",\n        -12.589007377624512\n      ],\n      [\n        \"▁connais\",\n        -12.589099884033203\n      ],\n      [\n        \"▁quantité\",\n        -12.58912467956543\n      ],\n      [\n        \"▁Kab\",\n        -12.589150428771973\n      ],\n      [\n        \"▁purse\",\n        -12.589150428771973\n      ],\n      [\n        \"Health\",\n        -12.589210510253906\n      ],\n      [\n        \"▁apărut\",\n        -12.589288711547852\n      ],\n      [\n        \"▁bypass\",\n        -12.589313507080078\n      ],\n      [\n        \"pronounced\",\n        -12.58936595916748\n      ],\n      [\n        \"▁magnitude\",\n        -12.589393615722656\n      ],\n      [\n        \"▁Walmart\",\n        -12.589394569396973\n      ],\n      [\n        \"ède\",\n        -12.589409828186035\n      ],\n      [\n        \"▁serum\",\n        -12.589590072631836\n      ],\n      [\n        \"▁baseline\",\n        -12.589765548706055\n      ],\n      [\n        \"STER\",\n        -12.589932441711426\n      ],\n      [\n        \"▁ONLY\",\n        -12.590052604675293\n      ],\n      [\n        \"▁individuell\",\n        -12.590086936950684\n      ],\n      [\n        \"▁Ghi\",\n        -12.590139389038086\n      ],\n      [\n        \"▁Ruby\",\n        -12.59020709991455\n      ],\n      [\n        \"▁Chal\",\n        -12.590241432189941\n      ],\n      [\n        \"▁Vier\",\n        -12.590261459350586\n      ],\n      [\n        \"5.0\",\n        -12.5903902053833\n      ],\n      [\n        \"▁fog\",\n        -12.590519905090332\n      ],\n      [\n        \"esel\",\n        -12.590557098388672\n      ],\n      [\n        \"▁Python\",\n        -12.590598106384277\n      ],\n      [\n        \"▁urmează\",\n        -12.590608596801758\n      ],\n      [\n        \"▁trustworthy\",\n        -12.590639114379883\n      ],\n      [\n        \"hört\",\n        -12.590729713439941\n      ],\n      [\n        \"▁tâche\",\n        -12.59078311920166\n      ],\n      [\n        \"Patri\",\n        -12.590799331665039\n      ],\n      [\n        \"▁grind\",\n        -12.590928077697754\n      ],\n      [\n        \"▁Raven\",\n        -12.590934753417969\n      ],\n      [\n        \"▁poursuiv\",\n        -12.590951919555664\n      ],\n      [\n        \"▁simpli\",\n        -12.591140747070312\n      ],\n      [\n        \"▁echo\",\n        -12.591165542602539\n      ],\n      [\n        \"▁Attention\",\n        -12.591313362121582\n      ],\n      [\n        \"Against\",\n        -12.591402053833008\n      ],\n      [\n        \"GET\",\n        -12.59148120880127\n      ],\n      [\n        \"▁turistic\",\n        -12.591535568237305\n      ],\n      [\n        \"▁tenure\",\n        -12.59158992767334\n      ],\n      [\n        \"▁alimentaire\",\n        -12.591651916503906\n      ],\n      [\n        \"Who\",\n        -12.59172248840332\n      ],\n      [\n        \"▁ändern\",\n        -12.591729164123535\n      ],\n      [\n        \"▁rebound\",\n        -12.591778755187988\n      ],\n      [\n        \"grenze\",\n        -12.591849327087402\n      ],\n      [\n        \"▁Fame\",\n        -12.592093467712402\n      ],\n      [\n        \"▁Kick\",\n        -12.592215538024902\n      ],\n      [\n        \"▁Detail\",\n        -12.59228801727295\n      ],\n      [\n        \"▁Push\",\n        -12.592308044433594\n      ],\n      [\n        \"production\",\n        -12.592430114746094\n      ],\n      [\n        \"▁Candidates\",\n        -12.59244441986084\n      ],\n      [\n        \"▁reușit\",\n        -12.592484474182129\n      ],\n      [\n        \"istischen\",\n        -12.592525482177734\n      ],\n      [\n        \"lassung\",\n        -12.592649459838867\n      ],\n      [\n        \"▁Hann\",\n        -12.592713356018066\n      ],\n      [\n        \"espère\",\n        -12.592965126037598\n      ],\n      [\n        \"▁vergessen\",\n        -12.593008041381836\n      ],\n      [\n        \"▁smiling\",\n        -12.593010902404785\n      ],\n      [\n        \"▁devotion\",\n        -12.593016624450684\n      ],\n      [\n        \"▁pastry\",\n        -12.593071937561035\n      ],\n      [\n        \"Add\",\n        -12.593390464782715\n      ],\n      [\n        \"▁authorization\",\n        -12.593494415283203\n      ],\n      [\n        \"▁Suisse\",\n        -12.593568801879883\n      ],\n      [\n        \"▁Berkeley\",\n        -12.593611717224121\n      ],\n      [\n        \"▁Guild\",\n        -12.593660354614258\n      ],\n      [\n        \"▁choir\",\n        -12.593748092651367\n      ],\n      [\n        \"learning\",\n        -12.593802452087402\n      ],\n      [\n        \"▁Tanz\",\n        -12.593894004821777\n      ],\n      [\n        \"mardi\",\n        -12.594076156616211\n      ],\n      [\n        \"▁rezultatele\",\n        -12.594191551208496\n      ],\n      [\n        \"▁earrings\",\n        -12.594218254089355\n      ],\n      [\n        \"▁turbine\",\n        -12.594223976135254\n      ],\n      [\n        \"▁jeudi\",\n        -12.594284057617188\n      ],\n      [\n        \"terapie\",\n        -12.594576835632324\n      ],\n      [\n        \"regain\",\n        -12.59461498260498\n      ],\n      [\n        \"SET\",\n        -12.594643592834473\n      ],\n      [\n        \"▁Hände\",\n        -12.594681739807129\n      ],\n      [\n        \"▁Globe\",\n        -12.594683647155762\n      ],\n      [\n        \"frag\",\n        -12.594775199890137\n      ],\n      [\n        \"▁Treasury\",\n        -12.594820976257324\n      ],\n      [\n        \"▁hazardous\",\n        -12.594820976257324\n      ],\n      [\n        \"▁Fahrt\",\n        -12.594928741455078\n      ],\n      [\n        \"▁fulfilled\",\n        -12.594966888427734\n      ],\n      [\n        \"▁manga\",\n        -12.594987869262695\n      ],\n      [\n        \"▁composé\",\n        -12.595067977905273\n      ],\n      [\n        \"▁ABS\",\n        -12.595132827758789\n      ],\n      [\n        \"▁preced\",\n        -12.595197677612305\n      ],\n      [\n        \"▁beauté\",\n        -12.595233917236328\n      ],\n      [\n        \"▁interessant\",\n        -12.59526252746582\n      ],\n      [\n        \"▁lieber\",\n        -12.595324516296387\n      ],\n      [\n        \"▁Kö\",\n        -12.595378875732422\n      ],\n      [\n        \"EMS\",\n        -12.595410346984863\n      ],\n      [\n        \"FER\",\n        -12.595413208007812\n      ],\n      [\n        \"▁eure\",\n        -12.595427513122559\n      ],\n      [\n        \"▁plumber\",\n        -12.595427513122559\n      ],\n      [\n        \"Love\",\n        -12.595463752746582\n      ],\n      [\n        \"▁Marcus\",\n        -12.595635414123535\n      ],\n      [\n        \"▁registry\",\n        -12.595637321472168\n      ],\n      [\n        \"▁uncle\",\n        -12.595696449279785\n      ],\n      [\n        \"▁neuf\",\n        -12.595728874206543\n      ],\n      [\n        \"▁Fläche\",\n        -12.59575080871582\n      ],\n      [\n        \"▁restaur\",\n        -12.595815658569336\n      ],\n      [\n        \"▁noticeable\",\n        -12.595833778381348\n      ],\n      [\n        \"▁riches\",\n        -12.595871925354004\n      ],\n      [\n        \"occupy\",\n        -12.596031188964844\n      ],\n      [\n        \"▁hurricane\",\n        -12.596031188964844\n      ],\n      [\n        \"▁gespeichert\",\n        -12.596033096313477\n      ],\n      [\n        \"▁Bordeaux\",\n        -12.596039772033691\n      ],\n      [\n        \"▁Maj\",\n        -12.59637451171875\n      ],\n      [\n        \"Applied\",\n        -12.596439361572266\n      ],\n      [\n        \"▁compter\",\n        -12.596575736999512\n      ],\n      [\n        \"impact\",\n        -12.59663200378418\n      ],\n      [\n        \"▁Improve\",\n        -12.596758842468262\n      ],\n      [\n        \"▁Calif\",\n        -12.596832275390625\n      ],\n      [\n        \"▁desfășur\",\n        -12.596939086914062\n      ],\n      [\n        \"▁packaged\",\n        -12.597001075744629\n      ],\n      [\n        \"180\",\n        -12.59703540802002\n      ],\n      [\n        \"devenu\",\n        -12.597042083740234\n      ],\n      [\n        \"▁Battery\",\n        -12.597243309020996\n      ],\n      [\n        \"▁objection\",\n        -12.597254753112793\n      ],\n      [\n        \"▁anual\",\n        -12.597305297851562\n      ],\n      [\n        \"▁Landscape\",\n        -12.59731674194336\n      ],\n      [\n        \"IQ\",\n        -12.597403526306152\n      ],\n      [\n        \"grès\",\n        -12.597586631774902\n      ],\n      [\n        \"▁witnesses\",\n        -12.597750663757324\n      ],\n      [\n        \"enţial\",\n        -12.597764015197754\n      ],\n      [\n        \"▁plateau\",\n        -12.597779273986816\n      ],\n      [\n        \"▁bilete\",\n        -12.59783935546875\n      ],\n      [\n        \"▁Bronze\",\n        -12.59786605834961\n      ],\n      [\n        \"▁Kiss\",\n        -12.597946166992188\n      ],\n      [\n        \"▁Serge\",\n        -12.598093032836914\n      ],\n      [\n        \"atomic\",\n        -12.598145484924316\n      ],\n      [\n        \"▁renovated\",\n        -12.59817886352539\n      ],\n      [\n        \"player\",\n        -12.598212242126465\n      ],\n      [\n        \"▁dirig\",\n        -12.598291397094727\n      ],\n      [\n        \"▁Îm\",\n        -12.598296165466309\n      ],\n      [\n        \"▁plimb\",\n        -12.59843635559082\n      ],\n      [\n        \"▁ambassador\",\n        -12.598455429077148\n      ],\n      [\n        \"▁apropiat\",\n        -12.598455429077148\n      ],\n      [\n        \"▁adaug\",\n        -12.598602294921875\n      ],\n      [\n        \"ogenic\",\n        -12.59872055053711\n      ],\n      [\n        \"kämpfe\",\n        -12.598779678344727\n      ],\n      [\n        \"▁Hillary\",\n        -12.598907470703125\n      ],\n      [\n        \"yak\",\n        -12.598942756652832\n      ],\n      [\n        \"General\",\n        -12.59925365447998\n      ],\n      [\n        \"▁Zugang\",\n        -12.599400520324707\n      ],\n      [\n        \"▁fertil\",\n        -12.599457740783691\n      ],\n      [\n        \"incat\",\n        -12.599536895751953\n      ],\n      [\n        \"assessing\",\n        -12.599587440490723\n      ],\n      [\n        \"▁Cincinnati\",\n        -12.59967041015625\n      ],\n      [\n        \"▁convincing\",\n        -12.599685668945312\n      ],\n      [\n        \"sadly\",\n        -12.59974479675293\n      ],\n      [\n        \"kunde\",\n        -12.599801063537598\n      ],\n      [\n        \"ambul\",\n        -12.599913597106934\n      ],\n      [\n        \"▁familii\",\n        -12.599974632263184\n      ],\n      [\n        \"juri\",\n        -12.60007095336914\n      ],\n      [\n        \"ionen\",\n        -12.600102424621582\n      ],\n      [\n        \"▁Wirtschaft\",\n        -12.600130081176758\n      ],\n      [\n        \"contract\",\n        -12.600135803222656\n      ],\n      [\n        \"punem\",\n        -12.600151062011719\n      ],\n      [\n        \"handlung\",\n        -12.600394248962402\n      ],\n      [\n        \"▁fournir\",\n        -12.600455284118652\n      ],\n      [\n        \"▁Ambi\",\n        -12.600663185119629\n      ],\n      [\n        \"▁Isaac\",\n        -12.600663185119629\n      ],\n      [\n        \"▁praying\",\n        -12.6007719039917\n      ],\n      [\n        \"▁Italien\",\n        -12.600848197937012\n      ],\n      [\n        \"233\",\n        -12.600850105285645\n      ],\n      [\n        \"spawn\",\n        -12.600913047790527\n      ],\n      [\n        \"▁legii\",\n        -12.60092544555664\n      ],\n      [\n        \"▁zuvor\",\n        -12.601018905639648\n      ],\n      [\n        \"▁comune\",\n        -12.601030349731445\n      ],\n      [\n        \"official\",\n        -12.601165771484375\n      ],\n      [\n        \"144\",\n        -12.601290702819824\n      ],\n      [\n        \"izeaza\",\n        -12.601329803466797\n      ],\n      [\n        \"▁Keller\",\n        -12.601372718811035\n      ],\n      [\n        \"ORE\",\n        -12.601378440856934\n      ],\n      [\n        \"122\",\n        -12.601485252380371\n      ],\n      [\n        \"incurred\",\n        -12.60150146484375\n      ],\n      [\n        \"CHA\",\n        -12.601579666137695\n      ],\n      [\n        \"▁Herzen\",\n        -12.601590156555176\n      ],\n      [\n        \"▁reasoning\",\n        -12.6016263961792\n      ],\n      [\n        \"affaire\",\n        -12.601849555969238\n      ],\n      [\n        \"ooth\",\n        -12.601890563964844\n      ],\n      [\n        \"155\",\n        -12.601998329162598\n      ],\n      [\n        \"▁invented\",\n        -12.602113723754883\n      ],\n      [\n        \"▁Comun\",\n        -12.602140426635742\n      ],\n      [\n        \"zähl\",\n        -12.602179527282715\n      ],\n      [\n        \"geliefert\",\n        -12.602212905883789\n      ],\n      [\n        \"explorer\",\n        -12.602213859558105\n      ],\n      [\n        \"nect\",\n        -12.602326393127441\n      ],\n      [\n        \"▁mercredi\",\n        -12.602408409118652\n      ],\n      [\n        \"▁volonté\",\n        -12.602408409118652\n      ],\n      [\n        \"easy\",\n        -12.602453231811523\n      ],\n      [\n        \"▁feat\",\n        -12.602490425109863\n      ],\n      [\n        \"rented\",\n        -12.602580070495605\n      ],\n      [\n        \"▁converter\",\n        -12.602592468261719\n      ],\n      [\n        \"Verhältnis\",\n        -12.602713584899902\n      ],\n      [\n        \"▁Iceland\",\n        -12.602792739868164\n      ],\n      [\n        \"▁pretul\",\n        -12.602933883666992\n      ],\n      [\n        \"▁Vorstellung\",\n        -12.602960586547852\n      ],\n      [\n        \"▁hydrogen\",\n        -12.603096008300781\n      ],\n      [\n        \"▁pouvai\",\n        -12.603097915649414\n      ],\n      [\n        \"▁dawn\",\n        -12.603153228759766\n      ],\n      [\n        \"▁Georg\",\n        -12.603269577026367\n      ],\n      [\n        \"▁cautious\",\n        -12.603367805480957\n      ],\n      [\n        \"▁Pattern\",\n        -12.603464126586914\n      ],\n      [\n        \"▁Ox\",\n        -12.603602409362793\n      ],\n      [\n        \"▁decizie\",\n        -12.603676795959473\n      ],\n      [\n        \"REC\",\n        -12.603889465332031\n      ],\n      [\n        \"▁Mortgage\",\n        -12.60393238067627\n      ],\n      [\n        \"attributed\",\n        -12.603973388671875\n      ],\n      [\n        \"floor\",\n        -12.603992462158203\n      ],\n      [\n        \"▁Wichtig\",\n        -12.604207992553711\n      ],\n      [\n        \"enseignant\",\n        -12.604265213012695\n      ],\n      [\n        \"▁civilization\",\n        -12.604302406311035\n      ],\n      [\n        \"▁dispozitie\",\n        -12.60450553894043\n      ],\n      [\n        \"▁geographic\",\n        -12.604543685913086\n      ],\n      [\n        \"▁Kun\",\n        -12.604607582092285\n      ],\n      [\n        \"LIN\",\n        -12.604679107666016\n      ],\n      [\n        \"▁auzit\",\n        -12.604707717895508\n      ],\n      [\n        \"except\",\n        -12.604761123657227\n      ],\n      [\n        \"▁superbe\",\n        -12.604904174804688\n      ],\n      [\n        \"▁installé\",\n        -12.605000495910645\n      ],\n      [\n        \"▁Peninsula\",\n        -12.605154037475586\n      ],\n      [\n        \"▁norme\",\n        -12.605164527893066\n      ],\n      [\n        \"elul\",\n        -12.60517406463623\n      ],\n      [\n        \"▁Experten\",\n        -12.605256080627441\n      ],\n      [\n        \"expression\",\n        -12.605295181274414\n      ],\n      [\n        \"Christ\",\n        -12.605320930480957\n      ],\n      [\n        \"▁Fuel\",\n        -12.605369567871094\n      ],\n      [\n        \"▁muffin\",\n        -12.605485916137695\n      ],\n      [\n        \"▁lecteur\",\n        -12.605521202087402\n      ],\n      [\n        \"▁gifted\",\n        -12.605589866638184\n      ],\n      [\n        \"▁Japon\",\n        -12.605602264404297\n      ],\n      [\n        \"▁SSD\",\n        -12.605644226074219\n      ],\n      [\n        \"▁Calgary\",\n        -12.605765342712402\n      ],\n      [\n        \"▁hooked\",\n        -12.605876922607422\n      ],\n      [\n        \"▁Joan\",\n        -12.605896949768066\n      ],\n      [\n        \"▁tangible\",\n        -12.606083869934082\n      ],\n      [\n        \"FW\",\n        -12.606225967407227\n      ],\n      [\n        \"olli\",\n        -12.6062593460083\n      ],\n      [\n        \"▁Platinum\",\n        -12.606376647949219\n      ],\n      [\n        \"▁miniature\",\n        -12.606392860412598\n      ],\n      [\n        \"▁lump\",\n        -12.606608390808105\n      ],\n      [\n        \"ologische\",\n        -12.60689926147461\n      ],\n      [\n        \"▁Istanbul\",\n        -12.606987953186035\n      ],\n      [\n        \"▁Compar\",\n        -12.607060432434082\n      ],\n      [\n        \"tropic\",\n        -12.607256889343262\n      ],\n      [\n        \"KING\",\n        -12.607279777526855\n      ],\n      [\n        \"Präsident\",\n        -12.607297897338867\n      ],\n      [\n        \"▁fotografii\",\n        -12.607303619384766\n      ],\n      [\n        \"hoped\",\n        -12.607451438903809\n      ],\n      [\n        \"▁pâte\",\n        -12.607601165771484\n      ],\n      [\n        \"▁mercy\",\n        -12.60760498046875\n      ],\n      [\n        \"▁quiz\",\n        -12.607619285583496\n      ],\n      [\n        \"demonstrating\",\n        -12.607678413391113\n      ],\n      [\n        \"▁douce\",\n        -12.607832908630371\n      ],\n      [\n        \"▁Vest\",\n        -12.607841491699219\n      ],\n      [\n        \"▁Harvey\",\n        -12.6082181930542\n      ],\n      [\n        \"▁breit\",\n        -12.608227729797363\n      ],\n      [\n        \"▁Bereits\",\n        -12.608291625976562\n      ],\n      [\n        \"▁breakthrough\",\n        -12.608316421508789\n      ],\n      [\n        \"▁masterpiece\",\n        -12.608320236206055\n      ],\n      [\n        \"▁Chester\",\n        -12.60838794708252\n      ],\n      [\n        \"▁indiqué\",\n        -12.608451843261719\n      ],\n      [\n        \"hook\",\n        -12.60857105255127\n      ],\n      [\n        \"statutory\",\n        -12.608596801757812\n      ],\n      [\n        \"▁Direkt\",\n        -12.608617782592773\n      ],\n      [\n        \"▁specs\",\n        -12.608708381652832\n      ],\n      [\n        \"Drive\",\n        -12.608725547790527\n      ],\n      [\n        \"▁survivors\",\n        -12.608826637268066\n      ],\n      [\n        \"▁jackpot\",\n        -12.608840942382812\n      ],\n      [\n        \"▁garder\",\n        -12.608872413635254\n      ],\n      [\n        \"▁Geburtstag\",\n        -12.60887336730957\n      ],\n      [\n        \"145\",\n        -12.608963966369629\n      ],\n      [\n        \"▁Clay\",\n        -12.609028816223145\n      ],\n      [\n        \"▁WHO\",\n        -12.60906982421875\n      ],\n      [\n        \"▁Ellen\",\n        -12.609393119812012\n      ],\n      [\n        \"▁bonheur\",\n        -12.609440803527832\n      ],\n      [\n        \"▁hazards\",\n        -12.609440803527832\n      ],\n      [\n        \"▁Kaiser\",\n        -12.609488487243652\n      ],\n      [\n        \"▁tightly\",\n        -12.609506607055664\n      ],\n      [\n        \"Universitatea\",\n        -12.609529495239258\n      ],\n      [\n        \"▁rinse\",\n        -12.609533309936523\n      ],\n      [\n        \"▁passant\",\n        -12.609640121459961\n      ],\n      [\n        \"▁sânge\",\n        -12.609832763671875\n      ],\n      [\n        \"▁peuple\",\n        -12.60983657836914\n      ],\n      [\n        \"jungen\",\n        -12.609975814819336\n      ],\n      [\n        \"▁inappropriate\",\n        -12.610054969787598\n      ],\n      [\n        \"▁mitigate\",\n        -12.610066413879395\n      ],\n      [\n        \"MID\",\n        -12.610221862792969\n      ],\n      [\n        \"▁telecom\",\n        -12.610297203063965\n      ],\n      [\n        \"▁plaj\",\n        -12.610316276550293\n      ],\n      [\n        \"▁presupune\",\n        -12.610361099243164\n      ],\n      [\n        \"acco\",\n        -12.61038875579834\n      ],\n      [\n        \"expressing\",\n        -12.610654830932617\n      ],\n      [\n        \"▁Symphony\",\n        -12.61066722869873\n      ],\n      [\n        \"temperatur\",\n        -12.610710144042969\n      ],\n      [\n        \"▁activităţi\",\n        -12.610800743103027\n      ],\n      [\n        \"▁amended\",\n        -12.610847473144531\n      ],\n      [\n        \"▁rehab\",\n        -12.610909461975098\n      ],\n      [\n        \"▁sportiv\",\n        -12.611004829406738\n      ],\n      [\n        \"hotel\",\n        -12.611031532287598\n      ],\n      [\n        \"branche\",\n        -12.61103630065918\n      ],\n      [\n        \"▁Noch\",\n        -12.611079216003418\n      ],\n      [\n        \"▁1961\",\n        -12.611238479614258\n      ],\n      [\n        \"release\",\n        -12.611359596252441\n      ],\n      [\n        \"blaze\",\n        -12.611381530761719\n      ],\n      [\n        \"Adv\",\n        -12.61139965057373\n      ],\n      [\n        \"Line\",\n        -12.611671447753906\n      ],\n      [\n        \"▁financiare\",\n        -12.61184310913086\n      ],\n      [\n        \"▁chauffage\",\n        -12.611919403076172\n      ],\n      [\n        \"мо\",\n        -12.61192512512207\n      ],\n      [\n        \"schuhe\",\n        -12.612035751342773\n      ],\n      [\n        \"blé\",\n        -12.612040519714355\n      ],\n      [\n        \"▁Echo\",\n        -12.612468719482422\n      ],\n      [\n        \"▁remarks\",\n        -12.61253547668457\n      ],\n      [\n        \"scriu\",\n        -12.612629890441895\n      ],\n      [\n        \"Vir\",\n        -12.612701416015625\n      ],\n      [\n        \"War\",\n        -12.61271858215332\n      ],\n      [\n        \"atifs\",\n        -12.613006591796875\n      ],\n      [\n        \"RING\",\n        -12.613082885742188\n      ],\n      [\n        \"▁Instruction\",\n        -12.613150596618652\n      ],\n      [\n        \"▁verlassen\",\n        -12.613155364990234\n      ],\n      [\n        \"▁ergänz\",\n        -12.613234519958496\n      ],\n      [\n        \"▁Emil\",\n        -12.613248825073242\n      ],\n      [\n        \"▁empire\",\n        -12.613263130187988\n      ],\n      [\n        \"▁Einkauf\",\n        -12.613306999206543\n      ],\n      [\n        \"utigen\",\n        -12.613329887390137\n      ],\n      [\n        \"▁audition\",\n        -12.613390922546387\n      ],\n      [\n        \"travelled\",\n        -12.61347484588623\n      ],\n      [\n        \"ло\",\n        -12.613579750061035\n      ],\n      [\n        \"▁infinite\",\n        -12.613720893859863\n      ],\n      [\n        \"▁Lieblings\",\n        -12.613749504089355\n      ],\n      [\n        \"▁vân\",\n        -12.613754272460938\n      ],\n      [\n        \"▁spinning\",\n        -12.613778114318848\n      ],\n      [\n        \"converting\",\n        -12.614031791687012\n      ],\n      [\n        \"▁uncertain\",\n        -12.61415958404541\n      ],\n      [\n        \"restul\",\n        -12.614168167114258\n      ],\n      [\n        \"▁colourful\",\n        -12.61420726776123\n      ],\n      [\n        \"▁accountant\",\n        -12.614338874816895\n      ],\n      [\n        \"bourg\",\n        -12.614532470703125\n      ],\n      [\n        \"▁structuri\",\n        -12.614538192749023\n      ],\n      [\n        \"▁Booking\",\n        -12.61465835571289\n      ],\n      [\n        \"intéresse\",\n        -12.614683151245117\n      ],\n      [\n        \"▁coordinated\",\n        -12.614753723144531\n      ],\n      [\n        \"▁precaution\",\n        -12.61497688293457\n      ],\n      [\n        \"▁Cheese\",\n        -12.615015983581543\n      ],\n      [\n        \"▁surfing\",\n        -12.615192413330078\n      ],\n      [\n        \"▁souffr\",\n        -12.61524486541748\n      ],\n      [\n        \"▁Menu\",\n        -12.615447998046875\n      ],\n      [\n        \"▁arthritis\",\n        -12.615593910217285\n      ],\n      [\n        \"▁headphones\",\n        -12.615601539611816\n      ],\n      [\n        \"▁upgrading\",\n        -12.615602493286133\n      ],\n      [\n        \"▁apparel\",\n        -12.615653038024902\n      ],\n      [\n        \"▁Haushalt\",\n        -12.61572551727295\n      ],\n      [\n        \"▁Personally\",\n        -12.615815162658691\n      ],\n      [\n        \"▁insane\",\n        -12.615950584411621\n      ],\n      [\n        \"▁fonduri\",\n        -12.616083145141602\n      ],\n      [\n        \"▁entier\",\n        -12.616239547729492\n      ],\n      [\n        \"▁Herbst\",\n        -12.616264343261719\n      ],\n      [\n        \"▁cyclist\",\n        -12.616331100463867\n      ],\n      [\n        \"▁filmmaker\",\n        -12.616741180419922\n      ],\n      [\n        \"▁Portuguese\",\n        -12.616829872131348\n      ],\n      [\n        \"▁nominee\",\n        -12.616851806640625\n      ],\n      [\n        \"▁Yang\",\n        -12.616857528686523\n      ],\n      [\n        \"▁slate\",\n        -12.616943359375\n      ],\n      [\n        \"▁entièrement\",\n        -12.616974830627441\n      ],\n      [\n        \"▁Umgang\",\n        -12.617049217224121\n      ],\n      [\n        \"shifted\",\n        -12.617135047912598\n      ],\n      [\n        \"▁défaut\",\n        -12.617138862609863\n      ],\n      [\n        \"heiz\",\n        -12.617246627807617\n      ],\n      [\n        \"▁Seal\",\n        -12.617379188537598\n      ],\n      [\n        \"▁servicing\",\n        -12.617451667785645\n      ],\n      [\n        \"marketing\",\n        -12.617562294006348\n      ],\n      [\n        \"▁demandé\",\n        -12.617755889892578\n      ],\n      [\n        \"TING\",\n        -12.617841720581055\n      ],\n      [\n        \"▁modifier\",\n        -12.617907524108887\n      ],\n      [\n        \"lysis\",\n        -12.617966651916504\n      ],\n      [\n        \"▁suplimentare\",\n        -12.618117332458496\n      ],\n      [\n        \"OTHER\",\n        -12.618359565734863\n      ],\n      [\n        \"Graph\",\n        -12.618379592895508\n      ],\n      [\n        \"▁coincide\",\n        -12.618448257446289\n      ],\n      [\n        \"governed\",\n        -12.618598937988281\n      ],\n      [\n        \"▁locking\",\n        -12.618638038635254\n      ],\n      [\n        \"▁Properties\",\n        -12.618685722351074\n      ],\n      [\n        \"▁Panama\",\n        -12.61876392364502\n      ],\n      [\n        \"▁Coupe\",\n        -12.618846893310547\n      ],\n      [\n        \"songwriter\",\n        -12.618978500366211\n      ],\n      [\n        \"exhibited\",\n        -12.618988990783691\n      ],\n      [\n        \"▁semnificativ\",\n        -12.618995666503906\n      ],\n      [\n        \"▁purchaser\",\n        -12.619004249572754\n      ],\n      [\n        \"▁puff\",\n        -12.619097709655762\n      ],\n      [\n        \"Back\",\n        -12.619105339050293\n      ],\n      [\n        \"fragt\",\n        -12.61919116973877\n      ],\n      [\n        \"▁deputy\",\n        -12.619362831115723\n      ],\n      [\n        \"▁revien\",\n        -12.619556427001953\n      ],\n      [\n        \"▁Christine\",\n        -12.619558334350586\n      ],\n      [\n        \"▁Cities\",\n        -12.619573593139648\n      ],\n      [\n        \"▁Charakter\",\n        -12.61961555480957\n      ],\n      [\n        \"atteindre\",\n        -12.619625091552734\n      ],\n      [\n        \"▁fou\",\n        -12.619635581970215\n      ],\n      [\n        \"▁obligatoire\",\n        -12.619643211364746\n      ],\n      [\n        \"INA\",\n        -12.619791030883789\n      ],\n      [\n        \"etc\",\n        -12.6198148727417\n      ],\n      [\n        \"▁newborn\",\n        -12.620091438293457\n      ],\n      [\n        \"▁explicitly\",\n        -12.620116233825684\n      ],\n      [\n        \"simplest\",\n        -12.620203018188477\n      ],\n      [\n        \"▁plateforme\",\n        -12.62023639678955\n      ],\n      [\n        \"ordinate\",\n        -12.620291709899902\n      ],\n      [\n        \"displaying\",\n        -12.620346069335938\n      ],\n      [\n        \"▁messy\",\n        -12.620464324951172\n      ],\n      [\n        \"gespielt\",\n        -12.620466232299805\n      ],\n      [\n        \"▁electron\",\n        -12.62061882019043\n      ],\n      [\n        \"▁Dreh\",\n        -12.620796203613281\n      ],\n      [\n        \"▁ambient\",\n        -12.620976448059082\n      ],\n      [\n        \"340\",\n        -12.620979309082031\n      ],\n      [\n        \"▁directive\",\n        -12.62109375\n      ],\n      [\n        \"▁Vall\",\n        -12.621152877807617\n      ],\n      [\n        \"ookie\",\n        -12.621206283569336\n      ],\n      [\n        \"▁wasted\",\n        -12.621304512023926\n      ],\n      [\n        \"CIS\",\n        -12.621367454528809\n      ],\n      [\n        \"lude\",\n        -12.621378898620605\n      ],\n      [\n        \"rach\",\n        -12.621472358703613\n      ],\n      [\n        \"▁gasest\",\n        -12.62150764465332\n      ],\n      [\n        \"▁miros\",\n        -12.62150764465332\n      ],\n      [\n        \"transforming\",\n        -12.621536254882812\n      ],\n      [\n        \"▁Milwaukee\",\n        -12.621787071228027\n      ],\n      [\n        \"▁uncommon\",\n        -12.621789932250977\n      ],\n      [\n        \"▁tableau\",\n        -12.621841430664062\n      ],\n      [\n        \"geräte\",\n        -12.621952056884766\n      ],\n      [\n        \"ophil\",\n        -12.622139930725098\n      ],\n      [\n        \"▁Jeep\",\n        -12.62220287322998\n      ],\n      [\n        \"▁wreck\",\n        -12.622422218322754\n      ],\n      [\n        \"LAND\",\n        -12.622434616088867\n      ],\n      [\n        \"attach\",\n        -12.622566223144531\n      ],\n      [\n        \"▁Panther\",\n        -12.622634887695312\n      ],\n      [\n        \"9:30\",\n        -12.622777938842773\n      ],\n      [\n        \"▁induce\",\n        -12.622974395751953\n      ],\n      [\n        \"▁privest\",\n        -12.623006820678711\n      ],\n      [\n        \"Ident\",\n        -12.623047828674316\n      ],\n      [\n        \"▁illnesses\",\n        -12.623076438903809\n      ],\n      [\n        \"▁inhabitants\",\n        -12.623138427734375\n      ],\n      [\n        \"▁fehlen\",\n        -12.623357772827148\n      ],\n      [\n        \"obtenu\",\n        -12.623391151428223\n      ],\n      [\n        \"▁gegründet\",\n        -12.623655319213867\n      ],\n      [\n        \"ARA\",\n        -12.623711585998535\n      ],\n      [\n        \"3-2\",\n        -12.623835563659668\n      ],\n      [\n        \"▁milliards\",\n        -12.623968124389648\n      ],\n      [\n        \"▁Bü\",\n        -12.624001502990723\n      ],\n      [\n        \"▁angegeben\",\n        -12.624102592468262\n      ],\n      [\n        \"TUR\",\n        -12.624143600463867\n      ],\n      [\n        \"▁arab\",\n        -12.624166488647461\n      ],\n      [\n        \"▁Scientist\",\n        -12.624275207519531\n      ],\n      [\n        \"▁minut\",\n        -12.624394416809082\n      ],\n      [\n        \"▁beast\",\n        -12.624481201171875\n      ],\n      [\n        \"▁accidentally\",\n        -12.624573707580566\n      ],\n      [\n        \"WN\",\n        -12.624579429626465\n      ],\n      [\n        \"▁Ralph\",\n        -12.624588966369629\n      ],\n      [\n        \"hängt\",\n        -12.62462329864502\n      ],\n      [\n        \"▁Erik\",\n        -12.624639511108398\n      ],\n      [\n        \"▁différent\",\n        -12.624711990356445\n      ],\n      [\n        \"▁conformitate\",\n        -12.624842643737793\n      ],\n      [\n        \"thriving\",\n        -12.624900817871094\n      ],\n      [\n        \"▁Piece\",\n        -12.625123023986816\n      ],\n      [\n        \"plasm\",\n        -12.625152587890625\n      ],\n      [\n        \"▁erwarten\",\n        -12.62520980834961\n      ],\n      [\n        \"owski\",\n        -12.62523365020752\n      ],\n      [\n        \"prayed\",\n        -12.625293731689453\n      ],\n      [\n        \"three\",\n        -12.625542640686035\n      ],\n      [\n        \"▁soundtrack\",\n        -12.625651359558105\n      ],\n      [\n        \"guru\",\n        -12.625709533691406\n      ],\n      [\n        \"▁cracked\",\n        -12.625710487365723\n      ],\n      [\n        \"▁adh\",\n        -12.625823020935059\n      ],\n      [\n        \"▁maître\",\n        -12.625834465026855\n      ],\n      [\n        \"▁Oberfläche\",\n        -12.62585735321045\n      ],\n      [\n        \"▁crab\",\n        -12.625886917114258\n      ],\n      [\n        \"▁Foster\",\n        -12.625944137573242\n      ],\n      [\n        \"▁gemütlich\",\n        -12.626145362854004\n      ],\n      [\n        \"SIC\",\n        -12.626226425170898\n      ],\n      [\n        \"ième\",\n        -12.626298904418945\n      ],\n      [\n        \"▁Few\",\n        -12.626330375671387\n      ],\n      [\n        \"gérer\",\n        -12.626360893249512\n      ],\n      [\n        \"2006\",\n        -12.626456260681152\n      ],\n      [\n        \"cool\",\n        -12.626498222351074\n      ],\n      [\n        \"▁dispune\",\n        -12.626523971557617\n      ],\n      [\n        \"recevoir\",\n        -12.626577377319336\n      ],\n      [\n        \"▁Bak\",\n        -12.626585960388184\n      ],\n      [\n        \"▁steer\",\n        -12.62659740447998\n      ],\n      [\n        \"ICS\",\n        -12.626733779907227\n      ],\n      [\n        \"▁Brett\",\n        -12.626733779907227\n      ],\n      [\n        \"▁downside\",\n        -12.626751899719238\n      ],\n      [\n        \"▁residency\",\n        -12.62678050994873\n      ],\n      [\n        \"important\",\n        -12.626991271972656\n      ],\n      [\n        \"ubb\",\n        -12.627073287963867\n      ],\n      [\n        \"mony\",\n        -12.627259254455566\n      ],\n      [\n        \"▁leasing\",\n        -12.627341270446777\n      ],\n      [\n        \"▁Gir\",\n        -12.62735366821289\n      ],\n      [\n        \"▁Biology\",\n        -12.627364158630371\n      ],\n      [\n        \"▁Colin\",\n        -12.627463340759277\n      ],\n      [\n        \"▁complicat\",\n        -12.627775192260742\n      ],\n      [\n        \"▁regroup\",\n        -12.627899169921875\n      ],\n      [\n        \"SPA\",\n        -12.627950668334961\n      ],\n      [\n        \"▁Veranstaltungen\",\n        -12.627986907958984\n      ],\n      [\n        \"convicted\",\n        -12.628019332885742\n      ],\n      [\n        \"▁Wonderful\",\n        -12.628636360168457\n      ],\n      [\n        \"züge\",\n        -12.628799438476562\n      ],\n      [\n        \"yton\",\n        -12.628813743591309\n      ],\n      [\n        \"EMENT\",\n        -12.628887176513672\n      ],\n      [\n        \"▁bent\",\n        -12.62893009185791\n      ],\n      [\n        \"heben\",\n        -12.629231452941895\n      ],\n      [\n        \"▁Sustainable\",\n        -12.62926959991455\n      ],\n      [\n        \"▁Newcastle\",\n        -12.629276275634766\n      ],\n      [\n        \"mother\",\n        -12.629507064819336\n      ],\n      [\n        \"▁eighth\",\n        -12.629572868347168\n      ],\n      [\n        \"▁atmosfer\",\n        -12.629582405090332\n      ],\n      [\n        \"expériment\",\n        -12.629584312438965\n      ],\n      [\n        \"▁Interest\",\n        -12.629608154296875\n      ],\n      [\n        \"▁successes\",\n        -12.62964153289795\n      ],\n      [\n        \"▁preschool\",\n        -12.629802703857422\n      ],\n      [\n        \"▁Funeral\",\n        -12.629900932312012\n      ],\n      [\n        \"blast\",\n        -12.630083084106445\n      ],\n      [\n        \"▁dimensiuni\",\n        -12.630125999450684\n      ],\n      [\n        \"▁Dow\",\n        -12.630167007446289\n      ],\n      [\n        \"▁pulp\",\n        -12.63022518157959\n      ],\n      [\n        \"▁Heather\",\n        -12.630356788635254\n      ],\n      [\n        \"▁erstellen\",\n        -12.63044261932373\n      ],\n      [\n        \"locating\",\n        -12.630470275878906\n      ],\n      [\n        \"direct\",\n        -12.630475997924805\n      ],\n      [\n        \"▁tractor\",\n        -12.630494117736816\n      ],\n      [\n        \"growing\",\n        -12.630576133728027\n      ],\n      [\n        \"▁inventor\",\n        -12.630587577819824\n      ],\n      [\n        \"ASA\",\n        -12.63060188293457\n      ],\n      [\n        \"insta\",\n        -12.630732536315918\n      ],\n      [\n        \"yana\",\n        -12.63082504272461\n      ],\n      [\n        \"▁squash\",\n        -12.630839347839355\n      ],\n      [\n        \"▁Basketball\",\n        -12.630853652954102\n      ],\n      [\n        \"AMA\",\n        -12.631041526794434\n      ],\n      [\n        \"insel\",\n        -12.631093978881836\n      ],\n      [\n        \"▁Fisch\",\n        -12.631138801574707\n      ],\n      [\n        \"▁metaphor\",\n        -12.631221771240234\n      ],\n      [\n        \"TES\",\n        -12.631304740905762\n      ],\n      [\n        \"▁conduce\",\n        -12.631308555603027\n      ],\n      [\n        \"stehende\",\n        -12.631370544433594\n      ],\n      [\n        \"▁FAQ\",\n        -12.631475448608398\n      ],\n      [\n        \"▁bezeichnet\",\n        -12.631658554077148\n      ],\n      [\n        \"wendung\",\n        -12.631706237792969\n      ],\n      [\n        \"▁Commonwealth\",\n        -12.631776809692383\n      ],\n      [\n        \"▁bait\",\n        -12.631793975830078\n      ],\n      [\n        \"▁Umsetzung\",\n        -12.631834030151367\n      ],\n      [\n        \"▁Equi\",\n        -12.632063865661621\n      ],\n      [\n        \"▁validity\",\n        -12.632109642028809\n      ],\n      [\n        \"Off\",\n        -12.63222599029541\n      ],\n      [\n        \"▁produsul\",\n        -12.632314682006836\n      ],\n      [\n        \"▁sensory\",\n        -12.632363319396973\n      ],\n      [\n        \"▁Imperial\",\n        -12.632501602172852\n      ],\n      [\n        \"▁Dick\",\n        -12.632542610168457\n      ],\n      [\n        \"kampf\",\n        -12.632596969604492\n      ],\n      [\n        \"▁Arzt\",\n        -12.63267993927002\n      ],\n      [\n        \"▁Reason\",\n        -12.63267993927002\n      ],\n      [\n        \"ITS\",\n        -12.63270092010498\n      ],\n      [\n        \"URL\",\n        -12.632720947265625\n      ],\n      [\n        \"demonstrates\",\n        -12.632725715637207\n      ],\n      [\n        \"▁dépend\",\n        -12.632753372192383\n      ],\n      [\n        \"NAS\",\n        -12.632970809936523\n      ],\n      [\n        \"▁funcți\",\n        -12.633031845092773\n      ],\n      [\n        \"▁vulnerability\",\n        -12.633085250854492\n      ],\n      [\n        \"2.7\",\n        -12.633143424987793\n      ],\n      [\n        \"layered\",\n        -12.633152961730957\n      ],\n      [\n        \"escence\",\n        -12.633206367492676\n      ],\n      [\n        \"▁République\",\n        -12.633346557617188\n      ],\n      [\n        \"▁Lust\",\n        -12.633377075195312\n      ],\n      [\n        \"▁sute\",\n        -12.633381843566895\n      ],\n      [\n        \"▁autonomous\",\n        -12.633661270141602\n      ],\n      [\n        \"Biserica\",\n        -12.633662223815918\n      ],\n      [\n        \"▁Chuck\",\n        -12.633749961853027\n      ],\n      [\n        \"▁protéger\",\n        -12.6339750289917\n      ],\n      [\n        \"rrell\",\n        -12.634061813354492\n      ],\n      [\n        \"▁Schaden\",\n        -12.634062767028809\n      ],\n      [\n        \"prennent\",\n        -12.634100914001465\n      ],\n      [\n        \"maß\",\n        -12.6343412399292\n      ],\n      [\n        \"OV\",\n        -12.634453773498535\n      ],\n      [\n        \"▁Wake\",\n        -12.63450813293457\n      ],\n      [\n        \"produire\",\n        -12.634635925292969\n      ],\n      [\n        \"▁Elder\",\n        -12.634749412536621\n      ],\n      [\n        \"Max\",\n        -12.634839057922363\n      ],\n      [\n        \"▁Chemistry\",\n        -12.634918212890625\n      ],\n      [\n        \"▁gourmet\",\n        -12.634918212890625\n      ],\n      [\n        \"erri\",\n        -12.634967803955078\n      ],\n      [\n        \"ени\",\n        -12.635085105895996\n      ],\n      [\n        \"▁Gru\",\n        -12.635147094726562\n      ],\n      [\n        \"▁vorbit\",\n        -12.635408401489258\n      ],\n      [\n        \"▁precede\",\n        -12.635455131530762\n      ],\n      [\n        \"▁randomly\",\n        -12.635489463806152\n      ],\n      [\n        \"▁efecte\",\n        -12.63563060760498\n      ],\n      [\n        \"▁calatori\",\n        -12.635668754577637\n      ],\n      [\n        \"▁Poor\",\n        -12.635765075683594\n      ],\n      [\n        \"List\",\n        -12.635781288146973\n      ],\n      [\n        \"▁regula\",\n        -12.635964393615723\n      ],\n      [\n        \"▁organisé\",\n        -12.636028289794922\n      ],\n      [\n        \"Div\",\n        -12.636076927185059\n      ],\n      [\n        \"▁volunteering\",\n        -12.636423110961914\n      ],\n      [\n        \"▁horr\",\n        -12.636449813842773\n      ],\n      [\n        \"9.99\",\n        -12.636487007141113\n      ],\n      [\n        \"▁UPS\",\n        -12.636513710021973\n      ],\n      [\n        \"▁englez\",\n        -12.63652229309082\n      ],\n      [\n        \"▁Eden\",\n        -12.636523246765137\n      ],\n      [\n        \"GG\",\n        -12.63659954071045\n      ],\n      [\n        \"▁typing\",\n        -12.63664722442627\n      ],\n      [\n        \"Likewise\",\n        -12.636700630187988\n      ],\n      [\n        \"▁stabilize\",\n        -12.636737823486328\n      ],\n      [\n        \"physio\",\n        -12.636747360229492\n      ],\n      [\n        \"ми\",\n        -12.636785507202148\n      ],\n      [\n        \"▁protagonist\",\n        -12.636808395385742\n      ],\n      [\n        \"▁velvet\",\n        -12.636812210083008\n      ],\n      [\n        \"schrank\",\n        -12.636861801147461\n      ],\n      [\n        \"▁Allah\",\n        -12.63693618774414\n      ],\n      [\n        \"▁forefront\",\n        -12.636968612670898\n      ],\n      [\n        \"▁salaries\",\n        -12.637001037597656\n      ],\n      [\n        \"▁prediction\",\n        -12.637041091918945\n      ],\n      [\n        \"▁Advent\",\n        -12.637182235717773\n      ],\n      [\n        \"politik\",\n        -12.637280464172363\n      ],\n      [\n        \"▁Heimat\",\n        -12.637350082397461\n      ],\n      [\n        \"ducted\",\n        -12.637380599975586\n      ],\n      [\n        \"ASH\",\n        -12.637386322021484\n      ],\n      [\n        \"▁Mold\",\n        -12.637773513793945\n      ],\n      [\n        \"▁publi\",\n        -12.63784122467041\n      ],\n      [\n        \"▁Vil\",\n        -12.637892723083496\n      ],\n      [\n        \"▁stu\",\n        -12.637925148010254\n      ],\n      [\n        \"INTE\",\n        -12.638032913208008\n      ],\n      [\n        \"▁fave\",\n        -12.638151168823242\n      ],\n      [\n        \"▁grounded\",\n        -12.638175010681152\n      ],\n      [\n        \"▁Anything\",\n        -12.638184547424316\n      ],\n      [\n        \"vik\",\n        -12.638481140136719\n      ],\n      [\n        \"Bank\",\n        -12.63853645324707\n      ],\n      [\n        \"deserved\",\n        -12.638550758361816\n      ],\n      [\n        \"machen\",\n        -12.63874626159668\n      ],\n      [\n        \"▁rugged\",\n        -12.638751029968262\n      ],\n      [\n        \"▁Nest\",\n        -12.638901710510254\n      ],\n      [\n        \"▁profund\",\n        -12.639043807983398\n      ],\n      [\n        \"▁quantum\",\n        -12.639067649841309\n      ],\n      [\n        \"▁funcționa\",\n        -12.639118194580078\n      ],\n      [\n        \"klu\",\n        -12.639158248901367\n      ],\n      [\n        \"▁consulter\",\n        -12.63917350769043\n      ],\n      [\n        \"MED\",\n        -12.639286994934082\n      ],\n      [\n        \"▁câştig\",\n        -12.639334678649902\n      ],\n      [\n        \"▁săptămâni\",\n        -12.639334678649902\n      ],\n      [\n        \"questioned\",\n        -12.639517784118652\n      ],\n      [\n        \"▁Trop\",\n        -12.639530181884766\n      ],\n      [\n        \"▁convo\",\n        -12.639533042907715\n      ],\n      [\n        \"▁sparkling\",\n        -12.639533996582031\n      ],\n      [\n        \"▁specialise\",\n        -12.639566421508789\n      ],\n      [\n        \"▁pancake\",\n        -12.639726638793945\n      ],\n      [\n        \"habitude\",\n        -12.639727592468262\n      ],\n      [\n        \"phal\",\n        -12.640009880065918\n      ],\n      [\n        \"▁Roche\",\n        -12.640158653259277\n      ],\n      [\n        \"▁personalities\",\n        -12.640250205993652\n      ],\n      [\n        \"▁Venice\",\n        -12.640308380126953\n      ],\n      [\n        \"▁comerciale\",\n        -12.640379905700684\n      ],\n      [\n        \"▁wounded\",\n        -12.64075756072998\n      ],\n      [\n        \"▁oraş\",\n        -12.640864372253418\n      ],\n      [\n        \"▁Pepper\",\n        -12.641044616699219\n      ],\n      [\n        \"▁Tourist\",\n        -12.641094207763672\n      ],\n      [\n        \"▁Mull\",\n        -12.64116382598877\n      ],\n      [\n        \"▁dignity\",\n        -12.641234397888184\n      ],\n      [\n        \"▁Fixed\",\n        -12.641291618347168\n      ],\n      [\n        \"çant\",\n        -12.64130687713623\n      ],\n      [\n        \"▁spectator\",\n        -12.641402244567871\n      ],\n      [\n        \"▁somn\",\n        -12.641685485839844\n      ],\n      [\n        \"▁ständig\",\n        -12.641820907592773\n      ],\n      [\n        \"▁resilience\",\n        -12.641866683959961\n      ],\n      [\n        \"▁Malta\",\n        -12.642251014709473\n      ],\n      [\n        \"▁problemele\",\n        -12.642253875732422\n      ],\n      [\n        \"▁Martha\",\n        -12.642254829406738\n      ],\n      [\n        \"▁extern\",\n        -12.642267227172852\n      ],\n      [\n        \"embre\",\n        -12.642379760742188\n      ],\n      [\n        \"▁médical\",\n        -12.642526626586914\n      ],\n      [\n        \"fordern\",\n        -12.64256477355957\n      ],\n      [\n        \"nji\",\n        -12.642592430114746\n      ],\n      [\n        \"▁aboard\",\n        -12.642740249633789\n      ],\n      [\n        \"▁sidewalk\",\n        -12.642759323120117\n      ],\n      [\n        \"WIN\",\n        -12.642775535583496\n      ],\n      [\n        \"▁Bobby\",\n        -12.642842292785645\n      ],\n      [\n        \"▁umfangreiche\",\n        -12.642876625061035\n      ],\n      [\n        \"leid\",\n        -12.64292049407959\n      ],\n      [\n        \"▁compens\",\n        -12.642967224121094\n      ],\n      [\n        \"▁juge\",\n        -12.64299488067627\n      ],\n      [\n        \"gerufen\",\n        -12.64311408996582\n      ],\n      [\n        \"▁médicament\",\n        -12.643135070800781\n      ],\n      [\n        \"▁1918\",\n        -12.643155097961426\n      ],\n      [\n        \"▁blanche\",\n        -12.643163681030273\n      ],\n      [\n        \"▁pleasing\",\n        -12.643220901489258\n      ],\n      [\n        \"▁propria\",\n        -12.643471717834473\n      ],\n      [\n        \"ergebnisse\",\n        -12.643503189086914\n      ],\n      [\n        \"▁retrouv\",\n        -12.643571853637695\n      ],\n      [\n        \"urteil\",\n        -12.643592834472656\n      ],\n      [\n        \"▁Draft\",\n        -12.64361572265625\n      ],\n      [\n        \"▁concluzi\",\n        -12.643671035766602\n      ],\n      [\n        \"centralized\",\n        -12.643789291381836\n      ],\n      [\n        \"▁Hannah\",\n        -12.64382266998291\n      ],\n      [\n        \"grija\",\n        -12.64392375946045\n      ],\n      [\n        \"▁Exercise\",\n        -12.643972396850586\n      ],\n      [\n        \"RAL\",\n        -12.644001960754395\n      ],\n      [\n        \"creme\",\n        -12.64408016204834\n      ],\n      [\n        \"High\",\n        -12.644126892089844\n      ],\n      [\n        \"clude\",\n        -12.644131660461426\n      ],\n      [\n        \"Considering\",\n        -12.644208908081055\n      ],\n      [\n        \"▁Guarantee\",\n        -12.644404411315918\n      ],\n      [\n        \"▁cuptor\",\n        -12.644436836242676\n      ],\n      [\n        \"ivität\",\n        -12.64468002319336\n      ],\n      [\n        \"▁Southwest\",\n        -12.644882202148438\n      ],\n      [\n        \"▁vivant\",\n        -12.644890785217285\n      ],\n      [\n        \"Your\",\n        -12.64498519897461\n      ],\n      [\n        \"▁Stunde\",\n        -12.645003318786621\n      ],\n      [\n        \"▁Ethernet\",\n        -12.645040512084961\n      ],\n      [\n        \"angebote\",\n        -12.645078659057617\n      ],\n      [\n        \"▁Sage\",\n        -12.645271301269531\n      ],\n      [\n        \"▁Boeing\",\n        -12.645295143127441\n      ],\n      [\n        \"▁$300\",\n        -12.645381927490234\n      ],\n      [\n        \"2-4\",\n        -12.64546012878418\n      ],\n      [\n        \"▁nécessit\",\n        -12.645516395568848\n      ],\n      [\n        \"▁ferment\",\n        -12.645599365234375\n      ],\n      [\n        \"▁Anmeldung\",\n        -12.64567756652832\n      ],\n      [\n        \"▁exhausted\",\n        -12.645758628845215\n      ],\n      [\n        \"▁Schloss\",\n        -12.645772933959961\n      ],\n      [\n        \"▁Replacement\",\n        -12.645859718322754\n      ],\n      [\n        \"▁Aussi\",\n        -12.645933151245117\n      ],\n      [\n        \"jection\",\n        -12.646127700805664\n      ],\n      [\n        \"978\",\n        -12.64615535736084\n      ],\n      [\n        \"▁siège\",\n        -12.646258354187012\n      ],\n      [\n        \"crest\",\n        -12.646310806274414\n      ],\n      [\n        \"▁jumatate\",\n        -12.646312713623047\n      ],\n      [\n        \"effizient\",\n        -12.646317481994629\n      ],\n      [\n        \"▁colaborare\",\n        -12.6464262008667\n      ],\n      [\n        \"HQ\",\n        -12.646615028381348\n      ],\n      [\n        \"130\",\n        -12.646695137023926\n      ],\n      [\n        \"culaire\",\n        -12.646907806396484\n      ],\n      [\n        \"▁Jamaica\",\n        -12.646952629089355\n      ],\n      [\n        \"▁cardboard\",\n        -12.64731216430664\n      ],\n      [\n        \"▁technische\",\n        -12.64731502532959\n      ],\n      [\n        \"▁cereri\",\n        -12.647507667541504\n      ],\n      [\n        \"▁contradict\",\n        -12.647570610046387\n      ],\n      [\n        \"▁irrigation\",\n        -12.647586822509766\n      ],\n      [\n        \"Nume\",\n        -12.64765739440918\n      ],\n      [\n        \"▁Bier\",\n        -12.647714614868164\n      ],\n      [\n        \"▁livrare\",\n        -12.647903442382812\n      ],\n      [\n        \"▁reservoir\",\n        -12.647906303405762\n      ],\n      [\n        \"vâr\",\n        -12.648130416870117\n      ],\n      [\n        \"▁galben\",\n        -12.648213386535645\n      ],\n      [\n        \"▁Geneva\",\n        -12.648303985595703\n      ],\n      [\n        \"▁lightning\",\n        -12.648418426513672\n      ],\n      [\n        \"wished\",\n        -12.64842414855957\n      ],\n      [\n        \"▁Blind\",\n        -12.648481369018555\n      ],\n      [\n        \"Interested\",\n        -12.648499488830566\n      ],\n      [\n        \"▁Primări\",\n        -12.648627281188965\n      ],\n      [\n        \"anthropo\",\n        -12.648954391479492\n      ],\n      [\n        \"▁Transaction\",\n        -12.648961067199707\n      ],\n      [\n        \"▁marcat\",\n        -12.648971557617188\n      ],\n      [\n        \"▁gelegen\",\n        -12.649077415466309\n      ],\n      [\n        \"▁contemporain\",\n        -12.649182319641113\n      ],\n      [\n        \"▁politică\",\n        -12.649182319641113\n      ],\n      [\n        \"▁1948\",\n        -12.64928150177002\n      ],\n      [\n        \"▁Mik\",\n        -12.649287223815918\n      ],\n      [\n        \"▁preţ\",\n        -12.649310111999512\n      ],\n      [\n        \"moor\",\n        -12.649312973022461\n      ],\n      [\n        \"ANN\",\n        -12.649432182312012\n      ],\n      [\n        \"▁constructive\",\n        -12.649454116821289\n      ],\n      [\n        \"konzept\",\n        -12.649502754211426\n      ],\n      [\n        \"▁entendu\",\n        -12.649511337280273\n      ],\n      [\n        \"▁Genesis\",\n        -12.649541854858398\n      ],\n      [\n        \"arzt\",\n        -12.649581909179688\n      ],\n      [\n        \"▁Allgemein\",\n        -12.64970874786377\n      ],\n      [\n        \"▁Derby\",\n        -12.649725914001465\n      ],\n      [\n        \"Class\",\n        -12.649762153625488\n      ],\n      [\n        \"▁$12\",\n        -12.649770736694336\n      ],\n      [\n        \"▁Tube\",\n        -12.6498441696167\n      ],\n      [\n        \"▁Contribu\",\n        -12.649847030639648\n      ],\n      [\n        \"▁HAVE\",\n        -12.649860382080078\n      ],\n      [\n        \"▁oxide\",\n        -12.64986515045166\n      ],\n      [\n        \"▁producator\",\n        -12.649941444396973\n      ],\n      [\n        \"▁Bench\",\n        -12.650132179260254\n      ],\n      [\n        \"▁comprehend\",\n        -12.650139808654785\n      ],\n      [\n        \"▁Damen\",\n        -12.650494575500488\n      ],\n      [\n        \"▁Garant\",\n        -12.65056037902832\n      ],\n      [\n        \"▁disappointing\",\n        -12.650614738464355\n      ],\n      [\n        \"▁réalisée\",\n        -12.650693893432617\n      ],\n      [\n        \"▁comportement\",\n        -12.65072250366211\n      ],\n      [\n        \"▁clash\",\n        -12.650753021240234\n      ],\n      [\n        \"▁curry\",\n        -12.65076732635498\n      ],\n      [\n        \"▁Lebanon\",\n        -12.65078067779541\n      ],\n      [\n        \"▁Romaniei\",\n        -12.650784492492676\n      ],\n      [\n        \"▁reprise\",\n        -12.650840759277344\n      ],\n      [\n        \"▁perceive\",\n        -12.65095329284668\n      ],\n      [\n        \"▁weaknesses\",\n        -12.65101146697998\n      ],\n      [\n        \"▁aminti\",\n        -12.651057243347168\n      ],\n      [\n        \"▁Concern\",\n        -12.651103973388672\n      ],\n      [\n        \"shadow\",\n        -12.651310920715332\n      ],\n      [\n        \"▁basin\",\n        -12.651311874389648\n      ],\n      [\n        \"moral\",\n        -12.652063369750977\n      ],\n      [\n        \"▁Hughes\",\n        -12.652101516723633\n      ],\n      [\n        \"Psych\",\n        -12.652266502380371\n      ],\n      [\n        \"▁Lieferung\",\n        -12.65227222442627\n      ],\n      [\n        \"▁serrurier\",\n        -12.652379035949707\n      ],\n      [\n        \"ussi\",\n        -12.652386665344238\n      ],\n      [\n        \"▁timpului\",\n        -12.6524658203125\n      ],\n      [\n        \"üm\",\n        -12.652629852294922\n      ],\n      [\n        \"▁Vladimir\",\n        -12.652701377868652\n      ],\n      [\n        \"▁Jag\",\n        -12.65279483795166\n      ],\n      [\n        \"▁verific\",\n        -12.652849197387695\n      ],\n      [\n        \"▁Pru\",\n        -12.652894020080566\n      ],\n      [\n        \"▁Laut\",\n        -12.653285026550293\n      ],\n      [\n        \"ITA\",\n        -12.653287887573242\n      ],\n      [\n        \"usually\",\n        -12.653294563293457\n      ],\n      [\n        \"▁carrière\",\n        -12.65341854095459\n      ],\n      [\n        \"▁extracted\",\n        -12.653663635253906\n      ],\n      [\n        \"kultur\",\n        -12.653679847717285\n      ],\n      [\n        \"öpfe\",\n        -12.653932571411133\n      ],\n      [\n        \"▁rejection\",\n        -12.654016494750977\n      ],\n      [\n        \"▁Hydr\",\n        -12.654062271118164\n      ],\n      [\n        \"▁informaţii\",\n        -12.654098510742188\n      ],\n      [\n        \"▁tolerate\",\n        -12.654122352600098\n      ],\n      [\n        \"▁cinéma\",\n        -12.654302597045898\n      ],\n      [\n        \"traumatic\",\n        -12.654305458068848\n      ],\n      [\n        \"produkt\",\n        -12.654450416564941\n      ],\n      [\n        \"▁Contest\",\n        -12.654560089111328\n      ],\n      [\n        \"lotte\",\n        -12.654570579528809\n      ],\n      [\n        \"▁Pension\",\n        -12.65461254119873\n      ],\n      [\n        \"▁Advertising\",\n        -12.654623985290527\n      ],\n      [\n        \"▁payout\",\n        -12.654772758483887\n      ],\n      [\n        \"▁Amanda\",\n        -12.65481185913086\n      ],\n      [\n        \"Elect\",\n        -12.65485668182373\n      ],\n      [\n        \"▁interiorul\",\n        -12.654996871948242\n      ],\n      [\n        \"stay\",\n        -12.655348777770996\n      ],\n      [\n        \"▁feminine\",\n        -12.655352592468262\n      ],\n      [\n        \"▁întâmplă\",\n        -12.655437469482422\n      ],\n      [\n        \"▁insult\",\n        -12.65562915802002\n      ],\n      [\n        \"▁chocolat\",\n        -12.65567398071289\n      ],\n      [\n        \"▁noroc\",\n        -12.655750274658203\n      ],\n      [\n        \"▁centr\",\n        -12.655781745910645\n      ],\n      [\n        \"▁Bühne\",\n        -12.655858039855957\n      ],\n      [\n        \"mighty\",\n        -12.6558837890625\n      ],\n      [\n        \"▁Buddha\",\n        -12.655908584594727\n      ],\n      [\n        \"▁parental\",\n        -12.655997276306152\n      ],\n      [\n        \"storm\",\n        -12.656451225280762\n      ],\n      [\n        \"recurring\",\n        -12.6565523147583\n      ],\n      [\n        \"▁luxe\",\n        -12.656588554382324\n      ],\n      [\n        \"niște\",\n        -12.656728744506836\n      ],\n      [\n        \"cuit\",\n        -12.656839370727539\n      ],\n      [\n        \"▁ausgewählt\",\n        -12.656880378723145\n      ],\n      [\n        \"▁dumb\",\n        -12.657047271728516\n      ],\n      [\n        \"IPS\",\n        -12.657127380371094\n      ],\n      [\n        \"▁Thir\",\n        -12.65717887878418\n      ],\n      [\n        \"Definitely\",\n        -12.657195091247559\n      ],\n      [\n        \"▁hilarious\",\n        -12.657195091247559\n      ],\n      [\n        \"▁rainbow\",\n        -12.657231330871582\n      ],\n      [\n        \"▁Bravo\",\n        -12.657251358032227\n      ],\n      [\n        \"▁entstanden\",\n        -12.657259941101074\n      ],\n      [\n        \"itorul\",\n        -12.657269477844238\n      ],\n      [\n        \"▁prosperity\",\n        -12.657299041748047\n      ],\n      [\n        \"▁Bord\",\n        -12.657336235046387\n      ],\n      [\n        \"▁familiei\",\n        -12.657363891601562\n      ],\n      [\n        \"▁scade\",\n        -12.657425880432129\n      ],\n      [\n        \"wöhn\",\n        -12.657426834106445\n      ],\n      [\n        \"▁ingrediente\",\n        -12.65743637084961\n      ],\n      [\n        \"RAD\",\n        -12.657441139221191\n      ],\n      [\n        \"▁tăi\",\n        -12.657472610473633\n      ],\n      [\n        \"bours\",\n        -12.65747356414795\n      ],\n      [\n        \"ATI\",\n        -12.657540321350098\n      ],\n      [\n        \"▁Blake\",\n        -12.65761661529541\n      ],\n      [\n        \"▁Implement\",\n        -12.657712936401367\n      ],\n      [\n        \"▁Beziehung\",\n        -12.657838821411133\n      ],\n      [\n        \"finanz\",\n        -12.657953262329102\n      ],\n      [\n        \"intestin\",\n        -12.658513069152832\n      ],\n      [\n        \"ließen\",\n        -12.658535957336426\n      ],\n      [\n        \"▁récent\",\n        -12.658594131469727\n      ],\n      [\n        \"▁laminate\",\n        -12.658692359924316\n      ],\n      [\n        \"▁Hör\",\n        -12.65876579284668\n      ],\n      [\n        \"▁personnalisé\",\n        -12.658804893493652\n      ],\n      [\n        \"edel\",\n        -12.65890121459961\n      ],\n      [\n        \"▁advertisement\",\n        -12.658902168273926\n      ],\n      [\n        \"▁pinterest\",\n        -12.658921241760254\n      ],\n      [\n        \"185\",\n        -12.659058570861816\n      ],\n      [\n        \"identité\",\n        -12.65938949584961\n      ],\n      [\n        \"▁Brick\",\n        -12.659408569335938\n      ],\n      [\n        \"Glu\",\n        -12.65941047668457\n      ],\n      [\n        \"▁attendant\",\n        -12.659571647644043\n      ],\n      [\n        \"▁Flip\",\n        -12.659614562988281\n      ],\n      [\n        \"attracting\",\n        -12.659662246704102\n      ],\n      [\n        \"functional\",\n        -12.659703254699707\n      ],\n      [\n        \"conceived\",\n        -12.659772872924805\n      ],\n      [\n        \"▁summarize\",\n        -12.659773826599121\n      ],\n      [\n        \"adjusting\",\n        -12.659809112548828\n      ],\n      [\n        \"CAL\",\n        -12.660041809082031\n      ],\n      [\n        \"▁Operating\",\n        -12.660076141357422\n      ],\n      [\n        \"zzi\",\n        -12.66008472442627\n      ],\n      [\n        \"▁Rover\",\n        -12.6603364944458\n      ],\n      [\n        \"▁versuchen\",\n        -12.6603364944458\n      ],\n      [\n        \"▁articulate\",\n        -12.660600662231445\n      ],\n      [\n        \"▁privé\",\n        -12.660614013671875\n      ],\n      [\n        \"▁consequent\",\n        -12.660663604736328\n      ],\n      [\n        \"EAT\",\n        -12.660690307617188\n      ],\n      [\n        \"▁Marsh\",\n        -12.660696983337402\n      ],\n      [\n        \"▁teenage\",\n        -12.660717964172363\n      ],\n      [\n        \"▁Renaissance\",\n        -12.660740852355957\n      ],\n      [\n        \"▁furnizor\",\n        -12.660883903503418\n      ],\n      [\n        \"▁Desert\",\n        -12.660894393920898\n      ],\n      [\n        \"unicipiului\",\n        -12.66104793548584\n      ],\n      [\n        \"▁ulterior\",\n        -12.661065101623535\n      ],\n      [\n        \"▁Ebene\",\n        -12.661280632019043\n      ],\n      [\n        \"▁monkey\",\n        -12.661351203918457\n      ],\n      [\n        \"▁enclosed\",\n        -12.661389350891113\n      ],\n      [\n        \"▁profitability\",\n        -12.66139030456543\n      ],\n      [\n        \"▁Evolution\",\n        -12.661628723144531\n      ],\n      [\n        \"▁adica\",\n        -12.661670684814453\n      ],\n      [\n        \"▁Structure\",\n        -12.661709785461426\n      ],\n      [\n        \"▁primer\",\n        -12.661761283874512\n      ],\n      [\n        \"▁asigură\",\n        -12.662001609802246\n      ],\n      [\n        \"▁Manuel\",\n        -12.662220001220703\n      ],\n      [\n        \"polita\",\n        -12.662267684936523\n      ],\n      [\n        \"▁Portable\",\n        -12.662286758422852\n      ],\n      [\n        \"fecți\",\n        -12.662413597106934\n      ],\n      [\n        \"▁obscure\",\n        -12.662424087524414\n      ],\n      [\n        \"▁Atlas\",\n        -12.662436485290527\n      ],\n      [\n        \"fährt\",\n        -12.662679672241211\n      ],\n      [\n        \"▁clinician\",\n        -12.662837982177734\n      ],\n      [\n        \"fuhr\",\n        -12.66310977935791\n      ],\n      [\n        \"▁matériaux\",\n        -12.663113594055176\n      ],\n      [\n        \"écrire\",\n        -12.663142204284668\n      ],\n      [\n        \"▁suspicious\",\n        -12.6632080078125\n      ],\n      [\n        \"pore\",\n        -12.663263320922852\n      ],\n      [\n        \"▁outdated\",\n        -12.663304328918457\n      ],\n      [\n        \"▁Mädchen\",\n        -12.663328170776367\n      ],\n      [\n        \"rcis\",\n        -12.663420677185059\n      ],\n      [\n        \"nicht\",\n        -12.663463592529297\n      ],\n      [\n        \"holding\",\n        -12.663561820983887\n      ],\n      [\n        \"▁heavier\",\n        -12.66366195678711\n      ],\n      [\n        \"ezimal\",\n        -12.663960456848145\n      ],\n      [\n        \"▁silicone\",\n        -12.66397476196289\n      ],\n      [\n        \"punerea\",\n        -12.664108276367188\n      ],\n      [\n        \"▁begeistert\",\n        -12.664237976074219\n      ],\n      [\n        \"2004\",\n        -12.664283752441406\n      ],\n      [\n        \"▁predecessor\",\n        -12.664299011230469\n      ],\n      [\n        \"▁overlap\",\n        -12.664369583129883\n      ],\n      [\n        \"▁digging\",\n        -12.664376258850098\n      ],\n      [\n        \"▁Upgrade\",\n        -12.664407730102539\n      ],\n      [\n        \"▁interesat\",\n        -12.664543151855469\n      ],\n      [\n        \"▁spinach\",\n        -12.66456127166748\n      ],\n      [\n        \"▁politice\",\n        -12.664626121520996\n      ],\n      [\n        \"activity\",\n        -12.664831161499023\n      ],\n      [\n        \"▁Rating\",\n        -12.66484546661377\n      ],\n      [\n        \"▁serrure\",\n        -12.664846420288086\n      ],\n      [\n        \"▁tânăr\",\n        -12.664959907531738\n      ],\n      [\n        \"▁WHAT\",\n        -12.664970397949219\n      ],\n      [\n        \"▁railroad\",\n        -12.664989471435547\n      ],\n      [\n        \"▁avid\",\n        -12.665081024169922\n      ],\n      [\n        \"▁Sophie\",\n        -12.665084838867188\n      ],\n      [\n        \"preferably\",\n        -12.665173530578613\n      ],\n      [\n        \"▁Fourth\",\n        -12.665431022644043\n      ],\n      [\n        \"kommenden\",\n        -12.665452003479004\n      ],\n      [\n        \"QUI\",\n        -12.665478706359863\n      ],\n      [\n        \"lohn\",\n        -12.665505409240723\n      ],\n      [\n        \"▁promis\",\n        -12.665611267089844\n      ],\n      [\n        \"▁shrub\",\n        -12.665621757507324\n      ],\n      [\n        \"nummer\",\n        -12.66579818725586\n      ],\n      [\n        \"▁dinosaur\",\n        -12.665922164916992\n      ],\n      [\n        \"▁Lucky\",\n        -12.665937423706055\n      ],\n      [\n        \"relates\",\n        -12.666038513183594\n      ],\n      [\n        \"▁FROM\",\n        -12.666049003601074\n      ],\n      [\n        \"▁racism\",\n        -12.66610336303711\n      ],\n      [\n        \"physical\",\n        -12.66611385345459\n      ],\n      [\n        \"alcoholic\",\n        -12.666119575500488\n      ],\n      [\n        \"▁reef\",\n        -12.666126251220703\n      ],\n      [\n        \"▁centru\",\n        -12.66618824005127\n      ],\n      [\n        \"université\",\n        -12.66622257232666\n      ],\n      [\n        \"▁visage\",\n        -12.666232109069824\n      ],\n      [\n        \"ităţile\",\n        -12.666253089904785\n      ],\n      [\n        \"▁Gent\",\n        -12.666345596313477\n      ],\n      [\n        \"zugeben\",\n        -12.66643238067627\n      ],\n      [\n        \"▁paradise\",\n        -12.66646957397461\n      ],\n      [\n        \"fuel\",\n        -12.666505813598633\n      ],\n      [\n        \"ografie\",\n        -12.666568756103516\n      ],\n      [\n        \"▁TIP\",\n        -12.666730880737305\n      ],\n      [\n        \"schreibung\",\n        -12.66683292388916\n      ],\n      [\n        \"▁bark\",\n        -12.666840553283691\n      ],\n      [\n        \"accéder\",\n        -12.666895866394043\n      ],\n      [\n        \"▁contamination\",\n        -12.666937828063965\n      ],\n      [\n        \"▁swelling\",\n        -12.666950225830078\n      ],\n      [\n        \"▁optimistic\",\n        -12.666974067687988\n      ],\n      [\n        \"▁differential\",\n        -12.667015075683594\n      ],\n      [\n        \"▁Arad\",\n        -12.667030334472656\n      ],\n      [\n        \"toxins\",\n        -12.667075157165527\n      ],\n      [\n        \"▁übernehmen\",\n        -12.667091369628906\n      ],\n      [\n        \"▁anime\",\n        -12.667143821716309\n      ],\n      [\n        \"actuel\",\n        -12.667462348937988\n      ],\n      [\n        \"▁bientôt\",\n        -12.667525291442871\n      ],\n      [\n        \"▁Patio\",\n        -12.66761302947998\n      ],\n      [\n        \"▁baisse\",\n        -12.667630195617676\n      ],\n      [\n        \"▁sprint\",\n        -12.66773796081543\n      ],\n      [\n        \"▁bilden\",\n        -12.66811466217041\n      ],\n      [\n        \"VAL\",\n        -12.668132781982422\n      ],\n      [\n        \"▁réflexion\",\n        -12.668220520019531\n      ],\n      [\n        \"hopping\",\n        -12.668242454528809\n      ],\n      [\n        \"genesis\",\n        -12.66834545135498\n      ],\n      [\n        \"achtet\",\n        -12.668435096740723\n      ],\n      [\n        \"▁chinois\",\n        -12.668525695800781\n      ],\n      [\n        \"▁dezvoltat\",\n        -12.668795585632324\n      ],\n      [\n        \"arguably\",\n        -12.66884708404541\n      ],\n      [\n        \"▁Protocol\",\n        -12.66884708404541\n      ],\n      [\n        \"▁Sterling\",\n        -12.668862342834473\n      ],\n      [\n        \"▁Cave\",\n        -12.668975830078125\n      ],\n      [\n        \"▁Condo\",\n        -12.66921615600586\n      ],\n      [\n        \"▁erhöht\",\n        -12.669235229492188\n      ],\n      [\n        \"typische\",\n        -12.669416427612305\n      ],\n      [\n        \"merged\",\n        -12.669439315795898\n      ],\n      [\n        \"▁accumulation\",\n        -12.669560432434082\n      ],\n      [\n        \"sicherlich\",\n        -12.669569969177246\n      ],\n      [\n        \"kW\",\n        -12.669620513916016\n      ],\n      [\n        \"▁schriftlich\",\n        -12.669757843017578\n      ],\n      [\n        \"▁Vorteile\",\n        -12.669918060302734\n      ],\n      [\n        \"▁Northeast\",\n        -12.669922828674316\n      ],\n      [\n        \"frunt\",\n        -12.669941902160645\n      ],\n      [\n        \"istik\",\n        -12.670003890991211\n      ],\n      [\n        \"erster\",\n        -12.670035362243652\n      ],\n      [\n        \"▁Assistance\",\n        -12.670150756835938\n      ],\n      [\n        \"▁Fantastic\",\n        -12.670150756835938\n      ],\n      [\n        \"▁bărbat\",\n        -12.670150756835938\n      ],\n      [\n        \"▁Grinding\",\n        -12.670151710510254\n      ],\n      [\n        \"▁diffusion\",\n        -12.670161247253418\n      ],\n      [\n        \"▁vreun\",\n        -12.670331954956055\n      ],\n      [\n        \"▁Butler\",\n        -12.670342445373535\n      ],\n      [\n        \"▁Cherry\",\n        -12.670352935791016\n      ],\n      [\n        \"▁visualization\",\n        -12.670540809631348\n      ],\n      [\n        \"Paket\",\n        -12.670572280883789\n      ],\n      [\n        \"blin\",\n        -12.670619010925293\n      ],\n      [\n        \"▁cadou\",\n        -12.670705795288086\n      ],\n      [\n        \"▁Celtic\",\n        -12.670754432678223\n      ],\n      [\n        \"alegerea\",\n        -12.670894622802734\n      ],\n      [\n        \"▁Dorf\",\n        -12.671035766601562\n      ],\n      [\n        \"▁Noir\",\n        -12.671185493469238\n      ],\n      [\n        \"payment\",\n        -12.67126750946045\n      ],\n      [\n        \"▁Caroline\",\n        -12.671334266662598\n      ],\n      [\n        \"▁Berry\",\n        -12.671359062194824\n      ],\n      [\n        \"▁professeur\",\n        -12.67147445678711\n      ],\n      [\n        \"▁gratuitement\",\n        -12.671503067016602\n      ],\n      [\n        \"Suntem\",\n        -12.671523094177246\n      ],\n      [\n        \"IAN\",\n        -12.671738624572754\n      ],\n      [\n        \"▁fingerprint\",\n        -12.671780586242676\n      ],\n      [\n        \"▁controversy\",\n        -12.671781539916992\n      ],\n      [\n        \"▁fled\",\n        -12.671875\n      ],\n      [\n        \"▁Pokémon\",\n        -12.67210865020752\n      ],\n      [\n        \"excluding\",\n        -12.67211627960205\n      ],\n      [\n        \"▁friction\",\n        -12.672161102294922\n      ],\n      [\n        \"therapie\",\n        -12.67225456237793\n      ],\n      [\n        \"/7\",\n        -12.672398567199707\n      ],\n      [\n        \"▁designation\",\n        -12.672442436218262\n      ],\n      [\n        \"▁Belgia\",\n        -12.672704696655273\n      ],\n      [\n        \"▁cursuri\",\n        -12.672836303710938\n      ],\n      [\n        \"model\",\n        -12.672840118408203\n      ],\n      [\n        \"super\",\n        -12.672987937927246\n      ],\n      [\n        \"▁réduit\",\n        -12.673028945922852\n      ],\n      [\n        \"▁implicit\",\n        -12.673177719116211\n      ],\n      [\n        \"athlon\",\n        -12.673227310180664\n      ],\n      [\n        \"anniversaire\",\n        -12.673416137695312\n      ],\n      [\n        \"▁teaspoon\",\n        -12.673416137695312\n      ],\n      [\n        \"▁corrosion\",\n        -12.673418998718262\n      ],\n      [\n        \"▁überzeugt\",\n        -12.673418998718262\n      ],\n      [\n        \"▁flawless\",\n        -12.673421859741211\n      ],\n      [\n        \"▁vegetation\",\n        -12.673477172851562\n      ],\n      [\n        \"▁iarna\",\n        -12.673507690429688\n      ],\n      [\n        \"▁psychologist\",\n        -12.673591613769531\n      ],\n      [\n        \"hora\",\n        -12.673625946044922\n      ],\n      [\n        \"gab\",\n        -12.67387580871582\n      ],\n      [\n        \"▁soothing\",\n        -12.674084663391113\n      ],\n      [\n        \"▁stew\",\n        -12.674141883850098\n      ],\n      [\n        \"▁wager\",\n        -12.674172401428223\n      ],\n      [\n        \"▁tinere\",\n        -12.674322128295898\n      ],\n      [\n        \"▁baut\",\n        -12.674323081970215\n      ],\n      [\n        \"ecunoscut\",\n        -12.674352645874023\n      ],\n      [\n        \"gearbeitet\",\n        -12.674422264099121\n      ],\n      [\n        \"▁functi\",\n        -12.674480438232422\n      ],\n      [\n        \"▁dürfte\",\n        -12.674724578857422\n      ],\n      [\n        \"▁média\",\n        -12.674724578857422\n      ],\n      [\n        \"▁campanie\",\n        -12.67475700378418\n      ],\n      [\n        \"▁Distribu\",\n        -12.674817085266113\n      ],\n      [\n        \"▁mentoring\",\n        -12.674959182739258\n      ],\n      [\n        \"▁criz\",\n        -12.675020217895508\n      ],\n      [\n        \"findest\",\n        -12.675056457519531\n      ],\n      [\n        \"▁Vasile\",\n        -12.675058364868164\n      ],\n      [\n        \"▁compassionate\",\n        -12.675115585327148\n      ],\n      [\n        \"▁Tudor\",\n        -12.675140380859375\n      ],\n      [\n        \"▁flare\",\n        -12.675260543823242\n      ],\n      [\n        \"intreaga\",\n        -12.675283432006836\n      ],\n      [\n        \"gaz\",\n        -12.6753511428833\n      ],\n      [\n        \"▁porcelain\",\n        -12.675379753112793\n      ],\n      [\n        \"▁expedition\",\n        -12.675520896911621\n      ],\n      [\n        \"▁Azure\",\n        -12.67553997039795\n      ],\n      [\n        \"räumen\",\n        -12.675549507141113\n      ],\n      [\n        \"eiro\",\n        -12.675567626953125\n      ],\n      [\n        \"variante\",\n        -12.675804138183594\n      ],\n      [\n        \"▁Lucy\",\n        -12.675825119018555\n      ],\n      [\n        \"ôle\",\n        -12.675909996032715\n      ],\n      [\n        \"▁revenir\",\n        -12.67602252960205\n      ],\n      [\n        \"▁stained\",\n        -12.676040649414062\n      ],\n      [\n        \"▁falsch\",\n        -12.676166534423828\n      ],\n      [\n        \"▁incorpor\",\n        -12.676166534423828\n      ],\n      [\n        \"merkt\",\n        -12.676187515258789\n      ],\n      [\n        \"▁achten\",\n        -12.6762056350708\n      ],\n      [\n        \"▁hello\",\n        -12.676290512084961\n      ],\n      [\n        \"selben\",\n        -12.676422119140625\n      ],\n      [\n        \"ifty\",\n        -12.676525115966797\n      ],\n      [\n        \"▁Feier\",\n        -12.67653751373291\n      ],\n      [\n        \"1.000\",\n        -12.676557540893555\n      ],\n      [\n        \"▁Patch\",\n        -12.676583290100098\n      ],\n      [\n        \"peptid\",\n        -12.676846504211426\n      ],\n      [\n        \"▁recovering\",\n        -12.676898956298828\n      ],\n      [\n        \"Symptom\",\n        -12.677020072937012\n      ],\n      [\n        \"▁Auckland\",\n        -12.677020072937012\n      ],\n      [\n        \"▁retrieve\",\n        -12.677328109741211\n      ],\n      [\n        \"▁800-\",\n        -12.67733097076416\n      ],\n      [\n        \"schlagen\",\n        -12.677473068237305\n      ],\n      [\n        \"▁lourd\",\n        -12.677562713623047\n      ],\n      [\n        \"▁Purple\",\n        -12.67760181427002\n      ],\n      [\n        \"▁mittels\",\n        -12.677776336669922\n      ],\n      [\n        \"▁Düsseldorf\",\n        -12.67800521850586\n      ],\n      [\n        \"▁getaway\",\n        -12.67803955078125\n      ],\n      [\n        \"▁Cedar\",\n        -12.678061485290527\n      ],\n      [\n        \"▁Function\",\n        -12.678241729736328\n      ],\n      [\n        \"▁bizarre\",\n        -12.67833423614502\n      ],\n      [\n        \"4.3\",\n        -12.67849063873291\n      ],\n      [\n        \"▁fundraiser\",\n        -12.67866325378418\n      ],\n      [\n        \"geared\",\n        -12.678780555725098\n      ],\n      [\n        \"▁privée\",\n        -12.678781509399414\n      ],\n      [\n        \"▁Bonjour\",\n        -12.67894458770752\n      ],\n      [\n        \"Gar\",\n        -12.67895793914795\n      ],\n      [\n        \"▁Lloyd\",\n        -12.678991317749023\n      ],\n      [\n        \"▁Reinigung\",\n        -12.6790132522583\n      ],\n      [\n        \"▁Geno\",\n        -12.679155349731445\n      ],\n      [\n        \"▁Teilnahme\",\n        -12.67919635772705\n      ],\n      [\n        \"pian\",\n        -12.679362297058105\n      ],\n      [\n        \"sammelt\",\n        -12.679368019104004\n      ],\n      [\n        \"Pad\",\n        -12.679755210876465\n      ],\n      [\n        \"▁Troy\",\n        -12.67976188659668\n      ],\n      [\n        \"HG\",\n        -12.679943084716797\n      ],\n      [\n        \"▁klein\",\n        -12.679962158203125\n      ],\n      [\n        \"▁lettuce\",\n        -12.679978370666504\n      ],\n      [\n        \"▁patrimoine\",\n        -12.679978370666504\n      ],\n      [\n        \"▁cooker\",\n        -12.680055618286133\n      ],\n      [\n        \"▁accesibil\",\n        -12.680137634277344\n      ],\n      [\n        \"▁Spray\",\n        -12.680201530456543\n      ],\n      [\n        \"▁negotiation\",\n        -12.68047046661377\n      ],\n      [\n        \"▁jewel\",\n        -12.680480003356934\n      ],\n      [\n        \"▁dynamique\",\n        -12.68063735961914\n      ],\n      [\n        \"▁plastique\",\n        -12.68067741394043\n      ],\n      [\n        \"▁Limo\",\n        -12.680682182312012\n      ],\n      [\n        \"▁Funk\",\n        -12.68069076538086\n      ],\n      [\n        \"▁omului\",\n        -12.680702209472656\n      ],\n      [\n        \"title\",\n        -12.680768013000488\n      ],\n      [\n        \"curved\",\n        -12.68082046508789\n      ],\n      [\n        \"▁Lemon\",\n        -12.680851936340332\n      ],\n      [\n        \"förder\",\n        -12.680891990661621\n      ],\n      [\n        \"▁bewusst\",\n        -12.681112289428711\n      ],\n      [\n        \"inevitably\",\n        -12.681296348571777\n      ],\n      [\n        \"▁derivative\",\n        -12.681297302246094\n      ],\n      [\n        \"2:30\",\n        -12.681300163269043\n      ],\n      [\n        \"komfort\",\n        -12.681305885314941\n      ],\n      [\n        \"original\",\n        -12.681480407714844\n      ],\n      [\n        \"sanct\",\n        -12.681540489196777\n      ],\n      [\n        \"▁matte\",\n        -12.6815767288208\n      ],\n      [\n        \"empêche\",\n        -12.681628227233887\n      ],\n      [\n        \"▁jucător\",\n        -12.681634902954102\n      ],\n      [\n        \"▁attentive\",\n        -12.681640625\n      ],\n      [\n        \"▁recunoscut\",\n        -12.681674003601074\n      ],\n      [\n        \"▁Brush\",\n        -12.68167495727539\n      ],\n      [\n        \"▁consommateur\",\n        -12.68183422088623\n      ],\n      [\n        \"érence\",\n        -12.682063102722168\n      ],\n      [\n        \"typical\",\n        -12.682084083557129\n      ],\n      [\n        \"strategie\",\n        -12.682205200195312\n      ],\n      [\n        \"Effekt\",\n        -12.682290077209473\n      ],\n      [\n        \"▁Alcohol\",\n        -12.682292938232422\n      ],\n      [\n        \"oji\",\n        -12.682333946228027\n      ],\n      [\n        \"▁ruler\",\n        -12.682357788085938\n      ],\n      [\n        \"▁Norwegian\",\n        -12.682615280151367\n      ],\n      [\n        \"▁PlayStation\",\n        -12.682615280151367\n      ],\n      [\n        \"▁Hook\",\n        -12.682747840881348\n      ],\n      [\n        \"▁viewpoint\",\n        -12.682759284973145\n      ],\n      [\n        \"THER\",\n        -12.682841300964355\n      ],\n      [\n        \"420\",\n        -12.682888984680176\n      ],\n      [\n        \"Consequently\",\n        -12.68294620513916\n      ],\n      [\n        \"▁entschieden\",\n        -12.68294620513916\n      ],\n      [\n        \"▁Trag\",\n        -12.68295669555664\n      ],\n      [\n        \"▁Dawn\",\n        -12.683003425598145\n      ],\n      [\n        \"▁fuss\",\n        -12.68301773071289\n      ],\n      [\n        \"*****\",\n        -12.683040618896484\n      ],\n      [\n        \"▁Bullet\",\n        -12.683140754699707\n      ],\n      [\n        \"CAM\",\n        -12.683155059814453\n      ],\n      [\n        \"▁wonderfully\",\n        -12.683201789855957\n      ],\n      [\n        \"▁parlamentar\",\n        -12.683263778686523\n      ],\n      [\n        \"▁geometric\",\n        -12.683307647705078\n      ],\n      [\n        \"talement\",\n        -12.683321952819824\n      ],\n      [\n        \"/2018\",\n        -12.683577537536621\n      ],\n      [\n        \"▁oversight\",\n        -12.684036254882812\n      ],\n      [\n        \"kindly\",\n        -12.684080123901367\n      ],\n      [\n        \"therm\",\n        -12.684305191040039\n      ],\n      [\n        \"▁treaba\",\n        -12.6846342086792\n      ],\n      [\n        \"▁Trim\",\n        -12.68471908569336\n      ],\n      [\n        \"▁intelege\",\n        -12.684842109680176\n      ],\n      [\n        \"cino\",\n        -12.685032844543457\n      ],\n      [\n        \"▁straw\",\n        -12.68508529663086\n      ],\n      [\n        \"Tru\",\n        -12.685251235961914\n      ],\n      [\n        \"▁Television\",\n        -12.68530559539795\n      ],\n      [\n        \"Trader\",\n        -12.68538761138916\n      ],\n      [\n        \"▁Passion\",\n        -12.685394287109375\n      ],\n      [\n        \"rescu\",\n        -12.685622215270996\n      ],\n      [\n        \"Nicol\",\n        -12.685635566711426\n      ],\n      [\n        \"luj\",\n        -12.685805320739746\n      ],\n      [\n        \"▁mijloace\",\n        -12.685921669006348\n      ],\n      [\n        \"▁Removal\",\n        -12.685922622680664\n      ],\n      [\n        \"▁1944\",\n        -12.686034202575684\n      ],\n      [\n        \"▁shortcut\",\n        -12.686159133911133\n      ],\n      [\n        \"▁Fett\",\n        -12.686258316040039\n      ],\n      [\n        \"largement\",\n        -12.686371803283691\n      ],\n      [\n        \"▁altern\",\n        -12.686446189880371\n      ],\n      [\n        \"▁cleansing\",\n        -12.686562538146973\n      ],\n      [\n        \"▁Qatar\",\n        -12.686692237854004\n      ],\n      [\n        \"▁Ceci\",\n        -12.686826705932617\n      ],\n      [\n        \"▁weave\",\n        -12.686848640441895\n      ],\n      [\n        \"schmerz\",\n        -12.686878204345703\n      ],\n      [\n        \"▁dots\",\n        -12.686888694763184\n      ],\n      [\n        \"Télécharger\",\n        -12.68691635131836\n      ],\n      [\n        \"▁Conduct\",\n        -12.686944007873535\n      ],\n      [\n        \"bekannten\",\n        -12.687325477600098\n      ],\n      [\n        \"▁lungime\",\n        -12.687344551086426\n      ],\n      [\n        \"▁Ferrari\",\n        -12.687390327453613\n      ],\n      [\n        \"▁totusi\",\n        -12.687605857849121\n      ],\n      [\n        \"▁Anniversary\",\n        -12.687911033630371\n      ],\n      [\n        \"▁wilderness\",\n        -12.687911987304688\n      ],\n      [\n        \"▁Christoph\",\n        -12.687939643859863\n      ],\n      [\n        \"▁Nikon\",\n        -12.688112258911133\n      ],\n      [\n        \"▁Digi\",\n        -12.68818473815918\n      ],\n      [\n        \"▁Blumen\",\n        -12.688190460205078\n      ],\n      [\n        \"▁altul\",\n        -12.688249588012695\n      ],\n      [\n        \"▁Parish\",\n        -12.688321113586426\n      ],\n      [\n        \"czy\",\n        -12.688393592834473\n      ],\n      [\n        \"▁temper\",\n        -12.688401222229004\n      ],\n      [\n        \"▁Powder\",\n        -12.688576698303223\n      ],\n      [\n        \"▁Arnold\",\n        -12.688577651977539\n      ],\n      [\n        \"capacitatea\",\n        -12.688687324523926\n      ],\n      [\n        \"nderungen\",\n        -12.688787460327148\n      ],\n      [\n        \"▁utilization\",\n        -12.688859939575195\n      ],\n      [\n        \"99%\",\n        -12.688942909240723\n      ],\n      [\n        \"▁Fear\",\n        -12.689099311828613\n      ],\n      [\n        \"JE\",\n        -12.689165115356445\n      ],\n      [\n        \"▁Simpson\",\n        -12.689239501953125\n      ],\n      [\n        \"▁Podcast\",\n        -12.68924617767334\n      ],\n      [\n        \"▁Cardinal\",\n        -12.689290046691895\n      ],\n      [\n        \"▁Distribution\",\n        -12.689315795898438\n      ],\n      [\n        \"▁Drawing\",\n        -12.689373970031738\n      ],\n      [\n        \"▁tint\",\n        -12.689412117004395\n      ],\n      [\n        \"▁hran\",\n        -12.68945598602295\n      ],\n      [\n        \"▁Slide\",\n        -12.68960189819336\n      ],\n      [\n        \"▁Vertrauen\",\n        -12.689654350280762\n      ],\n      [\n        \"cloth\",\n        -12.68971061706543\n      ],\n      [\n        \"▁redirect\",\n        -12.689728736877441\n      ],\n      [\n        \"126\",\n        -12.689842224121094\n      ],\n      [\n        \"▁constituie\",\n        -12.68985652923584\n      ],\n      [\n        \"Mai\",\n        -12.690070152282715\n      ],\n      [\n        \"▁idol\",\n        -12.690088272094727\n      ],\n      [\n        \"▁tehnice\",\n        -12.690163612365723\n      ],\n      [\n        \"dip\",\n        -12.690393447875977\n      ],\n      [\n        \"▁soldier\",\n        -12.690400123596191\n      ],\n      [\n        \"▁Ordin\",\n        -12.690409660339355\n      ],\n      [\n        \"wobe\",\n        -12.69050407409668\n      ],\n      [\n        \"▁Brent\",\n        -12.69058895111084\n      ],\n      [\n        \"▁Sudan\",\n        -12.690597534179688\n      ],\n      [\n        \"6000\",\n        -12.690619468688965\n      ],\n      [\n        \"turism\",\n        -12.690689086914062\n      ],\n      [\n        \"▁Rocky\",\n        -12.690744400024414\n      ],\n      [\n        \"naming\",\n        -12.69092082977295\n      ],\n      [\n        \"▁entrepreneurial\",\n        -12.690925598144531\n      ],\n      [\n        \"hearted\",\n        -12.690962791442871\n      ],\n      [\n        \"ayne\",\n        -12.69097900390625\n      ],\n      [\n        \"▁hover\",\n        -12.691081047058105\n      ],\n      [\n        \"▁skull\",\n        -12.691279411315918\n      ],\n      [\n        \"▁tribal\",\n        -12.691407203674316\n      ],\n      [\n        \"▁crafting\",\n        -12.691543579101562\n      ],\n      [\n        \"bewertungen\",\n        -12.691569328308105\n      ],\n      [\n        \"▁decizii\",\n        -12.691625595092773\n      ],\n      [\n        \"obwohl\",\n        -12.691655158996582\n      ],\n      [\n        \"▁compromised\",\n        -12.691875457763672\n      ],\n      [\n        \"▁quelqu\",\n        -12.69195556640625\n      ],\n      [\n        \"▁Hilton\",\n        -12.692075729370117\n      ],\n      [\n        \"▁maturity\",\n        -12.692095756530762\n      ],\n      [\n        \"gelesen\",\n        -12.692100524902344\n      ],\n      [\n        \"▁harbor\",\n        -12.69210433959961\n      ],\n      [\n        \"▁maple\",\n        -12.692326545715332\n      ],\n      [\n        \"▁développ\",\n        -12.6924409866333\n      ],\n      [\n        \"▁Nobody\",\n        -12.692517280578613\n      ],\n      [\n        \"équipement\",\n        -12.69255542755127\n      ],\n      [\n        \"121\",\n        -12.69274616241455\n      ],\n      [\n        \"140\",\n        -12.692827224731445\n      ],\n      [\n        \"▁artistes\",\n        -12.692914962768555\n      ],\n      [\n        \"▁depune\",\n        -12.692941665649414\n      ],\n      [\n        \"▁erase\",\n        -12.693129539489746\n      ],\n      [\n        \"▁erzählt\",\n        -12.693197250366211\n      ],\n      [\n        \"▁Hyundai\",\n        -12.69323444366455\n      ],\n      [\n        \"▁impairment\",\n        -12.69323444366455\n      ],\n      [\n        \"▁conving\",\n        -12.693279266357422\n      ],\n      [\n        \"chasing\",\n        -12.693426132202148\n      ],\n      [\n        \"▁Claus\",\n        -12.693438529968262\n      ],\n      [\n        \"▁adaptée\",\n        -12.693687438964844\n      ],\n      [\n        \"▁Raz\",\n        -12.693740844726562\n      ],\n      [\n        \"rugs\",\n        -12.693796157836914\n      ],\n      [\n        \"▁urme\",\n        -12.69387435913086\n      ],\n      [\n        \"Nonetheless\",\n        -12.693902015686035\n      ],\n      [\n        \"▁Cemetery\",\n        -12.693902969360352\n      ],\n      [\n        \"umps\",\n        -12.693906784057617\n      ],\n      [\n        \"ACA\",\n        -12.694003105163574\n      ],\n      [\n        \"▁perioade\",\n        -12.694235801696777\n      ],\n      [\n        \"▁slogan\",\n        -12.694263458251953\n      ],\n      [\n        \"▁downward\",\n        -12.694441795349121\n      ],\n      [\n        \"eidig\",\n        -12.694446563720703\n      ],\n      [\n        \"RAC\",\n        -12.69444751739502\n      ],\n      [\n        \"▁inaugur\",\n        -12.694496154785156\n      ],\n      [\n        \"се\",\n        -12.694588661193848\n      ],\n      [\n        \"▁înțeleg\",\n        -12.694608688354492\n      ],\n      [\n        \"▁hopeful\",\n        -12.694635391235352\n      ],\n      [\n        \"▁customization\",\n        -12.6946439743042\n      ],\n      [\n        \"▁prisoners\",\n        -12.694708824157715\n      ],\n      [\n        \"▁Rau\",\n        -12.695270538330078\n      ],\n      [\n        \"▁Pitt\",\n        -12.695389747619629\n      ],\n      [\n        \"ături\",\n        -12.695542335510254\n      ],\n      [\n        \"▁metabolic\",\n        -12.695842742919922\n      ],\n      [\n        \"▁Zach\",\n        -12.695868492126465\n      ],\n      [\n        \"▁umfassende\",\n        -12.695914268493652\n      ],\n      [\n        \"▁révél\",\n        -12.695950508117676\n      ],\n      [\n        \"131\",\n        -12.696052551269531\n      ],\n      [\n        \"ismului\",\n        -12.696062088012695\n      ],\n      [\n        \"▁Sac\",\n        -12.696076393127441\n      ],\n      [\n        \"efficacité\",\n        -12.69624137878418\n      ],\n      [\n        \"cruci\",\n        -12.69625473022461\n      ],\n      [\n        \"bisschen\",\n        -12.69632339477539\n      ],\n      [\n        \"▁Oster\",\n        -12.696324348449707\n      ],\n      [\n        \"lowered\",\n        -12.6964693069458\n      ],\n      [\n        \"▁Ausland\",\n        -12.69674015045166\n      ],\n      [\n        \"▁Pub\",\n        -12.696794509887695\n      ],\n      [\n        \"▁Marseille\",\n        -12.696925163269043\n      ],\n      [\n        \"▁Charter\",\n        -12.696959495544434\n      ],\n      [\n        \"howcasing\",\n        -12.697010040283203\n      ],\n      [\n        \"risti\",\n        -12.6971435546875\n      ],\n      [\n        \"▁thermostat\",\n        -12.697151184082031\n      ],\n      [\n        \"▁Clin\",\n        -12.697233200073242\n      ],\n      [\n        \"▁entsteht\",\n        -12.697246551513672\n      ],\n      [\n        \"Choosing\",\n        -12.697248458862305\n      ],\n      [\n        \"▁Schmerz\",\n        -12.697284698486328\n      ],\n      [\n        \"▁Till\",\n        -12.697307586669922\n      ],\n      [\n        \"▁Polo\",\n        -12.697399139404297\n      ],\n      [\n        \"▁proceduri\",\n        -12.697402000427246\n      ],\n      [\n        \"▁Believe\",\n        -12.697444915771484\n      ],\n      [\n        \"▁playful\",\n        -12.697514533996582\n      ],\n      [\n        \"▁verändert\",\n        -12.697588920593262\n      ],\n      [\n        \"▁pairing\",\n        -12.697654724121094\n      ],\n      [\n        \"MAG\",\n        -12.69784927368164\n      ],\n      [\n        \"leiste\",\n        -12.69788932800293\n      ],\n      [\n        \"▁testimonial\",\n        -12.697916030883789\n      ],\n      [\n        \"▁Economy\",\n        -12.697916984558105\n      ],\n      [\n        \"▁Wechsel\",\n        -12.697918891906738\n      ],\n      [\n        \"wirkung\",\n        -12.69801139831543\n      ],\n      [\n        \"▁exceeded\",\n        -12.698030471801758\n      ],\n      [\n        \"South\",\n        -12.698067665100098\n      ],\n      [\n        \"create\",\n        -12.698221206665039\n      ],\n      [\n        \"▁davantage\",\n        -12.698270797729492\n      ],\n      [\n        \"Log\",\n        -12.69831657409668\n      ],\n      [\n        \"▁irregular\",\n        -12.698587417602539\n      ],\n      [\n        \"VB\",\n        -12.698691368103027\n      ],\n      [\n        \"▁Rö\",\n        -12.698741912841797\n      ],\n      [\n        \"▁intreb\",\n        -12.698881149291992\n      ],\n      [\n        \"▁penser\",\n        -12.698920249938965\n      ],\n      [\n        \"▁déclaré\",\n        -12.698923110961914\n      ],\n      [\n        \"▁Tommy\",\n        -12.699026107788086\n      ],\n      [\n        \"2,500\",\n        -12.699163436889648\n      ],\n      [\n        \"▁Uganda\",\n        -12.699260711669922\n      ],\n      [\n        \"contacting\",\n        -12.699445724487305\n      ],\n      [\n        \"▁apreciat\",\n        -12.699485778808594\n      ],\n      [\n        \"▁beginnen\",\n        -12.6995210647583\n      ],\n      [\n        \"▁Gain\",\n        -12.699580192565918\n      ],\n      [\n        \"Office\",\n        -12.69969654083252\n      ],\n      [\n        \"ermittlung\",\n        -12.699710845947266\n      ],\n      [\n        \"▁Admission\",\n        -12.699727058410645\n      ],\n      [\n        \"▁Earl\",\n        -12.6997652053833\n      ],\n      [\n        \"▁Aviation\",\n        -12.699833869934082\n      ],\n      [\n        \"▁apologize\",\n        -12.699929237365723\n      ],\n      [\n        \"▁enclosure\",\n        -12.699929237365723\n      ],\n      [\n        \"▁Lack\",\n        -12.69998836517334\n      ],\n      [\n        \"wife\",\n        -12.699995994567871\n      ],\n      [\n        \"▁rotating\",\n        -12.700016975402832\n      ],\n      [\n        \"▁hergestellt\",\n        -12.700020790100098\n      ],\n      [\n        \"▁repository\",\n        -12.70002269744873\n      ],\n      [\n        \"TK\",\n        -12.700149536132812\n      ],\n      [\n        \"▁lectur\",\n        -12.700190544128418\n      ],\n      [\n        \"▁reflex\",\n        -12.700286865234375\n      ],\n      [\n        \"▁Harmon\",\n        -12.700401306152344\n      ],\n      [\n        \"▁vrem\",\n        -12.700479507446289\n      ],\n      [\n        \"▁Strange\",\n        -12.70055103302002\n      ],\n      [\n        \"▁champagne\",\n        -12.700615882873535\n      ],\n      [\n        \"▁oscil\",\n        -12.700647354125977\n      ],\n      [\n        \"sensitive\",\n        -12.700677871704102\n      ],\n      [\n        \"▁Sheriff\",\n        -12.700841903686523\n      ],\n      [\n        \"PRES\",\n        -12.700956344604492\n      ],\n      [\n        \"▁vow\",\n        -12.70123291015625\n      ],\n      [\n        \"▁dioxide\",\n        -12.701276779174805\n      ],\n      [\n        \"ен\",\n        -12.701374053955078\n      ],\n      [\n        \"▁corpului\",\n        -12.701376914978027\n      ],\n      [\n        \"▁prevăzut\",\n        -12.70160961151123\n      ],\n      [\n        \"India\",\n        -12.701827049255371\n      ],\n      [\n        \"hausse\",\n        -12.70189094543457\n      ],\n      [\n        \"▁clienți\",\n        -12.701957702636719\n      ],\n      [\n        \"▁entour\",\n        -12.70202350616455\n      ],\n      [\n        \"▁Sharp\",\n        -12.70209789276123\n      ],\n      [\n        \"▁teatru\",\n        -12.702285766601562\n      ],\n      [\n        \"▁Grow\",\n        -12.702327728271484\n      ],\n      [\n        \"▁caravan\",\n        -12.70234203338623\n      ],\n      [\n        \"▁sieben\",\n        -12.702420234680176\n      ],\n      [\n        \"▁cunosc\",\n        -12.702502250671387\n      ],\n      [\n        \"Bereichen\",\n        -12.702527046203613\n      ],\n      [\n        \"▁Benutzer\",\n        -12.702619552612305\n      ],\n      [\n        \"▁Ethiopia\",\n        -12.702619552612305\n      ],\n      [\n        \"▁Physics\",\n        -12.702619552612305\n      ],\n      [\n        \"preserving\",\n        -12.70263385772705\n      ],\n      [\n        \"ал\",\n        -12.702712059020996\n      ],\n      [\n        \"▁aerial\",\n        -12.70272159576416\n      ],\n      [\n        \"▁nouvel\",\n        -12.702741622924805\n      ],\n      [\n        \"▁stamped\",\n        -12.702954292297363\n      ],\n      [\n        \"▁inaugural\",\n        -12.702970504760742\n      ],\n      [\n        \"▁medicinal\",\n        -12.702999114990234\n      ],\n      [\n        \"Quite\",\n        -12.703028678894043\n      ],\n      [\n        \"accumulated\",\n        -12.703165054321289\n      ],\n      [\n        \"register\",\n        -12.703271865844727\n      ],\n      [\n        \"▁Falcon\",\n        -12.70327377319336\n      ],\n      [\n        \"▁boiling\",\n        -12.703301429748535\n      ],\n      [\n        \"▁advertised\",\n        -12.703339576721191\n      ],\n      [\n        \"collect\",\n        -12.703362464904785\n      ],\n      [\n        \"albeit\",\n        -12.703418731689453\n      ],\n      [\n        \"▁Organis\",\n        -12.703473091125488\n      ],\n      [\n        \"luate\",\n        -12.703536033630371\n      ],\n      [\n        \"▁préféré\",\n        -12.70369815826416\n      ],\n      [\n        \"▁frumoasa\",\n        -12.703968048095703\n      ],\n      [\n        \"▁truc\",\n        -12.704092979431152\n      ],\n      [\n        \"▁Fä\",\n        -12.704154968261719\n      ],\n      [\n        \"▁dome\",\n        -12.704180717468262\n      ],\n      [\n        \"Mobile\",\n        -12.704191207885742\n      ],\n      [\n        \"▁redeem\",\n        -12.704198837280273\n      ],\n      [\n        \"IONS\",\n        -12.70422077178955\n      ],\n      [\n        \"▁țări\",\n        -12.704235076904297\n      ],\n      [\n        \"▁singular\",\n        -12.704385757446289\n      ],\n      [\n        \"▁livestock\",\n        -12.704425811767578\n      ],\n      [\n        \"▁démont\",\n        -12.704427719116211\n      ],\n      [\n        \"clés\",\n        -12.704527854919434\n      ],\n      [\n        \"music\",\n        -12.704561233520508\n      ],\n      [\n        \"▁explicat\",\n        -12.704602241516113\n      ],\n      [\n        \"▁Fellowship\",\n        -12.704703330993652\n      ],\n      [\n        \"▁electrode\",\n        -12.704760551452637\n      ],\n      [\n        \"129\",\n        -12.704977035522461\n      ],\n      [\n        \"▁Rescue\",\n        -12.704983711242676\n      ],\n      [\n        \"▁Rocket\",\n        -12.705159187316895\n      ],\n      [\n        \"OSE\",\n        -12.705301284790039\n      ],\n      [\n        \"▁Sacramento\",\n        -12.705317497253418\n      ],\n      [\n        \"▁Haiti\",\n        -12.705357551574707\n      ],\n      [\n        \"▁Erwachsene\",\n        -12.705390930175781\n      ],\n      [\n        \"▁Terminal\",\n        -12.70541000366211\n      ],\n      [\n        \"URI\",\n        -12.705453872680664\n      ],\n      [\n        \"▁Rural\",\n        -12.70549201965332\n      ],\n      [\n        \"▁achizitiona\",\n        -12.70552921295166\n      ],\n      [\n        \"▁identifiable\",\n        -12.705655097961426\n      ],\n      [\n        \"▁gekauft\",\n        -12.705659866333008\n      ],\n      [\n        \"▁improper\",\n        -12.705673217773438\n      ],\n      [\n        \"lashes\",\n        -12.705751419067383\n      ],\n      [\n        \"vorbim\",\n        -12.705751419067383\n      ],\n      [\n        \"▁hinder\",\n        -12.705862045288086\n      ],\n      [\n        \"▁Grenz\",\n        -12.705878257751465\n      ],\n      [\n        \"Nav\",\n        -12.705955505371094\n      ],\n      [\n        \"alimentation\",\n        -12.705972671508789\n      ],\n      [\n        \"▁Cottage\",\n        -12.7059965133667\n      ],\n      [\n        \"▁nötig\",\n        -12.706197738647461\n      ],\n      [\n        \"▁cuprinde\",\n        -12.70622444152832\n      ],\n      [\n        \"session\",\n        -12.706256866455078\n      ],\n      [\n        \"▁Separat\",\n        -12.70634651184082\n      ],\n      [\n        \"▁besuchen\",\n        -12.706672668457031\n      ],\n      [\n        \"▁noodles\",\n        -12.706684112548828\n      ],\n      [\n        \"▁ballet\",\n        -12.706696510314941\n      ],\n      [\n        \"WG\",\n        -12.706731796264648\n      ],\n      [\n        \"▁Duty\",\n        -12.706871032714844\n      ],\n      [\n        \"▁porc\",\n        -12.706944465637207\n      ],\n      [\n        \"▁booster\",\n        -12.70698356628418\n      ],\n      [\n        \"galerie\",\n        -12.707056045532227\n      ],\n      [\n        \"▁Lance\",\n        -12.707119941711426\n      ],\n      [\n        \"▁déplac\",\n        -12.707178115844727\n      ],\n      [\n        \"▁rugby\",\n        -12.707240104675293\n      ],\n      [\n        \"▁upholstery\",\n        -12.707345962524414\n      ],\n      [\n        \"▁bustl\",\n        -12.70736312866211\n      ],\n      [\n        \"▁Dealer\",\n        -12.70740032196045\n      ],\n      [\n        \"▁genome\",\n        -12.707414627075195\n      ],\n      [\n        \"▁citizenship\",\n        -12.707466125488281\n      ],\n      [\n        \"rora\",\n        -12.707515716552734\n      ],\n      [\n        \"ARK\",\n        -12.707776069641113\n      ],\n      [\n        \"▁Semi\",\n        -12.707820892333984\n      ],\n      [\n        \"▁Improvement\",\n        -12.707892417907715\n      ],\n      [\n        \"▁negru\",\n        -12.708142280578613\n      ],\n      [\n        \"▁Bruxelles\",\n        -12.70836067199707\n      ],\n      [\n        \"flüge\",\n        -12.70837688446045\n      ],\n      [\n        \"▁Technique\",\n        -12.708392143249512\n      ],\n      [\n        \"▁Obst\",\n        -12.708413124084473\n      ],\n      [\n        \"2020\",\n        -12.708560943603516\n      ],\n      [\n        \"▁gek\",\n        -12.708593368530273\n      ],\n      [\n        \"▁drepturi\",\n        -12.708600997924805\n      ],\n      [\n        \"▁Logan\",\n        -12.708605766296387\n      ],\n      [\n        \"gelöst\",\n        -12.70863151550293\n      ],\n      [\n        \"▁grandparents\",\n        -12.708702087402344\n      ],\n      [\n        \"phin\",\n        -12.708950996398926\n      ],\n      [\n        \"▁dwell\",\n        -12.709037780761719\n      ],\n      [\n        \"▁Nobel\",\n        -12.709151268005371\n      ],\n      [\n        \"dial\",\n        -12.70927906036377\n      ],\n      [\n        \"▁spontan\",\n        -12.709344863891602\n      ],\n      [\n        \"advancing\",\n        -12.70937728881836\n      ],\n      [\n        \"starring\",\n        -12.70947551727295\n      ],\n      [\n        \"▁astea\",\n        -12.709498405456543\n      ],\n      [\n        \"igueur\",\n        -12.709638595581055\n      ],\n      [\n        \"▁Ancient\",\n        -12.709700584411621\n      ],\n      [\n        \"filter\",\n        -12.70971965789795\n      ],\n      [\n        \"Doar\",\n        -12.709758758544922\n      ],\n      [\n        \"▁Workers\",\n        -12.709759712219238\n      ],\n      [\n        \"Certainly\",\n        -12.709906578063965\n      ],\n      [\n        \"▁commencé\",\n        -12.709914207458496\n      ],\n      [\n        \"▁zipper\",\n        -12.710001945495605\n      ],\n      [\n        \"▁Selection\",\n        -12.710070610046387\n      ],\n      [\n        \"▁succ\",\n        -12.710280418395996\n      ],\n      [\n        \"headed\",\n        -12.710345268249512\n      ],\n      [\n        \"RIA\",\n        -12.710350036621094\n      ],\n      [\n        \"▁papa\",\n        -12.710366249084473\n      ],\n      [\n        \"▁profesionale\",\n        -12.710394859313965\n      ],\n      [\n        \"▁Zeichen\",\n        -12.710402488708496\n      ],\n      [\n        \"▁artisans\",\n        -12.710489273071289\n      ],\n      [\n        \"▁Geist\",\n        -12.710585594177246\n      ],\n      [\n        \"practic\",\n        -12.710741996765137\n      ],\n      [\n        \"▁ministrul\",\n        -12.71076488494873\n      ],\n      [\n        \"viens\",\n        -12.710912704467773\n      ],\n      [\n        \"prezintă\",\n        -12.710919380187988\n      ],\n      [\n        \"Integrated\",\n        -12.710981369018555\n      ],\n      [\n        \"▁rooftop\",\n        -12.710989952087402\n      ],\n      [\n        \"▁successor\",\n        -12.710991859436035\n      ],\n      [\n        \"OTO\",\n        -12.711012840270996\n      ],\n      [\n        \"liés\",\n        -12.711027145385742\n      ],\n      [\n        \"▁Diver\",\n        -12.71121597290039\n      ],\n      [\n        \"Specifically\",\n        -12.711297988891602\n      ],\n      [\n        \"▁calibr\",\n        -12.711301803588867\n      ],\n      [\n        \"KK\",\n        -12.711341857910156\n      ],\n      [\n        \"▁défense\",\n        -12.711414337158203\n      ],\n      [\n        \"▁english\",\n        -12.711414337158203\n      ],\n      [\n        \"verbrauch\",\n        -12.711418151855469\n      ],\n      [\n        \"▁attire\",\n        -12.711433410644531\n      ],\n      [\n        \"▁Recipe\",\n        -12.711441040039062\n      ],\n      [\n        \"équilibre\",\n        -12.711457252502441\n      ],\n      [\n        \"accumul\",\n        -12.71157169342041\n      ],\n      [\n        \"▁financement\",\n        -12.71169662475586\n      ],\n      [\n        \"rij\",\n        -12.711962699890137\n      ],\n      [\n        \"▁prince\",\n        -12.711999893188477\n      ],\n      [\n        \"▁préparer\",\n        -12.7120361328125\n      ],\n      [\n        \"surviving\",\n        -12.71211051940918\n      ],\n      [\n        \"operation\",\n        -12.712233543395996\n      ],\n      [\n        \"▁judet\",\n        -12.71242904663086\n      ],\n      [\n        \"▁Verantwortung\",\n        -12.712433815002441\n      ],\n      [\n        \"▁Vinyl\",\n        -12.712536811828613\n      ],\n      [\n        \"DEN\",\n        -12.712584495544434\n      ],\n      [\n        \"▁Tail\",\n        -12.712589263916016\n      ],\n      [\n        \"yearly\",\n        -12.712590217590332\n      ],\n      [\n        \"▁comisi\",\n        -12.712613105773926\n      ],\n      [\n        \"lava\",\n        -12.71261978149414\n      ],\n      [\n        \"▁succession\",\n        -12.71264934539795\n      ],\n      [\n        \"▁Whisk\",\n        -12.713030815124512\n      ],\n      [\n        \"▁precizat\",\n        -12.713096618652344\n      ],\n      [\n        \"▁unmittelbar\",\n        -12.713117599487305\n      ],\n      [\n        \"ICH\",\n        -12.713139533996582\n      ],\n      [\n        \"▁atteint\",\n        -12.713199615478516\n      ],\n      [\n        \"▁hometown\",\n        -12.713268280029297\n      ],\n      [\n        \"▁Zip\",\n        -12.71328353881836\n      ],\n      [\n        \"▁Weekly\",\n        -12.71336841583252\n      ],\n      [\n        \"▁crashes\",\n        -12.713401794433594\n      ],\n      [\n        \"▁Turbo\",\n        -12.713421821594238\n      ],\n      [\n        \"▁susține\",\n        -12.713468551635742\n      ],\n      [\n        \"▁Venus\",\n        -12.713587760925293\n      ],\n      [\n        \"▁finalement\",\n        -12.713595390319824\n      ],\n      [\n        \"rewarded\",\n        -12.713693618774414\n      ],\n      [\n        \"▁principau\",\n        -12.713899612426758\n      ],\n      [\n        \"▁régional\",\n        -12.713979721069336\n      ],\n      [\n        \"▁1958\",\n        -12.714178085327148\n      ],\n      [\n        \"▁Musical\",\n        -12.714189529418945\n      ],\n      [\n        \"▁stylist\",\n        -12.714251518249512\n      ],\n      [\n        \"cetate\",\n        -12.714282035827637\n      ],\n      [\n        \"gorge\",\n        -12.71433162689209\n      ],\n      [\n        \"▁espresso\",\n        -12.714493751525879\n      ],\n      [\n        \"überall\",\n        -12.714576721191406\n      ],\n      [\n        \"▁NHL\",\n        -12.714593887329102\n      ],\n      [\n        \"▁Dock\",\n        -12.71472454071045\n      ],\n      [\n        \"▁mosquito\",\n        -12.71481704711914\n      ],\n      [\n        \"▁forthcoming\",\n        -12.714852333068848\n      ],\n      [\n        \"▁Visitors\",\n        -12.714881896972656\n      ],\n      [\n        \"kro\",\n        -12.714882850646973\n      ],\n      [\n        \"_______\",\n        -12.715048789978027\n      ],\n      [\n        \"▁STEM\",\n        -12.715105056762695\n      ],\n      [\n        \"9.5\",\n        -12.715141296386719\n      ],\n      [\n        \"accompagne\",\n        -12.715177536010742\n      ],\n      [\n        \"▁Trick\",\n        -12.715202331542969\n      ],\n      [\n        \"▁endorsement\",\n        -12.715400695800781\n      ],\n      [\n        \"▁amplifier\",\n        -12.715498924255371\n      ],\n      [\n        \"▁malicious\",\n        -12.715499877929688\n      ],\n      [\n        \"▁roam\",\n        -12.71552848815918\n      ],\n      [\n        \"▁kennt\",\n        -12.715635299682617\n      ],\n      [\n        \"Connor\",\n        -12.715690612792969\n      ],\n      [\n        \"▁dysfunction\",\n        -12.715828895568848\n      ],\n      [\n        \"▁zuverlässig\",\n        -12.715840339660645\n      ],\n      [\n        \"▁corpul\",\n        -12.71595573425293\n      ],\n      [\n        \"▁boule\",\n        -12.715967178344727\n      ],\n      [\n        \"otti\",\n        -12.715991973876953\n      ],\n      [\n        \"440\",\n        -12.716050148010254\n      ],\n      [\n        \"▁mimic\",\n        -12.716056823730469\n      ],\n      [\n        \"farben\",\n        -12.716129302978516\n      ],\n      [\n        \"▁Wagner\",\n        -12.716214179992676\n      ],\n      [\n        \"Kom\",\n        -12.7162504196167\n      ],\n      [\n        \"▁miteinander\",\n        -12.716269493103027\n      ],\n      [\n        \"▁String\",\n        -12.716296195983887\n      ],\n      [\n        \"▁Ellis\",\n        -12.716313362121582\n      ],\n      [\n        \"▁Perth\",\n        -12.716337203979492\n      ],\n      [\n        \"▁temperatura\",\n        -12.716381072998047\n      ],\n      [\n        \"umbling\",\n        -12.716397285461426\n      ],\n      [\n        \"▁Medizin\",\n        -12.716554641723633\n      ],\n      [\n        \"▁KY\",\n        -12.71660327911377\n      ],\n      [\n        \"apei\",\n        -12.716642379760742\n      ],\n      [\n        \"counter\",\n        -12.716647148132324\n      ],\n      [\n        \"strich\",\n        -12.71665096282959\n      ],\n      [\n        \"▁Între\",\n        -12.716652870178223\n      ],\n      [\n        \"▁Cliff\",\n        -12.716785430908203\n      ],\n      [\n        \"▁foreclosure\",\n        -12.716864585876465\n      ],\n      [\n        \"................\",\n        -12.716878890991211\n      ],\n      [\n        \"Clearly\",\n        -12.717028617858887\n      ],\n      [\n        \"AJ\",\n        -12.717057228088379\n      ],\n      [\n        \"ndro\",\n        -12.717180252075195\n      ],\n      [\n        \"▁Arsenal\",\n        -12.717206001281738\n      ],\n      [\n        \"▁Recherche\",\n        -12.717216491699219\n      ],\n      [\n        \"Guests\",\n        -12.717225074768066\n      ],\n      [\n        \"▁besucht\",\n        -12.717242240905762\n      ],\n      [\n        \"wissen\",\n        -12.717266082763672\n      ],\n      [\n        \"fekt\",\n        -12.717414855957031\n      ],\n      [\n        \"hottest\",\n        -12.717414855957031\n      ],\n      [\n        \"▁Tomorrow\",\n        -12.717547416687012\n      ],\n      [\n        \"▁Signature\",\n        -12.717557907104492\n      ],\n      [\n        \"127\",\n        -12.717583656311035\n      ],\n      [\n        \"▁competence\",\n        -12.71766471862793\n      ],\n      [\n        \"Einige\",\n        -12.717686653137207\n      ],\n      [\n        \"patented\",\n        -12.71782112121582\n      ],\n      [\n        \"▁Exhibition\",\n        -12.717889785766602\n      ],\n      [\n        \"▁verbessern\",\n        -12.717889785766602\n      ],\n      [\n        \"▁Garcia\",\n        -12.718043327331543\n      ],\n      [\n        \"▁inquire\",\n        -12.718278884887695\n      ],\n      [\n        \"coping\",\n        -12.718353271484375\n      ],\n      [\n        \"▁linguri\",\n        -12.71842098236084\n      ],\n      [\n        \"▁trivia\",\n        -12.718433380126953\n      ],\n      [\n        \"▁începutul\",\n        -12.718489646911621\n      ],\n      [\n        \"▁parteneriat\",\n        -12.7186279296875\n      ],\n      [\n        \"tagen\",\n        -12.718636512756348\n      ],\n      [\n        \"▁engagé\",\n        -12.718916893005371\n      ],\n      [\n        \"▁chalk\",\n        -12.718944549560547\n      ],\n      [\n        \"▁fashionable\",\n        -12.719416618347168\n      ],\n      [\n        \"0.8\",\n        -12.719635009765625\n      ],\n      [\n        \"▁sticker\",\n        -12.719751358032227\n      ],\n      [\n        \"▁desperately\",\n        -12.719765663146973\n      ],\n      [\n        \"höhe\",\n        -12.719903945922852\n      ],\n      [\n        \"▁fericire\",\n        -12.71994400024414\n      ],\n      [\n        \"évaluation\",\n        -12.719948768615723\n      ],\n      [\n        \"▁Divide\",\n        -12.719959259033203\n      ],\n      [\n        \"▁indulge\",\n        -12.719979286193848\n      ],\n      [\n        \"fett\",\n        -12.720014572143555\n      ],\n      [\n        \"▁communal\",\n        -12.72017765045166\n      ],\n      [\n        \"▁mindful\",\n        -12.720187187194824\n      ],\n      [\n        \"dauert\",\n        -12.720192909240723\n      ],\n      [\n        \"▁veille\",\n        -12.720263481140137\n      ],\n      [\n        \"▁vér\",\n        -12.720330238342285\n      ],\n      [\n        \"▁Baseball\",\n        -12.720373153686523\n      ],\n      [\n        \"▁succeeded\",\n        -12.720418930053711\n      ],\n      [\n        \"▁Terrasse\",\n        -12.720420837402344\n      ],\n      [\n        \"irgend\",\n        -12.720500946044922\n      ],\n      [\n        \"▁Munich\",\n        -12.720556259155273\n      ],\n      [\n        \"weisung\",\n        -12.72067642211914\n      ],\n      [\n        \"metre\",\n        -12.720916748046875\n      ],\n      [\n        \"▁Raymond\",\n        -12.721015930175781\n      ],\n      [\n        \"▁chute\",\n        -12.72102165222168\n      ],\n      [\n        \"▁Accounting\",\n        -12.721075057983398\n      ],\n      [\n        \"▁pantry\",\n        -12.721122741699219\n      ],\n      [\n        \"▁underwater\",\n        -12.721181869506836\n      ],\n      [\n        \"ARI\",\n        -12.721222877502441\n      ],\n      [\n        \"lowed\",\n        -12.721245765686035\n      ],\n      [\n        \"numbered\",\n        -12.721430778503418\n      ],\n      [\n        \"REN\",\n        -12.72148609161377\n      ],\n      [\n        \"▁industriel\",\n        -12.721489906311035\n      ],\n      [\n        \"wäh\",\n        -12.721531867980957\n      ],\n      [\n        \"kenntnis\",\n        -12.721631050109863\n      ],\n      [\n        \"▁govern\",\n        -12.721635818481445\n      ],\n      [\n        \"strained\",\n        -12.721661567687988\n      ],\n      [\n        \"▁rythme\",\n        -12.721689224243164\n      ],\n      [\n        \"ин\",\n        -12.72169303894043\n      ],\n      [\n        \"▁burner\",\n        -12.721723556518555\n      ],\n      [\n        \"▁zählt\",\n        -12.721790313720703\n      ],\n      [\n        \"▁verte\",\n        -12.721883773803711\n      ],\n      [\n        \"▁Catalog\",\n        -12.721896171569824\n      ],\n      [\n        \"▁Bruno\",\n        -12.721988677978516\n      ],\n      [\n        \"0.7\",\n        -12.721997261047363\n      ],\n      [\n        \"▁litig\",\n        -12.72207260131836\n      ],\n      [\n        \"▁greet\",\n        -12.722129821777344\n      ],\n      [\n        \"▁stool\",\n        -12.722393035888672\n      ],\n      [\n        \"gression\",\n        -12.722457885742188\n      ],\n      [\n        \"▁Klassen\",\n        -12.722491264343262\n      ],\n      [\n        \"▁neon\",\n        -12.722661018371582\n      ],\n      [\n        \"▁Tall\",\n        -12.722734451293945\n      ],\n      [\n        \"▁satin\",\n        -12.722895622253418\n      ],\n      [\n        \"▁Bend\",\n        -12.722915649414062\n      ],\n      [\n        \"▁soluţi\",\n        -12.723077774047852\n      ],\n      [\n        \"▁styl\",\n        -12.723196983337402\n      ],\n      [\n        \"▁Siri\",\n        -12.723358154296875\n      ],\n      [\n        \"▁Sanders\",\n        -12.723464012145996\n      ],\n      [\n        \"▁spike\",\n        -12.723499298095703\n      ],\n      [\n        \"pinion\",\n        -12.723854064941406\n      ],\n      [\n        \"▁purta\",\n        -12.724122047424316\n      ],\n      [\n        \"CARE\",\n        -12.724224090576172\n      ],\n      [\n        \"▁creştere\",\n        -12.724311828613281\n      ],\n      [\n        \"▁fry\",\n        -12.724374771118164\n      ],\n      [\n        \"▁Schweizer\",\n        -12.724400520324707\n      ],\n      [\n        \"durchschnittlich\",\n        -12.724411010742188\n      ],\n      [\n        \"celaşi\",\n        -12.724446296691895\n      ],\n      [\n        \"▁deceased\",\n        -12.724474906921387\n      ],\n      [\n        \"▁Nerv\",\n        -12.724668502807617\n      ],\n      [\n        \"2-2\",\n        -12.7247314453125\n      ],\n      [\n        \"▁Stahl\",\n        -12.724753379821777\n      ],\n      [\n        \"▁workload\",\n        -12.724834442138672\n      ],\n      [\n        \"erhielt\",\n        -12.724984169006348\n      ],\n      [\n        \"▁hypothesis\",\n        -12.725103378295898\n      ],\n      [\n        \"bib\",\n        -12.725110054016113\n      ],\n      [\n        \"▁ţară\",\n        -12.725116729736328\n      ],\n      [\n        \"vaut\",\n        -12.725122451782227\n      ],\n      [\n        \"prehensi\",\n        -12.725184440612793\n      ],\n      [\n        \"▁Offering\",\n        -12.725188255310059\n      ],\n      [\n        \"▁dislike\",\n        -12.725252151489258\n      ],\n      [\n        \"▁firewall\",\n        -12.725252151489258\n      ],\n      [\n        \"mania\",\n        -12.725255966186523\n      ],\n      [\n        \"195\",\n        -12.725278854370117\n      ],\n      [\n        \"▁Champ\",\n        -12.725324630737305\n      ],\n      [\n        \"▁philosophical\",\n        -12.725343704223633\n      ],\n      [\n        \"länge\",\n        -12.72553539276123\n      ],\n      [\n        \"advisable\",\n        -12.725785255432129\n      ],\n      [\n        \"negotiating\",\n        -12.725785255432129\n      ],\n      [\n        \"Providing\",\n        -12.725791931152344\n      ],\n      [\n        \"▁1959\",\n        -12.725801467895508\n      ],\n      [\n        \"▁spyware\",\n        -12.725831031799316\n      ],\n      [\n        \"sharing\",\n        -12.725837707519531\n      ],\n      [\n        \"▁prévoi\",\n        -12.725905418395996\n      ],\n      [\n        \"▁jaune\",\n        -12.7260103225708\n      ],\n      [\n        \"schoss\",\n        -12.726028442382812\n      ],\n      [\n        \"▁obține\",\n        -12.726129531860352\n      ],\n      [\n        \"▁attraktiv\",\n        -12.726489067077637\n      ],\n      [\n        \"gemeinschaft\",\n        -12.7265043258667\n      ],\n      [\n        \"BV\",\n        -12.726505279541016\n      ],\n      [\n        \"Top\",\n        -12.726617813110352\n      ],\n      [\n        \"▁Sharon\",\n        -12.726625442504883\n      ],\n      [\n        \"bok\",\n        -12.726675033569336\n      ],\n      [\n        \"▁résist\",\n        -12.726811408996582\n      ],\n      [\n        \"Napoca\",\n        -12.726822853088379\n      ],\n      [\n        \"▁Uncategorized\",\n        -12.726898193359375\n      ],\n      [\n        \"▁trustee\",\n        -12.726936340332031\n      ],\n      [\n        \"▁remise\",\n        -12.727025985717773\n      ],\n      [\n        \"▁aştept\",\n        -12.727165222167969\n      ],\n      [\n        \"▁allergic\",\n        -12.727206230163574\n      ],\n      [\n        \"èvre\",\n        -12.727211952209473\n      ],\n      [\n        \"LAR\",\n        -12.72734546661377\n      ],\n      [\n        \"1.9\",\n        -12.727497100830078\n      ],\n      [\n        \"▁outbreak\",\n        -12.727520942687988\n      ],\n      [\n        \"▁trocken\",\n        -12.727568626403809\n      ],\n      [\n        \"▁laughter\",\n        -12.727724075317383\n      ],\n      [\n        \"▁Attend\",\n        -12.727785110473633\n      ],\n      [\n        \"jung\",\n        -12.727822303771973\n      ],\n      [\n        \"racking\",\n        -12.727934837341309\n      ],\n      [\n        \"ORS\",\n        -12.728178024291992\n      ],\n      [\n        \"▁rasp\",\n        -12.728527069091797\n      ],\n      [\n        \"VF\",\n        -12.728551864624023\n      ],\n      [\n        \"▁Tamil\",\n        -12.72860050201416\n      ],\n      [\n        \"124\",\n        -12.728602409362793\n      ],\n      [\n        \"▁Fiber\",\n        -12.728714942932129\n      ],\n      [\n        \"▁launches\",\n        -12.728755950927734\n      ],\n      [\n        \"Post\",\n        -12.728777885437012\n      ],\n      [\n        \"▁bucks\",\n        -12.729072570800781\n      ],\n      [\n        \"▁Nicholas\",\n        -12.72923755645752\n      ],\n      [\n        \"▁cărți\",\n        -12.729255676269531\n      ],\n      [\n        \"emper\",\n        -12.729681968688965\n      ],\n      [\n        \"Point\",\n        -12.729689598083496\n      ],\n      [\n        \"fraction\",\n        -12.729753494262695\n      ],\n      [\n        \"▁BIG\",\n        -12.729804992675781\n      ],\n      [\n        \"▁lancer\",\n        -12.729829788208008\n      ],\n      [\n        \"EVER\",\n        -12.72997760772705\n      ],\n      [\n        \"trend\",\n        -12.73000431060791\n      ],\n      [\n        \"▁remerci\",\n        -12.730076789855957\n      ],\n      [\n        \"▁prevalent\",\n        -12.730168342590332\n      ],\n      [\n        \"370\",\n        -12.730290412902832\n      ],\n      [\n        \"▁bestellen\",\n        -12.730327606201172\n      ],\n      [\n        \"Buying\",\n        -12.730341911315918\n      ],\n      [\n        \"▁Aufbau\",\n        -12.730416297912598\n      ],\n      [\n        \"▁opini\",\n        -12.730416297912598\n      ],\n      [\n        \"▁regiune\",\n        -12.730663299560547\n      ],\n      [\n        \"▁martial\",\n        -12.73069953918457\n      ],\n      [\n        \"LK\",\n        -12.730754852294922\n      ],\n      [\n        \"▁Feuerwehr\",\n        -12.730974197387695\n      ],\n      [\n        \"screened\",\n        -12.73099422454834\n      ],\n      [\n        \"Blue\",\n        -12.73120403289795\n      ],\n      [\n        \"▁analize\",\n        -12.731237411499023\n      ],\n      [\n        \"▁lure\",\n        -12.731247901916504\n      ],\n      [\n        \"▁internally\",\n        -12.731283187866211\n      ],\n      [\n        \"father\",\n        -12.731322288513184\n      ],\n      [\n        \"▁diplomatic\",\n        -12.731343269348145\n      ],\n      [\n        \"▁Activity\",\n        -12.731464385986328\n      ],\n      [\n        \"▁cliqu\",\n        -12.73156452178955\n      ],\n      [\n        \"▁adequately\",\n        -12.731809616088867\n      ],\n      [\n        \"▁Elena\",\n        -12.73183822631836\n      ],\n      [\n        \"▁Citizens\",\n        -12.732102394104004\n      ],\n      [\n        \"▁Länge\",\n        -12.732295989990234\n      ],\n      [\n        \"▁respectful\",\n        -12.732300758361816\n      ],\n      [\n        \"▁zuständig\",\n        -12.73248291015625\n      ],\n      [\n        \"▁réception\",\n        -12.732584953308105\n      ],\n      [\n        \"▁headset\",\n        -12.732686996459961\n      ],\n      [\n        \"▁awhile\",\n        -12.732705116271973\n      ],\n      [\n        \"▁speculation\",\n        -12.732707977294922\n      ],\n      [\n        \"▁WhatsApp\",\n        -12.732714653015137\n      ],\n      [\n        \"▁tulbur\",\n        -12.732731819152832\n      ],\n      [\n        \"▁voluntar\",\n        -12.732758522033691\n      ],\n      [\n        \"▁Studium\",\n        -12.73277473449707\n      ],\n      [\n        \"▁protector\",\n        -12.732833862304688\n      ],\n      [\n        \"▁Wrap\",\n        -12.732840538024902\n      ],\n      [\n        \"staat\",\n        -12.732951164245605\n      ],\n      [\n        \"▁judgement\",\n        -12.733396530151367\n      ],\n      [\n        \"unauthorized\",\n        -12.733397483825684\n      ],\n      [\n        \"Rank\",\n        -12.733487129211426\n      ],\n      [\n        \"pră\",\n        -12.733503341674805\n      ],\n      [\n        \"▁Paw\",\n        -12.733627319335938\n      ],\n      [\n        \"▁relev\",\n        -12.733664512634277\n      ],\n      [\n        \"▁arbor\",\n        -12.733830451965332\n      ],\n      [\n        \"stretches\",\n        -12.733885765075684\n      ],\n      [\n        \"nook\",\n        -12.733906745910645\n      ],\n      [\n        \"▁Tunis\",\n        -12.733907699584961\n      ],\n      [\n        \"▁shocking\",\n        -12.734036445617676\n      ],\n      [\n        \"▁oppress\",\n        -12.73414421081543\n      ],\n      [\n        \"10.1\",\n        -12.7341890335083\n      ],\n      [\n        \"▁ERP\",\n        -12.734310150146484\n      ],\n      [\n        \"wolle\",\n        -12.7343168258667\n      ],\n      [\n        \"▁Catch\",\n        -12.734352111816406\n      ],\n      [\n        \"Plus\",\n        -12.734368324279785\n      ],\n      [\n        \"Market\",\n        -12.734445571899414\n      ],\n      [\n        \"scribed\",\n        -12.734536170959473\n      ],\n      [\n        \"▁décoration\",\n        -12.734594345092773\n      ],\n      [\n        \"▁chanson\",\n        -12.734607696533203\n      ],\n      [\n        \"▁Midwest\",\n        -12.734763145446777\n      ],\n      [\n        \"▁Spencer\",\n        -12.734795570373535\n      ],\n      [\n        \"▁societate\",\n        -12.734807968139648\n      ],\n      [\n        \"curated\",\n        -12.735087394714355\n      ],\n      [\n        \"▁canopy\",\n        -12.735135078430176\n      ],\n      [\n        \"ат\",\n        -12.735142707824707\n      ],\n      [\n        \"Sig\",\n        -12.73514461517334\n      ],\n      [\n        \"▁witch\",\n        -12.735153198242188\n      ],\n      [\n        \"envoyer\",\n        -12.735175132751465\n      ],\n      [\n        \"▁$1,000\",\n        -12.735230445861816\n      ],\n      [\n        \"▁peripheral\",\n        -12.735482215881348\n      ],\n      [\n        \"nnouncing\",\n        -12.735509872436523\n      ],\n      [\n        \"perfect\",\n        -12.73559284210205\n      ],\n      [\n        \"▁warten\",\n        -12.735748291015625\n      ],\n      [\n        \"ELI\",\n        -12.735822677612305\n      ],\n      [\n        \"▁recap\",\n        -12.735912322998047\n      ],\n      [\n        \"dün\",\n        -12.735978126525879\n      ],\n      [\n        \"▁Spre\",\n        -12.736029624938965\n      ],\n      [\n        \"2005\",\n        -12.736153602600098\n      ],\n      [\n        \"▁réparation\",\n        -12.73617935180664\n      ],\n      [\n        \"▁extraordinar\",\n        -12.736196517944336\n      ],\n      [\n        \"existence\",\n        -12.736337661743164\n      ],\n      [\n        \"oanele\",\n        -12.736467361450195\n      ],\n      [\n        \"▁reprezentant\",\n        -12.736474990844727\n      ],\n      [\n        \"▁attacker\",\n        -12.736490249633789\n      ],\n      [\n        \"▁Berliner\",\n        -12.73657512664795\n      ],\n      [\n        \"experience\",\n        -12.736649513244629\n      ],\n      [\n        \"▁Monde\",\n        -12.736800193786621\n      ],\n      [\n        \"intervention\",\n        -12.736956596374512\n      ],\n      [\n        \"▁Einstellung\",\n        -12.736977577209473\n      ],\n      [\n        \"▁Valentin\",\n        -12.737011909484863\n      ],\n      [\n        \"▁zonă\",\n        -12.737200736999512\n      ],\n      [\n        \"occupant\",\n        -12.737223625183105\n      ],\n      [\n        \"▁mobilis\",\n        -12.737260818481445\n      ],\n      [\n        \"metall\",\n        -12.737261772155762\n      ],\n      [\n        \"evangeli\",\n        -12.73729133605957\n      ],\n      [\n        \"Adding\",\n        -12.737326622009277\n      ],\n      [\n        \"▁Roland\",\n        -12.73735237121582\n      ],\n      [\n        \"ENCE\",\n        -12.737462043762207\n      ],\n      [\n        \"▁Insul\",\n        -12.737478256225586\n      ],\n      [\n        \"tellement\",\n        -12.737497329711914\n      ],\n      [\n        \"▁Blogger\",\n        -12.737499237060547\n      ],\n      [\n        \"▁prote\",\n        -12.737504005432129\n      ],\n      [\n        \"▁Minimum\",\n        -12.737574577331543\n      ],\n      [\n        \"▁termic\",\n        -12.737624168395996\n      ],\n      [\n        \"▁Sachen\",\n        -12.737859725952148\n      ],\n      [\n        \"▁Maschinen\",\n        -12.737863540649414\n      ],\n      [\n        \"▁Dragnea\",\n        -12.737926483154297\n      ],\n      [\n        \"▁overtime\",\n        -12.737967491149902\n      ],\n      [\n        \"calorie\",\n        -12.737968444824219\n      ],\n      [\n        \"▁jene\",\n        -12.73814868927002\n      ],\n      [\n        \"▁Satan\",\n        -12.738153457641602\n      ],\n      [\n        \"▁currencies\",\n        -12.73827075958252\n      ],\n      [\n        \"▁echipamente\",\n        -12.738329887390137\n      ],\n      [\n        \"▁forgiveness\",\n        -12.73843765258789\n      ],\n      [\n        \"▁Pause\",\n        -12.738479614257812\n      ],\n      [\n        \"▁Witt\",\n        -12.738529205322266\n      ],\n      [\n        \"STOR\",\n        -12.738632202148438\n      ],\n      [\n        \"▁actuelle\",\n        -12.738703727722168\n      ],\n      [\n        \"▁Ard\",\n        -12.738853454589844\n      ],\n      [\n        \"▁Constitu\",\n        -12.738880157470703\n      ],\n      [\n        \"ghan\",\n        -12.7388916015625\n      ],\n      [\n        \"Make\",\n        -12.738906860351562\n      ],\n      [\n        \"▁garne\",\n        -12.738947868347168\n      ],\n      [\n        \"▁Hitler\",\n        -12.738956451416016\n      ],\n      [\n        \"▁rubbish\",\n        -12.738973617553711\n      ],\n      [\n        \"6.0\",\n        -12.739025115966797\n      ],\n      [\n        \"▁Giving\",\n        -12.739177703857422\n      ],\n      [\n        \"▁persever\",\n        -12.73937702178955\n      ],\n      [\n        \"wirk\",\n        -12.7394380569458\n      ],\n      [\n        \"liegenden\",\n        -12.739455223083496\n      ],\n      [\n        \"▁morceau\",\n        -12.73946762084961\n      ],\n      [\n        \"atty\",\n        -12.73961067199707\n      ],\n      [\n        \"▁Quebec\",\n        -12.739669799804688\n      ],\n      [\n        \"harmonie\",\n        -12.739705085754395\n      ],\n      [\n        \"Nummer\",\n        -12.739721298217773\n      ],\n      [\n        \"▁splendid\",\n        -12.739747047424316\n      ],\n      [\n        \"▁halfway\",\n        -12.739808082580566\n      ],\n      [\n        \"▁periodically\",\n        -12.740071296691895\n      ],\n      [\n        \"▁Ländern\",\n        -12.740077018737793\n      ],\n      [\n        \"▁AAA\",\n        -12.740083694458008\n      ],\n      [\n        \"▁Frost\",\n        -12.740198135375977\n      ],\n      [\n        \"▁heroin\",\n        -12.740289688110352\n      ],\n      [\n        \"▁bucurie\",\n        -12.7403564453125\n      ],\n      [\n        \"▁Pradesh\",\n        -12.74036693572998\n      ],\n      [\n        \"zusetzen\",\n        -12.740405082702637\n      ],\n      [\n        \"raising\",\n        -12.740425109863281\n      ],\n      [\n        \"▁furniz\",\n        -12.740567207336426\n      ],\n      [\n        \"▁convi\",\n        -12.740575790405273\n      ],\n      [\n        \"pictured\",\n        -12.740911483764648\n      ],\n      [\n        \"▁inadequate\",\n        -12.741065979003906\n      ],\n      [\n        \"▁aprobat\",\n        -12.741069793701172\n      ],\n      [\n        \"▁exercising\",\n        -12.741083145141602\n      ],\n      [\n        \"▁faisai\",\n        -12.741138458251953\n      ],\n      [\n        \"▁prosecution\",\n        -12.741231918334961\n      ],\n      [\n        \"380\",\n        -12.741402626037598\n      ],\n      [\n        \"▁Potential\",\n        -12.74145793914795\n      ],\n      [\n        \"▁Magi\",\n        -12.741523742675781\n      ],\n      [\n        \"From\",\n        -12.741752624511719\n      ],\n      [\n        \"batterie\",\n        -12.74181079864502\n      ],\n      [\n        \"▁poisson\",\n        -12.74185562133789\n      ],\n      [\n        \"▁Probe\",\n        -12.741950988769531\n      ],\n      [\n        \"▁pastel\",\n        -12.741998672485352\n      ],\n      [\n        \"▁tracked\",\n        -12.742410659790039\n      ],\n      [\n        \"▁advertisers\",\n        -12.74251937866211\n      ],\n      [\n        \"adevar\",\n        -12.742537498474121\n      ],\n      [\n        \"ит\",\n        -12.742776870727539\n      ],\n      [\n        \"▁Herren\",\n        -12.742815971374512\n      ],\n      [\n        \"EAM\",\n        -12.742820739746094\n      ],\n      [\n        \"▁scooter\",\n        -12.742822647094727\n      ],\n      [\n        \"requesting\",\n        -12.742841720581055\n      ],\n      [\n        \"dynamis\",\n        -12.742949485778809\n      ],\n      [\n        \"▁dahin\",\n        -12.742961883544922\n      ],\n      [\n        \"▁tweak\",\n        -12.743061065673828\n      ],\n      [\n        \"▁hail\",\n        -12.743101119995117\n      ],\n      [\n        \"▁întotdeauna\",\n        -12.743160247802734\n      ],\n      [\n        \"▁Publikum\",\n        -12.743167877197266\n      ],\n      [\n        \"▁panoramic\",\n        -12.743167877197266\n      ],\n      [\n        \"▁PRE\",\n        -12.74331283569336\n      ],\n      [\n        \"▁thrill\",\n        -12.743361473083496\n      ],\n      [\n        \"Open\",\n        -12.743366241455078\n      ],\n      [\n        \"▁Layer\",\n        -12.74345588684082\n      ],\n      [\n        \"▁Bosch\",\n        -12.743459701538086\n      ],\n      [\n        \"hull\",\n        -12.743511199951172\n      ],\n      [\n        \"▁născut\",\n        -12.743518829345703\n      ],\n      [\n        \"tausch\",\n        -12.743559837341309\n      ],\n      [\n        \"▁autoturism\",\n        -12.743577003479004\n      ],\n      [\n        \"▁crank\",\n        -12.743701934814453\n      ],\n      [\n        \"CLE\",\n        -12.743735313415527\n      ],\n      [\n        \"▁Frederick\",\n        -12.74386978149414\n      ],\n      [\n        \"mog\",\n        -12.743887901306152\n      ],\n      [\n        \"behalten\",\n        -12.74396800994873\n      ],\n      [\n        \"▁aunt\",\n        -12.744050979614258\n      ],\n      [\n        \"▁Triple\",\n        -12.744141578674316\n      ],\n      [\n        \"▁Ark\",\n        -12.744242668151855\n      ],\n      [\n        \"AUD\",\n        -12.744440078735352\n      ],\n      [\n        \"▁Candy\",\n        -12.744505882263184\n      ],\n      [\n        \"tama\",\n        -12.744515419006348\n      ],\n      [\n        \"▁Evaluation\",\n        -12.744571685791016\n      ],\n      [\n        \"▁Memphis\",\n        -12.744571685791016\n      ],\n      [\n        \"▁stellar\",\n        -12.74457836151123\n      ],\n      [\n        \"▁fabricat\",\n        -12.744632720947266\n      ],\n      [\n        \"▁terminat\",\n        -12.744868278503418\n      ],\n      [\n        \"▁domnul\",\n        -12.744913101196289\n      ],\n      [\n        \"▁keynote\",\n        -12.744925498962402\n      ],\n      [\n        \"▁dentistry\",\n        -12.744951248168945\n      ],\n      [\n        \"rift\",\n        -12.745052337646484\n      ],\n      [\n        \"▁bilan\",\n        -12.745119094848633\n      ],\n      [\n        \"2.6\",\n        -12.745125770568848\n      ],\n      [\n        \"undergoing\",\n        -12.745210647583008\n      ],\n      [\n        \"▁pseudo\",\n        -12.745274543762207\n      ],\n      [\n        \"▁maşin\",\n        -12.745280265808105\n      ],\n      [\n        \"▁munte\",\n        -12.74555492401123\n      ],\n      [\n        \"▁VW\",\n        -12.745932579040527\n      ],\n      [\n        \"▁Rab\",\n        -12.74593448638916\n      ],\n      [\n        \"▁sustine\",\n        -12.745972633361816\n      ],\n      [\n        \"▁Bedingungen\",\n        -12.745977401733398\n      ],\n      [\n        \"▁învăţ\",\n        -12.745980262756348\n      ],\n      [\n        \"▁pyramid\",\n        -12.745983123779297\n      ],\n      [\n        \"HEN\",\n        -12.746020317077637\n      ],\n      [\n        \"▁citrus\",\n        -12.746058464050293\n      ],\n      [\n        \"Code\",\n        -12.746064186096191\n      ],\n      [\n        \"▁Beginning\",\n        -12.746164321899414\n      ],\n      [\n        \"▁discourse\",\n        -12.746249198913574\n      ],\n      [\n        \"▁miercuri\",\n        -12.746329307556152\n      ],\n      [\n        \"▁producător\",\n        -12.74637508392334\n      ],\n      [\n        \"▁analys\",\n        -12.746397972106934\n      ],\n      [\n        \"▁Evan\",\n        -12.7467041015625\n      ],\n      [\n        \"138\",\n        -12.746987342834473\n      ],\n      [\n        \"▁târziu\",\n        -12.74703311920166\n      ],\n      [\n        \"▁relocation\",\n        -12.747052192687988\n      ],\n      [\n        \"decizia\",\n        -12.74708080291748\n      ],\n      [\n        \"tollen\",\n        -12.74714183807373\n      ],\n      [\n        \"TRO\",\n        -12.747180938720703\n      ],\n      [\n        \"▁runway\",\n        -12.74719524383545\n      ],\n      [\n        \"illet\",\n        -12.747270584106445\n      ],\n      [\n        \"▁serveur\",\n        -12.747387886047363\n      ],\n      [\n        \"bezogen\",\n        -12.747427940368652\n      ],\n      [\n        \"▁believers\",\n        -12.747668266296387\n      ],\n      [\n        \"determined\",\n        -12.747711181640625\n      ],\n      [\n        \"▁reinforced\",\n        -12.74791431427002\n      ],\n      [\n        \"▁wedge\",\n        -12.748006820678711\n      ],\n      [\n        \"methyl\",\n        -12.74807357788086\n      ],\n      [\n        \"MES\",\n        -12.748188018798828\n      ],\n      [\n        \"vpn\",\n        -12.748374938964844\n      ],\n      [\n        \"▁consta\",\n        -12.74837875366211\n      ],\n      [\n        \"▁vizitat\",\n        -12.748420715332031\n      ],\n      [\n        \"modul\",\n        -12.748455047607422\n      ],\n      [\n        \"▁routing\",\n        -12.748528480529785\n      ],\n      [\n        \"tempted\",\n        -12.748540878295898\n      ],\n      [\n        \"URS\",\n        -12.748785018920898\n      ],\n      [\n        \"apprentissage\",\n        -12.748795509338379\n      ],\n      [\n        \"▁Hungary\",\n        -12.748796463012695\n      ],\n      [\n        \"Previously\",\n        -12.74880313873291\n      ],\n      [\n        \"▁translator\",\n        -12.748804092407227\n      ],\n      [\n        \"▁resonate\",\n        -12.748830795288086\n      ],\n      [\n        \"201\",\n        -12.748851776123047\n      ],\n      [\n        \"3-0\",\n        -12.749029159545898\n      ],\n      [\n        \"▁reunion\",\n        -12.749090194702148\n      ],\n      [\n        \"▁palate\",\n        -12.749096870422363\n      ],\n      [\n        \"0.4\",\n        -12.749171257019043\n      ],\n      [\n        \"reheat\",\n        -12.74924373626709\n      ],\n      [\n        \"Roo\",\n        -12.749261856079102\n      ],\n      [\n        \"200,000\",\n        -12.74940013885498\n      ],\n      [\n        \"Bro\",\n        -12.749431610107422\n      ],\n      [\n        \"▁estimation\",\n        -12.749468803405762\n      ],\n      [\n        \"schneiden\",\n        -12.749499320983887\n      ],\n      [\n        \"▁Inspired\",\n        -12.749506950378418\n      ],\n      [\n        \"▁lottery\",\n        -12.749539375305176\n      ],\n      [\n        \"▁Friedrich\",\n        -12.749887466430664\n      ],\n      [\n        \"FIT\",\n        -12.749913215637207\n      ],\n      [\n        \"0.6\",\n        -12.7499418258667\n      ],\n      [\n        \"▁dagegen\",\n        -12.74997615814209\n      ],\n      [\n        \"▁Reb\",\n        -12.750115394592285\n      ],\n      [\n        \"▁Eigenschaften\",\n        -12.75020694732666\n      ],\n      [\n        \"▁molding\",\n        -12.750361442565918\n      ],\n      [\n        \"▁Harper\",\n        -12.750548362731934\n      ],\n      [\n        \"verwaltung\",\n        -12.75055980682373\n      ],\n      [\n        \"▁Schlüssel\",\n        -12.75055980682373\n      ],\n      [\n        \"▁desfasura\",\n        -12.75055980682373\n      ],\n      [\n        \"▁rencontrer\",\n        -12.75055980682373\n      ],\n      [\n        \"▁negoci\",\n        -12.750581741333008\n      ],\n      [\n        \"▁Leading\",\n        -12.750615119934082\n      ],\n      [\n        \"▁necesita\",\n        -12.750652313232422\n      ],\n      [\n        \"▁biking\",\n        -12.750683784484863\n      ],\n      [\n        \"▁jointly\",\n        -12.75069808959961\n      ],\n      [\n        \"▁crush\",\n        -12.750702857971191\n      ],\n      [\n        \"Vol\",\n        -12.750768661499023\n      ],\n      [\n        \"▁ebay\",\n        -12.750836372375488\n      ],\n      [\n        \"▁Shri\",\n        -12.750991821289062\n      ],\n      [\n        \"▁AMD\",\n        -12.751029968261719\n      ],\n      [\n        \"FG\",\n        -12.751032829284668\n      ],\n      [\n        \"Argentin\",\n        -12.75120735168457\n      ],\n      [\n        \"▁incercat\",\n        -12.751431465148926\n      ],\n      [\n        \"▁tidy\",\n        -12.751628875732422\n      ],\n      [\n        \"▁provoqu\",\n        -12.751635551452637\n      ],\n      [\n        \"▁Written\",\n        -12.751649856567383\n      ],\n      [\n        \"▁Kooperation\",\n        -12.751666069030762\n      ],\n      [\n        \"▁scripture\",\n        -12.751952171325684\n      ],\n      [\n        \"▁Pflicht\",\n        -12.751974105834961\n      ],\n      [\n        \"ficial\",\n        -12.752013206481934\n      ],\n      [\n        \"vremea\",\n        -12.752013206481934\n      ],\n      [\n        \"▁Growing\",\n        -12.752115249633789\n      ],\n      [\n        \"▁redesign\",\n        -12.752119064331055\n      ],\n      [\n        \"▁obstacle\",\n        -12.752214431762695\n      ],\n      [\n        \"▁rugam\",\n        -12.752235412597656\n      ],\n      [\n        \"▁SPD\",\n        -12.752243995666504\n      ],\n      [\n        \"165\",\n        -12.752270698547363\n      ],\n      [\n        \"fiz\",\n        -12.752284049987793\n      ],\n      [\n        \"▁startet\",\n        -12.752326011657715\n      ],\n      [\n        \"▁Principle\",\n        -12.752327919006348\n      ],\n      [\n        \"▁abdominal\",\n        -12.752327919006348\n      ],\n      [\n        \"▁podium\",\n        -12.752528190612793\n      ],\n      [\n        \"duty\",\n        -12.752616882324219\n      ],\n      [\n        \"bonne\",\n        -12.752679824829102\n      ],\n      [\n        \"▁Serbia\",\n        -12.752687454223633\n      ],\n      [\n        \"▁brunch\",\n        -12.752839088439941\n      ],\n      [\n        \"▁Personne\",\n        -12.752975463867188\n      ],\n      [\n        \"▁Idea\",\n        -12.753034591674805\n      ],\n      [\n        \"forementioned\",\n        -12.753036499023438\n      ],\n      [\n        \"▁chassis\",\n        -12.753037452697754\n      ],\n      [\n        \"gebühr\",\n        -12.753050804138184\n      ],\n      [\n        \"ucun\",\n        -12.753061294555664\n      ],\n      [\n        \"▁Maz\",\n        -12.7531156539917\n      ],\n      [\n        \"1-4\",\n        -12.75318431854248\n      ],\n      [\n        \"kleid\",\n        -12.753273963928223\n      ],\n      [\n        \"▁Volvo\",\n        -12.753337860107422\n      ],\n      [\n        \"brechen\",\n        -12.753378868103027\n      ],\n      [\n        \"▁homepage\",\n        -12.753472328186035\n      ],\n      [\n        \"fuz\",\n        -12.753509521484375\n      ],\n      [\n        \"▁abgeschlossen\",\n        -12.753595352172852\n      ],\n      [\n        \"▁gelungen\",\n        -12.753658294677734\n      ],\n      [\n        \"▁booklet\",\n        -12.753711700439453\n      ],\n      [\n        \"▁Ukrainian\",\n        -12.753745079040527\n      ],\n      [\n        \"▁Melissa\",\n        -12.753746032714844\n      ],\n      [\n        \"CENT\",\n        -12.75379467010498\n      ],\n      [\n        \"▁intégré\",\n        -12.753806114196777\n      ],\n      [\n        \"weighing\",\n        -12.753827095031738\n      ],\n      [\n        \"▁crumbl\",\n        -12.753894805908203\n      ],\n      [\n        \"▁bunk\",\n        -12.754167556762695\n      ],\n      [\n        \"krieg\",\n        -12.754207611083984\n      ],\n      [\n        \"▁freshman\",\n        -12.754307746887207\n      ],\n      [\n        \"alaya\",\n        -12.754339218139648\n      ],\n      [\n        \"Avem\",\n        -12.754353523254395\n      ],\n      [\n        \"▁Kne\",\n        -12.754423141479492\n      ],\n      [\n        \"▁upstairs\",\n        -12.75448226928711\n      ],\n      [\n        \"AIL\",\n        -12.754508972167969\n      ],\n      [\n        \"țul\",\n        -12.75478744506836\n      ],\n      [\n        \"▁Lecture\",\n        -12.754817962646484\n      ],\n      [\n        \"▁entdecken\",\n        -12.754843711853027\n      ],\n      [\n        \"▁GMT\",\n        -12.754912376403809\n      ],\n      [\n        \"▁Leitung\",\n        -12.754937171936035\n      ],\n      [\n        \"▁inclined\",\n        -12.755170822143555\n      ],\n      [\n        \"▁skillet\",\n        -12.75555419921875\n      ],\n      [\n        \"FN\",\n        -12.755742073059082\n      ],\n      [\n        \"▁Perform\",\n        -12.755821228027344\n      ],\n      [\n        \"shift\",\n        -12.75583267211914\n      ],\n      [\n        \"recognizing\",\n        -12.755873680114746\n      ],\n      [\n        \"▁concise\",\n        -12.755873680114746\n      ],\n      [\n        \"▁obsessed\",\n        -12.755873680114746\n      ],\n      [\n        \"▁removable\",\n        -12.755873680114746\n      ],\n      [\n        \"▁Relax\",\n        -12.755888938903809\n      ],\n      [\n        \"delegates\",\n        -12.75605583190918\n      ],\n      [\n        \"▁expedi\",\n        -12.756074905395508\n      ],\n      [\n        \"▁Schä\",\n        -12.756138801574707\n      ],\n      [\n        \"iete\",\n        -12.756211280822754\n      ],\n      [\n        \"▁reciproc\",\n        -12.756229400634766\n      ],\n      [\n        \"▁neutr\",\n        -12.75625228881836\n      ],\n      [\n        \"lactic\",\n        -12.756314277648926\n      ],\n      [\n        \"▁Nah\",\n        -12.756328582763672\n      ],\n      [\n        \"scene\",\n        -12.7565279006958\n      ],\n      [\n        \"▁Helm\",\n        -12.756563186645508\n      ],\n      [\n        \"▁Bewerbung\",\n        -12.756671905517578\n      ],\n      [\n        \"▁Cassi\",\n        -12.75667953491211\n      ],\n      [\n        \"▁Gelegenheit\",\n        -12.756939888000488\n      ],\n      [\n        \"▁reflective\",\n        -12.757140159606934\n      ],\n      [\n        \"▁încredere\",\n        -12.757149696350098\n      ],\n      [\n        \"▁cigarettes\",\n        -12.75717544555664\n      ],\n      [\n        \"▁Zusätzlich\",\n        -12.757295608520508\n      ],\n      [\n        \"▁intercept\",\n        -12.75731372833252\n      ],\n      [\n        \"▁Finn\",\n        -12.757468223571777\n      ],\n      [\n        \"▁ignor\",\n        -12.757661819458008\n      ],\n      [\n        \"gian\",\n        -12.75766372680664\n      ],\n      [\n        \"BRA\",\n        -12.757740020751953\n      ],\n      [\n        \"leader\",\n        -12.757957458496094\n      ],\n      [\n        \"nius\",\n        -12.757981300354004\n      ],\n      [\n        \"▁skies\",\n        -12.757987022399902\n      ],\n      [\n        \"▁nunta\",\n        -12.758023262023926\n      ],\n      [\n        \"▁grec\",\n        -12.758041381835938\n      ],\n      [\n        \"arranging\",\n        -12.75816822052002\n      ],\n      [\n        \"wartet\",\n        -12.758231163024902\n      ],\n      [\n        \"▁kostet\",\n        -12.758377075195312\n      ],\n      [\n        \"▁Entre\",\n        -12.758541107177734\n      ],\n      [\n        \"Mag\",\n        -12.758575439453125\n      ],\n      [\n        \"▁radiator\",\n        -12.758598327636719\n      ],\n      [\n        \"übrigens\",\n        -12.758689880371094\n      ],\n      [\n        \"Internet\",\n        -12.758706092834473\n      ],\n      [\n        \"▁connexion\",\n        -12.758718490600586\n      ],\n      [\n        \"▁prolonged\",\n        -12.758854866027832\n      ],\n      [\n        \"▁capabil\",\n        -12.75914192199707\n      ],\n      [\n        \"▁feeder\",\n        -12.759217262268066\n      ],\n      [\n        \"Initially\",\n        -12.759223937988281\n      ],\n      [\n        \"Green\",\n        -12.75926685333252\n      ],\n      [\n        \"▁passiert\",\n        -12.759272575378418\n      ],\n      [\n        \"▁courtyard\",\n        -12.759299278259277\n      ],\n      [\n        \"▁judeţ\",\n        -12.759320259094238\n      ],\n      [\n        \"▁Coalition\",\n        -12.759431838989258\n      ],\n      [\n        \"▁atmospheric\",\n        -12.759431838989258\n      ],\n      [\n        \"▁velocity\",\n        -12.759431838989258\n      ],\n      [\n        \"▁Frühstück\",\n        -12.759432792663574\n      ],\n      [\n        \"vacancies\",\n        -12.759438514709473\n      ],\n      [\n        \"unified\",\n        -12.759538650512695\n      ],\n      [\n        \"▁Ahmed\",\n        -12.759538650512695\n      ],\n      [\n        \"poured\",\n        -12.759550094604492\n      ],\n      [\n        \"▁Mikro\",\n        -12.75959587097168\n      ],\n      [\n        \"▁Klar\",\n        -12.759661674499512\n      ],\n      [\n        \"kommt\",\n        -12.759681701660156\n      ],\n      [\n        \"seated\",\n        -12.759744644165039\n      ],\n      [\n        \"musik\",\n        -12.75976848602295\n      ],\n      [\n        \"▁stimulation\",\n        -12.759841918945312\n      ],\n      [\n        \"▁solicitat\",\n        -12.759880065917969\n      ],\n      [\n        \"▁politically\",\n        -12.760165214538574\n      ],\n      [\n        \"restoring\",\n        -12.760322570800781\n      ],\n      [\n        \"▁Rag\",\n        -12.760435104370117\n      ],\n      [\n        \"▁officielle\",\n        -12.760468482971191\n      ],\n      [\n        \"▁Annie\",\n        -12.760479927062988\n      ],\n      [\n        \"▁tourne\",\n        -12.760634422302246\n      ],\n      [\n        \"▁Joel\",\n        -12.760642051696777\n      ],\n      [\n        \"blieben\",\n        -12.760666847229004\n      ],\n      [\n        \"▁repayment\",\n        -12.760736465454102\n      ],\n      [\n        \"▁Strategi\",\n        -12.760781288146973\n      ],\n      [\n        \"▁prietenii\",\n        -12.760804176330566\n      ],\n      [\n        \"▁Montgomery\",\n        -12.760858535766602\n      ],\n      [\n        \"▁résidence\",\n        -12.760858535766602\n      ],\n      [\n        \"▁sunglasses\",\n        -12.760858535766602\n      ],\n      [\n        \"▁1956\",\n        -12.760882377624512\n      ],\n      [\n        \"MEN\",\n        -12.76093578338623\n      ],\n      [\n        \"pouvant\",\n        -12.760997772216797\n      ],\n      [\n        \"375\",\n        -12.761061668395996\n      ],\n      [\n        \"directed\",\n        -12.761173248291016\n      ],\n      [\n        \"▁grinder\",\n        -12.76120662689209\n      ],\n      [\n        \"rträge\",\n        -12.761279106140137\n      ],\n      [\n        \"▁nickel\",\n        -12.761299133300781\n      ],\n      [\n        \"▁Maintain\",\n        -12.761313438415527\n      ],\n      [\n        \"▁Holmes\",\n        -12.761392593383789\n      ],\n      [\n        \"▁obtinut\",\n        -12.76157283782959\n      ],\n      [\n        \"▁walnut\",\n        -12.761585235595703\n      ],\n      [\n        \"▁consultancy\",\n        -12.761640548706055\n      ],\n      [\n        \"cooled\",\n        -12.761651039123535\n      ],\n      [\n        \"▁Brig\",\n        -12.761711120605469\n      ],\n      [\n        \"▁Produc\",\n        -12.761873245239258\n      ],\n      [\n        \"street\",\n        -12.76187515258789\n      ],\n      [\n        \"▁Einfach\",\n        -12.761897087097168\n      ],\n      [\n        \"North\",\n        -12.762149810791016\n      ],\n      [\n        \"▁PET\",\n        -12.76220989227295\n      ],\n      [\n        \"▁Président\",\n        -12.762288093566895\n      ],\n      [\n        \"▁produsului\",\n        -12.762457847595215\n      ],\n      [\n        \"literatur\",\n        -12.762483596801758\n      ],\n      [\n        \"133\",\n        -12.762561798095703\n      ],\n      [\n        \"▁recours\",\n        -12.762591361999512\n      ],\n      [\n        \"▁verpflichtet\",\n        -12.76264476776123\n      ],\n      [\n        \"▁Wur\",\n        -12.762733459472656\n      ],\n      [\n        \"▁psiholog\",\n        -12.762796401977539\n      ],\n      [\n        \"Veg\",\n        -12.762871742248535\n      ],\n      [\n        \"▁hype\",\n        -12.762930870056152\n      ],\n      [\n        \"augmenter\",\n        -12.762974739074707\n      ],\n      [\n        \"▁Welsh\",\n        -12.763012886047363\n      ],\n      [\n        \"mounted\",\n        -12.763158798217773\n      ],\n      [\n        \"▁Wann\",\n        -12.763425827026367\n      ],\n      [\n        \"▁gezeigt\",\n        -12.763620376586914\n      ],\n      [\n        \"▁memo\",\n        -12.763631820678711\n      ],\n      [\n        \"veterinary\",\n        -12.763717651367188\n      ],\n      [\n        \"▁Olympia\",\n        -12.763717651367188\n      ],\n      [\n        \"▁handsome\",\n        -12.763871192932129\n      ],\n      [\n        \"yama\",\n        -12.763911247253418\n      ],\n      [\n        \"studio\",\n        -12.763912200927734\n      ],\n      [\n        \"sozial\",\n        -12.764020919799805\n      ],\n      [\n        \"▁reap\",\n        -12.764104843139648\n      ],\n      [\n        \"▁didactic\",\n        -12.764111518859863\n      ],\n      [\n        \"▁Cookie\",\n        -12.764126777648926\n      ],\n      [\n        \"▁cooper\",\n        -12.764230728149414\n      ],\n      [\n        \"▁discern\",\n        -12.76441478729248\n      ],\n      [\n        \"▁Ubuntu\",\n        -12.764433860778809\n      ],\n      [\n        \"domain\",\n        -12.76443862915039\n      ],\n      [\n        \"▁plasa\",\n        -12.764460563659668\n      ],\n      [\n        \"hong\",\n        -12.764585494995117\n      ],\n      [\n        \"▁Freiheit\",\n        -12.764662742614746\n      ],\n      [\n        \"▁Gateway\",\n        -12.764678001403809\n      ],\n      [\n        \"▁poke\",\n        -12.764796257019043\n      ],\n      [\n        \"▁niedrig\",\n        -12.76484203338623\n      ],\n      [\n        \"▁corrected\",\n        -12.764899253845215\n      ],\n      [\n        \"▁predator\",\n        -12.76490306854248\n      ],\n      [\n        \"QA\",\n        -12.76507568359375\n      ],\n      [\n        \"Physio\",\n        -12.765101432800293\n      ],\n      [\n        \"MAS\",\n        -12.765108108520508\n      ],\n      [\n        \"▁sanctuary\",\n        -12.765151023864746\n      ],\n      [\n        \"▁aferent\",\n        -12.76523494720459\n      ],\n      [\n        \"▁perdre\",\n        -12.765268325805664\n      ],\n      [\n        \"▁recherch\",\n        -12.765397071838379\n      ],\n      [\n        \"ready\",\n        -12.76559829711914\n      ],\n      [\n        \"without\",\n        -12.76560115814209\n      ],\n      [\n        \"▁locuitori\",\n        -12.765628814697266\n      ],\n      [\n        \"▁Memo\",\n        -12.765636444091797\n      ],\n      [\n        \"▁Laden\",\n        -12.765646934509277\n      ],\n      [\n        \"danken\",\n        -12.76577377319336\n      ],\n      [\n        \"▁CNC\",\n        -12.765861511230469\n      ],\n      [\n        \"▁jealous\",\n        -12.765881538391113\n      ],\n      [\n        \"▁Background\",\n        -12.765951156616211\n      ],\n      [\n        \"▁Marx\",\n        -12.765999794006348\n      ],\n      [\n        \"▁Heli\",\n        -12.766039848327637\n      ],\n      [\n        \"▁osteo\",\n        -12.766057968139648\n      ],\n      [\n        \"▁rassembl\",\n        -12.766162872314453\n      ],\n      [\n        \"▁altceva\",\n        -12.766226768493652\n      ],\n      [\n        \"▁beschäftigt\",\n        -12.766226768493652\n      ],\n      [\n        \"▁accru\",\n        -12.766266822814941\n      ],\n      [\n        \"üft\",\n        -12.766273498535156\n      ],\n      [\n        \"▁sprout\",\n        -12.766288757324219\n      ],\n      [\n        \"endorf\",\n        -12.76647663116455\n      ],\n      [\n        \"▁specialitate\",\n        -12.766483306884766\n      ],\n      [\n        \"éanmoins\",\n        -12.766586303710938\n      ],\n      [\n        \"▁poign\",\n        -12.766663551330566\n      ],\n      [\n        \"▁mânca\",\n        -12.766668319702148\n      ],\n      [\n        \"▁stretched\",\n        -12.766752243041992\n      ],\n      [\n        \"fensiv\",\n        -12.76677131652832\n      ],\n      [\n        \"▁Auction\",\n        -12.76683235168457\n      ],\n      [\n        \"hints\",\n        -12.766944885253906\n      ],\n      [\n        \"▁typo\",\n        -12.766983032226562\n      ],\n      [\n        \"▁Rare\",\n        -12.767003059387207\n      ],\n      [\n        \"▁interruption\",\n        -12.767043113708496\n      ],\n      [\n        \"▁Mean\",\n        -12.76709270477295\n      ],\n      [\n        \"privileged\",\n        -12.767108917236328\n      ],\n      [\n        \"▁purtat\",\n        -12.767129898071289\n      ],\n      [\n        \"studie\",\n        -12.767229080200195\n      ],\n      [\n        \"offres\",\n        -12.767248153686523\n      ],\n      [\n        \"▁flap\",\n        -12.76729679107666\n      ],\n      [\n        \"▁rhetoric\",\n        -12.767304420471191\n      ],\n      [\n        \"▁snapshot\",\n        -12.767325401306152\n      ],\n      [\n        \"▁Conservative\",\n        -12.767367362976074\n      ],\n      [\n        \"▁taie\",\n        -12.767416954040527\n      ],\n      [\n        \"Game\",\n        -12.767499923706055\n      ],\n      [\n        \"▁naissance\",\n        -12.767663955688477\n      ],\n      [\n        \"Prof\",\n        -12.767704963684082\n      ],\n      [\n        \"qualified\",\n        -12.767745971679688\n      ],\n      [\n        \"▁suppression\",\n        -12.767749786376953\n      ],\n      [\n        \"▁răspunde\",\n        -12.767765045166016\n      ],\n      [\n        \"▁1/3\",\n        -12.767803192138672\n      ],\n      [\n        \"▁lieben\",\n        -12.767858505249023\n      ],\n      [\n        \"ù\",\n        -12.767898559570312\n      ],\n      [\n        \"america\",\n        -12.767955780029297\n      ],\n      [\n        \"▁Mum\",\n        -12.768182754516602\n      ],\n      [\n        \"▁Researchers\",\n        -12.76827335357666\n      ],\n      [\n        \"quip\",\n        -12.768308639526367\n      ],\n      [\n        \"▁fenomen\",\n        -12.768383026123047\n      ],\n      [\n        \"stools\",\n        -12.768387794494629\n      ],\n      [\n        \"▁commodity\",\n        -12.768742561340332\n      ],\n      [\n        \"▁rejuvenat\",\n        -12.768745422363281\n      ],\n      [\n        \"▁ausgezeichnet\",\n        -12.76876449584961\n      ],\n      [\n        \"▁păcate\",\n        -12.768784523010254\n      ],\n      [\n        \"3.6\",\n        -12.76882553100586\n      ],\n      [\n        \"zwei\",\n        -12.768904685974121\n      ],\n      [\n        \"accounted\",\n        -12.768982887268066\n      ],\n      [\n        \"▁Cycle\",\n        -12.76900863647461\n      ],\n      [\n        \"politischen\",\n        -12.769031524658203\n      ],\n      [\n        \"Normally\",\n        -12.76904010772705\n      ],\n      [\n        \"▁transcend\",\n        -12.769158363342285\n      ],\n      [\n        \"▁Classes\",\n        -12.769268989562988\n      ],\n      [\n        \"▁vene\",\n        -12.769363403320312\n      ],\n      [\n        \"protein\",\n        -12.76942253112793\n      ],\n      [\n        \"formulaire\",\n        -12.76944351196289\n      ],\n      [\n        \"▁endurance\",\n        -12.769463539123535\n      ],\n      [\n        \"▁Census\",\n        -12.769464492797852\n      ],\n      [\n        \"▁census\",\n        -12.7694673538208\n      ],\n      [\n        \"▁conțin\",\n        -12.76952838897705\n      ],\n      [\n        \"▁multinational\",\n        -12.769563674926758\n      ],\n      [\n        \"▁consomm\",\n        -12.769572257995605\n      ],\n      [\n        \"▁Porter\",\n        -12.769762992858887\n      ],\n      [\n        \"▁marvel\",\n        -12.769777297973633\n      ],\n      [\n        \"▁probable\",\n        -12.769824028015137\n      ],\n      [\n        \"dependable\",\n        -12.770044326782227\n      ],\n      [\n        \"▁crore\",\n        -12.77015495300293\n      ],\n      [\n        \"▁6:30\",\n        -12.770224571228027\n      ],\n      [\n        \"▁Bradley\",\n        -12.77032470703125\n      ],\n      [\n        \"molecule\",\n        -12.770400047302246\n      ],\n      [\n        \"inclusiv\",\n        -12.770516395568848\n      ],\n      [\n        \"▁privilégi\",\n        -12.770543098449707\n      ],\n      [\n        \"▁cerere\",\n        -12.770611763000488\n      ],\n      [\n        \"ouille\",\n        -12.770696640014648\n      ],\n      [\n        \"▁âgé\",\n        -12.770787239074707\n      ],\n      [\n        \"▁ghid\",\n        -12.770801544189453\n      ],\n      [\n        \"▁Controller\",\n        -12.77082347869873\n      ],\n      [\n        \"▁incredere\",\n        -12.770988464355469\n      ],\n      [\n        \"▁hostel\",\n        -12.771015167236328\n      ],\n      [\n        \"wissenschaft\",\n        -12.771121978759766\n      ],\n      [\n        \"▁cooperate\",\n        -12.771183967590332\n      ],\n      [\n        \"ки\",\n        -12.771202087402344\n      ],\n      [\n        \"▁Küchen\",\n        -12.771384239196777\n      ],\n      [\n        \"▁BIO\",\n        -12.771406173706055\n      ],\n      [\n        \"▁deliveries\",\n        -12.771458625793457\n      ],\n      [\n        \"▁urmări\",\n        -12.771553993225098\n      ],\n      [\n        \"▁überzeugen\",\n        -12.771631240844727\n      ],\n      [\n        \"Roofing\",\n        -12.771703720092773\n      ],\n      [\n        \"▁Adel\",\n        -12.771737098693848\n      ],\n      [\n        \"▁navy\",\n        -12.77181339263916\n      ],\n      [\n        \"▁cider\",\n        -12.772101402282715\n      ],\n      [\n        \"▁dulce\",\n        -12.772109985351562\n      ],\n      [\n        \"▁inspirat\",\n        -12.772163391113281\n      ],\n      [\n        \"allez\",\n        -12.772164344787598\n      ],\n      [\n        \"HH\",\n        -12.77221965789795\n      ],\n      [\n        \"▁Danish\",\n        -12.7722749710083\n      ],\n      [\n        \"CDC\",\n        -12.7722806930542\n      ],\n      [\n        \"▁Milch\",\n        -12.772303581237793\n      ],\n      [\n        \"▁Hockey\",\n        -12.772346496582031\n      ],\n      [\n        \"▁Smooth\",\n        -12.772347450256348\n      ],\n      [\n        \"▁FIFA\",\n        -12.772361755371094\n      ],\n      [\n        \"▁Devon\",\n        -12.772364616394043\n      ],\n      [\n        \"chung\",\n        -12.772379875183105\n      ],\n      [\n        \"▁villain\",\n        -12.772420883178711\n      ],\n      [\n        \"▁musée\",\n        -12.772441864013672\n      ],\n      [\n        \"tiennent\",\n        -12.772557258605957\n      ],\n      [\n        \"chou\",\n        -12.772732734680176\n      ],\n      [\n        \"kopf\",\n        -12.772809982299805\n      ],\n      [\n        \"printed\",\n        -12.77281379699707\n      ],\n      [\n        \"▁Depression\",\n        -12.773076057434082\n      ],\n      [\n        \"▁opioid\",\n        -12.773082733154297\n      ],\n      [\n        \"nomie\",\n        -12.773098945617676\n      ],\n      [\n        \"▁footwear\",\n        -12.773211479187012\n      ],\n      [\n        \"▁Cause\",\n        -12.773260116577148\n      ],\n      [\n        \"SEL\",\n        -12.773515701293945\n      ],\n      [\n        \"▁Roller\",\n        -12.773523330688477\n      ],\n      [\n        \"▁einzigartige\",\n        -12.773589134216309\n      ],\n      [\n        \"desea\",\n        -12.773597717285156\n      ],\n      [\n        \"▁nasty\",\n        -12.773792266845703\n      ],\n      [\n        \"formulated\",\n        -12.773877143859863\n      ],\n      [\n        \"breaker\",\n        -12.773958206176758\n      ],\n      [\n        \"▁goodies\",\n        -12.773961067199707\n      ],\n      [\n        \"▁sandy\",\n        -12.774189949035645\n      ],\n      [\n        \"method\",\n        -12.77425479888916\n      ],\n      [\n        \"▁Maple\",\n        -12.774308204650879\n      ],\n      [\n        \"gefragt\",\n        -12.774435997009277\n      ],\n      [\n        \"▁decreasing\",\n        -12.774515151977539\n      ],\n      [\n        \"ceşti\",\n        -12.774555206298828\n      ],\n      [\n        \"▁DUI\",\n        -12.774563789367676\n      ],\n      [\n        \"▁pierdere\",\n        -12.774574279785156\n      ],\n      [\n        \"▁brushes\",\n        -12.77466869354248\n      ],\n      [\n        \"▁Fully\",\n        -12.774712562561035\n      ],\n      [\n        \"filtered\",\n        -12.774789810180664\n      ],\n      [\n        \"ruins\",\n        -12.774988174438477\n      ],\n      [\n        \"Save\",\n        -12.775114059448242\n      ],\n      [\n        \"sweeping\",\n        -12.7752046585083\n      ],\n      [\n        \"PCR\",\n        -12.775334358215332\n      ],\n      [\n        \"▁folded\",\n        -12.775337219238281\n      ],\n      [\n        \"▁urca\",\n        -12.775444030761719\n      ],\n      [\n        \"▁clic\",\n        -12.775484085083008\n      ],\n      [\n        \"▁spécialiste\",\n        -12.775614738464355\n      ],\n      [\n        \"▁durfte\",\n        -12.775686264038086\n      ],\n      [\n        \"tuși\",\n        -12.775871276855469\n      ],\n      [\n        \"▁diligent\",\n        -12.77596378326416\n      ],\n      [\n        \"▁verdict\",\n        -12.775972366333008\n      ],\n      [\n        \"▁chaise\",\n        -12.776039123535156\n      ],\n      [\n        \"▁cleanup\",\n        -12.776068687438965\n      ],\n      [\n        \"▁Guitar\",\n        -12.776076316833496\n      ],\n      [\n        \"▁Dip\",\n        -12.776142120361328\n      ],\n      [\n        \"vru\",\n        -12.776260375976562\n      ],\n      [\n        \"▁cogn\",\n        -12.776373863220215\n      ],\n      [\n        \"something\",\n        -12.776529312133789\n      ],\n      [\n        \"hidr\",\n        -12.776535034179688\n      ],\n      [\n        \"ENG\",\n        -12.776607513427734\n      ],\n      [\n        \"Paul\",\n        -12.776679039001465\n      ],\n      [\n        \"▁reboot\",\n        -12.776687622070312\n      ],\n      [\n        \"savvy\",\n        -12.776688575744629\n      ],\n      [\n        \"▁Macron\",\n        -12.776710510253906\n      ],\n      [\n        \"▁Kino\",\n        -12.77682876586914\n      ],\n      [\n        \"232\",\n        -12.776832580566406\n      ],\n      [\n        \"▁gravit\",\n        -12.776861190795898\n      ],\n      [\n        \"ANC\",\n        -12.776883125305176\n      ],\n      [\n        \"▁petrecut\",\n        -12.776944160461426\n      ],\n      [\n        \"▁signage\",\n        -12.776959419250488\n      ],\n      [\n        \"odia\",\n        -12.776987075805664\n      ],\n      [\n        \"▁GRA\",\n        -12.77712631225586\n      ],\n      [\n        \"▁alegeril\",\n        -12.777129173278809\n      ],\n      [\n        \"leger\",\n        -12.77717399597168\n      ],\n      [\n        \"▁medicamente\",\n        -12.777174949645996\n      ],\n      [\n        \"pentru\",\n        -12.777249336242676\n      ],\n      [\n        \"▁collectif\",\n        -12.777251243591309\n      ],\n      [\n        \"▁Sohn\",\n        -12.777298927307129\n      ],\n      [\n        \"205\",\n        -12.777313232421875\n      ],\n      [\n        \"▁Reach\",\n        -12.77733039855957\n      ],\n      [\n        \"RAM\",\n        -12.777400970458984\n      ],\n      [\n        \"3.4\",\n        -12.777405738830566\n      ],\n      [\n        \"▁bleach\",\n        -12.777409553527832\n      ],\n      [\n        \"▁diligence\",\n        -12.777414321899414\n      ],\n      [\n        \"▁MORE\",\n        -12.777440071105957\n      ],\n      [\n        \"▁Critical\",\n        -12.777471542358398\n      ],\n      [\n        \"▁singură\",\n        -12.77767276763916\n      ],\n      [\n        \"▁adversar\",\n        -12.777791023254395\n      ],\n      [\n        \"▁Buzz\",\n        -12.7778902053833\n      ],\n      [\n        \"▁demeure\",\n        -12.778063774108887\n      ],\n      [\n        \"▁nephew\",\n        -12.778141021728516\n      ],\n      [\n        \"▁Boom\",\n        -12.77817440032959\n      ],\n      [\n        \"▁shining\",\n        -12.77819538116455\n      ],\n      [\n        \"▁sponge\",\n        -12.778206825256348\n      ],\n      [\n        \"liest\",\n        -12.77841854095459\n      ],\n      [\n        \"rseits\",\n        -12.778690338134766\n      ],\n      [\n        \"▁capita\",\n        -12.778823852539062\n      ],\n      [\n        \"esthesia\",\n        -12.778867721557617\n      ],\n      [\n        \"500,000\",\n        -12.77895736694336\n      ],\n      [\n        \"▁Pressure\",\n        -12.77898120880127\n      ],\n      [\n        \"ifikation\",\n        -12.779021263122559\n      ],\n      [\n        \"▁acceleration\",\n        -12.779181480407715\n      ],\n      [\n        \"▁Pfarr\",\n        -12.779282569885254\n      ],\n      [\n        \"▁imobil\",\n        -12.779304504394531\n      ],\n      [\n        \"▁pericol\",\n        -12.779326438903809\n      ],\n      [\n        \"▁flock\",\n        -12.779454231262207\n      ],\n      [\n        \"▁Scholar\",\n        -12.77962875366211\n      ],\n      [\n        \"▁Fusion\",\n        -12.779630661010742\n      ],\n      [\n        \"▁revolve\",\n        -12.779637336730957\n      ],\n      [\n        \"Plugin\",\n        -12.779664993286133\n      ],\n      [\n        \"▁Ruf\",\n        -12.779691696166992\n      ],\n      [\n        \"▁tehnici\",\n        -12.780024528503418\n      ],\n      [\n        \"voice\",\n        -12.78005313873291\n      ],\n      [\n        \"▁anomal\",\n        -12.780203819274902\n      ],\n      [\n        \"▁gefallen\",\n        -12.780252456665039\n      ],\n      [\n        \"▁Wyoming\",\n        -12.780322074890137\n      ],\n      [\n        \"▁9:00\",\n        -12.780354499816895\n      ],\n      [\n        \"packed\",\n        -12.780461311340332\n      ],\n      [\n        \"▁Zimbabwe\",\n        -12.780686378479004\n      ],\n      [\n        \"▁glücklich\",\n        -12.780766487121582\n      ],\n      [\n        \"ethanol\",\n        -12.78077220916748\n      ],\n      [\n        \"▁effektiv\",\n        -12.780936241149902\n      ],\n      [\n        \"▁saptamani\",\n        -12.781049728393555\n      ],\n      [\n        \"▁umfasst\",\n        -12.781052589416504\n      ],\n      [\n        \"▁Werbung\",\n        -12.781103134155273\n      ],\n      [\n        \"▁undermine\",\n        -12.781164169311523\n      ],\n      [\n        \"▁Lego\",\n        -12.781322479248047\n      ],\n      [\n        \"▁Rac\",\n        -12.781323432922363\n      ],\n      [\n        \"educating\",\n        -12.781441688537598\n      ],\n      [\n        \"leiten\",\n        -12.781451225280762\n      ],\n      [\n        \"derma\",\n        -12.781518936157227\n      ],\n      [\n        \"hängen\",\n        -12.781597137451172\n      ],\n      [\n        \"Lumin\",\n        -12.781846046447754\n      ],\n      [\n        \"▁PNL\",\n        -12.781913757324219\n      ],\n      [\n        \"▁volcano\",\n        -12.782064437866211\n      ],\n      [\n        \"▁Anfrage\",\n        -12.782066345214844\n      ],\n      [\n        \"▁resp\",\n        -12.782124519348145\n      ],\n      [\n        \"leigh\",\n        -12.78217601776123\n      ],\n      [\n        \"▁addict\",\n        -12.782176971435547\n      ],\n      [\n        \"WORK\",\n        -12.782312393188477\n      ],\n      [\n        \"▁FY\",\n        -12.782322883605957\n      ],\n      [\n        \"▁maneuver\",\n        -12.782513618469238\n      ],\n      [\n        \"flächen\",\n        -12.782525062561035\n      ],\n      [\n        \"zweck\",\n        -12.782527923583984\n      ],\n      [\n        \"tolerant\",\n        -12.782609939575195\n      ],\n      [\n        \"Davidson\",\n        -12.78272533416748\n      ],\n      [\n        \"▁meteor\",\n        -12.782849311828613\n      ],\n      [\n        \"▁Stephanie\",\n        -12.78291130065918\n      ],\n      [\n        \"▁plafon\",\n        -12.783126831054688\n      ],\n      [\n        \"technischen\",\n        -12.78316879272461\n      ],\n      [\n        \"unused\",\n        -12.783193588256836\n      ],\n      [\n        \"▁voulai\",\n        -12.783228874206543\n      ],\n      [\n        \"▁fehlt\",\n        -12.783447265625\n      ],\n      [\n        \"möglichen\",\n        -12.783955574035645\n      ],\n      [\n        \"▁Twenty\",\n        -12.783968925476074\n      ],\n      [\n        \"composing\",\n        -12.783979415893555\n      ],\n      [\n        \"▁rebate\",\n        -12.78400707244873\n      ],\n      [\n        \"Italie\",\n        -12.784036636352539\n      ],\n      [\n        \"▁goodbye\",\n        -12.784058570861816\n      ],\n      [\n        \"wild\",\n        -12.784061431884766\n      ],\n      [\n        \"▁lancé\",\n        -12.784077644348145\n      ],\n      [\n        \"▁wunderschöne\",\n        -12.784083366394043\n      ],\n      [\n        \"▁Frontier\",\n        -12.784139633178711\n      ],\n      [\n        \"▁murit\",\n        -12.784313201904297\n      ],\n      [\n        \"▁scump\",\n        -12.78464412689209\n      ],\n      [\n        \"OVER\",\n        -12.784682273864746\n      ],\n      [\n        \"▁meme\",\n        -12.784709930419922\n      ],\n      [\n        \"Super\",\n        -12.784733772277832\n      ],\n      [\n        \"▁Crack\",\n        -12.784849166870117\n      ],\n      [\n        \"rennen\",\n        -12.784907341003418\n      ],\n      [\n        \"▁interessiert\",\n        -12.784941673278809\n      ],\n      [\n        \"▁relaţi\",\n        -12.784942626953125\n      ],\n      [\n        \"▁factories\",\n        -12.784975051879883\n      ],\n      [\n        \"▁[...]\",\n        -12.785066604614258\n      ],\n      [\n        \"▁vizite\",\n        -12.785075187683105\n      ],\n      [\n        \"▁erfolgen\",\n        -12.785199165344238\n      ],\n      [\n        \"▁Hosting\",\n        -12.785244941711426\n      ],\n      [\n        \"▁localitate\",\n        -12.78528118133545\n      ],\n      [\n        \"▁chasse\",\n        -12.785415649414062\n      ],\n      [\n        \"▁Meadow\",\n        -12.785465240478516\n      ],\n      [\n        \"▁expansive\",\n        -12.785513877868652\n      ],\n      [\n        \"hov\",\n        -12.785874366760254\n      ],\n      [\n        \"Phil\",\n        -12.785978317260742\n      ],\n      [\n        \"illian\",\n        -12.786107063293457\n      ],\n      [\n        \"▁manipulate\",\n        -12.786107063293457\n      ],\n      [\n        \"informationen\",\n        -12.786130905151367\n      ],\n      [\n        \"▁profesionist\",\n        -12.786162376403809\n      ],\n      [\n        \"risen\",\n        -12.786252975463867\n      ],\n      [\n        \"frem\",\n        -12.786300659179688\n      ],\n      [\n        \"Act\",\n        -12.78640079498291\n      ],\n      [\n        \"supervised\",\n        -12.786491394042969\n      ],\n      [\n        \"▁capul\",\n        -12.786506652832031\n      ],\n      [\n        \"▁Craiova\",\n        -12.786528587341309\n      ],\n      [\n        \"▁victoire\",\n        -12.786528587341309\n      ],\n      [\n        \"▁guitarist\",\n        -12.786680221557617\n      ],\n      [\n        \"▁identific\",\n        -12.786684036254883\n      ],\n      [\n        \"democrat\",\n        -12.786864280700684\n      ],\n      [\n        \"Authentic\",\n        -12.786894798278809\n      ],\n      [\n        \"▁Autumn\",\n        -12.786894798278809\n      ],\n      [\n        \"▁bodi\",\n        -12.787014961242676\n      ],\n      [\n        \"April\",\n        -12.787044525146484\n      ],\n      [\n        \"▁Burger\",\n        -12.787049293518066\n      ],\n      [\n        \"▁BEST\",\n        -12.787490844726562\n      ],\n      [\n        \"▁torrent\",\n        -12.78749942779541\n      ],\n      [\n        \"UV\",\n        -12.787567138671875\n      ],\n      [\n        \"▁renal\",\n        -12.787676811218262\n      ],\n      [\n        \"founded\",\n        -12.787693977355957\n      ],\n      [\n        \"203\",\n        -12.787956237792969\n      ],\n      [\n        \"▁Flooring\",\n        -12.78799057006836\n      ],\n      [\n        \"▁kilogram\",\n        -12.787994384765625\n      ],\n      [\n        \"▁garantiert\",\n        -12.788139343261719\n      ],\n      [\n        \"▁fulfil\",\n        -12.788204193115234\n      ],\n      [\n        \"303\",\n        -12.788330078125\n      ],\n      [\n        \"▁schafft\",\n        -12.788363456726074\n      ],\n      [\n        \"▁butterfly\",\n        -12.788365364074707\n      ],\n      [\n        \"▁Stuart\",\n        -12.788382530212402\n      ],\n      [\n        \"▁Versuch\",\n        -12.788392066955566\n      ],\n      [\n        \"▁liking\",\n        -12.788412094116211\n      ],\n      [\n        \"▁chercher\",\n        -12.788508415222168\n      ],\n      [\n        \"▁wrapping\",\n        -12.788527488708496\n      ],\n      [\n        \"schrieb\",\n        -12.788652420043945\n      ],\n      [\n        \"▁abuz\",\n        -12.788718223571777\n      ],\n      [\n        \"▁maîtrise\",\n        -12.788772583007812\n      ],\n      [\n        \"EQ\",\n        -12.788887977600098\n      ],\n      [\n        \"▁Erinnerung\",\n        -12.789095878601074\n      ],\n      [\n        \"▁bridal\",\n        -12.78909969329834\n      ],\n      [\n        \"Rock\",\n        -12.789118766784668\n      ],\n      [\n        \"▁copied\",\n        -12.789193153381348\n      ],\n      [\n        \"Met\",\n        -12.789206504821777\n      ],\n      [\n        \"▁incep\",\n        -12.789233207702637\n      ],\n      [\n        \"▁sinus\",\n        -12.789336204528809\n      ],\n      [\n        \"▁Felix\",\n        -12.789831161499023\n      ],\n      [\n        \"▁Deluxe\",\n        -12.789837837219238\n      ],\n      [\n        \"▁GPU\",\n        -12.789848327636719\n      ],\n      [\n        \"Sie\",\n        -12.790164947509766\n      ],\n      [\n        \"lowering\",\n        -12.790262222290039\n      ],\n      [\n        \"▁Trotz\",\n        -12.790282249450684\n      ],\n      [\n        \"333\",\n        -12.790417671203613\n      ],\n      [\n        \"withstand\",\n        -12.79055118560791\n      ],\n      [\n        \"▁Aufenthalt\",\n        -12.790566444396973\n      ],\n      [\n        \"▁unhealthy\",\n        -12.790567398071289\n      ],\n      [\n        \"▁urbain\",\n        -12.790573120117188\n      ],\n      [\n        \"▁LOL\",\n        -12.790702819824219\n      ],\n      [\n        \"▁Ballet\",\n        -12.79074478149414\n      ],\n      [\n        \"▁Decoration\",\n        -12.79083251953125\n      ],\n      [\n        \"weist\",\n        -12.790839195251465\n      ],\n      [\n        \"▁Residence\",\n        -12.790932655334473\n      ],\n      [\n        \"▁Leeds\",\n        -12.791055679321289\n      ],\n      [\n        \"▁Genau\",\n        -12.791084289550781\n      ],\n      [\n        \"Imagin\",\n        -12.791136741638184\n      ],\n      [\n        \"▁suspicion\",\n        -12.791300773620605\n      ],\n      [\n        \"▁pêche\",\n        -12.791301727294922\n      ],\n      [\n        \"▁Soccer\",\n        -12.791306495666504\n      ],\n      [\n        \"▁protectie\",\n        -12.791553497314453\n      ],\n      [\n        \"ATS\",\n        -12.791796684265137\n      ],\n      [\n        \"stocked\",\n        -12.791838645935059\n      ],\n      [\n        \"▁gymnas\",\n        -12.79184627532959\n      ],\n      [\n        \"ASP\",\n        -12.792027473449707\n      ],\n      [\n        \"▁Independence\",\n        -12.792037010192871\n      ],\n      [\n        \"▁Wizard\",\n        -12.792037963867188\n      ],\n      [\n        \"▁nitrogen\",\n        -12.79204273223877\n      ],\n      [\n        \"amerikanische\",\n        -12.7920503616333\n      ],\n      [\n        \"▁Indianapolis\",\n        -12.79205322265625\n      ],\n      [\n        \"catches\",\n        -12.792131423950195\n      ],\n      [\n        \"stria\",\n        -12.792275428771973\n      ],\n      [\n        \"schätze\",\n        -12.79235553741455\n      ],\n      [\n        \"▁Räume\",\n        -12.792387962341309\n      ],\n      [\n        \"▁Interesting\",\n        -12.792403221130371\n      ],\n      [\n        \"bürger\",\n        -12.79240608215332\n      ],\n      [\n        \"sweet\",\n        -12.792410850524902\n      ],\n      [\n        \"Identify\",\n        -12.792632102966309\n      ],\n      [\n        \"EEN\",\n        -12.792651176452637\n      ],\n      [\n        \"▁£3\",\n        -12.792654991149902\n      ],\n      [\n        \"interacting\",\n        -12.7926664352417\n      ],\n      [\n        \"NYSE\",\n        -12.792762756347656\n      ],\n      [\n        \"▁Dynamics\",\n        -12.79277515411377\n      ],\n      [\n        \"▁modificări\",\n        -12.792777061462402\n      ],\n      [\n        \"▁Kumar\",\n        -12.792936325073242\n      ],\n      [\n        \"chette\",\n        -12.79313850402832\n      ],\n      [\n        \"▁presiune\",\n        -12.79316234588623\n      ],\n      [\n        \"arni\",\n        -12.793164253234863\n      ],\n      [\n        \"▁vielfältig\",\n        -12.793221473693848\n      ],\n      [\n        \"KC\",\n        -12.793259620666504\n      ],\n      [\n        \"▁Cuisine\",\n        -12.793513298034668\n      ],\n      [\n        \"▁australia\",\n        -12.793885231018066\n      ],\n      [\n        \"▁încet\",\n        -12.794026374816895\n      ],\n      [\n        \"▁caracteristic\",\n        -12.794257164001465\n      ],\n      [\n        \"▁cookbook\",\n        -12.794501304626465\n      ],\n      [\n        \"▁douleur\",\n        -12.79453182220459\n      ],\n      [\n        \"AVI\",\n        -12.794593811035156\n      ],\n      [\n        \"artikel\",\n        -12.794740676879883\n      ],\n      [\n        \"feta\",\n        -12.79493522644043\n      ],\n      [\n        \"▁fréquent\",\n        -12.794987678527832\n      ],\n      [\n        \"▁Prophet\",\n        -12.795051574707031\n      ],\n      [\n        \"▁dépense\",\n        -12.795202255249023\n      ],\n      [\n        \"▁Smile\",\n        -12.795235633850098\n      ],\n      [\n        \"▁lawmakers\",\n        -12.79525375366211\n      ],\n      [\n        \"▁Kollegen\",\n        -12.795391082763672\n      ],\n      [\n        \"▁Pir\",\n        -12.79555606842041\n      ],\n      [\n        \"serez\",\n        -12.79561710357666\n      ],\n      [\n        \"▁consumator\",\n        -12.795656204223633\n      ],\n      [\n        \"▁playlist\",\n        -12.795730590820312\n      ],\n      [\n        \"▁envisage\",\n        -12.795733451843262\n      ],\n      [\n        \"swept\",\n        -12.795780181884766\n      ],\n      [\n        \"▁Grim\",\n        -12.795825004577637\n      ],\n      [\n        \"▁widow\",\n        -12.795836448669434\n      ],\n      [\n        \"authorised\",\n        -12.795886039733887\n      ],\n      [\n        \"▁(...)\",\n        -12.796035766601562\n      ],\n      [\n        \"▁photographic\",\n        -12.796060562133789\n      ],\n      [\n        \"▁libertate\",\n        -12.796173095703125\n      ],\n      [\n        \"▁principalement\",\n        -12.796201705932617\n      ],\n      [\n        \"umming\",\n        -12.796260833740234\n      ],\n      [\n        \"▁Montréal\",\n        -12.796465873718262\n      ],\n      [\n        \"▁compilation\",\n        -12.796468734741211\n      ],\n      [\n        \"▁erlaubt\",\n        -12.79647159576416\n      ],\n      [\n        \"▁biblical\",\n        -12.796518325805664\n      ],\n      [\n        \"volume\",\n        -12.796561241149902\n      ],\n      [\n        \"5-7\",\n        -12.796809196472168\n      ],\n      [\n        \"▁Versch\",\n        -12.79689884185791\n      ],\n      [\n        \"▁Shark\",\n        -12.796957015991211\n      ],\n      [\n        \"ologne\",\n        -12.796969413757324\n      ],\n      [\n        \"4.4\",\n        -12.797086715698242\n      ],\n      [\n        \"decken\",\n        -12.797112464904785\n      ],\n      [\n        \"▁frequencies\",\n        -12.797205924987793\n      ],\n      [\n        \"▁inferior\",\n        -12.79720687866211\n      ],\n      [\n        \"visible\",\n        -12.797321319580078\n      ],\n      [\n        \"▁educator\",\n        -12.797394752502441\n      ],\n      [\n        \"▁soziale\",\n        -12.797420501708984\n      ],\n      [\n        \"▁billet\",\n        -12.797523498535156\n      ],\n      [\n        \"folosirea\",\n        -12.797574996948242\n      ],\n      [\n        \"▁aufgenommen\",\n        -12.797590255737305\n      ],\n      [\n        \"▁Thread\",\n        -12.797649383544922\n      ],\n      [\n        \"registering\",\n        -12.797694206237793\n      ],\n      [\n        \"▁Loop\",\n        -12.797747611999512\n      ],\n      [\n        \"innovation\",\n        -12.79783821105957\n      ],\n      [\n        \"▁elimination\",\n        -12.797857284545898\n      ],\n      [\n        \"136\",\n        -12.797883987426758\n      ],\n      [\n        \"▁fluctu\",\n        -12.797892570495605\n      ],\n      [\n        \"▁Mercury\",\n        -12.79794692993164\n      ],\n      [\n        \"▁bouche\",\n        -12.797955513000488\n      ],\n      [\n        \"▁hurdle\",\n        -12.7979736328125\n      ],\n      [\n        \"▁Bennett\",\n        -12.798040390014648\n      ],\n      [\n        \"STI\",\n        -12.79818344116211\n      ],\n      [\n        \"▁théâtre\",\n        -12.798316955566406\n      ],\n      [\n        \"▁confortable\",\n        -12.798359870910645\n      ],\n      [\n        \"▁Automobil\",\n        -12.79838752746582\n      ],\n      [\n        \"▁Donna\",\n        -12.798399925231934\n      ],\n      [\n        \"▁foyer\",\n        -12.79841136932373\n      ],\n      [\n        \"▁hollow\",\n        -12.798465728759766\n      ],\n      [\n        \"▁règlement\",\n        -12.79861068725586\n      ],\n      [\n        \"effi\",\n        -12.798616409301758\n      ],\n      [\n        \"▁sediment\",\n        -12.79869270324707\n      ],\n      [\n        \"▁Mä\",\n        -12.798774719238281\n      ],\n      [\n        \"▁faint\",\n        -12.798833847045898\n      ],\n      [\n        \"feti\",\n        -12.79890251159668\n      ],\n      [\n        \"▁Concord\",\n        -12.798959732055664\n      ],\n      [\n        \"▁Ladies\",\n        -12.798990249633789\n      ],\n      [\n        \"▁pregatit\",\n        -12.799052238464355\n      ],\n      [\n        \"▁Ensemble\",\n        -12.79905891418457\n      ],\n      [\n        \"▁Ingredient\",\n        -12.79905891418457\n      ],\n      [\n        \"▁Respond\",\n        -12.79914379119873\n      ],\n      [\n        \"▁impaired\",\n        -12.799356460571289\n      ],\n      [\n        \"▁Feedback\",\n        -12.799430847167969\n      ],\n      [\n        \"▁ultrasound\",\n        -12.799461364746094\n      ],\n      [\n        \"▁Guvernului\",\n        -12.799617767333984\n      ],\n      [\n        \"▁Unterricht\",\n        -12.799654006958008\n      ],\n      [\n        \"▁prosecut\",\n        -12.799662590026855\n      ],\n      [\n        \"spend\",\n        -12.799732208251953\n      ],\n      [\n        \"▁capitol\",\n        -12.799800872802734\n      ],\n      [\n        \"USD\",\n        -12.799822807312012\n      ],\n      [\n        \"observing\",\n        -12.799947738647461\n      ],\n      [\n        \"▁effortlessly\",\n        -12.800045013427734\n      ],\n      [\n        \"▁Setting\",\n        -12.80010986328125\n      ],\n      [\n        \"▁spontaneous\",\n        -12.80020809173584\n      ],\n      [\n        \"▁LEGO\",\n        -12.800238609313965\n      ],\n      [\n        \"initiative\",\n        -12.800299644470215\n      ],\n      [\n        \"▁Sak\",\n        -12.800299644470215\n      ],\n      [\n        \"Interestingly\",\n        -12.800326347351074\n      ],\n      [\n        \"▁Yale\",\n        -12.800352096557617\n      ],\n      [\n        \"▁größer\",\n        -12.80038070678711\n      ],\n      [\n        \"RIC\",\n        -12.800406455993652\n      ],\n      [\n        \"▁distracted\",\n        -12.800436973571777\n      ],\n      [\n        \"drafted\",\n        -12.800484657287598\n      ],\n      [\n        \"▁Brenda\",\n        -12.800522804260254\n      ],\n      [\n        \"monopol\",\n        -12.800551414489746\n      ],\n      [\n        \"städt\",\n        -12.800580024719238\n      ],\n      [\n        \"▁altar\",\n        -12.80058765411377\n      ],\n      [\n        \"▁Hannover\",\n        -12.800596237182617\n      ],\n      [\n        \"▁Spiritual\",\n        -12.800702095031738\n      ],\n      [\n        \"▁thriller\",\n        -12.800747871398926\n      ],\n      [\n        \"▁Schneider\",\n        -12.800760269165039\n      ],\n      [\n        \"▁accumulate\",\n        -12.800817489624023\n      ],\n      [\n        \"▁mediului\",\n        -12.800822257995605\n      ],\n      [\n        \"▁Mathematics\",\n        -12.800914764404297\n      ],\n      [\n        \"▁paradox\",\n        -12.800986289978027\n      ],\n      [\n        \"▁Sham\",\n        -12.801230430603027\n      ],\n      [\n        \"▁SITE\",\n        -12.801375389099121\n      ],\n      [\n        \"▁echipei\",\n        -12.801508903503418\n      ],\n      [\n        \"▁staircase\",\n        -12.801660537719727\n      ],\n      [\n        \"▁întrebări\",\n        -12.801705360412598\n      ],\n      [\n        \"Commerce\",\n        -12.802020072937012\n      ],\n      [\n        \"▁selfie\",\n        -12.802353858947754\n      ],\n      [\n        \"▁Pocket\",\n        -12.802404403686523\n      ],\n      [\n        \"▁niemand\",\n        -12.80263614654541\n      ],\n      [\n        \"Tool\",\n        -12.802678108215332\n      ],\n      [\n        \"igma\",\n        -12.802695274353027\n      ],\n      [\n        \"utilisant\",\n        -12.802915573120117\n      ],\n      [\n        \"▁negatively\",\n        -12.80295181274414\n      ],\n      [\n        \"Secondly\",\n        -12.802955627441406\n      ],\n      [\n        \"▁ROI\",\n        -12.8030366897583\n      ],\n      [\n        \"Arch\",\n        -12.803121566772461\n      ],\n      [\n        \"▁continuity\",\n        -12.80318546295166\n      ],\n      [\n        \"▁Prayer\",\n        -12.803235054016113\n      ],\n      [\n        \"inverse\",\n        -12.803241729736328\n      ],\n      [\n        \"▁Himmel\",\n        -12.803336143493652\n      ],\n      [\n        \"prinz\",\n        -12.803478240966797\n      ],\n      [\n        \"wichtigen\",\n        -12.803496360778809\n      ],\n      [\n        \"étage\",\n        -12.803522109985352\n      ],\n      [\n        \"summe\",\n        -12.8036527633667\n      ],\n      [\n        \"▁Zeitung\",\n        -12.80366039276123\n      ],\n      [\n        \"▁realization\",\n        -12.803897857666016\n      ],\n      [\n        \"▁influent\",\n        -12.804291725158691\n      ],\n      [\n        \"▁Valid\",\n        -12.804357528686523\n      ],\n      [\n        \"▁publicity\",\n        -12.804439544677734\n      ],\n      [\n        \"▁vertreten\",\n        -12.804447174072266\n      ],\n      [\n        \"▁Shoes\",\n        -12.804609298706055\n      ],\n      [\n        \"▁Diabetes\",\n        -12.80463695526123\n      ],\n      [\n        \"▁anticipation\",\n        -12.804670333862305\n      ],\n      [\n        \"▁Blank\",\n        -12.8047456741333\n      ],\n      [\n        \"asked\",\n        -12.804899215698242\n      ],\n      [\n        \"Power\",\n        -12.804938316345215\n      ],\n      [\n        \"arrelage\",\n        -12.805140495300293\n      ],\n      [\n        \"▁appraisal\",\n        -12.80538272857666\n      ],\n      [\n        \"▁harassment\",\n        -12.805542945861816\n      ],\n      [\n        \"Anzeige\",\n        -12.805682182312012\n      ],\n      [\n        \"liners\",\n        -12.80584716796875\n      ],\n      [\n        \"Firstly\",\n        -12.805851936340332\n      ],\n      [\n        \"transferring\",\n        -12.805951118469238\n      ],\n      [\n        \"▁Diane\",\n        -12.806012153625488\n      ],\n      [\n        \"▁1/2\\\"\",\n        -12.80606746673584\n      ],\n      [\n        \"▁adrenal\",\n        -12.806131362915039\n      ],\n      [\n        \"▁Prague\",\n        -12.806208610534668\n      ],\n      [\n        \"insertion\",\n        -12.80635929107666\n      ],\n      [\n        \"▁Fahrer\",\n        -12.806465148925781\n      ],\n      [\n        \"▁divin\",\n        -12.806585311889648\n      ],\n      [\n        \"▁douche\",\n        -12.80673885345459\n      ],\n      [\n        \"▁meticulous\",\n        -12.806879043579102\n      ],\n      [\n        \"▁IEEE\",\n        -12.806981086730957\n      ],\n      [\n        \"▁Rabatt\",\n        -12.807259559631348\n      ],\n      [\n        \"Runner\",\n        -12.807342529296875\n      ],\n      [\n        \"▁Leder\",\n        -12.807429313659668\n      ],\n      [\n        \"project\",\n        -12.80745792388916\n      ],\n      [\n        \"▁Split\",\n        -12.807562828063965\n      ],\n      [\n        \"Gold\",\n        -12.807600021362305\n      ],\n      [\n        \"5.00\",\n        -12.807629585266113\n      ],\n      [\n        \"iola\",\n        -12.807655334472656\n      ],\n      [\n        \"standardized\",\n        -12.807890892028809\n      ],\n      [\n        \"ordination\",\n        -12.807984352111816\n      ],\n      [\n        \"▁Egal\",\n        -12.808158874511719\n      ],\n      [\n        \"▁ruhig\",\n        -12.808241844177246\n      ],\n      [\n        \"▁judiciar\",\n        -12.80837345123291\n      ],\n      [\n        \"▁Nowadays\",\n        -12.808374404907227\n      ],\n      [\n        \"▁whistle\",\n        -12.808374404907227\n      ],\n      [\n        \"▁superhero\",\n        -12.808379173278809\n      ],\n      [\n        \"▁PowerPoint\",\n        -12.808408737182617\n      ],\n      [\n        \"flop\",\n        -12.808420181274414\n      ],\n      [\n        \"olph\",\n        -12.808460235595703\n      ],\n      [\n        \"▁pallet\",\n        -12.808916091918945\n      ],\n      [\n        \"posons\",\n        -12.809005737304688\n      ],\n      [\n        \"▁Listing\",\n        -12.809032440185547\n      ],\n      [\n        \"Tag\",\n        -12.809075355529785\n      ],\n      [\n        \"introductory\",\n        -12.809122085571289\n      ],\n      [\n        \"▁Profil\",\n        -12.809123992919922\n      ],\n      [\n        \"symmetric\",\n        -12.809126853942871\n      ],\n      [\n        \"▁aisle\",\n        -12.809138298034668\n      ],\n      [\n        \"▁ajouté\",\n        -12.809147834777832\n      ],\n      [\n        \"opathy\",\n        -12.809149742126465\n      ],\n      [\n        \"prezentate\",\n        -12.809155464172363\n      ],\n      [\n        \"▁hurry\",\n        -12.809165000915527\n      ],\n      [\n        \"Auth\",\n        -12.809310913085938\n      ],\n      [\n        \"▁Homepage\",\n        -12.809435844421387\n      ],\n      [\n        \"ashes\",\n        -12.809489250183105\n      ],\n      [\n        \"▁inklusive\",\n        -12.809496879577637\n      ],\n      [\n        \"populated\",\n        -12.809502601623535\n      ],\n      [\n        \"▁nein\",\n        -12.809554100036621\n      ],\n      [\n        \"▁syndicat\",\n        -12.809690475463867\n      ],\n      [\n        \"▁développé\",\n        -12.809842109680176\n      ],\n      [\n        \"▁Domestic\",\n        -12.809877395629883\n      ],\n      [\n        \"essay\",\n        -12.809967994689941\n      ],\n      [\n        \"Atelier\",\n        -12.809980392456055\n      ],\n      [\n        \"▁proceeding\",\n        -12.810006141662598\n      ],\n      [\n        \"▁SAS\",\n        -12.810038566589355\n      ],\n      [\n        \"task\",\n        -12.810063362121582\n      ],\n      [\n        \"▁blackjack\",\n        -12.810114860534668\n      ],\n      [\n        \"Key\",\n        -12.810186386108398\n      ],\n      [\n        \"thérapie\",\n        -12.810247421264648\n      ],\n      [\n        \"▁Cohen\",\n        -12.810397148132324\n      ],\n      [\n        \"Direct\",\n        -12.810510635375977\n      ],\n      [\n        \"▁Estimat\",\n        -12.810517311096191\n      ],\n      [\n        \"élève\",\n        -12.810616493225098\n      ],\n      [\n        \"cind\",\n        -12.810640335083008\n      ],\n      [\n        \"▁prezenț\",\n        -12.810701370239258\n      ],\n      [\n        \"▁notorious\",\n        -12.810725212097168\n      ],\n      [\n        \"climbed\",\n        -12.810816764831543\n      ],\n      [\n        \"▁flexibil\",\n        -12.810830116271973\n      ],\n      [\n        \"▁entlang\",\n        -12.810855865478516\n      ],\n      [\n        \"longed\",\n        -12.81103515625\n      ],\n      [\n        \"▁elbow\",\n        -12.811078071594238\n      ],\n      [\n        \"BH\",\n        -12.811296463012695\n      ],\n      [\n        \"▁Radu\",\n        -12.811376571655273\n      ],\n      [\n        \"▁lonely\",\n        -12.811378479003906\n      ],\n      [\n        \"ALA\",\n        -12.811405181884766\n      ],\n      [\n        \"Variante\",\n        -12.811639785766602\n      ],\n      [\n        \"▁Influen\",\n        -12.81169319152832\n      ],\n      [\n        \"▁Budapest\",\n        -12.811747550964355\n      ],\n      [\n        \"▁Gemüse\",\n        -12.811747550964355\n      ],\n      [\n        \"▁continental\",\n        -12.811750411987305\n      ],\n      [\n        \"ippo\",\n        -12.811771392822266\n      ],\n      [\n        \"▁Affordable\",\n        -12.81212329864502\n      ],\n      [\n        \"▁niece\",\n        -12.812187194824219\n      ],\n      [\n        \"oscopic\",\n        -12.812190055847168\n      ],\n      [\n        \"▁Grid\",\n        -12.81222152709961\n      ],\n      [\n        \"sliced\",\n        -12.812270164489746\n      ],\n      [\n        \"▁voici\",\n        -12.812294006347656\n      ],\n      [\n        \"aveam\",\n        -12.812471389770508\n      ],\n      [\n        \"▁Lars\",\n        -12.812612533569336\n      ],\n      [\n        \"APA\",\n        -12.812657356262207\n      ],\n      [\n        \"▁particulière\",\n        -12.812858581542969\n      ],\n      [\n        \"sorb\",\n        -12.8128662109375\n      ],\n      [\n        \"▁1955\",\n        -12.812887191772461\n      ],\n      [\n        \"▁solutii\",\n        -12.812942504882812\n      ],\n      [\n        \"loch\",\n        -12.812960624694824\n      ],\n      [\n        \"▁summon\",\n        -12.813212394714355\n      ],\n      [\n        \"wurf\",\n        -12.813271522521973\n      ],\n      [\n        \"▁protecți\",\n        -12.813288688659668\n      ],\n      [\n        \"2001\",\n        -12.813499450683594\n      ],\n      [\n        \"▁sophomore\",\n        -12.813627243041992\n      ],\n      [\n        \"▁Schwerpunkt\",\n        -12.813628196716309\n      ],\n      [\n        \"▁diplomat\",\n        -12.813687324523926\n      ],\n      [\n        \"▁artistique\",\n        -12.813726425170898\n      ],\n      [\n        \"▁accueille\",\n        -12.813739776611328\n      ],\n      [\n        \"Disp\",\n        -12.813746452331543\n      ],\n      [\n        \"inherited\",\n        -12.813764572143555\n      ],\n      [\n        \"▁COMP\",\n        -12.813889503479004\n      ],\n      [\n        \"▁envoyé\",\n        -12.814046859741211\n      ],\n      [\n        \"▁tuning\",\n        -12.814056396484375\n      ],\n      [\n        \"▁entspricht\",\n        -12.814062118530273\n      ],\n      [\n        \"▁exerc\",\n        -12.81406307220459\n      ],\n      [\n        \"▁accessoires\",\n        -12.8140869140625\n      ],\n      [\n        \"▁Automat\",\n        -12.814348220825195\n      ],\n      [\n        \"importance\",\n        -12.814408302307129\n      ],\n      [\n        \"▁travellers\",\n        -12.814432144165039\n      ],\n      [\n        \"seiten\",\n        -12.814474105834961\n      ],\n      [\n        \"▁slider\",\n        -12.814481735229492\n      ],\n      [\n        \"effect\",\n        -12.814591407775879\n      ],\n      [\n        \"▁siding\",\n        -12.814669609069824\n      ],\n      [\n        \"▁Crit\",\n        -12.814780235290527\n      ],\n      [\n        \"▁sportif\",\n        -12.814827919006348\n      ],\n      [\n        \"▁Accessories\",\n        -12.81513500213623\n      ],\n      [\n        \"▁Anteil\",\n        -12.815184593200684\n      ],\n      [\n        \"▁limbi\",\n        -12.81519603729248\n      ],\n      [\n        \"▁vendre\",\n        -12.815269470214844\n      ],\n      [\n        \"borg\",\n        -12.815435409545898\n      ],\n      [\n        \"▁Deposit\",\n        -12.815508842468262\n      ],\n      [\n        \"▁Hö\",\n        -12.815717697143555\n      ],\n      [\n        \"employé\",\n        -12.8157320022583\n      ],\n      [\n        \"▁Bangalore\",\n        -12.815887451171875\n      ],\n      [\n        \"▁itinerary\",\n        -12.815888404846191\n      ],\n      [\n        \"▁Deliver\",\n        -12.816008567810059\n      ],\n      [\n        \"dik\",\n        -12.816024780273438\n      ],\n      [\n        \"▁advent\",\n        -12.816100120544434\n      ],\n      [\n        \"▁Turk\",\n        -12.81614875793457\n      ],\n      [\n        \"▁Nico\",\n        -12.816154479980469\n      ],\n      [\n        \"organizarea\",\n        -12.816161155700684\n      ],\n      [\n        \"▁remport\",\n        -12.816166877746582\n      ],\n      [\n        \"▁tribunal\",\n        -12.816266059875488\n      ],\n      [\n        \"▁Rusia\",\n        -12.8162841796875\n      ],\n      [\n        \"glazed\",\n        -12.816339492797852\n      ],\n      [\n        \"▁destiné\",\n        -12.816502571105957\n      ],\n      [\n        \"304\",\n        -12.816533088684082\n      ],\n      [\n        \"album\",\n        -12.816650390625\n      ],\n      [\n        \"▁junction\",\n        -12.81665325164795\n      ],\n      [\n        \"▁Fleet\",\n        -12.816664695739746\n      ],\n      [\n        \"venant\",\n        -12.81667423248291\n      ],\n      [\n        \"▁buddy\",\n        -12.816694259643555\n      ],\n      [\n        \"▁neglected\",\n        -12.816694259643555\n      ],\n      [\n        \"▁Mask\",\n        -12.816783905029297\n      ],\n      [\n        \"▁testament\",\n        -12.816844940185547\n      ],\n      [\n        \"▁Basil\",\n        -12.81690788269043\n      ],\n      [\n        \"masă\",\n        -12.816922187805176\n      ],\n      [\n        \"▁racist\",\n        -12.81692886352539\n      ],\n      [\n        \"640\",\n        -12.816990852355957\n      ],\n      [\n        \"▁Standing\",\n        -12.817028045654297\n      ],\n      [\n        \"▁MUST\",\n        -12.817266464233398\n      ],\n      [\n        \"situation\",\n        -12.817327499389648\n      ],\n      [\n        \"▁informiert\",\n        -12.817337036132812\n      ],\n      [\n        \"ABA\",\n        -12.817353248596191\n      ],\n      [\n        \"▁Timothy\",\n        -12.817397117614746\n      ],\n      [\n        \"▁generosity\",\n        -12.817397117614746\n      ],\n      [\n        \"▁erscheint\",\n        -12.817402839660645\n      ],\n      [\n        \"▁verarbeitet\",\n        -12.81740665435791\n      ],\n      [\n        \"▁burial\",\n        -12.817444801330566\n      ],\n      [\n        \"▁limestone\",\n        -12.817458152770996\n      ],\n      [\n        \"▁1953\",\n        -12.817480087280273\n      ],\n      [\n        \"▁Lucr\",\n        -12.817506790161133\n      ],\n      [\n        \"small\",\n        -12.817633628845215\n      ],\n      [\n        \"aveau\",\n        -12.81763744354248\n      ],\n      [\n        \"versiune\",\n        -12.81773567199707\n      ],\n      [\n        \"▁inkl\",\n        -12.81775951385498\n      ],\n      [\n        \"▁Minneapolis\",\n        -12.81777572631836\n      ],\n      [\n        \"Spiel\",\n        -12.81781005859375\n      ],\n      [\n        \"▁encode\",\n        -12.817895889282227\n      ],\n      [\n        \"▁beforehand\",\n        -12.818021774291992\n      ],\n      [\n        \"▁Vital\",\n        -12.818086624145508\n      ],\n      [\n        \"▁socialist\",\n        -12.818228721618652\n      ],\n      [\n        \"inho\",\n        -12.81824779510498\n      ],\n      [\n        \"▁chapel\",\n        -12.81825065612793\n      ],\n      [\n        \"▁Monitoring\",\n        -12.81838607788086\n      ],\n      [\n        \"▁quotidienne\",\n        -12.818404197692871\n      ],\n      [\n        \"cloud\",\n        -12.818506240844727\n      ],\n      [\n        \"▁desfăşur\",\n        -12.818531036376953\n      ],\n      [\n        \"▁1952\",\n        -12.818638801574707\n      ],\n      [\n        \"▁Rü\",\n        -12.818690299987793\n      ],\n      [\n        \"▁Sigma\",\n        -12.818804740905762\n      ],\n      [\n        \"134\",\n        -12.818835258483887\n      ],\n      [\n        \"Sullivan\",\n        -12.818909645080566\n      ],\n      [\n        \"▁Bevölkerung\",\n        -12.818909645080566\n      ],\n      [\n        \"▁sufficiently\",\n        -12.818953514099121\n      ],\n      [\n        \"Check\",\n        -12.818992614746094\n      ],\n      [\n        \"rnie\",\n        -12.8190336227417\n      ],\n      [\n        \"contamin\",\n        -12.819132804870605\n      ],\n      [\n        \"▁gewonnen\",\n        -12.81928825378418\n      ],\n      [\n        \"▁bugetul\",\n        -12.819376945495605\n      ],\n      [\n        \"▁mustard\",\n        -12.819414138793945\n      ],\n      [\n        \"132\",\n        -12.819478988647461\n      ],\n      [\n        \"0.9\",\n        -12.819535255432129\n      ],\n      [\n        \"▁tratat\",\n        -12.81957721710205\n      ],\n      [\n        \"▁dilemma\",\n        -12.819666862487793\n      ],\n      [\n        \"▁versatility\",\n        -12.819666862487793\n      ],\n      [\n        \"▁clutter\",\n        -12.819670677185059\n      ],\n      [\n        \"▁Musk\",\n        -12.81973934173584\n      ],\n      [\n        \"▁Beide\",\n        -12.819750785827637\n      ],\n      [\n        \"hurst\",\n        -12.819758415222168\n      ],\n      [\n        \"atsu\",\n        -12.819767951965332\n      ],\n      [\n        \"absence\",\n        -12.819784164428711\n      ],\n      [\n        \"rebounds\",\n        -12.819881439208984\n      ],\n      [\n        \"6.1\",\n        -12.820029258728027\n      ],\n      [\n        \"Dia\",\n        -12.820046424865723\n      ],\n      [\n        \"▁siguranță\",\n        -12.820060729980469\n      ],\n      [\n        \"▁Blade\",\n        -12.820072174072266\n      ],\n      [\n        \"▁disrupt\",\n        -12.820074081420898\n      ],\n      [\n        \"▁visiteurs\",\n        -12.820169448852539\n      ],\n      [\n        \"tested\",\n        -12.820282936096191\n      ],\n      [\n        \"▁Lup\",\n        -12.820353507995605\n      ],\n      [\n        \"▁Rouge\",\n        -12.820371627807617\n      ],\n      [\n        \"▁asbestos\",\n        -12.82042407989502\n      ],\n      [\n        \"▁moisturize\",\n        -12.820427894592285\n      ],\n      [\n        \"▁acknowledg\",\n        -12.82045841217041\n      ],\n      [\n        \"▁procent\",\n        -12.820467948913574\n      ],\n      [\n        \"▁swear\",\n        -12.82050895690918\n      ],\n      [\n        \"▁911\",\n        -12.820647239685059\n      ],\n      [\n        \"präsent\",\n        -12.820724487304688\n      ],\n      [\n        \"▁cohort\",\n        -12.82072639465332\n      ],\n      [\n        \"▁intimid\",\n        -12.820830345153809\n      ],\n      [\n        \"JS\",\n        -12.820849418640137\n      ],\n      [\n        \"îm\",\n        -12.82096004486084\n      ],\n      [\n        \"▁Kunststoff\",\n        -12.820963859558105\n      ],\n      [\n        \"rison\",\n        -12.820972442626953\n      ],\n      [\n        \"▁praf\",\n        -12.82097339630127\n      ],\n      [\n        \"▁convient\",\n        -12.821019172668457\n      ],\n      [\n        \"▁partenaire\",\n        -12.821088790893555\n      ],\n      [\n        \"▁Verantwortlich\",\n        -12.821182250976562\n      ],\n      [\n        \"▁semiconductor\",\n        -12.821182250976562\n      ],\n      [\n        \"▁kürz\",\n        -12.821187019348145\n      ],\n      [\n        \"▁Bottom\",\n        -12.821187973022461\n      ],\n      [\n        \"▁tratamentul\",\n        -12.82127571105957\n      ],\n      [\n        \"Source\",\n        -12.821331024169922\n      ],\n      [\n        \"authored\",\n        -12.82172679901123\n      ],\n      [\n        \"robo\",\n        -12.821867942810059\n      ],\n      [\n        \"▁turf\",\n        -12.82194709777832\n      ],\n      [\n        \"▁liebe\",\n        -12.821971893310547\n      ],\n      [\n        \"▁Fotografi\",\n        -12.821995735168457\n      ],\n      [\n        \"Big\",\n        -12.822064399719238\n      ],\n      [\n        \"▁fireworks\",\n        -12.822081565856934\n      ],\n      [\n        \"▁presă\",\n        -12.822135925292969\n      ],\n      [\n        \"▁conceal\",\n        -12.822269439697266\n      ],\n      [\n        \"▁originated\",\n        -12.82227897644043\n      ],\n      [\n        \"▁biciclet\",\n        -12.822319984436035\n      ],\n      [\n        \"acești\",\n        -12.822577476501465\n      ],\n      [\n        \"▁mortar\",\n        -12.822585105895996\n      ],\n      [\n        \"▁Wunder\",\n        -12.822626113891602\n      ],\n      [\n        \"ionist\",\n        -12.822696685791016\n      ],\n      [\n        \"KM\",\n        -12.822871208190918\n      ],\n      [\n        \"▁Marion\",\n        -12.822918891906738\n      ],\n      [\n        \"produkte\",\n        -12.822933197021484\n      ],\n      [\n        \"▁Sprint\",\n        -12.822999000549316\n      ],\n      [\n        \"▁Nachde\",\n        -12.8230619430542\n      ],\n      [\n        \"▁verfüge\",\n        -12.823100090026855\n      ],\n      [\n        \"Marea\",\n        -12.823177337646484\n      ],\n      [\n        \"▁compressor\",\n        -12.823253631591797\n      ],\n      [\n        \"Arm\",\n        -12.823290824890137\n      ],\n      [\n        \"Auf\",\n        -12.823311805725098\n      ],\n      [\n        \"▁Polyester\",\n        -12.823461532592773\n      ],\n      [\n        \"▁Sheffield\",\n        -12.823461532592773\n      ],\n      [\n        \"illiard\",\n        -12.823494911193848\n      ],\n      [\n        \"▁misleading\",\n        -12.82353401184082\n      ],\n      [\n        \"multi\",\n        -12.823749542236328\n      ],\n      [\n        \"ripped\",\n        -12.82381820678711\n      ],\n      [\n        \"▁Cosmetic\",\n        -12.82383918762207\n      ],\n      [\n        \"▁Regal\",\n        -12.823890686035156\n      ],\n      [\n        \"▁authenticity\",\n        -12.82414436340332\n      ],\n      [\n        \"▁customizable\",\n        -12.824219703674316\n      ],\n      [\n        \"▁bathtub\",\n        -12.824275016784668\n      ],\n      [\n        \"▁Average\",\n        -12.824292182922363\n      ],\n      [\n        \"▁Muster\",\n        -12.824522018432617\n      ],\n      [\n        \"290\",\n        -12.824529647827148\n      ],\n      [\n        \"▁Ersatz\",\n        -12.824570655822754\n      ],\n      [\n        \"▁Might\",\n        -12.824588775634766\n      ],\n      [\n        \"published\",\n        -12.82461929321289\n      ],\n      [\n        \"▁Interpret\",\n        -12.824640274047852\n      ],\n      [\n        \"▁încep\",\n        -12.82480239868164\n      ],\n      [\n        \"▁proto\",\n        -12.824851036071777\n      ],\n      [\n        \"▁disque\",\n        -12.824889183044434\n      ],\n      [\n        \"▁Palestine\",\n        -12.824980735778809\n      ],\n      [\n        \"Over\",\n        -12.824981689453125\n      ],\n      [\n        \"▁verbessert\",\n        -12.824983596801758\n      ],\n      [\n        \"▁liefern\",\n        -12.825017929077148\n      ],\n      [\n        \"▁Handlung\",\n        -12.825095176696777\n      ],\n      [\n        \"▁Handels\",\n        -12.825150489807129\n      ],\n      [\n        \"▁eater\",\n        -12.825201988220215\n      ],\n      [\n        \"▁$40\",\n        -12.825251579284668\n      ],\n      [\n        \"illard\",\n        -12.825334548950195\n      ],\n      [\n        \"▁apariti\",\n        -12.825413703918457\n      ],\n      [\n        \"▁gag\",\n        -12.825422286987305\n      ],\n      [\n        \"▁chimic\",\n        -12.825541496276855\n      ],\n      [\n        \"▁Guru\",\n        -12.825594902038574\n      ],\n      [\n        \"▁Toilet\",\n        -12.82571792602539\n      ],\n      [\n        \"▁Tochter\",\n        -12.825748443603516\n      ],\n      [\n        \"▁Aurora\",\n        -12.82579231262207\n      ],\n      [\n        \"contro\",\n        -12.825922966003418\n      ],\n      [\n        \"▁GOP\",\n        -12.825995445251465\n      ],\n      [\n        \"Provence\",\n        -12.826130867004395\n      ],\n      [\n        \"▁Frieden\",\n        -12.82614803314209\n      ],\n      [\n        \"ăci\",\n        -12.826216697692871\n      ],\n      [\n        \"portée\",\n        -12.826268196105957\n      ],\n      [\n        \"▁upright\",\n        -12.826300621032715\n      ],\n      [\n        \"▁Physician\",\n        -12.82650375366211\n      ],\n      [\n        \"▁juridique\",\n        -12.82650375366211\n      ],\n      [\n        \"▁territorial\",\n        -12.82650375366211\n      ],\n      [\n        \"▁kindergarten\",\n        -12.826505661010742\n      ],\n      [\n        \"aéroport\",\n        -12.826510429382324\n      ],\n      [\n        \"▁whisper\",\n        -12.826513290405273\n      ],\n      [\n        \"▁capacities\",\n        -12.826562881469727\n      ],\n      [\n        \"dichte\",\n        -12.826641082763672\n      ],\n      [\n        \"▁Grenzen\",\n        -12.826822280883789\n      ],\n      [\n        \"▁Riv\",\n        -12.82710075378418\n      ],\n      [\n        \"épreuve\",\n        -12.827266693115234\n      ],\n      [\n        \"▁Scheme\",\n        -12.827290534973145\n      ],\n      [\n        \"mesures\",\n        -12.827330589294434\n      ],\n      [\n        \"▁Einfluss\",\n        -12.827333450317383\n      ],\n      [\n        \"appui\",\n        -12.827713966369629\n      ],\n      [\n        \"▁apuc\",\n        -12.827827453613281\n      ],\n      [\n        \"▁radiat\",\n        -12.82794189453125\n      ],\n      [\n        \"▁allergy\",\n        -12.828035354614258\n      ],\n      [\n        \"▁spear\",\n        -12.828038215637207\n      ],\n      [\n        \"▁Luxembourg\",\n        -12.828086853027344\n      ],\n      [\n        \"▁Registered\",\n        -12.828115463256836\n      ],\n      [\n        \"▁Shape\",\n        -12.828198432922363\n      ],\n      [\n        \"genie\",\n        -12.828328132629395\n      ],\n      [\n        \"nsonsten\",\n        -12.828385353088379\n      ],\n      [\n        \"▁Symposium\",\n        -12.828412055969238\n      ],\n      [\n        \"forderung\",\n        -12.828474998474121\n      ],\n      [\n        \"▁personalizat\",\n        -12.82866096496582\n      ],\n      [\n        \"▁ştiu\",\n        -12.82875919342041\n      ],\n      [\n        \"blatt\",\n        -12.828804016113281\n      ],\n      [\n        \"▁geometry\",\n        -12.828807830810547\n      ],\n      [\n        \"▁8:30\",\n        -12.828831672668457\n      ],\n      [\n        \"▁Fahrrad\",\n        -12.828861236572266\n      ],\n      [\n        \"After\",\n        -12.828927040100098\n      ],\n      [\n        \"▁ventilat\",\n        -12.829072952270508\n      ],\n      [\n        \"▁nylon\",\n        -12.829190254211426\n      ],\n      [\n        \"▁verkauft\",\n        -12.829304695129395\n      ],\n      [\n        \"öß\",\n        -12.829345703125\n      ],\n      [\n        \"▁Kath\",\n        -12.829523086547852\n      ],\n      [\n        \"▁Nuclear\",\n        -12.829558372497559\n      ],\n      [\n        \"▁Verizon\",\n        -12.829560279846191\n      ],\n      [\n        \"▁spokesperson\",\n        -12.829560279846191\n      ],\n      [\n        \"▁vietii\",\n        -12.829560279846191\n      ],\n      [\n        \"▁prescri\",\n        -12.829629898071289\n      ],\n      [\n        \"ру\",\n        -12.829666137695312\n      ],\n      [\n        \"6.2\",\n        -12.829801559448242\n      ],\n      [\n        \"▁spațiu\",\n        -12.830018997192383\n      ],\n      [\n        \"▁solvent\",\n        -12.83006763458252\n      ],\n      [\n        \",000,000\",\n        -12.830142974853516\n      ],\n      [\n        \"reuen\",\n        -12.830185890197754\n      ],\n      [\n        \"plast\",\n        -12.830245018005371\n      ],\n      [\n        \"▁Activities\",\n        -12.830334663391113\n      ],\n      [\n        \"▁domni\",\n        -12.83056926727295\n      ],\n      [\n        \"▁trophy\",\n        -12.830572128295898\n      ],\n      [\n        \"▁saddle\",\n        -12.830657958984375\n      ],\n      [\n        \"▁renovat\",\n        -12.830708503723145\n      ],\n      [\n        \"▁bumper\",\n        -12.830717086791992\n      ],\n      [\n        \"▁penny\",\n        -12.830741882324219\n      ],\n      [\n        \"omato\",\n        -12.830743789672852\n      ],\n      [\n        \"AQ\",\n        -12.83083438873291\n      ],\n      [\n        \"kunst\",\n        -12.830843925476074\n      ],\n      [\n        \"hydrat\",\n        -12.830860137939453\n      ],\n      [\n        \"minder\",\n        -12.830931663513184\n      ],\n      [\n        \"trecerea\",\n        -12.830949783325195\n      ],\n      [\n        \"brush\",\n        -12.831185340881348\n      ],\n      [\n        \"TEC\",\n        -12.83121395111084\n      ],\n      [\n        \"Please\",\n        -12.831253051757812\n      ],\n      [\n        \"hydrated\",\n        -12.831483840942383\n      ],\n      [\n        \"ICAL\",\n        -12.831636428833008\n      ],\n      [\n        \"trauen\",\n        -12.831639289855957\n      ],\n      [\n        \"9,000\",\n        -12.83175277709961\n      ],\n      [\n        \"▁2030\",\n        -12.831830024719238\n      ],\n      [\n        \"▁Chennai\",\n        -12.831854820251465\n      ],\n      [\n        \"▁empirical\",\n        -12.831854820251465\n      ],\n      [\n        \"▁Subscribe\",\n        -12.83206844329834\n      ],\n      [\n        \"▁vorgestellt\",\n        -12.832120895385742\n      ],\n      [\n        \"▁Springfield\",\n        -12.832159996032715\n      ],\n      [\n        \"▁continuu\",\n        -12.832311630249023\n      ],\n      [\n        \"208\",\n        -12.832351684570312\n      ],\n      [\n        \"▁Bearing\",\n        -12.83240795135498\n      ],\n      [\n        \"2003\",\n        -12.832572937011719\n      ],\n      [\n        \"cheta\",\n        -12.832608222961426\n      ],\n      [\n        \"▁empathy\",\n        -12.832623481750488\n      ],\n      [\n        \"▁Alert\",\n        -12.832817077636719\n      ],\n      [\n        \"▁recreate\",\n        -12.832879066467285\n      ],\n      [\n        \"PJ\",\n        -12.833159446716309\n      ],\n      [\n        \"Name\",\n        -12.83323860168457\n      ],\n      [\n        \"▁Mouse\",\n        -12.833405494689941\n      ],\n      [\n        \"▁disturbing\",\n        -12.833443641662598\n      ],\n      [\n        \"▁leichter\",\n        -12.83344841003418\n      ],\n      [\n        \"▁cruel\",\n        -12.833507537841797\n      ],\n      [\n        \"▁detective\",\n        -12.833531379699707\n      ],\n      [\n        \"▁reimbursement\",\n        -12.833626747131348\n      ],\n      [\n        \"▁Gemeinschaft\",\n        -12.833772659301758\n      ],\n      [\n        \"▁adolescents\",\n        -12.833772659301758\n      ],\n      [\n        \"▁Reality\",\n        -12.833954811096191\n      ],\n      [\n        \"▁Stockholm\",\n        -12.83415699005127\n      ],\n      [\n        \"▁Gründen\",\n        -12.834304809570312\n      ],\n      [\n        \"▁Reflect\",\n        -12.83432388305664\n      ],\n      [\n        \"▁Palmer\",\n        -12.834336280822754\n      ],\n      [\n        \"▁treac\",\n        -12.8343505859375\n      ],\n      [\n        \"▁tentative\",\n        -12.834497451782227\n      ],\n      [\n        \"▁surrender\",\n        -12.834677696228027\n      ],\n      [\n        \"▁broadly\",\n        -12.834734916687012\n      ],\n      [\n        \"▁județ\",\n        -12.834814071655273\n      ],\n      [\n        \"▁Thu\",\n        -12.834845542907715\n      ],\n      [\n        \"wärts\",\n        -12.834961891174316\n      ],\n      [\n        \"▁crește\",\n        -12.835074424743652\n      ],\n      [\n        \"▁déplacement\",\n        -12.835208892822266\n      ],\n      [\n        \"blanc\",\n        -12.835268020629883\n      ],\n      [\n        \"▁£5\",\n        -12.835308074951172\n      ],\n      [\n        \"▁confidentiality\",\n        -12.835320472717285\n      ],\n      [\n        \"veraging\",\n        -12.835444450378418\n      ],\n      [\n        \"unité\",\n        -12.835609436035156\n      ],\n      [\n        \"clar\",\n        -12.83564567565918\n      ],\n      [\n        \"rigg\",\n        -12.835693359375\n      ],\n      [\n        \"honneur\",\n        -12.835694313049316\n      ],\n      [\n        \"▁adventurous\",\n        -12.835694313049316\n      ],\n      [\n        \"▁Nutzen\",\n        -12.835758209228516\n      ],\n      [\n        \"▁Kabel\",\n        -12.835800170898438\n      ],\n      [\n        \"empowering\",\n        -12.836040496826172\n      ],\n      [\n        \"verhalten\",\n        -12.836042404174805\n      ],\n      [\n        \"▁prevail\",\n        -12.8361234664917\n      ],\n      [\n        \"mashed\",\n        -12.836138725280762\n      ],\n      [\n        \"▁1947\",\n        -12.83616828918457\n      ],\n      [\n        \"function\",\n        -12.836292266845703\n      ],\n      [\n        \"niveaux\",\n        -12.83633041381836\n      ],\n      [\n        \"▁territories\",\n        -12.836463928222656\n      ],\n      [\n        \"▁Permanent\",\n        -12.836465835571289\n      ],\n      [\n        \"▁christmas\",\n        -12.836471557617188\n      ],\n      [\n        \"arguing\",\n        -12.836490631103516\n      ],\n      [\n        \"zukünftig\",\n        -12.836654663085938\n      ],\n      [\n        \"▁Eindruck\",\n        -12.836817741394043\n      ],\n      [\n        \"personalised\",\n        -12.836854934692383\n      ],\n      [\n        \"▁vecin\",\n        -12.837211608886719\n      ],\n      [\n        \"▁Affiliate\",\n        -12.837234497070312\n      ],\n      [\n        \"▁Silk\",\n        -12.837249755859375\n      ],\n      [\n        \"▁Tub\",\n        -12.837440490722656\n      ],\n      [\n        \"▁remont\",\n        -12.837493896484375\n      ],\n      [\n        \"▁sauber\",\n        -12.837530136108398\n      ],\n      [\n        \"gehörig\",\n        -12.837562561035156\n      ],\n      [\n        \"Maritime\",\n        -12.83771800994873\n      ],\n      [\n        \"▁Bö\",\n        -12.837973594665527\n      ],\n      [\n        \"▁1957\",\n        -12.83800220489502\n      ],\n      [\n        \"▁unparalleled\",\n        -12.838005065917969\n      ],\n      [\n        \"▁fulfillment\",\n        -12.838042259216309\n      ],\n      [\n        \"▁collage\",\n        -12.838179588317871\n      ],\n      [\n        \"fenders\",\n        -12.838248252868652\n      ],\n      [\n        \"▁neige\",\n        -12.838275909423828\n      ],\n      [\n        \"▁gamers\",\n        -12.838325500488281\n      ],\n      [\n        \"tefan\",\n        -12.838339805603027\n      ],\n      [\n        \"▁wifi\",\n        -12.838349342346191\n      ],\n      [\n        \"▁leisten\",\n        -12.83835506439209\n      ],\n      [\n        \"▁Verbesserung\",\n        -12.838390350341797\n      ],\n      [\n        \"▁composant\",\n        -12.838400840759277\n      ],\n      [\n        \"▁LORD\",\n        -12.8384370803833\n      ],\n      [\n        \"arrive\",\n        -12.838472366333008\n      ],\n      [\n        \"▁conquer\",\n        -12.838562965393066\n      ],\n      [\n        \"▁lentil\",\n        -12.838767051696777\n      ],\n      [\n        \"▁Sprech\",\n        -12.838995933532715\n      ],\n      [\n        \"▁substitution\",\n        -12.839015007019043\n      ],\n      [\n        \".05.\",\n        -12.839020729064941\n      ],\n      [\n        \"FORM\",\n        -12.839144706726074\n      ],\n      [\n        \"cădere\",\n        -12.839154243469238\n      ],\n      [\n        \"▁canyon\",\n        -12.839430809020996\n      ],\n      [\n        \"▁capacitate\",\n        -12.839442253112793\n      ],\n      [\n        \"▁menace\",\n        -12.839461326599121\n      ],\n      [\n        \"▁Antique\",\n        -12.839519500732422\n      ],\n      [\n        \"▁dizaine\",\n        -12.839550971984863\n      ],\n      [\n        \"▁Saturn\",\n        -12.839578628540039\n      ],\n      [\n        \"▁gastro\",\n        -12.83962631225586\n      ],\n      [\n        \"▁Vand\",\n        -12.839641571044922\n      ],\n      [\n        \"▁africa\",\n        -12.839682579040527\n      ],\n      [\n        \"▁hackers\",\n        -12.839702606201172\n      ],\n      [\n        \"▁Bailey\",\n        -12.839736938476562\n      ],\n      [\n        \"ouette\",\n        -12.839822769165039\n      ],\n      [\n        \"hoch\",\n        -12.839885711669922\n      ],\n      [\n        \"étudiant\",\n        -12.839973449707031\n      ],\n      [\n        \"▁1600\",\n        -12.840004920959473\n      ],\n      [\n        \"utiliz\",\n        -12.840167999267578\n      ],\n      [\n        \"reinigung\",\n        -12.840263366699219\n      ],\n      [\n        \"▁mileage\",\n        -12.84029483795166\n      ],\n      [\n        \"▁consacré\",\n        -12.840309143066406\n      ],\n      [\n        \"▁Norfolk\",\n        -12.840327262878418\n      ],\n      [\n        \"stacked\",\n        -12.840659141540527\n      ],\n      [\n        \"anbieter\",\n        -12.840731620788574\n      ],\n      [\n        \"▁gewünschte\",\n        -12.84073543548584\n      ],\n      [\n        \"▁silicon\",\n        -12.840761184692383\n      ],\n      [\n        \"Ensuite\",\n        -12.840794563293457\n      ],\n      [\n        \"▁vendu\",\n        -12.840850830078125\n      ],\n      [\n        \"▁viteza\",\n        -12.840851783752441\n      ],\n      [\n        \"▁evaluare\",\n        -12.840913772583008\n      ],\n      [\n        \"▁contient\",\n        -12.841036796569824\n      ],\n      [\n        \"▁Viagra\",\n        -12.841100692749023\n      ],\n      [\n        \"▁circumstance\",\n        -12.841283798217773\n      ],\n      [\n        \"walker\",\n        -12.841383934020996\n      ],\n      [\n        \"▁Aluminium\",\n        -12.84148120880127\n      ],\n      [\n        \"ço\",\n        -12.841556549072266\n      ],\n      [\n        \"▁Kli\",\n        -12.841643333435059\n      ],\n      [\n        \"▁deliberately\",\n        -12.841649055480957\n      ],\n      [\n        \"▁gamble\",\n        -12.841893196105957\n      ],\n      [\n        \"▁nourri\",\n        -12.841903686523438\n      ],\n      [\n        \"▁sealing\",\n        -12.84194278717041\n      ],\n      [\n        \"▁Atmosphäre\",\n        -12.842255592346191\n      ],\n      [\n        \"▁erschien\",\n        -12.842260360717773\n      ],\n      [\n        \"▁brightness\",\n        -12.842340469360352\n      ],\n      [\n        \"autonomie\",\n        -12.84251594543457\n      ],\n      [\n        \"▁propel\",\n        -12.842525482177734\n      ],\n      [\n        \"▁Infrastructure\",\n        -12.842642784118652\n      ],\n      [\n        \"▁război\",\n        -12.842642784118652\n      ],\n      [\n        \"▁jelly\",\n        -12.842684745788574\n      ],\n      [\n        \"scalable\",\n        -12.84280776977539\n      ],\n      [\n        \"regal\",\n        -12.84296703338623\n      ],\n      [\n        \"▁sarcini\",\n        -12.843031883239746\n      ],\n      [\n        \"▁Dienstag\",\n        -12.84304428100586\n      ],\n      [\n        \"▁Receive\",\n        -12.8430814743042\n      ],\n      [\n        \"▁mango\",\n        -12.843356132507324\n      ],\n      [\n        \"▁compétition\",\n        -12.84341812133789\n      ],\n      [\n        \"▁Monument\",\n        -12.843428611755371\n      ],\n      [\n        \"▁mast\",\n        -12.844159126281738\n      ],\n      [\n        \"▁instructed\",\n        -12.84425163269043\n      ],\n      [\n        \"▁aventur\",\n        -12.844277381896973\n      ],\n      [\n        \"139\",\n        -12.844298362731934\n      ],\n      [\n        \"▁Parmi\",\n        -12.84435749053955\n      ],\n      [\n        \"confined\",\n        -12.844416618347168\n      ],\n      [\n        \"acious\",\n        -12.844441413879395\n      ],\n      [\n        \"▁simptome\",\n        -12.844581604003906\n      ],\n      [\n        \"▁Fischer\",\n        -12.844897270202637\n      ],\n      [\n        \"störung\",\n        -12.844985008239746\n      ],\n      [\n        \"▁bilateral\",\n        -12.84504508972168\n      ],\n      [\n        \"preşedintele\",\n        -12.845274925231934\n      ],\n      [\n        \"accueillir\",\n        -12.845357894897461\n      ],\n      [\n        \"▁Schmidt\",\n        -12.845359802246094\n      ],\n      [\n        \"litis\",\n        -12.845373153686523\n      ],\n      [\n        \"WL\",\n        -12.8454008102417\n      ],\n      [\n        \"▁Rise\",\n        -12.845436096191406\n      ],\n      [\n        \"▁streamline\",\n        -12.845556259155273\n      ],\n      [\n        \"sozialen\",\n        -12.845585823059082\n      ],\n      [\n        \"▁Emirates\",\n        -12.845746040344238\n      ],\n      [\n        \"▁encrypted\",\n        -12.845746040344238\n      ],\n      [\n        \"▁unfamiliar\",\n        -12.845746040344238\n      ],\n      [\n        \"established\",\n        -12.84577751159668\n      ],\n      [\n        \"▁Tätigkeit\",\n        -12.845818519592285\n      ],\n      [\n        \"▁unaware\",\n        -12.845913887023926\n      ],\n      [\n        \"2:00\",\n        -12.8460054397583\n      ],\n      [\n        \"macher\",\n        -12.846013069152832\n      ],\n      [\n        \"NSA\",\n        -12.8461275100708\n      ],\n      [\n        \"▁rutier\",\n        -12.846177101135254\n      ],\n      [\n        \"▁Trent\",\n        -12.846212387084961\n      ],\n      [\n        \"▁sickness\",\n        -12.846277236938477\n      ],\n      [\n        \"▁advert\",\n        -12.846417427062988\n      ],\n      [\n        \"▁Kranken\",\n        -12.846426963806152\n      ],\n      [\n        \"▁Sandra\",\n        -12.846443176269531\n      ],\n      [\n        \"▁Recreation\",\n        -12.846449851989746\n      ],\n      [\n        \"▁Evidence\",\n        -12.846524238586426\n      ],\n      [\n        \"▁Immigration\",\n        -12.846524238586426\n      ],\n      [\n        \"▁carriage\",\n        -12.846524238586426\n      ],\n      [\n        \"▁justified\",\n        -12.84655475616455\n      ],\n      [\n        \"▁veche\",\n        -12.846579551696777\n      ],\n      [\n        \"PGA\",\n        -12.846604347229004\n      ],\n      [\n        \"▁Carmen\",\n        -12.846735000610352\n      ],\n      [\n        \"▁Faites\",\n        -12.846750259399414\n      ],\n      [\n        \"▁erfüllt\",\n        -12.84691333770752\n      ],\n      [\n        \"▁voilà\",\n        -12.846931457519531\n      ],\n      [\n        \"▁împlin\",\n        -12.846959114074707\n      ],\n      [\n        \"deposited\",\n        -12.84721565246582\n      ],\n      [\n        \"▁decisiv\",\n        -12.847241401672363\n      ],\n      [\n        \"CSA\",\n        -12.847249031066895\n      ],\n      [\n        \"pathy\",\n        -12.84726619720459\n      ],\n      [\n        \"▁erweitert\",\n        -12.847302436828613\n      ],\n      [\n        \"▁liquor\",\n        -12.847302436828613\n      ],\n      [\n        \"▁resilient\",\n        -12.847302436828613\n      ],\n      [\n        \"▁walmart\",\n        -12.847302436828613\n      ],\n      [\n        \"▁fencing\",\n        -12.847308158874512\n      ],\n      [\n        \"▁dépasse\",\n        -12.84731388092041\n      ],\n      [\n        \"KT\",\n        -12.847354888916016\n      ],\n      [\n        \"▁fries\",\n        -12.847368240356445\n      ],\n      [\n        \"vadă\",\n        -12.847421646118164\n      ],\n      [\n        \"▁Spania\",\n        -12.847478866577148\n      ],\n      [\n        \"▁complètement\",\n        -12.847725868225098\n      ],\n      [\n        \"▁lucrari\",\n        -12.84777545928955\n      ],\n      [\n        \"▁Lieb\",\n        -12.847908973693848\n      ],\n      [\n        \"leistungen\",\n        -12.847943305969238\n      ],\n      [\n        \"198\",\n        -12.847979545593262\n      ],\n      [\n        \"▁Schnell\",\n        -12.847997665405273\n      ],\n      [\n        \"▁radius\",\n        -12.84814453125\n      ],\n      [\n        \"▁beneficiaries\",\n        -12.848151206970215\n      ],\n      [\n        \"▁northwest\",\n        -12.848174095153809\n      ],\n      [\n        \"▁#4\",\n        -12.848223686218262\n      ],\n      [\n        \"▁embryo\",\n        -12.848492622375488\n      ],\n      [\n        \"▁ditch\",\n        -12.848791122436523\n      ],\n      [\n        \"▁Seriously\",\n        -12.848859786987305\n      ],\n      [\n        \"oppel\",\n        -12.848941802978516\n      ],\n      [\n        \"▁stalk\",\n        -12.849053382873535\n      ],\n      [\n        \"écriture\",\n        -12.849066734313965\n      ],\n      [\n        \"512\",\n        -12.84912109375\n      ],\n      [\n        \"wiesen\",\n        -12.849271774291992\n      ],\n      [\n        \"▁Consum\",\n        -12.849321365356445\n      ],\n      [\n        \"▁lună\",\n        -12.849405288696289\n      ],\n      [\n        \"▁lantern\",\n        -12.849441528320312\n      ],\n      [\n        \"▁italian\",\n        -12.849629402160645\n      ],\n      [\n        \"▁achiziți\",\n        -12.849639892578125\n      ],\n      [\n        \"▁catalyst\",\n        -12.849639892578125\n      ],\n      [\n        \"▁Arbeitgeber\",\n        -12.849662780761719\n      ],\n      [\n        \"▁researched\",\n        -12.8496675491333\n      ],\n      [\n        \"▁drastically\",\n        -12.849679946899414\n      ],\n      [\n        \"versammlung\",\n        -12.849735260009766\n      ],\n      [\n        \"410\",\n        -12.849800109863281\n      ],\n      [\n        \"▁impus\",\n        -12.850153923034668\n      ],\n      [\n        \"▁interchange\",\n        -12.850173950195312\n      ],\n      [\n        \"▁pharmacie\",\n        -12.850215911865234\n      ],\n      [\n        \"Live\",\n        -12.850354194641113\n      ],\n      [\n        \"dents\",\n        -12.850384712219238\n      ],\n      [\n        \"▁charcoal\",\n        -12.850419998168945\n      ],\n      [\n        \"▁odihn\",\n        -12.850420951843262\n      ],\n      [\n        \"▁pistol\",\n        -12.850444793701172\n      ],\n      [\n        \"▁complaining\",\n        -12.850576400756836\n      ],\n      [\n        \"manager\",\n        -12.850578308105469\n      ],\n      [\n        \"themed\",\n        -12.850578308105469\n      ],\n      [\n        \"▁Chang\",\n        -12.850650787353516\n      ],\n      [\n        \"▁rookie\",\n        -12.85070514678955\n      ],\n      [\n        \"Great\",\n        -12.850706100463867\n      ],\n      [\n        \"▁smoker\",\n        -12.850733757019043\n      ],\n      [\n        \"▁Container\",\n        -12.850812911987305\n      ],\n      [\n        \"▁bancaire\",\n        -12.850852966308594\n      ],\n      [\n        \"▁Actual\",\n        -12.850966453552246\n      ],\n      [\n        \"füllen\",\n        -12.850982666015625\n      ],\n      [\n        \"forum\",\n        -12.850985527038574\n      ],\n      [\n        \"bleib\",\n        -12.851073265075684\n      ],\n      [\n        \"▁combi\",\n        -12.851079940795898\n      ],\n      [\n        \"smoked\",\n        -12.851137161254883\n      ],\n      [\n        \"difficultés\",\n        -12.851161003112793\n      ],\n      [\n        \"▁tactical\",\n        -12.851240158081055\n      ],\n      [\n        \"▁sichtbar\",\n        -12.851483345031738\n      ],\n      [\n        \"▁dreptate\",\n        -12.851598739624023\n      ],\n      [\n        \"ERT\",\n        -12.85168743133545\n      ],\n      [\n        \"▁Pond\",\n        -12.85177993774414\n      ],\n      [\n        \"▁Holly\",\n        -12.851844787597656\n      ],\n      [\n        \"erfolg\",\n        -12.8518705368042\n      ],\n      [\n        \"▁Nordic\",\n        -12.851896286010742\n      ],\n      [\n        \"évènement\",\n        -12.851983070373535\n      ],\n      [\n        \"embracing\",\n        -12.851984024047852\n      ],\n      [\n        \"▁Maximum\",\n        -12.851984024047852\n      ],\n      [\n        \"▁défend\",\n        -12.85205078125\n      ],\n      [\n        \"▁fruct\",\n        -12.852056503295898\n      ],\n      [\n        \"▁Conditioning\",\n        -12.852099418640137\n      ],\n      [\n        \"LG\",\n        -12.852127075195312\n      ],\n      [\n        \"exigence\",\n        -12.852166175842285\n      ],\n      [\n        \"amide\",\n        -12.852187156677246\n      ],\n      [\n        \"▁darunter\",\n        -12.852208137512207\n      ],\n      [\n        \"▁EVERY\",\n        -12.852420806884766\n      ],\n      [\n        \"▁comparat\",\n        -12.85244083404541\n      ],\n      [\n        \"boosting\",\n        -12.852452278137207\n      ],\n      [\n        \"▁Hawaiian\",\n        -12.852553367614746\n      ],\n      [\n        \"▁Geburt\",\n        -12.852752685546875\n      ],\n      [\n        \"deci\",\n        -12.852782249450684\n      ],\n      [\n        \"▁Apollo\",\n        -12.852803230285645\n      ],\n      [\n        \"▁schützen\",\n        -12.852821350097656\n      ],\n      [\n        \"tragere\",\n        -12.852893829345703\n      ],\n      [\n        \"Online\",\n        -12.852904319763184\n      ],\n      [\n        \"▁neural\",\n        -12.852913856506348\n      ],\n      [\n        \"▁lucrez\",\n        -12.853188514709473\n      ],\n      [\n        \"▁phenomenal\",\n        -12.853253364562988\n      ],\n      [\n        \"▁Height\",\n        -12.853368759155273\n      ],\n      [\n        \"coordinating\",\n        -12.853548049926758\n      ],\n      [\n        \"geschnitten\",\n        -12.853631019592285\n      ],\n      [\n        \"auront\",\n        -12.853641510009766\n      ],\n      [\n        \"▁administer\",\n        -12.853644371032715\n      ],\n      [\n        \"▁contend\",\n        -12.853707313537598\n      ],\n      [\n        \"▁crispy\",\n        -12.853784561157227\n      ],\n      [\n        \"chuck\",\n        -12.854011535644531\n      ],\n      [\n        \"▁Condition\",\n        -12.8540678024292\n      ],\n      [\n        \"gestaltung\",\n        -12.854324340820312\n      ],\n      [\n        \"▁Blvd\",\n        -12.854331970214844\n      ],\n      [\n        \"▁subjective\",\n        -12.854470252990723\n      ],\n      [\n        \"▁événements\",\n        -12.854708671569824\n      ],\n      [\n        \"▁Jenny\",\n        -12.855131149291992\n      ],\n      [\n        \"▁cumpăra\",\n        -12.85519027709961\n      ],\n      [\n        \"constructing\",\n        -12.855262756347656\n      ],\n      [\n        \"▁instructional\",\n        -12.85539436340332\n      ],\n      [\n        \"▁sterling\",\n        -12.855446815490723\n      ],\n      [\n        \"scrise\",\n        -12.855470657348633\n      ],\n      [\n        \"▁Boulevard\",\n        -12.855551719665527\n      ],\n      [\n        \"pipe\",\n        -12.855620384216309\n      ],\n      [\n        \"▁Pride\",\n        -12.855748176574707\n      ],\n      [\n        \"▁Kau\",\n        -12.855751991271973\n      ],\n      [\n        \"▁overhaul\",\n        -12.855924606323242\n      ],\n      [\n        \"▁Recruitment\",\n        -12.855925559997559\n      ],\n      [\n        \"▁thrilling\",\n        -12.856218338012695\n      ],\n      [\n        \"living\",\n        -12.856302261352539\n      ],\n      [\n        \"▁rămân\",\n        -12.85645866394043\n      ],\n      [\n        \"▁MOD\",\n        -12.85661792755127\n      ],\n      [\n        \"▁Newport\",\n        -12.856675148010254\n      ],\n      [\n        \"▁infectious\",\n        -12.856688499450684\n      ],\n      [\n        \"6-3\",\n        -12.856860160827637\n      ],\n      [\n        \"▁Apache\",\n        -12.856976509094238\n      ],\n      [\n        \"▁dependence\",\n        -12.85698413848877\n      ],\n      [\n        \"nutzung\",\n        -12.857199668884277\n      ],\n      [\n        \"praised\",\n        -12.857211112976074\n      ],\n      [\n        \"▁craving\",\n        -12.857346534729004\n      ],\n      [\n        \"▁cramp\",\n        -12.857397079467773\n      ],\n      [\n        \"▁mancare\",\n        -12.857455253601074\n      ],\n      [\n        \"▁entdeckt\",\n        -12.857474327087402\n      ],\n      [\n        \"▁Pioneer\",\n        -12.857484817504883\n      ],\n      [\n        \"▁Adelaide\",\n        -12.857490539550781\n      ],\n      [\n        \"2.0\",\n        -12.857503890991211\n      ],\n      [\n        \"168\",\n        -12.857526779174805\n      ],\n      [\n        \"▁Decorating\",\n        -12.857611656188965\n      ],\n      [\n        \"▁unpleasant\",\n        -12.857854843139648\n      ],\n      [\n        \"▁déclaration\",\n        -12.857865333557129\n      ],\n      [\n        \"▁Grafik\",\n        -12.857908248901367\n      ],\n      [\n        \"5-2\",\n        -12.857937812805176\n      ],\n      [\n        \"căci\",\n        -12.857940673828125\n      ],\n      [\n        \"▁invade\",\n        -12.858171463012695\n      ],\n      [\n        \"▁internaţional\",\n        -12.858259201049805\n      ],\n      [\n        \"▁fraudulent\",\n        -12.858281135559082\n      ],\n      [\n        \"▁crestere\",\n        -12.858441352844238\n      ],\n      [\n        \"ografic\",\n        -12.858729362487793\n      ],\n      [\n        \"plină\",\n        -12.859140396118164\n      ],\n      [\n        \"sunteti\",\n        -12.859150886535645\n      ],\n      [\n        \"/04\",\n        -12.859176635742188\n      ],\n      [\n        \"▁admis\",\n        -12.85935115814209\n      ],\n      [\n        \"▁mediation\",\n        -12.859403610229492\n      ],\n      [\n        \"ICC\",\n        -12.859424591064453\n      ],\n      [\n        \"roș\",\n        -12.859660148620605\n      ],\n      [\n        \"▁Aroma\",\n        -12.8596773147583\n      ],\n      [\n        \"1:00\",\n        -12.859792709350586\n      ],\n      [\n        \"gasesc\",\n        -12.859822273254395\n      ],\n      [\n        \"▁Defence\",\n        -12.859850883483887\n      ],\n      [\n        \"▁dictionary\",\n        -12.859856605529785\n      ],\n      [\n        \"▁Batterie\",\n        -12.859865188598633\n      ],\n      [\n        \"▁gesunde\",\n        -12.85997486114502\n      ],\n      [\n        \"146\",\n        -12.860099792480469\n      ],\n      [\n        \"▁mortal\",\n        -12.860129356384277\n      ],\n      [\n        \"▁Flughafen\",\n        -12.860230445861816\n      ],\n      [\n        \"hhh\",\n        -12.860284805297852\n      ],\n      [\n        \"▁novice\",\n        -12.860342025756836\n      ],\n      [\n        \"▁Develop\",\n        -12.86043930053711\n      ],\n      [\n        \"▁accidental\",\n        -12.860516548156738\n      ],\n      [\n        \"Muzeul\",\n        -12.86054515838623\n      ],\n      [\n        \"▁Jupiter\",\n        -12.86062240600586\n      ],\n      [\n        \"supposedly\",\n        -12.860662460327148\n      ],\n      [\n        \"energy\",\n        -12.860758781433105\n      ],\n      [\n        \"▁montrer\",\n        -12.860764503479004\n      ],\n      [\n        \"recalled\",\n        -12.860795021057129\n      ],\n      [\n        \"Press\",\n        -12.860801696777344\n      ],\n      [\n        \"▁postcard\",\n        -12.86080265045166\n      ],\n      [\n        \"target\",\n        -12.86081600189209\n      ],\n      [\n        \"▁vêtements\",\n        -12.860881805419922\n      ],\n      [\n        \"▁particle\",\n        -12.860888481140137\n      ],\n      [\n        \"professional\",\n        -12.8608980178833\n      ],\n      [\n        \"▁1949\",\n        -12.860917091369629\n      ],\n      [\n        \"yah\",\n        -12.860980033874512\n      ],\n      [\n        \"▁Spiegel\",\n        -12.861017227172852\n      ],\n      [\n        \"▁Jeffrey\",\n        -12.861023902893066\n      ],\n      [\n        \"fahrzeug\",\n        -12.861027717590332\n      ],\n      [\n        \"▁Plug\",\n        -12.861051559448242\n      ],\n      [\n        \"▁violin\",\n        -12.861150741577148\n      ],\n      [\n        \"▁condemn\",\n        -12.861381530761719\n      ],\n      [\n        \"▁conducere\",\n        -12.861398696899414\n      ],\n      [\n        \"▁Chevrolet\",\n        -12.861412048339844\n      ],\n      [\n        \"▁conceput\",\n        -12.861461639404297\n      ],\n      [\n        \"▁Merri\",\n        -12.861493110656738\n      ],\n      [\n        \"judging\",\n        -12.861559867858887\n      ],\n      [\n        \"embraced\",\n        -12.86168098449707\n      ],\n      [\n        \"▁Compact\",\n        -12.861715316772461\n      ],\n      [\n        \"▁château\",\n        -12.861807823181152\n      ],\n      [\n        \"etch\",\n        -12.861945152282715\n      ],\n      [\n        \"bedroom\",\n        -12.861995697021484\n      ],\n      [\n        \"People\",\n        -12.862038612365723\n      ],\n      [\n        \"25,000\",\n        -12.86209774017334\n      ],\n      [\n        \"ocyte\",\n        -12.862146377563477\n      ],\n      [\n        \"▁Lenovo\",\n        -12.862205505371094\n      ],\n      [\n        \"▁Hampton\",\n        -12.862241744995117\n      ],\n      [\n        \"5.2\",\n        -12.862244606018066\n      ],\n      [\n        \"▁progres\",\n        -12.862266540527344\n      ],\n      [\n        \"hoc\",\n        -12.862288475036621\n      ],\n      [\n        \"▁complementary\",\n        -12.86241340637207\n      ],\n      [\n        \"turned\",\n        -12.862485885620117\n      ],\n      [\n        \"mangel\",\n        -12.862508773803711\n      ],\n      [\n        \"▁Drew\",\n        -12.862592697143555\n      ],\n      [\n        \"épisode\",\n        -12.86259651184082\n      ],\n      [\n        \"▁Versorgung\",\n        -12.86259651184082\n      ],\n      [\n        \"▁ausdrücklich\",\n        -12.86259651184082\n      ],\n      [\n        \"ciune\",\n        -12.862788200378418\n      ],\n      [\n        \"▁sfârșit\",\n        -12.862990379333496\n      ],\n      [\n        \"Agricultural\",\n        -12.862991333007812\n      ],\n      [\n        \"▁caffeine\",\n        -12.862991333007812\n      ],\n      [\n        \"▁emergencies\",\n        -12.862991333007812\n      ],\n      [\n        \"▁unhappy\",\n        -12.862991333007812\n      ],\n      [\n        \"(7)\",\n        -12.863043785095215\n      ],\n      [\n        \"▁inlocui\",\n        -12.863059043884277\n      ],\n      [\n        \"▁Rochester\",\n        -12.863153457641602\n      ],\n      [\n        \"183\",\n        -12.863155364990234\n      ],\n      [\n        \"niz\",\n        -12.863285064697266\n      ],\n      [\n        \"tasche\",\n        -12.863462448120117\n      ],\n      [\n        \"▁Salle\",\n        -12.86347484588623\n      ],\n      [\n        \"cît\",\n        -12.863478660583496\n      ],\n      [\n        \"▁Singer\",\n        -12.863489151000977\n      ],\n      [\n        \"▁economically\",\n        -12.863506317138672\n      ],\n      [\n        \"▁ieși\",\n        -12.863525390625\n      ],\n      [\n        \"▁façade\",\n        -12.86378288269043\n      ],\n      [\n        \"Ohne\",\n        -12.863801956176758\n      ],\n      [\n        \"▁edible\",\n        -12.863842964172363\n      ],\n      [\n        \"Rob\",\n        -12.863851547241211\n      ],\n      [\n        \"▁(2014)\",\n        -12.863859176635742\n      ],\n      [\n        \"▁Zar\",\n        -12.863919258117676\n      ],\n      [\n        \"▁obey\",\n        -12.863995552062988\n      ],\n      [\n        \"Pack\",\n        -12.864087104797363\n      ],\n      [\n        \"▁Omni\",\n        -12.864198684692383\n      ],\n      [\n        \"▁Gilbert\",\n        -12.864212036132812\n      ],\n      [\n        \"▁Vlad\",\n        -12.86429500579834\n      ],\n      [\n        \"▁pauvre\",\n        -12.864333152770996\n      ],\n      [\n        \"▁secular\",\n        -12.864383697509766\n      ],\n      [\n        \"Center\",\n        -12.864415168762207\n      ],\n      [\n        \"▁Prospect\",\n        -12.864457130432129\n      ],\n      [\n        \"▁Noah\",\n        -12.86450481414795\n      ],\n      [\n        \"▁Interactive\",\n        -12.86471176147461\n      ],\n      [\n        \"▁centaine\",\n        -12.86485767364502\n      ],\n      [\n        \"▁cerebral\",\n        -12.864971160888672\n      ],\n      [\n        \"▁Novel\",\n        -12.865013122558594\n      ],\n      [\n        \"▁Käufer\",\n        -12.865039825439453\n      ],\n      [\n        \"werfen\",\n        -12.865056991577148\n      ],\n      [\n        \"▁reluctant\",\n        -12.865143775939941\n      ],\n      [\n        \"ес\",\n        -12.86520004272461\n      ],\n      [\n        \"Look\",\n        -12.86521053314209\n      ],\n      [\n        \"Erkrankung\",\n        -12.86536693572998\n      ],\n      [\n        \"▁cucumber\",\n        -12.86536693572998\n      ],\n      [\n        \"/2017\",\n        -12.865399360656738\n      ],\n      [\n        \"▁flank\",\n        -12.865405082702637\n      ],\n      [\n        \"opportunité\",\n        -12.865667343139648\n      ],\n      [\n        \"zugleich\",\n        -12.865766525268555\n      ],\n      [\n        \"RAT\",\n        -12.865840911865234\n      ],\n      [\n        \"▁avantages\",\n        -12.865880012512207\n      ],\n      [\n        \"▁außer\",\n        -12.866008758544922\n      ],\n      [\n        \"GV\",\n        -12.866090774536133\n      ],\n      [\n        \"▁Continental\",\n        -12.866159439086914\n      ],\n      [\n        \"▁affiliation\",\n        -12.866159439086914\n      ],\n      [\n        \"▁ursprünglich\",\n        -12.86618423461914\n      ],\n      [\n        \"▁hardship\",\n        -12.866349220275879\n      ],\n      [\n        \"âme\",\n        -12.86647891998291\n      ],\n      [\n        \"▁hallway\",\n        -12.866576194763184\n      ],\n      [\n        \"▁afară\",\n        -12.866578102111816\n      ],\n      [\n        \"western\",\n        -12.866714477539062\n      ],\n      [\n        \"▁Jacket\",\n        -12.866802215576172\n      ],\n      [\n        \"▁culturelle\",\n        -12.866876602172852\n      ],\n      [\n        \"▁glaci\",\n        -12.866995811462402\n      ],\n      [\n        \"metoda\",\n        -12.867036819458008\n      ],\n      [\n        \"▁clerk\",\n        -12.867045402526855\n      ],\n      [\n        \"▁ordinance\",\n        -12.867185592651367\n      ],\n      [\n        \"▁Initial\",\n        -12.867197036743164\n      ],\n      [\n        \"waking\",\n        -12.86722469329834\n      ],\n      [\n        \"▁Secondary\",\n        -12.867366790771484\n      ],\n      [\n        \"▁Solomon\",\n        -12.867411613464355\n      ],\n      [\n        \"glomer\",\n        -12.867488861083984\n      ],\n      [\n        \"SYS\",\n        -12.867530822753906\n      ],\n      [\n        \"▁Florin\",\n        -12.867596626281738\n      ],\n      [\n        \"ffentlich\",\n        -12.867670059204102\n      ],\n      [\n        \"▁Printer\",\n        -12.867674827575684\n      ],\n      [\n        \"▁dimineata\",\n        -12.86774730682373\n      ],\n      [\n        \"▁stripes\",\n        -12.867748260498047\n      ],\n      [\n        \"plugged\",\n        -12.86776065826416\n      ],\n      [\n        \"öhl\",\n        -12.867836952209473\n      ],\n      [\n        \"infused\",\n        -12.867875099182129\n      ],\n      [\n        \"▁Rubber\",\n        -12.867895126342773\n      ],\n      [\n        \"paved\",\n        -12.867898941040039\n      ],\n      [\n        \"▁Devi\",\n        -12.867995262145996\n      ],\n      [\n        \"▁subway\",\n        -12.8681640625\n      ],\n      [\n        \"▁gases\",\n        -12.868306159973145\n      ],\n      [\n        \"▁reguli\",\n        -12.868371963500977\n      ],\n      [\n        \"▁Rebel\",\n        -12.868413925170898\n      ],\n      [\n        \"▁destructive\",\n        -12.868546485900879\n      ],\n      [\n        \"▁oferind\",\n        -12.868664741516113\n      ],\n      [\n        \"9001\",\n        -12.868876457214355\n      ],\n      [\n        \"CRA\",\n        -12.868912696838379\n      ],\n      [\n        \"why\",\n        -12.868932723999023\n      ],\n      [\n        \"sensul\",\n        -12.869036674499512\n      ],\n      [\n        \"guter\",\n        -12.869277000427246\n      ],\n      [\n        \"Empfehlung\",\n        -12.869338035583496\n      ],\n      [\n        \"▁convertible\",\n        -12.86953353881836\n      ],\n      [\n        \"▁predominantly\",\n        -12.869637489318848\n      ],\n      [\n        \"▁Mentor\",\n        -12.869649887084961\n      ],\n      [\n        \"Practic\",\n        -12.869720458984375\n      ],\n      [\n        \"▁echipă\",\n        -12.869754791259766\n      ],\n      [\n        \"onsite\",\n        -12.869853019714355\n      ],\n      [\n        \"▁zunehmend\",\n        -12.86994743347168\n      ],\n      [\n        \"▁Harbour\",\n        -12.870016098022461\n      ],\n      [\n        \"▁pineapple\",\n        -12.870133399963379\n      ],\n      [\n        \"▁gasoline\",\n        -12.870139122009277\n      ],\n      [\n        \"▁Jaguar\",\n        -12.870158195495605\n      ],\n      [\n        \"kno\",\n        -12.870259284973145\n      ],\n      [\n        \"▁heap\",\n        -12.870448112487793\n      ],\n      [\n        \"▁fictional\",\n        -12.870481491088867\n      ],\n      [\n        \"fiinta\",\n        -12.870753288269043\n      ],\n      [\n        \"▁Amber\",\n        -12.87081241607666\n      ],\n      [\n        \"▁Exclusive\",\n        -12.870929718017578\n      ],\n      [\n        \"▁Pharmaceutical\",\n        -12.870929718017578\n      ],\n      [\n        \"▁unterscheide\",\n        -12.871044158935547\n      ],\n      [\n        \"▁1942\",\n        -12.871116638183594\n      ],\n      [\n        \"▁Ceiling\",\n        -12.87115478515625\n      ],\n      [\n        \"developed\",\n        -12.871228218078613\n      ],\n      [\n        \"▁consacr\",\n        -12.87132453918457\n      ],\n      [\n        \"▁Membr\",\n        -12.871411323547363\n      ],\n      [\n        \"erton\",\n        -12.871447563171387\n      ],\n      [\n        \"habitation\",\n        -12.871685981750488\n      ],\n      [\n        \"▁longevity\",\n        -12.871726989746094\n      ],\n      [\n        \"▁Starbucks\",\n        -12.871728897094727\n      ],\n      [\n        \"▁poat\",\n        -12.871771812438965\n      ],\n      [\n        \"▁commissioner\",\n        -12.871794700622559\n      ],\n      [\n        \"pedia\",\n        -12.871938705444336\n      ],\n      [\n        \"popped\",\n        -12.872468948364258\n      ],\n      [\n        \"versorgung\",\n        -12.872525215148926\n      ],\n      [\n        \"▁Aktivitäten\",\n        -12.872525215148926\n      ],\n      [\n        \"▁Betreuung\",\n        -12.872525215148926\n      ],\n      [\n        \"▁afacere\",\n        -12.872968673706055\n      ],\n      [\n        \"▁Mechanical\",\n        -12.873323440551758\n      ],\n      [\n        \"▁Leiter\",\n        -12.873346328735352\n      ],\n      [\n        \"▁scaling\",\n        -12.873427391052246\n      ],\n      [\n        \"▁Slim\",\n        -12.87350082397461\n      ],\n      [\n        \"▁temperaturi\",\n        -12.873516082763672\n      ],\n      [\n        \"ACH\",\n        -12.873558044433594\n      ],\n      [\n        \"▁jährlich\",\n        -12.873682022094727\n      ],\n      [\n        \"▁photographie\",\n        -12.873722076416016\n      ],\n      [\n        \"▁préalable\",\n        -12.873725891113281\n      ],\n      [\n        \"▁părinți\",\n        -12.87372875213623\n      ],\n      [\n        \"▁Farmers\",\n        -12.873873710632324\n      ],\n      [\n        \"▁Printable\",\n        -12.873905181884766\n      ],\n      [\n        \"Früh\",\n        -12.873908996582031\n      ],\n      [\n        \"approved\",\n        -12.87398624420166\n      ],\n      [\n        \"otro\",\n        -12.874094009399414\n      ],\n      [\n        \"▁veneer\",\n        -12.874099731445312\n      ],\n      [\n        \"▁Warriors\",\n        -12.874122619628906\n      ],\n      [\n        \"▁Approach\",\n        -12.874149322509766\n      ],\n      [\n        \"Share\",\n        -12.874238967895508\n      ],\n      [\n        \"▁buds\",\n        -12.874252319335938\n      ],\n      [\n        \"▁Într\",\n        -12.874330520629883\n      ],\n      [\n        \"glichen\",\n        -12.87452507019043\n      ],\n      [\n        \"▁anbieten\",\n        -12.87452507019043\n      ],\n      [\n        \"MET\",\n        -12.874539375305176\n      ],\n      [\n        \"amélioration\",\n        -12.87468147277832\n      ],\n      [\n        \"ländische\",\n        -12.87468433380127\n      ],\n      [\n        \"nsgesamt\",\n        -12.874764442443848\n      ],\n      [\n        \"einiger\",\n        -12.874822616577148\n      ],\n      [\n        \"▁Förderung\",\n        -12.874876022338867\n      ],\n      [\n        \"destroying\",\n        -12.874910354614258\n      ],\n      [\n        \"▁accreditation\",\n        -12.874922752380371\n      ],\n      [\n        \"reminiscent\",\n        -12.875094413757324\n      ],\n      [\n        \"▁retriev\",\n        -12.87528133392334\n      ],\n      [\n        \"▁Flü\",\n        -12.875306129455566\n      ],\n      [\n        \"▁Monsieur\",\n        -12.875322341918945\n      ],\n      [\n        \"German\",\n        -12.87536334991455\n      ],\n      [\n        \"Orice\",\n        -12.875443458557129\n      ],\n      [\n        \"künftig\",\n        -12.875523567199707\n      ],\n      [\n        \"▁vorbi\",\n        -12.875639915466309\n      ],\n      [\n        \"▁intentionally\",\n        -12.875733375549316\n      ],\n      [\n        \"▁îngrij\",\n        -12.875743865966797\n      ],\n      [\n        \"▁laughed\",\n        -12.875850677490234\n      ],\n      [\n        \"▁Fiction\",\n        -12.875913619995117\n      ],\n      [\n        \"▁inteligent\",\n        -12.875914573669434\n      ],\n      [\n        \"▁Translation\",\n        -12.875953674316406\n      ],\n      [\n        \"greete\",\n        -12.875983238220215\n      ],\n      [\n        \"▁énergétique\",\n        -12.876123428344727\n      ],\n      [\n        \"uncovered\",\n        -12.876248359680176\n      ],\n      [\n        \"▁évidemment\",\n        -12.876523971557617\n      ],\n      [\n        \"▁Vietnamese\",\n        -12.876535415649414\n      ],\n      [\n        \"▁Libya\",\n        -12.876675605773926\n      ],\n      [\n        \"▁Trailer\",\n        -12.876734733581543\n      ],\n      [\n        \"▁Wohl\",\n        -12.876871109008789\n      ],\n      [\n        \"▁Congo\",\n        -12.87698745727539\n      ],\n      [\n        \"▁freut\",\n        -12.877002716064453\n      ],\n      [\n        \"zauber\",\n        -12.877090454101562\n      ],\n      [\n        \"▁Pân\",\n        -12.877142906188965\n      ],\n      [\n        \"▁mentine\",\n        -12.877333641052246\n      ],\n      [\n        \"▁welding\",\n        -12.877335548400879\n      ],\n      [\n        \"▁Mircea\",\n        -12.8773775100708\n      ],\n      [\n        \"▁optimism\",\n        -12.877455711364746\n      ],\n      [\n        \"VEL\",\n        -12.877504348754883\n      ],\n      [\n        \"oilea\",\n        -12.877540588378906\n      ],\n      [\n        \"▁thereafter\",\n        -12.877612113952637\n      ],\n      [\n        \"▁André\",\n        -12.877710342407227\n      ],\n      [\n        \"forschung\",\n        -12.877799987792969\n      ],\n      [\n        \"running\",\n        -12.878022193908691\n      ],\n      [\n        \"▁hostile\",\n        -12.878059387207031\n      ],\n      [\n        \"Homme\",\n        -12.87811279296875\n      ],\n      [\n        \"▁Satellite\",\n        -12.878129005432129\n      ],\n      [\n        \"▁collagen\",\n        -12.87841796875\n      ],\n      [\n        \"▁concedi\",\n        -12.878518104553223\n      ],\n      [\n        \"▁produziert\",\n        -12.87852954864502\n      ],\n      [\n        \"▁virgin\",\n        -12.878540992736816\n      ],\n      [\n        \"frant\",\n        -12.87857723236084\n      ],\n      [\n        \"▁teammates\",\n        -12.878744125366211\n      ],\n      [\n        \"▁faceti\",\n        -12.878802299499512\n      ],\n      [\n        \"▁Restoration\",\n        -12.87893295288086\n      ],\n      [\n        \"▁detached\",\n        -12.878935813903809\n      ],\n      [\n        \"▁Instructor\",\n        -12.878950119018555\n      ],\n      [\n        \"montag\",\n        -12.879227638244629\n      ],\n      [\n        \"▁borrowing\",\n        -12.879375457763672\n      ],\n      [\n        \"▁Retro\",\n        -12.879446983337402\n      ],\n      [\n        \"▁behandelt\",\n        -12.879536628723145\n      ],\n      [\n        \"▁Aussage\",\n        -12.879715919494629\n      ],\n      [\n        \"▁snorkel\",\n        -12.879734992980957\n      ],\n      [\n        \"▁Proceedings\",\n        -12.879754066467285\n      ],\n      [\n        \"▁Judy\",\n        -12.879776000976562\n      ],\n      [\n        \"▁Wendy\",\n        -12.879783630371094\n      ],\n      [\n        \"artă\",\n        -12.879920959472656\n      ],\n      [\n        \"▁Vergangenheit\",\n        -12.88013744354248\n      ],\n      [\n        \"▁Gegner\",\n        -12.880139350891113\n      ],\n      [\n        \"▁ulcer\",\n        -12.880166053771973\n      ],\n      [\n        \"wirksam\",\n        -12.880553245544434\n      ],\n      [\n        \"▁închis\",\n        -12.880560874938965\n      ],\n      [\n        \"▁emission\",\n        -12.88068962097168\n      ],\n      [\n        \"ulescu\",\n        -12.880754470825195\n      ],\n      [\n        \"▁bancar\",\n        -12.880819320678711\n      ],\n      [\n        \"compromising\",\n        -12.880924224853516\n      ],\n      [\n        \"▁Priest\",\n        -12.881156921386719\n      ],\n      [\n        \"▁Progress\",\n        -12.881318092346191\n      ],\n      [\n        \"▁punish\",\n        -12.88144588470459\n      ],\n      [\n        \"▁Afin\",\n        -12.881450653076172\n      ],\n      [\n        \"▁Bog\",\n        -12.881514549255371\n      ],\n      [\n        \"lunii\",\n        -12.881525039672852\n      ],\n      [\n        \"▁ressembl\",\n        -12.881570816040039\n      ],\n      [\n        \"▁Creation\",\n        -12.881644248962402\n      ],\n      [\n        \"effet\",\n        -12.881668090820312\n      ],\n      [\n        \"Versicherung\",\n        -12.881671905517578\n      ],\n      [\n        \"médias\",\n        -12.881672859191895\n      ],\n      [\n        \"▁Kritik\",\n        -12.881793975830078\n      ],\n      [\n        \"idia\",\n        -12.881896018981934\n      ],\n      [\n        \"▁Wasch\",\n        -12.881929397583008\n      ],\n      [\n        \"UAL\",\n        -12.882059097290039\n      ],\n      [\n        \"Approximately\",\n        -12.882149696350098\n      ],\n      [\n        \"izari\",\n        -12.882152557373047\n      ],\n      [\n        \"▁Dortmund\",\n        -12.882152557373047\n      ],\n      [\n        \"▁contul\",\n        -12.882343292236328\n      ],\n      [\n        \"▁Airways\",\n        -12.882408142089844\n      ],\n      [\n        \"sicherung\",\n        -12.882535934448242\n      ],\n      [\n        \"échelle\",\n        -12.882560729980469\n      ],\n      [\n        \"ADD\",\n        -12.882582664489746\n      ],\n      [\n        \"DIA\",\n        -12.88259506225586\n      ],\n      [\n        \"kabel\",\n        -12.882621765136719\n      ],\n      [\n        \"Media\",\n        -12.88268756866455\n      ],\n      [\n        \"ampli\",\n        -12.882894515991211\n      ],\n      [\n        \"▁quarry\",\n        -12.88295841217041\n      ],\n      [\n        \"▁acoper\",\n        -12.883072853088379\n      ],\n      [\n        \"halter\",\n        -12.883326530456543\n      ],\n      [\n        \"▁solicitor\",\n        -12.883684158325195\n      ],\n      [\n        \"phosphat\",\n        -12.883763313293457\n      ],\n      [\n        \"▁drown\",\n        -12.883773803710938\n      ],\n      [\n        \"congratulat\",\n        -12.884047508239746\n      ],\n      [\n        \"▁uneven\",\n        -12.884087562561035\n      ],\n      [\n        \"▁rupe\",\n        -12.884154319763184\n      ],\n      [\n        \"▁heureux\",\n        -12.88417911529541\n      ],\n      [\n        \"caractéristiques\",\n        -12.884221076965332\n      ],\n      [\n        \"60,000\",\n        -12.884283065795898\n      ],\n      [\n        \"ambigu\",\n        -12.884340286254883\n      ],\n      [\n        \"224\",\n        -12.884417533874512\n      ],\n      [\n        \"dov\",\n        -12.88454532623291\n      ],\n      [\n        \"▁Naturally\",\n        -12.884629249572754\n      ],\n      [\n        \"▁Ernst\",\n        -12.884634017944336\n      ],\n      [\n        \"Camp\",\n        -12.884757995605469\n      ],\n      [\n        \"▁Worldwide\",\n        -12.884909629821777\n      ],\n      [\n        \"▁antrenament\",\n        -12.885042190551758\n      ],\n      [\n        \"▁jocul\",\n        -12.88521671295166\n      ],\n      [\n        \"▁broccoli\",\n        -12.88537883758545\n      ],\n      [\n        \"▁fascinated\",\n        -12.88537883758545\n      ],\n      [\n        \"▁Abbey\",\n        -12.885387420654297\n      ],\n      [\n        \"▁aquarium\",\n        -12.885390281677246\n      ],\n      [\n        \"HAN\",\n        -12.885458946228027\n      ],\n      [\n        \"chaffung\",\n        -12.885480880737305\n      ],\n      [\n        \"137\",\n        -12.885503768920898\n      ],\n      [\n        \"rumors\",\n        -12.885515213012695\n      ],\n      [\n        \"reliance\",\n        -12.885557174682617\n      ],\n      [\n        \"▁vaccination\",\n        -12.8856782913208\n      ],\n      [\n        \"responsabilitate\",\n        -12.885777473449707\n      ],\n      [\n        \"▁legislati\",\n        -12.885782241821289\n      ],\n      [\n        \"ATT\",\n        -12.885826110839844\n      ],\n      [\n        \"206\",\n        -12.885896682739258\n      ],\n      [\n        \"▁miere\",\n        -12.885967254638672\n      ],\n      [\n        \"▁rezultatul\",\n        -12.885988235473633\n      ],\n      [\n        \"părea\",\n        -12.88599681854248\n      ],\n      [\n        \"zuführen\",\n        -12.886159896850586\n      ],\n      [\n        \"▁Kompetenz\",\n        -12.886187553405762\n      ],\n      [\n        \"▁nickname\",\n        -12.886195182800293\n      ],\n      [\n        \"pilot\",\n        -12.88620376586914\n      ],\n      [\n        \"▁ninth\",\n        -12.886252403259277\n      ],\n      [\n        \"▁Tyr\",\n        -12.886446952819824\n      ],\n      [\n        \"▁misuse\",\n        -12.886469841003418\n      ],\n      [\n        \"▁SUP\",\n        -12.886514663696289\n      ],\n      [\n        \"▁Attack\",\n        -12.88667106628418\n      ],\n      [\n        \"Smart\",\n        -12.88669490814209\n      ],\n      [\n        \"▁Philosoph\",\n        -12.886930465698242\n      ],\n      [\n        \"▁Alege\",\n        -12.886931419372559\n      ],\n      [\n        \"▁femeile\",\n        -12.886967658996582\n      ],\n      [\n        \"▁Heating\",\n        -12.88698673248291\n      ],\n      [\n        \"▁Cricket\",\n        -12.886999130249023\n      ],\n      [\n        \"▁scholar\",\n        -12.887049674987793\n      ],\n      [\n        \"Model\",\n        -12.887073516845703\n      ],\n      [\n        \"▁stimulating\",\n        -12.887182235717773\n      ],\n      [\n        \"▁industrielle\",\n        -12.887189865112305\n      ],\n      [\n        \"▁phenomena\",\n        -12.887303352355957\n      ],\n      [\n        \"▁Nahrung\",\n        -12.887414932250977\n      ],\n      [\n        \"▁Conditioner\",\n        -12.887433052062988\n      ],\n      [\n        \"führ\",\n        -12.887489318847656\n      ],\n      [\n        \"▁révolution\",\n        -12.88757610321045\n      ],\n      [\n        \"plastic\",\n        -12.887595176696777\n      ],\n      [\n        \"▁approximate\",\n        -12.887596130371094\n      ],\n      [\n        \"▁dienen\",\n        -12.887624740600586\n      ],\n      [\n        \"▁obsession\",\n        -12.887807846069336\n      ],\n      [\n        \"▁rectangular\",\n        -12.887807846069336\n      ],\n      [\n        \"Allemagne\",\n        -12.887808799743652\n      ],\n      [\n        \"▁Tanzania\",\n        -12.887824058532715\n      ],\n      [\n        \"border\",\n        -12.887884140014648\n      ],\n      [\n        \"▁crashed\",\n        -12.887958526611328\n      ],\n      [\n        \"visor\",\n        -12.887974739074707\n      ],\n      [\n        \"▁autorizat\",\n        -12.888072967529297\n      ],\n      [\n        \"▁Champagne\",\n        -12.888222694396973\n      ],\n      [\n        \"längst\",\n        -12.888238906860352\n      ],\n      [\n        \"▁realities\",\n        -12.888314247131348\n      ],\n      [\n        \"▁Keyword\",\n        -12.88831615447998\n      ],\n      [\n        \"▁GUI\",\n        -12.888495445251465\n      ],\n      [\n        \"▁simplified\",\n        -12.88865852355957\n      ],\n      [\n        \"▁Rack\",\n        -12.888681411743164\n      ],\n      [\n        \"▁Zahlen\",\n        -12.888693809509277\n      ],\n      [\n        \"growth\",\n        -12.888897895812988\n      ],\n      [\n        \"▁rehearsal\",\n        -12.888991355895996\n      ],\n      [\n        \"▁Epic\",\n        -12.888999938964844\n      ],\n      [\n        \"▁réussite\",\n        -12.889195442199707\n      ],\n      [\n        \"▁politician\",\n        -12.889263153076172\n      ],\n      [\n        \"▁emoți\",\n        -12.889378547668457\n      ],\n      [\n        \"▁delegation\",\n        -12.889449119567871\n      ],\n      [\n        \"▁со\",\n        -12.889464378356934\n      ],\n      [\n        \"oversized\",\n        -12.889477729797363\n      ],\n      [\n        \"▁Motto\",\n        -12.889481544494629\n      ],\n      [\n        \"1860\",\n        -12.889788627624512\n      ],\n      [\n        \"▁defective\",\n        -12.889803886413574\n      ],\n      [\n        \"brewing\",\n        -12.889852523803711\n      ],\n      [\n        \"linguistic\",\n        -12.890243530273438\n      ],\n      [\n        \"▁Hopkins\",\n        -12.890265464782715\n      ],\n      [\n        \"▁(2012)\",\n        -12.89030933380127\n      ],\n      [\n        \"crease\",\n        -12.890436172485352\n      ],\n      [\n        \"▁Versicherungs\",\n        -12.89052677154541\n      ],\n      [\n        \"▁Noble\",\n        -12.890752792358398\n      ],\n      [\n        \"▁Bekannt\",\n        -12.890896797180176\n      ],\n      [\n        \"▁vorstellen\",\n        -12.89095401763916\n      ],\n      [\n        \"▁suburban\",\n        -12.890970230102539\n      ],\n      [\n        \"DAC\",\n        -12.890995025634766\n      ],\n      [\n        \"▁scatter\",\n        -12.89103889465332\n      ],\n      [\n        \"▁Artificial\",\n        -12.8910551071167\n      ],\n      [\n        \"▁reactor\",\n        -12.891073226928711\n      ],\n      [\n        \"▁modelling\",\n        -12.89108943939209\n      ],\n      [\n        \"▁Holder\",\n        -12.891148567199707\n      ],\n      [\n        \"athon\",\n        -12.891149520874023\n      ],\n      [\n        \"147\",\n        -12.891190528869629\n      ],\n      [\n        \"▁stagn\",\n        -12.891257286071777\n      ],\n      [\n        \"ARY\",\n        -12.891261100769043\n      ],\n      [\n        \"Space\",\n        -12.89126968383789\n      ],\n      [\n        \"▁Gibson\",\n        -12.891718864440918\n      ],\n      [\n        \"▁Investigator\",\n        -12.89173698425293\n      ],\n      [\n        \"▁1914\",\n        -12.891818046569824\n      ],\n      [\n        \"▁Muhammad\",\n        -12.891868591308594\n      ],\n      [\n        \"▁shove\",\n        -12.892073631286621\n      ],\n      [\n        \"▁erklären\",\n        -12.892276763916016\n      ],\n      [\n        \"▁abdomen\",\n        -12.892277717590332\n      ],\n      [\n        \"▁Mazda\",\n        -12.892349243164062\n      ],\n      [\n        \"▁hemo\",\n        -12.892364501953125\n      ],\n      [\n        \"National\",\n        -12.892455101013184\n      ],\n      [\n        \"starken\",\n        -12.89267635345459\n      ],\n      [\n        \"▁Cyprus\",\n        -12.892683982849121\n      ],\n      [\n        \"▁tread\",\n        -12.892721176147461\n      ],\n      [\n        \"▁sweetness\",\n        -12.892725944519043\n      ],\n      [\n        \"stunden\",\n        -12.892790794372559\n      ],\n      [\n        \"▁couverture\",\n        -12.893059730529785\n      ],\n      [\n        \"▁Successful\",\n        -12.893060684204102\n      ],\n      [\n        \"▁oublier\",\n        -12.893171310424805\n      ],\n      [\n        \"▁esential\",\n        -12.893203735351562\n      ],\n      [\n        \"estival\",\n        -12.89321231842041\n      ],\n      [\n        \"gnac\",\n        -12.893280029296875\n      ],\n      [\n        \"▁Basement\",\n        -12.893457412719727\n      ],\n      [\n        \"presumably\",\n        -12.893497467041016\n      ],\n      [\n        \"▁mourn\",\n        -12.893561363220215\n      ],\n      [\n        \"armée\",\n        -12.893677711486816\n      ],\n      [\n        \"148\",\n        -12.893845558166504\n      ],\n      [\n        \"▁residue\",\n        -12.894006729125977\n      ],\n      [\n        \"▁metalic\",\n        -12.89404296875\n      ],\n      [\n        \"▁Zell\",\n        -12.89425277709961\n      ],\n      [\n        \"Build\",\n        -12.894280433654785\n      ],\n      [\n        \"▁prevalence\",\n        -12.894312858581543\n      ],\n      [\n        \"▁wrestling\",\n        -12.894312858581543\n      ],\n      [\n        \"▁ascuns\",\n        -12.894325256347656\n      ],\n      [\n        \"Sacred\",\n        -12.894340515136719\n      ],\n      [\n        \"Tec\",\n        -12.89438533782959\n      ],\n      [\n        \"▁Kindergarten\",\n        -12.894389152526855\n      ],\n      [\n        \"bindung\",\n        -12.894464492797852\n      ],\n      [\n        \"▁ritm\",\n        -12.894545555114746\n      ],\n      [\n        \"▁triste\",\n        -12.894651412963867\n      ],\n      [\n        \"▁introdus\",\n        -12.894758224487305\n      ],\n      [\n        \"/2016\",\n        -12.894824028015137\n      ],\n      [\n        \"▁română\",\n        -12.894899368286133\n      ],\n      [\n        \"▁bibli\",\n        -12.89490032196045\n      ],\n      [\n        \"▁cigar\",\n        -12.894913673400879\n      ],\n      [\n        \"Rie\",\n        -12.894990921020508\n      ],\n      [\n        \"▁intentional\",\n        -12.894999504089355\n      ],\n      [\n        \"▁cuprins\",\n        -12.895098686218262\n      ],\n      [\n        \"remarkably\",\n        -12.895129203796387\n      ],\n      [\n        \"▁printemps\",\n        -12.895133972167969\n      ],\n      [\n        \"▁declining\",\n        -12.895171165466309\n      ],\n      [\n        \"Magazin\",\n        -12.89552116394043\n      ],\n      [\n        \"▁săptămână\",\n        -12.895537376403809\n      ],\n      [\n        \"▁vérifier\",\n        -12.895549774169922\n      ],\n      [\n        \"▁Speise\",\n        -12.895584106445312\n      ],\n      [\n        \"▁reteta\",\n        -12.8956298828125\n      ],\n      [\n        \"heed\",\n        -12.895772933959961\n      ],\n      [\n        \"▁Compliance\",\n        -12.895946502685547\n      ],\n      [\n        \"▁embroidery\",\n        -12.895946502685547\n      ],\n      [\n        \"cried\",\n        -12.896025657653809\n      ],\n      [\n        \"▁(„\",\n        -12.896282196044922\n      ],\n      [\n        \"▁heck\",\n        -12.89629077911377\n      ],\n      [\n        \"▁sadness\",\n        -12.896501541137695\n      ],\n      [\n        \"▁impulse\",\n        -12.896585464477539\n      ],\n      [\n        \"ATH\",\n        -12.896740913391113\n      ],\n      [\n        \"▁lavender\",\n        -12.896773338317871\n      ],\n      [\n        \"uiesc\",\n        -12.896790504455566\n      ],\n      [\n        \"▁Disorder\",\n        -12.896876335144043\n      ],\n      [\n        \"stroke\",\n        -12.896991729736328\n      ],\n      [\n        \"▁piaţ\",\n        -12.8970365524292\n      ],\n      [\n        \"ournée\",\n        -12.897049903869629\n      ],\n      [\n        \"▁Barnes\",\n        -12.8971586227417\n      ],\n      [\n        \"▁scăzut\",\n        -12.897172927856445\n      ],\n      [\n        \"▁équipements\",\n        -12.89725112915039\n      ],\n      [\n        \"OND\",\n        -12.897375106811523\n      ],\n      [\n        \"▁Compet\",\n        -12.897424697875977\n      ],\n      [\n        \"▁Bestell\",\n        -12.89748477935791\n      ],\n      [\n        \"▁immédiatement\",\n        -12.897587776184082\n      ],\n      [\n        \"aparut\",\n        -12.89759635925293\n      ],\n      [\n        \"▁rainfall\",\n        -12.897882461547852\n      ],\n      [\n        \"oreille\",\n        -12.89797306060791\n      ],\n      [\n        \"▁ministère\",\n        -12.898014068603516\n      ],\n      [\n        \"iris\",\n        -12.898140907287598\n      ],\n      [\n        \"dyna\",\n        -12.898279190063477\n      ],\n      [\n        \"drücken\",\n        -12.898343086242676\n      ],\n      [\n        \"▁détect\",\n        -12.89834976196289\n      ],\n      [\n        \"▁fonctionnalité\",\n        -12.89840030670166\n      ],\n      [\n        \"▁imbalance\",\n        -12.89840030670166\n      ],\n      [\n        \"▁unpredictable\",\n        -12.89840030670166\n      ],\n      [\n        \"▁literar\",\n        -12.89846134185791\n      ],\n      [\n        \"▁Windsor\",\n        -12.898472785949707\n      ],\n      [\n        \"▁Unlimited\",\n        -12.898481369018555\n      ],\n      [\n        \"colour\",\n        -12.898674964904785\n      ],\n      [\n        \"▁Portfolio\",\n        -12.898810386657715\n      ],\n      [\n        \"149\",\n        -12.898883819580078\n      ],\n      [\n        \"volution\",\n        -12.898890495300293\n      ],\n      [\n        \"▁folgende\",\n        -12.899078369140625\n      ],\n      [\n        \"▁arbitration\",\n        -12.899105072021484\n      ],\n      [\n        \"kicking\",\n        -12.89913558959961\n      ],\n      [\n        \"zügig\",\n        -12.89923095703125\n      ],\n      [\n        \"▁1941\",\n        -12.899311065673828\n      ],\n      [\n        \"▁Drake\",\n        -12.89955997467041\n      ],\n      [\n        \"▁ausführlich\",\n        -12.899630546569824\n      ],\n      [\n        \"▁chaussure\",\n        -12.899630546569824\n      ],\n      [\n        \"▁intestinal\",\n        -12.89976692199707\n      ],\n      [\n        \"▁pilgrim\",\n        -12.900040626525879\n      ],\n      [\n        \"▁Bark\",\n        -12.900142669677734\n      ],\n      [\n        \"between\",\n        -12.900157928466797\n      ],\n      [\n        \"disposed\",\n        -12.900175094604492\n      ],\n      [\n        \"▁Dylan\",\n        -12.900218963623047\n      ],\n      [\n        \"ств\",\n        -12.900253295898438\n      ],\n      [\n        \"NOR\",\n        -12.900287628173828\n      ],\n      [\n        \"traces\",\n        -12.90038776397705\n      ],\n      [\n        \"▁moindre\",\n        -12.900500297546387\n      ],\n      [\n        \"▁$10,000\",\n        -12.900552749633789\n      ],\n      [\n        \"212\",\n        -12.900599479675293\n      ],\n      [\n        \"wusste\",\n        -12.900659561157227\n      ],\n      [\n        \"▁predictable\",\n        -12.900671005249023\n      ],\n      [\n        \"poţi\",\n        -12.900679588317871\n      ],\n      [\n        \"▁Celsius\",\n        -12.900860786437988\n      ],\n      [\n        \"gebunden\",\n        -12.90086841583252\n      ],\n      [\n        \"▁Legacy\",\n        -12.900891304016113\n      ],\n      [\n        \"movers\",\n        -12.90090274810791\n      ],\n      [\n        \"▁concret\",\n        -12.90098762512207\n      ],\n      [\n        \"▁simpla\",\n        -12.901050567626953\n      ],\n      [\n        \"rechnet\",\n        -12.901103973388672\n      ],\n      [\n        \"▁certainty\",\n        -12.901144981384277\n      ],\n      [\n        \"entrepreneurship\",\n        -12.901153564453125\n      ],\n      [\n        \"kohl\",\n        -12.901289939880371\n      ],\n      [\n        \"▁curte\",\n        -12.901311874389648\n      ],\n      [\n        \"▁Forbes\",\n        -12.901411056518555\n      ],\n      [\n        \"▁Zusatz\",\n        -12.901535987854004\n      ],\n      [\n        \"blending\",\n        -12.90163803100586\n      ],\n      [\n        \"▁variat\",\n        -12.901642799377441\n      ],\n      [\n        \"▁galaxy\",\n        -12.90168285369873\n      ],\n      [\n        \"▁safari\",\n        -12.90168571472168\n      ],\n      [\n        \"▁municipalities\",\n        -12.9017972946167\n      ],\n      [\n        \"▁Drept\",\n        -12.90180778503418\n      ],\n      [\n        \"aufnahme\",\n        -12.902128219604492\n      ],\n      [\n        \"▁endorse\",\n        -12.902223587036133\n      ],\n      [\n        \"einrichtung\",\n        -12.902244567871094\n      ],\n      [\n        \"Sync\",\n        -12.902270317077637\n      ],\n      [\n        \"abide\",\n        -12.902323722839355\n      ],\n      [\n        \"brushed\",\n        -12.902350425720215\n      ],\n      [\n        \"▁actiune\",\n        -12.902410507202148\n      ],\n      [\n        \"quaint\",\n        -12.902498245239258\n      ],\n      [\n        \"▁volatility\",\n        -12.902504920959473\n      ],\n      [\n        \"▁repetitive\",\n        -12.902505874633789\n      ],\n      [\n        \"▁découvr\",\n        -12.902560234069824\n      ],\n      [\n        \"Totodat\",\n        -12.902585983276367\n      ],\n      [\n        \"▁românesc\",\n        -12.902682304382324\n      ],\n      [\n        \"▁tempting\",\n        -12.902772903442383\n      ],\n      [\n        \"thesis\",\n        -12.902947425842285\n      ],\n      [\n        \"secure\",\n        -12.903013229370117\n      ],\n      [\n        \"delt\",\n        -12.903019905090332\n      ],\n      [\n        \"▁şef\",\n        -12.903167724609375\n      ],\n      [\n        \"▁epidemic\",\n        -12.903326988220215\n      ],\n      [\n        \"▁Appliance\",\n        -12.903327941894531\n      ],\n      [\n        \"cearcă\",\n        -12.903331756591797\n      ],\n      [\n        \"▁lodging\",\n        -12.903361320495605\n      ],\n      [\n        \"▁photographed\",\n        -12.903507232666016\n      ],\n      [\n        \"geschlagen\",\n        -12.903794288635254\n      ],\n      [\n        \"▁Methodist\",\n        -12.90380859375\n      ],\n      [\n        \"▁Transit\",\n        -12.90389347076416\n      ],\n      [\n        \"▁Länder\",\n        -12.903934478759766\n      ],\n      [\n        \"villa\",\n        -12.903986930847168\n      ],\n      [\n        \"▁toilette\",\n        -12.904031753540039\n      ],\n      [\n        \"anno\",\n        -12.904074668884277\n      ],\n      [\n        \"▁Aufnahme\",\n        -12.904091835021973\n      ],\n      [\n        \"▁Coral\",\n        -12.904099464416504\n      ],\n      [\n        \"pourraient\",\n        -12.904129981994629\n      ],\n      [\n        \"▁digestion\",\n        -12.904245376586914\n      ],\n      [\n        \"▁Vacation\",\n        -12.904274940490723\n      ],\n      [\n        \"▁Rugby\",\n        -12.904275894165039\n      ],\n      [\n        \"MIC\",\n        -12.904311180114746\n      ],\n      [\n        \"▁choc\",\n        -12.904417991638184\n      ],\n      [\n        \"2002\",\n        -12.904492378234863\n      ],\n      [\n        \"gestion\",\n        -12.904674530029297\n      ],\n      [\n        \"▁Zoom\",\n        -12.904745101928711\n      ],\n      [\n        \"essor\",\n        -12.904763221740723\n      ],\n      [\n        \"weighed\",\n        -12.904793739318848\n      ],\n      [\n        \"▁dispus\",\n        -12.904987335205078\n      ],\n      [\n        \"▁redemption\",\n        -12.90502643585205\n      ],\n      [\n        \"▁plaster\",\n        -12.905071258544922\n      ],\n      [\n        \"▁Quilt\",\n        -12.90507698059082\n      ],\n      [\n        \"▁teritoriul\",\n        -12.905088424682617\n      ],\n      [\n        \"ndern\",\n        -12.905097961425781\n      ],\n      [\n        \"▁expired\",\n        -12.905105590820312\n      ],\n      [\n        \"▁Tribunal\",\n        -12.905122756958008\n      ],\n      [\n        \"occupation\",\n        -12.9052152633667\n      ],\n      [\n        \"▁woodland\",\n        -12.905248641967773\n      ],\n      [\n        \"vieux\",\n        -12.905254364013672\n      ],\n      [\n        \"▁Midland\",\n        -12.905465126037598\n      ],\n      [\n        \"gât\",\n        -12.90571117401123\n      ],\n      [\n        \"électricité\",\n        -12.905800819396973\n      ],\n      [\n        \"▁vanzare\",\n        -12.905811309814453\n      ],\n      [\n        \"biologi\",\n        -12.905961036682129\n      ],\n      [\n        \"▁vive\",\n        -12.906060218811035\n      ],\n      [\n        \"▁Alarm\",\n        -12.906097412109375\n      ],\n      [\n        \"▁experiență\",\n        -12.9061279296875\n      ],\n      [\n        \"▁Loch\",\n        -12.906133651733398\n      ],\n      [\n        \"▁Pedro\",\n        -12.906194686889648\n      ],\n      [\n        \"▁detergent\",\n        -12.906217575073242\n      ],\n      [\n        \"language\",\n        -12.906554222106934\n      ],\n      [\n        \"▁sedan\",\n        -12.906655311584473\n      ],\n      [\n        \"▁Brady\",\n        -12.906736373901367\n      ],\n      [\n        \"▁compus\",\n        -12.906976699829102\n      ],\n      [\n        \"▁landfill\",\n        -12.906982421875\n      ],\n      [\n        \"giu\",\n        -12.907039642333984\n      ],\n      [\n        \"beziehung\",\n        -12.9070405960083\n      ],\n      [\n        \"▁picior\",\n        -12.907184600830078\n      ],\n      [\n        \"ALI\",\n        -12.907235145568848\n      ],\n      [\n        \"▁Commander\",\n        -12.907256126403809\n      ],\n      [\n        \"EPS\",\n        -12.907303810119629\n      ],\n      [\n        \"▁Textil\",\n        -12.907320022583008\n      ],\n      [\n        \"▁industria\",\n        -12.907339096069336\n      ],\n      [\n        \"lox\",\n        -12.907365798950195\n      ],\n      [\n        \"▁eclectic\",\n        -12.907453536987305\n      ],\n      [\n        \"▁gracious\",\n        -12.907477378845215\n      ],\n      [\n        \"Uniunea\",\n        -12.907525062561035\n      ],\n      [\n        \"bps\",\n        -12.90754222869873\n      ],\n      [\n        \"▁entertained\",\n        -12.907634735107422\n      ],\n      [\n        \"depinde\",\n        -12.907767295837402\n      ],\n      [\n        \"▁daylight\",\n        -12.907893180847168\n      ],\n      [\n        \"▁résistance\",\n        -12.907995223999023\n      ],\n      [\n        \"ARN\",\n        -12.908194541931152\n      ],\n      [\n        \"▁unavailable\",\n        -12.908201217651367\n      ],\n      [\n        \"Curtea\",\n        -12.908390045166016\n      ],\n      [\n        \"▁pores\",\n        -12.908502578735352\n      ],\n      [\n        \"▁Tonight\",\n        -12.908649444580078\n      ],\n      [\n        \"▁datori\",\n        -12.90869426727295\n      ],\n      [\n        \"▁gezielt\",\n        -12.908703804016113\n      ],\n      [\n        \"▁rupture\",\n        -12.90875244140625\n      ],\n      [\n        \"▁disput\",\n        -12.908848762512207\n      ],\n      [\n        \"▁sonstige\",\n        -12.908895492553711\n      ],\n      [\n        \"▁Ordnung\",\n        -12.90910816192627\n      ],\n      [\n        \"▁beschrieben\",\n        -12.909114837646484\n      ],\n      [\n        \"▁Rainbow\",\n        -12.90911865234375\n      ],\n      [\n        \"▁Werkzeug\",\n        -12.909136772155762\n      ],\n      [\n        \"GIN\",\n        -12.909354209899902\n      ],\n      [\n        \"facilitating\",\n        -12.909490585327148\n      ],\n      [\n        \"hunt\",\n        -12.90955638885498\n      ],\n      [\n        \"▁Serving\",\n        -12.909673690795898\n      ],\n      [\n        \"Writ\",\n        -12.909692764282227\n      ],\n      [\n        \"requisite\",\n        -12.909798622131348\n      ],\n      [\n        \"▁Kerry\",\n        -12.90989875793457\n      ],\n      [\n        \"▁riesig\",\n        -12.909957885742188\n      ],\n      [\n        \"▁Healing\",\n        -12.91030502319336\n      ],\n      [\n        \"▁1954\",\n        -12.910365104675293\n      ],\n      [\n        \"▁mousse\",\n        -12.910428047180176\n      ],\n      [\n        \"▁Positive\",\n        -12.910764694213867\n      ],\n      [\n        \"embodie\",\n        -12.910772323608398\n      ],\n      [\n        \"▁penetrate\",\n        -12.910774230957031\n      ],\n      [\n        \"endorsed\",\n        -12.910882949829102\n      ],\n      [\n        \"▁situatia\",\n        -12.910927772521973\n      ],\n      [\n        \"▁Unity\",\n        -12.911083221435547\n      ],\n      [\n        \"142\",\n        -12.911102294921875\n      ],\n      [\n        \"▁farmhouse\",\n        -12.911138534545898\n      ],\n      [\n        \"▁Handbook\",\n        -12.911368370056152\n      ],\n      [\n        \"▁symbolic\",\n        -12.911378860473633\n      ],\n      [\n        \"pristine\",\n        -12.911439895629883\n      ],\n      [\n        \"moitié\",\n        -12.911595344543457\n      ],\n      [\n        \"▁Sessions\",\n        -12.912017822265625\n      ],\n      [\n        \"technisch\",\n        -12.912116050720215\n      ],\n      [\n        \"▁lesquel\",\n        -12.912148475646973\n      ],\n      [\n        \"▁electronically\",\n        -12.912208557128906\n      ],\n      [\n        \"▁modificat\",\n        -12.912240982055664\n      ],\n      [\n        \"▁adjoin\",\n        -12.912242889404297\n      ],\n      [\n        \"actualité\",\n        -12.912256240844727\n      ],\n      [\n        \"vati\",\n        -12.91229248046875\n      ],\n      [\n        \"VENT\",\n        -12.912299156188965\n      ],\n      [\n        \"▁salsa\",\n        -12.912333488464355\n      ],\n      [\n        \"acupunctur\",\n        -12.912424087524414\n      ],\n      [\n        \"▁Opportunity\",\n        -12.912424087524414\n      ],\n      [\n        \"▁Inspection\",\n        -12.912425994873047\n      ],\n      [\n        \"▁vereinbart\",\n        -12.912425994873047\n      ],\n      [\n        \"▁Residents\",\n        -12.912426948547363\n      ],\n      [\n        \"▁perennial\",\n        -12.91242790222168\n      ],\n      [\n        \"CHAN\",\n        -12.912555694580078\n      ],\n      [\n        \"Search\",\n        -12.912572860717773\n      ],\n      [\n        \"UTE\",\n        -12.912696838378906\n      ],\n      [\n        \"▁Lens\",\n        -12.912703514099121\n      ],\n      [\n        \"▁Banner\",\n        -12.91281509399414\n      ],\n      [\n        \"aménagement\",\n        -12.912839889526367\n      ],\n      [\n        \"▁Decision\",\n        -12.91286849975586\n      ],\n      [\n        \"▁ferr\",\n        -12.912869453430176\n      ],\n      [\n        \"▁Transformation\",\n        -12.912878036499023\n      ],\n      [\n        \"▁Stamm\",\n        -12.912955284118652\n      ],\n      [\n        \"▁Galerie\",\n        -12.913003921508789\n      ],\n      [\n        \"onny\",\n        -12.913126945495605\n      ],\n      [\n        \"▁caption\",\n        -12.913195610046387\n      ],\n      [\n        \"▁viitorul\",\n        -12.91323471069336\n      ],\n      [\n        \"▁professionelle\",\n        -12.913281440734863\n      ],\n      [\n        \"drepturile\",\n        -12.913294792175293\n      ],\n      [\n        \"ylon\",\n        -12.913345336914062\n      ],\n      [\n        \"Société\",\n        -12.913387298583984\n      ],\n      [\n        \"AIS\",\n        -12.913456916809082\n      ],\n      [\n        \"March\",\n        -12.91350269317627\n      ],\n      [\n        \"▁Rav\",\n        -12.91357707977295\n      ],\n      [\n        \"▁1946\",\n        -12.913691520690918\n      ],\n      [\n        \"accompagnement\",\n        -12.913713455200195\n      ],\n      [\n        \"Liviu\",\n        -12.913716316223145\n      ],\n      [\n        \"▁Appeal\",\n        -12.913826942443848\n      ],\n      [\n        \"▁sentir\",\n        -12.913952827453613\n      ],\n      [\n        \"▁Indigenous\",\n        -12.914087295532227\n      ],\n      [\n        \"▁wizard\",\n        -12.914087295532227\n      ],\n      [\n        \"▁collateral\",\n        -12.914127349853516\n      ],\n      [\n        \"▁Proof\",\n        -12.914324760437012\n      ],\n      [\n        \"▁prze\",\n        -12.914398193359375\n      ],\n      [\n        \"▁obținut\",\n        -12.91450309753418\n      ],\n      [\n        \"COP\",\n        -12.914629936218262\n      ],\n      [\n        \"▁obiect\",\n        -12.914681434631348\n      ],\n      [\n        \"▁isolate\",\n        -12.914685249328613\n      ],\n      [\n        \"▁nieder\",\n        -12.914793014526367\n      ],\n      [\n        \"TECH\",\n        -12.914953231811523\n      ],\n      [\n        \"▁Sharing\",\n        -12.914998054504395\n      ],\n      [\n        \"Ideally\",\n        -12.915008544921875\n      ],\n      [\n        \"▁naked\",\n        -12.915059089660645\n      ],\n      [\n        \"horaire\",\n        -12.915130615234375\n      ],\n      [\n        \"▁prelucrare\",\n        -12.915180206298828\n      ],\n      [\n        \"▁forcément\",\n        -12.915349006652832\n      ],\n      [\n        \"▁ESPN\",\n        -12.915403366088867\n      ],\n      [\n        \"▁southwest\",\n        -12.9154634475708\n      ],\n      [\n        \"▁Timber\",\n        -12.915682792663574\n      ],\n      [\n        \"kleidung\",\n        -12.915748596191406\n      ],\n      [\n        \"MJ\",\n        -12.915854454040527\n      ],\n      [\n        \"Ped\",\n        -12.915889739990234\n      ],\n      [\n        \"▁lymph\",\n        -12.916181564331055\n      ],\n      [\n        \"wärme\",\n        -12.916399002075195\n      ],\n      [\n        \"▁Olivia\",\n        -12.916610717773438\n      ],\n      [\n        \"Ziua\",\n        -12.916705131530762\n      ],\n      [\n        \"reihe\",\n        -12.916747093200684\n      ],\n      [\n        \"▁selfish\",\n        -12.916752815246582\n      ],\n      [\n        \"▁geography\",\n        -12.916814804077148\n      ],\n      [\n        \"▁etaj\",\n        -12.916924476623535\n      ],\n      [\n        \"▁acquis\",\n        -12.91698932647705\n      ],\n      [\n        \"▁rejoin\",\n        -12.91701602935791\n      ],\n      [\n        \"7.1\",\n        -12.917097091674805\n      ],\n      [\n        \"▁paix\",\n        -12.91713809967041\n      ],\n      [\n        \"tirer\",\n        -12.917284965515137\n      ],\n      [\n        \"▁clase\",\n        -12.91745662689209\n      ],\n      [\n        \"▁blink\",\n        -12.917572021484375\n      ],\n      [\n        \"▁Interface\",\n        -12.917611122131348\n      ],\n      [\n        \"nado\",\n        -12.917655944824219\n      ],\n      [\n        \"RIT\",\n        -12.91777515411377\n      ],\n      [\n        \"ESC\",\n        -12.918120384216309\n      ],\n      [\n        \"▁carving\",\n        -12.918190002441406\n      ],\n      [\n        \"▁articolul\",\n        -12.918194770812988\n      ],\n      [\n        \"▁wreath\",\n        -12.918258666992188\n      ],\n      [\n        \"▁propaganda\",\n        -12.918266296386719\n      ],\n      [\n        \"▁Pair\",\n        -12.918267250061035\n      ],\n      [\n        \"▁pamant\",\n        -12.91831111907959\n      ],\n      [\n        \"▁venituri\",\n        -12.918357849121094\n      ],\n      [\n        \"rtz\",\n        -12.91835880279541\n      ],\n      [\n        \"uddle\",\n        -12.918529510498047\n      ],\n      [\n        \"uille\",\n        -12.918543815612793\n      ],\n      [\n        \"▁embed\",\n        -12.918654441833496\n      ],\n      [\n        \"0.05\",\n        -12.918655395507812\n      ],\n      [\n        \"▁Brighton\",\n        -12.918718338012695\n      ],\n      [\n        \"estens\",\n        -12.918742179870605\n      ],\n      [\n        \"▁occupational\",\n        -12.918862342834473\n      ],\n      [\n        \"ем\",\n        -12.918890953063965\n      ],\n      [\n        \"wünsche\",\n        -12.919081687927246\n      ],\n      [\n        \"▁Poetry\",\n        -12.91909408569336\n      ],\n      [\n        \"▁visualize\",\n        -12.919109344482422\n      ],\n      [\n        \"Across\",\n        -12.919121742248535\n      ],\n      [\n        \"▁essentielle\",\n        -12.919123649597168\n      ],\n      [\n        \"beratung\",\n        -12.919143676757812\n      ],\n      [\n        \"▁Guidelines\",\n        -12.91919231414795\n      ],\n      [\n        \"▁Fehl\",\n        -12.919198036193848\n      ],\n      [\n        \"▁liberty\",\n        -12.91921329498291\n      ],\n      [\n        \"▁Investigation\",\n        -12.91922378540039\n      ],\n      [\n        \"▁sunrise\",\n        -12.919266700744629\n      ],\n      [\n        \"▁12:00\",\n        -12.919541358947754\n      ],\n      [\n        \"venind\",\n        -12.919583320617676\n      ],\n      [\n        \"▁lotion\",\n        -12.919655799865723\n      ],\n      [\n        \"conscious\",\n        -12.91968822479248\n      ],\n      [\n        \"logists\",\n        -12.91973876953125\n      ],\n      [\n        \"▁judecător\",\n        -12.919893264770508\n      ],\n      [\n        \"▁Ecuador\",\n        -12.919928550720215\n      ],\n      [\n        \"▁ambulance\",\n        -12.91994857788086\n      ],\n      [\n        \"▁Already\",\n        -12.920026779174805\n      ],\n      [\n        \"▁eröffnet\",\n        -12.920090675354004\n      ],\n      [\n        \"▁naval\",\n        -12.92010498046875\n      ],\n      [\n        \"▁imposibil\",\n        -12.92011547088623\n      ],\n      [\n        \"▁Merry\",\n        -12.92011833190918\n      ],\n      [\n        \"▁Duncan\",\n        -12.920272827148438\n      ],\n      [\n        \"▁léger\",\n        -12.9203519821167\n      ],\n      [\n        \"▁delta\",\n        -12.920391082763672\n      ],\n      [\n        \"▁Machinery\",\n        -12.920578002929688\n      ],\n      [\n        \"▁craftsmanship\",\n        -12.920766830444336\n      ],\n      [\n        \"▁angezeigt\",\n        -12.9207763671875\n      ],\n      [\n        \"▁formidable\",\n        -12.9207763671875\n      ],\n      [\n        \"▁Startup\",\n        -12.920878410339355\n      ],\n      [\n        \"venus\",\n        -12.920969009399414\n      ],\n      [\n        \"▁tannin\",\n        -12.921019554138184\n      ],\n      [\n        \"collaborating\",\n        -12.921128273010254\n      ],\n      [\n        \"▁abrupt\",\n        -12.921152114868164\n      ],\n      [\n        \"emergence\",\n        -12.921171188354492\n      ],\n      [\n        \"Dienstleistungen\",\n        -12.921197891235352\n      ],\n      [\n        \"▁liefert\",\n        -12.921217918395996\n      ],\n      [\n        \"engagement\",\n        -12.921222686767578\n      ],\n      [\n        \"▁maximise\",\n        -12.921304702758789\n      ],\n      [\n        \"modeled\",\n        -12.9214448928833\n      ],\n      [\n        \"▁crane\",\n        -12.92148208618164\n      ],\n      [\n        \"▁effortless\",\n        -12.921540260314941\n      ],\n      [\n        \"▁Buffet\",\n        -12.92160701751709\n      ],\n      [\n        \"8000\",\n        -12.921648979187012\n      ],\n      [\n        \"▁Überblick\",\n        -12.921687126159668\n      ],\n      [\n        \"micro\",\n        -12.921981811523438\n      ],\n      [\n        \"▁vergleichen\",\n        -12.92204475402832\n      ],\n      [\n        \"143\",\n        -12.922080993652344\n      ],\n      [\n        \"5.6\",\n        -12.922094345092773\n      ],\n      [\n        \"▁odata\",\n        -12.922131538391113\n      ],\n      [\n        \"▁interviu\",\n        -12.922162055969238\n      ],\n      [\n        \"▁poliţi\",\n        -12.922375679016113\n      ],\n      [\n        \"plated\",\n        -12.922383308410645\n      ],\n      [\n        \"Roman\",\n        -12.922406196594238\n      ],\n      [\n        \"▁satisfactory\",\n        -12.922453880310059\n      ],\n      [\n        \"▁unanimous\",\n        -12.922459602355957\n      ],\n      [\n        \"▁întâln\",\n        -12.922464370727539\n      ],\n      [\n        \"nonsense\",\n        -12.922558784484863\n      ],\n      [\n        \"▁HOW\",\n        -12.922616004943848\n      ],\n      [\n        \"prezinta\",\n        -12.922639846801758\n      ],\n      [\n        \"▁măsura\",\n        -12.9226655960083\n      ],\n      [\n        \"▁Fuji\",\n        -12.92275619506836\n      ],\n      [\n        \"▁Meaning\",\n        -12.92278003692627\n      ],\n      [\n        \"aspiring\",\n        -12.922850608825684\n      ],\n      [\n        \"▁Suceava\",\n        -12.922863006591797\n      ],\n      [\n        \"arba\",\n        -12.922983169555664\n      ],\n      [\n        \"pressive\",\n        -12.922988891601562\n      ],\n      [\n        \"▁creek\",\n        -12.92301082611084\n      ],\n      [\n        \"trakt\",\n        -12.923023223876953\n      ],\n      [\n        \"▁fluffy\",\n        -12.923303604125977\n      ],\n      [\n        \"▁bateau\",\n        -12.923371315002441\n      ],\n      [\n        \"ме\",\n        -12.923545837402344\n      ],\n      [\n        \"UNG\",\n        -12.923609733581543\n      ],\n      [\n        \"motifs\",\n        -12.923907279968262\n      ],\n      [\n        \"Type\",\n        -12.923958778381348\n      ],\n      [\n        \"perçu\",\n        -12.924132347106934\n      ],\n      [\n        \"singurul\",\n        -12.924139022827148\n      ],\n      [\n        \"▁(2011)\",\n        -12.92418384552002\n      ],\n      [\n        \"▁hemp\",\n        -12.924263954162598\n      ],\n      [\n        \"betroffenen\",\n        -12.92431640625\n      ],\n      [\n        \"▁sermon\",\n        -12.924369812011719\n      ],\n      [\n        \"AID\",\n        -12.924545288085938\n      ],\n      [\n        \"3.7\",\n        -12.924627304077148\n      ],\n      [\n        \"▁heiß\",\n        -12.92463207244873\n      ],\n      [\n        \"▁bolnav\",\n        -12.924982070922852\n      ],\n      [\n        \"First\",\n        -12.924995422363281\n      ],\n      [\n        \"▁interrupt\",\n        -12.925040245056152\n      ],\n      [\n        \"phag\",\n        -12.925106048583984\n      ],\n      [\n        \"235\",\n        -12.925201416015625\n      ],\n      [\n        \"▁discoveries\",\n        -12.925262451171875\n      ],\n      [\n        \"▁Wellington\",\n        -12.925263404846191\n      ],\n      [\n        \"▁wechseln\",\n        -12.925298690795898\n      ],\n      [\n        \"▁strategically\",\n        -12.925379753112793\n      ],\n      [\n        \"▁iphone\",\n        -12.925440788269043\n      ],\n      [\n        \"geteilt\",\n        -12.925646781921387\n      ],\n      [\n        \"generative\",\n        -12.925748825073242\n      ],\n      [\n        \"▁Monroe\",\n        -12.925806045532227\n      ],\n      [\n        \"▁Execut\",\n        -12.925863265991211\n      ],\n      [\n        \"▁knitting\",\n        -12.925931930541992\n      ],\n      [\n        \"▁Couple\",\n        -12.925939559936523\n      ],\n      [\n        \"▁Shade\",\n        -12.926020622253418\n      ],\n      [\n        \"▁Taj\",\n        -12.926060676574707\n      ],\n      [\n        \"950\",\n        -12.926077842712402\n      ],\n      [\n        \"boiled\",\n        -12.92609977722168\n      ],\n      [\n        \"▁mixes\",\n        -12.926130294799805\n      ],\n      [\n        \"betroffene\",\n        -12.926156044006348\n      ],\n      [\n        \"▁continuation\",\n        -12.926169395446777\n      ],\n      [\n        \"▁begleitet\",\n        -12.926226615905762\n      ],\n      [\n        \"▁numerical\",\n        -12.926281929016113\n      ],\n      [\n        \"▁(2013)\",\n        -12.92630386352539\n      ],\n      [\n        \"▁nourish\",\n        -12.926399230957031\n      ],\n      [\n        \"oricar\",\n        -12.926485061645508\n      ],\n      [\n        \"focus\",\n        -12.926486015319824\n      ],\n      [\n        \"▁Crazy\",\n        -12.926651000976562\n      ],\n      [\n        \"▁ascend\",\n        -12.926671028137207\n      ],\n      [\n        \"▁vinde\",\n        -12.926855087280273\n      ],\n      [\n        \"roar\",\n        -12.926874160766602\n      ],\n      [\n        \"Vac\",\n        -12.926929473876953\n      ],\n      [\n        \"▁Zuschauer\",\n        -12.927068710327148\n      ],\n      [\n        \"izeze\",\n        -12.927179336547852\n      ],\n      [\n        \"▁Mindest\",\n        -12.92721939086914\n      ],\n      [\n        \"lingual\",\n        -12.927229881286621\n      ],\n      [\n        \"▁violet\",\n        -12.927264213562012\n      ],\n      [\n        \"▁Opfer\",\n        -12.927299499511719\n      ],\n      [\n        \"ARS\",\n        -12.927431106567383\n      ],\n      [\n        \"4.7\",\n        -12.92744255065918\n      ],\n      [\n        \"millennial\",\n        -12.927492141723633\n      ],\n      [\n        \"▁striv\",\n        -12.927639961242676\n      ],\n      [\n        \"▁bishop\",\n        -12.927680015563965\n      ],\n      [\n        \"▁Durham\",\n        -12.927708625793457\n      ],\n      [\n        \"opathic\",\n        -12.927817344665527\n      ],\n      [\n        \"Where\",\n        -12.927999496459961\n      ],\n      [\n        \"▁Rider\",\n        -12.928030014038086\n      ],\n      [\n        \"▁Reid\",\n        -12.928030967712402\n      ],\n      [\n        \"stumbled\",\n        -12.928156852722168\n      ],\n      [\n        \"deep\",\n        -12.92827320098877\n      ],\n      [\n        \"▁11:00\",\n        -12.928340911865234\n      ],\n      [\n        \"▁Essex\",\n        -12.928380966186523\n      ],\n      [\n        \"▁Analyst\",\n        -12.928397178649902\n      ],\n      [\n        \"feel\",\n        -12.928546905517578\n      ],\n      [\n        \"▁rave\",\n        -12.928601264953613\n      ],\n      [\n        \"▁Eddie\",\n        -12.928631782531738\n      ],\n      [\n        \"▁communiqué\",\n        -12.928756713867188\n      ],\n      [\n        \"[/\",\n        -12.928791046142578\n      ],\n      [\n        \"▁Tho\",\n        -12.929011344909668\n      ],\n      [\n        \"ffentlichkeit\",\n        -12.929019927978516\n      ],\n      [\n        \"instrument\",\n        -12.929126739501953\n      ],\n      [\n        \"▁metropolitan\",\n        -12.929179191589355\n      ],\n      [\n        \"▁experienţ\",\n        -12.929181098937988\n      ],\n      [\n        \"East\",\n        -12.929198265075684\n      ],\n      [\n        \"Compared\",\n        -12.929434776306152\n      ],\n      [\n        \"worn\",\n        -12.929484367370605\n      ],\n      [\n        \"berufliche\",\n        -12.92966365814209\n      ],\n      [\n        \"▁Umstände\",\n        -12.929710388183594\n      ],\n      [\n        \"individuellen\",\n        -12.929901123046875\n      ],\n      [\n        \"siehe\",\n        -12.929912567138672\n      ],\n      [\n        \"▁sfarsit\",\n        -12.929969787597656\n      ],\n      [\n        \"▁Strength\",\n        -12.929999351501465\n      ],\n      [\n        \"▁prejudice\",\n        -12.930024147033691\n      ],\n      [\n        \"▁shutdown\",\n        -12.930159568786621\n      ],\n      [\n        \"chatting\",\n        -12.93022346496582\n      ],\n      [\n        \"▁Gerne\",\n        -12.930227279663086\n      ],\n      [\n        \"▁Yum\",\n        -12.930305480957031\n      ],\n      [\n        \"▁coastline\",\n        -12.930387496948242\n      ],\n      [\n        \"▁headboard\",\n        -12.930623054504395\n      ],\n      [\n        \"▁politische\",\n        -12.930768966674805\n      ],\n      [\n        \"Sub\",\n        -12.930838584899902\n      ],\n      [\n        \"▁Henderson\",\n        -12.930870056152344\n      ],\n      [\n        \"▁astonishing\",\n        -12.930870056152344\n      ],\n      [\n        \"▁Dresden\",\n        -12.930871963500977\n      ],\n      [\n        \"▁strawberry\",\n        -12.93088436126709\n      ],\n      [\n        \"prenez\",\n        -12.930889129638672\n      ],\n      [\n        \"▁Monaco\",\n        -12.930912971496582\n      ],\n      [\n        \"▁empowered\",\n        -12.930953025817871\n      ],\n      [\n        \"fäl\",\n        -12.93109130859375\n      ],\n      [\n        \"▁creier\",\n        -12.931120872497559\n      ],\n      [\n        \"▁Equ\",\n        -12.931300163269043\n      ],\n      [\n        \"▁Selling\",\n        -12.931379318237305\n      ],\n      [\n        \"▁$35\",\n        -12.931483268737793\n      ],\n      [\n        \"konto\",\n        -12.931503295898438\n      ],\n      [\n        \"▁Procedure\",\n        -12.931715965270996\n      ],\n      [\n        \"▁reduziert\",\n        -12.931715965270996\n      ],\n      [\n        \"▁royalty\",\n        -12.931740760803223\n      ],\n      [\n        \"wyn\",\n        -12.931756019592285\n      ],\n      [\n        \"▁Unfall\",\n        -12.932141304016113\n      ],\n      [\n        \"NAT\",\n        -12.932161331176758\n      ],\n      [\n        \"▁grafic\",\n        -12.93251895904541\n      ],\n      [\n        \"▁Collective\",\n        -12.932563781738281\n      ],\n      [\n        \"▁Computing\",\n        -12.932564735412598\n      ],\n      [\n        \"▁Established\",\n        -12.932594299316406\n      ],\n      [\n        \"▁zest\",\n        -12.932598114013672\n      ],\n      [\n        \"venez\",\n        -12.932611465454102\n      ],\n      [\n        \"follow\",\n        -12.9326171875\n      ],\n      [\n        \"▁Motivation\",\n        -12.932640075683594\n      ],\n      [\n        \"▁dictator\",\n        -12.932755470275879\n      ],\n      [\n        \"whichever\",\n        -12.93281078338623\n      ],\n      [\n        \"▁întâmpl\",\n        -12.93293285369873\n      ],\n      [\n        \"Flüchtling\",\n        -12.932987213134766\n      ],\n      [\n        \"EMI\",\n        -12.933015823364258\n      ],\n      [\n        \"404\",\n        -12.933019638061523\n      ],\n      [\n        \"ICK\",\n        -12.93302059173584\n      ],\n      [\n        \"emplacement\",\n        -12.933191299438477\n      ],\n      [\n        \"complete\",\n        -12.933349609375\n      ],\n      [\n        \"advising\",\n        -12.933412551879883\n      ],\n      [\n        \"▁Administrative\",\n        -12.933481216430664\n      ],\n      [\n        \"▁deviation\",\n        -12.933496475219727\n      ],\n      [\n        \"▁experienț\",\n        -12.933500289916992\n      ],\n      [\n        \"lethor\",\n        -12.933996200561523\n      ],\n      [\n        \"▁compress\",\n        -12.934081077575684\n      ],\n      [\n        \"rival\",\n        -12.934173583984375\n      ],\n      [\n        \"reprendre\",\n        -12.934186935424805\n      ],\n      [\n        \"ugi\",\n        -12.934266090393066\n      ],\n      [\n        \"▁Invitation\",\n        -12.934267044067383\n      ],\n      [\n        \"▁retina\",\n        -12.934332847595215\n      ],\n      [\n        \"▁farther\",\n        -12.934335708618164\n      ],\n      [\n        \"▁fenêtre\",\n        -12.934799194335938\n      ],\n      [\n        \"6-7\",\n        -12.934815406799316\n      ],\n      [\n        \"zhou\",\n        -12.934834480285645\n      ],\n      [\n        \"▁Piano\",\n        -12.934840202331543\n      ],\n      [\n        \"▁Congrats\",\n        -12.935114860534668\n      ],\n      [\n        \"▁Configur\",\n        -12.935131072998047\n      ],\n      [\n        \"▁superficial\",\n        -12.935179710388184\n      ],\n      [\n        \"▁melting\",\n        -12.935315132141113\n      ],\n      [\n        \"▁raspunde\",\n        -12.935626983642578\n      ],\n      [\n        \"▁drip\",\n        -12.93564224243164\n      ],\n      [\n        \"östlich\",\n        -12.9358491897583\n      ],\n      [\n        \"189\",\n        -12.935925483703613\n      ],\n      [\n        \"▁Ludwig\",\n        -12.935959815979004\n      ],\n      [\n        \"▁keto\",\n        -12.935985565185547\n      ],\n      [\n        \"▁Bogdan\",\n        -12.936013221740723\n      ],\n      [\n        \"▁contracted\",\n        -12.936029434204102\n      ],\n      [\n        \"▁revive\",\n        -12.936100006103516\n      ],\n      [\n        \"▁cristal\",\n        -12.936232566833496\n      ],\n      [\n        \"▁mailbox\",\n        -12.936257362365723\n      ],\n      [\n        \"președintele\",\n        -12.936559677124023\n      ],\n      [\n        \"▁seekers\",\n        -12.936627388000488\n      ],\n      [\n        \"func\",\n        -12.936904907226562\n      ],\n      [\n        \"▁Markus\",\n        -12.93691349029541\n      ],\n      [\n        \"Unter\",\n        -12.936923027038574\n      ],\n      [\n        \"▁übertragen\",\n        -12.937003135681152\n      ],\n      [\n        \"▁adaptive\",\n        -12.937024116516113\n      ],\n      [\n        \"caster\",\n        -12.937051773071289\n      ],\n      [\n        \"▁geek\",\n        -12.937164306640625\n      ],\n      [\n        \"▁réservation\",\n        -12.937236785888672\n      ],\n      [\n        \"▁irritation\",\n        -12.937240600585938\n      ],\n      [\n        \"▁HDMI\",\n        -12.937346458435059\n      ],\n      [\n        \"Seeing\",\n        -12.937485694885254\n      ],\n      [\n        \"▁genul\",\n        -12.937569618225098\n      ],\n      [\n        \"▁catastrophe\",\n        -12.937662124633789\n      ],\n      [\n        \"▁Tweet\",\n        -12.937665939331055\n      ],\n      [\n        \"TZ\",\n        -12.937729835510254\n      ],\n      [\n        \"▁credible\",\n        -12.937946319580078\n      ],\n      [\n        \"▁cobor\",\n        -12.938064575195312\n      ],\n      [\n        \"▁realizeaz\",\n        -12.938159942626953\n      ],\n      [\n        \"journal\",\n        -12.938274383544922\n      ],\n      [\n        \"▁shaking\",\n        -12.938532829284668\n      ],\n      [\n        \"3-6\",\n        -12.938572883605957\n      ],\n      [\n        \"▁beneficiaz\",\n        -12.938605308532715\n      ],\n      [\n        \"▁Frankreich\",\n        -12.938633918762207\n      ],\n      [\n        \"committing\",\n        -12.9386568069458\n      ],\n      [\n        \"AMS\",\n        -12.938835144042969\n      ],\n      [\n        \"▁Feli\",\n        -12.939007759094238\n      ],\n      [\n        \"▁Producer\",\n        -12.939023971557617\n      ],\n      [\n        \"▁übrig\",\n        -12.93940544128418\n      ],\n      [\n        \"gemeinde\",\n        -12.939593315124512\n      ],\n      [\n        \"should\",\n        -12.939799308776855\n      ],\n      [\n        \"▁neurons\",\n        -12.939799308776855\n      ],\n      [\n        \"▁Agenda\",\n        -12.939833641052246\n      ],\n      [\n        \"▁hashtag\",\n        -12.939896583557129\n      ],\n      [\n        \"▁confortabil\",\n        -12.939897537231445\n      ],\n      [\n        \"520\",\n        -12.940008163452148\n      ],\n      [\n        \"bonded\",\n        -12.940033912658691\n      ],\n      [\n        \"▁următoare\",\n        -12.940191268920898\n      ],\n      [\n        \"▁volatile\",\n        -12.940223693847656\n      ],\n      [\n        \"infamous\",\n        -12.940225601196289\n      ],\n      [\n        \"seară\",\n        -12.940229415893555\n      ],\n      [\n        \"▁Sorge\",\n        -12.940346717834473\n      ],\n      [\n        \"▁Beiträge\",\n        -12.940420150756836\n      ],\n      [\n        \"▁îndeplin\",\n        -12.940449714660645\n      ],\n      [\n        \"gespräch\",\n        -12.940649032592773\n      ],\n      [\n        \"▁joueur\",\n        -12.940701484680176\n      ],\n      [\n        \"▁outsourcing\",\n        -12.940701484680176\n      ],\n      [\n        \"▁Guvernul\",\n        -12.940814018249512\n      ],\n      [\n        \"6-2\",\n        -12.940818786621094\n      ],\n      [\n        \"▁prioritize\",\n        -12.941068649291992\n      ],\n      [\n        \"▁duminică\",\n        -12.941076278686523\n      ],\n      [\n        \"▁resignation\",\n        -12.941076278686523\n      ],\n      [\n        \"▁Converter\",\n        -12.941079139709473\n      ],\n      [\n        \"hereby\",\n        -12.941155433654785\n      ],\n      [\n        \"▁stresses\",\n        -12.941299438476562\n      ],\n      [\n        \"▁brun\",\n        -12.941415786743164\n      ],\n      [\n        \"▁elev\",\n        -12.941423416137695\n      ],\n      [\n        \"▁Skip\",\n        -12.941479682922363\n      ],\n      [\n        \"540\",\n        -12.941499710083008\n      ],\n      [\n        \"TURE\",\n        -12.941603660583496\n      ],\n      [\n        \"▁Lynch\",\n        -12.941635131835938\n      ],\n      [\n        \"▁preveni\",\n        -12.941643714904785\n      ],\n      [\n        \"compatible\",\n        -12.941692352294922\n      ],\n      [\n        \"surveyed\",\n        -12.941702842712402\n      ],\n      [\n        \"▁Ausnahme\",\n        -12.941713333129883\n      ],\n      [\n        \"▁medicul\",\n        -12.941812515258789\n      ],\n      [\n        \"▁subtil\",\n        -12.941865921020508\n      ],\n      [\n        \"▁Quali\",\n        -12.941890716552734\n      ],\n      [\n        \"▁techno\",\n        -12.941900253295898\n      ],\n      [\n        \"presently\",\n        -12.94193172454834\n      ],\n      [\n        \"▁Müller\",\n        -12.941934585571289\n      ],\n      [\n        \"DIRECT\",\n        -12.941937446594238\n      ],\n      [\n        \"schuld\",\n        -12.941944122314453\n      ],\n      [\n        \"▁Bloomberg\",\n        -12.941994667053223\n      ],\n      [\n        \"feuer\",\n        -12.942181587219238\n      ],\n      [\n        \"▁Pharmacy\",\n        -12.942270278930664\n      ],\n      [\n        \"▁Schnitt\",\n        -12.942301750183105\n      ],\n      [\n        \"186\",\n        -12.942333221435547\n      ],\n      [\n        \"peaks\",\n        -12.942355155944824\n      ],\n      [\n        \"▁Gemeinsam\",\n        -12.94235897064209\n      ],\n      [\n        \"▁récemment\",\n        -12.94235897064209\n      ],\n      [\n        \"▁Pascal\",\n        -12.942490577697754\n      ],\n      [\n        \"filmed\",\n        -12.942523956298828\n      ],\n      [\n        \"RCA\",\n        -12.942548751831055\n      ],\n      [\n        \"▁virtuelle\",\n        -12.942622184753418\n      ],\n      [\n        \"▁dotat\",\n        -12.942630767822266\n      ],\n      [\n        \"logisch\",\n        -12.942717552185059\n      ],\n      [\n        \"▁Luck\",\n        -12.943005561828613\n      ],\n      [\n        \"cosy\",\n        -12.943132400512695\n      ],\n      [\n        \"▁Awareness\",\n        -12.943216323852539\n      ],\n      [\n        \"▁gesetzlich\",\n        -12.943263053894043\n      ],\n      [\n        \"padded\",\n        -12.943306922912598\n      ],\n      [\n        \"▁Lotus\",\n        -12.943395614624023\n      ],\n      [\n        \"urging\",\n        -12.9434175491333\n      ],\n      [\n        \"▁mushroom\",\n        -12.943426132202148\n      ],\n      [\n        \"▁adultes\",\n        -12.943527221679688\n      ],\n      [\n        \"▁Coca\",\n        -12.943571090698242\n      ],\n      [\n        \"▁recev\",\n        -12.943586349487305\n      ],\n      [\n        \"▁mantra\",\n        -12.943610191345215\n      ],\n      [\n        \"▁practise\",\n        -12.943644523620605\n      ],\n      [\n        \"▁acceler\",\n        -12.943663597106934\n      ],\n      [\n        \"bolster\",\n        -12.943756103515625\n      ],\n      [\n        \"▁compressed\",\n        -12.943818092346191\n      ],\n      [\n        \"TIN\",\n        -12.943899154663086\n      ],\n      [\n        \"▁aromatic\",\n        -12.944236755371094\n      ],\n      [\n        \"geleitet\",\n        -12.944408416748047\n      ],\n      [\n        \"▁fibr\",\n        -12.944443702697754\n      ],\n      [\n        \"exécut\",\n        -12.94444751739502\n      ],\n      [\n        \"▁unconscious\",\n        -12.94456958770752\n      ],\n      [\n        \"HAR\",\n        -12.944607734680176\n      ],\n      [\n        \"▁Gregory\",\n        -12.944661140441895\n      ],\n      [\n        \"▁Manila\",\n        -12.944738388061523\n      ],\n      [\n        \"ozitate\",\n        -12.944756507873535\n      ],\n      [\n        \"exemplary\",\n        -12.944803237915039\n      ],\n      [\n        \"éventuel\",\n        -12.944906234741211\n      ],\n      [\n        \"▁Craciun\",\n        -12.944930076599121\n      ],\n      [\n        \"▁tehnologii\",\n        -12.944931030273438\n      ],\n      [\n        \"▁Despre\",\n        -12.945138931274414\n      ],\n      [\n        \"▁1917\",\n        -12.945141792297363\n      ],\n      [\n        \"▁upfront\",\n        -12.945146560668945\n      ],\n      [\n        \"▁Iulia\",\n        -12.945280075073242\n      ],\n      [\n        \"▁erwähnt\",\n        -12.945359230041504\n      ],\n      [\n        \"▁magnesium\",\n        -12.945359230041504\n      ],\n      [\n        \"▁descriptive\",\n        -12.94536304473877\n      ],\n      [\n        \"▁consumul\",\n        -12.945364952087402\n      ],\n      [\n        \"▁10-15\",\n        -12.945423126220703\n      ],\n      [\n        \"▁erfüllen\",\n        -12.945611953735352\n      ],\n      [\n        \"gig\",\n        -12.945657730102539\n      ],\n      [\n        \"430\",\n        -12.945765495300293\n      ],\n      [\n        \"▁Migration\",\n        -12.945789337158203\n      ],\n      [\n        \"bră\",\n        -12.94579029083252\n      ],\n      [\n        \"▁réforme\",\n        -12.945863723754883\n      ],\n      [\n        \"▁york\",\n        -12.94610595703125\n      ],\n      [\n        \"dritten\",\n        -12.946109771728516\n      ],\n      [\n        \"cumva\",\n        -12.946182250976562\n      ],\n      [\n        \"▁Alumni\",\n        -12.946218490600586\n      ],\n      [\n        \"▁Ceramic\",\n        -12.946222305297852\n      ],\n      [\n        \"▁rappelle\",\n        -12.946236610412598\n      ],\n      [\n        \"▁pianist\",\n        -12.946248054504395\n      ],\n      [\n        \"twisted\",\n        -12.946306228637695\n      ],\n      [\n        \"earned\",\n        -12.946432113647461\n      ],\n      [\n        \"▁Hose\",\n        -12.946514129638672\n      ],\n      [\n        \"156\",\n        -12.946610450744629\n      ],\n      [\n        \"▁Salmon\",\n        -12.946687698364258\n      ],\n      [\n        \"Level\",\n        -12.946913719177246\n      ],\n      [\n        \"▁swirl\",\n        -12.947052001953125\n      ],\n      [\n        \"erfahrung\",\n        -12.947061538696289\n      ],\n      [\n        \"▁liabilities\",\n        -12.947078704833984\n      ],\n      [\n        \"praxis\",\n        -12.9470853805542\n      ],\n      [\n        \"IPO\",\n        -12.947089195251465\n      ],\n      [\n        \"▁screaming\",\n        -12.947092056274414\n      ],\n      [\n        \"emphasized\",\n        -12.947200775146484\n      ],\n      [\n        \"DEA\",\n        -12.947260856628418\n      ],\n      [\n        \"▁dermatolog\",\n        -12.947351455688477\n      ],\n      [\n        \"▁pacate\",\n        -12.947498321533203\n      ],\n      [\n        \"▁ansamblu\",\n        -12.947507858276367\n      ],\n      [\n        \"▁beteiligt\",\n        -12.947509765625\n      ],\n      [\n        \"▁Needles\",\n        -12.947574615478516\n      ],\n      [\n        \"▁organisiert\",\n        -12.947607040405273\n      ],\n      [\n        \"Pacific\",\n        -12.947639465332031\n      ],\n      [\n        \"actual\",\n        -12.947823524475098\n      ],\n      [\n        \"prindere\",\n        -12.94801139831543\n      ],\n      [\n        \"▁Indoor\",\n        -12.948348045349121\n      ],\n      [\n        \"▁Gewalt\",\n        -12.948431015014648\n      ],\n      [\n        \"▁rezid\",\n        -12.948507308959961\n      ],\n      [\n        \"censor\",\n        -12.948522567749023\n      ],\n      [\n        \"▁unlawful\",\n        -12.94882869720459\n      ],\n      [\n        \"▁Explain\",\n        -12.948873519897461\n      ],\n      [\n        \"▁Flame\",\n        -12.948897361755371\n      ],\n      [\n        \"▁brachte\",\n        -12.948941230773926\n      ],\n      [\n        \"▁Mustang\",\n        -12.94899845123291\n      ],\n      [\n        \"ectomy\",\n        -12.949044227600098\n      ],\n      [\n        \"▁deliberate\",\n        -12.949064254760742\n      ],\n      [\n        \"▁sparkle\",\n        -12.949225425720215\n      ],\n      [\n        \"▁inchis\",\n        -12.94926929473877\n      ],\n      [\n        \"▁Cristian\",\n        -12.949289321899414\n      ],\n      [\n        \"▁facture\",\n        -12.949291229248047\n      ],\n      [\n        \"▁Grundstück\",\n        -12.949292182922363\n      ],\n      [\n        \"außerhalb\",\n        -12.949300765991211\n      ],\n      [\n        \"coast\",\n        -12.949321746826172\n      ],\n      [\n        \"anilor\",\n        -12.949396133422852\n      ],\n      [\n        \"255\",\n        -12.94952392578125\n      ],\n      [\n        \"nterdisciplinary\",\n        -12.949576377868652\n      ],\n      [\n        \"▁Isabel\",\n        -12.949655532836914\n      ],\n      [\n        \"▁Städte\",\n        -12.949701309204102\n      ],\n      [\n        \"▁cicl\",\n        -12.949837684631348\n      ],\n      [\n        \"▁Zeug\",\n        -12.949905395507812\n      ],\n      [\n        \"▁Muskel\",\n        -12.949951171875\n      ],\n      [\n        \"▁indirectly\",\n        -12.950051307678223\n      ],\n      [\n        \"▁Vorbereitung\",\n        -12.950093269348145\n      ],\n      [\n        \"MMA\",\n        -12.95012378692627\n      ],\n      [\n        \"▁pudding\",\n        -12.950197219848633\n      ],\n      [\n        \"rax\",\n        -12.950389862060547\n      ],\n      [\n        \"▁Stimmung\",\n        -12.95052433013916\n      ],\n      [\n        \"▁hierarchy\",\n        -12.95052433013916\n      ],\n      [\n        \"partie\",\n        -12.950597763061523\n      ],\n      [\n        \"▁elevate\",\n        -12.950685501098633\n      ],\n      [\n        \"▁Persian\",\n        -12.950690269470215\n      ],\n      [\n        \"forensic\",\n        -12.95077896118164\n      ],\n      [\n        \"Become\",\n        -12.950854301452637\n      ],\n      [\n        \"leicht\",\n        -12.9508695602417\n      ],\n      [\n        \"▁staging\",\n        -12.950942039489746\n      ],\n      [\n        \"▁fühlt\",\n        -12.950965881347656\n      ],\n      [\n        \"fenster\",\n        -12.950979232788086\n      ],\n      [\n        \"▁unbelievable\",\n        -12.951089859008789\n      ],\n      [\n        \"„\",\n        -12.951260566711426\n      ],\n      [\n        \"▁Guatemala\",\n        -12.951387405395508\n      ],\n      [\n        \"LET\",\n        -12.95141315460205\n      ],\n      [\n        \"▁buff\",\n        -12.951454162597656\n      ],\n      [\n        \"▁Primul\",\n        -12.951626777648926\n      ],\n      [\n        \"▁mainland\",\n        -12.951702117919922\n      ],\n      [\n        \"campus\",\n        -12.951923370361328\n      ],\n      [\n        \"▁gefällt\",\n        -12.952075958251953\n      ],\n      [\n        \"BAN\",\n        -12.952153205871582\n      ],\n      [\n        \"finish\",\n        -12.952229499816895\n      ],\n      [\n        \"accustomed\",\n        -12.952251434326172\n      ],\n      [\n        \"▁Businesses\",\n        -12.95234203338623\n      ],\n      [\n        \"▁întreb\",\n        -12.95239543914795\n      ],\n      [\n        \"▁recomandă\",\n        -12.952425956726074\n      ],\n      [\n        \"▁pellet\",\n        -12.952474594116211\n      ],\n      [\n        \"▁GST\",\n        -12.952507972717285\n      ],\n      [\n        \"SEA\",\n        -12.952601432800293\n      ],\n      [\n        \"▁categorie\",\n        -12.952631950378418\n      ],\n      [\n        \"▁convainc\",\n        -12.95268440246582\n      ],\n      [\n        \"▁considéré\",\n        -12.952739715576172\n      ],\n      [\n        \"rois\",\n        -12.952853202819824\n      ],\n      [\n        \"▁thrust\",\n        -12.952898979187012\n      ],\n      [\n        \"ijk\",\n        -12.953001022338867\n      ],\n      [\n        \"gefüllt\",\n        -12.953118324279785\n      ],\n      [\n        \"▁situatii\",\n        -12.953327178955078\n      ],\n      [\n        \"▁Jacksonville\",\n        -12.95337200164795\n      ],\n      [\n        \"▁bakery\",\n        -12.953473091125488\n      ],\n      [\n        \"▁Accident\",\n        -12.953554153442383\n      ],\n      [\n        \"▁urmeaza\",\n        -12.953572273254395\n      ],\n      [\n        \"▁crib\",\n        -12.953593254089355\n      ],\n      [\n        \"getroffen\",\n        -12.953707695007324\n      ],\n      [\n        \"Based\",\n        -12.953877449035645\n      ],\n      [\n        \"Including\",\n        -12.95398235321045\n      ],\n      [\n        \"▁Morocco\",\n        -12.95398235321045\n      ],\n      [\n        \"▁casserole\",\n        -12.95398235321045\n      ],\n      [\n        \"▁enquiry\",\n        -12.953983306884766\n      ],\n      [\n        \"▁pahar\",\n        -12.954017639160156\n      ],\n      [\n        \"▁Unternehmer\",\n        -12.954025268554688\n      ],\n      [\n        \"électro\",\n        -12.954068183898926\n      ],\n      [\n        \"Marie\",\n        -12.95413589477539\n      ],\n      [\n        \"▁Sno\",\n        -12.954153060913086\n      ],\n      [\n        \"▁prostate\",\n        -12.954168319702148\n      ],\n      [\n        \"▁Wallace\",\n        -12.95426082611084\n      ],\n      [\n        \"empre\",\n        -12.954402923583984\n      ],\n      [\n        \"▁Multumesc\",\n        -12.954415321350098\n      ],\n      [\n        \"White\",\n        -12.954675674438477\n      ],\n      [\n        \"brief\",\n        -12.954751014709473\n      ],\n      [\n        \"▁kitten\",\n        -12.954751014709473\n      ],\n      [\n        \"füh\",\n        -12.954780578613281\n      ],\n      [\n        \"▁mankind\",\n        -12.954821586608887\n      ],\n      [\n        \"ENE\",\n        -12.95483112335205\n      ],\n      [\n        \"▁Ethics\",\n        -12.954848289489746\n      ],\n      [\n        \"▁Realty\",\n        -12.954946517944336\n      ],\n      [\n        \"▁Emerg\",\n        -12.954988479614258\n      ],\n      [\n        \"7-8\",\n        -12.955055236816406\n      ],\n      [\n        \"museum\",\n        -12.955096244812012\n      ],\n      [\n        \"BRE\",\n        -12.95518970489502\n      ],\n      [\n        \"▁kilometri\",\n        -12.955282211303711\n      ],\n      [\n        \"oyaume\",\n        -12.955286026000977\n      ],\n      [\n        \"▁Cambodia\",\n        -12.955288887023926\n      ],\n      [\n        \"▁bruit\",\n        -12.955304145812988\n      ],\n      [\n        \"▁sépar\",\n        -12.955334663391113\n      ],\n      [\n        \"mastered\",\n        -12.9554443359375\n      ],\n      [\n        \"shake\",\n        -12.955608367919922\n      ],\n      [\n        \"▁liaison\",\n        -12.955718994140625\n      ],\n      [\n        \"▁Boulder\",\n        -12.955719947814941\n      ],\n      [\n        \"▁tortilla\",\n        -12.955720901489258\n      ],\n      [\n        \"▁Fokus\",\n        -12.955731391906738\n      ],\n      [\n        \"▁Blair\",\n        -12.95573902130127\n      ],\n      [\n        \"▁disturbance\",\n        -12.955775260925293\n      ],\n      [\n        \"geladen\",\n        -12.955843925476074\n      ],\n      [\n        \"▁sunscreen\",\n        -12.955886840820312\n      ],\n      [\n        \"▁reuș\",\n        -12.955896377563477\n      ],\n      [\n        \"▁Braun\",\n        -12.956155776977539\n      ],\n      [\n        \"▁existente\",\n        -12.956157684326172\n      ],\n      [\n        \"stift\",\n        -12.956242561340332\n      ],\n      [\n        \"▁preot\",\n        -12.956387519836426\n      ],\n      [\n        \"▁doved\",\n        -12.956445693969727\n      ],\n      [\n        \"sexual\",\n        -12.956488609313965\n      ],\n      [\n        \"meanwhile\",\n        -12.956583976745605\n      ],\n      [\n        \"▁legislature\",\n        -12.956583976745605\n      ],\n      [\n        \"▁vermeiden\",\n        -12.956583976745605\n      ],\n      [\n        \"▁inequality\",\n        -12.95687484741211\n      ],\n      [\n        \"▁turc\",\n        -12.956881523132324\n      ],\n      [\n        \"ви\",\n        -12.95698070526123\n      ],\n      [\n        \"▁Kontrolle\",\n        -12.95702075958252\n      ],\n      [\n        \"▁Ursache\",\n        -12.95704174041748\n      ],\n      [\n        \"▁confess\",\n        -12.95704174041748\n      ],\n      [\n        \"▁poetic\",\n        -12.957109451293945\n      ],\n      [\n        \"attention\",\n        -12.957236289978027\n      ],\n      [\n        \"textured\",\n        -12.957386016845703\n      ],\n      [\n        \"GES\",\n        -12.957586288452148\n      ],\n      [\n        \"6-4\",\n        -12.957637786865234\n      ],\n      [\n        \"Ray\",\n        -12.957696914672852\n      ],\n      [\n        \"chromat\",\n        -12.957745552062988\n      ],\n      [\n        \"▁insightful\",\n        -12.957775115966797\n      ],\n      [\n        \"▁Navigation\",\n        -12.957887649536133\n      ],\n      [\n        \"▁destiny\",\n        -12.957887649536133\n      ],\n      [\n        \"▁ergeben\",\n        -12.957892417907715\n      ],\n      [\n        \"▁versteh\",\n        -12.958090782165527\n      ],\n      [\n        \"301\",\n        -12.958209037780762\n      ],\n      [\n        \"▁Exterior\",\n        -12.958321571350098\n      ],\n      [\n        \"église\",\n        -12.958322525024414\n      ],\n      [\n        \"▁Failure\",\n        -12.958322525024414\n      ],\n      [\n        \"▁Patricia\",\n        -12.958324432373047\n      ],\n      [\n        \"▁geschützt\",\n        -12.958328247070312\n      ],\n      [\n        \"intrarea\",\n        -12.95833969116211\n      ],\n      [\n        \"▁Forward\",\n        -12.958368301391602\n      ],\n      [\n        \"▁Portrait\",\n        -12.95844841003418\n      ],\n      [\n        \"▁enregistré\",\n        -12.958480834960938\n      ],\n      [\n        \"▁wagon\",\n        -12.958620071411133\n      ],\n      [\n        \"stealing\",\n        -12.958879470825195\n      ],\n      [\n        \"▁Numero\",\n        -12.958880424499512\n      ],\n      [\n        \"▁tradui\",\n        -12.958986282348633\n      ],\n      [\n        \"▁klassische\",\n        -12.959033966064453\n      ],\n      [\n        \"▁profitieren\",\n        -12.959043502807617\n      ],\n      [\n        \"▁laboratories\",\n        -12.95919132232666\n      ],\n      [\n        \"▁reconnaissance\",\n        -12.95919132232666\n      ],\n      [\n        \"ку\",\n        -12.959314346313477\n      ],\n      [\n        \"▁Petersburg\",\n        -12.959359169006348\n      ],\n      [\n        \"▁fertility\",\n        -12.959421157836914\n      ],\n      [\n        \"▁Understand\",\n        -12.959516525268555\n      ],\n      [\n        \"dehors\",\n        -12.959746360778809\n      ],\n      [\n        \"▁Knox\",\n        -12.959762573242188\n      ],\n      [\n        \"software\",\n        -12.959797859191895\n      ],\n      [\n        \"▁Celebration\",\n        -12.959823608398438\n      ],\n      [\n        \"4.6\",\n        -12.959897994995117\n      ],\n      [\n        \"quino\",\n        -12.959930419921875\n      ],\n      [\n        \"▁endeavour\",\n        -12.960073471069336\n      ],\n      [\n        \"▁temptation\",\n        -12.960136413574219\n      ],\n      [\n        \"▁Registry\",\n        -12.96035385131836\n      ],\n      [\n        \"IMP\",\n        -12.960502624511719\n      ],\n      [\n        \"bedingt\",\n        -12.960625648498535\n      ],\n      [\n        \"▁$60\",\n        -12.960846900939941\n      ],\n      [\n        \"▁Kriterien\",\n        -12.96093463897705\n      ],\n      [\n        \"▁strawberries\",\n        -12.960943222045898\n      ],\n      [\n        \"▁conspiracy\",\n        -12.96094799041748\n      ],\n      [\n        \"▁pouch\",\n        -12.960976600646973\n      ],\n      [\n        \"▁Alexandria\",\n        -12.961017608642578\n      ],\n      [\n        \"▁Mick\",\n        -12.961102485656738\n      ],\n      [\n        \"extra\",\n        -12.961114883422852\n      ],\n      [\n        \"▁Operator\",\n        -12.961151123046875\n      ],\n      [\n        \"enduring\",\n        -12.96132755279541\n      ],\n      [\n        \"▁smash\",\n        -12.961359024047852\n      ],\n      [\n        \"Euro\",\n        -12.961360931396484\n      ],\n      [\n        \"▁Nouvelle\",\n        -12.961370468139648\n      ],\n      [\n        \"▁Raspberry\",\n        -12.961370468139648\n      ],\n      [\n        \"▁präsentieren\",\n        -12.961380004882812\n      ],\n      [\n        \"▁electrician\",\n        -12.961404800415039\n      ],\n      [\n        \"▁cheerful\",\n        -12.961472511291504\n      ],\n      [\n        \"▁chargé\",\n        -12.961508750915527\n      ],\n      [\n        \"▁Diskussion\",\n        -12.961511611938477\n      ],\n      [\n        \"▁surpass\",\n        -12.961604118347168\n      ],\n      [\n        \"▁Acces\",\n        -12.961701393127441\n      ],\n      [\n        \"tausend\",\n        -12.961771011352539\n      ],\n      [\n        \"▁vigorous\",\n        -12.961808204650879\n      ],\n      [\n        \"▁tava\",\n        -12.961810111999512\n      ],\n      [\n        \"CHO\",\n        -12.96193790435791\n      ],\n      [\n        \"▁1951\",\n        -12.961941719055176\n      ],\n      [\n        \"▁Umsatz\",\n        -12.962019920349121\n      ],\n      [\n        \"▁slavery\",\n        -12.962055206298828\n      ],\n      [\n        \"travel\",\n        -12.962294578552246\n      ],\n      [\n        \"▁correspondent\",\n        -12.962297439575195\n      ],\n      [\n        \"▁$150\",\n        -12.962307929992676\n      ],\n      [\n        \"▁stärker\",\n        -12.962594985961914\n      ],\n      [\n        \"Alb\",\n        -12.96264362335205\n      ],\n      [\n        \"▁Lopez\",\n        -12.962682723999023\n      ],\n      [\n        \"▁longueur\",\n        -12.962767601013184\n      ],\n      [\n        \"▁successive\",\n        -12.962772369384766\n      ],\n      [\n        \"▁(2015)\",\n        -12.96278190612793\n      ],\n      [\n        \"teig\",\n        -12.962790489196777\n      ],\n      [\n        \"custom\",\n        -12.962944984436035\n      ],\n      [\n        \"TIM\",\n        -12.963099479675293\n      ],\n      [\n        \"▁Escape\",\n        -12.963174819946289\n      ],\n      [\n        \"▁Sekunden\",\n        -12.963349342346191\n      ],\n      [\n        \"tiré\",\n        -12.963444709777832\n      ],\n      [\n        \"▁chantier\",\n        -12.963489532470703\n      ],\n      [\n        \"▁saturated\",\n        -12.963555335998535\n      ],\n      [\n        \"▁confrontation\",\n        -12.963804244995117\n      ],\n      [\n        \"▁biography\",\n        -12.963805198669434\n      ],\n      [\n        \"zuerst\",\n        -12.9639892578125\n      ],\n      [\n        \"▁rencontré\",\n        -12.963991165161133\n      ],\n      [\n        \"▁harmless\",\n        -12.96412181854248\n      ],\n      [\n        \"Branche\",\n        -12.964139938354492\n      ],\n      [\n        \"▁QR\",\n        -12.964380264282227\n      ],\n      [\n        \"▁Ereignis\",\n        -12.964430809020996\n      ],\n      [\n        \"▁verkaufen\",\n        -12.96444320678711\n      ],\n      [\n        \"0:00\",\n        -12.96451187133789\n      ],\n      [\n        \"Association\",\n        -12.96469783782959\n      ],\n      [\n        \"▁Santiago\",\n        -12.964865684509277\n      ],\n      [\n        \"Control\",\n        -12.964993476867676\n      ],\n      [\n        \"▁Angriff\",\n        -12.9650297164917\n      ],\n      [\n        \"lase\",\n        -12.96505069732666\n      ],\n      [\n        \"▁sfaturi\",\n        -12.965224266052246\n      ],\n      [\n        \"▁Comprehensive\",\n        -12.965304374694824\n      ],\n      [\n        \"▁Shepherd\",\n        -12.965304374694824\n      ],\n      [\n        \"▁exponential\",\n        -12.965304374694824\n      ],\n      [\n        \"▁penetration\",\n        -12.965304374694824\n      ],\n      [\n        \"▁comble\",\n        -12.965394973754883\n      ],\n      [\n        \"ionar\",\n        -12.965557098388672\n      ],\n      [\n        \"slept\",\n        -12.965563774108887\n      ],\n      [\n        \"▁Spice\",\n        -12.965633392333984\n      ],\n      [\n        \"mAh\",\n        -12.965688705444336\n      ],\n      [\n        \"▁Vertreter\",\n        -12.965747833251953\n      ],\n      [\n        \"fehler\",\n        -12.965752601623535\n      ],\n      [\n        \"▁Scroll\",\n        -12.96599292755127\n      ],\n      [\n        \"▁WARRANT\",\n        -12.966179847717285\n      ],\n      [\n        \"▁minimise\",\n        -12.966326713562012\n      ],\n      [\n        \"▁Dept\",\n        -12.966474533081055\n      ],\n      [\n        \"▁urinar\",\n        -12.96661376953125\n      ],\n      [\n        \"établir\",\n        -12.966619491577148\n      ],\n      [\n        \"verhältnis\",\n        -12.966713905334473\n      ],\n      [\n        \"▁glowing\",\n        -12.966979026794434\n      ],\n      [\n        \"kulturelle\",\n        -12.966984748840332\n      ],\n      [\n        \"▁Pediatric\",\n        -12.967057228088379\n      ],\n      [\n        \"▁inconvenience\",\n        -12.967057228088379\n      ],\n      [\n        \"Antoine\",\n        -12.967121124267578\n      ],\n      [\n        \"▁Heck\",\n        -12.967164993286133\n      ],\n      [\n        \"▁couches\",\n        -12.967265129089355\n      ],\n      [\n        \"▁1938\",\n        -12.967331886291504\n      ],\n      [\n        \"maybe\",\n        -12.967333793640137\n      ],\n      [\n        \"ETA\",\n        -12.9673433303833\n      ],\n      [\n        \"▁solaire\",\n        -12.96748161315918\n      ],\n      [\n        \"▁Zürich\",\n        -12.967495918273926\n      ],\n      [\n        \"computer\",\n        -12.967545509338379\n      ],\n      [\n        \"milk\",\n        -12.96756362915039\n      ],\n      [\n        \"он\",\n        -12.967585563659668\n      ],\n      [\n        \"modalitate\",\n        -12.967608451843262\n      ],\n      [\n        \"spanning\",\n        -12.967655181884766\n      ],\n      [\n        \"▁Crypto\",\n        -12.96774959564209\n      ],\n      [\n        \"▁Spotify\",\n        -12.967935562133789\n      ],\n      [\n        \"mycin\",\n        -12.967944145202637\n      ],\n      [\n        \"▁similarities\",\n        -12.96811294555664\n      ],\n      [\n        \"▁eclipse\",\n        -12.968377113342285\n      ],\n      [\n        \"Map\",\n        -12.968610763549805\n      ],\n      [\n        \"double\",\n        -12.96861743927002\n      ],\n      [\n        \"corporate\",\n        -12.968734741210938\n      ],\n      [\n        \"▁Hindi\",\n        -12.968853950500488\n      ],\n      [\n        \"battling\",\n        -12.968866348266602\n      ],\n      [\n        \"▁habituel\",\n        -12.969098091125488\n      ],\n      [\n        \"▁Transition\",\n        -12.969196319580078\n      ],\n      [\n        \"▁luptă\",\n        -12.96920394897461\n      ],\n      [\n        \"▁trainee\",\n        -12.969219207763672\n      ],\n      [\n        \"LIS\",\n        -12.96922492980957\n      ],\n      [\n        \"▁Vatican\",\n        -12.969254493713379\n      ],\n      [\n        \"Archived\",\n        -12.9692964553833\n      ],\n      [\n        \"Connect\",\n        -12.969305038452148\n      ],\n      [\n        \"▁prealabil\",\n        -12.969307899475098\n      ],\n      [\n        \"▁Chambre\",\n        -12.969327926635742\n      ],\n      [\n        \"stuhl\",\n        -12.969440460205078\n      ],\n      [\n        \"▁arrivé\",\n        -12.969557762145996\n      ],\n      [\n        \"▁Urteil\",\n        -12.969575881958008\n      ],\n      [\n        \"▁scrutiny\",\n        -12.969818115234375\n      ],\n      [\n        \"▁memoir\",\n        -12.969854354858398\n      ],\n      [\n        \"▁innovant\",\n        -12.9699068069458\n      ],\n      [\n        \"▁sublime\",\n        -12.969943046569824\n      ],\n      [\n        \"children\",\n        -12.970004081726074\n      ],\n      [\n        \"▁Handwerk\",\n        -12.970056533813477\n      ],\n      [\n        \"▁campuses\",\n        -12.970268249511719\n      ],\n      [\n        \"▁durabil\",\n        -12.970502853393555\n      ],\n      [\n        \"▁immersive\",\n        -12.970632553100586\n      ],\n      [\n        \"▁Magnet\",\n        -12.970732688903809\n      ],\n      [\n        \"läufe\",\n        -12.970808029174805\n      ],\n      [\n        \"▁Techno\",\n        -12.970837593078613\n      ],\n      [\n        \"MAP\",\n        -12.9710693359375\n      ],\n      [\n        \"7.2\",\n        -12.971145629882812\n      ],\n      [\n        \"▁Schwimm\",\n        -12.971181869506836\n      ],\n      [\n        \"BOOK\",\n        -12.971186637878418\n      ],\n      [\n        \"188\",\n        -12.971441268920898\n      ],\n      [\n        \"▁Supervisor\",\n        -12.971498489379883\n      ],\n      [\n        \"prévue\",\n        -12.971691131591797\n      ],\n      [\n        \"needed\",\n        -12.971813201904297\n      ],\n      [\n        \"▁creditors\",\n        -12.971822738647461\n      ],\n      [\n        \"▁brin\",\n        -12.971837043762207\n      ],\n      [\n        \"▁Neck\",\n        -12.971900939941406\n      ],\n      [\n        \"▁Salut\",\n        -12.971988677978516\n      ],\n      [\n        \"▁despair\",\n        -12.972105979919434\n      ],\n      [\n        \"▁Sauce\",\n        -12.972261428833008\n      ],\n      [\n        \"▁Westminster\",\n        -12.972335815429688\n      ],\n      [\n        \"▁langfristig\",\n        -12.972335815429688\n      ],\n      [\n        \"▁northeast\",\n        -12.972365379333496\n      ],\n      [\n        \"▁încercat\",\n        -12.972399711608887\n      ],\n      [\n        \"▁nausea\",\n        -12.972408294677734\n      ],\n      [\n        \"▁Paypal\",\n        -12.972440719604492\n      ],\n      [\n        \"▁Arrow\",\n        -12.972469329833984\n      ],\n      [\n        \"▁Travis\",\n        -12.972633361816406\n      ],\n      [\n        \"(2009)\",\n        -12.972713470458984\n      ],\n      [\n        \"▁Rising\",\n        -12.972719192504883\n      ],\n      [\n        \"termes\",\n        -12.973097801208496\n      ],\n      [\n        \"Australie\",\n        -12.973154067993164\n      ],\n      [\n        \"▁scarf\",\n        -12.973187446594238\n      ],\n      [\n        \"klassischen\",\n        -12.97337818145752\n      ],\n      [\n        \"▁boug\",\n        -12.973466873168945\n      ],\n      [\n        \"DOT\",\n        -12.97360610961914\n      ],\n      [\n        \"▁Trink\",\n        -12.97361946105957\n      ],\n      [\n        \"▁bestätigt\",\n        -12.97365951538086\n      ],\n      [\n        \"▁officiel\",\n        -12.97370433807373\n      ],\n      [\n        \"Produkt\",\n        -12.973873138427734\n      ],\n      [\n        \"DNA\",\n        -12.974140167236328\n      ],\n      [\n        \"▁*******\",\n        -12.97426700592041\n      ],\n      [\n        \"GAR\",\n        -12.974271774291992\n      ],\n      [\n        \"therapeut\",\n        -12.974377632141113\n      ],\n      [\n        \"187\",\n        -12.974420547485352\n      ],\n      [\n        \"▁Louisville\",\n        -12.974493026733398\n      ],\n      [\n        \"▁geöffnet\",\n        -12.97462272644043\n      ],\n      [\n        \"Watch\",\n        -12.974640846252441\n      ],\n      [\n        \"85%\",\n        -12.974678993225098\n      ],\n      [\n        \"▁Candida\",\n        -12.974698066711426\n      ],\n      [\n        \"▁Kathy\",\n        -12.974703788757324\n      ],\n      [\n        \"▁Animation\",\n        -12.974711418151855\n      ],\n      [\n        \"planung\",\n        -12.974715232849121\n      ],\n      [\n        \"woche\",\n        -12.974730491638184\n      ],\n      [\n        \"Video\",\n        -12.974966049194336\n      ],\n      [\n        \"▁Automation\",\n        -12.97507095336914\n      ],\n      [\n        \"▁foliage\",\n        -12.97507381439209\n      ],\n      [\n        \"▁evenimentului\",\n        -12.975175857543945\n      ],\n      [\n        \"SEN\",\n        -12.975362777709961\n      ],\n      [\n        \"▁Dialog\",\n        -12.975372314453125\n      ],\n      [\n        \"▁ZIP\",\n        -12.975372314453125\n      ],\n      [\n        \"▁vieții\",\n        -12.97537612915039\n      ],\n      [\n        \"▁passionné\",\n        -12.975425720214844\n      ],\n      [\n        \"▁WOW\",\n        -12.97544002532959\n      ],\n      [\n        \"ectiv\",\n        -12.975464820861816\n      ],\n      [\n        \"▁vorbesc\",\n        -12.975482940673828\n      ],\n      [\n        \"▁computational\",\n        -12.975533485412598\n      ],\n      [\n        \"▁idiot\",\n        -12.97557258605957\n      ],\n      [\n        \"▁stigma\",\n        -12.97567081451416\n      ],\n      [\n        \"▁multumesc\",\n        -12.975870132446289\n      ],\n      [\n        \"▁sărbători\",\n        -12.975870132446289\n      ],\n      [\n        \"▁Advantage\",\n        -12.975906372070312\n      ],\n      [\n        \"▁alegeri\",\n        -12.976024627685547\n      ],\n      [\n        \"▁philosopher\",\n        -12.976031303405762\n      ],\n      [\n        \"RIE\",\n        -12.976117134094238\n      ],\n      [\n        \"refundable\",\n        -12.976221084594727\n      ],\n      [\n        \"▁Sofia\",\n        -12.97623348236084\n      ],\n      [\n        \"▁încheiat\",\n        -12.976313591003418\n      ],\n      [\n        \"meilleures\",\n        -12.976473808288574\n      ],\n      [\n        \"critical\",\n        -12.976744651794434\n      ],\n      [\n        \"▁cavity\",\n        -12.976766586303711\n      ],\n      [\n        \"▁ressort\",\n        -12.976792335510254\n      ],\n      [\n        \"strong\",\n        -12.976798057556152\n      ],\n      [\n        \"▁Backup\",\n        -12.976948738098145\n      ],\n      [\n        \"▁Zeitraum\",\n        -12.977023124694824\n      ],\n      [\n        \"▁Szene\",\n        -12.977027893066406\n      ],\n      [\n        \"▁Candle\",\n        -12.977173805236816\n      ],\n      [\n        \"▁ciocolat\",\n        -12.977198600769043\n      ],\n      [\n        \"etched\",\n        -12.977227210998535\n      ],\n      [\n        \"ан\",\n        -12.977302551269531\n      ],\n      [\n        \"▁Anchor\",\n        -12.977365493774414\n      ],\n      [\n        \"equate\",\n        -12.977470397949219\n      ],\n      [\n        \"▁bulg\",\n        -12.977476119995117\n      ],\n      [\n        \"▁motorist\",\n        -12.977524757385254\n      ],\n      [\n        \"träglich\",\n        -12.977736473083496\n      ],\n      [\n        \"please\",\n        -12.977936744689941\n      ],\n      [\n        \"different\",\n        -12.978011131286621\n      ],\n      [\n        \"▁Accel\",\n        -12.97813606262207\n      ],\n      [\n        \"Proiectul\",\n        -12.97829818725586\n      ],\n      [\n        \"▁cabbage\",\n        -12.97852897644043\n      ],\n      [\n        \"▁télécharger\",\n        -12.97852897644043\n      ],\n      [\n        \"▁Presentation\",\n        -12.97856330871582\n      ],\n      [\n        \"▁Struktur\",\n        -12.978621482849121\n      ],\n      [\n        \"bücher\",\n        -12.978650093078613\n      ],\n      [\n        \"▁flatter\",\n        -12.978672981262207\n      ],\n      [\n        \"emprunt\",\n        -12.979074478149414\n      ],\n      [\n        \"▁oriental\",\n        -12.979111671447754\n      ],\n      [\n        \"▁Turnier\",\n        -12.979166984558105\n      ],\n      [\n        \"brücke\",\n        -12.97917366027832\n      ],\n      [\n        \"▁légumes\",\n        -12.979416847229004\n      ],\n      [\n        \"gerechnet\",\n        -12.979595184326172\n      ],\n      [\n        \"flooded\",\n        -12.979621887207031\n      ],\n      [\n        \"LER\",\n        -12.979679107666016\n      ],\n      [\n        \"üben\",\n        -12.97973918914795\n      ],\n      [\n        \"internaute\",\n        -12.979888916015625\n      ],\n      [\n        \"▁Austausch\",\n        -12.979935646057129\n      ],\n      [\n        \"gefordert\",\n        -12.980034828186035\n      ],\n      [\n        \"▁adoptat\",\n        -12.980277061462402\n      ],\n      [\n        \"▁erinnern\",\n        -12.980305671691895\n      ],\n      [\n        \"▁dolphin\",\n        -12.980307579040527\n      ],\n      [\n        \"▁Parkinson\",\n        -12.980308532714844\n      ],\n      [\n        \"büro\",\n        -12.980310440063477\n      ],\n      [\n        \"▁Crest\",\n        -12.980368614196777\n      ],\n      [\n        \"▁Ikea\",\n        -12.980437278747559\n      ],\n      [\n        \"▁ecologic\",\n        -12.980470657348633\n      ],\n      [\n        \"mplă\",\n        -12.98065185546875\n      ],\n      [\n        \"▁șef\",\n        -12.980655670166016\n      ],\n      [\n        \"coop\",\n        -12.980868339538574\n      ],\n      [\n        \"▁Carson\",\n        -12.980900764465332\n      ],\n      [\n        \"▁uşor\",\n        -12.981054306030273\n      ],\n      [\n        \"▁exert\",\n        -12.981070518493652\n      ],\n      [\n        \"▁countertop\",\n        -12.981114387512207\n      ],\n      [\n        \"ntended\",\n        -12.981136322021484\n      ],\n      [\n        \"▁Civic\",\n        -12.981313705444336\n      ],\n      [\n        \"▁attentes\",\n        -12.98133373260498\n      ],\n      [\n        \"gesetzlichen\",\n        -12.981356620788574\n      ],\n      [\n        \"frischen\",\n        -12.981475830078125\n      ],\n      [\n        \"▁Bottle\",\n        -12.981636047363281\n      ],\n      [\n        \"▁cautare\",\n        -12.982080459594727\n      ],\n      [\n        \"▁waterfront\",\n        -12.982226371765137\n      ],\n      [\n        \"▁centerpiece\",\n        -12.982312202453613\n      ],\n      [\n        \"▁Castel\",\n        -12.982441902160645\n      ],\n      [\n        \"510\",\n        -12.98270034790039\n      ],\n      [\n        \"capped\",\n        -12.982709884643555\n      ],\n      [\n        \"▁mattresses\",\n        -12.982850074768066\n      ],\n      [\n        \"▁readiness\",\n        -12.982865333557129\n      ],\n      [\n        \"diag\",\n        -12.982970237731934\n      ],\n      [\n        \"▁geändert\",\n        -12.982980728149414\n      ],\n      [\n        \"▁complained\",\n        -12.983051300048828\n      ],\n      [\n        \"▁diary\",\n        -12.983073234558105\n      ],\n      [\n        \"▁ceremonies\",\n        -12.983144760131836\n      ],\n      [\n        \"▁următor\",\n        -12.983181953430176\n      ],\n      [\n        \"▁Engel\",\n        -12.983270645141602\n      ],\n      [\n        \"▁disconnect\",\n        -12.9832763671875\n      ],\n      [\n        \"▁Silvi\",\n        -12.983282089233398\n      ],\n      [\n        \"▁eingerichtet\",\n        -12.9834566116333\n      ],\n      [\n        \"medizin\",\n        -12.983512878417969\n      ],\n      [\n        \"▁majestic\",\n        -12.983869552612305\n      ],\n      [\n        \"▁Random\",\n        -12.983943939208984\n      ],\n      [\n        \"▁Equity\",\n        -12.984046936035156\n      ],\n      [\n        \"▁Echipa\",\n        -12.984111785888672\n      ],\n      [\n        \"са\",\n        -12.984163284301758\n      ],\n      [\n        \"316\",\n        -12.984179496765137\n      ],\n      [\n        \"▁Formation\",\n        -12.984183311462402\n      ],\n      [\n        \"inland\",\n        -12.98421859741211\n      ],\n      [\n        \"appuy\",\n        -12.984301567077637\n      ],\n      [\n        \"TAN\",\n        -12.984481811523438\n      ],\n      [\n        \"slipped\",\n        -12.984918594360352\n      ],\n      [\n        \"Certains\",\n        -12.985247611999512\n      ],\n      [\n        \"▁Silber\",\n        -12.98525333404541\n      ],\n      [\n        \"▁reçoi\",\n        -12.985257148742676\n      ],\n      [\n        \"▁Monthly\",\n        -12.985323905944824\n      ],\n      [\n        \"calculating\",\n        -12.985494613647461\n      ],\n      [\n        \"▁scratches\",\n        -12.98554515838623\n      ],\n      [\n        \"▁concurrence\",\n        -12.985654830932617\n      ],\n      [\n        \"▁Stärke\",\n        -12.985662460327148\n      ],\n      [\n        \"▁intermediar\",\n        -12.985751152038574\n      ],\n      [\n        \"▁erlebt\",\n        -12.98579216003418\n      ],\n      [\n        \"gesellschaftlich\",\n        -12.986037254333496\n      ],\n      [\n        \"▁Volk\",\n        -12.986041069030762\n      ],\n      [\n        \"▁Ansprüche\",\n        -12.986101150512695\n      ],\n      [\n        \"▁cumulative\",\n        -12.986103057861328\n      ],\n      [\n        \"▁Randy\",\n        -12.986183166503906\n      ],\n      [\n        \"▁instituții\",\n        -12.98622989654541\n      ],\n      [\n        \"together\",\n        -12.986489295959473\n      ],\n      [\n        \"▁Sap\",\n        -12.986539840698242\n      ],\n      [\n        \"▁modificari\",\n        -12.986551284790039\n      ],\n      [\n        \"▁erosion\",\n        -12.986572265625\n      ],\n      [\n        \"▁wicked\",\n        -12.986577033996582\n      ],\n      [\n        \"soaked\",\n        -12.986613273620605\n      ],\n      [\n        \"▁cellar\",\n        -12.9866361618042\n      ],\n      [\n        \"ignoring\",\n        -12.986726760864258\n      ],\n      [\n        \"▁scarce\",\n        -12.986815452575684\n      ],\n      [\n        \"ueuse\",\n        -12.98697280883789\n      ],\n      [\n        \"▁bibliothèque\",\n        -12.986995697021484\n      ],\n      [\n        \"critères\",\n        -12.987017631530762\n      ],\n      [\n        \"▁overlay\",\n        -12.987166404724121\n      ],\n      [\n        \"IPA\",\n        -12.98737907409668\n      ],\n      [\n        \"director\",\n        -12.987393379211426\n      ],\n      [\n        \"▁Krishna\",\n        -12.987444877624512\n      ],\n      [\n        \"▁methodologies\",\n        -12.987451553344727\n      ],\n      [\n        \"iocese\",\n        -12.987513542175293\n      ],\n      [\n        \"▁saucepan\",\n        -12.987713813781738\n      ],\n      [\n        \"184\",\n        -12.987948417663574\n      ],\n      [\n        \"275\",\n        -12.987981796264648\n      ],\n      [\n        \"▁précieu\",\n        -12.988165855407715\n      ],\n      [\n        \"▁academy\",\n        -12.9883394241333\n      ],\n      [\n        \"460\",\n        -12.988438606262207\n      ],\n      [\n        \"ERN\",\n        -12.988679885864258\n      ],\n      [\n        \"▁emoti\",\n        -12.988725662231445\n      ],\n      [\n        \"▁télévision\",\n        -12.988823890686035\n      ],\n      [\n        \"EDIT\",\n        -12.988901138305664\n      ],\n      [\n        \"▁Valeri\",\n        -12.989045143127441\n      ],\n      [\n        \"▁Charity\",\n        -12.98911190032959\n      ],\n      [\n        \"Voilà\",\n        -12.989297866821289\n      ],\n      [\n        \"▁lipsit\",\n        -12.989356994628906\n      ],\n      [\n        \"▁unleash\",\n        -12.989373207092285\n      ],\n      [\n        \"▁suferit\",\n        -12.989506721496582\n      ],\n      [\n        \"▁Lifestyle\",\n        -12.98953914642334\n      ],\n      [\n        \"▁Edel\",\n        -12.989603996276855\n      ],\n      [\n        \"▁Derek\",\n        -12.989643096923828\n      ],\n      [\n        \"▁Manga\",\n        -12.989801406860352\n      ],\n      [\n        \"▁increment\",\n        -12.989990234375\n      ],\n      [\n        \"▁plötzlich\",\n        -12.990133285522461\n      ],\n      [\n        \"▁5:30\",\n        -12.990208625793457\n      ],\n      [\n        \"▁Republicii\",\n        -12.990246772766113\n      ],\n      [\n        \"▁capitalism\",\n        -12.990293502807617\n      ],\n      [\n        \"ROW\",\n        -12.990510940551758\n      ],\n      [\n        \"▁Paar\",\n        -12.990523338317871\n      ],\n      [\n        \"allée\",\n        -12.99057674407959\n      ],\n      [\n        \"▁motto\",\n        -12.990610122680664\n      ],\n      [\n        \"Schäden\",\n        -12.990630149841309\n      ],\n      [\n        \"▁£10\",\n        -12.99063491821289\n      ],\n      [\n        \"RIP\",\n        -12.990728378295898\n      ],\n      [\n        \"courir\",\n        -12.990761756896973\n      ],\n      [\n        \"rocky\",\n        -12.990944862365723\n      ],\n      [\n        \"▁Sunshine\",\n        -12.991031646728516\n      ],\n      [\n        \"▁chimney\",\n        -12.991044998168945\n      ],\n      [\n        \"▁préfér\",\n        -12.991153717041016\n      ],\n      [\n        \"▁relaxare\",\n        -12.991189956665039\n      ],\n      [\n        \"▁colabora\",\n        -12.99134349822998\n      ],\n      [\n        \"liefer\",\n        -12.99142837524414\n      ],\n      [\n        \"▁ordentlich\",\n        -12.991486549377441\n      ],\n      [\n        \"▁dauerhaft\",\n        -12.991535186767578\n      ],\n      [\n        \"kammer\",\n        -12.991572380065918\n      ],\n      [\n        \"▁Basket\",\n        -12.991579055786133\n      ],\n      [\n        \"Site\",\n        -12.991657257080078\n      ],\n      [\n        \"▁Regina\",\n        -12.991716384887695\n      ],\n      [\n        \"▁simulate\",\n        -12.991868019104004\n      ],\n      [\n        \"▁wrestle\",\n        -12.991939544677734\n      ],\n      [\n        \"wertig\",\n        -12.991986274719238\n      ],\n      [\n        \"▁Christie\",\n        -12.992018699645996\n      ],\n      [\n        \"download\",\n        -12.992033004760742\n      ],\n      [\n        \"▁torch\",\n        -12.992213249206543\n      ],\n      [\n        \"riya\",\n        -12.992216110229492\n      ],\n      [\n        \"▁Grie\",\n        -12.992247581481934\n      ],\n      [\n        \"bitten\",\n        -12.992356300354004\n      ],\n      [\n        \"▁spezialisiert\",\n        -12.99238109588623\n      ],\n      [\n        \"▁Parade\",\n        -12.992408752441406\n      ],\n      [\n        \"▁migraine\",\n        -12.992830276489258\n      ],\n      [\n        \"▁Armstrong\",\n        -12.992846488952637\n      ],\n      [\n        \"▁cutie\",\n        -12.9928560256958\n      ],\n      [\n        \"▁bullying\",\n        -12.992889404296875\n      ],\n      [\n        \"▁Estonia\",\n        -12.99293041229248\n      ],\n      [\n        \"▁harvested\",\n        -12.992948532104492\n      ],\n      [\n        \"▁Hunger\",\n        -12.992971420288086\n      ],\n      [\n        \"▁frapp\",\n        -12.992999076843262\n      ],\n      [\n        \"REM\",\n        -12.993117332458496\n      ],\n      [\n        \"sensor\",\n        -12.993189811706543\n      ],\n      [\n        \"▁GREAT\",\n        -12.993293762207031\n      ],\n      [\n        \"▁thyroid\",\n        -12.993302345275879\n      ],\n      [\n        \"▁mărturi\",\n        -12.993335723876953\n      ],\n      [\n        \"ocupă\",\n        -12.993809700012207\n      ],\n      [\n        \"▁Wealth\",\n        -12.993812561035156\n      ],\n      [\n        \"▁convins\",\n        -12.993841171264648\n      ],\n      [\n        \"141\",\n        -12.993876457214355\n      ],\n      [\n        \"▁vingt\",\n        -12.993901252746582\n      ],\n      [\n        \"▁revel\",\n        -12.994054794311523\n      ],\n      [\n        \"▁Adri\",\n        -12.994083404541016\n      ],\n      [\n        \"▁remix\",\n        -12.994207382202148\n      ],\n      [\n        \"▁fermentation\",\n        -12.99425220489502\n      ],\n      [\n        \"▁achiziti\",\n        -12.994352340698242\n      ],\n      [\n        \"dream\",\n        -12.994426727294922\n      ],\n      [\n        \"▁contemporan\",\n        -12.994632720947266\n      ],\n      [\n        \"▁youngsters\",\n        -12.994685173034668\n      ],\n      [\n        \"▁Hartford\",\n        -12.994745254516602\n      ],\n      [\n        \"▁Wagen\",\n        -12.994988441467285\n      ],\n      [\n        \"▁Celebr\",\n        -12.995214462280273\n      ],\n      [\n        \"leveraging\",\n        -12.99527645111084\n      ],\n      [\n        \"▁Iasi\",\n        -12.99549674987793\n      ],\n      [\n        \"tackling\",\n        -12.9955415725708\n      ],\n      [\n        \"▁intrinsic\",\n        -12.995553970336914\n      ],\n      [\n        \"▁Macedon\",\n        -12.995603561401367\n      ],\n      [\n        \"NIA\",\n        -12.995784759521484\n      ],\n      [\n        \"▁bliss\",\n        -12.995905876159668\n      ],\n      [\n        \"▁gradual\",\n        -12.995908737182617\n      ],\n      [\n        \"▁inregistrat\",\n        -12.995981216430664\n      ],\n      [\n        \"▁volleyball\",\n        -12.995986938476562\n      ],\n      [\n        \"▁offiziell\",\n        -12.996054649353027\n      ],\n      [\n        \"▁carré\",\n        -12.99611759185791\n      ],\n      [\n        \"Mostly\",\n        -12.996174812316895\n      ],\n      [\n        \"▁Harley\",\n        -12.996193885803223\n      ],\n      [\n        \"▁locati\",\n        -12.996216773986816\n      ],\n      [\n        \"▁Klo\",\n        -12.996223449707031\n      ],\n      [\n        \"▁Equal\",\n        -12.996238708496094\n      ],\n      [\n        \"▁citat\",\n        -12.996369361877441\n      ],\n      [\n        \"▁argint\",\n        -12.996478080749512\n      ],\n      [\n        \"prüft\",\n        -12.996528625488281\n      ],\n      [\n        \"▁Fence\",\n        -12.996600151062012\n      ],\n      [\n        \"positive\",\n        -12.996988296508789\n      ],\n      [\n        \"▁Kaz\",\n        -12.997245788574219\n      ],\n      [\n        \"▁distortion\",\n        -12.997342109680176\n      ],\n      [\n        \"▁sâmbătă\",\n        -12.997342109680176\n      ],\n      [\n        \"▁frontière\",\n        -12.997346878051758\n      ],\n      [\n        \"▁revanch\",\n        -12.997394561767578\n      ],\n      [\n        \"▁Held\",\n        -12.997465133666992\n      ],\n      [\n        \"▁Hobb\",\n        -12.99776554107666\n      ],\n      [\n        \"▁reuşit\",\n        -12.997796058654785\n      ],\n      [\n        \"deem\",\n        -12.997880935668945\n      ],\n      [\n        \"▁dorint\",\n        -12.997902870178223\n      ],\n      [\n        \"▁Anlagen\",\n        -12.997908592224121\n      ],\n      [\n        \"▁cheval\",\n        -12.997973442077637\n      ],\n      [\n        \"630\",\n        -12.99806022644043\n      ],\n      [\n        \"▁implementare\",\n        -12.99808406829834\n      ],\n      [\n        \"▁curator\",\n        -12.99821662902832\n      ],\n      [\n        \"▁legislator\",\n        -12.998247146606445\n      ],\n      [\n        \"▁potassium\",\n        -12.998247146606445\n      ],\n      [\n        \"▁veterinarian\",\n        -12.998247146606445\n      ],\n      [\n        \"▁domenii\",\n        -12.998273849487305\n      ],\n      [\n        \"▁revue\",\n        -12.998310089111328\n      ],\n      [\n        \"Vielen\",\n        -12.998333930969238\n      ],\n      [\n        \"africain\",\n        -12.998570442199707\n      ],\n      [\n        \"before\",\n        -12.998680114746094\n      ],\n      [\n        \"▁Bestandteil\",\n        -12.998702049255371\n      ],\n      [\n        \"▁(2010)\",\n        -12.998767852783203\n      ],\n      [\n        \"▁Arlington\",\n        -12.999153137207031\n      ],\n      [\n        \"▁Gründung\",\n        -12.999153137207031\n      ],\n      [\n        \"▁Sprinkle\",\n        -12.999153137207031\n      ],\n      [\n        \"▁Princeton\",\n        -12.999186515808105\n      ],\n      [\n        \"chirurg\",\n        -12.999228477478027\n      ],\n      [\n        \"▁laissé\",\n        -12.999357223510742\n      ],\n      [\n        \"whoever\",\n        -12.999384880065918\n      ],\n      [\n        \"▁pasture\",\n        -12.999431610107422\n      ],\n      [\n        \"ajute\",\n        -12.999436378479004\n      ],\n      [\n        \"▁joyful\",\n        -12.999494552612305\n      ],\n      [\n        \"etapa\",\n        -12.999905586242676\n      ],\n      [\n        \"ESP\",\n        -13.000017166137695\n      ],\n      [\n        \"▁Iohannis\",\n        -13.000059127807617\n      ],\n      [\n        \"▁10:30\",\n        -13.000127792358398\n      ],\n      [\n        \"▁Kingston\",\n        -13.000140190124512\n      ],\n      [\n        \"▁contender\",\n        -13.000164031982422\n      ],\n      [\n        \"▁Damage\",\n        -13.000177383422852\n      ],\n      [\n        \"▁schreibt\",\n        -13.000482559204102\n      ],\n      [\n        \"sstisch\",\n        -13.000631332397461\n      ],\n      [\n        \"Associated\",\n        -13.00072956085205\n      ],\n      [\n        \"▁disposable\",\n        -13.000782012939453\n      ],\n      [\n        \"veranstaltung\",\n        -13.00096607208252\n      ],\n      [\n        \"▁puppet\",\n        -13.00100040435791\n      ],\n      [\n        \"pong\",\n        -13.001093864440918\n      ],\n      [\n        \"▁Chronicle\",\n        -13.001176834106445\n      ],\n      [\n        \"222\",\n        -13.001286506652832\n      ],\n      [\n        \"intuit\",\n        -13.001396179199219\n      ],\n      [\n        \"inscrire\",\n        -13.001429557800293\n      ],\n      [\n        \"▁speeches\",\n        -13.001431465148926\n      ],\n      [\n        \"▁Eingang\",\n        -13.001775741577148\n      ],\n      [\n        \"▁Adidas\",\n        -13.001875877380371\n      ],\n      [\n        \"▁cemetery\",\n        -13.001877784729004\n      ],\n      [\n        \"▁juicy\",\n        -13.001885414123535\n      ],\n      [\n        \"▁wertvolle\",\n        -13.0018892288208\n      ],\n      [\n        \"▁militari\",\n        -13.001917839050293\n      ],\n      [\n        \"China\",\n        -13.00196361541748\n      ],\n      [\n        \"ecția\",\n        -13.002041816711426\n      ],\n      [\n        \"luster\",\n        -13.002063751220703\n      ],\n      [\n        \"auftrag\",\n        -13.00234317779541\n      ],\n      [\n        \"▁Marius\",\n        -13.002523422241211\n      ],\n      [\n        \"▁crossover\",\n        -13.002555847167969\n      ],\n      [\n        \"▁enthusiast\",\n        -13.002555847167969\n      ],\n      [\n        \"▁cantitate\",\n        -13.002630233764648\n      ],\n      [\n        \"▁animat\",\n        -13.002634048461914\n      ],\n      [\n        \"Park\",\n        -13.002793312072754\n      ],\n      [\n        \"▁unchanged\",\n        -13.00279426574707\n      ],\n      [\n        \"russia\",\n        -13.00281810760498\n      ],\n      [\n        \"instant\",\n        -13.002833366394043\n      ],\n      [\n        \"ţiunea\",\n        -13.002835273742676\n      ],\n      [\n        \"▁franchi\",\n        -13.002920150756836\n      ],\n      [\n        \"▁mobiliz\",\n        -13.002963066101074\n      ],\n      [\n        \"athlet\",\n        -13.003013610839844\n      ],\n      [\n        \"▁Cardio\",\n        -13.0031099319458\n      ],\n      [\n        \"▁supus\",\n        -13.003119468688965\n      ],\n      [\n        \"▁Griff\",\n        -13.003137588500977\n      ],\n      [\n        \"flakes\",\n        -13.003217697143555\n      ],\n      [\n        \"soluble\",\n        -13.003250122070312\n      ],\n      [\n        \"Known\",\n        -13.003693580627441\n      ],\n      [\n        \"leaking\",\n        -13.003741264343262\n      ],\n      [\n        \"▁Holocaust\",\n        -13.004148483276367\n      ],\n      [\n        \"gift\",\n        -13.004197120666504\n      ],\n      [\n        \"▁tradiţi\",\n        -13.004359245300293\n      ],\n      [\n        \"▁southeast\",\n        -13.004498481750488\n      ],\n      [\n        \"▁correspondant\",\n        -13.00460147857666\n      ],\n      [\n        \"Isaiah\",\n        -13.004603385925293\n      ],\n      [\n        \"▁diagonal\",\n        -13.004606246948242\n      ],\n      [\n        \"▁Probabil\",\n        -13.004680633544922\n      ],\n      [\n        \"▁dégust\",\n        -13.004791259765625\n      ],\n      [\n        \"▁Naval\",\n        -13.004802703857422\n      ],\n      [\n        \"▁cultivation\",\n        -13.004839897155762\n      ],\n      [\n        \"▁Vertrieb\",\n        -13.004849433898926\n      ],\n      [\n        \"▁pony\",\n        -13.004854202270508\n      ],\n      [\n        \"▁Throw\",\n        -13.0050048828125\n      ],\n      [\n        \"little\",\n        -13.005010604858398\n      ],\n      [\n        \"▁remarque\",\n        -13.005074501037598\n      ],\n      [\n        \"▁parcare\",\n        -13.005085945129395\n      ],\n      [\n        \"3.8\",\n        -13.00518798828125\n      ],\n      [\n        \"▁renunt\",\n        -13.005330085754395\n      ],\n      [\n        \"▁Rewards\",\n        -13.005487442016602\n      ],\n      [\n        \"▁Thur\",\n        -13.005496978759766\n      ],\n      [\n        \"▁underestimate\",\n        -13.005515098571777\n      ],\n      [\n        \"▁frankly\",\n        -13.005516052246094\n      ],\n      [\n        \"Bretagne\",\n        -13.005517959594727\n      ],\n      [\n        \"axial\",\n        -13.005537986755371\n      ],\n      [\n        \"▁identities\",\n        -13.0055570602417\n      ],\n      [\n        \"▁Harvest\",\n        -13.00561237335205\n      ],\n      [\n        \"▁skippe\",\n        -13.00561237335205\n      ],\n      [\n        \"▁Boutique\",\n        -13.005670547485352\n      ],\n      [\n        \"▁intuition\",\n        -13.005746841430664\n      ],\n      [\n        \"▁Rotary\",\n        -13.00581169128418\n      ],\n      [\n        \"▁SERVICE\",\n        -13.005875587463379\n      ],\n      [\n        \"▁refill\",\n        -13.005915641784668\n      ],\n      [\n        \"▁arcade\",\n        -13.006060600280762\n      ],\n      [\n        \"▁komme\",\n        -13.006386756896973\n      ],\n      [\n        \"▁irrelevant\",\n        -13.006427764892578\n      ],\n      [\n        \"▁Sortiment\",\n        -13.006429672241211\n      ],\n      [\n        \"▁scriitor\",\n        -13.006488800048828\n      ],\n      [\n        \"▁clicked\",\n        -13.006516456604004\n      ],\n      [\n        \"▁ciel\",\n        -13.006610870361328\n      ],\n      [\n        \"▁Caesar\",\n        -13.00680160522461\n      ],\n      [\n        \"hound\",\n        -13.006803512573242\n      ],\n      [\n        \"whipped\",\n        -13.006843566894531\n      ],\n      [\n        \"licate\",\n        -13.006867408752441\n      ],\n      [\n        \"▁formatting\",\n        -13.006986618041992\n      ],\n      [\n        \"▁mosaic\",\n        -13.007028579711914\n      ],\n      [\n        \"(2017)\",\n        -13.007122039794922\n      ],\n      [\n        \"777\",\n        -13.007257461547852\n      ],\n      [\n        \"▁Messenger\",\n        -13.007342338562012\n      ],\n      [\n        \"dulci\",\n        -13.007369041442871\n      ],\n      [\n        \"▁(2016)\",\n        -13.007420539855957\n      ],\n      [\n        \"▁popcorn\",\n        -13.007425308227539\n      ],\n      [\n        \"▁Presidential\",\n        -13.007497787475586\n      ],\n      [\n        \"▁brokerage\",\n        -13.007564544677734\n      ],\n      [\n        \"dachte\",\n        -13.00762939453125\n      ],\n      [\n        \"verkauf\",\n        -13.00768756866455\n      ],\n      [\n        \"▁pomme\",\n        -13.007721900939941\n      ],\n      [\n        \"▁fret\",\n        -13.007822036743164\n      ],\n      [\n        \"▁revere\",\n        -13.007894515991211\n      ],\n      [\n        \"▁Canvas\",\n        -13.008092880249023\n      ],\n      [\n        \"▁Nottingham\",\n        -13.008255004882812\n      ],\n      [\n        \"▁Refuge\",\n        -13.008257865905762\n      ],\n      [\n        \"▁injustice\",\n        -13.008259773254395\n      ],\n      [\n        \"▁External\",\n        -13.008264541625977\n      ],\n      [\n        \"dincolo\",\n        -13.008304595947266\n      ],\n      [\n        \"directing\",\n        -13.008511543273926\n      ],\n      [\n        \"▁Toulouse\",\n        -13.008710861206055\n      ],\n      [\n        \"▁cheltuieli\",\n        -13.008746147155762\n      ],\n      [\n        \"▁distrus\",\n        -13.008816719055176\n      ],\n      [\n        \"impôt\",\n        -13.008912086486816\n      ],\n      [\n        \"landschaft\",\n        -13.008964538574219\n      ],\n      [\n        \"passion\",\n        -13.00897216796875\n      ],\n      [\n        \"▁Hobby\",\n        -13.009099006652832\n      ],\n      [\n        \"significant\",\n        -13.009115219116211\n      ],\n      [\n        \"▁Guinea\",\n        -13.009209632873535\n      ],\n      [\n        \"pecializing\",\n        -13.009237289428711\n      ],\n      [\n        \"pozitie\",\n        -13.009245872497559\n      ],\n      [\n        \"bourne\",\n        -13.009295463562012\n      ],\n      [\n        \"▁mâini\",\n        -13.00933837890625\n      ],\n      [\n        \"▁CFR\",\n        -13.009395599365234\n      ],\n      [\n        \"▁Konflikt\",\n        -13.009626388549805\n      ],\n      [\n        \"▁Vodafone\",\n        -13.009626388549805\n      ],\n      [\n        \"OUG\",\n        -13.009681701660156\n      ],\n      [\n        \"▁Übersicht\",\n        -13.009735107421875\n      ],\n      [\n        \"negotiated\",\n        -13.009903907775879\n      ],\n      [\n        \"▁gliss\",\n        -13.010042190551758\n      ],\n      [\n        \"▁Kapital\",\n        -13.010111808776855\n      ],\n      [\n        \"QC\",\n        -13.0101318359375\n      ],\n      [\n        \"▁gentleman\",\n        -13.01024341583252\n      ],\n      [\n        \"Inde\",\n        -13.010514259338379\n      ],\n      [\n        \"▁immensely\",\n        -13.010639190673828\n      ],\n      [\n        \"Business\",\n        -13.010702133178711\n      ],\n      [\n        \"▁04/2\",\n        -13.010882377624512\n      ],\n      [\n        \"societatea\",\n        -13.010973930358887\n      ],\n      [\n        \"fluoxetine\",\n        -13.011000633239746\n      ],\n      [\n        \"▁Wachstum\",\n        -13.011000633239746\n      ],\n      [\n        \"▁récit\",\n        -13.011011123657227\n      ],\n      [\n        \"▁Preisvergleich\",\n        -13.011034965515137\n      ],\n      [\n        \"▁Mohammed\",\n        -13.011460304260254\n      ],\n      [\n        \"gefangen\",\n        -13.011462211608887\n      ],\n      [\n        \"▁calibration\",\n        -13.011608123779297\n      ],\n      [\n        \"bekam\",\n        -13.011728286743164\n      ],\n      [\n        \"▁FUN\",\n        -13.011758804321289\n      ],\n      [\n        \"wasting\",\n        -13.011839866638184\n      ],\n      [\n        \"▁prosper\",\n        -13.011862754821777\n      ],\n      [\n        \"▁Afghan\",\n        -13.011919021606445\n      ],\n      [\n        \"▁Heroes\",\n        -13.011921882629395\n      ],\n      [\n        \"▁VMware\",\n        -13.011927604675293\n      ],\n      [\n        \"exception\",\n        -13.011969566345215\n      ],\n      [\n        \"▁înlocui\",\n        -13.01244831085205\n      ],\n      [\n        \"Neu\",\n        -13.01246452331543\n      ],\n      [\n        \"initiation\",\n        -13.01250171661377\n      ],\n      [\n        \"▁Peel\",\n        -13.01281452178955\n      ],\n      [\n        \"▁cunoaste\",\n        -13.012836456298828\n      ],\n      [\n        \"▁menschliche\",\n        -13.012849807739258\n      ],\n      [\n        \"▁poarta\",\n        -13.012852668762207\n      ],\n      [\n        \"▁congestion\",\n        -13.012930870056152\n      ],\n      [\n        \"▁îmbunătăț\",\n        -13.013103485107422\n      ],\n      [\n        \"EUR\",\n        -13.013171195983887\n      ],\n      [\n        \"▁sushi\",\n        -13.01326847076416\n      ],\n      [\n        \"Jährige\",\n        -13.01329517364502\n      ],\n      [\n        \"espoir\",\n        -13.013423919677734\n      ],\n      [\n        \"inspected\",\n        -13.013444900512695\n      ],\n      [\n        \"▁etape\",\n        -13.013677597045898\n      ],\n      [\n        \"▁pharmacist\",\n        -13.013754844665527\n      ],\n      [\n        \"flect\",\n        -13.013840675354004\n      ],\n      [\n        \"Changing\",\n        -13.013932228088379\n      ],\n      [\n        \"▁radiant\",\n        -13.014046669006348\n      ],\n      [\n        \"Daddy\",\n        -13.014275550842285\n      ],\n      [\n        \"▁categorii\",\n        -13.014360427856445\n      ],\n      [\n        \"quête\",\n        -13.014628410339355\n      ],\n      [\n        \"▁skincare\",\n        -13.014657020568848\n      ],\n      [\n        \"hébergement\",\n        -13.014674186706543\n      ],\n      [\n        \"840\",\n        -13.01477336883545\n      ],\n      [\n        \"awaiting\",\n        -13.014822006225586\n      ],\n      [\n        \"▁murdered\",\n        -13.014841079711914\n      ],\n      [\n        \"▁proficient\",\n        -13.014863967895508\n      ],\n      [\n        \"▁chauffe\",\n        -13.014899253845215\n      ],\n      [\n        \"▁contur\",\n        -13.014937400817871\n      ],\n      [\n        \"▁rejoindre\",\n        -13.015145301818848\n      ],\n      [\n        \"▁foloseste\",\n        -13.01521110534668\n      ],\n      [\n        \"▁Grup\",\n        -13.01535701751709\n      ],\n      [\n        \"152\",\n        -13.01541519165039\n      ],\n      [\n        \"▁workspace\",\n        -13.015438079833984\n      ],\n      [\n        \"▁primitive\",\n        -13.015546798706055\n      ],\n      [\n        \"▁Ginger\",\n        -13.015557289123535\n      ],\n      [\n        \"▁chemotherapy\",\n        -13.015595436096191\n      ],\n      [\n        \"▁platinum\",\n        -13.015596389770508\n      ],\n      [\n        \"▁sarcina\",\n        -13.01559829711914\n      ],\n      [\n        \"▁revival\",\n        -13.015820503234863\n      ],\n      [\n        \"▁Meditation\",\n        -13.016111373901367\n      ],\n      [\n        \"▁Vogel\",\n        -13.0161714553833\n      ],\n      [\n        \"IMA\",\n        -13.016359329223633\n      ],\n      [\n        \"▁handset\",\n        -13.016486167907715\n      ],\n      [\n        \"▁Nachmittag\",\n        -13.01651668548584\n      ],\n      [\n        \"▁déchets\",\n        -13.016517639160156\n      ],\n      [\n        \"▁Cornwall\",\n        -13.0165433883667\n      ],\n      [\n        \"▁Curry\",\n        -13.016605377197266\n      ],\n      [\n        \"▁cuplu\",\n        -13.016607284545898\n      ],\n      [\n        \"▁Birth\",\n        -13.016822814941406\n      ],\n      [\n        \"forward\",\n        -13.016936302185059\n      ],\n      [\n        \"Dezvoltare\",\n        -13.016977310180664\n      ],\n      [\n        \"▁irgendwie\",\n        -13.016980171203613\n      ],\n      [\n        \"▁erzielt\",\n        -13.016993522644043\n      ],\n      [\n        \"LOS\",\n        -13.01700496673584\n      ],\n      [\n        \"▁overload\",\n        -13.01708984375\n      ],\n      [\n        \"▁repay\",\n        -13.01713752746582\n      ],\n      [\n        \"urlaub\",\n        -13.017155647277832\n      ],\n      [\n        \"7.0\",\n        -13.01716423034668\n      ],\n      [\n        \"▁Wheat\",\n        -13.01748275756836\n      ],\n      [\n        \"▁degrab\",\n        -13.017488479614258\n      ],\n      [\n        \"▁Brock\",\n        -13.017491340637207\n      ],\n      [\n        \"▁inhabit\",\n        -13.0176362991333\n      ],\n      [\n        \"▁Speech\",\n        -13.017834663391113\n      ],\n      [\n        \"directional\",\n        -13.017862319946289\n      ],\n      [\n        \"▁Mandel\",\n        -13.017909049987793\n      ],\n      [\n        \"▁erscheinen\",\n        -13.01791763305664\n      ],\n      [\n        \"consciously\",\n        -13.018059730529785\n      ],\n      [\n        \"▁sunet\",\n        -13.0182523727417\n      ],\n      [\n        \"▁stole\",\n        -13.018259048461914\n      ],\n      [\n        \"▁Utilis\",\n        -13.018349647521973\n      ],\n      [\n        \"▁obstruction\",\n        -13.01852798461914\n      ],\n      [\n        \"▁mindfulness\",\n        -13.0186767578125\n      ],\n      [\n        \"partnering\",\n        -13.01868724822998\n      ],\n      [\n        \"CSI\",\n        -13.018819808959961\n      ],\n      [\n        \"204\",\n        -13.01905632019043\n      ],\n      [\n        \"▁squirrel\",\n        -13.019286155700684\n      ],\n      [\n        \"▁Rwanda\",\n        -13.01975154876709\n      ],\n      [\n        \"▁hunters\",\n        -13.019850730895996\n      ],\n      [\n        \"▁revitaliz\",\n        -13.02022647857666\n      ],\n      [\n        \"▁avansat\",\n        -13.020232200622559\n      ],\n      [\n        \"▁Yamaha\",\n        -13.020294189453125\n      ],\n      [\n        \"foto\",\n        -13.020435333251953\n      ],\n      [\n        \"▁Vegan\",\n        -13.020469665527344\n      ],\n      [\n        \"▁pitched\",\n        -13.02053165435791\n      ],\n      [\n        \"▁Vortrag\",\n        -13.020540237426758\n      ],\n      [\n        \"traditional\",\n        -13.020809173583984\n      ],\n      [\n        \"offrent\",\n        -13.021024703979492\n      ],\n      [\n        \"▁Expression\",\n        -13.021315574645996\n      ],\n      [\n        \"▁apprécié\",\n        -13.021354675292969\n      ],\n      [\n        \"▁Christina\",\n        -13.021408081054688\n      ],\n      [\n        \"eilig\",\n        -13.021464347839355\n      ],\n      [\n        \"▁verhindern\",\n        -13.021599769592285\n      ],\n      [\n        \"culturii\",\n        -13.021607398986816\n      ],\n      [\n        \"Aşa\",\n        -13.021703720092773\n      ],\n      [\n        \"▁enamel\",\n        -13.021756172180176\n      ],\n      [\n        \"▁fördern\",\n        -13.021771430969238\n      ],\n      [\n        \"▁acheté\",\n        -13.021798133850098\n      ],\n      [\n        \"▁eventuell\",\n        -13.021842956542969\n      ],\n      [\n        \"▁Sino\",\n        -13.021873474121094\n      ],\n      [\n        \"▁totodat\",\n        -13.022008895874023\n      ],\n      [\n        \"accelerated\",\n        -13.022202491760254\n      ],\n      [\n        \"▁strengthened\",\n        -13.02245044708252\n      ],\n      [\n        \"corro\",\n        -13.022482872009277\n      ],\n      [\n        \"4,5\",\n        -13.02253246307373\n      ],\n      [\n        \"▁Beverly\",\n        -13.022533416748047\n      ],\n      [\n        \"ulevard\",\n        -13.022615432739258\n      ],\n      [\n        \"▁hamper\",\n        -13.022644996643066\n      ],\n      [\n        \"▁Tempe\",\n        -13.02268123626709\n      ],\n      [\n        \"▁Yacht\",\n        -13.022799491882324\n      ],\n      [\n        \"▁LGBT\",\n        -13.022871017456055\n      ],\n      [\n        \"▁fingertips\",\n        -13.022991180419922\n      ],\n      [\n        \"▁Auftraggeber\",\n        -13.02299976348877\n      ],\n      [\n        \"▁harbour\",\n        -13.0230131149292\n      ],\n      [\n        \"blew\",\n        -13.0230712890625\n      ],\n      [\n        \"▁ideology\",\n        -13.023115158081055\n      ],\n      [\n        \"▁covenant\",\n        -13.023170471191406\n      ],\n      [\n        \"▁faction\",\n        -13.023419380187988\n      ],\n      [\n        \"▁animé\",\n        -13.023481369018555\n      ],\n      [\n        \"energie\",\n        -13.023515701293945\n      ],\n      [\n        \"iterführende\",\n        -13.02369499206543\n      ],\n      [\n        \"▁MAI\",\n        -13.023784637451172\n      ],\n      [\n        \"▁pluie\",\n        -13.023905754089355\n      ],\n      [\n        \"▁cathedral\",\n        -13.023919105529785\n      ],\n      [\n        \"▁chiropractic\",\n        -13.023919105529785\n      ],\n      [\n        \"monies\",\n        -13.023968696594238\n      ],\n      [\n        \"▁contraction\",\n        -13.024054527282715\n      ],\n      [\n        \"pvc\",\n        -13.024202346801758\n      ],\n      [\n        \"staff\",\n        -13.024209022521973\n      ],\n      [\n        \"BIT\",\n        -13.024216651916504\n      ],\n      [\n        \"EET\",\n        -13.024514198303223\n      ],\n      [\n        \"▁sanction\",\n        -13.024575233459473\n      ],\n      [\n        \"▁Reiki\",\n        -13.024709701538086\n      ],\n      [\n        \"Trying\",\n        -13.024772644042969\n      ],\n      [\n        \"▁endangered\",\n        -13.024847984313965\n      ],\n      [\n        \"▁Emperor\",\n        -13.024849891662598\n      ],\n      [\n        \"▁empfi\",\n        -13.024909973144531\n      ],\n      [\n        \"animation\",\n        -13.024998664855957\n      ],\n      [\n        \"207\",\n        -13.025029182434082\n      ],\n      [\n        \"separating\",\n        -13.02512264251709\n      ],\n      [\n        \"▁lucrative\",\n        -13.025148391723633\n      ],\n      [\n        \"▁ortho\",\n        -13.02524185180664\n      ],\n      [\n        \"variété\",\n        -13.025266647338867\n      ],\n      [\n        \"hésit\",\n        -13.025287628173828\n      ],\n      [\n        \"nuances\",\n        -13.025289535522461\n      ],\n      [\n        \"▁$250\",\n        -13.025394439697266\n      ],\n      [\n        \"▁drumuri\",\n        -13.025435447692871\n      ],\n      [\n        \"▁unsafe\",\n        -13.025446891784668\n      ],\n      [\n        \"▁1943\",\n        -13.025477409362793\n      ],\n      [\n        \"▁automatique\",\n        -13.025524139404297\n      ],\n      [\n        \"billed\",\n        -13.025585174560547\n      ],\n      [\n        \"▁rectangle\",\n        -13.02578067779541\n      ],\n      [\n        \"▁Spannung\",\n        -13.025781631469727\n      ],\n      [\n        \"▁dévoil\",\n        -13.025790214538574\n      ],\n      [\n        \"▁perimeter\",\n        -13.02580738067627\n      ],\n      [\n        \"▁imaginative\",\n        -13.02581787109375\n      ],\n      [\n        \"actifs\",\n        -13.025851249694824\n      ],\n      [\n        \"neuve\",\n        -13.0259428024292\n      ],\n      [\n        \"leagă\",\n        -13.026269912719727\n      ],\n      [\n        \"gehende\",\n        -13.026700973510742\n      ],\n      [\n        \"▁Gorgeous\",\n        -13.026708602905273\n      ],\n      [\n        \"▁impeccable\",\n        -13.026708602905273\n      ],\n      [\n        \"▁Curtain\",\n        -13.026718139648438\n      ],\n      [\n        \"▁presume\",\n        -13.026731491088867\n      ],\n      [\n        \"surpassed\",\n        -13.02687931060791\n      ],\n      [\n        \"schiff\",\n        -13.026927947998047\n      ],\n      [\n        \"Allied\",\n        -13.02699089050293\n      ],\n      [\n        \"fanden\",\n        -13.027080535888672\n      ],\n      [\n        \"▁célébr\",\n        -13.027174949645996\n      ],\n      [\n        \"▁phénomène\",\n        -13.027174949645996\n      ],\n      [\n        \"▁Powell\",\n        -13.027413368225098\n      ],\n      [\n        \"jean\",\n        -13.027631759643555\n      ],\n      [\n        \"▁peculiar\",\n        -13.027640342712402\n      ],\n      [\n        \"▁Antarctic\",\n        -13.027641296386719\n      ],\n      [\n        \"▁gradient\",\n        -13.027663230895996\n      ],\n      [\n        \"▁brainstorm\",\n        -13.027704238891602\n      ],\n      [\n        \"échapp\",\n        -13.027726173400879\n      ],\n      [\n        \"Bot\",\n        -13.027738571166992\n      ],\n      [\n        \"cita\",\n        -13.027743339538574\n      ],\n      [\n        \"▁lumber\",\n        -13.027752876281738\n      ],\n      [\n        \"weichen\",\n        -13.027852058410645\n      ],\n      [\n        \"▁Halte\",\n        -13.028024673461914\n      ],\n      [\n        \"▁noștri\",\n        -13.028107643127441\n      ],\n      [\n        \"construction\",\n        -13.028165817260742\n      ],\n      [\n        \"DOC\",\n        -13.028236389160156\n      ],\n      [\n        \"▁aluat\",\n        -13.028319358825684\n      ],\n      [\n        \"streamlined\",\n        -13.028462409973145\n      ],\n      [\n        \"Bio\",\n        -13.028494834899902\n      ],\n      [\n        \"▁nutritious\",\n        -13.028573036193848\n      ],\n      [\n        \"▁délicat\",\n        -13.0286283493042\n      ],\n      [\n        \"▁sticla\",\n        -13.028656959533691\n      ],\n      [\n        \"OVE\",\n        -13.028721809387207\n      ],\n      [\n        \"▁panneau\",\n        -13.028793334960938\n      ],\n      [\n        \"▁hetero\",\n        -13.028801918029785\n      ],\n      [\n        \"▁annul\",\n        -13.028839111328125\n      ],\n      [\n        \"IDA\",\n        -13.028935432434082\n      ],\n      [\n        \"▁pitches\",\n        -13.028960227966309\n      ],\n      [\n        \"▁Edmonton\",\n        -13.029040336608887\n      ],\n      [\n        \"mediated\",\n        -13.029136657714844\n      ],\n      [\n        \"AFP\",\n        -13.029139518737793\n      ],\n      [\n        \"▁Tibetan\",\n        -13.029228210449219\n      ],\n      [\n        \"intégration\",\n        -13.02934455871582\n      ],\n      [\n        \"▁Rox\",\n        -13.0294771194458\n      ],\n      [\n        \"energia\",\n        -13.02950668334961\n      ],\n      [\n        \"▁reconnaît\",\n        -13.029509544372559\n      ],\n      [\n        \"▁ține\",\n        -13.029525756835938\n      ],\n      [\n        \"▁ignition\",\n        -13.029534339904785\n      ],\n      [\n        \"Foarte\",\n        -13.029541015625\n      ],\n      [\n        \"▁HOME\",\n        -13.029545783996582\n      ],\n      [\n        \"▁MLB\",\n        -13.029545783996582\n      ],\n      [\n        \"▁Wähle\",\n        -13.029590606689453\n      ],\n      [\n        \"▁Merkel\",\n        -13.029658317565918\n      ],\n      [\n        \"poarte\",\n        -13.029664993286133\n      ],\n      [\n        \"ALT\",\n        -13.02979850769043\n      ],\n      [\n        \"jenigen\",\n        -13.029985427856445\n      ],\n      [\n        \"▁conflit\",\n        -13.029987335205078\n      ],\n      [\n        \"▁buckle\",\n        -13.029996871948242\n      ],\n      [\n        \"▁cacao\",\n        -13.030035018920898\n      ],\n      [\n        \"▁représentation\",\n        -13.030076026916504\n      ],\n      [\n        \"incepand\",\n        -13.030267715454102\n      ],\n      [\n        \"▁Carroll\",\n        -13.030306816101074\n      ],\n      [\n        \"▁clientilor\",\n        -13.030370712280273\n      ],\n      [\n        \"▁immunity\",\n        -13.030441284179688\n      ],\n      [\n        \"oût\",\n        -13.03044319152832\n      ],\n      [\n        \"▁Witch\",\n        -13.030488014221191\n      ],\n      [\n        \"▁Wolfgang\",\n        -13.030532836914062\n      ],\n      [\n        \"▁prudent\",\n        -13.030701637268066\n      ],\n      [\n        \"fotograf\",\n        -13.03084945678711\n      ],\n      [\n        \"paar\",\n        -13.030871391296387\n      ],\n      [\n        \"ergeti\",\n        -13.030927658081055\n      ],\n      [\n        \"▁empowerment\",\n        -13.031112670898438\n      ],\n      [\n        \"▁Admir\",\n        -13.03122329711914\n      ],\n      [\n        \"▁complémentaire\",\n        -13.031340599060059\n      ],\n      [\n        \"▁angepasst\",\n        -13.031376838684082\n      ],\n      [\n        \"▁flirt\",\n        -13.031376838684082\n      ],\n      [\n        \"▁elektronische\",\n        -13.031388282775879\n      ],\n      [\n        \"▁stereotype\",\n        -13.03140640258789\n      ],\n      [\n        \"SIL\",\n        -13.031465530395508\n      ],\n      [\n        \"▁Realtor\",\n        -13.031471252441406\n      ],\n      [\n        \"Edit\",\n        -13.031774520874023\n      ],\n      [\n        \"requête\",\n        -13.03181266784668\n      ],\n      [\n        \"▁Herstellung\",\n        -13.031815528869629\n      ],\n      [\n        \"▁cyst\",\n        -13.031947135925293\n      ],\n      [\n        \"syndic\",\n        -13.031994819641113\n      ],\n      [\n        \"leni\",\n        -13.032007217407227\n      ],\n      [\n        \"▁fringe\",\n        -13.032020568847656\n      ],\n      [\n        \"▁Jardin\",\n        -13.032032012939453\n      ],\n      [\n        \"▁Vezi\",\n        -13.032052993774414\n      ],\n      [\n        \"▁Ausstattung\",\n        -13.032312393188477\n      ],\n      [\n        \"▁glide\",\n        -13.032590866088867\n      ],\n      [\n        \"▁Andere\",\n        -13.032758712768555\n      ],\n      [\n        \"▁Haftung\",\n        -13.032781600952148\n      ],\n      [\n        \"maßnahmen\",\n        -13.032788276672363\n      ],\n      [\n        \"▁recommandé\",\n        -13.032790184020996\n      ],\n      [\n        \"▁nave\",\n        -13.032793998718262\n      ],\n      [\n        \"viziune\",\n        -13.033051490783691\n      ],\n      [\n        \"▁stimulus\",\n        -13.033098220825195\n      ],\n      [\n        \"faulty\",\n        -13.0331449508667\n      ],\n      [\n        \"▁vicinity\",\n        -13.033249855041504\n      ],\n      [\n        \"▁turnaround\",\n        -13.033445358276367\n      ],\n      [\n        \"stammt\",\n        -13.033846855163574\n      ],\n      [\n        \"▁problemlos\",\n        -13.033856391906738\n      ],\n      [\n        \"▁Establish\",\n        -13.03415298461914\n      ],\n      [\n        \"▁Silva\",\n        -13.034172058105469\n      ],\n      [\n        \"▁muzică\",\n        -13.034187316894531\n      ],\n      [\n        \"▁theatrical\",\n        -13.03421401977539\n      ],\n      [\n        \"▁braid\",\n        -13.034242630004883\n      ],\n      [\n        \"▁blieb\",\n        -13.034276962280273\n      ],\n      [\n        \"158\",\n        -13.034296989440918\n      ],\n      [\n        \"▁ignorance\",\n        -13.034330368041992\n      ],\n      [\n        \"onset\",\n        -13.034416198730469\n      ],\n      [\n        \"zeitlich\",\n        -13.034523963928223\n      ],\n      [\n        \"▁Sink\",\n        -13.034523963928223\n      ],\n      [\n        \"▁caractéris\",\n        -13.034594535827637\n      ],\n      [\n        \"▁kreative\",\n        -13.03465747833252\n      ],\n      [\n        \"behörde\",\n        -13.034677505493164\n      ],\n      [\n        \"repairing\",\n        -13.034680366516113\n      ],\n      [\n        \"▁tumble\",\n        -13.034757614135742\n      ],\n      [\n        \"zione\",\n        -13.034871101379395\n      ],\n      [\n        \"▁Evil\",\n        -13.03494644165039\n      ],\n      [\n        \"▁popping\",\n        -13.034952163696289\n      ],\n      [\n        \"▁mutant\",\n        -13.035025596618652\n      ],\n      [\n        \"emme\",\n        -13.035030364990234\n      ],\n      [\n        \"▁Pleasant\",\n        -13.035125732421875\n      ],\n      [\n        \"▁appetizer\",\n        -13.035125732421875\n      ],\n      [\n        \"▁PLEASE\",\n        -13.035126686096191\n      ],\n      [\n        \"▁physiological\",\n        -13.035128593444824\n      ],\n      [\n        \"▁Facility\",\n        -13.035131454467773\n      ],\n      [\n        \"▁quirky\",\n        -13.035131454467773\n      ],\n      [\n        \"▁colectiv\",\n        -13.035154342651367\n      ],\n      [\n        \"151\",\n        -13.035181999206543\n      ],\n      [\n        \"August\",\n        -13.03531551361084\n      ],\n      [\n        \"▁Jewelry\",\n        -13.035327911376953\n      ],\n      [\n        \"▁ziar\",\n        -13.035481452941895\n      ],\n      [\n        \"▁puissant\",\n        -13.035489082336426\n      ],\n      [\n        \"▁Argument\",\n        -13.035595893859863\n      ],\n      [\n        \"▁Betracht\",\n        -13.035621643066406\n      ],\n      [\n        \"▁TRANS\",\n        -13.035636901855469\n      ],\n      [\n        \"Exception\",\n        -13.036011695861816\n      ],\n      [\n        \"nosti\",\n        -13.036083221435547\n      ],\n      [\n        \"▁Geographic\",\n        -13.036155700683594\n      ],\n      [\n        \"amazingly\",\n        -13.036173820495605\n      ],\n      [\n        \"▁météo\",\n        -13.036181449890137\n      ],\n      [\n        \"streit\",\n        -13.036314010620117\n      ],\n      [\n        \"▁idle\",\n        -13.036439895629883\n      ],\n      [\n        \"179\",\n        -13.036441802978516\n      ],\n      [\n        \"▁Bremen\",\n        -13.036534309387207\n      ],\n      [\n        \"▁Kläger\",\n        -13.03653621673584\n      ],\n      [\n        \"▁Grammy\",\n        -13.036598205566406\n      ],\n      [\n        \"▁Philosophy\",\n        -13.036613464355469\n      ],\n      [\n        \"▁utilizeaz\",\n        -13.036779403686523\n      ],\n      [\n        \"Accord\",\n        -13.036897659301758\n      ],\n      [\n        \"▁USDA\",\n        -13.036986351013184\n      ],\n      [\n        \"Continuing\",\n        -13.037010192871094\n      ],\n      [\n        \"geschenk\",\n        -13.037178039550781\n      ],\n      [\n        \"kredit\",\n        -13.037248611450195\n      ],\n      [\n        \"Laugh\",\n        -13.037297248840332\n      ],\n      [\n        \"oaring\",\n        -13.037406921386719\n      ],\n      [\n        \"▁Richter\",\n        -13.037460327148438\n      ],\n      [\n        \"▁Figur\",\n        -13.037938117980957\n      ],\n      [\n        \"▁inconsistent\",\n        -13.037947654724121\n      ],\n      [\n        \"cresterea\",\n        -13.038069725036621\n      ],\n      [\n        \"▁regeneration\",\n        -13.038130760192871\n      ],\n      [\n        \"speaking\",\n        -13.03818416595459\n      ],\n      [\n        \"▁nasal\",\n        -13.03824234008789\n      ],\n      [\n        \"▁partagé\",\n        -13.038259506225586\n      ],\n      [\n        \"▁Warranty\",\n        -13.038419723510742\n      ],\n      [\n        \"▁Mueller\",\n        -13.038501739501953\n      ],\n      [\n        \"formează\",\n        -13.038734436035156\n      ],\n      [\n        \"hundert\",\n        -13.038745880126953\n      ],\n      [\n        \"gemeldet\",\n        -13.038893699645996\n      ],\n      [\n        \"▁excursions\",\n        -13.038912773132324\n      ],\n      [\n        \"▁linii\",\n        -13.039066314697266\n      ],\n      [\n        \"gefährlich\",\n        -13.039067268371582\n      ],\n      [\n        \"▁schema\",\n        -13.03907299041748\n      ],\n      [\n        \"nişte\",\n        -13.039131164550781\n      ],\n      [\n        \"▁roadway\",\n        -13.039132118225098\n      ],\n      [\n        \"▁regression\",\n        -13.039135932922363\n      ],\n      [\n        \"▁mână\",\n        -13.039366722106934\n      ],\n      [\n        \"5.3\",\n        -13.039373397827148\n      ],\n      [\n        \"▁Spät\",\n        -13.039734840393066\n      ],\n      [\n        \"▁stubborn\",\n        -13.039833068847656\n      ],\n      [\n        \"efectele\",\n        -13.040030479431152\n      ],\n      [\n        \"▁atenţi\",\n        -13.040136337280273\n      ],\n      [\n        \"▁dovedit\",\n        -13.04018497467041\n      ],\n      [\n        \"▁Agile\",\n        -13.040190696716309\n      ],\n      [\n        \"denying\",\n        -13.04023265838623\n      ],\n      [\n        \"fluss\",\n        -13.040620803833008\n      ],\n      [\n        \"▁Calvin\",\n        -13.04066276550293\n      ],\n      [\n        \"Sculpt\",\n        -13.04083251953125\n      ],\n      [\n        \"égalité\",\n        -13.040884971618652\n      ],\n      [\n        \"ticket\",\n        -13.040977478027344\n      ],\n      [\n        \"marketed\",\n        -13.041044235229492\n      ],\n      [\n        \"holic\",\n        -13.041173934936523\n      ],\n      [\n        \"▁eCommerce\",\n        -13.041346549987793\n      ],\n      [\n        \"▁Slip\",\n        -13.041369438171387\n      ],\n      [\n        \"▁degradation\",\n        -13.041736602783203\n      ],\n      [\n        \"écart\",\n        -13.041742324829102\n      ],\n      [\n        \"AGR\",\n        -13.041807174682617\n      ],\n      [\n        \"▁burglar\",\n        -13.041837692260742\n      ],\n      [\n        \"▁conjug\",\n        -13.041903495788574\n      ],\n      [\n        \"LLP\",\n        -13.04194164276123\n      ],\n      [\n        \"couvrir\",\n        -13.041997909545898\n      ],\n      [\n        \"▁Hearing\",\n        -13.042001724243164\n      ],\n      [\n        \"▁canton\",\n        -13.042006492614746\n      ],\n      [\n        \"▁sixteen\",\n        -13.042068481445312\n      ],\n      [\n        \"▁Verlust\",\n        -13.042097091674805\n      ],\n      [\n        \"allied\",\n        -13.042268753051758\n      ],\n      [\n        \"Performing\",\n        -13.042393684387207\n      ],\n      [\n        \"▁évoqu\",\n        -13.042519569396973\n      ],\n      [\n        \"▁bookstore\",\n        -13.042574882507324\n      ],\n      [\n        \"▁intrebari\",\n        -13.042627334594727\n      ],\n      [\n        \"▁Hyderabad\",\n        -13.042668342590332\n      ],\n      [\n        \"▁repertoire\",\n        -13.042668342590332\n      ],\n      [\n        \"▁cablu\",\n        -13.042678833007812\n      ],\n      [\n        \"▁Costume\",\n        -13.04269790649414\n      ],\n      [\n        \"▁Shannon\",\n        -13.042713165283203\n      ],\n      [\n        \"▁glossy\",\n        -13.042800903320312\n      ],\n      [\n        \"▁cible\",\n        -13.042876243591309\n      ],\n      [\n        \"Saint\",\n        -13.042984008789062\n      ],\n      [\n        \"▁Ultima\",\n        -13.043042182922363\n      ],\n      [\n        \"▁teint\",\n        -13.0432767868042\n      ],\n      [\n        \"▁envision\",\n        -13.043477058410645\n      ],\n      [\n        \"▁thinner\",\n        -13.043478965759277\n      ],\n      [\n        \"ис\",\n        -13.043609619140625\n      ],\n      [\n        \"▁bladder\",\n        -13.043615341186523\n      ],\n      [\n        \"▁Prairie\",\n        -13.043618202209473\n      ],\n      [\n        \"▁puppies\",\n        -13.043633460998535\n      ],\n      [\n        \"▁overweight\",\n        -13.043729782104492\n      ],\n      [\n        \"destined\",\n        -13.043925285339355\n      ],\n      [\n        \"▁addictive\",\n        -13.043935775756836\n      ],\n      [\n        \"▁posé\",\n        -13.043993949890137\n      ],\n      [\n        \"▁mecanism\",\n        -13.044112205505371\n      ],\n      [\n        \"▁chorus\",\n        -13.044466972351074\n      ],\n      [\n        \"weder\",\n        -13.044528007507324\n      ],\n      [\n        \"▁begrüß\",\n        -13.044562339782715\n      ],\n      [\n        \"▁unsuccessful\",\n        -13.044562339782715\n      ],\n      [\n        \"executing\",\n        -13.044564247131348\n      ],\n      [\n        \"▁metadata\",\n        -13.044611930847168\n      ],\n      [\n        \"traiter\",\n        -13.044620513916016\n      ],\n      [\n        \"▁borrowed\",\n        -13.044649124145508\n      ],\n      [\n        \"▁aeroport\",\n        -13.044679641723633\n      ],\n      [\n        \"▁Bibli\",\n        -13.044761657714844\n      ],\n      [\n        \"▁youthful\",\n        -13.044902801513672\n      ],\n      [\n        \"▁Herbert\",\n        -13.044913291931152\n      ],\n      [\n        \"client\",\n        -13.04500961303711\n      ],\n      [\n        \"merci\",\n        -13.04520034790039\n      ],\n      [\n        \"▁Beast\",\n        -13.045210838317871\n      ],\n      [\n        \"▁Entrepreneur\",\n        -13.045230865478516\n      ],\n      [\n        \"▁Gelände\",\n        -13.045256614685059\n      ],\n      [\n        \"▁Packers\",\n        -13.045268058776855\n      ],\n      [\n        \"formarea\",\n        -13.045469284057617\n      ],\n      [\n        \"▁Kündigung\",\n        -13.045511245727539\n      ],\n      [\n        \"▁verdient\",\n        -13.045515060424805\n      ],\n      [\n        \"▁solutie\",\n        -13.045530319213867\n      ],\n      [\n        \"figuration\",\n        -13.045611381530762\n      ],\n      [\n        \"voluntarily\",\n        -13.045622825622559\n      ],\n      [\n        \"Gregor\",\n        -13.045742988586426\n      ],\n      [\n        \"▁Uncle\",\n        -13.04589557647705\n      ],\n      [\n        \"tarifs\",\n        -13.045907020568848\n      ],\n      [\n        \"▁écologique\",\n        -13.045987129211426\n      ],\n      [\n        \"▁Investition\",\n        -13.045991897583008\n      ],\n      [\n        \"exemplar\",\n        -13.046127319335938\n      ],\n      [\n        \"▁prevede\",\n        -13.046144485473633\n      ],\n      [\n        \"▁waive\",\n        -13.046147346496582\n      ],\n      [\n        \"▁Legion\",\n        -13.046156883239746\n      ],\n      [\n        \"similar\",\n        -13.046247482299805\n      ],\n      [\n        \"▁shareholder\",\n        -13.04626750946045\n      ],\n      [\n        \"▁oyster\",\n        -13.046476364135742\n      ],\n      [\n        \"▁Lightning\",\n        -13.046530723571777\n      ],\n      [\n        \"experimenting\",\n        -13.04662799835205\n      ],\n      [\n        \"▁replies\",\n        -13.04663372039795\n      ],\n      [\n        \"80,000\",\n        -13.046757698059082\n      ],\n      [\n        \"▁adept\",\n        -13.04692554473877\n      ],\n      [\n        \"▁Crăciun\",\n        -13.046935081481934\n      ],\n      [\n        \"▁sanatos\",\n        -13.046935081481934\n      ],\n      [\n        \"305\",\n        -13.04699993133545\n      ],\n      [\n        \"specialised\",\n        -13.047069549560547\n      ],\n      [\n        \"▁drummer\",\n        -13.047189712524414\n      ],\n      [\n        \"Applicants\",\n        -13.04741096496582\n      ],\n      [\n        \"objekt\",\n        -13.04741096496582\n      ],\n      [\n        \"▁Fifth\",\n        -13.047446250915527\n      ],\n      [\n        \"rgic\",\n        -13.047567367553711\n      ],\n      [\n        \"theater\",\n        -13.047635078430176\n      ],\n      [\n        \"▁terminé\",\n        -13.047852516174316\n      ],\n      [\n        \"▁Englisch\",\n        -13.047894477844238\n      ],\n      [\n        \"▁Oradea\",\n        -13.047898292541504\n      ],\n      [\n        \"possesses\",\n        -13.0479097366333\n      ],\n      [\n        \"illiers\",\n        -13.047986030578613\n      ],\n      [\n        \"▁refurbish\",\n        -13.048110961914062\n      ],\n      [\n        \"graphie\",\n        -13.04814338684082\n      ],\n      [\n        \"▁Booth\",\n        -13.048174858093262\n      ],\n      [\n        \"▁Ausdruck\",\n        -13.048192977905273\n      ],\n      [\n        \"▁Marriage\",\n        -13.048361778259277\n      ],\n      [\n        \"▁knives\",\n        -13.048362731933594\n      ],\n      [\n        \"▁Relief\",\n        -13.048368453979492\n      ],\n      [\n        \"▁Clerk\",\n        -13.048392295837402\n      ],\n      [\n        \"wait\",\n        -13.048501014709473\n      ],\n      [\n        \"▁probablement\",\n        -13.048698425292969\n      ],\n      [\n        \"▁suplimentar\",\n        -13.048701286315918\n      ],\n      [\n        \"dollar\",\n        -13.048797607421875\n      ],\n      [\n        \"English\",\n        -13.04898452758789\n      ],\n      [\n        \"866\",\n        -13.049300193786621\n      ],\n      [\n        \"▁Savannah\",\n        -13.049314498901367\n      ],\n      [\n        \"▁aftermath\",\n        -13.049318313598633\n      ],\n      [\n        \"phé\",\n        -13.04932689666748\n      ],\n      [\n        \"▁Plum\",\n        -13.049417495727539\n      ],\n      [\n        \"264\",\n        -13.049566268920898\n      ],\n      [\n        \"2.000\",\n        -13.049582481384277\n      ],\n      [\n        \"niei\",\n        -13.049603462219238\n      ],\n      [\n        \"ATP\",\n        -13.049803733825684\n      ],\n      [\n        \"mila\",\n        -13.04985523223877\n      ],\n      [\n        \"▁glut\",\n        -13.049887657165527\n      ],\n      [\n        \"gotta\",\n        -13.049891471862793\n      ],\n      [\n        \"schütt\",\n        -13.049893379211426\n      ],\n      [\n        \"klick\",\n        -13.049996376037598\n      ],\n      [\n        \"whether\",\n        -13.050090789794922\n      ],\n      [\n        \"▁Wade\",\n        -13.050163269042969\n      ],\n      [\n        \"▁Riley\",\n        -13.050280570983887\n      ],\n      [\n        \"Chancellor\",\n        -13.050288200378418\n      ],\n      [\n        \"▁nebun\",\n        -13.050300598144531\n      ],\n      [\n        \"▁aufgebaut\",\n        -13.050374984741211\n      ],\n      [\n        \"steigt\",\n        -13.050423622131348\n      ],\n      [\n        \"▁entirety\",\n        -13.050494194030762\n      ],\n      [\n        \"▁telefoane\",\n        -13.05074691772461\n      ],\n      [\n        \"▁Roulette\",\n        -13.050763130187988\n      ],\n      [\n        \"1700\",\n        -13.050787925720215\n      ],\n      [\n        \"▁lycée\",\n        -13.050856590270996\n      ],\n      [\n        \"rotary\",\n        -13.051128387451172\n      ],\n      [\n        \"benefited\",\n        -13.051170349121094\n      ],\n      [\n        \"▁Bisericii\",\n        -13.051220893859863\n      ],\n      [\n        \"▁Rehabilitation\",\n        -13.051220893859863\n      ],\n      [\n        \"▁lithium\",\n        -13.051228523254395\n      ],\n      [\n        \"imposing\",\n        -13.051279067993164\n      ],\n      [\n        \"176\",\n        -13.051329612731934\n      ],\n      [\n        \"▁thunder\",\n        -13.051527976989746\n      ],\n      [\n        \"ăsesc\",\n        -13.052000045776367\n      ],\n      [\n        \"▁Einblick\",\n        -13.052010536193848\n      ],\n      [\n        \"oiled\",\n        -13.052151679992676\n      ],\n      [\n        \"SSA\",\n        -13.052181243896484\n      ],\n      [\n        \"apparition\",\n        -13.05224609375\n      ],\n      [\n        \"▁Impress\",\n        -13.052273750305176\n      ],\n      [\n        \"▁Aboriginal\",\n        -13.052297592163086\n      ],\n      [\n        \"loos\",\n        -13.052383422851562\n      ],\n      [\n        \"▁Bread\",\n        -13.052440643310547\n      ],\n      [\n        \"177\",\n        -13.052619934082031\n      ],\n      [\n        \"VERS\",\n        -13.052638053894043\n      ],\n      [\n        \"▁Respect\",\n        -13.05271053314209\n      ],\n      [\n        \"▁Practical\",\n        -13.053047180175781\n      ],\n      [\n        \"drafting\",\n        -13.05306339263916\n      ],\n      [\n        \"си\",\n        -13.053099632263184\n      ],\n      [\n        \"▁faza\",\n        -13.053109169006348\n      ],\n      [\n        \"▁sovereign\",\n        -13.053123474121094\n      ],\n      [\n        \"▁Untersuchung\",\n        -13.05314826965332\n      ],\n      [\n        \"▁Niveau\",\n        -13.053154945373535\n      ],\n      [\n        \"transport\",\n        -13.053182601928711\n      ],\n      [\n        \"▁downstream\",\n        -13.053293228149414\n      ],\n      [\n        \"▁Milton\",\n        -13.053383827209473\n      ],\n      [\n        \"▁knob\",\n        -13.053390502929688\n      ],\n      [\n        \"employeur\",\n        -13.053499221801758\n      ],\n      [\n        \"▁furnish\",\n        -13.053544044494629\n      ],\n      [\n        \"weather\",\n        -13.053564071655273\n      ],\n      [\n        \"LAB\",\n        -13.053646087646484\n      ],\n      [\n        \"166\",\n        -13.053853988647461\n      ],\n      [\n        \"▁salaire\",\n        -13.053937911987305\n      ],\n      [\n        \"▁Carnival\",\n        -13.054088592529297\n      ],\n      [\n        \"4-0\",\n        -13.054168701171875\n      ],\n      [\n        \"▁Angle\",\n        -13.054291725158691\n      ],\n      [\n        \"▁José\",\n        -13.054399490356445\n      ],\n      [\n        \"architecture\",\n        -13.054475784301758\n      ],\n      [\n        \"▁Sunset\",\n        -13.054574966430664\n      ],\n      [\n        \"▁Absolut\",\n        -13.054694175720215\n      ],\n      [\n        \"▁herrlich\",\n        -13.05470085144043\n      ],\n      [\n        \"12%\",\n        -13.054703712463379\n      ],\n      [\n        \"▁Indo\",\n        -13.054823875427246\n      ],\n      [\n        \"▁Komfort\",\n        -13.055049896240234\n      ],\n      [\n        \"▁acțiuni\",\n        -13.05505084991455\n      ],\n      [\n        \"energize\",\n        -13.055085182189941\n      ],\n      [\n        \"▁Warning\",\n        -13.055171966552734\n      ],\n      [\n        \"▁Sunny\",\n        -13.055216789245605\n      ],\n      [\n        \"▁razor\",\n        -13.055489540100098\n      ],\n      [\n        \"▁psychic\",\n        -13.055490493774414\n      ],\n      [\n        \"▁convivial\",\n        -13.055525779724121\n      ],\n      [\n        \"Voraussetzungen\",\n        -13.05555534362793\n      ],\n      [\n        \"IMO\",\n        -13.055622100830078\n      ],\n      [\n        \"opérateur\",\n        -13.055743217468262\n      ],\n      [\n        \"▁langjährige\",\n        -13.05575942993164\n      ],\n      [\n        \"▁Spanie\",\n        -13.055901527404785\n      ],\n      [\n        \"pulmonary\",\n        -13.056004524230957\n      ],\n      [\n        \"▁Bingo\",\n        -13.056050300598145\n      ],\n      [\n        \"▁confession\",\n        -13.056096076965332\n      ],\n      [\n        \"▁Petru\",\n        -13.056100845336914\n      ],\n      [\n        \"▁prerequisite\",\n        -13.056164741516113\n      ],\n      [\n        \"▁dodge\",\n        -13.056352615356445\n      ],\n      [\n        \"▁McN\",\n        -13.056436538696289\n      ],\n      [\n        \"▁originate\",\n        -13.056577682495117\n      ],\n      [\n        \"▁nettoy\",\n        -13.056612014770508\n      ],\n      [\n        \"▁$14\",\n        -13.056645393371582\n      ],\n      [\n        \"▁Bride\",\n        -13.05669116973877\n      ],\n      [\n        \"▁noisy\",\n        -13.05673885345459\n      ],\n      [\n        \"▁Worcester\",\n        -13.056963920593262\n      ],\n      [\n        \"▁Surrey\",\n        -13.056982040405273\n      ],\n      [\n        \"harmonis\",\n        -13.057110786437988\n      ],\n      [\n        \"▁représentant\",\n        -13.057304382324219\n      ],\n      [\n        \"organisée\",\n        -13.057475090026855\n      ],\n      [\n        \"truction\",\n        -13.057513236999512\n      ],\n      [\n        \"injected\",\n        -13.057597160339355\n      ],\n      [\n        \"▁Suzuki\",\n        -13.057924270629883\n      ],\n      [\n        \"▁japonais\",\n        -13.057924270629883\n      ],\n      [\n        \"▁turquoise\",\n        -13.057924270629883\n      ],\n      [\n        \"▁Peut\",\n        -13.058004379272461\n      ],\n      [\n        \"▁Sequ\",\n        -13.058028221130371\n      ],\n      [\n        \"slated\",\n        -13.058037757873535\n      ],\n      [\n        \"▁Alma\",\n        -13.058215141296387\n      ],\n      [\n        \"▁gebraucht\",\n        -13.05827522277832\n      ],\n      [\n        \"gängig\",\n        -13.058281898498535\n      ],\n      [\n        \"▁commis\",\n        -13.058377265930176\n      ],\n      [\n        \"ACS\",\n        -13.05856990814209\n      ],\n      [\n        \"pressure\",\n        -13.058664321899414\n      ],\n      [\n        \"cured\",\n        -13.05874252319336\n      ],\n      [\n        \"▁Jackie\",\n        -13.058757781982422\n      ],\n      [\n        \"▁Kashmir\",\n        -13.05888557434082\n      ],\n      [\n        \"▁recruited\",\n        -13.059000968933105\n      ],\n      [\n        \"▁vécu\",\n        -13.059011459350586\n      ],\n      [\n        \"▁opus\",\n        -13.059052467346191\n      ],\n      [\n        \"kWh\",\n        -13.05927562713623\n      ],\n      [\n        \"▁tapping\",\n        -13.059292793273926\n      ],\n      [\n        \"▁tehnologie\",\n        -13.05931282043457\n      ],\n      [\n        \"▁Gentle\",\n        -13.059365272521973\n      ],\n      [\n        \"▁bombard\",\n        -13.059372901916504\n      ],\n      [\n        \"▁caméra\",\n        -13.059427261352539\n      ],\n      [\n        \"züglich\",\n        -13.059431076049805\n      ],\n      [\n        \"▁bingo\",\n        -13.059453010559082\n      ],\n      [\n        \"private\",\n        -13.059496879577637\n      ],\n      [\n        \"▁mediator\",\n        -13.059642791748047\n      ],\n      [\n        \"▁carbohydrates\",\n        -13.059847831726074\n      ],\n      [\n        \"▁workmanship\",\n        -13.059849739074707\n      ],\n      [\n        \"▁Combat\",\n        -13.059853553771973\n      ],\n      [\n        \"▁Mickey\",\n        -13.059901237487793\n      ],\n      [\n        \"▁distressed\",\n        -13.059908866882324\n      ],\n      [\n        \"lucrează\",\n        -13.059924125671387\n      ],\n      [\n        \"treatment\",\n        -13.06007194519043\n      ],\n      [\n        \"▁Einwohner\",\n        -13.060330390930176\n      ],\n      [\n        \"▁glaze\",\n        -13.060386657714844\n      ],\n      [\n        \"scholarly\",\n        -13.06043529510498\n      ],\n      [\n        \"ROC\",\n        -13.060750007629395\n      ],\n      [\n        \"▁Darwin\",\n        -13.060774803161621\n      ],\n      [\n        \"drückt\",\n        -13.060775756835938\n      ],\n      [\n        \"▁treadmill\",\n        -13.060819625854492\n      ],\n      [\n        \"ntz\",\n        -13.060830116271973\n      ],\n      [\n        \"620\",\n        -13.061087608337402\n      ],\n      [\n        \"surface\",\n        -13.061148643493652\n      ],\n      [\n        \"▁vieţii\",\n        -13.0612211227417\n      ],\n      [\n        \"990\",\n        -13.061296463012695\n      ],\n      [\n        \"▁doigt\",\n        -13.061341285705566\n      ],\n      [\n        \"▁explor\",\n        -13.061450004577637\n      ],\n      [\n        \"▁asistent\",\n        -13.061670303344727\n      ],\n      [\n        \"coloriage\",\n        -13.061734199523926\n      ],\n      [\n        \"▁Martinez\",\n        -13.061758041381836\n      ],\n      [\n        \"▁antibodies\",\n        -13.061775207519531\n      ],\n      [\n        \"Schülerinnen\",\n        -13.061779975891113\n      ],\n      [\n        \"Honestly\",\n        -13.06178092956543\n      ],\n      [\n        \"grabbing\",\n        -13.061871528625488\n      ],\n      [\n        \"▁Cardiff\",\n        -13.061897277832031\n      ],\n      [\n        \"▁Trophy\",\n        -13.062084197998047\n      ],\n      [\n        \"▁pupil\",\n        -13.062117576599121\n      ],\n      [\n        \"▁invoke\",\n        -13.062161445617676\n      ],\n      [\n        \"bezüglich\",\n        -13.062193870544434\n      ],\n      [\n        \"Anschließend\",\n        -13.062275886535645\n      ],\n      [\n        \"perks\",\n        -13.062360763549805\n      ],\n      [\n        \"530\",\n        -13.062373161315918\n      ],\n      [\n        \"▁emblem\",\n        -13.062431335449219\n      ],\n      [\n        \"770\",\n        -13.062543869018555\n      ],\n      [\n        \"clairement\",\n        -13.062590599060059\n      ],\n      [\n        \"▁sublinia\",\n        -13.062597274780273\n      ],\n      [\n        \"▁1910\",\n        -13.062719345092773\n      ],\n      [\n        \"▁Embassy\",\n        -13.062740325927734\n      ],\n      [\n        \"▁Valencia\",\n        -13.062740325927734\n      ],\n      [\n        \"▁catastrophic\",\n        -13.062740325927734\n      ],\n      [\n        \"▁simulator\",\n        -13.06274700164795\n      ],\n      [\n        \"Pierre\",\n        -13.062766075134277\n      ],\n      [\n        \"▁doorstep\",\n        -13.062806129455566\n      ],\n      [\n        \"▁rallie\",\n        -13.062881469726562\n      ],\n      [\n        \"▁șans\",\n        -13.062891960144043\n      ],\n      [\n        \"▁crosses\",\n        -13.06300163269043\n      ],\n      [\n        \"▁zodi\",\n        -13.06312084197998\n      ],\n      [\n        \"Next\",\n        -13.06314754486084\n      ],\n      [\n        \"▁rebuilt\",\n        -13.063152313232422\n      ],\n      [\n        \"▁panorama\",\n        -13.063222885131836\n      ],\n      [\n        \"196\",\n        -13.06324291229248\n      ],\n      [\n        \"▁erinnert\",\n        -13.06370735168457\n      ],\n      [\n        \"lism\",\n        -13.06371784210205\n      ],\n      [\n        \"opened\",\n        -13.06383228302002\n      ],\n      [\n        \"▁breakout\",\n        -13.064126014709473\n      ],\n      [\n        \"▁mosque\",\n        -13.064153671264648\n      ],\n      [\n        \"boc\",\n        -13.064507484436035\n      ],\n      [\n        \"▁grout\",\n        -13.064568519592285\n      ],\n      [\n        \"▁Gather\",\n        -13.064582824707031\n      ],\n      [\n        \"▁vampire\",\n        -13.06467342376709\n      ],\n      [\n        \"▁tandem\",\n        -13.064684867858887\n      ],\n      [\n        \"▁pastra\",\n        -13.064702033996582\n      ],\n      [\n        \"▁lösen\",\n        -13.064794540405273\n      ],\n      [\n        \"▁discontinu\",\n        -13.064826965332031\n      ],\n      [\n        \"fuses\",\n        -13.064885139465332\n      ],\n      [\n        \"▁identitate\",\n        -13.064947128295898\n      ],\n      [\n        \"BAC\",\n        -13.064964294433594\n      ],\n      [\n        \"▁$100,000\",\n        -13.065122604370117\n      ],\n      [\n        \"Finder\",\n        -13.06515121459961\n      ],\n      [\n        \"▁Leicester\",\n        -13.065157890319824\n      ],\n      [\n        \"▁1933\",\n        -13.065159797668457\n      ],\n      [\n        \"informatiile\",\n        -13.065234184265137\n      ],\n      [\n        \"lädt\",\n        -13.065309524536133\n      ],\n      [\n        \"iggle\",\n        -13.065399169921875\n      ],\n      [\n        \"▁Discuss\",\n        -13.065462112426758\n      ],\n      [\n        \"distributing\",\n        -13.065470695495605\n      ],\n      [\n        \"▁disappoint\",\n        -13.065475463867188\n      ],\n      [\n        \"ecţia\",\n        -13.065611839294434\n      ],\n      [\n        \"▁condiment\",\n        -13.065640449523926\n      ],\n      [\n        \"▁Marriott\",\n        -13.065642356872559\n      ],\n      [\n        \"▁entspannt\",\n        -13.065644264221191\n      ],\n      [\n        \"arbitrary\",\n        -13.06564998626709\n      ],\n      [\n        \"rühren\",\n        -13.06574821472168\n      ],\n      [\n        \"Intensiv\",\n        -13.065771102905273\n      ],\n      [\n        \"eliminare\",\n        -13.065895080566406\n      ],\n      [\n        \"muster\",\n        -13.06594467163086\n      ],\n      [\n        \"▁komplexe\",\n        -13.066130638122559\n      ],\n      [\n        \"▁(2008)\",\n        -13.066184997558594\n      ],\n      [\n        \"absolument\",\n        -13.066349029541016\n      ],\n      [\n        \"aloo\",\n        -13.066420555114746\n      ],\n      [\n        \"cererea\",\n        -13.06655216217041\n      ],\n      [\n        \"▁imobiliar\",\n        -13.066696166992188\n      ],\n      [\n        \"▁paramount\",\n        -13.066705703735352\n      ],\n      [\n        \"▁Vince\",\n        -13.066723823547363\n      ],\n      [\n        \"pov\",\n        -13.067076683044434\n      ],\n      [\n        \"▁conveyor\",\n        -13.067549705505371\n      ],\n      [\n        \"▁Natalie\",\n        -13.067583084106445\n      ],\n      [\n        \"▁Comedy\",\n        -13.067623138427734\n      ],\n      [\n        \"Developing\",\n        -13.0678129196167\n      ],\n      [\n        \"disputed\",\n        -13.067878723144531\n      ],\n      [\n        \"164\",\n        -13.067911148071289\n      ],\n      [\n        \"▁Communist\",\n        -13.067949295043945\n      ],\n      [\n        \"▁Bahnhof\",\n        -13.06806468963623\n      ],\n      [\n        \"dokument\",\n        -13.068145751953125\n      ],\n      [\n        \"▁Somali\",\n        -13.06828498840332\n      ],\n      [\n        \"▁Strasbourg\",\n        -13.068503379821777\n      ],\n      [\n        \"▁Technician\",\n        -13.068550109863281\n      ],\n      [\n        \"▁subsidies\",\n        -13.068633079528809\n      ],\n      [\n        \"judeţul\",\n        -13.068723678588867\n      ],\n      [\n        \"▁bible\",\n        -13.068769454956055\n      ],\n      [\n        \"gefahren\",\n        -13.068855285644531\n      ],\n      [\n        \"▁literal\",\n        -13.068882942199707\n      ],\n      [\n        \"▁diminish\",\n        -13.068940162658691\n      ],\n      [\n        \"Sfântul\",\n        -13.0689697265625\n      ],\n      [\n        \"▁doreșt\",\n        -13.068978309631348\n      ],\n      [\n        \"▁Xiaomi\",\n        -13.069036483764648\n      ],\n      [\n        \"▁planète\",\n        -13.069130897521973\n      ],\n      [\n        \"▁LTD\",\n        -13.069175720214844\n      ],\n      [\n        \"▁Zugriff\",\n        -13.069196701049805\n      ],\n      [\n        \"beginn\",\n        -13.06921672821045\n      ],\n      [\n        \"▁Einführung\",\n        -13.069294929504395\n      ],\n      [\n        \"▁coronar\",\n        -13.069393157958984\n      ],\n      [\n        \"lomi\",\n        -13.0693941116333\n      ],\n      [\n        \"▁Accueil\",\n        -13.0695219039917\n      ],\n      [\n        \"scanned\",\n        -13.069528579711914\n      ],\n      [\n        \"▁Banque\",\n        -13.06952953338623\n      ],\n      [\n        \"▁réaction\",\n        -13.069531440734863\n      ],\n      [\n        \"▁Hoffman\",\n        -13.069546699523926\n      ],\n      [\n        \"▁merveille\",\n        -13.069637298583984\n      ],\n      [\n        \"navigating\",\n        -13.069719314575195\n      ],\n      [\n        \"schalten\",\n        -13.06984806060791\n      ],\n      [\n        \"▁ieşi\",\n        -13.070136070251465\n      ],\n      [\n        \"1-6\",\n        -13.070175170898438\n      ],\n      [\n        \"▁frustr\",\n        -13.070670127868652\n      ],\n      [\n        \"▁réfléchi\",\n        -13.0709810256958\n      ],\n      [\n        \"▁difuz\",\n        -13.071100234985352\n      ],\n      [\n        \"▁freue\",\n        -13.07121753692627\n      ],\n      [\n        \"besuch\",\n        -13.071349143981934\n      ],\n      [\n        \"153\",\n        -13.071386337280273\n      ],\n      [\n        \"▁butterflies\",\n        -13.071467399597168\n      ],\n      [\n        \"▁terrifying\",\n        -13.071467399597168\n      ],\n      [\n        \"▁încuraj\",\n        -13.071468353271484\n      ],\n      [\n        \"▁Château\",\n        -13.071470260620117\n      ],\n      [\n        \"▁contingent\",\n        -13.071474075317383\n      ],\n      [\n        \"▁abusive\",\n        -13.0714750289917\n      ],\n      [\n        \"▁SharePoint\",\n        -13.07148551940918\n      ],\n      [\n        \"▁skating\",\n        -13.071573257446289\n      ],\n      [\n        \"▁militaire\",\n        -13.07166576385498\n      ],\n      [\n        \"▁Vig\",\n        -13.071690559387207\n      ],\n      [\n        \"omics\",\n        -13.071840286254883\n      ],\n      [\n        \"▁Blockchain\",\n        -13.07197093963623\n      ],\n      [\n        \"▁principii\",\n        -13.071975708007812\n      ],\n      [\n        \"▁permitting\",\n        -13.071979522705078\n      ],\n      [\n        \"optimisation\",\n        -13.072270393371582\n      ],\n      [\n        \"▁maintien\",\n        -13.072328567504883\n      ],\n      [\n        \"▁Aluminum\",\n        -13.072442054748535\n      ],\n      [\n        \"▁Plymouth\",\n        -13.072443008422852\n      ],\n      [\n        \"▁Weiterbildung\",\n        -13.072457313537598\n      ],\n      [\n        \"▁Finanzierung\",\n        -13.072505950927734\n      ],\n      [\n        \"▁Kerala\",\n        -13.072514533996582\n      ],\n      [\n        \"insulated\",\n        -13.072668075561523\n      ],\n      [\n        \"▁loaf\",\n        -13.072802543640137\n      ],\n      [\n        \"▁Sammlung\",\n        -13.072929382324219\n      ],\n      [\n        \"▁îndepărt\",\n        -13.072930335998535\n      ],\n      [\n        \"▁Gewerbe\",\n        -13.072942733764648\n      ],\n      [\n        \"udel\",\n        -13.072988510131836\n      ],\n      [\n        \"▁coursework\",\n        -13.073104858398438\n      ],\n      [\n        \"▁Darstellung\",\n        -13.073246002197266\n      ],\n      [\n        \"▁indeplin\",\n        -13.073433876037598\n      ],\n      [\n        \"▁Gandhi\",\n        -13.073434829711914\n      ],\n      [\n        \"tossed\",\n        -13.07361888885498\n      ],\n      [\n        \"ewed\",\n        -13.073844909667969\n      ],\n      [\n        \"▁classement\",\n        -13.073884963989258\n      ],\n      [\n        \"▁Protestant\",\n        -13.073905944824219\n      ],\n      [\n        \"▁frumoasă\",\n        -13.073905944824219\n      ],\n      [\n        \"▁pantalon\",\n        -13.073906898498535\n      ],\n      [\n        \"▁rivet\",\n        -13.073966979980469\n      ],\n      [\n        \"▁Echt\",\n        -13.0741605758667\n      ],\n      [\n        \"erviciului\",\n        -13.07421588897705\n      ],\n      [\n        \"fabricated\",\n        -13.074322700500488\n      ],\n      [\n        \"Compania\",\n        -13.074372291564941\n      ],\n      [\n        \"▁juvenile\",\n        -13.074394226074219\n      ],\n      [\n        \"▁souligne\",\n        -13.07444953918457\n      ],\n      [\n        \"▁chrono\",\n        -13.07447338104248\n      ],\n      [\n        \"▁VII\",\n        -13.074594497680664\n      ],\n      [\n        \"▁Kirch\",\n        -13.074714660644531\n      ],\n      [\n        \"catcher\",\n        -13.075014114379883\n      ],\n      [\n        \"salv\",\n        -13.075263023376465\n      ],\n      [\n        \"▁Enforcement\",\n        -13.075370788574219\n      ],\n      [\n        \"▁Penguin\",\n        -13.075410842895508\n      ],\n      [\n        \"kowski\",\n        -13.075465202331543\n      ],\n      [\n        \"▁2:1\",\n        -13.075470924377441\n      ],\n      [\n        \"gesundheit\",\n        -13.075475692749023\n      ],\n      [\n        \"▁unveil\",\n        -13.075519561767578\n      ],\n      [\n        \"bending\",\n        -13.075531959533691\n      ],\n      [\n        \"▁conecta\",\n        -13.075579643249512\n      ],\n      [\n        \"▁faim\",\n        -13.075885772705078\n      ],\n      [\n        \"▁MacBook\",\n        -13.075969696044922\n      ],\n      [\n        \"versuch\",\n        -13.07600212097168\n      ],\n      [\n        \"▁regiuni\",\n        -13.076029777526855\n      ],\n      [\n        \"▁Willow\",\n        -13.076184272766113\n      ],\n      [\n        \"▁finanziell\",\n        -13.076303482055664\n      ],\n      [\n        \"▁nurturing\",\n        -13.076354026794434\n      ],\n      [\n        \"impuls\",\n        -13.076370239257812\n      ],\n      [\n        \"▁funktionieren\",\n        -13.076371192932129\n      ],\n      [\n        \"▁rezult\",\n        -13.076554298400879\n      ],\n      [\n        \"▁spui\",\n        -13.076593399047852\n      ],\n      [\n        \"▁walkway\",\n        -13.076653480529785\n      ],\n      [\n        \"▁Rauch\",\n        -13.076708793640137\n      ],\n      [\n        \"169\",\n        -13.076793670654297\n      ],\n      [\n        \"610\",\n        -13.076863288879395\n      ],\n      [\n        \"▁scazut\",\n        -13.0773286819458\n      ],\n      [\n        \"▁Garrett\",\n        -13.077329635620117\n      ],\n      [\n        \"▁necesită\",\n        -13.077352523803711\n      ],\n      [\n        \"Articolul\",\n        -13.077364921569824\n      ],\n      [\n        \"numită\",\n        -13.077371597290039\n      ],\n      [\n        \"Coastal\",\n        -13.077383041381836\n      ],\n      [\n        \"▁canned\",\n        -13.077421188354492\n      ],\n      [\n        \"▁Friendly\",\n        -13.077499389648438\n      ],\n      [\n        \"dissolved\",\n        -13.0775728225708\n      ],\n      [\n        \"seid\",\n        -13.077674865722656\n      ],\n      [\n        \"▁feminin\",\n        -13.077685356140137\n      ],\n      [\n        \"▁fetch\",\n        -13.077710151672363\n      ],\n      [\n        \"▁Accent\",\n        -13.077767372131348\n      ],\n      [\n        \"phrase\",\n        -13.077771186828613\n      ],\n      [\n        \"effekt\",\n        -13.077775955200195\n      ],\n      [\n        \"▁Progressive\",\n        -13.077777862548828\n      ],\n      [\n        \"▁canadien\",\n        -13.077820777893066\n      ],\n      [\n        \"iety\",\n        -13.077839851379395\n      ],\n      [\n        \"eignen\",\n        -13.077984809875488\n      ],\n      [\n        \"paraître\",\n        -13.07812213897705\n      ],\n      [\n        \"▁asylum\",\n        -13.07833194732666\n      ],\n      [\n        \"▁Albany\",\n        -13.078362464904785\n      ],\n      [\n        \"▁remis\",\n        -13.078386306762695\n      ],\n      [\n        \"▁Joyce\",\n        -13.078664779663086\n      ],\n      [\n        \"schätzt\",\n        -13.078784942626953\n      ],\n      [\n        \"▁begleiten\",\n        -13.078801155090332\n      ],\n      [\n        \"▁Siemens\",\n        -13.079007148742676\n      ],\n      [\n        \"▁schlimm\",\n        -13.079061508178711\n      ],\n      [\n        \"▁Libra\",\n        -13.079254150390625\n      ],\n      [\n        \"▁Composite\",\n        -13.079290390014648\n      ],\n      [\n        \"▁écr\",\n        -13.079315185546875\n      ],\n      [\n        \"disciplina\",\n        -13.079379081726074\n      ],\n      [\n        \"▁premature\",\n        -13.079630851745605\n      ],\n      [\n        \"▁scopuri\",\n        -13.079681396484375\n      ],\n      [\n        \"ffnung\",\n        -13.079715728759766\n      ],\n      [\n        \"7000\",\n        -13.079726219177246\n      ],\n      [\n        \"▁conséquent\",\n        -13.079780578613281\n      ],\n      [\n        \"▁côte\",\n        -13.079787254333496\n      ],\n      [\n        \"celul\",\n        -13.079872131347656\n      ],\n      [\n        \"▁fourteen\",\n        -13.079940795898438\n      ],\n      [\n        \"▁Riverside\",\n        -13.080077171325684\n      ],\n      [\n        \"gemacht\",\n        -13.08013916015625\n      ],\n      [\n        \"▁volcanic\",\n        -13.080272674560547\n      ],\n      [\n        \"▁Salesforce\",\n        -13.080315589904785\n      ],\n      [\n        \"▁Granite\",\n        -13.080317497253418\n      ],\n      [\n        \"▁Zentral\",\n        -13.080329895019531\n      ],\n      [\n        \"▁Female\",\n        -13.080341339111328\n      ],\n      [\n        \"▁culmin\",\n        -13.08047103881836\n      ],\n      [\n        \"▁urmatoare\",\n        -13.080547332763672\n      ],\n      [\n        \"toxicity\",\n        -13.080560684204102\n      ],\n      [\n        \"▁mâna\",\n        -13.080678939819336\n      ],\n      [\n        \"▁Umfang\",\n        -13.080764770507812\n      ],\n      [\n        \"▁Encore\",\n        -13.08077621459961\n      ],\n      [\n        \"▁Edgar\",\n        -13.080831527709961\n      ],\n      [\n        \"▁négoci\",\n        -13.080852508544922\n      ],\n      [\n        \"njeux\",\n        -13.080873489379883\n      ],\n      [\n        \"▁variance\",\n        -13.080917358398438\n      ],\n      [\n        \"▁Functional\",\n        -13.080973625183105\n      ],\n      [\n        \"172\",\n        -13.081046104431152\n      ],\n      [\n        \"▁dissolve\",\n        -13.0811185836792\n      ],\n      [\n        \"förderung\",\n        -13.081188201904297\n      ],\n      [\n        \"▁Brilliant\",\n        -13.081254959106445\n      ],\n      [\n        \"▁comprehension\",\n        -13.081254959106445\n      ],\n      [\n        \"▁soybean\",\n        -13.081254959106445\n      ],\n      [\n        \"▁standalone\",\n        -13.081255912780762\n      ],\n      [\n        \"▁Communi\",\n        -13.081303596496582\n      ],\n      [\n        \"▁ajut\",\n        -13.081313133239746\n      ],\n      [\n        \"▁lavish\",\n        -13.081338882446289\n      ],\n      [\n        \"Ouest\",\n        -13.081384658813477\n      ],\n      [\n        \"▁Maggie\",\n        -13.081385612487793\n      ],\n      [\n        \"▁evolutionary\",\n        -13.081550598144531\n      ],\n      [\n        \"bowel\",\n        -13.081575393676758\n      ],\n      [\n        \"▁glyco\",\n        -13.081626892089844\n      ],\n      [\n        \"▁Happi\",\n        -13.081706047058105\n      ],\n      [\n        \"organising\",\n        -13.081710815429688\n      ],\n      [\n        \"▁übernimm\",\n        -13.081727027893066\n      ],\n      [\n        \"▁snowboard\",\n        -13.081793785095215\n      ],\n      [\n        \"▁prévention\",\n        -13.081830024719238\n      ],\n      [\n        \"▁Celebrate\",\n        -13.082160949707031\n      ],\n      [\n        \"▁pottery\",\n        -13.082254409790039\n      ],\n      [\n        \"▁Outstanding\",\n        -13.082328796386719\n      ],\n      [\n        \"▁toamna\",\n        -13.082331657409668\n      ],\n      [\n        \"▁graceful\",\n        -13.082548141479492\n      ],\n      [\n        \"197\",\n        -13.082559585571289\n      ],\n      [\n        \"strecke\",\n        -13.082598686218262\n      ],\n      [\n        \"▁medizinische\",\n        -13.082733154296875\n      ],\n      [\n        \"216\",\n        -13.082839965820312\n      ],\n      [\n        \"▁prune\",\n        -13.082868576049805\n      ],\n      [\n        \"Pourtant\",\n        -13.083000183105469\n      ],\n      [\n        \"▁Difference\",\n        -13.083224296569824\n      ],\n      [\n        \"▁factura\",\n        -13.083830833435059\n      ],\n      [\n        \"Mass\",\n        -13.084161758422852\n      ],\n      [\n        \"▁Enhanc\",\n        -13.084190368652344\n      ],\n      [\n        \"upholstered\",\n        -13.084209442138672\n      ],\n      [\n        \"▁übernommen\",\n        -13.084209442138672\n      ],\n      [\n        \"▁mitigation\",\n        -13.084210395812988\n      ],\n      [\n        \"▁Hidden\",\n        -13.084219932556152\n      ],\n      [\n        \"▁Häuser\",\n        -13.084234237670898\n      ],\n      [\n        \"▁Pavel\",\n        -13.084403991699219\n      ],\n      [\n        \"▁congress\",\n        -13.084512710571289\n      ],\n      [\n        \"▁antibody\",\n        -13.084598541259766\n      ],\n      [\n        \"▁stitches\",\n        -13.084811210632324\n      ],\n      [\n        \"▁colonies\",\n        -13.084820747375488\n      ],\n      [\n        \"Into\",\n        -13.084900856018066\n      ],\n      [\n        \"▁démo\",\n        -13.084924697875977\n      ],\n      [\n        \"▁MVP\",\n        -13.085041046142578\n      ],\n      [\n        \"▁replay\",\n        -13.085062026977539\n      ],\n      [\n        \"▁usoara\",\n        -13.08522891998291\n      ],\n      [\n        \"▁Breast\",\n        -13.085278511047363\n      ],\n      [\n        \"ooney\",\n        -13.085336685180664\n      ],\n      [\n        \"▁außen\",\n        -13.085663795471191\n      ],\n      [\n        \"▁Motorola\",\n        -13.085695266723633\n      ],\n      [\n        \"▁spalat\",\n        -13.08578109741211\n      ],\n      [\n        \"euillez\",\n        -13.086088180541992\n      ],\n      [\n        \"▁jeunesse\",\n        -13.086170196533203\n      ],\n      [\n        \"▁pastoral\",\n        -13.086174011230469\n      ],\n      [\n        \"▁Sussex\",\n        -13.086185455322266\n      ],\n      [\n        \"▁stencil\",\n        -13.08619213104248\n      ],\n      [\n        \"▁organismului\",\n        -13.086504936218262\n      ],\n      [\n        \"seized\",\n        -13.086649894714355\n      ],\n      [\n        \"▁întrebare\",\n        -13.086865425109863\n      ],\n      [\n        \"cliquez\",\n        -13.086874961853027\n      ],\n      [\n        \"5.7\",\n        -13.086984634399414\n      ],\n      [\n        \"▁Yama\",\n        -13.087080955505371\n      ],\n      [\n        \"painted\",\n        -13.08708667755127\n      ],\n      [\n        \"▁Swimming\",\n        -13.087176322937012\n      ],\n      [\n        \"Rhythm\",\n        -13.087202072143555\n      ],\n      [\n        \"▁sorrow\",\n        -13.087210655212402\n      ],\n      [\n        \"▁Movers\",\n        -13.08731460571289\n      ],\n      [\n        \"renforcer\",\n        -13.08735466003418\n      ],\n      [\n        \"▁Wach\",\n        -13.087381362915039\n      ],\n      [\n        \"0,00\",\n        -13.087390899658203\n      ],\n      [\n        \"▁glove\",\n        -13.08753490447998\n      ],\n      [\n        \"▁stâng\",\n        -13.087669372558594\n      ],\n      [\n        \"rgendwann\",\n        -13.087687492370605\n      ],\n      [\n        \"▁Philippine\",\n        -13.08769416809082\n      ],\n      [\n        \"▁anunțat\",\n        -13.087716102600098\n      ],\n      [\n        \"▁Coleman\",\n        -13.087723731994629\n      ],\n      [\n        \"affir\",\n        -13.087918281555176\n      ],\n      [\n        \"uleiul\",\n        -13.08808422088623\n      ],\n      [\n        \"▁Coconut\",\n        -13.088197708129883\n      ],\n      [\n        \"▁Supplement\",\n        -13.088210105895996\n      ],\n      [\n        \"haudiere\",\n        -13.088293075561523\n      ],\n      [\n        \"▁kettle\",\n        -13.088313102722168\n      ],\n      [\n        \"▁3,5\",\n        -13.088370323181152\n      ],\n      [\n        \"refurbished\",\n        -13.088425636291504\n      ],\n      [\n        \"esthétique\",\n        -13.088665962219238\n      ],\n      [\n        \"performing\",\n        -13.088667869567871\n      ],\n      [\n        \"▁Engag\",\n        -13.088762283325195\n      ],\n      [\n        \"Group\",\n        -13.088801383972168\n      ],\n      [\n        \"▁viande\",\n        -13.088887214660645\n      ],\n      [\n        \"▁oricum\",\n        -13.088888168334961\n      ],\n      [\n        \"Spitalul\",\n        -13.089093208312988\n      ],\n      [\n        \"▁cesse\",\n        -13.089110374450684\n      ],\n      [\n        \"▁contradiction\",\n        -13.089130401611328\n      ],\n      [\n        \"▁Chrysler\",\n        -13.089154243469238\n      ],\n      [\n        \"▁poultry\",\n        -13.089154243469238\n      ],\n      [\n        \"▁thirteen\",\n        -13.089154243469238\n      ],\n      [\n        \"▁sightseeing\",\n        -13.089155197143555\n      ],\n      [\n        \"▁Miguel\",\n        -13.089158058166504\n      ],\n      [\n        \"▁terminology\",\n        -13.089334487915039\n      ],\n      [\n        \"▁Genetic\",\n        -13.089553833007812\n      ],\n      [\n        \"commercial\",\n        -13.08963394165039\n      ],\n      [\n        \"gehoben\",\n        -13.08965015411377\n      ],\n      [\n        \"RIGHT\",\n        -13.08995532989502\n      ],\n      [\n        \"▁proprietate\",\n        -13.089990615844727\n      ],\n      [\n        \"▁Cannes\",\n        -13.090012550354004\n      ],\n      [\n        \"▁klicken\",\n        -13.090023040771484\n      ],\n      [\n        \"▁Belgique\",\n        -13.0901460647583\n      ],\n      [\n        \"tapped\",\n        -13.09034538269043\n      ],\n      [\n        \"kinetic\",\n        -13.090569496154785\n      ],\n      [\n        \"▁feuilles\",\n        -13.090673446655273\n      ],\n      [\n        \"whitening\",\n        -13.090760231018066\n      ],\n      [\n        \"Any\",\n        -13.090946197509766\n      ],\n      [\n        \"Manager\",\n        -13.091099739074707\n      ],\n      [\n        \"▁constatat\",\n        -13.091106414794922\n      ],\n      [\n        \"▁Myanmar\",\n        -13.091140747070312\n      ],\n      [\n        \"▁Examination\",\n        -13.091142654418945\n      ],\n      [\n        \"▁règle\",\n        -13.091208457946777\n      ],\n      [\n        \"▁umgesetzt\",\n        -13.09128475189209\n      ],\n      [\n        \"211\",\n        -13.091336250305176\n      ],\n      [\n        \"▁Herald\",\n        -13.091449737548828\n      ],\n      [\n        \"Alex\",\n        -13.091680526733398\n      ],\n      [\n        \"▁drauf\",\n        -13.091707229614258\n      ],\n      [\n        \"logger\",\n        -13.091714859008789\n      ],\n      [\n        \"▁pictur\",\n        -13.09186840057373\n      ],\n      [\n        \"▁Divi\",\n        -13.09196949005127\n      ],\n      [\n        \"▁furnizat\",\n        -13.092089653015137\n      ],\n      [\n        \"▁verzichten\",\n        -13.092132568359375\n      ],\n      [\n        \"▁Sergi\",\n        -13.092199325561523\n      ],\n      [\n        \"contaminated\",\n        -13.09223747253418\n      ],\n      [\n        \"▁Buddy\",\n        -13.092243194580078\n      ],\n      [\n        \"▁chilled\",\n        -13.092268943786621\n      ],\n      [\n        \"▁vorlieg\",\n        -13.092317581176758\n      ],\n      [\n        \"▁Claudia\",\n        -13.092632293701172\n      ],\n      [\n        \"▁miserable\",\n        -13.092653274536133\n      ],\n      [\n        \"▁sketches\",\n        -13.092683792114258\n      ],\n      [\n        \"schicken\",\n        -13.092814445495605\n      ],\n      [\n        \"since\",\n        -13.0928373336792\n      ],\n      [\n        \"2.9\",\n        -13.092840194702148\n      ],\n      [\n        \"▁sitzen\",\n        -13.092928886413574\n      ],\n      [\n        \"ceapa\",\n        -13.093396186828613\n      ],\n      [\n        \"respectarea\",\n        -13.093438148498535\n      ],\n      [\n        \"▁handheld\",\n        -13.093448638916016\n      ],\n      [\n        \"popular\",\n        -13.093527793884277\n      ],\n      [\n        \"calming\",\n        -13.093603134155273\n      ],\n      [\n        \"Govern\",\n        -13.093632698059082\n      ],\n      [\n        \"▁omega\",\n        -13.093645095825195\n      ],\n      [\n        \"▁Planner\",\n        -13.093791007995605\n      ],\n      [\n        \"enriched\",\n        -13.093850135803223\n      ],\n      [\n        \"154\",\n        -13.093976974487305\n      ],\n      [\n        \"▁autorisé\",\n        -13.093989372253418\n      ],\n      [\n        \"▁cadouri\",\n        -13.09407901763916\n      ],\n      [\n        \"▁vulnerabilities\",\n        -13.094143867492676\n      ],\n      [\n        \"▁Arbeitnehmer\",\n        -13.094158172607422\n      ],\n      [\n        \"éditeur\",\n        -13.094234466552734\n      ],\n      [\n        \"▁Anleitung\",\n        -13.094317436218262\n      ],\n      [\n        \"rubbing\",\n        -13.094343185424805\n      ],\n      [\n        \"▁autovehicul\",\n        -13.094621658325195\n      ],\n      [\n        \"▁öffnen\",\n        -13.094621658325195\n      ],\n      [\n        \"▁Napoleon\",\n        -13.094622611999512\n      ],\n      [\n        \"▁cliché\",\n        -13.094637870788574\n      ],\n      [\n        \"▁Schaf\",\n        -13.09469985961914\n      ],\n      [\n        \"regulating\",\n        -13.094894409179688\n      ],\n      [\n        \"▁Kühl\",\n        -13.09490966796875\n      ],\n      [\n        \"▁blush\",\n        -13.094913482666016\n      ],\n      [\n        \"▁discard\",\n        -13.094992637634277\n      ],\n      [\n        \"▁confine\",\n        -13.095027923583984\n      ],\n      [\n        \"▁Rodriguez\",\n        -13.09511947631836\n      ],\n      [\n        \"▁ADHD\",\n        -13.095165252685547\n      ],\n      [\n        \"▁Madame\",\n        -13.09516716003418\n      ],\n      [\n        \"▁résolution\",\n        -13.095319747924805\n      ],\n      [\n        \"▁flair\",\n        -13.095369338989258\n      ],\n      [\n        \"▁claw\",\n        -13.095422744750977\n      ],\n      [\n        \"▁1929\",\n        -13.095643043518066\n      ],\n      [\n        \"ETH\",\n        -13.095672607421875\n      ],\n      [\n        \"nähe\",\n        -13.095804214477539\n      ],\n      [\n        \"▁soothe\",\n        -13.0958251953125\n      ],\n      [\n        \"4.9\",\n        -13.095833778381348\n      ],\n      [\n        \"montée\",\n        -13.095925331115723\n      ],\n      [\n        \"confirming\",\n        -13.095989227294922\n      ],\n      [\n        \"continent\",\n        -13.09613037109375\n      ],\n      [\n        \"reiz\",\n        -13.09643840789795\n      ],\n      [\n        \"john\",\n        -13.096577644348145\n      ],\n      [\n        \"IONAL\",\n        -13.096588134765625\n      ],\n      [\n        \"▁exported\",\n        -13.0966215133667\n      ],\n      [\n        \"▁Prison\",\n        -13.096651077270508\n      ],\n      [\n        \"possessed\",\n        -13.096952438354492\n      ],\n      [\n        \"▁placebo\",\n        -13.096991539001465\n      ],\n      [\n        \"▁biodiversity\",\n        -13.097116470336914\n      ],\n      [\n        \"▁combustion\",\n        -13.097116470336914\n      ],\n      [\n        \"▁Plumbing\",\n        -13.09711742401123\n      ],\n      [\n        \"ixie\",\n        -13.097124099731445\n      ],\n      [\n        \"▁repetition\",\n        -13.09715461730957\n      ],\n      [\n        \"▁soumis\",\n        -13.097372055053711\n      ],\n      [\n        \"▁reduc\",\n        -13.097671508789062\n      ],\n      [\n        \"▁constrain\",\n        -13.097759246826172\n      ],\n      [\n        \"Anti\",\n        -13.097760200500488\n      ],\n      [\n        \"consolidated\",\n        -13.097817420959473\n      ],\n      [\n        \"214\",\n        -13.098095893859863\n      ],\n      [\n        \"▁breaches\",\n        -13.098108291625977\n      ],\n      [\n        \"infringement\",\n        -13.098115921020508\n      ],\n      [\n        \"▁drizzle\",\n        -13.098115921020508\n      ],\n      [\n        \"▁erhöhen\",\n        -13.098116874694824\n      ],\n      [\n        \"▁Somerset\",\n        -13.098118782043457\n      ],\n      [\n        \"▁blonde\",\n        -13.098132133483887\n      ],\n      [\n        \"▁Funny\",\n        -13.09813404083252\n      ],\n      [\n        \"tuşi\",\n        -13.098149299621582\n      ],\n      [\n        \"▁reinvent\",\n        -13.098162651062012\n      ],\n      [\n        \"▁sérieux\",\n        -13.098247528076172\n      ],\n      [\n        \"▁croire\",\n        -13.098308563232422\n      ],\n      [\n        \"general\",\n        -13.098315238952637\n      ],\n      [\n        \"▁Distance\",\n        -13.098319053649902\n      ],\n      [\n        \"▁VoIP\",\n        -13.098348617553711\n      ],\n      [\n        \"▁adăugat\",\n        -13.098406791687012\n      ],\n      [\n        \"matik\",\n        -13.098546028137207\n      ],\n      [\n        \"▁avatar\",\n        -13.098647117614746\n      ],\n      [\n        \"▁superstar\",\n        -13.098804473876953\n      ],\n      [\n        \"8.0\",\n        -13.098814010620117\n      ],\n      [\n        \"lusieurs\",\n        -13.098982810974121\n      ],\n      [\n        \"▁Judeţean\",\n        -13.099117279052734\n      ],\n      [\n        \"offenen\",\n        -13.099128723144531\n      ],\n      [\n        \"RAF\",\n        -13.099133491516113\n      ],\n      [\n        \"▁restroom\",\n        -13.099207878112793\n      ],\n      [\n        \"enfance\",\n        -13.099348068237305\n      ],\n      [\n        \"▁garnish\",\n        -13.099499702453613\n      ],\n      [\n        \"▁vermittelt\",\n        -13.099631309509277\n      ],\n      [\n        \"Histoire\",\n        -13.099634170532227\n      ],\n      [\n        \"cyan\",\n        -13.100628852844238\n      ],\n      [\n        \"Talk\",\n        -13.100666046142578\n      ],\n      [\n        \"▁Varianten\",\n        -13.10069465637207\n      ],\n      [\n        \"▁Lille\",\n        -13.10085678100586\n      ],\n      [\n        \"▁offenbar\",\n        -13.10098934173584\n      ],\n      [\n        \"▁rénovation\",\n        -13.10112190246582\n      ],\n      [\n        \"▁comentarii\",\n        -13.101249694824219\n      ],\n      [\n        \"▁Bedford\",\n        -13.10130500793457\n      ],\n      [\n        \"▁cercetări\",\n        -13.101325988769531\n      ],\n      [\n        \"▁précision\",\n        -13.101337432861328\n      ],\n      [\n        \"MRC\",\n        -13.101358413696289\n      ],\n      [\n        \"alterations\",\n        -13.101476669311523\n      ],\n      [\n        \"▁discours\",\n        -13.101531028747559\n      ],\n      [\n        \"äger\",\n        -13.101577758789062\n      ],\n      [\n        \"▁antreprenor\",\n        -13.101622581481934\n      ],\n      [\n        \"▁Oriental\",\n        -13.101849555969238\n      ],\n      [\n        \"conducerea\",\n        -13.101868629455566\n      ],\n      [\n        \"CBC\",\n        -13.101932525634766\n      ],\n      [\n        \"▁mince\",\n        -13.101985931396484\n      ],\n      [\n        \"▁presidency\",\n        -13.10212516784668\n      ],\n      [\n        \"▁lipstick\",\n        -13.102167129516602\n      ],\n      [\n        \"▁SERVICES\",\n        -13.102237701416016\n      ],\n      [\n        \"productive\",\n        -13.10237979888916\n      ],\n      [\n        \"Assad\",\n        -13.102400779724121\n      ],\n      [\n        \"▁efectiv\",\n        -13.102540969848633\n      ],\n      [\n        \"▁gestern\",\n        -13.102596282958984\n      ],\n      [\n        \"▁RGB\",\n        -13.102606773376465\n      ],\n      [\n        \"▁Transilvania\",\n        -13.102627754211426\n      ],\n      [\n        \"▁Raleigh\",\n        -13.102670669555664\n      ],\n      [\n        \"DOM\",\n        -13.102702140808105\n      ],\n      [\n        \"▁iesit\",\n        -13.102806091308594\n      ],\n      [\n        \"▁anuntat\",\n        -13.102810859680176\n      ],\n      [\n        \"▁automatiquement\",\n        -13.102901458740234\n      ],\n      [\n        \"▁proliferation\",\n        -13.103130340576172\n      ],\n      [\n        \"▁Maroc\",\n        -13.103156089782715\n      ],\n      [\n        \"▁prezenţ\",\n        -13.10323429107666\n      ],\n      [\n        \"▁Filipino\",\n        -13.103296279907227\n      ],\n      [\n        \"▁Traian\",\n        -13.103351593017578\n      ],\n      [\n        \"▁swimmer\",\n        -13.10356616973877\n      ],\n      [\n        \"▁Slovenia\",\n        -13.103632926940918\n      ],\n      [\n        \"phobia\",\n        -13.103724479675293\n      ],\n      [\n        \"curricular\",\n        -13.103734016418457\n      ],\n      [\n        \"jurnal\",\n        -13.103825569152832\n      ],\n      [\n        \"▁vorne\",\n        -13.103870391845703\n      ],\n      [\n        \"▁asuma\",\n        -13.103875160217285\n      ],\n      [\n        \"defended\",\n        -13.104104995727539\n      ],\n      [\n        \"▁imminent\",\n        -13.104140281677246\n      ],\n      [\n        \"favored\",\n        -13.10417366027832\n      ],\n      [\n        \"▁innovator\",\n        -13.104179382324219\n      ],\n      [\n        \"▁Salzburg\",\n        -13.104289054870605\n      ],\n      [\n        \"5.4\",\n        -13.104452133178711\n      ],\n      [\n        \"Safe\",\n        -13.104597091674805\n      ],\n      [\n        \"▁inteleg\",\n        -13.104744911193848\n      ],\n      [\n        \"▁charisma\",\n        -13.104781150817871\n      ],\n      [\n        \"nature\",\n        -13.104784965515137\n      ],\n      [\n        \"4.8\",\n        -13.104942321777344\n      ],\n      [\n        \"argues\",\n        -13.105104446411133\n      ],\n      [\n        \"▁dimensiune\",\n        -13.105142593383789\n      ],\n      [\n        \"▁subdivision\",\n        -13.105142593383789\n      ],\n      [\n        \"▁embarrassing\",\n        -13.105144500732422\n      ],\n      [\n        \"▁confuse\",\n        -13.105207443237305\n      ],\n      [\n        \"DIC\",\n        -13.105460166931152\n      ],\n      [\n        \"rubrique\",\n        -13.10549545288086\n      ],\n      [\n        \"dépendance\",\n        -13.105598449707031\n      ],\n      [\n        \"INCLUD\",\n        -13.10565185546875\n      ],\n      [\n        \"▁Griffin\",\n        -13.10574722290039\n      ],\n      [\n        \"157\",\n        -13.105751037597656\n      ],\n      [\n        \"▁revamp\",\n        -13.105839729309082\n      ],\n      [\n        \"▁umgehen\",\n        -13.10595989227295\n      ],\n      [\n        \"▁mențin\",\n        -13.106231689453125\n      ],\n      [\n        \"▁1937\",\n        -13.106695175170898\n      ],\n      [\n        \"eklagte\",\n        -13.106766700744629\n      ],\n      [\n        \"▁clientèle\",\n        -13.106801986694336\n      ],\n      [\n        \"▁campsite\",\n        -13.10708999633789\n      ],\n      [\n        \"▁florist\",\n        -13.107144355773926\n      ],\n      [\n        \"▁Ferguson\",\n        -13.107159614562988\n      ],\n      [\n        \"▁demolition\",\n        -13.107160568237305\n      ],\n      [\n        \"▁McCain\",\n        -13.107254981994629\n      ],\n      [\n        \"▁reckon\",\n        -13.10733413696289\n      ],\n      [\n        \"striped\",\n        -13.107414245605469\n      ],\n      [\n        \"▁sonore\",\n        -13.107481002807617\n      ],\n      [\n        \"migrated\",\n        -13.107548713684082\n      ],\n      [\n        \"▁fluorescent\",\n        -13.107664108276367\n      ],\n      [\n        \"▁Colegi\",\n        -13.107762336730957\n      ],\n      [\n        \"ianu\",\n        -13.107860565185547\n      ],\n      [\n        \"cruising\",\n        -13.107882499694824\n      ],\n      [\n        \"LINK\",\n        -13.107965469360352\n      ],\n      [\n        \"▁Cutting\",\n        -13.108001708984375\n      ],\n      [\n        \"ABILITY\",\n        -13.108168601989746\n      ],\n      [\n        \"▁Categories\",\n        -13.108168601989746\n      ],\n      [\n        \"▁erhoben\",\n        -13.108168601989746\n      ],\n      [\n        \"▁Cocktail\",\n        -13.108169555664062\n      ],\n      [\n        \"▁Generator\",\n        -13.108177185058594\n      ],\n      [\n        \"▁gesucht\",\n        -13.108186721801758\n      ],\n      [\n        \"▁telescope\",\n        -13.10818862915039\n      ],\n      [\n        \"KET\",\n        -13.108192443847656\n      ],\n      [\n        \"▁hilfreich\",\n        -13.108192443847656\n      ],\n      [\n        \"▁beneficiary\",\n        -13.108585357666016\n      ],\n      [\n        \"▁Winston\",\n        -13.108636856079102\n      ],\n      [\n        \"Auswirkungen\",\n        -13.108675956726074\n      ],\n      [\n        \"portrayed\",\n        -13.108705520629883\n      ],\n      [\n        \"▁Aspekte\",\n        -13.108743667602539\n      ],\n      [\n        \"ffected\",\n        -13.108901023864746\n      ],\n      [\n        \"eutic\",\n        -13.108905792236328\n      ],\n      [\n        \"International\",\n        -13.109021186828613\n      ],\n      [\n        \"attente\",\n        -13.109078407287598\n      ],\n      [\n        \"mentioning\",\n        -13.109119415283203\n      ],\n      [\n        \"launch\",\n        -13.109129905700684\n      ],\n      [\n        \"▁EURO\",\n        -13.109152793884277\n      ],\n      [\n        \"▁Fraser\",\n        -13.109344482421875\n      ],\n      [\n        \"▁Johannes\",\n        -13.109408378601074\n      ],\n      [\n        \"▁felicit\",\n        -13.109477043151855\n      ],\n      [\n        \"▁plâng\",\n        -13.109522819519043\n      ],\n      [\n        \"izant\",\n        -13.10971736907959\n      ],\n      [\n        \"▁reţe\",\n        -13.109846115112305\n      ],\n      [\n        \"Mech\",\n        -13.109954833984375\n      ],\n      [\n        \"▁algebra\",\n        -13.110193252563477\n      ],\n      [\n        \"▁surgeries\",\n        -13.110257148742676\n      ],\n      [\n        \"▁semifinal\",\n        -13.110262870788574\n      ],\n      [\n        \"▁intimidating\",\n        -13.110288619995117\n      ],\n      [\n        \"▁exkl\",\n        -13.110604286193848\n      ],\n      [\n        \"asigurarea\",\n        -13.110918998718262\n      ],\n      [\n        \"Tek\",\n        -13.111136436462402\n      ],\n      [\n        \"▁Einladung\",\n        -13.111205101013184\n      ],\n      [\n        \"▁similaire\",\n        -13.111205101013184\n      ],\n      [\n        \"▁bebelus\",\n        -13.111221313476562\n      ],\n      [\n        \"▁déclin\",\n        -13.111400604248047\n      ],\n      [\n        \"▁Console\",\n        -13.111495018005371\n      ],\n      [\n        \"RET\",\n        -13.111573219299316\n      ],\n      [\n        \"appli\",\n        -13.111586570739746\n      ],\n      [\n        \"45%\",\n        -13.111663818359375\n      ],\n      [\n        \"Evenimentul\",\n        -13.111811637878418\n      ],\n      [\n        \"sincerely\",\n        -13.111812591552734\n      ],\n      [\n        \"sammlung\",\n        -13.112098693847656\n      ],\n      [\n        \"Amérique\",\n        -13.112220764160156\n      ],\n      [\n        \"▁1919\",\n        -13.112326622009277\n      ],\n      [\n        \"regulation\",\n        -13.112367630004883\n      ],\n      [\n        \"gebäude\",\n        -13.112726211547852\n      ],\n      [\n        \"▁Perspektive\",\n        -13.112726211547852\n      ],\n      [\n        \"Espagne\",\n        -13.112744331359863\n      ],\n      [\n        \"▁Underground\",\n        -13.11283016204834\n      ],\n      [\n        \"secret\",\n        -13.112833976745605\n      ],\n      [\n        \"▁Aussicht\",\n        -13.112874031066895\n      ],\n      [\n        \"Photo\",\n        -13.112977027893066\n      ],\n      [\n        \"▁Brust\",\n        -13.113144874572754\n      ],\n      [\n        \"▁Sustainability\",\n        -13.11323356628418\n      ],\n      [\n        \"▁clădiri\",\n        -13.11323356628418\n      ],\n      [\n        \"▁librarian\",\n        -13.11323356628418\n      ],\n      [\n        \"▁HBO\",\n        -13.113235473632812\n      ],\n      [\n        \"▁Parallel\",\n        -13.113240242004395\n      ],\n      [\n        \"▁shimmer\",\n        -13.113283157348633\n      ],\n      [\n        \"▁schlicht\",\n        -13.113292694091797\n      ],\n      [\n        \"▁anticipat\",\n        -13.113311767578125\n      ],\n      [\n        \"▁foolish\",\n        -13.11335563659668\n      ],\n      [\n        \"▁Ability\",\n        -13.11347484588623\n      ],\n      [\n        \"▁ceremoni\",\n        -13.11358642578125\n      ],\n      [\n        \"▁Ablauf\",\n        -13.11359977722168\n      ],\n      [\n        \"icrobial\",\n        -13.113606452941895\n      ],\n      [\n        \"▁actiuni\",\n        -13.11362361907959\n      ],\n      [\n        \"▁Wilhelm\",\n        -13.113761901855469\n      ],\n      [\n        \"▁nennen\",\n        -13.113775253295898\n      ],\n      [\n        \"▁botez\",\n        -13.113832473754883\n      ],\n      [\n        \"Alpes\",\n        -13.113912582397461\n      ],\n      [\n        \"▁libér\",\n        -13.11392593383789\n      ],\n      [\n        \"▁sneakers\",\n        -13.114052772521973\n      ],\n      [\n        \"geschafft\",\n        -13.114252090454102\n      ],\n      [\n        \"▁downstairs\",\n        -13.114261627197266\n      ],\n      [\n        \"▁wrench\",\n        -13.114294052124023\n      ],\n      [\n        \"▁erheblich\",\n        -13.11442756652832\n      ],\n      [\n        \"▁alimentar\",\n        -13.114710807800293\n      ],\n      [\n        \"▁suger\",\n        -13.11474323272705\n      ],\n      [\n        \"analysis\",\n        -13.114883422851562\n      ],\n      [\n        \"öhn\",\n        -13.114891052246094\n      ],\n      [\n        \"▁Nantes\",\n        -13.114895820617676\n      ],\n      [\n        \"▁Arbor\",\n        -13.114899635314941\n      ],\n      [\n        \"ooze\",\n        -13.115150451660156\n      ],\n      [\n        \"▁facade\",\n        -13.115229606628418\n      ],\n      [\n        \"▁MySQL\",\n        -13.115266799926758\n      ],\n      [\n        \"▁Salvador\",\n        -13.115266799926758\n      ],\n      [\n        \"▁Schlafzimmer\",\n        -13.115279197692871\n      ],\n      [\n        \"▁autentic\",\n        -13.115320205688477\n      ],\n      [\n        \"▁prezint\",\n        -13.115348815917969\n      ],\n      [\n        \"▁campground\",\n        -13.115397453308105\n      ],\n      [\n        \"Query\",\n        -13.11540412902832\n      ],\n      [\n        \"bekannt\",\n        -13.115598678588867\n      ],\n      [\n        \"arcinia\",\n        -13.115632057189941\n      ],\n      [\n        \"▁stunt\",\n        -13.115825653076172\n      ],\n      [\n        \"▁informare\",\n        -13.115830421447754\n      ],\n      [\n        \"▁interzis\",\n        -13.11584186553955\n      ],\n      [\n        \"▁Burke\",\n        -13.115995407104492\n      ],\n      [\n        \"certified\",\n        -13.11601734161377\n      ],\n      [\n        \"▁clove\",\n        -13.11605167388916\n      ],\n      [\n        \"java\",\n        -13.116271018981934\n      ],\n      [\n        \"▁Vielfalt\",\n        -13.116284370422363\n      ],\n      [\n        \"gebung\",\n        -13.116329193115234\n      ],\n      [\n        \"▁9/11\",\n        -13.116497993469238\n      ],\n      [\n        \"▁disruptive\",\n        -13.11650562286377\n      ],\n      [\n        \"visual\",\n        -13.116693496704102\n      ],\n      [\n        \"▁anunţat\",\n        -13.11679458618164\n      ],\n      [\n        \"▁Plätze\",\n        -13.116799354553223\n      ],\n      [\n        \"▁reduceri\",\n        -13.116920471191406\n      ],\n      [\n        \"autorisation\",\n        -13.116950035095215\n      ],\n      [\n        \"▁ligament\",\n        -13.11705207824707\n      ],\n      [\n        \"▁învăța\",\n        -13.117081642150879\n      ],\n      [\n        \"läufig\",\n        -13.117303848266602\n      ],\n      [\n        \"▁Copenhagen\",\n        -13.117303848266602\n      ],\n      [\n        \"▁commodities\",\n        -13.117303848266602\n      ],\n      [\n        \"▁eindeutig\",\n        -13.117313385009766\n      ],\n      [\n        \"▁catheter\",\n        -13.117321014404297\n      ],\n      [\n        \"erklärung\",\n        -13.117720603942871\n      ],\n      [\n        \"▁intelectual\",\n        -13.117814064025879\n      ],\n      [\n        \"▁municipality\",\n        -13.117891311645508\n      ],\n      [\n        \"▁1936\",\n        -13.11798095703125\n      ],\n      [\n        \"rruption\",\n        -13.118217468261719\n      ],\n      [\n        \"▁Lafayette\",\n        -13.118324279785156\n      ],\n      [\n        \"▁berühmte\",\n        -13.118324279785156\n      ],\n      [\n        \"▁idylli\",\n        -13.118325233459473\n      ],\n      [\n        \"▁caldura\",\n        -13.118447303771973\n      ],\n      [\n        \"▁tablette\",\n        -13.118535995483398\n      ],\n      [\n        \"▁liquidity\",\n        -13.118728637695312\n      ],\n      [\n        \"NGOs\",\n        -13.118885040283203\n      ],\n      [\n        \"▁supliment\",\n        -13.11889934539795\n      ],\n      [\n        \"contact\",\n        -13.119075775146484\n      ],\n      [\n        \"lustig\",\n        -13.119219779968262\n      ],\n      [\n        \"▁watercolor\",\n        -13.119319915771484\n      ],\n      [\n        \"▁Tiffany\",\n        -13.119344711303711\n      ],\n      [\n        \"▁Glauben\",\n        -13.119365692138672\n      ],\n      [\n        \"Immobilie\",\n        -13.119406700134277\n      ],\n      [\n        \"▁stripped\",\n        -13.119549751281738\n      ],\n      [\n        \"▁Beatles\",\n        -13.119601249694824\n      ],\n      [\n        \"ани\",\n        -13.119770050048828\n      ],\n      [\n        \"▁lifespan\",\n        -13.119986534118652\n      ],\n      [\n        \"▁profondeur\",\n        -13.120251655578613\n      ],\n      [\n        \"▁durere\",\n        -13.120329856872559\n      ],\n      [\n        \"▁Lithuania\",\n        -13.120367050170898\n      ],\n      [\n        \"▁resurrection\",\n        -13.120367050170898\n      ],\n      [\n        \"▁suitcase\",\n        -13.120535850524902\n      ],\n      [\n        \"▁Plumber\",\n        -13.120545387268066\n      ],\n      [\n        \"criticized\",\n        -13.120595932006836\n      ],\n      [\n        \"feared\",\n        -13.120756149291992\n      ],\n      [\n        \"▁Aunt\",\n        -13.120929718017578\n      ],\n      [\n        \"otwithstanding\",\n        -13.121068000793457\n      ],\n      [\n        \"verständlich\",\n        -13.12115478515625\n      ],\n      [\n        \"fiber\",\n        -13.121248245239258\n      ],\n      [\n        \"headquartered\",\n        -13.121390342712402\n      ],\n      [\n        \"▁Perspective\",\n        -13.121391296386719\n      ],\n      [\n        \"▁semantic\",\n        -13.121413230895996\n      ],\n      [\n        \"VIEW\",\n        -13.121431350708008\n      ],\n      [\n        \"▁Ersatzteile\",\n        -13.121567726135254\n      ],\n      [\n        \"▁disgust\",\n        -13.121685981750488\n      ],\n      [\n        \"rrington\",\n        -13.121834754943848\n      ],\n      [\n        \"ässe\",\n        -13.121922492980957\n      ],\n      [\n        \"▁anerkannt\",\n        -13.121956825256348\n      ],\n      [\n        \"meaning\",\n        -13.12203598022461\n      ],\n      [\n        \"178\",\n        -13.122039794921875\n      ],\n      [\n        \"▁grupuri\",\n        -13.1221284866333\n      ],\n      [\n        \"ciones\",\n        -13.122267723083496\n      ],\n      [\n        \"▁Mobility\",\n        -13.122414588928223\n      ],\n      [\n        \"▁unstable\",\n        -13.122422218322754\n      ],\n      [\n        \"▁FULL\",\n        -13.122456550598145\n      ],\n      [\n        \"austausch\",\n        -13.122491836547852\n      ],\n      [\n        \"▁culminat\",\n        -13.122549057006836\n      ],\n      [\n        \"▁Roast\",\n        -13.122742652893066\n      ],\n      [\n        \"existant\",\n        -13.122940063476562\n      ],\n      [\n        \"167\",\n        -13.123008728027344\n      ],\n      [\n        \"tinerii\",\n        -13.123040199279785\n      ],\n      [\n        \"September\",\n        -13.123115539550781\n      ],\n      [\n        \"▁haircut\",\n        -13.123274803161621\n      ],\n      [\n        \"▁Tutorial\",\n        -13.123440742492676\n      ],\n      [\n        \"▁enquiries\",\n        -13.123440742492676\n      ],\n      [\n        \"▁livelihood\",\n        -13.123440742492676\n      ],\n      [\n        \"▁proficiency\",\n        -13.123440742492676\n      ],\n      [\n        \"▁pavement\",\n        -13.123443603515625\n      ],\n      [\n        \"▁Reservation\",\n        -13.123445510864258\n      ],\n      [\n        \"aimerai\",\n        -13.123491287231445\n      ],\n      [\n        \"▁laboratoire\",\n        -13.123492240905762\n      ],\n      [\n        \"leihen\",\n        -13.123501777648926\n      ],\n      [\n        \"ministerium\",\n        -13.123518943786621\n      ],\n      [\n        \"▁Concentr\",\n        -13.12366008758545\n      ],\n      [\n        \"▁swipe\",\n        -13.12368106842041\n      ],\n      [\n        \"extrêmement\",\n        -13.123687744140625\n      ],\n      [\n        \"cultivated\",\n        -13.123708724975586\n      ],\n      [\n        \"▁Converse\",\n        -13.123845100402832\n      ],\n      [\n        \"▁paycheck\",\n        -13.123863220214844\n      ],\n      [\n        \"olltest\",\n        -13.123995780944824\n      ],\n      [\n        \"▁Bauch\",\n        -13.124022483825684\n      ],\n      [\n        \"▁autobuz\",\n        -13.124067306518555\n      ],\n      [\n        \"attack\",\n        -13.124094009399414\n      ],\n      [\n        \"While\",\n        -13.124311447143555\n      ],\n      [\n        \"Retrouvez\",\n        -13.124320983886719\n      ],\n      [\n        \"▁Dolphin\",\n        -13.124466896057129\n      ],\n      [\n        \"▁Shelby\",\n        -13.124480247497559\n      ],\n      [\n        \"▁Diagnostic\",\n        -13.124486923217773\n      ],\n      [\n        \"▁reconcil\",\n        -13.124558448791504\n      ],\n      [\n        \"▁Iaşi\",\n        -13.124733924865723\n      ],\n      [\n        \"▁iubesc\",\n        -13.124979972839355\n      ],\n      [\n        \"▁Bestseller\",\n        -13.124985694885254\n      ],\n      [\n        \"▁antrenor\",\n        -13.125035285949707\n      ],\n      [\n        \"▁Imaging\",\n        -13.125089645385742\n      ],\n      [\n        \"▁priorité\",\n        -13.125295639038086\n      ],\n      [\n        \"▁brewery\",\n        -13.125494003295898\n      ],\n      [\n        \"▁residual\",\n        -13.125494003295898\n      ],\n      [\n        \"▁intermittent\",\n        -13.125494956970215\n      ],\n      [\n        \"Kollekt\",\n        -13.125585556030273\n      ],\n      [\n        \"▁Walsh\",\n        -13.12558650970459\n      ],\n      [\n        \"▁marvelous\",\n        -13.125653266906738\n      ],\n      [\n        \"canceled\",\n        -13.125686645507812\n      ],\n      [\n        \"174\",\n        -13.125761985778809\n      ],\n      [\n        \"normes\",\n        -13.125837326049805\n      ],\n      [\n        \"▁Tempo\",\n        -13.125996589660645\n      ],\n      [\n        \"▁Târgu\",\n        -13.126008987426758\n      ],\n      [\n        \"877\",\n        -13.126165390014648\n      ],\n      [\n        \"5-8\",\n        -13.126190185546875\n      ],\n      [\n        \"960\",\n        -13.126486778259277\n      ],\n      [\n        \"▁Scandinavia\",\n        -13.1265230178833\n      ],\n      [\n        \"▁prolific\",\n        -13.126526832580566\n      ],\n      [\n        \"lasi\",\n        -13.126916885375977\n      ],\n      [\n        \"glück\",\n        -13.127097129821777\n      ],\n      [\n        \"▁immersion\",\n        -13.127204895019531\n      ],\n      [\n        \"RSA\",\n        -13.127323150634766\n      ],\n      [\n        \"▁Polk\",\n        -13.127340316772461\n      ],\n      [\n        \"▁transmitter\",\n        -13.12747859954834\n      ],\n      [\n        \"▁Kleidung\",\n        -13.12755298614502\n      ],\n      [\n        \"▁Cosmo\",\n        -13.127676963806152\n      ],\n      [\n        \"▁1935\",\n        -13.127788543701172\n      ],\n      [\n        \"höhere\",\n        -13.127906799316406\n      ],\n      [\n        \"▁Tatsache\",\n        -13.128074645996094\n      ],\n      [\n        \"▁Outlet\",\n        -13.1282377243042\n      ],\n      [\n        \"▁canalisation\",\n        -13.12824821472168\n      ],\n      [\n        \"Mbps\",\n        -13.128433227539062\n      ],\n      [\n        \"▁skeptical\",\n        -13.128582954406738\n      ],\n      [\n        \"mplification\",\n        -13.128617286682129\n      ],\n      [\n        \"▁Advice\",\n        -13.128618240356445\n      ],\n      [\n        \"▁détaillé\",\n        -13.128676414489746\n      ],\n      [\n        \"660\",\n        -13.128701210021973\n      ],\n      [\n        \"▁eyebrow\",\n        -13.128722190856934\n      ],\n      [\n        \"▁HIGH\",\n        -13.128898620605469\n      ],\n      [\n        \"hnlich\",\n        -13.129073143005371\n      ],\n      [\n        \"▁depăș\",\n        -13.12910270690918\n      ],\n      [\n        \"▁procurori\",\n        -13.129140853881836\n      ],\n      [\n        \"▁refrain\",\n        -13.129212379455566\n      ],\n      [\n        \"▁geschaffen\",\n        -13.12952995300293\n      ],\n      [\n        \"justement\",\n        -13.129663467407227\n      ],\n      [\n        \"exposing\",\n        -13.129700660705566\n      ],\n      [\n        \"243\",\n        -13.1298828125\n      ],\n      [\n        \"sectorul\",\n        -13.130104064941406\n      ],\n      [\n        \"▁courrier\",\n        -13.130180358886719\n      ],\n      [\n        \"▁carcas\",\n        -13.130199432373047\n      ],\n      [\n        \"sitter\",\n        -13.13022518157959\n      ],\n      [\n        \"▁Schreiben\",\n        -13.130335807800293\n      ],\n      [\n        \"▁malfunction\",\n        -13.130358695983887\n      ],\n      [\n        \"poartă\",\n        -13.130522727966309\n      ],\n      [\n        \"raisons\",\n        -13.130565643310547\n      ],\n      [\n        \"▁HOT\",\n        -13.130650520324707\n      ],\n      [\n        \"▁refreshed\",\n        -13.130730628967285\n      ],\n      [\n        \"mânt\",\n        -13.130744934082031\n      ],\n      [\n        \"▁coefficient\",\n        -13.13097858428955\n      ],\n      [\n        \"▁instituţii\",\n        -13.131194114685059\n      ],\n      [\n        \"▁sanguin\",\n        -13.131202697753906\n      ],\n      [\n        \"▁ceci\",\n        -13.131213188171387\n      ],\n      [\n        \"▁garçon\",\n        -13.131232261657715\n      ],\n      [\n        \"deluxe\",\n        -13.131237030029297\n      ],\n      [\n        \"▁rectif\",\n        -13.131311416625977\n      ],\n      [\n        \"920\",\n        -13.131364822387695\n      ],\n      [\n        \"Exista\",\n        -13.131428718566895\n      ],\n      [\n        \"▁magnif\",\n        -13.131568908691406\n      ],\n      [\n        \"efficiencies\",\n        -13.131681442260742\n      ],\n      [\n        \"▁Mitsubishi\",\n        -13.131681442260742\n      ],\n      [\n        \"▁consortium\",\n        -13.131681442260742\n      ],\n      [\n        \"▁baggage\",\n        -13.131683349609375\n      ],\n      [\n        \"▁guild\",\n        -13.131736755371094\n      ],\n      [\n        \"▁sixty\",\n        -13.13193130493164\n      ],\n      [\n        \"▁Retreat\",\n        -13.13245677947998\n      ],\n      [\n        \"batting\",\n        -13.132473945617676\n      ],\n      [\n        \"470\",\n        -13.132708549499512\n      ],\n      [\n        \"▁Britanie\",\n        -13.132718086242676\n      ],\n      [\n        \"displaced\",\n        -13.132734298706055\n      ],\n      [\n        \"▁spați\",\n        -13.132794380187988\n      ],\n      [\n        \"▁exceptionnelle\",\n        -13.13281536102295\n      ],\n      [\n        \"▁authorize\",\n        -13.132906913757324\n      ],\n      [\n        \"▁prescribe\",\n        -13.133187294006348\n      ],\n      [\n        \"▁dépannage\",\n        -13.133234024047852\n      ],\n      [\n        \"▁sexuelle\",\n        -13.133234024047852\n      ],\n      [\n        \"valid\",\n        -13.133275032043457\n      ],\n      [\n        \"▁hymn\",\n        -13.133752822875977\n      ],\n      [\n        \"▁histories\",\n        -13.133757591247559\n      ],\n      [\n        \"▁oriunde\",\n        -13.133764266967773\n      ],\n      [\n        \"Pop\",\n        -13.133785247802734\n      ],\n      [\n        \"▁dispoziţi\",\n        -13.133800506591797\n      ],\n      [\n        \"ADI\",\n        -13.133819580078125\n      ],\n      [\n        \"Google\",\n        -13.133830070495605\n      ],\n      [\n        \"▁Autism\",\n        -13.133918762207031\n      ],\n      [\n        \"▁aggr\",\n        -13.134354591369629\n      ],\n      [\n        \"bleed\",\n        -13.134618759155273\n      ],\n      [\n        \"▁displacement\",\n        -13.13478946685791\n      ],\n      [\n        \"▁hobbies\",\n        -13.13478946685791\n      ],\n      [\n        \"▁anatomy\",\n        -13.134799003601074\n      ],\n      [\n        \"▁Klinik\",\n        -13.134821891784668\n      ],\n      [\n        \"▁CCTV\",\n        -13.1348237991333\n      ],\n      [\n        \"readable\",\n        -13.134886741638184\n      ],\n      [\n        \"ulph\",\n        -13.134982109069824\n      ],\n      [\n        \"metabol\",\n        -13.135035514831543\n      ],\n      [\n        \"▁rugăm\",\n        -13.135037422180176\n      ],\n      [\n        \"▁Scotia\",\n        -13.135087013244629\n      ],\n      [\n        \"▁Einheit\",\n        -13.135211944580078\n      ],\n      [\n        \"▁troupe\",\n        -13.13581371307373\n      ],\n      [\n        \"▁Practitioner\",\n        -13.135828018188477\n      ],\n      [\n        \"▁oarec\",\n        -13.135909080505371\n      ],\n      [\n        \"Appel\",\n        -13.135998725891113\n      ],\n      [\n        \"situația\",\n        -13.136096000671387\n      ],\n      [\n        \"▁Yemen\",\n        -13.136353492736816\n      ],\n      [\n        \"piping\",\n        -13.136515617370605\n      ],\n      [\n        \"blood\",\n        -13.136772155761719\n      ],\n      [\n        \"engraved\",\n        -13.136866569519043\n      ],\n      [\n        \"▁Cristina\",\n        -13.136866569519043\n      ],\n      [\n        \"▁inaccurate\",\n        -13.136866569519043\n      ],\n      [\n        \"savory\",\n        -13.136878967285156\n      ],\n      [\n        \"atism\",\n        -13.136919021606445\n      ],\n      [\n        \"▁dependency\",\n        -13.137007713317871\n      ],\n      [\n        \"▁assertion\",\n        -13.137015342712402\n      ],\n      [\n        \"▁intersect\",\n        -13.137201309204102\n      ],\n      [\n        \"DATA\",\n        -13.137224197387695\n      ],\n      [\n        \"▁britanic\",\n        -13.1373872756958\n      ],\n      [\n        \"▁sanitaire\",\n        -13.137393951416016\n      ],\n      [\n        \"▁PLUS\",\n        -13.137436866760254\n      ],\n      [\n        \"▁platter\",\n        -13.137730598449707\n      ],\n      [\n        \"▁reconsider\",\n        -13.137802124023438\n      ],\n      [\n        \"▁Swim\",\n        -13.13786792755127\n      ],\n      [\n        \"▁Scene\",\n        -13.137896537780762\n      ],\n      [\n        \"▁Reynolds\",\n        -13.137907028198242\n      ],\n      [\n        \"▁gesund\",\n        -13.137922286987305\n      ],\n      [\n        \"international\",\n        -13.137959480285645\n      ],\n      [\n        \"government\",\n        -13.13804817199707\n      ],\n      [\n        \"▁gemstone\",\n        -13.138052940368652\n      ],\n      [\n        \"▁reproductive\",\n        -13.1381196975708\n      ],\n      [\n        \"▁expressive\",\n        -13.13820743560791\n      ],\n      [\n        \"▁tranche\",\n        -13.13842487335205\n      ],\n      [\n        \"▁Niagara\",\n        -13.138427734375\n      ],\n      [\n        \"▁Studierende\",\n        -13.138434410095215\n      ],\n      [\n        \"▁crave\",\n        -13.138607025146484\n      ],\n      [\n        \"pathetic\",\n        -13.138739585876465\n      ],\n      [\n        \"▁1916\",\n        -13.138858795166016\n      ],\n      [\n        \"▁Thousand\",\n        -13.138873100280762\n      ],\n      [\n        \"uffed\",\n        -13.138893127441406\n      ],\n      [\n        \"▁Lancaster\",\n        -13.138960838317871\n      ],\n      [\n        \"▁revenge\",\n        -13.138972282409668\n      ],\n      [\n        \"▁melody\",\n        -13.1389741897583\n      ],\n      [\n        \"Suitable\",\n        -13.138991355895996\n      ],\n      [\n        \"▁beacon\",\n        -13.139082908630371\n      ],\n      [\n        \"▁MAY\",\n        -13.139205932617188\n      ],\n      [\n        \"livré\",\n        -13.139216423034668\n      ],\n      [\n        \"Virus\",\n        -13.139391899108887\n      ],\n      [\n        \"▁collaborator\",\n        -13.139413833618164\n      ],\n      [\n        \"produktion\",\n        -13.139480590820312\n      ],\n      [\n        \"▁iluminat\",\n        -13.139593124389648\n      ],\n      [\n        \"facets\",\n        -13.13975715637207\n      ],\n      [\n        \"▁expus\",\n        -13.139784812927246\n      ],\n      [\n        \"▁baptism\",\n        -13.13999080657959\n      ],\n      [\n        \"▁urgency\",\n        -13.140016555786133\n      ],\n      [\n        \"artery\",\n        -13.14030647277832\n      ],\n      [\n        \"▁eingeladen\",\n        -13.14043140411377\n      ],\n      [\n        \"▁entfernen\",\n        -13.14051342010498\n      ],\n      [\n        \"soaking\",\n        -13.140555381774902\n      ],\n      [\n        \"▁irré\",\n        -13.140557289123535\n      ],\n      [\n        \"▁purity\",\n        -13.140700340270996\n      ],\n      [\n        \"▁adăug\",\n        -13.140731811523438\n      ],\n      [\n        \"historischen\",\n        -13.140777587890625\n      ],\n      [\n        \"crezi\",\n        -13.140793800354004\n      ],\n      [\n        \"▁tarziu\",\n        -13.141035079956055\n      ],\n      [\n        \"▁Mozart\",\n        -13.141040802001953\n      ],\n      [\n        \"▁trimming\",\n        -13.141056060791016\n      ],\n      [\n        \"▁violat\",\n        -13.141056060791016\n      ],\n      [\n        \"▁Vermögen\",\n        -13.14108943939209\n      ],\n      [\n        \"▁Theorie\",\n        -13.141114234924316\n      ],\n      [\n        \"scheibe\",\n        -13.14114761352539\n      ],\n      [\n        \"Partidul\",\n        -13.141324996948242\n      ],\n      [\n        \"▁childcare\",\n        -13.14133071899414\n      ],\n      [\n        \"ajele\",\n        -13.141345977783203\n      ],\n      [\n        \"▁Punjab\",\n        -13.141390800476074\n      ],\n      [\n        \"6.3\",\n        -13.14156436920166\n      ],\n      [\n        \"▁recount\",\n        -13.141571044921875\n      ],\n      [\n        \"▁repel\",\n        -13.141799926757812\n      ],\n      [\n        \"vantage\",\n        -13.1419095993042\n      ],\n      [\n        \"6.4\",\n        -13.141953468322754\n      ],\n      [\n        \"▁comedian\",\n        -13.142087936401367\n      ],\n      [\n        \"▁snappe\",\n        -13.142256736755371\n      ],\n      [\n        \"PLE\",\n        -13.142271041870117\n      ],\n      [\n        \"▁rapper\",\n        -13.142439842224121\n      ],\n      [\n        \"▁Belfast\",\n        -13.142657279968262\n      ],\n      [\n        \"▁predictive\",\n        -13.14271068572998\n      ],\n      [\n        \"dépôt\",\n        -13.1427583694458\n      ],\n      [\n        \"flavored\",\n        -13.142769813537598\n      ],\n      [\n        \"chließlich\",\n        -13.14293098449707\n      ],\n      [\n        \"▁stump\",\n        -13.142955780029297\n      ],\n      [\n        \"▁lakh\",\n        -13.142963409423828\n      ],\n      [\n        \"3:30\",\n        -13.143021583557129\n      ],\n      [\n        \"▁cetățeni\",\n        -13.1431245803833\n      ],\n      [\n        \"▁Milliarden\",\n        -13.143125534057617\n      ],\n      [\n        \"Assurance\",\n        -13.143128395080566\n      ],\n      [\n        \"▁Marketplace\",\n        -13.143329620361328\n      ],\n      [\n        \"equipped\",\n        -13.143423080444336\n      ],\n      [\n        \"▁russe\",\n        -13.143462181091309\n      ],\n      [\n        \"Exactly\",\n        -13.143651008605957\n      ],\n      [\n        \"▁Venez\",\n        -13.144125938415527\n      ],\n      [\n        \"▁Pavilion\",\n        -13.144171714782715\n      ],\n      [\n        \"▁incontournable\",\n        -13.144171714782715\n      ],\n      [\n        \"▁slaughter\",\n        -13.14417839050293\n      ],\n      [\n        \"asteptam\",\n        -13.144190788269043\n      ],\n      [\n        \"▁Fighter\",\n        -13.144196510314941\n      ],\n      [\n        \"▁Landkreis\",\n        -13.144278526306152\n      ],\n      [\n        \"▁lumini\",\n        -13.144312858581543\n      ],\n      [\n        \"▁connaît\",\n        -13.144615173339844\n      ],\n      [\n        \"▁Breite\",\n        -13.144674301147461\n      ],\n      [\n        \"▁Disability\",\n        -13.144774436950684\n      ],\n      [\n        \"▁Alfa\",\n        -13.144786834716797\n      ],\n      [\n        \"▁poise\",\n        -13.144895553588867\n      ],\n      [\n        \"▁Alpen\",\n        -13.144898414611816\n      ],\n      [\n        \"betont\",\n        -13.145031929016113\n      ],\n      [\n        \"159\",\n        -13.145161628723145\n      ],\n      [\n        \"▁geprägt\",\n        -13.145219802856445\n      ],\n      [\n        \"▁intrigued\",\n        -13.145219802856445\n      ],\n      [\n        \"▁sympathy\",\n        -13.145220756530762\n      ],\n      [\n        \"societal\",\n        -13.145225524902344\n      ],\n      [\n        \"▁sédui\",\n        -13.145243644714355\n      ],\n      [\n        \"▁differentiation\",\n        -13.145384788513184\n      ],\n      [\n        \"▁aprobare\",\n        -13.145744323730469\n      ],\n      [\n        \"schirm\",\n        -13.14585018157959\n      ],\n      [\n        \"sagt\",\n        -13.145956039428711\n      ],\n      [\n        \"7.3\",\n        -13.146101951599121\n      ],\n      [\n        \"Bib\",\n        -13.146263122558594\n      ],\n      [\n        \"europäischen\",\n        -13.146268844604492\n      ],\n      [\n        \"▁Innovative\",\n        -13.146268844604492\n      ],\n      [\n        \"▁autonome\",\n        -13.146330833435059\n      ],\n      [\n        \"▁Objective\",\n        -13.146400451660156\n      ],\n      [\n        \"▁refusal\",\n        -13.146551132202148\n      ],\n      [\n        \"▁exposé\",\n        -13.146719932556152\n      ],\n      [\n        \"▁cetăţeni\",\n        -13.146793365478516\n      ],\n      [\n        \"▁stimmt\",\n        -13.146798133850098\n      ],\n      [\n        \"acordul\",\n        -13.147162437438965\n      ],\n      [\n        \"▁hormonal\",\n        -13.147254943847656\n      ],\n      [\n        \"intermédiaire\",\n        -13.147319793701172\n      ],\n      [\n        \"▁doubl\",\n        -13.147374153137207\n      ],\n      [\n        \"▁flute\",\n        -13.147509574890137\n      ],\n      [\n        \"▁Balkon\",\n        -13.147523880004883\n      ],\n      [\n        \"▁Florian\",\n        -13.147607803344727\n      ],\n      [\n        \"737\",\n        -13.147614479064941\n      ],\n      [\n        \"▁dritte\",\n        -13.147639274597168\n      ],\n      [\n        \"spitze\",\n        -13.147685050964355\n      ],\n      [\n        \"donnent\",\n        -13.14778995513916\n      ],\n      [\n        \"▁Zuhause\",\n        -13.147850036621094\n      ],\n      [\n        \"▁VIII\",\n        -13.147852897644043\n      ],\n      [\n        \"familien\",\n        -13.148151397705078\n      ],\n      [\n        \"▁sécurisé\",\n        -13.148313522338867\n      ],\n      [\n        \"▁glamour\",\n        -13.148370742797852\n      ],\n      [\n        \"▁societati\",\n        -13.148370742797852\n      ],\n      [\n        \"typique\",\n        -13.1483793258667\n      ],\n      [\n        \"▁addicted\",\n        -13.148421287536621\n      ],\n      [\n        \"▁Providence\",\n        -13.148500442504883\n      ],\n      [\n        \"▁Extended\",\n        -13.148506164550781\n      ],\n      [\n        \"▁Barbie\",\n        -13.148513793945312\n      ],\n      [\n        \"zustand\",\n        -13.148516654968262\n      ],\n      [\n        \"▁Sauna\",\n        -13.148638725280762\n      ],\n      [\n        \"▁propane\",\n        -13.148663520812988\n      ],\n      [\n        \"europa\",\n        -13.148894309997559\n      ],\n      [\n        \"glued\",\n        -13.148940086364746\n      ],\n      [\n        \"▁Mystery\",\n        -13.148941993713379\n      ],\n      [\n        \"▁travaillé\",\n        -13.149106979370117\n      ],\n      [\n        \"riol\",\n        -13.149251937866211\n      ],\n      [\n        \"fleisch\",\n        -13.149288177490234\n      ],\n      [\n        \"▁Eintritt\",\n        -13.149327278137207\n      ],\n      [\n        \"▁Syndrome\",\n        -13.149422645568848\n      ],\n      [\n        \"▁petroleum\",\n        -13.149426460266113\n      ],\n      [\n        \"▁genial\",\n        -13.149433135986328\n      ],\n      [\n        \"sponsored\",\n        -13.149436950683594\n      ],\n      [\n        \"▁Cindy\",\n        -13.149436950683594\n      ],\n      [\n        \"▁courier\",\n        -13.149600982666016\n      ],\n      [\n        \"▁Scrap\",\n        -13.149640083312988\n      ],\n      [\n        \"▁conţin\",\n        -13.149724006652832\n      ],\n      [\n        \"(2007)\",\n        -13.149764060974121\n      ],\n      [\n        \"▁gewährleisten\",\n        -13.149949073791504\n      ],\n      [\n        \"▁proprietor\",\n        -13.15011215209961\n      ],\n      [\n        \"▁cheque\",\n        -13.15046215057373\n      ],\n      [\n        \"maternity\",\n        -13.150477409362793\n      ],\n      [\n        \"▁Gustav\",\n        -13.15048599243164\n      ],\n      [\n        \"▁arterial\",\n        -13.150497436523438\n      ],\n      [\n        \"▁whiskey\",\n        -13.150510787963867\n      ],\n      [\n        \"▁concealed\",\n        -13.150525093078613\n      ],\n      [\n        \"thèque\",\n        -13.150553703308105\n      ],\n      [\n        \"felony\",\n        -13.150579452514648\n      ],\n      [\n        \"▁tweeted\",\n        -13.150613784790039\n      ],\n      [\n        \"OTA\",\n        -13.150619506835938\n      ],\n      [\n        \"nsel\",\n        -13.150664329528809\n      ],\n      [\n        \"▁coarse\",\n        -13.150664329528809\n      ],\n      [\n        \"▁identificat\",\n        -13.150707244873047\n      ],\n      [\n        \"▁variability\",\n        -13.150716781616211\n      ],\n      [\n        \"civ\",\n        -13.150843620300293\n      ],\n      [\n        \"▁drastic\",\n        -13.150956153869629\n      ],\n      [\n        \"▁hatred\",\n        -13.151090621948242\n      ],\n      [\n        \"▁Bürgermeister\",\n        -13.151237487792969\n      ],\n      [\n        \"▁utilizatorilor\",\n        -13.15124225616455\n      ],\n      [\n        \"OULD\",\n        -13.15137004852295\n      ],\n      [\n        \"rmaßen\",\n        -13.151383399963379\n      ],\n      [\n        \"▁windshield\",\n        -13.151530265808105\n      ],\n      [\n        \"▁Particular\",\n        -13.151531219482422\n      ],\n      [\n        \"▁Tunnel\",\n        -13.151638984680176\n      ],\n      [\n        \"▁litri\",\n        -13.15164852142334\n      ],\n      [\n        \"extrême\",\n        -13.15180492401123\n      ],\n      [\n        \"▁Schalt\",\n        -13.151944160461426\n      ],\n      [\n        \"paket\",\n        -13.152159690856934\n      ],\n      [\n        \"berlin\",\n        -13.152169227600098\n      ],\n      [\n        \"▁slujb\",\n        -13.152193069458008\n      ],\n      [\n        \"facilitated\",\n        -13.152206420898438\n      ],\n      [\n        \"Congressional\",\n        -13.152510643005371\n      ],\n      [\n        \"▁honeymoon\",\n        -13.152585983276367\n      ],\n      [\n        \"▁Provision\",\n        -13.152697563171387\n      ],\n      [\n        \"▁Outfit\",\n        -13.152779579162598\n      ],\n      [\n        \"udder\",\n        -13.152814865112305\n      ],\n      [\n        \"▁chandelier\",\n        -13.153002738952637\n      ],\n      [\n        \"donating\",\n        -13.153132438659668\n      ],\n      [\n        \"historic\",\n        -13.15333080291748\n      ],\n      [\n        \"organized\",\n        -13.153508186340332\n      ],\n      [\n        \"(8)\",\n        -13.15356731414795\n      ],\n      [\n        \"▁touristique\",\n        -13.153610229492188\n      ],\n      [\n        \"▁Roosevelt\",\n        -13.153643608093262\n      ],\n      [\n        \"▁Verständnis\",\n        -13.153643608093262\n      ],\n      [\n        \"▁prilej\",\n        -13.153655052185059\n      ],\n      [\n        \"Vanity\",\n        -13.153806686401367\n      ],\n      [\n        \"chilly\",\n        -13.153964042663574\n      ],\n      [\n        \"loyer\",\n        -13.154031753540039\n      ],\n      [\n        \"▁Zhang\",\n        -13.154053688049316\n      ],\n      [\n        \"▁Nouveau\",\n        -13.154193878173828\n      ],\n      [\n        \"Soft\",\n        -13.154326438903809\n      ],\n      [\n        \"▁motherboard\",\n        -13.15441608428955\n      ],\n      [\n        \"▁Erklärung\",\n        -13.154701232910156\n      ],\n      [\n        \"▁Tasmania\",\n        -13.154702186584473\n      ],\n      [\n        \"▁verändern\",\n        -13.154703140258789\n      ],\n      [\n        \"▁seldom\",\n        -13.154711723327637\n      ],\n      [\n        \"▁Karriere\",\n        -13.154714584350586\n      ],\n      [\n        \"▁Mixed\",\n        -13.154902458190918\n      ],\n      [\n        \"umfang\",\n        -13.154970169067383\n      ],\n      [\n        \"▁Strategies\",\n        -13.155035972595215\n      ],\n      [\n        \"CHAR\",\n        -13.155051231384277\n      ],\n      [\n        \"olitary\",\n        -13.155075073242188\n      ],\n      [\n        \"▁Persoan\",\n        -13.1550874710083\n      ],\n      [\n        \"bewegung\",\n        -13.155242919921875\n      ],\n      [\n        \"▁Ernest\",\n        -13.155367851257324\n      ],\n      [\n        \"withdrawn\",\n        -13.155855178833008\n      ],\n      [\n        \"▁stationary\",\n        -13.155881881713867\n      ],\n      [\n        \"▁bland\",\n        -13.155939102172852\n      ],\n      [\n        \"▁Replace\",\n        -13.156059265136719\n      ],\n      [\n        \"▁Londres\",\n        -13.156290054321289\n      ],\n      [\n        \"▁plural\",\n        -13.156290054321289\n      ],\n      [\n        \"▁concentrat\",\n        -13.156515121459961\n      ],\n      [\n        \"Maschine\",\n        -13.156675338745117\n      ],\n      [\n        \"▁Advocate\",\n        -13.156820297241211\n      ],\n      [\n        \"▁vermitteln\",\n        -13.156824111938477\n      ],\n      [\n        \"▁dispenser\",\n        -13.156827926635742\n      ],\n      [\n        \"▁tedious\",\n        -13.15695858001709\n      ],\n      [\n        \"▁Straight\",\n        -13.15705394744873\n      ],\n      [\n        \"▁Corona\",\n        -13.157061576843262\n      ],\n      [\n        \"▁monumental\",\n        -13.157073020935059\n      ],\n      [\n        \"▁migrate\",\n        -13.15720272064209\n      ],\n      [\n        \"▁verlieren\",\n        -13.157366752624512\n      ],\n      [\n        \"▁Lub\",\n        -13.157482147216797\n      ],\n      [\n        \"▁reinforcement\",\n        -13.157827377319336\n      ],\n      [\n        \"▁cherish\",\n        -13.157843589782715\n      ],\n      [\n        \"Veterinary\",\n        -13.157881736755371\n      ],\n      [\n        \"geschwindigkeit\",\n        -13.157881736755371\n      ],\n      [\n        \"▁féminin\",\n        -13.157881736755371\n      ],\n      [\n        \"▁Facilities\",\n        -13.157964706420898\n      ],\n      [\n        \"▁urmari\",\n        -13.158050537109375\n      ],\n      [\n        \"▁Vertical\",\n        -13.158098220825195\n      ],\n      [\n        \"echoe\",\n        -13.158188819885254\n      ],\n      [\n        \"toured\",\n        -13.158548355102539\n      ],\n      [\n        \"Served\",\n        -13.158772468566895\n      ],\n      [\n        \"más\",\n        -13.158853530883789\n      ],\n      [\n        \"license\",\n        -13.158893585205078\n      ],\n      [\n        \"misunderstanding\",\n        -13.158944129943848\n      ],\n      [\n        \"▁glamorous\",\n        -13.158944129943848\n      ],\n      [\n        \"BJP\",\n        -13.158973693847656\n      ],\n      [\n        \"▁découvert\",\n        -13.159173965454102\n      ],\n      [\n        \"schönsten\",\n        -13.159517288208008\n      ],\n      [\n        \"▁(2018)\",\n        -13.159577369689941\n      ],\n      [\n        \"▁orasului\",\n        -13.159581184387207\n      ],\n      [\n        \"328\",\n        -13.159674644470215\n      ],\n      [\n        \"thighs\",\n        -13.159801483154297\n      ],\n      [\n        \"éclairage\",\n        -13.160008430480957\n      ],\n      [\n        \"Oamenii\",\n        -13.160009384155273\n      ],\n      [\n        \"▁Transmission\",\n        -13.16014575958252\n      ],\n      [\n        \"▁transpir\",\n        -13.16015911102295\n      ],\n      [\n        \"▁președinte\",\n        -13.160321235656738\n      ],\n      [\n        \"finalists\",\n        -13.160327911376953\n      ],\n      [\n        \"genügend\",\n        -13.160524368286133\n      ],\n      [\n        \"▁Aufmerksamkeit\",\n        -13.160539627075195\n      ],\n      [\n        \"▁unglaublich\",\n        -13.160539627075195\n      ],\n      [\n        \"▁descarc\",\n        -13.160604476928711\n      ],\n      [\n        \"▁Couch\",\n        -13.160683631896973\n      ],\n      [\n        \"eaucoup\",\n        -13.160788536071777\n      ],\n      [\n        \"▁adidas\",\n        -13.161075592041016\n      ],\n      [\n        \"▁1-800-\",\n        -13.161077499389648\n      ],\n      [\n        \"▁Communities\",\n        -13.161102294921875\n      ],\n      [\n        \"▁Einkommen\",\n        -13.161102294921875\n      ],\n      [\n        \"▁Reagan\",\n        -13.16114330291748\n      ],\n      [\n        \"▁Stoke\",\n        -13.161260604858398\n      ],\n      [\n        \"▁Snapchat\",\n        -13.161269187927246\n      ],\n      [\n        \"éclat\",\n        -13.161272048950195\n      ],\n      [\n        \"▁auseinander\",\n        -13.161367416381836\n      ],\n      [\n        \"▁richesse\",\n        -13.16137409210205\n      ],\n      [\n        \"▁toggle\",\n        -13.161396026611328\n      ],\n      [\n        \"▁Zutaten\",\n        -13.161606788635254\n      ],\n      [\n        \"▁député\",\n        -13.16161060333252\n      ],\n      [\n        \"▁battlefield\",\n        -13.161611557006836\n      ],\n      [\n        \"▁spirituel\",\n        -13.161611557006836\n      ],\n      [\n        \"▁Shuttle\",\n        -13.161632537841797\n      ],\n      [\n        \"▁Aktien\",\n        -13.161665916442871\n      ],\n      [\n        \"hormon\",\n        -13.161819458007812\n      ],\n      [\n        \"connection\",\n        -13.16187858581543\n      ],\n      [\n        \"▁vizitatori\",\n        -13.16191577911377\n      ],\n      [\n        \"érité\",\n        -13.161971092224121\n      ],\n      [\n        \"truck\",\n        -13.1619873046875\n      ],\n      [\n        \"▁yourselves\",\n        -13.162139892578125\n      ],\n      [\n        \"▁Logistics\",\n        -13.162140846252441\n      ],\n      [\n        \"coveted\",\n        -13.16215705871582\n      ],\n      [\n        \"▁şedinţ\",\n        -13.162671089172363\n      ],\n      [\n        \"▁messenger\",\n        -13.162703514099121\n      ],\n      [\n        \"▁țar\",\n        -13.162918090820312\n      ],\n      [\n        \"▁Grau\",\n        -13.163025856018066\n      ],\n      [\n        \"chirurgie\",\n        -13.163138389587402\n      ],\n      [\n        \"▁Ressourcen\",\n        -13.16320514678955\n      ],\n      [\n        \"▁Jésus\",\n        -13.163207054138184\n      ],\n      [\n        \"▁acțiune\",\n        -13.163208961486816\n      ],\n      [\n        \"▁Bundesliga\",\n        -13.163249015808105\n      ],\n      [\n        \"Lizenz\",\n        -13.163379669189453\n      ],\n      [\n        \"ELLE\",\n        -13.163908958435059\n      ],\n      [\n        \"vraie\",\n        -13.1639986038208\n      ],\n      [\n        \"ruined\",\n        -13.164018630981445\n      ],\n      [\n        \"▁Marble\",\n        -13.164109230041504\n      ],\n      [\n        \"▁Zambia\",\n        -13.164308547973633\n      ],\n      [\n        \"▁Finnish\",\n        -13.164366722106934\n      ],\n      [\n        \"▁trackback\",\n        -13.164488792419434\n      ],\n      [\n        \"héros\",\n        -13.16451644897461\n      ],\n      [\n        \"▁réclam\",\n        -13.164534568786621\n      ],\n      [\n        \"locurile\",\n        -13.164706230163574\n      ],\n      [\n        \"tägliche\",\n        -13.164753913879395\n      ],\n      [\n        \"IFF\",\n        -13.164824485778809\n      ],\n      [\n        \"▁contextual\",\n        -13.164938926696777\n      ],\n      [\n        \"▁Elvis\",\n        -13.165084838867188\n      ],\n      [\n        \"▁Batch\",\n        -13.165183067321777\n      ],\n      [\n        \"▁appris\",\n        -13.16519546508789\n      ],\n      [\n        \"intensive\",\n        -13.165404319763184\n      ],\n      [\n        \"▁întâmplat\",\n        -13.16565990447998\n      ],\n      [\n        \"▁prelucr\",\n        -13.16576099395752\n      ],\n      [\n        \"flore\",\n        -13.165873527526855\n      ],\n      [\n        \"▁Alkohol\",\n        -13.165877342224121\n      ],\n      [\n        \"Konzern\",\n        -13.165895462036133\n      ],\n      [\n        \"Delete\",\n        -13.166082382202148\n      ],\n      [\n        \"öck\",\n        -13.16612720489502\n      ],\n      [\n        \"▁clientii\",\n        -13.16614818572998\n      ],\n      [\n        \"▁innovate\",\n        -13.166224479675293\n      ],\n      [\n        \"▁ASAP\",\n        -13.166345596313477\n      ],\n      [\n        \"crumbs\",\n        -13.166425704956055\n      ],\n      [\n        \"reusable\",\n        -13.166489601135254\n      ],\n      [\n        \"▁Beaver\",\n        -13.166507720947266\n      ],\n      [\n        \"▁rosii\",\n        -13.166643142700195\n      ],\n      [\n        \"Arr\",\n        -13.166704177856445\n      ],\n      [\n        \"▁Zubehör\",\n        -13.166948318481445\n      ],\n      [\n        \"▁stolz\",\n        -13.166952133178711\n      ],\n      [\n        \"▁$75\",\n        -13.16695499420166\n      ],\n      [\n        \"▁Frühling\",\n        -13.166967391967773\n      ],\n      [\n        \"▁disagreement\",\n        -13.166988372802734\n      ],\n      [\n        \"▁formulate\",\n        -13.167381286621094\n      ],\n      [\n        \"braking\",\n        -13.167522430419922\n      ],\n      [\n        \"▁submarine\",\n        -13.167535781860352\n      ],\n      [\n        \"▁identificare\",\n        -13.167652130126953\n      ],\n      [\n        \"lansarea\",\n        -13.167659759521484\n      ],\n      [\n        \"covered\",\n        -13.167753219604492\n      ],\n      [\n        \"benso\",\n        -13.167859077453613\n      ],\n      [\n        \"▁situatie\",\n        -13.167989730834961\n      ],\n      [\n        \"hilf\",\n        -13.1681547164917\n      ],\n      [\n        \"▁Southampton\",\n        -13.168557167053223\n      ],\n      [\n        \"▁intéressé\",\n        -13.168557167053223\n      ],\n      [\n        \"▁congressional\",\n        -13.168572425842285\n      ],\n      [\n        \"65%\",\n        -13.168595314025879\n      ],\n      [\n        \"▁Allison\",\n        -13.168627738952637\n      ],\n      [\n        \"Mainland\",\n        -13.168726921081543\n      ],\n      [\n        \"▁touchscreen\",\n        -13.16882038116455\n      ],\n      [\n        \"leitet\",\n        -13.168922424316406\n      ],\n      [\n        \"mnului\",\n        -13.16958999633789\n      ],\n      [\n        \"▁engagiert\",\n        -13.169631004333496\n      ],\n      [\n        \"joacă\",\n        -13.16964340209961\n      ],\n      [\n        \"▁$5,000\",\n        -13.169652938842773\n      ],\n      [\n        \"upscale\",\n        -13.1697359085083\n      ],\n      [\n        \"▁vérité\",\n        -13.16983413696289\n      ],\n      [\n        \"flüssig\",\n        -13.170167922973633\n      ],\n      [\n        \"Richtlinie\",\n        -13.170169830322266\n      ],\n      [\n        \"▁positif\",\n        -13.170169830322266\n      ],\n      [\n        \"▁diferenta\",\n        -13.170175552368164\n      ],\n      [\n        \"▁întâi\",\n        -13.170707702636719\n      ],\n      [\n        \"ethylene\",\n        -13.170791625976562\n      ],\n      [\n        \"kreuz\",\n        -13.170913696289062\n      ],\n      [\n        \"Surely\",\n        -13.170990943908691\n      ],\n      [\n        \"puneti\",\n        -13.171002388000488\n      ],\n      [\n        \"europe\",\n        -13.171142578125\n      ],\n      [\n        \"▁comunist\",\n        -13.171271324157715\n      ],\n      [\n        \"unterricht\",\n        -13.171302795410156\n      ],\n      [\n        \"▁Füll\",\n        -13.171304702758789\n      ],\n      [\n        \"▁Aberdeen\",\n        -13.171792030334473\n      ],\n      [\n        \"▁DSLR\",\n        -13.171792030334473\n      ],\n      [\n        \"▁functioneaza\",\n        -13.171799659729004\n      ],\n      [\n        \"▁benches\",\n        -13.171807289123535\n      ],\n      [\n        \"▁Alpine\",\n        -13.171866416931152\n      ],\n      [\n        \"phthal\",\n        -13.172003746032715\n      ],\n      [\n        \"▁counselling\",\n        -13.17219066619873\n      ],\n      [\n        \"▁erzielen\",\n        -13.172323226928711\n      ],\n      [\n        \"▁părinţi\",\n        -13.172329902648926\n      ],\n      [\n        \"▁besitzen\",\n        -13.17236614227295\n      ],\n      [\n        \"heavenly\",\n        -13.172389030456543\n      ],\n      [\n        \"▁masque\",\n        -13.17281723022461\n      ],\n      [\n        \"▁Legislature\",\n        -13.172859191894531\n      ],\n      [\n        \"▁Recycling\",\n        -13.172861099243164\n      ],\n      [\n        \"▁Derma\",\n        -13.172883987426758\n      ],\n      [\n        \"reunite\",\n        -13.172926902770996\n      ],\n      [\n        \"recettes\",\n        -13.17310619354248\n      ],\n      [\n        \"converge\",\n        -13.173262596130371\n      ],\n      [\n        \"▁compoziti\",\n        -13.17327880859375\n      ],\n      [\n        \"▁Nürnberg\",\n        -13.173398971557617\n      ],\n      [\n        \"760\",\n        -13.173545837402344\n      ],\n      [\n        \"▁entière\",\n        -13.173674583435059\n      ],\n      [\n        \"▁parchment\",\n        -13.173944473266602\n      ],\n      [\n        \"▁Aufwand\",\n        -13.173945426940918\n      ],\n      [\n        \"▁antivirus\",\n        -13.174087524414062\n      ],\n      [\n        \"▁remettr\",\n        -13.17409610748291\n      ],\n      [\n        \"▁NEVER\",\n        -13.174243927001953\n      ],\n      [\n        \"▁restrictive\",\n        -13.174266815185547\n      ],\n      [\n        \"▁beurre\",\n        -13.174283027648926\n      ],\n      [\n        \"▁frigider\",\n        -13.174478530883789\n      ],\n      [\n        \"acquisition\",\n        -13.174642562866211\n      ],\n      [\n        \"▁Correct\",\n        -13.174866676330566\n      ],\n      [\n        \"▁immortal\",\n        -13.175017356872559\n      ],\n      [\n        \"▁occupancy\",\n        -13.175017356872559\n      ],\n      [\n        \"▁Tucson\",\n        -13.175019264221191\n      ],\n      [\n        \"▁Dhabi\",\n        -13.175025939941406\n      ],\n      [\n        \"obligation\",\n        -13.175033569335938\n      ],\n      [\n        \"▁warfare\",\n        -13.175037384033203\n      ],\n      [\n        \"▁syntax\",\n        -13.175045013427734\n      ],\n      [\n        \"APS\",\n        -13.175106048583984\n      ],\n      [\n        \"мен\",\n        -13.175209999084473\n      ],\n      [\n        \"▁diferenț\",\n        -13.175251960754395\n      ],\n      [\n        \"wordpress\",\n        -13.17549991607666\n      ],\n      [\n        \"▁Wohnzimmer\",\n        -13.175593376159668\n      ],\n      [\n        \"oppo\",\n        -13.175736427307129\n      ],\n      [\n        \"▁miscare\",\n        -13.175762176513672\n      ],\n      [\n        \"companiilor\",\n        -13.17581558227539\n      ],\n      [\n        \"▁bezahlt\",\n        -13.17584228515625\n      ],\n      [\n        \"Sterne\",\n        -13.175864219665527\n      ],\n      [\n        \"inability\",\n        -13.175898551940918\n      ],\n      [\n        \"▁Hoffnung\",\n        -13.176156044006348\n      ],\n      [\n        \"▁românească\",\n        -13.176176071166992\n      ],\n      [\n        \"document\",\n        -13.176177024841309\n      ],\n      [\n        \"borrowers\",\n        -13.17625904083252\n      ],\n      [\n        \"▁rasa\",\n        -13.176301956176758\n      ],\n      [\n        \"▁bénéfice\",\n        -13.176445960998535\n      ],\n      [\n        \"▁Panda\",\n        -13.17645263671875\n      ],\n      [\n        \"▁cărţi\",\n        -13.176730155944824\n      ],\n      [\n        \"▁Vorgehen\",\n        -13.17690658569336\n      ],\n      [\n        \"▁afecteaz\",\n        -13.176956176757812\n      ],\n      [\n        \"▁diagnos\",\n        -13.177050590515137\n      ],\n      [\n        \"▁Dentistry\",\n        -13.177180290222168\n      ],\n      [\n        \"▁staggering\",\n        -13.177180290222168\n      ],\n      [\n        \"präsident\",\n        -13.177181243896484\n      ],\n      [\n        \"▁vocational\",\n        -13.177239418029785\n      ],\n      [\n        \"Combined\",\n        -13.177287101745605\n      ],\n      [\n        \"stère\",\n        -13.177306175231934\n      ],\n      [\n        \"▁frunze\",\n        -13.177478790283203\n      ],\n      [\n        \"OLI\",\n        -13.177525520324707\n      ],\n      [\n        \"▁răc\",\n        -13.177752494812012\n      ],\n      [\n        \"▁changé\",\n        -13.177754402160645\n      ],\n      [\n        \"▁reprezentanți\",\n        -13.177757263183594\n      ],\n      [\n        \"▁ausgeschlossen\",\n        -13.177777290344238\n      ],\n      [\n        \"Windows\",\n        -13.177891731262207\n      ],\n      [\n        \"sometimes\",\n        -13.177898406982422\n      ],\n      [\n        \"▁dargestellt\",\n        -13.178120613098145\n      ],\n      [\n        \"provoking\",\n        -13.178263664245605\n      ],\n      [\n        \"terribly\",\n        -13.178264617919922\n      ],\n      [\n        \"▁speculate\",\n        -13.178274154663086\n      ],\n      [\n        \"▁complément\",\n        -13.178305625915527\n      ],\n      [\n        \"▁(2006)\",\n        -13.178306579589844\n      ],\n      [\n        \"zulegen\",\n        -13.178668022155762\n      ],\n      [\n        \"▁définitive\",\n        -13.178876876831055\n      ],\n      [\n        \"considerare\",\n        -13.17911148071289\n      ],\n      [\n        \"▁Subaru\",\n        -13.179354667663574\n      ],\n      [\n        \"WAN\",\n        -13.179390907287598\n      ],\n      [\n        \"guessed\",\n        -13.179417610168457\n      ],\n      [\n        \"spannung\",\n        -13.179479598999023\n      ],\n      [\n        \"▁supernatural\",\n        -13.179515838623047\n      ],\n      [\n        \"▁Interstate\",\n        -13.17957878112793\n      ],\n      [\n        \"▁redundant\",\n        -13.179891586303711\n      ],\n      [\n        \"▁HUG\",\n        -13.179893493652344\n      ],\n      [\n        \"▁restauration\",\n        -13.180006980895996\n      ],\n      [\n        \"repute\",\n        -13.180011749267578\n      ],\n      [\n        \"coagul\",\n        -13.180028915405273\n      ],\n      [\n        \"tehnologia\",\n        -13.18043327331543\n      ],\n      [\n        \"warded\",\n        -13.180444717407227\n      ],\n      [\n        \"▁lobster\",\n        -13.180469512939453\n      ],\n      [\n        \"▁Hafen\",\n        -13.180542945861816\n      ],\n      [\n        \"▁Guess\",\n        -13.18056583404541\n      ],\n      [\n        \"seraient\",\n        -13.181038856506348\n      ],\n      [\n        \"▁trench\",\n        -13.181156158447266\n      ],\n      [\n        \"▁piept\",\n        -13.181283950805664\n      ],\n      [\n        \"categorized\",\n        -13.181396484375\n      ],\n      [\n        \"softer\",\n        -13.1815185546875\n      ],\n      [\n        \"▁feasibility\",\n        -13.181519508361816\n      ],\n      [\n        \"▁restructuring\",\n        -13.181519508361816\n      ],\n      [\n        \"▁GOOD\",\n        -13.181537628173828\n      ],\n      [\n        \"▁inspiré\",\n        -13.181610107421875\n      ],\n      [\n        \"▁spéci\",\n        -13.18163013458252\n      ],\n      [\n        \"▁Mattress\",\n        -13.181686401367188\n      ],\n      [\n        \"▁biologique\",\n        -13.181702613830566\n      ],\n      [\n        \"▁Crema\",\n        -13.182043075561523\n      ],\n      [\n        \"▁korrekt\",\n        -13.182063102722168\n      ],\n      [\n        \"▁imperfect\",\n        -13.182205200195312\n      ],\n      [\n        \"▁advantageous\",\n        -13.182329177856445\n      ],\n      [\n        \"9.00\",\n        -13.182390213012695\n      ],\n      [\n        \"PAL\",\n        -13.182557106018066\n      ],\n      [\n        \"▁Illustration\",\n        -13.182607650756836\n      ],\n      [\n        \"▁Katherine\",\n        -13.182607650756836\n      ],\n      [\n        \"▁cervical\",\n        -13.182607650756836\n      ],\n      [\n        \"▁hectic\",\n        -13.182611465454102\n      ],\n      [\n        \"▁Belastung\",\n        -13.182615280151367\n      ],\n      [\n        \"▁Laguna\",\n        -13.182628631591797\n      ],\n      [\n        \"▁Burton\",\n        -13.182761192321777\n      ],\n      [\n        \"nettoyage\",\n        -13.182875633239746\n      ],\n      [\n        \"Toward\",\n        -13.183072090148926\n      ],\n      [\n        \"continuare\",\n        -13.183072090148926\n      ],\n      [\n        \"▁acumulat\",\n        -13.183106422424316\n      ],\n      [\n        \"▁déposé\",\n        -13.183216094970703\n      ],\n      [\n        \"▁prestige\",\n        -13.183269500732422\n      ],\n      [\n        \"▁LNG\",\n        -13.183525085449219\n      ],\n      [\n        \"▁Dacia\",\n        -13.183662414550781\n      ],\n      [\n        \"▁concede\",\n        -13.183691024780273\n      ],\n      [\n        \"▁reconciliation\",\n        -13.183822631835938\n      ],\n      [\n        \"Sistemul\",\n        -13.183877944946289\n      ],\n      [\n        \"Speed\",\n        -13.183937072753906\n      ],\n      [\n        \"▁Implant\",\n        -13.183977127075195\n      ],\n      [\n        \"▁möchtest\",\n        -13.184020042419434\n      ],\n      [\n        \"▁Norton\",\n        -13.184064865112305\n      ],\n      [\n        \"▁cosmic\",\n        -13.184181213378906\n      ],\n      [\n        \"enregistrement\",\n        -13.184247016906738\n      ],\n      [\n        \"țării\",\n        -13.18433952331543\n      ],\n      [\n        \"Veröffentlichung\",\n        -13.184786796569824\n      ],\n      [\n        \"erlebnis\",\n        -13.184786796569824\n      ],\n      [\n        \"▁Carpenter\",\n        -13.184786796569824\n      ],\n      [\n        \"▁INFORMATION\",\n        -13.184786796569824\n      ],\n      [\n        \"invites\",\n        -13.18481731414795\n      ],\n      [\n        \"▁gewan\",\n        -13.1849365234375\n      ],\n      [\n        \"▁réservé\",\n        -13.184986114501953\n      ],\n      [\n        \"▁aquatic\",\n        -13.184988021850586\n      ],\n      [\n        \"▁Seoul\",\n        -13.18507194519043\n      ],\n      [\n        \"▁älter\",\n        -13.185185432434082\n      ],\n      [\n        \"▁classmates\",\n        -13.185223579406738\n      ],\n      [\n        \"gelangen\",\n        -13.185253143310547\n      ],\n      [\n        \"▁Camill\",\n        -13.185285568237305\n      ],\n      [\n        \"simo\",\n        -13.185291290283203\n      ],\n      [\n        \"▁dormitor\",\n        -13.185333251953125\n      ],\n      [\n        \"wahren\",\n        -13.185354232788086\n      ],\n      [\n        \"▁incremental\",\n        -13.185357093811035\n      ],\n      [\n        \"▁caci\",\n        -13.185494422912598\n      ],\n      [\n        \"mittlere\",\n        -13.185752868652344\n      ],\n      [\n        \"▁condominium\",\n        -13.185877799987793\n      ],\n      [\n        \"▁rainforest\",\n        -13.185877799987793\n      ],\n      [\n        \"▁championnat\",\n        -13.185891151428223\n      ],\n      [\n        \"▁interrupted\",\n        -13.185921669006348\n      ],\n      [\n        \"▁tactile\",\n        -13.185930252075195\n      ],\n      [\n        \"▁unconditional\",\n        -13.185945510864258\n      ],\n      [\n        \"▁reactive\",\n        -13.186041831970215\n      ],\n      [\n        \"▁Stretch\",\n        -13.1861572265625\n      ],\n      [\n        \"▁serene\",\n        -13.18624210357666\n      ],\n      [\n        \"570\",\n        -13.186318397521973\n      ],\n      [\n        \"igte\",\n        -13.186376571655273\n      ],\n      [\n        \"Louis\",\n        -13.186410903930664\n      ],\n      [\n        \"▁Mittelpunkt\",\n        -13.186493873596191\n      ],\n      [\n        \"EEP\",\n        -13.18651294708252\n      ],\n      [\n        \"▁vault\",\n        -13.186552047729492\n      ],\n      [\n        \"absolu\",\n        -13.186893463134766\n      ],\n      [\n        \"▁solidarity\",\n        -13.186971664428711\n      ],\n      [\n        \"CLICK\",\n        -13.18708324432373\n      ],\n      [\n        \"▁hustle\",\n        -13.187090873718262\n      ],\n      [\n        \"▁microscope\",\n        -13.187105178833008\n      ],\n      [\n        \"▁Recommended\",\n        -13.187111854553223\n      ],\n      [\n        \"âche\",\n        -13.18716812133789\n      ],\n      [\n        \"▁flashlight\",\n        -13.187286376953125\n      ],\n      [\n        \"modificarea\",\n        -13.18754768371582\n      ],\n      [\n        \"izaţi\",\n        -13.18773078918457\n      ],\n      [\n        \"planned\",\n        -13.187899589538574\n      ],\n      [\n        \"Download\",\n        -13.187906265258789\n      ],\n      [\n        \"▁gourmand\",\n        -13.188064575195312\n      ],\n      [\n        \"▁subsidiaries\",\n        -13.188064575195312\n      ],\n      [\n        \"orthodox\",\n        -13.188135147094727\n      ],\n      [\n        \"▁Auburn\",\n        -13.188323020935059\n      ],\n      [\n        \"▁exprimat\",\n        -13.188336372375488\n      ],\n      [\n        \"procédé\",\n        -13.18861198425293\n      ],\n      [\n        \"▁ressenti\",\n        -13.188648223876953\n      ],\n      [\n        \"▁stint\",\n        -13.188678741455078\n      ],\n      [\n        \"Essentially\",\n        -13.189072608947754\n      ],\n      [\n        \"▁Savior\",\n        -13.189164161682129\n      ],\n      [\n        \"▁Flood\",\n        -13.189168930053711\n      ],\n      [\n        \"▁neurological\",\n        -13.189249038696289\n      ],\n      [\n        \"▁strig\",\n        -13.189340591430664\n      ],\n      [\n        \"scended\",\n        -13.189421653747559\n      ],\n      [\n        \"▁Shiva\",\n        -13.189483642578125\n      ],\n      [\n        \"▁Sketch\",\n        -13.189544677734375\n      ],\n      [\n        \"▁monarch\",\n        -13.18956184387207\n      ],\n      [\n        \"▁Preview\",\n        -13.189632415771484\n      ],\n      [\n        \"▁bewegt\",\n        -13.189811706542969\n      ],\n      [\n        \"mapped\",\n        -13.189818382263184\n      ],\n      [\n        \"énorme\",\n        -13.189962387084961\n      ],\n      [\n        \"▁définition\",\n        -13.189963340759277\n      ],\n      [\n        \"▁nécessité\",\n        -13.189984321594238\n      ],\n      [\n        \"▁antren\",\n        -13.190027236938477\n      ],\n      [\n        \"▁Infant\",\n        -13.190072059631348\n      ],\n      [\n        \"▁incumbent\",\n        -13.190255165100098\n      ],\n      [\n        \"▁pavilion\",\n        -13.190255165100098\n      ],\n      [\n        \"▁Taliban\",\n        -13.19025707244873\n      ],\n      [\n        \"Easily\",\n        -13.19025993347168\n      ],\n      [\n        \"▁verteilt\",\n        -13.19030475616455\n      ],\n      [\n        \"▁Biblical\",\n        -13.190320014953613\n      ],\n      [\n        \"Christian\",\n        -13.190333366394043\n      ],\n      [\n        \"județul\",\n        -13.190436363220215\n      ],\n      [\n        \"Learning\",\n        -13.19046688079834\n      ],\n      [\n        \"▁Expand\",\n        -13.19054126739502\n      ],\n      [\n        \"▁Attach\",\n        -13.19056224822998\n      ],\n      [\n        \"consideră\",\n        -13.190573692321777\n      ],\n      [\n        \"einsatz\",\n        -13.190574645996094\n      ],\n      [\n        \"Numai\",\n        -13.190585136413574\n      ],\n      [\n        \"▁Eintrag\",\n        -13.190597534179688\n      ],\n      [\n        \"▁üblich\",\n        -13.190607070922852\n      ],\n      [\n        \"▁cumpără\",\n        -13.19062614440918\n      ],\n      [\n        \"escaped\",\n        -13.190693855285645\n      ],\n      [\n        \"▁Ortodox\",\n        -13.190804481506348\n      ],\n      [\n        \"▁obţinut\",\n        -13.190805435180664\n      ],\n      [\n        \"ecluded\",\n        -13.191036224365234\n      ],\n      [\n        \"▁brownie\",\n        -13.191089630126953\n      ],\n      [\n        \"▁regulament\",\n        -13.191253662109375\n      ],\n      [\n        \"▁Chaos\",\n        -13.191302299499512\n      ],\n      [\n        \"▁masiv\",\n        -13.19132137298584\n      ],\n      [\n        \"▁Gerald\",\n        -13.191376686096191\n      ],\n      [\n        \"▁Sigur\",\n        -13.191380500793457\n      ],\n      [\n        \"▁wavelength\",\n        -13.191380500793457\n      ],\n      [\n        \"▁retiring\",\n        -13.191396713256836\n      ],\n      [\n        \"▁exactement\",\n        -13.191819190979004\n      ],\n      [\n        \"ntino\",\n        -13.191823959350586\n      ],\n      [\n        \"▁Krebs\",\n        -13.19194221496582\n      ],\n      [\n        \"▁monatlich\",\n        -13.191956520080566\n      ],\n      [\n        \"▁aranj\",\n        -13.192011833190918\n      ],\n      [\n        \"▁priveşt\",\n        -13.192099571228027\n      ],\n      [\n        \"▁mecanic\",\n        -13.192109107971191\n      ],\n      [\n        \"money\",\n        -13.192233085632324\n      ],\n      [\n        \"parliamentary\",\n        -13.1922607421875\n      ],\n      [\n        \"▁probation\",\n        -13.192427635192871\n      ],\n      [\n        \"embroidered\",\n        -13.192451477050781\n      ],\n      [\n        \"▁amenajat\",\n        -13.192451477050781\n      ],\n      [\n        \"▁remnant\",\n        -13.192451477050781\n      ],\n      [\n        \"▁senzati\",\n        -13.192472457885742\n      ],\n      [\n        \"▁Declaration\",\n        -13.192483901977539\n      ],\n      [\n        \"farbe\",\n        -13.192506790161133\n      ],\n      [\n        \"▁skinny\",\n        -13.19260311126709\n      ],\n      [\n        \"Energi\",\n        -13.192648887634277\n      ],\n      [\n        \"verhältnisse\",\n        -13.19288158416748\n      ],\n      [\n        \"Recruit\",\n        -13.192972183227539\n      ],\n      [\n        \"frying\",\n        -13.193161010742188\n      ],\n      [\n        \"925\",\n        -13.193294525146484\n      ],\n      [\n        \"nstruire\",\n        -13.193302154541016\n      ],\n      [\n        \"toasted\",\n        -13.193424224853516\n      ],\n      [\n        \"▁nicotine\",\n        -13.193551063537598\n      ],\n      [\n        \"recessed\",\n        -13.193570137023926\n      ],\n      [\n        \"▁dialect\",\n        -13.193572044372559\n      ],\n      [\n        \"▁confisc\",\n        -13.193575859069824\n      ],\n      [\n        \"▁bubbl\",\n        -13.193643569946289\n      ],\n      [\n        \"▁Precision\",\n        -13.193682670593262\n      ],\n      [\n        \"▁sollicit\",\n        -13.193842887878418\n      ],\n      [\n        \"▁Moral\",\n        -13.193977355957031\n      ],\n      [\n        \"▁renseignements\",\n        -13.194112777709961\n      ],\n      [\n        \"UMP\",\n        -13.194116592407227\n      ],\n      [\n        \"ijn\",\n        -13.194183349609375\n      ],\n      [\n        \"▁fermeture\",\n        -13.194320678710938\n      ],\n      [\n        \"▁blueprint\",\n        -13.19462776184082\n      ],\n      [\n        \"▁groceries\",\n        -13.194652557373047\n      ],\n      [\n        \"möbel\",\n        -13.194655418395996\n      ],\n      [\n        \"▁Plenty\",\n        -13.194657325744629\n      ],\n      [\n        \"▁forfeit\",\n        -13.194719314575195\n      ],\n      [\n        \"méthodes\",\n        -13.194915771484375\n      ],\n      [\n        \"paving\",\n        -13.19493293762207\n      ],\n      [\n        \"outheastern\",\n        -13.194979667663574\n      ],\n      [\n        \"▁Overview\",\n        -13.19503116607666\n      ],\n      [\n        \"▁observers\",\n        -13.195171356201172\n      ],\n      [\n        \"▁Timișoara\",\n        -13.19520378112793\n      ],\n      [\n        \"noticing\",\n        -13.195332527160645\n      ],\n      [\n        \"▁Owl\",\n        -13.195381164550781\n      ],\n      [\n        \"▁1925\",\n        -13.195517539978027\n      ],\n      [\n        \"▁prüfen\",\n        -13.195755004882812\n      ],\n      [\n        \"▁Bewohner\",\n        -13.195756912231445\n      ],\n      [\n        \"▁Latvia\",\n        -13.195770263671875\n      ],\n      [\n        \"▁Tuscan\",\n        -13.19577407836914\n      ],\n      [\n        \"▁apprenticeship\",\n        -13.195789337158203\n      ],\n      [\n        \"▁courteous\",\n        -13.1958646774292\n      ],\n      [\n        \"adult\",\n        -13.196023941040039\n      ],\n      [\n        \"Licensed\",\n        -13.196029663085938\n      ],\n      [\n        \"abused\",\n        -13.196762084960938\n      ],\n      [\n        \"confidence\",\n        -13.19678020477295\n      ],\n      [\n        \"▁revolt\",\n        -13.196782112121582\n      ],\n      [\n        \"conference\",\n        -13.196861267089844\n      ],\n      [\n        \"genoss\",\n        -13.196914672851562\n      ],\n      [\n        \"▁răni\",\n        -13.196944236755371\n      ],\n      [\n        \"▁Intervention\",\n        -13.196949005126953\n      ],\n      [\n        \"▁primesc\",\n        -13.196969985961914\n      ],\n      [\n        \"trays\",\n        -13.197041511535645\n      ],\n      [\n        \"nozzle\",\n        -13.197216033935547\n      ],\n      [\n        \"▁splitting\",\n        -13.197443962097168\n      ],\n      [\n        \"▁könne\",\n        -13.197507858276367\n      ],\n      [\n        \"▁peisaj\",\n        -13.197943687438965\n      ],\n      [\n        \"▁academia\",\n        -13.197962760925293\n      ],\n      [\n        \"▁chakra\",\n        -13.197979927062988\n      ],\n      [\n        \"▁Abdul\",\n        -13.1981201171875\n      ],\n      [\n        \"▁Beschreibung\",\n        -13.198225021362305\n      ],\n      [\n        \"Regeln\",\n        -13.19831371307373\n      ],\n      [\n        \"eezy\",\n        -13.198314666748047\n      ],\n      [\n        \"▁problématique\",\n        -13.198515892028809\n      ],\n      [\n        \"▁Ausführung\",\n        -13.198524475097656\n      ],\n      [\n        \"▁reconnect\",\n        -13.19868278503418\n      ],\n      [\n        \"▁telefonic\",\n        -13.198966026306152\n      ],\n      [\n        \"▁Ethereum\",\n        -13.199069023132324\n      ],\n      [\n        \"▁Winnipeg\",\n        -13.199069023132324\n      ],\n      [\n        \"▁misconception\",\n        -13.199069023132324\n      ],\n      [\n        \"▁Verpackung\",\n        -13.199070930480957\n      ],\n      [\n        \"▁erzeugt\",\n        -13.199097633361816\n      ],\n      [\n        \"▁Identity\",\n        -13.199104309082031\n      ],\n      [\n        \"▁dunkle\",\n        -13.199109077453613\n      ],\n      [\n        \"sustaining\",\n        -13.19916820526123\n      ],\n      [\n        \"▁pereche\",\n        -13.199178695678711\n      ],\n      [\n        \"▁neîn\",\n        -13.199239730834961\n      ],\n      [\n        \"directorul\",\n        -13.199291229248047\n      ],\n      [\n        \"▁élabor\",\n        -13.199584007263184\n      ],\n      [\n        \"▁Hollow\",\n        -13.19960880279541\n      ],\n      [\n        \"▁getestet\",\n        -13.199751853942871\n      ],\n      [\n        \"▁Promote\",\n        -13.199797630310059\n      ],\n      [\n        \"agriculture\",\n        -13.199920654296875\n      ],\n      [\n        \"▁deosebir\",\n        -13.199934005737305\n      ],\n      [\n        \"▁neam\",\n        -13.199999809265137\n      ],\n      [\n        \"aufbau\",\n        -13.200042724609375\n      ],\n      [\n        \"▁susținut\",\n        -13.200079917907715\n      ],\n      [\n        \"fueled\",\n        -13.200119018554688\n      ],\n      [\n        \"▁impresionant\",\n        -13.200177192687988\n      ],\n      [\n        \"innate\",\n        -13.20026969909668\n      ],\n      [\n        \"grenzt\",\n        -13.200340270996094\n      ],\n      [\n        \"rescued\",\n        -13.200514793395996\n      ],\n      [\n        \"bestand\",\n        -13.200559616088867\n      ],\n      [\n        \"▁adjunct\",\n        -13.200729370117188\n      ],\n      [\n        \"▁Mischung\",\n        -13.200754165649414\n      ],\n      [\n        \"▁Lease\",\n        -13.201258659362793\n      ],\n      [\n        \"espagnol\",\n        -13.201284408569336\n      ],\n      [\n        \"▁Kickstarter\",\n        -13.201284408569336\n      ],\n      [\n        \"▁buzunar\",\n        -13.201284408569336\n      ],\n      [\n        \"▁buddies\",\n        -13.20129108428955\n      ],\n      [\n        \"käufe\",\n        -13.201485633850098\n      ],\n      [\n        \"cevoir\",\n        -13.201582908630371\n      ],\n      [\n        \"▁creşte\",\n        -13.201675415039062\n      ],\n      [\n        \"▁Cluster\",\n        -13.201825141906738\n      ],\n      [\n        \"▁obișnui\",\n        -13.201838493347168\n      ],\n      [\n        \"▁cassette\",\n        -13.201889038085938\n      ],\n      [\n        \"▁optisch\",\n        -13.201947212219238\n      ],\n      [\n        \"manned\",\n        -13.20200252532959\n      ],\n      [\n        \"schneid\",\n        -13.202362060546875\n      ],\n      [\n        \"Württemberg\",\n        -13.202393531799316\n      ],\n      [\n        \"shredded\",\n        -13.202393531799316\n      ],\n      [\n        \"▁botanical\",\n        -13.20239543914795\n      ],\n      [\n        \"characterization\",\n        -13.202445983886719\n      ],\n      [\n        \"▁Durchführung\",\n        -13.202452659606934\n      ],\n      [\n        \"▁tireless\",\n        -13.20250129699707\n      ],\n      [\n        \"lässlich\",\n        -13.20254135131836\n      ],\n      [\n        \"▁Merchant\",\n        -13.202570915222168\n      ],\n      [\n        \"joutez\",\n        -13.20259952545166\n      ],\n      [\n        \"▁amélior\",\n        -13.202676773071289\n      ],\n      [\n        \"fixed\",\n        -13.202741622924805\n      ],\n      [\n        \"kho\",\n        -13.202760696411133\n      ],\n      [\n        \"▁televizor\",\n        -13.202948570251465\n      ],\n      [\n        \"▁Davies\",\n        -13.202964782714844\n      ],\n      [\n        \"enceinte\",\n        -13.203118324279785\n      ],\n      [\n        \"▁Panorama\",\n        -13.20350456237793\n      ],\n      [\n        \"▁maternal\",\n        -13.203507423400879\n      ],\n      [\n        \"diversified\",\n        -13.203513145446777\n      ],\n      [\n        \"▁Jü\",\n        -13.203570365905762\n      ],\n      [\n        \"▁naz\",\n        -13.203730583190918\n      ],\n      [\n        \"▁plonge\",\n        -13.2039213180542\n      ],\n      [\n        \"geschickt\",\n        -13.203944206237793\n      ],\n      [\n        \"MIS\",\n        -13.204215049743652\n      ],\n      [\n        \"ragged\",\n        -13.204553604125977\n      ],\n      [\n        \"▁diarrhea\",\n        -13.20461654663086\n      ],\n      [\n        \"▁tsunami\",\n        -13.20461654663086\n      ],\n      [\n        \"▁Nikola\",\n        -13.204625129699707\n      ],\n      [\n        \"▁festivities\",\n        -13.20464038848877\n      ],\n      [\n        \"potting\",\n        -13.20479965209961\n      ],\n      [\n        \"▁telefonisch\",\n        -13.204874038696289\n      ],\n      [\n        \"TAR\",\n        -13.204971313476562\n      ],\n      [\n        \"▁schimbări\",\n        -13.205023765563965\n      ],\n      [\n        \"▁occidental\",\n        -13.205172538757324\n      ],\n      [\n        \"schloss\",\n        -13.205179214477539\n      ],\n      [\n        \"Print\",\n        -13.205284118652344\n      ],\n      [\n        \"▁autoritățil\",\n        -13.205361366271973\n      ],\n      [\n        \"idos\",\n        -13.20556640625\n      ],\n      [\n        \"mediocr\",\n        -13.20559310913086\n      ],\n      [\n        \"▁Decla\",\n        -13.205686569213867\n      ],\n      [\n        \"▁Elliott\",\n        -13.205729484558105\n      ],\n      [\n        \"▁pinpoint\",\n        -13.205734252929688\n      ],\n      [\n        \"▁disciple\",\n        -13.20579719543457\n      ],\n      [\n        \"▁Cairo\",\n        -13.2058744430542\n      ],\n      [\n        \"▁15-20\",\n        -13.2059326171875\n      ],\n      [\n        \"▁limbaj\",\n        -13.20611572265625\n      ],\n      [\n        \"▁retenu\",\n        -13.206154823303223\n      ],\n      [\n        \"▁Blüte\",\n        -13.20628833770752\n      ],\n      [\n        \"▁MINI\",\n        -13.206467628479004\n      ],\n      [\n        \"▁lumină\",\n        -13.206567764282227\n      ],\n      [\n        \"▁flawed\",\n        -13.206846237182617\n      ],\n      [\n        \"▁Belarus\",\n        -13.207067489624023\n      ],\n      [\n        \"Totul\",\n        -13.207207679748535\n      ],\n      [\n        \"hôte\",\n        -13.207273483276367\n      ],\n      [\n        \"▁verbringen\",\n        -13.207315444946289\n      ],\n      [\n        \"▁simultaneous\",\n        -13.207344055175781\n      ],\n      [\n        \"▁competiți\",\n        -13.207402229309082\n      ],\n      [\n        \"▁lancement\",\n        -13.207413673400879\n      ],\n      [\n        \"▁proprietati\",\n        -13.207432746887207\n      ],\n      [\n        \"▁angajator\",\n        -13.207465171813965\n      ],\n      [\n        \"▁ignorant\",\n        -13.207674026489258\n      ],\n      [\n        \"▁indicative\",\n        -13.207700729370117\n      ],\n      [\n        \"▁Bearbeitung\",\n        -13.207961082458496\n      ],\n      [\n        \"▁Ungaria\",\n        -13.207961082458496\n      ],\n      [\n        \"▁Sfint\",\n        -13.208015441894531\n      ],\n      [\n        \"▁Trojan\",\n        -13.20804214477539\n      ],\n      [\n        \"▁1911\",\n        -13.208100318908691\n      ],\n      [\n        \"▁reliabl\",\n        -13.2081937789917\n      ],\n      [\n        \"6-0\",\n        -13.20827865600586\n      ],\n      [\n        \"obst\",\n        -13.208523750305176\n      ],\n      [\n        \"▁relève\",\n        -13.208579063415527\n      ],\n      [\n        \"▁standpoint\",\n        -13.208874702453613\n      ],\n      [\n        \"ridden\",\n        -13.208918571472168\n      ],\n      [\n        \"▁Pdf\",\n        -13.209005355834961\n      ],\n      [\n        \"tatewide\",\n        -13.209051132202148\n      ],\n      [\n        \"Water\",\n        -13.209062576293945\n      ],\n      [\n        \"▁Pricing\",\n        -13.209089279174805\n      ],\n      [\n        \"▁protecţi\",\n        -13.209168434143066\n      ],\n      [\n        \"November\",\n        -13.209615707397461\n      ],\n      [\n        \"▁televiziune\",\n        -13.20964241027832\n      ],\n      [\n        \"Sodium\",\n        -13.209881782531738\n      ],\n      [\n        \"douceur\",\n        -13.209942817687988\n      ],\n      [\n        \"▁Flasche\",\n        -13.210183143615723\n      ],\n      [\n        \"3.9\",\n        -13.210193634033203\n      ],\n      [\n        \"▁electromagnetic\",\n        -13.210195541381836\n      ],\n      [\n        \"▁mitochondria\",\n        -13.210195541381836\n      ],\n      [\n        \"Suddenly\",\n        -13.210199356079102\n      ],\n      [\n        \"▁Drupal\",\n        -13.210201263427734\n      ],\n      [\n        \"▁supraveghere\",\n        -13.210211753845215\n      ],\n      [\n        \"▁cornea\",\n        -13.210288047790527\n      ],\n      [\n        \"räumt\",\n        -13.210309982299805\n      ],\n      [\n        \"▁healed\",\n        -13.210410118103027\n      ],\n      [\n        \"Roc\",\n        -13.210649490356445\n      ],\n      [\n        \"▁temporar\",\n        -13.210707664489746\n      ],\n      [\n        \"▁amaze\",\n        -13.210770606994629\n      ],\n      [\n        \"▁confrunta\",\n        -13.210833549499512\n      ],\n      [\n        \"Afterward\",\n        -13.210836410522461\n      ],\n      [\n        \"▁festgelegt\",\n        -13.21084213256836\n      ],\n      [\n        \"▁Kuchen\",\n        -13.210844993591309\n      ],\n      [\n        \"▁perpetual\",\n        -13.210858345031738\n      ],\n      [\n        \"systematically\",\n        -13.211000442504883\n      ],\n      [\n        \"▁coloan\",\n        -13.211006164550781\n      ],\n      [\n        \"▁extensi\",\n        -13.211058616638184\n      ],\n      [\n        \"▁Județean\",\n        -13.211315155029297\n      ],\n      [\n        \"▁amelior\",\n        -13.211315155029297\n      ],\n      [\n        \"▁illustrator\",\n        -13.211315155029297\n      ],\n      [\n        \"▁titanium\",\n        -13.211344718933105\n      ],\n      [\n        \"SMEs\",\n        -13.211384773254395\n      ],\n      [\n        \"taxable\",\n        -13.211578369140625\n      ],\n      [\n        \"▁Borough\",\n        -13.211607933044434\n      ],\n      [\n        \"verlust\",\n        -13.211772918701172\n      ],\n      [\n        \"ductive\",\n        -13.21233081817627\n      ],\n      [\n        \"▁Küste\",\n        -13.212335586547852\n      ],\n      [\n        \"▁végétal\",\n        -13.212410926818848\n      ],\n      [\n        \"▁breastfeeding\",\n        -13.212435722351074\n      ],\n      [\n        \"▁captivating\",\n        -13.212435722351074\n      ],\n      [\n        \"▁Chevy\",\n        -13.212443351745605\n      ],\n      [\n        \"▁aerospace\",\n        -13.212469100952148\n      ],\n      [\n        \"pozitia\",\n        -13.213095664978027\n      ],\n      [\n        \"Tutor\",\n        -13.213199615478516\n      ],\n      [\n        \"▁spum\",\n        -13.213312149047852\n      ],\n      [\n        \"curând\",\n        -13.213419914245605\n      ],\n      [\n        \"iscus\",\n        -13.213458061218262\n      ],\n      [\n        \"October\",\n        -13.213495254516602\n      ],\n      [\n        \"▁Reparatur\",\n        -13.213557243347168\n      ],\n      [\n        \"▁Servicii\",\n        -13.213574409484863\n      ],\n      [\n        \"▁Gonz\",\n        -13.21357536315918\n      ],\n      [\n        \"▁cybersecurity\",\n        -13.21357536315918\n      ],\n      [\n        \"▁UCLA\",\n        -13.213678359985352\n      ],\n      [\n        \"rissa\",\n        -13.213835716247559\n      ],\n      [\n        \"▁Kemp\",\n        -13.213850021362305\n      ],\n      [\n        \"▁piston\",\n        -13.214046478271484\n      ],\n      [\n        \"▁révèle\",\n        -13.214118957519531\n      ],\n      [\n        \"▁posséd\",\n        -13.21412181854248\n      ],\n      [\n        \"▁versehen\",\n        -13.214129447937012\n      ],\n      [\n        \"▁scrutin\",\n        -13.214226722717285\n      ],\n      [\n        \"donnant\",\n        -13.21436882019043\n      ],\n      [\n        \"▁Geschwindigkeit\",\n        -13.214680671691895\n      ],\n      [\n        \"▁Panasonic\",\n        -13.214680671691895\n      ],\n      [\n        \"audio\",\n        -13.214700698852539\n      ],\n      [\n        \"▁Packaging\",\n        -13.214771270751953\n      ],\n      [\n        \"phra\",\n        -13.2147798538208\n      ],\n      [\n        \"▁Letzte\",\n        -13.214954376220703\n      ],\n      [\n        \"insicht\",\n        -13.215141296386719\n      ],\n      [\n        \"▁sammeln\",\n        -13.215243339538574\n      ],\n      [\n        \"▁extins\",\n        -13.215259552001953\n      ],\n      [\n        \"▁collège\",\n        -13.215266227722168\n      ],\n      [\n        \"ancies\",\n        -13.215343475341797\n      ],\n      [\n        \"▁întâlnit\",\n        -13.215350151062012\n      ],\n      [\n        \"▁Servi\",\n        -13.215392112731934\n      ],\n      [\n        \"stattet\",\n        -13.215493202209473\n      ],\n      [\n        \"▁abstraction\",\n        -13.215566635131836\n      ],\n      [\n        \"▁candidature\",\n        -13.215592384338379\n      ],\n      [\n        \"ONU\",\n        -13.215676307678223\n      ],\n      [\n        \"▁raffle\",\n        -13.215826988220215\n      ],\n      [\n        \"▁Soldier\",\n        -13.215834617614746\n      ],\n      [\n        \"▁stipulate\",\n        -13.215883255004883\n      ],\n      [\n        \"▁vizual\",\n        -13.215950012207031\n      ],\n      [\n        \"lucht\",\n        -13.216007232666016\n      ],\n      [\n        \"▁circus\",\n        -13.216068267822266\n      ],\n      [\n        \"▁decree\",\n        -13.216259002685547\n      ],\n      [\n        \"immeuble\",\n        -13.216367721557617\n      ],\n      [\n        \"Store\",\n        -13.216426849365234\n      ],\n      [\n        \"randul\",\n        -13.216622352600098\n      ],\n      [\n        \"▁narration\",\n        -13.216933250427246\n      ],\n      [\n        \"implication\",\n        -13.216958045959473\n      ],\n      [\n        \"▁discontinued\",\n        -13.216971397399902\n      ],\n      [\n        \"▁Pilates\",\n        -13.216989517211914\n      ],\n      [\n        \"▁biais\",\n        -13.21701431274414\n      ],\n      [\n        \"panel\",\n        -13.217325210571289\n      ],\n      [\n        \"▁mower\",\n        -13.217458724975586\n      ],\n      [\n        \"▁Castro\",\n        -13.21753978729248\n      ],\n      [\n        \"pregătire\",\n        -13.217641830444336\n      ],\n      [\n        \"▁denomination\",\n        -13.218062400817871\n      ],\n      [\n        \"▁throttle\",\n        -13.21806526184082\n      ],\n      [\n        \"▁finition\",\n        -13.218086242675781\n      ],\n      [\n        \"▁clarification\",\n        -13.218286514282227\n      ],\n      [\n        \"laut\",\n        -13.218366622924805\n      ],\n      [\n        \"▁wastewater\",\n        -13.2184419631958\n      ],\n      [\n        \"▁Sanchez\",\n        -13.218770980834961\n      ],\n      [\n        \"▁Umfeld\",\n        -13.2189359664917\n      ],\n      [\n        \"▁consili\",\n        -13.218997955322266\n      ],\n      [\n        \"extrait\",\n        -13.219013214111328\n      ],\n      [\n        \"ionism\",\n        -13.2190523147583\n      ],\n      [\n        \"▁Cannabis\",\n        -13.219186782836914\n      ],\n      [\n        \"▁misconduct\",\n        -13.219186782836914\n      ],\n      [\n        \"▁shepherd\",\n        -13.219186782836914\n      ],\n      [\n        \"▁feminist\",\n        -13.21919059753418\n      ],\n      [\n        \"▁criterii\",\n        -13.219212532043457\n      ],\n      [\n        \"America\",\n        -13.219219207763672\n      ],\n      [\n        \"▁Telephone\",\n        -13.219270706176758\n      ],\n      [\n        \"▁Fritz\",\n        -13.219438552856445\n      ],\n      [\n        \"▁cheltui\",\n        -13.219794273376465\n      ],\n      [\n        \"▁Übung\",\n        -13.219857215881348\n      ],\n      [\n        \"făcută\",\n        -13.22006893157959\n      ],\n      [\n        \"▁străzi\",\n        -13.220170021057129\n      ],\n      [\n        \"influencing\",\n        -13.220315933227539\n      ],\n      [\n        \"▁Democracy\",\n        -13.220321655273438\n      ],\n      [\n        \"atorium\",\n        -13.220376014709473\n      ],\n      [\n        \"▁Stufe\",\n        -13.220465660095215\n      ],\n      [\n        \"▁Cornell\",\n        -13.220660209655762\n      ],\n      [\n        \"zugehen\",\n        -13.22074031829834\n      ],\n      [\n        \"▁coton\",\n        -13.220804214477539\n      ],\n      [\n        \"▁beinhaltet\",\n        -13.220881462097168\n      ],\n      [\n        \"▁kritisch\",\n        -13.220884323120117\n      ],\n      [\n        \"▁Kalender\",\n        -13.22105884552002\n      ],\n      [\n        \"▁Teig\",\n        -13.221253395080566\n      ],\n      [\n        \"cooked\",\n        -13.221264839172363\n      ],\n      [\n        \"▁diversité\",\n        -13.221390724182129\n      ],\n      [\n        \"recognizable\",\n        -13.221446990966797\n      ],\n      [\n        \"▁Dictionary\",\n        -13.221446990966797\n      ],\n      [\n        \"attribution\",\n        -13.22145938873291\n      ],\n      [\n        \"▁Teresa\",\n        -13.221471786499023\n      ],\n      [\n        \"▁Ahmad\",\n        -13.221487998962402\n      ],\n      [\n        \"HAM\",\n        -13.221627235412598\n      ],\n      [\n        \"▁floss\",\n        -13.221668243408203\n      ],\n      [\n        \"génie\",\n        -13.2218599319458\n      ],\n      [\n        \"▁Espa\",\n        -13.221989631652832\n      ],\n      [\n        \"hersteller\",\n        -13.221993446350098\n      ],\n      [\n        \"Musée\",\n        -13.222001075744629\n      ],\n      [\n        \"▁Crawford\",\n        -13.222579002380371\n      ],\n      [\n        \"▁Phantom\",\n        -13.222579002380371\n      ],\n      [\n        \"▁Jenkins\",\n        -13.222640037536621\n      ],\n      [\n        \"genauer\",\n        -13.222774505615234\n      ],\n      [\n        \"▁acţiuni\",\n        -13.222885131835938\n      ],\n      [\n        \"▁meciuri\",\n        -13.22322940826416\n      ],\n      [\n        \"▁verstärkt\",\n        -13.22326374053955\n      ],\n      [\n        \"▁troop\",\n        -13.22341251373291\n      ],\n      [\n        \"räder\",\n        -13.223483085632324\n      ],\n      [\n        \"Putting\",\n        -13.223536491394043\n      ],\n      [\n        \"NASDAQ\",\n        -13.223712921142578\n      ],\n      [\n        \"▁Buddhism\",\n        -13.223712921142578\n      ],\n      [\n        \"▁Religious\",\n        -13.223712921142578\n      ],\n      [\n        \"▁accommodating\",\n        -13.223712921142578\n      ],\n      [\n        \"▁lendemain\",\n        -13.223712921142578\n      ],\n      [\n        \"▁plywood\",\n        -13.223714828491211\n      ],\n      [\n        \"▁inflatable\",\n        -13.223724365234375\n      ],\n      [\n        \"▁sèche\",\n        -13.223731994628906\n      ],\n      [\n        \"▁fragil\",\n        -13.223845481872559\n      ],\n      [\n        \"▁Filip\",\n        -13.224115371704102\n      ],\n      [\n        \"▁Terrace\",\n        -13.224274635314941\n      ],\n      [\n        \"Biblio\",\n        -13.22432804107666\n      ],\n      [\n        \"resides\",\n        -13.22448444366455\n      ],\n      [\n        \"▁varf\",\n        -13.22451114654541\n      ],\n      [\n        \"Bildern\",\n        -13.224528312683105\n      ],\n      [\n        \"loß\",\n        -13.224685668945312\n      ],\n      [\n        \"555\",\n        -13.224702835083008\n      ],\n      [\n        \"▁astounding\",\n        -13.224847793579102\n      ],\n      [\n        \"▁brillant\",\n        -13.224857330322266\n      ],\n      [\n        \"▁Railroad\",\n        -13.224871635437012\n      ],\n      [\n        \"minimizing\",\n        -13.224907875061035\n      ],\n      [\n        \"▁Benedict\",\n        -13.225019454956055\n      ],\n      [\n        \"▁$400\",\n        -13.225068092346191\n      ],\n      [\n        \"▁schematic\",\n        -13.225217819213867\n      ],\n      [\n        \"Canada\",\n        -13.225371360778809\n      ],\n      [\n        \"▁psihic\",\n        -13.225415229797363\n      ],\n      [\n        \"▁avertiz\",\n        -13.225497245788574\n      ],\n      [\n        \"▁Breed\",\n        -13.225550651550293\n      ],\n      [\n        \"▁gradina\",\n        -13.225606918334961\n      ],\n      [\n        \"▁Liege\",\n        -13.225822448730469\n      ],\n      [\n        \"▁Retirement\",\n        -13.225983619689941\n      ],\n      [\n        \"▁pergola\",\n        -13.226005554199219\n      ],\n      [\n        \"▁Kuwait\",\n        -13.2260103225708\n      ],\n      [\n        \"▁logistic\",\n        -13.22629451751709\n      ],\n      [\n        \"▁captive\",\n        -13.22651481628418\n      ],\n      [\n        \"prepared\",\n        -13.226568222045898\n      ],\n      [\n        \"▁prononc\",\n        -13.226568222045898\n      ],\n      [\n        \"Celui\",\n        -13.226676940917969\n      ],\n      [\n        \"deutschland\",\n        -13.227120399475098\n      ],\n      [\n        \"▁devreme\",\n        -13.227124214172363\n      ],\n      [\n        \"▁părți\",\n        -13.227270126342773\n      ],\n      [\n        \"▁1934\",\n        -13.227517127990723\n      ],\n      [\n        \"▁ersetzt\",\n        -13.227560997009277\n      ],\n      [\n        \"▁frightening\",\n        -13.227689743041992\n      ],\n      [\n        \"▁fiecărui\",\n        -13.227819442749023\n      ],\n      [\n        \"correct\",\n        -13.22799015045166\n      ],\n      [\n        \"6.6\",\n        -13.228057861328125\n      ],\n      [\n        \"▁Manitoba\",\n        -13.228259086608887\n      ],\n      [\n        \"Chartered\",\n        -13.228416442871094\n      ],\n      [\n        \"▁părăs\",\n        -13.228543281555176\n      ],\n      [\n        \"Powered\",\n        -13.228697776794434\n      ],\n      [\n        \"impede\",\n        -13.22876262664795\n      ],\n      [\n        \"agonist\",\n        -13.22878646850586\n      ],\n      [\n        \"▁stratégique\",\n        -13.228829383850098\n      ],\n      [\n        \"▁vigilant\",\n        -13.228830337524414\n      ],\n      [\n        \"faceted\",\n        -13.228930473327637\n      ],\n      [\n        \"available\",\n        -13.229308128356934\n      ],\n      [\n        \"▁Promise\",\n        -13.229388236999512\n      ],\n      [\n        \"▁humorous\",\n        -13.229446411132812\n      ],\n      [\n        \"treibt\",\n        -13.229449272155762\n      ],\n      [\n        \"▁Patrol\",\n        -13.229514122009277\n      ],\n      [\n        \"huh\",\n        -13.229523658752441\n      ],\n      [\n        \"ztlich\",\n        -13.229804039001465\n      ],\n      [\n        \"▁rejet\",\n        -13.2299165725708\n      ],\n      [\n        \"odeur\",\n        -13.229935646057129\n      ],\n      [\n        \"usziehbar\",\n        -13.22996997833252\n      ],\n      [\n        \"▁gespannt\",\n        -13.229972839355469\n      ],\n      [\n        \"church\",\n        -13.230018615722656\n      ],\n      [\n        \"▁Popescu\",\n        -13.230109214782715\n      ],\n      [\n        \"▁einmalig\",\n        -13.230518341064453\n      ],\n      [\n        \"diluted\",\n        -13.230551719665527\n      ],\n      [\n        \"lighted\",\n        -13.231070518493652\n      ],\n      [\n        \"▁stattfinden\",\n        -13.23111343383789\n      ],\n      [\n        \"▁Reaktion\",\n        -13.231183052062988\n      ],\n      [\n        \"▁délivr\",\n        -13.23134994506836\n      ],\n      [\n        \"▁Helfer\",\n        -13.231407165527344\n      ],\n      [\n        \"Fiind\",\n        -13.23142147064209\n      ],\n      [\n        \"rmând\",\n        -13.231507301330566\n      ],\n      [\n        \"▁Beweis\",\n        -13.231671333312988\n      ],\n      [\n        \"▁Violet\",\n        -13.231733322143555\n      ],\n      [\n        \"kamera\",\n        -13.231764793395996\n      ],\n      [\n        \"▁Romney\",\n        -13.231779098510742\n      ],\n      [\n        \"▁Bradford\",\n        -13.231800079345703\n      ],\n      [\n        \"stellbar\",\n        -13.231852531433105\n      ],\n      [\n        \"▁roadmap\",\n        -13.231921195983887\n      ],\n      [\n        \"▁subconscious\",\n        -13.23204231262207\n      ],\n      [\n        \"contrasting\",\n        -13.232138633728027\n      ],\n      [\n        \"mécanisme\",\n        -13.232254981994629\n      ],\n      [\n        \"kämpft\",\n        -13.232255935668945\n      ],\n      [\n        \"▁Preston\",\n        -13.232719421386719\n      ],\n      [\n        \"▁Anliegen\",\n        -13.232802391052246\n      ],\n      [\n        \"▁necessities\",\n        -13.232827186584473\n      ],\n      [\n        \"▁detrimental\",\n        -13.232828140258789\n      ],\n      [\n        \"▁sprawl\",\n        -13.232830047607422\n      ],\n      [\n        \"▁Erfüllung\",\n        -13.23287582397461\n      ],\n      [\n        \"▁massacre\",\n        -13.2329683303833\n      ],\n      [\n        \"▁pietre\",\n        -13.232987403869629\n      ],\n      [\n        \"▁situații\",\n        -13.233027458190918\n      ],\n      [\n        \"vêtement\",\n        -13.233080863952637\n      ],\n      [\n        \"Listed\",\n        -13.233144760131836\n      ],\n      [\n        \"▁extravagant\",\n        -13.233399391174316\n      ],\n      [\n        \"▁axle\",\n        -13.233525276184082\n      ],\n      [\n        \"OTT\",\n        -13.233663558959961\n      ],\n      [\n        \"wildly\",\n        -13.233744621276855\n      ],\n      [\n        \"70,000\",\n        -13.233797073364258\n      ],\n      [\n        \"▁chauffeur\",\n        -13.23384952545166\n      ],\n      [\n        \"▁Brasov\",\n        -13.233972549438477\n      ],\n      [\n        \"▁Fähigkeiten\",\n        -13.233972549438477\n      ],\n      [\n        \"▁staatlich\",\n        -13.234025001525879\n      ],\n      [\n        \"outlines\",\n        -13.234034538269043\n      ],\n      [\n        \"▁aufmerksam\",\n        -13.234545707702637\n      ],\n      [\n        \"▁Relation\",\n        -13.234749794006348\n      ],\n      [\n        \"▁Stephan\",\n        -13.234947204589844\n      ],\n      [\n        \"yland\",\n        -13.23494815826416\n      ],\n      [\n        \"proclaimed\",\n        -13.235086441040039\n      ],\n      [\n        \"Wallet\",\n        -13.235100746154785\n      ],\n      [\n        \"verarbeitung\",\n        -13.235118865966797\n      ],\n      [\n        \"▁überraschen\",\n        -13.235118865966797\n      ],\n      [\n        \"▁Injury\",\n        -13.235125541687012\n      ],\n      [\n        \"▁horsepower\",\n        -13.235237121582031\n      ],\n      [\n        \"▁Tropical\",\n        -13.23523998260498\n      ],\n      [\n        \"▁wives\",\n        -13.235459327697754\n      ],\n      [\n        \"adherence\",\n        -13.235677719116211\n      ],\n      [\n        \"schätzung\",\n        -13.235692977905273\n      ],\n      [\n        \"▁coherent\",\n        -13.235708236694336\n      ],\n      [\n        \"parlament\",\n        -13.23574161529541\n      ],\n      [\n        \"▁stup\",\n        -13.235852241516113\n      ],\n      [\n        \"▁resonance\",\n        -13.23626708984375\n      ],\n      [\n        \"▁inheritance\",\n        -13.236355781555176\n      ],\n      [\n        \"commenced\",\n        -13.23645305633545\n      ],\n      [\n        \"▁supervise\",\n        -13.236475944519043\n      ],\n      [\n        \"▁facilitator\",\n        -13.236488342285156\n      ],\n      [\n        \"fares\",\n        -13.236678123474121\n      ],\n      [\n        \"▁Tibet\",\n        -13.23672866821289\n      ],\n      [\n        \"communication\",\n        -13.236787796020508\n      ],\n      [\n        \"yog\",\n        -13.236806869506836\n      ],\n      [\n        \"▁WLAN\",\n        -13.236842155456543\n      ],\n      [\n        \"▁Chili\",\n        -13.23685073852539\n      ],\n      [\n        \"▁Harold\",\n        -13.2369966506958\n      ],\n      [\n        \"▁Guerre\",\n        -13.237005233764648\n      ],\n      [\n        \"▁Femme\",\n        -13.237146377563477\n      ],\n      [\n        \"▁Lisbon\",\n        -13.237231254577637\n      ],\n      [\n        \"▁mulțumi\",\n        -13.237415313720703\n      ],\n      [\n        \"▁vorbereitet\",\n        -13.237415313720703\n      ],\n      [\n        \"▁aperture\",\n        -13.237422943115234\n      ],\n      [\n        \"▁Universities\",\n        -13.237442016601562\n      ],\n      [\n        \"▁reckless\",\n        -13.237471580505371\n      ],\n      [\n        \"▁Botschaft\",\n        -13.237533569335938\n      ],\n      [\n        \"▁Squad\",\n        -13.238022804260254\n      ],\n      [\n        \"▁buoy\",\n        -13.238061904907227\n      ],\n      [\n        \"participarea\",\n        -13.238236427307129\n      ],\n      [\n        \"stiinta\",\n        -13.238389015197754\n      ],\n      [\n        \"▁repeal\",\n        -13.238415718078613\n      ],\n      [\n        \"drilled\",\n        -13.238489151000977\n      ],\n      [\n        \"▁Conversation\",\n        -13.238567352294922\n      ],\n      [\n        \"▁subsid\",\n        -13.238615036010742\n      ],\n      [\n        \"anstalt\",\n        -13.238741874694824\n      ],\n      [\n        \"faktor\",\n        -13.23874282836914\n      ],\n      [\n        \"▁swamp\",\n        -13.238790512084961\n      ],\n      [\n        \"pflichtig\",\n        -13.238921165466309\n      ],\n      [\n        \"▁camion\",\n        -13.238970756530762\n      ],\n      [\n        \"▁gouvern\",\n        -13.239032745361328\n      ],\n      [\n        \"▁archaeological\",\n        -13.239141464233398\n      ],\n      [\n        \"▁glitch\",\n        -13.239198684692383\n      ],\n      [\n        \"average\",\n        -13.239294052124023\n      ],\n      [\n        \"▁coffre\",\n        -13.239481925964355\n      ],\n      [\n        \"▁Insert\",\n        -13.239513397216797\n      ],\n      [\n        \"▁colonne\",\n        -13.2395601272583\n      ],\n      [\n        \"▁Assess\",\n        -13.23962116241455\n      ],\n      [\n        \"▁batches\",\n        -13.239716529846191\n      ],\n      [\n        \"▁ammunition\",\n        -13.239717483520508\n      ],\n      [\n        \"▁scissors\",\n        -13.239717483520508\n      ],\n      [\n        \"▁Locksmith\",\n        -13.239740371704102\n      ],\n      [\n        \"▁Bollywood\",\n        -13.239991188049316\n      ],\n      [\n        \"expédi\",\n        -13.240288734436035\n      ],\n      [\n        \"▁descendants\",\n        -13.24039363861084\n      ],\n      [\n        \"▁unwilling\",\n        -13.240506172180176\n      ],\n      [\n        \"▁Noise\",\n        -13.240649223327637\n      ],\n      [\n        \"▁Directive\",\n        -13.240660667419434\n      ],\n      [\n        \"ATOR\",\n        -13.240765571594238\n      ],\n      [\n        \"▁Rajasthan\",\n        -13.240870475769043\n      ],\n      [\n        \"▁chaotic\",\n        -13.240888595581055\n      ],\n      [\n        \"▁NEED\",\n        -13.24093246459961\n      ],\n      [\n        \"▁părere\",\n        -13.24095344543457\n      ],\n      [\n        \"▁begonnen\",\n        -13.241448402404785\n      ],\n      [\n        \"▁Reef\",\n        -13.241504669189453\n      ],\n      [\n        \"▁vorgesehen\",\n        -13.24161434173584\n      ],\n      [\n        \"▁allocate\",\n        -13.241826057434082\n      ],\n      [\n        \"▁exceptionnel\",\n        -13.241936683654785\n      ],\n      [\n        \"▁gefertigt\",\n        -13.24203872680664\n      ],\n      [\n        \"fading\",\n        -13.242072105407715\n      ],\n      [\n        \"▁interpersonal\",\n        -13.242178916931152\n      ],\n      [\n        \"▁occupie\",\n        -13.242204666137695\n      ],\n      [\n        \"▁Teatr\",\n        -13.242579460144043\n      ],\n      [\n        \"▁kilomètres\",\n        -13.242603302001953\n      ],\n      [\n        \"▁verbinden\",\n        -13.242608070373535\n      ],\n      [\n        \"▁Frucht\",\n        -13.242643356323242\n      ],\n      [\n        \"augmented\",\n        -13.242720603942871\n      ],\n      [\n        \"▁twentieth\",\n        -13.243181228637695\n      ],\n      [\n        \"▁aggression\",\n        -13.243183135986328\n      ],\n      [\n        \"▁Miracle\",\n        -13.243184089660645\n      ],\n      [\n        \"▁peninsula\",\n        -13.243184089660645\n      ],\n      [\n        \"▁Fernando\",\n        -13.243185043334961\n      ],\n      [\n        \"▁autorităţil\",\n        -13.243203163146973\n      ],\n      [\n        \"▁Iisus\",\n        -13.243217468261719\n      ],\n      [\n        \"▁puck\",\n        -13.243423461914062\n      ],\n      [\n        \"titel\",\n        -13.243454933166504\n      ],\n      [\n        \"▁remake\",\n        -13.243562698364258\n      ],\n      [\n        \"freiheit\",\n        -13.243563652038574\n      ],\n      [\n        \"▁Belize\",\n        -13.243590354919434\n      ],\n      [\n        \"▁secundar\",\n        -13.243779182434082\n      ],\n      [\n        \"▁perpetrat\",\n        -13.243786811828613\n      ],\n      [\n        \"jedenfalls\",\n        -13.243797302246094\n      ],\n      [\n        \"linked\",\n        -13.243820190429688\n      ],\n      [\n        \"▁dégag\",\n        -13.243918418884277\n      ],\n      [\n        \"LAY\",\n        -13.243926048278809\n      ],\n      [\n        \"behandlung\",\n        -13.244172096252441\n      ],\n      [\n        \"▁1928\",\n        -13.244193077087402\n      ],\n      [\n        \"▁Nickel\",\n        -13.244205474853516\n      ],\n      [\n        \"rophy\",\n        -13.244256973266602\n      ],\n      [\n        \"▁autonomy\",\n        -13.244338989257812\n      ],\n      [\n        \"▁Treffen\",\n        -13.244402885437012\n      ],\n      [\n        \"▁groundbreaking\",\n        -13.24445915222168\n      ],\n      [\n        \"politisch\",\n        -13.244484901428223\n      ],\n      [\n        \"▁Vector\",\n        -13.244553565979004\n      ],\n      [\n        \"oricine\",\n        -13.244684219360352\n      ],\n      [\n        \"utilisées\",\n        -13.244684219360352\n      ],\n      [\n        \"plete\",\n        -13.244771003723145\n      ],\n      [\n        \"droht\",\n        -13.244918823242188\n      ],\n      [\n        \"▁alternativ\",\n        -13.245104789733887\n      ],\n      [\n        \"▁Bernie\",\n        -13.245213508605957\n      ],\n      [\n        \"▁embellish\",\n        -13.245260238647461\n      ],\n      [\n        \"▁Curriculum\",\n        -13.24549674987793\n      ],\n      [\n        \"herrscht\",\n        -13.245525360107422\n      ],\n      [\n        \"escalier\",\n        -13.246126174926758\n      ],\n      [\n        \"hian\",\n        -13.246333122253418\n      ],\n      [\n        \"ertaining\",\n        -13.246387481689453\n      ],\n      [\n        \"hitter\",\n        -13.246430397033691\n      ],\n      [\n        \"▁kompetente\",\n        -13.24665641784668\n      ],\n      [\n        \"▁trekking\",\n        -13.246760368347168\n      ],\n      [\n        \"EACH\",\n        -13.246841430664062\n      ],\n      [\n        \"▁Bedien\",\n        -13.2470703125\n      ],\n      [\n        \"starred\",\n        -13.247169494628906\n      ],\n      [\n        \"▁săptămâna\",\n        -13.247236251831055\n      ],\n      [\n        \"▁Gratuit\",\n        -13.247239112854004\n      ],\n      [\n        \"▁Jahrzehnte\",\n        -13.247241020202637\n      ],\n      [\n        \"ingénieur\",\n        -13.24731731414795\n      ],\n      [\n        \"▁Huang\",\n        -13.24736213684082\n      ],\n      [\n        \"Music\",\n        -13.247401237487793\n      ],\n      [\n        \"misiei\",\n        -13.247544288635254\n      ],\n      [\n        \"▁masuri\",\n        -13.247733116149902\n      ],\n      [\n        \"▁Achievement\",\n        -13.247817039489746\n      ],\n      [\n        \"▁Dorothy\",\n        -13.247817039489746\n      ],\n      [\n        \"blätter\",\n        -13.247817993164062\n      ],\n      [\n        \"éloign\",\n        -13.247817993164062\n      ],\n      [\n        \"▁Anglia\",\n        -13.247990608215332\n      ],\n      [\n        \"brach\",\n        -13.248013496398926\n      ],\n      [\n        \"▁Optimization\",\n        -13.248085021972656\n      ],\n      [\n        \"6.7\",\n        -13.248170852661133\n      ],\n      [\n        \"winkel\",\n        -13.248210906982422\n      ],\n      [\n        \"contenan\",\n        -13.248347282409668\n      ],\n      [\n        \"Astăzi\",\n        -13.248398780822754\n      ],\n      [\n        \"wiped\",\n        -13.248441696166992\n      ],\n      [\n        \"granting\",\n        -13.248665809631348\n      ],\n      [\n        \"▁plăti\",\n        -13.248859405517578\n      ],\n      [\n        \"▁Compensation\",\n        -13.248979568481445\n      ],\n      [\n        \"▁Verkäufer\",\n        -13.248979568481445\n      ],\n      [\n        \"▁angajați\",\n        -13.248980522155762\n      ],\n      [\n        \"▁diminished\",\n        -13.24902057647705\n      ],\n      [\n        \"employment\",\n        -13.249250411987305\n      ],\n      [\n        \"yahoo\",\n        -13.249435424804688\n      ],\n      [\n        \"▁détrui\",\n        -13.249698638916016\n      ],\n      [\n        \"▁suffisant\",\n        -13.24982738494873\n      ],\n      [\n        \"▁Moldovei\",\n        -13.250144004821777\n      ],\n      [\n        \"▁Pokemon\",\n        -13.250144004821777\n      ],\n      [\n        \"▁Malcolm\",\n        -13.250144958496094\n      ],\n      [\n        \"▁mysteries\",\n        -13.250147819519043\n      ],\n      [\n        \"▁Diversity\",\n        -13.250149726867676\n      ],\n      [\n        \"▁clinique\",\n        -13.250327110290527\n      ],\n      [\n        \"landais\",\n        -13.250344276428223\n      ],\n      [\n        \"▁campanii\",\n        -13.250399589538574\n      ],\n      [\n        \"▁témoignage\",\n        -13.250439643859863\n      ],\n      [\n        \"▁paralel\",\n        -13.250467300415039\n      ],\n      [\n        \"▁travailleurs\",\n        -13.250576972961426\n      ],\n      [\n        \"▁salvage\",\n        -13.250580787658691\n      ],\n      [\n        \"▁crayon\",\n        -13.250732421875\n      ],\n      [\n        \"immédiat\",\n        -13.25085163116455\n      ],\n      [\n        \"hopped\",\n        -13.250958442687988\n      ],\n      [\n        \"▁senzor\",\n        -13.25102710723877\n      ],\n      [\n        \"▁imbunatati\",\n        -13.251073837280273\n      ],\n      [\n        \"▁capitalize\",\n        -13.2511568069458\n      ],\n      [\n        \"▁Elephant\",\n        -13.25130844116211\n      ],\n      [\n        \"▁insomnia\",\n        -13.25131607055664\n      ],\n      [\n        \"▁Ansicht\",\n        -13.251325607299805\n      ],\n      [\n        \"▁lupte\",\n        -13.251556396484375\n      ],\n      [\n        \"▁genomic\",\n        -13.251557350158691\n      ],\n      [\n        \"▁Grape\",\n        -13.251769065856934\n      ],\n      [\n        \"MONT\",\n        -13.25197982788086\n      ],\n      [\n        \"métiers\",\n        -13.252004623413086\n      ],\n      [\n        \"▁Pierce\",\n        -13.252123832702637\n      ],\n      [\n        \"consulted\",\n        -13.252388954162598\n      ],\n      [\n        \"▁Responsible\",\n        -13.252474784851074\n      ],\n      [\n        \"symmetry\",\n        -13.252476692199707\n      ],\n      [\n        \"▁sulfur\",\n        -13.252487182617188\n      ],\n      [\n        \"▁înapoi\",\n        -13.252510070800781\n      ],\n      [\n        \"▁Junction\",\n        -13.252549171447754\n      ],\n      [\n        \"▁trilogy\",\n        -13.252622604370117\n      ],\n      [\n        \"▁unkompliziert\",\n        -13.253059387207031\n      ],\n      [\n        \"▁zugänglich\",\n        -13.253059387207031\n      ],\n      [\n        \"▁préfèr\",\n        -13.253153800964355\n      ],\n      [\n        \"oarelor\",\n        -13.253361701965332\n      ],\n      [\n        \"langage\",\n        -13.253460884094238\n      ],\n      [\n        \"admired\",\n        -13.253589630126953\n      ],\n      [\n        \"platform\",\n        -13.253595352172852\n      ],\n      [\n        \"▁pluralit\",\n        -13.253616333007812\n      ],\n      [\n        \"▁betrachtet\",\n        -13.253643035888672\n      ],\n      [\n        \"▁reproduc\",\n        -13.253790855407715\n      ],\n      [\n        \"exemple\",\n        -13.25385570526123\n      ],\n      [\n        \"▁conspir\",\n        -13.254347801208496\n      ],\n      [\n        \"▁pelvi\",\n        -13.25437068939209\n      ],\n      [\n        \"leased\",\n        -13.254551887512207\n      ],\n      [\n        \"▁souffle\",\n        -13.254570960998535\n      ],\n      [\n        \"▁approprié\",\n        -13.254705429077148\n      ],\n      [\n        \"absorbing\",\n        -13.254817962646484\n      ],\n      [\n        \"dividing\",\n        -13.254855155944824\n      ],\n      [\n        \"herently\",\n        -13.255147933959961\n      ],\n      [\n        \"▁blister\",\n        -13.255179405212402\n      ],\n      [\n        \"löst\",\n        -13.255182266235352\n      ],\n      [\n        \"Apotheke\",\n        -13.255398750305176\n      ],\n      [\n        \"▁Asociaţi\",\n        -13.255424499511719\n      ],\n      [\n        \"education\",\n        -13.255904197692871\n      ],\n      [\n        \"▁retract\",\n        -13.255982398986816\n      ],\n      [\n        \"▁appraise\",\n        -13.255990982055664\n      ],\n      [\n        \"▁Debbie\",\n        -13.256075859069824\n      ],\n      [\n        \"▁arhitect\",\n        -13.256193161010742\n      ],\n      [\n        \"▁Mohamed\",\n        -13.256568908691406\n      ],\n      [\n        \"▁îndrept\",\n        -13.256568908691406\n      ],\n      [\n        \"▁exhaustive\",\n        -13.256753921508789\n      ],\n      [\n        \"▁Notebook\",\n        -13.257004737854004\n      ],\n      [\n        \"crashing\",\n        -13.257068634033203\n      ],\n      [\n        \"▁Betreiber\",\n        -13.257155418395996\n      ],\n      [\n        \"▁présidentielle\",\n        -13.257159233093262\n      ],\n      [\n        \"▁Träger\",\n        -13.257172584533691\n      ],\n      [\n        \"▁noteworthy\",\n        -13.257259368896484\n      ],\n      [\n        \"▁séparé\",\n        -13.257729530334473\n      ],\n      [\n        \"▁doppelt\",\n        -13.257795333862305\n      ],\n      [\n        \"tină\",\n        -13.258066177368164\n      ],\n      [\n        \"Quelques\",\n        -13.258085250854492\n      ],\n      [\n        \"culoarea\",\n        -13.258100509643555\n      ],\n      [\n        \"▁ethic\",\n        -13.258166313171387\n      ],\n      [\n        \"▁cohesive\",\n        -13.258329391479492\n      ],\n      [\n        \"▁congratulations\",\n        -13.258334159851074\n      ],\n      [\n        \"▁sovereignty\",\n        -13.25833797454834\n      ],\n      [\n        \"▁Aplica\",\n        -13.258413314819336\n      ],\n      [\n        \"▁Covenant\",\n        -13.25851058959961\n      ],\n      [\n        \"▁multicultural\",\n        -13.258591651916504\n      ],\n      [\n        \"assemblée\",\n        -13.258955001831055\n      ],\n      [\n        \"▁petals\",\n        -13.258974075317383\n      ],\n      [\n        \"erode\",\n        -13.259026527404785\n      ],\n      [\n        \"▁porumb\",\n        -13.259035110473633\n      ],\n      [\n        \"▁Barrier\",\n        -13.259050369262695\n      ],\n      [\n        \"▁WWE\",\n        -13.259085655212402\n      ],\n      [\n        \"Etwa\",\n        -13.259175300598145\n      ],\n      [\n        \"▁recunosc\",\n        -13.259271621704102\n      ],\n      [\n        \"▁turtle\",\n        -13.259415626525879\n      ],\n      [\n        \"▁vârf\",\n        -13.259444236755371\n      ],\n      [\n        \"▁Ranking\",\n        -13.259448051452637\n      ],\n      [\n        \"▁sympathetic\",\n        -13.259514808654785\n      ],\n      [\n        \"exploded\",\n        -13.2595796585083\n      ],\n      [\n        \"▁influenț\",\n        -13.259591102600098\n      ],\n      [\n        \"▁Fireplace\",\n        -13.25972843170166\n      ],\n      [\n        \"▁Nachwuchs\",\n        -13.260090827941895\n      ],\n      [\n        \"▁empfohlen\",\n        -13.260090827941895\n      ],\n      [\n        \"Voir\",\n        -13.260661125183105\n      ],\n      [\n        \"▁Vimeo\",\n        -13.26069164276123\n      ],\n      [\n        \"▁weaving\",\n        -13.260967254638672\n      ],\n      [\n        \"beneficiar\",\n        -13.261198043823242\n      ],\n      [\n        \"▁balade\",\n        -13.261216163635254\n      ],\n      [\n        \"▁Mercy\",\n        -13.261566162109375\n      ],\n      [\n        \"3.000\",\n        -13.26181697845459\n      ],\n      [\n        \"Immediately\",\n        -13.261857032775879\n      ],\n      [\n        \"▁frosting\",\n        -13.261868476867676\n      ],\n      [\n        \"▁Fiscal\",\n        -13.261882781982422\n      ],\n      [\n        \"downloadable\",\n        -13.26188850402832\n      ],\n      [\n        \"▁Hwy\",\n        -13.261902809143066\n      ],\n      [\n        \"évoluer\",\n        -13.261951446533203\n      ],\n      [\n        \"▁vieille\",\n        -13.2620210647583\n      ],\n      [\n        \"heißen\",\n        -13.262436866760254\n      ],\n      [\n        \"▁étrangère\",\n        -13.262446403503418\n      ],\n      [\n        \"▁incapable\",\n        -13.262490272521973\n      ],\n      [\n        \"volunteered\",\n        -13.262520790100098\n      ],\n      [\n        \"fortunately\",\n        -13.262564659118652\n      ],\n      [\n        \"company\",\n        -13.262738227844238\n      ],\n      [\n        \"denkt\",\n        -13.2627592086792\n      ],\n      [\n        \"▁citesc\",\n        -13.262818336486816\n      ],\n      [\n        \"▁intrebare\",\n        -13.262896537780762\n      ],\n      [\n        \"pleasantly\",\n        -13.262990951538086\n      ],\n      [\n        \"▁Minecraft\",\n        -13.263079643249512\n      ],\n      [\n        \"▁Schmuck\",\n        -13.26308536529541\n      ],\n      [\n        \"▁maghiar\",\n        -13.263099670410156\n      ],\n      [\n        \"conductive\",\n        -13.263339042663574\n      ],\n      [\n        \"décrit\",\n        -13.263534545898438\n      ],\n      [\n        \"provide\",\n        -13.26353931427002\n      ],\n      [\n        \"▁depăş\",\n        -13.263628959655762\n      ],\n      [\n        \"ituated\",\n        -13.263657569885254\n      ],\n      [\n        \"▁trumpet\",\n        -13.264216423034668\n      ],\n      [\n        \"▁nastere\",\n        -13.2642240524292\n      ],\n      [\n        \"▁Région\",\n        -13.264245986938477\n      ],\n      [\n        \"Occupational\",\n        -13.264411926269531\n      ],\n      [\n        \"▁Grecia\",\n        -13.264415740966797\n      ],\n      [\n        \"▁Conclusion\",\n        -13.26449203491211\n      ],\n      [\n        \"▁collaborateurs\",\n        -13.264927864074707\n      ],\n      [\n        \"▁Alibaba\",\n        -13.265398025512695\n      ],\n      [\n        \"▁amplasat\",\n        -13.265398979187012\n      ],\n      [\n        \"▁Plastik\",\n        -13.265992164611816\n      ],\n      [\n        \"▁stash\",\n        -13.266023635864258\n      ],\n      [\n        \"▁Bonnie\",\n        -13.266045570373535\n      ],\n      [\n        \"▁ehrlich\",\n        -13.266156196594238\n      ],\n      [\n        \"▁contention\",\n        -13.266193389892578\n      ],\n      [\n        \"▁Oslo\",\n        -13.266263008117676\n      ],\n      [\n        \"englische\",\n        -13.266319274902344\n      ],\n      [\n        \"measurable\",\n        -13.266439437866211\n      ],\n      [\n        \"loppy\",\n        -13.266470909118652\n      ],\n      [\n        \"▁Refrigerat\",\n        -13.266579627990723\n      ],\n      [\n        \"▁remboursement\",\n        -13.266580581665039\n      ],\n      [\n        \"▁societăţi\",\n        -13.266580581665039\n      ],\n      [\n        \"translates\",\n        -13.266607284545898\n      ],\n      [\n        \"ichtigkeit\",\n        -13.266685485839844\n      ],\n      [\n        \"agentur\",\n        -13.266741752624512\n      ],\n      [\n        \"▁compute\",\n        -13.266800880432129\n      ],\n      [\n        \"berater\",\n        -13.266921043395996\n      ],\n      [\n        \"▁Georgetown\",\n        -13.266945838928223\n      ],\n      [\n        \"wolves\",\n        -13.266951560974121\n      ],\n      [\n        \"ceased\",\n        -13.266959190368652\n      ],\n      [\n        \"▁Binary\",\n        -13.267030715942383\n      ],\n      [\n        \"▁kontrolliert\",\n        -13.267172813415527\n      ],\n      [\n        \"informer\",\n        -13.267416000366211\n      ],\n      [\n        \"lehrer\",\n        -13.267578125\n      ],\n      [\n        \"lieferung\",\n        -13.267709732055664\n      ],\n      [\n        \"▁definit\",\n        -13.267742156982422\n      ],\n      [\n        \"chèque\",\n        -13.267765045166016\n      ],\n      [\n        \"▁clergy\",\n        -13.267765045166016\n      ],\n      [\n        \"▁ministries\",\n        -13.267767906188965\n      ],\n      [\n        \"▁plague\",\n        -13.267779350280762\n      ],\n      [\n        \"▁Jedi\",\n        -13.267805099487305\n      ],\n      [\n        \"▁Blackjack\",\n        -13.268025398254395\n      ],\n      [\n        \"▁subsection\",\n        -13.26807689666748\n      ],\n      [\n        \"▁Sachsen\",\n        -13.268121719360352\n      ],\n      [\n        \"valorile\",\n        -13.268146514892578\n      ],\n      [\n        \"molded\",\n        -13.26816463470459\n      ],\n      [\n        \"▁betroffen\",\n        -13.268183708190918\n      ],\n      [\n        \"▁adecvat\",\n        -13.268229484558105\n      ],\n      [\n        \"▁collègue\",\n        -13.26835823059082\n      ],\n      [\n        \"▁chinez\",\n        -13.268392562866211\n      ],\n      [\n        \"emelle\",\n        -13.268695831298828\n      ],\n      [\n        \"▁körperliche\",\n        -13.268902778625488\n      ],\n      [\n        \"▁titan\",\n        -13.26891040802002\n      ],\n      [\n        \"▁sophistication\",\n        -13.268951416015625\n      ],\n      [\n        \"▁provoke\",\n        -13.268957138061523\n      ],\n      [\n        \"▁pensii\",\n        -13.269042015075684\n      ],\n      [\n        \"▁Tucker\",\n        -13.269377708435059\n      ],\n      [\n        \"▁motoare\",\n        -13.26943302154541\n      ],\n      [\n        \"supported\",\n        -13.269536972045898\n      ],\n      [\n        \"▁Sicil\",\n        -13.269697189331055\n      ],\n      [\n        \"▁Ausgangs\",\n        -13.26987361907959\n      ],\n      [\n        \"▁verletzt\",\n        -13.269908905029297\n      ],\n      [\n        \"Ligue\",\n        -13.269996643066406\n      ],\n      [\n        \"▁organizatori\",\n        -13.270026206970215\n      ],\n      [\n        \"▁apprentice\",\n        -13.270099639892578\n      ],\n      [\n        \"▁Potato\",\n        -13.270183563232422\n      ],\n      [\n        \"▁Duft\",\n        -13.27039623260498\n      ],\n      [\n        \"▁medicament\",\n        -13.270566940307617\n      ],\n      [\n        \"Hôtel\",\n        -13.270740509033203\n      ],\n      [\n        \"▁Triangle\",\n        -13.270842552185059\n      ],\n      [\n        \"buted\",\n        -13.271100044250488\n      ],\n      [\n        \"▁Bentley\",\n        -13.271336555480957\n      ],\n      [\n        \"următoarele\",\n        -13.271389961242676\n      ],\n      [\n        \"animate\",\n        -13.271404266357422\n      ],\n      [\n        \"megapixel\",\n        -13.271404266357422\n      ],\n      [\n        \"einfachen\",\n        -13.271514892578125\n      ],\n      [\n        \"▁performanț\",\n        -13.271544456481934\n      ],\n      [\n        \"lurry\",\n        -13.27184009552002\n      ],\n      [\n        \"suffisamment\",\n        -13.27192211151123\n      ],\n      [\n        \"▁Weihnachten\",\n        -13.27192211151123\n      ],\n      [\n        \"▁Detective\",\n        -13.27194595336914\n      ],\n      [\n        \"▁lovit\",\n        -13.272049903869629\n      ],\n      [\n        \"▁blouse\",\n        -13.27213191986084\n      ],\n      [\n        \"▁hartie\",\n        -13.272163391113281\n      ],\n      [\n        \"vro\",\n        -13.27225112915039\n      ],\n      [\n        \"▁disastrous\",\n        -13.272517204284668\n      ],\n      [\n        \"vermutlich\",\n        -13.2725191116333\n      ],\n      [\n        \"▁Stafford\",\n        -13.272527694702148\n      ],\n      [\n        \"ehlt\",\n        -13.272628784179688\n      ],\n      [\n        \"▁vielseitig\",\n        -13.272643089294434\n      ],\n      [\n        \"Manifest\",\n        -13.273274421691895\n      ],\n      [\n        \"homage\",\n        -13.27354907989502\n      ],\n      [\n        \"menée\",\n        -13.273566246032715\n      ],\n      [\n        \"▁erläuter\",\n        -13.27370834350586\n      ],\n      [\n        \"▁volontaire\",\n        -13.273709297180176\n      ],\n      [\n        \"wrought\",\n        -13.27371597290039\n      ],\n      [\n        \"▁Naples\",\n        -13.273719787597656\n      ],\n      [\n        \"recommending\",\n        -13.273759841918945\n      ],\n      [\n        \"▁thermique\",\n        -13.273774147033691\n      ],\n      [\n        \"▁subtitle\",\n        -13.273787498474121\n      ],\n      [\n        \"▁Slam\",\n        -13.273809432983398\n      ],\n      [\n        \"▁necesitate\",\n        -13.273809432983398\n      ],\n      [\n        \"trimmed\",\n        -13.274099349975586\n      ],\n      [\n        \"urmatoarele\",\n        -13.274178504943848\n      ],\n      [\n        \"▁Sorin\",\n        -13.274245262145996\n      ],\n      [\n        \"▁compromis\",\n        -13.274300575256348\n      ],\n      [\n        \"overcoming\",\n        -13.274477005004883\n      ],\n      [\n        \"▁Samantha\",\n        -13.274901390075684\n      ],\n      [\n        \"dazzling\",\n        -13.27490234375\n      ],\n      [\n        \"▁Pearson\",\n        -13.274903297424316\n      ],\n      [\n        \"▁glazing\",\n        -13.274911880493164\n      ],\n      [\n        \"Revelation\",\n        -13.274921417236328\n      ],\n      [\n        \"destinée\",\n        -13.275156021118164\n      ],\n      [\n        \"öffnet\",\n        -13.27515983581543\n      ],\n      [\n        \"CERT\",\n        -13.275327682495117\n      ],\n      [\n        \"▁Sneak\",\n        -13.275503158569336\n      ],\n      [\n        \"proiectele\",\n        -13.275605201721191\n      ],\n      [\n        \"▁longitudinal\",\n        -13.27609634399414\n      ],\n      [\n        \"▁cocaine\",\n        -13.276098251342773\n      ],\n      [\n        \"▁universitar\",\n        -13.276108741760254\n      ],\n      [\n        \"▁refreshments\",\n        -13.276166915893555\n      ],\n      [\n        \"▁instanţ\",\n        -13.276243209838867\n      ],\n      [\n        \"▁kostenfrei\",\n        -13.276397705078125\n      ],\n      [\n        \"▁comédie\",\n        -13.276451110839844\n      ],\n      [\n        \"▁Locat\",\n        -13.276725769042969\n      ],\n      [\n        \"▁Albania\",\n        -13.276732444763184\n      ],\n      [\n        \"▁mécanique\",\n        -13.276776313781738\n      ],\n      [\n        \"messung\",\n        -13.27683162689209\n      ],\n      [\n        \"issus\",\n        -13.277260780334473\n      ],\n      [\n        \"pinned\",\n        -13.277328491210938\n      ],\n      [\n        \"▁sanft\",\n        -13.277335166931152\n      ],\n      [\n        \"▁geprüft\",\n        -13.277435302734375\n      ],\n      [\n        \"▁procè\",\n        -13.277442932128906\n      ],\n      [\n        \"▁Üb\",\n        -13.277765274047852\n      ],\n      [\n        \"5-0\",\n        -13.277802467346191\n      ],\n      [\n        \"▁Catering\",\n        -13.277957916259766\n      ],\n      [\n        \"▁prosperous\",\n        -13.27801513671875\n      ],\n      [\n        \"▁replication\",\n        -13.278098106384277\n      ],\n      [\n        \"▁obese\",\n        -13.278441429138184\n      ],\n      [\n        \"clerosis\",\n        -13.278489112854004\n      ],\n      [\n        \"▁Carnegie\",\n        -13.278489112854004\n      ],\n      [\n        \"▁Incredible\",\n        -13.278489112854004\n      ],\n      [\n        \"▁Teppich\",\n        -13.278489112854004\n      ],\n      [\n        \"▁crunchy\",\n        -13.278489112854004\n      ],\n      [\n        \"▁vomiting\",\n        -13.278529167175293\n      ],\n      [\n        \"▁sourire\",\n        -13.278619766235352\n      ],\n      [\n        \"publish\",\n        -13.278948783874512\n      ],\n      [\n        \"▁exterioar\",\n        -13.279094696044922\n      ],\n      [\n        \"▁forehead\",\n        -13.279107093811035\n      ],\n      [\n        \"▁climatique\",\n        -13.279313087463379\n      ],\n      [\n        \"▁conservator\",\n        -13.279458999633789\n      ],\n      [\n        \"▁Russland\",\n        -13.279687881469727\n      ],\n      [\n        \"▁kombiniert\",\n        -13.279687881469727\n      ],\n      [\n        \"▁Thrones\",\n        -13.279688835144043\n      ],\n      [\n        \"▁Griffith\",\n        -13.27968978881836\n      ],\n      [\n        \"▁fragrant\",\n        -13.279695510864258\n      ],\n      [\n        \"▁RSVP\",\n        -13.279698371887207\n      ],\n      [\n        \"klima\",\n        -13.279751777648926\n      ],\n      [\n        \"▁situație\",\n        -13.279808044433594\n      ],\n      [\n        \"deschiderea\",\n        -13.280009269714355\n      ],\n      [\n        \"▁moale\",\n        -13.280033111572266\n      ],\n      [\n        \"▁Trevor\",\n        -13.280112266540527\n      ],\n      [\n        \"ménager\",\n        -13.28011417388916\n      ],\n      [\n        \"deploying\",\n        -13.280428886413574\n      ],\n      [\n        \"▁Loft\",\n        -13.280500411987305\n      ],\n      [\n        \"▁Willkommen\",\n        -13.28059196472168\n      ],\n      [\n        \"▁Bezirks\",\n        -13.280887603759766\n      ],\n      [\n        \"▁Himself\",\n        -13.280975341796875\n      ],\n      [\n        \"▁quarant\",\n        -13.28101634979248\n      ],\n      [\n        \"▁1901\",\n        -13.281079292297363\n      ],\n      [\n        \"▁tripod\",\n        -13.28136920928955\n      ],\n      [\n        \"▁récolt\",\n        -13.281553268432617\n      ],\n      [\n        \"natură\",\n        -13.281631469726562\n      ],\n      [\n        \"School\",\n        -13.281649589538574\n      ],\n      [\n        \"contested\",\n        -13.281773567199707\n      ],\n      [\n        \"bwohl\",\n        -13.281784057617188\n      ],\n      [\n        \"Darren\",\n        -13.281830787658691\n      ],\n      [\n        \"medicine\",\n        -13.281903266906738\n      ],\n      [\n        \"▁Impuls\",\n        -13.282041549682617\n      ],\n      [\n        \"prevailing\",\n        -13.282057762145996\n      ],\n      [\n        \"▁orthodontic\",\n        -13.282089233398438\n      ],\n      [\n        \"▁sequential\",\n        -13.282089233398438\n      ],\n      [\n        \"▁Kolkata\",\n        -13.28209114074707\n      ],\n      [\n        \"▁séch\",\n        -13.282100677490234\n      ],\n      [\n        \"▁diaper\",\n        -13.28212833404541\n      ],\n      [\n        \"▁simplifie\",\n        -13.282144546508789\n      ],\n      [\n        \"▁reflux\",\n        -13.282163619995117\n      ],\n      [\n        \"▁Hypo\",\n        -13.282242774963379\n      ],\n      [\n        \"imprimer\",\n        -13.282251358032227\n      ],\n      [\n        \"▁Folosi\",\n        -13.282401084899902\n      ],\n      [\n        \"Info\",\n        -13.282570838928223\n      ],\n      [\n        \"▁Investiga\",\n        -13.282801628112793\n      ],\n      [\n        \"stabilirea\",\n        -13.282845497131348\n      ],\n      [\n        \"élis\",\n        -13.283149719238281\n      ],\n      [\n        \"ccessed\",\n        -13.28320026397705\n      ],\n      [\n        \"▁recyclable\",\n        -13.283293724060059\n      ],\n      [\n        \"▁forbidden\",\n        -13.283295631408691\n      ],\n      [\n        \"▁Colonel\",\n        -13.283297538757324\n      ],\n      [\n        \"▁nisip\",\n        -13.28330135345459\n      ],\n      [\n        \"▁Fundamental\",\n        -13.283303260803223\n      ],\n      [\n        \"▁nouveauté\",\n        -13.283308029174805\n      ],\n      [\n        \"khi\",\n        -13.283357620239258\n      ],\n      [\n        \"▁ecology\",\n        -13.28339672088623\n      ],\n      [\n        \"▁filament\",\n        -13.283540725708008\n      ],\n      [\n        \"▁relentless\",\n        -13.283559799194336\n      ],\n      [\n        \"▁Behavior\",\n        -13.283669471740723\n      ],\n      [\n        \"titulaire\",\n        -13.283900260925293\n      ],\n      [\n        \"▁administrativ\",\n        -13.28404426574707\n      ],\n      [\n        \"▁Vorlage\",\n        -13.284209251403809\n      ],\n      [\n        \"zeigte\",\n        -13.28427791595459\n      ],\n      [\n        \"▁Bäume\",\n        -13.284497261047363\n      ],\n      [\n        \"▁Kartoffel\",\n        -13.284497261047363\n      ],\n      [\n        \"▁Possible\",\n        -13.284500122070312\n      ],\n      [\n        \"▁perturb\",\n        -13.28466510772705\n      ],\n      [\n        \"▁Grigor\",\n        -13.284717559814453\n      ],\n      [\n        \"▁streng\",\n        -13.284759521484375\n      ],\n      [\n        \"▁vânzare\",\n        -13.285101890563965\n      ],\n      [\n        \"concentrating\",\n        -13.285698890686035\n      ],\n      [\n        \"▁rechtzeitig\",\n        -13.2857027053833\n      ],\n      [\n        \"▁eternity\",\n        -13.28570556640625\n      ],\n      [\n        \"▁Puzzle\",\n        -13.28575611114502\n      ],\n      [\n        \"▁malade\",\n        -13.285775184631348\n      ],\n      [\n        \"▁Metallic\",\n        -13.285776138305664\n      ],\n      [\n        \"▁Unterhaltung\",\n        -13.285783767700195\n      ],\n      [\n        \"▁4:00\",\n        -13.285820960998535\n      ],\n      [\n        \"▁magique\",\n        -13.285908699035645\n      ],\n      [\n        \"▁cellphone\",\n        -13.285975456237793\n      ],\n      [\n        \"▁inhibition\",\n        -13.286023139953613\n      ],\n      [\n        \"▁remplacement\",\n        -13.286025047302246\n      ],\n      [\n        \"▁WWII\",\n        -13.286089897155762\n      ],\n      [\n        \"Eff\",\n        -13.286258697509766\n      ],\n      [\n        \"kontakt\",\n        -13.286832809448242\n      ],\n      [\n        \"Update\",\n        -13.286869049072266\n      ],\n      [\n        \"▁Emerald\",\n        -13.286910057067871\n      ],\n      [\n        \"▁hammock\",\n        -13.286910057067871\n      ],\n      [\n        \"POWER\",\n        -13.286917686462402\n      ],\n      [\n        \"automne\",\n        -13.286917686462402\n      ],\n      [\n        \"▁(2004)\",\n        -13.286961555480957\n      ],\n      [\n        \"▁participanți\",\n        -13.287012100219727\n      ],\n      [\n        \"1998)\",\n        -13.287014961242676\n      ],\n      [\n        \"▁deletion\",\n        -13.287186622619629\n      ],\n      [\n        \"▁Proiect\",\n        -13.287226676940918\n      ],\n      [\n        \"IDENT\",\n        -13.287504196166992\n      ],\n      [\n        \"▁precis\",\n        -13.287623405456543\n      ],\n      [\n        \"▁limp\",\n        -13.287676811218262\n      ],\n      [\n        \"▁Pompe\",\n        -13.287686347961426\n      ],\n      [\n        \"▁ménage\",\n        -13.28780746459961\n      ],\n      [\n        \"▁Wahrheit\",\n        -13.288119316101074\n      ],\n      [\n        \"▁Intelligent\",\n        -13.28812026977539\n      ],\n      [\n        \"▁instability\",\n        -13.2881441116333\n      ],\n      [\n        \"insurance\",\n        -13.288346290588379\n      ],\n      [\n        \"▁Nursery\",\n        -13.288352966308594\n      ],\n      [\n        \"▁synonym\",\n        -13.288427352905273\n      ],\n      [\n        \"▁ignite\",\n        -13.28848934173584\n      ],\n      [\n        \"▁Vernon\",\n        -13.28849983215332\n      ],\n      [\n        \"purchase\",\n        -13.288524627685547\n      ],\n      [\n        \"▁disponibilité\",\n        -13.288662910461426\n      ],\n      [\n        \"▁producţi\",\n        -13.28909969329834\n      ],\n      [\n        \"▁Pentagon\",\n        -13.289329528808594\n      ],\n      [\n        \"▁illumination\",\n        -13.289329528808594\n      ],\n      [\n        \"▁obsolete\",\n        -13.289329528808594\n      ],\n      [\n        \"▁unacceptable\",\n        -13.28933048248291\n      ],\n      [\n        \"Gleichzeitig\",\n        -13.289938926696777\n      ],\n      [\n        \"rutsch\",\n        -13.290071487426758\n      ],\n      [\n        \"viziuni\",\n        -13.290409088134766\n      ],\n      [\n        \"▁Nicaragua\",\n        -13.29054069519043\n      ],\n      [\n        \"▁hesitation\",\n        -13.290541648864746\n      ],\n      [\n        \"▁nascut\",\n        -13.290545463562012\n      ],\n      [\n        \"▁Warehouse\",\n        -13.29055404663086\n      ],\n      [\n        \"geboten\",\n        -13.290558815002441\n      ],\n      [\n        \"▁Lagos\",\n        -13.290844917297363\n      ],\n      [\n        \"produced\",\n        -13.290874481201172\n      ],\n      [\n        \"cativa\",\n        -13.291309356689453\n      ],\n      [\n        \"▁Tracy\",\n        -13.291326522827148\n      ],\n      [\n        \"Projekt\",\n        -13.291468620300293\n      ],\n      [\n        \"▁malaria\",\n        -13.291692733764648\n      ],\n      [\n        \"▁Baldwin\",\n        -13.291755676269531\n      ],\n      [\n        \"Take\",\n        -13.291791915893555\n      ],\n      [\n        \"▁fluctuations\",\n        -13.291844367980957\n      ],\n      [\n        \"▁titular\",\n        -13.29194450378418\n      ],\n      [\n        \"bmw\",\n        -13.291976928710938\n      ],\n      [\n        \"▁brevet\",\n        -13.29202651977539\n      ],\n      [\n        \"étapes\",\n        -13.292173385620117\n      ],\n      [\n        \"wikipedia\",\n        -13.292373657226562\n      ],\n      [\n        \"▁corporal\",\n        -13.292424201965332\n      ],\n      [\n        \"▁Schönheit\",\n        -13.2926664352417\n      ],\n      [\n        \"utilizatorii\",\n        -13.292695999145508\n      ],\n      [\n        \"INFO\",\n        -13.292807579040527\n      ],\n      [\n        \"▁formularul\",\n        -13.292900085449219\n      ],\n      [\n        \"femi\",\n        -13.292959213256836\n      ],\n      [\n        \"Konferenz\",\n        -13.29296875\n      ],\n      [\n        \"▁carnival\",\n        -13.29296875\n      ],\n      [\n        \"▁Kräuter\",\n        -13.292969703674316\n      ],\n      [\n        \"▁gelernt\",\n        -13.292981147766113\n      ],\n      [\n        \"▁Sherman\",\n        -13.293017387390137\n      ],\n      [\n        \"▁persistence\",\n        -13.293289184570312\n      ],\n      [\n        \"▁Behörden\",\n        -13.293577194213867\n      ],\n      [\n        \"▁Frühjahr\",\n        -13.293578147888184\n      ],\n      [\n        \"▁Guvern\",\n        -13.293649673461914\n      ],\n      [\n        \"interpreting\",\n        -13.293878555297852\n      ],\n      [\n        \"▁nommé\",\n        -13.294021606445312\n      ],\n      [\n        \"consult\",\n        -13.294035911560059\n      ],\n      [\n        \"▁obligaţi\",\n        -13.294184684753418\n      ],\n      [\n        \"▁Newspaper\",\n        -13.2942476272583\n      ],\n      [\n        \"(2005)\",\n        -13.294515609741211\n      ],\n      [\n        \"pumped\",\n        -13.294614791870117\n      ],\n      [\n        \"▁autoritati\",\n        -13.294634819030762\n      ],\n      [\n        \"▁aplicatii\",\n        -13.294644355773926\n      ],\n      [\n        \"▁verhindert\",\n        -13.294794082641602\n      ],\n      [\n        \"▁évident\",\n        -13.294794082641602\n      ],\n      [\n        \"▁getrennt\",\n        -13.294795036315918\n      ],\n      [\n        \"▁Encourage\",\n        -13.295403480529785\n      ],\n      [\n        \"▁lurk\",\n        -13.295432090759277\n      ],\n      [\n        \"▁condemned\",\n        -13.295455932617188\n      ],\n      [\n        \"▁4:30\",\n        -13.295502662658691\n      ],\n      [\n        \"labelled\",\n        -13.29576587677002\n      ],\n      [\n        \"ordinea\",\n        -13.295899391174316\n      ],\n      [\n        \"▁pantofi\",\n        -13.296012878417969\n      ],\n      [\n        \"Default\",\n        -13.296042442321777\n      ],\n      [\n        \"▁beruh\",\n        -13.296120643615723\n      ],\n      [\n        \"/01/\",\n        -13.296268463134766\n      ],\n      [\n        \"league\",\n        -13.296503067016602\n      ],\n      [\n        \"▁couvert\",\n        -13.296524047851562\n      ],\n      [\n        \"▁competencies\",\n        -13.296622276306152\n      ],\n      [\n        \"▁mozzarella\",\n        -13.296622276306152\n      ],\n      [\n        \"jihad\",\n        -13.29662799835205\n      ],\n      [\n        \"▁gossip\",\n        -13.29662799835205\n      ],\n      [\n        \"▁Omaha\",\n        -13.296628952026367\n      ],\n      [\n        \"▁coincidence\",\n        -13.296669960021973\n      ],\n      [\n        \"▁Pinot\",\n        -13.296710968017578\n      ],\n      [\n        \"dotted\",\n        -13.296789169311523\n      ],\n      [\n        \"schilder\",\n        -13.297197341918945\n      ],\n      [\n        \"▁Munte\",\n        -13.297224998474121\n      ],\n      [\n        \"▁Vermieter\",\n        -13.297232627868652\n      ],\n      [\n        \"▁britannique\",\n        -13.297232627868652\n      ],\n      [\n        \"▁comentariu\",\n        -13.297235488891602\n      ],\n      [\n        \"abonnement\",\n        -13.29725456237793\n      ],\n      [\n        \"▁inventive\",\n        -13.29727840423584\n      ],\n      [\n        \"complie\",\n        -13.297279357910156\n      ],\n      [\n        \"composée\",\n        -13.29734992980957\n      ],\n      [\n        \"▁glatt\",\n        -13.297684669494629\n      ],\n      [\n        \"adorned\",\n        -13.297842979431152\n      ],\n      [\n        \"▁Opportunities\",\n        -13.297842979431152\n      ],\n      [\n        \"▁equilibrium\",\n        -13.297842979431152\n      ],\n      [\n        \"▁persuasive\",\n        -13.297842979431152\n      ],\n      [\n        \"▁achiziţi\",\n        -13.297843933105469\n      ],\n      [\n        \"▁déterminer\",\n        -13.297843933105469\n      ],\n      [\n        \"▁fleece\",\n        -13.297857284545898\n      ],\n      [\n        \"▁ivory\",\n        -13.29786205291748\n      ],\n      [\n        \"▁Genuss\",\n        -13.297900199890137\n      ],\n      [\n        \"Thousands\",\n        -13.297930717468262\n      ],\n      [\n        \"▁izolat\",\n        -13.297965049743652\n      ],\n      [\n        \"▁symbolize\",\n        -13.298033714294434\n      ],\n      [\n        \"gâteau\",\n        -13.298051834106445\n      ],\n      [\n        \"▁relații\",\n        -13.298062324523926\n      ],\n      [\n        \"▁Classroom\",\n        -13.298144340515137\n      ],\n      [\n        \"settlers\",\n        -13.298155784606934\n      ],\n      [\n        \"▁vremuri\",\n        -13.298195838928223\n      ],\n      [\n        \"▁Serial\",\n        -13.29838752746582\n      ],\n      [\n        \"▁boite\",\n        -13.298399925231934\n      ],\n      [\n        \"équivalent\",\n        -13.298453330993652\n      ],\n      [\n        \"▁benutzen\",\n        -13.298454284667969\n      ],\n      [\n        \"▁Recomand\",\n        -13.298462867736816\n      ],\n      [\n        \"▁Sinai\",\n        -13.298968315124512\n      ],\n      [\n        \"▁Advertise\",\n        -13.29906940460205\n      ],\n      [\n        \"▁Thermal\",\n        -13.299206733703613\n      ],\n      [\n        \"fiance\",\n        -13.299471855163574\n      ],\n      [\n        \"▁universitaire\",\n        -13.299683570861816\n      ],\n      [\n        \"▁rivière\",\n        -13.299793243408203\n      ],\n      [\n        \"▁reimburse\",\n        -13.299907684326172\n      ],\n      [\n        \"ţara\",\n        -13.299932479858398\n      ],\n      [\n        \"tician\",\n        -13.30002498626709\n      ],\n      [\n        \"intelligence\",\n        -13.300041198730469\n      ],\n      [\n        \"▁abgestimmt\",\n        -13.300288200378418\n      ],\n      [\n        \"▁compliqué\",\n        -13.300288200378418\n      ],\n      [\n        \"▁succulent\",\n        -13.300297737121582\n      ],\n      [\n        \"opéra\",\n        -13.300395011901855\n      ],\n      [\n        \"7-9\",\n        -13.300456047058105\n      ],\n      [\n        \"▁pierderi\",\n        -13.300654411315918\n      ],\n      [\n        \"extinction\",\n        -13.30090045928955\n      ],\n      [\n        \"▁Zweifel\",\n        -13.30103874206543\n      ],\n      [\n        \"ATCH\",\n        -13.30112361907959\n      ],\n      [\n        \"10,000\",\n        -13.301222801208496\n      ],\n      [\n        \"▁uninterrupted\",\n        -13.301513671875\n      ],\n      [\n        \"▁Eigentum\",\n        -13.301517486572266\n      ],\n      [\n        \"▁Utility\",\n        -13.301517486572266\n      ],\n      [\n        \"ско\",\n        -13.301529884338379\n      ],\n      [\n        \"▁tornado\",\n        -13.301544189453125\n      ],\n      [\n        \"▁Güte\",\n        -13.301727294921875\n      ],\n      [\n        \"▁pertain\",\n        -13.301923751831055\n      ],\n      [\n        \"painters\",\n        -13.301993370056152\n      ],\n      [\n        \"Help\",\n        -13.3021240234375\n      ],\n      [\n        \"▁străinătate\",\n        -13.30212688446045\n      ],\n      [\n        \"▁stammen\",\n        -13.302170753479004\n      ],\n      [\n        \"opposition\",\n        -13.302229881286621\n      ],\n      [\n        \"▁rhino\",\n        -13.302233695983887\n      ],\n      [\n        \"intervenir\",\n        -13.302427291870117\n      ],\n      [\n        \"▁hyperlink\",\n        -13.302441596984863\n      ],\n      [\n        \"höchst\",\n        -13.302518844604492\n      ],\n      [\n        \"roach\",\n        -13.302627563476562\n      ],\n      [\n        \"wSt\",\n        -13.302687644958496\n      ],\n      [\n        \"▁monastery\",\n        -13.302740097045898\n      ],\n      [\n        \"▁algae\",\n        -13.302754402160645\n      ],\n      [\n        \"▁shaving\",\n        -13.302757263183594\n      ],\n      [\n        \"présentent\",\n        -13.302804946899414\n      ],\n      [\n        \"Africa\",\n        -13.302860260009766\n      ],\n      [\n        \"eigener\",\n        -13.303047180175781\n      ],\n      [\n        \"▁glace\",\n        -13.303153991699219\n      ],\n      [\n        \"▁discurs\",\n        -13.303179740905762\n      ],\n      [\n        \"▁autograph\",\n        -13.303204536437988\n      ],\n      [\n        \"▁Conflict\",\n        -13.303359031677246\n      ],\n      [\n        \"▁școli\",\n        -13.303411483764648\n      ],\n      [\n        \"▁excerpt\",\n        -13.303617477416992\n      ],\n      [\n        \"correlated\",\n        -13.303628921508789\n      ],\n      [\n        \"empel\",\n        -13.303841590881348\n      ],\n      [\n        \"cryptocurrencies\",\n        -13.30396842956543\n      ],\n      [\n        \"▁symposium\",\n        -13.30396842956543\n      ],\n      [\n        \"▁gewohnt\",\n        -13.303994178771973\n      ],\n      [\n        \"PTSD\",\n        -13.304070472717285\n      ],\n      [\n        \"▁harmonic\",\n        -13.304166793823242\n      ],\n      [\n        \"discarded\",\n        -13.304282188415527\n      ],\n      [\n        \"▁Flint\",\n        -13.304359436035156\n      ],\n      [\n        \"Russia\",\n        -13.304422378540039\n      ],\n      [\n        \"▁ședinț\",\n        -13.304583549499512\n      ],\n      [\n        \"▁accusations\",\n        -13.304727554321289\n      ],\n      [\n        \"▁încălc\",\n        -13.304827690124512\n      ],\n      [\n        \"sendung\",\n        -13.305152893066406\n      ],\n      [\n        \"▁Chiropractic\",\n        -13.305197715759277\n      ],\n      [\n        \"▁excepți\",\n        -13.305201530456543\n      ],\n      [\n        \"▁proclaim\",\n        -13.305201530456543\n      ],\n      [\n        \"▁Flexible\",\n        -13.305295944213867\n      ],\n      [\n        \"▁Hüt\",\n        -13.30538272857666\n      ],\n      [\n        \"▁Baltic\",\n        -13.30539608001709\n      ],\n      [\n        \"▁inaltime\",\n        -13.30553913116455\n      ],\n      [\n        \"▁montré\",\n        -13.305868148803711\n      ],\n      [\n        \"exécution\",\n        -13.305898666381836\n      ],\n      [\n        \"partei\",\n        -13.305961608886719\n      ],\n      [\n        \"▁specifie\",\n        -13.306072235107422\n      ],\n      [\n        \"▁Jackpot\",\n        -13.306105613708496\n      ],\n      [\n        \"▁stumble\",\n        -13.306134223937988\n      ],\n      [\n        \"▁individuel\",\n        -13.306161880493164\n      ],\n      [\n        \"▁Veteran\",\n        -13.306217193603516\n      ],\n      [\n        \"▁Supplies\",\n        -13.306428909301758\n      ],\n      [\n        \"▁excavation\",\n        -13.306428909301758\n      ],\n      [\n        \"▁Libraries\",\n        -13.306469917297363\n      ],\n      [\n        \"▁prénom\",\n        -13.306476593017578\n      ],\n      [\n        \"WOOD\",\n        -13.30650806427002\n      ],\n      [\n        \"meciul\",\n        -13.306917190551758\n      ],\n      [\n        \"Chef\",\n        -13.306938171386719\n      ],\n      [\n        \"▁SUPER\",\n        -13.306940078735352\n      ],\n      [\n        \"Appeals\",\n        -13.30696964263916\n      ],\n      [\n        \"terapia\",\n        -13.307113647460938\n      ],\n      [\n        \"▁relatii\",\n        -13.30713939666748\n      ],\n      [\n        \"modifying\",\n        -13.30748462677002\n      ],\n      [\n        \"▁Regulament\",\n        -13.307662010192871\n      ],\n      [\n        \"▁bănci\",\n        -13.307662963867188\n      ],\n      [\n        \"▁agility\",\n        -13.307666778564453\n      ],\n      [\n        \"▁Magnetic\",\n        -13.307674407958984\n      ],\n      [\n        \"▁piatra\",\n        -13.30767822265625\n      ],\n      [\n        \"▁Governance\",\n        -13.307680130004883\n      ],\n      [\n        \"▁clown\",\n        -13.30772876739502\n      ],\n      [\n        \"▁Choir\",\n        -13.308337211608887\n      ],\n      [\n        \"aujourd\",\n        -13.308548927307129\n      ],\n      [\n        \"▁vendeur\",\n        -13.308732032775879\n      ],\n      [\n        \"ndererseits\",\n        -13.308859825134277\n      ],\n      [\n        \"▁Bahrain\",\n        -13.3088960647583\n      ],\n      [\n        \"▁Timisoara\",\n        -13.3088960647583\n      ],\n      [\n        \"▁exklusive\",\n        -13.3088960647583\n      ],\n      [\n        \"▁Population\",\n        -13.309001922607422\n      ],\n      [\n        \"▁nepo\",\n        -13.309073448181152\n      ],\n      [\n        \"▁relish\",\n        -13.309085845947266\n      ],\n      [\n        \"▁Pumpkin\",\n        -13.309571266174316\n      ],\n      [\n        \"▁détente\",\n        -13.309784889221191\n      ],\n      [\n        \"▁episcop\",\n        -13.309860229492188\n      ],\n      [\n        \"patterned\",\n        -13.309929847717285\n      ],\n      [\n        \"▁THANK\",\n        -13.310132026672363\n      ],\n      [\n        \"▁Widerspruch\",\n        -13.310132026672363\n      ],\n      [\n        \"▁Crisis\",\n        -13.310189247131348\n      ],\n      [\n        \"▁goose\",\n        -13.310226440429688\n      ],\n      [\n        \"▁couture\",\n        -13.310307502746582\n      ],\n      [\n        \"▁hinweg\",\n        -13.310446739196777\n      ],\n      [\n        \"supplemental\",\n        -13.310486793518066\n      ],\n      [\n        \"shingles\",\n        -13.31060791015625\n      ],\n      [\n        \"investir\",\n        -13.310635566711426\n      ],\n      [\n        \"▁steriliz\",\n        -13.310759544372559\n      ],\n      [\n        \"tractors\",\n        -13.310761451721191\n      ],\n      [\n        \"cellules\",\n        -13.31078815460205\n      ],\n      [\n        \"▁Gloria\",\n        -13.310888290405273\n      ],\n      [\n        \"▁teilnehmen\",\n        -13.311092376708984\n      ],\n      [\n        \"companiile\",\n        -13.311248779296875\n      ],\n      [\n        \"surfacing\",\n        -13.311279296875\n      ],\n      [\n        \"▁nostalgic\",\n        -13.311368942260742\n      ],\n      [\n        \"▁Badezimmer\",\n        -13.311369895935059\n      ],\n      [\n        \"▁conjoint\",\n        -13.311370849609375\n      ],\n      [\n        \"vacancy\",\n        -13.31145191192627\n      ],\n      [\n        \"▁homeland\",\n        -13.311582565307617\n      ],\n      [\n        \"▁Abschnitt\",\n        -13.311625480651855\n      ],\n      [\n        \"Cartea\",\n        -13.311653137207031\n      ],\n      [\n        \"SIA\",\n        -13.311782836914062\n      ],\n      [\n        \"▁explode\",\n        -13.311786651611328\n      ],\n      [\n        \"fostering\",\n        -13.311959266662598\n      ],\n      [\n        \"▁ceilalti\",\n        -13.31198787689209\n      ],\n      [\n        \"▁gentil\",\n        -13.31214714050293\n      ],\n      [\n        \"oplasty\",\n        -13.31218433380127\n      ],\n      [\n        \"bodied\",\n        -13.312424659729004\n      ],\n      [\n        \"▁1906\",\n        -13.312499046325684\n      ],\n      [\n        \"▁BlackBerry\",\n        -13.312607765197754\n      ],\n      [\n        \"▁Presbyterian\",\n        -13.312607765197754\n      ],\n      [\n        \"▁berücksichtigt\",\n        -13.312607765197754\n      ],\n      [\n        \"▁compartiment\",\n        -13.312607765197754\n      ],\n      [\n        \"▁compulsory\",\n        -13.312607765197754\n      ],\n      [\n        \"Millennial\",\n        -13.312609672546387\n      ],\n      [\n        \"▁sanitar\",\n        -13.312638282775879\n      ],\n      [\n        \"▁stink\",\n        -13.312975883483887\n      ],\n      [\n        \"lius\",\n        -13.313047409057617\n      ],\n      [\n        \"thankfully\",\n        -13.313136100769043\n      ],\n      [\n        \"modalité\",\n        -13.313173294067383\n      ],\n      [\n        \"▁cunoaște\",\n        -13.313226699829102\n      ],\n      [\n        \"Infrastruktur\",\n        -13.313227653503418\n      ],\n      [\n        \"▁studenți\",\n        -13.313253402709961\n      ],\n      [\n        \"Bref\",\n        -13.313270568847656\n      ],\n      [\n        \"London\",\n        -13.31360149383545\n      ],\n      [\n        \"▁Arduino\",\n        -13.313847541809082\n      ],\n      [\n        \"▁cilantro\",\n        -13.313847541809082\n      ],\n      [\n        \"▁Rafael\",\n        -13.313848495483398\n      ],\n      [\n        \"▁untersucht\",\n        -13.313861846923828\n      ],\n      [\n        \"▁martyr\",\n        -13.31389331817627\n      ],\n      [\n        \"▁Mormon\",\n        -13.313984870910645\n      ],\n      [\n        \"▁wicket\",\n        -13.313996315002441\n      ],\n      [\n        \"cherished\",\n        -13.314335823059082\n      ],\n      [\n        \"liquid\",\n        -13.314417839050293\n      ],\n      [\n        \"▁dorinț\",\n        -13.314571380615234\n      ],\n      [\n        \"lehnt\",\n        -13.314717292785645\n      ],\n      [\n        \"meisterschaft\",\n        -13.31493091583252\n      ],\n      [\n        \"fondateur\",\n        -13.314971923828125\n      ],\n      [\n        \"câble\",\n        -13.315078735351562\n      ],\n      [\n        \"▁erreichbar\",\n        -13.315091133117676\n      ],\n      [\n        \"▁footsteps\",\n        -13.315094947814941\n      ],\n      [\n        \"▁Kloster\",\n        -13.31519889831543\n      ],\n      [\n        \"▁multiplayer\",\n        -13.315218925476074\n      ],\n      [\n        \"▁substitu\",\n        -13.315276145935059\n      ],\n      [\n        \"▁Frisch\",\n        -13.315526962280273\n      ],\n      [\n        \"▁arsenal\",\n        -13.315712928771973\n      ],\n      [\n        \"explication\",\n        -13.315866470336914\n      ],\n      [\n        \"▁conexiun\",\n        -13.315986633300781\n      ],\n      [\n        \"muddy\",\n        -13.316045761108398\n      ],\n      [\n        \"▁Reifen\",\n        -13.316120147705078\n      ],\n      [\n        \"auraient\",\n        -13.316132545471191\n      ],\n      [\n        \"▁biologic\",\n        -13.316136360168457\n      ],\n      [\n        \"▁acquainted\",\n        -13.316332817077637\n      ],\n      [\n        \"▁shelving\",\n        -13.316341400146484\n      ],\n      [\n        \"Stunning\",\n        -13.316373825073242\n      ],\n      [\n        \"▁Clothing\",\n        -13.316394805908203\n      ],\n      [\n        \"▁kidding\",\n        -13.316431999206543\n      ],\n      [\n        \"excellent\",\n        -13.316452026367188\n      ],\n      [\n        \"▁susțin\",\n        -13.316487312316895\n      ],\n      [\n        \"bătut\",\n        -13.316502571105957\n      ],\n      [\n        \"elusive\",\n        -13.3165283203125\n      ],\n      [\n        \"werbung\",\n        -13.316743850708008\n      ],\n      [\n        \"slipping\",\n        -13.316813468933105\n      ],\n      [\n        \"▁configura\",\n        -13.316926956176758\n      ],\n      [\n        \"▁proaspat\",\n        -13.31695556640625\n      ],\n      [\n        \"▁apporté\",\n        -13.317120552062988\n      ],\n      [\n        \"▁démarr\",\n        -13.317328453063965\n      ],\n      [\n        \"Spezialist\",\n        -13.317578315734863\n      ],\n      [\n        \"▁obligați\",\n        -13.317578315734863\n      ],\n      [\n        \"▁societăți\",\n        -13.317578315734863\n      ],\n      [\n        \"▁malpractice\",\n        -13.31757926940918\n      ],\n      [\n        \"Hundreds\",\n        -13.317609786987305\n      ],\n      [\n        \"▁3:1\",\n        -13.318138122558594\n      ],\n      [\n        \"▁computation\",\n        -13.31817626953125\n      ],\n      [\n        \"▁Heilig\",\n        -13.318528175354004\n      ],\n      [\n        \"▁Helsinki\",\n        -13.318824768066406\n      ],\n      [\n        \"▁firefighters\",\n        -13.318824768066406\n      ],\n      [\n        \"▁obedience\",\n        -13.318824768066406\n      ],\n      [\n        \"▁evacuate\",\n        -13.318825721740723\n      ],\n      [\n        \"▁Floyd\",\n        -13.318840026855469\n      ],\n      [\n        \"▁Disneyland\",\n        -13.318859100341797\n      ],\n      [\n        \"Cathy\",\n        -13.319069862365723\n      ],\n      [\n        \"▁Broken\",\n        -13.319278717041016\n      ],\n      [\n        \"cript\",\n        -13.319952011108398\n      ],\n      [\n        \"▁Gewähr\",\n        -13.320073127746582\n      ],\n      [\n        \"▁embarrassed\",\n        -13.320073127746582\n      ],\n      [\n        \"▁Leicht\",\n        -13.32007884979248\n      ],\n      [\n        \"▁témoign\",\n        -13.320379257202148\n      ],\n      [\n        \"▁viteze\",\n        -13.3206148147583\n      ],\n      [\n        \"▁hallmark\",\n        -13.320731163024902\n      ],\n      [\n        \"uploads\",\n        -13.32082462310791\n      ],\n      [\n        \"▁Submission\",\n        -13.320929527282715\n      ],\n      [\n        \"▁croissant\",\n        -13.321049690246582\n      ],\n      [\n        \"awning\",\n        -13.32105827331543\n      ],\n      [\n        \"detecting\",\n        -13.321198463439941\n      ],\n      [\n        \"▁Bahamas\",\n        -13.321322441101074\n      ],\n      [\n        \"▁Kathleen\",\n        -13.321325302124023\n      ],\n      [\n        \"▁latch\",\n        -13.321377754211426\n      ],\n      [\n        \"▁pronounce\",\n        -13.321380615234375\n      ],\n      [\n        \"▁choke\",\n        -13.321428298950195\n      ],\n      [\n        \"▁$50,000\",\n        -13.3215970993042\n      ],\n      [\n        \"▁historische\",\n        -13.321642875671387\n      ],\n      [\n        \"jugé\",\n        -13.321829795837402\n      ],\n      [\n        \"▁MasterCard\",\n        -13.321949005126953\n      ],\n      [\n        \"▁Horror\",\n        -13.321955680847168\n      ],\n      [\n        \"spoiled\",\n        -13.321958541870117\n      ],\n      [\n        \"▁apariți\",\n        -13.32202434539795\n      ],\n      [\n        \"geschaltet\",\n        -13.3225736618042\n      ],\n      [\n        \"▁Londra\",\n        -13.322578430175781\n      ],\n      [\n        \"viction\",\n        -13.322580337524414\n      ],\n      [\n        \"▁Disaster\",\n        -13.322593688964844\n      ],\n      [\n        \"▁desigur\",\n        -13.322601318359375\n      ],\n      [\n        \"▁substanț\",\n        -13.322601318359375\n      ],\n      [\n        \"▁compiler\",\n        -13.322613716125488\n      ],\n      [\n        \"▁vanzari\",\n        -13.32262897491455\n      ],\n      [\n        \"▁Simulation\",\n        -13.322669982910156\n      ],\n      [\n        \"Occasionally\",\n        -13.322842597961426\n      ],\n      [\n        \"Seite\",\n        -13.322884559631348\n      ],\n      [\n        \"Linked\",\n        -13.322938919067383\n      ],\n      [\n        \"Roll\",\n        -13.323015213012695\n      ],\n      [\n        \"▁trajet\",\n        -13.323244094848633\n      ],\n      [\n        \"Molecular\",\n        -13.323834419250488\n      ],\n      [\n        \"▁pragmatic\",\n        -13.323843002319336\n      ],\n      [\n        \"judecată\",\n        -13.323915481567383\n      ],\n      [\n        \"ров\",\n        -13.32400894165039\n      ],\n      [\n        \"serrurerie\",\n        -13.324024200439453\n      ],\n      [\n        \"▁reconstruct\",\n        -13.324129104614258\n      ],\n      [\n        \"▁heureuse\",\n        -13.324179649353027\n      ],\n      [\n        \"▁knight\",\n        -13.32422924041748\n      ],\n      [\n        \"knowingly\",\n        -13.324431419372559\n      ],\n      [\n        \"▁perspectiva\",\n        -13.324453353881836\n      ],\n      [\n        \"ordinary\",\n        -13.324604034423828\n      ],\n      [\n        \"▁chaudière\",\n        -13.324721336364746\n      ],\n      [\n        \"Neill\",\n        -13.324727058410645\n      ],\n      [\n        \"cellulose\",\n        -13.325080871582031\n      ],\n      [\n        \"▁Delicious\",\n        -13.325080871582031\n      ],\n      [\n        \"▁incearca\",\n        -13.325080871582031\n      ],\n      [\n        \"▁retrospective\",\n        -13.325080871582031\n      ],\n      [\n        \"▁mundane\",\n        -13.325081825256348\n      ],\n      [\n        \"▁definiert\",\n        -13.32508659362793\n      ],\n      [\n        \"▁cockpit\",\n        -13.325088500976562\n      ],\n      [\n        \"Aktionen\",\n        -13.325363159179688\n      ],\n      [\n        \"▁distanț\",\n        -13.325654029846191\n      ],\n      [\n        \"▁diplôme\",\n        -13.325708389282227\n      ],\n      [\n        \"prepaid\",\n        -13.325737953186035\n      ],\n      [\n        \"▁Tabellen\",\n        -13.325758934020996\n      ],\n      [\n        \"▁economie\",\n        -13.325770378112793\n      ],\n      [\n        \"December\",\n        -13.325826644897461\n      ],\n      [\n        \"Punkten\",\n        -13.32613754272461\n      ],\n      [\n        \"▁Punch\",\n        -13.32614517211914\n      ],\n      [\n        \"Martin\",\n        -13.326154708862305\n      ],\n      [\n        \"▁Espresso\",\n        -13.326314926147461\n      ],\n      [\n        \"▁ubiquitous\",\n        -13.326335906982422\n      ],\n      [\n        \"▁Mongolia\",\n        -13.326337814331055\n      ],\n      [\n        \"▁collabor\",\n        -13.326635360717773\n      ],\n      [\n        \"▁Vordergrund\",\n        -13.32696533203125\n      ],\n      [\n        \"cameră\",\n        -13.327091217041016\n      ],\n      [\n        \"represented\",\n        -13.327268600463867\n      ],\n      [\n        \"▁AUTO\",\n        -13.327446937561035\n      ],\n      [\n        \"▁Ofert\",\n        -13.327542304992676\n      ],\n      [\n        \"neig\",\n        -13.327593803405762\n      ],\n      [\n        \"▁Hazard\",\n        -13.327595710754395\n      ],\n      [\n        \"▁Constanta\",\n        -13.327596664428711\n      ],\n      [\n        \"▁tumour\",\n        -13.32759952545166\n      ],\n      [\n        \"▁Neighborhood\",\n        -13.327603340148926\n      ],\n      [\n        \"▁detaliat\",\n        -13.327619552612305\n      ],\n      [\n        \"▁extraordinaire\",\n        -13.327665328979492\n      ],\n      [\n        \"▁Therapeutic\",\n        -13.327686309814453\n      ],\n      [\n        \"predicting\",\n        -13.327693939208984\n      ],\n      [\n        \"▁institutii\",\n        -13.32776165008545\n      ],\n      [\n        \"ifizierung\",\n        -13.327797889709473\n      ],\n      [\n        \"wählt\",\n        -13.328207015991211\n      ],\n      [\n        \"▁remarquable\",\n        -13.32822322845459\n      ],\n      [\n        \"Invent\",\n        -13.328512191772461\n      ],\n      [\n        \"▁foloseșt\",\n        -13.328514099121094\n      ],\n      [\n        \"öfte\",\n        -13.328703880310059\n      ],\n      [\n        \"▁discreet\",\n        -13.328853607177734\n      ],\n      [\n        \"▁Flickr\",\n        -13.32885456085205\n      ],\n      [\n        \"▁trésor\",\n        -13.328856468200684\n      ],\n      [\n        \"▁steroids\",\n        -13.328872680664062\n      ],\n      [\n        \"▁personnalité\",\n        -13.328953742980957\n      ],\n      [\n        \"▁Krankenhaus\",\n        -13.32901668548584\n      ],\n      [\n        \"▁affordability\",\n        -13.329218864440918\n      ],\n      [\n        \"deuten\",\n        -13.329398155212402\n      ],\n      [\n        \"Detailed\",\n        -13.329412460327148\n      ],\n      [\n        \"Walk\",\n        -13.329444885253906\n      ],\n      [\n        \"▁parallèle\",\n        -13.329483032226562\n      ],\n      [\n        \"thèse\",\n        -13.329649925231934\n      ],\n      [\n        \"▁gefördert\",\n        -13.330117225646973\n      ],\n      [\n        \"Greeting\",\n        -13.33014965057373\n      ],\n      [\n        \"gelistet\",\n        -13.330172538757324\n      ],\n      [\n        \"▁chlorine\",\n        -13.330392837524414\n      ],\n      [\n        \"behält\",\n        -13.33039665222168\n      ],\n      [\n        \"emption\",\n        -13.330435752868652\n      ],\n      [\n        \"▁mobilité\",\n        -13.330601692199707\n      ],\n      [\n        \"▁randonnée\",\n        -13.330668449401855\n      ],\n      [\n        \"habitant\",\n        -13.330718040466309\n      ],\n      [\n        \"zilla\",\n        -13.331082344055176\n      ],\n      [\n        \"▁Lili\",\n        -13.331160545349121\n      ],\n      [\n        \"▁répét\",\n        -13.331341743469238\n      ],\n      [\n        \"trucât\",\n        -13.331376075744629\n      ],\n      [\n        \"▁Hospice\",\n        -13.331376075744629\n      ],\n      [\n        \"▁grassroots\",\n        -13.331377029418945\n      ],\n      [\n        \"▁affiché\",\n        -13.331393241882324\n      ],\n      [\n        \"pears\",\n        -13.331470489501953\n      ],\n      [\n        \"▁linistit\",\n        -13.331497192382812\n      ],\n      [\n        \"▁Patron\",\n        -13.331552505493164\n      ],\n      [\n        \"▁Stalin\",\n        -13.331626892089844\n      ],\n      [\n        \"▁închiri\",\n        -13.331751823425293\n      ],\n      [\n        \"▁Apostol\",\n        -13.332018852233887\n      ],\n      [\n        \"▁poudre\",\n        -13.332246780395508\n      ],\n      [\n        \"▁piscin\",\n        -13.332419395446777\n      ],\n      [\n        \"merlin\",\n        -13.33259391784668\n      ],\n      [\n        \"limited\",\n        -13.33260726928711\n      ],\n      [\n        \"▁métallique\",\n        -13.332639694213867\n      ],\n      [\n        \"gazebo\",\n        -13.33267879486084\n      ],\n      [\n        \"weilige\",\n        -13.332718849182129\n      ],\n      [\n        \"prosecutors\",\n        -13.33278751373291\n      ],\n      [\n        \"Expert\",\n        -13.33314323425293\n      ],\n      [\n        \"Assemblée\",\n        -13.333271980285645\n      ],\n      [\n        \"▁fauna\",\n        -13.333285331726074\n      ],\n      [\n        \"▁Turtle\",\n        -13.333353996276855\n      ],\n      [\n        \"▁Consortium\",\n        -13.333905220031738\n      ],\n      [\n        \"▁assemblies\",\n        -13.333905220031738\n      ],\n      [\n        \"▁trajectory\",\n        -13.333905220031738\n      ],\n      [\n        \"▁Vineyard\",\n        -13.333906173706055\n      ],\n      [\n        \"▁Mehrwert\",\n        -13.334037780761719\n      ],\n      [\n        \"▁sunflower\",\n        -13.334043502807617\n      ],\n      [\n        \"develop\",\n        -13.334060668945312\n      ],\n      [\n        \"▁heroic\",\n        -13.334100723266602\n      ],\n      [\n        \"▁riscuri\",\n        -13.334151268005371\n      ],\n      [\n        \"oeuf\",\n        -13.334300994873047\n      ],\n      [\n        \"influence\",\n        -13.334452629089355\n      ],\n      [\n        \"▁Voraussetzung\",\n        -13.334500312805176\n      ],\n      [\n        \"utoritatea\",\n        -13.334518432617188\n      ],\n      [\n        \"Produsul\",\n        -13.334654808044434\n      ],\n      [\n        \"▁gewährleistet\",\n        -13.335171699523926\n      ],\n      [\n        \"▁brûl\",\n        -13.335175514221191\n      ],\n      [\n        \"▁Column\",\n        -13.335184097290039\n      ],\n      [\n        \"▁trousers\",\n        -13.335209846496582\n      ],\n      [\n        \"▁posterior\",\n        -13.33521556854248\n      ],\n      [\n        \"glyph\",\n        -13.335251808166504\n      ],\n      [\n        \"▁Happen\",\n        -13.335280418395996\n      ],\n      [\n        \"▁créateur\",\n        -13.335667610168457\n      ],\n      [\n        \"▁apostle\",\n        -13.335898399353027\n      ],\n      [\n        \"▁padding\",\n        -13.335907936096191\n      ],\n      [\n        \"▁Digitalisierung\",\n        -13.335908889770508\n      ],\n      [\n        \"▁Laurie\",\n        -13.335915565490723\n      ],\n      [\n        \"▁Erwerb\",\n        -13.336065292358398\n      ],\n      [\n        \"▁bătrân\",\n        -13.336440086364746\n      ],\n      [\n        \"▁harmonious\",\n        -13.336441040039062\n      ],\n      [\n        \"▁ailments\",\n        -13.336456298828125\n      ],\n      [\n        \"▁Venue\",\n        -13.33650016784668\n      ],\n      [\n        \"▁Motorcycle\",\n        -13.336523056030273\n      ],\n      [\n        \"▁cortex\",\n        -13.336551666259766\n      ],\n      [\n        \"▁Sunrise\",\n        -13.336636543273926\n      ],\n      [\n        \"Software\",\n        -13.336775779724121\n      ],\n      [\n        \"▁advocat\",\n        -13.336934089660645\n      ],\n      [\n        \"essentiellement\",\n        -13.337422370910645\n      ],\n      [\n        \"•\",\n        -13.337494850158691\n      ],\n      [\n        \"părut\",\n        -13.337522506713867\n      ],\n      [\n        \"▁Suffolk\",\n        -13.337711334228516\n      ],\n      [\n        \"▁righteousness\",\n        -13.337711334228516\n      ],\n      [\n        \"▁Shirley\",\n        -13.337712287902832\n      ],\n      [\n        \"▁Famous\",\n        -13.337749481201172\n      ],\n      [\n        \"▁emulate\",\n        -13.337788581848145\n      ],\n      [\n        \"vermögen\",\n        -13.33788776397705\n      ],\n      [\n        \"generated\",\n        -13.337963104248047\n      ],\n      [\n        \"Ecole\",\n        -13.337977409362793\n      ],\n      [\n        \"▁managerial\",\n        -13.338086128234863\n      ],\n      [\n        \"believe\",\n        -13.338091850280762\n      ],\n      [\n        \"▁récupére\",\n        -13.338348388671875\n      ],\n      [\n        \"▁recens\",\n        -13.338531494140625\n      ],\n      [\n        \"▁Barrett\",\n        -13.338778495788574\n      ],\n      [\n        \"▁courageous\",\n        -13.338814735412598\n      ],\n      [\n        \"9.95\",\n        -13.338961601257324\n      ],\n      [\n        \"▁Odyssey\",\n        -13.338982582092285\n      ],\n      [\n        \"▁Violence\",\n        -13.338982582092285\n      ],\n      [\n        \"▁concasseur\",\n        -13.338982582092285\n      ],\n      [\n        \"▁evacuation\",\n        -13.338982582092285\n      ],\n      [\n        \"▁kontinuierlich\",\n        -13.338982582092285\n      ],\n      [\n        \"▁epidemi\",\n        -13.3389892578125\n      ],\n      [\n        \"▁disconnected\",\n        -13.339197158813477\n      ],\n      [\n        \"frucht\",\n        -13.339339256286621\n      ],\n      [\n        \"Trustees\",\n        -13.339348793029785\n      ],\n      [\n        \"▁Massiv\",\n        -13.339459419250488\n      ],\n      [\n        \"gebucht\",\n        -13.339473724365234\n      ],\n      [\n        \"stütze\",\n        -13.339526176452637\n      ],\n      [\n        \"▁febr\",\n        -13.339741706848145\n      ],\n      [\n        \"honoured\",\n        -13.339743614196777\n      ],\n      [\n        \"▁digitiz\",\n        -13.340079307556152\n      ],\n      [\n        \"Image\",\n        -13.34021282196045\n      ],\n      [\n        \"▁Brunswick\",\n        -13.34025764465332\n      ],\n      [\n        \"▁Therapist\",\n        -13.34026050567627\n      ],\n      [\n        \"accessoire\",\n        -13.340264320373535\n      ],\n      [\n        \"▁croqu\",\n        -13.340291023254395\n      ],\n      [\n        \"Pflanz\",\n        -13.34052848815918\n      ],\n      [\n        \"dragging\",\n        -13.340536117553711\n      ],\n      [\n        \"▁Facilit\",\n        -13.340750694274902\n      ],\n      [\n        \"soucis\",\n        -13.340765953063965\n      ],\n      [\n        \"Asadar\",\n        -13.34081745147705\n      ],\n      [\n        \"▁Thames\",\n        -13.341021537780762\n      ],\n      [\n        \"▁cariera\",\n        -13.341116905212402\n      ],\n      [\n        \"▁mercury\",\n        -13.341530799865723\n      ],\n      [\n        \"▁Blessed\",\n        -13.341533660888672\n      ],\n      [\n        \"▁Whitney\",\n        -13.341630935668945\n      ],\n      [\n        \"▁géant\",\n        -13.341926574707031\n      ],\n      [\n        \"▁coordonnée\",\n        -13.342217445373535\n      ],\n      [\n        \"oidal\",\n        -13.342623710632324\n      ],\n      [\n        \"Wohnungen\",\n        -13.342696189880371\n      ],\n      [\n        \"▁Spectrum\",\n        -13.34280776977539\n      ],\n      [\n        \"▁Avengers\",\n        -13.342808723449707\n      ],\n      [\n        \"▁Gloucester\",\n        -13.342808723449707\n      ],\n      [\n        \"▁nützlich\",\n        -13.342811584472656\n      ],\n      [\n        \"▁toothbrush\",\n        -13.342830657958984\n      ],\n      [\n        \"▁Vanessa\",\n        -13.342843055725098\n      ],\n      [\n        \"Saxon\",\n        -13.342947959899902\n      ],\n      [\n        \"▁comunități\",\n        -13.343165397644043\n      ],\n      [\n        \"reprezentanţi\",\n        -13.343175888061523\n      ],\n      [\n        \"▁întâlnire\",\n        -13.343225479125977\n      ],\n      [\n        \"delve\",\n        -13.343234062194824\n      ],\n      [\n        \"▁technologique\",\n        -13.343452453613281\n      ],\n      [\n        \"Describe\",\n        -13.343466758728027\n      ],\n      [\n        \"▁constient\",\n        -13.343501091003418\n      ],\n      [\n        \"gestalt\",\n        -13.343600273132324\n      ],\n      [\n        \"▁Tribune\",\n        -13.344090461730957\n      ],\n      [\n        \"▁fiberglass\",\n        -13.34412956237793\n      ],\n      [\n        \"verbindung\",\n        -13.344210624694824\n      ],\n      [\n        \"sacrificing\",\n        -13.344351768493652\n      ],\n      [\n        \"▁Pablo\",\n        -13.344470024108887\n      ],\n      [\n        \"▁adanc\",\n        -13.34525203704834\n      ],\n      [\n        \"omia\",\n        -13.345309257507324\n      ],\n      [\n        \"hâte\",\n        -13.345317840576172\n      ],\n      [\n        \"▁Sanctuary\",\n        -13.345366477966309\n      ],\n      [\n        \"▁accolade\",\n        -13.345368385314941\n      ],\n      [\n        \"▁Wurzel\",\n        -13.345398902893066\n      ],\n      [\n        \"▁spacing\",\n        -13.345433235168457\n      ],\n      [\n        \"▁bedeutend\",\n        -13.345481872558594\n      ],\n      [\n        \"▁biased\",\n        -13.345499992370605\n      ],\n      [\n        \"randomized\",\n        -13.345747947692871\n      ],\n      [\n        \"▁agenți\",\n        -13.345856666564941\n      ],\n      [\n        \"▁excepţi\",\n        -13.346012115478516\n      ],\n      [\n        \"▁fișier\",\n        -13.346028327941895\n      ],\n      [\n        \"▁fisier\",\n        -13.34664535522461\n      ],\n      [\n        \"irrespective\",\n        -13.346648216247559\n      ],\n      [\n        \"▁Gardner\",\n        -13.34665584564209\n      ],\n      [\n        \"▁aprecia\",\n        -13.346884727478027\n      ],\n      [\n        \"▁Klu\",\n        -13.347082138061523\n      ],\n      [\n        \"▁apropie\",\n        -13.347535133361816\n      ],\n      [\n        \"▁echival\",\n        -13.347784042358398\n      ],\n      [\n        \"tauchen\",\n        -13.347862243652344\n      ],\n      [\n        \"▁hauptsächlich\",\n        -13.347930908203125\n      ],\n      [\n        \"▁pollutants\",\n        -13.347930908203125\n      ],\n      [\n        \"▁mammals\",\n        -13.347931861877441\n      ],\n      [\n        \"▁Landwirtschaft\",\n        -13.347936630249023\n      ],\n      [\n        \"▁stăpân\",\n        -13.34793758392334\n      ],\n      [\n        \"▁Prüf\",\n        -13.347990989685059\n      ],\n      [\n        \"▁Motorsport\",\n        -13.34807300567627\n      ],\n      [\n        \"Leaving\",\n        -13.348352432250977\n      ],\n      [\n        \"schädigung\",\n        -13.348573684692383\n      ],\n      [\n        \"▁calendrier\",\n        -13.348573684692383\n      ],\n      [\n        \"plikation\",\n        -13.348655700683594\n      ],\n      [\n        \"▁DOE\",\n        -13.348655700683594\n      ],\n      [\n        \"ред\",\n        -13.348966598510742\n      ],\n      [\n        \"Jahr\",\n        -13.34913444519043\n      ],\n      [\n        \"▁entitlement\",\n        -13.34921646118164\n      ],\n      [\n        \"schuldig\",\n        -13.349217414855957\n      ],\n      [\n        \"▁Münster\",\n        -13.349218368530273\n      ],\n      [\n        \"pository\",\n        -13.349451065063477\n      ],\n      [\n        \"▁numero\",\n        -13.350220680236816\n      ],\n      [\n        \"▁entsprechen\",\n        -13.350383758544922\n      ],\n      [\n        \"▁astronaut\",\n        -13.350502967834473\n      ],\n      [\n        \"▁hexagon\",\n        -13.350502967834473\n      ],\n      [\n        \"▁DAMAGE\",\n        -13.350503921508789\n      ],\n      [\n        \"▁Quartz\",\n        -13.350504875183105\n      ],\n      [\n        \"▁rédaction\",\n        -13.350504875183105\n      ],\n      [\n        \"▁replenish\",\n        -13.350508689880371\n      ],\n      [\n        \"▁amoureux\",\n        -13.350523948669434\n      ],\n      [\n        \"▁opțiun\",\n        -13.350616455078125\n      ],\n      [\n        \"Custom\",\n        -13.350622177124023\n      ],\n      [\n        \"▁Telekom\",\n        -13.350639343261719\n      ],\n      [\n        \"▁RFID\",\n        -13.351163864135742\n      ],\n      [\n        \"▁Scorpio\",\n        -13.351264953613281\n      ],\n      [\n        \"▁thirst\",\n        -13.35152816772461\n      ],\n      [\n        \"▁Kosovo\",\n        -13.351791381835938\n      ],\n      [\n        \"▁precursor\",\n        -13.351794242858887\n      ],\n      [\n        \"▁sarbatori\",\n        -13.351810455322266\n      ],\n      [\n        \"▁Daisy\",\n        -13.351828575134277\n      ],\n      [\n        \"▁Dropbox\",\n        -13.351898193359375\n      ],\n      [\n        \"Smith\",\n        -13.351949691772461\n      ],\n      [\n        \"contabil\",\n        -13.352191925048828\n      ],\n      [\n        \"▁monnaie\",\n        -13.352437973022461\n      ],\n      [\n        \"capsul\",\n        -13.352577209472656\n      ],\n      [\n        \"treff\",\n        -13.352760314941406\n      ],\n      [\n        \"beauftragte\",\n        -13.352761268615723\n      ],\n      [\n        \"industrial\",\n        -13.353006362915039\n      ],\n      [\n        \"responsables\",\n        -13.353010177612305\n      ],\n      [\n        \"▁FIRST\",\n        -13.353080749511719\n      ],\n      [\n        \"▁crezut\",\n        -13.35308837890625\n      ],\n      [\n        \"▁reseller\",\n        -13.353107452392578\n      ],\n      [\n        \"▁direcți\",\n        -13.353154182434082\n      ],\n      [\n        \"mouvoir\",\n        -13.353294372558594\n      ],\n      [\n        \"▁Invite\",\n        -13.353431701660156\n      ],\n      [\n        \"▁constructii\",\n        -13.353440284729004\n      ],\n      [\n        \"▁oublié\",\n        -13.353577613830566\n      ],\n      [\n        \"găseșt\",\n        -13.353687286376953\n      ],\n      [\n        \"▁végét\",\n        -13.353755950927734\n      ],\n      [\n        \"idine\",\n        -13.35385799407959\n      ],\n      [\n        \"▁Ajout\",\n        -13.353951454162598\n      ],\n      [\n        \"▁Shelf\",\n        -13.354195594787598\n      ],\n      [\n        \"HALL\",\n        -13.35422420501709\n      ],\n      [\n        \"▁nostalgia\",\n        -13.35437297821045\n      ],\n      [\n        \"▁ottoman\",\n        -13.35437297821045\n      ],\n      [\n        \"▁ambalaj\",\n        -13.354398727416992\n      ],\n      [\n        \"municipiul\",\n        -13.354405403137207\n      ],\n      [\n        \"NOVA\",\n        -13.354500770568848\n      ],\n      [\n        \"▁disregard\",\n        -13.354997634887695\n      ],\n      [\n        \"▁bijuterii\",\n        -13.355018615722656\n      ],\n      [\n        \"▁sorgfältig\",\n        -13.355018615722656\n      ],\n      [\n        \"vraient\",\n        -13.355307579040527\n      ],\n      [\n        \"▁backsplash\",\n        -13.355669975280762\n      ],\n      [\n        \"▁nuisance\",\n        -13.355679512023926\n      ],\n      [\n        \"▁Territory\",\n        -13.35568618774414\n      ],\n      [\n        \"▁surprins\",\n        -13.355693817138672\n      ],\n      [\n        \"enchanting\",\n        -13.35571002960205\n      ],\n      [\n        \"trospecti\",\n        -13.355847358703613\n      ],\n      [\n        \"▁dvd\",\n        -13.356199264526367\n      ],\n      [\n        \"Totally\",\n        -13.356329917907715\n      ],\n      [\n        \"▁Edelstahl\",\n        -13.35696029663086\n      ],\n      [\n        \"▁sequencing\",\n        -13.356961250305176\n      ],\n      [\n        \"▁Circus\",\n        -13.35696792602539\n      ],\n      [\n        \"▁ashamed\",\n        -13.35696792602539\n      ],\n      [\n        \"▁horrific\",\n        -13.357028007507324\n      ],\n      [\n        \"▁taiat\",\n        -13.357033729553223\n      ],\n      [\n        \"▁Angehörige\",\n        -13.357125282287598\n      ],\n      [\n        \"Michel\",\n        -13.357256889343262\n      ],\n      [\n        \"▁communion\",\n        -13.357298851013184\n      ],\n      [\n        \"▁psiho\",\n        -13.357378959655762\n      ],\n      [\n        \"losigkeit\",\n        -13.357405662536621\n      ],\n      [\n        \"dipping\",\n        -13.357512474060059\n      ],\n      [\n        \"▁profesională\",\n        -13.357608795166016\n      ],\n      [\n        \"Indiferent\",\n        -13.357609748840332\n      ],\n      [\n        \"▁crestin\",\n        -13.357723236083984\n      ],\n      [\n        \"wholesome\",\n        -13.357796669006348\n      ],\n      [\n        \"▁Welfare\",\n        -13.358257293701172\n      ],\n      [\n        \"▁plentiful\",\n        -13.358257293701172\n      ],\n      [\n        \"▁Triumph\",\n        -13.358258247375488\n      ],\n      [\n        \"▁fascination\",\n        -13.358260154724121\n      ],\n      [\n        \"▁vicious\",\n        -13.358291625976562\n      ],\n      [\n        \"▁Höchst\",\n        -13.358294486999512\n      ],\n      [\n        \"▁Dunkel\",\n        -13.358386039733887\n      ],\n      [\n        \"▁harass\",\n        -13.358406066894531\n      ],\n      [\n        \"ambogia\",\n        -13.358475685119629\n      ],\n      [\n        \"▁synonymous\",\n        -13.358598709106445\n      ],\n      [\n        \"bottom\",\n        -13.35879898071289\n      ],\n      [\n        \"▁bénévole\",\n        -13.358906745910645\n      ],\n      [\n        \"▁suprafaț\",\n        -13.358906745910645\n      ],\n      [\n        \"▁umplut\",\n        -13.358997344970703\n      ],\n      [\n        \"▁Teddy\",\n        -13.359162330627441\n      ],\n      [\n        \"breathable\",\n        -13.359292984008789\n      ],\n      [\n        \"▁Toshiba\",\n        -13.3595552444458\n      ],\n      [\n        \"▁seismic\",\n        -13.359569549560547\n      ],\n      [\n        \"▁dringend\",\n        -13.359583854675293\n      ],\n      [\n        \"▁cultură\",\n        -13.359585762023926\n      ],\n      [\n        \"▁Waffen\",\n        -13.359665870666504\n      ],\n      [\n        \"▁Bubble\",\n        -13.359702110290527\n      ],\n      [\n        \"▁Brigade\",\n        -13.359759330749512\n      ],\n      [\n        \"▁Blatt\",\n        -13.36012077331543\n      ],\n      [\n        \"▁scénario\",\n        -13.36020565032959\n      ],\n      [\n        \"allah\",\n        -13.360396385192871\n      ],\n      [\n        \"▁superintendent\",\n        -13.360855102539062\n      ],\n      [\n        \"pflanzen\",\n        -13.360856056213379\n      ],\n      [\n        \"▁kurzfristig\",\n        -13.360856056213379\n      ],\n      [\n        \"▁raspberry\",\n        -13.360876083374023\n      ],\n      [\n        \"▁Evident\",\n        -13.360904693603516\n      ],\n      [\n        \"▁inutile\",\n        -13.361076354980469\n      ],\n      [\n        \"prouvé\",\n        -13.361104011535645\n      ],\n      [\n        \"▁obtien\",\n        -13.36141300201416\n      ],\n      [\n        \"▁Matthias\",\n        -13.361506462097168\n      ],\n      [\n        \"▁déclench\",\n        -13.361506462097168\n      ],\n      [\n        \"Situationen\",\n        -13.361529350280762\n      ],\n      [\n        \"▁Disclaimer\",\n        -13.362156867980957\n      ],\n      [\n        \"▁loneliness\",\n        -13.362156867980957\n      ],\n      [\n        \"▁Gothic\",\n        -13.362164497375488\n      ],\n      [\n        \"▁humility\",\n        -13.362165451049805\n      ],\n      [\n        \"▁machiaj\",\n        -13.362175941467285\n      ],\n      [\n        \"▁Sophia\",\n        -13.362178802490234\n      ],\n      [\n        \"▁Forecast\",\n        -13.362265586853027\n      ],\n      [\n        \"IBLE\",\n        -13.362456321716309\n      ],\n      [\n        \"ivism\",\n        -13.362480163574219\n      ],\n      [\n        \"israel\",\n        -13.36278247833252\n      ],\n      [\n        \"▁kümmern\",\n        -13.362809181213379\n      ],\n      [\n        \"▁verbreitet\",\n        -13.362825393676758\n      ],\n      [\n        \"▁capacitor\",\n        -13.362832069396973\n      ],\n      [\n        \"deprived\",\n        -13.3634614944458\n      ],\n      [\n        \"unbiased\",\n        -13.3634614944458\n      ],\n      [\n        \"▁Dominique\",\n        -13.3634614944458\n      ],\n      [\n        \"▁Bamboo\",\n        -13.363462448120117\n      ],\n      [\n        \"▁Heinrich\",\n        -13.363465309143066\n      ],\n      [\n        \"individualized\",\n        -13.363550186157227\n      ],\n      [\n        \"▁ansprechen\",\n        -13.363776206970215\n      ],\n      [\n        \"ordinaire\",\n        -13.363801002502441\n      ],\n      [\n        \"▁Ucraina\",\n        -13.364112854003906\n      ],\n      [\n        \"▁militare\",\n        -13.364115715026855\n      ],\n      [\n        \"massif\",\n        -13.364352226257324\n      ],\n      [\n        \"▁emisiuni\",\n        -13.364501953125\n      ],\n      [\n        \"maladies\",\n        -13.364622116088867\n      ],\n      [\n        \"▁pneumonia\",\n        -13.364765167236328\n      ],\n      [\n        \"▁graffiti\",\n        -13.364767074584961\n      ],\n      [\n        \"▁Determine\",\n        -13.3648099899292\n      ],\n      [\n        \"▁Northwestern\",\n        -13.364893913269043\n      ],\n      [\n        \"▁grasimi\",\n        -13.364897727966309\n      ],\n      [\n        \"▁lebendig\",\n        -13.364920616149902\n      ],\n      [\n        \"▁cifre\",\n        -13.364946365356445\n      ],\n      [\n        \"▁accelerator\",\n        -13.36533260345459\n      ],\n      [\n        \"▁nib\",\n        -13.365374565124512\n      ],\n      [\n        \"▁Jocuri\",\n        -13.365400314331055\n      ],\n      [\n        \"▁außergewöhnlich\",\n        -13.365402221679688\n      ],\n      [\n        \"▁orchid\",\n        -13.36542797088623\n      ],\n      [\n        \"zugreifen\",\n        -13.365530967712402\n      ],\n      [\n        \"utilisent\",\n        -13.365662574768066\n      ],\n      [\n        \"▁nineteenth\",\n        -13.366071701049805\n      ],\n      [\n        \"improvisation\",\n        -13.366072654724121\n      ],\n      [\n        \"▁Disclosure\",\n        -13.366072654724121\n      ],\n      [\n        \"▁Überraschung\",\n        -13.366072654724121\n      ],\n      [\n        \"▁Casual\",\n        -13.366093635559082\n      ],\n      [\n        \"▁Witness\",\n        -13.366093635559082\n      ],\n      [\n        \"teacher\",\n        -13.366125106811523\n      ],\n      [\n        \"Printed\",\n        -13.366129875183105\n      ],\n      [\n        \"▁prețuri\",\n        -13.366189956665039\n      ],\n      [\n        \"rues\",\n        -13.366216659545898\n      ],\n      [\n        \"▁cerinte\",\n        -13.366338729858398\n      ],\n      [\n        \"rouvent\",\n        -13.36662483215332\n      ],\n      [\n        \"assembling\",\n        -13.36673355102539\n      ],\n      [\n        \"▁atenție\",\n        -13.366769790649414\n      ],\n      [\n        \"▁amintiri\",\n        -13.366782188415527\n      ],\n      [\n        \"▁sustinut\",\n        -13.366805076599121\n      ],\n      [\n        \"Digital\",\n        -13.367257118225098\n      ],\n      [\n        \"▁Deborah\",\n        -13.36738109588623\n      ],\n      [\n        \"gesichts\",\n        -13.367382049560547\n      ],\n      [\n        \"▁temperament\",\n        -13.367440223693848\n      ],\n      [\n        \"▁competency\",\n        -13.367447853088379\n      ],\n      [\n        \"▁dwarf\",\n        -13.367515563964844\n      ],\n      [\n        \"▁dureaz\",\n        -13.367539405822754\n      ],\n      [\n        \"habilit\",\n        -13.367764472961426\n      ],\n      [\n        \"leaned\",\n        -13.3679838180542\n      ],\n      [\n        \"▁illicit\",\n        -13.368348121643066\n      ],\n      [\n        \"Availability\",\n        -13.368691444396973\n      ],\n      [\n        \"▁Brașov\",\n        -13.368691444396973\n      ],\n      [\n        \"▁Pyramid\",\n        -13.368691444396973\n      ],\n      [\n        \"▁achievable\",\n        -13.368691444396973\n      ],\n      [\n        \"▁judiciaire\",\n        -13.368691444396973\n      ],\n      [\n        \"Übrigen\",\n        -13.368693351745605\n      ],\n      [\n        \"▁activism\",\n        -13.368795394897461\n      ],\n      [\n        \"▁boycott\",\n        -13.368839263916016\n      ],\n      [\n        \"Desigur\",\n        -13.368927001953125\n      ],\n      [\n        \"klingt\",\n        -13.369264602661133\n      ],\n      [\n        \"▁Leidenschaft\",\n        -13.369346618652344\n      ],\n      [\n        \"▁Richtig\",\n        -13.369701385498047\n      ],\n      [\n        \"▁Airbnb\",\n        -13.370002746582031\n      ],\n      [\n        \"▁învățământ\",\n        -13.370002746582031\n      ],\n      [\n        \"Kampagne\",\n        -13.370004653930664\n      ],\n      [\n        \"▁thumbnail\",\n        -13.370014190673828\n      ],\n      [\n        \"Bestimmungen\",\n        -13.370016098022461\n      ],\n      [\n        \"▁vollkommen\",\n        -13.37001895904541\n      ],\n      [\n        \"▁biomass\",\n        -13.370027542114258\n      ],\n      [\n        \"▁escalate\",\n        -13.370030403137207\n      ],\n      [\n        \"wächst\",\n        -13.370085716247559\n      ],\n      [\n        \"▁scăpa\",\n        -13.370098114013672\n      ],\n      [\n        \"▁résult\",\n        -13.37014389038086\n      ],\n      [\n        \"▁shrine\",\n        -13.370217323303223\n      ],\n      [\n        \"maximizing\",\n        -13.370370864868164\n      ],\n      [\n        \"avoue\",\n        -13.370492935180664\n      ],\n      [\n        \"dirigeants\",\n        -13.370665550231934\n      ],\n      [\n        \"▁cerveau\",\n        -13.370672225952148\n      ],\n      [\n        \"▁proast\",\n        -13.370955467224121\n      ],\n      [\n        \"▁contaminants\",\n        -13.371325492858887\n      ],\n      [\n        \"effectue\",\n        -13.37151050567627\n      ],\n      [\n        \"ediție\",\n        -13.371539115905762\n      ],\n      [\n        \"monetiz\",\n        -13.371772766113281\n      ],\n      [\n        \"▁deplasare\",\n        -13.371976852416992\n      ],\n      [\n        \"▁Sfant\",\n        -13.37209415435791\n      ],\n      [\n        \"ROOM\",\n        -13.372113227844238\n      ],\n      [\n        \"bushes\",\n        -13.372151374816895\n      ],\n      [\n        \"mairie\",\n        -13.37251091003418\n      ],\n      [\n        \"obligate\",\n        -13.372528076171875\n      ],\n      [\n        \"▁tug\",\n        -13.372573852539062\n      ],\n      [\n        \"▁Collector\",\n        -13.372632026672363\n      ],\n      [\n        \"▁annoyed\",\n        -13.372633934020996\n      ],\n      [\n        \"▁aerobic\",\n        -13.372654914855957\n      ],\n      [\n        \"▁integer\",\n        -13.372830390930176\n      ],\n      [\n        \"▁Upload\",\n        -13.373249053955078\n      ],\n      [\n        \"▁impartial\",\n        -13.37346076965332\n      ],\n      [\n        \"▁discuţi\",\n        -13.373623847961426\n      ],\n      [\n        \"gastrointestinal\",\n        -13.37394905090332\n      ],\n      [\n        \"▁chiropractor\",\n        -13.37394905090332\n      ],\n      [\n        \"▁treptat\",\n        -13.373950004577637\n      ],\n      [\n        \"▁fishermen\",\n        -13.37395191192627\n      ],\n      [\n        \"levitra\",\n        -13.3739595413208\n      ],\n      [\n        \"Gruppe\",\n        -13.373964309692383\n      ],\n      [\n        \"▁Apostle\",\n        -13.373970985412598\n      ],\n      [\n        \"▁conseillé\",\n        -13.374068260192871\n      ],\n      [\n        \"Isra\",\n        -13.37421703338623\n      ],\n      [\n        \"▁Persönlichkeit\",\n        -13.374431610107422\n      ],\n      [\n        \"▁cantitati\",\n        -13.374459266662598\n      ],\n      [\n        \"▁incredibil\",\n        -13.374614715576172\n      ],\n      [\n        \"▁Berater\",\n        -13.374800682067871\n      ],\n      [\n        \"▁propuneri\",\n        -13.374835014343262\n      ],\n      [\n        \"MEDIA\",\n        -13.375236511230469\n      ],\n      [\n        \"▁opaque\",\n        -13.37526798248291\n      ],\n      [\n        \"▁Nielsen\",\n        -13.375269889831543\n      ],\n      [\n        \"▁cartofi\",\n        -13.375277519226074\n      ],\n      [\n        \"▁Whale\",\n        -13.37533950805664\n      ],\n      [\n        \"erzeugen\",\n        -13.375890731811523\n      ],\n      [\n        \"▁knack\",\n        -13.375931739807129\n      ],\n      [\n        \"Kandidat\",\n        -13.375936508178711\n      ],\n      [\n        \"▁tradițional\",\n        -13.375937461853027\n      ],\n      [\n        \"zählige\",\n        -13.375983238220215\n      ],\n      [\n        \"▁Petroleum\",\n        -13.376588821411133\n      ],\n      [\n        \"▁deficiencies\",\n        -13.376588821411133\n      ],\n      [\n        \"▁persecution\",\n        -13.376588821411133\n      ],\n      [\n        \"▁zgomot\",\n        -13.376588821411133\n      ],\n      [\n        \"▁reiterate\",\n        -13.376592636108398\n      ],\n      [\n        \"▁Slice\",\n        -13.376670837402344\n      ],\n      [\n        \"▁envy\",\n        -13.376704216003418\n      ],\n      [\n        \"▁stomac\",\n        -13.376851081848145\n      ],\n      [\n        \"Donnell\",\n        -13.376914978027344\n      ],\n      [\n        \"▁primordial\",\n        -13.377249717712402\n      ],\n      [\n        \"reclining\",\n        -13.377274513244629\n      ],\n      [\n        \"PASS\",\n        -13.377861976623535\n      ],\n      [\n        \"▁Resistance\",\n        -13.377910614013672\n      ],\n      [\n        \"▁Widerruf\",\n        -13.377911567687988\n      ],\n      [\n        \"▁vodka\",\n        -13.377911567687988\n      ],\n      [\n        \"▁yolk\",\n        -13.377912521362305\n      ],\n      [\n        \"ollywood\",\n        -13.377915382385254\n      ],\n      [\n        \"▁truffle\",\n        -13.377933502197266\n      ],\n      [\n        \"▁Sänger\",\n        -13.377955436706543\n      ],\n      [\n        \"▁Kenntnis\",\n        -13.377968788146973\n      ],\n      [\n        \"▁Kiel\",\n        -13.37803840637207\n      ],\n      [\n        \"▁Mutual\",\n        -13.378044128417969\n      ],\n      [\n        \"▁saliva\",\n        -13.37816047668457\n      ],\n      [\n        \"▁renforce\",\n        -13.378411293029785\n      ],\n      [\n        \"▁mulch\",\n        -13.378680229187012\n      ],\n      [\n        \"▁reviste\",\n        -13.378875732421875\n      ],\n      [\n        \"lucrarea\",\n        -13.378978729248047\n      ],\n      [\n        \"▁multiply\",\n        -13.379130363464355\n      ],\n      [\n        \"▁marshmallow\",\n        -13.379234313964844\n      ],\n      [\n        \"▁Durchschnitt\",\n        -13.379288673400879\n      ],\n      [\n        \"▁Authorities\",\n        -13.379426002502441\n      ],\n      [\n        \"▁greed\",\n        -13.379521369934082\n      ],\n      [\n        \"Visiting\",\n        -13.379638671875\n      ],\n      [\n        \"Carlton\",\n        -13.379727363586426\n      ],\n      [\n        \"▁splend\",\n        -13.37975025177002\n      ],\n      [\n        \"▁Erkenntnisse\",\n        -13.379898071289062\n      ],\n      [\n        \"▁Russie\",\n        -13.379916191101074\n      ],\n      [\n        \"Agence\",\n        -13.38007926940918\n      ],\n      [\n        \"schickt\",\n        -13.380288124084473\n      ],\n      [\n        \"##\",\n        -13.3804931640625\n      ],\n      [\n        \"▁Erweiterung\",\n        -13.380560874938965\n      ],\n      [\n        \"▁Franchise\",\n        -13.380560874938965\n      ],\n      [\n        \"Dedicated\",\n        -13.380563735961914\n      ],\n      [\n        \"▁Wisdom\",\n        -13.380569458007812\n      ],\n      [\n        \"▁gagnant\",\n        -13.380592346191406\n      ],\n      [\n        \"planetary\",\n        -13.380598068237305\n      ],\n      [\n        \"▁affinity\",\n        -13.380619049072266\n      ],\n      [\n        \"▁préférence\",\n        -13.380739212036133\n      ],\n      [\n        \"▁intellect\",\n        -13.380810737609863\n      ],\n      [\n        \"▁Translat\",\n        -13.380830764770508\n      ],\n      [\n        \"▁Sultan\",\n        -13.38089370727539\n      ],\n      [\n        \"▁birouri\",\n        -13.38101577758789\n      ],\n      [\n        \"▁Academie\",\n        -13.381224632263184\n      ],\n      [\n        \"▁consequential\",\n        -13.38138484954834\n      ],\n      [\n        \"▁festgestellt\",\n        -13.381402015686035\n      ],\n      [\n        \"▁Chanel\",\n        -13.381444931030273\n      ],\n      [\n        \"▁soutenu\",\n        -13.381875038146973\n      ],\n      [\n        \"▁Montessori\",\n        -13.381888389587402\n      ],\n      [\n        \"▁equitable\",\n        -13.381892204284668\n      ],\n      [\n        \"▁théorie\",\n        -13.381893157958984\n      ],\n      [\n        \"▁primavara\",\n        -13.3818941116333\n      ],\n      [\n        \"▁Daughter\",\n        -13.38189697265625\n      ],\n      [\n        \"▁Dixon\",\n        -13.381898880004883\n      ],\n      [\n        \"▁unravel\",\n        -13.38190746307373\n      ],\n      [\n        \"Olimp\",\n        -13.381915092468262\n      ],\n      [\n        \"▁disturbed\",\n        -13.381916999816895\n      ],\n      [\n        \"▁novelty\",\n        -13.382004737854004\n      ],\n      [\n        \"synchronous\",\n        -13.382113456726074\n      ],\n      [\n        \"relevant\",\n        -13.382166862487793\n      ],\n      [\n        \"bourgeois\",\n        -13.38251781463623\n      ],\n      [\n        \"▁Parfum\",\n        -13.38255500793457\n      ],\n      [\n        \"▁Polonia\",\n        -13.382563591003418\n      ],\n      [\n        \"▁monoton\",\n        -13.382781028747559\n      ],\n      [\n        \"tratare\",\n        -13.38302230834961\n      ],\n      [\n        \"dumping\",\n        -13.38318157196045\n      ],\n      [\n        \"▁Bibliothek\",\n        -13.383217811584473\n      ],\n      [\n        \"▁Saskatchewan\",\n        -13.383217811584473\n      ],\n      [\n        \"▁experiential\",\n        -13.383217811584473\n      ],\n      [\n        \"▁verursacht\",\n        -13.383217811584473\n      ],\n      [\n        \"intègre\",\n        -13.383218765258789\n      ],\n      [\n        \"▁Intermediate\",\n        -13.383275032043457\n      ],\n      [\n        \"Israel\",\n        -13.383476257324219\n      ],\n      [\n        \"lucreaza\",\n        -13.383495330810547\n      ],\n      [\n        \"▁quantify\",\n        -13.383862495422363\n      ],\n      [\n        \"▁zahăr\",\n        -13.383882522583008\n      ],\n      [\n        \"▁încadr\",\n        -13.383902549743652\n      ],\n      [\n        \"Personalized\",\n        -13.383946418762207\n      ],\n      [\n        \"▁Chronic\",\n        -13.384309768676758\n      ],\n      [\n        \"hôpital\",\n        -13.384549140930176\n      ],\n      [\n        \"▁diskutiert\",\n        -13.384549140930176\n      ],\n      [\n        \"electrique\",\n        -13.3848876953125\n      ],\n      [\n        \"ethos\",\n        -13.384978294372559\n      ],\n      [\n        \"Nase\",\n        -13.385059356689453\n      ],\n      [\n        \"atmosphère\",\n        -13.385214805603027\n      ],\n      [\n        \"▁ungefähr\",\n        -13.385215759277344\n      ],\n      [\n        \"évaluer\",\n        -13.385251998901367\n      ],\n      [\n        \"▁scuz\",\n        -13.385321617126465\n      ],\n      [\n        \"haltige\",\n        -13.38533878326416\n      ],\n      [\n        \"January\",\n        -13.38557243347168\n      ],\n      [\n        \"▁Sharma\",\n        -13.385603904724121\n      ],\n      [\n        \"▁seizures\",\n        -13.385881423950195\n      ],\n      [\n        \"▁zucchini\",\n        -13.385881423950195\n      ],\n      [\n        \"▁Stadi\",\n        -13.385885238647461\n      ],\n      [\n        \"▁eccentric\",\n        -13.385885238647461\n      ],\n      [\n        \"▁offensichtlich\",\n        -13.385909080505371\n      ],\n      [\n        \"▁Irvine\",\n        -13.385920524597168\n      ],\n      [\n        \"cuprinse\",\n        -13.38601303100586\n      ],\n      [\n        \"▁Arbitr\",\n        -13.386157035827637\n      ],\n      [\n        \"Buenos\",\n        -13.386183738708496\n      ],\n      [\n        \"▁Shelter\",\n        -13.386210441589355\n      ],\n      [\n        \"CEPT\",\n        -13.386454582214355\n      ],\n      [\n        \"ouvri\",\n        -13.386455535888672\n      ],\n      [\n        \"acryl\",\n        -13.386539459228516\n      ],\n      [\n        \"▁Gourmet\",\n        -13.38654899597168\n      ],\n      [\n        \"scented\",\n        -13.386595726013184\n      ],\n      [\n        \"doubling\",\n        -13.38659954071045\n      ],\n      [\n        \"▁rafina\",\n        -13.386608123779297\n      ],\n      [\n        \"▁Vereinbarung\",\n        -13.38721752166748\n      ],\n      [\n        \"▁Dashboard\",\n        -13.387218475341797\n      ],\n      [\n        \"▁Sandwich\",\n        -13.387218475341797\n      ],\n      [\n        \"▁Riviera\",\n        -13.387226104736328\n      ],\n      [\n        \"échec\",\n        -13.387237548828125\n      ],\n      [\n        \"Giro\",\n        -13.387253761291504\n      ],\n      [\n        \"▁oasis\",\n        -13.38725757598877\n      ],\n      [\n        \"▁apology\",\n        -13.3872709274292\n      ],\n      [\n        \"▁YEAR\",\n        -13.387272834777832\n      ],\n      [\n        \"▁realtor\",\n        -13.387504577636719\n      ],\n      [\n        \"acheteur\",\n        -13.38754653930664\n      ],\n      [\n        \"▁larva\",\n        -13.387613296508789\n      ],\n      [\n        \"▁invitați\",\n        -13.388097763061523\n      ],\n      [\n        \"exhibiting\",\n        -13.38830852508545\n      ],\n      [\n        \"modernen\",\n        -13.388331413269043\n      ],\n      [\n        \"▁Collaboration\",\n        -13.38855266571045\n      ],\n      [\n        \"▁dezvălui\",\n        -13.38855266571045\n      ],\n      [\n        \"▁kiosk\",\n        -13.38855266571045\n      ],\n      [\n        \"▁Bermuda\",\n        -13.388553619384766\n      ],\n      [\n        \"Copiii\",\n        -13.388564109802246\n      ],\n      [\n        \"▁goddess\",\n        -13.388581275939941\n      ],\n      [\n        \"uplifting\",\n        -13.388609886169434\n      ],\n      [\n        \"▁simultan\",\n        -13.388808250427246\n      ],\n      [\n        \"▁episod\",\n        -13.388884544372559\n      ],\n      [\n        \"▁Braşov\",\n        -13.38922119140625\n      ],\n      [\n        \"cunoscută\",\n        -13.389634132385254\n      ],\n      [\n        \"▁Cherokee\",\n        -13.389890670776367\n      ],\n      [\n        \"▁Kazakhstan\",\n        -13.389890670776367\n      ],\n      [\n        \"▁Lauderdale\",\n        -13.389890670776367\n      ],\n      [\n        \"▁închisoare\",\n        -13.389898300170898\n      ],\n      [\n        \"▁Christchurch\",\n        -13.389934539794922\n      ],\n      [\n        \"▁influenţ\",\n        -13.389982223510742\n      ],\n      [\n        \"▁Meghan\",\n        -13.390019416809082\n      ],\n      [\n        \"▁Dienstleistung\",\n        -13.390557289123535\n      ],\n      [\n        \"▁cladiri\",\n        -13.390564918518066\n      ],\n      [\n        \"▁evrei\",\n        -13.391148567199707\n      ],\n      [\n        \"▁oatmeal\",\n        -13.391230583190918\n      ],\n      [\n        \"▁chronique\",\n        -13.3912353515625\n      ],\n      [\n        \"▁associée\",\n        -13.391264915466309\n      ],\n      [\n        \"▁Goose\",\n        -13.391283988952637\n      ],\n      [\n        \"gänz\",\n        -13.391855239868164\n      ],\n      [\n        \"▁Blätter\",\n        -13.391901969909668\n      ],\n      [\n        \"▁jurnalist\",\n        -13.392212867736816\n      ],\n      [\n        \"cedat\",\n        -13.392263412475586\n      ],\n      [\n        \"nommée\",\n        -13.392315864562988\n      ],\n      [\n        \"écrivain\",\n        -13.392572402954102\n      ],\n      [\n        \"▁epoxy\",\n        -13.392577171325684\n      ],\n      [\n        \"▁verlangt\",\n        -13.392590522766113\n      ],\n      [\n        \"Störung\",\n        -13.392708778381348\n      ],\n      [\n        \"▁Doyle\",\n        -13.392729759216309\n      ],\n      [\n        \"▁Philharmoni\",\n        -13.392844200134277\n      ],\n      [\n        \"▁déclare\",\n        -13.393044471740723\n      ],\n      [\n        \"effort\",\n        -13.393045425415039\n      ],\n      [\n        \"ström\",\n        -13.393118858337402\n      ],\n      [\n        \"▁cunoaşte\",\n        -13.393244743347168\n      ],\n      [\n        \"▁gigantic\",\n        -13.3932466506958\n      ],\n      [\n        \"któ\",\n        -13.393378257751465\n      ],\n      [\n        \"▁ilustr\",\n        -13.393529891967773\n      ],\n      [\n        \"▁frec\",\n        -13.39371109008789\n      ],\n      [\n        \"▁Syracuse\",\n        -13.393916130065918\n      ],\n      [\n        \"▁Einwilligung\",\n        -13.393917083740234\n      ],\n      [\n        \"▁miraculous\",\n        -13.393917083740234\n      ],\n      [\n        \"▁ökologisch\",\n        -13.393917083740234\n      ],\n      [\n        \"▁Simmons\",\n        -13.393922805786133\n      ],\n      [\n        \"▁albastru\",\n        -13.393926620483398\n      ],\n      [\n        \"besser\",\n        -13.393962860107422\n      ],\n      [\n        \"▁interioare\",\n        -13.394006729125977\n      ],\n      [\n        \"▁Trocken\",\n        -13.394068717956543\n      ],\n      [\n        \"niveau\",\n        -13.39406967163086\n      ],\n      [\n        \"▁Torah\",\n        -13.394122123718262\n      ],\n      [\n        \"▁beobachten\",\n        -13.3945894241333\n      ],\n      [\n        \"▁behandeln\",\n        -13.394637107849121\n      ],\n      [\n        \"staffed\",\n        -13.394742965698242\n      ],\n      [\n        \"hütte\",\n        -13.394824028015137\n      ],\n      [\n        \"Central\",\n        -13.394939422607422\n      ],\n      [\n        \"▁Freiburg\",\n        -13.395198822021484\n      ],\n      [\n        \"▁Netanyahu\",\n        -13.395261764526367\n      ],\n      [\n        \"▁Lexington\",\n        -13.395302772521973\n      ],\n      [\n        \"▁insotit\",\n        -13.395492553710938\n      ],\n      [\n        \"▁depasi\",\n        -13.39560604095459\n      ],\n      [\n        \"sewage\",\n        -13.395853996276855\n      ],\n      [\n        \"erkrankung\",\n        -13.395951271057129\n      ],\n      [\n        \"▁părţi\",\n        -13.396234512329102\n      ],\n      [\n        \"▁Nixon\",\n        -13.39661693572998\n      ],\n      [\n        \"Byron\",\n        -13.396905899047852\n      ],\n      [\n        \"▁varietat\",\n        -13.39724063873291\n      ],\n      [\n        \"▁Bildschirm\",\n        -13.397299766540527\n      ],\n      [\n        \"▁accompli\",\n        -13.397424697875977\n      ],\n      [\n        \"affirmed\",\n        -13.397525787353516\n      ],\n      [\n        \"▁phyto\",\n        -13.397533416748047\n      ],\n      [\n        \"sectiune\",\n        -13.397592544555664\n      ],\n      [\n        \"abteilung\",\n        -13.397932052612305\n      ],\n      [\n        \"▁voastre\",\n        -13.397957801818848\n      ],\n      [\n        \"GitHub\",\n        -13.397958755493164\n      ],\n      [\n        \"▁Jorge\",\n        -13.39796257019043\n      ],\n      [\n        \"ACTION\",\n        -13.397972106933594\n      ],\n      [\n        \"voastra\",\n        -13.397984504699707\n      ],\n      [\n        \"▁Peanut\",\n        -13.397987365722656\n      ],\n      [\n        \"▁bilingual\",\n        -13.398011207580566\n      ],\n      [\n        \"▁nourriture\",\n        -13.39803695678711\n      ],\n      [\n        \"▁Asphalt\",\n        -13.398640632629395\n      ],\n      [\n        \"emballage\",\n        -13.399310111999512\n      ],\n      [\n        \"▁sanitation\",\n        -13.399310111999512\n      ],\n      [\n        \"▁Dessert\",\n        -13.399313926696777\n      ],\n      [\n        \"intitulé\",\n        -13.399322509765625\n      ],\n      [\n        \"▁acţiune\",\n        -13.399374008178711\n      ],\n      [\n        \"▁Übersetzung\",\n        -13.399402618408203\n      ],\n      [\n        \"destinate\",\n        -13.39941692352295\n      ],\n      [\n        \"▁Goddess\",\n        -13.399504661560059\n      ],\n      [\n        \"poziție\",\n        -13.399576187133789\n      ],\n      [\n        \"denumirea\",\n        -13.400002479553223\n      ],\n      [\n        \"cantitatea\",\n        -13.40002727508545\n      ],\n      [\n        \"▁Stereo\",\n        -13.400223731994629\n      ],\n      [\n        \"object\",\n        -13.400373458862305\n      ],\n      [\n        \"▁décè\",\n        -13.40058708190918\n      ],\n      [\n        \"▁Handeln\",\n        -13.400665283203125\n      ],\n      [\n        \"▁ambience\",\n        -13.400697708129883\n      ],\n      [\n        \"▁Lindsay\",\n        -13.4006986618042\n      ],\n      [\n        \"▁tensiune\",\n        -13.400781631469727\n      ],\n      [\n        \"▁thrift\",\n        -13.400788307189941\n      ],\n      [\n        \"▁Optimiz\",\n        -13.400843620300293\n      ],\n      [\n        \"▁beantworten\",\n        -13.401338577270508\n      ],\n      [\n        \"▁magistrat\",\n        -13.401342391967773\n      ],\n      [\n        \"évidence\",\n        -13.402016639709473\n      ],\n      [\n        \"▁Eclipse\",\n        -13.402016639709473\n      ],\n      [\n        \"▁Ribbon\",\n        -13.402016639709473\n      ],\n      [\n        \"▁condensation\",\n        -13.402016639709473\n      ],\n      [\n        \"▁innocence\",\n        -13.402018547058105\n      ],\n      [\n        \"▁mascara\",\n        -13.402023315429688\n      ],\n      [\n        \"▁seventeen\",\n        -13.402290344238281\n      ],\n      [\n        \"▁compétent\",\n        -13.402694702148438\n      ],\n      [\n        \"bewertet\",\n        -13.402717590332031\n      ],\n      [\n        \"▁Muzic\",\n        -13.40285587310791\n      ],\n      [\n        \"complexities\",\n        -13.402928352355957\n      ],\n      [\n        \"ddington\",\n        -13.403324127197266\n      ],\n      [\n        \"Entwickler\",\n        -13.403372764587402\n      ],\n      [\n        \"masonry\",\n        -13.4033784866333\n      ],\n      [\n        \"Führer\",\n        -13.403386116027832\n      ],\n      [\n        \"▁awakening\",\n        -13.403388977050781\n      ],\n      [\n        \"▁lovitur\",\n        -13.403806686401367\n      ],\n      [\n        \"gebrochen\",\n        -13.404068946838379\n      ],\n      [\n        \"indexed\",\n        -13.404478073120117\n      ],\n      [\n        \"campania\",\n        -13.404515266418457\n      ],\n      [\n        \"▁Fountain\",\n        -13.404730796813965\n      ],\n      [\n        \"▁Joomla\",\n        -13.404730796813965\n      ],\n      [\n        \"▁Superintendent\",\n        -13.404730796813965\n      ],\n      [\n        \"▁Dahl\",\n        -13.404742240905762\n      ],\n      [\n        \"▁Benefici\",\n        -13.404863357543945\n      ],\n      [\n        \"optimiser\",\n        -13.404919624328613\n      ],\n      [\n        \"bursting\",\n        -13.405380249023438\n      ],\n      [\n        \"diplom\",\n        -13.405427932739258\n      ],\n      [\n        \"microsoft\",\n        -13.405621528625488\n      ],\n      [\n        \"▁correlate\",\n        -13.405776977539062\n      ],\n      [\n        \"▁arhitectura\",\n        -13.405848503112793\n      ],\n      [\n        \"▁lunette\",\n        -13.40611743927002\n      ],\n      [\n        \"Statistical\",\n        -13.406147003173828\n      ],\n      [\n        \"▁iarnă\",\n        -13.406201362609863\n      ],\n      [\n        \"▁importanț\",\n        -13.406932830810547\n      ],\n      [\n        \"sistence\",\n        -13.407366752624512\n      ],\n      [\n        \"associated\",\n        -13.407402992248535\n      ],\n      [\n        \"Occident\",\n        -13.407452583312988\n      ],\n      [\n        \"▁Heidelberg\",\n        -13.407452583312988\n      ],\n      [\n        \"▁acquaintance\",\n        -13.407452583312988\n      ],\n      [\n        \"Introducing\",\n        -13.407453536987305\n      ],\n      [\n        \"▁ripple\",\n        -13.407480239868164\n      ],\n      [\n        \"▁Childhood\",\n        -13.407563209533691\n      ],\n      [\n        \"drywall\",\n        -13.407577514648438\n      ],\n      [\n        \"Vreau\",\n        -13.40771770477295\n      ],\n      [\n        \"▁compétence\",\n        -13.407967567443848\n      ],\n      [\n        \"▁asteapta\",\n        -13.408135414123535\n      ],\n      [\n        \"▁duhovnic\",\n        -13.408135414123535\n      ],\n      [\n        \"▁învăţământ\",\n        -13.408141136169434\n      ],\n      [\n        \"encompassing\",\n        -13.40829849243164\n      ],\n      [\n        \"1997)\",\n        -13.408370018005371\n      ],\n      [\n        \"▁atractiv\",\n        -13.408515930175781\n      ],\n      [\n        \"Majoritatea\",\n        -13.408775329589844\n      ],\n      [\n        \"▁bungalow\",\n        -13.40881633758545\n      ],\n      [\n        \"▁Introduce\",\n        -13.408817291259766\n      ],\n      [\n        \"▁culprit\",\n        -13.408817291259766\n      ],\n      [\n        \"▁malheureusement\",\n        -13.408817291259766\n      ],\n      [\n        \"▁voudrai\",\n        -13.408817291259766\n      ],\n      [\n        \"Europäische\",\n        -13.408825874328613\n      ],\n      [\n        \"wunsch\",\n        -13.408880233764648\n      ],\n      [\n        \"▁înțeles\",\n        -13.408892631530762\n      ],\n      [\n        \"▁infestation\",\n        -13.40889835357666\n      ],\n      [\n        \"Bringing\",\n        -13.409186363220215\n      ],\n      [\n        \"▁Mehrheit\",\n        -13.409229278564453\n      ],\n      [\n        \"ски\",\n        -13.409456253051758\n      ],\n      [\n        \"▁procéder\",\n        -13.409499168395996\n      ],\n      [\n        \"grupului\",\n        -13.409504890441895\n      ],\n      [\n        \"▁dispoziti\",\n        -13.40964412689209\n      ],\n      [\n        \"▁snug\",\n        -13.409950256347656\n      ],\n      [\n        \"▁Afrika\",\n        -13.41018295288086\n      ],\n      [\n        \"▁Madagascar\",\n        -13.41018295288086\n      ],\n      [\n        \"Părinte\",\n        -13.410195350646973\n      ],\n      [\n        \"▁Clayton\",\n        -13.410223960876465\n      ],\n      [\n        \"▁antagonist\",\n        -13.410239219665527\n      ],\n      [\n        \"termeni\",\n        -13.410250663757324\n      ],\n      [\n        \"▁Literary\",\n        -13.410391807556152\n      ],\n      [\n        \"▁Babylon\",\n        -13.410452842712402\n      ],\n      [\n        \"▁überprüfen\",\n        -13.410865783691406\n      ],\n      [\n        \"▁duminica\",\n        -13.410879135131836\n      ],\n      [\n        \"farbig\",\n        -13.410970687866211\n      ],\n      [\n        \"nennt\",\n        -13.411064147949219\n      ],\n      [\n        \"annual\",\n        -13.411487579345703\n      ],\n      [\n        \"▁Qualcomm\",\n        -13.41154956817627\n      ],\n      [\n        \"▁Slovakia\",\n        -13.41154956817627\n      ],\n      [\n        \"▁plictis\",\n        -13.411552429199219\n      ],\n      [\n        \"▁prairie\",\n        -13.411554336547852\n      ],\n      [\n        \"▁Schatten\",\n        -13.411622047424316\n      ],\n      [\n        \"▁compléter\",\n        -13.41223430633545\n      ],\n      [\n        \"inauguration\",\n        -13.412376403808594\n      ],\n      [\n        \"▁apărare\",\n        -13.412407875061035\n      ],\n      [\n        \"▁întăr\",\n        -13.412412643432617\n      ],\n      [\n        \"▁pronunciation\",\n        -13.412919044494629\n      ],\n      [\n        \"▁bewährt\",\n        -13.412919998168945\n      ],\n      [\n        \"▁Viertel\",\n        -13.413084983825684\n      ],\n      [\n        \"▁Heidi\",\n        -13.413252830505371\n      ],\n      [\n        \"▁Gummi\",\n        -13.413507461547852\n      ],\n      [\n        \"▁veggie\",\n        -13.413552284240723\n      ],\n      [\n        \"▁monsieur\",\n        -13.413604736328125\n      ],\n      [\n        \"éveil\",\n        -13.413630485534668\n      ],\n      [\n        \"shipments\",\n        -13.413928985595703\n      ],\n      [\n        \"▁Medikamente\",\n        -13.414290428161621\n      ],\n      [\n        \"▁Johannesburg\",\n        -13.414314270019531\n      ],\n      [\n        \"▁ermittelt\",\n        -13.414321899414062\n      ],\n      [\n        \"▁bataille\",\n        -13.414440155029297\n      ],\n      [\n        \"extrem\",\n        -13.414609909057617\n      ],\n      [\n        \"▁1:2\",\n        -13.414671897888184\n      ],\n      [\n        \"Array\",\n        -13.414725303649902\n      ],\n      [\n        \"▁portail\",\n        -13.414857864379883\n      ],\n      [\n        \"▁găzdui\",\n        -13.414977073669434\n      ],\n      [\n        \"▁Calcium\",\n        -13.41497802734375\n      ],\n      [\n        \"▁Correction\",\n        -13.415104866027832\n      ],\n      [\n        \"bureaux\",\n        -13.41528034210205\n      ],\n      [\n        \"bestselling\",\n        -13.415338516235352\n      ],\n      [\n        \"Übungen\",\n        -13.415420532226562\n      ],\n      [\n        \"paramètres\",\n        -13.415633201599121\n      ],\n      [\n        \"▁Provincial\",\n        -13.415663719177246\n      ],\n      [\n        \"▁outrageous\",\n        -13.415680885314941\n      ],\n      [\n        \"▁Giveaway\",\n        -13.415775299072266\n      ],\n      [\n        \"▁LGBTQ\",\n        -13.41589641571045\n      ],\n      [\n        \"geklärt\",\n        -13.416854858398438\n      ],\n      [\n        \"▁Karlsruhe\",\n        -13.417038917541504\n      ],\n      [\n        \"▁esențial\",\n        -13.417038917541504\n      ],\n      [\n        \"avancée\",\n        -13.41703987121582\n      ],\n      [\n        \"hesitant\",\n        -13.417040824890137\n      ],\n      [\n        \"enlarged\",\n        -13.417069435119629\n      ],\n      [\n        \"▁inherit\",\n        -13.417121887207031\n      ],\n      [\n        \"Food\",\n        -13.4171724319458\n      ],\n      [\n        \"bucuria\",\n        -13.417181015014648\n      ],\n      [\n        \"▁BTW\",\n        -13.417400360107422\n      ],\n      [\n        \"associe\",\n        -13.417579650878906\n      ],\n      [\n        \"▁Möchte\",\n        -13.417742729187012\n      ],\n      [\n        \"demokrat\",\n        -13.417789459228516\n      ],\n      [\n        \"Turcia\",\n        -13.417964935302734\n      ],\n      [\n        \"forged\",\n        -13.418370246887207\n      ],\n      [\n        \"▁Zhao\",\n        -13.418442726135254\n      ],\n      [\n        \"▁cherries\",\n        -13.418556213378906\n      ],\n      [\n        \"▁evangelical\",\n        -13.418631553649902\n      ],\n      [\n        \"▁jüng\",\n        -13.418792724609375\n      ],\n      [\n        \"spans\",\n        -13.41880989074707\n      ],\n      [\n        \"▁străluc\",\n        -13.41888427734375\n      ],\n      [\n        \"▁geschie\",\n        -13.41893196105957\n      ],\n      [\n        \"▁Tattoo\",\n        -13.419112205505371\n      ],\n      [\n        \"sanitary\",\n        -13.419114112854004\n      ],\n      [\n        \"▁biopsy\",\n        -13.419353485107422\n      ],\n      [\n        \"▁imprumut\",\n        -13.419795036315918\n      ],\n      [\n        \"▁unreasonable\",\n        -13.419795036315918\n      ],\n      [\n        \"Funktion\",\n        -13.419800758361816\n      ],\n      [\n        \"▁prohibition\",\n        -13.419904708862305\n      ],\n      [\n        \"▁Prezent\",\n        -13.419939041137695\n      ],\n      [\n        \"boosted\",\n        -13.419967651367188\n      ],\n      [\n        \"▁chalet\",\n        -13.420382499694824\n      ],\n      [\n        \"▁tanar\",\n        -13.420450210571289\n      ],\n      [\n        \"Faktoren\",\n        -13.420489311218262\n      ],\n      [\n        \"▁Mozilla\",\n        -13.420550346374512\n      ],\n      [\n        \"▁Lambert\",\n        -13.420760154724121\n      ],\n      [\n        \"▁Cruci\",\n        -13.420927047729492\n      ],\n      [\n        \"▁Flugzeug\",\n        -13.421198844909668\n      ],\n      [\n        \"reassure\",\n        -13.421205520629883\n      ],\n      [\n        \"envisioned\",\n        -13.421542167663574\n      ],\n      [\n        \"Traditionally\",\n        -13.421773910522461\n      ],\n      [\n        \"▁parametri\",\n        -13.42185115814209\n      ],\n      [\n        \"▁unicorn\",\n        -13.421891212463379\n      ],\n      [\n        \"▁adéquat\",\n        -13.421894073486328\n      ],\n      [\n        \"▁Colonial\",\n        -13.421915054321289\n      ],\n      [\n        \"▁Kwa\",\n        -13.422097206115723\n      ],\n      [\n        \"▁SERV\",\n        -13.422333717346191\n      ],\n      [\n        \"tourism\",\n        -13.422627449035645\n      ],\n      [\n        \"▁Kiev\",\n        -13.422974586486816\n      ],\n      [\n        \"heightened\",\n        -13.42309284210205\n      ],\n      [\n        \"circulating\",\n        -13.423099517822266\n      ],\n      [\n        \"▁Kreditkarte\",\n        -13.42310619354248\n      ],\n      [\n        \"gedruckt\",\n        -13.423110008239746\n      ],\n      [\n        \"▁Depend\",\n        -13.423120498657227\n      ],\n      [\n        \"Style\",\n        -13.423196792602539\n      ],\n      [\n        \"▁Rettungs\",\n        -13.42325496673584\n      ],\n      [\n        \"wrongful\",\n        -13.423418998718262\n      ],\n      [\n        \"▁devour\",\n        -13.423453330993652\n      ],\n      [\n        \"▁manevr\",\n        -13.423582077026367\n      ],\n      [\n        \"carora\",\n        -13.423628807067871\n      ],\n      [\n        \"erfolgreichen\",\n        -13.423723220825195\n      ],\n      [\n        \"überwiegend\",\n        -13.423942565917969\n      ],\n      [\n        \"▁Sauvignon\",\n        -13.423942565917969\n      ],\n      [\n        \"händler\",\n        -13.423944473266602\n      ],\n      [\n        \"▁annotation\",\n        -13.424009323120117\n      ],\n      [\n        \"▁expans\",\n        -13.424020767211914\n      ],\n      [\n        \"▁recital\",\n        -13.424080848693848\n      ],\n      [\n        \"inhabited\",\n        -13.424367904663086\n      ],\n      [\n        \"OnePlus\",\n        -13.424549102783203\n      ],\n      [\n        \"Gästen\",\n        -13.424588203430176\n      ],\n      [\n        \"beliebig\",\n        -13.424613952636719\n      ],\n      [\n        \"▁Anonymous\",\n        -13.424635887145996\n      ],\n      [\n        \"▁Ansprechpartner\",\n        -13.424635887145996\n      ],\n      [\n        \"▁tamb\",\n        -13.42464542388916\n      ],\n      [\n        \"estimating\",\n        -13.424670219421387\n      ],\n      [\n        \"frequent\",\n        -13.424769401550293\n      ],\n      [\n        \"▁disciplin\",\n        -13.425241470336914\n      ],\n      [\n        \"▁plombier\",\n        -13.425329208374023\n      ],\n      [\n        \"▁teoretic\",\n        -13.42533016204834\n      ],\n      [\n        \"greift\",\n        -13.425339698791504\n      ],\n      [\n        \"▁Einschränkung\",\n        -13.42537784576416\n      ],\n      [\n        \"obscur\",\n        -13.426115989685059\n      ],\n      [\n        \"architecte\",\n        -13.426233291625977\n      ],\n      [\n        \"▁détour\",\n        -13.42647647857666\n      ],\n      [\n        \"▁spaghetti\",\n        -13.426717758178711\n      ],\n      [\n        \"croft\",\n        -13.42693042755127\n      ],\n      [\n        \"▁Grammar\",\n        -13.426953315734863\n      ],\n      [\n        \"▁investitii\",\n        -13.427062034606934\n      ],\n      [\n        \"▁glorif\",\n        -13.427067756652832\n      ],\n      [\n        \"architekt\",\n        -13.427412033081055\n      ],\n      [\n        \"Oricum\",\n        -13.427451133728027\n      ],\n      [\n        \"▁bruise\",\n        -13.427692413330078\n      ],\n      [\n        \"▁McCarthy\",\n        -13.428107261657715\n      ],\n      [\n        \"▁Uruguay\",\n        -13.428107261657715\n      ],\n      [\n        \"Produsele\",\n        -13.428109169006348\n      ],\n      [\n        \"▁Comparison\",\n        -13.42811107635498\n      ],\n      [\n        \"▁fondamental\",\n        -13.42811107635498\n      ],\n      [\n        \"▁stradă\",\n        -13.428115844726562\n      ],\n      [\n        \"▁Countries\",\n        -13.428131103515625\n      ],\n      [\n        \"▁guéri\",\n        -13.42825698852539\n      ],\n      [\n        \"▁bâti\",\n        -13.428339004516602\n      ],\n      [\n        \"▁blunt\",\n        -13.428515434265137\n      ],\n      [\n        \"▁Sistem\",\n        -13.428645133972168\n      ],\n      [\n        \"▁Betroffenen\",\n        -13.428803443908691\n      ],\n      [\n        \"efectuare\",\n        -13.428823471069336\n      ],\n      [\n        \"▁scharf\",\n        -13.428899765014648\n      ],\n      [\n        \"naps\",\n        -13.429057121276855\n      ],\n      [\n        \"▁plaid\",\n        -13.429163932800293\n      ],\n      [\n        \"▁investiții\",\n        -13.429367065429688\n      ],\n      [\n        \"evenimentele\",\n        -13.42948055267334\n      ],\n      [\n        \"▁Phuket\",\n        -13.429499626159668\n      ],\n      [\n        \"▁testosterone\",\n        -13.429499626159668\n      ],\n      [\n        \"▁scaffold\",\n        -13.429500579833984\n      ],\n      [\n        \"▁rasch\",\n        -13.430022239685059\n      ],\n      [\n        \"▁adânc\",\n        -13.430076599121094\n      ],\n      [\n        \"atteinte\",\n        -13.430228233337402\n      ],\n      [\n        \"▁educație\",\n        -13.430320739746094\n      ],\n      [\n        \"▁leopard\",\n        -13.430893898010254\n      ],\n      [\n        \"▁superioare\",\n        -13.430893898010254\n      ],\n      [\n        \"▁téléchargement\",\n        -13.430893898010254\n      ],\n      [\n        \"▁Weapon\",\n        -13.431103706359863\n      ],\n      [\n        \"favourable\",\n        -13.431336402893066\n      ],\n      [\n        \"nourishing\",\n        -13.43143367767334\n      ],\n      [\n        \"▁verfolgt\",\n        -13.43160629272461\n      ],\n      [\n        \"▁tablou\",\n        -13.431633949279785\n      ],\n      [\n        \"Algérie\",\n        -13.431657791137695\n      ],\n      [\n        \"Islam\",\n        -13.431700706481934\n      ],\n      [\n        \"faser\",\n        -13.431825637817383\n      ],\n      [\n        \"rhythm\",\n        -13.432214736938477\n      ],\n      [\n        \"▁Anthropolog\",\n        -13.432291030883789\n      ],\n      [\n        \"▁clôtur\",\n        -13.432291030883789\n      ],\n      [\n        \"spüren\",\n        -13.432291984558105\n      ],\n      [\n        \"▁Architectural\",\n        -13.432294845581055\n      ],\n      [\n        \"▁imaginary\",\n        -13.432368278503418\n      ],\n      [\n        \"cône\",\n        -13.432456016540527\n      ],\n      [\n        \"▁snuggl\",\n        -13.432744026184082\n      ],\n      [\n        \"disadvantaged\",\n        -13.432745933532715\n      ],\n      [\n        \"radically\",\n        -13.4329195022583\n      ],\n      [\n        \"Première\",\n        -13.433011054992676\n      ],\n      [\n        \"▁combinaison\",\n        -13.433027267456055\n      ],\n      [\n        \"▁Algeria\",\n        -13.43303108215332\n      ],\n      [\n        \"▁Wände\",\n        -13.43317985534668\n      ],\n      [\n        \"aesthetically\",\n        -13.43336009979248\n      ],\n      [\n        \"▁McKe\",\n        -13.433368682861328\n      ],\n      [\n        \"interroge\",\n        -13.433473587036133\n      ],\n      [\n        \"exclusive\",\n        -13.433475494384766\n      ],\n      [\n        \"▁Thomson\",\n        -13.433688163757324\n      ],\n      [\n        \"▁Gujarat\",\n        -13.43368911743164\n      ],\n      [\n        \"irgendwo\",\n        -13.433690071105957\n      ],\n      [\n        \"Severin\",\n        -13.433767318725586\n      ],\n      [\n        \"▁imitation\",\n        -13.433926582336426\n      ],\n      [\n        \"constructed\",\n        -13.434194564819336\n      ],\n      [\n        \"▁Montpellier\",\n        -13.434388160705566\n      ],\n      [\n        \"cedent\",\n        -13.434539794921875\n      ],\n      [\n        \"accelerating\",\n        -13.434563636779785\n      ],\n      [\n        \"dommages\",\n        -13.4346284866333\n      ],\n      [\n        \"lideri\",\n        -13.434730529785156\n      ],\n      [\n        \"▁Millennium\",\n        -13.435089111328125\n      ],\n      [\n        \"▁imprisonment\",\n        -13.435089111328125\n      ],\n      [\n        \"machining\",\n        -13.435111999511719\n      ],\n      [\n        \"▁anxiet\",\n        -13.43521499633789\n      ],\n      [\n        \"Contains\",\n        -13.435298919677734\n      ],\n      [\n        \"pleade\",\n        -13.435563087463379\n      ],\n      [\n        \"DOWN\",\n        -13.43564510345459\n      ],\n      [\n        \"geschehen\",\n        -13.435797691345215\n      ],\n      [\n        \"restaurant\",\n        -13.435811996459961\n      ],\n      [\n        \"Totusi\",\n        -13.435839653015137\n      ],\n      [\n        \"amintesc\",\n        -13.436158180236816\n      ],\n      [\n        \"▁Crisp\",\n        -13.436233520507812\n      ],\n      [\n        \"aduse\",\n        -13.436278343200684\n      ],\n      [\n        \"▁imposé\",\n        -13.436351776123047\n      ],\n      [\n        \"Jubiläum\",\n        -13.436490058898926\n      ],\n      [\n        \"▁Plaintiff\",\n        -13.436491012573242\n      ],\n      [\n        \"▁authoritative\",\n        -13.436491966247559\n      ],\n      [\n        \"▁rendition\",\n        -13.436633110046387\n      ],\n      [\n        \"Royce\",\n        -13.436707496643066\n      ],\n      [\n        \"1996)\",\n        -13.436724662780762\n      ],\n      [\n        \"Asociația\",\n        -13.437192916870117\n      ],\n      [\n        \"▁Gluten\",\n        -13.437264442443848\n      ],\n      [\n        \"feature\",\n        -13.43741226196289\n      ],\n      [\n        \"Behavioral\",\n        -13.437454223632812\n      ],\n      [\n        \"tearing\",\n        -13.437763214111328\n      ],\n      [\n        \"▁Entfernung\",\n        -13.437894821166992\n      ],\n      [\n        \"▁Responsibility\",\n        -13.437894821166992\n      ],\n      [\n        \"▁negligent\",\n        -13.437894821166992\n      ],\n      [\n        \"▁syllabus\",\n        -13.437894821166992\n      ],\n      [\n        \"▁Cycling\",\n        -13.437895774841309\n      ],\n      [\n        \"generell\",\n        -13.438114166259766\n      ],\n      [\n        \"customised\",\n        -13.438392639160156\n      ],\n      [\n        \"Management\",\n        -13.43850326538086\n      ],\n      [\n        \"▁timid\",\n        -13.438518524169922\n      ],\n      [\n        \"Tagged\",\n        -13.438730239868164\n      ],\n      [\n        \"▁susţinut\",\n        -13.438809394836426\n      ],\n      [\n        \"anchored\",\n        -13.43892765045166\n      ],\n      [\n        \"alternating\",\n        -13.439055442810059\n      ],\n      [\n        \"▁obligatoriu\",\n        -13.439300537109375\n      ],\n      [\n        \"▁reinstate\",\n        -13.439456939697266\n      ],\n      [\n        \"Können\",\n        -13.43946361541748\n      ],\n      [\n        \"▁Paol\",\n        -13.439596176147461\n      ],\n      [\n        \"öhr\",\n        -13.439603805541992\n      ],\n      [\n        \"▁Asociati\",\n        -13.439876556396484\n      ],\n      [\n        \"▁commenc\",\n        -13.440285682678223\n      ],\n      [\n        \"reinigt\",\n        -13.440293312072754\n      ],\n      [\n        \"commended\",\n        -13.440350532531738\n      ],\n      [\n        \"▁Proceed\",\n        -13.440675735473633\n      ],\n      [\n        \"beutel\",\n        -13.440702438354492\n      ],\n      [\n        \"▁Experimental\",\n        -13.44070816040039\n      ],\n      [\n        \"▁constellation\",\n        -13.44070816040039\n      ],\n      [\n        \"▁gepflegt\",\n        -13.44070816040039\n      ],\n      [\n        \"▁Ergänzung\",\n        -13.440709114074707\n      ],\n      [\n        \"Judith\",\n        -13.440713882446289\n      ],\n      [\n        \"▁Quartet\",\n        -13.440720558166504\n      ],\n      [\n        \"complemented\",\n        -13.440742492675781\n      ],\n      [\n        \"ausbildung\",\n        -13.440750122070312\n      ],\n      [\n        \"▁uncertainties\",\n        -13.44077205657959\n      ],\n      [\n        \"▁humiliat\",\n        -13.440914154052734\n      ],\n      [\n        \"luta\",\n        -13.441121101379395\n      ],\n      [\n        \"▁complexion\",\n        -13.441482543945312\n      ],\n      [\n        \"Serviciul\",\n        -13.441612243652344\n      ],\n      [\n        \"▁Toast\",\n        -13.441722869873047\n      ],\n      [\n        \"ummies\",\n        -13.442425727844238\n      ],\n      [\n        \"▁irit\",\n        -13.442463874816895\n      ],\n      [\n        \"producing\",\n        -13.442585945129395\n      ],\n      [\n        \"amenajare\",\n        -13.442825317382812\n      ],\n      [\n        \"▁béton\",\n        -13.442828178405762\n      ],\n      [\n        \"▁serpent\",\n        -13.442851066589355\n      ],\n      [\n        \"▁vizită\",\n        -13.442996978759766\n      ],\n      [\n        \"▁Beamte\",\n        -13.443017959594727\n      ],\n      [\n        \"▁Füße\",\n        -13.443166732788086\n      ],\n      [\n        \"▁Norwich\",\n        -13.443531036376953\n      ],\n      [\n        \"▁acronym\",\n        -13.443531036376953\n      ],\n      [\n        \"▁eradicate\",\n        -13.443531036376953\n      ],\n      [\n        \"▁solidarité\",\n        -13.44353199005127\n      ],\n      [\n        \"▁eggplant\",\n        -13.443582534790039\n      ],\n      [\n        \"▁sailors\",\n        -13.443619728088379\n      ],\n      [\n        \"waschen\",\n        -13.444538116455078\n      ],\n      [\n        \"Editura\",\n        -13.444757461547852\n      ],\n      [\n        \"▁erwerben\",\n        -13.444944381713867\n      ],\n      [\n        \"▁unconventional\",\n        -13.444944381713867\n      ],\n      [\n        \"▁boulder\",\n        -13.444948196411133\n      ],\n      [\n        \"Diplom\",\n        -13.445013046264648\n      ],\n      [\n        \"influx\",\n        -13.446162223815918\n      ],\n      [\n        \"▁Twelve\",\n        -13.446361541748047\n      ],\n      [\n        \"▁Sexual\",\n        -13.44636344909668\n      ],\n      [\n        \"numite\",\n        -13.446369171142578\n      ],\n      [\n        \"▁kontaktieren\",\n        -13.446370124816895\n      ],\n      [\n        \"▁strâns\",\n        -13.44637680053711\n      ],\n      [\n        \"▁précisément\",\n        -13.446382522583008\n      ],\n      [\n        \"empfindlich\",\n        -13.446405410766602\n      ],\n      [\n        \"▁divulg\",\n        -13.446490287780762\n      ],\n      [\n        \"▁delicat\",\n        -13.446539878845215\n      ],\n      [\n        \"compete\",\n        -13.446542739868164\n      ],\n      [\n        \"▁implique\",\n        -13.446616172790527\n      ],\n      [\n        \"implantation\",\n        -13.44672966003418\n      ],\n      [\n        \"frères\",\n        -13.447328567504883\n      ],\n      [\n        \"shedding\",\n        -13.44758415222168\n      ],\n      [\n        \"découvrez\",\n        -13.447657585144043\n      ],\n      [\n        \"rith\",\n        -13.447735786437988\n      ],\n      [\n        \"▁réglementation\",\n        -13.447778701782227\n      ],\n      [\n        \"▁transistor\",\n        -13.447785377502441\n      ],\n      [\n        \"inflated\",\n        -13.447792053222656\n      ],\n      [\n        \"▁Bluff\",\n        -13.447887420654297\n      ],\n      [\n        \"▁Aquarium\",\n        -13.448526382446289\n      ],\n      [\n        \"▁mananc\",\n        -13.448638916015625\n      ],\n      [\n        \"▁disinfect\",\n        -13.448700904846191\n      ],\n      [\n        \"tuft\",\n        -13.448740005493164\n      ],\n      [\n        \"Public\",\n        -13.449081420898438\n      ],\n      [\n        \"conceivabl\",\n        -13.449197769165039\n      ],\n      [\n        \"▁Cadillac\",\n        -13.449197769165039\n      ],\n      [\n        \"Assassin\",\n        -13.449199676513672\n      ],\n      [\n        \"issuance\",\n        -13.449252128601074\n      ],\n      [\n        \"▁Achtung\",\n        -13.449287414550781\n      ],\n      [\n        \"▁grundlegend\",\n        -13.449909210205078\n      ],\n      [\n        \"▁Băsescu\",\n        -13.449910163879395\n      ],\n      [\n        \"schaden\",\n        -13.45014476776123\n      ],\n      [\n        \"coached\",\n        -13.450409889221191\n      ],\n      [\n        \"▁betreffend\",\n        -13.45046329498291\n      ],\n      [\n        \"ergebnis\",\n        -13.450541496276855\n      ],\n      [\n        \"▁Lieutenant\",\n        -13.4506196975708\n      ],\n      [\n        \"WORLD\",\n        -13.450620651245117\n      ],\n      [\n        \"▁Moroccan\",\n        -13.450620651245117\n      ],\n      [\n        \"▁Butterfly\",\n        -13.450621604919434\n      ],\n      [\n        \"would\",\n        -13.450737953186035\n      ],\n      [\n        \"▁Metropol\",\n        -13.451025009155273\n      ],\n      [\n        \"lexic\",\n        -13.451192855834961\n      ],\n      [\n        \"comunitatea\",\n        -13.45124340057373\n      ],\n      [\n        \"vapeur\",\n        -13.451456069946289\n      ],\n      [\n        \"4.000\",\n        -13.451559066772461\n      ],\n      [\n        \"Pentru\",\n        -13.451581954956055\n      ],\n      [\n        \"üblichen\",\n        -13.451613426208496\n      ],\n      [\n        \"▁Général\",\n        -13.451770782470703\n      ],\n      [\n        \"▁Versailles\",\n        -13.452046394348145\n      ],\n      [\n        \"▁engraving\",\n        -13.452046394348145\n      ],\n      [\n        \"▁pédagogique\",\n        -13.452192306518555\n      ],\n      [\n        \"▁Policies\",\n        -13.452759742736816\n      ],\n      [\n        \"descending\",\n        -13.453235626220703\n      ],\n      [\n        \"stärkt\",\n        -13.453349113464355\n      ],\n      [\n        \"▁démocratie\",\n        -13.453470230102539\n      ],\n      [\n        \"▁granddaughter\",\n        -13.453470230102539\n      ],\n      [\n        \"▁buffalo\",\n        -13.453474998474121\n      ],\n      [\n        \"Datorita\",\n        -13.45347785949707\n      ],\n      [\n        \"hydroxy\",\n        -13.453537940979004\n      ],\n      [\n        \"▁ganduri\",\n        -13.453566551208496\n      ],\n      [\n        \"▁hijack\",\n        -13.453624725341797\n      ],\n      [\n        \"zahn\",\n        -13.453699111938477\n      ],\n      [\n        \"poziția\",\n        -13.45406436920166\n      ],\n      [\n        \"▁Zähne\",\n        -13.454184532165527\n      ],\n      [\n        \"▁grossesse\",\n        -13.454296112060547\n      ],\n      [\n        \"embassy\",\n        -13.4548978805542\n      ],\n      [\n        \"▁cérémonie\",\n        -13.4548978805542\n      ],\n      [\n        \"Rhône\",\n        -13.454898834228516\n      ],\n      [\n        \"▁Cabernet\",\n        -13.454898834228516\n      ],\n      [\n        \"▁Namibia\",\n        -13.454902648925781\n      ],\n      [\n        \"▁pedestal\",\n        -13.454902648925781\n      ],\n      [\n        \"▁Fighting\",\n        -13.45490550994873\n      ],\n      [\n        \"▁Threat\",\n        -13.454962730407715\n      ],\n      [\n        \"▁ideological\",\n        -13.455047607421875\n      ],\n      [\n        \"▁restitu\",\n        -13.455183029174805\n      ],\n      [\n        \"gelangt\",\n        -13.455510139465332\n      ],\n      [\n        \"Mitgliedern\",\n        -13.455537796020508\n      ],\n      [\n        \"acquérir\",\n        -13.455613136291504\n      ],\n      [\n        \"▁inferioar\",\n        -13.45561695098877\n      ],\n      [\n        \"Thierry\",\n        -13.455619812011719\n      ],\n      [\n        \"▁Entspannung\",\n        -13.455638885498047\n      ],\n      [\n        \"frequency\",\n        -13.45566177368164\n      ],\n      [\n        \"▁Fluid\",\n        -13.455686569213867\n      ],\n      [\n        \"▁betreut\",\n        -13.455901145935059\n      ],\n      [\n        \"Biological\",\n        -13.455965995788574\n      ],\n      [\n        \"▁Constanţa\",\n        -13.456328392028809\n      ],\n      [\n        \"▁beschäftigen\",\n        -13.456328392028809\n      ],\n      [\n        \"▁undesirable\",\n        -13.456328392028809\n      ],\n      [\n        \"▁protégé\",\n        -13.456365585327148\n      ],\n      [\n        \"▁nautical\",\n        -13.456474304199219\n      ],\n      [\n        \"▁sniff\",\n        -13.456507682800293\n      ],\n      [\n        \"Decizi\",\n        -13.456510543823242\n      ],\n      [\n        \"▁căldur\",\n        -13.45706558227539\n      ],\n      [\n        \"▁ideologi\",\n        -13.457335472106934\n      ],\n      [\n        \"Fraktion\",\n        -13.457545280456543\n      ],\n      [\n        \"collegiate\",\n        -13.45776081085205\n      ],\n      [\n        \"▁sănătos\",\n        -13.45776081085205\n      ],\n      [\n        \"▁Observatory\",\n        -13.45776653289795\n      ],\n      [\n        \"▁saturation\",\n        -13.457769393920898\n      ],\n      [\n        \"organizate\",\n        -13.457771301269531\n      ],\n      [\n        \"mergem\",\n        -13.458321571350098\n      ],\n      [\n        \"Publish\",\n        -13.458451271057129\n      ],\n      [\n        \"▁rattle\",\n        -13.458460807800293\n      ],\n      [\n        \"▁întâlniri\",\n        -13.458663940429688\n      ],\n      [\n        \"emporte\",\n        -13.458741188049316\n      ],\n      [\n        \"▁înscris\",\n        -13.459046363830566\n      ],\n      [\n        \"▁Patterson\",\n        -13.459195137023926\n      ],\n      [\n        \"▁ehrenamtlich\",\n        -13.459195137023926\n      ],\n      [\n        \"linux\",\n        -13.459213256835938\n      ],\n      [\n        \"conduire\",\n        -13.45921802520752\n      ],\n      [\n        \"▁absolven\",\n        -13.459223747253418\n      ],\n      [\n        \"▁einzigartig\",\n        -13.459598541259766\n      ],\n      [\n        \"▁_____\",\n        -13.459803581237793\n      ],\n      [\n        \"▁Beschäftigung\",\n        -13.459912300109863\n      ],\n      [\n        \"▁erfasst\",\n        -13.459927558898926\n      ],\n      [\n        \"▁Datum\",\n        -13.459992408752441\n      ],\n      [\n        \"raportul\",\n        -13.460284233093262\n      ],\n      [\n        \"ennemi\",\n        -13.460460662841797\n      ],\n      [\n        \"default\",\n        -13.460643768310547\n      ],\n      [\n        \"icillin\",\n        -13.46066951751709\n      ],\n      [\n        \"▁diamant\",\n        -13.460671424865723\n      ],\n      [\n        \"amerika\",\n        -13.460684776306152\n      ],\n      [\n        \"▁pescuit\",\n        -13.46070384979248\n      ],\n      [\n        \"▁grappl\",\n        -13.460797309875488\n      ],\n      [\n        \"▁Homeland\",\n        -13.46082592010498\n      ],\n      [\n        \"▁tromb\",\n        -13.46112060546875\n      ],\n      [\n        \"▁reduzieren\",\n        -13.461349487304688\n      ],\n      [\n        \"▁Statut\",\n        -13.461593627929688\n      ],\n      [\n        \"booming\",\n        -13.461670875549316\n      ],\n      [\n        \"fenced\",\n        -13.461723327636719\n      ],\n      [\n        \"measure\",\n        -13.461888313293457\n      ],\n      [\n        \"témoin\",\n        -13.462069511413574\n      ],\n      [\n        \"▁Inventory\",\n        -13.462069511413574\n      ],\n      [\n        \"▁circonstance\",\n        -13.462069511413574\n      ],\n      [\n        \"▁téléphonique\",\n        -13.462069511413574\n      ],\n      [\n        \"▁împiedic\",\n        -13.46207046508789\n      ],\n      [\n        \"▁Settlement\",\n        -13.462072372436523\n      ],\n      [\n        \"kannte\",\n        -13.462076187133789\n      ],\n      [\n        \"▁substantive\",\n        -13.462385177612305\n      ],\n      [\n        \"miterea\",\n        -13.462642669677734\n      ],\n      [\n        \"▁noştri\",\n        -13.462790489196777\n      ],\n      [\n        \"▁plăcere\",\n        -13.462791442871094\n      ],\n      [\n        \"▁eticheta\",\n        -13.462823867797852\n      ],\n      [\n        \"quickest\",\n        -13.462993621826172\n      ],\n      [\n        \"▁pasageri\",\n        -13.463089942932129\n      ],\n      [\n        \"▁Publi\",\n        -13.463495254516602\n      ],\n      [\n        \"▁Suzanne\",\n        -13.463509559631348\n      ],\n      [\n        \"▁bucătări\",\n        -13.463509559631348\n      ],\n      [\n        \"Regulatory\",\n        -13.463510513305664\n      ],\n      [\n        \"▁Mandarin\",\n        -13.463647842407227\n      ],\n      [\n        \"surgical\",\n        -13.463947296142578\n      ],\n      [\n        \"▁Smash\",\n        -13.463950157165527\n      ],\n      [\n        \"▁mândr\",\n        -13.46403694152832\n      ],\n      [\n        \"▁Unterkunft\",\n        -13.464315414428711\n      ],\n      [\n        \"moos\",\n        -13.464374542236328\n      ],\n      [\n        \"Camere\",\n        -13.464510917663574\n      ],\n      [\n        \"/03/\",\n        -13.464651107788086\n      ],\n      [\n        \"▁ethno\",\n        -13.464677810668945\n      ],\n      [\n        \"▁Eröffnung\",\n        -13.46495246887207\n      ],\n      [\n        \"▁Snyder\",\n        -13.46495246887207\n      ],\n      [\n        \"▁Wilmington\",\n        -13.46495246887207\n      ],\n      [\n        \"▁Canberra\",\n        -13.464953422546387\n      ],\n      [\n        \"▁Tahoe\",\n        -13.464953422546387\n      ],\n      [\n        \"▁slippery\",\n        -13.464953422546387\n      ],\n      [\n        \"▁Snake\",\n        -13.464957237243652\n      ],\n      [\n        \"▁turmeric\",\n        -13.464963912963867\n      ],\n      [\n        \"▁Cartoon\",\n        -13.46499252319336\n      ],\n      [\n        \"▁scrisoare\",\n        -13.46500015258789\n      ],\n      [\n        \"▁reprend\",\n        -13.465425491333008\n      ],\n      [\n        \"▁Konkurrenz\",\n        -13.46567440032959\n      ],\n      [\n        \"▁raisins\",\n        -13.465693473815918\n      ],\n      [\n        \"▁Werkstatt\",\n        -13.465713500976562\n      ],\n      [\n        \"▁agresiv\",\n        -13.465795516967773\n      ],\n      [\n        \"hugs\",\n        -13.46615219116211\n      ],\n      [\n        \"cazurile\",\n        -13.46618938446045\n      ],\n      [\n        \"spirited\",\n        -13.466232299804688\n      ],\n      [\n        \"▁britisch\",\n        -13.466307640075684\n      ],\n      [\n        \"spritz\",\n        -13.466367721557617\n      ],\n      [\n        \"auxiliary\",\n        -13.46639633178711\n      ],\n      [\n        \"interprétation\",\n        -13.46639633178711\n      ],\n      [\n        \"▁verbindet\",\n        -13.46639633178711\n      ],\n      [\n        \"▁fuzzy\",\n        -13.466429710388184\n      ],\n      [\n        \"▁turmoil\",\n        -13.466432571411133\n      ],\n      [\n        \"▁redefine\",\n        -13.466819763183594\n      ],\n      [\n        \"▁Kiwi\",\n        -13.466890335083008\n      ],\n      [\n        \"oiseaux\",\n        -13.46712875366211\n      ],\n      [\n        \"▁pamper\",\n        -13.467146873474121\n      ],\n      [\n        \"▁desfaso\",\n        -13.46719741821289\n      ],\n      [\n        \"▁pragu\",\n        -13.467576026916504\n      ],\n      [\n        \"prevenirea\",\n        -13.467730522155762\n      ],\n      [\n        \"▁convergence\",\n        -13.467846870422363\n      ],\n      [\n        \"tufted\",\n        -13.467878341674805\n      ],\n      [\n        \"brewed\",\n        -13.467981338500977\n      ],\n      [\n        \"villagers\",\n        -13.468003273010254\n      ],\n      [\n        \"▁Irving\",\n        -13.468170166015625\n      ],\n      [\n        \"nigsten\",\n        -13.468660354614258\n      ],\n      [\n        \"▁embod\",\n        -13.468742370605469\n      ],\n      [\n        \"Alicia\",\n        -13.468938827514648\n      ],\n      [\n        \"probably\",\n        -13.469009399414062\n      ],\n      [\n        \"divider\",\n        -13.46904468536377\n      ],\n      [\n        \"Attempt\",\n        -13.469223022460938\n      ],\n      [\n        \"▁Cognitive\",\n        -13.469292640686035\n      ],\n      [\n        \"▁Recognition\",\n        -13.469292640686035\n      ],\n      [\n        \"▁concierge\",\n        -13.469292640686035\n      ],\n      [\n        \"▁Semester\",\n        -13.4692964553833\n      ],\n      [\n        \"Economie\",\n        -13.469417572021484\n      ],\n      [\n        \"sortiment\",\n        -13.469460487365723\n      ],\n      [\n        \"shortest\",\n        -13.46961498260498\n      ],\n      [\n        \"üchtig\",\n        -13.469650268554688\n      ],\n      [\n        \"▁conveyanc\",\n        -13.469978332519531\n      ],\n      [\n        \"▁Ferdinand\",\n        -13.470017433166504\n      ],\n      [\n        \"▁permanence\",\n        -13.470019340515137\n      ],\n      [\n        \"▁incadr\",\n        -13.470145225524902\n      ],\n      [\n        \"▁estrogen\",\n        -13.470290184020996\n      ],\n      [\n        \"February\",\n        -13.470661163330078\n      ],\n      [\n        \"gedeckt\",\n        -13.470704078674316\n      ],\n      [\n        \"▁reagieren\",\n        -13.470743179321289\n      ],\n      [\n        \"▁meditate\",\n        -13.470980644226074\n      ],\n      [\n        \"simulated\",\n        -13.471010208129883\n      ],\n      [\n        \"▁supprimer\",\n        -13.471468925476074\n      ],\n      [\n        \"▁bumbac\",\n        -13.47146987915039\n      ],\n      [\n        \"▁vânzări\",\n        -13.471477508544922\n      ],\n      [\n        \"▁Kapitel\",\n        -13.471478462219238\n      ],\n      [\n        \"▁Weltkrieg\",\n        -13.471513748168945\n      ],\n      [\n        \"déposer\",\n        -13.471674919128418\n      ],\n      [\n        \"Asus\",\n        -13.4718017578125\n      ],\n      [\n        \"▁Communicat\",\n        -13.471851348876953\n      ],\n      [\n        \"Finished\",\n        -13.47188949584961\n      ],\n      [\n        \"▁Telegraph\",\n        -13.472054481506348\n      ],\n      [\n        \"▁Competitive\",\n        -13.472196578979492\n      ],\n      [\n        \"▁collectivités\",\n        -13.472197532653809\n      ],\n      [\n        \"▁protège\",\n        -13.472199440002441\n      ],\n      [\n        \"▁scallop\",\n        -13.472219467163086\n      ],\n      [\n        \"Happy\",\n        -13.472335815429688\n      ],\n      [\n        \"tehnică\",\n        -13.472352981567383\n      ],\n      [\n        \"▁Gestalt\",\n        -13.47270393371582\n      ],\n      [\n        \"▁benign\",\n        -13.47295093536377\n      ],\n      [\n        \"kraut\",\n        -13.473149299621582\n      ],\n      [\n        \"louer\",\n        -13.473221778869629\n      ],\n      [\n        \"▁Printr\",\n        -13.47326946258545\n      ],\n      [\n        \"mputation\",\n        -13.473346710205078\n      ],\n      [\n        \"▁dicke\",\n        -13.473429679870605\n      ],\n      [\n        \"▁Halifax\",\n        -13.473650932312012\n      ],\n      [\n        \"▁bounty\",\n        -13.473650932312012\n      ],\n      [\n        \"▁cauliflower\",\n        -13.473650932312012\n      ],\n      [\n        \"▁Survival\",\n        -13.473654747009277\n      ],\n      [\n        \"▁Chandler\",\n        -13.473684310913086\n      ],\n      [\n        \"▁bemüh\",\n        -13.473760604858398\n      ],\n      [\n        \"phro\",\n        -13.473855972290039\n      ],\n      [\n        \"Friday\",\n        -13.474018096923828\n      ],\n      [\n        \"particularly\",\n        -13.474032402038574\n      ],\n      [\n        \"arteries\",\n        -13.474197387695312\n      ],\n      [\n        \"Lösung\",\n        -13.474771499633789\n      ],\n      [\n        \"▁causal\",\n        -13.474817276000977\n      ],\n      [\n        \"▁recueilli\",\n        -13.475075721740723\n      ],\n      [\n        \"Stylish\",\n        -13.47510814666748\n      ],\n      [\n        \"schränke\",\n        -13.47510814666748\n      ],\n      [\n        \"▁francophone\",\n        -13.47510814666748\n      ],\n      [\n        \"▁limousine\",\n        -13.47510814666748\n      ],\n      [\n        \"▁statistiques\",\n        -13.47510814666748\n      ],\n      [\n        \"▁Kleider\",\n        -13.475111961364746\n      ],\n      [\n        \"▁dunkel\",\n        -13.475127220153809\n      ],\n      [\n        \"tätigkeit\",\n        -13.475190162658691\n      ],\n      [\n        \"▁punished\",\n        -13.475257873535156\n      ],\n      [\n        \"▁implică\",\n        -13.475539207458496\n      ],\n      [\n        \"▁inițial\",\n        -13.475568771362305\n      ],\n      [\n        \"▁Eminescu\",\n        -13.475837707519531\n      ],\n      [\n        \"▁expliqué\",\n        -13.475837707519531\n      ],\n      [\n        \"▁Eduard\",\n        -13.475839614868164\n      ],\n      [\n        \"▁psychologique\",\n        -13.475870132446289\n      ],\n      [\n        \"▁protejeaz\",\n        -13.476580619812012\n      ],\n      [\n        \"spül\",\n        -13.476709365844727\n      ],\n      [\n        \"▁Virtu\",\n        -13.477021217346191\n      ],\n      [\n        \"▁régulière\",\n        -13.477044105529785\n      ],\n      [\n        \"▁Outreach\",\n        -13.477130889892578\n      ],\n      [\n        \"▁Apprentice\",\n        -13.47729778289795\n      ],\n      [\n        \"▁compréhension\",\n        -13.47729778289795\n      ],\n      [\n        \"▁zwölf\",\n        -13.47729778289795\n      ],\n      [\n        \"Surgical\",\n        -13.477315902709961\n      ],\n      [\n        \"latéral\",\n        -13.477417945861816\n      ],\n      [\n        \"▁Ceremony\",\n        -13.47803020477295\n      ],\n      [\n        \"▁Shampoo\",\n        -13.47803783416748\n      ],\n      [\n        \"Global\",\n        -13.478239059448242\n      ],\n      [\n        \"▁paradis\",\n        -13.478302955627441\n      ],\n      [\n        \"Developed\",\n        -13.478493690490723\n      ],\n      [\n        \"▁figurine\",\n        -13.478549003601074\n      ],\n      [\n        \"sujets\",\n        -13.478574752807617\n      ],\n      [\n        \"▁Naomi\",\n        -13.478772163391113\n      ],\n      [\n        \"financed\",\n        -13.478838920593262\n      ],\n      [\n        \"forestry\",\n        -13.478896141052246\n      ],\n      [\n        \"▁Anregung\",\n        -13.479494094848633\n      ],\n      [\n        \"▁spectateur\",\n        -13.479804039001465\n      ],\n      [\n        \"▁exercitii\",\n        -13.479815483093262\n      ],\n      [\n        \"▁russisch\",\n        -13.479888916015625\n      ],\n      [\n        \"gefunden\",\n        -13.479988098144531\n      ],\n      [\n        \"schleunig\",\n        -13.480225563049316\n      ],\n      [\n        \"▁géographique\",\n        -13.480225563049316\n      ],\n      [\n        \"▁Delphi\",\n        -13.480317115783691\n      ],\n      [\n        \"Freddie\",\n        -13.4806489944458\n      ],\n      [\n        \"▁muzici\",\n        -13.480958938598633\n      ],\n      [\n        \"▁Edmund\",\n        -13.48095989227295\n      ],\n      [\n        \"finanzielle\",\n        -13.481032371520996\n      ],\n      [\n        \"(2003)\",\n        -13.481319427490234\n      ],\n      [\n        \"accentuate\",\n        -13.481437683105469\n      ],\n      [\n        \"overlapping\",\n        -13.48151969909668\n      ],\n      [\n        \"▁Pluto\",\n        -13.481595993041992\n      ],\n      [\n        \"românii\",\n        -13.481683731079102\n      ],\n      [\n        \"▁Timişoara\",\n        -13.48169231414795\n      ],\n      [\n        \"▁poivr\",\n        -13.481754302978516\n      ],\n      [\n        \"▁repris\",\n        -13.481852531433105\n      ],\n      [\n        \"▁Geschlecht\",\n        -13.482426643371582\n      ],\n      [\n        \"▁thieves\",\n        -13.482426643371582\n      ],\n      [\n        \"▁Transformer\",\n        -13.482431411743164\n      ],\n      [\n        \"▁shortcomings\",\n        -13.482438087463379\n      ],\n      [\n        \"▁aptitude\",\n        -13.48244571685791\n      ],\n      [\n        \"pitfalls\",\n        -13.482468605041504\n      ],\n      [\n        \"▁manicure\",\n        -13.482577323913574\n      ],\n      [\n        \"mystical\",\n        -13.482723236083984\n      ],\n      [\n        \"▁abolish\",\n        -13.482833862304688\n      ],\n      [\n        \"▁Zielgruppe\",\n        -13.482873916625977\n      ],\n      [\n        \"▁naţionale\",\n        -13.483160972595215\n      ],\n      [\n        \"▁trandafir\",\n        -13.483160972595215\n      ],\n      [\n        \"▁matematic\",\n        -13.483193397521973\n      ],\n      [\n        \"▁Hirsch\",\n        -13.483257293701172\n      ],\n      [\n        \"Fahr\",\n        -13.483458518981934\n      ],\n      [\n        \"connaissent\",\n        -13.483476638793945\n      ],\n      [\n        \"browned\",\n        -13.483846664428711\n      ],\n      [\n        \"▁bearbeitet\",\n        -13.483881950378418\n      ],\n      [\n        \"▁usturoi\",\n        -13.483896255493164\n      ],\n      [\n        \"▁Surprise\",\n        -13.48389720916748\n      ],\n      [\n        \"▁Tehran\",\n        -13.483899116516113\n      ],\n      [\n        \"▁BLACK\",\n        -13.483901023864746\n      ],\n      [\n        \"▁abonament\",\n        -13.483904838562012\n      ],\n      [\n        \"▁mêl\",\n        -13.483972549438477\n      ],\n      [\n        \"Angebot\",\n        -13.484091758728027\n      ],\n      [\n        \"ajungi\",\n        -13.48410415649414\n      ],\n      [\n        \"▁Woodland\",\n        -13.48420524597168\n      ],\n      [\n        \"▁gradini\",\n        -13.484305381774902\n      ],\n      [\n        \"▁Marilyn\",\n        -13.48464584350586\n      ],\n      [\n        \"kilometer\",\n        -13.484880447387695\n      ],\n      [\n        \"tempered\",\n        -13.485230445861816\n      ],\n      [\n        \"▁intimacy\",\n        -13.485371589660645\n      ],\n      [\n        \"▁thunderstorm\",\n        -13.485373497009277\n      ],\n      [\n        \"▁Uttar\",\n        -13.485413551330566\n      ],\n      [\n        \"▁varnish\",\n        -13.485535621643066\n      ],\n      [\n        \"opathie\",\n        -13.485982894897461\n      ],\n      [\n        \"▁școlar\",\n        -13.48611068725586\n      ],\n      [\n        \"▁raisonnable\",\n        -13.486114501953125\n      ],\n      [\n        \"proactively\",\n        -13.486490249633789\n      ],\n      [\n        \"▁gib\",\n        -13.486536979675293\n      ],\n      [\n        \"▁hospice\",\n        -13.48684310913086\n      ],\n      [\n        \"▁constă\",\n        -13.486896514892578\n      ],\n      [\n        \"▁Crescent\",\n        -13.48690128326416\n      ],\n      [\n        \"▁ambasad\",\n        -13.486933708190918\n      ],\n      [\n        \"hotărâre\",\n        -13.486969947814941\n      ],\n      [\n        \"▁fraîche\",\n        -13.48709774017334\n      ],\n      [\n        \"▁bundesweit\",\n        -13.487581253051758\n      ],\n      [\n        \"nsbesondere\",\n        -13.487812042236328\n      ],\n      [\n        \"▁intoarce\",\n        -13.487863540649414\n      ],\n      [\n        \"▁Schokolade\",\n        -13.488319396972656\n      ],\n      [\n        \"▁adjective\",\n        -13.488319396972656\n      ],\n      [\n        \"▁incalzire\",\n        -13.488319396972656\n      ],\n      [\n        \"▁Qualification\",\n        -13.488320350646973\n      ],\n      [\n        \"▁Bolivia\",\n        -13.488324165344238\n      ],\n      [\n        \"▁cruelty\",\n        -13.488334655761719\n      ],\n      [\n        \"pläne\",\n        -13.48834228515625\n      ],\n      [\n        \"▁solitude\",\n        -13.488354682922363\n      ],\n      [\n        \"▁Bosnia\",\n        -13.488568305969238\n      ],\n      [\n        \"rohr\",\n        -13.488643646240234\n      ],\n      [\n        \"▁regrette\",\n        -13.48877239227295\n      ],\n      [\n        \"zusammengestellt\",\n        -13.48924732208252\n      ],\n      [\n        \"▁Kardashian\",\n        -13.489798545837402\n      ],\n      [\n        \"▁Picasso\",\n        -13.489798545837402\n      ],\n      [\n        \"▁unverbindlich\",\n        -13.489798545837402\n      ],\n      [\n        \"▁Headquarters\",\n        -13.489799499511719\n      ],\n      [\n        \"métrage\",\n        -13.4898099899292\n      ],\n      [\n        \"▁Magento\",\n        -13.489816665649414\n      ],\n      [\n        \"▁exhibitors\",\n        -13.489898681640625\n      ],\n      [\n        \"utty\",\n        -13.490381240844727\n      ],\n      [\n        \"▁Fünf\",\n        -13.490538597106934\n      ],\n      [\n        \"▁Peugeot\",\n        -13.490538597106934\n      ],\n      [\n        \"▁verdienen\",\n        -13.490538597106934\n      ],\n      [\n        \"▁absolviert\",\n        -13.49053955078125\n      ],\n      [\n        \"schutzerklärung\",\n        -13.490679740905762\n      ],\n      [\n        \"sistemele\",\n        -13.49089241027832\n      ],\n      [\n        \"▁concrète\",\n        -13.491279602050781\n      ],\n      [\n        \"▁rhyme\",\n        -13.491279602050781\n      ],\n      [\n        \"▁Continuous\",\n        -13.49128246307373\n      ],\n      [\n        \"versprechen\",\n        -13.491312026977539\n      ],\n      [\n        \"▁Melanie\",\n        -13.49202823638916\n      ],\n      [\n        \"▁clienţi\",\n        -13.492046356201172\n      ],\n      [\n        \"luckily\",\n        -13.492205619812012\n      ],\n      [\n        \"▁counterfeit\",\n        -13.492762565612793\n      ],\n      [\n        \"▁locomotive\",\n        -13.492889404296875\n      ],\n      [\n        \"▁reacți\",\n        -13.492908477783203\n      ],\n      [\n        \"ampered\",\n        -13.493005752563477\n      ],\n      [\n        \"atenția\",\n        -13.493011474609375\n      ],\n      [\n        \"Suppose\",\n        -13.493062973022461\n      ],\n      [\n        \"hinweis\",\n        -13.493464469909668\n      ],\n      [\n        \"verletzung\",\n        -13.493504524230957\n      ],\n      [\n        \"▁mănânc\",\n        -13.493504524230957\n      ],\n      [\n        \"▁provoac\",\n        -13.493507385253906\n      ],\n      [\n        \"▁regizor\",\n        -13.493511199951172\n      ],\n      [\n        \"kundig\",\n        -13.49352741241455\n      ],\n      [\n        \"embarqu\",\n        -13.493584632873535\n      ],\n      [\n        \"Radio\",\n        -13.493690490722656\n      ],\n      [\n        \"Ministrul\",\n        -13.493896484375\n      ],\n      [\n        \"weakened\",\n        -13.494214057922363\n      ],\n      [\n        \"▁translucent\",\n        -13.494247436523438\n      ],\n      [\n        \"George\",\n        -13.494380950927734\n      ],\n      [\n        \"▁bacterii\",\n        -13.494402885437012\n      ],\n      [\n        \"intervalul\",\n        -13.494803428649902\n      ],\n      [\n        \"▁vizualiz\",\n        -13.494832038879395\n      ],\n      [\n        \"▁Feuchtigkeit\",\n        -13.494991302490234\n      ],\n      [\n        \"▁choisissez\",\n        -13.494991302490234\n      ],\n      [\n        \"▁plausible\",\n        -13.494991302490234\n      ],\n      [\n        \"▁perpetu\",\n        -13.495122909545898\n      ],\n      [\n        \"▁bucati\",\n        -13.495194435119629\n      ],\n      [\n        \"▁Giovanni\",\n        -13.495735168457031\n      ],\n      [\n        \"▁bluetooth\",\n        -13.495736122131348\n      ],\n      [\n        \"▁translating\",\n        -13.49573802947998\n      ],\n      [\n        \"▁Kyoto\",\n        -13.495739936828613\n      ],\n      [\n        \"▁homosexual\",\n        -13.495745658874512\n      ],\n      [\n        \"treabă\",\n        -13.495820045471191\n      ],\n      [\n        \"ntrepid\",\n        -13.495983123779297\n      ],\n      [\n        \"▁fachlich\",\n        -13.496664047241211\n      ],\n      [\n        \"Vaccin\",\n        -13.496774673461914\n      ],\n      [\n        \"▁Treib\",\n        -13.497248649597168\n      ],\n      [\n        \"varsity\",\n        -13.497272491455078\n      ],\n      [\n        \"▁Tavern\",\n        -13.497278213500977\n      ],\n      [\n        \"▁ensue\",\n        -13.497330665588379\n      ],\n      [\n        \"flexibel\",\n        -13.497971534729004\n      ],\n      [\n        \"retrieved\",\n        -13.498102188110352\n      ],\n      [\n        \"traditionellen\",\n        -13.498230934143066\n      ],\n      [\n        \"▁circulati\",\n        -13.498546600341797\n      ],\n      [\n        \"▁Diagnose\",\n        -13.498717308044434\n      ],\n      [\n        \"▁Strawberry\",\n        -13.498717308044434\n      ],\n      [\n        \"Societatea\",\n        -13.49871826171875\n      ],\n      [\n        \"expertise\",\n        -13.498849868774414\n      ],\n      [\n        \"▁naturii\",\n        -13.499464988708496\n      ],\n      [\n        \"▁4:1\",\n        -13.499515533447266\n      ],\n      [\n        \"Frequently\",\n        -13.500210762023926\n      ],\n      [\n        \"disproportionate\",\n        -13.500210762023926\n      ],\n      [\n        \"▁LIMITED\",\n        -13.500210762023926\n      ],\n      [\n        \"▁ancestral\",\n        -13.500227928161621\n      ],\n      [\n        \"▁Logistik\",\n        -13.500237464904785\n      ],\n      [\n        \"▁recolt\",\n        -13.50042724609375\n      ],\n      [\n        \"▁liebevoll\",\n        -13.500436782836914\n      ],\n      [\n        \"importing\",\n        -13.500452041625977\n      ],\n      [\n        \"aparatul\",\n        -13.500458717346191\n      ],\n      [\n        \"poziţia\",\n        -13.500564575195312\n      ],\n      [\n        \"facerilor\",\n        -13.500658988952637\n      ],\n      [\n        \"Submitted\",\n        -13.50086784362793\n      ],\n      [\n        \"ografia\",\n        -13.501221656799316\n      ],\n      [\n        \"onformément\",\n        -13.50168228149414\n      ],\n      [\n        \"▁dissemination\",\n        -13.501708030700684\n      ],\n      [\n        \"afli\",\n        -13.501834869384766\n      ],\n      [\n        \"luminous\",\n        -13.502154350280762\n      ],\n      [\n        \"▁draußen\",\n        -13.502456665039062\n      ],\n      [\n        \"▁Zauber\",\n        -13.502535820007324\n      ],\n      [\n        \"▁Ibrahim\",\n        -13.503207206726074\n      ],\n      [\n        \"▁eruption\",\n        -13.503216743469238\n      ],\n      [\n        \"écrite\",\n        -13.50357723236084\n      ],\n      [\n        \"avril\",\n        -13.503898620605469\n      ],\n      [\n        \"Increasing\",\n        -13.504171371459961\n      ],\n      [\n        \"hingeg\",\n        -13.504411697387695\n      ],\n      [\n        \"fidelity\",\n        -13.504707336425781\n      ],\n      [\n        \"étonnant\",\n        -13.504707336425781\n      ],\n      [\n        \"▁créativité\",\n        -13.504707336425781\n      ],\n      [\n        \"▁Required\",\n        -13.504708290100098\n      ],\n      [\n        \"▁Edison\",\n        -13.504719734191895\n      ],\n      [\n        \"▁Stuhl\",\n        -13.504719734191895\n      ],\n      [\n        \"outhwestern\",\n        -13.506060600280762\n      ],\n      [\n        \"▁Beschwerden\",\n        -13.506210327148438\n      ],\n      [\n        \"▁angajaţi\",\n        -13.506210327148438\n      ],\n      [\n        \"▁Currency\",\n        -13.506211280822754\n      ],\n      [\n        \"▁reagiert\",\n        -13.506214141845703\n      ],\n      [\n        \"Science\",\n        -13.506229400634766\n      ],\n      [\n        \"hospital\",\n        -13.506253242492676\n      ],\n      [\n        \"professionellen\",\n        -13.50649356842041\n      ],\n      [\n        \"▁Trouve\",\n        -13.506768226623535\n      ],\n      [\n        \"▁utopi\",\n        -13.50683307647705\n      ],\n      [\n        \"gypte\",\n        -13.506928443908691\n      ],\n      [\n        \"▁Konsequenz\",\n        -13.506962776184082\n      ],\n      [\n        \"▁pacienți\",\n        -13.506962776184082\n      ],\n      [\n        \"▁orizont\",\n        -13.506988525390625\n      ],\n      [\n        \"Corey\",\n        -13.506999015808105\n      ],\n      [\n        \"▁quartet\",\n        -13.507009506225586\n      ],\n      [\n        \"▁Sherlock\",\n        -13.50710678100586\n      ],\n      [\n        \"▁gagné\",\n        -13.507237434387207\n      ],\n      [\n        \"▁Jusqu\",\n        -13.50732707977295\n      ],\n      [\n        \"▁Clickfunnel\",\n        -13.507465362548828\n      ],\n      [\n        \"Survivor\",\n        -13.507716178894043\n      ],\n      [\n        \"▁Beethoven\",\n        -13.507716178894043\n      ],\n      [\n        \"▁Exemplar\",\n        -13.507716178894043\n      ],\n      [\n        \"▁Gonzalez\",\n        -13.507716178894043\n      ],\n      [\n        \"▁Illustrator\",\n        -13.507716178894043\n      ],\n      [\n        \"▁Verpflichtung\",\n        -13.507718086242676\n      ],\n      [\n        \"Possibly\",\n        -13.507719993591309\n      ],\n      [\n        \"Maintenant\",\n        -13.507721900939941\n      ],\n      [\n        \"▁incendiu\",\n        -13.507721900939941\n      ],\n      [\n        \"▁poêl\",\n        -13.507747650146484\n      ],\n      [\n        \"▁aşez\",\n        -13.507757186889648\n      ],\n      [\n        \"phenol\",\n        -13.508248329162598\n      ],\n      [\n        \"▁magician\",\n        -13.508421897888184\n      ],\n      [\n        \"éventuellement\",\n        -13.508512496948242\n      ],\n      [\n        \"▁amortiz\",\n        -13.508736610412598\n      ],\n      [\n        \"bouchage\",\n        -13.50873851776123\n      ],\n      [\n        \"▁Accommodation\",\n        -13.509223937988281\n      ],\n      [\n        \"▁Significant\",\n        -13.509223937988281\n      ],\n      [\n        \"▁rejoice\",\n        -13.509223937988281\n      ],\n      [\n        \"▁Lorraine\",\n        -13.509224891662598\n      ],\n      [\n        \"▁Necklace\",\n        -13.509234428405762\n      ],\n      [\n        \"▁hamburger\",\n        -13.509273529052734\n      ],\n      [\n        \"Enhanced\",\n        -13.5095796585083\n      ],\n      [\n        \"▁Audrey\",\n        -13.509978294372559\n      ],\n      [\n        \"▁considère\",\n        -13.509986877441406\n      ],\n      [\n        \"hafen\",\n        -13.51050853729248\n      ],\n      [\n        \"acordare\",\n        -13.510509490966797\n      ],\n      [\n        \"▁ediți\",\n        -13.51075553894043\n      ],\n      [\n        \"▁militia\",\n        -13.510767936706543\n      ],\n      [\n        \"captivate\",\n        -13.510771751403809\n      ],\n      [\n        \"▁rebellion\",\n        -13.510777473449707\n      ],\n      [\n        \"▁veranstalte\",\n        -13.510844230651855\n      ],\n      [\n        \"▁matelas\",\n        -13.510859489440918\n      ],\n      [\n        \"originating\",\n        -13.510873794555664\n      ],\n      [\n        \"Typical\",\n        -13.51092529296875\n      ],\n      [\n        \"▁législat\",\n        -13.511360168457031\n      ],\n      [\n        \"▁Kräfte\",\n        -13.511488914489746\n      ],\n      [\n        \"▁Eigentümer\",\n        -13.511489868164062\n      ],\n      [\n        \"▁gonfl\",\n        -13.511608123779297\n      ],\n      [\n        \"dispoziție\",\n        -13.512028694152832\n      ],\n      [\n        \"▁Fabulous\",\n        -13.512246131896973\n      ],\n      [\n        \"▁Guillaume\",\n        -13.512246131896973\n      ],\n      [\n        \"▁Genuine\",\n        -13.512247085571289\n      ],\n      [\n        \"selbe\",\n        -13.512449264526367\n      ],\n      [\n        \"(2002)\",\n        -13.512616157531738\n      ],\n      [\n        \"Einen\",\n        -13.512908935546875\n      ],\n      [\n        \"▁Snapdragon\",\n        -13.513002395629883\n      ],\n      [\n        \"▁plagiarism\",\n        -13.513002395629883\n      ],\n      [\n        \"▁Rendez\",\n        -13.513019561767578\n      ],\n      [\n        \"▁înregistrare\",\n        -13.513033866882324\n      ],\n      [\n        \"probiert\",\n        -13.513081550598145\n      ],\n      [\n        \"gestiegen\",\n        -13.513153076171875\n      ],\n      [\n        \"Teatrul\",\n        -13.513370513916016\n      ],\n      [\n        \"trove\",\n        -13.513469696044922\n      ],\n      [\n        \"ntsprechend\",\n        -13.513566017150879\n      ],\n      [\n        \"Städten\",\n        -13.513691902160645\n      ],\n      [\n        \"unforeseen\",\n        -13.513760566711426\n      ],\n      [\n        \"▁Meridian\",\n        -13.513761520385742\n      ],\n      [\n        \"▁Ministries\",\n        -13.513763427734375\n      ],\n      [\n        \"plaît\",\n        -13.513769149780273\n      ],\n      [\n        \"▁Telefonnummer\",\n        -13.513772010803223\n      ],\n      [\n        \"welded\",\n        -13.513788223266602\n      ],\n      [\n        \"pondere\",\n        -13.513976097106934\n      ],\n      [\n        \"▁funcţiona\",\n        -13.514012336730957\n      ],\n      [\n        \"▁politicieni\",\n        -13.514187812805176\n      ],\n      [\n        \"fleck\",\n        -13.514240264892578\n      ],\n      [\n        \"▁Nitro\",\n        -13.514264106750488\n      ],\n      [\n        \"wettbewerb\",\n        -13.514518737792969\n      ],\n      [\n        \"▁ingrijire\",\n        -13.514518737792969\n      ],\n      [\n        \"▁Gehirn\",\n        -13.514521598815918\n      ],\n      [\n        \"sigură\",\n        -13.514904022216797\n      ],\n      [\n        \"400,000\",\n        -13.515237808227539\n      ],\n      [\n        \"▁cataract\",\n        -13.515277862548828\n      ],\n      [\n        \"outskirt\",\n        -13.515280723571777\n      ],\n      [\n        \"▁Identification\",\n        -13.515287399291992\n      ],\n      [\n        \"▁imperfections\",\n        -13.515317916870117\n      ],\n      [\n        \"▁Dokumentation\",\n        -13.515474319458008\n      ],\n      [\n        \"Engine\",\n        -13.515851974487305\n      ],\n      [\n        \"extindere\",\n        -13.516046524047852\n      ],\n      [\n        \"bijoux\",\n        -13.516797065734863\n      ],\n      [\n        \"▁dărui\",\n        -13.516802787780762\n      ],\n      [\n        \"▁Moderator\",\n        -13.516913414001465\n      ],\n      [\n        \"biblio\",\n        -13.517024040222168\n      ],\n      [\n        \"енн\",\n        -13.517024040222168\n      ],\n      [\n        \"▁Relevan\",\n        -13.51728630065918\n      ],\n      [\n        \"ansprüche\",\n        -13.517557144165039\n      ],\n      [\n        \"épaisseur\",\n        -13.517580032348633\n      ],\n      [\n        \"▁emoţi\",\n        -13.517677307128906\n      ],\n      [\n        \"exacerbate\",\n        -13.518318176269531\n      ],\n      [\n        \"▁Wimbledon\",\n        -13.518318176269531\n      ],\n      [\n        \"▁Pandora\",\n        -13.518319129943848\n      ],\n      [\n        \"perhaps\",\n        -13.518725395202637\n      ],\n      [\n        \"certify\",\n        -13.518762588500977\n      ],\n      [\n        \"Strukturen\",\n        -13.5189208984375\n      ],\n      [\n        \"▁Kreativität\",\n        -13.519079208374023\n      ],\n      [\n        \"schlägt\",\n        -13.51908016204834\n      ],\n      [\n        \"▁certifié\",\n        -13.51911735534668\n      ],\n      [\n        \"/09/\",\n        -13.519211769104004\n      ],\n      [\n        \"▁suprafaţ\",\n        -13.519493103027344\n      ],\n      [\n        \"verständnis\",\n        -13.519841194152832\n      ],\n      [\n        \"presedintele\",\n        -13.519842147827148\n      ],\n      [\n        \"▁orthopedic\",\n        -13.519842147827148\n      ],\n      [\n        \"▁superioara\",\n        -13.519843101501465\n      ],\n      [\n        \"älteste\",\n        -13.519903182983398\n      ],\n      [\n        \"▁conducător\",\n        -13.520153999328613\n      ],\n      [\n        \"supplementary\",\n        -13.520243644714355\n      ],\n      [\n        \"wetlands\",\n        -13.520438194274902\n      ],\n      [\n        \"▁suprafete\",\n        -13.520605087280273\n      ],\n      [\n        \"▁aparțin\",\n        -13.520951271057129\n      ],\n      [\n        \"analiză\",\n        -13.521014213562012\n      ],\n      [\n        \"Uneori\",\n        -13.52115535736084\n      ],\n      [\n        \"Toujours\",\n        -13.521368026733398\n      ],\n      [\n        \"▁Nairobi\",\n        -13.521368026733398\n      ],\n      [\n        \"▁asparagus\",\n        -13.521368026733398\n      ],\n      [\n        \"▁crowdfunding\",\n        -13.521368026733398\n      ],\n      [\n        \"gutachten\",\n        -13.521369934082031\n      ],\n      [\n        \"smelling\",\n        -13.521659851074219\n      ],\n      [\n        \"▁elektrisch\",\n        -13.521718978881836\n      ],\n      [\n        \"begging\",\n        -13.522055625915527\n      ],\n      [\n        \"▁Renewable\",\n        -13.522896766662598\n      ],\n      [\n        \"▁Trouble\",\n        -13.522896766662598\n      ],\n      [\n        \"▁devastated\",\n        -13.522896766662598\n      ],\n      [\n        \"▁remplacé\",\n        -13.522896766662598\n      ],\n      [\n        \"▁schmeckt\",\n        -13.522896766662598\n      ],\n      [\n        \"▁exerciți\",\n        -13.523005485534668\n      ],\n      [\n        \"▁vermute\",\n        -13.523650169372559\n      ],\n      [\n        \"▁Constanța\",\n        -13.523661613464355\n      ],\n      [\n        \"expunere\",\n        -13.523693084716797\n      ],\n      [\n        \"▁Fitzgerald\",\n        -13.52442741394043\n      ],\n      [\n        \"▁Mechanism\",\n        -13.524429321289062\n      ],\n      [\n        \"▁underscore\",\n        -13.524484634399414\n      ],\n      [\n        \"poziţie\",\n        -13.524901390075684\n      ],\n      [\n        \"stöbern\",\n        -13.525193214416504\n      ],\n      [\n        \"▁littérature\",\n        -13.525193214416504\n      ],\n      [\n        \"▁împrumut\",\n        -13.525193214416504\n      ],\n      [\n        \"Vision\",\n        -13.525771141052246\n      ],\n      [\n        \"▁overwhelm\",\n        -13.525773048400879\n      ],\n      [\n        \"▁erweitern\",\n        -13.525959968566895\n      ],\n      [\n        \"skeletal\",\n        -13.525960922241211\n      ],\n      [\n        \"▁terrified\",\n        -13.525960922241211\n      ],\n      [\n        \"aggravate\",\n        -13.525962829589844\n      ],\n      [\n        \"▁Malawi\",\n        -13.525969505310059\n      ],\n      [\n        \"▁neuroscience\",\n        -13.526009559631348\n      ],\n      [\n        \"trecută\",\n        -13.526097297668457\n      ],\n      [\n        \"▁maestr\",\n        -13.52634334564209\n      ],\n      [\n        \"нов\",\n        -13.526555061340332\n      ],\n      [\n        \"▁Cobb\",\n        -13.52667236328125\n      ],\n      [\n        \"▁Schwangerschaft\",\n        -13.526727676391602\n      ],\n      [\n        \"▁internationaux\",\n        -13.526727676391602\n      ],\n      [\n        \"▁entspannen\",\n        -13.526729583740234\n      ],\n      [\n        \"▁Früchte\",\n        -13.52676773071289\n      ],\n      [\n        \"mâine\",\n        -13.526805877685547\n      ],\n      [\n        \"stützt\",\n        -13.526938438415527\n      ],\n      [\n        \"flipped\",\n        -13.527076721191406\n      ],\n      [\n        \"Palatul\",\n        -13.527252197265625\n      ],\n      [\n        \"▁Gérard\",\n        -13.527496337890625\n      ],\n      [\n        \"▁Kensington\",\n        -13.527498245239258\n      ],\n      [\n        \"chargée\",\n        -13.52807331085205\n      ],\n      [\n        \"iolo\",\n        -13.528203964233398\n      ],\n      [\n        \"▁excesiv\",\n        -13.52904987335205\n      ],\n      [\n        \"▁Gymnas\",\n        -13.52962875366211\n      ],\n      [\n        \"▁optimise\",\n        -13.529678344726562\n      ],\n      [\n        \"possibilités\",\n        -13.529717445373535\n      ],\n      [\n        \"▁periculoas\",\n        -13.529810905456543\n      ],\n      [\n        \"mechanical\",\n        -13.529839515686035\n      ],\n      [\n        \"▁confruntă\",\n        -13.529868125915527\n      ],\n      [\n        \"quatrième\",\n        -13.530573844909668\n      ],\n      [\n        \"▁Preservation\",\n        -13.530573844909668\n      ],\n      [\n        \"▁Juventus\",\n        -13.530574798583984\n      ],\n      [\n        \"vorsitzende\",\n        -13.5305757522583\n      ],\n      [\n        \"électora\",\n        -13.530586242675781\n      ],\n      [\n        \"▁fascinant\",\n        -13.53061580657959\n      ],\n      [\n        \"▁lagoon\",\n        -13.530671119689941\n      ],\n      [\n        \"referencing\",\n        -13.53079605102539\n      ],\n      [\n        \"appointed\",\n        -13.530988693237305\n      ],\n      [\n        \"Audible\",\n        -13.531112670898438\n      ],\n      [\n        \"sighted\",\n        -13.531612396240234\n      ],\n      [\n        \"▁gewünscht\",\n        -13.532061576843262\n      ],\n      [\n        \"▁Expedition\",\n        -13.532115936279297\n      ],\n      [\n        \"▁genunchi\",\n        -13.532115936279297\n      ],\n      [\n        \"▁PROVIDE\",\n        -13.53211784362793\n      ],\n      [\n        \"▁rosemary\",\n        -13.532118797302246\n      ],\n      [\n        \"▁cleanliness\",\n        -13.532130241394043\n      ],\n      [\n        \"commanded\",\n        -13.53223991394043\n      ],\n      [\n        \"ältere\",\n        -13.532530784606934\n      ],\n      [\n        \"ност\",\n        -13.532547950744629\n      ],\n      [\n        \"kühlen\",\n        -13.532917976379395\n      ],\n      [\n        \"mettez\",\n        -13.533548355102539\n      ],\n      [\n        \"connaitre\",\n        -13.533661842346191\n      ],\n      [\n        \"Qaeda\",\n        -13.533662796020508\n      ],\n      [\n        \"▁traumhaft\",\n        -13.53366470336914\n      ],\n      [\n        \"kommst\",\n        -13.533666610717773\n      ],\n      [\n        \"▁Abbott\",\n        -13.533669471740723\n      ],\n      [\n        \"▁Fool\",\n        -13.533686637878418\n      ],\n      [\n        \"▁médaill\",\n        -13.533687591552734\n      ],\n      [\n        \"▁genotyp\",\n        -13.533693313598633\n      ],\n      [\n        \"▁Fälle\",\n        -13.53375244140625\n      ],\n      [\n        \"▁actuator\",\n        -13.533843994140625\n      ],\n      [\n        \"CLASS\",\n        -13.534042358398438\n      ],\n      [\n        \"progressively\",\n        -13.534421920776367\n      ],\n      [\n        \"negative\",\n        -13.53469467163086\n      ],\n      [\n        \"bundled\",\n        -13.535009384155273\n      ],\n      [\n        \"▁dezbatere\",\n        -13.535208702087402\n      ],\n      [\n        \"kamagra\",\n        -13.535237312316895\n      ],\n      [\n        \"gardinen\",\n        -13.535250663757324\n      ],\n      [\n        \"unsecured\",\n        -13.535271644592285\n      ],\n      [\n        \"Assisted\",\n        -13.535298347473145\n      ],\n      [\n        \"Gymnasium\",\n        -13.535386085510254\n      ],\n      [\n        \"▁brusc\",\n        -13.535591125488281\n      ],\n      [\n        \"prinzip\",\n        -13.535655975341797\n      ],\n      [\n        \"Torrent\",\n        -13.535964965820312\n      ],\n      [\n        \"Presented\",\n        -13.535967826843262\n      ],\n      [\n        \"▁impressionnant\",\n        -13.53628921508789\n      ],\n      [\n        \"charakter\",\n        -13.536758422851562\n      ],\n      [\n        \"▁Acoustic\",\n        -13.536762237548828\n      ],\n      [\n        \"▁appartient\",\n        -13.536763191223145\n      ],\n      [\n        \"gesteuert\",\n        -13.536879539489746\n      ],\n      [\n        \"▁condiți\",\n        -13.537089347839355\n      ],\n      [\n        \"authentic\",\n        -13.537313461303711\n      ],\n      [\n        \"▁Erholung\",\n        -13.537534713745117\n      ],\n      [\n        \"▁Veranstalter\",\n        -13.537534713745117\n      ],\n      [\n        \"▁Filial\",\n        -13.537665367126465\n      ],\n      [\n        \"ruhigen\",\n        -13.537714958190918\n      ],\n      [\n        \"symptôme\",\n        -13.538311004638672\n      ],\n      [\n        \"▁Efficiency\",\n        -13.538311004638672\n      ],\n      [\n        \"▁stunned\",\n        -13.538311004638672\n      ],\n      [\n        \"▁sympathique\",\n        -13.538311004638672\n      ],\n      [\n        \"Uploaded\",\n        -13.538352966308594\n      ],\n      [\n        \"▁geistig\",\n        -13.538453102111816\n      ],\n      [\n        \"Pläne\",\n        -13.538509368896484\n      ],\n      [\n        \"▁Apartament\",\n        -13.53855037689209\n      ],\n      [\n        \"▁ușoar\",\n        -13.539119720458984\n      ],\n      [\n        \"▁locuinț\",\n        -13.539122581481934\n      ],\n      [\n        \"épouse\",\n        -13.539166450500488\n      ],\n      [\n        \"îngrijire\",\n        -13.539215087890625\n      ],\n      [\n        \"Obtain\",\n        -13.539261817932129\n      ],\n      [\n        \"Detect\",\n        -13.539590835571289\n      ],\n      [\n        \"▁Dumitru\",\n        -13.539865493774414\n      ],\n      [\n        \"▁refrigeration\",\n        -13.539865493774414\n      ],\n      [\n        \"ärztliche\",\n        -13.539881706237793\n      ],\n      [\n        \"efficiency\",\n        -13.540032386779785\n      ],\n      [\n        \"▁snail\",\n        -13.540328979492188\n      ],\n      [\n        \"gelände\",\n        -13.540419578552246\n      ],\n      [\n        \"expected\",\n        -13.540620803833008\n      ],\n      [\n        \"kompetenz\",\n        -13.540643692016602\n      ],\n      [\n        \"▁sfânt\",\n        -13.540643692016602\n      ],\n      [\n        \"océan\",\n        -13.540685653686523\n      ],\n      [\n        \"▁Plasma\",\n        -13.540717124938965\n      ],\n      [\n        \"▁vulgar\",\n        -13.54075813293457\n      ],\n      [\n        \"▁slump\",\n        -13.541083335876465\n      ],\n      [\n        \"autoimmune\",\n        -13.541422843933105\n      ],\n      [\n        \"▁Cynthia\",\n        -13.541422843933105\n      ],\n      [\n        \"▁dimineaţ\",\n        -13.541422843933105\n      ],\n      [\n        \"▁whimsical\",\n        -13.541422843933105\n      ],\n      [\n        \"▁evaporate\",\n        -13.541488647460938\n      ],\n      [\n        \"▁calorii\",\n        -13.54186725616455\n      ],\n      [\n        \"portion\",\n        -13.54187297821045\n      ],\n      [\n        \"crowned\",\n        -13.5419282913208\n      ],\n      [\n        \"▁întâmpin\",\n        -13.54220199584961\n      ],\n      [\n        \"▁Centenar\",\n        -13.542620658874512\n      ],\n      [\n        \"▁Genehmigung\",\n        -13.54298210144043\n      ],\n      [\n        \"▁Wahrscheinlich\",\n        -13.54298210144043\n      ],\n      [\n        \"▁accompaniment\",\n        -13.54298210144043\n      ],\n      [\n        \"▁Negoti\",\n        -13.542984962463379\n      ],\n      [\n        \"▁Vanilla\",\n        -13.543000221252441\n      ],\n      [\n        \"▁Receiv\",\n        -13.543014526367188\n      ],\n      [\n        \"▁bestseller\",\n        -13.543052673339844\n      ],\n      [\n        \"tendons\",\n        -13.543069839477539\n      ],\n      [\n        \"Reilly\",\n        -13.543192863464355\n      ],\n      [\n        \"▁refroidi\",\n        -13.543731689453125\n      ],\n      [\n        \"▁überrascht\",\n        -13.543763160705566\n      ],\n      [\n        \"Gitarre\",\n        -13.543828964233398\n      ],\n      [\n        \"wände\",\n        -13.544173240661621\n      ],\n      [\n        \"veniturile\",\n        -13.544321060180664\n      ],\n      [\n        \"▁portofoliu\",\n        -13.54454517364502\n      ],\n      [\n        \"▁temporaire\",\n        -13.54454517364502\n      ],\n      [\n        \"▁Dawson\",\n        -13.544546127319336\n      ],\n      [\n        \"foreseeable\",\n        -13.544547080993652\n      ],\n      [\n        \"▁Gastgeber\",\n        -13.545344352722168\n      ],\n      [\n        \"Access\",\n        -13.545432090759277\n      ],\n      [\n        \"▁Defender\",\n        -13.545537948608398\n      ],\n      [\n        \"▁Quarry\",\n        -13.546109199523926\n      ],\n      [\n        \"▁trolley\",\n        -13.546110153198242\n      ],\n      [\n        \"▁carburant\",\n        -13.546111106872559\n      ],\n      [\n        \"▁titluri\",\n        -13.54631233215332\n      ],\n      [\n        \"comparatively\",\n        -13.546327590942383\n      ],\n      [\n        \"nachfolgend\",\n        -13.54659652709961\n      ],\n      [\n        \"anfang\",\n        -13.546740531921387\n      ],\n      [\n        \"▁faszinieren\",\n        -13.546891212463379\n      ],\n      [\n        \"trăiesc\",\n        -13.547082901000977\n      ],\n      [\n        \"▁Travail\",\n        -13.547159194946289\n      ],\n      [\n        \"Contact\",\n        -13.547235488891602\n      ],\n      [\n        \"fashion\",\n        -13.547245025634766\n      ],\n      [\n        \"▁épais\",\n        -13.547585487365723\n      ],\n      [\n        \"plattform\",\n        -13.547676086425781\n      ],\n      [\n        \"ventricular\",\n        -13.547677040100098\n      ],\n      [\n        \"▁Portsmouth\",\n        -13.547677993774414\n      ],\n      [\n        \"▁împărat\",\n        -13.54767894744873\n      ],\n      [\n        \"▁vândut\",\n        -13.547698020935059\n      ],\n      [\n        \"▁evidenț\",\n        -13.547708511352539\n      ],\n      [\n        \"Purchasing\",\n        -13.547877311706543\n      ],\n      [\n        \"discerning\",\n        -13.54804801940918\n      ],\n      [\n        \"odonti\",\n        -13.548080444335938\n      ],\n      [\n        \"distilled\",\n        -13.548316955566406\n      ],\n      [\n        \"saveur\",\n        -13.548447608947754\n      ],\n      [\n        \"▁récompense\",\n        -13.54845905303955\n      ],\n      [\n        \"confortul\",\n        -13.548552513122559\n      ],\n      [\n        \"arbeitete\",\n        -13.548787117004395\n      ],\n      [\n        \"partenerii\",\n        -13.549064636230469\n      ],\n      [\n        \"mirrored\",\n        -13.54908561706543\n      ],\n      [\n        \"Dienstleister\",\n        -13.549243927001953\n      ],\n      [\n        \"▁Jakarta\",\n        -13.549243927001953\n      ],\n      [\n        \"▁WEBSITE\",\n        -13.549243927001953\n      ],\n      [\n        \"▁Acquisition\",\n        -13.549262046813965\n      ],\n      [\n        \"▁Miranda\",\n        -13.549287796020508\n      ],\n      [\n        \"Syndic\",\n        -13.549356460571289\n      ],\n      [\n        \"▁stadiu\",\n        -13.549450874328613\n      ],\n      [\n        \"▁Parchet\",\n        -13.549498558044434\n      ],\n      [\n        \"Générale\",\n        -13.54954719543457\n      ],\n      [\n        \"▁jpl\",\n        -13.549579620361328\n      ],\n      [\n        \"attainable\",\n        -13.549949645996094\n      ],\n      [\n        \"École\",\n        -13.550041198730469\n      ],\n      [\n        \"Sphere\",\n        -13.550538063049316\n      ],\n      [\n        \"obtainable\",\n        -13.550592422485352\n      ],\n      [\n        \"▁Sapphire\",\n        -13.55081558227539\n      ],\n      [\n        \"▁aérienne\",\n        -13.55081558227539\n      ],\n      [\n        \"▁bărbați\",\n        -13.55081558227539\n      ],\n      [\n        \"▁irritating\",\n        -13.55081558227539\n      ],\n      [\n        \"▁ultraviolet\",\n        -13.550816535949707\n      ],\n      [\n        \"untouched\",\n        -13.550817489624023\n      ],\n      [\n        \"▁Ramsey\",\n        -13.550819396972656\n      ],\n      [\n        \"titres\",\n        -13.551087379455566\n      ],\n      [\n        \"▁Coordinat\",\n        -13.551218032836914\n      ],\n      [\n        \"believable\",\n        -13.551358222961426\n      ],\n      [\n        \"▁Grundsätzlich\",\n        -13.551602363586426\n      ],\n      [\n        \"▁konsequent\",\n        -13.551602363586426\n      ],\n      [\n        \"▁Cerceta\",\n        -13.551909446716309\n      ],\n      [\n        \"dirigé\",\n        -13.552116394042969\n      ],\n      [\n        \"▁disturb\",\n        -13.552151679992676\n      ],\n      [\n        \"conciliation\",\n        -13.552210807800293\n      ],\n      [\n        \"▁gelöscht\",\n        -13.552390098571777\n      ],\n      [\n        \"▁sauvegarde\",\n        -13.552391052246094\n      ],\n      [\n        \"▁cavities\",\n        -13.552393913269043\n      ],\n      [\n        \"stunde\",\n        -13.55241584777832\n      ],\n      [\n        \"▁foloseasc\",\n        -13.552430152893066\n      ],\n      [\n        \"▁simpati\",\n        -13.552873611450195\n      ],\n      [\n        \"Chacun\",\n        -13.553032875061035\n      ],\n      [\n        \"adversaire\",\n        -13.553178787231445\n      ],\n      [\n        \"Eigentlich\",\n        -13.55319881439209\n      ],\n      [\n        \"defense\",\n        -13.553593635559082\n      ],\n      [\n        \"consider\",\n        -13.553672790527344\n      ],\n      [\n        \"▁Trinidad\",\n        -13.553966522216797\n      ],\n      [\n        \"▁strategist\",\n        -13.553966522216797\n      ],\n      [\n        \"distorted\",\n        -13.553967475891113\n      ],\n      [\n        \"▁hypothetical\",\n        -13.553967475891113\n      ],\n      [\n        \"▁ramburs\",\n        -13.55396842956543\n      ],\n      [\n        \"▁Mallorca\",\n        -13.553970336914062\n      ],\n      [\n        \"▁Domino\",\n        -13.554018020629883\n      ],\n      [\n        \"arrondissement\",\n        -13.554756164550781\n      ],\n      [\n        \"konferenz\",\n        -13.554756164550781\n      ],\n      [\n        \"▁Beleuchtung\",\n        -13.554756164550781\n      ],\n      [\n        \"aggregat\",\n        -13.55484676361084\n      ],\n      [\n        \"subsidize\",\n        -13.554896354675293\n      ],\n      [\n        \"shri\",\n        -13.555503845214844\n      ],\n      [\n        \"Kaufentscheidung\",\n        -13.555545806884766\n      ],\n      [\n        \"▁Hernandez\",\n        -13.555545806884766\n      ],\n      [\n        \"▁Upholster\",\n        -13.555546760559082\n      ],\n      [\n        \"atlantic\",\n        -13.555614471435547\n      ],\n      [\n        \"▁locuinte\",\n        -13.555652618408203\n      ],\n      [\n        \"integrates\",\n        -13.55583381652832\n      ],\n      [\n        \"ewusst\",\n        -13.555878639221191\n      ],\n      [\n        \"▁Avocado\",\n        -13.556337356567383\n      ],\n      [\n        \"Decorative\",\n        -13.557014465332031\n      ],\n      [\n        \"▁Corinthians\",\n        -13.557127952575684\n      ],\n      [\n        \"▁clădire\",\n        -13.557127952575684\n      ],\n      [\n        \"▁plomberie\",\n        -13.557127952575684\n      ],\n      [\n        \"vases\",\n        -13.557143211364746\n      ],\n      [\n        \"▁crippl\",\n        -13.557247161865234\n      ],\n      [\n        \"cluttered\",\n        -13.557487487792969\n      ],\n      [\n        \"departed\",\n        -13.557807922363281\n      ],\n      [\n        \"▁entscheidet\",\n        -13.5579195022583\n      ],\n      [\n        \"Certaine\",\n        -13.558243751525879\n      ],\n      [\n        \"honda\",\n        -13.558294296264648\n      ],\n      [\n        \"triggering\",\n        -13.558527946472168\n      ],\n      [\n        \"▁Erdogan\",\n        -13.558712005615234\n      ],\n      [\n        \"▁Widerstand\",\n        -13.558712005615234\n      ],\n      [\n        \"▁Bhutan\",\n        -13.558713912963867\n      ],\n      [\n        \"▁ascunde\",\n        -13.558736801147461\n      ],\n      [\n        \"▁shading\",\n        -13.558748245239258\n      ],\n      [\n        \"behavioural\",\n        -13.559172630310059\n      ],\n      [\n        \"▁transfér\",\n        -13.55960750579834\n      ],\n      [\n        \"versichert\",\n        -13.559623718261719\n      ],\n      [\n        \"▁vinovat\",\n        -13.559646606445312\n      ],\n      [\n        \"▁airfare\",\n        -13.560142517089844\n      ],\n      [\n        \"▁simplistic\",\n        -13.56030559539795\n      ],\n      [\n        \"▁Asigura\",\n        -13.560320854187012\n      ],\n      [\n        \"Chauffe\",\n        -13.560480117797852\n      ],\n      [\n        \"scrisă\",\n        -13.560585975646973\n      ],\n      [\n        \"trouvez\",\n        -13.560702323913574\n      ],\n      [\n        \"greasy\",\n        -13.560709953308105\n      ],\n      [\n        \"bottled\",\n        -13.560809135437012\n      ],\n      [\n        \"grouped\",\n        -13.560934066772461\n      ],\n      [\n        \"▁beeinflussen\",\n        -13.561092376708984\n      ],\n      [\n        \"▁chronological\",\n        -13.561114311218262\n      ],\n      [\n        \"(2000)\",\n        -13.56127643585205\n      ],\n      [\n        \"sheltered\",\n        -13.561298370361328\n      ],\n      [\n        \"Historically\",\n        -13.561931610107422\n      ],\n      [\n        \"piled\",\n        -13.562012672424316\n      ],\n      [\n        \"publicate\",\n        -13.562378883361816\n      ],\n      [\n        \"▁étudié\",\n        -13.56268310546875\n      ],\n      [\n        \"▁vertraut\",\n        -13.562688827514648\n      ],\n      [\n        \"▁Anpassung\",\n        -13.562697410583496\n      ],\n      [\n        \"cifra\",\n        -13.562705993652344\n      ],\n      [\n        \"▁recueil\",\n        -13.562762260437012\n      ],\n      [\n        \"enforceable\",\n        -13.563183784484863\n      ],\n      [\n        \"Distinguished\",\n        -13.56347942352295\n      ],\n      [\n        \"Empfänger\",\n        -13.56347942352295\n      ],\n      [\n        \"▁Acrylic\",\n        -13.56347942352295\n      ],\n      [\n        \"▁Encyclopedia\",\n        -13.56347942352295\n      ],\n      [\n        \"▁proaspete\",\n        -13.56347942352295\n      ],\n      [\n        \"▁unrealistic\",\n        -13.56347942352295\n      ],\n      [\n        \"▁Assignment\",\n        -13.563481330871582\n      ],\n      [\n        \"▁incubator\",\n        -13.563491821289062\n      ],\n      [\n        \"▁unilateral\",\n        -13.563501358032227\n      ],\n      [\n        \"elasticity\",\n        -13.564398765563965\n      ],\n      [\n        \"amintim\",\n        -13.564475059509277\n      ],\n      [\n        \"fournit\",\n        -13.564553260803223\n      ],\n      [\n        \"semblent\",\n        -13.564763069152832\n      ],\n      [\n        \"▁$69.\",\n        -13.56496524810791\n      ],\n      [\n        \"▁prominence\",\n        -13.56507396697998\n      ],\n      [\n        \"Übertragung\",\n        -13.565075874328613\n      ],\n      [\n        \"▁2014-11-\",\n        -13.565075874328613\n      ],\n      [\n        \"▁Giurgiu\",\n        -13.565104484558105\n      ],\n      [\n        \"étendue\",\n        -13.565123558044434\n      ],\n      [\n        \"ceputul\",\n        -13.565187454223633\n      ],\n      [\n        \"Schwierigkeiten\",\n        -13.565872192382812\n      ],\n      [\n        \"▁subtract\",\n        -13.565881729125977\n      ],\n      [\n        \"▁gesichert\",\n        -13.56589126586914\n      ],\n      [\n        \"▁uimit\",\n        -13.565925598144531\n      ],\n      [\n        \"▁mensuel\",\n        -13.565967559814453\n      ],\n      [\n        \"Vorgaben\",\n        -13.566215515136719\n      ],\n      [\n        \"▁legitimacy\",\n        -13.566670417785645\n      ],\n      [\n        \"▁Kendall\",\n        -13.566673278808594\n      ],\n      [\n        \"▁détach\",\n        -13.566790580749512\n      ],\n      [\n        \"▁kennenlernen\",\n        -13.567469596862793\n      ],\n      [\n        \"▁gewöhnlich\",\n        -13.56747055053711\n      ],\n      [\n        \"Octav\",\n        -13.567917823791504\n      ],\n      [\n        \"responsive\",\n        -13.568169593811035\n      ],\n      [\n        \"▁Mängel\",\n        -13.568269729614258\n      ],\n      [\n        \"▁mișcare\",\n        -13.568269729614258\n      ],\n      [\n        \"▁ludique\",\n        -13.568270683288574\n      ],\n      [\n        \"▁Exeter\",\n        -13.568324089050293\n      ],\n      [\n        \"▁respins\",\n        -13.569114685058594\n      ],\n      [\n        \"oraşului\",\n        -13.569173812866211\n      ],\n      [\n        \"▁sfârşit\",\n        -13.56949520111084\n      ],\n      [\n        \"BUSINESS\",\n        -13.56987190246582\n      ],\n      [\n        \"illustrating\",\n        -13.56987190246582\n      ],\n      [\n        \"▁Tottenham\",\n        -13.56987190246582\n      ],\n      [\n        \"▁pruning\",\n        -13.569886207580566\n      ],\n      [\n        \"▁Înainte\",\n        -13.569904327392578\n      ],\n      [\n        \"▁interesel\",\n        -13.570096969604492\n      ],\n      [\n        \"discovered\",\n        -13.57031536102295\n      ],\n      [\n        \"(0)\",\n        -13.570572853088379\n      ],\n      [\n        \"▁Bewerber\",\n        -13.570673942565918\n      ],\n      [\n        \"▁DESIGN\",\n        -13.570673942565918\n      ],\n      [\n        \"▁Orientierung\",\n        -13.570686340332031\n      ],\n      [\n        \"library\",\n        -13.571041107177734\n      ],\n      [\n        \"cheltuielile\",\n        -13.571419715881348\n      ],\n      [\n        \"▁Canterbury\",\n        -13.571475982666016\n      ],\n      [\n        \"▁intellectuelle\",\n        -13.571477890014648\n      ],\n      [\n        \"▁amalgam\",\n        -13.571497917175293\n      ],\n      [\n        \"▁Toledo\",\n        -13.57150650024414\n      ],\n      [\n        \"gezahlt\",\n        -13.571531295776367\n      ],\n      [\n        \"Veronica\",\n        -13.571659088134766\n      ],\n      [\n        \"deleting\",\n        -13.571946144104004\n      ],\n      [\n        \"▁Merlin\",\n        -13.572442054748535\n      ],\n      [\n        \"▁opérationnel\",\n        -13.572554588317871\n      ],\n      [\n        \"schmutz\",\n        -13.572568893432617\n      ],\n      [\n        \"hyroid\",\n        -13.57279109954834\n      ],\n      [\n        \"▁Compatible\",\n        -13.57308292388916\n      ],\n      [\n        \"▁Leopard\",\n        -13.57308292388916\n      ],\n      [\n        \"▁cylindrical\",\n        -13.57308292388916\n      ],\n      [\n        \"▁terrestrial\",\n        -13.57308292388916\n      ],\n      [\n        \"conferencing\",\n        -13.573088645935059\n      ],\n      [\n        \"▁Variety\",\n        -13.573097229003906\n      ],\n      [\n        \"▁Screw\",\n        -13.573164939880371\n      ],\n      [\n        \"character\",\n        -13.573637962341309\n      ],\n      [\n        \"shortened\",\n        -13.573643684387207\n      ],\n      [\n        \"▁întrerup\",\n        -13.573736190795898\n      ],\n      [\n        \"freude\",\n        -13.573884010314941\n      ],\n      [\n        \"▁dezbateri\",\n        -13.573887825012207\n      ],\n      [\n        \"viteză\",\n        -13.574563026428223\n      ],\n      [\n        \"formațiile\",\n        -13.574600219726562\n      ],\n      [\n        \"▁responsibly\",\n        -13.574692726135254\n      ],\n      [\n        \"Dimensiuni\",\n        -13.574695587158203\n      ],\n      [\n        \"Arrangement\",\n        -13.57469654083252\n      ],\n      [\n        \"▁Leisure\",\n        -13.574712753295898\n      ],\n      [\n        \"escaping\",\n        -13.5750732421875\n      ],\n      [\n        \"flexion\",\n        -13.575104713439941\n      ],\n      [\n        \"▁religieuse\",\n        -13.575308799743652\n      ],\n      [\n        \"crystalline\",\n        -13.575457572937012\n      ],\n      [\n        \"▁clasp\",\n        -13.575520515441895\n      ],\n      [\n        \"festigt\",\n        -13.57554817199707\n      ],\n      [\n        \"▁trouvai\",\n        -13.57596206665039\n      ],\n      [\n        \"cutaneous\",\n        -13.576305389404297\n      ],\n      [\n        \"▁carcinoma\",\n        -13.576305389404297\n      ],\n      [\n        \"▁juxtapos\",\n        -13.576305389404297\n      ],\n      [\n        \"assemblage\",\n        -13.576306343078613\n      ],\n      [\n        \"▁Messiah\",\n        -13.576306343078613\n      ],\n      [\n        \"▁Sleeve\",\n        -13.576306343078613\n      ],\n      [\n        \"▁șofer\",\n        -13.576386451721191\n      ],\n      [\n        \"/05/\",\n        -13.57666301727295\n      ],\n      [\n        \"▁expoziți\",\n        -13.576703071594238\n      ],\n      [\n        \"▁pătrun\",\n        -13.577343940734863\n      ],\n      [\n        \"▁Lydia\",\n        -13.57739543914795\n      ],\n      [\n        \"▁grădini\",\n        -13.577919006347656\n      ],\n      [\n        \"▁toothpaste\",\n        -13.577919960021973\n      ],\n      [\n        \"ordained\",\n        -13.577921867370605\n      ],\n      [\n        \"▁Renovation\",\n        -13.577922821044922\n      ],\n      [\n        \"voicing\",\n        -13.578327178955078\n      ],\n      [\n        \"président\",\n        -13.578595161437988\n      ],\n      [\n        \"▁gestartet\",\n        -13.578728675842285\n      ],\n      [\n        \"Multi\",\n        -13.579121589660645\n      ],\n      [\n        \"itinéraire\",\n        -13.579537391662598\n      ],\n      [\n        \"▁influenza\",\n        -13.579537391662598\n      ],\n      [\n        \"▁psychiatrist\",\n        -13.579537391662598\n      ],\n      [\n        \"▁schizophrenia\",\n        -13.579537391662598\n      ],\n      [\n        \"▁Magnolia\",\n        -13.57953929901123\n      ],\n      [\n        \"▁Scottsdale\",\n        -13.579541206359863\n      ],\n      [\n        \"▁interessieren\",\n        -13.579548835754395\n      ],\n      [\n        \"▁asfalt\",\n        -13.579643249511719\n      ],\n      [\n        \"▁Journalism\",\n        -13.57977294921875\n      ],\n      [\n        \"Multe\",\n        -13.580089569091797\n      ],\n      [\n        \"Westfalen\",\n        -13.580347061157227\n      ],\n      [\n        \"▁Vorschriften\",\n        -13.580348014831543\n      ],\n      [\n        \"Angleterre\",\n        -13.58034896850586\n      ],\n      [\n        \"sustainable\",\n        -13.580354690551758\n      ],\n      [\n        \"▁Retour\",\n        -13.580589294433594\n      ],\n      [\n        \"▁pâr\",\n        -13.5809965133667\n      ],\n      [\n        \"steigert\",\n        -13.581120491027832\n      ],\n      [\n        \"▁AMAZING\",\n        -13.581157684326172\n      ],\n      [\n        \"▁turbulent\",\n        -13.581157684326172\n      ],\n      [\n        \"costing\",\n        -13.58155345916748\n      ],\n      [\n        \"▁Carolyn\",\n        -13.581634521484375\n      ],\n      [\n        \"utti\",\n        -13.581802368164062\n      ],\n      [\n        \"dürftig\",\n        -13.581968307495117\n      ],\n      [\n        \"Keep\",\n        -13.582038879394531\n      ],\n      [\n        \"▁Théâtre\",\n        -13.582780838012695\n      ],\n      [\n        \"▁combustibil\",\n        -13.582780838012695\n      ],\n      [\n        \"▁halloween\",\n        -13.582780838012695\n      ],\n      [\n        \"▁emulator\",\n        -13.582785606384277\n      ],\n      [\n        \"▁povești\",\n        -13.582785606384277\n      ],\n      [\n        \"broyeur\",\n        -13.582810401916504\n      ],\n      [\n        \"▁émerg\",\n        -13.582927703857422\n      ],\n      [\n        \"overwhelmingly\",\n        -13.583025932312012\n      ],\n      [\n        \"regulă\",\n        -13.583124160766602\n      ],\n      [\n        \"goutte\",\n        -13.583125114440918\n      ],\n      [\n        \"▁Fertigung\",\n        -13.583593368530273\n      ],\n      [\n        \"constituted\",\n        -13.584304809570312\n      ],\n      [\n        \"▁QuickBooks\",\n        -13.584406852722168\n      ],\n      [\n        \"▁genealogy\",\n        -13.584407806396484\n      ],\n      [\n        \"▁laundering\",\n        -13.584432601928711\n      ],\n      [\n        \"▁échéan\",\n        -13.584491729736328\n      ],\n      [\n        \"Account\",\n        -13.584601402282715\n      ],\n      [\n        \"oyons\",\n        -13.584792137145996\n      ],\n      [\n        \"nitro\",\n        -13.584905624389648\n      ],\n      [\n        \"▁corespund\",\n        -13.585219383239746\n      ],\n      [\n        \"▁suggér\",\n        -13.58527660369873\n      ],\n      [\n        \"manipulated\",\n        -13.585348129272461\n      ],\n      [\n        \"deseori\",\n        -13.585817337036133\n      ],\n      [\n        \"permeabil\",\n        -13.585912704467773\n      ],\n      [\n        \"Australia\",\n        -13.58594799041748\n      ],\n      [\n        \"▁Erasmus\",\n        -13.586034774780273\n      ],\n      [\n        \"▁disrespect\",\n        -13.586034774780273\n      ],\n      [\n        \"▁trimestre\",\n        -13.586038589477539\n      ],\n      [\n        \"▁emanat\",\n        -13.586103439331055\n      ],\n      [\n        \"Schraub\",\n        -13.58624267578125\n      ],\n      [\n        \"distinctly\",\n        -13.586319923400879\n      ],\n      [\n        \"Germain\",\n        -13.586637496948242\n      ],\n      [\n        \"▁pedepse\",\n        -13.5868501663208\n      ],\n      [\n        \"réglage\",\n        -13.5868558883667\n      ],\n      [\n        \"făcute\",\n        -13.587308883666992\n      ],\n      [\n        \"▁garanteaz\",\n        -13.587434768676758\n      ],\n      [\n        \"▁unterlieg\",\n        -13.587701797485352\n      ],\n      [\n        \"▁cheddar\",\n        -13.587712287902832\n      ],\n      [\n        \"▁refugi\",\n        -13.587756156921387\n      ],\n      [\n        \"▁inférieur\",\n        -13.587836265563965\n      ],\n      [\n        \"dimension\",\n        -13.588440895080566\n      ],\n      [\n        \"▁erkennt\",\n        -13.588570594787598\n      ],\n      [\n        \"amitié\",\n        -13.588632583618164\n      ],\n      [\n        \"▁predominant\",\n        -13.588680267333984\n      ],\n      [\n        \"nourishe\",\n        -13.588800430297852\n      ],\n      [\n        \"exerce\",\n        -13.588907241821289\n      ],\n      [\n        \"▁disguise\",\n        -13.589225769042969\n      ],\n      [\n        \"▁traditi\",\n        -13.589289665222168\n      ],\n      [\n        \"▁Intellectual\",\n        -13.5892972946167\n      ],\n      [\n        \"▁imunitar\",\n        -13.589299201965332\n      ],\n      [\n        \"▁Cushion\",\n        -13.589300155639648\n      ],\n      [\n        \"▁erwachsene\",\n        -13.589517593383789\n      ],\n      [\n        \"▁Internațional\",\n        -13.590115547180176\n      ],\n      [\n        \"<extra_id_99>\",\n        0.0\n      ],\n      [\n        \"<extra_id_98>\",\n        0.0\n      ],\n      [\n        \"<extra_id_97>\",\n        0.0\n      ],\n      [\n        \"<extra_id_96>\",\n        0.0\n      ],\n      [\n        \"<extra_id_95>\",\n        0.0\n      ],\n      [\n        \"<extra_id_94>\",\n        0.0\n      ],\n      [\n        \"<extra_id_93>\",\n        0.0\n      ],\n      [\n        \"<extra_id_92>\",\n        0.0\n      ],\n      [\n        \"<extra_id_91>\",\n        0.0\n      ],\n      [\n        \"<extra_id_90>\",\n        0.0\n      ],\n      [\n        \"<extra_id_89>\",\n        0.0\n      ],\n      [\n        \"<extra_id_88>\",\n        0.0\n      ],\n      [\n        \"<extra_id_87>\",\n        0.0\n      ],\n      [\n        \"<extra_id_86>\",\n        0.0\n      ],\n      [\n        \"<extra_id_85>\",\n        0.0\n      ],\n      [\n        \"<extra_id_84>\",\n        0.0\n      ],\n      [\n        \"<extra_id_83>\",\n        0.0\n      ],\n      [\n        \"<extra_id_82>\",\n        0.0\n      ],\n      [\n        \"<extra_id_81>\",\n        0.0\n      ],\n      [\n        \"<extra_id_80>\",\n        0.0\n      ],\n      [\n        \"<extra_id_79>\",\n        0.0\n      ],\n      [\n        \"<extra_id_78>\",\n        0.0\n      ],\n      [\n        \"<extra_id_77>\",\n        0.0\n      ],\n      [\n        \"<extra_id_76>\",\n        0.0\n      ],\n      [\n        \"<extra_id_75>\",\n        0.0\n      ],\n      [\n        \"<extra_id_74>\",\n        0.0\n      ],\n      [\n        \"<extra_id_73>\",\n        0.0\n      ],\n      [\n        \"<extra_id_72>\",\n        0.0\n      ],\n      [\n        \"<extra_id_71>\",\n        0.0\n      ],\n      [\n        \"<extra_id_70>\",\n        0.0\n      ],\n      [\n        \"<extra_id_69>\",\n        0.0\n      ],\n      [\n        \"<extra_id_68>\",\n        0.0\n      ],\n      [\n        \"<extra_id_67>\",\n        0.0\n      ],\n      [\n        \"<extra_id_66>\",\n        0.0\n      ],\n      [\n        \"<extra_id_65>\",\n        0.0\n      ],\n      [\n        \"<extra_id_64>\",\n        0.0\n      ],\n      [\n        \"<extra_id_63>\",\n        0.0\n      ],\n      [\n        \"<extra_id_62>\",\n        0.0\n      ],\n      [\n        \"<extra_id_61>\",\n        0.0\n      ],\n      [\n        \"<extra_id_60>\",\n        0.0\n      ],\n      [\n        \"<extra_id_59>\",\n        0.0\n      ],\n      [\n        \"<extra_id_58>\",\n        0.0\n      ],\n      [\n        \"<extra_id_57>\",\n        0.0\n      ],\n      [\n        \"<extra_id_56>\",\n        0.0\n      ],\n      [\n        \"<extra_id_55>\",\n        0.0\n      ],\n      [\n        \"<extra_id_54>\",\n        0.0\n      ],\n      [\n        \"<extra_id_53>\",\n        0.0\n      ],\n      [\n        \"<extra_id_52>\",\n        0.0\n      ],\n      [\n        \"<extra_id_51>\",\n        0.0\n      ],\n      [\n        \"<extra_id_50>\",\n        0.0\n      ],\n      [\n        \"<extra_id_49>\",\n        0.0\n      ],\n      [\n        \"<extra_id_48>\",\n        0.0\n      ],\n      [\n        \"<extra_id_47>\",\n        0.0\n      ],\n      [\n        \"<extra_id_46>\",\n        0.0\n      ],\n      [\n        \"<extra_id_45>\",\n        0.0\n      ],\n      [\n        \"<extra_id_44>\",\n        0.0\n      ],\n      [\n        \"<extra_id_43>\",\n        0.0\n      ],\n      [\n        \"<extra_id_42>\",\n        0.0\n      ],\n      [\n        \"<extra_id_41>\",\n        0.0\n      ],\n      [\n        \"<extra_id_40>\",\n        0.0\n      ],\n      [\n        \"<extra_id_39>\",\n        0.0\n      ],\n      [\n        \"<extra_id_38>\",\n        0.0\n      ],\n      [\n        \"<extra_id_37>\",\n        0.0\n      ],\n      [\n        \"<extra_id_36>\",\n        0.0\n      ],\n      [\n        \"<extra_id_35>\",\n        0.0\n      ],\n      [\n        \"<extra_id_34>\",\n        0.0\n      ],\n      [\n        \"<extra_id_33>\",\n        0.0\n      ],\n      [\n        \"<extra_id_32>\",\n        0.0\n      ],\n      [\n        \"<extra_id_31>\",\n        0.0\n      ],\n      [\n        \"<extra_id_30>\",\n        0.0\n      ],\n      [\n        \"<extra_id_29>\",\n        0.0\n      ],\n      [\n        \"<extra_id_28>\",\n        0.0\n      ],\n      [\n        \"<extra_id_27>\",\n        0.0\n      ],\n      [\n        \"<extra_id_26>\",\n        0.0\n      ],\n      [\n        \"<extra_id_25>\",\n        0.0\n      ],\n      [\n        \"<extra_id_24>\",\n        0.0\n      ],\n      [\n        \"<extra_id_23>\",\n        0.0\n      ],\n      [\n        \"<extra_id_22>\",\n        0.0\n      ],\n      [\n        \"<extra_id_21>\",\n        0.0\n      ],\n      [\n        \"<extra_id_20>\",\n        0.0\n      ],\n      [\n        \"<extra_id_19>\",\n        0.0\n      ],\n      [\n        \"<extra_id_18>\",\n        0.0\n      ],\n      [\n        \"<extra_id_17>\",\n        0.0\n      ],\n      [\n        \"<extra_id_16>\",\n        0.0\n      ],\n      [\n        \"<extra_id_15>\",\n        0.0\n      ],\n      [\n        \"<extra_id_14>\",\n        0.0\n      ],\n      [\n        \"<extra_id_13>\",\n        0.0\n      ],\n      [\n        \"<extra_id_12>\",\n        0.0\n      ],\n      [\n        \"<extra_id_11>\",\n        0.0\n      ],\n      [\n        \"<extra_id_10>\",\n        0.0\n      ],\n      [\n        \"<extra_id_9>\",\n        0.0\n      ],\n      [\n        \"<extra_id_8>\",\n        0.0\n      ],\n      [\n        \"<extra_id_7>\",\n        0.0\n      ],\n      [\n        \"<extra_id_6>\",\n        0.0\n      ],\n      [\n        \"<extra_id_5>\",\n        0.0\n      ],\n      [\n        \"<extra_id_4>\",\n        0.0\n      ],\n      [\n        \"<extra_id_3>\",\n        0.0\n      ],\n      [\n        \"<extra_id_2>\",\n        0.0\n      ],\n      [\n        \"<extra_id_1>\",\n        0.0\n      ],\n      [\n        \"<extra_id_0>\",\n        0.0\n      ]\n    ],\n    \"byte_fallback\": false\n  }\n}\n"
  },
  {
    "path": "configs/flux/tokenizer_2/tokenizer_config.json",
    "content": "{\n  \"add_prefix_space\": true,\n  \"added_tokens_decoder\": {\n    \"0\": {\n      \"content\": \"<pad>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"1\": {\n      \"content\": \"</s>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"2\": {\n      \"content\": \"<unk>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32000\": {\n      \"content\": \"<extra_id_99>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32001\": {\n      \"content\": \"<extra_id_98>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32002\": {\n      \"content\": \"<extra_id_97>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32003\": {\n      \"content\": \"<extra_id_96>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32004\": {\n      \"content\": \"<extra_id_95>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32005\": {\n      \"content\": \"<extra_id_94>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32006\": {\n      \"content\": \"<extra_id_93>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32007\": {\n      \"content\": \"<extra_id_92>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32008\": {\n      \"content\": \"<extra_id_91>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32009\": {\n      \"content\": \"<extra_id_90>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32010\": {\n      \"content\": \"<extra_id_89>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32011\": {\n      \"content\": \"<extra_id_88>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32012\": {\n      \"content\": \"<extra_id_87>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32013\": {\n      \"content\": \"<extra_id_86>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32014\": {\n      \"content\": \"<extra_id_85>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32015\": {\n      \"content\": \"<extra_id_84>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32016\": {\n      \"content\": \"<extra_id_83>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32017\": {\n      \"content\": \"<extra_id_82>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32018\": {\n      \"content\": \"<extra_id_81>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32019\": {\n      \"content\": \"<extra_id_80>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32020\": {\n      \"content\": \"<extra_id_79>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32021\": {\n      \"content\": \"<extra_id_78>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32022\": {\n      \"content\": \"<extra_id_77>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32023\": {\n      \"content\": \"<extra_id_76>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32024\": {\n      \"content\": \"<extra_id_75>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32025\": {\n      \"content\": \"<extra_id_74>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32026\": {\n      \"content\": \"<extra_id_73>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32027\": {\n      \"content\": \"<extra_id_72>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32028\": {\n      \"content\": \"<extra_id_71>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32029\": {\n      \"content\": \"<extra_id_70>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32030\": {\n      \"content\": \"<extra_id_69>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32031\": {\n      \"content\": \"<extra_id_68>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32032\": {\n      \"content\": \"<extra_id_67>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32033\": {\n      \"content\": \"<extra_id_66>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32034\": {\n      \"content\": \"<extra_id_65>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32035\": {\n      \"content\": \"<extra_id_64>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32036\": {\n      \"content\": \"<extra_id_63>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32037\": {\n      \"content\": \"<extra_id_62>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32038\": {\n      \"content\": \"<extra_id_61>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32039\": {\n      \"content\": \"<extra_id_60>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32040\": {\n      \"content\": \"<extra_id_59>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32041\": {\n      \"content\": \"<extra_id_58>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32042\": {\n      \"content\": \"<extra_id_57>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32043\": {\n      \"content\": \"<extra_id_56>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32044\": {\n      \"content\": \"<extra_id_55>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32045\": {\n      \"content\": \"<extra_id_54>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32046\": {\n      \"content\": \"<extra_id_53>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32047\": {\n      \"content\": \"<extra_id_52>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32048\": {\n      \"content\": \"<extra_id_51>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32049\": {\n      \"content\": \"<extra_id_50>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32050\": {\n      \"content\": \"<extra_id_49>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32051\": {\n      \"content\": \"<extra_id_48>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32052\": {\n      \"content\": \"<extra_id_47>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32053\": {\n      \"content\": \"<extra_id_46>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32054\": {\n      \"content\": \"<extra_id_45>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32055\": {\n      \"content\": \"<extra_id_44>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32056\": {\n      \"content\": \"<extra_id_43>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32057\": {\n      \"content\": \"<extra_id_42>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32058\": {\n      \"content\": \"<extra_id_41>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32059\": {\n      \"content\": \"<extra_id_40>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32060\": {\n      \"content\": \"<extra_id_39>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32061\": {\n      \"content\": \"<extra_id_38>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32062\": {\n      \"content\": \"<extra_id_37>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32063\": {\n      \"content\": \"<extra_id_36>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32064\": {\n      \"content\": \"<extra_id_35>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32065\": {\n      \"content\": \"<extra_id_34>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32066\": {\n      \"content\": \"<extra_id_33>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32067\": {\n      \"content\": \"<extra_id_32>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32068\": {\n      \"content\": \"<extra_id_31>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32069\": {\n      \"content\": \"<extra_id_30>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32070\": {\n      \"content\": \"<extra_id_29>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32071\": {\n      \"content\": \"<extra_id_28>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32072\": {\n      \"content\": \"<extra_id_27>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32073\": {\n      \"content\": \"<extra_id_26>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32074\": {\n      \"content\": \"<extra_id_25>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32075\": {\n      \"content\": \"<extra_id_24>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32076\": {\n      \"content\": \"<extra_id_23>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32077\": {\n      \"content\": \"<extra_id_22>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32078\": {\n      \"content\": \"<extra_id_21>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32079\": {\n      \"content\": \"<extra_id_20>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32080\": {\n      \"content\": \"<extra_id_19>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32081\": {\n      \"content\": \"<extra_id_18>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32082\": {\n      \"content\": \"<extra_id_17>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32083\": {\n      \"content\": \"<extra_id_16>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32084\": {\n      \"content\": \"<extra_id_15>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32085\": {\n      \"content\": \"<extra_id_14>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32086\": {\n      \"content\": \"<extra_id_13>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32087\": {\n      \"content\": \"<extra_id_12>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32088\": {\n      \"content\": \"<extra_id_11>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32089\": {\n      \"content\": \"<extra_id_10>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32090\": {\n      \"content\": \"<extra_id_9>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32091\": {\n      \"content\": \"<extra_id_8>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32092\": {\n      \"content\": \"<extra_id_7>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32093\": {\n      \"content\": \"<extra_id_6>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32094\": {\n      \"content\": \"<extra_id_5>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32095\": {\n      \"content\": \"<extra_id_4>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32096\": {\n      \"content\": \"<extra_id_3>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32097\": {\n      \"content\": \"<extra_id_2>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32098\": {\n      \"content\": \"<extra_id_1>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32099\": {\n      \"content\": \"<extra_id_0>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    }\n  },\n  \"additional_special_tokens\": [\n    \"<extra_id_0>\",\n    \"<extra_id_1>\",\n    \"<extra_id_2>\",\n    \"<extra_id_3>\",\n    \"<extra_id_4>\",\n    \"<extra_id_5>\",\n    \"<extra_id_6>\",\n    \"<extra_id_7>\",\n    \"<extra_id_8>\",\n    \"<extra_id_9>\",\n    \"<extra_id_10>\",\n    \"<extra_id_11>\",\n    \"<extra_id_12>\",\n    \"<extra_id_13>\",\n    \"<extra_id_14>\",\n    \"<extra_id_15>\",\n    \"<extra_id_16>\",\n    \"<extra_id_17>\",\n    \"<extra_id_18>\",\n    \"<extra_id_19>\",\n    \"<extra_id_20>\",\n    \"<extra_id_21>\",\n    \"<extra_id_22>\",\n    \"<extra_id_23>\",\n    \"<extra_id_24>\",\n    \"<extra_id_25>\",\n    \"<extra_id_26>\",\n    \"<extra_id_27>\",\n    \"<extra_id_28>\",\n    \"<extra_id_29>\",\n    \"<extra_id_30>\",\n    \"<extra_id_31>\",\n    \"<extra_id_32>\",\n    \"<extra_id_33>\",\n    \"<extra_id_34>\",\n    \"<extra_id_35>\",\n    \"<extra_id_36>\",\n    \"<extra_id_37>\",\n    \"<extra_id_38>\",\n    \"<extra_id_39>\",\n    \"<extra_id_40>\",\n    \"<extra_id_41>\",\n    \"<extra_id_42>\",\n    \"<extra_id_43>\",\n    \"<extra_id_44>\",\n    \"<extra_id_45>\",\n    \"<extra_id_46>\",\n    \"<extra_id_47>\",\n    \"<extra_id_48>\",\n    \"<extra_id_49>\",\n    \"<extra_id_50>\",\n    \"<extra_id_51>\",\n    \"<extra_id_52>\",\n    \"<extra_id_53>\",\n    \"<extra_id_54>\",\n    \"<extra_id_55>\",\n    \"<extra_id_56>\",\n    \"<extra_id_57>\",\n    \"<extra_id_58>\",\n    \"<extra_id_59>\",\n    \"<extra_id_60>\",\n    \"<extra_id_61>\",\n    \"<extra_id_62>\",\n    \"<extra_id_63>\",\n    \"<extra_id_64>\",\n    \"<extra_id_65>\",\n    \"<extra_id_66>\",\n    \"<extra_id_67>\",\n    \"<extra_id_68>\",\n    \"<extra_id_69>\",\n    \"<extra_id_70>\",\n    \"<extra_id_71>\",\n    \"<extra_id_72>\",\n    \"<extra_id_73>\",\n    \"<extra_id_74>\",\n    \"<extra_id_75>\",\n    \"<extra_id_76>\",\n    \"<extra_id_77>\",\n    \"<extra_id_78>\",\n    \"<extra_id_79>\",\n    \"<extra_id_80>\",\n    \"<extra_id_81>\",\n    \"<extra_id_82>\",\n    \"<extra_id_83>\",\n    \"<extra_id_84>\",\n    \"<extra_id_85>\",\n    \"<extra_id_86>\",\n    \"<extra_id_87>\",\n    \"<extra_id_88>\",\n    \"<extra_id_89>\",\n    \"<extra_id_90>\",\n    \"<extra_id_91>\",\n    \"<extra_id_92>\",\n    \"<extra_id_93>\",\n    \"<extra_id_94>\",\n    \"<extra_id_95>\",\n    \"<extra_id_96>\",\n    \"<extra_id_97>\",\n    \"<extra_id_98>\",\n    \"<extra_id_99>\"\n  ],\n  \"clean_up_tokenization_spaces\": true,\n  \"eos_token\": \"</s>\",\n  \"extra_ids\": 100,\n  \"legacy\": true,\n  \"model_max_length\": 512,\n  \"pad_token\": \"<pad>\",\n  \"sp_model_kwargs\": {},\n  \"tokenizer_class\": \"T5Tokenizer\",\n  \"unk_token\": \"<unk>\"\n}\n"
  },
  {
    "path": "configs/flux/transformer/config.json",
    "content": "{\n  \"_class_name\": \"FluxTransformer2DModel\",\n  \"_diffusers_version\": \"0.30.0.dev0\",\n  \"attention_head_dim\": 128,\n  \"guidance_embeds\": false,\n  \"in_channels\": 64,\n  \"joint_attention_dim\": 4096,\n  \"num_attention_heads\": 24,\n  \"num_layers\": 19,\n  \"num_single_layers\": 38,\n  \"patch_size\": 1,\n  \"pooled_projection_dim\": 768\n}\n"
  },
  {
    "path": "configs/flux/transformer/diffusion_pytorch_model.safetensors.index.json",
    "content": "{\n  \"metadata\": {\n    \"total_size\": 23782357120\n  },\n  \"weight_map\": {\n    \"context_embedder.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"context_embedder.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"norm_out.linear.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"norm_out.linear.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"proj_out.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"proj_out.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.0.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.0.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.0.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.0.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.0.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.0.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.0.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.0.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.0.norm.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.0.norm.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.0.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.0.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.0.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.0.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.1.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.1.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.1.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.1.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.1.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.1.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.1.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.1.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.1.norm.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.1.norm.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.1.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.1.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.1.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.1.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.10.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.10.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.10.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.10.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.10.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.10.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.10.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.10.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.10.norm.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.10.norm.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.10.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.10.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.10.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.10.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.11.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.11.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.11.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.11.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.11.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.11.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.11.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.11.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.11.norm.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.11.norm.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.11.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.11.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.11.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.11.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.12.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.12.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.12.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.12.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.12.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.12.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.12.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.12.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.12.norm.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.12.norm.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.12.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.12.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.12.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.12.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.13.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.13.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.13.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.13.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.13.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.13.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.13.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.13.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.13.norm.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.13.norm.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.13.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.13.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.13.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.13.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.14.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.14.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.14.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.14.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.14.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.14.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.14.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.14.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.14.norm.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.14.norm.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.14.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.14.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.14.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.14.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.15.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.15.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.15.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.15.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.15.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.15.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.15.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.15.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.15.norm.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.15.norm.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.15.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.15.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.15.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.15.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.16.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.16.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.16.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.16.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.16.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.16.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.16.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.16.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.16.norm.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.16.norm.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.16.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.16.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.16.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.16.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.17.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.17.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.17.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.17.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.17.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.17.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.17.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.17.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.17.norm.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.17.norm.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.17.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.17.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.17.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.17.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.18.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.18.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.18.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.18.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.18.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.18.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.18.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.18.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.18.norm.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.18.norm.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.18.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.18.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.18.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.18.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.19.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.19.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.19.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.19.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.19.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.19.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.19.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.19.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.19.norm.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.19.norm.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.19.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.19.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.19.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.19.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.2.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.2.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.2.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.2.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.2.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.2.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.2.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.2.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.2.norm.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.2.norm.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.2.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.2.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.2.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.2.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.20.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.20.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.20.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.20.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.20.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.20.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.20.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.20.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.20.norm.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.20.norm.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.20.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.20.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.20.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.20.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.21.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.21.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.21.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.21.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.21.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.21.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.21.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.21.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.21.norm.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.21.norm.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.21.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.21.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.21.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.21.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.22.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.22.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.22.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.22.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.22.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.22.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.22.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.22.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.22.norm.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.22.norm.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.22.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.22.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.22.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.22.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.23.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.23.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.23.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.23.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.23.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.23.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.23.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.23.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.23.norm.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.23.norm.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.23.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.23.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.23.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.23.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.24.attn.norm_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.24.attn.norm_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.24.attn.to_k.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.24.attn.to_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.24.attn.to_q.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.24.attn.to_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.24.attn.to_v.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.24.attn.to_v.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.24.norm.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.24.norm.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.24.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.24.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.24.proj_out.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.24.proj_out.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.25.attn.norm_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.25.attn.norm_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.25.attn.to_k.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.25.attn.to_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.25.attn.to_q.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.25.attn.to_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.25.attn.to_v.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.25.attn.to_v.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.25.norm.linear.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.25.norm.linear.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.25.proj_mlp.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.25.proj_mlp.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.25.proj_out.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.25.proj_out.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.26.attn.norm_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.26.attn.norm_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.26.attn.to_k.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.26.attn.to_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.26.attn.to_q.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.26.attn.to_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.26.attn.to_v.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.26.attn.to_v.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.26.norm.linear.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.26.norm.linear.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.26.proj_mlp.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.26.proj_mlp.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.26.proj_out.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.26.proj_out.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.27.attn.norm_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.27.attn.norm_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.27.attn.to_k.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.27.attn.to_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.27.attn.to_q.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.27.attn.to_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.27.attn.to_v.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.27.attn.to_v.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.27.norm.linear.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.27.norm.linear.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.27.proj_mlp.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.27.proj_mlp.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.27.proj_out.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.27.proj_out.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.28.attn.norm_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.28.attn.norm_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.28.attn.to_k.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.28.attn.to_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.28.attn.to_q.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.28.attn.to_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.28.attn.to_v.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.28.attn.to_v.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.28.norm.linear.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.28.norm.linear.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.28.proj_mlp.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.28.proj_mlp.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.28.proj_out.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.28.proj_out.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.29.attn.norm_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.29.attn.norm_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.29.attn.to_k.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.29.attn.to_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.29.attn.to_q.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.29.attn.to_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.29.attn.to_v.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.29.attn.to_v.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.29.norm.linear.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.29.norm.linear.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.29.proj_mlp.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.29.proj_mlp.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.29.proj_out.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.29.proj_out.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.3.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.3.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.3.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.3.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.3.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.3.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.3.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.3.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.3.norm.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.3.norm.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.3.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.3.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.3.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.3.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.30.attn.norm_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.30.attn.norm_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.30.attn.to_k.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.30.attn.to_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.30.attn.to_q.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.30.attn.to_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.30.attn.to_v.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.30.attn.to_v.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.30.norm.linear.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.30.norm.linear.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.30.proj_mlp.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.30.proj_mlp.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.30.proj_out.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.30.proj_out.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.31.attn.norm_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.31.attn.norm_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.31.attn.to_k.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.31.attn.to_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.31.attn.to_q.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.31.attn.to_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.31.attn.to_v.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.31.attn.to_v.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.31.norm.linear.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.31.norm.linear.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.31.proj_mlp.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.31.proj_mlp.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.31.proj_out.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.31.proj_out.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.32.attn.norm_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.32.attn.norm_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.32.attn.to_k.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.32.attn.to_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.32.attn.to_q.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.32.attn.to_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.32.attn.to_v.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.32.attn.to_v.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.32.norm.linear.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.32.norm.linear.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.32.proj_mlp.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.32.proj_mlp.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.32.proj_out.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.32.proj_out.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.33.attn.norm_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.33.attn.norm_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.33.attn.to_k.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.33.attn.to_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.33.attn.to_q.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.33.attn.to_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.33.attn.to_v.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.33.attn.to_v.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.33.norm.linear.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.33.norm.linear.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.33.proj_mlp.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.33.proj_mlp.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.33.proj_out.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.33.proj_out.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.34.attn.norm_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.34.attn.norm_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.34.attn.to_k.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.34.attn.to_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.34.attn.to_q.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.34.attn.to_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.34.attn.to_v.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.34.attn.to_v.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.34.norm.linear.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.34.norm.linear.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.34.proj_mlp.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.34.proj_mlp.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.34.proj_out.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.34.proj_out.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.35.attn.norm_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.35.attn.norm_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.35.attn.to_k.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.35.attn.to_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.35.attn.to_q.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.35.attn.to_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.35.attn.to_v.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.35.attn.to_v.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.35.norm.linear.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.35.norm.linear.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.35.proj_mlp.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.35.proj_mlp.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.35.proj_out.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.35.proj_out.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.36.attn.norm_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.36.attn.norm_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.36.attn.to_k.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.36.attn.to_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.36.attn.to_q.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.36.attn.to_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.36.attn.to_v.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.36.attn.to_v.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.36.norm.linear.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.36.norm.linear.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.36.proj_mlp.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.36.proj_mlp.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.36.proj_out.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.36.proj_out.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.37.attn.norm_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.37.attn.norm_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.37.attn.to_k.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.37.attn.to_k.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.37.attn.to_q.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.37.attn.to_q.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.37.attn.to_v.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.37.attn.to_v.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.37.norm.linear.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.37.norm.linear.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.37.proj_mlp.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.37.proj_mlp.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.37.proj_out.bias\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.37.proj_out.weight\": \"diffusion_pytorch_model-00003-of-00003.safetensors\",\n    \"single_transformer_blocks.4.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.4.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.4.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.4.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.4.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.4.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.4.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.4.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.4.norm.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.4.norm.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.4.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.4.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.4.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.4.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.5.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.5.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.5.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.5.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.5.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.5.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.5.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.5.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.5.norm.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.5.norm.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.5.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.5.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.5.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.5.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.6.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.6.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.6.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.6.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.6.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.6.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.6.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.6.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.6.norm.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.6.norm.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.6.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.6.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.6.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.6.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.7.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.7.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.7.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.7.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.7.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.7.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.7.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.7.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.7.norm.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.7.norm.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.7.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.7.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.7.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.7.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.8.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.8.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.8.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.8.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.8.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.8.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.8.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.8.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.8.norm.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.8.norm.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.8.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.8.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.8.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.8.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.9.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.9.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.9.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.9.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.9.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.9.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.9.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.9.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.9.norm.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.9.norm.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.9.proj_mlp.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.9.proj_mlp.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.9.proj_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"single_transformer_blocks.9.proj_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"time_text_embed.text_embedder.linear_1.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"time_text_embed.text_embedder.linear_1.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"time_text_embed.text_embedder.linear_2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"time_text_embed.text_embedder.linear_2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"time_text_embed.timestep_embedder.linear_1.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"time_text_embed.timestep_embedder.linear_1.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"time_text_embed.timestep_embedder.linear_2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"time_text_embed.timestep_embedder.linear_2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.norm1.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.norm1.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.norm1_context.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.0.norm1_context.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.norm1.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.norm1.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.norm1_context.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.1.norm1_context.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.norm1.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.norm1.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.norm1_context.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.10.norm1_context.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.norm1.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.norm1.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.norm1_context.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.11.norm1_context.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.norm1.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.norm1.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.norm1_context.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.12.norm1_context.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.norm1.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.norm1.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.norm1_context.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.13.norm1_context.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.14.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.14.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.14.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.14.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.14.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.14.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.14.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.14.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.14.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.14.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.14.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.14.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.14.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.14.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.14.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.14.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.14.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.14.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.14.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.14.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.14.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.14.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.14.ff.net.2.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.14.ff.net.2.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.14.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.14.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.14.ff_context.net.2.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.14.ff_context.net.2.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.14.norm1.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.14.norm1.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.14.norm1_context.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.14.norm1_context.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.15.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.attn.to_add_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.attn.to_add_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.attn.to_out.0.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.attn.to_out.0.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.ff.net.2.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.ff.net.2.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.ff_context.net.2.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.ff_context.net.2.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.norm1.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.norm1.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.norm1_context.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.15.norm1_context.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.attn.to_add_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.attn.to_add_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.attn.to_out.0.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.attn.to_out.0.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.ff.net.2.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.ff.net.2.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.ff_context.net.2.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.ff_context.net.2.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.norm1.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.norm1.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.norm1_context.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.16.norm1_context.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.attn.to_add_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.attn.to_add_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.attn.to_out.0.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.attn.to_out.0.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.ff.net.2.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.ff.net.2.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.ff_context.net.2.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.ff_context.net.2.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.norm1.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.norm1.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.norm1_context.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.17.norm1_context.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.attn.norm_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.attn.norm_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.attn.to_add_out.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.attn.to_add_out.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.attn.to_k.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.attn.to_k.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.attn.to_out.0.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.attn.to_out.0.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.attn.to_q.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.attn.to_q.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.attn.to_v.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.attn.to_v.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.ff.net.2.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.ff.net.2.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.ff_context.net.2.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.ff_context.net.2.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.norm1.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.norm1.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.norm1_context.linear.bias\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.18.norm1_context.linear.weight\": \"diffusion_pytorch_model-00002-of-00003.safetensors\",\n    \"transformer_blocks.2.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.norm1.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.norm1.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.norm1_context.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.2.norm1_context.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.norm1.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.norm1.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.norm1_context.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.3.norm1_context.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.norm1.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.norm1.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.norm1_context.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.4.norm1_context.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.norm1.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.norm1.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.norm1_context.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.5.norm1_context.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.norm1.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.norm1.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.norm1_context.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.6.norm1_context.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.norm1.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.norm1.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.norm1_context.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.7.norm1_context.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.norm1.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.norm1.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.norm1_context.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.8.norm1_context.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.attn.add_k_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.attn.add_k_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.attn.add_q_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.attn.add_q_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.attn.add_v_proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.attn.add_v_proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.attn.norm_added_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.attn.norm_added_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.attn.norm_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.attn.norm_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.attn.to_add_out.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.attn.to_add_out.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.attn.to_k.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.attn.to_k.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.attn.to_out.0.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.attn.to_out.0.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.attn.to_q.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.attn.to_q.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.attn.to_v.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.attn.to_v.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.ff.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.ff.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.ff.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.ff.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.ff_context.net.0.proj.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.ff_context.net.0.proj.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.ff_context.net.2.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.ff_context.net.2.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.norm1.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.norm1.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.norm1_context.linear.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"transformer_blocks.9.norm1_context.linear.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"x_embedder.bias\": \"diffusion_pytorch_model-00001-of-00003.safetensors\",\n    \"x_embedder.weight\": \"diffusion_pytorch_model-00001-of-00003.safetensors\"\n  }\n}\n"
  },
  {
    "path": "configs/flux/vae/config.json",
    "content": "{\n  \"_class_name\": \"AutoencoderKL\",\n  \"_diffusers_version\": \"0.30.0.dev0\",\n  \"act_fn\": \"silu\",\n  \"block_out_channels\": [\n    128,\n    256,\n    512,\n    512\n  ],\n  \"down_block_types\": [\n    \"DownEncoderBlock2D\",\n    \"DownEncoderBlock2D\",\n    \"DownEncoderBlock2D\",\n    \"DownEncoderBlock2D\"\n  ],\n  \"force_upcast\": false,\n  \"in_channels\": 3,\n  \"latent_channels\": 16,\n  \"latents_mean\": null,\n  \"latents_std\": null,\n  \"layers_per_block\": 2,\n  \"mid_block_add_attention\": true,\n  \"norm_num_groups\": 32,\n  \"out_channels\": 3,\n  \"sample_size\": 1024,\n  \"scaling_factor\": 0.3611,\n  \"shift_factor\": 0.1159,\n  \"up_block_types\": [\n    \"UpDecoderBlock2D\",\n    \"UpDecoderBlock2D\",\n    \"UpDecoderBlock2D\",\n    \"UpDecoderBlock2D\"\n  ],\n  \"use_post_quant_conv\": false,\n  \"use_quant_conv\": false\n}\n"
  },
  {
    "path": "configs/olive/sd/text_encoder.json",
    "content": "{\n  \"input_model\": {\n    \"type\": \"PyTorchModel\",\n    \"config\": {\n      \"model_path\": \"\",\n      \"model_loader\": \"text_encoder_load\",\n      \"model_script\": \"modules/olive_script.py\",\n      \"io_config\": {\n        \"input_names\": [\"input_ids\"],\n        \"output_names\": [\"last_hidden_state\", \"pooler_output\"],\n        \"dynamic_axes\": { \"input_ids\": { \"0\": \"batch\", \"1\": \"sequence\" } }\n      },\n      \"dummy_inputs_func\": \"text_encoder_conversion_inputs\"\n    }\n  },\n  \"systems\": {\n    \"local_system\": {\n      \"type\": \"LocalSystem\",\n      \"config\": {\n        \"accelerators\": [\n          {\n            \"device\": \"gpu\",\n            \"execution_providers\": [\"DmlExecutionProvider\"]\n          }\n        ]\n      }\n    }\n  },\n  \"evaluators\": {\n    \"common_evaluator\": {\n      \"metrics\": [\n        {\n          \"name\": \"latency\",\n          \"type\": \"latency\",\n          \"sub_types\": [{ \"name\": \"avg\" }],\n          \"user_config\": {\n            \"user_script\": \"modules/olive_script.py\",\n            \"dataloader_func\": \"text_encoder_data_loader\",\n            \"batch_size\": 1\n          }\n        }\n      ]\n    }\n  },\n  \"passes\": {\n    \"optimize_CPUExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"clip\",\n        \"opt_level\": 0,\n        \"float16\": false,\n        \"use_gpu\": false,\n        \"keep_io_types\": false\n      }\n    },\n    \"optimize_DmlExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"clip\",\n        \"opt_level\": 0,\n        \"float16\": true,\n        \"use_gpu\": true,\n        \"keep_io_types\": false,\n        \"optimization_options\": {\n          \"enable_gelu\": true,\n          \"enable_layer_norm\": true,\n          \"enable_attention\": true,\n          \"use_multi_head_attention\": true,\n          \"enable_skip_layer_norm\": false,\n          \"enable_embed_layer_norm\": true,\n          \"enable_bias_skip_layer_norm\": false,\n          \"enable_bias_gelu\": true,\n          \"enable_gelu_approximation\": false,\n          \"enable_qordered_matmul\": false,\n          \"enable_shape_inference\": true,\n          \"enable_gemm_fast_gelu\": false,\n          \"enable_nhwc_conv\": false,\n          \"enable_group_norm\": true,\n          \"enable_bias_splitgelu\": false,\n          \"enable_packed_qkv\": true,\n          \"enable_packed_kv\": true,\n          \"enable_bias_add\": false,\n          \"group_norm_channels_last\": false\n        },\n        \"force_fp32_ops\": [\"RandomNormalLike\"],\n        \"force_fp16_inputs\": {\n          \"GroupNorm\": [0, 1, 2]\n        }\n      }\n    },\n    \"optimize_CUDAExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"clip\",\n        \"opt_level\": 0,\n        \"float16\": true,\n        \"use_gpu\": true,\n        \"keep_io_types\": false\n      }\n    },\n    \"optimize_ROCMExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"clip\",\n        \"opt_level\": 0,\n        \"float16\": true,\n        \"use_gpu\": true,\n        \"keep_io_types\": false\n      }\n    },\n    \"quantization\": {\n      \"type\": \"OnnxDynamicQuantization\",\n      \"disable_search\": true,\n      \"config\": {\n        \"save_as_external_data\": false,\n        \"all_tensors_to_one_file\": true,\n        \"per_channel\": false,\n        \"reduce_range\": false,\n        \"MatMulConstBOnly\": true\n      }\n    }\n  },\n  \"pass_flows\": [[\"optimize_AutoExecutionProvider\"]],\n  \"engine\": {\n    \"log_severity_level\": 0,\n    \"evaluator\": \"common_evaluator\",\n    \"evaluate_input_model\": false,\n    \"host\": \"local_system\",\n    \"target\": \"local_system\",\n    \"cache_dir\": \"cache\",\n    \"output_name\": \"text_encoder\",\n    \"output_dir\": \"footprints\"\n  }\n}\n"
  },
  {
    "path": "configs/olive/sd/unet.json",
    "content": "{\n  \"input_model\": {\n    \"type\": \"PyTorchModel\",\n    \"config\": {\n      \"model_path\": \"\",\n      \"model_loader\": \"unet_load\",\n      \"model_script\": \"modules/olive_script.py\",\n      \"io_config\": {\n        \"input_names\": [\n          \"sample\",\n          \"timestep\",\n          \"encoder_hidden_states\",\n          \"return_dict\"\n        ],\n        \"output_names\": [\"out_sample\"],\n        \"dynamic_axes\": {\n          \"sample\": {\n            \"0\": \"unet_sample_batch\",\n            \"1\": \"unet_sample_channels\",\n            \"2\": \"unet_sample_height\",\n            \"3\": \"unet_sample_width\"\n          },\n          \"timestep\": { \"0\": \"unet_time_batch\" },\n          \"encoder_hidden_states\": {\n            \"0\": \"unet_hidden_batch\",\n            \"1\": \"unet_hidden_sequence\"\n          }\n        }\n      },\n      \"dummy_inputs_func\": \"unet_conversion_inputs\"\n    }\n  },\n  \"systems\": {\n    \"local_system\": {\n      \"type\": \"LocalSystem\",\n      \"config\": {\n        \"accelerators\": [\n          {\n            \"device\": \"gpu\",\n            \"execution_providers\": [\"DmlExecutionProvider\"]\n          }\n        ]\n      }\n    }\n  },\n  \"evaluators\": {\n    \"common_evaluator\": {\n      \"metrics\": [\n        {\n          \"name\": \"latency\",\n          \"type\": \"latency\",\n          \"sub_types\": [{ \"name\": \"avg\" }],\n          \"user_config\": {\n            \"user_script\": \"modules/olive_script.py\",\n            \"dataloader_func\": \"unet_data_loader\",\n            \"batch_size\": 2\n          }\n        }\n      ]\n    }\n  },\n  \"passes\": {\n    \"optimize_CPUExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"clip\",\n        \"opt_level\": 0,\n        \"float16\": false,\n        \"use_gpu\": false,\n        \"keep_io_types\": false\n      }\n    },\n    \"optimize_DmlExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"unet\",\n        \"opt_level\": 0,\n        \"float16\": true,\n        \"use_gpu\": true,\n        \"keep_io_types\": false,\n        \"optimization_options\": {\n          \"enable_gelu\": true,\n          \"enable_layer_norm\": true,\n          \"enable_attention\": true,\n          \"use_multi_head_attention\": true,\n          \"enable_skip_layer_norm\": false,\n          \"enable_embed_layer_norm\": true,\n          \"enable_bias_skip_layer_norm\": false,\n          \"enable_bias_gelu\": true,\n          \"enable_gelu_approximation\": false,\n          \"enable_qordered_matmul\": false,\n          \"enable_shape_inference\": true,\n          \"enable_gemm_fast_gelu\": false,\n          \"enable_nhwc_conv\": false,\n          \"enable_group_norm\": true,\n          \"enable_bias_splitgelu\": false,\n          \"enable_packed_qkv\": true,\n          \"enable_packed_kv\": true,\n          \"enable_bias_add\": false,\n          \"group_norm_channels_last\": false\n        },\n        \"force_fp32_ops\": [\"RandomNormalLike\"],\n        \"force_fp16_inputs\": {\n          \"GroupNorm\": [0, 1, 2]\n        }\n      }\n    },\n    \"optimize_CUDAExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"unet\",\n        \"opt_level\": 0,\n        \"float16\": true,\n        \"use_gpu\": true,\n        \"keep_io_types\": false\n      }\n    },\n    \"optimize_ROCMExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"unet\",\n        \"opt_level\": 0,\n        \"float16\": true,\n        \"use_gpu\": true,\n        \"keep_io_types\": false\n      }\n    },\n    \"quantization\": {\n      \"type\": \"OnnxDynamicQuantization\",\n      \"disable_search\": true,\n      \"config\": {\n        \"save_as_external_data\": false,\n        \"all_tensors_to_one_file\": true,\n        \"per_channel\": false,\n        \"reduce_range\": false,\n        \"MatMulConstBOnly\": true\n      }\n    }\n  },\n  \"pass_flows\": [[\"optimize_AutoExecutionProvider\"]],\n  \"engine\": {\n    \"log_severity_level\": 0,\n    \"evaluator\": \"common_evaluator\",\n    \"evaluate_input_model\": false,\n    \"host\": \"local_system\",\n    \"target\": \"local_system\",\n    \"cache_dir\": \"cache\",\n    \"output_name\": \"unet\",\n    \"output_dir\": \"footprints\"\n  }\n}\n"
  },
  {
    "path": "configs/olive/sd/vae_decoder.json",
    "content": "{\n  \"input_model\": {\n    \"type\": \"PyTorchModel\",\n    \"config\": {\n      \"model_path\": \"\",\n      \"model_loader\": \"vae_decoder_load\",\n      \"model_script\": \"modules/olive_script.py\",\n      \"io_config\": {\n        \"input_names\": [\"latent_sample\", \"return_dict\"],\n        \"output_names\": [\"sample\"],\n        \"dynamic_axes\": {\n          \"latent_sample\": {\n            \"0\": \"batch\",\n            \"1\": \"channels\",\n            \"2\": \"height\",\n            \"3\": \"width\"\n          }\n        }\n      },\n      \"dummy_inputs_func\": \"vae_decoder_conversion_inputs\"\n    }\n  },\n  \"systems\": {\n    \"local_system\": {\n      \"type\": \"LocalSystem\",\n      \"config\": {\n        \"accelerators\": [\n          {\n            \"device\": \"gpu\",\n            \"execution_providers\": [\"DmlExecutionProvider\"]\n          }\n        ]\n      }\n    }\n  },\n  \"evaluators\": {\n    \"common_evaluator\": {\n      \"metrics\": [\n        {\n          \"name\": \"latency\",\n          \"type\": \"latency\",\n          \"sub_types\": [{ \"name\": \"avg\" }],\n          \"user_config\": {\n            \"user_script\": \"modules/olive_script.py\",\n            \"dataloader_func\": \"vae_decoder_data_loader\",\n            \"batch_size\": 1\n          }\n        }\n      ]\n    }\n  },\n  \"passes\": {\n    \"optimize_CPUExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"clip\",\n        \"opt_level\": 0,\n        \"float16\": false,\n        \"use_gpu\": false,\n        \"keep_io_types\": false\n      }\n    },\n    \"optimize_DmlExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"vae\",\n        \"opt_level\": 0,\n        \"float16\": true,\n        \"use_gpu\": true,\n        \"keep_io_types\": false,\n        \"optimization_options\": {\n          \"enable_gelu\": true,\n          \"enable_layer_norm\": true,\n          \"enable_attention\": true,\n          \"use_multi_head_attention\": true,\n          \"enable_skip_layer_norm\": false,\n          \"enable_embed_layer_norm\": true,\n          \"enable_bias_skip_layer_norm\": false,\n          \"enable_bias_gelu\": true,\n          \"enable_gelu_approximation\": false,\n          \"enable_qordered_matmul\": false,\n          \"enable_shape_inference\": true,\n          \"enable_gemm_fast_gelu\": false,\n          \"enable_nhwc_conv\": false,\n          \"enable_group_norm\": true,\n          \"enable_bias_splitgelu\": false,\n          \"enable_packed_qkv\": true,\n          \"enable_packed_kv\": true,\n          \"enable_bias_add\": false,\n          \"group_norm_channels_last\": false\n        },\n        \"force_fp32_ops\": [\"RandomNormalLike\"],\n        \"force_fp16_inputs\": {\n          \"GroupNorm\": [0, 1, 2]\n        }\n      }\n    },\n    \"optimize_CUDAExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"vae\",\n        \"opt_level\": 0,\n        \"float16\": true,\n        \"use_gpu\": true,\n        \"keep_io_types\": false\n      }\n    },\n    \"optimize_ROCMExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"vae\",\n        \"opt_level\": 0,\n        \"float16\": true,\n        \"use_gpu\": true,\n        \"keep_io_types\": false\n      }\n    },\n    \"quantization\": {\n      \"type\": \"OnnxDynamicQuantization\",\n      \"disable_search\": true,\n      \"config\": {\n        \"save_as_external_data\": false,\n        \"all_tensors_to_one_file\": true,\n        \"per_channel\": false,\n        \"reduce_range\": false,\n        \"MatMulConstBOnly\": true\n      }\n    }\n  },\n  \"pass_flows\": [[\"optimize_AutoExecutionProvider\"]],\n  \"engine\": {\n    \"log_severity_level\": 0,\n    \"evaluator\": \"common_evaluator\",\n    \"evaluate_input_model\": false,\n    \"host\": \"local_system\",\n    \"target\": \"local_system\",\n    \"cache_dir\": \"cache\",\n    \"output_name\": \"vae_decoder\",\n    \"output_dir\": \"footprints\"\n  }\n}\n"
  },
  {
    "path": "configs/olive/sd/vae_encoder.json",
    "content": "{\n  \"input_model\": {\n    \"type\": \"PyTorchModel\",\n    \"config\": {\n      \"model_path\": \"\",\n      \"model_loader\": \"vae_encoder_load\",\n      \"model_script\": \"modules/olive_script.py\",\n      \"io_config\": {\n        \"input_names\": [\"sample\", \"return_dict\"],\n        \"output_names\": [\"latent_sample\"],\n        \"dynamic_axes\": {\n          \"sample\": {\n            \"0\": \"batch\",\n            \"1\": \"channels\",\n            \"2\": \"height\",\n            \"3\": \"width\"\n          }\n        }\n      },\n      \"dummy_inputs_func\": \"vae_encoder_conversion_inputs\"\n    }\n  },\n  \"systems\": {\n    \"local_system\": {\n      \"type\": \"LocalSystem\",\n      \"config\": {\n        \"accelerators\": [\n          {\n            \"device\": \"gpu\",\n            \"execution_providers\": [\"DmlExecutionProvider\"]\n          }\n        ]\n      }\n    }\n  },\n  \"evaluators\": {\n    \"common_evaluator\": {\n      \"metrics\": [\n        {\n          \"name\": \"latency\",\n          \"type\": \"latency\",\n          \"sub_types\": [{ \"name\": \"avg\" }],\n          \"user_config\": {\n            \"user_script\": \"modules/olive_script.py\",\n            \"dataloader_func\": \"vae_encoder_data_loader\",\n            \"batch_size\": 1\n          }\n        }\n      ]\n    }\n  },\n  \"passes\": {\n    \"optimize_CPUExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"clip\",\n        \"opt_level\": 0,\n        \"float16\": false,\n        \"use_gpu\": false,\n        \"keep_io_types\": false\n      }\n    },\n    \"optimize_DmlExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"vae\",\n        \"opt_level\": 0,\n        \"float16\": true,\n        \"use_gpu\": true,\n        \"keep_io_types\": false,\n        \"optimization_options\": {\n          \"enable_gelu\": true,\n          \"enable_layer_norm\": true,\n          \"enable_attention\": true,\n          \"use_multi_head_attention\": true,\n          \"enable_skip_layer_norm\": false,\n          \"enable_embed_layer_norm\": true,\n          \"enable_bias_skip_layer_norm\": false,\n          \"enable_bias_gelu\": true,\n          \"enable_gelu_approximation\": false,\n          \"enable_qordered_matmul\": false,\n          \"enable_shape_inference\": true,\n          \"enable_gemm_fast_gelu\": false,\n          \"enable_nhwc_conv\": false,\n          \"enable_group_norm\": true,\n          \"enable_bias_splitgelu\": false,\n          \"enable_packed_qkv\": true,\n          \"enable_packed_kv\": true,\n          \"enable_bias_add\": false,\n          \"group_norm_channels_last\": false\n        },\n        \"force_fp32_ops\": [\"RandomNormalLike\"],\n        \"force_fp16_inputs\": {\n          \"GroupNorm\": [0, 1, 2]\n        }\n      }\n    },\n    \"optimize_CUDAExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"vae\",\n        \"opt_level\": 0,\n        \"float16\": true,\n        \"use_gpu\": true,\n        \"keep_io_types\": false\n      }\n    },\n    \"optimize_ROCMExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"vae\",\n        \"opt_level\": 0,\n        \"float16\": true,\n        \"use_gpu\": true,\n        \"keep_io_types\": false\n      }\n    },\n    \"quantization\": {\n      \"type\": \"OnnxDynamicQuantization\",\n      \"disable_search\": true,\n      \"config\": {\n        \"save_as_external_data\": false,\n        \"all_tensors_to_one_file\": true,\n        \"per_channel\": false,\n        \"reduce_range\": false,\n        \"MatMulConstBOnly\": true\n      }\n    }\n  },\n  \"pass_flows\": [[\"optimize_AutoExecutionProvider\"]],\n  \"engine\": {\n    \"log_severity_level\": 0,\n    \"evaluator\": \"common_evaluator\",\n    \"evaluate_input_model\": false,\n    \"host\": \"local_system\",\n    \"target\": \"local_system\",\n    \"cache_dir\": \"cache\",\n    \"output_name\": \"vae_encoder\",\n    \"output_dir\": \"footprints\"\n  }\n}\n"
  },
  {
    "path": "configs/olive/sdxl/text_encoder.json",
    "content": "{\n  \"input_model\": {\n    \"type\": \"PyTorchModel\",\n    \"config\": {\n      \"model_path\": \"\",\n      \"model_loader\": \"text_encoder_load\",\n      \"model_script\": \"modules/olive_script.py\",\n      \"io_config\": {\n        \"input_names\": [\"input_ids\", \"output_hidden_states\"],\n        \"output_names\": [\n          \"last_hidden_state\",\n          \"pooler_output\",\n          \"hidden_states.0\",\n          \"hidden_states.1\",\n          \"hidden_states.2\",\n          \"hidden_states.3\",\n          \"hidden_states.4\",\n          \"hidden_states.5\",\n          \"hidden_states.6\",\n          \"hidden_states.7\",\n          \"hidden_states.8\",\n          \"hidden_states.9\",\n          \"hidden_states.10\",\n          \"hidden_states.11\",\n          \"hidden_states.12\"\n        ],\n        \"dynamic_axes\": {\n          \"input_ids\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"last_hidden_state\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"pooler_output\": { \"0\": \"batch_size\" },\n          \"hidden_states.0\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.1\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.2\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.3\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.4\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.5\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.6\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.7\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.8\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.9\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.10\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.11\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.12\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" }\n        }\n      },\n      \"dummy_inputs_func\": \"text_encoder_conversion_inputs\"\n    }\n  },\n  \"systems\": {\n    \"local_system\": {\n      \"type\": \"LocalSystem\",\n      \"config\": {\n        \"accelerators\": [\n          {\n            \"device\": \"gpu\",\n            \"execution_providers\": [\"DmlExecutionProvider\"]\n          }\n        ]\n      }\n    }\n  },\n  \"evaluators\": {\n    \"common_evaluator\": {\n      \"metrics\": [\n        {\n          \"name\": \"latency\",\n          \"type\": \"latency\",\n          \"sub_types\": [{ \"name\": \"avg\" }],\n          \"user_config\": {\n            \"user_script\": \"modules/olive_script.py\",\n            \"dataloader_func\": \"text_encoder_data_loader\",\n            \"batch_size\": 1\n          }\n        }\n      ]\n    }\n  },\n  \"passes\": {\n    \"optimize_DmlExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"clip\",\n        \"opt_level\": 0,\n        \"float16\": true,\n        \"use_gpu\": true,\n        \"keep_io_types\": true,\n        \"optimization_options\": {\n          \"enable_gelu\": true,\n          \"enable_layer_norm\": true,\n          \"enable_attention\": true,\n          \"use_multi_head_attention\": true,\n          \"enable_skip_layer_norm\": false,\n          \"enable_embed_layer_norm\": true,\n          \"enable_bias_skip_layer_norm\": false,\n          \"enable_bias_gelu\": true,\n          \"enable_gelu_approximation\": false,\n          \"enable_qordered_matmul\": false,\n          \"enable_shape_inference\": true,\n          \"enable_gemm_fast_gelu\": false,\n          \"enable_nhwc_conv\": false,\n          \"enable_group_norm\": true,\n          \"enable_bias_splitgelu\": false,\n          \"enable_packed_qkv\": true,\n          \"enable_packed_kv\": true,\n          \"enable_bias_add\": false,\n          \"group_norm_channels_last\": false\n        },\n        \"force_fp32_ops\": [\"RandomNormalLike\"],\n        \"force_fp16_inputs\": {\n          \"GroupNorm\": [0, 1, 2]\n        }\n      }\n    },\n    \"optimize_CUDAExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"clip\",\n        \"opt_level\": 0,\n        \"float16\": true,\n        \"use_gpu\": true,\n        \"keep_io_types\": true\n      }\n    },\n    \"optimize_ROCMExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"clip\",\n        \"opt_level\": 0,\n        \"float16\": true,\n        \"use_gpu\": true,\n        \"keep_io_types\": true\n      }\n    }\n  },\n  \"pass_flows\": [[\"optimize_AutoExecutionProvider\"]],\n  \"engine\": {\n    \"evaluator\": \"common_evaluator\",\n    \"evaluate_input_model\": false,\n    \"host\": \"local_system\",\n    \"target\": \"local_system\",\n    \"cache_dir\": \"cache\",\n    \"output_name\": \"text_encoder\",\n    \"output_dir\": \"footprints\"\n  }\n}\n"
  },
  {
    "path": "configs/olive/sdxl/text_encoder_2.json",
    "content": "{\n  \"input_model\": {\n    \"type\": \"PyTorchModel\",\n    \"config\": {\n      \"model_path\": \"\",\n      \"model_loader\": \"text_encoder_2_load\",\n      \"model_script\": \"modules/olive_script.py\",\n      \"io_config\": {\n        \"input_names\": [\"input_ids\", \"output_hidden_states\"],\n        \"output_names\": [\n          \"text_embeds\",\n          \"last_hidden_state\",\n          \"hidden_states.0\",\n          \"hidden_states.1\",\n          \"hidden_states.2\",\n          \"hidden_states.3\",\n          \"hidden_states.4\",\n          \"hidden_states.5\",\n          \"hidden_states.6\",\n          \"hidden_states.7\",\n          \"hidden_states.8\",\n          \"hidden_states.9\",\n          \"hidden_states.10\",\n          \"hidden_states.11\",\n          \"hidden_states.12\",\n          \"hidden_states.13\",\n          \"hidden_states.14\",\n          \"hidden_states.15\",\n          \"hidden_states.16\",\n          \"hidden_states.17\",\n          \"hidden_states.18\",\n          \"hidden_states.19\",\n          \"hidden_states.20\",\n          \"hidden_states.21\",\n          \"hidden_states.22\",\n          \"hidden_states.23\",\n          \"hidden_states.24\",\n          \"hidden_states.25\",\n          \"hidden_states.26\",\n          \"hidden_states.27\",\n          \"hidden_states.28\",\n          \"hidden_states.29\",\n          \"hidden_states.30\",\n          \"hidden_states.31\",\n          \"hidden_states.32\"\n        ],\n        \"dynamic_axes\": {\n          \"input_ids\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"text_embeds\": { \"0\": \"batch_size\" },\n          \"last_hidden_state\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.0\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.1\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.2\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.3\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.4\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.5\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.6\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.7\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.8\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.9\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.10\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.11\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.12\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.13\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.14\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.15\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.16\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.17\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.18\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.19\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.20\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.21\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.22\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.23\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.24\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.25\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.26\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.27\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.28\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.29\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.30\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.31\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" },\n          \"hidden_states.32\": { \"0\": \"batch_size\", \"1\": \"sequence_length\" }\n        }\n      },\n      \"dummy_inputs_func\": \"text_encoder_2_conversion_inputs\"\n    }\n  },\n  \"systems\": {\n    \"local_system\": {\n      \"type\": \"LocalSystem\",\n      \"config\": {\n        \"accelerators\": [\n          {\n            \"device\": \"gpu\",\n            \"execution_providers\": [\"DmlExecutionProvider\"]\n          }\n        ]\n      }\n    }\n  },\n  \"evaluators\": {\n    \"common_evaluator\": {\n      \"metrics\": [\n        {\n          \"name\": \"latency\",\n          \"type\": \"latency\",\n          \"sub_types\": [{ \"name\": \"avg\" }],\n          \"user_config\": {\n            \"user_script\": \"modules/olive_script.py\",\n            \"dataloader_func\": \"text_encoder_2_data_loader\",\n            \"batch_size\": 1\n          }\n        }\n      ]\n    }\n  },\n  \"passes\": {\n    \"optimize_DmlExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"clip\",\n        \"opt_level\": 0,\n        \"float16\": true,\n        \"use_gpu\": true,\n        \"keep_io_types\": true,\n        \"optimization_options\": {\n          \"enable_gelu\": true,\n          \"enable_layer_norm\": true,\n          \"enable_attention\": true,\n          \"use_multi_head_attention\": true,\n          \"enable_skip_layer_norm\": false,\n          \"enable_embed_layer_norm\": true,\n          \"enable_bias_skip_layer_norm\": false,\n          \"enable_bias_gelu\": true,\n          \"enable_gelu_approximation\": false,\n          \"enable_qordered_matmul\": false,\n          \"enable_shape_inference\": true,\n          \"enable_gemm_fast_gelu\": false,\n          \"enable_nhwc_conv\": false,\n          \"enable_group_norm\": true,\n          \"enable_bias_splitgelu\": false,\n          \"enable_packed_qkv\": true,\n          \"enable_packed_kv\": true,\n          \"enable_bias_add\": false,\n          \"group_norm_channels_last\": false\n        },\n        \"force_fp32_ops\": [\"RandomNormalLike\"],\n        \"force_fp16_inputs\": {\n          \"GroupNorm\": [0, 1, 2]\n        }\n      }\n    },\n    \"optimize_CUDAExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"clip\",\n        \"opt_level\": 0,\n        \"float16\": true,\n        \"use_gpu\": true,\n        \"keep_io_types\": true\n      }\n    },\n    \"optimize_ROCMExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"clip\",\n        \"opt_level\": 0,\n        \"float16\": true,\n        \"use_gpu\": true,\n        \"keep_io_types\": true\n      }\n    }\n  },\n  \"pass_flows\": [[\"optimize_AutoExecutionProvider\"]],\n  \"engine\": {\n    \"evaluator\": \"common_evaluator\",\n    \"evaluate_input_model\": false,\n    \"host\": \"local_system\",\n    \"target\": \"local_system\",\n    \"cache_dir\": \"cache\",\n    \"output_name\": \"text_encoder_2\",\n    \"output_dir\": \"footprints\"\n  }\n}\n"
  },
  {
    "path": "configs/olive/sdxl/unet.json",
    "content": "{\n  \"input_model\": {\n    \"type\": \"PyTorchModel\",\n    \"config\": {\n      \"model_path\": \"\",\n      \"model_loader\": \"unet_load\",\n      \"model_script\": \"modules/olive_script.py\",\n      \"io_config\": {\n        \"input_names\": [\n          \"sample\",\n          \"timestep\",\n          \"encoder_hidden_states\",\n          \"text_embeds\",\n          \"time_ids\"\n        ],\n        \"output_names\": [\"out_sample\"],\n        \"dynamic_axes\": {\n          \"sample\": {\n            \"0\": \"unet_sample_batch\",\n            \"1\": \"unet_sample_channels\",\n            \"2\": \"unet_sample_height\",\n            \"3\": \"unet_sample_width\"\n          },\n          \"timestep\": { \"0\": \"unet_time_batch\" },\n          \"encoder_hidden_states\": {\n            \"0\": \"unet_hidden_batch\",\n            \"1\": \"unet_hidden_sequence\"\n          },\n          \"text_embeds\": {\n            \"0\": \"unet_text_embeds_batch\",\n            \"1\": \"unet_text_embeds_size\"\n          },\n          \"time_ids\": { \"0\": \"unet_time_ids_batch\", \"1\": \"unet_time_ids_size\" }\n        }\n      },\n      \"dummy_inputs_func\": \"unet_conversion_inputs\"\n    }\n  },\n  \"systems\": {\n    \"local_system\": {\n      \"type\": \"LocalSystem\",\n      \"config\": {\n        \"accelerators\": [\n          {\n            \"device\": \"gpu\",\n            \"execution_providers\": [\"DmlExecutionProvider\"]\n          }\n        ]\n      }\n    }\n  },\n  \"evaluators\": {\n    \"common_evaluator\": {\n      \"metrics\": [\n        {\n          \"name\": \"latency\",\n          \"type\": \"latency\",\n          \"sub_types\": [{ \"name\": \"avg\" }],\n          \"user_config\": {\n            \"user_script\": \"modules/olive_script.py\",\n            \"dataloader_func\": \"unet_data_loader\",\n            \"batch_size\": 2\n          }\n        }\n      ]\n    }\n  },\n  \"passes\": {\n    \"optimize_DmlExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"unet\",\n        \"opt_level\": 0,\n        \"float16\": true,\n        \"use_gpu\": true,\n        \"keep_io_types\": true,\n        \"optimization_options\": {\n          \"enable_gelu\": true,\n          \"enable_layer_norm\": true,\n          \"enable_attention\": true,\n          \"use_multi_head_attention\": true,\n          \"enable_skip_layer_norm\": false,\n          \"enable_embed_layer_norm\": true,\n          \"enable_bias_skip_layer_norm\": false,\n          \"enable_bias_gelu\": true,\n          \"enable_gelu_approximation\": false,\n          \"enable_qordered_matmul\": false,\n          \"enable_shape_inference\": true,\n          \"enable_gemm_fast_gelu\": false,\n          \"enable_nhwc_conv\": false,\n          \"enable_group_norm\": true,\n          \"enable_bias_splitgelu\": false,\n          \"enable_packed_qkv\": true,\n          \"enable_packed_kv\": true,\n          \"enable_bias_add\": false,\n          \"group_norm_channels_last\": false\n        },\n        \"force_fp32_ops\": [\"RandomNormalLike\"],\n        \"force_fp16_inputs\": {\n          \"GroupNorm\": [0, 1, 2]\n        }\n      }\n    },\n    \"optimize_CUDAExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"unet\",\n        \"opt_level\": 0,\n        \"float16\": true,\n        \"use_gpu\": true,\n        \"keep_io_types\": true\n      }\n    },\n    \"optimize_ROCMExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"unet\",\n        \"opt_level\": 0,\n        \"float16\": true,\n        \"use_gpu\": true,\n        \"keep_io_types\": true\n      }\n    }\n  },\n  \"pass_flows\": [[\"optimize_AutoExecutionProvider\"]],\n  \"engine\": {\n    \"evaluator\": \"common_evaluator\",\n    \"evaluate_input_model\": false,\n    \"host\": \"local_system\",\n    \"target\": \"local_system\",\n    \"cache_dir\": \"cache\",\n    \"output_name\": \"unet\",\n    \"output_dir\": \"footprints\"\n  }\n}\n"
  },
  {
    "path": "configs/olive/sdxl/vae_decoder.json",
    "content": "{\n  \"input_model\": {\n    \"type\": \"PyTorchModel\",\n    \"config\": {\n      \"model_path\": \"\",\n      \"model_loader\": \"vae_decoder_load\",\n      \"model_script\": \"modules/olive_script.py\",\n      \"io_config\": {\n        \"input_names\": [\"latent_sample\", \"return_dict\"],\n        \"output_names\": [\"sample\"],\n        \"dynamic_axes\": {\n          \"latent_sample\": {\n            \"0\": \"batch_size\",\n            \"1\": \"num_channels_latent\",\n            \"2\": \"height_latent\",\n            \"3\": \"width_latent\"\n          },\n          \"sample\": {\n            \"0\": \"batch_size\",\n            \"1\": \"num_channels\",\n            \"2\": \"height\",\n            \"3\": \"width\"\n          }\n        }\n      },\n      \"dummy_inputs_func\": \"vae_decoder_conversion_inputs\"\n    }\n  },\n  \"systems\": {\n    \"local_system\": {\n      \"type\": \"LocalSystem\",\n      \"config\": {\n        \"accelerators\": [\n          {\n            \"device\": \"gpu\",\n            \"execution_providers\": [\"DmlExecutionProvider\"]\n          }\n        ]\n      }\n    }\n  },\n  \"evaluators\": {\n    \"common_evaluator\": {\n      \"metrics\": [\n        {\n          \"name\": \"latency\",\n          \"type\": \"latency\",\n          \"sub_types\": [{ \"name\": \"avg\" }],\n          \"user_config\": {\n            \"user_script\": \"modules/olive_script.py\",\n            \"dataloader_func\": \"vae_decoder_data_loader\",\n            \"batch_size\": 1\n          }\n        }\n      ]\n    }\n  },\n  \"passes\": {\n    \"optimize_DmlExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"vae\",\n        \"opt_level\": 0,\n        \"float16\": true,\n        \"use_gpu\": true,\n        \"keep_io_types\": true,\n        \"optimization_options\": {\n          \"enable_gelu\": true,\n          \"enable_layer_norm\": true,\n          \"enable_attention\": true,\n          \"use_multi_head_attention\": true,\n          \"enable_skip_layer_norm\": false,\n          \"enable_embed_layer_norm\": true,\n          \"enable_bias_skip_layer_norm\": false,\n          \"enable_bias_gelu\": true,\n          \"enable_gelu_approximation\": false,\n          \"enable_qordered_matmul\": false,\n          \"enable_shape_inference\": true,\n          \"enable_gemm_fast_gelu\": false,\n          \"enable_nhwc_conv\": false,\n          \"enable_group_norm\": true,\n          \"enable_bias_splitgelu\": false,\n          \"enable_packed_qkv\": true,\n          \"enable_packed_kv\": true,\n          \"enable_bias_add\": false,\n          \"group_norm_channels_last\": false\n        },\n        \"force_fp32_ops\": [\"RandomNormalLike\"],\n        \"force_fp32_nodes\": [\n          \"/decoder/up_blocks.2/upsamplers.0/conv/Conv\",\n          \"/decoder/up_blocks.3/resnets.0/conv_shortcut/Conv\",\n          \"GroupNorm_22\",\n          \"/decoder/up_blocks.3/resnets.0/conv1/Conv\",\n          \"GroupNorm_23\",\n          \"/decoder/up_blocks.3/resnets.0/conv2/Conv\",\n          \"/decoder/up_blocks.3/resnets.0/Add\",\n          \"GroupNorm_24\",\n          \"/decoder/up_blocks.3/resnets.1/conv1/Conv\",\n          \"GroupNorm_25\",\n          \"/decoder/up_blocks.3/resnets.1/conv2/Conv\",\n          \"/decoder/up_blocks.3/resnets.1/Add\",\n          \"GroupNorm_26\",\n          \"/decoder/up_blocks.3/resnets.2/conv1/Conv\",\n          \"GroupNorm_27\",\n          \"/decoder/up_blocks.3/resnets.2/conv2/Conv\",\n          \"/decoder/up_blocks.3/resnets.2/Add\",\n          \"GroupNorm_28\",\n          \"/decoder/conv_out/Conv\",\n          \"graph_output_cast0\"\n        ],\n        \"force_fp16_inputs\": {\n          \"GroupNorm\": [0, 1, 2]\n        }\n      }\n    },\n    \"optimize_CUDAExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"vae\",\n        \"opt_level\": 0,\n        \"float16\": false,\n        \"use_gpu\": true\n      }\n    },\n    \"optimize_ROCMExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"vae\",\n        \"opt_level\": 0,\n        \"float16\": false,\n        \"use_gpu\": true\n      }\n    }\n  },\n  \"pass_flows\": [[\"optimize_AutoExecutionProvider\"]],\n  \"engine\": {\n    \"evaluator\": \"common_evaluator\",\n    \"evaluate_input_model\": false,\n    \"host\": \"local_system\",\n    \"target\": \"local_system\",\n    \"cache_dir\": \"cache\",\n    \"output_name\": \"vae_decoder\",\n    \"output_dir\": \"footprints\"\n  }\n}\n"
  },
  {
    "path": "configs/olive/sdxl/vae_encoder.json",
    "content": "{\n  \"input_model\": {\n    \"type\": \"PyTorchModel\",\n    \"config\": {\n      \"model_path\": \"\",\n      \"model_loader\": \"vae_encoder_load\",\n      \"model_script\": \"modules/olive_script.py\",\n      \"io_config\": {\n        \"input_names\": [\"sample\", \"return_dict\"],\n        \"output_names\": [\"latent_sample\"],\n        \"dynamic_axes\": {\n          \"sample\": {\n            \"0\": \"batch_size\",\n            \"1\": \"num_channels\",\n            \"2\": \"height\",\n            \"3\": \"width\"\n          },\n          \"latent_sample\": {\n            \"0\": \"batch_size\",\n            \"1\": \"num_channels_latent\",\n            \"2\": \"height_latent\",\n            \"3\": \"width_latent\"\n          }\n        }\n      },\n      \"dummy_inputs_func\": \"vae_encoder_conversion_inputs\"\n    }\n  },\n  \"systems\": {\n    \"local_system\": {\n      \"type\": \"LocalSystem\",\n      \"config\": {\n        \"accelerators\": [\n          {\n            \"device\": \"gpu\",\n            \"execution_providers\": [\"DmlExecutionProvider\"]\n          }\n        ]\n      }\n    }\n  },\n  \"evaluators\": {\n    \"common_evaluator\": {\n      \"metrics\": [\n        {\n          \"name\": \"latency\",\n          \"type\": \"latency\",\n          \"sub_types\": [{ \"name\": \"avg\" }],\n          \"user_config\": {\n            \"user_script\": \"modules/olive_script.py\",\n            \"dataloader_func\": \"vae_encoder_data_loader\",\n            \"batch_size\": 1\n          }\n        }\n      ]\n    }\n  },\n  \"passes\": {\n    \"optimize_DmlExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"vae\",\n        \"opt_level\": 0,\n        \"float16\": true,\n        \"use_gpu\": true,\n        \"keep_io_types\": true,\n        \"optimization_options\": {\n          \"enable_gelu\": true,\n          \"enable_layer_norm\": true,\n          \"enable_attention\": true,\n          \"use_multi_head_attention\": true,\n          \"enable_skip_layer_norm\": false,\n          \"enable_embed_layer_norm\": true,\n          \"enable_bias_skip_layer_norm\": false,\n          \"enable_bias_gelu\": true,\n          \"enable_gelu_approximation\": false,\n          \"enable_qordered_matmul\": false,\n          \"enable_shape_inference\": true,\n          \"enable_gemm_fast_gelu\": false,\n          \"enable_nhwc_conv\": false,\n          \"enable_group_norm\": true,\n          \"enable_bias_splitgelu\": false,\n          \"enable_packed_qkv\": true,\n          \"enable_packed_kv\": true,\n          \"enable_bias_add\": false,\n          \"group_norm_channels_last\": false\n        },\n        \"force_fp32_ops\": [\"RandomNormalLike\"],\n        \"force_fp16_inputs\": {\n          \"GroupNorm\": [0, 1, 2]\n        }\n      }\n    },\n    \"optimize_CUDAExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"vae\",\n        \"opt_level\": 0,\n        \"float16\": true,\n        \"use_gpu\": true,\n        \"keep_io_types\": true\n      }\n    },\n    \"optimize_ROCMExecutionProvider\": {\n      \"type\": \"OrtTransformersOptimization\",\n      \"config\": {\n        \"model_type\": \"vae\",\n        \"opt_level\": 0,\n        \"float16\": true,\n        \"use_gpu\": true,\n        \"keep_io_types\": true\n      }\n    }\n  },\n  \"pass_flows\": [[\"optimize_AutoExecutionProvider\"]],\n  \"engine\": {\n    \"evaluator\": \"common_evaluator\",\n    \"evaluate_input_model\": false,\n    \"host\": \"local_system\",\n    \"target\": \"local_system\",\n    \"cache_dir\": \"cache\",\n    \"output_name\": \"vae_encoder\",\n    \"output_dir\": \"footprints\"\n  }\n}\n"
  },
  {
    "path": "configs/playground-v2.5-1024px-aesthetic.fp16_vae.json",
    "content": "{\n  \"_class_name\": \"AutoencoderKL\",\n  \"_diffusers_version\": \"0.27.0.dev0\",\n  \"act_fn\": \"silu\",\n  \"block_out_channels\": [\n    128,\n    256,\n    512,\n    512\n  ],\n  \"down_block_types\": [\n    \"DownEncoderBlock2D\",\n    \"DownEncoderBlock2D\",\n    \"DownEncoderBlock2D\",\n    \"DownEncoderBlock2D\"\n  ],\n  \"force_upcast\": true,\n  \"in_channels\": 3,\n  \"latent_channels\": 4,\n  \"layers_per_block\": 2,\n  \"norm_num_groups\": 32,\n  \"out_channels\": 3,\n  \"sample_size\": 1024,\n  \"up_block_types\": [\n    \"UpDecoderBlock2D\",\n    \"UpDecoderBlock2D\",\n    \"UpDecoderBlock2D\",\n    \"UpDecoderBlock2D\"\n  ],\n  \"latents_mean\": [\n    -1.6574,\n    1.886,\n    -1.383,\n    2.5155\n  ],\n  \"latents_std\": [\n    8.4927,\n    5.9022,\n    6.5498,\n    5.2299\n  ],\n  \"scaling_factor\": 0.5\n}\n"
  },
  {
    "path": "configs/sd15/feature_extractor/preprocessor_config.json",
    "content": "{\n  \"crop_size\": 224,\n  \"do_center_crop\": true,\n  \"do_convert_rgb\": true,\n  \"do_normalize\": true,\n  \"do_resize\": true,\n  \"feature_extractor_type\": \"CLIPFeatureExtractor\",\n  \"image_mean\": [\n    0.48145466,\n    0.4578275,\n    0.40821073\n  ],\n  \"image_std\": [\n    0.26862954,\n    0.26130258,\n    0.27577711\n  ],\n  \"resample\": 3,\n  \"size\": 224\n}\n"
  },
  {
    "path": "configs/sd15/model_index.json",
    "content": "{\n  \"_class_name\": \"StableDiffusionPipeline\",\n  \"_diffusers_version\": \"0.6.0\",\n  \"feature_extractor\": [\n    \"transformers\",\n    \"CLIPImageProcessor\"\n  ],\n  \"safety_checker\": [\n    \"stable_diffusion\",\n    \"StableDiffusionSafetyChecker\"\n  ],\n  \"scheduler\": [\n    \"diffusers\",\n    \"PNDMScheduler\"\n  ],\n  \"text_encoder\": [\n    \"transformers\",\n    \"CLIPTextModel\"\n  ],\n  \"tokenizer\": [\n    \"transformers\",\n    \"CLIPTokenizer\"\n  ],\n  \"unet\": [\n    \"diffusers\",\n    \"UNet2DConditionModel\"\n  ],\n  \"vae\": [\n    \"diffusers\",\n    \"AutoencoderKL\"\n  ]\n}\n"
  },
  {
    "path": "configs/sd15/safety_checker/config.json",
    "content": "{\n  \"_commit_hash\": \"4bb648a606ef040e7685bde262611766a5fdd67b\",\n  \"_name_or_path\": \"CompVis/stable-diffusion-safety-checker\",\n  \"architectures\": [\n    \"StableDiffusionSafetyChecker\"\n  ],\n  \"initializer_factor\": 1.0,\n  \"logit_scale_init_value\": 2.6592,\n  \"model_type\": \"clip\",\n  \"projection_dim\": 768,\n  \"text_config\": {\n    \"_name_or_path\": \"\",\n    \"add_cross_attention\": false,\n    \"architectures\": null,\n    \"attention_dropout\": 0.0,\n    \"bad_words_ids\": null,\n    \"bos_token_id\": 0,\n    \"chunk_size_feed_forward\": 0,\n    \"cross_attention_hidden_size\": null,\n    \"decoder_start_token_id\": null,\n    \"diversity_penalty\": 0.0,\n    \"do_sample\": false,\n    \"dropout\": 0.0,\n    \"early_stopping\": false,\n    \"encoder_no_repeat_ngram_size\": 0,\n    \"eos_token_id\": 2,\n    \"exponential_decay_length_penalty\": null,\n    \"finetuning_task\": null,\n    \"forced_bos_token_id\": null,\n    \"forced_eos_token_id\": null,\n    \"hidden_act\": \"quick_gelu\",\n    \"hidden_size\": 768,\n    \"id2label\": {\n      \"0\": \"LABEL_0\",\n      \"1\": \"LABEL_1\"\n    },\n    \"initializer_factor\": 1.0,\n    \"initializer_range\": 0.02,\n    \"intermediate_size\": 3072,\n    \"is_decoder\": false,\n    \"is_encoder_decoder\": false,\n    \"label2id\": {\n      \"LABEL_0\": 0,\n      \"LABEL_1\": 1\n    },\n    \"layer_norm_eps\": 1e-05,\n    \"length_penalty\": 1.0,\n    \"max_length\": 20,\n    \"max_position_embeddings\": 77,\n    \"min_length\": 0,\n    \"model_type\": \"clip_text_model\",\n    \"no_repeat_ngram_size\": 0,\n    \"num_attention_heads\": 12,\n    \"num_beam_groups\": 1,\n    \"num_beams\": 1,\n    \"num_hidden_layers\": 12,\n    \"num_return_sequences\": 1,\n    \"output_attentions\": false,\n    \"output_hidden_states\": false,\n    \"output_scores\": false,\n    \"pad_token_id\": 1,\n    \"prefix\": null,\n    \"problem_type\": null,\n    \"pruned_heads\": {},\n    \"remove_invalid_values\": false,\n    \"repetition_penalty\": 1.0,\n    \"return_dict\": true,\n    \"return_dict_in_generate\": false,\n    \"sep_token_id\": null,\n    \"task_specific_params\": null,\n    \"temperature\": 1.0,\n    \"tf_legacy_loss\": false,\n    \"tie_encoder_decoder\": false,\n    \"tie_word_embeddings\": true,\n    \"tokenizer_class\": null,\n    \"top_k\": 50,\n    \"top_p\": 1.0,\n    \"torch_dtype\": null,\n    \"torchscript\": false,\n    \"transformers_version\": \"4.22.0.dev0\",\n    \"typical_p\": 1.0,\n    \"use_bfloat16\": false,\n    \"vocab_size\": 49408\n  },\n  \"text_config_dict\": {\n    \"hidden_size\": 768,\n    \"intermediate_size\": 3072,\n    \"num_attention_heads\": 12,\n    \"num_hidden_layers\": 12\n  },\n  \"torch_dtype\": \"float32\",\n  \"transformers_version\": null,\n  \"vision_config\": {\n    \"_name_or_path\": \"\",\n    \"add_cross_attention\": false,\n    \"architectures\": null,\n    \"attention_dropout\": 0.0,\n    \"bad_words_ids\": null,\n    \"bos_token_id\": null,\n    \"chunk_size_feed_forward\": 0,\n    \"cross_attention_hidden_size\": null,\n    \"decoder_start_token_id\": null,\n    \"diversity_penalty\": 0.0,\n    \"do_sample\": false,\n    \"dropout\": 0.0,\n    \"early_stopping\": false,\n    \"encoder_no_repeat_ngram_size\": 0,\n    \"eos_token_id\": null,\n    \"exponential_decay_length_penalty\": null,\n    \"finetuning_task\": null,\n    \"forced_bos_token_id\": null,\n    \"forced_eos_token_id\": null,\n    \"hidden_act\": \"quick_gelu\",\n    \"hidden_size\": 1024,\n    \"id2label\": {\n      \"0\": \"LABEL_0\",\n      \"1\": \"LABEL_1\"\n    },\n    \"image_size\": 224,\n    \"initializer_factor\": 1.0,\n    \"initializer_range\": 0.02,\n    \"intermediate_size\": 4096,\n    \"is_decoder\": false,\n    \"is_encoder_decoder\": false,\n    \"label2id\": {\n      \"LABEL_0\": 0,\n      \"LABEL_1\": 1\n    },\n    \"layer_norm_eps\": 1e-05,\n    \"length_penalty\": 1.0,\n    \"max_length\": 20,\n    \"min_length\": 0,\n    \"model_type\": \"clip_vision_model\",\n    \"no_repeat_ngram_size\": 0,\n    \"num_attention_heads\": 16,\n    \"num_beam_groups\": 1,\n    \"num_beams\": 1,\n    \"num_channels\": 3,\n    \"num_hidden_layers\": 24,\n    \"num_return_sequences\": 1,\n    \"output_attentions\": false,\n    \"output_hidden_states\": false,\n    \"output_scores\": false,\n    \"pad_token_id\": null,\n    \"patch_size\": 14,\n    \"prefix\": null,\n    \"problem_type\": null,\n    \"pruned_heads\": {},\n    \"remove_invalid_values\": false,\n    \"repetition_penalty\": 1.0,\n    \"return_dict\": true,\n    \"return_dict_in_generate\": false,\n    \"sep_token_id\": null,\n    \"task_specific_params\": null,\n    \"temperature\": 1.0,\n    \"tf_legacy_loss\": false,\n    \"tie_encoder_decoder\": false,\n    \"tie_word_embeddings\": true,\n    \"tokenizer_class\": null,\n    \"top_k\": 50,\n    \"top_p\": 1.0,\n    \"torch_dtype\": null,\n    \"torchscript\": false,\n    \"transformers_version\": \"4.22.0.dev0\",\n    \"typical_p\": 1.0,\n    \"use_bfloat16\": false\n  },\n  \"vision_config_dict\": {\n    \"hidden_size\": 1024,\n    \"intermediate_size\": 4096,\n    \"num_attention_heads\": 16,\n    \"num_hidden_layers\": 24,\n    \"patch_size\": 14\n  }\n}\n"
  },
  {
    "path": "configs/sd15/scheduler/scheduler_config.json",
    "content": "{\n  \"_class_name\": \"PNDMScheduler\",\n  \"_diffusers_version\": \"0.6.0\",\n  \"beta_end\": 0.012,\n  \"beta_schedule\": \"scaled_linear\",\n  \"beta_start\": 0.00085,\n  \"num_train_timesteps\": 1000,\n  \"set_alpha_to_one\": false,\n  \"skip_prk_steps\": true,\n  \"steps_offset\": 1,\n  \"trained_betas\": null,\n  \"clip_sample\": false\n}\n"
  },
  {
    "path": "configs/sd15/text_encoder/config.json",
    "content": "{\n  \"_name_or_path\": \"openai/clip-vit-large-patch14\",\n  \"architectures\": [\n    \"CLIPTextModel\"\n  ],\n  \"attention_dropout\": 0.0,\n  \"bos_token_id\": 0,\n  \"dropout\": 0.0,\n  \"eos_token_id\": 2,\n  \"hidden_act\": \"quick_gelu\",\n  \"hidden_size\": 768,\n  \"initializer_factor\": 1.0,\n  \"initializer_range\": 0.02,\n  \"intermediate_size\": 3072,\n  \"layer_norm_eps\": 1e-05,\n  \"max_position_embeddings\": 77,\n  \"model_type\": \"clip_text_model\",\n  \"num_attention_heads\": 12,\n  \"num_hidden_layers\": 12,\n  \"pad_token_id\": 1,\n  \"projection_dim\": 768,\n  \"torch_dtype\": \"float32\",\n  \"transformers_version\": \"4.22.0.dev0\",\n  \"vocab_size\": 49408\n}\n"
  },
  {
    "path": "configs/sd15/tokenizer/merges.txt",
    "content": "#version: 0.2\ni n\nt h\na n\nr e\na r\ne r\nth e</w>\nin g</w>\no u\no n\ns t\no r\ne n\no n</w>\na l\na t\ne r</w>\ni t\ni n</w>\nt o</w>\nr o\ni s</w>\nl e\ni c\na t</w>\nan d</w>\ne d</w>\no f</w>\nc h\no r</w>\ne s</w>\ni l\ne l\ns t</w>\na c\no m\na m\nl o\na n</w>\na y</w>\ns h\nr i\nl i\nt i\nf or</w>\nn e\nð Ł\nr a\nh a\nd e\no l\nv e</w>\ns i\nu r\na l</w>\ns e\n' s</w>\nu n\nd i\nb e\nl a\nw h\no o\nd ay</w>\ne n</w>\nm a\nn o\nl e</w>\nt o\nou r</w>\ni r\ng h\nw it\ni t</w>\ny o\na s\ns p\nth is</w>\nt s</w>\nat i\nyo u</w>\nwit h</w>\na d\ni s\na b\nl y</w>\nw e\nth e\nt e\na s</w>\na g\nv i\np p\ns u\nh o\nm y</w>\n. .\nb u\nc om\ns e</w>\ner s</w>\nm e\nm e</w>\nal l</w>\nc on\nm o\nk e</w>\ng e\nou t</w>\nen t</w>\nc o\nf e\nv er\na r</w>\nf ro\na u\np o\nc e</w>\ngh t</w>\nar e</w>\ns s</w>\nfro m</w>\nc h</w>\nt r\nou n\non e</w>\nb y</w>\nd o\nt h</w>\nw or\ner e</w>\nk e\np ro\nf or\nd s</w>\nb o\nt a\nw e</w>\ng o\nh e\nt er</w>\nin g\nd e</w>\nb e</w>\nati on</w>\nm or\na y\ne x\nil l</w>\np e\nk s</w>\ns c\nl u\nf u\nq u\nv er</w>\nðŁ ĺ\nj u\nm u\nat e</w>\nan d\nv e\nk ing</w>\nm ar\no p\nh i\n.. .</w>\np re\na d</w>\nr u\nth at</w>\nj o\no f\nc e\nne w</w>\na m</w>\na p\ng re\ns s\nd u\nno w</w>\ny e\nt ing</w>\ny our</w>\nit y</w>\nn i\nc i\np ar\ng u\nf i\na f\np er\nt er\nu p</w>\ns o</w>\ng i\non s</w>\ng r\ng e</w>\nb r\np l\n' t</w>\nm i\nin e</w>\nwe e\nb i\nu s</w>\nsh o\nha ve</w>\nto day</w>\na v\nm an\nen t\nac k</w>\nur e</w>\nou r\nâ Ģ\nc u\nl d</w>\nlo o\ni m\nic e</w>\ns om\nf in\nre d</w>\nre n\noo d</w>\nw as</w>\nti on</w>\np i\ni r</w>\nth er</w>\nt y</w>\np h\nar d</w>\ne c\n! !</w>\nm on\nmor e</w>\nw ill</w>\nt ra\nc an</w>\nc ol\np u\nt e</w>\nw n</w>\nm b\ns o\nit i\nju st</w>\nn ing</w>\nh ere</w>\nt u\np a\np r\nbu t</w>\nwh at</w>\nal ly</w>\nf ir\nm in\nc a\nan t</w>\ns a\nt ed</w>\ne v\nm ent</w>\nf a\nge t</w>\nam e</w>\nab out</w>\ng ra\nno t</w>\nha pp\nay s</w>\nm an</w>\nh is</w>\nti me</w>\nli ke</w>\ng h</w>\nha s</w>\nth an\nlo ve</w>\nar t</w>\nst e\nd ing</w>\nh e</w>\nc re\nw s</w>\nw at\nd er</w>\nit e</w>\ns er\nac e</w>\nag e</w>\nen d</w>\nst r\na w\nst or\nr e</w>\nc ar\nel l</w>\nal l\np s</w>\nf ri\np ho\np or\nd o</w>\na k\nw i\nf re\nwh o</w>\nsh i\nb oo\ns on</w>\nel l\nwh en</w>\nil l\nho w</w>\ngre at</w>\nw in\ne l</w>\nb l\ns si\nal i\nsom e</w>\nðŁ Ĵ\nt on\nd er\nle s</w>\np la\nï ¸\ne d\ns ch\nh u\non g</w>\nd on</w>\nk i\ns h</w>\nan n\nc or\n. .</w>\noun d</w>\na z\nin e\nar y</w>\nfu l</w>\nst u\nou ld</w>\nst i\ng o</w>\nse e</w>\nab le</w>\nar s</w>\nl l</w>\nm is\nb er\nc k</w>\nw a\nen ts</w>\nn o</w>\nsi g\nf e</w>\nfir st</w>\ne t</w>\nsp e\nac k\ni f</w>\nou s</w>\n' m</w>\nst er</w>\na pp\nan g\nan ce</w>\nan s</w>\ng ood</w>\nb re\ne ver\nthe y</w>\nt ic\ncom e</w>\nof f\nb ack</w>\nas e</w>\ning s</w>\nol d</w>\ni ght</w>\nf o\nh er</w>\nhapp y</w>\np ic\nit s</w>\nv ing</w>\nu s\nm at\nh om\nd y</w>\ne m\ns k\ny ing</w>\nthe ir</w>\nle d</w>\nr y</w>\nu l\nh ar\nc k\nt on</w>\non al</w>\nh el\nr ic\nb ir\nvi e\nw ay</w>\nt ri\nd a\np le\nb ro\nst o\noo l</w>\nni ght</w>\ntr u\nb a\nre ad\nre s</w>\nye ar</w>\nf r\nt or\nal s</w>\nc oun\nc la\nt ure</w>\nv el\nat ed</w>\nle c\nen d\nth ing</w>\nv o\nic i\nbe st</w>\nc an\nwor k</w>\nla st</w>\naf ter</w>\nen ce</w>\np ri\np e</w>\ne s\ni l</w>\nâĢ ¦</w>\nd re\ny s</w>\no ver</w>\ni es</w>\nðŁ ĳ\ncom m\nt w\nin k</w>\ns un\nc l\nli fe</w>\nt t\na ch\nl and</w>\ns y\nt re\nt al\np ol\ns m\ndu c\ns al\nf t</w>\n' re</w>\nch e\nw ar\nt ur\nati ons</w>\nac h</w>\nm s</w>\nil e</w>\np m</w>\nou gh</w>\nat e\nst ar\nwee k</w>\n! !!</w>\nc lu\nth ere</w>\nn er</w>\nt om\ns el\nï¸ ı</w>\nwor ld</w>\nv es</w>\nc am\ngo t</w>\nin ter\nof f</w>\nu m</w>\nton ight</w>\no ther</w>\nh ou\nloo k</w>\nj e\ni d</w>\nsi on</w>\nbe au\nat t\nel i\nor t</w>\nre c\nf f\nst er\nsu pp\ng en\nbe en</w>\nil y</w>\nte am</w>\nm m\ni c</w>\npe op\nit t\nat s</w>\non ly</w>\nmb er</w>\nen g\nb ri\nm p\nk now</w>\nb ur\nb ar\nin s</w>\nlo w</w>\nsh e</w>\nro w</w>\nâ Ŀ\nt ro\npeop le</w>\nvi a</w>\nlo w\nag a\nbe t\nx t</w>\nf ac\nch ar\ne ar\nw al\ns en\nf am\nb le</w>\nn ati\nis h</w>\nn or\ng ame</w>\nli ve</w>\ns co\nle y</w>\nd on\nic k</w>\nb all</w>\nver y</w>\nthe se</w>\np an\ni a</w>\nat ing</w>\nc r\na re\ng ir\nma ke</w>\nst re\nsho w</w>\n. \"</w>\nf l\nu p\nd r\nthan ks</w>\nil li\nw om\nst s</w>\ni g\ns ur\never y\nc ur\nvie w</w>\nle t</w>\nin to</w>\nmo st</w>\nn a\nin di\ng ar\nha d</w>\ns ou\nv ed</w>\nan t\niti on</w>\nma de</w>\nf ol\nun i\nit ed</w>\nðŁ ı\nic al</w>\nth r\nread y</w>\nch ec\nd ra\nk es</w>\nboo k</w>\ne p</w>\nsi c</w>\nmor ning</w>\nne ws</w>\nc au\nc t</w>\nw ell</w>\nan c\npho to</w>\nth an</w>\nor s</w>\nbir th\ng g\nou t\nne xt</w>\nsom e\nen ing</w>\nstor y</w>\nch ri\ndo wn</w>\nhom e</w>\nf fe\nfre e</w>\nd a</w>\nb or\nf il\nci al</w>\nthan k</w>\nsi de</w>\nle ar\nqu e\nl ine</w>\nt en\nat es</w>\nye ars</w>\nm y\npho to\nbeau ti\nri ght</w>\nn u\nfor m\nshi p</w>\nb an\nth er\nd ays</w>\ng am\nas on</w>\ng y</w>\nðŁ İ\nbirth day</w>\nse t</w>\nic k\ne t\nst ill</w>\ncom ing</w>\nta ke</w>\nðŁ ĩ\nb b\ns ol\ns on\nd en\ne p\nmu sic</w>\nthe m</w>\nde n</w>\nwh y</w>\nf oo\nc ra\nam az\nw n\nh ol\nt ting</w>\nw r\nu e</w>\nma g\nc ro\nl an\nc lo\nb ra\na k</w>\ns ing</w>\nc al\nre ad</w>\n' ve</w>\njo h\nb ab\nd ri\nb lo\nbi g</w>\ner ic\nin t</w>\nt or</w>\ntr y</w>\nl a</w>\nle g\nhou se</w>\nm ic\nv al\nbeauti ful</w>\nl itt\nchec k</w>\nne w\nver s\ns w\nar i\npla y\nh er\nâĢ ĵ</w>\nw in</w>\nm a</w>\ncon gr\nsch ool</w>\nf un\n. @</w>\nhe al\nic h</w>\nd el\nwh ere</w>\nl on\nke t</w>\ntw o</w>\nmu ch</w>\nwat ch</w>\nv en\nd ed</w>\na st</w>\nk ed</w>\nb as\ngo ing</w>\nm p</w>\ne ver</w>\nw ays</w>\nro o\nde sig\nl y\ns ed</w>\nto p</w>\nl in\nch an\nto o</w>\nit ing</w>\nd ent</w>\ngh ts</w>\nt y\nsp o\nne ed</w>\nb lu\nin st\nbe ing</w>\nâĿ ¤\nw el\nl s</w>\nhi m</w>\nm ay</w>\nst ing</w>\nn a</w>\nel y</w>\nlitt le</w>\ng a\nn at\ntom or\nm c\nh on\nw ant</w>\na ir\npi c</w>\nam eric\np er</w>\nle ss</w>\nwee k\nve l</w>\na h</w>\nc ap\nch am\ng er\nti m\ntomor row</w>\nne ss</w>\nst ate</w>\nh al\nser v\nz e</w>\no s</w>\np at\nv is\nex c\ns in\nf f</w>\nc ity</w>\nc en\nan y\nb el\nsu mm\nt in\nw ould</w>\nloo king</w>\nk o\nce le\nfam ily</w>\nm er\npo w\nhel p</w>\nbu s\nc o</w>\nc le\nsel f</w>\nen s</w>\nic s</w>\nth o\nan i\nch o\nle ad\nb s</w>\nt wee\nth ink</w>\nfor e</w>\nch il\nvi de\ndi d</w>\nal e</w>\nch i\nv il\nen ds</w>\nw ing</w>\np as\n' ll</w>\nv ol\ns a</w>\ng s</w>\nman y</w>\nj ec\nbe fore</w>\ngra ph\nn y</w>\nur ing</w>\nw il\nd d\nbu il\nf av\nst ed</w>\ntr an\nl ing</w>\nou d</w>\nd ge</w>\nfi el\nnati onal</w>\nst a\nc er\nw ere</w>\nin a</w>\nse ason</w>\nc ou\nn ed</w>\namaz ing</w>\nti ons</w>\ncele br\nn s</w>\na th\nhe ad</w>\ns day</w>\nd ar\nlo c\nv in\nan other</w>\ng oo\ns at\nn y\njo in</w>\npre s\ns es</w>\ns ing\nan a</w>\nin ing</w>\n.. ..</w>\nc our\nï¸ ı\nac t</w>\ncau se</w>\nli ght</w>\nam s</w>\nt a</w>\nb al\nf c</w>\nhi gh</w>\noff ici\nt t</w>\nchri st\nd ic\nd ay\nra l</w>\nh or\n: )</w>\nvi si\nn am\no b\nma s</w>\ngh t\nre ally</w>\nt un\nfin d</w>\nthr ough</w>\npor t</w>\nu t\nti ve</w>\nst y\nn e</w>\nor e</w>\nðŁĺ Ĥ\nsupp ort</w>\nne ver</w>\nev en</w>\nðŁ Ķ\nh a</w>\ny a</w>\nl d\nu k</w>\nr an\nj am\nwi th\nme di\nd es</w>\nne y</w>\nch ing</w>\nal e\nh y\nk in\n! !\nd y\npl ace</w>\nal so</w>\nb le\nwh ich</w>\nbl ack</w>\nb li\ns ay</w>\npar k</w>\npl ay</w>\nir e</w>\nvide o</w>\nweek end</w>\na il\nke y</w>\np t</w>\nw ard</w>\nfri day</w>\nd in\nine ss</w>\ng ro\nb en\nal ways</w>\nt ball</w>\nag o</w>\nm il\nc y\npro duc\ndi sc\nun der\nple ase</w>\nsp or\nfu ll</w>\ne y</w>\nðŁ Ļ\nis e</w>\niti es</w>\nc at\nk no\nu se</w>\nfo re\nk er</w>\nar t\nhi gh\nop en</w>\ns an\ne f\nour s</w>\nsh ed</w>\nst ri\nd ro\naga in</w>\ni m</w>\nðŁ ĵ\nen jo\nfu n</w>\nge tting</w>\np en\ng er</w>\nc li\nan y</w>\never y</w>\ne u\nwom en</w>\nâ ľ\ne st</w>\nc ould</w>\nr y\n\" @</w>\nth ou\nsh a\ncomm un\nb er</w>\nd ents</w>\ndi s\nwh ile</w>\naw ay</w>\ndi o</w>\nh am\ng la\nd ate</w>\nk a</w>\nmis s</w>\nun ch</w>\nw on\nin f\nroo m</w>\ng a</w>\nre al</w>\nex per\ndi rec\nsh ould</w>\nsp r\ng ol\nl ong</w>\nbet ter</w>\nor i\ne y\ni ence</w>\nil s</w>\nz z\nh an\nf ound</w>\nv s</w>\nâ Ļ\npo st</w>\nti c</w>\npar t</w>\nm en\nren ce</w>\nce ss</w>\nv ic\ns il\nsho p</w>\nðŁĺ Ĥ</w>\nf ood</w>\nv al</w>\nsti c</w>\ny ou\ns ays</w>\ne lec\nst ar</w>\no c\nl and\ni d\nc tion</w>\nfiel d</w>\ns of\nst art</w>\nwat er</w>\nfri ends</w>\non es</w>\nðŁ Į\nf la\nf ar\nwh ite</w>\npar ty</w>\nin st</w>\ngr ou\nt v</w>\nevery one</w>\nm ent\nj a\nch a\npr in\nan ts</w>\nd uring</w>\nl at\nl ar\nwe st</w>\nth en</w>\nk a\ny oun\nin sp\nin te\nwe en</w>\nvisi t</w>\naga inst</w>\nre le\nhe ad\nc es</w>\nto wn</w>\nloo ks</w>\nth re\nre gi\nren t</w>\npro jec\ngir l</w>\nse ar\nw o\nm om\nc ar</w>\nh un\npu bli\nd i</w>\np le</w>\nc all</w>\nc ri\nu m\nfor d</w>\nper fe\nfri end</w>\nh ard</w>\nssi on</w>\nte st</w>\npla ying</w>\nar ound</w>\nbe cause</w>\nke ts</w>\nme et</w>\nsat ur\nar ti\nwor k\nj un\nv en</w>\nr un\nme mber</w>\npor t\nsu per\nt wit\ns am\nel s</w>\nt ly</w>\nad v\nati ve</w>\nat h</w>\ns ure</w>\nav ail\nla r</w>\ns qu\nar ds</w>\nev ent</w>\nm en</w>\nl l\no ver\nlo gy</w>\nit al</w>\ntim es</w>\nm al\nb ack\nc oo\nma king</w>\nst ru\nâ ģ\nit u\nsh ar\ng an</w>\nc as\ns n\nsumm er</w>\npic ture</w>\nf an\nh in\nchrist mas</w>\nc y</w>\npr oud</w>\ncham pi\ndesig n</w>\npp ing</w>\nho pe</w>\nc a</w>\navail able</w>\nma y\nwe d\nphoto graph\nspe cial</w>\nsal e</w>\nsto p</w>\ner y</w>\na we\nal ity</w>\nhi story</w>\nam a</w>\npre si\nb ru\nwor king</w>\nd one</w>\nd r</w>\nk en</w>\nfe at\nw ood</w>\nate st</w>\nsun day</w>\nmo vi\nvel y</w>\ns le\nf ace</w>\nsp ec\nstu dents</w>\nb y\nha m</w>\nsp on\nbus iness</w>\nd at\ni e</w>\ni p\nso ci\ng lo\nh and\nre cor\nr s</w>\nme e\nke ep</w>\np ur\nheal th</w>\nsh e\ncom ple\ngo d</w>\nda vi\ncol lec\nli st\nr a</w>\nclu b</w>\nt ers</w>\nin clu\nth ings</w>\npl an\nâ ĺ\njoh n</w>\nsh ing</w>\nat ul\nso on</w>\nblu e</w>\ng or\nsatur day</w>\nw on</w>\ncongr atul\nse e\nâĿ¤ ï¸ı</w>\ntho se</w>\nðŁĺ į</w>\nfin al</w>\nd ou\nit h</w>\no wn</w>\nro ad</w>\nt our</w>\na st\nindi a</w>\nti l</w>\nn d</w>\nf er\nfav or\nsu l\nlear n</w>\nfir e</w>\nju st\ngrou p</w>\na h\nr ac\nbo dy</w>\nu r</w>\nc are</w>\nà ¸\np lo\no h</w>\npo s\ngi ve</w>\nte ch\nsu b\nc ent\ner ing</w>\ny m\nil ity</w>\nf ic\nlon don</w>\nv ir\ngu ys</w>\nb a</w>\nðŁ ¤\nbab y</w>\nsc re\nðŁĺ į\ntru mp</w>\nun der</w>\nchan ge</w>\ni an</w>\ncol le\nss es</w>\nl er</w>\nss ed</w>\nn ice</w>\nann oun\npow er</w>\ns ar\na king</w>\nmin i\ns li\ns wee\nk ar\nfu l\nc ru\nac tion</w>\na ther</w>\n) .</w>\nst and\nde vel\na a\ng an\nle ft</w>\nlo l</w>\nre l\ntran s\nm ents</w>\nin t\ne f</w>\nman ag\ndi g\ngen er\ndo wn\np au\nti v\nk u\nth ur\nk en\nst on</w>\nf ans</w>\ntal k</w>\ntwee t</w>\nt oo\nsty le</w>\npro te\nse con\nfr on\nawe some</w>\ng l\np al\nne t\ns or\nla u\ng on\nsin ce</w>\nt ty</w>\nser ies</w>\nme mor\nb eli\nfil m</w>\ndi d\ndi es</w>\no t\ncongratul ations</w>\np ra\ne ve</w>\nw oo\noffici al</w>\nsu c\nin cre\nb on\npar t\npp ed</w>\ncla ss</w>\nsi ve</w>\nbo y</w>\ncu l\nperfe ct</w>\nt ou\nd am\nwel come</w>\nfoo tball</w>\nh i</w>\np ap\nwa it</w>\nad a</w>\ncongr ats</w>\nyoun g</w>\nexc ited</w>\nre ce\nj an\nv a</w>\nre d\nst ra\nmedi a</w>\n' d</w>\ndo es</w>\nle t\nmu l\nill s</w>\ngre en</w>\nm el\nto ge\nfu ture</w>\nye ster\nvers ity</w>\nfor m</w>\nta in</w>\ni de\nch es</w>\nki ds</w>\nqu i\nha ha\nde ta\nbi g\nfavor ite</w>\ngir ls</w>\ncon tin\ndo m</w>\nsear ch</w>\nu al</w>\na ir</w>\nd ers</w>\nmon th</w>\nc er</w>\nyester day</w>\ncommun ity</w>\nad e</w>\ndo g</w>\nvil le</w>\nic es</w>\nd eli\nsy ste\nru n</w>\nis m</w>\nhe art</w>\nc up</w>\nen ti\nfe w</w>\npresi dent</w>\ne ds</w>\nun til</w>\nfe sti\no k\nf lo\nsa id</w>\nol e</w>\nme d\ntra vel</w>\nÂ £</w>\nph one</w>\ntoge ther</w>\nfa st</w>\nlo t</w>\ngam es</w>\nsh ir\nbet ween</w>\ny es</w>\nth ers</w>\ndo ing</w>\nm ac\nat or</w>\nb and</w>\nfol low\nprojec t</w>\ndevel op\ndi ffe\ncon fe\nspe ci\nca st</w>\ny s\nbo ard</w>\nr d</w>\ni al</w>\nsh oo\nr am\nha ving</w>\nsh are</w>\nfol low</w>\non e\nn ame</w>\nm r</w>\npu t</w>\ndisc u\nor y</w>\nc ame</w>\nou s\ns ite</w>\ntwit ter</w>\nt b\nt it\nfin ally</w>\nz ed</w>\nsu per</w>\ncom pan\nus ing</w>\nall s</w>\nli st</w>\nr is</w>\nsho t</w>\ng al\nt ar\nde l</w>\njoh n\nâĢ Ķ</w>\nsome thing</w>\nra m</w>\ninte re\nwh e\nb it</w>\nðŁ į\nstre et</w>\noun d\na i\ntic kets</w>\nmovi e</w>\nre al\nk y\nta king</w>\no pp\nc c</w>\nl am\nm oun\nin ve\nbl ack\nus ed</w>\non line</w>\ny or\nloc al</w>\ngu e\nc ks</w>\no w\nge st</w>\nbo ys</w>\nilli on</w>\ncon t\nre ci\nin ed</w>\neu ro\nno w\nse en</w>\np h</w>\nte ach\nde f\nsou th</w>\nsu ch</w>\naw ard</w>\nmu st</w>\nis su\nca re\nfe el</w>\np lu\nl atest</w>\nspor ts</w>\nwe b\nte x\ne ment</w>\ns k</w>\nfi c</w>\nw an\nte ch</w>\no t</w>\nbo x</w>\nn er\nfre e\nt al</w>\na sh\nc ase</w>\nho t</w>\nwon der\nmee ting</w>\ner a</w>\nch all\nðŁ Ĳ\njo b</w>\nil i\nc ool</w>\nj our\nth s</w>\nm o</w>\nf el\ndi e</w>\nmic ha\ne le\nte am\nserv ice</w>\nst and</w>\nma kes</w>\np ing</w>\near ly</w>\ncom es</w>\ne k</w>\nho li\nv ers</w>\nag ue</w>\ns au\nthre e</w>\nmon day</w>\nfa shi\nsome one</w>\nth ro\nse a</w>\nb ad</w>\nsupp or\ntur n</w>\nur y</w>\nm ing</w>\nphotograph y</w>\nn ic\nmar k</w>\npre tty</w>\nss ing</w>\nwat ching</w>\nme mb\nar ri\ncoun ty</w>\nbe ach</w>\nfr an\ncen ter</w>\npol ice</w>\nb at\npubli c</w>\nt an\npre ss</w>\ns af\ns y</w>\nge ts</w>\nro y\nn ers</w>\ny our\nbu y</w>\nst ers</w>\nsho w\nas ed</w>\nchil dre\naf ric\nin es</w>\nsp ace</w>\nsc ri\nh all</w>\npa in\nar ing</w>\nhom e\nm ur\nheal th\nch ed</w>\ns and\nrece i\ngu y</w>\ne a\nameric an</w>\nre si\nchildre n</w>\n- -\ni ri\ning ton</w>\ncoun try</w>\nro ss</w>\nle n</w>\nann a</w>\nboo ks</w>\nb c</w>\ne ce</w>\nd om\nlo vely</w>\nk h\npe t\ng y\ng ri\nst age</w>\noff ice</w>\nro ck</w>\nm on</w>\nb ay</w>\nt able</w>\nsu n</w>\nm ed</w>\nth in\nl or\nf low\n( @</w>\nuni versity</w>\nstor e</w>\nfron t</w>\ngoo d\nz a</w>\nvo te</w>\nnor th</w>\nhe y</w>\nan im\nor der</w>\nmi d\nwith out</w>\na de\nre member</w>\nmar ket</w>\n? ?</w>\nmu s\ntra ining</w>\ne duc\nbu t\nco ver</w>\nst an\nsc en\nb la\nbre ak\nl ou\ns ame</w>\ng old</w>\na in</w>\no s\nbo th</w>\nl it\nver n\na i</w>\nal bu\np a</w>\nenjo y</w>\nbe g\nell ing</w>\nthur sday</w>\ninf o</w>\ns an</w>\nameric a</w>\nha ir</w>\nte l</w>\nmar ch</w>\ncon cer\ncolle ge</w>\nconfe rence</w>\nap p</w>\nh our</w>\nch ang\nâ ļ\ns our\nol s</w>\nwe ather</w>\nw ar</w>\np hi\nfesti val</w>\nsecon d</w>\ncu te</w>\npr ac\nen er\nstr y</w>\nle a\npol it\ns av\nse n</w>\no w</w>\nm i</w>\nne ar</w>\nou ght</w>\nz e\nco ffe\nw illi\nd an\nse y</w>\ndavi d</w>\ne se</w>\nf an</w>\nde ci\nthe at\nno v\nati on\ntr ac\nsc i\nre view</w>\nc el\ne m</w>\nu n</w>\nju ly</w>\nor ig\nti on\nd ru\nform er</w>\nst ay</w>\naf ter\nin v\ntoo k</w>\ndat a</w>\nb al</w>\ntu es\nd an</w>\nev ening</w>\nðŁĺĤ ðŁĺĤ\nd ol\nu res</w>\npro vi\nt s\ne st\nsig n</w>\nj ac\nu k\ns ong</w>\nye t</w>\nbo w\nin du\nj ap\nh oo\npo int</w>\nany one</w>\nz y</w>\ni st</w>\nh ur\nit al\nbuil ding</w>\nwom an</w>\nch ur\nj er\nper for\nco ach</w>\nle ague</w>\nce ss\nne t</w>\ni mag\nnati on\nbr it\nqu e</w>\naw ards</w>\nag es</w>\nwor ks</w>\nc ed</w>\nman ce</w>\nl ate</w>\nig n</w>\nmon ey</w>\ntru e</w>\ni i</w>\nt ell</w>\npl ac\np ac\nas y</w>\nwor ld\nbe hin\nim port\nread ing</w>\ngra m</w>\ngi ving</w>\nme t</w>\nh it</w>\nfor ward</w>\nst om\npres ent\njun e</w>\nso cial</w>\nno on</w>\nmar t\nhal f</w>\ns we\ngo vern\nk er\ndeta ils</w>\nli sh</w>\n_ _\nac y</w>\nsi a</w>\nber t</w>\nf all</w>\n! !!!</w>\n) ,</w>\nth i\nd iti\nsp ort</w>\nk ing\nf it\nst af\nc at</w>\nmu se\ncen tr\ny er</w>\ncon tro\nb loo\nwal k</w>\nac tu\ndid n</w>\nli m\nlear ning</w>\nre search</w>\nwed ne\nau th\nh ours</w>\nk y</w>\nf ar</w>\nh en\n.. ..\nit ch\nri l</w>\nstr ong</w>\nsk y</w>\nque sti\njam es</w>\nr on\nd g\nf ur\nc in\ndo es\napp ro\nmar ke\ntu res</w>\nful ly</w>\nch at</w>\nbehin d</w>\nte m\nfin i\nmis sion</w>\nb att\nfe el\nhe av\nevery thing</w>\nb ar</w>\nw ish</w>\npre mi\ni ma\nexper ience</w>\ne ach</w>\nre port</w>\nswee t</w>\ntic s</w>\nspr ing</w>\nre spon\nsyste m</w>\nvic tor\nl in</w>\nsa w</w>\nal ready</w>\ngh ter</w>\nf le\nã ĥ\nbr ing</w>\nalbu m</w>\n- -</w>\nell s</w>\nst an</w>\nto m</w>\ninter national</w>\nw ent</w>\nan ni\nmat ch</w>\npp er</w>\nst one</w>\nsm all</w>\nra in</w>\nfashi on</w>\nare a</w>\nv an\nag ram</w>\nk o</w>\nthou ght</w>\nwor th</w>\nv an</w>\nm er</w>\ncoffe e</w>\nit es</w>\ng n\narti st</w>\nc on</w>\nar ch\nc ir\nse cre\ngr ound</w>\nis o\nh and</w>\nco m</w>\nbri dge</w>\nh s</w>\nx i\nl ink</w>\npu l\nsp l\nr ace</w>\nf li\nri ver</w>\ng as</w>\ndi sco\nd al\nplay er</w>\nf it</w>\nphoto s</w>\nit y\no k</w>\nj or\ntr a</w>\nap ril</w>\nad s</w>\na di\nsol u\nbeau ty</w>\ndo or</w>\nme ss\nup date</w>\nali a</w>\nsch o\nen ed</w>\nmom ent</w>\nsco t\nsc ience</w>\ni or</w>\nti es</w>\nac ross</w>\nous ly</w>\nsh es</w>\ndoes n</w>\np age</w>\nwat er\nm illion</w>\ncla ssi\nl ic\nca st\nform ation</w>\nmicha el</w>\nell o</w>\ns mo\nin ts</w>\nvi sion</w>\nop ening</w>\nld n</w>\nau str\ntues day</w>\nwin ner</w>\npo ssi\nr ound</w>\nshir t</w>\ndi t</w>\nb o</w>\nu es</w>\nil led</w>\nal ong</w>\ntri p</w>\nstar ting</w>\nim pro\nk an\nper son</w>\nno t\nre co\nne eds</w>\nc le</w>\nli e</w>\nre st</w>\nr ing</w>\nwin ter</w>\nsi mp\nmo m</w>\nbe er</w>\nfac e\ntor s</w>\nus a</w>\ncollec tion</w>\nge or\nse ssion</w>\ntr ying</w>\nla s</w>\nla ke</w>\nj en\norig in\nstu dent</w>\nse cur\nv in</w>\npic s</w>\nex pe\ncom p\ngon na</w>\ne qu\nb ad\nle y\na u</w>\nmemb ers</w>\nbre ak</w>\nw all</w>\ngi c</w>\ndin ner</w>\nbu l\ninsp ir\nr i</w>\nmin d</w>\nic a</w>\nwin ning</w>\ntal king</w>\nt ren\ns is</w>\nt en</w>\nwonder ful</w>\ns now</w>\nhe ar</w>\nth om\nno thing</w>\ngu i\nst in\nblo g</w>\nfe st</w>\nb un\nle e</w>\nwar ds</w>\nch ance</w>\ndre ss</w>\nre n</w>\npau l</w>\np es</w>\ntech no\nru ssi\nc ard</w>\ne ast</w>\nmar i\nw ine</w>\nt i</w>\nla w</w>\nstr ic\nk i</w>\nap e</w>\nau gu\npro fe\nas h</w>\ncour se</w>\nma il</w>\nren tly</w>\nd un\nm un\nlo ve\nis land</w>\ndri ve</w>\ns l\nend ed</w>\nma in</w>\nlo st</w>\nnat ure</w>\nâĿ¤ ï¸ı\nch ic\nre por\np in\npr o</w>\nst ation</w>\nce p\nta kes</w>\ncompan y</w>\ngo es</w>\non d</w>\nma ch\nra dio</w>\nd ad</w>\nro ck\nj a</w>\np ay\nchampi on\ne e\nin de\ntt a</w>\nati c</w>\nt ab\nbeli eve</w>\nener gy</w>\nz i\nt at\nwor d</w>\non ce</w>\nre sul\ny l\nand re\nan o</w>\ninst agram</w>\nclo se</w>\nt am\ncu stom\nw a</w>\ncon om\nsho ws</w>\nli fe\nk in</w>\nro b\nt age</w>\nn ation</w>\nal most</w>\nlist en</w>\nsa ve</w>\nre li\nac e\nmar y</w>\ntre e</w>\nfor get</w>\nj ack\nwa iting</w>\ndirec tor</w>\nh ill</w>\nbor n</w>\nte mp\nf l</w>\nst e</w>\non a</w>\nsing le</w>\nwedne sday</w>\nun ited</w>\nin o</w>\n@ _</w>\nne l</w>\ncelebr ate</w>\nen ding</w>\nde al</w>\nj i</w>\ncan ada</w>\nhu ge</w>\ntr ack</w>\nâĢ ¢</w>\nf y</w>\nfan ta\nan g</w>\nyor k</w>\nrele ase</w>\np un\nep iso\nwor ds</w>\nt our\np ack\ni gh\nclassi c</w>\nperfor mance</w>\nke t\nafter noon</w>\nrecor d</w>\nwin s</w>\npro ble\nâĿ ¤</w>\nf our</w>\nb ed</w>\nban k</w>\nd ance</w>\ns la\ncal led</w>\nmi ght</w>\na p</w>\npa st</w>\nðŁ ļ\ndiffe rent</w>\nit e\ngi ft</w>\nssi ve</w>\nchur ch</w>\nc us</w>\npro gram</w>\nho tel</w>\nic e\nma d\nsecur ity</w>\nen ge</w>\nd c</w>\nen ough</w>\nst a</w>\ne ty</w>\nde ad</w>\ng un\nhe ar\nm ir\nhu man</w>\ngre ss</w>\noun ds</w>\npi ece</w>\nbre aking</w>\ngar den</w>\nfi ght</w>\nvie ws</w>\nf ish</w>\nstar ted</w>\nrun ning</w>\ngre en\nser i\ns m</w>\nas k</w>\nd or\nde ath</w>\ne conom\ner i\nir d</w>\ns er</w>\nl unch</w>\nâģ ¦\nbo x\nnat u\nba se\nb an</w>\nf al\nglo bal</w>\nwil d\nwo w</w>\nout side</w>\nmo ve</w>\nle ad</w>\nan al\nmuse um</w>\non g\nha w\npow er\nthan k\nb ac\nchar ac\ncam pa\ndig ital</w>\nr o</w>\nop er\nde v\nw ol\np ati\nf a</w>\nm ale</w>\npap er</w>\nill ing</w>\nc s</w>\nâ ĥ\neduc ation</w>\nta ken</w>\ne ffe\nm ou\ns ad\n\" .</w>\nbas ed</w>\nstaf f</w>\ninclu ding</w>\nli ving</w>\na c</w>\nch ina</w>\nmo b\nstor m</w>\nlu ck</w>\nph il\no o</w>\ny n\ntra vel\nk el\nti al</w>\npr ice</w>\nboo k\nimport ant</w>\nbi o\np ool</w>\nny c</w>\nf ab\nlo ad</w>\n? !</w>\nchall enge</w>\ncr y\nser ve</w>\nwe ar</w>\nbu s</w>\nta in\nnu mber</w>\nro r</w>\nk at\ni z\nth ough</w>\nho sp\nm m</w>\nfa ir</w>\nut es</w>\nho t\npo p</w>\nfi ed</w>\ncam p\ndevelop ment</w>\nli br\nc ali\nem s</w>\nâģ¦ @</w>\nb ol\nis ed</w>\nstand ing</w>\nmo del</w>\nit a</w>\ng le</w>\nbro wn</w>\nima ge</w>\nve red</w>\nfor ce</w>\no il</w>\npar tic\nsh u\nda ily</w>\nla w\nse c\ncla ss\ncam p</w>\nholi day</w>\ncl in\nk ers</w>\npres ent</w>\ngam e\nincre di\ner ship</w>\ninter view</w>\nb ill</w>\ndu e</w>\nand y</w>\nab o\nin nov\nke y\nac ade\np il\nmo der\nst ars</w>\nbr and</w>\nf er</w>\nwee ks</w>\ncon si\npr e</w>\nsa fe\nwr it\ndi um</w>\nla unch</w>\nmarke ting</w>\nann ual</w>\nas si\ncour t</w>\nla dy</w>\nc ted</w>\nand a</w>\nin side</w>\nchil d</w>\nopp or\nsm ith</w>\ncentr e</w>\ngu e</w>\nâģ ©</w>\nf ren\nst y</w>\nfor t</w>\nent ly</w>\nis n</w>\nke ep\nto ber</w>\non y</w>\nbo y\nal d</w>\ncol la\nde mo\nle vel</w>\ncom pet\nad o</w>\nb our\nfanta stic</w>\nm ate</w>\ns u</w>\nsou th\noppor tun\nvers ary</w>\nlat er</w>\nbu d\nface book</w>\nla un\nster n</w>\np it\n! \"</w>\nma j\ngr am\ntb t</w>\nfi re\nhapp y\na ks</w>\nwh ole</w>\nactu ally</w>\nill er</w>\nell a</w>\nlo ts</w>\nal ex\nan ge\nlan ds</w>\nðŁĺ Ń\nen ter\nr ou\nepiso de</w>\np ed</w>\nin ten\nsh ire</w>\nwh o\npl an</w>\nh o</w>\nca ke</w>\nwe st\nmag az\nfre sh</w>\nc c\nn ar\nch ris</w>\nwr iting</w>\nw er</w>\nn om\nl o</w>\nmi dd\ndre am</w>\no l</w>\nti onal</w>\nde b\n> ></w>\nbe come</w>\ns i</w>\ngr and</w>\nall ing</w>\nhi stor\nri de</w>\ni red</w>\nsaf e</w>\nque en</w>\nci l</w>\nin tro\nvi l</w>\nd ani\n.. .\nar tic\nst at\nsh ort</w>\nor ing</w>\nsel fi\nmis si\ndo c\nb it\ng all\nb om\ni re\nse lec\nd ition</w>\nðŁĶ ¥</w>\nfri end\nbe at</w>\ngh ting</w>\nðŁĺ Ĭ</w>\npe ace</w>\nex hi\nant a</w>\nab ility</w>\nil lu\nj on\nqu ality</w>\ntri bu\nm es</w>\nplay ers</w>\nfa ir\ncu t</w>\nc ab\nsuc cess</w>\nb i</w>\nsu s</w>\npro mo\nsch e\nan ge</w>\nic o</w>\ncomm it\ncat ch</w>\nill a</w>\nkin d</w>\nfeel ing</w>\nqu o\ns ay\nanni versary</w>\nspo t</w>\nmo ther</w>\nan e</w>\np end\nyour self</w>\nop s</w>\napp le</w>\nmin utes</w>\np o</w>\ngr and\nri es</w>\nha ha</w>\ncare er</w>\ned ition</w>\nde c\nric k</w>\nam i</w>\nconcer t</w>\niti ve</w>\nge ous</w>\nd ly</w>\nt te</w>\nadv ent\ni g</w>\nli ghts</w>\nak er</w>\nsk y\nâĥ £</w>\nr ay</w>\nfini shed</w>\nw ay\ns d\nac coun\nðŁĴ ķ</w>\nck y</w>\nch el\nlit er\npain ting</w>\nlo s</w>\nst un\ntechno logy</w>\nn as\nma r</w>\nb il\nafric a</w>\nki e</w>\ney es</w>\ngol f</w>\nplu s</w>\nni a</w>\nit ec\nserv ices</w>\nwed ding</w>\nkno wn</w>\nte le\n.. ...</w>\nstar ts</w>\npa ren\nw ants</w>\nati onal</w>\nmon ths</w>\nwin do\nfav our\ner t</w>\nmagaz ine</w>\nex clu\nre ve\nb c\norigin al</w>\ne ss\nn al</w>\nan ti\nst ro\nt ice</w>\nstu dy</w>\nà ¤\nv ac\nnation al\nfi ve</w>\nra in\nve ment</w>\nu te</w>\nver se</w>\nem er\nar my</w>\npossi ble</w>\ngue ss</w>\nval ley</w>\nther n</w>\ncro w\nm r\ncol or</w>\non to</w>\npic k</w>\ncle ar</w>\ndar k</w>\nt ac\nwan ted</w>\nit ting</w>\ncan cer</w>\ngovern ment</w>\ndi e\nri se</w>\nz ing</w>\ncol d</w>\nf oun\nstu dio</w>\nstr ation</w>\nbro ther</w>\na head</w>\nsh el\nmic ro\nic ally</w>\nd au\nsig ned</w>\nvi ol\na x\nas se\ni o\nw re\nspl ay</w>\nch ick\naugu st</w>\npl at\nti ps</w>\nsp i\nhu man\ne asy</w>\nlo gi\nmi ke</w>\ngro w\nag re\nw w\nsh ad\nmo tiv\nwi de</w>\ntur ns</w>\nom g</w>\nv ar\nde fin\nsu g\nj im\nðŁĶ ¥\nt d</w>\ncampa ign</w>\nnam ed</w>\nre tweet</w>\nco p\nt v\nle av\nk is\ndou ble</w>\ns mar\nissu e</w>\nvil la\nin formation</w>\nli es</w>\nsto ck</w>\nn t</w>\ndi stric\nsh or\nmi x\ner o\nse p\nme x\nsee ing</w>\nli ve\nre min\nco de</w>\ng ur\ns c</w>\nwil d</w>\nl un\nh ood</w>\nspo t\nfa ther</w>\nfore ver</w>\nup d\ntra f\nf ly</w>\nne ed\ngra du\ntra in</w>\nma ke\ns ab\nbe y\nsi ze</w>\nlead er</w>\ntal ks</w>\ne u</w>\nlo g\nfo x</w>\ngor geous</w>\nle ss\nle ts</w>\nsur pri\nmy self</w>\nno te</w>\nli ves</w>\nf ru\nlo ved</w>\nse ver\nde m\nj i\nso c\nh old</w>\ndo gs</w>\nn i</w>\nâ ŀ\nlea ve</w>\nair port</w>\nben ef\nex pl\nshi ps</w>\ncomple te</w>\nach i\ngre at\nvin tage</w>\nj ack</w>\nro c\nwoo d\npri v\noff er</w>\ney e</w>\nver sion</w>\nte a</w>\nco ach\noff ic\nw ell\ng en</w>\ns at</w>\nh h\nyou th</w>\no x\n? \"</w>\nm t</w>\nmi x</w>\ng g</w>\nd le</w>\nnatu ral</w>\nbuil d</w>\nbreak fast</w>\nthin king</w>\ntheat re</w>\nmo on</w>\nber g</w>\ngo als</w>\ngeor ge</w>\nen e\nexc ell\nil ing</w>\ntun e</w>\ny ed</w>\ng ate</w>\nm it\nnet work</w>\njo e</w>\nh ello</w>\nf b</w>\ntu be</w>\nwe aring</w>\nath le\nstru c\nhar d\ngla ss</w>\ng ers</w>\nthro w\ng es</w>\nb t\nindu stry</w>\nmanag ement</w>\nali st</w>\ngo al</w>\nstre am</w>\ny el\na vi\nici ous</w>\no thers</w>\ns ki\nchri sti\nbir d</w>\ne sc\nm in</w>\ntr o</w>\nl t</w>\nj an</w>\nim p\nri ghts</w>\nsh a</w>\nor gan\ncent ral</w>\nar a</w>\nro ll</w>\nfavour ite</w>\nche ster</w>\nel se</w>\np ay</w>\ncar s</w>\nm ine</w>\nste p</w>\nprac tice</w>\nmaj or</w>\nh ang\nðŁĺ ĺ</w>\nn on</w>\nv ari\neng ine\nvol un\ndi a</w>\ni led</w>\narch itec\np ink</w>\nd s\nth y</w>\nwa sh\nweb site</w>\nba g</w>\ncontro l</w>\nel li\nf ra\nan sw\nd ence</w>\ny u\nr on</w>\nol a</w>\ng in\ndr in\nli c</w>\ncou ple</w>\nsp ar\ng on</w>\ncre ate</w>\nc t\ncelebr ating</w>\nde ep</w>\ne at</w>\nte e</w>\nvo ice</w>\ndro p</w>\nvis it\nat ors</w>\nsta dium</w>\nf t\nw is\nro l\ngra de</w>\nfam il\npo ints</w>\nre pre\nw as\ntraf fic</w>\njap an</w>\nor g\nhon or</w>\ntex as</w>\nman u\nâĻ ¥</w>\nsafe ty</w>\nre r</w>\nb ag\nem plo\nrele ased</w>\nre gu\nak a</w>\nn av\nro le</w>\nsen ior</w>\nspec t</w>\ncro ss</w>\nlin es</w>\nbe st\np ack</w>\ns in</w>\nti e</w>\nmis sing</w>\nsun set</w>\nli ber\nis ing</w>\nj ay\nsk i</w>\nchampion ship</w>\nac tiv\nla dies</w>\nplay ed</w>\ny y\npu bl\nal o\npri de</w>\ns r\npa ki\nlu x\nsur vi\nck ed</w>\ne ts</w>\ncho col\naustr alia</w>\npar is</w>\nmi les</w>\nh at\nment al</w>\nal a</w>\nme an</w>\nmob ile</w>\nen a</w>\nin si\nf ound\nchi ef</w>\nt ag\nincredi ble</w>\nre turn</w>\nÃ ©\ngoo gle</w>\nfren ch</w>\ncre w</w>\nhal lo\nali an</w>\nj az\nch er</w>\nsil ver</w>\nnor th\neng lish</w>\nbase ball</w>\nc af\nlim ited</w>\nfollow ing</w>\napp reci\near th</w>\nk ir\nve mber</w>\nw ed</w>\np tion</w>\ng ed</w>\noc tober</w>\nfl ori\nc r</w>\nen cy</w>\nga ve</w>\nlor d</w>\nstu ff</w>\nber ry</w>\npo st\nsm ile</w>\nbro ad\nst ate\ngg er</w>\nme ans</w>\nic y</w>\ngu n</w>\ny o</w>\nma ster</w>\nbur g</w>\nhan ds</w>\nni e</w>\n/ /</w>\nuni on</w>\nbrit ish</w>\nbig gest</w>\ndistric t</w>\nam ing</w>\nh il\no ce\nper son\npas s</w>\nen vir\nscho ols</w>\narri ved</w>\nanc es</w>\ninsp ired</w>\nex pla\nbe n</w>\nlibr ary</w>\nbo tt\nam p\nste ph\ncont act</w>\nb ang\nm s\ncali for\nt old</w>\nbatt le</w>\nb b</w>\nchic ago</w>\nâľ ¨</w>\nstr ate\nsh i</w>\nde ce\n- )</w>\nad d</w>\nla b\nj ones</w>\nleg end</w>\ncast le</w>\ning er</w>\nst ance</w>\nbe l</w>\nur a</w>\nre fu\nlead ers</w>\npo t\nse x\nh ic\nartic le</w>\nki d</w>\nfr ance</w>\nx x</w>\nex e\ngui de</w>\nvolun te\npr int</w>\nal i</w>\nce o</w>\ntwee ts</w>\nw x</w>\nscen e</w>\nvol u\nant i</w>\nh an</w>\nas soci\nshar ing</w>\nro se</w>\nmini ster</w>\nsh er\nin ste\ncle an\ndemo cr\npo ster</w>\nsk in</w>\np sy\npro per\ncra zy</w>\ni am\no re\nin i</w>\nany thing</w>\npo d\nmo ving</w>\ncl ick</w>\nex plo\ncom b\ncra ft</w>\nf i</w>\nbloo d</w>\nis ra\npubl ic\nd ent\nol ym\neng land</w>\na si\nch er\nfac t</w>\nenvir on\nhar ry</w>\ng one</w>\nme dic\nenjo ying</w>\njust ice</w>\nj r</w>\nindi an</w>\nwi fe</w>\ns ound</w>\nt es</w>\ndra wing</w>\np al</w>\nide a</w>\ncr it\nju li\nil er</w>\nwar m</w>\ncl ar\nthou ghts</w>\ndef en\ncoun cil</w>\nintro duc\ndi ed</w>\njan u\nan i</w>\ns end</w>\nli er</w>\nm l\nintere sting</w>\ntra de</w>\nwin d</w>\nb ay\ns ac\nanc y</w>\nsour ce</w>\nb es</w>\norg ani\nar ly</w>\nlar ge</w>\nff ici\nta g</w>\nu t</w>\nde sp\no es</w>\ntit le</w>\nsy m\npic tures</w>\nop en\nwom en\nsho wing</w>\nri a</w>\nle ast</w>\nlead ership</w>\ncur rent</w>\nelec tr\nval ent\nlist ening</w>\nc key</w>\ngener al</w>\nde ser\ndu ce</w>\n; )</w>\nc ent</w>\nðŁĺį ðŁĺį\nsco tt</w>\npo or</w>\nselfi e</w>\nev ents</w>\ni on</w>\nwr ong</w>\nde v</w>\nh ill\nsep te\ncul ture</w>\nl ine\nsor ry</w>\ns ent</w>\nsi ster</w>\nce pt</w>\nk ri\nno vember</w>\nar i</w>\nannoun ce</w>\nz ation</w>\nbr an\ng ent\nd u</w>\nl en\nper s\nf m</w>\nmart in</w>\no p</w>\ne mb\nom e\nmidd le</w>\nsuc cess\npe ter</w>\njanu ary</w>\nf lu\nrac ing</w>\nd av\nbi ke</w>\nðŁı »</w>\npe t</w>\nshoo t</w>\nprofe ssi\nfeat uring</w>\nsepte mber</w>\nnow playing</w>\nsta ur\nz a\non ic</w>\nqu ick</w>\nbas ke\nspe aking</w>\nmil it\nz er</w>\nchick en</w>\nb ell</w>\ns ad</w>\nco ast</w>\nlo ving</w>\ny ers</w>\nd j</w>\npan el</w>\nver age</w>\ns wit\nic ks</w>\nb ou\ncalifor nia</w>\ns am</w>\nparen ts</w>\ner o</w>\nk illed</w>\nph ys\njo bs</w>\nmi gr\nan th\ne mo\nhallo ween</w>\nand er\nc m</w>\ncompet ition</w>\ne ag\ns ket\nsp ir\nmay be</w>\nexclu sive</w>\napp e\njour ney</w>\nscre en</w>\nfor d\ni o</w>\nh ate</w>\nu g\nsou l</w>\nher o</w>\nsoci ety</w>\nsy n\ngu it\nn h\nd j\nas es</w>\nim pre\nti me\nsal es</w>\nd d</w>\nf ts</w>\nsumm it</w>\nstun ning</w>\nom s</w>\ntur ned</w>\ncle an</w>\nsof t</w>\nbe at\nre staur\nde red</w>\nen ces</w>\nma gic</w>\ndi o\nsh ine</w>\ngu est</w>\nhealth y</w>\nexhi b\nstor ies</w>\npo pu\nn is</w>\nel a</w>\nbel ow</w>\nfun ny</w>\nresul ts</w>\ns ne\ncur rently</w>\nar d\ndown load</w>\nf light</w>\nm al</w>\nf ine</w>\np ad\nch u\nent ed</w>\nh at</w>\nðŁĳ ı\nste ve</w>\nj o</w>\nmar k\nr at\nb all\np c</w>\np on\nb by</w>\no li\nar ts</w>\nas ure</w>\nbow l</w>\natt ack</w>\nmi c</w>\nde ar</w>\nran ge</w>\nen ter</w>\nchocol ate</w>\nbr illi\nac cess</w>\n, \"</w>\n? ??</w>\nch ap\ncon st\nt n\nmat ter</w>\nblu e\ngall ery</w>\nem p\nwork shop</w>\nlead ing</w>\ny ours</w>\nbaske tball</w>\nw anna</w>\nth u\n_ _</w>\nmar ri\nsle ep</w>\nbi a</w>\nch e</w>\nma d</w>\nimp act</w>\no wn\nsi r</w>\nchan nel</w>\neuro pe</w>\ne sp\nk itch\nhosp ital</w>\nw ra\nroy al</w>\nf s</w>\nne u\nqu ar\nne y\nac ks</w>\nch ase</w>\npp y</w>\nst al\nat ely</w>\nti m</w>\ndece mber</w>\nr are</w>\nper form\ncre am</w>\nwe ight</w>\nch oo\nni ght\nha ven</w>\nfr anc\nkh an</w>\nbuil t</w>\nhel ping</w>\ntru st</w>\nty pe</w>\ngol den</w>\nta x</w>\ns now\ns wi\ndi sa\nquesti ons</w>\nve y</w>\nli ght\nc n\ncl oud</w>\nthom as</w>\nag ed</w>\nsh ou\nte ams</w>\ngr an\nre ason</w>\na a</w>\nyou tube</w>\nv p</w>\npi zz\nmanag er</w>\nbur y</w>\ncre dit</w>\ntre at</w>\nma x</w>\ni k\nma in\ng ing</w>\nde ad\npro bab\nye ah</w>\nã Ĥ\nbr and\nso li\npl ant</w>\nta yl\ngir l\nðŁĺ Ń</w>\nnam ent</w>\nau to\nmess age</w>\nko re\nn ur\nter r\nag u\nma p</w>\nsen ting</w>\nlo ves</w>\ngi ves</w>\ng ab\nz en</w>\nro bert</w>\ncon fir\nw ars</w>\no m</w>\nsta in\ncam era</w>\nand er</w>\nwon der</w>\na b</w>\nca p</w>\ns old</w>\nsu it</w>\nwal king</w>\ncontin ue</w>\neffe c\ndau ghter</w>\nd anc\ncha in</w>\nmul ti\nki d\ny an\nchampi on</w>\nv o</w>\nta ins</w>\nho st</w>\nmin i</w>\nmis sed</w>\nre sc\nly n\nfin ish</w>\ndel icious</w>\ns as\ntayl or</w>\ni b\npro mis\nproduc ts</w>\nmoun tain</w>\nflori da</w>\nregi ster</w>\ntre at\nrec ent</w>\nfe male</w>\nboo th</w>\nmat t</w>\nve hic\ns op\nmo tor\nsuppor ting</w>\nphi c</w>\nex tre\ndr ink</w>\nlan e</w>\nth ird</w>\np s\ncon stru\nce re\nfar m</w>\nðŁİ ī</w>\ntu red</w>\nðŁĳ ī</w>\nc ats</w>\na j\ngi e</w>\nshoo ting</w>\nas ked</w>\npaki stan</w>\nam e\nm b</w>\ng il\nleg al</w>\nsqu are</w>\nin vol\ndra w</w>\noo oo\n!! !!\nopportun ity</w>\np y\ne i\nb ts</w>\nteach er</w>\ncharac ter</w>\njohn son</w>\nbr on\nly wood</w>\nch ine\nc ing</w>\nc ine\nd ge\ngam ing</w>\nrussi a</w>\nci a</w>\nquo te</w>\nric h</w>\ngo v\nflow ers</w>\nsp iri\nst in</w>\ngrow th</w>\nðŁı ¼</w>\ncomm er\nj uni\nmu m</w>\nr an</w>\ns na\na ren\nc b\nac tor</w>\ncol or\nsi t</w>\npa ir</w>\nch i</w>\nbo w</w>\nacade my</w>\nhel d</w>\nr ang\nme tal</w>\ny l</w>\nac tive</w>\nprobab ly</w>\nt ch</w>\nneed ed</w>\nspe e\ncho ice</w>\nital y</w>\nry an</w>\nðŁĩ º\nflow er</w>\nv it\nm n</w>\nfound ation</w>\nb ak\nsi ons</w>\nne igh\nf loo\nhe ard</w>\nre mo\nfre sh\ning ing</w>\nre f\nto wn\ncl ou\nje sus</w>\nspiri t</w>\ncou ldn</w>\nz es</w>\nðŁĴ Ļ</w>\nwilli ams</w>\npro ce\nmoder n</w>\npro cess</w>\nsho es</w>\ncre ated</w>\ntri c</w>\nissu es</w>\nann e</w>\natt en\nde but</w>\nh r</w>\nn it\nsti g\na po\ne ps</w>\nz u\nã Ģ\nsi x</w>\ncar ds</w>\nlan gu\nfam ous</w>\ntour nament</w>\nse l</w>\ne bay</w>\ny n</w>\nst on\nk ick\nannoun ced</w>\nk am\nvo c\nbrilli ant</w>\nhou se\nche ese</w>\nwar ri\nmus ic\nho ckey</w>\nðŁĺĤ ðŁĺĤ</w>\nsk ills</w>\nau tom\nsmar t</w>\nmed ical</w>\nmon y</w>\ne x</w>\ngu ar\ngi ve\npers onal</w>\nven tion</w>\nal li\npre ss\nflo or</w>\nm c</w>\nvictor y</w>\nhi m\nsimp le</w>\nth or\nðŁĩº ðŁĩ\nta il</w>\nlu cky</w>\nale x</w>\nqu ite</w>\nbo t\nssi ons</w>\nchall eng\nc ann\namaz on</w>\nh ell</w>\nb ought</w>\n) :</w>\ned y</w>\nsecre t</w>\nproduc tion</w>\ninde pend\nde fe\nad ded</w>\np r</w>\np ag\nbe d\ngre atest</w>\nwith in</w>\nj ay</w>\nðŁ ¥\nire land</w>\nre ly</w>\ns d</w>\nte xt</w>\ndri ving</w>\npro gram\nspe ed</w>\ncol um\nstr on\nÃ ©</w>\nfore st</w>\nâ ĸ\nmach ine</w>\nco in</w>\nsc ar\noun t</w>\nbi e</w>\n¡ ï¸ı</w>\npor tra\ncomm on</w>\nwre st\nrecei ved</w>\nkno w\ninve st\npl ans</w>\nac cor\nad op\nter y</w>\nre ali\np p</w>\nk al\nart work</w>\nme an\ngo d\ninste ad</w>\nan ci\nmotiv ation</w>\nas ing</w>\ninspir ation</w>\nup coming</w>\npolit ical</w>\neuro pe\nm ers</w>\nheav y</w>\nðŁĳ į</w>\nfe bru\nscot land</w>\nou gh\nb t</w>\nbo ss</w>\nsche du\nspe ak</w>\nn ick\nu red</w>\nin o\ne k\nri sk</w>\ntor y</w>\npres ents</w>\nb on</w>\nru g\nst ates</w>\nexhib ition</w>\nil o\nm ill\nbr ought</w>\n: -)</w>\ntou ri\ncom e\noffici ally</w>\nchampi ons</w>\ndo ors</w>\nre p\npo se</w>\nex tra</w>\nk ings</w>\nsoc cer</w>\nsqu ad</w>\napp lic\nat a</w>\nsome times</w>\nt ari\nexcell ent</w>\nðŁĺ ĺ\nstra ight</w>\ncar ol\nri p</w>\nâĢ į\ngra phic</w>\nm ol\nelec tion</w>\nfebru ary</w>\nas ons</w>\nl i</w>\ndi r\nm t\nn ick</w>\nu su\nm rs</w>\ncom ics</w>\ninst itu\ncor por\nv i</w>\nðŁĻ ı\ntu ral</w>\ndi se\nac ci\nwe are\nam ong</w>\nsho pping</w>\nt ill</w>\nwh at\ncha ir</w>\nsp an\nchine se</w>\ninnov ation</w>\njo y</w>\nk it</w>\ncent ury</w>\nob ama</w>\nph ili\nf c\nre ach</w>\nc iti\nul ous</w>\nn on\nd ang\nhapp ening</w>\nbur n</w>\np el\nor ange</w>\nd v\nk ick</w>\ncla im\ning ham</w>\nph y</w>\nno v</w>\npod cast</w>\nwh i\nni ghts</w>\near lier</w>\nbe ar</w>\nla h</w>\nexc iting</w>\nor a</w>\ngi ven</w>\ns lo\nmemor ies</w>\ncontin ues</w>\nproduc t</w>\ngh o\nc d\nkno ws</w>\nðŁİ ī\npubli shed</w>\ndiscu ss</w>\ny ard</w>\ni phone</w>\ntri es</w>\nw all\nfe b</w>\nare n</w>\ntru th</w>\nwin ners</w>\ntu re\nditi onal</w>\nmilit ary</w>\nproble m</w>\nm and\ndo g\nlo ss</w>\nc ric\ncan adi\nve ter\nvilla ge</w>\n\" ,</w>\ny r</w>\nun g</w>\ndon ald</w>\nag ing</w>\nbir ds</w>\nsci enti\nle s\nth is\nregi on</w>\ntic al</w>\nitt en</w>\nil a</w>\nðŁĺ İ</w>\nd ad\ndi am\nabo ve</w>\nst ren\nli t</w>\np ir\nla b</w>\nfo cus</w>\nbus y</w>\nd ur\napp ly</w>\ns ma\nauth or</w>\nac i\nexe cu\ndom in\nre la\njack son</w>\nat o</w>\nwash ington</w>\nðŁĻ Į\nk ill</w>\npopu lar</w>\nce ment</w>\nro ad\ne ating</w>\nloc ation</w>\nv ent\nar re\nn an\ncu sto\nadvent ure</w>\nor din\nspor t\nul t</w>\nlo ck</w>\nquesti on</w>\ndri ver</w>\nland sc\non i\nk ins</w>\np d\njor dan</w>\nte red</w>\nk k\na f</w>\nchil d\ns p</w>\njust in</w>\nen i\ns elling</w>\nz o\nwh it\nbo ston</w>\npartic ip\nsig ning</w>\nhapp ened</w>\nhe at</w>\nm am\ndre ams</w>\nlo ws</w>\ngra ph</w>\nthe day</w>\nhead ing</w>\nbr o</w>\nble ssed</w>\nvi c</w>\nve gas</w>\nh d</w>\nin ning</w>\nro man\nand ro\nden ti\nu se\nc it\npro gress</w>\nwrit er</w>\nbo b</w>\nff s</w>\ngro wing</w>\nb ly</w>\naw are\nex am\nsp ent</w>\nbe t</w>\nsc ore</w>\nbey ond</w>\ndo cu\nad el\ns f\ncou ra\ncolla bor\nin c</w>\npriv ate</w>\nbo at</w>\n* *</w>\nz one</w>\np ha\nb ill\nto tal</w>\nplan ning</w>\nto wards</w>\nplac es</w>\npre view</w>\ncre ative</w>\ndam n</w>\nide as</w>\nse ems</w>\npo ten\nsay ing</w>\ndi splay</w>\ns w</w>\na qu\nlou is</w>\nby e</w>\nli l</w>\ne mail</w>\nwe stern</w>\nger many</w>\nell er</w>\nre s\nf ant\nment ary</w>\nde als</w>\nric hard</w>\njer sey</w>\nstren g\nra d\npizz a</w>\nmon d</w>\nw are</w>\nl ac\ng i</w>\nar chi\nc d</w>\nyel low</w>\nrec ently</w>\nre ach\nà ¹\nkitch en</w>\ndesig ned</w>\ntr y\ng al</w>\nrestaur ant</w>\nat ure</w>\nw w</w>\nj as\nl ma\nðŁĳ Į</w>\npa in</w>\nav o\nmin ute</w>\nsch ol\nther ap\ntic ket</w>\nd ry</w>\njap an\nditi ons</w>\nter ri\nsel ves</w>\nhapp en</w>\nt up</w>\nma g</w>\ncop y</w>\nsh er</w>\nfree dom</w>\nf ile</w>\nspeci ally</w>\ntor onto</w>\nlo ad\ng ary</w>\nre y</w>\nansw er</w>\nlo y\ncau ght</w>\npri ze</w>\nu ne\nfic ation</w>\nni ger\nsy d\ntou ch</w>\nfeat ure</w>\njaz z</w>\nrecor ds</w>\nhim self</w>\ndi sh</w>\nro ber\nspot ted</w>\nma ster\nwa ve</w>\nfin als</w>\nbu ll\nfor um</w>\nal d\nre comm\nch a</w>\na e</w>\nd oo\ninst ru\ntru ly</w>\nl g\nin k\nbro thers</w>\nde st</w>\nj im</w>\nm it</w>\nclo sed</w>\nis on</w>\ntri ed</w>\ns anta</w>\naf fe\nw an</w>\nhor se</w>\ng row</w>\ncamp us</w>\nrel ation\nnati ve</w>\njour n\ngo v</w>\no ct</w>\nk it\nb ound</w>\npart ner</w>\nre ma\ncrow d</w>\n! )</w>\nc alls</w>\nra il\nqu ali\nsolu tion</w>\ncon test</w>\ncon vers\nsn ap\nb ase</w>\nin iti\nta x\ny e</w>\nent repre\nit or</w>\nconstru ction</w>\nfoo d\npresent ed</w>\nn ings</w>\ncli mate</w>\nk m</w>\nmo del\nb j\nblo ck</w>\npresent ation</w>\ndre am\nfi x\nc alling</w>\nbus ine\ncon gress</w>\nunder stand</w>\nwe b</w>\nval ue</w>\nï¸ı âĥ£</w>\nmex ico</w>\nit ely</w>\nki m</w>\nchar ity</w>\nref lec\nbl an\nfl ying</w>\nanal y\nfamil ies</w>\nb and\nreci pe</w>\ncelebr ation</w>\nac cep\nar y\nto t\ng b</w>\nintere sted</w>\ncap tain</w>\nâĻ ¥\nti p</w>\nab sol\nbra z\ninve stig\no logy</w>\nde c</w>\ntru ck</w>\nver ing</w>\nc lear\ndon t</w>\ngo tta</w>\nad vis\nbeg ins</w>\nma ss\nde scri\nblo ck\nk im\ndavi d\nson gs</w>\nmemor ial</w>\nfeat ures</w>\nsu stain\n' .</w>\ngra b</w>\njo se\nv a\ncon serv\nse ts</w>\nman chester</w>\nfi ghting</w>\nde gre\nag a</w>\nin d</w>\nsle ep\npos ition</w>\nha ir\nsig ns</w>\npol icy</w>\nit o</w>\nal ert</w>\nst am\nsp end</w>\nw y\nabsol ut\nd m</w>\nanim al</w>\nmy ster\nsuccess ful</w>\nproble ms</w>\nro bo\nk ay\ngar den\np d</w>\nmay or</w>\nd ale</w>\nt ol\noff ers</w>\nvis iting</w>\nfriend ly</w>\ntre es</w>\noffic er</w>\naccoun t</w>\nke vin</w>\nðŁĳ į\ngi ant</w>\ncontin u\ncon su\ntr act</w>\nn fl</w>\nðŁĺ Ĭ\nh q</w>\nb ility</w>\na ar\ndis ney</w>\nte en</w>\non ed</w>\nwh ite\ntra iler</w>\nde dic\nal one</w>\nabsolut ely</w>\ndig ital\nwilli am</w>\nin ation</w>\ns wa\ne e</w>\nenti re</w>\nger man</w>\nro ll\nh its</w>\nco st</w>\nst ay\nth a</w>\nali ve</w>\naccor ding</w>\nco t\nliter ally</w>\nher it\nre ti\nhaha ha</w>\nexper i\nli kes</w>\ng t</w>\nste el</w>\n__ __\nch air\nchristi an</w>\nto wer</w>\ndiffe rence</w>\nm d</w>\ntre ss</w>\nmi d</w>\nprin ce</w>\nafric an</w>\nfe der\nfoo t</w>\ncar ri\nser ved</w>\nr ice</w>\nsh all</w>\nfeat ured</w>\nck er</w>\nrec ru\npo e\nsen se</w>\nni fic\ncom edy</w>\ncont ent</w>\nf at\npo sted</w>\ncon tribu\ntim ate</w>\nli ver\nmb le</w>\ninter net</w>\nag e\neurope an</w>\ncl ing</w>\ngla d</w>\nff ic\nsc o</w>\nak es</w>\nel le</w>\nter min\nton y</w>\np ale\ncol our</w>\nseri ous</w>\npat ri\nmovi es</w>\nb m\nprofessi onal</w>\nad o\nal u\nbr inging</w>\nf alls</w>\nisra el</w>\nter m</w>\nlangu age</w>\nbro ok\nman n</w>\ncommun ic\ncan not</w>\nac ti\np he\ny an</w>\nentrepre ne\ntur key</w>\nlog ical</w>\nlon g\nar m</w>\nur s</w>\nwork ers</w>\ning ly</w>\ngg s</w>\nri c</w>\ntu al</w>\nrecei ve</w>\nop ens</w>\nge ar</w>\nsoci al\nfe et</w>\nc king</w>\nad ver\nfin an\nfe els</w>\nsp la\nh r\nea ster</w>\nbra in</w>\nã ģ\nfi g\nle dge</w>\nne arly</w>\nprote ct</w>\nma ssive</w>\ne th\naw a\nðŁĺ ģ</w>\ny rs</w>\naware ness</w>\ndefin itely</w>\nk n\nimag ine</w>\nk u</w>\nsyste ms</w>\nðŁĳ ı</w>\nf as\nli k\nprovi de</w>\nam o\ndisco ver</w>\ninf lu\nma ker</w>\ng az\nfit ness</w>\nstre et\ner s\nte d\nw c\nys is</w>\npos itive</w>\nhel ped</w>\nque st</w>\nandre w</w>\nbra d\nb in\nhang ing</w>\nl ing\nbri ght</w>\nse ction</w>\nma ss</w>\nðŁĻ Į</w>\nfollow ers</w>\nho sting</w>\ntem por\nfla g</w>\na ve</w>\nlet ter</w>\nk ur\nre qui\nof ten</w>\ncry p\nsu ff\nâļ ½\nrussi an</w>\ntreat ment</w>\nal le\nha y\nl an</w>\nkeep ing</w>\nhol y</w>\npower ful</w>\npre dic\nfun d</w>\ne specially</w>\nwindo w</w>\nje wel\nil y\nðŁĴ ľ</w>\ngener ation</w>\napp a\nseri ously</w>\no d\nðŁĺĤðŁĺĤ ðŁĺĤ</w>\ncer ti\niri sh</w>\nðŁĳ Į\nmi ami</w>\nbe th</w>\nv ity</w>\nse cu\nche f</w>\ncri me</w>\ngraph y</w>\nma x\narti sts</w>\nre volu\ngu ard</w>\nspee ch</w>\nu c\nupd ates</w>\nfac es</w>\nst ant</w>\nchang ed</w>\nrepor ts</w>\nlow er</w>\npe ar\nn c</w>\nk il\nloo ked</w>\nspe aker</w>\ns f</w>\nre spect</w>\nok ay</w>\noce an</w>\ns itting</w>\narchitec ture</w>\ntra il</w>\nse at</w>\ni ra\nle g</w>\njapan ese</w>\nd am</w>\nu lar</w>\nsw im\npolit ics</w>\nfinan cial</w>\nol d\nmou th</w>\nat temp\nde stin\nfi shing</w>\natten tion</w>\nme m\nchang es</w>\ndeci ded</w>\nreli gi\ng in</w>\nc av\nz z</w>\nad am</w>\nma c</w>\nwr ite</w>\nbeg in</w>\nsc ul\nal ter\nis s</w>\nath on</w>\nimag es</w>\nm oo\njo ined</w>\nðŁĺ ī</w>\nâŀ ¡ï¸ı</w>\npas sed</w>\nmu sli\nh ir\nlar gest</w>\ncam er\ncom ic</w>\ngh ted</w>\nrug by</w>\nbur gh</w>\ngg ing</w>\nte sting</w>\npre par\nlau gh\nal ed</w>\nimpro ve</w>\nbeli ev\nadv ice</w>\nsha res</w>\nhe art\ntur ning</w>\ns b</w>\nt el\ncaf e</w>\nn es</w>\ndani el</w>\npat ter\nt z</w>\nse tt\npar k\nc and\nst ick</w>\nhapp ens</w>\nbri an</w>\nne west</w>\ne pic</w>\nad or\nki es</w>\nwar ning</w>\nanim als</w>\ncusto m</w>\nar c\ndi an</w>\ngol d\ncor e</w>\nt f</w>\nc ity\npan ts</w>\nre ality</w>\ncon fi\nin ju\nfo x\ngu il\nk new</w>\nâĺ º\ncor rec\nitu de</w>\nd den</w>\n. #</w>\nre duc\npas s\nf on\ny a\now ner</w>\nre turns</w>\nn c\ne ast\nap ol\nin sur\nth o</w>\nsi m\njuni or</w>\nbe e</w>\nang el\natt le</w>\nelec tric</w>\nhor ror</w>\ncra sh</w>\ne ye\npat h</w>\nsou thern</w>\nemplo ye\nge o\nt an</w>\nha z\nr ally</w>\nðŁı »\nproper ty</w>\nwas n</w>\nenjo yed</w>\ngre y</w>\ng as\nbre w\nnor thern</w>\nhol ding</w>\ng p</w>\nta ke\nch art</w>\nly n</w>\ndr ama</w>\nz o</w>\npa id</w>\nthrow back</w>\ncu p\ndiscu ssion</w>\ndown town</w>\nw ill\nle w\nb is\nt ary</w>\nbre ad</w>\nup on</w>\nr ate</w>\nteach ers</w>\nit ation</w>\nanc ed</w>\ncy cle</w>\nchoo se</w>\nd c\nir an</w>\nco w\nda ve</w>\nra ise</w>\nprin cess</w>\nfa ith</w>\n- ></w>\nindu stri\nsp ain</w>\nguit ar</w>\nfac ts</w>\nm n\nsp en\ncour te\ngo tt\nprojec ts</w>\nau di\no sc\npe ter\ns and</w>\nintere st</w>\nhapp iness</w>\nven ue</w>\nsol di\nsurpri se</w>\npoten tial</w>\nper io\ncustom er</w>\ni i\ng ni\nmanu fac\ne co\nbro ken</w>\nsing er</w>\nvel s</w>\nwal es</w>\nhu s\nin j\nf our\ntal ent</w>\nd ying</w>\nmat the\nfil m\njo ining</w>\ns ell</w>\nj ar\nlma o</w>\nsur ger\nbb c\nsour ces</w>\nau stin</w>\nni k\nchar les</w>\nf am</w>\nprin ci\nange l</w>\ncas h</w>\nlo t\no red</w>\npla ys</w>\npl ate</w>\ndon e\nmemor y</w>\nbr ings</w>\nn ba</w>\nsolu tions</w>\nteach ing</w>\ngr ace</w>\ncir cu\nhel ps</w>\nfoun der</w>\nmar y\nexpl ore</w>\nde cor\npar ts</w>\nch o</w>\ninte gr\nha u\nis es</w>\npu tting</w>\nin er</w>\nr it\nv y</w>\nmic hel\nblu es</w>\nevery day</w>\nfor ms</w>\nbi o</w>\nye ar\np in</w>\nt ter</w>\nspr ing\n) )</w>\npo t</w>\nal ing</w>\nperform ing</w>\nsh an\nplan et</w>\nmus ical</w>\nhead s</w>\nit alian</w>\nstru gg\nâĢį âĻ\nw ings</w>\npu mp\nh h</w>\ntr ou\na id</w>\npri me</w>\near th\npa int</w>\nmon t\nam y</w>\nbb c</w>\nfab ulous</w>\nfru it</w>\nandro id</w>\nbour ne</w>\ncere mony</w>\nenti al</w>\n? ?\ndeb ate</w>\non ing</w>\ndra ft</w>\nsol ar</w>\nt x</w>\nj am</w>\ncor n\n!! !!!</w>\nbro o\nmil k</w>\npo sed</w>\no hi\nmo vement</w>\nb ren\npart ner\np g</w>\net te</w>\nar ies</w>\nsh out</w>\nn g</w>\nleav ing</w>\nt ells</w>\nsen s\nta ste</w>\nkel ly</w>\nwor l\ngy m</w>\nric h\ne gy\npi d</w>\nma s\nâ Ĥ\ncourte sy</w>\nfran k</w>\nincre ase</w>\nwr itten</w>\npp ers</w>\nre l</w>\nha i</w>\ns as</w>\ns ound\ntt i</w>\nw ich</w>\nri ver\n.. .\"</w>\na g</w>\nfel low</w>\nro me</w>\nsm all\ngen cy</w>\nic an</w>\nlux ury</w>\npro of</w>\nme t\nwild life</w>\nmom ents</w>\nra ther</w>\ncor ner</w>\ncom pe\ncanadi an</w>\nlik ely</w>\ntherap y</w>\nli am\neconom ic</w>\nindi e\nrou te</w>\nfi ght\nho pe\nse tting</w>\nant ly</w>\ncro ss\nfant asy</w>\nde e\nsket ch</w>\ncomp li\nym i</w>\nru les</w>\nengine ering</w>\nfig ure</w>\nro w\n. ,</w>\nf w</w>\nsyd ney</w>\nw ou\nt ation</w>\ndre w</w>\nus es</w>\nthe re\nsp read</w>\nstruc ture</w>\npat rick</w>\nappa rently</w>\nro s\nh ills</w>\nw we</w>\nann y</w>\ncom mission</w>\ndi v\nf ying</w>\ncon sul\nanal ysis</w>\nex i\nten nis</w>\nvehic le</w>\nðŁĺŃ ðŁĺŃ\nas s</w>\nhigh ly</w>\nop ened</w>\nb ann\nðŁĴ Ļ\nmp h</w>\nwi shing</w>\nv or</w>\nfi f\ngive away</w>\nr r\nra y\nje ss\ng at\nic ymi</w>\nx it</w>\nhigh est</w>\nyor k\npi e</w>\ninvol ved</w>\nhigh er</w>\nri e</w>\nmal ay\nint elli\ndesp ite</w>\nche e\nsar ah</w>\nbe an</w>\nreco gni\nar sen\ntal ented</w>\npas sion</w>\nic h\nab c</w>\nlead s</w>\ndise ase</w>\nv is</w>\nse c</w>\npre senting</w>\nm illi\nhol e</w>\nsho ts</w>\nde part\nsurger y</w>\ngov t</w>\nb in</w>\ndu al</w>\ne vi\nlon ger</w>\nev ol\nscre en\nportra it</w>\net c</w>\nlo se</w>\nch at\np en</w>\np i</w>\nom a</w>\ns ick</w>\ner c\ncompan ies</w>\nen try</w>\nplan e</w>\ngr y</w>\nven e\nliver pool</w>\npremi ere</w>\nsha red</w>\na red</w>\nfil ms</w>\nir a</w>\nholi days</w>\ncric ket</w>\nici an</w>\nv ing\n. )</w>\nul timate</w>\ndi vision</w>\ncon duc\nse pt</w>\nfor ces</w>\nmon t</w>\ns mart\ndisa pp\nsun shine</w>\nin d\nb less</w>\nma de\ncol ors</w>\nfran k\nir on</w>\nbott le</w>\ns go\nm ood</w>\nj ason</w>\ner ic</w>\nbir th</w>\nte en\nrespon se</w>\ntar get</w>\nstate ment</w>\nfe ar</w>\nth el\nal um\nar ab\nbl in</w>\ndirec tion</w>\nste ps</w>\ner ial</w>\nwor ked</w>\nat l\nðŁĴ ķ\nfel t</w>\npol i</w>\nscen es</w>\nhom es</w>\nb ell\ne at\nate ful</w>\nt in</w>\nl ace</w>\nfol ks</w>\np se</w>\nan n</w>\nwis dom</w>\nfa v</w>\nbut ter\ns r</w>\nare as</w>\nsm oo\nbi z</w>\ndg es</w>\napp o\nmo re\nthe m\neffe ct</w>\nwindo ws</w>\nsun ny</w>\ncap ital</w>\ntot ally</w>\nc ities</w>\ngr ant</w>\nmb ers</w>\ns low</w>\nau tu\nil ities</w>\nw ro\nri sing</w>\nst ics</w>\nviol ence</w>\ni gh</w>\nqu ot\nh it\nt c</w>\nherit age</w>\nbu ff\nne s\nz ar\nden tial</w>\nex ac\ned ge</w>\nde ep\naren a</w>\nbe came</w>\nbenef its</w>\nmar ks</w>\nmb er\na z</w>\nam es</w>\npre ci\ndra gon</w>\nre g\nd ings</w>\ndo s</w>\nðŁĴ ª\nn el\ns ity</w>\nme al</w>\ndi st\nleg end\npur chase</w>\npic al</w>\nst ick\nf at</w>\ndu ba\nprofe ss\ncar to\npro f</w>\ncoun tries</w>\nrespon si\nse qu\nfa b</w>\ntribu te</w>\nhon ored</w>\nprac tic\npur ple</w>\nan ton\npa red</w>\nt ough</w>\nsumm er\nenviron ment</w>\ns ons</w>\nðŁĻ ı</w>\nm ps</w>\ngi es</w>\nher oes</w>\nt elling</w>\nhen ry</w>\nf en\nknow ledge</w>\nĢ ï¸ı</w>\nf r</w>\nne g\nu re\nac king</w>\nhear ts</w>\ns oo\nhol lywood</w>\nju mp\nsau ce</w>\nschedu le</w>\ntur n\nyo ga</w>\ncre ating</w>\nc ket</w>\ncre ek</w>\nâ Ń\ncustom ers</w>\nma dri\ngu l\nasse mb\nmoun t</w>\nc ell</w>\nto p\nst al</w>\ndav is</w>\nt wi\nsig n\npremi er</w>\niti ons</w>\nhe aring</w>\nun k</w>\npati ents</w>\napp ear\nheav en</w>\nal ty</w>\ndoc tor</w>\na e\nplat form</w>\nje ff</w>\nðŁĵ ·</w>\nregi onal</w>\nbi d</w>\nbox ing</w>\nex ten\nor ity</w>\na w</w>\nw ise</w>\nil le</w>\nsever al</w>\nbi e\ns itu\nsy ria</w>\nâľ ħ</w>\nremin der</w>\nenter tain\nli on</w>\npart ners</w>\nin n</w>\nph ar\nf au\npl s</w>\nexpe cted</w>\nsug ar</w>\ndeci sion</w>\ns b\nch ron\nassoci ation</w>\nleav es</w>\nvis ited</w>\nsh ap\nðŁĴ ĸ</w>\nfur ther</w>\nh ann\nw i</w>\nrun s</w>\nl er\nfun ding</w>\nfil led</w>\n.. ....</w>\ntin y</w>\nhan g</w>\nor g</w>\nco ol\nse min\nðŁı Ĩ</w>\nspon s\nnav y</w>\nsa int</w>\ndru g</w>\nd al</w>\nr oun\nco vered</w>\ntra ditional</w>\ninvest ment</w>\nde te\nal ism</w>\nf low</w>\nn is\nsun rise</w>\nfe at</w>\nf ted</w>\nwe ird</w>\nje re\nve gan</w>\nmedic ine</w>\nan o\nac cu\ndeli very</w>\ntemp le</w>\nchang ing</w>\nwil son</w>\nphili pp\nre fe\nn d\nis er</w>\ng ay</w>\nr and\nati ves</w>\nt ely</w>\np and\nintelli g\ng are\nam bas\nde mon\ncommit tee</w>\nstrate gy</w>\nrefu ge\nbud get</w>\nprote c\npi er\nex press</w>\nnom in\neconom y</w>\nal low\nic on</w>\ngal ax\no h\nindi vi\ndem and</w>\nvir gin\nlu ke</w>\nali sts</w>\nman i\ns mi\nju dge</w>\nent y</w>\nmic hi\nresul t</w>\nam ed</w>\nspe aks</w>\n' ,</w>\nhou ston</w>\nsh in\nb ing</w>\nfl y\nch em\nau to</w>\nv as\nge t\nar m\nthank s\nd in</w>\ngan g</w>\nx x\nsi on\nloc ated</w>\np l</w>\njo sh</w>\nin fo\njo ins</w>\nadver ti\not d</w>\nel d</w>\nsi e</w>\nre asons</w>\nv ent</w>\nðŁĩºðŁĩ ¸</w>\nâ ł\nconvers ation</w>\nstu di\nðŁĶ¥ ðŁĶ¥\ngo s</w>\ns ounds</w>\nun it</w>\nmu sc\nge l</w>\nack ed</w>\npac i\nco s</w>\nde re\nu u\na o</w>\nla m</w>\ninspir ing</w>\nar ms</w>\ntw are</w>\nmat ters</w>\nad dic\ndu de</w>\nex t\ncri sis</w>\nb ath</w>\nme et\nsing h</w>\nexpe ct</w>\ndel hi</w>\nresc ue</w>\nwor st</w>\nau g</w>\nshi pping</w>\nser ving</w>\nst o</w>\ndar k\nac es</w>\nhistor ic</w>\nlandsc ape</w>\ndesig ner</w>\nb illion</w>\ngr ateful</w>\nwa ke</w>\ne ve\nm iller</w>\nhou sing</w>\ndy nam\nis co</w>\nbe ha\nsh op\npr ou\ne as\na sia</w>\ne ding</w>\nk on\ndepart ment</w>\naw ar\nmar ine</w>\nin ci\nphotograph er</w>\nta pe</w>\nlo go</w>\nr ings</w>\nd it\n-- --\nvin yl</w>\nw c</w>\nvo ting</w>\nse ven</w>\nambas sad\ndal las</w>\nt u</w>\ncom ment</w>\nk ra\nb les</w>\nw ag\nu d</w>\nau dio</w>\nstri ke</w>\noffici al\no ts</w>\nme tho\nto ols</w>\nra di\nal an</w>\nhun t</w>\nwat ched</w>\na ke</w>\nfa ke</w>\ndrin king</w>\nmer ry</w>\nm l</w>\nb day</w>\nri o</w>\nni ke</w>\nc ant</w>\nre pe\nco stu\nmur der</w>\nak ers</w>\nch ers</w>\nou ts</w>\nbeg inning</w>\nso s</w>\nad es</w>\nn in\nnot es</w>\nwro te</w>\nsol o</w>\nc i</w>\nli ghting</w>\nur ban</w>\nbre xit</w>\natt end</w>\nshir ts</w>\npla yo\nac tress</w>\npl ic\nstand ard</w>\nquot es</w>\npar ade</w>\nanci ent</w>\nÂ ©</w>\ntur ing</w>\nre e</w>\npri mary</w>\nfla sh</w>\nciti z\nmat es</w>\nste in</w>\nz i</w>\nclin ton</w>\nsk in\ngen e\nhu m\ng ar</w>\nt le</w>\ny i\nfo cu\nde an</w>\npl ants</w>\ncy ber\nb u</w>\nom e</w>\nho p</w>\nad dress</w>\nti x</w>\ngi fts</w>\nrelation ship</w>\nsub scri\nfe ed</w>\nexac tly</w>\nhaw ks</w>\nex o</w>\nstre ss</w>\ns n</w>\narre sted</w>\nan e\nsof tware</w>\nz ero</w>\nthe me</w>\nmu mb\nim migr\nmi a</w>\nmake up</w>\nple asure</w>\nuni vers\nhar b\neng ine</w>\nap er</w>\nr in\nbr a</w>\ninstitu te</w>\nle ather</w>\nal th</w>\nsing ing</w>\nco s\ngh ty</w>\nme as\nst ic\nsi de\ninsur ance</w>\nco t</w>\npit ch</w>\nmoun tains</w>\ncri min\nsu pre\nvalent ine</w>\nat er</w>\nwou ldn</w>\nsc ale</w>\nrel ated</w>\nre gar\nstar tup</w>\npack ed</w>\nmi ke\nweek ly</w>\np ts</w>\ncoun t</w>\nha r</w>\ngott en</w>\nmin d\nber lin</w>\ncon ditions</w>\nswit ch</w>\ncor n</w>\nsa ve\ng li\nemer gency</w>\ntun ed</w>\nsto ck\ndiscu ssing</w>\nevery body</w>\ns day\nwhe ther</w>\nwrest ling</w>\nec es</w>\ngen der</w>\nch en\nðŁĳ Ģ</w>\nmadri d</w>\nmar athon</w>\ne gg</w>\ni er</w>\nth x</w>\nas king</w>\nkore a</w>\nwol f</w>\nay a</w>\ng m</w>\ng au\nat ory</w>\nv r</w>\ngra ss</w>\nk illing</w>\nb ble</w>\nur o</w>\nun i</w>\ne th</w>\nsh ore</w>\nth en\nre ale\nbot tom</w>\nex erc\nk ar</w>\nor ies</w>\nad ri\nsan ds</w>\nse x</w>\n. '</w>\nvolunte ers</w>\nper form</w>\npar liam\ninclu de</w>\ndeli ghted</w>\nexecu tive</w>\nfu el</w>\nkis s</w>\nã ħ\nchar ge</w>\nh u</w>\nca kes</w>\nve t</w>\ng lu\nagre e</w>\npr ices</w>\nn au\nh l</w>\ng ru\nra j\nstreng th</w>\nb ic\nsp ending</w>\nal es</w>\nav en\nb last</w>\n: (</w>\nyo f\nnor mal</w>\nsi x\nqu ick\nse a\nd aw\nmee ts</w>\nlo vers</w>\nupd ated</w>\npo tat\ncomple ted</w>\ncoo k</w>\nopportun ities</w>\np ure</w>\norgan ic</w>\ntem per\nc am</w>\navo id</w>\npar king</w>\nduba i</w>\nand o</w>\ndi stri\nto y</w>\ncomple tely</w>\ndon ald\ntri al</w>\nbas s</w>\nb oun\nback ground</w>\nv as</w>\nmar vel</w>\nlu m</w>\nru s</w>\nt ool</w>\ncom missi\nthrow back\nfin ding</w>\nis lam\n! ?</w>\nst op\ne vil</w>\nor al</w>\nresi dents</w>\ni denti\no ak\nðŁİ ¶</w>\nl il\nspan ish</w>\nchap ter</w>\nsto pped</w>\ndirec t</w>\nho sted</w>\npic ked</w>\nlab our</w>\nlew is</w>\ndefen se</w>\nà ®\nhealth care</w>\nwh is\nmat h</w>\npe ak</w>\nra ised</w>\nfi x</w>\nbu ll</w>\nth ir\nchel sea</w>\nfol k</w>\ntr e</w>\ncan di\npau l\nei ther</w>\nad am\npoe try</w>\njewel ry</w>\nðŁ ¦\npr ay</w>\nØ §\ng c</w>\no z</w>\nwi shes</w>\nfore ign</w>\nsun g</w>\nlear ned</w>\nen e</w>\nn ing\nmicha el\nillu stration</w>\nlegend ary</w>\nw av\nb au\nðŁļ ¨</w>\ncal end\nstre ets</w>\nâ Ĩ\nmon ster</w>\nbu ck\ng r</w>\nscho ol\nba th\nwa ste</w>\nne ck\nha wa\nbe ach\nre plac\njec t</w>\non er</w>\nfac tory</w>\ncoun t\nðŁĵ ¸</w>\nmor gan</w>\nder ing</w>\nse an</w>\nsteph en</w>\nde p\nno vel</w>\nvide os</w>\nic al\npress ure</w>\narsen al</w>\nex pre\nir s</w>\ntren ding</w>\nss a</w>\nfla sh\nre sear\nthr ough\nprofess or</w>\nscul p\nto s</w>\ngg ed</w>\nmm a</w>\nbe e\na pe\nhun ter</w>\nam i\nhe i\npla stic</w>\nbu cks</w>\nuni verse</w>\nle gen\nniger ia</w>\nple ased</w>\nri s\nthin ks</w>\nautu mn</w>\ni ds</w>\nd is</w>\nanth ony</w>\nðŁı ½</w>\nak ed</w>\ngla sses</w>\nfin ance</w>\nz er\nk as\ncon tract</w>\nnu mbers</w>\nsh aw\npartner ship</w>\nt il\nlaun ched</w>\ns al</w>\nvictor ia</w>\ntheat er</w>\nusu al</w>\nnam es</w>\nperio d</w>\neli za\ni th\nbar cel\nro cks</w>\nbag s</w>\nmat e\ndistri bu\nj on</w>\ndi ffic\nali zed</w>\ncur ren\nsco red</w>\nb ha\ndu blin</w>\nro se\nin ted</w>\nsoli d</w>\nbeha vi\nwal ker</w>\nsimp ly</w>\ngarden s</w>\nhead ed</w>\nin i\nohi o</w>\nwe ap\nf o</w>\ngl en\ne state</w>\nran dom</w>\nth under\nthr u</w>\nk ill\njac ket</w>\nit i</w>\nentertain ment</w>\nthanks giving</w>\nent al</w>\nen coura\nel o\na ther\ntan k</w>\nhigh lights</w>\nf ting</w>\nru le</w>\nmodel s</w>\nbor der</w>\nbj p</w>\nhus band</w>\nin done\nken ya</w>\nbe ars</w>\nal o</w>\nn inten\npi x\nstr o</w>\nor ders</w>\nsal ad</w>\nro ads</w>\nn or</w>\nl ation</w>\nsop hi\nðŁı ¼\npi eces</w>\nb one</w>\nmin s</w>\ninclu des</w>\nnu tr\nphi l</w>\ns ent\nfun dra\nga in</w>\nbor ough</w>\nn ad\nmon day\nactiv ity</w>\nit ems</w>\nbe coming</w>\nken ne\nde tro\ncar di\ngue sts</w>\nu x</w>\nworld wide</w>\nsever e</w>\nnew s\nthank ful</w>\nfic tion</w>\nve ge\nm all</w>\nsi an</w>\ner al</w>\ninj ury</w>\nle e\nmen u</w>\ndanc ing</w>\nscot ti\nexam ple</w>\n( #</w>\nna i\nstudi os</w>\nba i\nðŁĴ Ľ</w>\nj av\ndiam ond</w>\nvin ce</w>\nric k\nprote ction</w>\nlin col\ncham ps</w>\nappro ach</w>\nd ar</w>\nm ile</w>\nclou ds</w>\nje ff\nin fin\nl ers</w>\np les</w>\npe ace\ngo p</w>\nâĻ ¡</w>\ntech n\nstr a</w>\na verage</w>\nef fort</w>\nintroduc ing</w>\ndi versity</w>\naustr alian</w>\nam p</w>\nboo st</w>\ns ke\npati ent</w>\nappreci ate</w>\nici ans</w>\npu r</w>\nf ell</w>\nwoo ds</w>\nillu str\nðŁ ĸ\nag ency</w>\nac tions</w>\nbrit ain</w>\nunder way</w>\nse attle</w>\nel and</w>\nag o\nf ill</w>\nstre aming</w>\npro test</w>\nchalleng es</w>\nky o</w>\net sy</w>\ncoo king</w>\nexper t</w>\nru ss\nrain bow</w>\ncommer cial</w>\nsp in\nbe ats</w>\nc ry</w>\nval u\nel i</w>\nth row</w>\ngr ams</w>\nle vels</w>\nmichi gan</w>\nc ad\nador able</w>\nconst itu\nw s\npu b</w>\nmid night</w>\nth at\nnet fli\nbraz il</w>\ndie go</w>\nregu lar</w>\njo y\nâĤ ¬</w>\nli qu\nea stern</w>\nk ni\nfl at</w>\nn p</w>\nbro wn\nw er\nse y\ntt ers</w>\nac ting</w>\nv anc\ncy cling</w>\nprogram me</w>\nra w</w>\ncomple x</w>\ntat too</w>\nthrowback thursday</w>\nse ssions</w>\nro oms</w>\nsi ght</w>\nspeci es</w>\nbom b</w>\nlau gh</w>\nke eps</w>\nmo on\noffic ers</w>\ncon ver\nt r</w>\nha sh\nt ack\nri ous</w>\nad ap\na j</w>\nreco gn\nex po</w>\nsug ge\nconfir med</w>\nrol ling</w>\ndre ssing</w>\nic t</w>\nfri day\nph ones</w>\nri dge</w>\ncon cept</w>\nro y</w>\nke ys</w>\nef for\nc ate\nk ne\nev en\nl ay</w>\ncommun ities</w>\nmo d\nn az\nevery where</w>\nal ab\nbit coin</w>\nban ks</w>\nout door</w>\nfeder al</w>\nsto res</w>\nh p</w>\nc al</w>\nm ely</w>\nsig nific\nbe ar\nre public\nclo ser</w>\nal lah</w>\npic k\nx d</w>\npal ace</w>\nch ill</w>\nb am\ner ous</w>\nun a</w>\nal len</w>\nout standing</w>\nolym pic</w>\nsupp ly</w>\nfi gu\nv au\nl p</w>\nchar lie</w>\nun es</w>\n> >></w>\nlegen ds</w>\nici al</w>\nco ast\nbenef it</w>\nmul ti</w>\nf its</w>\nfar mers</w>\nam ount</w>\nsi sters</w>\nhar ve\nhon ey</w>\nque en\nb ers</w>\npl ann\nâŃ Ĳ\nm u</w>\nbarcel ona</w>\nal ber\nstat us</w>\nre main</w>\nex tra\nc andy</w>\nvi ous</w>\nâľ Į\no v\nwarri ors</w>\n-- ></w>\nju mp</w>\nam ar\nx mas</w>\nstu dies</w>\ni ors</w>\nk or\ndon ate</w>\npre p\nfi sh\nim a</w>\npain ted</w>\nad mini\nco splay</w>\nspor ts\ndro ps</w>\nfi ghter</w>\nevi dence</w>\nðŁĴ ª</w>\nla ke\nro b</w>\ncine ma</w>\npro file</w>\nÃ ±\nstan ds</w>\nleg acy</w>\nsh ape</w>\nro of</w>\nci vil</w>\ni ans</w>\nsy l\nsh am\nvo ted</w>\nre tail</w>\nph illi\nli sted</w>\ndu ty</w>\nn b\nth es</w>\nf are</w>\nau ction</w>\nffici al</w>\nstor ms</w>\nd p</w>\nl oun\nsh ops</w>\nal y\nani me</w>\nmulti ple</w>\nðŁĺį ðŁĺį</w>\npsy cho\nje an</w>\nap art\ncandi date</w>\ngg y</w>\ncon f</w>\njose ph</w>\nw ick</w>\nme at</w>\nfr ame</w>\nc l</w>\nfor got</w>\nph y\nf ing\nli ed</w>\nre p</w>\nse ed</w>\nf all\nu fc</w>\nnu t</w>\nlin d\nmo de</w>\nfiel ds</w>\nen ce\ns ley</w>\nðŁ¤ Ķ</w>\nch ill\nfollow ed</w>\nannoun ces</w>\ncor ru\ntro phy</w>\nthem selves</w>\nac le</w>\nal du\nk ong</w>\nl on</w>\ns v\nbro ke</w>\nander son</w>\nta i\nstor y\ntempor ary</w>\nactiv ities</w>\nk ati\nari z\ncry stal</w>\nspo ke</w>\nextre mely</w>\ntra ding</w>\nðŁĴ ļ</w>\nÃ ¼\nin ch</w>\ned in\nout fit</w>\nequ ip\nma di\nform ed</w>\nbe ef</w>\npo p\nti ger</w>\nthis day</w>\nti red</w>\nneigh b\nre tro\nis a</w>\nun t</w>\nt as\nkan sas</w>\nde st\nsecon ds</w>\nta y\nhur ric\no u</w>\ngalax y</w>\ndad dy</w>\nbro w\nbur ger</w>\nen ced</w>\nde sk</w>\nac cur\nsecre tary</w>\nel ite</w>\nk ab\nch in\ntouri sm</w>\nbud dy</w>\nici de</w>\ndre ssed</w>\nu d\nvac ation</w>\nche ers</w>\ncom for\ncharac ters</w>\nj et</w>\nbu ying</w>\nl ins</w>\nn ap\nreale state</w>\nli e\naf c</w>\ni ii</w>\nf ame</w>\nn r\nb at</w>\nag ent</w>\nma kers</w>\nâĢ ¼\nsec tor</w>\nop ti\nle on\ndi et</w>\npra yer</w>\nhi p</w>\nmi r</w>\nle x\nbr y\nan a\npas sing</w>\nw en\nreco very</w>\nak i</w>\npo pul\nres ort</w>\nmar ia</w>\nstu ck</w>\nread s</w>\nti er</w>\nperfe c\nnetfli x</w>\np oo\ncham p</w>\no c</w>\nre duce</w>\nwe red</w>\ncomm ents</w>\ncla im</w>\nacci dent</w>\ns ag\nh ack\nsal t</w>\nkin da</w>\nk iller</w>\ni os</w>\nz y\nex change</w>\nlec ture</w>\neng er</w>\nic king</w>\nt au\nreve als</w>\npri son</w>\nz om\ngh an</w>\nu l</w>\njour nal</w>\ni ot</w>\ntr in\njon a\ngovern or</w>\ncap e</w>\nquar ter</w>\nspec tive</w>\nimpre ssive</w>\nbab ies</w>\nt x\nm ill</w>\no y\nhar ri\njo int</w>\nsu e</w>\ncollabor ation</w>\ntren d</w>\nrevolu tion</w>\nre new\nalum ni</w>\nge tt\nsh ell</w>\nsun day\nent u\nni c</w>\ndonald trump</w>\nblock chain</w>\npaci fic</w>\nexpla ins</w>\nsp y</w>\nad voc\npar adi\nto f\nstar ring</w>\np av\nfe ed\nbr ac\nsmo ke</w>\nham p\ny am\nto kyo</w>\nsi mon</w>\nd h\ne ffici\nphys ical</w>\nn j</w>\nell i</w>\ns low\ngradu ate</w>\nameric ans</w>\nti fy</w>\nf red</w>\nap ore</w>\nfin ds</w>\nrob in\nwe t</w>\nnot ice</w>\nse mi</w>\nun ve\nk om\npil ot</w>\nscre ening</w>\nda ily\nðŁĴ Ĺ</w>\nroy al\nsp a</w>\nvo tes</w>\nn ag\nwh ate\natt ending</w>\nexper im\nad dition</w>\nk ate</w>\nsto l</w>\nm ali\nfoo t\nchri st</w>\nch an</w>\nde e</w>\nlic en\nglo bal\nmo ore</w>\nti a</w>\nbri gh\nmyster y</w>\ny ay</w>\nâĿ¤ï¸ı âĿ¤ï¸ı\ncre ati\nme chan\nclo ck</w>\ndi c</w>\nâĢ Ķ\npp er\nal ph\nthrough out</w>\nal low</w>\nre sources</w>\nselec tion</w>\nham il\nbb q</w>\naa aa\nvirgin ia</w>\ndis ney\nen g</w>\nso red</w>\ndrin ks</w>\nf ancy</w>\nconsi der</w>\nend a</w>\njan e</w>\nhand made</w>\ndu l\non tari\ni us</w>\ns ville</w>\ncolor ado</w>\nwhate ver</w>\nwhe el</w>\npromis e</w>\nne ver\ndesig ns</w>\nab ly</w>\nsex ual</w>\nvanc ou\nat i</w>\ncon vention</w>\ncul tural</w>\nsing apore</w>\npro mo</w>\nload ed</w>\ngla sgo\npp l</w>\nn oo\nke e</w>\nste m</w>\nmen tion</w>\ni do\ncru ise</w>\nri ding</w>\nbe comes</w>\nbe y</w>\nâļ½ ï¸ı</w>\ntw in</w>\ndedic ated</w>\nna sh\nde si\nwork out</w>\njen ni\ni v\ngrou ps</w>\nrela x\npho eni\nli ft</w>\nmix ed</w>\nm ck\np c\nmu st\nme tro</w>\nci es</w>\ny ar\na im\nang er</w>\ni e\nrec y\nmarri ed</w>\ndro pped</w>\neng ag\nle st</w>\nambassad or</w>\nop h\nde s\nw ick\nassi stant</w>\nnat ur\nfa il</w>\nl td</w>\nshor t\nk ap\nsha w</w>\nbi gger</w>\nrema ins</w>\ncrit ical</w>\nsur vey</w>\nco verage</w>\ner son</w>\nwin d\nn b</w>\nbil ly</w>\nlet es</w>\nac ts</w>\njim my</w>\nat lan\nal and</w>\nt c\nimport ance</w>\ndam age</w>\nf g</w>\nstor age</w>\ntw t</w>\nbon d</w>\nbal ance</w>\ncr ying</w>\npu ppy</w>\nvo te\npu sh</w>\nðŁĴ ľ\npol y\nme l</w>\nlon don\nterr ori\neffec tive</w>\ncorpor ate</w>\natl anta</w>\njac o\nnas a</w>\ngre ek</w>\nsen ate</w>\ni sh\nev a</w>\nintellig ence</w>\neffor ts</w>\nal co\nk un\nh all\ndi ag\nclaim s</w>\nfir st\nh b\nba e</w>\nv ul\npu ll</w>\nÂ °</w>\nse par\nspe ed\nvic ti\non thisday</w>\naudi ence</w>\nr ates</w>\nte ach</w>\nfil ming</w>\nbu sh</w>\nson g\ny um\nbr un\nra ine</w>\naw a</w>\npar ks</w>\nð Ŀ\nra bb\nra ch\nra id</w>\nreach ed</w>\nra il</w>\nmo ves</w>\nselec ted</w>\nfr i</w>\nra ising</w>\nom y</w>\nst ones</w>\nsu k</w>\nfranc isco</w>\ncas es</w>\ncap it\ncon fu\nw tf</w>\npo ke\nequip ment</w>\ngre g\ness ential</w>\noff ering</w>\nne x\npi es</w>\nbe c\ncre ation</w>\nchair man</w>\ncro wn</w>\nw al</w>\njohn ny</w>\nshi ft</w>\nne ck</w>\nban g</w>\nbir d\nðŁĺ ı</w>\ndu ck</w>\nre serve</w>\nde pu\nma sters</w>\nover all</w>\nno tic\nju ice</w>\nsne ak</w>\nche er</w>\ncla sses</w>\neag les</w>\nn ca\ncar pet</w>\nci vil\ncoach es</w>\nhar ris</w>\nu ps</w>\nb alls</w>\ndec or</w>\nmar tin\nro s</w>\nv ice</w>\nannoun cement</w>\nwho se</w>\nti gers</w>\nste red</w>\nc ts</w>\ndr am\nste el\nyoun g\ninst all\nsupp o\nrecor ding</w>\nde ck</w>\nse ats</w>\nl der</w>\nang le</w>\nbo t</w>\nsty les</w>\nelec tions</w>\nfor tun\nn ab\nbut ter</w>\nari an</w>\nka sh\nin ner</w>\nou red</w>\nbe ast</w>\nwe i\nic onic</w>\nexper ts</w>\nne cess\nb eng\njam es\nli a</w>\ngre ece</w>\nðŁĵ ·\nðŁĺ ģ\ngood bye</w>\nm itch\ntw ice</w>\nmumb ai</w>\nste am</w>\nru sh</w>\nmed al</w>\nne tt</w>\nfashi on\nt ar</w>\nr s\nsav ing</w>\nric ul\nl m\nsleep ing</w>\nbrook lyn</w>\nmis s\nsen ding</w>\ndisco vered</w>\nsp here</w>\nof theday</w>\nk icks</w>\nmissi ons</w>\nw right</w>\ner n\nght ly</w>\ni ous</w>\nmel bourne</w>\nstar tu\nmo ved</w>\ncar ry</w>\nd ak\nag ues</w>\nbel gi\ne ma\nway ne</w>\ndo t</w>\ner ie</w>\npe l</w>\nit unes</w>\nmatthe w</w>\nno body</w>\nest ab\ncal m</w>\nwin ds</w>\nlu c\nprep are</w>\ntren ds</w>\nexerc ise</w>\nadv ant\nðŁĴ ¯</w>\nathle tics</w>\napp s</w>\nc tions</w>\nadv ance</w>\nlaun ches</w>\nlitt le\nreal donaldtrump</w>\neliza beth</w>\ncarol ina</w>\nhu b</w>\nhi dden</w>\nn w</w>\nus er</w>\npol l</w>\ngreat er</w>\nmo st\nf ed</w>\np at</w>\nlife style</w>\ns ati\nsco res</w>\nmarri age</w>\nl r</w>\naven ue</w>\nde serve</w>\nri f\nðŁ Ĺ\nwat ch\nchampion ships</w>\ngr ay</w>\nen ni\ncot ton</w>\ng om\nwhe re\npack age</w>\nsu m\nab solu\nnew ly</w>\nfoo ds</w>\nty ler</w>\nassemb ly</w>\nmusli m</w>\nban k\nre memb\nop tions</w>\nproduc er</w>\nland o</w>\nfun ds</w>\nu pper</w>\nshad ow</w>\npro gre\nco p</w>\ning e</w>\nleg s</w>\ndetro it</w>\nhill ary</w>\njo se</w>\ngi ants</w>\nsou p</w>\nsustain able</w>\nt us</w>\nclo thes</w>\nroc king</w>\nn z</w>\nmin ne\nmat eri\nbru ce</w>\near t\nca sting</w>\nindepend ent</w>\nthou sands</w>\nta h</w>\nde cl\nveter ans</w>\nli ons</w>\nwra p</w>\nâĢ ¦\nde ss\nbl ing</w>\nst ine</w>\ne ggs</w>\no on</w>\nclo sing</w>\nz ay\nat t</w>\nbac on</w>\nfa il\nariz ona</w>\nde pre\ngho st</w>\nnew sp\nw ers</w>\nvi p</w>\nli ked</w>\nid ent\nvolunte er</w>\nad ult</w>\npu pp\ncir cle</w>\nmat erial</w>\ndegre e</w>\ngro wn</w>\nboo m</w>\ncalend ar</w>\nsu r</w>\nvie wing</w>\nath letes</w>\nch and\nre ll</w>\nasi an</w>\nen tr\nvol ley\nvicti ms</w>\nbo dy\nm ama</w>\ntrans fer</w>\nge ek</w>\nin dic\nsav ed</w>\nma i\ng ent</w>\nit s\nloun ge</w>\nk ol\nthe ory</w>\nsitu ation</w>\nis lands</w>\nar th\nz oo</w>\nfloo d</w>\nvi ously</w>\nshow ed</w>\nparliam ent</w>\nch ev\nel ine</w>\nat trac\nab ad</w>\nta il\nh rs</w>\nlu s</w>\npor tu\ngor y</w>\nprovi des</w>\nto ys</w>\nde ath\nin fe\nan ce\ng le\nli am</w>\nlo ver</w>\nhu d\ndv d</w>\nreve aled</w>\ng w\nre ment</w>\nca the\nl ying</w>\nra dio\nder by</w>\nstor s</w>\nche mi\nhosp it\nâľ ¨\n' :</w>\nilo ve\nle mon</w>\nre public</w>\ns ni\nne ss\ndo or\nre action</w>\npre gn\nfla v\nschol ar\nspo tify</w>\nis ation</w>\nvis ual</w>\naw are</w>\nspon sored</w>\njo ke</w>\nless ons</w>\nleg is\nlo ck\nsi mil\nðŁĺ ĭ</w>\nkin d\nla y\nma h\nho ping</w>\nvancou ver</w>\nas er</w>\nclean ing</w>\ngal a</w>\nthre at</w>\nla p\nach e</w>\nro mance</w>\nex pen\nre post</w>\nz am\ne pi\nmir ror</w>\no ak</w>\nad ul\nbat man</w>\ns lu\nl c</w>\nvie wed</w>\nre views</w>\nd ates</w>\nindone sia</w>\nacti vi\noff en\nlea f</w>\ni si\nag ricul\ncostu me</w>\ns ites</w>\nspir itu\nappear ance</w>\nir y</w>\nst air\napplic ation</w>\nspec tac\nic ity</w>\nski es</w>\nhand le</w>\npun k</w>\nparadi se</w>\nt n</w>\nde al\nprovi ding</w>\ndo c</w>\nrecei ving</w>\nbre w</w>\nmicro soft</w>\nÃ ¶\nfer r\nme tro\nth ail\ny um</w>\ncar ter</w>\nÃ ¡\ngent le\nbre aks</w>\ncoo per\nshow case</w>\ncu tting</w>\negy pt</w>\nbab y\nsemin ar</w>\ngl ori\nss on</w>\nfa ve</w>\nre hear\nlo tte</w>\nla dy\nal as\npre p</w>\ndeli vered</w>\nnu clear</w>\nir o</w>\nengag ement</w>\nat ta\ncon ven\nz an\ngl ory</w>\nhol ds</w>\nbusine sses</w>\nstr ange</w>\nsch e</w>\nit self</w>\ngra d</w>\nmar kets</w>\nf alling</w>\nst ats</w>\nge on</w>\nbu dd\nli s\nshe et</w>\nthi si\nco lo\ndeser t</w>\nregi stration</w>\nig n\nexpla in</w>\ninter ior</w>\nla ws</w>\nwrit ers</w>\nspr ings</w>\nk r\nfri ed</w>\nblo om\ninf ra\na o\ncre d\npa st\nline up</w>\nbo o</w>\nbre a\nboo ts</w>\ncelebr ity</w>\natt acks</w>\nbro ok</w>\nev es</w>\nex cu\ncher ry</w>\noo p</w>\nfas cin\nboy friend</w>\nse as\nn ine</w>\neffec ts</w>\npo wered</w>\nk ha\nðŁĺ Ģ</w>\nsh out\ncon dition</w>\ni j\nher o\nenter pri\nwin ter\napplic ations</w>\nsho e</w>\ng el\nbatt le\npro grams</w>\nw art</w>\nðŁĴ ¥</w>\nra p</w>\nho l</w>\ndang erous</w>\ndi a\ncoun ter</w>\nric s</w>\ni or\nk night</w>\nco at</w>\nemo tional</w>\nat ures</w>\nd as</w>\nwhe el\nfore cast</w>\ntran sport</w>\nglasgo w</w>\nking dom</w>\nprepar ing</w>\nim medi\nff in</w>\nawar ded</w>\nprin ting</w>\nro man</w>\nfight ers</w>\nany more</w>\nbel t</w>\np ine</w>\nwin e\nx i</w>\nemploye es</w>\nlogi es</w>\nal led</w>\nde mo</w>\nbirth day\nange les</w>\nlo g</w>\ndri vers</w>\nneck lace</w>\nk ath\ns it\nathle te</w>\nef s</w>\ns burg</w>\npur pose</w>\nresi stance</w>\nrele ases</w>\nt is</w>\nvari ous</w>\ndeli ver</w>\nch al\ns anc\nopp o\ncra w\nneu ro\ndr a</w>\nsuppor ters</w>\nsna p</w>\ndiffic ult</w>\nswe ar</w>\nlogi st</w>\npa th\nattemp t</w>\nà ¥\nswim ming</w>\nste ve\nhur t</w>\ninclu ded</w>\nb ap\nwa re\nðŁĴ ĭ</w>\nend ers</w>\nja ke</w>\nle eds</w>\ncli mb\nl b</w>\nim ple\nli sa</w>\nclo thing</w>\nðŁĺ İ\nd t</w>\ncom pla\nsw ing</w>\nstra w\nv als</w>\nk le</w>\nus ers</w>\nstor m\ncu ts</w>\nontari o</w>\np an</w>\nhand some</w>\ni ow\nar gu\nchec king</w>\nscotti sh</w>\nĶ ï¸ı</w>\nsi er</w>\nem ma</w>\npo d</w>\npatter n</w>\nde sh</w>\nen h\ned ward</w>\nt ing\nk h</w>\nhal f\nlincol n</w>\nmo ther\nal leg\nr c</w>\nvolley ball</w>\nd n</w>\ng ay\nall y\nle ton</w>\ngro ve</w>\nl oud</w>\nadv anced</w>\nre spec\ncli ent</w>\nsupre me</w>\nthail and</w>\nho w\ngi g</w>\nto i\ndo t\ndol lar</w>\nðŁĳ ĩ</w>\np it</w>\nr b</w>\nh n</w>\nproduc ed</w>\ngg ers</w>\nâĨ Ĵ</w>\nml b</w>\ncan vas</w>\nfin eart\nus d</w>\nin the\np son</w>\nactu al</w>\ns l</w>\nt b</w>\nip ad</w>\nen sure</w>\nu mb\nw d</w>\nsk a</w>\nmar s</w>\nk end\nf eli\nth ing\ncount down</w>\nabsolu te</w>\nr out\ndra l</w>\np y</w>\ninju red</w>\nmin t</w>\nhun ting</w>\nmm er</w>\ns age</w>\nli gh\nac ity</w>\nex pan\nmur ray</w>\nar o\nsec ure</w>\nfour th</w>\neag le</w>\nreli ef</w>\nst akes</w>\nindustri al</w>\nclar k</w>\nunder standing</w>\nsee m</w>\npl enty</w>\nsil ver\ncla u\nthre at\nsa il\npro duce</w>\nab str\nis is</w>\nb r</w>\neng ers</w>\nwor ry</w>\nbie ber</w>\ns j\njust in\nreali ze</w>\nky le</w>\nesp n</w>\nfil ter</w>\ns ch</w>\nty pes</w>\ngame dev</w>\nd ing\ntwit ter\nsoldi ers</w>\np om\ncar bon</w>\ny ards</w>\nchild hood</w>\nri ed</w>\nke l</w>\nele ph\nt ons</w>\nkey note</w>\nqui et</w>\nwi re\npo sting</w>\nis sa</w>\nrepre senting</w>\nbac ks</w>\nalex ander</w>\ncelebr ates</w>\nta ining</w>\n| |</w>\nch or\nesc ape</w>\npe ek</w>\nti ves</w>\nfiel d\nssi e</w>\nim pac\nspons or</w>\nr c\nwe dd\ncann ab\nsi des</w>\ntrac ks</w>\ncom par\ncon trac\ntechn ical</w>\nbi ble</w>\nexpl oring</w>\nsh are\ntra v\nn ate</w>\nill o</w>\nsc ru\nm ingham</w>\ngun s</w>\nof the\nsh ame</w>\nse es</w>\nca tho\nac cess\nce l</w>\nrepor ted</w>\nÂ »</w>\nmari o</w>\np ad</w>\nhope fully</w>\nou se</w>\ny on</w>\ndisapp o\nol o</w>\np itt\npa c</w>\nga p</w>\ncru sh</w>\ns g</w>\nk le\nge m</w>\nemp ire</w>\ndir ty</w>\na is\navi ation</w>\nze aland</w>\nfac ing</w>\nhigh way</w>\nd anny</w>\nspi der</w>\not ta\nðŁĺ Ħ</w>\nw y</w>\ncol ours</w>\nin fl\nco sts</w>\nolym pics</w>\nau s</w>\nh m</w>\nho ward</w>\npas ses</w>\nlau ren</w>\nmu sh\nop in\nr ho\ndisc ount</w>\noper ation</w>\nem ily</w>\nmm m</w>\ncham ber</w>\nd il\nto yo\nshi p\nsam u\npic tured</w>\nun ic\npo l</w>\nkeep er</w>\ncarto on</w>\nst en\nig nor\nn ations</w>\nn l</w>\nta sting</w>\ndeta il</w>\noffici als</w>\nmo tor</w>\nfranc is</w>\ned itor</w>\nðŁĳ ĩ\npe ts</w>\nrang ers</w>\nt g\nr n</w>\nw ri\nnic hol\ni se\nspo ts</w>\nani e</w>\nchec k\ntri ple</w>\nku mar</w>\nspe akers</w>\nic ing</w>\npre pared</w>\nab use</w>\nfriend ship</w>\nmon th\nswi m</w>\nair e</w>\nsc ent</w>\nhamil ton</w>\nindi an\nj es\nyum my</w>\nte ars</w>\nda wn</w>\ni zed</w>\nworl ds</w>\nðŁ ķ\nb illi\nst one\nn hs</w>\nba sic</w>\np or</w>\nst le</w>\nir on\nol der</w>\ncle vel\ne ing</w>\nðŁĺįðŁĺį ðŁĺį</w>\nprin ts</w>\nfir m</w>\nair craft</w>\nfin est</w>\ndevel op</w>\naar on</w>\nt z\ngra ham</w>\nown ers</w>\nfo li\nless on</w>\nqu es</w>\nbab e</w>\ncra ft\nph en\nju n</w>\nbir mingham</w>\nv ine</w>\nll er</w>\ni an\nfineart america</w>\nevol u\nst ab\nim per\nwar d\ncom ic\nwi z\ninv ited</w>\ndu ke</w>\nmat ch\npor ts</w>\nro ger</w>\ndiag no\nke pt</w>\nte st\nvis u\nr hy\nso c</w>\nto x\nb aker</w>\nsur face</w>\nco vers</w>\nman s</w>\nb its</w>\nx box</w>\nff le</w>\nn an</w>\ngar d\nh art</w>\nwat ers</w>\nv illa</w>\nre tro</w>\nlight ning</w>\ncatho lic</w>\ndemocr acy</w>\nneigh bor\npen n\ncr an\njona than</w>\nla ura</w>\nvi bes</w>\nsu b</w>\ncoach ing</w>\nclear ly</w>\nuk raine</w>\nbra ve</w>\ncommit ment</w>\nt all</w>\nmar t</w>\nra p\nmo di</w>\nsco tt\nbro s</w>\nshow er</w>\nðŁı ¾</w>\nâĺº ï¸ı</w>\ncou sin</w>\nappro ach\nbr e</w>\ncom pos\nhil ari\nphil ly</w>\ng ad\nquick ly</w>\nri an</w>\nt m</w>\nvir tual</w>\nhou ses</w>\nk t</w>\nphoeni x</w>\nw ire</w>\nff y</w>\nb unch</w>\nanc ing</w>\ntal e</w>\nsnap chat</w>\nstar ter</w>\nh t</w>\nk icking</w>\nap art</w>\nth y\n) !</w>\nblo gger</w>\nit z</w>\ncom fort</w>\nang els</w>\nw ash</w>\n\" :</w>\nar gent\nre quest</w>\nhon est\nmi ghty</w>\nbo bby</w>\nk g</w>\nro l</w>\nthou se</w>\nex po\nh c</w>\ntab les</w>\nmag ical</w>\npo sts</w>\nde m</w>\nn w\nor lando</w>\nab er\n* **</w>\nðŁĺ ľ</w>\nenviron mental</w>\ntrans formation</w>\nmi le\nw ic\nhir ing</w>\nma ine</w>\nbo ar\nr ying</w>\nti s\nnit ure</w>\ntwee ted</w>\nanton io</w>\nopin ion</w>\nfin ale</w>\ndi y</w>\nf is\nth in</w>\ntrou ble</w>\nle go</w>\nfi les</w>\nqu art\nsp a\ncurren cy</w>\ncli mate\nfan art</w>\nrail way</w>\nsp ace\nban ds</w>\ndani el\nmo tion</w>\nl eng\nhol der</w>\noc cu\nmar ie</w>\ncathe dral</w>\nbu zz\nbi es</w>\nnas car</w>\nbm w</w>\nbat tery</w>\nchar lotte</w>\ndoc tor\nzz le</w>\nse ven\nin san\nd dy</w>\nst en</w>\nlab or</w>\nthr illed</w>\nse ren\ndocu mentary</w>\nwav es</w>\ncer tain</w>\ncan did\nallow ed</w>\nninten do</w>\nstar wars</w>\nta p</w>\nhome made</w>\nd les</w>\nther ing</w>\nbre e\nemp ty</w>\npi ano</w>\npos iti\ncoun try\npor k</w>\npu ts</w>\nper ry</w>\nm atic</w>\nspot light</w>\nti st</w>\nor ities</w>\nwe alth</w>\nc p\nbar bar\ncommit ted</w>\nas sau\npro fit</w>\ne ight</w>\nhu l\nfini shing</w>\nrun ner</w>\nss o</w>\ninsp ec\nchar ged</w>\nchrist op\nlo sing</w>\nco al</w>\nho o</w>\nele v\nde le\nmo ham\ndon ation</w>\nc able</w>\nclin ic</w>\nj in\nmanag ed</w>\nter ing</w>\nâ ¬\nur ban\ndepu ty</w>\nbb er</w>\nbur n\nacade mic</w>\no tt</w>\nsta ke</w>\nit er\nsto wn</w>\nack er</w>\nadvent ures</w>\nad ams</w>\ngre g</w>\npro m</w>\nvo l</w>\nac qu\ncon gre\npa int\ncitiz ens</w>\nc all\naf ford\nv c</w>\nas ks</w>\nthe tic</w>\nindepend ence</w>\nâ Ľ\nh itting</w>\nbl on\nfu ture\nâ ı\nin no\ngen e</w>\nbo ards</w>\ndi stance</w>\nse t\nre mem\nth al\npre vent</w>\nl ang\nob jec\nsu sp\nmat t\nin duc\nbor o</w>\npi one\nre di\nvir tu\nprin ted</w>\nsco pe</w>\nshar k</w>\nsuc ce\na stron\nil legal</w>\nj ag\nc ting</w>\nine e</w>\nat o\nrob in</w>\nnutr ition</w>\nb f</w>\ndu tch</w>\nb n</w>\nfur niture</w>\nfor gotten</w>\nat ar</w>\nru p\nhy per\nbran ch</w>\ncommunic ation</w>\ndegre es</w>\non ia</w>\nun cle</w>\npromo te</w>\nor che\nwi i</w>\nj s</w>\nbut ton</w>\nma jor\nc bs</w>\nbri stol</w>\npremi um</w>\nordin ary</w>\ne dit</w>\nm g</w>\nwe ed</w>\nst even</w>\n: '\ngu s</w>\nte s\ncap tured</w>\ndru gs</w>\ndo w\nwr ites</w>\nbi shop</w>\nwhe els</w>\nali zation</w>\ndisco very</w>\nw r</w>\nrach el</w>\nne il</w>\nhy dr\ncu test</w>\nentreprene ur</w>\nkore an</w>\nore gon</w>\nul ty</w>\nperfec tly</w>\nsuppor ted</w>\nhistor ical</w>\nt wins</w>\nell y\nwe l</w>\nde vil</w>\nin come</w>\nscienti sts</w>\nde leg\nh en</w>\non i</w>\nic ed</w>\ngi o</w>\ncur ry</w>\nreve al</w>\ne g\nbuff alo</w>\nn ol\nop era</w>\ncamer on</w>\nhaha haha\nj ab\ngradu ation</w>\ncra ig</w>\nr al\ni f\norgani zation</w>\nle ge</w>\ng ang\nsu d\nedin burgh</w>\nl ack</w>\nfli es</w>\ng ate\nthr ones</w>\nq b</w>\nthe real\ne leg\npp in</w>\nc les</w>\njam ie</w>\ntn am</w>\ncryp to\nou l</w>\np ages</w>\na se\nroo ts</w>\nstu pid</w>\na did\nboo t</w>\nprote in</w>\ns ap\nsi um</w>\nsu s\nend or\nfun ction</w>\ndon t\nen na</w>\nch y</w>\nsqu e</w>\nwor ker</w>\nm tv\ne a</w>\nk an</w>\nðŁĴ ļ\nmu s</w>\nprofessi on\nt to</w>\noper ations</w>\nal lo\nc tor</w>\ninv ite</w>\nsc and\nou th</w>\nz im\nlin ks</w>\ncli ents</w>\nsam sung</w>\ndiscu sses</w>\nn ell</w>\nul tra</w>\nsome where</w>\nste wart</w>\nine t</w>\nde z</w>\nb out</w>\nfac tor</w>\nti an</w>\ntr ans</w>\njere my</w>\nd b</w>\nðŁĩ ¬\nor n</w>\ndevelop ing</w>\nspo l</w>\ncoo per</w>\nma u\nrememb ering</w>\ntre k</w>\nfamil y\nsen iors</w>\nfo ster</w>\natt ended</w>\nw ing\ntrans form\nele mentary</w>\nhor iz\nli sting</w>\nmalay sia</w>\nit ch</w>\nwarri or</w>\nphilipp ines</w>\nruss ell</w>\nm end\niniti ative</w>\ncre ep\nto ps</w>\nbr iti\na ur\nshar p</w>\nadverti sing</w>\nug ly</w>\nachi ev\nmateri als</w>\nbu g</w>\ndev ice</w>\nbon us</w>\nfac ility</w>\ncol e</w>\nnh l</w>\ny as\nplann ed</w>\npol e</w>\nexcell ence</w>\ntr ick</w>\ncon fl\nr p</w>\nachi eve</w>\nlo an</w>\nswa g</w>\njess ica</w>\nho we\np our</w>\nsc u\nz oo\nr ated</w>\ndre sses</w>\nre bel\nmex ican</w>\nco ordin\nme ss</w>\natlan tic</w>\nt l</w>\nosc ar</w>\nwal ks</w>\nphar mac\ninvestig ation</w>\n... #</w>\ncc i</w>\neas ily</w>\nmonday motivation</w>\ny ment</w>\nau ti\nfor ced</w>\nar med</w>\ncolle agues</w>\npap ers</w>\npro per</w>\nsha ke\nbu c\nle an</w>\nexhi bit</w>\ne vement</w>\nco tt\nbi z\nsp er\nk ent</w>\nsw an\n/ @</w>\ngirl friend</w>\nhaw k</w>\nâĺ Ģï¸ı</w>\nmon o\nðŁĴ Ľ\nstat ue</w>\nðŁĺ ³</w>\nra s</w>\nte eth</w>\npreci ous</w>\nt ile</w>\np am\nswi ft</w>\nv ali\nno se</w>\ndr unk</w>\nexperi ences</w>\ncome back</w>\ngen ius</w>\nwor se</w>\nsh ef\nra d</w>\ned it\nhon our</w>\nau spol</w>\nlar ry</w>\nh ire</w>\ngor don</w>\nachi evement</w>\n.... ....\nsu icide</w>\nalter native</w>\nsu p</w>\nsur roun\nsha ke</w>\nke ith</w>\npe pper</w>\ntur k\ncrimin al</w>\nbe ck\nsu m</w>\nw alls</w>\ncn n</w>\nan tic\nof fe\ncol li\nwin es</w>\nhigh light</w>\nhawa ii</w>\nemb ar\nl fc</w>\nðŁĩ ®\nm v</w>\n> >\nat mo\nwor d\ncar l\nshout out</w>\nbre wing</w>\nì Ŀ\ndo f\ns ic\nhot test</w>\ncol on\nhh h</w>\nshu t</w>\nlow ing</w>\nvolu me</w>\napart ment</w>\nagre ement</w>\nde stro\nwe e</w>\nreligi ous</w>\niow a</w>\nro d</w>\nland ing</w>\nre present\nðŁĵ· :</w>\nla s\nusu ally</w>\nh l\nc ac\nsal v\nal ong\nlaugh ing</w>\nbe ans</w>\nremin ds</w>\npha se</w>\nsome body</w>\nma sk</w>\nran ked</w>\ndest roy\nsc i</w>\nâĢ¼ ï¸ı</w>\ngab ri\nle o</w>\nro a\nfa iled</w>\nsi l</w>\nrefuge es</w>\nre vi\nr ing\nber ries</w>\ncoo kies</w>\ny y</w>\nconserv ation</w>\nsh ab\nhuman s</w>\nde termin\na in\nni all</w>\nas su\nmb a</w>\nfro m\nextre me</w>\nvic es</w>\ncommer ce</w>\nght ful</w>\nor dered</w>\nsuppor ts</w>\nre cap</w>\nv or\ndro pping</w>\ncorrec t</w>\npay ing</w>\nmean ing</w>\nn j\nqui z</w>\n\" #</w>\nbusine ss\nðŁĩ® ðŁĩ\nindi gen\ndu st</w>\nbox es</w>\nbl ind</w>\nx xx</w>\nzz y</w>\nðŁĩ¬ ðŁĩ\nss els</w>\ns ant\ndd le</w>\nhilari ous</w>\ndesig n\nwonder ing</w>\nvehic les</w>\nk re\nju d\nrece ption</w>\npar ker</w>\nÃ Ń\npri vi\nhy dro\nsof tball</w>\npol lu\nlo cked</w>\nba h\ne ar</w>\nscri pt</w>\ndi vi\nbr ace\ngeor ge\nthe ast</w>\nbel o\nj al\ntion ary</w>\ndent al</w>\nroc ket</w>\npur ch\nsh ak\nmanufac turing</w>\ne z</w>\nit is</w>\ncon cep\ntb all\nch s</w>\ndirec ted</w>\npra yers</w>\noo k</w>\nphil os\nvari ety</w>\nche ss</w>\nser ver</w>\ng and\nbal ti\nðŁĵ ¸\nsel y</w>\ncru z</w>\nspectac ular</w>\nbur ning</w>\nre present</w>\ni z</w>\nt one</w>\nmer ce\nh ell\nbed room</w>\nestab li\nbo l</w>\ncom mon\nãĥ »\nab or\nkit ty</w>\nhei ghts</w>\nre pair</w>\nwilli am\nqu ake</w>\nalab ama</w>\npopul ation</w>\nre v\nre tt</w>\ni sts</w>\nn ite</w>\nle m</w>\na ha</w>\nclevel and</w>\nr m</w>\npo ver\nob se\nmon tre\nman ia</w>\nÂ ®</w>\ncon ne\ncar ni\nsh ah</w>\nf y\nu a</w>\nsc or\nstrugg le</w>\nbo b\n' '</w>\nappro pri\ndeci de</w>\nff ed</w>\nca ster</w>\ns ort</w>\nhun gry</w>\ndra g\nØ§ Ù\ngr ounds</w>\nd w\nsli ghtly</w>\ncar din\ndead line</w>\nbron ze</w>\nweb in\nbar ry</w>\nsil ence</w>\ne uro</w>\nop tion</w>\near n</w>\nðŁĴ ĸ\nhowe ver</w>\nna ren\nna ils</w>\nbath room</w>\nv ine\nph d</w>\nmin ing</w>\ngar age</w>\n( )</w>\nshou lder</w>\ndefe at</w>\ndi r</w>\no v</w>\nliber ty</w>\nple as\nx on</w>\ncom pre\na v</w>\nj in</w>\nab les</w>\nsil ent</w>\nfam ili\nvis its</w>\ndi pl\nha bit\nmilli ons</w>\nregar ding</w>\ninnov ative</w>\nsen ator</w>\nr ts</w>\nv on</w>\nk l\nwh il\nrequi red</w>\nâĿ Ħ\nlu v</w>\npresi dential</w>\npo cket</w>\nhun dre\nsho wn</w>\nfro zen</w>\nto ward</w>\nfa st\nconfi dence</w>\nr ough</w>\nindivi dual</w>\nqu et</w>\nðŁı ½\ndom e\nfi fa</w>\nengine er</w>\nz en\nre mix</w>\nðŁĺ ĥ</w>\npl ant\nmin or</w>\nrobin son</w>\nas y\npul led</w>\ncer tain\npotat o</w>\n( :</w>\npre s</w>\noc ca\nw it</w>\nit em</w>\nsi e\nd ating</w>\nthom pson</w>\nown ed</w>\nan u\nvi e</w>\nte dly</w>\ngood night</w>\nex cept</w>\nðŁĮ Ł</w>\nira q</w>\nki e\nren ces</w>\nli p</w>\nsimil ar</w>\nsau di</w>\nvi g\narth ur</w>\npic ks</w>\nmil an</w>\nhon da</w>\nma xi\no g</w>\nste st</w>\nar ch</w>\nanaly tics</w>\nba sti\npear l</w>\nter ry</w>\nhor se\nast ro\nac ce\nlaun ching</w>\ninter national\ns no\nta sty</w>\nden ver</w>\nir l</w>\npe te</w>\ntor n\nadvant age</w>\nvar sity</w>\n\" \"</w>\nsol e</w>\ng c\nlan g</w>\ndemon str\nol ds</w>\nun ity</w>\nne ts</w>\ninsp ire</w>\ncre te</w>\nnash ville</w>\nnel son</w>\ne ter\nwal k\nhy un</w>\nm ack\ntre as\nsee king</w>\nra ge</w>\nbru sh</w>\nab and\nwhil st</w>\nco con\nh ong</w>\nshel ter</w>\ni p</w>\npossi bly</w>\nso o</w>\nit ed\nâ Ħ\nrac es</w>\nwar ming</w>\nqu in\ntele vision</w>\nmat ches</w>\nra pi\nment al\npal m</w>\njenni fer</w>\nrol ls</w>\nindi ana</w>\nb ars</w>\ncat ching</w>\nresc u\ncandid ates</w>\nfa re\nâł Ģ</w>\nse o</w>\nvie tnam</w>\nalph a</w>\nmichel le</w>\nvisi ble</w>\nre gre\nwn ed</w>\napp le\nli p\nf fe</w>\nli z\nyork shire</w>\nha il</w>\nse asons</w>\nbe gan</w>\nm d\nk c</w>\nla p</w>\nfascin ating</w>\nhel p\nur y\nu ms</w>\nnu ts</w>\nse m\nalong side</w>\nbri dge\nori al</w>\no ve\nworld cup</w>\nbriti sh\ncomfor table</w>\ni ve</w>\nhot els</w>\nfair s</w>\nhor ri\nso x</w>\nd ining</w>\nstre am\nbar ri\nss y</w>\nw im\nter ms</w>\nv u\npe re\nl ens</w>\nwal ked</w>\nr or\nl ars</w>\nshi eld</w>\ndou bt</w>\npro to\ncro ssing</w>\nme ant</w>\nmedi um</w>\nad ding</w>\ne b</w>\nche ap</w>\nfun c\npap er\nbran ds</w>\nry an\nfeed back</w>\ncol lins</w>\nun known</w>\ntro pical</w>\nsand wich</w>\nfal len</w>\nfor mu\nselec t</w>\nlo ads</w>\nansw ers</w>\nor i</w>\nmag a</w>\nd or</w>\ndu o</w>\nali e</w>\ndru m</w>\nur i</w>\nde er</w>\nsou l\nsh ut\nâĺ º</w>\nsto len</w>\ndon ated</w>\nbu zz</w>\npatri ots</w>\nha l</w>\nna sty</w>\nnomin ated</w>\nmon te\nki a</w>\nth ri\ning u\nte sts</w>\npe tro\nðŁĳ ĳ</w>\nho sts</w>\nne st</w>\nto pic</w>\npat ch</w>\nm my</w>\nhu gh\nab ilities</w>\nma the\ns miles</w>\ng b\nag enda</w>\ninsi ghts</w>\nchi p</w>\nph an\nfail ure</w>\ndg ers</w>\nha i\nsignific ant</w>\nsho ck</w>\nru ral</w>\ngl am\nfigu res</w>\npot us</w>\no ta</w>\nmini stry</w>\nappe ars</w>\nfe ar\nr h\nameric an\nh att\nson y</w>\nfi res</w>\ne di\nn ou\ne qui\nwh en\nunivers al</w>\nmad ness</w>\ni x</w>\nsculp ture</w>\nb ach</w>\nt to\nswe den</w>\net a</w>\nen to</w>\ndevelop ed</w>\nmonth ly</w>\nma ps</w>\nra h</w>\nle d\ndel ta</w>\nsa ints</w>\nis lam</w>\nben ch</w>\nfif th</w>\nv ard</w>\nso cks</w>\nwel coming</w>\nj e</w>\ntur ner</w>\nv b</w>\nad i</w>\nnor way</w>\nad y</w>\nhurric ane</w>\npor sche</w>\ntra dition</w>\nex am</w>\nnewsp aper</w>\nlu ci\na ver\nide al</w>\nd na</w>\nmadi son</w>\nðŁ §\nwit ness</w>\nac ou\ninsi ght</w>\nsi mon\nrobo t</w>\nsna ke</w>\nn bc</w>\nac o</w>\nro ss\nsh ment</w>\nreligi on</w>\nch ann\nin su\ncamp bell</w>\ninst alled</w>\nwe ather\nhor ses</w>\nol i</w>\nrober t\nk az\nðŁı Ģ</w>\nveter an</w>\nth read</w>\nquar ter\nea sier</w>\ncap ture</w>\nhi pho\nlaw rence</w>\nroman tic</w>\npas sion\ncl ay</w>\nox ford</w>\nth ai</w>\nstu dying</w>\nfi a</w>\nelec ted</w>\nmost ly</w>\nc b</w>\ntu mb\nâĢįâĻ Ĥ\nx l</w>\nsh an</w>\nfa ster</w>\nev ans</w>\nsli de</w>\nsh ri\nsee k</w>\nmi es</w>\nchemi stry</w>\npump kin</w>\ntu m</w>\n, ,</w>\nro om\nfi red</w>\nli ps</w>\npres ence</w>\naf f\nbrew ery</w>\narri ve</w>\nsw ag\nphoto graph</w>\npen gu\nchi ps</w>\nat tor\nval ues</w>\naccur ate</w>\ncon temporary</w>\nprinci pal</w>\ncannab is</w>\nari o</w>\nany where</w>\ngi a</w>\ndemocr ats</w>\nbuil dings</w>\nli ved</w>\nap s</w>\nneg ative</w>\nm are</w>\nbal lo\nli on\ndiam on\nloo k\nre form</w>\ntom my</w>\nil la\ntre ats</w>\nhundre ds</w>\nport land</w>\nwor thy</w>\nex cep\nar ia</w>\nido l</w>\nbe er\ncd n\ny u</w>\naw k\nðŁĩ ¨\nc ells</w>\nÃ ³\nident ity</w>\ndra wn</w>\nde vil\nf inger</w>\nth am</w>\nðŁĳ Ĭ\near ned</w>\nfin tech</w>\ndol ph\ntwee ting</w>\nevolu tion</w>\nðŁĵ į</w>\nest im\nm vp</w>\nn one</w>\nðŁĩºðŁĩ ¸\ntoyo ta</w>\nau x</w>\nmar in\nb old</w>\nl bs</w>\nste ak</w>\nmur phy</w>\nit able</w>\nlou is\nsol ve</w>\npi a</w>\nsk ir\nill ino\nwebin ar</w>\nban ana</w>\nlo v\nth on</w>\nvo ters</w>\nafford able</w>\ndefe ated</w>\nlm fa\nair lines</w>\nsuper b</w>\nany way</w>\ndeb t</w>\nbo red</w>\nver si\nme tal\nresponsi ble</w>\nm k</w>\ns se</w>\nf ay\ncau sed</w>\nf p</w>\nrecomm end</w>\npla za</w>\nspor ting</w>\nalli ance</w>\nau stri\nn n\nt ours</w>\nsurpri sed</w>\narti f\nth under</w>\nsur ve\nwor e</w>\nbri ef</w>\nnecess ary</w>\nz ie</w>\nash ley</w>\ndra ke</w>\nr t\nkni fe</w>\nim mun\nchar ges</w>\na the\nbri de</w>\nrep ly</w>\ng av\nbroad cast</w>\npu er\nbrace let</w>\ncap acity</w>\nharve st</w>\nid k</w>\nperfor man\nd ding</w>\nil ers</w>\npar a</w>\njam a\npro vince</w>\nch in</w>\nid ers</w>\nhar i</w>\nte aser</w>\nch en</w>\nre stor\nr at</w>\nfl at\ncol om\nðŁĴ ŀ</w>\nðŁĩ¨ ðŁĩ\nsmoo th</w>\nr t</w>\np itch\nstay ing</w>\nisra eli</w>\nt cot</w>\nper spective</w>\ndo ck</w>\nopen er</w>\nlo vel\nx o</w>\nclass room</w>\nl ington</w>\ngo al\nkenne dy</w>\nsh am</w>\nsp aces</w>\nmitch ell</w>\nhome coming</w>\nuk i</w>\nclaim ed</w>\nrecru it\ning o</w>\nmu fc</w>\nmon it\ng roo\nresi dent</w>\nper cent</w>\nper man\notta wa</w>\nint ment</w>\nan xi\nstand ards</w>\nwor ship</w>\nsche me</w>\nf x</w>\npot ter</w>\nbi an</w>\nathle tic</w>\naf gh\ns se\nsat ell\npar ties</w>\nâĿ¤ âĿ¤\ninfra structure</w>\nrela x</w>\nmo du\nwor n</w>\nsmo king</w>\ny ach\npractic es</w>\nwc w</w>\nam b\ndome stic</w>\ntay lor\nk entu\nprovi ded</w>\nmo di\nve g\n\" ...</w>\nob serv\nðŁĺ ©\nbe ard</w>\nm our\nan gry</w>\nðŁĺ ±</w>\nstartu ps</w>\nwoo den</w>\ndi ve</w>\nna il</w>\nanti que</w>\nro ses</w>\ntorn ado</w>\nm at</w>\n^ ^</w>\nsu spect</w>\nfar m\nde vices</w>\nme ga</w>\ntu l\nscholar ship</w>\nge e</w>\ndisa ster</w>\narri val</w>\npo in\nmar c</w>\nkati e</w>\nbb ed</w>\nfal se</w>\ndeser ves</w>\nric hard\nju ana</w>\nfre y</w>\ntion ed</w>\nhy bri\nr w\nsar ah\nach i</w>\nc ure</w>\no le\nmor ris</w>\nch ic</w>\nbroad way</w>\nla bel</w>\npa k</w>\npover ty</w>\ngol f\ne red</w>\nf u</w>\ner ies</w>\nbe es</w>\nalo gue</w>\nst el\nwire less</w>\nje wish</w>\nti de</w>\nblo cked</w>\nlife time</w>\nb har\nsp lit</w>\nam ster\nth i</w>\njo shu\nbr unch</w>\nha ps</w>\ns for\noo ps</w>\nka poor</w>\nhi king</w>\nsuppo sed</w>\nro of\nre as\ntra in\nti ght</w>\ntru mp\nbas ically</w>\nr r</w>\nea red</w>\nsee ds</w>\nentr ance</w>\nc p</w>\nwi e</w>\nson ic</w>\nvic tim</w>\nhe re\ne h</w>\near rings</w>\nsal mon</w>\narc tic</w>\nan ne\ndou gla\ncorru ption</w>\nhann ah</w>\nha sn</w>\nvo ices</w>\ncon ce\natt a</w>\nfle et</w>\nclin ical</w>\ndemocr atic</w>\nton y\nst ood</w>\nle f\ntwit ch</w>\na il</w>\nhonest ly</w>\nincre ased</w>\ndro me</w>\ndon na</w>\naccep ted</w>\nvisit ors</w>\nap ar\nad or</w>\np ar</w>\njer ry</w>\nra i\nbrand on</w>\nab u\n!! !!!!</w>\nme me</w>\nin gh\nglori ous</w>\nb hu\npu mp</w>\nj ol\nli ke\nfi sher</w>\nma z\nag an</w>\ndestin ation</w>\nplay list</w>\nle tters</w>\ngen u\nbr ace</w>\ncelebr ated</w>\nbann er</w>\nr he\ndra gon\nðŁĺ ħ</w>\nsig nature</w>\ngre y\nâľ Ķï¸ı</w>\nal ice</w>\nbe red</w>\nph er\nber n\nca th\nga thering</w>\nsc oring</w>\ninflu ence</w>\nsm iling</w>\nde pt</w>\nlo cal\na x</w>\nac u\nreti rement</w>\nhon or\nher self</w>\nchem ical</w>\nasse ss\ny all</w>\nfre qu\nappreci ation</w>\nac a</w>\ncho ir</w>\ncu z</w>\nso il</w>\nc il\nrepor ting</w>\nu h</w>\nenterpri se</w>\ngr at\njaco b</w>\nru m\nfe e</w>\nj ak\nsp in</w>\nbi kes</w>\nphi a</w>\nste re\np is\nbloo d\nt att\nra ft</w>\nwar ren</w>\nsh eri\nback stage</w>\nmar sh\nhash tag</w>\nther ine</w>\nre in\ngame day</w>\nguar an\nreci pes</w>\nmin ds</w>\nstron ger</w>\nissu ed</w>\nbic y\nn ak\nment ed</w>\nsc ary</w>\nu x\npre vious</w>\ntt le</w>\nth ats</w>\nac tors</w>\nu ma</w>\ntin a</w>\nbun ny</w>\npromo tion</w>\nu ss</w>\noli ver</w>\nmontre al</w>\nwhat s\nappreci ated</w>\nla kes</w>\nexcu se</w>\nkno wing</w>\npri zes</w>\nmusc le</w>\nshad es</w>\nsco t</w>\ning redi\nelectr onic</w>\nju an</w>\ncomb at</w>\ns ri</w>\ne h\nturk ish</w>\nl om\nstri kes</w>\npri son\nre e\npo pe</w>\nvi d</w>\nol dest</w>\ndol l</w>\nsw iss</w>\ncerti fied</w>\ncli p</w>\nre turning</w>\nlat or</w>\nle igh</w>\ntt es</w>\nwat son</w>\nheal ing</w>\nel im\nper haps</w>\nha ss\nk au\nd der</w>\nmou se</w>\nnew castle</w>\nindigen ous</w>\nwel comes</w>\nco le\ntau ght</w>\nno ise</w>\nappe ar</w>\njo e\ncan on</w>\nwedne sday\nu tah</w>\nc tive</w>\ndri ven</w>\ni v</w>\nc ell\nstri p</w>\nac c</w>\nfocu sed</w>\nar rest</w>\nsto cks</w>\nwo o</w>\nâ Ĺ\nnotic ed</w>\nshad o\ndi spla\nter ror</w>\nbor ne</w>\nsecon d\nque ens</w>\nwo ke</w>\nja il</w>\nno tt\ncam bridge</w>\nhar t\nse af\nfa x</w>\nac cept</w>\nâĺ ħ\ngoo ds</w>\nk at</w>\nt win\nh s\nthou sand</w>\ns ins</w>\nsu ite</w>\namp ton</w>\nar n\nrele v\nric har\nhoo ps</w>\nn bc\nclass ic\np ab\nsoldi er</w>\nde plo\nle ans</w>\ninstall ation</w>\ncla sh</w>\nle ban\nee e</w>\nti re</w>\nbelo ved</w>\nfu sion</w>\ntravel ing</w>\nne i\ncoo kie</w>\nglo be</w>\nphys ics</w>\ns q\nco l</w>\nwol ves</w>\nd l</w>\nex it</w>\n\" -</w>\nfoo tball\nle af\nster ling</w>\nhi de</w>\nminne so\nfresh man</w>\nnatu re\nindi e</w>\nsupp lies</w>\nbri s\niri sh\nink tober</w>\ndoo dle</w>\nic op\nmess ages</w>\nadul ts</w>\nrecor ded</w>\nfix ed</w>\nar do</w>\noffe red</w>\nunder ground</w>\ndr one</w>\np ine\nma inten\nand re</w>\nham mer</w>\ns x\nr ound\nhi ke</w>\nbra d</w>\nro me\nfu ll\non ey</w>\nro ws</w>\ncolum bia</w>\narchi ves</w>\nappro ved</w>\nbat ch</w>\nillino is</w>\nrecogn ition</w>\nshou ldn</w>\nfo g</w>\nnca a</w>\nke vin\nhuman ity</w>\nal though</w>\npow ers</w>\np ou\ns ar</w>\npe st</w>\nalco hol</w>\ncon sci\nphil adel\nen o\nt m\nok la\ncate gory</w>\nparticip ate</w>\naccu sed</w>\nbri ef\npo em</w>\nclu bs</w>\nconsul t\nja b</w>\nbig data</w>\namster dam</w>\nac ing</w>\ncerti fic\nn u</w>\nd at</w>\nimpro ved</w>\nand y\ncampa ig\npale stin\np ace</w>\nmo bi\nfeel ings</w>\nwol f\nbra in\npro pos\ninter active</w>\nprin ce\ninde x</w>\nc is\ncha e\npeace ful</w>\nco vering</w>\nac o\ncour ses</w>\nmon key</w>\nre place</w>\nb l</w>\nbloo dy</w>\ntal es</w>\nbrigh ton</w>\nneighbor hood</w>\ng ates</w>\nspiritu al</w>\naf raid</w>\nbre ast</w>\nb ones</w>\nðŁĳ ī\nvide o\nw au\ntou ch\ninju ries</w>\ncar l</w>\nri x</w>\nune x\nâĢ ¢\nfre d\nconsi dered</w>\nthu si\nan ch\non y\nu sa\ngraph ics</w>\nac re</w>\nðŁĺ ©</w>\ncom memor\ncom mod\ngo ti\nguar dian</w>\nstar bucks</w>\npre vention</w>\nhaha haha</w>\nadmini stration</w>\nportu gal</w>\nfac ulty</w>\nbet a</w>\nul a</w>\nal bert</w>\nbre ath\ner i</w>\nle tting</w>\ntr ic\nment ation</w>\nincredi bly</w>\nten nes\nv d</w>\nðŁĻ Ī</w>\ned die</w>\nbr ick</w>\ngr ill</w>\nbt w</w>\nwat ches</w>\nresear chers</w>\nt ney</w>\nni e\np as</w>\na ster</w>\nvi br\npoke mon</w>\nch rome</w>\ngo at</w>\npitt s\nil ly</w>\nfesti ve</w>\ny d</w>\ncan al</w>\nðŁ Ĩ\nfi es</w>\ncar los</w>\nre que\npartic i\ntra ins</w>\nsam ple</w>\ntemper ature</w>\nsym ph\npic king</w>\nin door</w>\nz ers</w>\nplayo ffs</w>\n____ ____\nap es</w>\nly rics</w>\nislam ic</w>\nperforman ces</w>\nd ick</w>\nspar k\nse as</w>\nhom a</w>\ngr ound\ndisc i\nemploye e</w>\ncom mu\nalas ka</w>\nal an\nfe ast</w>\ndg ing</w>\nban king</w>\nmanu el</w>\nslow ly</w>\ntru cks</w>\nmc car\noo o</w>\nsc rat\norche stra</w>\nindivi du\nm x</w>\nbre ath</w>\nstair s</w>\nequ ality</w>\nbla ke</w>\nloc ations</w>\ncocon ut</w>\nbalti more</w>\naa a</w>\nl c\nðŁı Ĩ\nhar vey</w>\nresi st</w>\nimmigr ation</w>\nadid as</w>\nfil i\nre f</w>\nlg bt</w>\nmo s</w>\npp i</w>\nken ny</w>\nterr or\nban e</w>\napol is</w>\ns g\nsocial media</w>\nka i</w>\nhon est</w>\nas sas\nbol lywood</w>\nâĢįâĻ Ģï¸ı</w>\nferr ari</w>\nhor n</w>\ncryp to</w>\nbo om\nmainten ance</w>\ni di\ns man</w>\nw l</w>\next ended</w>\nin sul\nve s\ngo sp\ntr i</w>\npi g</w>\ntar ge\ncel er\nst ati\nsm h</w>\nri dic\nappe al</w>\n? )</w>\ncon clu\ncos me\nshe ep</w>\nchristop her</w>\nen thusi\npo lish</w>\nme ts</w>\noun ded</w>\nsustain ability</w>\ncreati vity</w>\ncon crete</w>\nra i</w>\nali en</w>\nble ss\nte es</w>\nclu b\nro t</w>\nbo s</w>\nex ist</w>\nperfe ction</w>\nlu ck\nrock y</w>\nexpen sive</w>\nmean while</w>\nhappy birthday\npre t\nthr iller</w>\nca ve</w>\nplayo ff</w>\nsom er\nl u</w>\nle x</w>\ndef ence</w>\nam writing</w>\nhome less</w>\npro phe\nch et</w>\npast or</w>\nðŁ¤ £\nland er</w>\nww w</w>\nĢ ï¸ı\ntic a</w>\n! #</w>\no tic</w>\nrad ar</w>\npo sters</w>\npow der</w>\npo li\nha un\ntra p</w>\nbl in\nassau lt</w>\nshor ts</w>\nre y\nsh y</w>\nsqu ir\nrac ist</w>\ngar lic</w>\nfu r</w>\nremo te</w>\nsm ell</w>\nimpre ssed</w>\nfing ers</w>\nâł Ģ\ndin o\nle ment</w>\ns nu\npromo ting</w>\nstr ing</w>\nproduc tive</w>\nb age</w>\nma son</w>\nra z\ndirec tly</w>\nj k</w>\nev al</w>\nðŁĳ Ĭ</w>\ndoc tors</w>\nco w</w>\nri der</w>\nst v</w>\nre move</w>\nw u\nna than</w>\nro d\nn r</w>\n= ></w>\naffe cted</w>\ninve st</w>\nmp tion</w>\ng inger</w>\no d</w>\nagricul ture</w>\ns que\nmu g</w>\ncoun ting</w>\nke e\nmag nific\ncoo k\nani stan</w>\nroo t</w>\nplac ed</w>\nsym po\ngh ana</w>\nun d</w>\nche er\nthro wing</w>\nsecre ts</w>\nf illing</w>\nopti mi\nbutter fly</w>\nbu bb\nðŁĺ ī\nterri ble</w>\nd g</w>\nsil k</w>\nobse ssed</w>\nlo u</w>\nai de</w>\nsal ute</w>\nmon u\nphiladel phia</w>\nscienti fic</w>\ni st\nu ae</w>\ndess ert</w>\nbott les</w>\ncan yon</w>\nðŁĺ Ī</w>\ncar ib\no ther\nw ich\nre source</w>\nguil ty</w>\nun d\nle on</w>\ne ss</w>\nkan e</w>\nel e</w>\ntra iner</w>\nhe im</w>\nan te</w>\nman age</w>\nroo kie</w>\ntre ated</w>\npo ses</w>\nrs vp</w>\ncau ses</w>\naw ak\nje well\nle tt</w>\non ics</w>\ntit les</w>\ncardi ff</w>\ng aga</w>\nbu mp\nuse ful</w>\n? !\nloo se</w>\nbb ing</w>\n: :</w>\nargent ina</w>\nde bu\ncy cl\nwh el\ndis gu\nj el\nk ills</w>\nbio logy</w>\nex ter\ntra sh</w>\nbo dies</w>\ntr am\ncircu it</w>\nexpe ct\nla ds</w>\nw ells</w>\nsho t\nge e\nnaren dr\nfa stest</w>\nb ent\nb ills</w>\nmar shall</w>\nh ats</w>\nintro duce</w>\nciti zen</w>\nim possible</w>\ngi b\naz z\nnet working</w>\nr ant</w>\nthin k\nin dy\nst ops</w>\nf theday</w>\nbri an\n* *\namo di</w>\ndom e</w>\ncoura ge</w>\npac king</w>\naf fairs</w>\ng n</w>\nsi zed</w>\nent ary</w>\npol and</w>\nswit zer\nafgh anistan</w>\nw u</w>\nten der</w>\nsubscri be</w>\nmo sco\natt end\nrepublic an</w>\nhon ey\nâĢ ĭ</w>\nsi mul\nwe ster\nfoo die</w>\nor o\nmidd le\nab t</w>\nco pies</w>\nma je\nnarendr amodi</w>\nty pical</w>\ninspir ational</w>\nvit am\nwis con\ncu bs</w>\ntiv ity</w>\nh ali\ne ars</w>\nk ay</w>\nd are</w>\nmari juana</w>\ncu rious</w>\nan ia</w>\ntom ato</w>\nre mind</w>\nðŁĩ ·</w>\nsc ared</w>\ncou p\npo et</w>\nland ed</w>\nri d</w>\nwra pped</w>\nmor ri\nclimb ing</w>\ne ws</w>\nfe eding</w>\ncon tra\ntho logy</w>\ngri d</w>\nti vely</w>\nread er</w>\nla ser</w>\ndi ving</w>\ndi g</w>\nlat in</w>\nti ed</w>\nshake spe\no ci\nad m\nshow ers</w>\nchu ck</w>\nmar cus</w>\noo s</w>\nkne e</w>\no live</w>\now l</w>\ndy lan</w>\nan no\ng ym\ndeci sions</w>\nwell ness</w>\narri ves</w>\nsati s\nchri s\nthur s</w>\nðŁ¤ £</w>\ninter views</w>\nthank you</w>\nswitzer land</w>\nover night</w>\njourn alist</w>\nser ves</w>\nvol can\n.... ...</w>\nplo t</w>\nnic ol\ncar rying</w>\nmag ne\ntre asure</w>\nex p\nbe ver\nðŁĺ ¢</w>\nmar ty\nmo le\ndon ations</w>\nrecogni zed</w>\nb h\ndu s</w>\nsh ann\nal do</w>\nsuccess fully</w>\nent e</w>\nðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ\ncab inet</w>\ncu is\ntit led</w>\nd as\nso l</w>\nstrate gies</w>\ndeli vering</w>\nad ds</w>\nani an</w>\nne ther\nðŁĴ ĥ\ncon tain\nsu its</w>\npa irs</w>\nto dd</w>\nrel la</w>\nro pe</w>\nci o</w>\ncro p</w>\npaint ings</w>\nsu z\nre jec\nbu st</w>\nd h</w>\nfra ud</w>\nm h\ncontro l\nje al\ndestroy ed</w>\nal lows</w>\nwo ol\nminneso ta</w>\nom en\nj u</w>\nsympo sium</w>\nd af\nlim it</w>\naccoun ts</w>\nload ing</w>\ninter n\nre solution</w>\nhol land</w>\nqu al\nmeet ings</w>\ngra ve</w>\ncam ping</w>\nv am\nre nov\nliber al</w>\nam ber</w>\ngre e\nhu mb\nfe ver</w>\nel ing</w>\nbroo ks</w>\nà ²\nbe th\nad ed</w>\nal t\nro e</w>\nperform ed</w>\njo sh\nfrank lin</w>\nnic ole</w>\nde ss</w>\nbb s</w>\nm g\nnet works</w>\nmin im\nal t</w>\nweap ons</w>\ngu y\njas on\ng ha\nharb our</w>\nat on</w>\npra ise</w>\nkentu cky</w>\nbel fast</w>\nst icks</w>\nblo ss\nho pes</w>\nan thro\nfamili ar</w>\nwa it\nch ile</w>\ndepre ssion</w>\nla x</w>\nje ts</w>\nle ice\nrecei ves</w>\nsi er\nan k</w>\nde x\ninde ed</w>\nfle xi\nfab ric</w>\nlam b</w>\nhel icop\nam anda</w>\nâĢĶ âĢĶ\ncompe te</w>\nsn ack</w>\ntechno logies</w>\nsy rian</w>\nmom s</w>\nmu ham\ncho sen</w>\nan at\ndev on</w>\nshar ks</w>\nre t</w>\nfundra iser</w>\nselfi es</w>\nst ations</w>\ncommunic ations</w>\ntennes see</w>\ntu tor\nro t\nvalu able</w>\ndynam ic</w>\nnur se</w>\ni ed</w>\nearth quake</w>\ndeser ved</w>\na ve\nsar a</w>\nstre tch</w>\ndougla s</w>\nne pal</w>\nÃ §\nob viously</w>\nd ame</w>\nra pe</w>\nany body</w>\nk w\npat rol</w>\nhol ders</w>\nh anna</w>\ninfo graphic</w>\nec o</w>\nbe ating</w>\nstan ley</w>\nbo ats</w>\nri bb\ne z\nwit ch</w>\ninv a\nac id</w>\nboar ding</w>\n- @</w>\ngi l</w>\nda ve\ncare ers</w>\nopp os\nl loy\nin ter</w>\ndo pe</w>\nre su\nj agu\nsh ade</w>\nin dy</w>\non ist</w>\nrel ations</w>\nag en\nab le\ninci dent</w>\nme ter</w>\nshar ma</w>\nid r</w>\npro ve</w>\nimmedi ately</w>\ntro ops</w>\nam an</w>\ng low</w>\ngaz a</w>\nblo cks</w>\nperson al\nchron ic\nall er\nsi d\nsh r\nwhats app</w>\nlu cy</w>\nar chae\nho u</w>\njourn alism</w>\nour selves</w>\ngo t\nthe med</w>\nshap ed</w>\nwe ak</w>\ncas ual</w>\nleng th</w>\nsla m</w>\nab bey</w>\ne v</w>\ncoun ter\nest a</w>\nreci pi\ncha pel</w>\nexpan sion</w>\nsel f\nsuff ering</w>\nsp ice</w>\nn z\nsp art\ndesp er\nboo king</w>\nquart ers</w>\ny on\nðŁĴ Ĺ\np k\ncontinu ed</w>\n- #</w>\nman hatt\ntal ked</w>\nsh en\ncom bo</w>\nhybri d</w>\nje ans</w>\nliqu id</w>\nse al</w>\nre tweets</w>\nac celer\ncollec tive</w>\nt as</w>\n: ))</w>\nprofession als</w>\nra w\no tt\nsu san</w>\nir ing</w>\nokla homa</w>\nre ven\nsurvi val</w>\ncre ator</w>\ntran sit</w>\nst ac\nsur f\ni k</w>\ned iting</w>\nch illing</w>\nbai ley</w>\nste al</w>\nra ble</w>\npa rent</w>\nhun ger</w>\nsn app\ncollec t</w>\nphilos oph\ndedic ation</w>\nc f\nc m\nle ep</w>\nrepe at</w>\nre ha\nun fortun\na er\na ero\nabstr act</w>\nmon itor</w>\nag ents</w>\nbu l</w>\nsci ence\nharb or</w>\ndrag ons</w>\nfloo ding</w>\nac compli\nd ash</w>\njuli a</w>\nthe red</w>\ntues day\ncy ber</w>\nb low</w>\nta ined</w>\nle m\nrefe rence</w>\npp o</w>\nne goti\nchar le\ncon nor</w>\nau lt</w>\naccess ories</w>\ncommissi oner</w>\nrain y</w>\nre ar</w>\nadvis ory</w>\nluc as</w>\nma id</w>\nco al\nk av\npol o</w>\nðŁı ¾\ntran sport\nmar gare\nstraw berry</w>\nbur ns</w>\ngre ens</w>\nne v\npartici pants</w>\ncol in</w>\nbelgi um</w>\ncol our\nin form\nd ell</w>\nbr on</w>\ncal y\nkick off</w>\nstrate gic</w>\nre union</w>\nhon ors</w>\nli b\negy p\nâŃĲ ï¸ı</w>\nhy po\nsi zes</w>\nregi stered</w>\nbet es</w>\nrelax ing</w>\nbloo m</w>\ninten se</w>\nvalent ines</w>\ninsan e</w>\nw wii</w>\np x</w>\ntri o</w>\nbla de</w>\nwiscon sin</w>\ncon e</w>\nplat in\nali ze</w>\nra ven\nincre asing</w>\nindi ans</w>\nil ian</w>\nbl u</w>\nrabb it</w>\nexten sion</w>\nje f\nau di</w>\nfer ry</w>\ns ell\na day</w>\nus b</w>\nswe at\ncham pag\nmetho d</w>\nmem ph\nassi st</w>\ns by</w>\nca pe\nremo ved</w>\nmag n\nv t</w>\nr ams</w>\nf bi</w>\ntack le</w>\nphe w</w>\nh on</w>\nmotor cycle</w>\nsu spec\neleph ant</w>\nsub ject</w>\nlet te</w>\nda iry</w>\nwhe at</w>\nawk ward</w>\nac t\ntro l\nmit ted</w>\nzay n</w>\nsheri ff</w>\nene my</w>\ncon s</w>\nke tt</w>\nbul ls</w>\nev alu\nbt c</w>\nsatell ite</w>\nho lo\npor ter</w>\ndia betes</w>\nbet ter\nrele asing</w>\nsur f</w>\n: -</w>\nse basti\ncollec ting</w>\nen cing</w>\ne thi\ngo ds</w>\nal ley</w>\nhealth y\nm ills</w>\nsma sh</w>\nco pper</w>\ncr ack</w>\nread ers</w>\nsp ac\nlicen se</w>\nbas ket</w>\nbang la\nen tic</w>\nom i</w>\nm ere</w>\nsi vely</w>\nanim ation</w>\nlan es</w>\ndent ally</w>\nchill in</w>\nfi e</w>\nk aren</w>\ndep th</w>\nli pse</w>\nn g\nri p\nmel o\nsand y</w>\nðŁĳı ðŁĳı\nvin cent</w>\nnu t\nhu g</w>\nwho le\ncre ates</w>\n? ???</w>\nâĿ¤ï¸ı âĿ¤ï¸ı</w>\nbak ed</w>\nup grade</w>\nrober ts</w>\nhar a</w>\ncarib bean</w>\nauth entic</w>\nmb s</w>\nmosco w</w>\nattor ney</w>\nwi ki\nch lo\nhu ll</w>\ncor k</w>\n\" !</w>\nsty lish</w>\nðŁĵ¸ :</w>\ndi ary</w>\nimpro ving</w>\nex pand\nbri ght\npollu tion</w>\nk nights</w>\nperson ality</w>\nchec ked</w>\nfac ilities</w>\nz el\nbow ling</w>\ngu er\nðŁİ Ĥ</w>\non going</w>\nun its</w>\nhoo k</w>\nbe ck</w>\nconfl ict</w>\nto dd\nfar ming</w>\neduc ational</w>\nk ak\ncla y\nstro ke</w>\nbel ly</w>\nexplo re\nmill enni\nth m</w>\nloo p</w>\nsm s</w>\nconsi st\ncir ca</w>\nbr yan</w>\nd ab\nyoun ger</w>\nsoli dar\npp a</w>\nexperi enced</w>\nb ella</w>\nbo ard\nshef field</w>\nsteph en\nconsu mer</w>\nsub mit</w>\nspon sor\nt ang\nag gre\ncomb ined</w>\ntrac king</w>\nsand ers</w>\nb az\nsurvi ve</w>\nfer red</w>\nequ al</w>\nse p</w>\nre ed</w>\nstr ong\npriv acy</w>\nst ap\nun g\nac ry\npa sta</w>\npir ates</w>\nag er</w>\nfair y</w>\ndu p</w>\nintroduc ed</w>\nwi p</w>\nlet s\nspr ay</w>\nðŁĵ º</w>\ngre w</w>\na sts</w>\npitts burgh</w>\nnew york</w>\njo ey</w>\nlau ren\ntra de\nch op\npi pe</w>\ncla ire</w>\nbehavi or</w>\nv ap\ncre ws</w>\nlap top</w>\nðŁ¤ Ĺ</w>\nche ster\ndisci pl\nd f</w>\nout doors</w>\nk s\ngo ver\nsuper star</w>\ncas ino</w>\nfar mer</w>\n; -)</w>\nre turned</w>\nðŁı Ī</w>\nma il\nroa sted</w>\nco sta</w>\nv ill\npe z</w>\ngard ening</w>\ndistribu tion</w>\nsh ining</w>\ninve stors</w>\nra sp\ndec ades</w>\nreali zed</w>\nbar n\np ti</w>\nst able</w>\nut d</w>\npan thers</w>\nm ens</w>\nb n\nca de\nbu cket</w>\nyn n</w>\nwhen ever</w>\nwa ke\nda is\nber nie</w>\nlo dge</w>\nju lie</w>\natmo sphere</w>\nðŁĺĺ ðŁĺĺ</w>\nmajor ity</w>\npar ti\nexc it\ncu t\nme h\nmusli ms</w>\nbe gun</w>\nfli ghts</w>\nvene ss</w>\nce me\npo sing</w>\nso le\ng ou\ndark ness</w>\npe ach\ncel tic</w>\nauth ority</w>\ngrand ma</w>\nful ness</w>\nsmi th\nspeci fic</w>\ngar cia</w>\nco ins</w>\ngood ness</w>\naldu b\nrecru iting</w>\nden nis</w>\ngar y\nsle eve</w>\nweap on</w>\npl z</w>\ndisco ver\nharri son</w>\nrecruit ment</w>\nja i\nch im\ncom pared</w>\ntom s</w>\nmo thers</w>\nam y\narchi ve</w>\nt ask</w>\nben jam\nse g\nlaw yer</w>\nal um</w>\ninve sting</w>\nmi e</w>\nche z</w>\nj p</w>\na ke\nfl am\nwall paper</w>\nâĻ¥ ï¸ı</w>\nt ton</w>\nche st</w>\nfavor ites</w>\nwe igh\ncoo lest</w>\nr ating</w>\nrelev ant</w>\nlo gan</w>\nma ple</w>\nrun ners</w>\npri or</w>\npeop le\nma ur\nterrori st</w>\nte sted</w>\ncarni val</w>\nsu spen\nme asure</w>\nm v\ncyber security</w>\napp ren\nterror ism</w>\no z\nv ital</w>\nni es</w>\ngon z\nfun ded</w>\ntwi st</w>\nassess ment</w>\ndie sel</w>\nen for\ncolum n</w>\nad dressing</w>\nca sts</w>\npay ment</w>\nx ton</w>\nfi er</w>\n, '</w>\nla st\nne e</w>\nun less</w>\nclo se\nsk ill</w>\ncuis ine</w>\nfun eral</w>\nti les</w>\na un\nk ru\nrelation ships</w>\nðŁĴ ¯\nev ent\nâĢįâĻĤ ï¸ı</w>\nkind ness</w>\npro posed</w>\nacou stic</w>\na es\ndefen der</w>\ndan ce\nh tt\nw at</w>\nvo y\nðŁ¤ ĺ\nau s\ncli ff</w>\nsear ching</w>\nbeauti fully</w>\nin qu\nat l</w>\nspeci alist</w>\nðŁĲ ¶</w>\nda i</w>\ntra ils</w>\nclass ics</w>\ninst ant</w>\nv ous</w>\nre venue</w>\nmar ch\nkir k\nfr inge</w>\nfire works</w>\ntri via</w>\nâĺ ħ</w>\ntr action</w>\nwal ter</w>\nmo to\nl ily</w>\natt itude</w>\ncli mb</w>\nsc an\nsav ings</w>\nc w\nfa ith\ncred its</w>\nab led</w>\ngra ff\nauto graph\nhe he</w>\nran ch</w>\nha d\nro gers</w>\nðŁĮ ¹</w>\nf in</w>\nre qu\nfol k\nad ditional</w>\nlyn n</w>\nu ber</w>\ndol lars</w>\nlo gic</w>\nwor th\nso m</w>\nthe sis</w>\np ound</w>\nbi c</w>\nst ur\ncer am\nspen cer</w>\nen tered</w>\nv amp\norgani zed</w>\nâľ Ī\npp s</w>\ntr on</w>\nmerce des</w>\nno ti\ncompet itive</w>\ndo w</w>\nous ness</w>\nvic tor</w>\ngr illed</w>\nna i</w>\npu tin</w>\nab ra\nbl ame</w>\nalex and\nanim al\ndec ent</w>\np ent\ninter ior\n:' )</w>\nbut ler</w>\nbal let</w>\nðŁĴ Ķ</w>\nalbu ms</w>\ndown s</w>\nla d</w>\nsi r\npla in</w>\np ers</w>\nblon de</w>\ndis c</w>\npaki stan\nse ment</w>\nga a</w>\nw age</w>\nch as\nman i</w>\nco ps</w>\nterr it\nlo l\nlau ghter</w>\nri vers</w>\nmagnific ent</w>\nlam p</w>\nw b\nnew sle\nchar ts</w>\nble ssing</w>\np unch</w>\nlon gest</w>\nfl oral</w>\ncu tie</w>\nfare well</w>\nsto pping</w>\nmb b</w>\nbu d</w>\nchee se\nde cla\nsi m</w>\nmc donald</w>\nde ter\nyou th\nt ch\nfre der\nkin dle</w>\nfer n\nat or\nas leep</w>\np ond</w>\nspr int</w>\np ounds</w>\nla zy</w>\ngh e\nfundra ising</w>\ndead ly</w>\ngran de</w>\ndou g</w>\nhe y\nlin da</w>\nconsi dering</w>\ni um</w>\ngol den\nvi k\nauth ors</w>\ndi ss\nu ally</w>\nappropri ate</w>\nmor ning\ny le</w>\nhon oring</w>\nfoli o</w>\nbe c</w>\nre bec\nfin land</w>\nformu la</w>\ncorn wall</w>\nsh ay\ncau sing</w>\nbl end</w>\nsig nal</w>\nt ent</w>\nkash mir</w>\nnation als</w>\nhar mony</w>\nsc out</w>\nacce ssi\nhe ight</w>\nmedi eval</w>\nimpro vement</w>\nke es</w>\nprac tical</w>\ncar d\nde par\nhu n</w>\nom ing</w>\ncal gary</w>\nste l</w>\nbu bble</w>\ngur u</w>\nma h</w>\nunex pe\nn h</w>\ned a</w>\nme at\ni ge</w>\nsi o</w>\ngod dess</w>\nin ches</w>\ntun es</w>\nbr itt\nsti on</w>\nra j</w>\nâĻ «</w>\nmer cy</w>\nðŁĴ ĺ</w>\nsen ds</w>\ni est</w>\npol ici\nval e</w>\nreduc ed</w>\nas ap</w>\nvi jay</w>\ndefen sive</w>\ncelebr ations</w>\nri ders</w>\nmed itation</w>\nhar mon\ng ing\nÂ ¡</w>\nprogram ming</w>\nin au\nsud den\nm h</w>\nreplac ement</w>\nsk u\nj ar</w>\ngra des</w>\nta st\nk itt\nbrand ing</w>\nk aw\nboo t\nf ought</w>\np ays</w>\ng f</w>\niz ation</w>\nho p\nk k</w>\nactivi st</w>\nv end\ncoast al</w>\ncha os</w>\nðŁĶ ´</w>\nse me\nbill board</w>\nli fting</w>\ncu mb\nsc al\nðŁĸ ¤</w>\nstru ck</w>\nl v\nindie dev</w>\nbeat en</w>\njun gle</w>\nal right</w>\ndestin y</w>\nm ing\nk c\nch ances</w>\nom an</w>\nq atar</w>\ncra f\ntra ined</w>\npri x</w>\nchar m</w>\no tive</w>\ns mu\ne c</w>\nand ers</w>\nhand ed</w>\nal ban\ncertain ly</w>\narri ving</w>\ni ze</w>\nsa i</w>\ntr ack\npain ter</w>\nhu mble</w>\nappo intment</w>\nhead line</w>\nmanag ing</w>\nmo d</w>\nas pe\nandre a</w>\nÃ ¤\nethi op\nun ited\nexi st\nbal i</w>\nk ad\nn t\nd red</w>\nre x</w>\nrecogni ze</w>\ntam pa</w>\nbe ers</w>\nati a</w>\nhe els</w>\nno te\ntransport ation</w>\ntur tle</w>\nre de\nhipho p</w>\nsp icy</w>\nsp urs</w>\nâ¬ ĩ\ncor p</w>\nther n\nto ast</w>\nhur ry</w>\nproper ties</w>\nma ge</w>\nmar co</w>\nele ments</w>\nbou ti\nsyn drome</w>\nms g</w>\ndevelop er</w>\ngra ders</w>\nhe im\nre sil\noff ices</w>\ndel ay</w>\ndi men\nvin tag\nbarbar a</w>\nðŁĺ ±\nvene zu\ncu lar</w>\nfac ed</w>\nbar n</w>\nðŁĺ Ĩ</w>\nsurvi vor</w>\nwor m</w>\nconfu sed</w>\npassion ate</w>\nØ ±\nidenti fy</w>\nelectr icity</w>\nsou ls</w>\nbrad ley</w>\nrepor tedly</w>\nlun ch\nshel f</w>\neli a</w>\nswee t\nsmoo th\nemplo yment</w>\nam el</w>\nmanhatt an</w>\nste am\noun ts</w>\nye p</w>\nli ving\nun e</w>\ndescri be</w>\nca res</w>\nman ila</w>\nsha wn</w>\nac ted</w>\nbas h</w>\nst even\nre st\npet ition</w>\ndiv ine</w>\nwel sh</w>\nrac e\nplatin um</w>\nðŁĮ ¸</w>\np b</w>\nextra ordinary</w>\nsolidar ity</w>\nm all\non ion</w>\nschedu led</w>\ngame of\nfer gu\nde ms</w>\nnor m\np k</w>\ntri als</w>\npolici es</w>\npubli shing</w>\nst ole</w>\nfron t\ncharac ter\nvan ia</w>\nex ce\nsti e</w>\nsc a</w>\nresi dential</w>\nsa iling</w>\nðŁĶ¥ðŁĶ¥ ðŁĶ¥</w>\nspons ors</w>\nth ick</w>\nchampag ne</w>\nshe pher\ncontinu ing</w>\nven ice</w>\nper th</w>\nna p</w>\na ster\ny ak\nun limited</w>\ncho ices</w>\nne o</w>\nhi v</w>\nrepor ter</w>\nbru ssels</w>\nf old</w>\ndy s\nse mi\nla wn</w>\nit alia</w>\nwi fi</w>\nas k\nem ed</w>\nfr ame\nmonit oring</w>\nste ad</w>\ni da\ngr in\nis a\nfli p</w>\nre stric\noffen sive</w>\natta ched</w>\ndi sh\nwh y\nphilli ps</w>\ngre et\np als</w>\nmix tape</w>\nv ou\nfiel der</w>\nspar k</w>\nalber ta</w>\ng len</w>\nca sh\ns ri\nu ri\nro dri\nentreprene urs</w>\nclimate change</w>\np sy</w>\nd le\nem ents</w>\nlin ked</w>\nnether lands</w>\nacci dentally</w>\noppos ition</w>\nvel vet</w>\nra ys</w>\nc w</w>\nom o</w>\nm f</w>\nlmfa o</w>\nnewsle tter</w>\n: )\ntoi let</w>\nliter ature</w>\ndi sp\nphili p</w>\nuni form</w>\nsudden ly</w>\nhead er</w>\ncool er</w>\n-- -</w>\nprou d\nbri g\nnis san</w>\nscienti st</w>\nj ah</w>\ncon centr\npac ks</w>\nappo inted</w>\nso ap</w>\neng age</w>\ncho se</w>\nâĻ ¡\nse tup</w>\njeal ous</w>\nhar ry\ng ation</w>\ntun nel</w>\nte mp</w>\nosc ars</w>\ndec ade</w>\nrecomm ended</w>\nchild ren\nab a</w>\nanxi ety</w>\nve ments</w>\nsal on</w>\npho too\norgani z\nmach ines</w>\nab s</w>\nvil le\nhy pe</w>\nti ff\nemer ging</w>\nav geek</w>\n[ #</w>\ncontribu tion</w>\nbra dy</w>\nre sto\ng mail</w>\nfit z\nphoto shoot</w>\nhel met</w>\nh t\neleg ant</w>\nug anda</w>\nnur sing</w>\nor leans</w>\npen n</w>\nna h</w>\nfoo tage</w>\nem a</w>\nw o</w>\nw ad\nconcer ns</w>\nve re\nre mark\nwho ever</w>\nstr ang\np t\nqu it</w>\nsh ang\nhistor y\ns ick\nperman ent</w>\nill ness</w>\ncol d\nvisi on\nhe m</w>\nar row</w>\ncon vic\npin k\noc cup\nbal d\nex hau\nu of\nam o</w>\non t</w>\nãĥ »</w>\nadop t</w>\nla id</w>\nsmo ked</w>\ninter pre\ness enti\nassoci ated</w>\nb d</w>\nbb y\nfi er\ninst all</w>\ndipl om\ncon diti\nc f</w>\nw ak\nany a</w>\ngr aci\nfi sher\ns ss</w>\nap r</w>\nil it\nmus ician</w>\nsymph ony</w>\ncor d</w>\nh ack</w>\nle gi\nl v</w>\nbless ings</w>\nhum or</w>\nsc ra\ne ti\nmin ster</w>\ntrav elling</w>\nbu sh\njewell ery</w>\nli me</w>\n!! !\npregn ant</w>\npe e</w>\nlo b\ncap ital\nip a</w>\npen cil</w>\nla bor\nduc ks</w>\nprou dly</w>\nwedd ing\ndere k</w>\nm w</w>\npe g</w>\nvalent ine\nan gu\nre treat</w>\npro spect</w>\ndang er</w>\nvul ner\nup set</w>\n, #</w>\nsr k</w>\nx im\nthur sday\nn fl\nkis ses</w>\nre ds</w>\ncr ack\nre ward</w>\nc u</w>\nko k</w>\nme te\naband oned</w>\nit t</w>\nme als</w>\nsp ell</w>\nstan bul</w>\ndel ays</w>\nru m</w>\nle op\ngu m</w>\nno va</w>\nsuper man</w>\nch ick</w>\nm is</w>\ndram atic</w>\ninno cent</w>\nr ounds</w>\nre c</w>\nauti sm</w>\nbangla desh</w>\nmor al</w>\nmo vie\nsp oo\nk la\nâĥ £\nou ting</w>\nmess i</w>\nab road</w>\nloo kin</w>\na im</w>\nq i</w>\nst ack</w>\ncolla ge</w>\nà ¯\nhud son</w>\nsc an</w>\nho e</w>\nch au\noc cur\ncomm ander</w>\nho les</w>\nðŁİ Ħ</w>\nbi as</w>\nv on\nstick er</w>\nma k\nresponsi bility</w>\ncolum bus</w>\nsa int\ned mon\nrac ism</w>\nfar ms</w>\nw en</w>\ngul f</w>\nmay o</w>\n!!!! !!!!\ncorpor ation</w>\nba chel\nel a\ninter nal</w>\nje ep</w>\nfol lows</w>\ndi alogue</w>\nde rer</w>\nsmart phone</w>\nhe len</w>\nrich mond</w>\nequ ity</w>\ns land</w>\nb g</w>\nne ar\nav i</w>\nmemph is</w>\nwe ir\ndiscu ssed</w>\nbad ge</w>\np up</w>\nmi stake</w>\nphen omen\nun ite</w>\nðŁ Ľ\nde pic\nri des</w>\nin augu\nn at</w>\nsof twitter</w>\ncomb ination</w>\ngosp el</w>\nâļ ¾\nad mission</w>\nretro gaming</w>\nðŁĲ ¾</w>\nsch u\nmb o</w>\njun ction</w>\nal arm</w>\nà ¦\ngr ac\nkh ali\nk ul\nm ale\ncap tion</w>\nwi sh\nte re\ncor ps</w>\nru bber</w>\nplay station</w>\ner in</w>\neffici ent</w>\nl or</w>\njo kes</w>\nin ary</w>\nnor man</w>\nlu is</w>\ninaugu ral</w>\nch ed\nâļ½ ï¸ı\ndi p</w>\nto e</w>\nstr at\naa c</w>\nam u\npi er</w>\nco tt</w>\ncomm and</w>\ntt en\nsn oo\ncu be</w>\nclo ses</w>\nclass ical</w>\ns word</w>\nexpre ssion</w>\nreach ing</w>\nn app\nco st\naffe ct</w>\nric o</w>\ngi f\nbrea the</w>\ntri be</w>\nor tho\nh ay</w>\nl g</w>\nfri es</w>\nn m</w>\nhi ding</w>\nrichar ds</w>\nen de\nmic ro</w>\ncapit ol</w>\ncop y\nro m\nregi me</w>\nmary land</w>\ntax i</w>\ndi al</w>\nembar ra\nun believ\nch t</w>\nv s\nelim in\no dd</w>\npen ny</w>\nsound track</w>\nl ings</w>\ntrans ition</w>\nrema ining</w>\na is</w>\nmali k</w>\n? !?</w>\nrand om\ndef end</w>\nul tra\ntru m</w>\ndanc er</w>\nst ol\ndri ve\na ver</w>\nro ast</w>\ndefin ition</w>\nse an\nexcit ement</w>\npartic ul\nsu rely</w>\nsh av\nber y</w>\ndi shes</w>\ncom m</w>\nis ol\ni am</w>\nob li\ngho st\nhugh es</w>\nchi efs</w>\nb as</w>\nconserv ative</w>\nspeci al\nfe min\nsh ri</w>\nn ancy</w>\ninte l</w>\ntu ne\nðŁĩ ª\njo el</w>\ngg le</w>\nmo to</w>\nðŁĺ Ķ</w>\nbu ck</w>\nd ag\nantic ip\nmont ana</w>\ngu id\nfro g</w>\nec raft</w>\nop e</w>\ndri ves</w>\nnu mer\nx y</w>\ncolor ful</w>\nwednesday wisdom</w>\nillu min\nbey on\ninau gur\ndeep ly</w>\npre fer</w>\nfor tune</w>\ncoo ked</w>\nti ble</w>\nâĺ ķ\nswe ater</w>\nit ter</w>\ntt y\nu i</w>\ngi e\ncom plic\n~ ~\ntax es</w>\ncu ps</w>\ndi verse</w>\nsam anth\nâłĢ âłĢ\nba king</w>\nsy mp\nwa i\nbe half</w>\nmer cur\ntravel s</w>\nðŁİī ðŁİ\nor ia</w>\neng aged</w>\njump ing</w>\nreti red</w>\nn aked</w>\np uni\nspeed way</w>\nsci ences</w>\nrehear sal</w>\non ym\ndy ou\npl ates</w>\nr ati\nkri sh\njaz z\ncar ol</w>\nra f</w>\npen alty</w>\ntim eline</w>\nru by</w>\nengine ers</w>\nra f\nbel le</w>\ndo se</w>\nche on</w>\nesc ap\nme g\nran k</w>\nor d</w>\nme gan</w>\nmer ch</w>\nec lipse</w>\nâĺº ï¸ı\nple dge</w>\nkir k</w>\nper si\nleice ster</w>\nsa k\nw k\nsaf ely</w>\nyy y</w>\nje t\npromis ed</w>\nj c</w>\nen ne</w>\nno ah</w>\nre no\nre a</w>\nðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ</w>\ntra il\nðŁĳ Ģ\nf d</w>\nsoo o</w>\nri min\nw k</w>\nà¸ ²\ni al\nx ox\nbis cu\nd ale\nfan dom</w>\nparticip ating</w>\nfla g\nprivi lege</w>\npe ach</w>\nmach ine\nbo ston\ngro ss</w>\no g\nmir acle</w>\nadop tion</w>\nu ss\nmon sters</w>\nbe ij\nclar ke</w>\npu shing</w>\npra ying</w>\nar o</w>\nd n\nell is</w>\napol lo</w>\nod ds</w>\nrefuge e</w>\nto w\nb p</w>\nðŁĩ¬ðŁĩ §</w>\nh end\napp eared</w>\nmemb ership</w>\npe an\ndu m</w>\nviol ent</w>\nv y\npotat oes</w>\naw w</w>\ngreet ings</w>\nt ts</w>\nac on</w>\nsh ane</w>\nphotograph ed</w>\ncra b</w>\ntemper atures</w>\ncu ba</w>\nc fc</w>\nwel com\nhe l</w>\nin nings</w>\nm k\nco de\nkno ck</w>\ngra ss\nswe dish</w>\np ta</w>\nick y</w>\nv at\nlin ing</w>\ns q</w>\nsa p</w>\nar c</w>\nannoun cing</w>\nsk ins</w>\ncit yof\nbr ing\nco x</w>\ngam er</w>\nit arian</w>\ni da</w>\nh d\nros se</w>\nsad ly</w>\nge o</w>\nâļ ¡ï¸ı</w>\ntag s</w>\nfa ther\nchan ge\nl ance</w>\nwhis key</w>\nadel aide</w>\nte c</w>\nstick ers</w>\nmarke t\nclass y</w>\nbad ass</w>\nflo rence</w>\nlin er</w>\nfro st</w>\nk ate\nac on\nscand al</w>\nes sex</w>\nðŁĺ ı\nvi vi\ndr ill</w>\nblo ggers</w>\nrecomm end\nd ha\nac res</w>\nro ma</w>\nbu y\ngro cer\ner ia</w>\nma har\nff er</w>\npatter ns</w>\nver i\ncom pu\nst ev\nang a</w>\nment or</w>\ndo o</w>\nit ali\ncdn poli</w>\non ly\nconduc t</w>\nelec tro\nde f</w>\nwh ale</w>\nprepar ation</w>\nbicy cle</w>\nvi ral</w>\nturn out</w>\nbra ss</w>\nqu ad\nhospit ality</w>\npack aging</w>\nden cy</w>\nceme tery</w>\nabo ard</w>\ndre aming</w>\npic ture\nt all\ninv ent\nad mi\no e</w>\ntem ps</w>\nqu an\nfun dam\npro mp\nresi dence</w>\nmu d</w>\nsour i</w>\nâĦ ¢</w>\ngraff iti</w>\ngi f</w>\nd nd</w>\ncom p</w>\ns war\npe eps</w>\npale stine</w>\ndevil s</w>\nsan g</w>\nassi stance</w>\nbi ke\nmissi ssi\ninter viewed</w>\nne phew</w>\ndru ms</w>\nv and\ngentle men</w>\nn sw</w>\ninst a</w>\nleban on</w>\nee ee\noli via</w>\nver y\nrou gh\nindustri es</w>\nm ation</w>\nðŁĺ Ĵ</w>\nbar rel</w>\nn ay\npo ps</w>\nmoder n\nill y\nare st</w>\non ents</w>\nprotec ting</w>\nv ans</w>\ne o</w>\nvi kings</w>\nrestaur ants</w>\nre ck\njac kie</w>\nandre w\nw illing</w>\nhe ath</w>\ncitiz en\ndisc rimin\nà¹ Ī</w>\nstu art</w>\nm ys</w>\nhi p\ntran sp\n\" ?</w>\nte x</w>\nsu shi</w>\nke d\ncro ssed</w>\ndist ur\npe dia</w>\nf ate</w>\nsome how</w>\nmo th</w>\nproce ssing</w>\nis s\nr in</w>\nu ts</w>\nyy c</w>\nver t</w>\nlg bt\nre id</w>\non to\narab ia</w>\nhabit at</w>\n= =\nstre ak</w>\nsimp son</w>\naddic tion</w>\nwim ble\ndeli vers</w>\nchalleng ing</w>\nðŁİ ¶\nfran ch\ne du\ns me\nai ds</w>\nhur st</w>\nth am\ntari an</w>\nremem bered</w>\npalestin ian</w>\nfe es</w>\ntru m\nsket ch\nur u</w>\nfit ting</w>\njes se</w>\nðŁĶ¥ ðŁĶ¥</w>\n---- ----\nba ch\nici a</w>\ncolo red</w>\nda h</w>\nassoci ate</w>\nint el\ns eller</w>\np u</w>\nstu ffed</w>\nac s</w>\nb s\nsh in</w>\ncooper ation</w>\ncertific ate</w>\nab u</w>\ningredi ents</w>\nre v</w>\nin ge\nel der\nchristi an\nbun dle</w>\nth ic</w>\ndir t</w>\nbeij ing</w>\ncomm it</w>\nted dy</w>\ned u</w>\nto day\ns field</w>\nw yn\nconfir ms</w>\nlo o</w>\nj v</w>\nene ss</w>\nal pha\nvir us</w>\nari um</w>\ngr ind</w>\nbri dges</w>\nintroduc tion</w>\npol ls</w>\nbac ter\nz ach</w>\ntermin al</w>\nra iders</w>\nfla vor</w>\nzom bie</w>\nvo d\nsp reading</w>\ngameof thrones</w>\neffici ency</w>\nlat ely</w>\nale m</w>\ntwee t\ncri mes</w>\ncl er\nde y</w>\ndg ed</w>\nhy un\npay ments</w>\ncir cus</w>\nðŁĺŃ ðŁĺŃ</w>\nmis souri</w>\nlu b</w>\nepiso des</w>\nc age</w>\npo s</w>\nmat ching</w>\ntumb lr</w>\nlin ed</w>\nge st\nam bi\nnar r\ning ton\nregu l\nblo wn</w>\nis le</w>\nco co\non don</w>\njoshu a</w>\ntour ing</w>\nsm a</w>\nsau sage</w>\nbest friend</w>\nbo eing</w>\ndesi re</w>\nsav age</w>\nra pper</w>\nde vo\nte ar</w>\ntake over</w>\ncow boys</w>\npo ker</w>\npar ag\npp e</w>\nh int</w>\nwe ars</w>\nse th</w>\nro les</w>\nl anc\nman ga</w>\nform at</w>\nfl yer</w>\nc ay\nmo or</w>\nba ke</w>\nspla sh</w>\nv ad\nker ala</w>\nproce eds</w>\nsil ly</w>\nreflec tion</w>\ndi str\nwi d\nsu it\nci vic</w>\nyan kees</w>\nby n</w>\nmigr ation</w>\ndi stin\nor ch\nfe mini\nquali fying</w>\ntu ri\no be\nhun dred</w>\ncra p</w>\nwan g</w>\nmathe mat\nbu re\nexpo sure</w>\nfergu son</w>\nseme ster</w>\nre serv\npl ym\na hu\nfac ial</w>\nwa x</w>\nwor ried</w>\nca b</w>\nvi o\nas a</w>\nco d</w>\nto pics</w>\np cs</w>\nhal o</w>\nrescu ed</w>\nhoriz on</w>\nar k\nâļ ª\nhol ly</w>\nel f</w>\nul ti\npu p\nquali fied</w>\nattend ance</w>\nati vely</w>\ndestro y</w>\ny c</w>\nfor th</w>\nphotoo ftheday</w>\nc ents</w>\nic eland</w>\nmeas ures</w>\nde sk\nport folio</w>\nartic les</w>\ndirec tors</w>\ndat ab\ne w\ncreep y</w>\noun ding</w>\nhon oured</w>\nmi st</w>\nj it\nmen tioned</w>\nport able</w>\niti c</w>\nd ann\nfriday feeling</w>\nam id</w>\nti ger\nscri p\nhelicop ter</w>\nhard ware</w>\nexpl or\nwork place</w>\naustri a</w>\nbeat les</w>\nber nar\nspi der\ndisc o</w>\ncul t</w>\nlim its</w>\nshor tly</w>\nfin al\nnin ja</w>\nlu ke\nle bron</w>\nwal mart</w>\no il\nvan illa</w>\nshi re\nye g</w>\nak y</w>\nc s\nbl er</w>\ncollec ted</w>\nt g</w>\nrol led</w>\nspeci als</w>\nb ff</w>\npier re</w>\nsh im\nvi er</w>\nflash back</w>\nrestor ation</w>\nindividu als</w>\npro d</w>\nfre aking</w>\ntu rer</w>\no a</w>\nre fre\nmor oc\ngre et</w>\nre yn\ncare ful</w>\nour ing</w>\nu sh\nis d</w>\ng ill</w>\nvie w\nthunder storm</w>\nb led</w>\npic nic</w>\nguar di\npi g\nar k</w>\nsyl vania</w>\nbann ed</w>\nu cl\nvi jay\nori um</w>\nav engers</w>\nbeliev es</w>\neu r</w>\nmonu ment</w>\nconcer ned</w>\nla bs</w>\nber g\na ap\nvi sh\nsing les</w>\ncan cel\nz el</w>\nar ab</w>\nru th</w>\ntoo th</w>\nar ta</w>\nsh af\nchair s</w>\nr ack</w>\ndise ases</w>\ncrow d\ncl y\nfle x</w>\nchrist ma\nartif icial</w>\ntom at\nfin e\ndra ws</w>\nadvoc ate</w>\nfran ce\nÙ Ĭ\nðŁĺ ³\nheav y\ns our</w>\ncompre hen\nno ble</w>\naa p</w>\nhin du</w>\ncor al</w>\ng ars</w>\now en</w>\nn l\nst all</w>\nyel low\nmar ina</w>\nin ver\nsuppor t\ntou gh\npromis es</w>\npi e\nmaster piece</w>\nsco re\nfor ce\nmor tg\ncrypto currency</w>\no x</w>\nr ors</w>\nrock in</w>\npro vin\nho g\nno stal\noak land</w>\npat rick\ninclu sion</w>\ntra ffic\nah med</w>\na ha\nlux ury\ncon secu\nde mon</w>\nâĸ º</w>\nb lowing</w>\nst ag\n: \"</w>\nencoura ge</w>\nben e\nsku ll</w>\ndo dge</w>\nbu ster</w>\nkin son</w>\nwit ne\ner ror</w>\nlo west</w>\nfel low\nà °\nsh re\nbl ur\nvir gin</w>\ncompos er</w>\nsli p</w>\nmor nings</w>\nga ins</w>\ntab le\ngra in</w>\nari st</w>\nbraz ilian</w>\nw we\ntu es</w>\nribb on</w>\nan ag\ndi st</w>\nsac rif\nem brace</w>\nentreprene ur\naf fili\nde o</w>\nt ali\ntouri st</w>\nfat al</w>\nì Ĭ\nautom atic</w>\nðŁĩ µ\nwe ak\nwel fare</w>\nconfir m</w>\nbenjam in</w>\nfi ghts</w>\nalleg ed</w>\nme ad\nstrugg ling</w>\npro secu\nche f\nÃ ¨\npropos al</w>\ner n</w>\nðŁĺ Ħ\ndy k</w>\non gs</w>\nhon g\nm ack</w>\nmel on</w>\non ent</w>\nru sh\nd ap\ntol er\npro pag\nc ze\ntrans lation</w>\nwal let</w>\ncott age</w>\nsa il</w>\nconstitu tion</w>\nðŁĴ Ģ</w>\nmun ici\nfav or</w>\nstorm hour</w>\ni h\nðŁĺ Į</w>\napproach ing</w>\npin ned</w>\nj ed\nniger ian</w>\nn ach\nsh at\nparticul arly</w>\nmc don\ncamer as</w>\nanni e</w>\nadmini str\nhe at\nelectr ical</w>\nchar ming</w>\ngib son</w>\nbouti que</w>\nex posed</w>\nac tor\npil low</w>\nbeach es</w>\ngenu ine</w>\nmargare t</w>\nben nett</w>\nlou isi\npos itions</w>\nel y\nshin y</w>\nten tion</w>\narchitec t</w>\nren tal</w>\nac qui\ngoo gle\nsub way</w>\nmom ent\nðŁļ ¨\nri m</w>\nmetho ds</w>\ncy cli\nnor folk</w>\nÙ Ī\nover whel\nra pid</w>\nwe ar\nhappy birthday</w>\nprogre ssive</w>\nðŁĴ ¥\nco gn\npap a</w>\nf ool</w>\nphilosoph y</w>\npol ar</w>\njim my\nwi g</w>\nðŁĴ ĭ\noper ating</w>\nreduc tion</w>\nph i</w>\nfla gs</w>\nto the\no di\na res</w>\nk oo\nk ang\nar kansas</w>\nash ton</w>\nwimble don</w>\nsci fi</w>\nattrac tive</w>\nmississi ppi</w>\nlogi sts</w>\nral ph</w>\nla bel\ngradu ates</w>\nma ha\nhome town</w>\nâľĮ ï¸ı</w>\nfoun ded</w>\non the\nli z</w>\ntrans l\nmini mum</w>\npre sti\nta m</w>\ngener ations</w>\nre bel</w>\njourn alists</w>\npar am\nmc m</w>\nacry lic</w>\ndeath s</w>\ntes la</w>\nw t</w>\nbry ant</w>\njer us\ni stanbul</w>\nmuham mad</w>\nri ley</w>\nk ris</w>\nwork shops</w>\nis o</w>\ncoun ts</w>\nstre t\nprote cted</w>\ntrin ity</w>\nman ual</w>\nr hin\nr il\npleas ant</w>\nle mon\nner d</w>\nhar der</w>\ndar ren</w>\nbur y\nra h\nbas is</w>\nmi gu\nocca sion</w>\nli sts</w>\nâĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ı</w>\ne b\nde cre\nhamp ton</w>\nìĿ ´\ntra vis</w>\ntrans form</w>\npuer to</w>\nnh l\nav oc\ntri ps</w>\nunexpe cted</w>\nve t\ndi dyou\nbar ber</w>\nst ages</w>\nm son</w>\nre presented</w>\nfor t\nl al\npp le</w>\nnic ely</w>\nignor e</w>\nqu il\nqu inn</w>\nh k</w>\ncarri er</w>\nremin ded</w>\nam ong\npass enger</w>\nel len</w>\ngue z</w>\nsc ape</w>\nmu ral</w>\nyoun gest</w>\nma sh\nd ill\nrout ine</w>\nstain less</w>\njack son\ngand hi</w>\nth al</w>\non ers</w>\nedit orial</w>\nconvers ations</w>\nsd ale</w>\nautom ation</w>\ni ke\nà¸² à¸\nðŁĩ ª</w>\nhau l</w>\nla ying</w>\nmen tions</w>\nam en</w>\nabor tion</w>\ni bi\ncoun ties</w>\nca therine</w>\nman ds</w>\njam e\nroll er</w>\nau t</w>\nn am</w>\no logical</w>\ncep tion</w>\nran king</w>\ntox ic</w>\nsn acks</w>\nvictor ian</w>\nbang kok</w>\npsycho logy</w>\nre g</w>\nang ela</w>\nrespon d</w>\nsty le\nsophi e</w>\ndak ota</w>\nachiev ed</w>\nmar ked</w>\nimper ial</w>\nin as</w>\nglo ves</w>\nsli m</w>\nconfi dent</w>\natt acked</w>\ngg er\nlon ely</w>\nvalentine sday</w>\nre b\ncraft beer</w>\norig in</w>\nzim bab\nce iling</w>\nte ens</w>\nother wise</w>\nw b</w>\nf ers</w>\nday sof\nadvis or</w>\ny ah</w>\nâĻ ª</w>\nen der</w>\nrepublic ans</w>\nav a</w>\nskir t</w>\npi pel\nchi e</w>\njan e\nja x</w>\nðŁĺ ĭ\nâľ Ĭ\nj ays</w>\nbre tt</w>\nbal o\ncru cial</w>\nd har\nas is</w>\nde au</w>\nlloy d</w>\nchat ting</w>\nâĿĦ ï¸ı</w>\nrel ay</w>\nremark able</w>\nn s\nwe t\nbris bane</w>\nðŁĶ ´\ntion ally</w>\nf k</w>\nla yer</w>\nhouse hold</w>\nconsecu tive</w>\nes is</w>\npend ant</w>\nst ir\ncrit ic\nsu gar\nphoto shop</w>\npa res</w>\narti stic</w>\ndo dgers</w>\nc un\ncra fted</w>\nam end\nbo at\nâŃĲ ï¸ı\negyp tian</w>\nsa w\ntra ge\nsmall er</w>\nox y\npa ired</w>\nnex t\ni res</w>\ntac o</w>\no y</w>\nu c</w>\nst i</w>\na erial</w>\n: //</w>\ndr o</w>\ndot com</w>\ngg ins</w>\nr pg</w>\nay e</w>\nle an\nstri ker</w>\nlo bby</w>\nprote sts</w>\npri ority</w>\ncongre ss\nam ate\ninv it\nr ington</w>\nmom my</w>\nth us</w>\nallow ing</w>\npione er</w>\nenfor cement</w>\ng ori\ntal k\ndra g</w>\ndu mb</w>\nbul let</w>\nsan ge\ner y\ntar gets</w>\nðŁĩ ¦\nhe ather</w>\nconsi der\nseaf ood</w>\nve st</w>\nris ks</w>\n% .</w>\np g\nsac red</w>\nhe ating</w>\nkick ed</w>\ntto t</w>\n. -</w>\nchan di\nco ven\npo ol\npul se</w>\ni a\nro ster</w>\nshakespe are</w>\nes a</w>\ncar go</w>\npean ut</w>\ntro op\nac tion\ntab let</w>\nhome work</w>\ncast le\nstru ction</w>\nmus icians</w>\nfree zing</w>\nbu tt\njustin bieber</w>\nj j\nbah rain</w>\nan them</w>\nau dit\ndidyou know</w>\nna vig\nguid ance</w>\nâĸ ¶\ntur f</w>\nn un\nfic ations</w>\nye men</w>\nchar ging</w>\nx c</w>\nbron cos</w>\nsu bur\np ale</w>\nbor ing</w>\namong st</w>\nfor the\nem per\nom fg</w>\np j\nexpe cting</w>\nðŁĴ «</w>\nst l</w>\nad min</w>\nexpect ations</w>\nsw an</w>\nshoo t\noooo o</w>\nmin ent</w>\nãĢ Ĳ</w>\nwall ace</w>\nstan g</w>\nsatur day\nadop ted</w>\ndou bles</w>\nhom ie</w>\nome z</w>\nd han\nvent ure</w>\nsurroun ding</w>\nfi le\nmob ility</w>\nde es</w>\nw ski</w>\nbroo ke</w>\nemb ro\nre members</w>\nkar a</w>\ntest im\nbo tan\nm tv</w>\nsacrif ice</w>\njerus alem</w>\nd l\nÂ ´</w>\nproper ly</w>\nili on</w>\nas i</w>\nleg it</w>\nco pe</w>\nm cla\nrecy cling</w>\nlar ger</w>\nðŁĴ ĵ</w>\npat ric\ngener ous</w>\nja red</w>\np f</w>\nmol ly</w>\nthom as\nju dges</w>\nh b</w>\nsor ts</w>\nbl vd</w>\no ven</w>\nenter ing</w>\nplan es</w>\nbe et\nintegr ation</w>\nboo ked</w>\nfre ed\nver n</w>\nash es</w>\nto pped</w>\nde pot</w>\nwelcom ed</w>\nren a</w>\nm ick</w>\nd and\nsee ks</w>\ngam er\nran kings</w>\nren e</w>\nmu t\nwhis ky</w>\nfire fighters</w>\ngu es</w>\nga ther</w>\ntour ney</w>\nde men\ny ang</w>\nnew ton</w>\nautom otive</w>\nback yard</w>\ndeta iled</w>\nmi st\nto bac\nfi ber</w>\nun usual</w>\ngrat itude</w>\nsp are</w>\nne ys</w>\n: *</w>\nper i\nflo ating</w>\nfin alist</w>\ndon ating</w>\ndre ss\nbro ad</w>\nbe the\neconom ics</w>\ntai wan</w>\ned wards</w>\nplu g</w>\npra iri\nval en\nbab a</w>\nf ad\nan as</w>\nhar per</w>\ndis order</w>\napp lied</w>\np att\nbi kin\nli ver</w>\ncu ri\ncarol ine</w>\nann er</w>\njuli an</w>\nwal king\nmal col\nscreen shot</w>\nco ding</w>\nskin care</w>\nactivi sts</w>\nmyster ious</w>\nex act</w>\nblo cking</w>\nmercur y</w>\nbat ter\ndu mp\nâľ Į</w>\nen se\nli sh\nridic ulous</w>\nprote sters</w>\nðŁĻ Ī\nlu st</w>\nswe at</w>\nas s\nali ke</w>\nco dy</w>\nre ments</w>\nwin ds\nas pir\nvi enna</w>\npra y\n.. .@</w>\nbo i</w>\ncand le</w>\nassi sts</w>\nte e\nder son</w>\np ony</w>\nf ence</w>\ncon spir\nâĺħ âĺħ\noo th</w>\ne pic\nba rely</w>\na unt</w>\nb am</w>\ndiamon ds</w>\nend less</w>\nscre ens</w>\ncan cer\ngr o</w>\np st</w>\npro spec\nmo sque</w>\nhelp ful</w>\nou ri\nbro ther\ngu jar\ncri sti\nine z</w>\nto wers</w>\nad dresses</w>\ngra y\nbur ton</w>\nre tweeted</w>\nðŁ¤ Ķ\nn ity</w>\ndu ck\nsuper vis\njo an</w>\nkin der\nsanc tu\npi ed</w>\nâı °</w>\nł ï¸ı</w>\nm ati\nreven ge</w>\nce ster</w>\neli fe</w>\ndesig ners</w>\nback ed</w>\nbo li\nwei ght\ncou ch</w>\nsu res</w>\ns its</w>\nshri mp</w>\nla gos</w>\nauth orities</w>\nos ity</w>\nhol ly\ncompu ting</w>\nfac tors</w>\nab e</w>\npan els</w>\nram ad\nsent ence</w>\nmissi on\nhol m</w>\nr b\nd ads</w>\nshang hai</w>\nmon ey\nshe ets</w>\nsk ate</w>\nthre w</w>\ncup cakes</w>\ninfin ite</w>\nl is</w>\npractic ing</w>\ness ay</w>\nka i\nas ci\nmo b</w>\nu gh</w>\nhol mes</w>\nre gg\nik h</w>\nmo ck</w>\ncollec tions</w>\npe p\no va</w>\nsal t\nnan dez</w>\nco y\nthre ats</w>\ntex ts</w>\ncin nam\npregn ancy</w>\npen ding</w>\nstam p</w>\nflow er\ng is</w>\nagre ed</w>\npay ne</w>\nro ver</w>\nph ra\nsof t\nf fin\nfa thers</w>\npass engers</w>\naw ays</w>\nal a\nh es</w>\nli van</w>\nin s\nsamu el</w>\ningu i\nh of</w>\nj j</w>\nchen nai</w>\ncat al\nom ic</w>\nhe ath\nni ece</w>\npump ed</w>\nintegr ated</w>\nare l</w>\nno m</w>\nproduc tivity</w>\nwan ting</w>\nvis a</w>\ndi ana</w>\ntw il\nit v</w>\ncam ps</w>\nro wing</w>\nd ley</w>\nblack and\ngu ards</w>\nb ells</w>\nre verse</w>\nvi be</w>\nric ky</w>\nmo ss</w>\nny t</w>\nâĺ Ģï¸ı\nel le\ntro y</w>\ncu dd\nev an\nwomen s\nfo to</w>\nmi stakes</w>\nwick ed</w>\nmi l</w>\nc led</w>\nme mes</w>\nco smo\nschol ar</w>\nren o</w>\nðŁĺ Ģ\nv ents</w>\n# âĢ¦</w>\nterrori sts</w>\nca sey</w>\ncardin als</w>\nðŁĺĬ ðŁĺĬ\nvenezu ela</w>\nbol a</w>\nliter acy</w>\nt w</w>\nen o</w>\ncon tains</w>\nau stin\nfin anci\nev an</w>\nhar vard</w>\norigin ally</w>\nchev ro\nher ald</w>\nnott ingham</w>\nmanag ers</w>\nâŀ ¡</w>\naccep ting</w>\nwal sh</w>\ntutor ial</w>\nentrepreneur ship</w>\nyach t</w>\nrequi rements</w>\nglen n</w>\npe de\nunfortun ately</w>\nach ing</w>\ndais y</w>\ngi an</w>\nnight mare</w>\nâĿ Ĺ\nr ina</w>\nb art</w>\nema ils</w>\noppo site</w>\nwho m</w>\nsa ke</w>\npu zzle</w>\nda shi\npar ty\nblan ket</w>\nbus es</w>\nlo re\nbeau ty\nreas on\npun jab</w>\nwinds or</w>\nfunc tional</w>\nexi sting</w>\nhel lo\ngli mp\ncon vin\nla k\nscre aming</w>\nrebec ca</w>\nbli ss</w>\nnorth west</w>\ninfin ity</w>\ncosme tics</w>\npul ling</w>\ncoffe e\npl ing</w>\nop ho\ncolom bia</w>\ninterior design</w>\n( +</w>\nemo tions</w>\nsa c</w>\nsun glasses</w>\nsav es</w>\nd f\nsix th</w>\nal y</w>\nðŁĺ »</w>\nde en</w>\ndev ast\npolit icians</w>\nlac rosse</w>\ng u</w>\npe i</w>\njav a</w>\ncomb ine</w>\ncoal ition</w>\ner ts</w>\nsurvi v\nch ad</w>\nstri an</w>\nn n</w>\nde vi\ncoun c\nconcer n</w>\ncontro ller</w>\nbre ast\nj ury</w>\ntu m\nintroduc es</w>\nla di\nmobi le\nal z\nste ady</w>\nnur ses</w>\nh acking</w>\non line\noce an\nðŁİ Ħ\na am\nju ven\nic c</w>\nlouisi ana</w>\nar te</w>\nstreet art</w>\nis on\nwn s</w>\nfr m</w>\np anda</w>\nno ir</w>\nmain tain</w>\ndel ay\nsymp toms</w>\nthor n\nge ome\nter n</w>\ncarri ed</w>\np ru\npan or\nas sy</w>\nper u</w>\nclou d\nsp ra\npe di\ne ste\ntag ged</w>\nðŁĺ Ŀ</w>\nshado ws</w>\nnaz i</w>\nØ§Ù Ħ\ncor ri\nâĻ¥ âĻ¥\nj ad\nðŁĩ «\nform al</w>\nspo ken</w>\nðŁĮ ŀ</w>\nenjo y\nlo pez</w>\nout look</w>\nin ho</w>\nw ander\nÙ ħ\nma ya</w>\npe e\nd ine</w>\nãĢ ĳ</w>\nbrief ing</w>\nsuppor ter</w>\nar ily</w>\nght ers</w>\nnatur ally</w>\ndoctor who</w>\nj en</w>\nv ar</w>\nnew year</w>\nre se\nsi mm\nre x\ncon sequ\ntomat oes</w>\nbur st</w>\nbra vo</w>\nbur gers</w>\ncr acking</w>\nnor theast</w>\nbi om\nmush room</w>\nmar que\ndou ble\nni er</w>\nv ag\ntw enty</w>\nkey board</w>\nwin ni\njama ica</w>\npar ish</w>\n: -\nmental health</w>\nali zing</w>\nren der</w>\nwa king</w>\nðŁİ Ĥ\ng ly\nna than\nwa shing</w>\nmel issa</w>\njun g</w>\nloy al</w>\nchil i</w>\nsong writer</w>\nguit arist</w>\nbo wie</w>\nneighb ors</w>\nonym ous</w>\nas set</w>\nta i</w>\nhead quarters</w>\nðŁĮ Ī</w>\ni hear\nci gare\nsur g\n) \"</w>\nre pl\ndar ling</w>\nðŁĻ Ħ</w>\nz ak\nsa re\nãħ ĭ\nmic key</w>\nware house</w>\nmass age</w>\nine es</w>\ndid nt</w>\ni w\nhur ts</w>\neng aging</w>\nmag ic\nwomen in\nk itten</w>\nmor s</w>\nc art</w>\ntit ans</w>\ncolle ague</w>\ncompe ting</w>\ner an</w>\nk hal\nmar ble</w>\ndem and\ndel ight</w>\net ary</w>\nbli zz\nlou ise</w>\nm ls</w>\nfini shes</w>\nexperim ent</w>\nconduc ted</w>\nelectr onics</w>\nitt ers</w>\ncar ing</w>\nwh ats</w>\nsym bol</w>\njun g\ne cu\npi x</w>\ncon text</w>\nchar ger</w>\nðŁĺ ĩ</w>\nre ig\nfra g\në ĭ\nch ad\ntru e\nker ry</w>\ndef ending</w>\na int</w>\nau ton\ncheck out</w>\nbar nes</w>\nless ly</w>\nd t\nm me</w>\nclou dy</w>\nsecond ary</w>\nare z</w>\n_ :</w>\napp a</w>\nconst ant</w>\n\" )</w>\nve ts</w>\njo b\ni ent</w>\nðŁĺŃðŁĺŃ ðŁĺŃ</w>\nm j\nfren ch\ndi ver\ndavi es</w>\nhh hh</w>\ne book</w>\nà¹ ī</w>\nmar iti\nbree ze</w>\nsusp ended</w>\nmat o\nvi et</w>\nra hu\nse i\nbol t</w>\nen ary</w>\nle is\nkar l</w>\nfr amed</w>\nexpla ining</w>\nab c\nde aling</w>\nnat o</w>\nja ke\nexp and</w>\nleon ard</w>\nestabli shed</w>\ndu b</w>\nar men\nel led</w>\nvoc al</w>\nnichol as</w>\nori ent\nk yo\nillustr ated</w>\nah h</w>\ndanc ers</w>\nmilli on\nge ta\npo pp\nas u\nmur dered</w>\ngi ble</w>\nsto ked</w>\ngri ffin</w>\nmaxi mum</w>\nadri an</w>\nen counter</w>\nther o\ndavid son</w>\nðŁį »</w>\nholi day\nev o</w>\nasse ts</w>\ncar son</w>\nmemor able</w>\nâļ ½</w>\nob am\nrepresent ative</w>\ncb d</w>\ntr icks</w>\nvo gue</w>\nvo ice\nmm mm</w>\nsebasti an</w>\ncli f\nath y</w>\npar alle\nðŁ¤ ·\npa k\nev acu\ne ats</w>\nØ§ Ø\ntou ched</w>\norgan ised</w>\nspir its</w>\ncan ad\ngui ded</w>\nframe work</w>\nðŁĮ Ł\npe d\nnatur al\nag ar\nreplac ed</w>\nanch or</w>\nti t</w>\nsha h\norgan is\nsuper ior</w>\nr n\nch ro\neric a</w>\nst ill\ncor on\nchu ck\nloc ks</w>\nor gan</w>\nro sen\nsc am</w>\nben ed\n/ #</w>\nke en</w>\ntre vor</w>\nvamp ire</w>\nsor ted</w>\n! '</w>\naf ford</w>\nin tro</w>\ngr ace\nðŁĺ ľ\nsau r</w>\nkick starter</w>\ninflu en\nv u</w>\ny up</w>\npo c\nðŁİ ¥</w>\na ar</w>\ns ang\ntre k\net sy\ntb h</w>\nscre am</w>\nchevro let</w>\npix el</w>\nshepher d</w>\nan or\ngabri el</w>\ntw ood</w>\nsd cc</w>\nme ters</w>\ndevelop ers</w>\nclo sure</w>\nv w</w>\ntwit ch\nì Ĺ\nse oul</w>\npr ice\nho g</w>\nn ish</w>\nhill ary\nscrat ch</w>\nin cen\nwag on</w>\ndis ability</w>\npan ther</w>\nch ats</w>\ng d\nwit z</w>\nsus sex</w>\nl ate\nden mark</w>\nger ald</w>\ncancel led</w>\nnet te</w>\ni x\nnav al</w>\nbap tist</w>\nte t</w>\ny ad\nma th\nho y</w>\nr andy</w>\npo int\nintel lec\nfru its</w>\nw ool</w>\ngu in\npr on\nthe ft</w>\ncon dem\nmar ry</w>\nn ola</w>\narchitec ts</w>\ncin cin\nroc kets</w>\ngentle man</w>\nex plan\nt ate</w>\ndo e</w>\nra ises</w>\nwild life\nw l\ninsi der</w>\nblan c</w>\nw p</w>\nfor sale</w>\nny c\npo well</w>\nunbeliev able</w>\npen s\ngoo dies</w>\nmu stang</w>\np ens</w>\nst ays</w>\nsqu ash</w>\nxox o</w>\nnear by</w>\never ton</w>\nco co</w>\nle agu\nk han\nstu d</w>\nsouth west</w>\ncon struc\ns worth</w>\ncro atia</w>\nle a</w>\nsu ms</w>\naim s</w>\ne an</w>\nvan ess\niti ous</w>\npa thy</w>\narc ade</w>\nb end</w>\nsugge sts</w>\nsac ram\nroy als</w>\nri er</w>\nem ir\nin cl</w>\nan k\nclar k\nri ght\nvac c\nà¤ ¾</w>\ntan e\nli b</w>\nu sc\nsal es\nhu h</w>\ns ally</w>\nver a</w>\np ga</w>\ngro ws</w>\ndru m\ntre e\neth ics</w>\nsug gest</w>\nis ab\nse aled</w>\npre viously</w>\nanim ated</w>\nab du\nri ses</w>\nglo b\npre dat\nscar f</w>\ndel ic\nom ar</w>\nll i</w>\nsx sw</w>\npy thon</w>\nne bra\nfun k</w>\nreflec t</w>\npav ilion</w>\ntic ally</w>\nch asing</w>\nbak ery</w>\ninva sion</w>\nko h\nbeliev ed</w>\nco hen</w>\ncon qu\ncra fts</w>\nnat i</w>\ncle ver</w>\ngovern ance</w>\nsam ples</w>\nfa ils</w>\nâ Ķ\nti mo\nr itu\nstri king</w>\ninclu sive</w>\nsho cking</w>\ncan t\nrequi res</w>\ndra wings</w>\nà¸ Ń\npurch ased</w>\ndu m\nz ach\nwar ner</w>\ncon sole</w>\nman sion</w>\nfoun tain</w>\ncircu m\ne sh</w>\nis land\nmil k\npro fits</w>\nhali fax</w>\nri val\nâľĪ ï¸ı</w>\njen ny</w>\nsand ra</w>\nny e</w>\nk elly\ny al</w>\nqu ad</w>\nno s</w>\ninste in</w>\nfin alists</w>\nmid fielder</w>\ncu e</w>\nexcep tional</w>\na an</w>\nsa pp\ngett in</w>\nsa a</w>\nf ati\nsl ice</w>\nvol k\ns wal\nla sting</w>\nsum mary</w>\nit as</w>\nsm o</w>\ns z\nâĺ Ĩ</w>\nip l</w>\nfl ames</w>\nene ws</w>\nha v\nhoo die</w>\npitch er</w>\nwin dy</w>\nre vol\ncentr al\nton ite</w>\nðŁİī ðŁİī</w>\nsol ved</w>\nmil wau\norganiz ations</w>\nwee ts</w>\nre fin\ns th\nãĥ ¼\nel in</w>\nton a</w>\ncinnam on</w>\nðŁİ ¨</w>\nðŁİ ģ</w>\nron aldo</w>\npen insu\nome ga</w>\nel ds</w>\ndesig ning</w>\ne igh\nblu et\nben z</w>\nnu g\nash a</w>\nrobo ts</w>\nsu dan</w>\nchoo sing</w>\nen do\nser ge\nclo sely</w>\nhand y</w>\nfing er\nbe ing\nar te\nsurvi ved</w>\nfl ame</w>\nmile stone</w>\ngu t</w>\nd war\nfu tures</w>\nÃ© e</w>\nel o</w>\nfri dge</w>\neli c</w>\nou ch</w>\nu b</w>\np v</w>\ntit an\ncol lar</w>\nst ation\nnev ada</w>\naur ora</w>\nr d\ndun can</w>\nâģ ł</w>\nbri en</w>\nmar sh</w>\nÐ ¾\nto tal\nch ry\ns ers</w>\nsu ffe\nra chel\ncolle ge\nto days</w>\ncour ts</w>\nch it\nre united</w>\ngym na\ngen esis</w>\nbe side</w>\nre presentation</w>\nch ant</w>\ncollec tor</w>\nra k\nath ens</w>\nni gh\nmun ich</w>\nlangu ages</w>\nfl u</w>\nparticip ation</w>\n__ _</w>\nc v\nspec trum</w>\nso da</w>\nco ver\nrefe ren\nab bo\nap a</w>\npublic ation</w>\ned m</w>\nmon ica</w>\nar my\nðŁļ Ģ</w>\ndiv or\ndr y\nstre ams</w>\nrobo tics</w>\nci der</w>\nbull ying</w>\nappro val</w>\nsto ke</w>\nplat forms</w>\nsier ra</w>\nex tin\ni b</w>\nha yes</w>\nsucce ed</w>\nsuff er</w>\nat ically</w>\nda i\nlyn ch</w>\nh ound</w>\ndel ines</w>\nack now\nd ated</w>\nexclu sively</w>\nhe res</w>\nfac ilit\ndam aged</w>\nchar ter</w>\nla kers</w>\nfal con</w>\nunve iled</w>\nwel ove\ne ase</w>\npati ence</w>\nl one</w>\ngent le</w>\ngene tic</w>\nproduc ing</w>\ng our\nshann on</w>\nbil ities</w>\nzimbab we</w>\np int</w>\ndau ghters</w>\nliter ary</w>\nbel le\ncl am\nsurroun ded</w>\nk any\nne il\npir ate</w>\nrang er</w>\nhb d</w>\nnat alie</w>\nbel ong</w>\nolym pi\nemb assy</w>\nsc ol\nen er</w>\nak in</w>\nlo ren\nb h</w>\n: /</w>\ndi va</w>\nden im</w>\nhi pp\nðŁĩµ ðŁĩ\narn old</w>\n? '</w>\nwe ren</w>\nem power\ndis abled</w>\nman or</w>\nrasp berry</w>\nb af\naw ful</w>\ndru mmer</w>\nkar dashi\nn ash</w>\nmachine learning</w>\nch u</w>\nrebel s</w>\ntim ing</w>\nmon roe</w>\nton gue</w>\nran ge\npup ils</w>\nre ss</w>\namaz on\nb z</w>\nhar ley</w>\npal mer</w>\nballo on</w>\ns ings</w>\nic ec\nj b</w>\nc ers</w>\ng ps</w>\nwhi st\nri se\nl t\noo oo</w>\nc attle</w>\nshoo ter</w>\nvod ka</w>\nuc l</w>\nmt g</w>\nle sli\njon as</w>\ndi spo\nat ric</w>\nste in\nvintag e\nfir ms</w>\nflo yd</w>\ncow boy</w>\nsoo oo</w>\nis aac</w>\nwar craft</w>\ndisney land</w>\nbeauti ful\nbe am</w>\nfranch ise</w>\nbu n</w>\nk ag\nan on</w>\ntur bo</w>\nswee p</w>\nmade in\nkar achi</w>\ndete ctive</w>\npenn sylvania</w>\ncontro versi\nvitam in</w>\na side</w>\nchron ic</w>\ndescri bes</w>\nremo val</w>\nha h</w>\nap er\nten ed</w>\nu to</w>\nbad ly</w>\nmir ac\nf ry</w>\nye a</w>\nin jec\nther mal</w>\ncomp act</w>\nth or</w>\nte ed</w>\nur gent</w>\nl ite</w>\ng illi\nsop hom\nic o\nche m</w>\np m\nfor k</w>\nfre ak</w>\nch ak\nrecipi ent</w>\ni y\nni k</w>\nmodel ing</w>\nc ans</w>\nðŁı Ģ\ndel ux\nse am\nsurviv ors</w>\nrad ical</w>\ninvestig ating</w>\nreli able</w>\nf m\ntur t\nligh thouse</w>\nto ol\ngo wn</w>\n) )\nbo ts</w>\nauto graph</w>\na id\nbu ffe\nh mm</w>\nhorri ble</w>\nssi onal</w>\nann i</w>\nà¹ Ģ\nk its</w>\nsch i\neter nal</w>\nhu ss\nsens itive</w>\nr u</w>\ntast es</w>\nchec ks</w>\nim o</w>\npor tion</w>\nsk ate\ne den</w>\nhalf time</w>\nfri ed\nri hanna</w>\nti se</w>\nfl ick\nca in</w>\ns gt</w>\nâľ Ķ</w>\nsh au\nsta ined</w>\nra ffle</w>\ndro ve</w>\nsal man\nprinci ples</w>\nsh o</w>\nar u\nje ss</w>\ngu ine\ngar bage</w>\nmy an\njel ly</w>\ndis ru\nz ia</w>\nq ld</w>\nent ries</w>\nla v\nfle w</w>\nad mit</w>\nobjec ts</w>\ncomp are</w>\nny times</w>\ncann es</w>\np n</w>\nsuff ol\nro c</w>\nd ana</w>\ne gg\nhi st</w>\ncoun sel\n' !</w>\nphy si\nimag ination</w>\nad just\nexplo sion</w>\nplym outh</w>\nhor ror\nelli ott</w>\nbour ne\nde x</w>\nbre ed</w>\nau dio\nlob ster</w>\ndisappo inted</w>\nnation wide</w>\n( (</w>\nincre ases</w>\naustr ali\nce dar</w>\nstar ing</w>\nrac ial</w>\ne is\ng mt</w>\nvisi ons</w>\nstay ed</w>\ndiscu ssions</w>\nde an\ncur tis</w>\nmai den</w>\nstel lar</w>\nhapp iest</w>\nh wy</w>\npre season</w>\ncar av\nmon days</w>\nhospit als</w>\nglimp se</w>\nschol ars</w>\nja i</w>\nter race</w>\nann a\ngoo se</w>\ngra ded</w>\nlot us</w>\nhun g</w>\ngrocer y</w>\nstam ps</w>\nemper or</w>\nsc oop</w>\nin ser\nc as</w>\nexist ence</w>\nhe al</w>\nfal cons</w>\nmar vel\nreduc ing</w>\nterri fic</w>\nmagne tic</w>\nperfor ms</w>\nbar re\np us</w>\ntre ating</w>\nic on\nw h</w>\ndecla red</w>\ntra uma</w>\ndo d\ncome dian</w>\nnik on</w>\nbu gs</w>\nas m</w>\nmont gom\nibi za</w>\ncomprehen sive</w>\nha s\nsan ti\nfellow ship</w>\nda sh\np sal\nlouis ville</w>\nsp y\nfau lt</w>\nd the\nfi led</w>\nvi sta</w>\nde sc\nfe ars</w>\nyou tu\nsp s</w>\nes p</w>\nri g</w>\ncri me\nber ger</w>\nwonder land</w>\nk ent\nin formed</w>\nstev ens</w>\nmy th</w>\nast on</w>\nir i</w>\nvisit or</w>\nat ri\nproduc ers</w>\nal la\nperson ally</w>\nsepar ate</w>\nagen cies</w>\naf ri\nil an\nspo ke\nn ina</w>\nsqu ad\ndi ves</w>\nde pend\nli v\nfier ce</w>\nenter taining</w>\ncha in\nsc at\nbor ders</w>\npal ette</w>\nsp ro\nos is</w>\nder by\ntobac co</w>\nzi o</w>\nwilli e</w>\nju vent\nzoo m</w>\nhol y\nenti rely</w>\naf e</w>\nmart inez</w>\nbe ds</w>\npe a</w>\nbull dogs</w>\nðŁĩª ðŁĩ\nib m</w>\nne on</w>\nethiop ia</w>\nteam mates</w>\nplan ting</w>\ntw er\nany time</w>\nfor bes</w>\nÃ³ n</w>\nrun way</w>\nner vous</w>\nro ger\np ile</w>\nch anc\napo caly\nu w\no i</w>\ndr ought</w>\nterrit ory</w>\nbr ick\ncre atures</w>\ngo in</w>\nw aff\ngre n\nsou theast</w>\nje an\nam bul\ned ited</w>\nstra p</w>\nc v</w>\naar on\nãĥ» ãĥ»\nt su\ndescri ption</w>\nkin dly</w>\nclu tch</w>\nim mer\nen or\nwomen sday</w>\nor ange\nra g\nob vious</w>\nhy der\nchann els</w>\nman go</w>\nme yer</w>\nra ining</w>\nge tty</w>\npil gri\ncoordin ator</w>\nup load</w>\nninten do\ndon uts</w>\nsan chez</w>\napp arel</w>\nj r\nzz i</w>\n, @</w>\njeff erson</w>\naccessi ble</w>\ngreat ly</w>\ne id</w>\niniti al</w>\nbudd ha</w>\npar is\nma scot</w>\nâ¬ĩ ï¸ı</w>\nsch war\nsi ri\nsp inning</w>\nmortg age</w>\ne cho</w>\nend ange\nge dly</w>\nchlo e</w>\nenh ance</w>\nkar nat\nk ry\nexplo res</w>\nðŁĴ ģ\naf fair</w>\nic als</w>\nall a</w>\ndar t\ndolph ins</w>\ndiffe rences</w>\nsquir rel</w>\nau gh</w>\ndr ones</w>\nell en\nre store</w>\npa w\nun for\npi ke</w>\nhil ton</w>\ncolla b</w>\nconsu mers</w>\nco inci\nout comes</w>\npp p</w>\na q\ncoup on</w>\nli est</w>\nsi ms</w>\nk ho\nav es</w>\nspo on</w>\npu dding</w>\ncor byn</w>\nhat ers</w>\nex ams</w>\nsla ve</w>\n. !</w>\np sa</w>\napp les</w>\ntam il</w>\nse d\nco ke</w>\nzz o</w>\nlo sange\ncar bon\ncla ir</w>\n... )</w>\nk hu\ncra ig\nexplor ation</w>\nsanctu ary</w>\nsu e\nal way\ndemen tia</w>\nwon ders</w>\nsuper hero</w>\npakistan i</w>\nbrown s</w>\nbluet ooth</w>\nlo cker</w>\nmar c\nev entu\ndelux e</w>\nrodri guez</w>\nâĿ¤ âĿ¤</w>\nro bb\nðŁĴ ¦</w>\nlin ux</w>\nten s</w>\nintellig ent</w>\nse ed\nvo ter</w>\ns ler</w>\npe aks</w>\ninter n</w>\nteen age</w>\npeninsu la</w>\nhand ling</w>\nti e\ncou sins</w>\nwen dy</w>\nme e</w>\nà¹Ģ à¸\ndin o</w>\nðŁĴ °</w>\nðŁĺ ĥ\nze e</w>\ns bury</w>\ntrage dy</w>\nb k</w>\nbo re\nz in\nwar ns</w>\nidi ot</w>\ntou ching</w>\ncontin ental</w>\ntac os</w>\nsaf ari</w>\nwa shed</w>\npo dium</w>\nmorri son</w>\nfore sts</w>\nc bc\nal on\npartic ular</w>\nbe ads</w>\ninv ented</w>\nlo ch</w>\nli ghter</w>\nwhere ver</w>\ni de</w>\ndocu ments</w>\na we</w>\nk r</w>\nno where</w>\nmin er\nst it\nro x\ncontribu te</w>\nhar dy</w>\ncl an</w>\nob ject</w>\nca it\nðŁĴķ ðŁĴķ</w>\nhapp ier</w>\nvege tables</w>\nt art</w>\ng ag\nnom inee</w>\nheav ily</w>\npan ic</w>\nj d</w>\nthere sa</w>\nat m</w>\nu ph\ns fc</w>\nsu ri\ndrin k\nn al\nre vel\nk l</w>\navoc ado</w>\nnom ination</w>\nma donna</w>\nshar on</w>\nmalcol m</w>\ncontrol led</w>\nsh ers</w>\nrevi val</w>\nlegis lation</w>\nshoo ts</w>\nn in</w>\ncomm entary</w>\npro s</w>\nhuman rights</w>\nstr anger</w>\nmit ch</w>\npipel ine</w>\nleg ally</w>\nth u</w>\ngil bert</w>\ntol l</w>\ngran ted</w>\ngh s</w>\nir anian</w>\nrefre shing</w>\ndu k</w>\nab i</w>\npri me\njose ph\nmo sa\nstati stics</w>\nproduc tions</w>\nmer ry\npat el</w>\nsa x\nhuman itarian</w>\nstruc tures</w>\ne missions</w>\ntown s</w>\nfre el\nster ing</w>\nrat ings</w>\nalle gedly</w>\ncab in</w>\nst l\nw ade</w>\nfl yers</w>\ntri m</w>\npromis ing</w>\nz u</w>\nbal lot</w>\ncompar ison</w>\nfree ze</w>\nou ter</w>\ngreat ness</w>\nas sign\nsnow y</w>\nr ale\ntor ies</w>\nmed iter\nkno ck\nconsult ant</w>\ncincin nati</w>\nanaly st</w>\nsc oo\nje ws</w>\nappro xim\npu re\nportra its</w>\ncy rus</w>\nation al\nlo ans</w>\nacqu is\nel u\naccep table</w>\nuni on\nwater color</w>\nru st</w>\nbatt les</w>\nper fu\nseas onal</w>\nser ial</w>\nmind set</w>\nri ot</w>\nfel d</w>\nenni al</w>\nclo set</w>\npri est</w>\ntan ks</w>\nint l</w>\nscre w</w>\nbu m</w>\nab dul\nou x</w>\nexpla ined</w>\nric a</w>\nimag ing</w>\nlaw yers</w>\nbu ried</w>\nãĥ»ãĥ» ãĥ»</w>\near l</w>\nâĢ ķ</w>\nl ton</w>\nresto red</w>\nstri pes</w>\nfo ss\nde mands</w>\nste aling</w>\nalex is</w>\nmun d</w>\nak er\nur us</w>\nwar dro\nhu gs</w>\ngen re</w>\ne go</w>\nÙ Ħ\nparticip ated</w>\nbab es</w>\nban quet</w>\nti ous</w>\nhe mi\nds b</w>\nlo st\nmilwau kee</w>\njen ner</w>\nge m\nou tra\nlo ses</w>\nid i</w>\nre ps</w>\nðŁİ §</w>\nregu lation</w>\nfla w\nf ang\nvibr ant</w>\nram p</w>\nra ins</w>\nwell being</w>\nso viet</w>\nvie wers</w>\nde po\nlibr aries</w>\nbi go\nser y</w>\ng ill\nde struction</w>\nco z</w>\nc x</w>\nbri dal</w>\nal ds</w>\nplan ted</w>\namate ur</w>\nlu d\nche ering</w>\nshow cas\npro file\ni u\nver tical</w>\npack ers</w>\nwiz ard</w>\nski p</w>\ns light</w>\nbe au</w>\nair ways</w>\nmu ch\nre ra</w>\nðŁĮ Ĭ</w>\nab sor\npati o</w>\npack ages</w>\ns ells</w>\nment ally</w>\nðŁĺ ¢\nreyn olds</w>\nk are\ntri bun\nwal t</w>\nkn it</w>\nta ste\nsur rey</w>\nboun ce</w>\ncre ature</w>\nb are</w>\nbet ting</w>\nsu re\nmi ley</w>\nlaugh s</w>\nal ore</w>\ncy n\nt l\narti st\nann ah</w>\nwar mer</w>\ndynam ics</w>\nlunch time</w>\nmariti me</w>\nvulner able</w>\nðŁĴ ĥ</w>\nwol ver\ndur ham</w>\nconst antly</w>\nam in\nsi bl\n: @</w>\nbul let\nk ach\nangel o</w>\nwil der\ndoo m</w>\ndesk top</w>\nlaw suit</w>\nk ca</w>\nhen derson</w>\ninv iting</w>\nbet ty</w>\nta wards</w>\nra fa\nle aked</w>\nand i</w>\nge ms</w>\naf l</w>\nvel o\nmediter ran\npro be</w>\nto tten\nsteph anie</w>\nsn ation</w>\ncom be</w>\nq s</w>\nover come</w>\nassas sin\nra v\nfil ip\nwinni peg</w>\nsh il\ndetermin ed</w>\nk as</w>\nou tre\nregre t</w>\ngui des</w>\naa a\nðŁĺ Ī\nwi ves</w>\nmani fe\ner ly</w>\nsm y\nsh ima</w>\nx ing</w>\npix el\njac ob\nac commod\nto y\non o</w>\npo o</w>\nti er\nan swe\nðŁĴ ģ</w>\nro sa</w>\nle ase</w>\nbel ongs</w>\nth ar\neventu ally</w>\nnei ther</w>\ngo a</w>\nski ing</w>\nat ra</w>\nag h</w>\nbroad casting</w>\nf ury</w>\npy ram\nd ice</w>\nvolk swag\nwom ens</w>\nprovi der</w>\nbom bs</w>\nmiss ile</w>\nwhi p</w>\nd ick\nnor we\nback up</w>\nel der</w>\nmat ure</w>\nconcer ts</w>\ngi ous</w>\nsque e\ngood morning</w>\nbra ves</w>\n^ _\nau ssie</w>\nlun a</w>\nmal es</w>\nhe ck</w>\nfor tn\nrome o</w>\nsteel ers</w>\np n\npe er</w>\nre presents</w>\nÂ «</w>\nkat y</w>\nmigu el</w>\nrequ ire</w>\ncha ins</w>\nl ur\nimmedi ate</w>\nti mber\nâĸ¶ ï¸ı</w>\nadvoc acy</w>\nex port</w>\nan z\ntiff any</w>\nauth or\nðŁİ Ī</w>\ndu des</w>\nchil ly</w>\nhi d</w>\nhar m</w>\nbu g\nmon ster\nterri er</w>\ntu c\nstory telling</w>\nta k</w>\nin ti\nimmigr ants</w>\nb is</w>\nreach es</w>\ncom passion</w>\njohn ny\ncontribu tions</w>\nðŁĲ ¶\nmechan ical</w>\nimpre ssion</w>\nran ks</w>\nko be</w>\nmen ting</w>\nbloss om</w>\npab lo</w>\nbuil der</w>\nbom bing</w>\ntw el\nsul livan</w>\nom o\npe te\nde mi</w>\nku dos</w>\nw bb</w>\nt gif</w>\nmass ach\nneighb or</w>\nche fs</w>\neng ines</w>\npun e</w>\nga ined</w>\nphan tom</w>\ns days</w>\next end</w>\ngr an</w>\ncent ers</w>\njac qu\ndat asci\nsleep y</w>\nel vis</w>\nanswe red</w>\ns lot</w>\ncon y</w>\nflexi ble</w>\nti ally</w>\nle tics</w>\n% ,</w>\nandre ws</w>\nsi ble</w>\nmom ma</w>\nvin o</w>\ndo x</w>\ninvit ational</w>\ntwil ight</w>\nj ade</w>\nill ery</w>\njoh ns</w>\nf ou\np v\n-- -></w>\nbreak down</w>\nbilli on\nprin ter</w>\nmon d\nc bc</w>\nmag gie</w>\nlegi on</w>\ndu b\nkur t</w>\npo or\nparen ting</w>\nregi ons</w>\nbikin i</w>\nbe ware</w>\nsi onal</w>\nau burn</w>\nkid ding</w>\namp les</w>\nsp an</w>\ncon tempor\nc ic\nha bits</w>\nak o</w>\npre fe\nbud dies</w>\nit z\nem ily\nperson nel</w>\nmoun tain\nver sus</w>\nðŁĺ ¬</w>\near ning</w>\ns ink</w>\ndar i</w>\nu u</w>\ns win\ni ster</w>\nbru tal</w>\nn ac\nkat a</w>\nclo th</w>\nam and\nðŁĶ Ĺ</w>\nne o\nalu min\nweek ends</w>\nnebra ska</w>\nco des</w>\ndelay ed</w>\nbrun o</w>\npro ven</w>\nin c\ni ght\nfl an\nor o</w>\nlam bert</w>\nregu lat\nw f\nmassach use\nkardashi an</w>\nbern ard</w>\nfi esta</w>\nvolcan o</w>\ngrand pa</w>\nanc a</w>\nd re</w>\nst itu\nmean ing\nfo am</w>\nau ck\nat ed\nr l</w>\nhot el\npers ons</w>\ndy nasty</w>\nell or</w>\nma i</w>\nam ne\nsty ling</w>\navi er</w>\ne g</w>\nvege tarian</w>\n, âĢ¦</w>\nfoun ders</w>\nsta in</w>\ng d</w>\ncy cles</w>\nsky line</w>\ntrac tor</w>\nexi sts</w>\ntra l</w>\nkid ney</w>\nmar il\ninst ag\nse tte</w>\naddic t</w>\ntri angle</w>\nflash back\ncontroversi al</w>\nz on</w>\np ins</w>\ni as</w>\ntr ay</w>\ntown ship</w>\ndeleg ates</w>\nsp am</w>\nh ms</w>\ncr ane</w>\npeop les</w>\no lo\nfac tion</w>\nbut es</w>\non ica</w>\ndeleg ation</w>\nnew profile\neli er</w>\nmc a</w>\nw and\ng ely</w>\nlosange les</w>\nber ke\nti ve\ndis rup\nzz a</w>\ncas a</w>\njor dan\nford shire</w>\nga thered</w>\nic hi</w>\natten dees</w>\nà¸Ń à¸\npe ppers</w>\nco in\nbour bon</w>\nern ity</w>\nro tary</w>\nbehavi our</w>\njere my\nteam work</w>\ncompli ance</w>\ntre mend\nðŁĩ §\nbu hari</w>\ncam bo\nbu yers</w>\nha gen</w>\nbu ds</w>\nbay ern</w>\nmon te</w>\nsm ells</w>\nan za</w>\nath lon</w>\ndescri bed</w>\nwork force</w>\ngi ving\nap i</w>\ninvest ments</w>\nda il\nsel ena</w>\ndatab ase</w>\nth um\nmor tal</w>\nstu dent\nbu yer</w>\ndo ver</w>\ngar ten</w>\natt le\nloy alty</w>\ngen oci\nholo cau\ntheat ers</w>\nru ling</w>\nven us</w>\npat ent</w>\nch un\nab by</w>\nawa ke</w>\nmass acre</w>\nbang alore</w>\nbreak ing\nsimm ons</w>\nju sti\nhal e</w>\ned chat</w>\ngg les</w>\nhaw k\nmar king</w>\nhead lines</w>\nstro m</w>\nco ve</w>\nbreath taking</w>\nmed als</w>\nhair cut</w>\nchrist ine</w>\ntele graph</w>\ngujar at</w>\nju ra\ncan e</w>\nsho re\npropag anda</w>\nmu eller</w>\n.... ....</w>\nsa vi\nstom ach</w>\nthro ws</w>\nta b</w>\nwar m\nj ong</w>\nreno wned</w>\nhi r</w>\nra is\nmush rooms</w>\nguaran teed</w>\nbo a</w>\nm j</w>\nrevolu tionary</w>\ncerti fication</w>\nbru ins</w>\njo in\nw es</w>\npas sport</w>\nc g</w>\nsex u\ncap able</w>\nw v</w>\nton es</w>\njac kets</w>\nac compan\nspin ach</w>\nfore ver\nbla ir</w>\nwat ts</w>\ng l</w>\ncou ples</w>\nprairi e</w>\nnewprofile pic</w>\nlogi stics</w>\nmassachuse tts</w>\njagu ar</w>\no id</w>\nwe al\nunder water</w>\nmo z\ny i</w>\nma ths</w>\nmyan mar</w>\npre ps</w>\nsuffe red</w>\ntr ace</w>\nwal i</w>\nah hh</w>\nbor g</w>\nst itch</w>\ncu lin\nreal ise</w>\ninfe ction</w>\ndiscrimin ation</w>\nsh ame\nan kle</w>\nhu mid\ny t</w>\nbrac ket</w>\ntru ck\ntri u\nea ster\ncommun ity\npost card</w>\ninvol ving</w>\nty ler\ncar amel</w>\nover view</w>\nex amples</w>\nintegr ity</w>\nbase ment</w>\ninstru ments</w>\nani um</w>\nat us</w>\ngh er</w>\nlaun dry</w>\nachi eve\ngen eva</w>\npr icing</w>\nhyder abad</w>\nbeli ef</w>\nme ta\nj aw\naccoun ting</w>\nlead er\ncristi ano</w>\ncou ture</w>\ncy p\nvis ed</w>\n, ,,</w>\nk nu\nh ick\nbreak er</w>\nbr am\nra b\nmo or\nham as</w>\ngradu ating</w>\npupp ies</w>\nak h\nta h\nach es</w>\nri e\nop ini\ng ta\nre ign</w>\ntra gic</w>\nre ver\np ill\npine apple</w>\ntou ches</w>\nda re\nle ys</w>\nil o</w>\ninter iors</w>\nsc outs</w>\nbar t\nen zie</w>\ndon o\nbro ck\nchristi ans</w>\nense mble</w>\nÂ ·</w>\ncine mas</w>\nnew port</w>\nair line</w>\nwin ston</w>\nle igh\ncont ents</w>\npre scri\nur ge</w>\ntr out</w>\nfic ally</w>\nil ia</w>\nsub si\nare r</w>\nâļ¾ ï¸ı</w>\nw ounded</w>\nðŁĻ Ĥ</w>\npe pper\nðŁĴ ŀ\nfit ted</w>\naf f</w>\nre sur\nthursday thoughts</w>\nz ero\narchae ology</w>\ndi v</w>\nje e</w>\ni on\nawa iting</w>\nco zy</w>\nbeauti es</w>\nbal d</w>\ndat a\ngri zz\nstal k</w>\nkin ds</w>\ncle ared</w>\njess ic\nregu lar\nali ens</w>\nplac e\nbo s\nbi zar\nthisi s\nðŁĴ Ģ\ntotten ham</w>\nma fia</w>\ns lam\nari ana</w>\ncar roll</w>\nback pack</w>\ncare y</w>\nuni v</w>\nr g</w>\npe p</w>\ndig it\ntatt oos</w>\nag on</w>\nvolunte ering</w>\ndiffe ren\nconsu mption</w>\nka thr\nhead phones</w>\nt shirt</w>\no b</w>\nele ment</w>\nre tail\nsh ru\nal gori\ncontain er</w>\nconsci ous</w>\nfi l</w>\ncom ing\nra sh\nu rope</w>\ndef ine</w>\ngi or\nfemini st</w>\nflow ing</w>\nrout es</w>\ngl aci\nfer t\nsomer set</w>\nant es</w>\ntwee ps</w>\n$ $</w>\nh our\nendange red</w>\nyear sof\nro h\npo pped</w>\nbac king</w>\nba sil</w>\nbra ke</w>\nmon aco</w>\nlgbt q</w>\npra gue</w>\nut ility</w>\ncas si\ngate way</w>\nhaun ted</w>\nsch ul\nðŁİ µ</w>\nshou ld\nwalking dead</w>\ncomple ting</w>\ndann y\nmontgom ery</w>\npengu in</w>\nss i</w>\nmer chandi\nðŁĳ ĳ\nchur ch\nh ates</w>\ncap tain\nbrea thing</w>\nce t</w>\nfair ly</w>\napproach es</w>\ncompan ion</w>\nsurpri sing</w>\nkany e</w>\npe y\nhin di</w>\ntarge ted</w>\nlor ds</w>\nde ut\ndi gging</w>\nger man\nru t\nener gy\nclose st</w>\ny un\napo logi\nà¸ ±</w>\ns ack</w>\nru p</w>\ndd y\nport al</w>\nd ough</w>\nb ats</w>\nðŁĵ °</w>\nat ur\ngraph er</w>\npi res</w>\nmo tors</w>\nðŁĮ ¹\nj c\ndan g</w>\ntu k</w>\nclu e</w>\nus c</w>\npag e\nd less</w>\nbro ws</w>\nju s</w>\nad ing</w>\nre marks</w>\noo m</w>\ncar dio\nste fan\narm strong</w>\nâĢ¢ âĢ¢\nni est</w>\nbelgi an</w>\nbi op\nso y</w>\nlo f\ní ĥ\nq t</w>\nflashback friday</w>\nce e</w>\nģ à¸\nwre ck</w>\nmar ines</w>\namend ment</w>\nwardro be</w>\nvo y</w>\nbur ned</w>\nguit ars</w>\nra inf\nli fel\nssi l</w>\noun ce</w>\nexter nal</w>\nc key\nme sh</w>\nshe ikh</w>\ninv itation</w>\nsugge sti\npop corn</w>\nphenomen al</w>\nan onymous</w>\ntun a</w>\nchic ago\no val</w>\ndel y</w>\nloc als</w>\n( &</w>\npro f\nno vel\nfin der</w>\nspar ks</w>\nla ven\nin fu\nnic ks</w>\nqu ant\nra e</w>\nexe c</w>\ndist ingui\nst ances</w>\nmu tual</w>\nsh al\nunve ils</w>\nedmon ton</w>\nzan ia</w>\na dio</w>\nvie wer</w>\nbrad ford</w>\naudit orium</w>\nqu is\nre act</w>\nhtt p</w>\nl ero\nchee ky</w>\nimpac ts</w>\nta k\ned t</w>\ndesper ate</w>\nt ay</w>\nì Ħ\nsett le</w>\nbar gain</w>\nresu me</w>\nun ite\nthro wn</w>\nke st</w>\nse ys</w>\nmar ching</w>\nam it\ndecl ine</w>\nsch ar\nme tr\nstan ford</w>\nlin ke\nber ra</w>\ndol ls</w>\nrug by\njam i\nb or</w>\nroad trip</w>\ndino saur</w>\nmi k\nsun der\nre m\nb k\nover seas</w>\nnau ghty</w>\nimple mentation</w>\niam srk</w>\nlun cheon</w>\nfir ing</w>\nmi ami\npere z</w>\nthe e</w>\nz on\ngi fted</w>\ncon version</w>\nceram ic</w>\n¡ ï¸ı\npe dro</w>\nì Ĩ\nv ick\n! @</w>\nhe ed</w>\nsi d</w>\nb w</w>\ndocu ment</w>\npl un\ngr ants</w>\nfant asy\npredic tions</w>\nvali d</w>\ncar ved</w>\ngradu ated</w>\nðŁĳį ðŁı»</w>\nnation ally</w>\nch y\naf l\nre sso</w>\nblan k</w>\nri vals</w>\nj ig\ne ties</w>\nom ics</w>\nune mp\nb ound\nsk o\ninspec tion</w>\npar al\nhigh s</w>\ncri sp</w>\nb ans</w>\nob a</w>\n[ @</w>\nco spla\ncostu mes</w>\nrec all</w>\nmou th\nni gel</w>\nb ts\nter a</w>\nko v</w>\ndo cs</w>\nwest minster</w>\ndic t</w>\ngra vity</w>\nkar i</w>\nro gue</w>\nt ted</w>\nwar k</w>\nida ho</w>\nw end\naw i</w>\nqueen sland</w>\nproce sses</w>\ncli ffe</w>\nm ick\ncom pens\nop ol\nthe y\ncl ari\nwiki pedia</w>\nsalman khan</w>\nhaz ard</w>\npre ston</w>\nswee test</w>\npd f</w>\nche es\ntr ilo\nsouth africa</w>\nbur nt</w>\n( $</w>\ncon tain</w>\nt p</w>\nsub mitted</w>\nsound cloud</w>\nat u\nre z</w>\nword press</w>\ncorru pt</w>\nn f\nma ker\ní ķ\npar as\nadv ent</w>\nri al</w>\nca fe\nfo ssil</w>\n!!!! !!!</w>\nco ws</w>\nc j</w>\nsp ur\ninstitu tions</w>\nland mark</w>\nent it\nre ut\nh is\nalz heim\nwe mb\nregg ae</w>\nmo squ\nst at</w>\nidenti fied</w>\ndeal er</w>\nre am</w>\nre land</w>\nten sion</w>\nðŁĩ ©\nwra pping</w>\ndeep er</w>\nfr at\nred dit</w>\nar is</w>\nmoroc co</w>\n.. \"</w>\nb low\nma pping</w>\npri orities</w>\ning a</w>\nswa p</w>\nre wards</w>\nconspir acy</w>\ncreati ve\nc j\ncongre ssional</w>\nvau lt</w>\nple x</w>\nsophom ore</w>\nshad ow\nele ss\nðŁĺ ħ\ndar ts</w>\naldu b</w>\nanno ying</w>\npro ps</w>\nn as</w>\nalumin um</w>\nh bo</w>\noffen se</w>\nj ill</w>\noni ons</w>\nla ur\nta e\nhar dest</w>\nsh ro\nga ining</w>\nmeas ure\ned tech</w>\ncyp rus</w>\ntar a</w>\nang eli\ncar lo</w>\ngo on</w>\nall i</w>\nim plic\nju pit\nresil ience</w>\nha il\nbal anced</w>\n) ...</w>\njoy ce</w>\ngr a</w>\nth eli\ndefin ed</w>\nshi pped</w>\nmain ly</w>\nmin a</w>\nl m</w>\nsac ri\no ber\np im\nclaim ing</w>\nent ers</w>\nco rey</w>\nbo k</w>\ncri ed</w>\ncool ing</w>\ndani elle</w>\npharmac y</w>\nthor ough\nca ke\nk lo\noutre ach</w>\nz ens</w>\ndigital marketing</w>\nval ent</w>\nsn p</w>\nher b</w>\nmr w</w>\ncaf Ã©</w>\ncap tures</w>\nno tre</w>\ntriu mph</w>\npan cakes</w>\ncu mber\nspi ke</w>\nd ation</w>\nbi gg\nsp er</w>\ncrit ical\nam al\ntoo th\nfoun ding</w>\na stro</w>\n' #</w>\nquan tum</w>\nth ames</w>\nun c</w>\npri de\nair bus</w>\nkno cked</w>\nun defeated</w>\nmediterran ean</w>\ncal cu\nclo wn</w>\nsens or</w>\nham mer\nfor give</w>\ncu shi\nber ry\nmaje stic</w>\nelec t</w>\npolit an</w>\ng ta</w>\nk ari\nbur ke</w>\nsea hawks</w>\nvolkswag en</w>\nre i\nlandsc apes</w>\ncas u\ngrand father</w>\nlist ened</w>\n/ /\nstar trek</w>\nrainf all</w>\nfur ry</w>\nvi er\nstar k</w>\nrif le</w>\nff a</w>\nleg es</w>\nhillary clinton</w>\nmin us</w>\ncorrec tly</w>\narchitec tural</w>\npre ce\nup side</w>\nbox er</w>\nðŁĻĮ ðŁı¼</w>\nis ai\nde t</w>\npro vo\ntis sue</w>\nspoo ky</w>\nve led</w>\nre con\nprospec ts</w>\nque bec</w>\nâļ «\nig no\nanat omy</w>\nshap es</w>\nw p\np interest</w>\nhor e</w>\nan es</w>\npick up</w>\nti p\npra desh</w>\nhu gh</w>\nco e</w>\npo k\ngram my</w>\nwell ington</w>\nsti gate</w>\nri gh\nlea p</w>\nking ston</w>\nscen ic</w>\ngo sh</w>\nv ani\nau g\ns ary</w>\nzi er</w>\nbure au</w>\nlin son</w>\ncon te\nfra gr\nall an</w>\ng aw\nlan a</w>\ncolli sion</w>\nsurve ill\nren ais\nar range\ns ali\ndo in</w>\nbr ance</w>\nbren dan</w>\nour se</w>\nin coming</w>\nsuspen sion</w>\nà ´\nl la</w>\neduc ators</w>\nin tri\nda e</w>\nbio graphy</w>\nbul gar\nvilla in</w>\ngo thic</w>\nrw anda</w>\ne w</w>\nmay or\nmeet up</w>\ndemocr at</w>\nmor gan\nsu dden</w>\nte sco</w>\ncar rot</w>\nbom ber</w>\nmck in\nre ne\nfun day</w>\nagricul tural</w>\nhaha h</w>\nshow time</w>\nform ing</w>\ncol a</w>\nscor pi\nquo te\npo ppy</w>\ns life</w>\nd az\ntu b</w>\nne n</w>\nmo t</w>\nðŁĺ »\ns ore</w>\nelder ly</w>\no ve</w>\nskin ny</w>\num i</w>\nanc o</w>\nman ship</w>\nwe re\ng v\nk ah</w>\nfol ding</w>\nne at</w>\nsamanth a</w>\ndan ish</w>\nuk rain\nhumid ity</w>\nnu tri\njak arta</w>\ncand les</w>\noooo oooo\nat ile</w>\nstreng th\ni bra\nbap ti\ncharle ston</w>\nfr ames</w>\ngirl s\nclear ing</w>\nglu ten\n# #</w>\nsuper natural</w>\nju bi\nph one\nhe in\ndr un\nle ak</w>\ninvest or</w>\ny er\ndom ain</w>\nball room</w>\nmi sh\napp li\noff shore</w>\nbla ze</w>\ndor o\nâĺķ ï¸ı</w>\nwin ery</w>\nshar if</w>\nad ore</w>\nn ir\nsaf er</w>\nsi gh</w>\nas cri\nstrong ly</w>\ntrac y</w>\nck er\nol l</w>\nfaith ful</w>\ney ed</w>\ndeli ghtful</w>\nvis m</w>\nkarnat aka</w>\ntit an</w>\nwh ar\njer seys</w>\nre fur\nheav en\ngri p</w>\npan ama</w>\npre li\nglu ten</w>\no dd\ncont ent\npon ti\ntion ing</w>\ne commerce</w>\nfeder ation</w>\nflaw less</w>\nge ar\nti res</w>\nby r\npol ice\ncu ban</w>\ntri butes</w>\ntic ul\nchur ches</w>\nnur sery</w>\ndi aries</w>\nmuse ums</w>\nsnapp ed</w>\ni van\nwi ght</w>\ntouri sts</w>\nramad an</w>\nt rent</w>\nprophe t</w>\nwon dered</w>\nfocu sing</w>\nhi d\nic ons</w>\ni q\nambul ance</w>\npi st\nfun niest</w>\ntime less</w>\nsr ilan\nbu ys</w>\nki ds\ncolour ful</w>\na shi\nch ir\nmu m\nðŁĵ ļ</w>\nlet ter\nx en\nreut ers</w>\npre serve</w>\nin ting</w>\nste p\nfu ji\nuni ver\ni u</w>\nshow down</w>\npo ems</w>\nsurveill ance</w>\nsuspec ted</w>\nta e</w>\nsol ving</w>\ntom b</w>\nmother sday</w>\ncar pen\nrecru it</w>\npil ots</w>\nbro c\nmix ing</w>\nfri days</w>\nty r\nrepresent atives</w>\ntra pped</w>\nabdu l</w>\nfree style</w>\nclu ster</w>\nâļ łï¸ı</w>\nk d</w>\nsk ill\npit t</w>\nex o\ncommer ci\nmuse um\nloc ally</w>\ng ina</w>\nno bel</w>\nimmun e</w>\nfr ac\ncap su\nmain ed\nattemp ts</w>\nbull dog</w>\nbe spoke</w>\nsing ers</w>\nsp elling</w>\nseg ment</w>\nnat ures</w>\ntic k</w>\nlip stick</w>\nclean er</w>\ngett able</w>\npreci sion</w>\nâĢ¼ ï¸ı\nth ood</w>\nre ef</w>\nno pe</w>\nbill y\ndi gi\nmu si\nri val</w>\nfigu red</w>\ntal ity</w>\nsun ny\nber k\naw ww</w>\nawa its</w>\nun real</w>\nco pen\nasy lum</w>\nex otic</w>\nbu en\nmo ck\nen able</w>\narch y</w>\nfr a</w>\npla stic\nal mond</w>\namp li\ndispla ys</w>\nabbo tt</w>\ns me</w>\nx p</w>\nðŁĻ ĥ</w>\ngraph ic\ni ved</w>\nmar a</w>\ncau tion</w>\nlea ks</w>\nen berg</w>\nul u</w>\nunic orn</w>\ncann on</w>\nappren tic\nðŁĺĺ ðŁĺĺ\nb ball</w>\nwil low</w>\nat ics</w>\nam as</w>\nmanufac turer</w>\ncampaig ns</w>\nport ers</w>\nflo ors</w>\nl su</w>\nty pe\nke j\nhonor ary</w>\nit im\nto le\nmin ecraft</w>\nd x</w>\nma sh</w>\nri o\nconsequ ences</w>\nron ald</w>\ngo ssi\nsuffol k</w>\nmu se</w>\nr bi</w>\nlive music</w>\ni van</w>\nðŁİ ¤</w>\nle u\npatri ot</w>\nman it\nlan ca\nhome decor</w>\nde ar\nsig ma</w>\nti de\nstr ings</w>\nv ita</w>\nsequ el</w>\ntry na</w>\ninve stigate</w>\nbor is</w>\nve gan\nbarri er</w>\nmind fulness</w>\nweb b</w>\nhu stle</w>\nin da</w>\ntan zania</w>\nstr ay</w>\ntex as\nc ag\ndiagno sis</w>\nwom an\ng w</w>\nob session</w>\nl ative</w>\nnu fc</w>\nfl ynn</w>\nmoment um</w>\nsof a</w>\nwal d</w>\nvege table</w>\ntu cker</w>\nsupp er</w>\nse ab\nar ro\nse ag\nven ting</w>\ncounc ill\nsp lat\ncal cul\n.. #</w>\ncom fy</w>\nodi sha</w>\nsto pp\nwar fare</w>\nca es\nà ¨\nco y</w>\nprice less</w>\nin sec\nðŁĺ Ľ</w>\ncontro ls</w>\nempower ment</w>\ndatasci ence</w>\nper pe\ngen ic</w>\ne res</w>\ntru deau</w>\nman o\nsla very</w>\nexpand ing</w>\nma he\nfa iling</w>\ns aga</w>\nphotograph s</w>\ncre st</w>\nre on</w>\nsurf ing</w>\nhi e</w>\nðŁį Ģ</w>\nja e</w>\nfel lows</w>\nsouth ampton</w>\nsol om\nce ster\ntab ility</w>\nhor n\nse ct</w>\nhe e</w>\ncole man</w>\nat las</w>\nexplo rer</w>\nconsul tation</w>\ncopy right</w>\norgani zing</w>\nden ied</w>\nmon keys</w>\nnoo dles</w>\nbr is</w>\nfl or\ndou gh\nbon ds</w>\nsho cked</w>\neco system</w>\ncare fully</w>\nw m</w>\napart ments</w>\ncur ve</w>\nsan diego</w>\nmust ard</w>\ncomm en\ncere mon\ne ch\nru th\nðŁĻĮ ðŁı»</w>\nhawa i\nfil med</w>\nte ar\nas ingly</w>\nca ir\nwat t</w>\ninstru ment</w>\nou tta</w>\nye ol</w>\nriver side</w>\në °\n. :</w>\nnor wich</w>\nalo g</w>\nmigr ants</w>\nnew man</w>\nri de\nspr ink\ntarge ting</w>\nbeli eve\ntor ch</w>\nreflec ts</w>\nper mission</w>\nff man</w>\nene mies</w>\nbas ics</w>\nse ized</w>\nsun days</w>\nle i\nhass an</w>\nen do</w>\nh c\nst ad\nle ments</w>\nkk kk\nnan o\nshar k\nman a</w>\non ic\ntreat ments</w>\near ly\ncollabor ative</w>\nshu ttle</w>\nbran ches</w>\nmis ses</w>\nmained cm</w>\nap ers</w>\nky le\ncarri e</w>\nleis ure</w>\nsh et\nbir ding</w>\nadv ances</w>\nðŁĵ Ŀ</w>\npopu lar\ndi ane</w>\na be\nre war\nneigh bour\nk pop</w>\nremem brance</w>\nplay ground</w>\nru b\nkrish na</w>\ne bola</w>\ninqu iry</w>\nep a</w>\nlu min\norgan isation</w>\nabra ham</w>\nnorm ally</w>\npre ten\njan et</w>\nw t\nðŁĴ İ</w>\nencoura ging</w>\na stic</w>\nbu mp</w>\nsyd ney\ns z</w>\nss ss</w>\ngar rett</w>\nðŁĵ »</w>\nconsul ting</w>\nroman ia</w>\nspo tting</w>\nchanc ellor</w>\nar ma\npresti gious</w>\nðĿ Ĳ\nt ad\ncry st\ncompe tit\nrati o</w>\ncat aly\nbro w</w>\nj ur\nvi king</w>\ncommu te</w>\ny day</w>\nla yers</w>\ndu mb\nesc al\ngenoci de</w>\nf ill\ngu pta</w>\nste pping</w>\nse i</w>\nfo to\nwild cats</w>\ncol i</w>\nprojec t\near nings</w>\nst r</w>\nge ons</w>\ncomple tion</w>\nb m</w>\ndecor ated</w>\ncraw ford</w>\naf ghan</w>\nsc are</w>\nvisi bility</w>\nhi b\ndirec tion\nstro ll</w>\nchrist ina</w>\nalter nate</w>\ncl are</w>\nsty list</w>\nbe hold</w>\ns ance</w>\nleop ard</w>\nacqui red</w>\nnarr ative</w>\nash i</w>\nthe a\n?? ??\npe as</w>\nat ch</w>\nsli des</w>\nle en</w>\nrenew able</w>\neng lish\nqu ir\nco aster</w>\nr x</w>\nfo ols</w>\nmatch day</w>\nmis m</w>\namaz ing\nz ig\nke ting</w>\nwon t</w>\nto wel</w>\ndi ab\nsta ke\nn m\nmel t</w>\ne than</w>\ngra pe</w>\npolit ician</w>\nsm en</w>\ní ĺ\nre o\nwedd ings</w>\ncat cher</w>\nor acle</w>\nme mo\nðŁĮ ´</w>\nec k</w>\nrob bie</w>\nnorwe gian</w>\noper ator</w>\nam or</w>\nse wing</w>\nju l</w>\nx ie</w>\nu v</w>\nfif ty</w>\nme ga\ntatt oo\nliber als</w>\nu pri\ntraffic king</w>\nrichard son</w>\nsu v</w>\nki p</w>\nmess y</w>\ntremend ous</w>\ngl ou\ncour tney</w>\nla d\nstere o\nmy ers</w>\ni dio\n^_ ^</w>\nman ning</w>\ndy e</w>\nw d\nthr one</w>\njun k</w>\nas u</w>\nprovin cial</w>\nk ook</w>\nwr c</w>\nfine art</w>\nhamp shire</w>\nrenais sance</w>\nb red</w>\nfall out</w>\ns j</w>\nsn l</w>\nal am</w>\ntor ture</w>\nfy i</w>\nsh ines</w>\npa w</w>\nch ar</w>\nhen ry\nc row</w>\naci ous</w>\ndi an\npa ige</w>\nba re\nstock holm</w>\nscen ery</w>\nðŁĩ ·\njef frey</w>\npu sh\ndecor ation</w>\nne d\ncu te\nbrig ade</w>\nlaven der</w>\ninv ites</w>\ne sports</w>\nvo ir</w>\ndri ed</w>\ntran spl\nsur geon</w>\nno vels</w>\npul ls</w>\nson y\nlun ar</w>\nman e</w>\ni vy</w>\nfru str\ndor set</w>\nsa i\ntor res</w>\nssi on\nshut down</w>\nsuggesti ons</w>\nwrit ing\ne o\nbattle field</w>\nu ga</w>\nðŁĲ ¾\nvac u\nspl ac\ng it\nu g</w>\nhigh land</w>\n% )</w>\nmer maid</w>\nsacram ento</w>\nta ils</w>\np w</w>\nka h\nt ell\nenh anced</w>\nì ķ\nauck land</w>\ncru el\nðŁ¤ ©</w>\nau dre\nsail or</w>\ngram mar</w>\ng love</w>\nde on</w>\ninfl am\nfresh ly</w>\nk ell\nzi p</w>\nchristi e</w>\nmil d</w>\ndi xon</w>\ninstru ctor</w>\ng ence</w>\nãħ ł\nsub jec\nconstitu tional</w>\ncrow ds</w>\nin visible</w>\nru ins</w>\nda k</w>\nsi p</w>\npla que</w>\np ouring</w>\ncomple x\nz ine</w>\nste ad\nf let\ntrans mission</w>\nlo way</w>\nar un\nincre asingly</w>\nau d\ntransp aren\ncro wned</w>\nsc oun\nblizz ard</w>\nlux u\nfi ers</w>\nachieve ments</w>\nhun ters</w>\nrock ed</w>\nbas in</w>\nvio let</w>\npro ves</w>\nachiev ing</w>\npro sper\nse ga</w>\nflo at</w>\nvi an</w>\nxi v</w>\npol ic\ntur a</w>\napproxim ately</w>\nwander lust</w>\nkeep ers</w>\ngeta way</w>\nco d\npol is</w>\nbr yan\ncol ts</w>\ntal ents</w>\nyo gur\ngluten free</w>\nwri st</w>\ngr y\ncze ch</w>\nðŁİ Ī\nev ille</w>\nðŁı Ī\nto x</w>\ndani els</w>\nam er</w>\nbi ds</w>\nweare one\nme tab\ng t\nboy z</w>\npd x</w>\npos session</w>\npu shed</w>\nshr ine</w>\nreali stic</w>\ntri gger</w>\nna vi\nru mors</w>\nn af\njen kins</w>\ntr un\ncomm uni\nÃ Ĺ</w>\ngam ers</w>\narm or</w>\nmoham med</w>\nbal cony</w>\ny ah\nstron gest</w>\nrhy thm</w>\nunfor gettable</w>\nk p\nho bb\ncusto dy</w>\ngreg or</w>\nr ita</w>\naes thetic</w>\nil ation</w>\nsponsor ing</w>\nn ay</w>\nkid napp\nsh s</w>\nra jas\nme g</w>\nsignific antly</w>\nbutt ons</w>\nla c</w>\nver sions</w>\nessenti als</w>\nopini ons</w>\nk ro\nd printing</w>\nwi dely</w>\nd k</w>\nur an</w>\ny al\nreque sted</w>\nc n</w>\ncur ric\nplu m</w>\ngr un\nv m\ndev on\nm yo\nrel ation</w>\njuvent us</w>\nrou ge</w>\nmin ority</w>\nmin es</w>\njupit er</w>\nn ine\noxy gen</w>\nfran kie</w>\nune sco</w>\nfab ric\ndisgu sting</w>\nsal man</w>\ndete ction</w>\nlan ka</w>\nd ac\nðŁĩ« ðŁĩ·</w>\nargu ment</w>\nshel ves</w>\ncel tics</w>\nrober to</w>\npi gs</w>\nhe dge\nfau l\npow ering</w>\nbutter flies</w>\nfi r</w>\nre make</w>\natt i</w>\ncom o</w>\nemp ha\nkend all</w>\npoke mon\nse ating</w>\nd ans</w>\nbald win</w>\nðŁĳ »</w>\nlesli e</w>\none direction</w>\nti mber</w>\nim an</w>\nfon t</w>\ne der</w>\ndi on</w>\nste ph</w>\nfor mat\ngre gory</w>\npro p</w>\nhe x\nru in</w>\nsor y</w>\ninf er\nn aw\nbar ak</w>\nsd gs</w>\nkar ao\nlu sh</w>\nv ander\nend ent</w>\ng is\na fro\nsoc cer\nay an</w>\nt uni\nlun g</w>\nda yof\nalex a</w>\nmar ath\naddic ted</w>\nag ile</w>\nhy gi\nlight weight</w>\nì §\nmand ela</w>\njo ey\nanc y\nhu m</w>\nbi r</w>\nmemor ial\njim in</w>\nging er\nv ak\njav ascri\ncro ps</w>\norig ins</w>\nd ari\npi per</w>\nim port</w>\naggre ssive</w>\npredic tion</w>\nre pairs</w>\ncr acker</w>\nvoy age</w>\nni ke\nmu mmy</w>\nlinke din</w>\ncountry side</w>\nbor der\ngla ss\nper t</w>\ns als</w>\nsho e\nautograph ed</w>\nwal nut</w>\ncolle gi\nsal ary</w>\npa iring</w>\nðŁĮ ¸\ncath ol\nswee the\ndefe ats</w>\nstreng then</w>\nroof top</w>\nimpro vements</w>\nbarri ers</w>\nur u\nt ally</w>\nru led</w>\nðŁĨ ļ</w>\nnai ja</w>\nemo ji</w>\nper cent\ngi o\npro bs</w>\non ce\nadm its</w>\npa ths</w>\nli ar</w>\nday tona</w>\npe ters</w>\ncal i</w>\ncal li\nmu g\no sa\nap h\nab y\nhy de</w>\neth nic</w>\npla ins</w>\nol f</w>\nhaha hahaha</w>\nholi c</w>\n?! ?!</w>\nsu bli\nbl acks</w>\nmo t\ngh ton</w>\nlo vin</w>\nb rent</w>\nbar u</w>\nl ati\nde w</w>\nate au</w>\nq a</w>\npain ful</w>\nbu sters</w>\nst atic</w>\nðŁĩ¨ðŁĩ ¦</w>\nnote book</w>\nout fits</w>\nsi es</w>\nr f</w>\nfloo ds</w>\nÑ Ģ\nthro at</w>\nsu ici\nro vers</w>\nbeng al</w>\npre pares</w>\nblo g\nmini ature</w>\nØ ¨\nam phi\ncom b</w>\nr sp\nin timate</w>\ngreen e</w>\nÌ ĩ</w>\nal tar</w>\nsurg ical</w>\nves sel</w>\n... ?</w>\ngav in</w>\ng ator</w>\nthreat ened</w>\nz ar</w>\nrob bery</w>\ndi er</w>\npromo ted</w>\ny g</w>\nx s</w>\nsu bs</w>\ninter viewing</w>\nthreat ening</w>\ndo zen</w>\nme ado\nwater fall</w>\nnintendo switch</w>\ncal um</w>\nmini sters</w>\ndro p\nunivers ities</w>\nwar ned</w>\ntac tics</w>\nðŁĩ ²\nrefu se</w>\nad ju\nv ast</w>\nðŁĺ ´</w>\nmc fc</w>\nlib ya</w>\nno filter</w>\ndistribu ted</w>\nre ser\nron nie</w>\nde co</w>\njavascri pt</w>\nmon k</w>\nintere sts</w>\nfle x\nmar tha</w>\nsti es</w>\noo d\nðŁ¤£ ðŁ¤£\ne un\nb ali\ng omez</w>\nsti mul\nmoder ate</w>\nd ity</w>\nir is</w>\nstra w</w>\nconsist ent</w>\ndirec tions</w>\nadop t\nsal sa</w>\ncro o\nreco vered</w>\nblack friday</w>\nlan caster</w>\naccep t\nweareone exo</w>\nbuil ds</w>\nfree man</w>\nair plane</w>\nditi on\nbel ong\njam ie\npit ching</w>\nli f\nom in\ncri spy</w>\npre pping</w>\nve g</w>\nchan g</w>\naccompli shed</w>\ngraci as</w>\ndolph in</w>\nelec tor\nculin ary</w>\nsuper bowl</w>\nwal a</w>\npur suit</w>\nblack berry</w>\nbe an\ncardin al</w>\npro ved</w>\nimmigr ant</w>\nstric tly</w>\nholocau st</w>\npass age</w>\nha us</w>\ncou p</w>\npur se</w>\nhar ass\n< <</w>\nle ed\nado be</w>\nst ad</w>\nlegis lat\npar ked</w>\npri yan\nsil va</w>\nkri st\ns the\nfun ky</w>\nig a</w>\nsett lement</w>\nph s</w>\nt mrw</w>\nstre ssed</w>\nhun t\nho ckey\ntreas ures</w>\ncham bers</w>\nol u\nhu t</w>\nmar ley</w>\ntex ture</w>\nwilder ness</w>\nmm ing</w>\npoten tially</w>\nom aha</w>\nju dy</w>\nto es</w>\nspo iler</w>\ndistingui shed</w>\nfeli x</w>\nah u</w>\nrecommend ations</w>\nzom bies</w>\nhit ler</w>\ntri ple\ncolla pse</w>\nmotiv ated</w>\nulti mat\ngg ling</w>\nso y\nci gar</w>\nfo ren\nvine yard</w>\ngl itter</w>\nfin dings</w>\ncolon ial</w>\nhun ter\neri k</w>\nden s</w>\nbeet le</w>\nlot te\nsub tle</w>\ns matter</w>\ntru sted</w>\nexperim ental</w>\nnam ents</w>\nðŁĺ Ĩ\nregi on\nacquis ition</w>\nbre eding</w>\nquarter back</w>\nam reading</w>\noo td</w>\nru de</w>\niniti atives</w>\nst out</w>\nhy ung</w>\nout come</w>\nal fred</w>\nmic s</w>\nexper tise</w>\nbacter ia</w>\npengu ins</w>\njump er</w>\nvalen cia</w>\nbar k</w>\ning day</w>\nsell ers</w>\ncontrac ts</w>\nhou ston\ncommissi oned</w>\nadap tation</w>\nswan sea</w>\nsanti ago</w>\ncommon wealth</w>\nju dging</w>\nsub mission</w>\nsco rer</w>\ntom my\nÃ± o</w>\nex quis\nfil ing</w>\nexplan ation</w>\nalli son</w>\nwemb ley</w>\nri dge\nchev y</w>\nsan tos</w>\nown ership</w>\ncogn itive</w>\nfavour ites</w>\nsh ed\nphil anthro\ndele ted</w>\ngo dd\ns nor\ngui delines</w>\nff ing</w>\nje ep\ncli ps</w>\nsw amp</w>\nan or</w>\nguil d</w>\nbol ton</w>\nspring field</w>\nmunici pal</w>\ngoal keeper</w>\nye on</w>\nðŁĺįðŁĺį ðŁĺįðŁĺį\nãħĭ ãħĭ\nwater front</w>\ngra ve\ncontempor ary\nar ity</w>\nÃŃ a</w>\nsle eps</w>\nsy rup</w>\nal am\npi re\nco yo\nmoto gp</w>\nty son</w>\nkej ri\ncir cul\nsing ly</w>\ncr unch</w>\ncomplic ated</w>\nnostal gia</w>\nk op\nmo ve\nk ale</w>\nmac ro</w>\nmid west</w>\nh ans</w>\ntri bal</w>\nnu de</w>\nà¯ į</w>\nbey once</w>\ncongratul ate</w>\ncat er\nleagu e\nðŁĻ Ĭ</w>\nla dder</w>\ncra shed</w>\ntech nic\nkarao ke</w>\nharass ment</w>\nro ts</w>\nexperi encing</w>\nkri sten</w>\nðŁĩ ³\nðŁ¤ Ĺ\nreflec tions</w>\nguin ness</w>\nillustr ator</w>\nðŁĻı ðŁı»</w>\ncen ter\nnar row</w>\ncomm ons</w>\nregul ations</w>\nÙ Ĩ\nhar m\ncro ft</w>\ncu ssion</w>\nhong kong</w>\nst ical</w>\nintern ship</w>\nzo e</w>\ncho p</w>\nhoo ds</w>\nestim ated</w>\nbatter ies</w>\nberke ley</w>\nsmooth ie</w>\nshau n</w>\ncro s\n~ ~</w>\ncam pe\nhu mp\nb g\nproto type</w>\ncl ick\nshaw n\nre viewed</w>\ntem pl\np f\njed i</w>\nblo gs</w>\nray mond</w>\nas th\nba h</w>\nav ail</w>\nscot ch</w>\nleaf s</w>\nnik ki</w>\nto k\nhol low</w>\nur ges</w>\nof t</w>\nun like</w>\nlat in\nu e\ncat ering</w>\nmil i\nalter nati\nma ver\nÐ ¸\nag le</w>\npre order</w>\nlu x</w>\ncu cu\nðŁĳı ðŁĳı</w>\nt art\nâĿ¤âĿ¤ âĿ¤</w>\narab ic</w>\nrapi dly</w>\nar rang\nall en\ntravel tuesday</w>\npa ws</w>\nflo ws</w>\nst ability</w>\nflu id</w>\nca pp\ncan berra</w>\nuu uu\nsp ani\ndemon stration</w>\nm la</w>\nplac ement</w>\nm w\npresi dents</w>\nawe som\nbever ly</w>\nani st</w>\nne al</w>\nfather sday</w>\nreferen dum</w>\nla hore</w>\no aks</w>\ndeb bie</w>\nhalf way</w>\ngho sts</w>\nde bor\nmatthe ws</w>\nfi at</w>\nt fw</w>\npre sen\nrob i</w>\nde d\nbro ck</w>\nlaugh ed</w>\nam ounts</w>\nbam boo</w>\nkinder garten</w>\neat en</w>\nmtv hottest</w>\nbreak out</w>\nu sic</w>\nfra ser</w>\nlegis lative</w>\np ang\nmodu le</w>\nsam my</w>\ngo ver</w>\near ns</w>\nexpe dition</w>\ngar h</w>\nconcep ts</w>\nchar lie\nla va</w>\nbachel or</w>\nveg gies</w>\ndeter mine</w>\nel lie</w>\nun locked</w>\nfru it\ndal la\ncou pe</w>\nwash ington\ndepo sit</w>\niv ory</w>\npau la</w>\nchic ag\ngu cci</w>\nðŁİ ĥ</w>\ncul tiv\npier ce</w>\nli fted</w>\nstu mb\nre cover</w>\nmusc les</w>\nconduc ting</w>\ncb s\nmcla ren</w>\nsophi a</w>\ncel lu\noce ans</w>\nup loaded</w>\ngame play</w>\nmal dives</w>\nkim ber\navo i\nrac er</w>\nca ine</w>\ncav s</w>\nh ana</w>\nli ga</w>\nra ven</w>\ninter vention</w>\ninaugur ation</w>\noo h</w>\nat traction</w>\nmerchandi se</w>\ntune in</w>\nli king</w>\njuni ors</w>\nint ended</w>\natt acking</w>\naqu arium</w>\ni wd</w>\ncomp onents</w>\nsur ing</w>\ncent u\nyogur t</w>\nðŁı ĥ\nshow room</w>\nop tical</w>\nty our\nju dge\nyi eld</w>\nan to\npl c</w>\ntransparen cy</w>\nrecy cled</w>\nchi ef\nar om\nambassad ors</w>\nplan et\nâĿĦ ï¸ı\nom ed</w>\nvaness a</w>\ncour t\nmar gar\nhal ey</w>\nv r\nreg ina</w>\npd ates</w>\nhi span\nlive stream</w>\nâģ £</w>\nya hoo</w>\ngal la\nsecu red</w>\nw ir\nbene ath</w>\noff l</w>\nn il\nam b</w>\nye g\nout let</w>\nu te\npe ep</w>\nlind say</w>\nbent ley</w>\n... !</w>\nhe el</w>\ntrilo gy</w>\nvo s</w>\nty re</w>\nthere fore</w>\ntor onto\nab i\nsimp li\nja e\nexten sive</w>\neleph ants</w>\ns or</w>\norient ation</w>\nim peach\nre play</w>\nconstru cted</w>\npeter son</w>\npa is\npor ted</w>\ncustom s</w>\ncolla p\nad u\nhigh lands</w>\nsal em</w>\nshel by</w>\nko vic</w>\nstra in</w>\nro sie</w>\nsen ators</w>\nsnap s</w>\nbo bb\nsuz uki</w>\nbla des</w>\nk p</w>\nlo lo\ngener ate</w>\nsi ght\nma e\nstruc tural</w>\npredic t</w>\njump ed</w>\nah mad</w>\nsun g\njust ice\ngla m</w>\nvol vo</w>\njubi lee</w>\nde tention</w>\nlo sses</w>\npu ri\nevery time</w>\nÐ °\nra o</w>\ned ge\nli mer\nrese mb\nhar old</w>\nre tri\nsacri fic\nsurpri ses</w>\nam c</w>\nsrilan ka</w>\nbar bie</w>\nmen s\nfin n</w>\nag s</w>\nukrain ian</w>\nem brac\nî Ĳ\nflav ors</w>\nhom er</w>\nlau re\nou th\npr iced</w>\nver de</w>\nfir m\nah s</w>\ncu b\ntre y</w>\npar anor\npro fit\nin dv\nwho a</w>\nhar sh</w>\nal ot</w>\ncrit ics</w>\nhu bby</w>\nfi gur\ngi ra\nca stro</w>\nchan el</w>\nin put</w>\norigin als</w>\nten ant</w>\nyy yy</w>\nture rs</w>\nlincol n\nco on</w>\nlear n\nch ou\nac are</w>\no les</w>\ndin er</w>\nhy p\nbizar re</w>\nmc r</w>\nlet sgo\ndecor ating</w>\nðŁĮ İ</w>\nal ison</w>\nar vin\nf d\nreha b</w>\nmccar thy</w>\nlot tery</w>\nda h\nminne apolis</w>\neli gible</w>\ndiagno sed</w>\nemer ald</w>\ndestin ations</w>\ns ans</w>\nor y\nbla zers</w>\nn v</w>\nba il</w>\ndigital art</w>\nno c\nmal ta</w>\nsol ar\npi pes</w>\nalleg ations</w>\nno ck</w>\npo pe\nbri d\npremi er\nn x</w>\npresent ations</w>\nef a</w>\nbo ws</w>\nval ve</w>\nopp onent</w>\nĮ ë\nvisu al\ning le</w>\ncate gor\ne ter</w>\npo is\ndan i</w>\nat tract</w>\nneu tral</w>\nth ene\ncra shes</w>\nfred die</w>\nut ili\nc st</w>\nawak ening</w>\nslo ven\nquali fy</w>\npro of\nfair y\nle v\nfre ight</w>\nenjo ys</w>\ncup cake</w>\nflav our</w>\nâ ķ\nprotec tive</w>\nðŁĳı ðŁı»</w>\nis u\nad mir\nh mmm</w>\ncontinu ous</w>\nai res</w>\nrap tors</w>\nshowcas ing</w>\ny uk\npa ste</w>\nfollow er</w>\ninstru ctions</w>\nsp ru\n@ __</w>\nthe o\ndebu ts</w>\nve tte</w>\nsto w</w>\nes of\nach ed</w>\nsul tan</w>\nsand wich\nsom alia</w>\nfranc o</w>\ncar ne\nflu ffy</w>\nal pine</w>\njas mine</w>\nhe ated</w>\nviol in</w>\nple ss</w>\ndivor ce</w>\nper former</w>\nphi es</w>\nport sm\ndar a</w>\nkir by</w>\nlo p</w>\nchill i</w>\nfor th\nsky pe</w>\nðŁĩ®ðŁĩ ¹</w>\ncelebr ities</w>\ned y\nve e</w>\npo ison</w>\ney el\ngra bs</w>\nssi c</w>\nun o</w>\nwester n\nrail road</w>\nam er\nnumer ous</w>\ns v</w>\nfo w\nfi st</w>\nâĢ ĭ\nreque sts</w>\nmar tial</w>\nem my</w>\naccept ance</w>\nlau ra\nà¸ ´</w>\ner up\nhyun dai</w>\nout lander</w>\nu tt\nwrest le\nesp resso</w>\ndemand ing</w>\ng dp</w>\ngeo graphy</w>\nsas kat\ntro ll</w>\nconfe der\nsu es</w>\nse m</w>\nbe ts</w>\nt ful</w>\nto sh</w>\nteach es</w>\ncol oured</w>\ngal way</w>\nmac y</w>\ndis orders</w>\nbb cra\nat em\nfen der</w>\nlit ter</w>\ne sh\nprovi ders</w>\nrenov ation</w>\nnomin ate</w>\nps g</w>\nnomin ations</w>\njen na</w>\nshar p\nsome day</w>\nz ur\nbra ins</w>\nche shire</w>\npre y</w>\nhu go</w>\nÂ ¿</w>\nto ken</w>\nr v\ncar r</w>\ntac tical</w>\nzel da</w>\nkay la</w>\nfern ando</w>\nphotograph ers</w>\nj our</w>\numb rella</w>\nwoo dy</w>\ncongress man</w>\ndu mp</w>\nle vy</w>\nju an\nd azz\nsign als</w>\nla in</w>\nan u</w>\nmic hel</w>\npor ch</w>\nal den\nsibl ings</w>\ny ale</w>\npe el</w>\nsw ick</w>\ngg in</w>\nll c</w>\nk ale\ns con\nil d</w>\npat reon</w>\nre el</w>\nqu in</w>\nwit t</w>\nmar ty</w>\nmoo dy</w>\nton i</w>\nder y</w>\ng ators</w>\nspeci fically</w>\ndd in</w>\nly on</w>\ntr ick\nmeado ws</w>\np j</w>\nbor gh\nvi k</w>\ntu r</w>\nbron x</w>\npu ff</w>\nlan tern</w>\nðŁ¤ ¦\ng ently</w>\nbe stie</w>\nfac t\nrefu sed</w>\nfas ci\nmp y</w>\nðŁĶ µ</w>\ncross over</w>\nmead ow</w>\nindian apolis</w>\nduc ation</w>\nsle y\nloo m</w>\nmix er</w>\nnew music</w>\nfilm maker</w>\nprosper ity</w>\nli m</w>\nweek end\ncre amy</w>\nneu tr\nlu ther</w>\nh v\nnor thern\ntw o\nh ra</w>\ncat ches</w>\nappear ances</w>\nha bit</w>\nkitt ens</w>\nn v\nilla c</w>\ninf an\nregar dless</w>\nliz ard</w>\ndun k</w>\ncur tain</w>\nac om\nin tu\nve z</w>\ne min\nfl ats</w>\ncalend ars</w>\nem power</w>\nru ined</w>\nhun gary</w>\nvi d\nwe x\nu lum</w>\naber deen</w>\no sa</w>\nk t\nma ssi\nse emed</w>\ns den</w>\n' ?</w>\ntele phone</w>\nde fi\ninsp ires</w>\nme ow</w>\nz ones</w>\nbl ind\npl y\ntuc son</w>\nadvent ure\nge d\noy ster</w>\nðŁĳıðŁĳı ðŁĳı</w>\nout put</w>\ntt t</w>\nmetal lic</w>\nsma sh\nucl a</w>\nsco ts</w>\nperfe ct\nlu cy\nregular ly</w>\nsp ic\nrel ative</w>\nath ers</w>\nmis e</w>\nbatt ling</w>\ndeci des</w>\nmat a</w>\noccu pied</w>\nrandom ly</w>\ncat softwitter</w>\ngi an\nball y\nal ties</w>\nal lies</w>\nim men\nsy rac\nðŁĴľ ðŁĴľ\nl lan\nau r</w>\nk ut\nlam ar</w>\naffe cts</w>\nn ra</w>\nstar war\nðŁ¤ ĺ</w>\nsc ram\nen chan\npro cess\nluxu rious</w>\nar ray</w>\nsher lock</w>\ncomp ati\ndor f</w>\nstre ss\nm su</w>\ns with\nsal a</w>\nsof instagram</w>\nfo il</w>\nunder stood</w>\nqu ay</w>\nr p\nc ade</w>\nja w</w>\nen ab\nen coun\nðŁİī :</w>\ndo ck\nsatur n</w>\nmu ll\nlay out</w>\nra rely</w>\nhapp ily</w>\nfix ture</w>\nor ph\nover looking</w>\nher bs</w>\nm itt\npil lar</w>\nnol an</w>\npe tty</w>\nstr y\nu i\nmu k\no res</w>\no vers</w>\ná µ\nre creation</w>\nwe sley</w>\nri t</w>\nkejri wal</w>\nsto cking</w>\ng v</w>\nsubscri bers</w>\nmoo se</w>\nma e</w>\nber t\nopp re\nassign ment</w>\nu ro\nhigh lighting</w>\ncal vin</w>\nwe igh</w>\ncambo dia</w>\nav on</w>\nke m</w>\ndis abilities</w>\nread y\nchar gers</w>\np ads</w>\niz ing</w>\nilli an</w>\ntru ste\ncol leges</w>\nassoci ates</w>\nalban y</w>\nmil ton</w>\ncr on\nbu r</w>\nhar dly</w>\nsi ghts</w>\nanti ques</w>\ne cho\nsurpri singly</w>\nha iti</w>\ncap t</w>\nph p</w>\nop io\nine quality</w>\nequ al\nken y\nsch mid\nautograph s</w>\nren t\nqu er\ncit rus</w>\nchalleng ed</w>\nte c\nepi de\nfe st\nz hou</w>\nli me\ncitizen ship</w>\ncry stal\nconvin ced</w>\nmess enger</w>\ncopen hagen</w>\nâĿĹ ï¸ı</w>\nwar ran\ndevelop ments</w>\nï¸ı âĥ£\nfore x</w>\nhi ro\nsne akers</w>\nxi de</w>\nvi va</w>\nstere o</w>\nbat ting</w>\nss el\nho st\nbeng al\ncritic ism</w>\nq c</w>\ncr un\nattemp ted</w>\nry e</w>\ndetermin ation</w>\ncre ations</w>\nd read\nlabel s</w>\npos se\nanc er</w>\njoh an\nsi ster\npartner ships</w>\nles bian</w>\nk st</w>\nguaran tee</w>\nbar o\nfix ing</w>\nma son\nm ous</w>\nchem icals</w>\nt less</w>\nbio diversity</w>\npar o\nbhar at</w>\nac ol\nrefu ge</w>\nen te\nt iti\ndys sey</w>\nrespon ds</w>\nlef to\nin er\nse vel\nrahu l</w>\nol ine</w>\nfrank fur\ncho reo\nenjoy able</w>\nc to</w>\nstrugg les</w>\nwood land</w>\nheavy weight</w>\ngen s</w>\nrece p\nac cred\nðŁĺ ¡</w>\ntrans formed</w>\nlist en\nat op</w>\nn k</w>\nsur ge</w>\nbe re\ngover nor\nprison ers</w>\nclau de</w>\nt ill\nmu lator</w>\nemo tion</w>\nwater loo</w>\nstar t\nðŁĩ º</w>\nclean ed</w>\ngrand mother</w>\nfear less</w>\nafric an\nastron omy</w>\nðŁı ģ</w>\nà¸ Ļ\nthe world</w>\nsu itable</w>\nanth ony\nk and\ntt en</w>\nmeaning ful</w>\ndisc lo\njaco bs</w>\nÃ ¸\ntom linson</w>\nghe tti</w>\nty pho\nsub stan\nas co</w>\nte k\nnag ar</w>\nmu d\nam on\nvacc ine</w>\nf ty</w>\nfle sh</w>\nno el</w>\ninfl ation</w>\nportu gue\nglam our</w>\ntra m</w>\nv re</w>\nte qu\nroun dup</w>\nw yn</w>\nrejec ted</w>\nmosa ic</w>\nsi ghting</w>\ncal f</w>\no ta\ncom position</w>\ngo pro</w>\ngonz ale\ne ed</w>\nb ard</w>\ntu e</w>\neffec tively</w>\nwe en\nal to</w>\nri bs</w>\nrel ate</w>\nthir sty</w>\nfu rious</w>\ndi m</w>\nch ard</w>\nperfu me</w>\ns ny\nchur chill</w>\nk of\nmaster class</w>\nwa ve\nðŁĶ µ\ner in\nown s</w>\nto be\nsk illed</w>\nte m</w>\ngo f\nen i</w>\ntor i</w>\ncra zy\nl ick</w>\nresi stant</w>\nici al\nag ar</w>\n! :</w>\ng ali\ndel aware</w>\nbl itz</w>\nkoh li</w>\npu ck</w>\navail ability</w>\nhi malay\ninflu ential</w>\ncro chet</w>\nvictor i\nread ing\nho bby</w>\nvie t\nj as</w>\nen gra\nsk ul\nðŁĩ² ðŁĩ\neduc ate</w>\ntech no</w>\ndistric ts</w>\nblu es\nse tt</w>\nseven th</w>\nlear ns</w>\nee ee</w>\napocaly pse</w>\nhang out</w>\ncru el</w>\nmu tu\nbru h</w>\nhel en\nshe er</w>\nc tion\nkle in</w>\ntex ans</w>\nce real</w>\nsh ine\nne red</w>\ngra s</w>\nam bro\nf ella</w>\nhin du\nmatthe w\nli ma</w>\nmir anda</w>\nje wel</w>\nso ho</w>\neuro vision</w>\nneighb ours</w>\nchand ler</w>\nbe sides</w>\nðŁ¥ °</w>\nast ros</w>\nthu mbs</w>\nren ault</w>\nra ve</w>\nhi red</w>\nðŁĸ ¤\nit ary</w>\nz or\nbla zer</w>\nk ine\nea u</w>\nkat y\ndc comics</w>\npe c</w>\nro dgers</w>\nwater proof</w>\nkill ers</w>\nsuper int\npre serv\nas so</w>\nbrew ers</w>\npromo tional</w>\nsc am\nvilla ges</w>\nsket ches</w>\nju icy</w>\nfor life</w>\nau dit</w>\nso lo\nfundam ental</w>\nlen e</w>\nphilipp ine</w>\nt end\nconserv atives</w>\nsponsor ship</w>\ndd le\na ine</w>\nh tc</w>\nos i</w>\nhul k</w>\nw af\nà¸ Ļ</w>\nevalu ation</w>\nant ine</w>\nsle e\nrobert son</w>\nroo sevel\nag i</w>\nsophi stic\nemplo yers</w>\nbubb les</w>\nko wski</w>\ninter action</w>\nsh u</w>\nbou le\nic an\nj are\nhan k</w>\nleg itim\nk nicks</w>\nkar ma</w>\nrecei ver</w>\nper ks</w>\nu h\nsta ir</w>\nsun i\nlabor atory</w>\ngra ves</w>\nvoc als</w>\noo t</w>\nc ture</w>\nthri ve</w>\ntic o</w>\nãĥ ³\nb w\ncarto ons</w>\nmcdon alds</w>\ndra w\ny ung</w>\npl er</w>\nli d</w>\neth ical</w>\ngroo ve</w>\nent a</w>\ninternational womensday</w>\npat ron</w>\nwor ries</w>\nðŁİ ħ\nðŁĳ ĭ</w>\nka therine</w>\ndi az</w>\ntor i\nbach chan</w>\ntru st\nmin eral</w>\nic om\nbuil ders</w>\nbor n\ncol oring</w>\nlat te</w>\nca se\nrevolu tion\ntra der</w>\nox id\nchi pot\ninst antly</w>\nsou thern\nse hun</w>\npro b\nher nandez</w>\nlis bon</w>\nhu awe\np ong</w>\nme a</w>\nro oney</w>\nwheel chair</w>\nke en\nbe tt\ncor in\nregulat ory</w>\ndi splac\nka ren\nsch em\nsun sets</w>\nwh ales</w>\nremin is\nhe p\nhi de\nmar cel\npand ora</w>\ndo yle</w>\nth fc</w>\not to</w>\nno kia</w>\ntrans gender</w>\nko v\nhawai ian</w>\nsha ve</w>\nso vere\nexc er\nnick i</w>\npu g</w>\nst or</w>\nro th\nwee t</w>\nleg al\ndig nity</w>\npo w</w>\nhom age</w>\nðŁĩ³ ðŁĩ\ns re\ncan on\nla x\nwo ah</w>\nquart z</w>\nÃ± a</w>\ngree ting</w>\nflick r</w>\nnai robi</w>\nadvoc ates</w>\nan c</w>\nvi i</w>\neu gene</w>\nth ra\nc re</w>\nel an\npen sion</w>\nth letics</w>\nton i\nre agan</w>\nx v</w>\nsto re\nben ch\nhar lem</w>\ntodd ler</w>\nsent enced</w>\nâĻ¥ ï¸ı\nglob ally</w>\nche aper</w>\nu f\nma m</w>\nnic o</w>\nik u</w>\ntho u</w>\nni st</w>\ndam i\nth ala</w>\nrho des</w>\nsal e\nbow ls</w>\nâ Ī\nlas vegas</w>\nsanc tions</w>\nadm ire</w>\nmat ched</w>\nun able</w>\ntravel er</w>\nele ven</w>\nstraw berries</w>\nâĢĶâĢĶ âĢĶâĢĶ\nstu dio\njac ques</w>\nim s</w>\nvalu ed</w>\ns no</w>\ncheese cake</w>\nn xt</w>\ne os</w>\ns x</w>\nf x\nton ic</w>\nhat ch</w>\nchic ks</w>\ngra ds</w>\nhand ic\nr ory</w>\nas p\nri pped</w>\ndenti st</w>\nn en\nlu fc</w>\nâľ Ĭ</w>\ndi ge\nhop kins</w>\nsher man</w>\nf da</w>\nfor all</w>\nash ley\nstr and</w>\nh y</w>\nliqu or</w>\nbuffe t</w>\ness ence</w>\nphar ma</w>\nsuri ya</w>\nðŁĴĻ ðŁĴĻ\nfesti vals</w>\nz an</w>\nre fresh\npur ple\nuni forms</w>\nkenne th</w>\n= )</w>\nas an</w>\nhel sin\ntransform ers</w>\nk ali\nperson alized</w>\nchal k</w>\nbo bby\nâ Į\nthe mes</w>\ndepar ture</w>\nprin t\nillustr ations</w>\nqui et\nagre es</w>\ngri ff\nØ ³\nm iti\ntoge ther\nconven ience</w>\nab ar\ncar lo\nturt les</w>\ninfo sec</w>\nsome what</w>\nar lington</w>\nscholar ships</w>\nemir ates</w>\nmu ms</w>\nst ella</w>\nauton om\nfe ather</w>\ng ore</w>\nnom inees</w>\nfragr ance</w>\nÑ Ĥ\nw ong</w>\nthea stern</w>\ngr e</w>\nz illa</w>\nis i</w>\nbump er</w>\ngo o</w>\ndo zens</w>\nab duc\nâļª ï¸ı</w>\no ils</w>\ndon ors</w>\nsil icon</w>\ni pod</w>\nfortn ite</w>\nðŁĴ ¨</w>\ntor o</w>\nspark ling</w>\nconsci ousness</w>\npal a</w>\nnu m\nmoun ted</w>\nffin s</w>\nthi eves</w>\nteam mate</w>\npra b\nom er</w>\nta pes</w>\nbo d\nmit su\nste w</w>\ne re\np bs</w>\ntu sc\nlo we</w>\nra de</w>\nparliam entary</w>\nh m\ned gar</w>\nðŁĳĩ ðŁĳĩ\nto a\na gh\nhon i</w>\ns late</w>\nge ek\nap t</w>\nhard t</w>\nta p\nhoriz on\ngrow th\nmake over</w>\nhi l</w>\npaper back</w>\nid an</w>\nreha bil\ngi u\npossi bilities</w>\nlet tu\nfran co\nbo ss\nach er</w>\ndoes nt</w>\nmo e</w>\nta ker</w>\nhuss ain</w>\nml k</w>\ndi l</w>\nth ia</w>\nham a</w>\nreal ised</w>\nraven s</w>\ncurric ulum</w>\nm ith</w>\nk night\nted x\nr v</w>\nisai ah</w>\ncumb ria</w>\nbirth days</w>\nf ing</w>\npre z</w>\nmu barak</w>\nexquis ite</w>\nclear ance</w>\ny en</w>\npar i\nev o\nÃ º\nmodi fied</w>\napp lying</w>\nimple ment</w>\ndisco vering</w>\nchap man</w>\nindie game</w>\ndis k</w>\ncrowd funding</w>\nmach in\nli vel\nsty led</w>\nâĿ Į</w>\nma king\nrehear sals</w>\nnutr iti\nsubscri ption</w>\nand ro</w>\ncre ators</w>\ncar ries</w>\nky lie</w>\ncam den</w>\nappren tice</w>\ntax pay\nc ca</w>\ntuesday thoughts</w>\npis sed</w>\ner man</w>\ndete c\nfreed om\nmer i\n.. !</w>\npsal m</w>\nsun light</w>\nper spec\nbe ings</w>\nbook store</w>\nrock star</w>\nfun ctions</w>\np ence</w>\nfav es</w>\nz n</w>\nobam acare</w>\nsp ill</w>\ncoven try</w>\npi geon</w>\npi vo\nba it</w>\nkol kata</w>\nav al\ndon or</w>\nwa h</w>\nprivi leg\ntra ditions</w>\nrajas than</w>\nten ess</w>\nportugue se</w>\nyn es</w>\ntack les</w>\nde fic\ntor n</w>\npol ling</w>\nthor ne</w>\nin a\nbened ict</w>\nbar ry\ncal ories</w>\nver dict</w>\nsave the\nnor ton</w>\noff ice\nmain stream</w>\nimpro ves</w>\nfr on</w>\nrespon ding</w>\nreal tor</w>\nscotti sh\nde clar\nr l\nshi v\nsupp lier</w>\nre sting</w>\nswee ts</w>\nqu i</w>\n. âĢ¦</w>\nwhit ney</w>\nstartu p\nthank you\nteach er\nh alls</w>\nha ve\nhand made\npro ving</w>\nquar tet</w>\nro chester</w>\nli an</w>\nvirtu al\nmend es</w>\nof icial</w>\nmid lands</w>\nx box\nmeas uring</w>\no vo</w>\naccommod ation</w>\nbri des</w>\ncollegi ate</w>\nintellec tual</w>\nin car\nni ag\nðŁį ·</w>\nsf w</w>\ncoco a</w>\nco ats</w>\ncivil ians</w>\npresi dency</w>\nmat rix</w>\nsweethe art</w>\ntri athlon</w>\nwag ner</w>\nra dic\nplann er</w>\nthe o</w>\nexecu tion</w>\nk um\nthe walkingdead</w>\nsc ar</w>\nro tation</w>\nblo gging</w>\nbom b\nre son\nbb les</w>\nst are</w>\nassi sted</w>\ne do</w>\nbrand ed</w>\nwar nings</w>\nthor pe</w>\nacknow le\nsatis fied</w>\nsho res</w>\nri d\ndor a</w>\nphys ically</w>\nbi gh\nappro ves</w>\nha h\nric al</w>\nvers atile</w>\npret end</w>\nlu m\nab hi\nye e\nsp it\nãĢ Į</w>\ndj s</w>\nash tra</w>\nj t</w>\nven ues</w>\ngram mys</w>\ncy clo\ntr acker</w>\nover watch</w>\nrepl ica</w>\nel yn</w>\nnr l</w>\nlind sey</w>\nhom o\nballo ons</w>\nkitch en\nsi s\nam os</w>\nende av\nðŁĴ »</w>\na rec\nthu g</w>\nhoo ked</w>\nhr c</w>\nnew york\nbur gh\nameric as</w>\npatric ia</w>\nug u</w>\nap athy</w>\nha st\npsy chi\ncor k\npetro l</w>\nðŁİ ¬</w>\nak u\npo pping</w>\npsycho logical</w>\nau x\ng ma</w>\ncad illac</w>\nwa ste\nauth ent\nbri stol\nnam e\nque er</w>\nto ber\njer ry\ncom in</w>\nch ant\nprivileg ed</w>\nop ar\nlo ser</w>\ntex t\nmar ker</w>\nstri es</w>\nequ ally</w>\nak i\nchrist mas\ngare th</w>\nble w</w>\nem ma\nimag in\nse als</w>\nche at</w>\nconditi oning</w>\nj ana</w>\nren s</w>\ndar ies</w>\no asis</w>\ndisc ounts</w>\ncoun cil\ni ka</w>\nshir ley</w>\nvou cher</w>\nal ps</w>\nw x\nq r</w>\ndri ft</w>\nattemp ting</w>\nut c</w>\nØ ª\ngonzale z</w>\nm f\njo ker</w>\nparalle l</w>\npa re\naspe cts</w>\nproce du\nn p\nam a\nrale igh</w>\nbright en</w>\ngu ire</w>\nradi ation</w>\ncre scent</w>\nho b\nil le\nstr and\nv ore</w>\nn ard</w>\nche st\ndi wali</w>\nav atar</w>\nal der\nd ling</w>\npa thetic</w>\nðŁĴ ĺ\nspir it\njor ge</w>\nfilm making</w>\nðŁĻı ðŁĻı\nchalleng er</w>\nb j</w>\ndown town\nht ml</w>\nade qu\ntwi sted</w>\nin ely</w>\n( '</w>\nwra ps</w>\noper ational</w>\ny ne</w>\nn us</w>\nmag net</w>\nmarket place</w>\nhealth ier</w>\nsnap shot</w>\ndam on</w>\ninter ven\nfe derer</w>\now ls</w>\nbiscu its</w>\nj p\nro deo</w>\nblue berry</w>\nlec tion</w>\nfron tier</w>\nsumm ers</w>\nre yes</w>\npede strian</w>\ngo l</w>\ncaf fe\nrefur bi\nbou lder</w>\nme ghan</w>\nspeci alty</w>\nla ss</w>\ne i</w>\nsuspec ts</w>\nappro x</w>\nrr r</w>\nra th\nst im\ncru shed</w>\nhe d\nwh un\nlo af</w>\ncr ore</w>\nriver a</w>\ngene tics</w>\nso ck</w>\nwa sted</w>\nny pd</w>\nansw ering</w>\ndo ve</w>\nbel la\nol in</w>\ndu n</w>\nfi ji</w>\npre tty\nspar kle</w>\ny un</w>\nj d\neuro pa</w>\nli fts</w>\nam ber\nmu r</w>\nte k</w>\nboy d</w>\nroy alty</w>\nin do</w>\nri b</w>\ngo tham</w>\nti est</w>\ninst alling</w>\nke mp\nthe photo\ncos mic</w>\n) ))</w>\nwhole sale</w>\nloy ment</w>\neas y\nsu ing</w>\nsett led</w>\naf p</w>\npro ver\nsuppor tive</w>\nre es</w>\nne ath</w>\ndeli ber\nc Ã©</w>\nwel come\npic oftheday</w>\nnew born</w>\npat ty</w>\nsun s</w>\nsi est</w>\nfl int</w>\ndiffe rently</w>\nspo ilers</w>\ntroop er</w>\ng ins</w>\ncor y</w>\nlook out</w>\nequi pped</w>\nta pe\nto by</w>\nresear cher</w>\nu sh</w>\nke yes</w>\nal ma</w>\ninduc tion</w>\nk w</w>\nk har\nsl ick</w>\nbri de\ne ur\ncra ving</w>\nbook ings</w>\nch es\ntr unk</w>\nvern on</w>\nsp her\ncryst als</w>\nrel atively</w>\npom pe\nuni ons</w>\nval ley\npar a\nw ant\nok c</w>\nde af</w>\nser gio</w>\nlen non</w>\nsh ay</w>\ncr a</w>\nv at</w>\nhe e\nt we\nliqu id\npol y</w>\nðŁİ ģ\nb ent</w>\nbe aring</w>\nmotor sport</w>\nbar be\nte sti\nhan i</w>\nfin ancing</w>\nastron aut</w>\nwater colour</w>\nri sh\ncomic con</w>\ngar t\nwr ong\nber n</w>\nit an</w>\nste pped</w>\nfil ters</w>\nc low\nme x</w>\ndem ons</w>\nall o</w>\nexpand ed</w>\ncomm and\net ers</w>\ngo ats</w>\nsi ri</w>\ny r\npot tery</w>\nmari on</w>\ni le\nel an</w>\nsan to</w>\nperson a</w>\ndu ke\nhom eless\nli ghted</w>\nwheel er</w>\nchang er</w>\ncab bage</w>\nsur real</w>\nham burg</w>\nsma shed</w>\nstr an\nk not</w>\ni art\nob i</w>\nbe dro\ndi al\nth ick\nb ingo</w>\nfu s</w>\nvacu um</w>\ncon ve\nati ve\naccur acy</w>\naccoun t\nre fer\nri z\nspider man</w>\nban a</w>\nr ite</w>\nu b\nab s\nmedic al\nlin k\nsi em\n> >>></w>\nbe tra\ng lowing</w>\nre actions</w>\npupp et</w>\nspa ghetti</w>\nang s</w>\nre medi\npray for\nroy ce</w>\nchar lotte\n£ ï¸ı</w>\ngh et\naffe cting</w>\nro de</w>\nsoci alist</w>\nmo ses</w>\naz i</w>\no it\nre porters</w>\ncd t</w>\nap ing</w>\ns nat\nminim al</w>\nwa ist</w>\nsie ge</w>\n>> >>\nri g\nschmid t</w>\nh are</w>\nec a</w>\nthor n</w>\nhe mp</w>\nes the\ncly de</w>\nth a\ndon ut</w>\nmoham ed</w>\nling erie</w>\nle gg\ncarpen ter</w>\nperform ers</w>\nde a</w>\nimag ined</w>\ncur se</w>\nla sh</w>\nct r</w>\nagu a</w>\nro ar</w>\ngr i</w>\nro le\nj fk</w>\nresur rec\nroosevel t</w>\nmaril yn</w>\nsm alle\nwill is</w>\nwa ited</w>\nchar ities</w>\nthe res</w>\nli k</w>\norigin al\ncar i\nc ough</w>\ncru ci\nla gun\ncontra st</w>\nk ou\narm our</w>\nre moving</w>\nt ent\nmaz da</w>\nbri ghter</w>\nthi ef</w>\ncor ner\ntequ ila</w>\nbuzz ing</w>\nal bi\np am</w>\naz ure</w>\ndisc oun\npixel art</w>\npossi bility</w>\nham ont</w>\ntra des</w>\nbu da\nhi ve</w>\nvers y</w>\nfin ch</w>\ntran spa\nem i</w>\nterri fying</w>\nin qui\ng ba</w>\nsub stitu\ncollec ti\nplac ing</w>\ncin dy</w>\nk ann\npa tho\ndiamon d\nmour inho</w>\nguine a</w>\nanthro po\nair s</w>\npu mps</w>\nì ļ\npas o</w>\ncur ling</w>\nan ita</w>\nresi dency</w>\nne wh\njo on</w>\ncigare tte</w>\nque ue</w>\nex trac\ngam es\nspl en\nex press\npublic ly</w>\nbon nie</w>\ntribun e</w>\nba ek\nreason able</w>\nc or</w>\ntimo thy</w>\nshe eran</w>\nÄ ±\nf dn</w>\nsu tton</w>\nconcentr ation</w>\ncarav an</w>\nx avier</w>\nal ger\ncy lin\nfreder ick</w>\nner ve</w>\npe ak\nlettu ce</w>\nj ail\npre game</w>\nkav an\nup graded</w>\neco logy</w>\nsquad ron</w>\ngra pes</w>\ngoo g\npa stry</w>\nðŁĹ £</w>\nãĥ¼ ãĥ\nmil ano</w>\nawa z</w>\npresen ter</w>\nðŁĮ ¿</w>\nher d</w>\nking s\ntem plate</w>\nfl our</w>\nh v</w>\nk ley</w>\ni ya</w>\nspe c</w>\nat er\nfrankfur t</w>\nco ch\ntex ting</w>\ndel i</w>\ncommuni st</w>\nregi ment</w>\nele anor</w>\nanticip ated</w>\nðŁĳĮ ðŁı»</w>\nthephoto hour</w>\nran o</w>\nsurvi ving</w>\nsimul ation</w>\ndaw son</w>\nar in</w>\naqu a</w>\nm or</w>\nâĢ¦ .</w>\ncin o</w>\nira qi</w>\nsh az\ndun dee</w>\nwe s\ndra u\nhann ah\ns news</w>\noccup ation</w>\nste en</w>\nx m</w>\nang les</w>\nsett ings</w>\ngur u\nkno x\nor ca</w>\nshap ing</w>\nw ent\ndr illing</w>\nzz ie</w>\nbr i</w>\nkis sing</w>\nfin d\nma ine\nâŃĲï¸ı âŃĲï¸ı\nðŁĮ į</w>\nlar ry\nbu sted</w>\nta vern</w>\nacti vely</w>\n- \"</w>\nreplac ing</w>\nno d</w>\nun lock</w>\n. \"\nâŀ ¤</w>\naffili ate</w>\nto w</w>\nl n</w>\nhappy newyear</w>\ndi f\nj m</w>\ngreen wich</w>\ncontro versy</w>\ndaw g</w>\ncon dol\nsav annah</w>\ncompens ation</w>\ntouch down</w>\nte o</w>\namb itious</w>\nembro i\nconvic ted</w>\niart g</w>\nbar ack\ntr ance</w>\ntestim ony</w>\nau dition</w>\nthum b</w>\nmy ths</w>\nbe x\nque z</w>\norch id</w>\nden y</w>\nentit led</w>\nhoo d\ngr ant\nin box</w>\nblue jays</w>\nr illa</w>\nsmalle st</w>\nbur den</w>\nin famous</w>\ndivi ded</w>\nboun daries</w>\nt ter\nel t</w>\nwy oming</w>\nbe verage</w>\nme sm\none ws</w>\nbudd hist</w>\ny ana</w>\nas sad</w>\nis ms</w>\nbar rett</w>\npredic ted</w>\nback to\ntw it</w>\ne there\ncap tains</w>\nescap ed</w>\nay o</w>\nlam borgh\ngard ner</w>\nla ps</w>\nk al</w>\nadverti sement</w>\ninsec ts</w>\nna po\nam en\nac y\nr and</w>\ng k</w>\nte h\nk athle\ntri dge</w>\npan cake</w>\nat ro\npyram id</w>\nbu la</w>\nparal ym\ngau ge</w>\nen cies</w>\ntom y</w>\nbiscu it</w>\nbut cher</w>\nquali fier</w>\ncoun ty\nke i\npo ols</w>\ndar ker</w>\nshould ers</w>\nðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸\nsp re\n( \"</w>\nwrit ers\ng m\nðŁİ ĵ</w>\nk nit\nhu ff\nmt b</w>\nphilli es</w>\no st</w>\nden is</w>\ng art</w>\nlicen sed</w>\ninter face</w>\nex cel</w>\nd well</w>\nfrom the\nco fficial</w>\naz zi</w>\nappear ing</w>\nfore st\nn ana</w>\nke ith\nmanufac turers</w>\nbeck ham</w>\n) ?</w>\ne se\ncol ony</w>\ndelic ate</w>\nut ter\nmc in\ntranspl ant</w>\npre ferred</w>\npar d</w>\nari e</w>\nhu b\npo ds</w>\nperspec tives</w>\npic t</w>\ndel u\napp er</w>\nbe than\np mo\ncrimin als</w>\nfemin ism</w>\nsh ack</w>\ncircum stances</w>\nfel las</w>\nprote sting</w>\nwa x\nsugge sted</w>\nt ator</w>\ndre w\nom ni\nfa ke\nkath y</w>\nre b</w>\ndel ine</w>\nber ni\nmi sty</w>\nðŁĳ ©\ner able</w>\nbreak through</w>\nmen swear</w>\nmillenni als</w>\nchan yeol</w>\nla z\ninser t</w>\nrep lies</w>\nphra se</w>\nn x\nihear tawards</w>\naudre y</w>\ngran ite</w>\nrac ec\nori e</w>\nter ra</w>\ninnov ations</w>\nbritt any</w>\nat eral</w>\npe ar</w>\nbio logical</w>\nsh ments</w>\ninstitu tion</w>\nm sn\nfrequ ency</w>\nd man</w>\nneg lec\nt f\nste fan</w>\nfox news</w>\nty po\ncomm s</w>\nsequ ence</w>\ncar men</w>\nwh ites</w>\neconom ist</w>\nexe ter</w>\nse um</w>\nre sorts</w>\ncas ually</w>\nbun de\ndivi de</w>\nØ ¹\nga g</w>\ncre ed</w>\nreti re</w>\ncau cus</w>\nrapi ds</w>\nwrestle mania</w>\ntul sa</w>\nsunder land</w>\nfundam ent\no di</w>\nyam aha</w>\nv ary</w>\nintri gu\nel se\nbe acon</w>\nan gie</w>\ntra ded</w>\ntran sm\ng ents</w>\nkn itting</w>\ngal ac\nðĿ Ĺ\nu to\nsea side</w>\nhol t</w>\nre rs</w>\nfar go</w>\ntrain ers</w>\nmon soon</w>\nb ale</w>\nsou ght</w>\nmad die</w>\nh w</w>\nco li\nfr an</w>\nfav s</w>\nðŁĴ Ķ\nint ent</w>\nr ally\ns bs</w>\nlemon ade</w>\nbarack obama</w>\nbre ad\nstick y</w>\nexplo sive</w>\nchel ten\nt j\nas soc</w>\nram en</w>\nhom ies</w>\nv log</w>\nmi ster</w>\nlor d\nâĢįâĻ Ģï¸ı\naly ssa</w>\nsketch book</w>\nru mble</w>\ncat ch\nmigr ant</w>\ndiscipl ine</w>\nun likely</w>\nchronic les</w>\nfl ora</w>\nsl ams</w>\nam id\ns boro</w>\ncoo p</w>\nju mps</w>\ntran qu\nmel is\nsof ia</w>\nen ri\ngab e</w>\nsy ri\nnicol as</w>\ncha i</w>\nw v\nbe cky</w>\nfoo ty</w>\nta o</w>\nsuppo se</w>\nðŁĺįðŁĺį ðŁĺįðŁĺį</w>\nplu sh</w>\nri sh</w>\nðŁ¤ ĵ</w>\nk ha</w>\nsatur days</w>\nac cent</w>\nhe c\nlim it\ncarl ton</w>\nwi red</w>\ntaylor swift</w>\nðŁĺ ĳ</w>\nsq l</w>\nhar ro\nrecipi ents</w>\ng at</w>\ngo p\nth of\namaz ed</w>\ngh an\nðŁıĨ ðŁıĨ\npor to</w>\ncla re\ndi stant</w>\nna c</w>\nohi o\nðŁĻı ðŁı¼</w>\nmt n</w>\nanti bio\ndino sa\nme sa</w>\npar tial</w>\nb v\nlear nt</w>\nlov ato</w>\nquesti on\nex tract</w>\ngossi p</w>\ngi bb\nniag ara</w>\nðŁĳ ¨\ndispla yed</w>\nso oner</w>\nste vie</w>\nnug gets</w>\nml n</w>\nbro m\ntur b\ngive aways</w>\nstu pi\nbl ink</w>\nc ili\nconven ient</w>\nmo h\nvi ve\nf ric\ncau se\ncham ber\ncu les</w>\nne arest</w>\nis se</w>\nsmall biz</w>\nt j</w>\ncanadi ans</w>\nsmar ter</w>\nbra sil</w>\nra re\nque tte</w>\nw ha\ncand le\nat omic</w>\nðŁĳį ðŁĳį</w>\nwarri or\nrelax ed</w>\nstri ps</w>\nne ur\nk ka</w>\nr fc</w>\njen sen</w>\nreco vering</w>\nrespon ses</w>\nsal am\northo dox</w>\nacti ve\nell ers</w>\nn it</w>\nâŃ Ĳ</w>\nmetro politan</w>\ncentu ries</w>\nvi da</w>\ngra ding</w>\ntranspa rent</w>\nsim ple\ndo ts</w>\nsuperint endent</w>\nelev ator</w>\nautom ated</w>\nred skins</w>\nima m</w>\nsummer time</w>\njona than\nge aring</w>\nmichel le\nconfl ic\nm ice</w>\nto te</w>\npubli sh</w>\npa x</w>\n) -</w>\nna iled</w>\ná ´\ntele scope</w>\nser bia</w>\nba b</w>\nape u\nst ically</w>\nsen ti\nr ats</w>\nisol ated</w>\ngrou p\nhat red</w>\nparanor mal</w>\nstan ley\nali on</w>\nsafe ty\nl s\nà¤ °</w>\nnex us</w>\nalexand ra</w>\nmas ks</w>\n+ +</w>\ntr on\nau k</w>\nbrother hood</w>\nbrow se</w>\nmix es</w>\nsim one</w>\nmu sk</w>\nappro ve</w>\nlo la</w>\nex p</w>\nper th\nfu turi\nun seen</w>\nd m\nchel se\nsc outing</w>\no we</w>\nportsm outh</w>\nk ram\nmi ze</w>\ndi spen\nsu p\nd lc</w>\nadver t</w>\ntere sa</w>\nis le\ncy cle\nmet all\nshi elds</w>\nmarin ers</w>\nra z</w>\ning en</w>\nfun d\nan go</w>\njon es\no ka</w>\nmad den</w>\nbroc coli</w>\ndomin ic</w>\nsitu ations</w>\nmer o</w>\ncric ke\npuni shment</w>\nd b\nsha king</w>\nðŁĺ ļ</w>\nm q\nari ans</w>\nle h\ncla w</w>\nwe ds</w>\nd ure</w>\nni el\nj elly\ngour met</w>\ntra ders</w>\nle vi</w>\nw ages</w>\nkne es</w>\nwi se\nheaven ly</w>\navi d</w>\nmelo dy</w>\nz ack</w>\nban anas</w>\napprentic e\npro p\nfun ny\no de\nrespec ted</w>\nme gan\nfe wer</w>\ndra fted</w>\nmed it\ngra pe\nus army</w>\ncru sad\nvo cali\nprepar ations</w>\nnon sense</w>\nus age</w>\nth r</w>\nro th</w>\nwiz ards</w>\ninsi de\npromo tions</w>\nmon a</w>\nred sox</w>\nsi g</w>\neleg ance</w>\nch ia</w>\nuniver sal\nãĢ į</w>\nra ja</w>\nun ga</w>\npol lin\nfilip ino</w>\nak a\nt sun\nik on</w>\nbi king</w>\ndecor ations</w>\nz ac</w>\ncade ts</w>\nhum our</w>\nag m</w>\nre ppin</w>\nvac cin\nelo ve</w>\nu w</w>\ndia be\ngalla gher</w>\naz er\ndo l</w>\na while</w>\npro minent</w>\nwel sh\nt ann\n' )</w>\nbi en\nwa g</w>\nin al</w>\nc wc</w>\nwic ket</w>\nur st</w>\nq anon</w>\nx e</w>\nout door\ndun n</w>\nstar r</w>\nco logy</w>\nric ky\nu efa</w>\nreb ounds</w>\ns music</w>\ninf ant</w>\nðŁĻ ĭ\nso p</w>\nu mber\nhand ing</w>\nbeg in\nsor ting</w>\nha sh</w>\nsp ati\nre k</w>\nbuda pest</w>\nblack hawks</w>\ndele te</w>\nro m</w>\ncan did</w>\nauth ori\nde bris</w>\nspe cul\ninter section</w>\nmarri ott</w>\nim ran</w>\nðŁĺģ ðŁĺģ</w>\ncru ises</w>\nram sey</w>\nrafa el</w>\naware ness\nvas cular</w>\nbeyon cÃ©</w>\nru g</w>\nðŁĺ Į\nfesti v\nar am\ns able</w>\nbas il\np ill</w>\nflo oring</w>\nun beaten</w>\nimplic ations</w>\nu f</w>\nw ound</w>\nfor ge</w>\npoin ting</w>\npo ts</w>\npopular ity</w>\nðŁĳı ðŁı»\nmani pul\ns lots</w>\ndeb ates</w>\nabs ence</w>\nver mont</w>\nnever forget</w>\nwri st\ngl oria</w>\nren ce\nhu sk\nmel ting</w>\nðŁİ Ł\nbr aces</w>\ntim ely</w>\ntransform ing</w>\nam ps</w>\nma k</w>\npo e</w>\nah an</w>\ngener ally</w>\nnd p</w>\nale ppo</w>\nunic ef</w>\npro fs</w>\nnor d\nma sk\njackson ville</w>\nv v\nsh ells</w>\nbloom ing</w>\noper ators</w>\nchar coal</w>\nne ville</w>\nma gi\nchi p\nsam a</w>\nir an\nre forms</w>\naccu mul\nru e</w>\næ ľ\nweb sites</w>\nga on</w>\ndevast ating</w>\nsto s</w>\nglaci er</w>\nra pp\nchipot le</w>\npr a</w>\nor ous</w>\nrom ney</w>\nseas on\ndecor ative</w>\nc isco</w>\ndit ch</w>\ncompla in</w>\nll o</w>\nassu me</w>\nðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤ</w>\nn els</w>\ncent ric</w>\nft w</w>\ncar rots</w>\ntat a</w>\ncan ter\nper ience</w>\nli ers</w>\ndemo s</w>\nbl unt</w>\noper ate</w>\nreserv ations</w>\nle ah</w>\nsub stance</w>\ndi son</w>\nan te\nelec tion\nv ue</w>\nsqu are\nnon profit</w>\nca a</w>\nf su</w>\ny am</w>\nãĤ ¤\nv ladi\ncomple tes</w>\nmar i</w>\nphilli p</w>\nne ill</w>\ner as\nka it\nmen do\nmahar ashtra</w>\ng p\ndan e</w>\nprovi dence</w>\nther apeu\njuven ile</w>\nme mo</w>\nin corpor\naa aa</w>\nseven teen</w>\nteen ager</w>\nÃ £\nor ns</w>\nwi de\ncu teness</w>\ntw d</w>\nff les</w>\nbar a</w>\ncom edy\nover time</w>\ny az\nbar on</w>\nunemp loyment</w>\nðŁĳ ĭ\nexter ior</w>\nden se</w>\ncent res</w>\nmatch up</w>\nhistory month</w>\nartif icial\nqu it\ne sk\nwar n</w>\ncr itic</w>\nj af\nðŁĵ ²</w>\ninform ative</w>\nfu els</w>\nrecy cle</w>\nnam ing</w>\nstri pe</w>\nsol ic\nmole cular</w>\ndee pi\ncon vo</w>\ns sel</w>\nna e</w>\nde scent</w>\nti z</w>\naccoun tability</w>\nter ry\nr ito</w>\nsl ay</w>\nem o</w>\ndem ol\nsens ation</w>\nco v\ntor e</w>\nround table</w>\ny ol\nexcu ses</w>\nà¥ į</w>\ntur quo\nhh hh\npod casts</w>\ncele b</w>\nme ssi\nli o</w>\nman n\ncontribu ted</w>\nu z\ngener ator</w>\nele ts</w>\nveg gie</w>\nindu l\nen suring</w>\ndetro it\npun jab\ntran spor\ninstru ction</w>\nad d\npor cel\npan eli\ncir cles</w>\npersi st\nclay ton</w>\nsp n</w>\ndog softwitter</w>\nis nt</w>\nsp r</w>\nretail ers</w>\np w\nhun gar\nel ena</w>\nmon aster\ngu atem\nje ssie</w>\nan z</w>\nra shi\nfle e\ncar ving</w>\nfau x</w>\nl al</w>\nhen ri\nd jo\ndu ll</w>\ns ana</w>\nlar a</w>\nglo be\ncri mson</w>\ncom pass</w>\npau se</w>\nna b</w>\nlion el</w>\nba ths</w>\nu fo</w>\ninvent ory</w>\nsin gh\nsat an</w>\nðŁĩ ¸\nce ments</w>\nin form</w>\ngener ated</w>\nbi den</w>\nav g</w>\ntas ks</w>\nde er\nsa u</w>\nja iled</w>\npa stel</w>\nsc c</w>\nna il\nsteel e</w>\nper is\nlamborgh ini</w>\npur sue</w>\nmar gin\nu ch\nbo sch</w>\ndra in</w>\ncl ara</w>\nbo m</w>\nlat ino</w>\nweb ster</w>\nrose mary</w>\nr ha\ns oun\nbillion aire</w>\nnot ch</w>\npercent age</w>\ncon or</w>\n' \"</w>\nhom es\nearth day</w>\nh ort</w>\nbig gest\ndi sin\nwal ton</w>\nedit ors</w>\nim ma</w>\nom ar\nequi valent</w>\npharmac eu\nah med\ncam eo</w>\nhan ni\nunder rated</w>\nge ment</w>\nmicro bi\nv oo\nhonor able</w>\nobe sity</w>\nâļ ¡ï¸ı\nlimer ick</w>\ninvol vement</w>\nst agram</w>\nboule vard</w>\nbur g\nblackand white</w>\nliber ation</w>\nfi ve\ninter im</w>\nsm m</w>\nrival ry</w>\ncap abilities</w>\nstat ements</w>\nthu mb\nve d\nsw ans</w>\nbar ber\ne que\nseren a</w>\nhel m</w>\nnoo dle</w>\nsam pling</w>\nn awaz</w>\nsing le\nthunder storms</w>\nsh on\nin ev\në ¯\nto pp\norch ard</w>\nbi an\nðŁĺ Ķ\ndoor step</w>\nsalv ation</w>\nmarke ting\nr ons</w>\ncle mson</w>\nra vi</w>\nin take</w>\nstand with\nsin a</w>\nha iku</w>\nple y</w>\nelector al</w>\nph illy\nla ys</w>\nelectr ic\ncap turing</w>\nu pp\ner gy</w>\nbeliev ing</w>\ncul tures</w>\nes day</w>\ninva sive</w>\ned ed</w>\nspee ch\nend ur\nviet nam\nboy cott</w>\npe de</w>\ndeli ver\nðŁĴĸ ðŁĴĸ\nmer chant</w>\nst ir</w>\nden ies</w>\npoc kets</w>\no ti\ncu ddle</w>\nro land</w>\nmm ed</w>\nden ed</w>\nlear ners</w>\nhoo p</w>\nsour cing</w>\nh acked</w>\ndi m\nenviron ments</w>\nben son</w>\njud icial</w>\nwor cester</w>\npear ls</w>\ngovern ments</w>\narri vals</w>\ncor ners</w>\ntun ing</w>\nla bour\ny m</w>\nor dering</w>\nle wi\ni fe</w>\nhygi ene</w>\nthou ghtful</w>\nindone sian</w>\ncampaig ning</w>\nprinci ple</w>\nassau l\nru bb\nat v</w>\nwil ly</w>\nen tre</w>\nil i</w>\nph on\ndu ties</w>\nâĻ¥ âĻ¥</w>\nsn akes</w>\nlo op\nam ar</w>\nconver tible</w>\nbon ding</w>\nment oring</w>\nmax well</w>\nethere um</w>\ndestro ying</w>\nax is</w>\nca iro</w>\nfin nish</w>\nsho ck\nðŁĺ Ĳ</w>\ncal eb</w>\ncom a</w>\npe dal</w>\nco re\ncontin ent</w>\nel son</w>\ntemp o</w>\nhelsin ki</w>\nac p</w>\ntack ling</w>\nst ated</w>\nbl a</w>\ndou b\nsma shing</w>\na ja</w>\ncamer on\ndisru ption</w>\nwarm th</w>\nbeing salmankhan</w>\nbullet in</w>\no de</w>\nsyrac use</w>\nar an</w>\nmc gregor</w>\nbul k</w>\nan ton</w>\nconfir mation</w>\nsp ine</w>\nim ran\ninstru c\njac ks</w>\nchi o</w>\npal m\nstr e</w>\nembarra ssing</w>\nun t\nelimin ate</w>\nto ss</w>\nc ise</w>\na ws</w>\noni sts</w>\nsh inee</w>\njo s</w>\nho se</w>\nli vely</w>\nopp onents</w>\nmo vements</w>\nrecogni zing</w>\nsandwich es</w>\nsh akes</w>\nexerc ises</w>\nse at\nprofe ssion</w>\nmerry christmas</w>\nlu gg\nadopt dont\nmar vin</w>\nbyr ne</w>\nun le\nhe t</w>\nku wait</w>\nrah man</w>\naspe ct</w>\nhumb led</w>\ngen es</w>\nf and\nlong time</w>\n) ;</w>\ncam pu\nan gus</w>\nðŁĳį ðŁı¼</w>\nq uran</w>\nsle eves</w>\ns lic\n¸ ë\ntwel ve</w>\nyour e</w>\ni ke</w>\ngo gh</w>\nb st</w>\ndic tionary</w>\nreflec ting</w>\nto on</w>\nyar n</w>\nem bed\nðŁı ´</w>\nre serves</w>\nfloo ded</w>\nver iz\ndu sk</w>\nestab lish</w>\npro li\nau d</w>\nritu al</w>\nor bit</w>\ndeclar ation</w>\nrecor dings</w>\ncam o</w>\ncas sette</w>\ngood luck</w>\ncu tter</w>\nbo p</w>\nb ho\nche ating</w>\npaci fic\nma res</w>\ntim er</w>\ncol t</w>\ntr ous\ntomor row\nhan sen</w>\nci e</w>\nw ang\nban i</w>\ncircu lar</w>\nac ute</w>\nfar mer\nco ys</w>\np se\nir ving</w>\nw j\nhaw kins</w>\nb ison</w>\nur day</w>\ncru ising</w>\no te</w>\nk ath</w>\nwhi stle</w>\nyour selves</w>\nant is</w>\nsla sh</w>\nthorough ly</w>\nke sh</w>\nser ie</w>\nex em\nen ig\nguil d\nsh red\nho gan</w>\nap o</w>\nä ¸\npu zz\nne tball</w>\nau ssi\npanor ama</w>\nws j</w>\nav is</w>\nar ming</w>\nhum ph\nbrow ser</w>\ncri es</w>\nfo ggy</w>\nmat te</w>\nðŁĮ »</w>\nit er</w>\ntal lest</w>\nby ron</w>\ncap tiv\nje su\nany ways</w>\nflag ship</w>\np ton</w>\nwe y</w>\nfay ette</w>\nfinanci al\nf oul</w>\nsolom on</w>\njenni fer\ncucu mber</w>\nar gue</w>\ntex tile</w>\nwrest ler</w>\njohn ston</w>\npa stor\nðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃ\ncac tus</w>\nedi ble</w>\nre served</w>\nric hie</w>\nmet res</w>\ningredi ent</w>\nh ella</w>\nun to</w>\nch ol\ncele bs</w>\npo ets</w>\ngra ham\nhay den</w>\ncoinci dence</w>\nb aw\ncommunic ate</w>\nflet cher</w>\n/ -</w>\ntole do</w>\necu ador</w>\ncoun sel</w>\ns laughter</w>\nline ar</w>\nat p</w>\nos u</w>\njo el\nev ed</w>\nconqu er</w>\nru stic</w>\nplic ity</w>\nrecogn ise</w>\nroom mate</w>\ncr acked</w>\njas per</w>\nph er</w>\nðŁĮ º</w>\nwo ven</w>\nmo ist\nff c</w>\nste ering</w>\nni sh\nstand ings</w>\nfrequ ent</w>\nar di</w>\nhaz el\nas msg</w>\nbau m</w>\nd art</w>\nsi dd\nnat h</w>\nch ero\ncard board</w>\nc ss</w>\nn sfw</w>\npa ir\nðŁĺį ðŁĺĺ</w>\noccur red</w>\nhomeless ness</w>\nmal one</w>\nph e</w>\nxi a\npad dy</w>\ndecl are</w>\ntheat re\nb f\nper sian</w>\nta d</w>\nax e</w>\nsusp icious</w>\nlam b\nmu cho</w>\nsen ior\nst as</w>\nk ite</w>\nst ing\ngra d\nk af\nwat ering</w>\nØ ¯\nspi ral</w>\nth ms</w>\neduc ator</w>\njer ome</w>\nof c</w>\nclo ck\nsu l</w>\npe mb\n.... .....</w>\npark way</w>\nde aux</w>\nrestric tions</w>\nm ons</w>\nneed le</w>\ne j\nle agues</w>\nwater melon</w>\nam an\npl enary</w>\nmax im\nw ab\ncoming soon</w>\nbry ce</w>\nvi gil</w>\nsuper market</w>\nfortun ate</w>\nturquo ise</w>\npresi dent\nli v</w>\ninter ns</w>\nfeel in</w>\nfix tures</w>\nstun t</w>\nst aged</w>\npremi eres</w>\nlo k\nprac titi\nshor tage</w>\nlog ne</w>\nve c\ncon cor\nroc ke\nli g\ncom posed</w>\nsyn thetic</w>\ndi p\ncam ila</w>\nch is\nj ou\nsu san\neye brows</w>\nsupp lement</w>\nsatis faction</w>\nmoham mad</w>\nti bet\nhouse of\npu n</w>\nas sam</w>\nshado whun\npsy ched\nse duc\nmand atory</w>\nher bert</w>\nsc allo\nstream ers</w>\nproto col</w>\nblock buster</w>\nproduc es</w>\nsch nei\nlau rel</w>\ntri be\ntime hop</w>\npl a</w>\nmod elling</w>\ntv time</w>\nmtv stars</w>\nwi dow</w>\nme tric</w>\nch am</w>\ncon do</w>\nflow ering</w>\nale c</w>\nd ms</w>\ninten sity</w>\nÂ ¨\nmccar tney</w>\nislam abad</w>\nk b</w>\nf fi\nph al\nanal og</w>\nf ond</w>\nh acks</w>\npositi vity</w>\ntreat y</w>\nsub marine</w>\nconne ct</w>\nsel en\ncategor ies</w>\ncu b</w>\norgani ze</w>\nsi k\nquote oftheday</w>\nremin ding</w>\nam or\nloc king</w>\nðŁĳı ðŁı¼</w>\ncomp ound</w>\net te\nb out\nrec ur\nfe rence</w>\nmi zz\ntren d\nhip ster</w>\nfor tress</w>\nforth coming</w>\npreli min\no dyssey</w>\nang p</w>\ndel ici\neven ings</w>\nðŁĶ ¹</w>\ni q</w>\nd w</w>\nda ir\nkathr yn</w>\nchristian ity</w>\nmoon light</w>\nha b</w>\nwh oo\nf bf</w>\nse th\ngenu inely</w>\npa x\nchar ity\ndeplo yed</w>\nb nb</w>\nbu cs</w>\nju dg\ncon ge\nplant ation</w>\nim press</w>\ncar a</w>\nsc lub</w>\nsco py</w>\nland ers</w>\ncompla ints</w>\nb ama</w>\nre build</w>\nx y\nreal ism</w>\nsh our</w>\nle in\nbrac elets</w>\nmer a</w>\nassas sin</w>\nan chor\nðŁĳĮ ðŁı¼</w>\nlin en</w>\ncon fron\nchronic le</w>\ncomm ent\ncat alog</w>\nil les</w>\ngor ge</w>\nme try</w>\njung kook</w>\nlove my\nsent in\nse em\nfit ness\nalli ed</w>\nts man</w>\ndigital transformation</w>\npr an\nlo ft</w>\nmin ton</w>\nalden richards</w>\nen vel\ncher ish</w>\ncertain ty</w>\nzz z</w>\nrhin o</w>\nper kins</w>\nen rich\ncape town</w>\nome ter</w>\nsec tions</w>\nske leton</w>\ndef enders</w>\nðŁĺ Ŀ\npen c\nbri t</w>\nja h\ncapital ism</w>\nðŁ¥ ĩ</w>\nbaz aar</w>\nre me\nex t</w>\nkk k</w>\nconver t</w>\nstor my</w>\nb ye\nkar an\nchry sler</w>\nad os</w>\npre ssed</w>\nsyn c</w>\nation day</w>\ndang er\nbad ges</w>\nrefu ses</w>\nem powering</w>\nly m\nex ports</w>\nadoptdont shop</w>\nðŁĩ ¯\nth c</w>\nawa ited</w>\nfocu ses</w>\nfin ed</w>\no at\nhaha hah</w>\nâģ ©\nn family</w>\nfi ona</w>\nluck ily</w>\nthr illing</w>\nty ping</w>\nout break</w>\ndi es\nhe u\ncraw l</w>\nne sses</w>\no ath</w>\nscri pts</w>\ngee ks</w>\nðŁĲ Ŀ</w>\np b\nmathemat ics</w>\nal is</w>\n________ ________\ngymna stics</w>\nacti vism</w>\nrecommend ation</w>\ngre n</w>\nwa in</w>\ncour ty\nn apol\ncau li\nhor nets</w>\ng als</w>\njo ckey</w>\ndir ty\nat ar\nenor mous</w>\npe st\ngreg ation</w>\nan os</w>\nii ii\ndef ends</w>\nblack historymonth</w>\nat x</w>\nmb c</w>\nlugg age</w>\nwit ch\nco b\nla sts</w>\ncu m\ngg g</w>\nba thing</w>\nn ar</w>\nce bu</w>\nðŁį ĥ</w>\nnavig ation</w>\nmin e\nre jo\nðŁİ Ģ</w>\ngif tide\nre ta\nuse less</w>\npu ll\ndefic it</w>\nal lu\nati me</w>\nit v\ntr illion</w>\npu e\nac ies</w>\nproce dure</w>\nl ori\njen ny\nc ad</w>\nul ously</w>\ndr ac\npromo tes</w>\ning the\ncan u\nwoo hoo</w>\nna omi</w>\nzar dari</w>\nts u</w>\nbe ir\nsd g</w>\nle ver\nwe ber</w>\nab ud\nlun d</w>\ncrow ded</w>\ndeplo yment</w>\nter rain</w>\nken ny\nho f\nwitne ssed</w>\nlo ch\nj k\nbul ly</w>\nw ren\npoe try\ndo ff</w>\nww i</w>\nmo red</w>\ndin i</w>\ncul ture\npromp t</w>\nÂ ¥</w>\nmaur ice</w>\nto pps</w>\nr m\ncor respon\nab out\njewel s</w>\ngi br\neag le\nðŁĺĺ ðŁĺĺðŁĺĺ</w>\nl ending</w>\nsou ven\nç Ķ\ncontemporary art</w>\nestabli shment</w>\nj ong\nâĢ¦ \"</w>\ngat or\npatri otic</w>\nmc coy</w>\nv ape</w>\nhuman e</w>\nfeli z</w>\ncoach ella</w>\nre posting</w>\nste als</w>\nfu ller</w>\nn ering</w>\nat ra\n( -</w>\nbla ke\nhe ather\nwor ms</w>\ndiscipl inary</w>\nrede mption</w>\ny ard\nam in</w>\n\" @_</w>\nd nc</w>\nt ds</w>\nk appa</w>\nne wark</w>\ncomm its</w>\nspe ars</w>\nj ams</w>\nt and\nmsn bc</w>\ninter medi\naim ed</w>\nat ic\nteen th</w>\nobserv ation</w>\nkash mir\nkavan augh</w>\nou l\nsan francisco</w>\nre u\nbel ated</w>\ncho w\npass word</w>\nst ills</w>\ndeta ined</w>\nsar i</w>\nday ton</w>\ndar ren\nitali an\nar th</w>\namu sic</w>\nar bit\nw m\nv m</w>\nhe m\ndou g\nmy r\na sho\npre v\nvin d</w>\nbra h\nsta g</w>\nà¸ µ</w>\npre views</w>\ngu k</w>\ncon taining</w>\nleon ardo</w>\nsad dle</w>\nru shing</w>\nst av\nlon gh\ngam bling</w>\nve gas\nreserv ation</w>\nend ale</w>\nbal a</w>\nfl a</w>\nvari ant</w>\nhe dge</w>\nbulgar ia</w>\nnat ali\nwe aver</w>\nsol st\nencoura ged</w>\nap c</w>\nas parag\nne st\ncycli sts</w>\nfe l</w>\nìĬ ¤\noverwhel ming</w>\npey ton</w>\nj it</w>\na post\nmb le\nble eding</w>\nneighbour hood</w>\na very</w>\nexpre ssions</w>\nmac donald</w>\ngi gs</w>\nmon ds</w>\nillu sion</w>\nn ct</w>\ncam ero\nover head</w>\nmy th\nol y\nvi o</w>\net v</w>\nlau rie</w>\nunve iling</w>\npri or\ncon n</w>\niron man</w>\ndi ff</w>\nday in\ncrit ici\ncon go</w>\nre vision</w>\nwal e</w>\ndirec tor\np ines</w>\nblack pink</w>\ngar ner</w>\ncur ated</w>\nmanit oba</w>\nh ac\ncommon ly</w>\nbar ton</w>\n.... #</w>\nmor tality</w>\nlive smatter</w>\nphilos op\nshor ter</w>\ncon vince</w>\nfre ak\nvend ors</w>\ninsi ghtful</w>\nel ly</w>\nsens ors</w>\ne led</w>\ns berg</w>\nweight loss</w>\nu kip</w>\nsp ur</w>\npriv ate\nqu a</w>\nss c</w>\n, ...</w>\nsupervis or</w>\nadvis er</w>\namaz ingly</w>\nless er</w>\nat es\nmah on</w>\noooo oo</w>\nsar as\npmo india</w>\nwaff le</w>\nun ders</w>\ntoler ance</w>\nsculp tures</w>\nher sh\nkno cking</w>\nsmo ke\ncathol ic\ngri m\ntra veled</w>\nfli p\nge off</w>\ndinosa urs</w>\nsle pt</w>\nscar let</w>\nok i</w>\ncompla int</w>\nob sc\nnam i\nla g</w>\ncross fit</w>\nu fc\nmc cain</w>\nrefe ree</w>\nsad ness</w>\npen ny\nli eu\nmo de\nki er\nvol s</w>\nw is</w>\nel on</w>\nshe a</w>\nba o</w>\nson ia</w>\ncla ire\nem manuel</w>\nmoist ure</w>\ndi gest</w>\nvi ii</w>\nt eller</w>\nch on\naccess ory</w>\nnight club</w>\nfoss il\naw an</w>\nhu sky</w>\nab original</w>\nbrand on\nffici ent</w>\ncou gars</w>\nste d\nad mitted</w>\nigno red</w>\ncontent marketing</w>\nag as\nv ase</w>\nexecu ted</w>\nnegoti ations</w>\nshe ad</w>\nn and\ntab lets</w>\ngo th</w>\nts al</w>\nd fw</w>\non ep\nprotec tor</w>\nsp ho\ngaz ette</w>\nandre as</w>\nss er</w>\ncomp ilation</w>\nha v</w>\ncontain ers</w>\nbro ker</w>\nsoc al</w>\nporcel ain</w>\nhy uk</w>\nair ing</w>\nðŁĴ °\npubli sher</w>\nscen ario</w>\nspart ans</w>\nre viewing</w>\nitu des</w>\ned el\npear son</w>\nba sh\nmau i</w>\na ad\nðŁĮ Ĭ\nli u</w>\nul ate</w>\nprogram mes</w>\nfav our</w>\nweb design</w>\nreal ty</w>\nmotiv ational</w>\ncro sses</w>\n' ...</w>\nbus ch</w>\nadjust able</w>\nar jun</w>\nmist ak\ndimen sion</w>\npi stol</w>\nweigh s</w>\nen y</w>\nunve il</w>\nindy car</w>\ngor don\nf ade</w>\nfran ken\nqual ities</w>\nbet t</w>\nloc ate</w>\nker r</w>\nsp c</w>\nconfu sion</w>\nne e\nluck y\nbas es</w>\ndep ends</w>\nfire fighter</w>\nol a\nre t\nmar oon</w>\nðŁĶ Ĭ</w>\nw am\ndefin ing</w>\nwhe at\nbi l</w>\nÃ© s</w>\nb hai</w>\npsy ch</w>\nta u</w>\nic ans</w>\nthi k</w>\nob ile</w>\ninspec tor</w>\nìĨ Įë\nill on</w>\ngo s\nev angel\nfa i\nsi st</w>\nvoc ation</w>\nbur ge\nchi stan</w>\nrenew ed</w>\nenthusi asm</w>\nen ting</w>\nag ri\nike a</w>\nm sc</w>\naero space</w>\nsens iti\nmemo ir</w>\nhosp ice</w>\nco caine</w>\nder ry</w>\nmechan ics</w>\nĦ à¸\ntin o</w>\nreduc es</w>\ncollec tors</w>\nin justice</w>\nsupp re\nv ana</w>\nab un\nnap a</w>\nsu sa</w>\nos lo</w>\ne ff\nen core</w>\nlic ence</w>\nched dar</w>\nz al\nmoun t\nðŁĴ Ĳ</w>\nthreat ens</w>\n!! \"</w>\narchi e</w>\nfu tsal</w>\nscu ba</w>\njo s\ngn on</w>\nse xi\ns official</w>\ncompar ing</w>\ndomin ant</w>\ntof theday</w>\nfa it</w>\npropos als</w>\ngi ft\ny as</w>\ncn c</w>\nl r\nha b\nreser voir</w>\nbeli efs</w>\ngener al\nmar ti\nt d\nest e</w>\nì ł\nwi l</w>\nðŁĳ ¯</w>\nðŁĶ «</w>\nsp x</w>\net work</w>\nexcer pt</w>\ne instein</w>\nhir o</w>\nsil hou\nteam ed</w>\nper ception</w>\ncorri dor</w>\nmental health\nhin ts</w>\nben ny</w>\ninduc ted</w>\nsw x</w>\nwi desp\nspe ak\ncher yl</w>\ndru g\nðŁĺ ķ</w>\nh f</w>\nasparag us</w>\nmyster ies</w>\nfitz gerald</w>\noff er\ntherap ist</w>\ncare er\ndam aging</w>\nts d</w>\nper u\nwei bo</w>\ny ay\nphoeni x\ndisc re\nmac book</w>\nbar ker</w>\nstig ma</w>\nsp read\nroc kies</w>\nkang ar\nbri dg\npa i\nbi shop\nta iled</w>\ncapsu le</w>\nðŁĴ ĵ\nge of\nroy ale</w>\nshort listed</w>\no ste\nash amed</w>\nch app\nkey e</w>\ncl a</w>\nscreen shot\naustri an</w>\nnati ve\nen ight</w>\njuli et</w>\nmichel e</w>\nðŁĮ ´\ntravel ers</w>\npi l</w>\nfootball er</w>\nwin chester</w>\nðŁĻ Ħ\nazer bai\ngold eng\norganis ations</w>\ninterpre tation</w>\npredat or</w>\nofthe week</w>\nlo gan\npok Ã©\nmari e\ncal la\nt nt</w>\ncin de\nge tic</w>\nfit fam</w>\ngra v\now ens</w>\nðŁĮ ±</w>\nshoot out</w>\nsal is\ncommissi ons</w>\nco he\np tic</w>\nni xon</w>\nhi a</w>\namb ition</w>\nmar ine\ncruel ty</w>\nt k</w>\ncru de</w>\nsal ty</w>\njim a</w>\nmon go\nir ony</w>\non wards</w>\narre sts</w>\nstrang ers</w>\nig er</w>\ncycli st</w>\nra g</w>\nexten ds</w>\ntra dio</w>\nbour g</w>\nmo i\nel la\ne able</w>\nlex us</w>\nau l\nder a</w>\nhistor ian</w>\nmor ton</w>\nti ff</w>\nman ner</w>\nko t</w>\nd k\npo inted</w>\nmar qu\na an\nen ey</w>\ndu blin\non poli</w>\nem ili\nsecre t\nfl o</w>\nâļ ¡</w>\nba j\nste ep</w>\naccompan ied</w>\nrum ours</w>\ndev i</w>\npurch asing</w>\nfi g</w>\npu b\nsch oo\nautonom ous</w>\ngo alie</w>\nx ia</w>\nautom atically</w>\nre vers\nter o\nfu ku\ntitan ic</w>\nshoo k</w>\nsand als</w>\nsee kers</w>\nexc av\nnor dic</w>\nbigo live</w>\nba ke\nr att\nz ak</w>\nne p\nðŁĺ ¤</w>\ncand y\nbilli ons</w>\nbook worm</w>\npp et</w>\nà ³\nsur faces</w>\nsc ars</w>\nphil ip\ndo gg</w>\nci gars</w>\nco te</w>\ntransl ated</w>\ncur ator</w>\nsin dh</w>\nhan gover</w>\nbre wer</w>\non es\nel ton</w>\nðŁĴª ðŁı¼</w>\nmar cu\nelli ot</w>\nrigh te\ndi oce\nru ss</w>\nrail ways</w>\ngrand son</w>\nas cen\napo logy</w>\nawa it</w>\nmob ili\nre spir\nparti san</w>\noli vi\nstri ke\nyo o</w>\nwhite house</w>\nexpre ssed</w>\npu ps</w>\nbed ford</w>\ncul tur\nfro gs</w>\nfly ing\ncav ali\nc ds</w>\nfri ger\nstreet photography</w>\nre solve</w>\ntali ban</w>\nkan g</w>\ncru shing</w>\nju m\nðŁĺ Ĵ\nwilliam son</w>\ntan g</w>\ncur ly</w>\nt man</w>\nveter an\nfa ire</w>\nartificial intelligence</w>\nun anim\npre n\nback drop</w>\nfr ances</w>\noc cer</w>\ndoro thy</w>\nwork ing\nar thr\nconver ted</w>\nday light</w>\nserv ant</w>\npad dle</w>\ncompla ining</w>\nthir ty</w>\nnad al</w>\nak u</w>\nibra him</w>\nad dressed</w>\np iss</w>\ngreen house</w>\nbatt alion</w>\nsi mulator</w>\nout lets</w>\nembroi dery</w>\nðŁĵ ±</w>\nfis cal</w>\nger ard</w>\nsas sy</w>\nðŁİī ðŁİīðŁİī</w>\nvent ures</w>\nmer it</w>\npublic ity</w>\nðŁĳ Ī</w>\nsophistic ated</w>\nc tu\nconven tional</w>\ncondol ences</w>\nisra el\ntra dition\nar an\nte ss</w>\ngla d\nðŁĺĬ ðŁĺĬ</w>\ncorrec tion</w>\nge on\nam d</w>\nor ship</w>\nbe ast\nch ment</w>\nì ŀ\nnic o\nwk nd</w>\nwel s</w>\ncushi on</w>\nbeli e\nvo c</w>\nidio ts</w>\nunder neath</w>\npu ma</w>\ncorn ell</w>\nen ation</w>\nlu l\nswa ch\nab ig\nu rer</w>\nmi e\nform erly</w>\nca f</w>\ner nal</w>\nchor us</w>\njuli us</w>\nsen ator\nâľ į\nwh ir\nsalv ador</w>\nph d\nuni fied</w>\nboo ster</w>\ngraph ical</w>\nw rec\nson ny</w>\nmi z\ndere rs</w>\ns all</w>\nven s</w>\ntusc any</w>\nwi d</w>\ny ong</w>\nkur ds</w>\nw az\ntrol ls</w>\nmac ro\ncat urday</w>\npre ssing</w>\nsa sha</w>\ncent ennial</w>\ngu sts</w>\nem c\nbe fore\nden ise</w>\ncu st\nðŁĵ ¢</w>\nlo oo\nbase l</w>\neng land\ny olo</w>\nar du\nmanife sto</w>\ndo ha</w>\nì ľ\nkni ves</w>\nbourne mouth</w>\nbi bl\nbar b</w>\nal icia</w>\nØ ©</w>\ncom er</w>\ncycl one</w>\ng it</w>\nane ws</w>\ncharacter i\nvent ura</w>\nin tra\nsf giants</w>\nhu t\nbe a</w>\ndar win</w>\nell er\nal v\nre ese</w>\nbl y\nkar an</w>\nconclu sion</w>\nman ny</w>\nfla kes</w>\nunite blue</w>\nnad u</w>\nco pp\ned ges</w>\nlanca shire</w>\ni als</w>\no tta</w>\nphilipp e</w>\nl ent\nche e</w>\nment ors</w>\nfesti val\nan ism</w>\ncompli mentary</w>\nr j</w>\npu g\nd ine\nwe i</w>\ncli ffs</w>\nsar my</w>\nti veness</w>\ntreas ury</w>\nil and</w>\nafter math</w>\nrabb i</w>\nou n</w>\nbou quet</w>\nherit age\nzi on</w>\nsur render</w>\nshen an\nin ks</w>\nkar l\ngh ty\npol icing</w>\nexam ination</w>\nce y</w>\nper su\nmeasure ment</w>\nhydro gen</w>\nlu han</w>\nâłĢâłĢ âłĢâłĢ\nwar i</w>\nÐ¾ Ð\nj y\nfow ler</w>\nmis h</w>\nal fre\nâĺ ĳ\nbb naija</w>\ncat alogue</w>\nrecogn ised</w>\nsa ver</w>\nhu skies</w>\ncol in\nmun do</w>\nsi va</w>\np ng</w>\ndiscoun ted</w>\nman utd</w>\nfre sno</w>\nde vin</w>\nprelimin ary</w>\ntro phies</w>\npla stics</w>\ndu g</w>\npro cu\nindi go</w>\ng ard</w>\ndy lan\npit ches</w>\nground breaking</w>\nin son</w>\nbl ac\nan thology</w>\nf h</w>\nexpl ic\nr ard</w>\nadmi ral</w>\nso chi</w>\nla shes</w>\nsplen did</w>\nen vy</w>\nad v</w>\nsex y\nfestiv ities</w>\nstic king</w>\nbi b</w>\nthr ill</w>\nop p</w>\nari el</w>\nbotan ical</w>\nendur ance</w>\nfe males</w>\nbr icks</w>\nvat ican</w>\nblack pool</w>\nber mu\nbr ough</w>\nroll er\nbi d\nsue de</w>\nsloven ia</w>\nmm ing\nml b\nmed alist</w>\ndi ans</w>\nrehabil itation</w>\nne on\ns go</w>\nli thu\nram os</w>\nz ed\npi anist</w>\ninten sive</w>\nbroad band</w>\nstu dy\npeter sburg</w>\nlu ca</w>\nah hhh</w>\nphys ician</w>\ndill on</w>\ntele com</w>\ngri ef</w>\nmu n</w>\nac ro\nsi ded</w>\ns ly</w>\nblo ws</w>\nclassic cars</w>\ntri um\nar gy\n? :</w>\nh ri\nmarsh mal\nâĢ ĵ\nto pping</w>\nwar saw</w>\ntran sc\npreserv ation</w>\nb av\nre friger\nexperim ents</w>\nä º\ngl it\nsli ga</w>\ng age</w>\nfac tor\nflav ours</w>\nbr ony</w>\nsp o</w>\ncook book</w>\ncarri age</w>\naw ay\nny fw</w>\non ian</w>\nw g\nsimp sons</w>\nro lex</w>\nðŁı ¿</w>\ncro sby</w>\nãħ ¤\ncre di\nsyn dic\npu bs</w>\nali fe</w>\npoor ly</w>\nmac ed\nðŁĺ ŀ</w>\nbehin dthe\nw enger</w>\nn ats</w>\nðŁİ Ł</w>\nrubb ish</w>\nprocedu res</w>\ntypho on</w>\nopho bia</w>\ner do\nfu el\nvi era</w>\nbu mps</w>\nmillenni um</w>\nnew zealand</w>\nlec tures</w>\nit on</w>\nmil ky</w>\nrespon ded</w>\nê °\nlandsc ape\n.. @</w>\nbo ther</w>\nâĸ ¶</w>\nz hang</w>\nhuawe i</w>\ntu ition</w>\ns worn</w>\nin u\ny or</w>\npa olo</w>\nau ditions</w>\nab il\nmalay sian</w>\nho ps</w>\nfe athers</w>\nmp le</w>\nau ts</w>\nÃ£ o</w>\nboun ty</w>\nic he</w>\nì ĺ\nsh q</w>\npin ot</w>\nge ars</w>\ndisapp ear\nvideo games</w>\nt na</w>\nalzheim er</w>\nðŁĮ ŀ\na ji</w>\nunder wear</w>\nswit ching</w>\nsign age</w>\no scar\nec on</w>\ndro w\ncl int</w>\npl ated</w>\ngun dy</w>\nemb lem</w>\nho es</w>\nici st</w>\nnel ly</w>\njuni or\nroad show</w>\nminer als</w>\nat le\nalexand ria</w>\nac claimed</w>\nv ell\nshi va</w>\nad he\nen ne\namne sty</w>\nh ounds</w>\ncouncill or</w>\nðŁĴ ¦\naes the\npart nering</w>\ninflu enced</w>\nmag no\nfl are</w>\nextin ction</w>\ncivil ian</w>\nmaje sty</w>\nva il</w>\nlaw makers</w>\nrac ks</w>\nmc c</w>\nori an</w>\nsp ices</w>\ner rors</w>\nmay er</w>\nco ca</w>\npa i</w>\ns ooooo</w>\nreti ring</w>\nba thro\nðŁĻĮ ðŁĻĮ\nâĸ ª\nsu f\nendor sement</w>\nbuil ding\nbroo ch</w>\npal la\narvin d\nag ent\nkar ate</w>\nr hi\nc tv\nta ine\num m</w>\nba x\nreig ns</w>\nuni of\nenterpri ses</w>\nadel e</w>\nfla ke</w>\nat tire</w>\nbru ce\nba hamas</w>\ngra vy</w>\nsa in\nche ek</w>\ntri vi\nlo v</w>\ne en</w>\nbb lo\nlady gaga</w>\nitt a</w>\n. \"-</w>\ndu stin</w>\nobserv atory</w>\neigh th</w>\nbloom berg</w>\nkh s</w>\nf cc</w>\ngi st</w>\ncommemor ate</w>\nve er\nsexu ality</w>\ned c</w>\nnic ole\nvac ancy</w>\nu ser\nson a</w>\n:' (</w>\ndipl oma</w>\nt end</w>\nup grades</w>\nÅ Ł\njura ssic</w>\ncardi ac</w>\ndr s</w>\nwidesp read</w>\nÃ ł</w>\ndail ies</w>\nvend or</w>\nsim plicity</w>\nwi der</w>\nlen ses</w>\nsupp lements</w>\nde pos\nob served</w>\nvin es</w>\nparti ally</w>\nrenew al</w>\ncollabor ate</w>\nali g\nfin ity</w>\nph u\nzz y\npe tit</w>\nðŁĵ ħ</w>\nz in</w>\ni gu\nsm ack\nfall on</w>\nðŁĵ £</w>\nback wards</w>\ncomp onent</w>\no so</w>\ncompati ble</w>\nbin ding</w>\nzur ich</w>\nthom e</w>\nw ounds</w>\nly ric</w>\nfresh men</w>\nsne aky</w>\nfi bro\ndi et\nemplo yer</w>\nin sect</w>\nh ated</w>\nsch er</w>\nraz or</w>\nn sw\nboo ker</w>\ncalifor ni\nav fc</w>\nÂ °\npreten ding</w>\npep si</w>\nal is\nun titled</w>\nk art</w>\ngrand parents</w>\ne the\no ck</w>\nlux emb\nvisu als</w>\nsmall business</w>\nabdul lah</w>\nmin ho</w>\nsu baru</w>\nh ra\nreve aling</w>\nheart breaking</w>\nclar ity</w>\nam g</w>\nsl r</w>\n** **\nâŀ ĸ\nrecor d\nici ary</w>\nmin ded</w>\nye h</w>\nexce ssive</w>\nknu ck\nicec ream</w>\ntru th\nev ic\nta stic</w>\nant arc\nren dering</w>\n, ,\nmit t</w>\nloren zo</w>\nst patrick\nbound ary</w>\nzi g</w>\nvo cab\nosa ka</w>\nfur n\ntu n</w>\ngu l</w>\ns ounding</w>\nblo gger\nutter ly</w>\ng af\nadv ancing</w>\nl cd</w>\nmar gin</w>\nlifel ong</w>\nsolst ice</w>\nsh ra\nwa its</w>\nple ar\nbre ach</w>\nen ligh\nad er</w>\nitt le</w>\nc ation</w>\nho on</w>\nstu died</w>\n?? ???</w>\nk ash</w>\nev angeli\nps l</w>\nwei ghts</w>\nmet als</w>\nty res</w>\ntur no\nwi e\ncar b</w>\ng ale</w>\nse al\nsun ite</w>\nam ic</w>\npatter son</w>\nÃ¡ n</w>\neu ph\nup stairs</w>\nquali fiers</w>\nkhali fa</w>\napple music</w>\nìĨĮë ħ\nvau ghan</w>\nal ter</w>\ncru iser</w>\nmu a</w>\nt ana</w>\nkat rina</w>\nid ols</w>\nspo iled</w>\nsecre tly</w>\nfi bre</w>\npart nered</w>\num es</w>\ngi ov\ncom et</w>\nscreenshot saturday</w>\nk eller</w>\nfil tr\nfe t\ncon way</w>\npe u\nbad minton</w>\ngi d</w>\nm ound</w>\ndon key</w>\nbu ff</w>\nlea ther\nlar gely</w>\nbro ch\nint ments</w>\nam use\nr k</w>\nsto ve</w>\nimpac ted</w>\ncon t</w>\ncr acks</w>\nprison er</w>\nbar i\ncontrac tor</w>\nori oles</w>\ndomin ate</w>\npol ar\nam elia</w>\ndr c</w>\nðŁĳĮ ðŁĳĮ</w>\nvi st</w>\nsu arez</w>\ninjec tion</w>\nblo oms</w>\nðŁļ¨ ðŁļ¨</w>\nsti ff</w>\npay pal</w>\nsno wing</w>\nthur sdays</w>\ngoo se\nwe dge</w>\neduc ated</w>\nweak ness</w>\nde cker</w>\nabud ha\nbree zy</w>\nÛ Į\nhope ful</w>\no bi\nrai der</w>\ngh am\nde u\nse ve\npar tly</w>\nfu t\ninfu sed</w>\nmer ri\nthan e</w>\nsome time</w>\nhu e</w>\nme in</w>\ncre dit\nsli ding</w>\nran de</w>\ncher ry\ndead pool</w>\nsh ol\nar am</w>\nunder wood</w>\nsky e</w>\ndistur bing</w>\nm nt</w>\npoli shed</w>\nguardi ans</w>\nha dn</w>\npic asso</w>\nari us</w>\nak shay\nir ri\nj h</w>\nhapp en\nla kh</w>\ndal ton</w>\nat the\ns well</w>\nmar sha</w>\nre h\ncour s</w>\nj kt</w>\ntop us</w>\nserv ice\nr ink</w>\nhack ers</w>\ndono van</w>\nhor o\ntc m\nmay hem</w>\ncha se\ndev ops</w>\nken sing\nsc up</w>\nsh ere</w>\nquali fication</w>\nc live</w>\nton g</w>\nn ancy\nmar is\nder dale</w>\nber man</w>\ncinde rella</w>\njol ly</w>\nci c</w>\nloo t</w>\ncollecti bles</w>\nhom icide</w>\ng ge\nepide mic</w>\nsu ites</w>\nmu ddy</w>\ngi mme</w>\ne rec\n- *</w>\ntal la\nlis le</w>\nembro ide\nðŁĩ© ðŁĩª</w>\nveriz on</w>\nve ctor</w>\nbe anie</w>\narti san</w>\nga in\nflo res</w>\nvi gil\nu so</w>\nðŁĻı ðŁı½</w>\ngrin ding</w>\ngh er\nair ports</w>\nrespon sive</w>\nshaf t</w>\ncan cel</w>\nceremon ies</w>\ne me</w>\nat ari</w>\nbru shes</w>\neag er</w>\nbo hemi\nchildren s</w>\nyan kee</w>\nma a</w>\nsuspen se</w>\nmor an</w>\nmac ar\nsun flower</w>\ncre w\nvo id</w>\nke ar\nfashi oned</w>\njen nings</w>\nsunday funday</w>\nsub missions</w>\nme ad</w>\nher man</w>\nwa i</w>\ncrit ically</w>\nle um</w>\nbaek hyun</w>\nfor cing</w>\nco bra</w>\nãģ ®\nacqu ire</w>\nal k</w>\nge ology</w>\npri mar\nimport antly</w>\nire z</w>\nbunde sliga</w>\ncuri osity</w>\nsen a</w>\nstric t</w>\ncon soli\nwin ters</w>\nven om</w>\nchelten ham</w>\nðŁį º</w>\ncen a</w>\nt at</w>\nba in</w>\nglo ver</w>\nunder cover</w>\nas ses</w>\ncar n\nmemorial day</w>\nam eli\ni rene</w>\nch on</w>\nsyn thesis</w>\nspe edy</w>\nmitsu bi\nsla yer</w>\ncompos ite</w>\nunder stands</w>\npe w\ninter rup\nhen ri</w>\nmor row</w>\nan om\nthof july</w>\ng lee</w>\nthre e\nðŁĺ ®</w>\nand hi</w>\nch att\nrenew ables</w>\nye s\ntrans fers</w>\n!!!! !!!!</w>\nbab u</w>\ndu ter\nlo ops</w>\npe ers</w>\no ilers</w>\npau lo</w>\nic ation</w>\nh mu</w>\nwar a</w>\nmer cer</w>\nhom eland</w>\nfu ji</w>\nale y</w>\nyear book</w>\nre m</w>\nre en\nab sur\nbo is</w>\n] :</w>\ncaes ar</w>\nshot gun</w>\nkur dish</w>\no ren\nra e\nanci es</w>\nty pic\nf h\ndef ault</w>\nre plic\nlu k</w>\ntrans actions</w>\nr ys</w>\ninfan try</w>\nðŁį ¾</w>\ncho w</w>\nchick ens</w>\nba gh\nwy att</w>\nay e\ngg i</w>\nbre ws</w>\ned itions</w>\nmi ra\ncommen cement</w>\npre su\nperis cope</w>\nic hi\nguatem ala</w>\nzam bia</w>\npain ts</w>\nwit ches</w>\nwan i</w>\nun dere\ncro y\nvo ws</w>\nus mc</w>\nhear ted</w>\ntheat res</w>\nshu ffle</w>\nle vel\nmul tic\nsquee ze</w>\nfer n</w>\napp et\npost al</w>\nmal t</w>\non board</w>\nld nt</w>\nco o</w>\ns sc\nk ac\nðŁĺ ĩ\nsc rap</w>\nmar cos</w>\ndeal ers</w>\nann u\nmill er\nco ve\nul ary</w>\nvladi mir</w>\nbe ef\nth ur</w>\npick led</w>\nse same</w>\nbengal uru</w>\nmo tt</w>\nkathle en</w>\nhi st\nno tor\ndr ank</w>\ndu chess</w>\nsnow fall</w>\ne ff</w>\ntin y\nj n</w>\nsy our\nspeci alists</w>\nscot us</w>\nbay lor</w>\neve rest</w>\nmali bu</w>\npre m</w>\nharm ful</w>\nl ali\nb ates</w>\ng ye\ndifferen ti\nand ra</w>\ngeome try</w>\nel over</w>\nblack out</w>\n== ==\nko ta</w>\ninter act</w>\nasi an\nla yo\nsamu rai</w>\nfi del\nexhau sted</w>\ngla di\npd t</w>\nspher ic</w>\nanti qu\nguit ar\nstu ri\nho pper</w>\nang le\nf ills</w>\nsla p</w>\nmi th\nrod ney</w>\nong i</w>\nin som\npre venting</w>\ncassi dy</w>\nap ho\nore gon\nlo in</w>\nham mond</w>\ncontribu ting</w>\nf n</w>\ngar ri\nori on</w>\ncomp elling</w>\nescap ing</w>\naim ing</w>\nplu mb\nbi stro</w>\nbe asts</w>\nconcer ning</w>\nbo e</w>\ndo pp\nshop local</w>\nstumb led</w>\nâĤ ¹</w>\nnaz is</w>\nâĢįâĻĤ ï¸ı\ngest ure</w>\nwar ts</w>\nus open</w>\nhi ggins</w>\nchar li\nhang s</w>\nbom bers</w>\n° :</w>\nfe eds</w>\nc ch\nst il\nnic ola</w>\nðŁĵ º\nclam ation</w>\ntro pic\naf ro</w>\nou k</w>\nexpen ses</w>\nder rick</w>\nal ine</w>\nfa w\nreg ard</w>\nim er</w>\nsat in</w>\nthi um</w>\nry der</w>\npear l\nte ss\nmm mmm</w>\nsen ses</w>\nðŁĩ ¹\npositi ve\nexhau st</w>\noccu r</w>\nnor ris</w>\nlil ly</w>\nis les</w>\ndirec ting</w>\nyo fficial</w>\ncount less</w>\nsam ar\non stage</w>\nflo ck</w>\nmir rors</w>\narch er</w>\nmo i</w>\nk d\nvi v\nin os</w>\nsi kh</w>\nle i</w>\nsen sory</w>\nbr its</w>\nkno x</w>\nchest nut</w>\nop y</w>\ncoli seum</w>\nz af\ndi vin\nadap ter</w>\n:) ))</w>\ntem ple\nku n</w>\nhel mets</w>\nt df</w>\ngu ide\nm old</w>\no ids</w>\nlu ther\nhe is\nmonaster y</w>\nsp ree</w>\nk lu\nbrit ney</w>\njagu ars</w>\ngre ats</w>\nc cc</w>\nky rie</w>\nmachin ery</w>\ncric ket\nre ro</w>\nab o</w>\naspir ing</w>\nsemi finals</w>\nale ss\nsig natures</w>\nvar d\nme th\nher bal</w>\nhol den</w>\nking dom\nap or\nreg gie</w>\nore o</w>\npalestin ians</w>\nem mys</w>\nsec tional</w>\nro i</w>\nney mar</w>\nqu el</w>\ncu ll\nl ka</w>\nhaz el</w>\nestim ate</w>\nul ties</w>\ngo w\nbe a\npurch ases</w>\nbel ts</w>\nprotec ts</w>\nm Ã©\ngue ssing</w>\nbb o</w>\nclau dia</w>\nfr acking</w>\njon ny</w>\nel k</w>\ncel tic\nal mighty</w>\nra je\ncourty ard</w>\nig i</w>\ncan es</w>\nðŁĴª ðŁı»</w>\nbank rup\nle thal</w>\nâľĮ ï¸ı\ngraphic design</w>\nvad er</w>\npenc ils</w>\nrough ly</w>\ndan te</w>\nm fg</w>\nconst ell\ncam el</w>\nj b\nbloss oms</w>\nen to\nbalo chistan</w>\ncine mato\nill ard</w>\njer sey\ncon sent</w>\ndent ed</w>\ncon templ\nsch er\nhol i</w>\nlou gh\nst our</w>\na yo\nbegin ners</w>\ncur b</w>\nv hs</w>\na jax</w>\ndu ff</w>\nav eng\ndom est\ncommit ting</w>\nai red</w>\ncha p</w>\nhedge hog</w>\ndisappo inting</w>\nfreel ance</w>\nin land</w>\nchar ms</w>\nðŁĺį âĿ¤ï¸ı</w>\nai sh\nm x\nbuck le</w>\nti dal</w>\nper mit</w>\nbo ating</w>\nra cha\nkend rick</w>\nb ello</w>\nb hi</w>\nple a</w>\nestim ates</w>\nl b\napo logies</w>\njay a</w>\nbb l</w>\nast oni\ninter state</w>\nmain taining</w>\nel bow</w>\nmu p</w>\nep it\nðŁĺ ¡\nviol ations</w>\ndef end\nbe h\nsl c</w>\nam ir</w>\npur i</w>\nti um</w>\nfi fa\nblur ry</w>\nscri m\nðŁĻı ðŁı¾</w>\nma ple\nrel atives</w>\nâĺ Ŀ\ncho c</w>\ncon nor\nâľ¨ âľ¨</w>\nwhi sp\nlist ings</w>\nma ze</w>\nthan king</w>\nri dd\ngrass roots</w>\nshi fting</w>\ndesper ately</w>\ngor illa</w>\nden i\nju les</w>\nstra th\ng ley</w>\nja in</w>\nbu ick</w>\nt anner</w>\nðŁĴ Ŀ</w>\nga e</w>\npri m\nit ors</w>\nn ano</w>\nsepar ation</w>\narmen ia</w>\nbor deaux</w>\nðŁ ħ\npj net</w>\nbu rial</w>\ne bon\nglo ss</w>\nre new</w>\ngri er</w>\nspe eds</w>\ncomic books</w>\nsym boli\npur poses</w>\nãħł ãħł\nspati al</w>\nno table</w>\nci on</w>\nn ps</w>\nho ffman</w>\nnor man\nrt g</w>\ndu sty</w>\nsitu ated</w>\ntr an</w>\nk fc</w>\nem en</w>\nnic kel</w>\nhast ings</w>\nsett ling</w>\ngr it\nl ena</w>\nw aw\nart s\ngu m\nca regi\nle wis\nsapp hire</w>\nrememb er\nembed ded</w>\nt lc</w>\nbl at\nserge ant</w>\nel sa</w>\nboot camp</w>\nbow man</w>\nphoto graphic</w>\npill ars</w>\ndirection ers</w>\nclassi fied</w>\nno is\nve er</w>\nbarre ls</w>\nwh oop</w>\nðŁĺ± ðŁĺ±\nfe male\npetro leum</w>\nmedi a\ne fc</w>\npokÃ© mon</w>\nà¤ ķ</w>\nenthusi astic</w>\nvar un</w>\npro files</w>\npedi atric</w>\nacci dents</w>\ncon rad</w>\njan g</w>\njo jo</w>\nac or\nob server</w>\nl f</w>\nlive stock</w>\nfor gi\nfo s</w>\nel m</w>\nan and</w>\ngo e\nc ere</w>\navoi ding</w>\ngri t</w>\nom an\nthank fully</w>\nscat tered</w>\nnick y</w>\ncylin der</w>\nchees y</w>\ndi ver</w>\nmahe sh</w>\ncav es</w>\near liest</w>\nqu inte\nsubjec ts</w>\nb end\ngul f\nvocali st</w>\nglu e</w>\npat ches</w>\nun stopp\nsny der</w>\ndemonstr ating</w>\npi o</w>\nhor ns</w>\nwic kets</w>\nand the\nr ama</w>\nyo on</w>\nstra ight\nbed time</w>\nor ang\nbul lets</w>\nsa urus</w>\nmin ers</w>\ninci dents</w>\n! ...</w>\nðŁİ ¸</w>\nag ers</w>\nhand les</w>\nstat es\nin ity</w>\nd ons</w>\nincredi ble\nemin em</w>\navi v</w>\nru dy</w>\nmoz art</w>\nfolk lore\nappli ances</w>\nmt l</w>\nfre y\ndi as\nhu a</w>\npage ant</w>\nstri ve</w>\nim prison\nbul lish</w>\nr ana</w>\nal erts</w>\nbb mas</w>\nhy per</w>\nderby shire</w>\nre cre\nre dd\ndebor ah</w>\ncosmo s</w>\nlaw son</w>\nmel anie</w>\npsy cho</w>\nho or\ndoo dles</w>\nsni per</w>\nshad y</w>\nman tle</w>\ncanadi an\nnew year\ninter actions</w>\nsepar ated</w>\ncor ds</w>\nspiritu ality</w>\nap u\nit o\np ct</w>\npel osi</w>\nrebel lion</w>\nse iz\nwor cester\nsec tors</w>\nul i</w>\nsan ta\nÐ µ\nðŁĩªðŁĩ ¸</w>\nbi ased</w>\nclass ical\ngam ma</w>\ndee plear\nemer ge</w>\nback er</w>\nsur ance</w>\nhand crafted</w>\nðŁİ ¥\nfranc is\nmill an</w>\nic i</w>\ncro wn\nwo w\nstri ped</w>\nun fair</w>\nrelax ation</w>\n³ ï¸ı\nembrac ing</w>\nshe alth</w>\npale o</w>\nmartin i</w>\ndist illery</w>\nwr ink\nor k\nna th\nhay ley</w>\ncour thouse</w>\nsi ber\nsa di\nquiet ly</w>\nmel t\nm sm</w>\nme h</w>\nsmart phones</w>\nrel ent\npp ing\nwar wick</w>\nco logne</w>\ngli a</w>\ncot ton\npro g</w>\nlon e\nip sw\nstar ters</w>\nexpan ds</w>\nu mp\nsu ed</w>\nski pper</w>\ninfe ctions</w>\ning le\nÃ ¡</w>\ncler k</w>\ndemonstr ate</w>\nac ar\nðŁĺĤðŁĺĤ ðŁĺĤ\nti bet</w>\nbun s</w>\nalo m</w>\ndemol ition</w>\nssi a</w>\ng st</w>\n[ ]</w>\nso ar</w>\nâĺ Ģ</w>\nðŁĺ ª</w>\nðŁĵ Ĭ</w>\ndee pest</w>\nbeyon d\nare t</w>\natt ends</w>\nactiv ated</w>\ndi mit\nâļª ï¸ı\nhigh lighted</w>\nmagaz ines</w>\nrum or</w>\naz za</w>\nsteph ens</w>\ndol ph</w>\nsho ckey</w>\nmat s</w>\nwe av\nmel an\nserv ers</w>\ntra um\nku sh\næ Ĺ\nbab ys\npa z</w>\na al\nla use</w>\nbreak ers</w>\ncanter bury</w>\nul ture</w>\nmi ri\neuro s</w>\ntane ous</w>\nimpre ssions</w>\ndu tch\nil d\ngh i</w>\npur due</w>\nadequ ate</w>\nl p\nsy ner\nang ler</w>\ndu rable</w>\ngal ore</w>\nro wn\nmg mt</w>\nðŁĵ Į</w>\nlu cia</w>\nâĺĳ ï¸ı</w>\nzay n\nbor row</w>\n. (</w>\nnorth umber\ncru sh\neng a</w>\nsu sh\nextra vag\nt out</w>\nma hal</w>\nali stic</w>\nther mo\ngall eries</w>\nes se</w>\nchi bi</w>\nattrac tions</w>\nlex ington</w>\nlegislat ure</w>\ndocu mented</w>\nresi den\nbrow nies</w>\nw f</w>\nst ool</w>\nplan ets</w>\nsho ppers</w>\nconduc tor</w>\nms p</w>\ntr icky</w>\nfru ity</w>\nend ra</w>\nfeel the\nwhi pped</w>\nhair style</w>\nre fer</w>\noo k\noc topus</w>\naudi ences</w>\nku mar\nafter no\nop tim\nc fl</w>\nni p</w>\ngen i\nalpha bet</w>\nann ab\nlam in\naccep ts</w>\nl ng</w>\nðŁĺ «</w>\nt ine</w>\nac om</w>\ncheer leaders</w>\nt k\ngr on\nv g</w>\nk ung</w>\nja x\ndha bi</w>\nr ss</w>\nmack enzie</w>\nbeir ut</w>\nclean up</w>\ngy psy</w>\nst ell\nbur ger\nhurric anes</w>\neduc ation\nst ina</w>\nâĻ¡ âĻ¡\nunfortun ate</w>\njere mi\nbad ger</w>\nat ers</w>\n: âĢ¦</w>\nter ra\nsubli me</w>\nstu d\ny mca</w>\nmr u</w>\nduter te</w>\nbren nan</w>\nbul b</w>\nmel o</w>\nyl on</w>\nhack er</w>\nc red</w>\ngu d</w>\nas an\npad illa</w>\nembroide red</w>\nvietnam ese</w>\npione ers</w>\nprojec tion</w>\nre boot</w>\nid c</w>\nan ey</w>\npri mer</w>\nsuff ers</w>\nwin ding</w>\np on</w>\nsto day</w>\nmor n</w>\nu ch</w>\nall in</w>\nadid as\neliza beth\ntu ck</w>\no graphy</w>\nðŁļ Ģ\nbe g</w>\nos borne</w>\nghet to</w>\nr h</w>\ncn n\nir ma</w>\nma kin</w>\ncab les</w>\nmur ders</w>\noc ks</w>\ninst a\nal as</w>\nsi k</w>\ncu ff</w>\nla re\nfoo dies</w>\no vic</w>\nat om\ngeome tric</w>\nem pathy</w>\nà¸ µ\ncent enary</w>\nnewsp apers</w>\nadministr ative</w>\nðŁİ Ĭ</w>\nsti ve</w>\ncontrac tors</w>\nle tt\ntas mania</w>\nawesom eness</w>\nden sity</w>\nve en</w>\nprince ton</w>\nfrequ ently</w>\nre ject</w>\ngh i\nmodu lar</w>\nceram ics</w>\nsh ag\nki wi</w>\ncan vas\nsweat shirt</w>\nan j\nti mm\nnapol i</w>\nil er\nappe als</w>\nhamil ton\nma yo\nwe ave</w>\narrang ed</w>\nwhar f</w>\noccu py\nb vb</w>\nas aki</w>\not ter</w>\nnor m</w>\nvi es</w>\nde tox</w>\ntion al\ndere k\nid ad</w>\nad missions</w>\nconstitu ency</w>\nu pper\nwoo t</w>\nallo y</w>\nse ve</w>\nlu b\nun comfortable</w>\ned win</w>\nab re\nd wight</w>\nar che\nvirtu ally</w>\nsp ol\npri e\nai i</w>\ner r\nswit ch\nbar ack</w>\nse ok</w>\ncou l\nwn t</w>\npou l\no live\ncaffe ine</w>\ncardi ff\nnotor ious</w>\nde mp\nex cess</w>\nbar r</w>\nt ford</w>\na jay\nbump ed</w>\nmy thology</w>\nshel ley</w>\nfal con\nshakespe are\nmust angs</w>\nno ted</w>\nbon e\ncivil ization</w>\nsy d</w>\npar sons</w>\nun official</w>\nhy ped</w>\nsp ends</w>\noppo sed</w>\nv ings</w>\nspace x</w>\nnoti fication</w>\ndeci ding</w>\nbio tech</w>\nout si\nsal ah</w>\n! .</w>\nfe d\nss y\nc ms</w>\nbad gers</w>\ncr o</w>\nela ine</w>\nn ba\ndy our\nn ant</w>\nhoney moon</w>\nclimb ed</w>\nconom y</w>\nath a</w>\nm ell\nne bula</w>\nnature photography</w>\njuli e\nbm x</w>\ninve sted</w>\nmon o</w>\nlieu tenant</w>\nwat kins</w>\ntechn ician</w>\no se</w>\nka e\nì Ľ\nmc queen</w>\npre ach</w>\ntrav eller</w>\nflexi bility</w>\nze bra</w>\nreta iler</w>\np ant</w>\nben der</w>\nbrand t</w>\nsqu id</w>\nwar rant</w>\nveri fied</w>\ncas s</w>\npier cing</w>\nhon ours</w>\nt ying</w>\nmor ris\nkis sed</w>\nop rah</w>\npanor amic</w>\nme i\nsplat oon</w>\nwich ita</w>\nari as</w>\ngal li\nindy ref</w>\ngood times</w>\nathe ist</w>\nconfe ssion</w>\now ski</w>\nre pping</w>\nad ditions</w>\nmechan ism</w>\nz im</w>\nj ans</w>\nsu f</w>\ncho pped</w>\nbeg innings</w>\nvitam ins</w>\nãħ¤ ãħ¤\nor th\npo les</w>\nru b</w>\nantarc tica</w>\nindie film</w>\nweb cam</w>\nket ch\nbre tt\ncle ment\nher on</w>\ndefe ating</w>\nhydr o</w>\nbuc ket\nwand ering</w>\nsid ney</w>\nfuture of\nb inge</w>\non ies</w>\nknock out</w>\nadministr ator</w>\nsyn the\nl ent</w>\njan i</w>\nbar ley</w>\npremier league</w>\nner ds</w>\ncr m</w>\nbra s</w>\nbot any</w>\nevol ved</w>\nrot ter\nro wed</w>\ntum or</w>\nweal thy</w>\nÂ Ń</w>\nmon arch</w>\nli shed</w>\nda hl</w>\nðŁİ ĥ\nbu ch\nken yan</w>\nØ §</w>\nred ness</w>\nassemb led</w>\nse mit\nhud der\nshro p\nran i</w>\nlear ning\nmor y</w>\niti a</w>\ngeo graphic</w>\nworl dof\nf b\npho sp\nboo gie</w>\nam ped</w>\n? ...</w>\nche w</w>\ndwar f</w>\nar us</w>\ns sen</w>\nru sty</w>\nrecru its</w>\nh k\ngar de</w>\napp lause</w>\nvol umes</w>\ninvol ves</w>\nta c</w>\nhand bag</w>\ntrans late</w>\nffe l</w>\nse ym\naqu atic</w>\ntrans fer\nzo di\nand r\nacade mia</w>\ncr ater</w>\nte z</w>\nar se</w>\nadap t</w>\ncol oni\nsnow man</w>\nmal i</w>\nhang in</w>\ndi schar\noy sters</w>\npho e\ncolon el</w>\nw ba</w>\nhispan ic</w>\nthri ving</w>\nsh y\nag les</w>\nsales force</w>\ncre me</w>\nso les</w>\nla fayette</w>\nâ ī\nter ia</w>\nach a</w>\nsp erson</w>\ngo go</w>\ncar ly</w>\nthe ore\nam ore</w>\nvo x</w>\naf t</w>\nãĤ ¹\nstap le</w>\nmu ffin</w>\ndi agram</w>\nino x</w>\nsu stained</w>\nav ent\nme ta</w>\narbit r\ndec ay</w>\nado le\nÐ ½\nec ol\nph o</w>\nn k\no cu\ngr anny</w>\nÃ§ a</w>\nluxemb our\nstad t</w>\nalber to</w>\nle vit\nam as\nd x\nor phan\nco bb</w>\nas c\nlo gy\nimmen se</w>\nchan ts</w>\noff line</w>\np ent</w>\nbre x\nw inger</w>\nplan e\ni el</w>\nnichol s</w>\nca thy</w>\nnar uto</w>\nlow ed</w>\n/ //</w>\nignor ance</w>\ncat astro\nyou ts</w>\nsch en\nbuil d\nhaz i</w>\ns ine\ncritical role</w>\ndu g\ndete ct</w>\nlo gs</w>\nen amel</w>\nstpatrick sday</w>\ned die\nco pa</w>\ncigare ttes</w>\nho ff</w>\nkay a</w>\nla goon</w>\nra pha\nair borne</w>\nchoo se\npuer tor\nke v\ngui ding</w>\nfro sty</w>\nbor ough\nmir a</w>\nðŁİ Ĭ\ncade t</w>\nanu sh\nyo gi</w>\ne ger</w>\nfl ing</w>\nslo pe</w>\nnin th</w>\nwe ston</w>\nfoot wear</w>\nf n\nmay weather</w>\na am</w>\npla in\nstair case</w>\nwitne sses</w>\nwork outs</w>\nro bust</w>\ndex ter</w>\nco hort</w>\nðŁļ Ĺ</w>\nsp ell\nha ze</w>\no om\norgan ising</w>\nwild fire</w>\ncont acts</w>\nav on\nmin o</w>\nupd ating</w>\nðŁį »\nli thium</w>\ning ual</w>\nk is</w>\nau ga</w>\nlo com\nde duc\nu da</w>\nth ak\nboy le</w>\nmp er</w>\nhot tie</w>\neri k\nre vised</w>\nis la</w>\ntravel photography</w>\noo za</w>\nen qui\nconfe rences</w>\nclo ver</w>\ng room</w>\ncur ves</w>\nlive on\nper f</w>\ndisplac ed</w>\nbo log\nxx xx</w>\nðŁĺ© ðŁĺ©\nte al</w>\nve ssels</w>\nrain forest</w>\ncal ci\npan ther\ngira ffe</w>\nta sted</w>\nimag ery</w>\npad res</w>\nday time</w>\nbas s\nri pe</w>\nopio id</w>\nnu e\nvin yl\ninvent or</w>\nsen s</w>\nprocess or</w>\nmu t</w>\ngad gets</w>\nbibl ical</w>\nshann on\njacqu eline</w>\ncar y</w>\nthe resistance</w>\nali en\nn vi\nco sy</w>\nbi har</w>\nfo ley</w>\nren d</w>\nmu gs</w>\nfa ken\ncl one</w>\nni allo\ngra bbed</w>\nchi hu\npower house</w>\nn tt</w>\nchero kee</w>\nspon ge\nimple menting</w>\nrh ine\nle one</w>\nðŁį Ģ\npret tiest</w>\ninfra red</w>\nimpro v</w>\nswit ched</w>\ntu bes</w>\ncon tr\nbl k</w>\nprojec ted</w>\nbe aver</w>\nyo t\nbbcra dio</w>\nthi gh</w>\nper secu\napologi ze</w>\nw ack\npo ster\noli ver\naz a</w>\nlou d\n( ?)</w>\nf the\nwomen shi\nspar row</w>\nblu sh</w>\nus able</w>\nsc ales</w>\nit ative</w>\npeu ge\nne eding</w>\nlegg ings</w>\nglam orous</w>\nmat ur\nc z\nwat t\nda b</w>\ntam ar\net sym\nbau er</w>\nheart felt</w>\nh n\nelse where</w>\nbir ch</w>\nalu mini\nhu ck\ne me\nj l</w>\ntraf ford</w>\nd z</w>\npor tions</w>\nana sta\narthr itis</w>\nesp n\nber gen</w>\nviol ation</w>\nyo shi\nc z</w>\nnorthumber land</w>\nclo sures</w>\nðŁĩ¯ ðŁĩ\nsmi ley</w>\nr w</w>\ntel ugu</w>\ninten si\ngre gg</w>\nve ga</w>\ndun geon</w>\nsouth bound</w>\nba il\ndomin ican</w>\nsemi final</w>\nchap ters</w>\nh itch\nvan ity</w>\ntrans iti\nrecomm ends</w>\nsati sf\nbar ca</w>\nqueen s\n( (\nde struc\nstra it</w>\nra vi\ndess erts</w>\nin tru\nhar am</w>\nk os</w>\nfo e</w>\nfat ty</w>\npais ley</w>\nmagn itude</w>\ndri dge</w>\ncom ey</w>\nschem es</w>\nvision ary</w>\nour t</w>\ndown loaded</w>\nðŁĻĮ ðŁı½</w>\ngd pr</w>\nlan i</w>\np wc</w>\ngu ad\nnic est</w>\nstake holders</w>\nre ferred</w>\ngeorge town</w>\narvind kejriwal</w>\nschnei der</w>\nin doors</w>\nall star</w>\nstrand ed</w>\ngen der\nze pp\nma sses</w>\nðŁĲ ±</w>\npati ently</w>\nbl dg</w>\nz ab\nwe arab\nvi vid</w>\nhe ck\nd ella</w>\nsy mb\nje opar\nla ger</w>\nà ª\ncomb ines</w>\nne c</w>\nbr ay</w>\nflo p</w>\ntx wx</w>\njo ys</w>\npon t</w>\npro found</w>\nsur round</w>\nmad hu\nma ble</w>\nay r\nte as\nn sa</w>\nopen ly</w>\ner nest</w>\nãĥ ©\nto po\ng na</w>\nanti oxid\nti an\ne tr\nc ello</w>\nma thi\ngener osity</w>\nb iting</w>\nman ic\nkel sey</w>\nchee ks</w>\nten der\nw th</w>\npron oun\nultimat ely</w>\ngu sta\nari anag\nger ry</w>\nble ed\nred dy</w>\nmic h</w>\nmitsubi shi</w>\noper ated</w>\nsex ually</w>\nma u</w>\ncl lr</w>\nvi ds</w>\nco c\nmel ted</w>\nðŁĮ Ī\nq ld\nite ch</w>\ninstru mental</w>\nend game</w>\nðŁĵ ĸ</w>\nener gi\nbrow nie</w>\ntam il\nat in</w>\ndomin ated</w>\npra ises</w>\nfire place</w>\nsens ational</w>\nmen a</w>\nk arti\nun prece\nru pt</w>\nori ental</w>\nmc cor\ntour naments</w>\nscen ter</w>\nre eves</w>\nprescri ption</w>\nsam e\nfra u\ntru ffle</w>\nem bo\nroman s</w>\nbla sts</w>\ntechno logical</w>\npr at\nb sb</w>\ny ar</w>\ntren dy</w>\nac l</w>\nal ad\nðŁį ģ</w>\no hh</w>\nbankrup t\ntho ven</w>\nregar ds</w>\nis er\nwar wick\nvine yards</w>\nreal m</w>\nniallo fficial</w>\ndo ta</w>\nge mini</w>\nto do</w>\nv able</w>\nÂ¨ Â¨\nla u</w>\nwre ath</w>\nju ve</w>\nnat asha</w>\nle ver</w>\nlor i</w>\nhor ser\ncc tv</w>\nair bnb</w>\nes anders</w>\nsin clair</w>\nema biggest\nhigh school</w>\ncon test\noptimi stic</w>\nt te\nðŁĴķ ðŁĴķ\nss d</w>\nye e</w>\nhel ena</w>\ncon sen\nric ks</w>\njes se\nan ic</w>\nðŁİ ¯</w>\nre acts</w>\nro be</w>\nindepend ence\nvol tage</w>\nm ington</w>\ns ant</w>\nà¸Ļ à¸\n-------- --------\nsentin el</w>\nke tt\nrehear sing</w>\naaaa aaaa\nsof the\nstir ling</w>\nsear ch\nwi gan</w>\nstand out</w>\nsna il</w>\npent agon</w>\nÄ ģ\nch lor\ncru st</w>\nnet any\nchemi st</w>\ndisapp eared</w>\nric ardo</w>\nsp iders</w>\nbo se</w>\nwar ren\nme ssing</w>\nbann ers</w>\ngu el\npar ach\nma id\ncoun ted</w>\nepi le\nbon fire</w>\nspeech less</w>\nse tter</w>\nmeas ured</w>\nrejec ts</w>\nnik ki\nle ster\nforen sic</w>\nfab rics</w>\nalo ha</w>\npre served</w>\nwat ford</w>\ndeta iling</w>\ndar th</w>\nbo u</w>\ncar ly\n... '</w>\ntail gate</w>\nnoti fications</w>\nå ¤\npas sive</w>\ntrous ers</w>\nbalo ch</w>\nro ther\ntypic ally</w>\nÃ ¥\nsp it</w>\nwi z</w>\nsic ily</w>\ntechnic ally</w>\nex pose</w>\nst age\nhu bb\ncre am\ncap s</w>\npo ke</w>\nsle ek</w>\nju ne\ntempor arily</w>\nde z\nawak ens</w>\nl ame</w>\n_ -</w>\nji ha\ntues days</w>\nadvis ed</w>\nadvis ors</w>\nexi sted</w>\ndis agree</w>\nnews room</w>\nlo sers</w>\nworld tour</w>\ndr ying</w>\nal di</w>\nhar ness</w>\nfoot print</w>\nhobb it</w>\np mln</w>\ni ro\nque red</w>\nasse ss</w>\ngaz e</w>\nsa b</w>\nth ian</w>\ní Ĭ\nti f</w>\nob serve</w>\nev il\ndra wer</w>\nswee p\ncor y\nco dy\nkyo to</w>\ncal lum</w>\nn inj\nlau rent</w>\nbe i</w>\nsket ching</w>\ncustom ized</w>\ndu r</w>\nregre ts</w>\nknox ville</w>\nìķ Ħ\nmess aging</w>\ngrac ie</w>\nabun dance</w>\nbi dding</w>\nbre wed</w>\nfl ouri\ntherapeu tic</w>\nalt itude</w>\nho gs</w>\nbur ner</w>\nelec tro</w>\nwonder fully</w>\nhe ater</w>\npost pon\nli very</w>\nr all\nad as</w>\na ac\nsau l</w>\nbrook lyn\nplay house</w>\nâĻ¥âĻ¥ âĻ¥</w>\nchar itable</w>\nin y</w>\nz ah\ncompet itions</w>\nbe av\nplu gged</w>\no is</w>\ndo om\nastron om\nspeci alized</w>\nmax i</w>\nta ps</w>\ncellu lar</w>\ndepre ssed</w>\nfolklore thursday</w>\ncri b</w>\ne mul\në° ©\nfi gh\nru z</w>\ncar lisle</w>\nspe ar\nside walk</w>\nde i</w>\ndepend ent</w>\nlac es</w>\nnh s\nðŁĮ Ļ</w>\nreali zing</w>\nnet work\nric he\nre gin\nre fresh</w>\nst ral</w>\npa thology</w>\npla id</w>\npsyched elic</w>\nhin d</w>\nu ka</w>\nalgori thm</w>\nlin king</w>\nprogre ssi\nfe y</w>\nd ade</w>\nhydr ated</w>\nb ant\nfam ed</w>\ncot sw\nbo ise</w>\nas c</w>\nrac ing\nja vier</w>\nww en\nmar lins</w>\npoo p</w>\nswe pt</w>\ntoni ghts</w>\nwe f</w>\nani me\nslo vak\nâŀĸ âŀĸ\ncla us</w>\nlem me</w>\ncli ppers</w>\nre ls</w>\narianag rande</w>\nr te</w>\nko t\nthal apathy</w>\nhungar ian</w>\nzu ma</w>\ny von\nis u</w>\njour neys</w>\nclin ics</w>\nbe be</w>\nww f</w>\nn ws\nsuper heroes</w>\ner it\nsle ague</w>\nidenti fication</w>\nmo tto</w>\nba i</w>\nsour ced</w>\nill er\nap i\npri se</w>\nunprece dented</w>\ndam as\ntuni sia</w>\ndra in\nundere stim\ne ther\nquarter ly</w>\nrewar ding</w>\nal ham\nwolver ine</w>\ncab ine\nhyp no\nnad ine</w>\nhav ana</w>\nda e\nðŁĵ Ī</w>\ndr on</w>\nread ings</w>\nb ati\npic o</w>\nmer ci\niti an</w>\nwal kers</w>\nel ope</w>\nmi key</w>\ngod zilla</w>\nbur lington</w>\nabu ja</w>\nsocial ism</w>\nat ility</w>\nsh ell\nharry potter</w>\ng no\nab ur\nre leg\nfel ici\nro gen</w>\nneuro science</w>\ninst in\nath am</w>\nvou chers</w>\nj arre\nfu se</w>\ndef ici\nmonte rey</w>\nde port\nmid day</w>\npp ard</w>\nfre ed</w>\name ter</w>\nwil t\nn ingham</w>\npr att</w>\nliber ty\nslo gan</w>\no to</w>\npr i</w>\nco ated</w>\nc pd</w>\nne tt\nil las</w>\nmal awi</w>\nevol ve</w>\naccessi bility</w>\nðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥\nor nament</w>\nb p\nel is\nson line</w>\nchi ro\nfl ick</w>\nib m\nar ak\nen ables</w>\ngar land</w>\nsan e</w>\ncu ties</w>\ntri p\nrotter dam</w>\nn ys</w>\nlam ps</w>\nlu cas\nbo g\nra ils</w>\ntravel led</w>\nhic ks</w>\nen u\nsab ha</w>\nscru b</w>\nhi er\nhart ford</w>\nfo o</w>\nfer nandez</w>\ntre vor\nmat tress</w>\nappo intments</w>\nale j\nfe i\no logist</w>\nsaf ar\noc ta\nsr c</w>\nsha un\nambi ent</w>\ndri c</w>\nbi ker</w>\nshe e\nmust ache</w>\nh ta\nbo one</w>\nher ty</w>\ncar dio</w>\nbra kes</w>\nrec ital</w>\nconsi sts</w>\noverwhel med</w>\ncau l\nrobb ins</w>\nim it\nal th\nur l</w>\nbi bli\non ne</w>\nblack livesmatter</w>\ndiffic ulties</w>\ntel ang\ntall er</w>\nðŁĵ Ĩ</w>\ndeb ating</w>\nbur rito</w>\nmo vember</w>\nstrength ening</w>\nbo e\nte stam\nmirac les</w>\nbase ball\nre nee</w>\nðŁĳī ðŁı»</w>\nal fa</w>\nâĺ ĺ\nunstopp able</w>\nec s</w>\ng mo</w>\ngiftide as</w>\npath way</w>\nfen cing</w>\nðŁİ ¤\nb ham</w>\nra s\nsk o</w>\nd led</w>\nthel ast\nmagn um</w>\nbin ary</w>\nwil de</w>\nwil der</w>\nwh ati\nbarbe cue</w>\nh ism</w>\ncan oe</w>\nkur di\neli ve</w>\nadvant ages</w>\nmad ame</w>\nbi er</w>\nmis sing\nenter tain</w>\nair force</w>\ny ama</w>\nc is</w>\nhash tags</w>\nj is</w>\nve il</w>\ndream y</w>\nten se</w>\nmay ward</w>\nch ateau</w>\nhunt ington</w>\nâļ ĵ\nv all\nup on\nbl ouse</w>\ndun es</w>\nðŁĺ ´\nfert ility</w>\nm ole</w>\ncurren cies</w>\nst u</w>\nber lin\ntoa sted</w>\ndiv as</w>\nwal t\nlar k</w>\npor a</w>\nhit ter</w>\num er</w>\nchil led</w>\nbal ancing</w>\nfa is\ny in</w>\nor tiz</w>\neast enders</w>\nh ate\nur al\nap ril\ntim el\nà ±\nper o</w>\nsto cked</w>\nrespec ts</w>\nth t</w>\nbest friends</w>\ngiving tuesday</w>\nbe ad</w>\ninv ent</w>\nim i</w>\nnap les</w>\ncomb ining</w>\ntok ens</w>\nthir st</w>\nma sc\npar rot</w>\nsp u\ndent on</w>\n* -*</w>\nt res</w>\nsubur ban</w>\nwid th</w>\nsi ve\ncon tender</w>\nsiri us\nlo k</w>\ntroop ers</w>\noutra ge</w>\ntur bo\nfrag ile</w>\nme ssed</w>\ndo h</w>\ndisc ord</w>\nnetany ahu</w>\nre sign</w>\nforgi veness</w>\nmo han</w>\nmun ch\ncam ou\nidenti fying</w>\nenab ling</w>\nhot ter</w>\nthorn ton</w>\njai pur</w>\nar ya</w>\nðŁı» âĢįâĻĢï¸ı</w>\nmu staf\nmaj ors</w>\no ke</w>\ndu ffy</w>\nroh ing\ntil t</w>\nðŁĩ®ðŁĩ ³</w>\nrock star\nshe ep\nhend rix</w>\nra v</w>\nin vention</w>\ndo u</w>\nlagun a</w>\ngru mpy</w>\nsw is\nim pe\n) '</w>\nyou ths</w>\nbun ker</w>\nst ache</w>\noppo se</w>\nindi es</w>\nacceler ate</w>\nml p</w>\ned en\nw ann\nk ail\nakshay kumar</w>\nsu pt</w>\npol ym\nmidd leton</w>\nextra ordin\nwil son\naustrali an\nalumini um</w>\nway ne\nalum nus</w>\nmat ics</w>\ngri m</w>\ner nie</w>\nopp a</w>\ncompetit ors</w>\nrand all</w>\nh ence</w>\ndecla res</w>\npre aching</w>\nsha he\ncan e\nsustain able\nstap les</w>\nle dge\nad ena</w>\ndoctor al</w>\nbur gundy</w>\ndecor ate</w>\nren dered</w>\nri sen</w>\npr ank</w>\ndi or</w>\nbee thoven</w>\nflo or\nac com\nto t</w>\nho dg\ntouri sm\nsay in</w>\nobjec tive</w>\nmar kers</w>\npremi ership</w>\nen abled</w>\ncamou fla\ngi ant\nÑ ģ\nsmo key</w>\nric ket</w>\npan g</w>\nde pending</w>\ns ation</w>\nevol ving</w>\ninter cep\ncen sus</w>\ntof the\nre en</w>\nmendo za</w>\ntrum pet</w>\nmarke ters</w>\nan it\nðŁĻ Ĭ\nnorth western</w>\nv la\nfoto gra\nblackand white\nche wan</w>\nwi g\ntro om</w>\nginger bread</w>\nk n</w>\nro mero</w>\nn fc</w>\nor chi\nfun ko</w>\nsour ce\nf s\nra ped</w>\no st\ntar ot</w>\nann ually</w>\nðŁĺ ¬\nr ill</w>\ndel av\n.. !!</w>\nse s\ncan n</w>\nmedic are</w>\nph el\nape x</w>\nguardi an\nrema ined</w>\nr pm</w>\na Ã±\nstory month</w>\ninstag ood</w>\nneighb our</w>\np ing\nsem ite</w>\nmy stic</w>\nas cot</w>\nmat er</w>\nhand ful</w>\ndang ers</w>\nti d</w>\nana heim</w>\nopol y</w>\nsh allow</w>\nnami bia</w>\ntor ia</w>\nprocu rement</w>\nbig bang</w>\nannoun cements</w>\nprosecu tor</w>\nbeng als</w>\nsal le</w>\nen roll\nga stro\nsugge stion</w>\nba k</w>\nha ul\nbudd hism</w>\nberni esanders</w>\nflu te</w>\nfati gue</w>\ncyn thia</w>\ncho i</w>\nir win</w>\ngu a</w>\nstr ous</w>\nh p\nba p</w>\nsatisf ying</w>\nplay a</w>\nðŁİ ¼</w>\ninst ap\nal ice\nt p\nirri gation</w>\nðŁĩ¬ðŁĩ §\nin tric\nclu es</w>\nple x\nsa x</w>\nhe pat\ndump ed</w>\nsignific ance</w>\nby u</w>\nmedic ation</w>\npro v\ntough est</w>\ncorn ish</w>\nâŀ ľ</w>\nkel ley</w>\nu v\nsi zz\nsi bling</w>\nme st</w>\ndi stor\ndiplom atic</w>\naun tie</w>\nb hat\nson ic\nbren da</w>\npump kins</w>\nro ch\nblack burn</w>\nur ged</w>\nshi a</w>\narrange ments</w>\nfloo d\nsa unders</w>\nlec turer</w>\nnou ri\npopul ations</w>\ndiplom acy</w>\nconsist ently</w>\nðŁ¤ Ļ\nt mund</w>\ncauli flower</w>\nl ily\nvocab ulary</w>\nvari eties</w>\ncoo ker</w>\nup town</w>\nqu ent\nmo sa</w>\nre inde\nvelo city</w>\nspru ce</w>\nsocial medi\ni ber\nvolun tary</w>\nproce ssed</w>\nbal tic</w>\ny ang\nleban ese</w>\nd p\ndol ly</w>\narrange ment</w>\ny uri</w>\ncran berry</w>\nkal yan</w>\nelev ation</w>\ncli ff\npu shes</w>\nìĬ ¤</w>\nsil ic\nco wx</w>\neter nity</w>\nsla ves</w>\nvine gar</w>\nglou cester</w>\ncon tained</w>\nbreaking news</w>\naga inst\nrenov ated</w>\nnorm andy</w>\nhero in</w>\nys m</w>\nmo ds</w>\ngre ek\nun di</w>\ntren ch</w>\nv h</w>\nencoura ges</w>\nhead ache</w>\ngr ange</w>\n: '</w>\never green</w>\nÙ Ĭ</w>\nreck on</w>\nab used</w>\nth ru\ncho ice\nti dy</w>\ncol der</w>\nscho ice</w>\nha in</w>\nbru m\nli ars</w>\nbre it\nyor ker</w>\nsh ack\nhe idi</w>\nmicha els</w>\nsco pic</w>\nfasci st</w>\nplay ful</w>\nca c</w>\nyas ss</w>\nsh ad</w>\n.. ?</w>\nqu en\nram irez</w>\nclif ton</w>\npr s</w>\nbest fan\nâģ ł\ngener ating</w>\nhead set</w>\ndisappo intment</w>\nabstr act\nbo iled</w>\nparen thood</w>\nazerbai jan</w>\nexhib iting</w>\nbom bay</w>\noli vier</w>\nko so\nun lea\nmat ernity</w>\niz er</w>\nsi ves</w>\nr hu\ncol l</w>\nsaskat chewan</w>\nfre akin</w>\nde k</w>\nna g</w>\nstab ili\nðŁį ķ</w>\norgani zer</w>\nbo sses</w>\nar u</w>\nu va</w>\nat able</w>\nta un\nafter wards</w>\nfert ili\nver ge</w>\naz i\nmor ph\nà¹ ģà¸\njer k</w>\ncosme tic</w>\nko w</w>\nstru st</w>\nap ache</w>\npost cards</w>\nfor mul\nì ĭ\nspin al</w>\njack pot</w>\nelec tri\nÃ Ń</w>\nlo y</w>\ngra der</w>\ndiab lo</w>\nar di\nhe sit\nf w\narch ery</w>\npa sh\nthe ories</w>\nrepe al</w>\nre live</w>\nper cy</w>\nâĺ Ĩ\nim in\nsyn chron\nsham poo</w>\ncoup ons</w>\no to\nla i</w>\nthou ght\nluxembour g</w>\nmo v</w>\nðŁĺ ¥</w>\nge mma</w>\nse ated</w>\nm ga</w>\nstrat ford</w>\nun certainty</w>\nshi fts</w>\nest o</w>\nfo ol\nfire arms</w>\ncor rie</w>\nki ki</w>\nappa rent</w>\np ills</w>\nolym pia</w>\nfi d</w>\nelev ated</w>\nde cks</w>\nignor ing</w>\nav alan\nro v</w>\nwhist le\np tsd</w>\nmilit ants</w>\nrobo tic</w>\npac ers</w>\nquil t</w>\nbankrupt cy</w>\nlic h\nper cussion</w>\ncelebr ity\nal s\n( ;</w>\nsu t\npokemon go</w>\nh g\noff s</w>\ngibr altar</w>\nscre ams</w>\nbilli e</w>\ngen ome</w>\nmar in</w>\nbe ams</w>\narch bishop</w>\nem in</w>\nbedro oms</w>\ng ated</w>\nol ly</w>\nwarran ty</w>\nat own</w>\ncudd les</w>\ngun na</w>\nk ic\nvi ve</w>\ncy mru</w>\nnar row\npro b</w>\nle o\nrefe rences</w>\nmanufac tured</w>\ncho pper</w>\nbrun swick</w>\nsem is</w>\ndon ia</w>\nr ye\nman o</w>\nhur ting</w>\n? #</w>\nhol li\ninvestig ations</w>\nc els</w>\nðŁĵ ŀ</w>\nle ster</w>\ntemp les</w>\nsto rey</w>\nmc mahon</w>\ntoi lets</w>\nwo of</w>\nï¸ İ</w>\nle verage</w>\nat om</w>\nnight mares</w>\nvictor ious</w>\nhaun ting</w>\ncustom er\nag i\nyo ongi</w>\nmon ty</w>\nver onica</w>\nw ur\ninti mid\nblan kets</w>\nvolu tion</w>\nj m\nâĺ İ\nam on</w>\njud ith</w>\nðŁĺİ ðŁĺİ</w>\ndistr acted</w>\ndri p</w>\nhurric ane\nand es</w>\nrevel ation</w>\ntro op</w>\nab leg</w>\ncol lin\ntibet an</w>\nwor rying</w>\ninter nationally</w>\neat er</w>\ncamero on</w>\nbrad or</w>\ny uk</w>\nðŁĴĹ ðŁĴĹ</w>\ntra k</w>\nslo pes</w>\nci er\nne a</w>\nol er\nta ka\nalbi on</w>\nvolcan ic</w>\nam n</w>\na fi\nob stac\nface time</w>\nger ing</w>\nn pr</w>\nmetall ica</w>\norgan ic\nðŁĴ ¡</w>\nki dd</w>\nd ances</w>\npemb ro\nwash er</w>\nm its</w>\nom er\nemo tionally</w>\ntan go</w>\nip o</w>\ndo cks</w>\nscan ning</w>\nspec s</w>\ntho m</w>\nthe ology</w>\nemer gen\nom i\ng pa</w>\nselec tions</w>\nun necessary</w>\nima ge\nter s\ninduc ed</w>\ngi gan\nrent als</w>\nsupp lied</w>\nm fa</w>\nshan kar</w>\nlat er\npa jam\ncla ve</w>\nÙ ģ\nma hin\ncarl son</w>\navi an</w>\nano va</w>\nkati e\naj ith</w>\ndesign ated</w>\nchocol ates</w>\ninvestig ators</w>\ngla zed</w>\nprin cess\ner ry</w>\nra gn\nou rable</w>\nhr u</w>\nsun dance</w>\npeuge ot</w>\nsteam punk</w>\ngh lin</w>\ngre ase</w>\nhi res</w>\nz ap\nper ce\nj ill\ntom e\nhe hehe</w>\njoy ful</w>\nmae stro</w>\nni shed</w>\ngene alo\nv ich</w>\np its</w>\nfox es</w>\ngood man</w>\nemer son</w>\nlo bes</w>\ncon verse</w>\no ats</w>\nthom son</w>\nra him</w>\nmal ware</w>\nah i</w>\nman kind</w>\nre sin</w>\nim g</w>\nsw ood</w>\nkin der</w>\nsc roll</w>\nar a\nsak ura</w>\nro bbed</w>\nxi on</w>\nny a</w>\nc ism</w>\nce dar\nbe in</w>\nmour ning</w>\ntor to\nheath row</w>\ndone gal</w>\nbar b\nhydr ation</w>\nk or</w>\nelim ination</w>\nsu pdates</w>\nhill s\nappe ti\nstar red</w>\nko m</w>\ngw en</w>\ndd d</w>\ncra y\nsc anner</w>\npersonal ised</w>\nseren ity</w>\nre design</w>\nmeta ph\nbox ed</w>\njudg ment</w>\nno se\në ¹\ner ad\nac ne</w>\nsupp liers</w>\nener getic</w>\nv om\nas ap\nðŁĶ ¸</w>\nir vine</w>\nhat ch\nla ss\nad ren\nwaff les</w>\naccur ately</w>\nici o</w>\nitt le\nse un\noccup y</w>\nweb cam\nthene w\nent es</w>\nga i\nj w</w>\naccoun table</w>\nvis or</w>\nir rit\nlicen sing</w>\nhudder sfield</w>\ngen ie</w>\nðŁİ ¾</w>\natmo spheric</w>\nten sions</w>\nspart an</w>\nclif ford</w>\nol an</w>\nnorth bound</w>\name en</w>\ncen sor\nu el</w>\nster y</w>\n$ $\nfar rell</w>\nhy ster\ncl t</w>\nse dan</w>\nrep lied</w>\ndescri bing</w>\nmicro wave</w>\nsla b</w>\npro sp\nassi sting</w>\nru bio</w>\ne than\nhh hhh</w>\ngu ay</w>\nz man</w>\nra ise\nroll ing\no e\nn ile</w>\nambro se</w>\nscar borough</w>\nhero ic</w>\ncoo ks</w>\nmor t\nchop ra</w>\nðŁĮ ·</w>\nto b</w>\nshav ing</w>\nstac ey</w>\ndor m</w>\nmotor sports</w>\nwi ki</w>\nfol ds</w>\nsp iced</w>\nstress ful</w>\nliter al</w>\nfu dge</w>\npe ggy</w>\nwa ite</w>\ntre sses</w>\nse sh</w>\npr ic\nðŁİ ħ</w>\nfri ght\nr va</w>\nmumb ai\npo m</w>\ntt v</w>\ncel lar</w>\ntom e</w>\nandro id\ndor is</w>\ntsun ami</w>\ntin der</w>\no ec\nm wc</w>\ndor tmund</w>\nno thin</w>\nl iti\nso u</w>\nbelieve in\nat u</w>\nkno cks</w>\nmag ni\nss sss</w>\nro hit</w>\nine ws</w>\nang i</w>\nm andy</w>\nke ttle</w>\nintermedi ate</w>\nav ant</w>\ncur l</w>\nendor sed</w>\nori o</w>\nur t</w>\nconsider ation</w>\nwi res</w>\nshel ters</w>\nb ino</w>\nvik ram</w>\nimple mented</w>\nly dia</w>\nbu k</w>\nparo dy</w>\nc news</w>\nunder graduate</w>\ncanu cks</w>\nsam i</w>\npolit ically</w>\nro tten</w>\ngh z</w>\ntex tiles</w>\nover load</w>\nmoder ni\nrecre ational</w>\nfli r\nbat on</w>\ntypo graphy</w>\nov ation</w>\nintrigu ing</w>\npilgri mage</w>\nal ge\nad ays</w>\ntcm party</w>\nsp elled</w>\ncur ls</w>\nboo ze</w>\nste m\nann es</w>\nir ls</w>\nspon ge</w>\nsho pper</w>\nsig nation</w>\nbra ss\nmi stress</w>\nle ah\nbeg inner</w>\nlau derdale</w>\naugu st\npre school</w>\nta ping</w>\ntai pei</w>\nexecu tives</w>\nb d\nrhe tor\nesc or\nimmun o\ndeeplear ning</w>\nstat ues</w>\nit us</w>\nmanu script</w>\nly ric\ncor vette</w>\nmol ly\nla ge</w>\nde p</w>\ncn bc</w>\nle st\nje ssi\nfi fe</w>\ngriff ith</w>\noppo sing</w>\nran g</w>\ndr ills</w>\nrespec tful</w>\np ity</w>\nd ell\nhar ding</w>\nplay boy</w>\nblo ke</w>\nshut out</w>\nk ili\no sp\nse attle\nbc poli</w>\nmis es</w>\njourn als</w>\nteam ing</w>\nes ther</w>\nfre ddy</w>\nĶ ï¸ı\nmetr ics</w>\nno tre\ngar ry</w>\nfor ty</w>\nnavi gate</w>\nperio ds</w>\nbened ic\nj id</w>\nda w</w>\nance stors</w>\nrestor ing</w>\ncon g</w>\naller gy</w>\ntit anium</w>\nc ence</w>\nlean ing</w>\nab bas</w>\nv ast\nuc f</w>\nroof ing</w>\ne man\nseve rely</w>\nvo gue\nve au</w>\nin bound</w>\nd z\ntane ously</w>\nstret ching</w>\nman chester\ndr yer</w>\ndav is\nkan th</w>\nthe game</w>\nit ted</w>\nre tain</w>\nel les</w>\nconge stion</w>\nfrat ernity</w>\nol lie</w>\nlo ki</w>\nfre ely</w>\ncho o</w>\npon y\nsc ep\ntab ly</w>\nbal t</w>\nrock n\ndi me</w>\nlo gging</w>\nðŁį ·\nad u</w>\nha voc</w>\nwater ford</w>\nchar is\nswee tie</w>\nrun ning\nner d\nerdo gan</w>\nz ara</w>\nweigh ing</w>\nfif ty\npre cise</w>\nlow ell</w>\nkurdi stan</w>\nr yo\nor th</w>\nsyn th</w>\nlin ers</w>\nphenomen on</w>\nart illery</w>\nil legally</w>\nconstru ct</w>\nnostal gic</w>\ngar th</w>\nal ta\nshel ton</w>\na sean</w>\nw ander</w>\ndur ban</w>\ndi versi\nbon o</w>\ncl on\nle man</w>\nsh un\nobstac les</w>\nappet ite</w>\nfe eder</w>\nrespir atory</w>\ndi xie</w>\nformu la\nan to</w>\nso ber</w>\nextin ct</w>\nau c\ning les</w>\nlegitim ate</w>\n; ;</w>\nmin nie</w>\nipsw ich</w>\ndram atically</w>\nðŁĳı ðŁı¼\ningh am\nmilit ary\nmon et</w>\nus navy</w>\nfor k\ndun no</w>\nplay er\nq otd</w>\nst oo\nex or\nethiop ian</w>\nfilm fest</w>\npe red</w>\nc ate</w>\nsau di\nin ner\nsin cere\ntion ality</w>\nale e</w>\nde eds</w>\ncooper ative</w>\nir onic</w>\ncro cod\nbr ary</w>\npost season</w>\ncam per</w>\ncan ary</w>\ne in</w>\nexten sions</w>\nnb d</w>\nsher wood</w>\nspo kane</w>\nhu mp</w>\njit su</w>\nê ¹\ndar yl</w>\np si</w>\nstab bed</w>\noffer ings</w>\nexpe cts</w>\ncav al\nbody building</w>\nfr aming</w>\nf ca</w>\nye arly</w>\nbom bed</w>\nsk il\nresear ching</w>\njud iciary</w>\ngree ted</w>\ntu dor</w>\nmil o</w>\ninnov ate</w>\nðŁĺ Ľ\nr hs</w>\nru by\ncontribu tor</w>\nfam er</w>\nsoci ally</w>\nm lin</w>\nfi ery</w>\nut ter</w>\nbeau t</w>\nit os</w>\nde voted</w>\nrain bow\nbar ney</w>\npe ren\nar jun\nr na</w>\ngab by</w>\nut i</w>\nhann ity</w>\npick le</w>\nser v</w>\nqu akes</w>\npp e\nfe m\nwh itec\nj n\nvictor ies</w>\nðŁ§ ¡</w>\ngol fer</w>\ncongratul ates</w>\nresul ting</w>\nmechan ic</w>\nur ve\ncen tered</w>\nkie v</w>\nan s\nin cub\n< <\nc mo</w>\nbestfan army</w>\ndap h\nen ham</w>\non cology</w>\nku sh</w>\nt xt</w>\nori ented</w>\nfashion able</w>\nc sr</w>\nsa hara</w>\nr ack\npd p</w>\nhan son</w>\nà¸ ĩ\nti ers</w>\nra r</w>\npan am\nin sky</w>\nsa hi\ntestam ent</w>\nasth ma</w>\nin her\nfisher ies</w>\nor der\nho we</w>\ngall on</w>\nep is\nsuz anne</w>\ndrow ning</w>\npaneli sts</w>\nðŁĺ ²</w>\në ¦\nal ach\ncommemor ative</w>\nat tribu\nðŁĳ »\nmo o</w>\nvisi onal</w>\nweek sary</w>\ngu st</w>\nak in\npoin te</w>\nee e\ndi spar\nni pp\ndent al\nst all\npi an</w>\nbor e</w>\nul ster</w>\ntic k\nir r\ntae hyung</w>\nmicro phone</w>\nbermu da</w>\nga ard</w>\nel er</w>\nplumb ing</w>\nhu gely</w>\nâļ« ï¸ı</w>\nrace way</w>\ncam bridge\nmar cel</w>\nburn ley</w>\nto ast\nholly wood\nfa sting</w>\nme red\nhib ition</w>\nca pped</w>\nbenef icial</w>\now ning</w>\ncont amin\narab ian</w>\nto on\ncap ac\nhul u</w>\nsm ir\nnutri ents</w>\nse in</w>\ngraph s</w>\ncon ditional</w>\nðŁĳ ħ</w>\nor ac\nplay in</w>\nnor the\ntor nad\nmar ian</w>\nju mbo</w>\nlex i</w>\nincredible india</w>\nroad to\nuk one</w>\nconfu sing</w>\nsp h</w>\nshan k</w>\npi ed\nmq m</w>\npositi vely</w>\nsher ry</w>\npath ways</w>\nconsi ders</w>\ntof u</w>\nargu ments</w>\nresil ient</w>\nche tt</w>\nwith dra\nter o</w>\nated ly</w>\nsw ana</w>\nhe b\nfli ght\nhar ley\ndecre ase</w>\nkind le\nbook shop</w>\n³ ï¸ı</w>\nmarty rs</w>\nsm ur\nmc cl\nconcer to</w>\nsti me</w>\nrejo ice</w>\napp lau\ncle ment</w>\nmer kel</w>\njai me</w>\nim mortal</w>\nisle of\nmar co\nyoutu ber</w>\nstal king</w>\nme too</w>\nst ack\nsp ouse</w>\nu st</w>\nlu v\nâļ¾ ï¸ı\neque strian</w>\nev ing</w>\nfl in\nnick name</w>\nthe big\nas ar\nst acks</w>\nwal ker\nbor a</w>\nkidnapp ed</w>\nhur ling</w>\nhumb old\nrec alls</w>\nco pper\nann is</w>\nse o\nmer ger</w>\nmu ir</w>\nad dy</w>\nðŁĴª ðŁĴª</w>\nbe x</w>\ncr acy</w>\ncon an</w>\ncongratul ation</w>\nmid st</w>\nâĻ ¬</w>\nfor bi\nop tic</w>\ncr ate</w>\ncrocod ile</w>\nmad agas\nsecur ing</w>\nast on\no gue</w>\nsavi or</w>\nsalis bury</w>\nlove it</w>\nfuji film</w>\ncast les</w>\nas st</w>\nar rows</w>\nsp acious</w>\ntr s</w>\npoly vore</w>\nprogre ssion</w>\nm ri</w>\nnel son\nbi m</w>\nindic ator</w>\no da</w>\npe pe</w>\nre signation</w>\ngu t\nsne aker</w>\nlog ically</w>\naz y</w>\nare lla</w>\nte aring</w>\njo shi</w>\nssion ism</w>\nq pr</w>\nmari ah</w>\np x\nble ed</w>\nmi an</w>\nmed ley</w>\nwe iss</w>\nker ry\ngat ory</w>\nat al</w>\nmadi son\nav enger</w>\nnab y</w>\npl and</w>\ngi les</w>\nfresh water</w>\nd ington</w>\nta j</w>\ndemonstr ates</w>\nn tv\nbul bs</w>\nsunday morning</w>\npe ake</w>\nsouven ir</w>\nwa h\nton nes</w>\nm kt</w>\ncomplex ity</w>\ncon den\nross i</w>\nb ing\ny ds</w>\nsu k\nn go</w>\nmid land</w>\nol y</w>\nlife is\nri pple</w>\nmo reno</w>\ndd ers</w>\ntu s\ná ĥ\nbou l\nx a</w>\nhol dings</w>\nwn y</w>\nshadowhun ters</w>\nke i</w>\nasp ire</w>\nm ous\now en\nso ak</w>\nskir ts</w>\nmoun taine\nstor ming</w>\nch rome\nri ots</w>\nsar ato\namaz e</w>\nless ness</w>\nnav ar\ncrit eria</w>\nra fa</w>\nindul ge</w>\nay er</w>\npor to\nnam o</w>\n........ ........\nyi elds</w>\nval le\nj h\nmac ron</w>\nsa ins\ndur ant</w>\ntra ilers</w>\nwo t</w>\nconfeder ate</w>\nsh rin\nid ol\nform ally</w>\nten e\nmotor cycles</w>\nthan g</w>\nno de</w>\nbang er</w>\ndal y</w>\np ats</w>\nenroll ment</w>\nau ctions</w>\nat al\nar bor</w>\nlo gos</w>\nde arest</w>\ntrans action</w>\ndom ingo</w>\nfle a</w>\nser mon</w>\nde ck\nsin cere</w>\nquesti oning</w>\njuli o</w>\nwas p</w>\npre tz\narmen ian</w>\nk ham\ninflam mation</w>\npicture sque</w>\nacci dental</w>\nfilm makers</w>\nðŁĺ ļ\nðŁĴ į</w>\nca sey\nso b\nyee zy</w>\ngood will</w>\nparag ra\nss ly</w>\nfe ather\ndy ed</w>\nassassin ation</w>\nna de\nb cs</w>\napp lies</w>\nfemin ine</w>\nfe u\next ent</w>\ndepu ties</w>\nl ack\npsy chic</w>\ngo i</w>\nkill ings</w>\npse u\nðŁ¤ ª</w>\nun c\nmar l\ntan e</w>\nmck enna</w>\nsur fer</w>\ninflu ences</w>\nfree way</w>\nhack ney</w>\nmal aria</w>\nel and\nte au</w>\nrema stered</w>\nØ ±</w>\nraz or\ngg y\ncor ro\nlak sh\nfla ir</w>\nhonest y</w>\nhoor ay</w>\nde pp</w>\nam c\nwedne sdays</w>\nq a\ned its</w>\n- $</w>\nse villa</w>\ndou bled</w>\nhuman ities</w>\nc cot</w>\nsom os</w>\nr ine</w>\naf a</w>\nsi oux</w>\nre construction</w>\nwel ding</w>\nth reads</w>\nam ish</w>\nencoura gement</w>\npo der\nbo ck</w>\nbal m</w>\np tions</w>\nstand up</w>\naccompli shments</w>\nguar ding</w>\nconvic tion</w>\nac ion</w>\nnapo leon</w>\ndepic ting</w>\natt ack\nsu i</w>\nwear able</w>\nâĸª ï¸ı</w>\npot ter\nesc ort</w>\nvis e</w>\nto ts</w>\nbo on\nevent profs</w>\nangu lar</w>\nwomenshi storymonth</w>\nbar row</w>\nsch i</w>\nac comp\nti k\nl end</w>\nkensing ton</w>\nwol fe</w>\nst acked</w>\ncra shing</w>\nexhi bit\nwing ed</w>\nsab rina</w>\nma sa\nk ms</w>\nalway s\net t</w>\npla sma</w>\ncounsel ing</w>\npick les</w>\nnfl draft</w>\nmr s\ninev itable</w>\ncoura geous</w>\nstaf ford</w>\nwriters life</w>\nho s</w>\ne j</w>\ngh yun</w>\ntrade mark</w>\nadri an\ninfluen cer</w>\ncoron ation</w>\nra ging</w>\nexplo red</w>\nusa f</w>\nexcep tion</w>\neu x</w>\ntan ker</w>\nsw ami</w>\npac ket</w>\nðŁĳ¨ âĢį\nf en</w>\nshe en</w>\na ero</w>\nj l\nre gal</w>\nnw t</w>\nau ster\nmeh ta</w>\nchar ge\na ste\nb ate\ninf eld</w>\nracec ourse</w>\ncollap sed</w>\nfle ece</w>\nz il\nal lie</w>\nalternati ves</w>\ngeor ges</w>\nðŁĵ į\nquir ky</w>\nfc b</w>\nnat geo</w>\nphilanthro py</w>\nbra i\nevery day\nðŁĲ °</w>\nach ers</w>\nja an</w>\nfin es</w>\nq i\nfisher man</w>\ndistin ct</w>\ngri mes</w>\nnation alist</w>\ncomm ence</w>\nro wn</w>\nâĢ ³</w>\nz ing\nf ter</w>\nhr w</w>\nbaro que</w>\nbl ender</w>\nkitt y\nhoo ks</w>\nc ited</w>\nw anda</w>\nconsen sus</w>\nreinde er</w>\nan and\nsupp ly\nme ds</w>\nv n</w>\nol ph</w>\nrat chet</w>\nshel don</w>\nsecur ities</w>\në°© íĥ\ncro m\nmosqu ito</w>\nj eric\nim mac\ndimen sions</w>\nâ ¤\ndi ssi\nsponge bob</w>\ndami en</w>\nsteven son</w>\njo anne</w>\ndel ish</w>\nyi kes</w>\nthan x</w>\nsurve ys</w>\npostpon ed</w>\nalco holic</w>\nal ised</w>\nðŁĻı ðŁı»\ndo ch</w>\nsen tim\nmered ith</w>\ncom pares</w>\nb ago</w>\nhappy days</w>\nmo ss\nãħ ĭ</w>\nne c\ngn ment</w>\nfrustr ated</w>\ncomb in\nri v\nec lec\ncol lo\ncompli ment</w>\nactor slife</w>\nct to</w>\nnic ar\nop hon\napar the\nman t\nja de\ntrol ley</w>\noptimi zation</w>\neye on</w>\neco logical</w>\nqui st</w>\nep he\nà¥ ĩ</w>\ncin co</w>\nappo ints</w>\nold school</w>\nc pr</w>\nbehavi oral</w>\nmin aj</w>\n:- (</w>\ntag ging</w>\nev al\njo aqu\nðŁĺ «\nha k\nde me\njama ican</w>\nso s\nhy att</w>\nhand book</w>\nlibr arian</w>\nhanni bal</w>\npump ing</w>\nch om\nf man</w>\nga i</w>\nhu ll\nrespon ders</w>\ngreen ville</w>\nn us\nvau gh\nðŁİī ðŁİī\nta xi\ngold berg</w>\nman tra</w>\nte ase</w>\nforbi dden</w>\nmetho dist</w>\nati vity</w>\n* ***</w>\nec t</w>\nmc gr\nĦ ëĭ\nse b</w>\namid st</w>\ndisapp ear</w>\nthy ro\nphili ps</w>\ner ina</w>\nv icious</w>\nstream er</w>\nmillion aire</w>\nma p\nstr ick\nhack athon</w>\ngh a</w>\ned ic\nmi ka</w>\npe ck\nill i</w>\nanto ine</w>\nar ca\nop tic\nma ure\nðŁĩ¦ ðŁĩº</w>\ncla shes</w>\nman ly</w>\nâĺ ģ\nal var\nand res</w>\nme i</w>\nel m\nww ww</w>\nal tered</w>\nl te</w>\nê¹ Ģ\nmo jo</w>\nfor rest</w>\nthal ai\nnon t</w>\nspee ches</w>\nacknow ledge</w>\nign ite</w>\nx factor</w>\nðŁ¥ Ĥ</w>\nmead ow\ndisru pt</w>\ndebu ted</w>\nscrim mage</w>\npharmaceu tical</w>\nfi dd\nfound ations</w>\nphilosop her</w>\net al</w>\npubli shers</w>\nbo ys\nc ke\nru gged</w>\nopti mism</w>\nre be\nphil harmon\nnar cis\nral lies</w>\nlu is\ngo blue</w>\nfol ded</w>\nun acceptable</w>\noptim al</w>\nli sa\npol aro\n+ .</w>\nen za</w>\nâĿ £ï¸ı</w>\nmon opoly</w>\ngrace ful</w>\ndair y\ndu a</w>\ndiffic ulty</w>\njudge ment</w>\no si\nmer sey\nflu x</w>\nnew found\nter ns</w>\ndimen sional</w>\nin vic\nal ba</w>\nam it</w>\nabudha bi</w>\nalger ia</w>\nautom obile</w>\nthe ad</w>\nlo tion</w>\nacceler ator</w>\nvac ant</w>\niti on\nlu f\nal ic\npl l</w>\nbla zing</w>\nba z</w>\nsen e\nðŁĳ ¼\nvilla ins</w>\ndirec tory</w>\neis en\nto ck</w>\nbroch ure</w>\nri pp\nhb d\nzayn malik</w>\nnic he</w>\nlo lol</w>\ncertific ates</w>\nmor se</w>\nfac up</w>\nx ham</w>\nun wanted</w>\nim ports</w>\ncarne gie</w>\nfan sign</w>\nmo u</w>\nr alph\ndestroy er</w>\nsw ing\ntrek king</w>\ncili ation</w>\npit bull</w>\ng aps</w>\nho well</w>\ndefin itive</w>\nmc le\nf ps</w>\net z</w>\nbol ly\nlyn n\ngan o</w>\nat ure\nfur suit\nco il</w>\nna v</w>\nbut ts</w>\ntro jans</w>\neu re\nen ko</w>\nsch umer</w>\nhorri fic</w>\ninstall ment</w>\nbr b</w>\nsubur bs</w>\na bel</w>\nvi r</w>\nde sh\ncun ningham</w>\nðŁĲ »</w>\nspan n</w>\nsch we\nke mp</w>\ntr u</w>\nste alth</w>\nqu es\nle w</w>\ndeli ghts</w>\nko ch</w>\nhu mili\ncr iti\nil t</w>\nsp ells</w>\nmi ley\ncar ic\nðŁį ´</w>\nlc fc</w>\nsubstitu te</w>\noun g</w>\n? !!</w>\naf fir\npredic table</w>\nclass of</w>\ner r</w>\ncy press</w>\nchand ra</w>\nage ing</w>\n__ __</w>\nther land</w>\ndon caster</w>\nel in\nyo shi</w>\nsail ors</w>\nhar ris\njo anna</w>\nniger ians</w>\nh ers</w>\npla gue</w>\npro cra\nk no</w>\ncan ton</w>\nbusine s\nun h\npra kash</w>\nc in</w>\nbow en</w>\nco ating</w>\nm als</w>\nbe gging</w>\nsmith son\nponti ac</w>\nsp ies</w>\ndam ian</w>\npl ine</w>\nund ant</w>\nal ta</w>\none ss</w>\nshame less</w>\nda q</w>\nbb m</w>\nwal es\nstam pede</w>\nser um</w>\nÙ Ĩ</w>\ncataly st</w>\nx n</w>\nab sc\nfree zer</w>\nch un</w>\nari os</w>\nmc cre\nfore head</w>\nhe ars</w>\ndamas cus</w>\ntac oma</w>\nardu ino</w>\nencoun ters</w>\nstan ton</w>\nlg b\nab as\n\" ..</w>\nke te\ndrac ula</w>\nele m</w>\ng ne</w>\nzepp elin</w>\nla brador</w>\npul p</w>\nop tional</w>\nor n\nrussi ans</w>\nsan itation</w>\nhil ary</w>\netsym ntt</w>\npen alties</w>\nau st</w>\nig ans</w>\nolympi an</w>\nmedic aid</w>\nvers ace</w>\nva pe\nre stra\npe ep\nsexi est</w>\nst alls</w>\ndi le\nthe a</w>\npunjab i</w>\npupp y\ntuesday motivation</w>\nðŁĵ ļ\nthe flash</w>\nroc ket\nmo dest</w>\nchihu ahu\non na\nk sa</w>\nhur dles</w>\nca ve\nfail ures</w>\nsp lit\nbo ho</w>\ngur l</w>\ndisappo int</w>\nho ward\nnug get</w>\nfran z</w>\nstal ert</w>\nkaz akh\nfor getting</w>\nsch ri\nag ate</w>\nam at</w>\neve rett</w>\ndu et</w>\nveter inary</w>\njuli an\nch ills</w>\nbra ve\nghost busters</w>\nlan do\ngre ets</w>\nprofit able</w>\nd Ã©\nti r\nze e\nom en</w>\npd x\ngray son</w>\nhar i\nfix es</w>\nstab bing</w>\nswim mer</w>\nsymb ols</w>\ncompli ments</w>\npo se\nfunc tioning</w>\nth nx</w>\ngi r</w>\ncorpor ations</w>\nbar low</w>\nlo e</w>\noff season</w>\ndistin ctive</w>\nmarvel ous</w>\nnik on\nenri que</w>\nky u</w>\nja ws</w>\namo to</w>\nlom bar\ntravel blogger</w>\nfa h\nouri sm</w>\ntri stan</w>\nso e</w>\nce ase</w>\nðŁı ħ</w>\nz ac\nmck enzie</w>\ntaxpay ers</w>\nswim suit</w>\nbl o</w>\nles ley</w>\nkan sas\nw ks</w>\nki el</w>\nprovo king</w>\nmy les</w>\nstr ing\nkangar oo</w>\ngalac tic</w>\nfif th\ns ke</w>\nwe ir</w>\nll is</w>\nmat ory</w>\nðŁĩ ¿\nun ci\nre productive</w>\nroo ting</w>\nti des</w>\ngad get</w>\n.... ......</w>\nalex ander\nbow ler</w>\nscre w\napo log\neri ka</w>\nwal ters</w>\nshet ty</w>\nlan e\nban ter</w>\nas ant</w>\nme so\nv ain</w>\n\" \"\"</w>\nus i</w>\nfer din\naccomp lish</w>\nman sfield</w>\nbom bar\ncollabor ating</w>\ncla p</w>\nit ure</w>\ns da</w>\nsmo ky</w>\nna k</w>\nim person\ncar la</w>\ncom ra\nbur gl\nlo co</w>\nti es\nin hi\ntrac ey</w>\nse is\ndiss er\nrr rr\ndra y\nprote ct\ncor ona</w>\nhun ger\nck en\nc eli\ntrou bled</w>\npredat ors</w>\nfic tional</w>\nshav ed</w>\nriche st</w>\nmetab oli\nful ham</w>\ngro oming</w>\nmono chrome</w>\nwa sting</w>\nas co\nast e</w>\nti sta</w>\nremedi es</w>\nung soo</w>\nsouth end</w>\nperman ently</w>\nbu mble\nprocra stin\nident ical</w>\npractic ally</w>\nma scul\nsu ke</w>\nassu red</w>\nval erie</w>\ndevi ant\ngrizz lies</w>\nthi er</w>\npur a</w>\nne pal\nnot ts</w>\nbil ateral</w>\nspo il</w>\ncar mel</w>\ncine matic</w>\nph l</w>\nni fty</w>\nma o</w>\nhypo cri\nla ser\npan try</w>\nmathemat ical</w>\nel isa\ncoordin ation</w>\nbel mont</w>\na it\nradi ant</w>\nbo iler</w>\nman g\nf ag\ncr c</w>\nh ams</w>\nbr in\nâ¬ĩ ï¸ı\nfamil ia</w>\nâĿ £</w>\nsab er</w>\nru pert</w>\ngg an</w>\nrit z</w>\nmic h\nsal ford</w>\nle vi\ngra l</w>\nðŁĴ ¤</w>\nn ino</w>\nce d\nbusiness man</w>\nul tr\nsim ply\ncompre ssion</w>\npa ins</w>\nhal t</w>\në°©íĥ Ħ\nlandsc aping</w>\nn f</w>\ncroo ked</w>\ner d</w>\nitt in</w>\nddle ston</w>\nsur passed</w>\nino a</w>\nda g</w>\nbl en\nexten ding</w>\nat ing\nal gae</w>\nball er</w>\nu mar</w>\nsnoo ker</w>\ncol lu\nflo wn</w>\nthu b</w>\nridic ulously</w>\nki sh\nop le</w>\ndi re</w>\nas ser\nari sto\nsc iss\nh ating</w>\ntrou ble\nsyl via</w>\nsuc cul\nplo ts</w>\nsincere ly</w>\nal er\nlaure ate</w>\nbr ack\natt n</w>\nrif les</w>\nme to\ncollec tible</w>\ncu omo</w>\nconte stant</w>\nconsist ency</w>\nant z</w>\nrang es</w>\nabig ail</w>\nde b</w>\nmini ster\ngrow ers</w>\nan oo\nhoo ver</w>\ndream er</w>\nnu cle\nresear ch\nmi y\nsha hid\nma v\nd honi</w>\ncin i</w>\ndo j</w>\nhin dus</w>\npart ying</w>\ndal i</w>\nalon so</w>\ninform al</w>\nclark son</w>\nit ton</w>\nki an</w>\ncit yo\nmor i\nla sted</w>\nas pen</w>\nlibr ary\nsusp ici\nqu at\nden ial</w>\nfol der</w>\nch ori\nswee ping</w>\neni x</w>\nðŁį Ĥ</w>\nØ Ń\nnas car\nhandmade hour</w>\nmou l\nheat wave</w>\nem er</w>\nexam ine</w>\nib n</w>\ngr ind\npo v</w>\ntion ist</w>\nm bo\nshe ila</w>\nintegr ate</w>\nom es</w>\ntake away</w>\ncer v\ncon nie</w>\ntic ket\nce led</w>\nbi en</w>\nvisu ally</w>\nmadagas car</w>\nsor ry\ngu i</w>\npark run</w>\ntra its</w>\nla be\npois oning</w>\nà¥ Ģ</w>\nvi able</w>\nbohemi an</w>\ndenti stry</w>\nbad os</w>\nspr outs</w>\nmask ed</w>\nte ddy\nðŁĺ ·</w>\nsa f</w>\nsa as</w>\nji ang</w>\nti ght\nspe aker\nwithdra wal</w>\nbc n</w>\nas signed</w>\nclass rooms</w>\nfle ming</w>\nðŁĴ «\nsuper girl</w>\ntot als</w>\ntable top</w>\ne books</w>\nhorizon tal</w>\ncra z\nflu sh</w>\nj ard\nc dc</w>\ner son\nãħ ł</w>\ngreen wood</w>\nni h</w>\nco x\nad a\nlit re</w>\ngo ing\nv icky</w>\ncur ved</w>\nlou ie</w>\ngra ins</w>\nhy e</w>\nlon ge\nreme dy</w>\ntra inee</w>\nsan jay</w>\nsuper stars</w>\nma ser\nman u</w>\ns age\nwh l</w>\nðŁĺĤ ðŁĺŃ</w>\nðŁĳį ðŁı»\nm sd\nen z\nrab hu</w>\nj oo\ngh u\nac er</w>\ne po\nresurrec tion</w>\njustice for\nbl ended</w>\nmo da</w>\navalan che</w>\nfrance sco</w>\nre spective</w>\ng s\nye ast</w>\nwel ch</w>\ndevo tion</w>\nge tin\nathe ism</w>\nam ic\ncarol yn</w>\nlo c</w>\nld nont</w>\nave c</w>\nus da</w>\nle gged</w>\nbra very</w>\nb lower</w>\ncow boy\nhe h</w>\nsti ble</w>\nbuff al\nchann el\nrun chat</w>\nâĺķ ï¸ı\nide ology</w>\nbest seller</w>\ny oo\npe anu\nbon ne</w>\nfel ic\nedi son</w>\nfr actu\nnaren dra</w>\npp ets</w>\nseym our</w>\nri viera</w>\nhe ctor</w>\nnecess arily</w>\nbi anca</w>\nsoci eties</w>\nthe best</w>\nw g</w>\nsent ences</w>\nwin k</w>\nvacc ines</w>\npal ooza</w>\njam ming</w>\nas f</w>\nmp us</w>\nagre ements</w>\nec k\nba c</w>\nhon ore\ncom pul\nwild cat</w>\nim posed</w>\nyo ga\nhud son\ncan celed</w>\nl ich</w>\nfu zzy</w>\nes que</w>\nch uk\nw vu</w>\nse k</w>\nfli pping</w>\nr hon\nwi shed</w>\nwh a</w>\ncap ability</w>\nlen ovo</w>\nìĨĮëħ Ħëĭ\nvi vo</w>\ntv d</w>\nnor a</w>\nsil k\npas adena</w>\nyo semite</w>\nvalu ation</w>\nclo cks</w>\nu ber\nmr c</w>\ndar kest</w>\nau bre\nss o\nbell y\nwrest lers</w>\nkill in</w>\nlou der</w>\nbuck ley</w>\nge el\nad on\nun s</w>\nappe aling</w>\nðŁĳ ¯\nsemit ism</w>\nlist ens</w>\nfit z</w>\nãĥ³ ãĥ\nny lon</w>\nar ty</w>\nseem ingly</w>\nhal a</w>\nsu ited</w>\net y\nshe ds</w>\nmu ffins</w>\nap ric\num ents</w>\nu ta</w>\njam mu</w>\nchelse afc</w>\nstar z</w>\nyo ko\nroo t\nclean sing</w>\ndi ar\npione ering</w>\nihear tradio</w>\ndig iti\nfin dyour\ncan o</w>\nðŁĴ İ\nz ol\nspac ecraft</w>\nsix ers</w>\nmoi sturi\nb ile</w>\nti sts</w>\nhor ton</w>\nrang ing</w>\ncolum bi\nmete oro\nsenti ment</w>\nep l</w>\nfoo th\ntext book</w>\ndrain age</w>\nr ly</w>\nsc ue</w>\nimran khan\nðŁĴ ¸</w>\nmargar ita</w>\ned dy</w>\npredic ts</w>\ngamer gate</w>\nadvis e</w>\ngrowth hacking</w>\nlove you</w>\nug and\nv f</w>\nbeng hazi</w>\ns later</w>\nne wor\nch el</w>\nindependence day</w>\np np</w>\ncul len</w>\nhoo dies</w>\nnum bered</w>\nbrit t</w>\nt sa</w>\nkl tu</w>\ns ages</w>\nmom o</w>\nonep lus</w>\ncol l\ngu ts</w>\nw ta</w>\nmesm eri\nenh ancing</w>\nchiro prac\nj is\nteen agers</w>\nm one</w>\nconstell ation</w>\nsweep stakes</w>\ne ze\nslovak ia</w>\nla ye\npear ce</w>\nwa ver\npo gba</w>\nk ron\nsur geons</w>\nmar x</w>\nti d\ngg a</w>\ndesc end\np ours</w>\nupri sing</w>\nwal la\nsab bath</w>\nbachel ore\nmack in\nk am</w>\npeter borough</w>\nhor a</w>\nðŁĮŁ ðŁĮŁ\nthink big\nr j\nhy drau\nsp al\nunivers it\nðŁı ī</w>\nmail online</w>\nleague of\nten ants</w>\nw ally</w>\nlan ce\nheav ens</w>\ndd r</w>\nbol ts</w>\nam ir\ni phone\nci gar\nen du\nre i</w>\nel abor\nr inging</w>\njohn son\ncharacteri stics</w>\nsal oon</w>\nalgori thms</w>\ntal kin</w>\nm tn\ndi ve\nregion als</w>\nff ice</w>\nhat i</w>\ndeviant art</w>\nso tto</w>\nshir o</w>\nl ama</w>\nk we\nf aded</w>\npor ting</w>\ntu mmy</w>\nest ates</w>\nbuen os</w>\nðŁ¦ ģ</w>\nbeli ever</w>\npen etr\ndar n</w>\nsp ite</w>\ncan opy</w>\nfashi oni\nt illa</w>\npet als</w>\neli jah</w>\nbra wl</w>\nmarty r</w>\në°©íĥĦ ìĨĮëħĦëĭ\nmid town</w>\neric h</w>\nd apper</w>\nsm town</w>\nme gam\nww w\nle le</w>\non s\ncat fish</w>\nfir th</w>\nfossil friday</w>\nball park</w>\nth aw\npot ent</w>\nilli e</w>\ncre ep</w>\ncar p</w>\nso ap\ngun dam</w>\ninfe c\nyy yyy</w>\nà¤ ¨</w>\nz ag\nrit t</w>\ncalcu lator</w>\nbo ca</w>\nok o</w>\nto ad</w>\nthreat en</w>\nrefin ed</w>\nolym pic\naccompli shment</w>\nbacter ial</w>\na ji\ntat um</w>\nfeli z\nshe ed</w>\nj at\nth ic\njam al</w>\nðĿ ĺ\nlin a</w>\nðŁĲ ¯</w>\njo king</w>\nyot po</w>\npin ch</w>\nak ron</w>\nher b\nmotiv ation\nli a\nho stage</w>\ncre ek\ngam ble</w>\nruss ell\npatt i</w>\nfo tos</w>\nc pc</w>\nbro ken\nback the\ncla ys</w>\nu mm\nstock ton</w>\nmat ernal</w>\nÃ¼ r\nla kel\ncent ury\nbe k</w>\ninfe cted</w>\nà¸ ¡\nsmack down</w>\nman ned</w>\nta hoe</w>\nsm es</w>\nbas a</w>\nsu la</w>\naugu sta</w>\n. *</w>\nrohing ya</w>\ngre ed</w>\ncounsel or</w>\nsilhou ette</w>\ngra vit\ncla use</w>\n' -</w>\nbo bc\nocca sions</w>\nnow adays</w>\ndic tat\nbe ard\nn ally</w>\nbrigh test</w>\nkab ul</w>\ninc india</w>\ndhan ush\narchae ological</w>\nche ape\nmizz ou</w>\nd hi</w>\nov ski</w>\nbax ter</w>\nasse mble</w>\nÃ ¢\ngi gi</w>\nac am\nwis ely</w>\nhaz ard\nnorth ampton</w>\nâľĪ ï¸ı\nme th</w>\nbla sting</w>\nre unite</w>\nmu lus</w>\nali zes</w>\nt read\nmil a</w>\ned ward\nko va</w>\npe sto</w>\nðŁĳ ¶\nvit z</w>\nhydrau lic</w>\nrefurbi shed</w>\nmo tel</w>\nisab ella</w>\nhom me</w>\nsever ance</w>\nuph ol\nmis erable</w>\nf ari\nlat ter</w>\nef er</w>\ncrack ers</w>\nes l</w>\nac io</w>\nyy j</w>\nin an</w>\nec b</w>\nz ind\npan as\ntru cking</w>\nre ed\nsh aker</w>\nburge ss</w>\nem pire\nag nes</w>\nn ington</w>\nart works</w>\nfr s</w>\nti le\nbi ome\neu n</w>\nch ong</w>\nameric ana</w>\ngod father</w>\ngo blin</w>\ni shi\n! ).</w>\ntemp ted</w>\ngen omics</w>\nmand ate</w>\nck y\nðŁĴĻ ðŁĴĽ</w>\nsom ali</w>\nbr andy</w>\nin ven\nspoke sperson</w>\npc b</w>\nyu an</w>\nh g</w>\nfa z\nstarwar s\nro wan</w>\nblue grass</w>\ndon g\nd day</w>\ntrin idad</w>\ner ton</w>\nban ning</w>\nre tention</w>\ncu red</w>\ntober fest</w>\nre set</w>\nwe is\ndeta ched</w>\nbehindthe scenes</w>\nimmun ity</w>\nph a</w>\nbra y\nðŁĳ ½</w>\nran cho</w>\nram say</w>\nest onia</w>\nnd tv</w>\n] .</w>\ncab aret</w>\ntar o</w>\nd v</w>\nshow cases</w>\nplu m\nðŁĳ ¸\nson oma</w>\npre pa\nmemor ab\ne stu\ndrive way</w>\nu les</w>\nmagn us</w>\nx r</w>\nnn n</w>\nmuch as</w>\nen ge\nstre amed</w>\nfore stry</w>\naudio book</w>\ntro y\nreck less</w>\nkil om\nru ler</w>\nra k</w>\nproce ssion</w>\ni ons</w>\npo ole</w>\nnoc tur\nwh s</w>\nfarm house</w>\nper a</w>\npar me\nhypocri sy</w>\ns ics</w>\nv ant\ncas k</w>\nholi stic</w>\nau st\nÐ ¿\nin do\nðŁĳ© âĢį\ndi so\ndisp atch</w>\nol sen</w>\nmake it\nen nis</w>\ncent re\nar range</w>\nðŁĮ ¼</w>\nsal ted</w>\nea siest</w>\nf ate\nreg atta</w>\nmo zz\nac an</w>\nsin i</w>\ng ically</w>\nch ops</w>\nchick en\nwork in</w>\nha gg\ninvol ve</w>\nwee ds</w>\nbook day</w>\nwake up\nky r\nmichel in</w>\nfu ss</w>\nre juven\nvac ancies</w>\nincar cer\nm st</w>\nsc ents</w>\nsovere ign</w>\nkick er</w>\nà §\nbo d</w>\nâĢĶ ></w>\nsa h</w>\nmob il\nshrop shire</w>\noph one</w>\ndress er</w>\nmis suni\nhep burn</w>\ni mo\nfoli age</w>\ndiagno stic</w>\nas san\ncycl ing\nguil t</w>\nc sa</w>\npuertor ico</w>\nwin elover</w>\nwake field</w>\ndo ggy</w>\nk he\npa pp\nco g\nal lot\ncu ck\npoe tic</w>\nmi o</w>\nre vit\nmag ician</w>\nç ¥\nant enna</w>\nwest wood</w>\nmber g</w>\nlux e</w>\noat meal</w>\nØ ¬\nte at\nffe e</w>\nsear ches</w>\nl ly</w>\nplu to</w>\nel on\nlet tering</w>\ninno cence</w>\nfa i</w>\nann on</w>\ntelang ana</w>\nma it\nneu ral</w>\ncan ni\nar oma</w>\na stor\nfe x</w>\nco cac\nmon etary</w>\nf ent\nun sure</w>\n' @</w>\nindi rec\nteh ran</w>\nisol ation</w>\nli bs</w>\nmake up\nmerce des\nff y\nhe tero\nde o\nsco m</w>\ncur sed</w>\nveteran sday</w>\nfranken stein</w>\nshre ws\nde co\nge ese</w>\nlefto ver</w>\nha did</w>\nvari able</w>\nacade mics</w>\ncarol in\nunder going</w>\nvari ation</w>\nna h\nssi er</w>\ngamer sunite</w>\npur suing</w>\nemer ged</w>\nll ers</w>\ncontrol ling</w>\nro aring</w>\nmete or\nvol t</w>\ndaw gs</w>\nbe aver\nis life</w>\nbathro oms</w>\naci onal</w>\npre vent\nlake district</w>\nin als</w>\ny ani</w>\ngra bbing</w>\nsac ks</w>\nle z</w>\nsw ay\nk ool</w>\ntime s\nklo pp</w>\nla de</w>\ncon cord</w>\nresul ted</w>\nrevi ve</w>\nrecon ciliation</w>\nol and</w>\naz z</w>\ngir o</w>\nmand arin</w>\nde en\nnutriti onal</w>\nis coming</w>\nvan i</w>\naw www</w>\nder ived</w>\nlove your\nstop the\nshou ting</w>\nnov ak</w>\nðŁĻĮ ðŁı¾</w>\nlo af\ndispla ying</w>\nsunday with\nma guire</w>\nch eri\nðŁı Ł</w>\nre match</w>\nqu ic\nÚ ©\ny in\nðŁĺ ¹\nili ve</w>\nz ip\nour ke</w>\ndown loads</w>\nsw at</w>\nmissi ss\ncare rs</w>\nt ment</w>\nproper ty\nhahahaha haha</w>\ngi bbs</w>\nsur rey\nar ise</w>\ntic ism</w>\nsti a</w>\nir ling</w>\nfro g\nco se</w>\nbas sist</w>\nfore ig\nlea u</w>\npil lows</w>\nhol la</w>\neli e</w>\ndisclo sure</w>\npeanu ts</w>\ninte ch</w>\nww c</w>\nplun ge</w>\ntrium ph\ncor i\nsli ppers</w>\nðŁĻı ðŁĻı</w>\nneutr ality</w>\nma re\nhair y</w>\ngang ster</w>\nhu mming\ncust ard</w>\nmer lin</w>\nale a</w>\ns by\ndam p</w>\nmo han\nver bal</w>\nj st</w>\ngu tted</w>\nb jor\nun finished</w>\nðŁĩ¯ðŁĩ µ</w>\nun happy</w>\nâļ« ï¸ı\nby pass</w>\nat su</w>\nfis cher</w>\nsa v</w>\nafric ans</w>\nre use</w>\nmid way</w>\ndemo lished</w>\nger rard</w>\nher cules</w>\nÄ Ł\nmedic ines</w>\ncl icking</w>\nsur round\njo ong</w>\nwav ing</w>\ntri bes</w>\nwet lands</w>\noffici el</w>\nargu ing</w>\nl le\ndo va</w>\nsu zy</w>\nclub house</w>\nne gro</w>\nob tain</w>\nga o</w>\ngl ance</w>\nassi st\nch os</w>\nãĤ ¢\nâĺ ķ</w>\nadri d</w>\noccur s</w>\nst ans</w>\npar don</w>\nlivel i\nemplo yed</w>\nre visit</w>\nff xiv</w>\nbb le\nne aring</w>\nmin er</w>\nðŁĺ ¹</w>\ngiov anni</w>\nup to</w>\nmar vell\nmar se\nto wels</w>\ncb n</w>\nengine ered</w>\ny elling</w>\nspart an\nsi ans</w>\nðŁĻĮ ðŁı¼\nse v\ncoyo te</w>\nsta di\nt cm</w>\napp en</w>\nshenan igans</w>\nopen access</w>\nso aked</w>\nma squ\nle vine</w>\nstro kes</w>\nl k</w>\naparthe id</w>\nhipho p\nchar don\nmay may\nha asan</w>\nstri pped</w>\nfr o</w>\nscri ption</w>\nf ton</w>\nh f\npri sons</w>\nmarsh al</w>\nķ ãĤ\nan cho\ncom promise</w>\nclassi fication</w>\nbuzz feed</w>\nbblo ggers</w>\ndeser ving</w>\n) /</w>\ns way</w>\nob o</w>\ncamp ers</w>\npoder nfamily</w>\np oured</w>\nbri e</w>\nsquir rels</w>\nse ize</w>\n: #</w>\nle k\nti mb\nst acy</w>\nnas daq</w>\nrepe atedly</w>\nbr at</w>\nmi ghty\ncompetit or</w>\nmah one</w>\nde si</w>\no ke\nbm w\nshi e</w>\nf cb\ncheape st</w>\nminim alist</w>\npar amount</w>\nn ate\nhar as\ninsan ity</w>\nlat eral</w>\nment ality</w>\nmo zam\nta pped</w>\nyad av</w>\nu sp\nb way</w>\nthe od\nbil t</w>\nra ids</w>\nem press</w>\nadap ted</w>\npat ron\nnut shell</w>\nag ra\nbe aded</w>\nsundaywith marsha</w>\nvi king\nproce ed\nmain tained</w>\nthinkbig sundaywithmarsha</w>\nsn es</w>\nmus ica</w>\nto wer\nch ab\nbo k\nsm t</w>\ninsul t</w>\nharve sting</w>\nwindo w\nru ther\nbe ige</w>\ndec al</w>\nindic ate</w>\nma iling</w>\nri ft</w>\npo le\nander son\nch oral</w>\nsp ride</w>\nl ili\nev elyn</w>\nimrankhan pti</w>\n.... \"</w>\nke red</w>\nun dp</w>\nwater falls</w>\nse ars</w>\nle mans</w>\nworld series</w>\nri el</w>\nani e\napp ar\nscore rs</w>\nlam p\na than</w>\nphys icians</w>\nqu inoa</w>\nrefu sing</w>\nvu itton</w>\nunle ash</w>\ns la</w>\npat i</w>\nshou ts</w>\ninten tions</w>\nfo amed</w>\neurope an\nneighbor hoods</w>\nme er\nman son</w>\ndu h</w>\nbr at\ncon es</w>\nbow l\nkazakh stan</w>\nà¤ ¿</w>\nin appropriate</w>\ndel hi\nketch up</w>\nful ton</w>\ns ys</w>\nconsul t</w>\ngar field</w>\nto go</w>\nf ml</w>\nf led</w>\nb ds</w>\nfacilit ate</w>\nree bok</w>\nselfi e\nelev ate</w>\nactiv ate</w>\nbi ble\nca wx</w>\nb ys</w>\ncam ille</w>\nsy ou\nsk ool</w>\nher t\nw bc</w>\nple dges</w>\nrecor der</w>\npo sh</w>\nac re\nso aking</w>\nmat il\nv sco\nshoot ings</w>\npla r</w>\ne con\nðŁĻĮ ðŁı»\nrashi d</w>\nu bi\nðŁ¤ ¤</w>\nsw inging</w>\nwi pe</w>\nrap tor</w>\nm su\nmusic video</w>\ndur ham\nat tic</w>\napar ty</w>\nfe tus</w>\nactiv ation</w>\naa z</w>\nmotiv ate</w>\nðŁĴķ ðŁĴķðŁĴķ</w>\nj al</w>\nà¤ ®</w>\nag on\nsche er</w>\nstal ker</w>\nfo ster\naz zo</w>\ntele gram</w>\nvi gor\ns laugh\nscreen shots</w>\nentrepre neu\nkri stin</w>\ninten tion</w>\nch illi\nfr action</w>\ndon a</w>\nge a</w>\ntc u</w>\ns ite\nla k</w>\nem il\nd nt</w>\nbor o\nwil kinson</w>\nre cu\nato day</w>\nt anya</w>\nbl anco</w>\ncd n</w>\nbrilli antly</w>\ng cc</w>\nac c\nevacu ated</w>\nther ine\nden ny</w>\ncait lin</w>\nshe pard</w>\npou ch</w>\nhand held</w>\nsou theastern</w>\nha a</w>\nÃ ´\nre solutions</w>\nled ger</w>\nsr in\nr ar\nshat tered</w>\nchim ney</w>\nim with\nmete or</w>\nhand led</w>\nra ke\ntown send</w>\nen han\nshi py\nduc t</w>\ntw x</w>\ninflam matory</w>\nwar hammer</w>\ntheat rical</w>\ngro s\nsk ar</w>\nsco tty</w>\nni el</w>\ntit o</w>\ntin i</w>\nconne ction</w>\n_ .</w>\ngoldeng lobes</w>\nsha q</w>\nðŁı ³ï¸ı\nhall way</w>\nfron ts</w>\neffec tiveness</w>\ngla ston\nd hs</w>\nex pi\nto h</w>\nc pl</w>\nsc s</w>\nre o</w>\nha g\nresemb lance</w>\nhor an</w>\nabu sive</w>\nqu er</w>\nvirtu e</w>\ncho lester\na q</w>\nshan e\nm ce\ncarri ers</w>\ndi stress</w>\nre wind</w>\nÂ ¡\nvoo doo</w>\nint act</w>\nann o</w>\nðŁĺ ¤\npi led</w>\nadi a</w>\nãĥ ³</w>\nen ow</w>\ndi gs</w>\nlight ly</w>\ngoo fy</w>\nturb ine</w>\ngovernor s</w>\ncon te</w>\nre open</w>\npa h</w>\ni ve\ncra fting</w>\nswee ps</w>\njo di</w>\nan de\nzu cker\nkaw aii</w>\no ko\nv ai\nout line</w>\nkri sti\nts n</w>\ninsp o</w>\nqu int\nfil thy</w>\nlyn ne</w>\nlisten ers</w>\ndepar ting</w>\nor d\nt weed</w>\n, &</w>\nale k\nsel fish</w>\nnor ther\nrecogni zes</w>\ni ps</w>\nbe s\na ed</w>\nw ills</w>\npe at</w>\nsurround ings</w>\nmon uments</w>\nais le</w>\nbe cker</w>\nla v</w>\nquant ity</w>\nv ah</w>\nhelicop ters</w>\ntu cked</w>\nalv arez</w>\nsha pe\no bey</w>\nad diti\nroad side</w>\nm ite</w>\nbl ers</w>\nep age</w>\nj au\nignor ant</w>\nb ins</w>\nlu lu</w>\nx o\nc fo</w>\nee eee</w>\napprentice ship</w>\nshef fiel\nto i</w>\nho k\nfaken ews</w>\ndeplo y</w>\naid an</w>\nhusk ers</w>\nãĢ İ</w>\nwest brook</w>\nmi ster\nconfi gur\ncar r\nfic a</w>\nproceed ings</w>\nha w</w>\nste ak\nmur derer</w>\npay day</w>\na jo</w>\np vc</w>\ndon ates</w>\nbi af\nnom nom</w>\nbe it</w>\nk ali</w>\nx rp</w>\nahmed abad</w>\nse mic\nche y\nx tra</w>\nan twer\nhead lining</w>\nsqu ares</w>\nroun ded</w>\nflu ore\nbol d\ndisa sters</w>\nam oo</w>\ngener ic</w>\ncran es</w>\nbrief ly</w>\ngi g\nauster ity</w>\nanticip ation</w>\nfor ti\ntreas urer</w>\ncann y</w>\nce cil\ndete cted</w>\ncheck list</w>\nà¸ §\npam ela</w>\nbar bados</w>\nan field</w>\nhear ty</w>\ntx lege</w>\nperen ni\narro g\ning ram</w>\nâĹ ı</w>\nty ne\nspo on\nr ation\nam ba</w>\nm be</w>\ncam el\nh hs</w>\nyork shire\nreflec tive</w>\nfre aks</w>\nto k</w>\nju do</w>\npartic les</w>\ndu bs</w>\nban jo</w>\naccred itation</w>\nprover bs</w>\nover dose</w>\ninte gral</w>\ngu ang\nmc s</w>\nsuper car</w>\naf b</w>\nal vin</w>\nail s</w>\nx tre\nst aging</w>\ntw ent\nrabb its</w>\nmar o\ninste m</w>\ndol l\ncr ay</w>\nsant ana</w>\nble ach</w>\nmini ons</w>\nche ap\nman t</w>\ndi vers</w>\ncatal onia</w>\nlo is</w>\nmat ri\ncou gar</w>\nkay ak</w>\ne gre\np so\na ia</w>\nå ®\nchar lton</w>\ntr acked</w>\nsc ari\npe tt\nf wd</w>\nx in\ngra vel</w>\nbr ic\nbigg boss</w>\nar den</w>\nhu gging</w>\npal ms</w>\nst v\nli mb\nthe movie</w>\nhandic ap</w>\nri me</w>\nz ai</w>\nstu b\nindi a\nlithu ania</w>\nrhy th\np ita</w>\nmaced onia</w>\nhigh ered</w>\nbrid get</w>\nschwar z\nske let\nhi kes</w>\nant arctic</w>\nc ps</w>\nmash up</w>\nÐ °</w>\nn ell\nchand ra\nhe ir\nan us</w>\nsher idan</w>\nmi mi</w>\nmuse u\nbec ca</w>\nan ir\nbar rie</w>\ndioce se</w>\ncompar able</w>\nðŁı³ï¸ı âĢį\nyuk on</w>\nme p</w>\nhor mon\nmer ic</w>\nal f</w>\ncon quered</w>\nchrist church</w>\nðŁĴĻ ðŁĴĻ</w>\nhazard ous</w>\npoo h</w>\ncont ing\nretro spective</w>\npar ame\nna ir</w>\ncon sor\nho tra</w>\nastoni shing</w>\ncater pillar</w>\nu man</w>\nti sm</w>\nt vs</w>\nserv ic\ncroy don</w>\nmor ales</w>\nc g\ncu m</w>\nte ur</w>\nscan ada</w>\ns all\nmagno lia</w>\nel ise</w>\nth our</w>\nà® ¿</w>\nag omez</w>\nphel ps</w>\në°©íĥĦìĨĮëħĦëĭ ¨</w>\nwh os</w>\nweav ing</w>\nsi sd</w>\npro poses</w>\ncro ws</w>\npre sale</w>\neconom ies</w>\nbernar do\nsha hid</w>\nair show</w>\nmc cann</w>\nhor ticul\nnr l\ndu el</w>\nmongo lia</w>\ntou lou\nrequi rement</w>\nstruc tured</w>\ned i</w>\no lives</w>\nhe a\ncu ter</w>\nÐ º\nenthusi ast</w>\nharri et</w>\ndomin ion</w>\nsub mer\nðŁį ĥ\nsa ab</w>\nnes burg</w>\nmo ff\ndef ended</w>\nbur t</w>\nrewar ded</w>\ngold man</w>\nop tics</w>\nkhali d</w>\nhouse holds</w>\nbuc kets</w>\nce cil</w>\nche ss\nsubstan tial</w>\nef l</w>\noper ation\nevalu ate</w>\nst n</w>\nrece ssion</w>\nl ll</w>\ntom as</w>\ntru ths</w>\nak bar</w>\ns words</w>\np act</w>\nembarra ss\nha o</w>\nay urve\nscrip ture</w>\nny cc</w>\nop t</w>\ndi ameter</w>\nsc ented</w>\norgani zers</w>\nre lat\nha e</w>\ndream ers</w>\nde se\nðŁĮ »\nrestric ted</w>\nn ale</w>\nr hp</w>\ndol an</w>\nmun ster</w>\nha ired</w>\nconsult ants</w>\njo ints</w>\nhu mil\nd ill</w>\nrelent less</w>\nt Ã©\naf il\nut ilities</w>\njapan ese\ncondem n</w>\npet ite</w>\ncolli de</w>\nq f</w>\npeach es</w>\ncou rier</w>\nl ore</w>\nâĺİ ï¸ı</w>\nreli ability</w>\nch uk</w>\nðŁĻ ĥ\nstu res</w>\nge ther</w>\nho stel</w>\nbi er\n- _-</w>\nâ ĩ\ne ze</w>\nta ilo\ndi ent</w>\nblu ff</w>\nchu ffed</w>\npil ip\nmon arch\ne em</w>\nbu chan\nb ick\nop au\nku ps</w>\nà¸ ¢\npist ons</w>\nsp ins</w>\nm and</w>\nce st</w>\nbur ne</w>\nv ile</w>\ncher ries</w>\nbec kett</w>\nneed les</w>\npan ch\në Ĥ\nhaha h\ntrou bles</w>\ninsi sts</w>\ndo you\ng mc</w>\nmor tar</w>\ndeleg ate</w>\nin n\ng anda</w>\nsin atra</w>\nà¤ ¤</w>\nspee ding</w>\npu pil</w>\npre mises</w>\nali gnment</w>\npi kach\nas us</w>\nj alan</w>\nØ µ\nlime stone</w>\nfol kl\nparme san</w>\nce il\nmo y\nshawn mendes</w>\nac up</w>\nhu st\not es</w>\nmed ina</w>\nma di</w>\ngta v</w>\ncensor ship</w>\nar g</w>\nswe eney</w>\nsy kes</w>\ncol o</w>\nfoot steps</w>\ncann ed</w>\nadv ance\ngta online</w>\nhealthy living</w>\nðŁį ¾\na ig\np ality</w>\noc s</w>\nhe brew</w>\nim minent</w>\nberk shire</w>\njeremi ah</w>\nout going</w>\nbak er\nentr ata</w>\nma ids</w>\ngro ves</w>\nbo c\na del</w>\nm fw</w>\ncon science</w>\narm ys</w>\nnut ella</w>\nconte stalert</w>\nnovel ist</w>\nla h\nban ker</w>\nmarque z</w>\nðŁı ¡</w>\nto ff</w>\nout age</w>\ngr p</w>\nðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃ</w>\nmusc le\ndu dley</w>\nnvi dia</w>\nmi di</w>\nm uni\ness ays</w>\ndat ac\ncar ter\nà¸ £</w>\nt ans</w>\ni ves</w>\npublic ations</w>\nal er</w>\nok wx</w>\nil u\ncu tt\nhar p</w>\nout law</w>\nluther an</w>\nbr ill\nbo lic</w>\ndo well</w>\ngreen land</w>\nbe sties</w>\npath i</w>\npay ton</w>\ngue st\nhar den</w>\nðŁ¤ ©\nann ed</w>\nevacu ation</w>\npo ised</w>\nmc der\nb han\no i\nenvel ope</w>\nci d</w>\nca vi\nta pas</w>\nbook review</w>\ngrey hound</w>\nâĻ ª\nfe ud</w>\nlun gs</w>\nfor te</w>\nrai der\nff er\noni x</w>\ndep end</w>\nyn wa</w>\nrel ating</w>\nde vs</w>\nðŁĴ Ĳ\nacqui res</w>\nd ha</w>\nj yo\npriv ati\ncan ine</w>\nk b\ncra b\nsar din\nimag ining</w>\nk j\nem por\ndown hill</w>\nne z</w>\nta eyeon</w>\nnick imin\ngb p</w>\nà µ\nw ap\nsec co</w>\nma shed</w>\nðŁĴ¥ ðŁĴ¥\naugu stine</w>\ndiss ol\ndic tator</w>\nâ ĵ\nvi per</w>\ned fringe</w>\nvau x\nhard work</w>\nbook let</w>\nno x</w>\nchi ff\nðŁĴ ¨\nobserv ations</w>\nxbox one</w>\nu sher</w>\nke er\nlu p</w>\ndal las\ncal gary\nma dra\ndi ous</w>\nk bs</w>\nwood ward</w>\nhero ine</w>\nlu mber\nsea world</w>\no ws</w>\nmc ke\nmaver ick</w>\ngu la</w>\ncross roads</w>\nfan g</w>\ns ade</w>\nnik ol\nchee tah</w>\nme c</w>\npp g</w>\ner ick\nðŁİ µ\ntox ic\nbj j</w>\nviol a</w>\nsp ire</w>\nch ino</w>\ntra vis\ninstitu tional</w>\nha as</w>\nlow ry</w>\nw ac\nea e</w>\nhu mid</w>\nmp ton</w>\nru ck\nje w</w>\nc ine</w>\nzim mer\nse f</w>\nbhar at\nfre es\naam ir</w>\nðŁĴ ħ\nz inc</w>\nwan e</w>\nmulti player</w>\nroyal wedding</w>\ne el</w>\npreci pit\nqu ery</w>\nkimber ly</w>\nisa bel</w>\nful fill</w>\nig an</w>\nvau l\npan e</w>\nsc y\ndig it</w>\ngun n</w>\nu tah\ndog day</w>\nfi on\nxia omi</w>\nda c</w>\nel ast\ncha vez</w>\nro blo\ng ine\nten th</w>\nab h\nke to\nhur dle</w>\nna dia</w>\nmemorab ilia</w>\nha bs</w>\nqu an</w>\nh w\nhv ac</w>\npix ar</w>\nec cle\nkram er</w>\naccu ses</w>\nðŁĴļ ðŁĴļ\nper se\nmean time</w>\nwa hl\natle tico</w>\nâĢ¢âĢ¢ âĢ¢âĢ¢\nott oman</w>\nno vo\nk us</w>\nconne cted</w>\ntru sts</w>\nd mv</w>\nspen cer\nrahu lg\ndo ve\nsto kes</w>\nbolog na</w>\nenthusi asts</w>\nÃ ª\nrockstar games</w>\nted cruz</w>\ndu ras</w>\ns acked</w>\nlate x</w>\nimmer sive</w>\ncer t</w>\nlu cin\nprinci pals</w>\nfa res</w>\nsa ils</w>\nfar n\nam ent</w>\nsaf fron</w>\nquent in</w>\ncheck point</w>\nfer ris</w>\nex cur\nðŁĳī ðŁı¼</w>\nbai ley\nse h\nter re</w>\nmad am</w>\ns band</w>\nwan derers</w>\ncumber batch</w>\nyy c\ndigit ally</w>\nblackandwhite photography</w>\nroll in</w>\nmoroc can</w>\nðŁĮ ħ</w>\ndin ner\nd well\nto om\nm ye\nez ra</w>\ncp fc</w>\nwar hol</w>\nme er</w>\njon ah</w>\nno aa</w>\ns gate</w>\nso on\nsecu lar</w>\ng ating</w>\nti o</w>\ndri ver\nsi ssy</w>\nassan ge</w>\nta th\ned mund</w>\nbobc ats</w>\nra ji\npo stage</w>\nstu ds</w>\nm gm</w>\nkat o</w>\nedin burgh\nmeet the\nshir t\nfa a</w>\nmens fashion</w>\nsp reads</w>\nwi m</w>\ncar ts</w>\nphoe be</w>\nj ars</w>\nbot swana</w>\nÙ Ĥ\ned war\nsk ar\nri ve\ngu sty</w>\nc tv</w>\nferdin and</w>\nsu therland</w>\nnickimin aj</w>\nk v\nsi us</w>\nbee ch</w>\nre z\ndesi res</w>\non ial</w>\ncamp o</w>\nquar ry</w>\nlor raine</w>\ngil more</w>\nig gy</w>\nµ ï¸ı</w>\nho pping</w>\navi z</w>\nðŁĮ º\nuni sex</w>\ndedic ate</w>\natt itudes</w>\nste er</w>\njun kie</w>\nrail way\ny b</w>\nwhi sper</w>\nkey an</w>\nk us\nju g</w>\ndi x</w>\na ins</w>\nsum mon\nov ich</w>\nsy ed</w>\nher ald\nma ison</w>\nme ded</w>\nwild flower\nmain land</w>\nri sky</w>\nru kh</w>\nover looked</w>\nki c</w>\ndestro ys</w>\nnam an</w>\nki p\nz ano</w>\nchampion sleague</w>\nban dit</w>\nquin cy</w>\nsmi le\ncal vin\nopen ings</w>\nta pp\nol ulu</w>\nspec tro\naccred ited</w>\nap k</w>\npra ised</w>\nbar nett</w>\npol len</w>\npremi ered</w>\nselen agomez</w>\ntou red</w>\nscreen ings</w>\nuu u</w>\nmis o\nen se</w>\nadam lambert</w>\nguel ph</w>\nhar yana</w>\nhu tto\nle ar</w>\nl tc</w>\npo ached</w>\nbrex it\næ Ŀ\ntt c</w>\npa vement</w>\nmon gers</w>\nro e\nad ers</w>\nling ton\nparticip ant</w>\nca red</w>\nga il</w>\ny ates</w>\nlan tic</w>\ndash board</w>\njo o</w>\nfeli pe</w>\nssi onist</w>\nbu m\ns end\na eri\nthu gs</w>\nluci fer</w>\na he\ndete ctor</w>\nfil ly</w>\ngas oline</w>\nham per</w>\nhump day</w>\nthe ta</w>\nthe band</w>\nfore casts</w>\no hhh</w>\nlo bb\nhol l\ncp u</w>\naz u\nad ar\nhai ley</w>\nbu b\ncar t\nquo ted</w>\nan archy</w>\npan cre\ntwit art</w>\nal den</w>\nst ash</w>\nthe less</w>\nor ni\nbelie bers</w>\nmor mon</w>\npartic le</w>\navi ation\nâ¬ Ĩ\nwebcam toy</w>\nsad dened</w>\ncru is\nham let</w>\nn ct\nroll ins</w>\nmarque e</w>\nsaw yer</w>\nreli ance</w>\na ura</w>\ndi ec\nsoo thing</w>\nsig nings</w>\nak is</w>\nÃ ³</w>\nat kins</w>\naer op\nðŁĮ ¿\ny ab\nsh ari\ncon nol\ndu bbed</w>\nmanufac ture</w>\nconvin cing</w>\nfeelthe bern</w>\nra u\npu lit\non ec\ngem stone</w>\nur ging</w>\nbag u\nga h</w>\naci ds</w>\nfi anc\nzodi ac</w>\nsn oop</w>\nher rera</w>\niniti ated</w>\nven ge\nprofess ors</w>\npro di\nstron ger\ne mission</w>\nbb a</w>\nhal le\nta pp</w>\nhaw an</w>\nwh im\ncompe ted</w>\nmyr tle</w>\nir port</w>\ncold play</w>\nach e\nske p\nm son\nss ic\ncalli graphy</w>\nswim mers</w>\nme y</w>\npp c</w>\nthri ft</w>\npo c</w>\nre places</w>\ncommu ter</w>\nâģ¦ âģ¦@</w>\ngo ers</w>\nlo gue</w>\npara dig\nbas kets</w>\nsensiti vity</w>\njoh an</w>\natl antis</w>\n& &</w>\nsuit case</w>\nanxi ous</w>\nl h\nstr i</w>\ngal loway</w>\nstre ad</w>\nwar den</w>\ngr ounded</w>\nffici ency</w>\nli feat\nreli c</w>\ndisgu ise</w>\nisland ers</w>\nf cofficial</w>\nclassical music</w>\nb mc</w>\nen field</w>\nbi que</w>\noak ley</w>\nbat man\nsla ying</w>\nner ves</w>\nmul tit\ncalci um</w>\nprojec tor</w>\nscott sdale</w>\nant ino</w>\ngri ps</w>\nkim mel</w>\ndes mond</w>\nprote stors</w>\nhi atus</w>\nmetaboli sm</w>\nconclu ded</w>\npress er</w>\nti pping</w>\nsli de\ne to\nhun ting\naus open</w>\nri k</w>\npp ery</w>\ninnov ators</w>\npitch ers</w>\nag ger\nfun gi</w>\nz ad</w>\nproli fic</w>\nrockn roll</w>\nbl ames</w>\nct ar</w>\nstam ford</w>\nq ad\nmozz arella</w>\ninsan ely</w>\nden ver\nph ouse</w>\nnom ad</w>\nï ¿\ns ris\npro du\nhen ley</w>\npag an</w>\nam trak</w>\nru bi\nin cl\ntu tor</w>\nsco tia</w>\nwo es</w>\nsing apo\nfun nel</w>\nturn bull</w>\nknow ledge\ngri mm</w>\nreal madrid</w>\nwe are</w>\nmissi les</w>\ncon sol\nemo jis</w>\nsne ak\nsmi ths</w>\nru iz</w>\nbr ou\ni el\nha ver\nðŁĮ ļ</w>\nkin gof\nbasil ica</w>\ncircul ation</w>\nprin ters</w>\nta pping</w>\nri dley</w>\ndra gged</w>\nha j\nwrit er\nfundament als</w>\npersonal ities</w>\nme tre</w>\nstereo types</w>\nbur le\nbest of\nn ffc</w>\nha th\nmini stries</w>\na ali\ntrac ing</w>\npav ed</w>\nł ï¸ı\ng ic\ninsp ire\ntu g</w>\nha re\nrepe ated</w>\nex pon\nlol li\nrho de</w>\npre cin\ninstall ations</w>\ninstag ram\naz ar</w>\ni es\nsole ly</w>\ndu kes</w>\nmission ary</w>\nvan guard</w>\nfursuit friday</w>\non d\npol ari\nma st</w>\nhar an</w>\njos Ã©</w>\njack ed</w>\nec oun\nal ities</w>\nne ph\nra vel</w>\nmoder ated</w>\nsco w\ns fb</w>\nuru guay</w>\nas o</w>\nni g\nau du\np ints</w>\nlat ina</w>\nben z\nm itting</w>\nchar ted</w>\nmat ology</w>\ncit ro\nbiop ic</w>\nðŁĳ Ń</w>\ndjo kovic</w>\nfox y</w>\nagu il\nso to</w>\nan ada</w>\nsin king</w>\nsc rap\nhair s</w>\nbethan y</w>\nfact friday</w>\nðŁĲ Ĳ</w>\nunlea shed</w>\n) (</w>\ncontra dic\nram on</w>\ncoast line</w>\ny ong\nsn sd</w>\nli gan</w>\np ome\nmit age</w>\nge tt</w>\nwat i</w>\nri sk\nso aring</w>\nbru sh\nf pl</w>\nav an\nå Ĩ\nlar son</w>\nsh ear\nmul til\nblu r</w>\nmulti media</w>\nchun ky</w>\npar i</w>\nn ani</w>\nweir d\ncholester ol</w>\nchar les\ndream ed</w>\ntan ning</w>\npuzz les</w>\nfr am\nhand ball</w>\nch ag\nbeli ze</w>\nal u</w>\nbang s</w>\nÑ Ħ\ndetec tives</w>\nmc g</w>\nish q\nbo thered</w>\nsaf c</w>\nmp ing</w>\nten eri\ng ays</w>\nsail or\nan gi\nmul ticul\ngue ssed</w>\nros Ã©</w>\nhigh ways</w>\nbro om</w>\nchatt anoo\n- '</w>\nsee ker</w>\non ed\nat f</w>\nlu c</w>\n> <</w>\nbar i</w>\nper cep\njewel ry\nas ph\nsor row</w>\nsl ing\nmam moth</w>\njac kie\në §\nwilt shire</w>\nsa o</w>\ncan cell\nim paired</w>\ntor ial</w>\nbre ed\nguy en</w>\njud ice</w>\ntit le\npro spective</w>\napplic ants</w>\nðŁį Ĭ</w>\nepis cop\ne id\nb yo\nstock ings</w>\nðŁĴĥ ðŁĴĥ\nll p</w>\nsna g</w>\nkeep it\nl ough</w>\nol son</w>\nmatur ity</w>\n!! !\"</w>\ncop ter</w>\ni sha</w>\nbl i</w>\nwil mington</w>\ntr youts</w>\nth ai\nðŁ¥ ³</w>\npe bble</w>\nkra ft</w>\nf p\nÂ º</w>\nssi vely</w>\nli vin</w>\ncontest ants</w>\ntex tures</w>\njo an\nh dr</w>\nfilm festival</w>\nprov ence</w>\nwi do\nop end\nc si</w>\nsto wn\ncro ati\nad just</w>\nhost ile</w>\nanaly sts</w>\nil an</w>\ncu ppa</w>\nbru m</w>\nnewfound land</w>\ngood win</w>\nme tt</w>\nmall orca</w>\nplu gs</w>\nbu k\nbb hutto\nwrest le</w>\nsa ire</w>\nsho pped</w>\nfor za</w>\nle head</w>\nvi vo\nba st\nro xy</w>\nreg is</w>\nhard working</w>\nhon olulu</w>\ndesp air</w>\nyoung sters</w>\nni g</w>\nimpro mp\nroll tide</w>\nde emed</w>\ntre ason</w>\nru shed</w>\nfor ged</w>\nff f</w>\npikach u</w>\nbri ggs</w>\ndo it</w>\nac cent\nla us</w>\ngla ze</w>\ncompet ent</w>\na ho\nphoto g</w>\nmid field</w>\nle go\nhar vard\nmin orities</w>\nre illy</w>\nslic ed</w>\nonce upon\niniti ally</w>\nfinanci ally</w>\nlandscape photography</w>\nhar dro\nqu o</w>\nmm ers</w>\npar kinson</w>\nsmu gg\nread iness</w>\nbru tally</w>\nglou cester\nmp ed</w>\nbbhutto zardari</w>\nmur der\nye d\ndat aviz</w>\nsr t</w>\ndow ning</w>\nbi ans</w>\nm Ã¼\nfle ck</w>\nfli pped</w>\ns ly\nbrilli ance</w>\nri m\nk um</w>\nbubb a</w>\nko i</w>\nknit ted</w>\nsor g</w>\nma is</w>\nðŁĮ ²</w>\nti ss\nsu stain</w>\nsen su\nak han</w>\nzi est</w>\nexam ines</w>\nchardon nay</w>\nuser name</w>\nshort list</w>\nre bs</w>\non o\ndar ing</w>\nhard wood</w>\nche que</w>\nrighte ous</w>\nlight ening</w>\ndir k</w>\nshra dd\ndu ra\ndown stairs</w>\nsh al</w>\nami gos</w>\nru ff\ns law</w>\nri es\nred nation\nman us</w>\nðŁĩ§ ðŁĩ·</w>\ndistin ction</w>\nu bun\ndur an</w>\nmi gra\nthi ans</w>\nla ver\ndomest ic\nk x\njaz zy</w>\njusti fy</w>\nbelong ing</w>\ninsul ation</w>\ncolor stv</w>\ndrun ken</w>\nchann eling</w>\nqu and</w>\nxi ii</w>\nenligh ten\nkan o</w>\nfati ma</w>\nteen choice</w>\nterri fied</w>\np ba</w>\nas ley</w>\nmet museum</w>\ndun e</w>\npack er</w>\nki o\nðŁĴľ ðŁĴľ</w>\nbo iler\nfas cism</w>\nar mored</w>\nback grounds</w>\nin mates</w>\nembarra ssed</w>\ndefin es</w>\nth d</w>\nwe go</w>\nsilic one</w>\nlo on</w>\nel ding</w>\nbor rowed</w>\nhe mp\nak sh\nkaw asaki</w>\nbr y</w>\nde af\nkill er\ndispo sal</w>\nðŁĩ °\nglaston bury</w>\nun covered</w>\no xide</w>\npo ff</w>\nd ant</w>\nk j</w>\nku ro\ndri zzle</w>\npeop les\nfe e\npro pri\ndd lovato</w>\npi ggy</w>\not is</w>\naller gies</w>\nu bis\npengu in\nser a</w>\nvi z\nprosp erous</w>\nici des</w>\ntornad oes</w>\nsene gal</w>\nweb cast</w>\nsto red</w>\nenchan ted</w>\nbb cone</w>\nbay area</w>\nentrepreneu rial</w>\nrednation rising</w>\nexperim enting</w>\nang an</w>\nlot to</w>\nthey re</w>\npor e</w>\ner p</w>\nseren e</w>\neast wood</w>\nbro kers</w>\nbar ge</w>\nstal lion</w>\ntimber lake</w>\ntailo red</w>\ndy stop\nb ate</w>\nlat ors</w>\ndi xit</w>\nbran son</w>\ndynam o</w>\nky lie\nshame ful</w>\nbt wn</w>\nspring time</w>\nmix ture</w>\ns ounded</w>\nlu ton</w>\ndad es</w>\nmal a</w>\nop ra</w>\nen ic</w>\nrahulg andhi</w>\nse wer</w>\n~~ ~~\nky u\nnor theastern</w>\nca er\nbc u</w>\nnir vana</w>\nkitch ens</w>\nous y</w>\nal m</w>\nriver dale</w>\nhid den\nfl int\nsp d</w>\npat rons</w>\nkaty perry</w>\nau gh\nexhib itions</w>\nsm c</w>\nshu ts</w>\nat ore</w>\nda in</w>\nsome thing\nber th</w>\nbo g</w>\npor ter\ngen to</w>\ncon cussion</w>\nang lic\nro we</w>\ngr illing</w>\nscar lett</w>\nmaster ing</w>\nmor nin</w>\ncomm ented</w>\nsi me\nsi zing</w>\nchrist y</w>\nce os</w>\nst m</w>\nat ry</w>\ntari ffs</w>\nvac ation\npre judice</w>\np su</w>\nparen tal</w>\nfar age</w>\ncan a</w>\ncap com</w>\nkoso vo</w>\nyou re\nmen stru\nstal in</w>\ngrape fruit</w>\nbr an</w>\nche sa\ndav en\nexc el\n!! )</w>\nà¹ Į</w>\ndistribu tor</w>\nce a</w>\nbride sma\nmillenni al</w>\nwa in\nob serving</w>\nmis ery</w>\nplan etary</w>\nexpo sing</w>\nbra ised</w>\ncomp ton</w>\ndon gha\nq l</w>\nspring steen</w>\nth ul\nsyl ve\ncab o</w>\npal ad\nniel sen</w>\ngaz ing</w>\nba ja</w>\nr oud</w>\norchi ds</w>\njohan nesburg</w>\nse man</w>\nd ji</w>\noper ative</w>\naffe ction</w>\neclec tic</w>\nat c</w>\nmut ant</w>\naw x</w>\nnic e\nmel bourne\nindu lg\ntu lip</w>\ndias pora</w>\nwel p</w>\nbig gie</w>\nmississ auga</w>\nretri ever</w>\nor an</w>\ntam my</w>\nc ta</w>\nhipp o\nseas oned</w>\nger mans</w>\neng v\nmarvell ous</w>\nim f</w>\nrela ys</w>\nmon tan\nmaur iti\nme ister</w>\nas surance</w>\nreig ning</w>\nsu fficient</w>\nhan e</w>\nno thing\npos se</w>\nnav y\nin love</w>\nbrigh ton\nen qu\nch ung</w>\nsweat y</w>\nes c</w>\ncal ed\nman s\nnicar agua</w>\nsl ices</w>\nmo cha</w>\nwashington post</w>\nbb n</w>\ndam ned</w>\ngrow ing\nen burg</w>\nlo an\nme s\nwh oops</w>\nbeliev ers</w>\nspi el\nvo daf\nl at</w>\ns led</w>\ncricke ter</w>\nbrown e</w>\ngolf ers</w>\nbar ra\nwat chers</w>\nlu igi</w>\nsw amy</w>\nmom s\npit ched</w>\nsan tor\ncr s</w>\nsi re</w>\nsc amp</w>\nbo de\nste war\njon ny\nent ity</w>\npac qui\nmind ful</w>\nmin india</w>\nbear ded</w>\ntemp t</w>\nscorpi on</w>\neat on</w>\nauthori zed</w>\nar to\ns vp</w>\nop athy</w>\ncch ini</w>\nhouse music</w>\ndisney world</w>\nâĢĶ @</w>\npro pose</w>\ndi y\nexpen se</w>\nten g</w>\npupp ets</w>\nsm el\nd aca</w>\nper ry\nfin n\nboo sting</w>\nlefto vers</w>\ncou gs</w>\nsatell ites</w>\nman y\naz e</w>\ng ong</w>\nfi e\nmetho do\nfer ries</w>\nðŁ¤Ķ ðŁ¤Ķ</w>\nexplore rs</w>\nload er</w>\nattrac ted</w>\nil ton</w>\ngodd amn</w>\npi azza</w>\ndoc tr\nsav ing\nparagra ph</w>\nvisu alization</w>\nmay ors</w>\nwork flow</w>\nack les</w>\nðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ\nà¤ ¸</w>\ntwer k</w>\nclu t\nlo ver\nte ases</w>\nsi an\no te\ndeter ior\naccor d</w>\nl fw</w>\nswar ovski</w>\nnat al</w>\ntra ps</w>\nk ina</w>\nanaly ze</w>\nlaye red</w>\nbever ages</w>\nun it\nran som\npe shaw\ndest ined</w>\nastro logy</w>\nsi pping</w>\nmiley cyrus</w>\ncam ino</w>\nmarshmal low</w>\nbli ss\nout back</w>\nfa q</w>\nint oler\nhumil ity</w>\npo ppin</w>\nhallo ween\nmon tene\nop hy\nnu n</w>\ntattoo ed</w>\na as\nðŁĮ ³</w>\ndale y</w>\nqual ity\ndu sa</w>\nfisher men</w>\nswi f\nter rac\nst au\nle in</w>\ntrol ling</w>\nship ment</w>\ngarden er</w>\nmarch madness</w>\nhead band</w>\ngr t</w>\nbur nett</w>\nw and</w>\n!!!! !!!!!</w>\ngh e</w>\ndu x</w>\nhu d</w>\nwar ner\nðŁĩ ¦</w>\nex ile</w>\nrescu e\nrat a</w>\nd han</w>\nduc ati</w>\ndro wn</w>\nbl ends</w>\nspi e\nalli gator</w>\nsimul taneously</w>\nbroo ke\nu ke</w>\nk har</w>\ncomm union</w>\nri ka</w>\nford fc</w>\nchin atown</w>\nyou rown\nme y\ncan al\nsyste matic</w>\nde pri\nox ford\nan il\nw ut</w>\nequ ation</w>\nbe z\nfle ur</w>\nthe good\nlang ley</w>\nad ity\ned ith</w>\nal fie</w>\nÐ¾ ÑĤ\nen cry\nbr ill</w>\nex emp\nce sar</w>\nmb ling</w>\nab ri\nsc icom\nj ing</w>\nschool ing</w>\nmi ka\nmechan isms</w>\nimpromp tu</w>\nrhe a</w>\nmoo re\ncrime a</w>\nbe sto\nwri ght\nel ders</w>\nro ds</w>\nkam al</w>\nfolkl ore</w>\nbe et</w>\nmini on</w>\nreli eve</w>\nthr o</w>\nteam usa</w>\npas cal</w>\nmade with\nboli via</w>\nitt i</w>\nfree bies</w>\ndesi red</w>\nbest selling</w>\nl iness</w>\nla den</w>\nke ane</w>\nmi sts</w>\nhipp ie</w>\natta chment</w>\n@ /</w>\nse w</w>\nflan agan</w>\nâĿĹ ï¸ı\nsupre mac\nstl cards</w>\nsi as</w>\nq u</w>\nrh ys</w>\nste ep\nval leys</w>\nv w\npav ing</w>\ndisp at\nal ison\npor te</w>\nid u</w>\nnew sc\nsoc ket</w>\nmo s\nco star\nre vo\nprote ins</w>\nstanley cup</w>\nm cal\near ring</w>\nse cs</w>\nmc lean</w>\ncap ric\nnick elo\nad en\nv c\nshou se</w>\nadap tive</w>\nmaxi mize</w>\nentertain er</w>\npro se</w>\ngri ffi\nsix teen</w>\nlam ar\nmi rage</w>\nsaudi arabia</w>\nawe ather</w>\nru st\nin filtr\nfashion week</w>\nðŁĺĬðŁĺĬ ðŁĺĬ</w>\nselec tive</w>\nbubb le\na den</w>\nfen nel</w>\ndeci sive</w>\nm ta</w>\nmock ing\nmb les</w>\nst amp\nmu le</w>\nbernar do</w>\ngr in</w>\npo tt\nj ingle</w>\nvet tel</w>\ncolom bian</w>\ncam o\nmotivation monday</w>\nba han</w>\np ly</w>\ndh ary</w>\nk ami</w>\nx men</w>\nsleep er</w>\ngar a</w>\nmy sti\nconfi dential</w>\nconflic ts</w>\np neu\nce s\ninsur tech</w>\nclean se</w>\nme rely</w>\nva is</w>\ntu x\nthe great\nshar on\nma j</w>\nhol a</w>\neco systems</w>\naj ay</w>\naa j\nhu sh</w>\nhar mon</w>\nbackto school</w>\nwiki leaks</w>\nreflec ted</w>\nðŁĺ ĵ</w>\ncommemor ating</w>\nac et\nbuck ingham</w>\nmessi ah</w>\ntu ous</w>\nhor net</w>\nto be</w>\nd q</w>\nhe ine\nmi g</w>\npl ate\nnichol son</w>\nsp ie</w>\ncumber land</w>\nnor mal\npho bia</w>\nhappy halloween</w>\ncity fc</w>\nmc el\ngilli an</w>\nke to</w>\nlu de</w>\nde mise</w>\nsu ga</w>\nstr ate</w>\nmcgr ath</w>\nvisit scotland</w>\nfoo led</w>\ncb r</w>\ngc se</w>\ncol ori\npo td</w>\nmissuni verse</w>\nfin ances</w>\nma poli</w>\nfor ks</w>\nØ ´\ncann on\nmedic inal</w>\nðŁĹ ĵ</w>\nkh o</w>\nwre ck\npan to</w>\nbag el</w>\ngu ll</w>\nsyndic ate</w>\nic y\npr c</w>\nki en</w>\nzi ka</w>\nti sh</w>\npe ta</w>\nc co</w>\nli za</w>\nch ut\nex traction</w>\nel g\ngl i</w>\nfu eled</w>\npos it\nrespec tively</w>\nleice ster\nbr ink</w>\nvulner ability</w>\nim ported</w>\ne sha</w>\nðŁ¦ ħ</w>\nr ural\nre ll\ngam ing\natlan tic\naband on</w>\nno ah\nre solved</w>\npro state</w>\naller gic</w>\nps d</w>\nâĺ ¹\ndun geon\nfang irl</w>\nillumin ated</w>\nm hs</w>\nwhite sox</w>\nd ently</w>\nck o</w>\nendor se</w>\nover ly</w>\ndazz ling</w>\nprior iti\nnight life</w>\nut il\nbe have</w>\nflam en\neast bound</w>\nðŁĴ Ł</w>\nilove you</w>\ngov uk</w>\nmozam bique</w>\nalle gi\ndr i</w>\ntestim onial</w>\nath s</w>\nì§ Ģ\nmm y\nshab by</w>\npro secco</w>\nfriend ships</w>\ncal am\ndam ages</w>\noff set</w>\njura ssic\njun o</w>\narre ll</w>\nðŁĴ ©</w>\ninterven tions</w>\ndare devil</w>\ncar ver</w>\nrun away</w>\nran e</w>\ntruste es</w>\nha ute</w>\ndep ths</w>\nðŁİ Ń</w>\nme in\nsacrific es</w>\ncon cier\nne sting</w>\ni zzy</w>\nme tam\nilove my\nur ine</w>\ndu lu\nmal hotra</w>\nve ins</w>\nnight ly</w>\nco at\nan di\nhe witt</w>\nlon el\nci ble</w>\nwr ite\njen nie</w>\nsant ac\nĸ ï¸ı</w>\nstr ato\nsingapo re\nsop rano</w>\nkri sten\ncheer ful</w>\nflee twood</w>\nfa iri\nm eli\nwa st\ntur nt</w>\nsfor sale</w>\nsc rolling</w>\nangel ina</w>\nren dition</w>\njeric ho</w>\nnick y\nor b\nfla vo\npatri ot\nash eville</w>\nsick ness</w>\nre fund</w>\naggre ssion</w>\nb pl</w>\nãĥ ĥ\nelu sive</w>\nthi story</w>\nhang er</w>\nbu ffs</w>\nvil las</w>\nat kinson</w>\nsp h\nja it\ndecl ined</w>\nwo k</w>\nsupre macy</w>\noo tball</w>\ney ang</w>\nðŁİ ĵ\ns ford</w>\nath i</w>\nconsu me</w>\nroad ster</w>\ne so</w>\nu pro\nreci pe\nau f</w>\nuc i</w>\nar on</w>\noo oh</w>\ncs go</w>\nre ich</w>\nmc d</w>\nmin ute\nladi es\npun k\nrut gers</w>\nmee k</w>\nariz on\nta j\nland lord</w>\nde gra\nautu mn\nlyn x</w>\nus f</w>\nb hi\nfairy tale</w>\ndongha e</w>\nbet sy</w>\nexplo ded</w>\nchen nai\nop a</w>\npro tag\nbr ant\nðŁĵ °:</w>\ng f\npal li\nðŁı¼ âĢįâĻĢï¸ı</w>\nsu t</w>\nill ini</w>\ncolum nist</w>\nshir tless</w>\nde centr\nsear ched</w>\nec or\nbu ggy</w>\ns ack\nðŁĺĤ ðŁĺŃ\nde t\nther i\nor naments</w>\nbring back\nto v</w>\nquarter finals</w>\nic he\ncon stra\ngi er</w>\nbuchan an</w>\nvi x\nkay aking</w>\nmu stread</w>\nswal low</w>\nmel b</w>\nsc af\nop al</w>\nmay oral</w>\nhar at</w>\nðŁ¦ ĭ</w>\nschedu les</w>\nid f</w>\nha gue</w>\nro z\na ah</w>\nd mc</w>\ndu plic\nca che</w>\norph an</w>\nfrac ture</w>\nrec on</w>\nch av\nbun nies</w>\nal ain</w>\nmustaf a</w>\nðŁİ Ļ\nvac ations</w>\ndynam ite</w>\ntex ted</w>\nbroad caster</w>\nðŁĴ £</w>\nste amed</w>\nrock er</w>\ndi etary</w>\nluxury travel</w>\ninaugur ated</w>\nsa wards</w>\nvaugh n</w>\nlincoln shire</w>\nclick ed</w>\nkra ja</w>\nf anc\nremo ves</w>\nlayo ffs</w>\nmc far\nbre eds</w>\nwin nie</w>\njon ghyun</w>\nincen tive</w>\nvari ations</w>\npat ton</w>\natur day</w>\npersist ent</w>\npr un\npi ers</w>\ndal es</w>\næ ĸ\nbreast feeding</w>\nr ance</w>\nta wa</w>\nĤ âĸ\nmur doch</w>\ncap tive</w>\nthi stle</w>\nnic a</w>\ncommod ity</w>\ncou ldnt</w>\nboard walk</w>\ngraci ous</w>\npractiti oners</w>\nn gc</w>\nscru m</w>\nner o</w>\ncamoufla ge</w>\ncol on</w>\nhe i</w>\nphys icist</w>\nsaturday morning</w>\nten er</w>\nsi won</w>\ncolum ns</w>\nbru ne\ny vr</w>\nba ir\nreti res</w>\nhal am\ncab er\nshaz am</w>\nmin u\ncas cade</w>\nmilk shake</w>\ngri d\nd ren\nvin cent\nso dium</w>\nplat ter</w>\ncheer leader</w>\nchen ko</w>\ny ak</w>\nelimin ated</w>\nty po</w>\ny man</w>\nre think</w>\nâĿ Ĺ</w>\nts ville</w>\nbernardo kath</w>\nex tr\nðŁĺģ ðŁĺģðŁĺģ</w>\nta o\nre per\nmo ths</w>\nem powered</w>\nc iting</w>\ntranspor ted</w>\nmon ks</w>\nsan at\ncle ars</w>\nbachelore tte</w>\ncamp bell\nracha el</w>\nhar le\nhand ler</w>\nclimb s</w>\ninter ference</w>\nrele ase\nsh and\nr bs</w>\nhr h</w>\nãģ ª\nval le</w>\nr Ã©\nsli me</w>\nw akes</w>\nchu bby</w>\nslo an</w>\nel ves</w>\nath en\nattor neys</w>\nmicro scope</w>\nston er</w>\nsc aling</w>\no be</w>\nc out\nse man\nmid week</w>\nbal sam\nðŁĺį âĿ¤</w>\nti ful</w>\nv ish</w>\nlo tta</w>\nri pping</w>\nre mn\nti re\nle ap\nha vent</w>\nla by\nhi mach\nwhisp ers</w>\nwe in\nðŁİ ¸\nwild flowers</w>\nse le\nu cc</w>\nli ability</w>\naz ine</w>\nsw ings</w>\nk ya</w>\nta ir\nre main\ne do\nflo ps</w>\npoc ket\ngrand ad</w>\nexam iner</w>\ngr is</w>\nffe ct</w>\nðŁĳĬ ðŁı»</w>\nstud ded</w>\nheart beat</w>\nde acon</w>\nfirm ly</w>\ninfec tious</w>\nste f\nout lines</w>\nle asing</w>\ncla ws</w>\nsen se\ntab s</w>\nhoo t</w>\nmo sul</w>\nspa wn</w>\nco a</w>\nhog warts</w>\nve in</w>\nalban ia</w>\nmanu el\nb ino\nvaux hall</w>\nscot land\ngo bucks</w>\nmat ty</w>\nphy sio</w>\ntor ino</w>\nconst able</w>\ninvestig ated</w>\ns lower</w>\nmistak en</w>\nbay er</w>\nwild fires</w>\nvo ic\nx on\ntime to\nchas sis</w>\nbar ric\npi on</w>\nbald head</w>\nwoo k</w>\nregi str\ndra fts</w>\nb hs</w>\nli gue</w>\nl ick\nstaf fordshire</w>\nbaf ta</w>\ndar ry\nje anne</w>\nven ding</w>\ncor p\nâĽ ³ï¸ı</w>\nkid dos</w>\nfen way</w>\nca o</w>\nwest bound</w>\nðŁĺ Ļ</w>\ndv r</w>\nquick er</w>\nbla h</w>\ngoo die</w>\nðŁĴĭ ðŁĴĭ</w>\nvo x\nesp er\nfac ade</w>\ncor relation</w>\nred bull</w>\nrou p</w>\ndecl ining</w>\nchi ve</w>\nmc gee</w>\ntur o</w>\nin der</w>\nf eller</w>\nfu g\nil ysm</w>\nmar di</w>\npeshaw ar</w>\nki eran</w>\nine ma</w>\nmeat balls</w>\npe ck</w>\ndepre ssing</w>\nsen sing</w>\ngi z\ndd ington</w>\nspring watch</w>\nro aming</w>\nyellow stone</w>\nhorse shoe</w>\nam man</w>\nweek day</w>\nol or</w>\nðŁ¥ °\nboo sts</w>\nspr int\nscar ves</w>\nje e\nbee tro\ncl an\nall the\nìĦ ¸ë\nenlighten ment</w>\nado be\nre generation</w>\n? @</w>\ncont ag\nyach ts</w>\nto u</w>\nmor a</w>\nen voy</w>\nr ani\ngo li\ndhanush kraja</w>\nwood working</w>\nstreng ths</w>\nse di\ndisc s</w>\nar ina</w>\nsc on</w>\nlit e\nano ther\nðŁ¥ Ĭ</w>\nye men\ngu ern\nsav vy</w>\nlo yed</w>\nbiom ed\nheart break</w>\ncomra des</w>\nmilli e</w>\npat ch\nun f\njar vis</w>\nbl aming</w>\ncommemor ation</w>\nge y</w>\nå ¥\ncardio vascular</w>\nalig ned</w>\ndocu ment\n. ?</w>\naesthe tics</w>\nem u</w>\nthe irs</w>\nle h</w>\nps ic\nsi f</w>\npl ateau</w>\nex pend\ndomin ating</w>\nrob es</w>\nmauriti us</w>\nexcep tionally</w>\nhom er\ndiscover ies</w>\nbra un</w>\nten nant</w>\ninsul in</w>\nðŁİ ®</w>\ncar bs</w>\nte as</w>\n? !\"</w>\nzi e\nfranco is</w>\nbrow sing</w>\nth ol\ncla rence</w>\nhel per</w>\nob tained</w>\ncas sie</w>\nle es\n! ,</w>\npome gran\nhu bs</w>\npresti ge</w>\n] [</w>\nmach er</w>\nbott led</w>\npun ch\npi pe\no ch\ngall ons</w>\ndeliver ies</w>\nu ra\nun day</w>\nmon de</w>\ndepic ts</w>\nre gency</w>\noutra geous</w>\nkhal ed</w>\ncar o</w>\nhe arti\nza g</w>\ndevelop mental</w>\nover coming</w>\nstati stical</w>\nflavo red</w>\nfor ds</w>\ncre atives</w>\nlau rence</w>\ndi as</w>\nsun screen</w>\nin ked</w>\npre acher</w>\nn ul\nimpac ting</w>\nauti stic</w>\nâļ Ķï¸ı</w>\no ss\npel icans</w>\ncele ste</w>\nv b\nru mp</w>\nmc gra\nfair fax</w>\nhu mor\nbbc news</w>\nrow ling</w>\ncal der\nseam less</w>\nag ne\np ti\nmix ed\nt shirts</w>\nmer ci</w>\nb tob</w>\nwomen instem</w>\ngenealo gy</w>\npre ven\nl our\ncra dle</w>\ngi use\nÐ ¾</w>\nchron o\nfair ness</w>\nchocol ate\ntor y\nas da</w>\npre scott</w>\nstret ched</w>\nal man\nu il</w>\nre charge</w>\nin tre\nob st\nhosp ital\nhay ward</w>\nteneri fe</w>\nfried man</w>\nvap ing</w>\nconfe ssions</w>\nye ah\nbal li\nluck now</w>\ncor pse</w>\nsculp tor</w>\namp ton\nt pp</w>\nindic ates</w>\nsur plus</w>\ntru man</w>\nðĿ Ļ\nsin ha</w>\nin vo\nsovere ign\nke v</w>\nestabli shing</w>\nengra ved</w>\nassu ming</w>\nðŁı ģ\nsou za</w>\nfab i\nton ed</w>\noun ge</w>\ndel oit\ndow ney</w>\nno ble\nom or\ncar tridge</w>\nðŁı Ĳ</w>\nu hur\nhol loway</w>\nsucce sses</w>\nr sa</w>\nâĦ ¢\nma zz\ntw d\ndisc ourse</w>\n. <</w>\ny at\nsatis fy</w>\ncom pri\nà¤ ¹</w>\ngraph ite</w>\ndisser tation</w>\nar ter\ní Ķ\nb ally</w>\nzom bi\nly ons</w>\na ic\nu bc</w>\npra da</w>\ne il\nda x</w>\ncla i\ngrand daughter</w>\nextravag anza</w>\nchall enge\nðŁ¤ ŀ\npo ver</w>\nprimar ily</w>\ndad dy\nman a\nbi kers</w>\ninqui ries</w>\nda un\nfel ine</w>\ngener ative</w>\nhe f\nbenef iting</w>\nlind sey\npol ka</w>\ndemonstr ated</w>\nal le</w>\nrand y\no su\nlow key</w>\nweir dest</w>\nred bull\nour y</w>\nn ous</w>\nwood stock</w>\ncre denti\nnic er</w>\ng ado</w>\naly ss\nap h</w>\nprepa redness</w>\nstation ary</w>\nincorpor ated</w>\ndy er</w>\nsarato ga</w>\ncele sti\n: \"\nantibio tics</w>\nor gs</w>\ninde fin\nap ron</w>\nÐ¸ Ð\nfif teen</w>\nno f\nðŁĶ Ŀ</w>\nph x</w>\nte ga</w>\nm z\norganiz ational</w>\non air</w>\nband ung</w>\npleas ures</w>\nmor i</w>\nsecre tari\nrac coon</w>\nca shi\npil ates</w>\nk on</w>\ngeof frey</w>\nla o</w>\nkam p</w>\ndepart ments</w>\nback packing</w>\nan am\nÃ «\ncrack down</w>\naun ty</w>\non do</w>\nli zzie</w>\nph ers</w>\ncu n</w>\nðŁĩ ±\nk pop\npu t\ninten tional</w>\nconnol ly</w>\nbar clays</w>\nhs fb</w>\nswin don</w>\nu ku\ns ally\na int\nâľ ħ\npen ang</w>\nup lifting</w>\nepile psy</w>\ninter ro\nbun gal\ngo ku</w>\nblue berries</w>\nà¤ ¦</w>\nu ssia</w>\nsil ky</w>\nmou red</w>\ni stic</w>\nbri efs</w>\nme ats</w>\ngo b\nch aser</w>\nstate wide</w>\npra sad</w>\ngl itch</w>\nar in\nban ff</w>\nmemb er\nðŁĺŃ âĿ¤ï¸ı</w>\nlo ving\nhall a</w>\nà¸ ¡</w>\nsmo kers</w>\nyak u\nscicom m</w>\nphysi o\nsw ol\nlem ons</w>\ngel ato</w>\nch ool</w>\ncapit als</w>\nki stan</w>\nti ghts</w>\nspi kes</w>\ntrav ellers</w>\nik lan</w>\ncommissi oning</w>\nar ine</w>\nemabiggest fans</w>\nempha sis</w>\nfront line</w>\npad dock</w>\ndestruc tive</w>\nba ha\nl inger</w>\nje wish\nshet land</w>\nmc gin\nmon key\nko z\ns one</w>\nraj ini\nte h</w>\ny en\nc vs</w>\nmasqu er\ngir ly</w>\nwe sle\nwas nt</w>\nbro dy</w>\ntermin ator</w>\ngil le\nmag gi\nbir die</w>\njeopar dy</w>\ncu bic</w>\nvm ware</w>\nintric ate</w>\nan up\nto pia</w>\neast on</w>\nsab res</w>\ninvestig ates</w>\nbu sting</w>\nbil ingual</w>\nvalent ino</w>\nin format\nfer re\nadvent ur\nhydr ate</w>\nfor sy\naz iz</w>\nsan to\ne de\nwhist ler</w>\ncontinu ously</w>\nd ham\nun used</w>\nji had</w>\naddic tive</w>\nvi dy\ndo b\ni do</w>\nfi ed\nni versary</w>\nn one\nfu er\nðŁĺį ðŁĺĺ\ncoven ant</w>\nprin table</w>\nimmac ulate</w>\no em</w>\ncl t\nserv ants</w>\nconsu med</w>\nun released</w>\nsc um</w>\npack aged</w>\nme re\nìĦ¸ë ¸\nto by\nta f\nspo ons</w>\nme al\nf ball</w>\nfair field</w>\njan et\nsilver stone</w>\ndart mouth</w>\nfollow me</w>\nvoy ager</w>\nkom bat</w>\nanni ver\nene w\nmag dal\nho ve</w>\nsa th\ngrizz ly</w>\ncar di</w>\ngart ner</w>\nsand y\nkan ye\npost ure</w>\npo ign\nim pulse</w>\nradio logy</w>\nhoriz ons</w>\nsi am\naish war\n= =></w>\nno che</w>\ntr is</w>\nel yn\ncom me</w>\ndu i</w>\nce c\ncouncill ors</w>\ncudd ling</w>\ncreep ing</w>\nloc ke</w>\nmanag es</w>\ntrans ferred</w>\nne cks</w>\ndi er\ndan o</w>\nv ick</w>\nlun ches</w>\nd he\nen sures</w>\ncri ss</w>\nul ster\nbann on</w>\ncont enders</w>\nsp am\nsweet ness</w>\nmed al\nhon duras</w>\narc tic\nultra sound</w>\nin fr\ndisco vers</w>\nei ffel</w>\nca sters</w>\nru ben</w>\ndu st\nawe ed</w>\natri um</w>\nlest we\nse ared</w>\nðŁĵº :</w>\nty ne</w>\nex changes</w>\nlittle mix</w>\nl le</w>\nastron auts</w>\nhersh ey</w>\nwork day</w>\nkno b</w>\nso v</w>\nre signs</w>\ntoday show</w>\nder man</w>\nan th</w>\naf c\nta ster</w>\nsw oo\nsa eed</w>\nper ing</w>\nnarrow ly</w>\nrn li</w>\nbest buy</w>\npanas onic</w>\nobst acle</w>\nfarmer s\nðŁİ Ļ</w>\npa wan\nki est</w>\nang ers</w>\nabsur d</w>\noh my\nsin o</w>\npist achi\nsp ice\ngiu li\nprime time</w>\nko w\nk ens</w>\nex agger\n! ?!</w>\nu ba</w>\nmidd les\nju dd</w>\ne jec\nslam med</w>\npen sions</w>\nof a</w>\nre create</w>\nb hp</w>\nxx l</w>\nliver pool\nthre sh\npur ity</w>\nni eu\nhol ics</w>\nwr ath</w>\nra do</w>\ngli o</w>\nam ma</w>\ndile mma</w>\ncr u</w>\nlets go</w>\n.... @</w>\nâĿ ĵ</w>\nsugge sting</w>\ntru mps</w>\nhor us</w>\nf v\nic om</w>\nrefer ring</w>\npredic tive</w>\ntar ts</w>\nge tte</w>\nso ck\nglo ssy</w>\npin ky</w>\nal ec\nthy me</w>\nou ra\nthero ad</w>\npe tr\ncr am\np fi\ndv n</w>\nme ier</w>\nincen tives</w>\ntun nels</w>\nmobi l</w>\nrec ap\nextra s</w>\nupri ght</w>\nrev amp</w>\nper severance</w>\n, -</w>\not p</w>\nmir ror\nar wx</w>\nger ry\nma her</w>\ng or</w>\nhom epage</w>\nam is</w>\nag ra</w>\nmade le\nbest friend\nsirius xm</w>\nbun dles</w>\nadmir ing</w>\nt dsb</w>\nðŁį ģ\nch as</w>\nslow ing</w>\nro h</w>\nwall papers</w>\nâĢ¦ /</w>\ntek ken</w>\ngang s</w>\ntal a</w>\nlind say\nshou l\nline backer</w>\ntool kit</w>\nur anium</w>\ncaly p\nab rams</w>\nmat thi\nðŁı ¿\nhon ourable</w>\nda yo\nver sail\ntan k\nst c</w>\nfr itz</w>\nspl end\npat ag\nanno yed</w>\non day</w>\ndevast ated</w>\nchattanoo ga</w>\nnational ism</w>\nmas sey</w>\njen n</w>\ntail or</w>\ndev gn</w>\norg ans</w>\nzu cchini</w>\non fox</w>\nsat ire</w>\nwex ford</w>\ndis grace</w>\nno to\nvol ta\nâĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ıâĿ¤ï¸ı</w>\nà ¶\nhome owners</w>\npoin ter</w>\nm cr\nau sten</w>\nday sto\nmo ons</w>\npal ma</w>\ngra zing</w>\ne so\ninfluen cers</w>\nshahid kapoor</w>\ncompli ant</w>\nmeasure ments</w>\ndevelop s</w>\ny d\npar l</w>\np vt</w>\nrand olph</w>\ntor tured</w>\nger ald\neli as</w>\ndeepi kap\nwar mup</w>\nhick ory</w>\ng ap\nco ffin</w>\nam our</w>\nre neg\nmoun ting</w>\nseven s</w>\nig le\nhi er</w>\ndec ad\ntri ght</w>\nesc apes</w>\nwer ner</w>\nt fl</w>\nful filled</w>\nni ger</w>\nsour dough</w>\nre aper</w>\nchoo ses</w>\nspin ner</w>\nweek nd</w>\nfil tered</w>\nsh uk\nkat i</w>\nold ham</w>\nopen source</w>\nkh anna</w>\nat elier</w>\nconne c\nopho bic</w>\ngla s\ncomplic ations</w>\nar son</w>\ncounc ils</w>\nsm ol\nas sy\nlur king</w>\nling ui\nhan ks</w>\ne in\nÙ ħ</w>\nru gs</w>\nn guyen</w>\nnou veau</w>\nmen ace</w>\nle v</w>\nalad din</w>\nru ining</w>\nround about</w>\nk m\ncon or\nshoo ps</w>\nmay day</w>\ntraum atic</w>\nprab has</w>\nka iser</w>\nk ita</w>\nrou ter</w>\npe dro\nre tar\nstun ner</w>\nspani sh\ndistur bed</w>\nacade my\ne learning</w>\nwit ty</w>\nsen g</w>\nfer al</w>\nav y</w>\nsta b</w>\nke aton</w>\nur du</w>\nko to</w>\nhu i</w>\ncoo ke</w>\nari an\nthe personal\nu ma\nse ap\na sting</w>\nrhetor ic</w>\nhand writing</w>\nmunici pality</w>\nconsor tium</w>\nðŁĲ Ł</w>\nglasgo w\nra ya</w>\neli za</w>\npolym er</w>\nbro th</w>\nprac ti\ncorrespon dent</w>\naddic ts</w>\ngay le</w>\nail ing</w>\no fe\np li\nhear tw\nst itch\nsight ings</w>\nprie sts</w>\nsam o\nslo th</w>\ngood wood</w>\nroc co</w>\nsab c</w>\nsumm it\nl ace\npres ley</w>\nitt en\ncin cy\nthepersonal network</w>\ns week</w>\npe gas\naf con</w>\nregi stry</w>\nci m</w>\nle th\ndic ap\ncand ice</w>\nflu ent</w>\nsm ack</w>\npede stri\nal oud</w>\ncar ac\npriyan kach\np gh</w>\nir ons</w>\ndol ce\nlat via</w>\ndece ased</w>\nthero ck</w>\ncla p\ncen e</w>\nfo am\nmorris sey</w>\ngre t\nessenti ally</w>\ncom cast</w>\nbe agle</w>\nargu es</w>\ning ed</w>\n- âĢ¦</w>\nsa g</w>\nha san</w>\nðŁĻ Ĩ\nðŁį °</w>\nnh ra</w>\nkann ada</w>\nindic ators</w>\non er\nbri xton</w>\nat as</w>\nscreen play</w>\nsor ority</w>\nsha heed</w>\nhe em</w>\nclass mates</w>\ntain ment</w>\nes i</w>\nbreast cancer</w>\nzucker berg</w>\naur or\nen cia</w>\nref ers</w>\nkae per\nvor tex</w>\ncom part\nlym ph\nphotograph ing</w>\nste ff\nrest ling</w>\npar sley</w>\nmom ento</w>\nth man</w>\nlac king</w>\ndu tt</w>\nocu lus</w>\nfin o</w>\nfren zy</w>\nra sc\nder n</w>\ndis missed</w>\nnoo k</w>\nmet gala</w>\nsh ill</w>\nrapha el</w>\nmaver icks</w>\nexhib its</w>\neag erly</w>\nc pa</w>\namen ities</w>\n. âłĢ</w>\nexo dus</w>\nern st</w>\nlit a</w>\ndeal t</w>\nwomens march</w>\ni ain</w>\nscore board</w>\ncampe ones</w>\nc en</w>\nti ki</w>\ngarri son</w>\nfidel ity</w>\nbra g</w>\nroad map</w>\npsy chop\nlo e\nble u</w>\nðŁĳĬ ðŁı¼</w>\nsau vi\nspr inger</w>\ntemp tation</w>\nru dolph</w>\nac ura</w>\nwic z</w>\nparach ute</w>\nstro l\nlen ny</w>\nzi k</w>\ndom s</w>\nnb af\nal pac\nvivi an</w>\nro ve</w>\npre et</w>\nperpe tu\nsna ke\nair soft</w>\ninfl atable</w>\nprin ces</w>\nati e</w>\nffe y</w>\npati ent\nm ire</w>\nchel le</w>\nsl ack</w>\ngroo vy</w>\n# :</w>\nup loading</w>\n!!!!!!!! !!!!!!!!\nsiem ens</w>\nprovi sion</w>\nv fx</w>\nneed y</w>\nf ats</w>\nto poli</w>\nbhu tto</w>\nsa thletics</w>\nalu ms</w>\nt winning</w>\nsouth western</w>\nadop ting</w>\nlast night</w>\nman ne\nla ga</w>\ntw ell</w>\nac ia</w>\n-- --</w>\neye wear</w>\nhur ley</w>\nfle e</w>\nsa ch\npe cker</w>\ncost ly</w>\nis k</w>\ncr ates</w>\npolic y\nero sion</w>\nin go\nwer k</w>\nðŁĲ į</w>\ntorto ise</w>\ntherap ies</w>\ninter net\nchihuahu a</w>\nri ps</w>\nfre i\ned or\ntai ji</w>\nt fc</w>\ndo d</w>\ndemp sey</w>\nchrist in\nchen g</w>\nhi ps</w>\ngra eme</w>\ncom passionate</w>\ncavali ers</w>\nhistor ic\nsoul ful</w>\ncrimin al\nja c</w>\nvin ci</w>\nexpi red</w>\nsur at</w>\nturi smo</w>\nk ona</w>\nse aweed</w>\nber ts</w>\nle ica</w>\nexpre ssing</w>\na al</w>\nwor t</w>\nbreak fast\nher ring</w>\nam used</w>\nrhu barb</w>\nmar tian</w>\ncospla yer</w>\ny ash\nstri al</w>\nra ul</w>\nrefer ral</w>\ndw ts</w>\nj w\nad ler</w>\ncur tains</w>\ngu r</w>\nval ence</w>\ntyr one</w>\nsw fc</w>\ncoach ed</w>\nre born</w>\ndiabe tic</w>\ncho ke</w>\nnor folk\ninvestig ative</w>\nðŁĴ¯ ðŁĴ¯\nz id\nv mas</w>\nphi e</w>\nobjec tives</w>\nâľ ĭ</w>\nover due</w>\ndi vers\nmat su\nðŁİŁ ï¸ı</w>\ncasu alties</w>\nà¸ §</w>\nal k\nstand ardi\nre alist</w>\narti facts</w>\npand or\nke x\nin vin\n( !)</w>\nine y</w>\npar aly\nmr t</w>\nfay e</w>\nthe voice</w>\non ga</w>\nde ed</w>\nskin ner</w>\naz wx</w>\nspeci men</w>\npriyankach opra</w>\nnu evo</w>\nbar kley</w>\ntoulou se</w>\nresu mes</w>\nfootball ers</w>\ncit i</w>\nfe tch</w>\nÃ¨ re</w>\nlestwe forget</w>\nðŁĻ ĭ</w>\nch unk</w>\ndri fting</w>\nmanipul ation</w>\nequ als</w>\npu tt</w>\nky ungsoo</w>\nâĿ¤ï¸ı #</w>\nela stic</w>\npar ano\nfo y</w>\ndo ping</w>\ncin cy</w>\nss ler</w>\ninterrup ted</w>\nal ay\nado res</w>\name thy\ncon voy</w>\nãĢ ı</w>\nĬ ãģ\nblack list</w>\ngener als</w>\nsa chin</w>\nbru shed</w>\noun ces</w>\nnon stop</w>\nilli ams</w>\nbt sarmy</w>\nu av</w>\nru ff</w>\nbur ma</w>\nbi k\ndefen ce\nschul tz</w>\nbo asts</w>\nlonel iness</w>\ngo re\ntrans forms</w>\nalum na</w>\n@ @</w>\nra ppers</w>\nne hru</w>\ncar o\nhimalay an</w>\nwearab les</w>\nge h\npepper mint</w>\nre development</w>\nflam ingo</w>\ncos by</w>\nbig baldhead</w>\nag ri</w>\nbare foot</w>\nsco pes</w>\nre gram</w>\ngh ana\nðŁİ «</w>\ni heart\nsa die</w>\ncarri e\nmicrobi al</w>\nku ala</w>\nsk ater</w>\nquer que</w>\nâĻ ©\ngen res</w>\nreas oning</w>\nch ased</w>\nas o\nsli pped</w>\nen can\nvam os</w>\nker s\nad verse</w>\nmo il</w>\ncommod ities</w>\nwith you</w>\nsil ent\nhy pe\nan de</w>\nam ination</w>\nwhi spe\nlit z</w>\nâļ½ï¸ı âļ½ï¸ı\nri ff</w>\npp y\nlam bs</w>\ngan esh</w>\nab sent</w>\nregu lator</w>\nmarse ille</w>\nen roll</w>\npar cel</w>\nwa p</w>\nby rd</w>\nðŁĩ Ń\ntu ber\ncountry music</w>\npar l\ncontro llers</w>\nresponsi bilities</w>\nwe y\nch ate\nmontene gro</w>\nchic o</w>\nmil an\nl ms</w>\ntra inees</w>\nappropri ately</w>\nun certain</w>\npopp ies</w>\ned sheeran</w>\nnutr itious</w>\ngar o</w>\ndeut sch\nawe some\nãĥ ¼</w>\ncomfor tably</w>\nland marks</w>\net i</w>\nre usable</w>\ndaniel le\nro sal\nco les</w>\njust ic\nc cs</w>\nf anny</w>\nni m\nmc u</w>\nclin ch</w>\nat ene\nmer ge</w>\nim db</w>\nang lo</w>\nuc cino</w>\npan ini</w>\nan not\nbur berry</w>\nfeat ure\npredic ting</w>\nfashioni sta</w>\ns ask</w>\nimag inary</w>\nmm o</w>\nsouth sudan</w>\nspe ar</w>\nhu bble</w>\njo inthe\ncoyo tes</w>\nsli go</w>\nko dak</w>\nsit com</w>\npolaro id</w>\nroo ted</w>\ncorru p\nðŁĻĮ ðŁĻĮ</w>\nbris ban\nat z</w>\nah l</w>\nre my</w>\ntal ent\naval on</w>\nra da</w>\npau line</w>\nlocom otive</w>\ngo ons</w>\nne mo</w>\nmaser ati</w>\nic u</w>\nstu tt\nhistor ically</w>\nsm b</w>\npres by\navo id\nso oners</w>\nrhine stone</w>\nw ad</w>\nri sing\ntro t</w>\nmo des</w>\nreg ent</w>\noptimi ze</w>\nre ece</w>\nsm u</w>\nver ti\nnewyork city</w>\ncor tez</w>\nra c</w>\nin case</w>\nsin c</w>\nfiel ding</w>\ne tta</w>\ntiff any\nal monds</w>\nsad dle\nk rat\nmat ter\ng low\nstar ving</w>\ngl o</w>\ncra ppy</w>\nsl ur\nst d</w>\nmonit ors</w>\nrecei pt</w>\nmaymay entrata</w>\nmc il\nun is\nrain bows</w>\ncal dwell</w>\npacqui ao</w>\nj op\na fe\nhoo k\nes sen</w>\nwiz ard\nmedi an</w>\nfla ws</w>\ncom s</w>\nâĿ Ħ</w>\ning h</w>\nha ynes</w>\nanton io\ntem plates</w>\nou ter\nna w</w>\ncardi gan</w>\nbel grade</w>\nðŁĴ ī</w>\nhom o</w>\na ise</w>\nro pes</w>\nno ve\nwhat you\ntri gge\nconcep tion</w>\nad ukone</w>\nna di\nfri ars</w>\nsw er\nadju sted</w>\nhot line</w>\nsan ity</w>\nkau r</w>\ndown loading</w>\nc gi</w>\nten or</w>\neth nic\napp alach\nà¸ ¸</w>\npa g</w>\ngol ds\non set</w>\ninvestig ator</w>\ncar tel</w>\npeace fully</w>\njarre tt</w>\ncat alan</w>\npoli o</w>\nn um</w>\nfru stration</w>\ndhar ma</w>\nmy life</w>\nâľĮ ðŁı»</w>\naber deen\nmu sa</w>\nbin der</w>\nspark ly</w>\nfle eing</w>\ninstin ct</w>\nco ping</w>\ndomin ance</w>\nill ers</w>\ner a\nu conn</w>\nlo oms</w>\nliving ston</w>\ngal i</w>\nhe s\nc ma\nbel a</w>\nse ley</w>\nmon k\nla ch\nmar x\nÂ ´\nm erica</w>\nwoman in\nes sex\nra ina</w>\njim i</w>\nnep tune</w>\nz ack\nchine se\nmart ins</w>\nchand elier</w>\nher n\nwith us</w>\near l\nasph alt</w>\nmodu les</w>\nst p</w>\nul la</w>\npsychi atric</w>\nmile age</w>\ncaptiv ating</w>\nsi der</w>\nmen to</w>\nmor t</w>\ntran ce\ntal bot</w>\nab by\nì ĥ\nâľĮ ðŁı¼</w>\nj ak</w>\ndaw n\nturn up</w>\nscre wed</w>\nfe ds</w>\nblue print</w>\nðŁĴĸ ðŁĴĸ</w>\nhar sh\ner os</w>\ninsom nia</w>\nban kers</w>\nta emin</w>\nmis conduct</w>\nhu mber\ngi di</w>\nedu ardo</w>\ncon a</w>\nmusc ular</w>\nconsu ming</w>\nra sh</w>\ndon nie</w>\ndi pped</w>\ncol lie</w>\nsamu el\nmelt down</w>\nðŁĺįðŁĺį ðŁĺį\nme z\nexam ining</w>\nschwar tz</w>\npri stine</w>\nðŁĲ Ŀ\nve it</w>\nful filling</w>\nan esthe\ngue sses</w>\ndra ft\nsom me</w>\nsoli d\npati onal</w>\nho ped</w>\nevolu tionary</w>\nall er</w>\nenter tained</w>\nsli ps</w>\nlud wig</w>\nconclu des</w>\nsen sible</w>\nbon net</w>\ncra ze</w>\ntra s</w>\nhaz ards</w>\nconst antine</w>\ned ics</w>\nstar trek\nto c</w>\noccu pational</w>\nin cheon</w>\ndeepikap adukone</w>\npizz as</w>\nnew comer</w>\nde part</w>\noppre ssion</w>\nebon y</w>\nfoss ils</w>\ntro jan</w>\nel en\nste aks</w>\nk hou</w>\npositi oning</w>\nug by</w>\nred cross</w>\nak h</w>\ndol ce</w>\nus mnt</w>\npp en</w>\ndil ig\nma vs</w>\ncall er</w>\ncost ello</w>\nâĽ Ħ\ndy n</w>\nthing s\nrhin os</w>\na xi\nsar kar</w>\ncon vocation</w>\natt ers</w>\nss ss\nfun gus</w>\neu gen\nruss o</w>\nsqu at</w>\nw sb\neli on</w>\nwilliam sburg</w>\ns off</w>\ndefici ency</w>\nbe arer</w>\no kin\nkey stone</w>\nt wain</w>\ncal ming</w>\nbreak able</w>\nwa res</w>\nhorser acing</w>\ncom bs</w>\nbun ting</w>\nu it\nt land</w>\nðŁĴĻðŁĴĻ ðŁĴĻ</w>\nga stron\nsab ot\nick ers</w>\ncommissi oners</w>\nsen ate\nii ot</w>\nath ena</w>\nnit rogen</w>\nan tony</w>\nero tic</w>\ndi alo\nmis sou\nhypo cr\nâľ Ī</w>\nkaeper nick</w>\ncan v\nd roo\nclevel and\no sh\nmon sta</w>\nstefan o</w>\n^ )</w>\nsh ul\npo ison\nha e\ncommerci als</w>\nma ul\nnit ro</w>\nco worker</w>\nalo e</w>\nvap or</w>\nt ents</w>\nrussi an\nqu id</w>\nquestion able</w>\nmid get</w>\npo ker\ngirl friends</w>\nsin the\nerit rea</w>\nten ure</w>\ndepos its</w>\nbuc keyes</w>\nspot ter</w>\ntheod ore</w>\ntrin ity\njoaqu in</w>\nu cci</w>\nfollow the\ncaf c</w>\nmp a</w>\nðŁĲ »\nplo tting</w>\ndom ino</w>\nta ek\nsion ally</w>\ndicap rio</w>\npa p</w>\ncar mel\nig er\nbt cc</w>\nbeth le\nwww bigbaldhead</w>\nfoo die\nbagh dad</w>\nmason ry</w>\noff ended</w>\nà ·\nà¸ ģ</w>\nsc ro\nvers es</w>\nori ent</w>\nar ches</w>\npi yu\nknow your\ngre e</w>\nta kers</w>\ngu ard\ndish on\nbucket list</w>\nbha fc</w>\nwar dly</w>\nðŁİīðŁİ Ĭ</w>\nleigh ton</w>\npe w</w>\nstra y\nassaul ted</w>\nin hal\nly fe</w>\namar keting</w>\nl x</w>\nkat z</w>\nubun tu</w>\nme o</w>\ncarto onist</w>\nturno ver</w>\nmi z</w>\ndis like</w>\nmul len</w>\nmo f\nbl and</w>\nhi des</w>\nemer ges</w>\nchori zo</w>\ntruste e</w>\nma hog\nlan sing</w>\nparalym pic</w>\nfa int</w>\nfa una</w>\nch al</w>\nsn ar\ncat h</w>\nbent on</w>\ncast illo</w>\nsli ppery</w>\napric ot</w>\noec d</w>\nbar o</w>\nl z</w>\nhe ming\nclow ns</w>\nco workers</w>\nperu vian</w>\ncommu ters</w>\ny ell</w>\nðŁļ ´\nunder ing</w>\nv j</w>\ntt p</w>\nfli pk\nw ana</w>\nsoc ent</w>\nĤâĸ Ĥâĸ\nà¤ Ĥ</w>\noo sa</w>\njag ger</w>\ndi sm\ne less</w>\nd ham</w>\ncali f</w>\na official</w>\nec lip\nharro gate</w>\ngra pp\ncom rade</w>\nn tr</w>\nconcentr ate</w>\nthi ghs</w>\nbit coin\nbel arus</w>\në ĵ\nend uring</w>\nnow watching</w>\nindustri al\npi p</w>\nar on\nar at</w>\nÂ ®\nwhit by</w>\noooo ooo</w>\nsa ree</w>\ntic als</w>\nmis leading</w>\nyo on\nyear s\nsle igh</w>\nroman ian</w>\nsciss ors</w>\nvam pires</w>\nac up\nab ba</w>\nth weeksary</w>\ncent ri\nfl ye\nu o\nc bi</w>\nbu ena</w>\nsin d</w>\nmar ino</w>\nbur r</w>\nre building</w>\nà¤ ²</w>\nanniver saire</w>\nac ca</w>\nðŁĴĢ ðŁĴĢ\ngett ing\ntu lips</w>\nwolf pack</w>\nâľį ï¸ı</w>\nmore than\nta kin</w>\nðŁ¤ĺ ðŁı»</w>\nu be</w>\nmon ic\ndou bts</w>\nmo wer</w>\nco balt</w>\ndon ne\nspecul ation</w>\nargu ably</w>\nkak u</w>\nhtt ps</w>\nprosecu tion</w>\ndin ah</w>\nstam atic</w>\ndisclo sed</w>\nbever ly\nfl wx</w>\ncra bs</w>\nextraordin aire</w>\nwar mest</w>\nimper i\no logists</w>\ntrac es</w>\npar c</w>\nlake side</w>\nam r</w>\nter i</w>\nhour ly</w>\ndomin ation</w>\nar row\nshrews bury</w>\nance stry</w>\nwr angler</w>\ntrigge red</w>\npen sac\nroo ster</w>\nsurvi ves</w>\na on\nbo ko</w>\nval or</w>\nlove is\nla g\npe y</w>\nfo cal</w>\nout laws</w>\nbl anc\nartic ho\nwit s</w>\nmarsh all\ndie go\nsupport small\nu ca</w>\nsa h\nje et</w>\nsyn ago\ngover ning</w>\nðŁĴ ¬</w>\nsal ads</w>\ncre ate\nmiri am</w>\ncen sored</w>\nami de</w>\nno u</w>\nz eta</w>\nallegi ance</w>\n* )</w>\nbl m</w>\nric an</w>\npa stors</w>\noly mpus</w>\nblo c</w>\nwhir l\nstar ry</w>\npr one</w>\ny k</w>\np ne\ncongratul ating</w>\nbe v</w>\nso ber\nlove island</w>\nsa ir</w>\nan ing</w>\ntutor ials</w>\nq e</w>\nlun d\nin ist</w>\ncle ver\ntaxpay er</w>\nali z\nwren ch</w>\ndd ling</w>\ncap ri</w>\nh pa</w>\nðŁı» âĢįâĻĤï¸ı</w>\nna j\no j\nfuturi stic</w>\njelly fish</w>\nðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥</w>\ncel ery</w>\nplan k</w>\nfil a</w>\nne me\nun healthy</w>\nlec tions</w>\nðŁ§ ¡\nrit chie</w>\nn ws</w>\nmi kha\nwonder woman</w>\nâĢ İ</w>\nhip stamatic</w>\nka g</w>\nðŁĴľðŁĴľ ðŁĴľ</w>\npoul try</w>\nmo w\nwor ds\nlo ff</w>\nðŁ¤£ ðŁ¤£</w>\nrelat able</w>\nre mixes</w>\nkeny atta</w>\nke m\nre signed</w>\nfo d\nstra igh\nj lo</w>\nhu tch\nbox ers</w>\ncolle en</w>\nmag s</w>\ninstruc tional</w>\nko l</w>\nattrac ts</w>\npra g\naccount ant</w>\ngo ggles</w>\nbr u</w>\nth ole</w>\nmar row</w>\nleu ke\noc to\npon ds</w>\nbubb ly</w>\nhe ist</w>\nìĹ ĳ\nim p</w>\na har\nha unt</w>\nhall mark\npsy ch\nkkkk kkkk\ncol umb\njump suit</w>\ncost co</w>\nsi delines</w>\nag gies</w>\nover turned</w>\nni b</w>\nkey chain</w>\nfu k</w>\nf af\nmi am\nassist ants</w>\ncy cled</w>\nri der\ndam mit</w>\nred wings</w>\nmag es</w>\nkin s\nì Ĥ\nho d\nson t</w>\ncarol ine\n\" '</w>\ncu le</w>\nbra id</w>\nfel ony</w>\nar ities</w>\nruther ford</w>\ndepic tion</w>\nisab elle</w>\nro ach</w>\nk day</w>\nfifth harmony</w>\nem y\nli gam\nbari sta</w>\nalbu querque</w>\ngro ss\nðŁį º\noo ks</w>\nðŁĳ ¼</w>\ndun can\ntry in</w>\njag s</w>\ng ould</w>\nli tho\nâģ £\nÐ° Ð\nsam my\ntun g</w>\ncas ser\napo lo\naaaa a</w>\nman g</w>\nas ics</w>\nsh en</w>\np ye\ntur bul\nss p</w>\nsaint sfc</w>\non lin\nn anny</w>\nhe ster</w>\ndo z</w>\nà¸ Ķ\nth read\nren ts</w>\nkh and</w>\nðŁĴª ðŁı½</w>\nun conditional</w>\nrob son</w>\ncar re\nph on</w>\nsacrific ed</w>\nÂ £\nauto s</w>\npar ker\noc a</w>\nlog in</w>\nkee gan</w>\nhard cover</w>\ndough nuts</w>\nðŁĮ İ\nspit fire</w>\nrefresh ments</w>\nsaskat oon</w>\ncommod ore</w>\nj f\nrub ber\nhalam adrid</w>\nchild care</w>\nstra da</w>\nio m</w>\nri k\ndak ar</w>\nther mom\ncro pped</w>\ngar u</w>\nali k</w>\nven i</w>\ni ft\nsi ka</w>\nritu als</w>\nz ul\ne ch</w>\nÂ ©\nsu dan\nl land\ni me</w>\ndo cker</w>\nì ¤\nfe ared</w>\nfa o</w>\nwal ter\nno g</w>\nmutu als</w>\nl h</w>\nali gn</w>\nmon ia</w>\nconcep tart</w>\nðŁĻı ðŁı¼\nsco e</w>\ncompet ence</w>\nsw ine</w>\nly me</w>\nlaun ch\ngreen er</w>\nabstract art</w>\ninqu is\ngran ada</w>\nga elic</w>\nflu ff</w>\nd backs</w>\ngrave yard</w>\nba be\nacade mic\nadventur ous</w>\njoh ann</w>\n~ !</w>\nbi bi</w>\n| #</w>\npl ings</w>\ngett y\nas b</w>\nâĿ¤ï¸ı @</w>\nstaf f\nreligi ons</w>\nbang or</w>\nworld bookday</w>\nme gh\nde vin\nash ore</w>\nmeri dian</w>\ngi thub</w>\nqui z\nall stars</w>\nbe stest</w>\nir resi\nack er\ndo te</w>\nwar rington</w>\npol ly</w>\nnewor leans</w>\ncr ou\nwi gs</w>\nche y</w>\nsmithson ian</w>\nla sag\nde tour</w>\nbor is\nstra ps</w>\nmari ah\ninten tionally</w>\nko h</w>\nðŁį ¸</w>\nssi an</w>\nmar issa</w>\ncor al\nepiscop al</w>\ncasu alty</w>\ntom o\nsupply chain</w>\nsam p\non go</w>\nro o</w>\ncavi ar</w>\np fw</w>\nclau dio</w>\nbuff alo\ns ations</w>\nmat ty\nsnap back</w>\nl ds</w>\nal arms</w>\nmat te\nâĺ Ķï¸ı</w>\nconditi oner</w>\nd ors</w>\nhe x</w>\nfi zz</w>\na stri\nsus sex\nsecur ity\nqa eda</w>\nall star\ncocac ola</w>\nas one</w>\ncl icks</w>\nsc ans</w>\nmu te</w>\nhe avier</w>\nðŁİ §\nâĺ ŀ</w>\nlv l</w>\nbook boost</w>\nyoutu be\nfla shes</w>\nf jor\nc su</w>\nexplo de</w>\ndo dge\ncair n\ngonz ales</w>\nth ill</w>\npel le\nhart ley</w>\nrenew able\nre tin\ne stre\ncostar ica</w>\nshipy ard</w>\nnc fc</w>\npri ya</w>\na ghan</w>\nan ath</w>\nplu gin</w>\nco rey\nre bound</w>\nor u</w>\nkat rin\nhor mone</w>\ngi m\nmahin dra</w>\ns sus</w>\npark land</w>\nhar per\nfanta stic\ninfer no</w>\nep ilo\nwrest ling\nfe ct</w>\nc it</w>\nac oun\nto ssed</w>\nmonu mental</w>\nchar tered</w>\nbu st\npe tra</w>\nâĮ ļ\nwildflower hour</w>\nsweat ers</w>\n* .</w>\nbl er\nate ch</w>\ngo wan</w>\ndemo graphic</w>\nbra l</w>\nsuici de\nrenov ations</w>\nvu el\nsin ister</w>\nar mani</w>\nmiso gy\nph arrell</w>\nnap s</w>\nun iting</w>\ncrusad ers</w>\ncor gi</w>\ninsu red</w>\nthan i</w>\nno or</w>\ng q</w>\nd ada</w>\nbicy cles</w>\nsnu ggle</w>\nsch an\nten berg</w>\nss al\nfe mme</w>\nbo il</w>\n½ ï¸ı</w>\nre ap</w>\noccur ring</w>\nhus sein</w>\ndivi d\nsto ke\nsh alom</w>\nna ia</w>\no lic</w>\nfrustr ating</w>\nÙ ĩ</w>\nig s</w>\ngro ver</w>\nscen arios</w>\nn ds</w>\nbru tality</w>\nmed alli\nbu on\nsas s</w>\nskate boarding</w>\nony x</w>\nlor ry</w>\nny u</w>\ngau tam</w>\nmm ings</w>\ngu g\nend i</w>\nlo thian</w>\ncomm ando</w>\nchal k\nph ora</w>\nasse ssing</w>\nti gh\ncrun chy</w>\nad ay\nis l</w>\nci ara</w>\npilgri ms</w>\nkam al\np to\nbrit anni\nt ani\nsm c\nl ure</w>\napp store</w>\nab y</w>\ngolf ing</w>\ncl c</w>\nfa u</w>\nan as\nshu tting</w>\nregul ated</w>\ncarn age</w>\nscow boys</w>\nall enge</w>\nc ma</w>\nhumbold t</w>\nrel le</w>\nku mb\nher i</w>\nrefin ery</w>\nsound check</w>\nd wayne</w>\nbos nia</w>\ni sp\nthe alth</w>\nanni v</w>\nrelev ance</w>\nmy a</w>\nbag gage</w>\ndre ad</w>\ns bc</w>\nth ed</w>\nbu h</w>\nhi jab</w>\nlo id</w>\nke w</w>\nc te</w>\nrespec t\nlovel ies</w>\ncu bes</w>\ncelebr ate\ndir t\nsav ers</w>\n_ ,</w>\ngar ment</w>\npulit zer</w>\nmas jid</w>\nbeat port</w>\nal arts</w>\nencry ption</w>\ns ner</w>\nple ads</w>\nfound ry</w>\nsym metry</w>\nru mi</w>\nbirth place</w>\nscallo ps</w>\nsupp le\npivo tal</w>\nt ati\nno de\nso d</w>\npro xim\ntr ics</w>\ncol dest</w>\nbren t\nmand u</w>\ncla ir\ne ach\nand alu\nhi ddleston</w>\nðŁĲ º</w>\nmel ts</w>\nv ance</w>\npin n\nse ments</w>\nscre ened</w>\nsa chs</w>\no bl\nic ha\nâĺĺ ï¸ı</w>\nschool ers</w>\nheal ed</w>\nlo gged</w>\nðŁ¤ĺ ðŁı¼</w>\nic us</w>\nbore dom</w>\nb ish</w>\nb ffs</w>\ntal king\nsure sh</w>\nhoo kem</w>\nde on\nde fl\nei leen</w>\nðŁį ķ\nwomen intech</w>\nri sotto</w>\nrang er\nadverti se</w>\nà¸ ģà¸\ntel ly</w>\nla go</w>\ndart moor</w>\nd ong</w>\nsk ates</w>\nlo go\nun ner</w>\nmail box</w>\nma sala</w>\nlo oooo\namethy st</w>\nche wing</w>\nc bb</w>\naustrali ans</w>\nrc mp</w>\ngame art</w>\n# ...</w>\nkor n</w>\nextre mism</w>\nfruit ful</w>\nanci ent\npu bg</w>\npol ite</w>\nwh it</w>\nmur als</w>\nm gr</w>\nline man</w>\ndav ao</w>\nste ms</w>\nten nis\nav age</w>\ntu pac</w>\ngigan tic</w>\nhs bc</w>\nauto biography</w>\nup the\nà¸µ à¹Ī</w>\nre gal\nfig uring</w>\nku l</w>\nmis sy</w>\nhoo p\ngra s\nfor ums</w>\nback lash</w>\nabduc ted</w>\np nw</w>\nmin ic\nbu tt</w>\nbott oms</w>\nat on\nven g</w>\nðŁĮ ı</w>\ndel aney</w>\nprab hu</w>\nfan club</w>\nover haul</w>\nhealth ye\nsy no\naa f</w>\nren amed</w>\nkim i</w>\nun cle\nman city</w>\nse u</w>\nqu anti\neste em</w>\num in</w>\nen zo</w>\nmel vin</w>\nunder go</w>\nj har\nfar ah</w>\ncoast ers</w>\nhumph rey</w>\nmh z</w>\nchildren s\n^ .\nd hi\ndisrup tive</w>\nintegr ating</w>\nr nb</w>\nover sized</w>\na ide\nne au</w>\ndocu mentation</w>\nðŁĳĢ ðŁĳĢ</w>\npal o</w>\nhear th\nri yad\npun ctu\nabc news</w>\nsecu res</w>\nboy band</w>\nbir ch\nju co</w>\ntra ff\nlegislat ors</w>\nbay a</w>\nãĤ ¯\nno ises</w>\ncollec ts</w>\ns warm</w>\nk ner</w>\nbi shops</w>\nstur geon</w>\nsnapp ing</w>\nmo l</w>\nfre aky</w>\nchair person</w>\ntro p</w>\nlyn ch\ncar cin\nart sy</w>\ne sto\ncha i\nfl ur\ninv ali\nsau sages</w>\nim el\nj or</w>\nfun fact</w>\nwit ter</w>\npuni shed</w>\nac ons</w>\nh ya</w>\nre versi\nem c</w>\ndif fu\nz x</w>\nsp aw\ncla d</w>\nd mit\nhol land\nfre sco</w>\npay roll</w>\nab undant</w>\nstu ffing</w>\nmor o</w>\nc ny</w>\nboy cott\nwend y\nele ven\npro voc\npil ot\ntr x</w>\nbe ad\nclimate action</w>\nri on\nassi e</w>\nì ĸ\no sm\nislam ic\nho ar\ngood reads</w>\nal ici\nafterno ons</w>\nspoke sman</w>\njo lie</w>\nit as\nmasc ara</w>\nâĻ© âĻ«</w>\npre vail</w>\nbeetro ot</w>\nlu jah</w>\nk li\ndod ger</w>\nÂ »\nru le\nl n\nscre am\nho bart</w>\ncol bert</w>\nr tc</w>\ner m</w>\npat ro\nquo ting</w>\ns live</w>\nque st\nnon fiction</w>\nsemin ary</w>\nprosecu tors</w>\nve st\nexpress way</w>\ng ge</w>\nnau tical</w>\net f</w>\nðŁİīðŁİ Ĭ\ndur ation</w>\ncha ired</w>\nthe film</w>\nfab io</w>\nshe h\ncan o\nðŁĴª ðŁı»\nwith draw</w>\n! :)</w>\ncor pus</w>\nphen om\nyel p</w>\nla wn\nent om\nsnapp er</w>\nbut te</w>\npin ball</w>\npro xy</w>\nlibr e</w>\nalle vi\nn ada</w>\ngabri el\nfo wl</w>\neure ka</w>\ndaph ne</w>\ntu nes\npun ched</w>\nwh ore</w>\njo g</w>\nren tial</w>\nman ners</w>\no pe\nwh ufc</w>\ngu th\nrevol t</w>\nsne aker\nphilharmon ic</w>\nho ste\nsovereign ty</w>\nðŁĻıðŁĻı ðŁĻı</w>\nfish ing\nsci art</w>\nfe ta</w>\ni pp\ndump ing</w>\nkel own\ngir i</w>\ndig its</w>\nsal u\nsan jay\ntwee ters</w>\nsp as\ncol chester</w>\nsc ab\nma dd\nà¹ Ħà¸\nÄ ĩ</w>\nged don</w>\nmarch for\ndo p</w>\nmaure en</w>\nun plugged</w>\ndi do</w>\nfashion blogger</w>\nup a</w>\nmex ic\ntar y\npol ye\njame son</w>\nv t\ngrin der</w>\nmad dy</w>\nconsult ancy</w>\n¬ ë\nleagueof legends</w>\nac cents</w>\num ni</w>\njane iro</w>\ntu ss\nh ens</w>\nampli fier</w>\nto shi\npret tier</w>\npre vents</w>\nnew town</w>\nred wood</w>\nvant age</w>\nball ard</w>\nar tof\na she</w>\na sion</w>\nlac ey</w>\nap at\ngro ve\nà¸ Ħ</w>\nrw and\nreal tors</w>\ntra itor</w>\nbed ding</w>\nÃ¶ r\nzi on\nfla shing</w>\ncam pan\nboom er</w>\nsecretari at</w>\nab ol\nliti gation</w>\ncont amination</w>\nse dly</w>\nshred ded</w>\nin for\ndo herty</w>\nbench mark</w>\nro che</w>\nskate board</w>\nsho vel</w>\ni zz\nto pper</w>\no ster\nlaby rin\nautu m\nk ong\nhum mus</w>\nvi z</w>\ntech news</w>\nkla us</w>\nam using</w>\nsocialmedi amarketing</w>\ni des</w>\ncast ell\nste e\nunderestim ate</w>\ncal ab\npa ign</w>\nb illing</w>\nunanim ously</w>\ng mb</w>\nfly fishing</w>\nhath away</w>\ncommerci al\ncolour ing</w>\nskul ls</w>\npivo t</w>\nte p</w>\ntb c</w>\nmotor way</w>\nx press</w>\nconstruc tive</w>\npu k</w>\nunder lying</w>\nkir sten</w>\nmani ac</w>\ncha o</w>\nse ma</w>\nchiff on</w>\nðŁĳĮ ðŁı»\nver ona</w>\nkom o</w>\nstan doff</w>\nwi ped</w>\nc ated</w>\nbla ir\nwor kin\nm sc\nbethle hem</w>\nswi pe</w>\nunexpe c\npe es</w>\npe tri\norig ami</w>\nðŁĳ ħ\nmex ico\nflav or\nru dd</w>\ncannab is\nmar u</w>\nri ddle</w>\nwor shi\nsil on</w>\nsch at</w>\nap se</w>\ntang er\nbi ous</w>\ne er</w>\nquesti oned</w>\no zar\ndan k</w>\nangle sey</w>\nchar an</w>\nbak u</w>\ncompe ten\nre pri\nbat ter</w>\nsa xon</w>\ncal ves</w>\nleng ths</w>\n$ $$</w>\nâŀ ¡ï¸ı\nimmer sion</w>\nga unt\ncar ry\ncy to\nb anda</w>\nshu tt\nexperi ence\nel gin</w>\nmous se</w>\nta z</w>\nê µ\nin correct</w>\nen z</w>\nb ham\nmor on</w>\nso ver</w>\nar un</w>\nti pped</w>\nla ble</w>\nde arly</w>\nbau tista</w>\ní Ļ\nmor tal\nwoo p</w>\ndt la</w>\nsho cks</w>\ndav os</w>\nðŁĵ Ŀ\nswim wear</w>\nher man\nðŁĳĩ ðŁĳĩ</w>\nz ir\nneglec ted</w>\ngrac ed</w>\ncampu ses</w>\nav s</w>\nar ora</w>\nswach hb\nlive pd</w>\nac cra</w>\nenqui ries</w>\nshoo ters</w>\nkur t\nvancou ver\nbrad ley\ngar da</w>\ng Ã¼\nol la</w>\nattrac ting</w>\nup ton</w>\nne win\nlu mia</w>\nfurn ace</w>\nev ers</w>\ne on</w>\nsw a</w>\nroo kies</w>\na oc</w>\nv ss</w>\nbris ket</w>\ntor ch\nyo da</w>\nheart land</w>\ntac o\nph ony</w>\nfood bank</w>\nab bey\nbab ylon</w>\nu y\ngre ate\nexpre sses</w>\nd andy</w>\nsc apes</w>\nsurvi vor\nron d\ne ci\nha vin</w>\nab el\nchil dish</w>\ntor que</w>\nwav y</w>\nur self</w>\nkanye west</w>\nyear of\nale stine</w>\no brien</w>\nal fon\nsk ag\nkore an\nanchor age</w>\nval eri\nde w\nðŁİ ¨\nland slide</w>\ncar ole</w>\nchrist en\ngo phers</w>\naf i</w>\npriyan ka</w>\nq q\npower of\nit te</w>\npc so</w>\ntw ol\npr y\nintellec tu\nguer rero</w>\npi les</w>\nwish list</w>\nw ren</w>\ntime table</w>\në ı\nprodi gy</w>\ngibb ons</w>\n. /</w>\nne ur</w>\nanz ac</w>\nmur ray\nvie st</w>\npla ster</w>\nla ir</w>\nart gallery</w>\ninter continental</w>\ng br</w>\nbell ator</w>\nnam joon</w>\nmam mals</w>\nam el\ny aw\nsaras ota</w>\ncam ar\nbud ding</w>\nsum mari\naco sta</w>\nla sh\ney ou\npost graduate</w>\ninstruc tors</w>\nti g</w>\nconst ant\nwere wolf</w>\nic os</w>\ncla s\nglen n\nbud ge\nðŁĻ Ĥ\ner ta</w>\nsta ins</w>\npersecu tion</w>\ncumb ri\no ch</w>\nsyner gy</w>\nhu ang</w>\nscand in\nmid terms</w>\ncomment ator</w>\nregar ded</w>\nperpe tual</w>\nbo iling</w>\nal p\nlan ge</w>\nsch le\nfac eli\ntwee ta\nri dden</w>\nok toberfest</w>\ncharlotte sville</w>\nik lan\njo u</w>\nch atham</w>\nb sc</w>\nðŁį ¦</w>\nstra uss</w>\nmel low</w>\nxx xx\nhappy hour</w>\nre actor</w>\nww er\ndistr action</w>\nat orial</w>\nðŁĴª ðŁı¼\ntwin peaks</w>\nfay ette\na or\nko k\nbro om\nsy fy</w>\nou se\nam ag\nØ ·\nubis oft</w>\nlu lu\nhall mark</w>\nstu art\nit ya</w>\nsi deline</w>\nvenge ance</w>\nre lu\nsex ism</w>\nboun cing</w>\nun ites</w>\ngu stav\nte ssa</w>\nstu mp</w>\npro clamation</w>\nima x</w>\ndivid end</w>\ncol by</w>\nðŁį İ</w>\nplay wright</w>\nun safe</w>\nco smo</w>\nðŁĩ²ðŁĩ ½</w>\ncup board</w>\nconstitu ents</w>\nang lia</w>\nram page</w>\nðŁĺįðŁĺį ðŁĺįðŁĺįðŁĺį</w>\nthan ked</w>\ntake aways</w>\nshro ff</w>\nde bat\nkh ur\nconduc ts</w>\nformat s</w>\nà ©\nport age</w>\ngraph ers</w>\nu ten\npre m\nmo ines</w>\ncondem ns</w>\ns ous</w>\nl ps</w>\nf cs</w>\ndeal ership</w>\nleuke mia</w>\nbure au\nski d</w>\nguardi ola</w>\nca ster\nthir d\navoi ded</w>\nen cyclo\nc sr\nvi xx</w>\nanaly zing</w>\nshe ar</w>\ndulu th</w>\nshap iro</w>\nchan ting</w>\nstre sses</w>\nas be\nmil itia</w>\nãĥ ª\ncol lin</w>\narsen e</w>\nsure sh\nteach ings</w>\nyi xing</w>\nsh ill\nnu des</w>\nsv u</w>\nclear water</w>\nwar ped</w>\npro life</w>\nartist son\nit u</w>\nversail les</w>\ngalax y\nax el</w>\nspring st</w>\ncal a</w>\nhu hu</w>\nsc u</w>\ncommit ments</w>\nexe ter\npoign ant</w>\nmo tion\nconserv atory</w>\nrow dy</w>\nrec alled</w>\nmu sk\nemb elli\nso the\nâĺ Ģ\nsto pper</w>\nsch ild</w>\nto pe\nel mo</w>\nzi el</w>\nj om\nbarn sley</w>\nsnow den</w>\non tour</w>\njour ney\nhills borough</w>\npar ole</w>\nw ts</w>\nmo ving\nag ility</w>\ntiv o</w>\nff ers</w>\nkindle unlimited</w>\ng wen\nann an</w>\nah mad\ntex tured</w>\nhepat itis</w>\ndra m</w>\ninsi ders</w>\ntis sues</w>\nãĥ Ħ</w>\nfc barcelona</w>\ncr atic</w>\nna acp</w>\npe can</w>\nf gm</w>\ncustom ize</w>\nconcer t\ng sm</w>\npe g\np one</w>\njustin trudeau</w>\nsuper cars</w>\nhappy holidays</w>\nbu lar</w>\nado x</w>\nlap tops</w>\ndigital health</w>\ndestin ation\ngradu ally</w>\náĥ ¦</w>\npopp y\nss l</w>\ninhi bit\nstar light</w>\nof fro\nglo omy</w>\nx per\nhal der</w>\nim plants</w>\nle to</w>\nhass el\na as</w>\nun told</w>\nen ci\nliber ia</w>\nor an\ncon tests</w>\nil ah</w>\nsma g</w>\nsc out\nmari anne</w>\ncr yo\nschedu ling</w>\nlo s\nkan e\nstutt gart</w>\nne se</w>\nlaw rence\nda in\npho tom\ncar ou\nà¸ £\ng wy\nnational dogday</w>\nroa sting</w>\nband camp</w>\nkentu cky\nstret ches</w>\nke rel</w>\nca she\nãĤ ¸\nsta x</w>\ntran si\ndog gie</w>\nat ric\nhal le</w>\nci vic\nbrow ning</w>\nlein ster</w>\ncat day</w>\nhigh land\njoy ous</w>\nin cumb\nor lando\nro mo</w>\ncol ton</w>\ndel ta\ncar ab\nro tc</w>\naster oid</w>\ngoose bumps</w>\nmo logy</w>\nyo ko</w>\nan ds</w>\ntomor rows</w>\nred carpet</w>\nsm p</w>\nca sio</w>\nðŁ¤£ðŁ¤£ ðŁ¤£</w>\nse au</w>\nrejec tion</w>\nrot ating</w>\nbi partisan</w>\nth un\nmat i</w>\nbon i\nol l\nener gye\ndo it\nl j</w>\nmother hood</w>\nlou ise\nneck laces</w>\nel ite\nni x</w>\nl cs</w>\nen v\ngl u</w>\nle sh</w>\ncran k</w>\nsu sie</w>\nm clau\nso tu</w>\ncrow ley</w>\nrat ri</w>\nuse d\nbre ton</w>\nalfre do</w>\nye o\ntravel pics</w>\nti pp\nelli son</w>\nsax ophone</w>\nme red</w>\nheu ghan</w>\nta ine</w>\nf es</w>\nvi ro\nsuppo sedly</w>\ni as\ndige stive</w>\ny le\nli zzy</w>\nwildlife photography</w>\nbri anna</w>\nwest field</w>\nra ined</w>\nam her\nðŁĺĦ ðŁĺĦ</w>\ndistribu te</w>\nbott om\npre serving</w>\noil and\ncraf ty</w>\nde scen\ncol ling\nshakespeare sunday</w>\nr wc</w>\nang led</w>\nci an</w>\nt ations</w>\nmon tage</w>\nme yers</w>\nfrance sca</w>\nðŁĮ ·\nwi ggins</w>\nsan ford</w>\nvolunte er\ncar ra\nbar k\nvari ed</w>\npl in</w>\nam u</w>\nkap il\nrock ers</w>\nqu ind\nbr ane</w>\nin mate</w>\nent al\nimpro vis\nmichi gan\nre tweeting</w>\nprogre ssing</w>\nmercedes benz</w>\nsmo ker</w>\nphysi ology</w>\ndor ado</w>\nwatt pad</w>\nh wa</w>\nsr bachchan</w>\nw ga</w>\nvol atility</w>\nhi re\nac ap\nwn ba</w>\nhein z</w>\nstit ches</w>\nkidnapp ing</w>\nbur ys</w>\nlim b</w>\nf itters</w>\nthumb nail</w>\nton e\nmir and\ndesi rable</w>\nad dison</w>\ntar an\ntamil nadu</w>\nspec tator</w>\nsoci ology</w>\namit shah</w>\nremo tely</w>\nâĻ ¦\nham id</w>\nr ds</w>\ng lee\nsmooth ly</w>\nsch ro\ner c</w>\nlali ga</w>\nhe als</w>\nus f\nni shi\nd hu\nun il\nh le</w>\ntro mb\nbhu tan</w>\npilip inas</w>\nse ung\nwhit man</w>\nte y</w>\nmin ce</w>\nsnow boarding</w>\nre au</w>\nk ker</w>\nav o</w>\nzach ary</w>\nran veer\nti k</w>\ngover n</w>\nqu al</w>\nbeck y\nanthropo logy</w>\natt en</w>\ngrocer ies</w>\nde bit</w>\nwar p</w>\nsil icon\nhawa ii\nðŁĴ ħ</w>\npomegran ate</w>\npe er\norang es</w>\npeople schoice</w>\nend ure</w>\nðŁĴĽ ðŁĴĽ\nãĤ¹ ãĥ\nac ial</w>\na haha</w>\nstu k</w>\nimper ial\nbl ond</w>\npow der\nkno ts</w>\nvin ce\nwood lands</w>\nden a</w>\nwatch in</w>\nmat cha</w>\nma hat\ngalax ies</w>\nmiddles brough</w>\nk Ã¶\nstre e</w>\nresc ues</w>\nwal do</w>\nlero y</w>\ndesp ic\nreal ities</w>\ntm nt</w>\nha q</w>\nun o\npe c\nbolly wood\nblin ds</w>\ndesign thinking</w>\nhe ms\nand hra</w>\nab sen\nfan s\nste ch</w>\nshire hour</w>\nbla ine</w>\nshak ti</w>\npu rely</w>\nðŁı ı</w>\ntra fal\nke ynes</w>\ngr ate\nto bias</w>\nspon taneous</w>\nsatur ated</w>\ncaval ry</w>\npri sc\nðŁĺ ĳ\nwh t</w>\npas si\n~~ ~</w>\nvir at</w>\npatt inson</w>\nla o\nweir do</w>\nsym pathy</w>\nju da\nocca sionally</w>\ncred ited</w>\nstat u\nes co\nhil ly</w>\nesc ape\ndischar ge</w>\nse er</w>\nmay nard</w>\nsud bury</w>\nz lat\nor al\nwe er</w>\nencoun tered</w>\nsm elling</w>\nover sight</w>\nê ¸\nthat cher</w>\nmack ay</w>\nyou can\nfre ep\nfreed oms</w>\nprophe cy</w>\nho e\nishq ba\ndra ke\nqu its</w>\npel led</w>\ntur k</w>\no vi\nwesle yan</w>\nnew music\nleg g</w>\nch eng\nh illi\nay y</w>\npan ties</w>\nad versity</w>\nad jac\nvaccin ation</w>\nju ke\nga c</w>\nexce ed</w>\ntime sof\nsta ining</w>\nep cot</w>\nv ital\nup ward</w>\nbethe sda</w>\napar k</w>\nma hi\ncamp fire</w>\nenchan ting</w>\nrha pso\nh z</w>\nna ver</w>\nfa x\nvali dation</w>\nac ad</w>\nny r</w>\nas ym\ncoordin ated</w>\ndepar ted</w>\nall ery</w>\nvar ies</w>\nspr ite</w>\nchap lin</w>\nss occer</w>\ns wat\nbre t</w>\nrelu ct\ntunes app</w>\nsuper star\nreminis cing</w>\no co</w>\nhome grown</w>\ndough nut</w>\nun canny</w>\nla pd</w>\nthyro id</w>\n! âĿ¤ï¸ı</w>\nbotan ic</w>\nbre s</w>\nsp ade</w>\ni ste</w>\necho es</w>\ndu lil\nbur sting</w>\nqui ero</w>\nðŁĳ İ</w>\nloy ola</w>\namuse ment</w>\nha ils</w>\nsleep y\nburgl ary</w>\nâľ ı\nro gue\ncot land</w>\nmo ors</w>\nlow er\nwic ked\nðŁĶ Ĭ\ncompet iti\nargent ine</w>\nyvon ne</w>\nkarti keyan</w>\nili ary</w>\ngat sby</w>\nprecin ct</w>\nsix ty</w>\nna ji\ncam s</w>\npractiti oner</w>\nðŁĺ³ ðŁĺ³\npu ne\nneg li\njuli en</w>\ninv aded</w>\ncali br\ncla m</w>\nduba i\nmu k</w>\nlan tic\nproduc t\nfe dex</w>\nï¸ı :</w>\neu ra\ndari us</w>\ns ling</w>\nvirtual reality</w>\nhome stead</w>\nðŁı³ï¸ıâĢį ðŁĮĪ</w>\npac ed</w>\nin ha</w>\npul mon\nla zy\npremi ering</w>\nma stered</w>\nin he\ncon gregation</w>\nba jo</w>\nsport ing\nnew jersey</w>\nhor ny</w>\nlma oo</w>\nleng thy</w>\ndu t\nyo gh\nswe aring</w>\nphilosoph ical</w>\npap ua</w>\nin ski</w>\nknow les</w>\ndy ke</w>\nâĢ ²</w>\nto ken\nmc guire</w>\nri ot\nprobab ility</w>\nmc con\ngro s</w>\nsu mat\nc ite</w>\nda a</w>\non da</w>\nmad dow</w>\nche w\nboard games</w>\nspar ked</w>\nre claimed</w>\nad hd</w>\nny se</w>\nimwith her</w>\nequ inox</w>\nboo ths</w>\nbalsam ic</w>\nha zy</w>\ndor chester</w>\nag os</w>\nse aw\nmoder ator</w>\nseri ea</w>\nander sen</w>\npilgri m</w>\nâŃĲ âŃĲ\nitch en</w>\nhal li\nx ton\nnathan iel</w>\nmun ition</w>\ncelesti al</w>\nga f</w>\nzo om\nmark le</w>\npen thouse</w>\ncal e</w>\ns fa</w>\nbar king</w>\ntu cket</w>\nem ery</w>\ncal orie</w>\nli que\nad ar</w>\nmc nam\ntor tilla</w>\nwood pecker</w>\nmo town</w>\nbad ger\nayr shire</w>\nscram ble</w>\ndd ay\ncra ziest</w>\nper rie</w>\ncho co</w>\ncast e</w>\ni ot\nwre cked</w>\nselec ting</w>\nuss r</w>\ngra ft</w>\npun t</w>\nlab ou\nir st</w>\nba ek</w>\nÛ Į</w>\nsu ki</w>\nque u\nach at</w>\nte ster</w>\naug mented</w>\nwc vb</w>\nsin ks</w>\nðŁĵ »\nra ke</w>\ninter ne\nbe cause\nbelle vue</w>\nune arth\nlight en</w>\nðŁĺ £</w>\nturn around</w>\nlabe led</w>\nunemp loyed</w>\ntwitter kurds</w>\nle ia</w>\nh ye\ngreat er\nðŁĲ İ</w>\ntim ed</w>\ni red\ne tt\nlimit ations</w>\ncab e</w>\ns out</w>\nbee ch\nanni hil\nre trac\nyo ona</w>\nang er\nden nis\nsupp lying</w>\ndi z</w>\n\" (</w>\nsc ur\ngun man</w>\nsu ho</w>\nsauvi gnon</w>\nà¸ ¥</w>\nwi ley</w>\nland on</w>\nchoreo graphy</w>\npre historic</w>\nðŁı ĥ</w>\nvar gas</w>\nassess ments</w>\npinn acle</w>\ndi i</w>\nchamber lain</w>\nì Ī\nv p\npresent ers</w>\ndeut sche</w>\nsun shine\nsal utes</w>\nr one</w>\nbu siest</w>\n- .-</w>\nmotor ists</w>\nhemi sphere</w>\nal wx</w>\nps p</w>\now a</w>\nden ying</w>\ncho c\ngu tier\nhan uk\nmus kete\njait ley</w>\nse wage</w>\nt ame</w>\nthin kers</w>\nshi m</w>\nse quo\npap ar\nmiddle east</w>\nk wa\nke g</w>\npatag onia</w>\nno y</w>\nbar Ã§a</w>\ntake off</w>\nhe a</w>\nà ¬\nn sc\ng dc</w>\nðŁĳ Ī\nmou stache</w>\nmel ania</w>\nthr a</w>\nâ¬Ĩ ï¸ı</w>\npier ced</w>\nze us</w>\nfon ts</w>\nber a</w>\nit iner\nq atar\ncontr ary</w>\nire land\ni fy</w>\nou los</w>\ncommun al</w>\nfin s</w>\nun paid</w>\npa a</w>\nðŁĳĩ ðŁı»</w>\nri os</w>\nou p</w>\nf iller</w>\ncafe teria</w>\nà¸ Ń</w>\nkas i</w>\ncali ber</w>\nz ulu</w>\nv sco</w>\nts ford</w>\ndragon fly</w>\nsmo kin</w>\npi st</w>\npsycho logist</w>\ndiplom at</w>\nwe bs</w>\nbuc cane\nà® ¾</w>\nmotiv ational\ndu ne\nba e\nc fs</w>\nwith out\ner on</w>\ni ac\nate e</w>\npen sion\nfra zier</w>\nen sis</w>\nsk is</w>\npar ting</w>\nger y</w>\nterrit ories</w>\nnach os</w>\neni ght\never lasting</w>\nmsd honi</w>\ntel e</w>\nsp un</w>\npo di\nsab ah</w>\nenviron mentally</w>\nce ase\nbeau mont</w>\nmar ta</w>\nkel vin</w>\nho ff\nsun il</w>\nn da</w>\nco b</w>\nsh ale</w>\nree dus</w>\nun boxing</w>\nu bio</w>\nre opened</w>\nn all</w>\ncapsu les</w>\nmar r</w>\nhimalay as</w>\nswee ter</w>\nja z</w>\nf mr</w>\ntwee ter</w>\ndha ka</w>\nna u</w>\nde mi\nd fs</w>\nta urus</w>\nfad ing</w>\nit utes</w>\nci p\nover flow</w>\njef frey\ndon ny</w>\ncar tunesapp</w>\nðŁį ĳ</w>\nprefe cture</w>\ndanc ed</w>\nc pt</w>\nple asing</w>\nital k</w>\nearth quakes</w>\nul ation</w>\nhi o</w>\nãĢ ĭ</w>\nant an\nnutri ent</w>\nde ere</w>\nselec ts</w>\nenrich ment</w>\nr iti\ntram pol\nbl amed</w>\nj ia</w>\ncontribu tors</w>\nchesa peake</w>\npi geons</w>\ntribun al</w>\nmad uro</w>\nw su</w>\nilo ve</w>\neffici ently</w>\ndar cy</w>\nwar ms</w>\nar ra\nec u</w>\nho wer</w>\nstrugg led</w>\nrajini kanth</w>\nðŁĺ¢ ðŁĺ¢\nhou sing\nstr at</w>\neli x\ndisp ro\nraf fic</w>\nthi erry</w>\nna sty\nc fb</w>\nstaf fing</w>\nal ma\nback ers</w>\nhen son</w>\nsky walker</w>\nreale state\nroo s</w>\nness y</w>\nchan ce\ncair ns</w>\nc ci\npe dal\nly ft</w>\ncross word</w>\nwait er</w>\nonly in\nkru ger</w>\nk ir</w>\nalej andro</w>\ncar tier</w>\ncar rera</w>\nre paired</w>\nou at</w>\nun clear</w>\nun breakable</w>\ntoday in\nqu eries</w>\njo dy</w>\ngen ital</w>\nwin ner\nto l</w>\nkelown a</w>\nfascin ated</w>\nãĥ ¬\nsris ri</w>\nsqu ared</w>\nspr ung</w>\nnegoti ate</w>\npriv ately</w>\nav en</w>\n>> >>></w>\ng ical</w>\ngav in\nchester field</w>\nzu mba</w>\nor r</w>\nnat alia</w>\nimpeach ment</w>\nmn l</w>\ncar at</w>\ncriti que</w>\ncredi ble</w>\ntrac y\ntan i</w>\nmusi k</w>\njig saw</w>\ngam bia</w>\ntol kien</w>\nfe u</w>\nas per\nsav ory</w>\nfo xx</w>\nf itt\nmar lon</w>\nl rt</w>\nv ell</w>\np br</w>\nimprison ed</w>\ni om\nchu l</w>\nwind shield</w>\nkay e</w>\nba a</w>\nchor d</w>\ns art</w>\nal gon\nminister ial</w>\nnat geo\nla zio</w>\nnor ms</w>\nðŁĳį ðŁĳį\nlic king</w>\nfut bol</w>\nun sung</w>\ndalla scowboys</w>\nsh red</w>\ndistur b\ndev ine</w>\nbe ards</w>\nch f</w>\nb day\nro sso</w>\nig or</w>\nay i</w>\nsi ren</w>\nk air\nsti les</w>\nro f\nmag nets</w>\nun cover</w>\nmou se\nbang ing</w>\nsi ghted</w>\nspe ople</w>\nimpac t\nrow land</w>\nkir a</w>\nenviron ment\nlove the\np sis</w>\nmish ra</w>\ngl endale</w>\nca jun</w>\no che</w>\nde ception</w>\nsex ist</w>\nstra ws</w>\ns ga</w>\nbuff er</w>\napost le</w>\nsp l</w>\npop up</w>\nðŁļ Ĺ\nr g\nup er</w>\nball in</w>\ni dy\nocca sional</w>\nnational park</w>\nðŁı Ĭ\nu an</w>\ninnov ation\nà¸ «\nte aparty</w>\nre tte</w>\ncounter fe\nb ha</w>\nrec s</w>\nig en</w>\nðŁĮ Ĳ</w>\nhumming bird</w>\ncu r</w>\nha ven\nla zar\npue blo</w>\n: :\nzi onist</w>\nop ath\ninver ness</w>\npromo ter</w>\ncarto on\ncabine ts</w>\nmahog any</w>\nsurve ying</w>\nr ational</w>\nfeel ing\ntesti fy</w>\nso w</w>\noc on</w>\nà¸ ¢</w>\nne el\nmar is</w>\nsol itary</w>\nche mo\nrad cliffe</w>\nsim ons</w>\nros ary</w>\nnew er</w>\njo die</w>\nre tali\npra wn</w>\npad dy\nhen ge</w>\nk ala</w>\nim plant</w>\nat y</w>\nbren twood</w>\npar adox</w>\nene z</w>\nre designed</w>\np our\nwy d</w>\nal de\nà¯ ģ</w>\nsol d\nbiomed ical</w>\nà¹ Ĥ\ntt tt</w>\nmat teo</w>\nys er</w>\nnew ton\nde bun\nner dy</w>\nloo l</w>\nwo on</w>\nelisa beth</w>\nec c</w>\nwh i</w>\nach o</w>\nsalv age</w>\nsal aries</w>\nqu ity</w>\nnavig ating</w>\noph thal\ncon soles</w>\nre built</w>\no pec</w>\nast ers</w>\nsho red\nset list</w>\nkathr yn\nrhy mes</w>\nre visiting</w>\nash ish</w>\nli ft\nre post\nsole il</w>\nâı ±</w>\nweal th\nsa at\nwe c</w>\nking james</w>\nflipk art</w>\nfield work</w>\nse gu\nmo dal</w>\nbu b</w>\nare rs</w>\nðŁį Ĵ</w>\nclo oney</w>\npad dington</w>\nnecess ity</w>\nguth rie</w>\npen te\nli mo</w>\njo sie</w>\nar tin\nen c</w>\nl hs</w>\nbetra yal</w>\ninfo graphics</w>\ni er\nmo a</w>\nhear ings</w>\nbon jour</w>\nsym bolic</w>\nag ro\nwed ges</w>\nkrist ina</w>\nwild flower</w>\nathle tic\nphotograph y\npe sh\nca hill</w>\nchi lean</w>\ngou l\nfi oren\nðŁĳ ¶</w>\nz il</w>\nsk im\nbad oo</w>\ndeli a</w>\ntre ble</w>\nn cc\nðŁĩ¦ ðŁĩ\na house</w>\nbul lock</w>\nsol itude</w>\nØ§Ù Ĩ</w>\ncan cers</w>\nfutureof work</w>\nhu tch</w>\nwater shed</w>\nwar mongers</w>\nsp illed</w>\ncolom bo</w>\nmo th\nassoci ations</w>\nweigh ed</w>\nglobal goals</w>\nnot just\nchrist i</w>\ntor g</w>\nswe ating</w>\nman eu\nclu sters</w>\nâĢ¼ï¸ı âĢ¼ï¸ı</w>\nta ped</w>\nul y\ntru sting</w>\nyu suf</w>\nte in</w>\nra b</w>\n, ,,,</w>\nsin ai</w>\naudi ble</w>\nexplic it</w>\ncro wns</w>\nsch iz\nat least</w>\nðŁĹ £\nde bra</w>\nje suit</w>\nene gger</w>\nz hen</w>\none sie</w>\ni it</w>\nss f</w>\ngur gaon</w>\nchak ra</w>\nbear cats</w>\nk ran\nk awa</w>\nreque sting</w>\nhan over</w>\ng end\nsor os</w>\nmer cy\nlovel y\ndo omed</w>\ntim my</w>\nku z\nul l\nab ram\nsa ison</w>\nãĥ «\nclean ers</w>\nre mo</w>\ncircu its</w>\nbar red</w>\no th\nmo ist</w>\nmadele ine</w>\ngall o</w>\nu j\nper mits</w>\nhea viest</w>\ncar ols</w>\naz te\ngior gio</w>\nflo ats</w>\ndecl aring</w>\nus rc</w>\nmin at</w>\ncraf ts\npri ma</w>\nconven i\nnickelo deon</w>\ndanc ing\nceremon ial</w>\nblo gg\ntw p</w>\nanglic an</w>\nshe k</w>\nk nick\n( ((</w>\nhubb ard</w>\nharve y\nhit man</w>\nfen g</w>\nwe some</w>\nfor za\ns word\nop us</w>\nbro m</w>\ngi bility</w>\nz al</w>\nm unch</w>\ndance hall</w>\ngre edy</w>\nhd mi</w>\nre birth</w>\nðŁĺĭ ðŁĺĭ</w>\ns world</w>\nfigur ine</w>\ncom post</w>\nk f\nengra ving</w>\ngior no</w>\nst ana</w>\nk man</w>\nham ster</w>\ncompos ers</w>\naj e</w>\nfunc tionality</w>\npol k</w>\nis ons</w>\nair planes</w>\nte se</w>\nhor rors</w>\nmusc at</w>\ngi ven\nsp ence</w>\nðŁĩ¸ ðŁĩ\neli ot</w>\nach illes</w>\nfre ck\ncrypto currencies</w>\nsou ther\nhal o\nbor neo</w>\npolit ic\nhahahaha h</w>\nup state</w>\nsi ena</w>\nobsc ure</w>\nhau sen</w>\nlloy d\nhappy friday</w>\nmotor bike</w>\nbon a</w>\nameric as\nhol s</w>\n- (</w>\nspor ty</w>\nun aware</w>\nreven ues</w>\nchristop her\nbank sy</w>\nav an</w>\nev apor\ncom press\neyel iner</w>\nto dos</w>\nbuff y</w>\nrenewable energy</w>\nly rical</w>\nar chan\nrapi st</w>\nfair trade</w>\nlma ooo</w>\nbeat z</w>\npro active</w>\nla pse</w>\nir ical</w>\nrevers al</w>\npo de\nmcin tyre</w>\nmac au</w>\nãĥ ķãĤ\nnash grier</w>\nf sa</w>\ng all</w>\nçĶ Ł\nperpe tr\nil ya</w>\nconfigur ation</w>\n% ;</w>\nstr ange\nrac i\nà¸ ĩ</w>\npic kups</w>\nkov sky</w>\nmam mal</w>\nw ps</w>\ng able</w>\ncompar ative</w>\nz h\nsave our\nda vey</w>\non etsy</w>\nmu ssels</w>\nmis er\ncri stina</w>\nelectr on</w>\ncra ve</w>\nlo ren</w>\nprecipit ation</w>\nm z</w>\nðŁį «</w>\nvin cen\nsnow board</w>\nno ida</w>\nah n</w>\nmarin ated</w>\ng tr</w>\ntown hall</w>\nmin is\nbethe l</w>\nadv an\nsu ra\nshi el\nfur ry\nðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ</w>\nlyn d\nso il\nsc ence</w>\nsen eca</w>\nshar jah</w>\ndick ens</w>\ncredenti als</w>\nav ar\nper k</w>\nrequ iring</w>\npre fer\nj ian</w>\nde ca</w>\nr ach</w>\ning for\ndel e</w>\nbe ep</w>\nðŁĴ »\ncis ely</w>\nhu ddle</w>\ngreen sboro</w>\nhaw king</w>\nho ax</w>\nhang ar</w>\nç ľ\nmis o</w>\nlo vin\ngre ta</w>\nab ad\nlogi e</w>\nat an</w>\nsnow flake</w>\nmahe sh\nfear the\nal kal\nbobb lehead</w>\nba hn</w>\nju dged</w>\nfu tu\nfeli x\nðŁį ĵ</w>\npi ke\nder iv\nnotic es</w>\nau er</w>\ndis super</w>\nor da\nwi pes</w>\nam ino</w>\nstri kers</w>\nfoo tb\ndram as</w>\npun ching</w>\nscore less</w>\nheming way</w>\nbi h</w>\nbal lad</w>\nchat ter\nam mo</w>\nkle in\nfabric ation</w>\nkari m</w>\nz end\nhi sto\nvol ta</w>\nrock y\nmarke ter</w>\nxtre me</w>\nsequ encing</w>\nparadig m</w>\ncle ats</w>\nboom ing</w>\nâģł âģł</w>\nblock ade</w>\npromp ts</w>\nyogh urt</w>\npur pose\nnu r</w>\nregu late</w>\nnois y</w>\ning rid</w>\nbird watching</w>\nbar tender</w>\nÙ ĥ\nwor dof\ncha otic</w>\nshor ty</w>\nel dest</w>\nz app\nonceupon atime</w>\nfl yo\nrit os</w>\nmike quind\nðŁĲ ´</w>\nregi stering</w>\n. ]</w>\nad ol\ngg gg</w>\npur ge</w>\nkid lit</w>\nar bor\nval ves</w>\nsynago gue</w>\no th</w>\nunanim ous</w>\nveri fication</w>\ndar rell</w>\nãģ Ħ\nvander bilt</w>\ntape stry</w>\npro sper</w>\ndid dy</w>\ndra fting</w>\nde cep\nmarqu is</w>\nst int</w>\nmichael jackson</w>\npee led</w>\nmen us</w>\nbb b</w>\nsc are\nema il\nwri gley</w>\nit is\nf ell\nsome thin</w>\nbar ra</w>\ned gar\ndi pping</w>\npu ddle</w>\nsla de</w>\nlear ner</w>\njal en</w>\nðŁ§ Ĳ</w>\nthe daily\nmikequind azzi</w>\nju x\niq bal</w>\nmckin ney</w>\nra iser</w>\nef an\ndr one\ncat o</w>\npic ket</w>\ncro we</w>\nl att\nuk o</w>\ngiuse ppe</w>\nhin i</w>\nsynthe si\nponti fex</w>\nsong writing</w>\nto d</w>\nswit ches</w>\ndin ners</w>\nh q\ngabri elle</w>\npensac ola</w>\ncir cle\nexpo ses</w>\nev s</w>\nriyad h</w>\npro men\no ck\nsa j\ncit ation</w>\nbrew co</w>\njo si\nep aper</w>\ndri f\npoint less</w>\ntang led</w>\ncri pp\nline ups</w>\nfairi es</w>\ndaz e</w>\nmour n</w>\nbla dder</w>\nsal z\nbur undi</w>\nbook mark</w>\nthe people</w>\nsub sequ\nprinci pal\nsk er</w>\ncourt ney\na oki</w>\nrac ers</w>\nad m</w>\nmom a</w>\ncritical role\nhou n</w>\nshed ding</w>\nsa ka</w>\nace ous</w>\nmck ay</w>\nhus bands</w>\nÂ ½</w>\nme da</w>\naccu sations</w>\nro sel\nnc is</w>\nwitne ssing</w>\nor ama</w>\ngo ds\nhil ton\nel man</w>\nÃŃ n</w>\nmeg ap\ncra ven</w>\nannoun cer</w>\ncrit eri\nsheffiel dissuper</w>\nmilit ant</w>\nconsu l</w>\nhoo ded</w>\naby ss</w>\nb x</w>\nma dam\nlo cu\nmary am\nmanic ure</w>\ngrat is</w>\nac tresses</w>\nros ario</w>\nthis dayin\nking ly</w>\ngn ome</w>\ncel ine</w>\nr ous\nhe el\nlil ac</w>\nvish al</w>\nab h</w>\nthor ns</w>\ns ls</w>\nne al\nconstruc ting</w>\nbe ren\ns lang</w>\nma ins</w>\nfar ra\nsar ko\npai ge\ngu iller\nl ala</w>\nice berg</w>\nnou n</w>\nplann ers</w>\nu mmm</w>\nou ses</w>\nill ary</w>\nma an</w>\nbox ing\nzi pper</w>\nsrin agar</w>\nmigu el\no str\nmp o</w>\nresponsi bly</w>\nlan terns</w>\nappli ance</w>\nx b</w>\ngren ade</w>\nneglec t</w>\ndy sle\nham mock</w>\nne ctar</w>\nwit cher</w>\nr gv</w>\ndi ence</w>\nser bian</w>\nseed ed</w>\ncru z\nbi sh\nsp he\ne q</w>\nsky rim</w>\nalge bra</w>\nphil ately</w>\nbungal ow</w>\nge off\ny ves</w>\ndemand ed</w>\nconsider ations</w>\nthe vamp\npawan kalyan</w>\nco ded</w>\ngrit ty</w>\nerup tion</w>\nse infeld</w>\nuni denti\nëĭ Ī\nwor m\nac us</w>\nse ung</w>\ndun g</w>\nro land\nsu d</w>\ndi visions</w>\nab lanc\nshor test</w>\nj f</w>\np oun\nplant based</w>\nbe to</w>\ntough er</w>\nmc o</w>\ndon et\nmark us</w>\nv fl</w>\nðŁı ł</w>\nopen ing\nco ward</w>\ncaber net</w>\no xi\nburle sque</w>\nsand ra\nsu mo</w>\nconsi st</w>\ntho t</w>\ncay man</w>\nmotor ola</w>\ngutier rez</w>\nd slr</w>\ny w\nno bel\nnov ice</w>\nmoms demand</w>\ngrun ge</w>\nsp or</w>\nd cc</w>\npre sses</w>\nsli st</w>\nallot ment</w>\nvoc ational</w>\nft c</w>\npu ja</w>\nlo ven\nutt arak\ntan dem</w>\nsh ep\ncome dians</w>\nanat om\ncant wait</w>\nhealthye ating</w>\nwest side</w>\nmar gins</w>\nchi ang</w>\nasbe stos</w>\nstupi dity</w>\nproble matic</w>\nfit bit</w>\n: $</w>\nceil ings</w>\nshu a</w>\nprotec tions</w>\nbio tic</w>\nbeng ali</w>\nre sts</w>\nbien nale</w>\ntim o</w>\ncul min\ne minent</w>\naffe ction\nunbeliev ably</w>\nindividu ally</w>\ncanvas sing</w>\nwh itt\nnov asco\nchin son</w>\nh pe</w>\ngo w</w>\ngloucester shire</w>\npa o</w>\nthresh old</w>\nchev ron</w>\ns ine</w>\nwe ther\npp ie</w>\naqu ino</w>\nantwer p</w>\nâĸ ¬\npo on\ninst af\nequ ine</w>\ncinemato graphy</w>\nnbaf inals</w>\nvali ant</w>\nkil kenny</w>\nte rence</w>\nsyste mic</w>\nsr l</w>\np ound\nmade ira</w>\npl ough\ntre cht</w>\nmat ed</w>\nmp d</w>\nransom ware</w>\nph in</w>\nli qui\nbb ce\nboom er\ni standwith\ncon ju\nr te\nnar a</w>\nfoo lish</w>\nda shing</w>\nvier nes</w>\nbr ite</w>\nda u</w>\njuni per</w>\nai da</w>\nyou now</w>\nra zer</w>\nde i\nrepe ating</w>\ncomfor ting</w>\nadjac ent</w>\ne to</w>\nca sted</w>\nchat ur\nmu er\nsyn th\nsan itary</w>\nmac le\nindepend ent\nlaw ful</w>\ne erie</w>\nh or</w>\nðŁĴ Ń</w>\nam rit\nvel o</w>\nstation ery</w>\nmu f\nmay may</w>\ncontempl ating</w>\nelabor ate</w>\ngre gor\ndri es</w>\nac col\nà¸ ļ\nschwarz enegger</w>\nill nesses</w>\nday break</w>\nfollow back</w>\ncollu sion</w>\nelectr onic\njo vi</w>\nhiro shima</w>\nta w\nhom ec\nmic ah</w>\nqu itting</w>\nfro sting</w>\nben fica</w>\nhel i\ns ical</w>\npic cad\ncorpor ate\nment orship</w>\nyou are\nsing er\nshi va\nru ne\ning er\nri um</w>\nplay able</w>\ndoo p</w>\nwil low\nter re\nni p\nat d</w>\nwar bler</w>\nprofession ally</w>\ner ase</w>\nproce ed</w>\npedestri ans</w>\nmis chief</w>\nben ding</w>\nalas kan</w>\nc kett</w>\nmo p</w>\ndd les</w>\nshut ter</w>\nge ared</w>\natene o</w>\nma deline</w>\ng ations</w>\no sha</w>\nder ick</w>\nsw ild\nan gry\npat ents</w>\nhun k</w>\ndecre ased</w>\nfr y\nðŁĴĸðŁĴĸ ðŁĴĸ</w>\nsal on\nquant ities</w>\nd ario</w>\nni gel\nku ma</w>\njen n\nhapp ye\nxx x\nrex perience</w>\npro s\nau sch\nrele ssly</w>\nham burger</w>\nfuku shima</w>\ner ne\nstat ec\nren d\nmay field</w>\nj one\nlef ty</w>\nbern stein</w>\nsm il\ngener ates</w>\nfore station</w>\nband its</w>\nta yo</w>\nr ca</w>\nac ci</w>\nrodri go</w>\nkn app</w>\nelo vers</w>\nvege tation</w>\nu ral</w>\nle ft\nħ ï¸ı</w>\nworl dre\nsur i</w>\nembar k</w>\nw son</w>\nba you</w>\nmu ller</w>\nmo vers</w>\nðŁķ º\npresby ter\nl f\ncre e\nbat b</w>\nsal am</w>\ndemonstr ations</w>\nan ec\nn pc</w>\nit ics</w>\nto graphy</w>\nre inst\nthur st</w>\ntal e\noff ences</w>\nsmart city</w>\nbro tha</w>\nofthe year</w>\nin valuable</w>\near n\nðŁĳı ðŁı½</w>\nkre mlin</w>\ngra dy</w>\ntown fc</w>\nguern sey</w>\nma ha</w>\ncontag ious</w>\ndre x\nbe en\n( Â£</w>\nnati vity</w>\nk tm</w>\nsomer halder</w>\ncomp ounds</w>\níķ ĺ\n\" âĢ¦</w>\naf g</w>\nott news</w>\nh ound\nfire fly</w>\ncil an\ndonet sk</w>\nvolunte ered</w>\nak ira</w>\nè ª\nsing ul\nst h</w>\ndro wned</w>\nmand o</w>\nhe ir</w>\nðŁİīðŁİ Ī</w>\ntax is</w>\ny uki</w>\nvel d</w>\nk ans</w>\nel k\nran ts</w>\nhash tag\nt eng\nro g</w>\na at\ngru b</w>\ne ber\nin india</w>\ncolo ssus</w>\nsig ni\nso ever</w>\nmile stones</w>\nder o</w>\ndifferen tial</w>\nphu ket</w>\nmaster mind</w>\nan gh\nmel ani\nbro ker\nactor vijay</w>\nstun ned</w>\ncontinu ity</w>\naf fl\nvo cal\nperenni al</w>\nfianc Ã©</w>\nin complete</w>\nhun ts</w>\nre issue</w>\ndomin ates</w>\ntur meric</w>\nro am</w>\nri on</w>\nbag ged</w>\nnas sau</w>\nfu t</w>\nx ox</w>\nnational trust</w>\njo ye\nsan o</w>\nhearth stone</w>\ndis respect</w>\nle es</w>\nh se</w>\nsiber ian</w>\noffe e</w>\nre stock</w>\nwolf gang</w>\nre gan</w>\nplan o</w>\nun wind</w>\nre par\nmil le</w>\n] ,</w>\nskul l\nfat ally</w>\nconcep tual</w>\nðŁĮ ²\nf Ã©\nber to</w>\nb ms</w>\nu a\nmag na</w>\nnotre dame</w>\nle te</w>\nla undering</w>\nheartw arming</w>\nbuffe tt</w>\ngo at\npe abo\nwind mill</w>\nv ac</w>\ncontinu ally</w>\naz alea</w>\nmem brane</w>\ncan cels</w>\nmake yourown\nathe red</w>\np to</w>\ntor pe\nðŁĺ ł</w>\nðŁĴ §</w>\nsc ares</w>\nle aking</w>\nz et\npix els</w>\nac i</w>\nkh il\nmarath i</w>\nðŁĻı ðŁı½\nu la\ntam u</w>\nchandi garh</w>\nz agre\naa b</w>\npronoun ced</w>\naubre y</w>\nsand er</w>\npun ta</w>\nhar low</w>\nic elan\ncelebr atory</w>\nso t</w>\nunci ation</w>\nstru ly\nmc dowell</w>\ndeepi ka</w>\nremin ders</w>\nmy stical</w>\nct c</w>\nchat ted</w>\ns ica</w>\nbar gains</w>\nch hat\nru bin</w>\nm net</w>\noiland gas</w>\npel ican</w>\no at</w>\nmor ality</w>\nk our\ni h</w>\nnu clear\ngc u</w>\nric her</w>\nvene zia</w>\nm ma\nle ith</w>\nac company</w>\nrich mond\nsports net</w>\nba ahu\nsmu ggling</w>\nmm i</w>\nðŁĩ®ðŁĩ ª</w>\ntwi sts</w>\nsahi b</w>\n.... .\namb itions</w>\nil lo\nhistor ical\nfo rec\nshow biz</w>\npon ies</w>\nchas ers</w>\nremo del\nwill ing\nprince sses</w>\nam ple</w>\ncushi ons</w>\nac les</w>\nlot r</w>\nda ch\nan the\nin corporate</w>\nnew bury</w>\nki ri\nfried rich</w>\nab v</w>\nball ers</w>\nalber t\nðŁĳ Ń\nlet i</w>\nnan op\nci de</w>\nanal o\nn sf</w>\n)) ))</w>\ngriffi ths</w>\nvalen ci\nro ano\nfun run</w>\nbabys itting</w>\nca day</w>\nent re\nu ck</w>\nslu g</w>\ntic al\nthe sims</w>\nro ar\ncar ney</w>\ng am</w>\nsto we</w>\nfi d\nbun ny\nsham rock</w>\npe cu\nmol ina</w>\ngo cougs</w>\ncon tributes</w>\ntransform ation\nmo y</w>\nv aj\nsever y\nantioxid ants</w>\nthir teen</w>\nsight seeing</w>\nl j\nreversi ble</w>\nodd ly</w>\nhoo kah</w>\nnou vel\nhal al</w>\nfe i</w>\nstab les</w>\nmul t\nho pped</w>\nbra ids</w>\ninter change</w>\nghana ian</w>\nww ww\neth no\ncon junction</w>\nago v</w>\nye ti</w>\nearth and\nts p</w>\ncon serve</w>\nheir loom</w>\nmetaph or</w>\nwoo f\ntor io</w>\nself less</w>\nn wa</w>\nem ilia</w>\nyl ene</w>\ny xe</w>\ngi ar\nmoder ating</w>\npro bz</w>\nb fi</w>\nne er\ndu mmy</w>\nhanuk kah</w>\nwe bber</w>\nk v</w>\neye brow</w>\ndag ger</w>\nsu mp\nra ges</w>\nork ney</w>\ntb o</w>\nhal sey</w>\nassign ments</w>\ntr onic</w>\nscri b\nco on\nan war</w>\n# âĢİ</w>\njal ape\nflori da\nqu aid</w>\nhaw keyes</w>\nâĻ¡ âĻ¡</w>\nstreet car</w>\nro g\ndat lantic\ngran ola</w>\nun changed</w>\nexpect ation</w>\nÙ ĩ\nmar lin</w>\ngu mmy</w>\nðŁĻı ðŁı¾\nawareness month</w>\noil painting</w>\nmu th</w>\nper ch</w>\njun to</w>\nvilla gers</w>\nmor g\nche ated</w>\nweb comic</w>\nthe future</w>\nd ps</w>\nla kings</w>\nmen tioning</w>\nvo or\nident ities</w>\naccor d\nmc gu\nl pga</w>\nrum our</w>\nmassi vely</w>\nm pls</w>\nheal y</w>\nd ate\nsp oli</w>\nre visited</w>\non t\nal and\nscru tiny</w>\nlakel and</w>\nbl ending</w>\n< /</w>\nan kara</w>\njami edor\nmetab olic</w>\nf ences</w>\nann y\nå ħ\nsemic on\noo tt</w>\nspace ship</w>\nwack y</w>\nle ta</w>\nap ac</w>\nshe e</w>\nin herit\ndo res</w>\nðŁĩ¨ðŁĩ ¦\ngent e</w>\ntw ick\nri ms</w>\ngal ve\nde ville</w>\nking fisher</w>\nscorpi o</w>\now l\nal ar\nvari an</w>\nðŁĹ ĵ\nvene tian</w>\nstar dust</w>\nthen orth</w>\nq ing</w>\nhar rington</w>\nconsul ate</w>\nspectac le</w>\nho bbs</w>\ntur ks</w>\ngre er</w>\nmat ing</w>\nðŁİ Ģ\nðŁĮ Ģ</w>\ndirec ts</w>\ní ĭ\npompe o</w>\nvo iced</w>\nla os</w>\ntz u</w>\npro me\npri sm</w>\nmer c\nfortun ately</w>\nbc fc</w>\nmcdon nell</w>\nnot sorry</w>\nsmi led</w>\nt ba</w>\nfor war\nmid term</w>\ndar by</w>\nwe instein</w>\nup grading</w>\nwol ff</w>\nbron co</w>\ncab ello</w>\nðŁ¥ ĩ\nfi able</w>\nshar pe</w>\nbat tered</w>\nsat o</w>\nmyth ical</w>\ninstap ic</w>\npre pped</w>\neni um</w>\ne spo\ndi aper</w>\nexplan ations</w>\nwho pping</w>\nragn ar\npe el\nantibio tic</w>\nl acks</w>\nharri son\nli sm</w>\nau l</w>\nqu ail</w>\nmartin a</w>\nsent encing</w>\nsc ams</w>\ndi di</w>\ntr onics</w>\nãħł ãħł</w>\ngo ff</w>\nza in\nparam ore</w>\ncha ined</w>\nclin ton\nli ff</w>\ncott ages</w>\nem on</w>\nreve rend</w>\nconsu mer\nce an\nt any\nlum pur</w>\ne bay\nsto ol\nðŁĺ» ðŁĺ»\nta pro\nh ath</w>\nmodern art</w>\njust ine</w>\nprover b</w>\napp y</w>\ntra x</w>\nmani fest</w>\nam bu\nnai k</w>\npe pp\nr sd</w>\nmer chants</w>\nkitch ener</w>\nshi fted</w>\nli zz\nâĺħâĺħ âĺħâĺħ\nâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶ\nuto pia</w>\ntom o</w>\nou ted</w>\ncom ers</w>\nchiroprac tic</w>\nbook club</w>\ncin dy\npro hibition</w>\nse uss</w>\në¯ ¼\nthin kin</w>\nrr rr</w>\ngo fund\nt ack</w>\nom b</w>\ncatastro phic</w>\nling u\nguild ford</w>\nbo td</w>\nà¥ ĭ</w>\nplan ter</w>\n^ ^\nwin k\nkath mandu</w>\nsto ppers</w>\nsmooth ies</w>\nre efs</w>\nhin d\nbell amy</w>\nĦ ë\nwaste water</w>\nvo or</w>\nnat l</w>\n! ]</w>\nre el\ny ap</w>\nscoo by</w>\nwork space</w>\ncorin thians</w>\nbl un\nobli gation</w>\ng bbo</w>\ndy son</w>\ncra vings</w>\nell ington</w>\ndap l</w>\nwre xham</w>\nearthand clouds</w>\nuk runchat</w>\npositi oned</w>\nkal b</w>\nfour square</w>\njo ck</w>\nim pending</w>\neven ing\nath y\npro claimed</w>\nc ites</w>\nann apolis</w>\nsan i</w>\nmar th\nir l\naccom mo\nka a</w>\nfin a</w>\ny aa</w>\ndi sper\nec ar\nbha k\nwill y\nðŁĺĢ ðŁĺĢ</w>\nmcder mott</w>\nmo j\ngener ational</w>\nu said</w>\ntrain ing\nlon ely\nlo res</w>\nimpe cc\nâĢ Ĳ</w>\nbeav ers</w>\nma ki</w>\nhe b</w>\naap l</w>\nå ı\nwolver hampton</w>\nleader board</w>\nme u</w>\nc fa</w>\neaster n\nhu r</w>\ncivil war</w>\nou rage</w>\nhor ned</w>\nle high</w>\nawar ds\nevi dent</w>\ngi gab\nr ous</w>\nma del\nro byn</w>\nur gently</w>\nk ors</w>\nen as</w>\nheis man</w>\nbam bam</w>\nfab ian</w>\nf om\nevalu ating</w>\nassemb ly\nout sourcing</w>\nhun tsville</w>\nðŁĶ ª</w>\njusti fied</w>\ncashi er</w>\nsp aper\nbuc keye</w>\nanaly tical</w>\nillumin ati</w>\nau tho\no j</w>\nsha de\ngeel ong</w>\nwh ey</w>\nhe aton</w>\nterri bly</w>\nele k\nun charted</w>\nsd live</w>\nmoto cross</w>\nher mes</w>\ndar shan</w>\ndar lington</w>\ncash mere</w>\ngri pping</w>\ncilan tro</w>\npun ish</w>\n... :</w>\nðŁĴ Ħ</w>\ninst ance</w>\nder i\nlo bal</w>\nmuk her\nsp ar</w>\nthin ker</w>\nfre mont</w>\ncom piled</w>\ncolor ado\nvig ne</w>\nsm d</w>\nwhe ad</w>\nvilla ge\nle ek</w>\nformula e</w>\nta res</w>\npersist ence</w>\n?? ????</w>\nped ago\nhe z\nalzheim ers</w>\nvul ture</w>\noff ence</w>\nis great</w>\nsuff ra\nkick in</w>\nh mmmm</w>\nbroad way\nï¸ı @</w>\nart i</w>\nalli son\nendor ses</w>\nry u</w>\nlolli pop</w>\nsoy bean</w>\nkend all\ncer a</w>\ninv ade</w>\n( ðŁĵ·:</w>\nconver ter</w>\ncar pets</w>\nho bo\nfr it\npe ac\nes qu\nern an</w>\nou f</w>\nan il</w>\ndi ffer</w>\nch ing\nbre cht</w>\nsp g</w>\ndaven port</w>\nstra va</w>\nsever n</w>\nn gos</w>\nstor ians</w>\nfe te</w>\nparame dic</w>\nj hb</w>\nal amo</w>\nsne aking</w>\ngold coast</w>\nroof s</w>\nisi l</w>\ndepic ted</w>\nprojec tions</w>\nnu mb\no ss</w>\nep i</w>\nglu cose</w>\nzid ane</w>\ninfin iti</w>\níĺ Ħ</w>\nran som</w>\nton ics</w>\nfal k\ng ler</w>\nou tw\nre ss\nweek ly\nthe on</w>\nn ole</w>\nðŁĩªðŁĩ º</w>\nvol ley</w>\nsum mar\nneg ativity</w>\nsam son</w>\nye w</w>\naus votes</w>\nju l\nju dy\nf art</w>\npra yed</w>\npal ate</w>\nmulticul tural</w>\ndouble header</w>\ncycl ones</w>\npier re\nãģ ¨\nâĺ łï¸ı</w>\nrt w</w>\nconver ting</w>\nwir ral</w>\nl ari\nir relevant</w>\naustin mahone</w>\nan che</w>\nya an</w>\nsd f</w>\n$ .</w>\nexplo ding</w>\nulti mate\nprof ici\ngofund me</w>\ncell ence</w>\nep stein</w>\nbul lied</w>\nsep tic</w>\nà® ¤</w>\nlu mber</w>\ncu ff\nvsco cam</w>\npl or\nà¸ ¥\nse ok\nro to\nvenezu elan</w>\nsor ta</w>\nspir ited</w>\ndaniel padilla</w>\nteam sisd</w>\nradio active</w>\nicelan dic</w>\nðŁĴ ¤\nver e</w>\naccommo date</w>\nshi pp\not ter\nol ina</w>\ne go\nsu la\nsan antonio</w>\nde as</w>\nsimil arities</w>\nâļ ¾</w>\ny om\nbro ward</w>\nå °\ncan cun</w>\nveri fy</w>\non te</w>\ncandle light</w>\nìł ķ\ninf ants</w>\naz am</w>\nðŁĺ °</w>\nle ven</w>\nun stable</w>\nbloom ington</w>\nx ford</w>\ncon tour</w>\ny p</w>\ninnov ator</w>\nhistor ies</w>\npo y</w>\nlolo lol</w>\nex pires</w>\ncat alo\nbill boards</w>\nan ab\nel ic\nnovasco tia</w>\nfa ire\nìĿ ´</w>\nrock well</w>\ngr ille</w>\naz tec</w>\njoh or</w>\nur struly\nfi ren\ndun lop</w>\nid le</w>\nport man</w>\njo es</w>\ntx hsfb</w>\nhol m\ncham ele\nunder world</w>\nlo ss\nti em\ntherap ists</w>\npast ure</w>\npa ste\ning now</w>\nvul can</w>\nra gon</w>\nlar kin</w>\no shi</w>\nho co</w>\nchild hood\numb rel\nsuccess or</w>\nkath y\niz en</w>\n° ï¸ı</w>\nshare holders</w>\nol ga</w>\nai b</w>\nhe ap</w>\nfl aming</w>\nro u</w>\nair tel</w>\nrat t</w>\nz ane</w>\nvo w</w>\nthor ough</w>\nsn ag\npar th</w>\nun conscious</w>\nve y\nnew release</w>\ngh ee</w>\ncroati an</w>\nfacilit ating</w>\nswan son</w>\nastor ia</w>\nto logy</w>\nmaster y</w>\nðŁ¤ ĳ</w>\nbil bao</w>\ntrou pe</w>\nthe ori\nchey enne</w>\nro tt\nshore line</w>\ngra sso</w>\nmaster chef</w>\n+ )</w>\nvi x</w>\nellen show</w>\nas g</w>\nan ak\nku ya</w>\nsafar ilive</w>\ndebu ting</w>\nblu m</w>\nlist ener</w>\nv ins</w>\nbook shelf</w>\nsmart cities</w>\nmakeyourown lane</w>\n; ;\nðŁĲ ¯\nri zz\non ward</w>\nbull dog\nbear ish</w>\nvir uses</w>\nfri gh\nlin den</w>\nwe iser</w>\nsn t</w>\ngon a</w>\ndre sden</w>\nfl anders</w>\ncu k</w>\nwheel ing</w>\nba u</w>\natu esday</w>\nsurf ers</w>\nswi ft\nmc call</w>\narbitr ation</w>\naw d</w>\nmon c\nb ine</w>\nat x\nre fr\nmi ro\npo sey</w>\nn are\nrit ter</w>\nâģ ¦</w>\nplay book</w>\nblow out</w>\nsports manship</w>\ns oooooo</w>\nmalay alam</w>\ngri ms\nbur bank</w>\ninfin ity\nsar gent</w>\noit nb</w>\njoseph ine</w>\nski pping</w>\npar kin\nexcur sion</w>\nsemin ars</w>\njo har</w>\npar tridge</w>\npost game</w>\nll ll\nblan che</w>\ntemp ting</w>\nm na</w>\nlu ka</w>\nis ers</w>\nto ffee</w>\nbar ron</w>\nhe mmings</w>\nsa e</w>\ngo hawks</w>\ncu pid</w>\nli mbs</w>\ncon se\nun common</w>\nz ada</w>\nhead shot</w>\nso ils</w>\npione er\nmam ma</w>\nsem itic</w>\npan dey</w>\njamiedor nan</w>\nspl its</w>\nvel a</w>\nson i\nra ff\nt mobile</w>\nâŀ ĸ</w>\npra wns</w>\nlit er</w>\nenjo yment</w>\negg plant</w>\ntu b\ncultur al\nus ic\nsuspici on</w>\nsy cam\nsumm ed</w>\nma du\nho ck\nup wards</w>\neye ing</w>\nri ve</w>\nassas sins</w>\nâĤ ¬\nout fy</w>\nchi ves</w>\nt ner</w>\nla is</w>\npor ridge</w>\nsad dest</w>\nw cc</w>\nvick i</w>\nsna ils</w>\nbiz italk</w>\nmill an\nðŁĮ į\nsam oa</w>\nj ing\nmi key\ngu j\nchel ms\neli gibility</w>\narma da</w>\nthro p</w>\nsurger ies</w>\nãĤ ¿\nmo hawk</w>\nex its</w>\nme m</w>\nis lington</w>\nc me</w>\nland fill</w>\nkait lyn</w>\nðŁİ ¼\ncombin ations</w>\ntomorrow land</w>\nver b</w>\ncor a</w>\npre cisely</w>\nna om\nðŁĨ ķ</w>\nshr ink</w>\nsof tly</w>\nmerce de\nmand el\npoo dle</w>\nball erina</w>\nsop h</w>\njux ta\ny at</w>\nary an</w>\nhesit ate</w>\nlo wered</w>\ngu lar</w>\ndungeon sand\nron an</w>\nmy ri\nsp f</w>\nmen opau\ngra sp</w>\npa thi\nfe asi\nfla w</w>\nshi story</w>\nste ward\ngg le\nfay re</w>\ncli que</w>\ncredi bility</w>\nyo g\nsec tion\nmu sko\nse ville</w>\nno tt</w>\ncal m\nmate o</w>\nindic ted</w>\nfi ba</w>\nby l</w>\nlin o</w>\nu kin\n!! #</w>\nenig ma</w>\nsiri us</w>\nbu sc\nðŁį Ĭ\nmac kerel</w>\npsal ms</w>\na at</w>\ntomorrow spaper\nðŁĺ ĸ</w>\np fc</w>\n........ ...</w>\nshre k</w>\nmul let</w>\no sh</w>\ndanger ously</w>\nimmen sely</w>\nam ur\nðŁį Ĥ\npro por\nsy a</w>\nlondon marathon</w>\nabo ve\nobli gatory</w>\npro v</w>\nra cha</w>\nalex is\npri mary\nsh h</w>\nether net</w>\nd stv</w>\ncou gar\nun lucky</w>\nni l</w>\nsteak house</w>\nmel a</w>\nfc bayern</w>\ncause way</w>\nca therine\nfluore scent</w>\nnx t\nto kyo\nau sp\nreleg ation</w>\nqui zz\nshored itch</w>\nproud tobe\npromo s</w>\ninter acting</w>\nhome brew</w>\nda esh</w>\nw pg</w>\nstead ily</w>\nprovin ces</w>\nbal lots</w>\ni ah</w>\nal to\n< <<</w>\nyou u</w>\nri ley\nprefe rence</w>\ntra verse</w>\nincen se</w>\nam munition</w>\nho dges</w>\n# @</w>\nhail state</w>\ntart an</w>\nwitch craft</w>\nvent ilation</w>\nliber tarian</w>\n! âĢ¦</w>\now es</w>\n% !</w>\nong chang</w>\nbru shing</w>\nle ic\nfi ber\nunder attack</w>\ndown load\nex pir\nhy o</w>\npompe y</w>\nmc bride</w>\ny ag\nstre e\ncom bat\nten ding</w>\nai ra\ngug gen\nab ra</w>\nin na</w>\nfli ps</w>\naw al</w>\nm ach</w>\ndol lar\ninspir ations</w>\nz um</w>\no du\nit ty</w>\nvideo game</w>\naqu aman</w>\nhar u</w>\nbel fast\nje b</w>\nbut ch</w>\nus gs</w>\ncalcu lus</w>\ngo yal</w>\nmor gen</w>\nx finity</w>\nstand up\ncontrac ep\nsab re</w>\nna be\nin secure</w>\ngener ously</w>\nepit ome</w>\nl w</w>\nt ca</w>\nnarr atives</w>\ndon nell</w>\npand as</w>\nber gh</w>\ntu t</w>\nker al\nfel icity</w>\nbr ampton</w>\nquinte t</w>\nnom ore\nðŁĶ ĳ</w>\nlo i</w>\nalham dulil\nðŁĶ¥ ðŁĶĹ</w>\nston er\nshaw l</w>\nclin ical\nbren dan\ngon e\nfla wed</w>\ntri ppy</w>\nj g</w>\nal location</w>\npo aching</w>\nve vo</w>\nmo cks</w>\nlef tist</w>\nbon uses</w>\ncondem ned</w>\nabil ity\nst ating</w>\nmicrobi ome</w>\nbio logist</w>\nfor you</w>\nwahl berg</w>\nss or</w>\nift ar</w>\nw ul\nÑĦ Ð¾ÑĤ\npom er\nme me\nver te\ntre ll</w>\ntra it</w>\nin let</w>\nhormon es</w>\ndeliber ately</w>\nvill ar\nbattle ship</w>\np bl</w>\ntw enti\nho kies</w>\ndal ail\nsay a</w>\nmay fair</w>\nhan s\ndie ts</w>\nâľ¨ âľ¨\nod in</w>\nhot spur</w>\npap i</w>\nk ana</w>\nk amp\nfin na</w>\nflo tus</w>\nti ans</w>\nunic orns</w>\ntribe ca</w>\nchang ers</w>\nfore ground</w>\nout a</w>\ninv aders</w>\ngett ys\ntomorrowspaper stoday</w>\nmac millan</w>\nhand written</w>\nw fp</w>\nu de</w>\nstate of\nbase d\nâĺģ ï¸ı</w>\ncas m</w>\npsy ched</w>\nhistor ians</w>\nfol d\nd da</w>\nag grav\np ans</w>\ngreen way</w>\nau sv\nðŁĺ ¶</w>\nshradd ha\ninde x\nbe sti\nzim mer</w>\nt ness</w>\neye shadow</w>\not te</w>\ngo ts</w>\ndistribu ting</w>\npro min\nyo l</w>\nace a</w>\ntram rahim</w>\nhoo per</w>\nsupre me\njam min</w>\nintu itive</w>\nquali fications</w>\nsli m\nsid di\njay ne</w>\ntri pping</w>\ng tx</w>\npun s</w>\ne manuel</w>\nom g\nmid summer</w>\nin to\nsuccul ent</w>\nri en</w>\nnew mexico</w>\no or</w>\nhoo king</w>\nin f</w>\nðŁ¤ Ŀ</w>\nflir ting</w>\nna hi</w>\ng friend</w>\nt ps</w>\nhel ix</w>\nz s</w>\non ie</w>\nct f</w>\nkri s\nirresi stible</w>\nfla p</w>\nðŁĳıðŁı» ðŁĳıðŁı»\nus wnt</w>\nru d\nram ps</w>\npin oy</w>\not w</w>\nlol z</w>\nlow ering</w>\nfavor ite\nt mc</w>\nphra ses</w>\nher mi\naver aging</w>\nem br\nben o\nestu ary</w>\nsle eve\nribb ons</w>\nta sh\nà¸ ¹</w>\nx f</w>\naw gs</w>\nsun ited</w>\nbrew eries</w>\nanir ud\npun ches</w>\nol die</w>\nip ads</w>\nwi fey</w>\nland lords</w>\nd ji\ngun ner</w>\níķ ´</w>\ntex an\nex op\ncas sandra</w>\ns off\nðŁļ «</w>\nigh ton</w>\nbak ers\nawareness week</w>\nv all</w>\near p</w>\nbts bbmas</w>\napologi zes</w>\nâļĵ ï¸ı</w>\nwas ps</w>\nstates man</w>\nsnat ch</w>\nwatch dog</w>\nra fi\nafter party</w>\nspi ke\nj er</w>\nperi ph\nr nc</w>\nmu ll</w>\nle en\nshi es</w>\nli eu</w>\nurstruly mahesh</w>\nmer ton</w>\nde sai</w>\nshi f\nðŁĮ ±\npe dic\ngos ling</w>\narrang ing</w>\nww g</w>\ngen y</w>\nyou uu</w>\nnetfli x\ne ttes</w>\nk wi\nbernar dino</w>\nam iga</w>\nØ ¨</w>\nkashmir i</w>\nt ings</w>\nemer itus</w>\nde cat\nab domin\ndc i</w>\npha ses</w>\nd jan\nbe am\nop ry</w>\ni shed</w>\nthe ellenshow</w>\nthe st</w>\nhabit ats</w>\nto ons</w>\nmclau ghlin</w>\nri pper</w>\nmicro biology</w>\ntal aga</w>\nclu eless</w>\nss u</w>\ncro che\nbro mance</w>\nlonge vity</w>\nzagre b</w>\nprev ented</w>\ntra ve\nspo ilt</w>\ndarry l</w>\nmigra ine</w>\nal cat\ndd dd</w>\nvi v</w>\nser pent</w>\nmat tel</w>\njam a</w>\ncon quest</w>\nî Ħ\nsam sung\npresbyter ian</w>\nket ch</w>\nfire fox</w>\nmo tif</w>\nle c</w>\ncho pping</w>\ncher no\nj ann\nðŁĲ °\npro lon\nwake up</w>\nconver gence</w>\nmersey side</w>\nheart broken</w>\nlo oming</w>\nhal lucin\nmai ze</w>\ncommun ism</w>\nmo h</w>\ntwitter storians</w>\nserge y</w>\nres eller</w>\nfavor able</w>\ned gy</w>\nre iter\nmal aga</w>\nlive me</w>\nka hn</w>\npul sion</w>\nbig g</w>\nkim kardashian</w>\nati o</w>\ntyr anny</w>\nru ption</w>\nq ant\npro ven\nby z\npu shaw\nkri stin\ne er\ntar dis</w>\nri z</w>\nawak en</w>\nmi ko</w>\nun documented</w>\npath finder</w>\nindirec t</w>\nresemb les</w>\nh ler</w>\nconce aled</w>\nscand al\nre im\nd nb</w>\ncr itters</w>\nattend ant</w>\napprentice ships</w>\naa u</w>\nscre amed</w>\nl su\nfa h</w>\nhar bour\ned d</w>\nbat sman</w>\nli ss</w>\nmi sha</w>\nspani el</w>\nit f</w>\nadvan cement</w>\nfa c</w>\nclose up</w>\ncecil ia</w>\nmedi c</w>\nnarcis si\nlav ish</w>\ngi ac\nma ys</w>\nle it\nwine wednesday</w>\npushaw ard\nlet to</w>\ncurren ts</w>\nbug atti</w>\nout ine</w>\nw j</w>\nun do</w>\nler osis</w>\ndevo tional</w>\nðŁĳ «</w>\non na</w>\nfais al</w>\nsa una</w>\nhimach al</w>\nam ii\nà® ®</w>\ndi zzy</w>\nscreen writing</w>\nph x\nsp n\nick i</w>\nag irl</w>\nfi shes</w>\nwb z</w>\npi m</w>\nbo ar</w>\nac id\n! ..</w>\nrocke feller</w>\nn ga</w>\ndra stically</w>\nsimpli fy</w>\ndru mming</w>\nautum nal</w>\ngur mee\nlor de</w>\njo ann\ngive up</w>\nb our</w>\nam ura</w>\nder land</w>\nsim pler</w>\nwat son\ntri dent</w>\nconcor dia</w>\nbel lum</w>\nbre k\ndum plings</w>\nvi on</w>\ndungeonsand dragons</w>\nsp ri\nascen sion</w>\nwil datlantic\nu st\nrob ins</w>\nlegi on\ninsi st</w>\njar o</w>\ngue ss\nso b</w>\nbigh it</w>\npool side</w>\nnegoti ating</w>\nmc gill</w>\nbil d</w>\ntechn icians</w>\nmiti gation</w>\najay devgn</w>\nb to</w>\nant en\ncosmo politan</w>\nðŁĺĬðŁĺĬ ðŁĺĬðŁĺĬ\npatri oti\ntemp er</w>\npromen ade</w>\nnav ajo</w>\nnam m</w>\nwrink les</w>\ndc fc</w>\nle ach</w>\nbru nette</w>\nr f\ncout inho</w>\nal ti\ntradition ally</w>\nop tome\nna z</w>\naccord ingly</w>\nrec ard</w>\nde ets</w>\nsw ell\npo sure</w>\nwhit ening</w>\nstrang er\nilli on\nhere ford</w>\nu wu</w>\nro bber</w>\ncotsw olds</w>\ncl en\ngor ge\nnam aste</w>\nre lish</w>\ngri ff</w>\nadren aline</w>\nbla sio</w>\nval e\nê ²\ntoler ate</w>\nrail minindia</w>\njen sen\nho ven</w>\nel lu\nob sole\neisen hower</w>\nunidenti fied</w>\nthan niversary</w>\nbody guard</w>\nØ ¯</w>\ni dge</w>\nsch al\nstock port</w>\nsn i</w>\nre taining</w>\npo po</w>\npix ie</w>\noli thic</w>\nki er</w>\nha jj</w>\nsa z</w>\ncor bin</w>\n!!!! !!!!!!</w>\nv it</w>\nme gat\nde h</w>\ncircu it\naf fleck</w>\ntheore tical</w>\nhope less</w>\nu ab</w>\nslu mp</w>\nb ice\njam med</w>\nlet stalk</w>\ncan i\nside ways</w>\nlabyrin th</w>\nre fs</w>\nha hn</w>\njare d\nðŁį ¹</w>\njam bo\nph yl\nenhan cement</w>\nc tr\nful lest</w>\nse ye</w>\ndo ba</w>\ncho ic\nyo s</w>\ncb j</w>\nandr Ã©</w>\nre watch</w>\npri ma\ndoctr ine</w>\nfor gets</w>\nu hm</w>\nar ound\nu le</w>\nart lovers</w>\nshi raz</w>\nhar th</w>\nex tor\nÅ ¡\nunexpec tedly</w>\neli us</w>\ny x</w>\nem my\nse ac\nðŁĳĩðŁĳĩ ðŁĳĩ</w>\ncorrec ted</w>\ncom bu\nwom anc\ncou gh\nwhat son\npubli shes</w>\ndivers ity\nback bone</w>\nlock down</w>\nmesmeri zing</w>\nnor te</w>\nma b</w>\ndesig ner\ní ģ\nra gh\nmole cules</w>\nget outside</w>\nthe beatles</w>\nsemicon duc\nnach o</w>\nlun es</w>\nham mers</w>\nsul tan\no on\nfe ren\natt ach</w>\nar qu\nuttarak hand</w>\ns ash</w>\n; -\ntre ad</w>\ni ko\nar thur\nscandin avian</w>\nr ation</w>\nga el</w>\ncharge able</w>\nfish y</w>\nv ma</w>\nhand bags</w>\nchar a</w>\nay ne</w>\nde fam\nsett lers</w>\nqad ri</w>\npal ais</w>\nin wx</w>\napocaly ptic</w>\npoo ja</w>\na es</w>\nat ories</w>\nproof ing</w>\nn lp</w>\nts la</w>\nv ina</w>\nli do</w>\ndee phouse</w>\ninformat ics</w>\nv v</w>\npp ings</w>\ndi ss</w>\nÃ ¯\nuhur u</w>\nst ony</w>\nbetra yed</w>\nb aff\nmy ra</w>\nas pen\nallow ance</w>\ntam ara</w>\nci f</w>\ncor bett</w>\nser ge</w>\ndi go</w>\nambi gu\npain ters</w>\np cr</w>\np ca</w>\nnom s</w>\nlo ft\nve e\nopend ata</w>\nðŁĲ ±\nalex andre</w>\nidenti fies</w>\nfantasy football</w>\nre production</w>\nbrom ley</w>\nware agle</w>\nmm er\np ss\ncu es</w>\nay at</w>\nhut chinson</w>\nsar ac\njack man</w>\nira h</w>\nap ink</w>\ncol s</w>\naussi es</w>\nex ecs</w>\nday ton\nðŁĻ Ĩ</w>\nim v\nhar am\nchuck le</w>\nauthent icity</w>\nar do\nincub ator</w>\nà¸ ª</w>\nphoto shopped</w>\nembrac ed</w>\nfight for</w>\ngor man</w>\nzz zz\nschol astic</w>\ncri sps</w>\nte apo\nmid night\nga ine\ncol lier</w>\ns ate</w>\nde tte</w>\nå Ń\nimag ine\ni ff\ntw ili\ni fication</w>\nteat ro</w>\nnor ma</w>\nes ur\nemergen cies</w>\nrise up</w>\nr inger</w>\nhass le</w>\ncait lyn</w>\ntranqu il</w>\nvers a</w>\nse b\nover look</w>\ngin i</w>\nbo go</w>\nse re\nmay ne</w>\nhenri k</w>\ncontamin ated</w>\nrhapso dy</w>\npro portion</w>\nwildatlantic way</w>\nâģ© .</w>\norganis ers</w>\ntran e</w>\nstand ard\nsper m</w>\nlaun cher</w>\nric ci\nher ts</w>\npaper work</w>\nshowcas ed</w>\nmer yl</w>\npen a</w>\np imp\ndisa strous</w>\n^. ^</w>\nphar a\nx is</w>\nfron tal</w>\nsw irl</w>\nsp ills</w>\nswag ger</w>\nsmart watch</w>\nsizz ling</w>\nsavi our</w>\ncat ar\nbb cr</w>\nrefurbi shment</w>\ndr is</w>\ncitro en</w>\nabsor b</w>\npatrioti sm</w>\nil leg\nchro mo\nfresh ers</w>\nru s\nlim iting</w>\nef ish</w>\ndown ed</w>\nman dir</w>\nhazel nut</w>\np all\nmac on</w>\ndisappear ing</w>\nquali fies</w>\nbo on</w>\nbar racks</w>\nam ine</w>\ngen dere\nðŁļ ĺ</w>\nj es</w>\nãĥ Ń\nqu ito</w>\nmiddle weight</w>\nsch au\nquad ru\naci ones</w>\nlimit less</w>\nðŁĳĮ ðŁı½</w>\nch man</w>\nar av\nregulat ors</w>\nit up</w>\nbatter sea</w>\nmil ford</w>\ng z</w>\ntic king</w>\ngh ou\ncru shes</w>\ntu tu</w>\ndread ful</w>\nfam ine</w>\nfor change</w>\ndalail ama</w>\nðŁĴ į\nwhit aker</w>\nhash mi</w>\nh us</w>\nvo d</w>\nbet te</w>\naa ah</w>\niso o</w>\nðŁ¥ Ī</w>\nha ar</w>\nla ine</w>\nb v</w>\nall day</w>\nspr out</w>\nindie games</w>\nfree bie</w>\ngree ks</w>\nbut ler\nill in</w>\nha al</w>\nware ness</w>\nsi ma</w>\npublic health</w>\ngam a</w>\nwa a</w>\noun g\ngoo oo\nokin awa</w>\noff enders</w>\nim pose</w>\nho c</w>\nyoung ster</w>\nstory teller</w>\nsc ap\nfigh ter\n+ ,</w>\nwhit es\nmusic monday</w>\nre za</w>\ngo ducks</w>\nbri a</w>\nmi um</w>\ncas per</w>\ncru mbs</w>\na ad</w>\nmarti alarts</w>\nch p</w>\nri gged</w>\ntn g</w>\nharve sted</w>\nsa k</w>\ndo jo</w>\nmill wall</w>\nb nw</w>\noc d</w>\nhistor yof\nt mr</w>\nsi rens</w>\nfan ci\ncaregi vers</w>\nvir a</w>\nson i</w>\nrecur ring</w>\nacknowle dged</w>\nðŁı Ł\noph ile</w>\nbu cky</w>\nstre ssing</w>\nroo k</w>\ndi gger</w>\nvi val\nsan do\nfle et\nsi ers</w>\nsel caday</w>\nrefre shed</w>\nanti fa</w>\na que\npo lo\ndisappear ance</w>\nde mb\nâĮļ ï¸ı</w>\nren ted</w>\nber ger\ng mb\ncu la</w>\nss al</w>\ngoo dy</w>\nu hh</w>\nmarcel o</w>\nw anna\nsoft ware\nshop small</w>\nturt le\ntom as\nfri sco</w>\nðŁĺį ðŁĴķ</w>\njim enez</w>\nc su\nday z</w>\nan do\nwyn ne</w>\nchoreo grapher</w>\ncerv ical</w>\ntrail blazers</w>\ned g\nzend aya</w>\ntravel blog</w>\nel s\nwhole some</w>\nco g</w>\nlab out\nar ney</w>\ndel le</w>\nsu isse</w>\nma si\nine se</w>\nom be</w>\nfi ddle</w>\nre claim</w>\npa u</w>\nwat cher</w>\nsla in</w>\nber ty</w>\nopti mum</w>\nel ites</w>\nmin is</w>\ntur key\npatro ls</w>\nger ard\nau reli\nwild ly</w>\nwal tz</w>\nbr gy</w>\nw ob\ncre st\n+ ++</w>\nve z\nfro sted</w>\ndavi do</w>\nthe x\nparam edics</w>\np into</w>\nhan k\ndu pont</w>\nur g</w>\nfo stering</w>\nmicro poetry</w>\nspec tre</w>\n---- ></w>\nne uro</w>\nfri da</w>\nmusic al\ngalve ston</w>\ne ffic\nsc ape\npal azzo</w>\nth all</w>\npro visional</w>\np js</w>\nau re\nðŁĶ ľ</w>\nmam amoo</w>\nkit ties</w>\ncre e</w>\nwa k</w>\nlo ool</w>\nlu pus</w>\ncn blue</w>\nÃ º</w>\nðŁİ ¬\nrac ed</w>\ntro se</w>\nom as</w>\nstri de</w>\nco ors</w>\nâ¤ µï¸ı</w>\nin comparable</w>\ncy ril</w>\nbroad er</w>\narec lipse</w>\nðŁį Ķ</w>\ninter val</w>\nti ru\nco working</w>\nw aco</w>\na ham\na bee</w>\nflouri sh</w>\nthe times</w>\nol ini</w>\nkick boxing</w>\nlu cer\nat la\nas un\ncasser ole</w>\nmi aw</w>\nlobb ying</w>\njan ice</w>\ncir que</w>\nre flex</w>\nle ary</w>\nsanat omy</w>\ntem pest</w>\nse mb\nmur dering</w>\nus av\nro bo</w>\non et</w>\np cc</w>\nnati ves</w>\nlife of\nsa ha\nruth less</w>\nrel ates</w>\nappeti zer</w>\npye ongchang</w>\nnor d</w>\ner u\na thing</w>\nug ly\npl ying</w>\nbran ce\norgan ise</w>\nkend ra</w>\ndat o</w>\nchees es</w>\npar ma</w>\nburn out</w>\na stra</w>\npre toria</w>\nadjust ment</w>\nuk u</w>\nsl o</w>\nli ken\nfav ors</w>\ncli ve\nbe ets</w>\nsnow donia</w>\ngo tv</w>\nsy n</w>\nopen house</w>\npan i</w>\nportra yed</w>\nsl ated</w>\nme cca</w>\nren al</w>\nsupportsmall streamers</w>\nstaf fs</w>\nda o</w>\nbi ker\nvik tor</w>\ntit us</w>\nadmi red</w>\nðŁĵ ±\nhurric an\nhe ats</w>\ngl ory\nphoto genic</w>\nmer i</w>\nde por\nburn ham</w>\nor angu\ndj ing</w>\nimpre ssionism</w>\nign ition</w>\nca i</w>\nw ynn</w>\nde pe\ncove ted</w>\ncolla gen</w>\nsau s</w>\nor nam\nadministr ators</w>\nss on\nnh politics</w>\nhahahaha hahahaha\naspir ations</w>\nr gb</w>\nswol len</w>\nso we\nsc r</w>\ndiver gent</w>\nhou ghton</w>\nhan oi</w>\nd ory</w>\nni ki</w>\nland ry</w>\nb cci</w>\nðŁĳĮ ðŁĳĮ\nis mail</w>\ntri pod</w>\nher d\nbhat t</w>\ndress age</w>\ntab by</w>\ningu ish</w>\nhur on</w>\nà³ į</w>\nÃ ł\nto das</w>\nevangel ical</w>\nchor ds</w>\nst john\nslo ppy</w>\nmarty r\nface book\nali ght</w>\nsen sei</w>\nkath niel</w>\nr ites</w>\nzi one</w>\nu o</w>\nrevel ations</w>\nweight lifting</w>\npan o</w>\nnc wx</w>\nac ton\nà® ķ</w>\nØ ²\nsom a</w>\nà¸ Ĺ</w>\nrespec ting</w>\nmar che</w>\nfore man</w>\nbe tty\nki k</w>\nshi bu\npo on</w>\nargy le</w>\nk swx</w>\net z\nmar bella</w>\nbrac kets</w>\nstand by</w>\nfire side</w>\ndefi ance</w>\nv ex\nbritanni a</w>\nin habit\nappo int</w>\npiyu sh\nle ash</w>\nsci ento\nfla sk</w>\nsen na</w>\n> :</w>\nat roc\nsand erson</w>\nid lib</w>\ndhan ush</w>\nðŁĺ Ļ\nen thr\nhit ch</w>\nde dly</w>\nal ley\ndor k</w>\nmon do</w>\ncudd ly</w>\nmis sin</w>\nye sss</w>\nnight ing\nj pn</w>\nw ary</w>\nump ire</w>\nma z</w>\nê ³\nbab s</w>\nĭ ãģ\nstan ford\nposse ssed</w>\nexce eded</w>\nðŁĶ ¶</w>\nwall art</w>\ntra p\nj il\nhi bis\nsp ying</w>\nscri be</w>\nkhali l</w>\ntrans lator</w>\nlu mb\ndi zed</w>\nch c</w>\nsuper vision</w>\nshut ter\nja g</w>\n_ *</w>\nyester days</w>\nms f</w>\nhi hi</w>\ngonz aga</w>\ngille spie</w>\nvive k</w>\nec static</w>\nthis morning</w>\nch us</w>\ned es</w>\nston ed</w>\nbe es\nðŁĩ¹ ðŁĩ\ntur in</w>\nho ver\nat rics</w>\nster n\nsam heughan</w>\nauti sm\nmi ya</w>\neye witness</w>\nwrit ings</w>\ntravel tips</w>\nchut ney</w>\npx rtg</w>\nkeny ans</w>\nmy stic\nk rit\n/ $</w>\nred head</w>\nworld ly</w>\nam us</w>\nop la\nle ve\ngab bana</w>\nse en\no clock</w>\ngang a</w>\nkeen an</w>\nsc ent\nol dies</w>\ngo green</w>\ncorner stone</w>\ncomp ly</w>\ncon cours</w>\nðŁİ¶ ðŁİ¶</w>\nha an</w>\ncon fis\naw son</w>\ncle op\nî Ģ\nsu zu\nsau tÃ©\nal gar\nsubscri ber</w>\neste emed</w>\nãĤ¤ ãĥ\nworth while</w>\nmel rose</w>\nflo ck\nbri ghtly</w>\nviol inist</w>\np ere</w>\nsli pping</w>\nand co</w>\nsi gh\nha van</w>\ncu lo\nm sa</w>\nfibro sis</w>\nmatil da</w>\nra fting</w>\naw ard\në ª\nmm mm\nge aux\nste iner</w>\nsin n</w>\nhelp ers</w>\nbeet les</w>\nai mee</w>\ntai wan\npistachi o</w>\nmac beth</w>\nm zan\ndescend ants</w>\non sale</w>\nin r</w>\nil m</w>\ngrou se</w>\nsa ig\nmo w</w>\nbi gre\nadjust ments</w>\ntu la</w>\nmathe w</w>\ntransl ates</w>\nmu h\nbol lah</w>\nðŁĴĽ ðŁĴĻ</w>\namo res</w>\nab outs</w>\nbomb shell</w>\nbla ster</w>\nx avi\ns ns</w>\nk roger</w>\nga ther\nerad ic\ndaf t</w>\nchem o</w>\nben ches</w>\nðŁĩ© ðŁĩ\nut v</w>\nour a</w>\nn ko\ngator ade</w>\nbiaf ra</w>\nok state</w>\nim danielpadilla</w>\ndom ains</w>\nopen ingday</w>\nkid do</w>\ndo i</w>\nric e\nday care</w>\nmac millan\nba thurst</w>\ncheer leading</w>\nðŁ¦ ģ\ncash back</w>\nk won</w>\nhob bies</w>\nexem pl\nries ling</w>\nâļ ª</w>\nag les\nny s\nevery thing\nnav is</w>\nad di</w>\nmagne sium</w>\nfaceli ft</w>\nark ham</w>\ngrand es</w>\nextre mist</w>\ndon at\nvit ality</w>\npump kin\nbe tta</w>\nsl td</w>\narti san\nli by\npe aked</w>\nah hhhh</w>\nmary am</w>\nassi m</w>\nun sc</w>\nment e</w>\nal aya</w>\nlow ers</w>\nar as</w>\ngri ev\nle ip\ngr ati\ncri ses</w>\nspr ints</w>\nexe cute</w>\nw to</w>\nms d</w>\nmag ical\nre viewer</w>\nspark les</w>\njuke box</w>\nðŁĺĤ âĿ¤ï¸ı</w>\npay back</w>\nlicen ses</w>\ndun kin</w>\nbel t\nlake wood</w>\nh ateful</w>\nbud gets</w>\nrev amped</w>\nph erson</w>\nky iv</w>\nwent worth</w>\nro sen</w>\ncru ise\ngi ggle</w>\ndef star</w>\nassassin scre\nym outh</w>\nwin kle</w>\nw fc</w>\nband wagon</w>\nb kk</w>\nw iring</w>\nkear ney</w>\nsouth side</w>\npe tit\n! ðŁĺį</w>\nnor dic\nmir za</w>\nmu gabe</w>\nv l</w>\nscon es</w>\nk tv\nsand al\ndu c</w>\nm alls</w>\nðŁĴŀ ðŁĴŀ</w>\nit c</w>\nal ay</w>\nim pair\nun rest</w>\nflo ss</w>\nc Ã©\nab ou\nvar ying</w>\nmuse o</w>\nser ver\ndi ya</w>\nhibis cus</w>\nero y</w>\nmer ritt</w>\nfin dom</w>\nf pp</w>\nun usually</w>\ngo tt</w>\nconting ent</w>\nali aa</w>\nball on</w>\njo l</w>\nhi ked</w>\nzy me</w>\nay r</w>\nag n\nga z</w>\nperio dic</w>\nspar ty</w>\npracti sing</w>\nlin ton</w>\ntal is\ncy pri\nwomanin biz</w>\nradio disney</w>\nðŁĮ ¼\njump ers</w>\nendo cr\nðŁļ¨ ðŁļ¨\nand on</w>\nshar apo\nmi er</w>\nma sonic</w>\nfac tories</w>\nvi en\nbb ers</w>\nìĽ Ĳ</w>\nhol d\nke bab</w>\nbe ak</w>\napproach ed</w>\nac milan</w>\nmun ro</w>\nko sher</w>\nexcell ency</w>\nnegoti ation</w>\nwalt disneyworld</w>\ncr ouch</w>\nte asing</w>\nsuppre ssion</w>\nen ya</w>\nb ce</w>\ntransformation tuesday</w>\ncal lie</w>\nvis was\np gat\nic ted</w>\nend ings</w>\nesc u\nrecru ited</w>\nit fc</w>\ncollabor ations</w>\ng ino</w>\nsnu ck</w>\nausch witz</w>\ni fc</w>\nx ii</w>\nke sha</w>\nger vais</w>\nclo ak</w>\nx l\nsa ad</w>\nprob ation</w>\npre cau\nmac in\nanasta si\nle k</w>\ne azy</w>\ndaysof code</w>\nmariah carey</w>\nyo g</w>\nstit ched</w>\nboy friends</w>\nsh ar</w>\nph ile</w>\nag u</w>\ntwin kle</w>\nphi shing</w>\nweek ender</w>\nic ton</w>\ngurmee tramrahim</w>\nal ton</w>\nl eness</w>\nall an\npen ultimate</w>\nkry stal</w>\ngo u</w>\nlan de</w>\ndis mant\nab using</w>\nnor se</w>\npat erson</w>\ned mun\nap an</w>\nxi umin</w>\nsk el\ncat walk</w>\nre act\nwal led</w>\nt angle</w>\nbr yn\nve to</w>\nsuper moon</w>\ncas ablanc\nappreci ates</w>\nski d\nbo th\ncatal ina</w>\nele ague</w>\ncyber monday</w>\ncau tious</w>\nðŁ¤ ĵ\nnov o</w>\nhamp ton\nha ye\njose f</w>\nvar an\nlo bos</w>\nroano ke</w>\norph ans</w>\ntt in</w>\nsqu ads</w>\nishqba aaz</w>\nblack panther</w>\ne tu\nk sh</w>\ncru mble</w>\ncess na</w>\nreli eved</w>\nscul ly</w>\npollin ators</w>\nexplore canada</w>\nki es\nkam loops</w>\nkir an</w>\npri mal</w>\nsett lements</w>\nhot spot</w>\nbrain storming</w>\nce dric</w>\nbi ennial</w>\nsh ant\nâĻ¡âĻ¡ âĻ¡</w>\ndo on</w>\nhear n</w>\nwalk way</w>\nfe m</w>\nve al</w>\ndeport ation</w>\ntox ins</w>\nelimin ating</w>\ndescen ding</w>\nby the\nbla sphe\nha sta</w>\ncomple ment</w>\nas cent</w>\nri ga</w>\nprovo st</w>\nâĸ ª</w>\nwee ping</w>\nanti semitism</w>\nemploye e\nunearth ed</w>\npin o</w>\nnatali e\nbla d</w>\nang ola</w>\nlock heed</w>\nin ian</w>\nag r\nni ster</w>\nim pala</w>\nm ke</w>\nfan atic</w>\nâĺħ âĺħ</w>\nðŁĳ ¸</w>\nlu ch\nsimpli fied</w>\ngall ery\neconom ic\ncy borg</w>\ncon i</w>\nsel ma</w>\nin ception</w>\nko ala</w>\ndv ds</w>\ncre sted</w>\nm mor\nvisi ble\nn sd</w>\nðŁĻĮ ðŁı½\nw under\nrefriger ator</w>\nre opening</w>\ne era</w>\ncarou sel</w>\nas p</w>\nballi stic</w>\nvictor y\nmo tive</w>\ntre y\nsharapo va</w>\nsi i</w>\nmon ter\nint end</w>\nwest chester</w>\nsp e</w>\ncy mb\nvi dal</w>\nll ama</w>\nuni v\nfin er</w>\ncrafts manship</w>\njazz fest</w>\nb ch</w>\nag gio</w>\nn cc</w>\nlamb da</w>\ntranqu ility</w>\ncis co\nba den</w>\nso bbing</w>\nof i\ngo ta</w>\nru mored</w>\nwar med</w>\nore an</w>\nac ton</w>\nmar ci\ngh ani</w>\nâľ ĵ</w>\nas sorted</w>\npembro ke\npen elope</w>\nda f</w>\nat ty</w>\naim o</w>\npretz el</w>\ncarni val\nthan os</w>\nko chi</w>\nmer sal</w>\nham radio</w>\nar twit</w>\ncas c\nguer rilla</w>\nkush ner</w>\nk app\nal ise</w>\ntodd lers</w>\nsteward ship</w>\no tti</w>\nter ri</w>\ntem pe</w>\nrest less</w>\nvit o</w>\nzay ed</w>\nrsp b</w>\npi on\nhi ppo</w>\nhaw thorne</w>\nin as\nam ily</w>\nnut cracker</w>\nlo p\nd ali\ntro pic</w>\nðŁ¤ ł</w>\nul o</w>\njare dle\npy rene\npale o\nusa ir\nm ould</w>\nit ated</w>\ngene tically</w>\nbiom ass</w>\nðŁĩ³ðŁĩ ±</w>\ndo dd</w>\npractic ed</w>\nmonarch s</w>\nun manned</w>\nm buhari</w>\nam al</w>\nphoto gra\nko ol\nbren don</w>\nju ices</w>\ncu re\nworld bank</w>\npoin ters</w>\nðŁĴ Ŀ\ntur f\nle ds</w>\nbor ussia</w>\nbapti sm</w>\nwarwick shire</w>\nmoun ts</w>\ngay o</w>\nbe gg\nco pied</w>\nasi ans</w>\nk g\nmoder nist</w>\ngi d\nfront man</w>\nconcentr ated</w>\ny t\nsc avenger</w>\niron ically</w>\nadi c</w>\nps n</w>\nðŁ¥ ī</w>\ncultur ally</w>\nyu v\nmac arthur</w>\nfertili zer</w>\nbe withyou</w>\nri gor\nmin ors</w>\nz oning</w>\nâĸ ł</w>\nri r</w>\nadole scent</w>\nvin ny</w>\nren g</w>\nsand stone</w>\ngu et</w>\nwe sth\nple dged</w>\nlac ed</w>\nsp ide\nv ai</w>\nty coon</w>\nseiz ure</w>\ndu p\nappalach ian</w>\nro k</w>\ncathol ics</w>\nsey chel\nposse ss</w>\nla ger\njo di\ncham p\nstra s\nd ina</w>\ncent uri\ncal der</w>\nblur ay</w>\nðŁĩ¨ðŁĩ ³</w>\nmo do</w>\nan nette</w>\nyoutu bers</w>\nchap s</w>\nang ling</w>\nlabel ing</w>\na qui\npk wy</w>\nly le</w>\nbi sexual</w>\nlit ur\ndug out</w>\nli bby</w>\ngrey sanatomy</w>\nsub stances</w>\naugust us</w>\nrall ying</w>\nfi del</w>\ning ue</w>\näº º\nhallmark channel</w>\ntooth brush</w>\nm Ã¡\nadi rond\nag gi\nðŁĵį :</w>\ncru sade</w>\ntax ation</w>\nk z</w>\ni ver\ndou bling</w>\nroom ie</w>\nwa b</w>\nen rolled</w>\naz on</w>\na ju\ngrand children</w>\nas df\nðŁ¥ º</w>\nmat ic\nough ton</w>\nutili ze</w>\nðŁĴ £\npon der</w>\nrais in</w>\ndys function</w>\nco bain</w>\nbutter nut</w>\ne man</w>\nsu red</w>\ndri an</w>\nand friends</w>\nwith the\non omy</w>\nheine ken</w>\nbri dal\nleader ship\npyram ids</w>\ndeutsch land</w>\njo cel\nbo wel</w>\ny qr</w>\nhorse power</w>\nbe acon\ning eni\ngra dient</w>\nfer mented</w>\nmo om\nthing y</w>\npot assi\nwrist band</w>\nbor d</w>\nbo died</w>\nðŁĺŃ ðŁĺį</w>\nma pp</w>\nka u</w>\ncyber punk</w>\nph ish</w>\nloo king\nco ates</w>\nap ur\nam ie</w>\nuk labour</w>\nat in\ng la</w>\nadop table</w>\nshel by\nv illi\nri ya</w>\nm ingly</w>\ncli mber</w>\nbumble bee</w>\nðŁĺ ¸</w>\nc sd</w>\nâĿ ¥</w>\nhospit alized</w>\nc ki\nhat er</w>\nch r</w>\nre tina</w>\nit a\nfan base</w>\nbeat rice</w>\ngwy ne\ngo ss</w>\nfo s\nfavor ited</w>\nswachhb harat</w>\nmal ade</w>\nmon mouth</w>\n\" [</w>\nsi van</w>\nsh hh</w>\ncommand ing</w>\nsains burys</w>\nwee d\ng man</w>\nss w</w>\nrep tile</w>\niv y\ntro pics</w>\nroll ers</w>\nover cast</w>\nex position</w>\nmasquer ade</w>\nman crush\nwa ist\nspr inter</w>\nsle et</w>\nle vin</w>\nj pg</w>\n_ (</w>\no pel</w>\nexplo it</w>\nap a\npo we\nwrec king</w>\njong in</w>\nor b</w>\ner ick</w>\nbo sco</w>\npra ising</w>\nber tr\nto wing</w>\nin security</w>\nku t</w>\nresto cked</w>\nrr p</w>\nprescri bed</w>\ntrafal gar</w>\nper t\ng ases</w>\napp rais\ng har</w>\nmusic als</w>\nâĸ¬ âĸ¬\nmc fad\nag ony</w>\nconditi on\nequi p</w>\nshi k</w>\natra vel</w>\nðŁĩ¿ ðŁĩ¦</w>\nke h</w>\nabduc tion</w>\npe oria</w>\nwil kins</w>\ng ms</w>\nas d</w>\nev i</w>\nðŁĴĹ ðŁĴĹðŁĴĹ</w>\nu z</w>\nmo c</w>\nhalle lujah</w>\nguad alu\nlou vre</w>\ndra wing\ngo ve</w>\nph ant\nfri e\nweb dev</w>\nprogram mer</w>\nz able</w>\ngames com</w>\nclari fy</w>\nli th\nkin ky</w>\nâĿ £\nlabour doorstep</w>\nson ata</w>\nju ris\nmai den\nvi adu\nbuch arest</w>\nconditi oned</w>\ncapit alist</w>\nu de\nps b</w>\nsp ca</w>\nlul la\nfooth ills</w>\nkay o</w>\nbon d\nwom b</w>\nroun der</w>\nce sar\nbur sts</w>\nap ra\nsw oon</w>\nsab rin\nfra grant</w>\ncle arer</w>\nku brick</w>\ncli max</w>\njour no</w>\nag le\nðŁı½ âĢįâĻĢï¸ı</w>\npoo ch</w>\nhal e\nsol it\nsal mon\norganis ms</w>\nbron son</w>\nart en</w>\nhodg son</w>\nalo ve</w>\nvent ure\nbb i</w>\nae a</w>\nðŁĲ ¢</w>\nld n\nd nr</w>\no zone</w>\nel las</w>\nman ny\nazz ur\nun beat\ntru ffles</w>\nth ong</w>\nma Ã±\nlas ers</w>\nley e</w>\ngettys burg</w>\nback packs</w>\nor is</w>\nma ison\ncraw ling</w>\nla bra\ncl ing\ndra gging</w>\nste al\ndou bt\nde van\nck ers</w>\nagent sof\nphoto bomb</w>\nelon musk</w>\nabo y</w>\ndist ances</w>\nstory line</w>\nsp i</w>\nnor than\neurope ans</w>\nwh ale\nser pent\nðŁļ ²</w>\nfi or\ntr it\nox o</w>\nawar ding</w>\nclass mate</w>\nsu fc</w>\nsmar test</w>\nrich es</w>\npr k</w>\nbig foot</w>\nar mb\nbi polar</w>\ndw elling</w>\nom ars</w>\nk wan\ngri me</w>\nm eng\nfreder ick\nnavar ro</w>\nsorry notsorry</w>\njaredle to</w>\npa ve</w>\nsl ack\nbarn sley\natt ar</w>\nevic tion</w>\naccumul ation</w>\no ir</w>\ncat chy</w>\nwel ter\nvik as</w>\nhas see</w>\nnik ita</w>\nmo yes</w>\nmathe ws</w>\nshi v</w>\ngat wick</w>\npro filing</w>\ncompan ions</w>\nmar rake\nan tics</w>\nðŁĻĮðŁĻĮ ðŁĻĮ</w>\nse se</w>\nbo i\nbart lett</w>\npoison ous</w>\nab uses</w>\nym m</w>\nkam pala</w>\nguggen heim</w>\nimv kohli</w>\ndol om\nbre e</w>\nthro ttle</w>\ngare th\nfitz patrick</w>\nun ya</w>\npar ad\nmar got</w>\nj nr</w>\nwe a\npotassi um</w>\np nc</w>\ndisgu ised</w>\ncra sh\nren ergy</w>\nill ic\ncoup led</w>\nni els</w>\nci ones</w>\næĹ ¥</w>\nim ent</w>\ndespic able</w>\nd ye\nwhat cha</w>\nconne ctions</w>\nparalym pics</w>\ngaunt let</w>\nwait rose</w>\nsuici dal</w>\nstar ship</w>\nvap or\nst ou\nlaw maker</w>\ncoo led</w>\nsi mo</w>\nthen o\noffro ad</w>\nja den</w>\nbas que</w>\nvick y\nlu kaku</w>\ncentr o</w>\ntri sh</w>\nstrate gist</w>\nmedic ations</w>\nhor st</w>\nb fc</w>\ngra il</w>\nsharp ly</w>\nad itya</w>\ntom b\nkau fman</w>\ntri pad\nsam ba</w>\npastor al</w>\nbrit ney\nsag an</w>\nhill side</w>\nmas ons</w>\nsar a\nz one\nx u</w>\nto tes</w>\nrob bie\napp en\nmon tag\nder o\nshort film</w>\ncharis matic</w>\ntat ors</w>\nki ba\nand ri\nal arming</w>\nsplit ting</w>\nic ar\nth ug\nscari est</w>\nsylve ster</w>\nan an\nu trecht</w>\na difference</w>\nme ade</w>\nbu ster\nair strikes</w>\ncu ffs</w>\naccount ants</w>\nðŁĺ¡ ðŁĺ¡\nnew t</w>\nbo tt</w>\nissu ing</w>\ncl ancy</w>\nwwen etwork</w>\nkyu hyun</w>\nrese mble</w>\npajam as</w>\nsin k\nkin ney</w>\nsul ph\nor k</w>\nli es\nla gh\nor ton</w>\nra hul\nd sc</w>\nwe will\nre am\ncollo qui\nshar ia</w>\nhec tic</w>\nsar casm</w>\nland er\ntm z</w>\nendor f</w>\nro z</w>\nham mered</w>\nfri s\nw adi</w>\npope francis</w>\nhe it</w>\nflash light</w>\nun born</w>\nop es</w>\nhol iness</w>\nðŁĲ ¦</w>\nnach t</w>\nim sa</w>\ngr acing</w>\nbj p\nver ts</w>\nc sc</w>\nhome owner</w>\na que</w>\nbigo try</w>\nanni e\nbag h</w>\nâĿ¤ï¸ı ðŁĺį</w>\ncar i</w>\nthom p\ndispo sable</w>\ncardio logy</w>\npat ented</w>\nhh hhhh</w>\nld r</w>\nstephen son</w>\ncro res</w>\nfan ning</w>\ncli mat\nðŁĳį ðŁĳįðŁĳį</w>\nðŁĳį ðŁı¼\naer on\npiccad illy</w>\nbank rupt</w>\nsil via</w>\nemplo y\ndon ny\ncommen ting</w>\nscreen writer</w>\nio ta</w>\nce an</w>\nanc ers</w>\ntu an</w>\nstreet wear</w>\nà¤ ¯</w>\nsk ine</w>\nesp a\nasi f</w>\nos ce</w>\nshe ppard</w>\nmore cam\nbott le\nder s\norac le\ngoogle play</w>\naver aged</w>\nedmon ton\nsteph an</w>\nsister hood</w>\ncru sted</w>\nstag gering</w>\nmethodo logy</w>\ncongress woman</w>\nc abo\ntri ggers</w>\nmil ky\ngli de</w>\ntooth paste</w>\nroom mates</w>\nnu ff</w>\ngu am</w>\nsprink les</w>\nalternati ve\nwat fordfc</w>\nuof t</w>\nhal ey\ncont acted</w>\nbun dy</w>\npro stitu\ngh ar\npre ston\non site</w>\nhil ar\ng ts</w>\nc att\nhamp stead</w>\n? ?!</w>\nðŁĩ§ ðŁĩ\nbbc qt</w>\naless andro</w>\nresi st\nma idan</w>\nt ko</w>\nshad ing</w>\npin up</w>\ngal lo\nsin u\nat ec\nfun k\nac lu</w>\nstri des</w>\nrhy me</w>\nwet land</w>\nbbc springwatch</w>\nt ins</w>\nwild card</w>\nst our\nflamen co</w>\npau la\nonto logy</w>\ngang sta</w>\nam ade\nãĤ «\nt bs</w>\nskelet al</w>\nrun ner\njard in</w>\nharri er</w>\nhun ted</w>\nz hen\nbelievein film</w>\nde mean\nau diti\nre start</w>\nchon dri\nâĿ¤ï¸ı ðŁĴĻ</w>\nmcla ren\nga b</w>\nsh um\nau sa</w>\nlewi sham\ny pg</w>\nk jv</w>\nfur nished</w>\ndor o</w>\nbon ded</w>\nmor ty</w>\nlat itude</w>\n_ )</w>\nlo va</w>\nwater ways</w>\nvin ai\nshor th\ndrun k\nc ay</w>\nay ana</w>\nkap lan</w>\ncapp uccino</w>\nspr o</w>\nlife boat</w>\nhas bro</w>\nspol ice</w>\ntor on\ndo ing\ndam n\nsh ree</w>\nfoun tains</w>\nent ation</w>\nmar u\nboar der</w>\nto pless</w>\nj ada</w>\nchan ning</w>\nul ls</w>\nen closure</w>\ngib son\nfractu red</w>\nbrit ton</w>\nÃ ¶</w>\nt ous</w>\npor th\ndra f\ntra iling</w>\nmar gate</w>\neli fe\ndown ward</w>\nlin n</w>\ngla des</w>\ngirl power</w>\nak rish\nu ki\nron da</w>\nts c</w>\nappreci ationday</w>\nvis ing</w>\nlo om\nðŁį ³</w>\nmex ican\nar gos</w>\ny ya</w>\njad ine</w>\nsouth port</w>\nd end\nsi sta</w>\nrede em</w>\nmen g</w>\nbra xton</w>\nantioxid ant</w>\ns key</w>\nmp g</w>\nfin ding\nvibr ation</w>\nce u</w>\nkh art</w>\ndi mini\ncl ine</w>\nshel ly</w>\nhin es</w>\nī ï¸ı</w>\nto pical</w>\nno ver</w>\nma xx</w>\nprim itive</w>\nillustr ate</w>\nb ounds</w>\ntren ton</w>\njoin tly</w>\nbreed ers</w>\nu chi\nwakeup america</w>\nb ada</w>\nðŁĹ £ï¸ı</w>\ngu acam\nsp heres</w>\npere gr\nyouth ful</w>\nlo lo</w>\nbir min\nt ly\njeremy corbyn</w>\ndefe cts</w>\nco sm\na rent</w>\nv aa</w>\nbag els</w>\nmedi ac\ncori ander</w>\nic ago</w>\ng haz\nab bas\nre model</w>\nstruc turing</w>\npu m\nout law\nad ani</w>\nr bc</w>\ngul ls</w>\nn li</w>\nconfu se</w>\nðŁĳĩ ðŁı¼</w>\nvil a</w>\nmcnam ara</w>\ncorrec tions</w>\nmug hal</w>\nser i</w>\nre gain</w>\nss b</w>\nlea ve\nhaha hah\ngran de\ndi stressed</w>\nre chargeable</w>\nho a</w>\nhou sed</w>\nsti l</w>\nattribu ted</w>\nopath ic</w>\ndi ps</w>\npri t</w>\nhead phone</w>\nconclu de</w>\npil o\nhe t\nut sa</w>\nnit in</w>\nje m</w>\nsni ppet</w>\ntutor ing</w>\nop er</w>\nsun k</w>\nen sla\ncha u</w>\nac orn</w>\nquinte ss\nran kin</w>\naffili ated</w>\nour lives</w>\ncl int\nse ater</w>\nisa ac\nba shing</w>\nsme ar</w>\nnur se\ndoo dling</w>\n\" ;</w>\nsa ku\natroc ities</w>\nim am\ng fs</w>\nviol ating</w>\ncomm end\nbrad shaw</w>\ner ville</w>\nb illed</w>\nb be</w>\nthul hu</w>\ni phones</w>\nmoo se\ndi os</w>\nre w</w>\nme thane</w>\nstrang ely</w>\nwhis ky\nti ghtly</w>\nspiel berg</w>\nradi us</w>\nnotic ing</w>\nwi f</w>\nig nati\ni fa</w>\nap is</w>\nw ali\nha itian</w>\nbu shes</w>\ny z\nv l\nex ited</w>\nasse l</w>\ntru ec\ndom en\nash er</w>\nin king</w>\nnewyear seve</w>\nhend ricks</w>\nbat i</w>\nìĿ´ ì\nrich ter</w>\nmon santo</w>\ncon line</w>\nagre at\nðŁ¤ ¯</w>\nmaster pieces</w>\nar n</w>\nrough s</w>\ncle ve\nse v</w>\nfashi ons</w>\nto ya</w>\nsh ail\ncop eland</w>\naqu ari\ndec als</w>\nare you\ny aya</w>\na str\nfon t\nml m</w>\nar ca</w>\npp or\npol lock</w>\nxper ia</w>\nconserv ation\nchain saw</w>\nag gie</w>\n?! ?!?</w>\nsi le\nsh on</w>\nìĹ Ĳ\nnote books</w>\nmarque tte</w>\nde us</w>\nbb led</w>\nspic er</w>\nmc cabe</w>\nnor wich\nmodi fication</w>\nboo sted</w>\nstru m</w>\nsales man</w>\nbang le</w>\nnis san\nhez bollah</w>\nbrea sts</w>\na af\nanth us</w>\nsk er\now ed</w>\nher os</w>\ngi fs</w>\nfo sters</w>\neat ers</w>\ndu es</w>\n_ /\nlymph oma</w>\nsf am</w>\nme gal\nafri di</w>\nag ic</w>\np amp\njeal ousy</w>\nðŁĳĮ ðŁı¼\ncalcul ate</w>\nnapp ing</w>\ng ale\nðŁ¦ Ħ</w>\nlub bock</w>\nassu med</w>\nren ting</w>\níĥ ľ\nsubur b</w>\nãĤ ·\ntech nic</w>\nu cla\nin front</w>\ngar net</w>\nster oids</w>\nstri ving</w>\nho war\nmo ver</w>\nle ton\nbull do\nis in</w>\nci ao</w>\nsn z</w>\nfore front</w>\nd ams</w>\nmid wife</w>\nma wards</w>\ncla pton</w>\nwe in</w>\nsubsi dies</w>\nspr oud</w>\nrother ham</w>\nphan tom\nar ach\nspi el</w>\nrac ket</w>\nsel amat</w>\nno on\nl bc</w>\nenti ally</w>\nðŁĴ ¸\nsil ve\nm oud</w>\nkine tic</w>\ny asi\nðŁİ ©</w>\no ol\nmi ku</w>\ni za</w>\nfer a</w>\nflo ren\nbarber shop</w>\ngroo t</w>\nz est</w>\nne ars</w>\nstan is\nz and\npolice man</w>\njuris dic\nform ations</w>\nappar atus</w>\nsp d\narti fact</w>\nto sc\nmotiv ating</w>\nwomanc rush\nre dro\ndiagno stics</w>\nra za</w>\nout fitters</w>\nel xn</w>\ndod gy</w>\nry n</w>\nsh d</w>\northo don\nol de</w>\njay anti</w>\nbal ances</w>\nquic kest</w>\ncan ton\nfriday reads</w>\n! *</w>\nna a</w>\na ak\nðŁĶ ·</w>\nbehavi ors</w>\nrasp berries</w>\nä »\npolit ical\ncam il\nå ľ\ndi k</w>\nast ounding</w>\nlie be</w>\nnovel ty</w>\ntur moil</w>\nsul ly</w>\nspring break</w>\nhon ouring</w>\ncc g</w>\nðŁı Ĵ</w>\nmy little\nky c</w>\npro ms</w>\nðŁķ Ĭ</w>\nÃ ¨</w>\nbi ge\nav ril</w>\nðŁĩµðŁĩ °</w>\nmari on\nas ants</w>\nsur ya</w>\noc tag\nluf than\nac ron\nfayette ville</w>\nti que</w>\nlove s\nen ca</w>\nde kalb</w>\nta ver\nde vote\naux iliary</w>\njoh annes</w>\ntread mill</w>\nay an\nqu r</w>\ndonald son</w>\ncher yl\n\" ....</w>\ns ven\nkir sty</w>\ngun ners</w>\nra dish</w>\no ahu</w>\nv sky</w>\ni ble</w>\ncon course</w>\nb ps</w>\nelo qu\nash ford</w>\nte bow</w>\nroblo x</w>\nma da</w>\ndri ving\nth day</w>\nspro ject</w>\nm ms</w>\nband ed</w>\n. !!</w>\nlibr arians</w>\nflan nel</w>\nintoler ance</w>\nher al\nç µ\nneme sis</w>\nlist a</w>\ntar ak</w>\ncry pt</w>\nstar plus</w>\nvish nu</w>\nsc ale\ncr is</w>\n% ),</w>\nj illian</w>\nregg ae\npegas us</w>\nol in\nip ment</w>\nman ic</w>\nl fc\ngodd ard</w>\nite am</w>\nparl our</w>\nanch ors</w>\nlee minho</w>\ntalla hassee</w>\nant it\nd ho\nkid ney\ny ash</w>\nbatt led</w>\naz ad</w>\ngar is</w>\nfaul kner</w>\nsni ff</w>\npapar azzi</w>\ned m\nphy llis</w>\ncon tested</w>\naa ay</w>\nse ca</w>\nk ton</w>\nvel ve\nrain ier</w>\nfor um\ntam pab\nho sp</w>\ntrac tors</w>\nox fordshire</w>\nno tion</w>\nguang zhou</w>\nðŁĺ ¯</w>\nref ill</w>\nwednesday motivation</w>\nsli der</w>\nmukher jee</w>\npr att\nfon taine</w>\nalph on\naf ar</w>\nts i</w>\npest icides</w>\nfi ends</w>\nmo cking</w>\nbra w\ntran sat\ndo ses</w>\nco res</w>\nhom ophobia</w>\ndocu menting</w>\nzlat an</w>\ncon doms</w>\ns Ã©\nsun set\nkun st</w>\nton ga</w>\nà¸ ª\nv ation</w>\nsp ray\nchow der</w>\nra ps</w>\npalla dium</w>\nnor wood</w>\nmusic history</w>\nhoo ker</w>\nsi si</w>\nosp rey</w>\nph ys</w>\nconce ded</w>\nbob cat</w>\nar mad\nze it\nÙ Ħ</w>\nðŁĺģ ðŁĺģ\nmer idi\nðŁĩ· ðŁĩº</w>\ncorn wall\n! ),</w>\ntouch downs</w>\nze it</w>\nchal et</w>\nmm m\nal che\ngor illa\nfo ss</w>\nati ku</w>\nlumin ous</w>\nivan ka</w>\nbe ek</w>\nsta res</w>\nsw iss\nâĿ¤âĿ¤ âĿ¤âĿ¤\nscru bs</w>\nme ath</w>\ngusta v</w>\njo gging</w>\nconfe tti</w>\nas os</w>\ners fc</w>\nbreit bart</w>\napplic able</w>\nautho red</w>\nya ho\nh in</w>\ndisplac ement</w>\nj v\nðŁĮ¹ ðŁĮ¹\not c</w>\nnon profits</w>\ndiec ast</w>\ngu sto</w>\ninte stin\nc ages</w>\nme en\nlu kas</w>\nmoon ey</w>\nðŁĺ ·\nvery day</w>\ntor ah</w>\nis sion</w>\nwa c</w>\nlever aging</w>\nish able</w>\ncu se</w>\nle wood</w>\nmay an</w>\nturn table</w>\nju ice\ntru sty</w>\ntu p\neti quette</w>\nsupervis ors</w>\nstu n</w>\ngu zman</w>\nconfe ren\nric o\nfe ast\nback ward</w>\npol aris</w>\nmic he\njo g\nh ing\nfield house</w>\nvel ing</w>\nsho cker</w>\nesc ence</w>\nà¤ ¾\nvi be\nanasta sia</w>\nmar ched</w>\nkill ing\nĶ ë\nfe tt</w>\nexop lan\n... (</w>\nsnow day</w>\nlo h</w>\nir ani</w>\nla khs</w>\ndel a</w>\npo caly\nboom ers</w>\ndictat orship</w>\nac er\ntur keys</w>\nquarter final</w>\nmuskete ers</w>\nðŁĴĽ ðŁĴļ\nsf x</w>\nmuseum week</w>\nsc ala</w>\nri sis</w>\n( ðŁĵ·</w>\nãĢ Ĥ</w>\nz ies</w>\nbo eh\nhu es</w>\nlu sci\ndol a</w>\nimpeach trump</w>\nroo d</w>\ndon caster\ntor re</w>\nhero es\nfo yer</w>\ntar i</w>\nblur red</w>\nke w\nfrank ly</w>\ndro id</w>\nap al\nÐ ¼\ny af\nbre t\npar agu\ncac ao</w>\nðŁĻĮ ðŁı¾\nru e\nhead aches</w>\nshaw ty</w>\nchar ley</w>\npal er\ngo wns</w>\ncorrec tional</w>\nðŁĺ© ðŁĺ©</w>\nbreaking bad</w>\nol ing</w>\nda p</w>\nendeav our</w>\ncit adel</w>\ntra d</w>\nincumb ent</w>\nmedit ate</w>\nfoo ted</w>\nðŁĴ µ</w>\nshab bat</w>\ndayof the\nwil lem</w>\ngal way\nto red</w>\nmarri age\nf illion</w>\nsleeve less</w>\naud itor</w>\njin young</w>\ninvin cible</w>\nkad una</w>\na and\nvolcan oes</w>\nmon eti\nindie gogo</w>\nbuccane ers</w>\nðŁĳī ðŁı½</w>\nãĢ Ĥ\nlay ton</w>\ncuck oo</w>\nhu mber</w>\nbuzz er</w>\nÏ ī</w>\nto re\nstra ins</w>\nsto m</w>\npa ine</w>\ns we</w>\ndu ff\nz ou\nsi mi</w>\nli pp\nur n</w>\nse agu\nðŁĶ ®</w>\nsun dae</w>\nhi c</w>\nðŁĺ ¨</w>\nbull pen</w>\nu per\nflyo ver</w>\nal dridge</w>\nglo bes</w>\nali es</w>\nken zie</w>\nge es</w>\ny cle</w>\nsp lin\nmag enta</w>\nj ha</w>\nbal u\ngh orn</w>\nti pper\nwick er</w>\ntaste of\ncon clave</w>\nch ale</w>\ninv asi\ncat er</w>\ndio xide</w>\nme gab\nwin n</w>\nat p\ntransform ative</w>\nnest led</w>\nhi g\nbri dging</w>\nlil ies</w>\nchee red</w>\nbad dest</w>\nsc rolls</w>\nreal is</w>\ndipl o</w>\nðŁĶ «\nconce ssion</w>\nprefe rences</w>\nexplo des</w>\ner gon\nintroduc tory</w>\nine au</w>\nch af\nsom es</w>\nland rover</w>\nspir ation</w>\nsex y</w>\nsco recard</w>\nillustr ates</w>\nsoul mate</w>\nwi en</w>\ninter disciplinary</w>\nfore casting</w>\nent ities</w>\nglu ed</w>\nen lar\ncur t</w>\npercep tions</w>\nboot leg</w>\nmi re\nasho k</w>\nv az\nhor ne</w>\ncal le</w>\nac ulture</w>\nther oy\nnight time</w>\noc al</w>\ncharacter design</w>\nar mist\nðŁĺı ðŁĺı</w>\nyah oo\nac eae</w>\nto se</w>\neven to</w>\nsou t\nnay anth\nwh om\nv are\nri gging</w>\ngen us</w>\nhi ve\ncom mands</w>\nsti e\nday a</w>\nethan ol</w>\nen f\nhi fi</w>\nflu ence</w>\ncle mson\nre invent</w>\nthermom eter</w>\nhumor ous</w>\nemer ging\naci Ã³n</w>\nðŁĺĺ ðŁĺį</w>\ns ity\nhaw ke</w>\naccompan ying</w>\nt ility</w>\nðŁĺ ª\nre cess</w>\nprotag onist</w>\nl ery</w>\ndun dal\nint l\nbritt any\nq bs</w>\noff the\nmarri ages</w>\nhow to\nviol ated</w>\nadel aide\nwit t\nlanc er</w>\npak v\nhu me</w>\nst ade</w>\nbra gging</w>\nou tright</w>\nad c</w>\nsuper st\nreal time</w>\ncu res</w>\ngarden ers</w>\nero ck</w>\ndale jr</w>\nver o</w>\nbar tol\nmo ti\nmc fly</w>\nv pn</w>\nst ink</w>\nover rated</w>\nguer ra</w>\ne tis\nath ome</w>\ntwd family</w>\nth ab\ntn x</w>\nrafa el\nfamily travel</w>\nx ley</w>\nsat anic</w>\nequ ations</w>\nru dy\nwal dorf</w>\nstan i</w>\ntu be\nmeas les</w>\nzimmer man</w>\nobli gations</w>\ni ously</w>\nbow ser</w>\ntrans former</w>\nsho ppe</w>\nshak en</w>\ngh ouse</w>\nto d\nke tball</w>\nshare holder</w>\nmar ca</w>\nkp mg</w>\nak an</w>\ngiven chy</w>\ncoast al\nau th</w>\nroller coaster</w>\nmar ches</w>\ncoordin ate</w>\ncine ma\napprentic es</w>\npar lor</w>\nmit o\nmen on</w>\nconsider able</w>\nbar re</w>\nglo ss\nenh ances</w>\njaz eera</w>\nfal mouth</w>\nthra sh</w>\nstat en</w>\nk zn</w>\neng el\nsamanth ap\nflo ppy</w>\nsal om\nðŁıĨ ðŁıĨ</w>\nw ack</w>\ndeliber ate</w>\nosc ill\nherit ag\ndu sted</w>\norni thology</w>\npad dle\nfer ns</w>\nbar un\ncl ans</w>\nanticip ate</w>\na ay\nmat ically</w>\né ĩ\ntu mble</w>\npost man</w>\nunic ef\ntro tter</w>\nop d</w>\nleaf let</w>\nge ist</w>\ncease fire</w>\nscre ws</w>\ncre ation\nwal nuts</w>\nlongh orns</w>\nunder statement</w>\nab b</w>\nproxim ity</w>\nna x\nun ity\nturn pike</w>\norda ined</w>\ndub step</w>\nchak ra\nme ch</w>\nlove her</w>\nlook alike</w>\ndonne in\nvir on\nÙ Ī</w>\nbang ers</w>\nvari ants</w>\nout dated</w>\nin ta</w>\ncri sto</w>\nsp elt</w>\nfood and\nf on</w>\nstefan i</w>\nmargin al</w>\nhu tton</w>\nti ara</w>\ntel ford</w>\nqu en</w>\nfair grounds</w>\nque tta</w>\nmikha il</w>\nheal er</w>\nv ball</w>\nty re\nunder grad</w>\ngl end\nhom ers</w>\nscri bed</w>\nmain tains</w>\npo che\nmis sal</w>\nmar ko</w>\nu as</w>\nÃ¡ n\nsh p</w>\ncon vey</w>\npad re</w>\nsab a</w>\npu glia</w>\nmadhu ri\npa xton</w>\nchap lain</w>\nn ago\nca si\n... !!!</w>\nfli rt</w>\nsal eh</w>\nk are</w>\ndi re\nstam ped</w>\nextre me\nðŁĺĥ ðŁĺĥ</w>\nho ppy</w>\nguadalu pe</w>\nadvant aged</w>\neu char\np low</w>\nun n</w>\nmac qu\nport land\ncla sh\npe s\nlou bout\ny p\nkeep ing\narca dia</w>\nfran kie\nfi u</w>\nde th</w>\nencyclo pedia</w>\nsi ze\ninve sts</w>\nðŁį ©</w>\ngeo logical</w>\nfran Ã§\ncon front</w>\nðŁĺ ¥\nd ys</w>\naf m</w>\ntex an</w>\ngraph ene</w>\nrepost app</w>\nac f</w>\nur sula</w>\ngaz a\ndd led</w>\nfu m</w>\nwsb tv</w>\nm be\nfron tiers</w>\nchrono graph</w>\nke s\ninter faith</w>\ntab oo</w>\nspar ta</w>\nwon do</w>\nflori st</w>\nem braces</w>\nca w\nno el\narch ers</w>\nðŁĲ ·</w>\nroman o</w>\nban an\nsh akers</w>\nmelo dies</w>\ngeo thermal</w>\nse phora</w>\nìļ °\nÐ¾Ð ´\npro c\nhand shake</w>\npan de\npopul ated</w>\nslow down</w>\nhor tons</w>\nregistr ations</w>\nun deni\nlan ts</w>\npas sover</w>\nthak ur</w>\nli ef</w>\nadhe sive</w>\npe tal\nmicro scopy</w>\nmemph is\nconfir ming</w>\nair drop</w>\nmesm er\nperce ived</w>\nming le</w>\nlifel ine</w>\ngh j\nworcester shire</w>\npas sions</w>\nach er\nel lar</w>\nah o</w>\nfiren ze</w>\nbar ang\nletter man</w>\nhat field</w>\nlu cha</w>\nje ter</w>\ne shop\nwilliam s\nhoro scope</w>\npre de\neast bourne</w>\ndur ga</w>\ndi version</w>\nal trin\nseis mic</w>\npremi osm\nnar co\nti r</w>\nori g</w>\nor m</w>\nland fall</w>\nci ous</w>\nlin do</w>\nmax ine</w>\nx ico</w>\ntra y\nos wald</w>\nc ba</w>\nric otta</w>\nn cr</w>\nmar au\nà¸ ²</w>\ngladi ator</w>\nch ery</w>\nlun g\nu me\npo psic\nlon ging</w>\ncan als</w>\nta ya</w>\ndecentr alized</w>\nsho pp\npres sures</w>\nmahar aj</w>\neti had</w>\nwal greens</w>\nsucce ssion</w>\nsign aling</w>\nli g</w>\nstaf fer</w>\nnorth korea</w>\ndef ying</w>\nas ma</w>\nde g</w>\nperi meter</w>\noak ville</w>\nm sk\nbalti more\nrece ip\nde ple\nðŁĺŃ ðŁĺĤ</w>\njambo ree</w>\n> .<</w>\nrsp b\npuni sher</w>\nconsider ably</w>\nin tothe\npari sian</w>\nacceler ated</w>\npolye ster</w>\nlow es</w>\nfr ying</w>\nsautÃ© ed</w>\nmou ths</w>\nseychel les</w>\nra x</w>\ngo dis\ndak ota\nhouse wives</w>\nthe me\nmat inee</w>\nblack bird</w>\nye sung</w>\npre fers</w>\npelle gr\nin ated</w>\ntrun ks</w>\nstronger together</w>\nre pet\nre pairing</w>\nped als</w>\ntoler ant</w>\nher r</w>\ndun ne</w>\nindic ation</w>\ndecat ur</w>\nb tv</w>\nexhibit ors</w>\nik on\nfriday motivation</w>\nbra gg</w>\nlive tweet</w>\nal ves</w>\nwomens art</w>\nforeig ners</w>\nwal lets</w>\nmin dy</w>\nlan ey</w>\nbb in</w>\ntv miaw</w>\nlif ter</w>\ntar get\ntam e\ndr ou\nastro photography</w>\nmp c</w>\ng pu</w>\nnord strom</w>\nfric tion</w>\nrun off</w>\nlov able</w>\nsp nfamily</w>\next ingui\nbloo dy\nsch el</w>\narti stry</w>\nsw ish</w>\nscar ce</w>\nph ils</w>\nmax im</w>\npos sum</w>\ncom promised</w>\nsty li\nsc fc</w>\nis sa\nbirmin gham\nsket ched</w>\nangel ica</w>\nordin ance</w>\nje ts\nconqu er\nðŁĺ Ĳ\nonline shopping</w>\ns ori\nreason ably</w>\nnue stro</w>\nar turo</w>\nch l</w>\nbenef ici\nspho to</w>\nwel t</w>\nni kk\nðŁ¤ ŀ</w>\ndan ao</w>\nfor mid\nas se</w>\naf irst</w>\nâľ Ĥ\ngil lette</w>\nas sor\nan onym\nsel ca</w>\nfe mi</w>\nbear able</w>\ny and\nar mory</w>\ncre pe</w>\nceltic fc</w>\nbra vo\nin expensive</w>\nde lec\nge cko</w>\nnew market</w>\nsnow flakes</w>\nkab ir</w>\ncon tra</w>\ncan ning</w>\nmor pho\ngar wal</w>\nðŁĴĥ ðŁı»</w>\nfight ing\nmu tation</w>\nwoo dy\nju gg\ngr aces</w>\npremiosm tvmiaw</w>\nkenne dy\ngu p\nsa e\nop ha\noff spring</w>\nfini sher</w>\nbet ts</w>\nspan ning</w>\nmar j\nh one</w>\nsh ing\ncontin ents</w>\nsamanthap rabhu</w>\nun related</w>\nl acy</w>\nexplo sions</w>\nbenjam in\nsophi e\nno ting</w>\nmicro soft\nas sen</w>\na hoy</w>\ni ker</w>\nho fer</w>\nmo e\nah madi\nyan n</w>\nan ak</w>\nma hi</w>\nbe u\naha h</w>\ncreep er</w>\nbaahu bali</w>\nam at\npri ory</w>\nhaw keye</w>\ndeloit te</w>\nsko da</w>\nprint making</w>\nassemb ling</w>\nmirac ulous</w>\nno ch</w>\nsw o\nleg a</w>\noper ates</w>\nborder lands</w>\neli e\nstron gh\nrep tiles</w>\npir ate\nun fold</w>\nÂ ¯\nqual comm</w>\nun predictable</w>\not r</w>\nrose wood</w>\ndirec tional</w>\ncounsel ors</w>\ncorn ell\nliber ated</w>\nj ad</w>\nir regular</w>\nbulgar ian</w>\nhigh ness</w>\nvodaf one</w>\nsw ild</w>\nmini mize</w>\ngra zie</w>\nà¹ ĩ</w>\nr stats</w>\nstre ep</w>\nome tric</w>\nhumb le\nlu mp</w>\nl ille</w>\nb Ã¼\nhome depot</w>\ntripad visor</w>\nki wan\na via</w>\ner z</w>\nex ico</w>\ndu f\nblu men\nmi zing</w>\nar ma</w>\nin im\ncon stan\nsor a</w>\nju al</w>\nau n</w>\ntw ell\ntren ches</w>\nher a</w>\nr k\npo plar</w>\nrecipe oftheday</w>\nll an</w>\nbhu ban\nshort ages</w>\ning don</w>\nbridge water</w>\nðŁĲ ĺ</w>\nfortn ite\ncam den\nun cture</w>\npro w\ncolon ies</w>\nt ks</w>\nn go\nb hm</w>\nlive pd\nspl ace</w>\nsli ke\nhappye aster</w>\nter rence</w>\nrevol ver</w>\nj ed</w>\nyy yy\noffice of\nm ts</w>\nexist ential</w>\nr ourke</w>\nexplore bc</w>\nsse d\npri est\nvix en</w>\nsi ding</w>\nk pa</w>\na har</w>\nju ic\nob struc\nforen sics</w>\nuk mfg</w>\ncancell ation</w>\nwe ary</w>\nab q</w>\nele c</w>\npri zed</w>\ndeb ts</w>\nme zz\nsalv atore</w>\nm dc\ngre tte</w>\nc gc</w>\nth on\nsnow storm</w>\nts ch</w>\ncook ery</w>\nå ¹\nwa xing</w>\nn acional</w>\nmur s</w>\nra ve\ncap es</w>\nger main</w>\ndri pping</w>\nsub mitting</w>\nome lette</w>\niter ation</w>\naj es</w>\nshim mer</w>\nfu eling</w>\nðŁĩ§ ðŁĩª</w>\nli po\nbo bble</w>\nun follow</w>\nislam ist</w>\nhi ber\ncat s\nagentsof shield</w>\nsen si\n____ _</w>\nster ia</w>\ninst al\nausp icious</w>\nhar row</w>\nover land</w>\nfemini sts</w>\ninst ant\nchar iot</w>\nblind ness</w>\nsp ed</w>\nsc arec\nnu it</w>\nmini atures</w>\nho seok</w>\nglo ck</w>\nfifa worldcup</w>\ne te\ndis m</w>\nwe iner</w>\nex foli\near ts</w>\nà¸ Ķ</w>\nmy art</w>\nman il\niss ant</w>\nform a</w>\nin cu\nbuffal ob\nin tim\nmc cul\nanj ali</w>\npo po\nun doub\nhil a</w>\nfun gal</w>\nthank ful\nfu tur\nen dish</w>\nren ds</w>\nth ar</w>\nshe ff\nring o</w>\nnichol ls</w>\nio wa\npo tom\ncl ams</w>\nãģ Ħ</w>\nacon f</w>\nstadi ums</w>\ndi mp\ndi k\nresiden ces</w>\ndo v</w>\ncaric ature</w>\nseagu ll</w>\nkl m</w>\nconfe ss</w>\nsla pped</w>\ncele b\nturb ines</w>\npp v</w>\nnur ture</w>\nel ab</w>\n.... .#</w>\ntu ff</w>\nde press\nal far\namii bo</w>\ndi spon\ne wing</w>\nque er\nfriend s\nfor re\nâĺ ¼</w>\nsw t</w>\naqu arius</w>\nhead liner</w>\ncur d</w>\nfi gs</w>\no tters</w>\nlove fl</w>\nkare em</w>\ngo vegan</w>\nfri yay</w>\nconsol ation</w>\nat ri</w>\nì§ Ħ</w>\nâĺĿ ï¸ı</w>\npoly ne\ngu ed</w>\no ya</w>\nla us\nintestin al</w>\ncam illa</w>\nscal p</w>\npi r</w>\nleed s\nhorri fying</w>\nbore tum</w>\ndand elion</w>\nfer rer</w>\nell ic\nas x</w>\nso ren\nre loaded</w>\nale ague</w>\nnavig ator</w>\nine tte</w>\nadd ams</w>\nal chemist</w>\nak shay</w>\ndystop ian</w>\nawe c</w>\nn aya</w>\nal isa</w>\nai led</w>\nag or\navi ator</w>\nali zer</w>\nsmo bile</w>\nfindyour park</w>\ncop ying</w>\nto ddy</w>\nsh ti</w>\nmon ger</w>\ncal houn</w>\nnap kin</w>\nbreak up</w>\ny atra</w>\nse thu\nric hi\neras mus</w>\nfer ry\nam ore\nprac tise</w>\nbo bo</w>\npower point</w>\noo se</w>\nli ffe</w>\nchin a\nsh ka</w>\nfad navis</w>\ndu ane</w>\nwar on\nfal se\nðŁļ Ĥ</w>\nwa shes</w>\ndisc ip\n==== ====\ng k\nab b\nstub born</w>\nmedi eval\np ci</w>\nðŁį ª</w>\nmaril yn\nh yo\nman di\ncr i</w>\nprede cess\ncontinu ation</w>\nom usic</w>\ns lat\nwh al\nmall ory</w>\nbon n</w>\nshen zhen</w>\nca i\nâĺ ĥ\nsa fest</w>\nfor wards</w>\ndra wers</w>\nbla sted</w>\nsle e</w>\nmor phe\nmb ta</w>\ndumb ass</w>\nÑĦÐ¾ÑĤ Ð¾</w>\nalhamdulil lah</w>\nec lub</w>\nal beit</w>\nheal ey</w>\nayurve da</w>\nadverti sed</w>\ncro cs</w>\nitt les</w>\nbry son</w>\nbe i\nnj pw</w>\nhonore e</w>\nfu sed</w>\nðŁĶ ĺ</w>\nmul tin\nn aga</w>\nde parts</w>\nko p</w>\nkin o</w>\njhar khand</w>\ned na</w>\nax le</w>\nmil ton\nsupremac ist</w>\nmarrake ch</w>\ndomin ic\ntran script</w>\n] [#</w>\n: ).</w>\nwo c</w>\nsur rounds</w>\no gil\nleaf lets</w>\nco well</w>\nwhe w</w>\ntru de</w>\nproli fer\nsucce s\nsports man</w>\ncon dom</w>\npo che</w>\nk up\nimprison ment</w>\n{ }</w>\nscram bled</w>\nå Ľ\nka ine</w>\ncell phone</w>\nmetam or\ncon i\nremn ants</w>\nee z</w>\ndown pour</w>\nafterno on\nexerc ising</w>\nber ser\narchitec ture\nwick low</w>\nm ns</w>\nis p</w>\nbo c</w>\nn iss</w>\nmn wild</w>\nstu mble</w>\nr si</w>\nlu ffy</w>\nsil en\ndd ad</w>\nbul lies</w>\nhaw ker</w>\nbb cc\nscu ba\ne pp\nque ts</w>\nfor aging</w>\npal let</w>\nha di</w>\ncinemato grapher</w>\ncat chers</w>\nto aster</w>\nk hi\nlite coin</w>\nkid lit\namher st</w>\nmaur icio</w>\nip ad\nmar malade</w>\nfe y\ndon nelly</w>\ng to</w>\nest as</w>\ncere bral</w>\nant grasso</w>\nzz led</w>\nvir gil</w>\nswa pped</w>\nðŁĺħ ðŁĺħ</w>\nno dapl</w>\ngreate st\nnhl bruins</w>\nfra ser\nb mo</w>\nane w\n. âĿ¤ï¸ı</w>\nse gregation</w>\nremark ably</w>\nmccor mick</w>\nlo gger</w>\ner as</w>\ncontrac ting</w>\nâłĢ âłĢ</w>\nyor ks</w>\nuku lele</w>\ntouch screen</w>\nde cked</w>\nben n</w>\nsouth wark</w>\nra vin\nnu mis\nðŁ¤ Ļ</w>\nru t</w>\ngre co</w>\neth ic</w>\nred neck</w>\nar r\nt cs</w>\nih ri\nðŁĩ« ðŁĩ·\nl k\ninher ited</w>\nzy k</w>\nviadu ct</w>\nmarty red</w>\nhi gu\nss n</w>\nbe in\nstreet style</w>\nfer gie</w>\nbank of\næĹ ¥\nstake holder</w>\nexempl ary</w>\ncre ss</w>\ness a</w>\nero tica</w>\nintre pid</w>\ngom es</w>\nbra un\nbethan y\nbang tan</w>\npulmon ary</w>\nm illing</w>\ndoctor ate</w>\ntrump russia</w>\nà¤ °\ns ani\nbl att</w>\npla u\ndepri ved</w>\nt le\nful ly\nbour n</w>\nst ak\nlufthan sa</w>\nkio sk</w>\nfar oo\ndef y</w>\nbad an</w>\nðŁĺĺ âĿ¤ï¸ı</w>\nrit z\ntri sha</w>\nran ds</w>\nmiddle sex</w>\narab s</w>\npro j</w>\nsport scenter</w>\nrepe ats</w>\niv f</w>\nbleed blue</w>\nas sure</w>\no bs</w>\nterrit orial</w>\nele n</w>\nbever ley</w>\nann ah\nâĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ıâĿ¤ï¸ı\nz l</w>\nfor good</w>\nscience fiction</w>\ngla u\nson ya</w>\npri th\nst weets</w>\nmix ers</w>\nmari o\nant elope</w>\nwriting community</w>\nwent z</w>\nden ham</w>\nbe di</w>\nsf o</w>\nharley davidson</w>\nlook book</w>\nimmuno therapy</w>\nor phe\nes ville</w>\ned ged</w>\ntas k\nsb ball</w>\ncorro sion</w>\nkilom eters</w>\nco sting</w>\nplay back</w>\nke ke</w>\ndi visi\nu ter\nre location</w>\nyel led</w>\npen g</w>\nup beat</w>\nser ve\nâļ ł</w>\nhal en</w>\nstir ring</w>\nreh man</w>\nen v</w>\nschu macher</w>\nfrag ment</w>\nalkal ine</w>\nsb k</w>\nresil i\nshare point</w>\nrol lover</w>\ntra sh\ncounter part</w>\nâĻ «\nob itu\nà ½\nãĤ ¹</w>\nmul berry</w>\nðŁİ Ĩ</w>\nauton omy</w>\nspra ying</w>\nnat l\nlove you\nfran ki\nnu k</w>\nesc ar\ncan teen</w>\nali baba</w>\nde plor\nmole cule</w>\npu d\nfort night</w>\nblon die</w>\nsp hin\nportra yal</w>\nta che</w>\nbu te</w>\nconsi sting</w>\nfreep alestine</w>\nc sp</w>\nim mort\nd ns</w>\nðŁĴ¥ ðŁĴ¥</w>\ntour de\ncoo king\narchi val</w>\nga thers</w>\nbit t</w>\nb anc\npre mature</w>\nsnow ball</w>\npoetry day</w>\nlou dly</w>\nfug itive</w>\ned ay\nem ra\nðŁĩ¸ ðŁĩª</w>\nsci en\nnode js</w>\njur gen</w>\nje ong</w>\nband ana</w>\nun is</w>\nfox sports</w>\nv andy\npro visions</w>\nwee p</w>\ntu k\ni ko</w>\nh oun\nzig gy</w>\nz r</w>\nfil let</w>\nbat a</w>\ntin k\ncon e\nwe want\nk ilo\nhor ace</w>\nsl t</w>\nsc t</w>\nstay tuned</w>\nvictor ia\numb ria</w>\natt acker</w>\ningham shire</w>\nfright ening</w>\nno ir\nfr at</w>\ncon tempt</w>\nlia ison</w>\nho i\nbr ink\ntr ill</w>\nni agar\nkick ass</w>\ndun das</w>\nnot my\nrho de\nbu mble</w>\nno xi\nfa g</w>\nspec tators</w>\nmancrush monday</w>\njin ping</w>\ndistr act</w>\ndais y\nwal den</w>\nportra it\nar thistory</w>\nvol tron</w>\nev el\nis c</w>\nac m</w>\nr ite\nna o</w>\nde ported</w>\nswe ats</w>\nru fus</w>\nlo bo</w>\nlabor day</w>\ngam o</w>\nihri thik</w>\nbl it\nabdomin al</w>\nãħ¤ãħ¤ ãħ¤ãħ¤\ni it\ne q\nbu sy\nallu arjun</w>\nun disclosed</w>\nde ton\npro create</w>\nki l</w>\nðŁİĤ ðŁİĤ\nmitch ell\nki i</w>\ninherit ance</w>\nal p</w>\njo burg</w>\npat rolling</w>\ncompul sory</w>\nun signed</w>\nni am\nl ga</w>\neshop suk</w>\ntr illi\nma w\nappreci ating</w>\nrock ab\nmaÃ± ana</w>\nan tal\nmal vern</w>\nroy o</w>\ngrand prix</w>\nsut ton\ngo ftheday</w>\ndig i</w>\nãħĭãħĭ ãħĭãħĭ\nt les</w>\nvaran asi</w>\nerec ted</w>\ndiscip les</w>\ncont act\nðŁĺ µ</w>\nli d\nâ¬ ĩ</w>\nscen tre</w>\nradi ator</w>\ning tips</w>\ntrans itions</w>\nthursday motivation</w>\nchem ical\nsepar ati\nsal is</w>\nmi m</w>\ngeo graphical</w>\nbook fest</w>\n/ .</w>\nâľ ĭ\nv ae</w>\ncur rie</w>\nag garwal</w>\nacceler ation</w>\nthe ses</w>\nlg m</w>\nu mass</w>\npro portions</w>\nnat a</w>\nani ans</w>\nku ch</w>\nbe acons</w>\nap r\n@ #</w>\nðŁĴª ðŁı¾</w>\nnu ke</w>\nsher aton</w>\nki o</w>\nma kati</w>\npolit ico</w>\nmor ale</w>\nì Ļ\neconom ically</w>\ngg ly</w>\nss en\npa stries</w>\nintern ships</w>\nvic ente</w>\nfanta ken</w>\naveng ers\naccu se</w>\nslee pover</w>\nindic ated</w>\nthe dream</w>\nster one</w>\nren ders</w>\nfro st\nou i</w>\ngre gg\nd ore</w>\nâľ¨ âľ¨âľ¨</w>\npu gs</w>\nsat y\nnu mb</w>\nhems worth</w>\ntam i</w>\nla ssic</w>\nschi ff</w>\nigle sias</w>\nag awa</w>\n] \"</w>\nre shi</w>\ngame stop</w>\ndivor ced</w>\ntheat er\nclau di\nun conventional</w>\nprophe ts</w>\nac in\ntwel f\ntow ering</w>\nt ml\nsc lerosis</w>\nk wan</w>\nge ts\ndistur b</w>\nna ira</w>\nener g\npir acy</w>\npru itt</w>\nnoti fied</w>\nhen na</w>\nbra m</w>\nground water</w>\nbl s</w>\nopti mis\n$ )</w>\nluci e</w>\nbiz hour</w>\nfang irling</w>\ngr ills</w>\nor l</w>\nver se\nc ina</w>\nlaw less</w>\nartistson twitter</w>\ntele vised</w>\nmarshmal lows</w>\nradio head</w>\nbar r\nm fc</w>\nbre vi\nmmor pg</w>\ng aya</w>\nâĸ «\nsub titles</w>\nj t\ndisney land\nto bago</w>\nnh m</w>\ngroo ve\nfi awec</w>\n\" /</w>\nba o\nscra bble</w>\nom ni</w>\nff l</w>\num c</w>\nsi mba</w>\nali er</w>\nter rell</w>\nplu me</w>\nmi di\ndig nit\nco c</w>\nbru t</w>\nad ata</w>\nalche my</w>\nd sm</w>\nðŁĺĨ ðŁĺĨ</w>\nwin try</w>\nspa res</w>\ncu er\nconclu sions</w>\nto ys\nod or</w>\nfl ann\ngar vey</w>\nscrip tions</w>\ninspec tions</w>\ncat ap\nang lo\nst louis</w>\nheim er</w>\nat ay\ntr ich</w>\nen yc</w>\nchil ds</w>\nvent il\nmont p\nguiller mo</w>\ncircu lare\nz ell</w>\nmode led</w>\ncraf tsman</w>\nal ina</w>\nstimul ation</w>\ncashe w</w>\nju das</w>\nbest of</w>\nto ire</w>\nsusp ends</w>\nscol lege</w>\nreal ising</w>\nby tes</w>\nbloo ds</w>\nas si</w>\nðŁĴ ¿</w>\no hs</w>\nðŁį ĭ</w>\nscallo p</w>\nà¤ µ</w>\ngi fting</w>\ncamo gie</w>\nwil kes</w>\no zzy</w>\nðŁ¤ ¤\nver onic\nsav oy</w>\ndeme tri\nbaby girl</w>\nðŁĺį ðŁĺŃ</w>\nso x\ncly de\ninduc tee</w>\ncount down\nself care</w>\nà¤ ľ</w>\nvi ka</w>\ntor re\nphd chat</w>\npe ars</w>\naw h</w>\nsuff rage</w>\nle sn\nadmir ation</w>\nmp p</w>\nshark week</w>\nschul z</w>\nsantor ini</w>\nclo ver\n( *</w>\nstras bourg</w>\nex iting</w>\nso yu\nfinger print</w>\nche a</w>\nãĢ ľ</w>\nvin dic\nsong writers</w>\nso a</w>\nprou der</w>\nnam a</w>\n= ))</w>\nsimple st</w>\ndelici ously</w>\ngil les</w>\nu q</w>\nmn wx</w>\nep p</w>\nsh un</w>\nken nel</w>\nfall on\nðŁĲ £</w>\nsin d\ntra gically</w>\nout es</w>\nmodern ism</w>\nco ke\ngy n</w>\nspi on\nâĺ¹ ï¸ı</w>\nle am\ncompress or</w>\napolog ise</w>\ntwent yon\nfan atics</w>\nâĻ »\nsco tsman</w>\nsa wa</w>\nko u</w>\nas er\nà¸ ļ</w>\nwelter weight</w>\nphen om</w>\ntwick enham</w>\nstri a</w>\np out</w>\nka z</w>\ngi am\ncd p</w>\nho y\nemplo y</w>\nred mond</w>\nà¸ Ħà¸\nsm ere</w>\ntrance family</w>\nproto cols</w>\npie ce\nlu iz</w>\niter acy</w>\ncarl s\nunited states</w>\nhar med</w>\nphd life</w>\nch aw\nfoot prints</w>\nl Ã©\ncho ker</w>\nz ana</w>\nsli pper</w>\neric sson</w>\ninsul ting</w>\narticho ke</w>\nadvis ing</w>\nacquis itions</w>\nop or\nmut ations</w>\nre ar\nà¥ ģ</w>\npod cast\nwi ther\nkun g\níĺ ¸</w>\nwin slow</w>\ndi apers</w>\nðŁĵ¸ @</w>\nec ker\ncol lar\nhu ey</w>\ngi ro\nmono gram</w>\nkas ich</w>\nsi veness</w>\nmalay si\narom atic</w>\ngre s</w>\ngali leo</w>\nu ji</w>\nrob b</w>\ndr m</w>\nnone theless</w>\nas a\n: ></w>\nlo a</w>\nl np</w>\nat work</w>\nag t</w>\nlaksh mi</w>\npipel ines</w>\nid al</w>\nstre l</w>\nre all\nchain z</w>\nstone wall</w>\nsan sk\nðŁı ´\npied mont</w>\nhoste ss</w>\nci u\nt Ã©</w>\nanaly ses</w>\nwil helm</w>\nscott y\nrw by</w>\nmosqu it\nuse mb\nqu ins</w>\nðŁĳ İ\ntu cker\ns conf</w>\nspeci fications</w>\npsychi atry</w>\nbroo kes</w>\ns ils</w>\nol af</w>\nde to\nco di\ncli p\nfil th</w>\nwomancrush wednesday</w>\ngo to\nang erous</w>\nbe ale</w>\nw tc</w>\npaneli st</w>\nne x</w>\nlar sen</w>\nemili o</w>\ntab leau</w>\nh itters</w>\nconce ived</w>\nameric ani\nor tega</w>\nmar di\nÑ ĥ\npain tball</w>\nthir sty\nnew yorker</w>\netis ation</w>\ngo ss\nwe aker</w>\nu gh\ntro ll\nhar ga</w>\ndu al\nght ning</w>\nat ine</w>\nðŁĺİ ðŁĺİðŁĺİ</w>\ncook out</w>\npyrene es</w>\npo ss</w>\nauthent ication</w>\nsports wear</w>\nyun ho</w>\nkir o</w>\narchi pel\nshen ko</w>\nren der\nnov ation</w>\ndivin ity</w>\nðŁĳ £</w>\nsu fi</w>\nhumb ling</w>\nge opol\ndevote es</w>\nwait ress</w>\ntr ough</w>\npy ro\ni ba</w>\nbl ing\ngra f</w>\nepilo ts</w>\nbt r</w>\nof tball</w>\nbas king</w>\ndomin os</w>\nso om\nr ath</w>\nsher yl</w>\nqu el\nastronom ical</w>\nwel d</w>\ntrack list</w>\nsig nee</w>\nslee pless</w>\ncom man\nch ron</w>\nsumm on</w>\npure michigan</w>\ncri spr</w>\nsli p\nla gi</w>\nra q\num u</w>\nthal ap\nchar med</w>\nscru mp\nquad copter</w>\nski p\npeter sen</w>\nmun i</w>\nðŁĮ ¾</w>\nmon aghan</w>\ntra ys</w>\nick ed</w>\ncanad aday</w>\nte gr\nï¿ ½</w>\nhot ness</w>\nheavy metal</w>\nab ar</w>\ngop debate</w>\naz ul</w>\nspider man\nsun flowers</w>\nľ ë\nweb comics</w>\nbar d\nÐ ²\nnichol as\nslu sh</w>\nram an</w>\nmark ham</w>\nffici al\nff ler</w>\níĬ ¸</w>\nple ss\nanush ka</w>\nto to</w>\nsk aters</w>\npro wrestling</w>\ncompet es</w>\nay ala</w>\nmyster y\nthr ills</w>\nmp g\nindepend ently</w>\ny ul\nimper ative</w>\nformid able</w>\ntire less</w>\nst acking</w>\nton gues</w>\nmal tese</w>\npot ts</w>\nmat ti\nchar ting</w>\nchill out</w>\nsuper nova</w>\nome o</w>\nsky sports\nnu tty</w>\nðŁĹĵ ï¸ı</w>\nro han</w>\ninsp ired\nconcier ge</w>\nser ra</w>\nma kk\ngal at\nchi pp\nye v</w>\nì £\nreim bur\nop ul\nkimber ley</w>\ni eee</w>\nbre men</w>\nch itec\nor in</w>\nnak u\nbon kers</w>\nfoo ty\nemer gence</w>\nðŁĨ ĺ</w>\nsti p\nserge i</w>\nzo ey</w>\nai me</w>\nwou ld\ndy es</w>\ndestin y\nvinai grette</w>\ndri er</w>\ncirculare conomy</w>\nan archi\nss r</w>\nsch el\ncin er\ngro om\ndetermin ing</w>\ngar min</w>\ncal ais</w>\nincarcer ation</w>\nbu kit</w>\nno i</w>\nchelms ford</w>\nmckin ley</w>\nchi pped</w>\nbelong ed</w>\ntu mors</w>\nstr oud</w>\nmi i</w>\ninfluen za</w>\nwwen xt</w>\ntun dra</w>\ntele communications</w>\ncat sofinstagram</w>\nt ages</w>\nbeat ty</w>\no du</w>\nml kday</w>\noo per</w>\ndang le</w>\nak ley</w>\ncru mb</w>\nanti gua</w>\nti mbers</w>\nrou hani</w>\nðŁĴª ðŁĴªðŁĴª</w>\nha fi\n... !!</w>\nw cs</w>\ncoo p\nsn c</w>\nlit res</w>\nãĢ Ĭ</w>\nha z</w>\nco z\nk ant\ngreen field</w>\ncur ti\ny ale\nflye agles\nwhat soever</w>\nwor thing</w>\nrou lette</w>\nflyeagles fly</w>\nun da</w>\na inted</w>\nstand ing\nlusci ous</w>\nh pc</w>\neffic acy</w>\nash land</w>\nme ghan\nky wx</w>\nn pr\nbath tub</w>\nac os</w>\nh ani\nmar cor\nman tis</w>\nda isi\nbo ba</w>\nab bie</w>\nmu til\nvi al</w>\nspy der</w>\npo z\ng ti</w>\nel fie</w>\nnigh tw\nmetro id</w>\nanton i\nmad die\ndh ry</w>\ndar lings</w>\nten ds</w>\ntaek wondo</w>\natlan ta\nme ow\nchlo e\nãĥ İ</w>\nym es</w>\nsiber ia</w>\nk con</w>\ngu es\nmar iner</w>\nfac il\nazz le</w>\n[ ...\nhan nover</w>\nbav aria</w>\nvir go</w>\nte uk</w>\nu sps</w>\n) #</w>\nwall a</w>\nsam pson</w>\nneed less</w>\nver bally</w>\nhay ley\nbow led</w>\npi us</w>\nlam pard</w>\nham string</w>\nvol vo\nroad safety</w>\ncho king</w>\nsor bet</w>\na hem</w>\nhealthy food</w>\nbrai ded</w>\nhorticul ture</w>\ncr ative</w>\nche ek\nad do</w>\nthe force\nko ko</w>\nschiz oph\nj ie</w>\nw ada</w>\ntwentyon epilots</w>\nh bcu</w>\npro ton</w>\npau ls</w>\nlou isa</w>\nlat am</w>\nkyr gy\ncom pac\nsd k</w>\nsap i\n?? ?\nliber alism</w>\nep silon</w>\nai den</w>\nw usa</w>\nspra yed</w>\nbaske tball\nkim ono</w>\nblue wave</w>\nali as</w>\në§ Ī\nmug shot</w>\nce c</w>\ndo gre\nad ora</w>\nðŁĵ· @</w>\nkra kow</w>\nintrigu ed</w>\nexhau sting</w>\nastron omer</w>\nven ison</w>\nlady bug</w>\nci v\nbra e</w>\nus m</w>\nbri be</w>\nacup uncture</w>\npembro ke</w>\nke ating</w>\nchi e\ny ad</w>\nt si\nsm i</w>\nsee ding</w>\ngate shead</w>\nlis boa</w>\ngy p\ncanv ass</w>\nðŁĶ´ âļªï¸ı</w>\nop i\nni r</w>\nsoci etal</w>\nly te</w>\nati es</w>\nc sm</w>\nar tery</w>\nal in</w>\naka poor</w>\nabstr acts</w>\nâĢ¦ âĢ¦</w>\nteen wolf</w>\nne we\ntravel gram</w>\nsentim ental</w>\nper ched</w>\nhan del</w>\nho ek</w>\nf ay</w>\ncoordin ating</w>\nanim ate</w>\nman ian</w>\neffor t\njer ky</w>\nf ck\nadri enne</w>\nma bly</w>\ntra ding\nmy el\nspi ro\nsol a</w>\nstor ing</w>\nover drive</w>\nmonday morning</w>\ndream team</w>\npul se\nbon di</w>\nber nie\npgat our</w>\ntri poli</w>\nson am\nplat t</w>\nâļ ¡\nag roup</w>\nîĲ Ĵ\ninv ading</w>\nv cu</w>\nk ell</w>\nÃ± os</w>\nun dead</w>\npod casting</w>\nmercede sam\nmana fort</w>\ncor tex</w>\nque so</w>\nimpecc able</w>\npal mer\nwil doz</w>\nsport sc\nguacam ole</w>\ndispen ser</w>\ncate gori\nstun ts</w>\nper il\ninvit ations</w>\ndune din</w>\nxi e\nachi eves</w>\nsaf er\npre ds</w>\nph an</w>\nknuck les</w>\nk ak</w>\nigno res</w>\nlovemy job</w>\naru ba</w>\nound ation</w>\ndatac enter</w>\nco vert</w>\ngr ing</w>\ncou ple\nØ§ Ø±\nvol i</w>\nmc cle\narti sans</w>\nlu do\nkal am</w>\narom a\nunder taker</w>\nhu la</w>\nwiz kid</w>\ngu mb\ngod frey</w>\nbakers field</w>\nker n</w>\nengine er\ncar ve</w>\npal in</w>\nguaran tees</w>\npe bbles</w>\nb ays</w>\nzi eg\nfin k</w>\nâ¬ĩï¸ı â¬ĩï¸ı\ndown pours</w>\nro chelle</w>\nrasp berry\nðŁĺ ®\ngra phies</w>\nstom p</w>\ncaf es</w>\nari zed</w>\nutt ar</w>\ncal vary</w>\ndri e</w>\ncrusad er</w>\nbus an</w>\ntux edo</w>\nsi u</w>\nseam us</w>\ncul tured</w>\nblan chard</w>\ntown house</w>\nge red</w>\nbutter milk</w>\nflu ctu\nroger federer</w>\nhel i</w>\nðŁ¦ ĥ</w>\nu ous</w>\nram esh</w>\nmu ppets</w>\nemail marketing</w>\nye ss</w>\nbr ice</w>\nri zio</w>\npel o\ndonnein arte</w>\nu rable</w>\ninve stin\nbump ing</w>\nraji v</w>\nsav a</w>\nthro wer</w>\nfore x\no hhhh</w>\nth rust</w>\npull man</w>\nr fid</w>\nsep sis</w>\nle ed</w>\nfri ght</w>\nroun ding</w>\nne b\nph ins</w>\nai sha</w>\nutili zing</w>\nsqu ats</w>\ngold smith</w>\nj ic</w>\nbo ks</w>\nvau s</w>\ni po\nexclu sion</w>\ntari ff</w>\npo kes</w>\nmin al</w>\nland s\nen force</w>\nwashington dc</w>\nor char\ng x</w>\nmar ys</w>\ney our\naussi e\nbak ers</w>\nun popular</w>\nlatin os</w>\nlar ge\npu tnam</w>\nbol o</w>\nwa de\npel o</w>\ndi zz\nob struction</w>\nfla ppy</w>\nweare the\ndepend ence</w>\npajam a</w>\ne te</w>\ny ann\ne wan</w>\ndisc la\na ay</w>\nkar ina</w>\ne ic\nan trim</w>\nw soc</w>\nneg atively</w>\nkai do</w>\nfotogra fia</w>\ndh ru\ncolo ssal</w>\nmcle od</w>\nk wang</w>\nmani pu\nex hilar\nus atoday</w>\nsummer slam</w>\nco les\ntapro om</w>\nunbeat able</w>\nde ma\ntic ks</w>\nk ling\nfil s</w>\ncampaig ners</w>\nà¸ ķ\nbrew ster</w>\naudu bon</w>\nqu ay\nch s\nki gali</w>\nd ler</w>\nstrength ens</w>\nsom al\nsign ingday</w>\ngol ds</w>\npig ment</w>\norche stral</w>\ng q\nlin kin\nðŁı ĩ</w>\nta w</w>\nalgar ve</w>\nho v</w>\near le</w>\ngold fish</w>\nam ig\nex er\nben in</w>\ndru id</w>\nðŁĲ ¸</w>\nshe m</w>\nquat tro</w>\nmer cen\nmen te\nincorpor ating</w>\nbon anza</w>\nstate fair</w>\nen de</w>\nconcep tions</w>\ne es</w>\nâĻ¥ï¸ı âĻ¥ï¸ı\nd son</w>\nfire arm</w>\norb ital</w>\nwe h</w>\nmulti p\nfo b</w>\nrequi em</w>\np light</w>\nthou se\nsa id\noc re</w>\nremem brance\nn old</w>\nchi pping</w>\nbe v\ner t\nca thy\nsy m</w>\nri ggs</w>\nm ley</w>\ndialo gues</w>\nsl ender</w>\nhow l</w>\ngau teng</w>\nwd w</w>\nto bi\nsmo kes</w>\nim plo\nb pm</w>\nad n</w>\nmom basa</w>\ncap sul\nbloom field</w>\nartic ul\ncle o</w>\ngoog led</w>\nflu ffy\nl ard</w>\nen zyme</w>\nve sti\nibra hi\nfl ame\ne mea</w>\nout ages</w>\ndispro por\nble ak</w>\nan sel\nick er</w>\nst louis\nstock market</w>\ngood friday</w>\nsau lt</w>\nstal led</w>\npro m\nep som</w>\nb Ã©\nthe se\nsau ces</w>\nme w</w>\nlit fest</w>\npre d\nre u</w>\nkar ak\nsi enna</w>\nell in</w>\nbio technology</w>\nï¸ıâĥ£ -</w>\ntac tic</w>\nsa in</w>\npor k\nmon za</w>\nka j</w>\nlu sh\ncompart ment</w>\nchang ing\nshraddha kapoor</w>\nfo al</w>\nar tem\ncu ando</w>\ncan ola</w>\nori ente\nme sse</w>\nd ited</w>\nbr c</w>\nbox er\nbbc two</w>\ns st</w>\nment day</w>\nem ing</w>\nde wey</w>\nkof i</w>\nâŀĸâŀĸ âŀĸâŀĸ\nreali zation</w>\nsmo l</w>\ntw ood\nsan je\nflag staff</w>\nber wick</w>\ncor set</w>\ncan ary\nwhistle blower</w>\net ched</w>\ncom posing</w>\nsquee zed</w>\nbow er</w>\nauto desk</w>\nne h\nmathi eu</w>\nba ja\nÅ Ĥ\nhy dra</w>\nda im\nam eri\ninsi sted</w>\nmer lot</w>\ngar ros</w>\nheart news</w>\ngaine sville</w>\ncut ler</w>\nbo de</w>\nðŁĺī ðŁĺī</w>\nlew es</w>\nscoun try</w>\ng sa</w>\nus u</w>\ncc m</w>\ngod awgs</w>\nphara oh</w>\ncra e</w>\nmor ley</w>\nhyp noti\nf ades</w>\nneur ons</w>\nfu zz</w>\ning co</w>\nhigh landers</w>\nstar k\nvig ne\npac kets</w>\namar illo</w>\nreu ben</w>\ninsul ts</w>\nbas ic\nvec tor\nn me</w>\nac ruz</w>\ntro s</w>\ntransm itter</w>\nðŁĺ ŀ\ninterpre t</w>\nðŁĺ ²\npre quel</w>\nmc gowan</w>\ndis semin\nðŁĴĺ ðŁĴĺ</w>\nmascul inity</w>\nindie gamedev</w>\nali ve\nte t\npe tal</w>\nema iled</w>\nar med\nko o</w>\nhe er</w>\nba ird</w>\nsuper junior</w>\nmetro polis</w>\ndelav in\ndecl ines</w>\nstit utes</w>\nÛ ģ\np tbo</w>\ng lan\ncho res</w>\ne aling</w>\nchri ssy</w>\nste mc\nvi an\nassassin ated</w>\npron ounce</w>\nilleg als</w>\ndiscover y\ncav ill</w>\nfri fotos</w>\nf al</w>\nso i</w>\nsabot age</w>\nt int</w>\np dc</w>\nðŁİīðŁİ Ī\nãĤ Ĭãģ\nji o</w>\nendeav or</w>\nin sig\ncommit tees</w>\nshe arer</w>\nme tz</w>\nmar rying</w>\nh dd</w>\ng by</w>\nfre t</w>\ntri sh\npu l</w>\nscrip ted</w>\nsa ki</w>\nl w\nke ye\nshim i</w>\nnan aimo</w>\nca h</w>\nÃ «</w>\ntem pered</w>\nici an\ndu gg\ndish washer</w>\nair field</w>\ns rugby</w>\ngr inch</w>\ny st\nr ms</w>\nmahat ma</w>\nlan kan</w>\ndisc ar\ndige stion</w>\nno des</w>\nl ls</w>\nom ic\ngu tter</w>\ntis garh</w>\nfeder ico</w>\nelection day</w>\nbo he\nmaster card</w>\nfire ball</w>\nâľ Ķï¸ı\noy ster\np ong\ndo k\nen route</w>\nm vc</w>\nbeat the\nali stair</w>\nshu b</w>\nsh aming</w>\ncherno byl</w>\nghi bli</w>\nthe s\npin ion</w>\nd bs</w>\nsal ts</w>\nic tion</w>\nepi ph\nnc pol</w>\nin convenience</w>\nwhit ley</w>\ninspec ting</w>\nwood ley</w>\nwi ener</w>\nskil let</w>\nno les</w>\nm ca\nh ina</w>\na sha\nwilling ness</w>\nwell ness\ntam ed</w>\nshow time\ndis advantaged</w>\nber nat\nus n</w>\nmission aries</w>\ncoun selling</w>\narrog ant</w>\nquant itative</w>\nleg alization</w>\nho dge</w>\nenergye fficiency</w>\ncameron dallas</w>\npos sessions</w>\np bb</w>\nharris burg</w>\nv g\nhindu ism</w>\nhappy thanksgiving</w>\nfi b</w>\nre acting</w>\ntweeta picture\npol iti\nmu ppet</w>\nhur rah</w>\npac e\ncoast guard</w>\nguar ded</w>\nas am\npar ry</w>\nfore very\nx q</w>\noom f</w>\nke anu</w>\nj ind\nri st</w>\ncustomer service</w>\nsac red\nðŁĺ º</w>\nton er</w>\noccur rence</w>\nmat u\nval dez</w>\nred d</w>\nis ak\npower rangers</w>\npe asant</w>\nraj ini</w>\nabra ham\ne mil</w>\ncar do</w>\ntr il\nhair styles</w>\nobsole te</w>\nsam pler</w>\ndirec tive</w>\ndelavin kisses</w>\nver ton</w>\nglo s</w>\nsp ay\npaler mo</w>\ncom ets</w>\nman ziel</w>\nchicag of\nski pped</w>\npic torial</w>\nh ant\nb mi</w>\na ol</w>\nre opens</w>\npad dling</w>\ndevo s</w>\nfra ud\nbas eline</w>\nque ues</w>\nsp ired</w>\nsn are</w>\neu ve</w>\ndescri ptions</w>\ndaisi es</w>\nca ching</w>\ngall eria</w>\ntri mmed</w>\nstin o</w>\nrecy cla\nic ular</w>\nbir ken\nraw lings</w>\nfli x</w>\nchic as</w>\nb gt</w>\nlik eli\nargy ll</w>\nthel ove\nga ston</w>\nbl anca</w>\nha k</w>\nf one</w>\nsailor moon</w>\nh aci\nima c</w>\nfl yn\nde can\nbel les</w>\nap ic\nzo g</w>\ntaun ton</w>\ncon stance</w>\nlasag na</w>\nker nel</w>\nin ka</w>\nhar bor\ncollec tively</w>\ncalcul ated</w>\nav ille</w>\nshil pa</w>\npur du\ngi mm\nfun er\na est</w>\npembroke shire</w>\nnighting ale</w>\nn unes</w>\nhyper tension</w>\nhu bert</w>\nsli ders</w>\ninfer tility</w>\ncomm ended</w>\ntransat lantic</w>\nmetr ical</w>\n!! @</w>\nÅ Ł</w>\nss g</w>\nbac ca</w>\ninver ted</w>\nfun factfriday</w>\nit ans</w>\nalbu m\nacqu ainted</w>\nri er\nwhel an</w>\nsar ab\nmu e</w>\nsnoo ze</w>\npi ff</w>\nagre eing</w>\nsp itting</w>\njer maine</w>\nn ye\nâľı ï¸ı</w>\nam bush</w>\nze ph\ncon greg\nunivers ity\ns app</w>\nwann abe</w>\npat rice</w>\nib d</w>\ndo glo\nfri dges</w>\nsun d</w>\nking ston\nar gon\nkam en</w>\nhardro ck</w>\nds ley</w>\ndo lores</w>\nì °\nota ku</w>\npi ping</w>\nbe having</w>\nâŃĲï¸ıâŃĲï¸ı âŃĲï¸ı</w>\nblue bird</w>\nan sari</w>\nteapo t</w>\nfire work</w>\ncro p\nlog ans</w>\nty ped</w>\nthick ness</w>\nig ers\nc fp</w>\ndys functional</w>\ncontra sting</w>\net ty</w>\naston martin</w>\ntx st</w>\ndra grace</w>\nat tributes</w>\nmarath on\nmanu scripts</w>\njohn stone</w>\nðŁĺ± ðŁĺ±</w>\nbo er</w>\nay u</w>\naru gula</w>\npoo rest</w>\ncon du\nassu mption</w>\nanag h</w>\nno h</w>\ndelav in</w>\nsit ter</w>\ng Ã¶\nmor ow</w>\nkick start</w>\ncom i\ngl acial</w>\nghe ad</w>\nba in\nker shaw</w>\nen dof\nfre ud</w>\nom at\ni af</w>\nhu g\nsign up</w>\neach other</w>\ndefin ite</w>\ntu bing</w>\nshak ira</w>\nðŁĳı ðŁı½\nuu uu</w>\nsw in</w>\nsham bles</w>\nol as</w>\nsk ell</w>\nbrit ain\nkn w</w>\nclu tter</w>\nom y\nj ens</w>\nhang ed</w>\ncity scape</w>\nscra ps</w>\nun locking</w>\ndead liest</w>\ner no</w>\nbreast cancer\na it</w>\ninspec t</w>\nfu ri\nðŁĴ Į</w>\nku d\nju le\nor ah</w>\nmi ds</w>\nm dt</w>\nbur gring</w>\nr attle\npu sa</w>\nstal k\ncle ans</w>\niss ance</w>\nz ek</w>\nworth it</w>\nnam eis\nmusko ka</w>\ncouncil man</w>\nurban art</w>\nbar rac\nun solved</w>\ntu l</w>\ng ita</w>\nwhite board</w>\nsoy beans</w>\nem ent\ncont i</w>\nsaturday motivation</w>\nconveni ently</w>\ndoc king</w>\nt ado</w>\nâı ©</w>\nsp ino\npuppy love</w>\npo f\nfabric ated</w>\nrobb ers</w>\nadop ts</w>\nti fied</w>\nkk r</w>\nindulg ence</w>\nnotic eable</w>\nmacqu arie</w>\nchap el\nsensu al</w>\nki ko</w>\nmelan oma</w>\nlore tta</w>\nli ance</w>\nab en\nsp lus</w>\nga al</w>\nac ele\nlib dems</w>\ncompar isons</w>\nðŁĮ µ</w>\nrhy thms</w>\nmer y</w>\nen capsul\nnap ier</w>\nðŁĳĮ ðŁĳĮðŁĳĮ</w>\nðŁĳ Ĳ</w>\nplat z</w>\nfre sno\nre formed</w>\nran bir</w>\nel it\nthe best\nbhu shan</w>\nvin nie</w>\nimpro vised</w>\ns ittin</w>\nre created</w>\ne ba</w>\nec ker</w>\nac rob\npon te</w>\ncor d\ngi ddy</w>\neur usd</w>\nfe ver\nintu ition</w>\ngar i\ndum mies</w>\nbud weiser</w>\namend ments</w>\nte tra\nsch nit\nay as</w>\nmar ys\nci st</w>\nk ani\nker mit</w>\nðŁĺ±ðŁĺ± ðŁĺ±</w>\ntin ker</w>\nstrol ling</w>\ndi visional</w>\nniger i\nomin ous</w>\nmenstru al</w>\nkar ab\nk hy\nbw fc</w>\npan handle</w>\nl illi\nwell er</w>\nstra pped</w>\nson the\ntransfer ring</w>\nethe real</w>\nsne aks</w>\nru dol\ngab les</w>\njac king</w>\ncin code\nfor tune\ncanadi ens</w>\ncon for\nab normal</w>\nfrank lin\ntit a</w>\nmu la</w>\npersi st</w>\ncu ties\nki el\nðŁĩ± ðŁĩ\nher mann</w>\naw k</w>\nfi asco</w>\nko to\nwe ta</w>\nhi ker</w>\nbudd y\npreven tive</w>\nmcgra w</w>\ngame boy</w>\nforsy th</w>\ntop shop</w>\nsi ob\nsad h\nin tram\nfollow art</w>\nso aps</w>\ndragon ball\nou x\nmorri son\nà¹ ĥ\nlu bric\nadul thood</w>\nmorri sons</w>\nâļ łï¸ı\nher mo\nta ka</w>\nstall one</w>\nmis use</w>\nteam gb</w>\nra gha\ncon fined</w>\nat y\nhom ophobic</w>\nnw o</w>\nsky news</w>\nho ya</w>\nac rosse</w>\nwi iu</w>\npur Ã©e</w>\njed dah</w>\nðŁ¤ §</w>\nadvis ers</w>\nph ine</w>\nan is\nscrump tious</w>\në° ķ\nc ke</w>\nvin y\nter m\ns dc</w>\no do</w>\nhome school</w>\nvas c</w>\nleop ards</w>\ndebor ah\nillic it</w>\ncur ran</w>\nas roma</w>\nnau ght</w>\nmar ig\nbrand i</w>\nem p</w>\nðŁĺį ðŁĳĮ</w>\nî Į\nsu spend</w>\nlu z</w>\niniti ation</w>\nsch aft</w>\njensen ackles</w>\ncraw ler</w>\npost doc</w>\ndes ks</w>\ntrail blazer</w>\nden omin\ntri x</w>\nno ise\npo et\n± ï¸ı</w>\ns mug</w>\nvol atile</w>\nproof s</w>\npharmac ist</w>\nsardin ia</w>\nmash able</w>\nkim chi</w>\nco ed</w>\nschal ke</w>\ndoo dled</w>\nc sw</w>\nsh ur\nro x</w>\ndo k</w>\nchris brown</w>\nmathemat ician</w>\nab ound</w>\nang elic</w>\nrock ford</w>\nd ole</w>\nyor kers</w>\nms n</w>\ng man\nxavi er\nbor rowing</w>\nmark ings</w>\nlongh orn</w>\nk ja\ndiver ted</w>\nmm it</w>\neuph oria</w>\nay yy</w>\nte a\npa h\nck i</w>\nun cut</w>\nli ven\nky ung</w>\nfan art\nmer ing</w>\nred ding</w>\namo vie</w>\ngri di\nc thulhu</w>\nschol arly</w>\nju dah</w>\nth bewithyou</w>\neu calyp\nðŁĲ ķ</w>\nhert fordshire</w>\ncour troom</w>\nby u\nauc tioned</w>\nple ase\nmar cia</w>\nê° ĵ\nsucce eded</w>\nel as</w>\narvin d</w>\nt lot</w>\nsaig on</w>\nre tt\nra kesh</w>\nfd ny</w>\nas en\nse bring</w>\ngladi ators</w>\nyou know</w>\nv lad</w>\ngol a</w>\npar ap\nÑĢ Ð¸\nsab cnews</w>\none team</w>\noh l</w>\nsun e</w>\nri j\ncd c\nstar gate</w>\nrun down</w>\nplat o</w>\nph c</w>\nchat ter</w>\nra viol\nmn f</w>\nmand ala</w>\nli et</w>\nà¸ ķ</w>\nmari a\nhun gover</w>\nconsoli dation</w>\nfer rell</w>\ntradition al\nilove art</w>\ngal ap\nðŁı Į\nque zon</w>\nespa Ã±a</w>\nðŁĩ¨ðŁĩ Ń</w>\nho bby\nsteam boat</w>\nmali gn\nguil lau\npro hi\nits me\níĥ Ģ\nin scription</w>\nal z</w>\nmari an\nk ade</w>\nmm on</w>\nadju sting</w>\nne sts</w>\nintern ally</w>\nci r</w>\nvik ram\nmal ala</w>\nk ph</w>\nfel icia</w>\nthe real</w>\ncap tivity</w>\nat is</w>\nmarcor ubio</w>\nkale ido\nche v</w>\nmano j</w>\nle more</w>\ngent ri\nvi ps</w>\ntro pe</w>\n\" âĢĶ</w>\npair ings</w>\nmal nutrition</w>\nfr ay</w>\ndesig nation</w>\nbrun omars</w>\naz e\ntor rential</w>\npan zer</w>\nga il\nunder the\nthe ological</w>\nschizoph re\ndazz le</w>\nfreder ic</w>\nmo par</w>\nad illa</w>\nso ggy</w>\nra un\nmedi ocre</w>\ncolo rec\ni fe\np inst\nblu ef\nÂ ²</w>\nworld water\ngir oud</w>\nclar inet</w>\nad olf</w>\ntar antino</w>\nreceip ts</w>\nassu mp\nðŁĳ Ł</w>\ncoffe es</w>\nâľĬ ðŁı¾</w>\ndu plex</w>\ns of</w>\nr x\nlin o\ntimber wolves</w>\npan dit</w>\nmo tm</w>\ne ga</w>\nay ama</w>\nach s</w>\noutsi der</w>\nll en\nco er\ntil ly</w>\ncheese burger</w>\nma ds</w>\nple dis</w>\nemp ty\nnational parks</w>\naz iz\np mi</w>\njun kies</w>\nf ener\nsq n</w>\nÃ¨ s</w>\ngener ation\ncleop atra</w>\nbhuban es\nmosqu es</w>\nty free</w>\npopp ins</w>\ntw c</w>\nor well</w>\nn age</w>\nka whi</w>\nhol low\ndal ai</w>\nÂ¨Â¨ Â¨Â¨\nou ro\nm health</w>\ngi on</w>\naz o</w>\nvis as</w>\nreneg ade</w>\nre ic\nw sop</w>\nðŁĴļ ðŁĴĽ</w>\ne chel\ntox icity</w>\nmÃ¼ n\nbun k</w>\nstimul ating</w>\nasth our</w>\n\\ '</w>\nep h</w>\nende mic</w>\ncn bc\nshrin king</w>\npeabo dy</w>\nmichel angelo</w>\ncan yon\nwal e\nsu mi</w>\nsi ders</w>\ninu it</w>\n? .</w>\nprofession alism</w>\ndr acing</w>\nplat oon</w>\np ons</w>\nout bound</w>\nmaple leafs</w>\nde sol\ncen cy</w>\na than\nver ma</w>\nru bbing</w>\nok an\nðŁĳ ł</w>\nmull ins</w>\nauthent ic\nÅ į\nalman ac</w>\nga ia</w>\nbb q\non imo</w>\nke h\nty a</w>\ntou ts</w>\ny av\nre posit\n, .</w>\nwi ght\nse eyou\ncal lof\ndone sia</w>\nbar gaining</w>\ngr anth\nsd su</w>\namphi theater</w>\np su\nre watching</w>\nwine tasting</w>\npeak district</w>\ndete cting</w>\nthur man</w>\nphe e</w>\nèª ķ\nu mich\nre r\nsculp ted</w>\ngo le\nname sake</w>\nðŁĶ ģ</w>\nserv icing</w>\nbau gh</w>\npu gh</w>\npen cil\ndar th\nmunch kin</w>\nat orium</w>\nten ers</w>\nsun y</w>\nrolling stones</w>\nmag ing</w>\nstar rer</w>\ni dris</w>\nfe instein</w>\nag ron\nâĺºï¸ı âĺºï¸ı</w>\nsupervis ed</w>\nchamele on</w>\naggre gate</w>\nsucce ssive</w>\nmo gul</w>\ninst yle</w>\npol dark</w>\ncustom e\nohio state</w>\nha ya</w>\nci des</w>\nbroker age</w>\nangel ou</w>\nfifa wwc</w>\nde forestation</w>\nal ton\npam ph\nhu gged</w>\nho bo</w>\nchange able</w>\nku ber\nbur roughs</w>\ndemon etisation</w>\ncape cod</w>\nvers atility</w>\nor ice</w>\nle ila</w>\nwomenin science</w>\ntu a</w>\nhe dges</w>\nembarrass ment</w>\nali fe\nso ars</w>\nni ghter</w>\nhy mn</w>\ngi pp\nchas u\ntech s</w>\nni all\nk illa</w>\nhi ka</w>\ncam els</w>\nvalu e\nÂ ¢</w>\nsc oops</w>\nmah moud</w>\nclu sive</w>\nadri ana</w>\npac o</w>\noz il</w>\nun as</w>\ntransl ations</w>\nwhispe rer</w>\ns bi</w>\nbu xton</w>\nbio tics</w>\nindi ffe\nken ney</w>\nk lar\net ching</w>\nbarra best</w>\ninst ability</w>\nse ine</w>\nvo tel\nblo gged</w>\nwhis key\nmy space</w>\nt ant\nlan dia</w>\ngive back</w>\nillu s</w>\naw ak</w>\nac ab\nf bloggers</w>\ncloud computing</w>\nblat ant</w>\nsyri ans</w>\nband ra</w>\nsty n</w>\nan em\nke ted</w>\nkar thik</w>\nbarun sob\npin ot\ngu bernat\ngay e</w>\narti ste</w>\ni fied</w>\nconven tions</w>\nhu an</w>\ngeni uses</w>\neeee ee</w>\nfol ly</w>\nsomer ville</w>\npride month</w>\nðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸</w>\nchemo therapy</w>\npaul s\nbak ar</w>\nìĦ¸ë¸ Ĳ</w>\ntaiwan ese</w>\nfol lo\nc ss\nre ign\nnn nn</w>\nfla un\ncatastro phe</w>\niti es\nfrag ments</w>\nextre mists</w>\nym oun\ncar men\neze kiel</w>\nconne cting</w>\nse h</w>\nman ta</w>\nremodel ing</w>\nwe ymouth</w>\nat oms</w>\nce m</w>\nne well</w>\nlu mi\nthe open</w>\nmo c\nmili band</w>\ng land</w>\nz shq</w>\nmag gie\nmani acs</w>\nm sp\nad y\ncre ams</w>\nle anne</w>\ne sta\npy g\naf finity</w>\npray er\ndun bar</w>\nligh troom</w>\nac adi\nwyn onna\nroman tic\nstate dept</w>\nsick le</w>\nwh os\nlam o\net our</w>\nfin ity\nshru b</w>\nshar pen\npun dit</w>\ned on</w>\naf ore\nmar s\njeff ery</w>\nter ps</w>\nmedal list</w>\nkath arine</w>\naccu sing</w>\nta z\nroy d</w>\nfrom home</w>\nconfron tation</w>\nalle gh\nðŁĳī ðŁĳī</w>\nrefresh er</w>\nran veer</w>\nnever land</w>\njo jo\nlu crative</w>\nen am\nca ver\npa edi\nman jaro</w>\nflu ids</w>\nthe ssal\noppre ssed</w>\nmu ss\njoh anna</w>\nØ ®\ncn g</w>\nbuil dthe\nsett les</w>\ns ith</w>\nfu ego</w>\ncl amp</w>\nar ag\npay er</w>\nted x</w>\nmand y\ninter stellar</w>\nfr c</w>\nch and</w>\nb cc</w>\nmo lo\nlen til</w>\njohan sson</w>\ngrims by</w>\nnature lovers</w>\nðŁļ¨ ðŁļ¨ðŁļ¨</w>\nshin de</w>\nx in</w>\ninternational dayof\ntransiti onal</w>\nsat a</w>\ncad dy</w>\nwo d</w>\nif u</w>\nha ys</w>\nholl yo\nj ang\nir c</w>\nco im\ngrad able</w>\n\" \"\nðŁį ´\nà¦ ¾</w>\na el\nn yo\nwest lake</w>\ntime out</w>\nsof i\nphenom ena</w>\ncultiv ation</w>\nag no\nun armed</w>\nso t\ncon j\ngen o\nroyal navy</w>\nnutriti on\nfair mont</w>\nti relessly</w>\nsn g</w>\nre ty</w>\nmic a</w>\nlu cent</w>\nslo ane</w>\ndroo l</w>\nriz al</w>\nod ell</w>\ncritici zed</w>\n. '\"</w>\nla ze</w>\ndeser ted</w>\nco der</w>\npra s</w>\nl illian</w>\nitiner ary</w>\ndav y</w>\nan ap\nwhi pping</w>\nhobo ken</w>\nkare ena</w>\nçľ Ł\nvi us</w>\nter n\nnan tucket</w>\nmis understood</w>\nbu laga</w>\nst ant\nchin ook</w>\nz am</w>\nreli es</w>\nd ss</w>\ned mond</w>\nsket chy</w>\nm ell</w>\nfe x\nrec tor</w>\ndist ill\nday dream</w>\nwine maker</w>\nri pley</w>\nbillion aires</w>\nhel ene</w>\nati f</w>\ncul prit</w>\nbertr and</w>\nwou ldnt</w>\nma pped</w>\nv ak</w>\ngla dly</w>\nparliam ent\nkidlit art</w>\nware ness\ngoli ath</w>\nâĨ ĵ</w>\nview point</w>\ntat ted</w>\nfu ls</w>\ndor sey</w>\nang lers</w>\nli ds</w>\nki ya</w>\nbow les</w>\nbe h</w>\nb ite</w>\ncompati bility</w>\nance stral</w>\npro x\nbeha ved</w>\ngubernat orial</w>\nch field</w>\nsab an</w>\nz h</w>\nteen y</w>\nshibu ya</w>\nholli day</w>\npan cy</w>\nâĿĦï¸ı âĿĦï¸ı\nseun gri</w>\n? ,</w>\nðŁĩ¦ ðŁĩ·</w>\nim itation</w>\nimpac tful</w>\nany i</w>\ngene vie\naÃ± os</w>\nbate man</w>\ngli der</w>\naf ar\nra sheed</w>\neffor tless</w>\nsh war</w>\ndach sh\ner un</w>\nat os</w>\nkin i</w>\nch d</w>\nkha ki</w>\nk lin</w>\nfelici dades</w>\nbel o</w>\nas l</w>\nto ppers</w>\nfin ley</w>\nstac ey\nrigor ous</w>\nkar ting</w>\nle ppard</w>\ncar michael</w>\nbe ret</w>\nc se</w>\nak hi\nmer ingue</w>\nab an\nha ke\nger i\ner jee</w>\nre sto</w>\ncomm anders</w>\npr it\nfl or</w>\nad ven\nex termin\nremain der</w>\nå Ĳ\nes g</w>\nmartin o</w>\nlulla by</w>\n| @</w>\nmi gn\nin store</w>\nbig bang\ncor di\ncau ley</w>\nante bellum</w>\ndg ate</w>\ncro ck\nspan dex</w>\nscaf folding</w>\nore os</w>\nê°ĵ ìĦ¸ë¸Ĳ</w>\npom ona</w>\nma uro</w>\nuni versi\nre mi</w>\naf ootball</w>\nt ant</w>\nsm alls</w>\nne h</w>\nworl do\ntropic al\nmor ph</w>\njav elin</w>\ngla r</w>\narqu itec\nreminis cent</w>\ntu bs</w>\nspide y</w>\nmake u\nsyl la\nprogressi ves</w>\nblo t</w>\nshor ten</w>\nkeep in</w>\nch ak</w>\nang st</w>\nsuper food</w>\ndecad ent</w>\nston y\nneuro logical</w>\nar boretum</w>\nann ak\nfe ma</w>\nper cu\ndis respectful</w>\nsmall biz\nlo x</w>\nco om\nc sc\nbs bi\npre valence</w>\nhim ss</w>\nesp an\nmo ga\nfr ampton</w>\nsky map</w>\nmas se\nlevi athan</w>\n( ).</w>\nnoctur nal</w>\ncar ameli\nang or</w>\namne sia</w>\noutsi ders</w>\nshe alth\nrhin o\nant ag\nag io</w>\nðŁĴ° ðŁĴ°\ntake me\nkab addi</w>\nc si\nm sh\ncoch rane</w>\nthessal oni\nsil a</w>\nha us\ndu sting</w>\nobe se</w>\nmack lemore</w>\nmani sh\nlen in</w>\nm dc</w>\ngro wn\nshef field\ns rs</w>\nke le\ncar son\nch um</w>\ndah lia</w>\ncan tore</w>\nopp o</w>\nhow ling</w>\ncyber crime</w>\nsur realism</w>\nsc ran\nfa iz\nthre n</w>\nrac ists</w>\nr out</w>\npk not</w>\nse mana</w>\nsin i\nmc cull\nma chi\nalfon so</w>\ny b\nsar dar</w>\nkend rick\nden g</w>\nreci pro\non f</w>\ndoom sday</w>\nbri bery</w>\ncustom iz\nart is</w>\nc pi</w>\nðŁĻĪ ðŁĻĪ</w>\nsla va</w>\nlet te\nen s\nâĿ¤ï¸ı ðŁĺĺ</w>\ncra yon</w>\nad an</w>\ntr c</w>\nmigr ate</w>\nsimp son\nrow ers</w>\nking sley</w>\nfarmers market</w>\nshee han</w>\nne phe\nbor non\ncar ton</w>\nmic key\nall ure</w>\nu lu\nsli pknot</w>\nheb do</w>\ngui do</w>\ndog celebration</w>\nonline marketing</w>\nacceler ating</w>\n) ..</w>\norigin ated</w>\nmacar oni</w>\ned tech\nout field</w>\nmit z\ndisc us</w>\nadverti ser</w>\nman or\nha shi</w>\ndescri p\ncap ita</w>\nful bright</w>\nrecep tor</w>\ncon n\ncon ey</w>\nspion age</w>\nr attle</w>\npre st\nu li\nblog post</w>\nacker ay</w>\n) âĢ¦</w>\nred velvet</w>\nmat th\ninspir ing\nb sd</w>\nker ri\npo con\nmil lar</w>\nre pur\naccent ure</w>\nä ¹\nram bo</w>\nragnar ok</w>\ndele ting</w>\nbritish museum</w>\npat ory</w>\nleip zig</w>\nflori an</w>\nsci fi\nin ers</w>\nbr ate</w>\nyo y</w>\nmelis sa\nab er</w>\nma sa</w>\npo te</w>\nmosquit oes</w>\ntranspl ant\nr pa</w>\n; ))</w>\nbast ille</w>\nyl an</w>\njoye ux</w>\nmelo dic</w>\ncap tions</w>\natri st</w>\nroch dale</w>\ngott i</w>\npew die\ncuties aturday</w>\nwho is\naqu aculture</w>\ntiv a</w>\nsp el\nhe ss</w>\nha ji</w>\nfred die\nco per\nbrand o</w>\nv k</w>\nphoto book</w>\n* ,</w>\nmy dayin\nmicha ela</w>\nbrune i</w>\nsr ini\nin te</w>\nÄ ±</w>\nde ol</w>\nd fc</w>\nsepar ately</w>\nbun d</w>\nve sts</w>\nto c\nme ck\nrein forced</w>\nconstra ints</w>\ncar roll\nsq ft</w>\nre ver</w>\ncam per\nbird man</w>\nin action</w>\ngener ators</w>\ntriumph ant</w>\npe sts</w>\no vo\ngy pt</w>\nal amo\nsc aled</w>\nsuresh pp\nsd n</w>\nis mo</w>\ngi os</w>\n) @</w>\njustic eleague</w>\nrestaur ant\ngab i</w>\nden gue</w>\nnext gen</w>\nexemp li\nap ex\ninspir ational\ndown side</w>\nkid z</w>\nu pl\net na</w>\nalvar o</w>\nfel dman</w>\nbar net</w>\nm ha</w>\nes ch</w>\nbloo ded</w>\n>>>> >>>>\nkan i</w>\nho fficial</w>\ncasablanc a</w>\nbir ds\nty ga</w>\nsw amp\no day</w>\nnew castle\nnb ap\nci sion</w>\ncho ols</w>\naf lo\nne p</w>\nmon ton</w>\nak b</w>\nsuper model</w>\ndown time</w>\nth os</w>\nsc wx</w>\nsnoo py</w>\nag greg\nyo ke</w>\nnor cal</w>\nwe tt</w>\nprolon ged</w>\nme tast\nbeat er</w>\nf ta</w>\nt lap</w>\ndisgu sted</w>\ny h</w>\nvoice over</w>\nitch y</w>\nip c</w>\nðŁİ ¾\nphe asant</w>\nstra its</w>\nram pant</w>\nj g\nfer til\nassu res</w>\nfortun es</w>\nsal inas</w>\nliz ards</w>\nkett le\ni bs</w>\ncyn thi\nhe g\nmc cr\nsoccer oos</w>\nhappen ings</w>\ncor den</w>\nðŁĺĤ ðŁĳĮ</w>\nt ches</w>\negre t</w>\nwolver ines</w>\ncongratul ated</w>\nho gg</w>\nbott ling</w>\nwr i</w>\nfer ri\nbo sch\naf ire</w>\nog den</w>\ns jo\nj dm</w>\nsv t</w>\ncon tex\ntol lywood</w>\nmin k</w>\nme se</w>\nsuper sonic</w>\nop oulos</w>\nå ¸\nâĶ ģ\nknuck le</w>\ngu ise</w>\ngam i</w>\nchu cky</w>\nz inger</w>\nradi al</w>\ncompla ined</w>\nbo da</w>\nfe tal</w>\ndiscipl ines</w>\ncor ro</w>\nðŁĩ®ðŁĩ ¹\nop ted</w>\nfiltr ation</w>\nad nan</w>\nem cee</w>\nmi stre\ninsom ni\nfer gus</w>\ntra jec\non don\nmed tech</w>\ntanger ine</w>\nmadra s</w>\ngru e\ncab s</w>\nz hu\nsureshpp rabhu</w>\ninsul ated</w>\nday swild</w>\npp m</w>\nband ai</w>\nv day</w>\ns ff</w>\nsqu id\nlo thing</w>\nnot dead</w>\nexpre ssive</w>\ncu ll</w>\nala stair</w>\nx u\nup front</w>\nfish ers</w>\nen es</w>\num d</w>\ndis missal</w>\nsti er</w>\nsel s</w>\nlu st\nre active</w>\nprote ster</w>\neyel ashes</w>\nal im\ngoo de</w>\ngre eng\nda ir</w>\ncom pen\nanush ka\nproto typing</w>\nma pu\nbear ings</w>\nðŁĲ Ł\nfor me</w>\nbsbi botany</w>\ntimo thy\nout skirts</w>\nam bed\nare tha</w>\nwend ell</w>\nstre aks</w>\nni m</w>\nk pk</w>\nsne e\nfit ter</w>\nquo ta</w>\np ate</w>\nwin ning\nðŁį Ń</w>\nsho pping\nma inst\ncul ver</w>\nste vie\nmcfad den</w>\ncounter parts</w>\ngren fell</w>\nfol som</w>\ndor set\ntech crunch</w>\nâ¬ ħï¸ı</w>\ntip tuesday</w>\nus l</w>\ntre x</w>\ngeor gie</w>\nranveer official</w>\nlic ks</w>\nse wn</w>\nk f</w>\n' âĢ¦</w>\njap s</w>\np ate\north op\nfe sta</w>\nstra s</w>\nmon tal\nhammer smith</w>\nfore most</w>\nwido ws</w>\nmad re</w>\nite z</w>\nmito chondri\nlig ans</w>\nz ona</w>\ncari bou</w>\nm ss\nandre i</w>\nweather channel</w>\ngh c</w>\n: ...</w>\nta ft</w>\nawe ather\nal isation</w>\nbru tal\nbliss ful</w>\nnik ola</w>\nmal icious</w>\nq m</w>\nmpg vip</w>\nbro die</w>\nbl itz\napplau d</w>\ndri bb\nv ague</w>\ndog go</w>\ntransl ating</w>\ninterpre ted</w>\nhat ched</w>\nge tyour\nbenefici aries</w>\nspar ring</w>\ncaes ars</w>\naw illiams</w>\nla hat</w>\nbro ke\nti mp\nvirtu es</w>\nrel ying</w>\npie tro</w>\nk tn\nici sts</w>\npab lo\nlou i\na ag\npn pp\ncha st\npul ses</w>\nfini sh\nusair force</w>\ntype writer</w>\nthomp son\ndog s\nut to</w>\nãģ į\nsand al</w>\nnew ly\ndo ge</w>\nz w</w>\nwan kers</w>\nne gr\nmu cha</w>\ndetermin es</w>\nblack fish</w>\nsk unk</w>\nmu ps</w>\ninstru ment\nphy to\ndaysto go</w>\nskin ned</w>\nhai der</w>\ncon ten\nðŁĲ¾ ðŁĲ¾</w>\nwe iler</w>\nundoub tedly</w>\nchair ing</w>\nwall is</w>\nsh ard</w>\nzind abad</w>\nadul t\nabsor ption</w>\npre sto</w>\ndeplo ying</w>\ndrum mond</w>\nbattle front</w>\nseag ulls</w>\nhow dy</w>\njuda ism</w>\ndes de</w>\npart ition</w>\nâľ Ŀ\nno logy</w>\nnational bestfriend\nlesn ar</w>\nfilm fare</w>\nco asts</w>\nchristen sen</w>\nac an\nmb u</w>\nco pped</w>\nru bble</w>\nsw c</w>\nfun nier</w>\nfar ther</w>\nwhere as</w>\nnano technology</w>\nwith stand</w>\npil low\nbow ers</w>\nto pe</w>\nit ly</w>\ncon fit</w>\nma kar\ncomfor ts</w>\nbo sh</w>\ncli pper</w>\nbal la\nsti k</w>\nmil b</w>\nsafe guard</w>\nmusi que</w>\neas port\nya z</w>\npad ded</w>\nbad er</w>\nfore ign\nchop in</w>\narchi ve\no ka\ntran sporting</w>\ntml talk</w>\naj it</w>\nconsequ ence</w>\nsc roo\nff o</w>\ncollabor ated</w>\npug chat</w>\nye mi</w>\njav ed</w>\nau burn\no of</w>\nma w</w>\nsau cer</w>\nmiti gate</w>\ni les</w>\nevangeli st</w>\nter ie</w>\nre cl\nindic tment</w>\ncat a</w>\nbright ness</w>\nmay the</w>\nwhim sical</w>\nun lv</w>\nkey word</w>\ncu min</w>\nmed way</w>\nwest world</w>\ntra w\nim posing</w>\nform ity</w>\ncoul ter</w>\nab z</w>\nny pd\ngrass i</w>\nkel sey\nqld pol</w>\nclock work</w>\nf dr</w>\ndi anne</w>\nâĺ ĳ</w>\nad h</w>\np ann\nbra vely</w>\nae ge\nun lawful</w>\nver di</w>\npocaly pse</w>\nphar o\nkar la</w>\nreson ance</w>\nma stiff</w>\nla dak\nbu u\nma iled</w>\nhi i</w>\ncraw ley</w>\ntor rent</w>\nmach ado</w>\nliby an</w>\neffort lessly</w>\nfal sely</w>\nq vist</w>\nke ef</w>\ncraf thour</w>\ncheri shed</w>\nval kyrie</w>\ns ari\nkal amaz\nbe he\nðŁĮ Ļ\nth im\nro ddy</w>\ncol trane</w>\nbut chers</w>\nach im</w>\nwk end</w>\nawk ward\ncab rera</w>\n:) )))</w>\nfran c</w>\ndecl an</w>\ncon dos</w>\na ja\npandor amusic</w>\nchar ter\nph ill\nmon trose</w>\nhatch back</w>\nhandic app\ngre aves</w>\neucalyp tus</w>\nut most</w>\nt son\nbur ton\nmid wives</w>\nin cur\nðŁĺį #</w>\nmoo d\ncompre ssed</w>\ntom a\nmust ang\nmo g</w>\nas ana</w>\nte stic\nsho tel</w>\nin sol\ncor sair</w>\nnh q</w>\nben ny\nsm ma</w>\nkap ur</w>\nin con\njon as\nener gies</w>\ndon al\nas ad</w>\nse z</w>\nn pa</w>\narchi ved</w>\nstimul ate</w>\ndo p\nhy d</w>\ngri eving</w>\nãĥ Ī\nron a</w>\nwhy te</w>\ntree house</w>\nss ell</w>\nsand ro</w>\nko bo</w>\nther most\nse clu\nhi ya</w>\nge ez</w>\nmam as</w>\nprisc illa</w>\nflav oured</w>\nfas s\nw old</w>\nmaker space</w>\ncospla y\np tv</w>\nhappy valentinesday</w>\nsequo ia</w>\nlove craft</w>\ngu an</w>\nd tm</w>\nci i</w>\nyoko hama</w>\npos thum\nre q</w>\nðŁĶµ âļªï¸ı</w>\ngalat asar\ndol by</w>\nhamp tons</w>\ndisturb ance</w>\nstone henge</w>\nok c\ndisrup ting</w>\nmonth sary</w>\njun gle\nhead lights</w>\ndu stin\nmicro sof\nhappy mothersday</w>\nko ko\ngra zi\nte sto\nna idu</w>\nmal ay</w>\nari al</w>\nru mb\nab oo</w>\nhar man</w>\ntra pe\nspo ils</w>\nje ho\ngo dly</w>\nlock screen</w>\nz un\npi ous</w>\nma gento</w>\nl enders</w>\nprob able</w>\ncorpor al</w>\nm our</w>\naw al\nsu a</w>\ncall me\nton ne</w>\ngo vin\ndevast ation</w>\nx j</w>\ngear box</w>\nwar lock</w>\nper me\nit ate</w>\ngaza underattack</w>\ndu val</w>\nparas ite</w>\nclement e</w>\nle th</w>\ni va</w>\nfro zen\ntho les</w>\nto bin</w>\ncair n</w>\ns ill\nluc kiest</w>\nconver ts</w>\nst ale</w>\npan cra\neuro pale\nwis dom\nsch ur\nì ¶\nverti go</w>\nbi j\nu bc\nnu re\nrighte ousness</w>\nmt c</w>\nfactor y\nver st\nrevers ed</w>\nhur i</w>\nhee chul</w>\nfab er</w>\nar r</w>\nul ous\nven om\nph at</w>\ngreen ery</w>\nbra dy\nÃ ¦\n: ((</w>\nnever giveup</w>\ndi sha</w>\nmo ta</w>\nhealth care\ndun ham</w>\ndex po</w>\nden zel</w>\nbb ins</w>\nf ics</w>\nwh am\nmc g\neli an</w>\nwat a</w>\nstr alia</w>\ntel lu\npe sky</w>\nspin off</w>\nar moured</w>\nre acted</w>\ndo fficial</w>\nte du</w>\nsag ar</w>\nmor ally</w>\nparalle led</w>\nfi os</w>\ndow ner</w>\ndau gh\nre do</w>\nworld cup\ntari q</w>\nbar ne\nglaci ers</w>\noc cult</w>\nbarbar ian</w>\nher mosa</w>\n!! !)</w>\ny ur\ninter nation\np ss</w>\nsit u</w>\np int\namerican air</w>\nsw am</w>\ndopp ler</w>\nðŁĴĻ ðŁĴľ</w>\ncincode mayo</w>\nle van\nhell enic</w>\nmc ne\nju di\nyu h</w>\nst x</w>\nqu are</w>\nðŁĺĤ .</w>\nsti g</w>\ng els</w>\nmot ley</w>\nhard work\neuro zone</w>\ne ad\nç¥ Ń</w>\nseab ir\nci us</w>\nla id\nalpac a</w>\npresu mably</w>\npewdie pie</w>\nboo ted</w>\nam ari\ntam ine</w>\nsol ace</w>\nbar row\nacade mies</w>\nx ian</w>\nom ination</w>\ndun geons</w>\nb ma</w>\nde ity</w>\nai k</w>\nstab il\nhir a</w>\naffection ate</w>\nving ne</w>\nnew port\nãħĭ ãħĭ</w>\nthir ds</w>\nre tains</w>\naroma therapy</w>\nski er</w>\nni ma</w>\ndo pe\ncr inge</w>\ncon domin\nto or\nanim ator</w>\nsar aj\nseas cape</w>\nminim alism</w>\nlake shore</w>\ncalla way</w>\nberg man</w>\nà¤ Ĺ</w>\nwhisp ering</w>\nstupi d\nri ghtful</w>\nrequ is\nir n</w>\nse va</w>\nut pol</w>\ntuber culo\nsqu ish\nde but\ngovern mental</w>\nchrist ine\nall man</w>\nweap on\ns ito</w>\nbur i</w>\nlo lita</w>\nleaf y</w>\nfu ch\ntin ted</w>\nmck en\na hahaha</w>\nðŁĩµðŁĩ ¹</w>\nrepe al\nne gan</w>\nðŁķ Ĭ\ntail gating</w>\ngame insight</w>\nðŁıŁ ï¸ı</w>\nyaku za</w>\nz t</w>\nti ring</w>\npro posing</w>\nbow lers</w>\ntra itors</w>\nak shi</w>\ncler gy</w>\ncit o</w>\nup sets</w>\ntu scal\nsymph onic</w>\nsil ently</w>\nshu ff\nblack well</w>\nðŁĺĤ )</w>\nko be\nrober to\nri dg\ndc u</w>\nmer ino</w>\nft p</w>\neast side</w>\n. ~</w>\nnb l</w>\nmn leg</w>\nts for\nfrau dul\nca pping</w>\nin my\ngymna st</w>\nston es\nss in</w>\ntwe aks</w>\nshag gy</w>\noak land\ndem sin\nsang ria</w>\nmm va</w>\nhen nessy</w>\ndown ton</w>\nri ghtly</w>\nin it</w>\naga ve</w>\nob last</w>\nnorthe ast\nfriend ship\ndal a</w>\ntro phy\nðŁĳ ½\nmag in\nmargar itas</w>\nê ·\nww fc</w>\nfa sh\ndi ke</w>\ncu d\nchar t\nðŁĳ ®\nrefuge es\njop lin</w>\nn cs</w>\nimp y</w>\nfirm ware</w>\npas cu\nflam in\nhealth tech</w>\nbell letstalk</w>\nw aka</w>\nol ls</w>\nla go\nco wan</w>\nbombar dier</w>\nsh ome</w>\nðŁĻ ħ\nmc master</w>\nna ve\nwell s\nu ta\ntell ers</w>\nmis fits</w>\nkap il</w>\nface off</w>\naf firm\na pro\nwhit epaper</w>\nsuper yacht</w>\nspeci mens</w>\nal located</w>\n... ,</w>\n- __\nka w</w>\ndachsh und</w>\ndjo ker\ns work</w>\nqui ere</w>\nor um</w>\nðŁĲ ł</w>\nsom m\nc mt</w>\ningh our</w>\nskin ny\nlgb ti</w>\ngi ggles</w>\nbreak away</w>\nresear ched</w>\npar ity</w>\nmy al\nms l</w>\nre tained</w>\nsi vity</w>\nmake inindia</w>\nsol ves</w>\ndefam ation</w>\nwal tham\nsri racha</w>\nroad way</w>\nconcep tu\nal in\niw ant\nå Ī\ndel ft</w>\ntender loin</w>\nga ins\nfaul ts</w>\nsw ire</w>\nst ellen\npol lo</w>\ndy ne</w>\nbornon thisday</w>\nasdf ghj\nsq l\nsali m</w>\nadvis es</w>\nvo ip</w>\nìĹĳ ìĨ\nun touched</w>\nshe il\nontari o\nuph ill</w>\nso bre</w>\nde shi</w>\nnov ella</w>\ndu tton</w>\ncraw fish</w>\nØ§Ù Ĩ\nma a\ntw ine</w>\nkal in\nðŁĩµðŁĩ Ń</w>\nye ss\nbrook s\nhoo siers</w>\nton ka</w>\numbrel las</w>\nay ers</w>\nate am</w>\nacqu iring</w>\nsu ction</w>\nÃ¤ n\nwi es\ntari ans</w>\nsoci o</w>\nmat tb\nshepher ds</w>\no so\ncharity tuesday</w>\ns logans</w>\nninj as</w>\nal bat\nby te</w>\nbash ir</w>\ntrampol ine</w>\nmydayin la</w>\ni ja</w>\nbas el\nror y\ngol die</w>\nfi rec\nun noticed</w>\npecu liar</w>\nsch a\nker son</w>\nmour ns</w>\nliquid ity</w>\nqu ipment</w>\nhi bs</w>\nar s\naeron au\nslide show</w>\nsla bs</w>\ndelici ousness</w>\nsk itchen</w>\nhta fc</w>\nfull erton</w>\ncre ighton</w>\naer ob\nprocrastin ation</w>\naz ores</w>\nwhite hall</w>\nuss occer</w>\nmedi ation</w>\ndjoker nole</w>\nand me</w>\num en</w>\nnoxi ous</w>\njo ss</w>\nili fe</w>\nanni vers\nsudan ese</w>\net res</w>\nunder mine</w>\nwhole foods</w>\ndiso be\nkor i</w>\nade le\neli z\ncan ti\nal on</w>\ngymna sium</w>\nsarko die</w>\nmeteoro logist</w>\nyl de</w>\nste en\nstamp collecting</w>\nnas al</w>\nlo tt</w>\nfran ks</w>\nex ol</w>\nack i</w>\ngood year</w>\nanimal rights</w>\ny les</w>\nvio lets</w>\nmm es</w>\ns thel\nra pping</w>\ntu scan</w>\nwai ver</w>\ntur ner\neat local</w>\nnorthe asthour</w>\nanim ations</w>\ntom morow</w>\nt sh\nff ame</w>\nbra e\npe tron\nglam our\nbr yn</w>\nd cs</w>\nbal es</w>\nðŁĶ ¶\nbro v\nbre v</w>\nb ons</w>\nphysi que</w>\ncar ne</w>\nx e\nelix ir</w>\nvol ved</w>\nl oma</w>\nìľ ł\næ ĺ\nvan u\nri gs</w>\nbal ance\nva res</w>\nbon ita</w>\nsprink le</w>\nperfec to</w>\ndi on\nle ak\ncalcu tta</w>\no ba\nd ma</w>\nc mon</w>\ntun er</w>\npneu monia</w>\nbo gus</w>\napolo ge\ncl ough</w>\nbor ne\n)) ))\nrevi ved</w>\no varian</w>\nner f</w>\nc legg</w>\nfan fest</w>\ncho u</w>\nreali zes</w>\nmc n\nli gu\nleg alize</w>\njust saying</w>\nfor ster</w>\nbo sni\nk hi</w>\nin dom\nhei del\nen cryp\nsi ss\ned di\nmar bles</w>\nbrisban e\ny ing\npre paid</w>\nwal sall</w>\ncooper ate</w>\norche str\nmar isa</w>\nho wie</w>\nche wy</w>\nbren ner</w>\nandro meda</w>\ne gan</w>\nsto cki\ncav endish</w>\nag an\nban o</w>\nde ir\ngo g</w>\nbl k\nre thinking</w>\nch ig\nrhe u\nsni p</w>\np eng\nsemin ole</w>\nm swx</w>\nan nex\nlyn da</w>\nlewisham ilton</w>\ncu mul\ntb l</w>\ndolph in\nagu ero</w>\n........ ....</w>\npre lude</w>\nat our</w>\ngr anger</w>\ntoo ting</w>\nro tun\ndis ar\nhome items</w>\nda res</w>\n**** ****\nðŁĳ Ĩ\ncompre h\njin x</w>\nas well</w>\niri e</w>\ncircul ating</w>\nðŁĲ ¥</w>\nover board</w>\ncultiv ate</w>\nrhe tt</w>\noriente ering</w>\nca k</w>\nbal kans</w>\ns itt\njas min\nbritney spears</w>\nro tor</w>\nse aling</w>\ng bc</w>\noc ci\nf as</w>\neman cip\ncom er\nwar time</w>\ntic kle</w>\nson ny\npac es</w>\nlog g</w>\nat rix</w>\nsr p</w>\ng win\ndo bbs</w>\nuz be\nthe wanted</w>\ndru sh</w>\nex tru\nm icky</w>\nhonore es</w>\ndar win\nre dux</w>\nmm j</w>\nram i</w>\njalape Ã±o</w>\nio c</w>\ndo ver\nju ju</w>\nwhit ney\ns eng\nen ly</w>\nau ch</w>\narchipel ago</w>\nvigil ant</w>\nman gal\nwil dest</w>\nparano id</w>\nhal i</w>\nbb ly</w>\nsanc tioned</w>\nreal ms</w>\ncon co\nu ddin</w>\nc sk</w>\nplay time</w>\nlibr a</w>\nsav ag\noc tane</w>\nrec tan\nre turn\npar rish</w>\nmor rha\ncc p</w>\nc mu</w>\nsa iled</w>\nse vent\nro sie\npil ing</w>\nhe w</w>\nboar ded</w>\nseg ments</w>\nneph ro\n( .</w>\ncr ats</w>\nbak es</w>\nðŁį ¸\nback tothe\nsibl ing\nkirk land</w>\nke o\ngu wa\nbre ads</w>\nðŁĺľ ðŁĺľ</w>\nt q</w>\nharas sed</w>\nga u</w>\nwil bur</w>\nj isoo</w>\nep er</w>\nli sam\ntri ppin</w>\nsh ino\nru kh\nbeast mode</w>\ncho a</w>\ninst aweather\nrich land</w>\ngar i</w>\nfe z</w>\ncowboy snation</w>\nfur suit</w>\nk run\na en\nsycam ore</w>\nse gun\nent ennial</w>\ndi h</w>\no ax\ndemsin philly</w>\nðŁĻ Ģ</w>\nsn hl</w>\npen nies</w>\npass words</w>\nma kin\nty e</w>\nd eng\nkni gh\njeep life</w>\nhel pline</w>\na for\nzz zz</w>\nste amy</w>\npic ker</w>\niter ate</w>\nhappen ingnow</w>\nki b\nbloom berg\nmartyr dom</w>\nbul ly\nassor tment</w>\na hora</w>\nzo e\nno i\nillu stri\nagar wal</w>\np sc</w>\nelectr onica</w>\nrecruit er</w>\ngar diner</w>\nrad ha</w>\nnaf ta</w>\ndot net</w>\npi ero</w>\ngeor g</w>\nbel s</w>\nðŁĺĤ ðŁĺį</w>\ntuberculo sis</w>\nrun nin</w>\nmor is\nhaul ing</w>\nev oc\nbre thren</w>\nsha ir</w>\nframe works</w>\na stu\nri gid</w>\nku ma\nkre me</w>\njin nah</w>\ninsu rers</w>\nny u\nf ere</w>\nnol lywood</w>\ngood vibes</w>\n- ...</w>\ntoi le\nsk ril\ninstaweather pro</w>\ncze ch\npa vel</w>\none piece</w>\nnike plus</w>\nfi let</w>\ncav ity</w>\nðŁı½ âĢįâĻĤï¸ı</w>\nðŁİ £</w>\ndra stic</w>\ndail ys\nsiam ese</w>\nre bu\noste o\nlar k\nf re</w>\nsh elling</w>\np Ã©\nglad ys</w>\nðŁıĢ ðŁıĢ\ngusta ve</w>\nsubmer ged</w>\ngrand stand</w>\natt u</w>\nwon t\nf pv</w>\nb ley</w>\njon i</w>\nang ames</w>\nweigh ted</w>\nal ou\nà¤ ¶</w>\nles bians</w>\nf j\nanni es</w>\nam l</w>\ndor ia</w>\ndav in\nbe ta\ncan c\nmadewith unity</w>\nha j</w>\nbad lands</w>\nmu l</w>\nblu ec\npa wn</w>\ncov ington</w>\nneuro logy</w>\nhtt weets</w>\ndysle xia</w>\nthel ove</w>\nne at\nfork lift</w>\nautom ate</w>\nune ven</w>\nmonte ss\nhe in</w>\nha g</w>\nrel ics</w>\ncompetiti veness</w>\ncan elo</w>\nmar tens</w>\nbullet proof</w>\nsk ittles</w>\ng ya</w>\npri mo</w>\nameric afirst</w>\nwoo o</w>\nabor tions</w>\n?? !!</w>\nma che\nld ers</w>\nrl ly</w>\npreli ms</w>\ndirec t\ncour se\nswa in</w>\nsuper cell</w>\nec centric</w>\nsting ray</w>\nple ts</w>\nwil cox</w>\nwest in</w>\nokan agan</w>\nkir an\ncar bo\nbomb ings</w>\nra rest</w>\nbo h\ngaw d</w>\ndi gg\nmo ana</w>\nenti rety</w>\nen closed</w>\ndodge ball</w>\npar ton</w>\nmilky way</w>\nat r</w>\nthorough bred</w>\nre ally\nqant as</w>\nepiph any</w>\nine e\naero smith</w>\nspi eth</w>\nar thro\nell ini</w>\ndu bu\nbra ving</w>\nâļ½ âļ½\nre structuring</w>\nillumin ate</w>\nequ ili\nmp i</w>\nash ton\npony tail</w>\nma scots</w>\nflat tering</w>\ncru m\nast a</w>\nà® °</w>\nstranger things</w>\nbar nab\nØ± ÙĬ\nmake shift</w>\ngot cha</w>\nwill am\ncho irs</w>\nkilom etres</w>\ngho sh</w>\neu than\ndol ly\nun ning</w>\nthe ar\ncre we</w>\nw sw</w>\nj ace</w>\ndis miss</w>\nke an\nho ta</w>\nkh at\n~ ></w>\nthir u\nren dez\nhart man</w>\ntee ssi\ncas ca\nz ah</w>\nhydr ange\nfo d</w>\naw p</w>\nmzan si</w>\nthick er</w>\nnago ya</w>\nne va</w>\nsti que</w>\ncast el\ndam ian\nthere by</w>\nji ang\nale k</w>\nmusic islife</w>\nra q</w>\ncalla han</w>\ngou ache</w>\nsomal iland</w>\nsean hannity</w>\nra heem</w>\nlo se\nelo ve\nwhar ton</w>\nrectan gular</w>\nillustr ating</w>\nhar ne\nauti sma\nscra pped</w>\nell and</w>\ndecre e</w>\nnag pur</w>\nki pp\nso re\nn md</w>\nma as\ngun a</w>\ngart ner\nbel li\nthen ight</w>\nje on</w>\ngendere quality</w>\ngi ver</w>\na el</w>\ngar ments</w>\nne u</w>\nmardi gras</w>\nmar sden</w>\nro wer</w>\npollu ted</w>\ncamer aman</w>\nvin od</w>\nbe asley</w>\ncro c</w>\nji u\nhollyo aks</w>\nanesthe sia</w>\nal les</w>\nste ward</w>\nlati mes</w>\nðŁĩºðŁĩ¸ðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸</w>\ntic ian</w>\ngor ia</w>\ncome dic</w>\nðŁ¤Ķ ðŁ¤ĶðŁ¤Ķ</w>\nnai ve</w>\nsli ons</w>\nł Ī\nbur glar</w>\nðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃðŁĺŃ</w>\nyork shi\nse Ã±\nfan boy</w>\nlau rel\ninci dence</w>\npotom ac</w>\nrober ta</w>\npresi den\npr yor</w>\nos bourne</w>\nw ku</w>\nte me\npal ae\nðŁ¥ º\nre boun\nitu de\nred dish</w>\nk hand\ncoloni alism</w>\nnorth carolina</w>\nðĿ Ĵ\nmanne quin</w>\nlady bird</w>\nta sty\nknowledge able</w>\ng shore</w>\nðŁĮ Į</w>\nà® ©</w>\nqu aker</w>\nsalz burg</w>\nmed alists</w>\nchy na</w>\nbridesma id</w>\nma ori</w>\nro p</w>\noutra ged</w>\nin adequate</w>\ntruck ers</w>\nal ana</w>\nìĿ ¼\nri x\noooo oooo</w>\ncommand ments</w>\nlam beth</w>\naa j</w>\neco friendly</w>\nbla z\nmorecam be</w>\nboun cy</w>\nrou x</w>\nrai ded</w>\nmi zed</w>\nsh c</w>\ngaw x</w>\nlabor atories</w>\nru bs</w>\nrest room</w>\nconsult ations</w>\nca jun\nvirgin i\nso ir</w>\nrev ue</w>\nple in</w>\nwag er</w>\nç ¹\nwe do</w>\ngrowing up\n! ðŁĺĬ</w>\nface ted</w>\nsin ners</w>\nho vering</w>\nti ene</w>\nseas oning</w>\nan ja</w>\nleg go</w>\nil is</w>\nfla x</w>\ndev o</w>\nash ram</w>\nmati sse</w>\nker i</w>\ngo wer</w>\nbo tox</w>\nmar shes</w>\nunh cr</w>\nts m</w>\nopti mus</w>\ndun i</w>\nstu ffs</w>\nso k</w>\norder ly</w>\nn bad\nislam ophobia</w>\nraviol i</w>\nfab er\ncre ds</w>\nwon ka</w>\nin fusion</w>\nover weight</w>\ndaily news</w>\nassi mil\nacol lege</w>\nmedalli on</w>\nkili manjaro</w>\nsti ff\ntham es\nsun ken</w>\nth ard</w>\nmy dubai</w>\nhilari ously</w>\nhan nel</w>\nplu mber</w>\nfair view</w>\nsepar ating</w>\nrasc al</w>\nqui en</w>\nnecess ities</w>\nconfeder ation</w>\nll ll</w>\n: ]</w>\nweak nesses</w>\nbron co\nra ffles</w>\nel ot</w>\nãĤ¸ ãĥ\nadvent calendar</w>\nðŁİ ¹</w>\nstra vel</w>\ntun ic</w>\nk su</w>\nim peach</w>\ne spionage</w>\n! -</w>\ndi ment</w>\ncur rant</w>\nbio de\ncommu ting</w>\nby ron\nðŁĴĵ ðŁĴĵ</w>\nshad ed</w>\ntr uro</w>\ncray ons</w>\nar ne</w>\nh sc</w>\nfre aked</w>\ndram ati\nfle ek</w>\nu cd</w>\nmarl borough</w>\n^ -\ncross ings</w>\nmal o</w>\nblack ops</w>\nbin ance</w>\ncho ked</w>\nchen ey</w>\npl o</w>\nge stures</w>\nval edic\nryan air</w>\nrem ington</w>\nv cs</w>\nmc kee</w>\nec z\nbe gs</w>\nnail art</w>\nmayor of\nhappy fathersday</w>\nwar t\npet itions</w>\nn ingly</w>\nclean energy</w>\nbro x</w>\nsl alom</w>\nexist ent</w>\nab ay</w>\nug liest</w>\ntom p\nstom a</w>\nsel by</w>\ngoal scorer</w>\nben ji</w>\noverwhel mingly</w>\nlan s\nsemiconduc tor</w>\nsouth korea</w>\nre scheduled</w>\nsk yl\nen listed</w>\ndow ski</w>\nsi del\nrosen berg</w>\nnas ser</w>\nwhite head</w>\npri us</w>\nhar are</w>\nen n</w>\nry der\ní Ĥ\nmon g</w>\nclas ico</w>\ntranspor ter</w>\npo tty</w>\nis me</w>\n** ***</w>\nvic e\nsk it</w>\node ssa</w>\nl mp</w>\nher n</w>\nraci ally</w>\npin oy\nparagu ay</w>\nobitu ary</w>\ngo es\nbu cha</w>\nside walks</w>\nangu lar\nun constitutional</w>\ntransiti oning</w>\ni bu\ngu ys\nun packing</w>\noooo oo\nblack girl\nber gs</w>\nÂ ¯</w>\nwordof theday</w>\ntrump train</w>\nthunder bolt</w>\nm si\nfasci sts</w>\nà¤ ¬</w>\nt sk</w>\ncollap ses</w>\nraje sh</w>\nloveis love</w>\nmigr ating</w>\nset back</w>\nðŁĺĬ âĿ¤ï¸ı</w>\nt els</w>\nsafety first</w>\nnar rated</w>\njae joong</w>\nun answered</w>\nlique ur</w>\nen nes</w>\ndal go</w>\nbill ings</w>\nsalt water</w>\nmer maids</w>\nlon gs</w>\nclap ham</w>\nwe arec\npic collage</w>\nn ach</w>\nh ace</w>\npois oned</w>\nlo th</w>\nag na</w>\nadel rey</w>\nguar dia</w>\npoli shing</w>\npeace keeping</w>\nd all</w>\np isa</w>\nla pland</w>\nprocess ors</w>\nde andre</w>\nso bs</w>\np once</w>\ndra ins</w>\nc be</w>\nðŁİ¥ :</w>\nspla sh\nmeat ball</w>\nfon tana</w>\nworcester shirehour</w>\nne v</w>\nbri sk</w>\nb int\nac r</w>\npo x</w>\ncay enne</w>\nskril lex</w>\nj fc</w>\nhahahaha hahaha</w>\ngla s</w>\nen gul\ntempor al</w>\noni zed</w>\ncon cre\ncom pose</w>\nvibr ations</w>\nplant ers</w>\nfer t</w>\ncriticalrole fanart</w>\nt bli\nsch allenge</w>\nhuck abee</w>\nmunici pal\niam bic\nradi os</w>\nne vis</w>\ndura bility</w>\nmc cla\nhorse back</w>\ninst itutes</w>\nful fill\natta ch\nate ur</w>\nak an\nresi sting</w>\nillumin ation</w>\nhand le\nhair care</w>\nom ent</w>\nmacle od</w>\nka iser\ng no</w>\nbear down</w>\nly f</w>\ngl omer\ndistor tion</w>\nz m</w>\nsan k</w>\nroo sters</w>\nis now</w>\nas ports</w>\nag en</w>\nwo ken</w>\nst george\nro mper</w>\nmy le\neconom ists</w>\nru to</w>\nt will</w>\nhealth and\nd ito</w>\nws l</w>\ntair p</w>\npra kash\nmic heal</w>\nh ts</w>\nw rights</w>\nkat su</w>\nfioren tina</w>\ndefen seman</w>\nd itch\nvar sity\ntexan scheer</w>\nba ham\nsc anned</w>\nwe il</w>\nseduc tive</w>\nðŁĳį ðŁı½</w>\nfu e</w>\ner win</w>\ndav ison</w>\nter ran\nmoo ds</w>\nwool f</w>\nre source\n@ .</w>\ncu sh\nðŁį °\nregre ssion</w>\ncur led</w>\nla zer</w>\njo anne\nab bott\nmo z</w>\ndown ers</w>\nmm mmmm</w>\nvalent ina</w>\nk hair\ndream t</w>\ncro ok</w>\nche k</w>\nste aming</w>\nnephe ws</w>\ncl eric</w>\nas ober\nindefin itely</w>\nw ye</w>\nus news</w>\njoy ce\nflu shing</w>\nwynonna earp</w>\nron do</w>\nkis s\nhot dog</w>\nbar ns</w>\nsax ophon\nfar ley</w>\ngas p</w>\ndecre asing</w>\nal way</w>\npe x</w>\nl sd</w>\nshi ft\np outine</w>\nra zz\nrescu ing</w>\nni ko</w>\nho ch\ncc l</w>\nu aap</w>\nn ts</w>\nm car\nil wx</w>\nconqu ering</w>\nket tering</w>\nstur dy</w>\ndelay ing</w>\nsto k</w>\nvani shed</w>\ncath ar\nbin gham\nin v</w>\nic hiro</w>\nhe mo\nbudge ting</w>\n[... ]</w>\nbe ss</w>\nsebasti an\nslow ed</w>\nðĿ ĳ\nmusli m\nstun s</w>\nacton climate</w>\nve a</w>\nse ton</w>\nrose tta</w>\noun t\nhard in</w>\nflu id\nca w</w>\nðŁ¥ Ĥ\nyach t\nun l</w>\nsp hy\nprovoc ative</w>\nor ic</w>\nis back</w>\n__ _\nnicol as\ngy an</w>\nloo se\nfl in</w>\nreb ate</w>\n: ::</w>\n! \"@</w>\ncom icon</w>\nshe ff</w>\ndown stream</w>\nchic hester</w>\nbeach life</w>\nmom life</w>\ndiabe te\nar ra</w>\nvan e</w>\nok u</w>\nye o</w>\nman go\ntry out</w>\napp ell\nhe irs</w>\narjun a</w>\ndd u</w>\nna veen</w>\nmovi c</w>\nsoci alists</w>\ns back</w>\ncriteri on</w>\nsoyu z</w>\nk her</w>\nda z</w>\nyol anda</w>\nwine oclock</w>\nre ina</w>\none w</w>\nleon ard\nen dez</w>\nu bs</w>\nsupport local</w>\nfacilit ated</w>\ncarameli zed</w>\nb pa</w>\nvuel ta</w>\nmy tho\nm ami</w>\nspe are</w>\nnbap layoffs</w>\nfe vre</w>\nnick jonas</w>\nim print</w>\nc so</w>\ncraig slist</w>\nla salle</w>\ngi deon</w>\nha doop</w>\ndis regard</w>\nw ud</w>\ntu c</w>\nma gee</w>\nacou stics</w>\nta a</w>\nqui e\npol a</w>\ncr t</w>\ndw yer</w>\ndis sec\ncapit ol\nmen tion\nkn oll</w>\nhe igh\nfin ders</w>\nplac ements</w>\nl se</w>\nindi ra</w>\ngur i</w>\nmadhuri dixit</w>\nkingdom s</w>\niambic pent</w>\ngeor gina</w>\nje ky\nconflic ting</w>\nbay an</w>\naga tha</w>\nuph old</w>\ndr on\nvic ar</w>\nex pat</w>\nperiph eral</w>\npe ssi\nfa f</w>\nance stor</w>\n? ..</w>\nwid get</w>\npun c\ncomm enced</w>\nbeav s</w>\nair waves</w>\nad dis</w>\npo a</w>\nde sses</w>\nco den\nvu e\nru pee</w>\nkar in</w>\nspo ck</w>\nm sy</w>\nà¸ °\npr ick\nfill more</w>\nti fication</w>\nthing sto\nsar de\nem ile</w>\npere ira</w>\nn ad</w>\nbright ening</w>\narre sting</w>\nwo king</w>\nusc g</w>\nsp ill\nraspberry pi</w>\nhu go\nite c</w>\nis ma\ncuff links</w>\noptimi zed</w>\noc c</w>\nmi wx</w>\nen ka</w>\nel ited\nafford able\nsa kh</w>\ncoron ado</w>\nho h</w>\nat ul</w>\nai oli</w>\njim cantore</w>\naccoun ted</w>\nvin ay\nher mit</w>\ngroo ves</w>\nran ch\nr illa\nwe tter</w>\nou tof\nveter in\nni kov</w>\nki an\nfair banks</w>\nram apho\nn iti\nk ko</w>\nru sty\nne stle</w>\ntv xq</w>\nshahe er</w>\nâĿ¤âĿ¤ âĿ¤âĿ¤</w>\npenn ant</w>\ngem stones</w>\ndem debate</w>\nðŁĲ Ĭ</w>\nauton ews</w>\nsupport indiefilm</w>\nmach o</w>\nve x</w>\nnew sat</w>\nne ti\nconce ssions</w>\ncan died</w>\nyof the\nmac au\nden ds</w>\ncricke ters</w>\nsan iti\nmari ano</w>\ngh at</w>\nar toftheday</w>\n¡ ľ\ne gos</w>\ngen oa</w>\nchat bots</w>\nbri er</w>\nal labout\nmon ty\nspi ed</w>\nr tr</w>\ncomfor t\nsni ppets</w>\nreal time\ngra in\nexam ined</w>\nen lightening</w>\ntt u</w>\ngod bless</w>\nrelease the\nsing ular</w>\nki ans</w>\nha ka</w>\nsor ren\ndefe ct</w>\nmar g</w>\nequ ities</w>\nd orian</w>\nsu ka</w>\nper l\naishwar ya</w>\npul lover</w>\npreci sion\nfair way</w>\nne ve</w>\nrive ting</w>\nvill anova</w>\nen com\nak o\npassion ately</w>\neuropale ague</w>\nsiem pre</w>\nx vi</w>\nenligh tened</w>\nc fr</w>\nâĺħâĺħ âĺħâĺħ</w>\nwast eland</w>\nis f</w>\nnew comers</w>\nemergen cy\namphi theatre</w>\n- .</w>\ntext books</w>\nfigur ative</w>\ntre mb\npe sc\nab hin\nab bot</w>\nac acia</w>\nhar ds</w>\npor sche\nkau ai</w>\nel isa</w>\ncar rick</w>\nabo u</w>\nelli er</w>\nbe ch\nneu tron</w>\ngalap agos</w>\nru ben\nin nis\nhow to</w>\nnun s</w>\nsab ine</w>\ni ac</w>\nclin ched</w>\nno tori\nfi ves</w>\ncairn gor\nper i</w>\ngr c</w>\nðŁĴ¯ ðŁĴ¯</w>\nmal m\ntwelf th</w>\ndi ff\nrout ines</w>\nmarty n</w>\nlin den\nsynthesi zer</w>\nnu mber\ngame cube</w>\nfal kirk</w>\nbyz antine</w>\nqueu ing</w>\ngr ill\nscal able</w>\nchar red</w>\nrou ting</w>\nher bali\ngri zz</w>\nðŁĺŃðŁĺŃ ðŁĺŃ\ntol l\ntermin als</w>\nl pc</w>\nab d</w>\nwar mups</w>\nremo vable</w>\nÂ¯ \\\nvi go</w>\npap aya</w>\nne ve\nlov ingly</w>\njo kers</w>\nib les</w>\nsse tt</w>\npoten ti\npel e</w>\ngi gi\nsadi q</w>\nleg acy\nson o</w>\nru pees</w>\nretar ded</w>\nele e</w>\npar r</w>\nfi ance</w>\ney re</w>\nsay ers</w>\npend ants</w>\nmak nae</w>\nal bans</w>\nadap ting</w>\np ff</w>\npu berty</w>\nji u</w>\ning rad</w>\nhypocr ite</w>\ndiplom ats</w>\nphys ical\nrob by</w>\nbon sai</w>\nãģ ·\nf att\ncatal unya</w>\nâľ ĸï¸ı</w>\nro ma\nmore land</w>\nso e\nconver sions</w>\nstl blues</w>\nshol m</w>\ngra ssy</w>\npra do</w>\non u\nassaul ting</w>\n> _\nsett es</w>\ndis graceful</w>\naph ra\nâļ½ï¸ı âļ½ï¸ı</w>\nà¤ ª</w>\nkil n</w>\ngoal tender</w>\ns ru\nphilanthro pist</w>\nb als</w>\nth n\nstu den\nsando val</w>\ndogre scue</w>\neli ons</w>\nasse ssed</w>\nlar go</w>\nhec tares</w>\nsh rm</w>\nsa if</w>\ncle avage</w>\nno ches</w>\nn ene</w>\nfat alities</w>\ncur ing</w>\nclean ser</w>\nal es\np vp</w>\nsouth bank</w>\npizz eria</w>\nmarsh als</w>\nkni fe\nan dover</w>\ntbli ghtning</w>\nsr sly</w>\nou te</w>\ndigi mon</w>\ntimesof india</w>\nprome the\nle bo\nf su\nwit z\nrever e</w>\nman as\nmam ba</w>\nch ica</w>\ngu an\nexhibit or</w>\ncsr racing</w>\nd ere</w>\nxx xxx</w>\ngu sta</w>\nstory time</w>\nston ey</w>\norgan ics</w>\nand u\nse am</w>\nmin ogue</w>\nanushka sharma</w>\nab a\nðŁİĻ ï¸ı</w>\nugand an</w>\nchro matic</w>\nas sn</w>\ndocument aries</w>\nsh t</w>\nru paul</w>\nloy d</w>\nk ats</w>\ne us</w>\nite ch\nme dusa</w>\npan ty\nkel logg</w>\net to</w>\ntalla de\nsha a</w>\ndo st</w>\np ms</w>\nmari ana</w>\nje ster</w>\ncroo ks</w>\nðŁĶ ¬</w>\nmin danao</w>\nind hoven</w>\nðŁ¤ ª\nle xi\ntv n</w>\njan is</w>\nco te\nãģ Ĩ\nser rano</w>\niw m</w>\nðŁĲ ¬</w>\nk ke</w>\ndistribu tors</w>\ncap u\ncounterfe it</w>\ncamp site</w>\nag gie\nðŁĺ ¼</w>\nchhat tisgarh</w>\n~ @</w>\nstate u</w>\nsan di\nprevent able</w>\ncl s</w>\ncan ne\nmm c</w>\ni ver</w>\nsa haran</w>\npal is\nnight out</w>\ndo s\nap ia</w>\nabsc bn\nmanag erial</w>\naro se</w>\nmo wx</w>\naro sa</w>\nðŁĮ ³\nunder dog</w>\nremo ver</w>\nastronom ers</w>\nlent ils</w>\nsu scep\nsmoo ther</w>\npend leton</w>\nfau cet</w>\ne mory</w>\ndal mati\naf cb</w>\ntic us</w>\nexem pt</w>\nen rol\nd heim</w>\nðŁĲ º\nrestric tion</w>\nstar fish</w>\nsto w\nsnor kel\nthunder birds</w>\nshe ad\nhomo sexual</w>\ndy n\nas li</w>\nandre tti</w>\ndou che</w>\ndom o</w>\ntar mac</w>\nslu mber</w>\npr onto</w>\nfirst dayof\nmini ature\nmari achi</w>\nargu s</w>\nrecomm ending</w>\nmobi les</w>\nin ce</w>\nillustri ous</w>\nor c</w>\nadver ts</w>\ngr its</w>\nwea sel</w>\npag oda</w>\nover pass</w>\ngre ys</w>\nmaxi mus</w>\narma gh</w>\nwood land\nsun ni</w>\nðŁĴ ī\në Ŀ\nti one\nsoci o\nho s\nðŁ¤Ĺ ðŁ¤Ĺ</w>\nwind sor\nsubsequ ent</w>\nmunch ies</w>\nid h</w>\nexclu ding</w>\ne mi\ncu th\nz ai\nweek days</w>\nlaw suits</w>\nbarn ard</w>\nØ ª</w>\npe tting</w>\nnet es</w>\nmul ligan</w>\npharmac ists</w>\nra quel</w>\ne ton</w>\ncran ston</w>\ngil ded</w>\ncle ary</w>\nce ph\nra a</w>\npam per</w>\nlombar di</w>\nas in</w>\nsher ry\npro d\nfor te\nari anism</w>\nbuffalob ills</w>\næľ ¬\nðŁĶ¥ #</w>\nuu u\njust ices</w>\ncar ina</w>\nnat in</w>\nmas low</w>\ndro oling</w>\ncog nac</w>\ncam ber\nel ong\nr dr</w>\nin en</w>\nconvic tions</w>\nam use</w>\ntro ck</w>\nharm less</w>\nvisit ation</w>\ngen omic</w>\nbl and\nbeno it</w>\nchim p</w>\ntuscal oosa</w>\ngre asy</w>\nx po</w>\ngil t</w>\nse q</w>\nper mitted</w>\nchristma seve</w>\nbook s\nmu e\nold school\nhuman right\nbe ati\nðŁĶ Ŀ\nsh at</w>\nsculp ting</w>\nh wan</w>\nfern andes</w>\nsci utto</w>\nfu entes</w>\nendeav ors</w>\nmaid stone</w>\nun paralleled</w>\nshou ted</w>\nqueen of\nmer c</w>\nband ic\nve da</w>\nsel angor</w>\npi le\nja han\nintimid ating</w>\ndisapp ears</w>\ncl ich\nza ha</w>\nw urst</w>\nhi v\nfod ils</w>\ncor dless</w>\naaaa aa</w>\nhy dra\nbel inda</w>\ne els</w>\nbu f\nsu staining</w>\nrugby league</w>\nno c</w>\nbrig itte</w>\n( ðŁĵ¸:</w>\ntromb one</w>\nsoo the</w>\nsmo g</w>\nad p</w>\nstab le\ning ley</w>\ndiagno se</w>\nms g\nwe ss</w>\ntic keting</w>\none e</w>\nnsw pol</w>\ne up\nauto psy</w>\nadity anath</w>\nsun down</w>\nriver front</w>\nsi ya</w>\np is</w>\nhier archy</w>\ndur ango</w>\ndi jk</w>\nren shaw</w>\nhe aps</w>\nepide mi\ndavid bowie</w>\ninterne tof\ndd i</w>\nnation ality</w>\nmb ar\nair y</w>\nwin der\nw alia</w>\nelli ott\nc x\nbav arian</w>\npl att\nan tw\nwi wx</w>\nsof ter</w>\nne ha</w>\nh eller</w>\nth and\ndani ela</w>\nbo ast</w>\ndegra dation</w>\nðŁĴ¦ ðŁĴ¦</w>\ntransform ing\nman e\nav ut</w>\nðŁĺĪ ðŁĺĪ</w>\nvo ter\nthe e\nt ate\npu ff\nin door\nsop roud</w>\nboy ce</w>\nboris johnson</w>\nwait in</w>\nimmun ology</w>\nðŁıĨðŁıĨ ðŁıĨ</w>\nâĿ Į\nstreet food</w>\nliz asober\ncavali er</w>\nc elia</w>\nneed le\nmotor ing</w>\ng ato</w>\n, )</w>\nra de\nharve st\nt ms</w>\njar pad</w>\non ey\nair men</w>\nv re\nimpair ment</w>\nabhi shek</w>\nsnoo p\nl ant</w>\nfam ously</w>\nbl ou\ns ze\ng ander</w>\nun touch\ntu f\ndee jay</w>\ncol lateral</w>\nb ind</w>\nðŁļ ©</w>\npin ning</w>\nic n</w>\n' ;</w>\nthe economist</w>\nul tram\nworldwater day</w>\nti poff</w>\nthe i\nfeed ers</w>\ncampa ign\nsc umb\nday weekend</w>\nyo m</w>\npe dic</w>\nh ough</w>\nps v</w>\npl in\non de</w>\nboston marathon</w>\naz zy</w>\n* _*</w>\ncon ley</w>\nthi ago</w>\nhoo o</w>\ngal erie</w>\nluci d</w>\nje tt</w>\ngl itz</w>\nfinal fantasy</w>\nachiev ers</w>\ny ung\nperegr ine</w>\nop hi\ndam es</w>\nbiom ar\nâĺĢï¸ı âĺĢï¸ı\nsk c</w>\nl ics</w>\nfl ank</w>\nar rahman</w>\nho of</w>\nuphol stery</w>\nt ats</w>\nwo z\nÂ ¿\nsnor ing</w>\nra er</w>\nl ju\nap d</w>\npl ating</w>\nkan u</w>\nim ation</w>\nfragr ances</w>\nm ra\nmor ay</w>\nmo tt\nim muni\nhearti es</w>\nbho pal</w>\ntim ers</w>\ng ata</w>\ncolor way</w>\ncar nation</w>\nwin get</w>\nsi ghs</w>\ns ville\noptimi st</w>\nchate au\nolympi ans</w>\nci o\nsinger songwriter</w>\nny o</w>\nfi bers</w>\nbur ch</w>\nag ro</w>\nmil ne</w>\nig bo</w>\ncr amer</w>\nation als</w>\ndan ube</w>\npad ma\nnor mani</w>\nen forced</w>\nbre ck\nboeh ner</w>\nar den\nsur rendered</w>\npros thetic</w>\nom a\nha iled</w>\ncalcul ations</w>\nw fa\nbi b\nfcb live</w>\nfon da</w>\nwest coast</w>\nque sts</w>\nfriend ly\nto wie</w>\nfit ch</w>\nbal ot\nstar dom</w>\nscrat ching</w>\nho sa</w>\nthi ka</w>\no ven\nstro ke\nout post</w>\npharmaceu ticals</w>\nhi kari</w>\nmu y</w>\naf d</w>\nfallon tonight</w>\nsqu at\nor u\ndra ined</w>\nchocol at</w>\në¯ ¼</w>\nwor ths</w>\nri b\nmu j\nthat s\nresiden te\nit el</w>\nboo st\nmi gos</w>\nmul led</w>\nla a</w>\netsy shop</w>\ndon keys</w>\nme k</w>\np tc</w>\nflin ders</w>\ne hs</w>\nro hit\nmu ir\ng ad</w>\ncompos itions</w>\nåĨ Ļ\ncombu stion</w>\ni kh\nyemen i</w>\nwav ed</w>\ngar ci\nak os</w>\noo ds</w>\nfu sion\nse que\ns lan\npl ur\nkic chasu\nshenan do\ns ams</w>\nworl den\nhoro witz</w>\nwith me</w>\nmic robes</w>\nk ki</w>\nðŁĴĶ ðŁĴĶ\nw su\npatch work</w>\nfre er\ny aki</w>\nthe art\nsymboli sm</w>\nmil er</w>\nbt n</w>\nma bu\nside kick</w>\nmotiv ates</w>\nsag itt\nnatur als</w>\nserv iced</w>\nps ori\npa ola</w>\nqu ig\ni badan</w>\ngi ggs</w>\në ³\nsciento logy</w>\nsi oux\nsalam at</w>\nd res</w>\ncad bury</w>\nd hawan</w>\nci Ã³n</w>\n_ '</w>\nswa pping</w>\nmaris ka</w>\njames bond</w>\nexplo sives</w>\nay les\naf er\ns agu\ncen sor</w>\ntom a</w>\njeff erson\nring ed</w>\npar tist</w>\nir responsible</w>\naguil ar</w>\nvac ay</w>\nequ itable</w>\naltrin cham</w>\nac ur\nman ish</w>\nger min\nschoo led</w>\npu tter</w>\ned ad</w>\nnav al\ntoast y</w>\nsol areclipse</w>\ndish u</w>\ncoy ne</w>\nac co</w>\nmu ck\nmar an\nel os</w>\nlen der</w>\ncro ix</w>\nworth less</w>\nha ber\ngun men</w>\nðŁį ĵ\nzen ith</w>\nt enders</w>\nhur st\nhol tz</w>\nitali ans</w>\ncar low</w>\nu cd\ncharacteri stic</w>\nbun g</w>\nav l\nu th</w>\nsa sia</w>\nrs l</w>\nred man</w>\nneighbor ing</w>\ngreen peace</w>\nsti ps</w>\nfollow party</w>\ny gk</w>\nen os</w>\nomni bus</w>\nna issance</w>\nchri ssy\nsecu re\ncall back</w>\nji hoon</w>\nmemor y\nblock er</w>\nl anta</w>\ndaf fodils</w>\nbil t\nffer ty</w>\nfau st</w>\nie c</w>\nnipp les</w>\nso g</w>\nm nd</w>\njagu ar\nbol dly</w>\nab poli</w>\npro position</w>\ngun sense</w>\nevan sville</w>\ncu tters</w>\nwe go\ndou n</w>\ndo x\nstal lions</w>\nka j\nshi ppers</w>\nj awa\nvol o</w>\nle ven\npap rika</w>\nkov ich</w>\njor di</w>\ninduc tees</w>\napp alling</w>\ndial ysis</w>\nallevi ate</w>\nâĢĶ âĢĶ</w>\npie ter</w>\nmid wi\nq tr</w>\njuli ette</w>\ninter mission</w>\nhaw ks\nact ment</w>\none ill</w>\nk lin\nvam ps</w>\nfam ous\ncou ld\nautom obi\nda an</w>\nwest end</w>\nelli p\nnh c</w>\nmel anch\nweb series</w>\nton gue\nsnat ched</w>\nsmy th</w>\ntan gible</w>\nsl i</w>\ne asing</w>\nbar stool\nover lay</w>\nafford ability</w>\nting ed</w>\nter as</w>\nay ush\nwanna one</w>\nrh ine</w>\ndan a\nsh ana</w>\nkend al</w>\nfer tile</w>\nw ir</w>\nrepl eni\nlar vae</w>\nis ro</w>\ncon vos</w>\nab brevi\nu cc\nhun gry\nbur rows</w>\nag er\nnav i</w>\nmat in</w>\ndu per</w>\ncer n</w>\nma don\nķ ï¸ı</w>\né ģ\ntu ps</w>\nhy att\nsh ep</w>\nfriday night\nwis er</w>\nhei di\nhat ton</w>\np gh\nfoun tain\nwrist bands</w>\nahmadi yya</w>\naeri al\nsubscri bed</w>\nso los</w>\nm ace</w>\nsla yed</w>\nfor fe\ndul ce</w>\nchrist mass\narun jaitley</w>\nviol ate</w>\nob stru\nni eces</w>\nw vu\nidy l\nfa ze</w>\npre serves</w>\ninfr inge\npremi ers</w>\ninter vals</w>\nagen cy\n( Â©</w>\nstand alone</w>\ndi mes</w>\nbo er\nparam eters</w>\nge tit\nðŁĺĺðŁĺĺ ðŁĺĺðŁĺĺ</w>\ntu lane</w>\nfor given</w>\nscol l</w>\nmb ps</w>\nsmash bros</w>\nrob bi\nprima vera</w>\nali st\nghost ly</w>\nay at\nye ats</w>\nimpre ssionist</w>\near phones</w>\ncaul field</w>\nwai kiki</w>\nsal ute\nsc ou\nmu ay\nlouis vuitton</w>\nbak hta\nado g</w>\ninven tions</w>\nhur d</w>\nforec lo\nstream line</w>\nthalai var</w>\nch snews</w>\nwill ard</w>\nt sn\neuro parl</w>\ncru sher</w>\nmy sore</w>\ngro wer</w>\nra ping</w>\npat ti\ng den</w>\nsm w</w>\nmuf ti</w>\nkid man</w>\nab r\nsoun ders</w>\nskep tical</w>\nðŁĶ İ</w>\nsun dar\ni me\nfer g</w>\nfeather weight</w>\nar lington\npas qu\nag azine</w>\nwearab le\nnati c</w>\nmccl ure</w>\ninter mitt\nhor de</w>\nsix ties</w>\ncar te</w>\nbha v\nze al\nexperi ential</w>\nador ned</w>\nsom mer</w>\neno te</w>\nhypo thesis</w>\nstin ky</w>\npro to</w>\ndead lines</w>\nvo gel</w>\nmus ings</w>\nmonc ton</w>\ngu ter\nf le</w>\naci on\nvoice of\nta sha</w>\ninhabit ants</w>\ntype face</w>\ns ba</w>\nbts x\nðŁĶ Ĵ</w>\nwor x</w>\nu hc</w>\njo ko\ncell ars</w>\ngor o</w>\ncontinu um</w>\n... &</w>\nweather cee</w>\nha p\nsr k\nris ers</w>\nlonely planet</w>\nun named</w>\nco eur</w>\nðŁį Į</w>\nthe world\nili ke\nfa sten\nami go</w>\nri ba</w>\nramapho sa</w>\nstaf fers</w>\nhad ley</w>\n? ?\"</w>\nfi ore</w>\nsal ut\nhu ff</w>\nbez os</w>\nÑ ĭ\nra der</w>\nkam ala</w>\nin line</w>\nfill ers</w>\num atic</w>\nall in\nshat ter</w>\nre in</w>\no ku\nch ases</w>\nfla gged</w>\nbaby metal</w>\nwater stones</w>\nts b</w>\ncut out</w>\nop hel\naam a\nrockab illy</w>\nsto lic</w>\njet blue</w>\nich ick</w>\ndown ton\nuzbe kistan</w>\npat na</w>\nla q</w>\ngr ange\n) _/\nsubsi di\nsc p</w>\nnewsc ast</w>\nit sa\ntwee tyour\ne mor\narchae ologists</w>\nuni fication</w>\npor ta</w>\nq x</w>\nprotec tors</w>\npro hib\ncharis ma</w>\ncar tag\nren fre\nscul pt</w>\nguwa hati</w>\nde ma</w>\nboo p</w>\nunf pa</w>\ndex ter\nlay la</w>\nalleg es</w>\nsou ps</w>\nnever again</w>\nl ys</w>\ncal c</w>\nbar oness</w>\nvisu alize</w>\nger ber</w>\nabsor bed</w>\ni ers</w>\na han\nfon tein</w>\ndetec tors</w>\nverst appen</w>\nsv c</w>\nformul ated</w>\nac dc</w>\nli x</w>\nin competent</w>\nbh k</w>\nlour des</w>\nwater house</w>\nsnow ed</w>\nappreci ative</w>\nsig ma\nlizasober ano</w>\npen ned</w>\npay check</w>\ntall inn</w>\nfanc afe</w>\npar isi\nav alley</w>\nvi g</w>\nru fc</w>\nhard ship</w>\nso cute</w>\npo ise</w>\nì ¹\nroth schild</w>\nk ly</w>\n???? ????\nl hp</w>\nil ay\nf hs</w>\nam ad\nide als</w>\nbrad bury</w>\nbal boa</w>\nnic ot\nkid nap</w>\nwol ve\ntas manian</w>\nop t\nmatthi as</w>\nãĥ³ ãĤ\nsuper markets</w>\nmylittle pony</w>\nme lee</w>\nli ster</w>\ngr oun\nfe dora</w>\nkind ness\nen en</w>\nbra hms</w>\nÂ¯\\ _(</w>\nros well</w>\nmar lene</w>\nic u\nre formation</w>\nor ail</w>\nhe brides</w>\ndispar ities</w>\nterrac otta</w>\nswal lows</w>\nre id\ninflu encing</w>\nflu or\nden e</w>\ntum our</w>\nblon des</w>\nthunder bird</w>\nsh eva</w>\nmoga dishu</w>\nka b</w>\ncre eps</w>\ni ving</w>\nene ed\nanno y</w>\nâĶ Ģ\nintri gue</w>\nenqu iry</w>\nar aj</w>\ntur al\nkuber netes</w>\nend lessly</w>\ndivi dends</w>\ntor a</w>\nti sh\ncommemor ates</w>\nun ra\ntri b</w>\npon ty\nne m</w>\ndiss ent</w>\nbrew ingco</w>\nðŁĺ ½</w>\nnor mali\nbi of\n( ...</w>\nchil len</w>\nì£ ¼\nmell on</w>\nav is\nmccor mack</w>\ning ra\nenrich ed</w>\ncustome rexperience</w>\ntesto sterone</w>\nsnu g</w>\nsett i</w>\nger onimo</w>\ninqui rer</w>\nbre aches</w>\nvery thing</w>\nbloom ing\nmu ra\ndispo s\nbi de</w>\nde va</w>\nshade sof\nin trin\nsh ev\ns ven</w>\nnayanth ara</w>\ngan esha</w>\nc ws</w>\nber ta</w>\nlabel led</w>\nuse um</w>\nnick named</w>\nma han\ncar uso</w>\nap ur</w>\nðŁĳ Ĩ</w>\nw q\norphan age</w>\ndiscar ded</w>\nmag nu\nlu e</w>\nje on\nbridge port</w>\npac ing</w>\nmercur y\n( ðŁĵ¸</w>\nmarx ist</w>\namphi bious</w>\ntransplant ation</w>\nstit ching</w>\nthen burg</w>\ngradu al</w>\nãĤ Į</w>\nro ft</w>\nma ils</w>\nine c</w>\nguy ana</w>\ndopp elg\nver o\nre write</w>\nhead less</w>\nharb augh</w>\ngate way\ncar sforsale</w>\nsw i</w>\nst is</w>\nmach t</w>\nun de</w>\nsura baya</w>\nstap leton</w>\nnur turing</w>\nmil ner</w>\nya o</w>\nlma oooo</w>\nko sh</w>\narsen al\nk ame\ner ry\nar royo</w>\ndis misses</w>\nru bbed</w>\nrc b</w>\nlew d</w>\ndil u\nand or\nvi de</w>\nur in\ninter sec\nha ar\nal b\nyear swith\napp leton</w>\nÃ© al</w>\nul livan</w>\nsuc cu\nmonter rey</w>\nd mx</w>\nartem is</w>\nron nie\nfarm land</w>\ns football</w>\ngro tto</w>\nanth i</w>\nãĢ ģ</w>\nà® Ł</w>\nvid ya</w>\njimmy fallon</w>\nàµ į</w>\nt zer</w>\ngravit ational</w>\nw thr\nu hhh</w>\ne hr\ntin ker\nti juana</w>\nscran ton</w>\nram charan</w>\nbar clay</w>\nre van</w>\nm si</w>\nka p</w>\nwr s</w>\nwe thenorth</w>\ntor al</w>\nsat u</w>\ngro m</w>\nfac ep\nerick son</w>\nz yn\nse dge</w>\noo dle</w>\nspur sofficial</w>\nds p</w>\nsic ilian</w>\nsoli hull</w>\nrecei vers</w>\nladak h</w>\nhend rick</w>\nther i</w>\npresi ding</w>\nmc guinness</w>\nlitt ers</w>\ngun nar</w>\ngh oul</w>\nwi b</w>\nn tv</w>\nkar o</w>\nfro ck</w>\nb lau\nampli fy</w>\nall is</w>\nul lah</w>\nmemo irs</w>\nkh loe</w>\nintercep tions</w>\npet day</w>\nlo oney</w>\ncon fin\nch ay\npiyush goyal</w>\nfrequ encies</w>\nut z</w>\nevent ual</w>\nwarm ly</w>\nobli vion</w>\nan ka</w>\nta it</w>\nâĿ¤ï¸ı .</w>\ndirector ial</w>\nru lers</w>\nprince s\nmu ck</w>\nstur ridge</w>\ndeu ce</w>\nabri dged</w>\nbagu ette</w>\nun cles</w>\npen du\nmin ding</w>\nforre ster</w>\nav ila</w>\nwall er</w>\nwall street</w>\nment or\nhin o</w>\nhigh way\ncrom well</w>\nfanart friday</w>\nmb i</w>\nco yle</w>\na hi\ntro ve</w>\nspie gel</w>\npay tm</w>\nmcin tosh</w>\njan sen</w>\nnit i</w>\nnash ville\nlen o</w>\nleicester shire</w>\nle gos</w>\ndic t\nðŁĵ ½</w>\nsp ad\nbeverly hills</w>\nsy rah</w>\nsepar ates</w>\nz ain</w>\nun fit</w>\ndra gs</w>\ntan ia</w>\nover flowing</w>\nhri thik</w>\nhaw thorn</w>\nz ani</w>\nmac far\nfi de</w>\nto tem</w>\npe ds</w>\nfundament ally</w>\ncal ico</w>\nsin ner</w>\nj Ã¤\nhil de\nds d</w>\nten ay</w>\nta hit\nmil f</w>\nlie b</w>\ninform ing</w>\nup lift</w>\nra el</w>\nmortg ages</w>\nlec t</w>\nii ii</w>\nguillau me</w>\ncompos ites</w>\nold smobile</w>\nl end\ngar th\ncom mish</w>\nbapti zed</w>\nscorpi ons</w>\nru cker</w>\nbringback our\nalli ance\nthalap athy\ntal i</w>\nsp ans</w>\neri dge</w>\nwither spoon</w>\nlin da\nsky lar</w>\nkor n\nhom s</w>\nÄ į\nsil enced</w>\ncaf fe</w>\nar ty\ndist inguish</w>\nto wed</w>\npun g</w>\njessic a\near nest</w>\nbeau fort</w>\nt ama</w>\nstudy abroad</w>\nsi khs</w>\nnew bie</w>\nnav ratri</w>\nmar ble\nloun ging</w>\nlit ter\ndal it</w>\nso sa</w>\niz es</w>\ngra de\ncom promising</w>\ntr iton</w>\nde tta</w>\nv j\nchau ffe\nspec tral</w>\npowe red\nmontess ori</w>\nartic ulate</w>\nhal ton</w>\nal co</w>\nye y</w>\nmn twins</w>\nacoun ty</w>\nðŁĳı ðŁı¾</w>\nâī Ī</w>\nmad men</w>\nkal a\ngru m\nchi k</w>\nati s\nsu me</w>\nakh tar</w>\njob search</w>\nhigh lighter</w>\nbo ath\nâĦ ¹</w>\ntar zan</w>\nlam bo</w>\nâĽĦ ï¸ı</w>\nox fam</w>\ndump ster</w>\npretz els</w>\nmac os</w>\nincl ined</w>\nfac tual</w>\nadverti sers</w>\nshu i</w>\npu ree</w>\nml pfi\nanti dote</w>\ncap o</w>\npa str\nmerc ado</w>\nbut ton\nar min\nag g</w>\nlol la\nhorri bly</w>\ner rands</w>\nchristop he</w>\ntime snow</w>\nmonday motiv\nli ss\nscand als</w>\nmc i</w>\ndispropor tion\nâĺ İ</w>\nsur pass</w>\nsamar itan</w>\nso tho</w>\npu rest</w>\nfl att\ntrivi atuesday</w>\ndelec table</w>\nleop old</w>\nhermi one</w>\nchou dhary</w>\nen rich</w>\nÂ¡ Â¡</w>\nsubsi diary</w>\nine qualities</w>\nbachel or\nauto immune</w>\nla kota</w>\ni hop</w>\nad jec\nthe simpsons</w>\nsh es\nse k\ngret chen</w>\nup stream</w>\nhin akhan</w>\ncoper nic\nx tina</w>\nlu g</w>\ntough ness</w>\ne ad</w>\ncli pped</w>\nbi us</w>\nsl v</w>\nfah ren\ndee pak</w>\nca u</w>\nx an\nim mature</w>\ndig ni\nbo bs</w>\nshred ding</w>\nbut tery</w>\naccommod ations</w>\nde ven\nchun ks</w>\nsuper league</w>\nsky bet\nkil dare</w>\nje et\në į\nce k</w>\nwrec ks</w>\npro pane</w>\noh l\ntb d</w>\nquo i</w>\ntrum pp\nmi mo\nreluct ant</w>\nver ne</w>\no ic</w>\nma gh\nar nau\nse ver</w>\nli dge</w>\nstair way</w>\nkicchasu deep</w>\nðŁĶ º</w>\nmach ining</w>\naama admi\not i</w>\nc da</w>\nal it\npan y</w>\ninst alls</w>\nac ct</w>\ne shop</w>\ndi em</w>\nhard well</w>\nfulfill ment</w>\nsc afe</w>\nqu ack</w>\nextrac ts</w>\nswee tened</w>\nfi ghton</w>\nf di</w>\nd inger</w>\nwal tham</w>\nus ur\nrefe rees</w>\nseok jin</w>\ngran n</w>\naf rin</w>\nth n</w>\nsch af\npar cels</w>\nbet is</w>\namar ine</w>\nnom an\nkh tar</w>\nmor itz</w>\ncou pling</w>\nbar ons</w>\nðŁĲ ¸\nÃ ¸</w>\nsl p</w>\nsad ler</w>\nx ander</w>\ntri ad</w>\nmc millan</w>\nkh z</w>\ndivi ding</w>\nìĹĳìĨ Į</w>\ndar yl\nzed d</w>\nle ys\npla ques</w>\nflu ori\ntipper ary</w>\non nell</w>\ndi dier</w>\nlang ford</w>\nim c</w>\nthe sun</w>\nbir dies</w>\nar cha\nye ssss</w>\nt di</w>\ndar ia</w>\ncand ace</w>\nal tam\npal aces</w>\nch it</w>\nsant am\nevent ful</w>\nbook of\nad b</w>\nmon stax</w>\ncre ole</w>\nco el\nâĸ ½\nwe aren\nsten nis</w>\nshe ath</w>\nati sm</w>\ngron ingen</w>\nmlpfi m</w>\nle pre\nwrong ly</w>\nrsp ca</w>\nrendez vous</w>\nacknowle dging</w>\npel vic</w>\nsolic itor</w>\nsla ys</w>\nnue stra</w>\nlo d\nis lander</w>\nfer oci\nfashion show</w>\nra ss</w>\ndge on</w>\nadole scents</w>\nsma shes</w>\nnegli gence</w>\ngrate ful\nved ere</w>\nsw oop</w>\ning l\napol ice</w>\nvand alism</w>\ngan n</w>\njo ao</w>\ndi supdates</w>\nzimbab we\nunder age</w>\nradi ance</w>\nw of\nbour geo\npla s\ncr ani\ngh ue</w>\nwrec kem</w>\nwarran ts</w>\nre form\njim mie</w>\nat wood</w>\nys l</w>\nneil himself</w>\nl bj</w>\ni man\ntan to</w>\nnois se\nver bs</w>\nequip o</w>\nal together</w>\nmam ent</w>\nl ice</w>\ndou glass</w>\ntier ney</w>\npri med</w>\nj hal\nfurn itu\nbraz ili\nv ill</w>\npast els</w>\nn ison</w>\nu ff</w>\nparal ysis</w>\njay e</w>\nim po\nðŁĳ ģ</w>\nstrate gically</w>\npakistan is</w>\nwas sup</w>\nsuper bike</w>\nthank u</w>\ntru elove</w>\nsha ikh</w>\nisrael is</w>\nvi p\nto g</w>\nli en</w>\nla ker\ngrey hounds</w>\ncul ars</w>\nbian chi</w>\nbalot elli</w>\nar ran</w>\nloo s</w>\nstr ates</w>\nhe bron</w>\nar vo</w>\nsunder land\nthe al\ntomb stone</w>\nsand man</w>\nc pac</w>\nthanks giving\nlove him</w>\nlat ino\nan in</w>\naka if</w>\nĭ ãĤ\ntor quay</w>\ndi est</w>\nalli anz</w>\nðŁĺ ķ\ngolf club</w>\ncl lr\nwal cott</w>\nsch nau\npromp ted</w>\nnomin ating</w>\nlen nox</w>\nval et</w>\nmon ro\nmay ward\ne ph\nðŁĶ Ķ</w>\ninter oper\nr da</w>\nre flex\narm chair</w>\nê° ķ\nstri pper</w>\npor ti\nph arm</w>\nham za</w>\nni reland</w>\nne ue</w>\nh pv</w>\nport foli\nsun burn</w>\nfris bee</w>\nbe al</w>\nbapti ste</w>\nx h</w>\nty m</w>\npr ati\no vers\nhaz rat</w>\ndeser t\nder ry\nus ky</w>\nem mett</w>\nach arya</w>\n)_/ Â¯</w>\nshu d</w>\nmay a\nham ill\nra im\nnr c</w>\nfitt ings</w>\ncur vy</w>\nðŁı ĩ\nster ling\nà¥ Ģ\nwal kin</w>\nshort cuts</w>\nmil ly</w>\nast ur\nalpha be\npl i</w>\npe z\nmiss you</w>\nrad ford</w>\nml g</w>\nta eyang</w>\nnotjust lakes</w>\ndu mps</w>\nseren dip\nle ur</w>\nra ving</w>\ne ster</w>\nde priv\nabsc bn</w>\nðŁĳĩ ðŁı»\nscar city</w>\no cr\nmean ings</w>\ncap t\nda hl\nfer mentation</w>\nbri oche</w>\nto win</w>\nout lander\nmassi mo</w>\nen cro\nðŁ¥ ³\nbuil t\npo tam\nkir i</w>\ntm w</w>\nmonit ored</w>\nk ites</w>\npeoples vote</w>\ngray son\níģ ¬</w>\nafri ka</w>\na dies</w>\ni vote\ngy ne\ng annon</w>\ndi x\nc mc</w>\nou ral</w>\nfox andfriends</w>\nbel i</w>\nig ne</w>\ngl an</w>\nkatrin akaif</w>\nco politics</w>\nqual itative</w>\np si\nlu cci</w>\ndisc oura\nâĺ ®</w>\nkel li\ngau tam\ncarac as</w>\nreale st</w>\npu la\nin us</w>\nhill top</w>\nmake aw\natten borough</w>\ntw y\nr arity</w>\npeck ham</w>\nma hon\ncorn elius</w>\nclin icians</w>\nton line</w>\ntb i</w>\nparadi se\nka si\ninev it\nfresh ness</w>\ncolling wood</w>\nlun atic</w>\ndefen se\ncop d</w>\nin fra</w>\nwain wright</w>\nsains bury</w>\nalab am\nte ma</w>\nlac o\nchec ker</w>\nreleg ated</w>\ntren t\nstal ks</w>\nhuff post\nbhubanes war</w>\nast ral</w>\nshare your\nprim rose</w>\nhi me</w>\ncat an</w>\nend ment</w>\nen dow\ncle mens</w>\nmal oney</w>\nhil ary\ngame time</w>\nden ise\ncollabor ators</w>\nb wo\nradic als</w>\ngue tta</w>\nici on\nau a</w>\nsnap matic</w>\nsat chel</w>\nexcav ation</w>\nbase man</w>\ns Ã£o</w>\ngn ation</w>\nfel d\nsurve y\nshah zad</w>\nma st\nanirud hofficial</w>\ntru cker</w>\not ago</w>\ngeo graph\nethe l</w>\nâļ¡ï¸ı âļ¡ï¸ı</w>\ns ver\nmu tt</w>\ninternetof things</w>\nancho red</w>\nwh ouse</w>\nbang la</w>\nbal main</w>\nç¹ ĭãģ\nbreak fa\ná Ģ\ntwi ster</w>\nte tris</w>\nca v</w>\nstag s</w>\ng z\nau b</w>\nstor med</w>\nhel ens</w>\nyar mouth</w>\nst asy</w>\ngustav o</w>\nco sc\nvin son</w>\nup p</w>\nsc ricket</w>\nassump tions</w>\napp e</w>\nnu h</w>\nu er</w>\npre mise</w>\nn aga\ne amon\ncoron ary</w>\nna f</w>\nnorth side</w>\nel mer</w>\nro tar\nout lining</w>\nel f\nre surg\nkat elyn</w>\nin can\nhyster ia</w>\nce e\nam bani</w>\npro lly</w>\nĮ ãĤĬãģ\nax es</w>\nsan jose</w>\nrem brandt</w>\nmag pie</w>\neven ly</w>\nscor sese</w>\nqu aint</w>\nf g\nb buk</w>\nindian football</w>\nweare all\nspd wy</w>\npis ces</w>\nec g</w>\nâĺħâĺħâĺħâĺħ âĺħ</w>\npre orders</w>\n: |</w>\nni pple</w>\nsal azar</w>\nju me\njail break</w>\nmin n\nbas sett</w>\nze tta</w>\njef free\nad jun\ntic on</w>\nsan diego\ndrink local</w>\nchol era</w>\nsolic itors</w>\no bo\ncom post\nni an</w>\nwr a</w>\ntre ach\nic ic\nprofession al\ndel ve</w>\nleg ate</w>\nhistor ia</w>\ncro issant</w>\ncon noisse\nnam o\npalli ative</w>\nchem trails</w>\ni ority</w>\nglobal warming</w>\ncomic art</w>\nbehavi oural</w>\nre sted</w>\nli as</w>\ncli mates</w>\nŁ ãģĦ</w>\nrut land</w>\nnou rish</w>\nmenopau se</w>\nhot ties</w>\ndemen ti\nve spa</w>\nmel ville</w>\nanal ogue</w>\ntz man</w>\nstr ung</w>\nim perfect</w>\ngl are</w>\ncir cling</w>\nros berg</w>\nrec o</w>\noc ity\nlo ire</w>\nem be\ndo ssier</w>\nne el</w>\nnan do\nme a\ngal vani\nfin esse</w>\nag p</w>\nberke ley\nasi m</w>\nâĺº âĺº</w>\nquil ted</w>\nish ere</w>\nun matched</w>\npo tion</w>\nfor z\nat re\nselfi es\njuli ana</w>\nðŁļ ¶\nâĸ º\nmel ton</w>\nâłĢâłĢâłĢâłĢ âłĢâłĢâłĢâłĢ\nspin rilla</w>\npur cell</w>\ned p</w>\nat leti</w>\ntony awards</w>\nra ja\npro gno\nmol ten</w>\nstu ff\np ally</w>\nnobel prize</w>\nâĻ» ï¸ı</w>\nspiritu al\nspe ake\nsa sha\nbri um</w>\ntru ss</w>\ncritici ze</w>\nassassinscre ed</w>\nyor uba</w>\nu lo\nfire man</w>\nworkin progress</w>\nef cc</w>\nfla res</w>\nro bot\nhi kers</w>\ncl l\nshado wing</w>\npat sy</w>\nleh man</w>\nc ns</w>\nå ±\nguad al\nà± į</w>\nra pe\nr honda</w>\nparalle ls</w>\nson ja</w>\nlangu age\nland ings</w>\nz ola</w>\ncr amps</w>\nbur ning\napprais al</w>\njol la</w>\nham m</w>\nkas a</w>\ngul ly</w>\nf go</w>\nuly sses</w>\nri be\nðŁĴ Ħ\nib u</w>\neti enne</w>\nbri ar</w>\nfin ely</w>\ncomb ating</w>\ny ql</w>\ngo tham\nwe chat</w>\nto paz</w>\nprimar ies</w>\nl se\niz z</w>\nhel e</w>\ndispon ible</w>\ncy stic</w>\nbel ichick</w>\nth rush</w>\nkansas city</w>\nge om\nsoli di\nred bubble</w>\nby stand\ncambridge shire</w>\npar fait</w>\nast le</w>\now o</w>\nind ore</w>\nstom ping</w>\nsm elly</w>\nðŁ¤ ĸ</w>\nlocom o\nadm itting</w>\nhol me</w>\nclock wise</w>\nmin sk</w>\nmc co\nfor get\nev p</w>\ncam ra</w>\nab ella</w>\nyo tes</w>\nuniversit yof\nmÃ© xico</w>\nsilver ado</w>\nric ket\ncrom bie</w>\npu j\neradic ate</w>\ndeli ght\ny go\nglam ping</w>\nvic a</w>\ndu ggan</w>\ncoun ters</w>\ncf d</w>\nsc our\nreact js</w>\npu ram</w>\nparas ites</w>\nin ki\nvill en\nstel la\nli mbo</w>\nang as</w>\nk cr\nðŁĴļðŁĴļ ðŁĴļ</w>\nvap ori\nmum ford</w>\noli gar\nà ¼\nal oo</w>\nboo ties</w>\nad r</w>\nk elli</w>\ndru mmers</w>\nav ici\nnature uk</w>\nron al\nin trac\nun splash</w>\nle che</w>\ng oma</w>\nel ine\nenvir o</w>\nbi onic</w>\nbu eno</w>\nmi k</w>\nav in\nstar ling</w>\nem powers</w>\ncake day</w>\nboy cot\nðŁĴļ ðŁĴļ</w>\nðŁĮ¸ ðŁĮ¸\nv ach\nm ci\nfractu res</w>\nger i</w>\nsk ing\nexclu ded</w>\nlu ce</w>\nja ve\nig gy\nevi den\naki stan</w>\na wn</w>\nmor als</w>\nluci fer\nha ban\ntumb ling</w>\nsunday motivation</w>\nmo sley</w>\ncaptain america</w>\nsch icago</w>\nthe one</w>\nmo td</w>\nd ts</w>\nðŁĲ ¼</w>\nrep ell\nii i\nlocu st</w>\ngeo spatial</w>\nmer sey</w>\nimmer se</w>\ndesc end</w>\nber nade\nj s\nboat sales</w>\nwin der</w>\ncran k\nsing leton</w>\ncandid acy</w>\nben a</w>\nðŁı» âĢį\nhigh lander</w>\nol t</w>\nk prs</w>\nhealthy lifestyle</w>\nfour teen</w>\nend the\nith aca</w>\ncircul ated</w>\nr ans</w>\npre valent</w>\nha vas\nsplend or</w>\nroo ster\nkalamaz oo</w>\njewell ers</w>\nenne dy</w>\nrou sey</w>\nes y\ncann ons</w>\nornam ental</w>\n// //\nren don</w>\nwin ne\nmol ding</w>\neid mubarak</w>\ncoun tess</w>\nsimon a</w>\nha wa</w>\nfo es</w>\ndu ster</w>\nsb u</w>\npor tray</w>\nmar ries</w>\ngoo dday\ncho co\nachi ever</w>\nðŁĺ¹ ðŁĺ¹\npre neur</w>\ntr amp</w>\ntom i</w>\nn bat\ngarden chat</w>\nfarra khan</w>\never glades</w>\nab ru\nsou sa</w>\nse ce\nhomes wee\nterre strial</w>\nbar it\nsri devi</w>\nol u</w>\nmel inda</w>\nf rick</w>\ncan dies</w>\nðŁĺŃ ðŁĴķ</w>\nqu reshi</w>\nfamily fun</w>\nexor cist</w>\ncardin al\nny t\ndies el\ncu mulus</w>\ncapric orn</w>\nsi ology</w>\nlor na</w>\ndou gie</w>\nan die</w>\nsuper sport</w>\nc fl\nÐ¿ ÑĢÐ¸\nsay ang</w>\npe ek\nà¸ Ĭ</w>\nlo be</w>\nj em\ning lis</w>\ngg led</w>\nc sn</w>\namne sty\nchu ps</w>\nba es</w>\nsau er\nðŁı Ĳ\nmongo lian</w>\nen et</w>\nback street\ndr illed</w>\nacce ssing</w>\nce o\nb se</w>\nai ken</w>\npur r</w>\nwor sen\nwhe res\nwar k\ntesti fying</w>\nbu ri\nbla st\naw g</w>\nðŁĵ ĭ</w>\nre defining</w>\nhear ing\nu ci\nc mp\nbon i</w>\ntail oring</w>\nta ji\nnoc chi</w>\nem t</w>\nstephen king</w>\nne et</w>\ncompla ins</w>\ncampaig ner</w>\nluci ano</w>\ntwili ght\nti esto</w>\npas sports</w>\nflo yd\ncathe dr\nna ked\ncaregi ver</w>\nb coz</w>\nade cides</w>\nku ri\nly k</w>\nbr aries</w>\ndren ched</w>\ndisc lose</w>\nðŁĴª ðŁı½\nle blanc</w>\nje tty</w>\ngar ty</w>\nchip mun\nb su</w>\nrhyth mic</w>\nic z</w>\nfri d</w>\nanne x</w>\name x</w>\nsolo ist</w>\nlanc ers</w>\narro whead</w>\nspeci fication</w>\nsimul ated</w>\nna is\ninver te\nbo wing</w>\nwor ship\nf z</w>\nabo ss</w>\nsha q\nì¶ ķ\nchalleng ers</w>\nan arch\naamaadmi party</w>\nãħĭãħĭ ãħĭ</w>\nsuffol k\nso corro</w>\nsn ell</w>\ncla dding</w>\nabsor bing</w>\nshaw a</w>\nparticip ates</w>\nðŁį Ķ\nbook stores</w>\nbak u\nseap ort</w>\nko jima</w>\ngab y</w>\npack ard</w>\nelectr ician</w>\nlet it\nmo wing</w>\nfa wad\nyoung jae</w>\nhot mail</w>\nmen ing\nu rie</w>\nintim acy</w>\ncon ti\n: \")</w>\nlifeis good</w>\nin ciner\ni dri\ncraz iness</w>\njour nos</w>\nfran chi\nbott len\nal da</w>\nff es</w>\nk x</w>\nsouth we\nair a</w>\nclay ton\nsco ti\nf j</w>\nbri ga\nðŁ¤ĺ ðŁı»\ndemonstr ators</w>\ny z</w>\nstor k</w>\nna q\ncasc ades</w>\ntravel chat</w>\nplat a</w>\npad ma</w>\nfran ci\nat tain</w>\nbat girl</w>\nlom bard</w>\nhoo s</w>\nd dos</w>\nneon atal</w>\ndiscla imer</w>\nr ss\nr ant\ndi sen\ntex aste\nso cal\nfrac tal</w>\ncam ry</w>\nstri fe</w>\nsn acking</w>\nmu h</w>\nsant ander</w>\nmor ons</w>\ngra f\npar ades</w>\nhu ston</w>\ndru pal</w>\nmi ento</w>\nkir stel</w>\nhy de\nvom it</w>\nforti fied</w>\nsphin x</w>\nda v</w>\nbir yani</w>\nwin nings</w>\ns baseball</w>\nmer ged</w>\nlovel ondon</w>\nling ering</w>\ndream big</w>\ncar leton</w>\nliveli hood</w>\ndjan go</w>\nastri d</w>\ngri ds</w>\ndown e</w>\nbru ised</w>\ns ne</w>\nscarec row</w>\nhel ium</w>\nf nc</w>\nbi ggs</w>\nan ter\nrestor ative</w>\nem pires</w>\nab del\nlife style\nkiwan is</w>\ncolloqui um</w>\nme en</w>\npr ick</w>\nanti que\nze b</w>\nmi mic</w>\nedmon ds</w>\nðŁĳĬ ðŁĳĬ</w>\nq ing\npp el</w>\nmc gill\ninterpre ting</w>\nâŀ ķ</w>\nrash ad</w>\ndo ka</w>\nnarr ator</w>\nelectro magnetic</w>\nash by</w>\nsau ra\niran deal</w>\nâģ īï¸ı</w>\nkrish nan</w>\nin di</w>\nff en</w>\nbre a</w>\nos man</w>\nmultin ational</w>\nchi ppe\nrecruit ers</w>\naus biz</w>\np ounding</w>\nre gen\ncur sor</w>\nrefu sal</w>\nmac s</w>\nin ak\nax ial</w>\nwa ifu</w>\nup cycled</w>\nhindu stan</w>\ncas sini</w>\ncarly le</w>\nscrat ches</w>\nre ef\nman atee</w>\neat ery</w>\nðŁĵ ¢\nun condition\nsen pai</w>\non ther\ncomic book</w>\npro sciutto</w>\nde mar</w>\nmi se\nma ge\nfre ec\naye sha</w>\nal der</w>\nandroid games</w>\nley ton</w>\nho ck</w>\ndoor way</w>\nchicagof ire</w>\naali yah</w>\nsw elling</w>\nbi x\n. ðŁĺĤ</w>\nevan kirstel</w>\ntorpe do</w>\nkon stant\ngenevie ve</w>\nma ia</w>\nha user</w>\ndo torg</w>\nhide ous</w>\nfi k</w>\nsp raw\ne ek</w>\nz appa</w>\nwan dered</w>\n' '\nra jan</w>\nbam bi</w>\n( $)</w>\nwid ening</w>\ntool box</w>\nsa ir\nillumin ating</w>\npra ys</w>\nout patient</w>\ni w</w>\nday o</w>\nlo b</w>\nsw fl</w>\nsha des\ngu ms</w>\ncoo kin</w>\nko di\ngri ffin\ntraum ati\nste a</w>\nslaugh tered</w>\ngod bless\nair time</w>\npseu do</w>\nb sa</w>\nhau led</w>\nar if</w>\nà¸Ńà¸ ĩ\nle l</w>\nwc po</w>\nmil iti\nchar ters</w>\nworl da\nru k</w>\nk gs</w>\ndigital india</w>\nis able</w>\nidyl lic</w>\nesp ino\nmarie tta</w>\ne bo</w>\nteam canada</w>\nab our</w>\nwil ton</w>\nrock stars</w>\nfav ored</w>\nphys ic\nwrink le</w>\ntb r</w>\nd print</w>\nball arat</w>\nad al\nz ey\nðŁĺį ðŁĶ¥</w>\ntom lin</w>\nmt r</w>\npal sy</w>\nfener bah\ntight en</w>\nphil ia</w>\nir oning</w>\nry u\nb ant</w>\nenqu ire</w>\nca ir</w>\nabur ger</w>\ntru n</w>\ngreen berg</w>\nchau han</w>\nir ina</w>\nsh ani\ntrend setter</w>\npre tt\nzaf ar</w>\nalo ve\nv ici\npan ic\nno o</w>\nlu stre</w>\ndisrup ted</w>\nbal lis\nson sof\nmon si\ninst ac\nake st</w>\nëĭ ¤\nkw ame</w>\nhorror movies</w>\ndistric t\nsau cy</w>\nmb an</w>\nar mies</w>\nwith drawn</w>\nmed ics</w>\nloft us</w>\ner oom</w>\nbe kind</w>\nar ns</w>\nall on</w>\nun ison</w>\ndavi ds</w>\ncr at</w>\nnicot ine</w>\nso or\nsm x</w>\non co\ncospla ying</w>\nzombi es\nhar ms</w>\ne ger\nro sy</w>\nmoon shine</w>\nfe in\nce tt</w>\ndu brov\nreg ents</w>\nben itez</w>\nðŁĳıðŁı¼ ðŁĳıðŁı¼</w>\nste c</w>\nm alia</w>\nprioriti ze</w>\nic eland\nft se</w>\nv amo\nlam ont</w>\nhomo sexuality</w>\nbre es</w>\nregu i</w>\ncb p</w>\nte j</w>\nsky sports</w>\ndeter gent</w>\nsha sta</w>\nde rel\nconserv ancy</w>\ncolori zed</w>\naccol ades</w>\nvis o</w>\nshow your\nnan ow\nbice ps</w>\nus ability</w>\nbi m\ndailys ketch</w>\npearl jam</w>\nstran gest</w>\nmega deth</w>\nbroad casts</w>\nbar ren</w>\nar ton</w>\nchri ss\nconfi gu\nlu res</w>\nis the\ne ul\nrailway ana</w>\nglobal health</w>\ngi anni</w>\nu aap\ns lum</w>\nconsci ously</w>\nab re</w>\nn up\nbud get\nv ada</w>\ne sch\nreal ness</w>\ner ased</w>\nth unt</w>\nbe z</w>\narmist ice</w>\nðŁĳ ¹</w>\nsh run\no led</w>\ndriver less</w>\nðŁ¤· ðŁı»âĢįâĻĢï¸ı</w>\nwon dr\nsk an\nsal aam</w>\nmother land</w>\nh wang</w>\ngen o</w>\ngang nam</w>\ntw right</w>\nendor sing</w>\nen ic\nador ation</w>\npau sed</w>\npatric ks</w>\ndo cked</w>\nplat te</w>\nff xv</w>\nethnic ity</w>\nauto show</w>\nside show</w>\nafter life</w>\nre located</w>\norphan ed</w>\nfood network</w>\ndare to\nand ra\nsla ps</w>\nv live</w>\nswim s</w>\nre imagined</w>\nmist le\nre vise</w>\nreal ity\nbhar ti</w>\nðŁĴĻ ðŁĴĽ\nlate st\nprou dest</w>\ngra sses</w>\nlan yard</w>\nfresh est</w>\ncarcin oma</w>\nanom aly</w>\nzieg ler</w>\nsum ner</w>\nly rix</w>\ngor g</w>\nis d\nav el\nswild life</w>\nme squ\njohn cena</w>\neuro league</w>\nsab er\nmaster ful</w>\nyar ra</w>\ncogn ition</w>\njacob son</w>\nabo lic</w>\nsir loin</w>\nshuk la</w>\nmoj ito</w>\nsu pere\nst weet</w>\nme z</w>\ne sa\nrudol f</w>\ngur a</w>\nwhere you\ntt m</w>\nwin s\ntrust worthy</w>\nny k</w>\nbra den</w>\ntable top\ngood food</w>\nes on\nbe k\nlingui stic</w>\ngra ys</w>\nch ath\nh cs</w>\nmon i\nde ans</w>\ncu ssions</w>\nch ell</w>\nslo ws</w>\nhe mi</w>\nd app\nshar pie</w>\nboo sters</w>\na os</w>\nstr ack</w>\nse dona</w>\nmu eller\nhard wick</w>\nor nate</w>\nthor a</w>\nsal ud</w>\no twol\nch um\nmi ho</w>\nfor age</w>\nthel ittle\ntear ful</w>\nones elf</w>\nmin dy\nsm g</w>\ngmb h</w>\nemer ald\nðŁĶ´ âļªï¸ı\ntu tti</w>\nrecep tions</w>\nre vising</w>\ni brox</w>\ntope ka</w>\nsal ami</w>\nexpan se</w>\ni books</w>\ndob son</w>\ncli o</w>\nat s\nðŁļ Į</w>\nmo ha\nis ance</w>\nshu tters</w>\nmoo t</w>\njan ine</w>\nmarvel comics</w>\njor dani\npos er</w>\nkenne th\nhy ung\nde ja</w>\nase ball</w>\nspeci ality</w>\neu ston</w>\nclassic car</w>\nhad ith</w>\nðŁĲ ī</w>\nchas ing\niz o</w>\ngros ven\nag lia</w>\nthisdayin history</w>\nt row</w>\nom ile</w>\nhu ar\nby n\nsal ine</w>\ndiv ine\ndemon ic</w>\nty ran\nhan dover</w>\nrevit alization</w>\npa ella</w>\ncryp tic</w>\nse dg\nm end</w>\ndun kirk</w>\nbre d\nwal d\nsport scar</w>\na ard\nwhe aton</w>\nda ener\nk lan</w>\nbr t</w>\nbakhta war\nspi res</w>\nschu bert</w>\nro ti</w>\npoli sh\no se\nag ame</w>\nwonder con</w>\nprote stant</w>\nbo sa</w>\nðŁĺ Ł</w>\nd Ã¼\njoy ride</w>\nger trude</w>\nâĿ Ŀ</w>\ngil a</w>\nv h\ntw a</w>\ntra v</w>\nswal lowed</w>\nstar ve</w>\nla in\nent ren\nrei ki</w>\nsu kh\ncra ic</w>\naz u</w>\nweb page</w>\nkee fe</w>\nhypo the\nhir sch</w>\nhel le</w>\ncamp ground</w>\nw amy</w>\ntra vi\nsha hi</w>\nsan deep</w>\nru i</w>\nhan uman</w>\ndw p</w>\nreposit ory</w>\nno or\nno ff</w>\nun real\np ell</w>\nblack history</w>\nhar vick</w>\nma scar\npay ee</w>\npa sha</w>\ngastron omy</w>\nd ÃŃ\nai g</w>\nrosen thal</w>\nopen day</w>\nembelli shed</w>\nt tip</w>\nsun bathing</w>\ngo pack\nend ome\nï¸ı #</w>\ninvali d</w>\nfinal four</w>\nst fu</w>\nsquish y</w>\nra sta</w>\nmo sch\njam esc\ndie trich</w>\nsel a</w>\nmel b\nel vi\nt dp</w>\nsun i</w>\nsli t</w>\nj ha\nbi za</w>\nspi ked</w>\nl li\nl illard</w>\nvam pi\nsyno psis</w>\naz har</w>\nkendrick lamar</w>\nĮãĤĬãģ ŁãģĦ</w>\nheart less</w>\ncountry file</w>\nair play</w>\narrog ance</w>\npre e</w>\nvirtu oso</w>\nãħłãħł ãħłãħł\nraj u</w>\nle bu\nfor ward\ntu g\ndro s</w>\nmondaymotiv aton</w>\nconcep cion</w>\nthel o\npad i</w>\nlooo ol</w>\nÑĢ Ð¾Ð´\nit ss\neth ical\nend uro</w>\n__ :</w>\nexpend iture</w>\nmon ste\nmas king</w>\nterri ers</w>\nib is</w>\ne mber</w>\ncu mple</w>\npunctu ation</w>\npi per\nir vin</w>\nade e</w>\nyy yyyy</w>\nflash backs</w>\ncel sius</w>\ndon nie\nbo gota</w>\nben evol\nthe script</w>\nshil pa\npro se\nfin dia</w>\nze ke</w>\nne ko</w>\ndo ves</w>\nblues lyrix</w>\nfro sh</w>\nsowe to</w>\nmp lo\nal ai</w>\nsab i</w>\nraq qa</w>\nwf tv</w>\nstro ller</w>\nian somerhalder</w>\nðŁĶ ª\nan on\nmo seley</w>\n! ?!?</w>\nsta king</w>\nmol y</w>\ncar tri\nc sg</w>\nast or</w>\ntransc end\nma er\nde ux</w>\ncow girl</w>\nsas k\npun ter</w>\nma ken\no ates</w>\nlove tt</w>\ngrow ler</w>\nsag in\nv n\nssi ble</w>\nofficeof rg</w>\ny mc\nsab ar\nfaul ty</w>\nap ha</w>\nak on</w>\nðŁĳ «\nsnow don</w>\nae w</w>\nraise the\nðĿ ĵ\ngrue some</w>\nclement ine</w>\nsp ing</w>\nlat a</w>\nworlden viron\nmi mic\ncan aria</w>\nbakhtawar bz</w>\nao a</w>\nfal a\nãĤ Ń\navi va</w>\nyou uuu</w>\nthi gh\nla dders</w>\ngu mbo</w>\ntz ky</w>\nfu zz\nplastic pollution</w>\nest ate\nstrength ened</w>\nk ant</w>\ndr in</w>\ncal vert</w>\ntransform ational</w>\nfrigh tened</w>\nmac lean</w>\nelited angerous</w>\near thy</w>\nt son</w>\nto da</w>\nj nu</w>\n.. ,</w>\nmic hal\ni ban\nje ong\nis real</w>\nsim coe</w>\nexclu sives</w>\nblue bells</w>\nben e</w>\nte u\npil sner</w>\npens ke</w>\nathe ists</w>\nm pu\ncartag ena</w>\nðŁĴĹ ðŁĴĹ\nmillion aires</w>\nkk kk</w>\nit ar</w>\nsubscri ptions</w>\nremo te\nma fi\nhin ton</w>\nw cc\nho k</w>\nds b\nab leton</w>\nsevent y</w>\npun ks</w>\ne indhoven</w>\nsh one</w>\nmcfar lane</w>\nlim popo</w>\nempha si\nÃ ¼</w>\nsin fo</w>\npe tre\nman grove</w>\nch ino\nber tie</w>\nplay lists</w>\npush awards\np af\ndeb bie\nc do</w>\nr ino</w>\nðŁı¾ âĢįâĻĤï¸ı</w>\nfol ke\nbon nar\nth ine</w>\nsl an</w>\nhal ter</w>\nevi e</w>\naw some</w>\nvul tures</w>\nspar ky</w>\nseiz ures</w>\nâľ Ķ\nram one</w>\nine ffe\nal n\npro ctor</w>\nast ra\nthe voice\ngro te\nsci on</w>\ndead line\nam aya</w>\ntain ted</w>\npatter ned</w>\nexce eding</w>\ncross fit\nkay lee</w>\ndrop box</w>\nru shes</w>\ntack led</w>\nmo by</w>\nretro gamer</w>\nn cbd</w>\nbenef itting</w>\nshay kh</w>\nguild hall</w>\ngen try</w>\ndream cast</w>\ndread ed</w>\nbun dled</w>\nth aw</w>\nrevol ving</w>\nn pt</w>\nkylie jenner</w>\nimagin ative</w>\nron i</w>\nover came</w>\nfamily time</w>\nds burg</w>\ncar naval</w>\nrelation ship\nrecogni zable</w>\ncor oner</w>\nho le\nfan fic</w>\nemir ates\nbur ritos</w>\nanaly se</w>\nthin ner</w>\nne es</w>\ngalli poli</w>\nbl r</w>\ncat woman</w>\n-- >></w>\nau lt\nada ily</w>\nnau ghty\nili o</w>\nsolit aire</w>\nmtv br\njocel yn</w>\narun ach\nrep ent\nsouth gate</w>\nhy acin\nessenti al\nfent on</w>\nand um</w>\nit or\ngo pal</w>\nsl inger</w>\npo sei\naw il\nwi elding</w>\nra ila</w>\neli as\na sto\nÃ ¤</w>\ntend ency</w>\nstr ata</w>\nker t</w>\n< -</w>\nim acele\nda es\nsti mulus</w>\nhan ley</w>\nfit nes\nec stasy</w>\nlim ous\nha iling</w>\nðŁ¤ Ń</w>\nchis wick</w>\ntar ies</w>\nsla v</w>\npul i</w>\nmoderni zation</w>\nblack mail</w>\nb ingham</w>\nh fx\n+ +\nðŁĩ®ðŁĩ ³\nni v</w>\nwe a</w>\nprofess or\nk off</w>\nbol ster</w>\nsu ave</w>\nsequ ences</w>\npepper oni</w>\nnot te</w>\ndre n</w>\nãģ¨ ç¹ĭãģ\nhs v</w>\no ga</w>\nap tly</w>\nz ad\nexcel si\nrin ka</w>\nmol dova</w>\nmin n</w>\nma bel</w>\nconferen cing</w>\nbas ing\nof er\nob si\nhamill himself</w>\ncare less</w>\nbrief ed</w>\ninhe rent</w>\npar ish\ndub nation</w>\ntown sville</w>\nsar awak</w>\ngee ky</w>\ndoncaster isgreat</w>\nwas abi</w>\ngu p</w>\nphen o\ndra inthe\ncarrie underwood</w>\nble eds</w>\nbbc world</w>\nane w</w>\nalta f</w>\ndul wich</w>\nani ston</w>\nw ti</w>\nsumat ra</w>\ngra fton</w>\nbl n</w>\nme ster</w>\nbode ga</w>\nre go</w>\nes q</w>\nan jo</w>\nsump tuous</w>\nmai sie</w>\nï¿ ½\nwil t</w>\njak ob</w>\nel vis\nse pul\nmu ster</w>\nair pollution</w>\npresident e</w>\nhappy monday</w>\nexten sively</w>\nfl ondon</w>\nt ls</w>\nplay ing\npe ed</w>\ndin ho</w>\nvar dy</w>\npi ka</w>\nn iro</w>\nau cus</w>\nðŁį ¦\nnu ll</w>\nel ondon</w>\njuvent us\nimag ines</w>\ndis ab\nlit o</w>\nd ura</w>\nwork places</w>\npromo te\nmc caf\nwood work</w>\nwaw x</w>\nà® ª</w>\ntt ino</w>\nshar i</w>\nsem per\nbetter together</w>\nðŁĳĬ ðŁı»\nze bra\npon dering</w>\nen chil\nho m</w>\ncosm ic\ntan z\nmo cked</w>\nec cc</w>\nath ed</w>\nabo lish</w>\nprop eller</w>\nparis agreement</w>\nassemb lies</w>\nindu stry\nfraudul ent</w>\npe sa</w>\nchang min</w>\nax x\nðŁĴ µ\nirr ational</w>\ncu sa</w>\nramad han</w>\nocta via</w>\non elove</w>\njac ki\nbar ak\ntaxi der\nseri ous\nnathan fillion</w>\nmc en\nch k</w>\npo part</w>\ngrav ity\ncopp ola</w>\nreading fc</w>\nillu sions</w>\nj ig</w>\nww x</w>\nre sh</w>\nex porting</w>\nbuzz ard</w>\nâĻ ¤</w>\np cm</w>\nlan apar\nko s\narom as</w>\nantal ya</w>\nww dc</w>\nven a</w>\nphil a</w>\nball in\nðŁĳ Ħ</w>\nquin ta</w>\nma o\nf ery</w>\neigh ty</w>\nsentim ents</w>\nsafe guarding</w>\nr wa</w>\npu ffs</w>\nluc ille</w>\nde cath\nsl u</w>\nnu gent</w>\nde ter</w>\nbraz il\nze iss</w>\nsuper bowl\nsubsi dy</w>\nalter n\nhi dalgo</w>\nenz ymes</w>\nä ½\ntag ne</w>\nhair dresser</w>\nadri en</w>\nwalk out</w>\noppo ses</w>\ncan tina</w>\nbed side</w>\naf an\nðŁĶ Ĺ\nprophe tic</w>\ndan es</w>\nun successful</w>\nsuper charged</w>\npk k</w>\nexem ption</w>\nhart le\nsecu lar\ncli pping</w>\nbr s</w>\nunited way\nc net</w>\npat chy</w>\nha gan</w>\ne en\nâļ ľ\nvar a</w>\nsym pathi\nnever trump</w>\naffir mation</w>\nom f</w>\nny cfc</w>\nma ja</w>\nsur ro\nkeer th\nup scale</w>\nsandal wood</w>\nmon archy</w>\nkno bs</w>\nå ĭ\npo tholes</w>\nhunger games</w>\nter races</w>\nna sir</w>\ncoun sell\nwelcome to\nwa q\nse aman</w>\nm ita</w>\nstun ningly</w>\non theroad</w>\nin ability</w>\n) !!</w>\nbon go</w>\nant v</w>\nsp ut\nworldenviron mentday</w>\nresu sc\ny td</w>\nfi m</w>\neun hyuk</w>\nsa chin\nrose anne</w>\ncler mont</w>\nape c</w>\nam ina</w>\nv ening</w>\nn antes</w>\nal most\nsin us</w>\nex as</w>\nty l</w>\nti en</w>\nple ad</w>\nlanc s</w>\nbur naby</w>\nre k\njo om\nobserv ers</w>\ndisco graphy</w>\ncl g</w>\nâĻ ¦</w>\nsn ack\nr ti</w>\no ily</w>\ncrystal li\nbru te</w>\nweb development</w>\ntopp ings</w>\nla f\nan is</w>\nad der</w>\nreli ving</w>\ncar lin</w>\nbattle of\nwe g</w>\nsyri an\npon t\nn dc</w>\nlagh ate\nyu ma</w>\nsp p</w>\np iti\nro bbing</w>\nmart ing\nrey kja\nraj put</w>\nnc ds</w>\nkie wicz</w>\nâĢ¢ âĢ¢</w>\nvam pire\nsubstan tially</w>\nopio ids</w>\nnepal i</w>\nk line</w>\nar oo</w>\nunder stand\nlit t</w>\nu it</w>\nthro mbo\nsar ies</w>\nqu ot</w>\nb alling</w>\nt tr\ns gh</w>\nphilip p</w>\nbr ant</w>\nac l\nm ello</w>\nwhit taker</w>\n. ;</w>\ndefi ant</w>\nb gc</w>\nrepl ying</w>\nmir ren</w>\nmetamor pho\nsch wab</w>\nbul ge</w>\nutili zed</w>\npick ering</w>\npar don\nd sa</w>\nà¸ Ī\ndoo ley</w>\ncumul ative</w>\nÐ »\nur gency</w>\ne mir</w>\n+ /-</w>\n¦ Ī</w>\not as</w>\nâı ³</w>\nstation ed</w>\ngrape vine</w>\nar ac\nkaran johar</w>\nf ancy\nsau l\ncoo gs</w>\nlgbt q\nØ§Ù ħ\njav i</w>\nu mmer</w>\npl l\nden is\ndai pur</w>\npu ffin</w>\nlewi sham</w>\nfand om\nco pe\nves matter</w>\ns ve\nhel pless</w>\ndeo dor\nostr ich</w>\nkaz an</w>\nfriday the</w>\ncon dor</w>\nv x</w>\nsophom ores</w>\nrob les</w>\ncu tt</w>\ncli mbers</w>\në¦ ¬\nsle g</w>\nsn f</w>\nmac ys</w>\nhydr ating</w>\ngrou pe</w>\npo yn\nmou lin</w>\nhg tv</w>\nlmfa ooo</w>\nsulph ur</w>\nasdfghj kl</w>\nannab elle</w>\nhump back</w>\nbra ved</w>\nviswas am</w>\nmulti purpose</w>\nhu midi\nescor ted</w>\nbarb ican</w>\nf ad</w>\ncor sa</w>\nðŁ¤ «</w>\npi ppa</w>\nhere to\ncan y\nser gi\nor cas</w>\no vie\ned ou\ns any\nglob alization</w>\nman cini</w>\nfood truck</w>\nf is</w>\ndefi brill\nsch re\nsma fia</w>\nlove wins</w>\nla ut\nk aka</w>\nhol lande</w>\ngame on</w>\nresurg ence</w>\nout side\nolympi ad</w>\nint an\nabstr action</w>\nrapi d\npal om\ncal le\njas min</w>\nattack ers</w>\nswag g</w>\nmit ra</w>\nky lo</w>\nà® ²</w>\nher mitage</w>\ngor do</w>\ne ira</w>\nso sfam</w>\nroll out</w>\nexc ite</w>\nsy nod</w>\nmer rill</w>\nc als</w>\nas sa</w>\nliveli hoods</w>\nju ve\nthe black\ngopack go</w>\nant lers</w>\nalban ian</w>\nwool ly</w>\nqu iche</w>\npuri fication</w>\nare th</w>\nsmar thome</w>\nne k</w>\nall blacks</w>\nmex icans</w>\nis m\nger ms</w>\ncomple xion</w>\nmar ck</w>\nu shi</w>\nðŁĲ Ĳ\nchar l\nca stic</w>\ntill erson</w>\ngiuli ani</w>\nbiode gradable</w>\nmal bec</w>\nbo is\nju bil\nim es</w>\nr ame</w>\ngene tic\nesp nu</w>\nch ley</w>\nso ho\ngo pher\ng sc</w>\nbuu ren</w>\ncu be\nbridesma ids</w>\nwebin ars</w>\nto e\nmani pur</w>\nviol ently</w>\nnotic ias</w>\nex changing</w>\nchi ev\nreplac eable</w>\nmuay thai</w>\nbu ss</w>\nsp il\ninstal ment</w>\ndiv ya</w>\ncait lin\no lim\nfil tering</w>\nwhirl wind</w>\nsta red</w>\nprior it\npr am\npompe ii</w>\nmono logue</w>\nk ite\nbu ka</w>\nâĢ¦ ..</w>\nvac cine\nbre ro</w>\nwoz ni\nsol ent</w>\nre ferr\nmy rt\ngridi ron</w>\ngalatasar ay</w>\nfro ze</w>\nclare mont</w>\nðŁ¥ ĥ</w>\nvictori as\nssel dorf</w>\npa stures</w>\nnet neutrality</w>\nch or</w>\nðŁĳ ģ\nà² ¿</w>\nwe ho</w>\nsymp tom</w>\njo sel\nin ous</w>\ndragon con</w>\npower ball</w>\np te</w>\nfour thofjuly</w>\nec la\near buds</w>\nwhere abouts</w>\nsalt life</w>\ndepriv ation</w>\nch ter</w>\nwi ggle</w>\nsyste m\nps st</w>\nch az\nd any</w>\nri mo</w>\noax aca</w>\nlanapar rilla</w>\nbarcel on\nmelanch oly</w>\nway back\nho tro\nn si\nl illy\nkur o</w>\nja han</w>\nintellec t</w>\nboard game</w>\nðŁı Ĭ</w>\nsneak peek</w>\nk prc</w>\njail s</w>\ncand el\nzan zi\nmor timer</w>\nstar ch</w>\nra gs</w>\np fa</w>\nlong live\nk art\ngir ona</w>\ncro cker</w>\nchristop h</w>\nprecau tions</w>\nwar ship</w>\nper m</w>\nparen t\nvan gogh</w>\ngif ford</w>\nallegh eny</w>\nra yn\nut m</w>\nsten cil</w>\nrec alling</w>\npen ney</w>\nz azzle</w>\nìĥ Ŀ\nhin ds</w>\naren as</w>\nnu ev\nlaw ler</w>\ngu in</w>\ndo this</w>\nðŁĳ ķ</w>\nì¶ķ íķĺ\nwe g\nti b\nri din</w>\ncomplex es</w>\nturbul ent</w>\npe sos</w>\nde marcus</w>\nvall arta</w>\nsam sun\nkis ses\nhein rich</w>\ndeport es</w>\nwil ms\nur d</w>\nthen ext\ninki gayo</w>\nho wi\nfir sts</w>\ncarri age\nclean liness</w>\nmas war\nis ch</w>\nax el\nsi zzle</w>\nroad house</w>\nfr ans</w>\nent ourage</w>\nco bble\nboo th\nbenedic t\ntal on</w>\nfc u</w>\nyear ofthe\nray on</w>\nraider nation</w>\nfo yle</w>\nko val\npi anos</w>\nl pg</w>\nbur mese</w>\nman ure</w>\ngeo caching</w>\ncosc ino</w>\nb np</w>\nfer ra\nstro phy</w>\nmar ais</w>\nce es</w>\nlegen dof\nkat niss</w>\neno ch</w>\nav ed</w>\nyou know\nd prk</w>\nðŁĺ¢ ðŁĺ¢</w>\nsp un\npro st</w>\nsor rows</w>\ncent red</w>\nke a</w>\ngal icia</w>\n? ðŁ¤Ķ</w>\nÑĢÐ¾Ð´ Ð°</w>\nbou chard</w>\nðŁĴĻ ðŁĴľ\nyu i</w>\nseed lings</w>\njon ah\nreco vers</w>\nny rd</w>\nboard room</w>\nsu ma</w>\nmy japs</w>\ntun g\nsha i</w>\nir gc</w>\neli o</w>\nwag ons</w>\nka shi\npolic emen</w>\njohn nie</w>\nale coscino</w>\nshop ify</w>\ndot ted</w>\nde tri\nva w</w>\nto fficial</w>\nin your\nchal mers</w>\ntrac ed</w>\nno vi\nby es</w>\nari el\nnipp on</w>\nla pel</w>\ngri ez\nb gs</w>\nfool ing</w>\nd ita</w>\nvijay sethu\nnm wx</w>\nas ot</w>\nkr anti</w>\nhel m\nve di</w>\nsic kest</w>\nmo chi</w>\nk abo\nshru bs</w>\nhe red\nb sp</w>\nsq m</w>\nham r</w>\ndul kar</w>\nanth a</w>\nnr f</w>\navoid ance</w>\nat en</w>\npubli x</w>\nbe arers</w>\nnas i</w>\nha p</w>\nh ells</w>\nðŁĸ ¥</w>\nà¸ ·</w>\nthelast jedi</w>\noh wx</w>\nðŁį «\nwa hoo</w>\nthere se</w>\nrec aps</w>\nss nhq</w>\nbird photography</w>\nv ay\npet ti\npau lo\nbel vedere</w>\n( *\ngr l</w>\ndu vet</w>\nc pec</w>\nsa it\npor sch\nmeas urable</w>\navi ators</w>\nfre mantle</w>\nbre en</w>\non om\nme and\nlife saving</w>\neu ref</w>\nen don</w>\nembar as\naira sia</w>\nel is</w>\ndun kin\nstar magic\ns ill</w>\nporto bello</w>\nki efer</w>\nex e</w>\nmu ted</w>\nãģ ¦\nwe thepeople</w>\nlogi a</w>\nliber al\ntheforce awakens</w>\nmin ed</w>\nhaun ts</w>\nfreck les</w>\ncare taker</w>\ns india</w>\nâķ Ĳ\ndev lin</w>\nlist on</w>\ndirection er</w>\noh n</w>\nfi garo</w>\nem manuel\ndu bois</w>\ncl ones</w>\nbru ise</w>\nðŁİĪ ðŁİī</w>\ndisin fe\nder matology</w>\nas r</w>\ns watch</w>\ndis comfort</w>\ntam anna\npi day</w>\nmack en\nk atic</w>\ndelu sional</w>\nshaw nee</w>\ngu d\nal bino</w>\np ali\ndin gh\ncucu mbers</w>\ncoffe y</w>\nanticip ating</w>\ntreas ured</w>\nweb summit</w>\nshel tered</w>\nsav or</w>\npedago gy</w>\nm gs</w>\nsh ma</w>\ns bu\nden ali</w>\ncam pos</w>\nbubble gum</w>\no ir\nle aps</w>\ny ler</w>\nr one\nsansk rit</w>\nmin t\nmeat less\nfuturi st</w>\ndu de\na vel</w>\nprote sted</w>\nsqu ire</w>\nz aki</w>\nsz n</w>\nhar court</w>\ncycl one\nbour dain</w>\ngather ings</w>\nd ant\nadvent urer</w>\nparag on</w>\nalt man</w>\ndd ing\nban erjee</w>\nsnorkel ing</w>\nmother well</w>\nmis sy\nen der\nglo ws</w>\nki wis</w>\nchick pea</w>\npor o\ne fron</w>\napp t</w>\nu y</w>\nspeci fied</w>\ngab by\ne strada</w>\ncom bos</w>\nbour bon\nvin i</w>\nvar un\nsteph ani\nkey words</w>\ncar vings</w>\namit abh</w>\nwr ought</w>\ntw al\nre els</w>\nclu bbing</w>\nubi quit\ncri t</w>\nambed kar</w>\næ Ļ\nprun ing</w>\nvaccin ated</w>\nboe ing\ns ks</w>\nlo ona</w>\nhypno sis</w>\nedel man</w>\npho l</w>\nhe w\ncolo sse\nmckin sey</w>\nu on\nto te\nsacrific ing</w>\nox i</w>\nn ang\ne mu\nÐ¿ÑĢÐ¸ ÑĢÐ¾Ð´Ð°</w>\nm th</w>\nkers wednesday</w>\nargu ed</w>\ntimel apse</w>\nris king</w>\nregul ating</w>\nni gh</w>\nlikeli hood</w>\ncu bic\nau ction\nrein for\npi stor\nno ses</w>\nye l</w>\nsnu ggles</w>\npe i\njean ette</w>\nta ku</w>\nri th\nguy z</w>\nà¸ ŀ</w>\ny te</w>\nver ted</w>\npay soff</w>\njau regui</w>\nhoo ligans</w>\nprocedu ral</w>\nmi b</w>\nhar dy\nel eng\nchec kers</w>\nall ine</w>\nthe met</w>\nprou dof\nkeerth yofficial</w>\ncollabor ator</w>\nni u</w>\ninfl icted</w>\nadv ani</w>\nre twee\nmemor iam</w>\nf icial</w>\nti ghter</w>\nsal em\nre viewers</w>\nbr ics</w>\nben digo</w>\nam ell</w>\ntur kish\nsush maswar\npaul son</w>\npal awan</w>\nmol lie</w>\nstitch er</w>\ns burgh</w>\nir u</w>\nhay dn</w>\nen ers</w>\naro a</w>\nu zzi</w>\nsaraj evo</w>\nhel a</w>\napol lo\nnine ty</w>\nvac a</w>\nsp on</w>\nvent u\njel ena</w>\nhei fer</w>\navo ids</w>\nsp ine\npri ze\nmar ist</w>\nre creating</w>\nme de</w>\nwoo den\nfind lay</w>\nro fl</w>\nn di</w>\ncompreh end</w>\nyu go\ny Ã¼\nto work</w>\nu fos</w>\nson ar</w>\npi ston</w>\nrecor ding\ntent ative</w>\nart forsale</w>\npel lets</w>\nfre do</w>\nÙĪ Ø±\nmu ses</w>\ncustom ization</w>\npro found\nis ner</w>\nide ally</w>\nsi am</w>\nplan kton</w>\ncm dr</w>\nman ger</w>\nfran ken</w>\ncustomiz able</w>\nà¤ ®\nwalk away</w>\nswi vel</w>\nvast ly</w>\nno ton\nlex a</w>\nex moor</w>\nz as</w>\ntan te</w>\nreduc tions</w>\nlol ly</w>\nhip sters</w>\nbenef ited</w>\në ²\nww www</w>\nmascul ine</w>\nfi ji\ndre y\nph ill</w>\nane ous</w>\nnic ol</w>\nmen dez</w>\ndisapp ro\nch ner</w>\nthrough s</w>\nshen mue</w>\neast man</w>\nðŁĲ İ\nyu ck</w>\nunder tale</w>\nre ys</w>\ngo beavs</w>\neng en</w>\nc na</w>\nmer r\nbir k\nãģ¨ç¹ĭãģ ĮãĤĬãģŁãģĦ</w>\nâĥ£ @</w>\nyn na</w>\nste ed</w>\noffen der</w>\nat um</w>\nvani shing</w>\npresi denti\nlove them</w>\ng nocchi</w>\nfri ggin</w>\nper il</w>\nmad hya</w>\nag ne</w>\ndee jay\nmar nock</w>\nm tb\nfold able</w>\n@ ___</w>\nstand re\nbron x\nbow ski</w>\nfin ite</w>\ncro ckett</w>\nb sf</w>\nge tit</w>\nseren awilliams</w>\nmir o</w>\nignati us</w>\nsla y\nrin se</w>\nfon due</w>\nsel dom</w>\ns more</w>\ngan i</w>\ndy ce</w>\ndmit ry</w>\ncru mb\nlate post</w>\npri mark</w>\noh ana</w>\nflor als</w>\ndo a</w>\nremembrance day</w>\nd ds</w>\nazi one</w>\ntoon ami</w>\nair port\næĿ ±\nth ad\nfi st\ndine sh</w>\ndr who</w>\nad words</w>\nadmi rer</w>\npro je\nkyrgy z\nà «\nmanife station</w>\nle wan\nj ic\nthi bau\nle ased</w>\nvan ity\nnouri shed</w>\nnever theless</w>\naug mente\nfu elled</w>\nche ad\nwil shere</w>\nru di\np z</w>\nmy co\nmor ro</w>\nherbali fe</w>\nhardro ck\nde man</w>\ndre ality</w>\nsp ades</w>\nce vic\nbha i\nbar on\nultimat efan\nhou news</w>\nto bi</w>\nstru t</w>\nke el</w>\naffili ation</w>\nthe masters</w>\nsm al\nhu e\neste ban</w>\ncon v</w>\nom nic\ndatab ases</w>\nco v</w>\nter ti\nst g</w>\nsnoop dogg</w>\nmetab ol\nleth bridge</w>\nðŁı» âĢįâĻĢï¸ı\nyear ling</w>\nresidente vil</w>\nnws l</w>\niy aki</w>\ngriez mann</w>\nc ous</w>\nðŁĵĿ :</w>\ntor ian</w>\nsam i\nðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\ng are</w>\nalli ances</w>\nwhit field</w>\nwe ther</w>\nrefin ing</w>\ncoy i</w>\nkra ken</w>\nðŁĺĺ âĿ¤</w>\nsingul arity</w>\nlil i</w>\nh ns</w>\nbol dand\nwaw rinka</w>\nmisogy ny</w>\nlo vers\nc q</w>\nb dg</w>\nad ona</w>\ngar ter</w>\nwomen of\nsc d</w>\nrecogn ising</w>\nmun a</w>\nstr ou\nsign alling</w>\nlare do</w>\nhell boy</w>\nalek sand\nun available</w>\npedi atric\nas in\nmer ia</w>\nri shi\nfuturi sm</w>\nw ye\npolari zed</w>\ne we</w>\npro pel</w>\nin forms</w>\ncre ase</w>\n~ \"</w>\narti ston\nlike for\nheidel berg</w>\ner ra</w>\nlife in\nlen ny\ninter rupt</w>\ncohe rent</w>\nca z\nvick ers</w>\nle veled</w>\nf bs</w>\ncab ins</w>\nbu mmed</w>\napost les</w>\nwe h\nten don</w>\nsouven irs</w>\ninfu ri\npier ce\nasse t\nm las</w>\ngo th\ndi ggin</w>\nann as\nyl or</w>\nth waite</w>\nsw el\npan era</w>\nmur derers</w>\ncroo ked\nbs go</w>\nac u</w>\na on</w>\nre an</w>\none of\nko hl</w>\nbloo dh\npest icide</w>\nlost dog</w>\nfle xing</w>\nëĤ ĺ\nsu pra</w>\neter nally</w>\nðŁļ Ļ</w>\npa olo\nol an\nmom o\nis elle</w>\ncaptain marvel</w>\ns lou\nmistak enly</w>\nakhi lesh</w>\nmer t</w>\nil inan</w>\nbu on</w>\nbal kan</w>\nmir ro\nmill en\nder ail\ndam on\ntit i</w>\nbi os</w>\nre don\npic ard</w>\npar te</w>\nðŁ¤ Ł\nØ º\nson ics</w>\nfir sth\ndd c</w>\nveg ans</w>\ntur ban</w>\nni gan</w>\nlot tie</w>\nlyn don</w>\nstar buck\npink floyd</w>\nlife styles</w>\nam ara</w>\na she\nr sc</w>\nval a</w>\nsm er\ncw gc</w>\ncli ent\nbuen as</w>\njag an</w>\ncoo ps</w>\nðŁĳĳ ðŁĳĳ\nspeci alizes</w>\nsnag ged</w>\ng lar\nben net</w>\nwildlife wednesday</w>\nbow den</w>\npi k</w>\nart in</w>\nempor ium</w>\nar l</w>\nre ba</w>\npas ser</w>\ndisappo ints</w>\nadditi ve</w>\nâľĬ ðŁı½</w>\nbay er\nmissou la</w>\nha skell</w>\ncomm ences</w>\nni x\nne man</w>\nexplo ited</w>\nplastic surgery</w>\ncc d</w>\naso cial</w>\nvo t</w>\nsie gel</w>\nfro ome</w>\nkap am\nfar a</w>\ne ha</w>\npro bes</w>\nmw f</w>\nmeet ing\np bb\nak ins</w>\nmistle toe</w>\nkingdom hearts</w>\nfor kids</w>\nec r</w>\nbal e\nescor ts</w>\nadidas originals</w>\nk wa</w>\nk ts</w>\nhallo ffame</w>\nðŁĺį .</w>\nwag s</w>\npot ted</w>\no wing</w>\nhoney comb</w>\nhe fty</w>\nuro logy</w>\nmer le</w>\nb pd</w>\nstri pping</w>\nre ich\nk state\ngu ay\nyon ge</w>\nshak ti\ng loom</w>\nbat t</w>\nson om\nn ery</w>\nel ba</w>\nblan ks</w>\nhel le\ntriple ts</w>\nbom bay\nak arta</w>\nab ia</w>\ntransm itted</w>\nrol f</w>\nja is\nangular js</w>\nfi erc\nm ss</w>\ntrac e\nà¥ ĩ\ntom bs</w>\nold man</w>\nkom bucha</w>\nfo l</w>\ne health</w>\ncere als</w>\nare lli</w>\nin ari</w>\nðŁĴ ©\nwo l</w>\nliber ties</w>\nfa wn</w>\naf firm</w>\nnun avut</w>\nhyster ical</w>\nk drama</w>\nart es</w>\nâĢ¢âĢ¢âĢ¢âĢ¢ âĢ¢âĢ¢âĢ¢âĢ¢\nvalent in</w>\nman slaughter</w>\ngal es</w>\neo in</w>\nenergi zed</w>\ndel s</w>\nwith draws</w>\nst les</w>\nsar castic</w>\nram esh\nincredi bles</w>\nlock hart</w>\nya wn</w>\nultimatefan live</w>\noooooooo oooooooo\nmu en\nguru dev</w>\nte er</w>\npe eling</w>\nnew snow</w>\nlingui stics</w>\ndirec tv</w>\nag end\nuni lever</w>\nru ger</w>\nhan dedly</w>\nero se</w>\nli mel\nthe c\nroyal ties</w>\nfini shers</w>\nnr g</w>\nm gt</w>\nfid get</w>\ncom ps</w>\nbac on\naggre ssively</w>\nab it</w>\nch Ã¢\ntar de</w>\nslu gger</w>\nq anda</w>\ngre ening</w>\nd ats</w>\nensla ved</w>\nspec tor</w>\no ye\nfre ef\nb hand\nstop brexit</w>\nmis conceptions</w>\ncav a</w>\nðŁĺįðŁĺįðŁĺįðŁĺį ðŁĺįðŁĺįðŁĺįðŁĺį\nmultit asking</w>\nhou sel\nferre ira</w>\ncen time\nank les</w>\njo dh\nhel ly</w>\nfro me</w>\nout tuesday</w>\nnar nia</w>\nbal aji</w>\nl bloggers</w>\njyo ti</w>\nðŁį ĩ</w>\nlan cia</w>\ncap ri\ny ap\nnat ash\ndown fall</w>\n.\" âĢĶ</w>\nÃ ®\nligam ent</w>\ncoat ings</w>\nai ded</w>\nhi ko</w>\nfall ing\nencryp ted</w>\nyeg food</w>\ninfringe ment</w>\ncu di</w>\nce p</w>\nðŁĺį ðŁĺĤ</w>\ntra d\nsuper rugby</w>\ned win\nwh iche\nvi meo</w>\nlay ne</w>\nin vigor\nhe he\ndubrov nik</w>\nbie ber\nu tr\nsham an</w>\nop ers</w>\nham ill</w>\nen ig</w>\ndi f</w>\nar um</w>\nscrap book</w>\nmin h</w>\ndiver gence</w>\nmckin non</w>\nlife time\nguter res</w>\nwil le\nple as</w>\npatt y\nmic ron\nk z\ndom aine</w>\nru sher</w>\nm ds</w>\nches ney</w>\nscrew driver</w>\nâģ© ,</w>\nsle dge</w>\nhau er</w>\nchan a</w>\nstam ina</w>\nsprink ler</w>\npl n</w>\nhe ff\nbol ton\nom on\ncar rington</w>\naccor dion</w>\njor ge\ninter ception</w>\nin puts</w>\ngu ll\ntran scription</w>\nvanu atu</w>\nit ical</w>\neth os</w>\ntic h</w>\nspac ey</w>\npee king</w>\nu mi\nha ger\npsycho tic</w>\nilli an\nilli a</w>\nbonnar oo</w>\nan ese</w>\npu c\nlaghate parth</w>\nen hall</w>\neconom ical</w>\ndre dge</w>\n% -</w>\nu we</w>\ntu bular</w>\nscoun cil</w>\npe asants</w>\nfl er</w>\ntumb ler</w>\nhe p</w>\nford ham</w>\nrow ley</w>\niniti als</w>\nev asion</w>\ner nation</w>\nplu gins</w>\ncoch ran</w>\nc attle\nacid ity</w>\nðŁİĬ ðŁİī</w>\nre grann</w>\njump man</w>\nef ace</w>\nx ma\npatri archy</w>\nesco bar</w>\ncristi an</w>\ntip ton</w>\nnu eva</w>\nhack ney\nback seat</w>\nkill arney</w>\naid an\nsta dion</w>\nsimul taneous</w>\nida ho\na je\nu th\nfigu re\nclo s</w>\nbur k\nvolun tar\nrec ite</w>\nmacfar lane</w>\ncur few</w>\nbou do\nw gn\nsti x</w>\nsla p\nscrat ched</w>\nphilli p\njour ne\nex pelled</w>\nwa z</w>\nu ke\ntati ana</w>\nou e</w>\nho pp\ndimit ri</w>\nðŁĵ £\nmato logist</w>\nelectri fying</w>\nblu ffs</w>\nbill smafia</w>\naz cardinals</w>\ny aa\nx mas\nshar a</w>\nr ith</w>\ng ills</w>\ndre s\nbar ton\nauthori zation</w>\nimperi alism</w>\nhome of\nto do\nfoot path</w>\nband width</w>\nvisit spain</w>\nmoh sin</w>\nerup ted</w>\nmi ki</w>\ninsig nia</w>\nmike l</w>\nss h</w>\nger a</w>\nbank holiday\naw an\nt weak</w>\nstar craft</w>\ne al\nconstruc tion\nskelet ons</w>\nle ep\nine m</w>\nbar clay\nship wreck</w>\nmonsi eur</w>\nyo h</w>\nron t</w>\nform ative</w>\nser o\nle p\nhorse man</w>\nhoo sier</w>\nhaz mat</w>\ncylin ders</w>\ncen ti\nðŁĴ¥ðŁĴ¥ ðŁĴ¥</w>\nre em</w>\nna ire</w>\nmus ically</w>\ngras shopper</w>\nest onian</w>\ntermin ology</w>\nro main</w>\nblogger rt</w>\ntox in</w>\nstan ce\ncultiv ated</w>\nan ast\nðŁĲ į\nshi mano</w>\ngo pher</w>\nene i</w>\nrecycla ble</w>\ngam ification</w>\nfight for\nc q\navoc ados</w>\nke ys\neli ke\ngly cer\nshak ur</w>\nmobili zation</w>\ngal ley</w>\nexpla in\nex changed</w>\npe th</w>\nobe dience</w>\nilla ge</w>\nen nis\nãĥ ŀ\nwi v</w>\nwalla bies</w>\nma ar</w>\nig ers</w>\nfin tech\nfin alized</w>\nwo j\nmeaning less</w>\nin field</w>\nonna ise</w>\ne et</w>\nbron te</w>\npass ages</w>\nðŁĳ §\nstrick land</w>\nnorthern lights</w>\nlom ond</w>\nh tc\nwr ay</w>\nshi fter</w>\ndi alog</w>\nðŁį į</w>\n>> >>>></w>\nte atime</w>\nste ch\nsic huan</w>\nqu ill</w>\nfran ca\ncomple mentary</w>\nbar rington</w>\nmarcu s\nmal am</w>\ngoo oo</w>\nfor sa\nelec tra</w>\naf s</w>\nâĹ Ĩ</w>\ntri fe\nsn azzy</w>\nfo lia</w>\nand olan</w>\nafter dark</w>\nwood son</w>\nstra de</w>\nlitt lest</w>\no gun\ncon wy</w>\nco wards</w>\nðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤ</w>\níĬ ¸\nse ul\nmur phy\ndun ks</w>\nkapil shar\njo achim</w>\nwom ack</w>\nequal ity\naver ages</w>\na ine\nðŁ¦ Ī</w>\ntac ular</w>\ndis ability\nu ked\nmid century</w>\nbar thol\nteas ers</w>\ntab ern\nnj caa</w>\nsp out</w>\nop i</w>\nku bball</w>\nbl om\nso ar\npopu lism</w>\nmeth yl\nðŁĳĬ ðŁı¼\no spre\nalo ils</w>\nðŁĵ ĸ\nðŁĮ ļ\nx er\nsp illing</w>\npubl ica</w>\ncar dam\nadi sh</w>\nsa cha</w>\np kg</w>\nbu da</w>\nlyric ist</w>\ni bc</w>\ngru mp\nho ver</w>\nhal ep</w>\nanti body</w>\nanem one</w>\nâĻ¥âĻ¥ âĻ¥âĻ¥\nm cl\nlitho graph</w>\ncc u</w>\ns fest</w>\npath ic</w>\ncalli ster</w>\notta wa\ngun sn\nrut ger\nhali but</w>\nen vision</w>\ndifferenti ate</w>\nðŁļĢ ðŁļĢ\npir an\nlat el\nuc n</w>\ntrou bad\nra ine\nfierc ely</w>\nlearn english</w>\nlea se\nwex mondays</w>\nem it</w>\ndray ton</w>\nbur rell</w>\nscuba diving</w>\nhol ler</w>\ndr u</w>\nclo cked</w>\nw ral</w>\nap ro</w>\ntrans lucent</w>\nw bo</w>\npatri arch</w>\nmo ja\nlan nister</w>\nfish ery</w>\nne derland</w>\nmil dly</w>\nmi rai</w>\nma ko</w>\nja p</w>\nðŁĺ©ðŁĺ© ðŁĺ©</w>\npro statec\np anna</w>\nar ama</w>\nunder taking</w>\ntomp kins</w>\nne op\nsoli ds</w>\nsav oury</w>\ne ames</w>\ncut lery</w>\nwood bridge</w>\nsteam er</w>\nri zzo</w>\nwild cat\nrat na</w>\nlamin ated</w>\nkin eni</w>\njal ap\nai des</w>\nacknowle dges</w>\n?! ?!?!</w>\n! ðŁİī</w>\nw afc</w>\nmag gio</w>\nha ves</w>\ndar je\nof i</w>\ngr il\nv asi\nbru x\nmo hd</w>\nfake speare</w>\narn old\nr mb</w>\nfor be\nwal leye</w>\nro di\ntherapeu tics</w>\nstrate gi\nob ste\nmu dder</w>\ndownload able</w>\ndd ings</w>\nd ca</w>\nasi angames</w>\ncampe on\nappropri ation</w>\nth century</w>\nram atta</w>\ndra ped</w>\nbul lion</w>\nmu c</w>\none x</w>\nse greg\nophel ia</w>\nbod ily</w>\nâĿ¤ ðŁĺį</w>\nwi zar\nte ased</w>\nade my</w>\nto id</w>\nsur a</w>\nlazar us</w>\nsn ickers</w>\nma se\nlo h\nbow ed</w>\nbibli o\nx change</w>\nhar lan</w>\ngho shal</w>\nflavor ful</w>\nbha gat</w>\nalle z</w>\nwhiche ver</w>\nten stein</w>\ndisc er\norgan iser</w>\nmt g\ndream liner</w>\nt se\nhok kaido</w>\nmo k\nindulg ent</w>\nhick man</w>\nblin ded</w>\nal yn\naaa ah</w>\nsp ool</w>\nlough borough</w>\ninter pret\net v\naristo tle</w>\noptimi zing</w>\navici i</w>\nmadu rai</w>\nju li</w>\nnaw az\nmat chups</w>\nab ide</w>\npaint ing\nw elling</w>\nvel i</w>\noctag on</w>\nin scribed</w>\npo king</w>\nplac er</w>\nlife cycle</w>\nkili g</w>\ng sp</w>\neli ves</w>\ncle ments</w>\nna sheed</w>\nme sut</w>\nincarcer ated</w>\ndist illed</w>\nwal ang</w>\ndelic acy</w>\ndel gado</w>\nche z\nch ita</w>\nad ero</w>\ntu x</w>\npati l</w>\no do\nabh cosmetics</w>\ntv c</w>\np bc</w>\nin accurate</w>\nhardwork paysoff</w>\nball er\nquot ation</w>\nmerchandi sing</w>\nga stri\ndefen ses</w>\ndro gba</w>\nbex hill</w>\nban kno\nwin ona</w>\nsi eg\np gs</w>\nhahah ha</w>\nagu chi</w>\nsu bram\nmirac le\nde sch\nli bre\nba cher</w>\nent ine</w>\nbbcra di\nlou dest</w>\nr ps</w>\npi erc\nfr yer</w>\nstorm trooper</w>\nrafael nadal</w>\npas co</w>\nexhau stion</w>\nepic onetsy</w>\nrc tid</w>\nkel lie</w>\nga ines</w>\nd bz</w>\nsm riti\ns bridge</w>\nlim ited\ncla w\ntechnic al\nbio graphical</w>\nado red</w>\nà¸ °</w>\nexclu de</w>\nac adia</w>\nkey boards</w>\nfur man</w>\nso ca</w>\nsur u</w>\nni ps</w>\nsw aps</w>\nserver less</w>\nrun e</w>\npu ffy</w>\nnorth ampton\nnish ings</w>\nhen der\ncartri dges</w>\ngun shot</w>\nðŁĵ ¹</w>\nfil ament</w>\nrespon dents</w>\npey ton\nmountaine er</w>\nmer ging</w>\nlife span</w>\nintimid ation</w>\np afc</w>\nnl wx</w>\nexpan sive</w>\npur r\nf ck</w>\nca e</w>\nat ti\ntele thon</w>\nso hn</w>\nmend el\nlo pes</w>\ndor i</w>\nun broken</w>\nte red\ntast ings</w>\nin active</w>\ndisin tegr\nt assel</w>\nshare the\npi ano\nis lay</w>\nair space</w>\nz awa</w>\nricci ardo</w>\nming ton\nfresh er</w>\ncur ry\nre vs</w>\npharo ah</w>\nh mv</w>\nexhilar ating</w>\nwh oo</w>\nlin kin</w>\nkri spy</w>\ncompeten cy</w>\nste wards</w>\nne bu\nkat su\nad mins</w>\nbaz ar</w>\nas ar</w>\ngiving back</w>\ns summit</w>\nsong z</w>\nlin us</w>\nraj kumar</w>\nfarm ington</w>\nfanta sia</w>\nðŁĺ´ ðŁĺ´</w>\nso bri\nlis se</w>\nbarry more</w>\npri sm\nblo b</w>\nsen ew\nmono xide</w>\nexp ire</w>\neigh teen</w>\ndi pper</w>\nxi ao</w>\nkil t</w>\nhin ch\nbbc sport</w>\nbam boo\np ter\nex al\nðŁ¦ ĭ\nham lin</w>\nexpe ditions</w>\nstar gazing</w>\nfood security</w>\nwy lie</w>\nul f</w>\nst ingly</w>\non storm</w>\nlo eb</w>\nbro ome</w>\nbn ha</w>\npancre atic</w>\neli ve\n!!!!!!!! !!!</w>\nther apper</w>\northo pedic</w>\navengers endgame</w>\nantit rust</w>\nìļ °</w>\ngo te</w>\nom d</w>\noff side</w>\ngy llen\nwin eries</w>\nwhite water</w>\nad l</w>\nlu pita</w>\nexce eds</w>\nconsi sted</w>\nchew bacca</w>\nash leigh</w>\nnhl jets</w>\nis san\nsh ld</w>\nhay at</w>\ncran berries</w>\nðŁ¤ĺ ðŁı½</w>\nrock the\nspring training</w>\nfall out\ndairy free</w>\nwa j</w>\nun decided</w>\nso wn</w>\nrc n</w>\nnorth wales</w>\nhtt r</w>\nfu mble</w>\nd its</w>\ncomp elled</w>\npopu list</w>\nmin ted</w>\nblan chett</w>\n. ''</w>\npro pulsion</w>\nm illa</w>\nau berg\nher tz</w>\nh ta</w>\nu daipur</w>\nserendip ity</w>\nazte cs</w>\nals ace</w>\nðŁĲ ĳ</w>\nlu n</w>\nsho es\nchar li</w>\ngar za</w>\nðŁĴ Ł\npro biotics</w>\nfox tv</w>\nol is</w>\nmi ff\nloc alized</w>\ndiffu ser</w>\nsi gue</w>\nfun ko\nrend ous</w>\nðŁĴ ĳ</w>\njeky ll</w>\n"
  },
  {
    "path": "configs/sd15/tokenizer/special_tokens_map.json",
    "content": "{\n  \"bos_token\": {\n    \"content\": \"<|startoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": true,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"eos_token\": {\n    \"content\": \"<|endoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": true,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"pad_token\": \"<|endoftext|>\",\n  \"unk_token\": {\n    \"content\": \"<|endoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": true,\n    \"rstrip\": false,\n    \"single_word\": false\n  }\n}\n"
  },
  {
    "path": "configs/sd15/tokenizer/tokenizer_config.json",
    "content": "{\n  \"add_prefix_space\": false,\n  \"bos_token\": {\n    \"__type\": \"AddedToken\",\n    \"content\": \"<|startoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": true,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"do_lower_case\": true,\n  \"eos_token\": {\n    \"__type\": \"AddedToken\",\n    \"content\": \"<|endoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": true,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"errors\": \"replace\",\n  \"model_max_length\": 77,\n  \"name_or_path\": \"openai/clip-vit-large-patch14\",\n  \"pad_token\": \"<|endoftext|>\",\n  \"special_tokens_map_file\": \"./special_tokens_map.json\",\n  \"tokenizer_class\": \"CLIPTokenizer\",\n  \"unk_token\": {\n    \"__type\": \"AddedToken\",\n    \"content\": \"<|endoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": true,\n    \"rstrip\": false,\n    \"single_word\": false\n  }\n}\n"
  },
  {
    "path": "configs/sd15/tokenizer/vocab.json",
    "content": "{\n  \"!\": 0,\n  \"!!\": 1443,\n  \"!!!\": 11194,\n  \"!!!!\": 4003,\n  \"!!!!!!!!\": 11281,\n  \"!!!!!!!!!!!!!!!!\": 30146,\n  \"!!!!!!!!!!!</w>\": 49339,\n  \"!!!!!!!!!!</w>\": 35579,\n  \"!!!!!!!!!</w>\": 28560,\n  \"!!!!!!!!</w>\": 21622,\n  \"!!!!!!!</w>\": 15203,\n  \"!!!!!!</w>\": 9168,\n  \"!!!!!</w>\": 5203,\n  \"!!!!</w>\": 2360,\n  \"!!!\\\"</w>\": 28048,\n  \"!!!)</w>\": 42532,\n  \"!!!</w>\": 995,\n  \"!!\\\"</w>\": 20556,\n  \"!!#</w>\": 34997,\n  \"!!)</w>\": 28352,\n  \"!!</w>\": 748,\n  \"!!@</w>\": 40705,\n  \"!\\\"</w>\": 2947,\n  \"!\\\"@</w>\": 43819,\n  \"!#</w>\": 9670,\n  \"!'</w>\": 13222,\n  \"!),</w>\": 37904,\n  \"!).</w>\": 26225,\n  \"!)</w>\": 4571,\n  \"!*</w>\": 37737,\n  \"!,</w>\": 29325,\n  \"!-</w>\": 43499,\n  \"!...</w>\": 22121,\n  \"!..</w>\": 35475,\n  \"!.</w>\": 22517,\n  \"!:)</w>\": 31671,\n  \"!:</w>\": 17545,\n  \"!</w>\": 256,\n  \"!?!</w>\": 29767,\n  \"!?!?</w>\": 47081,\n  \"!?</w>\": 6004,\n  \"!@</w>\": 15117,\n  \"!]</w>\": 34466,\n  \"!âĢ¦</w>\": 35068,\n  \"!âĿ¤ï¸ı</w>\": 32559,\n  \"!ðŁİī</w>\": 49085,\n  \"!ðŁĺĬ</w>\": 43434,\n  \"!ðŁĺį</w>\": 36438,\n  \"\\\"\": 1,\n  \"\\\"!</w>\": 10377,\n  \"\\\"\\\"\": 41530,\n  \"\\\"\\\"\\\"</w>\": 25539,\n  \"\\\"\\\"</w>\": 8575,\n  \"\\\"#</w>\": 8345,\n  \"\\\"'</w>\": 31065,\n  \"\\\"(</w>\": 32741,\n  \"\\\")</w>\": 13112,\n  \"\\\",</w>\": 4332,\n  \"\\\"-</w>\": 9375,\n  \"\\\"....</w>\": 37785,\n  \"\\\"...</w>\": 9049,\n  \"\\\"..</w>\": 25403,\n  \"\\\".</w>\": 2811,\n  \"\\\"/</w>\": 39486,\n  \"\\\":</w>\": 7811,\n  \"\\\";</w>\": 37549,\n  \"\\\"</w>\": 257,\n  \"\\\"?</w>\": 11727,\n  \"\\\"@</w>\": 1512,\n  \"\\\"@_</w>\": 20236,\n  \"\\\"[</w>\": 36930,\n  \"\\\"âĢ¦</w>\": 33993,\n  \"\\\"âĢĶ</w>\": 41151,\n  \"#\": 2,\n  \"##</w>\": 15483,\n  \"#...</w>\": 31491,\n  \"#:</w>\": 30144,\n  \"#</w>\": 258,\n  \"#@</w>\": 35062,\n  \"#âĢ¦</w>\": 12834,\n  \"#âĢİ</w>\": 34262,\n  \"$\": 3,\n  \"$$\": 24233,\n  \"$$$</w>\": 31859,\n  \"$$</w>\": 14929,\n  \"$)</w>\": 39460,\n  \"$.</w>\": 34682,\n  \"$</w>\": 259,\n  \"%\": 4,\n  \"%!</w>\": 35070,\n  \"%),</w>\": 37819,\n  \"%)</w>\": 16063,\n  \"%,</w>\": 14505,\n  \"%-</w>\": 48784,\n  \"%.</w>\": 12475,\n  \"%;</w>\": 33379,\n  \"%</w>\": 260,\n  \"&\": 5,\n  \"&&</w>\": 27791,\n  \"&</w>\": 261,\n  \"'\": 6,\n  \"'!</w>\": 13781,\n  \"'\\\"</w>\": 19479,\n  \"'#</w>\": 15319,\n  \"''\": 46594,\n  \"''</w>\": 8445,\n  \"')</w>\": 19175,\n  \"',</w>\": 5662,\n  \"'-</w>\": 26152,\n  \"'...</w>\": 20474,\n  \"'.</w>\": 4645,\n  \"':</w>\": 7182,\n  \"';</w>\": 44517,\n  \"'</w>\": 262,\n  \"'?</w>\": 17242,\n  \"'@</w>\": 26397,\n  \"'d</w>\": 1896,\n  \"'ll</w>\": 1342,\n  \"'m</w>\": 880,\n  \"'re</w>\": 982,\n  \"'s</w>\": 568,\n  \"'t</w>\": 713,\n  \"'ve</w>\": 1200,\n  \"'âĢ¦</w>\": 42120,\n  \"(\": 7,\n  \"(!)</w>\": 30253,\n  \"(\\\"</w>\": 18741,\n  \"(#</w>\": 6229,\n  \"($)</w>\": 46597,\n  \"($</w>\": 15186,\n  \"(&</w>\": 15042,\n  \"('</w>\": 18235,\n  \"((\": 22944,\n  \"(((</w>\": 33287,\n  \"((</w>\": 13796,\n  \"().</w>\": 41737,\n  \"()</w>\": 8475,\n  \"(*\": 48004,\n  \"(*</w>\": 39575,\n  \"(+</w>\": 12903,\n  \"(-</w>\": 20228,\n  \"(...</w>\": 45159,\n  \"(.</w>\": 43055,\n  \"(:</w>\": 8528,\n  \"(;</w>\": 23983,\n  \"(</w>\": 263,\n  \"(?)</w>\": 22885,\n  \"(@</w>\": 2181,\n  \"(Â£</w>\": 33987,\n  \"(Â©</w>\": 44886,\n  \"(ðŁĵ·:</w>\": 34610,\n  \"(ðŁĵ·</w>\": 37999,\n  \"(ðŁĵ¸:</w>\": 44422,\n  \"(ðŁĵ¸</w>\": 45204,\n  \")\": 8,\n  \")!!</w>\": 47518,\n  \")!</w>\": 7805,\n  \")\\\"</w>\": 13046,\n  \")#</w>\": 39981,\n  \")'</w>\": 23613,\n  \")(</w>\": 27956,\n  \"))\": 13720,\n  \"))))\": 42911,\n  \"))))</w>\": 34181,\n  \")))</w>\": 18305,\n  \"))</w>\": 5167,\n  \"),</w>\": 2361,\n  \")-</w>\": 19034,\n  \")...</w>\": 15274,\n  \")..</w>\": 41822,\n  \").</w>\": 1818,\n  \")/</w>\": 26616,\n  \"):</w>\": 4143,\n  \");</w>\": 19686,\n  \")</w>\": 264,\n  \")?</w>\": 18765,\n  \")@</w>\": 41928,\n  \")_/\": 45028,\n  \")_/Â¯</w>\": 45781,\n  \")âĢ¦</w>\": 41844,\n  \"*\": 9,\n  \"*)</w>\": 30956,\n  \"**\": 9825,\n  \"****\": 21326,\n  \"********\": 42974,\n  \"*****</w>\": 43571,\n  \"****</w>\": 25167,\n  \"***</w>\": 7829,\n  \"**</w>\": 4441,\n  \"*,</w>\": 41895,\n  \"*-*</w>\": 23568,\n  \"*.</w>\": 31304,\n  \"*</w>\": 265,\n  \"*_*</w>\": 44535,\n  \"+\": 10,\n  \"+)</w>\": 34810,\n  \"++\": 47298,\n  \"+++</w>\": 35986,\n  \"++</w>\": 19056,\n  \"+,</w>\": 35885,\n  \"+.</w>\": 25238,\n  \"+/-</w>\": 47614,\n  \"+</w>\": 266,\n  \",\": 11,\n  \",\\\"</w>\": 3823,\n  \",#</w>\": 11215,\n  \",&</w>\": 26905,\n  \",'</w>\": 10599,\n  \",)</w>\": 44493,\n  \",,\": 21340,\n  \",,,,</w>\": 33225,\n  \",,,</w>\": 14811,\n  \",,</w>\": 8844,\n  \",-</w>\": 29821,\n  \",...</w>\": 20365,\n  \",.</w>\": 41277,\n  \",</w>\": 267,\n  \",@</w>\": 13975,\n  \",âĢ¦</w>\": 14601,\n  \"-\": 12,\n  \"-\\\"</w>\": 18646,\n  \"-#</w>\": 10151,\n  \"-$</w>\": 24946,\n  \"-'</w>\": 28010,\n  \"-(</w>\": 33345,\n  \"-)</w>\": 3535,\n  \"-*</w>\": 21527,\n  \"--\": 2154,\n  \"----\": 5753,\n  \"--------\": 11772,\n  \"----------------\": 23122,\n  \"----</w>\": 30164,\n  \"----></w>\": 35999,\n  \"---</w>\": 11079,\n  \"---></w>\": 14518,\n  \"--</w>\": 2432,\n  \"--></w>\": 6422,\n  \"-->></w>\": 47252,\n  \"-.-</w>\": 32765,\n  \"-...</w>\": 43147,\n  \"-.</w>\": 44040,\n  \"-</w>\": 268,\n  \"-></w>\": 5081,\n  \"-@</w>\": 10087,\n  \"-_-</w>\": 27227,\n  \"-__\": 42718,\n  \"-âĢ¦</w>\": 30047,\n  \".\": 13,\n  \".!!</w>\": 37805,\n  \".!</w>\": 14030,\n  \".\\\"\": 18650,\n  \".\\\"-</w>\": 21234,\n  \".\\\"</w>\": 1081,\n  \".\\\"âĢĶ</w>\": 48703,\n  \".#</w>\": 5014,\n  \".'\\\"</w>\": 41558,\n  \".''</w>\": 49379,\n  \".'</w>\": 5938,\n  \".(</w>\": 22294,\n  \".)</w>\": 5376,\n  \".*</w>\": 26145,\n  \".,</w>\": 5276,\n  \".-</w>\": 12481,\n  \"..\": 608,\n  \"..!!</w>\": 23707,\n  \"..!</w>\": 17994,\n  \"..\\\"</w>\": 15229,\n  \"..#</w>\": 15735,\n  \"..,</w>\": 47143,\n  \"...\": 3002,\n  \"...!!!</w>\": 38351,\n  \"...!!</w>\": 39915,\n  \"...!</w>\": 16860,\n  \"...\\\"</w>\": 5240,\n  \"...#</w>\": 8195,\n  \"...&</w>\": 44979,\n  \"...'</w>\": 23167,\n  \"...(</w>\": 37981,\n  \"...)</w>\": 14040,\n  \"...,</w>\": 42717,\n  \"....\": 2386,\n  \"....\\\"</w>\": 26689,\n  \"....#</w>\": 20346,\n  \".....\": 34151,\n  \".....#</w>\": 38867,\n  \"........\": 8246,\n  \"................\": 24855,\n  \"............</w>\": 42965,\n  \"...........</w>\": 35008,\n  \"..........</w>\": 25526,\n  \".........</w>\": 19881,\n  \"........</w>\": 14720,\n  \".......</w>\": 9917,\n  \"......</w>\": 5590,\n  \".....</w>\": 3104,\n  \"....</w>\": 1390,\n  \"....@</w>\": 29790,\n  \"...:</w>\": 34570,\n  \"...</w>\": 678,\n  \"...?</w>\": 16388,\n  \"...@</w>\": 12672,\n  \"..</w>\": 852,\n  \"..?</w>\": 23875,\n  \"..@</w>\": 21124,\n  \"./</w>\": 31975,\n  \".:</w>\": 15811,\n  \".;</w>\": 47596,\n  \".</w>\": 269,\n  \".<</w>\": 29442,\n  \".?</w>\": 29294,\n  \".@</w>\": 1230,\n  \".]</w>\": 33511,\n  \".~</w>\": 42651,\n  \".âĢ¦</w>\": 18047,\n  \".âĿ¤ï¸ı</w>\": 39085,\n  \".âłĢ</w>\": 30097,\n  \".ðŁĺĤ</w>\": 46580,\n  \"/\": 14,\n  \"/#</w>\": 13217,\n  \"/$</w>\": 36266,\n  \"/-</w>\": 19811,\n  \"/.</w>\": 39382,\n  \"//\": 15348,\n  \"////\": 46271,\n  \"///</w>\": 22734,\n  \"//</w>\": 3502,\n  \"/</w>\": 270,\n  \"/@</w>\": 8216,\n  \"0\": 15,\n  \"0</w>\": 271,\n  \"1\": 16,\n  \"1</w>\": 272,\n  \"2\": 17,\n  \"2</w>\": 273,\n  \"3\": 18,\n  \"3</w>\": 274,\n  \"4\": 19,\n  \"4</w>\": 275,\n  \"5\": 20,\n  \"5</w>\": 276,\n  \"6\": 21,\n  \"6</w>\": 277,\n  \"7\": 22,\n  \"7</w>\": 278,\n  \"8\": 23,\n  \"8</w>\": 279,\n  \"9\": 24,\n  \"9</w>\": 280,\n  \":\": 25,\n  \":\\\"\": 29498,\n  \":\\\")</w>\": 46432,\n  \":\\\"</w>\": 12089,\n  \":#</w>\": 26625,\n  \":$</w>\": 33769,\n  \":'\": 8017,\n  \":'(</w>\": 21250,\n  \":')</w>\": 10701,\n  \":'</w>\": 23851,\n  \":((</w>\": 42496,\n  \":(</w>\": 5965,\n  \":)\": 11070,\n  \":))))</w>\": 42339,\n  \":)))</w>\": 21840,\n  \":))</w>\": 10164,\n  \":).</w>\": 39010,\n  \":)</w>\": 1408,\n  \":*</w>\": 12617,\n  \":-\": 13021,\n  \":-(</w>\": 25137,\n  \":-)</w>\": 4223,\n  \":-</w>\": 10323,\n  \":...</w>\": 42140,\n  \"://</w>\": 12441,\n  \":/</w>\": 13604,\n  \"::\": 33077,\n  \":::</w>\": 43818,\n  \"::</w>\": 9788,\n  \":</w>\": 281,\n  \":></w>\": 39677,\n  \":@</w>\": 14339,\n  \":]</w>\": 43486,\n  \":|</w>\": 45986,\n  \":âĢ¦</w>\": 22365,\n  \";\": 26,\n  \";))</w>\": 41873,\n  \";)</w>\": 3661,\n  \";-\": 35657,\n  \";-)</w>\": 10475,\n  \";;\": 34824,\n  \";;</w>\": 24492,\n  \";</w>\": 282,\n  \"<\": 27,\n  \"<-</w>\": 47280,\n  \"</</w>\": 34308,\n  \"<<\": 24588,\n  \"<</w>\": 283,\n  \"<<</w>\": 16482,\n  \"<<<</w>\": 35054,\n  \"<|endoftext|>\": 49407,\n  \"<|startoftext|>\": 49406,\n  \"=\": 28,\n  \"=))</w>\": 39587,\n  \"=)</w>\": 17840,\n  \"=</w>\": 284,\n  \"==\": 11748,\n  \"====\": 21734,\n  \"========\": 38952,\n  \"==></w>\": 29688,\n  \"=></w>\": 9714,\n  \">\": 29,\n  \">.<</w>\": 38507,\n  \">:</w>\": 36196,\n  \"></w>\": 285,\n  \"><</w>\": 28015,\n  \">>\": 8270,\n  \">></w>\": 2988,\n  \">>></w>\": 6395,\n  \">>>>\": 18461,\n  \">>>></w>\": 18435,\n  \">>>>></w>\": 32972,\n  \">>>>>></w>\": 48947,\n  \">>>>>>>>\": 41947,\n  \">_\": 44144,\n  \"?\": 30,\n  \"?!\": 9785,\n  \"?!!</w>\": 25342,\n  \"?!\\\"</w>\": 29315,\n  \"?!</w>\": 2835,\n  \"?!?!</w>\": 16349,\n  \"?!?!?!</w>\": 49084,\n  \"?!?!?</w>\": 37619,\n  \"?!?</w>\": 11395,\n  \"?\\\"</w>\": 3283,\n  \"?#</w>\": 24018,\n  \"?'</w>\": 13610,\n  \"?)</w>\": 9626,\n  \"?,</w>\": 41628,\n  \"?...</w>\": 22641,\n  \"?..</w>\": 43905,\n  \"?.</w>\": 41251,\n  \"?:</w>\": 21067,\n  \"?</w>\": 286,\n  \"??\": 5195,\n  \"??!!</w>\": 43219,\n  \"??!</w>\": 37341,\n  \"??\\\"</w>\": 44996,\n  \"??</w>\": 2197,\n  \"???\": 40017,\n  \"???</w>\": 3824,\n  \"????\": 15936,\n  \"????</w>\": 10362,\n  \"?????</w>\": 21370,\n  \"??????</w>\": 34589,\n  \"????????\": 45091,\n  \"?@</w>\": 29258,\n  \"?ðŁ¤Ķ</w>\": 47928,\n  \"@\": 31,\n  \"@#</w>\": 39397,\n  \"@.</w>\": 43730,\n  \"@/</w>\": 28639,\n  \"@</w>\": 287,\n  \"@@</w>\": 30314,\n  \"@_</w>\": 2692,\n  \"@__</w>\": 17042,\n  \"@___</w>\": 48308,\n  \"A\": 32,\n  \"A</w>\": 288,\n  \"B\": 33,\n  \"B</w>\": 289,\n  \"C\": 34,\n  \"C</w>\": 290,\n  \"D\": 35,\n  \"D</w>\": 291,\n  \"E\": 36,\n  \"E</w>\": 292,\n  \"F\": 37,\n  \"F</w>\": 293,\n  \"G\": 38,\n  \"G</w>\": 294,\n  \"H\": 39,\n  \"H</w>\": 295,\n  \"I\": 40,\n  \"I</w>\": 296,\n  \"J\": 41,\n  \"J</w>\": 297,\n  \"K\": 42,\n  \"K</w>\": 298,\n  \"L\": 43,\n  \"L</w>\": 299,\n  \"M\": 44,\n  \"M</w>\": 300,\n  \"N\": 45,\n  \"N</w>\": 301,\n  \"O\": 46,\n  \"O</w>\": 302,\n  \"P\": 47,\n  \"P</w>\": 303,\n  \"Q\": 48,\n  \"Q</w>\": 304,\n  \"R\": 49,\n  \"R</w>\": 305,\n  \"S\": 50,\n  \"S</w>\": 306,\n  \"T\": 51,\n  \"T</w>\": 307,\n  \"U\": 52,\n  \"U</w>\": 308,\n  \"V\": 53,\n  \"V</w>\": 309,\n  \"W\": 54,\n  \"W</w>\": 310,\n  \"X\": 55,\n  \"X</w>\": 311,\n  \"Y\": 56,\n  \"Y</w>\": 312,\n  \"Z\": 57,\n  \"Z</w>\": 313,\n  \"[\": 58,\n  \"[#</w>\": 11115,\n  \"[...\": 39975,\n  \"[...]</w>\": 43790,\n  \"[</w>\": 314,\n  \"[@</w>\": 15148,\n  \"[]</w>\": 22240,\n  \"\\\\\": 59,\n  \"\\\\'</w>\": 41239,\n  \"\\\\</w>\": 315,\n  \"]\": 60,\n  \"]\\\"</w>\": 39434,\n  \"],</w>\": 34067,\n  \"].</w>\": 26262,\n  \"]:</w>\": 21641,\n  \"]</w>\": 316,\n  \"][#</w>\": 39009,\n  \"][</w>\": 29329,\n  \"^\": 61,\n  \"^)</w>\": 30720,\n  \"^-\": 43516,\n  \"^.\": 31552,\n  \"^.^</w>\": 35791,\n  \"^</w>\": 317,\n  \"^^\": 34454,\n  \"^^</w>\": 9064,\n  \"^_\": 14423,\n  \"^_^</w>\": 15995,\n  \"_\": 62,\n  \"_'</w>\": 44701,\n  \"_(</w>\": 36951,\n  \"_)</w>\": 37393,\n  \"_*</w>\": 36237,\n  \"_,</w>\": 31417,\n  \"_-</w>\": 23193,\n  \"_.</w>\": 26841,\n  \"_/\": 37647,\n  \"_:</w>\": 13109,\n  \"_</w>\": 318,\n  \"__\": 2355,\n  \"__:</w>\": 47043,\n  \"__</w>\": 3838,\n  \"___\": 43812,\n  \"___</w>\": 13530,\n  \"____\": 4727,\n  \"____</w>\": 25350,\n  \"_____</w>\": 38803,\n  \"________\": 9549,\n  \"________________\": 20115,\n  \"`\": 63,\n  \"`</w>\": 319,\n  \"a\": 64,\n  \"a</w>\": 320,\n  \"aa\": 1821,\n  \"aa</w>\": 3894,\n  \"aaa\": 14376,\n  \"aaa</w>\": 9583,\n  \"aaaa\": 6727,\n  \"aaaa</w>\": 19336,\n  \"aaaaa</w>\": 31095,\n  \"aaaaaa</w>\": 44413,\n  \"aaaaaaaa\": 23126,\n  \"aaaah</w>\": 49151,\n  \"aaah</w>\": 35856,\n  \"aaay</w>\": 37846,\n  \"aab</w>\": 34108,\n  \"aac\": 23251,\n  \"aac</w>\": 11346,\n  \"aad\": 20464,\n  \"aad</w>\": 35894,\n  \"aaf\": 37638,\n  \"aaf</w>\": 31534,\n  \"aag\": 42174,\n  \"aah</w>\": 28990,\n  \"aaj\": 28727,\n  \"aaj</w>\": 43411,\n  \"aak\": 37739,\n  \"aal\": 22268,\n  \"aal</w>\": 30208,\n  \"aali\": 27896,\n  \"aaliyah</w>\": 46577,\n  \"aam\": 12943,\n  \"aam</w>\": 22775,\n  \"aama\": 45018,\n  \"aamaadmi\": 45563,\n  \"aamaadmiparty</w>\": 46406,\n  \"aamir</w>\": 27456,\n  \"aan\": 20705,\n  \"aan</w>\": 13426,\n  \"aand\": 38054,\n  \"aap\": 12023,\n  \"aap</w>\": 12052,\n  \"aapl</w>\": 34516,\n  \"aar\": 4695,\n  \"aar</w>\": 13234,\n  \"aard\": 46932,\n  \"aaron\": 13948,\n  \"aaron</w>\": 7709,\n  \"aas\": 28542,\n  \"aas</w>\": 32205,\n  \"aat\": 34018,\n  \"aat</w>\": 35004,\n  \"aau</w>\": 35426,\n  \"aay\": 38281,\n  \"aay</w>\": 40249,\n  \"aaz</w>\": 26770,\n  \"ab\": 596,\n  \"ab</w>\": 3937,\n  \"aba\": 44204,\n  \"aba</w>\": 11102,\n  \"abad\": 33444,\n  \"abad</w>\": 7155,\n  \"aban\": 41662,\n  \"aband\": 8595,\n  \"abandon</w>\": 28805,\n  \"abandoned</w>\": 11227,\n  \"abar\": 17860,\n  \"abar</w>\": 39805,\n  \"abas\": 25402,\n  \"abay</w>\": 43542,\n  \"abb\": 38954,\n  \"abb</w>\": 38297,\n  \"abba</w>\": 30870,\n  \"abbas\": 37494,\n  \"abbas</w>\": 24412,\n  \"abbey\": 31927,\n  \"abbey</w>\": 10132,\n  \"abbie</w>\": 39949,\n  \"abbo\": 13536,\n  \"abbot</w>\": 44046,\n  \"abbott\": 43737,\n  \"abbott</w>\": 15649,\n  \"abbrevi\": 44843,\n  \"abby\": 30586,\n  \"abby</w>\": 14694,\n  \"abc\": 13137,\n  \"abc</w>\": 5334,\n  \"abcnews</w>\": 31566,\n  \"abd</w>\": 44093,\n  \"abdel\": 46511,\n  \"abdomin\": 35335,\n  \"abdominal</w>\": 39328,\n  \"abdu\": 13361,\n  \"abduc\": 17884,\n  \"abducted</w>\": 31520,\n  \"abduction</w>\": 36984,\n  \"abdul\": 14227,\n  \"abdul</w>\": 15593,\n  \"abdullah</w>\": 21317,\n  \"abe\": 15856,\n  \"abe</w>\": 12734,\n  \"abee</w>\": 36037,\n  \"abel\": 31938,\n  \"abel</w>\": 25318,\n  \"abella</w>\": 46156,\n  \"aben\": 40865,\n  \"aber\": 7828,\n  \"aber</w>\": 41867,\n  \"aberdeen\": 30539,\n  \"aberdeen</w>\": 17236,\n  \"abh\": 27484,\n  \"abh</w>\": 33649,\n  \"abhcosmetics</w>\": 49189,\n  \"abhi\": 18113,\n  \"abhin\": 44045,\n  \"abhishek</w>\": 44502,\n  \"abi\": 16867,\n  \"abi</w>\": 14161,\n  \"abia</w>\": 48604,\n  \"abide</w>\": 49163,\n  \"abig\": 20863,\n  \"abigail</w>\": 25686,\n  \"abil\": 21135,\n  \"abilities</w>\": 8724,\n  \"ability\": 35146,\n  \"ability</w>\": 3024,\n  \"abit</w>\": 48668,\n  \"ablanc\": 33716,\n  \"able\": 10102,\n  \"able</w>\": 863,\n  \"abled</w>\": 10655,\n  \"ableg</w>\": 24055,\n  \"ables</w>\": 8486,\n  \"ableton</w>\": 47169,\n  \"ably</w>\": 6748,\n  \"abnormal</w>\": 40934,\n  \"abo\": 2889,\n  \"abo</w>\": 21861,\n  \"aboard</w>\": 11661,\n  \"abol\": 31768,\n  \"abolic</w>\": 46827,\n  \"abolish</w>\": 47403,\n  \"aboo</w>\": 42433,\n  \"abor\": 8416,\n  \"aboriginal</w>\": 20422,\n  \"abortion</w>\": 12336,\n  \"abortions</w>\": 43218,\n  \"aboss</w>\": 46401,\n  \"abou\": 36455,\n  \"abou</w>\": 44053,\n  \"abound</w>\": 41037,\n  \"abour</w>\": 46637,\n  \"about\": 20204,\n  \"about</w>\": 781,\n  \"abouts</w>\": 36339,\n  \"above\": 35019,\n  \"above</w>\": 4348,\n  \"aboy</w>\": 37077,\n  \"abpoli</w>\": 44779,\n  \"abq</w>\": 38767,\n  \"abr\": 44932,\n  \"abra\": 10694,\n  \"abra</w>\": 35087,\n  \"abraham\": 40623,\n  \"abraham</w>\": 15869,\n  \"abram\": 33255,\n  \"abrams</w>\": 29852,\n  \"abre\": 22472,\n  \"abre</w>\": 46756,\n  \"abri\": 28605,\n  \"abridged</w>\": 45333,\n  \"abroad</w>\": 11253,\n  \"abru\": 46295,\n  \"abs\": 18431,\n  \"abs</w>\": 11109,\n  \"absc\": 25389,\n  \"abscbn\": 44260,\n  \"abscbn</w>\": 45810,\n  \"absen\": 32453,\n  \"absence</w>\": 19240,\n  \"absent</w>\": 30363,\n  \"absol\": 4624,\n  \"absolu\": 7055,\n  \"absolut\": 4666,\n  \"absolute</w>\": 7501,\n  \"absolutely</w>\": 4703,\n  \"absor\": 14303,\n  \"absorb</w>\": 35806,\n  \"absorbed</w>\": 45059,\n  \"absorbing</w>\": 46412,\n  \"absorption</w>\": 42210,\n  \"abstr\": 7530,\n  \"abstract\": 23885,\n  \"abstract</w>\": 10197,\n  \"abstractart</w>\": 31170,\n  \"abstraction</w>\": 47696,\n  \"abstracts</w>\": 40065,\n  \"absur\": 21639,\n  \"absurd</w>\": 29757,\n  \"abt</w>\": 9850,\n  \"abu\": 9167,\n  \"abu</w>\": 11787,\n  \"abud\": 20180,\n  \"abudha\": 21450,\n  \"abudhabi</w>\": 25256,\n  \"abuja</w>\": 23371,\n  \"abun\": 20544,\n  \"abundance</w>\": 23236,\n  \"abundant</w>\": 31611,\n  \"abur\": 23377,\n  \"aburger</w>\": 46660,\n  \"abuse</w>\": 7678,\n  \"abused</w>\": 23855,\n  \"abuses</w>\": 37132,\n  \"abusing</w>\": 36558,\n  \"abusive</w>\": 26858,\n  \"abv</w>\": 34172,\n  \"aby\": 16342,\n  \"aby</w>\": 31378,\n  \"abyss</w>\": 33632,\n  \"abz</w>\": 42292,\n  \"ac\": 546,\n  \"ac</w>\": 2816,\n  \"aca</w>\": 9213,\n  \"acab\": 41388,\n  \"acacia</w>\": 44047,\n  \"acad</w>\": 32537,\n  \"acade\": 2892,\n  \"academia</w>\": 22662,\n  \"academic\": 31178,\n  \"academic</w>\": 7935,\n  \"academics</w>\": 26417,\n  \"academies</w>\": 42569,\n  \"academy\": 29968,\n  \"academy</w>\": 4041,\n  \"acadi\": 41455,\n  \"acadia</w>\": 49236,\n  \"acam\": 26172,\n  \"acan\": 42227,\n  \"acan</w>\": 26318,\n  \"acap\": 32357,\n  \"acar\": 22232,\n  \"acare</w>\": 16961,\n  \"acc\": 26805,\n  \"acc</w>\": 9318,\n  \"acca</w>\": 30883,\n  \"acce\": 8564,\n  \"acceler\": 10161,\n  \"accelerate</w>\": 23619,\n  \"accelerated</w>\": 38513,\n  \"accelerating</w>\": 41821,\n  \"acceleration</w>\": 39387,\n  \"accelerator</w>\": 25261,\n  \"accent\": 28110,\n  \"accent</w>\": 18931,\n  \"accents</w>\": 31738,\n  \"accenture</w>\": 41853,\n  \"accep\": 4616,\n  \"accept\": 16447,\n  \"accept</w>\": 9338,\n  \"acceptable</w>\": 14209,\n  \"acceptance</w>\": 17090,\n  \"accepted</w>\": 9159,\n  \"accepting</w>\": 12855,\n  \"accepts</w>\": 22338,\n  \"access\": 7596,\n  \"access</w>\": 3822,\n  \"accessi\": 10787,\n  \"accessibility</w>\": 23407,\n  \"accessible</w>\": 13977,\n  \"accessing</w>\": 46339,\n  \"accessories</w>\": 10220,\n  \"accessory</w>\": 20417,\n  \"acci\": 4263,\n  \"acci</w>\": 33943,\n  \"accident</w>\": 6608,\n  \"accidental</w>\": 24895,\n  \"accidentally</w>\": 11061,\n  \"accidents</w>\": 22072,\n  \"acclaimed</w>\": 21172,\n  \"acco</w>\": 44730,\n  \"accol\": 33858,\n  \"accolades</w>\": 46731,\n  \"accom\": 23658,\n  \"accommo\": 34495,\n  \"accommod\": 14386,\n  \"accommodate</w>\": 34708,\n  \"accommodation</w>\": 18066,\n  \"accommodations</w>\": 45536,\n  \"accomp\": 24985,\n  \"accompan\": 14746,\n  \"accompanied</w>\": 20715,\n  \"accompany</w>\": 34142,\n  \"accompanying</w>\": 38179,\n  \"accompli\": 10205,\n  \"accomplish</w>\": 25542,\n  \"accomplished</w>\": 16462,\n  \"accomplishment</w>\": 26100,\n  \"accomplishments</w>\": 24965,\n  \"accor\": 4182,\n  \"accord\": 34293,\n  \"accord</w>\": 28513,\n  \"according</w>\": 4717,\n  \"accordingly</w>\": 35535,\n  \"accordion</w>\": 48760,\n  \"accoun\": 3081,\n  \"account\": 18424,\n  \"account</w>\": 4684,\n  \"accountability</w>\": 19377,\n  \"accountable</w>\": 24216,\n  \"accountant</w>\": 31026,\n  \"accountants</w>\": 37222,\n  \"accounted</w>\": 43951,\n  \"accounting</w>\": 14805,\n  \"accounts</w>\": 9974,\n  \"accra</w>\": 31900,\n  \"accred\": 17451,\n  \"accreditation</w>\": 27015,\n  \"accredited</w>\": 27647,\n  \"acct</w>\": 45569,\n  \"accu\": 5618,\n  \"accumul\": 19275,\n  \"accumulation</w>\": 37112,\n  \"accur\": 6551,\n  \"accuracy</w>\": 18423,\n  \"accurate</w>\": 8858,\n  \"accurately</w>\": 24206,\n  \"accusations</w>\": 33615,\n  \"accuse</w>\": 39414,\n  \"accused</w>\": 9434,\n  \"accuses</w>\": 27496,\n  \"accusing</w>\": 41474,\n  \"acdc</w>\": 45067,\n  \"ace\": 2675,\n  \"ace</w>\": 804,\n  \"acea</w>\": 35219,\n  \"aceae</w>\": 38153,\n  \"acele\": 40868,\n  \"aceous</w>\": 33610,\n  \"acer\": 37990,\n  \"acer</w>\": 25809,\n  \"aces</w>\": 5725,\n  \"acet\": 28735,\n  \"acf</w>\": 38389,\n  \"ach\": 972,\n  \"ach</w>\": 987,\n  \"acha</w>\": 22686,\n  \"acharya</w>\": 45780,\n  \"achat</w>\": 32706,\n  \"ache\": 27771,\n  \"ache</w>\": 7214,\n  \"ached</w>\": 17048,\n  \"acher\": 38442,\n  \"acher</w>\": 17936,\n  \"achers</w>\": 25051,\n  \"aches</w>\": 14823,\n  \"achi\": 3264,\n  \"achi</w>\": 9087,\n  \"achiev\": 8160,\n  \"achieve\": 14798,\n  \"achieve</w>\": 8175,\n  \"achieved</w>\": 12359,\n  \"achievement</w>\": 8245,\n  \"achievements</w>\": 16114,\n  \"achiever</w>\": 46286,\n  \"achievers</w>\": 44544,\n  \"achieves</w>\": 40123,\n  \"achieving</w>\": 16120,\n  \"achilles</w>\": 33327,\n  \"achim</w>\": 42335,\n  \"aching</w>\": 12864,\n  \"acho</w>\": 33130,\n  \"achs</w>\": 41195,\n  \"aci\": 4359,\n  \"aci</w>\": 34100,\n  \"acia</w>\": 30163,\n  \"acial</w>\": 32422,\n  \"acid\": 35474,\n  \"acid</w>\": 10085,\n  \"acidity</w>\": 48800,\n  \"acids</w>\": 27751,\n  \"acies</w>\": 20162,\n  \"acin\": 39442,\n  \"acing</w>\": 9442,\n  \"acio</w>\": 26202,\n  \"acion\": 44965,\n  \"acion</w>\": 24968,\n  \"acional</w>\": 26435,\n  \"aciones</w>\": 35832,\n  \"acious</w>\": 16020,\n  \"acity</w>\": 7511,\n  \"aciÃ³n</w>\": 38175,\n  \"ack\": 877,\n  \"ack</w>\": 725,\n  \"acked</w>\": 5698,\n  \"acker\": 31201,\n  \"acker</w>\": 7940,\n  \"ackeray</w>\": 41843,\n  \"acki</w>\": 42857,\n  \"acking</w>\": 5515,\n  \"ackles</w>\": 28503,\n  \"acknow\": 13563,\n  \"acknowle\": 18100,\n  \"acknowledge</w>\": 25209,\n  \"acknowledged</w>\": 35913,\n  \"acknowledges</w>\": 49083,\n  \"acknowledging</w>\": 45645,\n  \"acks</w>\": 3858,\n  \"acl\": 47593,\n  \"acl</w>\": 23073,\n  \"acle</w>\": 6504,\n  \"acles</w>\": 34164,\n  \"aclu</w>\": 37354,\n  \"acm</w>\": 39317,\n  \"acmilan</w>\": 36500,\n  \"acne</w>\": 24195,\n  \"aco\": 9463,\n  \"aco</w>\": 8800,\n  \"acol\": 17431,\n  \"acollege</w>\": 43468,\n  \"acom\": 17224,\n  \"acom</w>\": 22342,\n  \"acon\": 11621,\n  \"acon</w>\": 11571,\n  \"aconf</w>\": 38851,\n  \"acons</w>\": 31599,\n  \"acor\": 22076,\n  \"acorn</w>\": 37537,\n  \"acos</w>\": 39943,\n  \"acosta</w>\": 31994,\n  \"acou\": 8794,\n  \"acoun\": 31295,\n  \"acounty</w>\": 45449,\n  \"acoustic</w>\": 10616,\n  \"acoustics</w>\": 43873,\n  \"acp</w>\": 19627,\n  \"acqu\": 7946,\n  \"acquainted</w>\": 40713,\n  \"acqui\": 12194,\n  \"acquire</w>\": 21576,\n  \"acquired</w>\": 15932,\n  \"acquires</w>\": 27376,\n  \"acquiring</w>\": 42785,\n  \"acquis\": 14207,\n  \"acquisition</w>\": 16543,\n  \"acquisitions</w>\": 39649,\n  \"acr</w>\": 43648,\n  \"acre\": 26749,\n  \"acre</w>\": 9493,\n  \"acres</w>\": 11630,\n  \"acro\": 21060,\n  \"acrob\": 40891,\n  \"acron\": 37770,\n  \"across</w>\": 2500,\n  \"acrosse</w>\": 40979,\n  \"acruz</w>\": 40455,\n  \"acry\": 10440,\n  \"acrylic</w>\": 12252,\n  \"acs</w>\": 11782,\n  \"act\": 10305,\n  \"act</w>\": 1393,\n  \"acted</w>\": 10971,\n  \"acti\": 4786,\n  \"acting</w>\": 6319,\n  \"action\": 12493,\n  \"action</w>\": 1816,\n  \"actions</w>\": 6271,\n  \"activ\": 3430,\n  \"activate</w>\": 26737,\n  \"activated</w>\": 22249,\n  \"activation</w>\": 26769,\n  \"active\": 19009,\n  \"active</w>\": 4046,\n  \"actively</w>\": 18645,\n  \"activi\": 7230,\n  \"activism</w>\": 20117,\n  \"activist</w>\": 10850,\n  \"activists</w>\": 12649,\n  \"activities</w>\": 6514,\n  \"activity</w>\": 6206,\n  \"actment</w>\": 44807,\n  \"acton\": 36167,\n  \"acton</w>\": 36697,\n  \"actonclimate</w>\": 43797,\n  \"actor\": 12181,\n  \"actor</w>\": 4035,\n  \"actors</w>\": 9255,\n  \"actorslife</w>\": 25117,\n  \"actorvijay</w>\": 34033,\n  \"actress</w>\": 5805,\n  \"actresses</w>\": 33639,\n  \"acts</w>\": 6816,\n  \"actu\": 2375,\n  \"actual</w>\": 7488,\n  \"actually</w>\": 2955,\n  \"acu\": 9204,\n  \"acu</w>\": 48475,\n  \"aculture</w>\": 38145,\n  \"acup\": 30869,\n  \"acup</w>\": 27278,\n  \"acupuncture</w>\": 40043,\n  \"acur\": 44719,\n  \"acura</w>\": 30120,\n  \"acus</w>\": 33710,\n  \"acute</w>\": 19734,\n  \"acy\": 18717,\n  \"acy</w>\": 2356,\n  \"ad\": 594,\n  \"ad</w>\": 680,\n  \"ada\": 25785,\n  \"ada</w>\": 1886,\n  \"adaily</w>\": 47254,\n  \"adal\": 46646,\n  \"adam\": 6037,\n  \"adam</w>\": 4944,\n  \"adamlambert</w>\": 27659,\n  \"adams</w>\": 7942,\n  \"adan</w>\": 41802,\n  \"adani</w>\": 37499,\n  \"adap\": 6341,\n  \"adapt</w>\": 22666,\n  \"adaptation</w>\": 16566,\n  \"adapted</w>\": 26657,\n  \"adapter</w>\": 21839,\n  \"adapting</w>\": 44120,\n  \"adaptive</w>\": 28672,\n  \"adar\": 27702,\n  \"adar</w>\": 32681,\n  \"adas</w>\": 23250,\n  \"adata</w>\": 39500,\n  \"aday\": 31367,\n  \"aday</w>\": 10280,\n  \"adays</w>\": 24337,\n  \"adb</w>\": 45630,\n  \"adc</w>\": 38201,\n  \"add\": 19408,\n  \"add</w>\": 3536,\n  \"addams</w>\": 38912,\n  \"added</w>\": 4149,\n  \"adder</w>\": 47557,\n  \"addi</w>\": 36378,\n  \"addic\": 5709,\n  \"addict</w>\": 14614,\n  \"addicted</w>\": 16275,\n  \"addiction</w>\": 11751,\n  \"addictive</w>\": 29638,\n  \"addicts</w>\": 29997,\n  \"adding</w>\": 8676,\n  \"addis</w>\": 43911,\n  \"addison</w>\": 32369,\n  \"additi\": 26927,\n  \"addition</w>\": 6698,\n  \"additional</w>\": 10666,\n  \"additions</w>\": 22575,\n  \"additive</w>\": 48546,\n  \"addo</w>\": 40001,\n  \"address</w>\": 5834,\n  \"addressed</w>\": 20817,\n  \"addresses</w>\": 12702,\n  \"addressing</w>\": 10594,\n  \"adds</w>\": 9944,\n  \"addy</w>\": 24746,\n  \"ade\": 2194,\n  \"ade</w>\": 1928,\n  \"adecides</w>\": 46374,\n  \"aded</w>\": 9994,\n  \"adee</w>\": 47054,\n  \"adel\": 4434,\n  \"adel</w>\": 27308,\n  \"adelaide\": 38193,\n  \"adelaide</w>\": 11611,\n  \"adele\": 42843,\n  \"adele</w>\": 21220,\n  \"adelrey</w>\": 43627,\n  \"ademy</w>\": 49123,\n  \"aden\": 28669,\n  \"aden</w>\": 28688,\n  \"adena</w>\": 23648,\n  \"adequ\": 18232,\n  \"adequate</w>\": 22281,\n  \"ader</w>\": 21365,\n  \"adero</w>\": 49185,\n  \"aders</w>\": 27672,\n  \"ades</w>\": 5793,\n  \"adh</w>\": 42301,\n  \"adhd</w>\": 32649,\n  \"adhe\": 21175,\n  \"adhesive</w>\": 38429,\n  \"adi\": 2486,\n  \"adi</w>\": 8779,\n  \"adia</w>\": 26874,\n  \"adic</w>\": 36780,\n  \"adid\": 8086,\n  \"adidas\": 22396,\n  \"adidas</w>\": 9589,\n  \"adidasoriginals</w>\": 48575,\n  \"adies</w>\": 45834,\n  \"adifference</w>\": 37217,\n  \"adilla</w>\": 41167,\n  \"ading</w>\": 15000,\n  \"adio</w>\": 15060,\n  \"adirond\": 36843,\n  \"adish</w>\": 49009,\n  \"adity\": 28596,\n  \"aditya</w>\": 37186,\n  \"adityanath</w>\": 44437,\n  \"adjac\": 32517,\n  \"adjacent</w>\": 33836,\n  \"adjec\": 45512,\n  \"adju\": 16413,\n  \"adjun\": 45995,\n  \"adjust\": 13784,\n  \"adjust</w>\": 28073,\n  \"adjustable</w>\": 20476,\n  \"adjusted</w>\": 30515,\n  \"adjusting</w>\": 41132,\n  \"adjustment</w>\": 36081,\n  \"adjustments</w>\": 36331,\n  \"adl</w>\": 49351,\n  \"adler</w>\": 30222,\n  \"adm\": 9892,\n  \"adm</w>\": 33604,\n  \"admi\": 11666,\n  \"admin</w>\": 12528,\n  \"admini\": 6434,\n  \"administr\": 12174,\n  \"administration</w>\": 9502,\n  \"administrative</w>\": 22424,\n  \"administrator</w>\": 22603,\n  \"administrators</w>\": 36123,\n  \"admins</w>\": 49297,\n  \"admir\": 17031,\n  \"admiral</w>\": 21013,\n  \"admiration</w>\": 39569,\n  \"admire</w>\": 17791,\n  \"admired</w>\": 36103,\n  \"admirer</w>\": 48344,\n  \"admiring</w>\": 29835,\n  \"admission</w>\": 11315,\n  \"admissions</w>\": 22463,\n  \"admit</w>\": 13769,\n  \"admits</w>\": 16332,\n  \"admitted</w>\": 20427,\n  \"admitting</w>\": 46148,\n  \"adn</w>\": 40339,\n  \"adnan</w>\": 42037,\n  \"ado\": 4775,\n  \"ado</w>\": 2933,\n  \"adobe\": 29256,\n  \"adobe</w>\": 16484,\n  \"adog</w>\": 44913,\n  \"adol\": 33512,\n  \"adole\": 22704,\n  \"adolescent</w>\": 36793,\n  \"adolescents</w>\": 45656,\n  \"adolf</w>\": 41179,\n  \"adon\": 25907,\n  \"adona</w>\": 48419,\n  \"adop\": 4183,\n  \"adopt\": 16441,\n  \"adopt</w>\": 11159,\n  \"adoptable</w>\": 36905,\n  \"adoptdont\": 19674,\n  \"adoptdontshop</w>\": 20089,\n  \"adopted</w>\": 12538,\n  \"adopting</w>\": 30158,\n  \"adoption</w>\": 11544,\n  \"adopts</w>\": 40853,\n  \"ador\": 4992,\n  \"ador</w>\": 9162,\n  \"adora</w>\": 40031,\n  \"adorable</w>\": 6298,\n  \"adoration</w>\": 46781,\n  \"adore</w>\": 15502,\n  \"adored</w>\": 49233,\n  \"adores</w>\": 30290,\n  \"adorned</w>\": 44953,\n  \"ados</w>\": 20079,\n  \"adox</w>\": 32188,\n  \"adp</w>\": 44426,\n  \"adr</w>\": 46189,\n  \"adren\": 24204,\n  \"adrenaline</w>\": 35552,\n  \"adri\": 5935,\n  \"adrian\": 25012,\n  \"adrian</w>\": 13163,\n  \"adriana</w>\": 41363,\n  \"adrid</w>\": 26562,\n  \"adrien</w>\": 47469,\n  \"adrienne</w>\": 40081,\n  \"ads</w>\": 2485,\n  \"adu\": 16882,\n  \"adu</w>\": 24446,\n  \"adukone</w>\": 30511,\n  \"adul\": 7222,\n  \"adult\": 42209,\n  \"adult</w>\": 7115,\n  \"adulthood</w>\": 40964,\n  \"adults</w>\": 9391,\n  \"adv\": 1647,\n  \"adv</w>\": 21018,\n  \"advan\": 33411,\n  \"advance\": 27291,\n  \"advance</w>\": 7022,\n  \"advanced</w>\": 7465,\n  \"advancement</w>\": 35437,\n  \"advances</w>\": 15852,\n  \"advancing</w>\": 21355,\n  \"advani</w>\": 48189,\n  \"advant\": 7017,\n  \"advantage</w>\": 8573,\n  \"advantaged</w>\": 38361,\n  \"advantages</w>\": 23506,\n  \"adven\": 41670,\n  \"advent\": 3071,\n  \"advent</w>\": 15199,\n  \"adventcalendar</w>\": 43492,\n  \"adventur\": 29627,\n  \"adventure\": 17251,\n  \"adventure</w>\": 4377,\n  \"adventurer</w>\": 48098,\n  \"adventures</w>\": 7941,\n  \"adventurous</w>\": 31179,\n  \"adver\": 4806,\n  \"adverse</w>\": 30348,\n  \"adversity</w>\": 32516,\n  \"advert</w>\": 19080,\n  \"adverti\": 5682,\n  \"advertise</w>\": 31473,\n  \"advertised</w>\": 38987,\n  \"advertisement</w>\": 18713,\n  \"advertiser</w>\": 41829,\n  \"advertisers</w>\": 45472,\n  \"advertising</w>\": 8158,\n  \"adverts</w>\": 44306,\n  \"advice</w>\": 4973,\n  \"advis\": 4634,\n  \"advise</w>\": 25962,\n  \"advised</w>\": 23196,\n  \"adviser</w>\": 20367,\n  \"advisers</w>\": 40984,\n  \"advises</w>\": 42761,\n  \"advising</w>\": 39648,\n  \"advisor</w>\": 12380,\n  \"advisors</w>\": 23197,\n  \"advisory</w>\": 10224,\n  \"advoc\": 6657,\n  \"advocacy</w>\": 14443,\n  \"advocate</w>\": 12044,\n  \"advocates</w>\": 17757,\n  \"adwords</w>\": 48343,\n  \"ady\": 41446,\n  \"ady</w>\": 8781,\n  \"ae\": 5548,\n  \"ae</w>\": 4542,\n  \"aea</w>\": 37048,\n  \"aed</w>\": 26912,\n  \"aege\": 42304,\n  \"ael\": 41533,\n  \"ael</w>\": 43340,\n  \"aen\": 43085,\n  \"aer\": 10195,\n  \"aeri\": 27685,\n  \"aerial\": 44866,\n  \"aerial</w>\": 12440,\n  \"aero\": 10196,\n  \"aero</w>\": 25026,\n  \"aerob\": 42824,\n  \"aeron\": 37286,\n  \"aeronau\": 42816,\n  \"aerop\": 27735,\n  \"aerosmith</w>\": 43253,\n  \"aerospace</w>\": 20530,\n  \"aes\": 10617,\n  \"aes</w>\": 35677,\n  \"aest</w>\": 40694,\n  \"aesthe\": 21181,\n  \"aesthetic</w>\": 16179,\n  \"aesthetics</w>\": 29295,\n  \"aew</w>\": 47108,\n  \"af\": 702,\n  \"af</w>\": 4391,\n  \"afa</w>\": 24953,\n  \"afan\": 47474,\n  \"afar\": 41637,\n  \"afar</w>\": 37866,\n  \"afb</w>\": 27022,\n  \"afc\": 29742,\n  \"afc</w>\": 6571,\n  \"afcb</w>\": 44276,\n  \"afcon</w>\": 30019,\n  \"afd</w>\": 44626,\n  \"afe\": 30487,\n  \"afe</w>\": 13912,\n  \"afer\": 44707,\n  \"aff\": 8849,\n  \"aff</w>\": 14864,\n  \"affair</w>\": 13998,\n  \"affairs</w>\": 9830,\n  \"affe\": 4556,\n  \"affect</w>\": 11361,\n  \"affected</w>\": 9715,\n  \"affecting</w>\": 18448,\n  \"affection\": 33780,\n  \"affection</w>\": 28381,\n  \"affectionate</w>\": 42578,\n  \"affects</w>\": 17285,\n  \"affili\": 12120,\n  \"affiliate</w>\": 18652,\n  \"affiliated</w>\": 37540,\n  \"affiliation</w>\": 48377,\n  \"affinity</w>\": 41451,\n  \"affir\": 25343,\n  \"affirm\": 42711,\n  \"affirm</w>\": 48625,\n  \"affirmation</w>\": 47495,\n  \"affl\": 34036,\n  \"affleck</w>\": 35584,\n  \"afford\": 7951,\n  \"afford</w>\": 13223,\n  \"affordability</w>\": 44828,\n  \"affordable\": 43944,\n  \"affordable</w>\": 8926,\n  \"afg</w>\": 33994,\n  \"afgh\": 9029,\n  \"afghan</w>\": 15919,\n  \"afghanistan</w>\": 9836,\n  \"afi\": 24074,\n  \"afi</w>\": 31958,\n  \"afil\": 27209,\n  \"afire</w>\": 42010,\n  \"afirst</w>\": 38601,\n  \"afl\": 15132,\n  \"afl</w>\": 14356,\n  \"aflo\": 41959,\n  \"afm</w>\": 38385,\n  \"afootball</w>\": 41694,\n  \"afor\": 43102,\n  \"afore\": 41468,\n  \"afp</w>\": 18311,\n  \"afraid</w>\": 9474,\n  \"afri\": 13888,\n  \"afric\": 2136,\n  \"africa</w>\": 3093,\n  \"african\": 17471,\n  \"african</w>\": 4736,\n  \"africans</w>\": 26534,\n  \"afridi</w>\": 37651,\n  \"afrika</w>\": 45833,\n  \"afrin</w>\": 45586,\n  \"afro\": 16267,\n  \"afro</w>\": 21795,\n  \"afs</w>\": 48960,\n  \"aft</w>\": 22693,\n  \"after\": 2278,\n  \"after</w>\": 953,\n  \"afterdark</w>\": 48966,\n  \"afterlife</w>\": 46790,\n  \"aftermath</w>\": 20958,\n  \"afterno\": 22330,\n  \"afternoon\": 39035,\n  \"afternoon</w>\": 2716,\n  \"afternoons</w>\": 31631,\n  \"afterparty</w>\": 35305,\n  \"afterwards</w>\": 23911,\n  \"ag\": 602,\n  \"ag</w>\": 5241,\n  \"aga\": 1050,\n  \"aga</w>\": 4654,\n  \"again</w>\": 1495,\n  \"against\": 23838,\n  \"against</w>\": 1601,\n  \"agame</w>\": 46943,\n  \"agan\": 42946,\n  \"agan</w>\": 9178,\n  \"agar\": 13199,\n  \"agar</w>\": 17544,\n  \"agarwal</w>\": 43117,\n  \"agas\": 20430,\n  \"agate</w>\": 25454,\n  \"agatha</w>\": 43896,\n  \"agave</w>\": 42671,\n  \"agawa</w>\": 39433,\n  \"agazine</w>\": 44942,\n  \"age\": 4758,\n  \"age</w>\": 805,\n  \"aged</w>\": 3889,\n  \"ageing</w>\": 25349,\n  \"agen\": 10101,\n  \"agen</w>\": 43696,\n  \"agencies</w>\": 13887,\n  \"agency\": 44885,\n  \"agency</w>\": 6270,\n  \"agend\": 48653,\n  \"agenda</w>\": 8728,\n  \"agent\": 21210,\n  \"agent</w>\": 6576,\n  \"agents</w>\": 10199,\n  \"agentsof\": 37074,\n  \"agentsofshield</w>\": 38801,\n  \"ager\": 44847,\n  \"ager</w>\": 10443,\n  \"agers</w>\": 22123,\n  \"ages</w>\": 2321,\n  \"agg</w>\": 45482,\n  \"aggarwal</w>\": 39386,\n  \"agger\": 27836,\n  \"aggi\": 36844,\n  \"aggie\": 44244,\n  \"aggie</w>\": 37618,\n  \"aggies</w>\": 31047,\n  \"aggio</w>\": 36685,\n  \"aggrav\": 35203,\n  \"aggre\": 10426,\n  \"aggreg\": 41968,\n  \"aggregate</w>\": 41318,\n  \"aggression</w>\": 28900,\n  \"aggressive</w>\": 16295,\n  \"aggressively</w>\": 48667,\n  \"agh\": 17917,\n  \"agh</w>\": 14402,\n  \"aghan</w>\": 31276,\n  \"agi\": 24036,\n  \"agi</w>\": 17645,\n  \"agic</w>\": 37652,\n  \"agile</w>\": 16276,\n  \"agility</w>\": 32161,\n  \"aging</w>\": 4336,\n  \"agio</w>\": 41746,\n  \"agirl</w>\": 35469,\n  \"agle\": 37035,\n  \"agle</w>\": 16702,\n  \"agles\": 36374,\n  \"agles</w>\": 22679,\n  \"aglia</w>\": 46912,\n  \"agm</w>\": 19162,\n  \"agn\": 36474,\n  \"agna</w>\": 43626,\n  \"agne\": 29374,\n  \"agne</w>\": 48303,\n  \"agnes</w>\": 26213,\n  \"agno\": 41540,\n  \"ago\": 6276,\n  \"ago</w>\": 1468,\n  \"agomez</w>\": 27127,\n  \"agon\": 26775,\n  \"agon</w>\": 14901,\n  \"agony</w>\": 36977,\n  \"agor\": 38920,\n  \"agos</w>\": 32657,\n  \"agov</w>\": 34227,\n  \"agp</w>\": 46048,\n  \"agr\": 36639,\n  \"agra\": 26660,\n  \"agra</w>\": 29830,\n  \"agram</w>\": 2447,\n  \"agre\": 3180,\n  \"agreat\": 37594,\n  \"agree</w>\": 5953,\n  \"agreed</w>\": 12774,\n  \"agreeing</w>\": 40720,\n  \"agreement</w>\": 8286,\n  \"agreements</w>\": 25865,\n  \"agrees</w>\": 17854,\n  \"agri\": 20527,\n  \"agri</w>\": 30326,\n  \"agricul\": 7234,\n  \"agricultural</w>\": 15440,\n  \"agriculture</w>\": 9720,\n  \"agro\": 33178,\n  \"agro</w>\": 44589,\n  \"agron\": 41314,\n  \"agroup</w>\": 40099,\n  \"ags</w>\": 16926,\n  \"agt</w>\": 39681,\n  \"agu\": 3922,\n  \"agu</w>\": 36544,\n  \"agua</w>\": 18482,\n  \"aguchi</w>\": 49206,\n  \"ague</w>\": 2095,\n  \"aguero</w>\": 42964,\n  \"agues</w>\": 7000,\n  \"aguil\": 27946,\n  \"aguilar</w>\": 44715,\n  \"ah\": 1772,\n  \"ah</w>\": 1288,\n  \"aha\": 12082,\n  \"aha</w>\": 8429,\n  \"ahah</w>\": 38661,\n  \"ahaha</w>\": 32423,\n  \"ahahaha</w>\": 42620,\n  \"aham\": 36036,\n  \"ahan\": 45061,\n  \"ahan</w>\": 19255,\n  \"ahar\": 31038,\n  \"ahar</w>\": 38760,\n  \"ahe\": 27688,\n  \"ahead</w>\": 3158,\n  \"ahem</w>\": 39995,\n  \"ahh</w>\": 13152,\n  \"ahhh</w>\": 14769,\n  \"ahhhh</w>\": 21054,\n  \"ahhhhh</w>\": 36392,\n  \"ahi\": 45349,\n  \"ahi</w>\": 24154,\n  \"ahl</w>\": 30433,\n  \"ahmad\": 32167,\n  \"ahmad</w>\": 16902,\n  \"ahmadi\": 38656,\n  \"ahmadiyya</w>\": 44865,\n  \"ahmed\": 19491,\n  \"ahmed</w>\": 12081,\n  \"ahmedabad</w>\": 26966,\n  \"ahn</w>\": 33405,\n  \"aho\": 28114,\n  \"aho</w>\": 38444,\n  \"ahora</w>\": 43113,\n  \"ahouse</w>\": 33197,\n  \"ahoy</w>\": 38652,\n  \"ahs</w>\": 16937,\n  \"ahu\": 11908,\n  \"ahu</w>\": 16515,\n  \"ai\": 2014,\n  \"ai</w>\": 2215,\n  \"aia</w>\": 27046,\n  \"aib</w>\": 34780,\n  \"aic\": 29454,\n  \"aid\": 13723,\n  \"aid</w>\": 5182,\n  \"aida</w>\": 33830,\n  \"aidan\": 48814,\n  \"aidan</w>\": 26945,\n  \"aide\": 31558,\n  \"aide</w>\": 9746,\n  \"aided</w>\": 48707,\n  \"aiden</w>\": 40020,\n  \"aides</w>\": 49082,\n  \"aids</w>\": 11759,\n  \"aig\": 27295,\n  \"aig</w>\": 46989,\n  \"aii</w>\": 22478,\n  \"aik</w>\": 42575,\n  \"aiken</w>\": 46342,\n  \"ail\": 1457,\n  \"ail</w>\": 9154,\n  \"ailed</w>\": 38919,\n  \"ailing</w>\": 29999,\n  \"ails</w>\": 27024,\n  \"aim\": 6787,\n  \"aim</w>\": 11255,\n  \"aime</w>\": 39872,\n  \"aimed</w>\": 20247,\n  \"aimee</w>\": 36318,\n  \"aiming</w>\": 21768,\n  \"aimo</w>\": 36706,\n  \"aims</w>\": 13326,\n  \"ain\": 8326,\n  \"ain</w>\": 2210,\n  \"aine\": 48983,\n  \"aine</w>\": 17634,\n  \"ains</w>\": 27621,\n  \"aint\": 29543,\n  \"aint</w>\": 13099,\n  \"ainted</w>\": 39933,\n  \"aioli</w>\": 43949,\n  \"air\": 1281,\n  \"air</w>\": 1922,\n  \"aira\": 35085,\n  \"aira</w>\": 46444,\n  \"airasia</w>\": 48020,\n  \"airbnb</w>\": 23098,\n  \"airborne</w>\": 22755,\n  \"airbus</w>\": 15324,\n  \"aircraft</w>\": 7706,\n  \"airdrop</w>\": 38434,\n  \"aire</w>\": 7682,\n  \"aired</w>\": 21938,\n  \"aires</w>\": 17034,\n  \"airfield</w>\": 40525,\n  \"airforce</w>\": 23511,\n  \"airing</w>\": 20453,\n  \"airline</w>\": 14847,\n  \"airlines</w>\": 8929,\n  \"airmen</w>\": 44499,\n  \"airplane</w>\": 16451,\n  \"airplanes</w>\": 33319,\n  \"airplay</w>\": 47024,\n  \"airpollution</w>\": 47362,\n  \"airport\": 48337,\n  \"airport</w>\": 3259,\n  \"airports</w>\": 21543,\n  \"airs</w>\": 18539,\n  \"airshow</w>\": 27139,\n  \"airsoft</w>\": 30134,\n  \"airspace</w>\": 49280,\n  \"airstrikes</w>\": 37220,\n  \"airtel</w>\": 34784,\n  \"airtime</w>\": 46617,\n  \"airwaves</w>\": 43910,\n  \"airways</w>\": 14299,\n  \"airy</w>\": 44453,\n  \"ais\": 7616,\n  \"ais</w>\": 11393,\n  \"aise</w>\": 30505,\n  \"aish\": 21946,\n  \"aisha</w>\": 40211,\n  \"aishwar\": 29687,\n  \"aishwarya</w>\": 44019,\n  \"aisle</w>\": 26917,\n  \"ait\": 25613,\n  \"ait</w>\": 40814,\n  \"aj\": 3990,\n  \"aj</w>\": 6342,\n  \"aja\": 42343,\n  \"aja</w>\": 19633,\n  \"ajax</w>\": 21933,\n  \"ajay\": 22494,\n  \"ajay</w>\": 28726,\n  \"ajaydevgn</w>\": 35515,\n  \"aje\": 48818,\n  \"aje</w>\": 33315,\n  \"ajes</w>\": 38791,\n  \"aji\": 26102,\n  \"aji</w>\": 21153,\n  \"ajit</w>\": 42261,\n  \"ajith</w>\": 24118,\n  \"ajo</w>\": 26958,\n  \"aju\": 36855,\n  \"ak\": 819,\n  \"ak</w>\": 1196,\n  \"aka\": 19154,\n  \"aka</w>\": 3412,\n  \"akaif</w>\": 45736,\n  \"akan\": 43678,\n  \"akan</w>\": 38244,\n  \"akapoor</w>\": 40064,\n  \"akarta</w>\": 48603,\n  \"akb</w>\": 41962,\n  \"akbar</w>\": 27180,\n  \"ake\": 10558,\n  \"ake</w>\": 5776,\n  \"aked</w>\": 6115,\n  \"aker\": 14245,\n  \"aker</w>\": 3074,\n  \"akers</w>\": 5788,\n  \"akes</w>\": 4764,\n  \"akest</w>\": 46679,\n  \"akh\": 14821,\n  \"akh</w>\": 30660,\n  \"akhan</w>\": 28158,\n  \"akhi\": 41660,\n  \"akhilesh</w>\": 48495,\n  \"akhtar</w>\": 45458,\n  \"aki\": 18173,\n  \"aki</w>\": 6592,\n  \"akin\": 24630,\n  \"akin</w>\": 13601,\n  \"aking</w>\": 1809,\n  \"akins</w>\": 48568,\n  \"akira</w>\": 34001,\n  \"akis</w>\": 27732,\n  \"akistan</w>\": 46221,\n  \"akley</w>\": 39908,\n  \"ako\": 44027,\n  \"ako</w>\": 14541,\n  \"akon</w>\": 47105,\n  \"akos</w>\": 44659,\n  \"akrish\": 37434,\n  \"akron</w>\": 26115,\n  \"aks</w>\": 2953,\n  \"aksh\": 28226,\n  \"akshay\": 21483,\n  \"akshay</w>\": 38914,\n  \"akshaykumar</w>\": 23624,\n  \"akshi</w>\": 42634,\n  \"aku\": 18151,\n  \"aku</w>\": 20815,\n  \"aky</w>\": 11977,\n  \"al\": 526,\n  \"al</w>\": 566,\n  \"ala\": 12783,\n  \"ala</w>\": 3449,\n  \"alab\": 6365,\n  \"alabam\": 45880,\n  \"alabama</w>\": 8422,\n  \"alach\": 24622,\n  \"alad\": 23074,\n  \"aladdin</w>\": 29951,\n  \"alai</w>\": 47072,\n  \"alain</w>\": 28999,\n  \"alam\": 16612,\n  \"alam</w>\": 16012,\n  \"alamo\": 41922,\n  \"alamo</w>\": 34632,\n  \"alan\": 9563,\n  \"alan</w>\": 5773,\n  \"alana</w>\": 43405,\n  \"aland\": 34304,\n  \"aland</w>\": 6819,\n  \"alar\": 34333,\n  \"alarm</w>\": 11321,\n  \"alarming</w>\": 37209,\n  \"alarms</w>\": 31236,\n  \"alarts</w>\": 31422,\n  \"alas\": 7276,\n  \"alas</w>\": 22412,\n  \"alaska</w>\": 9562,\n  \"alaskan</w>\": 33898,\n  \"alastair</w>\": 42062,\n  \"alay\": 30289,\n  \"alay</w>\": 36450,\n  \"alaya</w>\": 36397,\n  \"alb\": 45248,\n  \"alba</w>\": 25254,\n  \"alban\": 10882,\n  \"albania</w>\": 29170,\n  \"albanian</w>\": 47721,\n  \"albans</w>\": 44119,\n  \"albany</w>\": 17359,\n  \"albat\": 42797,\n  \"albeit</w>\": 38984,\n  \"alber\": 6413,\n  \"albert\": 34174,\n  \"albert</w>\": 9507,\n  \"alberta</w>\": 11048,\n  \"alberto</w>\": 22714,\n  \"albi\": 18512,\n  \"albino</w>\": 48062,\n  \"albion</w>\": 24071,\n  \"albu\": 2216,\n  \"album\": 40712,\n  \"album</w>\": 2431,\n  \"albums</w>\": 10705,\n  \"albuquerque</w>\": 31079,\n  \"alcat\": 35361,\n  \"alche\": 37909,\n  \"alchemist</w>\": 38913,\n  \"alchemy</w>\": 39501,\n  \"alco\": 6848,\n  \"alco</w>\": 45446,\n  \"alcohol</w>\": 9426,\n  \"alcoholic</w>\": 25098,\n  \"ald\": 4539,\n  \"ald</w>\": 2928,\n  \"alda</w>\": 46440,\n  \"alde\": 33114,\n  \"alden\": 17155,\n  \"alden</w>\": 27710,\n  \"aldenrichards</w>\": 20051,\n  \"alder\": 18220,\n  \"alder</w>\": 46571,\n  \"aldi</w>\": 23204,\n  \"aldo</w>\": 9933,\n  \"aldridge</w>\": 38084,\n  \"alds</w>\": 14285,\n  \"aldu\": 6505,\n  \"aldub\": 10532,\n  \"aldub</w>\": 15247,\n  \"ale\": 1440,\n  \"ale</w>\": 1336,\n  \"alea</w>\": 26518,\n  \"aleague</w>\": 38909,\n  \"alec\": 29804,\n  \"alec</w>\": 19954,\n  \"alecoscino</w>\": 47948,\n  \"aled</w>\": 4970,\n  \"alee</w>\": 24515,\n  \"alej\": 23440,\n  \"alejandro</w>\": 32950,\n  \"alek\": 26906,\n  \"alek</w>\": 43310,\n  \"aleksand\": 48429,\n  \"alem</w>\": 11825,\n  \"aleppo</w>\": 19258,\n  \"aler\": 25674,\n  \"aler</w>\": 27335,\n  \"alert</w>\": 4662,\n  \"alerts</w>\": 22144,\n  \"ales\": 44171,\n  \"ales</w>\": 5962,\n  \"aless\": 21864,\n  \"alessandro</w>\": 37344,\n  \"alestine</w>\": 31945,\n  \"alex\": 2959,\n  \"alex</w>\": 4134,\n  \"alexa</w>\": 16273,\n  \"alexand\": 10696,\n  \"alexander\": 25527,\n  \"alexander</w>\": 7563,\n  \"alexandra</w>\": 19054,\n  \"alexandre</w>\": 35711,\n  \"alexandria</w>\": 21171,\n  \"alexis\": 35023,\n  \"alexis</w>\": 14243,\n  \"aley</w>\": 21635,\n  \"alf</w>\": 27098,\n  \"alfa</w>\": 23482,\n  \"alfar\": 38870,\n  \"alfie</w>\": 28598,\n  \"alfon\": 31947,\n  \"alfonso</w>\": 41784,\n  \"alfre\": 20982,\n  \"alfred</w>\": 16553,\n  \"alfredo</w>\": 32291,\n  \"algae</w>\": 25654,\n  \"algar\": 36291,\n  \"algarve</w>\": 40290,\n  \"alge\": 24336,\n  \"algebra</w>\": 33694,\n  \"alger\": 18568,\n  \"algeria</w>\": 25257,\n  \"algon\": 33007,\n  \"algori\": 14912,\n  \"algorithm</w>\": 23295,\n  \"algorithms</w>\": 26039,\n  \"alham\": 23352,\n  \"alhamdulil\": 35129,\n  \"alhamdulillah</w>\": 38982,\n  \"ali\": 835,\n  \"ali</w>\": 3558,\n  \"alia</w>\": 2492,\n  \"aliaa</w>\": 36468,\n  \"alian</w>\": 3464,\n  \"alias</w>\": 40026,\n  \"alibaba</w>\": 39231,\n  \"alic\": 25265,\n  \"alice\": 23759,\n  \"alice</w>\": 9192,\n  \"alici\": 31630,\n  \"alicia</w>\": 20914,\n  \"alie</w>\": 8697,\n  \"alien\": 22846,\n  \"alien</w>\": 9639,\n  \"aliens</w>\": 14883,\n  \"alier</w>\": 39493,\n  \"alies</w>\": 38086,\n  \"alife\": 41347,\n  \"alife</w>\": 21100,\n  \"alig\": 21272,\n  \"alight</w>\": 36157,\n  \"align</w>\": 31160,\n  \"aligned</w>\": 29292,\n  \"alignment</w>\": 27267,\n  \"alik</w>\": 31141,\n  \"alike</w>\": 12665,\n  \"alim\": 42075,\n  \"alin\": 42746,\n  \"alin</w>\": 40063,\n  \"alina</w>\": 39529,\n  \"aline</w>\": 21799,\n  \"aling</w>\": 5169,\n  \"alion</w>\": 19049,\n  \"alis\": 21308,\n  \"alis</w>\": 20114,\n  \"alisa</w>\": 38918,\n  \"alisation</w>\": 42143,\n  \"alise</w>\": 36718,\n  \"alised</w>\": 25099,\n  \"alism</w>\": 5607,\n  \"alison\": 28653,\n  \"alison</w>\": 16970,\n  \"alist\": 44900,\n  \"alist</w>\": 3320,\n  \"alistair</w>\": 40551,\n  \"alistic</w>\": 22302,\n  \"alists</w>\": 5653,\n  \"alit\": 45566,\n  \"alities</w>\": 27925,\n  \"ality</w>\": 1694,\n  \"alive\": 40467,\n  \"alive</w>\": 4716,\n  \"aliz\": 30979,\n  \"alization</w>\": 8026,\n  \"alize</w>\": 10268,\n  \"alized</w>\": 6141,\n  \"alizer</w>\": 38922,\n  \"alizes</w>\": 26181,\n  \"alizing</w>\": 13023,\n  \"alk\": 30246,\n  \"alk</w>\": 21577,\n  \"alkal\": 33450,\n  \"alkaline</w>\": 39210,\n  \"all\": 813,\n  \"all</w>\": 615,\n  \"alla\": 13884,\n  \"alla</w>\": 14000,\n  \"allabout\": 43996,\n  \"allah</w>\": 6378,\n  \"allan\": 36552,\n  \"allan</w>\": 15404,\n  \"allblacks</w>\": 47728,\n  \"allday</w>\": 35862,\n  \"alle\": 4870,\n  \"alle</w>\": 29478,\n  \"alled</w>\": 7379,\n  \"alleg\": 7456,\n  \"allegations</w>\": 16992,\n  \"alleged</w>\": 12133,\n  \"allegedly</w>\": 14177,\n  \"alleges</w>\": 45051,\n  \"allegh\": 41479,\n  \"allegheny</w>\": 47851,\n  \"allegi\": 28832,\n  \"allegiance</w>\": 30955,\n  \"allen\": 16712,\n  \"allen</w>\": 6386,\n  \"allenge</w>\": 31387,\n  \"aller\": 10116,\n  \"aller</w>\": 30630,\n  \"allergic</w>\": 28809,\n  \"allergies</w>\": 28247,\n  \"allergy</w>\": 24408,\n  \"allery</w>\": 32542,\n  \"alles</w>\": 43354,\n  \"allevi\": 31682,\n  \"alleviate</w>\": 44799,\n  \"alley\": 36205,\n  \"alley</w>\": 10329,\n  \"allez</w>\": 49137,\n  \"alli\": 4123,\n  \"alli</w>\": 15268,\n  \"alliance\": 45404,\n  \"alliance</w>\": 8945,\n  \"alliances</w>\": 48403,\n  \"allianz</w>\": 45740,\n  \"allie</w>\": 25040,\n  \"allied</w>\": 20045,\n  \"allies</w>\": 17277,\n  \"alligator</w>\": 28574,\n  \"allin\": 45007,\n  \"allin</w>\": 22395,\n  \"alline</w>\": 48182,\n  \"alling</w>\": 2992,\n  \"allis</w>\": 45309,\n  \"allison\": 34602,\n  \"allison</w>\": 16578,\n  \"allman</w>\": 42611,\n  \"allo\": 8107,\n  \"allo</w>\": 18389,\n  \"allocated</w>\": 42716,\n  \"allocation</w>\": 35139,\n  \"allon</w>\": 46693,\n  \"allot\": 26363,\n  \"allotment</w>\": 33750,\n  \"allow\": 5645,\n  \"allow</w>\": 6722,\n  \"allowance</w>\": 35696,\n  \"allowed</w>\": 7885,\n  \"allowing</w>\": 12458,\n  \"allows</w>\": 9966,\n  \"alloy</w>\": 22467,\n  \"alls</w>\": 1997,\n  \"allstar\": 31247,\n  \"allstar</w>\": 22974,\n  \"allstars</w>\": 31198,\n  \"allthe\": 29253,\n  \"allu\": 20157,\n  \"alluarjun</w>\": 39333,\n  \"allure</w>\": 41814,\n  \"ally\": 7461,\n  \"ally</w>\": 769,\n  \"alm</w>\": 28303,\n  \"alma\": 32933,\n  \"alma</w>\": 18337,\n  \"alman\": 29394,\n  \"almanac</w>\": 41268,\n  \"almighty</w>\": 21898,\n  \"almond</w>\": 15646,\n  \"almonds</w>\": 30468,\n  \"almost\": 47534,\n  \"almost</w>\": 2671,\n  \"aln\": 47203,\n  \"alo\": 3435,\n  \"alo</w>\": 6183,\n  \"aloe</w>\": 30728,\n  \"alog</w>\": 15813,\n  \"alogue</w>\": 9101,\n  \"aloha</w>\": 23160,\n  \"aloils</w>\": 49002,\n  \"alom</w>\": 22236,\n  \"alon\": 14097,\n  \"alon</w>\": 42846,\n  \"alone</w>\": 4702,\n  \"along\": 8300,\n  \"along</w>\": 2528,\n  \"alongside</w>\": 8646,\n  \"alonso</w>\": 25704,\n  \"aloo</w>\": 46187,\n  \"alore</w>\": 14323,\n  \"alot</w>\": 16945,\n  \"alou\": 43180,\n  \"aloud</w>\": 30028,\n  \"alove\": 46669,\n  \"alove</w>\": 37045,\n  \"alp\": 32020,\n  \"alp</w>\": 39342,\n  \"alpac\": 30128,\n  \"alpaca</w>\": 42561,\n  \"alph\": 6720,\n  \"alpha\": 11807,\n  \"alpha</w>\": 8624,\n  \"alphabe\": 45796,\n  \"alphabet</w>\": 22335,\n  \"alphon\": 37865,\n  \"alpine</w>\": 17055,\n  \"alps</w>\": 18191,\n  \"already</w>\": 2426,\n  \"alright</w>\": 10866,\n  \"als\": 23982,\n  \"als</w>\": 938,\n  \"alsace</w>\": 49388,\n  \"also</w>\": 1446,\n  \"alt\": 9995,\n  \"alt</w>\": 10006,\n  \"alta\": 24470,\n  \"alta</w>\": 25378,\n  \"altaf</w>\": 47342,\n  \"altam\": 45624,\n  \"altar</w>\": 16385,\n  \"alter\": 4949,\n  \"alter</w>\": 21393,\n  \"altered</w>\": 25201,\n  \"altern\": 47463,\n  \"alternate</w>\": 15926,\n  \"alternati\": 16699,\n  \"alternative\": 37327,\n  \"alternative</w>\": 8248,\n  \"alternatives</w>\": 25041,\n  \"alth\": 23463,\n  \"alth</w>\": 5863,\n  \"although</w>\": 9421,\n  \"alti\": 35531,\n  \"alties</w>\": 17276,\n  \"altitude</w>\": 23241,\n  \"altman</w>\": 48100,\n  \"alto\": 35053,\n  \"alto</w>\": 17518,\n  \"altogether</w>\": 45689,\n  \"alton\": 41331,\n  \"alton</w>\": 36550,\n  \"altrin\": 38458,\n  \"altrincham</w>\": 44718,\n  \"alty</w>\": 5546,\n  \"alu\": 4776,\n  \"alu</w>\": 27991,\n  \"alum\": 5404,\n  \"alum</w>\": 10553,\n  \"alumin\": 14563,\n  \"alumini\": 22908,\n  \"aluminium</w>\": 23631,\n  \"aluminum</w>\": 15251,\n  \"alumna</w>\": 30313,\n  \"alumni</w>\": 6646,\n  \"alumnus</w>\": 23633,\n  \"alums</w>\": 30155,\n  \"alv\": 20928,\n  \"alvar\": 25196,\n  \"alvarez</w>\": 26924,\n  \"alvaro</w>\": 41941,\n  \"alves</w>\": 38547,\n  \"alvin</w>\": 27023,\n  \"alway\": 14046,\n  \"alway</w>\": 43764,\n  \"always\": 24997,\n  \"always</w>\": 1466,\n  \"alwx</w>\": 32768,\n  \"aly\": 6468,\n  \"aly</w>\": 12910,\n  \"alyn\": 49150,\n  \"alyss\": 29490,\n  \"alyssa</w>\": 18898,\n  \"alz\": 12936,\n  \"alz</w>\": 41128,\n  \"alzheim\": 15212,\n  \"alzheimer</w>\": 21151,\n  \"alzheimers</w>\": 34592,\n  \"am\": 548,\n  \"am</w>\": 687,\n  \"ama\": 18206,\n  \"ama</w>\": 1696,\n  \"amad\": 45095,\n  \"amade\": 37366,\n  \"amag\": 32049,\n  \"amal\": 15315,\n  \"amal</w>\": 36753,\n  \"aman\": 19890,\n  \"aman</w>\": 10110,\n  \"amand\": 14560,\n  \"amanda</w>\": 10036,\n  \"amar\": 6424,\n  \"amar</w>\": 19607,\n  \"amara</w>\": 48522,\n  \"amari\": 42565,\n  \"amarillo</w>\": 40449,\n  \"amarine</w>\": 45591,\n  \"amarketing</w>\": 30788,\n  \"amas\": 22716,\n  \"amas</w>\": 15667,\n  \"amat\": 38664,\n  \"amat</w>\": 25455,\n  \"amate\": 12453,\n  \"amateur</w>\": 14287,\n  \"amaya</w>\": 47210,\n  \"amaz\": 1185,\n  \"amaze</w>\": 24846,\n  \"amazed</w>\": 18944,\n  \"amazing\": 15949,\n  \"amazing</w>\": 1370,\n  \"amazingly</w>\": 20368,\n  \"amazon\": 13630,\n  \"amazon</w>\": 4140,\n  \"amb\": 9042,\n  \"amb</w>\": 16853,\n  \"amba</w>\": 27003,\n  \"ambani</w>\": 45967,\n  \"ambas\": 5634,\n  \"ambassad\": 5758,\n  \"ambassador</w>\": 6795,\n  \"ambassadors</w>\": 16832,\n  \"ambed\": 42089,\n  \"ambedkar</w>\": 48131,\n  \"amber\": 18292,\n  \"amber</w>\": 9986,\n  \"ambi\": 11844,\n  \"ambient</w>\": 23447,\n  \"ambigu\": 35702,\n  \"ambition</w>\": 20673,\n  \"ambitions</w>\": 34152,\n  \"ambitious</w>\": 18666,\n  \"ambro\": 17585,\n  \"ambrose</w>\": 24253,\n  \"ambu\": 34423,\n  \"ambul\": 13944,\n  \"ambulance</w>\": 15555,\n  \"ambush</w>\": 40725,\n  \"amc\": 24942,\n  \"amc</w>\": 16921,\n  \"amd</w>\": 20845,\n  \"ame\": 3995,\n  \"ame</w>\": 780,\n  \"amed</w>\": 5660,\n  \"ameen</w>\": 24229,\n  \"amel\": 31988,\n  \"amel</w>\": 10960,\n  \"ameli\": 21599,\n  \"amelia</w>\": 21433,\n  \"amell</w>\": 48198,\n  \"amen\": 18716,\n  \"amen</w>\": 12335,\n  \"amend\": 12425,\n  \"amendment</w>\": 15019,\n  \"amendments</w>\": 40901,\n  \"amenities</w>\": 30096,\n  \"ament</w>\": 27528,\n  \"amer\": 17081,\n  \"amer</w>\": 16147,\n  \"ameri\": 40422,\n  \"americ\": 1283,\n  \"america</w>\": 2224,\n  \"americafirst</w>\": 43216,\n  \"american\": 8746,\n  \"american</w>\": 2151,\n  \"americana</w>\": 26221,\n  \"americanair</w>\": 42538,\n  \"americani\": 39726,\n  \"americans</w>\": 6676,\n  \"americas\": 33343,\n  \"americas</w>\": 18142,\n  \"ames</w>\": 5469,\n  \"ameter</w>\": 23393,\n  \"amethy\": 30291,\n  \"amethyst</w>\": 31485,\n  \"amex</w>\": 46390,\n  \"amg</w>\": 21324,\n  \"amher\": 32311,\n  \"amherst</w>\": 39065,\n  \"ami\": 6100,\n  \"ami</w>\": 3065,\n  \"amic\": 25824,\n  \"amic</w>\": 21383,\n  \"amid\": 18908,\n  \"amid</w>\": 11953,\n  \"amide</w>\": 30952,\n  \"amidst</w>\": 25172,\n  \"amie</w>\": 36901,\n  \"amig\": 40294,\n  \"amiga</w>\": 35329,\n  \"amigo</w>\": 44991,\n  \"amigos</w>\": 28176,\n  \"amii\": 35462,\n  \"amiibo</w>\": 38871,\n  \"amily</w>\": 36732,\n  \"amin\": 14337,\n  \"amin</w>\": 20235,\n  \"amina</w>\": 47531,\n  \"amination</w>\": 30355,\n  \"amine</w>\": 35823,\n  \"aming</w>\": 3507,\n  \"amino</w>\": 33464,\n  \"amir\": 26029,\n  \"amir</w>\": 21973,\n  \"amis</w>\": 29829,\n  \"amish</w>\": 24958,\n  \"amit\": 15083,\n  \"amit</w>\": 25255,\n  \"amitabh</w>\": 48124,\n  \"amitshah</w>\": 32374,\n  \"aml</w>\": 43185,\n  \"amma</w>\": 29786,\n  \"amman</w>\": 29243,\n  \"ammo</w>\": 33474,\n  \"ammunition</w>\": 35060,\n  \"amn</w>\": 24073,\n  \"amne\": 14596,\n  \"amnesia</w>\": 41741,\n  \"amnesty\": 46330,\n  \"amnesty</w>\": 21177,\n  \"amo\": 4833,\n  \"amo</w>\": 11156,\n  \"amodi</w>\": 9826,\n  \"amon\": 17492,\n  \"amon</w>\": 24046,\n  \"among\": 12310,\n  \"among</w>\": 4265,\n  \"amongst</w>\": 12520,\n  \"amoo</w>\": 26977,\n  \"amor\": 19977,\n  \"amor</w>\": 15973,\n  \"amore\": 38937,\n  \"amore</w>\": 22691,\n  \"amores</w>\": 36338,\n  \"amos</w>\": 18133,\n  \"amoto</w>\": 25492,\n  \"amount</w>\": 6403,\n  \"amounts</w>\": 16747,\n  \"amour</w>\": 29908,\n  \"amovie</w>\": 41062,\n  \"amp\": 3521,\n  \"amp</w>\": 6259,\n  \"amped</w>\": 22640,\n  \"amphi\": 16379,\n  \"amphibious</w>\": 45206,\n  \"amphitheater</w>\": 41285,\n  \"amphitheatre</w>\": 44039,\n  \"ample</w>\": 34162,\n  \"amples</w>\": 14536,\n  \"ampli\": 15647,\n  \"amplifier</w>\": 31743,\n  \"amplify</w>\": 45308,\n  \"amps</w>\": 19252,\n  \"ampton\": 29410,\n  \"ampton</w>\": 9347,\n  \"amr</w>\": 30916,\n  \"amreading</w>\": 16546,\n  \"amrit\": 33849,\n  \"ams</w>\": 1396,\n  \"amster\": 9110,\n  \"amsterdam</w>\": 9441,\n  \"amtrak</w>\": 27855,\n  \"amu\": 11347,\n  \"amu</w>\": 32336,\n  \"amur\": 35014,\n  \"amura</w>\": 35487,\n  \"amus</w>\": 36269,\n  \"amuse\": 21421,\n  \"amuse</w>\": 44367,\n  \"amused</w>\": 30212,\n  \"amusement</w>\": 32570,\n  \"amusic</w>\": 20266,\n  \"amusing</w>\": 31789,\n  \"amwriting</w>\": 9660,\n  \"amy\": 10547,\n  \"amy</w>\": 5187,\n  \"an\": 514,\n  \"an</w>\": 550,\n  \"ana\": 6588,\n  \"ana</w>\": 1388,\n  \"anab\": 34742,\n  \"anada</w>\": 27948,\n  \"anag\": 12115,\n  \"anagh</w>\": 40774,\n  \"anaheim</w>\": 23728,\n  \"anak\": 34814,\n  \"anak</w>\": 38658,\n  \"anal\": 2785,\n  \"analo\": 34179,\n  \"analog</w>\": 19963,\n  \"analogue</w>\": 46031,\n  \"analy\": 4611,\n  \"analyse</w>\": 47246,\n  \"analyses</w>\": 39695,\n  \"analysis</w>\": 5296,\n  \"analyst</w>\": 14198,\n  \"analysts</w>\": 28075,\n  \"analytical</w>\": 34550,\n  \"analytics</w>\": 8558,\n  \"analyze</w>\": 28519,\n  \"analyzing</w>\": 32107,\n  \"anam\": 29525,\n  \"anan\": 37215,\n  \"anand\": 25073,\n  \"anand</w>\": 22083,\n  \"anap\": 41566,\n  \"anarch\": 46405,\n  \"anarchi\": 39879,\n  \"anarchy</w>\": 27707,\n  \"anas\": 31382,\n  \"anas</w>\": 12633,\n  \"anast\": 48902,\n  \"anasta\": 22915,\n  \"anastasi\": 36534,\n  \"anastasia</w>\": 37975,\n  \"anat\": 10045,\n  \"anath</w>\": 31277,\n  \"anatom\": 33759,\n  \"anatomy</w>\": 15376,\n  \"anc\": 1124,\n  \"anc</w>\": 17758,\n  \"anca</w>\": 14583,\n  \"ance\": 7165,\n  \"ance</w>\": 884,\n  \"anced</w>\": 5071,\n  \"ancer</w>\": 17415,\n  \"ancers</w>\": 37296,\n  \"ances</w>\": 3515,\n  \"ancestor</w>\": 43904,\n  \"ancestors</w>\": 24405,\n  \"ancestral</w>\": 41615,\n  \"ancestry</w>\": 30922,\n  \"anch\": 9489,\n  \"anche</w>\": 34679,\n  \"ancho\": 26610,\n  \"anchor\": 20030,\n  \"anchor</w>\": 13201,\n  \"anchorage</w>\": 31950,\n  \"anchored</w>\": 45926,\n  \"anchors</w>\": 37830,\n  \"anci\": 4192,\n  \"ancient\": 31495,\n  \"ancient</w>\": 5810,\n  \"ancies</w>\": 21647,\n  \"ancing</w>\": 7797,\n  \"anco</w>\": 15459,\n  \"ancy\": 16282,\n  \"ancy</w>\": 3633,\n  \"and\": 672,\n  \"and</w>\": 537,\n  \"anda</w>\": 2911,\n  \"andalu\": 31443,\n  \"andco</w>\": 36302,\n  \"ande\": 26889,\n  \"ande</w>\": 30354,\n  \"ander\": 3740,\n  \"ander</w>\": 3935,\n  \"anders</w>\": 10880,\n  \"andersen</w>\": 32661,\n  \"anderson\": 26683,\n  \"anderson</w>\": 6510,\n  \"andes</w>\": 24052,\n  \"andfriends</w>\": 36871,\n  \"andhi</w>\": 21617,\n  \"andhra</w>\": 32452,\n  \"andi\": 28870,\n  \"andi</w>\": 14354,\n  \"andie</w>\": 46318,\n  \"andme</w>\": 42831,\n  \"ando\": 35950,\n  \"ando</w>\": 5986,\n  \"andolan</w>\": 48965,\n  \"andon</w>\": 36488,\n  \"andor\": 45243,\n  \"andover</w>\": 44177,\n  \"andr\": 22661,\n  \"andra\": 46795,\n  \"andra</w>\": 21730,\n  \"andre\": 2657,\n  \"andre</w>\": 9400,\n  \"andrea</w>\": 10895,\n  \"andreas</w>\": 20444,\n  \"andrei</w>\": 42137,\n  \"andres</w>\": 25197,\n  \"andretti</w>\": 44291,\n  \"andrew\": 11717,\n  \"andrew</w>\": 4847,\n  \"andrews</w>\": 14506,\n  \"andri\": 37208,\n  \"andro\": 4417,\n  \"andro</w>\": 17980,\n  \"android\": 24284,\n  \"android</w>\": 5191,\n  \"androidgames</w>\": 46572,\n  \"andromeda</w>\": 42942,\n  \"andrÃ©</w>\": 35609,\n  \"ands</w>\": 32257,\n  \"andthe\": 22111,\n  \"andu\": 44200,\n  \"andum</w>\": 47266,\n  \"andy\": 9447,\n  \"andy</w>\": 2888,\n  \"ane\": 5846,\n  \"ane</w>\": 3051,\n  \"anec\": 33965,\n  \"anem\": 41395,\n  \"anemone</w>\": 49019,\n  \"aneous</w>\": 48273,\n  \"anes</w>\": 15381,\n  \"anese</w>\": 48778,\n  \"anesthe\": 30622,\n  \"anesthesia</w>\": 43353,\n  \"anew\": 39084,\n  \"anew</w>\": 47341,\n  \"anews</w>\": 20919,\n  \"aney</w>\": 22387,\n  \"anfield</w>\": 26993,\n  \"ang\": 883,\n  \"ang</w>\": 2704,\n  \"anga</w>\": 11641,\n  \"angames</w>\": 43178,\n  \"angan</w>\": 28264,\n  \"angas</w>\": 46180,\n  \"ange\": 2960,\n  \"ange</w>\": 3039,\n  \"angel\": 5029,\n  \"angel</w>\": 5130,\n  \"angela</w>\": 12354,\n  \"angeles</w>\": 7382,\n  \"angeli\": 15265,\n  \"angelic</w>\": 41038,\n  \"angelica</w>\": 38582,\n  \"angelina</w>\": 28890,\n  \"angelo</w>\": 14342,\n  \"angelou</w>\": 41328,\n  \"angels</w>\": 7809,\n  \"anger\": 32737,\n  \"anger</w>\": 6788,\n  \"angerous</w>\": 39716,\n  \"angers</w>\": 29756,\n  \"angh\": 34030,\n  \"angi\": 28003,\n  \"angi</w>\": 24301,\n  \"angie</w>\": 18859,\n  \"angle\": 21749,\n  \"angle</w>\": 6946,\n  \"angled</w>\": 32322,\n  \"angler</w>\": 22284,\n  \"anglers</w>\": 41608,\n  \"angles</w>\": 18627,\n  \"anglesey</w>\": 31850,\n  \"anglia</w>\": 32076,\n  \"anglic\": 28322,\n  \"anglican</w>\": 33284,\n  \"angling</w>\": 36824,\n  \"anglo\": 39515,\n  \"anglo</w>\": 30408,\n  \"ango</w>\": 19090,\n  \"angola</w>\": 36636,\n  \"angor</w>\": 41740,\n  \"angp</w>\": 19992,\n  \"angry\": 33910,\n  \"angry</w>\": 9054,\n  \"angs</w>\": 18441,\n  \"angst</w>\": 41714,\n  \"angu\": 11209,\n  \"angular\": 43584,\n  \"angular</w>\": 24981,\n  \"angularjs</w>\": 48608,\n  \"angus</w>\": 19688,\n  \"ani\": 1326,\n  \"ani</w>\": 3624,\n  \"ania</w>\": 9866,\n  \"anian</w>\": 9945,\n  \"anians</w>\": 39393,\n  \"anic</w>\": 23113,\n  \"anie\": 26697,\n  \"anie</w>\": 7671,\n  \"anil\": 28589,\n  \"anil</w>\": 34619,\n  \"anim\": 2190,\n  \"animal\": 10697,\n  \"animal</w>\": 4668,\n  \"animalrights</w>\": 42859,\n  \"animals</w>\": 4995,\n  \"animate</w>\": 40076,\n  \"animated</w>\": 13360,\n  \"animation</w>\": 10344,\n  \"animations</w>\": 42870,\n  \"animator</w>\": 42591,\n  \"anime\": 23314,\n  \"anime</w>\": 6469,\n  \"anin</w>\": 45735,\n  \"aning</w>\": 30972,\n  \"anir\": 27089,\n  \"anirud\": 35278,\n  \"anirudhofficial</w>\": 45917,\n  \"anis\": 40986,\n  \"anis</w>\": 47556,\n  \"anism</w>\": 20947,\n  \"anist</w>\": 16729,\n  \"anistan</w>\": 9727,\n  \"aniston</w>\": 47344,\n  \"anit\": 23683,\n  \"anita</w>\": 18544,\n  \"anium</w>\": 14794,\n  \"anj\": 22443,\n  \"anja</w>\": 43440,\n  \"anjali</w>\": 38834,\n  \"anjo</w>\": 47353,\n  \"ank\": 13339,\n  \"ank</w>\": 10029,\n  \"anka</w>\": 45324,\n  \"ankara</w>\": 34309,\n  \"ankle</w>\": 14777,\n  \"ankles</w>\": 48688,\n  \"ann\": 850,\n  \"ann</w>\": 5424,\n  \"anna\": 13821,\n  \"anna</w>\": 2160,\n  \"annab\": 22336,\n  \"annabelle</w>\": 47661,\n  \"annah\": 39166,\n  \"annah</w>\": 14327,\n  \"annak\": 41720,\n  \"annan</w>\": 32166,\n  \"annapolis</w>\": 34491,\n  \"annas\": 48467,\n  \"anne\": 9139,\n  \"anne</w>\": 4083,\n  \"anned</w>\": 27352,\n  \"anner</w>\": 12642,\n  \"annes</w>\": 24343,\n  \"annette</w>\": 36821,\n  \"annex\": 42958,\n  \"annex</w>\": 46389,\n  \"anni\": 2438,\n  \"anni</w>\": 13728,\n  \"annie\": 37270,\n  \"annie</w>\": 12173,\n  \"annies</w>\": 43184,\n  \"annihil\": 32734,\n  \"annis</w>\": 24742,\n  \"anniv</w>\": 31399,\n  \"anniver\": 29671,\n  \"annivers\": 42836,\n  \"anniversaire</w>\": 30882,\n  \"anniversary</w>\": 3048,\n  \"anno\": 9901,\n  \"anno</w>\": 26871,\n  \"annon</w>\": 26385,\n  \"annot\": 30411,\n  \"announ\": 1806,\n  \"announce</w>\": 3682,\n  \"announced</w>\": 4103,\n  \"announcement</w>\": 6932,\n  \"announcements</w>\": 23735,\n  \"announcer</w>\": 33626,\n  \"announces</w>\": 6500,\n  \"announcing</w>\": 11593,\n  \"annoy</w>\": 45138,\n  \"annoyed</w>\": 29863,\n  \"annoying</w>\": 15248,\n  \"annu\": 21698,\n  \"annual</w>\": 2906,\n  \"annually</w>\": 23703,\n  \"anny\": 34313,\n  \"anny</w>\": 5291,\n  \"ano\": 5617,\n  \"ano</w>\": 2658,\n  \"anom\": 21612,\n  \"anomaly</w>\": 46811,\n  \"anon\": 47079,\n  \"anon</w>\": 13667,\n  \"anonym\": 38605,\n  \"anonymous</w>\": 15036,\n  \"anoo\": 25690,\n  \"anor\": 13243,\n  \"anor</w>\": 16596,\n  \"anos</w>\": 20132,\n  \"another\": 29274,\n  \"another</w>\": 1380,\n  \"anova</w>\": 24116,\n  \"ans\": 24586,\n  \"ans</w>\": 885,\n  \"ansari</w>\": 40748,\n  \"ansel\": 40356,\n  \"answ\": 3369,\n  \"answe\": 14391,\n  \"answer</w>\": 4518,\n  \"answered</w>\": 14499,\n  \"answering</w>\": 18280,\n  \"answers</w>\": 8692,\n  \"ant\": 1103,\n  \"ant</w>\": 773,\n  \"anta</w>\": 3023,\n  \"antag\": 41745,\n  \"antal\": 39355,\n  \"antalya</w>\": 47440,\n  \"antan\": 32899,\n  \"antarc\": 21338,\n  \"antarctic</w>\": 27077,\n  \"antarctica</w>\": 22587,\n  \"ante\": 19311,\n  \"ante</w>\": 9769,\n  \"antebellum</w>\": 41683,\n  \"antelope</w>\": 39177,\n  \"anten\": 35517,\n  \"antenna</w>\": 26370,\n  \"anter\": 46508,\n  \"antes</w>\": 14927,\n  \"antgrasso</w>\": 39074,\n  \"anth\": 3737,\n  \"anth</w>\": 29741,\n  \"antha</w>\": 47981,\n  \"anthe\": 34167,\n  \"anthem</w>\": 12504,\n  \"anthi</w>\": 45261,\n  \"anthology</w>\": 21009,\n  \"anthony\": 17477,\n  \"anthony</w>\": 6113,\n  \"anthro\": 10019,\n  \"anthropo\": 18538,\n  \"anthropology</w>\": 32407,\n  \"anthus</w>\": 37639,\n  \"anti\": 3120,\n  \"anti</w>\": 3564,\n  \"antibio\": 18954,\n  \"antibiotic</w>\": 34387,\n  \"antibiotics</w>\": 29499,\n  \"antibody</w>\": 49018,\n  \"antic\": 8260,\n  \"anticip\": 11435,\n  \"anticipate</w>\": 38280,\n  \"anticipated</w>\": 18605,\n  \"anticipating</w>\": 48067,\n  \"anticipation</w>\": 26983,\n  \"antics</w>\": 37126,\n  \"antidote</w>\": 45476,\n  \"antifa</w>\": 35926,\n  \"antigua</w>\": 39910,\n  \"antine</w>\": 17641,\n  \"antino</w>\": 27818,\n  \"antioxid\": 23010,\n  \"antioxidant</w>\": 37452,\n  \"antioxidants</w>\": 34208,\n  \"antiqu\": 21745,\n  \"antique\": 46517,\n  \"antique</w>\": 9060,\n  \"antiques</w>\": 17365,\n  \"antis</w>\": 19748,\n  \"antisemitism</w>\": 36630,\n  \"antit\": 37833,\n  \"antitrust</w>\": 49343,\n  \"antlers</w>\": 47720,\n  \"antly</w>\": 5265,\n  \"anto\": 16826,\n  \"anto</w>\": 24486,\n  \"antoine</w>\": 25188,\n  \"anton\": 5497,\n  \"anton</w>\": 19644,\n  \"antoni\": 39958,\n  \"antonio\": 30497,\n  \"antonio</w>\": 7842,\n  \"antony</w>\": 30707,\n  \"antrim</w>\": 40252,\n  \"ants</w>\": 1589,\n  \"antv</w>\": 47520,\n  \"antw\": 44460,\n  \"antwer\": 26970,\n  \"antwerp</w>\": 33797,\n  \"antz</w>\": 25684,\n  \"anu\": 8537,\n  \"anu</w>\": 17152,\n  \"anup\": 29617,\n  \"anus</w>\": 27084,\n  \"anush\": 22765,\n  \"anushka\": 42080,\n  \"anushka</w>\": 39822,\n  \"anushkasharma</w>\": 44203,\n  \"anwar</w>\": 34261,\n  \"anxi\": 9021,\n  \"anxiety</w>\": 11103,\n  \"anxious</w>\": 27793,\n  \"any\": 1307,\n  \"any</w>\": 1504,\n  \"anya</w>\": 11173,\n  \"anybody</w>\": 10071,\n  \"anyi</w>\": 41632,\n  \"anymore</w>\": 7372,\n  \"anyone</w>\": 2302,\n  \"anything</w>\": 3582,\n  \"anytime</w>\": 13924,\n  \"anyway</w>\": 8931,\n  \"anyways</w>\": 19778,\n  \"anywhere</w>\": 8863,\n  \"anz\": 14445,\n  \"anz</w>\": 19425,\n  \"anza</w>\": 14669,\n  \"anzac</w>\": 31977,\n  \"ao\": 7313,\n  \"ao</w>\": 5703,\n  \"aoa</w>\": 47119,\n  \"aoc</w>\": 31918,\n  \"aofficial</w>\": 30840,\n  \"aoki</w>\": 33602,\n  \"aol</w>\": 40643,\n  \"aon\": 30928,\n  \"aon</w>\": 48476,\n  \"aor\": 32044,\n  \"aos</w>\": 46860,\n  \"ap\": 688,\n  \"ap</w>\": 2728,\n  \"apa\": 36954,\n  \"apa</w>\": 13537,\n  \"apac</w>\": 34320,\n  \"apache</w>\": 23921,\n  \"apal\": 38017,\n  \"apan</w>\": 36562,\n  \"apar\": 9161,\n  \"apark</w>\": 32528,\n  \"apart\": 6474,\n  \"apart</w>\": 7803,\n  \"aparthe\": 25121,\n  \"apartheid</w>\": 26597,\n  \"apartment</w>\": 8285,\n  \"apartments</w>\": 15791,\n  \"aparty</w>\": 26767,\n  \"apat\": 31755,\n  \"apathy</w>\": 18145,\n  \"apc</w>\": 20300,\n  \"apd</w>\": 44563,\n  \"ape\": 6098,\n  \"ape</w>\": 2609,\n  \"apec</w>\": 47530,\n  \"aper\": 13681,\n  \"aper</w>\": 5858,\n  \"apers</w>\": 15846,\n  \"apes</w>\": 9550,\n  \"apeu\": 19040,\n  \"apex\": 41935,\n  \"apex</w>\": 23712,\n  \"aph\": 16341,\n  \"aph</w>\": 29491,\n  \"apha</w>\": 47104,\n  \"apho\": 21758,\n  \"aphra\": 44147,\n  \"api\": 23342,\n  \"api</w>\": 14674,\n  \"apia</w>\": 44259,\n  \"apic\": 40679,\n  \"aping</w>\": 18456,\n  \"apink</w>\": 35725,\n  \"apis</w>\": 37575,\n  \"apk</w>\": 27648,\n  \"apo\": 4089,\n  \"apo</w>\": 19758,\n  \"apocaly\": 13932,\n  \"apocalypse</w>\": 17571,\n  \"apocalyptic</w>\": 35675,\n  \"apol\": 5023,\n  \"apolice</w>\": 45663,\n  \"apolis</w>\": 9598,\n  \"apollo\": 48213,\n  \"apollo</w>\": 11554,\n  \"apolo\": 31094,\n  \"apolog\": 25530,\n  \"apologe\": 42908,\n  \"apologi\": 14977,\n  \"apologies</w>\": 21959,\n  \"apologise</w>\": 39608,\n  \"apologize</w>\": 22879,\n  \"apologizes</w>\": 35298,\n  \"apology</w>\": 20768,\n  \"apor\": 21871,\n  \"apore</w>\": 6679,\n  \"apost\": 20309,\n  \"apostle</w>\": 33051,\n  \"apostles</w>\": 48457,\n  \"app\": 882,\n  \"app</w>\": 2231,\n  \"appa\": 4884,\n  \"appa</w>\": 13110,\n  \"appalach\": 30523,\n  \"appalachian</w>\": 36806,\n  \"appalling</w>\": 44797,\n  \"appar\": 26698,\n  \"apparatus</w>\": 37716,\n  \"apparel</w>\": 13972,\n  \"apparent</w>\": 23963,\n  \"apparently</w>\": 5287,\n  \"appe\": 3748,\n  \"appe</w>\": 45949,\n  \"appeal</w>\": 9625,\n  \"appealing</w>\": 25909,\n  \"appeals</w>\": 22447,\n  \"appear\": 5544,\n  \"appear</w>\": 9308,\n  \"appearance</w>\": 7238,\n  \"appearances</w>\": 17214,\n  \"appeared</w>\": 11561,\n  \"appearing</w>\": 18759,\n  \"appears</w>\": 8743,\n  \"appell\": 43833,\n  \"appen\": 37201,\n  \"appen</w>\": 26589,\n  \"apper</w>\": 18780,\n  \"appet\": 21686,\n  \"appeti\": 24179,\n  \"appetite</w>\": 24481,\n  \"appetizer</w>\": 36065,\n  \"applau\": 24713,\n  \"applaud</w>\": 42152,\n  \"applause</w>\": 22650,\n  \"apple\": 8629,\n  \"apple</w>\": 3055,\n  \"applemusic</w>\": 21390,\n  \"apples</w>\": 14032,\n  \"appleton</w>\": 45250,\n  \"appli\": 15495,\n  \"appliance</w>\": 33677,\n  \"appliances</w>\": 22134,\n  \"applic\": 4235,\n  \"applicable</w>\": 37927,\n  \"applicants</w>\": 28035,\n  \"application</w>\": 7241,\n  \"applications</w>\": 7341,\n  \"applied</w>\": 12636,\n  \"applies</w>\": 24910,\n  \"apply</w>\": 4356,\n  \"applying</w>\": 17965,\n  \"appo\": 5433,\n  \"appoint</w>\": 36190,\n  \"appointed</w>\": 11087,\n  \"appointment</w>\": 10890,\n  \"appointments</w>\": 23439,\n  \"appoints</w>\": 25132,\n  \"apprais\": 36972,\n  \"appraisal</w>\": 46108,\n  \"appreci\": 3474,\n  \"appreciate</w>\": 6263,\n  \"appreciated</w>\": 9264,\n  \"appreciates</w>\": 36573,\n  \"appreciating</w>\": 39352,\n  \"appreciation</w>\": 9212,\n  \"appreciationday</w>\": 37438,\n  \"appreciative</w>\": 45074,\n  \"appren\": 10582,\n  \"apprentic\": 15662,\n  \"apprentice\": 19122,\n  \"apprentice</w>\": 17985,\n  \"apprentices</w>\": 38252,\n  \"apprenticeship</w>\": 26939,\n  \"apprenticeships</w>\": 35425,\n  \"appro\": 2398,\n  \"approach\": 7781,\n  \"approach</w>\": 6241,\n  \"approached</w>\": 36499,\n  \"approaches</w>\": 14962,\n  \"approaching</w>\": 12164,\n  \"appropri\": 8446,\n  \"appropriate</w>\": 10768,\n  \"appropriately</w>\": 30383,\n  \"appropriation</w>\": 49110,\n  \"approval</w>\": 13549,\n  \"approve</w>\": 19064,\n  \"approved</w>\": 9412,\n  \"approves</w>\": 18107,\n  \"approx</w>\": 18266,\n  \"approxim\": 14201,\n  \"approximately</w>\": 16128,\n  \"apps</w>\": 7020,\n  \"appstore</w>\": 31377,\n  \"appt</w>\": 48112,\n  \"appy</w>\": 34420,\n  \"apr\": 39396,\n  \"apr</w>\": 11177,\n  \"apra\": 37027,\n  \"apric\": 25923,\n  \"apricot</w>\": 30815,\n  \"april\": 23548,\n  \"april</w>\": 2484,\n  \"apro\": 42712,\n  \"apro</w>\": 49051,\n  \"apron</w>\": 29502,\n  \"aps</w>\": 8868,\n  \"apse</w>\": 31843,\n  \"apt</w>\": 17921,\n  \"aptly</w>\": 47313,\n  \"apu\": 22166,\n  \"apur\": 36900,\n  \"apur</w>\": 45193,\n  \"aq\": 14018,\n  \"aq</w>\": 26862,\n  \"aqu\": 4458,\n  \"aqua</w>\": 18613,\n  \"aquaculture</w>\": 41885,\n  \"aquaman</w>\": 35098,\n  \"aquari\": 37605,\n  \"aquarium</w>\": 16814,\n  \"aquarius</w>\": 38879,\n  \"aquatic</w>\": 22658,\n  \"aque\": 35927,\n  \"aque</w>\": 37268,\n  \"aqui\": 36826,\n  \"aquino</w>\": 33796,\n  \"ar\": 516,\n  \"ar</w>\": 625,\n  \"ara\": 24161,\n  \"ara</w>\": 3340,\n  \"arab\": 5405,\n  \"arab</w>\": 12028,\n  \"arabia</w>\": 11746,\n  \"arabian</w>\": 24663,\n  \"arabic</w>\": 16709,\n  \"arabs</w>\": 39155,\n  \"arac\": 47620,\n  \"arach\": 37689,\n  \"arag\": 41502,\n  \"araj</w>\": 45142,\n  \"arak\": 23416,\n  \"aram\": 19223,\n  \"aram</w>\": 21473,\n  \"arama</w>\": 49066,\n  \"aran\": 20839,\n  \"aran</w>\": 19641,\n  \"aras</w>\": 36399,\n  \"arat</w>\": 30856,\n  \"arav\": 35836,\n  \"arbit\": 20267,\n  \"arbitr\": 22702,\n  \"arbitration</w>\": 34845,\n  \"arbor\": 33516,\n  \"arbor</w>\": 24878,\n  \"arboretum</w>\": 41719,\n  \"arc\": 4997,\n  \"arc</w>\": 11592,\n  \"arca\": 25189,\n  \"arca</w>\": 37612,\n  \"arcade</w>\": 13331,\n  \"arcadia</w>\": 38372,\n  \"arch\": 2458,\n  \"arch</w>\": 8557,\n  \"archa\": 45619,\n  \"archae\": 10121,\n  \"archaeological</w>\": 26163,\n  \"archaeologists</w>\": 45035,\n  \"archaeology</w>\": 14868,\n  \"archan\": 33359,\n  \"archbishop</w>\": 23994,\n  \"arche\": 22474,\n  \"archer</w>\": 21824,\n  \"archers</w>\": 38407,\n  \"archery</w>\": 23935,\n  \"arches</w>\": 30771,\n  \"archi\": 4479,\n  \"archie</w>\": 20557,\n  \"archipel\": 39750,\n  \"archipelago</w>\": 43025,\n  \"architec\": 3359,\n  \"architect</w>\": 12192,\n  \"architects</w>\": 13290,\n  \"architectural</w>\": 15360,\n  \"architecture\": 39038,\n  \"architecture</w>\": 4920,\n  \"archival</w>\": 39249,\n  \"archive\": 42257,\n  \"archive</w>\": 10548,\n  \"archived</w>\": 42379,\n  \"archives</w>\": 9411,\n  \"archy</w>\": 15643,\n  \"arctic\": 29716,\n  \"arctic</w>\": 9138,\n  \"ard\": 3793,\n  \"ard</w>\": 746,\n  \"arden\": 44600,\n  \"arden</w>\": 27057,\n  \"ardi\": 23932,\n  \"ardi</w>\": 19837,\n  \"ardo\": 35735,\n  \"ardo</w>\": 9394,\n  \"ards</w>\": 1654,\n  \"ardu\": 20906,\n  \"arduino</w>\": 25398,\n  \"are\": 1076,\n  \"are</w>\": 631,\n  \"area</w>\": 2445,\n  \"areas</w>\": 5429,\n  \"arec\": 18136,\n  \"areclipse</w>\": 36030,\n  \"ared</w>\": 5369,\n  \"arel</w>\": 12798,\n  \"arella</w>\": 24784,\n  \"arelli</w>\": 48619,\n  \"aren\": 4033,\n  \"aren</w>\": 4318,\n  \"arena</w>\": 5463,\n  \"arenas</w>\": 47860,\n  \"arent</w>\": 37487,\n  \"arer</w>\": 14857,\n  \"arers</w>\": 33159,\n  \"ares</w>\": 12224,\n  \"arest</w>\": 11708,\n  \"aret</w>\": 22247,\n  \"areth</w>\": 47725,\n  \"aretha</w>\": 42090,\n  \"areyou\": 37607,\n  \"arez</w>\": 13108,\n  \"arg</w>\": 27285,\n  \"argent\": 7812,\n  \"argentina</w>\": 9789,\n  \"argentine</w>\": 32582,\n  \"argon\": 40737,\n  \"argos</w>\": 37443,\n  \"argu\": 7440,\n  \"arguably</w>\": 30899,\n  \"argue</w>\": 19788,\n  \"argued</w>\": 48153,\n  \"argues</w>\": 30045,\n  \"arguing</w>\": 26549,\n  \"argument</w>\": 16224,\n  \"arguments</w>\": 24693,\n  \"argus</w>\": 44300,\n  \"argy\": 21066,\n  \"argyle</w>\": 36179,\n  \"argyll</w>\": 40667,\n  \"ari\": 1221,\n  \"ari</w>\": 3681,\n  \"aria</w>\": 8883,\n  \"arial</w>\": 42431,\n  \"arian\": 29980,\n  \"arian</w>\": 6953,\n  \"ariana</w>\": 14892,\n  \"arianag\": 23025,\n  \"arianagrande</w>\": 23321,\n  \"arianism</w>\": 44351,\n  \"arians</w>\": 19104,\n  \"arias</w>\": 22567,\n  \"arie</w>\": 18774,\n  \"ariel\": 47959,\n  \"ariel</w>\": 21025,\n  \"aries</w>\": 5213,\n  \"arif</w>\": 46621,\n  \"arily</w>\": 12993,\n  \"arin\": 29564,\n  \"arin</w>\": 18612,\n  \"arina</w>\": 29271,\n  \"arine</w>\": 29586,\n  \"aring</w>\": 2142,\n  \"ario</w>\": 8862,\n  \"arios</w>\": 25392,\n  \"aris</w>\": 15227,\n  \"arise</w>\": 26490,\n  \"arist</w>\": 12110,\n  \"aristo\": 25666,\n  \"aristotle</w>\": 49156,\n  \"arities</w>\": 31069,\n  \"arity</w>\": 16608,\n  \"arium</w>\": 11809,\n  \"arius</w>\": 21482,\n  \"ariz\": 6516,\n  \"arized</w>\": 40167,\n  \"arizon\": 28936,\n  \"arizona</w>\": 7106,\n  \"arjun\": 24565,\n  \"arjun</w>\": 20477,\n  \"arjuna</w>\": 43835,\n  \"ark\": 11921,\n  \"ark</w>\": 12010,\n  \"arkansas</w>\": 12227,\n  \"arkham</w>\": 36381,\n  \"arl</w>\": 48542,\n  \"arlington\": 44940,\n  \"arlington</w>\": 17865,\n  \"arly</w>\": 3637,\n  \"arm\": 5671,\n  \"arm</w>\": 4793,\n  \"arma\": 15887,\n  \"arma</w>\": 38716,\n  \"armad\": 37897,\n  \"armada</w>\": 34938,\n  \"armagh</w>\": 44313,\n  \"armani</w>\": 31314,\n  \"armb\": 37096,\n  \"armchair</w>\": 45757,\n  \"armed\": 40471,\n  \"armed</w>\": 8202,\n  \"armen\": 13145,\n  \"armenia</w>\": 22008,\n  \"armenian</w>\": 24891,\n  \"armies</w>\": 46686,\n  \"armin\": 45481,\n  \"arming</w>\": 19766,\n  \"armist\": 38150,\n  \"armistice</w>\": 46765,\n  \"armor</w>\": 16167,\n  \"armored</w>\": 28214,\n  \"armory</w>\": 38610,\n  \"armour</w>\": 18503,\n  \"armoured</w>\": 42514,\n  \"arms</w>\": 5706,\n  \"armstrong</w>\": 15005,\n  \"army\": 13541,\n  \"army</w>\": 3133,\n  \"armys</w>\": 27311,\n  \"arn\": 9348,\n  \"arn</w>\": 37597,\n  \"arnau\": 45556,\n  \"arne</w>\": 43509,\n  \"arney</w>\": 35962,\n  \"arnold\": 49096,\n  \"arnold</w>\": 13609,\n  \"arns</w>\": 46692,\n  \"aro\": 7514,\n  \"aro</w>\": 11551,\n  \"aroa</w>\": 48209,\n  \"arom\": 16831,\n  \"aroma\": 40143,\n  \"aroma</w>\": 26390,\n  \"aromas</w>\": 47439,\n  \"aromatherapy</w>\": 42584,\n  \"aromatic</w>\": 39669,\n  \"aron\": 30855,\n  \"aron</w>\": 28926,\n  \"aroo</w>\": 47581,\n  \"arora</w>\": 31897,\n  \"arosa</w>\": 44264,\n  \"arose</w>\": 44262,\n  \"around\": 35615,\n  \"around</w>\": 1630,\n  \"arqu\": 35654,\n  \"arquitec\": 41703,\n  \"arr\": 39106,\n  \"arr</w>\": 42489,\n  \"arra\": 32918,\n  \"arra</w>\": 43827,\n  \"arrahman</w>\": 44554,\n  \"arran</w>\": 45722,\n  \"arrang\": 16711,\n  \"arrange\": 15410,\n  \"arrange</w>\": 26311,\n  \"arranged</w>\": 22451,\n  \"arrangement</w>\": 23822,\n  \"arrangements</w>\": 23792,\n  \"arranging</w>\": 35321,\n  \"array</w>\": 17293,\n  \"arre\": 4374,\n  \"arrell</w>\": 28846,\n  \"arrest</w>\": 9320,\n  \"arrested</w>\": 5845,\n  \"arresting</w>\": 43930,\n  \"arrests</w>\": 20683,\n  \"arri\": 2115,\n  \"arrival</w>\": 9073,\n  \"arrivals</w>\": 19583,\n  \"arrive</w>\": 8851,\n  \"arrived</w>\": 3514,\n  \"arrives</w>\": 9905,\n  \"arriving</w>\": 10884,\n  \"arro\": 15729,\n  \"arrog\": 26997,\n  \"arrogance</w>\": 47025,\n  \"arrogant</w>\": 40582,\n  \"arrow\": 30920,\n  \"arrow</w>\": 11149,\n  \"arrowhead</w>\": 46393,\n  \"arrows</w>\": 24768,\n  \"arroyo</w>\": 45237,\n  \"ars\": 42815,\n  \"ars</w>\": 864,\n  \"arse</w>\": 22665,\n  \"arsen\": 5330,\n  \"arsenal\": 45234,\n  \"arsenal</w>\": 6084,\n  \"arsene</w>\": 32117,\n  \"arson</w>\": 29937,\n  \"art\": 1486,\n  \"art</w>\": 794,\n  \"arta</w>\": 12031,\n  \"arte\": 13482,\n  \"arte</w>\": 12947,\n  \"artem\": 40387,\n  \"artemis</w>\": 45256,\n  \"arten</w>\": 37043,\n  \"arter\": 29449,\n  \"artery</w>\": 40062,\n  \"artes</w>\": 48629,\n  \"artforsale</w>\": 48239,\n  \"artgallery</w>\": 31982,\n  \"arth\": 7146,\n  \"arth</w>\": 20265,\n  \"arthistory</w>\": 39313,\n  \"arthr\": 20807,\n  \"arthritis</w>\": 22916,\n  \"arthro\": 43255,\n  \"arthur\": 35660,\n  \"arthur</w>\": 8550,\n  \"arti\": 1635,\n  \"arti</w>\": 34601,\n  \"artic\": 3003,\n  \"articho\": 30937,\n  \"artichoke</w>\": 39647,\n  \"article</w>\": 3550,\n  \"articles</w>\": 11939,\n  \"articul\": 40343,\n  \"articulate</w>\": 45444,\n  \"artif\": 8950,\n  \"artifact</w>\": 37718,\n  \"artifacts</w>\": 30249,\n  \"artificial\": 19357,\n  \"artificial</w>\": 12040,\n  \"artificialintelligence</w>\": 20799,\n  \"artillery</w>\": 24465,\n  \"artin\": 33168,\n  \"artin</w>\": 48540,\n  \"artis</w>\": 41794,\n  \"artisan\": 36389,\n  \"artisan</w>\": 21535,\n  \"artisans</w>\": 40140,\n  \"artist\": 14326,\n  \"artist</w>\": 2456,\n  \"artiste</w>\": 41402,\n  \"artistic</w>\": 12421,\n  \"artiston\": 48443,\n  \"artistry</w>\": 38570,\n  \"artists</w>\": 4899,\n  \"artistson\": 32127,\n  \"artistsontwitter</w>\": 39469,\n  \"artlovers</w>\": 35617,\n  \"arto\": 28464,\n  \"artof\": 31751,\n  \"artoftheday</w>\": 43990,\n  \"arton</w>\": 46744,\n  \"arts\": 22040,\n  \"arts</w>\": 3812,\n  \"artsy</w>\": 31588,\n  \"arturo</w>\": 38591,\n  \"artwit</w>\": 36713,\n  \"artwork</w>\": 4188,\n  \"artworks</w>\": 26215,\n  \"arty\": 45417,\n  \"arty</w>\": 25916,\n  \"aru\": 13757,\n  \"aru</w>\": 23907,\n  \"aruba</w>\": 40131,\n  \"arugula</w>\": 40770,\n  \"arum</w>\": 48732,\n  \"arun\": 16105,\n  \"arun</w>\": 31877,\n  \"arunach\": 47260,\n  \"arunjaitley</w>\": 44874,\n  \"arus</w>\": 22644,\n  \"arvin\": 16971,\n  \"arvind\": 21209,\n  \"arvind</w>\": 41079,\n  \"arvindkejriwal</w>\": 22971,\n  \"arvo</w>\": 45726,\n  \"arwx</w>\": 29824,\n  \"ary\": 4617,\n  \"ary</w>\": 856,\n  \"arya</w>\": 23594,\n  \"aryan</w>\": 34966,\n  \"as\": 587,\n  \"as</w>\": 601,\n  \"asa\": 39676,\n  \"asa</w>\": 11914,\n  \"asad</w>\": 42376,\n  \"asaki</w>\": 22455,\n  \"asam\": 40603,\n  \"asan\": 22379,\n  \"asan</w>\": 17841,\n  \"asana</w>\": 42363,\n  \"asant</w>\": 25536,\n  \"asants</w>\": 37766,\n  \"asap\": 24199,\n  \"asap</w>\": 10822,\n  \"asar\": 24733,\n  \"asar</w>\": 49299,\n  \"asb</w>\": 31186,\n  \"asbe\": 32113,\n  \"asbestos</w>\": 33765,\n  \"asc\": 22720,\n  \"asc</w>\": 23305,\n  \"ascen\": 20767,\n  \"ascension</w>\": 35499,\n  \"ascent</w>\": 36625,\n  \"asci\": 12753,\n  \"asco\": 25578,\n  \"asco</w>\": 17488,\n  \"ascot</w>\": 23723,\n  \"ascri\": 15506,\n  \"asd</w>\": 36988,\n  \"asda</w>\": 29391,\n  \"asdf\": 36857,\n  \"asdfghj\": 42758,\n  \"asdfghjkl</w>\": 47660,\n  \"ase\": 8083,\n  \"ase</w>\": 894,\n  \"asean</w>\": 24472,\n  \"aseball</w>\": 46903,\n  \"ased</w>\": 2134,\n  \"asen\": 41085,\n  \"aser\": 39615,\n  \"aser</w>\": 7209,\n  \"ases</w>\": 3762,\n  \"asf</w>\": 25863,\n  \"asg</w>\": 34813,\n  \"ash\": 2067,\n  \"ash</w>\": 2612,\n  \"asha\": 40572,\n  \"asha</w>\": 13472,\n  \"ashamed</w>\": 20633,\n  \"ashby</w>\": 46531,\n  \"ashe\": 48523,\n  \"ashe</w>\": 31752,\n  \"asher</w>\": 37585,\n  \"ashes</w>\": 12587,\n  \"asheville</w>\": 28897,\n  \"ashford</w>\": 37796,\n  \"ashi\": 15563,\n  \"ashi</w>\": 15934,\n  \"ashish</w>\": 33145,\n  \"ashland</w>\": 39938,\n  \"ashleigh</w>\": 49356,\n  \"ashley\": 17825,\n  \"ashley</w>\": 8957,\n  \"asho\": 20273,\n  \"ashok</w>\": 38141,\n  \"ashore</w>\": 31194,\n  \"ashram</w>\": 43445,\n  \"ashton\": 43264,\n  \"ashton</w>\": 12228,\n  \"ashtra</w>\": 18118,\n  \"asi\": 3596,\n  \"asi</w>\": 12562,\n  \"asia</w>\": 5741,\n  \"asian\": 21737,\n  \"asian</w>\": 7128,\n  \"asiangames</w>\": 49108,\n  \"asians</w>\": 36771,\n  \"asics</w>\": 31097,\n  \"aside</w>\": 13676,\n  \"asif</w>\": 37302,\n  \"asim</w>\": 46050,\n  \"asin\": 48432,\n  \"asin</w>\": 44347,\n  \"asing</w>\": 4194,\n  \"asingly</w>\": 15803,\n  \"asion</w>\": 31753,\n  \"asis</w>\": 12398,\n  \"ask\": 11027,\n  \"ask</w>\": 2765,\n  \"asked</w>\": 3993,\n  \"asking</w>\": 5914,\n  \"asks</w>\": 7953,\n  \"asl</w>\": 41650,\n  \"asleep</w>\": 10749,\n  \"asley</w>\": 28206,\n  \"asli</w>\": 44290,\n  \"asm</w>\": 13851,\n  \"asma</w>\": 38497,\n  \"asmsg</w>\": 19839,\n  \"aso\": 30343,\n  \"aso</w>\": 27932,\n  \"asober\": 43749,\n  \"asocial</w>\": 48557,\n  \"ason</w>\": 1163,\n  \"asone</w>\": 31249,\n  \"asons</w>\": 4249,\n  \"asos</w>\": 37924,\n  \"asot</w>\": 47968,\n  \"asp\": 17814,\n  \"asp</w>\": 36666,\n  \"asparag\": 20301,\n  \"asparagus</w>\": 20604,\n  \"aspe\": 10894,\n  \"aspect</w>\": 19681,\n  \"aspects</w>\": 18203,\n  \"aspen\": 35695,\n  \"aspen</w>\": 25712,\n  \"asper\": 32991,\n  \"asph\": 28019,\n  \"asphalt</w>\": 30574,\n  \"aspir\": 12669,\n  \"aspirations</w>\": 36127,\n  \"aspire</w>\": 24836,\n  \"aspiring</w>\": 21862,\n  \"asports</w>\": 43695,\n  \"asr</w>\": 48052,\n  \"asroma</w>\": 41000,\n  \"ass\": 12664,\n  \"ass</w>\": 5301,\n  \"assa</w>\": 47715,\n  \"assad</w>\": 18699,\n  \"assam</w>\": 19930,\n  \"assan\": 26352,\n  \"assange</w>\": 27565,\n  \"assas\": 9603,\n  \"assassin\": 14366,\n  \"assassin</w>\": 20029,\n  \"assassinated</w>\": 40488,\n  \"assassination</w>\": 24907,\n  \"assassins</w>\": 34918,\n  \"assassinscre\": 36428,\n  \"assassinscreed</w>\": 46082,\n  \"assau\": 7908,\n  \"assaul\": 19596,\n  \"assault</w>\": 9679,\n  \"assaulted</w>\": 30785,\n  \"assaulting</w>\": 44143,\n  \"asse\": 3166,\n  \"asse</w>\": 38600,\n  \"assel</w>\": 37582,\n  \"assemb\": 5531,\n  \"assemble</w>\": 26169,\n  \"assembled</w>\": 22627,\n  \"assemblies</w>\": 47406,\n  \"assembling</w>\": 38670,\n  \"assembly\": 34542,\n  \"assembly</w>\": 7059,\n  \"assen</w>\": 38651,\n  \"asser\": 25665,\n  \"asses</w>\": 21596,\n  \"assess\": 9209,\n  \"assess</w>\": 23211,\n  \"assessed</w>\": 44160,\n  \"assessing</w>\": 31364,\n  \"assessment</w>\": 10590,\n  \"assessments</w>\": 32753,\n  \"asset\": 48463,\n  \"asset</w>\": 13039,\n  \"assets</w>\": 13170,\n  \"assi\": 2907,\n  \"assi</w>\": 39540,\n  \"assie</w>\": 31624,\n  \"assign\": 14190,\n  \"assigned</w>\": 25767,\n  \"assignment</w>\": 17342,\n  \"assignments</w>\": 34257,\n  \"assim</w>\": 36394,\n  \"assimil\": 43467,\n  \"assist\": 26558,\n  \"assist</w>\": 10286,\n  \"assistance</w>\": 11685,\n  \"assistant</w>\": 6799,\n  \"assistants</w>\": 31054,\n  \"assisted</w>\": 18095,\n  \"assisting</w>\": 24243,\n  \"assists</w>\": 12675,\n  \"assn</w>\": 44208,\n  \"asso</w>\": 17617,\n  \"assoc</w>\": 18891,\n  \"associ\": 3566,\n  \"associate</w>\": 11777,\n  \"associated</w>\": 11164,\n  \"associates</w>\": 17358,\n  \"association</w>\": 5578,\n  \"associations</w>\": 33209,\n  \"assor\": 38604,\n  \"assorted</w>\": 36701,\n  \"assortment</w>\": 43112,\n  \"asst</w>\": 24767,\n  \"assu\": 8328,\n  \"assume</w>\": 19294,\n  \"assumed</w>\": 37661,\n  \"assuming</w>\": 29422,\n  \"assump\": 41182,\n  \"assumption</w>\": 40773,\n  \"assumptions</w>\": 45948,\n  \"assurance</w>\": 28408,\n  \"assure</w>\": 39161,\n  \"assured</w>\": 25591,\n  \"assures</w>\": 41988,\n  \"assy\": 29940,\n  \"assy</w>\": 12963,\n  \"ast\": 1761,\n  \"ast</w>\": 1242,\n  \"asta</w>\": 43269,\n  \"aste\": 25033,\n  \"aste</w>\": 25579,\n  \"aster\": 11013,\n  \"aster</w>\": 9526,\n  \"asteroid</w>\": 32253,\n  \"asters</w>\": 33139,\n  \"asth\": 16684,\n  \"asthma</w>\": 24610,\n  \"asthour</w>\": 41238,\n  \"astic</w>\": 15876,\n  \"asting</w>\": 29984,\n  \"astle</w>\": 46141,\n  \"asto\": 47275,\n  \"aston\": 24760,\n  \"aston</w>\": 13879,\n  \"astoni\": 21962,\n  \"astonishing</w>\": 27110,\n  \"astonmartin</w>\": 40760,\n  \"astor\": 26391,\n  \"astor</w>\": 47086,\n  \"astoria</w>\": 34798,\n  \"astounding</w>\": 37748,\n  \"astr\": 37609,\n  \"astra\": 47205,\n  \"astra</w>\": 36079,\n  \"astral</w>\": 45889,\n  \"astri\": 31243,\n  \"astrid</w>\": 46499,\n  \"astro\": 8563,\n  \"astro</w>\": 15318,\n  \"astrology</w>\": 28526,\n  \"astron\": 7982,\n  \"astronaut</w>\": 18376,\n  \"astronauts</w>\": 29733,\n  \"astronom\": 23264,\n  \"astronomer</w>\": 40036,\n  \"astronomers</w>\": 44268,\n  \"astronomical</w>\": 39775,\n  \"astronomy</w>\": 17472,\n  \"astrophotography</w>\": 38559,\n  \"astros</w>\": 17598,\n  \"asts</w>\": 10452,\n  \"astu\": 43137,\n  \"astur\": 45795,\n  \"asu\": 13157,\n  \"asu</w>\": 16001,\n  \"asun\": 36044,\n  \"asure</w>\": 3813,\n  \"asus</w>\": 27269,\n  \"aswell</w>\": 42978,\n  \"asx</w>\": 38906,\n  \"asy\": 8524,\n  \"asy</w>\": 2333,\n  \"asylum</w>\": 15638,\n  \"asym\": 32539,\n  \"at\": 527,\n  \"at</w>\": 536,\n  \"ata</w>\": 4236,\n  \"atable</w>\": 23909,\n  \"atal\": 24877,\n  \"atal</w>\": 24797,\n  \"atan</w>\": 33446,\n  \"atar\": 20128,\n  \"atar</w>\": 7995,\n  \"atari</w>\": 21549,\n  \"atas</w>\": 30057,\n  \"atay\": 39518,\n  \"atc</w>\": 28383,\n  \"atch</w>\": 15938,\n  \"atd</w>\": 33890,\n  \"ate\": 992,\n  \"ate</w>\": 671,\n  \"ateam</w>\": 42784,\n  \"ateau</w>\": 16359,\n  \"atec\": 37352,\n  \"atech</w>\": 31306,\n  \"ated\": 14589,\n  \"ated</w>\": 943,\n  \"atedly</w>\": 24698,\n  \"atee</w>\": 32839,\n  \"ateful</w>\": 5419,\n  \"atelier</w>\": 29932,\n  \"ately</w>\": 3862,\n  \"atem\": 17116,\n  \"aten</w>\": 47984,\n  \"atene\": 30405,\n  \"ateneo</w>\": 33904,\n  \"ater\": 18597,\n  \"ater</w>\": 5877,\n  \"ateral</w>\": 18819,\n  \"aters</w>\": 22364,\n  \"ates\": 20370,\n  \"ates</w>\": 1150,\n  \"atest</w>\": 1705,\n  \"ateur</w>\": 43677,\n  \"atf</w>\": 28013,\n  \"ath\": 1374,\n  \"ath</w>\": 1649,\n  \"atha</w>\": 22530,\n  \"atham</w>\": 23383,\n  \"athan\": 41260,\n  \"athan</w>\": 26701,\n  \"athe\": 8963,\n  \"athed</w>\": 47402,\n  \"atheism</w>\": 25823,\n  \"atheist</w>\": 22571,\n  \"atheists</w>\": 47155,\n  \"athen\": 29112,\n  \"athena</w>\": 30705,\n  \"athens</w>\": 13524,\n  \"ather\": 6171,\n  \"ather</w>\": 1817,\n  \"athered</w>\": 34091,\n  \"athers</w>\": 17266,\n  \"athi</w>\": 28918,\n  \"athing</w>\": 36069,\n  \"athle\": 3310,\n  \"athlete</w>\": 7388,\n  \"athletes</w>\": 7125,\n  \"athletic\": 33182,\n  \"athletic</w>\": 9028,\n  \"athletics</w>\": 7019,\n  \"athlon</w>\": 14670,\n  \"athome</w>\": 38217,\n  \"athon</w>\": 4951,\n  \"aths</w>\": 28835,\n  \"athy\": 34488,\n  \"athy</w>\": 13183,\n  \"ati\": 591,\n  \"ati</w>\": 6751,\n  \"atia</w>\": 10908,\n  \"atic\": 20248,\n  \"atic</w>\": 2647,\n  \"atically</w>\": 13558,\n  \"atics</w>\": 15666,\n  \"atie</w>\": 30137,\n  \"aties</w>\": 40060,\n  \"atif</w>\": 41592,\n  \"atiku</w>\": 37912,\n  \"atile</w>\": 15474,\n  \"atility</w>\": 23373,\n  \"atime</w>\": 20158,\n  \"atin\": 36903,\n  \"atin</w>\": 23047,\n  \"atine</w>\": 39741,\n  \"ating\": 25653,\n  \"ating</w>\": 1074,\n  \"atio</w>\": 35401,\n  \"ation\": 2265,\n  \"ation</w>\": 656,\n  \"ational\": 14205,\n  \"ational</w>\": 3108,\n  \"ationals</w>\": 44593,\n  \"ationday</w>\": 20082,\n  \"ations</w>\": 986,\n  \"atis\": 45456,\n  \"atis</w>\": 41142,\n  \"atism</w>\": 45638,\n  \"ative\": 18422,\n  \"ative</w>\": 1648,\n  \"atively</w>\": 11929,\n  \"atives</w>\": 5629,\n  \"ativity</w>\": 25166,\n  \"atkins</w>\": 27734,\n  \"atkinson</w>\": 28908,\n  \"atl\": 5411,\n  \"atl</w>\": 10629,\n  \"atla\": 36043,\n  \"atlan\": 6818,\n  \"atlanta\": 39964,\n  \"atlanta</w>\": 6839,\n  \"atlantic\": 28804,\n  \"atlantic</w>\": 8189,\n  \"atlantis</w>\": 27790,\n  \"atlas</w>\": 15775,\n  \"atle\": 21170,\n  \"atleast</w>\": 33231,\n  \"atleti</w>\": 46067,\n  \"atletico</w>\": 27501,\n  \"atm</w>\": 14127,\n  \"atmo\": 8271,\n  \"atmosphere</w>\": 10506,\n  \"atmospheric</w>\": 24223,\n  \"ato\": 7987,\n  \"ato</w>\": 4364,\n  \"atoday</w>\": 26799,\n  \"atom\": 22418,\n  \"atom</w>\": 24031,\n  \"atomic</w>\": 18996,\n  \"atoms</w>\": 41434,\n  \"aton\": 31525,\n  \"aton</w>\": 10012,\n  \"atop</w>\": 17455,\n  \"ator\": 10748,\n  \"ator</w>\": 1962,\n  \"atore</w>\": 28314,\n  \"atorial</w>\": 32040,\n  \"atories</w>\": 35678,\n  \"atorium</w>\": 41306,\n  \"ators</w>\": 3389,\n  \"atory</w>\": 5920,\n  \"atos</w>\": 41643,\n  \"atour</w>\": 42967,\n  \"atown</w>\": 24000,\n  \"atp\": 38105,\n  \"atp</w>\": 19817,\n  \"atr</w>\": 43247,\n  \"atra\": 20227,\n  \"atra</w>\": 14401,\n  \"atravel</w>\": 36981,\n  \"atre\": 46057,\n  \"atri\": 13882,\n  \"atri</w>\": 38889,\n  \"atric\": 32238,\n  \"atric</w>\": 13652,\n  \"atrics</w>\": 36253,\n  \"atrist</w>\": 41879,\n  \"atrium</w>\": 29725,\n  \"atrix</w>\": 43003,\n  \"atro\": 18724,\n  \"atroc\": 36197,\n  \"atrocities</w>\": 37551,\n  \"atry</w>\": 28334,\n  \"ats\": 46890,\n  \"ats</w>\": 1032,\n  \"atsu</w>\": 26531,\n  \"att\": 1017,\n  \"att</w>\": 7103,\n  \"atta\": 7282,\n  \"atta</w>\": 9146,\n  \"attach\": 43676,\n  \"attach</w>\": 35653,\n  \"attached</w>\": 11038,\n  \"attachment</w>\": 28638,\n  \"attack\": 24971,\n  \"attack</w>\": 3815,\n  \"attacked</w>\": 12366,\n  \"attacker</w>\": 39288,\n  \"attackers</w>\": 47701,\n  \"attacking</w>\": 16813,\n  \"attacks</w>\": 7321,\n  \"attain</w>\": 46459,\n  \"attar</w>\": 37110,\n  \"attemp\": 4933,\n  \"attempt</w>\": 7409,\n  \"attempted</w>\": 17408,\n  \"attempting</w>\": 18195,\n  \"attempts</w>\": 15610,\n  \"atten\": 4084,\n  \"atten</w>\": 32408,\n  \"attenborough</w>\": 45860,\n  \"attend\": 9841,\n  \"attend</w>\": 5802,\n  \"attendance</w>\": 11928,\n  \"attendant</w>\": 35424,\n  \"attended</w>\": 8140,\n  \"attendees</w>\": 14648,\n  \"attending</w>\": 6696,\n  \"attends</w>\": 22248,\n  \"attention</w>\": 4936,\n  \"atters</w>\": 30675,\n  \"atthe\": 21489,\n  \"atti\": 49265,\n  \"atti</w>\": 16235,\n  \"attic</w>\": 26766,\n  \"attire</w>\": 21222,\n  \"attitude</w>\": 10648,\n  \"attitudes</w>\": 27611,\n  \"attle\": 14685,\n  \"attle</w>\": 5030,\n  \"attn</w>\": 25677,\n  \"attor\": 8856,\n  \"attorney</w>\": 10372,\n  \"attorneys</w>\": 29113,\n  \"attrac\": 7154,\n  \"attract</w>\": 17010,\n  \"attracted</w>\": 28493,\n  \"attracting</w>\": 31909,\n  \"attraction</w>\": 16807,\n  \"attractions</w>\": 22307,\n  \"attractive</w>\": 12231,\n  \"attracts</w>\": 31024,\n  \"attribu\": 24624,\n  \"attributed</w>\": 37520,\n  \"attributes</w>\": 40763,\n  \"attu</w>\": 43173,\n  \"atty</w>\": 36705,\n  \"atu\": 15191,\n  \"atu</w>\": 24295,\n  \"atuesday</w>\": 34841,\n  \"atul\": 1744,\n  \"atul</w>\": 43948,\n  \"atum</w>\": 48295,\n  \"atur\": 14986,\n  \"aturday</w>\": 29027,\n  \"ature\": 25305,\n  \"ature</w>\": 4490,\n  \"atures</w>\": 7358,\n  \"atus</w>\": 14795,\n  \"atv</w>\": 19598,\n  \"atwood</w>\": 45680,\n  \"atwork</w>\": 39680,\n  \"atx\": 34849,\n  \"atx</w>\": 20136,\n  \"aty\": 40974,\n  \"aty</w>\": 33107,\n  \"atz</w>\": 30432,\n  \"au\": 627,\n  \"au</w>\": 2566,\n  \"aua</w>\": 45906,\n  \"aub</w>\": 45938,\n  \"auberg\": 49382,\n  \"aubre\": 25899,\n  \"aubrey</w>\": 34110,\n  \"auburn\": 42269,\n  \"auburn</w>\": 14534,\n  \"auc\": 24489,\n  \"auch</w>\": 43024,\n  \"auck\": 14588,\n  \"auckland</w>\": 16072,\n  \"auction\": 48160,\n  \"auction</w>\": 6462,\n  \"auctioned</w>\": 41073,\n  \"auctions</w>\": 24876,\n  \"aucus</w>\": 47374,\n  \"aud\": 16107,\n  \"aud</w>\": 19711,\n  \"audi\": 5091,\n  \"audi</w>\": 10277,\n  \"audible</w>\": 33227,\n  \"audience</w>\": 6863,\n  \"audiences</w>\": 22328,\n  \"audio\": 13792,\n  \"audio</w>\": 5766,\n  \"audiobook</w>\": 26282,\n  \"audit\": 12505,\n  \"audit</w>\": 17625,\n  \"auditi\": 37377,\n  \"audition</w>\": 18673,\n  \"auditions</w>\": 21134,\n  \"auditor</w>\": 38050,\n  \"auditorium</w>\": 15063,\n  \"audre\": 16075,\n  \"audrey</w>\": 18812,\n  \"audu\": 27934,\n  \"audubon</w>\": 40275,\n  \"auer</w>\": 33460,\n  \"auf</w>\": 28924,\n  \"aug\": 15397,\n  \"aug</w>\": 5720,\n  \"auga</w>\": 22797,\n  \"augh\": 28310,\n  \"augh</w>\": 14005,\n  \"augmente\": 48356,\n  \"augmented</w>\": 32708,\n  \"augu\": 2610,\n  \"august\": 24353,\n  \"august</w>\": 3171,\n  \"augusta</w>\": 26144,\n  \"augustine</w>\": 27397,\n  \"augustus</w>\": 36835,\n  \"auk</w>\": 19058,\n  \"aul\": 20695,\n  \"aul</w>\": 34391,\n  \"ault\": 47253,\n  \"ault</w>\": 10219,\n  \"aun\": 10608,\n  \"aun</w>\": 38721,\n  \"aunt</w>\": 12685,\n  \"auntie</w>\": 23783,\n  \"aunty</w>\": 29528,\n  \"aur\": 8156,\n  \"aur</w>\": 17282,\n  \"aura</w>\": 27728,\n  \"aure\": 36010,\n  \"aureli\": 35980,\n  \"auror\": 30067,\n  \"aurora</w>\": 13500,\n  \"aus\": 10624,\n  \"aus</w>\": 7630,\n  \"ausa</w>\": 37384,\n  \"ausbiz</w>\": 46543,\n  \"ausch\": 33926,\n  \"auschwitz</w>\": 36523,\n  \"ausopen</w>\": 27831,\n  \"ausp\": 35039,\n  \"auspicious</w>\": 38806,\n  \"auspol</w>\": 8241,\n  \"aussi\": 19762,\n  \"aussie\": 40230,\n  \"aussie</w>\": 14424,\n  \"aussies</w>\": 35727,\n  \"aust\": 26301,\n  \"aust</w>\": 25418,\n  \"austen</w>\": 29885,\n  \"auster\": 25030,\n  \"austerity</w>\": 26982,\n  \"austin\": 12845,\n  \"austin</w>\": 5125,\n  \"austinmahone</w>\": 34678,\n  \"austr\": 2518,\n  \"australi\": 13798,\n  \"australia</w>\": 3444,\n  \"australian\": 23630,\n  \"australian</w>\": 6258,\n  \"australians</w>\": 31488,\n  \"austri\": 8946,\n  \"austria</w>\": 11960,\n  \"austrian</w>\": 20638,\n  \"ausv\": 35206,\n  \"ausvotes</w>\": 34661,\n  \"aut</w>\": 12343,\n  \"auth\": 2381,\n  \"auth</w>\": 38247,\n  \"authent\": 18158,\n  \"authentic\": 41266,\n  \"authentic</w>\": 10369,\n  \"authentication</w>\": 39746,\n  \"authenticity</w>\": 35734,\n  \"autho\": 34552,\n  \"author\": 14447,\n  \"author</w>\": 4358,\n  \"authored</w>\": 37928,\n  \"authori\": 19207,\n  \"authorities</w>\": 12729,\n  \"authority</w>\": 10524,\n  \"authorization</w>\": 48854,\n  \"authorized</w>\": 28463,\n  \"authors</w>\": 10765,\n  \"auti\": 8200,\n  \"autism\": 36256,\n  \"autism</w>\": 11244,\n  \"autisma\": 43324,\n  \"autistic</w>\": 29360,\n  \"auto\": 3917,\n  \"auto</w>\": 5668,\n  \"autobiography</w>\": 31509,\n  \"autodesk</w>\": 40415,\n  \"autograph\": 10657,\n  \"autograph</w>\": 13722,\n  \"autographed</w>\": 16309,\n  \"autographs</w>\": 17376,\n  \"autoimmune</w>\": 45509,\n  \"autom\": 4114,\n  \"automate</w>\": 43203,\n  \"automated</w>\": 19022,\n  \"automatic</w>\": 12126,\n  \"automatically</w>\": 20725,\n  \"automation</w>\": 12328,\n  \"automobi\": 44813,\n  \"automobile</w>\": 25258,\n  \"automotive</w>\": 12607,\n  \"auton\": 13100,\n  \"autonews</w>\": 43975,\n  \"autonom\": 17870,\n  \"autonomous</w>\": 20722,\n  \"autonomy</w>\": 39223,\n  \"autopsy</w>\": 44436,\n  \"autos</w>\": 31118,\n  \"autoshow</w>\": 46788,\n  \"auts</w>\": 21140,\n  \"autu\": 5445,\n  \"autum\": 31783,\n  \"autumn\": 28940,\n  \"autumn</w>\": 6110,\n  \"autumnal</w>\": 35481,\n  \"aux\": 18154,\n  \"aux</w>\": 8909,\n  \"auxiliary</w>\": 37778,\n  \"av\": 722,\n  \"av</w>\": 8484,\n  \"ava</w>\": 12385,\n  \"avage</w>\": 31505,\n  \"avail\": 1651,\n  \"avail</w>\": 16686,\n  \"availability</w>\": 17551,\n  \"available</w>\": 1685,\n  \"aval\": 18012,\n  \"avalan\": 23970,\n  \"avalanche</w>\": 25815,\n  \"avalley</w>\": 45082,\n  \"avalon</w>\": 30436,\n  \"avan\": 27971,\n  \"avan</w>\": 33351,\n  \"avant</w>\": 24305,\n  \"avar\": 33423,\n  \"avatar</w>\": 18219,\n  \"ave\": 10062,\n  \"ave</w>\": 4860,\n  \"avec</w>\": 25828,\n  \"aved</w>\": 47918,\n  \"avel\": 46817,\n  \"avel</w>\": 48088,\n  \"aven\": 5963,\n  \"aven</w>\": 32971,\n  \"aveng\": 21935,\n  \"avenger</w>\": 24799,\n  \"avengers\": 39413,\n  \"avengers</w>\": 12016,\n  \"avengersendgame</w>\": 49342,\n  \"avent\": 22700,\n  \"avenue</w>\": 7042,\n  \"aver\": 8788,\n  \"aver</w>\": 11403,\n  \"average</w>\": 6254,\n  \"averaged</w>\": 37310,\n  \"averages</w>\": 48982,\n  \"averaging</w>\": 35266,\n  \"avery</w>\": 20313,\n  \"aves</w>\": 14023,\n  \"avfc</w>\": 21304,\n  \"avg</w>\": 19452,\n  \"avgeek</w>\": 11114,\n  \"avi\": 3324,\n  \"avi</w>\": 11297,\n  \"avia</w>\": 38710,\n  \"avian</w>\": 24115,\n  \"aviation\": 27717,\n  \"aviation</w>\": 7617,\n  \"aviator</w>\": 38921,\n  \"aviators</w>\": 48011,\n  \"avici\": 46192,\n  \"avicii</w>\": 49158,\n  \"avid</w>\": 19118,\n  \"avier</w>\": 14598,\n  \"avila</w>\": 45339,\n  \"aville</w>\": 40689,\n  \"avin\": 46204,\n  \"avis\": 45163,\n  \"avis</w>\": 19765,\n  \"aviv</w>\": 22130,\n  \"aviva</w>\": 47122,\n  \"aviz</w>\": 27607,\n  \"avl\": 44749,\n  \"avo\": 4496,\n  \"avo</w>\": 32400,\n  \"avoc\": 12291,\n  \"avocado</w>\": 14135,\n  \"avocados</w>\": 48911,\n  \"avoi\": 16797,\n  \"avoid\": 30448,\n  \"avoid</w>\": 5983,\n  \"avoidance</w>\": 47983,\n  \"avoided</w>\": 32103,\n  \"avoiding</w>\": 22086,\n  \"avoids</w>\": 48220,\n  \"avon\": 22790,\n  \"avon</w>\": 17348,\n  \"avril</w>\": 37763,\n  \"avs</w>\": 31896,\n  \"avut</w>\": 44472,\n  \"avy</w>\": 29973,\n  \"aw\": 808,\n  \"aw</w>\": 5557,\n  \"awa\": 4820,\n  \"awa</w>\": 6872,\n  \"await</w>\": 20769,\n  \"awaited</w>\": 20092,\n  \"awaiting</w>\": 14872,\n  \"awaits</w>\": 15635,\n  \"awak\": 9776,\n  \"awak</w>\": 41387,\n  \"awake</w>\": 14695,\n  \"awaken</w>\": 35412,\n  \"awakening</w>\": 17017,\n  \"awakens</w>\": 23191,\n  \"awal\": 42447,\n  \"awal</w>\": 35090,\n  \"awan\": 48869,\n  \"awan</w>\": 20420,\n  \"awar\": 5745,\n  \"award\": 36310,\n  \"award</w>\": 2047,\n  \"awarded</w>\": 7368,\n  \"awarding</w>\": 37089,\n  \"awards\": 34528,\n  \"awards</w>\": 2320,\n  \"aware\": 4427,\n  \"aware</w>\": 7196,\n  \"awareness\": 19217,\n  \"awareness</w>\": 4823,\n  \"awarenessmonth</w>\": 34278,\n  \"awarenessweek</w>\": 35294,\n  \"away\": 21088,\n  \"away</w>\": 1520,\n  \"aways</w>\": 12782,\n  \"awaz</w>\": 18586,\n  \"awd</w>\": 34846,\n  \"awe\": 1693,\n  \"awe</w>\": 14106,\n  \"aweather\": 42142,\n  \"aweather</w>\": 28681,\n  \"awec</w>\": 38916,\n  \"aweed</w>\": 29724,\n  \"awesom\": 16727,\n  \"awesome\": 30390,\n  \"awesome</w>\": 1848,\n  \"awesomeness</w>\": 22430,\n  \"awful</w>\": 13617,\n  \"awg</w>\": 46350,\n  \"awgs</w>\": 35275,\n  \"awh</w>\": 39566,\n  \"awhile</w>\": 19171,\n  \"awi</w>\": 15167,\n  \"awil\": 47271,\n  \"awilliams</w>\": 42163,\n  \"awk\": 8888,\n  \"awk</w>\": 40943,\n  \"awkward\": 42337,\n  \"awkward</w>\": 10304,\n  \"awn</w>\": 46222,\n  \"awp</w>\": 43300,\n  \"aws</w>\": 19658,\n  \"awsome</w>\": 47196,\n  \"awson</w>\": 36286,\n  \"aww</w>\": 11568,\n  \"awww</w>\": 15634,\n  \"awwww</w>\": 26460,\n  \"awx</w>\": 28385,\n  \"ax\": 3165,\n  \"ax</w>\": 9203,\n  \"axe</w>\": 19861,\n  \"axel\": 47889,\n  \"axel</w>\": 32131,\n  \"axes</w>\": 45970,\n  \"axi\": 30672,\n  \"axial</w>\": 46550,\n  \"axis</w>\": 19614,\n  \"axle</w>\": 39003,\n  \"axx\": 47411,\n  \"ay\": 658,\n  \"ay</w>\": 551,\n  \"aya</w>\": 5917,\n  \"ayala</w>\": 39827,\n  \"ayama</w>\": 41194,\n  \"ayan\": 37781,\n  \"ayan</w>\": 16269,\n  \"ayana</w>\": 37400,\n  \"ayas</w>\": 40904,\n  \"ayat\": 44902,\n  \"ayat</w>\": 35720,\n  \"aye\": 21661,\n  \"aye</w>\": 12446,\n  \"ayer</w>\": 24852,\n  \"ayers</w>\": 42783,\n  \"ayesha</w>\": 46570,\n  \"ayi</w>\": 33025,\n  \"ayles\": 44706,\n  \"ayne</w>\": 35669,\n  \"ayo\": 21929,\n  \"ayo</w>\": 18708,\n  \"ayr\": 23002,\n  \"ayr</w>\": 36473,\n  \"ayrshire</w>\": 32687,\n  \"ays</w>\": 785,\n  \"ayu</w>\": 40769,\n  \"ayurve\": 27185,\n  \"ayurveda</w>\": 38986,\n  \"ayush\": 44831,\n  \"ayy</w>\": 32514,\n  \"ayyy</w>\": 41052,\n  \"az\": 854,\n  \"az</w>\": 5468,\n  \"aza</w>\": 22883,\n  \"azad</w>\": 37838,\n  \"azalea</w>\": 34087,\n  \"azam</w>\": 34727,\n  \"azar</w>\": 27911,\n  \"azcardinals</w>\": 48846,\n  \"aze\": 41157,\n  \"aze</w>\": 28485,\n  \"azer\": 19169,\n  \"azerbai\": 20649,\n  \"azerbaijan</w>\": 23888,\n  \"azhar</w>\": 47019,\n  \"azi\": 23914,\n  \"azi</w>\": 18452,\n  \"azine</w>\": 29140,\n  \"azione</w>\": 48335,\n  \"aziz\": 41205,\n  \"aziz</w>\": 29630,\n  \"azo</w>\": 41227,\n  \"azon</w>\": 36854,\n  \"azores</w>\": 42826,\n  \"azte\": 33270,\n  \"aztec</w>\": 34749,\n  \"aztecs</w>\": 49387,\n  \"azu\": 27701,\n  \"azu</w>\": 46963,\n  \"azul</w>\": 39807,\n  \"azure</w>\": 18514,\n  \"azwx</w>\": 30262,\n  \"azy</w>\": 24783,\n  \"azz\": 9817,\n  \"azz</w>\": 26453,\n  \"azza</w>\": 22255,\n  \"azzi</w>\": 18758,\n  \"azzle</w>\": 39974,\n  \"azzo</w>\": 26779,\n  \"azzur\": 37055,\n  \"azzy</w>\": 44534,\n  \"aÃ±\": 23716,\n  \"aÃ±os</w>\": 41634,\n  \"b\": 65,\n  \"b</w>\": 321,\n  \"ba\": 932,\n  \"ba</w>\": 1792,\n  \"baa</w>\": 33004,\n  \"baahu\": 34145,\n  \"baahubali</w>\": 38663,\n  \"bab\": 1202,\n  \"bab</w>\": 19039,\n  \"baba</w>\": 12631,\n  \"babe\": 31177,\n  \"babe</w>\": 7716,\n  \"babes</w>\": 14253,\n  \"babies</w>\": 6635,\n  \"babs</w>\": 36217,\n  \"babu</w>\": 21623,\n  \"baby\": 7268,\n  \"baby</w>\": 1794,\n  \"babygirl</w>\": 39554,\n  \"babylon</w>\": 31928,\n  \"babymetal</w>\": 45013,\n  \"babys\": 22266,\n  \"babysitting</w>\": 34186,\n  \"bac\": 2791,\n  \"bac</w>\": 25867,\n  \"bacca</w>\": 40708,\n  \"bach\": 11773,\n  \"bach</w>\": 8758,\n  \"bachchan</w>\": 17690,\n  \"bachel\": 11283,\n  \"bachelor\": 45508,\n  \"bachelor</w>\": 16766,\n  \"bachelore\": 26009,\n  \"bachelorette</w>\": 29093,\n  \"bacher</w>\": 49211,\n  \"back\": 1663,\n  \"back</w>\": 893,\n  \"backbone</w>\": 35635,\n  \"backdrop</w>\": 20802,\n  \"backed</w>\": 12721,\n  \"backer</w>\": 22183,\n  \"backers</w>\": 32934,\n  \"background</w>\": 5994,\n  \"backgrounds</w>\": 28215,\n  \"backing</w>\": 14935,\n  \"backlash</w>\": 31519,\n  \"backpack</w>\": 14894,\n  \"backpacking</w>\": 29524,\n  \"backpacks</w>\": 37063,\n  \"backs</w>\": 7562,\n  \"backseat</w>\": 48812,\n  \"backstage</w>\": 9236,\n  \"backstreet\": 46337,\n  \"backthe\": 26127,\n  \"backto\": 18703,\n  \"backtoschool</w>\": 28730,\n  \"backtothe\": 43059,\n  \"backup</w>\": 14415,\n  \"backward</w>\": 37964,\n  \"backwards</w>\": 21283,\n  \"backyard</w>\": 12608,\n  \"bacon\": 48666,\n  \"bacon</w>\": 7104,\n  \"bacter\": 11814,\n  \"bacteria</w>\": 16556,\n  \"bacterial</w>\": 26101,\n  \"bad\": 2564,\n  \"bad</w>\": 2103,\n  \"bada</w>\": 37475,\n  \"badan</w>\": 39149,\n  \"badass</w>\": 11616,\n  \"baddest</w>\": 38112,\n  \"baden</w>\": 36690,\n  \"bader</w>\": 42254,\n  \"badge</w>\": 11301,\n  \"badger\": 32686,\n  \"badger</w>\": 22363,\n  \"badgers</w>\": 22521,\n  \"badges</w>\": 20084,\n  \"badlands</w>\": 43192,\n  \"badly</w>\": 13684,\n  \"badminton</w>\": 21412,\n  \"badoo</w>\": 33192,\n  \"bados</w>\": 25755,\n  \"bae\": 32834,\n  \"bae</w>\": 6855,\n  \"baek\": 18557,\n  \"baek</w>\": 32702,\n  \"baekhyun</w>\": 21572,\n  \"baes</w>\": 46332,\n  \"baf\": 13616,\n  \"baff\": 35693,\n  \"bafta</w>\": 29199,\n  \"bag\": 3408,\n  \"bag</w>\": 3365,\n  \"bage</w>\": 9698,\n  \"bagel</w>\": 28777,\n  \"bagels</w>\": 37489,\n  \"baggage</w>\": 31402,\n  \"bagged</w>\": 34047,\n  \"bagh\": 21659,\n  \"bagh</w>\": 37271,\n  \"baghdad</w>\": 30763,\n  \"bago</w>\": 25105,\n  \"bags</w>\": 6136,\n  \"bagu\": 27749,\n  \"baguette</w>\": 45334,\n  \"bah\": 8372,\n  \"bah</w>\": 16685,\n  \"baha\": 29592,\n  \"baham\": 43718,\n  \"bahamas</w>\": 21224,\n  \"bahan</w>\": 28704,\n  \"bahn</w>\": 33452,\n  \"bahrain</w>\": 12503,\n  \"bai\": 6232,\n  \"bai</w>\": 23339,\n  \"bail\": 22933,\n  \"bail</w>\": 16986,\n  \"bailey\": 27535,\n  \"bailey</w>\": 10180,\n  \"bain\": 40784,\n  \"bain</w>\": 21593,\n  \"bair\": 29059,\n  \"baird</w>\": 40474,\n  \"bait</w>\": 18010,\n  \"baj\": 20713,\n  \"baja\": 40418,\n  \"baja</w>\": 28374,\n  \"bajo</w>\": 32619,\n  \"bak\": 4059,\n  \"bak</w>\": 23742,\n  \"bakar</w>\": 41414,\n  \"bake\": 20736,\n  \"bake</w>\": 11878,\n  \"baked</w>\": 10364,\n  \"baker\": 27303,\n  \"baker</w>\": 7743,\n  \"bakers\": 35293,\n  \"bakers</w>\": 40231,\n  \"bakersfield</w>\": 40149,\n  \"bakery</w>\": 13377,\n  \"bakes</w>\": 43057,\n  \"bakhta\": 44912,\n  \"bakhtawar\": 46937,\n  \"bakhtawarbz</w>\": 47118,\n  \"baking</w>\": 11467,\n  \"baku\": 46417,\n  \"baku</w>\": 31852,\n  \"bal\": 1398,\n  \"bal</w>\": 2282,\n  \"bala</w>\": 20291,\n  \"balaji</w>\": 48694,\n  \"balance\": 42894,\n  \"balance</w>\": 6827,\n  \"balanced</w>\": 15273,\n  \"balances</w>\": 37733,\n  \"balancing</w>\": 23541,\n  \"balboa</w>\": 45098,\n  \"balcony</w>\": 16169,\n  \"bald\": 11153,\n  \"bald</w>\": 14875,\n  \"baldhead</w>\": 29191,\n  \"baldwin</w>\": 16242,\n  \"bale\": 48573,\n  \"bale</w>\": 18873,\n  \"bales</w>\": 42879,\n  \"bali\": 16432,\n  \"bali</w>\": 10900,\n  \"balkan</w>\": 48499,\n  \"balkans</w>\": 42987,\n  \"ball\": 3807,\n  \"ball</w>\": 1069,\n  \"balla\": 42246,\n  \"ballad</w>\": 33472,\n  \"ballarat</w>\": 46645,\n  \"ballard</w>\": 31750,\n  \"baller\": 49194,\n  \"baller</w>\": 25655,\n  \"ballerina</w>\": 34962,\n  \"ballers</w>\": 34173,\n  \"ballet</w>\": 10703,\n  \"balli\": 29406,\n  \"ballin\": 47444,\n  \"ballin</w>\": 33057,\n  \"balling</w>\": 47588,\n  \"ballis\": 46675,\n  \"ballistic</w>\": 36667,\n  \"ballo\": 8871,\n  \"ballon</w>\": 36469,\n  \"balloon</w>\": 13634,\n  \"balloons</w>\": 18130,\n  \"ballot</w>\": 14185,\n  \"ballots</w>\": 35051,\n  \"ballpark</w>\": 26080,\n  \"ballroom</w>\": 15493,\n  \"balls</w>\": 6927,\n  \"bally\": 17275,\n  \"bally</w>\": 29451,\n  \"balm</w>\": 24962,\n  \"balmain</w>\": 45929,\n  \"balo\": 12395,\n  \"baloch</w>\": 23173,\n  \"balochistan</w>\": 21918,\n  \"balot\": 44615,\n  \"balotelli</w>\": 45721,\n  \"bals</w>\": 44154,\n  \"balsam\": 29121,\n  \"balsamic</w>\": 32654,\n  \"balt</w>\": 24441,\n  \"balti\": 8400,\n  \"baltic</w>\": 23817,\n  \"baltimore\": 38502,\n  \"baltimore</w>\": 9582,\n  \"balu\": 38093,\n  \"bam\": 6383,\n  \"bam</w>\": 12686,\n  \"bama</w>\": 20021,\n  \"bambam</w>\": 34538,\n  \"bambi</w>\": 46596,\n  \"bamboo\": 49322,\n  \"bamboo</w>\": 16748,\n  \"ban\": 1159,\n  \"ban</w>\": 2777,\n  \"bana</w>\": 18428,\n  \"banan\": 38410,\n  \"banana</w>\": 8922,\n  \"bananas</w>\": 19121,\n  \"banc\": 39252,\n  \"band\": 4613,\n  \"band</w>\": 1963,\n  \"banda</w>\": 31865,\n  \"bandai</w>\": 42054,\n  \"bandana</w>\": 39265,\n  \"bandcamp</w>\": 32229,\n  \"banded</w>\": 37804,\n  \"bandic\": 44400,\n  \"bandit</w>\": 27639,\n  \"bandits</w>\": 33940,\n  \"bandra</w>\": 41393,\n  \"bands</w>\": 7858,\n  \"bandung</w>\": 29512,\n  \"bandwagon</w>\": 36432,\n  \"bandwidth</w>\": 48859,\n  \"bane</w>\": 9597,\n  \"banerjee</w>\": 48102,\n  \"banff</w>\": 29565,\n  \"bang\": 3524,\n  \"bang</w>\": 6907,\n  \"bangalore</w>\": 14697,\n  \"banger</w>\": 24872,\n  \"bangers</w>\": 38311,\n  \"banging</w>\": 33033,\n  \"bangkok</w>\": 12351,\n  \"bangla\": 10339,\n  \"bangla</w>\": 45928,\n  \"bangladesh</w>\": 11245,\n  \"bangle</w>\": 37634,\n  \"bangor</w>\": 31190,\n  \"bangs</w>\": 27992,\n  \"bangtan</w>\": 39131,\n  \"bani</w>\": 19732,\n  \"banjo</w>\": 27014,\n  \"bank\": 7061,\n  \"bank</w>\": 2723,\n  \"banker</w>\": 27316,\n  \"bankers</w>\": 30599,\n  \"bankholiday\": 48868,\n  \"banking</w>\": 9566,\n  \"bankno\": 49201,\n  \"bankof\": 39120,\n  \"bankrup\": 21904,\n  \"bankrupt\": 23077,\n  \"bankrupt</w>\": 37288,\n  \"bankruptcy</w>\": 23978,\n  \"banks</w>\": 6367,\n  \"banksy</w>\": 33350,\n  \"bann\": 5304,\n  \"banned</w>\": 12012,\n  \"banner</w>\": 9185,\n  \"banners</w>\": 23145,\n  \"banning</w>\": 26246,\n  \"bannon</w>\": 29710,\n  \"bano</w>\": 42947,\n  \"banquet</w>\": 14254,\n  \"bans</w>\": 15146,\n  \"bant\": 23301,\n  \"bant</w>\": 46657,\n  \"banter</w>\": 25535,\n  \"bao\": 39487,\n  \"bao</w>\": 20408,\n  \"bap\": 7415,\n  \"bap</w>\": 23754,\n  \"bapti\": 15477,\n  \"baptism</w>\": 36765,\n  \"baptist</w>\": 13274,\n  \"baptiste</w>\": 45770,\n  \"baptized</w>\": 45400,\n  \"bar\": 1040,\n  \"bar</w>\": 2411,\n  \"bara</w>\": 19345,\n  \"barack\": 18670,\n  \"barack</w>\": 22481,\n  \"barackobama</w>\": 18885,\n  \"barak\": 47419,\n  \"barak</w>\": 16260,\n  \"barang\": 38446,\n  \"barb\": 24173,\n  \"barb</w>\": 20913,\n  \"barbados</w>\": 26992,\n  \"barbar\": 7906,\n  \"barbara</w>\": 10937,\n  \"barbarian</w>\": 42530,\n  \"barbe\": 18372,\n  \"barbecue</w>\": 23501,\n  \"barber\": 19517,\n  \"barber</w>\": 12296,\n  \"barbershop</w>\": 37707,\n  \"barbican</w>\": 47668,\n  \"barbie</w>\": 16923,\n  \"barca</w>\": 22942,\n  \"barcel\": 6134,\n  \"barcelon\": 47820,\n  \"barcelona</w>\": 6412,\n  \"barclay\": 48877,\n  \"barclay</w>\": 45276,\n  \"barclays</w>\": 29538,\n  \"bard\": 39812,\n  \"bard</w>\": 17514,\n  \"bare\": 16023,\n  \"bare</w>\": 14318,\n  \"barefoot</w>\": 30327,\n  \"barely</w>\": 12684,\n  \"bargain</w>\": 15076,\n  \"bargaining</w>\": 41282,\n  \"bargains</w>\": 34126,\n  \"barge</w>\": 28272,\n  \"bari\": 21428,\n  \"bari</w>\": 28016,\n  \"barista</w>\": 31078,\n  \"barit\": 46300,\n  \"bark\": 32333,\n  \"bark</w>\": 16560,\n  \"barker</w>\": 20618,\n  \"barking</w>\": 32676,\n  \"barkley</w>\": 30266,\n  \"barley</w>\": 22607,\n  \"barlow</w>\": 25483,\n  \"barn\": 10490,\n  \"barn</w>\": 10942,\n  \"barnab\": 43272,\n  \"barnard</w>\": 44332,\n  \"barne\": 42527,\n  \"barnes</w>\": 13102,\n  \"barnet</w>\": 41943,\n  \"barnett</w>\": 27650,\n  \"barney</w>\": 24563,\n  \"barns</w>\": 43759,\n  \"barnsley\": 37109,\n  \"barnsley</w>\": 32153,\n  \"baro\": 17422,\n  \"baro</w>\": 30817,\n  \"baron\": 48371,\n  \"baron</w>\": 19349,\n  \"baroness</w>\": 45056,\n  \"barons</w>\": 45596,\n  \"baroque</w>\": 25065,\n  \"barr\": 39473,\n  \"barr</w>\": 22492,\n  \"barra\": 28442,\n  \"barra</w>\": 33542,\n  \"barrabest</w>\": 41376,\n  \"barrac\": 40835,\n  \"barracks</w>\": 35822,\n  \"barre\": 13840,\n  \"barre</w>\": 38257,\n  \"barred</w>\": 33261,\n  \"barrel</w>\": 11703,\n  \"barrels</w>\": 22059,\n  \"barren</w>\": 46743,\n  \"barrett</w>\": 18701,\n  \"barri\": 8660,\n  \"barric\": 29189,\n  \"barrie</w>\": 27090,\n  \"barrier</w>\": 15706,\n  \"barriers</w>\": 16321,\n  \"barrington</w>\": 48954,\n  \"barron</w>\": 34881,\n  \"barrow\": 42568,\n  \"barrow</w>\": 24983,\n  \"barry\": 18028,\n  \"barry</w>\": 8461,\n  \"barrymore</w>\": 49310,\n  \"bars</w>\": 8616,\n  \"barstool\": 44826,\n  \"bart\": 14838,\n  \"bart</w>\": 12870,\n  \"bartender</w>\": 33498,\n  \"barthol\": 48989,\n  \"bartlett</w>\": 37130,\n  \"bartol\": 38209,\n  \"barton\": 48853,\n  \"barton</w>\": 20345,\n  \"baru</w>\": 16356,\n  \"barun\": 38278,\n  \"barunsob\": 41398,\n  \"barÃ§a</w>\": 32788,\n  \"bas\": 1244,\n  \"bas</w>\": 11420,\n  \"basa</w>\": 26142,\n  \"base\": 2776,\n  \"base</w>\": 4579,\n  \"baseball\": 23479,\n  \"baseball</w>\": 3470,\n  \"based\": 35196,\n  \"based</w>\": 2812,\n  \"basel\": 42803,\n  \"basel</w>\": 20903,\n  \"baseline</w>\": 40648,\n  \"baseman</w>\": 45910,\n  \"basement</w>\": 14792,\n  \"bases</w>\": 20496,\n  \"bash\": 20462,\n  \"bash</w>\": 10972,\n  \"bashing</w>\": 37545,\n  \"bashir</w>\": 42799,\n  \"basic\": 40452,\n  \"basic</w>\": 7696,\n  \"basically</w>\": 9125,\n  \"basics</w>\": 15825,\n  \"basil\": 19225,\n  \"basil</w>\": 14936,\n  \"basilica</w>\": 27879,\n  \"basin</w>\": 16117,\n  \"basing\": 47321,\n  \"basis</w>\": 12278,\n  \"baske\": 3713,\n  \"basket</w>\": 10338,\n  \"basketball\": 40023,\n  \"basketball</w>\": 3835,\n  \"baskets</w>\": 27787,\n  \"basking</w>\": 39769,\n  \"basque</w>\": 37175,\n  \"bass\": 22831,\n  \"bass</w>\": 5992,\n  \"bassett</w>\": 45992,\n  \"bassist</w>\": 26496,\n  \"bast\": 28092,\n  \"basti\": 8559,\n  \"bastille</w>\": 41874,\n  \"bat\": 2121,\n  \"bat</w>\": 6575,\n  \"bata</w>\": 39277,\n  \"batb</w>\": 33962,\n  \"batch</w>\": 9413,\n  \"bate\": 25034,\n  \"bate</w>\": 28277,\n  \"bateman</w>\": 41635,\n  \"bates</w>\": 21727,\n  \"batgirl</w>\": 46460,\n  \"bath\": 6064,\n  \"bath</w>\": 5713,\n  \"bathing</w>\": 20144,\n  \"bathro\": 21201,\n  \"bathroom</w>\": 8470,\n  \"bathrooms</w>\": 26434,\n  \"baths</w>\": 19442,\n  \"bathtub</w>\": 39942,\n  \"bathurst</w>\": 36365,\n  \"bati\": 23362,\n  \"bati</w>\": 37589,\n  \"batman\": 27811,\n  \"batman</w>\": 7223,\n  \"baton</w>\": 24331,\n  \"bats</w>\": 14984,\n  \"batsman</w>\": 35432,\n  \"batt\": 2407,\n  \"batt</w>\": 48595,\n  \"battalion</w>\": 20820,\n  \"batter\": 12654,\n  \"batter</w>\": 31855,\n  \"battered</w>\": 34375,\n  \"batteries</w>\": 16666,\n  \"battersea</w>\": 35839,\n  \"battery</w>\": 7870,\n  \"batting</w>\": 17401,\n  \"battle\": 7344,\n  \"battle</w>\": 3528,\n  \"battled</w>\": 37837,\n  \"battlefield</w>\": 16055,\n  \"battlefront</w>\": 42214,\n  \"battleof\": 47560,\n  \"battles</w>\": 14213,\n  \"battleship</w>\": 35165,\n  \"battling</w>\": 17268,\n  \"bau\": 6055,\n  \"bau</w>\": 34840,\n  \"bauer</w>\": 22903,\n  \"baugh</w>\": 41301,\n  \"baum</w>\": 19840,\n  \"bautista</w>\": 31881,\n  \"bav\": 21075,\n  \"bavaria</w>\": 39977,\n  \"bavarian</w>\": 44458,\n  \"baw\": 19808,\n  \"bax\": 21216,\n  \"baxter</w>\": 26168,\n  \"bay\": 3631,\n  \"bay</w>\": 2174,\n  \"baya</w>\": 31573,\n  \"bayan</w>\": 43895,\n  \"bayarea</w>\": 28260,\n  \"bayer\": 48548,\n  \"bayer</w>\": 29183,\n  \"bayern</w>\": 14666,\n  \"baylor</w>\": 21721,\n  \"bayou</w>\": 33955,\n  \"bays</w>\": 40156,\n  \"baz\": 10430,\n  \"baz</w>\": 25268,\n  \"bazaar</w>\": 20070,\n  \"bazar</w>\": 49298,\n  \"bb\": 1174,\n  \"bb</w>\": 3529,\n  \"bba</w>\": 27762,\n  \"bball</w>\": 15664,\n  \"bbb</w>\": 33535,\n  \"bbc\": 5123,\n  \"bbc</w>\": 5188,\n  \"bbcc\": 39052,\n  \"bbce\": 33818,\n  \"bbcnews</w>\": 29370,\n  \"bbcone</w>\": 28259,\n  \"bbcqt</w>\": 37343,\n  \"bbcr</w>\": 35802,\n  \"bbcra\": 17115,\n  \"bbcradi\": 49213,\n  \"bbcradio</w>\": 22876,\n  \"bbcsport</w>\": 49321,\n  \"bbcspringwatch</w>\": 37358,\n  \"bbctwo</w>\": 40395,\n  \"bbcworld</w>\": 47340,\n  \"bbe</w>\": 37559,\n  \"bbed</w>\": 9077,\n  \"bber</w>\": 7933,\n  \"bbers</w>\": 36494,\n  \"bbhutto\": 28085,\n  \"bbhuttozardari</w>\": 28135,\n  \"bbi</w>\": 37047,\n  \"bbin</w>\": 38553,\n  \"bbing</w>\": 9787,\n  \"bbins</w>\": 42504,\n  \"bbl</w>\": 21961,\n  \"bble\": 26570,\n  \"bble</w>\": 5924,\n  \"bbled</w>\": 37626,\n  \"bbles</w>\": 18093,\n  \"bblo\": 21231,\n  \"bbloggers</w>\": 26614,\n  \"bbly</w>\": 43031,\n  \"bbm</w>\": 25382,\n  \"bbmas</w>\": 22145,\n  \"bbn</w>\": 28427,\n  \"bbnaija</w>\": 20984,\n  \"bbo</w>\": 21892,\n  \"bbq\": 41270,\n  \"bbq</w>\": 6726,\n  \"bbs</w>\": 10002,\n  \"bbuk</w>\": 45978,\n  \"bby\": 11166,\n  \"bby</w>\": 3810,\n  \"bc\": 3116,\n  \"bc</w>\": 2162,\n  \"bcc</w>\": 41509,\n  \"bcci</w>\": 36138,\n  \"bce</w>\": 36510,\n  \"bcfc</w>\": 34359,\n  \"bch</w>\": 36684,\n  \"bcn</w>\": 25766,\n  \"bcoz</w>\": 46373,\n  \"bcpoli</w>\": 24389,\n  \"bcs</w>\": 24909,\n  \"bcu</w>\": 28299,\n  \"bd\": 24358,\n  \"bd</w>\": 11165,\n  \"bday\": 33022,\n  \"bday</w>\": 5781,\n  \"bdg</w>\": 48418,\n  \"bds</w>\": 26732,\n  \"be\": 571,\n  \"be</w>\": 655,\n  \"bea\": 21886,\n  \"bea</w>\": 20925,\n  \"beach\": 6068,\n  \"beach</w>\": 2117,\n  \"beaches</w>\": 12183,\n  \"beachlife</w>\": 43824,\n  \"beacon\": 36883,\n  \"beacon</w>\": 18858,\n  \"beacons</w>\": 39395,\n  \"bead\": 31621,\n  \"bead</w>\": 23557,\n  \"beaded</w>\": 26661,\n  \"beads</w>\": 14099,\n  \"beagle</w>\": 30044,\n  \"beak</w>\": 36498,\n  \"beal</w>\": 45769,\n  \"beale</w>\": 39717,\n  \"beam\": 35339,\n  \"beam</w>\": 13663,\n  \"beams</w>\": 23993,\n  \"bean\": 16471,\n  \"bean</w>\": 5328,\n  \"beanie</w>\": 21534,\n  \"beans</w>\": 8302,\n  \"bear\": 6375,\n  \"bear</w>\": 4298,\n  \"bearable</w>\": 38608,\n  \"bearcats</w>\": 33242,\n  \"beard\": 26157,\n  \"beard</w>\": 9052,\n  \"bearded</w>\": 28459,\n  \"beardown</w>\": 43687,\n  \"beards</w>\": 33020,\n  \"bearer</w>\": 30686,\n  \"bearers</w>\": 47986,\n  \"bearing</w>\": 18370,\n  \"bearings</w>\": 42083,\n  \"bearish</w>\": 34829,\n  \"bears</w>\": 6182,\n  \"beasley</w>\": 43349,\n  \"beast\": 20847,\n  \"beast</w>\": 6957,\n  \"beastmode</w>\": 43076,\n  \"beasts</w>\": 21771,\n  \"beat\": 3774,\n  \"beat</w>\": 3018,\n  \"beaten</w>\": 10864,\n  \"beater</w>\": 41974,\n  \"beati\": 44386,\n  \"beating</w>\": 10078,\n  \"beatles</w>\": 11961,\n  \"beatport</w>\": 31421,\n  \"beatrice</w>\": 36922,\n  \"beats</w>\": 6289,\n  \"beatthe\": 40550,\n  \"beatty</w>\": 39903,\n  \"beatz</w>\": 33363,\n  \"beau\": 1016,\n  \"beau</w>\": 14298,\n  \"beaufort</w>\": 45423,\n  \"beaumont</w>\": 32857,\n  \"beaut</w>\": 24559,\n  \"beauti\": 1154,\n  \"beauties</w>\": 14874,\n  \"beautiful\": 13662,\n  \"beautiful</w>\": 1215,\n  \"beautifully</w>\": 10627,\n  \"beauty\": 12881,\n  \"beauty</w>\": 2488,\n  \"beav\": 23260,\n  \"beaver\": 26432,\n  \"beaver</w>\": 22874,\n  \"beavers</w>\": 34513,\n  \"beavs</w>\": 43909,\n  \"bebe</w>\": 23331,\n  \"bec\": 6899,\n  \"bec</w>\": 10773,\n  \"became</w>\": 5464,\n  \"because\": 32714,\n  \"because</w>\": 1631,\n  \"becca</w>\": 27088,\n  \"bech\": 44055,\n  \"beck\": 8256,\n  \"beck</w>\": 10396,\n  \"becker</w>\": 26918,\n  \"beckett</w>\": 27249,\n  \"beckham</w>\": 18764,\n  \"becky\": 32406,\n  \"becky</w>\": 18921,\n  \"become</w>\": 2989,\n  \"becomes</w>\": 6766,\n  \"becoming</w>\": 6208,\n  \"bed\": 4152,\n  \"bed</w>\": 2722,\n  \"bedding</w>\": 31761,\n  \"bedford</w>\": 20779,\n  \"bedi</w>\": 39181,\n  \"bedro\": 18415,\n  \"bedroom</w>\": 8411,\n  \"bedrooms</w>\": 23996,\n  \"beds</w>\": 13914,\n  \"bedside</w>\": 47473,\n  \"bedtime</w>\": 22115,\n  \"bee\": 6097,\n  \"bee</w>\": 5028,\n  \"beech\": 32733,\n  \"beech</w>\": 27596,\n  \"beef\": 21703,\n  \"beef</w>\": 6529,\n  \"beek</w>\": 37915,\n  \"been\": 33986,\n  \"been</w>\": 1025,\n  \"beep</w>\": 33432,\n  \"beer\": 8885,\n  \"beer</w>\": 2544,\n  \"beers</w>\": 10907,\n  \"bees\": 36249,\n  \"bees</w>\": 9100,\n  \"beet\": 12582,\n  \"beet</w>\": 28621,\n  \"beethoven</w>\": 23656,\n  \"beetle</w>\": 16534,\n  \"beetles</w>\": 36317,\n  \"beetro\": 29251,\n  \"beetroot</w>\": 31638,\n  \"beets</w>\": 36087,\n  \"before\": 20898,\n  \"before</w>\": 1348,\n  \"beg\": 2219,\n  \"beg</w>\": 22401,\n  \"began</w>\": 8636,\n  \"begg\": 36769,\n  \"begging</w>\": 25371,\n  \"begin\": 19197,\n  \"begin</w>\": 4947,\n  \"beginner</w>\": 24351,\n  \"beginners</w>\": 21930,\n  \"beginning</w>\": 5791,\n  \"beginnings</w>\": 22581,\n  \"begins</w>\": 4635,\n  \"begs</w>\": 43531,\n  \"begun</w>\": 10514,\n  \"beh\": 21971,\n  \"beh</w>\": 41612,\n  \"beha\": 5737,\n  \"behalf</w>\": 11470,\n  \"behave</w>\": 28825,\n  \"behaved</w>\": 41617,\n  \"behavi\": 6149,\n  \"behaving</w>\": 40745,\n  \"behavior</w>\": 10461,\n  \"behavioral</w>\": 25135,\n  \"behaviors</w>\": 37741,\n  \"behaviour</w>\": 14655,\n  \"behavioural</w>\": 46019,\n  \"behe\": 42329,\n  \"behin\": 2335,\n  \"behind</w>\": 2403,\n  \"behindthe\": 21104,\n  \"behindthescenes</w>\": 26253,\n  \"behold</w>\": 15929,\n  \"bei\": 38991,\n  \"bei</w>\": 23227,\n  \"beige</w>\": 26677,\n  \"beij\": 11547,\n  \"beijing</w>\": 11796,\n  \"bein\": 39117,\n  \"bein</w>\": 24168,\n  \"being\": 13481,\n  \"being</w>\": 1265,\n  \"beings</w>\": 17998,\n  \"beingsalmankhan</w>\": 19637,\n  \"beir\": 20176,\n  \"beirut</w>\": 22352,\n  \"beit</w>\": 26963,\n  \"bek\": 46846,\n  \"bek</w>\": 26135,\n  \"bekind</w>\": 46691,\n  \"bel\": 1308,\n  \"bel</w>\": 3543,\n  \"bela</w>\": 30555,\n  \"belarus</w>\": 30849,\n  \"belated</w>\": 20256,\n  \"belfast\": 35100,\n  \"belfast</w>\": 10015,\n  \"belgi\": 7001,\n  \"belgian</w>\": 15008,\n  \"belgium</w>\": 10239,\n  \"belgrade</w>\": 30502,\n  \"beli\": 1859,\n  \"beli</w>\": 45842,\n  \"belichick</w>\": 46132,\n  \"belie\": 20854,\n  \"beliebers</w>\": 27714,\n  \"belief</w>\": 14802,\n  \"beliefs</w>\": 20575,\n  \"believ\": 4972,\n  \"believe\": 15819,\n  \"believe</w>\": 2649,\n  \"believed</w>\": 13380,\n  \"believein\": 24294,\n  \"believeinfilm</w>\": 37375,\n  \"believer</w>\": 26057,\n  \"believers</w>\": 28434,\n  \"believes</w>\": 12017,\n  \"believing</w>\": 19551,\n  \"belinda</w>\": 44415,\n  \"belize</w>\": 27990,\n  \"bell\": 5417,\n  \"bell</w>\": 3718,\n  \"bella\": 18282,\n  \"bella</w>\": 10418,\n  \"bellamy</w>\": 34461,\n  \"bellator</w>\": 31985,\n  \"belle\": 13587,\n  \"belle</w>\": 11496,\n  \"belles</w>\": 40678,\n  \"bellevue</w>\": 32715,\n  \"belli\": 43335,\n  \"bellletstalk</w>\": 42695,\n  \"bello</w>\": 21954,\n  \"bells</w>\": 12811,\n  \"bellum</w>\": 35493,\n  \"belly\": 25901,\n  \"belly</w>\": 10404,\n  \"belmont</w>\": 25612,\n  \"belo\": 8379,\n  \"belo</w>\": 41649,\n  \"belong\": 16453,\n  \"belong</w>\": 13596,\n  \"belonged</w>\": 39893,\n  \"belonging</w>\": 28193,\n  \"belongs</w>\": 14395,\n  \"beloved</w>\": 9363,\n  \"below</w>\": 3788,\n  \"bels</w>\": 43127,\n  \"belt\": 36416,\n  \"belt</w>\": 7373,\n  \"belts</w>\": 21888,\n  \"belvedere</w>\": 48003,\n  \"ben\": 1465,\n  \"ben</w>\": 3518,\n  \"bena</w>\": 46249,\n  \"bench\": 17770,\n  \"bench</w>\": 8771,\n  \"benches</w>\": 36349,\n  \"benchmark</w>\": 31775,\n  \"bend\": 22100,\n  \"bend</w>\": 13332,\n  \"bender</w>\": 22551,\n  \"bendigo</w>\": 48197,\n  \"bending</w>\": 33897,\n  \"bene\": 12091,\n  \"bene</w>\": 47151,\n  \"beneath</w>\": 16850,\n  \"bened\": 13216,\n  \"benedic\": 24402,\n  \"benedict\": 47896,\n  \"benedict</w>\": 18027,\n  \"benef\": 3260,\n  \"benefici\": 38593,\n  \"beneficial</w>\": 24660,\n  \"beneficiaries</w>\": 42160,\n  \"benefit</w>\": 6399,\n  \"benefited</w>\": 48266,\n  \"benefiting</w>\": 29474,\n  \"benefits</w>\": 5465,\n  \"benefitting</w>\": 47222,\n  \"benevol\": 47060,\n  \"benfica</w>\": 33873,\n  \"beng\": 6962,\n  \"bengal\": 17404,\n  \"bengal</w>\": 16374,\n  \"bengali</w>\": 33774,\n  \"bengals</w>\": 23737,\n  \"bengaluru</w>\": 21707,\n  \"benghazi</w>\": 25967,\n  \"benin</w>\": 40296,\n  \"benitez</w>\": 46711,\n  \"benjam\": 10550,\n  \"benjamin\": 38647,\n  \"benjamin</w>\": 12131,\n  \"benji</w>\": 43548,\n  \"benn</w>\": 39097,\n  \"bennet</w>\": 48536,\n  \"bennett</w>\": 12186,\n  \"benny\": 42369,\n  \"benny</w>\": 20595,\n  \"beno\": 35268,\n  \"benoit</w>\": 44373,\n  \"benson</w>\": 19578,\n  \"bent\": 9809,\n  \"bent</w>\": 18369,\n  \"bentley</w>\": 16859,\n  \"benton</w>\": 30812,\n  \"benz\": 27937,\n  \"benz</w>\": 13470,\n  \"ber\": 867,\n  \"ber</w>\": 1516,\n  \"bera</w>\": 32802,\n  \"bere\": 17458,\n  \"bered</w>\": 9193,\n  \"beren\": 33654,\n  \"beret</w>\": 41658,\n  \"berg\": 12022,\n  \"berg</w>\": 3294,\n  \"bergen</w>\": 22918,\n  \"berger\": 35933,\n  \"berger</w>\": 13873,\n  \"bergh</w>\": 35120,\n  \"bergman</w>\": 42597,\n  \"bergs</w>\": 43592,\n  \"berk\": 15633,\n  \"berke\": 14639,\n  \"berkeley\": 46049,\n  \"berkeley</w>\": 16667,\n  \"berkshire</w>\": 27300,\n  \"berlin\": 23532,\n  \"berlin</w>\": 5891,\n  \"berman</w>\": 21514,\n  \"bermu\": 21032,\n  \"bermuda</w>\": 24644,\n  \"bern\": 9195,\n  \"bern</w>\": 18382,\n  \"bernade\": 46242,\n  \"bernar\": 11962,\n  \"bernard</w>\": 14579,\n  \"bernardino</w>\": 35328,\n  \"bernardo\": 27137,\n  \"bernardo</w>\": 28696,\n  \"bernardokath</w>\": 29081,\n  \"bernat\": 40578,\n  \"berni\": 18798,\n  \"bernie\": 40093,\n  \"bernie</w>\": 10503,\n  \"berniesanders</w>\": 23745,\n  \"bernstein</w>\": 33936,\n  \"berra</w>\": 15089,\n  \"berries</w>\": 8319,\n  \"berry\": 15334,\n  \"berry</w>\": 3488,\n  \"bers</w>\": 6408,\n  \"berser\": 39037,\n  \"bert\": 17340,\n  \"bert</w>\": 2358,\n  \"berta</w>\": 45187,\n  \"berth</w>\": 28317,\n  \"bertie</w>\": 47182,\n  \"berto</w>\": 34073,\n  \"bertr\": 36962,\n  \"bertrand</w>\": 41594,\n  \"berts</w>\": 30205,\n  \"berty</w>\": 35973,\n  \"berwick</w>\": 40407,\n  \"bery</w>\": 11411,\n  \"bes\": 26911,\n  \"bes</w>\": 3635,\n  \"beside</w>\": 13519,\n  \"besides</w>\": 17596,\n  \"bespoke</w>\": 15612,\n  \"bess</w>\": 43791,\n  \"best\": 3419,\n  \"best</w>\": 949,\n  \"bestbuy</w>\": 29749,\n  \"bestest</w>\": 31199,\n  \"bestfan\": 23880,\n  \"bestfanarmy</w>\": 24590,\n  \"bestfriend\": 29832,\n  \"bestfriend</w>\": 11856,\n  \"bestfriends</w>\": 23555,\n  \"besti\": 35210,\n  \"bestie</w>\": 17188,\n  \"besties</w>\": 27346,\n  \"besto\": 28615,\n  \"bestof\": 27892,\n  \"bestof</w>\": 39533,\n  \"bestseller</w>\": 25841,\n  \"bestselling</w>\": 28632,\n  \"bet\": 1051,\n  \"bet</w>\": 4430,\n  \"beta\": 43188,\n  \"beta</w>\": 9505,\n  \"betes</w>\": 10255,\n  \"beth\": 9993,\n  \"beth</w>\": 4892,\n  \"bethan\": 18781,\n  \"bethany\": 39130,\n  \"bethany</w>\": 27952,\n  \"bethe\": 12624,\n  \"bethel</w>\": 33410,\n  \"bethesda</w>\": 32527,\n  \"bethle\": 30760,\n  \"bethlehem</w>\": 31827,\n  \"betis</w>\": 45590,\n  \"beto</w>\": 33721,\n  \"betra\": 18436,\n  \"betrayal</w>\": 33171,\n  \"betrayed</w>\": 35692,\n  \"bets</w>\": 17107,\n  \"betsy</w>\": 28946,\n  \"bett\": 17715,\n  \"bett</w>\": 20489,\n  \"betta</w>\": 36387,\n  \"bette</w>\": 35855,\n  \"better\": 10320,\n  \"better</w>\": 1539,\n  \"bettertogether</w>\": 47392,\n  \"betting</w>\": 14319,\n  \"betts</w>\": 38637,\n  \"betty\": 36175,\n  \"betty</w>\": 14350,\n  \"between</w>\": 1957,\n  \"beu\": 38660,\n  \"bev\": 40324,\n  \"bev</w>\": 30968,\n  \"bever\": 9924,\n  \"beverage</w>\": 18694,\n  \"beverages</w>\": 28521,\n  \"beverley</w>\": 39165,\n  \"beverly\": 30906,\n  \"beverly</w>\": 16728,\n  \"beverlyhills</w>\": 45363,\n  \"beware</w>\": 14532,\n  \"bewithyou</w>\": 36787,\n  \"bex\": 18676,\n  \"bex</w>\": 24748,\n  \"bexhill</w>\": 49200,\n  \"bey\": 3234,\n  \"bey</w>\": 6767,\n  \"beyon\": 11447,\n  \"beyonce</w>\": 16632,\n  \"beyoncÃ©</w>\": 19219,\n  \"beyond\": 22246,\n  \"beyond</w>\": 4432,\n  \"bez\": 28592,\n  \"bez</w>\": 46764,\n  \"bezos</w>\": 45000,\n  \"bf\": 19858,\n  \"bf</w>\": 7990,\n  \"bfc</w>\": 37183,\n  \"bff</w>\": 11984,\n  \"bffs</w>\": 31462,\n  \"bfi</w>\": 34244,\n  \"bg\": 16674,\n  \"bg</w>\": 11295,\n  \"bgc</w>\": 47598,\n  \"bgs</w>\": 47963,\n  \"bgt</w>\": 40665,\n  \"bh\": 9930,\n  \"bh</w>\": 13603,\n  \"bha\": 6144,\n  \"bha</w>\": 33068,\n  \"bhafc</w>\": 30779,\n  \"bhagat</w>\": 49136,\n  \"bhai\": 48370,\n  \"bhai</w>\": 20508,\n  \"bhak\": 34501,\n  \"bham\": 31874,\n  \"bham</w>\": 23491,\n  \"bhan\": 27356,\n  \"bhand\": 48679,\n  \"bhar\": 9108,\n  \"bharat\": 27454,\n  \"bharat</w>\": 17430,\n  \"bharti</w>\": 46803,\n  \"bhat\": 23784,\n  \"bhatt</w>\": 36143,\n  \"bhav\": 44950,\n  \"bhi\": 28943,\n  \"bhi</w>\": 21955,\n  \"bhk</w>\": 45070,\n  \"bhm</w>\": 38741,\n  \"bho\": 19721,\n  \"bhopal</w>\": 44573,\n  \"bhp</w>\": 29776,\n  \"bhs</w>\": 29195,\n  \"bhu\": 9172,\n  \"bhuban\": 38729,\n  \"bhubanes\": 41213,\n  \"bhubaneswar</w>\": 45888,\n  \"bhushan</w>\": 40884,\n  \"bhutan</w>\": 32391,\n  \"bhutto</w>\": 30153,\n  \"bi\": 717,\n  \"bi</w>\": 3035,\n  \"bia</w>\": 3841,\n  \"biaf\": 26961,\n  \"biafra</w>\": 36355,\n  \"bian\": 19531,\n  \"bian</w>\": 9027,\n  \"bianca</w>\": 25854,\n  \"bianchi</w>\": 45720,\n  \"bians</w>\": 28141,\n  \"bias</w>\": 11268,\n  \"biased</w>\": 22178,\n  \"bib\": 44607,\n  \"bib</w>\": 21022,\n  \"bibi</w>\": 31182,\n  \"bibl\": 20912,\n  \"bible\": 26738,\n  \"bible</w>\": 7583,\n  \"bibli\": 23465,\n  \"biblical</w>\": 22841,\n  \"biblio\": 49131,\n  \"bic\": 5960,\n  \"bic</w>\": 10675,\n  \"bice\": 35589,\n  \"biceps</w>\": 46735,\n  \"bick\": 27238,\n  \"bicy\": 9247,\n  \"bicycle</w>\": 11652,\n  \"bicycles</w>\": 31326,\n  \"bid\": 21035,\n  \"bid</w>\": 5553,\n  \"bidding</w>\": 23237,\n  \"bide</w>\": 45178,\n  \"biden</w>\": 19451,\n  \"bids</w>\": 16148,\n  \"bie\": 5561,\n  \"bie</w>\": 4173,\n  \"bieber\": 48725,\n  \"bieber</w>\": 7535,\n  \"bien\": 19176,\n  \"bien</w>\": 25742,\n  \"biennale</w>\": 33776,\n  \"biennial</w>\": 36609,\n  \"bier\": 27226,\n  \"bier</w>\": 23508,\n  \"bies</w>\": 7867,\n  \"big\": 1915,\n  \"big</w>\": 1205,\n  \"bigbaldhead</w>\": 30325,\n  \"bigbang\": 41680,\n  \"bigbang</w>\": 23734,\n  \"bigdata</w>\": 9440,\n  \"bige\": 37762,\n  \"bigfoot</w>\": 37095,\n  \"bigg\": 15312,\n  \"bigg</w>\": 35399,\n  \"biggboss</w>\": 27056,\n  \"bigger</w>\": 6806,\n  \"biggest\": 19483,\n  \"biggest</w>\": 3505,\n  \"biggie</w>\": 28392,\n  \"biggs</w>\": 46507,\n  \"bigh\": 18106,\n  \"bighit</w>\": 35508,\n  \"bigo\": 14278,\n  \"bigolive</w>\": 20735,\n  \"bigotry</w>\": 37269,\n  \"bigre\": 36330,\n  \"bih</w>\": 33471,\n  \"bihar</w>\": 22849,\n  \"bij\": 42478,\n  \"bik\": 30306,\n  \"bike\": 11686,\n  \"bike</w>\": 3701,\n  \"biker\": 36100,\n  \"biker</w>\": 23449,\n  \"bikers</w>\": 29468,\n  \"bikes</w>\": 9227,\n  \"bikin\": 12638,\n  \"biking</w>\": 19157,\n  \"bikini</w>\": 14531,\n  \"bil\": 3092,\n  \"bil</w>\": 20506,\n  \"bilateral</w>\": 25599,\n  \"bilbao</w>\": 34802,\n  \"bild</w>\": 35512,\n  \"bile</w>\": 25943,\n  \"bilingual</w>\": 29623,\n  \"bilities</w>\": 13582,\n  \"bility</w>\": 4694,\n  \"bill\": 4444,\n  \"bill</w>\": 2886,\n  \"billboard</w>\": 10856,\n  \"billboards</w>\": 34741,\n  \"billed</w>\": 37558,\n  \"billi\": 7693,\n  \"billie</w>\": 23990,\n  \"billing</w>\": 31797,\n  \"billings</w>\": 43615,\n  \"billion\": 14520,\n  \"billion</w>\": 5729,\n  \"billionaire</w>\": 19475,\n  \"billionaires</w>\": 41590,\n  \"billions</w>\": 20742,\n  \"bills</w>\": 9810,\n  \"billsmafia</w>\": 48845,\n  \"billy\": 15626,\n  \"billy</w>\": 6814,\n  \"bilt\": 44770,\n  \"bilt</w>\": 26654,\n  \"bim\": 46737,\n  \"bim</w>\": 24775,\n  \"bin\": 4849,\n  \"bin</w>\": 5346,\n  \"binance</w>\": 43520,\n  \"binary</w>\": 23497,\n  \"bind</w>\": 44513,\n  \"binder</w>\": 30541,\n  \"binding</w>\": 21287,\n  \"bine</w>\": 34848,\n  \"bing\": 24818,\n  \"bing</w>\": 5665,\n  \"binge</w>\": 22600,\n  \"bingham\": 43785,\n  \"bingham</w>\": 47296,\n  \"bingo</w>\": 18418,\n  \"bino\": 29172,\n  \"bino</w>\": 24313,\n  \"bins</w>\": 26934,\n  \"bint\": 43647,\n  \"bio\": 2830,\n  \"bio</w>\": 5162,\n  \"biode\": 43502,\n  \"biodegradable</w>\": 47740,\n  \"biodiversity</w>\": 17428,\n  \"biof\": 45158,\n  \"biographical</w>\": 49232,\n  \"biography</w>\": 15423,\n  \"biological</w>\": 18821,\n  \"biologist</w>\": 35149,\n  \"biology</w>\": 9796,\n  \"biom\": 13010,\n  \"biomar\": 44549,\n  \"biomass</w>\": 36746,\n  \"biome\": 26218,\n  \"biomed\": 29280,\n  \"biomedical</w>\": 33117,\n  \"bionic</w>\": 46201,\n  \"biop\": 15009,\n  \"biopic</w>\": 27942,\n  \"bios</w>\": 48505,\n  \"biotech</w>\": 22514,\n  \"biotechnology</w>\": 40375,\n  \"biotic</w>\": 33773,\n  \"biotics</w>\": 41371,\n  \"bious</w>\": 31845,\n  \"bipartisan</w>\": 32266,\n  \"bipolar</w>\": 37097,\n  \"bique</w>\": 27809,\n  \"bir\": 921,\n  \"bir</w>\": 16284,\n  \"birch\": 31569,\n  \"birch</w>\": 22907,\n  \"bird\": 6908,\n  \"bird</w>\": 3329,\n  \"birdie</w>\": 29612,\n  \"birdies</w>\": 45618,\n  \"birding</w>\": 15851,\n  \"birdman</w>\": 41915,\n  \"birdphotography</w>\": 47999,\n  \"birds\": 41951,\n  \"birds</w>\": 4337,\n  \"birdwatching</w>\": 33497,\n  \"birk\": 48289,\n  \"birken\": 40661,\n  \"birmin\": 37482,\n  \"birmingham\": 38580,\n  \"birmingham</w>\": 7720,\n  \"birth\": 1128,\n  \"birth</w>\": 5397,\n  \"birthday\": 7381,\n  \"birthday</w>\": 1166,\n  \"birthdays</w>\": 17954,\n  \"birthplace</w>\": 31429,\n  \"biryani</w>\": 46489,\n  \"bis\": 5064,\n  \"bis</w>\": 14461,\n  \"biscu\": 11532,\n  \"biscuit</w>\": 18731,\n  \"biscuits</w>\": 18248,\n  \"bisexual</w>\": 36829,\n  \"bish\": 33690,\n  \"bish</w>\": 31461,\n  \"bishop\": 20625,\n  \"bishop</w>\": 8024,\n  \"bishops</w>\": 31579,\n  \"bison</w>\": 19741,\n  \"bistro</w>\": 21770,\n  \"bit\": 3010,\n  \"bit</w>\": 2010,\n  \"bitcoin\": 30848,\n  \"bitcoin</w>\": 6366,\n  \"bite</w>\": 41613,\n  \"biting</w>\": 23016,\n  \"bits</w>\": 7747,\n  \"bitt</w>\": 39251,\n  \"bius</w>\": 45525,\n  \"bix\": 46579,\n  \"biz\": 8212,\n  \"biz</w>\": 5431,\n  \"biza</w>\": 47013,\n  \"bizar\": 14886,\n  \"bizarre</w>\": 16965,\n  \"bizhour</w>\": 39462,\n  \"bizitalk</w>\": 34929,\n  \"bj\": 4592,\n  \"bj</w>\": 18229,\n  \"bjj</w>\": 27437,\n  \"bjor\": 26525,\n  \"bjp\": 37264,\n  \"bjp</w>\": 6178,\n  \"bk\": 15099,\n  \"bk</w>\": 14083,\n  \"bkk</w>\": 36433,\n  \"bl\": 833,\n  \"bl</w>\": 9467,\n  \"bla\": 2205,\n  \"bla</w>\": 19630,\n  \"blac\": 21008,\n  \"black\": 2025,\n  \"black</w>\": 1449,\n  \"blackand\": 12809,\n  \"blackandwhite\": 23688,\n  \"blackandwhite</w>\": 19506,\n  \"blackandwhitephotography</w>\": 27544,\n  \"blackberry</w>\": 16470,\n  \"blackbird</w>\": 38526,\n  \"blackburn</w>\": 23789,\n  \"blackfish</w>\": 42193,\n  \"blackfriday</w>\": 16445,\n  \"blackgirl\": 43591,\n  \"blackhawks</w>\": 19203,\n  \"blackhistory</w>\": 46982,\n  \"blackhistorymonth</w>\": 20135,\n  \"blacklist</w>\": 30295,\n  \"blacklivesmatter</w>\": 23467,\n  \"blackmail</w>\": 47295,\n  \"blackops</w>\": 43519,\n  \"blackout</w>\": 21733,\n  \"blackpanther</w>\": 36592,\n  \"blackpink</w>\": 20339,\n  \"blackpool</w>\": 21031,\n  \"blacks</w>\": 16351,\n  \"blackwell</w>\": 42642,\n  \"blad</w>\": 36635,\n  \"bladder</w>\": 33593,\n  \"blade</w>\": 10264,\n  \"blades</w>\": 16893,\n  \"blah</w>\": 29212,\n  \"blaine</w>\": 32457,\n  \"blair\": 31824,\n  \"blair</w>\": 14749,\n  \"blake\": 20229,\n  \"blake</w>\": 9579,\n  \"blame</w>\": 10695,\n  \"blamed</w>\": 32906,\n  \"blames</w>\": 27841,\n  \"blaming</w>\": 29287,\n  \"blan\": 4609,\n  \"blanc\": 30936,\n  \"blanc</w>\": 13301,\n  \"blanca</w>\": 40670,\n  \"blanchard</w>\": 40177,\n  \"blanche</w>\": 34875,\n  \"blanchett</w>\": 49378,\n  \"blanco</w>\": 26801,\n  \"bland\": 44372,\n  \"bland</w>\": 30799,\n  \"blank</w>\": 15134,\n  \"blanket</w>\": 12878,\n  \"blankets</w>\": 24042,\n  \"blanks</w>\": 48599,\n  \"blasio</w>\": 35553,\n  \"blasphe\": 36622,\n  \"blast\": 46349,\n  \"blast</w>\": 5964,\n  \"blasted</w>\": 38976,\n  \"blaster</w>\": 36341,\n  \"blasting</w>\": 26178,\n  \"blasts</w>\": 23067,\n  \"blat\": 22048,\n  \"blatant</w>\": 41391,\n  \"blatt</w>\": 39138,\n  \"blau\": 45307,\n  \"blaz\": 43413,\n  \"blaze</w>\": 15497,\n  \"blazer</w>\": 17606,\n  \"blazers</w>\": 16984,\n  \"blazing</w>\": 25267,\n  \"bldg</w>\": 22981,\n  \"ble\": 1447,\n  \"ble</w>\": 1059,\n  \"bleach</w>\": 27034,\n  \"bleak</w>\": 40355,\n  \"bled</w>\": 12006,\n  \"bleed\": 23027,\n  \"bleed</w>\": 24791,\n  \"bleedblue</w>\": 39160,\n  \"bleeding</w>\": 20311,\n  \"bleeds</w>\": 47339,\n  \"blen\": 25651,\n  \"blend</w>\": 10780,\n  \"blended</w>\": 25813,\n  \"blender</w>\": 25066,\n  \"blending</w>\": 34307,\n  \"blends</w>\": 28572,\n  \"bler\": 31305,\n  \"bler</w>\": 11979,\n  \"blers</w>\": 26930,\n  \"bles</w>\": 5763,\n  \"bless\": 9640,\n  \"bless</w>\": 5387,\n  \"blessed</w>\": 4411,\n  \"blessing</w>\": 10729,\n  \"blessings</w>\": 11185,\n  \"bleu</w>\": 30114,\n  \"blew</w>\": 18176,\n  \"bley</w>\": 43176,\n  \"bli\": 1450,\n  \"bli</w>\": 28051,\n  \"blin\": 9678,\n  \"blin</w>\": 5406,\n  \"blind\": 17248,\n  \"blind</w>\": 8351,\n  \"blinded</w>\": 49149,\n  \"blindness</w>\": 38812,\n  \"blinds</w>\": 32449,\n  \"bling\": 39764,\n  \"bling</w>\": 7097,\n  \"blink</w>\": 18976,\n  \"bliss\": 28531,\n  \"bliss</w>\": 12893,\n  \"blissful</w>\": 42145,\n  \"blit\": 39327,\n  \"blitz\": 42151,\n  \"blitz</w>\": 17548,\n  \"blizz\": 13075,\n  \"blizzard</w>\": 16111,\n  \"blk\": 42950,\n  \"blk</w>\": 22872,\n  \"blm</w>\": 30957,\n  \"bln</w>\": 47348,\n  \"blo\": 1204,\n  \"blo</w>\": 25505,\n  \"blob</w>\": 49312,\n  \"bloc</w>\": 30961,\n  \"block\": 4638,\n  \"block</w>\": 4593,\n  \"blockade</w>\": 33489,\n  \"blockbuster</w>\": 19939,\n  \"blockchain</w>\": 6653,\n  \"blocked</w>\": 9106,\n  \"blocker</w>\": 44767,\n  \"blocking</w>\": 12652,\n  \"blocks</w>\": 10113,\n  \"blog\": 16376,\n  \"blog</w>\": 2589,\n  \"blogg\": 33282,\n  \"blogged</w>\": 41380,\n  \"blogger\": 21352,\n  \"blogger</w>\": 7806,\n  \"bloggerrt</w>\": 48898,\n  \"bloggers</w>\": 11627,\n  \"blogging</w>\": 18090,\n  \"blogpost</w>\": 41842,\n  \"blogs</w>\": 16682,\n  \"bloke</w>\": 24384,\n  \"blom\": 48996,\n  \"blon\": 7958,\n  \"blond</w>\": 32426,\n  \"blonde</w>\": 10711,\n  \"blondes</w>\": 45130,\n  \"blondie</w>\": 39236,\n  \"bloo\": 2373,\n  \"blood\": 9231,\n  \"blood</w>\": 3590,\n  \"blooded</w>\": 41946,\n  \"bloodh\": 48480,\n  \"bloods</w>\": 39539,\n  \"bloody\": 38568,\n  \"bloody</w>\": 9468,\n  \"bloom\": 7311,\n  \"bloom</w>\": 10257,\n  \"bloomberg\": 43109,\n  \"bloomberg</w>\": 21238,\n  \"bloomfield</w>\": 40342,\n  \"blooming\": 45175,\n  \"blooming</w>\": 19266,\n  \"bloomington</w>\": 34731,\n  \"blooms</w>\": 21439,\n  \"bloss\": 10017,\n  \"blossom</w>\": 14472,\n  \"blossoms</w>\": 21916,\n  \"blot</w>\": 41710,\n  \"blou\": 44506,\n  \"blouse</w>\": 23525,\n  \"blow\": 15230,\n  \"blow</w>\": 10211,\n  \"blower</w>\": 25832,\n  \"blowing</w>\": 12087,\n  \"blown</w>\": 11848,\n  \"blowout</w>\": 34857,\n  \"blows</w>\": 21063,\n  \"blr</w>\": 47250,\n  \"bls</w>\": 39458,\n  \"blu\": 1263,\n  \"blu</w>\": 10273,\n  \"blue\": 3829,\n  \"blue</w>\": 1746,\n  \"bluebells</w>\": 47150,\n  \"blueberries</w>\": 29551,\n  \"blueberry</w>\": 18251,\n  \"bluebird</w>\": 40747,\n  \"bluec\": 43194,\n  \"bluef\": 41174,\n  \"bluegrass</w>\": 26241,\n  \"bluejays</w>\": 18684,\n  \"blueprint</w>\": 30594,\n  \"blues\": 17566,\n  \"blues</w>\": 5159,\n  \"blueslyrix</w>\": 47068,\n  \"bluet\": 13469,\n  \"bluetooth</w>\": 14052,\n  \"bluewave</w>\": 40025,\n  \"bluff</w>\": 27232,\n  \"bluffs</w>\": 48844,\n  \"blum</w>\": 34818,\n  \"blumen\": 38714,\n  \"blun\": 34472,\n  \"blunt</w>\": 19305,\n  \"blur\": 12102,\n  \"blur</w>\": 27976,\n  \"bluray</w>\": 36818,\n  \"blurred</w>\": 38013,\n  \"blurry</w>\": 21977,\n  \"blush</w>\": 22889,\n  \"blvd</w>\": 12578,\n  \"bly\": 20930,\n  \"bly</w>\": 4426,\n  \"bm\": 4773,\n  \"bm</w>\": 15916,\n  \"bma</w>\": 42573,\n  \"bmc</w>\": 27807,\n  \"bmi</w>\": 40642,\n  \"bmo</w>\": 39083,\n  \"bms</w>\": 34074,\n  \"bmw\": 26637,\n  \"bmw</w>\": 7869,\n  \"bmx</w>\": 22535,\n  \"bn\": 10496,\n  \"bn</w>\": 7992,\n  \"bnb</w>\": 20010,\n  \"bnha</w>\": 49336,\n  \"bnp</w>\": 47910,\n  \"bnw</w>\": 35903,\n  \"bo\": 647,\n  \"bo</w>\": 2525,\n  \"boa</w>\": 14732,\n  \"boar\": 7837,\n  \"boar</w>\": 35473,\n  \"board\": 10419,\n  \"board</w>\": 1972,\n  \"boarded</w>\": 43052,\n  \"boarder</w>\": 37414,\n  \"boardgame</w>\": 47829,\n  \"boardgames</w>\": 32646,\n  \"boarding</w>\": 10086,\n  \"boardroom</w>\": 47937,\n  \"boards</w>\": 7963,\n  \"boardwalk</w>\": 29043,\n  \"boast</w>\": 44467,\n  \"boasts</w>\": 30309,\n  \"boat\": 12426,\n  \"boat</w>\": 4440,\n  \"boath\": 45461,\n  \"boating</w>\": 21951,\n  \"boats</w>\": 10080,\n  \"boatsales</w>\": 46244,\n  \"bob\": 8444,\n  \"bob</w>\": 4423,\n  \"boba</w>\": 39948,\n  \"bobb\": 16891,\n  \"bobble</w>\": 38796,\n  \"bobblehead</w>\": 33451,\n  \"bobby\": 17847,\n  \"bobby</w>\": 7816,\n  \"bobc\": 26153,\n  \"bobcat</w>\": 37896,\n  \"bobcats</w>\": 27568,\n  \"bobo</w>\": 38939,\n  \"bobs</w>\": 45533,\n  \"boc\": 27307,\n  \"boc</w>\": 39042,\n  \"boca</w>\": 26094,\n  \"bock</w>\": 24961,\n  \"bod\": 17904,\n  \"bod</w>\": 26340,\n  \"boda</w>\": 42030,\n  \"bode\": 28452,\n  \"bode</w>\": 40429,\n  \"bodega</w>\": 47350,\n  \"bodied</w>\": 36892,\n  \"bodies</w>\": 9799,\n  \"bodily</w>\": 49119,\n  \"body\": 7132,\n  \"body</w>\": 1774,\n  \"bodybuilding</w>\": 24538,\n  \"bodyguard</w>\": 35565,\n  \"boe\": 23476,\n  \"boe</w>\": 21773,\n  \"boeh\": 38002,\n  \"boehner</w>\": 44599,\n  \"boeing\": 48135,\n  \"boeing</w>\": 11857,\n  \"boer\": 44889,\n  \"boer</w>\": 40768,\n  \"bog\": 23426,\n  \"bog</w>\": 28318,\n  \"bogo</w>\": 35769,\n  \"bogota</w>\": 47059,\n  \"bogus</w>\": 42907,\n  \"boh\": 43238,\n  \"bohe\": 40541,\n  \"bohemi\": 21552,\n  \"bohemian</w>\": 25753,\n  \"boho</w>\": 25444,\n  \"boi\": 37129,\n  \"boi</w>\": 12673,\n  \"boil</w>\": 31332,\n  \"boiled</w>\": 23886,\n  \"boiler\": 28212,\n  \"boiler</w>\": 25615,\n  \"boiling</w>\": 32019,\n  \"bois\": 47742,\n  \"bois</w>\": 21640,\n  \"boise</w>\": 23304,\n  \"bok\": 26671,\n  \"bok</w>\": 15289,\n  \"boko</w>\": 30929,\n  \"boks</w>\": 40216,\n  \"bol\": 2860,\n  \"bol</w>\": 8413,\n  \"bola</w>\": 12840,\n  \"bold\": 26975,\n  \"bold</w>\": 8911,\n  \"boldand\": 48413,\n  \"boldly</w>\": 44778,\n  \"boli\": 12722,\n  \"bolic</w>\": 27343,\n  \"bolivia</w>\": 28628,\n  \"bollah</w>\": 36336,\n  \"bolly\": 25302,\n  \"bollywood\": 32448,\n  \"bollywood</w>\": 9604,\n  \"bolo</w>\": 40236,\n  \"bolog\": 22818,\n  \"bologna</w>\": 27513,\n  \"bolster</w>\": 47304,\n  \"bolt</w>\": 13131,\n  \"bolton\": 48757,\n  \"bolton</w>\": 16598,\n  \"bolts</w>\": 26028,\n  \"bom\": 3012,\n  \"bom</w>\": 19469,\n  \"bomb\": 18091,\n  \"bomb</w>\": 6331,\n  \"bombar\": 25544,\n  \"bombardier</w>\": 42700,\n  \"bombay\": 48602,\n  \"bombay</w>\": 23890,\n  \"bombed</w>\": 24542,\n  \"bomber</w>\": 15436,\n  \"bombers</w>\": 21786,\n  \"bombing</w>\": 14475,\n  \"bombings</w>\": 43236,\n  \"bombs</w>\": 14410,\n  \"bombshell</w>\": 36340,\n  \"bon\": 1871,\n  \"bon</w>\": 4216,\n  \"bona</w>\": 33342,\n  \"bonanza</w>\": 40304,\n  \"bond\": 37022,\n  \"bond</w>\": 6826,\n  \"bonded</w>\": 37390,\n  \"bondi</w>\": 40092,\n  \"bonding</w>\": 19609,\n  \"bonds</w>\": 15786,\n  \"bone\": 22502,\n  \"bone</w>\": 6195,\n  \"bones</w>\": 9476,\n  \"bonfire</w>\": 23151,\n  \"bongo</w>\": 47519,\n  \"boni\": 32269,\n  \"boni</w>\": 46356,\n  \"bonita</w>\": 42896,\n  \"bonjour</w>\": 33176,\n  \"bonkers</w>\": 39865,\n  \"bonn</w>\": 38969,\n  \"bonnar\": 47191,\n  \"bonnaroo</w>\": 48777,\n  \"bonne</w>\": 25844,\n  \"bonnet</w>\": 30636,\n  \"bonnie</w>\": 18555,\n  \"bono</w>\": 24476,\n  \"bons</w>\": 42883,\n  \"bonsai</w>\": 44129,\n  \"bonus</w>\": 8164,\n  \"bonuses</w>\": 35144,\n  \"boo\": 824,\n  \"boo</w>\": 7317,\n  \"boogie</w>\": 22639,\n  \"book\": 2828,\n  \"book</w>\": 1116,\n  \"bookboost</w>\": 31257,\n  \"bookclub</w>\": 34438,\n  \"bookday</w>\": 26327,\n  \"booked</w>\": 12584,\n  \"booker</w>\": 21302,\n  \"bookfest</w>\": 39381,\n  \"booking</w>\": 10145,\n  \"bookings</w>\": 18345,\n  \"booklet</w>\": 27405,\n  \"bookmark</w>\": 33596,\n  \"bookof\": 45629,\n  \"bookreview</w>\": 27362,\n  \"books\": 44382,\n  \"books</w>\": 2161,\n  \"bookshelf</w>\": 34821,\n  \"bookshop</w>\": 24705,\n  \"bookstore</w>\": 17999,\n  \"bookstores</w>\": 46416,\n  \"bookworm</w>\": 20743,\n  \"boom\": 9609,\n  \"boom</w>\": 7121,\n  \"boomer\": 33819,\n  \"boomer</w>\": 31766,\n  \"boomers</w>\": 37988,\n  \"booming</w>\": 33487,\n  \"boon\": 24979,\n  \"boon</w>\": 35821,\n  \"boone</w>\": 23453,\n  \"boop</w>\": 45047,\n  \"boost\": 44639,\n  \"boost</w>\": 6260,\n  \"boosted</w>\": 37631,\n  \"booster</w>\": 20877,\n  \"boosters</w>\": 46859,\n  \"boosting</w>\": 28480,\n  \"boosts</w>\": 29247,\n  \"boot\": 10843,\n  \"boot</w>\": 8087,\n  \"bootcamp</w>\": 22051,\n  \"booted</w>\": 42564,\n  \"booth\": 47895,\n  \"booth</w>\": 3971,\n  \"booths</w>\": 32653,\n  \"booties</w>\": 46188,\n  \"bootleg</w>\": 38139,\n  \"boots</w>\": 7319,\n  \"booze</w>\": 24341,\n  \"bop</w>\": 19720,\n  \"bor\": 1141,\n  \"bor</w>\": 15093,\n  \"bora</w>\": 24736,\n  \"bord</w>\": 36891,\n  \"bordeaux</w>\": 22009,\n  \"border\": 16304,\n  \"border</w>\": 6177,\n  \"borderlands</w>\": 38676,\n  \"borders</w>\": 13900,\n  \"bore\": 14084,\n  \"bore</w>\": 24638,\n  \"bored</w>\": 8933,\n  \"boredom</w>\": 31460,\n  \"boretum</w>\": 38902,\n  \"borg</w>\": 14770,\n  \"borgh\": 17180,\n  \"boring</w>\": 12519,\n  \"boris\": 31212,\n  \"boris</w>\": 15704,\n  \"borisjohnson</w>\": 44481,\n  \"born\": 17695,\n  \"born</w>\": 2683,\n  \"borne\": 42910,\n  \"borne</w>\": 9328,\n  \"borneo</w>\": 33332,\n  \"bornon\": 41811,\n  \"bornonthisday</w>\": 42757,\n  \"boro\": 26796,\n  \"boro</w>\": 7974,\n  \"borough\": 22761,\n  \"borough</w>\": 6203,\n  \"borrow</w>\": 22293,\n  \"borrowed</w>\": 28224,\n  \"borrowing</w>\": 41045,\n  \"borussia</w>\": 36764,\n  \"bos\": 14885,\n  \"bos</w>\": 9644,\n  \"bosa</w>\": 46946,\n  \"bosch\": 42009,\n  \"bosch</w>\": 19466,\n  \"bosco</w>\": 36960,\n  \"bose</w>\": 23142,\n  \"bosh</w>\": 42244,\n  \"bosni\": 42924,\n  \"bosnia</w>\": 31396,\n  \"boss\": 17935,\n  \"boss</w>\": 4206,\n  \"bosses</w>\": 23906,\n  \"boston\": 11540,\n  \"boston</w>\": 4399,\n  \"bostonmarathon</w>\": 44533,\n  \"bot\": 4136,\n  \"bot</w>\": 6947,\n  \"botan\": 12554,\n  \"botanic</w>\": 32560,\n  \"botanical</w>\": 21026,\n  \"botany</w>\": 22612,\n  \"botd</w>\": 34451,\n  \"both\": 36575,\n  \"both</w>\": 2212,\n  \"bother</w>\": 21125,\n  \"bothered</w>\": 27997,\n  \"botox</w>\": 43449,\n  \"bots</w>\": 13721,\n  \"botswana</w>\": 27584,\n  \"bott\": 3520,\n  \"bott</w>\": 37225,\n  \"bottle\": 37306,\n  \"bottle</w>\": 5392,\n  \"bottled</w>\": 29331,\n  \"bottlen\": 46439,\n  \"bottles</w>\": 9754,\n  \"bottling</w>\": 42006,\n  \"bottom\": 32314,\n  \"bottom</w>\": 5931,\n  \"bottoms</w>\": 31524,\n  \"bou\": 3728,\n  \"bou</w>\": 23165,\n  \"bouchard</w>\": 47930,\n  \"boudo\": 48827,\n  \"bought</w>\": 4142,\n  \"boul\": 24830,\n  \"boulder</w>\": 18260,\n  \"boule\": 17652,\n  \"boulevard</w>\": 19504,\n  \"boun\": 5993,\n  \"bounce</w>\": 14316,\n  \"bouncing</w>\": 32060,\n  \"bouncy</w>\": 43415,\n  \"bound\": 15140,\n  \"bound</w>\": 4567,\n  \"boundaries</w>\": 18690,\n  \"boundary</w>\": 21344,\n  \"bounds</w>\": 37469,\n  \"bounty</w>\": 21142,\n  \"bouquet</w>\": 20961,\n  \"bour\": 2934,\n  \"bour</w>\": 35486,\n  \"bourbon\": 48118,\n  \"bourbon</w>\": 14652,\n  \"bourdain</w>\": 48095,\n  \"bourg</w>\": 20690,\n  \"bourgeo\": 45672,\n  \"bourn</w>\": 39143,\n  \"bourne\": 13789,\n  \"bourne</w>\": 5192,\n  \"bournemouth</w>\": 20911,\n  \"bout\": 19982,\n  \"bout</w>\": 8123,\n  \"bouti\": 10926,\n  \"boutique</w>\": 12179,\n  \"bow\": 2297,\n  \"bow</w>\": 4040,\n  \"bowden</w>\": 48538,\n  \"bowed</w>\": 49130,\n  \"bowel</w>\": 36880,\n  \"bowen</w>\": 25368,\n  \"bower</w>\": 40414,\n  \"bowers</w>\": 42238,\n  \"bowie</w>\": 13036,\n  \"bowing</w>\": 46398,\n  \"bowl\": 26719,\n  \"bowl</w>\": 3814,\n  \"bowled</w>\": 39987,\n  \"bowler</w>\": 25528,\n  \"bowlers</w>\": 42632,\n  \"bowles</w>\": 41611,\n  \"bowling</w>\": 10390,\n  \"bowls</w>\": 17787,\n  \"bowman</w>\": 22052,\n  \"bows</w>\": 17000,\n  \"bowser</w>\": 38234,\n  \"bowski</w>\": 48311,\n  \"box\": 2774,\n  \"box</w>\": 2063,\n  \"boxed</w>\": 24190,\n  \"boxer\": 40394,\n  \"boxer</w>\": 15363,\n  \"boxers</w>\": 31019,\n  \"boxes</w>\": 8350,\n  \"boxing\": 33669,\n  \"boxing</w>\": 5554,\n  \"boy\": 2927,\n  \"boy</w>\": 1876,\n  \"boyband</w>\": 31568,\n  \"boyce</w>\": 44480,\n  \"boycot\": 46208,\n  \"boycott\": 31615,\n  \"boycott</w>\": 19559,\n  \"boyd</w>\": 18295,\n  \"boyfriend</w>\": 7328,\n  \"boyfriends</w>\": 36541,\n  \"boyle</w>\": 22802,\n  \"boys\": 25223,\n  \"boys</w>\": 2034,\n  \"boyz</w>\": 16152,\n  \"bp\": 23410,\n  \"bp</w>\": 11558,\n  \"bpa</w>\": 43855,\n  \"bpd</w>\": 48587,\n  \"bpl</w>\": 28901,\n  \"bpm</w>\": 40338,\n  \"bps</w>\": 37794,\n  \"br\": 711,\n  \"br</w>\": 7532,\n  \"bra\": 1195,\n  \"bra</w>\": 5860,\n  \"brac\": 6663,\n  \"brace\": 8376,\n  \"brace</w>\": 9183,\n  \"bracelet</w>\": 8969,\n  \"bracelets</w>\": 20027,\n  \"braces</w>\": 19249,\n  \"brack\": 25676,\n  \"bracket</w>\": 14780,\n  \"brackets</w>\": 36183,\n  \"brad\": 4848,\n  \"brad</w>\": 9405,\n  \"bradbury</w>\": 45097,\n  \"braden</w>\": 46842,\n  \"bradford</w>\": 15062,\n  \"bradley\": 31905,\n  \"bradley</w>\": 10952,\n  \"brador</w>\": 24062,\n  \"bradshaw</w>\": 37556,\n  \"brady\": 42494,\n  \"brady</w>\": 11117,\n  \"brae\": 42874,\n  \"brae</w>\": 40040,\n  \"brag</w>\": 30110,\n  \"bragg</w>\": 38545,\n  \"bragging</w>\": 38199,\n  \"brah\": 20276,\n  \"brahms</w>\": 45114,\n  \"brai\": 25048,\n  \"braid</w>\": 31067,\n  \"braided</w>\": 39997,\n  \"braids</w>\": 34221,\n  \"brain\": 9454,\n  \"brain</w>\": 4812,\n  \"brains</w>\": 17129,\n  \"brainstorming</w>\": 36607,\n  \"braised</w>\": 28363,\n  \"brake</w>\": 14937,\n  \"brakes</w>\": 23456,\n  \"bral</w>\": 31309,\n  \"bram\": 14815,\n  \"bram</w>\": 39456,\n  \"brampton</w>\": 35124,\n  \"bran\": 3684,\n  \"bran</w>\": 28348,\n  \"brance\": 36072,\n  \"brance</w>\": 15413,\n  \"branch</w>\": 7998,\n  \"branches</w>\": 15843,\n  \"brand\": 3910,\n  \"brand</w>\": 2896,\n  \"branded</w>\": 18097,\n  \"brandi</w>\": 41003,\n  \"branding</w>\": 10841,\n  \"brando</w>\": 41892,\n  \"brandon\": 20423,\n  \"brandon</w>\": 9166,\n  \"brands</w>\": 8681,\n  \"brandt</w>\": 22552,\n  \"brandy</w>\": 26232,\n  \"brane</w>\": 32340,\n  \"branson</w>\": 28280,\n  \"brant\": 28951,\n  \"brant</w>\": 47592,\n  \"braries</w>\": 46377,\n  \"brary</w>\": 24520,\n  \"bras</w>\": 22611,\n  \"brasil</w>\": 18991,\n  \"brass\": 24348,\n  \"brass</w>\": 11655,\n  \"brat\": 26717,\n  \"brat</w>\": 26631,\n  \"brate</w>\": 41864,\n  \"braun\": 39129,\n  \"braun</w>\": 29309,\n  \"brave\": 25461,\n  \"brave</w>\": 7769,\n  \"braved</w>\": 47663,\n  \"bravely</w>\": 42303,\n  \"bravery</w>\": 25831,\n  \"braves</w>\": 14422,\n  \"braving</w>\": 43258,\n  \"bravo\": 38613,\n  \"bravo</w>\": 13006,\n  \"braw\": 37871,\n  \"brawl</w>\": 26066,\n  \"braxton</w>\": 37451,\n  \"bray\": 26256,\n  \"bray</w>\": 22993,\n  \"braz\": 4625,\n  \"brazil\": 47459,\n  \"brazil</w>\": 6305,\n  \"brazili\": 45697,\n  \"brazilian</w>\": 12111,\n  \"brb</w>\": 25316,\n  \"brc</w>\": 40393,\n  \"bre\": 887,\n  \"bre</w>\": 7782,\n  \"brea\": 7318,\n  \"brea</w>\": 46538,\n  \"breach</w>\": 21363,\n  \"breaches</w>\": 45173,\n  \"bread\": 18886,\n  \"bread</w>\": 5066,\n  \"breads</w>\": 43064,\n  \"break\": 2206,\n  \"break</w>\": 2568,\n  \"breakable</w>\": 30691,\n  \"breakaway</w>\": 42732,\n  \"breakdown</w>\": 14519,\n  \"breaker</w>\": 14814,\n  \"breakers</w>\": 22270,\n  \"breakfa\": 45931,\n  \"breakfast\": 30210,\n  \"breakfast</w>\": 3290,\n  \"breaking\": 14698,\n  \"breaking</w>\": 2755,\n  \"breakingbad</w>\": 38032,\n  \"breakingnews</w>\": 23837,\n  \"breakout</w>\": 16752,\n  \"breaks</w>\": 7263,\n  \"breakthrough</w>\": 18802,\n  \"breakup</w>\": 38931,\n  \"breast\": 12930,\n  \"breast</w>\": 9475,\n  \"breastcancer\": 40813,\n  \"breastcancer</w>\": 30065,\n  \"breastfeeding</w>\": 29033,\n  \"breasts</w>\": 37637,\n  \"breath\": 9508,\n  \"breath</w>\": 9576,\n  \"breathe</w>\": 11364,\n  \"breathing</w>\": 14959,\n  \"breathtaking</w>\": 14709,\n  \"brecht</w>\": 34622,\n  \"breck\": 44598,\n  \"bred\": 46929,\n  \"bred</w>\": 16008,\n  \"bree\": 7892,\n  \"bree</w>\": 37138,\n  \"breed\": 28030,\n  \"breed</w>\": 13791,\n  \"breeders</w>\": 37472,\n  \"breeding</w>\": 16544,\n  \"breeds</w>\": 29021,\n  \"breen</w>\": 48013,\n  \"brees</w>\": 46721,\n  \"breeze</w>\": 13125,\n  \"breezy</w>\": 21451,\n  \"breit\": 23864,\n  \"breitbart</w>\": 37926,\n  \"brek\": 35494,\n  \"bremen</w>\": 39861,\n  \"bren\": 5209,\n  \"brenda</w>\": 23786,\n  \"brendan\": 35134,\n  \"brendan</w>\": 15414,\n  \"brendon</w>\": 36756,\n  \"brennan</w>\": 22372,\n  \"brenner</w>\": 42941,\n  \"brent\": 31439,\n  \"brent</w>\": 16355,\n  \"brentwood</w>\": 33108,\n  \"brero</w>\": 47781,\n  \"bres</w>\": 32561,\n  \"bret\": 38020,\n  \"bret</w>\": 32548,\n  \"brethren</w>\": 43134,\n  \"breton</w>\": 32290,\n  \"brett\": 22591,\n  \"brett</w>\": 12394,\n  \"brev</w>\": 42882,\n  \"brevi\": 39475,\n  \"brew\": 5048,\n  \"brew</w>\": 7253,\n  \"brewco</w>\": 33582,\n  \"brewed</w>\": 23238,\n  \"brewer</w>\": 20756,\n  \"breweries</w>\": 35277,\n  \"brewers</w>\": 17618,\n  \"brewery</w>\": 8850,\n  \"brewing</w>\": 8275,\n  \"brewingco</w>\": 45155,\n  \"brews</w>\": 21663,\n  \"brewster</w>\": 40274,\n  \"brex\": 22726,\n  \"brexit\": 27666,\n  \"brexit</w>\": 5801,\n  \"brgy</w>\": 35983,\n  \"bri\": 1036,\n  \"bri</w>\": 18636,\n  \"bria</w>\": 35890,\n  \"brian\": 9824,\n  \"brian</w>\": 4989,\n  \"brianna</w>\": 32308,\n  \"briar</w>\": 46119,\n  \"bribe</w>\": 40042,\n  \"bribery</w>\": 41792,\n  \"bric\": 27055,\n  \"brice</w>\": 40190,\n  \"brick\": 13937,\n  \"brick</w>\": 9518,\n  \"bricks</w>\": 21029,\n  \"brics</w>\": 48196,\n  \"brid\": 16995,\n  \"bridal\": 36875,\n  \"bridal</w>\": 14284,\n  \"bride\": 18342,\n  \"bride</w>\": 8964,\n  \"brides</w>\": 18067,\n  \"bridesma\": 28356,\n  \"bridesmaid</w>\": 43399,\n  \"bridesmaids</w>\": 47754,\n  \"bridg\": 20623,\n  \"bridge\": 8647,\n  \"bridge</w>\": 2465,\n  \"bridgeport</w>\": 45201,\n  \"bridges</w>\": 11811,\n  \"bridget</w>\": 27073,\n  \"bridgewater</w>\": 38732,\n  \"bridging</w>\": 38109,\n  \"brie</w>\": 26622,\n  \"brief\": 9435,\n  \"brief</w>\": 8954,\n  \"briefed</w>\": 47326,\n  \"briefing</w>\": 12991,\n  \"briefly</w>\": 26980,\n  \"briefs</w>\": 29557,\n  \"brien</w>\": 13504,\n  \"brier</w>\": 43995,\n  \"brig\": 11081,\n  \"briga\": 46448,\n  \"brigade</w>\": 16032,\n  \"briggs</w>\": 28108,\n  \"brigh\": 6710,\n  \"bright\": 10383,\n  \"bright</w>\": 4852,\n  \"brighten</w>\": 18208,\n  \"brightening</w>\": 43929,\n  \"brighter</w>\": 18507,\n  \"brightest</w>\": 26159,\n  \"brightly</w>\": 36298,\n  \"brightness</w>\": 42280,\n  \"brighton\": 28416,\n  \"brighton</w>\": 9470,\n  \"brigitte</w>\": 44421,\n  \"brill\": 27342,\n  \"brill</w>\": 28601,\n  \"brilli\": 3821,\n  \"brilliance</w>\": 28146,\n  \"brilliant</w>\": 4106,\n  \"brilliantly</w>\": 26803,\n  \"brin\": 25620,\n  \"bring\": 11596,\n  \"bring</w>\": 2430,\n  \"bringback\": 28969,\n  \"bringbackour\": 45403,\n  \"bringing</w>\": 4777,\n  \"brings</w>\": 5138,\n  \"brink\": 39296,\n  \"brink</w>\": 28796,\n  \"brioche</w>\": 45818,\n  \"bris\": 9385,\n  \"bris</w>\": 15783,\n  \"brisban\": 30431,\n  \"brisbane\": 42932,\n  \"brisbane</w>\": 12407,\n  \"brisk</w>\": 43646,\n  \"brisket</w>\": 31920,\n  \"bristol\": 18159,\n  \"bristol</w>\": 8010,\n  \"brit\": 2318,\n  \"brit</w>\": 20066,\n  \"britain\": 40802,\n  \"britain</w>\": 6272,\n  \"britanni\": 31373,\n  \"britannia</w>\": 36188,\n  \"brite</w>\": 33827,\n  \"briti\": 8155,\n  \"british\": 8651,\n  \"british</w>\": 3504,\n  \"britishmuseum</w>\": 41858,\n  \"britney\": 37192,\n  \"britney</w>\": 21853,\n  \"britneyspears</w>\": 42990,\n  \"brits</w>\": 21832,\n  \"britt\": 10811,\n  \"britt</w>\": 25976,\n  \"brittany\": 38187,\n  \"brittany</w>\": 18818,\n  \"britton</w>\": 37422,\n  \"brium</w>\": 46079,\n  \"brixton</w>\": 30056,\n  \"bro\": 927,\n  \"bro</w>\": 4410,\n  \"broad\": 3491,\n  \"broad</w>\": 12623,\n  \"broadband</w>\": 21050,\n  \"broadcast</w>\": 8967,\n  \"broadcaster</w>\": 29005,\n  \"broadcasting</w>\": 14403,\n  \"broadcasts</w>\": 46742,\n  \"broader</w>\": 36029,\n  \"broadway\": 34599,\n  \"broadway</w>\": 9092,\n  \"broc\": 15587,\n  \"broccoli</w>\": 19094,\n  \"broch\": 21419,\n  \"brochure</w>\": 25275,\n  \"brock\": 14841,\n  \"brock</w>\": 16745,\n  \"brodie</w>\": 42150,\n  \"brody</w>\": 29608,\n  \"broke\": 42165,\n  \"broke</w>\": 6509,\n  \"broken\": 26126,\n  \"broken</w>\": 5107,\n  \"broker\": 34032,\n  \"broker</w>\": 20449,\n  \"brokerage</w>\": 41327,\n  \"brokers</w>\": 28271,\n  \"brom\": 18972,\n  \"brom</w>\": 33296,\n  \"bromance</w>\": 35353,\n  \"bromley</w>\": 35715,\n  \"bron\": 4011,\n  \"bron</w>\": 10243,\n  \"bronco\": 43488,\n  \"bronco</w>\": 34370,\n  \"broncos</w>\": 12516,\n  \"bronson</w>\": 37042,\n  \"bronte</w>\": 48936,\n  \"bronx\": 48310,\n  \"bronx</w>\": 17183,\n  \"brony</w>\": 21084,\n  \"bronze</w>\": 8459,\n  \"broo\": 5204,\n  \"brooch</w>\": 21207,\n  \"brook\": 4782,\n  \"brook</w>\": 7322,\n  \"brooke\": 28576,\n  \"brooke</w>\": 12549,\n  \"brookes</w>\": 39707,\n  \"brooklyn\": 23253,\n  \"brooklyn</w>\": 6983,\n  \"brooks\": 42779,\n  \"brooks</w>\": 9991,\n  \"broom\": 32046,\n  \"broom</w>\": 28008,\n  \"broome</w>\": 49335,\n  \"bros</w>\": 7776,\n  \"broth</w>\": 29994,\n  \"brotha</w>\": 33974,\n  \"brother\": 12697,\n  \"brother</w>\": 3157,\n  \"brotherhood</w>\": 19059,\n  \"brothers</w>\": 4548,\n  \"brou\": 27874,\n  \"brough</w>\": 21033,\n  \"brought</w>\": 4222,\n  \"brov\": 42881,\n  \"brow\": 6547,\n  \"brow</w>\": 15895,\n  \"broward</w>\": 34719,\n  \"brown\": 6315,\n  \"brown</w>\": 2866,\n  \"browne</w>\": 28440,\n  \"brownie</w>\": 23045,\n  \"brownies</w>\": 22312,\n  \"browning</w>\": 32241,\n  \"browns</w>\": 14051,\n  \"brows</w>\": 14998,\n  \"browse</w>\": 19060,\n  \"browser</w>\": 19768,\n  \"browsing</w>\": 29318,\n  \"brox</w>\": 43539,\n  \"brs</w>\": 47485,\n  \"brt</w>\": 46936,\n  \"bru\": 1698,\n  \"bru</w>\": 31028,\n  \"bruce\": 21223,\n  \"bruce</w>\": 7085,\n  \"bruh</w>\": 17575,\n  \"bruins</w>\": 14736,\n  \"bruise</w>\": 48048,\n  \"bruised</w>\": 46502,\n  \"brum\": 23862,\n  \"brum</w>\": 28078,\n  \"brun\": 6870,\n  \"brunch</w>\": 9113,\n  \"brune\": 29057,\n  \"brunei</w>\": 41898,\n  \"brunette</w>\": 35528,\n  \"bruno</w>\": 14568,\n  \"brunomars</w>\": 41156,\n  \"brunswick</w>\": 24012,\n  \"brush\": 27969,\n  \"brush</w>\": 8594,\n  \"brushed</w>\": 30298,\n  \"brushes</w>\": 21550,\n  \"brushing</w>\": 35072,\n  \"brussels</w>\": 11020,\n  \"brut</w>\": 39499,\n  \"brutal\": 42144,\n  \"brutal</w>\": 14556,\n  \"brutality</w>\": 31348,\n  \"brutally</w>\": 28132,\n  \"brute</w>\": 47552,\n  \"brux\": 49093,\n  \"bry\": 6587,\n  \"bry</w>\": 28228,\n  \"bryan\": 16134,\n  \"bryan</w>\": 10412,\n  \"bryant</w>\": 12256,\n  \"bryce</w>\": 19895,\n  \"bryn\": 36569,\n  \"bryn</w>\": 42877,\n  \"bryson</w>\": 38990,\n  \"bs\": 11783,\n  \"bs</w>\": 1329,\n  \"bsa</w>\": 46619,\n  \"bsb</w>\": 23070,\n  \"bsbi\": 41728,\n  \"bsbibotany</w>\": 42086,\n  \"bsc</w>\": 32031,\n  \"bsd</w>\": 41848,\n  \"bse</w>\": 46341,\n  \"bsf</w>\": 48314,\n  \"bsgo</w>\": 48474,\n  \"bsp</w>\": 47977,\n  \"bst</w>\": 19698,\n  \"bsu</w>\": 46385,\n  \"bt\": 3317,\n  \"bt</w>\": 4205,\n  \"btc</w>\": 10315,\n  \"btcc</w>\": 30759,\n  \"btn</w>\": 44681,\n  \"bto</w>\": 35516,\n  \"btob</w>\": 29379,\n  \"btr</w>\": 39767,\n  \"bts\": 15154,\n  \"bts</w>\": 4007,\n  \"btsarmy</w>\": 30302,\n  \"btsbbmas</w>\": 35297,\n  \"btsx\": 44971,\n  \"btv</w>\": 38541,\n  \"btw</w>\": 9520,\n  \"btwn</w>\": 28284,\n  \"bu\": 609,\n  \"bu</w>\": 5831,\n  \"bub\": 27704,\n  \"bub</w>\": 33158,\n  \"bubb\": 9739,\n  \"bubba</w>\": 28149,\n  \"bubble\": 28687,\n  \"bubble</w>\": 10799,\n  \"bubblegum</w>\": 48078,\n  \"bubbles</w>\": 17648,\n  \"bubbly</w>\": 31034,\n  \"buc\": 8207,\n  \"buccane\": 32830,\n  \"buccaneers</w>\": 38058,\n  \"buch\": 22623,\n  \"bucha</w>\": 43582,\n  \"buchan\": 27237,\n  \"buchanan</w>\": 28975,\n  \"bucharest</w>\": 37013,\n  \"buck\": 6061,\n  \"buck</w>\": 11433,\n  \"bucket\": 22596,\n  \"bucket</w>\": 10498,\n  \"bucketlist</w>\": 30778,\n  \"buckets</w>\": 27168,\n  \"buckeye</w>\": 34549,\n  \"buckeyes</w>\": 30741,\n  \"buckingham</w>\": 28736,\n  \"buckle</w>\": 21948,\n  \"buckley</w>\": 25905,\n  \"bucks</w>\": 6103,\n  \"bucky</w>\": 35916,\n  \"bucs</w>\": 20011,\n  \"bud\": 2942,\n  \"bud</w>\": 10737,\n  \"buda\": 18520,\n  \"buda</w>\": 49012,\n  \"budapest</w>\": 19202,\n  \"budd\": 7296,\n  \"buddha</w>\": 13981,\n  \"buddhism</w>\": 23744,\n  \"buddhist</w>\": 18697,\n  \"buddies</w>\": 14543,\n  \"budding</w>\": 31992,\n  \"buddy\": 40948,\n  \"buddy</w>\": 6557,\n  \"budge\": 32005,\n  \"budget\": 46758,\n  \"budget</w>\": 5639,\n  \"budgeting</w>\": 43789,\n  \"budgets</w>\": 36419,\n  \"buds</w>\": 14665,\n  \"budweiser</w>\": 40900,\n  \"buen\": 15640,\n  \"buena</w>\": 30876,\n  \"buenas</w>\": 48529,\n  \"bueno</w>\": 46202,\n  \"buenos</w>\": 26055,\n  \"buf\": 44417,\n  \"buff\": 5456,\n  \"buff</w>\": 21416,\n  \"buffal\": 25836,\n  \"buffalo\": 31231,\n  \"buffalo</w>\": 8054,\n  \"buffalob\": 38831,\n  \"buffalobills</w>\": 44352,\n  \"buffe\": 13724,\n  \"buffer</w>\": 33050,\n  \"buffet</w>\": 17829,\n  \"buffett</w>\": 34081,\n  \"buffs</w>\": 28906,\n  \"buffy</w>\": 33356,\n  \"bug\": 14453,\n  \"bug</w>\": 8162,\n  \"bugatti</w>\": 35451,\n  \"buggy</w>\": 28963,\n  \"bugs</w>\": 13850,\n  \"buh</w>\": 31406,\n  \"buhari</w>\": 14661,\n  \"buick</w>\": 22000,\n  \"buil\": 1354,\n  \"build\": 22739,\n  \"build</w>\": 3289,\n  \"builder</w>\": 14474,\n  \"builders</w>\": 17694,\n  \"building\": 21206,\n  \"building</w>\": 2307,\n  \"buildings</w>\": 8866,\n  \"builds</w>\": 16449,\n  \"buildthe\": 41497,\n  \"built\": 45824,\n  \"built</w>\": 3874,\n  \"buk\": 28084,\n  \"buk</w>\": 24317,\n  \"buka</w>\": 47778,\n  \"bukit</w>\": 39888,\n  \"bul\": 2572,\n  \"bul</w>\": 10200,\n  \"bula</w>\": 18726,\n  \"bulaga</w>\": 41575,\n  \"bular</w>\": 32187,\n  \"bulb</w>\": 22373,\n  \"bulbs</w>\": 24808,\n  \"bulgar\": 15424,\n  \"bulgaria</w>\": 20295,\n  \"bulgarian</w>\": 38693,\n  \"bulge</w>\": 47603,\n  \"bulk</w>\": 19643,\n  \"bull\": 4537,\n  \"bull</w>\": 6029,\n  \"bulldo\": 37675,\n  \"bulldog\": 34828,\n  \"bulldog</w>\": 15611,\n  \"bulldogs</w>\": 13916,\n  \"bullet\": 14340,\n  \"bullet</w>\": 12465,\n  \"bulletin</w>\": 19638,\n  \"bulletproof</w>\": 43212,\n  \"bullets</w>\": 22117,\n  \"bullied</w>\": 34689,\n  \"bullies</w>\": 39050,\n  \"bullion</w>\": 49114,\n  \"bullish</w>\": 22142,\n  \"bullock</w>\": 33198,\n  \"bullpen</w>\": 38081,\n  \"bulls</w>\": 10313,\n  \"bully\": 43111,\n  \"bully</w>\": 20190,\n  \"bullying</w>\": 13548,\n  \"bum\": 27683,\n  \"bum</w>\": 14226,\n  \"bumble\": 25585,\n  \"bumble</w>\": 39303,\n  \"bumblebee</w>\": 36911,\n  \"bummed</w>\": 48456,\n  \"bump\": 9783,\n  \"bump</w>\": 15877,\n  \"bumped</w>\": 22495,\n  \"bumper</w>\": 17881,\n  \"bumping</w>\": 40196,\n  \"bumps</w>\": 21115,\n  \"bun\": 2591,\n  \"bun</w>\": 13665,\n  \"bunch</w>\": 7796,\n  \"bund</w>\": 41905,\n  \"bunde\": 18841,\n  \"bundesliga</w>\": 21582,\n  \"bundle</w>\": 11793,\n  \"bundled</w>\": 47228,\n  \"bundles</w>\": 29834,\n  \"bundy</w>\": 37332,\n  \"bung</w>\": 44748,\n  \"bungal\": 29549,\n  \"bungalow</w>\": 33696,\n  \"bunk</w>\": 41236,\n  \"bunker</w>\": 23615,\n  \"bunnies</w>\": 28998,\n  \"bunny\": 34198,\n  \"bunny</w>\": 9258,\n  \"buns</w>\": 22235,\n  \"bunting</w>\": 30695,\n  \"buon\": 31350,\n  \"buon</w>\": 48498,\n  \"bur\": 1039,\n  \"bur</w>\": 17362,\n  \"burbank</w>\": 34862,\n  \"burberry</w>\": 30412,\n  \"burch</w>\": 44588,\n  \"burden</w>\": 18687,\n  \"bure\": 11902,\n  \"bureau\": 32098,\n  \"bureau</w>\": 15400,\n  \"burg\": 19505,\n  \"burg</w>\": 3499,\n  \"burge\": 20522,\n  \"burger\": 22356,\n  \"burger</w>\": 6548,\n  \"burgers</w>\": 13007,\n  \"burgess</w>\": 26211,\n  \"burgh\": 18141,\n  \"burgh</w>\": 4965,\n  \"burgl\": 25554,\n  \"burglar</w>\": 43365,\n  \"burglary</w>\": 32573,\n  \"burgring</w>\": 40823,\n  \"burgundy</w>\": 23650,\n  \"buri\": 46348,\n  \"buri</w>\": 42614,\n  \"burial</w>\": 22012,\n  \"buried</w>\": 14233,\n  \"burk\": 48822,\n  \"burke</w>\": 15340,\n  \"burle\": 27891,\n  \"burlesque</w>\": 33732,\n  \"burlington</w>\": 23370,\n  \"burma</w>\": 30305,\n  \"burmese</w>\": 47906,\n  \"burn\": 7934,\n  \"burn</w>\": 4285,\n  \"burnaby</w>\": 47541,\n  \"burne</w>\": 27246,\n  \"burned</w>\": 15022,\n  \"burner</w>\": 23243,\n  \"burnett</w>\": 28558,\n  \"burnham</w>\": 36111,\n  \"burning\": 46107,\n  \"burning</w>\": 8405,\n  \"burnley</w>\": 24653,\n  \"burnout</w>\": 36078,\n  \"burns</w>\": 10234,\n  \"burnt</w>\": 15185,\n  \"burr</w>\": 30879,\n  \"burrell</w>\": 49045,\n  \"burrito</w>\": 23473,\n  \"burritos</w>\": 47245,\n  \"burroughs</w>\": 41337,\n  \"burrows</w>\": 44846,\n  \"burst</w>\": 13005,\n  \"bursting</w>\": 32566,\n  \"bursts</w>\": 37026,\n  \"burt</w>\": 27162,\n  \"burton\": 42354,\n  \"burton</w>\": 12704,\n  \"burundi</w>\": 33595,\n  \"bury\": 12276,\n  \"bury</w>\": 3899,\n  \"burys</w>\": 32362,\n  \"bus\": 1319,\n  \"bus</w>\": 2840,\n  \"busan</w>\": 40172,\n  \"busc\": 35000,\n  \"busch</w>\": 20475,\n  \"buses</w>\": 12879,\n  \"bush\": 11191,\n  \"bush</w>\": 6867,\n  \"bushes</w>\": 37578,\n  \"busiest</w>\": 32764,\n  \"busine\": 4598,\n  \"busines\": 25364,\n  \"business\": 8346,\n  \"business</w>\": 1716,\n  \"businesses</w>\": 7287,\n  \"businessman</w>\": 25635,\n  \"buss</w>\": 47764,\n  \"bust\": 31299,\n  \"bust</w>\": 9959,\n  \"busted</w>\": 18643,\n  \"buster\": 37219,\n  \"buster</w>\": 12094,\n  \"busters</w>\": 16362,\n  \"busting</w>\": 29622,\n  \"busy\": 39332,\n  \"busy</w>\": 4354,\n  \"but\": 2201,\n  \"but</w>\": 767,\n  \"butch</w>\": 35102,\n  \"butcher</w>\": 18732,\n  \"butchers</w>\": 42334,\n  \"bute</w>\": 39240,\n  \"butes</w>\": 14630,\n  \"butler\": 35867,\n  \"butler</w>\": 10702,\n  \"butt\": 12500,\n  \"butt</w>\": 31523,\n  \"butte</w>\": 31678,\n  \"butter\": 5427,\n  \"butter</w>\": 6952,\n  \"butterflies</w>\": 16232,\n  \"butterfly</w>\": 9738,\n  \"buttermilk</w>\": 40180,\n  \"butternut</w>\": 36867,\n  \"buttery</w>\": 45535,\n  \"button\": 45480,\n  \"button</w>\": 8007,\n  \"buttons</w>\": 16188,\n  \"butts</w>\": 25309,\n  \"buu\": 42313,\n  \"buuren</w>\": 47752,\n  \"buxton</w>\": 41370,\n  \"buy\": 11632,\n  \"buy</w>\": 2131,\n  \"buyer</w>\": 14682,\n  \"buyers</w>\": 14663,\n  \"buying</w>\": 6566,\n  \"buys</w>\": 15560,\n  \"buzz\": 7866,\n  \"buzz</w>\": 8706,\n  \"buzzard</w>\": 47434,\n  \"buzzer</w>\": 38064,\n  \"buzzfeed</w>\": 26613,\n  \"buzzing</w>\": 18511,\n  \"bv\": 18958,\n  \"bv</w>\": 35861,\n  \"bvb</w>\": 22454,\n  \"bw\": 17672,\n  \"bw</w>\": 15120,\n  \"bway</w>\": 26652,\n  \"bwfc</w>\": 40918,\n  \"bwo\": 45902,\n  \"bx</w>\": 33633,\n  \"by\": 1713,\n  \"by</w>\": 638,\n  \"bye\": 20076,\n  \"bye</w>\": 4460,\n  \"byes</w>\": 47958,\n  \"byl</w>\": 34994,\n  \"byn\": 46917,\n  \"byn</w>\": 11890,\n  \"byo\": 28039,\n  \"bypass</w>\": 26530,\n  \"byr\": 15534,\n  \"byrd</w>\": 30369,\n  \"byrne</w>\": 19676,\n  \"byron\": 43504,\n  \"byron</w>\": 19775,\n  \"bys</w>\": 26740,\n  \"bystand\": 46138,\n  \"byte</w>\": 42798,\n  \"bytes</w>\": 39538,\n  \"bythe\": 36621,\n  \"byu\": 41072,\n  \"byu</w>\": 23770,\n  \"byz\": 35406,\n  \"byzantine</w>\": 44081,\n  \"bz</w>\": 13631,\n  \"bÃ©\": 40365,\n  \"bÃ¼\": 38706,\n  \"c\": 66,\n  \"c</w>\": 322,\n  \"ca\": 772,\n  \"ca</w>\": 1684,\n  \"caa</w>\": 19316,\n  \"cab\": 3033,\n  \"cab</w>\": 11912,\n  \"cabaret</w>\": 26263,\n  \"cabbage</w>\": 18407,\n  \"cabe</w>\": 32731,\n  \"cabello</w>\": 34371,\n  \"caber\": 29062,\n  \"cabernet</w>\": 33730,\n  \"cabin</w>\": 14178,\n  \"cabine\": 23354,\n  \"cabinet</w>\": 9937,\n  \"cabinets</w>\": 33083,\n  \"cabins</w>\": 48455,\n  \"cable</w>\": 7925,\n  \"cables</w>\": 22408,\n  \"cabo\": 37318,\n  \"cabo</w>\": 28370,\n  \"cabrera</w>\": 42338,\n  \"cabs</w>\": 42048,\n  \"cac\": 8298,\n  \"cac</w>\": 23872,\n  \"cacao</w>\": 38022,\n  \"cache</w>\": 28993,\n  \"caching</w>\": 40655,\n  \"cactus</w>\": 19794,\n  \"cad\": 6297,\n  \"cad</w>\": 20166,\n  \"caday</w>\": 34187,\n  \"cadbury</w>\": 44698,\n  \"caddy</w>\": 41521,\n  \"cade\": 10497,\n  \"cade</w>\": 17306,\n  \"cadet</w>\": 22764,\n  \"cadets</w>\": 19160,\n  \"cadillac</w>\": 18156,\n  \"cae</w>\": 49264,\n  \"caer\": 28298,\n  \"caes\": 15740,\n  \"caesar</w>\": 21642,\n  \"caesars</w>\": 42162,\n  \"caf\": 3471,\n  \"caf</w>\": 20867,\n  \"cafc</w>\": 30748,\n  \"cafe\": 15201,\n  \"cafe</w>\": 4979,\n  \"cafes</w>\": 40166,\n  \"cafeteria</w>\": 32817,\n  \"caffe\": 18258,\n  \"caffe</w>\": 45416,\n  \"caffeine</w>\": 22487,\n  \"cafÃ©</w>\": 15304,\n  \"cag\": 15714,\n  \"cage</w>\": 11838,\n  \"cages</w>\": 37939,\n  \"cah</w>\": 40519,\n  \"cahill</w>\": 33185,\n  \"cai\": 38971,\n  \"cai</w>\": 36116,\n  \"cain</w>\": 13747,\n  \"caine</w>\": 16799,\n  \"cair\": 15804,\n  \"cair</w>\": 46659,\n  \"cairn\": 31264,\n  \"cairn</w>\": 42467,\n  \"cairngor\": 44067,\n  \"cairns</w>\": 32941,\n  \"cairo</w>\": 19615,\n  \"cait\": 14116,\n  \"caitlin\": 47768,\n  \"caitlin</w>\": 26809,\n  \"caitlyn</w>\": 35763,\n  \"cajun\": 43425,\n  \"cajun</w>\": 33044,\n  \"cak</w>\": 42986,\n  \"cake\": 15295,\n  \"cake</w>\": 2972,\n  \"cakeday</w>\": 46207,\n  \"cakes</w>\": 5950,\n  \"cal\": 1198,\n  \"cal</w>\": 6372,\n  \"cala</w>\": 32133,\n  \"calab\": 31795,\n  \"calais</w>\": 39886,\n  \"calam\": 28841,\n  \"calc</w>\": 45055,\n  \"calci\": 22824,\n  \"calcium</w>\": 27815,\n  \"calcu\": 15328,\n  \"calcul\": 15734,\n  \"calculate</w>\": 37656,\n  \"calculated</w>\": 40688,\n  \"calculations</w>\": 44605,\n  \"calculator</w>\": 26093,\n  \"calculus</w>\": 35104,\n  \"calcutta</w>\": 42901,\n  \"calder\": 29372,\n  \"calder</w>\": 36817,\n  \"caldwell</w>\": 30484,\n  \"cale</w>\": 32674,\n  \"caleb</w>\": 19619,\n  \"caled\": 28421,\n  \"calend\": 6057,\n  \"calendar</w>\": 7122,\n  \"calendars</w>\": 17229,\n  \"calf</w>\": 17508,\n  \"calgary\": 27415,\n  \"calgary</w>\": 10797,\n  \"calhoun</w>\": 38929,\n  \"cali\": 2857,\n  \"cali</w>\": 16337,\n  \"caliber</w>\": 32820,\n  \"calibr\": 32597,\n  \"calico</w>\": 45379,\n  \"calif</w>\": 30839,\n  \"califor\": 3526,\n  \"californi\": 21303,\n  \"california</w>\": 3729,\n  \"call\": 7950,\n  \"call</w>\": 1620,\n  \"calla\": 20658,\n  \"callahan</w>\": 43313,\n  \"callaway</w>\": 42596,\n  \"callback</w>\": 44764,\n  \"calle\": 47699,\n  \"calle</w>\": 38144,\n  \"called</w>\": 2726,\n  \"caller</w>\": 30666,\n  \"calli\": 16338,\n  \"callie</w>\": 36512,\n  \"calligraphy</w>\": 27775,\n  \"calling</w>\": 4597,\n  \"callister</w>\": 49026,\n  \"callme\": 42449,\n  \"callof\": 41280,\n  \"calls</w>\": 4572,\n  \"callum</w>\": 23224,\n  \"calm\": 34990,\n  \"calm</w>\": 7011,\n  \"calming</w>\": 30690,\n  \"calorie</w>\": 32679,\n  \"calories</w>\": 18029,\n  \"cals</w>\": 47714,\n  \"calum</w>\": 16405,\n  \"calvary</w>\": 40169,\n  \"calvert</w>\": 47134,\n  \"calves</w>\": 31857,\n  \"calvin\": 27642,\n  \"calvin</w>\": 17345,\n  \"caly\": 10244,\n  \"calyp\": 29851,\n  \"cam\": 1004,\n  \"cam</w>\": 5982,\n  \"camar\": 31991,\n  \"camber\": 44362,\n  \"cambo\": 14662,\n  \"cambodia</w>\": 17347,\n  \"cambridge\": 24651,\n  \"cambridge</w>\": 9334,\n  \"cambridgeshire</w>\": 46139,\n  \"camden\": 38735,\n  \"camden</w>\": 17984,\n  \"came</w>\": 1986,\n  \"camel\": 27005,\n  \"camel</w>\": 21914,\n  \"camels</w>\": 41357,\n  \"cameo</w>\": 19492,\n  \"camer\": 4961,\n  \"camera</w>\": 3934,\n  \"cameraman</w>\": 43347,\n  \"cameras</w>\": 12172,\n  \"camero\": 20320,\n  \"cameron\": 19634,\n  \"cameron</w>\": 8057,\n  \"camerondallas</w>\": 40587,\n  \"cameroon</w>\": 24061,\n  \"camil\": 37745,\n  \"camila</w>\": 19919,\n  \"camilla</w>\": 38897,\n  \"camille</w>\": 26741,\n  \"camino</w>\": 28529,\n  \"camo\": 28702,\n  \"camo</w>\": 19716,\n  \"camogie</w>\": 39547,\n  \"camou\": 23588,\n  \"camoufla\": 23667,\n  \"camouflage</w>\": 29049,\n  \"camp\": 2854,\n  \"camp</w>\": 2877,\n  \"campa\": 2793,\n  \"campaig\": 9448,\n  \"campaign\": 44524,\n  \"campaign</w>\": 3193,\n  \"campaigner</w>\": 46364,\n  \"campaigners</w>\": 40272,\n  \"campaigning</w>\": 19594,\n  \"campaigns</w>\": 15669,\n  \"campan\": 31765,\n  \"campbell\": 29094,\n  \"campbell</w>\": 8806,\n  \"campe\": 16672,\n  \"campeon\": 49109,\n  \"campeones</w>\": 30105,\n  \"camper\": 41914,\n  \"camper</w>\": 24522,\n  \"campers</w>\": 26619,\n  \"campfire</w>\": 32530,\n  \"campground</w>\": 46969,\n  \"camping</w>\": 9982,\n  \"campo</w>\": 27600,\n  \"campos</w>\": 48077,\n  \"camps</w>\": 12806,\n  \"campsite</w>\": 44243,\n  \"campu\": 19687,\n  \"campus</w>\": 4560,\n  \"campuses</w>\": 31895,\n  \"camra</w>\": 46155,\n  \"camry</w>\": 46472,\n  \"cams</w>\": 32590,\n  \"can\": 950,\n  \"can</w>\": 753,\n  \"cana</w>\": 28341,\n  \"canad\": 13193,\n  \"canada</w>\": 2698,\n  \"canadaday</w>\": 39800,\n  \"canadi\": 4329,\n  \"canadian\": 22160,\n  \"canadian</w>\": 5255,\n  \"canadians</w>\": 18989,\n  \"canadiens</w>\": 40932,\n  \"canal\": 28585,\n  \"canal</w>\": 9535,\n  \"canals</w>\": 38483,\n  \"canaria</w>\": 47117,\n  \"canary\": 40409,\n  \"canary</w>\": 24523,\n  \"canberra</w>\": 16719,\n  \"canc\": 43189,\n  \"cancel\": 12026,\n  \"cancel</w>\": 21546,\n  \"canceled</w>\": 25874,\n  \"cancell\": 28027,\n  \"cancellation</w>\": 38765,\n  \"cancelled</w>\": 13270,\n  \"cancels</w>\": 34089,\n  \"cancer\": 12690,\n  \"cancer</w>\": 3148,\n  \"cancers</w>\": 33201,\n  \"cancun</w>\": 34721,\n  \"cand\": 4986,\n  \"candace</w>\": 45623,\n  \"candel\": 47834,\n  \"candi\": 6034,\n  \"candice</w>\": 30024,\n  \"candid\": 7884,\n  \"candid</w>\": 19206,\n  \"candidacy</w>\": 46248,\n  \"candidate</w>\": 6475,\n  \"candidates</w>\": 8619,\n  \"candied</w>\": 43982,\n  \"candies</w>\": 46305,\n  \"candle\": 18995,\n  \"candle</w>\": 12674,\n  \"candlelight</w>\": 34724,\n  \"candles</w>\": 15472,\n  \"candy\": 20741,\n  \"candy</w>\": 6417,\n  \"cane\": 23644,\n  \"cane</w>\": 14716,\n  \"canelo</w>\": 43210,\n  \"canes</w>\": 21902,\n  \"cani\": 35592,\n  \"canine</w>\": 27380,\n  \"cann\": 4139,\n  \"cann</w>\": 23709,\n  \"cannab\": 7577,\n  \"cannabis\": 31837,\n  \"cannabis</w>\": 8861,\n  \"canne\": 44252,\n  \"canned</w>\": 27290,\n  \"cannes</w>\": 13773,\n  \"canni\": 26389,\n  \"canning</w>\": 38621,\n  \"cannon\": 28771,\n  \"cannon</w>\": 15661,\n  \"cannons</w>\": 46269,\n  \"cannot</w>\": 4785,\n  \"canny</w>\": 26986,\n  \"cano\": 31668,\n  \"cano</w>\": 25937,\n  \"canoe</w>\": 23503,\n  \"canola</w>\": 40389,\n  \"canon\": 17749,\n  \"canon</w>\": 9310,\n  \"canopy</w>\": 26061,\n  \"cans</w>\": 13707,\n  \"cant\": 13395,\n  \"cant</w>\": 5784,\n  \"canteen</w>\": 39230,\n  \"canter\": 19301,\n  \"canterbury</w>\": 22271,\n  \"canti\": 42845,\n  \"cantina</w>\": 47472,\n  \"canton\": 37735,\n  \"canton</w>\": 25363,\n  \"cantore</w>\": 41769,\n  \"cantwait</w>\": 33760,\n  \"canu\": 20171,\n  \"canucks</w>\": 24321,\n  \"canv\": 30714,\n  \"canvas\": 22441,\n  \"canvas</w>\": 7483,\n  \"canvass</w>\": 40054,\n  \"canvassing</w>\": 33783,\n  \"cany\": 47674,\n  \"canyon\": 41246,\n  \"canyon</w>\": 9755,\n  \"cao</w>\": 29207,\n  \"cap\": 1289,\n  \"cap</w>\": 3938,\n  \"capabilities</w>\": 19512,\n  \"capability</w>\": 25885,\n  \"capable</w>\": 14742,\n  \"capac\": 24665,\n  \"capacity</w>\": 8970,\n  \"capcom</w>\": 28342,\n  \"cape\": 10288,\n  \"cape</w>\": 6631,\n  \"capecod</w>\": 41339,\n  \"capes</w>\": 38785,\n  \"capetown</w>\": 20059,\n  \"capit\": 6889,\n  \"capita</w>\": 41833,\n  \"capital\": 11198,\n  \"capital</w>\": 5439,\n  \"capitalism</w>\": 20068,\n  \"capitalist</w>\": 37015,\n  \"capitals</w>\": 29579,\n  \"capitol\": 43880,\n  \"capitol</w>\": 11375,\n  \"capo</w>\": 45477,\n  \"capp\": 16718,\n  \"capped</w>\": 24659,\n  \"capping</w>\": 42656,\n  \"cappuccino</w>\": 37402,\n  \"capri\": 48699,\n  \"capri</w>\": 30982,\n  \"capric\": 28667,\n  \"capricorn</w>\": 46314,\n  \"caps</w>\": 23185,\n  \"capsu\": 15608,\n  \"capsul\": 40341,\n  \"capsule</w>\": 20627,\n  \"capsules</w>\": 32870,\n  \"capt\": 45815,\n  \"capt</w>\": 17369,\n  \"captain\": 14958,\n  \"captain</w>\": 4621,\n  \"captainamerica</w>\": 46229,\n  \"captainmarvel</w>\": 48492,\n  \"captains</w>\": 18706,\n  \"caption</w>\": 11327,\n  \"captions</w>\": 41878,\n  \"captiv\": 19776,\n  \"captivating</w>\": 30580,\n  \"captive</w>\": 29038,\n  \"captivity</w>\": 41141,\n  \"capture</w>\": 8818,\n  \"captured</w>\": 8020,\n  \"captures</w>\": 15305,\n  \"capturing</w>\": 19548,\n  \"capu\": 44241,\n  \"car\": 811,\n  \"car</w>\": 1615,\n  \"cara</w>\": 20016,\n  \"carab\": 32251,\n  \"carac\": 30029,\n  \"caracas</w>\": 45854,\n  \"caramel</w>\": 14788,\n  \"carameli\": 41739,\n  \"caramelized</w>\": 43854,\n  \"carat</w>\": 32981,\n  \"carav\": 13814,\n  \"caravan</w>\": 18566,\n  \"carb</w>\": 21379,\n  \"carbo\": 43235,\n  \"carbon\": 14038,\n  \"carbon</w>\": 7549,\n  \"carbs</w>\": 29313,\n  \"carcin\": 31587,\n  \"carcinoma</w>\": 46810,\n  \"card\": 10793,\n  \"card</w>\": 2601,\n  \"cardam\": 49008,\n  \"cardboard</w>\": 19845,\n  \"cardi\": 6211,\n  \"cardi</w>\": 29677,\n  \"cardiac</w>\": 21256,\n  \"cardiff\": 22488,\n  \"cardiff</w>\": 9781,\n  \"cardigan</w>\": 30501,\n  \"cardin\": 8457,\n  \"cardinal\": 46310,\n  \"cardinal</w>\": 16472,\n  \"cardinals</w>\": 12837,\n  \"cardio\": 15003,\n  \"cardio</w>\": 23455,\n  \"cardiology</w>\": 37276,\n  \"cardiovascular</w>\": 29291,\n  \"cardo</w>\": 40625,\n  \"cards</w>\": 4094,\n  \"care\": 2050,\n  \"care</w>\": 1776,\n  \"cared</w>\": 27675,\n  \"career\": 20609,\n  \"career</w>\": 3061,\n  \"careers</w>\": 10090,\n  \"careful</w>\": 11999,\n  \"carefully</w>\": 15789,\n  \"caregi\": 22042,\n  \"caregiver</w>\": 46372,\n  \"caregivers</w>\": 35909,\n  \"careless</w>\": 47325,\n  \"carers</w>\": 26484,\n  \"cares</w>\": 10968,\n  \"caretaker</w>\": 48037,\n  \"carey</w>\": 14895,\n  \"cargo</w>\": 12490,\n  \"cari\": 18497,\n  \"cari</w>\": 37273,\n  \"carib\": 9757,\n  \"caribbean</w>\": 10368,\n  \"caribou</w>\": 42135,\n  \"caric\": 25337,\n  \"caricature</w>\": 38857,\n  \"carina</w>\": 44357,\n  \"caring</w>\": 13083,\n  \"carl\": 8273,\n  \"carl</w>\": 9482,\n  \"carla</w>\": 25552,\n  \"carleton</w>\": 46496,\n  \"carlin</w>\": 47559,\n  \"carlisle</w>\": 23276,\n  \"carlo\": 17861,\n  \"carlo</w>\": 15266,\n  \"carlos</w>\": 9538,\n  \"carlow</w>\": 44745,\n  \"carls\": 39635,\n  \"carlson</w>\": 24114,\n  \"carlton</w>\": 18934,\n  \"carly\": 23166,\n  \"carly</w>\": 22689,\n  \"carlyle</w>\": 46555,\n  \"carmel\": 30757,\n  \"carmel</w>\": 25601,\n  \"carmen\": 41427,\n  \"carmen</w>\": 18834,\n  \"carmichael</w>\": 41657,\n  \"carn\": 21597,\n  \"carnage</w>\": 31385,\n  \"carnation</w>\": 44577,\n  \"carnaval</w>\": 47238,\n  \"carne\": 17053,\n  \"carne</w>\": 42885,\n  \"carnegie</w>\": 25287,\n  \"carney</w>\": 34194,\n  \"carni\": 8438,\n  \"carnival\": 36708,\n  \"carnival</w>\": 10577,\n  \"caro\": 30317,\n  \"caro</w>\": 29344,\n  \"carol\": 4242,\n  \"carol</w>\": 11489,\n  \"carole</w>\": 31955,\n  \"carolin\": 26418,\n  \"carolina</w>\": 7027,\n  \"caroline\": 31064,\n  \"caroline</w>\": 12641,\n  \"carols</w>\": 33269,\n  \"carolyn</w>\": 25825,\n  \"carou\": 32224,\n  \"carousel</w>\": 36665,\n  \"carp</w>\": 26085,\n  \"carpen\": 15584,\n  \"carpenter</w>\": 18475,\n  \"carpet</w>\": 6922,\n  \"carpets</w>\": 34612,\n  \"carr\": 26951,\n  \"carr</w>\": 17136,\n  \"carra\": 32332,\n  \"carre\": 31114,\n  \"carrera</w>\": 32952,\n  \"carri\": 4739,\n  \"carriage\": 47885,\n  \"carriage</w>\": 21087,\n  \"carrick</w>\": 44052,\n  \"carrie\": 30334,\n  \"carrie</w>\": 15848,\n  \"carried</w>\": 12960,\n  \"carrier</w>\": 12308,\n  \"carriers</w>\": 26865,\n  \"carries</w>\": 17982,\n  \"carrieunderwood</w>\": 47338,\n  \"carrington</w>\": 48759,\n  \"carroll\": 41911,\n  \"carroll</w>\": 14893,\n  \"carrot</w>\": 15435,\n  \"carrots</w>\": 19299,\n  \"carry\": 31863,\n  \"carry</w>\": 6998,\n  \"carrying</w>\": 9920,\n  \"cars</w>\": 3346,\n  \"carsforsale</w>\": 45222,\n  \"carson\": 41766,\n  \"carson</w>\": 13171,\n  \"cart\": 27705,\n  \"cart</w>\": 13065,\n  \"cartag\": 45042,\n  \"cartagena</w>\": 47157,\n  \"carte</w>\": 44949,\n  \"cartel</w>\": 30529,\n  \"carter\": 27330,\n  \"carter</w>\": 7260,\n  \"cartier</w>\": 32951,\n  \"carto\": 5487,\n  \"carton</w>\": 41812,\n  \"cartoon\": 33082,\n  \"cartoon</w>\": 7651,\n  \"cartoonist</w>\": 30793,\n  \"cartoons</w>\": 17673,\n  \"cartri\": 47084,\n  \"cartridge</w>\": 29432,\n  \"cartridges</w>\": 49249,\n  \"carts</w>\": 27581,\n  \"cartunesapp</w>\": 32888,\n  \"caruso</w>\": 45192,\n  \"carve</w>\": 40152,\n  \"carved</w>\": 15127,\n  \"carver</w>\": 28850,\n  \"carving</w>\": 19428,\n  \"carvings</w>\": 48123,\n  \"cary</w>\": 22844,\n  \"cas\": 1671,\n  \"cas</w>\": 13831,\n  \"casa</w>\": 14643,\n  \"casablanc\": 36572,\n  \"casablanca</w>\": 41950,\n  \"casc\": 36714,\n  \"casca\": 43296,\n  \"cascade</w>\": 29065,\n  \"cascades</w>\": 46454,\n  \"case\": 17698,\n  \"case</w>\": 2068,\n  \"cases</w>\": 6888,\n  \"casey\": 24899,\n  \"casey</w>\": 12836,\n  \"cash\": 11050,\n  \"cash</w>\": 5131,\n  \"cashback</w>\": 36368,\n  \"cashe\": 32233,\n  \"cashew</w>\": 39531,\n  \"cashi\": 29517,\n  \"cashier</w>\": 34547,\n  \"cashmere</w>\": 34566,\n  \"casi\": 38350,\n  \"casino</w>\": 10473,\n  \"casio</w>\": 32261,\n  \"cask</w>\": 26299,\n  \"casm</w>\": 35198,\n  \"casper</w>\": 35892,\n  \"cass</w>\": 22556,\n  \"cassandra</w>\": 35289,\n  \"casser\": 31093,\n  \"casserole</w>\": 36045,\n  \"cassette</w>\": 19717,\n  \"cassi\": 14942,\n  \"cassidy</w>\": 21757,\n  \"cassie</w>\": 29323,\n  \"cassini</w>\": 46554,\n  \"cast\": 2509,\n  \"cast</w>\": 1970,\n  \"caste</w>\": 32693,\n  \"casted</w>\": 33838,\n  \"castel\": 43306,\n  \"castell\": 31792,\n  \"caster\": 32101,\n  \"caster</w>\": 8449,\n  \"casters</w>\": 29721,\n  \"castic</w>\": 47737,\n  \"castillo</w>\": 30813,\n  \"casting</w>\": 7087,\n  \"castle\": 12496,\n  \"castle</w>\": 3540,\n  \"castles</w>\": 24766,\n  \"castro</w>\": 16950,\n  \"casts</w>\": 10595,\n  \"casu\": 15345,\n  \"casual</w>\": 10129,\n  \"casually</w>\": 18840,\n  \"casualties</w>\": 30244,\n  \"casualty</w>\": 31222,\n  \"cat\": 1481,\n  \"cat</w>\": 2368,\n  \"cata</w>\": 42279,\n  \"catal\": 12792,\n  \"catalan</w>\": 30532,\n  \"catalina</w>\": 36576,\n  \"catalo\": 34740,\n  \"catalog</w>\": 20036,\n  \"catalogue</w>\": 20985,\n  \"catalonia</w>\": 27039,\n  \"catalunya</w>\": 44132,\n  \"cataly\": 15894,\n  \"catalyst</w>\": 25387,\n  \"catan</w>\": 45893,\n  \"catap\": 39514,\n  \"catar\": 35801,\n  \"catastro\": 22736,\n  \"catastrophe</w>\": 41422,\n  \"catastrophic</w>\": 34448,\n  \"catch\": 18901,\n  \"catch</w>\": 3042,\n  \"catcher</w>\": 15965,\n  \"catchers</w>\": 39060,\n  \"catches</w>\": 17213,\n  \"catching</w>\": 8617,\n  \"catchy</w>\": 37114,\n  \"catday</w>\": 32243,\n  \"cate\": 6357,\n  \"cate</w>\": 24510,\n  \"cated</w>\": 31823,\n  \"categor\": 17006,\n  \"categori\": 40117,\n  \"categories</w>\": 19971,\n  \"category</w>\": 9432,\n  \"cater\": 16634,\n  \"cater</w>\": 38101,\n  \"catering</w>\": 16697,\n  \"caterpillar</w>\": 27111,\n  \"catfish</w>\": 26077,\n  \"cath\": 9196,\n  \"cath</w>\": 30811,\n  \"cathar\": 43784,\n  \"cathe\": 7174,\n  \"cathedr\": 46370,\n  \"cathedral</w>\": 7865,\n  \"catherine\": 35035,\n  \"catherine</w>\": 12339,\n  \"catho\": 7595,\n  \"cathol\": 16315,\n  \"catholic\": 20382,\n  \"catholic</w>\": 7757,\n  \"catholics</w>\": 36808,\n  \"cathy\": 40326,\n  \"cathy</w>\": 22731,\n  \"cation</w>\": 21367,\n  \"cato</w>\": 33558,\n  \"cats\": 38800,\n  \"cats</w>\": 3989,\n  \"catsofinstagram</w>\": 39901,\n  \"catsoftwitter</w>\": 17273,\n  \"catt\": 37339,\n  \"cattle\": 48799,\n  \"cattle</w>\": 13644,\n  \"caturday</w>\": 20892,\n  \"catwalk</w>\": 36565,\n  \"catwoman</w>\": 47251,\n  \"cau\": 1121,\n  \"cau</w>\": 45529,\n  \"caucus</w>\": 18847,\n  \"caught</w>\": 4520,\n  \"caul\": 23460,\n  \"cauley</w>\": 41682,\n  \"caulfield</w>\": 44906,\n  \"cauli\": 20123,\n  \"cauliflower</w>\": 23802,\n  \"cause\": 18982,\n  \"cause</w>\": 1394,\n  \"caused</w>\": 8940,\n  \"causes</w>\": 9775,\n  \"causeway</w>\": 35034,\n  \"causing</w>\": 10779,\n  \"caution</w>\": 15656,\n  \"cautious</w>\": 36579,\n  \"cav\": 4942,\n  \"cav</w>\": 45935,\n  \"cava</w>\": 48682,\n  \"caval\": 24537,\n  \"cavali\": 20783,\n  \"cavalier</w>\": 44488,\n  \"cavaliers</w>\": 30194,\n  \"cavalry</w>\": 32467,\n  \"cave\": 25441,\n  \"cave</w>\": 9654,\n  \"cavendish</w>\": 42945,\n  \"caver\": 41487,\n  \"caves</w>\": 22096,\n  \"cavi\": 27360,\n  \"caviar</w>\": 31228,\n  \"cavill</w>\": 40492,\n  \"cavity</w>\": 43156,\n  \"cavs</w>\": 16800,\n  \"caw\": 38405,\n  \"caw</w>\": 43804,\n  \"cawx</w>\": 26739,\n  \"cay\": 11876,\n  \"cay</w>\": 37399,\n  \"cayenne</w>\": 43650,\n  \"cayman</w>\": 33737,\n  \"caz\": 48451,\n  \"cb\": 4034,\n  \"cb</w>\": 8830,\n  \"cba</w>\": 38472,\n  \"cbb</w>\": 31487,\n  \"cbc\": 14096,\n  \"cbc</w>\": 14523,\n  \"cbd</w>\": 13176,\n  \"cbe</w>\": 43639,\n  \"cbi</w>\": 30875,\n  \"cbj</w>\": 35608,\n  \"cbn</w>\": 26579,\n  \"cbp</w>\": 46723,\n  \"cbr</w>\": 28762,\n  \"cbs\": 16788,\n  \"cbs</w>\": 8009,\n  \"cc\": 2976,\n  \"cc</w>\": 2021,\n  \"cca</w>\": 17987,\n  \"ccc</w>\": 21856,\n  \"ccd</w>\": 48556,\n  \"ccg</w>\": 37755,\n  \"cch\": 21789,\n  \"cchini</w>\": 28467,\n  \"cci\": 32942,\n  \"cci</w>\": 8196,\n  \"ccl</w>\": 43773,\n  \"ccm</w>\": 40435,\n  \"cco</w>\": 28786,\n  \"ccot</w>\": 24950,\n  \"ccp</w>\": 43045,\n  \"ccs</w>\": 30400,\n  \"cctv</w>\": 23097,\n  \"ccu</w>\": 49023,\n  \"cd\": 4308,\n  \"cd</w>\": 4480,\n  \"cda</w>\": 45565,\n  \"cdc\": 41098,\n  \"cdc</w>\": 25779,\n  \"cdn\": 8886,\n  \"cdn</w>\": 26802,\n  \"cdnpoli</w>\": 11645,\n  \"cdo</w>\": 47187,\n  \"cdp</w>\": 39624,\n  \"cds</w>\": 20784,\n  \"cdt</w>\": 18455,\n  \"ce\": 685,\n  \"ce</w>\": 629,\n  \"cea</w>\": 28355,\n  \"cean\": 34409,\n  \"cean</w>\": 37295,\n  \"cease\": 32856,\n  \"cease</w>\": 25499,\n  \"ceasefire</w>\": 38291,\n  \"cebu</w>\": 20146,\n  \"cec\": 29694,\n  \"cec</w>\": 40029,\n  \"cecil\": 26987,\n  \"cecil</w>\": 27169,\n  \"cecilia</w>\": 35440,\n  \"ced\": 25634,\n  \"ced</w>\": 2323,\n  \"cedar\": 24167,\n  \"cedar</w>\": 13799,\n  \"cedric</w>\": 36608,\n  \"cee\": 45966,\n  \"cee</w>\": 15015,\n  \"cees</w>\": 47914,\n  \"ceil\": 27275,\n  \"ceiling</w>\": 12374,\n  \"ceilings</w>\": 33770,\n  \"cek</w>\": 45544,\n  \"cel\": 2269,\n  \"cel</w>\": 7597,\n  \"cele\": 1314,\n  \"celeb\": 38862,\n  \"celeb</w>\": 19393,\n  \"celebr\": 1372,\n  \"celebrate\": 31414,\n  \"celebrate</w>\": 2694,\n  \"celebrated</w>\": 9184,\n  \"celebrates</w>\": 7564,\n  \"celebrating</w>\": 3382,\n  \"celebration</w>\": 4615,\n  \"celebrations</w>\": 10825,\n  \"celebratory</w>\": 34115,\n  \"celebrities</w>\": 17071,\n  \"celebrity\": 23981,\n  \"celebrity</w>\": 7320,\n  \"celebs</w>\": 19803,\n  \"celed</w>\": 25741,\n  \"celer\": 9621,\n  \"celery</w>\": 30990,\n  \"celeste</w>\": 29364,\n  \"celesti\": 29497,\n  \"celestial</w>\": 32669,\n  \"celi\": 25567,\n  \"celia</w>\": 44489,\n  \"celine</w>\": 33644,\n  \"cell\": 9316,\n  \"cell</w>\": 5533,\n  \"cellar</w>\": 24282,\n  \"cellars</w>\": 44976,\n  \"cellence</w>\": 34687,\n  \"cello</w>\": 23013,\n  \"cellphone</w>\": 39029,\n  \"cells</w>\": 8890,\n  \"cellu\": 16791,\n  \"cellular</w>\": 23268,\n  \"cels</w>\": 24021,\n  \"celsius</w>\": 47057,\n  \"celtic\": 21897,\n  \"celtic</w>\": 10523,\n  \"celticfc</w>\": 38612,\n  \"celtics</w>\": 16226,\n  \"cem</w>\": 41435,\n  \"ceme\": 10517,\n  \"cement</w>\": 4369,\n  \"cements</w>\": 19448,\n  \"cemetery</w>\": 11660,\n  \"cen\": 1306,\n  \"cen</w>\": 30106,\n  \"cena</w>\": 21591,\n  \"cence</w>\": 24410,\n  \"cency</w>\": 41259,\n  \"cene</w>\": 30038,\n  \"censor\": 24230,\n  \"censor</w>\": 44709,\n  \"censored</w>\": 30951,\n  \"censorship</w>\": 27284,\n  \"census</w>\": 23677,\n  \"cent\": 1784,\n  \"cent</w>\": 3662,\n  \"centenary</w>\": 22422,\n  \"centennial</w>\": 20895,\n  \"center\": 16651,\n  \"center</w>\": 2119,\n  \"centered</w>\": 24584,\n  \"centers</w>\": 14494,\n  \"centi\": 48889,\n  \"centime\": 48687,\n  \"centr\": 2370,\n  \"central\": 13448,\n  \"central</w>\": 3339,\n  \"centre\": 26310,\n  \"centre</w>\": 2916,\n  \"centred</w>\": 47925,\n  \"centres</w>\": 19354,\n  \"centri\": 30872,\n  \"centric</w>\": 19297,\n  \"centro</w>\": 37178,\n  \"cents</w>\": 11934,\n  \"centu\": 16818,\n  \"centuri\": 36816,\n  \"centuries</w>\": 19014,\n  \"century\": 26134,\n  \"century</w>\": 4275,\n  \"ceo\": 46340,\n  \"ceo</w>\": 3559,\n  \"ceos</w>\": 28332,\n  \"cep\": 2632,\n  \"cep</w>\": 48714,\n  \"ceph\": 44343,\n  \"cept</w>\": 3678,\n  \"ception</w>\": 12346,\n  \"cer\": 1364,\n  \"cer</w>\": 1925,\n  \"cera</w>\": 34608,\n  \"ceram\": 10677,\n  \"ceramic</w>\": 15112,\n  \"ceramics</w>\": 22438,\n  \"cere\": 3984,\n  \"cere</w>\": 22085,\n  \"cereal</w>\": 17581,\n  \"cereals</w>\": 48618,\n  \"cerebral</w>\": 39073,\n  \"ceremon\": 15796,\n  \"ceremonial</w>\": 33281,\n  \"ceremonies</w>\": 21547,\n  \"ceremony</w>\": 5193,\n  \"cern</w>\": 44851,\n  \"cers</w>\": 13638,\n  \"cert</w>\": 27522,\n  \"certain\": 8526,\n  \"certain</w>\": 7883,\n  \"certainly</w>\": 10883,\n  \"certainty</w>\": 20054,\n  \"certi\": 4888,\n  \"certific\": 9443,\n  \"certificate</w>\": 11786,\n  \"certificates</w>\": 25281,\n  \"certification</w>\": 14735,\n  \"certified</w>\": 9288,\n  \"cerv\": 25738,\n  \"cervical</w>\": 35953,\n  \"ces\": 28715,\n  \"ces</w>\": 1604,\n  \"cesar\": 37025,\n  \"cesar</w>\": 28603,\n  \"cess\": 2314,\n  \"cess</w>\": 1554,\n  \"cessna</w>\": 36596,\n  \"cest</w>\": 27245,\n  \"cester\": 15769,\n  \"cester</w>\": 12718,\n  \"cet</w>\": 14960,\n  \"cett</w>\": 46708,\n  \"ceu</w>\": 37457,\n  \"cevic\": 48369,\n  \"cey</w>\": 20971,\n  \"cf\": 10189,\n  \"cf</w>\": 11171,\n  \"cfa</w>\": 34521,\n  \"cfb</w>\": 32931,\n  \"cfc</w>\": 11577,\n  \"cfd</w>\": 46171,\n  \"cfl\": 46320,\n  \"cfl</w>\": 22332,\n  \"cfo</w>\": 26937,\n  \"cfp</w>\": 40756,\n  \"cfr</w>\": 44033,\n  \"cfs</w>\": 32835,\n  \"cg\": 27118,\n  \"cg</w>\": 14740,\n  \"cgc</w>\": 38775,\n  \"cgi</w>\": 30520,\n  \"ch\": 540,\n  \"ch</w>\": 634,\n  \"cha\": 1587,\n  \"cha</w>\": 4541,\n  \"chab\": 26670,\n  \"chad\": 13095,\n  \"chad</w>\": 12923,\n  \"chae\": 9460,\n  \"chaf\": 38123,\n  \"chag\": 27989,\n  \"chai\": 31590,\n  \"chai</w>\": 18919,\n  \"chain\": 13898,\n  \"chain</w>\": 3946,\n  \"chained</w>\": 34402,\n  \"chains</w>\": 14438,\n  \"chainsaw</w>\": 37617,\n  \"chainz</w>\": 39687,\n  \"chair\": 4728,\n  \"chair</w>\": 4269,\n  \"chaired</w>\": 31664,\n  \"chairing</w>\": 42205,\n  \"chairman</w>\": 6901,\n  \"chairperson</w>\": 31584,\n  \"chairs</w>\": 12033,\n  \"chak\": 13702,\n  \"chak</w>\": 41713,\n  \"chakra\": 38304,\n  \"chakra</w>\": 33241,\n  \"chal\": 7397,\n  \"chal</w>\": 30809,\n  \"chale</w>\": 38099,\n  \"chalet</w>\": 37907,\n  \"chalk\": 31362,\n  \"chalk</w>\": 17846,\n  \"chall\": 2073,\n  \"challeng\": 4138,\n  \"challenge\": 29462,\n  \"challenge</w>\": 2836,\n  \"challenged</w>\": 17380,\n  \"challenger</w>\": 18228,\n  \"challengers</w>\": 46404,\n  \"challenges</w>\": 6280,\n  \"challenging</w>\": 11754,\n  \"chalmers</w>\": 47955,\n  \"cham\": 1290,\n  \"cham</w>\": 19951,\n  \"chamber\": 18983,\n  \"chamber</w>\": 7642,\n  \"chamberlain</w>\": 32756,\n  \"chambers</w>\": 16501,\n  \"chamele\": 34759,\n  \"chameleon</w>\": 41317,\n  \"champ\": 36813,\n  \"champ</w>\": 6602,\n  \"champag\": 10283,\n  \"champagne</w>\": 11007,\n  \"champi\": 1680,\n  \"champion\": 2643,\n  \"champion</w>\": 3950,\n  \"champions</w>\": 4227,\n  \"championship</w>\": 3429,\n  \"championships</w>\": 7047,\n  \"championsleague</w>\": 27638,\n  \"champs</w>\": 6240,\n  \"chan\": 1255,\n  \"chan</w>\": 6704,\n  \"chana</w>\": 48752,\n  \"chanc\": 13931,\n  \"chance\": 32940,\n  \"chance</w>\": 2594,\n  \"chancellor</w>\": 15886,\n  \"chances</w>\": 10870,\n  \"chand\": 7126,\n  \"chand</w>\": 41508,\n  \"chandelier</w>\": 30570,\n  \"chandi\": 12482,\n  \"chandigarh</w>\": 34106,\n  \"chandler</w>\": 17595,\n  \"chandra\": 27082,\n  \"chandra</w>\": 25348,\n  \"chanel</w>\": 16951,\n  \"chang\": 2233,\n  \"chang</w>\": 16461,\n  \"change\": 11608,\n  \"change</w>\": 1799,\n  \"changeable</w>\": 41335,\n  \"changed</w>\": 4907,\n  \"changer</w>\": 18406,\n  \"changers</w>\": 35185,\n  \"changes</w>\": 4938,\n  \"changing\": 40384,\n  \"changing</w>\": 5621,\n  \"changmin</w>\": 47410,\n  \"chann\": 8804,\n  \"channel\": 25837,\n  \"channel</w>\": 3847,\n  \"channeling</w>\": 28197,\n  \"channels</w>\": 13961,\n  \"channing</w>\": 37417,\n  \"chant\": 18165,\n  \"chant</w>\": 13521,\n  \"chanting</w>\": 32111,\n  \"chants</w>\": 22723,\n  \"chanyeol</w>\": 18805,\n  \"chao</w>\": 31815,\n  \"chaos</w>\": 10853,\n  \"chaotic</w>\": 33501,\n  \"chap\": 3825,\n  \"chap</w>\": 21939,\n  \"chapel\": 40859,\n  \"chapel</w>\": 10137,\n  \"chaplain</w>\": 38348,\n  \"chaplin</w>\": 32545,\n  \"chapman</w>\": 17968,\n  \"chapp\": 20634,\n  \"chaps</w>\": 36823,\n  \"chapter</w>\": 6014,\n  \"chapters</w>\": 22936,\n  \"char\": 1054,\n  \"char</w>\": 16017,\n  \"chara</w>\": 35668,\n  \"charac\": 2792,\n  \"character\": 10997,\n  \"character</w>\": 4009,\n  \"characterdesign</w>\": 38149,\n  \"characteri\": 20920,\n  \"characteristic</w>\": 44747,\n  \"characteristics</w>\": 26037,\n  \"characters</w>\": 6564,\n  \"charan</w>\": 31851,\n  \"charcoal</w>\": 19268,\n  \"chard</w>\": 17524,\n  \"chardon\": 26599,\n  \"chardonnay</w>\": 28161,\n  \"charge\": 25032,\n  \"charge</w>\": 5948,\n  \"chargeable</w>\": 35664,\n  \"charged</w>\": 7916,\n  \"charger</w>\": 13090,\n  \"chargers</w>\": 17352,\n  \"charges</w>\": 8962,\n  \"charging</w>\": 12514,\n  \"chariot</w>\": 38811,\n  \"charis\": 24449,\n  \"charisma</w>\": 45041,\n  \"charismatic</w>\": 37205,\n  \"charitable</w>\": 23256,\n  \"charities</w>\": 18493,\n  \"charity\": 20008,\n  \"charity</w>\": 4607,\n  \"charitytuesday</w>\": 42794,\n  \"charl\": 47736,\n  \"charle\": 10217,\n  \"charles\": 27983,\n  \"charles</w>\": 5127,\n  \"charleston</w>\": 15478,\n  \"charley</w>\": 38027,\n  \"charli\": 21784,\n  \"charli</w>\": 49392,\n  \"charlie\": 16764,\n  \"charlie</w>\": 6393,\n  \"charlotte\": 18445,\n  \"charlotte</w>\": 7871,\n  \"charlottesville</w>\": 32027,\n  \"charlton</w>\": 27048,\n  \"charm</w>\": 10876,\n  \"charmed</w>\": 39790,\n  \"charming</w>\": 12177,\n  \"charms</w>\": 21944,\n  \"charred</w>\": 44085,\n  \"chart\": 42685,\n  \"chart</w>\": 5053,\n  \"charted</w>\": 27939,\n  \"charter\": 42345,\n  \"charter</w>\": 13569,\n  \"chartered</w>\": 31298,\n  \"charters</w>\": 46626,\n  \"charting</w>\": 39841,\n  \"charts</w>\": 10728,\n  \"chas\": 10717,\n  \"chas</w>\": 29838,\n  \"chase\": 21503,\n  \"chase</w>\": 3859,\n  \"chased</w>\": 30342,\n  \"chaser</w>\": 29560,\n  \"chasers</w>\": 34158,\n  \"chases</w>\": 45011,\n  \"chasing\": 46909,\n  \"chasing</w>\": 13376,\n  \"chassis</w>\": 29188,\n  \"chast\": 42176,\n  \"chasu\": 41352,\n  \"chat\": 5355,\n  \"chat</w>\": 2402,\n  \"chatbots</w>\": 43994,\n  \"chate\": 30377,\n  \"chateau\": 44582,\n  \"chateau</w>\": 23520,\n  \"chath\": 46849,\n  \"chatham</w>\": 32030,\n  \"chats</w>\": 13263,\n  \"chatt\": 21618,\n  \"chattanoo\": 28009,\n  \"chattanooga</w>\": 29866,\n  \"chatted</w>\": 34124,\n  \"chatter\": 33473,\n  \"chatter</w>\": 41103,\n  \"chatting</w>\": 12401,\n  \"chatur\": 33839,\n  \"chau\": 11263,\n  \"chau</w>\": 37536,\n  \"chauffe\": 45440,\n  \"chauhan</w>\": 46663,\n  \"chav\": 28997,\n  \"chavez</w>\": 27480,\n  \"chaw\": 39639,\n  \"chay\": 45317,\n  \"chaz\": 47815,\n  \"chc</w>\": 36233,\n  \"chd</w>\": 41645,\n  \"che\": 983,\n  \"che</w>\": 3842,\n  \"chea</w>\": 39580,\n  \"chead\": 48358,\n  \"cheap\": 27036,\n  \"cheap</w>\": 8678,\n  \"cheape\": 26164,\n  \"cheaper</w>\": 17776,\n  \"cheapest</w>\": 26640,\n  \"cheat</w>\": 18180,\n  \"cheated</w>\": 34285,\n  \"cheating</w>\": 19722,\n  \"chec\": 1113,\n  \"check\": 7672,\n  \"check</w>\": 1217,\n  \"checked</w>\": 10387,\n  \"checker</w>\": 45883,\n  \"checkers</w>\": 48181,\n  \"checking</w>\": 7441,\n  \"checklist</w>\": 26989,\n  \"checkout</w>\": 13101,\n  \"checkpoint</w>\": 27531,\n  \"checks</w>\": 13737,\n  \"ched\": 11341,\n  \"ched</w>\": 2146,\n  \"cheddar</w>\": 20551,\n  \"chee\": 5326,\n  \"chee</w>\": 20944,\n  \"cheek\": 40000,\n  \"cheek</w>\": 21227,\n  \"cheeks</w>\": 23019,\n  \"cheeky</w>\": 15068,\n  \"cheer\": 9733,\n  \"cheer</w>\": 6918,\n  \"cheered</w>\": 38111,\n  \"cheerful</w>\": 28882,\n  \"cheering</w>\": 14289,\n  \"cheerleader</w>\": 29072,\n  \"cheerleaders</w>\": 22343,\n  \"cheerleading</w>\": 36366,\n  \"cheers</w>\": 6562,\n  \"chees\": 15182,\n  \"cheese\": 10738,\n  \"cheese</w>\": 4108,\n  \"cheeseburger</w>\": 41200,\n  \"cheesecake</w>\": 17803,\n  \"cheeses</w>\": 36076,\n  \"cheesy</w>\": 22093,\n  \"cheetah</w>\": 27431,\n  \"chef\": 12137,\n  \"chef</w>\": 4895,\n  \"chefs</w>\": 14486,\n  \"chek</w>\": 43745,\n  \"chel\": 3084,\n  \"chel</w>\": 25970,\n  \"chell</w>\": 46854,\n  \"chelle</w>\": 30141,\n  \"chelms\": 34936,\n  \"chelmsford</w>\": 39890,\n  \"chelse\": 19071,\n  \"chelsea</w>\": 6031,\n  \"chelseafc</w>\": 25927,\n  \"chelten\": 18889,\n  \"cheltenham</w>\": 21589,\n  \"chem\": 5667,\n  \"chem</w>\": 13698,\n  \"chemi\": 7179,\n  \"chemical\": 39376,\n  \"chemical</w>\": 9208,\n  \"chemicals</w>\": 17426,\n  \"chemist</w>\": 23138,\n  \"chemistry</w>\": 8841,\n  \"chemo\": 33095,\n  \"chemo</w>\": 36348,\n  \"chemotherapy</w>\": 41412,\n  \"chemtrails</w>\": 46015,\n  \"chen\": 5907,\n  \"chen</w>\": 8983,\n  \"cheney</w>\": 43522,\n  \"cheng\": 32512,\n  \"cheng</w>\": 30190,\n  \"chenko</w>\": 29073,\n  \"chennai\": 28948,\n  \"chennai</w>\": 12791,\n  \"cheon</w>\": 11498,\n  \"cheque</w>\": 28168,\n  \"cher\": 3597,\n  \"cher</w>\": 3466,\n  \"cheri\": 26471,\n  \"cherish</w>\": 20053,\n  \"cherished</w>\": 42325,\n  \"cherno\": 35376,\n  \"chernobyl</w>\": 40554,\n  \"chero\": 19844,\n  \"cherokee</w>\": 22860,\n  \"cherries</w>\": 27248,\n  \"cherry\": 21470,\n  \"cherry</w>\": 7325,\n  \"chers</w>\": 5789,\n  \"chery</w>\": 38478,\n  \"cheryl\": 37784,\n  \"cheryl</w>\": 20600,\n  \"ches\": 18346,\n  \"ches</w>\": 1910,\n  \"chesa\": 28349,\n  \"chesapeake</w>\": 32909,\n  \"cheshire</w>\": 17130,\n  \"chesney</w>\": 48747,\n  \"chess\": 27170,\n  \"chess</w>\": 8397,\n  \"chest\": 18217,\n  \"chest</w>\": 10563,\n  \"chester\": 10466,\n  \"chester</w>\": 3343,\n  \"chesterfield</w>\": 32975,\n  \"chestnut</w>\": 21834,\n  \"chet</w>\": 9663,\n  \"chett</w>\": 24695,\n  \"chev\": 7152,\n  \"chev</w>\": 41145,\n  \"chevro\": 12850,\n  \"chevrolet</w>\": 13240,\n  \"chevron</w>\": 33792,\n  \"chevy</w>\": 16581,\n  \"chew\": 32645,\n  \"chew</w>\": 22642,\n  \"chewan</w>\": 23689,\n  \"chewbacca</w>\": 49355,\n  \"chewing</w>\": 31486,\n  \"chewy</w>\": 42940,\n  \"chey\": 26968,\n  \"chey</w>\": 31208,\n  \"cheyenne</w>\": 34805,\n  \"chez\": 49183,\n  \"chez</w>\": 10556,\n  \"chf</w>\": 33021,\n  \"chfield</w>\": 41619,\n  \"chhat\": 34127,\n  \"chhattisgarh</w>\": 44246,\n  \"chi\": 1337,\n  \"chi</w>\": 4039,\n  \"chia</w>\": 19147,\n  \"chiang</w>\": 33764,\n  \"chibi</w>\": 22306,\n  \"chic\": 2627,\n  \"chic</w>\": 9091,\n  \"chica</w>\": 44190,\n  \"chicag\": 16778,\n  \"chicago\": 15038,\n  \"chicago</w>\": 3530,\n  \"chicagof\": 40638,\n  \"chicagofire</w>\": 46576,\n  \"chicas</w>\": 40664,\n  \"chichester</w>\": 43823,\n  \"chick\": 3170,\n  \"chick</w>\": 11238,\n  \"chicken\": 26322,\n  \"chicken</w>\": 3717,\n  \"chickens</w>\": 21658,\n  \"chickpea</w>\": 48109,\n  \"chicks</w>\": 17810,\n  \"chico</w>\": 30379,\n  \"chie\": 40046,\n  \"chie</w>\": 12388,\n  \"chief\": 16830,\n  \"chief</w>\": 3455,\n  \"chiefs</w>\": 11419,\n  \"chiev\": 47761,\n  \"chiff\": 27407,\n  \"chiffon</w>\": 31817,\n  \"chig\": 42952,\n  \"chihu\": 22857,\n  \"chihuahu\": 25437,\n  \"chihuahua</w>\": 30181,\n  \"chik</w>\": 45455,\n  \"chil\": 1333,\n  \"child\": 4392,\n  \"child</w>\": 2913,\n  \"childcare</w>\": 31133,\n  \"childhood\": 34772,\n  \"childhood</w>\": 7551,\n  \"childish</w>\": 31939,\n  \"childre\": 2135,\n  \"children\": 11101,\n  \"children</w>\": 2153,\n  \"childrens\": 31551,\n  \"childrens</w>\": 21553,\n  \"childs</w>\": 39521,\n  \"chile</w>\": 10022,\n  \"chilean</w>\": 33186,\n  \"chili</w>\": 13033,\n  \"chill\": 6498,\n  \"chill</w>\": 6382,\n  \"chilled</w>\": 23540,\n  \"chillen</w>\": 45160,\n  \"chilli\": 26787,\n  \"chilli</w>\": 17067,\n  \"chillin</w>\": 10347,\n  \"chilling</w>\": 10179,\n  \"chillout</w>\": 39842,\n  \"chills</w>\": 25460,\n  \"chilly</w>\": 14450,\n  \"chim\": 10543,\n  \"chimney</w>\": 26821,\n  \"chimp</w>\": 44374,\n  \"chin\": 6555,\n  \"chin</w>\": 8979,\n  \"china\": 38943,\n  \"china</w>\": 2817,\n  \"chinatown</w>\": 28582,\n  \"chine\": 4013,\n  \"chinese\": 30568,\n  \"chinese</w>\": 4271,\n  \"ching\": 34621,\n  \"ching</w>\": 1439,\n  \"chino\": 47181,\n  \"chino</w>\": 27440,\n  \"chinook</w>\": 41577,\n  \"chinson</w>\": 33786,\n  \"chio</w>\": 19650,\n  \"chip\": 19271,\n  \"chip</w>\": 8730,\n  \"chipmun\": 46384,\n  \"chipot\": 17702,\n  \"chipotle</w>\": 19284,\n  \"chipp\": 39854,\n  \"chippe\": 46541,\n  \"chipped</w>\": 39892,\n  \"chipping</w>\": 40323,\n  \"chips</w>\": 8855,\n  \"chir\": 15564,\n  \"chiro\": 23413,\n  \"chiroprac\": 25987,\n  \"chiropractic</w>\": 34437,\n  \"chis\": 19920,\n  \"chistan</w>\": 20523,\n  \"chiswick</w>\": 47290,\n  \"chit\": 13515,\n  \"chit</w>\": 45626,\n  \"chita</w>\": 49184,\n  \"chitec\": 39862,\n  \"chive</w>\": 29222,\n  \"chives</w>\": 34921,\n  \"chk</w>\": 47424,\n  \"chl</w>\": 38592,\n  \"chley</w>\": 47748,\n  \"chlo\": 10374,\n  \"chloe\": 39966,\n  \"chloe</w>\": 13992,\n  \"chlor\": 23135,\n  \"chman</w>\": 35835,\n  \"chment</w>\": 20848,\n  \"chner</w>\": 48277,\n  \"cho\": 1327,\n  \"cho</w>\": 5150,\n  \"choa</w>\": 43077,\n  \"choc\": 32772,\n  \"choc</w>\": 21983,\n  \"choco\": 46285,\n  \"choco</w>\": 32692,\n  \"chocol\": 3443,\n  \"chocolat</w>\": 44631,\n  \"chocolate\": 29389,\n  \"chocolate</w>\": 3820,\n  \"chocolates</w>\": 24120,\n  \"choi</w>\": 23749,\n  \"choic\": 35606,\n  \"choice\": 23857,\n  \"choice</w>\": 4051,\n  \"choices</w>\": 11016,\n  \"choir</w>\": 9214,\n  \"choirs</w>\": 43277,\n  \"choke</w>\": 30231,\n  \"choked</w>\": 43521,\n  \"choker</w>\": 39642,\n  \"choking</w>\": 39993,\n  \"chol\": 19802,\n  \"cholera</w>\": 45999,\n  \"cholester\": 26861,\n  \"cholesterol</w>\": 27982,\n  \"chom\": 25151,\n  \"chon\": 20416,\n  \"chon</w>\": 21601,\n  \"chondri\": 37379,\n  \"chong</w>\": 26220,\n  \"choo\": 3869,\n  \"choo</w>\": 24437,\n  \"chool</w>\": 29578,\n  \"chools</w>\": 41958,\n  \"choose\": 22756,\n  \"choose</w>\": 5073,\n  \"chooses</w>\": 29923,\n  \"choosing</w>\": 13475,\n  \"chop\": 10458,\n  \"chop</w>\": 16663,\n  \"chopin</w>\": 42256,\n  \"chopped</w>\": 22580,\n  \"chopper</w>\": 24011,\n  \"chopping</w>\": 35375,\n  \"chopra</w>\": 24258,\n  \"chops</w>\": 26321,\n  \"chor\": 7567,\n  \"chor</w>\": 47795,\n  \"choral</w>\": 26684,\n  \"chord</w>\": 33005,\n  \"chords</w>\": 36152,\n  \"choreo\": 17443,\n  \"choreographer</w>\": 35952,\n  \"choreography</w>\": 32749,\n  \"chores</w>\": 40483,\n  \"chori\": 25718,\n  \"chorizo</w>\": 30802,\n  \"chorus</w>\": 20869,\n  \"chos</w>\": 26559,\n  \"chose</w>\": 11090,\n  \"chosen</w>\": 10044,\n  \"chou\": 16960,\n  \"chou</w>\": 42917,\n  \"choudhary</w>\": 45503,\n  \"chow\": 20257,\n  \"chow</w>\": 21657,\n  \"chowder</w>\": 37886,\n  \"chp</w>\": 35896,\n  \"chr</w>\": 36918,\n  \"chri\": 1135,\n  \"chris\": 9907,\n  \"chris</w>\": 2978,\n  \"chrisbrown</w>\": 41035,\n  \"chriss\": 46745,\n  \"chrissy\": 44762,\n  \"chrissy</w>\": 40485,\n  \"christ\": 1403,\n  \"christ</w>\": 6703,\n  \"christchurch</w>\": 27100,\n  \"christen\": 31956,\n  \"christensen</w>\": 42226,\n  \"christi\": 3328,\n  \"christi</w>\": 33213,\n  \"christian\": 11792,\n  \"christian</w>\": 4729,\n  \"christianity</w>\": 20000,\n  \"christians</w>\": 14842,\n  \"christie</w>\": 16084,\n  \"christin\": 30189,\n  \"christina</w>\": 15925,\n  \"christine\": 42610,\n  \"christine</w>\": 14712,\n  \"christma\": 12039,\n  \"christmas\": 18174,\n  \"christmas</w>\": 1677,\n  \"christmaseve</w>\": 44381,\n  \"christmass\": 44873,\n  \"christop\": 7917,\n  \"christoph</w>\": 47844,\n  \"christophe</w>\": 45486,\n  \"christopher\": 33349,\n  \"christopher</w>\": 9630,\n  \"christy</w>\": 28331,\n  \"chro\": 13207,\n  \"chromatic</w>\": 44207,\n  \"chrome\": 24843,\n  \"chrome</w>\": 9529,\n  \"chromo\": 35809,\n  \"chron\": 5577,\n  \"chron</w>\": 39781,\n  \"chronic\": 10115,\n  \"chronic</w>\": 13677,\n  \"chronicle</w>\": 20034,\n  \"chronicles</w>\": 18905,\n  \"chrono\": 29387,\n  \"chronograph</w>\": 38397,\n  \"chry\": 13508,\n  \"chrysler</w>\": 20078,\n  \"chs\": 40277,\n  \"chs</w>\": 8391,\n  \"chsnews</w>\": 44919,\n  \"cht</w>\": 11384,\n  \"chter</w>\": 47811,\n  \"chu\": 3799,\n  \"chu</w>\": 13622,\n  \"chubby</w>\": 29109,\n  \"chuck\": 13211,\n  \"chuck</w>\": 9894,\n  \"chuckle</w>\": 35733,\n  \"chucky</w>\": 42026,\n  \"chuffed</w>\": 27233,\n  \"chuk\": 25878,\n  \"chuk</w>\": 27221,\n  \"chul</w>\": 33001,\n  \"chum\": 46869,\n  \"chum</w>\": 41767,\n  \"chun\": 14693,\n  \"chun</w>\": 25391,\n  \"chung</w>\": 28418,\n  \"chunk</w>\": 30275,\n  \"chunks</w>\": 45538,\n  \"chunky</w>\": 27978,\n  \"chups</w>\": 46331,\n  \"chur\": 2309,\n  \"church\": 14956,\n  \"church</w>\": 2735,\n  \"churches</w>\": 15539,\n  \"churchill</w>\": 17527,\n  \"chus</w>\": 36246,\n  \"chut\": 28788,\n  \"chutney</w>\": 36261,\n  \"chy\": 15131,\n  \"chy</w>\": 8096,\n  \"chyna</w>\": 43398,\n  \"chÃ¢\": 48669,\n  \"ci\": 698,\n  \"ci</w>\": 5798,\n  \"cia</w>\": 4019,\n  \"cial</w>\": 1143,\n  \"cian</w>\": 32323,\n  \"ciao</w>\": 37677,\n  \"ciara</w>\": 31369,\n  \"cible</w>\": 28873,\n  \"cic\": 14539,\n  \"cic</w>\": 21517,\n  \"cid</w>\": 27359,\n  \"cide</w>\": 34178,\n  \"cider</w>\": 13547,\n  \"cides</w>\": 41326,\n  \"cie</w>\": 19730,\n  \"cier\": 24067,\n  \"cies</w>\": 6785,\n  \"cif</w>\": 35698,\n  \"cigar\": 26031,\n  \"cigar</w>\": 16525,\n  \"cigare\": 13044,\n  \"cigarette</w>\": 18548,\n  \"cigarettes</w>\": 22750,\n  \"cigars</w>\": 20750,\n  \"cii</w>\": 42408,\n  \"cil\": 9217,\n  \"cil</w>\": 2998,\n  \"cilan\": 33998,\n  \"cilantro</w>\": 34568,\n  \"cili\": 18977,\n  \"ciliation</w>\": 25294,\n  \"cim</w>\": 30021,\n  \"cin\": 2396,\n  \"cin</w>\": 25367,\n  \"cina</w>\": 39467,\n  \"cincin\": 13291,\n  \"cincinnati</w>\": 14197,\n  \"cinco</w>\": 25131,\n  \"cincode\": 40930,\n  \"cincodemayo</w>\": 42542,\n  \"cincy\": 30015,\n  \"cincy</w>\": 30286,\n  \"cinde\": 20660,\n  \"cinderella</w>\": 21515,\n  \"cindy\": 34439,\n  \"cindy</w>\": 18532,\n  \"cine\": 4015,\n  \"cine</w>\": 27451,\n  \"cinema\": 38251,\n  \"cinema</w>\": 6443,\n  \"cinemas</w>\": 14845,\n  \"cinematic</w>\": 25602,\n  \"cinemato\": 21919,\n  \"cinematographer</w>\": 39059,\n  \"cinematography</w>\": 33802,\n  \"ciner\": 39882,\n  \"cing</w>\": 4014,\n  \"cini</w>\": 25699,\n  \"cinnam\": 12768,\n  \"cinnamon</w>\": 13460,\n  \"cino</w>\": 18616,\n  \"cio\": 44584,\n  \"cio</w>\": 9954,\n  \"cion</w>\": 22024,\n  \"ciones</w>\": 37155,\n  \"cious</w>\": 38466,\n  \"cip\": 32884,\n  \"cir\": 2459,\n  \"cir</w>\": 41135,\n  \"circa</w>\": 10411,\n  \"circle\": 33574,\n  \"circle</w>\": 7117,\n  \"circles</w>\": 19411,\n  \"circling</w>\": 46036,\n  \"circu\": 5143,\n  \"circuit\": 35583,\n  \"circuit</w>\": 9801,\n  \"circuits</w>\": 33260,\n  \"circul\": 16618,\n  \"circular</w>\": 19733,\n  \"circulare\": 39525,\n  \"circulareconomy</w>\": 39878,\n  \"circulated</w>\": 46258,\n  \"circulating</w>\": 42980,\n  \"circulation</w>\": 27880,\n  \"circum\": 13406,\n  \"circumstances</w>\": 18786,\n  \"circus</w>\": 11833,\n  \"cirque</w>\": 36049,\n  \"cis\": 9459,\n  \"cis</w>\": 23513,\n  \"cisco\": 36689,\n  \"cisco</w>\": 19290,\n  \"cise</w>\": 19657,\n  \"cisely</w>\": 33434,\n  \"cision</w>\": 41957,\n  \"cism</w>\": 24166,\n  \"cist</w>\": 40906,\n  \"cit\": 4420,\n  \"cit</w>\": 31294,\n  \"citadel</w>\": 38036,\n  \"citation</w>\": 33581,\n  \"cite</w>\": 32641,\n  \"cited</w>\": 25069,\n  \"cites</w>\": 34490,\n  \"citi\": 4280,\n  \"citi</w>\": 30270,\n  \"cities</w>\": 5441,\n  \"citing</w>\": 29088,\n  \"citiz\": 5816,\n  \"citizen\": 11720,\n  \"citizen</w>\": 9814,\n  \"citizens</w>\": 7949,\n  \"citizenship</w>\": 17386,\n  \"cito</w>\": 42636,\n  \"citro\": 27941,\n  \"citroen</w>\": 35805,\n  \"citrus</w>\": 17379,\n  \"city\": 5002,\n  \"city</w>\": 1305,\n  \"cityfc</w>\": 28751,\n  \"cityo\": 25709,\n  \"cityof\": 11595,\n  \"cityscape</w>\": 40808,\n  \"ciu\": 39693,\n  \"cius</w>\": 42559,\n  \"civ\": 40039,\n  \"civic\": 32240,\n  \"civic</w>\": 11888,\n  \"civil\": 6923,\n  \"civil</w>\": 6450,\n  \"civilian</w>\": 21187,\n  \"civilians</w>\": 18076,\n  \"civilization</w>\": 22503,\n  \"civilwar</w>\": 34524,\n  \"ciÃ³n</w>\": 44700,\n  \"cj\": 15238,\n  \"cj</w>\": 15205,\n  \"ck\": 916,\n  \"ck</w>\": 868,\n  \"cke\": 25224,\n  \"cke</w>\": 40989,\n  \"cked</w>\": 3441,\n  \"cken\": 25566,\n  \"cker\": 15509,\n  \"cker</w>\": 4744,\n  \"ckers</w>\": 37073,\n  \"cket</w>\": 5525,\n  \"ckett</w>\": 33899,\n  \"ckey\": 15029,\n  \"ckey</w>\": 3657,\n  \"cki\": 36916,\n  \"cki</w>\": 41055,\n  \"cking</w>\": 4805,\n  \"cko</w>\": 28818,\n  \"cks</w>\": 2031,\n  \"cky\": 26229,\n  \"cky</w>\": 3083,\n  \"cl\": 969,\n  \"cl</w>\": 6482,\n  \"cla\": 940,\n  \"cla</w>\": 20636,\n  \"clad</w>\": 31606,\n  \"cladding</w>\": 46411,\n  \"clai\": 29459,\n  \"claim\": 4290,\n  \"claim</w>\": 6607,\n  \"claimed</w>\": 9010,\n  \"claiming</w>\": 15286,\n  \"claims</w>\": 6852,\n  \"clair\": 31441,\n  \"clair</w>\": 14039,\n  \"claire\": 20410,\n  \"claire</w>\": 10460,\n  \"clam\": 13588,\n  \"clam</w>\": 32598,\n  \"clamation</w>\": 21793,\n  \"clamp</w>\": 41501,\n  \"clams</w>\": 38849,\n  \"clan\": 29252,\n  \"clan</w>\": 14114,\n  \"clancy</w>\": 37227,\n  \"clans</w>\": 38279,\n  \"clap\": 30037,\n  \"clap</w>\": 25546,\n  \"clapham</w>\": 43619,\n  \"clapton</w>\": 37683,\n  \"clar\": 3617,\n  \"clara</w>\": 19468,\n  \"clare\": 18948,\n  \"clare</w>\": 15927,\n  \"claremont</w>\": 47789,\n  \"clarence</w>\": 29320,\n  \"clari\": 15175,\n  \"clarify</w>\": 37004,\n  \"clarinet</w>\": 41178,\n  \"clarity</w>\": 21323,\n  \"clark\": 13340,\n  \"clark</w>\": 7521,\n  \"clarke</w>\": 11548,\n  \"clarkson</w>\": 25706,\n  \"clas\": 32003,\n  \"clash\": 38367,\n  \"clash</w>\": 9359,\n  \"clashes</w>\": 25193,\n  \"clasico</w>\": 43567,\n  \"class\": 2876,\n  \"class</w>\": 1874,\n  \"classes</w>\": 6919,\n  \"classi\": 2507,\n  \"classic\": 9353,\n  \"classic</w>\": 2713,\n  \"classical\": 22179,\n  \"classical</w>\": 11355,\n  \"classicalmusic</w>\": 27806,\n  \"classiccar</w>\": 46906,\n  \"classiccars</w>\": 21064,\n  \"classics</w>\": 10634,\n  \"classification</w>\": 26612,\n  \"classified</w>\": 22056,\n  \"classmate</w>\": 37090,\n  \"classmates</w>\": 30062,\n  \"classof</w>\": 25345,\n  \"classroom</w>\": 9001,\n  \"classrooms</w>\": 25768,\n  \"classy</w>\": 11615,\n  \"clau\": 7526,\n  \"claude</w>\": 17461,\n  \"claudi\": 39439,\n  \"claudia</w>\": 21893,\n  \"claudio</w>\": 31230,\n  \"claus</w>\": 23317,\n  \"clause</w>\": 26151,\n  \"clave</w>\": 24111,\n  \"claw\": 49230,\n  \"claw</w>\": 19106,\n  \"claws</w>\": 29161,\n  \"clay\": 10402,\n  \"clay</w>\": 8823,\n  \"clays</w>\": 26128,\n  \"clayton\": 46445,\n  \"clayton</w>\": 19413,\n  \"clc</w>\": 31380,\n  \"cle\": 1321,\n  \"cle</w>\": 2537,\n  \"clean\": 3572,\n  \"clean</w>\": 3772,\n  \"cleaned</w>\": 17468,\n  \"cleanenergy</w>\": 43538,\n  \"cleaner</w>\": 15619,\n  \"cleaners</w>\": 33258,\n  \"cleaning</w>\": 7210,\n  \"cleanliness</w>\": 47886,\n  \"cleans</w>\": 40827,\n  \"cleanse</w>\": 28717,\n  \"cleanser</w>\": 44170,\n  \"cleansing</w>\": 25931,\n  \"cleanup</w>\": 22353,\n  \"clear\": 4631,\n  \"clear</w>\": 3143,\n  \"clearance</w>\": 17959,\n  \"cleared</w>\": 14880,\n  \"clearer</w>\": 37031,\n  \"clearing</w>\": 15481,\n  \"clearly</w>\": 7767,\n  \"clears</w>\": 29092,\n  \"clearwater</w>\": 32124,\n  \"cleary</w>\": 44342,\n  \"cleats</w>\": 33486,\n  \"cleavage</w>\": 44165,\n  \"cled</w>\": 12827,\n  \"clegg</w>\": 42915,\n  \"clemens</w>\": 45896,\n  \"clement\": 22592,\n  \"clement</w>\": 24714,\n  \"clemente</w>\": 42461,\n  \"clementine</w>\": 47112,\n  \"clements</w>\": 49175,\n  \"clemson\": 38170,\n  \"clemson</w>\": 19537,\n  \"clen\": 35547,\n  \"cleo</w>\": 40344,\n  \"cleop\": 36287,\n  \"cleopatra</w>\": 41212,\n  \"cler\": 11828,\n  \"clergy</w>\": 42635,\n  \"cleric</w>\": 43748,\n  \"clerk</w>\": 22230,\n  \"clermont</w>\": 47529,\n  \"cles</w>\": 8077,\n  \"cleve\": 37599,\n  \"clevel\": 7701,\n  \"cleveland\": 30716,\n  \"cleveland</w>\": 8430,\n  \"clever\": 30977,\n  \"clever</w>\": 13385,\n  \"clg</w>\": 47546,\n  \"cli\": 1503,\n  \"clich\": 44407,\n  \"click\": 16676,\n  \"click</w>\": 3585,\n  \"clicked</w>\": 29015,\n  \"clicking</w>\": 26542,\n  \"clicks</w>\": 31250,\n  \"client\": 48528,\n  \"client</w>\": 7467,\n  \"clients</w>\": 8114,\n  \"clif\": 13182,\n  \"cliff\": 23827,\n  \"cliff</w>\": 10625,\n  \"cliffe</w>\": 15170,\n  \"clifford</w>\": 24226,\n  \"cliffs</w>\": 20953,\n  \"clifton</w>\": 23878,\n  \"climat\": 37283,\n  \"climate\": 7854,\n  \"climate</w>\": 4589,\n  \"climateaction</w>\": 31622,\n  \"climatechange</w>\": 11055,\n  \"climates</w>\": 46022,\n  \"climax</w>\": 37033,\n  \"climb\": 7421,\n  \"climb</w>\": 10649,\n  \"climbed</w>\": 22528,\n  \"climber</w>\": 36910,\n  \"climbers</w>\": 47648,\n  \"climbing</w>\": 9877,\n  \"climbs</w>\": 29098,\n  \"clin\": 2879,\n  \"clinch</w>\": 30404,\n  \"clinched</w>\": 44064,\n  \"cline</w>\": 37460,\n  \"cling\": 37068,\n  \"cling</w>\": 4760,\n  \"clinic</w>\": 7926,\n  \"clinical\": 35133,\n  \"clinical</w>\": 9148,\n  \"clinicians</w>\": 45866,\n  \"clinics</w>\": 23330,\n  \"clint\": 37542,\n  \"clint</w>\": 21160,\n  \"clinton\": 34403,\n  \"clinton</w>\": 5820,\n  \"clio</w>\": 46889,\n  \"clip\": 39712,\n  \"clip</w>\": 9289,\n  \"clipped</w>\": 45524,\n  \"clipper</w>\": 42245,\n  \"clippers</w>\": 23319,\n  \"clipping</w>\": 47484,\n  \"clips</w>\": 16594,\n  \"clique</w>\": 34983,\n  \"clive\": 36086,\n  \"clive</w>\": 21509,\n  \"cll\": 46091,\n  \"cllr\": 45743,\n  \"cllr</w>\": 23034,\n  \"clo\": 1194,\n  \"cloak</w>\": 36528,\n  \"clock\": 19878,\n  \"clock</w>\": 6716,\n  \"clocked</w>\": 49049,\n  \"clocks</w>\": 25895,\n  \"clockwise</w>\": 46150,\n  \"clockwork</w>\": 42297,\n  \"clon\": 24477,\n  \"clone</w>\": 22854,\n  \"clones</w>\": 48047,\n  \"clooney</w>\": 33161,\n  \"clos</w>\": 48821,\n  \"close\": 10603,\n  \"close</w>\": 2660,\n  \"closed</w>\": 4552,\n  \"closely</w>\": 13478,\n  \"closer</w>\": 6377,\n  \"closes</w>\": 11354,\n  \"closest</w>\": 14975,\n  \"closet</w>\": 14221,\n  \"closeup</w>\": 35439,\n  \"closing</w>\": 7101,\n  \"closure</w>\": 13249,\n  \"closures</w>\": 22923,\n  \"cloth</w>\": 14559,\n  \"clothes</w>\": 7080,\n  \"clothing</w>\": 7425,\n  \"clou\": 4069,\n  \"cloud\": 12965,\n  \"cloud</w>\": 3887,\n  \"cloudcomputing</w>\": 41390,\n  \"clouds</w>\": 6244,\n  \"cloudy</w>\": 13106,\n  \"clough</w>\": 42909,\n  \"clover\": 39574,\n  \"clover</w>\": 22812,\n  \"clow\": 18386,\n  \"clown</w>\": 15329,\n  \"clowns</w>\": 30820,\n  \"cls</w>\": 44251,\n  \"clt\": 29651,\n  \"clt</w>\": 24236,\n  \"clu\": 996,\n  \"club\": 9642,\n  \"club</w>\": 1736,\n  \"clubbing</w>\": 48128,\n  \"clubhouse</w>\": 26553,\n  \"clubs</w>\": 9437,\n  \"clue</w>\": 14994,\n  \"clueless</w>\": 35350,\n  \"clues</w>\": 23764,\n  \"clusive</w>\": 41362,\n  \"cluster</w>\": 15595,\n  \"clusters</w>\": 33217,\n  \"clut\": 28507,\n  \"clutch</w>\": 13953,\n  \"clutter</w>\": 40804,\n  \"cly\": 12037,\n  \"clyde\": 39557,\n  \"clyde</w>\": 18469,\n  \"cm\": 10190,\n  \"cm</w>\": 3741,\n  \"cma\": 30554,\n  \"cma</w>\": 31388,\n  \"cmc</w>\": 45839,\n  \"cmdr</w>\": 48250,\n  \"cme</w>\": 34946,\n  \"cmo</w>\": 24589,\n  \"cmon</w>\": 42904,\n  \"cmp\": 46355,\n  \"cms</w>\": 22520,\n  \"cmt</w>\": 42727,\n  \"cmu</w>\": 43046,\n  \"cn\": 3886,\n  \"cn</w>\": 16200,\n  \"cna</w>\": 48287,\n  \"cnbc\": 41242,\n  \"cnbc</w>\": 24371,\n  \"cnblue</w>\": 36018,\n  \"cnc</w>\": 20571,\n  \"cnet</w>\": 47487,\n  \"cnews</w>\": 24319,\n  \"cng</w>\": 41496,\n  \"cnn\": 22405,\n  \"cnn</w>\": 8259,\n  \"cns</w>\": 46095,\n  \"cny</w>\": 31614,\n  \"co\": 622,\n  \"co</w>\": 1320,\n  \"coa</w>\": 29167,\n  \"coach\": 3275,\n  \"coach</w>\": 2312,\n  \"coached</w>\": 30228,\n  \"coachella</w>\": 20222,\n  \"coaches</w>\": 6924,\n  \"coaching</w>\": 7766,\n  \"coal\": 10227,\n  \"coal</w>\": 7919,\n  \"coalition</w>\": 12920,\n  \"coast\": 6398,\n  \"coast</w>\": 3720,\n  \"coastal\": 38246,\n  \"coastal</w>\": 10852,\n  \"coaster</w>\": 15944,\n  \"coasters</w>\": 31548,\n  \"coastguard</w>\": 40601,\n  \"coastline</w>\": 27959,\n  \"coasts</w>\": 42225,\n  \"coat\": 28869,\n  \"coat</w>\": 7356,\n  \"coated</w>\": 23401,\n  \"coates</w>\": 36899,\n  \"coating</w>\": 25369,\n  \"coatings</w>\": 48706,\n  \"coats</w>\": 18075,\n  \"cob\": 20140,\n  \"cob</w>\": 32863,\n  \"cobain</w>\": 36866,\n  \"cobalt</w>\": 30896,\n  \"cobb</w>\": 22719,\n  \"cobble\": 47894,\n  \"cobra</w>\": 21574,\n  \"coc\": 23036,\n  \"coc</w>\": 39498,\n  \"coca</w>\": 21197,\n  \"cocac\": 26393,\n  \"cocacola</w>\": 31248,\n  \"cocaine</w>\": 20534,\n  \"coch\": 18599,\n  \"cochran</w>\": 48798,\n  \"cochrane</w>\": 41752,\n  \"coco\": 11850,\n  \"coco</w>\": 13316,\n  \"cocoa</w>\": 18074,\n  \"cocon\": 8597,\n  \"coconut</w>\": 9581,\n  \"cod\": 16132,\n  \"cod</w>\": 11915,\n  \"code\": 11582,\n  \"code</w>\": 3217,\n  \"coded</w>\": 33703,\n  \"coden\": 43914,\n  \"coder</w>\": 41561,\n  \"codes</w>\": 14566,\n  \"codi\": 39711,\n  \"coding</w>\": 12647,\n  \"cody\": 23222,\n  \"cody</w>\": 12666,\n  \"coe</w>\": 15386,\n  \"coed</w>\": 41028,\n  \"coel\": 45633,\n  \"coer\": 41198,\n  \"coeur</w>\": 44986,\n  \"coffe\": 2255,\n  \"coffee\": 12898,\n  \"coffee</w>\": 2453,\n  \"coffees</w>\": 41184,\n  \"coffey</w>\": 48066,\n  \"cofficial</w>\": 18757,\n  \"coffin</w>\": 29907,\n  \"cog\": 26362,\n  \"cog</w>\": 35960,\n  \"cogn\": 12210,\n  \"cognac</w>\": 44361,\n  \"cognition</w>\": 46825,\n  \"cognitive</w>\": 16584,\n  \"cohe\": 20669,\n  \"cohen</w>\": 13381,\n  \"coherent</w>\": 48450,\n  \"cohort</w>\": 22782,\n  \"coil</w>\": 25307,\n  \"coim\": 41528,\n  \"coin\": 14651,\n  \"coin</w>\": 4170,\n  \"coinci\": 14015,\n  \"coincidence</w>\": 19807,\n  \"coins</w>\": 10530,\n  \"coke\": 39602,\n  \"coke</w>\": 14035,\n  \"col\": 754,\n  \"col</w>\": 9371,\n  \"cola</w>\": 15444,\n  \"colbert</w>\": 31647,\n  \"colby</w>\": 32068,\n  \"colchester</w>\": 31715,\n  \"cold\": 11146,\n  \"cold</w>\": 3153,\n  \"colder</w>\": 23859,\n  \"coldest</w>\": 31438,\n  \"coldplay</w>\": 27770,\n  \"cole\": 9305,\n  \"cole</w>\": 8166,\n  \"coleman</w>\": 15774,\n  \"coles\": 40265,\n  \"coles</w>\": 30398,\n  \"coli\": 18877,\n  \"coli</w>\": 15910,\n  \"colin\": 20989,\n  \"colin</w>\": 10238,\n  \"coliseum</w>\": 21836,\n  \"coll\": 25982,\n  \"coll</w>\": 23898,\n  \"colla\": 2929,\n  \"collab</w>\": 14013,\n  \"collabor\": 4437,\n  \"collaborate</w>\": 21271,\n  \"collaborated</w>\": 42265,\n  \"collaborating</w>\": 25545,\n  \"collaboration</w>\": 6642,\n  \"collaborations</w>\": 36520,\n  \"collaborative</w>\": 15841,\n  \"collaborator</w>\": 48186,\n  \"collaborators</w>\": 45901,\n  \"collage</w>\": 11258,\n  \"collagen</w>\": 36120,\n  \"collap\": 16881,\n  \"collapse</w>\": 16520,\n  \"collapsed</w>\": 25037,\n  \"collapses</w>\": 43601,\n  \"collar\": 39662,\n  \"collar</w>\": 13497,\n  \"collateral</w>\": 44512,\n  \"colle\": 1801,\n  \"colleague</w>\": 13067,\n  \"colleagues</w>\": 8203,\n  \"collec\": 1733,\n  \"collect</w>\": 10186,\n  \"collected</w>\": 11980,\n  \"collecti\": 18530,\n  \"collectible</w>\": 25680,\n  \"collectibles</w>\": 21519,\n  \"collecting</w>\": 10325,\n  \"collection</w>\": 2548,\n  \"collections</w>\": 12760,\n  \"collective</w>\": 10162,\n  \"collectively</w>\": 40687,\n  \"collector</w>\": 13522,\n  \"collectors</w>\": 20540,\n  \"collects</w>\": 31576,\n  \"colleen</w>\": 31020,\n  \"college\": 13512,\n  \"college</w>\": 2229,\n  \"colleges</w>\": 17357,\n  \"collegi\": 16311,\n  \"collegiate</w>\": 18068,\n  \"colli\": 8262,\n  \"collide</w>\": 27214,\n  \"collie</w>\": 30611,\n  \"collier</w>\": 35748,\n  \"collin\": 24056,\n  \"collin</w>\": 32116,\n  \"colling\": 32319,\n  \"collingwood</w>\": 45873,\n  \"collins</w>\": 8684,\n  \"collision</w>\": 15407,\n  \"collo\": 25115,\n  \"colloqui\": 37243,\n  \"colloquium</w>\": 46514,\n  \"collu\": 25658,\n  \"collusion</w>\": 33864,\n  \"colo\": 7300,\n  \"colo</w>\": 27288,\n  \"cologne</w>\": 22216,\n  \"cology</w>\": 19187,\n  \"colom\": 8987,\n  \"colombia</w>\": 12901,\n  \"colombian</w>\": 28701,\n  \"colombo</w>\": 33207,\n  \"colon\": 8280,\n  \"colon</w>\": 29050,\n  \"colonel</w>\": 22674,\n  \"coloni\": 22667,\n  \"colonial</w>\": 16530,\n  \"colonialism</w>\": 43385,\n  \"colonies</w>\": 38738,\n  \"colony</w>\": 18767,\n  \"color\": 4036,\n  \"color</w>\": 3140,\n  \"colorado\": 34580,\n  \"colorado</w>\": 6742,\n  \"colorec\": 41171,\n  \"colored</w>\": 11775,\n  \"colorful</w>\": 11444,\n  \"colori\": 28764,\n  \"coloring</w>\": 17696,\n  \"colorized</w>\": 46730,\n  \"colors</w>\": 5389,\n  \"colorstv</w>\": 28195,\n  \"colorway</w>\": 44576,\n  \"colossal</w>\": 40258,\n  \"colosse\": 48142,\n  \"colossus</w>\": 34022,\n  \"colour\": 10240,\n  \"colour</w>\": 4769,\n  \"coloured</w>\": 17111,\n  \"colourful</w>\": 15562,\n  \"colouring</w>\": 31803,\n  \"colours</w>\": 7626,\n  \"cols</w>\": 35726,\n  \"colt</w>\": 19726,\n  \"colton</w>\": 32249,\n  \"coltrane</w>\": 42333,\n  \"colts</w>\": 16135,\n  \"colum\": 4164,\n  \"columb\": 31043,\n  \"columbi\": 25947,\n  \"columbia</w>\": 9410,\n  \"columbus</w>\": 11273,\n  \"column</w>\": 10593,\n  \"columnist</w>\": 28958,\n  \"columns</w>\": 29056,\n  \"com\": 610,\n  \"com</w>\": 2464,\n  \"coma</w>\": 19620,\n  \"comb\": 3587,\n  \"comb</w>\": 16380,\n  \"combat\": 35083,\n  \"combat</w>\": 9275,\n  \"combating</w>\": 46121,\n  \"combe</w>\": 14363,\n  \"combin\": 25112,\n  \"combination</w>\": 11312,\n  \"combinations</w>\": 34950,\n  \"combine</w>\": 12919,\n  \"combined</w>\": 10427,\n  \"combines</w>\": 22991,\n  \"combining</w>\": 23561,\n  \"combo</w>\": 10155,\n  \"combos</w>\": 48117,\n  \"combs</w>\": 30694,\n  \"combu\": 35629,\n  \"combustion</w>\": 44654,\n  \"comcast</w>\": 30043,\n  \"come\": 4225,\n  \"come</w>\": 891,\n  \"comeback</w>\": 8234,\n  \"comedian</w>\": 13848,\n  \"comedians</w>\": 33758,\n  \"comedic</w>\": 43360,\n  \"comedy\": 19346,\n  \"comedy</w>\": 4749,\n  \"comer\": 42997,\n  \"comer</w>\": 20916,\n  \"comers</w>\": 34436,\n  \"comes</w>\": 2091,\n  \"comet</w>\": 21405,\n  \"comets</w>\": 40636,\n  \"comey</w>\": 22957,\n  \"comfor\": 6563,\n  \"comfort\": 44000,\n  \"comfort</w>\": 7808,\n  \"comfortable</w>\": 8652,\n  \"comfortably</w>\": 30392,\n  \"comforting</w>\": 33835,\n  \"comforts</w>\": 42243,\n  \"comfy</w>\": 15736,\n  \"comi\": 40781,\n  \"comic\": 7729,\n  \"comic</w>\": 4962,\n  \"comicart</w>\": 46018,\n  \"comicbook</w>\": 46564,\n  \"comicbooks</w>\": 22018,\n  \"comiccon</w>\": 18379,\n  \"comicon</w>\": 43820,\n  \"comics</w>\": 4256,\n  \"comin</w>\": 18164,\n  \"coming\": 14916,\n  \"coming</w>\": 1171,\n  \"comingsoon</w>\": 19894,\n  \"comm\": 965,\n  \"comm</w>\": 11413,\n  \"comman\": 39780,\n  \"command\": 18391,\n  \"command</w>\": 11350,\n  \"commander</w>\": 11265,\n  \"commanders</w>\": 41667,\n  \"commanding</w>\": 36933,\n  \"commandments</w>\": 43409,\n  \"commando</w>\": 31361,\n  \"commands</w>\": 38163,\n  \"comme</w>\": 29692,\n  \"commemor\": 9495,\n  \"commemorate</w>\": 21242,\n  \"commemorates</w>\": 45149,\n  \"commemorating</w>\": 28734,\n  \"commemoration</w>\": 29288,\n  \"commemorative</w>\": 24623,\n  \"commen\": 15795,\n  \"commence</w>\": 25059,\n  \"commenced</w>\": 43908,\n  \"commencement</w>\": 21666,\n  \"commences</w>\": 48551,\n  \"commend\": 37555,\n  \"commended</w>\": 40702,\n  \"comment\": 20035,\n  \"comment</w>\": 5761,\n  \"commentary</w>\": 14146,\n  \"commentator</w>\": 32016,\n  \"commented</w>\": 28328,\n  \"commenting</w>\": 37292,\n  \"comments</w>\": 6606,\n  \"commer\": 4028,\n  \"commerce</w>\": 8333,\n  \"commerci\": 15601,\n  \"commercial\": 31802,\n  \"commercial</w>\": 6287,\n  \"commercials</w>\": 30724,\n  \"commish</w>\": 45399,\n  \"commissi\": 6000,\n  \"commission</w>\": 5292,\n  \"commissioned</w>\": 16565,\n  \"commissioner</w>\": 10221,\n  \"commissioners</w>\": 30702,\n  \"commissioning</w>\": 29585,\n  \"commissions</w>\": 20668,\n  \"commit\": 3041,\n  \"commit</w>\": 11797,\n  \"commitment</w>\": 7770,\n  \"commitments</w>\": 32136,\n  \"commits</w>\": 20241,\n  \"committed</w>\": 7907,\n  \"committee</w>\": 5636,\n  \"committees</w>\": 40504,\n  \"committing</w>\": 21937,\n  \"commod\": 9496,\n  \"commodities</w>\": 30350,\n  \"commodity</w>\": 29041,\n  \"commodore</w>\": 31129,\n  \"common\": 8414,\n  \"common</w>\": 4176,\n  \"commonly</w>\": 20344,\n  \"commons</w>\": 16653,\n  \"commonwealth</w>\": 16569,\n  \"comms</w>\": 18832,\n  \"commu\": 9561,\n  \"commun\": 1515,\n  \"communal</w>\": 32809,\n  \"communi\": 16164,\n  \"communic\": 4784,\n  \"communicate</w>\": 19809,\n  \"communication</w>\": 7999,\n  \"communications</w>\": 10052,\n  \"communion</w>\": 28579,\n  \"communism</w>\": 35387,\n  \"communist</w>\": 18602,\n  \"communities</w>\": 6361,\n  \"community\": 14784,\n  \"community</w>\": 1927,\n  \"commute</w>\": 15898,\n  \"commuter</w>\": 27782,\n  \"commuters</w>\": 30823,\n  \"commuting</w>\": 43503,\n  \"como</w>\": 16236,\n  \"comp\": 2561,\n  \"comp</w>\": 11679,\n  \"compac\": 40014,\n  \"compact</w>\": 13690,\n  \"compan\": 1995,\n  \"companies</w>\": 5361,\n  \"companion</w>\": 14963,\n  \"companions</w>\": 37124,\n  \"company</w>\": 2634,\n  \"compar\": 7580,\n  \"comparable</w>\": 27092,\n  \"comparative</w>\": 33388,\n  \"compare</w>\": 13771,\n  \"compared</w>\": 10544,\n  \"compares</w>\": 25104,\n  \"comparing</w>\": 20564,\n  \"comparison</w>\": 14186,\n  \"comparisons</w>\": 40870,\n  \"compart\": 30072,\n  \"compartment</w>\": 40383,\n  \"compass</w>\": 19438,\n  \"compassion</w>\": 14463,\n  \"compassionate</w>\": 30193,\n  \"compati\": 17295,\n  \"compatibility</w>\": 41614,\n  \"compatible</w>\": 21286,\n  \"compe\": 5254,\n  \"compelled</w>\": 49375,\n  \"compelling</w>\": 21766,\n  \"compen\": 42079,\n  \"compens\": 15172,\n  \"compensation</w>\": 18663,\n  \"compet\": 2932,\n  \"compete</w>\": 10038,\n  \"competed</w>\": 27767,\n  \"competen\": 31853,\n  \"competence</w>\": 31165,\n  \"competency</w>\": 49293,\n  \"competent</w>\": 28113,\n  \"competes</w>\": 39826,\n  \"competing</w>\": 13068,\n  \"competit\": 15892,\n  \"competiti\": 32581,\n  \"competition</w>\": 3742,\n  \"competitions</w>\": 23259,\n  \"competitive</w>\": 10687,\n  \"competitiveness</w>\": 43209,\n  \"competitor</w>\": 26633,\n  \"competitors</w>\": 23638,\n  \"compilation</w>\": 20446,\n  \"compiled</w>\": 34579,\n  \"compla\": 7428,\n  \"complain</w>\": 19292,\n  \"complained</w>\": 42029,\n  \"complaining</w>\": 20812,\n  \"complains</w>\": 46363,\n  \"complaint</w>\": 20391,\n  \"complaints</w>\": 20020,\n  \"comple\": 1730,\n  \"complement</w>\": 36624,\n  \"complementary</w>\": 48953,\n  \"complete</w>\": 3263,\n  \"completed</w>\": 5976,\n  \"completely</w>\": 5989,\n  \"completes</w>\": 19321,\n  \"completing</w>\": 14949,\n  \"completion</w>\": 15915,\n  \"complex\": 16099,\n  \"complex</w>\": 6324,\n  \"complexes</w>\": 47870,\n  \"complexion</w>\": 47732,\n  \"complexity</w>\": 24815,\n  \"compli\": 5270,\n  \"compliance</w>\": 14658,\n  \"compliant</w>\": 29893,\n  \"complic\": 11460,\n  \"complicated</w>\": 16621,\n  \"complications</w>\": 29936,\n  \"compliment</w>\": 25116,\n  \"complimentary</w>\": 20948,\n  \"compliments</w>\": 25477,\n  \"comply</w>\": 36281,\n  \"component</w>\": 21284,\n  \"components</w>\": 16816,\n  \"compos\": 7783,\n  \"compose</w>\": 43659,\n  \"composed</w>\": 19916,\n  \"composer</w>\": 12104,\n  \"composers</w>\": 33314,\n  \"composing</w>\": 40412,\n  \"composite</w>\": 21606,\n  \"composites</w>\": 45395,\n  \"composition</w>\": 17510,\n  \"compositions</w>\": 44652,\n  \"compost\": 46002,\n  \"compost</w>\": 33307,\n  \"compound</w>\": 19980,\n  \"compounds</w>\": 33991,\n  \"compre\": 8483,\n  \"compreh\": 42976,\n  \"comprehen\": 12050,\n  \"comprehend</w>\": 48230,\n  \"comprehensive</w>\": 13854,\n  \"compress\": 33353,\n  \"compressed</w>\": 42359,\n  \"compression</w>\": 25638,\n  \"compressor</w>\": 39607,\n  \"compri\": 29445,\n  \"compromise</w>\": 26611,\n  \"compromised</w>\": 38576,\n  \"compromising</w>\": 45436,\n  \"comps</w>\": 48665,\n  \"compton</w>\": 28364,\n  \"compu\": 11639,\n  \"compul\": 25869,\n  \"compulsory</w>\": 39345,\n  \"computing</w>\": 12732,\n  \"comra\": 25553,\n  \"comrade</w>\": 30844,\n  \"comrades</w>\": 29282,\n  \"coms</w>\": 30493,\n  \"con\": 616,\n  \"con</w>\": 2457,\n  \"cona</w>\": 30605,\n  \"conan</w>\": 24750,\n  \"conce\": 9145,\n  \"concealed</w>\": 35419,\n  \"conceded</w>\": 37895,\n  \"conceived</w>\": 39725,\n  \"concentr\": 11085,\n  \"concentrate</w>\": 30846,\n  \"concentrated</w>\": 36776,\n  \"concentration</w>\": 18565,\n  \"concep\": 8389,\n  \"concepcion</w>\": 47035,\n  \"concept</w>\": 6353,\n  \"conceptart</w>\": 31162,\n  \"conception</w>\": 30510,\n  \"conceptions</w>\": 40307,\n  \"concepts</w>\": 16763,\n  \"conceptu\": 42745,\n  \"conceptual</w>\": 34070,\n  \"concer\": 2228,\n  \"concern</w>\": 12928,\n  \"concerned</w>\": 12020,\n  \"concerning</w>\": 21772,\n  \"concerns</w>\": 11134,\n  \"concert\": 32180,\n  \"concert</w>\": 3066,\n  \"concerto</w>\": 24710,\n  \"concerts</w>\": 14418,\n  \"concession</w>\": 38117,\n  \"concessions</w>\": 43981,\n  \"concier\": 28859,\n  \"concierge</w>\": 39850,\n  \"conclave</w>\": 38098,\n  \"conclu\": 9627,\n  \"conclude</w>\": 37525,\n  \"concluded</w>\": 27825,\n  \"concludes</w>\": 30634,\n  \"conclusion</w>\": 20932,\n  \"conclusions</w>\": 39507,\n  \"conco\": 43034,\n  \"concor\": 19913,\n  \"concord</w>\": 26448,\n  \"concordia</w>\": 35492,\n  \"concours</w>\": 36282,\n  \"concourse</w>\": 37793,\n  \"concre\": 43658,\n  \"concrete</w>\": 9637,\n  \"concussion</w>\": 28321,\n  \"condem\": 13287,\n  \"condemn</w>\": 27212,\n  \"condemned</w>\": 35145,\n  \"condemns</w>\": 32092,\n  \"conden\": 24816,\n  \"conditi\": 11170,\n  \"condition\": 36978,\n  \"condition</w>\": 7336,\n  \"conditional</w>\": 24671,\n  \"conditioned</w>\": 37014,\n  \"conditioner</w>\": 31239,\n  \"conditioning</w>\": 18181,\n  \"conditions</w>\": 5892,\n  \"condo</w>\": 19952,\n  \"condol\": 18661,\n  \"condolences</w>\": 20836,\n  \"condom</w>\": 39021,\n  \"condomin\": 42589,\n  \"condoms</w>\": 37878,\n  \"condor</w>\": 47643,\n  \"condos</w>\": 42342,\n  \"condu\": 40772,\n  \"conduc\": 5379,\n  \"conduct</w>\": 11647,\n  \"conducted</w>\": 13080,\n  \"conducting</w>\": 16787,\n  \"conductor</w>\": 22317,\n  \"conducts</w>\": 32084,\n  \"cone\": 39279,\n  \"cone</w>\": 10266,\n  \"cones</w>\": 26718,\n  \"coney</w>\": 41837,\n  \"conf</w>\": 6477,\n  \"confe\": 1968,\n  \"confeder\": 17104,\n  \"confederate</w>\": 24864,\n  \"confederation</w>\": 43484,\n  \"conferen\": 37961,\n  \"conference</w>\": 2230,\n  \"conferences</w>\": 22811,\n  \"conferencing</w>\": 47320,\n  \"confess</w>\": 38860,\n  \"confession</w>\": 22572,\n  \"confessions</w>\": 29404,\n  \"confetti</w>\": 37923,\n  \"confi\": 5005,\n  \"confidence</w>\": 8510,\n  \"confident</w>\": 12365,\n  \"confidential</w>\": 28712,\n  \"configu\": 46746,\n  \"configur\": 26950,\n  \"configuration</w>\": 33378,\n  \"confin\": 45316,\n  \"confined</w>\": 40973,\n  \"confir\": 3930,\n  \"confirm</w>\": 12130,\n  \"confirmation</w>\": 19645,\n  \"confirmed</w>\": 6346,\n  \"confirming</w>\": 38433,\n  \"confirms</w>\": 11803,\n  \"confis\": 36285,\n  \"confit</w>\": 42241,\n  \"confl\": 8173,\n  \"conflic\": 19029,\n  \"conflict</w>\": 10397,\n  \"conflicting</w>\": 43894,\n  \"conflicts</w>\": 28713,\n  \"confor\": 40933,\n  \"confron\": 20033,\n  \"confront</w>\": 38382,\n  \"confrontation</w>\": 41478,\n  \"confu\": 6890,\n  \"confuse</w>\": 37503,\n  \"confused</w>\": 10946,\n  \"confusing</w>\": 24683,\n  \"confusion</w>\": 20493,\n  \"cong</w>\": 24407,\n  \"conge\": 20013,\n  \"congestion</w>\": 24432,\n  \"congo</w>\": 20334,\n  \"congr\": 1227,\n  \"congrats</w>\": 1887,\n  \"congratul\": 1750,\n  \"congratulate</w>\": 16633,\n  \"congratulated</w>\": 42004,\n  \"congratulates</w>\": 24580,\n  \"congratulating</w>\": 30967,\n  \"congratulation</w>\": 24751,\n  \"congratulations</w>\": 1864,\n  \"congre\": 7947,\n  \"congreg\": 40727,\n  \"congregation</w>\": 32618,\n  \"congress\": 12452,\n  \"congress</w>\": 4599,\n  \"congressional</w>\": 15239,\n  \"congressman</w>\": 17145,\n  \"congresswoman</w>\": 37317,\n  \"coni\": 39031,\n  \"coni</w>\": 36651,\n  \"conj\": 41543,\n  \"conju\": 33821,\n  \"conjunction</w>\": 34226,\n  \"conley</w>\": 44536,\n  \"conline</w>\": 37593,\n  \"conn\": 41836,\n  \"conn</w>\": 20329,\n  \"conne\": 8437,\n  \"connec\": 29933,\n  \"connect</w>\": 19969,\n  \"connected</w>\": 27506,\n  \"connecting</w>\": 41429,\n  \"connection</w>\": 26840,\n  \"connections</w>\": 37161,\n  \"connie</w>\": 25739,\n  \"connoisse\": 46012,\n  \"connol\": 27739,\n  \"connolly</w>\": 29537,\n  \"connor\": 21984,\n  \"connor</w>\": 10218,\n  \"conom\": 2664,\n  \"conomy</w>\": 22529,\n  \"conor\": 29955,\n  \"conor</w>\": 19478,\n  \"conqu\": 13382,\n  \"conquer\": 38585,\n  \"conquer</w>\": 19821,\n  \"conquered</w>\": 27099,\n  \"conquering</w>\": 43778,\n  \"conquest</w>\": 35367,\n  \"conrad</w>\": 22073,\n  \"cons</w>\": 10311,\n  \"consci\": 9427,\n  \"conscience</w>\": 27310,\n  \"conscious</w>\": 14914,\n  \"consciously</w>\": 46755,\n  \"consciousness</w>\": 17894,\n  \"conse\": 34887,\n  \"consecu\": 12084,\n  \"consecutive</w>\": 12413,\n  \"consen\": 23110,\n  \"consensus</w>\": 25071,\n  \"consent</w>\": 21922,\n  \"consequ\": 13003,\n  \"consequence</w>\": 42262,\n  \"consequences</w>\": 15682,\n  \"conserv\": 4649,\n  \"conservancy</w>\": 46729,\n  \"conservation\": 37616,\n  \"conservation</w>\": 8322,\n  \"conservative</w>\": 11421,\n  \"conservatives</w>\": 17631,\n  \"conservatory</w>\": 32140,\n  \"conserve</w>\": 34231,\n  \"consi\": 2899,\n  \"consider\": 12471,\n  \"consider</w>\": 6734,\n  \"considerable</w>\": 38256,\n  \"considerably</w>\": 38510,\n  \"consideration</w>\": 24310,\n  \"considerations</w>\": 33700,\n  \"considered</w>\": 9487,\n  \"considering</w>\": 10761,\n  \"considers</w>\": 24691,\n  \"consist\": 10410,\n  \"consist</w>\": 33735,\n  \"consisted</w>\": 49354,\n  \"consistency</w>\": 25683,\n  \"consistent</w>\": 16439,\n  \"consistently</w>\": 23799,\n  \"consisting</w>\": 39241,\n  \"consists</w>\": 23458,\n  \"consol\": 27869,\n  \"consolation</w>\": 38888,\n  \"console</w>\": 13403,\n  \"consoles</w>\": 33136,\n  \"consoli\": 21586,\n  \"consolidation</w>\": 41111,\n  \"consor\": 27108,\n  \"consortium</w>\": 29988,\n  \"conspir\": 12680,\n  \"conspiracy</w>\": 15236,\n  \"const\": 3826,\n  \"constable</w>\": 29179,\n  \"constan\": 38718,\n  \"constance</w>\": 40682,\n  \"constant\": 32000,\n  \"constant</w>\": 13111,\n  \"constantine</w>\": 30640,\n  \"constantly</w>\": 14336,\n  \"constell\": 21913,\n  \"constellation</w>\": 25991,\n  \"constitu\": 6299,\n  \"constituency</w>\": 22464,\n  \"constituents</w>\": 32075,\n  \"constitution</w>\": 12157,\n  \"constitutional</w>\": 16091,\n  \"constra\": 28973,\n  \"constraints</w>\": 41910,\n  \"constru\": 3983,\n  \"construc\": 13321,\n  \"construct</w>\": 24467,\n  \"constructed</w>\": 16876,\n  \"constructing</w>\": 33653,\n  \"construction\": 48873,\n  \"construction</w>\": 4585,\n  \"constructive</w>\": 31810,\n  \"consu\": 4689,\n  \"consul\": 5295,\n  \"consul</w>\": 33630,\n  \"consulate</w>\": 34341,\n  \"consult\": 9438,\n  \"consult</w>\": 26727,\n  \"consultancy</w>\": 31735,\n  \"consultant</w>\": 14196,\n  \"consultants</w>\": 27203,\n  \"consultation</w>\": 15777,\n  \"consultations</w>\": 43424,\n  \"consulting</w>\": 15883,\n  \"consume</w>\": 28919,\n  \"consumed</w>\": 29653,\n  \"consumer\": 34408,\n  \"consumer</w>\": 10422,\n  \"consumers</w>\": 14014,\n  \"consuming</w>\": 30607,\n  \"consumption</w>\": 14904,\n  \"cont\": 2036,\n  \"cont</w>\": 21425,\n  \"contact\": 39367,\n  \"contact</w>\": 3523,\n  \"contacted</w>\": 37331,\n  \"contacts</w>\": 22789,\n  \"contag\": 29259,\n  \"contagious</w>\": 33984,\n  \"contain\": 9948,\n  \"contain</w>\": 15187,\n  \"contained</w>\": 23836,\n  \"container</w>\": 14913,\n  \"containers</w>\": 20448,\n  \"containing</w>\": 20281,\n  \"contains</w>\": 12844,\n  \"contamin\": 24662,\n  \"contaminated</w>\": 35773,\n  \"contamination</w>\": 31770,\n  \"conte\": 15402,\n  \"conte</w>\": 26882,\n  \"contempl\": 21924,\n  \"contemplating</w>\": 33854,\n  \"contempor\": 14538,\n  \"contemporary\": 16607,\n  \"contemporary</w>\": 8859,\n  \"contemporaryart</w>\": 20212,\n  \"contempt</w>\": 39293,\n  \"conten\": 42201,\n  \"contender</w>\": 23573,\n  \"contenders</w>\": 29711,\n  \"content\": 15526,\n  \"content</w>\": 4750,\n  \"contentmarketing</w>\": 20429,\n  \"contents</w>\": 14850,\n  \"contest\": 23103,\n  \"contest</w>\": 4576,\n  \"contestalert</w>\": 27313,\n  \"contestant</w>\": 25682,\n  \"contestants</w>\": 28062,\n  \"contested</w>\": 37845,\n  \"contests</w>\": 32210,\n  \"contex\": 42015,\n  \"context</w>\": 13089,\n  \"conti\": 46431,\n  \"conti</w>\": 40842,\n  \"contin\": 1918,\n  \"continent</w>\": 19623,\n  \"continental</w>\": 14089,\n  \"continents</w>\": 38642,\n  \"conting\": 27104,\n  \"contingent</w>\": 36467,\n  \"continu\": 4688,\n  \"continually</w>\": 34086,\n  \"continuation</w>\": 38964,\n  \"continue</w>\": 3942,\n  \"continued</w>\": 10150,\n  \"continues</w>\": 4305,\n  \"continuing</w>\": 11009,\n  \"continuity</w>\": 34035,\n  \"continuous</w>\": 17033,\n  \"continuously</w>\": 29634,\n  \"continuum</w>\": 44978,\n  \"contour</w>\": 34733,\n  \"contr\": 22871,\n  \"contra\": 9880,\n  \"contra</w>\": 38620,\n  \"contrac\": 7581,\n  \"contracep\": 35109,\n  \"contract</w>\": 6120,\n  \"contracting</w>\": 39091,\n  \"contractor</w>\": 21429,\n  \"contractors</w>\": 22427,\n  \"contracts</w>\": 16563,\n  \"contradic\": 27957,\n  \"contrary</w>\": 32805,\n  \"contrast</w>\": 18501,\n  \"contrasting</w>\": 40758,\n  \"contribu\": 4753,\n  \"contribute</w>\": 14112,\n  \"contributed</w>\": 19397,\n  \"contributes</w>\": 34203,\n  \"contributing</w>\": 21762,\n  \"contribution</w>\": 11116,\n  \"contributions</w>\": 14465,\n  \"contributor</w>\": 24553,\n  \"contributors</w>\": 32908,\n  \"contro\": 2372,\n  \"control\": 9963,\n  \"control</w>\": 3366,\n  \"controlled</w>\": 14140,\n  \"controller</w>\": 12929,\n  \"controllers</w>\": 30374,\n  \"controlling</w>\": 26427,\n  \"controls</w>\": 15746,\n  \"controversi\": 13674,\n  \"controversial</w>\": 14617,\n  \"controversy</w>\": 18659,\n  \"conv</w>\": 48382,\n  \"conve\": 18421,\n  \"conven\": 7283,\n  \"conveni\": 33278,\n  \"convenience</w>\": 17859,\n  \"convenient</w>\": 18978,\n  \"conveniently</w>\": 40844,\n  \"convention</w>\": 6752,\n  \"conventional</w>\": 20835,\n  \"conventions</w>\": 41404,\n  \"conver\": 6336,\n  \"convergence</w>\": 35381,\n  \"convers\": 4577,\n  \"conversation</w>\": 5690,\n  \"conversations</w>\": 12326,\n  \"converse</w>\": 24149,\n  \"conversion</w>\": 15111,\n  \"conversions</w>\": 44137,\n  \"convert</w>\": 20074,\n  \"converted</w>\": 20808,\n  \"converter</w>\": 34611,\n  \"convertible</w>\": 19608,\n  \"converting</w>\": 34674,\n  \"converts</w>\": 42470,\n  \"convey</w>\": 38342,\n  \"convic\": 11150,\n  \"convicted</w>\": 18668,\n  \"conviction</w>\": 24967,\n  \"convictions</w>\": 44366,\n  \"convin\": 12889,\n  \"convince</w>\": 20351,\n  \"convinced</w>\": 17388,\n  \"convincing</w>\": 27742,\n  \"convo</w>\": 19372,\n  \"convocation</w>\": 30674,\n  \"convos</w>\": 44842,\n  \"convoy</w>\": 30292,\n  \"conway</w>\": 21410,\n  \"conwy</w>\": 48971,\n  \"cony</w>\": 14501,\n  \"coo\": 1664,\n  \"coo</w>\": 21691,\n  \"coogs</w>\": 47624,\n  \"cook\": 9726,\n  \"cook</w>\": 5977,\n  \"cookbook</w>\": 21086,\n  \"cooke</w>\": 29979,\n  \"cooked</w>\": 11452,\n  \"cooker</w>\": 23806,\n  \"cookery</w>\": 38779,\n  \"cookie</w>\": 9367,\n  \"cookies</w>\": 8320,\n  \"cookin</w>\": 46610,\n  \"cooking\": 39248,\n  \"cooking</w>\": 6283,\n  \"cookout</w>\": 39743,\n  \"cooks</w>\": 24256,\n  \"cool\": 5594,\n  \"cool</w>\": 2077,\n  \"cooled</w>\": 37170,\n  \"cooler</w>\": 11078,\n  \"coolest</w>\": 10566,\n  \"cooling</w>\": 15291,\n  \"coom\": 41726,\n  \"coon\": 34260,\n  \"coon</w>\": 16958,\n  \"coop\": 39917,\n  \"coop</w>\": 18910,\n  \"cooper\": 7264,\n  \"cooper</w>\": 8133,\n  \"cooperate</w>\": 42936,\n  \"cooperation</w>\": 11785,\n  \"cooperative</w>\": 24517,\n  \"coops</w>\": 48531,\n  \"coordin\": 8187,\n  \"coordinate</w>\": 38250,\n  \"coordinated</w>\": 32540,\n  \"coordinating</w>\": 40075,\n  \"coordination</w>\": 25611,\n  \"coordinator</w>\": 13967,\n  \"coors</w>\": 36025,\n  \"cop\": 3196,\n  \"cop</w>\": 7070,\n  \"copa</w>\": 22749,\n  \"copd</w>\": 45876,\n  \"cope\": 47635,\n  \"cope</w>\": 12564,\n  \"copeland</w>\": 37604,\n  \"copen\": 15637,\n  \"copenhagen</w>\": 17390,\n  \"coper\": 41891,\n  \"copernic\": 45519,\n  \"copied</w>\": 36770,\n  \"copies</w>\": 9851,\n  \"coping</w>\": 30545,\n  \"copolitics</w>\": 45846,\n  \"copp\": 20937,\n  \"copped</w>\": 42229,\n  \"copper\": 24741,\n  \"copper</w>\": 10333,\n  \"coppola</w>\": 47427,\n  \"cops</w>\": 10719,\n  \"copter</w>\": 28049,\n  \"copy\": 11376,\n  \"copy</w>\": 4509,\n  \"copying</w>\": 38925,\n  \"copyright</w>\": 15778,\n  \"cor\": 851,\n  \"cor</w>\": 18559,\n  \"cora</w>\": 34953,\n  \"coral\": 31220,\n  \"coral</w>\": 12054,\n  \"corbett</w>\": 35699,\n  \"corbin</w>\": 35578,\n  \"corbyn</w>\": 14026,\n  \"cord\": 40893,\n  \"cord</w>\": 11181,\n  \"corden</w>\": 41999,\n  \"cordi\": 41681,\n  \"cordless</w>\": 44412,\n  \"cords</w>\": 22164,\n  \"core\": 19622,\n  \"core</w>\": 5000,\n  \"cores</w>\": 37874,\n  \"corey\": 31279,\n  \"corey</w>\": 15288,\n  \"corgi</w>\": 31320,\n  \"cori\": 26508,\n  \"coriander</w>\": 37491,\n  \"corin\": 17716,\n  \"corinthians</w>\": 34471,\n  \"cork\": 18148,\n  \"cork</w>\": 10376,\n  \"corn\": 5202,\n  \"corn</w>\": 5894,\n  \"cornelius</w>\": 45865,\n  \"cornell\": 38689,\n  \"cornell</w>\": 20859,\n  \"corner\": 18509,\n  \"corner</w>\": 5253,\n  \"corners</w>\": 19584,\n  \"cornerstone</w>\": 36280,\n  \"cornish</w>\": 23774,\n  \"cornwall\": 37903,\n  \"cornwall</w>\": 10777,\n  \"coron\": 13210,\n  \"corona</w>\": 25564,\n  \"coronado</w>\": 43946,\n  \"coronary</w>\": 45955,\n  \"coronation</w>\": 25014,\n  \"coroner</w>\": 47241,\n  \"corp\": 29203,\n  \"corp</w>\": 10918,\n  \"corpor\": 4258,\n  \"corporal</w>\": 42445,\n  \"corporate\": 33877,\n  \"corporate</w>\": 6838,\n  \"corporation</w>\": 11282,\n  \"corporations</w>\": 25482,\n  \"corps</w>\": 11330,\n  \"corpse</w>\": 29408,\n  \"corpus</w>\": 31672,\n  \"correc\": 5011,\n  \"correct</w>\": 8340,\n  \"corrected</w>\": 35628,\n  \"correction</w>\": 20843,\n  \"correctional</w>\": 38030,\n  \"corrections</w>\": 37507,\n  \"correctly</w>\": 15359,\n  \"correlation</w>\": 29218,\n  \"correspon\": 20203,\n  \"correspondent</w>\": 29996,\n  \"corri\": 12974,\n  \"corridor</w>\": 20592,\n  \"corrie</w>\": 23961,\n  \"corro\": 24936,\n  \"corro</w>\": 42033,\n  \"corrosion</w>\": 39191,\n  \"corru\": 6501,\n  \"corrup\": 30429,\n  \"corrupt</w>\": 15194,\n  \"corruption</w>\": 9141,\n  \"corsa</w>\": 47670,\n  \"corsair</w>\": 42367,\n  \"corset</w>\": 40408,\n  \"cortex</w>\": 40109,\n  \"cortez</w>\": 30461,\n  \"corvette</w>\": 24367,\n  \"cory\": 23221,\n  \"cory</w>\": 18329,\n  \"cos\": 5865,\n  \"cos</w>\": 5700,\n  \"cosby</w>\": 30324,\n  \"cosc\": 45944,\n  \"coscino</w>\": 47909,\n  \"cose</w>\": 26495,\n  \"cosm\": 37486,\n  \"cosme\": 9628,\n  \"cosmetic</w>\": 23918,\n  \"cosmetics</w>\": 12896,\n  \"cosmic\": 47398,\n  \"cosmic</w>\": 18304,\n  \"cosmo\": 12829,\n  \"cosmo</w>\": 32072,\n  \"cosmopolitan</w>\": 35518,\n  \"cosmos</w>\": 22151,\n  \"cospla\": 15149,\n  \"cosplay\": 42401,\n  \"cosplay</w>\": 6435,\n  \"cosplayer</w>\": 30215,\n  \"cosplaying</w>\": 46701,\n  \"cost\": 11360,\n  \"cost</w>\": 4713,\n  \"costa</w>\": 10480,\n  \"costar\": 28659,\n  \"costarica</w>\": 31272,\n  \"costco</w>\": 31045,\n  \"costello</w>\": 30667,\n  \"costing</w>\": 39193,\n  \"costly</w>\": 30170,\n  \"costs</w>\": 7628,\n  \"costu\": 5786,\n  \"costume</w>\": 7235,\n  \"costumes</w>\": 15150,\n  \"cosy</w>\": 22848,\n  \"cot\": 4718,\n  \"cot</w>\": 5871,\n  \"cote\": 44234,\n  \"cote</w>\": 20751,\n  \"cotland</w>\": 32576,\n  \"cotsw\": 23303,\n  \"cotswolds</w>\": 35546,\n  \"cott\": 8211,\n  \"cott</w>\": 11349,\n  \"cottage</w>\": 12155,\n  \"cottages</w>\": 34405,\n  \"cotton\": 22218,\n  \"cotton</w>\": 7050,\n  \"cou\": 1368,\n  \"couch</w>\": 12724,\n  \"cougar\": 35028,\n  \"cougar</w>\": 27042,\n  \"cougars</w>\": 20425,\n  \"cough\": 35631,\n  \"cough</w>\": 18498,\n  \"cougs</w>\": 28482,\n  \"coul\": 22483,\n  \"could\": 44812,\n  \"could</w>\": 1510,\n  \"couldn</w>\": 4072,\n  \"couldnt</w>\": 29042,\n  \"coulter</w>\": 42291,\n  \"coun\": 939,\n  \"counc\": 12927,\n  \"council\": 18187,\n  \"council</w>\": 3620,\n  \"councill\": 15732,\n  \"councillor</w>\": 21179,\n  \"councillors</w>\": 29695,\n  \"councilman</w>\": 40833,\n  \"councils</w>\": 29938,\n  \"counsel\": 13780,\n  \"counsel</w>\": 19814,\n  \"counseling</w>\": 25000,\n  \"counsell\": 47510,\n  \"counselling</w>\": 40581,\n  \"counselor</w>\": 26148,\n  \"counselors</w>\": 38688,\n  \"count\": 6073,\n  \"count</w>\": 5887,\n  \"countdown\": 39559,\n  \"countdown</w>\": 7500,\n  \"counted</w>\": 23149,\n  \"counter\": 10134,\n  \"counter</w>\": 7352,\n  \"counterfe\": 33067,\n  \"counterfeit</w>\": 44242,\n  \"counterpart</w>\": 39216,\n  \"counterparts</w>\": 42106,\n  \"counters</w>\": 46170,\n  \"countess</w>\": 46276,\n  \"counties</w>\": 12338,\n  \"counting</w>\": 9723,\n  \"countless</w>\": 21819,\n  \"countries</w>\": 5489,\n  \"country\": 7896,\n  \"country</w>\": 2157,\n  \"countryfile</w>\": 47023,\n  \"countrymusic</w>\": 30372,\n  \"countryside</w>\": 16303,\n  \"counts</w>\": 12264,\n  \"county\": 18734,\n  \"county</w>\": 2116,\n  \"coup\": 9871,\n  \"coup</w>\": 16479,\n  \"coupe</w>\": 16773,\n  \"couple\": 40136,\n  \"couple</w>\": 3377,\n  \"coupled</w>\": 37153,\n  \"couples</w>\": 14752,\n  \"coupling</w>\": 45595,\n  \"coupon</w>\": 14019,\n  \"coupons</w>\": 23945,\n  \"cour\": 1391,\n  \"coura\": 4436,\n  \"courage</w>\": 9828,\n  \"courageous</w>\": 25005,\n  \"courier</w>\": 27217,\n  \"cours</w>\": 21493,\n  \"course\": 43225,\n  \"course</w>\": 2613,\n  \"courses</w>\": 9464,\n  \"court\": 16837,\n  \"court</w>\": 2908,\n  \"courte\": 5088,\n  \"courtesy</w>\": 5228,\n  \"courthouse</w>\": 22205,\n  \"courtney\": 33601,\n  \"courtney</w>\": 15990,\n  \"courtroom</w>\": 41071,\n  \"courts</w>\": 13514,\n  \"courty\": 20121,\n  \"courtyard</w>\": 21900,\n  \"cous</w>\": 48397,\n  \"cousin</w>\": 7780,\n  \"cousins</w>\": 14073,\n  \"cout\": 29118,\n  \"coutinho</w>\": 35530,\n  \"couture</w>\": 14808,\n  \"cov\": 19384,\n  \"cov</w>\": 48385,\n  \"cove\": 21700,\n  \"cove</w>\": 14708,\n  \"coven\": 12483,\n  \"covenant</w>\": 29647,\n  \"coventry</w>\": 18007,\n  \"cover\": 13534,\n  \"cover</w>\": 2202,\n  \"coverage</w>\": 6810,\n  \"covered</w>\": 5603,\n  \"covering</w>\": 9462,\n  \"covers</w>\": 7745,\n  \"covert</w>\": 40134,\n  \"coveted</w>\": 36119,\n  \"covington</w>\": 43196,\n  \"cow\": 5076,\n  \"cow</w>\": 9706,\n  \"cowan</w>\": 42699,\n  \"coward</w>\": 33729,\n  \"cowards</w>\": 48972,\n  \"cowboy\": 25833,\n  \"cowboy</w>\": 13657,\n  \"cowboys</w>\": 11864,\n  \"cowboysnation</w>\": 43082,\n  \"cowell</w>\": 39015,\n  \"cowgirl</w>\": 47090,\n  \"coworker</w>\": 30727,\n  \"coworkers</w>\": 30821,\n  \"coworking</w>\": 36034,\n  \"cows</w>\": 15204,\n  \"cowx</w>\": 23831,\n  \"cox\": 25784,\n  \"cox</w>\": 11597,\n  \"coy\": 12765,\n  \"coy</w>\": 15742,\n  \"coyi</w>\": 48407,\n  \"coyle</w>\": 45348,\n  \"coyne</w>\": 44729,\n  \"coyo\": 16614,\n  \"coyote</w>\": 26586,\n  \"coyotes</w>\": 30423,\n  \"coys</w>\": 19736,\n  \"coz\": 39922,\n  \"coz</w>\": 14282,\n  \"cozy</w>\": 14873,\n  \"cp\": 7905,\n  \"cp</w>\": 9130,\n  \"cpa</w>\": 30095,\n  \"cpac</w>\": 45731,\n  \"cpc</w>\": 26125,\n  \"cpd</w>\": 23402,\n  \"cpec</w>\": 48007,\n  \"cpfc</w>\": 27553,\n  \"cpi</w>\": 41795,\n  \"cpl</w>\": 26852,\n  \"cpr</w>\": 25134,\n  \"cps</w>\": 27078,\n  \"cpt</w>\": 32892,\n  \"cpu</w>\": 27700,\n  \"cq\": 48910,\n  \"cq</w>\": 48417,\n  \"cr\": 1075,\n  \"cr</w>\": 3483,\n  \"cra\": 1184,\n  \"cra</w>\": 18362,\n  \"crab\": 27382,\n  \"crab</w>\": 11574,\n  \"crabs</w>\": 30908,\n  \"crack\": 11222,\n  \"crack</w>\": 10334,\n  \"crackdown</w>\": 29527,\n  \"cracked</w>\": 19826,\n  \"cracker</w>\": 16298,\n  \"crackers</w>\": 26200,\n  \"cracking</w>\": 13008,\n  \"cracks</w>\": 21426,\n  \"cracy</w>\": 24749,\n  \"cradle</w>\": 29384,\n  \"crae</w>\": 40438,\n  \"craf\": 10873,\n  \"craft\": 7717,\n  \"craft</w>\": 3588,\n  \"craftbeer</w>\": 12371,\n  \"crafted</w>\": 12424,\n  \"crafthour</w>\": 42324,\n  \"crafting</w>\": 26886,\n  \"crafts\": 33276,\n  \"crafts</w>\": 13383,\n  \"craftsman</w>\": 39528,\n  \"craftsmanship</w>\": 36682,\n  \"crafty</w>\": 32317,\n  \"craic</w>\": 46962,\n  \"craig\": 14042,\n  \"craig</w>\": 8061,\n  \"craigslist</w>\": 43865,\n  \"cram\": 29809,\n  \"cramer</w>\": 44592,\n  \"cramps</w>\": 46106,\n  \"cran\": 7761,\n  \"cranberries</w>\": 49361,\n  \"cranberry</w>\": 23824,\n  \"crane</w>\": 14626,\n  \"cranes</w>\": 26979,\n  \"crani\": 45674,\n  \"crank\": 46246,\n  \"crank</w>\": 32283,\n  \"cranston</w>\": 44340,\n  \"crap</w>\": 11899,\n  \"crappy</w>\": 30475,\n  \"crash\": 37150,\n  \"crash</w>\": 5033,\n  \"crashed</w>\": 16638,\n  \"crashes</w>\": 17013,\n  \"crashing</w>\": 24991,\n  \"crat</w>\": 46696,\n  \"crate</w>\": 24756,\n  \"crater</w>\": 22663,\n  \"crates</w>\": 30172,\n  \"cratic</w>\": 32175,\n  \"crative</w>\": 39999,\n  \"crats</w>\": 43056,\n  \"crave</w>\": 33397,\n  \"craven</w>\": 33625,\n  \"craving</w>\": 18344,\n  \"cravings</w>\": 34476,\n  \"craw\": 7400,\n  \"crawfish</w>\": 42772,\n  \"crawford</w>\": 15918,\n  \"crawl</w>\": 20106,\n  \"crawler</w>\": 41012,\n  \"crawley</w>\": 42316,\n  \"crawling</w>\": 37066,\n  \"cray\": 24184,\n  \"cray</w>\": 27032,\n  \"crayon</w>\": 41801,\n  \"crayons</w>\": 43508,\n  \"craz\": 25776,\n  \"craze</w>\": 30637,\n  \"craziest</w>\": 32690,\n  \"craziness</w>\": 46436,\n  \"crazy\": 17540,\n  \"crazy</w>\": 3578,\n  \"crc</w>\": 25618,\n  \"cre\": 798,\n  \"cre</w>\": 17762,\n  \"cream\": 23184,\n  \"cream</w>\": 3867,\n  \"creams</w>\": 41447,\n  \"creamy</w>\": 17206,\n  \"crease</w>\": 48441,\n  \"create\": 30949,\n  \"create</w>\": 3380,\n  \"created</w>\": 4080,\n  \"creates</w>\": 10361,\n  \"creati\": 6714,\n  \"creating</w>\": 5524,\n  \"creation\": 38293,\n  \"creation</w>\": 6900,\n  \"creations</w>\": 17411,\n  \"creative\": 15237,\n  \"creative</w>\": 4450,\n  \"creatives</w>\": 29352,\n  \"creativity</w>\": 9636,\n  \"creator</w>\": 10173,\n  \"creators</w>\": 17981,\n  \"creature</w>\": 14317,\n  \"creatures</w>\": 13938,\n  \"cred\": 7314,\n  \"cred</w>\": 22377,\n  \"credenti\": 29487,\n  \"credentials</w>\": 33422,\n  \"credi\": 21097,\n  \"credibility</w>\": 34984,\n  \"credible</w>\": 32983,\n  \"credit\": 21467,\n  \"credit</w>\": 3900,\n  \"credited</w>\": 32480,\n  \"credits</w>\": 10654,\n  \"creds</w>\": 43462,\n  \"cree\": 33961,\n  \"cree</w>\": 36014,\n  \"creed</w>\": 18845,\n  \"creek\": 26120,\n  \"creek</w>\": 5526,\n  \"creep\": 8153,\n  \"creep</w>\": 26084,\n  \"creeper</w>\": 38662,\n  \"creeping</w>\": 29697,\n  \"creeps</w>\": 45135,\n  \"creepy</w>\": 11943,\n  \"creighton</w>\": 42823,\n  \"creme</w>\": 22681,\n  \"creole</w>\": 45632,\n  \"crepe</w>\": 38611,\n  \"crescent</w>\": 18211,\n  \"cress</w>\": 39124,\n  \"crest\": 35985,\n  \"crest</w>\": 15760,\n  \"crested</w>\": 36656,\n  \"crete</w>\": 8584,\n  \"crew\": 21560,\n  \"crew</w>\": 3462,\n  \"crewe</w>\": 43284,\n  \"crews</w>\": 10463,\n  \"cri\": 1621,\n  \"cri</w>\": 38962,\n  \"crib</w>\": 23271,\n  \"cric\": 4328,\n  \"cricke\": 19098,\n  \"cricket\": 21859,\n  \"cricket</w>\": 5373,\n  \"cricketer</w>\": 28439,\n  \"cricketers</w>\": 43986,\n  \"cried</w>\": 15290,\n  \"cries</w>\": 19769,\n  \"crime\": 13872,\n  \"crime</w>\": 4896,\n  \"crimea</w>\": 28614,\n  \"crimes</w>\": 11827,\n  \"crimin\": 5874,\n  \"criminal\": 30197,\n  \"criminal</w>\": 8255,\n  \"criminals</w>\": 18783,\n  \"crimson</w>\": 19437,\n  \"cringe</w>\": 42588,\n  \"cripp\": 33588,\n  \"cris</w>\": 37818,\n  \"crises</w>\": 36403,\n  \"crisis</w>\": 5712,\n  \"crisp</w>\": 15145,\n  \"crispr</w>\": 39784,\n  \"crisps</w>\": 35744,\n  \"crispy</w>\": 16458,\n  \"criss</w>\": 29708,\n  \"cristi\": 12699,\n  \"cristian</w>\": 48808,\n  \"cristiano</w>\": 14807,\n  \"cristina</w>\": 33395,\n  \"cristo</w>\": 38315,\n  \"crit\": 3613,\n  \"crit</w>\": 48130,\n  \"criteri\": 33627,\n  \"criteria</w>\": 24849,\n  \"criterion</w>\": 43841,\n  \"criti\": 25333,\n  \"critic\": 12417,\n  \"critic</w>\": 19361,\n  \"critical\": 15314,\n  \"critical</w>\": 6808,\n  \"critically</w>\": 21570,\n  \"criticalrole\": 33606,\n  \"criticalrole</w>\": 22742,\n  \"criticalrolefanart</w>\": 43663,\n  \"critici\": 20333,\n  \"criticism</w>\": 17405,\n  \"criticize</w>\": 46081,\n  \"criticized</w>\": 41557,\n  \"critics</w>\": 16946,\n  \"critique</w>\": 32982,\n  \"critters</w>\": 35423,\n  \"crm</w>\": 22610,\n  \"cro\": 1192,\n  \"cro</w>\": 22522,\n  \"croati\": 28072,\n  \"croatia</w>\": 13323,\n  \"croatian</w>\": 34795,\n  \"croc</w>\": 43350,\n  \"croche\": 35352,\n  \"crochet</w>\": 17554,\n  \"crock\": 41685,\n  \"crocker</w>\": 47843,\n  \"crockett</w>\": 48313,\n  \"crocod\": 24519,\n  \"crocodile</w>\": 24757,\n  \"crocs</w>\": 38988,\n  \"croft</w>\": 16657,\n  \"croissant</w>\": 46011,\n  \"croix</w>\": 44735,\n  \"crom\": 25082,\n  \"crombie</w>\": 46162,\n  \"cromwell</w>\": 45345,\n  \"cron\": 17361,\n  \"croo\": 16443,\n  \"crook</w>\": 43744,\n  \"crooked\": 48473,\n  \"crooked</w>\": 25644,\n  \"crooks</w>\": 44226,\n  \"crop\": 40751,\n  \"crop</w>\": 9955,\n  \"cropped</w>\": 31139,\n  \"crops</w>\": 16290,\n  \"crore</w>\": 18274,\n  \"crores</w>\": 37281,\n  \"cros\": 16670,\n  \"crosby</w>\": 21095,\n  \"cross\": 5266,\n  \"cross</w>\": 3417,\n  \"crossed</w>\": 11731,\n  \"crosses</w>\": 20473,\n  \"crossfit\": 47214,\n  \"crossfit</w>\": 20395,\n  \"crossing</w>\": 8673,\n  \"crossings</w>\": 43517,\n  \"crossover</w>\": 17194,\n  \"crossroads</w>\": 27427,\n  \"crossword</w>\": 32945,\n  \"crou\": 31206,\n  \"crouch</w>\": 36506,\n  \"crow\": 3138,\n  \"crow</w>\": 16019,\n  \"crowd\": 12036,\n  \"crowd</w>\": 4570,\n  \"crowded</w>\": 20182,\n  \"crowdfunding</w>\": 17971,\n  \"crowds</w>\": 16092,\n  \"crowe</w>\": 33560,\n  \"crowley</w>\": 32287,\n  \"crown\": 22190,\n  \"crown</w>\": 6902,\n  \"crowned</w>\": 16109,\n  \"crowns</w>\": 33229,\n  \"crows</w>\": 27134,\n  \"croy\": 21676,\n  \"croydon</w>\": 27116,\n  \"crs</w>\": 28449,\n  \"crt</w>\": 43877,\n  \"cru\": 1815,\n  \"cru</w>\": 29788,\n  \"cruci\": 18499,\n  \"crucial</w>\": 12396,\n  \"crude</w>\": 20677,\n  \"cruel\": 16073,\n  \"cruel</w>\": 17573,\n  \"cruelty</w>\": 20675,\n  \"cruis\": 27721,\n  \"cruise\": 36425,\n  \"cruise</w>\": 6764,\n  \"cruiser</w>\": 21394,\n  \"cruises</w>\": 19214,\n  \"cruising</w>\": 19743,\n  \"crum\": 43268,\n  \"crumb\": 48327,\n  \"crumb</w>\": 39909,\n  \"crumble</w>\": 36595,\n  \"crumbs</w>\": 35893,\n  \"crun\": 17407,\n  \"crunch</w>\": 16620,\n  \"crunchy</w>\": 31366,\n  \"crusad\": 19133,\n  \"crusade</w>\": 36846,\n  \"crusader</w>\": 40171,\n  \"crusaders</w>\": 31319,\n  \"crush\": 22296,\n  \"crush</w>\": 7610,\n  \"crushed</w>\": 18270,\n  \"crusher</w>\": 44923,\n  \"crushes</w>\": 35844,\n  \"crushing</w>\": 20790,\n  \"crust</w>\": 23136,\n  \"crusted</w>\": 37314,\n  \"cruz\": 33689,\n  \"cruz</w>\": 8403,\n  \"cry\": 2837,\n  \"cry</w>\": 6290,\n  \"crying</w>\": 6828,\n  \"cryo\": 32215,\n  \"cryp\": 4865,\n  \"crypt</w>\": 37814,\n  \"cryptic</w>\": 46925,\n  \"crypto\": 8080,\n  \"crypto</w>\": 9608,\n  \"cryptocurrencies</w>\": 33329,\n  \"cryptocurrency</w>\": 12070,\n  \"cryst\": 15891,\n  \"crystal\": 17387,\n  \"crystal</w>\": 6517,\n  \"crystalli\": 47551,\n  \"crystals</w>\": 18350,\n  \"cs\": 11978,\n  \"cs</w>\": 2804,\n  \"csa</w>\": 26355,\n  \"csc\": 41727,\n  \"csc</w>\": 37266,\n  \"csd</w>\": 36913,\n  \"cse</w>\": 41659,\n  \"csg</w>\": 47085,\n  \"csgo</w>\": 28928,\n  \"csi\": 41750,\n  \"csi</w>\": 28070,\n  \"csk</w>\": 43036,\n  \"csm</w>\": 40061,\n  \"csn</w>\": 46329,\n  \"cso</w>\": 43864,\n  \"csp</w>\": 39243,\n  \"csr\": 32105,\n  \"csr</w>\": 24598,\n  \"csrracing</w>\": 44193,\n  \"css\": 41418,\n  \"css</w>\": 19846,\n  \"cst</w>\": 17016,\n  \"csu\": 35948,\n  \"csu</w>\": 31261,\n  \"csw</w>\": 41031,\n  \"ct\": 3381,\n  \"ct</w>\": 1122,\n  \"cta</w>\": 28397,\n  \"ctar</w>\": 27842,\n  \"ctc</w>\": 34123,\n  \"cte</w>\": 31410,\n  \"cted</w>\": 2910,\n  \"ctf</w>\": 35250,\n  \"cthulhu</w>\": 41064,\n  \"cting</w>\": 7985,\n  \"ction\": 17578,\n  \"ction</w>\": 1569,\n  \"ctions</w>\": 7021,\n  \"ctive</w>\": 9313,\n  \"cto</w>\": 17445,\n  \"ctor</w>\": 8108,\n  \"ctr\": 35602,\n  \"ctr</w>\": 18481,\n  \"cts</w>\": 6936,\n  \"ctto</w>\": 25118,\n  \"ctu\": 20834,\n  \"cture</w>\": 17668,\n  \"ctv\": 21213,\n  \"ctv</w>\": 27590,\n  \"cu\": 729,\n  \"cu</w>\": 11224,\n  \"cuando</w>\": 40388,\n  \"cub\": 16938,\n  \"cub</w>\": 19972,\n  \"cuba</w>\": 11576,\n  \"cuban</w>\": 15536,\n  \"cube\": 47753,\n  \"cube</w>\": 11353,\n  \"cubes</w>\": 31413,\n  \"cubic\": 48159,\n  \"cubic</w>\": 29614,\n  \"cubs</w>\": 9858,\n  \"cuck\": 26364,\n  \"cuckoo</w>\": 38062,\n  \"cucu\": 16705,\n  \"cucumber</w>\": 19787,\n  \"cucumbers</w>\": 48065,\n  \"cud\": 42684,\n  \"cudd\": 12820,\n  \"cuddle</w>\": 19568,\n  \"cuddles</w>\": 24001,\n  \"cuddling</w>\": 29696,\n  \"cuddly</w>\": 36208,\n  \"cudi</w>\": 48713,\n  \"cue</w>\": 13424,\n  \"cuer\": 39506,\n  \"cues</w>\": 35719,\n  \"cuff\": 34693,\n  \"cuff</w>\": 22414,\n  \"cufflinks</w>\": 43938,\n  \"cuffs</w>\": 37221,\n  \"cuis\": 9938,\n  \"cuisine</w>\": 10605,\n  \"cuk</w>\": 34838,\n  \"cul\": 1877,\n  \"cula</w>\": 35935,\n  \"cular</w>\": 10940,\n  \"culars</w>\": 45719,\n  \"cule</w>\": 31066,\n  \"cules</w>\": 18984,\n  \"culin\": 14772,\n  \"culinary</w>\": 16466,\n  \"cull\": 21880,\n  \"cull</w>\": 42061,\n  \"cullen</w>\": 25973,\n  \"culmin\": 33778,\n  \"culo\": 36305,\n  \"culprit</w>\": 41593,\n  \"cult</w>\": 11965,\n  \"cultiv\": 16781,\n  \"cultivate</w>\": 42983,\n  \"cultivated</w>\": 48901,\n  \"cultivation</w>\": 41539,\n  \"cultur\": 20780,\n  \"cultural\": 34908,\n  \"cultural</w>\": 6753,\n  \"culturally</w>\": 36783,\n  \"culture\": 20197,\n  \"culture</w>\": 3673,\n  \"cultured</w>\": 40176,\n  \"cultures</w>\": 19552,\n  \"culver</w>\": 42103,\n  \"cum\": 20142,\n  \"cum</w>\": 27119,\n  \"cumb\": 10858,\n  \"cumber\": 15309,\n  \"cumberbatch</w>\": 27541,\n  \"cumberland</w>\": 28747,\n  \"cumbri\": 32010,\n  \"cumbria</w>\": 17953,\n  \"cumin</w>\": 42285,\n  \"cumple</w>\": 47050,\n  \"cumul\": 42961,\n  \"cumulative</w>\": 47610,\n  \"cumulus</w>\": 46313,\n  \"cun\": 12423,\n  \"cun</w>\": 29532,\n  \"cunningham</w>\": 25321,\n  \"cuomo</w>\": 25681,\n  \"cup\": 5059,\n  \"cup</w>\": 1937,\n  \"cupboard</w>\": 32074,\n  \"cupcake</w>\": 17025,\n  \"cupcakes</w>\": 12747,\n  \"cupid</w>\": 34885,\n  \"cuppa</w>\": 28077,\n  \"cups</w>\": 11463,\n  \"cur\": 1092,\n  \"cur</w>\": 33073,\n  \"curated</w>\": 20341,\n  \"curator</w>\": 20753,\n  \"curb</w>\": 21931,\n  \"curd</w>\": 38881,\n  \"cure\": 36758,\n  \"cure</w>\": 9088,\n  \"cured</w>\": 26248,\n  \"cures</w>\": 38204,\n  \"curfew</w>\": 48826,\n  \"curi\": 12640,\n  \"curing</w>\": 44169,\n  \"curiosity</w>\": 21583,\n  \"curious</w>\": 9865,\n  \"curl</w>\": 24306,\n  \"curled</w>\": 43734,\n  \"curling</w>\": 18543,\n  \"curls</w>\": 24340,\n  \"curly</w>\": 20795,\n  \"curran</w>\": 40999,\n  \"currant</w>\": 43501,\n  \"curren\": 6142,\n  \"currencies</w>\": 23530,\n  \"currency</w>\": 7853,\n  \"current</w>\": 3653,\n  \"currently</w>\": 3792,\n  \"currents</w>\": 35450,\n  \"curric\": 16201,\n  \"curriculum</w>\": 17947,\n  \"currie</w>\": 39385,\n  \"curry\": 49285,\n  \"curry</w>\": 8051,\n  \"curse</w>\": 18479,\n  \"cursed</w>\": 26408,\n  \"cursor</w>\": 46546,\n  \"curt</w>\": 38137,\n  \"curtain</w>\": 17223,\n  \"curtains</w>\": 30223,\n  \"curti\": 39925,\n  \"curtis</w>\": 13808,\n  \"curve</w>\": 15792,\n  \"curved</w>\": 25789,\n  \"curves</w>\": 22814,\n  \"curvy</w>\": 45788,\n  \"cus</w>\": 2736,\n  \"cusa</w>\": 47414,\n  \"cuse</w>\": 37950,\n  \"cush\": 43731,\n  \"cushi\": 15333,\n  \"cushion</w>\": 20853,\n  \"cushions</w>\": 34163,\n  \"cussion</w>\": 16658,\n  \"cussions</w>\": 46853,\n  \"cust\": 20900,\n  \"custard</w>\": 26516,\n  \"custo\": 4376,\n  \"custody</w>\": 16176,\n  \"custom\": 2662,\n  \"custom</w>\": 4996,\n  \"custome\": 41323,\n  \"customer\": 24035,\n  \"customer</w>\": 5102,\n  \"customerexperience</w>\": 45167,\n  \"customers</w>\": 5528,\n  \"customerservice</w>\": 40611,\n  \"customiz\": 41793,\n  \"customizable</w>\": 48253,\n  \"customization</w>\": 48244,\n  \"customize</w>\": 32179,\n  \"customized</w>\": 23229,\n  \"customs</w>\": 16880,\n  \"cut\": 10511,\n  \"cut</w>\": 3032,\n  \"cute\": 16031,\n  \"cute</w>\": 2242,\n  \"cuteness</w>\": 19342,\n  \"cuter</w>\": 27151,\n  \"cutest</w>\": 8032,\n  \"cuth\": 44328,\n  \"cutie</w>\": 10733,\n  \"cuties\": 40939,\n  \"cuties</w>\": 23420,\n  \"cutiesaturday</w>\": 41883,\n  \"cutler</w>\": 40428,\n  \"cutlery</w>\": 49073,\n  \"cutout</w>\": 45016,\n  \"cuts</w>\": 7435,\n  \"cutt\": 27338,\n  \"cutt</w>\": 47647,\n  \"cutter</w>\": 19719,\n  \"cutters</w>\": 44783,\n  \"cutting</w>\": 7266,\n  \"cuz</w>\": 9215,\n  \"cv\": 13531,\n  \"cv</w>\": 13947,\n  \"cvs</w>\": 29603,\n  \"cw\": 10652,\n  \"cw</w>\": 11065,\n  \"cwc</w>\": 19179,\n  \"cwgc</w>\": 48527,\n  \"cws</w>\": 45186,\n  \"cx\": 44457,\n  \"cx</w>\": 14283,\n  \"cy\": 1470,\n  \"cy</w>\": 1678,\n  \"cyber\": 5830,\n  \"cyber</w>\": 10210,\n  \"cybercrime</w>\": 41772,\n  \"cybermonday</w>\": 36578,\n  \"cyberpunk</w>\": 36896,\n  \"cybersecurity</w>\": 10581,\n  \"cyborg</w>\": 36650,\n  \"cycl\": 9791,\n  \"cycle\": 19083,\n  \"cycle</w>\": 5072,\n  \"cycled</w>\": 31055,\n  \"cycles</w>\": 14605,\n  \"cycli\": 12201,\n  \"cycling\": 26353,\n  \"cycling</w>\": 6321,\n  \"cyclist</w>\": 20686,\n  \"cyclists</w>\": 20303,\n  \"cyclo\": 18122,\n  \"cyclone\": 48094,\n  \"cyclone</w>\": 20917,\n  \"cyclones</w>\": 34669,\n  \"cylin\": 18569,\n  \"cylinder</w>\": 22092,\n  \"cylinders</w>\": 48888,\n  \"cymb\": 36677,\n  \"cymru</w>\": 24005,\n  \"cyn\": 14324,\n  \"cynthi\": 41994,\n  \"cynthia</w>\": 23748,\n  \"cyp\": 14809,\n  \"cypress</w>\": 25347,\n  \"cypri\": 36481,\n  \"cyprus</w>\": 15263,\n  \"cyril</w>\": 36028,\n  \"cyrus</w>\": 14204,\n  \"cystic</w>\": 46131,\n  \"cyto\": 31864,\n  \"cz\": 22898,\n  \"cz</w>\": 22921,\n  \"cze\": 12152,\n  \"czech\": 43151,\n  \"czech</w>\": 16141,\n  \"cÃ©\": 36454,\n  \"cÃ©</w>\": 18317,\n  \"d\": 67,\n  \"d</w>\": 323,\n  \"da\": 925,\n  \"da</w>\": 1140,\n  \"daa</w>\": 32642,\n  \"daan</w>\": 44814,\n  \"dab\": 10413,\n  \"dab</w>\": 22900,\n  \"dac\": 16222,\n  \"dac</w>\": 27478,\n  \"daca</w>\": 28477,\n  \"dach\": 34166,\n  \"dachsh\": 41641,\n  \"dachshund</w>\": 42720,\n  \"dad\": 4346,\n  \"dad</w>\": 2639,\n  \"dada</w>\": 31325,\n  \"daddy\": 29466,\n  \"daddy</w>\": 6546,\n  \"dade</w>\": 23299,\n  \"dades</w>\": 28289,\n  \"dads</w>\": 12741,\n  \"dae\": 23358,\n  \"dae</w>\": 15422,\n  \"daener\": 46934,\n  \"daes\": 47282,\n  \"daesh</w>\": 35047,\n  \"daf\": 9972,\n  \"daf</w>\": 36704,\n  \"daffodils</w>\": 44769,\n  \"daft</w>\": 36347,\n  \"dag\": 11434,\n  \"dag</w>\": 25650,\n  \"dagger</w>\": 34251,\n  \"dah\": 16976,\n  \"dah</w>\": 11776,\n  \"dahl\": 45816,\n  \"dahl</w>\": 22621,\n  \"dahlia</w>\": 41768,\n  \"dai\": 13559,\n  \"dai</w>\": 10632,\n  \"dail\": 14676,\n  \"dailies</w>\": 21260,\n  \"daily\": 6689,\n  \"daily</w>\": 2873,\n  \"dailynews</w>\": 43466,\n  \"dailys\": 43160,\n  \"dailysketch</w>\": 46738,\n  \"daim\": 40421,\n  \"dain\": 32222,\n  \"dain</w>\": 28315,\n  \"daipur</w>\": 47631,\n  \"dair\": 19998,\n  \"dair</w>\": 42078,\n  \"dairy\": 25243,\n  \"dairy</w>\": 10302,\n  \"dairyfree</w>\": 49366,\n  \"dais\": 10502,\n  \"daisi\": 39947,\n  \"daisies</w>\": 40654,\n  \"daisy\": 39310,\n  \"daisy</w>\": 12865,\n  \"dak\": 6999,\n  \"dak</w>\": 16095,\n  \"dakar</w>\": 31137,\n  \"dakota\": 38522,\n  \"dakota</w>\": 12358,\n  \"dal\": 2476,\n  \"dal</w>\": 5601,\n  \"dala</w>\": 42675,\n  \"dalai</w>\": 41222,\n  \"dalail\": 35169,\n  \"dalailama</w>\": 35849,\n  \"dale\": 11533,\n  \"dale</w>\": 4677,\n  \"dalejr</w>\": 38207,\n  \"dales</w>\": 29031,\n  \"daley</w>\": 28544,\n  \"dalgo</w>\": 43614,\n  \"dali\": 36735,\n  \"dali</w>\": 25703,\n  \"dalit</w>\": 45432,\n  \"dall</w>\": 43631,\n  \"dalla\": 16772,\n  \"dallas\": 27414,\n  \"dallas</w>\": 5759,\n  \"dallascowboys</w>\": 33016,\n  \"dalmati\": 44275,\n  \"dalton</w>\": 21488,\n  \"daly</w>\": 24873,\n  \"dam\": 1880,\n  \"dam</w>\": 4926,\n  \"damage</w>\": 6822,\n  \"damaged</w>\": 13568,\n  \"damages</w>\": 28842,\n  \"damaging</w>\": 20610,\n  \"damas\": 23345,\n  \"damascus</w>\": 25396,\n  \"dame</w>\": 10069,\n  \"dames</w>\": 44548,\n  \"dami\": 17783,\n  \"damian\": 43307,\n  \"damian</w>\": 25375,\n  \"damien</w>\": 25090,\n  \"dammit</w>\": 31057,\n  \"damn\": 37409,\n  \"damn</w>\": 4451,\n  \"damned</w>\": 28428,\n  \"damon\": 48503,\n  \"damon</w>\": 18244,\n  \"damp</w>\": 26520,\n  \"dams</w>\": 37680,\n  \"dan\": 2257,\n  \"dan</w>\": 2284,\n  \"dana\": 44834,\n  \"dana</w>\": 13777,\n  \"danao</w>\": 38598,\n  \"danc\": 3945,\n  \"dance\": 10619,\n  \"dance</w>\": 2724,\n  \"danced</w>\": 32891,\n  \"dancehall</w>\": 33300,\n  \"dancer</w>\": 11400,\n  \"dancers</w>\": 13153,\n  \"dances</w>\": 24083,\n  \"dancing\": 33280,\n  \"dancing</w>\": 6226,\n  \"dand\": 12593,\n  \"dandelion</w>\": 38903,\n  \"dandy</w>\": 31932,\n  \"dane</w>\": 19330,\n  \"danes</w>\": 47477,\n  \"dang\": 4283,\n  \"dang</w>\": 14992,\n  \"danger\": 20083,\n  \"danger</w>\": 11212,\n  \"dangerous</w>\": 7350,\n  \"dangerously</w>\": 35012,\n  \"dangers</w>\": 23726,\n  \"dangle</w>\": 39907,\n  \"dani\": 3001,\n  \"dani</w>\": 17009,\n  \"daniel\": 7859,\n  \"daniel</w>\": 4981,\n  \"daniela</w>\": 44466,\n  \"danielle\": 30396,\n  \"danielle</w>\": 15292,\n  \"danielpadilla</w>\": 34702,\n  \"daniels</w>\": 16146,\n  \"danish</w>\": 15467,\n  \"dank</w>\": 31849,\n  \"dann\": 11951,\n  \"danny\": 14950,\n  \"danny</w>\": 7621,\n  \"dano</w>\": 29703,\n  \"dans</w>\": 16241,\n  \"dant\": 48097,\n  \"dant</w>\": 28237,\n  \"dante</w>\": 21911,\n  \"danube</w>\": 44594,\n  \"dany</w>\": 47816,\n  \"dao</w>\": 36099,\n  \"dap\": 12149,\n  \"dap</w>\": 38034,\n  \"daph\": 24591,\n  \"daphne</w>\": 31687,\n  \"dapl</w>\": 34478,\n  \"dapp\": 46857,\n  \"dapper</w>\": 26071,\n  \"daq</w>\": 25381,\n  \"dar\": 1377,\n  \"dar</w>\": 6242,\n  \"dara</w>\": 17064,\n  \"darby</w>\": 34366,\n  \"darcy</w>\": 32916,\n  \"dare\": 14833,\n  \"dare</w>\": 9863,\n  \"daredevil</w>\": 28849,\n  \"dares</w>\": 42973,\n  \"dareto\": 46794,\n  \"dari\": 16292,\n  \"dari</w>\": 14552,\n  \"daria</w>\": 45622,\n  \"daries</w>\": 18184,\n  \"daring</w>\": 28166,\n  \"dario</w>\": 33918,\n  \"darius</w>\": 32606,\n  \"darje\": 49089,\n  \"dark\": 5724,\n  \"dark</w>\": 3144,\n  \"darker</w>\": 18737,\n  \"darkest</w>\": 25898,\n  \"darkness</w>\": 10521,\n  \"darling</w>\": 13048,\n  \"darlings</w>\": 39961,\n  \"darlington</w>\": 34565,\n  \"darn</w>\": 26059,\n  \"darrell</w>\": 33522,\n  \"darren\": 20263,\n  \"darren</w>\": 12275,\n  \"darry\": 29200,\n  \"darryl</w>\": 35359,\n  \"darshan</w>\": 34564,\n  \"dart\": 14001,\n  \"dart</w>\": 19841,\n  \"darth\": 41304,\n  \"darth</w>\": 23164,\n  \"dartmoor</w>\": 31477,\n  \"dartmouth</w>\": 29667,\n  \"darts</w>\": 15246,\n  \"darwin\": 43013,\n  \"darwin</w>\": 20926,\n  \"daryl\": 45607,\n  \"daryl</w>\": 24532,\n  \"das\": 9940,\n  \"das</w>\": 7359,\n  \"dash\": 13858,\n  \"dash</w>\": 10206,\n  \"dashboard</w>\": 27679,\n  \"dashi\": 12876,\n  \"dashing</w>\": 33825,\n  \"dat\": 1717,\n  \"dat</w>\": 9445,\n  \"data\": 14876,\n  \"data</w>\": 2281,\n  \"datab\": 11941,\n  \"database</w>\": 14678,\n  \"databases</w>\": 48384,\n  \"datac\": 27329,\n  \"datacenter</w>\": 40133,\n  \"datasci\": 14496,\n  \"datascience</w>\": 15748,\n  \"dataviz</w>\": 28138,\n  \"date\": 34300,\n  \"date</w>\": 1524,\n  \"dated</w>\": 13564,\n  \"dates</w>\": 7228,\n  \"dating</w>\": 8534,\n  \"dation</w>\": 15311,\n  \"datlantic\": 34270,\n  \"dato</w>\": 36075,\n  \"dats</w>\": 48674,\n  \"dau\": 3162,\n  \"dau</w>\": 33828,\n  \"daugh\": 42523,\n  \"daughter</w>\": 3944,\n  \"daughters</w>\": 13585,\n  \"daun\": 29470,\n  \"dav\": 3700,\n  \"dav</w>\": 46488,\n  \"davao</w>\": 31502,\n  \"dave\": 10089,\n  \"dave</w>\": 5077,\n  \"daven\": 28350,\n  \"davenport</w>\": 34624,\n  \"davey</w>\": 33391,\n  \"davi\": 1732,\n  \"david\": 4640,\n  \"david</w>\": 2259,\n  \"davidbowie</w>\": 44448,\n  \"davido</w>\": 35989,\n  \"davids</w>\": 46695,\n  \"davidson</w>\": 13166,\n  \"davies</w>\": 13120,\n  \"davin\": 43187,\n  \"davis\": 24426,\n  \"davis</w>\": 5536,\n  \"davison</w>\": 43725,\n  \"davos</w>\": 31887,\n  \"davy</w>\": 41565,\n  \"daw\": 5971,\n  \"daw</w>\": 24404,\n  \"dawg</w>\": 18660,\n  \"dawgs</w>\": 26431,\n  \"dawn\": 30590,\n  \"dawn</w>\": 7689,\n  \"dawson</w>\": 18611,\n  \"dax</w>\": 29458,\n  \"day\": 1405,\n  \"day</w>\": 575,\n  \"daya</w>\": 38165,\n  \"daybreak</w>\": 33862,\n  \"daycare</w>\": 36363,\n  \"daydream</w>\": 41587,\n  \"dayin\": 20332,\n  \"daylight</w>\": 20809,\n  \"dayo\": 29856,\n  \"dayo</w>\": 46605,\n  \"dayof\": 16272,\n  \"dayofthe\": 38043,\n  \"days</w>\": 1161,\n  \"daysof\": 12379,\n  \"daysofcode</w>\": 36537,\n  \"daysto\": 29886,\n  \"daystogo</w>\": 42198,\n  \"dayswild</w>\": 42052,\n  \"daytime</w>\": 22830,\n  \"dayton\": 35729,\n  \"dayton</w>\": 20262,\n  \"daytona</w>\": 16335,\n  \"dayweekend</w>\": 44526,\n  \"dayz</w>\": 35949,\n  \"daz\": 15449,\n  \"daz</w>\": 43844,\n  \"daze</w>\": 33591,\n  \"dazz\": 17149,\n  \"dazzle</w>\": 41164,\n  \"dazzling</w>\": 28821,\n  \"db\": 19100,\n  \"db</w>\": 8128,\n  \"dbacks</w>\": 31175,\n  \"dbs</w>\": 40558,\n  \"dbz</w>\": 49226,\n  \"dc\": 5074,\n  \"dc</w>\": 2743,\n  \"dca</w>\": 49107,\n  \"dcc</w>\": 33747,\n  \"dccomics</w>\": 17610,\n  \"dcfc</w>\": 35526,\n  \"dci</w>\": 35336,\n  \"dcs</w>\": 42878,\n  \"dcu</w>\": 42647,\n  \"dd\": 1353,\n  \"dd</w>\": 3766,\n  \"dda</w>\": 35202,\n  \"ddad</w>\": 39049,\n  \"dday\": 32689,\n  \"dday</w>\": 26243,\n  \"ddc</w>\": 48513,\n  \"ddd</w>\": 24183,\n  \"dddd</w>\": 35362,\n  \"dden</w>\": 5013,\n  \"dder</w>\": 9300,\n  \"dders</w>\": 24827,\n  \"ddi</w>\": 44450,\n  \"ddin</w>\": 17175,\n  \"dding\": 48101,\n  \"dding</w>\": 8974,\n  \"ddings</w>\": 49106,\n  \"ddington</w>\": 29238,\n  \"ddle\": 17633,\n  \"ddle</w>\": 8357,\n  \"ddled</w>\": 38392,\n  \"ddles</w>\": 33901,\n  \"ddleston</w>\": 25647,\n  \"ddling</w>\": 30981,\n  \"ddlovato</w>\": 28244,\n  \"ddos</w>\": 46463,\n  \"ddr</w>\": 26027,\n  \"dds</w>\": 48334,\n  \"ddu</w>\": 43836,\n  \"ddy\": 14981,\n  \"ddy</w>\": 7876,\n  \"de\": 561,\n  \"de</w>\": 654,\n  \"dea</w>\": 18477,\n  \"deacon</w>\": 29155,\n  \"dead\": 3906,\n  \"dead</w>\": 2747,\n  \"deadliest</w>\": 40811,\n  \"deadline\": 47209,\n  \"deadline</w>\": 8458,\n  \"deadlines</w>\": 44959,\n  \"deadly</w>\": 10756,\n  \"deadpool</w>\": 21471,\n  \"deaf\": 28229,\n  \"deaf</w>\": 18358,\n  \"deal\": 7249,\n  \"deal</w>\": 2696,\n  \"dealer</w>\": 15218,\n  \"dealers</w>\": 21697,\n  \"dealership</w>\": 32096,\n  \"dealing</w>\": 13138,\n  \"deals</w>\": 4469,\n  \"dealt</w>\": 30101,\n  \"dean\": 13807,\n  \"dean</w>\": 5828,\n  \"deandre</w>\": 43635,\n  \"deans</w>\": 46852,\n  \"dear\": 15696,\n  \"dear</w>\": 3817,\n  \"dearest</w>\": 24880,\n  \"dearly</w>\": 31880,\n  \"deas</w>\": 34715,\n  \"death\": 7163,\n  \"death</w>\": 2767,\n  \"deaths</w>\": 12253,\n  \"deau</w>\": 12399,\n  \"deaux</w>\": 19883,\n  \"deb\": 2987,\n  \"deb</w>\": 25687,\n  \"debat\": 32082,\n  \"debate</w>\": 5196,\n  \"debates</w>\": 19239,\n  \"debating</w>\": 23472,\n  \"debbie\": 47186,\n  \"debbie</w>\": 16735,\n  \"debit</w>\": 32410,\n  \"debor\": 16738,\n  \"deborah\": 40997,\n  \"deborah</w>\": 22150,\n  \"debra</w>\": 33233,\n  \"debris</w>\": 19208,\n  \"debt</w>\": 8932,\n  \"debts</w>\": 38770,\n  \"debu\": 9790,\n  \"debun\": 33123,\n  \"debut\": 42608,\n  \"debut</w>\": 4085,\n  \"debuted</w>\": 25215,\n  \"debuting</w>\": 34817,\n  \"debuts</w>\": 17044,\n  \"dec\": 3063,\n  \"dec</w>\": 4628,\n  \"deca</w>\": 33428,\n  \"decad\": 29914,\n  \"decade</w>\": 11099,\n  \"decadent</w>\": 41716,\n  \"decades</w>\": 10488,\n  \"decal</w>\": 26678,\n  \"decals</w>\": 37606,\n  \"decan\": 40677,\n  \"decat\": 35334,\n  \"decath\": 47455,\n  \"decatur</w>\": 38540,\n  \"decay</w>\": 22703,\n  \"dece\": 3534,\n  \"deceased</w>\": 30035,\n  \"december</w>\": 3864,\n  \"decent</w>\": 10698,\n  \"decentr\": 28960,\n  \"decentralized</w>\": 38485,\n  \"decep\": 33529,\n  \"deception</w>\": 33046,\n  \"deci\": 2262,\n  \"decide</w>\": 8447,\n  \"decided</w>\": 4939,\n  \"decides</w>\": 17269,\n  \"deciding</w>\": 22513,\n  \"decision</w>\": 5575,\n  \"decisions</w>\": 9903,\n  \"decisive</w>\": 28690,\n  \"deck\": 24885,\n  \"deck</w>\": 6943,\n  \"decked</w>\": 39096,\n  \"decker</w>\": 21449,\n  \"decks</w>\": 23968,\n  \"decl\": 7091,\n  \"decla\": 10739,\n  \"declan</w>\": 42341,\n  \"declar\": 18040,\n  \"declaration</w>\": 19714,\n  \"declare</w>\": 19856,\n  \"declared</w>\": 13845,\n  \"declares</w>\": 23641,\n  \"declaring</w>\": 33273,\n  \"decline</w>\": 15084,\n  \"declined</w>\": 28911,\n  \"declines</w>\": 40478,\n  \"declining</w>\": 29221,\n  \"deco\": 26412,\n  \"deco</w>\": 16422,\n  \"decor\": 5148,\n  \"decor</w>\": 6928,\n  \"decorate</w>\": 23651,\n  \"decorated</w>\": 15917,\n  \"decorating</w>\": 16968,\n  \"decoration</w>\": 16029,\n  \"decorations</w>\": 19158,\n  \"decorative</w>\": 19289,\n  \"decre\": 12284,\n  \"decrease</w>\": 24703,\n  \"decreased</w>\": 33913,\n  \"decreasing</w>\": 43763,\n  \"decree</w>\": 43327,\n  \"ded\": 16744,\n  \"ded</w>\": 1241,\n  \"dedic\": 4701,\n  \"dedicate</w>\": 27610,\n  \"dedicated</w>\": 6770,\n  \"dedication</w>\": 10188,\n  \"dedly</w>\": 36204,\n  \"deduc\": 22799,\n  \"dee\": 5268,\n  \"dee</w>\": 6705,\n  \"deed</w>\": 30260,\n  \"deeds</w>\": 24516,\n  \"deejay\": 48304,\n  \"deejay</w>\": 44511,\n  \"deemed</w>\": 28102,\n  \"deen\": 26456,\n  \"deen</w>\": 12912,\n  \"deep\": 5462,\n  \"deep</w>\": 3383,\n  \"deepak</w>\": 45528,\n  \"deeper</w>\": 15224,\n  \"deepest</w>\": 22245,\n  \"deephouse</w>\": 35684,\n  \"deepi\": 19371,\n  \"deepika</w>\": 34120,\n  \"deepikap\": 29903,\n  \"deepikapadukone</w>\": 30646,\n  \"deeplear\": 22181,\n  \"deeplearning</w>\": 24362,\n  \"deeply</w>\": 11449,\n  \"deer\": 19454,\n  \"deer</w>\": 8700,\n  \"deere</w>\": 32901,\n  \"dees</w>\": 12547,\n  \"deets</w>\": 35537,\n  \"def\": 2044,\n  \"def</w>\": 11649,\n  \"defam\": 35670,\n  \"defamation</w>\": 42741,\n  \"default</w>\": 21650,\n  \"defe\": 4148,\n  \"defeat</w>\": 8477,\n  \"defeated</w>\": 8927,\n  \"defeating</w>\": 22594,\n  \"defeats</w>\": 16317,\n  \"defect</w>\": 44013,\n  \"defects</w>\": 37485,\n  \"defen\": 3619,\n  \"defence\": 30307,\n  \"defence</w>\": 9659,\n  \"defend\": 21970,\n  \"defend</w>\": 11397,\n  \"defended</w>\": 27161,\n  \"defender</w>\": 10618,\n  \"defenders</w>\": 20063,\n  \"defending</w>\": 13098,\n  \"defends</w>\": 20134,\n  \"defense\": 45875,\n  \"defense</w>\": 6021,\n  \"defenseman</w>\": 43714,\n  \"defenses</w>\": 49198,\n  \"defensive</w>\": 10824,\n  \"defi\": 17244,\n  \"defiance</w>\": 36186,\n  \"defiant</w>\": 47597,\n  \"defibrill\": 47684,\n  \"defic\": 18022,\n  \"defici\": 23387,\n  \"deficiency</w>\": 30685,\n  \"deficit</w>\": 20156,\n  \"defin\": 3188,\n  \"define</w>\": 14919,\n  \"defined</w>\": 15278,\n  \"defines</w>\": 28218,\n  \"defining</w>\": 20504,\n  \"definite</w>\": 40793,\n  \"definitely</w>\": 4824,\n  \"definition</w>\": 11405,\n  \"definitive</w>\": 25298,\n  \"defl\": 31467,\n  \"deforestation</w>\": 41330,\n  \"defstar</w>\": 36427,\n  \"defy</w>\": 39148,\n  \"defying</w>\": 38496,\n  \"deg</w>\": 38498,\n  \"degra\": 28939,\n  \"degradation</w>\": 44468,\n  \"degre\": 4653,\n  \"degree</w>\": 7119,\n  \"degrees</w>\": 8000,\n  \"deh</w>\": 35582,\n  \"dei\": 33833,\n  \"dei</w>\": 23279,\n  \"deir\": 42948,\n  \"deity</w>\": 42574,\n  \"deja</w>\": 46902,\n  \"dek</w>\": 23901,\n  \"dekalb</w>\": 37775,\n  \"del\": 1233,\n  \"del</w>\": 2003,\n  \"dela</w>\": 37986,\n  \"delaney</w>\": 31528,\n  \"delav\": 23706,\n  \"delavin\": 40477,\n  \"delavin</w>\": 40776,\n  \"delavinkisses</w>\": 40631,\n  \"delaware</w>\": 17547,\n  \"delay\": 12955,\n  \"delay</w>\": 10934,\n  \"delayed</w>\": 14567,\n  \"delaying</w>\": 43781,\n  \"delays</w>\": 11232,\n  \"dele\": 7922,\n  \"dele</w>\": 33431,\n  \"delec\": 38615,\n  \"delectable</w>\": 45500,\n  \"deleg\": 8046,\n  \"delegate</w>\": 27259,\n  \"delegates</w>\": 14623,\n  \"delegation</w>\": 14632,\n  \"delete</w>\": 19204,\n  \"deleted</w>\": 16588,\n  \"deleting</w>\": 41857,\n  \"delft</w>\": 42749,\n  \"delgado</w>\": 49182,\n  \"delhi\": 26723,\n  \"delhi</w>\": 5717,\n  \"deli\": 1932,\n  \"deli</w>\": 18601,\n  \"delia</w>\": 33193,\n  \"deliber\": 18316,\n  \"deliberate</w>\": 38271,\n  \"deliberately</w>\": 35163,\n  \"delic\": 13366,\n  \"delicacy</w>\": 49181,\n  \"delicate</w>\": 18768,\n  \"delici\": 19993,\n  \"delicious</w>\": 3959,\n  \"deliciously</w>\": 39589,\n  \"deliciousness</w>\": 42819,\n  \"delight\": 46165,\n  \"delight</w>\": 13073,\n  \"delighted</w>\": 5943,\n  \"delightful</w>\": 15513,\n  \"delights</w>\": 25330,\n  \"deline</w>\": 18797,\n  \"delines</w>\": 13562,\n  \"delish</w>\": 25093,\n  \"deliver\": 19561,\n  \"deliver</w>\": 7396,\n  \"delivered</w>\": 7278,\n  \"deliveries</w>\": 29336,\n  \"delivering</w>\": 9943,\n  \"delivers</w>\": 11753,\n  \"delivery</w>\": 5619,\n  \"dell\": 24381,\n  \"dell</w>\": 10242,\n  \"della</w>\": 22986,\n  \"delle</w>\": 35963,\n  \"deloit\": 29428,\n  \"deloitte</w>\": 38667,\n  \"dels</w>\": 48636,\n  \"delta\": 32250,\n  \"delta</w>\": 8768,\n  \"delu\": 18779,\n  \"delusional</w>\": 48059,\n  \"delux\": 13709,\n  \"deluxe</w>\": 14056,\n  \"delve</w>\": 46008,\n  \"dely</w>\": 15040,\n  \"dem\": 3251,\n  \"dem</w>\": 7825,\n  \"dema\": 40268,\n  \"dema</w>\": 45046,\n  \"deman</w>\": 48366,\n  \"demand\": 13072,\n  \"demand</w>\": 5650,\n  \"demanded</w>\": 33699,\n  \"demanding</w>\": 17099,\n  \"demands</w>\": 14241,\n  \"demar</w>\": 46566,\n  \"demarcus</w>\": 47873,\n  \"demb\": 35930,\n  \"demdebate</w>\": 43973,\n  \"deme\": 25143,\n  \"demean\": 37376,\n  \"demen\": 12604,\n  \"dementi\": 46028,\n  \"dementia</w>\": 14047,\n  \"demetri\": 39553,\n  \"demi\": 32879,\n  \"demi</w>\": 14480,\n  \"demise</w>\": 28756,\n  \"demo\": 2930,\n  \"demo</w>\": 7380,\n  \"democr\": 3573,\n  \"democracy</w>\": 7758,\n  \"democrat</w>\": 15431,\n  \"democratic</w>\": 9149,\n  \"democrats</w>\": 8865,\n  \"demographic</w>\": 31308,\n  \"demol\": 19382,\n  \"demolished</w>\": 26537,\n  \"demolition</w>\": 22237,\n  \"demon\": 5635,\n  \"demon</w>\": 12085,\n  \"demonetisation</w>\": 41338,\n  \"demonic</w>\": 46920,\n  \"demons</w>\": 18388,\n  \"demonstr\": 8579,\n  \"demonstrate</w>\": 22231,\n  \"demonstrated</w>\": 29477,\n  \"demonstrates</w>\": 24806,\n  \"demonstrating</w>\": 22107,\n  \"demonstration</w>\": 16722,\n  \"demonstrations</w>\": 33964,\n  \"demonstrators</w>\": 46450,\n  \"demos</w>\": 19304,\n  \"demp\": 22490,\n  \"dempsey</w>\": 30188,\n  \"dems</w>\": 10989,\n  \"demsin\": 42664,\n  \"demsinphilly</w>\": 43091,\n  \"den\": 1177,\n  \"den</w>\": 1181,\n  \"dena</w>\": 32431,\n  \"denali</w>\": 48076,\n  \"dence</w>\": 3370,\n  \"dency</w>\": 11659,\n  \"dend\": 37447,\n  \"dends</w>\": 43985,\n  \"dene</w>\": 45128,\n  \"dened</w>\": 19571,\n  \"deng\": 43098,\n  \"deng</w>\": 41788,\n  \"dengue</w>\": 41932,\n  \"denham</w>\": 39180,\n  \"deni\": 21995,\n  \"denial</w>\": 25716,\n  \"denied</w>\": 15780,\n  \"denies</w>\": 19565,\n  \"denim</w>\": 13606,\n  \"denis\": 47630,\n  \"denis</w>\": 18750,\n  \"denise\": 45900,\n  \"denise</w>\": 20899,\n  \"denmark</w>\": 13268,\n  \"dennis\": 32738,\n  \"dennis</w>\": 10534,\n  \"denny</w>\": 26808,\n  \"denomin\": 41016,\n  \"dens</w>\": 16533,\n  \"dense</w>\": 19353,\n  \"density</w>\": 22431,\n  \"dent\": 3593,\n  \"dent</w>\": 1258,\n  \"dental\": 24635,\n  \"dental</w>\": 8382,\n  \"dentally</w>\": 10346,\n  \"dented</w>\": 21923,\n  \"denti\": 4418,\n  \"dential</w>\": 5459,\n  \"dentist</w>\": 17816,\n  \"dentistry</w>\": 25754,\n  \"dently</w>\": 28817,\n  \"denton</w>\": 23567,\n  \"dents</w>\": 1517,\n  \"denver\": 27847,\n  \"denver</w>\": 8569,\n  \"deny</w>\": 18679,\n  \"denying</w>\": 32771,\n  \"denzel</w>\": 42503,\n  \"deo\": 26406,\n  \"deo</w>\": 12121,\n  \"deodor\": 47639,\n  \"deol</w>\": 41902,\n  \"deon\": 31466,\n  \"deon</w>\": 16079,\n  \"dep\": 6079,\n  \"dep</w>\": 24370,\n  \"depar\": 10794,\n  \"depart\": 5343,\n  \"depart</w>\": 30649,\n  \"departed</w>\": 32541,\n  \"departing</w>\": 26902,\n  \"department</w>\": 5744,\n  \"departments</w>\": 29523,\n  \"departs</w>\": 38998,\n  \"departure</w>\": 17850,\n  \"depe\": 36118,\n  \"depend\": 13894,\n  \"depend</w>\": 27371,\n  \"dependence</w>\": 40243,\n  \"dependent</w>\": 23280,\n  \"depending</w>\": 23673,\n  \"depends</w>\": 20497,\n  \"depic\": 11307,\n  \"depicted</w>\": 34637,\n  \"depicting</w>\": 24970,\n  \"depiction</w>\": 31071,\n  \"depicts</w>\": 29340,\n  \"deple\": 38504,\n  \"deplo\": 9356,\n  \"deplor\": 39232,\n  \"deploy</w>\": 26944,\n  \"deployed</w>\": 20009,\n  \"deploying</w>\": 42212,\n  \"deployment</w>\": 20183,\n  \"depo\": 14276,\n  \"depor\": 36110,\n  \"deport\": 23389,\n  \"deportation</w>\": 36617,\n  \"deported</w>\": 39320,\n  \"deportes</w>\": 47878,\n  \"depos\": 21266,\n  \"deposit</w>\": 16775,\n  \"deposits</w>\": 30740,\n  \"depot</w>\": 12589,\n  \"depp</w>\": 24941,\n  \"depre\": 7107,\n  \"depress\": 38869,\n  \"depressed</w>\": 23269,\n  \"depressing</w>\": 29235,\n  \"depression</w>\": 10023,\n  \"depri\": 28587,\n  \"depriv\": 45809,\n  \"deprivation</w>\": 47810,\n  \"deprived</w>\": 39140,\n  \"dept</w>\": 9201,\n  \"depth</w>\": 10350,\n  \"depths</w>\": 28855,\n  \"depu\": 6912,\n  \"deputies</w>\": 24914,\n  \"deputy</w>\": 7932,\n  \"der\": 839,\n  \"der</w>\": 801,\n  \"dera</w>\": 20696,\n  \"derail\": 48502,\n  \"derby\": 13904,\n  \"derby</w>\": 7177,\n  \"derbyshire</w>\": 22147,\n  \"derdale</w>\": 21513,\n  \"dere\": 5701,\n  \"dere</w>\": 44194,\n  \"dered</w>\": 3776,\n  \"derek\": 22461,\n  \"derek</w>\": 11205,\n  \"derel\": 46728,\n  \"derer</w>\": 11289,\n  \"derers</w>\": 20882,\n  \"deri\": 34573,\n  \"derick</w>\": 33908,\n  \"dering</w>\": 6076,\n  \"deriv\": 33458,\n  \"derived</w>\": 26461,\n  \"derland</w>\": 35488,\n  \"derman</w>\": 29740,\n  \"dermatology</w>\": 48051,\n  \"dern</w>\": 30086,\n  \"dero\": 37203,\n  \"dero</w>\": 34026,\n  \"derrick</w>\": 21798,\n  \"derry\": 45777,\n  \"derry</w>\": 20535,\n  \"ders\": 37307,\n  \"ders</w>\": 1923,\n  \"derson</w>\": 12677,\n  \"dery</w>\": 17172,\n  \"des\": 6797,\n  \"des</w>\": 1437,\n  \"desai</w>\": 35316,\n  \"desc\": 13866,\n  \"descen\": 32318,\n  \"descend\": 26004,\n  \"descend</w>\": 46241,\n  \"descendants</w>\": 36323,\n  \"descending</w>\": 36620,\n  \"descent</w>\": 19375,\n  \"desch\": 49209,\n  \"descri\": 4637,\n  \"describe</w>\": 10967,\n  \"described</w>\": 14671,\n  \"describes</w>\": 13678,\n  \"describing</w>\": 24239,\n  \"descrip\": 41832,\n  \"description</w>\": 13951,\n  \"descriptions</w>\": 40653,\n  \"desde</w>\": 42218,\n  \"dese\": 27195,\n  \"deser\": 3659,\n  \"desert\": 45776,\n  \"desert</w>\": 7301,\n  \"deserted</w>\": 41560,\n  \"deserve</w>\": 7043,\n  \"deserved</w>\": 10061,\n  \"deserves</w>\": 9079,\n  \"deserving</w>\": 26615,\n  \"desh\": 25320,\n  \"desh</w>\": 7448,\n  \"deshi</w>\": 42769,\n  \"desi\": 6772,\n  \"desi</w>\": 26635,\n  \"desig\": 1250,\n  \"design\": 8359,\n  \"design</w>\": 1681,\n  \"designated</w>\": 24119,\n  \"designation</w>\": 41155,\n  \"designed</w>\": 4486,\n  \"designer\": 35640,\n  \"designer</w>\": 5728,\n  \"designers</w>\": 12720,\n  \"designing</w>\": 13467,\n  \"designs</w>\": 6747,\n  \"designthinking</w>\": 32450,\n  \"desirable</w>\": 32368,\n  \"desire</w>\": 11858,\n  \"desired</w>\": 28631,\n  \"desires</w>\": 27598,\n  \"desk\": 11937,\n  \"desk</w>\": 6550,\n  \"desks</w>\": 41014,\n  \"desktop</w>\": 14345,\n  \"desmond</w>\": 27821,\n  \"desol\": 41258,\n  \"desp\": 3642,\n  \"despair</w>\": 28097,\n  \"desper\": 10144,\n  \"desperate</w>\": 15072,\n  \"desperately</w>\": 21993,\n  \"despic\": 32442,\n  \"despicable</w>\": 37158,\n  \"despite</w>\": 5325,\n  \"dess\": 7096,\n  \"dess</w>\": 10001,\n  \"dessert</w>\": 9753,\n  \"desserts</w>\": 22948,\n  \"desses</w>\": 43913,\n  \"dest\": 6540,\n  \"dest</w>\": 4549,\n  \"destin\": 4934,\n  \"destination\": 32191,\n  \"destination</w>\": 9179,\n  \"destinations</w>\": 16981,\n  \"destined</w>\": 28525,\n  \"destiny\": 39875,\n  \"destiny</w>\": 10867,\n  \"destro\": 8287,\n  \"destroy\": 8308,\n  \"destroy</w>\": 11930,\n  \"destroyed</w>\": 9965,\n  \"destroyer</w>\": 25291,\n  \"destroying</w>\": 19613,\n  \"destroys</w>\": 27634,\n  \"destruc\": 22945,\n  \"destruction</w>\": 14281,\n  \"destructive</w>\": 29591,\n  \"det\": 28966,\n  \"det</w>\": 15366,\n  \"deta\": 1914,\n  \"detached</w>\": 26252,\n  \"detail</w>\": 7657,\n  \"detailed</w>\": 12609,\n  \"detailing</w>\": 23163,\n  \"details</w>\": 2353,\n  \"detained</w>\": 20260,\n  \"dete\": 5606,\n  \"detec\": 17991,\n  \"detect</w>\": 22744,\n  \"detected</w>\": 26988,\n  \"detecting</w>\": 41290,\n  \"detection</w>\": 16220,\n  \"detective</w>\": 13672,\n  \"detectives</w>\": 27994,\n  \"detector</w>\": 27689,\n  \"detectors</w>\": 45063,\n  \"detention</w>\": 16908,\n  \"deter\": 10742,\n  \"deter</w>\": 47458,\n  \"detergent</w>\": 46726,\n  \"deterior\": 28512,\n  \"determin\": 8325,\n  \"determination</w>\": 17410,\n  \"determine</w>\": 16768,\n  \"determined</w>\": 14371,\n  \"determines</w>\": 42192,\n  \"determining</w>\": 39884,\n  \"deth</w>\": 38375,\n  \"deto\": 39710,\n  \"deton\": 39335,\n  \"detour</w>\": 31211,\n  \"detox</w>\": 22459,\n  \"detri\": 47951,\n  \"detro\": 6210,\n  \"detroit\": 19404,\n  \"detroit</w>\": 7073,\n  \"detta</w>\": 45438,\n  \"dette</w>\": 35750,\n  \"deu\": 21457,\n  \"deuce</w>\": 45332,\n  \"deus</w>\": 37625,\n  \"deut\": 14970,\n  \"deutsch\": 30389,\n  \"deutsche</w>\": 32760,\n  \"deutschland</w>\": 36878,\n  \"deux</w>\": 47089,\n  \"dev\": 2797,\n  \"dev</w>\": 3670,\n  \"deva</w>\": 45179,\n  \"devan\": 37072,\n  \"devast\": 12913,\n  \"devastated</w>\": 29865,\n  \"devastating</w>\": 19280,\n  \"devastation</w>\": 42452,\n  \"devel\": 1820,\n  \"develop\": 1966,\n  \"develop</w>\": 7708,\n  \"developed</w>\": 8763,\n  \"developer</w>\": 10929,\n  \"developers</w>\": 13248,\n  \"developing</w>\": 8131,\n  \"development</w>\": 2855,\n  \"developmental</w>\": 29347,\n  \"developments</w>\": 17393,\n  \"develops</w>\": 29895,\n  \"deven\": 45537,\n  \"devgn</w>\": 29871,\n  \"devi\": 12926,\n  \"devi</w>\": 20717,\n  \"deviant\": 25593,\n  \"deviantart</w>\": 26046,\n  \"device</w>\": 8163,\n  \"devices</w>\": 9067,\n  \"devil\": 8894,\n  \"devil</w>\": 8043,\n  \"deville</w>\": 34329,\n  \"devils</w>\": 11683,\n  \"devin\": 31193,\n  \"devin</w>\": 20996,\n  \"devine</w>\": 33019,\n  \"devlin</w>\": 48040,\n  \"devo\": 11861,\n  \"devo</w>\": 43444,\n  \"devon\": 16205,\n  \"devon</w>\": 10046,\n  \"devops</w>\": 21504,\n  \"devos</w>\": 40646,\n  \"devote\": 37777,\n  \"devoted</w>\": 24561,\n  \"devotees</w>\": 39759,\n  \"devotion</w>\": 25821,\n  \"devotional</w>\": 35456,\n  \"devs</w>\": 27374,\n  \"dew\": 31952,\n  \"dew</w>\": 16358,\n  \"dewey</w>\": 40399,\n  \"dex\": 10030,\n  \"dex</w>\": 13790,\n  \"dexpo</w>\": 42502,\n  \"dexter\": 45049,\n  \"dexter</w>\": 22781,\n  \"dey</w>\": 11829,\n  \"dez\": 23190,\n  \"dez</w>\": 8122,\n  \"df\": 12908,\n  \"df</w>\": 10468,\n  \"dfc</w>\": 41903,\n  \"dfs</w>\": 32880,\n  \"dfw</w>\": 20439,\n  \"dg\": 2394,\n  \"dg</w>\": 9742,\n  \"dgate</w>\": 41684,\n  \"dge\": 4016,\n  \"dge</w>\": 1360,\n  \"dged</w>\": 11830,\n  \"dgeon</w>\": 45655,\n  \"dgers</w>\": 8733,\n  \"dges</w>\": 5432,\n  \"dging</w>\": 9565,\n  \"dh\": 6669,\n  \"dh</w>\": 9960,\n  \"dha\": 11629,\n  \"dha</w>\": 27377,\n  \"dhabi</w>\": 22349,\n  \"dhaka</w>\": 32877,\n  \"dham\": 29635,\n  \"dham</w>\": 30838,\n  \"dhan\": 12542,\n  \"dhan</w>\": 28569,\n  \"dhanush\": 26162,\n  \"dhanush</w>\": 36200,\n  \"dhanushkraja</w>\": 29266,\n  \"dhar\": 12397,\n  \"dharma</w>\": 30536,\n  \"dhary</w>\": 28706,\n  \"dhawan</w>\": 44699,\n  \"dhe\": 29706,\n  \"dheim</w>\": 44280,\n  \"dhi\": 31553,\n  \"dhi</w>\": 26166,\n  \"dho\": 37834,\n  \"dhoni</w>\": 25698,\n  \"dhru\": 40257,\n  \"dhry</w>\": 39960,\n  \"dhs</w>\": 26849,\n  \"dhu\": 32387,\n  \"di\": 570,\n  \"di</w>\": 1618,\n  \"dia\": 7351,\n  \"dia</w>\": 3357,\n  \"diab\": 15954,\n  \"diabe\": 19167,\n  \"diabete\": 43826,\n  \"diabetes</w>\": 10319,\n  \"diabetic</w>\": 30230,\n  \"diablo</w>\": 23931,\n  \"diag\": 6851,\n  \"diagno\": 7736,\n  \"diagnose</w>\": 44429,\n  \"diagnosed</w>\": 16979,\n  \"diagnosis</w>\": 15715,\n  \"diagnostic</w>\": 26351,\n  \"diagnostics</w>\": 37723,\n  \"diagram</w>\": 22697,\n  \"dial\": 18416,\n  \"dial</w>\": 11381,\n  \"dialo\": 30709,\n  \"dialog</w>\": 48945,\n  \"dialogue</w>\": 11288,\n  \"dialogues</w>\": 40330,\n  \"dialysis</w>\": 44798,\n  \"diam\": 4347,\n  \"diameter</w>\": 27189,\n  \"diamon\": 8873,\n  \"diamond\": 18535,\n  \"diamond</w>\": 6235,\n  \"diamonds</w>\": 12687,\n  \"dian\": 16021,\n  \"dian</w>\": 4998,\n  \"diana</w>\": 12803,\n  \"diane</w>\": 15855,\n  \"dianne</w>\": 42299,\n  \"dians</w>\": 21041,\n  \"diaper</w>\": 34382,\n  \"diapers</w>\": 39659,\n  \"diar\": 25932,\n  \"diaries</w>\": 15541,\n  \"diary</w>\": 10380,\n  \"dias\": 22137,\n  \"dias</w>\": 29354,\n  \"diaspora</w>\": 28390,\n  \"diaz</w>\": 17688,\n  \"dic\": 1404,\n  \"dic</w>\": 6717,\n  \"dicap\": 30023,\n  \"dicaprio</w>\": 30755,\n  \"dice</w>\": 14406,\n  \"dick\": 14413,\n  \"dick</w>\": 9554,\n  \"dickens</w>\": 33421,\n  \"dict\": 45360,\n  \"dict</w>\": 15159,\n  \"dictat\": 26156,\n  \"dictator</w>\": 27399,\n  \"dictatorship</w>\": 37989,\n  \"dictionary</w>\": 19699,\n  \"did\": 1861,\n  \"did</w>\": 1335,\n  \"diddy</w>\": 33527,\n  \"didi</w>\": 34396,\n  \"didier</w>\": 45614,\n  \"didn</w>\": 2376,\n  \"didnt</w>\": 13057,\n  \"dido</w>\": 31725,\n  \"didyou\": 12295,\n  \"didyouknow</w>\": 12506,\n  \"die\": 3150,\n  \"die</w>\": 2082,\n  \"diec\": 27729,\n  \"diecast</w>\": 37936,\n  \"died</w>\": 3622,\n  \"diego\": 30940,\n  \"diego</w>\": 6306,\n  \"diem</w>\": 45571,\n  \"dience</w>\": 33686,\n  \"dient</w>\": 27231,\n  \"dier\": 29702,\n  \"dier</w>\": 16394,\n  \"dies\": 20104,\n  \"dies</w>\": 1862,\n  \"diesel\": 46312,\n  \"diesel</w>\": 10591,\n  \"diest</w>\": 45739,\n  \"diet\": 21295,\n  \"diet</w>\": 6582,\n  \"dietary</w>\": 29009,\n  \"dietrich</w>\": 47005,\n  \"diets</w>\": 35173,\n  \"dif\": 18656,\n  \"dif</w>\": 48731,\n  \"diff\": 44073,\n  \"diff</w>\": 20331,\n  \"diffe\": 1967,\n  \"differ</w>\": 34620,\n  \"differen\": 14903,\n  \"difference</w>\": 4731,\n  \"differences</w>\": 14003,\n  \"different</w>\": 2731,\n  \"differenti\": 21729,\n  \"differential</w>\": 34027,\n  \"differentiate</w>\": 49032,\n  \"differently</w>\": 18325,\n  \"diffic\": 6140,\n  \"difficult</w>\": 7405,\n  \"difficulties</w>\": 23468,\n  \"difficulty</w>\": 25245,\n  \"diffu\": 31603,\n  \"diffuser</w>\": 49400,\n  \"dig\": 1831,\n  \"dig</w>\": 9887,\n  \"dige\": 17820,\n  \"digest</w>\": 20413,\n  \"digestion</w>\": 40533,\n  \"digestive</w>\": 32304,\n  \"digg\": 43240,\n  \"digger</w>\": 35919,\n  \"diggin</w>\": 48466,\n  \"digging</w>\": 14971,\n  \"digi\": 15627,\n  \"digi</w>\": 39361,\n  \"digimon</w>\": 44181,\n  \"digit\": 14899,\n  \"digit</w>\": 27472,\n  \"digital\": 4704,\n  \"digital</w>\": 2794,\n  \"digitalart</w>\": 16987,\n  \"digitalhealth</w>\": 32190,\n  \"digitalindia</w>\": 46630,\n  \"digitally</w>\": 27543,\n  \"digitalmarketing</w>\": 15299,\n  \"digitaltransformation</w>\": 20047,\n  \"digiti\": 25935,\n  \"digits</w>\": 31710,\n  \"digni\": 45532,\n  \"dignit\": 39497,\n  \"dignity</w>\": 17744,\n  \"digo</w>\": 35701,\n  \"digs</w>\": 26877,\n  \"dih</w>\": 43089,\n  \"dii</w>\": 32755,\n  \"dijk</w>\": 44444,\n  \"dik\": 38854,\n  \"dik</w>\": 37747,\n  \"dike</w>\": 42683,\n  \"dil\": 7643,\n  \"dil</w>\": 17942,\n  \"dile\": 25428,\n  \"dilemma</w>\": 29787,\n  \"dilig\": 30664,\n  \"dill\": 12318,\n  \"dill</w>\": 27206,\n  \"dillon</w>\": 21056,\n  \"dilu\": 45242,\n  \"dim\": 19576,\n  \"dim</w>\": 17523,\n  \"dime</w>\": 24443,\n  \"dimen\": 10935,\n  \"dimension</w>\": 20479,\n  \"dimensional</w>\": 25252,\n  \"dimensions</w>\": 25086,\n  \"diment</w>\": 43500,\n  \"dimes</w>\": 44888,\n  \"dimini\": 37459,\n  \"dimit\": 22250,\n  \"dimitri</w>\": 48840,\n  \"dimp\": 38853,\n  \"din\": 1462,\n  \"din</w>\": 5673,\n  \"dina</w>\": 36815,\n  \"dinah</w>\": 30903,\n  \"dine\": 20951,\n  \"dine</w>\": 12989,\n  \"diner</w>\": 16963,\n  \"dinesh</w>\": 48341,\n  \"ding\": 7545,\n  \"ding</w>\": 796,\n  \"dinger</w>\": 45580,\n  \"dingh\": 48064,\n  \"dings</w>\": 5473,\n  \"dington</w>\": 24804,\n  \"dinho</w>\": 47370,\n  \"dini</w>\": 20196,\n  \"dining</w>\": 8658,\n  \"dinner\": 27548,\n  \"dinner</w>\": 2571,\n  \"dinners</w>\": 33570,\n  \"dino\": 9692,\n  \"dino</w>\": 14077,\n  \"dinosa\": 18955,\n  \"dinosaur</w>\": 15095,\n  \"dinosaurs</w>\": 20387,\n  \"dio\": 3779,\n  \"dio</w>\": 1521,\n  \"dioce\": 20763,\n  \"diocese</w>\": 27091,\n  \"dion\": 42899,\n  \"dion</w>\": 16250,\n  \"dior</w>\": 23655,\n  \"dios</w>\": 37563,\n  \"dious</w>\": 27417,\n  \"dioxide</w>\": 38102,\n  \"dip\": 19918,\n  \"dip</w>\": 11343,\n  \"dipl\": 8490,\n  \"diplo</w>\": 38115,\n  \"diplom\": 11169,\n  \"diploma</w>\": 21251,\n  \"diplomacy</w>\": 23798,\n  \"diplomat</w>\": 32828,\n  \"diplomatic</w>\": 23782,\n  \"diplomats</w>\": 44126,\n  \"dipped</w>\": 30610,\n  \"dipper</w>\": 49317,\n  \"dipping</w>\": 33544,\n  \"dips</w>\": 37522,\n  \"dir\": 4251,\n  \"dir</w>\": 8478,\n  \"dire\": 38355,\n  \"dire</w>\": 25664,\n  \"direc\": 1534,\n  \"direct\": 43224,\n  \"direct</w>\": 6016,\n  \"directed</w>\": 8392,\n  \"directing</w>\": 21817,\n  \"direction\": 15923,\n  \"direction</w>\": 5407,\n  \"directional</w>\": 38687,\n  \"directioner</w>\": 48042,\n  \"directioners</w>\": 22055,\n  \"directions</w>\": 16440,\n  \"directive</w>\": 40630,\n  \"directly</w>\": 9701,\n  \"director\": 20337,\n  \"director</w>\": 2681,\n  \"directorial</w>\": 45327,\n  \"directors</w>\": 11940,\n  \"directory</w>\": 25272,\n  \"directs</w>\": 34349,\n  \"directv</w>\": 48652,\n  \"dirk</w>\": 28171,\n  \"dirt\": 31415,\n  \"dirt</w>\": 11795,\n  \"dirty\": 20127,\n  \"dirty</w>\": 7615,\n  \"dis\": 1518,\n  \"dis</w>\": 6112,\n  \"disa\": 3882,\n  \"disab\": 47380,\n  \"disabilities</w>\": 17350,\n  \"disability\": 48986,\n  \"disability</w>\": 13261,\n  \"disabled</w>\": 13613,\n  \"disadvantaged</w>\": 40577,\n  \"disagree</w>\": 23199,\n  \"disapp\": 5384,\n  \"disappear\": 21148,\n  \"disappear</w>\": 25173,\n  \"disappearance</w>\": 35929,\n  \"disappeared</w>\": 23139,\n  \"disappearing</w>\": 35819,\n  \"disappears</w>\": 44406,\n  \"disappo\": 7605,\n  \"disappoint</w>\": 25446,\n  \"disappointed</w>\": 13794,\n  \"disappointing</w>\": 21941,\n  \"disappointment</w>\": 23884,\n  \"disappoints</w>\": 48545,\n  \"disappro\": 48276,\n  \"disar\": 42971,\n  \"disaster</w>\": 9072,\n  \"disasters</w>\": 26976,\n  \"disastrous</w>\": 35790,\n  \"disc\": 1472,\n  \"disc</w>\": 10712,\n  \"discar\": 40532,\n  \"discarded</w>\": 45197,\n  \"discer\": 49140,\n  \"dischar\": 22671,\n  \"discharge</w>\": 32485,\n  \"disci\": 9559,\n  \"discip\": 38951,\n  \"discipl\": 10467,\n  \"disciples</w>\": 39366,\n  \"disciplinary</w>\": 20232,\n  \"discipline</w>\": 18903,\n  \"disciplines</w>\": 42032,\n  \"discla\": 40248,\n  \"disclaimer</w>\": 46465,\n  \"disclo\": 17481,\n  \"disclose</w>\": 46379,\n  \"disclosed</w>\": 30905,\n  \"disclosure</w>\": 26502,\n  \"disco\": 2475,\n  \"disco</w>\": 11964,\n  \"discography</w>\": 47545,\n  \"discomfort</w>\": 48054,\n  \"discord</w>\": 23582,\n  \"discoun\": 18515,\n  \"discount</w>\": 7638,\n  \"discounted</w>\": 20993,\n  \"discounts</w>\": 18186,\n  \"discoura\": 45850,\n  \"discourse</w>\": 29441,\n  \"discover\": 10539,\n  \"discover</w>\": 4834,\n  \"discovered</w>\": 6986,\n  \"discoveries</w>\": 29308,\n  \"discovering</w>\": 17967,\n  \"discovers</w>\": 29719,\n  \"discovery\": 40491,\n  \"discovery</w>\": 8027,\n  \"discre\": 20616,\n  \"discrimin\": 11721,\n  \"discrimination</w>\": 14775,\n  \"discs</w>\": 29270,\n  \"discu\": 1984,\n  \"discus</w>\": 41828,\n  \"discuss</w>\": 4312,\n  \"discussed</w>\": 11300,\n  \"discusses</w>\": 8116,\n  \"discussing</w>\": 5900,\n  \"discussion</w>\": 5060,\n  \"discussions</w>\": 13806,\n  \"dise\": 4262,\n  \"disease</w>\": 5336,\n  \"diseases</w>\": 12035,\n  \"disen\": 46468,\n  \"disgrace</w>\": 29877,\n  \"disgraceful</w>\": 44146,\n  \"disgu\": 9793,\n  \"disguise</w>\": 27803,\n  \"disguised</w>\": 37149,\n  \"disgusted</w>\": 41977,\n  \"disgusting</w>\": 16218,\n  \"dish\": 11039,\n  \"dish</w>\": 4531,\n  \"disha</w>\": 42498,\n  \"dishes</w>\": 11412,\n  \"dishon\": 30777,\n  \"dishu</w>\": 44728,\n  \"dishwasher</w>\": 40524,\n  \"disin\": 19484,\n  \"disinfe\": 48050,\n  \"disintegr\": 49275,\n  \"disk</w>\": 17970,\n  \"dislike</w>\": 30796,\n  \"dism\": 30836,\n  \"dism</w>\": 38821,\n  \"dismant\": 36557,\n  \"dismiss</w>\": 43287,\n  \"dismissal</w>\": 42068,\n  \"dismissed</w>\": 30087,\n  \"dismisses</w>\": 45238,\n  \"disney\": 6729,\n  \"disney</w>\": 4696,\n  \"disneyland\": 39481,\n  \"disneyland</w>\": 13661,\n  \"disneyworld</w>\": 28469,\n  \"diso\": 26305,\n  \"disobe\": 42841,\n  \"dison</w>\": 19310,\n  \"disorder</w>\": 12635,\n  \"disorders</w>\": 17114,\n  \"disp\": 11073,\n  \"dispar\": 24633,\n  \"disparities</w>\": 45122,\n  \"dispat\": 28652,\n  \"dispatch</w>\": 26306,\n  \"dispen\": 19077,\n  \"dispenser</w>\": 40116,\n  \"disper\": 34499,\n  \"displa\": 9326,\n  \"displac\": 17718,\n  \"displaced</w>\": 22817,\n  \"displacement</w>\": 37931,\n  \"display</w>\": 4456,\n  \"displayed</w>\": 18967,\n  \"displaying</w>\": 26468,\n  \"displays</w>\": 15648,\n  \"dispo\": 13651,\n  \"dispon\": 38872,\n  \"disponible</w>\": 46130,\n  \"dispos\": 45177,\n  \"disposable</w>\": 37275,\n  \"disposal</w>\": 28231,\n  \"dispro\": 32927,\n  \"dispropor\": 40354,\n  \"disproportion\": 45492,\n  \"disregard</w>\": 43869,\n  \"disrespect</w>\": 34055,\n  \"disrespectful</w>\": 41723,\n  \"disru\": 13763,\n  \"disrup\": 14641,\n  \"disrupt</w>\": 25214,\n  \"disrupted</w>\": 46674,\n  \"disrupting</w>\": 42419,\n  \"disruption</w>\": 19635,\n  \"disruptive</w>\": 31554,\n  \"diss\": 10766,\n  \"diss</w>\": 35688,\n  \"dissec\": 43879,\n  \"dissemin\": 40463,\n  \"dissent</w>\": 45154,\n  \"disser\": 25560,\n  \"dissertation</w>\": 29448,\n  \"dissi\": 25088,\n  \"dissol\": 27398,\n  \"dissuper</w>\": 33461,\n  \"dist\": 5479,\n  \"dist</w>\": 12116,\n  \"distance</w>\": 7964,\n  \"distances</w>\": 37078,\n  \"distant</w>\": 18949,\n  \"distill\": 41586,\n  \"distilled</w>\": 49179,\n  \"distillery</w>\": 22200,\n  \"distin\": 11892,\n  \"distinct</w>\": 25056,\n  \"distinction</w>\": 28183,\n  \"distinctive</w>\": 25486,\n  \"distingui\": 15053,\n  \"distinguish</w>\": 45418,\n  \"distinguished</w>\": 16513,\n  \"distor\": 23781,\n  \"distortion</w>\": 43690,\n  \"distr\": 11885,\n  \"distract</w>\": 39309,\n  \"distracted</w>\": 24049,\n  \"distraction</w>\": 32039,\n  \"distress</w>\": 26866,\n  \"distressed</w>\": 37515,\n  \"distri\": 5987,\n  \"distribu\": 6138,\n  \"distribute</w>\": 32313,\n  \"distributed</w>\": 16419,\n  \"distributing</w>\": 35216,\n  \"distribution</w>\": 10484,\n  \"distributor</w>\": 28354,\n  \"distributors</w>\": 44240,\n  \"distric\": 3208,\n  \"district\": 46683,\n  \"district</w>\": 3506,\n  \"districts</w>\": 17565,\n  \"distur\": 11732,\n  \"disturb\": 33018,\n  \"disturb</w>\": 39449,\n  \"disturbance</w>\": 42416,\n  \"disturbed</w>\": 29967,\n  \"disturbing</w>\": 21476,\n  \"disupdates</w>\": 45667,\n  \"dit\": 5752,\n  \"dit</w>\": 2524,\n  \"dita</w>\": 47965,\n  \"ditch\": 43715,\n  \"ditch</w>\": 19291,\n  \"dited</w>\": 40392,\n  \"diti\": 2363,\n  \"dition\": 16452,\n  \"dition</w>\": 3015,\n  \"ditional</w>\": 4322,\n  \"ditions</w>\": 4503,\n  \"dito</w>\": 43705,\n  \"dits</w>\": 49374,\n  \"dity</w>\": 16436,\n  \"dium</w>\": 2903,\n  \"div\": 5293,\n  \"div</w>\": 14869,\n  \"diva</w>\": 13605,\n  \"divas</w>\": 23534,\n  \"dive\": 26042,\n  \"dive</w>\": 9058,\n  \"diver\": 13119,\n  \"diver</w>\": 22094,\n  \"divergence</w>\": 48735,\n  \"divergent</w>\": 36132,\n  \"divers\": 30241,\n  \"divers</w>\": 27038,\n  \"diverse</w>\": 11464,\n  \"diversi\": 24475,\n  \"diversion</w>\": 38457,\n  \"diversity\": 35634,\n  \"diversity</w>\": 6257,\n  \"diverted</w>\": 41049,\n  \"dives</w>\": 13893,\n  \"divi\": 8375,\n  \"divid\": 31337,\n  \"divide</w>\": 18842,\n  \"divided</w>\": 18689,\n  \"dividend</w>\": 32067,\n  \"dividends</w>\": 45146,\n  \"dividing</w>\": 45605,\n  \"divin\": 21838,\n  \"divine\": 46919,\n  \"divine</w>\": 10976,\n  \"diving</w>\": 9886,\n  \"divinity</w>\": 39754,\n  \"divisi\": 39196,\n  \"division</w>\": 5378,\n  \"divisional</w>\": 40912,\n  \"divisions</w>\": 33715,\n  \"divor\": 13543,\n  \"divorce</w>\": 17060,\n  \"divorced</w>\": 39437,\n  \"divya</w>\": 47767,\n  \"diwali</w>\": 18218,\n  \"dix\": 45838,\n  \"dix</w>\": 27620,\n  \"dixie</w>\": 24484,\n  \"dixit</w>\": 28279,\n  \"dixon</w>\": 16086,\n  \"diy\": 28472,\n  \"diy</w>\": 7845,\n  \"diya</w>\": 36459,\n  \"diz</w>\": 32740,\n  \"dized</w>\": 36232,\n  \"dizz\": 40239,\n  \"dizzy</w>\": 35464,\n  \"dj\": 3761,\n  \"dj</w>\": 3723,\n  \"djan\": 35338,\n  \"django</w>\": 46498,\n  \"dji\": 35284,\n  \"dji</w>\": 28379,\n  \"djing</w>\": 36113,\n  \"djo\": 19432,\n  \"djoker\": 42721,\n  \"djokernole</w>\": 42830,\n  \"djokovic</w>\": 27944,\n  \"djs</w>\": 18117,\n  \"dk\": 20702,\n  \"dk</w>\": 16196,\n  \"dl\": 12558,\n  \"dl</w>\": 9373,\n  \"dlc</w>\": 19079,\n  \"dle\": 11057,\n  \"dle</w>\": 3287,\n  \"dled</w>\": 23494,\n  \"dler</w>\": 40279,\n  \"dles</w>\": 7890,\n  \"dless</w>\": 14997,\n  \"dley</w>\": 12808,\n  \"dling</w>\": 18221,\n  \"dly</w>\": 3069,\n  \"dm\": 19070,\n  \"dm</w>\": 4667,\n  \"dma</w>\": 42903,\n  \"dman</w>\": 18826,\n  \"dmc</w>\": 28991,\n  \"dmit\": 31607,\n  \"dmitry</w>\": 48326,\n  \"dms</w>\": 19955,\n  \"dmv</w>\": 27508,\n  \"dmx</w>\": 45255,\n  \"dn\": 11552,\n  \"dn</w>\": 7459,\n  \"dna</w>\": 8790,\n  \"dnb</w>\": 35422,\n  \"dnc</w>\": 20237,\n  \"dnd</w>\": 11678,\n  \"dnr</w>\": 37051,\n  \"dns</w>\": 39245,\n  \"dnt</w>\": 26795,\n  \"do\": 639,\n  \"do</w>\": 818,\n  \"doa</w>\": 48332,\n  \"dob\": 29640,\n  \"doba</w>\": 35605,\n  \"dobbs</w>\": 43006,\n  \"dobson</w>\": 46888,\n  \"doc\": 3009,\n  \"doc</w>\": 7251,\n  \"doch</w>\": 25101,\n  \"dock\": 17311,\n  \"dock</w>\": 8997,\n  \"docked</w>\": 46784,\n  \"docker</w>\": 31152,\n  \"docking</w>\": 40845,\n  \"docks</w>\": 24091,\n  \"docs</w>\": 15157,\n  \"doctor\": 7872,\n  \"doctor</w>\": 5547,\n  \"doctoral</w>\": 23649,\n  \"doctorate</w>\": 39134,\n  \"doctors</w>\": 9705,\n  \"doctorwho</w>\": 12996,\n  \"doctr\": 28497,\n  \"doctrine</w>\": 35612,\n  \"docu\": 4433,\n  \"document\": 29293,\n  \"document</w>\": 15121,\n  \"documentaries</w>\": 44209,\n  \"documentary</w>\": 7881,\n  \"documentation</w>\": 31560,\n  \"documented</w>\": 22310,\n  \"documenting</w>\": 37876,\n  \"documents</w>\": 14105,\n  \"dod\": 13847,\n  \"dod</w>\": 30187,\n  \"dodd</w>\": 36748,\n  \"dodge\": 31263,\n  \"dodge</w>\": 12093,\n  \"dodgeball</w>\": 43244,\n  \"dodger</w>\": 31641,\n  \"dodgers</w>\": 12422,\n  \"dodgy</w>\": 37727,\n  \"doe</w>\": 13296,\n  \"does\": 2397,\n  \"does</w>\": 1897,\n  \"doesn</w>\": 2503,\n  \"doesnt</w>\": 17937,\n  \"dof\": 8277,\n  \"doff</w>\": 20193,\n  \"dofficial</w>\": 42516,\n  \"dog\": 4326,\n  \"dog</w>\": 1929,\n  \"dogcelebration</w>\": 41819,\n  \"dogday</w>\": 27475,\n  \"doge</w>\": 42187,\n  \"dogg</w>\": 20749,\n  \"doggie</w>\": 32237,\n  \"doggo</w>\": 42155,\n  \"doggy</w>\": 26359,\n  \"doglo\": 40733,\n  \"dogre\": 40030,\n  \"dogrescue</w>\": 44158,\n  \"dogs\": 42182,\n  \"dogs</w>\": 3255,\n  \"dogsoftwitter</w>\": 19415,\n  \"doh</w>\": 23581,\n  \"doha</w>\": 20908,\n  \"doherty</w>\": 31774,\n  \"doi</w>\": 36361,\n  \"doin</w>\": 15412,\n  \"doing\": 37408,\n  \"doing</w>\": 1960,\n  \"doit\": 32272,\n  \"doit</w>\": 28109,\n  \"doj</w>\": 25700,\n  \"dojo</w>\": 35901,\n  \"dok\": 40547,\n  \"dok</w>\": 41034,\n  \"doka</w>\": 46528,\n  \"dol\": 2287,\n  \"dol</w>\": 19170,\n  \"dola</w>\": 38005,\n  \"dolan</w>\": 27200,\n  \"dolby</w>\": 42414,\n  \"dolce\": 30033,\n  \"dolce</w>\": 30661,\n  \"dole</w>\": 41040,\n  \"doll\": 27031,\n  \"doll</w>\": 9286,\n  \"dollar\": 35092,\n  \"dollar</w>\": 7474,\n  \"dollars</w>\": 10669,\n  \"dolls</w>\": 15090,\n  \"dolly\": 43281,\n  \"dolly</w>\": 23821,\n  \"dolom\": 37137,\n  \"dolores</w>\": 40741,\n  \"dolph\": 8900,\n  \"dolph</w>\": 22257,\n  \"dolphin\": 42963,\n  \"dolphin</w>\": 16464,\n  \"dolphins</w>\": 14002,\n  \"dom\": 2164,\n  \"dom</w>\": 1919,\n  \"domain</w>\": 15492,\n  \"domaine</w>\": 48744,\n  \"domains</w>\": 36358,\n  \"dome\": 8515,\n  \"dome</w>\": 9827,\n  \"domen\": 37584,\n  \"domest\": 21936,\n  \"domestic\": 28189,\n  \"domestic</w>\": 9043,\n  \"domin\": 4361,\n  \"dominance</w>\": 30546,\n  \"dominant</w>\": 20565,\n  \"dominate</w>\": 21431,\n  \"dominated</w>\": 23048,\n  \"dominates</w>\": 34043,\n  \"dominating</w>\": 29303,\n  \"domination</w>\": 30919,\n  \"domingo</w>\": 24882,\n  \"dominic\": 39007,\n  \"dominic</w>\": 19095,\n  \"dominican</w>\": 22934,\n  \"dominion</w>\": 27155,\n  \"domino</w>\": 30752,\n  \"dominos</w>\": 39770,\n  \"domo</w>\": 44293,\n  \"doms</w>\": 30126,\n  \"don\": 1067,\n  \"don</w>\": 847,\n  \"dona</w>\": 26789,\n  \"donal\": 42375,\n  \"donald\": 5990,\n  \"donald</w>\": 4335,\n  \"donaldson</w>\": 37783,\n  \"donaldtrump</w>\": 6652,\n  \"donat\": 36384,\n  \"donate</w>\": 6429,\n  \"donated</w>\": 8705,\n  \"donates</w>\": 26960,\n  \"donating</w>\": 12621,\n  \"donation</w>\": 7924,\n  \"donations</w>\": 9928,\n  \"doncaster\": 38008,\n  \"doncaster</w>\": 25352,\n  \"doncasterisgreat</w>\": 47333,\n  \"done\": 5136,\n  \"done</w>\": 1700,\n  \"donegal</w>\": 24172,\n  \"donesia</w>\": 41281,\n  \"donet\": 33724,\n  \"donetsk</w>\": 33999,\n  \"dong\": 26242,\n  \"dong</w>\": 31478,\n  \"dongha\": 28365,\n  \"donghae</w>\": 28945,\n  \"donia</w>\": 24014,\n  \"donkey</w>\": 21415,\n  \"donkeys</w>\": 44644,\n  \"donna</w>\": 9158,\n  \"donne\": 30897,\n  \"donnein\": 38308,\n  \"donneinarte</w>\": 40193,\n  \"donnell</w>\": 35118,\n  \"donnelly</w>\": 39070,\n  \"donnie\": 47058,\n  \"donnie</w>\": 30609,\n  \"donny\": 37291,\n  \"donny</w>\": 32887,\n  \"dono\": 14840,\n  \"donor</w>\": 18013,\n  \"donors</w>\": 17887,\n  \"donovan</w>\": 21499,\n  \"dons</w>\": 22127,\n  \"dont\": 8094,\n  \"dont</w>\": 4632,\n  \"donut</w>\": 18471,\n  \"donuts</w>\": 13970,\n  \"doo\": 4543,\n  \"doo</w>\": 11643,\n  \"doodle</w>\": 9388,\n  \"doodled</w>\": 41030,\n  \"doodles</w>\": 22156,\n  \"doodling</w>\": 37548,\n  \"dooley</w>\": 47609,\n  \"doom\": 23263,\n  \"doom</w>\": 14344,\n  \"doomed</w>\": 33251,\n  \"doomsday</w>\": 41791,\n  \"doon</w>\": 36612,\n  \"doop</w>\": 33886,\n  \"door\": 7188,\n  \"door</w>\": 2489,\n  \"doors</w>\": 4228,\n  \"doorstep</w>\": 19533,\n  \"doorway</w>\": 46575,\n  \"dop\": 42381,\n  \"dop</w>\": 31722,\n  \"dope\": 42587,\n  \"dope</w>\": 10094,\n  \"doping</w>\": 30285,\n  \"dopp\": 21774,\n  \"doppelg\": 45216,\n  \"doppler</w>\": 42540,\n  \"dor\": 2766,\n  \"dor</w>\": 8695,\n  \"dora</w>\": 18104,\n  \"dorado</w>\": 32350,\n  \"dorchester</w>\": 32656,\n  \"dore</w>\": 39423,\n  \"dores</w>\": 34323,\n  \"dorf</w>\": 17296,\n  \"dori</w>\": 49270,\n  \"doria</w>\": 43186,\n  \"dorian</w>\": 44016,\n  \"doris</w>\": 24285,\n  \"dork</w>\": 36206,\n  \"dorm</w>\": 24263,\n  \"doro\": 15498,\n  \"doro</w>\": 37389,\n  \"dorothy</w>\": 20805,\n  \"dors</w>\": 31240,\n  \"dorset\": 42109,\n  \"dorset</w>\": 16047,\n  \"dorsey</w>\": 41607,\n  \"dortmund</w>\": 24290,\n  \"dory</w>\": 36135,\n  \"dos\": 44258,\n  \"dos</w>\": 5474,\n  \"dose</w>\": 11497,\n  \"doses</w>\": 37873,\n  \"dossier</w>\": 46042,\n  \"dost</w>\": 44222,\n  \"dot\": 7473,\n  \"dot</w>\": 7004,\n  \"dota</w>\": 23085,\n  \"dotcom</w>\": 12443,\n  \"dote</w>\": 31202,\n  \"dothis</w>\": 47864,\n  \"dotnet</w>\": 43124,\n  \"dotorg</w>\": 46587,\n  \"dots</w>\": 19019,\n  \"dotted</w>\": 47950,\n  \"dou\": 1756,\n  \"dou</w>\": 23608,\n  \"doub\": 19631,\n  \"double\": 13013,\n  \"double</w>\": 3200,\n  \"doubled</w>\": 24948,\n  \"doubleheader</w>\": 34668,\n  \"doubles</w>\": 12539,\n  \"doubling</w>\": 36850,\n  \"doubt\": 37071,\n  \"doubt</w>\": 8671,\n  \"doubts</w>\": 30894,\n  \"douche</w>\": 44292,\n  \"doug\": 20271,\n  \"doug</w>\": 10758,\n  \"dough\": 15785,\n  \"dough</w>\": 14983,\n  \"doughnut</w>\": 32555,\n  \"doughnuts</w>\": 31124,\n  \"dougie</w>\": 46317,\n  \"dougla\": 9140,\n  \"douglas</w>\": 10065,\n  \"douglass</w>\": 45692,\n  \"doun</w>\": 44785,\n  \"dov</w>\": 38856,\n  \"dova</w>\": 26551,\n  \"dove\": 27511,\n  \"dove</w>\": 18281,\n  \"dover\": 43019,\n  \"dover</w>\": 14683,\n  \"doves</w>\": 47067,\n  \"dow\": 8022,\n  \"dow</w>\": 10688,\n  \"dowell</w>\": 27344,\n  \"down\": 1833,\n  \"down</w>\": 1136,\n  \"downe</w>\": 46501,\n  \"downed</w>\": 35814,\n  \"downer</w>\": 42522,\n  \"downers</w>\": 43739,\n  \"downey</w>\": 29429,\n  \"downfall</w>\": 48702,\n  \"downhill</w>\": 27387,\n  \"downing</w>\": 28140,\n  \"download\": 35076,\n  \"download</w>\": 3794,\n  \"downloadable</w>\": 49105,\n  \"downloaded</w>\": 22961,\n  \"downloading</w>\": 30519,\n  \"downloads</w>\": 26481,\n  \"downpour</w>\": 39034,\n  \"downpours</w>\": 40160,\n  \"downs</w>\": 10706,\n  \"downside</w>\": 41937,\n  \"downstairs</w>\": 28174,\n  \"downstream</w>\": 43822,\n  \"downtime</w>\": 41964,\n  \"downton\": 45023,\n  \"downton</w>\": 42668,\n  \"downtown\": 18230,\n  \"downtown</w>\": 5061,\n  \"downward</w>\": 37430,\n  \"dowski</w>\": 43556,\n  \"dox\": 44786,\n  \"dox</w>\": 14510,\n  \"doyle</w>\": 17728,\n  \"doyou\": 27256,\n  \"doz</w>\": 31106,\n  \"dozen</w>\": 16401,\n  \"dozens</w>\": 17883,\n  \"dp\": 23820,\n  \"dp</w>\": 6465,\n  \"dprint</w>\": 46644,\n  \"dprinting</w>\": 16194,\n  \"dprk</w>\": 47920,\n  \"dps</w>\": 34288,\n  \"dq</w>\": 28741,\n  \"dr\": 1084,\n  \"dr</w>\": 1701,\n  \"dra\": 1114,\n  \"dra</w>\": 7402,\n  \"drac\": 20168,\n  \"dracing</w>\": 41253,\n  \"dracula</w>\": 25405,\n  \"draf\": 37426,\n  \"draft\": 30624,\n  \"draft</w>\": 5198,\n  \"drafted</w>\": 19129,\n  \"drafting</w>\": 33528,\n  \"drafts</w>\": 29194,\n  \"drag\": 8452,\n  \"drag</w>\": 12463,\n  \"dragged</w>\": 27884,\n  \"dragging</w>\": 37069,\n  \"dragon\": 9187,\n  \"dragon</w>\": 5471,\n  \"dragonball\": 40959,\n  \"dragoncon</w>\": 47802,\n  \"dragonfly</w>\": 32824,\n  \"dragons</w>\": 10203,\n  \"dragrace</w>\": 40762,\n  \"drags</w>\": 45368,\n  \"drain\": 23347,\n  \"drain</w>\": 19467,\n  \"drainage</w>\": 25953,\n  \"drained</w>\": 44630,\n  \"drains</w>\": 43638,\n  \"drainthe\": 47337,\n  \"drake\": 32504,\n  \"drake</w>\": 8958,\n  \"dral</w>\": 7503,\n  \"dram\": 6937,\n  \"dram</w>\": 32170,\n  \"drama</w>\": 5055,\n  \"dramas</w>\": 33467,\n  \"dramati\": 43512,\n  \"dramatic</w>\": 11240,\n  \"dramatically</w>\": 24495,\n  \"drank</w>\": 21712,\n  \"draped</w>\": 49113,\n  \"drastic</w>\": 43159,\n  \"drastically</w>\": 35478,\n  \"drau\": 18621,\n  \"draw\": 17675,\n  \"draw</w>\": 4001,\n  \"drawer</w>\": 23219,\n  \"drawers</w>\": 38975,\n  \"drawing\": 36996,\n  \"drawing</w>\": 3610,\n  \"drawings</w>\": 13397,\n  \"drawn</w>\": 8893,\n  \"draws</w>\": 12043,\n  \"dray\": 25562,\n  \"drayton</w>\": 49044,\n  \"drc</w>\": 21434,\n  \"dre\": 960,\n  \"dre</w>\": 14584,\n  \"dread\": 17412,\n  \"dread</w>\": 31403,\n  \"dreaded</w>\": 47227,\n  \"dreadful</w>\": 35846,\n  \"dreality</w>\": 48367,\n  \"dream\": 4595,\n  \"dream</w>\": 2984,\n  \"dreambig</w>\": 46495,\n  \"dreamcast</w>\": 47226,\n  \"dreamed</w>\": 27984,\n  \"dreamer</w>\": 25692,\n  \"dreamers</w>\": 27194,\n  \"dreaming</w>\": 11662,\n  \"dreamliner</w>\": 49143,\n  \"dreams</w>\": 4405,\n  \"dreamt</w>\": 43743,\n  \"dreamteam</w>\": 40090,\n  \"dreamy</w>\": 23517,\n  \"dred</w>\": 10903,\n  \"dredge</w>\": 48783,\n  \"dren\": 29068,\n  \"dren</w>\": 47309,\n  \"drenched</w>\": 46378,\n  \"dres\": 48852,\n  \"dres</w>\": 44697,\n  \"dresden</w>\": 34836,\n  \"dress\": 12622,\n  \"dress</w>\": 2595,\n  \"dressage</w>\": 36144,\n  \"dressed</w>\": 6559,\n  \"dresser</w>\": 26346,\n  \"dresses</w>\": 8184,\n  \"dressing</w>\": 6348,\n  \"drew\": 18792,\n  \"drew</w>\": 5281,\n  \"drex\": 33985,\n  \"drey\": 48271,\n  \"dri\": 1203,\n  \"dri</w>\": 28833,\n  \"drian</w>\": 36870,\n  \"dribb\": 42153,\n  \"dric</w>\": 23448,\n  \"dridge</w>\": 22956,\n  \"drie</w>\": 40170,\n  \"dried</w>\": 16037,\n  \"drier</w>\": 39877,\n  \"dries</w>\": 33857,\n  \"drif\": 33585,\n  \"drift</w>\": 18194,\n  \"drifting</w>\": 30276,\n  \"drill</w>\": 11626,\n  \"drilled</w>\": 46338,\n  \"drilling</w>\": 18634,\n  \"drills</w>\": 24378,\n  \"drin\": 3375,\n  \"drin</w>\": 47133,\n  \"drink\": 14131,\n  \"drink</w>\": 3979,\n  \"drinking</w>\": 5778,\n  \"drinklocal</w>\": 45998,\n  \"drinks</w>\": 6732,\n  \"drip</w>\": 24050,\n  \"dripping</w>\": 38787,\n  \"dris</w>\": 35804,\n  \"drive\": 11402,\n  \"drive</w>\": 2620,\n  \"driven</w>\": 9314,\n  \"driver\": 27563,\n  \"driver</w>\": 4383,\n  \"driverless</w>\": 46769,\n  \"drivers</w>\": 7384,\n  \"drives</w>\": 11441,\n  \"driveway</w>\": 26273,\n  \"driving\": 37800,\n  \"driving</w>\": 4161,\n  \"drizzle</w>\": 28240,\n  \"drm</w>\": 39674,\n  \"dro\": 1494,\n  \"dro</w>\": 12442,\n  \"drogba</w>\": 49199,\n  \"droid</w>\": 38016,\n  \"drome</w>\": 9157,\n  \"dron\": 43898,\n  \"dron</w>\": 23360,\n  \"drone\": 33557,\n  \"drone</w>\": 9397,\n  \"drones</w>\": 14006,\n  \"droo\": 30715,\n  \"drool</w>\": 41554,\n  \"drooling</w>\": 44360,\n  \"drop\": 16407,\n  \"drop</w>\": 3387,\n  \"dropbox</w>\": 47216,\n  \"dropped</w>\": 6792,\n  \"dropping</w>\": 8339,\n  \"drops</w>\": 6437,\n  \"dros</w>\": 47033,\n  \"drou\": 38558,\n  \"drought</w>\": 13935,\n  \"drove</w>\": 13753,\n  \"drow\": 21159,\n  \"drown</w>\": 28571,\n  \"drowned</w>\": 34005,\n  \"drowning</w>\": 24618,\n  \"drs</w>\": 21257,\n  \"dru\": 2275,\n  \"dru</w>\": 49048,\n  \"drug\": 20601,\n  \"drug</w>\": 5600,\n  \"drugs</w>\": 8021,\n  \"druid</w>\": 40297,\n  \"drum\": 13353,\n  \"drum</w>\": 8698,\n  \"drummer</w>\": 13618,\n  \"drummers</w>\": 46191,\n  \"drumming</w>\": 35480,\n  \"drummond</w>\": 42213,\n  \"drums</w>\": 11690,\n  \"drun\": 15488,\n  \"drunk\": 37398,\n  \"drunk</w>\": 8232,\n  \"drunken</w>\": 28196,\n  \"drupal</w>\": 46481,\n  \"drush</w>\": 43009,\n  \"drwho</w>\": 48342,\n  \"dry\": 13544,\n  \"dry</w>\": 4501,\n  \"dryer</w>\": 24425,\n  \"drying</w>\": 23203,\n  \"ds\": 3361,\n  \"ds</w>\": 646,\n  \"dsa</w>\": 47607,\n  \"dsb\": 47168,\n  \"dsb</w>\": 14257,\n  \"dsburg</w>\": 47237,\n  \"dsc</w>\": 37240,\n  \"dsd</w>\": 45383,\n  \"dsley</w>\": 40740,\n  \"dslr</w>\": 33740,\n  \"dsm</w>\": 39502,\n  \"dson</w>\": 40310,\n  \"dsp</w>\": 45291,\n  \"dss</w>\": 41580,\n  \"dstv</w>\": 35027,\n  \"dt\": 13104,\n  \"dt</w>\": 7427,\n  \"dthe\": 13863,\n  \"dtla</w>\": 31885,\n  \"dtm</w>\": 42407,\n  \"dts</w>\": 46233,\n  \"du\": 691,\n  \"du</w>\": 3686,\n  \"dua</w>\": 25244,\n  \"dual\": 39739,\n  \"dual</w>\": 5347,\n  \"duane</w>\": 38946,\n  \"dub\": 14526,\n  \"dub</w>\": 13144,\n  \"duba\": 5485,\n  \"dubai\": 32599,\n  \"dubai</w>\": 5985,\n  \"dubbed</w>\": 27740,\n  \"dublin\": 20707,\n  \"dublin</w>\": 6145,\n  \"dubnation</w>\": 47329,\n  \"dubois</w>\": 48046,\n  \"dubrov\": 46709,\n  \"dubrovnik</w>\": 48724,\n  \"dubs</w>\": 27013,\n  \"dubstep</w>\": 38303,\n  \"dubu\": 43257,\n  \"duc\": 979,\n  \"duc</w>\": 36446,\n  \"ducati</w>\": 28570,\n  \"ducation</w>\": 17197,\n  \"duce</w>\": 3660,\n  \"duchess</w>\": 21713,\n  \"duck\": 12708,\n  \"duck</w>\": 6910,\n  \"ducks</w>\": 11202,\n  \"duct</w>\": 26829,\n  \"dude\": 48087,\n  \"dude</w>\": 5710,\n  \"dudes</w>\": 14449,\n  \"dudley</w>\": 27324,\n  \"due</w>\": 2887,\n  \"duel</w>\": 27143,\n  \"dues</w>\": 37646,\n  \"duet</w>\": 25457,\n  \"duf\": 38713,\n  \"duff\": 38071,\n  \"duff</w>\": 21934,\n  \"duffy</w>\": 23599,\n  \"dug\": 22743,\n  \"dug</w>\": 21000,\n  \"dugg\": 40523,\n  \"duggan</w>\": 46169,\n  \"dugout</w>\": 36831,\n  \"duh</w>\": 26716,\n  \"dui</w>\": 29693,\n  \"duk</w>\": 14160,\n  \"duke\": 18402,\n  \"duke</w>\": 7732,\n  \"dukes</w>\": 27914,\n  \"dul\": 6738,\n  \"dulce</w>\": 44872,\n  \"dulil\": 32565,\n  \"dulkar</w>\": 47980,\n  \"dull</w>\": 19433,\n  \"dulu\": 28865,\n  \"duluth</w>\": 32109,\n  \"dulwich</w>\": 47343,\n  \"dum\": 13400,\n  \"dum</w>\": 11564,\n  \"dumb\": 15901,\n  \"dumb</w>\": 12464,\n  \"dumbass</w>\": 38980,\n  \"dummies</w>\": 40899,\n  \"dummy</w>\": 34246,\n  \"dump\": 12655,\n  \"dump</w>\": 17146,\n  \"dumped</w>\": 23768,\n  \"dumping</w>\": 31707,\n  \"dumplings</w>\": 35495,\n  \"dumps</w>\": 45804,\n  \"dumpster</w>\": 45467,\n  \"dun\": 2616,\n  \"dun</w>\": 18284,\n  \"dunbar</w>\": 41453,\n  \"duncan\": 31084,\n  \"duncan</w>\": 13502,\n  \"dundal\": 38185,\n  \"dundas</w>\": 39300,\n  \"dundee</w>\": 18619,\n  \"dune\": 32833,\n  \"dune</w>\": 28208,\n  \"dunedin</w>\": 40121,\n  \"dunes</w>\": 23526,\n  \"dung</w>\": 33712,\n  \"dungeon\": 28812,\n  \"dungeon</w>\": 22931,\n  \"dungeons</w>\": 42572,\n  \"dungeonsand\": 34970,\n  \"dungeonsanddragons</w>\": 35497,\n  \"dunham</w>\": 42501,\n  \"duni</w>\": 43454,\n  \"dunk</w>\": 17222,\n  \"dunkin\": 48022,\n  \"dunkin</w>\": 36415,\n  \"dunkirk</w>\": 46928,\n  \"dunks</w>\": 48977,\n  \"dunlop</w>\": 34753,\n  \"dunn</w>\": 19185,\n  \"dunne</w>\": 38538,\n  \"dunno</w>\": 24502,\n  \"duo</w>\": 8696,\n  \"dup\": 36805,\n  \"dup</w>\": 10445,\n  \"duper</w>\": 44850,\n  \"duplex</w>\": 41186,\n  \"duplic\": 28992,\n  \"dupont</w>\": 35994,\n  \"dur\": 4355,\n  \"dur</w>\": 23230,\n  \"dura\": 28173,\n  \"dura</w>\": 47382,\n  \"durability</w>\": 43671,\n  \"durable</w>\": 22285,\n  \"duran</w>\": 28185,\n  \"durango</w>\": 44443,\n  \"durant</w>\": 24861,\n  \"duras</w>\": 27518,\n  \"duration</w>\": 31663,\n  \"durban</w>\": 24474,\n  \"dure</w>\": 19108,\n  \"durga</w>\": 38456,\n  \"durham\": 26765,\n  \"durham</w>\": 14335,\n  \"during</w>\": 1590,\n  \"dus</w>\": 9931,\n  \"dusa</w>\": 28546,\n  \"dusk</w>\": 19708,\n  \"dust\": 29723,\n  \"dust</w>\": 8349,\n  \"dusted</w>\": 38274,\n  \"duster</w>\": 46280,\n  \"dustin\": 42423,\n  \"dustin</w>\": 21235,\n  \"dusting</w>\": 41756,\n  \"dusty</w>\": 22029,\n  \"dut\": 32625,\n  \"dutch\": 22277,\n  \"dutch</w>\": 7991,\n  \"duter\": 21624,\n  \"duterte</w>\": 22371,\n  \"duties</w>\": 19603,\n  \"dutt</w>\": 30081,\n  \"dutton</w>\": 42771,\n  \"duty</w>\": 6458,\n  \"duval</w>\": 42459,\n  \"duvet</w>\": 48006,\n  \"dux</w>\": 28562,\n  \"dv\": 4288,\n  \"dv</w>\": 26265,\n  \"dvd</w>\": 7170,\n  \"dvds</w>\": 36655,\n  \"dvn</w>\": 29811,\n  \"dvr</w>\": 29210,\n  \"dw\": 8455,\n  \"dw</w>\": 19997,\n  \"dwar\": 13487,\n  \"dwarf</w>\": 22643,\n  \"dwayne</w>\": 31395,\n  \"dwell\": 27549,\n  \"dwell</w>\": 18755,\n  \"dwelling</w>\": 37098,\n  \"dwight</w>\": 22473,\n  \"dwp</w>\": 46976,\n  \"dwts</w>\": 30220,\n  \"dwyer</w>\": 43878,\n  \"dx\": 22717,\n  \"dx</w>\": 15679,\n  \"dy\": 1444,\n  \"dy</w>\": 907,\n  \"dyce</w>\": 48325,\n  \"dye\": 37159,\n  \"dye</w>\": 15997,\n  \"dyed</w>\": 24906,\n  \"dyer</w>\": 29495,\n  \"dyes</w>\": 39874,\n  \"dying</w>\": 5115,\n  \"dyk</w>\": 12142,\n  \"dyke</w>\": 32632,\n  \"dylan\": 21004,\n  \"dylan</w>\": 9900,\n  \"dyn\": 44289,\n  \"dyn</w>\": 30669,\n  \"dynam\": 5735,\n  \"dynamic</w>\": 10057,\n  \"dynamics</w>\": 14329,\n  \"dynamite</w>\": 29003,\n  \"dynamo</w>\": 28281,\n  \"dynasty</w>\": 14593,\n  \"dyne</w>\": 42756,\n  \"dyou\": 11484,\n  \"dyour\": 22525,\n  \"dys\": 11022,\n  \"dys</w>\": 38384,\n  \"dysfunction</w>\": 36865,\n  \"dysfunctional</w>\": 40757,\n  \"dysle\": 33681,\n  \"dyslexia</w>\": 43199,\n  \"dyson</w>\": 34475,\n  \"dyssey</w>\": 17435,\n  \"dystop\": 28276,\n  \"dystopian</w>\": 38915,\n  \"dz\": 24421,\n  \"dz</w>\": 22913,\n  \"dÃ©\": 25466,\n  \"dÃ¼\": 46948,\n  \"dÃŃ\": 46988,\n  \"e\": 68,\n  \"e</w>\": 324,\n  \"ea\": 2150,\n  \"ea</w>\": 8100,\n  \"eable</w>\": 20693,\n  \"each\": 31442,\n  \"each</w>\": 2416,\n  \"eachother</w>\": 40792,\n  \"ead\": 42556,\n  \"ead</w>\": 45523,\n  \"eae</w>\": 27446,\n  \"eag\": 3743,\n  \"eager</w>\": 21551,\n  \"eagerly</w>\": 30094,\n  \"eagle\": 20207,\n  \"eagle</w>\": 7517,\n  \"eagles</w>\": 6920,\n  \"eal\": 48872,\n  \"ealing</w>\": 40484,\n  \"eames</w>\": 49072,\n  \"eamon\": 45954,\n  \"ean</w>\": 13327,\n  \"ear\": 1055,\n  \"ear</w>\": 8373,\n  \"earbuds</w>\": 47807,\n  \"eared</w>\": 9127,\n  \"earl\": 30573,\n  \"earl</w>\": 14235,\n  \"earle</w>\": 40292,\n  \"earlier</w>\": 4297,\n  \"earliest</w>\": 22097,\n  \"early\": 15840,\n  \"early</w>\": 2090,\n  \"earn\": 33977,\n  \"earn</w>\": 8465,\n  \"earned</w>\": 8898,\n  \"earnest</w>\": 45422,\n  \"earning</w>\": 14550,\n  \"earnings</w>\": 15912,\n  \"earns</w>\": 16760,\n  \"earp</w>\": 35296,\n  \"earphones</w>\": 44905,\n  \"earring</w>\": 28664,\n  \"earrings</w>\": 9136,\n  \"ears</w>\": 9861,\n  \"eart\": 7086,\n  \"earth\": 5184,\n  \"earth</w>\": 3475,\n  \"earthand\": 34229,\n  \"earthandclouds</w>\": 34480,\n  \"earthday</w>\": 19481,\n  \"earthquake</w>\": 10060,\n  \"earthquakes</w>\": 32895,\n  \"earthy</w>\": 47139,\n  \"earts</w>\": 38824,\n  \"eas\": 5740,\n  \"ease</w>\": 13574,\n  \"easier</w>\": 8817,\n  \"easiest</w>\": 26314,\n  \"easily</w>\": 8197,\n  \"easing</w>\": 44825,\n  \"easport\": 42251,\n  \"east\": 5022,\n  \"east</w>\": 2602,\n  \"eastbound</w>\": 28827,\n  \"eastbourne</w>\": 38455,\n  \"eastenders</w>\": 23545,\n  \"easter\": 14783,\n  \"easter</w>\": 4811,\n  \"eastern\": 34522,\n  \"eastern</w>\": 6311,\n  \"eastman</w>\": 48280,\n  \"easton</w>\": 29619,\n  \"eastside</w>\": 42650,\n  \"eastwood</w>\": 28270,\n  \"easy\": 18308,\n  \"easy</w>\": 3176,\n  \"eat\": 5418,\n  \"eat</w>\": 3384,\n  \"eaten</w>\": 16750,\n  \"eater</w>\": 24060,\n  \"eaters</w>\": 37645,\n  \"eatery</w>\": 46559,\n  \"eating</w>\": 4371,\n  \"eatlocal</w>\": 42868,\n  \"eaton</w>\": 28462,\n  \"eats</w>\": 13188,\n  \"eau</w>\": 17608,\n  \"eazy</w>\": 36536,\n  \"eb\": 12283,\n  \"eb</w>\": 8677,\n  \"eba</w>\": 40889,\n  \"ebay\": 34412,\n  \"ebay</w>\": 4099,\n  \"eber\": 34020,\n  \"ebo</w>\": 46635,\n  \"ebola</w>\": 15864,\n  \"ebon\": 22013,\n  \"ebony</w>\": 30651,\n  \"ebook</w>\": 13122,\n  \"ebooks</w>\": 25774,\n  \"ec\": 747,\n  \"ec</w>\": 10879,\n  \"eca</w>\": 18465,\n  \"ecar\": 34500,\n  \"ecb</w>\": 26205,\n  \"ecc</w>\": 33128,\n  \"eccc</w>\": 47401,\n  \"eccentric</w>\": 43228,\n  \"eccle\": 27494,\n  \"ece</w>\": 2163,\n  \"eces</w>\": 5905,\n  \"ecg</w>\": 45983,\n  \"ech\": 15797,\n  \"ech</w>\": 31147,\n  \"echel\": 41233,\n  \"echo\": 17366,\n  \"echo</w>\": 13989,\n  \"echoes</w>\": 32564,\n  \"eci\": 31936,\n  \"eck\": 25866,\n  \"eck</w>\": 15969,\n  \"ecker\": 39661,\n  \"ecker</w>\": 40890,\n  \"ecla\": 47806,\n  \"eclec\": 25114,\n  \"eclectic</w>\": 28382,\n  \"eclip\": 30841,\n  \"eclipse</w>\": 11505,\n  \"eclub</w>\": 38983,\n  \"eco\": 5106,\n  \"eco</w>\": 10077,\n  \"ecofriendly</w>\": 43412,\n  \"ecol\": 22706,\n  \"ecological</w>\": 25127,\n  \"ecology</w>\": 18578,\n  \"ecommerce</w>\": 15529,\n  \"econ\": 26755,\n  \"econ</w>\": 21158,\n  \"econom\": 2768,\n  \"economic\": 36649,\n  \"economic</w>\": 5259,\n  \"economical</w>\": 48782,\n  \"economically</w>\": 39406,\n  \"economics</w>\": 12625,\n  \"economies</w>\": 27136,\n  \"economist</w>\": 18836,\n  \"economists</w>\": 43701,\n  \"economy</w>\": 5644,\n  \"ecor\": 28962,\n  \"ecosystem</w>\": 15788,\n  \"ecosystems</w>\": 28725,\n  \"ecoun\": 27924,\n  \"ecr</w>\": 48572,\n  \"ecraft</w>\": 11439,\n  \"ecs</w>\": 23485,\n  \"ecstasy</w>\": 47286,\n  \"ecstatic</w>\": 36244,\n  \"ect</w>\": 25168,\n  \"ecu\": 13087,\n  \"ecu</w>\": 32919,\n  \"ecuador</w>\": 19813,\n  \"ecz\": 43530,\n  \"ed\": 843,\n  \"ed</w>\": 538,\n  \"eda</w>\": 10804,\n  \"edad</w>\": 44724,\n  \"eday\": 39258,\n  \"edc</w>\": 21245,\n  \"edchat</w>\": 14702,\n  \"edd</w>\": 35431,\n  \"eddi\": 42930,\n  \"eddie\": 22748,\n  \"eddie</w>\": 9517,\n  \"eddy</w>\": 25959,\n  \"ede\": 29632,\n  \"eded</w>\": 19555,\n  \"edel\": 20460,\n  \"edelman</w>\": 48139,\n  \"eden\": 23621,\n  \"eden</w>\": 13741,\n  \"eder</w>\": 16249,\n  \"edes</w>\": 36247,\n  \"edfringe</w>\": 27402,\n  \"edg\": 35955,\n  \"edgar\": 33543,\n  \"edgar</w>\": 17914,\n  \"edge\": 16914,\n  \"edge</w>\": 5461,\n  \"edged</w>\": 39188,\n  \"edges</w>\": 20938,\n  \"edgy</w>\": 35393,\n  \"edi\": 8750,\n  \"edi</w>\": 27148,\n  \"edible</w>\": 19795,\n  \"edic\": 25184,\n  \"edics</w>\": 30641,\n  \"edin\": 6524,\n  \"edinburgh\": 27574,\n  \"edinburgh</w>\": 8068,\n  \"eding</w>\": 5742,\n  \"edison</w>\": 25846,\n  \"edit\": 8239,\n  \"edit</w>\": 8013,\n  \"edited</w>\": 13945,\n  \"edith</w>\": 28597,\n  \"editing</w>\": 10178,\n  \"edition</w>\": 3062,\n  \"editions</w>\": 21664,\n  \"editor</w>\": 7661,\n  \"editorial</w>\": 12325,\n  \"editors</w>\": 19486,\n  \"edits</w>\": 24945,\n  \"edm\": 37843,\n  \"edm</w>\": 13539,\n  \"edmon\": 11275,\n  \"edmond</w>\": 41581,\n  \"edmonds</w>\": 46520,\n  \"edmonton\": 37311,\n  \"edmonton</w>\": 15058,\n  \"edmun\": 36561,\n  \"edmund</w>\": 27567,\n  \"edna</w>\": 39002,\n  \"edo\": 29145,\n  \"edo</w>\": 18096,\n  \"edon</w>\": 41467,\n  \"edor\": 30184,\n  \"edou\": 47678,\n  \"edp</w>\": 46066,\n  \"eds</w>\": 1941,\n  \"edsheeran</w>\": 30386,\n  \"edt</w>\": 15071,\n  \"edtech\": 41825,\n  \"edtech</w>\": 15262,\n  \"edu\": 11757,\n  \"edu</w>\": 11799,\n  \"eduardo</w>\": 30604,\n  \"educ\": 2200,\n  \"educate</w>\": 17563,\n  \"educated</w>\": 21447,\n  \"education\": 22358,\n  \"education</w>\": 2806,\n  \"educational</w>\": 10400,\n  \"educator</w>\": 19875,\n  \"educators</w>\": 15420,\n  \"edwar\": 27586,\n  \"edward\": 26184,\n  \"edward</w>\": 7450,\n  \"edwards</w>\": 12627,\n  \"edwin\": 48718,\n  \"edwin</w>\": 22471,\n  \"edy\": 17072,\n  \"edy</w>\": 4144,\n  \"ee\": 2644,\n  \"ee</w>\": 4708,\n  \"eed</w>\": 17513,\n  \"eee\": 24632,\n  \"eee</w>\": 9361,\n  \"eeee\": 11696,\n  \"eeee</w>\": 17570,\n  \"eeeee</w>\": 26938,\n  \"eeeeee</w>\": 41407,\n  \"eek</w>\": 46591,\n  \"eel</w>\": 27462,\n  \"eels</w>\": 44416,\n  \"eem</w>\": 27236,\n  \"een\": 47490,\n  \"een</w>\": 21230,\n  \"eer\": 35409,\n  \"eer</w>\": 31846,\n  \"eera</w>\": 36664,\n  \"eerie</w>\": 33846,\n  \"ees</w>\": 40308,\n  \"eet</w>\": 48935,\n  \"eez</w>\": 39033,\n  \"ef\": 1490,\n  \"ef</w>\": 1829,\n  \"efa</w>\": 16999,\n  \"eface</w>\": 48804,\n  \"efan\": 33556,\n  \"efc</w>\": 22065,\n  \"efcc</w>\": 46087,\n  \"efer</w>\": 26199,\n  \"eff\": 20548,\n  \"eff</w>\": 21715,\n  \"effe\": 2808,\n  \"effec\": 3943,\n  \"effect</w>\": 5436,\n  \"effective</w>\": 6837,\n  \"effectively</w>\": 17516,\n  \"effectiveness</w>\": 26847,\n  \"effects</w>\": 7331,\n  \"effic\": 36004,\n  \"efficacy</w>\": 39937,\n  \"effici\": 6670,\n  \"efficiency</w>\": 11823,\n  \"efficient</w>\": 11334,\n  \"efficiently</w>\": 32915,\n  \"effor\": 6356,\n  \"effort\": 40078,\n  \"effort</w>\": 6255,\n  \"effortless</w>\": 41639,\n  \"effortlessly</w>\": 42320,\n  \"efforts</w>\": 6847,\n  \"efish</w>\": 35813,\n  \"efl</w>\": 27172,\n  \"efron</w>\": 48111,\n  \"efs</w>\": 7389,\n  \"eg\": 8053,\n  \"eg</w>\": 14599,\n  \"ega</w>\": 41193,\n  \"egan</w>\": 42943,\n  \"eger\": 46704,\n  \"eger</w>\": 22767,\n  \"egg\": 13778,\n  \"egg</w>\": 5911,\n  \"eggplant</w>\": 34906,\n  \"eggs</w>\": 7099,\n  \"ego\": 34712,\n  \"ego</w>\": 14250,\n  \"egos</w>\": 43992,\n  \"egre\": 27044,\n  \"egret</w>\": 42002,\n  \"egy\": 5224,\n  \"egyp\": 10250,\n  \"egypt</w>\": 7267,\n  \"egyptian</w>\": 12428,\n  \"eh\": 9277,\n  \"eh</w>\": 9135,\n  \"eha</w>\": 48563,\n  \"ehealth</w>\": 48617,\n  \"ehr\": 45271,\n  \"ehs</w>\": 44648,\n  \"ei\": 4006,\n  \"ei</w>\": 18264,\n  \"eic\": 40251,\n  \"eid\": 28038,\n  \"eid</w>\": 13979,\n  \"eidmubarak</w>\": 46275,\n  \"eiffel</w>\": 29720,\n  \"eigh\": 13468,\n  \"eight</w>\": 7910,\n  \"eighteen</w>\": 49316,\n  \"eighth</w>\": 21237,\n  \"eighty</w>\": 47449,\n  \"eil\": 29457,\n  \"eileen</w>\": 31468,\n  \"ein\": 29944,\n  \"ein</w>\": 24524,\n  \"eindhoven</w>\": 47172,\n  \"eing</w>\": 7702,\n  \"einstein</w>\": 20587,\n  \"eira</w>\": 47708,\n  \"eis\": 13802,\n  \"eisen\": 25273,\n  \"eisenhower</w>\": 35562,\n  \"either</w>\": 6036,\n  \"ej\": 19887,\n  \"ej</w>\": 25009,\n  \"ejec\": 29771,\n  \"ek\": 4212,\n  \"ek</w>\": 2092,\n  \"el\": 544,\n  \"el</w>\": 832,\n  \"ela\": 11284,\n  \"ela</w>\": 3787,\n  \"elab</w>\": 38866,\n  \"elabor\": 26034,\n  \"elaborate</w>\": 33855,\n  \"elaine</w>\": 22523,\n  \"elan\": 17763,\n  \"elan</w>\": 18399,\n  \"eland\": 24930,\n  \"eland</w>\": 6275,\n  \"elas</w>\": 41078,\n  \"elast\": 27479,\n  \"elastic</w>\": 30282,\n  \"elba</w>\": 48598,\n  \"elbow</w>\": 21965,\n  \"eld</w>\": 5684,\n  \"elder\": 11791,\n  \"elder</w>\": 14416,\n  \"elderly</w>\": 15455,\n  \"elders</w>\": 28617,\n  \"eldest</w>\": 33503,\n  \"elding</w>\": 28223,\n  \"elds</w>\": 13466,\n  \"ele\": 2084,\n  \"ele</w>\": 9766,\n  \"eleague</w>\": 36577,\n  \"eleanor</w>\": 18604,\n  \"elearning</w>\": 29969,\n  \"elec\": 1564,\n  \"elec</w>\": 38768,\n  \"elect</w>\": 15336,\n  \"elected</w>\": 8828,\n  \"election\": 19312,\n  \"election</w>\": 4247,\n  \"electionday</w>\": 40540,\n  \"elections</w>\": 6949,\n  \"elector\": 16465,\n  \"electoral</w>\": 19544,\n  \"electr\": 3654,\n  \"electra</w>\": 48959,\n  \"electri\": 23927,\n  \"electric\": 19547,\n  \"electric</w>\": 5031,\n  \"electrical</w>\": 12176,\n  \"electrician</w>\": 46422,\n  \"electricity</w>\": 10950,\n  \"electrifying</w>\": 48843,\n  \"electro\": 11648,\n  \"electro</w>\": 23244,\n  \"electromagnetic</w>\": 46530,\n  \"electron</w>\": 33396,\n  \"electronic\": 33865,\n  \"electronic</w>\": 9273,\n  \"electronica</w>\": 43119,\n  \"electronics</w>\": 13081,\n  \"eled</w>\": 20357,\n  \"elee</w>\": 44112,\n  \"eleg\": 8075,\n  \"elegance</w>\": 19146,\n  \"elegant</w>\": 11124,\n  \"elek\": 34559,\n  \"elem</w>\": 25406,\n  \"element</w>\": 14909,\n  \"elementary</w>\": 8143,\n  \"elements</w>\": 10925,\n  \"elen\": 30654,\n  \"elen</w>\": 39164,\n  \"elena</w>\": 19421,\n  \"eleng\": 48180,\n  \"eleph\": 7554,\n  \"elephant</w>\": 10299,\n  \"elephants</w>\": 16871,\n  \"eler</w>\": 24646,\n  \"eless\": 15244,\n  \"eless</w>\": 30837,\n  \"elets</w>\": 19400,\n  \"elev\": 7921,\n  \"elevate</w>\": 26736,\n  \"elevated</w>\": 23967,\n  \"elevation</w>\": 23826,\n  \"elevator</w>\": 19021,\n  \"eleven\": 31617,\n  \"eleven</w>\": 17795,\n  \"elf\": 45961,\n  \"elf</w>\": 11924,\n  \"elfie</w>\": 39955,\n  \"elg\": 28790,\n  \"elgin</w>\": 31868,\n  \"eli\": 1018,\n  \"eli</w>\": 6292,\n  \"elia</w>\": 10956,\n  \"elian</w>\": 42508,\n  \"elias\": 47274,\n  \"elias</w>\": 29902,\n  \"elic\": 34743,\n  \"elic</w>\": 13492,\n  \"elie\": 38677,\n  \"elie</w>\": 26501,\n  \"elier</w>\": 14634,\n  \"elife\": 37429,\n  \"elife</w>\": 12719,\n  \"eligibility</w>\": 34937,\n  \"eligible</w>\": 16978,\n  \"elijah</w>\": 26065,\n  \"elike\": 48913,\n  \"elim\": 9296,\n  \"elimin\": 11386,\n  \"eliminate</w>\": 19655,\n  \"eliminated</w>\": 29075,\n  \"eliminating</w>\": 36619,\n  \"elimination</w>\": 24176,\n  \"elin\": 25353,\n  \"elin</w>\": 13458,\n  \"eline\": 46199,\n  \"eline</w>\": 7153,\n  \"eling</w>\": 9990,\n  \"elio</w>\": 47943,\n  \"elion</w>\": 30682,\n  \"elions</w>\": 44159,\n  \"eliot</w>\": 33326,\n  \"elis\": 23411,\n  \"elis</w>\": 48021,\n  \"elisa\": 25610,\n  \"elisa</w>\": 44051,\n  \"elisabeth</w>\": 33127,\n  \"elise</w>\": 27124,\n  \"elit\": 40882,\n  \"elite\": 32277,\n  \"elite</w>\": 6553,\n  \"elited\": 43943,\n  \"elitedangerous</w>\": 47138,\n  \"elites</w>\": 35975,\n  \"elius</w>\": 35623,\n  \"elive\": 49338,\n  \"elive</w>\": 23505,\n  \"elives</w>\": 49174,\n  \"elix\": 32926,\n  \"elixir</w>\": 42887,\n  \"eliz\": 42844,\n  \"eliza\": 6132,\n  \"eliza</w>\": 29992,\n  \"elizabeth\": 22397,\n  \"elizabeth</w>\": 7026,\n  \"elk\": 34013,\n  \"elk</w>\": 21896,\n  \"ell\": 826,\n  \"ell</w>\": 812,\n  \"ella\": 20692,\n  \"ella</w>\": 2957,\n  \"elland</w>\": 43326,\n  \"ellar</w>\": 38443,\n  \"ellas</w>\": 37053,\n  \"elle\": 12818,\n  \"elle</w>\": 4765,\n  \"elled</w>\": 13146,\n  \"ellen\": 14007,\n  \"ellen</w>\": 12312,\n  \"ellenshow</w>\": 34812,\n  \"eller\": 20927,\n  \"eller</w>\": 4465,\n  \"ellers</w>\": 19010,\n  \"elles</w>\": 24431,\n  \"elli\": 3367,\n  \"elli</w>\": 6673,\n  \"ellic\": 38905,\n  \"ellie</w>\": 16769,\n  \"ellier</w>\": 44054,\n  \"ellin</w>\": 40374,\n  \"elling</w>\": 2220,\n  \"ellington</w>\": 34477,\n  \"ellini</w>\": 43256,\n  \"elliot</w>\": 20761,\n  \"elliott\": 44456,\n  \"elliott</w>\": 13788,\n  \"ellip\": 44816,\n  \"ellis</w>\": 11553,\n  \"ellison</w>\": 32295,\n  \"ello</w>\": 2512,\n  \"ellor</w>\": 14594,\n  \"ells</w>\": 2433,\n  \"ellu\": 35560,\n  \"elly\": 8041,\n  \"elly</w>\": 20355,\n  \"elm\": 25199,\n  \"elm</w>\": 22082,\n  \"elman</w>\": 33622,\n  \"elmer</w>\": 45958,\n  \"elmo</w>\": 32150,\n  \"elo\": 6170,\n  \"elo</w>\": 13490,\n  \"elon\": 26381,\n  \"elon</w>\": 20406,\n  \"elondon</w>\": 47377,\n  \"elong\": 44363,\n  \"elonmusk</w>\": 37076,\n  \"elope</w>\": 23367,\n  \"eloqu\": 37795,\n  \"elos</w>\": 44733,\n  \"elot</w>\": 43490,\n  \"elove\": 43319,\n  \"elove</w>\": 19165,\n  \"elover</w>\": 21732,\n  \"elovers</w>\": 33946,\n  \"els\": 35958,\n  \"els</w>\": 1645,\n  \"elsa</w>\": 22050,\n  \"else\": 18857,\n  \"else</w>\": 3344,\n  \"elsewhere</w>\": 22906,\n  \"elson</w>\": 19624,\n  \"elt</w>\": 18692,\n  \"elton</w>\": 20758,\n  \"elu\": 14208,\n  \"elusive</w>\": 28903,\n  \"elves</w>\": 29111,\n  \"elvi\": 47008,\n  \"elvis\": 47359,\n  \"elvis</w>\": 14498,\n  \"elxn</w>\": 37726,\n  \"ely\": 12189,\n  \"ely</w>\": 1273,\n  \"elyn\": 29691,\n  \"elyn</w>\": 18126,\n  \"em\": 908,\n  \"em</w>\": 2270,\n  \"ema\": 7002,\n  \"ema</w>\": 11131,\n  \"emabiggest\": 23101,\n  \"emabiggestfans</w>\": 29587,\n  \"email\": 33537,\n  \"email</w>\": 4462,\n  \"emailed</w>\": 40470,\n  \"emailmarketing</w>\": 40188,\n  \"emails</w>\": 12871,\n  \"eman\": 24416,\n  \"eman</w>\": 36868,\n  \"emancip\": 42996,\n  \"emanuel</w>\": 35232,\n  \"emb\": 3692,\n  \"embar\": 8266,\n  \"embaras\": 48019,\n  \"embark</w>\": 33953,\n  \"embarra\": 11382,\n  \"embarrass\": 27183,\n  \"embarrassed</w>\": 28217,\n  \"embarrassing</w>\": 19653,\n  \"embarrassment</w>\": 41346,\n  \"embassy</w>\": 13598,\n  \"embe\": 46041,\n  \"embed\": 19703,\n  \"embedded</w>\": 22046,\n  \"embelli\": 32144,\n  \"embellished</w>\": 46992,\n  \"ember</w>\": 47049,\n  \"emblem</w>\": 21163,\n  \"embo\": 23065,\n  \"embr\": 35267,\n  \"embrac\": 16928,\n  \"embrace</w>\": 12118,\n  \"embraced</w>\": 35739,\n  \"embraces</w>\": 38404,\n  \"embracing</w>\": 22196,\n  \"embro\": 12550,\n  \"embroi\": 18667,\n  \"embroide\": 21530,\n  \"embroidered</w>\": 22381,\n  \"embroidery</w>\": 20823,\n  \"emc\": 20897,\n  \"emc</w>\": 31602,\n  \"emcee</w>\": 42038,\n  \"eme\": 22910,\n  \"eme</w>\": 21548,\n  \"emea</w>\": 40352,\n  \"emed</w>\": 11028,\n  \"emen</w>\": 22033,\n  \"ement\": 40841,\n  \"ement</w>\": 2057,\n  \"ements</w>\": 11058,\n  \"emer\": 3132,\n  \"emer</w>\": 25727,\n  \"emerald\": 46878,\n  \"emerald</w>\": 16980,\n  \"emerge</w>\": 22182,\n  \"emerged</w>\": 26425,\n  \"emergen\": 24096,\n  \"emergence</w>\": 39867,\n  \"emergencies</w>\": 35759,\n  \"emergency\": 44038,\n  \"emergency</w>\": 5897,\n  \"emerges</w>\": 30801,\n  \"emerging\": 38174,\n  \"emerging</w>\": 11113,\n  \"emeritus</w>\": 35333,\n  \"emerson</w>\": 24147,\n  \"emery</w>\": 32678,\n  \"emi\": 44327,\n  \"emi</w>\": 18525,\n  \"emil\": 26794,\n  \"emil</w>\": 40624,\n  \"emile</w>\": 43926,\n  \"emili\": 20709,\n  \"emilia</w>\": 34238,\n  \"emilio</w>\": 39722,\n  \"emily\": 14545,\n  \"emily</w>\": 7640,\n  \"emin\": 17227,\n  \"emin</w>\": 23995,\n  \"eminem</w>\": 22129,\n  \"eminent</w>\": 33779,\n  \"eming</w>\": 40398,\n  \"emir\": 13337,\n  \"emir</w>\": 47613,\n  \"emirates\": 47244,\n  \"emirates</w>\": 17867,\n  \"emission</w>\": 27761,\n  \"emissions</w>\": 14172,\n  \"emit</w>\": 49043,\n  \"emma\": 18177,\n  \"emma</w>\": 7445,\n  \"emmanuel\": 48045,\n  \"emmanuel</w>\": 20411,\n  \"emmett</w>\": 45779,\n  \"emmy\": 35625,\n  \"emmy</w>\": 17089,\n  \"emmys</w>\": 21875,\n  \"emo\": 3738,\n  \"emo</w>\": 19381,\n  \"emoji</w>\": 16327,\n  \"emojis</w>\": 27870,\n  \"emon</w>\": 34406,\n  \"emor\": 45034,\n  \"emory</w>\": 44274,\n  \"emotion</w>\": 17464,\n  \"emotional</w>\": 7357,\n  \"emotionally</w>\": 24088,\n  \"emotions</w>\": 12904,\n  \"emp\": 3831,\n  \"emp</w>\": 41004,\n  \"empathy</w>\": 22420,\n  \"emper\": 12522,\n  \"emperor</w>\": 13828,\n  \"empha\": 16237,\n  \"emphasi\": 47176,\n  \"emphasis</w>\": 29588,\n  \"empire\": 26212,\n  \"empire</w>\": 7614,\n  \"empires</w>\": 46510,\n  \"emplo\": 3409,\n  \"employ\": 37290,\n  \"employ</w>\": 39626,\n  \"employe\": 5037,\n  \"employed</w>\": 26567,\n  \"employee\": 36631,\n  \"employee</w>\": 9560,\n  \"employees</w>\": 7377,\n  \"employer</w>\": 21296,\n  \"employers</w>\": 17647,\n  \"employment</w>\": 10959,\n  \"empor\": 27386,\n  \"emporium</w>\": 48541,\n  \"empower\": 13612,\n  \"empower</w>\": 17230,\n  \"empowered</w>\": 29087,\n  \"empowering</w>\": 20086,\n  \"empowerment</w>\": 15747,\n  \"empowers</w>\": 46206,\n  \"empress</w>\": 26656,\n  \"empty\": 41203,\n  \"empty</w>\": 7893,\n  \"emra\": 39259,\n  \"ems</w>\": 2858,\n  \"emt</w>\": 46360,\n  \"emu\": 48149,\n  \"emu</w>\": 29296,\n  \"emul\": 23272,\n  \"emy\": 31076,\n  \"en\": 524,\n  \"en</w>\": 576,\n  \"ena</w>\": 3452,\n  \"enab\": 17308,\n  \"enable</w>\": 15642,\n  \"enabled</w>\": 23666,\n  \"enables</w>\": 23417,\n  \"enabling</w>\": 23590,\n  \"enam\": 41486,\n  \"enamel</w>\": 22746,\n  \"enary</w>\": 13132,\n  \"enas</w>\": 34536,\n  \"enation</w>\": 20860,\n  \"enberg</w>\": 15658,\n  \"enburg</w>\": 28430,\n  \"enc</w>\": 33169,\n  \"enca</w>\": 37774,\n  \"encan\": 30345,\n  \"encapsul\": 40874,\n  \"ence\": 6495,\n  \"ence</w>\": 954,\n  \"enced</w>\": 6549,\n  \"ences</w>\": 3777,\n  \"enchan\": 17290,\n  \"enchanted</w>\": 28258,\n  \"enchanting</w>\": 32531,\n  \"enchil\": 47396,\n  \"enci\": 32207,\n  \"encia</w>\": 30068,\n  \"encies</w>\": 18729,\n  \"encing</w>\": 10326,\n  \"enclosed</w>\": 43243,\n  \"enclosure</w>\": 37419,\n  \"encom\": 44026,\n  \"encore</w>\": 20549,\n  \"encoun\": 17309,\n  \"encounter</w>\": 13164,\n  \"encountered</w>\": 32492,\n  \"encounters</w>\": 25399,\n  \"encoura\": 6169,\n  \"encourage</w>\": 12090,\n  \"encouraged</w>\": 20299,\n  \"encouragement</w>\": 24959,\n  \"encourages</w>\": 23848,\n  \"encouraging</w>\": 15875,\n  \"encro\": 45822,\n  \"encry\": 28600,\n  \"encryp\": 42928,\n  \"encrypted</w>\": 48710,\n  \"encryption</w>\": 31423,\n  \"ency</w>\": 3484,\n  \"encyclo\": 32104,\n  \"encyclopedia</w>\": 38376,\n  \"end\": 945,\n  \"end</w>\": 806,\n  \"enda</w>\": 6735,\n  \"endale</w>\": 20290,\n  \"endange\": 13990,\n  \"endangered</w>\": 14931,\n  \"ende\": 11373,\n  \"ende</w>\": 40306,\n  \"endeav\": 18134,\n  \"endeavor</w>\": 40502,\n  \"endeavors</w>\": 44394,\n  \"endeavour</w>\": 38035,\n  \"ended</w>\": 2622,\n  \"endemic</w>\": 41241,\n  \"endent</w>\": 16265,\n  \"ender\": 48106,\n  \"ender</w>\": 12383,\n  \"enders</w>\": 7418,\n  \"endez</w>\": 43850,\n  \"endgame</w>\": 23042,\n  \"endi</w>\": 31359,\n  \"ending</w>\": 2695,\n  \"endings</w>\": 36516,\n  \"endish</w>\": 38841,\n  \"endless</w>\": 12688,\n  \"endlessly</w>\": 45145,\n  \"endment</w>\": 45894,\n  \"endo\": 13476,\n  \"endo</w>\": 15830,\n  \"endocr\": 36486,\n  \"endof\": 40786,\n  \"endome\": 46996,\n  \"endon</w>\": 48018,\n  \"endor\": 8092,\n  \"endorf</w>\": 37249,\n  \"endorse</w>\": 28819,\n  \"endorsed</w>\": 24307,\n  \"endorsement</w>\": 21205,\n  \"endorses</w>\": 34603,\n  \"endorsing</w>\": 46779,\n  \"endow\": 45895,\n  \"endra</w>\": 22321,\n  \"ends</w>\": 1339,\n  \"endthe\": 46256,\n  \"endu\": 26032,\n  \"endur\": 19557,\n  \"endurance</w>\": 21027,\n  \"endure</w>\": 32419,\n  \"enduring</w>\": 30851,\n  \"enduro</w>\": 47042,\n  \"ene\": 3297,\n  \"ene</w>\": 6049,\n  \"ened</w>\": 2494,\n  \"eneed\": 45137,\n  \"enegger</w>\": 33235,\n  \"enei</w>\": 48906,\n  \"enemies</w>\": 15824,\n  \"enemy</w>\": 10310,\n  \"enen</w>\": 45113,\n  \"ener\": 2244,\n  \"ener</w>\": 13600,\n  \"energ\": 39451,\n  \"energetic</w>\": 24197,\n  \"energi\": 23044,\n  \"energies</w>\": 42374,\n  \"energized</w>\": 48635,\n  \"energy\": 14974,\n  \"energy</w>\": 2650,\n  \"energye\": 32271,\n  \"energyefficiency</w>\": 40586,\n  \"eners</w>\": 48208,\n  \"enes</w>\": 42066,\n  \"eness</w>\": 11806,\n  \"enet</w>\": 46336,\n  \"enew\": 29672,\n  \"enews</w>\": 13442,\n  \"eney</w>\": 20706,\n  \"enez</w>\": 33110,\n  \"enf\": 38167,\n  \"enfield</w>\": 27808,\n  \"enfor\": 10592,\n  \"enforce</w>\": 40224,\n  \"enforced</w>\": 44597,\n  \"enforcement</w>\": 12460,\n  \"eng\": 1035,\n  \"eng</w>\": 6730,\n  \"enga</w>\": 22297,\n  \"engag\": 6793,\n  \"engage</w>\": 11089,\n  \"engaged</w>\": 11475,\n  \"engagement</w>\": 7281,\n  \"engaging</w>\": 13060,\n  \"enge\": 26279,\n  \"enge</w>\": 2742,\n  \"engel\": 38265,\n  \"engen</w>\": 48286,\n  \"enger</w>\": 6618,\n  \"engers</w>\": 7533,\n  \"engine\": 3355,\n  \"engine</w>\": 5857,\n  \"engineer\": 40151,\n  \"engineer</w>\": 8517,\n  \"engineered</w>\": 26580,\n  \"engineering</w>\": 5273,\n  \"engineers</w>\": 11494,\n  \"engines</w>\": 14487,\n  \"england\": 20904,\n  \"england</w>\": 3595,\n  \"english\": 15942,\n  \"english</w>\": 3469,\n  \"engra\": 17560,\n  \"engraved</w>\": 29421,\n  \"engraving</w>\": 33309,\n  \"engul\": 43655,\n  \"engv\": 28401,\n  \"enh\": 7449,\n  \"enhall</w>\": 48781,\n  \"enham</w>\": 24592,\n  \"enhan\": 26827,\n  \"enhance</w>\": 13993,\n  \"enhanced</w>\": 16070,\n  \"enhancement</w>\": 35601,\n  \"enhances</w>\": 38259,\n  \"enhancing</w>\": 25986,\n  \"eni\": 4395,\n  \"eni</w>\": 17538,\n  \"enic\": 46780,\n  \"enic</w>\": 28292,\n  \"enig\": 19754,\n  \"enig</w>\": 48730,\n  \"enight\": 32848,\n  \"enight</w>\": 20640,\n  \"enigma</w>\": 34998,\n  \"ening</w>\": 1133,\n  \"enium</w>\": 34380,\n  \"enix</w>\": 25720,\n  \"enjo\": 1498,\n  \"enjoy\": 12981,\n  \"enjoy</w>\": 2218,\n  \"enjoyable</w>\": 17444,\n  \"enjoyed</w>\": 5045,\n  \"enjoying</w>\": 3603,\n  \"enjoyment</w>\": 34905,\n  \"enjoys</w>\": 17024,\n  \"enka</w>\": 43942,\n  \"enko</w>\": 25312,\n  \"enlar\": 38136,\n  \"enligh\": 21364,\n  \"enlighten\": 28200,\n  \"enlightened</w>\": 44032,\n  \"enlightening</w>\": 44005,\n  \"enlightenment</w>\": 29255,\n  \"enlisted</w>\": 43555,\n  \"enly</w>\": 43023,\n  \"enn</w>\": 43563,\n  \"enna</w>\": 8095,\n  \"enne\": 21176,\n  \"enne</w>\": 11518,\n  \"ennedy</w>\": 46266,\n  \"ennes</w>\": 43613,\n  \"enni\": 7049,\n  \"ennial</w>\": 14220,\n  \"ennis\": 48923,\n  \"ennis</w>\": 26309,\n  \"eno\": 9429,\n  \"eno</w>\": 12843,\n  \"enoch</w>\": 47917,\n  \"enor\": 13955,\n  \"enormous</w>\": 20129,\n  \"enos</w>\": 44759,\n  \"enote</w>\": 44955,\n  \"enough</w>\": 2744,\n  \"enow</w>\": 26876,\n  \"enqu\": 28417,\n  \"enqui\": 22810,\n  \"enquire</w>\": 46658,\n  \"enquiries</w>\": 31901,\n  \"enquiry</w>\": 45141,\n  \"enri\": 18915,\n  \"enrich\": 20058,\n  \"enrich</w>\": 45504,\n  \"enriched</w>\": 45166,\n  \"enrichment</w>\": 32903,\n  \"enrique</w>\": 25489,\n  \"enrol\": 44279,\n  \"enroll\": 23739,\n  \"enroll</w>\": 30366,\n  \"enrolled</w>\": 36853,\n  \"enrollment</w>\": 24875,\n  \"enroute</w>\": 40548,\n  \"ens\": 41799,\n  \"ens</w>\": 1323,\n  \"ense\": 12657,\n  \"ense</w>\": 27658,\n  \"ensemble</w>\": 14843,\n  \"ensis</w>\": 32842,\n  \"ensla\": 37535,\n  \"enslaved</w>\": 48675,\n  \"ensure</w>\": 7492,\n  \"ensures</w>\": 29707,\n  \"ensuring</w>\": 19403,\n  \"ent\": 724,\n  \"ent</w>\": 621,\n  \"enta</w>\": 17681,\n  \"ental\": 32342,\n  \"ental</w>\": 6168,\n  \"entary</w>\": 9833,\n  \"entation</w>\": 37412,\n  \"ente\": 17433,\n  \"ente</w>\": 9935,\n  \"ented</w>\": 3800,\n  \"entennial</w>\": 43088,\n  \"enter\": 2963,\n  \"enter</w>\": 3819,\n  \"entered</w>\": 10679,\n  \"entering</w>\": 12580,\n  \"enterpri\": 7339,\n  \"enterprise</w>\": 9220,\n  \"enterprises</w>\": 21219,\n  \"enters</w>\": 15287,\n  \"entertain\": 5566,\n  \"entertain</w>\": 23510,\n  \"entertained</w>\": 30631,\n  \"entertainer</w>\": 28674,\n  \"entertaining</w>\": 13897,\n  \"entertainment</w>\": 6166,\n  \"entes</w>\": 24213,\n  \"enthr\": 36202,\n  \"enthusi\": 9631,\n  \"enthusiasm</w>\": 20525,\n  \"enthusiast</w>\": 27153,\n  \"enthusiastic</w>\": 22068,\n  \"enthusiasts</w>\": 27514,\n  \"enti\": 1938,\n  \"ential</w>\": 5194,\n  \"entially</w>\": 37695,\n  \"entic</w>\": 10340,\n  \"entine</w>\": 49212,\n  \"enting</w>\": 20526,\n  \"entire</w>\": 4709,\n  \"entirely</w>\": 13911,\n  \"entirety</w>\": 43242,\n  \"entit\": 15209,\n  \"entities</w>\": 38134,\n  \"entitled</w>\": 18680,\n  \"entity</w>\": 28455,\n  \"ently</w>\": 2922,\n  \"ento\": 21917,\n  \"ento</w>\": 8762,\n  \"entom\": 31676,\n  \"entourage</w>\": 47893,\n  \"entr\": 7129,\n  \"entrance</w>\": 9129,\n  \"entrata</w>\": 27304,\n  \"entre\": 34188,\n  \"entre</w>\": 19600,\n  \"entren\": 46959,\n  \"entrepre\": 4583,\n  \"entreprene\": 4789,\n  \"entrepreneu\": 26784,\n  \"entrepreneur\": 12119,\n  \"entrepreneur</w>\": 8033,\n  \"entrepreneurial</w>\": 28261,\n  \"entrepreneurs</w>\": 11054,\n  \"entrepreneurship</w>\": 12858,\n  \"entries</w>\": 13766,\n  \"entry</w>\": 5362,\n  \"ents</w>\": 870,\n  \"entu\": 6650,\n  \"enty</w>\": 5657,\n  \"enu\": 23430,\n  \"env\": 32280,\n  \"env</w>\": 39207,\n  \"envel\": 20052,\n  \"envelope</w>\": 27358,\n  \"envir\": 3512,\n  \"enviro</w>\": 46200,\n  \"environ\": 3599,\n  \"environment\": 33039,\n  \"environment</w>\": 5501,\n  \"environmental</w>\": 7831,\n  \"environmentally</w>\": 32855,\n  \"environments</w>\": 19577,\n  \"envision</w>\": 49031,\n  \"envoy</w>\": 29263,\n  \"envy</w>\": 21017,\n  \"eny</w>\": 20482,\n  \"enya</w>\": 36509,\n  \"enyc</w>\": 39520,\n  \"enz\": 25805,\n  \"enz</w>\": 31873,\n  \"enza</w>\": 25239,\n  \"enzie</w>\": 14839,\n  \"enzo</w>\": 31543,\n  \"enzyme</w>\": 40348,\n  \"enzymes</w>\": 47465,\n  \"eo\": 16054,\n  \"eo</w>\": 11712,\n  \"eoin</w>\": 48634,\n  \"eon</w>\": 31915,\n  \"eos</w>\": 17805,\n  \"ep\": 1178,\n  \"ep</w>\": 1117,\n  \"epa</w>\": 15866,\n  \"epage</w>\": 26931,\n  \"epaper</w>\": 33584,\n  \"epcot</w>\": 32524,\n  \"eper</w>\": 43071,\n  \"eph\": 45752,\n  \"eph</w>\": 41240,\n  \"ephe\": 25129,\n  \"epi\": 7219,\n  \"epi</w>\": 34641,\n  \"epic\": 12683,\n  \"epic</w>\": 4991,\n  \"epiconetsy</w>\": 49222,\n  \"epide\": 17382,\n  \"epidemi\": 44447,\n  \"epidemic</w>\": 21522,\n  \"epile\": 23150,\n  \"epilepsy</w>\": 29547,\n  \"epilo\": 31291,\n  \"epilots</w>\": 39766,\n  \"epiph\": 40561,\n  \"epiphany</w>\": 43251,\n  \"epis\": 24616,\n  \"episcop\": 28037,\n  \"episcopal</w>\": 31221,\n  \"episo\": 2708,\n  \"episode</w>\": 2965,\n  \"episodes</w>\": 11837,\n  \"epit\": 21967,\n  \"epitome</w>\": 35114,\n  \"epl</w>\": 25950,\n  \"epo\": 25810,\n  \"epp\": 39054,\n  \"epp</w>\": 39593,\n  \"eps</w>\": 4090,\n  \"epsilon</w>\": 40019,\n  \"epsom</w>\": 40364,\n  \"epstein</w>\": 34688,\n  \"eq\": 39331,\n  \"eq</w>\": 33692,\n  \"equ\": 2563,\n  \"equal\": 17373,\n  \"equal</w>\": 10433,\n  \"equality\": 48981,\n  \"equality</w>\": 9578,\n  \"equally</w>\": 18172,\n  \"equals</w>\": 30278,\n  \"equation</w>\": 28591,\n  \"equations</w>\": 38225,\n  \"eque\": 19518,\n  \"equestrian</w>\": 24728,\n  \"equi\": 8752,\n  \"equili\": 43262,\n  \"equine</w>\": 33801,\n  \"equinox</w>\": 32652,\n  \"equip\": 6526,\n  \"equip</w>\": 36979,\n  \"equipment</w>\": 6893,\n  \"equipo</w>\": 45688,\n  \"equipped</w>\": 18331,\n  \"equitable</w>\": 44717,\n  \"equities</w>\": 44015,\n  \"equity</w>\": 11293,\n  \"equivalent</w>\": 19489,\n  \"er\": 517,\n  \"er</w>\": 528,\n  \"era\": 30548,\n  \"era</w>\": 2072,\n  \"erable</w>\": 18801,\n  \"erad\": 24194,\n  \"eradic\": 36346,\n  \"eradicate</w>\": 46164,\n  \"eral</w>\": 6222,\n  \"eran</w>\": 13069,\n  \"eras\": 19325,\n  \"eras</w>\": 39090,\n  \"erase</w>\": 33893,\n  \"erased</w>\": 46762,\n  \"erasmus</w>\": 38935,\n  \"erc\": 5360,\n  \"erc</w>\": 32382,\n  \"erd</w>\": 25645,\n  \"erdo\": 21112,\n  \"erdogan</w>\": 24453,\n  \"ere\": 17907,\n  \"ere</w>\": 642,\n  \"erec\": 21526,\n  \"erected</w>\": 39365,\n  \"ered</w>\": 9097,\n  \"eres</w>\": 15751,\n  \"ergon\": 38120,\n  \"ergy</w>\": 19550,\n  \"eri\": 2769,\n  \"eri</w>\": 9509,\n  \"eria</w>\": 11634,\n  \"erial</w>\": 5409,\n  \"eric\": 1206,\n  \"eric</w>\": 5396,\n  \"erica</w>\": 13208,\n  \"erich</w>\": 26070,\n  \"erick\": 27434,\n  \"erick</w>\": 36959,\n  \"erickson</w>\": 45286,\n  \"ericsson</w>\": 39645,\n  \"eridge</w>\": 45408,\n  \"erie</w>\": 7005,\n  \"eries</w>\": 9099,\n  \"erik\": 22805,\n  \"erik</w>\": 16532,\n  \"erika</w>\": 25531,\n  \"erin\": 17532,\n  \"erin</w>\": 11333,\n  \"erina</w>\": 25176,\n  \"ering</w>\": 1785,\n  \"erit\": 23335,\n  \"eritrea</w>\": 30738,\n  \"erjee</w>\": 41665,\n  \"erly</w>\": 14380,\n  \"erm</w>\": 31649,\n  \"erman</w>\": 17990,\n  \"ern\": 6992,\n  \"ern</w>\": 12140,\n  \"ernal</w>\": 20868,\n  \"ernan</w>\": 34617,\n  \"ernation</w>\": 48796,\n  \"erne\": 33930,\n  \"ernest</w>\": 23006,\n  \"ernie</w>\": 23636,\n  \"ernity</w>\": 14653,\n  \"erno</w>\": 40812,\n  \"ernst</w>\": 30099,\n  \"ero\": 3211,\n  \"ero</w>\": 3732,\n  \"erock</w>\": 38206,\n  \"eron</w>\": 32837,\n  \"eroom</w>\": 46690,\n  \"eros</w>\": 30597,\n  \"erose</w>\": 48657,\n  \"erosion</w>\": 30174,\n  \"erotic</w>\": 30708,\n  \"erotica</w>\": 39126,\n  \"erous</w>\": 6384,\n  \"eroy</w>\": 36461,\n  \"erp</w>\": 28268,\n  \"err\": 22479,\n  \"err</w>\": 25346,\n  \"erra</w>\": 48446,\n  \"errands</w>\": 45485,\n  \"error</w>\": 12097,\n  \"errors</w>\": 21195,\n  \"erry\": 45236,\n  \"erry</w>\": 24124,\n  \"ers\": 4840,\n  \"ers</w>\": 612,\n  \"ersfc</w>\": 37925,\n  \"ership</w>\": 2884,\n  \"erson\": 25780,\n  \"erson</w>\": 6811,\n  \"ert\": 40325,\n  \"ert</w>\": 3112,\n  \"erta</w>\": 32007,\n  \"erton</w>\": 26245,\n  \"erts</w>\": 12921,\n  \"eru\": 36068,\n  \"erun</w>\": 41642,\n  \"erup\": 17093,\n  \"erupted</w>\": 48862,\n  \"eruption</w>\": 33705,\n  \"erville</w>\": 37557,\n  \"erwin</w>\": 43724,\n  \"ery\": 12467,\n  \"ery</w>\": 1692,\n  \"erz</w>\": 38711,\n  \"es\": 957,\n  \"es</w>\": 542,\n  \"esa\": 46834,\n  \"esa</w>\": 12489,\n  \"esanders</w>\": 23099,\n  \"esc\": 3330,\n  \"esc</w>\": 28420,\n  \"escal\": 15902,\n  \"escap\": 11499,\n  \"escape\": 32484,\n  \"escape</w>\": 7568,\n  \"escaped</w>\": 18707,\n  \"escapes</w>\": 29916,\n  \"escaping</w>\": 21767,\n  \"escar\": 39229,\n  \"escence</w>\": 37972,\n  \"esch\": 46760,\n  \"esch</w>\": 41945,\n  \"esco\": 32482,\n  \"escobar</w>\": 48807,\n  \"escor\": 24360,\n  \"escort</w>\": 24976,\n  \"escorted</w>\": 47667,\n  \"escorts</w>\": 48574,\n  \"escu\": 36517,\n  \"esday</w>\": 19553,\n  \"ese\": 18766,\n  \"ese</w>\": 2260,\n  \"esg</w>\": 41674,\n  \"esh\": 17119,\n  \"esh</w>\": 13407,\n  \"esha</w>\": 28799,\n  \"eshop\": 38451,\n  \"eshop</w>\": 45570,\n  \"eshopsuk</w>\": 39349,\n  \"esi</w>\": 30064,\n  \"esis</w>\": 12414,\n  \"esk\": 19359,\n  \"esl</w>\": 26201,\n  \"eso\": 29890,\n  \"eso</w>\": 28921,\n  \"esof\": 17047,\n  \"eson\": 46845,\n  \"esp\": 3849,\n  \"esp</w>\": 13870,\n  \"espa\": 37301,\n  \"espan\": 41731,\n  \"espaÃ±a</w>\": 41118,\n  \"especially</w>\": 4878,\n  \"esper\": 29216,\n  \"espino\": 46633,\n  \"espionage</w>\": 43498,\n  \"espn\": 22917,\n  \"espn</w>\": 7540,\n  \"espnu</w>\": 47747,\n  \"espo\": 34381,\n  \"esports</w>\": 16035,\n  \"espresso</w>\": 17098,\n  \"esq</w>\": 47352,\n  \"esqu\": 34616,\n  \"esque</w>\": 25877,\n  \"ess\": 3118,\n  \"ess</w>\": 9764,\n  \"essa</w>\": 39125,\n  \"essay</w>\": 12751,\n  \"essays</w>\": 27328,\n  \"esse</w>\": 22305,\n  \"essen</w>\": 30489,\n  \"essence</w>\": 17830,\n  \"essenti\": 11163,\n  \"essential\": 47264,\n  \"essential</w>\": 6895,\n  \"essentially</w>\": 30042,\n  \"essentials</w>\": 16191,\n  \"essex\": 30563,\n  \"essex</w>\": 11623,\n  \"est\": 2291,\n  \"est</w>\": 1509,\n  \"esta\": 41449,\n  \"esta</w>\": 10135,\n  \"estab\": 7010,\n  \"establi\": 8412,\n  \"establish</w>\": 19709,\n  \"established</w>\": 13143,\n  \"establishing</w>\": 29420,\n  \"establishment</w>\": 20213,\n  \"estas</w>\": 39072,\n  \"estate\": 47130,\n  \"estate</w>\": 6159,\n  \"estates</w>\": 26054,\n  \"este\": 12968,\n  \"este</w>\": 20579,\n  \"esteban</w>\": 48381,\n  \"esteem</w>\": 31541,\n  \"esteemed</w>\": 36293,\n  \"ester</w>\": 45808,\n  \"esthe\": 18468,\n  \"esther</w>\": 24393,\n  \"estim\": 8904,\n  \"estimate</w>\": 21883,\n  \"estimated</w>\": 16665,\n  \"estimates</w>\": 21957,\n  \"esto\": 31589,\n  \"esto</w>\": 23958,\n  \"estonia</w>\": 26260,\n  \"estonian</w>\": 48895,\n  \"estrada</w>\": 48116,\n  \"estre\": 31271,\n  \"estu\": 26272,\n  \"estuary</w>\": 35269,\n  \"esur\": 35758,\n  \"esville</w>\": 39187,\n  \"esy\": 46268,\n  \"et\": 1169,\n  \"et</w>\": 875,\n  \"eta</w>\": 8761,\n  \"etal</w>\": 25221,\n  \"etary</w>\": 13074,\n  \"etc</w>\": 5353,\n  \"etched</w>\": 40411,\n  \"etching</w>\": 41375,\n  \"ete\": 38820,\n  \"ete</w>\": 40245,\n  \"eter\": 8587,\n  \"eter</w>\": 17007,\n  \"eternal</w>\": 13732,\n  \"eternally</w>\": 48486,\n  \"eternity</w>\": 23832,\n  \"eters</w>\": 18392,\n  \"etf</w>\": 31661,\n  \"eth\": 4819,\n  \"eth</w>\": 5927,\n  \"ethan\": 24245,\n  \"ethan</w>\": 15958,\n  \"ethanol</w>\": 38166,\n  \"ethe\": 21312,\n  \"ethel</w>\": 45921,\n  \"ether\": 23349,\n  \"ethere\": 18705,\n  \"ethereal</w>\": 40925,\n  \"ethereum</w>\": 19612,\n  \"ethernet</w>\": 35026,\n  \"ethi\": 10327,\n  \"ethic</w>\": 39104,\n  \"ethical\": 47041,\n  \"ethical</w>\": 17679,\n  \"ethics</w>\": 13355,\n  \"ethiop\": 10897,\n  \"ethiopia</w>\": 13920,\n  \"ethiopian</w>\": 24507,\n  \"ethnic\": 30522,\n  \"ethnic</w>\": 16344,\n  \"ethnicity</w>\": 46787,\n  \"ethno\": 34225,\n  \"ethos</w>\": 48768,\n  \"eti\": 11188,\n  \"eti</w>\": 30394,\n  \"etienne</w>\": 46118,\n  \"eties</w>\": 15137,\n  \"etihad</w>\": 38489,\n  \"etiquette</w>\": 37957,\n  \"etis\": 38216,\n  \"etisation</w>\": 39733,\n  \"etna</w>\": 41940,\n  \"eto\": 27829,\n  \"eto</w>\": 33837,\n  \"eton</w>\": 44339,\n  \"etour</w>\": 41462,\n  \"etr\": 23012,\n  \"etres</w>\": 42838,\n  \"ets</w>\": 3442,\n  \"etsy\": 13237,\n  \"etsy</w>\": 6282,\n  \"etsym\": 22902,\n  \"etsymntt</w>\": 25416,\n  \"etsyshop</w>\": 44643,\n  \"ett\": 32729,\n  \"ett</w>\": 24998,\n  \"etta</w>\": 30466,\n  \"ette\": 19981,\n  \"ette</w>\": 5212,\n  \"ettes</w>\": 35326,\n  \"etto</w>\": 44219,\n  \"etty</w>\": 40759,\n  \"etu\": 36593,\n  \"etv\": 49155,\n  \"etv</w>\": 20325,\n  \"etwork</w>\": 20585,\n  \"ety\": 25920,\n  \"ety</w>\": 2746,\n  \"etz\": 36181,\n  \"etz</w>\": 25301,\n  \"eu\": 1506,\n  \"eu</w>\": 3238,\n  \"eucalyp\": 41068,\n  \"eucalyptus</w>\": 42351,\n  \"euchar\": 38362,\n  \"eugen\": 30678,\n  \"eugene</w>\": 17760,\n  \"eul\": 46749,\n  \"eun\": 16431,\n  \"eun</w>\": 26219,\n  \"eunhyuk</w>\": 47526,\n  \"eup\": 44435,\n  \"euph\": 21386,\n  \"euphoria</w>\": 41051,\n  \"eur\": 18343,\n  \"eur</w>\": 12018,\n  \"eura\": 32605,\n  \"eure\": 25311,\n  \"euref</w>\": 48017,\n  \"eureka</w>\": 31686,\n  \"euro\": 2039,\n  \"euro</w>\": 8463,\n  \"euroleague</w>\": 46821,\n  \"europa</w>\": 18290,\n  \"europale\": 42473,\n  \"europaleague</w>\": 44029,\n  \"europarl</w>\": 44922,\n  \"europe\": 4198,\n  \"europe</w>\": 3848,\n  \"european\": 26712,\n  \"european</w>\": 4759,\n  \"europeans</w>\": 37082,\n  \"euros</w>\": 22274,\n  \"eurovision</w>\": 17593,\n  \"eurozone</w>\": 42555,\n  \"eurusd</w>\": 40895,\n  \"eus</w>\": 44214,\n  \"euston</w>\": 46905,\n  \"euthan\": 43280,\n  \"euve</w>\": 40652,\n  \"eux</w>\": 25019,\n  \"ev\": 776,\n  \"ev</w>\": 10133,\n  \"eva</w>\": 6845,\n  \"evacu\": 13187,\n  \"evacuated</w>\": 26806,\n  \"evacuation</w>\": 27353,\n  \"eval\": 25139,\n  \"eval</w>\": 9703,\n  \"evalu\": 10314,\n  \"evaluate</w>\": 27174,\n  \"evaluating</w>\": 34541,\n  \"evaluation</w>\": 17640,\n  \"evan\": 12821,\n  \"evan</w>\": 12847,\n  \"evangel\": 20518,\n  \"evangeli\": 21372,\n  \"evangelical</w>\": 36151,\n  \"evangelist</w>\": 42275,\n  \"evankirstel</w>\": 46581,\n  \"evans</w>\": 8836,\n  \"evansville</w>\": 44782,\n  \"evapor\": 33352,\n  \"evasion</w>\": 48795,\n  \"eve\": 5732,\n  \"eve</w>\": 1866,\n  \"eved</w>\": 19820,\n  \"evel\": 39315,\n  \"evelyn</w>\": 26687,\n  \"evement</w>\": 8210,\n  \"even\": 6359,\n  \"even</w>\": 1427,\n  \"evening\": 34487,\n  \"evening</w>\": 2285,\n  \"evenings</w>\": 19994,\n  \"evenly</w>\": 45974,\n  \"event\": 10612,\n  \"event</w>\": 1655,\n  \"eventful</w>\": 45628,\n  \"evento</w>\": 38155,\n  \"eventprofs</w>\": 24980,\n  \"events</w>\": 3667,\n  \"eventu\": 14055,\n  \"eventual</w>\": 45321,\n  \"eventually</w>\": 14397,\n  \"ever\": 888,\n  \"ever</w>\": 1247,\n  \"everest</w>\": 21722,\n  \"everett</w>\": 25456,\n  \"everglades</w>\": 46294,\n  \"evergreen</w>\": 23852,\n  \"everlasting</w>\": 32849,\n  \"evers</w>\": 31914,\n  \"everton</w>\": 13315,\n  \"every\": 1091,\n  \"every</w>\": 1505,\n  \"everybody</w>\": 5901,\n  \"everyday\": 25049,\n  \"everyday</w>\": 5160,\n  \"everyone</w>\": 1584,\n  \"everything\": 36376,\n  \"everything</w>\": 2410,\n  \"everytime</w>\": 16911,\n  \"everywhere</w>\": 6364,\n  \"eves</w>\": 7323,\n  \"evi\": 5348,\n  \"evi</w>\": 36989,\n  \"evic\": 21336,\n  \"eviction</w>\": 37111,\n  \"eviden\": 46220,\n  \"evidence</w>\": 6439,\n  \"evident</w>\": 34529,\n  \"evie</w>\": 47195,\n  \"evil\": 23218,\n  \"evil</w>\": 6006,\n  \"eville</w>\": 16143,\n  \"eving</w>\": 24729,\n  \"evo\": 17962,\n  \"evo</w>\": 13169,\n  \"evoc\": 43133,\n  \"evol\": 5350,\n  \"evolu\": 7725,\n  \"evolution</w>\": 8902,\n  \"evolutionary</w>\": 30629,\n  \"evolve</w>\": 23406,\n  \"evolved</w>\": 22613,\n  \"evolving</w>\": 23675,\n  \"evp</w>\": 46154,\n  \"evs</w>\": 33576,\n  \"ew\": 11942,\n  \"ew</w>\": 15428,\n  \"ewan</w>\": 40247,\n  \"ewe</w>\": 48438,\n  \"ewing</w>\": 38873,\n  \"ews</w>\": 9878,\n  \"ex\": 659,\n  \"ex</w>\": 4118,\n  \"exac\": 5460,\n  \"exact</w>\": 12651,\n  \"exactly</w>\": 5840,\n  \"exagger\": 29766,\n  \"exal\": 49324,\n  \"exam\": 4428,\n  \"exam</w>\": 8785,\n  \"examination</w>\": 20970,\n  \"examine</w>\": 25728,\n  \"examined</w>\": 44004,\n  \"examiner</w>\": 29149,\n  \"examines</w>\": 28160,\n  \"examining</w>\": 30616,\n  \"example</w>\": 6228,\n  \"examples</w>\": 14790,\n  \"exams</w>\": 14028,\n  \"exas</w>\": 47536,\n  \"exc\": 1302,\n  \"excav\": 20733,\n  \"excavation</w>\": 45909,\n  \"exce\": 10999,\n  \"exceed</w>\": 32521,\n  \"exceeded</w>\": 36221,\n  \"exceeding</w>\": 47213,\n  \"exceeds</w>\": 49353,\n  \"excel\": 28351,\n  \"excel</w>\": 18754,\n  \"excell\": 3298,\n  \"excellence</w>\": 8171,\n  \"excellency</w>\": 36503,\n  \"excellent</w>\": 4239,\n  \"excelsi\": 47315,\n  \"excep\": 8882,\n  \"except</w>\": 8541,\n  \"exception</w>\": 25018,\n  \"exceptional</w>\": 13425,\n  \"exceptionally</w>\": 29306,\n  \"excer\": 17737,\n  \"excerpt</w>\": 20586,\n  \"excess</w>\": 22491,\n  \"excessive</w>\": 21332,\n  \"exchange</w>\": 6616,\n  \"exchanged</w>\": 48919,\n  \"exchanges</w>\": 29730,\n  \"exchanging</w>\": 47760,\n  \"excit\": 10510,\n  \"excite</w>\": 47711,\n  \"excited</w>\": 1889,\n  \"excitement</w>\": 11407,\n  \"exciting</w>\": 4300,\n  \"exclu\": 3114,\n  \"exclude</w>\": 49235,\n  \"excluded</w>\": 46216,\n  \"excluding</w>\": 44326,\n  \"exclusion</w>\": 40219,\n  \"exclusive</w>\": 3747,\n  \"exclusively</w>\": 13565,\n  \"exclusives</w>\": 47149,\n  \"excu\": 7324,\n  \"excur\": 27533,\n  \"excursion</w>\": 34869,\n  \"excuse</w>\": 9266,\n  \"excuses</w>\": 19388,\n  \"exe\": 3554,\n  \"exe</w>\": 48027,\n  \"exec</w>\": 15052,\n  \"execs</w>\": 35728,\n  \"execu\": 4360,\n  \"execute</w>\": 36405,\n  \"executed</w>\": 20432,\n  \"execution</w>\": 18085,\n  \"executive</w>\": 5944,\n  \"executives</w>\": 24357,\n  \"exem\": 19753,\n  \"exemp\": 28602,\n  \"exempl\": 36371,\n  \"exemplary</w>\": 39123,\n  \"exempli\": 41934,\n  \"exempt</w>\": 44278,\n  \"exemption</w>\": 47481,\n  \"exer\": 40295,\n  \"exerc\": 5932,\n  \"exercise</w>\": 7016,\n  \"exercises</w>\": 19669,\n  \"exercising</w>\": 39036,\n  \"exeter\": 32137,\n  \"exeter</w>\": 18837,\n  \"exfoli\": 38823,\n  \"exhau\": 11154,\n  \"exhaust</w>\": 21812,\n  \"exhausted</w>\": 21741,\n  \"exhausting</w>\": 40035,\n  \"exhaustion</w>\": 49221,\n  \"exhi\": 3022,\n  \"exhib\": 3783,\n  \"exhibit\": 24992,\n  \"exhibit</w>\": 8209,\n  \"exhibiting</w>\": 23889,\n  \"exhibition</w>\": 4219,\n  \"exhibitions</w>\": 28311,\n  \"exhibitor</w>\": 44192,\n  \"exhibitors</w>\": 38542,\n  \"exhibits</w>\": 30093,\n  \"exhilar\": 40262,\n  \"exhilarating</w>\": 49289,\n  \"exi\": 5297,\n  \"exico</w>\": 38712,\n  \"exile</w>\": 28566,\n  \"exist\": 10899,\n  \"exist</w>\": 9645,\n  \"existed</w>\": 23198,\n  \"existence</w>\": 13832,\n  \"existent</w>\": 43541,\n  \"existential</w>\": 38752,\n  \"existing</w>\": 12886,\n  \"exists</w>\": 14608,\n  \"exit</w>\": 9374,\n  \"exited</w>\": 37581,\n  \"exiting</w>\": 39577,\n  \"exits</w>\": 34943,\n  \"exmoor</w>\": 48260,\n  \"exo\": 15600,\n  \"exo</w>\": 5842,\n  \"exodus</w>\": 30098,\n  \"exol</w>\": 42856,\n  \"exop\": 35288,\n  \"exoplan\": 37980,\n  \"exor\": 24506,\n  \"exorcist</w>\": 46309,\n  \"exotic</w>\": 15639,\n  \"exp\": 9923,\n  \"exp</w>\": 19066,\n  \"expan\": 7512,\n  \"expand\": 10382,\n  \"expand</w>\": 13141,\n  \"expanded</w>\": 18390,\n  \"expanding</w>\": 15755,\n  \"expands</w>\": 22223,\n  \"expanse</w>\": 46886,\n  \"expansion</w>\": 10138,\n  \"expansive</w>\": 49261,\n  \"expat</w>\": 43900,\n  \"expe\": 2560,\n  \"expect\": 9802,\n  \"expect</w>\": 5716,\n  \"expectation</w>\": 34273,\n  \"expectations</w>\": 12529,\n  \"expected</w>\": 5573,\n  \"expecting</w>\": 12525,\n  \"expects</w>\": 24536,\n  \"expedition</w>\": 16761,\n  \"expeditions</w>\": 49327,\n  \"expelled</w>\": 48834,\n  \"expen\": 7216,\n  \"expend\": 29302,\n  \"expenditure</w>\": 47044,\n  \"expense</w>\": 28473,\n  \"expenses</w>\": 21797,\n  \"expensive</w>\": 9649,\n  \"exper\": 1533,\n  \"experi\": 4723,\n  \"experience\": 31867,\n  \"experience</w>\": 2415,\n  \"experienced</w>\": 10417,\n  \"experiences</w>\": 8233,\n  \"experiencing</w>\": 16643,\n  \"experiential</w>\": 44952,\n  \"experim\": 6697,\n  \"experiment</w>\": 13079,\n  \"experimental</w>\": 16539,\n  \"experimenting</w>\": 28263,\n  \"experiments</w>\": 21077,\n  \"expert</w>\": 6284,\n  \"expertise</w>\": 16555,\n  \"experts</w>\": 6960,\n  \"expi\": 26850,\n  \"expir\": 35077,\n  \"expire</w>\": 49315,\n  \"expired</w>\": 30200,\n  \"expires</w>\": 34739,\n  \"expl\": 3261,\n  \"expla\": 3517,\n  \"explain\": 48918,\n  \"explain</w>\": 7304,\n  \"explained</w>\": 14229,\n  \"explaining</w>\": 13136,\n  \"explains</w>\": 6655,\n  \"explan\": 13294,\n  \"explanation</w>\": 16577,\n  \"explanations</w>\": 34383,\n  \"explic\": 21011,\n  \"explicit</w>\": 33228,\n  \"explo\": 3586,\n  \"explode</w>\": 31262,\n  \"exploded</w>\": 28947,\n  \"explodes</w>\": 38119,\n  \"exploding</w>\": 34683,\n  \"exploit</w>\": 36953,\n  \"exploited</w>\": 48554,\n  \"explor\": 11958,\n  \"exploration</w>\": 14043,\n  \"explore\": 10405,\n  \"explore</w>\": 5147,\n  \"explorebc</w>\": 38754,\n  \"explorecanada</w>\": 36600,\n  \"explored</w>\": 25016,\n  \"explorer</w>\": 15776,\n  \"explorers</w>\": 28491,\n  \"explores</w>\": 13996,\n  \"exploring</w>\": 7584,\n  \"explosion</w>\": 13785,\n  \"explosions</w>\": 38646,\n  \"explosive</w>\": 18888,\n  \"explosives</w>\": 44705,\n  \"expo\": 7820,\n  \"expo</w>\": 6344,\n  \"expon\": 27905,\n  \"export</w>\": 14444,\n  \"exporting</w>\": 47433,\n  \"exports</w>\": 20088,\n  \"expose</w>\": 23181,\n  \"exposed</w>\": 12180,\n  \"exposes</w>\": 33575,\n  \"exposing</w>\": 28362,\n  \"exposition</w>\": 36943,\n  \"exposure</w>\": 11903,\n  \"expre\": 6085,\n  \"express\": 18553,\n  \"express</w>\": 5642,\n  \"expressed</w>\": 20777,\n  \"expresses</w>\": 31931,\n  \"expressing</w>\": 30207,\n  \"expression</w>\": 11357,\n  \"expressions</w>\": 20314,\n  \"expressive</w>\": 42060,\n  \"expressway</w>\": 31658,\n  \"exquis\": 16575,\n  \"exquisite</w>\": 17958,\n  \"ext\": 5711,\n  \"ext</w>\": 20072,\n  \"exten\": 5555,\n  \"extend</w>\": 14492,\n  \"extended</w>\": 9614,\n  \"extending</w>\": 25652,\n  \"extends</w>\": 20688,\n  \"extension</w>\": 10275,\n  \"extensions</w>\": 24525,\n  \"extensive</w>\": 16870,\n  \"extensively</w>\": 47365,\n  \"extent</w>\": 24913,\n  \"exter\": 9797,\n  \"exterior</w>\": 19352,\n  \"extermin\": 41671,\n  \"external</w>\": 15028,\n  \"extin\": 13553,\n  \"extinct</w>\": 24488,\n  \"extinction</w>\": 21186,\n  \"extingui\": 38567,\n  \"extor\": 35620,\n  \"extr\": 29082,\n  \"extra\": 6416,\n  \"extra</w>\": 4231,\n  \"extrac\": 18550,\n  \"extract</w>\": 18962,\n  \"extraction</w>\": 28789,\n  \"extracts</w>\": 45576,\n  \"extraordin\": 23628,\n  \"extraordinaire</w>\": 30909,\n  \"extraordinary</w>\": 10982,\n  \"extras</w>\": 29817,\n  \"extravag\": 22299,\n  \"extravaganza</w>\": 29461,\n  \"extre\": 3978,\n  \"extreme\": 38357,\n  \"extreme</w>\": 8331,\n  \"extremely</w>\": 6519,\n  \"extremism</w>\": 31493,\n  \"extremist</w>\": 36383,\n  \"extremists</w>\": 41425,\n  \"extru\": 43010,\n  \"ey\": 1541,\n  \"ey</w>\": 1477,\n  \"eyang</w>\": 28915,\n  \"eye\": 5034,\n  \"eye</w>\": 3272,\n  \"eyebrow</w>\": 34250,\n  \"eyebrows</w>\": 19923,\n  \"eyed</w>\": 15512,\n  \"eyeing</w>\": 34916,\n  \"eyel\": 17075,\n  \"eyelashes</w>\": 42074,\n  \"eyeliner</w>\": 33354,\n  \"eyeon</w>\": 25126,\n  \"eyes</w>\": 3095,\n  \"eyeshadow</w>\": 35213,\n  \"eyewear</w>\": 30165,\n  \"eyewitness</w>\": 36258,\n  \"eyou\": 31996,\n  \"eyour\": 40229,\n  \"eyre</w>\": 44115,\n  \"ez\": 10082,\n  \"ez</w>\": 8387,\n  \"eze\": 25993,\n  \"eze</w>\": 27229,\n  \"ezekiel</w>\": 41428,\n  \"ezra</w>\": 27552,\n  \"f\": 69,\n  \"f</w>\": 325,\n  \"fa\": 778,\n  \"fa</w>\": 2800,\n  \"faa</w>\": 27577,\n  \"fab\": 2833,\n  \"fab</w>\": 5492,\n  \"faber\": 43461,\n  \"faber</w>\": 42488,\n  \"fabi\": 29425,\n  \"fabian</w>\": 34539,\n  \"fabio</w>\": 31666,\n  \"fabric\": 16217,\n  \"fabric</w>\": 10033,\n  \"fabricated</w>\": 40851,\n  \"fabrication</w>\": 33476,\n  \"fabrics</w>\": 23159,\n  \"fabulous</w>\": 5189,\n  \"fac\": 1053,\n  \"fac</w>\": 35438,\n  \"facade</w>\": 29217,\n  \"face\": 2545,\n  \"face</w>\": 1710,\n  \"facebook\": 36156,\n  \"facebook</w>\": 2943,\n  \"faced</w>\": 10941,\n  \"faceli\": 32023,\n  \"facelift</w>\": 36380,\n  \"faceoff</w>\": 42710,\n  \"facep\": 45285,\n  \"faces</w>\": 4905,\n  \"faceted</w>\": 43435,\n  \"facetime</w>\": 24076,\n  \"facial</w>\": 11909,\n  \"facil\": 39973,\n  \"facilit\": 13567,\n  \"facilitate</w>\": 26733,\n  \"facilitated</w>\": 43853,\n  \"facilitating</w>\": 34796,\n  \"facilities</w>\": 10388,\n  \"facility</w>\": 8165,\n  \"facing</w>\": 7619,\n  \"fact\": 17189,\n  \"fact</w>\": 3598,\n  \"factfriday</w>\": 27953,\n  \"faction</w>\": 14629,\n  \"factor\": 21082,\n  \"factor</w>\": 8124,\n  \"factories</w>\": 36492,\n  \"factors</w>\": 12733,\n  \"factory\": 42483,\n  \"factory</w>\": 6072,\n  \"facts</w>\": 5085,\n  \"factual</w>\": 45471,\n  \"faculty</w>\": 9504,\n  \"facup</w>\": 25283,\n  \"fad\": 12632,\n  \"fad</w>\": 47669,\n  \"fade</w>\": 20486,\n  \"faded</w>\": 26051,\n  \"fades</w>\": 40441,\n  \"fading</w>\": 32882,\n  \"fadnavis</w>\": 38945,\n  \"faf\": 31052,\n  \"faf</w>\": 43903,\n  \"fag\": 25617,\n  \"fag</w>\": 39305,\n  \"fah\": 25495,\n  \"fah</w>\": 35429,\n  \"fahren\": 45527,\n  \"fai\": 20519,\n  \"fai</w>\": 26384,\n  \"fail\": 7105,\n  \"fail</w>\": 6801,\n  \"failed</w>\": 8314,\n  \"failing</w>\": 15757,\n  \"fails</w>\": 13388,\n  \"failure</w>\": 8732,\n  \"failures</w>\": 25442,\n  \"faint</w>\": 30807,\n  \"fair\": 3031,\n  \"fair</w>\": 2849,\n  \"fairbanks</w>\": 43962,\n  \"faire\": 34745,\n  \"faire</w>\": 20798,\n  \"fairfax</w>\": 29368,\n  \"fairfield</w>\": 29664,\n  \"fairgrounds</w>\": 38325,\n  \"fairi\": 28884,\n  \"fairies</w>\": 33590,\n  \"fairly</w>\": 14961,\n  \"fairmont</w>\": 41547,\n  \"fairness</w>\": 29388,\n  \"fairs</w>\": 8655,\n  \"fairtrade</w>\": 33361,\n  \"fairview</w>\": 43479,\n  \"fairway</w>\": 44022,\n  \"fairy\": 17021,\n  \"fairy</w>\": 10444,\n  \"fairytale</w>\": 28944,\n  \"fais\": 23542,\n  \"faisal</w>\": 35459,\n  \"fait</w>\": 20567,\n  \"faith\": 10653,\n  \"faith</w>\": 5080,\n  \"faithful</w>\": 15511,\n  \"faiz\": 41775,\n  \"fake\": 18794,\n  \"fake</w>\": 5777,\n  \"faken\": 22853,\n  \"fakenews</w>\": 26943,\n  \"fakespeare</w>\": 49095,\n  \"fal\": 2778,\n  \"fal</w>\": 40494,\n  \"fala\": 47120,\n  \"falcon\": 22498,\n  \"falcon</w>\": 13571,\n  \"falcons</w>\": 13834,\n  \"falk\": 34648,\n  \"falkirk</w>\": 44080,\n  \"fall\": 6489,\n  \"fall</w>\": 2359,\n  \"fallen</w>\": 8688,\n  \"falling\": 48709,\n  \"falling</w>\": 7293,\n  \"fallon\": 39596,\n  \"fallon</w>\": 21281,\n  \"fallontonight</w>\": 44627,\n  \"fallout\": 49365,\n  \"fallout</w>\": 16009,\n  \"falls</w>\": 4778,\n  \"falmouth</w>\": 38261,\n  \"false\": 38948,\n  \"false</w>\": 9078,\n  \"falsely</w>\": 42321,\n  \"fam\": 1058,\n  \"fam</w>\": 5128,\n  \"fame</w>\": 6573,\n  \"famed</w>\": 23302,\n  \"famer</w>\": 24554,\n  \"famil\": 3395,\n  \"famili\": 8488,\n  \"familia</w>\": 25622,\n  \"familiar</w>\": 10020,\n  \"families</w>\": 4612,\n  \"family\": 8137,\n  \"family</w>\": 1315,\n  \"familyfun</w>\": 46308,\n  \"familytime</w>\": 47236,\n  \"familytravel</w>\": 38222,\n  \"famine</w>\": 35847,\n  \"famous\": 44811,\n  \"famous</w>\": 4096,\n  \"famously</w>\": 44505,\n  \"fan\": 1675,\n  \"fan</w>\": 2261,\n  \"fanart\": 41059,\n  \"fanart</w>\": 7855,\n  \"fanartfriday</w>\": 45346,\n  \"fanatic</w>\": 36643,\n  \"fanatics</w>\": 39610,\n  \"fanbase</w>\": 36921,\n  \"fanboy</w>\": 43369,\n  \"fanc\": 29017,\n  \"fancafe</w>\": 45080,\n  \"fanci\": 35908,\n  \"fanclub</w>\": 31530,\n  \"fancy\": 47622,\n  \"fancy</w>\": 6733,\n  \"fand\": 19684,\n  \"fandom\": 47634,\n  \"fandom</w>\": 11534,\n  \"fanfest</w>\": 42916,\n  \"fanfic</w>\": 47243,\n  \"fang\": 14269,\n  \"fang</w>\": 27428,\n  \"fangirl</w>\": 28813,\n  \"fangirling</w>\": 39463,\n  \"fanning</w>\": 37282,\n  \"fanny</w>\": 30401,\n  \"fans\": 32454,\n  \"fans</w>\": 1840,\n  \"fansign</w>\": 25288,\n  \"fant\": 4467,\n  \"fanta\": 2703,\n  \"fantaken</w>\": 39412,\n  \"fantasia</w>\": 49306,\n  \"fantastic\": 31289,\n  \"fantastic</w>\": 2935,\n  \"fantasy\": 15124,\n  \"fantasy</w>\": 5267,\n  \"fantasyfootball</w>\": 35713,\n  \"fao</w>\": 31155,\n  \"faq</w>\": 28533,\n  \"far\": 1578,\n  \"far</w>\": 2384,\n  \"fara</w>\": 48562,\n  \"farage</w>\": 28340,\n  \"farah</w>\": 31547,\n  \"fare\": 8620,\n  \"fare</w>\": 6461,\n  \"fares</w>\": 27525,\n  \"farewell</w>\": 10734,\n  \"fargo</w>\": 18870,\n  \"fari\": 26197,\n  \"farley</w>\": 43761,\n  \"farm\": 9066,\n  \"farm</w>\": 3985,\n  \"farmer\": 19735,\n  \"farmer</w>\": 10474,\n  \"farmers\": 29752,\n  \"farmers</w>\": 6402,\n  \"farmersmarket</w>\": 41808,\n  \"farmhouse</w>\": 26293,\n  \"farming</w>\": 10399,\n  \"farmington</w>\": 49305,\n  \"farmland</w>\": 45258,\n  \"farms</w>\": 11277,\n  \"farn\": 27527,\n  \"faroo\": 39147,\n  \"farra\": 33657,\n  \"farrakhan</w>\": 46293,\n  \"farrell</w>\": 24234,\n  \"fart</w>\": 34664,\n  \"farther</w>\": 42233,\n  \"fas\": 4830,\n  \"fas</w>\": 42995,\n  \"fasci\": 17191,\n  \"fascin\": 7327,\n  \"fascinated</w>\": 32964,\n  \"fascinating</w>\": 8640,\n  \"fascism</w>\": 28213,\n  \"fascist</w>\": 23870,\n  \"fascists</w>\": 43598,\n  \"fash\": 42682,\n  \"fashi\": 2099,\n  \"fashion\": 6976,\n  \"fashion</w>\": 2444,\n  \"fashionable</w>\": 24597,\n  \"fashionblogger</w>\": 31726,\n  \"fashioned</w>\": 21563,\n  \"fashioni\": 26062,\n  \"fashionista</w>\": 30415,\n  \"fashions</w>\": 37601,\n  \"fashionshow</w>\": 45653,\n  \"fashionweek</w>\": 28684,\n  \"fass\": 42398,\n  \"fast\": 8509,\n  \"fast</w>\": 1953,\n  \"fasten\": 44990,\n  \"faster</w>\": 8835,\n  \"fastest</w>\": 9808,\n  \"fasting</w>\": 24656,\n  \"fat\": 4751,\n  \"fat</w>\": 5484,\n  \"fatal</w>\": 12124,\n  \"fatalities</w>\": 44168,\n  \"fatally</w>\": 34069,\n  \"fate\": 26315,\n  \"fate</w>\": 11734,\n  \"father\": 11607,\n  \"father</w>\": 3224,\n  \"fathers</w>\": 12780,\n  \"fathersday</w>\": 16731,\n  \"fati\": 13430,\n  \"fatigue</w>\": 23747,\n  \"fatima</w>\": 28202,\n  \"fats</w>\": 30151,\n  \"fatt\": 44131,\n  \"fatty</w>\": 22953,\n  \"fau\": 5571,\n  \"fau</w>\": 31381,\n  \"faucet</w>\": 44273,\n  \"faul\": 16230,\n  \"faulkner</w>\": 37840,\n  \"fault</w>\": 13862,\n  \"faults</w>\": 42752,\n  \"faulty</w>\": 47103,\n  \"fauna</w>\": 30808,\n  \"faust</w>\": 44772,\n  \"faux</w>\": 19429,\n  \"fav\": 1355,\n  \"fav</w>\": 5426,\n  \"fave</w>\": 7272,\n  \"faves</w>\": 18003,\n  \"favor\": 1766,\n  \"favor</w>\": 12160,\n  \"favorable</w>\": 35392,\n  \"favored</w>\": 46640,\n  \"favorite\": 35262,\n  \"favorite</w>\": 1916,\n  \"favorited</w>\": 36926,\n  \"favorites</w>\": 10564,\n  \"favors</w>\": 36085,\n  \"favour\": 3111,\n  \"favour</w>\": 20469,\n  \"favourite</w>\": 3342,\n  \"favourites</w>\": 16585,\n  \"favs</w>\": 18879,\n  \"faw\": 21800,\n  \"fawad\": 46425,\n  \"fawn</w>\": 48624,\n  \"fax\": 32535,\n  \"fax</w>\": 9337,\n  \"fay\": 8939,\n  \"fay</w>\": 40074,\n  \"faye</w>\": 30257,\n  \"fayette\": 32043,\n  \"fayette</w>\": 19782,\n  \"fayetteville</w>\": 37771,\n  \"fayre</w>\": 34982,\n  \"faz\": 26238,\n  \"faze</w>\": 44880,\n  \"fb\": 22637,\n  \"fb</w>\": 3307,\n  \"fball</w>\": 29663,\n  \"fbf</w>\": 20004,\n  \"fbi</w>\": 10293,\n  \"fbloggers</w>\": 41389,\n  \"fbs</w>\": 48454,\n  \"fc\": 4278,\n  \"fc</w>\": 1399,\n  \"fca</w>\": 24540,\n  \"fcb\": 26639,\n  \"fcb</w>\": 25045,\n  \"fcbarcelona</w>\": 32174,\n  \"fcbayern</w>\": 35033,\n  \"fcblive</w>\": 44608,\n  \"fcc</w>\": 21240,\n  \"fck\": 40080,\n  \"fck</w>\": 49263,\n  \"fcofficial</w>\": 27805,\n  \"fcs</w>\": 32095,\n  \"fcu</w>\": 47898,\n  \"fd\": 16972,\n  \"fd</w>\": 11525,\n  \"fda</w>\": 17823,\n  \"fdi</w>\": 45579,\n  \"fdn</w>\": 18563,\n  \"fdny</w>\": 41084,\n  \"fdr</w>\": 42298,\n  \"fe\": 623,\n  \"fe</w>\": 873,\n  \"fear\": 8744,\n  \"fear</w>\": 5402,\n  \"feared</w>\": 31154,\n  \"fearless</w>\": 17470,\n  \"fears</w>\": 13867,\n  \"fearthe\": 33449,\n  \"feasi\": 34977,\n  \"feast\": 37963,\n  \"feast</w>\": 9564,\n  \"feat\": 1703,\n  \"feat</w>\": 5611,\n  \"feather\": 24905,\n  \"feather</w>\": 17871,\n  \"feathers</w>\": 21138,\n  \"featherweight</w>\": 44939,\n  \"feature\": 30413,\n  \"feature</w>\": 4527,\n  \"featured</w>\": 4743,\n  \"features</w>\": 4643,\n  \"featuring</w>\": 3706,\n  \"feb</w>\": 4317,\n  \"febru\": 4202,\n  \"february</w>\": 4248,\n  \"fect</w>\": 31293,\n  \"fed\": 22518,\n  \"fed</w>\": 7035,\n  \"feder\": 4737,\n  \"federal</w>\": 6369,\n  \"federation</w>\": 15530,\n  \"federer</w>\": 18246,\n  \"federico</w>\": 40539,\n  \"fedex</w>\": 32603,\n  \"fedora</w>\": 45111,\n  \"feds</w>\": 30593,\n  \"fee\": 28242,\n  \"fee</w>\": 9224,\n  \"feed\": 6662,\n  \"feed</w>\": 5839,\n  \"feedback</w>\": 8683,\n  \"feeder</w>\": 24482,\n  \"feeders</w>\": 44523,\n  \"feeding</w>\": 9879,\n  \"feeds</w>\": 21788,\n  \"feel\": 2408,\n  \"feel</w>\": 2051,\n  \"feelin</w>\": 19903,\n  \"feeling\": 33087,\n  \"feeling</w>\": 3045,\n  \"feelings</w>\": 9452,\n  \"feels</w>\": 4808,\n  \"feelthe\": 22322,\n  \"feelthebern</w>\": 27743,\n  \"fees</w>\": 11765,\n  \"feet</w>\": 4804,\n  \"fei\": 23441,\n  \"fei</w>\": 34217,\n  \"fein\": 46707,\n  \"feinstein</w>\": 41313,\n  \"fel\": 2081,\n  \"fel</w>\": 20304,\n  \"feld\": 45913,\n  \"feld</w>\": 14219,\n  \"feldman</w>\": 41942,\n  \"feli\": 7498,\n  \"felic\": 25845,\n  \"felici\": 23379,\n  \"felicia</w>\": 41139,\n  \"felicidades</w>\": 41648,\n  \"felicity</w>\": 35123,\n  \"feline</w>\": 29471,\n  \"felipe</w>\": 27681,\n  \"felix\": 33455,\n  \"felix</w>\": 16514,\n  \"feliz\": 26104,\n  \"feliz</w>\": 20221,\n  \"fell\": 33540,\n  \"fell</w>\": 6266,\n  \"fella</w>\": 17586,\n  \"fellas</w>\": 18787,\n  \"feller</w>\": 29226,\n  \"fellow\": 12099,\n  \"fellow</w>\": 5242,\n  \"fellows</w>\": 15766,\n  \"fellowship</w>\": 13857,\n  \"felony</w>\": 31068,\n  \"felt</w>\": 5413,\n  \"fem\": 24574,\n  \"fem</w>\": 36615,\n  \"fema</w>\": 41721,\n  \"female\": 22062,\n  \"female</w>\": 3970,\n  \"females</w>\": 21028,\n  \"femi</w>\": 38607,\n  \"femin\": 11423,\n  \"femini\": 11894,\n  \"feminine</w>\": 24911,\n  \"feminism</w>\": 18784,\n  \"feminist</w>\": 14921,\n  \"feminists</w>\": 38809,\n  \"femme</w>\": 31331,\n  \"fen\": 5509,\n  \"fen</w>\": 25024,\n  \"fence</w>\": 12679,\n  \"fences</w>\": 34312,\n  \"fencing</w>\": 23489,\n  \"fender</w>\": 17117,\n  \"fener\": 41208,\n  \"fenerbah\": 46652,\n  \"feng</w>\": 33291,\n  \"fennel</w>\": 28689,\n  \"fent\": 26395,\n  \"fenton</w>\": 47265,\n  \"fenway</w>\": 29206,\n  \"fer\": 1765,\n  \"fer</w>\": 2897,\n  \"fera</w>\": 37705,\n  \"feral</w>\": 29972,\n  \"ferdin\": 25541,\n  \"ferdinand</w>\": 27591,\n  \"fere</w>\": 43144,\n  \"feren\": 35652,\n  \"ference</w>\": 19984,\n  \"ferg</w>\": 44938,\n  \"fergie</w>\": 39119,\n  \"fergu\": 10988,\n  \"fergus</w>\": 42041,\n  \"ferguson</w>\": 11904,\n  \"fermentation</w>\": 45817,\n  \"fermented</w>\": 36886,\n  \"fern\": 10747,\n  \"fern</w>\": 21685,\n  \"fernandes</w>\": 44391,\n  \"fernandez</w>\": 23436,\n  \"fernando</w>\": 17140,\n  \"ferns</w>\": 38277,\n  \"feroci\": 45652,\n  \"ferr\": 7256,\n  \"ferra\": 47911,\n  \"ferrari</w>\": 9606,\n  \"ferre\": 29626,\n  \"ferred</w>\": 10432,\n  \"ferreira</w>\": 48686,\n  \"ferrell</w>\": 41112,\n  \"ferrer</w>\": 38904,\n  \"ferri\": 42008,\n  \"ferries</w>\": 28489,\n  \"ferris</w>\": 27532,\n  \"ferry\": 38936,\n  \"ferry</w>\": 10278,\n  \"fers</w>\": 12378,\n  \"fert\": 14925,\n  \"fert</w>\": 43662,\n  \"fertil\": 41987,\n  \"fertile</w>\": 44837,\n  \"fertili\": 23912,\n  \"fertility</w>\": 23528,\n  \"fertilizer</w>\": 36786,\n  \"fery</w>\": 47448,\n  \"fes</w>\": 32300,\n  \"fest\": 17383,\n  \"fest</w>\": 2590,\n  \"festa</w>\": 42124,\n  \"festi\": 1943,\n  \"festiv\": 19222,\n  \"festival\": 20946,\n  \"festival</w>\": 2240,\n  \"festivals</w>\": 17834,\n  \"festive</w>\": 9533,\n  \"festivities</w>\": 21020,\n  \"fet\": 21409,\n  \"feta</w>\": 31705,\n  \"fetal</w>\": 42031,\n  \"fetch</w>\": 30271,\n  \"fete</w>\": 34629,\n  \"fett</w>\": 37979,\n  \"fetus</w>\": 26768,\n  \"feu\": 24912,\n  \"feu</w>\": 32990,\n  \"feud</w>\": 27365,\n  \"fever\": 40896,\n  \"fever</w>\": 9989,\n  \"fevre</w>\": 43861,\n  \"few</w>\": 1939,\n  \"fewer</w>\": 19128,\n  \"fex\": 41584,\n  \"fex</w>\": 26392,\n  \"fey\": 39069,\n  \"fey</w>\": 23298,\n  \"fez</w>\": 43081,\n  \"ff\": 1021,\n  \"ff</w>\": 1304,\n  \"ffa</w>\": 15355,\n  \"ffame</w>\": 42873,\n  \"ffc</w>\": 19832,\n  \"ffe\": 1138,\n  \"ffe</w>\": 8631,\n  \"ffect</w>\": 29151,\n  \"ffed</w>\": 8448,\n  \"ffee</w>\": 26377,\n  \"ffel</w>\": 22656,\n  \"ffen</w>\": 46537,\n  \"ffer\": 27369,\n  \"ffer</w>\": 11636,\n  \"ffers</w>\": 32163,\n  \"fferty</w>\": 44771,\n  \"ffes</w>\": 46441,\n  \"ffey</w>\": 30138,\n  \"fff</w>\": 28106,\n  \"ffi\": 19961,\n  \"ffic\": 4762,\n  \"ffice</w>\": 26044,\n  \"ffici\": 3639,\n  \"fficial\": 39818,\n  \"fficial</w>\": 6463,\n  \"fficiency</w>\": 27800,\n  \"fficient</w>\": 20424,\n  \"ffin\": 12779,\n  \"ffin</w>\": 7367,\n  \"ffing</w>\": 16592,\n  \"ffins</w>\": 17898,\n  \"ffl</w>\": 39490,\n  \"ffle</w>\": 7749,\n  \"ffler</w>\": 39819,\n  \"ffles</w>\": 19344,\n  \"ffman</w>\": 15823,\n  \"ffo</w>\": 42264,\n  \"ffs</w>\": 4424,\n  \"ffxiv</w>\": 26569,\n  \"ffxv</w>\": 46786,\n  \"ffy\": 26404,\n  \"ffy</w>\": 7795,\n  \"fg\": 45977,\n  \"fg</w>\": 6823,\n  \"fgm</w>\": 32178,\n  \"fgo</w>\": 46113,\n  \"fh\": 21649,\n  \"fh</w>\": 21010,\n  \"fhs</w>\": 45094,\n  \"fi\": 701,\n  \"fi</w>\": 3589,\n  \"fia</w>\": 8827,\n  \"fiable</w>\": 34373,\n  \"fianc\": 27752,\n  \"fiance</w>\": 44114,\n  \"fiancÃ©</w>\": 34039,\n  \"fiasco</w>\": 40944,\n  \"fiat</w>\": 16740,\n  \"fiawec</w>\": 39485,\n  \"fib</w>\": 40594,\n  \"fiba</w>\": 34993,\n  \"fiber\": 35074,\n  \"fiber</w>\": 12612,\n  \"fibers</w>\": 44587,\n  \"fibre</w>\": 21401,\n  \"fibro\": 21294,\n  \"fibrosis</w>\": 36307,\n  \"fic\": 1788,\n  \"fic</w>\": 2059,\n  \"fica</w>\": 26952,\n  \"fically</w>\": 14854,\n  \"fication</w>\": 4523,\n  \"fications</w>\": 12512,\n  \"ficial</w>\": 48192,\n  \"fics</w>\": 42505,\n  \"fiction</w>\": 6218,\n  \"fictional</w>\": 25570,\n  \"fid\": 34197,\n  \"fid</w>\": 23966,\n  \"fidd\": 25218,\n  \"fiddle</w>\": 35968,\n  \"fide</w>\": 45375,\n  \"fidel\": 21740,\n  \"fidel</w>\": 36837,\n  \"fidelity</w>\": 30109,\n  \"fidget</w>\": 48664,\n  \"fie\": 28487,\n  \"fie</w>\": 10348,\n  \"fied\": 29642,\n  \"fied</w>\": 2853,\n  \"fiel\": 1361,\n  \"field\": 7571,\n  \"field</w>\": 1570,\n  \"fielder</w>\": 11046,\n  \"fieldhouse</w>\": 37969,\n  \"fielding</w>\": 30465,\n  \"fields</w>\": 6494,\n  \"fieldwork</w>\": 33155,\n  \"fiends</w>\": 37869,\n  \"fier\": 11167,\n  \"fier</w>\": 10598,\n  \"fierc\": 48609,\n  \"fierce</w>\": 13896,\n  \"fiercely</w>\": 49039,\n  \"fiers</w>\": 16113,\n  \"fiery</w>\": 24557,\n  \"fies</w>\": 9537,\n  \"fiesta</w>\": 14580,\n  \"fif\": 5309,\n  \"fifa\": 21976,\n  \"fifa</w>\": 8516,\n  \"fifaworldcup</w>\": 38819,\n  \"fifawwc</w>\": 41329,\n  \"fife</w>\": 24374,\n  \"fifteen</w>\": 29504,\n  \"fifth\": 25515,\n  \"fifth</w>\": 8772,\n  \"fifthharmony</w>\": 31075,\n  \"fifty\": 24456,\n  \"fifty</w>\": 15978,\n  \"fig\": 4814,\n  \"fig</w>\": 20719,\n  \"figaro</w>\": 48044,\n  \"figh\": 23274,\n  \"fight\": 5262,\n  \"fight</w>\": 2757,\n  \"fighter\": 35884,\n  \"fighter</w>\": 6438,\n  \"fighters</w>\": 7371,\n  \"fightfor\": 48909,\n  \"fightfor</w>\": 35740,\n  \"fighting\": 38625,\n  \"fighting</w>\": 4652,\n  \"fighton</w>\": 45578,\n  \"fights</w>\": 12132,\n  \"figs</w>\": 38882,\n  \"figu\": 6390,\n  \"figur\": 16948,\n  \"figurative</w>\": 44042,\n  \"figure\": 48820,\n  \"figure</w>\": 5274,\n  \"figured</w>\": 15630,\n  \"figures</w>\": 8739,\n  \"figurine</w>\": 33306,\n  \"figuring</w>\": 31513,\n  \"fiji\": 48270,\n  \"fiji</w>\": 18285,\n  \"fik</w>\": 46589,\n  \"fil\": 1142,\n  \"fil</w>\": 14915,\n  \"fila</w>\": 30992,\n  \"filament</w>\": 49252,\n  \"file\": 12545,\n  \"file</w>\": 4512,\n  \"filed</w>\": 13864,\n  \"files</w>\": 7850,\n  \"filet</w>\": 43155,\n  \"fili\": 9590,\n  \"filing</w>\": 16576,\n  \"filip\": 14368,\n  \"filipino</w>\": 19153,\n  \"fill\": 15904,\n  \"fill</w>\": 6277,\n  \"filled</w>\": 5589,\n  \"filler</w>\": 32816,\n  \"fillers</w>\": 45005,\n  \"fillet</w>\": 39276,\n  \"filling</w>\": 9736,\n  \"fillion</w>\": 38048,\n  \"fillmore</w>\": 43922,\n  \"fills</w>\": 21750,\n  \"filly</w>\": 27690,\n  \"film\": 5117,\n  \"film</w>\": 1860,\n  \"filmed</w>\": 15801,\n  \"filmfare</w>\": 42224,\n  \"filmfest</w>\": 24508,\n  \"filmfestival</w>\": 28066,\n  \"filming</w>\": 6866,\n  \"filmmaker</w>\": 17202,\n  \"filmmakers</w>\": 24896,\n  \"filmmaking</w>\": 18226,\n  \"films</w>\": 5370,\n  \"fils</w>\": 40271,\n  \"filter</w>\": 7541,\n  \"filtered</w>\": 29926,\n  \"filtering</w>\": 47770,\n  \"filters</w>\": 18385,\n  \"filth</w>\": 39713,\n  \"filthy</w>\": 26899,\n  \"filtr\": 21408,\n  \"filtration</w>\": 42036,\n  \"fim</w>\": 47525,\n  \"fin\": 735,\n  \"fin</w>\": 10663,\n  \"fina</w>\": 34497,\n  \"final\": 11968,\n  \"final</w>\": 1755,\n  \"finale</w>\": 7844,\n  \"finalfantasy</w>\": 44543,\n  \"finalfour</w>\": 46999,\n  \"finalist</w>\": 12620,\n  \"finalists</w>\": 13422,\n  \"finalized</w>\": 48930,\n  \"finally</w>\": 1992,\n  \"finals</w>\": 4536,\n  \"finan\": 4807,\n  \"finance</w>\": 6117,\n  \"finances</w>\": 28767,\n  \"financi\": 12846,\n  \"financial\": 19783,\n  \"financial</w>\": 4930,\n  \"financially</w>\": 28124,\n  \"financing</w>\": 18375,\n  \"finch</w>\": 18523,\n  \"find\": 18638,\n  \"find</w>\": 1416,\n  \"finder</w>\": 15045,\n  \"finders</w>\": 43884,\n  \"findia</w>\": 47064,\n  \"finding\": 37455,\n  \"finding</w>\": 6002,\n  \"findings</w>\": 16529,\n  \"findlay</w>\": 48227,\n  \"findom</w>\": 36463,\n  \"finds</w>\": 6680,\n  \"findyour\": 25936,\n  \"findyourpark</w>\": 38924,\n  \"fine\": 12042,\n  \"fine</w>\": 3797,\n  \"fineart\": 7484,\n  \"fineart</w>\": 16005,\n  \"fineartamerica</w>\": 7724,\n  \"fined</w>\": 20094,\n  \"finely</w>\": 46120,\n  \"finer</w>\": 36681,\n  \"fines</w>\": 25053,\n  \"finesse</w>\": 46047,\n  \"finest</w>\": 7707,\n  \"fing\": 6485,\n  \"fing</w>\": 17955,\n  \"finger\": 13480,\n  \"finger</w>\": 8895,\n  \"fingerprint</w>\": 39579,\n  \"fingers</w>\": 9690,\n  \"fini\": 2405,\n  \"finish\": 42178,\n  \"finish</w>\": 3958,\n  \"finished</w>\": 3078,\n  \"finisher</w>\": 38636,\n  \"finishers</w>\": 48661,\n  \"finishes</w>\": 13078,\n  \"finishing</w>\": 7912,\n  \"finite</w>\": 48312,\n  \"finity\": 41463,\n  \"finity</w>\": 21273,\n  \"fink</w>\": 40158,\n  \"finland</w>\": 10775,\n  \"finley</w>\": 41652,\n  \"finn\": 28479,\n  \"finn</w>\": 16925,\n  \"finna</w>\": 35180,\n  \"finnish</w>\": 19616,\n  \"fino</w>\": 30083,\n  \"fins</w>\": 32810,\n  \"fintech\": 48929,\n  \"fintech</w>\": 8899,\n  \"fion\": 27476,\n  \"fiona</w>\": 20099,\n  \"fior\": 37086,\n  \"fiore</w>\": 44997,\n  \"fioren\": 33188,\n  \"fiorentina</w>\": 43713,\n  \"fios</w>\": 42521,\n  \"fir\": 770,\n  \"fir</w>\": 16233,\n  \"fire\": 2951,\n  \"fire</w>\": 1769,\n  \"firearm</w>\": 40311,\n  \"firearms</w>\": 23960,\n  \"fireball</w>\": 40543,\n  \"firec\": 42806,\n  \"fired</w>\": 8846,\n  \"firefighter</w>\": 20498,\n  \"firefighters</w>\": 12600,\n  \"firefly</w>\": 33997,\n  \"firefox</w>\": 35372,\n  \"fireman</w>\": 46085,\n  \"firen\": 34752,\n  \"firenze</w>\": 38445,\n  \"fireplace</w>\": 23050,\n  \"fires</w>\": 8749,\n  \"fireside</w>\": 36185,\n  \"firework</w>\": 40750,\n  \"fireworks</w>\": 10641,\n  \"firing</w>\": 15105,\n  \"firm\": 16936,\n  \"firm</w>\": 7705,\n  \"firmly</w>\": 29156,\n  \"firms</w>\": 13655,\n  \"firmware</w>\": 42691,\n  \"first\": 6853,\n  \"first</w>\": 874,\n  \"firstdayof\": 44297,\n  \"firsth\": 48512,\n  \"firsts</w>\": 47884,\n  \"firth</w>\": 26078,\n  \"fis\": 7846,\n  \"fis</w>\": 47683,\n  \"fiscal</w>\": 20825,\n  \"fischer</w>\": 26532,\n  \"fish\": 6431,\n  \"fish</w>\": 2759,\n  \"fisher\": 11175,\n  \"fisher</w>\": 9176,\n  \"fisheries</w>\": 24612,\n  \"fisherman</w>\": 25055,\n  \"fishermen</w>\": 28547,\n  \"fishers</w>\": 42065,\n  \"fishery</w>\": 49057,\n  \"fishes</w>\": 35470,\n  \"fishing\": 31703,\n  \"fishing</w>\": 4935,\n  \"fishy</w>\": 35665,\n  \"fist\": 48340,\n  \"fist</w>\": 17085,\n  \"fit\": 2366,\n  \"fit</w>\": 2478,\n  \"fitbit</w>\": 33768,\n  \"fitch</w>\": 44614,\n  \"fitfam</w>\": 20662,\n  \"fitnes\": 47285,\n  \"fitness\": 20044,\n  \"fitness</w>\": 4838,\n  \"fits</w>\": 6401,\n  \"fitt\": 32994,\n  \"fitted</w>\": 14863,\n  \"fitter</w>\": 42096,\n  \"fitters</w>\": 32364,\n  \"fitting</w>\": 11769,\n  \"fittings</w>\": 45787,\n  \"fitz\": 11120,\n  \"fitz</w>\": 25913,\n  \"fitzgerald</w>\": 20606,\n  \"fitzpatrick</w>\": 37141,\n  \"fiu</w>\": 38374,\n  \"five\": 19508,\n  \"five</w>\": 3127,\n  \"fives</w>\": 44066,\n  \"fix\": 4596,\n  \"fix</w>\": 6028,\n  \"fixed</w>\": 9393,\n  \"fixes</w>\": 25473,\n  \"fixing</w>\": 17423,\n  \"fixture</w>\": 17317,\n  \"fixtures</w>\": 19904,\n  \"fizz</w>\": 31242,\n  \"fj\": 43183,\n  \"fj</w>\": 46447,\n  \"fjor\": 31260,\n  \"fk</w>\": 12410,\n  \"fl\": 1082,\n  \"fl</w>\": 2685,\n  \"fla\": 1577,\n  \"fla</w>\": 20292,\n  \"flag\": 11536,\n  \"flag</w>\": 4859,\n  \"flagged</w>\": 45012,\n  \"flags</w>\": 12221,\n  \"flagship</w>\": 19779,\n  \"flagstaff</w>\": 40406,\n  \"flair</w>\": 24938,\n  \"flake</w>\": 21221,\n  \"flakes</w>\": 20934,\n  \"flam\": 10559,\n  \"flame\": 40351,\n  \"flame</w>\": 13484,\n  \"flamen\": 28826,\n  \"flamenco</w>\": 37362,\n  \"flames</w>\": 13441,\n  \"flamin\": 42693,\n  \"flaming</w>\": 34782,\n  \"flamingo</w>\": 30323,\n  \"flan\": 14572,\n  \"flanagan</w>\": 28641,\n  \"flanders</w>\": 34837,\n  \"flank</w>\": 44553,\n  \"flann\": 39510,\n  \"flannel</w>\": 37807,\n  \"flap</w>\": 35253,\n  \"flappy</w>\": 40241,\n  \"flare</w>\": 21185,\n  \"flares</w>\": 46088,\n  \"flash\": 6089,\n  \"flash</w>\": 5815,\n  \"flashback\": 14616,\n  \"flashback</w>\": 11988,\n  \"flashbackfriday</w>\": 15014,\n  \"flashbacks</w>\": 47056,\n  \"flashes</w>\": 31259,\n  \"flashing</w>\": 31764,\n  \"flashlight</w>\": 37256,\n  \"flask</w>\": 36194,\n  \"flat\": 8986,\n  \"flat</w>\": 6313,\n  \"flats</w>\": 17228,\n  \"flatt\": 45498,\n  \"flattering</w>\": 43267,\n  \"flaun\": 41421,\n  \"flav\": 7191,\n  \"flavo\": 28895,\n  \"flavor\": 31835,\n  \"flavor</w>\": 11818,\n  \"flavored</w>\": 29350,\n  \"flavorful</w>\": 49135,\n  \"flavors</w>\": 16930,\n  \"flavour</w>\": 17026,\n  \"flavoured</w>\": 42397,\n  \"flavours</w>\": 21083,\n  \"flaw\": 14268,\n  \"flaw</w>\": 34978,\n  \"flawed</w>\": 35136,\n  \"flawless</w>\": 15531,\n  \"flaws</w>\": 30492,\n  \"flax</w>\": 43443,\n  \"fle\": 2428,\n  \"fle</w>\": 44964,\n  \"flea</w>\": 24883,\n  \"fleck</w>\": 28143,\n  \"fled</w>\": 26731,\n  \"flee\": 19427,\n  \"flee</w>\": 30167,\n  \"fleece</w>\": 25038,\n  \"fleeing</w>\": 30543,\n  \"fleek</w>\": 43513,\n  \"fleet\": 35922,\n  \"fleet</w>\": 9147,\n  \"fleetwood</w>\": 28883,\n  \"fleming</w>\": 25769,\n  \"fler</w>\": 48789,\n  \"flesh</w>\": 17495,\n  \"flet\": 16102,\n  \"fletcher</w>\": 19810,\n  \"fleur</w>\": 28593,\n  \"flew</w>\": 13768,\n  \"flex\": 16426,\n  \"flex</w>\": 12038,\n  \"flexi\": 10032,\n  \"flexibility</w>\": 22547,\n  \"flexible</w>\": 14502,\n  \"flexing</w>\": 48483,\n  \"fli\": 2472,\n  \"flick\": 13746,\n  \"flick</w>\": 23414,\n  \"flickr</w>\": 17755,\n  \"flies</w>\": 8070,\n  \"flight\": 24701,\n  \"flight</w>\": 3795,\n  \"flights</w>\": 10515,\n  \"flin\": 24730,\n  \"flin</w>\": 43816,\n  \"flinders</w>\": 44647,\n  \"fling</w>\": 22768,\n  \"flint\": 28306,\n  \"flint</w>\": 18324,\n  \"flip\": 20385,\n  \"flip</w>\": 11035,\n  \"flipk\": 30829,\n  \"flipkart</w>\": 33154,\n  \"flipped</w>\": 28144,\n  \"flipping</w>\": 25881,\n  \"flips</w>\": 35089,\n  \"flir\": 24330,\n  \"flirt</w>\": 38352,\n  \"flirting</w>\": 35243,\n  \"flix</w>\": 40663,\n  \"flo\": 1945,\n  \"flo</w>\": 20711,\n  \"float</w>\": 16123,\n  \"floating</w>\": 12619,\n  \"floats</w>\": 33272,\n  \"flock\": 36297,\n  \"flock</w>\": 21822,\n  \"flondon</w>\": 47366,\n  \"floo\": 4062,\n  \"flood\": 23793,\n  \"flood</w>\": 7148,\n  \"flooded</w>\": 19706,\n  \"flooding</w>\": 10204,\n  \"floods</w>\": 16369,\n  \"floor\": 23657,\n  \"floor</w>\": 4125,\n  \"flooring</w>\": 19227,\n  \"floors</w>\": 15671,\n  \"flop</w>\": 22994,\n  \"floppy</w>\": 38267,\n  \"flops</w>\": 29146,\n  \"flor\": 15784,\n  \"flor</w>\": 41669,\n  \"flora</w>\": 18906,\n  \"floral</w>\": 10732,\n  \"florals</w>\": 48331,\n  \"floren\": 37706,\n  \"florence</w>\": 11617,\n  \"flores</w>\": 21537,\n  \"flori\": 3482,\n  \"florian</w>\": 41861,\n  \"florida\": 34264,\n  \"florida</w>\": 3966,\n  \"florist</w>\": 38403,\n  \"floss</w>\": 36453,\n  \"flotus</w>\": 35181,\n  \"flour</w>\": 18592,\n  \"flouri\": 23239,\n  \"flourish</w>\": 36038,\n  \"flow\": 2180,\n  \"flow</w>\": 5608,\n  \"flower\": 12772,\n  \"flower</w>\": 4055,\n  \"flowering</w>\": 19953,\n  \"flowers</w>\": 4023,\n  \"flowing</w>\": 14922,\n  \"flown</w>\": 25659,\n  \"flows</w>\": 16715,\n  \"floyd\": 46369,\n  \"floyd</w>\": 13656,\n  \"flu\": 3698,\n  \"flu</w>\": 13528,\n  \"fluctu\": 40181,\n  \"fluence</w>\": 38169,\n  \"fluent</w>\": 30025,\n  \"fluff</w>\": 31174,\n  \"fluffy\": 40346,\n  \"fluffy</w>\": 17054,\n  \"fluid\": 43803,\n  \"fluid</w>\": 16717,\n  \"fluids</w>\": 41490,\n  \"fluor\": 45127,\n  \"fluore\": 26974,\n  \"fluorescent</w>\": 35036,\n  \"fluori\": 45611,\n  \"flur\": 31591,\n  \"flush</w>\": 25777,\n  \"flushing</w>\": 43754,\n  \"flute</w>\": 23746,\n  \"flux</w>\": 25249,\n  \"flwx</w>\": 30907,\n  \"fly\": 5666,\n  \"fly</w>\": 3228,\n  \"flye\": 30873,\n  \"flyeagles\": 39927,\n  \"flyeaglesfly</w>\": 39931,\n  \"flyer</w>\": 11875,\n  \"flyers</w>\": 14181,\n  \"flyfishing</w>\": 31800,\n  \"flying\": 20782,\n  \"flying</w>\": 4610,\n  \"flyn\": 40676,\n  \"flynn</w>\": 15721,\n  \"flyo\": 33506,\n  \"flyover</w>\": 38083,\n  \"fm\": 13715,\n  \"fm</w>\": 3689,\n  \"fman</w>\": 25152,\n  \"fml</w>\": 26730,\n  \"fmr</w>\": 32875,\n  \"fn\": 22773,\n  \"fn</w>\": 21763,\n  \"fnc</w>\": 46506,\n  \"fo\": 898,\n  \"fo</w>\": 6157,\n  \"foal</w>\": 40386,\n  \"foam\": 30039,\n  \"foam</w>\": 14587,\n  \"foamed</w>\": 26711,\n  \"fob</w>\": 40315,\n  \"focal</w>\": 30934,\n  \"focu\": 5827,\n  \"focus</w>\": 4353,\n  \"focused</w>\": 9319,\n  \"focuses</w>\": 20093,\n  \"focusing</w>\": 15551,\n  \"fod\": 31015,\n  \"fod</w>\": 43299,\n  \"fodils</w>\": 44411,\n  \"foe</w>\": 22952,\n  \"foes</w>\": 46279,\n  \"fog</w>\": 9417,\n  \"foggy</w>\": 19770,\n  \"foil</w>\": 17302,\n  \"fol\": 1106,\n  \"fol</w>\": 48616,\n  \"fold\": 35201,\n  \"fold</w>\": 11021,\n  \"foldable</w>\": 48307,\n  \"folded</w>\": 25233,\n  \"folder</w>\": 25717,\n  \"folding</w>\": 15464,\n  \"folds</w>\": 24266,\n  \"foley</w>\": 22850,\n  \"foli\": 7713,\n  \"folia</w>\": 48964,\n  \"foliage</w>\": 26350,\n  \"folio</w>\": 10772,\n  \"folk\": 10665,\n  \"folk</w>\": 6032,\n  \"folke\": 47190,\n  \"folkl\": 27273,\n  \"folklore\": 22133,\n  \"folklore</w>\": 28620,\n  \"folklorethursday</w>\": 23270,\n  \"folks</w>\": 5422,\n  \"follo\": 41417,\n  \"follow\": 1964,\n  \"follow</w>\": 1979,\n  \"followart</w>\": 40957,\n  \"followback</w>\": 33863,\n  \"followed</w>\": 6499,\n  \"follower</w>\": 17039,\n  \"followers</w>\": 4856,\n  \"following</w>\": 3473,\n  \"followme</w>\": 29668,\n  \"followparty</w>\": 44757,\n  \"follows</w>\": 11287,\n  \"followthe\": 30747,\n  \"folly</w>\": 41408,\n  \"folsom</w>\": 42108,\n  \"fom\": 34540,\n  \"fon\": 5017,\n  \"fon</w>\": 38318,\n  \"fond</w>\": 19964,\n  \"fonda</w>\": 44609,\n  \"fondue</w>\": 48321,\n  \"fone</w>\": 40672,\n  \"font\": 37610,\n  \"font</w>\": 16248,\n  \"fontaine</w>\": 37864,\n  \"fontana</w>\": 43643,\n  \"fontein</w>\": 45062,\n  \"fonts</w>\": 32801,\n  \"foo\": 1183,\n  \"foo</w>\": 23435,\n  \"food\": 4586,\n  \"food</w>\": 1559,\n  \"foodand\": 38317,\n  \"foodbank</w>\": 31926,\n  \"foodie\": 30762,\n  \"foodie</w>\": 9847,\n  \"foodies</w>\": 22416,\n  \"foodnetwork</w>\": 46793,\n  \"foods</w>\": 7057,\n  \"foodsecurity</w>\": 49329,\n  \"foodtruck</w>\": 47682,\n  \"fool\": 23959,\n  \"fool</w>\": 12212,\n  \"fooled</w>\": 28761,\n  \"fooling</w>\": 47964,\n  \"foolish</w>\": 33824,\n  \"fools</w>\": 15946,\n  \"foot\": 6702,\n  \"foot</w>\": 4738,\n  \"footage</w>\": 11130,\n  \"footb\": 33466,\n  \"football\": 9376,\n  \"football</w>\": 1882,\n  \"footballer</w>\": 20646,\n  \"footballers</w>\": 30269,\n  \"footed</w>\": 38040,\n  \"footh\": 25951,\n  \"foothills</w>\": 37020,\n  \"footpath</w>\": 48858,\n  \"footprint</w>\": 23206,\n  \"footprints</w>\": 39640,\n  \"footsteps</w>\": 27289,\n  \"footwear</w>\": 22772,\n  \"footy\": 39866,\n  \"footy</w>\": 18922,\n  \"for\": 645,\n  \"for</w>\": 556,\n  \"forage</w>\": 46871,\n  \"foraging</w>\": 39056,\n  \"forall</w>\": 17824,\n  \"forbe\": 49098,\n  \"forbes</w>\": 13925,\n  \"forbi\": 24754,\n  \"forbidden</w>\": 25164,\n  \"force\": 12068,\n  \"force</w>\": 2869,\n  \"forced</w>\": 8201,\n  \"forces</w>\": 5381,\n  \"forchange</w>\": 35848,\n  \"forcing</w>\": 21573,\n  \"ford\": 3751,\n  \"ford</w>\": 1623,\n  \"fordfc</w>\": 28581,\n  \"fordham</w>\": 48792,\n  \"fords</w>\": 29351,\n  \"fordshire</w>\": 14645,\n  \"fore\": 1484,\n  \"fore</w>\": 1332,\n  \"forec\": 34155,\n  \"forecast</w>\": 7361,\n  \"forecasting</w>\": 38133,\n  \"forecasts</w>\": 27696,\n  \"foreclo\": 44916,\n  \"forefront</w>\": 37679,\n  \"foreground</w>\": 35186,\n  \"forehead</w>\": 25394,\n  \"foreig\": 26497,\n  \"foreign\": 42255,\n  \"foreign</w>\": 6046,\n  \"foreigners</w>\": 38549,\n  \"foreman</w>\": 36174,\n  \"foremost</w>\": 42128,\n  \"foren\": 16526,\n  \"forensic</w>\": 23158,\n  \"forensics</w>\": 38763,\n  \"forest\": 18760,\n  \"forest</w>\": 4167,\n  \"forestation</w>\": 33939,\n  \"forestry</w>\": 26281,\n  \"forests</w>\": 14095,\n  \"forever\": 14748,\n  \"forever</w>\": 3225,\n  \"forevery\": 40605,\n  \"forex\": 40200,\n  \"forex</w>\": 17395,\n  \"forfe\": 44871,\n  \"forge</w>\": 19232,\n  \"forged</w>\": 28105,\n  \"forget\": 46153,\n  \"forget</w>\": 2678,\n  \"forgets</w>\": 35613,\n  \"forgetting</w>\": 25452,\n  \"forgi\": 22080,\n  \"forgive</w>\": 15332,\n  \"forgiven</w>\": 44894,\n  \"forgiveness</w>\": 23585,\n  \"forgood</w>\": 39169,\n  \"forgot</w>\": 6483,\n  \"forgotten</w>\": 7994,\n  \"fork\": 24501,\n  \"fork</w>\": 13700,\n  \"forkids</w>\": 48571,\n  \"forklift</w>\": 43202,\n  \"forks</w>\": 28769,\n  \"forlife</w>\": 17624,\n  \"form\": 1157,\n  \"form</w>\": 1907,\n  \"forma</w>\": 38829,\n  \"formal</w>\": 12978,\n  \"formally</w>\": 24867,\n  \"format\": 16252,\n  \"format</w>\": 11874,\n  \"formation</w>\": 2510,\n  \"formations</w>\": 37715,\n  \"formative</w>\": 48882,\n  \"formats</w>\": 32085,\n  \"forme</w>\": 42085,\n  \"formed</w>\": 6528,\n  \"former</w>\": 2276,\n  \"formerly</w>\": 20866,\n  \"formid\": 38599,\n  \"formidable</w>\": 39834,\n  \"forming</w>\": 15443,\n  \"formity</w>\": 42290,\n  \"forms</w>\": 5161,\n  \"formu\": 8689,\n  \"formul\": 23923,\n  \"formula\": 24485,\n  \"formula</w>\": 10776,\n  \"formulae</w>\": 34586,\n  \"formulated</w>\": 45066,\n  \"forre\": 38876,\n  \"forrest</w>\": 25205,\n  \"forrester</w>\": 45338,\n  \"forsa\": 48958,\n  \"forsale</w>\": 13303,\n  \"forster</w>\": 42923,\n  \"forsy\": 29629,\n  \"forsyth</w>\": 40952,\n  \"fort\": 12300,\n  \"fort</w>\": 2921,\n  \"forte\": 44350,\n  \"forte</w>\": 27367,\n  \"forth\": 17068,\n  \"forth</w>\": 11932,\n  \"forthcoming</w>\": 19989,\n  \"forthe\": 12521,\n  \"forti\": 26984,\n  \"fortified</w>\": 46486,\n  \"fortn\": 14428,\n  \"fortnight</w>\": 39235,\n  \"fortnite\": 38734,\n  \"fortnite</w>\": 17890,\n  \"fortress</w>\": 19988,\n  \"fortun\": 6950,\n  \"fortunate</w>\": 19898,\n  \"fortunately</w>\": 34358,\n  \"fortune\": 40931,\n  \"fortune</w>\": 11451,\n  \"fortunes</w>\": 41989,\n  \"forty</w>\": 24399,\n  \"forum\": 37851,\n  \"forum</w>\": 4538,\n  \"forums</w>\": 31518,\n  \"forwar\": 34364,\n  \"forward\": 47031,\n  \"forward</w>\": 2342,\n  \"forwards</w>\": 38974,\n  \"foryou</w>\": 35150,\n  \"forz\": 46056,\n  \"forza\": 33293,\n  \"forza</w>\": 28089,\n  \"fos\": 36925,\n  \"fos</w>\": 22081,\n  \"foss\": 14240,\n  \"foss</w>\": 37911,\n  \"fossil\": 20419,\n  \"fossil</w>\": 15202,\n  \"fossilfriday</w>\": 26079,\n  \"fossils</w>\": 30652,\n  \"foster\": 26778,\n  \"foster</w>\": 8139,\n  \"fostering</w>\": 35996,\n  \"fosters</w>\": 37644,\n  \"foto\": 15908,\n  \"foto</w>\": 12823,\n  \"fotogra\": 23687,\n  \"fotografia</w>\": 40256,\n  \"fotos</w>\": 26124,\n  \"fou\": 14516,\n  \"fought</w>\": 10844,\n  \"foul</w>\": 19784,\n  \"foun\": 3154,\n  \"found\": 3454,\n  \"found</w>\": 1546,\n  \"foundation</w>\": 4058,\n  \"foundations</w>\": 25219,\n  \"founded</w>\": 12240,\n  \"founder</w>\": 5145,\n  \"founders</w>\": 14602,\n  \"founding</w>\": 15317,\n  \"foundry</w>\": 31426,\n  \"fountain\": 44863,\n  \"fountain</w>\": 13405,\n  \"fountains</w>\": 37411,\n  \"four\": 5113,\n  \"four</w>\": 2721,\n  \"foursquare</w>\": 34484,\n  \"fourteen</w>\": 46255,\n  \"fourth</w>\": 7516,\n  \"fourthofjuly</w>\": 47805,\n  \"fow\": 17084,\n  \"fowl</w>\": 31685,\n  \"fowler</w>\": 20980,\n  \"fox\": 5007,\n  \"fox</w>\": 3240,\n  \"foxandfriends</w>\": 45841,\n  \"foxes</w>\": 24145,\n  \"foxnews</w>\": 18830,\n  \"foxsports</w>\": 39267,\n  \"foxtv</w>\": 49396,\n  \"foxx</w>\": 32993,\n  \"foxy</w>\": 27945,\n  \"foy</w>\": 30284,\n  \"foyer</w>\": 38011,\n  \"foyle</w>\": 47902,\n  \"fp\": 28058,\n  \"fp</w>\": 8941,\n  \"fpl</w>\": 27970,\n  \"fpp</w>\": 36464,\n  \"fps</w>\": 25300,\n  \"fpv</w>\": 43175,\n  \"fr\": 936,\n  \"fr</w>\": 5512,\n  \"fra\": 3368,\n  \"fra</w>\": 15644,\n  \"frac\": 15607,\n  \"fracking</w>\": 21894,\n  \"fractal</w>\": 46471,\n  \"fraction</w>\": 26788,\n  \"fractu\": 25847,\n  \"fracture</w>\": 28995,\n  \"fractured</w>\": 37421,\n  \"fractures</w>\": 46213,\n  \"frag\": 13093,\n  \"fragile</w>\": 23579,\n  \"fragment</w>\": 39209,\n  \"fragments</w>\": 41424,\n  \"fragr\": 15403,\n  \"fragrance</w>\": 17874,\n  \"fragrances</w>\": 44567,\n  \"fragrant</w>\": 37030,\n  \"fram\": 27987,\n  \"frame\": 11029,\n  \"frame</w>\": 6481,\n  \"framed</w>\": 13135,\n  \"frames</w>\": 15479,\n  \"framework</w>\": 13195,\n  \"frameworks</w>\": 43136,\n  \"framing</w>\": 24539,\n  \"frampton</w>\": 41733,\n  \"fran\": 2118,\n  \"fran</w>\": 18878,\n  \"franc\": 3872,\n  \"franc</w>\": 42340,\n  \"franca\": 48952,\n  \"france\": 12045,\n  \"france</w>\": 3552,\n  \"frances</w>\": 20803,\n  \"francesca</w>\": 32327,\n  \"francesco</w>\": 25816,\n  \"franch\": 11756,\n  \"franchi\": 46438,\n  \"franchise</w>\": 13664,\n  \"franci\": 46458,\n  \"francis\": 22187,\n  \"francis</w>\": 7660,\n  \"francisco</w>\": 6887,\n  \"franco\": 17934,\n  \"franco</w>\": 17052,\n  \"francois</w>\": 29317,\n  \"frank\": 5390,\n  \"frank</w>\": 5229,\n  \"franken\": 20487,\n  \"franken</w>\": 48252,\n  \"frankenstein</w>\": 26410,\n  \"frankfur\": 17442,\n  \"frankfurt</w>\": 18598,\n  \"franki\": 39227,\n  \"frankie\": 38373,\n  \"frankie</w>\": 16215,\n  \"franklin\": 40935,\n  \"franklin</w>\": 9999,\n  \"frankly</w>\": 38015,\n  \"franks</w>\": 42855,\n  \"frans</w>\": 47892,\n  \"franz</w>\": 25449,\n  \"franÃ§\": 38381,\n  \"fraser\": 39082,\n  \"fraser</w>\": 16754,\n  \"frat\": 15225,\n  \"frat</w>\": 39292,\n  \"fraternity</w>\": 24433,\n  \"frau\": 23063,\n  \"fraud\": 40647,\n  \"fraud</w>\": 9961,\n  \"fraudul\": 42655,\n  \"fraudulent</w>\": 47408,\n  \"fray</w>\": 41154,\n  \"frazier</w>\": 32841,\n  \"frc</w>\": 41507,\n  \"fre\": 821,\n  \"fre</w>\": 43165,\n  \"freak\": 20352,\n  \"freak</w>\": 13701,\n  \"freaked</w>\": 43511,\n  \"freakin</w>\": 23900,\n  \"freaking</w>\": 11992,\n  \"freaks</w>\": 27009,\n  \"freaky</w>\": 31583,\n  \"freck\": 33328,\n  \"freckles</w>\": 48036,\n  \"fred\": 9486,\n  \"fred</w>\": 6678,\n  \"freddie\": 41890,\n  \"freddie</w>\": 17014,\n  \"freddy</w>\": 24394,\n  \"freder\": 10745,\n  \"frederic</w>\": 41165,\n  \"frederick\": 37103,\n  \"frederick</w>\": 18570,\n  \"fredo</w>\": 48241,\n  \"free\": 2065,\n  \"free</w>\": 1139,\n  \"freebie</w>\": 35865,\n  \"freebies</w>\": 28630,\n  \"freec\": 46569,\n  \"freed\": 12585,\n  \"freed</w>\": 23392,\n  \"freedom\": 17992,\n  \"freedom</w>\": 4511,\n  \"freedoms</w>\": 32500,\n  \"freef\": 48678,\n  \"freel\": 14174,\n  \"freelance</w>\": 21942,\n  \"freely</w>\": 24436,\n  \"freeman</w>\": 16450,\n  \"freep\": 32499,\n  \"freepalestine</w>\": 39242,\n  \"freer\": 44676,\n  \"frees\": 27455,\n  \"freestyle</w>\": 15594,\n  \"freeway</w>\": 24927,\n  \"freeze</w>\": 14187,\n  \"freezer</w>\": 25390,\n  \"freezing</w>\": 12499,\n  \"frei\": 30183,\n  \"freight</w>\": 17023,\n  \"fremantle</w>\": 48012,\n  \"fremont</w>\": 34578,\n  \"fren\": 2919,\n  \"french\": 13118,\n  \"french</w>\": 3461,\n  \"frenzy</w>\": 30084,\n  \"frequ\": 9211,\n  \"frequencies</w>\": 45319,\n  \"frequency</w>\": 18825,\n  \"frequent</w>\": 19836,\n  \"frequently</w>\": 22434,\n  \"fresco</w>\": 31609,\n  \"fresh\": 4065,\n  \"fresh</w>\": 2975,\n  \"fresher</w>\": 49284,\n  \"freshers</w>\": 35810,\n  \"freshest</w>\": 46809,\n  \"freshly</w>\": 16081,\n  \"freshman</w>\": 9381,\n  \"freshmen</w>\": 21292,\n  \"freshness</w>\": 45872,\n  \"freshwater</w>\": 24803,\n  \"fresno\": 40879,\n  \"fresno</w>\": 20995,\n  \"fret</w>\": 40510,\n  \"freud</w>\": 40787,\n  \"frey\": 22136,\n  \"frey</w>\": 9082,\n  \"fri\": 815,\n  \"fri</w>\": 6882,\n  \"friars</w>\": 30513,\n  \"fric\": 18981,\n  \"frick</w>\": 46304,\n  \"friction</w>\": 38563,\n  \"frid</w>\": 46388,\n  \"frida</w>\": 36001,\n  \"friday\": 6350,\n  \"friday</w>\": 1461,\n  \"fridayfeeling</w>\": 11952,\n  \"fridaymotivation</w>\": 38544,\n  \"fridaynight\": 44858,\n  \"fridayreads</w>\": 37736,\n  \"fridays</w>\": 15589,\n  \"fridaythe</w>\": 47642,\n  \"fridge</w>\": 13491,\n  \"fridges</w>\": 40734,\n  \"frie\": 36999,\n  \"fried\": 13743,\n  \"fried</w>\": 7310,\n  \"friedman</w>\": 29402,\n  \"friedrich</w>\": 34171,\n  \"friend\": 3017,\n  \"friend</w>\": 1625,\n  \"friendly\": 44612,\n  \"friendly</w>\": 4681,\n  \"friends\": 38875,\n  \"friends</w>\": 1574,\n  \"friendship\": 42674,\n  \"friendship</w>\": 7679,\n  \"friendships</w>\": 28840,\n  \"fries</w>\": 11369,\n  \"frifotos</w>\": 40493,\n  \"friger\": 20785,\n  \"friggin</w>\": 48300,\n  \"frigh\": 34831,\n  \"fright\": 24277,\n  \"fright</w>\": 40207,\n  \"frightened</w>\": 47136,\n  \"frightening</w>\": 39290,\n  \"fringe</w>\": 10640,\n  \"fris\": 37252,\n  \"frisbee</w>\": 45768,\n  \"frisco</w>\": 35945,\n  \"frit\": 34614,\n  \"fritz</w>\": 29860,\n  \"friyay</w>\": 38887,\n  \"frm</w>\": 12951,\n  \"fro\": 626,\n  \"fro</w>\": 26603,\n  \"frock</w>\": 45306,\n  \"frog\": 26494,\n  \"frog</w>\": 11438,\n  \"frogs</w>\": 20781,\n  \"from\": 8330,\n  \"from</w>\": 633,\n  \"frome</w>\": 48691,\n  \"fromhome</w>\": 41477,\n  \"fromthe\": 18756,\n  \"fron\": 1847,\n  \"fron</w>\": 18036,\n  \"front\": 10996,\n  \"front</w>\": 2184,\n  \"frontal</w>\": 35794,\n  \"frontier</w>\": 18253,\n  \"frontiers</w>\": 38396,\n  \"frontline</w>\": 29589,\n  \"frontman</w>\": 36775,\n  \"fronts</w>\": 26846,\n  \"froome</w>\": 48560,\n  \"frosh</w>\": 47069,\n  \"frost\": 39420,\n  \"frost</w>\": 11619,\n  \"frosted</w>\": 35988,\n  \"frosting</w>\": 33872,\n  \"frosty</w>\": 22760,\n  \"froze</w>\": 47788,\n  \"frozen\": 42464,\n  \"frozen</w>\": 8507,\n  \"frs</w>\": 26216,\n  \"fru\": 3248,\n  \"fruit\": 16771,\n  \"fruit</w>\": 5190,\n  \"fruitful</w>\": 31494,\n  \"fruits</w>\": 13282,\n  \"fruity</w>\": 22320,\n  \"frustr\": 16046,\n  \"frustrated</w>\": 25111,\n  \"frustrating</w>\": 31342,\n  \"frustration</w>\": 30535,\n  \"fry\": 33914,\n  \"fry</w>\": 13686,\n  \"fryer</w>\": 49217,\n  \"frying</w>\": 38516,\n  \"fs\": 23699,\n  \"fs</w>\": 3854,\n  \"fsa</w>\": 33373,\n  \"fsu\": 44185,\n  \"fsu</w>\": 19317,\n  \"ft\": 3391,\n  \"ft</w>\": 981,\n  \"fta</w>\": 41975,\n  \"ftc</w>\": 33752,\n  \"fted</w>\": 5612,\n  \"fter</w>\": 25063,\n  \"fthe\": 22886,\n  \"ftheday</w>\": 9823,\n  \"fting</w>\": 6174,\n  \"fton</w>\": 26605,\n  \"ftp</w>\": 42649,\n  \"fts</w>\": 3767,\n  \"ftse</w>\": 46717,\n  \"ftw</w>\": 19298,\n  \"fty</w>\": 17494,\n  \"fu\": 665,\n  \"fu</w>\": 9098,\n  \"fuch\": 42617,\n  \"fudge</w>\": 24270,\n  \"fue</w>\": 43723,\n  \"fuego</w>\": 41500,\n  \"fuel\": 21113,\n  \"fuel</w>\": 5945,\n  \"fueled</w>\": 28792,\n  \"fueling</w>\": 38793,\n  \"fuelled</w>\": 48357,\n  \"fuels</w>\": 19365,\n  \"fuentes</w>\": 44393,\n  \"fuer\": 29645,\n  \"fug\": 29227,\n  \"fugitive</w>\": 39257,\n  \"fuji\": 15573,\n  \"fuji</w>\": 21634,\n  \"fujifilm</w>\": 24765,\n  \"fuk</w>\": 31051,\n  \"fuku\": 20728,\n  \"fukushima</w>\": 33929,\n  \"ful\": 1814,\n  \"ful</w>\": 857,\n  \"fulbright</w>\": 41834,\n  \"fulfill\": 43675,\n  \"fulfill</w>\": 27467,\n  \"fulfilled</w>\": 29919,\n  \"fulfilling</w>\": 30621,\n  \"fulfillment</w>\": 45573,\n  \"fulham</w>\": 25574,\n  \"full\": 9407,\n  \"full</w>\": 1476,\n  \"fuller</w>\": 20225,\n  \"fullerton</w>\": 42822,\n  \"fullest</w>\": 35603,\n  \"fully\": 39142,\n  \"fully</w>\": 2401,\n  \"fulness</w>\": 10526,\n  \"fuls</w>\": 41606,\n  \"fulton</w>\": 26725,\n  \"fum</w>\": 38393,\n  \"fumble</w>\": 49373,\n  \"fun\": 1229,\n  \"fun</w>\": 1499,\n  \"func\": 8679,\n  \"function</w>\": 8093,\n  \"functional</w>\": 12885,\n  \"functionality</w>\": 33316,\n  \"functioning</w>\": 25479,\n  \"functions</w>\": 18001,\n  \"fund\": 19089,\n  \"fund</w>\": 4877,\n  \"fundam\": 11670,\n  \"fundament\": 18852,\n  \"fundamental</w>\": 17627,\n  \"fundamentally</w>\": 45378,\n  \"fundamentals</w>\": 27887,\n  \"funday</w>\": 15439,\n  \"funded</w>\": 10588,\n  \"funding</w>\": 5588,\n  \"fundra\": 6201,\n  \"fundraiser</w>\": 10049,\n  \"fundraising</w>\": 10755,\n  \"funds</w>\": 7066,\n  \"funer\": 40693,\n  \"funeral</w>\": 10606,\n  \"funfact</w>\": 31596,\n  \"funfactfriday</w>\": 40710,\n  \"fungal</w>\": 38838,\n  \"fungi</w>\": 27837,\n  \"fungus</w>\": 30677,\n  \"funk\": 37353,\n  \"funk</w>\": 13372,\n  \"funko\": 49402,\n  \"funko</w>\": 23697,\n  \"funky</w>\": 16492,\n  \"funnel</w>\": 27862,\n  \"funnier</w>\": 42232,\n  \"funniest</w>\": 15557,\n  \"funny\": 19124,\n  \"funny</w>\": 3789,\n  \"funrun</w>\": 34185,\n  \"fur\": 2395,\n  \"fur</w>\": 9686,\n  \"furi\": 40816,\n  \"furious</w>\": 17522,\n  \"furman</w>\": 49238,\n  \"furn\": 21348,\n  \"furnace</w>\": 31913,\n  \"furnished</w>\": 37388,\n  \"furnitu\": 45696,\n  \"furniture</w>\": 7993,\n  \"furry\": 33414,\n  \"furry</w>\": 15351,\n  \"fursuit\": 25306,\n  \"fursuit</w>\": 43083,\n  \"fursuitfriday</w>\": 27917,\n  \"further</w>\": 5583,\n  \"fury</w>\": 14404,\n  \"fus</w>\": 18419,\n  \"fuse</w>\": 23386,\n  \"fused</w>\": 38994,\n  \"fusion\": 44661,\n  \"fusion</w>\": 9364,\n  \"fuss</w>\": 26331,\n  \"fut\": 21460,\n  \"fut</w>\": 34049,\n  \"futbol</w>\": 33014,\n  \"futsal</w>\": 20558,\n  \"futu\": 33454,\n  \"futur\": 38840,\n  \"future\": 7959,\n  \"future</w>\": 1904,\n  \"futureof\": 22599,\n  \"futureofwork</w>\": 33202,\n  \"futures</w>\": 13488,\n  \"futuri\": 19068,\n  \"futurism</w>\": 48435,\n  \"futurist</w>\": 48086,\n  \"futuristic</w>\": 30987,\n  \"fuzz\": 47128,\n  \"fuzz</w>\": 40443,\n  \"fuzzy</w>\": 25876,\n  \"fv\": 29795,\n  \"fw\": 23934,\n  \"fw</w>\": 5277,\n  \"fwd</w>\": 27052,\n  \"fx\": 17807,\n  \"fx</w>\": 9025,\n  \"fy\": 8440,\n  \"fy</w>\": 2702,\n  \"fyi</w>\": 16014,\n  \"fying</w>\": 5294,\n  \"fz</w>\": 46400,\n  \"fÃ©\": 34072,\n  \"g\": 70,\n  \"g</w>\": 326,\n  \"ga\": 1275,\n  \"ga</w>\": 1531,\n  \"gaa</w>\": 10715,\n  \"gaal</w>\": 40867,\n  \"gaard</w>\": 24645,\n  \"gab\": 3927,\n  \"gab</w>\": 37382,\n  \"gabbana</w>\": 36272,\n  \"gabby\": 48115,\n  \"gabby</w>\": 24567,\n  \"gabe</w>\": 18916,\n  \"gabi</w>\": 41931,\n  \"gable</w>\": 33387,\n  \"gables</w>\": 40928,\n  \"gabri\": 8311,\n  \"gabriel\": 31684,\n  \"gabriel</w>\": 13244,\n  \"gabrielle</w>\": 33572,\n  \"gaby</w>\": 46420,\n  \"gac</w>\": 32520,\n  \"gad\": 7786,\n  \"gad</w>\": 44651,\n  \"gadget</w>\": 25525,\n  \"gadgets</w>\": 22840,\n  \"gado</w>\": 29489,\n  \"gae</w>\": 22003,\n  \"gael</w>\": 35663,\n  \"gaelic</w>\": 31173,\n  \"gaf\": 21354,\n  \"gaf</w>\": 32670,\n  \"gag\": 14121,\n  \"gag</w>\": 18844,\n  \"gaga</w>\": 9782,\n  \"gage</w>\": 21081,\n  \"gah</w>\": 27750,\n  \"gai\": 24214,\n  \"gai</w>\": 25153,\n  \"gaia</w>\": 41269,\n  \"gail\": 41160,\n  \"gail</w>\": 27676,\n  \"gain\": 21536,\n  \"gain</w>\": 6202,\n  \"gaine\": 35747,\n  \"gained</w>\": 14489,\n  \"gaines</w>\": 49225,\n  \"gainesville</w>\": 40427,\n  \"gaining</w>\": 15260,\n  \"gains\": 42751,\n  \"gains</w>\": 12107,\n  \"gal\": 2001,\n  \"gal</w>\": 4488,\n  \"gala</w>\": 7211,\n  \"galac\": 18864,\n  \"galactic</w>\": 25514,\n  \"galap\": 41115,\n  \"galapagos</w>\": 44057,\n  \"galat\": 39853,\n  \"galatasar\": 42413,\n  \"galatasaray</w>\": 47787,\n  \"galax\": 5647,\n  \"galaxies</w>\": 32435,\n  \"galaxy\": 32130,\n  \"galaxy</w>\": 6545,\n  \"gale\": 37658,\n  \"gale</w>\": 21380,\n  \"galerie</w>\": 44539,\n  \"gales</w>\": 48633,\n  \"gali\": 17546,\n  \"gali</w>\": 30552,\n  \"galicia</w>\": 47927,\n  \"galileo</w>\": 39671,\n  \"gall\": 3011,\n  \"gall</w>\": 33374,\n  \"galla\": 16847,\n  \"gallagher</w>\": 19168,\n  \"galleria</w>\": 40656,\n  \"galleries</w>\": 22304,\n  \"gallery\": 36648,\n  \"gallery</w>\": 3830,\n  \"galley</w>\": 48917,\n  \"galli\": 22568,\n  \"gallipoli</w>\": 47249,\n  \"gallo\": 37350,\n  \"gallo</w>\": 33265,\n  \"gallon</w>\": 24615,\n  \"gallons</w>\": 29335,\n  \"galloway</w>\": 27796,\n  \"galore</w>\": 22286,\n  \"gals</w>\": 20125,\n  \"galvani\": 46046,\n  \"galve\": 34328,\n  \"galveston</w>\": 36003,\n  \"galway\": 38045,\n  \"galway</w>\": 17112,\n  \"gam\": 1162,\n  \"gam</w>\": 34195,\n  \"gama</w>\": 35873,\n  \"gambia</w>\": 32988,\n  \"gamble</w>\": 26121,\n  \"gambling</w>\": 20287,\n  \"game\": 2882,\n  \"game</w>\": 1063,\n  \"gameart</w>\": 31490,\n  \"gameboy</w>\": 40951,\n  \"gamecube</w>\": 44079,\n  \"gameday</w>\": 9241,\n  \"gamedev</w>\": 7544,\n  \"gameinsight</w>\": 42626,\n  \"gameof\": 10987,\n  \"gameofthrones</w>\": 11822,\n  \"gameon</w>\": 47691,\n  \"gameplay</w>\": 16794,\n  \"gamer\": 12595,\n  \"gamer</w>\": 11598,\n  \"gamergate</w>\": 25961,\n  \"gamers</w>\": 16166,\n  \"gamersunite</w>\": 26423,\n  \"games\": 18551,\n  \"games</w>\": 1955,\n  \"gamescom</w>\": 37003,\n  \"gamestop</w>\": 39436,\n  \"gametime</w>\": 45899,\n  \"gami</w>\": 42025,\n  \"gamification</w>\": 48908,\n  \"gaming\": 28803,\n  \"gaming</w>\": 4017,\n  \"gamma</w>\": 22180,\n  \"gamo</w>\": 39325,\n  \"gan\": 1822,\n  \"gan</w>\": 1670,\n  \"gand\": 8399,\n  \"ganda</w>\": 27261,\n  \"gander</w>\": 44508,\n  \"gandhi</w>\": 12322,\n  \"ganesh</w>\": 30362,\n  \"ganesha</w>\": 45185,\n  \"gang\": 8066,\n  \"gang</w>\": 5674,\n  \"ganga</w>\": 36275,\n  \"gangnam</w>\": 46777,\n  \"gangs</w>\": 29844,\n  \"gangsta</w>\": 37365,\n  \"gangster</w>\": 26514,\n  \"gani</w>\": 48324,\n  \"gann</w>\": 45665,\n  \"gannon</w>\": 45837,\n  \"gano</w>\": 25304,\n  \"gao</w>\": 26556,\n  \"gaon</w>\": 19279,\n  \"gap\": 29906,\n  \"gap</w>\": 7609,\n  \"gaps</w>\": 25296,\n  \"gar\": 1099,\n  \"gar</w>\": 5824,\n  \"gara</w>\": 28710,\n  \"garage</w>\": 8474,\n  \"garbage</w>\": 13760,\n  \"garci\": 44658,\n  \"garcia</w>\": 10529,\n  \"gard\": 7751,\n  \"gard</w>\": 21003,\n  \"garda</w>\": 31906,\n  \"garde</w>\": 22649,\n  \"garden\": 4674,\n  \"garden</w>\": 2756,\n  \"gardenchat</w>\": 46292,\n  \"gardener</w>\": 28554,\n  \"gardeners</w>\": 38205,\n  \"gardening</w>\": 10483,\n  \"gardens</w>\": 6152,\n  \"gardiner</w>\": 43121,\n  \"gardner</w>\": 18710,\n  \"gare\": 5633,\n  \"gare</w>\": 48402,\n  \"gareth\": 37140,\n  \"gareth</w>\": 18175,\n  \"garfield</w>\": 26728,\n  \"garh</w>\": 16762,\n  \"gari\": 40898,\n  \"gari</w>\": 43080,\n  \"garis</w>\": 37839,\n  \"garland</w>\": 23418,\n  \"garlic</w>\": 9685,\n  \"garment</w>\": 31418,\n  \"garments</w>\": 43341,\n  \"garmin</w>\": 39885,\n  \"garner</w>\": 20340,\n  \"garnet</w>\": 37669,\n  \"garo</w>\": 30388,\n  \"garrett</w>\": 15881,\n  \"garri\": 21764,\n  \"garrison</w>\": 30108,\n  \"garros</w>\": 40425,\n  \"garry</w>\": 24398,\n  \"gars</w>\": 12055,\n  \"gart\": 18380,\n  \"gart</w>\": 18751,\n  \"garten</w>\": 14684,\n  \"garter</w>\": 48420,\n  \"garth\": 45398,\n  \"garth</w>\": 24469,\n  \"gartner\": 43334,\n  \"gartner</w>\": 29678,\n  \"garty</w>\": 46383,\n  \"garu</w>\": 31140,\n  \"garvey</w>\": 39511,\n  \"garwal</w>\": 38623,\n  \"gary\": 10535,\n  \"gary</w>\": 4516,\n  \"garza</w>\": 49393,\n  \"gas\": 5047,\n  \"gas</w>\": 2474,\n  \"gases</w>\": 36971,\n  \"gasoline</w>\": 27691,\n  \"gasp</w>\": 43762,\n  \"gaston</w>\": 40669,\n  \"gastri\": 49197,\n  \"gastro\": 23740,\n  \"gastron\": 30699,\n  \"gastronomy</w>\": 46987,\n  \"gat\": 5314,\n  \"gat</w>\": 18941,\n  \"gata</w>\": 44575,\n  \"gate\": 8071,\n  \"gate</w>\": 3302,\n  \"gated</w>\": 23997,\n  \"gates</w>\": 9472,\n  \"gateshead</w>\": 40051,\n  \"gateway\": 45221,\n  \"gateway</w>\": 14943,\n  \"gather\": 36345,\n  \"gather</w>\": 12602,\n  \"gathered</w>\": 14646,\n  \"gathering</w>\": 9197,\n  \"gatherings</w>\": 48096,\n  \"gathers</w>\": 39250,\n  \"gating</w>\": 27561,\n  \"gation</w>\": 11095,\n  \"gations</w>\": 33906,\n  \"gato</w>\": 44492,\n  \"gator\": 20216,\n  \"gator</w>\": 16390,\n  \"gatorade</w>\": 36354,\n  \"gators</w>\": 17173,\n  \"gatory</w>\": 24796,\n  \"gatsby</w>\": 32586,\n  \"gatwick</w>\": 37122,\n  \"gau\": 5919,\n  \"gau</w>\": 43068,\n  \"gauge</w>\": 18728,\n  \"gaunt\": 31862,\n  \"gauntlet</w>\": 37163,\n  \"gautam\": 45853,\n  \"gautam</w>\": 31356,\n  \"gauteng</w>\": 40333,\n  \"gav\": 8966,\n  \"gave</w>\": 3485,\n  \"gavin\": 32974,\n  \"gavin</w>\": 16389,\n  \"gaw\": 15405,\n  \"gawd</w>\": 43239,\n  \"gawx</w>\": 43420,\n  \"gay\": 7460,\n  \"gay</w>\": 5627,\n  \"gaya</w>\": 39477,\n  \"gaye</w>\": 41401,\n  \"gayle</w>\": 29998,\n  \"gayo</w>\": 36768,\n  \"gays</w>\": 28001,\n  \"gaz\": 4837,\n  \"gaz</w>\": 36475,\n  \"gaza\": 38391,\n  \"gaza</w>\": 10112,\n  \"gazaunderattack</w>\": 42458,\n  \"gaze</w>\": 23212,\n  \"gazette</w>\": 20443,\n  \"gazing</w>\": 28373,\n  \"gb\": 8727,\n  \"gb</w>\": 4619,\n  \"gba</w>\": 18528,\n  \"gbbo</w>\": 34474,\n  \"gbc</w>\": 42993,\n  \"gbp</w>\": 27391,\n  \"gbr</w>\": 31984,\n  \"gby</w>\": 40509,\n  \"gc\": 8577,\n  \"gc</w>\": 6043,\n  \"gcc</w>\": 26804,\n  \"gcse</w>\": 28763,\n  \"gcu</w>\": 34137,\n  \"gd\": 13264,\n  \"gd</w>\": 14604,\n  \"gdc</w>\": 32793,\n  \"gden</w>\": 44928,\n  \"gdp</w>\": 17100,\n  \"gdpr</w>\": 22963,\n  \"ge\": 619,\n  \"ge</w>\": 710,\n  \"gea</w>\": 26790,\n  \"gear\": 15532,\n  \"gear</w>\": 4802,\n  \"gearbox</w>\": 42454,\n  \"geared</w>\": 33903,\n  \"gearing</w>\": 19027,\n  \"gears</w>\": 21147,\n  \"geaux\": 36313,\n  \"gecko</w>\": 38616,\n  \"ged\": 17252,\n  \"ged</w>\": 3480,\n  \"geddon</w>\": 31720,\n  \"gedly</w>\": 13991,\n  \"gee\": 9806,\n  \"gee</w>\": 9071,\n  \"geek\": 17920,\n  \"geek</w>\": 7135,\n  \"geeks</w>\": 20110,\n  \"geeky</w>\": 47332,\n  \"geel\": 25906,\n  \"geelong</w>\": 34555,\n  \"gees</w>\": 38088,\n  \"geese</w>\": 26413,\n  \"geez</w>\": 42394,\n  \"geh\": 30320,\n  \"geist</w>\": 38290,\n  \"gel\": 7343,\n  \"gel</w>\": 5697,\n  \"gelato</w>\": 29577,\n  \"gels</w>\": 42552,\n  \"gely</w>\": 14637,\n  \"gem\": 14261,\n  \"gem</w>\": 7613,\n  \"gement</w>\": 19495,\n  \"gemini</w>\": 23086,\n  \"gemma</w>\": 23952,\n  \"gems</w>\": 14355,\n  \"gemstone</w>\": 27747,\n  \"gemstones</w>\": 43972,\n  \"gen\": 1024,\n  \"gen</w>\": 3278,\n  \"gence</w>\": 16088,\n  \"gency</w>\": 5245,\n  \"gend\": 33247,\n  \"gender\": 22976,\n  \"gender</w>\": 5906,\n  \"gendere\": 35824,\n  \"genderequality</w>\": 43338,\n  \"gene\": 5822,\n  \"gene</w>\": 7962,\n  \"genealo\": 24142,\n  \"genealogy</w>\": 29381,\n  \"gener\": 1832,\n  \"general\": 20576,\n  \"general</w>\": 3658,\n  \"generally</w>\": 19256,\n  \"generals</w>\": 30296,\n  \"generate</w>\": 16896,\n  \"generated</w>\": 19450,\n  \"generates</w>\": 33938,\n  \"generating</w>\": 23882,\n  \"generation\": 41211,\n  \"generation</w>\": 4883,\n  \"generational</w>\": 34506,\n  \"generations</w>\": 12247,\n  \"generative</w>\": 29472,\n  \"generator</w>\": 19399,\n  \"generators</w>\": 41917,\n  \"generic</w>\": 26978,\n  \"generosity</w>\": 23015,\n  \"generous</w>\": 12570,\n  \"generously</w>\": 35113,\n  \"genes</w>\": 19683,\n  \"genesis</w>\": 13518,\n  \"genetic\": 47746,\n  \"genetic</w>\": 13578,\n  \"genetically</w>\": 36745,\n  \"genetics</w>\": 18276,\n  \"geneva</w>\": 14799,\n  \"genevie\": 41633,\n  \"genevieve</w>\": 46584,\n  \"geni\": 22334,\n  \"genic</w>\": 15750,\n  \"genie</w>\": 24221,\n  \"genital</w>\": 32960,\n  \"genius</w>\": 8235,\n  \"geniuses</w>\": 41406,\n  \"geno\": 41544,\n  \"geno</w>\": 46776,\n  \"genoa</w>\": 43993,\n  \"genoci\": 14687,\n  \"genocide</w>\": 15903,\n  \"genome</w>\": 23991,\n  \"genomic</w>\": 44371,\n  \"genomics</w>\": 26227,\n  \"genre</w>\": 14249,\n  \"genres</w>\": 30340,\n  \"gens</w>\": 17449,\n  \"gent\": 3685,\n  \"gent</w>\": 7139,\n  \"gente</w>\": 34325,\n  \"gentle\": 7262,\n  \"gentle</w>\": 13577,\n  \"gentleman</w>\": 13293,\n  \"gentlemen</w>\": 11692,\n  \"gently</w>\": 17187,\n  \"gento</w>\": 28320,\n  \"gentri\": 41148,\n  \"gentry</w>\": 47225,\n  \"gents</w>\": 18862,\n  \"genu\": 9182,\n  \"genuine</w>\": 12184,\n  \"genuinely</w>\": 20006,\n  \"genus</w>\": 38161,\n  \"geny</w>\": 35323,\n  \"geo\": 5038,\n  \"geo</w>\": 11604,\n  \"geocaching</w>\": 47908,\n  \"geof\": 20629,\n  \"geoff\": 33697,\n  \"geoff</w>\": 20386,\n  \"geoffrey</w>\": 29520,\n  \"geograph\": 45920,\n  \"geographic</w>\": 22635,\n  \"geographical</w>\": 39380,\n  \"geography</w>\": 17101,\n  \"geological</w>\": 38380,\n  \"geology</w>\": 21578,\n  \"geom\": 46135,\n  \"geome\": 12958,\n  \"geometric</w>\": 22419,\n  \"geometry</w>\": 21731,\n  \"geon\": 20844,\n  \"geon</w>\": 7295,\n  \"geons</w>\": 15914,\n  \"geopol\": 39758,\n  \"geor\": 2549,\n  \"georg</w>\": 43126,\n  \"george\": 8377,\n  \"george</w>\": 3296,\n  \"georges</w>\": 25042,\n  \"georgetown</w>\": 22970,\n  \"georgie</w>\": 42115,\n  \"georgina</w>\": 43892,\n  \"geospatial</w>\": 46238,\n  \"geothermal</w>\": 38413,\n  \"geous</w>\": 3068,\n  \"ger\": 1291,\n  \"ger</w>\": 1502,\n  \"gera</w>\": 48867,\n  \"gerald\": 29901,\n  \"gerald</w>\": 13269,\n  \"gerard\": 35979,\n  \"gerard</w>\": 20826,\n  \"gerber</w>\": 45058,\n  \"gered</w>\": 40179,\n  \"geri\": 41664,\n  \"geri</w>\": 46214,\n  \"gering</w>\": 24077,\n  \"germain</w>\": 38786,\n  \"german\": 14972,\n  \"german</w>\": 4710,\n  \"germans</w>\": 28400,\n  \"germany</w>\": 4464,\n  \"germin\": 44721,\n  \"germs</w>\": 47731,\n  \"geronimo</w>\": 45171,\n  \"gerrard</w>\": 26538,\n  \"gerry\": 29825,\n  \"gerry</w>\": 23026,\n  \"gers</w>\": 3314,\n  \"gertrude</w>\": 46950,\n  \"gervais</w>\": 36527,\n  \"gery</w>\": 32845,\n  \"ges</w>\": 3316,\n  \"gest\": 11843,\n  \"gest</w>\": 2033,\n  \"gesture</w>\": 21780,\n  \"gestures</w>\": 43524,\n  \"get\": 5670,\n  \"get</w>\": 779,\n  \"geta\": 13155,\n  \"getaway</w>\": 16131,\n  \"gether</w>\": 27224,\n  \"getic</w>\": 20661,\n  \"getin\": 25822,\n  \"getit\": 44891,\n  \"getit</w>\": 48315,\n  \"getoutside</w>\": 35644,\n  \"gets\": 39448,\n  \"gets</w>\": 2127,\n  \"gett\": 6647,\n  \"gett</w>\": 27965,\n  \"gettable</w>\": 15620,\n  \"gette</w>\": 29800,\n  \"gettin</w>\": 13428,\n  \"getting\": 30885,\n  \"getting</w>\": 1500,\n  \"getty\": 31185,\n  \"getty</w>\": 13965,\n  \"gettys\": 35189,\n  \"gettysburg</w>\": 37062,\n  \"getyour\": 42159,\n  \"gey</w>\": 29289,\n  \"gf\": 28953,\n  \"gf</w>\": 10846,\n  \"gfriend</w>\": 35245,\n  \"gfs</w>\": 37553,\n  \"gg\": 1129,\n  \"gg</w>\": 3286,\n  \"gga</w>\": 26003,\n  \"ggan</w>\": 25626,\n  \"gge\": 21521,\n  \"gge</w>\": 31659,\n  \"gged</w>\": 6095,\n  \"gger\": 12367,\n  \"gger</w>\": 3493,\n  \"ggers</w>\": 7480,\n  \"ggg</w>\": 20143,\n  \"gggg</w>\": 33513,\n  \"ggi</w>\": 21662,\n  \"ggin</w>\": 17160,\n  \"gging</w>\": 4966,\n  \"ggins</w>\": 12444,\n  \"ggle\": 34981,\n  \"ggle</w>\": 11430,\n  \"ggled</w>\": 46328,\n  \"ggles</w>\": 14703,\n  \"ggling</w>\": 16523,\n  \"ggly</w>\": 39407,\n  \"ggs</w>\": 4797,\n  \"ggy\": 24935,\n  \"ggy</w>\": 6476,\n  \"gh\": 583,\n  \"gh</w>\": 790,\n  \"gha\": 10010,\n  \"gha</w>\": 25183,\n  \"gham\": 21456,\n  \"ghan\": 18945,\n  \"ghan</w>\": 6624,\n  \"ghana\": 30330,\n  \"ghana</w>\": 9731,\n  \"ghanaian</w>\": 34223,\n  \"ghani</w>\": 36699,\n  \"ghar\": 37334,\n  \"ghar</w>\": 36973,\n  \"ghat</w>\": 43989,\n  \"ghaz\": 37493,\n  \"ghc</w>\": 42139,\n  \"ghe\": 10754,\n  \"ghe</w>\": 28561,\n  \"ghead</w>\": 40783,\n  \"ghee</w>\": 34794,\n  \"gher\": 21542,\n  \"gher</w>\": 14796,\n  \"ghet\": 18447,\n  \"ghetti</w>\": 17485,\n  \"ghetto</w>\": 22403,\n  \"ghi\": 22436,\n  \"ghi</w>\": 22279,\n  \"ghibli</w>\": 40555,\n  \"ghj\": 38439,\n  \"ghlin</w>\": 24131,\n  \"gho\": 4307,\n  \"ghorn</w>\": 38094,\n  \"ghosh</w>\": 43279,\n  \"ghoshal</w>\": 49134,\n  \"ghost\": 11417,\n  \"ghost</w>\": 7108,\n  \"ghostbusters</w>\": 25462,\n  \"ghostly</w>\": 44901,\n  \"ghosts</w>\": 16737,\n  \"ghou\": 35843,\n  \"ghoul</w>\": 45302,\n  \"ghouse</w>\": 38238,\n  \"ghs</w>\": 14157,\n  \"ght\": 1413,\n  \"ght</w>\": 630,\n  \"ghted</w>\": 4963,\n  \"ghter</w>\": 2427,\n  \"ghters</w>\": 12994,\n  \"ghtful</w>\": 8334,\n  \"ghting</w>\": 3019,\n  \"ghtly</w>\": 6993,\n  \"ghtning</w>\": 39740,\n  \"ghton</w>\": 16353,\n  \"ghts</w>\": 1259,\n  \"ghty\": 20968,\n  \"ghty</w>\": 5866,\n  \"ghu\": 25808,\n  \"ghue</w>\": 45675,\n  \"ghyun</w>\": 25010,\n  \"ghz</w>\": 24325,\n  \"gi\": 707,\n  \"gi</w>\": 4478,\n  \"gia</w>\": 8864,\n  \"giac\": 35444,\n  \"giam\": 39623,\n  \"gian\": 17274,\n  \"gian</w>\": 12866,\n  \"gianni</w>\": 46752,\n  \"giant\": 23668,\n  \"giant</w>\": 4687,\n  \"giants</w>\": 7076,\n  \"giar\": 34241,\n  \"gib\": 9816,\n  \"gibb\": 18964,\n  \"gibbons</w>\": 31974,\n  \"gibbs</w>\": 26488,\n  \"gibility</w>\": 33297,\n  \"gible</w>\": 13159,\n  \"gibr\": 20206,\n  \"gibraltar</w>\": 23988,\n  \"gibson\": 37420,\n  \"gibson</w>\": 12178,\n  \"gic\": 27900,\n  \"gic</w>\": 2570,\n  \"gical</w>\": 32973,\n  \"gically</w>\": 26320,\n  \"gid\": 36774,\n  \"gid</w>\": 21413,\n  \"giddy</w>\": 40894,\n  \"gideon</w>\": 43867,\n  \"gidi</w>\": 30603,\n  \"gie\": 11459,\n  \"gie</w>\": 3991,\n  \"gier</w>\": 28974,\n  \"gies</w>\": 5505,\n  \"gif\": 11363,\n  \"gif</w>\": 11677,\n  \"gifford</w>\": 47850,\n  \"gifs</w>\": 37643,\n  \"gift\": 20569,\n  \"gift</w>\": 2733,\n  \"gifted</w>\": 15110,\n  \"giftide\": 20152,\n  \"giftideas</w>\": 23487,\n  \"gifting</w>\": 39546,\n  \"gifts</w>\": 5836,\n  \"gig\": 26981,\n  \"gig</w>\": 7471,\n  \"gigab\": 34530,\n  \"gigan\": 24104,\n  \"gigantic</w>\": 31507,\n  \"giggle</w>\": 36426,\n  \"giggles</w>\": 42731,\n  \"giggs</w>\": 44692,\n  \"gigi\": 44106,\n  \"gigi</w>\": 26171,\n  \"gigs</w>\": 20316,\n  \"gil\": 3997,\n  \"gil</w>\": 10088,\n  \"gila</w>\": 46952,\n  \"gilbert</w>\": 14154,\n  \"gilded</w>\": 44341,\n  \"giles</w>\": 24802,\n  \"gill\": 14280,\n  \"gill</w>\": 12003,\n  \"gille\": 29610,\n  \"gilles</w>\": 39590,\n  \"gillespie</w>\": 36242,\n  \"gillette</w>\": 38603,\n  \"gilli\": 13695,\n  \"gillian</w>\": 28753,\n  \"gills</w>\": 48851,\n  \"gilmore</w>\": 27603,\n  \"gilt</w>\": 44378,\n  \"gim\": 31284,\n  \"gimm\": 40692,\n  \"gimme</w>\": 21525,\n  \"gin\": 3374,\n  \"gin</w>\": 4941,\n  \"gina</w>\": 15604,\n  \"gine\": 27482,\n  \"ging\": 10829,\n  \"ging</w>\": 3905,\n  \"ginger\": 16287,\n  \"ginger</w>\": 9718,\n  \"gingerbread</w>\": 23692,\n  \"gini</w>\": 35768,\n  \"gino</w>\": 36521,\n  \"gins</w>\": 18328,\n  \"gio\": 16329,\n  \"gio</w>\": 8050,\n  \"gion</w>\": 41226,\n  \"gior\": 14920,\n  \"giorgio</w>\": 33271,\n  \"giorno</w>\": 33310,\n  \"gios</w>\": 41927,\n  \"gious</w>\": 14419,\n  \"giov\": 21404,\n  \"giovanni</w>\": 26574,\n  \"gipp\": 41351,\n  \"gir\": 1077,\n  \"gir</w>\": 25481,\n  \"gira\": 16949,\n  \"giraffe</w>\": 22826,\n  \"giri</w>\": 31709,\n  \"girl\": 3914,\n  \"girl</w>\": 1611,\n  \"girlfriend</w>\": 8217,\n  \"girlfriends</w>\": 30736,\n  \"girlpower</w>\": 37433,\n  \"girls\": 15480,\n  \"girls</w>\": 1917,\n  \"girly</w>\": 29605,\n  \"giro\": 39664,\n  \"giro</w>\": 26454,\n  \"girona</w>\": 47842,\n  \"giroud</w>\": 41177,\n  \"gis\": 16266,\n  \"gis</w>\": 12773,\n  \"gist</w>\": 21241,\n  \"git\": 16060,\n  \"git</w>\": 20918,\n  \"gita</w>\": 40838,\n  \"github</w>\": 31196,\n  \"giu\": 17931,\n  \"giuli\": 29762,\n  \"giuliani</w>\": 47739,\n  \"giuse\": 29385,\n  \"giuseppe</w>\": 33563,\n  \"give\": 4120,\n  \"give</w>\": 1781,\n  \"giveaway</w>\": 5310,\n  \"giveaways</w>\": 18974,\n  \"giveback</w>\": 41385,\n  \"given\": 33323,\n  \"given</w>\": 4302,\n  \"givenchy</w>\": 38245,\n  \"giver</w>\": 43339,\n  \"gives</w>\": 3926,\n  \"giveup</w>\": 35485,\n  \"giving\": 14673,\n  \"giving</w>\": 2339,\n  \"givingback</w>\": 49300,\n  \"givingtuesday</w>\": 23556,\n  \"giz\": 29237,\n  \"gk\": 38953,\n  \"gk</w>\": 18719,\n  \"gl\": 1849,\n  \"gl</w>\": 14751,\n  \"gla\": 1523,\n  \"gla</w>\": 36904,\n  \"glaci\": 14924,\n  \"glacial</w>\": 40782,\n  \"glacier</w>\": 19282,\n  \"glaciers</w>\": 42528,\n  \"glad\": 20841,\n  \"glad</w>\": 4761,\n  \"glades</w>\": 37432,\n  \"gladi\": 21742,\n  \"gladiator</w>\": 38477,\n  \"gladiators</w>\": 41087,\n  \"gladly</w>\": 41598,\n  \"gladys</w>\": 43168,\n  \"glam\": 8738,\n  \"glam</w>\": 16905,\n  \"glamorous</w>\": 22896,\n  \"glamour\": 42876,\n  \"glamour</w>\": 17499,\n  \"glamping</w>\": 46167,\n  \"glan\": 40482,\n  \"glan</w>\": 45844,\n  \"glance</w>\": 26557,\n  \"gland</w>\": 41441,\n  \"glar\": 48535,\n  \"glar</w>\": 41702,\n  \"glare</w>\": 46035,\n  \"glas\": 29935,\n  \"glas</w>\": 43654,\n  \"glasgo\": 6757,\n  \"glasgow\": 29990,\n  \"glasgow</w>\": 7363,\n  \"glass\": 16305,\n  \"glass</w>\": 3313,\n  \"glasses</w>\": 6116,\n  \"glaston\": 26848,\n  \"glastonbury</w>\": 28233,\n  \"glau\": 39171,\n  \"glaze</w>\": 28112,\n  \"glazed</w>\": 24122,\n  \"gle\": 7166,\n  \"gle</w>\": 2865,\n  \"glee\": 32379,\n  \"glee</w>\": 21614,\n  \"glen\": 6158,\n  \"glen</w>\": 11049,\n  \"glend\": 38332,\n  \"glendale</w>\": 33043,\n  \"glenn\": 32004,\n  \"glenn</w>\": 12861,\n  \"gler</w>\": 34649,\n  \"gley</w>\": 21998,\n  \"gli\": 5896,\n  \"gli</w>\": 28791,\n  \"glia</w>\": 22217,\n  \"glide</w>\": 37321,\n  \"glider</w>\": 41636,\n  \"glimp\": 12888,\n  \"glimpse</w>\": 13817,\n  \"glio</w>\": 29785,\n  \"glit\": 21079,\n  \"glitch</w>\": 29563,\n  \"glitter</w>\": 16528,\n  \"glitz</w>\": 44542,\n  \"glo\": 1721,\n  \"glo</w>\": 30474,\n  \"glob\": 13363,\n  \"global\": 6707,\n  \"global</w>\": 2779,\n  \"globalgoals</w>\": 33211,\n  \"globalhealth</w>\": 46751,\n  \"globalization</w>\": 47680,\n  \"globally</w>\": 17775,\n  \"globalwarming</w>\": 46017,\n  \"globe\": 19436,\n  \"globe</w>\": 9368,\n  \"globes</w>\": 38085,\n  \"glock</w>\": 38818,\n  \"glomer\": 43689,\n  \"gloom</w>\": 48594,\n  \"gloomy</w>\": 32199,\n  \"glori\": 7270,\n  \"gloria</w>\": 19244,\n  \"glorious</w>\": 9171,\n  \"glory\": 36107,\n  \"glory</w>\": 7285,\n  \"glos</w>\": 40633,\n  \"gloss\": 38258,\n  \"gloss</w>\": 22014,\n  \"glossy</w>\": 29802,\n  \"glou\": 15989,\n  \"gloucester\": 28133,\n  \"gloucester</w>\": 23835,\n  \"gloucestershire</w>\": 33789,\n  \"glove</w>\": 16078,\n  \"glover</w>\": 21594,\n  \"gloves</w>\": 12363,\n  \"glow\": 30472,\n  \"glow</w>\": 10111,\n  \"glowing</w>\": 18437,\n  \"glows</w>\": 48107,\n  \"glu\": 5952,\n  \"glu</w>\": 32281,\n  \"glucose</w>\": 34642,\n  \"glue</w>\": 22103,\n  \"glued</w>\": 38135,\n  \"gluten\": 15482,\n  \"gluten</w>\": 15524,\n  \"glutenfree</w>\": 16138,\n  \"gly\": 13027,\n  \"glycer\": 48914,\n  \"gm\": 18743,\n  \"gm</w>\": 5918,\n  \"gma</w>\": 18155,\n  \"gmail</w>\": 11119,\n  \"gman\": 41043,\n  \"gman</w>\": 36936,\n  \"gmb\": 35934,\n  \"gmb</w>\": 31799,\n  \"gmbh</w>\": 46877,\n  \"gmc</w>\": 27257,\n  \"gmo</w>\": 23486,\n  \"gms</w>\": 36987,\n  \"gmt</w>\": 13803,\n  \"gn\": 2455,\n  \"gn</w>\": 9831,\n  \"gna</w>\": 23009,\n  \"gnation</w>\": 45912,\n  \"gne</w>\": 25407,\n  \"gni\": 5104,\n  \"gnment</w>\": 25110,\n  \"gno\": 23376,\n  \"gno</w>\": 43686,\n  \"gnocchi</w>\": 48299,\n  \"gnome</w>\": 33643,\n  \"gnon</w>\": 20561,\n  \"go\": 650,\n  \"go</w>\": 861,\n  \"goa</w>\": 14399,\n  \"goal\": 9003,\n  \"goal</w>\": 3321,\n  \"goalie</w>\": 20723,\n  \"goalkeeper</w>\": 16601,\n  \"goals</w>\": 3295,\n  \"goalscorer</w>\": 43547,\n  \"goaltender</w>\": 44151,\n  \"goat\": 34082,\n  \"goat</w>\": 9530,\n  \"goats</w>\": 18393,\n  \"gob\": 29559,\n  \"gobeavs</w>\": 48285,\n  \"goblin</w>\": 26223,\n  \"goblue</w>\": 25232,\n  \"gobucks</w>\": 29175,\n  \"gocougs</w>\": 34202,\n  \"god\": 4190,\n  \"god</w>\": 1731,\n  \"godawgs</w>\": 40436,\n  \"godbless\": 46616,\n  \"godbless</w>\": 44007,\n  \"godd\": 16589,\n  \"goddamn</w>\": 28495,\n  \"goddard</w>\": 37827,\n  \"goddess</w>\": 10808,\n  \"godfather</w>\": 26222,\n  \"godfrey</w>\": 40148,\n  \"godis\": 38521,\n  \"godly</w>\": 42438,\n  \"gods\": 33620,\n  \"gods</w>\": 10328,\n  \"goducks</w>\": 35889,\n  \"godzilla</w>\": 23369,\n  \"goe\": 22084,\n  \"goers</w>\": 27784,\n  \"goes\": 43581,\n  \"goes</w>\": 2635,\n  \"gof\": 17537,\n  \"goff</w>\": 34399,\n  \"goftheday</w>\": 39360,\n  \"gofund\": 34445,\n  \"gofundme</w>\": 34686,\n  \"gog</w>\": 42949,\n  \"goggles</w>\": 31027,\n  \"gogh</w>\": 19697,\n  \"gogo</w>\": 22688,\n  \"gogreen</w>\": 36279,\n  \"gohawks</w>\": 34884,\n  \"goi</w>\": 24917,\n  \"goin</w>\": 13939,\n  \"going\": 25787,\n  \"going</w>\": 1245,\n  \"goku</w>\": 29550,\n  \"gol\": 1537,\n  \"gol</w>\": 18257,\n  \"gola</w>\": 41090,\n  \"gold\": 4999,\n  \"gold</w>\": 2209,\n  \"goldberg</w>\": 25161,\n  \"goldcoast</w>\": 34634,\n  \"golden\": 10763,\n  \"golden</w>\": 3878,\n  \"goldeng\": 20650,\n  \"goldenglobes</w>\": 26842,\n  \"goldfish</w>\": 40293,\n  \"goldie</w>\": 42805,\n  \"goldman</w>\": 27164,\n  \"golds\": 30526,\n  \"golds</w>\": 40283,\n  \"goldsmith</w>\": 40214,\n  \"gole\": 41297,\n  \"golf\": 9096,\n  \"golf</w>\": 3096,\n  \"golfclub</w>\": 45742,\n  \"golfer</w>\": 24579,\n  \"golfers</w>\": 28441,\n  \"golfing</w>\": 31379,\n  \"goli\": 29265,\n  \"goliath</w>\": 41602,\n  \"gom\": 7051,\n  \"goma</w>\": 46198,\n  \"gomes</w>\": 39128,\n  \"gomez</w>\": 16433,\n  \"gon\": 1854,\n  \"gon</w>\": 3379,\n  \"gona</w>\": 34835,\n  \"gone\": 35135,\n  \"gone</w>\": 3601,\n  \"gong</w>\": 28486,\n  \"gonna</w>\": 2562,\n  \"gonz\": 10587,\n  \"gonzaga</w>\": 36241,\n  \"gonzale\": 17512,\n  \"gonzales</w>\": 31265,\n  \"gonzalez</w>\": 18198,\n  \"goo\": 1381,\n  \"goo</w>\": 17882,\n  \"good\": 2185,\n  \"good</w>\": 886,\n  \"goodbye</w>\": 6968,\n  \"goodday\": 46284,\n  \"goode</w>\": 42076,\n  \"goodfood</w>\": 46844,\n  \"goodfriday</w>\": 40360,\n  \"goodie</w>\": 29213,\n  \"goodies</w>\": 13308,\n  \"goodluck</w>\": 19718,\n  \"goodman</w>\": 24146,\n  \"goodmorning</w>\": 14421,\n  \"goodness</w>\": 10531,\n  \"goodnight</w>\": 8540,\n  \"goodreads</w>\": 31629,\n  \"goods</w>\": 9340,\n  \"goodtimes</w>\": 22570,\n  \"goodvibes</w>\": 43146,\n  \"goodwill</w>\": 24902,\n  \"goodwin</w>\": 28080,\n  \"goodwood</w>\": 30008,\n  \"goody</w>\": 35937,\n  \"goodyear</w>\": 42858,\n  \"goofy</w>\": 26879,\n  \"goog\": 18581,\n  \"google\": 12195,\n  \"google</w>\": 3460,\n  \"googled</w>\": 40345,\n  \"googleplay</w>\": 37309,\n  \"goon</w>\": 15267,\n  \"goons</w>\": 30440,\n  \"goooo\": 35876,\n  \"goooo</w>\": 48957,\n  \"goose\": 21445,\n  \"goose</w>\": 13822,\n  \"goosebumps</w>\": 32254,\n  \"gop\": 18942,\n  \"gop</w>\": 6250,\n  \"gopack\": 46995,\n  \"gopackgo</w>\": 47719,\n  \"gopal</w>\": 47268,\n  \"gopdebate</w>\": 39806,\n  \"gopher\": 47750,\n  \"gopher</w>\": 48905,\n  \"gophers</w>\": 31957,\n  \"gopro</w>\": 17511,\n  \"gor\": 1747,\n  \"gor</w>\": 29827,\n  \"gordo</w>\": 47707,\n  \"gordon\": 20485,\n  \"gordon</w>\": 8244,\n  \"gore\": 30311,\n  \"gore</w>\": 17872,\n  \"gorg</w>\": 46815,\n  \"gorge\": 35548,\n  \"gorge</w>\": 20038,\n  \"gorgeous</w>\": 3241,\n  \"gori\": 12461,\n  \"goria</w>\": 43359,\n  \"gorilla\": 37910,\n  \"gorilla</w>\": 21994,\n  \"gorman</w>\": 35741,\n  \"goro</w>\": 44977,\n  \"gory</w>\": 7160,\n  \"gos\": 20517,\n  \"gos</w>\": 5693,\n  \"gosh</w>\": 15395,\n  \"gosling</w>\": 35320,\n  \"gosp\": 9617,\n  \"gospel</w>\": 11313,\n  \"goss\": 39734,\n  \"goss</w>\": 36924,\n  \"gossi\": 15684,\n  \"gossip</w>\": 18963,\n  \"got\": 10125,\n  \"got</w>\": 1005,\n  \"gota</w>\": 36693,\n  \"gotcha</w>\": 43275,\n  \"gote</w>\": 49345,\n  \"goth\": 48465,\n  \"goth</w>\": 20437,\n  \"gotham\": 46123,\n  \"gotham</w>\": 18299,\n  \"gothic</w>\": 15426,\n  \"goti\": 9497,\n  \"goto\": 39715,\n  \"gots</w>\": 35215,\n  \"gott\": 5089,\n  \"gott</w>\": 36466,\n  \"gotta</w>\": 4633,\n  \"gotten</w>\": 5889,\n  \"gotti</w>\": 41881,\n  \"gotv</w>\": 36089,\n  \"gou\": 10520,\n  \"gou</w>\": 36555,\n  \"gouache</w>\": 43314,\n  \"goul\": 33187,\n  \"gould</w>\": 31087,\n  \"gour\": 13580,\n  \"gourmet</w>\": 19111,\n  \"gov\": 4022,\n  \"gov</w>\": 4564,\n  \"gove</w>\": 36997,\n  \"govegan</w>\": 38886,\n  \"gover\": 10471,\n  \"gover</w>\": 16759,\n  \"govern\": 2351,\n  \"govern</w>\": 32404,\n  \"governance</w>\": 13386,\n  \"governing</w>\": 30946,\n  \"government</w>\": 3149,\n  \"governmental</w>\": 42609,\n  \"governments</w>\": 19582,\n  \"governor\": 17459,\n  \"governor</w>\": 6630,\n  \"governors</w>\": 26881,\n  \"govin\": 42451,\n  \"govt</w>\": 5345,\n  \"govuk</w>\": 28830,\n  \"gow\": 21885,\n  \"gow</w>\": 33788,\n  \"gowan</w>\": 31307,\n  \"gower</w>\": 43448,\n  \"gown</w>\": 13719,\n  \"gowns</w>\": 38029,\n  \"goyal</w>\": 35105,\n  \"gp\": 19329,\n  \"gp</w>\": 5051,\n  \"gpa</w>\": 24098,\n  \"gps</w>\": 13639,\n  \"gpu</w>\": 38561,\n  \"gq\": 40286,\n  \"gq</w>\": 31324,\n  \"gr\": 709,\n  \"gr</w>\": 6062,\n  \"gra\": 782,\n  \"gra</w>\": 15276,\n  \"grab</w>\": 4646,\n  \"grabbed</w>\": 22856,\n  \"grabbing</w>\": 26440,\n  \"grabs</w>\": 17076,\n  \"grac\": 11323,\n  \"grace\": 13225,\n  \"grace</w>\": 5142,\n  \"graced</w>\": 31894,\n  \"graceful</w>\": 25242,\n  \"graces</w>\": 38629,\n  \"graci\": 11174,\n  \"gracias</w>\": 16463,\n  \"gracie</w>\": 23235,\n  \"gracing</w>\": 37263,\n  \"gracious</w>\": 29044,\n  \"grad\": 19869,\n  \"grad</w>\": 7291,\n  \"gradable</w>\": 41529,\n  \"grade\": 45435,\n  \"grade</w>\": 3394,\n  \"graded</w>\": 13823,\n  \"grader</w>\": 23930,\n  \"graders</w>\": 10930,\n  \"grades</w>\": 10838,\n  \"gradient</w>\": 36885,\n  \"grading</w>\": 19016,\n  \"grads</w>\": 17811,\n  \"gradu\": 3230,\n  \"gradual</w>\": 45210,\n  \"gradually</w>\": 32192,\n  \"graduate</w>\": 6675,\n  \"graduated</w>\": 15128,\n  \"graduates</w>\": 12236,\n  \"graduating</w>\": 14819,\n  \"graduation</w>\": 8060,\n  \"grady</w>\": 33980,\n  \"graeme</w>\": 30192,\n  \"graf\": 46478,\n  \"graf</w>\": 39765,\n  \"graff\": 10656,\n  \"graffiti</w>\": 11676,\n  \"graft</w>\": 32698,\n  \"grafton</w>\": 47347,\n  \"graham\": 19805,\n  \"graham</w>\": 7711,\n  \"grail</w>\": 37184,\n  \"grain\": 44003,\n  \"grain</w>\": 12109,\n  \"grains</w>\": 25791,\n  \"gral</w>\": 25631,\n  \"gram\": 2949,\n  \"gram</w>\": 2338,\n  \"grammar</w>\": 16077,\n  \"grammy</w>\": 15388,\n  \"grammys</w>\": 18121,\n  \"grams</w>\": 6294,\n  \"gran\": 3892,\n  \"gran</w>\": 14493,\n  \"granada</w>\": 31172,\n  \"grand\": 3058,\n  \"grand</w>\": 2991,\n  \"grandad</w>\": 29148,\n  \"grandchildren</w>\": 36856,\n  \"granddaughter</w>\": 29460,\n  \"grande\": 37514,\n  \"grande</w>\": 10757,\n  \"grandes</w>\": 36382,\n  \"grandfather</w>\": 15346,\n  \"grandma</w>\": 10525,\n  \"grandmother</w>\": 17469,\n  \"grandpa</w>\": 14582,\n  \"grandparents</w>\": 21311,\n  \"grandprix</w>\": 39358,\n  \"grandson</w>\": 20766,\n  \"grandstand</w>\": 43172,\n  \"grange\": 45027,\n  \"grange</w>\": 23850,\n  \"granger</w>\": 42968,\n  \"granite</w>\": 18813,\n  \"grann</w>\": 45585,\n  \"granny</w>\": 22710,\n  \"granola</w>\": 34271,\n  \"grant\": 18682,\n  \"grant</w>\": 5442,\n  \"granted</w>\": 14156,\n  \"granth\": 41283,\n  \"grants</w>\": 15123,\n  \"grape\": 19131,\n  \"grape</w>\": 15959,\n  \"grapefruit</w>\": 28347,\n  \"grapes</w>\": 18580,\n  \"grapevine</w>\": 47619,\n  \"graph\": 1349,\n  \"graph</w>\": 4407,\n  \"graphene</w>\": 38387,\n  \"grapher</w>\": 14987,\n  \"graphers</w>\": 32088,\n  \"graphic\": 15653,\n  \"graphic</w>\": 4245,\n  \"graphical</w>\": 20878,\n  \"graphicdesign</w>\": 21907,\n  \"graphics</w>\": 9492,\n  \"graphies</w>\": 40164,\n  \"graphite</w>\": 29447,\n  \"graphs</w>\": 24670,\n  \"graphy</w>\": 4897,\n  \"grapp\": 30843,\n  \"gras\": 31517,\n  \"gras</w>\": 17584,\n  \"grasp</w>\": 34975,\n  \"grass\": 11584,\n  \"grass</w>\": 5922,\n  \"grasses</w>\": 46807,\n  \"grasshopper</w>\": 48894,\n  \"grassi</w>\": 42294,\n  \"grasso</w>\": 34808,\n  \"grassroots</w>\": 21991,\n  \"grassy</w>\": 44140,\n  \"grat\": 9221,\n  \"grate\": 32463,\n  \"grateful\": 45659,\n  \"grateful</w>\": 5730,\n  \"grati\": 36402,\n  \"gratis</w>\": 33638,\n  \"gratitude</w>\": 12614,\n  \"grav\": 20663,\n  \"grave\": 16606,\n  \"grave</w>\": 9981,\n  \"gravel</w>\": 27054,\n  \"graves</w>\": 17665,\n  \"graveyard</w>\": 31176,\n  \"gravit\": 26150,\n  \"gravitational</w>\": 45268,\n  \"gravity\": 47426,\n  \"gravity</w>\": 15160,\n  \"gravy</w>\": 21225,\n  \"gray\": 12703,\n  \"gray</w>\": 7048,\n  \"grays</w>\": 46848,\n  \"grayson\": 45831,\n  \"grayson</w>\": 25471,\n  \"grazi\": 42427,\n  \"grazie</w>\": 38698,\n  \"grazing</w>\": 29889,\n  \"grc</w>\": 44069,\n  \"gre\": 689,\n  \"gre</w>\": 17878,\n  \"grease</w>\": 24132,\n  \"greasy</w>\": 44376,\n  \"great\": 3265,\n  \"great</w>\": 830,\n  \"greate\": 31930,\n  \"greater\": 32725,\n  \"greater</w>\": 7033,\n  \"greatest\": 39080,\n  \"greatest</w>\": 4153,\n  \"greatly</w>\": 13978,\n  \"greatness</w>\": 14189,\n  \"greats</w>\": 21855,\n  \"greaves</w>\": 42350,\n  \"greco</w>\": 39103,\n  \"gree\": 9987,\n  \"gree</w>\": 30774,\n  \"greece</w>\": 6965,\n  \"greed</w>\": 26147,\n  \"greedy</w>\": 33301,\n  \"greek\": 23844,\n  \"greek</w>\": 6842,\n  \"greeks</w>\": 35866,\n  \"green\": 2762,\n  \"green</w>\": 1901,\n  \"greenberg</w>\": 46662,\n  \"greene</w>\": 16383,\n  \"greener</w>\": 31169,\n  \"greenery</w>\": 42493,\n  \"greenfield</w>\": 39924,\n  \"greeng\": 42077,\n  \"greenhouse</w>\": 20819,\n  \"greening</w>\": 48673,\n  \"greenland</w>\": 27345,\n  \"greenpeace</w>\": 44755,\n  \"greens</w>\": 10235,\n  \"greensboro</w>\": 33436,\n  \"greenville</w>\": 25156,\n  \"greenway</w>\": 35205,\n  \"greenwich</w>\": 18658,\n  \"greenwood</w>\": 25782,\n  \"greer</w>\": 34345,\n  \"greet\": 11042,\n  \"greet</w>\": 11997,\n  \"greeted</w>\": 24546,\n  \"greeting</w>\": 17754,\n  \"greetings</w>\": 11569,\n  \"greets</w>\": 25464,\n  \"greg\": 6894,\n  \"greg</w>\": 7943,\n  \"gregation</w>\": 20131,\n  \"gregg\": 39422,\n  \"gregg</w>\": 22929,\n  \"gregor\": 33856,\n  \"gregor</w>\": 16177,\n  \"gregory</w>\": 16253,\n  \"gren\": 13941,\n  \"gren</w>\": 20119,\n  \"grenade</w>\": 33679,\n  \"grenfell</w>\": 42107,\n  \"gres</w>\": 39670,\n  \"gress</w>\": 2752,\n  \"gret\": 30041,\n  \"greta</w>\": 33443,\n  \"gretchen</w>\": 45516,\n  \"grette</w>\": 38774,\n  \"grew</w>\": 10451,\n  \"grey\": 9190,\n  \"grey</w>\": 5046,\n  \"greyhound</w>\": 27363,\n  \"greyhounds</w>\": 45718,\n  \"greys</w>\": 44311,\n  \"greysanatomy</w>\": 36833,\n  \"gri\": 2169,\n  \"gri</w>\": 18484,\n  \"grid\": 29067,\n  \"grid</w>\": 9882,\n  \"gridi\": 41063,\n  \"gridiron</w>\": 47786,\n  \"grids</w>\": 46500,\n  \"grief</w>\": 21058,\n  \"grier</w>\": 22016,\n  \"griev\": 36400,\n  \"grieving</w>\": 42383,\n  \"griez\": 47962,\n  \"griezmann</w>\": 48396,\n  \"griff\": 17855,\n  \"griff</w>\": 35551,\n  \"griffi\": 28676,\n  \"griffin\": 46612,\n  \"griffin</w>\": 13161,\n  \"griffith</w>\": 24375,\n  \"griffiths</w>\": 34182,\n  \"gril\": 49091,\n  \"grill\": 44083,\n  \"grill</w>\": 9519,\n  \"grille</w>\": 34748,\n  \"grilled</w>\": 10691,\n  \"grilling</w>\": 28324,\n  \"grills</w>\": 39464,\n  \"grim\": 20383,\n  \"grim</w>\": 23635,\n  \"grime</w>\": 37101,\n  \"grimes</w>\": 25057,\n  \"grimm</w>\": 27865,\n  \"grims\": 34861,\n  \"grimsby</w>\": 41513,\n  \"grin\": 11033,\n  \"grin</w>\": 28697,\n  \"grinch</w>\": 40527,\n  \"grind\": 25730,\n  \"grind</w>\": 11810,\n  \"grinder</w>\": 31733,\n  \"grinding</w>\": 21541,\n  \"gring</w>\": 40135,\n  \"grip</w>\": 15521,\n  \"gripping</w>\": 34567,\n  \"grips</w>\": 27819,\n  \"gris</w>\": 29150,\n  \"grit\": 22037,\n  \"grit</w>\": 22087,\n  \"grits</w>\": 44307,\n  \"gritty</w>\": 33704,\n  \"grizz\": 14877,\n  \"grizz</w>\": 44088,\n  \"grizzlies</w>\": 25594,\n  \"grizzly</w>\": 29676,\n  \"grl</w>\": 48005,\n  \"gro\": 1464,\n  \"gro</w>\": 12691,\n  \"grocer\": 11633,\n  \"groceries</w>\": 32409,\n  \"grocery</w>\": 13826,\n  \"grom</w>\": 45284,\n  \"gron\": 22345,\n  \"groningen</w>\": 45639,\n  \"groo\": 9015,\n  \"groom\": 39883,\n  \"groom</w>\": 22813,\n  \"grooming</w>\": 25575,\n  \"groot</w>\": 37708,\n  \"groove\": 39484,\n  \"groove</w>\": 17680,\n  \"grooves</w>\": 43954,\n  \"groovy</w>\": 30143,\n  \"gros\": 26834,\n  \"gros</w>\": 32639,\n  \"gross\": 31080,\n  \"gross</w>\": 11541,\n  \"grosven\": 46911,\n  \"grote\": 47207,\n  \"grotto</w>\": 45260,\n  \"grou\": 1582,\n  \"groun\": 45110,\n  \"ground\": 9558,\n  \"ground</w>\": 2461,\n  \"groundbreaking</w>\": 21006,\n  \"grounded</w>\": 27799,\n  \"grounds</w>\": 8454,\n  \"groundwater</w>\": 39457,\n  \"group\": 19045,\n  \"group</w>\": 1771,\n  \"groupe</w>\": 47654,\n  \"groups</w>\": 6776,\n  \"grouse</w>\": 36327,\n  \"grove\": 31756,\n  \"grove</w>\": 7463,\n  \"grover</w>\": 31345,\n  \"groves</w>\": 27306,\n  \"grow\": 3179,\n  \"grow</w>\": 4559,\n  \"grower</w>\": 44925,\n  \"growers</w>\": 25689,\n  \"growing\": 28429,\n  \"growing</w>\": 4425,\n  \"growingup\": 43433,\n  \"growler</w>\": 47096,\n  \"grown\": 41762,\n  \"grown</w>\": 7120,\n  \"grows</w>\": 13352,\n  \"growth\": 17925,\n  \"growth</w>\": 4026,\n  \"growthhacking</w>\": 25963,\n  \"grp</w>\": 27321,\n  \"grt</w>\": 28557,\n  \"gru\": 5957,\n  \"grub</w>\": 34019,\n  \"grue\": 42047,\n  \"gruesome</w>\": 47111,\n  \"grum\": 45454,\n  \"grump\": 49015,\n  \"grumpy</w>\": 23610,\n  \"grun\": 16203,\n  \"grunge</w>\": 33745,\n  \"gry\": 16140,\n  \"gry</w>\": 5364,\n  \"gs\": 25818,\n  \"gs</w>\": 1345,\n  \"gsa</w>\": 40433,\n  \"gsc</w>\": 47751,\n  \"gshore</w>\": 43392,\n  \"gsm</w>\": 32181,\n  \"gsp</w>\": 49173,\n  \"gst</w>\": 22239,\n  \"gt\": 16151,\n  \"gt</w>\": 4725,\n  \"gta\": 14826,\n  \"gta</w>\": 15338,\n  \"gtaonline</w>\": 27292,\n  \"gtav</w>\": 27283,\n  \"gti</w>\": 39954,\n  \"gto</w>\": 39071,\n  \"gtr</w>\": 33407,\n  \"gts</w>\": 37338,\n  \"gtx</w>\": 35230,\n  \"gu\": 700,\n  \"gu</w>\": 12916,\n  \"gua</w>\": 23751,\n  \"guacam\": 37477,\n  \"guacamole</w>\": 40115,\n  \"guad\": 22966,\n  \"guadal\": 46097,\n  \"guadalu\": 36994,\n  \"guadalupe</w>\": 38360,\n  \"guam</w>\": 37325,\n  \"guan\": 44191,\n  \"guan</w>\": 42406,\n  \"guang\": 27019,\n  \"guangzhou</w>\": 37857,\n  \"guar\": 4119,\n  \"guaran\": 9242,\n  \"guarantee</w>\": 17421,\n  \"guaranteed</w>\": 14731,\n  \"guarantees</w>\": 40154,\n  \"guard\": 30776,\n  \"guard</w>\": 4901,\n  \"guarded</w>\": 40602,\n  \"guardi\": 12008,\n  \"guardia</w>\": 43628,\n  \"guardian\": 23713,\n  \"guardian</w>\": 9498,\n  \"guardians</w>\": 21479,\n  \"guarding</w>\": 24966,\n  \"guardiola</w>\": 32100,\n  \"guards</w>\": 12810,\n  \"guatem\": 19423,\n  \"guatemala</w>\": 21670,\n  \"guay\": 48591,\n  \"guay</w>\": 24247,\n  \"gubernat\": 41400,\n  \"gubernatorial</w>\": 41618,\n  \"gucci</w>\": 16779,\n  \"gud\": 48061,\n  \"gud</w>\": 22378,\n  \"gue\": 2030,\n  \"gue</w>\": 2917,\n  \"gued</w>\": 38893,\n  \"guel\": 23146,\n  \"guelph</w>\": 27660,\n  \"guer\": 10391,\n  \"guern\": 29277,\n  \"guernsey</w>\": 33982,\n  \"guerra</w>\": 38215,\n  \"guerrero</w>\": 31967,\n  \"guerrilla</w>\": 36715,\n  \"gues\": 39971,\n  \"gues</w>\": 12601,\n  \"guess\": 35506,\n  \"guess</w>\": 3135,\n  \"guessed</w>\": 28005,\n  \"guesses</w>\": 30623,\n  \"guessing</w>\": 21891,\n  \"guest\": 27349,\n  \"guest</w>\": 3781,\n  \"guests</w>\": 6212,\n  \"guet</w>\": 36797,\n  \"guetta</w>\": 45904,\n  \"guez</w>\": 12313,\n  \"gug\": 31358,\n  \"guggen\": 35086,\n  \"guggenheim</w>\": 37135,\n  \"gui\": 2587,\n  \"gui</w>\": 25746,\n  \"guid\": 11437,\n  \"guidance</w>\": 12508,\n  \"guide\": 21845,\n  \"guide</w>\": 3555,\n  \"guided</w>\": 13194,\n  \"guidelines</w>\": 16591,\n  \"guides</w>\": 14375,\n  \"guiding</w>\": 22759,\n  \"guido</w>\": 41818,\n  \"guil\": 5008,\n  \"guild\": 19755,\n  \"guild</w>\": 16597,\n  \"guildford</w>\": 34450,\n  \"guildhall</w>\": 47224,\n  \"guillau\": 41123,\n  \"guillaume</w>\": 45394,\n  \"guiller\": 33660,\n  \"guillermo</w>\": 39524,\n  \"guilt</w>\": 26354,\n  \"guilty</w>\": 9761,\n  \"guin\": 13284,\n  \"guin</w>\": 47863,\n  \"guine\": 13759,\n  \"guinea</w>\": 18537,\n  \"guinness</w>\": 16648,\n  \"guire</w>\": 18209,\n  \"guise</w>\": 42024,\n  \"guit\": 3759,\n  \"guitar\": 21746,\n  \"guitar</w>\": 5084,\n  \"guitarist</w>\": 13035,\n  \"guitars</w>\": 15023,\n  \"guj\": 34935,\n  \"gujar\": 12698,\n  \"gujarat</w>\": 14714,\n  \"guk</w>\": 20280,\n  \"gul\": 5530,\n  \"gul</w>\": 21350,\n  \"gula</w>\": 27426,\n  \"gular</w>\": 34969,\n  \"gulf\": 22101,\n  \"gulf</w>\": 11279,\n  \"gull\": 48764,\n  \"gull</w>\": 28778,\n  \"gulls</w>\": 37501,\n  \"gully</w>\": 46112,\n  \"gum\": 22041,\n  \"gum</w>\": 11235,\n  \"gumb\": 40147,\n  \"gumbo</w>\": 47126,\n  \"gummy</w>\": 34276,\n  \"gums</w>\": 46609,\n  \"gun\": 2748,\n  \"gun</w>\": 3496,\n  \"guna</w>\": 43333,\n  \"gundam</w>\": 26087,\n  \"gundy</w>\": 21162,\n  \"gunman</w>\": 32743,\n  \"gunmen</w>\": 44738,\n  \"gunn</w>\": 27473,\n  \"gunna</w>\": 24002,\n  \"gunnar</w>\": 45301,\n  \"gunner</w>\": 35285,\n  \"gunners</w>\": 37788,\n  \"guns</w>\": 7591,\n  \"gunsense</w>\": 44781,\n  \"gunshot</w>\": 49250,\n  \"gunsn\": 49028,\n  \"gup\": 38632,\n  \"gup</w>\": 47335,\n  \"gupta</w>\": 15905,\n  \"gur\": 3218,\n  \"gur</w>\": 30224,\n  \"gura</w>\": 46836,\n  \"gurgaon</w>\": 33240,\n  \"guri</w>\": 43888,\n  \"gurl</w>\": 25445,\n  \"gurmee\": 35482,\n  \"gurmeetramrahim</w>\": 36549,\n  \"guru\": 18629,\n  \"guru</w>\": 10800,\n  \"gurudev</w>\": 48647,\n  \"gus</w>\": 8018,\n  \"gust</w>\": 24629,\n  \"gusta\": 23024,\n  \"gusta</w>\": 44196,\n  \"gustav\": 32062,\n  \"gustav</w>\": 37921,\n  \"gustave</w>\": 43170,\n  \"gustavo</w>\": 45943,\n  \"gusto</w>\": 37937,\n  \"gusts</w>\": 20896,\n  \"gusty</w>\": 27589,\n  \"gut\": 24780,\n  \"gut</w>\": 13486,\n  \"guter\": 44963,\n  \"guterres</w>\": 48738,\n  \"guth\": 31696,\n  \"guthrie</w>\": 33164,\n  \"gutier\": 32773,\n  \"gutierrez</w>\": 33739,\n  \"guts</w>\": 25983,\n  \"gutted</w>\": 26524,\n  \"gutter</w>\": 40537,\n  \"guwa\": 43063,\n  \"guwahati</w>\": 45045,\n  \"guy\": 10008,\n  \"guy</w>\": 2149,\n  \"guyana</w>\": 45215,\n  \"guyen</w>\": 28031,\n  \"guys\": 43588,\n  \"guys</w>\": 1791,\n  \"guyz</w>\": 48170,\n  \"guzman</w>\": 37960,\n  \"gv\": 15462,\n  \"gv</w>\": 17336,\n  \"gw\": 7172,\n  \"gw</w>\": 15717,\n  \"gwen\": 32165,\n  \"gwen</w>\": 24182,\n  \"gwin\": 43005,\n  \"gwy\": 32226,\n  \"gwyne\": 36923,\n  \"gx</w>\": 40227,\n  \"gy\": 2168,\n  \"gy</w>\": 1164,\n  \"gya</w>\": 43214,\n  \"gyan</w>\": 43814,\n  \"gye\": 21728,\n  \"gyllen\": 49348,\n  \"gym\": 9902,\n  \"gym</w>\": 5222,\n  \"gymna\": 13517,\n  \"gymnasium</w>\": 42847,\n  \"gymnast</w>\": 42658,\n  \"gymnastics</w>\": 20116,\n  \"gyn</w>\": 39603,\n  \"gyne\": 45836,\n  \"gyp\": 40053,\n  \"gypsy</w>\": 22354,\n  \"gypt</w>\": 41921,\n  \"gz\": 45937,\n  \"gz</w>\": 35841,\n  \"gÃ¶\": 40778,\n  \"gÃ¼\": 31907,\n  \"h\": 71,\n  \"h</w>\": 327,\n  \"ha\": 560,\n  \"ha</w>\": 1429,\n  \"haa</w>\": 26814,\n  \"haal</w>\": 35869,\n  \"haan</w>\": 36284,\n  \"haar\": 45247,\n  \"haar</w>\": 35859,\n  \"haas</w>\": 27443,\n  \"haasan</w>\": 26601,\n  \"hab\": 20573,\n  \"hab</w>\": 20002,\n  \"haban\": 46225,\n  \"haber\": 44737,\n  \"habit\": 8491,\n  \"habit</w>\": 17215,\n  \"habitat</w>\": 11747,\n  \"habitats</w>\": 35344,\n  \"habits</w>\": 14540,\n  \"habs</w>\": 27489,\n  \"hac\": 20343,\n  \"hace</w>\": 43623,\n  \"haci\": 40674,\n  \"hack\": 6610,\n  \"hack</w>\": 11182,\n  \"hackathon</w>\": 25182,\n  \"hacked</w>\": 19575,\n  \"hacker</w>\": 22376,\n  \"hackers</w>\": 21498,\n  \"hacking</w>\": 12939,\n  \"hackney\": 48811,\n  \"hackney</w>\": 24928,\n  \"hacks</w>\": 19965,\n  \"had\": 10660,\n  \"had</w>\": 1100,\n  \"hadi</w>\": 39058,\n  \"hadid</w>\": 26415,\n  \"hadith</w>\": 46907,\n  \"hadley</w>\": 44995,\n  \"hadn</w>\": 21480,\n  \"hadoop</w>\": 43868,\n  \"hae\": 30723,\n  \"hae</w>\": 27193,\n  \"hafi\": 39914,\n  \"hag\": 26855,\n  \"hag</w>\": 43207,\n  \"hagan</w>\": 47489,\n  \"hagen</w>\": 14664,\n  \"hager\": 48773,\n  \"hagg\": 26324,\n  \"hague</w>\": 28988,\n  \"hah\": 18108,\n  \"hah</w>\": 13680,\n  \"haha\": 1913,\n  \"haha</w>\": 3060,\n  \"hahah\": 27253,\n  \"hahah</w>\": 15441,\n  \"hahaha</w>\": 4722,\n  \"hahahah\": 37513,\n  \"hahahah</w>\": 20096,\n  \"hahahaha\": 8058,\n  \"hahahaha</w>\": 9501,\n  \"hahahahah</w>\": 33334,\n  \"hahahahaha</w>\": 16347,\n  \"hahahahahaha</w>\": 26487,\n  \"hahahahahahaha</w>\": 43653,\n  \"hahahahahahahaha\": 36126,\n  \"hahahha</w>\": 49205,\n  \"hahn</w>\": 35596,\n  \"hai\": 8734,\n  \"hai</w>\": 5234,\n  \"haider</w>\": 42200,\n  \"haiku</w>\": 19542,\n  \"hail\": 15272,\n  \"hail</w>\": 8634,\n  \"hailed</w>\": 44604,\n  \"hailey</w>\": 27703,\n  \"hailing</w>\": 47288,\n  \"hails</w>\": 32571,\n  \"hailstate</w>\": 35063,\n  \"hain</w>\": 23861,\n  \"hair\": 4658,\n  \"hair</w>\": 2225,\n  \"haircare</w>\": 43682,\n  \"haircut</w>\": 14711,\n  \"hairdresser</w>\": 47468,\n  \"haired</w>\": 27202,\n  \"hairs</w>\": 27951,\n  \"hairstyle</w>\": 22324,\n  \"hairstyles</w>\": 40627,\n  \"hairy</w>\": 26513,\n  \"haiti</w>\": 17368,\n  \"haitian</w>\": 37577,\n  \"haj\": 27885,\n  \"haj</w>\": 43191,\n  \"haji</w>\": 41889,\n  \"hajj</w>\": 35576,\n  \"hak\": 25142,\n  \"hak</w>\": 40671,\n  \"haka</w>\": 44011,\n  \"hake\": 41663,\n  \"hal\": 1296,\n  \"hal</w>\": 8708,\n  \"hala</w>\": 25918,\n  \"halal</w>\": 34216,\n  \"halam\": 29061,\n  \"halamadrid</w>\": 31132,\n  \"halder</w>\": 32201,\n  \"hale\": 37038,\n  \"hale</w>\": 14701,\n  \"halen</w>\": 39204,\n  \"halep</w>\": 49017,\n  \"haley\": 37330,\n  \"haley</w>\": 16839,\n  \"half\": 7453,\n  \"half</w>\": 2349,\n  \"halftime</w>\": 13742,\n  \"halfway</w>\": 16736,\n  \"hali\": 9860,\n  \"hali</w>\": 43030,\n  \"halibut</w>\": 49030,\n  \"halifax</w>\": 13411,\n  \"hall\": 6850,\n  \"hall</w>\": 2140,\n  \"halla</w>\": 29569,\n  \"halle\": 27763,\n  \"halle</w>\": 32239,\n  \"hallelujah</w>\": 36993,\n  \"halli\": 32665,\n  \"hallmark\": 31040,\n  \"hallmark</w>\": 32053,\n  \"hallmarkchannel</w>\": 36840,\n  \"hallo\": 3463,\n  \"halloffame</w>\": 48578,\n  \"halloween\": 28537,\n  \"halloween</w>\": 3739,\n  \"halls</w>\": 18052,\n  \"hallucin\": 35385,\n  \"hallway</w>\": 26845,\n  \"halo\": 33331,\n  \"halo</w>\": 11918,\n  \"halsey</w>\": 34256,\n  \"halt</w>\": 25640,\n  \"halter</w>\": 47194,\n  \"halton</w>\": 45445,\n  \"ham\": 1522,\n  \"ham</w>\": 1714,\n  \"hama</w>\": 17944,\n  \"hamas</w>\": 14818,\n  \"hamburg</w>\": 18409,\n  \"hamburger</w>\": 33928,\n  \"hamid</w>\": 32377,\n  \"hamil\": 6725,\n  \"hamill\": 45784,\n  \"hamill</w>\": 48729,\n  \"hamillhimself</w>\": 47324,\n  \"hamilton\": 22448,\n  \"hamilton</w>\": 7684,\n  \"hamlet</w>\": 27722,\n  \"hamlin</w>\": 49326,\n  \"hamm</w>\": 46110,\n  \"hammer\": 15331,\n  \"hammer</w>\": 9401,\n  \"hammered</w>\": 37251,\n  \"hammers</w>\": 35649,\n  \"hammersmith</w>\": 42127,\n  \"hammock</w>\": 33682,\n  \"hammond</w>\": 21761,\n  \"hamont</w>\": 18518,\n  \"hamp\": 6665,\n  \"hamper</w>\": 27692,\n  \"hampshire</w>\": 16006,\n  \"hampstead</w>\": 37340,\n  \"hampton\": 36582,\n  \"hampton</w>\": 12285,\n  \"hamptons</w>\": 42415,\n  \"hamr</w>\": 47979,\n  \"hamradio</w>\": 36712,\n  \"hams</w>\": 25619,\n  \"hamster</w>\": 33313,\n  \"hamstring</w>\": 39990,\n  \"hamza</w>\": 45762,\n  \"han\": 1545,\n  \"han</w>\": 3565,\n  \"hana</w>\": 16801,\n  \"hand\": 1722,\n  \"hand</w>\": 2463,\n  \"handbag</w>\": 22654,\n  \"handbags</w>\": 35667,\n  \"handball</w>\": 27988,\n  \"handbook</w>\": 25147,\n  \"handcrafted</w>\": 22185,\n  \"handed</w>\": 10881,\n  \"handedly</w>\": 48656,\n  \"handel</w>\": 40072,\n  \"handful</w>\": 23725,\n  \"handheld</w>\": 26812,\n  \"handic\": 17812,\n  \"handicap</w>\": 27063,\n  \"handicapp\": 42349,\n  \"handing</w>\": 19196,\n  \"handle\": 43681,\n  \"handle</w>\": 7245,\n  \"handled</w>\": 26824,\n  \"handler</w>\": 29097,\n  \"handles</w>\": 22124,\n  \"handling</w>\": 14071,\n  \"handmade\": 18054,\n  \"handmade</w>\": 6737,\n  \"handmadehour</w>\": 25724,\n  \"handover</w>\": 46922,\n  \"hands</w>\": 3500,\n  \"handshake</w>\": 38418,\n  \"handsome</w>\": 7438,\n  \"handwriting</w>\": 29986,\n  \"handwritten</w>\": 35192,\n  \"handy</w>\": 13479,\n  \"hane</w>\": 28411,\n  \"hang\": 3351,\n  \"hang</w>\": 5592,\n  \"hangar</w>\": 33439,\n  \"hanged</w>\": 40807,\n  \"hanger</w>\": 28905,\n  \"hangin</w>\": 22670,\n  \"hanging</w>\": 4850,\n  \"hangout</w>\": 17572,\n  \"hangover</w>\": 20755,\n  \"hangs</w>\": 21785,\n  \"hani\": 39944,\n  \"hani</w>\": 18374,\n  \"hank\": 35993,\n  \"hank</w>\": 17655,\n  \"hanks</w>\": 29943,\n  \"hanley</w>\": 47284,\n  \"hann\": 5584,\n  \"hanna</w>\": 10075,\n  \"hannah\": 18622,\n  \"hannah</w>\": 9142,\n  \"hannel</w>\": 43477,\n  \"hanni\": 19493,\n  \"hannibal</w>\": 25149,\n  \"hannity</w>\": 24569,\n  \"hannover</w>\": 39976,\n  \"hanoi</w>\": 36134,\n  \"hanover</w>\": 33246,\n  \"hans\": 35172,\n  \"hans</w>\": 16628,\n  \"hansen</w>\": 19729,\n  \"hanson</w>\": 24602,\n  \"hant\": 40641,\n  \"hanuk\": 32774,\n  \"hanukkah</w>\": 34247,\n  \"hanuman</w>\": 46975,\n  \"hao</w>\": 27184,\n  \"hap\": 44981,\n  \"hap</w>\": 47988,\n  \"happ\": 784,\n  \"happen\": 21486,\n  \"happen</w>\": 4506,\n  \"happened</w>\": 4402,\n  \"happening</w>\": 4284,\n  \"happeningnow</w>\": 43107,\n  \"happenings</w>\": 41998,\n  \"happens</w>\": 4988,\n  \"happier</w>\": 14118,\n  \"happiest</w>\": 13811,\n  \"happily</w>\": 17316,\n  \"happiness</w>\": 5096,\n  \"happy\": 2952,\n  \"happy</w>\": 900,\n  \"happybirthday\": 9651,\n  \"happybirthday</w>\": 12207,\n  \"happydays</w>\": 25106,\n  \"happye\": 33922,\n  \"happyeaster</w>\": 38745,\n  \"happyfathersday</w>\": 43534,\n  \"happyfriday</w>\": 33340,\n  \"happyhalloween</w>\": 28750,\n  \"happyholidays</w>\": 32186,\n  \"happyhour</w>\": 32036,\n  \"happymonday</w>\": 47364,\n  \"happymothersday</w>\": 42425,\n  \"happynewyear</w>\": 18655,\n  \"happythanksgiving</w>\": 40593,\n  \"happyvalentinesday</w>\": 42403,\n  \"haps</w>\": 9114,\n  \"haq</w>\": 32445,\n  \"har\": 915,\n  \"har</w>\": 5888,\n  \"hara</w>\": 10367,\n  \"haram\": 35732,\n  \"haram</w>\": 22950,\n  \"haran</w>\": 27921,\n  \"harare</w>\": 43562,\n  \"haras\": 26644,\n  \"harass\": 16481,\n  \"harassed</w>\": 43067,\n  \"harassment</w>\": 16641,\n  \"harat</w>\": 28984,\n  \"harb\": 5856,\n  \"harbaugh</w>\": 45220,\n  \"harbor\": 40686,\n  \"harbor</w>\": 10202,\n  \"harbour\": 35430,\n  \"harbour</w>\": 10011,\n  \"harcourt</w>\": 48093,\n  \"hard\": 3312,\n  \"hard</w>\": 1626,\n  \"hardcover</w>\": 31123,\n  \"harden</w>\": 27350,\n  \"harder</w>\": 12274,\n  \"hardest</w>\": 15258,\n  \"hardin</w>\": 43802,\n  \"harding</w>\": 24382,\n  \"hardly</w>\": 17363,\n  \"hardro\": 28126,\n  \"hardrock\": 48365,\n  \"hardrock</w>\": 40739,\n  \"hards</w>\": 44048,\n  \"hardship</w>\": 45085,\n  \"hardt</w>\": 17922,\n  \"hardware</w>\": 11957,\n  \"hardwell</w>\": 45572,\n  \"hardwick</w>\": 46864,\n  \"hardwood</w>\": 28167,\n  \"hardwork\": 42554,\n  \"hardwork</w>\": 27404,\n  \"hardworking</w>\": 28095,\n  \"hardworkpaysoff</w>\": 49193,\n  \"hardy\": 48179,\n  \"hardy</w>\": 14113,\n  \"hare\": 27903,\n  \"hare</w>\": 18464,\n  \"harga</w>\": 39738,\n  \"hari\": 25472,\n  \"hari</w>\": 8981,\n  \"harlan</w>\": 49133,\n  \"harle\": 29096,\n  \"harlem</w>\": 17771,\n  \"harley\": 24702,\n  \"harley</w>\": 13632,\n  \"harleydavidson</w>\": 39183,\n  \"harlow</w>\": 34113,\n  \"harm\": 16656,\n  \"harm</w>\": 14452,\n  \"harman</w>\": 42434,\n  \"harmed</w>\": 39637,\n  \"harmful</w>\": 21725,\n  \"harmless</w>\": 44369,\n  \"harmon\": 10828,\n  \"harmon</w>\": 28729,\n  \"harmony</w>\": 10785,\n  \"harms</w>\": 46703,\n  \"harne\": 43323,\n  \"harness</w>\": 23205,\n  \"harold</w>\": 16917,\n  \"harp</w>\": 27339,\n  \"harper\": 31288,\n  \"harper</w>\": 12634,\n  \"harri\": 6639,\n  \"harrier</w>\": 37372,\n  \"harriet</w>\": 27154,\n  \"harrington</w>\": 34340,\n  \"harris\": 25356,\n  \"harris</w>\": 6925,\n  \"harrisburg</w>\": 40590,\n  \"harrison\": 34389,\n  \"harrison</w>\": 10540,\n  \"harro\": 18939,\n  \"harrogate</w>\": 30842,\n  \"harrow</w>\": 38807,\n  \"harry\": 11094,\n  \"harry</w>\": 3600,\n  \"harrypotter</w>\": 23375,\n  \"harsh\": 30596,\n  \"harsh</w>\": 16944,\n  \"hart\": 9335,\n  \"hart</w>\": 7752,\n  \"hartford</w>\": 23434,\n  \"harth</w>\": 35619,\n  \"hartle\": 47482,\n  \"hartley</w>\": 31268,\n  \"hartman</w>\": 43294,\n  \"haru</w>\": 35099,\n  \"harvard\": 28118,\n  \"harvard</w>\": 12848,\n  \"harve\": 6405,\n  \"harvest\": 44495,\n  \"harvest</w>\": 8971,\n  \"harvested</w>\": 35899,\n  \"harvesting</w>\": 26674,\n  \"harvey\": 33289,\n  \"harvey</w>\": 9586,\n  \"harvick</w>\": 46983,\n  \"haryana</w>\": 27661,\n  \"has\": 13855,\n  \"has</w>\": 791,\n  \"hasan</w>\": 30049,\n  \"hasbro</w>\": 37405,\n  \"hash\": 6338,\n  \"hash</w>\": 19199,\n  \"hashi</w>\": 41831,\n  \"hashmi</w>\": 35852,\n  \"hashtag\": 34015,\n  \"hashtag</w>\": 9238,\n  \"hashtags</w>\": 23514,\n  \"haskell</w>\": 48550,\n  \"hasn</w>\": 9143,\n  \"hass\": 9298,\n  \"hassan</w>\": 15829,\n  \"hassee</w>\": 37117,\n  \"hassel\": 32204,\n  \"hassle</w>\": 35762,\n  \"hast\": 18146,\n  \"hasta</w>\": 36623,\n  \"hastings</w>\": 22035,\n  \"hat\": 3447,\n  \"hat</w>\": 3801,\n  \"hatch\": 24202,\n  \"hatch</w>\": 17809,\n  \"hatchback</w>\": 42348,\n  \"hatched</w>\": 42158,\n  \"hate\": 23546,\n  \"hate</w>\": 3753,\n  \"hated</w>\": 21298,\n  \"hateful</w>\": 36418,\n  \"hater</w>\": 36917,\n  \"haters</w>\": 14027,\n  \"hates</w>\": 14957,\n  \"hatfield</w>\": 38448,\n  \"hath\": 27894,\n  \"hath</w>\": 34416,\n  \"hathaway</w>\": 31801,\n  \"hati</w>\": 26045,\n  \"hating</w>\": 25668,\n  \"hatred</w>\": 19046,\n  \"hats</w>\": 9812,\n  \"hatt\": 8747,\n  \"hatton</w>\": 44861,\n  \"hau\": 5152,\n  \"hauer</w>\": 48751,\n  \"haul\": 23743,\n  \"haul</w>\": 12332,\n  \"hauled</w>\": 46620,\n  \"hauling</w>\": 43132,\n  \"haun\": 9676,\n  \"haunt</w>\": 31039,\n  \"haunted</w>\": 14944,\n  \"haunting</w>\": 24034,\n  \"haunts</w>\": 48035,\n  \"haus\": 41755,\n  \"haus</w>\": 16478,\n  \"hausen</w>\": 33338,\n  \"hauser</w>\": 46586,\n  \"haute</w>\": 28854,\n  \"hav\": 13443,\n  \"hav</w>\": 20447,\n  \"havan</w>\": 36304,\n  \"havana</w>\": 23357,\n  \"havas\": 46261,\n  \"have\": 18053,\n  \"have</w>\": 720,\n  \"haven\": 33074,\n  \"haven</w>\": 3871,\n  \"havent</w>\": 29130,\n  \"haver\": 27876,\n  \"haves</w>\": 49088,\n  \"havin</w>\": 31937,\n  \"having</w>\": 1977,\n  \"havoc</w>\": 24447,\n  \"haw\": 2788,\n  \"haw</w>\": 26954,\n  \"hawa\": 6067,\n  \"hawa</w>\": 46278,\n  \"hawai\": 15800,\n  \"hawaii\": 32413,\n  \"hawaii</w>\": 8265,\n  \"hawaiian</w>\": 17734,\n  \"hawan</w>\": 27765,\n  \"hawk\": 14704,\n  \"hawk</w>\": 8218,\n  \"hawke</w>\": 38178,\n  \"hawker</w>\": 39051,\n  \"hawkeye</w>\": 38666,\n  \"hawkeyes</w>\": 34266,\n  \"hawking</w>\": 33437,\n  \"hawkins</w>\": 19740,\n  \"hawks\": 44806,\n  \"hawks</w>\": 5841,\n  \"hawthorn</w>\": 45372,\n  \"hawthorne</w>\": 36730,\n  \"hay\": 4871,\n  \"hay</w>\": 11367,\n  \"haya</w>\": 41325,\n  \"hayat</w>\": 49360,\n  \"hayden</w>\": 19806,\n  \"haydn</w>\": 48207,\n  \"haye\": 36583,\n  \"hayes</w>\": 13555,\n  \"hayley\": 39986,\n  \"hayley</w>\": 22204,\n  \"haynes</w>\": 30496,\n  \"hays</w>\": 41524,\n  \"hayward</w>\": 29400,\n  \"haz\": 5040,\n  \"haz</w>\": 39921,\n  \"hazard\": 26174,\n  \"hazard</w>\": 15178,\n  \"hazardous</w>\": 27102,\n  \"hazards</w>\": 30639,\n  \"haze</w>\": 22785,\n  \"hazel\": 19838,\n  \"hazel</w>\": 21882,\n  \"hazelnut</w>\": 35816,\n  \"hazi</w>\": 22740,\n  \"hazmat</w>\": 48887,\n  \"hazrat</w>\": 45775,\n  \"hazy</w>\": 32655,\n  \"hb\": 6854,\n  \"hb</w>\": 12576,\n  \"hbcu</w>\": 40008,\n  \"hbd\": 25277,\n  \"hbd</w>\": 13594,\n  \"hbo</w>\": 15252,\n  \"hc\": 15831,\n  \"hc</w>\": 7821,\n  \"hcs</w>\": 46850,\n  \"hd\": 11601,\n  \"hd</w>\": 4414,\n  \"hdd</w>\": 40508,\n  \"hdmi</w>\": 33302,\n  \"hdr</w>\": 28065,\n  \"he\": 651,\n  \"he</w>\": 797,\n  \"hea\": 27150,\n  \"hea</w>\": 32790,\n  \"head\": 1603,\n  \"head</w>\": 1375,\n  \"headache</w>\": 23849,\n  \"headaches</w>\": 38025,\n  \"headband</w>\": 28556,\n  \"headed</w>\": 6153,\n  \"header</w>\": 11077,\n  \"heading</w>\": 4409,\n  \"headless</w>\": 45219,\n  \"headlights</w>\": 42422,\n  \"headline</w>\": 10891,\n  \"headliner</w>\": 38880,\n  \"headlines</w>\": 14706,\n  \"headlining</w>\": 26971,\n  \"headphone</w>\": 37524,\n  \"headphones</w>\": 14906,\n  \"headquarters</w>\": 13041,\n  \"heads</w>\": 5174,\n  \"headset</w>\": 23883,\n  \"headshot</w>\": 34890,\n  \"heal\": 1231,\n  \"heal</w>\": 13833,\n  \"healed</w>\": 31456,\n  \"healer</w>\": 38328,\n  \"healey</w>\": 38985,\n  \"healing</w>\": 9295,\n  \"heals</w>\": 32384,\n  \"health\": 2145,\n  \"health</w>\": 1728,\n  \"healthand\": 43704,\n  \"healthcare\": 42500,\n  \"healthcare</w>\": 6023,\n  \"healthier</w>\": 18242,\n  \"healthtech</w>\": 42694,\n  \"healthy\": 10330,\n  \"healthy</w>\": 3782,\n  \"healthye\": 31532,\n  \"healthyeating</w>\": 33761,\n  \"healthyfood</w>\": 39996,\n  \"healthylifestyle</w>\": 46254,\n  \"healthyliving</w>\": 27293,\n  \"healy</w>\": 34299,\n  \"heap</w>\": 34781,\n  \"heaps</w>\": 44446,\n  \"hear\": 2749,\n  \"hear</w>\": 2584,\n  \"heard</w>\": 4063,\n  \"hearing\": 46353,\n  \"hearing</w>\": 5541,\n  \"hearings</w>\": 33175,\n  \"hearn</w>\": 36613,\n  \"hears</w>\": 25395,\n  \"heart\": 4975,\n  \"heart</w>\": 1936,\n  \"heartbeat</w>\": 29154,\n  \"heartbreak</w>\": 29281,\n  \"heartbreaking</w>\": 21322,\n  \"heartbroken</w>\": 35383,\n  \"hearted</w>\": 21679,\n  \"heartfelt</w>\": 22904,\n  \"hearth\": 31563,\n  \"hearthstone</w>\": 34054,\n  \"hearti\": 29345,\n  \"hearties</w>\": 44572,\n  \"heartland</w>\": 31923,\n  \"heartless</w>\": 47022,\n  \"heartnews</w>\": 40426,\n  \"hearts</w>\": 5516,\n  \"heartw\": 30002,\n  \"heartwarming</w>\": 34080,\n  \"hearty</w>\": 26994,\n  \"heat\": 12175,\n  \"heat</w>\": 4403,\n  \"heated</w>\": 17057,\n  \"heater</w>\": 23246,\n  \"heath\": 12794,\n  \"heath</w>\": 11719,\n  \"heather\": 20230,\n  \"heather</w>\": 12470,\n  \"heathrow</w>\": 24171,\n  \"heating</w>\": 12478,\n  \"heaton</w>\": 34557,\n  \"heats</w>\": 36106,\n  \"heatwave</w>\": 25726,\n  \"heav\": 2409,\n  \"heaven\": 15520,\n  \"heaven</w>\": 5545,\n  \"heavenly</w>\": 19117,\n  \"heavens</w>\": 26026,\n  \"heavier</w>\": 31253,\n  \"heaviest</w>\": 33268,\n  \"heavily</w>\": 14123,\n  \"heavy\": 12048,\n  \"heavy</w>\": 4200,\n  \"heavymetal</w>\": 39804,\n  \"heavyweight</w>\": 17448,\n  \"heb\": 24700,\n  \"heb</w>\": 34515,\n  \"hebdo</w>\": 41817,\n  \"hebrew</w>\": 27298,\n  \"hebrides</w>\": 45121,\n  \"hebron</w>\": 45725,\n  \"hec\": 18932,\n  \"heck\": 22985,\n  \"heck</w>\": 14427,\n  \"hectares</w>\": 44162,\n  \"hectic</w>\": 37245,\n  \"hector</w>\": 25852,\n  \"hed\": 18271,\n  \"hedge\": 16229,\n  \"hedge</w>\": 20294,\n  \"hedgehog</w>\": 21940,\n  \"hedges</w>\": 41345,\n  \"hee\": 18364,\n  \"hee</w>\": 15773,\n  \"heechul</w>\": 42487,\n  \"heed</w>\": 15118,\n  \"heel\": 33646,\n  \"heel</w>\": 16861,\n  \"heels</w>\": 10909,\n  \"heem</w>\": 30061,\n  \"heer</w>\": 40473,\n  \"hef\": 29473,\n  \"heff\": 48756,\n  \"hefty</w>\": 48584,\n  \"heg\": 41995,\n  \"heh</w>\": 25834,\n  \"hehe\": 48723,\n  \"hehe</w>\": 10658,\n  \"hehehe</w>\": 24138,\n  \"hei\": 6101,\n  \"hei</w>\": 29051,\n  \"heidel\": 42927,\n  \"heidelberg</w>\": 48445,\n  \"heidi\": 44860,\n  \"heidi</w>\": 23867,\n  \"heifer</w>\": 48219,\n  \"heigh\": 43883,\n  \"height</w>\": 10788,\n  \"heights</w>\": 8418,\n  \"heim\": 10931,\n  \"heim</w>\": 9768,\n  \"heimer</w>\": 39517,\n  \"hein\": 15487,\n  \"hein</w>\": 43206,\n  \"heine\": 28742,\n  \"heineken</w>\": 36874,\n  \"heinrich</w>\": 47877,\n  \"heinz</w>\": 32359,\n  \"heir\": 27083,\n  \"heir</w>\": 34007,\n  \"heirloom</w>\": 34232,\n  \"heirs</w>\": 43834,\n  \"heis\": 21849,\n  \"heisman</w>\": 34537,\n  \"heist</w>\": 31035,\n  \"heit</w>\": 37255,\n  \"hel\": 919,\n  \"hel</w>\": 11579,\n  \"hela</w>\": 48212,\n  \"held</w>\": 4042,\n  \"hele</w>\": 46129,\n  \"helen\": 17576,\n  \"helen</w>\": 11291,\n  \"helena</w>\": 23109,\n  \"helene</w>\": 41591,\n  \"helens</w>\": 45940,\n  \"heli\": 33874,\n  \"heli</w>\": 40183,\n  \"helicop\": 10035,\n  \"helicopter</w>\": 11956,\n  \"helicopters</w>\": 26922,\n  \"helium</w>\": 46505,\n  \"helix</w>\": 35247,\n  \"hell\": 8410,\n  \"hell</w>\": 4141,\n  \"hella</w>\": 19800,\n  \"hellboy</w>\": 48428,\n  \"helle\": 48600,\n  \"helle</w>\": 46968,\n  \"hellenic</w>\": 42544,\n  \"heller</w>\": 44464,\n  \"hello\": 12887,\n  \"hello</w>\": 3306,\n  \"hells</w>\": 47989,\n  \"helly</w>\": 48690,\n  \"helm\": 47970,\n  \"helm</w>\": 19520,\n  \"helmet</w>\": 11122,\n  \"helmets</w>\": 21843,\n  \"help\": 8641,\n  \"help</w>\": 1318,\n  \"helped</w>\": 4845,\n  \"helper</w>\": 29321,\n  \"helpers</w>\": 36316,\n  \"helpful</w>\": 12695,\n  \"helping</w>\": 3875,\n  \"helpless</w>\": 47638,\n  \"helpline</w>\": 43101,\n  \"helps</w>\": 5144,\n  \"helsin\": 17842,\n  \"helsinki</w>\": 19626,\n  \"hem\": 20270,\n  \"hem</w>\": 11148,\n  \"hemi\": 14256,\n  \"hemi</w>\": 46856,\n  \"heming\": 30819,\n  \"hemingway</w>\": 33470,\n  \"hemisphere</w>\": 32767,\n  \"hemmings</w>\": 34882,\n  \"hemo\": 43788,\n  \"hemp\": 28225,\n  \"hemp</w>\": 18467,\n  \"hems\": 32451,\n  \"hemsworth</w>\": 39428,\n  \"hen\": 2385,\n  \"hen</w>\": 8047,\n  \"hence</w>\": 23640,\n  \"hend\": 11560,\n  \"hender\": 49248,\n  \"henderson</w>\": 14348,\n  \"hendrick</w>\": 45296,\n  \"hendricks</w>\": 37588,\n  \"hendrix</w>\": 23605,\n  \"henge</w>\": 33104,\n  \"henley</w>\": 27853,\n  \"henna</w>\": 39455,\n  \"hennessy</w>\": 42667,\n  \"henri\": 19431,\n  \"henri</w>\": 21610,\n  \"henrik</w>\": 35772,\n  \"henry\": 16018,\n  \"henry</w>\": 5508,\n  \"hens</w>\": 31742,\n  \"henson</w>\": 32935,\n  \"hep\": 17724,\n  \"hep</w>\": 48791,\n  \"hepat\": 23767,\n  \"hepatitis</w>\": 32169,\n  \"hepburn</w>\": 26348,\n  \"her\": 1223,\n  \"her</w>\": 899,\n  \"hera</w>\": 38724,\n  \"heral\": 37809,\n  \"herald\": 27625,\n  \"herald</w>\": 12851,\n  \"herb\": 26116,\n  \"herb</w>\": 15302,\n  \"herbal</w>\": 21868,\n  \"herbali\": 44087,\n  \"herbalife</w>\": 48364,\n  \"herbert</w>\": 19935,\n  \"herbs</w>\": 17320,\n  \"hercules</w>\": 26539,\n  \"herd\": 36142,\n  \"herd</w>\": 18589,\n  \"here\": 9134,\n  \"here</w>\": 763,\n  \"hered\": 47976,\n  \"hereford</w>\": 35543,\n  \"heres</w>\": 13566,\n  \"hereto\": 47673,\n  \"heri</w>\": 31392,\n  \"herit\": 4720,\n  \"heritag\": 38273,\n  \"heritage\": 20962,\n  \"heritage</w>\": 5455,\n  \"herman\": 31890,\n  \"herman</w>\": 21568,\n  \"hermann</w>\": 40942,\n  \"hermes</w>\": 34563,\n  \"hermi\": 35265,\n  \"hermione</w>\": 45502,\n  \"hermit</w>\": 43953,\n  \"hermitage</w>\": 47706,\n  \"hermo\": 40967,\n  \"hermosa</w>\": 42531,\n  \"hern\": 30571,\n  \"hern</w>\": 43576,\n  \"hernandez</w>\": 17707,\n  \"hero\": 7338,\n  \"hero</w>\": 3756,\n  \"heroes\": 38010,\n  \"heroes</w>\": 5506,\n  \"heroic</w>\": 24255,\n  \"heroin</w>\": 23841,\n  \"heroine</w>\": 27420,\n  \"heron</w>\": 22593,\n  \"heros</w>\": 37642,\n  \"herr</w>\": 38537,\n  \"herrera</w>\": 27755,\n  \"herring</w>\": 30211,\n  \"hers</w>\": 25359,\n  \"herself</w>\": 9207,\n  \"hersh\": 20379,\n  \"hershey</w>\": 29734,\n  \"hert\": 26744,\n  \"hertfordshire</w>\": 41070,\n  \"herts</w>\": 35784,\n  \"herty</w>\": 23454,\n  \"hertz</w>\": 49383,\n  \"hes\": 30553,\n  \"hes</w>\": 12784,\n  \"hesit\": 23933,\n  \"hesitate</w>\": 34967,\n  \"hess</w>\": 41888,\n  \"hester</w>\": 31105,\n  \"het\": 37527,\n  \"het</w>\": 19678,\n  \"hetero\": 26405,\n  \"heu\": 20105,\n  \"heughan</w>\": 32298,\n  \"hew\": 48141,\n  \"hew</w>\": 43051,\n  \"hewitt</w>\": 28871,\n  \"hex\": 16255,\n  \"hex</w>\": 31241,\n  \"hey\": 10759,\n  \"hey</w>\": 2189,\n  \"hez\": 34591,\n  \"hezbollah</w>\": 37636,\n  \"hf\": 26606,\n  \"hf</w>\": 20603,\n  \"hfx\": 47297,\n  \"hg\": 23986,\n  \"hg</w>\": 26237,\n  \"hgtv</w>\": 47657,\n  \"hh\": 3280,\n  \"hh</w>\": 5180,\n  \"hhh</w>\": 8281,\n  \"hhhh\": 19391,\n  \"hhhh</w>\": 13121,\n  \"hhhhh</w>\": 24246,\n  \"hhhhhh</w>\": 37278,\n  \"hhs</w>\": 27006,\n  \"hi\": 677,\n  \"hi</w>\": 1883,\n  \"hia</w>\": 20672,\n  \"hiatus</w>\": 27823,\n  \"hib\": 15922,\n  \"hiber\": 38799,\n  \"hibis\": 36226,\n  \"hibiscus</w>\": 36460,\n  \"hibition</w>\": 24658,\n  \"hibs</w>\": 42814,\n  \"hic\": 3549,\n  \"hic</w>\": 38079,\n  \"hick\": 14813,\n  \"hickman</w>\": 49148,\n  \"hickory</w>\": 29905,\n  \"hicks</w>\": 23429,\n  \"hid\": 15552,\n  \"hid</w>\": 14451,\n  \"hidalgo</w>\": 47464,\n  \"hidden\": 28305,\n  \"hidden</w>\": 7029,\n  \"hiddleston</w>\": 31444,\n  \"hide\": 17725,\n  \"hide</w>\": 9379,\n  \"hideous</w>\": 46588,\n  \"hides</w>\": 30800,\n  \"hiding</w>\": 11371,\n  \"hie</w>\": 15763,\n  \"hier\": 23433,\n  \"hier</w>\": 29913,\n  \"hierarchy</w>\": 44442,\n  \"hifi</w>\": 38168,\n  \"hig\": 38108,\n  \"higgins</w>\": 21783,\n  \"high\": 1487,\n  \"high</w>\": 1400,\n  \"higher</w>\": 5321,\n  \"highered</w>\": 27072,\n  \"highest</w>\": 5317,\n  \"highland\": 32244,\n  \"highland</w>\": 16062,\n  \"highlander</w>\": 46251,\n  \"highlanders</w>\": 40445,\n  \"highlands</w>\": 16883,\n  \"highlight</w>\": 8264,\n  \"highlighted</w>\": 22252,\n  \"highlighter</w>\": 45460,\n  \"highlighting</w>\": 17344,\n  \"highlights</w>\": 6173,\n  \"highly</w>\": 5302,\n  \"highness</w>\": 38694,\n  \"highs</w>\": 15144,\n  \"highschool</w>\": 23102,\n  \"highway\": 45344,\n  \"highway</w>\": 7620,\n  \"highways</w>\": 28007,\n  \"higu\": 39115,\n  \"hihi</w>\": 36240,\n  \"hii</w>\": 42315,\n  \"hijab</w>\": 31407,\n  \"hika</w>\": 41356,\n  \"hikari</w>\": 44624,\n  \"hike</w>\": 9404,\n  \"hiked</w>\": 36471,\n  \"hiker</w>\": 40947,\n  \"hikers</w>\": 46090,\n  \"hikes</w>\": 27076,\n  \"hiking</w>\": 9118,\n  \"hiko</w>\": 48708,\n  \"hil\": 3508,\n  \"hil</w>\": 17927,\n  \"hila</w>\": 38837,\n  \"hilar\": 37337,\n  \"hilari\": 7784,\n  \"hilarious</w>\": 8358,\n  \"hilariously</w>\": 43476,\n  \"hilary\": 45898,\n  \"hilary</w>\": 25415,\n  \"hilde\": 45382,\n  \"hill\": 3671,\n  \"hill</w>\": 2682,\n  \"hillary\": 13257,\n  \"hillary</w>\": 7074,\n  \"hillaryclinton</w>\": 15357,\n  \"hilli\": 32513,\n  \"hills\": 24178,\n  \"hills</w>\": 5289,\n  \"hillsborough</w>\": 32157,\n  \"hillside</w>\": 37194,\n  \"hilltop</w>\": 45858,\n  \"hilly</w>\": 32483,\n  \"hilton\": 33621,\n  \"hilton</w>\": 14012,\n  \"him\": 4128,\n  \"him</w>\": 1269,\n  \"himach\": 29132,\n  \"himachal</w>\": 35461,\n  \"himalay\": 17552,\n  \"himalayan</w>\": 30318,\n  \"himalayas</w>\": 32872,\n  \"hime</w>\": 45892,\n  \"himself</w>\": 4530,\n  \"himss</w>\": 41730,\n  \"hin\": 1676,\n  \"hin</w>\": 37930,\n  \"hina</w>\": 40571,\n  \"hinakhan</w>\": 45518,\n  \"hinch\": 49320,\n  \"hind\": 34460,\n  \"hind</w>\": 23293,\n  \"hindi</w>\": 14967,\n  \"hinds</w>\": 47859,\n  \"hindu\": 17587,\n  \"hindu</w>\": 12053,\n  \"hinduism</w>\": 40592,\n  \"hindus</w>\": 25701,\n  \"hindustan</w>\": 46553,\n  \"hines</w>\": 37462,\n  \"hing\": 37968,\n  \"hini</w>\": 33564,\n  \"hino</w>\": 45343,\n  \"hint</w>\": 11868,\n  \"hinton</w>\": 47165,\n  \"hints</w>\": 20594,\n  \"hio</w>\": 32897,\n  \"hip\": 11725,\n  \"hip</w>\": 6584,\n  \"hipho\": 8819,\n  \"hiphop\": 26598,\n  \"hiphop</w>\": 10914,\n  \"hipp\": 13607,\n  \"hippie</w>\": 28637,\n  \"hippo\": 28398,\n  \"hippo</w>\": 36729,\n  \"hips</w>\": 30191,\n  \"hipstamatic</w>\": 31002,\n  \"hipster</w>\": 19987,\n  \"hipsters</w>\": 48265,\n  \"hir\": 4959,\n  \"hir</w>\": 14728,\n  \"hira</w>\": 42577,\n  \"hire\": 32356,\n  \"hire</w>\": 8243,\n  \"hired</w>\": 17602,\n  \"hires</w>\": 24133,\n  \"hiring</w>\": 7835,\n  \"hiro\": 17396,\n  \"hiro</w>\": 20588,\n  \"hiroshima</w>\": 33867,\n  \"hirsch</w>\": 46967,\n  \"his\": 15211,\n  \"his</w>\": 787,\n  \"hism</w>\": 23502,\n  \"hispan\": 16843,\n  \"hispanic</w>\": 22676,\n  \"hist\": 21710,\n  \"hist</w>\": 13779,\n  \"histo\": 33479,\n  \"histor\": 2993,\n  \"historia</w>\": 46010,\n  \"historian</w>\": 20697,\n  \"historians</w>\": 35200,\n  \"historic\": 30195,\n  \"historic</w>\": 5726,\n  \"historical\": 34154,\n  \"historical</w>\": 8039,\n  \"historically</w>\": 30445,\n  \"histories</w>\": 34736,\n  \"history\": 11142,\n  \"history</w>\": 1695,\n  \"historymonth</w>\": 19356,\n  \"historyof\": 35905,\n  \"hit\": 5453,\n  \"hit</w>\": 2341,\n  \"hitch\": 22937,\n  \"hitch</w>\": 36203,\n  \"hitler</w>\": 16518,\n  \"hitman</w>\": 33290,\n  \"hits</w>\": 4712,\n  \"hitter</w>\": 23538,\n  \"hitters</w>\": 39724,\n  \"hitting</w>\": 7957,\n  \"hiv\": 44410,\n  \"hiv</w>\": 11018,\n  \"hive\": 38162,\n  \"hive</w>\": 18521,\n  \"hiya</w>\": 42393,\n  \"hk\": 22648,\n  \"hk</w>\": 12307,\n  \"hl\": 8297,\n  \"hl</w>\": 5956,\n  \"hle</w>\": 32389,\n  \"hler</w>\": 35418,\n  \"hm\": 17913,\n  \"hm</w>\": 7631,\n  \"hmm</w>\": 13725,\n  \"hmmm</w>\": 17032,\n  \"hmmmm</w>\": 34598,\n  \"hms</w>\": 14625,\n  \"hmu</w>\": 21630,\n  \"hmv</w>\": 49288,\n  \"hn\": 22905,\n  \"hn</w>\": 7478,\n  \"hns</w>\": 48412,\n  \"ho\": 606,\n  \"ho</w>\": 2971,\n  \"hoa</w>\": 37517,\n  \"hoar\": 31628,\n  \"hoax</w>\": 33438,\n  \"hob\": 18212,\n  \"hobart</w>\": 31646,\n  \"hobb\": 16175,\n  \"hobbies</w>\": 36370,\n  \"hobbit</w>\": 23207,\n  \"hobbs</w>\": 34343,\n  \"hobby\": 41120,\n  \"hobby</w>\": 17557,\n  \"hobo\": 34613,\n  \"hobo</w>\": 41334,\n  \"hoboken</w>\": 41568,\n  \"hoc</w>\": 35880,\n  \"hoch\": 43772,\n  \"hock\": 34914,\n  \"hock</w>\": 46574,\n  \"hockey\": 16499,\n  \"hockey</w>\": 4111,\n  \"hoco</w>\": 34771,\n  \"hod\": 31062,\n  \"hodg\": 23660,\n  \"hodge</w>\": 40585,\n  \"hodges</w>\": 35061,\n  \"hodgson</w>\": 37044,\n  \"hoe\": 32502,\n  \"hoe</w>\": 11262,\n  \"hoek</w>\": 40073,\n  \"hoes</w>\": 21164,\n  \"hof\": 20186,\n  \"hof</w>\": 12789,\n  \"hofer</w>\": 38654,\n  \"hoff\": 32860,\n  \"hoff</w>\": 22751,\n  \"hofficial</w>\": 41949,\n  \"hoffman</w>\": 22026,\n  \"hog\": 12075,\n  \"hog</w>\": 13255,\n  \"hogan</w>\": 19757,\n  \"hogg</w>\": 42005,\n  \"hogs</w>\": 23242,\n  \"hogwarts</w>\": 29168,\n  \"hoh</w>\": 43947,\n  \"hoi\": 39295,\n  \"hok\": 26942,\n  \"hok</w>\": 47167,\n  \"hokies</w>\": 35168,\n  \"hokkaido</w>\": 49145,\n  \"hol\": 1187,\n  \"hol</w>\": 7349,\n  \"hola</w>\": 28724,\n  \"hold\": 36496,\n  \"hold</w>\": 3254,\n  \"holden</w>\": 21869,\n  \"holder</w>\": 7862,\n  \"holders</w>\": 10074,\n  \"holding</w>\": 5050,\n  \"holdings</w>\": 24832,\n  \"holds</w>\": 7286,\n  \"hole\": 47242,\n  \"hole</w>\": 5341,\n  \"holes</w>\": 11266,\n  \"holi\": 2093,\n  \"holi</w>\": 21926,\n  \"holic</w>\": 16348,\n  \"holics</w>\": 29782,\n  \"holiday\": 13168,\n  \"holiday</w>\": 2878,\n  \"holidays</w>\": 5372,\n  \"holiness</w>\": 37259,\n  \"holistic</w>\": 26300,\n  \"holl\": 27699,\n  \"holla</w>\": 26500,\n  \"holland\": 31608,\n  \"holland</w>\": 9978,\n  \"hollande</w>\": 47690,\n  \"holler</w>\": 49047,\n  \"holli\": 24019,\n  \"holliday</w>\": 41624,\n  \"hollow\": 41221,\n  \"hollow</w>\": 16691,\n  \"holloway</w>\": 29435,\n  \"holly\": 12731,\n  \"holly</w>\": 11923,\n  \"hollyo\": 41525,\n  \"hollyoaks</w>\": 43352,\n  \"hollywood\": 24655,\n  \"hollywood</w>\": 5518,\n  \"holm\": 34758,\n  \"holm</w>\": 12739,\n  \"holme</w>\": 46149,\n  \"holmes</w>\": 12756,\n  \"holo\": 10317,\n  \"holocau\": 14688,\n  \"holocaust</w>\": 16476,\n  \"hols</w>\": 33344,\n  \"holt</w>\": 18868,\n  \"holtz</w>\": 44743,\n  \"holy\": 13910,\n  \"holy</w>\": 4874,\n  \"hom\": 906,\n  \"hom</w>\": 47397,\n  \"homa</w>\": 9557,\n  \"homage</w>\": 17746,\n  \"home\": 2143,\n  \"home</w>\": 1137,\n  \"homebrew</w>\": 35046,\n  \"homec\": 33869,\n  \"homecoming</w>\": 9008,\n  \"homedecor</w>\": 15695,\n  \"homedepot</w>\": 38707,\n  \"homegrown</w>\": 32554,\n  \"homeitems</w>\": 42972,\n  \"homeland</w>\": 21633,\n  \"homeless\": 18403,\n  \"homeless</w>\": 9661,\n  \"homelessness</w>\": 19851,\n  \"homemade</w>\": 7889,\n  \"homeof\": 48856,\n  \"homeowner</w>\": 37267,\n  \"homeowners</w>\": 29882,\n  \"homepage</w>\": 29828,\n  \"homer\": 29307,\n  \"homer</w>\": 16931,\n  \"homers</w>\": 38333,\n  \"homes\": 19480,\n  \"homes</w>\": 5416,\n  \"homeschool</w>\": 40994,\n  \"homestead</w>\": 32609,\n  \"homeswee\": 46298,\n  \"hometown</w>\": 12238,\n  \"homework</w>\": 12495,\n  \"homicide</w>\": 21520,\n  \"homie</w>\": 12540,\n  \"homies</w>\": 18893,\n  \"homme</w>\": 26193,\n  \"homo\": 18129,\n  \"homo</w>\": 30504,\n  \"homophobia</w>\": 37875,\n  \"homophobic</w>\": 40975,\n  \"homosexual</w>\": 44288,\n  \"homosexuality</w>\": 46720,\n  \"homs</w>\": 45413,\n  \"hon\": 1279,\n  \"hon</w>\": 10296,\n  \"honda</w>\": 8553,\n  \"honduras</w>\": 29715,\n  \"hone</w>\": 38640,\n  \"honest\": 7814,\n  \"honest</w>\": 9602,\n  \"honestly</w>\": 9155,\n  \"honesty</w>\": 24939,\n  \"honey\": 9843,\n  \"honey</w>\": 6406,\n  \"honeycomb</w>\": 48583,\n  \"honeymoon</w>\": 22527,\n  \"hong\": 12144,\n  \"hong</w>\": 8598,\n  \"hongkong</w>\": 16659,\n  \"honi</w>\": 17918,\n  \"honolulu</w>\": 28096,\n  \"honor\": 9206,\n  \"honor</w>\": 3402,\n  \"honorable</w>\": 19498,\n  \"honorary</w>\": 15675,\n  \"honore\": 25868,\n  \"honored</w>\": 5494,\n  \"honoree</w>\": 38993,\n  \"honorees</w>\": 43012,\n  \"honoring</w>\": 10771,\n  \"honors</w>\": 10248,\n  \"honour</w>\": 8240,\n  \"honourable</w>\": 29855,\n  \"honoured</w>\": 11945,\n  \"honouring</w>\": 37754,\n  \"honours</w>\": 22558,\n  \"hoo\": 2300,\n  \"hoo</w>\": 7920,\n  \"hood\": 18681,\n  \"hood</w>\": 3222,\n  \"hooded</w>\": 33631,\n  \"hoodie</w>\": 13444,\n  \"hoodies</w>\": 25974,\n  \"hoods</w>\": 16664,\n  \"hoof</w>\": 44555,\n  \"hook\": 30488,\n  \"hook</w>\": 10395,\n  \"hookah</w>\": 34214,\n  \"hooked</w>\": 18138,\n  \"hookem</w>\": 31465,\n  \"hooker</w>\": 37891,\n  \"hooking</w>\": 35240,\n  \"hooks</w>\": 25068,\n  \"hooligans</w>\": 48176,\n  \"hoon</w>\": 21368,\n  \"hooo</w>\": 44538,\n  \"hoop\": 31516,\n  \"hoop</w>\": 19573,\n  \"hooper</w>\": 35221,\n  \"hoops</w>\": 9351,\n  \"hoor\": 22155,\n  \"hooray</w>\": 24940,\n  \"hoos</w>\": 46462,\n  \"hoosier</w>\": 48886,\n  \"hoosiers</w>\": 42780,\n  \"hoot</w>\": 29164,\n  \"hoover</w>\": 25691,\n  \"hop\": 10848,\n  \"hop</w>\": 5833,\n  \"hope\": 5263,\n  \"hope</w>\": 1683,\n  \"hoped</w>\": 30628,\n  \"hopeful</w>\": 21453,\n  \"hopefully</w>\": 7602,\n  \"hopeless</w>\": 35586,\n  \"hopes</w>\": 10018,\n  \"hoping</w>\": 7207,\n  \"hopkins</w>\": 17821,\n  \"hopp\": 48839,\n  \"hopped</w>\": 34220,\n  \"hopper</w>\": 21748,\n  \"hopping</w>\": 27606,\n  \"hoppy</w>\": 38359,\n  \"hops</w>\": 21137,\n  \"hor\": 1407,\n  \"hor</w>\": 33847,\n  \"hora</w>\": 26013,\n  \"horace</w>\": 39282,\n  \"horan</w>\": 26857,\n  \"horde</w>\": 44947,\n  \"hore</w>\": 15380,\n  \"horiz\": 8144,\n  \"horizon\": 17924,\n  \"horizon</w>\": 11920,\n  \"horizons</w>\": 29685,\n  \"horizontal</w>\": 25775,\n  \"hormon\": 27096,\n  \"hormone</w>\": 31283,\n  \"hormones</w>\": 35162,\n  \"horn\": 15771,\n  \"horn</w>\": 9607,\n  \"horne</w>\": 38143,\n  \"horned</w>\": 34526,\n  \"hornet</w>\": 28739,\n  \"hornets</w>\": 20124,\n  \"horns</w>\": 22109,\n  \"horny</w>\": 32622,\n  \"horo\": 21500,\n  \"horoscope</w>\": 38453,\n  \"horowitz</w>\": 44669,\n  \"horri\": 8656,\n  \"horrible</w>\": 13726,\n  \"horribly</w>\": 45484,\n  \"horrific</w>\": 25314,\n  \"horrifying</w>\": 38901,\n  \"horror\": 13787,\n  \"horror</w>\": 5032,\n  \"horrormovies</w>\": 46682,\n  \"horrors</w>\": 33321,\n  \"horse\": 8562,\n  \"horse</w>\": 4558,\n  \"horseback</w>\": 43673,\n  \"horseman</w>\": 48885,\n  \"horsepower</w>\": 36882,\n  \"horser\": 23096,\n  \"horseracing</w>\": 30693,\n  \"horses</w>\": 8809,\n  \"horseshoe</w>\": 29242,\n  \"horst</w>\": 37182,\n  \"hort</w>\": 19482,\n  \"horticul\": 27141,\n  \"horticulture</w>\": 39998,\n  \"horton</w>\": 25945,\n  \"hortons</w>\": 38422,\n  \"horus</w>\": 29794,\n  \"hos\": 44320,\n  \"hos</w>\": 25008,\n  \"hosa</w>\": 44618,\n  \"hose</w>\": 19662,\n  \"hoseok</w>\": 38817,\n  \"hosp\": 2847,\n  \"hosp</w>\": 37853,\n  \"hospice</w>\": 20533,\n  \"hospit\": 7180,\n  \"hospital\": 29399,\n  \"hospital</w>\": 3851,\n  \"hospitality</w>\": 11657,\n  \"hospitalized</w>\": 36915,\n  \"hospitals</w>\": 13816,\n  \"host\": 17403,\n  \"host</w>\": 3953,\n  \"hostage</w>\": 26119,\n  \"hoste\": 31700,\n  \"hosted</w>\": 6017,\n  \"hostel</w>\": 27225,\n  \"hostess</w>\": 39692,\n  \"hostile</w>\": 28074,\n  \"hosting</w>\": 4857,\n  \"hosts</w>\": 8718,\n  \"hot\": 2851,\n  \"hot</w>\": 2069,\n  \"hota</w>\": 43289,\n  \"hotdog</w>\": 43758,\n  \"hotel\": 14591,\n  \"hotel</w>\": 2738,\n  \"hotels</w>\": 8654,\n  \"hotline</w>\": 30516,\n  \"hotmail</w>\": 46427,\n  \"hotness</w>\": 39803,\n  \"hotra</w>\": 27109,\n  \"hotro\": 47823,\n  \"hotspot</w>\": 36606,\n  \"hotspur</w>\": 35176,\n  \"hotter</w>\": 23591,\n  \"hottest</w>\": 8279,\n  \"hottie</w>\": 22804,\n  \"hotties</w>\": 46027,\n  \"hou\": 1011,\n  \"hou</w>\": 10122,\n  \"hough</w>\": 44529,\n  \"houghton</w>\": 36133,\n  \"houn\": 39273,\n  \"houn</w>\": 33607,\n  \"hound\": 33996,\n  \"hound</w>\": 13561,\n  \"hounds</w>\": 21178,\n  \"hounews</w>\": 48373,\n  \"hour\": 14930,\n  \"hour</w>\": 2232,\n  \"hourly</w>\": 30918,\n  \"hours</w>\": 2382,\n  \"house\": 4107,\n  \"house</w>\": 1212,\n  \"housed</w>\": 37518,\n  \"household</w>\": 12412,\n  \"households</w>\": 27167,\n  \"housel\": 48685,\n  \"housemusic</w>\": 28468,\n  \"houseof\": 19928,\n  \"houses</w>\": 7791,\n  \"housewives</w>\": 38523,\n  \"housing\": 32924,\n  \"housing</w>\": 5734,\n  \"houston\": 16564,\n  \"houston</w>\": 5663,\n  \"hov</w>\": 40291,\n  \"hove</w>\": 29674,\n  \"hoven</w>\": 35559,\n  \"hover\": 36252,\n  \"hover</w>\": 49016,\n  \"hovering</w>\": 43437,\n  \"how\": 7470,\n  \"how</w>\": 829,\n  \"howar\": 37672,\n  \"howard\": 25447,\n  \"howard</w>\": 7632,\n  \"howdy</w>\": 42216,\n  \"howe\": 8179,\n  \"howe</w>\": 24614,\n  \"howell</w>\": 25297,\n  \"hower</w>\": 32920,\n  \"however</w>\": 8467,\n  \"howi\": 47883,\n  \"howie</w>\": 42939,\n  \"howl</w>\": 40332,\n  \"howling</w>\": 41771,\n  \"howto\": 38191,\n  \"howto</w>\": 44060,\n  \"hoy\": 39625,\n  \"hoy</w>\": 13278,\n  \"hoya</w>\": 40978,\n  \"hp\": 23753,\n  \"hp</w>\": 6371,\n  \"hpa</w>\": 30983,\n  \"hpc</w>\": 39936,\n  \"hpe</w>\": 33787,\n  \"hpv</w>\": 45765,\n  \"hq\": 33571,\n  \"hq</w>\": 4693,\n  \"hr\": 4810,\n  \"hr</w>\": 4086,\n  \"hra\": 21320,\n  \"hra</w>\": 17212,\n  \"hrc</w>\": 18139,\n  \"hrh</w>\": 29103,\n  \"hri\": 21068,\n  \"hrithik</w>\": 45371,\n  \"hrs</w>\": 7157,\n  \"hru</w>\": 24127,\n  \"hrw</w>\": 25064,\n  \"hs\": 9343,\n  \"hs</w>\": 2466,\n  \"hsbc</w>\": 31508,\n  \"hsc</w>\": 43510,\n  \"hse</w>\": 34057,\n  \"hsfb</w>\": 29539,\n  \"hsv</w>\": 47311,\n  \"ht\": 11123,\n  \"ht</w>\": 7801,\n  \"hta\": 23452,\n  \"hta</w>\": 49384,\n  \"htafc</w>\": 42821,\n  \"htc\": 48942,\n  \"htc</w>\": 17635,\n  \"html</w>\": 18231,\n  \"hts</w>\": 43710,\n  \"htt\": 10620,\n  \"http</w>\": 15066,\n  \"https</w>\": 30901,\n  \"httr</w>\": 49372,\n  \"httweets</w>\": 43198,\n  \"hu\": 845,\n  \"hu</w>\": 5949,\n  \"hua</w>\": 22138,\n  \"huan</w>\": 41405,\n  \"huang</w>\": 32013,\n  \"huar\": 46916,\n  \"huawe\": 17709,\n  \"huawei</w>\": 21128,\n  \"hub\": 18775,\n  \"hub</w>\": 7028,\n  \"hubb\": 23183,\n  \"hubbard</w>\": 33288,\n  \"hubble</w>\": 30421,\n  \"hubby</w>\": 16947,\n  \"hubert</w>\": 40699,\n  \"hubs</w>\": 29327,\n  \"huck\": 22909,\n  \"huckabee</w>\": 43666,\n  \"hud\": 7169,\n  \"hud</w>\": 28563,\n  \"hudder\": 22629,\n  \"huddersfield</w>\": 24220,\n  \"huddle</w>\": 33435,\n  \"hudson\": 25873,\n  \"hudson</w>\": 11260,\n  \"hue\": 48380,\n  \"hue</w>\": 21465,\n  \"hues</w>\": 38003,\n  \"huey</w>\": 39663,\n  \"huff\": 18746,\n  \"huff</w>\": 44999,\n  \"huffpost\": 45887,\n  \"hug\": 40790,\n  \"hug</w>\": 10359,\n  \"huge</w>\": 2699,\n  \"hugely</w>\": 24648,\n  \"hugged</w>\": 41333,\n  \"hugging</w>\": 27058,\n  \"hugh\": 8723,\n  \"hugh</w>\": 15385,\n  \"hughes</w>\": 11418,\n  \"hugo\": 43935,\n  \"hugo</w>\": 17132,\n  \"hugs</w>\": 14248,\n  \"huh</w>\": 13348,\n  \"huhu</w>\": 32134,\n  \"hui</w>\": 29978,\n  \"hul\": 7911,\n  \"hula</w>\": 40145,\n  \"hulk</w>\": 17637,\n  \"hull\": 25154,\n  \"hull</w>\": 10375,\n  \"hulu</w>\": 24666,\n  \"hum\": 5823,\n  \"hum</w>\": 16283,\n  \"human\": 3175,\n  \"human</w>\": 2751,\n  \"humane</w>\": 20220,\n  \"humanitarian</w>\": 14170,\n  \"humanities</w>\": 24949,\n  \"humanity</w>\": 9420,\n  \"humanright\": 44385,\n  \"humanrights</w>\": 14148,\n  \"humans</w>\": 8324,\n  \"humb\": 9988,\n  \"humber\": 30602,\n  \"humber</w>\": 38063,\n  \"humble\": 38703,\n  \"humble</w>\": 10889,\n  \"humbled</w>\": 19682,\n  \"humbling</w>\": 39757,\n  \"humbold\": 24739,\n  \"humboldt</w>\": 31389,\n  \"hume</w>\": 38197,\n  \"humid\": 14778,\n  \"humid</w>\": 27447,\n  \"humidi\": 47666,\n  \"humidity</w>\": 15469,\n  \"humil\": 27205,\n  \"humili\": 25332,\n  \"humility</w>\": 28535,\n  \"humming\": 26515,\n  \"hummingbird</w>\": 33072,\n  \"hummus</w>\": 31785,\n  \"humor\": 29369,\n  \"humor</w>\": 11186,\n  \"humorous</w>\": 38173,\n  \"humour</w>\": 19161,\n  \"hump\": 16673,\n  \"hump</w>\": 24529,\n  \"humpback</w>\": 47662,\n  \"humpday</w>\": 27693,\n  \"humph\": 19767,\n  \"humphrey</w>\": 31549,\n  \"hun\": 1616,\n  \"hun</w>\": 10795,\n  \"hundre\": 8505,\n  \"hundred</w>\": 11898,\n  \"hundreds</w>\": 8879,\n  \"hung</w>\": 13825,\n  \"hungar\": 19420,\n  \"hungarian</w>\": 23325,\n  \"hungary</w>\": 17232,\n  \"hunger\": 25565,\n  \"hunger</w>\": 10184,\n  \"hungergames</w>\": 47507,\n  \"hungover</w>\": 41110,\n  \"hungry\": 44845,\n  \"hungry</w>\": 8451,\n  \"hunk</w>\": 33912,\n  \"hunt\": 16498,\n  \"hunt</w>\": 5774,\n  \"hunted</w>\": 37373,\n  \"hunter\": 16531,\n  \"hunter</w>\": 6099,\n  \"hunters</w>\": 16115,\n  \"hunting\": 27830,\n  \"hunting</w>\": 7507,\n  \"huntington</w>\": 23521,\n  \"hunts</w>\": 34041,\n  \"huntsville</w>\": 34544,\n  \"hur\": 2305,\n  \"hur</w>\": 34523,\n  \"hurd</w>\": 44915,\n  \"hurdle</w>\": 27486,\n  \"hurdles</w>\": 25440,\n  \"huri</w>\": 42486,\n  \"hurley</w>\": 30166,\n  \"hurling</w>\": 24738,\n  \"huron</w>\": 36147,\n  \"hurrah</w>\": 40599,\n  \"hurric\": 6543,\n  \"hurrican\": 36105,\n  \"hurricane\": 24051,\n  \"hurricane</w>\": 8782,\n  \"hurricanes</w>\": 22357,\n  \"hurry</w>\": 10921,\n  \"hurst\": 44742,\n  \"hurst</w>\": 11760,\n  \"hurt</w>\": 7413,\n  \"hurting</w>\": 24017,\n  \"hurts</w>\": 13059,\n  \"hus\": 5111,\n  \"hus</w>\": 35853,\n  \"husband</w>\": 6179,\n  \"husbands</w>\": 33612,\n  \"hush</w>\": 28728,\n  \"husk\": 19246,\n  \"huskers</w>\": 26946,\n  \"huskies</w>\": 20988,\n  \"husky</w>\": 20421,\n  \"huss\": 13733,\n  \"hussain</w>\": 17940,\n  \"hussein</w>\": 31336,\n  \"hust\": 27279,\n  \"hustle</w>\": 15709,\n  \"huston</w>\": 46480,\n  \"hut\": 20924,\n  \"hut</w>\": 16503,\n  \"hutch\": 31018,\n  \"hutch</w>\": 33203,\n  \"hutchinson</w>\": 35721,\n  \"hutto\": 27662,\n  \"hutton</w>\": 38321,\n  \"hv\": 17209,\n  \"hv</w>\": 18593,\n  \"hvac</w>\": 27492,\n  \"hw\": 27491,\n  \"hw</w>\": 18876,\n  \"hwa</w>\": 32352,\n  \"hwan</w>\": 44390,\n  \"hwang</w>\": 46775,\n  \"hwy</w>\": 13812,\n  \"hy\": 1441,\n  \"hy</w>\": 17827,\n  \"hya</w>\": 31600,\n  \"hyacin\": 47263,\n  \"hyatt\": 44856,\n  \"hyatt</w>\": 25146,\n  \"hybri\": 9084,\n  \"hybrid</w>\": 10156,\n  \"hyd</w>\": 42382,\n  \"hyde\": 46484,\n  \"hyde</w>\": 16343,\n  \"hyder\": 13960,\n  \"hyderabad</w>\": 14801,\n  \"hydr\": 8031,\n  \"hydra\": 44414,\n  \"hydra</w>\": 40420,\n  \"hydrange\": 43298,\n  \"hydrate</w>\": 29628,\n  \"hydrated</w>\": 23300,\n  \"hydrating</w>\": 47653,\n  \"hydration</w>\": 24174,\n  \"hydrau\": 26017,\n  \"hydraulic</w>\": 26189,\n  \"hydro\": 8368,\n  \"hydro</w>\": 22595,\n  \"hydrogen</w>\": 20974,\n  \"hye\": 32724,\n  \"hye</w>\": 25792,\n  \"hygi\": 16277,\n  \"hygiene</w>\": 19591,\n  \"hymn</w>\": 41350,\n  \"hyo\": 38960,\n  \"hyo</w>\": 35078,\n  \"hyp\": 16964,\n  \"hype\": 30353,\n  \"hype</w>\": 11111,\n  \"hyped</w>\": 22507,\n  \"hyper\": 7997,\n  \"hyper</w>\": 22146,\n  \"hypertension</w>\": 40698,\n  \"hypno\": 23355,\n  \"hypnosis</w>\": 48138,\n  \"hypnoti\": 40440,\n  \"hypo\": 10252,\n  \"hypocr\": 30711,\n  \"hypocri\": 25606,\n  \"hypocrisy</w>\": 26296,\n  \"hypocrite</w>\": 44125,\n  \"hypothe\": 46966,\n  \"hypothesis</w>\": 44956,\n  \"hyster\": 24235,\n  \"hysteria</w>\": 45965,\n  \"hysterical</w>\": 48627,\n  \"hyuk</w>\": 20452,\n  \"hyun\": 11831,\n  \"hyun</w>\": 8589,\n  \"hyundai</w>\": 17094,\n  \"hyung\": 46901,\n  \"hyung</w>\": 16551,\n  \"hz</w>\": 32533,\n  \"i\": 72,\n  \"i</w>\": 328,\n  \"ia\": 12486,\n  \"ia</w>\": 1073,\n  \"iac\": 32838,\n  \"iac</w>\": 44063,\n  \"iaf</w>\": 40789,\n  \"iah</w>\": 35052,\n  \"iain</w>\": 30103,\n  \"ial\": 11530,\n  \"ial</w>\": 1974,\n  \"ials</w>\": 20940,\n  \"iam\": 3579,\n  \"iam</w>\": 11415,\n  \"iambic\": 43668,\n  \"iambicpent</w>\": 43891,\n  \"iamsrk</w>\": 15103,\n  \"ian\": 7723,\n  \"ian</w>\": 1800,\n  \"ians</w>\": 6451,\n  \"iansomerhalder</w>\": 47077,\n  \"iart\": 18413,\n  \"iartg</w>\": 18669,\n  \"ias\": 32303,\n  \"ias</w>\": 14620,\n  \"ib\": 3962,\n  \"ib</w>\": 13554,\n  \"iba</w>\": 39763,\n  \"ibadan</w>\": 44691,\n  \"iban\": 47145,\n  \"ibc</w>\": 49014,\n  \"ibd</w>\": 40732,\n  \"iber\": 23814,\n  \"ibi\": 12337,\n  \"ibis</w>\": 47048,\n  \"ibiza</w>\": 13853,\n  \"ible</w>\": 37792,\n  \"ibles</w>\": 44102,\n  \"ibm\": 23415,\n  \"ibm</w>\": 13918,\n  \"ibn</w>\": 25729,\n  \"ibooks</w>\": 46887,\n  \"ibra\": 15476,\n  \"ibrahi\": 40350,\n  \"ibrahim</w>\": 20816,\n  \"ibrox</w>\": 46883,\n  \"ibs</w>\": 41993,\n  \"ibu\": 43587,\n  \"ibu</w>\": 46117,\n  \"ic\": 535,\n  \"ic</w>\": 1029,\n  \"ica</w>\": 2576,\n  \"icago</w>\": 37492,\n  \"ical\": 6082,\n  \"ical</w>\": 1110,\n  \"ically</w>\": 3161,\n  \"icals</w>\": 13999,\n  \"ican\": 17653,\n  \"ican</w>\": 5246,\n  \"icans</w>\": 20511,\n  \"icar\": 37211,\n  \"ication</w>\": 21629,\n  \"icc</w>\": 12945,\n  \"ice\": 2739,\n  \"ice</w>\": 733,\n  \"iceberg</w>\": 33662,\n  \"icec\": 13636,\n  \"icecream</w>\": 21334,\n  \"iced</w>\": 8049,\n  \"icelan\": 34114,\n  \"iceland\": 46716,\n  \"iceland</w>\": 11935,\n  \"icelandic</w>\": 34705,\n  \"ices</w>\": 1931,\n  \"ich\": 5333,\n  \"ich</w>\": 1232,\n  \"icha\": 31453,\n  \"iche\": 28972,\n  \"iche</w>\": 21143,\n  \"ichi\": 21669,\n  \"ichi</w>\": 14647,\n  \"ichick</w>\": 45022,\n  \"ichiro</w>\": 43787,\n  \"ici\": 948,\n  \"ici</w>\": 22189,\n  \"icia</w>\": 11774,\n  \"icial\": 17543,\n  \"icial</w>\": 6397,\n  \"ician\": 40522,\n  \"ician</w>\": 5374,\n  \"icians</w>\": 6264,\n  \"iciary</w>\": 21329,\n  \"icic\": 46006,\n  \"icide</w>\": 6558,\n  \"icides</w>\": 28253,\n  \"icing</w>\": 7676,\n  \"icio</w>\": 24207,\n  \"icion\": 45905,\n  \"icious</w>\": 3325,\n  \"icist</w>\": 21165,\n  \"icists</w>\": 42171,\n  \"icity</w>\": 7243,\n  \"ick\": 1168,\n  \"ick</w>\": 1068,\n  \"icked</w>\": 39799,\n  \"icker</w>\": 40357,\n  \"ickers</w>\": 30701,\n  \"icki</w>\": 35468,\n  \"icking</w>\": 6619,\n  \"icks</w>\": 3727,\n  \"icky</w>\": 11587,\n  \"icn</w>\": 44516,\n  \"ico\": 13697,\n  \"ico</w>\": 3040,\n  \"icom\": 17693,\n  \"icom</w>\": 29796,\n  \"icon\": 13843,\n  \"icon</w>\": 5646,\n  \"iconic</w>\": 6959,\n  \"icons</w>\": 15553,\n  \"icop\": 9389,\n  \"icos</w>\": 32002,\n  \"ics</w>\": 1324,\n  \"ict</w>\": 6349,\n  \"icted</w>\": 36515,\n  \"iction</w>\": 40560,\n  \"icton</w>\": 36548,\n  \"icu\": 45118,\n  \"icu</w>\": 30443,\n  \"icular</w>\": 40660,\n  \"icus</w>\": 31459,\n  \"icy\": 28780,\n  \"icy</w>\": 3495,\n  \"icymi</w>\": 5315,\n  \"icz</w>\": 46387,\n  \"id\": 1568,\n  \"id</w>\": 1014,\n  \"ida\": 11032,\n  \"ida</w>\": 11600,\n  \"idad</w>\": 22462,\n  \"idaho\": 48817,\n  \"idaho</w>\": 15165,\n  \"idal</w>\": 39684,\n  \"idan</w>\": 17929,\n  \"idc</w>\": 22386,\n  \"ide\": 1909,\n  \"ide</w>\": 14104,\n  \"idea</w>\": 3612,\n  \"ideal</w>\": 8789,\n  \"ideally</w>\": 48247,\n  \"ideals</w>\": 45096,\n  \"ideas</w>\": 4452,\n  \"ident\": 7113,\n  \"identi\": 6009,\n  \"identical</w>\": 25587,\n  \"identification</w>\": 23337,\n  \"identified</w>\": 15217,\n  \"identifies</w>\": 35712,\n  \"identify</w>\": 10949,\n  \"identifying</w>\": 23589,\n  \"identities</w>\": 34292,\n  \"identity</w>\": 8892,\n  \"ideology</w>\": 25840,\n  \"iders</w>\": 8980,\n  \"ides</w>\": 31791,\n  \"idf</w>\": 28987,\n  \"idge</w>\": 35567,\n  \"idh</w>\": 44325,\n  \"idi\": 9611,\n  \"idi</w>\": 14264,\n  \"idio\": 15994,\n  \"idiot</w>\": 14087,\n  \"idiots</w>\": 20856,\n  \"idk</w>\": 8972,\n  \"idle</w>\": 34754,\n  \"idlib</w>\": 36199,\n  \"ido\": 6763,\n  \"ido</w>\": 29641,\n  \"idol\": 24866,\n  \"idol</w>\": 8884,\n  \"idols</w>\": 21398,\n  \"idr</w>\": 10106,\n  \"idri\": 46435,\n  \"idris</w>\": 41312,\n  \"ids</w>\": 6111,\n  \"idu</w>\": 28655,\n  \"idy\": 33058,\n  \"idyl\": 44879,\n  \"idyllic</w>\": 46632,\n  \"ie\": 6789,\n  \"ie</w>\": 1718,\n  \"iec</w>\": 44773,\n  \"ied</w>\": 10059,\n  \"ieee</w>\": 39860,\n  \"iel\": 27875,\n  \"iel</w>\": 22729,\n  \"ience</w>\": 1542,\n  \"ient</w>\": 13115,\n  \"ier\": 33173,\n  \"ier</w>\": 5912,\n  \"iers</w>\": 45060,\n  \"ies\": 27912,\n  \"ies</w>\": 963,\n  \"iest</w>\": 10818,\n  \"if\": 8063,\n  \"if</w>\": 878,\n  \"ifa</w>\": 37574,\n  \"ifc</w>\": 36524,\n  \"ife\": 41172,\n  \"ife</w>\": 19590,\n  \"iff\": 35753,\n  \"ification</w>\": 35755,\n  \"ified</w>\": 41403,\n  \"ift\": 31143,\n  \"iftar</w>\": 35153,\n  \"ifu</w>\": 41523,\n  \"ify</w>\": 32807,\n  \"ig\": 1089,\n  \"ig</w>\": 3072,\n  \"iga</w>\": 16493,\n  \"igan</w>\": 27468,\n  \"igans</w>\": 25419,\n  \"igbo</w>\": 44591,\n  \"ige</w>\": 10806,\n  \"igen</w>\": 33070,\n  \"iger\": 30758,\n  \"iger</w>\": 20685,\n  \"igers\": 40755,\n  \"igers</w>\": 48928,\n  \"iggy\": 46219,\n  \"iggy</w>\": 27604,\n  \"igh\": 2712,\n  \"igh</w>\": 5451,\n  \"ight\": 14571,\n  \"ight</w>\": 897,\n  \"ighton</w>\": 35292,\n  \"igi</w>\": 21901,\n  \"igle\": 29912,\n  \"iglesias</w>\": 39432,\n  \"ign\": 7303,\n  \"ign</w>\": 2326,\n  \"ignati\": 37573,\n  \"ignatius</w>\": 48318,\n  \"igne</w>\": 45843,\n  \"ignite</w>\": 25210,\n  \"ignition</w>\": 36115,\n  \"igno\": 15375,\n  \"ignor\": 7653,\n  \"ignorance</w>\": 22735,\n  \"ignorant</w>\": 26933,\n  \"ignore</w>\": 12304,\n  \"ignored</w>\": 20428,\n  \"ignores</w>\": 40129,\n  \"ignoring</w>\": 23969,\n  \"igor</w>\": 33024,\n  \"igs</w>\": 31344,\n  \"igu\": 21279,\n  \"ih\": 12162,\n  \"ih</w>\": 34135,\n  \"ihear\": 13043,\n  \"iheart\": 30332,\n  \"iheartawards</w>\": 18811,\n  \"iheartradio</w>\": 25934,\n  \"ihop</w>\": 45511,\n  \"ihri\": 39108,\n  \"ihrithik</w>\": 39326,\n  \"ii\": 5103,\n  \"ii</w>\": 2329,\n  \"iii\": 46236,\n  \"iii</w>\": 6572,\n  \"iiii\": 20133,\n  \"iiii</w>\": 45393,\n  \"iiot</w>\": 30704,\n  \"iit\": 39330,\n  \"iit</w>\": 33238,\n  \"ij\": 7337,\n  \"ija</w>\": 42802,\n  \"ik\": 3903,\n  \"ik</w>\": 10177,\n  \"ika</w>\": 18188,\n  \"ike\": 12329,\n  \"ike</w>\": 19696,\n  \"ikea</w>\": 20528,\n  \"iker</w>\": 38653,\n  \"ikh\": 44655,\n  \"ikh</w>\": 12758,\n  \"iklan\": 32028,\n  \"iklan</w>\": 29584,\n  \"iko\": 35659,\n  \"iko</w>\": 39272,\n  \"ikon\": 38543,\n  \"ikon</w>\": 19156,\n  \"iku</w>\": 17780,\n  \"il\": 543,\n  \"il</w>\": 958,\n  \"ila</w>\": 4344,\n  \"ilah</w>\": 32211,\n  \"ilan\": 13889,\n  \"ilan</w>\": 28076,\n  \"iland</w>\": 20957,\n  \"ilation</w>\": 16180,\n  \"ilay\": 45093,\n  \"ild\": 22278,\n  \"ild</w>\": 17164,\n  \"ile\": 18398,\n  \"ile</w>\": 989,\n  \"iled</w>\": 3358,\n  \"iler\": 22446,\n  \"iler</w>\": 3615,\n  \"ilers</w>\": 8975,\n  \"iles</w>\": 42274,\n  \"ili\": 2076,\n  \"ili</w>\": 19601,\n  \"ilia</w>\": 14855,\n  \"ilian</w>\": 10272,\n  \"iliary</w>\": 32585,\n  \"ilife</w>\": 42835,\n  \"ilike\": 44989,\n  \"ilinan</w>\": 48497,\n  \"iling</w>\": 3299,\n  \"ilio</w>\": 47256,\n  \"ilion</w>\": 12561,\n  \"ilis</w>\": 43442,\n  \"ilit\": 11178,\n  \"ilities</w>\": 5446,\n  \"ility</w>\": 1787,\n  \"ilive</w>\": 26478,\n  \"ill\": 828,\n  \"ill</w>\": 660,\n  \"illa\": 8877,\n  \"illa</w>\": 3043,\n  \"illac</w>\": 17218,\n  \"illage</w>\": 48922,\n  \"illard</w>\": 21920,\n  \"illary</w>\": 33667,\n  \"illas</w>\": 23404,\n  \"ille\": 18213,\n  \"ille</w>\": 5559,\n  \"illed</w>\": 2527,\n  \"illeg\": 35808,\n  \"illegal</w>\": 7983,\n  \"illegally</w>\": 24466,\n  \"illegals</w>\": 40490,\n  \"iller\": 23341,\n  \"iller</w>\": 2956,\n  \"illers</w>\": 30547,\n  \"illery</w>\": 14514,\n  \"illes</w>\": 20037,\n  \"illi\": 1086,\n  \"illi</w>\": 25187,\n  \"illia</w>\": 48776,\n  \"illiams</w>\": 30301,\n  \"illian\": 48775,\n  \"illian</w>\": 17355,\n  \"illic\": 37152,\n  \"illicit</w>\": 40998,\n  \"illie</w>\": 26083,\n  \"illin</w>\": 35868,\n  \"illing</w>\": 2803,\n  \"illini</w>\": 28957,\n  \"illino\": 8920,\n  \"illinois</w>\": 9414,\n  \"illion\": 35542,\n  \"illion</w>\": 2035,\n  \"illness</w>\": 11145,\n  \"illnesses</w>\": 33861,\n  \"illo\": 34153,\n  \"illo</w>\": 7588,\n  \"illon</w>\": 20516,\n  \"ills</w>\": 1900,\n  \"illu\": 3025,\n  \"illumin\": 11446,\n  \"illuminate</w>\": 43261,\n  \"illuminated</w>\": 28814,\n  \"illuminati</w>\": 34551,\n  \"illuminating</w>\": 46601,\n  \"illumination</w>\": 43680,\n  \"illus</w>\": 41386,\n  \"illusion</w>\": 20318,\n  \"illusions</w>\": 47429,\n  \"illustr\": 6268,\n  \"illustrate</w>\": 37468,\n  \"illustrated</w>\": 13151,\n  \"illustrates</w>\": 38129,\n  \"illustrating</w>\": 43322,\n  \"illustration</w>\": 6052,\n  \"illustrations</w>\": 17852,\n  \"illustrator</w>\": 16649,\n  \"illustri\": 43116,\n  \"illustrious</w>\": 44304,\n  \"illy\": 11707,\n  \"illy</w>\": 9532,\n  \"ilm</w>\": 36326,\n  \"ilo\": 4220,\n  \"ilo</w>\": 14835,\n  \"ilove\": 7183,\n  \"ilove</w>\": 32914,\n  \"iloveart</w>\": 41114,\n  \"ilovemy\": 28863,\n  \"iloveyou</w>\": 28829,\n  \"ils</w>\": 1543,\n  \"ilt</w>\": 25334,\n  \"ilton</w>\": 28494,\n  \"ilu\": 27337,\n  \"ilwx</w>\": 43777,\n  \"ily\": 4881,\n  \"ily</w>\": 1026,\n  \"ilya</w>\": 33377,\n  \"ilysm</w>\": 29228,\n  \"im\": 732,\n  \"im</w>\": 1496,\n  \"ima\": 2414,\n  \"ima</w>\": 6432,\n  \"imac</w>\": 40675,\n  \"imacele\": 47281,\n  \"imag\": 2316,\n  \"image\": 24101,\n  \"image</w>\": 2867,\n  \"imagery</w>\": 22828,\n  \"images</w>\": 4952,\n  \"imagin\": 18178,\n  \"imaginary</w>\": 30417,\n  \"imagination</w>\": 13783,\n  \"imaginative</w>\": 47233,\n  \"imagine\": 35752,\n  \"imagine</w>\": 4826,\n  \"imagined</w>\": 18478,\n  \"imagines</w>\": 47379,\n  \"imaging</w>\": 14231,\n  \"imagining</w>\": 27384,\n  \"imam\": 37552,\n  \"imam</w>\": 19024,\n  \"iman\": 45684,\n  \"iman</w>\": 16247,\n  \"imation</w>\": 44566,\n  \"imax</w>\": 32066,\n  \"imc</w>\": 45616,\n  \"imdanielpadilla</w>\": 36357,\n  \"imdb</w>\": 30407,\n  \"ime\": 44937,\n  \"ime</w>\": 31151,\n  \"imel\": 31594,\n  \"iment</w>\": 37157,\n  \"imer</w>\": 21802,\n  \"imes</w>\": 47744,\n  \"imf</w>\": 28403,\n  \"img</w>\": 24157,\n  \"imi</w>\": 23559,\n  \"imin\": 23942,\n  \"imit\": 23462,\n  \"imitation</w>\": 41630,\n  \"imma</w>\": 19487,\n  \"immac\": 25085,\n  \"immaculate</w>\": 29649,\n  \"immature</w>\": 45531,\n  \"immedi\": 7366,\n  \"immediate</w>\": 14440,\n  \"immediately</w>\": 10108,\n  \"immen\": 17278,\n  \"immense</w>\": 22722,\n  \"immensely</w>\": 35013,\n  \"immer\": 13954,\n  \"immerse</w>\": 46240,\n  \"immersion</w>\": 31861,\n  \"immersive</w>\": 27521,\n  \"immigr\": 5851,\n  \"immigrant</w>\": 16474,\n  \"immigrants</w>\": 14460,\n  \"immigration</w>\": 9588,\n  \"imminent</w>\": 27299,\n  \"immort\": 39244,\n  \"immortal</w>\": 24717,\n  \"immun\": 8961,\n  \"immune</w>\": 15606,\n  \"immuni\": 44571,\n  \"immunity</w>\": 26254,\n  \"immuno\": 24361,\n  \"immunology</w>\": 44483,\n  \"immunotherapy</w>\": 39185,\n  \"imo\": 26349,\n  \"imo</w>\": 13738,\n  \"imp\": 3335,\n  \"imp</w>\": 31037,\n  \"impac\": 7573,\n  \"impact\": 33036,\n  \"impact</w>\": 3844,\n  \"impacted</w>\": 21424,\n  \"impactful</w>\": 41631,\n  \"impacting</w>\": 29359,\n  \"impacts</w>\": 15069,\n  \"impair\": 36451,\n  \"impaired</w>\": 28028,\n  \"impairment</w>\": 44501,\n  \"impala</w>\": 36641,\n  \"impe\": 23612,\n  \"impeach\": 16874,\n  \"impeach</w>\": 43497,\n  \"impeachment</w>\": 32979,\n  \"impeachtrump</w>\": 38006,\n  \"impecc\": 34511,\n  \"impeccable</w>\": 40111,\n  \"impending</w>\": 34486,\n  \"imper\": 7727,\n  \"imperative</w>\": 39833,\n  \"imperfect</w>\": 46034,\n  \"imperi\": 30911,\n  \"imperial\": 32425,\n  \"imperial</w>\": 12361,\n  \"imperialism</w>\": 48855,\n  \"imperson\": 25551,\n  \"implant</w>\": 33106,\n  \"implants</w>\": 32202,\n  \"imple\": 7423,\n  \"implement</w>\": 17966,\n  \"implementation</w>\": 15102,\n  \"implemented</w>\": 24315,\n  \"implementing</w>\": 22862,\n  \"implic\": 15269,\n  \"implications</w>\": 19229,\n  \"implo\": 40337,\n  \"impo\": 45704,\n  \"import\": 2336,\n  \"import</w>\": 16294,\n  \"importance</w>\": 6821,\n  \"important</w>\": 2829,\n  \"importantly</w>\": 21580,\n  \"imported</w>\": 28798,\n  \"imports</w>\": 25286,\n  \"impose</w>\": 35879,\n  \"imposed</w>\": 25871,\n  \"imposing</w>\": 42289,\n  \"impossible</w>\": 9815,\n  \"impre\": 3763,\n  \"impress</w>\": 20015,\n  \"impressed</w>\": 9689,\n  \"impression</w>\": 14468,\n  \"impressionism</w>\": 36114,\n  \"impressionist</w>\": 44904,\n  \"impressions</w>\": 22276,\n  \"impressive</w>\": 6634,\n  \"imprint</w>\": 43863,\n  \"imprison\": 22141,\n  \"imprisoned</w>\": 32999,\n  \"imprisonment</w>\": 39024,\n  \"impro\": 2531,\n  \"impromp\": 28100,\n  \"impromptu</w>\": 28611,\n  \"improv</w>\": 22868,\n  \"improve</w>\": 4971,\n  \"improved</w>\": 9446,\n  \"improvement</w>\": 10790,\n  \"improvements</w>\": 16320,\n  \"improves</w>\": 18035,\n  \"improving</w>\": 10381,\n  \"improvis\": 32343,\n  \"improvised</w>\": 40886,\n  \"impulse</w>\": 29683,\n  \"impy</w>\": 42690,\n  \"imran\": 19647,\n  \"imran</w>\": 19212,\n  \"imrankhan\": 25956,\n  \"imrankhanpti</w>\": 26688,\n  \"ims</w>\": 17800,\n  \"imsa</w>\": 37262,\n  \"imv\": 35731,\n  \"imvkohli</w>\": 37136,\n  \"imwith\": 26822,\n  \"imwithher</w>\": 32651,\n  \"in\": 512,\n  \"in</w>\": 530,\n  \"ina\": 18026,\n  \"ina</w>\": 1366,\n  \"inability</w>\": 47517,\n  \"inaccurate</w>\": 49192,\n  \"inaction</w>\": 41916,\n  \"inactive</w>\": 49274,\n  \"inadequate</w>\": 43403,\n  \"inak\": 46549,\n  \"inal</w>\": 19178,\n  \"inals</w>\": 26438,\n  \"inan</w>\": 26204,\n  \"inappropriate</w>\": 26722,\n  \"inari</w>\": 48620,\n  \"inary</w>\": 11337,\n  \"inas\": 36731,\n  \"inas</w>\": 12362,\n  \"inated</w>\": 38530,\n  \"ination</w>\": 4706,\n  \"inau\": 10832,\n  \"inaugu\": 11309,\n  \"inaugur\": 11448,\n  \"inaugural</w>\": 11340,\n  \"inaugurated</w>\": 29011,\n  \"inauguration</w>\": 16805,\n  \"inbound</w>\": 24420,\n  \"inbox</w>\": 18683,\n  \"inc\": 14570,\n  \"inc</w>\": 4438,\n  \"incan\": 45964,\n  \"incar\": 18070,\n  \"incarcer\": 26334,\n  \"incarcerated</w>\": 49178,\n  \"incarceration</w>\": 39887,\n  \"incase</w>\": 30463,\n  \"ince</w>\": 44303,\n  \"incen\": 13259,\n  \"incense</w>\": 35059,\n  \"incentive</w>\": 29024,\n  \"incentives</w>\": 29813,\n  \"inception</w>\": 36653,\n  \"inch</w>\": 6523,\n  \"incheon</w>\": 30645,\n  \"inches</w>\": 10809,\n  \"inci\": 5747,\n  \"incidence</w>\": 43371,\n  \"incident</w>\": 10103,\n  \"incidents</w>\": 22120,\n  \"incindia</w>\": 26161,\n  \"inciner\": 46434,\n  \"incl\": 27857,\n  \"incl</w>\": 13338,\n  \"inclined</w>\": 45470,\n  \"inclu\": 1738,\n  \"include</w>\": 5942,\n  \"included</w>\": 7414,\n  \"includes</w>\": 6197,\n  \"including</w>\": 2814,\n  \"inclusion</w>\": 12079,\n  \"inclusive</w>\": 13393,\n  \"income</w>\": 8044,\n  \"incoming</w>\": 15416,\n  \"incomparable</w>\": 36027,\n  \"incompetent</w>\": 45069,\n  \"incomplete</w>\": 34040,\n  \"incon\": 42372,\n  \"inconvenience</w>\": 40563,\n  \"incorpor\": 19335,\n  \"incorporate</w>\": 34168,\n  \"incorporated</w>\": 29494,\n  \"incorporating</w>\": 40303,\n  \"incorrect</w>\": 31872,\n  \"incre\": 1870,\n  \"increase</w>\": 5230,\n  \"increased</w>\": 9156,\n  \"increases</w>\": 13797,\n  \"increasing</w>\": 10270,\n  \"increasingly</w>\": 16106,\n  \"incredi\": 2883,\n  \"incredible\": 22128,\n  \"incredible</w>\": 3457,\n  \"incredibleindia</w>\": 24680,\n  \"incredibles</w>\": 48641,\n  \"incredibly</w>\": 9513,\n  \"incu\": 38830,\n  \"incub\": 24587,\n  \"incubator</w>\": 35736,\n  \"incumb\": 32246,\n  \"incumbent</w>\": 38038,\n  \"incur\": 42356,\n  \"ind\": 5386,\n  \"ind</w>\": 4655,\n  \"inda</w>\": 15710,\n  \"inde\": 2645,\n  \"indeed</w>\": 10031,\n  \"indefin\": 29501,\n  \"indefinitely</w>\": 43750,\n  \"independ\": 4147,\n  \"independence\": 23117,\n  \"independence</w>\": 7955,\n  \"independenceday</w>\": 25971,\n  \"independent\": 33844,\n  \"independent</w>\": 7088,\n  \"independently</w>\": 39831,\n  \"inder</w>\": 29225,\n  \"index\": 35209,\n  \"index</w>\": 9458,\n  \"indhoven</w>\": 44229,\n  \"indi\": 1098,\n  \"indi</w>\": 46536,\n  \"india\": 27067,\n  \"india</w>\": 1762,\n  \"indian\": 7685,\n  \"indian</w>\": 3606,\n  \"indiana</w>\": 8615,\n  \"indianapolis</w>\": 17196,\n  \"indianfootball</w>\": 45979,\n  \"indians</w>\": 10271,\n  \"indic\": 7136,\n  \"indicate</w>\": 26679,\n  \"indicated</w>\": 39416,\n  \"indicates</w>\": 29412,\n  \"indication</w>\": 38539,\n  \"indicator</w>\": 24776,\n  \"indicators</w>\": 30054,\n  \"indicted</w>\": 34992,\n  \"indictment</w>\": 42278,\n  \"indie\": 5260,\n  \"indie</w>\": 9383,\n  \"indiedev</w>\": 10863,\n  \"indiefilm</w>\": 22588,\n  \"indiegame</w>\": 17969,\n  \"indiegamedev</w>\": 40466,\n  \"indiegames</w>\": 35864,\n  \"indiegogo</w>\": 38057,\n  \"indies</w>\": 23618,\n  \"indiffe\": 41372,\n  \"indigen\": 8348,\n  \"indigenous</w>\": 9303,\n  \"indigo</w>\": 21002,\n  \"indira</w>\": 43887,\n  \"indirec\": 26398,\n  \"indirect</w>\": 35416,\n  \"indivi\": 5649,\n  \"individu\": 9574,\n  \"individual</w>\": 8512,\n  \"individually</w>\": 33782,\n  \"individuals</w>\": 11990,\n  \"indo\": 26303,\n  \"indo</w>\": 18297,\n  \"indom\": 42926,\n  \"indone\": 6180,\n  \"indonesia</w>\": 7229,\n  \"indonesian</w>\": 19593,\n  \"indoor\": 44478,\n  \"indoor</w>\": 9546,\n  \"indoors</w>\": 22973,\n  \"indore</w>\": 46143,\n  \"indu\": 2298,\n  \"induc\": 7973,\n  \"induced</w>\": 24103,\n  \"inducted</w>\": 20596,\n  \"inductee</w>\": 39558,\n  \"inductees</w>\": 44796,\n  \"induction</w>\": 18338,\n  \"indul\": 19402,\n  \"indulg\": 28388,\n  \"indulge</w>\": 24851,\n  \"indulgence</w>\": 40856,\n  \"indulgent</w>\": 49147,\n  \"industri\": 5082,\n  \"industrial\": 30853,\n  \"industrial</w>\": 7520,\n  \"industries</w>\": 11700,\n  \"industry\": 47407,\n  \"industry</w>\": 3318,\n  \"indv\": 16942,\n  \"indy\": 9821,\n  \"indy</w>\": 10098,\n  \"indycar</w>\": 20484,\n  \"indyref</w>\": 22569,\n  \"ine\": 855,\n  \"ine</w>\": 715,\n  \"ineau</w>\": 38122,\n  \"inec</w>\": 45214,\n  \"ined</w>\": 2038,\n  \"inee\": 43252,\n  \"inee</w>\": 7986,\n  \"inees</w>\": 13056,\n  \"ineffe\": 47202,\n  \"inely</w>\": 18234,\n  \"inem</w>\": 48876,\n  \"inema</w>\": 29232,\n  \"inen</w>\": 44365,\n  \"inequalities</w>\": 45507,\n  \"inequality</w>\": 17372,\n  \"iner\": 17438,\n  \"iner</w>\": 5155,\n  \"iners</w>\": 41863,\n  \"ines</w>\": 2137,\n  \"inese</w>\": 35966,\n  \"iness</w>\": 1463,\n  \"inet</w>\": 8121,\n  \"inette</w>\": 38911,\n  \"inev\": 19527,\n  \"inevit\": 45871,\n  \"inevitable</w>\": 25004,\n  \"inews</w>\": 24300,\n  \"inexpensive</w>\": 38614,\n  \"iney</w>\": 30254,\n  \"inez</w>\": 12700,\n  \"inf\": 1529,\n  \"inf</w>\": 35241,\n  \"infamous</w>\": 18688,\n  \"infan\": 17219,\n  \"infant</w>\": 19192,\n  \"infantry</w>\": 21655,\n  \"infants</w>\": 34726,\n  \"infe\": 7164,\n  \"infec\": 26088,\n  \"infected</w>\": 26136,\n  \"infection</w>\": 14774,\n  \"infections</w>\": 22227,\n  \"infectious</w>\": 29157,\n  \"infeld</w>\": 25035,\n  \"infer\": 16258,\n  \"inferno</w>\": 31290,\n  \"infertility</w>\": 40701,\n  \"infield</w>\": 48933,\n  \"infiltr\": 28683,\n  \"infin\": 6246,\n  \"infinite</w>\": 12748,\n  \"infiniti</w>\": 34644,\n  \"infinity\": 34863,\n  \"infinity</w>\": 12895,\n  \"infl\": 7627,\n  \"inflam\": 16080,\n  \"inflammation</w>\": 24893,\n  \"inflammatory</w>\": 26831,\n  \"inflatable</w>\": 30135,\n  \"inflation</w>\": 17497,\n  \"inflicted</w>\": 48188,\n  \"influ\": 4835,\n  \"influen\": 13229,\n  \"influence</w>\": 9199,\n  \"influenced</w>\": 21183,\n  \"influencer</w>\": 25013,\n  \"influencers</w>\": 29891,\n  \"influences</w>\": 24926,\n  \"influencing</w>\": 45126,\n  \"influential</w>\": 17553,\n  \"influenza</w>\": 39897,\n  \"info\": 5680,\n  \"info</w>\": 2222,\n  \"infographic</w>\": 10076,\n  \"infographics</w>\": 33172,\n  \"infor\": 31773,\n  \"inform\": 10241,\n  \"inform</w>\": 19449,\n  \"informal</w>\": 25705,\n  \"informat\": 29625,\n  \"informatics</w>\": 35685,\n  \"information</w>\": 3204,\n  \"informative</w>\": 19364,\n  \"informed</w>\": 13876,\n  \"informing</w>\": 45388,\n  \"informs</w>\": 48440,\n  \"infosec</w>\": 17863,\n  \"infr\": 29718,\n  \"infra\": 7312,\n  \"infra</w>\": 45877,\n  \"infrared</w>\": 22867,\n  \"infrastructure</w>\": 9034,\n  \"infringe\": 44882,\n  \"infringement</w>\": 48712,\n  \"infront</w>\": 37668,\n  \"infu\": 15048,\n  \"infuri\": 48461,\n  \"infused</w>\": 21461,\n  \"infusion</w>\": 43464,\n  \"ing\": 653,\n  \"ing</w>\": 519,\n  \"inga</w>\": 15233,\n  \"ingco</w>\": 40444,\n  \"ingday</w>\": 16561,\n  \"ingdon</w>\": 38731,\n  \"inge\": 11790,\n  \"inge</w>\": 7071,\n  \"inged</w>\": 30046,\n  \"ingen</w>\": 19088,\n  \"ingeni\": 36884,\n  \"inger\": 33883,\n  \"inger</w>\": 3541,\n  \"ingfor\": 33430,\n  \"ingh\": 9170,\n  \"ingh</w>\": 30495,\n  \"ingham\": 24497,\n  \"ingham</w>\": 4291,\n  \"inghamshire</w>\": 39289,\n  \"inghour</w>\": 42728,\n  \"inging</w>\": 4066,\n  \"ingl\": 45662,\n  \"ingle\": 22228,\n  \"ingle</w>\": 17005,\n  \"ingles</w>\": 24490,\n  \"ingley</w>\": 44428,\n  \"inglis</w>\": 46327,\n  \"ingly</w>\": 4796,\n  \"ingnow</w>\": 34766,\n  \"ingo\": 30175,\n  \"ingo</w>\": 9012,\n  \"ingra\": 45165,\n  \"ingrad</w>\": 44124,\n  \"ingram</w>\": 26998,\n  \"ingredi\": 9272,\n  \"ingredient</w>\": 19799,\n  \"ingredients</w>\": 11788,\n  \"ingrid</w>\": 33496,\n  \"ings</w>\": 895,\n  \"ingthe\": 20170,\n  \"ingtips</w>\": 39373,\n  \"ington\": 11846,\n  \"ington</w>\": 2156,\n  \"ingu\": 8714,\n  \"ingual</w>\": 22795,\n  \"ingue</w>\": 36838,\n  \"ingui\": 12788,\n  \"inguish</w>\": 36146,\n  \"inha</w>\": 32612,\n  \"inhabit\": 36189,\n  \"inhabitants</w>\": 44968,\n  \"inhal\": 30786,\n  \"inhe\": 32617,\n  \"inher\": 24611,\n  \"inherent</w>\": 47327,\n  \"inherit\": 34322,\n  \"inheritance</w>\": 39341,\n  \"inherited</w>\": 39111,\n  \"inhi\": 25557,\n  \"inhibit\": 32196,\n  \"inho</w>\": 12984,\n  \"ini\": 6154,\n  \"ini</w>\": 3581,\n  \"inian</w>\": 36638,\n  \"inim\": 38717,\n  \"inindia</w>\": 34021,\n  \"ining</w>\": 1389,\n  \"inist</w>\": 30976,\n  \"init</w>\": 42670,\n  \"initi\": 4580,\n  \"initial</w>\": 13980,\n  \"initially</w>\": 28123,\n  \"initials</w>\": 48794,\n  \"initiated</w>\": 27756,\n  \"initiation</w>\": 41009,\n  \"initiative</w>\": 8152,\n  \"initiatives</w>\": 16549,\n  \"inity</w>\": 22126,\n  \"inj\": 5112,\n  \"injec\": 13688,\n  \"injection</w>\": 21438,\n  \"inju\": 5006,\n  \"injured</w>\": 7505,\n  \"injuries</w>\": 9481,\n  \"injury</w>\": 6223,\n  \"injustice</w>\": 20541,\n  \"ink\": 4547,\n  \"ink</w>\": 967,\n  \"inka</w>\": 40685,\n  \"inked</w>\": 29356,\n  \"inki\": 46176,\n  \"inkigayo</w>\": 47882,\n  \"inking</w>\": 37586,\n  \"inks</w>\": 20966,\n  \"inktober</w>\": 9387,\n  \"inland</w>\": 21943,\n  \"inlet</w>\": 35161,\n  \"inline</w>\": 45004,\n  \"inlove</w>\": 28415,\n  \"inmate</w>\": 32341,\n  \"inmates</w>\": 28216,\n  \"inmy\": 42657,\n  \"inn\": 27260,\n  \"inn</w>\": 5569,\n  \"inna</w>\": 35088,\n  \"inner\": 24512,\n  \"inner</w>\": 6955,\n  \"inning</w>\": 4415,\n  \"innings</w>\": 11580,\n  \"innis\": 44059,\n  \"inno\": 7961,\n  \"innocence</w>\": 26383,\n  \"innocent</w>\": 11241,\n  \"innov\": 2890,\n  \"innovate</w>\": 24549,\n  \"innovation\": 33063,\n  \"innovation</w>\": 4272,\n  \"innovations</w>\": 18817,\n  \"innovative</w>\": 8494,\n  \"innovator</w>\": 34735,\n  \"innovators</w>\": 27834,\n  \"ino\": 4211,\n  \"ino</w>\": 2691,\n  \"inoa</w>\": 25649,\n  \"inos</w>\": 21828,\n  \"inous</w>\": 47801,\n  \"inox</w>\": 22698,\n  \"input</w>\": 16952,\n  \"inputs</w>\": 48763,\n  \"inqu\": 10628,\n  \"inqui\": 18527,\n  \"inquirer</w>\": 45172,\n  \"inquiries</w>\": 29469,\n  \"inquiry</w>\": 15865,\n  \"inquis\": 31171,\n  \"inr</w>\": 36325,\n  \"ins\": 12786,\n  \"ins</w>\": 1041,\n  \"insan\": 7875,\n  \"insane</w>\": 10260,\n  \"insanely</w>\": 27846,\n  \"insanity</w>\": 26645,\n  \"inscribed</w>\": 49168,\n  \"inscription</w>\": 41127,\n  \"insec\": 15744,\n  \"insect</w>\": 21297,\n  \"insects</w>\": 18714,\n  \"insecure</w>\": 35112,\n  \"insecurity</w>\": 36964,\n  \"inser\": 13830,\n  \"insert</w>\": 18807,\n  \"insi\": 3453,\n  \"inside\": 19141,\n  \"inside</w>\": 2912,\n  \"insider</w>\": 13300,\n  \"insiders</w>\": 32171,\n  \"insig\": 40503,\n  \"insight</w>\": 8795,\n  \"insightful</w>\": 20354,\n  \"insights</w>\": 8729,\n  \"insignia</w>\": 48864,\n  \"insist</w>\": 35504,\n  \"insisted</w>\": 40423,\n  \"insists</w>\": 27255,\n  \"inski</w>\": 32630,\n  \"insky</w>\": 24607,\n  \"insol\": 42366,\n  \"insom\": 21755,\n  \"insomni\": 42040,\n  \"insomnia</w>\": 30598,\n  \"inson</w>\": 21007,\n  \"insp\": 1597,\n  \"inspec\": 7915,\n  \"inspect</w>\": 40815,\n  \"inspecting</w>\": 40565,\n  \"inspection</w>\": 15142,\n  \"inspections</w>\": 39513,\n  \"inspector</w>\": 20514,\n  \"inspir\": 2573,\n  \"inspiration</w>\": 4195,\n  \"inspirational\": 41936,\n  \"inspirational</w>\": 9855,\n  \"inspirations</w>\": 35093,\n  \"inspire\": 27901,\n  \"inspire</w>\": 8583,\n  \"inspired\": 39849,\n  \"inspired</w>\": 3516,\n  \"inspires</w>\": 17245,\n  \"inspiring\": 41847,\n  \"inspiring</w>\": 5705,\n  \"inspo</w>\": 26897,\n  \"inst\": 1264,\n  \"inst</w>\": 1581,\n  \"insta\": 22411,\n  \"insta</w>\": 11694,\n  \"instability</w>\": 41377,\n  \"instac\": 46678,\n  \"instaf\": 33800,\n  \"instag\": 14612,\n  \"instagood</w>\": 23718,\n  \"instagram\": 27910,\n  \"instagram</w>\": 2659,\n  \"instal\": 38805,\n  \"install\": 6940,\n  \"install</w>\": 11168,\n  \"installation</w>\": 9358,\n  \"installations</w>\": 27909,\n  \"installed</w>\": 8807,\n  \"installing</w>\": 18301,\n  \"installment</w>\": 25315,\n  \"installs</w>\": 45568,\n  \"instalment</w>\": 47766,\n  \"instance</w>\": 34572,\n  \"instant\": 38810,\n  \"instant</w>\": 10635,\n  \"instantly</w>\": 17703,\n  \"instap\": 23758,\n  \"instapic</w>\": 34378,\n  \"instaweather\": 43078,\n  \"instaweatherpro</w>\": 43150,\n  \"inste\": 3571,\n  \"instead</w>\": 4191,\n  \"instein</w>\": 13421,\n  \"instem</w>\": 27030,\n  \"instin\": 23382,\n  \"instinct</w>\": 30544,\n  \"institu\": 4257,\n  \"institute</w>\": 5861,\n  \"institutes</w>\": 43674,\n  \"institution</w>\": 18823,\n  \"institutional</w>\": 27442,\n  \"institutions</w>\": 15207,\n  \"instore</w>\": 41679,\n  \"instru\": 4544,\n  \"instruc\": 19648,\n  \"instruction</w>\": 19407,\n  \"instructional</w>\": 31022,\n  \"instructions</w>\": 17040,\n  \"instructor</w>\": 16087,\n  \"instructors</w>\": 31998,\n  \"instrument\": 42196,\n  \"instrument</w>\": 15806,\n  \"instrumental</w>\": 23041,\n  \"instruments</w>\": 14793,\n  \"instyle</w>\": 41321,\n  \"insu\": 8805,\n  \"insul\": 9615,\n  \"insulated</w>\": 42051,\n  \"insulation</w>\": 28194,\n  \"insulin</w>\": 29311,\n  \"insult</w>\": 26673,\n  \"insulting</w>\": 39646,\n  \"insults</w>\": 40451,\n  \"insur\": 5024,\n  \"insurance</w>\": 5870,\n  \"insured</w>\": 31321,\n  \"insurers</w>\": 43142,\n  \"insurtech</w>\": 28716,\n  \"int\": 1828,\n  \"int</w>\": 1207,\n  \"inta</w>\": 38314,\n  \"intact</w>\": 26870,\n  \"intake</w>\": 19539,\n  \"intan\": 47695,\n  \"inte\": 1598,\n  \"inte</w>\": 41900,\n  \"intech</w>\": 26504,\n  \"inted</w>\": 6147,\n  \"integr\": 5151,\n  \"integral</w>\": 27018,\n  \"integrate</w>\": 25735,\n  \"integrated</w>\": 12797,\n  \"integrating</w>\": 31555,\n  \"integration</w>\": 12583,\n  \"integrity</w>\": 14791,\n  \"intel\": 11778,\n  \"intel</w>\": 11426,\n  \"intellec\": 13281,\n  \"intellect</w>\": 47828,\n  \"intellectu\": 31966,\n  \"intellectual</w>\": 18069,\n  \"intelli\": 5324,\n  \"intellig\": 5632,\n  \"intelligence</w>\": 6846,\n  \"intelligent</w>\": 14063,\n  \"inten\": 2967,\n  \"intend</w>\": 36674,\n  \"intended</w>\": 16812,\n  \"intense</w>\": 10258,\n  \"intensi\": 22928,\n  \"intensity</w>\": 19956,\n  \"intensive</w>\": 21049,\n  \"intent</w>\": 18881,\n  \"intention</w>\": 26786,\n  \"intentional</w>\": 29536,\n  \"intentionally</w>\": 31215,\n  \"intentions</w>\": 26710,\n  \"inter\": 1006,\n  \"inter</w>\": 10093,\n  \"interact</w>\": 21736,\n  \"interacting</w>\": 35045,\n  \"interaction</w>\": 17650,\n  \"interactions</w>\": 22162,\n  \"interactive</w>\": 9456,\n  \"intercep\": 23676,\n  \"interception</w>\": 48762,\n  \"interceptions</w>\": 45313,\n  \"interchange</w>\": 34222,\n  \"intercontinental</w>\": 31983,\n  \"interdisciplinary</w>\": 38132,\n  \"intere\": 2008,\n  \"interest</w>\": 5095,\n  \"interested</w>\": 4620,\n  \"interesting</w>\": 3628,\n  \"interests</w>\": 16425,\n  \"interface</w>\": 18753,\n  \"interfaith</w>\": 38399,\n  \"interference</w>\": 29099,\n  \"interim</w>\": 19509,\n  \"interior\": 10700,\n  \"interior</w>\": 7305,\n  \"interiordesign</w>\": 12902,\n  \"interiors</w>\": 14836,\n  \"intermedi\": 20246,\n  \"intermediate</w>\": 24304,\n  \"intermission</w>\": 44805,\n  \"intermitt\": 44946,\n  \"intern\": 9976,\n  \"intern</w>\": 14068,\n  \"internal</w>\": 11285,\n  \"internally</w>\": 41134,\n  \"internation\": 42534,\n  \"international\": 8566,\n  \"international</w>\": 2436,\n  \"internationaldayof\": 41518,\n  \"internationally</w>\": 24059,\n  \"internationalwomensday</w>\": 17682,\n  \"interne\": 32713,\n  \"internet\": 30180,\n  \"internet</w>\": 4757,\n  \"internetof\": 44449,\n  \"internetofthings</w>\": 45925,\n  \"interns</w>\": 19902,\n  \"internship</w>\": 16661,\n  \"internships</w>\": 39410,\n  \"interoper\": 45754,\n  \"interpre\": 11162,\n  \"interpret\": 49154,\n  \"interpret</w>\": 40459,\n  \"interpretation</w>\": 20652,\n  \"interpreted</w>\": 42157,\n  \"interpreting</w>\": 46525,\n  \"interro\": 29548,\n  \"interrup\": 21609,\n  \"interrupt</w>\": 48449,\n  \"interrupted</w>\": 30288,\n  \"intersec\": 45246,\n  \"intersection</w>\": 19210,\n  \"interstate</w>\": 21963,\n  \"interstellar</w>\": 41506,\n  \"interval</w>\": 36032,\n  \"intervals</w>\": 44884,\n  \"interven\": 18245,\n  \"intervention</w>\": 16804,\n  \"interventions</w>\": 28848,\n  \"interview</w>\": 2885,\n  \"interviewed</w>\": 11688,\n  \"interviewing</w>\": 16399,\n  \"interviews</w>\": 9910,\n  \"intestin\": 37938,\n  \"intestinal</w>\": 38896,\n  \"inthe\": 7486,\n  \"inti\": 14459,\n  \"intim\": 38832,\n  \"intimacy</w>\": 46430,\n  \"intimate</w>\": 16382,\n  \"intimid\": 24041,\n  \"intimidating</w>\": 44405,\n  \"intimidation</w>\": 49258,\n  \"inting</w>\": 15571,\n  \"intl\": 38186,\n  \"intl</w>\": 14224,\n  \"intment</w>\": 9020,\n  \"intments</w>\": 21420,\n  \"into\": 35235,\n  \"into</w>\": 1095,\n  \"intoler\": 28534,\n  \"intolerance</w>\": 37808,\n  \"intothe\": 38511,\n  \"intra\": 20922,\n  \"intrac\": 46195,\n  \"intram\": 40956,\n  \"intre\": 29397,\n  \"intrepid</w>\": 39127,\n  \"intri\": 15421,\n  \"intric\": 23763,\n  \"intricate</w>\": 29616,\n  \"intrigu\": 18856,\n  \"intrigue</w>\": 45140,\n  \"intrigued</w>\": 40034,\n  \"intriguing</w>\": 24334,\n  \"intrin\": 45181,\n  \"intro\": 2999,\n  \"intro</w>\": 13224,\n  \"introduc\": 3621,\n  \"introduce</w>\": 9813,\n  \"introduced</w>\": 10446,\n  \"introduces</w>\": 12933,\n  \"introducing</w>\": 6256,\n  \"introduction</w>\": 11812,\n  \"introductory</w>\": 38121,\n  \"intru\": 22949,\n  \"ints</w>\": 2514,\n  \"intu\": 17225,\n  \"intuition</w>\": 40897,\n  \"intuitive</w>\": 35224,\n  \"inu\": 21131,\n  \"inuit</w>\": 41250,\n  \"inus</w>\": 45857,\n  \"inv\": 2279,\n  \"inv</w>\": 43786,\n  \"inva\": 10084,\n  \"invade</w>\": 34609,\n  \"invaded</w>\": 32596,\n  \"invaders</w>\": 35188,\n  \"invading</w>\": 40101,\n  \"invali\": 31592,\n  \"invalid</w>\": 46998,\n  \"invaluable</w>\": 33976,\n  \"invasi\": 38100,\n  \"invasion</w>\": 13378,\n  \"invasive</w>\": 19554,\n  \"inve\": 2024,\n  \"inven\": 26233,\n  \"invent\": 11665,\n  \"invent</w>\": 23558,\n  \"invented</w>\": 14100,\n  \"invention</w>\": 23607,\n  \"inventions</w>\": 44914,\n  \"inventor</w>\": 22836,\n  \"inventory</w>\": 19444,\n  \"inver\": 12061,\n  \"inverness</w>\": 33080,\n  \"inverte\": 46397,\n  \"inverted</w>\": 40709,\n  \"invest\": 4180,\n  \"invest</w>\": 9716,\n  \"invested</w>\": 22536,\n  \"investig\": 4626,\n  \"investigate</w>\": 15703,\n  \"investigated</w>\": 29180,\n  \"investigates</w>\": 29621,\n  \"investigating</w>\": 13713,\n  \"investigation</w>\": 8194,\n  \"investigations</w>\": 24020,\n  \"investigative</w>\": 30233,\n  \"investigator</w>\": 30528,\n  \"investigators</w>\": 24121,\n  \"investin\": 40195,\n  \"investing</w>\": 10554,\n  \"investment</w>\": 5605,\n  \"investments</w>\": 14675,\n  \"investor</w>\": 15490,\n  \"investors</w>\": 10486,\n  \"invests</w>\": 38378,\n  \"invic\": 25253,\n  \"invigor\": 48722,\n  \"invin\": 30252,\n  \"invincible</w>\": 38052,\n  \"invisible</w>\": 16093,\n  \"invit\": 12454,\n  \"invitation</w>\": 15032,\n  \"invitational</w>\": 14511,\n  \"invitations</w>\": 40120,\n  \"invite</w>\": 8109,\n  \"invited</w>\": 7731,\n  \"invites</w>\": 16034,\n  \"inviting</w>\": 14349,\n  \"invo\": 29417,\n  \"invol\": 4000,\n  \"involve</w>\": 26325,\n  \"involved</w>\": 5320,\n  \"involvement</w>\": 19502,\n  \"involves</w>\": 22652,\n  \"involving</w>\": 14786,\n  \"inwx</w>\": 35674,\n  \"iny</w>\": 23257,\n  \"inyour\": 47954,\n  \"io\": 3167,\n  \"io</w>\": 3752,\n  \"ioc</w>\": 43018,\n  \"iom\": 33000,\n  \"iom</w>\": 31135,\n  \"ion\": 14871,\n  \"ion</w>\": 3668,\n  \"ions</w>\": 26289,\n  \"ior\": 7354,\n  \"ior</w>\": 2498,\n  \"iority</w>\": 46016,\n  \"iors</w>\": 6427,\n  \"ios</w>\": 6614,\n  \"iot\": 32694,\n  \"iot</w>\": 6627,\n  \"iota</w>\": 37294,\n  \"ious</w>\": 6994,\n  \"iously</w>\": 38233,\n  \"iow\": 7439,\n  \"iowa\": 38847,\n  \"iowa</w>\": 8290,\n  \"ip\": 1719,\n  \"ip</w>\": 8600,\n  \"ipa</w>\": 11199,\n  \"ipad\": 39067,\n  \"ipad</w>\": 7491,\n  \"ipads</w>\": 35281,\n  \"ipc</w>\": 41981,\n  \"iphone\": 26030,\n  \"iphone</w>\": 4314,\n  \"iphones</w>\": 37561,\n  \"ipl</w>\": 13440,\n  \"ipment</w>\": 37824,\n  \"ipo\": 40218,\n  \"ipo</w>\": 24090,\n  \"ipod</w>\": 17889,\n  \"ipp\": 31706,\n  \"ips</w>\": 26910,\n  \"ipsw\": 22221,\n  \"ipswich</w>\": 24494,\n  \"iq\": 15554,\n  \"iq</w>\": 19996,\n  \"iqbal</w>\": 33553,\n  \"ir\": 582,\n  \"ir</w>\": 742,\n  \"ira\": 4923,\n  \"ira</w>\": 5371,\n  \"irah</w>\": 35724,\n  \"iran\": 19273,\n  \"iran</w>\": 5075,\n  \"irandeal</w>\": 46533,\n  \"irani</w>\": 37984,\n  \"iranian</w>\": 14158,\n  \"iraq</w>\": 8543,\n  \"iraqi</w>\": 18617,\n  \"irc</w>\": 41527,\n  \"ird</w>\": 2770,\n  \"ire\": 3013,\n  \"ire</w>\": 1454,\n  \"ired\": 32728,\n  \"ired</w>\": 2995,\n  \"ireland\": 32806,\n  \"ireland</w>\": 4157,\n  \"irene</w>\": 21600,\n  \"ires</w>\": 12435,\n  \"irez</w>\": 21581,\n  \"irgc</w>\": 47942,\n  \"iri\": 2155,\n  \"iri</w>\": 13880,\n  \"irical</w>\": 33366,\n  \"irie</w>\": 42979,\n  \"irina</w>\": 46664,\n  \"iring</w>\": 10169,\n  \"iris</w>\": 16437,\n  \"irish\": 9386,\n  \"irish</w>\": 4889,\n  \"irl\": 34494,\n  \"irl</w>\": 8570,\n  \"irling</w>\": 26493,\n  \"irls</w>\": 24344,\n  \"irma</w>\": 22406,\n  \"irn</w>\": 42603,\n  \"iro\": 23209,\n  \"iro</w>\": 7280,\n  \"iron\": 7699,\n  \"iron</w>\": 5391,\n  \"ironic</w>\": 24518,\n  \"ironically</w>\": 36779,\n  \"ironing</w>\": 46655,\n  \"ironman</w>\": 20330,\n  \"irons</w>\": 30032,\n  \"irony</w>\": 20681,\n  \"irport</w>\": 27769,\n  \"irr\": 24641,\n  \"irrational</w>\": 47413,\n  \"irregular</w>\": 38692,\n  \"irrelevant</w>\": 34677,\n  \"irresi\": 31200,\n  \"irresistible</w>\": 35252,\n  \"irresponsible</w>\": 44714,\n  \"irri\": 21484,\n  \"irrigation</w>\": 23761,\n  \"irrit\": 24218,\n  \"irs</w>\": 6086,\n  \"irst</w>\": 32701,\n  \"iru</w>\": 48206,\n  \"irvin</w>\": 47053,\n  \"irvine</w>\": 24201,\n  \"irving</w>\": 19738,\n  \"irwin</w>\": 23750,\n  \"iry</w>\": 7239,\n  \"is\": 595,\n  \"is</w>\": 533,\n  \"isa\": 11034,\n  \"isa</w>\": 6536,\n  \"isaac\": 37544,\n  \"isaac</w>\": 13659,\n  \"isab\": 13357,\n  \"isabel</w>\": 27466,\n  \"isabella</w>\": 26192,\n  \"isabelle</w>\": 31072,\n  \"isable</w>\": 46631,\n  \"isai\": 15365,\n  \"isaiah</w>\": 17952,\n  \"isak\": 40619,\n  \"isance</w>\": 46893,\n  \"isation</w>\": 7194,\n  \"isback</w>\": 43811,\n  \"isc</w>\": 39316,\n  \"isch</w>\": 47888,\n  \"isco</w>\": 5736,\n  \"iscoming</w>\": 26458,\n  \"isd\": 46816,\n  \"isd</w>\": 12002,\n  \"ise\": 7669,\n  \"ise</w>\": 1479,\n  \"ised</w>\": 2861,\n  \"iselle</w>\": 48491,\n  \"iser\": 23080,\n  \"iser</w>\": 5626,\n  \"isers</w>\": 34879,\n  \"ises</w>\": 5153,\n  \"isf</w>\": 44036,\n  \"isgreat</w>\": 34595,\n  \"ish\": 6844,\n  \"ish</w>\": 1061,\n  \"isha</w>\": 28050,\n  \"ishable</w>\": 37949,\n  \"ished</w>\": 35341,\n  \"ishere</w>\": 46053,\n  \"ishi\": 26224,\n  \"ishq\": 27996,\n  \"ishqba\": 32503,\n  \"ishqbaaaz</w>\": 36591,\n  \"isi\": 7233,\n  \"isi</w>\": 17880,\n  \"isil</w>\": 34636,\n  \"isin</w>\": 37676,\n  \"ising</w>\": 3426,\n  \"isis</w>\": 7531,\n  \"isk</w>\": 30171,\n  \"isl</w>\": 31368,\n  \"isla</w>\": 22807,\n  \"islam\": 6003,\n  \"islam</w>\": 8770,\n  \"islamabad</w>\": 19959,\n  \"islamic\": 31627,\n  \"islamic</w>\": 9552,\n  \"islamist</w>\": 38798,\n  \"islamophobia</w>\": 43459,\n  \"island\": 13408,\n  \"island</w>\": 2619,\n  \"islander</w>\": 45651,\n  \"islanders</w>\": 27804,\n  \"islands</w>\": 7145,\n  \"islay</w>\": 49279,\n  \"isle\": 19082,\n  \"isle</w>\": 11849,\n  \"isleof\": 24718,\n  \"isles</w>\": 21816,\n  \"islife</w>\": 26433,\n  \"islington</w>\": 34945,\n  \"ism\": 47730,\n  \"ism</w>\": 1935,\n  \"isma\": 43937,\n  \"ismail</w>\": 36140,\n  \"isme</w>\": 43570,\n  \"ismo</w>\": 41926,\n  \"isms</w>\": 18700,\n  \"isn</w>\": 2923,\n  \"isner</w>\": 48246,\n  \"isnow</w>\": 43694,\n  \"isnt</w>\": 19416,\n  \"iso\": 2462,\n  \"iso</w>\": 12263,\n  \"isol\": 11414,\n  \"isolated</w>\": 19044,\n  \"isolation</w>\": 26400,\n  \"ison\": 12949,\n  \"ison</w>\": 4553,\n  \"isons</w>\": 33318,\n  \"isoo</w>\": 35857,\n  \"isp\": 31397,\n  \"isp</w>\": 39041,\n  \"isra\": 3591,\n  \"israel\": 20837,\n  \"israel</w>\": 4779,\n  \"israeli</w>\": 8994,\n  \"israelis</w>\": 45713,\n  \"isreal</w>\": 47147,\n  \"isro</w>\": 44841,\n  \"iss\": 11738,\n  \"iss</w>\": 4950,\n  \"issa\": 38579,\n  \"issa</w>\": 7560,\n  \"issan\": 49358,\n  \"issance</w>\": 40828,\n  \"issant</w>\": 38828,\n  \"isse</w>\": 18986,\n  \"ission</w>\": 37946,\n  \"issu\": 2049,\n  \"issue</w>\": 3202,\n  \"issued</w>\": 9246,\n  \"issues</w>\": 4082,\n  \"issuing</w>\": 37226,\n  \"ist\": 9751,\n  \"ist</w>\": 2304,\n  \"istanbul</w>\": 12258,\n  \"istandwith\": 33820,\n  \"iste</w>\": 32563,\n  \"ister</w>\": 14555,\n  \"isthe\": 46748,\n  \"istic</w>\": 29556,\n  \"ists</w>\": 8426,\n  \"isu\": 17030,\n  \"isu</w>\": 23328,\n  \"it\": 529,\n  \"it</w>\": 585,\n  \"ita\": 36920,\n  \"ita</w>\": 2864,\n  \"itable</w>\": 8915,\n  \"ital\": 2306,\n  \"ital</w>\": 1660,\n  \"itali\": 11644,\n  \"italia</w>\": 11025,\n  \"italian\": 20264,\n  \"italian</w>\": 5175,\n  \"italians</w>\": 44744,\n  \"italk</w>\": 32894,\n  \"italy</w>\": 4052,\n  \"itan</w>\": 18383,\n  \"itans</w>\": 40711,\n  \"itar</w>\": 47161,\n  \"itarian</w>\": 11599,\n  \"itary</w>\": 17604,\n  \"itas\": 31634,\n  \"itas</w>\": 13436,\n  \"itate</w>\": 42457,\n  \"itated</w>\": 36744,\n  \"itation</w>\": 5070,\n  \"itative</w>\": 22892,\n  \"itc</w>\": 36449,\n  \"itch\": 2387,\n  \"itch</w>\": 8147,\n  \"itchen</w>\": 32664,\n  \"itchy</w>\": 41980,\n  \"ite\": 2732,\n  \"ite</w>\": 802,\n  \"iteam</w>\": 37828,\n  \"itec\": 3099,\n  \"itec</w>\": 43936,\n  \"itech\": 44215,\n  \"itech</w>\": 23040,\n  \"ited\": 8603,\n  \"ited</w>\": 1108,\n  \"itel</w>\": 44638,\n  \"itely</w>\": 4605,\n  \"item</w>\": 8532,\n  \"items</w>\": 6207,\n  \"iter\": 7938,\n  \"iter</w>\": 19773,\n  \"iteracy</w>\": 39634,\n  \"iterate</w>\": 43106,\n  \"iteration</w>\": 38790,\n  \"ites</w>\": 2454,\n  \"itez</w>\": 42131,\n  \"itf</w>\": 35436,\n  \"itfc</w>\": 36519,\n  \"ith\": 6133,\n  \"ith</w>\": 1757,\n  \"ithaca</w>\": 46257,\n  \"iti\": 760,\n  \"iti</w>\": 6165,\n  \"itia</w>\": 22634,\n  \"itian</w>\": 23365,\n  \"itic</w>\": 11950,\n  \"itical</w>\": 48767,\n  \"itics</w>\": 33967,\n  \"ities\": 41423,\n  \"ities</w>\": 1480,\n  \"itim\": 15676,\n  \"itiner\": 32803,\n  \"itinerary</w>\": 41564,\n  \"iting</w>\": 1257,\n  \"ition\": 25263,\n  \"ition</w>\": 1104,\n  \"itions</w>\": 5540,\n  \"itious</w>\": 13329,\n  \"itis\": 33539,\n  \"itis</w>\": 8388,\n  \"itive</w>\": 3067,\n  \"itly</w>\": 42240,\n  \"ito\": 22167,\n  \"ito</w>\": 4661,\n  \"iton</w>\": 21119,\n  \"itor\": 47267,\n  \"itor</w>\": 4584,\n  \"itors</w>\": 22005,\n  \"itos</w>\": 24560,\n  \"its\": 7140,\n  \"its</w>\": 902,\n  \"itsa\": 45032,\n  \"itself</w>\": 7290,\n  \"itsme\": 41125,\n  \"itss\": 47040,\n  \"itt\": 1031,\n  \"itt</w>\": 11228,\n  \"itta</w>\": 21233,\n  \"itte</w>\": 31962,\n  \"itted</w>\": 24429,\n  \"itten\": 30014,\n  \"itten</w>\": 4343,\n  \"itter</w>\": 11456,\n  \"itters</w>\": 13082,\n  \"itti</w>\": 28629,\n  \"ittin</w>\": 25646,\n  \"itting</w>\": 3147,\n  \"ittle\": 24208,\n  \"ittle</w>\": 21366,\n  \"ittles</w>\": 38989,\n  \"itton</w>\": 25707,\n  \"itty</w>\": 35096,\n  \"itu\": 1668,\n  \"itu</w>\": 32128,\n  \"itude\": 43382,\n  \"itude</w>\": 5012,\n  \"itudes</w>\": 20459,\n  \"itunes</w>\": 7007,\n  \"itup</w>\": 35838,\n  \"iture</w>\": 25547,\n  \"itus</w>\": 24364,\n  \"itutes</w>\": 32883,\n  \"itv\": 20159,\n  \"itv</w>\": 12805,\n  \"ity\": 2480,\n  \"ity</w>\": 696,\n  \"itya</w>\": 32055,\n  \"itz\": 14544,\n  \"itz</w>\": 7807,\n  \"iu\": 14292,\n  \"iu</w>\": 15575,\n  \"ium</w>\": 10762,\n  \"ius</w>\": 6740,\n  \"iv\": 6775,\n  \"iv</w>\": 9315,\n  \"iva</w>\": 42463,\n  \"ivan\": 15544,\n  \"ivan</w>\": 15689,\n  \"ivanka</w>\": 37914,\n  \"ive\": 26885,\n  \"ive</w>\": 8653,\n  \"ived</w>\": 15654,\n  \"iver\": 36849,\n  \"iver</w>\": 44254,\n  \"ives</w>\": 27333,\n  \"ivf</w>\": 39159,\n  \"iving</w>\": 45136,\n  \"ivory</w>\": 16776,\n  \"ivote\": 45835,\n  \"ivy\": 36939,\n  \"ivy</w>\": 16045,\n  \"iw\": 13058,\n  \"iw</w>\": 46604,\n  \"iwant\": 42747,\n  \"iwd</w>\": 16815,\n  \"iwm</w>\": 44237,\n  \"ix\": 13272,\n  \"ix</w>\": 8756,\n  \"iy\": 13704,\n  \"iya</w>\": 18595,\n  \"iyaki</w>\": 48395,\n  \"iz\": 2845,\n  \"iz</w>\": 8407,\n  \"iza</w>\": 37704,\n  \"ization</w>\": 10847,\n  \"ize</w>\": 10885,\n  \"ized</w>\": 7690,\n  \"izen</w>\": 34776,\n  \"izer</w>\": 23895,\n  \"izes</w>\": 45434,\n  \"izing</w>\": 17354,\n  \"izo</w>\": 46910,\n  \"izz\": 31779,\n  \"izz</w>\": 46128,\n  \"izzy</w>\": 28861,\n  \"j\": 73,\n  \"j</w>\": 329,\n  \"ja\": 1586,\n  \"ja</w>\": 2641,\n  \"jaan</w>\": 25052,\n  \"jab\": 8059,\n  \"jab</w>\": 9439,\n  \"jac\": 2293,\n  \"jac</w>\": 30198,\n  \"jace</w>\": 43286,\n  \"jack\": 2679,\n  \"jack</w>\": 3267,\n  \"jacked</w>\": 27923,\n  \"jacket</w>\": 6164,\n  \"jackets</w>\": 14745,\n  \"jacki\": 47418,\n  \"jackie\": 28023,\n  \"jackie</w>\": 11716,\n  \"jacking</w>\": 40929,\n  \"jackman</w>\": 35723,\n  \"jackpot</w>\": 23926,\n  \"jacks</w>\": 19649,\n  \"jackson\": 12321,\n  \"jackson</w>\": 4363,\n  \"jacksonville</w>\": 19263,\n  \"jaco\": 6840,\n  \"jacob\": 14385,\n  \"jacob</w>\": 9222,\n  \"jacobs</w>\": 17482,\n  \"jacobson</w>\": 46826,\n  \"jacqu\": 14495,\n  \"jacqueline</w>\": 22843,\n  \"jacques</w>\": 17799,\n  \"jad\": 12976,\n  \"jad</w>\": 38691,\n  \"jada</w>\": 37416,\n  \"jade\": 25123,\n  \"jade</w>\": 14513,\n  \"jaden</w>\": 37174,\n  \"jadine</w>\": 37445,\n  \"jae\": 16869,\n  \"jae</w>\": 15765,\n  \"jaejoong</w>\": 43610,\n  \"jaf\": 19362,\n  \"jag\": 7984,\n  \"jag</w>\": 36236,\n  \"jagan</w>\": 48530,\n  \"jagger</w>\": 30835,\n  \"jags</w>\": 31086,\n  \"jagu\": 10096,\n  \"jaguar\": 44777,\n  \"jaguar</w>\": 14757,\n  \"jaguars</w>\": 21854,\n  \"jah\": 20067,\n  \"jah</w>\": 11084,\n  \"jahan\": 44404,\n  \"jahan</w>\": 47827,\n  \"jai\": 10542,\n  \"jai</w>\": 13819,\n  \"jail\": 18574,\n  \"jail</w>\": 9332,\n  \"jailbreak</w>\": 45990,\n  \"jailed</w>\": 19456,\n  \"jails</w>\": 47833,\n  \"jaime</w>\": 24716,\n  \"jain</w>\": 21999,\n  \"jaipur</w>\": 23593,\n  \"jais\": 48607,\n  \"jait\": 28910,\n  \"jaitley</w>\": 32776,\n  \"jak\": 9225,\n  \"jak</w>\": 30589,\n  \"jakarta</w>\": 15471,\n  \"jake\": 13140,\n  \"jake</w>\": 7419,\n  \"jakob</w>\": 47358,\n  \"jal\": 8380,\n  \"jal</w>\": 26773,\n  \"jalan</w>\": 27270,\n  \"jalap\": 49081,\n  \"jalape\": 34263,\n  \"jalapeÃ±o</w>\": 43017,\n  \"jalen</w>\": 33548,\n  \"jam\": 1434,\n  \"jam</w>\": 5201,\n  \"jama\": 8977,\n  \"jama</w>\": 35366,\n  \"jamaica</w>\": 13019,\n  \"jamaican</w>\": 25144,\n  \"jamal</w>\": 26108,\n  \"jambo\": 35599,\n  \"jamboree</w>\": 38506,\n  \"jame\": 12341,\n  \"james\": 6963,\n  \"james</w>\": 2392,\n  \"jamesbond</w>\": 44704,\n  \"jamesc\": 47004,\n  \"jameson</w>\": 31731,\n  \"jami\": 15092,\n  \"jamie\": 16454,\n  \"jamie</w>\": 8078,\n  \"jamiedor\": 34310,\n  \"jamiedornan</w>\": 34896,\n  \"jammed</w>\": 35590,\n  \"jammin</w>\": 35223,\n  \"jamming</w>\": 25862,\n  \"jammu</w>\": 25926,\n  \"jams</w>\": 20243,\n  \"jan\": 1891,\n  \"jan</w>\": 3334,\n  \"jana</w>\": 18182,\n  \"jane\": 12389,\n  \"jane</w>\": 6736,\n  \"janeiro</w>\": 31740,\n  \"janet\": 29665,\n  \"janet</w>\": 15872,\n  \"jang\": 41526,\n  \"jang</w>\": 22074,\n  \"jani</w>\": 22606,\n  \"janice</w>\": 36048,\n  \"janine</w>\": 46896,\n  \"janis</w>\": 44233,\n  \"jann\": 35377,\n  \"jans</w>\": 22578,\n  \"jansen</w>\": 45354,\n  \"janu\": 3623,\n  \"january</w>\": 3697,\n  \"jap\": 2299,\n  \"jap</w>\": 49062,\n  \"japan\": 4502,\n  \"japan</w>\": 3400,\n  \"japanese\": 27211,\n  \"japanese</w>\": 4925,\n  \"japs</w>\": 42121,\n  \"jar\": 5120,\n  \"jar</w>\": 10837,\n  \"jard\": 25778,\n  \"jardin</w>\": 37371,\n  \"jare\": 17654,\n  \"jared\": 35597,\n  \"jared</w>\": 12571,\n  \"jaredle\": 36739,\n  \"jaredleto</w>\": 37106,\n  \"jaro</w>\": 35505,\n  \"jarpad</w>\": 44497,\n  \"jarre\": 23385,\n  \"jarrett</w>\": 30531,\n  \"jars</w>\": 27583,\n  \"jarvis</w>\": 29286,\n  \"jas\": 4492,\n  \"jas</w>\": 17559,\n  \"jasmin\": 42989,\n  \"jasmin</w>\": 47700,\n  \"jasmine</w>\": 17056,\n  \"jason\": 10009,\n  \"jason</w>\": 5395,\n  \"jasper</w>\": 19827,\n  \"jat\": 26106,\n  \"jau\": 26932,\n  \"jauregui</w>\": 48175,\n  \"jav\": 6234,\n  \"java</w>\": 12918,\n  \"javascri\": 16289,\n  \"javascript</w>\": 16423,\n  \"jave\": 46218,\n  \"javed</w>\": 42268,\n  \"javelin</w>\": 41701,\n  \"javi</w>\": 47627,\n  \"javier</w>\": 23307,\n  \"jaw\": 14804,\n  \"jaw</w>\": 17307,\n  \"jawa\": 44790,\n  \"jaws</w>\": 25491,\n  \"jax\": 22348,\n  \"jax</w>\": 12390,\n  \"jay\": 3427,\n  \"jay</w>\": 4155,\n  \"jaya</w>\": 21960,\n  \"jayanti</w>\": 37732,\n  \"jaye</w>\": 45703,\n  \"jayne</w>\": 35228,\n  \"jays</w>\": 12393,\n  \"jaz\": 3465,\n  \"jaz</w>\": 32874,\n  \"jazeera</w>\": 38260,\n  \"jazz\": 11488,\n  \"jazz</w>\": 4528,\n  \"jazzfest</w>\": 36683,\n  \"jazzy</w>\": 28191,\n  \"jb\": 21915,\n  \"jb</w>\": 13637,\n  \"jc\": 14991,\n  \"jc</w>\": 11517,\n  \"jd\": 18289,\n  \"jd</w>\": 14125,\n  \"jdm</w>\": 42013,\n  \"je\": 1013,\n  \"je</w>\": 8776,\n  \"jeal\": 9964,\n  \"jealous</w>\": 11093,\n  \"jealousy</w>\": 37654,\n  \"jean\": 13943,\n  \"jean</w>\": 6473,\n  \"jeanette</w>\": 48167,\n  \"jeanne</w>\": 29201,\n  \"jeans</w>\": 10157,\n  \"jeb</w>\": 35101,\n  \"jec\": 1347,\n  \"ject</w>\": 6070,\n  \"jed\": 12166,\n  \"jed</w>\": 38748,\n  \"jeddah</w>\": 40982,\n  \"jedi</w>\": 16681,\n  \"jee\": 29250,\n  \"jee</w>\": 14870,\n  \"jeep\": 16593,\n  \"jeep</w>\": 11286,\n  \"jeeplife</w>\": 43100,\n  \"jeet\": 45542,\n  \"jeet</w>\": 30944,\n  \"jef\": 10276,\n  \"jeff\": 6245,\n  \"jeff</w>\": 5550,\n  \"jefferson\": 44711,\n  \"jefferson</w>\": 13976,\n  \"jeffery</w>\": 41470,\n  \"jeffree\": 45994,\n  \"jeffrey\": 32886,\n  \"jeffrey</w>\": 16027,\n  \"jeho\": 42437,\n  \"jeky\": 43893,\n  \"jekyll</w>\": 49405,\n  \"jel\": 9794,\n  \"jelena</w>\": 48218,\n  \"jelly\": 19110,\n  \"jelly</w>\": 13762,\n  \"jellyfish</w>\": 30988,\n  \"jem\": 46326,\n  \"jem</w>\": 37530,\n  \"jen\": 2554,\n  \"jen</w>\": 12997,\n  \"jenkins</w>\": 16162,\n  \"jenn\": 33921,\n  \"jenn</w>\": 29869,\n  \"jenna</w>\": 17125,\n  \"jenner</w>\": 14260,\n  \"jenni\": 6774,\n  \"jennie</w>\": 28875,\n  \"jennifer\": 19786,\n  \"jennifer</w>\": 8613,\n  \"jennings</w>\": 21564,\n  \"jenny\": 20165,\n  \"jenny</w>\": 13414,\n  \"jens</w>\": 40806,\n  \"jensen\": 35558,\n  \"jensen</w>\": 19004,\n  \"jensenackles</w>\": 41011,\n  \"jeon\": 45200,\n  \"jeon</w>\": 43337,\n  \"jeong\": 47146,\n  \"jeong</w>\": 39264,\n  \"jeopar\": 22988,\n  \"jeopardy</w>\": 29613,\n  \"jer\": 2310,\n  \"jer</w>\": 35307,\n  \"jere\": 5614,\n  \"jeremi\": 22362,\n  \"jeremiah</w>\": 27301,\n  \"jeremy\": 14656,\n  \"jeremy</w>\": 8127,\n  \"jeremycorbyn</w>\": 37484,\n  \"jeric\": 25084,\n  \"jericho</w>\": 28892,\n  \"jerk</w>\": 23917,\n  \"jerky</w>\": 40079,\n  \"jermaine</w>\": 40722,\n  \"jerome</w>\": 19876,\n  \"jerry\": 18163,\n  \"jerry</w>\": 9164,\n  \"jersey\": 21921,\n  \"jersey</w>\": 4471,\n  \"jerseys</w>\": 15518,\n  \"jerus\": 12257,\n  \"jerusalem</w>\": 12557,\n  \"jes\": 7686,\n  \"jes</w>\": 35826,\n  \"jess\": 5313,\n  \"jess</w>\": 13758,\n  \"jesse\": 23112,\n  \"jesse</w>\": 11770,\n  \"jessi\": 24373,\n  \"jessic\": 14881,\n  \"jessica\": 45421,\n  \"jessica</w>\": 8178,\n  \"jessie</w>\": 19424,\n  \"jester</w>\": 44225,\n  \"jesu\": 19777,\n  \"jesuit</w>\": 33234,\n  \"jesus</w>\": 4070,\n  \"jet\": 11515,\n  \"jet</w>\": 6565,\n  \"jetblue</w>\": 45021,\n  \"jeter</w>\": 38450,\n  \"jets\": 38584,\n  \"jets</w>\": 10025,\n  \"jett</w>\": 44541,\n  \"jetty</w>\": 46382,\n  \"jew</w>\": 27450,\n  \"jewel\": 4880,\n  \"jewel</w>\": 17591,\n  \"jewell\": 9777,\n  \"jewellers</w>\": 46265,\n  \"jewellery</w>\": 11192,\n  \"jewelry\": 28018,\n  \"jewelry</w>\": 6039,\n  \"jewels</w>\": 20205,\n  \"jewish\": 29594,\n  \"jewish</w>\": 9104,\n  \"jews</w>\": 14200,\n  \"jf\": 31130,\n  \"jf</w>\": 33718,\n  \"jfc</w>\": 43652,\n  \"jfk</w>\": 18486,\n  \"jg\": 41986,\n  \"jg</w>\": 35138,\n  \"jh\": 24858,\n  \"jh</w>\": 21485,\n  \"jha\": 47012,\n  \"jha</w>\": 38092,\n  \"jhal\": 45695,\n  \"jhar\": 31546,\n  \"jharkhand</w>\": 39001,\n  \"jhb</w>\": 34631,\n  \"ji\": 3252,\n  \"ji</w>\": 2697,\n  \"jia</w>\": 32907,\n  \"jian</w>\": 33427,\n  \"jiang\": 43309,\n  \"jiang</w>\": 25762,\n  \"jic\": 48350,\n  \"jic</w>\": 40215,\n  \"jid</w>\": 24403,\n  \"jie</w>\": 40005,\n  \"jig\": 15136,\n  \"jig</w>\": 47430,\n  \"jigsaw</w>\": 32987,\n  \"jiha\": 23194,\n  \"jihad</w>\": 29637,\n  \"jihoon</w>\": 44765,\n  \"jil\": 36225,\n  \"jill\": 24136,\n  \"jill</w>\": 15254,\n  \"jillian</w>\": 37820,\n  \"jim\": 3190,\n  \"jim</w>\": 4550,\n  \"jima</w>\": 20679,\n  \"jimcantore</w>\": 43950,\n  \"jimenez</w>\": 35947,\n  \"jimi</w>\": 30565,\n  \"jimin</w>\": 16286,\n  \"jimmie</w>\": 45679,\n  \"jimmy\": 12215,\n  \"jimmy</w>\": 6817,\n  \"jimmyfallon</w>\": 45265,\n  \"jin\": 7927,\n  \"jin</w>\": 8485,\n  \"jind\": 40609,\n  \"jing\": 34933,\n  \"jing</w>\": 28607,\n  \"jingle</w>\": 28699,\n  \"jinnah</w>\": 43141,\n  \"jinping</w>\": 39308,\n  \"jinx</w>\": 42977,\n  \"jinyoung</w>\": 38051,\n  \"jio</w>\": 40501,\n  \"jis\": 25988,\n  \"jis</w>\": 23515,\n  \"jisoo</w>\": 43070,\n  \"jit\": 11947,\n  \"jit</w>\": 20308,\n  \"jitsu</w>\": 24530,\n  \"jiu\": 43351,\n  \"jiu</w>\": 44123,\n  \"jj\": 12502,\n  \"jj</w>\": 12790,\n  \"jk\": 20189,\n  \"jk</w>\": 9702,\n  \"jkt</w>\": 21494,\n  \"jl\": 25027,\n  \"jl</w>\": 22911,\n  \"jlo</w>\": 31017,\n  \"jm\": 24044,\n  \"jm</w>\": 18657,\n  \"jn\": 24576,\n  \"jn</w>\": 21717,\n  \"jnr</w>\": 37145,\n  \"jnu</w>\": 47142,\n  \"jo\": 683,\n  \"jo</w>\": 3804,\n  \"joachim</w>\": 48979,\n  \"joan\": 28064,\n  \"joan</w>\": 12710,\n  \"joann\": 35484,\n  \"joanna</w>\": 25357,\n  \"joanne\": 43736,\n  \"joanne</w>\": 25092,\n  \"joao</w>\": 45666,\n  \"joaqu\": 25140,\n  \"joaquin</w>\": 30745,\n  \"job\": 13114,\n  \"job</w>\": 2075,\n  \"jobs</w>\": 3735,\n  \"jobsearch</w>\": 45459,\n  \"joburg</w>\": 39343,\n  \"jocel\": 36879,\n  \"jocelyn</w>\": 47259,\n  \"jock</w>\": 34485,\n  \"jockey</w>\": 20126,\n  \"jodh\": 48689,\n  \"jodi\": 36812,\n  \"jodi</w>\": 26888,\n  \"jodie</w>\": 33100,\n  \"jody</w>\": 32959,\n  \"joe\": 9309,\n  \"joe</w>\": 3305,\n  \"joel\": 19819,\n  \"joel</w>\": 11429,\n  \"joes</w>\": 34756,\n  \"joey\": 16281,\n  \"joey</w>\": 10455,\n  \"jog\": 37967,\n  \"jog</w>\": 31691,\n  \"jogging</w>\": 37922,\n  \"joh\": 1201,\n  \"johan\": 17416,\n  \"johan</w>\": 27789,\n  \"johann</w>\": 31180,\n  \"johanna</w>\": 41494,\n  \"johannes</w>\": 37779,\n  \"johannesburg</w>\": 28377,\n  \"johansson</w>\": 41512,\n  \"johar</w>\": 34871,\n  \"john\": 2004,\n  \"john</w>\": 1742,\n  \"johncena</w>\": 46820,\n  \"johnnie</w>\": 47947,\n  \"johnny\": 14464,\n  \"johnny</w>\": 6904,\n  \"johns</w>\": 14515,\n  \"johnson\": 26036,\n  \"johnson</w>\": 4010,\n  \"johnston</w>\": 19791,\n  \"johnstone</w>\": 40766,\n  \"johor</w>\": 34750,\n  \"join\": 14737,\n  \"join</w>\": 1384,\n  \"joined</w>\": 4954,\n  \"joining</w>\": 5118,\n  \"joins</w>\": 5681,\n  \"joint</w>\": 6640,\n  \"jointhe\": 30422,\n  \"jointly</w>\": 37471,\n  \"joints</w>\": 27204,\n  \"jojo\": 41484,\n  \"jojo</w>\": 22075,\n  \"joke</w>\": 7198,\n  \"joker</w>\": 18200,\n  \"jokers</w>\": 44101,\n  \"jokes</w>\": 11336,\n  \"joking</w>\": 26112,\n  \"joko\": 44975,\n  \"jol\": 9174,\n  \"jol</w>\": 36470,\n  \"jolie</w>\": 31633,\n  \"jolla</w>\": 46109,\n  \"jolly</w>\": 21516,\n  \"jom\": 32152,\n  \"jon\": 3026,\n  \"jon</w>\": 6139,\n  \"jona\": 6629,\n  \"jonah\": 47934,\n  \"jonah</w>\": 27556,\n  \"jonas\": 42373,\n  \"jonas</w>\": 13650,\n  \"jonathan\": 19026,\n  \"jonathan</w>\": 7762,\n  \"jone\": 33934,\n  \"jones\": 19091,\n  \"jones</w>\": 3538,\n  \"jong\": 20214,\n  \"jong</w>\": 14726,\n  \"jonghyun</w>\": 29023,\n  \"jongin</w>\": 36957,\n  \"joni</w>\": 43177,\n  \"jonny\": 28454,\n  \"jonny</w>\": 21895,\n  \"joo\": 25807,\n  \"joo</w>\": 27680,\n  \"joom\": 47543,\n  \"joon</w>\": 18547,\n  \"joong</w>\": 26544,\n  \"jop\": 30486,\n  \"joplin</w>\": 42688,\n  \"jor\": 2482,\n  \"jor</w>\": 31595,\n  \"jordan\": 14644,\n  \"jordan</w>\": 4388,\n  \"jordani\": 46898,\n  \"jordi</w>\": 44795,\n  \"jorge\": 48761,\n  \"jorge</w>\": 18225,\n  \"jos\": 20560,\n  \"jos</w>\": 19661,\n  \"jose\": 4647,\n  \"jose</w>\": 7075,\n  \"josef</w>\": 36584,\n  \"josel\": 47800,\n  \"joseph\": 14163,\n  \"joseph</w>\": 6478,\n  \"josephine</w>\": 34866,\n  \"josh\": 9998,\n  \"josh</w>\": 5679,\n  \"joshi</w>\": 24786,\n  \"joshu\": 9112,\n  \"joshua</w>\": 11852,\n  \"josi\": 33583,\n  \"josie</w>\": 33167,\n  \"joss</w>\": 42834,\n  \"josÃ©</w>\": 27922,\n  \"jou\": 19921,\n  \"jou</w>\": 32029,\n  \"jour\": 2078,\n  \"jour</w>\": 17142,\n  \"journ\": 4563,\n  \"journal</w>\": 6626,\n  \"journalism</w>\": 10123,\n  \"journalist</w>\": 9914,\n  \"journalists</w>\": 12249,\n  \"journals</w>\": 24391,\n  \"journe\": 48833,\n  \"journey\": 32156,\n  \"journey</w>\": 3749,\n  \"journeys</w>\": 23329,\n  \"journo</w>\": 37034,\n  \"journos</w>\": 46437,\n  \"jovi</w>\": 33866,\n  \"joy\": 6308,\n  \"joy</w>\": 4273,\n  \"joyce\": 43753,\n  \"joyce</w>\": 15275,\n  \"joye\": 34052,\n  \"joyeux</w>\": 41876,\n  \"joyful</w>\": 24139,\n  \"joyous</w>\": 32245,\n  \"joyride</w>\": 46949,\n  \"joys</w>\": 22996,\n  \"jp\": 18249,\n  \"jp</w>\": 10557,\n  \"jpg</w>\": 36950,\n  \"jpn</w>\": 36212,\n  \"jr\": 13973,\n  \"jr</w>\": 3605,\n  \"js\": 46243,\n  \"js</w>\": 8006,\n  \"jst</w>\": 26523,\n  \"jt\": 39480,\n  \"jt</w>\": 18119,\n  \"ju\": 669,\n  \"ju</w>\": 9970,\n  \"jual</w>\": 38720,\n  \"juan\": 17148,\n  \"juan</w>\": 9274,\n  \"juana</w>\": 9081,\n  \"jubi\": 15485,\n  \"jubil\": 47743,\n  \"jubilee</w>\": 16907,\n  \"juco</w>\": 31570,\n  \"jud\": 8363,\n  \"juda\": 32478,\n  \"judah</w>\": 41066,\n  \"judaism</w>\": 42217,\n  \"judas</w>\": 39532,\n  \"judd</w>\": 29770,\n  \"judg\": 20012,\n  \"judge\": 16824,\n  \"judge</w>\": 5656,\n  \"judged</w>\": 33453,\n  \"judgement</w>\": 25246,\n  \"judges</w>\": 12575,\n  \"judging</w>\": 16570,\n  \"judgment</w>\": 24191,\n  \"judi\": 42546,\n  \"judice</w>\": 28032,\n  \"judicial</w>\": 19579,\n  \"judiciary</w>\": 24545,\n  \"judith</w>\": 24047,\n  \"judo</w>\": 27011,\n  \"judy\": 34663,\n  \"judy</w>\": 16510,\n  \"jug</w>\": 27619,\n  \"jugg\": 38628,\n  \"juic\": 38761,\n  \"juice\": 37954,\n  \"juice</w>\": 6916,\n  \"juices</w>\": 36757,\n  \"juicy</w>\": 17623,\n  \"juju</w>\": 43020,\n  \"juke\": 32519,\n  \"jukebox</w>\": 36411,\n  \"jul\": 34662,\n  \"jul</w>\": 15975,\n  \"jule\": 40819,\n  \"jules</w>\": 21996,\n  \"juli\": 3614,\n  \"juli</w>\": 49160,\n  \"julia</w>\": 10207,\n  \"julian\": 25459,\n  \"julian</w>\": 12643,\n  \"juliana</w>\": 46059,\n  \"julie\": 22534,\n  \"julie</w>\": 10505,\n  \"julien</w>\": 32595,\n  \"juliet</w>\": 20641,\n  \"juliette</w>\": 44804,\n  \"julio</w>\": 24888,\n  \"julius</w>\": 20870,\n  \"july</w>\": 2272,\n  \"jum\": 20791,\n  \"jumbo</w>\": 24678,\n  \"jume\": 45989,\n  \"jump\": 5519,\n  \"jump</w>\": 6423,\n  \"jumped</w>\": 16901,\n  \"jumper</w>\": 16558,\n  \"jumpers</w>\": 36485,\n  \"jumping</w>\": 11476,\n  \"jumpman</w>\": 48803,\n  \"jumps</w>\": 18911,\n  \"jumpsuit</w>\": 31044,\n  \"jun\": 1637,\n  \"jun</w>\": 7719,\n  \"junction</w>\": 11320,\n  \"june\": 23188,\n  \"june</w>\": 2345,\n  \"jung\": 13086,\n  \"jung</w>\": 13031,\n  \"jungkook</w>\": 20040,\n  \"jungle\": 42421,\n  \"jungle</w>\": 10865,\n  \"juni\": 4029,\n  \"junior\": 21167,\n  \"junior</w>\": 5027,\n  \"juniors</w>\": 16811,\n  \"juniper</w>\": 33829,\n  \"junk</w>\": 16000,\n  \"junkie</w>\": 27613,\n  \"junkies</w>\": 41207,\n  \"juno</w>\": 28845,\n  \"junto</w>\": 34282,\n  \"jupit\": 15270,\n  \"jupiter</w>\": 16212,\n  \"jur\": 15896,\n  \"jura\": 14715,\n  \"jurassic\": 28844,\n  \"jurassic</w>\": 21255,\n  \"jurgen</w>\": 39263,\n  \"juris\": 37010,\n  \"jurisdic\": 37714,\n  \"jury</w>\": 12931,\n  \"jus</w>\": 14999,\n  \"just\": 1770,\n  \"just</w>\": 761,\n  \"justi\": 14700,\n  \"justic\": 30399,\n  \"justice\": 16904,\n  \"justice</w>\": 3604,\n  \"justicefor\": 25812,\n  \"justiceleague</w>\": 41929,\n  \"justices</w>\": 44356,\n  \"justified</w>\": 34546,\n  \"justify</w>\": 28192,\n  \"justin\": 7537,\n  \"justin</w>\": 4394,\n  \"justinbieber</w>\": 12501,\n  \"justine</w>\": 34418,\n  \"justintrudeau</w>\": 32184,\n  \"justsaying</w>\": 42922,\n  \"juve\": 47717,\n  \"juve</w>\": 23092,\n  \"juven\": 12944,\n  \"juvenile</w>\": 19333,\n  \"juvent\": 13908,\n  \"juventus\": 47378,\n  \"juventus</w>\": 16208,\n  \"jux\": 33552,\n  \"juxta\": 34964,\n  \"jv\": 37932,\n  \"jv</w>\": 11805,\n  \"jw\": 30221,\n  \"jw</w>\": 24215,\n  \"jy\": 20979,\n  \"jyo\": 27378,\n  \"jyoti</w>\": 48696,\n  \"jÃ¤\": 45381,\n  \"k\": 74,\n  \"k</w>\": 330,\n  \"ka\": 1595,\n  \"ka</w>\": 1525,\n  \"kaa</w>\": 34496,\n  \"kab\": 6554,\n  \"kab</w>\": 45134,\n  \"kabaddi</w>\": 41749,\n  \"kabir</w>\": 38619,\n  \"kabo\": 47974,\n  \"kabul</w>\": 26160,\n  \"kac\": 21693,\n  \"kach\": 14341,\n  \"kad\": 10901,\n  \"kade</w>\": 41130,\n  \"kaduna</w>\": 38053,\n  \"kae\": 22542,\n  \"kaeper\": 30070,\n  \"kaepernick</w>\": 30713,\n  \"kaf\": 19870,\n  \"kag\": 13666,\n  \"kag</w>\": 31003,\n  \"kah\": 16068,\n  \"kah</w>\": 15463,\n  \"kahn</w>\": 35397,\n  \"kai\": 12752,\n  \"kai</w>\": 9601,\n  \"kaido</w>\": 40255,\n  \"kail\": 23623,\n  \"kaine</w>\": 39028,\n  \"kair\": 33027,\n  \"kaiser\": 43685,\n  \"kaiser</w>\": 29960,\n  \"kait\": 19326,\n  \"kaitlyn</w>\": 34948,\n  \"kaj\": 44788,\n  \"kaj</w>\": 40381,\n  \"kak\": 10401,\n  \"kak</w>\": 40128,\n  \"kaka</w>\": 47689,\n  \"kaku</w>\": 30900,\n  \"kal\": 4187,\n  \"kal</w>\": 18712,\n  \"kala\": 45453,\n  \"kala</w>\": 33105,\n  \"kalam</w>\": 40142,\n  \"kalamaz\": 42328,\n  \"kalamazoo</w>\": 46264,\n  \"kalb</w>\": 34483,\n  \"kale\": 17162,\n  \"kale</w>\": 16625,\n  \"kaleido\": 41144,\n  \"kali\": 17844,\n  \"kali</w>\": 26964,\n  \"kalin\": 42776,\n  \"kalyan</w>\": 23825,\n  \"kam\": 4104,\n  \"kam</w>\": 26011,\n  \"kamal\": 31371,\n  \"kamal</w>\": 28619,\n  \"kamala</w>\": 45003,\n  \"kame\": 45235,\n  \"kamen</w>\": 40738,\n  \"kami</w>\": 28707,\n  \"kamloops</w>\": 36602,\n  \"kamp\": 35179,\n  \"kamp</w>\": 29522,\n  \"kampala</w>\": 37134,\n  \"kan\": 2532,\n  \"kan</w>\": 8101,\n  \"kana</w>\": 35178,\n  \"kand\": 17478,\n  \"kane\": 32218,\n  \"kane</w>\": 9765,\n  \"kang\": 12226,\n  \"kang</w>\": 20789,\n  \"kangar\": 20622,\n  \"kangaroo</w>\": 25513,\n  \"kani\": 40907,\n  \"kani</w>\": 41948,\n  \"kann\": 18533,\n  \"kannada</w>\": 30053,\n  \"kano</w>\": 28201,\n  \"kans</w>\": 34012,\n  \"kansas\": 25507,\n  \"kansas</w>\": 6539,\n  \"kansascity</w>\": 46134,\n  \"kant\": 39923,\n  \"kant</w>\": 47132,\n  \"kanth</w>\": 24427,\n  \"kanu</w>\": 44565,\n  \"kany\": 13590,\n  \"kanye\": 29680,\n  \"kanye</w>\": 14965,\n  \"kanyewest</w>\": 31943,\n  \"kap\": 6804,\n  \"kap</w>\": 45279,\n  \"kapam\": 48561,\n  \"kapil\": 32337,\n  \"kapil</w>\": 42709,\n  \"kapilshar\": 48978,\n  \"kaplan</w>\": 37401,\n  \"kapoor</w>\": 9117,\n  \"kapp\": 36717,\n  \"kappa</w>\": 20239,\n  \"kapur</w>\": 42371,\n  \"kar\": 1813,\n  \"kar</w>\": 5933,\n  \"kara</w>\": 12552,\n  \"karab\": 40916,\n  \"karachi</w>\": 13671,\n  \"karak\": 40372,\n  \"karan\": 20077,\n  \"karan</w>\": 20931,\n  \"karanjohar</w>\": 47621,\n  \"karao\": 16262,\n  \"karaoke</w>\": 16640,\n  \"karate</w>\": 21211,\n  \"kardashi\": 13619,\n  \"kardashian</w>\": 14578,\n  \"kare\": 14310,\n  \"kare</w>\": 38354,\n  \"kareem</w>\": 38885,\n  \"kareena</w>\": 41569,\n  \"karen\": 17719,\n  \"karen</w>\": 10349,\n  \"kari\": 15339,\n  \"kari</w>\": 15161,\n  \"karim</w>\": 33477,\n  \"karin</w>\": 43917,\n  \"karina</w>\": 40250,\n  \"karl\": 20967,\n  \"karl</w>\": 13134,\n  \"karla</w>\": 42309,\n  \"karma</w>\": 17658,\n  \"karnat\": 13994,\n  \"karnataka</w>\": 15515,\n  \"karo</w>\": 45305,\n  \"kart\": 47841,\n  \"kart</w>\": 21310,\n  \"karthik</w>\": 41397,\n  \"karti\": 23053,\n  \"kartikeyan</w>\": 32584,\n  \"karting</w>\": 41655,\n  \"kas\": 6119,\n  \"kas</w>\": 14372,\n  \"kasa</w>\": 46111,\n  \"kash\": 6954,\n  \"kash</w>\": 21371,\n  \"kashi\": 47945,\n  \"kashmir\": 20251,\n  \"kashmir</w>\": 10783,\n  \"kashmiri</w>\": 35331,\n  \"kasi\": 45870,\n  \"kasi</w>\": 32819,\n  \"kasich</w>\": 39666,\n  \"kat\": 2844,\n  \"kat</w>\": 9341,\n  \"kata</w>\": 14558,\n  \"kate\": 11620,\n  \"kate</w>\": 6699,\n  \"katelyn</w>\": 45963,\n  \"kath\": 7386,\n  \"kath</w>\": 19745,\n  \"katharine</w>\": 41473,\n  \"katherine</w>\": 17687,\n  \"kathle\": 18721,\n  \"kathleen</w>\": 21709,\n  \"kathmandu</w>\": 34456,\n  \"kathniel</w>\": 36159,\n  \"kathr\": 14905,\n  \"kathryn\": 33142,\n  \"kathryn</w>\": 19999,\n  \"kathy\": 34775,\n  \"kathy</w>\": 18795,\n  \"kati\": 6515,\n  \"kati</w>\": 29928,\n  \"katic</w>\": 48058,\n  \"katie\": 24117,\n  \"katie</w>\": 9076,\n  \"katniss</w>\": 47916,\n  \"kato</w>\": 27573,\n  \"katrin\": 31282,\n  \"katrina</w>\": 21397,\n  \"katrinakaif</w>\": 45845,\n  \"kats</w>\": 44213,\n  \"katsu\": 49296,\n  \"katsu</w>\": 43712,\n  \"katy\": 17609,\n  \"katy</w>\": 14435,\n  \"katyperry</w>\": 28309,\n  \"katz</w>\": 30790,\n  \"kau\": 9299,\n  \"kau</w>\": 36895,\n  \"kauai</w>\": 44050,\n  \"kaufman</w>\": 37188,\n  \"kaur</w>\": 30518,\n  \"kav\": 10228,\n  \"kavan\": 18576,\n  \"kavanaugh</w>\": 20252,\n  \"kaw\": 10842,\n  \"kaw</w>\": 42719,\n  \"kawa</w>\": 33244,\n  \"kawaii</w>\": 26891,\n  \"kawasaki</w>\": 28227,\n  \"kawhi</w>\": 41220,\n  \"kay\": 4673,\n  \"kay</w>\": 9862,\n  \"kaya</w>\": 22752,\n  \"kayak</w>\": 27043,\n  \"kayaking</w>\": 28977,\n  \"kaye</w>\": 33003,\n  \"kayla</w>\": 17139,\n  \"kaylee</w>\": 47215,\n  \"kayo</w>\": 37021,\n  \"kaz\": 8812,\n  \"kaz</w>\": 39622,\n  \"kazakh\": 25451,\n  \"kazakhstan</w>\": 26720,\n  \"kazan</w>\": 47641,\n  \"kb\": 27381,\n  \"kb</w>\": 19960,\n  \"kbs</w>\": 27418,\n  \"kc\": 10869,\n  \"kc</w>\": 8638,\n  \"kca</w>\": 14347,\n  \"kcon</w>\": 39970,\n  \"kcr\": 46181,\n  \"kd\": 21826,\n  \"kd</w>\": 15597,\n  \"kday</w>\": 31074,\n  \"kdrama</w>\": 48628,\n  \"ke\": 643,\n  \"ke</w>\": 618,\n  \"kea</w>\": 47926,\n  \"kean\": 43288,\n  \"keane</w>\": 28635,\n  \"keanu</w>\": 40608,\n  \"kear\": 21562,\n  \"kearney</w>\": 36435,\n  \"keating</w>\": 40045,\n  \"keaton</w>\": 29975,\n  \"kebab</w>\": 36497,\n  \"ked\": 11730,\n  \"ked</w>\": 1243,\n  \"kee\": 9724,\n  \"kee</w>\": 6760,\n  \"keef</w>\": 42323,\n  \"keefe</w>\": 46965,\n  \"keegan</w>\": 31122,\n  \"keel</w>\": 48376,\n  \"keen\": 17714,\n  \"keen</w>\": 13218,\n  \"keenan</w>\": 36276,\n  \"keep\": 2924,\n  \"keep</w>\": 1726,\n  \"keeper</w>\": 7650,\n  \"keepers</w>\": 16130,\n  \"keepin</w>\": 41712,\n  \"keeping\": 38371,\n  \"keeping</w>\": 4873,\n  \"keepit\": 28044,\n  \"keeps</w>\": 6333,\n  \"keer\": 27412,\n  \"keerth\": 47500,\n  \"keerthyofficial</w>\": 48185,\n  \"kees</w>\": 10791,\n  \"keg</w>\": 32785,\n  \"keh\": 41272,\n  \"keh</w>\": 36983,\n  \"kei\": 18735,\n  \"kei</w>\": 24835,\n  \"keith\": 18762,\n  \"keith</w>\": 8252,\n  \"kej\": 15674,\n  \"kejri\": 16617,\n  \"kejriwal</w>\": 17334,\n  \"keke</w>\": 39195,\n  \"kel\": 2825,\n  \"kel</w>\": 7553,\n  \"kele\": 41765,\n  \"kell\": 16082,\n  \"kell</w>\": 40103,\n  \"keller</w>\": 21407,\n  \"kelley</w>\": 23776,\n  \"kelli\": 45852,\n  \"kelli</w>\": 46190,\n  \"kellie</w>\": 49224,\n  \"kellogg</w>\": 44218,\n  \"kelly\": 13417,\n  \"kelly</w>\": 5220,\n  \"kelown\": 31708,\n  \"kelowna</w>\": 32963,\n  \"kelsey\": 42295,\n  \"kelsey</w>\": 23018,\n  \"kelvin</w>\": 32859,\n  \"kem\": 31013,\n  \"kem</w>\": 17349,\n  \"kemp\": 18302,\n  \"kemp</w>\": 25325,\n  \"ken\": 1838,\n  \"ken</w>\": 1702,\n  \"kend\": 7497,\n  \"kendal</w>\": 44836,\n  \"kendall\": 34607,\n  \"kendall</w>\": 16238,\n  \"kendra</w>\": 36074,\n  \"kendrick\": 41787,\n  \"kendrick</w>\": 21953,\n  \"kendricklamar</w>\": 47020,\n  \"kenne\": 6209,\n  \"kennedy\": 38631,\n  \"kennedy</w>\": 9004,\n  \"kennel</w>\": 39595,\n  \"kenneth\": 46900,\n  \"kenneth</w>\": 17839,\n  \"kenney</w>\": 41373,\n  \"kenny\": 20185,\n  \"kenny</w>\": 9595,\n  \"kens</w>\": 29765,\n  \"kensing\": 21505,\n  \"kensington</w>\": 24988,\n  \"kent\": 13875,\n  \"kent</w>\": 8214,\n  \"kentu\": 9045,\n  \"kentucky\": 32230,\n  \"kentucky</w>\": 10014,\n  \"keny\": 17374,\n  \"kenya</w>\": 6181,\n  \"kenyan</w>\": 22624,\n  \"kenyans</w>\": 36263,\n  \"kenyatta</w>\": 31012,\n  \"kenzie</w>\": 38087,\n  \"keo\": 43062,\n  \"kept</w>\": 7737,\n  \"ker\": 2352,\n  \"ker</w>\": 1485,\n  \"keral\": 35122,\n  \"kerala</w>\": 11881,\n  \"kered</w>\": 26690,\n  \"kerel</w>\": 32232,\n  \"keri</w>\": 43447,\n  \"kermit</w>\": 40908,\n  \"kern</w>\": 40150,\n  \"kernel</w>\": 40684,\n  \"kerr</w>\": 20491,\n  \"kerri\": 41849,\n  \"kerry\": 24795,\n  \"kerry</w>\": 13097,\n  \"kers\": 30347,\n  \"kers</w>\": 2880,\n  \"kershaw</w>\": 40785,\n  \"kerson</w>\": 42810,\n  \"kerswednesday</w>\": 48152,\n  \"kert</w>\": 47279,\n  \"kes\": 38398,\n  \"kes</w>\": 1115,\n  \"kesh</w>\": 19751,\n  \"kesha</w>\": 36526,\n  \"kest</w>\": 15080,\n  \"ket\": 2715,\n  \"ket</w>\": 1236,\n  \"ketball</w>\": 38240,\n  \"ketch\": 22590,\n  \"ketch</w>\": 35371,\n  \"ketchup</w>\": 26724,\n  \"kete\": 25404,\n  \"keted</w>\": 41396,\n  \"keting</w>\": 15951,\n  \"keto\": 27485,\n  \"keto</w>\": 28754,\n  \"kets</w>\": 1632,\n  \"kett\": 23124,\n  \"kett</w>\": 10312,\n  \"kettering</w>\": 43779,\n  \"kettle\": 41992,\n  \"kettle</w>\": 24303,\n  \"kev\": 22758,\n  \"kev</w>\": 29419,\n  \"kevin\": 9419,\n  \"kevin</w>\": 4685,\n  \"kew\": 38014,\n  \"kew</w>\": 31409,\n  \"kex\": 30251,\n  \"key\": 2891,\n  \"key</w>\": 1458,\n  \"keyan</w>\": 27617,\n  \"keyboard</w>\": 13017,\n  \"keyboards</w>\": 49237,\n  \"keychain</w>\": 31050,\n  \"keye\": 40516,\n  \"keye</w>\": 20635,\n  \"keyes</w>\": 18336,\n  \"keynes</w>\": 32462,\n  \"keynote</w>\": 7556,\n  \"keys\": 48912,\n  \"keys</w>\": 6355,\n  \"keystone</w>\": 30688,\n  \"keyword</w>\": 42284,\n  \"keywords</w>\": 48122,\n  \"kf\": 33308,\n  \"kf</w>\": 42119,\n  \"kfc</w>\": 22032,\n  \"kg\": 36772,\n  \"kg</w>\": 7817,\n  \"kgs</w>\": 46629,\n  \"kh\": 2166,\n  \"kh</w>\": 7452,\n  \"kha\": 7333,\n  \"kha</w>\": 18929,\n  \"khair\": 43742,\n  \"khaki</w>\": 41646,\n  \"khal\": 13070,\n  \"khaled</w>\": 29343,\n  \"khali\": 11324,\n  \"khalid</w>\": 27166,\n  \"khalifa</w>\": 21389,\n  \"khalil</w>\": 36229,\n  \"kham\": 24892,\n  \"khan\": 13318,\n  \"khan</w>\": 3873,\n  \"khand\": 43384,\n  \"khand</w>\": 31110,\n  \"khanna</w>\": 29931,\n  \"khar\": 18340,\n  \"khar</w>\": 28578,\n  \"khart</w>\": 37458,\n  \"khat\": 43290,\n  \"khe\": 26360,\n  \"kher</w>\": 43843,\n  \"khi\": 39062,\n  \"khi</w>\": 42925,\n  \"khil\": 34101,\n  \"khloe</w>\": 45312,\n  \"kho\": 14022,\n  \"kho</w>\": 28774,\n  \"khou</w>\": 30656,\n  \"khs</w>\": 21239,\n  \"khtar</w>\": 45593,\n  \"khu\": 14041,\n  \"khur\": 32083,\n  \"khy\": 40917,\n  \"khz</w>\": 45604,\n  \"ki\": 848,\n  \"ki</w>\": 2608,\n  \"kia</w>\": 8712,\n  \"kian\": 43961,\n  \"kian</w>\": 25708,\n  \"kians</w>\": 44010,\n  \"kib\": 43108,\n  \"kiba\": 37207,\n  \"kic\": 24003,\n  \"kic</w>\": 27633,\n  \"kicchasu\": 44665,\n  \"kicchasudeep</w>\": 45560,\n  \"kick\": 4102,\n  \"kick</w>\": 4289,\n  \"kickass</w>\": 39299,\n  \"kickboxing</w>\": 36041,\n  \"kicked</w>\": 12479,\n  \"kicker</w>\": 26338,\n  \"kickin</w>\": 34597,\n  \"kicking</w>\": 7802,\n  \"kickoff</w>\": 10245,\n  \"kicks</w>\": 6989,\n  \"kickstart</w>\": 40780,\n  \"kickstarter</w>\": 13228,\n  \"kid\": 3948,\n  \"kid</w>\": 3551,\n  \"kidd</w>\": 24082,\n  \"kidding</w>\": 14535,\n  \"kiddo</w>\": 36360,\n  \"kiddos</w>\": 29205,\n  \"kidlit\": 39064,\n  \"kidlit</w>\": 33515,\n  \"kidlitart</w>\": 41600,\n  \"kidman</w>\": 44931,\n  \"kidnap</w>\": 45100,\n  \"kidnapp\": 16183,\n  \"kidnapped</w>\": 24737,\n  \"kidnapping</w>\": 32361,\n  \"kidney\": 37835,\n  \"kidney</w>\": 14610,\n  \"kids\": 15561,\n  \"kids</w>\": 1911,\n  \"kidz</w>\": 41938,\n  \"kie\": 8544,\n  \"kie</w>\": 3094,\n  \"kiefer</w>\": 48026,\n  \"kiel\": 40940,\n  \"kiel</w>\": 25509,\n  \"kien</w>\": 28782,\n  \"kier\": 20403,\n  \"kier</w>\": 35575,\n  \"kieran</w>\": 29231,\n  \"kies\": 36601,\n  \"kies</w>\": 4993,\n  \"kiest</w>\": 29755,\n  \"kiev</w>\": 24585,\n  \"kiewicz</w>\": 47574,\n  \"kigali</w>\": 40278,\n  \"kii</w>\": 39340,\n  \"kik</w>\": 36176,\n  \"kiki</w>\": 23962,\n  \"kiko</w>\": 40861,\n  \"kil\": 4912,\n  \"kil</w>\": 39337,\n  \"kildare</w>\": 45541,\n  \"kili\": 24386,\n  \"kilig</w>\": 49172,\n  \"kilimanjaro</w>\": 43470,\n  \"kilkenny</w>\": 33805,\n  \"kill\": 6163,\n  \"kill</w>\": 4367,\n  \"killa</w>\": 41355,\n  \"killarney</w>\": 48813,\n  \"killed</w>\": 3733,\n  \"killer\": 28230,\n  \"killer</w>\": 6613,\n  \"killers</w>\": 17614,\n  \"killin</w>\": 25903,\n  \"killing\": 37977,\n  \"killing</w>\": 5923,\n  \"killings</w>\": 24918,\n  \"kills</w>\": 9795,\n  \"kiln</w>\": 44150,\n  \"kilo\": 39281,\n  \"kilom\": 26285,\n  \"kilometers</w>\": 39192,\n  \"kilometres</w>\": 43278,\n  \"kilt</w>\": 49319,\n  \"kim\": 4639,\n  \"kim</w>\": 4606,\n  \"kimber\": 16796,\n  \"kimberley</w>\": 39859,\n  \"kimberly</w>\": 27465,\n  \"kimchi</w>\": 41027,\n  \"kimi</w>\": 31536,\n  \"kimkardashian</w>\": 35400,\n  \"kimmel</w>\": 27820,\n  \"kimono</w>\": 40024,\n  \"kin\": 1442,\n  \"kin</w>\": 2667,\n  \"kina</w>\": 28518,\n  \"kind\": 7204,\n  \"kind</w>\": 3044,\n  \"kinda</w>\": 6612,\n  \"kinder\": 12711,\n  \"kinder</w>\": 24159,\n  \"kindergarten</w>\": 16749,\n  \"kindle\": 24704,\n  \"kindle</w>\": 10746,\n  \"kindleunlimited</w>\": 32164,\n  \"kindly</w>\": 13952,\n  \"kindness\": 45112,\n  \"kindness</w>\": 10614,\n  \"kinds</w>\": 14879,\n  \"kine\": 17607,\n  \"kineni</w>\": 49080,\n  \"kinetic</w>\": 37699,\n  \"king\": 2365,\n  \"king</w>\": 674,\n  \"kingdom\": 21870,\n  \"kingdom</w>\": 7364,\n  \"kingdomhearts</w>\": 48570,\n  \"kingdoms</w>\": 43890,\n  \"kingfisher</w>\": 34330,\n  \"kingjames</w>\": 33153,\n  \"kingly</w>\": 33642,\n  \"kingof\": 27878,\n  \"kings\": 18590,\n  \"kings</w>\": 4232,\n  \"kingsley</w>\": 41807,\n  \"kingston\": 40736,\n  \"kingston</w>\": 15393,\n  \"kini</w>\": 41644,\n  \"kinky</w>\": 37006,\n  \"kinney</w>\": 37233,\n  \"kino</w>\": 39000,\n  \"kins\": 31060,\n  \"kins</w>\": 4386,\n  \"kinson</w>\": 12095,\n  \"kio\": 28210,\n  \"kio</w>\": 39401,\n  \"kiosk</w>\": 39146,\n  \"kip\": 27636,\n  \"kip</w>\": 15986,\n  \"kipp\": 43329,\n  \"kir\": 3476,\n  \"kir</w>\": 32949,\n  \"kira</w>\": 33038,\n  \"kiran\": 43234,\n  \"kiran</w>\": 36603,\n  \"kirby</w>\": 17065,\n  \"kiri\": 34170,\n  \"kiri</w>\": 45826,\n  \"kirk\": 10639,\n  \"kirk</w>\": 11508,\n  \"kirkland</w>\": 43061,\n  \"kiro</w>\": 39749,\n  \"kirstel</w>\": 46483,\n  \"kirsten</w>\": 31813,\n  \"kirsty</w>\": 37787,\n  \"kis\": 3199,\n  \"kis</w>\": 22796,\n  \"kish\": 25662,\n  \"kiss\": 43757,\n  \"kiss</w>\": 5946,\n  \"kissed</w>\": 22561,\n  \"kisses\": 47876,\n  \"kisses</w>\": 11220,\n  \"kissing</w>\": 18637,\n  \"kistan</w>\": 29580,\n  \"kit\": 4566,\n  \"kit</w>\": 4274,\n  \"kita</w>\": 29961,\n  \"kitch\": 3850,\n  \"kitchen\": 18131,\n  \"kitchen</w>\": 4485,\n  \"kitchener</w>\": 34428,\n  \"kitchens</w>\": 28301,\n  \"kite\": 47777,\n  \"kite</w>\": 19867,\n  \"kites</w>\": 45829,\n  \"kits</w>\": 13730,\n  \"kitt\": 10840,\n  \"kitten</w>\": 13063,\n  \"kittens</w>\": 17216,\n  \"kitties</w>\": 36013,\n  \"kitty\": 25067,\n  \"kitty</w>\": 8417,\n  \"kiwan\": 38709,\n  \"kiwanis</w>\": 46513,\n  \"kiwi</w>\": 22440,\n  \"kiwis</w>\": 48108,\n  \"kiya</w>\": 41610,\n  \"kj\": 27385,\n  \"kj</w>\": 28238,\n  \"kja\": 41048,\n  \"kjv</w>\": 37387,\n  \"kk\": 4390,\n  \"kk</w>\": 10849,\n  \"kka</w>\": 19002,\n  \"kke</w>\": 44239,\n  \"kker</w>\": 32399,\n  \"kki</w>\": 44672,\n  \"kkk</w>\": 20073,\n  \"kkkk\": 15834,\n  \"kkkk</w>\": 47160,\n  \"kkkkkkkk\": 31042,\n  \"kko</w>\": 43965,\n  \"kkr</w>\": 40855,\n  \"kl\": 8498,\n  \"kl</w>\": 14134,\n  \"kla\": 11249,\n  \"klan</w>\": 46935,\n  \"klar\": 41374,\n  \"klaus</w>\": 31788,\n  \"kle\": 7612,\n  \"kle</w>\": 7432,\n  \"klein\": 33475,\n  \"klein</w>\": 17579,\n  \"kley</w>\": 18594,\n  \"kli\": 31640,\n  \"klin\": 44809,\n  \"klin</w>\": 41647,\n  \"kline</w>\": 47580,\n  \"kling\": 40270,\n  \"klm</w>\": 38859,\n  \"klo\": 15296,\n  \"klopp</w>\": 26446,\n  \"kltu</w>\": 25978,\n  \"klu\": 21852,\n  \"kly</w>\": 45090,\n  \"km\": 29954,\n  \"km</w>\": 4590,\n  \"kman</w>\": 33312,\n  \"kms</w>\": 24996,\n  \"kn\": 4825,\n  \"kn</w>\": 23693,\n  \"knapp</w>\": 33945,\n  \"kne\": 6358,\n  \"knee</w>\": 9897,\n  \"knees</w>\": 19115,\n  \"kner</w>\": 31578,\n  \"knew</w>\": 5009,\n  \"kni\": 6312,\n  \"knick\": 33286,\n  \"knicks</w>\": 17657,\n  \"knife\": 44176,\n  \"knife</w>\": 8960,\n  \"knigh\": 43099,\n  \"knight\": 17949,\n  \"knight</w>\": 7355,\n  \"knights</w>\": 10385,\n  \"knit\": 18745,\n  \"knit</w>\": 14313,\n  \"knitted</w>\": 28151,\n  \"knitting</w>\": 18863,\n  \"knives</w>\": 20910,\n  \"kno\": 1482,\n  \"kno</w>\": 25362,\n  \"knob</w>\": 29736,\n  \"knobs</w>\": 47504,\n  \"knock\": 14195,\n  \"knock</w>\": 11583,\n  \"knocked</w>\": 15325,\n  \"knocking</w>\": 20380,\n  \"knockout</w>\": 22602,\n  \"knocks</w>\": 24296,\n  \"knoll</w>\": 43882,\n  \"knot</w>\": 18412,\n  \"knots</w>\": 32428,\n  \"know\": 4179,\n  \"know</w>\": 1038,\n  \"knowing</w>\": 9267,\n  \"knowledge\": 27864,\n  \"knowledge</w>\": 5510,\n  \"knowledgeable</w>\": 43391,\n  \"knowles</w>\": 32631,\n  \"known</w>\": 3102,\n  \"knows</w>\": 4309,\n  \"knowyour\": 30773,\n  \"knox\": 18630,\n  \"knox</w>\": 21833,\n  \"knoxville</w>\": 23232,\n  \"knu\": 14812,\n  \"knuck\": 21333,\n  \"knuckle</w>\": 42023,\n  \"knuckles</w>\": 40127,\n  \"knw</w>\": 40803,\n  \"ko\": 1313,\n  \"ko</w>\": 2448,\n  \"koala</w>\": 36654,\n  \"kobe\": 42644,\n  \"kobe</w>\": 14470,\n  \"kobo</w>\": 42390,\n  \"koch</w>\": 25331,\n  \"kochi</w>\": 36710,\n  \"kodak</w>\": 30425,\n  \"kodi\": 46611,\n  \"kof\": 17528,\n  \"koff</w>\": 47303,\n  \"kofi</w>\": 40400,\n  \"koh\": 13379,\n  \"koh</w>\": 31216,\n  \"kohl</w>\": 48479,\n  \"kohli</w>\": 17549,\n  \"koi</w>\": 28150,\n  \"kojima</w>\": 46419,\n  \"kok\": 32045,\n  \"kok</w>\": 11225,\n  \"koko\": 42426,\n  \"koko</w>\": 40003,\n  \"kol\": 7142,\n  \"kol</w>\": 31023,\n  \"kolkata</w>\": 18011,\n  \"kom\": 6686,\n  \"kom</w>\": 24181,\n  \"kombat</w>\": 29670,\n  \"kombucha</w>\": 48615,\n  \"komo</w>\": 31820,\n  \"kon\": 5743,\n  \"kon</w>\": 29519,\n  \"kona</w>\": 30203,\n  \"kong\": 31784,\n  \"kong</w>\": 6506,\n  \"konstant\": 46583,\n  \"koo\": 12225,\n  \"koo</w>\": 40472,\n  \"kook</w>\": 16003,\n  \"kool\": 36755,\n  \"kool</w>\": 26444,\n  \"kop\": 16623,\n  \"kop</w>\": 38999,\n  \"kor\": 6428,\n  \"kor</w>\": 24175,\n  \"kore\": 3919,\n  \"korea</w>\": 5915,\n  \"korean\": 31949,\n  \"korean</w>\": 8034,\n  \"kori</w>\": 42842,\n  \"korn\": 45412,\n  \"korn</w>\": 31492,\n  \"kors</w>\": 34535,\n  \"kos\": 47438,\n  \"kos</w>\": 22951,\n  \"kosh</w>\": 45233,\n  \"kosher</w>\": 36502,\n  \"koso\": 23892,\n  \"kosovo</w>\": 28343,\n  \"kot\": 23323,\n  \"kot</w>\": 20701,\n  \"kota</w>\": 21735,\n  \"koto\": 40945,\n  \"koto</w>\": 29977,\n  \"kou\": 18502,\n  \"kou</w>\": 39614,\n  \"kour\": 34134,\n  \"kov\": 17733,\n  \"kov</w>\": 15156,\n  \"kova</w>\": 26185,\n  \"koval\": 47903,\n  \"kovic</w>\": 16886,\n  \"kovich</w>\": 44794,\n  \"kovsky</w>\": 33384,\n  \"kow\": 29764,\n  \"kow</w>\": 23919,\n  \"kowski</w>\": 17649,\n  \"koz\": 29598,\n  \"kp\": 16174,\n  \"kp</w>\": 16894,\n  \"kpa</w>\": 38759,\n  \"kph</w>\": 41138,\n  \"kpk</w>\": 42094,\n  \"kpmg</w>\": 38243,\n  \"kpop\": 29534,\n  \"kpop</w>\": 15859,\n  \"kprc</w>\": 47832,\n  \"kprs</w>\": 46253,\n  \"kr\": 7309,\n  \"kr</w>\": 14107,\n  \"kra\": 5762,\n  \"kraft</w>\": 28057,\n  \"kraja</w>\": 29016,\n  \"kraken</w>\": 48408,\n  \"krakow</w>\": 40033,\n  \"kram\": 19075,\n  \"kramer</w>\": 27495,\n  \"kran\": 33243,\n  \"kranti</w>\": 47969,\n  \"krat\": 30470,\n  \"kre\": 8362,\n  \"kreme</w>\": 43140,\n  \"kremlin</w>\": 33979,\n  \"kri\": 3679,\n  \"kris\": 35251,\n  \"kris</w>\": 12261,\n  \"krish\": 11487,\n  \"krishna</w>\": 15863,\n  \"krishnan</w>\": 46535,\n  \"krispy</w>\": 49292,\n  \"krist\": 16490,\n  \"kristen\": 28881,\n  \"kristen</w>\": 16644,\n  \"kristi\": 26895,\n  \"kristin\": 35408,\n  \"kristin</w>\": 26785,\n  \"kristina</w>\": 33180,\n  \"krit\": 36265,\n  \"kro\": 16193,\n  \"kroger</w>\": 36344,\n  \"kron\": 25999,\n  \"kru\": 10609,\n  \"kruger</w>\": 32948,\n  \"krun\": 43084,\n  \"kry\": 13995,\n  \"krystal</w>\": 36554,\n  \"ks\": 10470,\n  \"ks</w>\": 662,\n  \"ksa</w>\": 25439,\n  \"ksh</w>\": 36594,\n  \"kst</w>\": 17420,\n  \"kstate\": 48590,\n  \"ksu</w>\": 43496,\n  \"kswx</w>\": 36180,\n  \"kt\": 17238,\n  \"kt</w>\": 7792,\n  \"ktm</w>\": 33989,\n  \"ktn\": 42170,\n  \"kton</w>\": 37848,\n  \"kts</w>\": 48577,\n  \"ktv\": 36444,\n  \"ku\": 1836,\n  \"ku</w>\": 4827,\n  \"kuala</w>\": 30336,\n  \"kubball</w>\": 48995,\n  \"kuber\": 41336,\n  \"kubernetes</w>\": 45144,\n  \"kubrick</w>\": 37032,\n  \"kuch</w>\": 39394,\n  \"kud\": 40818,\n  \"kudos</w>\": 14481,\n  \"kul\": 11325,\n  \"kul</w>\": 31514,\n  \"kum\": 18086,\n  \"kum</w>\": 28148,\n  \"kuma\": 43139,\n  \"kuma</w>\": 33920,\n  \"kumar\": 22329,\n  \"kumar</w>\": 7674,\n  \"kumb\": 31391,\n  \"kun\": 6849,\n  \"kun</w>\": 21842,\n  \"kung\": 39656,\n  \"kung</w>\": 22347,\n  \"kunst</w>\": 37881,\n  \"kup\": 39023,\n  \"kups</w>\": 27240,\n  \"kur\": 4862,\n  \"kurdi\": 23504,\n  \"kurdish</w>\": 21644,\n  \"kurdistan</w>\": 24459,\n  \"kurds</w>\": 20888,\n  \"kuri\": 46375,\n  \"kuro\": 28239,\n  \"kuro</w>\": 47826,\n  \"kurt\": 31903,\n  \"kurt</w>\": 14527,\n  \"kus\": 27618,\n  \"kus</w>\": 27505,\n  \"kush\": 22264,\n  \"kush</w>\": 24594,\n  \"kushner</w>\": 36716,\n  \"kut\": 17283,\n  \"kut</w>\": 36965,\n  \"kuwait</w>\": 19679,\n  \"kuya</w>\": 34815,\n  \"kuz\": 33253,\n  \"kv\": 27594,\n  \"kv</w>\": 34249,\n  \"kw\": 10072,\n  \"kw</w>\": 18339,\n  \"kwa\": 32784,\n  \"kwa</w>\": 48576,\n  \"kwame</w>\": 46681,\n  \"kwan\": 37100,\n  \"kwan</w>\": 39447,\n  \"kwang</w>\": 40260,\n  \"kwe\": 26050,\n  \"kwi\": 35327,\n  \"kwon</w>\": 36369,\n  \"kx\": 28190,\n  \"kx</w>\": 46442,\n  \"ky\": 2018,\n  \"ky</w>\": 2383,\n  \"kya</w>\": 29142,\n  \"kyc</w>\": 37758,\n  \"kyiv</w>\": 36422,\n  \"kyle\": 15847,\n  \"kyle</w>\": 7539,\n  \"kylie\": 28282,\n  \"kylie</w>\": 17983,\n  \"kyliejenner</w>\": 47232,\n  \"kylo</w>\": 47704,\n  \"kyo\": 13150,\n  \"kyo</w>\": 6281,\n  \"kyoto</w>\": 23223,\n  \"kyr\": 26329,\n  \"kyrgy\": 40013,\n  \"kyrgyz\": 48346,\n  \"kyrie</w>\": 21857,\n  \"kyu\": 28296,\n  \"kyu</w>\": 25490,\n  \"kyuhyun</w>\": 37229,\n  \"kyung</w>\": 41058,\n  \"kyungsoo</w>\": 30280,\n  \"kywx</w>\": 39940,\n  \"kz\": 48743,\n  \"kz</w>\": 36848,\n  \"kzn</w>\": 38264,\n  \"kÃ¶\": 32437,\n  \"l\": 75,\n  \"l</w>\": 331,\n  \"la\": 572,\n  \"la</w>\": 1210,\n  \"laa</w>\": 44642,\n  \"lab\": 3537,\n  \"lab</w>\": 4352,\n  \"labe\": 25749,\n  \"label\": 12235,\n  \"label</w>\": 9093,\n  \"labeled</w>\": 32720,\n  \"labeling</w>\": 36825,\n  \"labelled</w>\": 45188,\n  \"labels</w>\": 17413,\n  \"lable</w>\": 31879,\n  \"labor\": 11201,\n  \"labor</w>\": 7878,\n  \"laboratories</w>\": 43421,\n  \"laboratory</w>\": 17664,\n  \"laborday</w>\": 39324,\n  \"labou\": 32700,\n  \"labour\": 19586,\n  \"labour</w>\": 6019,\n  \"labourdoorstep</w>\": 37008,\n  \"labout\": 35961,\n  \"labra\": 37067,\n  \"labrador</w>\": 25409,\n  \"labs</w>\": 12021,\n  \"laby\": 29131,\n  \"labyrin\": 31782,\n  \"labyrinth</w>\": 35594,\n  \"lac\": 4477,\n  \"lac</w>\": 16189,\n  \"lace\": 30012,\n  \"lace</w>\": 5421,\n  \"laced</w>\": 36800,\n  \"laces</w>\": 23281,\n  \"lacey</w>\": 31754,\n  \"lach\": 30558,\n  \"lack\": 24915,\n  \"lack</w>\": 8069,\n  \"lacking</w>\": 30080,\n  \"lacks</w>\": 34388,\n  \"laco\": 45882,\n  \"lacrosse</w>\": 12915,\n  \"lacy</w>\": 38645,\n  \"lad\": 15991,\n  \"lad</w>\": 10707,\n  \"ladak\": 42312,\n  \"ladakh</w>\": 45295,\n  \"ladder</w>\": 16637,\n  \"ladders</w>\": 47125,\n  \"lade</w>\": 26447,\n  \"laden</w>\": 28634,\n  \"ladi\": 12934,\n  \"ladies\": 28932,\n  \"ladies</w>\": 3431,\n  \"lads</w>\": 9803,\n  \"lady\": 7275,\n  \"lady</w>\": 2909,\n  \"ladybird</w>\": 43389,\n  \"ladybug</w>\": 40038,\n  \"ladygaga</w>\": 21232,\n  \"laf\": 47555,\n  \"lafayette</w>\": 22683,\n  \"lag\": 30932,\n  \"lag</w>\": 20394,\n  \"laga</w>\": 30161,\n  \"lage</w>\": 24369,\n  \"lager\": 36811,\n  \"lager</w>\": 22989,\n  \"lagh\": 37237,\n  \"laghate\": 47565,\n  \"laghateparth</w>\": 48780,\n  \"lagi</w>\": 39786,\n  \"lago\": 42698,\n  \"lago</w>\": 31476,\n  \"lagoon</w>\": 22753,\n  \"lagos</w>\": 12728,\n  \"lagun\": 18500,\n  \"laguna</w>\": 23609,\n  \"lah\": 27315,\n  \"lah</w>\": 4299,\n  \"lahat</w>\": 42164,\n  \"lahore</w>\": 16733,\n  \"lai</w>\": 23947,\n  \"laid\": 42560,\n  \"laid</w>\": 11160,\n  \"lain\": 46958,\n  \"lain</w>\": 17151,\n  \"laine</w>\": 35860,\n  \"lair</w>\": 31981,\n  \"lais</w>\": 34923,\n  \"lak\": 12890,\n  \"lak</w>\": 26793,\n  \"lake\": 6441,\n  \"lake</w>\": 2553,\n  \"lakedistrict</w>\": 26437,\n  \"lakel\": 26133,\n  \"lakeland</w>\": 34306,\n  \"laker\": 45717,\n  \"lakers</w>\": 13570,\n  \"lakes</w>\": 9265,\n  \"lakeshore</w>\": 42595,\n  \"lakeside</w>\": 30915,\n  \"lakewood</w>\": 36417,\n  \"lakh</w>\": 21487,\n  \"lakhs</w>\": 37985,\n  \"lakings</w>\": 34289,\n  \"lakota</w>\": 45510,\n  \"laksh\": 24937,\n  \"lakshmi</w>\": 39682,\n  \"lal\": 12301,\n  \"lal</w>\": 19430,\n  \"lala</w>\": 33661,\n  \"lali\": 21726,\n  \"laliga</w>\": 32383,\n  \"lam\": 2022,\n  \"lam</w>\": 5704,\n  \"lama</w>\": 26049,\n  \"lamar\": 28678,\n  \"lamar</w>\": 17284,\n  \"lamb\": 19863,\n  \"lamb</w>\": 10034,\n  \"lambda</w>\": 36687,\n  \"lambert</w>\": 14574,\n  \"lambeth</w>\": 43410,\n  \"lambo</w>\": 45464,\n  \"lamborgh\": 18709,\n  \"lamborghini</w>\": 19462,\n  \"lambs</w>\": 30361,\n  \"lame</w>\": 23192,\n  \"lamin\": 22337,\n  \"laminated</w>\": 49079,\n  \"lamo\": 41461,\n  \"lamont</w>\": 46719,\n  \"lamp\": 26700,\n  \"lamp</w>\": 10725,\n  \"lampard</w>\": 39989,\n  \"lamps</w>\": 23424,\n  \"lan\": 1193,\n  \"lan</w>\": 4872,\n  \"lana</w>\": 15406,\n  \"lanapar\": 47437,\n  \"lanaparrilla</w>\": 47819,\n  \"lanc\": 11872,\n  \"lanca\": 15694,\n  \"lancashire</w>\": 20939,\n  \"lancaster</w>\": 16446,\n  \"lance\": 26025,\n  \"lance</w>\": 11609,\n  \"lancer</w>\": 38195,\n  \"lancers</w>\": 46392,\n  \"lancia</w>\": 48698,\n  \"lancs</w>\": 47540,\n  \"land\": 1567,\n  \"land</w>\": 973,\n  \"lande</w>\": 36556,\n  \"landed</w>\": 9873,\n  \"lander\": 37247,\n  \"lander</w>\": 9666,\n  \"landers</w>\": 20019,\n  \"landfall</w>\": 38465,\n  \"landfill</w>\": 34947,\n  \"landia</w>\": 41384,\n  \"landing</w>\": 8292,\n  \"landings</w>\": 46104,\n  \"landlord</w>\": 28938,\n  \"landlords</w>\": 35283,\n  \"landmark</w>\": 15208,\n  \"landmarks</w>\": 30393,\n  \"lando\": 25463,\n  \"lando</w>\": 7065,\n  \"landon</w>\": 32748,\n  \"landrover</w>\": 38125,\n  \"landry</w>\": 36137,\n  \"lands\": 40223,\n  \"lands</w>\": 2961,\n  \"landsc\": 4384,\n  \"landscape\": 21123,\n  \"landscape</w>\": 5727,\n  \"landscapephotography</w>\": 28125,\n  \"landscapes</w>\": 15344,\n  \"landscaping</w>\": 25642,\n  \"landslide</w>\": 31954,\n  \"lane\": 25534,\n  \"lane</w>\": 3980,\n  \"lanes</w>\": 10345,\n  \"laney</w>\": 38552,\n  \"lang\": 7969,\n  \"lang</w>\": 8578,\n  \"lange</w>\": 32021,\n  \"langford</w>\": 45615,\n  \"langley</w>\": 28595,\n  \"langu\": 4095,\n  \"language\": 46103,\n  \"language</w>\": 4781,\n  \"languages</w>\": 13527,\n  \"lani</w>\": 22964,\n  \"lanka</w>\": 16221,\n  \"lankan</w>\": 40531,\n  \"lannister</w>\": 49056,\n  \"lans\": 43550,\n  \"lansing</w>\": 30805,\n  \"lant</w>\": 44504,\n  \"lanta</w>\": 44768,\n  \"lantern</w>\": 17185,\n  \"lanterns</w>\": 33676,\n  \"lantic\": 32601,\n  \"lantic</w>\": 27678,\n  \"lants</w>\": 38425,\n  \"lanyard</w>\": 46808,\n  \"lao\": 32475,\n  \"lao</w>\": 29521,\n  \"laos</w>\": 34353,\n  \"lap\": 7213,\n  \"lap</w>\": 8639,\n  \"lapd</w>\": 32557,\n  \"lapel</w>\": 47961,\n  \"lapland</w>\": 43633,\n  \"laps</w>\": 18711,\n  \"lapse</w>\": 33365,\n  \"laptop</w>\": 10464,\n  \"laptops</w>\": 32189,\n  \"laq</w>\": 45026,\n  \"lar\": 1592,\n  \"lar</w>\": 1652,\n  \"lara</w>\": 19435,\n  \"lard</w>\": 40347,\n  \"lare\": 22415,\n  \"laredo</w>\": 48427,\n  \"large\": 40234,\n  \"large</w>\": 3638,\n  \"largely</w>\": 21418,\n  \"larger</w>\": 12567,\n  \"largest</w>\": 4960,\n  \"largo</w>\": 44161,\n  \"lari\": 34676,\n  \"lark\": 43164,\n  \"lark</w>\": 23536,\n  \"larkin</w>\": 34769,\n  \"larry\": 18642,\n  \"larry</w>\": 8242,\n  \"lars</w>\": 8669,\n  \"larsen</w>\": 39721,\n  \"larson</w>\": 27973,\n  \"larvae</w>\": 44840,\n  \"las\": 8295,\n  \"las</w>\": 2552,\n  \"lasag\": 31210,\n  \"lasagna</w>\": 40683,\n  \"lasalle</w>\": 43866,\n  \"laser\": 25607,\n  \"laser</w>\": 9885,\n  \"lasers</w>\": 37060,\n  \"lash\": 31995,\n  \"lash</w>\": 18480,\n  \"lashes</w>\": 21015,\n  \"lass\": 24203,\n  \"lass</w>\": 18263,\n  \"lassic</w>\": 39430,\n  \"last\": 10600,\n  \"last</w>\": 952,\n  \"lasted</w>\": 25711,\n  \"lasting</w>\": 13434,\n  \"lastnight</w>\": 30159,\n  \"lasts</w>\": 20141,\n  \"lasvegas</w>\": 17789,\n  \"lat\": 1591,\n  \"lat</w>\": 28437,\n  \"lata</w>\": 47114,\n  \"latam</w>\": 40012,\n  \"late\": 13267,\n  \"late</w>\": 2325,\n  \"latel\": 49035,\n  \"lately</w>\": 11824,\n  \"latepost</w>\": 48328,\n  \"later\": 24109,\n  \"later</w>\": 2941,\n  \"lateral</w>\": 26646,\n  \"latest\": 46805,\n  \"latest</w>\": 2053,\n  \"latex</w>\": 27520,\n  \"lati\": 16357,\n  \"latimes</w>\": 43356,\n  \"latin\": 16695,\n  \"latin</w>\": 9888,\n  \"latina</w>\": 27936,\n  \"latino\": 45734,\n  \"latino</w>\": 19470,\n  \"latinos</w>\": 40233,\n  \"lation</w>\": 6191,\n  \"latitude</w>\": 37392,\n  \"lative</w>\": 15719,\n  \"lator</w>\": 9291,\n  \"lators</w>\": 28278,\n  \"latt\": 33561,\n  \"latte</w>\": 17697,\n  \"latter</w>\": 26198,\n  \"latvia</w>\": 30034,\n  \"lau\": 1853,\n  \"lau</w>\": 23090,\n  \"lauderdale</w>\": 24352,\n  \"laugh\": 4969,\n  \"laugh</w>\": 6332,\n  \"laughed</w>\": 16746,\n  \"laughing</w>\": 8301,\n  \"laughs</w>\": 14322,\n  \"laughter</w>\": 10722,\n  \"laun\": 2944,\n  \"launch\": 31168,\n  \"launch</w>\": 2904,\n  \"launched</w>\": 6125,\n  \"launcher</w>\": 35782,\n  \"launches</w>\": 7023,\n  \"launching</w>\": 8565,\n  \"laundering</w>\": 34079,\n  \"laundry</w>\": 14797,\n  \"laur\": 15256,\n  \"laura\": 17091,\n  \"laura</w>\": 7763,\n  \"laure\": 16932,\n  \"laureate</w>\": 25675,\n  \"laurel\": 43370,\n  \"laurel</w>\": 19942,\n  \"lauren\": 10456,\n  \"lauren</w>\": 7634,\n  \"laurence</w>\": 29353,\n  \"laurent</w>\": 23226,\n  \"laurie</w>\": 20326,\n  \"laus\": 38895,\n  \"laus</w>\": 28111,\n  \"lause</w>\": 22269,\n  \"laut\": 47688,\n  \"lav\": 13767,\n  \"lav</w>\": 26919,\n  \"lava</w>\": 16765,\n  \"laven\": 15047,\n  \"lavender</w>\": 16033,\n  \"laver\": 28188,\n  \"lavish</w>\": 35443,\n  \"law\": 2874,\n  \"law</w>\": 2606,\n  \"lawful</w>\": 33845,\n  \"lawler</w>\": 47862,\n  \"lawless</w>\": 39468,\n  \"lawmaker</w>\": 37169,\n  \"lawmakers</w>\": 21190,\n  \"lawn\": 31675,\n  \"lawn</w>\": 11024,\n  \"lawrence\": 32221,\n  \"lawrence</w>\": 8820,\n  \"laws</w>\": 7306,\n  \"lawson</w>\": 22152,\n  \"lawsuit</w>\": 14346,\n  \"lawsuits</w>\": 44331,\n  \"lawyer</w>\": 10552,\n  \"lawyers</w>\": 14232,\n  \"lax\": 17750,\n  \"lax</w>\": 10024,\n  \"lay\": 7205,\n  \"lay</w>\": 6360,\n  \"laye\": 25995,\n  \"layer</w>\": 12411,\n  \"layered</w>\": 28520,\n  \"layers</w>\": 15900,\n  \"laying</w>\": 12333,\n  \"layla</w>\": 45050,\n  \"layne</w>\": 48721,\n  \"layo\": 21738,\n  \"layoffs</w>\": 29019,\n  \"layout</w>\": 17314,\n  \"lays</w>\": 19546,\n  \"layton</w>\": 38061,\n  \"laz\": 18806,\n  \"lazar\": 33075,\n  \"lazarus</w>\": 49126,\n  \"laze</w>\": 41559,\n  \"lazer</w>\": 43735,\n  \"lazio</w>\": 33010,\n  \"lazy\": 32614,\n  \"lazy</w>\": 10753,\n  \"lb\": 21958,\n  \"lb</w>\": 7422,\n  \"lbc</w>\": 37694,\n  \"lbj</w>\": 45683,\n  \"lbloggers</w>\": 48695,\n  \"lbs</w>\": 8912,\n  \"lc\": 9584,\n  \"lc</w>\": 7225,\n  \"lcd</w>\": 21356,\n  \"lcfc</w>\": 25339,\n  \"lcs</w>\": 32279,\n  \"ld\": 1431,\n  \"ld</w>\": 730,\n  \"lder</w>\": 6945,\n  \"lders</w>\": 43221,\n  \"ldn\": 37050,\n  \"ldn</w>\": 2517,\n  \"ldnont</w>\": 25827,\n  \"ldnt</w>\": 21690,\n  \"ldr</w>\": 37279,\n  \"lds</w>\": 31235,\n  \"le\": 534,\n  \"le</w>\": 579,\n  \"lea\": 2246,\n  \"lea</w>\": 13324,\n  \"leach</w>\": 35527,\n  \"lead\": 1328,\n  \"lead</w>\": 2784,\n  \"leader\": 14806,\n  \"leader</w>\": 3236,\n  \"leaderboard</w>\": 34519,\n  \"leaders</w>\": 3546,\n  \"leadership\": 36876,\n  \"leadership</w>\": 3652,\n  \"leading</w>\": 3833,\n  \"leads</w>\": 5335,\n  \"leaf\": 9377,\n  \"leaf</w>\": 7232,\n  \"leaflet</w>\": 38289,\n  \"leaflets</w>\": 39014,\n  \"leafs</w>\": 16688,\n  \"leafy</w>\": 42616,\n  \"leagu\": 13317,\n  \"league\": 16635,\n  \"league</w>\": 2313,\n  \"leagueof\": 26022,\n  \"leagueoflegends</w>\": 31737,\n  \"leagues</w>\": 19888,\n  \"leah\": 24350,\n  \"leah</w>\": 19308,\n  \"leak\": 42900,\n  \"leak</w>\": 15489,\n  \"leaked</w>\": 14353,\n  \"leaking</w>\": 34097,\n  \"leaks</w>\": 15657,\n  \"leam\": 39606,\n  \"lean\": 12447,\n  \"lean</w>\": 8208,\n  \"leaning</w>\": 24411,\n  \"leanne</w>\": 41448,\n  \"leans</w>\": 9357,\n  \"leap\": 29129,\n  \"leap</w>\": 15392,\n  \"leaps</w>\": 48080,\n  \"lear\": 1146,\n  \"lear</w>\": 27663,\n  \"learn\": 16959,\n  \"learn</w>\": 1768,\n  \"learned</w>\": 6048,\n  \"learnenglish</w>\": 49040,\n  \"learner</w>\": 33547,\n  \"learners</w>\": 19572,\n  \"learning\": 22632,\n  \"learning</w>\": 2378,\n  \"learns</w>\": 17569,\n  \"learnt</w>\": 18959,\n  \"leary</w>\": 36051,\n  \"lease\": 49041,\n  \"lease</w>\": 14394,\n  \"leased</w>\": 48352,\n  \"leash</w>\": 36192,\n  \"leasing</w>\": 29160,\n  \"least</w>\": 3651,\n  \"leather\": 21417,\n  \"leather</w>\": 5862,\n  \"leau</w>\": 26498,\n  \"leav\": 3198,\n  \"leave\": 37512,\n  \"leave</w>\": 3258,\n  \"leaves</w>\": 5579,\n  \"leaving</w>\": 5216,\n  \"leban\": 9360,\n  \"lebanese</w>\": 23819,\n  \"lebanon</w>\": 11695,\n  \"leblanc</w>\": 46381,\n  \"lebo\": 44184,\n  \"lebron</w>\": 11971,\n  \"lebu\": 47030,\n  \"lec\": 944,\n  \"lec</w>\": 35374,\n  \"leche</w>\": 46197,\n  \"lect</w>\": 45392,\n  \"lection</w>\": 18252,\n  \"lections</w>\": 30995,\n  \"lecture</w>\": 6617,\n  \"lecturer</w>\": 23795,\n  \"lectures</w>\": 21118,\n  \"led\": 8767,\n  \"led</w>\": 912,\n  \"ledge\": 23647,\n  \"ledge</w>\": 4815,\n  \"ledger</w>\": 26817,\n  \"leds</w>\": 36763,\n  \"lee\": 6224,\n  \"lee</w>\": 2592,\n  \"leed\": 16483,\n  \"leed</w>\": 40206,\n  \"leeds\": 38900,\n  \"leeds</w>\": 7420,\n  \"leek</w>\": 34585,\n  \"leeminho</w>\": 37831,\n  \"leen\": 35311,\n  \"leen</w>\": 15940,\n  \"leep\": 48875,\n  \"leep</w>\": 10191,\n  \"lees\": 29324,\n  \"lees</w>\": 34056,\n  \"lef\": 9152,\n  \"left\": 33949,\n  \"left</w>\": 1823,\n  \"leftist</w>\": 35143,\n  \"lefto\": 17437,\n  \"leftover</w>\": 26414,\n  \"leftovers</w>\": 28481,\n  \"lefty</w>\": 33935,\n  \"leg\": 1211,\n  \"leg</w>\": 4924,\n  \"lega</w>\": 38674,\n  \"legacy\": 44108,\n  \"legacy</w>\": 6447,\n  \"legal\": 17743,\n  \"legal</w>\": 3998,\n  \"legalization</w>\": 40584,\n  \"legalize</w>\": 42921,\n  \"legally</w>\": 14152,\n  \"legate</w>\": 46009,\n  \"lege</w>\": 8065,\n  \"legen\": 6105,\n  \"legend\": 5480,\n  \"legend</w>\": 3539,\n  \"legendary</w>\": 6053,\n  \"legendof\": 47915,\n  \"legends</w>\": 6396,\n  \"leges</w>\": 15356,\n  \"legg\": 18474,\n  \"legg</w>\": 32511,\n  \"legged</w>\": 25830,\n  \"leggings</w>\": 22895,\n  \"leggo</w>\": 43441,\n  \"legi\": 11183,\n  \"legion\": 35503,\n  \"legion</w>\": 14525,\n  \"legis\": 7200,\n  \"legislat\": 16486,\n  \"legislation</w>\": 14143,\n  \"legislative</w>\": 16755,\n  \"legislators</w>\": 31572,\n  \"legislature</w>\": 22309,\n  \"legit</w>\": 12563,\n  \"legitim\": 17656,\n  \"legitimate</w>\": 24491,\n  \"lego\": 28117,\n  \"lego</w>\": 7849,\n  \"legos</w>\": 45359,\n  \"legs</w>\": 7072,\n  \"leh\": 19105,\n  \"leh</w>\": 29298,\n  \"lehead</w>\": 28090,\n  \"lehigh</w>\": 34527,\n  \"lehman</w>\": 46094,\n  \"lei\": 15828,\n  \"lei</w>\": 21830,\n  \"leia</w>\": 32723,\n  \"leic\": 35073,\n  \"leica</w>\": 30206,\n  \"leice\": 10026,\n  \"leicester\": 28795,\n  \"leicester</w>\": 11510,\n  \"leicestershire</w>\": 45358,\n  \"leigh\": 14849,\n  \"leigh</w>\": 9292,\n  \"leighton</w>\": 30782,\n  \"leila</w>\": 41342,\n  \"lein\": 20026,\n  \"lein</w>\": 28551,\n  \"leinster</w>\": 32242,\n  \"leip\": 36401,\n  \"leipzig</w>\": 41860,\n  \"leis\": 13133,\n  \"leisure</w>\": 15849,\n  \"leit\": 35446,\n  \"leith</w>\": 34141,\n  \"lek\": 26626,\n  \"lek</w>\": 36535,\n  \"lel</w>\": 46623,\n  \"lele</w>\": 26075,\n  \"lem\": 10213,\n  \"lem</w>\": 8428,\n  \"leman</w>\": 24478,\n  \"lemans</w>\": 26694,\n  \"lement</w>\": 9693,\n  \"lements</w>\": 15833,\n  \"lemme</w>\": 23318,\n  \"lemon\": 12272,\n  \"lemon</w>\": 7184,\n  \"lemonade</w>\": 18884,\n  \"lemons</w>\": 29576,\n  \"lemore</w>\": 41147,\n  \"len\": 3687,\n  \"len</w>\": 2159,\n  \"lena</w>\": 22038,\n  \"lend\": 45397,\n  \"lend</w>\": 24987,\n  \"lender</w>\": 44734,\n  \"lenders</w>\": 42443,\n  \"lending</w>\": 20209,\n  \"lene</w>\": 17628,\n  \"leness</w>\": 36551,\n  \"leng\": 7861,\n  \"length</w>\": 10130,\n  \"lengths</w>\": 31858,\n  \"lengthy</w>\": 32624,\n  \"lenin</w>\": 41760,\n  \"lennon</w>\": 18360,\n  \"lennox</w>\": 45748,\n  \"lenny\": 48448,\n  \"lenny</w>\": 30124,\n  \"leno</w>\": 45357,\n  \"lenovo</w>\": 25886,\n  \"lens</w>\": 8666,\n  \"lenses</w>\": 21264,\n  \"lent\": 20943,\n  \"lent</w>\": 22605,\n  \"lentil</w>\": 41511,\n  \"lentils</w>\": 44269,\n  \"leo\": 24008,\n  \"leo</w>\": 8312,\n  \"leon\": 6581,\n  \"leon</w>\": 9763,\n  \"leonard\": 43849,\n  \"leonard</w>\": 13142,\n  \"leonardo</w>\": 20282,\n  \"leone</w>\": 22864,\n  \"leop\": 11234,\n  \"leopard</w>\": 15931,\n  \"leopards</w>\": 40996,\n  \"leopold</w>\": 45501,\n  \"lep\": 48884,\n  \"leppard</w>\": 41656,\n  \"lepre\": 45641,\n  \"ler\": 5587,\n  \"ler</w>\": 1803,\n  \"lero\": 15067,\n  \"lerosis</w>\": 35455,\n  \"leroy</w>\": 32441,\n  \"lers</w>\": 6247,\n  \"lery</w>\": 38184,\n  \"les\": 4339,\n  \"les</w>\": 840,\n  \"lesbian</w>\": 17419,\n  \"lesbians</w>\": 43182,\n  \"lesh</w>\": 32282,\n  \"lesley</w>\": 25506,\n  \"lesli\": 13649,\n  \"leslie</w>\": 16244,\n  \"lesn\": 39568,\n  \"lesnar</w>\": 42223,\n  \"less\": 3242,\n  \"less</w>\": 1285,\n  \"lesser</w>\": 20369,\n  \"lessly</w>\": 13103,\n  \"lessness</w>\": 24847,\n  \"lesson</w>\": 7714,\n  \"lessons</w>\": 7199,\n  \"lest\": 24372,\n  \"lest</w>\": 6794,\n  \"lester\": 23157,\n  \"lester</w>\": 24023,\n  \"lestwe\": 29726,\n  \"lestweforget</w>\": 30273,\n  \"let\": 1898,\n  \"let</w>\": 1094,\n  \"leta</w>\": 34319,\n  \"lete</w>\": 34078,\n  \"letes</w>\": 6815,\n  \"leth\": 30022,\n  \"leth</w>\": 42462,\n  \"lethal</w>\": 21905,\n  \"lethbridge</w>\": 48390,\n  \"leti</w>\": 34176,\n  \"letics</w>\": 14504,\n  \"letit\": 46423,\n  \"leto</w>\": 32203,\n  \"leton\": 37674,\n  \"leton</w>\": 7462,\n  \"lets\": 10448,\n  \"lets</w>\": 3243,\n  \"letsgo\": 16967,\n  \"letsgo</w>\": 29789,\n  \"letstalk</w>\": 35591,\n  \"lett\": 22428,\n  \"lett</w>\": 9778,\n  \"lette\": 41798,\n  \"lette</w>\": 10301,\n  \"letter\": 15567,\n  \"letter</w>\": 4861,\n  \"lettering</w>\": 26382,\n  \"letterman</w>\": 38447,\n  \"letters</w>\": 9181,\n  \"letting</w>\": 9510,\n  \"letto</w>\": 35449,\n  \"lettu\": 17933,\n  \"lettuce</w>\": 18573,\n  \"leu\": 15691,\n  \"leuke\": 31031,\n  \"leukemia</w>\": 32097,\n  \"leum</w>\": 21571,\n  \"leur</w>\": 45806,\n  \"lev\": 17022,\n  \"lev</w>\": 29950,\n  \"levan\": 42543,\n  \"leve\": 36271,\n  \"level\": 21682,\n  \"level</w>\": 2931,\n  \"leveled</w>\": 48453,\n  \"levels</w>\": 6295,\n  \"leven\": 44792,\n  \"leven</w>\": 34729,\n  \"lever\": 20178,\n  \"lever</w>\": 23094,\n  \"leverage</w>\": 24030,\n  \"leveraging</w>\": 37948,\n  \"levi\": 25630,\n  \"levi</w>\": 19113,\n  \"leviathan</w>\": 41736,\n  \"levin</w>\": 36949,\n  \"levine</w>\": 26594,\n  \"levit\": 22715,\n  \"levy</w>\": 17147,\n  \"lew\": 5063,\n  \"lew</w>\": 25329,\n  \"lewan\": 48349,\n  \"lewd</w>\": 45241,\n  \"lewes</w>\": 40431,\n  \"lewi\": 19589,\n  \"lewis\": 22043,\n  \"lewis</w>\": 6020,\n  \"lewisham\": 37385,\n  \"lewisham</w>\": 47633,\n  \"lewishamilton</w>\": 42960,\n  \"lewood</w>\": 37951,\n  \"lex\": 6586,\n  \"lex</w>\": 9658,\n  \"lexa</w>\": 48259,\n  \"lexi\": 44231,\n  \"lexi</w>\": 24679,\n  \"lexington</w>\": 22308,\n  \"lexus</w>\": 20694,\n  \"ley\": 2565,\n  \"ley</w>\": 1066,\n  \"leye</w>\": 37061,\n  \"leys\": 45609,\n  \"leys</w>\": 14834,\n  \"leyton</w>\": 46573,\n  \"lez</w>\": 26442,\n  \"lf\": 33960,\n  \"lf</w>\": 22078,\n  \"lfc\": 37826,\n  \"lfc</w>\": 8267,\n  \"lfw</w>\": 28514,\n  \"lg\": 4546,\n  \"lg</w>\": 11368,\n  \"lga</w>\": 39348,\n  \"lgb\": 25401,\n  \"lgbt\": 11743,\n  \"lgbt</w>\": 9592,\n  \"lgbti</w>\": 42730,\n  \"lgbtq\": 47625,\n  \"lgbtq</w>\": 14939,\n  \"lgm</w>\": 39389,\n  \"lh\": 27794,\n  \"lh</w>\": 31159,\n  \"lhp</w>\": 45092,\n  \"lhs</w>\": 33170,\n  \"li\": 554,\n  \"li</w>\": 4250,\n  \"lia\": 26118,\n  \"lia</w>\": 6964,\n  \"liability</w>\": 29139,\n  \"liaison</w>\": 39294,\n  \"liam\": 5258,\n  \"liam</w>\": 7167,\n  \"lian</w>\": 18058,\n  \"liance</w>\": 40864,\n  \"liar</w>\": 16334,\n  \"liars</w>\": 23863,\n  \"lias</w>\": 46021,\n  \"lib\": 10249,\n  \"lib</w>\": 13345,\n  \"libby</w>\": 36832,\n  \"libdems</w>\": 40869,\n  \"liber\": 3425,\n  \"liberal\": 48032,\n  \"liberal</w>\": 9985,\n  \"liberalism</w>\": 40018,\n  \"liberals</w>\": 15981,\n  \"liberated</w>\": 38690,\n  \"liberation</w>\": 19507,\n  \"liberia</w>\": 32208,\n  \"libertarian</w>\": 35067,\n  \"liberties</w>\": 48623,\n  \"liberty\": 23397,\n  \"liberty</w>\": 8480,\n  \"libr\": 2856,\n  \"libra</w>\": 43038,\n  \"librarian</w>\": 25148,\n  \"librarians</w>\": 37806,\n  \"libraries</w>\": 14277,\n  \"library\": 25713,\n  \"library</w>\": 3519,\n  \"libre\": 49210,\n  \"libre</w>\": 31681,\n  \"libs</w>\": 26401,\n  \"liby\": 36390,\n  \"libya</w>\": 16417,\n  \"libyan</w>\": 42319,\n  \"lic\": 2508,\n  \"lic</w>\": 3376,\n  \"lice</w>\": 45691,\n  \"licen\": 6706,\n  \"licence</w>\": 20550,\n  \"license</w>\": 10337,\n  \"licensed</w>\": 18752,\n  \"licenses</w>\": 36414,\n  \"licensing</w>\": 24219,\n  \"lich\": 23979,\n  \"lich</w>\": 25875,\n  \"lick\": 29197,\n  \"lick</w>\": 17541,\n  \"licking</w>\": 33013,\n  \"licks</w>\": 42117,\n  \"lics</w>\": 44552,\n  \"lid\": 39369,\n  \"lid</w>\": 17678,\n  \"lidge</w>\": 45558,\n  \"lido</w>\": 35683,\n  \"lids</w>\": 41609,\n  \"lie\": 6570,\n  \"lie</w>\": 2538,\n  \"lieb</w>\": 45387,\n  \"liebe</w>\": 37749,\n  \"lied</w>\": 6486,\n  \"lief</w>\": 38428,\n  \"lien</w>\": 45716,\n  \"lier</w>\": 3626,\n  \"liers</w>\": 19303,\n  \"lies\": 37236,\n  \"lies</w>\": 3205,\n  \"liest</w>\": 14020,\n  \"liet</w>\": 41107,\n  \"lieu\": 20401,\n  \"lieu</w>\": 35313,\n  \"lieutenant</w>\": 22538,\n  \"lif\": 16456,\n  \"life\": 2666,\n  \"life</w>\": 970,\n  \"lifeat\": 27801,\n  \"lifeboat</w>\": 37404,\n  \"lifecycle</w>\": 49171,\n  \"lifein\": 48447,\n  \"lifeis\": 24824,\n  \"lifeisgood</w>\": 46433,\n  \"lifel\": 15025,\n  \"lifeline</w>\": 38438,\n  \"lifelong</w>\": 21358,\n  \"lifeof\": 36061,\n  \"lifesaving</w>\": 48016,\n  \"lifespan</w>\": 49257,\n  \"lifestyle\": 46512,\n  \"lifestyle</w>\": 7037,\n  \"lifestyles</w>\": 48521,\n  \"lifetime\": 48737,\n  \"lifetime</w>\": 9107,\n  \"liff</w>\": 34404,\n  \"liffe</w>\": 38942,\n  \"lift\": 33146,\n  \"lift</w>\": 6779,\n  \"lifted</w>\": 16783,\n  \"lifter</w>\": 38555,\n  \"lifting</w>\": 10857,\n  \"lifts</w>\": 18291,\n  \"lig\": 19915,\n  \"lig</w>\": 38493,\n  \"liga</w>\": 16802,\n  \"ligam\": 31077,\n  \"ligament</w>\": 48705,\n  \"ligan</w>\": 27962,\n  \"ligans</w>\": 42133,\n  \"ligh\": 7510,\n  \"light\": 3885,\n  \"light</w>\": 1395,\n  \"lighted</w>\": 18404,\n  \"lighten</w>\": 32717,\n  \"lightening</w>\": 28170,\n  \"lighter</w>\": 14102,\n  \"lighthouse</w>\": 13717,\n  \"lighting</w>\": 5799,\n  \"lightly</w>\": 26878,\n  \"lightning</w>\": 7756,\n  \"lightroom</w>\": 41454,\n  \"lights</w>\": 3073,\n  \"lightweight</w>\": 16278,\n  \"ligu\": 42920,\n  \"ligue</w>\": 29196,\n  \"lik\": 4831,\n  \"lik</w>\": 18495,\n  \"like\": 9175,\n  \"like</w>\": 789,\n  \"liked</w>\": 7112,\n  \"likefor\": 48444,\n  \"likeli\": 40666,\n  \"likelihood</w>\": 48158,\n  \"likely</w>\": 5256,\n  \"liken\": 36084,\n  \"likes</w>\": 4724,\n  \"liking</w>\": 16810,\n  \"lil\": 6012,\n  \"lil</w>\": 4461,\n  \"lilac</w>\": 33647,\n  \"lili\": 26686,\n  \"lili</w>\": 48411,\n  \"lilies</w>\": 38110,\n  \"lillard</w>\": 47016,\n  \"lille</w>\": 38705,\n  \"lilli\": 40920,\n  \"lillian</w>\": 41563,\n  \"lilly\": 47825,\n  \"lilly</w>\": 21815,\n  \"lily\": 23803,\n  \"lily</w>\": 10647,\n  \"lim\": 2377,\n  \"lim</w>\": 17204,\n  \"lima</w>\": 17589,\n  \"limb\": 27061,\n  \"limb</w>\": 32363,\n  \"limbo</w>\": 46179,\n  \"limbs</w>\": 34886,\n  \"lime\": 17385,\n  \"lime</w>\": 11193,\n  \"limel\": 48658,\n  \"limer\": 16915,\n  \"limerick</w>\": 19501,\n  \"limestone</w>\": 27272,\n  \"limit\": 18933,\n  \"limit</w>\": 9973,\n  \"limitations</w>\": 32730,\n  \"limited\": 49229,\n  \"limited</w>\": 3472,\n  \"limiting</w>\": 35812,\n  \"limitless</w>\": 35833,\n  \"limits</w>\": 11966,\n  \"limo</w>\": 33166,\n  \"limous\": 47287,\n  \"limpopo</w>\": 47175,\n  \"lin\": 1254,\n  \"lin</w>\": 2424,\n  \"lina</w>\": 26110,\n  \"lincol\": 6239,\n  \"lincoln\": 16957,\n  \"lincoln</w>\": 7454,\n  \"lincolnshire</w>\": 29014,\n  \"lind\": 6492,\n  \"linda\": 45410,\n  \"linda</w>\": 10760,\n  \"linden\": 44076,\n  \"linden</w>\": 34832,\n  \"lindo</w>\": 38467,\n  \"lindsay\": 29846,\n  \"lindsay</w>\": 16858,\n  \"lindsey\": 29475,\n  \"lindsey</w>\": 18128,\n  \"line\": 3674,\n  \"line</w>\": 1148,\n  \"linear</w>\": 19816,\n  \"linebacker</w>\": 29848,\n  \"lined</w>\": 11842,\n  \"lineman</w>\": 31501,\n  \"linen</w>\": 20032,\n  \"liner</w>\": 11618,\n  \"liners</w>\": 24463,\n  \"lines</w>\": 3418,\n  \"liness</w>\": 28633,\n  \"lineup</w>\": 7316,\n  \"lineups</w>\": 33589,\n  \"ling\": 4851,\n  \"ling</w>\": 1358,\n  \"linger</w>\": 29593,\n  \"lingerie</w>\": 18473,\n  \"lingering</w>\": 46494,\n  \"lings</w>\": 11390,\n  \"lington\": 27673,\n  \"lington</w>\": 9002,\n  \"lingu\": 34449,\n  \"lingui\": 29942,\n  \"linguistic</w>\": 46847,\n  \"linguistics</w>\": 48651,\n  \"lining</w>\": 11589,\n  \"link\": 18433,\n  \"link</w>\": 2468,\n  \"linke\": 15088,\n  \"linked</w>\": 11059,\n  \"linkedin</w>\": 16302,\n  \"linkin\": 40287,\n  \"linkin</w>\": 49291,\n  \"linking</w>\": 23296,\n  \"links</w>\": 8113,\n  \"linn</w>\": 37431,\n  \"lino\": 41189,\n  \"lino</w>\": 34995,\n  \"lins</w>\": 6567,\n  \"linson</w>\": 15401,\n  \"linton</w>\": 36479,\n  \"linus</w>\": 49303,\n  \"linux</w>\": 14061,\n  \"lio</w>\": 19395,\n  \"lion\": 8872,\n  \"lion</w>\": 5567,\n  \"lionel</w>\": 19441,\n  \"lions</w>\": 7093,\n  \"lip\": 8630,\n  \"lip</w>\": 8546,\n  \"lipo\": 38795,\n  \"lipp\": 38074,\n  \"lips</w>\": 8847,\n  \"lipse</w>\": 10351,\n  \"lipstick</w>\": 15618,\n  \"liqu\": 6310,\n  \"lique\": 32680,\n  \"liqueur</w>\": 43612,\n  \"liqui\": 33817,\n  \"liquid\": 18366,\n  \"liquid</w>\": 10158,\n  \"liquidity</w>\": 42812,\n  \"liquor</w>\": 17828,\n  \"lis\": 7297,\n  \"lis</w>\": 12749,\n  \"lisa\": 25236,\n  \"lisa</w>\": 7424,\n  \"lisam\": 43072,\n  \"lisboa</w>\": 40052,\n  \"lisbon</w>\": 17708,\n  \"lish\": 12658,\n  \"lish</w>\": 2354,\n  \"lished</w>\": 22620,\n  \"lisle</w>\": 21529,\n  \"lism</w>\": 34390,\n  \"liss\": 45489,\n  \"liss</w>\": 35433,\n  \"lisse</w>\": 49309,\n  \"list\": 1734,\n  \"list</w>\": 1998,\n  \"lista</w>\": 37812,\n  \"listed</w>\": 6457,\n  \"listen\": 17454,\n  \"listen</w>\": 2672,\n  \"listened</w>\": 15347,\n  \"listener</w>\": 34819,\n  \"listeners</w>\": 26901,\n  \"listening</w>\": 3656,\n  \"listens</w>\": 25912,\n  \"lister</w>\": 45109,\n  \"listing</w>\": 8145,\n  \"listings</w>\": 21987,\n  \"liston</w>\": 48041,\n  \"lists</w>\": 12281,\n  \"lit\": 2213,\n  \"lit</w>\": 4350,\n  \"lita</w>\": 30100,\n  \"lite\": 29273,\n  \"lite</w>\": 13694,\n  \"litecoin</w>\": 39063,\n  \"liter\": 3085,\n  \"liter</w>\": 34904,\n  \"literacy</w>\": 12841,\n  \"literal</w>\": 24269,\n  \"literally</w>\": 4719,\n  \"literary</w>\": 13586,\n  \"literature</w>\": 11072,\n  \"litfest</w>\": 40369,\n  \"lith\": 37005,\n  \"lithium</w>\": 22794,\n  \"litho\": 31088,\n  \"lithograph</w>\": 49022,\n  \"lithu\": 21045,\n  \"lithuania</w>\": 27068,\n  \"liti\": 24292,\n  \"litigation</w>\": 31769,\n  \"lito</w>\": 47381,\n  \"litre</w>\": 25786,\n  \"litres</w>\": 39919,\n  \"litt\": 1216,\n  \"litt</w>\": 47583,\n  \"litter\": 45431,\n  \"litter</w>\": 17118,\n  \"litters</w>\": 45300,\n  \"little\": 7024,\n  \"little</w>\": 1274,\n  \"littlemix</w>\": 29731,\n  \"littlest</w>\": 48969,\n  \"litur\": 36830,\n  \"litz</w>\": 30357,\n  \"liu</w>\": 20466,\n  \"liv\": 13895,\n  \"liv</w>\": 19901,\n  \"livan</w>\": 12785,\n  \"live\": 3215,\n  \"live</w>\": 1064,\n  \"lived</w>\": 8867,\n  \"livel\": 17973,\n  \"liveli\": 26566,\n  \"livelihood</w>\": 46497,\n  \"livelihoods</w>\": 47716,\n  \"lively</w>\": 19663,\n  \"liveme</w>\": 35396,\n  \"livemusic</w>\": 15688,\n  \"liven\": 41057,\n  \"liveon\": 22815,\n  \"livepd\": 38742,\n  \"livepd</w>\": 31899,\n  \"liver\": 4755,\n  \"liver</w>\": 12639,\n  \"liverpool\": 29778,\n  \"liverpool</w>\": 5366,\n  \"livery</w>\": 23248,\n  \"lives</w>\": 3247,\n  \"livesmatter</w>\": 20348,\n  \"livestock</w>\": 22079,\n  \"livestream</w>\": 16844,\n  \"livetweet</w>\": 38546,\n  \"livin</w>\": 28061,\n  \"living\": 10965,\n  \"living</w>\": 2815,\n  \"livingston</w>\": 30551,\n  \"lix</w>\": 45068,\n  \"liz\": 8632,\n  \"liz</w>\": 12242,\n  \"liza</w>\": 28787,\n  \"lizard</w>\": 17221,\n  \"lizards</w>\": 41991,\n  \"lizasober\": 44487,\n  \"lizasoberano</w>\": 45076,\n  \"lizz\": 34430,\n  \"lizzie</w>\": 29530,\n  \"lizzy</w>\": 32306,\n  \"lj\": 34211,\n  \"lj</w>\": 32273,\n  \"lju\": 44562,\n  \"lk\": 39110,\n  \"lk</w>\": 26596,\n  \"lka</w>\": 21881,\n  \"ll\": 1657,\n  \"ll</w>\": 865,\n  \"lla</w>\": 15419,\n  \"llama</w>\": 36679,\n  \"llan\": 17281,\n  \"llan</w>\": 38728,\n  \"lland\": 31150,\n  \"llc</w>\": 17161,\n  \"lle\": 26550,\n  \"lle</w>\": 29732,\n  \"llen\": 41197,\n  \"ller</w>\": 7722,\n  \"llers</w>\": 26426,\n  \"lli\": 47015,\n  \"lli</w>\": 13368,\n  \"llis</w>\": 25518,\n  \"lll</w>\": 27177,\n  \"llll\": 34874,\n  \"llll</w>\": 43485,\n  \"llo</w>\": 19293,\n  \"lloy\": 10092,\n  \"lloyd\": 33339,\n  \"lloyd</w>\": 12400,\n  \"llp</w>\": 28042,\n  \"lls</w>\": 40535,\n  \"lly</w>\": 26379,\n  \"lm\": 6981,\n  \"lm</w>\": 15282,\n  \"lma\": 4493,\n  \"lmao</w>\": 5121,\n  \"lmaoo</w>\": 32623,\n  \"lmaooo</w>\": 33362,\n  \"lmaoooo</w>\": 45232,\n  \"lmfa\": 8928,\n  \"lmfao</w>\": 11068,\n  \"lmfaooo</w>\": 47658,\n  \"lmp</w>\": 43575,\n  \"lms</w>\": 30381,\n  \"ln\": 31644,\n  \"ln</w>\": 18654,\n  \"lng</w>\": 22339,\n  \"lnp</w>\": 39679,\n  \"lo\": 549,\n  \"lo</w>\": 2982,\n  \"loa</w>\": 39678,\n  \"load\": 4515,\n  \"load</w>\": 2834,\n  \"loaded</w>\": 6756,\n  \"loader</w>\": 28492,\n  \"loading</w>\": 9975,\n  \"loads</w>\": 8691,\n  \"loaf\": 26467,\n  \"loaf</w>\": 18273,\n  \"loan\": 28431,\n  \"loan</w>\": 8176,\n  \"loans</w>\": 14206,\n  \"lob\": 11197,\n  \"lob</w>\": 46606,\n  \"lobal</w>\": 34574,\n  \"lobb\": 27698,\n  \"lobby</w>\": 12449,\n  \"lobbying</w>\": 36047,\n  \"lobe</w>\": 46325,\n  \"lobes</w>\": 24148,\n  \"lobo</w>\": 39323,\n  \"lobos</w>\": 36586,\n  \"lobster</w>\": 13793,\n  \"loc\": 1378,\n  \"loc</w>\": 25826,\n  \"local\": 9202,\n  \"local</w>\": 2029,\n  \"localized</w>\": 49399,\n  \"locally</w>\": 15603,\n  \"locals</w>\": 15041,\n  \"locate</w>\": 20490,\n  \"located</w>\": 5677,\n  \"location</w>\": 4372,\n  \"locations</w>\": 9580,\n  \"loch\": 20188,\n  \"loch</w>\": 14101,\n  \"lock\": 7201,\n  \"lock</w>\": 4381,\n  \"lockdown</w>\": 35636,\n  \"locke</w>\": 29698,\n  \"locked</w>\": 8371,\n  \"locker</w>\": 14053,\n  \"lockhart</w>\": 48642,\n  \"lockheed</w>\": 36637,\n  \"locking</w>\": 19978,\n  \"locks</w>\": 13212,\n  \"lockscreen</w>\": 42439,\n  \"loco</w>\": 25555,\n  \"locom\": 22798,\n  \"locomo\": 46147,\n  \"locomotive</w>\": 30439,\n  \"locu\": 33635,\n  \"locust</w>\": 46237,\n  \"lod\": 45650,\n  \"lodge</w>\": 10504,\n  \"loe\": 30113,\n  \"loe</w>\": 25484,\n  \"loeb</w>\": 49334,\n  \"lof\": 15011,\n  \"loff</w>\": 31008,\n  \"loft\": 35707,\n  \"loft</w>\": 20049,\n  \"loftus</w>\": 46689,\n  \"log\": 3239,\n  \"log</w>\": 7383,\n  \"logan\": 20655,\n  \"logan</w>\": 10569,\n  \"logans</w>\": 40752,\n  \"logg</w>\": 43002,\n  \"logged</w>\": 31457,\n  \"logger</w>\": 39089,\n  \"logging</w>\": 24444,\n  \"logi\": 3177,\n  \"logia</w>\": 48031,\n  \"logic</w>\": 10670,\n  \"logical</w>\": 4791,\n  \"logically</w>\": 24782,\n  \"logie</w>\": 33445,\n  \"logies</w>\": 7378,\n  \"login</w>\": 31121,\n  \"logist</w>\": 7407,\n  \"logistics</w>\": 14755,\n  \"logists</w>\": 12233,\n  \"logne</w>\": 19911,\n  \"logo\": 31480,\n  \"logo</w>\": 5750,\n  \"logos</w>\": 24879,\n  \"logs</w>\": 22745,\n  \"logue</w>\": 27785,\n  \"logy\": 22721,\n  \"logy</w>\": 1659,\n  \"loh\": 49129,\n  \"loh</w>\": 37983,\n  \"loi</w>\": 35128,\n  \"loid</w>\": 31408,\n  \"loin</w>\": 21760,\n  \"loire</w>\": 46040,\n  \"lois</w>\": 27040,\n  \"lok\": 19908,\n  \"lok</w>\": 23575,\n  \"loki</w>\": 24435,\n  \"lol\": 10721,\n  \"lol</w>\": 1824,\n  \"lola</w>\": 19065,\n  \"lolita</w>\": 42615,\n  \"lolla\": 45483,\n  \"lolli\": 27906,\n  \"lollipop</w>\": 34605,\n  \"lolly</w>\": 48264,\n  \"lolo\": 16895,\n  \"lolo</w>\": 37481,\n  \"lolol</w>\": 25280,\n  \"lololol</w>\": 34738,\n  \"lolz</w>\": 35260,\n  \"lom\": 9279,\n  \"loma</w>\": 42889,\n  \"lombar\": 25493,\n  \"lombard</w>\": 46461,\n  \"lombardi</w>\": 44346,\n  \"lomond</w>\": 48941,\n  \"lon\": 1235,\n  \"lon</w>\": 6507,\n  \"london\": 6835,\n  \"london</w>\": 1789,\n  \"londonmarathon</w>\": 35018,\n  \"lone\": 22220,\n  \"lone</w>\": 13576,\n  \"lonel\": 28872,\n  \"loneliness</w>\": 30310,\n  \"lonely\": 34509,\n  \"lonely</w>\": 12368,\n  \"lonelyplanet</w>\": 44984,\n  \"long\": 4792,\n  \"long</w>\": 1538,\n  \"longe\": 25793,\n  \"longer</w>\": 5349,\n  \"longest</w>\": 10731,\n  \"longevity</w>\": 35354,\n  \"longh\": 20286,\n  \"longhorn</w>\": 41047,\n  \"longhorns</w>\": 38295,\n  \"longing</w>\": 38482,\n  \"longlive\": 47840,\n  \"longs</w>\": 43618,\n  \"longtime</w>\": 19685,\n  \"loo\": 731,\n  \"loo</w>\": 11804,\n  \"look\": 8874,\n  \"look</w>\": 1012,\n  \"lookalike</w>\": 38307,\n  \"lookbook</w>\": 39184,\n  \"looked</w>\": 4913,\n  \"lookin</w>\": 11254,\n  \"looking\": 36898,\n  \"looking</w>\": 1312,\n  \"lookout</w>\": 18330,\n  \"looks</w>\": 1606,\n  \"lool</w>\": 33125,\n  \"loom\": 37440,\n  \"loom</w>\": 17199,\n  \"looming</w>\": 35384,\n  \"looms</w>\": 30550,\n  \"loon</w>\": 28222,\n  \"loona</w>\": 48137,\n  \"looney</w>\": 45315,\n  \"looo\": 20902,\n  \"loool</w>\": 36016,\n  \"looool</w>\": 47038,\n  \"looooo\": 31484,\n  \"loop\": 19606,\n  \"loop</w>\": 10408,\n  \"loops</w>\": 21625,\n  \"loos</w>\": 45723,\n  \"loose\": 43815,\n  \"loose</w>\": 9786,\n  \"loot</w>\": 21518,\n  \"lop\": 36734,\n  \"lop</w>\": 17066,\n  \"lopes</w>\": 49269,\n  \"lopez</w>\": 12982,\n  \"lor\": 2179,\n  \"lor</w>\": 11335,\n  \"lord\": 18896,\n  \"lord</w>\": 3486,\n  \"lorde</w>\": 35483,\n  \"lords</w>\": 14969,\n  \"lore\": 12880,\n  \"lore</w>\": 27218,\n  \"loren\": 13602,\n  \"loren</w>\": 33398,\n  \"lorenzo</w>\": 21342,\n  \"lores</w>\": 34510,\n  \"loretta</w>\": 40863,\n  \"lori\": 20164,\n  \"lori</w>\": 23095,\n  \"lorna</w>\": 46316,\n  \"lorraine</w>\": 27602,\n  \"lorry</w>\": 31354,\n  \"los\": 32217,\n  \"los</w>\": 3087,\n  \"losange\": 14037,\n  \"losangeles</w>\": 14638,\n  \"lose\": 43318,\n  \"lose</w>\": 5354,\n  \"loser</w>\": 18168,\n  \"losers</w>\": 23201,\n  \"loses</w>\": 14263,\n  \"losing</w>\": 7918,\n  \"loss\": 34761,\n  \"loss</w>\": 4327,\n  \"losses</w>\": 16909,\n  \"lost\": 14258,\n  \"lost</w>\": 2624,\n  \"lostdog</w>\": 48482,\n  \"lot\": 5132,\n  \"lot</w>\": 1954,\n  \"loth</w>\": 43625,\n  \"lothian</w>\": 31360,\n  \"lothing</w>\": 42058,\n  \"lotion</w>\": 25260,\n  \"lotr</w>\": 34165,\n  \"lots</w>\": 2958,\n  \"lott</w>\": 42854,\n  \"lotta</w>\": 29125,\n  \"lotte\": 16535,\n  \"lotte</w>\": 7274,\n  \"lottery</w>\": 16975,\n  \"lottie</w>\": 48517,\n  \"lotto</w>\": 28265,\n  \"lotus</w>\": 13824,\n  \"lou\": 2207,\n  \"lou</w>\": 9745,\n  \"loubout\": 38369,\n  \"loud\": 22884,\n  \"loud</w>\": 7464,\n  \"louder</w>\": 25904,\n  \"loudest</w>\": 49214,\n  \"loudly</w>\": 39256,\n  \"lough\": 21927,\n  \"lough</w>\": 28045,\n  \"loughborough</w>\": 49153,\n  \"loui\": 42173,\n  \"louie</w>\": 25790,\n  \"louis\": 8916,\n  \"louis</w>\": 4459,\n  \"louisa</w>\": 40011,\n  \"louise\": 32275,\n  \"louise</w>\": 13076,\n  \"louisi\": 12187,\n  \"louisiana</w>\": 12946,\n  \"louisville</w>\": 13860,\n  \"louisvuitton</w>\": 44911,\n  \"loun\": 6466,\n  \"lounge</w>\": 7141,\n  \"lounging</w>\": 45430,\n  \"lour\": 29383,\n  \"lourdes</w>\": 45071,\n  \"louvre</w>\": 36995,\n  \"lov\": 8923,\n  \"lov</w>\": 21229,\n  \"lova</w>\": 37394,\n  \"lovable</w>\": 38565,\n  \"lovato</w>\": 18960,\n  \"love\": 2618,\n  \"love</w>\": 793,\n  \"lovecraft</w>\": 42405,\n  \"loved</w>\": 3249,\n  \"lovefl</w>\": 38884,\n  \"loveher</w>\": 38306,\n  \"lovehim</w>\": 45733,\n  \"loveis\": 30931,\n  \"loveisland</w>\": 30970,\n  \"loveislove</w>\": 43603,\n  \"loveit</w>\": 24764,\n  \"lovel\": 8999,\n  \"lovelies</w>\": 31412,\n  \"lovelondon</w>\": 46493,\n  \"lovely\": 33250,\n  \"lovely</w>\": 2165,\n  \"lovemy\": 20041,\n  \"lovemyjob</w>\": 40130,\n  \"loven\": 33754,\n  \"lover\": 28508,\n  \"lover</w>\": 7168,\n  \"lovers\": 48416,\n  \"lovers</w>\": 5973,\n  \"loves\": 37773,\n  \"loves</w>\": 3925,\n  \"lovethe\": 33040,\n  \"lovethem</w>\": 48298,\n  \"lovett</w>\": 47095,\n  \"lovewins</w>\": 47687,\n  \"loveyou\": 39226,\n  \"loveyou</w>\": 25964,\n  \"loveyour\": 26462,\n  \"lovin\": 33442,\n  \"lovin</w>\": 16354,\n  \"loving\": 29568,\n  \"loving</w>\": 3721,\n  \"lovingly</w>\": 44100,\n  \"low\": 1049,\n  \"low</w>\": 1042,\n  \"loway</w>\": 16104,\n  \"lowe</w>\": 17910,\n  \"lowed</w>\": 22733,\n  \"lowell</w>\": 24458,\n  \"lower\": 32578,\n  \"lower</w>\": 4909,\n  \"lowered</w>\": 34968,\n  \"lowering</w>\": 35261,\n  \"lowers</w>\": 36398,\n  \"lowes</w>\": 38515,\n  \"lowest</w>\": 12098,\n  \"lowing</w>\": 8283,\n  \"lowkey</w>\": 29481,\n  \"lowry</w>\": 27444,\n  \"lows</w>\": 4406,\n  \"lox</w>\": 41725,\n  \"loy\": 4519,\n  \"loy</w>\": 23929,\n  \"loyal</w>\": 13032,\n  \"loyalty</w>\": 14686,\n  \"loyd</w>\": 44212,\n  \"loyed</w>\": 29279,\n  \"loyment</w>\": 18307,\n  \"loyola</w>\": 32569,\n  \"lp\": 22282,\n  \"lp</w>\": 6392,\n  \"lpc</w>\": 44092,\n  \"lpg</w>\": 47905,\n  \"lpga</w>\": 34295,\n  \"lps</w>\": 32094,\n  \"lr\": 20572,\n  \"lr</w>\": 7041,\n  \"lrt</w>\": 32996,\n  \"ls\": 19051,\n  \"ls</w>\": 1268,\n  \"lsd</w>\": 43766,\n  \"lse\": 46127,\n  \"lse</w>\": 43886,\n  \"lsu\": 35428,\n  \"lsu</w>\": 15672,\n  \"lt\": 13642,\n  \"lt</w>\": 3333,\n  \"ltc</w>\": 27664,\n  \"ltd</w>\": 6802,\n  \"lte</w>\": 25202,\n  \"lton</w>\": 14237,\n  \"lu\": 664,\n  \"lu</w>\": 9657,\n  \"lub\": 22469,\n  \"lub</w>\": 11836,\n  \"lubbock</w>\": 37660,\n  \"lubric\": 40963,\n  \"luc\": 7013,\n  \"luc</w>\": 28014,\n  \"luca</w>\": 21053,\n  \"lucas\": 23425,\n  \"lucas</w>\": 10225,\n  \"lucci</w>\": 45849,\n  \"luce</w>\": 46217,\n  \"lucent</w>\": 41552,\n  \"lucer\": 36042,\n  \"luch\": 36646,\n  \"lucha</w>\": 38449,\n  \"luci\": 8787,\n  \"lucia</w>\": 22290,\n  \"luciano</w>\": 46365,\n  \"lucid</w>\": 44540,\n  \"lucie</w>\": 39461,\n  \"lucifer\": 46224,\n  \"lucifer</w>\": 27687,\n  \"lucille</w>\": 47454,\n  \"lucin\": 27523,\n  \"luck\": 9647,\n  \"luck</w>\": 2820,\n  \"luckiest</w>\": 42469,\n  \"luckily</w>\": 20100,\n  \"lucknow</w>\": 29407,\n  \"lucky\": 20495,\n  \"lucky</w>\": 4133,\n  \"lucrative</w>\": 41485,\n  \"lucy\": 17262,\n  \"lucy</w>\": 10120,\n  \"lud\": 14288,\n  \"lude</w>\": 28755,\n  \"ludo\": 40141,\n  \"ludwig</w>\": 30633,\n  \"lue</w>\": 45199,\n  \"luf\": 25264,\n  \"lufc</w>\": 17818,\n  \"luffy</w>\": 39047,\n  \"lufthan\": 37769,\n  \"lufthansa</w>\": 39145,\n  \"lug</w>\": 45521,\n  \"lugg\": 19673,\n  \"luggage</w>\": 20138,\n  \"luhan</w>\": 20975,\n  \"luigi</w>\": 28444,\n  \"luis\": 25231,\n  \"luis</w>\": 11339,\n  \"luiz</w>\": 39633,\n  \"lujah</w>\": 31639,\n  \"luk</w>\": 21652,\n  \"luka</w>\": 34878,\n  \"lukaku</w>\": 37177,\n  \"lukas</w>\": 37941,\n  \"luke\": 11970,\n  \"luke</w>\": 5652,\n  \"lul\": 20861,\n  \"lulla\": 37019,\n  \"lullaby</w>\": 41676,\n  \"lulu\": 32052,\n  \"lulu</w>\": 26935,\n  \"lum\": 18112,\n  \"lum</w>\": 5997,\n  \"lumb\": 36231,\n  \"lumber\": 27421,\n  \"lumber</w>\": 34692,\n  \"lumi\": 41437,\n  \"lumia</w>\": 31912,\n  \"lumin\": 15867,\n  \"luminous</w>\": 37913,\n  \"lump</w>\": 38704,\n  \"lumpur</w>\": 34411,\n  \"lun\": 3221,\n  \"lun</w>\": 49390,\n  \"luna</w>\": 14425,\n  \"lunar</w>\": 16043,\n  \"lunatic</w>\": 45874,\n  \"lunch\": 10954,\n  \"lunch</w>\": 2772,\n  \"luncheon</w>\": 15104,\n  \"lunches</w>\": 29705,\n  \"lunchtime</w>\": 14330,\n  \"lund\": 30975,\n  \"lund</w>\": 20181,\n  \"lunes</w>\": 35648,\n  \"lung\": 38479,\n  \"lung</w>\": 16271,\n  \"lungs</w>\": 27366,\n  \"lup</w>\": 27413,\n  \"lupita</w>\": 49352,\n  \"lupus</w>\": 36017,\n  \"lur\": 14439,\n  \"lure</w>\": 31376,\n  \"lures</w>\": 46747,\n  \"lurking</w>\": 29941,\n  \"lus</w>\": 7158,\n  \"lusci\": 38004,\n  \"luscious</w>\": 39935,\n  \"lush\": 40382,\n  \"lush</w>\": 16263,\n  \"lust\": 42071,\n  \"lust</w>\": 12662,\n  \"lustre</w>\": 46673,\n  \"luther\": 21848,\n  \"luther</w>\": 17208,\n  \"lutheran</w>\": 27341,\n  \"luton</w>\": 28288,\n  \"luv\": 24726,\n  \"luv</w>\": 8502,\n  \"lux\": 3439,\n  \"lux</w>\": 16704,\n  \"luxe</w>\": 26373,\n  \"luxemb\": 21314,\n  \"luxembour\": 22712,\n  \"luxembourg</w>\": 23949,\n  \"luxu\": 16112,\n  \"luxurious</w>\": 17292,\n  \"luxury\": 12083,\n  \"luxury</w>\": 5247,\n  \"luxurytravel</w>\": 29010,\n  \"luz</w>\": 41008,\n  \"lv\": 10862,\n  \"lv</w>\": 11184,\n  \"lvl</w>\": 31256,\n  \"lw\": 40515,\n  \"lw</w>\": 35115,\n  \"lx</w>\": 30789,\n  \"ly\": 1251,\n  \"ly</w>\": 597,\n  \"lydia</w>\": 24316,\n  \"lyf</w>\": 43688,\n  \"lyfe</w>\": 30787,\n  \"lyft</w>\": 32944,\n  \"lying</w>\": 7175,\n  \"lyk</w>\": 46376,\n  \"lyle</w>\": 36828,\n  \"lym\": 20087,\n  \"lyme</w>\": 31167,\n  \"lymph\": 30073,\n  \"lymphoma</w>\": 37648,\n  \"lyn\": 3957,\n  \"lyn</w>\": 5054,\n  \"lynch\": 31586,\n  \"lynch</w>\": 13560,\n  \"lynd\": 33416,\n  \"lynda</w>\": 42959,\n  \"lyndon</w>\": 48518,\n  \"lynn\": 25303,\n  \"lynn</w>\": 10667,\n  \"lynne</w>\": 26900,\n  \"lynx</w>\": 28941,\n  \"lyon</w>\": 17176,\n  \"lyons</w>\": 29453,\n  \"lyric\": 24366,\n  \"lyric</w>\": 21291,\n  \"lyrical</w>\": 33358,\n  \"lyricist</w>\": 49013,\n  \"lyrics</w>\": 9551,\n  \"lyrix</w>\": 46814,\n  \"lys</w>\": 45054,\n  \"lyte</w>\": 40059,\n  \"lywood</w>\": 4012,\n  \"lz</w>\": 30818,\n  \"lÃ©\": 39641,\n  \"m\": 76,\n  \"m</w>\": 332,\n  \"ma\": 577,\n  \"ma</w>\": 1226,\n  \"maa\": 42774,\n  \"maa</w>\": 21555,\n  \"maan</w>\": 33668,\n  \"maar</w>\": 48927,\n  \"maas\": 43332,\n  \"mab</w>\": 35639,\n  \"mabel</w>\": 47319,\n  \"mable</w>\": 23001,\n  \"mably</w>\": 40082,\n  \"mabu\": 44682,\n  \"mac\": 1961,\n  \"mac</w>\": 4945,\n  \"macar\": 21558,\n  \"macaroni</w>\": 41824,\n  \"macarthur</w>\": 36785,\n  \"macau\": 43984,\n  \"macau</w>\": 33370,\n  \"macbeth</w>\": 36321,\n  \"macbook</w>\": 20617,\n  \"macdonald</w>\": 20315,\n  \"mace</w>\": 44869,\n  \"maced\": 21102,\n  \"macedonia</w>\": 27071,\n  \"macfar\": 45374,\n  \"macfarlane</w>\": 48825,\n  \"mach\": 2637,\n  \"mach</w>\": 35091,\n  \"machado</w>\": 42318,\n  \"mache\": 43220,\n  \"macher</w>\": 29330,\n  \"machi\": 41783,\n  \"machin\": 17972,\n  \"machine\": 11539,\n  \"machine</w>\": 4169,\n  \"machinelearning</w>\": 13621,\n  \"machinery</w>\": 21858,\n  \"machines</w>\": 11108,\n  \"machining</w>\": 45562,\n  \"macho</w>\": 43977,\n  \"macht</w>\": 45225,\n  \"macin\": 36533,\n  \"mack\": 8590,\n  \"mack</w>\": 12145,\n  \"mackay</w>\": 32497,\n  \"macken\": 48057,\n  \"mackenzie</w>\": 22351,\n  \"mackerel</w>\": 35002,\n  \"mackin\": 26010,\n  \"macklemore</w>\": 41758,\n  \"macle\": 33843,\n  \"maclean</w>\": 47137,\n  \"macleod</w>\": 43684,\n  \"macmillan\": 36364,\n  \"macmillan</w>\": 35191,\n  \"macon</w>\": 35818,\n  \"macos</w>\": 45469,\n  \"macqu\": 38365,\n  \"macquarie</w>\": 40858,\n  \"macro\": 20891,\n  \"macro</w>\": 16626,\n  \"macron</w>\": 24859,\n  \"macs</w>\": 46548,\n  \"macy</w>\": 17113,\n  \"macys</w>\": 47652,\n  \"mad\": 2740,\n  \"mad</w>\": 3843,\n  \"mada</w>\": 37799,\n  \"madagas\": 24758,\n  \"madagascar</w>\": 25744,\n  \"madam\": 33634,\n  \"madam</w>\": 27538,\n  \"madame</w>\": 23507,\n  \"madd\": 31717,\n  \"madden</w>\": 19093,\n  \"maddie\": 39959,\n  \"maddie</w>\": 18875,\n  \"maddow</w>\": 32644,\n  \"maddy</w>\": 31734,\n  \"made\": 5388,\n  \"made</w>\": 1105,\n  \"madein\": 13670,\n  \"madeira</w>\": 33810,\n  \"madel\": 34532,\n  \"madele\": 29831,\n  \"madeleine</w>\": 33264,\n  \"madeline</w>\": 33905,\n  \"madewith\": 28627,\n  \"madewithunity</w>\": 43190,\n  \"madhu\": 23000,\n  \"madhuri\": 38346,\n  \"madhuridixit</w>\": 43889,\n  \"madhya</w>\": 48302,\n  \"madi\": 6527,\n  \"madi</w>\": 27282,\n  \"madison\": 24798,\n  \"madison</w>\": 8791,\n  \"madmen</w>\": 45452,\n  \"madness</w>\": 8755,\n  \"madon\": 44852,\n  \"madonna</w>\": 14137,\n  \"madra\": 27416,\n  \"madras</w>\": 42046,\n  \"madre</w>\": 42130,\n  \"madri\": 5529,\n  \"madrid</w>\": 5909,\n  \"mads</w>\": 41201,\n  \"madu\": 34913,\n  \"madurai</w>\": 49159,\n  \"maduro</w>\": 32912,\n  \"mae\": 16898,\n  \"mae</w>\": 17339,\n  \"maer\": 47088,\n  \"maestro</w>\": 24140,\n  \"mafi\": 47164,\n  \"mafia</w>\": 14890,\n  \"mag\": 1191,\n  \"mag</w>\": 4508,\n  \"maga</w>\": 8694,\n  \"magaz\": 2974,\n  \"magazine</w>\": 3113,\n  \"magazines</w>\": 22253,\n  \"magdal\": 29673,\n  \"mage\": 46568,\n  \"mage</w>\": 10923,\n  \"magee</w>\": 43872,\n  \"magenta</w>\": 38091,\n  \"magento</w>\": 42442,\n  \"mages</w>\": 31059,\n  \"maggi\": 29611,\n  \"maggie\": 41443,\n  \"maggie</w>\": 14524,\n  \"maggio</w>\": 49087,\n  \"magh\": 45555,\n  \"magi\": 19270,\n  \"magic\": 13061,\n  \"magic</w>\": 3778,\n  \"magical\": 36408,\n  \"magical</w>\": 7823,\n  \"magician</w>\": 26368,\n  \"magin\": 42678,\n  \"maging</w>\": 41310,\n  \"magn\": 10290,\n  \"magna</w>\": 34076,\n  \"magne\": 9921,\n  \"magnesium</w>\": 36379,\n  \"magnet</w>\": 18240,\n  \"magnetic</w>\": 13838,\n  \"magnets</w>\": 33030,\n  \"magni\": 24297,\n  \"magnific\": 9725,\n  \"magnificent</w>\": 10724,\n  \"magnitude</w>\": 22955,\n  \"magno\": 21184,\n  \"magnolia</w>\": 27123,\n  \"magnu\": 45198,\n  \"magnum</w>\": 23496,\n  \"magnus</w>\": 26275,\n  \"magpie</w>\": 45973,\n  \"mags</w>\": 31021,\n  \"maguire</w>\": 26470,\n  \"mah\": 7206,\n  \"mah</w>\": 10801,\n  \"maha\": 12237,\n  \"maha</w>\": 33983,\n  \"mahal</w>\": 22301,\n  \"mahan\": 45191,\n  \"mahar\": 11635,\n  \"maharaj</w>\": 38488,\n  \"maharashtra</w>\": 19328,\n  \"mahat\": 32434,\n  \"mahatma</w>\": 40530,\n  \"mahe\": 15756,\n  \"maher</w>\": 29826,\n  \"mahesh\": 33448,\n  \"mahesh</w>\": 22095,\n  \"mahi\": 32529,\n  \"mahi</w>\": 38659,\n  \"mahin\": 24113,\n  \"mahindra</w>\": 31285,\n  \"mahmoud</w>\": 41361,\n  \"mahog\": 30804,\n  \"mahogany</w>\": 33084,\n  \"mahon\": 45864,\n  \"mahon</w>\": 20371,\n  \"mahone</w>\": 26634,\n  \"mai\": 7138,\n  \"mai</w>\": 14595,\n  \"maia</w>\": 46585,\n  \"maid\": 23148,\n  \"maid</w>\": 10226,\n  \"maidan</w>\": 37346,\n  \"maiden\": 37011,\n  \"maiden</w>\": 13809,\n  \"maids</w>\": 27305,\n  \"maidstone</w>\": 44395,\n  \"mail\": 10478,\n  \"mail</w>\": 2614,\n  \"mailbox</w>\": 31482,\n  \"mailed</w>\": 42314,\n  \"mailing</w>\": 26680,\n  \"mailonline</w>\": 26021,\n  \"mails</w>\": 45213,\n  \"main\": 3904,\n  \"main</w>\": 2623,\n  \"maine\": 18639,\n  \"maine</w>\": 7836,\n  \"mained\": 15609,\n  \"mainedcm</w>\": 15845,\n  \"mainland</w>\": 27629,\n  \"mainly</w>\": 15280,\n  \"mains</w>\": 33656,\n  \"mainst\": 42102,\n  \"mainstream</w>\": 18034,\n  \"maintain</w>\": 12954,\n  \"maintained</w>\": 26665,\n  \"maintaining</w>\": 21964,\n  \"maintains</w>\": 38335,\n  \"mainten\": 9399,\n  \"maintenance</w>\": 9610,\n  \"mais</w>\": 28153,\n  \"maisie</w>\": 47355,\n  \"maison\": 37065,\n  \"maison</w>\": 27626,\n  \"mait\": 26387,\n  \"maize</w>\": 35386,\n  \"maj\": 2948,\n  \"maj</w>\": 28723,\n  \"maja</w>\": 47498,\n  \"maje\": 9852,\n  \"majestic</w>\": 15335,\n  \"majesty</w>\": 21188,\n  \"major\": 8008,\n  \"major</w>\": 3350,\n  \"majority</w>\": 10508,\n  \"majors</w>\": 23597,\n  \"mak\": 11271,\n  \"mak</w>\": 19253,\n  \"makar\": 42242,\n  \"makati</w>\": 39402,\n  \"make\": 3232,\n  \"make</w>\": 1078,\n  \"makeaw\": 45859,\n  \"makeinindia</w>\": 42739,\n  \"makeit\": 26308,\n  \"maken\": 47093,\n  \"makeover</w>\": 17926,\n  \"maker\": 15196,\n  \"maker</w>\": 4836,\n  \"makers</w>\": 6577,\n  \"makerspace</w>\": 42400,\n  \"makes</w>\": 2088,\n  \"makeshift</w>\": 43274,\n  \"makeu\": 41707,\n  \"makeup\": 26402,\n  \"makeup</w>\": 5853,\n  \"makeyourown\": 34090,\n  \"makeyourownlane</w>\": 34823,\n  \"maki</w>\": 34514,\n  \"makin\": 43096,\n  \"makin</w>\": 22407,\n  \"making\": 17976,\n  \"making</w>\": 1665,\n  \"makk\": 39852,\n  \"maknae</w>\": 44118,\n  \"mako</w>\": 49061,\n  \"mal\": 1662,\n  \"mal</w>\": 3796,\n  \"mala</w>\": 28290,\n  \"malade</w>\": 36928,\n  \"malaga</w>\": 35395,\n  \"malala</w>\": 41137,\n  \"malam</w>\": 48956,\n  \"malaria</w>\": 24929,\n  \"malawi</w>\": 23405,\n  \"malay\": 5323,\n  \"malay</w>\": 42430,\n  \"malayalam</w>\": 34860,\n  \"malaysi\": 39668,\n  \"malaysia</w>\": 8146,\n  \"malaysian</w>\": 21136,\n  \"malbec</w>\": 47741,\n  \"malcol\": 12645,\n  \"malcolm</w>\": 14139,\n  \"maldives</w>\": 16795,\n  \"male\": 11326,\n  \"male</w>\": 2801,\n  \"males</w>\": 14426,\n  \"malhotra</w>\": 28866,\n  \"mali\": 6701,\n  \"mali</w>\": 22669,\n  \"malia</w>\": 46714,\n  \"malibu</w>\": 21723,\n  \"malicious</w>\": 42147,\n  \"malign\": 41122,\n  \"malik</w>\": 11394,\n  \"mall\": 10984,\n  \"mall</w>\": 6220,\n  \"mallorca</w>\": 28082,\n  \"mallory</w>\": 38968,\n  \"malls</w>\": 36447,\n  \"malm\": 44071,\n  \"malnutrition</w>\": 41153,\n  \"malo</w>\": 43518,\n  \"malone</w>\": 19852,\n  \"maloney</w>\": 45897,\n  \"mals</w>\": 25370,\n  \"malt</w>\": 21688,\n  \"malta</w>\": 16989,\n  \"maltese</w>\": 39838,\n  \"malvern</w>\": 39356,\n  \"malware</w>\": 24153,\n  \"mam\": 4404,\n  \"mam</w>\": 17778,\n  \"mama</w>\": 7133,\n  \"mamamoo</w>\": 36012,\n  \"mamas</w>\": 42395,\n  \"mamba</w>\": 44189,\n  \"mament</w>\": 45690,\n  \"mami</w>\": 43858,\n  \"mamma</w>\": 34893,\n  \"mammal</w>\": 33385,\n  \"mammals</w>\": 31987,\n  \"mammoth</w>\": 28022,\n  \"man\": 723,\n  \"man</w>\": 786,\n  \"mana\": 29467,\n  \"mana</w>\": 15837,\n  \"manafort</w>\": 40108,\n  \"manag\": 1830,\n  \"manage</w>\": 9770,\n  \"managed</w>\": 7928,\n  \"management</w>\": 3319,\n  \"manager</w>\": 3898,\n  \"managerial</w>\": 44261,\n  \"managers</w>\": 12853,\n  \"manages</w>\": 29699,\n  \"managing</w>\": 10892,\n  \"manas\": 44188,\n  \"manatee</w>\": 46558,\n  \"mance</w>\": 2324,\n  \"manchester\": 24424,\n  \"manchester</w>\": 4651,\n  \"mancini</w>\": 47681,\n  \"mancity</w>\": 31538,\n  \"mancrush\": 36945,\n  \"mancrushmonday</w>\": 39307,\n  \"mand\": 4325,\n  \"mand</w>\": 27244,\n  \"mandala</w>\": 41106,\n  \"mandarin</w>\": 26455,\n  \"mandate</w>\": 26228,\n  \"mandatory</w>\": 19934,\n  \"mandel\": 34960,\n  \"mandela</w>\": 16280,\n  \"mandi\": 38961,\n  \"mandir</w>\": 35815,\n  \"mando</w>\": 34006,\n  \"mands</w>\": 12340,\n  \"mandu</w>\": 31440,\n  \"mandy\": 41505,\n  \"mandy</w>\": 24302,\n  \"mane\": 44471,\n  \"mane</w>\": 16044,\n  \"maneu\": 33216,\n  \"mang\": 25616,\n  \"mang</w>\": 31096,\n  \"manga</w>\": 11873,\n  \"mangal\": 43027,\n  \"manger</w>\": 48251,\n  \"mango\": 43831,\n  \"mango</w>\": 13962,\n  \"mangrove</w>\": 47180,\n  \"manhatt\": 10152,\n  \"manhattan</w>\": 10961,\n  \"mani\": 5654,\n  \"mani</w>\": 10718,\n  \"mania</w>\": 8435,\n  \"maniac</w>\": 31814,\n  \"maniacs</w>\": 41444,\n  \"manian</w>\": 40077,\n  \"manic\": 23017,\n  \"manic</w>\": 37825,\n  \"manicure</w>\": 33637,\n  \"manife\": 14379,\n  \"manifest</w>\": 34422,\n  \"manifestation</w>\": 48348,\n  \"manifesto</w>\": 20907,\n  \"manil\": 38827,\n  \"manila</w>\": 10969,\n  \"manipu\": 40261,\n  \"manipul\": 19237,\n  \"manipulation</w>\": 30277,\n  \"manipur</w>\": 47757,\n  \"manish\": 41759,\n  \"manish</w>\": 44720,\n  \"manit\": 15693,\n  \"manitoba</w>\": 20342,\n  \"manjaro</w>\": 41489,\n  \"mankind</w>\": 24155,\n  \"manly</w>\": 25194,\n  \"mann\": 19396,\n  \"mann</w>\": 4783,\n  \"manne\": 30160,\n  \"manned</w>\": 26139,\n  \"mannequin</w>\": 43388,\n  \"manner</w>\": 20700,\n  \"manners</w>\": 31693,\n  \"manning</w>\": 15996,\n  \"manny\": 37054,\n  \"manny</w>\": 20933,\n  \"mano\": 15753,\n  \"mano</w>\": 24016,\n  \"manoj</w>\": 41146,\n  \"manor\": 41830,\n  \"manor</w>\": 13614,\n  \"mans\": 28422,\n  \"mans</w>\": 7746,\n  \"mansfield</w>\": 25543,\n  \"manship</w>\": 15460,\n  \"mansion</w>\": 13404,\n  \"manslaughter</w>\": 48632,\n  \"manson</w>\": 26715,\n  \"mant\": 25122,\n  \"mant</w>\": 27037,\n  \"manta</w>\": 41431,\n  \"mantis</w>\": 39946,\n  \"mantle</w>\": 22159,\n  \"mantra</w>\": 25162,\n  \"manu\": 3404,\n  \"manu</w>\": 25799,\n  \"manual</w>\": 12268,\n  \"manuel\": 29171,\n  \"manuel</w>\": 9567,\n  \"manufac\": 5105,\n  \"manufacture</w>\": 27741,\n  \"manufactured</w>\": 24010,\n  \"manufacturer</w>\": 15668,\n  \"manufacturers</w>\": 18763,\n  \"manufacturing</w>\": 8386,\n  \"manure</w>\": 47907,\n  \"manus</w>\": 28181,\n  \"manuscript</w>\": 24365,\n  \"manuscripts</w>\": 40765,\n  \"manutd</w>\": 20994,\n  \"many\": 28484,\n  \"many</w>\": 1346,\n  \"manziel</w>\": 40637,\n  \"mao\": 47447,\n  \"mao</w>\": 25605,\n  \"maori</w>\": 43400,\n  \"map\": 25180,\n  \"map</w>\": 3923,\n  \"maple\": 21980,\n  \"maple</w>\": 10570,\n  \"mapleleafs</w>\": 41257,\n  \"mapoli</w>\": 28768,\n  \"mapp</w>\": 36894,\n  \"mapped</w>\": 41596,\n  \"mapping</w>\": 15231,\n  \"maps</w>\": 8765,\n  \"mapu\": 42082,\n  \"mar\": 675,\n  \"mar</w>\": 3091,\n  \"mara</w>\": 15655,\n  \"marais</w>\": 47913,\n  \"maran\": 44732,\n  \"marath\": 16274,\n  \"marathi</w>\": 34102,\n  \"marathon\": 40764,\n  \"marathon</w>\": 5910,\n  \"marau\": 38475,\n  \"marbella</w>\": 36182,\n  \"marble\": 45429,\n  \"marble</w>\": 13071,\n  \"marbles</w>\": 42931,\n  \"marc\": 14054,\n  \"marc</w>\": 9075,\n  \"marca</w>\": 38242,\n  \"marcel\": 17726,\n  \"marcel</w>\": 24652,\n  \"marcelo</w>\": 35939,\n  \"march\": 10638,\n  \"march</w>\": 2227,\n  \"marche</w>\": 36173,\n  \"marched</w>\": 37976,\n  \"marches</w>\": 38249,\n  \"marchfor\": 31721,\n  \"marching</w>\": 15082,\n  \"marchmadness</w>\": 28555,\n  \"marci\": 36698,\n  \"marcia</w>\": 41075,\n  \"marck</w>\": 47733,\n  \"marco\": 24719,\n  \"marco</w>\": 10924,\n  \"marcor\": 39945,\n  \"marcorubio</w>\": 41143,\n  \"marcos</w>\": 21696,\n  \"marcu\": 20760,\n  \"marcus\": 48955,\n  \"marcus</w>\": 9895,\n  \"mardi\": 39728,\n  \"mardi</w>\": 29229,\n  \"mardigras</w>\": 43343,\n  \"mare\": 26512,\n  \"mare</w>\": 8870,\n  \"mares</w>\": 19724,\n  \"marg</w>\": 44014,\n  \"margar\": 16838,\n  \"margare\": 10232,\n  \"margaret</w>\": 12185,\n  \"margarita</w>\": 25958,\n  \"margaritas</w>\": 42679,\n  \"margate</w>\": 37428,\n  \"margin\": 19464,\n  \"margin</w>\": 21357,\n  \"marginal</w>\": 38320,\n  \"margins</w>\": 33763,\n  \"margot</w>\": 37144,\n  \"mari\": 2603,\n  \"mari</w>\": 19322,\n  \"maria\": 41109,\n  \"maria</w>\": 6595,\n  \"mariachi</w>\": 44299,\n  \"mariah\": 31214,\n  \"mariah</w>\": 24789,\n  \"mariahcarey</w>\": 36538,\n  \"marian\": 41129,\n  \"marian</w>\": 24677,\n  \"mariana</w>\": 44224,\n  \"marianne</w>\": 32214,\n  \"mariano</w>\": 43988,\n  \"marie\": 20657,\n  \"marie</w>\": 7864,\n  \"marietta</w>\": 46634,\n  \"marig\": 41002,\n  \"marijuana</w>\": 9864,\n  \"maril\": 14611,\n  \"marilyn\": 38959,\n  \"marilyn</w>\": 18489,\n  \"marin\": 8910,\n  \"marin</w>\": 23992,\n  \"marina</w>\": 12060,\n  \"marinated</w>\": 33406,\n  \"marine\": 20674,\n  \"marine</w>\": 5746,\n  \"mariner</w>\": 39972,\n  \"mariners</w>\": 19086,\n  \"marines</w>\": 15018,\n  \"marino</w>\": 30878,\n  \"mario\": 39176,\n  \"mario</w>\": 7600,\n  \"marion\": 37765,\n  \"marion</w>\": 18397,\n  \"maris\": 21512,\n  \"maris</w>\": 33093,\n  \"marisa</w>\": 42938,\n  \"mariska</w>\": 44703,\n  \"marissa</w>\": 31219,\n  \"marist</w>\": 48223,\n  \"mariti\": 13124,\n  \"maritime</w>\": 14331,\n  \"marj\": 38639,\n  \"mark\": 3805,\n  \"mark</w>\": 2110,\n  \"marke\": 2399,\n  \"marked</w>\": 12360,\n  \"marker</w>\": 18170,\n  \"markers</w>\": 23664,\n  \"market\": 11614,\n  \"market</w>\": 2196,\n  \"marketer</w>\": 33482,\n  \"marketers</w>\": 23682,\n  \"marketing\": 19535,\n  \"marketing</w>\": 2905,\n  \"marketplace</w>\": 18241,\n  \"markets</w>\": 7292,\n  \"markham</w>\": 39817,\n  \"marking</w>\": 14705,\n  \"markings</w>\": 41046,\n  \"markle</w>\": 32672,\n  \"marko</w>\": 38338,\n  \"marks</w>\": 5466,\n  \"markus</w>\": 33725,\n  \"marl\": 24922,\n  \"marlborough</w>\": 43515,\n  \"marlene</w>\": 45117,\n  \"marley</w>\": 16504,\n  \"marlin</w>\": 34275,\n  \"marlins</w>\": 23309,\n  \"marlon</w>\": 32995,\n  \"marmalade</w>\": 39068,\n  \"marnock</w>\": 48305,\n  \"maro\": 27029,\n  \"maroon</w>\": 20501,\n  \"marqu\": 20704,\n  \"marque\": 13012,\n  \"marquee</w>\": 27725,\n  \"marquette</w>\": 37624,\n  \"marquez</w>\": 27317,\n  \"marquis</w>\": 33530,\n  \"marr</w>\": 32871,\n  \"marrake\": 37125,\n  \"marrakech</w>\": 39006,\n  \"marri\": 3839,\n  \"marriage\": 38047,\n  \"marriage</w>\": 7040,\n  \"marriages</w>\": 38190,\n  \"married</w>\": 6791,\n  \"marries</w>\": 46283,\n  \"marriott</w>\": 19211,\n  \"marrow</w>\": 31030,\n  \"marry</w>\": 13288,\n  \"marrying</w>\": 40507,\n  \"mars\": 41469,\n  \"mars</w>\": 7496,\n  \"marsden</w>\": 43344,\n  \"marse\": 26577,\n  \"marseille</w>\": 30365,\n  \"marsh\": 9237,\n  \"marsh</w>\": 13505,\n  \"marsha</w>\": 21491,\n  \"marshal</w>\": 26608,\n  \"marshall\": 30939,\n  \"marshall</w>\": 9811,\n  \"marshals</w>\": 44175,\n  \"marshes</w>\": 43450,\n  \"marshmal\": 21069,\n  \"marshmallow</w>\": 28530,\n  \"marshmallows</w>\": 39471,\n  \"mart\": 2348,\n  \"mart</w>\": 7772,\n  \"marta</w>\": 32858,\n  \"martens</w>\": 43211,\n  \"marth\": 34493,\n  \"martha</w>\": 16427,\n  \"marti\": 20577,\n  \"martial</w>\": 17088,\n  \"martialarts</w>\": 35895,\n  \"martian</w>\": 30214,\n  \"martin\": 6929,\n  \"martin</w>\": 3690,\n  \"martina</w>\": 34393,\n  \"martinez</w>\": 13913,\n  \"marting\": 47570,\n  \"martini</w>\": 22199,\n  \"martino</w>\": 41675,\n  \"martins</w>\": 30569,\n  \"marty\": 9926,\n  \"marty</w>\": 17169,\n  \"martyn</w>\": 44075,\n  \"martyr\": 36155,\n  \"martyr</w>\": 26067,\n  \"martyrdom</w>\": 43110,\n  \"martyred</w>\": 39114,\n  \"martyrs</w>\": 24707,\n  \"maru\": 37413,\n  \"maru</w>\": 31838,\n  \"marvel\": 13835,\n  \"marvel</w>\": 5996,\n  \"marvelcomics</w>\": 46897,\n  \"marvell\": 26576,\n  \"marvellous</w>\": 28402,\n  \"marvelous</w>\": 25487,\n  \"marvin</w>\": 19675,\n  \"marx\": 30559,\n  \"marx</w>\": 26001,\n  \"marxist</w>\": 45205,\n  \"mary\": 5146,\n  \"mary</w>\": 2676,\n  \"maryam\": 33636,\n  \"maryam</w>\": 36393,\n  \"maryland</w>\": 11379,\n  \"marys\": 40905,\n  \"marys</w>\": 40228,\n  \"mas\": 5226,\n  \"mas</w>\": 1412,\n  \"masa\": 24995,\n  \"masa</w>\": 41868,\n  \"masala</w>\": 31483,\n  \"masc\": 23564,\n  \"mascar\": 46984,\n  \"mascara</w>\": 31635,\n  \"mascot</w>\": 13983,\n  \"mascots</w>\": 43266,\n  \"mascul\": 25589,\n  \"masculine</w>\": 48269,\n  \"masculinity</w>\": 40465,\n  \"mase\": 49128,\n  \"maser\": 25798,\n  \"maserati</w>\": 30442,\n  \"mash\": 12317,\n  \"mash</w>\": 15680,\n  \"mashable</w>\": 41026,\n  \"mashed</w>\": 27395,\n  \"mashup</w>\": 27079,\n  \"masi\": 35965,\n  \"masjid</w>\": 31420,\n  \"mask\": 19262,\n  \"mask</w>\": 8306,\n  \"masked</w>\": 25757,\n  \"masking</w>\": 47046,\n  \"masks</w>\": 19055,\n  \"maslow</w>\": 44359,\n  \"mason\": 17424,\n  \"mason</w>\": 9699,\n  \"masonic</w>\": 36491,\n  \"masonry</w>\": 30764,\n  \"masons</w>\": 37195,\n  \"masqu\": 26593,\n  \"masquer\": 29604,\n  \"masquerade</w>\": 36944,\n  \"mass\": 4636,\n  \"mass</w>\": 4854,\n  \"massach\": 14484,\n  \"massachuse\": 14577,\n  \"massachusetts</w>\": 14756,\n  \"massacre</w>\": 14696,\n  \"massage</w>\": 13055,\n  \"masse\": 41735,\n  \"masses</w>\": 22978,\n  \"massey</w>\": 29868,\n  \"massi\": 17239,\n  \"massimo</w>\": 45821,\n  \"massive</w>\": 4818,\n  \"massively</w>\": 34297,\n  \"mast\": 45916,\n  \"mast</w>\": 27920,\n  \"master\": 4534,\n  \"master</w>\": 3498,\n  \"mastercard</w>\": 40542,\n  \"masterchef</w>\": 34809,\n  \"masterclass</w>\": 17529,\n  \"mastered</w>\": 32616,\n  \"masterful</w>\": 46823,\n  \"mastering</w>\": 28326,\n  \"mastermind</w>\": 34029,\n  \"masterpiece</w>\": 12066,\n  \"masterpieces</w>\": 37596,\n  \"masters</w>\": 6913,\n  \"mastery</w>\": 34800,\n  \"mastiff</w>\": 42311,\n  \"maswar\": 47887,\n  \"mat\": 905,\n  \"mat</w>\": 9063,\n  \"mata</w>\": 17270,\n  \"match\": 7733,\n  \"match</w>\": 2439,\n  \"matcha</w>\": 32433,\n  \"matchday</w>\": 15947,\n  \"matched</w>\": 17792,\n  \"matches</w>\": 8609,\n  \"matching</w>\": 11840,\n  \"matchup</w>\": 19355,\n  \"matchups</w>\": 49162,\n  \"mate\": 6137,\n  \"mate</w>\": 2936,\n  \"mated</w>\": 33813,\n  \"mateo</w>\": 34991,\n  \"mater</w>\": 23724,\n  \"materi\": 7084,\n  \"material</w>\": 7118,\n  \"materials</w>\": 8161,\n  \"maternal</w>\": 26131,\n  \"maternity</w>\": 23894,\n  \"mates</w>\": 5817,\n  \"math\": 13277,\n  \"math</w>\": 6025,\n  \"mathe\": 8725,\n  \"mathemat\": 11901,\n  \"mathematical</w>\": 25609,\n  \"mathematician</w>\": 41036,\n  \"mathematics</w>\": 20113,\n  \"mathew</w>\": 36333,\n  \"mathews</w>\": 37120,\n  \"mathi\": 23014,\n  \"mathieu</w>\": 40417,\n  \"maths</w>\": 14763,\n  \"mati\": 12716,\n  \"mati</w>\": 32268,\n  \"matic\": 36859,\n  \"matic</w>\": 7900,\n  \"matically</w>\": 38282,\n  \"matics</w>\": 23634,\n  \"matil\": 26751,\n  \"matilda</w>\": 36308,\n  \"matin</w>\": 44849,\n  \"matinee</w>\": 38525,\n  \"mating</w>\": 34346,\n  \"mation</w>\": 11701,\n  \"matisse</w>\": 43446,\n  \"mato\": 13127,\n  \"matologist</w>\": 48842,\n  \"matology</w>\": 27940,\n  \"matory</w>\": 25519,\n  \"matri\": 27041,\n  \"matrix</w>\": 18078,\n  \"mats</w>\": 22259,\n  \"matsu\": 30242,\n  \"matt\": 7972,\n  \"matt</w>\": 3972,\n  \"mattb\": 42791,\n  \"matte\": 31237,\n  \"matte</w>\": 19771,\n  \"mattel</w>\": 35365,\n  \"matteo</w>\": 33120,\n  \"matter\": 30471,\n  \"matter</w>\": 3828,\n  \"matters</w>\": 5708,\n  \"matth\": 41846,\n  \"matthe\": 5116,\n  \"matthew\": 17588,\n  \"matthew</w>\": 7008,\n  \"matthews</w>\": 16739,\n  \"matthi\": 29853,\n  \"matthias</w>\": 45104,\n  \"matti\": 39840,\n  \"mattress</w>\": 23438,\n  \"matty\": 31233,\n  \"matty</w>\": 29176,\n  \"matu\": 40616,\n  \"matur\": 22897,\n  \"mature</w>\": 14417,\n  \"maturity</w>\": 28047,\n  \"mau\": 8134,\n  \"mau</w>\": 23033,\n  \"maui</w>\": 20463,\n  \"maul\": 30725,\n  \"maur\": 10574,\n  \"maure\": 25191,\n  \"maureen</w>\": 31723,\n  \"maurice</w>\": 20200,\n  \"mauricio</w>\": 39066,\n  \"mauriti\": 28406,\n  \"mauritius</w>\": 29305,\n  \"mauro</w>\": 41691,\n  \"mav\": 25697,\n  \"maver\": 16700,\n  \"maverick</w>\": 27425,\n  \"mavericks</w>\": 30092,\n  \"mavs</w>\": 30665,\n  \"maw\": 39351,\n  \"maw</w>\": 42271,\n  \"mawards</w>\": 37682,\n  \"max\": 4898,\n  \"max</w>\": 3902,\n  \"maxi\": 8554,\n  \"maxi</w>\": 23266,\n  \"maxim\": 19892,\n  \"maxim</w>\": 38574,\n  \"maximize</w>\": 28673,\n  \"maximum</w>\": 13162,\n  \"maximus</w>\": 44312,\n  \"maxine</w>\": 38468,\n  \"maxwell</w>\": 19611,\n  \"maxx</w>\": 37466,\n  \"may\": 1686,\n  \"may</w>\": 1270,\n  \"maya\": 45783,\n  \"maya</w>\": 12987,\n  \"mayan</w>\": 37952,\n  \"maybe</w>\": 3746,\n  \"mayday</w>\": 29957,\n  \"mayer</w>\": 21196,\n  \"mayfair</w>\": 35171,\n  \"mayfield</w>\": 33933,\n  \"mayhem</w>\": 21502,\n  \"maymay\": 26600,\n  \"maymay</w>\": 33853,\n  \"maymayentrata</w>\": 30480,\n  \"maynard</w>\": 32487,\n  \"mayne</w>\": 35771,\n  \"mayo\": 22449,\n  \"mayo</w>\": 11280,\n  \"mayor\": 15429,\n  \"mayor</w>\": 4676,\n  \"mayoral</w>\": 28983,\n  \"mayorof\": 43533,\n  \"mayors</w>\": 28501,\n  \"mays</w>\": 35445,\n  \"maythe</w>\": 42281,\n  \"mayward\": 45751,\n  \"mayward</w>\": 23519,\n  \"mayweather</w>\": 22774,\n  \"maz\": 9177,\n  \"maz</w>\": 36215,\n  \"mazda</w>\": 18506,\n  \"maze</w>\": 21988,\n  \"mazz\": 29439,\n  \"maÃ±\": 37059,\n  \"maÃ±ana</w>\": 39354,\n  \"mb\": 758,\n  \"mb</w>\": 3996,\n  \"mba</w>\": 8329,\n  \"mban</w>\": 46685,\n  \"mbar\": 44452,\n  \"mbb</w>\": 10736,\n  \"mbc</w>\": 20137,\n  \"mbe\": 38395,\n  \"mbe</w>\": 27004,\n  \"mber\": 5467,\n  \"mber</w>\": 1034,\n  \"mberg</w>\": 26372,\n  \"mbers</w>\": 5443,\n  \"mbi</w>\": 45347,\n  \"mble\": 20310,\n  \"mble</w>\": 4756,\n  \"mbles</w>\": 28693,\n  \"mbling</w>\": 28604,\n  \"mbo\": 25733,\n  \"mbo</w>\": 11319,\n  \"mbps</w>\": 44896,\n  \"mbs</w>\": 10370,\n  \"mbta</w>\": 38979,\n  \"mbu</w>\": 42228,\n  \"mbuhari</w>\": 36752,\n  \"mc\": 1278,\n  \"mc</w>\": 4126,\n  \"mca\": 40570,\n  \"mca</w>\": 14635,\n  \"mcal\": 28663,\n  \"mcar\": 43776,\n  \"mcbride</w>\": 35080,\n  \"mcc</w>\": 21192,\n  \"mccabe</w>\": 37628,\n  \"mccaf\": 47385,\n  \"mccain</w>\": 20397,\n  \"mccall</w>\": 34844,\n  \"mccann</w>\": 27140,\n  \"mccar\": 9570,\n  \"mccarthy</w>\": 16974,\n  \"mccartney</w>\": 19958,\n  \"mccl\": 24709,\n  \"mccla\": 43672,\n  \"mccle\": 40139,\n  \"mcclure</w>\": 44945,\n  \"mcco\": 46152,\n  \"mccon\": 32638,\n  \"mccor\": 23057,\n  \"mccormack</w>\": 45164,\n  \"mccormick</w>\": 39088,\n  \"mccoy</w>\": 20218,\n  \"mccr\": 41996,\n  \"mccre\": 25393,\n  \"mccul\": 38833,\n  \"mccull\": 41782,\n  \"mcd</w>\": 28930,\n  \"mcder\": 27355,\n  \"mcdermott</w>\": 34504,\n  \"mcdon\": 12171,\n  \"mcdonald</w>\": 10741,\n  \"mcdonalds</w>\": 17674,\n  \"mcdonnell</w>\": 34360,\n  \"mcdowell</w>\": 34119,\n  \"mce\": 26864,\n  \"mcel\": 28752,\n  \"mcen\": 47423,\n  \"mcfad\": 36976,\n  \"mcfadden</w>\": 42105,\n  \"mcfar\": 29020,\n  \"mcfarlane</w>\": 47174,\n  \"mcfc</w>\": 16416,\n  \"mcfly</w>\": 38211,\n  \"mcg\": 42507,\n  \"mcg</w>\": 27995,\n  \"mcgee</w>\": 29223,\n  \"mcgill\": 46524,\n  \"mcgill</w>\": 35511,\n  \"mcgin\": 29596,\n  \"mcgowan</w>\": 40462,\n  \"mcgr\": 25169,\n  \"mcgra\": 29367,\n  \"mcgrath</w>\": 28759,\n  \"mcgraw</w>\": 40950,\n  \"mcgregor</w>\": 19642,\n  \"mcgu\": 34294,\n  \"mcguinness</w>\": 45299,\n  \"mcguire</w>\": 32635,\n  \"mci\": 46212,\n  \"mci</w>\": 45491,\n  \"mcil\": 30481,\n  \"mcin\": 18770,\n  \"mcintosh</w>\": 45353,\n  \"mcintyre</w>\": 33369,\n  \"mck\": 6781,\n  \"mckay</w>\": 33611,\n  \"mcke\": 27424,\n  \"mckee</w>\": 43529,\n  \"mcken\": 42619,\n  \"mckenna</w>\": 24924,\n  \"mckenzie</w>\": 25502,\n  \"mckin\": 15437,\n  \"mckinley</w>\": 39891,\n  \"mckinney</w>\": 33554,\n  \"mckinnon</w>\": 48736,\n  \"mckinsey</w>\": 48143,\n  \"mcl\": 49021,\n  \"mcla\": 12565,\n  \"mclaren\": 37381,\n  \"mclaren</w>\": 16789,\n  \"mclau\": 32285,\n  \"mclaughlin</w>\": 35346,\n  \"mcle\": 25299,\n  \"mclean</w>\": 28666,\n  \"mcleod</w>\": 40259,\n  \"mcm</w>\": 12251,\n  \"mcmahon</w>\": 24026,\n  \"mcmaster</w>\": 42703,\n  \"mcmillan</w>\": 45603,\n  \"mcn\": 42919,\n  \"mcnam\": 32682,\n  \"mcnamara</w>\": 37506,\n  \"mcne\": 42545,\n  \"mco</w>\": 33723,\n  \"mcqueen</w>\": 22544,\n  \"mcr\": 29884,\n  \"mcr</w>\": 16966,\n  \"mcs</w>\": 27020,\n  \"mcu</w>\": 30403,\n  \"md\": 8637,\n  \"md</w>\": 4732,\n  \"mdc\": 38773,\n  \"mdc</w>\": 41761,\n  \"mds</w>\": 48746,\n  \"mdt</w>\": 40822,\n  \"me\": 613,\n  \"me</w>\": 614,\n  \"mea\": 46045,\n  \"mea</w>\": 17711,\n  \"mead\": 12134,\n  \"mead</w>\": 21567,\n  \"meade</w>\": 37218,\n  \"meado\": 16402,\n  \"meadow\": 25213,\n  \"meadow</w>\": 17195,\n  \"meadows</w>\": 17178,\n  \"meal\": 29662,\n  \"meal</w>\": 5478,\n  \"meals</w>\": 11229,\n  \"mean\": 4189,\n  \"mean</w>\": 3450,\n  \"meand\": 48015,\n  \"meaning\": 14586,\n  \"meaning</w>\": 8342,\n  \"meaningful</w>\": 17480,\n  \"meaningless</w>\": 48932,\n  \"meanings</w>\": 45814,\n  \"means</w>\": 3494,\n  \"meant</w>\": 8674,\n  \"meantime</w>\": 27499,\n  \"meanwhile</w>\": 9650,\n  \"meas\": 5867,\n  \"measles</w>\": 38230,\n  \"measurable</w>\": 48010,\n  \"measure\": 15261,\n  \"measure</w>\": 10579,\n  \"measured</w>\": 23154,\n  \"measurement</w>\": 20973,\n  \"measurements</w>\": 29894,\n  \"measures</w>\": 11936,\n  \"measuring</w>\": 18064,\n  \"meat\": 10805,\n  \"meat</w>\": 6480,\n  \"meatball</w>\": 43642,\n  \"meatballs</w>\": 29233,\n  \"meath</w>\": 37920,\n  \"meatless\": 48085,\n  \"meats</w>\": 29558,\n  \"mec</w>\": 27432,\n  \"mecca</w>\": 36095,\n  \"mech</w>\": 38305,\n  \"mechan\": 6715,\n  \"mechanic</w>\": 24582,\n  \"mechanical</w>\": 14467,\n  \"mechanics</w>\": 20536,\n  \"mechanism</w>\": 22576,\n  \"mechanisms</w>\": 28610,\n  \"meck\": 41908,\n  \"med\": 1948,\n  \"med</w>\": 2177,\n  \"meda</w>\": 33614,\n  \"medal\": 29714,\n  \"medal</w>\": 6974,\n  \"medalist</w>\": 21040,\n  \"medalists</w>\": 43397,\n  \"medalli\": 31349,\n  \"medallion</w>\": 43469,\n  \"medallist</w>\": 41472,\n  \"medals</w>\": 14710,\n  \"mede</w>\": 48225,\n  \"meded</w>\": 27627,\n  \"medi\": 1436,\n  \"media\": 22064,\n  \"media</w>\": 1895,\n  \"mediac\": 37490,\n  \"median</w>\": 30491,\n  \"mediation</w>\": 42829,\n  \"medic\": 3602,\n  \"medic</w>\": 35441,\n  \"medicaid</w>\": 25421,\n  \"medical\": 18432,\n  \"medical</w>\": 4116,\n  \"medicare</w>\": 23710,\n  \"medication</w>\": 23771,\n  \"medications</w>\": 37181,\n  \"medicinal</w>\": 28772,\n  \"medicine</w>\": 5616,\n  \"medicines</w>\": 26541,\n  \"medics</w>\": 46688,\n  \"medieval\": 38956,\n  \"medieval</w>\": 10789,\n  \"medina</w>\": 27281,\n  \"mediocre</w>\": 41170,\n  \"medit\": 19130,\n  \"meditate</w>\": 38039,\n  \"meditation</w>\": 10827,\n  \"mediter\": 14194,\n  \"mediterran\": 14358,\n  \"mediterranean</w>\": 15327,\n  \"medium</w>\": 8675,\n  \"medley</w>\": 24793,\n  \"meds</w>\": 25075,\n  \"medtech</w>\": 42044,\n  \"medusa</w>\": 44216,\n  \"medway</w>\": 42286,\n  \"mee\": 1725,\n  \"mee</w>\": 14075,\n  \"meek</w>\": 28935,\n  \"meen\": 37940,\n  \"meen</w>\": 46515,\n  \"meer\": 26714,\n  \"meer</w>\": 27555,\n  \"meet\": 5714,\n  \"meet</w>\": 1633,\n  \"meeting\": 48566,\n  \"meeting</w>\": 2071,\n  \"meetings</w>\": 9980,\n  \"meets</w>\": 5972,\n  \"meetthe\": 27575,\n  \"meetup</w>\": 15430,\n  \"meg\": 11500,\n  \"meg</w>\": 16186,\n  \"mega\": 15979,\n  \"mega</w>\": 9068,\n  \"megab\": 38103,\n  \"megadeth</w>\": 46741,\n  \"megal\": 37650,\n  \"megam\": 26073,\n  \"megan\": 19127,\n  \"megan</w>\": 11503,\n  \"megap\": 33624,\n  \"megat\": 35581,\n  \"megh\": 31192,\n  \"meghan\": 39939,\n  \"meghan</w>\": 18261,\n  \"meh\": 10512,\n  \"meh</w>\": 22211,\n  \"mehta</w>\": 25031,\n  \"mei\": 22564,\n  \"mei</w>\": 25198,\n  \"meier</w>\": 29812,\n  \"mein\": 28857,\n  \"mein</w>\": 21466,\n  \"meister</w>\": 28407,\n  \"mek</w>\": 44645,\n  \"mel\": 1902,\n  \"mel</w>\": 6834,\n  \"mela</w>\": 35032,\n  \"melan\": 22261,\n  \"melanch\": 44818,\n  \"melancholy</w>\": 47821,\n  \"melani\": 34031,\n  \"melania</w>\": 32796,\n  \"melanie</w>\": 22153,\n  \"melanoma</w>\": 40862,\n  \"melb\": 47007,\n  \"melb</w>\": 28980,\n  \"melbourne\": 28387,\n  \"melbourne</w>\": 6995,\n  \"melee</w>\": 45108,\n  \"meli\": 28885,\n  \"melinda</w>\": 46303,\n  \"melis\": 18913,\n  \"melissa\": 41866,\n  \"melissa</w>\": 13030,\n  \"mell\": 22531,\n  \"mell</w>\": 41583,\n  \"mello</w>\": 47594,\n  \"mellon</w>\": 45162,\n  \"mellow</w>\": 32034,\n  \"melo\": 10354,\n  \"melo</w>\": 22374,\n  \"melodic</w>\": 41877,\n  \"melodies</w>\": 38412,\n  \"melody</w>\": 19119,\n  \"melon</w>\": 12146,\n  \"melrose</w>\": 36296,\n  \"melt\": 22209,\n  \"melt</w>\": 15957,\n  \"meltdown</w>\": 30613,\n  \"melted</w>\": 23037,\n  \"melting</w>\": 19247,\n  \"melton</w>\": 46062,\n  \"melts</w>\": 31446,\n  \"melville</w>\": 46030,\n  \"melvin</w>\": 31544,\n  \"mely</w>\": 6373,\n  \"mem\": 4937,\n  \"mem</w>\": 34944,\n  \"memb\": 2114,\n  \"member\": 29566,\n  \"member</w>\": 1640,\n  \"members</w>\": 2567,\n  \"membership</w>\": 11562,\n  \"membrane</w>\": 34088,\n  \"meme\": 35157,\n  \"meme</w>\": 9169,\n  \"memes</w>\": 12828,\n  \"memo\": 15967,\n  \"memo</w>\": 19334,\n  \"memoir</w>\": 20532,\n  \"memoirs</w>\": 45311,\n  \"memor\": 1858,\n  \"memorab\": 26271,\n  \"memorabilia</w>\": 27488,\n  \"memorable</w>\": 13172,\n  \"memorial\": 16285,\n  \"memorial</w>\": 4642,\n  \"memorialday</w>\": 21598,\n  \"memoriam</w>\": 48191,\n  \"memories</w>\": 4304,\n  \"memory\": 44766,\n  \"memory</w>\": 5137,\n  \"memph\": 10285,\n  \"memphis\": 38432,\n  \"memphis</w>\": 11298,\n  \"men\": 1552,\n  \"men</w>\": 1656,\n  \"mena</w>\": 23052,\n  \"menace</w>\": 29949,\n  \"mend\": 8151,\n  \"mend</w>\": 46927,\n  \"mendel\": 49268,\n  \"mendes</w>\": 18060,\n  \"mendez</w>\": 48275,\n  \"mendo\": 19327,\n  \"mendoza</w>\": 23680,\n  \"meng\": 37102,\n  \"meng</w>\": 37450,\n  \"mening\": 46428,\n  \"menon</w>\": 38255,\n  \"menopau\": 34974,\n  \"menopause</w>\": 46026,\n  \"mens\": 16924,\n  \"mens</w>\": 10495,\n  \"mensfashion</w>\": 27578,\n  \"menstru\": 28345,\n  \"menstrual</w>\": 40915,\n  \"menswear</w>\": 18803,\n  \"ment\": 1585,\n  \"ment</w>\": 777,\n  \"mental\": 8611,\n  \"mental</w>\": 3448,\n  \"mentalhealth\": 20593,\n  \"mentalhealth</w>\": 13022,\n  \"mentality</w>\": 26647,\n  \"mentally</w>\": 14307,\n  \"mentary</w>\": 4468,\n  \"mentation</w>\": 9512,\n  \"mentday</w>\": 40397,\n  \"mente\": 40302,\n  \"mente</w>\": 36396,\n  \"mented</w>\": 9249,\n  \"menting</w>\": 14471,\n  \"mention\": 43881,\n  \"mention</w>\": 6762,\n  \"mentioned</w>\": 11948,\n  \"mentioning</w>\": 34290,\n  \"mentions</w>\": 12334,\n  \"mento</w>\": 30582,\n  \"mentor\": 45342,\n  \"mentor</w>\": 11642,\n  \"mentoring</w>\": 19610,\n  \"mentors</w>\": 20945,\n  \"mentorship</w>\": 33878,\n  \"ments</w>\": 1827,\n  \"menu</w>\": 6225,\n  \"menus</w>\": 33534,\n  \"meo</w>\": 30792,\n  \"meow\": 39965,\n  \"meow</w>\": 17246,\n  \"mep</w>\": 27095,\n  \"mer\": 1316,\n  \"mer</w>\": 2452,\n  \"mera</w>\": 20028,\n  \"merc\": 34357,\n  \"merc</w>\": 44399,\n  \"mercado</w>\": 45479,\n  \"merce\": 8409,\n  \"mercede\": 34959,\n  \"mercedes\": 26403,\n  \"mercedes</w>\": 10685,\n  \"mercedesam\": 40107,\n  \"mercedesbenz</w>\": 32347,\n  \"mercen\": 40301,\n  \"mercer</w>\": 21632,\n  \"merch</w>\": 11504,\n  \"merchandi\": 14954,\n  \"merchandise</w>\": 16808,\n  \"merchandising</w>\": 49196,\n  \"merchant</w>\": 19563,\n  \"merchants</w>\": 34427,\n  \"merci\": 23364,\n  \"merci</w>\": 29378,\n  \"mercur\": 11471,\n  \"mercury\": 45203,\n  \"mercury</w>\": 12653,\n  \"mercy\": 33249,\n  \"mercy</w>\": 10815,\n  \"mere\": 29657,\n  \"mere</w>\": 10342,\n  \"mered\": 24657,\n  \"mered</w>\": 32297,\n  \"meredith</w>\": 25103,\n  \"merely</w>\": 28718,\n  \"merge</w>\": 30406,\n  \"merged</w>\": 46492,\n  \"merger</w>\": 24744,\n  \"merging</w>\": 49256,\n  \"meri\": 17993,\n  \"meri</w>\": 36109,\n  \"meria</w>\": 48433,\n  \"meric</w>\": 27097,\n  \"merica</w>\": 30561,\n  \"meridi\": 37901,\n  \"meridian</w>\": 31195,\n  \"mering</w>\": 41060,\n  \"meringue</w>\": 41661,\n  \"merino</w>\": 42648,\n  \"merit</w>\": 20830,\n  \"merkel</w>\": 24715,\n  \"merle</w>\": 48586,\n  \"merlin</w>\": 26517,\n  \"merlot</w>\": 40424,\n  \"mermaid</w>\": 16064,\n  \"mermaids</w>\": 43617,\n  \"mero</w>\": 19097,\n  \"merr\": 48288,\n  \"merri\": 21462,\n  \"merrill</w>\": 47713,\n  \"merritt</w>\": 36462,\n  \"merry\": 14167,\n  \"merry</w>\": 5779,\n  \"merrychristmas</w>\": 19672,\n  \"mers</w>\": 4199,\n  \"mersal</w>\": 36711,\n  \"mersey\": 25248,\n  \"mersey</w>\": 46239,\n  \"merseyside</w>\": 35382,\n  \"mert</w>\": 48496,\n  \"merton</w>\": 35315,\n  \"mery</w>\": 40873,\n  \"meryl</w>\": 35787,\n  \"mes\": 28432,\n  \"mes</w>\": 3029,\n  \"mesa</w>\": 18956,\n  \"mese</w>\": 42018,\n  \"mesh</w>\": 15030,\n  \"mesm\": 18695,\n  \"mesmer\": 38435,\n  \"mesmeri\": 25985,\n  \"mesmerizing</w>\": 35637,\n  \"meso\": 25537,\n  \"mesqu\": 46819,\n  \"mess\": 2490,\n  \"mess</w>\": 8188,\n  \"message</w>\": 3918,\n  \"messages</w>\": 9390,\n  \"messaging</w>\": 23234,\n  \"messe</w>\": 40391,\n  \"messed</w>\": 23580,\n  \"messenger</w>\": 17389,\n  \"messi\": 19394,\n  \"messi</w>\": 11252,\n  \"messiah</w>\": 28737,\n  \"messing</w>\": 23144,\n  \"messy</w>\": 15987,\n  \"mest</w>\": 23780,\n  \"mester</w>\": 47349,\n  \"mesut</w>\": 49177,\n  \"met\": 5249,\n  \"met</w>\": 2340,\n  \"meta\": 14803,\n  \"meta</w>\": 22701,\n  \"metab\": 16150,\n  \"metabol\": 48389,\n  \"metaboli\": 25573,\n  \"metabolic</w>\": 34311,\n  \"metabolism</w>\": 27824,\n  \"metal\": 8935,\n  \"metal</w>\": 4044,\n  \"metall\": 19084,\n  \"metallic</w>\": 17257,\n  \"metallica</w>\": 24079,\n  \"metals</w>\": 21375,\n  \"metam\": 28862,\n  \"metamor\": 39030,\n  \"metamorpho\": 47601,\n  \"metaph\": 24189,\n  \"metaphor</w>\": 34233,\n  \"metast\": 41973,\n  \"mete\": 11226,\n  \"meteor\": 26429,\n  \"meteor</w>\": 26823,\n  \"meteoro\": 25948,\n  \"meteorologist</w>\": 42849,\n  \"meter</w>\": 10104,\n  \"meters</w>\": 13247,\n  \"metgala</w>\": 30089,\n  \"meth\": 21867,\n  \"meth</w>\": 26177,\n  \"methane</w>\": 37565,\n  \"metho\": 5770,\n  \"method</w>\": 10284,\n  \"methodist</w>\": 25165,\n  \"methodo\": 28488,\n  \"methodology</w>\": 37316,\n  \"methods</w>\": 12200,\n  \"methyl\": 48999,\n  \"metmuseum</w>\": 28207,\n  \"meto\": 25679,\n  \"metoo</w>\": 24722,\n  \"metr\": 15086,\n  \"metre</w>\": 27889,\n  \"metres</w>\": 19798,\n  \"metric</w>\": 19950,\n  \"metrical</w>\": 40704,\n  \"metrics</w>\": 24396,\n  \"metro\": 7257,\n  \"metro</w>\": 6784,\n  \"metroid</w>\": 39957,\n  \"metropolis</w>\": 40476,\n  \"metropolitan</w>\": 19013,\n  \"metry</w>\": 20039,\n  \"mets</w>\": 9633,\n  \"mett</w>\": 28081,\n  \"metz</w>\": 40506,\n  \"meu</w>\": 34520,\n  \"mew</w>\": 40368,\n  \"mex\": 3213,\n  \"mex</w>\": 18387,\n  \"mexic\": 31728,\n  \"mexican\": 37442,\n  \"mexican</w>\": 8186,\n  \"mexicans</w>\": 47729,\n  \"mexico\": 31834,\n  \"mexico</w>\": 4604,\n  \"mey\": 28584,\n  \"mey</w>\": 27777,\n  \"meyer</w>\": 13963,\n  \"meyers</w>\": 32326,\n  \"mez\": 30615,\n  \"mez</w>\": 46833,\n  \"mezz\": 38771,\n  \"mf\": 18199,\n  \"mf</w>\": 11067,\n  \"mfa</w>\": 24107,\n  \"mfc</w>\": 39474,\n  \"mfg</w>\": 21912,\n  \"mfw</w>\": 27309,\n  \"mg\": 10003,\n  \"mg</w>\": 8014,\n  \"mga</w>\": 23954,\n  \"mgm</w>\": 27572,\n  \"mgmt</w>\": 22288,\n  \"mgr</w>\": 31500,\n  \"mgs</w>\": 48073,\n  \"mgt</w>\": 48663,\n  \"mh\": 9962,\n  \"mh</w>\": 10834,\n  \"mha</w>\": 41944,\n  \"mhealth</w>\": 41225,\n  \"mhs</w>\": 28815,\n  \"mhz</w>\": 31550,\n  \"mi\": 714,\n  \"mi</w>\": 2251,\n  \"mia</w>\": 5852,\n  \"miam\": 31053,\n  \"miami\": 15106,\n  \"miami</w>\": 4891,\n  \"mian</w>\": 24792,\n  \"miaw</w>\": 36046,\n  \"mib</w>\": 48178,\n  \"mic\": 1213,\n  \"mic</w>\": 3816,\n  \"mica</w>\": 41551,\n  \"micah</w>\": 33870,\n  \"mice</w>\": 19030,\n  \"mich\": 25628,\n  \"mich</w>\": 23029,\n  \"micha\": 2083,\n  \"michael\": 6051,\n  \"michael</w>\": 2511,\n  \"michaela</w>\": 41897,\n  \"michaeljackson</w>\": 33532,\n  \"michaels</w>\": 23868,\n  \"michal\": 47144,\n  \"miche\": 37966,\n  \"micheal</w>\": 43709,\n  \"michel\": 5158,\n  \"michel</w>\": 17153,\n  \"michelangelo</w>\": 41245,\n  \"michele</w>\": 20642,\n  \"michelin</w>\": 26330,\n  \"michelle\": 19028,\n  \"michelle</w>\": 8625,\n  \"michi\": 5658,\n  \"michigan\": 32344,\n  \"michigan</w>\": 6296,\n  \"mick\": 15171,\n  \"mick</w>\": 12592,\n  \"mickey\": 41813,\n  \"mickey</w>\": 13053,\n  \"micky</w>\": 43011,\n  \"micro\": 3160,\n  \"micro</w>\": 11374,\n  \"microbes</w>\": 44671,\n  \"microbi\": 19496,\n  \"microbial</w>\": 30335,\n  \"microbiology</w>\": 35348,\n  \"microbiome</w>\": 35148,\n  \"micron\": 48742,\n  \"microphone</w>\": 24643,\n  \"micropoetry</w>\": 35997,\n  \"microscope</w>\": 29114,\n  \"microscopy</w>\": 38431,\n  \"microsof\": 42424,\n  \"microsoft\": 38650,\n  \"microsoft</w>\": 7254,\n  \"microwave</w>\": 24240,\n  \"mics</w>\": 16554,\n  \"mid\": 2192,\n  \"mid</w>\": 4734,\n  \"midcentury</w>\": 48988,\n  \"midd\": 2983,\n  \"midday</w>\": 23390,\n  \"middle\": 9849,\n  \"middle</w>\": 3694,\n  \"middleeast</w>\": 32783,\n  \"middles\": 29769,\n  \"middlesbrough</w>\": 32436,\n  \"middlesex</w>\": 39154,\n  \"middleton</w>\": 23627,\n  \"middleweight</w>\": 35829,\n  \"midfield</w>\": 28116,\n  \"midfielder</w>\": 13423,\n  \"midget</w>\": 30734,\n  \"midi\": 39496,\n  \"midi</w>\": 27326,\n  \"midland</w>\": 24822,\n  \"midlands</w>\": 18062,\n  \"midnight\": 35746,\n  \"midnight</w>\": 6302,\n  \"mids</w>\": 40821,\n  \"midst</w>\": 24752,\n  \"midsummer</w>\": 35234,\n  \"midterm</w>\": 34365,\n  \"midterms</w>\": 32015,\n  \"midtown</w>\": 26069,\n  \"midway</w>\": 26536,\n  \"midweek</w>\": 29120,\n  \"midwest</w>\": 16627,\n  \"midwi\": 44802,\n  \"midwife</w>\": 37681,\n  \"midwives</w>\": 42355,\n  \"mie\": 20865,\n  \"mie</w>\": 10555,\n  \"miento</w>\": 46482,\n  \"mier</w>\": 36490,\n  \"mies</w>\": 8840,\n  \"miff\": 49398,\n  \"mig</w>\": 28743,\n  \"might</w>\": 2727,\n  \"mighty\": 26632,\n  \"mighty</w>\": 7815,\n  \"mign\": 41678,\n  \"migos</w>\": 44640,\n  \"migr\": 3736,\n  \"migra\": 28186,\n  \"migraine</w>\": 35360,\n  \"migrant</w>\": 18902,\n  \"migrants</w>\": 15814,\n  \"migrate</w>\": 41804,\n  \"migrating</w>\": 43604,\n  \"migration</w>\": 11891,\n  \"migu\": 12279,\n  \"miguel\": 33672,\n  \"miguel</w>\": 14436,\n  \"miho</w>\": 46870,\n  \"mii</w>\": 39896,\n  \"mik\": 15096,\n  \"mik</w>\": 46203,\n  \"mika\": 28609,\n  \"mika</w>\": 25185,\n  \"mike\": 5884,\n  \"mike</w>\": 3178,\n  \"mikel</w>\": 48865,\n  \"mikequind\": 33508,\n  \"mikequindazzi</w>\": 33551,\n  \"mikey\": 34934,\n  \"mikey</w>\": 23368,\n  \"mikha\": 30999,\n  \"mikhail</w>\": 38327,\n  \"miki</w>\": 48863,\n  \"miko</w>\": 35413,\n  \"miku</w>\": 37703,\n  \"mil\": 1469,\n  \"mil</w>\": 12826,\n  \"mila</w>\": 26183,\n  \"milan\": 30380,\n  \"milan</w>\": 8552,\n  \"milano</w>\": 18585,\n  \"milb</w>\": 42248,\n  \"mild</w>\": 16085,\n  \"mildly</w>\": 49059,\n  \"mile\": 7833,\n  \"mile</w>\": 6243,\n  \"mileage</w>\": 30579,\n  \"miler</w>\": 44680,\n  \"miles</w>\": 3446,\n  \"milestone</w>\": 13485,\n  \"milestones</w>\": 34025,\n  \"miley\": 25336,\n  \"miley</w>\": 14321,\n  \"mileycyrus</w>\": 28528,\n  \"milf</w>\": 45386,\n  \"milford</w>\": 35840,\n  \"mili\": 16698,\n  \"miliband</w>\": 41440,\n  \"milit\": 3715,\n  \"militant</w>\": 33629,\n  \"militants</w>\": 23974,\n  \"military\": 24498,\n  \"military</w>\": 4323,\n  \"militi\": 46625,\n  \"militia</w>\": 32114,\n  \"milk\": 13409,\n  \"milk</w>\": 5205,\n  \"milkshake</w>\": 29066,\n  \"milky\": 37320,\n  \"milky</w>\": 21120,\n  \"milkyway</w>\": 43246,\n  \"mill\": 4221,\n  \"mill</w>\": 6637,\n  \"milla</w>\": 49381,\n  \"millan\": 34930,\n  \"millan</w>\": 22188,\n  \"millar</w>\": 41851,\n  \"mille</w>\": 34066,\n  \"millen\": 48501,\n  \"millenni\": 10406,\n  \"millennial</w>\": 28357,\n  \"millennials</w>\": 18804,\n  \"millennium</w>\": 21116,\n  \"miller\": 21699,\n  \"miller</w>\": 5733,\n  \"milli\": 5340,\n  \"millie</w>\": 29283,\n  \"milling</w>\": 39133,\n  \"million\": 13154,\n  \"million</w>\": 2506,\n  \"millionaire</w>\": 25179,\n  \"millionaires</w>\": 47159,\n  \"millions</w>\": 8492,\n  \"mills</w>\": 10331,\n  \"millwall</w>\": 35902,\n  \"milly</w>\": 45794,\n  \"milne</w>\": 44590,\n  \"milner</w>\": 45230,\n  \"milo</w>\": 24548,\n  \"milton\": 39004,\n  \"milton</w>\": 17360,\n  \"milwau\": 13452,\n  \"milwaukee</w>\": 14259,\n  \"mim</w>\": 39379,\n  \"mimi</w>\": 27086,\n  \"mimic\": 47116,\n  \"mimic</w>\": 46519,\n  \"mimo\": 45551,\n  \"min\": 771,\n  \"min</w>\": 3331,\n  \"mina</w>\": 15281,\n  \"minaj</w>\": 25136,\n  \"minal</w>\": 40222,\n  \"minat</w>\": 33275,\n  \"mince</w>\": 32396,\n  \"mind\": 5890,\n  \"mind</w>\": 2575,\n  \"mindanao</w>\": 44228,\n  \"minded</w>\": 21330,\n  \"mindful</w>\": 28457,\n  \"mindfulness</w>\": 15707,\n  \"minding</w>\": 45337,\n  \"minds</w>\": 9244,\n  \"mindset</w>\": 14217,\n  \"mindy\": 46875,\n  \"mindy</w>\": 38551,\n  \"mine\": 20149,\n  \"mine</w>\": 3347,\n  \"minecraft</w>\": 15678,\n  \"mined</w>\": 48034,\n  \"minent</w>\": 12533,\n  \"miner\": 14109,\n  \"miner</w>\": 26572,\n  \"mineral</w>\": 17692,\n  \"minerals</w>\": 21169,\n  \"miners</w>\": 22119,\n  \"mines</w>\": 16211,\n  \"ming\": 10868,\n  \"ming</w>\": 2107,\n  \"mingham</w>\": 7590,\n  \"mingle</w>\": 38437,\n  \"mingly</w>\": 36909,\n  \"mington\": 49283,\n  \"mington</w>\": 23119,\n  \"minh</w>\": 48734,\n  \"minho</w>\": 21318,\n  \"mini\": 1810,\n  \"mini</w>\": 3954,\n  \"miniature\": 44298,\n  \"miniature</w>\": 16377,\n  \"miniatures</w>\": 38816,\n  \"minic\": 31522,\n  \"minim\": 10005,\n  \"minimal</w>\": 18458,\n  \"minimalism</w>\": 42594,\n  \"minimalist</w>\": 26641,\n  \"minimize</w>\": 38697,\n  \"minimum</w>\": 12244,\n  \"minindia</w>\": 28458,\n  \"mining</w>\": 8473,\n  \"minion</w>\": 28622,\n  \"minions</w>\": 27035,\n  \"minis\": 33409,\n  \"minis</w>\": 35976,\n  \"minister\": 25688,\n  \"minister</w>\": 3569,\n  \"ministerial</w>\": 33008,\n  \"ministers</w>\": 16406,\n  \"ministries</w>\": 27895,\n  \"ministry</w>\": 8742,\n  \"mink</w>\": 42017,\n  \"minn\": 45991,\n  \"minn</w>\": 47318,\n  \"minne\": 7083,\n  \"minneapolis</w>\": 16977,\n  \"minneso\": 9380,\n  \"minnesota</w>\": 9968,\n  \"minnie</w>\": 24493,\n  \"mino</w>\": 22791,\n  \"minogue</w>\": 44202,\n  \"minor</w>\": 8522,\n  \"minorities</w>\": 28119,\n  \"minority</w>\": 16210,\n  \"minors</w>\": 36789,\n  \"mins</w>\": 6196,\n  \"minsk</w>\": 46151,\n  \"minster</w>\": 11189,\n  \"mint\": 48084,\n  \"mint</w>\": 7506,\n  \"minted</w>\": 49377,\n  \"minton</w>\": 20050,\n  \"minu\": 29064,\n  \"minus</w>\": 15358,\n  \"minute\": 28931,\n  \"minute</w>\": 4497,\n  \"minutes</w>\": 3056,\n  \"mio</w>\": 26366,\n  \"mir\": 2750,\n  \"mir</w>\": 6585,\n  \"mira\": 21665,\n  \"mira</w>\": 22762,\n  \"mirac\": 13685,\n  \"miracle\": 49208,\n  \"miracle</w>\": 11543,\n  \"miracles</w>\": 23478,\n  \"miraculous</w>\": 38671,\n  \"mirage</w>\": 28679,\n  \"mirai</w>\": 49060,\n  \"mirand\": 32367,\n  \"miranda</w>\": 17590,\n  \"mire\": 38140,\n  \"mire</w>\": 30140,\n  \"miri\": 22273,\n  \"miriam</w>\": 30950,\n  \"miro\": 34851,\n  \"miro</w>\": 48317,\n  \"mirren</w>\": 47600,\n  \"mirro\": 48500,\n  \"mirror\": 29823,\n  \"mirror</w>\": 7220,\n  \"mirrors</w>\": 21823,\n  \"mirza</w>\": 36440,\n  \"mis\": 866,\n  \"mis</w>\": 11239,\n  \"mischief</w>\": 33896,\n  \"misconceptions</w>\": 48681,\n  \"misconduct</w>\": 30601,\n  \"mise\": 46567,\n  \"mise</w>\": 17267,\n  \"miser\": 33394,\n  \"miserable</w>\": 26196,\n  \"misery</w>\": 28360,\n  \"mises</w>\": 24390,\n  \"misfits</w>\": 42708,\n  \"mish\": 15494,\n  \"mish</w>\": 20981,\n  \"misha</w>\": 35434,\n  \"mishra</w>\": 33042,\n  \"misleading</w>\": 30862,\n  \"mism</w>\": 15948,\n  \"miso\": 27657,\n  \"miso</w>\": 33441,\n  \"misogy\": 31315,\n  \"misogyny</w>\": 48415,\n  \"miss\": 6984,\n  \"miss</w>\": 1526,\n  \"missal</w>\": 38337,\n  \"missed</w>\": 3955,\n  \"misses</w>\": 15844,\n  \"missi\": 3008,\n  \"missile</w>\": 14411,\n  \"missiles</w>\": 27868,\n  \"missin</w>\": 36209,\n  \"missing\": 23509,\n  \"missing</w>\": 3423,\n  \"mission\": 12738,\n  \"mission</w>\": 2406,\n  \"missionaries</w>\": 40580,\n  \"missionary</w>\": 27915,\n  \"missions</w>\": 6990,\n  \"mississ\": 26483,\n  \"mississauga</w>\": 28393,\n  \"mississi\": 11687,\n  \"mississippi</w>\": 12232,\n  \"missou\": 30710,\n  \"missoula</w>\": 48549,\n  \"missouri</w>\": 11835,\n  \"missuni\": 26347,\n  \"missuniverse</w>\": 28766,\n  \"missy\": 48105,\n  \"missy</w>\": 31515,\n  \"missyou</w>\": 45799,\n  \"mist\": 12610,\n  \"mist</w>\": 11946,\n  \"mistak\": 20478,\n  \"mistake</w>\": 11303,\n  \"mistaken</w>\": 29182,\n  \"mistakenly</w>\": 48494,\n  \"mistakes</w>\": 12824,\n  \"mister\": 26949,\n  \"mister</w>\": 18895,\n  \"mistle\": 46800,\n  \"mistletoe</w>\": 48569,\n  \"mistre\": 42039,\n  \"mistress</w>\": 24349,\n  \"mists</w>\": 28636,\n  \"misty</w>\": 18799,\n  \"misunderstood</w>\": 41574,\n  \"misuse</w>\": 40970,\n  \"mit\": 3303,\n  \"mit</w>\": 4551,\n  \"mita</w>\": 47514,\n  \"mitage</w>\": 27964,\n  \"mitch\": 6969,\n  \"mitch</w>\": 14150,\n  \"mitchell\": 39339,\n  \"mitchell</w>\": 9007,\n  \"mite</w>\": 26929,\n  \"mith\": 21752,\n  \"mith</w>\": 17948,\n  \"miti\": 17857,\n  \"mitigate</w>\": 42273,\n  \"mitigation</w>\": 35514,\n  \"mito\": 38254,\n  \"mitochondri\": 42132,\n  \"mitra</w>\": 47703,\n  \"mits</w>\": 24086,\n  \"mitsu\": 17905,\n  \"mitsubi\": 21604,\n  \"mitsubishi</w>\": 23030,\n  \"mitt\": 17321,\n  \"mitt</w>\": 21341,\n  \"mitted</w>\": 10307,\n  \"mitting</w>\": 27938,\n  \"mitz\": 41827,\n  \"mium</w>\": 35891,\n  \"miwx</w>\": 43941,\n  \"mix\": 3210,\n  \"mix</w>\": 3285,\n  \"mixed\": 29376,\n  \"mixed</w>\": 6780,\n  \"mixer</w>\": 17200,\n  \"mixers</w>\": 39175,\n  \"mixes</w>\": 19061,\n  \"mixing</w>\": 15588,\n  \"mixtape</w>\": 11044,\n  \"mixture</w>\": 28286,\n  \"miy\": 25695,\n  \"miya</w>\": 36257,\n  \"miz\": 20881,\n  \"miz</w>\": 30795,\n  \"mize</w>\": 19076,\n  \"mized</w>\": 43418,\n  \"mizing</w>\": 38715,\n  \"mizz\": 19985,\n  \"mizzou</w>\": 26165,\n  \"mj\": 13117,\n  \"mj</w>\": 14733,\n  \"mk\": 11581,\n  \"mk</w>\": 8937,\n  \"mke</w>\": 36642,\n  \"mkt</w>\": 24814,\n  \"ml\": 3627,\n  \"ml</w>\": 5780,\n  \"mla</w>\": 16723,\n  \"mlas</w>\": 48464,\n  \"mlb\": 21039,\n  \"mlb</w>\": 7482,\n  \"mley</w>\": 40329,\n  \"mlg</w>\": 45801,\n  \"mlin</w>\": 24556,\n  \"mlk</w>\": 17941,\n  \"mlkday</w>\": 39905,\n  \"mlm</w>\": 37611,\n  \"mln</w>\": 18971,\n  \"mlp</w>\": 23620,\n  \"mlpfi\": 45475,\n  \"mlpfim</w>\": 45640,\n  \"mls</w>\": 13077,\n  \"mm\": 1028,\n  \"mm</w>\": 2848,\n  \"mma\": 34140,\n  \"mma</w>\": 6096,\n  \"mmc</w>\": 44253,\n  \"mme</w>\": 13105,\n  \"mmed</w>\": 19570,\n  \"mmer\": 35717,\n  \"mmer</w>\": 7508,\n  \"mmers</w>\": 28128,\n  \"mmes</w>\": 42862,\n  \"mmi</w>\": 34147,\n  \"mming\": 21038,\n  \"mming</w>\": 16507,\n  \"mmings</w>\": 31357,\n  \"mmit</w>\": 41050,\n  \"mmj</w>\": 43015,\n  \"mmm\": 37908,\n  \"mmm</w>\": 7641,\n  \"mmmm\": 36312,\n  \"mmmm</w>\": 13180,\n  \"mmmmm</w>\": 21808,\n  \"mmmmmm</w>\": 43740,\n  \"mmo</w>\": 30418,\n  \"mmon</w>\": 41131,\n  \"mmor\": 36657,\n  \"mmorpg</w>\": 39476,\n  \"mms</w>\": 37803,\n  \"mmva</w>\": 42666,\n  \"mmy\": 28837,\n  \"mmy</w>\": 8722,\n  \"mn\": 5086,\n  \"mn</w>\": 4057,\n  \"mna</w>\": 34877,\n  \"mnd</w>\": 44776,\n  \"mnet</w>\": 34129,\n  \"mnf</w>\": 41105,\n  \"mnl</w>\": 32980,\n  \"mnleg</w>\": 42653,\n  \"mns</w>\": 39040,\n  \"mnt</w>\": 21477,\n  \"mntwins</w>\": 45448,\n  \"mnwild</w>\": 39044,\n  \"mnwx</w>\": 39592,\n  \"mo\": 617,\n  \"mo</w>\": 2080,\n  \"moa</w>\": 33174,\n  \"moana</w>\": 43241,\n  \"mob\": 2818,\n  \"mob</w>\": 12754,\n  \"mobi\": 9451,\n  \"mobil\": 26343,\n  \"mobil</w>\": 29815,\n  \"mobile\": 12935,\n  \"mobile</w>\": 3451,\n  \"mobiles</w>\": 44302,\n  \"mobili\": 20770,\n  \"mobility</w>\": 12546,\n  \"mobilization</w>\": 48916,\n  \"moby</w>\": 47219,\n  \"moc\": 41439,\n  \"moc</w>\": 36992,\n  \"mocha</w>\": 28425,\n  \"mochi</w>\": 47973,\n  \"mock\": 15641,\n  \"mock</w>\": 12759,\n  \"mocked</w>\": 47400,\n  \"mocking\": 28692,\n  \"mocking</w>\": 37870,\n  \"mocks</w>\": 35142,\n  \"mod\": 6362,\n  \"mod</w>\": 10893,\n  \"moda</w>\": 25814,\n  \"modal</w>\": 33157,\n  \"mode\": 20402,\n  \"mode</w>\": 6493,\n  \"model\": 4591,\n  \"model</w>\": 2863,\n  \"modeled</w>\": 39527,\n  \"modeling</w>\": 13706,\n  \"modelling</w>\": 19946,\n  \"models</w>\": 6176,\n  \"moder\": 2894,\n  \"moderate</w>\": 16435,\n  \"moderated</w>\": 27928,\n  \"moderating</w>\": 34242,\n  \"moderator</w>\": 32659,\n  \"modern\": 11706,\n  \"modern</w>\": 4077,\n  \"modernart</w>\": 34417,\n  \"moderni\": 24328,\n  \"modernism</w>\": 39601,\n  \"modernist</w>\": 36773,\n  \"modernization</w>\": 47294,\n  \"modes</w>\": 30454,\n  \"modest</w>\": 25436,\n  \"modi\": 9047,\n  \"modi</w>\": 7774,\n  \"modification</w>\": 37630,\n  \"modified</w>\": 17964,\n  \"modo</w>\": 36820,\n  \"mods</w>\": 23843,\n  \"modu\": 9036,\n  \"modular</w>\": 22437,\n  \"module</w>\": 16757,\n  \"modules</w>\": 30575,\n  \"moe\": 38655,\n  \"moe</w>\": 17938,\n  \"mof\": 30798,\n  \"moff\": 27160,\n  \"mog</w>\": 42362,\n  \"moga\": 41732,\n  \"mogadishu</w>\": 45133,\n  \"mogul</w>\": 41320,\n  \"moh\": 18979,\n  \"moh</w>\": 35388,\n  \"moha\": 46892,\n  \"moham\": 7923,\n  \"mohamed</w>\": 18472,\n  \"mohammad</w>\": 19926,\n  \"mohammed</w>\": 16168,\n  \"mohan\": 26521,\n  \"mohan</w>\": 23586,\n  \"mohawk</w>\": 34942,\n  \"mohd</w>\": 49094,\n  \"mohsin</w>\": 48861,\n  \"moi\": 20691,\n  \"moi</w>\": 21825,\n  \"moil</w>\": 30349,\n  \"moines</w>\": 32091,\n  \"moist\": 19831,\n  \"moist</w>\": 33263,\n  \"moisture</w>\": 20412,\n  \"moisturi\": 25942,\n  \"moj\": 34505,\n  \"moja\": 49055,\n  \"mojito</w>\": 46830,\n  \"mojo</w>\": 25204,\n  \"mok\": 49146,\n  \"mol\": 4246,\n  \"mol</w>\": 31582,\n  \"mold</w>\": 21846,\n  \"molding</w>\": 46274,\n  \"moldova</w>\": 47317,\n  \"mole\": 9927,\n  \"mole</w>\": 23529,\n  \"molecular</w>\": 19370,\n  \"molecule</w>\": 39233,\n  \"molecules</w>\": 35643,\n  \"molina</w>\": 34201,\n  \"mollie</w>\": 48203,\n  \"molly\": 24368,\n  \"molly</w>\": 12573,\n  \"molo\": 41510,\n  \"mology</w>\": 32255,\n  \"molten</w>\": 46071,\n  \"moly</w>\": 47083,\n  \"mom\": 1614,\n  \"mom</w>\": 2543,\n  \"moma</w>\": 33605,\n  \"mombasa</w>\": 40340,\n  \"moment\": 12197,\n  \"moment</w>\": 2495,\n  \"momento</w>\": 30078,\n  \"moments</w>\": 5251,\n  \"momentum</w>\": 15722,\n  \"momlife</w>\": 43825,\n  \"momma</w>\": 14508,\n  \"mommy</w>\": 12456,\n  \"momo\": 48490,\n  \"momo</w>\": 25980,\n  \"moms\": 28446,\n  \"moms</w>\": 10042,\n  \"momsdemand</w>\": 33744,\n  \"mon\": 749,\n  \"mon</w>\": 2173,\n  \"mona</w>\": 19143,\n  \"monaco</w>\": 14938,\n  \"monaghan</w>\": 39797,\n  \"monarch\": 27235,\n  \"monarch</w>\": 22619,\n  \"monarchs</w>\": 36750,\n  \"monarchy</w>\": 47503,\n  \"monaster\": 19422,\n  \"monastery</w>\": 21850,\n  \"monc\": 34847,\n  \"moncton</w>\": 44962,\n  \"mond\": 14522,\n  \"mond</w>\": 4475,\n  \"monday\": 6205,\n  \"monday</w>\": 2098,\n  \"mondaymorning</w>\": 40089,\n  \"mondaymotiv\": 45488,\n  \"mondaymotivation</w>\": 8198,\n  \"mondaymotivaton</w>\": 47034,\n  \"mondays</w>\": 13815,\n  \"monde</w>\": 29339,\n  \"mondo</w>\": 36207,\n  \"monds</w>\": 20317,\n  \"mone</w>\": 25990,\n  \"monet</w>\": 24499,\n  \"monetary</w>\": 26394,\n  \"moneti\": 38056,\n  \"money\": 12743,\n  \"money</w>\": 2327,\n  \"mong</w>\": 43566,\n  \"monger</w>\": 38928,\n  \"mongers</w>\": 27670,\n  \"mongo\": 20680,\n  \"mongolia</w>\": 27144,\n  \"mongolian</w>\": 46335,\n  \"moni\": 46851,\n  \"monia</w>\": 31161,\n  \"monic\": 30893,\n  \"monica</w>\": 13540,\n  \"monit\": 9014,\n  \"monitor</w>\": 10198,\n  \"monitored</w>\": 45828,\n  \"monitoring</w>\": 11030,\n  \"monitors</w>\": 30478,\n  \"monk\": 30557,\n  \"monk</w>\": 16424,\n  \"monkey\": 29597,\n  \"monkey</w>\": 9465,\n  \"monkeys</w>\": 15781,\n  \"monks</w>\": 29090,\n  \"monmouth</w>\": 36929,\n  \"mono\": 8220,\n  \"mono</w>\": 22537,\n  \"monochrome</w>\": 25576,\n  \"monogram</w>\": 39665,\n  \"monologue</w>\": 47776,\n  \"monopoly</w>\": 25241,\n  \"monoxide</w>\": 49314,\n  \"monro\": 45750,\n  \"monroe</w>\": 13625,\n  \"mons</w>\": 19885,\n  \"monsanto</w>\": 37592,\n  \"monsi\": 46677,\n  \"monsieur</w>\": 48879,\n  \"monsoon</w>\": 18872,\n  \"monsta</w>\": 30718,\n  \"monstax</w>\": 45631,\n  \"monste\": 47045,\n  \"monster\": 14454,\n  \"monster</w>\": 6060,\n  \"monsters</w>\": 11546,\n  \"mont\": 5186,\n  \"mont</w>\": 5382,\n  \"montag\": 37202,\n  \"montage</w>\": 32325,\n  \"montal\": 42126,\n  \"montan\": 28405,\n  \"montana</w>\": 11436,\n  \"monte\": 8711,\n  \"monte</w>\": 14667,\n  \"montene\": 28538,\n  \"montenegro</w>\": 30378,\n  \"monter\": 36673,\n  \"monterey</w>\": 23388,\n  \"monterrey</w>\": 45254,\n  \"montess\": 43205,\n  \"montessori</w>\": 45443,\n  \"montgom\": 13852,\n  \"montgomery</w>\": 14951,\n  \"month\": 7680,\n  \"month</w>\": 1924,\n  \"monthly</w>\": 8764,\n  \"months</w>\": 3109,\n  \"monthsary</w>\": 42420,\n  \"monton</w>\": 41961,\n  \"montp\": 39523,\n  \"montre\": 8434,\n  \"montreal</w>\": 9262,\n  \"montrose</w>\": 42347,\n  \"monty\": 43997,\n  \"monty</w>\": 24038,\n  \"monu\": 9748,\n  \"monument</w>\": 12019,\n  \"monumental</w>\": 31297,\n  \"monuments</w>\": 26916,\n  \"mony</w>\": 4117,\n  \"monza</w>\": 40380,\n  \"moo\": 4953,\n  \"moo</w>\": 24626,\n  \"mood\": 42358,\n  \"mood</w>\": 5394,\n  \"moods</w>\": 43727,\n  \"moody</w>\": 17170,\n  \"moom\": 36887,\n  \"moon\": 6334,\n  \"moon</w>\": 3293,\n  \"mooney</w>\": 37942,\n  \"moonlight</w>\": 20001,\n  \"moons</w>\": 29887,\n  \"moonshine</w>\": 46706,\n  \"moor\": 14817,\n  \"moor</w>\": 11877,\n  \"moore\": 28613,\n  \"moore</w>\": 6708,\n  \"moors</w>\": 32577,\n  \"moose\": 37562,\n  \"moose</w>\": 17338,\n  \"moot</w>\": 46895,\n  \"mop</w>\": 33900,\n  \"mopar</w>\": 41166,\n  \"mor\": 657,\n  \"mor</w>\": 18614,\n  \"mora</w>\": 29262,\n  \"moral</w>\": 11246,\n  \"morale</w>\": 39404,\n  \"morales</w>\": 27117,\n  \"morality</w>\": 34133,\n  \"morally</w>\": 42519,\n  \"morals</w>\": 46223,\n  \"moran</w>\": 21557,\n  \"moray</w>\": 44569,\n  \"more\": 5434,\n  \"more</w>\": 750,\n  \"morecam\": 37305,\n  \"morecambe</w>\": 43414,\n  \"mored</w>\": 20195,\n  \"moreland</w>\": 44135,\n  \"moreno</w>\": 24826,\n  \"morethan\": 30889,\n  \"morg\": 34284,\n  \"morgan\": 15432,\n  \"morgan</w>\": 6075,\n  \"morgen</w>\": 35106,\n  \"mori\": 25710,\n  \"mori</w>\": 29514,\n  \"moris\": 43131,\n  \"moritz</w>\": 45594,\n  \"morley</w>\": 40439,\n  \"mormon</w>\": 27715,\n  \"morn</w>\": 22393,\n  \"mornin</w>\": 28327,\n  \"morning\": 10769,\n  \"morning</w>\": 1119,\n  \"mornings</w>\": 12106,\n  \"moro</w>\": 31613,\n  \"moroc\": 11996,\n  \"moroccan</w>\": 27546,\n  \"morocco</w>\": 15228,\n  \"moron</w>\": 31875,\n  \"morons</w>\": 46477,\n  \"morow</w>\": 40779,\n  \"morph\": 23915,\n  \"morph</w>\": 41700,\n  \"morphe\": 38978,\n  \"morpho\": 38622,\n  \"morrha\": 43044,\n  \"morri\": 9876,\n  \"morris\": 22560,\n  \"morris</w>\": 9090,\n  \"morrison\": 40961,\n  \"morrison</w>\": 14094,\n  \"morrisons</w>\": 40965,\n  \"morrissey</w>\": 30040,\n  \"morro</w>\": 48363,\n  \"morrow</w>\": 21611,\n  \"mors</w>\": 13064,\n  \"morse</w>\": 25282,\n  \"mort\": 24257,\n  \"mort</w>\": 30583,\n  \"mortal\": 31883,\n  \"mortal</w>\": 14680,\n  \"mortality</w>\": 20347,\n  \"mortar</w>\": 27258,\n  \"mortg\": 12069,\n  \"mortgage</w>\": 13988,\n  \"mortgages</w>\": 45391,\n  \"mortimer</w>\": 47836,\n  \"morton</w>\": 20698,\n  \"morty</w>\": 37391,\n  \"mory</w>\": 22633,\n  \"mos\": 28658,\n  \"mos</w>\": 9593,\n  \"mosa\": 14164,\n  \"mosa</w>\": 23809,\n  \"mosaic</w>\": 17506,\n  \"mosch\": 47003,\n  \"mosco\": 9840,\n  \"moscow</w>\": 10371,\n  \"moseley</w>\": 47080,\n  \"moses</w>\": 18451,\n  \"mosley</w>\": 46228,\n  \"mosqu\": 15215,\n  \"mosque</w>\": 12694,\n  \"mosques</w>\": 41214,\n  \"mosquit\": 39699,\n  \"mosquito</w>\": 25083,\n  \"mosquitoes</w>\": 41870,\n  \"moss\": 25107,\n  \"moss</w>\": 12815,\n  \"most\": 7034,\n  \"most</w>\": 1096,\n  \"mostly</w>\": 8829,\n  \"mosul</w>\": 29165,\n  \"mot\": 16352,\n  \"mot</w>\": 15452,\n  \"mota</w>\": 42499,\n  \"motd</w>\": 46232,\n  \"motel</w>\": 26191,\n  \"moth\": 33208,\n  \"moth</w>\": 11736,\n  \"mother\": 7455,\n  \"mother</w>\": 3050,\n  \"motherhood</w>\": 32274,\n  \"motherland</w>\": 46774,\n  \"mothers</w>\": 10546,\n  \"mothersday</w>\": 15583,\n  \"motherwell</w>\": 48104,\n  \"moths</w>\": 29086,\n  \"moti\": 38210,\n  \"motif</w>\": 35373,\n  \"motion\": 32139,\n  \"motion</w>\": 7860,\n  \"motiv\": 3183,\n  \"motivate</w>\": 26771,\n  \"motivated</w>\": 16521,\n  \"motivates</w>\": 44684,\n  \"motivating</w>\": 37720,\n  \"motivation\": 26117,\n  \"motivation</w>\": 4193,\n  \"motivational\": 32832,\n  \"motivational</w>\": 20472,\n  \"motivationmonday</w>\": 28703,\n  \"motive</w>\": 36669,\n  \"motley</w>\": 42553,\n  \"motm</w>\": 41192,\n  \"moto\": 10646,\n  \"moto</w>\": 11431,\n  \"motocross</w>\": 34562,\n  \"motogp</w>\": 16615,\n  \"motor\": 3975,\n  \"motor</w>\": 7659,\n  \"motorbike</w>\": 33341,\n  \"motorcycle</w>\": 10297,\n  \"motorcycles</w>\": 24869,\n  \"motoring</w>\": 44491,\n  \"motorists</w>\": 32766,\n  \"motorola</w>\": 33738,\n  \"motors</w>\": 14989,\n  \"motorsport</w>\": 18371,\n  \"motorsports</w>\": 24264,\n  \"motorway</w>\": 31808,\n  \"motown</w>\": 32685,\n  \"mott\": 44570,\n  \"mott</w>\": 21708,\n  \"motto</w>\": 23338,\n  \"mou\": 2809,\n  \"mou</w>\": 25289,\n  \"moud</w>\": 37698,\n  \"moul\": 25725,\n  \"mould</w>\": 36743,\n  \"moulin</w>\": 47656,\n  \"moun\": 2023,\n  \"mound</w>\": 21414,\n  \"mount\": 20553,\n  \"mount</w>\": 5532,\n  \"mountain\": 14547,\n  \"mountain</w>\": 3965,\n  \"mountaine\": 24841,\n  \"mountaineer</w>\": 49255,\n  \"mountains</w>\": 5873,\n  \"mounted</w>\": 17897,\n  \"mounting</w>\": 29910,\n  \"mounts</w>\": 36767,\n  \"mour\": 9053,\n  \"mour</w>\": 42446,\n  \"moured</w>\": 29555,\n  \"mourinho</w>\": 18536,\n  \"mourn</w>\": 33592,\n  \"mourning</w>\": 24169,\n  \"mourns</w>\": 42811,\n  \"mous\": 24837,\n  \"mous</w>\": 17425,\n  \"mouse\": 33032,\n  \"mouse</w>\": 9301,\n  \"mousse</w>\": 31869,\n  \"moustache</w>\": 32795,\n  \"mouth\": 15152,\n  \"mouth</w>\": 4932,\n  \"mouths</w>\": 38518,\n  \"mov</w>\": 23950,\n  \"move\": 16624,\n  \"move</w>\": 2783,\n  \"moved</w>\": 6997,\n  \"movember</w>\": 23474,\n  \"movement</w>\": 5208,\n  \"movements</w>\": 19665,\n  \"mover</w>\": 37673,\n  \"movers</w>\": 33957,\n  \"moves</w>\": 6880,\n  \"movi\": 1707,\n  \"movic</w>\": 43838,\n  \"movie\": 11247,\n  \"movie</w>\": 2016,\n  \"movies</w>\": 4772,\n  \"moving\": 32160,\n  \"moving</w>\": 3584,\n  \"mow\": 31006,\n  \"mow</w>\": 36329,\n  \"mower</w>\": 30895,\n  \"mowing</w>\": 46424,\n  \"mowx</w>\": 44263,\n  \"moy\": 27276,\n  \"moy</w>\": 34205,\n  \"moyes</w>\": 37119,\n  \"moz\": 14761,\n  \"moz</w>\": 43738,\n  \"mozam\": 26648,\n  \"mozambique</w>\": 28831,\n  \"mozart</w>\": 22132,\n  \"mozz\": 26317,\n  \"mozzarella</w>\": 27845,\n  \"mp\": 1037,\n  \"mp</w>\": 1246,\n  \"mpa</w>\": 30749,\n  \"mpc</w>\": 38560,\n  \"mpd</w>\": 33814,\n  \"mped</w>\": 28134,\n  \"mper</w>\": 22803,\n  \"mpg\": 39830,\n  \"mpg</w>\": 37454,\n  \"mpgvip</w>\": 42149,\n  \"mph</w>\": 5306,\n  \"mpi</w>\": 43263,\n  \"mping</w>\": 27999,\n  \"mple</w>\": 21139,\n  \"mplo\": 47071,\n  \"mpls</w>\": 34298,\n  \"mpo</w>\": 33674,\n  \"mpp</w>\": 39570,\n  \"mps</w>\": 5504,\n  \"mption</w>\": 9717,\n  \"mpton</w>\": 27448,\n  \"mpu\": 47156,\n  \"mpus</w>\": 25864,\n  \"mpy</w>\": 17192,\n  \"mq\": 19103,\n  \"mqm</w>\": 24687,\n  \"mr\": 3139,\n  \"mr</w>\": 1982,\n  \"mra\": 44568,\n  \"mrc</w>\": 25897,\n  \"mri</w>\": 24773,\n  \"mrs\": 25003,\n  \"mrs</w>\": 4255,\n  \"mrt</w>\": 30256,\n  \"mru</w>\": 22370,\n  \"mrw</w>\": 15303,\n  \"ms\": 3525,\n  \"ms</w>\": 988,\n  \"msa</w>\": 36306,\n  \"msc\": 31826,\n  \"msc</w>\": 20529,\n  \"msd\": 25804,\n  \"msd</w>\": 36407,\n  \"msdhoni</w>\": 32850,\n  \"msf</w>\": 36239,\n  \"msg\": 44430,\n  \"msg</w>\": 10928,\n  \"msh\": 41751,\n  \"msi\": 43597,\n  \"msi</w>\": 45278,\n  \"msk\": 38501,\n  \"msl</w>\": 42736,\n  \"msm</w>\": 22210,\n  \"msn\": 18824,\n  \"msn</w>\": 41042,\n  \"msnbc</w>\": 20245,\n  \"mson\": 27773,\n  \"mson</w>\": 12298,\n  \"msp\": 41445,\n  \"msp</w>\": 22318,\n  \"mss\": 42136,\n  \"mss</w>\": 48610,\n  \"mst</w>\": 26335,\n  \"msu\": 26763,\n  \"msu</w>\": 17298,\n  \"mswx</w>\": 42957,\n  \"msy</w>\": 43919,\n  \"mt\": 4252,\n  \"mt</w>\": 3284,\n  \"mta</w>\": 28691,\n  \"mtb\": 48306,\n  \"mtb</w>\": 18747,\n  \"mtc</w>\": 42482,\n  \"mtg\": 49142,\n  \"mtg</w>\": 13648,\n  \"mth</w>\": 48151,\n  \"mtl</w>\": 22135,\n  \"mtn\": 26041,\n  \"mtn</w>\": 18953,\n  \"mtr</w>\": 46650,\n  \"mts</w>\": 38751,\n  \"mtv\": 8099,\n  \"mtv</w>\": 12555,\n  \"mtvbr\": 47258,\n  \"mtvhottest</w>\": 16751,\n  \"mtvstars</w>\": 19948,\n  \"mu\": 670,\n  \"mu</w>\": 6411,\n  \"mua</w>\": 21395,\n  \"muay\": 44910,\n  \"muaythai</w>\": 47763,\n  \"mubarak</w>\": 17957,\n  \"muc</w>\": 49115,\n  \"much\": 14300,\n  \"much</w>\": 1238,\n  \"mucha</w>\": 42191,\n  \"muchas</w>\": 26278,\n  \"mucho</w>\": 19864,\n  \"muck\": 44731,\n  \"muck</w>\": 45330,\n  \"mud\": 17491,\n  \"mud</w>\": 11673,\n  \"mudder</w>\": 49104,\n  \"muddy</w>\": 21524,\n  \"mue\": 44383,\n  \"mue</w>\": 40717,\n  \"mueller\": 46863,\n  \"mueller</w>\": 14719,\n  \"muen\": 48646,\n  \"muer\": 33840,\n  \"muf\": 33852,\n  \"mufc</w>\": 9013,\n  \"muffin</w>\": 22696,\n  \"muffins</w>\": 25922,\n  \"mufti</w>\": 44930,\n  \"mug\": 16339,\n  \"mug</w>\": 9722,\n  \"mugabe</w>\": 36441,\n  \"mughal</w>\": 37508,\n  \"mugs</w>\": 22852,\n  \"mugshot</w>\": 40028,\n  \"muh\": 36335,\n  \"muh</w>\": 46475,\n  \"muham\": 10043,\n  \"muhammad</w>\": 12259,\n  \"muir\": 44650,\n  \"muir</w>\": 24745,\n  \"muj\": 44635,\n  \"muk\": 17327,\n  \"muk</w>\": 32600,\n  \"mukher\": 34575,\n  \"mukherjee</w>\": 37862,\n  \"mul\": 1899,\n  \"mul</w>\": 43193,\n  \"mula</w>\": 40937,\n  \"mulator</w>\": 17463,\n  \"mulberry</w>\": 39221,\n  \"mule</w>\": 28695,\n  \"mull\": 17313,\n  \"mull</w>\": 35310,\n  \"mulled</w>\": 44641,\n  \"mullen</w>\": 30797,\n  \"muller</w>\": 33956,\n  \"mullet</w>\": 35010,\n  \"mulligan</w>\": 44336,\n  \"mullins</w>\": 41265,\n  \"mult\": 34219,\n  \"multi\": 3947,\n  \"multi</w>\": 6400,\n  \"multic\": 21683,\n  \"multicul\": 28004,\n  \"multicultural</w>\": 34667,\n  \"multil\": 27975,\n  \"multimedia</w>\": 27977,\n  \"multin\": 38996,\n  \"multinational</w>\": 46540,\n  \"multip\": 40314,\n  \"multiplayer</w>\": 27460,\n  \"multiple</w>\": 6470,\n  \"multipurpose</w>\": 47665,\n  \"multit\": 27814,\n  \"multitasking</w>\": 48684,\n  \"mulus</w>\": 26180,\n  \"mum\": 15565,\n  \"mum</w>\": 4030,\n  \"mumb\": 5850,\n  \"mumbai\": 24279,\n  \"mumbai</w>\": 6971,\n  \"mumford</w>\": 46184,\n  \"mummy</w>\": 16301,\n  \"mums</w>\": 17868,\n  \"mun\": 2617,\n  \"mun</w>\": 21059,\n  \"muna</w>\": 48424,\n  \"munch\": 23587,\n  \"munch</w>\": 33299,\n  \"munchies</w>\": 44324,\n  \"munchkin</w>\": 41305,\n  \"mund</w>\": 14244,\n  \"mundo</w>\": 20990,\n  \"muni\": 27327,\n  \"muni</w>\": 39795,\n  \"munich</w>\": 13526,\n  \"munici\": 12159,\n  \"municipal\": 43667,\n  \"municipal</w>\": 16600,\n  \"municipality</w>\": 29987,\n  \"munition</w>\": 32668,\n  \"munro</w>\": 36501,\n  \"munster</w>\": 27201,\n  \"mup</w>\": 21966,\n  \"muppet</w>\": 40598,\n  \"muppets</w>\": 40187,\n  \"mups</w>\": 42195,\n  \"mur\": 2144,\n  \"mur</w>\": 18293,\n  \"mura\": 45176,\n  \"mural</w>\": 12315,\n  \"murals</w>\": 31499,\n  \"murder\": 28136,\n  \"murder</w>\": 5787,\n  \"murdered</w>\": 13158,\n  \"murderer</w>\": 26956,\n  \"murderers</w>\": 48472,\n  \"murdering</w>\": 36055,\n  \"murders</w>\": 22409,\n  \"murdoch</w>\": 29037,\n  \"murphy\": 48976,\n  \"murphy</w>\": 8914,\n  \"murray\": 31978,\n  \"murray</w>\": 7513,\n  \"murs</w>\": 38783,\n  \"mus\": 2198,\n  \"mus</w>\": 8103,\n  \"musa</w>\": 30540,\n  \"musc\": 5696,\n  \"muscat</w>\": 33322,\n  \"muscle\": 27323,\n  \"muscle</w>\": 9269,\n  \"muscles</w>\": 16786,\n  \"muscular</w>\": 30606,\n  \"muse\": 2369,\n  \"muse</w>\": 15686,\n  \"museo</w>\": 36457,\n  \"muses</w>\": 48243,\n  \"museu\": 27087,\n  \"museum\": 15602,\n  \"museum</w>\": 2786,\n  \"museums</w>\": 15542,\n  \"museumweek</w>\": 37996,\n  \"mush\": 7635,\n  \"mushroom</w>\": 13011,\n  \"mushrooms</w>\": 14730,\n  \"musi\": 15628,\n  \"music\": 4110,\n  \"music</w>\": 1179,\n  \"musica</w>\": 26668,\n  \"musical\": 36002,\n  \"musical</w>\": 5173,\n  \"musically</w>\": 48893,\n  \"musicals</w>\": 36974,\n  \"musichistory</w>\": 37890,\n  \"musician</w>\": 11179,\n  \"musicians</w>\": 12498,\n  \"musicislife</w>\": 43311,\n  \"musicmonday</w>\": 35887,\n  \"musicvideo</w>\": 26764,\n  \"musik</w>\": 32986,\n  \"musings</w>\": 44961,\n  \"musique</w>\": 42250,\n  \"musk\": 32143,\n  \"musk</w>\": 19063,\n  \"muskete\": 32775,\n  \"musketeers</w>\": 37993,\n  \"musko\": 34987,\n  \"muskoka</w>\": 40832,\n  \"musli\": 4958,\n  \"muslim\": 43795,\n  \"muslim</w>\": 7060,\n  \"muslims</w>\": 10513,\n  \"muss\": 41493,\n  \"mussels</w>\": 33393,\n  \"must\": 6783,\n  \"must</w>\": 2048,\n  \"mustache</w>\": 23451,\n  \"mustaf\": 23596,\n  \"mustafa</w>\": 29000,\n  \"mustang\": 42361,\n  \"mustang</w>\": 13309,\n  \"mustangs</w>\": 22500,\n  \"mustard</w>\": 15794,\n  \"muster</w>\": 47361,\n  \"mustread</w>\": 28978,\n  \"mut\": 12598,\n  \"mut</w>\": 22839,\n  \"mutant</w>\": 28384,\n  \"mutation</w>\": 38626,\n  \"mutations</w>\": 39651,\n  \"mute</w>\": 31252,\n  \"muted</w>\": 48028,\n  \"muth</w>\": 34280,\n  \"mutil\": 39950,\n  \"mutt</w>\": 45924,\n  \"mutu\": 17574,\n  \"mutual</w>\": 15055,\n  \"mutuals</w>\": 31158,\n  \"muy</w>\": 44625,\n  \"mv\": 10580,\n  \"mv</w>\": 8269,\n  \"mvc</w>\": 40549,\n  \"mvp</w>\": 8905,\n  \"mw\": 16725,\n  \"mw</w>\": 11206,\n  \"mwc</w>\": 24289,\n  \"mwf</w>\": 48565,\n  \"mx\": 21947,\n  \"mx</w>\": 9575,\n  \"my\": 1152,\n  \"my</w>\": 607,\n  \"mya</w>\": 31401,\n  \"myal\": 42735,\n  \"myan\": 13761,\n  \"myanmar</w>\": 14764,\n  \"myart</w>\": 38826,\n  \"myco\": 48362,\n  \"mydayin\": 41896,\n  \"mydayinla</w>\": 42801,\n  \"mydubai</w>\": 43475,\n  \"mye\": 27551,\n  \"myel\": 40084,\n  \"myers</w>\": 15993,\n  \"myjaps</w>\": 47939,\n  \"myle\": 43700,\n  \"myles</w>\": 25511,\n  \"mylife</w>\": 30537,\n  \"mylittle\": 37757,\n  \"mylittlepony</w>\": 45107,\n  \"myo\": 16206,\n  \"myr\": 20272,\n  \"myra</w>\": 35694,\n  \"myri\": 34972,\n  \"myrt\": 47785,\n  \"myrtle</w>\": 27768,\n  \"mys</w>\": 11724,\n  \"myself</w>\": 3245,\n  \"mysore</w>\": 44924,\n  \"myspace</w>\": 41382,\n  \"myster\": 4669,\n  \"mysteries</w>\": 20605,\n  \"mysterious</w>\": 12650,\n  \"mystery\": 39828,\n  \"mystery</w>\": 6711,\n  \"mysti\": 28711,\n  \"mystic\": 36264,\n  \"mystic</w>\": 23722,\n  \"mystical</w>\": 34122,\n  \"myth\": 20322,\n  \"myth</w>\": 13878,\n  \"mythical</w>\": 34377,\n  \"mytho\": 43857,\n  \"mythology</w>\": 22496,\n  \"myths</w>\": 18675,\n  \"mz\": 29509,\n  \"mz</w>\": 33400,\n  \"mzan\": 36322,\n  \"mzansi</w>\": 43301,\n  \"mÃ¡\": 36842,\n  \"mÃ©\": 21890,\n  \"mÃ©xico</w>\": 46159,\n  \"mÃ¼\": 28142,\n  \"mÃ¼n\": 41235,\n  \"n\": 77,\n  \"n</w>\": 333,\n  \"na\": 1097,\n  \"na</w>\": 1272,\n  \"naa</w>\": 37738,\n  \"naacp</w>\": 32176,\n  \"nab\": 6951,\n  \"nab</w>\": 19440,\n  \"nabe\": 35111,\n  \"naby</w>\": 24800,\n  \"nac\": 14557,\n  \"nac</w>\": 18950,\n  \"nach\": 12168,\n  \"nach</w>\": 43622,\n  \"nacho</w>\": 35647,\n  \"nachos</w>\": 32847,\n  \"nacht</w>\": 37261,\n  \"nacional</w>\": 38782,\n  \"nad\": 6204,\n  \"nad</w>\": 43928,\n  \"nada</w>\": 31683,\n  \"nadal</w>\": 20814,\n  \"nade\": 24908,\n  \"nadi\": 30512,\n  \"nadia</w>\": 27487,\n  \"nadine</w>\": 23356,\n  \"nadu</w>\": 20936,\n  \"nae</w>\": 19374,\n  \"naf\": 16161,\n  \"naf</w>\": 45956,\n  \"nafta</w>\": 43123,\n  \"nag\": 6694,\n  \"nag</w>\": 23902,\n  \"naga\": 45953,\n  \"naga</w>\": 38997,\n  \"nagar</w>\": 17490,\n  \"nage</w>\": 41219,\n  \"nago\": 38349,\n  \"nagoya</w>\": 43303,\n  \"nagpur</w>\": 43328,\n  \"nah\": 26421,\n  \"nah</w>\": 11129,\n  \"nahi</w>\": 35244,\n  \"nai\": 6230,\n  \"nai</w>\": 10692,\n  \"naia</w>\": 31340,\n  \"naidu</w>\": 42429,\n  \"naija</w>\": 16326,\n  \"naik</w>\": 34424,\n  \"nail\": 19459,\n  \"nail</w>\": 9059,\n  \"nailart</w>\": 43532,\n  \"nailed</w>\": 19035,\n  \"nails</w>\": 8469,\n  \"nair</w>\": 27107,\n  \"naira</w>\": 39450,\n  \"naire</w>\": 48892,\n  \"nairobi</w>\": 17756,\n  \"nais\": 46396,\n  \"naissance</w>\": 44761,\n  \"naive</w>\": 43362,\n  \"naj\": 30985,\n  \"naji\": 32589,\n  \"nak\": 9248,\n  \"nak</w>\": 25550,\n  \"naked\": 46371,\n  \"naked</w>\": 11478,\n  \"naku\": 39864,\n  \"nal\": 14132,\n  \"nal</w>\": 3119,\n  \"nale</w>\": 27198,\n  \"nall</w>\": 32869,\n  \"nally</w>\": 26158,\n  \"nam\": 1410,\n  \"nam</w>\": 12344,\n  \"nama</w>\": 39586,\n  \"naman</w>\": 27635,\n  \"namaste</w>\": 35549,\n  \"name\": 18160,\n  \"name</w>\": 1981,\n  \"named</w>\": 3194,\n  \"nameis\": 40831,\n  \"nament</w>\": 3916,\n  \"naments</w>\": 16540,\n  \"names</w>\": 6130,\n  \"namesake</w>\": 41298,\n  \"nami\": 20393,\n  \"namibia</w>\": 23731,\n  \"naming</w>\": 19367,\n  \"namjoon</w>\": 31986,\n  \"namm</w>\": 35524,\n  \"namo\": 46013,\n  \"namo</w>\": 24854,\n  \"nan\": 4375,\n  \"nan</w>\": 7750,\n  \"nana</w>\": 18761,\n  \"nanaimo</w>\": 40518,\n  \"nancy\": 21511,\n  \"nancy</w>\": 11425,\n  \"nand\": 20435,\n  \"nandez</w>\": 12764,\n  \"nando\": 46044,\n  \"nang\": 48148,\n  \"nani</w>\": 27980,\n  \"nanny</w>\": 31104,\n  \"nano\": 15835,\n  \"nano</w>\": 22006,\n  \"nanop\": 34177,\n  \"nanotechnology</w>\": 42235,\n  \"nanow\": 46734,\n  \"nant</w>\": 22526,\n  \"nantes</w>\": 47533,\n  \"nantucket</w>\": 41573,\n  \"nao</w>\": 39319,\n  \"naom\": 34955,\n  \"naomi</w>\": 20173,\n  \"nap\": 6568,\n  \"nap</w>\": 11012,\n  \"napa</w>\": 20545,\n  \"napier</w>\": 40875,\n  \"napkin</w>\": 38930,\n  \"naples</w>\": 23560,\n  \"napo\": 18715,\n  \"napol\": 20122,\n  \"napoleon</w>\": 24969,\n  \"napoli</w>\": 22445,\n  \"napp\": 11359,\n  \"napping</w>\": 37657,\n  \"naps</w>\": 31317,\n  \"naq\": 46453,\n  \"nar\": 2977,\n  \"nar</w>\": 20145,\n  \"nara</w>\": 33823,\n  \"narcis\": 25229,\n  \"narcissi\": 35442,\n  \"narco\": 38461,\n  \"nard</w>\": 18216,\n  \"nare\": 34853,\n  \"naren\": 8468,\n  \"narendr\": 9807,\n  \"narendra</w>\": 25848,\n  \"narendramodi</w>\": 9853,\n  \"narnia</w>\": 48693,\n  \"narr\": 11845,\n  \"narrated</w>\": 43609,\n  \"narrative</w>\": 15933,\n  \"narratives</w>\": 35117,\n  \"narrator</w>\": 46529,\n  \"narrow\": 24006,\n  \"narrow</w>\": 16652,\n  \"narrowly</w>\": 29747,\n  \"naruto</w>\": 22732,\n  \"nas\": 3090,\n  \"nas</w>\": 15250,\n  \"nasa</w>\": 6841,\n  \"nasal</w>\": 42853,\n  \"nascar\": 25723,\n  \"nascar</w>\": 7868,\n  \"nasdaq</w>\": 26629,\n  \"nash\": 6771,\n  \"nash</w>\": 13620,\n  \"nasheed</w>\": 49176,\n  \"nashgrier</w>\": 33372,\n  \"nashville\": 45356,\n  \"nashville</w>\": 8585,\n  \"nasi</w>\": 47987,\n  \"nasir</w>\": 47509,\n  \"nassau</w>\": 34048,\n  \"nasser</w>\": 43559,\n  \"nasty\": 32930,\n  \"nasty</w>\": 8709,\n  \"nat\": 1276,\n  \"nat</w>\": 11310,\n  \"nata</w>\": 39392,\n  \"natal</w>\": 28516,\n  \"natali\": 20296,\n  \"natalia</w>\": 32978,\n  \"natalie\": 36634,\n  \"natalie</w>\": 13595,\n  \"natash\": 48701,\n  \"natasha</w>\": 23093,\n  \"nate\": 26643,\n  \"nate</w>\": 7587,\n  \"natgeo\": 33009,\n  \"natgeo</w>\": 25046,\n  \"nath\": 22203,\n  \"nath</w>\": 19843,\n  \"nathan\": 13028,\n  \"nathan</w>\": 9711,\n  \"nathanfillion</w>\": 47422,\n  \"nathaniel</w>\": 32667,\n  \"nati\": 1060,\n  \"nati</w>\": 13384,\n  \"natic</w>\": 44944,\n  \"natin</w>\": 44358,\n  \"nation\": 2317,\n  \"nation</w>\": 2670,\n  \"national\": 3126,\n  \"national</w>\": 1362,\n  \"nationalbestfriend\": 42222,\n  \"nationaldogday</w>\": 32227,\n  \"nationalism</w>\": 29867,\n  \"nationalist</w>\": 25058,\n  \"nationality</w>\": 44451,\n  \"nationally</w>\": 15130,\n  \"nationalpark</w>\": 33060,\n  \"nationalparks</w>\": 41204,\n  \"nationals</w>\": 10784,\n  \"nationaltrust</w>\": 34051,\n  \"nations</w>\": 7654,\n  \"nationwide</w>\": 13795,\n  \"native\": 20639,\n  \"native</w>\": 4562,\n  \"natives</w>\": 36060,\n  \"nativity</w>\": 33988,\n  \"natl\": 39225,\n  \"natl</w>\": 34465,\n  \"nato</w>\": 13139,\n  \"nats</w>\": 21106,\n  \"natu\": 2775,\n  \"natur\": 6800,\n  \"natural\": 13198,\n  \"natural</w>\": 3288,\n  \"naturally</w>\": 12995,\n  \"naturals</w>\": 44686,\n  \"nature\": 9382,\n  \"nature</w>\": 2625,\n  \"naturelovers</w>\": 41514,\n  \"naturephotography</w>\": 22533,\n  \"natures</w>\": 15616,\n  \"natureuk</w>\": 46193,\n  \"nau\": 5955,\n  \"nau</w>\": 32878,\n  \"naught</w>\": 41001,\n  \"naughty\": 47255,\n  \"naughty</w>\": 15101,\n  \"nautical</w>\": 31660,\n  \"nav\": 3413,\n  \"nav</w>\": 25308,\n  \"navajo</w>\": 35523,\n  \"naval\": 44725,\n  \"naval</w>\": 13273,\n  \"navar\": 24848,\n  \"navarro</w>\": 37104,\n  \"nave\": 42704,\n  \"naveen</w>\": 43837,\n  \"naver</w>\": 32534,\n  \"navi\": 16159,\n  \"navi</w>\": 44848,\n  \"navig\": 12507,\n  \"navigate</w>\": 24400,\n  \"navigating</w>\": 33134,\n  \"navigation</w>\": 20148,\n  \"navigator</w>\": 38910,\n  \"navis</w>\": 36377,\n  \"navratri</w>\": 45428,\n  \"navy\": 28414,\n  \"navy</w>\": 5598,\n  \"naw\": 16259,\n  \"naw</w>\": 30500,\n  \"nawaz\": 49161,\n  \"nawaz</w>\": 19523,\n  \"nax\": 38299,\n  \"nay\": 11704,\n  \"nay</w>\": 16182,\n  \"naya</w>\": 38917,\n  \"nayanth\": 38157,\n  \"nayanthara</w>\": 45184,\n  \"naz\": 6363,\n  \"naz</w>\": 35534,\n  \"nazi</w>\": 12972,\n  \"nazis</w>\": 21778,\n  \"nb\": 6459,\n  \"nb</w>\": 6813,\n  \"nba\": 22524,\n  \"nba</w>\": 5139,\n  \"nbad\": 43458,\n  \"nbaf\": 30127,\n  \"nbafinals</w>\": 33803,\n  \"nbap\": 41956,\n  \"nbaplayoffs</w>\": 43860,\n  \"nbat\": 46291,\n  \"nbc\": 9352,\n  \"nbc</w>\": 8799,\n  \"nbd</w>\": 24526,\n  \"nbl</w>\": 42652,\n  \"nc\": 5021,\n  \"nc</w>\": 4911,\n  \"nca\": 6921,\n  \"ncaa</w>\": 9418,\n  \"ncbd</w>\": 47221,\n  \"ncc\": 33195,\n  \"ncc</w>\": 36686,\n  \"ncds</w>\": 47573,\n  \"ncfc</w>\": 31274,\n  \"ncis</w>\": 33617,\n  \"ncpol</w>\": 40562,\n  \"ncr</w>\": 38474,\n  \"ncs</w>\": 42689,\n  \"nct\": 27723,\n  \"nct</w>\": 20319,\n  \"ncwx</w>\": 36166,\n  \"nd\": 5625,\n  \"nd</w>\": 1764,\n  \"nda</w>\": 32862,\n  \"ndc</w>\": 47564,\n  \"ndi</w>\": 48229,\n  \"ndp</w>\": 19257,\n  \"nds</w>\": 31347,\n  \"ndtv</w>\": 26261,\n  \"ne\": 557,\n  \"ne</w>\": 1422,\n  \"nea</w>\": 24068,\n  \"neal\": 33652,\n  \"neal</w>\": 16730,\n  \"near\": 11296,\n  \"near</w>\": 2252,\n  \"nearby</w>\": 13314,\n  \"nearest</w>\": 18985,\n  \"nearing</w>\": 26571,\n  \"nearly</w>\": 4816,\n  \"nears</w>\": 37710,\n  \"neat\": 43201,\n  \"neat</w>\": 15465,\n  \"neath</w>\": 18315,\n  \"neau</w>\": 31559,\n  \"neb\": 40209,\n  \"nebra\": 13371,\n  \"nebraska</w>\": 14565,\n  \"nebu\": 49295,\n  \"nebula</w>\": 22532,\n  \"nec\": 25109,\n  \"nec</w>\": 22992,\n  \"necess\": 6961,\n  \"necessarily</w>\": 25853,\n  \"necessary</w>\": 8955,\n  \"necessities</w>\": 43483,\n  \"necessity</w>\": 33163,\n  \"neck\": 6066,\n  \"neck</w>\": 6906,\n  \"necklace</w>\": 7385,\n  \"necklaces</w>\": 32276,\n  \"necks</w>\": 29701,\n  \"nectar</w>\": 33683,\n  \"ned\": 16030,\n  \"ned</w>\": 1369,\n  \"nederland</w>\": 49058,\n  \"nee\": 20494,\n  \"nee</w>\": 10601,\n  \"need\": 3229,\n  \"need</w>\": 1262,\n  \"needed</w>\": 4049,\n  \"needing</w>\": 22894,\n  \"needle\": 44490,\n  \"needle</w>\": 19886,\n  \"needles</w>\": 27250,\n  \"needless</w>\": 39984,\n  \"needs</w>\": 2536,\n  \"needy</w>\": 30150,\n  \"neel\": 33092,\n  \"neel</w>\": 46043,\n  \"neer\": 34245,\n  \"nees</w>\": 47248,\n  \"neet</w>\": 46362,\n  \"neg\": 5513,\n  \"negan</w>\": 42623,\n  \"negative</w>\": 8869,\n  \"negatively</w>\": 40254,\n  \"negativity</w>\": 34658,\n  \"neglec\": 18827,\n  \"neglect</w>\": 33680,\n  \"neglected</w>\": 31893,\n  \"negli\": 32594,\n  \"negligence</w>\": 45658,\n  \"negoti\": 10216,\n  \"negotiate</w>\": 32969,\n  \"negotiating</w>\": 35510,\n  \"negotiation</w>\": 36504,\n  \"negotiations</w>\": 20433,\n  \"negr\": 42190,\n  \"negro</w>\": 26554,\n  \"neh\": 40416,\n  \"neh</w>\": 41697,\n  \"neha</w>\": 44463,\n  \"nehru</w>\": 30316,\n  \"nei\": 9366,\n  \"neigh\": 4061,\n  \"neighb\": 6534,\n  \"neighbor\": 7759,\n  \"neighbor</w>\": 14485,\n  \"neighborhood</w>\": 9471,\n  \"neighborhoods</w>\": 26713,\n  \"neighboring</w>\": 44754,\n  \"neighbors</w>\": 13037,\n  \"neighbour\": 15858,\n  \"neighbour</w>\": 23719,\n  \"neighbourhood</w>\": 20312,\n  \"neighbours</w>\": 17594,\n  \"neil\": 13591,\n  \"neil</w>\": 8030,\n  \"neilhimself</w>\": 45682,\n  \"neill</w>\": 19324,\n  \"neither</w>\": 14398,\n  \"nek</w>\": 47727,\n  \"neko</w>\": 47066,\n  \"nel\": 5476,\n  \"nel</w>\": 2693,\n  \"nell\": 27081,\n  \"nell</w>\": 8117,\n  \"nelly</w>\": 21166,\n  \"nels</w>\": 19296,\n  \"nelson\": 24774,\n  \"nelson</w>\": 8586,\n  \"nem</w>\": 45153,\n  \"neman</w>\": 48553,\n  \"neme\": 30993,\n  \"nemesis</w>\": 37811,\n  \"nemo</w>\": 30441,\n  \"nen\": 17817,\n  \"nen</w>\": 15451,\n  \"nene</w>\": 44167,\n  \"neo\": 14562,\n  \"neo</w>\": 11017,\n  \"neon\": 21043,\n  \"neon</w>\": 13919,\n  \"neonatal</w>\": 46464,\n  \"neop\": 49069,\n  \"nep\": 20739,\n  \"nep</w>\": 41960,\n  \"nepal\": 25597,\n  \"nepal</w>\": 10066,\n  \"nepali</w>\": 47579,\n  \"neph\": 27926,\n  \"nephe\": 41810,\n  \"nephew</w>\": 11689,\n  \"nephews</w>\": 43747,\n  \"nephro\": 43054,\n  \"neptune</w>\": 30566,\n  \"ner\": 2064,\n  \"ner</w>\": 998,\n  \"nerd\": 24452,\n  \"nerd</w>\": 12273,\n  \"nerds</w>\": 22609,\n  \"nerdy</w>\": 33124,\n  \"nered</w>\": 17583,\n  \"nerf</w>\": 42914,\n  \"nering</w>\": 20226,\n  \"nero</w>\": 29048,\n  \"ners</w>\": 2129,\n  \"nerve</w>\": 18571,\n  \"nerves</w>\": 27813,\n  \"nervous</w>\": 13928,\n  \"nery</w>\": 48597,\n  \"nes\": 5457,\n  \"nes</w>\": 4980,\n  \"nesburg</w>\": 27159,\n  \"nese</w>\": 32220,\n  \"ness\": 7187,\n  \"ness</w>\": 1294,\n  \"nesses</w>\": 20107,\n  \"nessy</w>\": 32939,\n  \"nest\": 20302,\n  \"nest</w>\": 8719,\n  \"nesting</w>\": 28860,\n  \"nestle</w>\": 43967,\n  \"nestled</w>\": 38107,\n  \"nests</w>\": 41133,\n  \"net\": 1851,\n  \"net</w>\": 2315,\n  \"netany\": 23137,\n  \"netanyahu</w>\": 23583,\n  \"netball</w>\": 19761,\n  \"netes</w>\": 44335,\n  \"netfli\": 6304,\n  \"netflix\": 35325,\n  \"netflix</w>\": 6600,\n  \"nether\": 9946,\n  \"netherlands</w>\": 11060,\n  \"neti\": 43980,\n  \"netneutrality</w>\": 47794,\n  \"nets</w>\": 8582,\n  \"nett\": 23403,\n  \"nett</w>\": 6975,\n  \"nette</w>\": 13271,\n  \"network\": 23285,\n  \"network</w>\": 3304,\n  \"networking</w>\": 9818,\n  \"networks</w>\": 10004,\n  \"neu\": 3855,\n  \"neu</w>\": 43342,\n  \"neue</w>\": 45764,\n  \"neur\": 19001,\n  \"neur</w>\": 31976,\n  \"neural</w>\": 26388,\n  \"neuro\": 7401,\n  \"neuro</w>\": 36000,\n  \"neurological</w>\": 41718,\n  \"neurology</w>\": 43197,\n  \"neurons</w>\": 40442,\n  \"neuroscience</w>\": 23381,\n  \"neutr\": 17207,\n  \"neutral</w>\": 17011,\n  \"neutrality</w>\": 26511,\n  \"neutron</w>\": 44056,\n  \"nev\": 10236,\n  \"nev</w>\": 43645,\n  \"neva</w>\": 43304,\n  \"nevada</w>\": 13499,\n  \"neve\": 44099,\n  \"neve</w>\": 44023,\n  \"never\": 6746,\n  \"never</w>\": 1426,\n  \"neveragain</w>\": 45053,\n  \"neverforget</w>\": 19242,\n  \"nevergiveup</w>\": 42497,\n  \"neverland</w>\": 41483,\n  \"nevertheless</w>\": 48355,\n  \"nevertrump</w>\": 47494,\n  \"neville</w>\": 19269,\n  \"nevis</w>\": 43670,\n  \"new\": 1218,\n  \"new</w>\": 686,\n  \"newark</w>\": 20240,\n  \"newbie</w>\": 45427,\n  \"newborn</w>\": 18320,\n  \"newbury</w>\": 34169,\n  \"newcastle\": 41955,\n  \"newcastle</w>\": 9302,\n  \"newcomer</w>\": 30648,\n  \"newcomers</w>\": 44037,\n  \"newe\": 40068,\n  \"newell</w>\": 41436,\n  \"newer</w>\": 33099,\n  \"newest</w>\": 4990,\n  \"newfound\": 25250,\n  \"newfoundland</w>\": 28079,\n  \"newh\": 18546,\n  \"newin\": 31911,\n  \"newjersey</w>\": 32621,\n  \"newly\": 42186,\n  \"newly</w>\": 7056,\n  \"newman</w>\": 15815,\n  \"newmarket</w>\": 38617,\n  \"newmexico</w>\": 35238,\n  \"newmusic\": 32510,\n  \"newmusic</w>\": 17201,\n  \"newor\": 25969,\n  \"neworleans</w>\": 31205,\n  \"newport\": 42580,\n  \"newport</w>\": 14846,\n  \"newprofile\": 14633,\n  \"newprofilepic</w>\": 14754,\n  \"newrelease</w>\": 34793,\n  \"news\": 6216,\n  \"news</w>\": 1120,\n  \"newsat</w>\": 43979,\n  \"newsc\": 28656,\n  \"newscast</w>\": 45031,\n  \"newsle\": 10727,\n  \"newsletter</w>\": 11069,\n  \"newsnow</w>\": 48650,\n  \"newsp\": 7109,\n  \"newspaper</w>\": 8786,\n  \"newspapers</w>\": 22423,\n  \"newsroom</w>\": 23200,\n  \"newt</w>\": 37224,\n  \"newton\": 33122,\n  \"newton</w>\": 12606,\n  \"newtown</w>\": 31747,\n  \"newyear\": 22161,\n  \"newyear</w>\": 12999,\n  \"newyearseve</w>\": 37587,\n  \"newyork\": 18140,\n  \"newyork</w>\": 10454,\n  \"newyorkcity</w>\": 30460,\n  \"newyorker</w>\": 39732,\n  \"newzealand</w>\": 21117,\n  \"nex\": 6897,\n  \"nex</w>\": 39720,\n  \"next\": 12434,\n  \"next</w>\": 1131,\n  \"nextgen</w>\": 41933,\n  \"nexus</w>\": 19053,\n  \"ney\": 3857,\n  \"ney</w>\": 1438,\n  \"neymar</w>\": 21878,\n  \"neys</w>\": 12616,\n  \"nez</w>\": 27388,\n  \"nf\": 15195,\n  \"nf</w>\": 25643,\n  \"nfamily</w>\": 20098,\n  \"nfc</w>\": 23695,\n  \"nffc</w>\": 27893,\n  \"nfl\": 11219,\n  \"nfl</w>\": 4691,\n  \"nfldraft</w>\": 25002,\n  \"ng\": 10352,\n  \"ng</w>\": 5215,\n  \"nga</w>\": 35477,\n  \"ngc</w>\": 29046,\n  \"ngo\": 38740,\n  \"ngo</w>\": 24821,\n  \"ngos</w>\": 34627,\n  \"nguyen</w>\": 29947,\n  \"nh\": 3760,\n  \"nh</w>\": 10803,\n  \"nhc</w>\": 44817,\n  \"nhl\": 12290,\n  \"nhl</w>\": 8167,\n  \"nhlbruins</w>\": 39081,\n  \"nhljets</w>\": 49357,\n  \"nhm</w>\": 39483,\n  \"nhpolitics</w>\": 36125,\n  \"nhq</w>\": 42368,\n  \"nhra</w>\": 30052,\n  \"nhs\": 23282,\n  \"nhs</w>\": 7695,\n  \"ni\": 697,\n  \"ni</w>\": 3256,\n  \"nia</w>\": 3098,\n  \"niag\": 18071,\n  \"niagar\": 39298,\n  \"niagara</w>\": 18965,\n  \"niall\": 41354,\n  \"niall</w>\": 8327,\n  \"niallo\": 22855,\n  \"niallofficial</w>\": 23084,\n  \"niam\": 39347,\n  \"nian</w>\": 46003,\n  \"nib</w>\": 31049,\n  \"nic\": 2109,\n  \"nic</w>\": 6651,\n  \"nica</w>\": 29040,\n  \"nicar\": 25119,\n  \"nicaragua</w>\": 28423,\n  \"nice\": 28386,\n  \"nice</w>\": 1805,\n  \"nicely</w>\": 12303,\n  \"nicer</w>\": 29488,\n  \"nicest</w>\": 22967,\n  \"niche</w>\": 25279,\n  \"nichol\": 7668,\n  \"nicholas\": 39814,\n  \"nicholas</w>\": 13148,\n  \"nicholls</w>\": 38846,\n  \"nichols</w>\": 22730,\n  \"nicholson</w>\": 28745,\n  \"nick\": 4209,\n  \"nick</w>\": 4253,\n  \"nickel</w>\": 22034,\n  \"nickelo\": 28668,\n  \"nickelodeon</w>\": 33279,\n  \"nicki</w>\": 17738,\n  \"nickimin\": 27390,\n  \"nickiminaj</w>\": 27593,\n  \"nickjonas</w>\": 43862,\n  \"nickname</w>\": 24731,\n  \"nicknamed</w>\": 45190,\n  \"nicks</w>\": 15049,\n  \"nicky\": 28893,\n  \"nicky</w>\": 22091,\n  \"nico\": 20850,\n  \"nico</w>\": 17779,\n  \"nicol\": 9919,\n  \"nicol</w>\": 48274,\n  \"nicola</w>\": 21791,\n  \"nicolas\": 43813,\n  \"nicolas</w>\": 18918,\n  \"nicole\": 21246,\n  \"nicole</w>\": 10000,\n  \"nicot\": 45099,\n  \"nicotine</w>\": 46697,\n  \"nie\": 9524,\n  \"nie</w>\": 3501,\n  \"niece</w>\": 12795,\n  \"nieces</w>\": 44877,\n  \"niel\": 19109,\n  \"niel</w>\": 26837,\n  \"niels</w>\": 37154,\n  \"nielsen</w>\": 28372,\n  \"nier</w>\": 13014,\n  \"nies</w>\": 10586,\n  \"niest</w>\": 15007,\n  \"nieu\": 29781,\n  \"nific\": 4748,\n  \"nifty</w>\": 25604,\n  \"nig\": 27933,\n  \"nig</w>\": 28099,\n  \"nigan</w>\": 48516,\n  \"nigel\": 33919,\n  \"nigel</w>\": 15153,\n  \"niger\": 4524,\n  \"niger</w>\": 29920,\n  \"nigeri\": 40913,\n  \"nigeria</w>\": 6106,\n  \"nigerian</w>\": 12167,\n  \"nigerians</w>\": 25358,\n  \"nigh\": 13525,\n  \"nigh</w>\": 48157,\n  \"night\": 3870,\n  \"night</w>\": 930,\n  \"nightclub</w>\": 20418,\n  \"nighter</w>\": 41349,\n  \"nighting\": 36211,\n  \"nightingale</w>\": 40696,\n  \"nightlife</w>\": 28823,\n  \"nightly</w>\": 28868,\n  \"nightmare</w>\": 12867,\n  \"nightmares</w>\": 24032,\n  \"nightout</w>\": 44257,\n  \"nights</w>\": 4296,\n  \"nighttime</w>\": 38147,\n  \"nightw\": 39956,\n  \"nih</w>\": 25783,\n  \"nik\": 5126,\n  \"nik</w>\": 13705,\n  \"nike\": 16300,\n  \"nike</w>\": 5783,\n  \"nikeplus</w>\": 43154,\n  \"niki</w>\": 36136,\n  \"nikita</w>\": 37118,\n  \"nikk\": 38596,\n  \"nikki\": 23156,\n  \"nikki</w>\": 16689,\n  \"niko</w>\": 43771,\n  \"nikol\": 27430,\n  \"nikola</w>\": 42146,\n  \"nikon\": 25488,\n  \"nikon</w>\": 13849,\n  \"nikov</w>\": 43960,\n  \"nil\": 16852,\n  \"nil</w>\": 35030,\n  \"nile</w>\": 24252,\n  \"nim\": 30402,\n  \"nim</w>\": 42093,\n  \"nima</w>\": 42586,\n  \"nin\": 5794,\n  \"nin</w>\": 14145,\n  \"nina</w>\": 13891,\n  \"nine\": 16213,\n  \"nine</w>\": 7330,\n  \"ninety</w>\": 48214,\n  \"ning\": 6050,\n  \"ning</w>\": 762,\n  \"ningham</w>\": 23395,\n  \"ningly</w>\": 43537,\n  \"nings</w>\": 4588,\n  \"nington</w>\": 26214,\n  \"ninj\": 23225,\n  \"ninja</w>\": 11969,\n  \"ninjas</w>\": 42796,\n  \"nino</w>\": 25633,\n  \"ninten\": 6184,\n  \"nintendo\": 13969,\n  \"nintendo</w>\": 7886,\n  \"nintendoswitch</w>\": 16404,\n  \"ninth</w>\": 22770,\n  \"nip\": 33889,\n  \"nip</w>\": 22333,\n  \"nipp\": 24634,\n  \"nipple</w>\": 45987,\n  \"nipples</w>\": 44774,\n  \"nippon</w>\": 47960,\n  \"nips</w>\": 49241,\n  \"nir\": 15503,\n  \"nir</w>\": 40057,\n  \"nireland</w>\": 45763,\n  \"niro</w>\": 47373,\n  \"nirvana</w>\": 28300,\n  \"nis\": 5609,\n  \"nis</w>\": 3786,\n  \"nish\": 19834,\n  \"nish</w>\": 13256,\n  \"nished</w>\": 24141,\n  \"nishi\": 32386,\n  \"nishings</w>\": 49247,\n  \"nison</w>\": 45700,\n  \"niss</w>\": 39043,\n  \"nissan\": 37635,\n  \"nissan</w>\": 11082,\n  \"nist</w>\": 17782,\n  \"nister</w>\": 36640,\n  \"nit\": 4087,\n  \"nit</w>\": 19011,\n  \"nite</w>\": 8427,\n  \"niti\": 43964,\n  \"niti</w>\": 45355,\n  \"nitin</w>\": 37529,\n  \"nitro</w>\": 30726,\n  \"nitrogen</w>\": 30706,\n  \"niture</w>\": 7840,\n  \"nity</w>\": 12707,\n  \"niu</w>\": 48187,\n  \"niv</w>\": 47300,\n  \"niversary</w>\": 29643,\n  \"nix\": 48552,\n  \"nix</w>\": 32278,\n  \"nixon</w>\": 20671,\n  \"nj\": 8343,\n  \"nj</w>\": 6672,\n  \"njcaa</w>\": 48992,\n  \"njpw</w>\": 38992,\n  \"nk\": 22708,\n  \"nk</w>\": 17456,\n  \"nko\": 36353,\n  \"nl\": 12057,\n  \"nl</w>\": 7655,\n  \"nli</w>\": 37502,\n  \"nlp</w>\": 35680,\n  \"nlwx</w>\": 49260,\n  \"nm\": 15956,\n  \"nm</w>\": 11370,\n  \"nmd</w>\": 43331,\n  \"nme</w>\": 40454,\n  \"nmwx</w>\": 47967,\n  \"nn\": 8947,\n  \"nn</w>\": 12925,\n  \"nnn</w>\": 26277,\n  \"nnnn</w>\": 41420,\n  \"no\": 578,\n  \"no</w>\": 871,\n  \"noaa</w>\": 27557,\n  \"noah\": 28806,\n  \"noah</w>\": 11519,\n  \"nobel\": 33742,\n  \"nobel</w>\": 15605,\n  \"nobelprize</w>\": 46074,\n  \"noble\": 29430,\n  \"noble</w>\": 12051,\n  \"nobody</w>\": 7009,\n  \"noc\": 16988,\n  \"noc</w>\": 44420,\n  \"nocchi</w>\": 46359,\n  \"noch</w>\": 38672,\n  \"noche</w>\": 29689,\n  \"noches</w>\": 44166,\n  \"nock</w>\": 16993,\n  \"noctur\": 26291,\n  \"nocturnal</w>\": 41738,\n  \"nod</w>\": 18648,\n  \"nodapl</w>\": 39079,\n  \"node\": 31434,\n  \"node</w>\": 24871,\n  \"nodejs</w>\": 39262,\n  \"nodes</w>\": 40534,\n  \"noel\": 38406,\n  \"noel</w>\": 17496,\n  \"nof\": 29505,\n  \"noff</w>\": 46979,\n  \"nofilter</w>\": 16418,\n  \"nog</w>\": 31157,\n  \"noh</w>\": 40775,\n  \"noi\": 43115,\n  \"noi</w>\": 39889,\n  \"noida</w>\": 33404,\n  \"noir\": 39291,\n  \"noir</w>\": 12953,\n  \"nois\": 22057,\n  \"noise\": 41018,\n  \"noise</w>\": 9307,\n  \"noises</w>\": 31575,\n  \"noisse\": 45686,\n  \"noisy</w>\": 33495,\n  \"nokia</w>\": 17731,\n  \"nol\": 8055,\n  \"nola</w>\": 13289,\n  \"nolan</w>\": 17323,\n  \"nold</w>\": 40322,\n  \"nole</w>\": 34654,\n  \"noles</w>\": 40569,\n  \"nollywood</w>\": 43145,\n  \"nology</w>\": 42221,\n  \"nom\": 2981,\n  \"nom</w>\": 12799,\n  \"nomad</w>\": 27849,\n  \"noman\": 45592,\n  \"nomin\": 5643,\n  \"nominate</w>\": 17122,\n  \"nominated</w>\": 8710,\n  \"nominating</w>\": 45747,\n  \"nomination</w>\": 14136,\n  \"nominations</w>\": 17124,\n  \"nominee</w>\": 14122,\n  \"nominees</w>\": 17873,\n  \"nomnom</w>\": 26962,\n  \"nomore\": 35126,\n  \"noms</w>\": 35706,\n  \"non\": 4282,\n  \"non</w>\": 3353,\n  \"none\": 29644,\n  \"none</w>\": 8906,\n  \"nonetheless</w>\": 39675,\n  \"nonfiction</w>\": 31654,\n  \"nonprofit</w>\": 19315,\n  \"nonprofits</w>\": 37935,\n  \"nonsense</w>\": 19136,\n  \"nonstop</w>\": 30300,\n  \"nont</w>\": 25207,\n  \"noo\": 6759,\n  \"noo</w>\": 46672,\n  \"noodle</w>\": 19521,\n  \"noodles</w>\": 15782,\n  \"nook</w>\": 30088,\n  \"noon\": 37693,\n  \"noon</w>\": 2347,\n  \"noor\": 46978,\n  \"noor</w>\": 31323,\n  \"nope</w>\": 15625,\n  \"nor\": 1062,\n  \"nor</w>\": 6190,\n  \"nora</w>\": 25890,\n  \"norcal</w>\": 41970,\n  \"nord\": 19261,\n  \"nord</w>\": 36067,\n  \"nordic\": 36439,\n  \"nordic</w>\": 20734,\n  \"nordstrom</w>\": 38562,\n  \"norfolk\": 30232,\n  \"norfolk</w>\": 12202,\n  \"norm\": 10990,\n  \"norm</w>\": 22457,\n  \"norma</w>\": 35757,\n  \"normal\": 28748,\n  \"normal</w>\": 5967,\n  \"normali\": 45157,\n  \"normally</w>\": 15870,\n  \"norman\": 22027,\n  \"norman</w>\": 11338,\n  \"normandy</w>\": 23840,\n  \"normani</w>\": 44596,\n  \"norms</w>\": 33011,\n  \"norris</w>\": 21814,\n  \"norse</w>\": 36559,\n  \"norte</w>\": 35638,\n  \"north\": 3468,\n  \"north</w>\": 2188,\n  \"northampton\": 49246,\n  \"northampton</w>\": 26175,\n  \"northan\": 37081,\n  \"northbound</w>\": 24228,\n  \"northcarolina</w>\": 43386,\n  \"northe\": 24675,\n  \"northeast\": 42673,\n  \"northeast</w>\": 13009,\n  \"northeastern</w>\": 28297,\n  \"northeasthour</w>\": 42869,\n  \"norther\": 26908,\n  \"northern\": 17210,\n  \"northern</w>\": 5049,\n  \"northernlights</w>\": 48940,\n  \"northkorea</w>\": 38495,\n  \"northside</w>\": 45957,\n  \"northumber\": 22295,\n  \"northumberland</w>\": 22922,\n  \"northwales</w>\": 49371,\n  \"northwest</w>\": 12894,\n  \"northwestern</w>\": 23685,\n  \"norton</w>\": 18032,\n  \"norway</w>\": 8780,\n  \"norwe\": 14414,\n  \"norwegian</w>\": 15971,\n  \"norwich\": 37629,\n  \"norwich</w>\": 15812,\n  \"norwood</w>\": 37889,\n  \"nos</w>\": 13420,\n  \"nose\": 24192,\n  \"nose</w>\": 8231,\n  \"noses</w>\": 48163,\n  \"nostal\": 12076,\n  \"nostalgia</w>\": 16622,\n  \"nostalgic</w>\": 24468,\n  \"not\": 2534,\n  \"not</w>\": 783,\n  \"notable</w>\": 22023,\n  \"notch</w>\": 19476,\n  \"notdead</w>\": 42059,\n  \"note\": 10910,\n  \"note</w>\": 3246,\n  \"notebook</w>\": 16365,\n  \"notebooks</w>\": 37623,\n  \"noted</w>\": 22501,\n  \"notes</w>\": 5795,\n  \"nothin</w>\": 24291,\n  \"nothing\": 28412,\n  \"nothing</w>\": 2586,\n  \"noti\": 10686,\n  \"notic\": 6915,\n  \"notice</w>\": 6683,\n  \"noticeable</w>\": 40857,\n  \"noticed</w>\": 9324,\n  \"notices</w>\": 33459,\n  \"noticias</w>\": 47759,\n  \"noticing</w>\": 37571,\n  \"notification</w>\": 22512,\n  \"notifications</w>\": 23169,\n  \"notified</w>\": 39454,\n  \"noting</w>\": 38649,\n  \"notion</w>\": 37856,\n  \"notjust\": 33212,\n  \"notjustlakes</w>\": 45803,\n  \"notmy\": 39301,\n  \"noto\": 29878,\n  \"noton\": 48258,\n  \"notor\": 21711,\n  \"notori\": 44065,\n  \"notorious</w>\": 22489,\n  \"notre\": 24397,\n  \"notre</w>\": 15306,\n  \"notredame</w>\": 34077,\n  \"notsorry</w>\": 34361,\n  \"nott\": 9333,\n  \"nott</w>\": 34989,\n  \"notte</w>\": 47308,\n  \"nottingham</w>\": 12852,\n  \"notts</w>\": 25598,\n  \"nou\": 8751,\n  \"nou</w>\": 30953,\n  \"noun</w>\": 33663,\n  \"nouri\": 23796,\n  \"nourish</w>\": 46025,\n  \"nourished</w>\": 48354,\n  \"nous</w>\": 29485,\n  \"nouveau</w>\": 29948,\n  \"nouvel\": 34215,\n  \"nov\": 2264,\n  \"nov</w>\": 4293,\n  \"nova</w>\": 11236,\n  \"novak</w>\": 26465,\n  \"novasco\": 33785,\n  \"novascotia</w>\": 34744,\n  \"novation</w>\": 39753,\n  \"nove\": 30507,\n  \"novel\": 15044,\n  \"novel</w>\": 6080,\n  \"novelist</w>\": 27314,\n  \"novella</w>\": 42770,\n  \"novels</w>\": 16040,\n  \"novelty</w>\": 37750,\n  \"november</w>\": 3680,\n  \"nover</w>\": 37465,\n  \"novi\": 47957,\n  \"novice</w>\": 33743,\n  \"novo\": 27504,\n  \"novo</w>\": 36581,\n  \"now\": 2040,\n  \"now</w>\": 692,\n  \"nowadays</w>\": 26155,\n  \"nowhere</w>\": 14108,\n  \"nowplaying</w>\": 3708,\n  \"nowwatching</w>\": 30852,\n  \"nox</w>\": 27406,\n  \"noxi\": 39304,\n  \"noxious</w>\": 42833,\n  \"noy</w>\": 32787,\n  \"np\": 18205,\n  \"np</w>\": 6314,\n  \"npa</w>\": 42378,\n  \"npc</w>\": 33966,\n  \"npr\": 39941,\n  \"npr</w>\": 24078,\n  \"nps</w>\": 22025,\n  \"npt</w>\": 47231,\n  \"nr\": 6574,\n  \"nr</w>\": 9713,\n  \"nra</w>\": 17286,\n  \"nrc</w>\": 45786,\n  \"nrf</w>\": 47982,\n  \"nrg</w>\": 48662,\n  \"nrl\": 27142,\n  \"nrl</w>\": 18127,\n  \"ns\": 12405,\n  \"ns</w>\": 1373,\n  \"nsa</w>\": 23004,\n  \"nsc\": 32792,\n  \"nsd</w>\": 36659,\n  \"nsf</w>\": 34180,\n  \"nsfw</w>\": 19847,\n  \"nsi\": 47824,\n  \"nsw\": 21301,\n  \"nsw</w>\": 11693,\n  \"nswpol</w>\": 44434,\n  \"nt\": 10902,\n  \"nt</w>\": 3207,\n  \"ntr</w>\": 30845,\n  \"nts</w>\": 43775,\n  \"ntt</w>\": 22859,\n  \"ntv\": 24807,\n  \"ntv</w>\": 45304,\n  \"nu\": 1156,\n  \"nu</w>\": 9444,\n  \"nucle\": 25693,\n  \"nuclear\": 34136,\n  \"nuclear</w>\": 7279,\n  \"nude</w>\": 16630,\n  \"nudes</w>\": 32122,\n  \"nue\": 22834,\n  \"nuestra</w>\": 45649,\n  \"nuestro</w>\": 38590,\n  \"nuev\": 47861,\n  \"nueva</w>\": 48810,\n  \"nuevo</w>\": 30265,\n  \"nufc</w>\": 15720,\n  \"nuff</w>\": 37324,\n  \"nug\": 13471,\n  \"nugent</w>\": 47457,\n  \"nugget</w>\": 25448,\n  \"nuggets</w>\": 18970,\n  \"nuh</w>\": 45950,\n  \"nuit</w>\": 38815,\n  \"nuk</w>\": 39228,\n  \"nuke</w>\": 39399,\n  \"nul\": 29358,\n  \"null</w>\": 47376,\n  \"num\": 17896,\n  \"num</w>\": 30534,\n  \"numb\": 34639,\n  \"numb</w>\": 39427,\n  \"number\": 44078,\n  \"number</w>\": 2842,\n  \"numbered</w>\": 25975,\n  \"numbers</w>\": 6121,\n  \"numer\": 11442,\n  \"numerous</w>\": 17082,\n  \"numis\": 39100,\n  \"nun\": 12511,\n  \"nun</w>\": 28540,\n  \"nunavut</w>\": 48626,\n  \"nunes</w>\": 40697,\n  \"nuns</w>\": 44061,\n  \"nup\": 46757,\n  \"nur\": 3920,\n  \"nur</w>\": 33493,\n  \"nure\": 42480,\n  \"nurse\": 37547,\n  \"nurse</w>\": 10058,\n  \"nursery</w>\": 15540,\n  \"nurses</w>\": 12938,\n  \"nursing</w>\": 11126,\n  \"nurture</w>\": 38865,\n  \"nurturing</w>\": 45229,\n  \"nus\": 25157,\n  \"nus</w>\": 18239,\n  \"nut\": 10358,\n  \"nut</w>\": 6491,\n  \"nutcracker</w>\": 36733,\n  \"nutella</w>\": 27312,\n  \"nutr\": 6198,\n  \"nutri\": 15470,\n  \"nutrient</w>\": 32900,\n  \"nutrients</w>\": 24668,\n  \"nutriti\": 17978,\n  \"nutrition\": 41546,\n  \"nutrition</w>\": 7989,\n  \"nutritional</w>\": 26457,\n  \"nutritious</w>\": 30387,\n  \"nuts</w>\": 8644,\n  \"nutshell</w>\": 26659,\n  \"nutty</w>\": 39846,\n  \"nv\": 17217,\n  \"nv</w>\": 16985,\n  \"nvi\": 22847,\n  \"nvidia</w>\": 27325,\n  \"nw\": 7826,\n  \"nw</w>\": 7030,\n  \"nwa</w>\": 34237,\n  \"nwo</w>\": 40976,\n  \"nws\": 23333,\n  \"nws</w>\": 30998,\n  \"nwsl</w>\": 48394,\n  \"nwt</w>\": 25029,\n  \"nx\": 18810,\n  \"nx</w>\": 16997,\n  \"nxt\": 35037,\n  \"nxt</w>\": 17804,\n  \"ny\": 1383,\n  \"ny</w>\": 1350,\n  \"nya</w>\": 24165,\n  \"nyc\": 13304,\n  \"nyc</w>\": 2832,\n  \"nycc</w>\": 27187,\n  \"nycfc</w>\": 47497,\n  \"nye\": 40723,\n  \"nye</w>\": 13416,\n  \"nyfw</w>\": 21089,\n  \"nyk</w>\": 46841,\n  \"nylon</w>\": 25915,\n  \"nyo\": 41534,\n  \"nyo</w>\": 44586,\n  \"nypd\": 42293,\n  \"nypd</w>\": 18279,\n  \"nyr</w>\": 32538,\n  \"nyrd</w>\": 47936,\n  \"nys\": 36375,\n  \"nys</w>\": 23423,\n  \"nyse</w>\": 32650,\n  \"nyt\": 46311,\n  \"nyt</w>\": 12816,\n  \"nytimes</w>\": 13772,\n  \"nyu\": 43143,\n  \"nyu</w>\": 31355,\n  \"nz\": 10142,\n  \"nz</w>\": 7082,\n  \"o\": 78,\n  \"o</w>\": 334,\n  \"oa</w>\": 11994,\n  \"oahu</w>\": 37790,\n  \"oak\": 6010,\n  \"oak</w>\": 7221,\n  \"oakland\": 42663,\n  \"oakland</w>\": 12077,\n  \"oakley</w>\": 27810,\n  \"oaks</w>\": 16734,\n  \"oakville</w>\": 38500,\n  \"oasis</w>\": 18185,\n  \"oat\": 20095,\n  \"oat</w>\": 34132,\n  \"oates</w>\": 47094,\n  \"oath</w>\": 20108,\n  \"oatmeal</w>\": 26374,\n  \"oats</w>\": 24150,\n  \"oax\": 43090,\n  \"oaxaca</w>\": 47818,\n  \"ob\": 1411,\n  \"ob</w>\": 14908,\n  \"oba\": 42902,\n  \"oba</w>\": 15147,\n  \"obam\": 13174,\n  \"obama</w>\": 4276,\n  \"obamacare</w>\": 18005,\n  \"obe\": 11897,\n  \"obe</w>\": 29117,\n  \"obedience</w>\": 48921,\n  \"ober\": 15284,\n  \"obese</w>\": 41757,\n  \"obesity</w>\": 19499,\n  \"obey</w>\": 26926,\n  \"obi\": 21454,\n  \"obi</w>\": 18414,\n  \"obile</w>\": 20513,\n  \"obitu\": 39218,\n  \"obituary</w>\": 43580,\n  \"objec\": 7970,\n  \"object</w>\": 14115,\n  \"objective</w>\": 23663,\n  \"objectives</w>\": 30238,\n  \"objects</w>\": 13770,\n  \"obl\": 31452,\n  \"oblast</w>\": 42672,\n  \"obli\": 11416,\n  \"obligation</w>\": 34473,\n  \"obligations</w>\": 38232,\n  \"obligatory</w>\": 35020,\n  \"oblivion</w>\": 45323,\n  \"obo\": 46001,\n  \"obo</w>\": 26618,\n  \"obrien</w>\": 31946,\n  \"obs</w>\": 39162,\n  \"obsc\": 20392,\n  \"obscure</w>\": 33337,\n  \"obse\": 8433,\n  \"observ\": 9050,\n  \"observation</w>\": 20250,\n  \"observations</w>\": 27409,\n  \"observatory</w>\": 21236,\n  \"observe</w>\": 23217,\n  \"observed</w>\": 21267,\n  \"observer</w>\": 22077,\n  \"observers</w>\": 47544,\n  \"observing</w>\": 28359,\n  \"obsessed</w>\": 9744,\n  \"obsession</w>\": 15718,\n  \"obsi\": 47323,\n  \"obsole\": 35561,\n  \"obsolete</w>\": 40628,\n  \"obst\": 29398,\n  \"obstac\": 24075,\n  \"obstacle</w>\": 29751,\n  \"obstacles</w>\": 24480,\n  \"obste\": 49103,\n  \"obstru\": 44876,\n  \"obstruc\": 38762,\n  \"obstruction</w>\": 40240,\n  \"obtain</w>\": 26555,\n  \"obtained</w>\": 29322,\n  \"obvious</w>\": 13959,\n  \"obviously</w>\": 10068,\n  \"oc\": 1566,\n  \"oc</w>\": 6603,\n  \"oca</w>\": 31120,\n  \"ocal</w>\": 38148,\n  \"occ</w>\": 43940,\n  \"occa\": 8530,\n  \"occasion</w>\": 12280,\n  \"occasional</w>\": 33059,\n  \"occasionally</w>\": 32479,\n  \"occasions</w>\": 26154,\n  \"occer</w>\": 20804,\n  \"occi\": 42994,\n  \"occu\": 7863,\n  \"occult</w>\": 42529,\n  \"occup\": 11152,\n  \"occupation</w>\": 18624,\n  \"occupational</w>\": 30644,\n  \"occupied</w>\": 17271,\n  \"occupy\": 22453,\n  \"occupy</w>\": 24210,\n  \"occur\": 11264,\n  \"occur</w>\": 21813,\n  \"occurred</w>\": 19850,\n  \"occurrence</w>\": 40615,\n  \"occurring</w>\": 31335,\n  \"occurs</w>\": 26563,\n  \"ocd</w>\": 35904,\n  \"oce\": 3509,\n  \"ocean\": 12941,\n  \"ocean</w>\": 4918,\n  \"oceans</w>\": 16792,\n  \"och\": 29334,\n  \"och</w>\": 32011,\n  \"oche</w>\": 33045,\n  \"oci\": 9891,\n  \"ocity\": 46039,\n  \"ock\": 33579,\n  \"ock</w>\": 21313,\n  \"ocks</w>\": 22410,\n  \"oclock</w>\": 36274,\n  \"oco</w>\": 32553,\n  \"ocon</w>\": 33090,\n  \"ocr\": 45813,\n  \"ocre</w>\": 40320,\n  \"ocs</w>\": 27297,\n  \"oct</w>\": 4565,\n  \"octa\": 23444,\n  \"octag\": 37768,\n  \"octagon</w>\": 49167,\n  \"octane</w>\": 43040,\n  \"octavia</w>\": 47416,\n  \"octo\": 31032,\n  \"october</w>\": 3481,\n  \"octopus</w>\": 22327,\n  \"ocu\": 22709,\n  \"oculus</w>\": 30082,\n  \"od\": 4886,\n  \"od</w>\": 9719,\n  \"oda</w>\": 24777,\n  \"oday</w>\": 41954,\n  \"odd\": 15525,\n  \"odd</w>\": 11387,\n  \"oddly</w>\": 34213,\n  \"odds</w>\": 11555,\n  \"ode\": 19125,\n  \"ode</w>\": 19639,\n  \"odell</w>\": 41556,\n  \"odessa</w>\": 43574,\n  \"odi\": 12223,\n  \"odi</w>\": 18853,\n  \"odin</w>\": 35175,\n  \"odisha</w>\": 15737,\n  \"odo\": 49188,\n  \"odo</w>\": 40993,\n  \"odor</w>\": 39509,\n  \"odu\": 35095,\n  \"odu</w>\": 39904,\n  \"odyssey</w>\": 19991,\n  \"oe\": 24251,\n  \"oe</w>\": 11667,\n  \"oec\": 24288,\n  \"oecd</w>\": 30816,\n  \"oem</w>\": 29650,\n  \"oes</w>\": 3643,\n  \"of\": 684,\n  \"of</w>\": 539,\n  \"ofa</w>\": 29774,\n  \"ofc</w>\": 19877,\n  \"ofe\": 30000,\n  \"ofer\": 47322,\n  \"off\": 892,\n  \"off</w>\": 1007,\n  \"offe\": 8261,\n  \"offee</w>\": 34059,\n  \"offen\": 7231,\n  \"offence</w>\": 34594,\n  \"offences</w>\": 33972,\n  \"offended</w>\": 30765,\n  \"offender</w>\": 48294,\n  \"offenders</w>\": 35878,\n  \"offense</w>\": 15253,\n  \"offensive</w>\": 11037,\n  \"offer\": 20607,\n  \"offer</w>\": 3271,\n  \"offered</w>\": 9395,\n  \"offering</w>\": 6896,\n  \"offerings</w>\": 24535,\n  \"offers</w>\": 4679,\n  \"offic\": 3276,\n  \"office\": 18033,\n  \"office</w>\": 2171,\n  \"officeof\": 38750,\n  \"officeofrg</w>\": 47100,\n  \"officer</w>\": 4683,\n  \"officers</w>\": 6335,\n  \"offices</w>\": 10933,\n  \"offici\": 1401,\n  \"official\": 5768,\n  \"official</w>\": 1868,\n  \"officially</w>\": 4226,\n  \"officials</w>\": 7658,\n  \"officiel</w>\": 26548,\n  \"offl</w>\": 16851,\n  \"offline</w>\": 22724,\n  \"offro\": 32198,\n  \"offroad</w>\": 37173,\n  \"offs</w>\": 23987,\n  \"offseason</w>\": 25485,\n  \"offset</w>\": 28843,\n  \"offshore</w>\": 15496,\n  \"offside</w>\": 49347,\n  \"offspring</w>\": 38635,\n  \"offthe\": 38189,\n  \"ofi\": 36692,\n  \"ofi</w>\": 49090,\n  \"oficial</w>\": 18061,\n  \"oft</w>\": 16693,\n  \"oftball</w>\": 39768,\n  \"often</w>\": 4864,\n  \"ofthe\": 7592,\n  \"oftheday</w>\": 6988,\n  \"oftheweek</w>\": 20654,\n  \"oftheyear</w>\": 33975,\n  \"og\": 11542,\n  \"og</w>\": 8555,\n  \"oga</w>\": 47312,\n  \"ogden</w>\": 42011,\n  \"ogil\": 39013,\n  \"ography</w>\": 22399,\n  \"ogue</w>\": 24761,\n  \"ogun\": 48970,\n  \"oh\": 5648,\n  \"oh</w>\": 1779,\n  \"ohana</w>\": 48330,\n  \"ohh</w>\": 23076,\n  \"ohhh</w>\": 27697,\n  \"ohhhh</w>\": 40201,\n  \"ohi\": 5207,\n  \"ohio\": 18951,\n  \"ohio</w>\": 6155,\n  \"ohiostate</w>\": 41324,\n  \"ohl\": 45547,\n  \"ohl</w>\": 41095,\n  \"ohmy\": 29758,\n  \"ohn</w>\": 48043,\n  \"ohs</w>\": 39542,\n  \"ohwx</w>\": 47993,\n  \"oi\": 27357,\n  \"oi</w>\": 13934,\n  \"oic</w>\": 45554,\n  \"oid</w>\": 14758,\n  \"oids</w>\": 21847,\n  \"oil\": 11973,\n  \"oil</w>\": 2870,\n  \"oiland\": 32316,\n  \"oilandgas</w>\": 34130,\n  \"oilers</w>\": 21627,\n  \"oilpainting</w>\": 34279,\n  \"oils</w>\": 17886,\n  \"oily</w>\": 47550,\n  \"oir\": 48079,\n  \"oir</w>\": 37113,\n  \"ois</w>\": 23262,\n  \"oit\": 18453,\n  \"oitnb</w>\": 34865,\n  \"oj\": 30986,\n  \"oj</w>\": 34553,\n  \"ok\": 1944,\n  \"ok</w>\": 2481,\n  \"oka\": 42258,\n  \"oka</w>\": 19092,\n  \"okan\": 41263,\n  \"okanagan</w>\": 43233,\n  \"okay</w>\": 4917,\n  \"okc\": 42418,\n  \"okc</w>\": 18357,\n  \"oke\": 26636,\n  \"oke</w>\": 23598,\n  \"oki</w>\": 20390,\n  \"okin\": 30687,\n  \"okinawa</w>\": 35877,\n  \"okla\": 9431,\n  \"oklahoma</w>\": 10170,\n  \"oko\": 26892,\n  \"oko</w>\": 26095,\n  \"okstate</w>\": 36356,\n  \"oktoberfest</w>\": 32026,\n  \"oku\": 45010,\n  \"oku</w>\": 43829,\n  \"okwx</w>\": 27336,\n  \"ol\": 562,\n  \"ol</w>\": 2985,\n  \"ola\": 20499,\n  \"ola</w>\": 3373,\n  \"olaf</w>\": 39709,\n  \"olan\": 48489,\n  \"olan</w>\": 24227,\n  \"oland</w>\": 26452,\n  \"olas</w>\": 40800,\n  \"old\": 4931,\n  \"old</w>\": 896,\n  \"olde</w>\": 37731,\n  \"older</w>\": 7700,\n  \"oldest</w>\": 9285,\n  \"oldham</w>\": 29929,\n  \"oldie</w>\": 35280,\n  \"oldies</w>\": 36278,\n  \"oldman</w>\": 48614,\n  \"olds</w>\": 8580,\n  \"oldschool\": 44384,\n  \"oldschool</w>\": 25133,\n  \"oldsmobile</w>\": 45396,\n  \"ole\": 9089,\n  \"ole</w>\": 1947,\n  \"oled</w>\": 46768,\n  \"oler\": 24069,\n  \"oles</w>\": 16962,\n  \"olf</w>\": 16346,\n  \"olga</w>\": 34779,\n  \"oli\": 3811,\n  \"oli</w>\": 8810,\n  \"olic</w>\": 31341,\n  \"oligar\": 46185,\n  \"olim\": 47769,\n  \"olin\": 37823,\n  \"olin</w>\": 18283,\n  \"olina</w>\": 34711,\n  \"oline</w>\": 17441,\n  \"oling</w>\": 38033,\n  \"olini</w>\": 36040,\n  \"olis</w>\": 49397,\n  \"olithic</w>\": 35574,\n  \"olive\": 22486,\n  \"olive</w>\": 9898,\n  \"oliver\": 22882,\n  \"oliver</w>\": 9261,\n  \"olives</w>\": 27149,\n  \"olivi\": 20773,\n  \"olivia</w>\": 11697,\n  \"olivier</w>\": 23891,\n  \"oll\": 32270,\n  \"oll</w>\": 15510,\n  \"olla</w>\": 31908,\n  \"ollie</w>\": 24434,\n  \"olls</w>\": 42697,\n  \"olly</w>\": 23998,\n  \"olo\": 14628,\n  \"olo</w>\": 7606,\n  \"ological</w>\": 12345,\n  \"ologist</w>\": 23442,\n  \"ologists</w>\": 30912,\n  \"ology</w>\": 4627,\n  \"olor</w>\": 29245,\n  \"olph</w>\": 25077,\n  \"ols</w>\": 2236,\n  \"olsen</w>\": 26307,\n  \"olson</w>\": 28046,\n  \"olt</w>\": 46252,\n  \"olu\": 16502,\n  \"olu</w>\": 46302,\n  \"olulu</w>\": 27645,\n  \"oly\": 20323,\n  \"oly</w>\": 24823,\n  \"olym\": 3594,\n  \"olympi\": 13597,\n  \"olympia</w>\": 23965,\n  \"olympiad</w>\": 47694,\n  \"olympian</w>\": 25420,\n  \"olympians</w>\": 44583,\n  \"olympic\": 26099,\n  \"olympic</w>\": 6388,\n  \"olympics</w>\": 7629,\n  \"olympus</w>\": 30960,\n  \"om\": 547,\n  \"om</w>\": 3932,\n  \"oma\": 44603,\n  \"oma</w>\": 5358,\n  \"omaha</w>\": 16509,\n  \"oman\": 22088,\n  \"oman</w>\": 10871,\n  \"omar\": 19488,\n  \"omar</w>\": 13367,\n  \"omars</w>\": 37099,\n  \"omas</w>\": 36023,\n  \"omat\": 40788,\n  \"omb</w>\": 34447,\n  \"ombe</w>\": 35967,\n  \"omd</w>\": 49346,\n  \"ome\": 3693,\n  \"ome</w>\": 5832,\n  \"omed</w>\": 16835,\n  \"omega</w>\": 13465,\n  \"omelette</w>\": 38789,\n  \"omen\": 9969,\n  \"omen</w>\": 25469,\n  \"oment</w>\": 43683,\n  \"omeo</w>\": 39844,\n  \"omer\": 24087,\n  \"omer</w>\": 17902,\n  \"omes</w>\": 25736,\n  \"ometer</w>\": 20060,\n  \"ometric</w>\": 38702,\n  \"omez</w>\": 12541,\n  \"omf</w>\": 47496,\n  \"omfg</w>\": 12523,\n  \"omg\": 35233,\n  \"omg</w>\": 3186,\n  \"omi\": 24097,\n  \"omi</w>\": 10341,\n  \"omic\": 40536,\n  \"omic</w>\": 12793,\n  \"omics</w>\": 15138,\n  \"omile</w>\": 46915,\n  \"omin\": 16457,\n  \"omination</w>\": 42571,\n  \"oming</w>\": 10796,\n  \"ominous</w>\": 40914,\n  \"omni\": 18793,\n  \"omni</w>\": 39489,\n  \"omnibus</w>\": 44760,\n  \"omnic\": 48383,\n  \"omo\": 14478,\n  \"omo</w>\": 11066,\n  \"omon\": 48758,\n  \"omor\": 29431,\n  \"oms</w>\": 3770,\n  \"omusic</w>\": 38965,\n  \"omy\": 40805,\n  \"omy</w>\": 6884,\n  \"on\": 521,\n  \"on</w>\": 525,\n  \"ona</w>\": 2687,\n  \"onair</w>\": 29511,\n  \"onal</w>\": 918,\n  \"onboard</w>\": 21689,\n  \"once\": 16331,\n  \"once</w>\": 2654,\n  \"onceupon\": 28122,\n  \"onceuponatime</w>\": 33505,\n  \"onco\": 46700,\n  \"oncology</w>\": 24593,\n  \"ond\": 27918,\n  \"ond</w>\": 2636,\n  \"onda</w>\": 32643,\n  \"onday</w>\": 29864,\n  \"onde</w>\": 44532,\n  \"ondo</w>\": 29529,\n  \"ondon\": 42043,\n  \"ondon</w>\": 11851,\n  \"one\": 1980,\n  \"one</w>\": 637,\n  \"onec\": 27746,\n  \"oned\": 28012,\n  \"oned</w>\": 4698,\n  \"onedirection</w>\": 16245,\n  \"onee</w>\": 44433,\n  \"oneill</w>\": 44808,\n  \"onelove</w>\": 47417,\n  \"onent</w>\": 12147,\n  \"onents</w>\": 11709,\n  \"oneof\": 48478,\n  \"onep\": 20440,\n  \"onepiece</w>\": 43153,\n  \"oneplus</w>\": 25981,\n  \"oner\": 30055,\n  \"oner</w>\": 6071,\n  \"oners</w>\": 12324,\n  \"ones\": 20757,\n  \"ones</w>\": 1575,\n  \"oneself</w>\": 46874,\n  \"onesie</w>\": 33237,\n  \"oness</w>\": 25379,\n  \"onet</w>\": 36058,\n  \"oneteam</w>\": 41094,\n  \"onetsy</w>\": 33392,\n  \"onew</w>\": 43848,\n  \"onews</w>\": 18696,\n  \"onex</w>\": 49116,\n  \"oney\": 44498,\n  \"oney</w>\": 9408,\n  \"onf</w>\": 41790,\n  \"onfox</w>\": 29874,\n  \"ong\": 2787,\n  \"ong</w>\": 846,\n  \"onga</w>\": 30259,\n  \"ongchang</w>\": 35071,\n  \"ongi</w>\": 21754,\n  \"ongo</w>\": 31226,\n  \"ongoing</w>\": 10393,\n  \"ongs</w>\": 12143,\n  \"oni\": 4385,\n  \"oni</w>\": 8048,\n  \"onia</w>\": 8001,\n  \"onial</w>\": 27599,\n  \"onian</w>\": 21090,\n  \"onic\": 15838,\n  \"onic</w>\": 3711,\n  \"onica</w>\": 14631,\n  \"onics</w>\": 9779,\n  \"onie</w>\": 35249,\n  \"onies</w>\": 22601,\n  \"onimo</w>\": 41271,\n  \"oning</w>\": 5197,\n  \"onion</w>\": 10985,\n  \"onions</w>\": 15255,\n  \"onist</w>\": 10099,\n  \"onists</w>\": 19659,\n  \"onix</w>\": 27370,\n  \"onized</w>\": 43657,\n  \"onlin\": 31103,\n  \"online\": 12940,\n  \"online</w>\": 2027,\n  \"onlinemarketing</w>\": 41820,\n  \"onlineshopping</w>\": 38587,\n  \"only\": 11646,\n  \"only</w>\": 1033,\n  \"onlyin\": 32947,\n  \"onna\": 25438,\n  \"onna</w>\": 35458,\n  \"onnaise</w>\": 48934,\n  \"onne</w>\": 23466,\n  \"onnell</w>\": 45613,\n  \"ono\": 28165,\n  \"ono</w>\": 14388,\n  \"onom\": 48014,\n  \"onomy</w>\": 36873,\n  \"onpoli</w>\": 20708,\n  \"ons\": 26076,\n  \"ons</w>\": 708,\n  \"onsale</w>\": 36324,\n  \"onset</w>\": 30527,\n  \"onsite</w>\": 37336,\n  \"onstage</w>\": 21821,\n  \"onstorm</w>\": 49333,\n  \"ont\": 34303,\n  \"ont</w>\": 11157,\n  \"ontari\": 6739,\n  \"ontario\": 42766,\n  \"ontario</w>\": 7436,\n  \"onte</w>\": 34723,\n  \"onthe\": 12241,\n  \"onther\": 46563,\n  \"ontheroad</w>\": 47516,\n  \"onthisday</w>\": 6862,\n  \"onto\": 11745,\n  \"onto</w>\": 3141,\n  \"ontology</w>\": 37364,\n  \"ontour</w>\": 32155,\n  \"onu\": 44142,\n  \"onward</w>\": 34827,\n  \"onwards</w>\": 20682,\n  \"ony\": 9490,\n  \"ony</w>\": 2926,\n  \"onym\": 11483,\n  \"onymous</w>\": 13038,\n  \"onyx</w>\": 31353,\n  \"oo\": 574,\n  \"oo</w>\": 2822,\n  \"ood\": 16429,\n  \"ood</w>\": 738,\n  \"oodle</w>\": 45289,\n  \"oods</w>\": 44660,\n  \"oof</w>\": 42270,\n  \"ooh</w>\": 16806,\n  \"ook\": 22326,\n  \"ook</w>\": 8394,\n  \"ooks</w>\": 31082,\n  \"ool\": 37702,\n  \"ool</w>\": 929,\n  \"oom\": 22786,\n  \"oom</w>\": 15002,\n  \"oomf</w>\": 40607,\n  \"oon\": 35651,\n  \"oon</w>\": 7100,\n  \"ooo</w>\": 9571,\n  \"oooh</w>\": 28927,\n  \"oooo\": 4002,\n  \"oooo</w>\": 13643,\n  \"ooooo</w>\": 12532,\n  \"oooooo\": 43590,\n  \"oooooo</w>\": 20372,\n  \"ooooooo</w>\": 30859,\n  \"oooooooo\": 15473,\n  \"oooooooo</w>\": 43408,\n  \"oooooooooooooooo\": 48645,\n  \"oop</w>\": 7326,\n  \"ooper</w>\": 39906,\n  \"oops</w>\": 9116,\n  \"oor</w>\": 35239,\n  \"oos</w>\": 9896,\n  \"oosa</w>\": 30834,\n  \"oose</w>\": 38941,\n  \"oot</w>\": 17667,\n  \"ootball</w>\": 28914,\n  \"ootd</w>\": 16547,\n  \"ooth</w>\": 12682,\n  \"oott</w>\": 34316,\n  \"ooza</w>\": 22809,\n  \"op\": 676,\n  \"op</w>\": 3691,\n  \"opa</w>\": 28949,\n  \"opal</w>\": 28982,\n  \"opar\": 18167,\n  \"opath\": 33079,\n  \"opathic</w>\": 37521,\n  \"opathy</w>\": 28466,\n  \"opau\": 27239,\n  \"opd</w>\": 38288,\n  \"ope\": 31694,\n  \"ope</w>\": 11440,\n  \"opec</w>\": 33138,\n  \"opel</w>\": 36952,\n  \"open\": 3647,\n  \"open</w>\": 1488,\n  \"openaccess</w>\": 26591,\n  \"opend\": 28069,\n  \"opendata</w>\": 35709,\n  \"openday</w>\": 46991,\n  \"opened</w>\": 5303,\n  \"opener</w>\": 8998,\n  \"openhouse</w>\": 36091,\n  \"opening\": 33728,\n  \"opening</w>\": 2516,\n  \"openingday</w>\": 36359,\n  \"openings</w>\": 27643,\n  \"openly</w>\": 23005,\n  \"opens</w>\": 4801,\n  \"opensource</w>\": 29930,\n  \"oper\": 2796,\n  \"oper</w>\": 37533,\n  \"opera</w>\": 8056,\n  \"operate</w>\": 19306,\n  \"operated</w>\": 23031,\n  \"operates</w>\": 38675,\n  \"operating</w>\": 12218,\n  \"operation\": 27173,\n  \"operation</w>\": 7639,\n  \"operational</w>\": 18237,\n  \"operations</w>\": 8106,\n  \"operative</w>\": 28380,\n  \"operator</w>\": 15972,\n  \"operators</w>\": 19267,\n  \"opers</w>\": 48728,\n  \"opes</w>\": 37258,\n  \"oph\": 6796,\n  \"opha\": 38634,\n  \"ophel\": 45017,\n  \"ophelia</w>\": 49118,\n  \"ophi\": 44547,\n  \"ophile</w>\": 35915,\n  \"opho\": 12900,\n  \"ophobia</w>\": 21111,\n  \"ophobic</w>\": 29934,\n  \"ophon\": 25120,\n  \"ophone</w>\": 26345,\n  \"ophthal\": 33135,\n  \"ophy\": 28539,\n  \"opi\": 40056,\n  \"opi</w>\": 48994,\n  \"opin\": 7636,\n  \"opini\": 14825,\n  \"opinion</w>\": 7843,\n  \"opinions</w>\": 16192,\n  \"opio\": 17371,\n  \"opioid</w>\": 22833,\n  \"opioids</w>\": 47578,\n  \"opla\": 36270,\n  \"ople</w>\": 25663,\n  \"opol\": 15173,\n  \"opoly</w>\": 23729,\n  \"opor\": 39650,\n  \"opoulos</w>\": 42020,\n  \"opp\": 2020,\n  \"opp</w>\": 21024,\n  \"oppa</w>\": 23637,\n  \"oppo\": 7399,\n  \"oppo</w>\": 41770,\n  \"opponent</w>\": 17002,\n  \"opponents</w>\": 19664,\n  \"oppor\": 2914,\n  \"opportun\": 2939,\n  \"opportunities</w>\": 5978,\n  \"opportunity</w>\": 4004,\n  \"oppos\": 10091,\n  \"oppose</w>\": 23617,\n  \"opposed</w>\": 22509,\n  \"opposes</w>\": 47471,\n  \"opposing</w>\": 24376,\n  \"opposite</w>\": 12872,\n  \"opposition</w>\": 11062,\n  \"oppre\": 17341,\n  \"oppressed</w>\": 41492,\n  \"oppression</w>\": 30650,\n  \"opra</w>\": 28291,\n  \"oprah</w>\": 22562,\n  \"opry</w>\": 35340,\n  \"ops</w>\": 3054,\n  \"opt\": 45103,\n  \"opt</w>\": 27188,\n  \"opted</w>\": 42035,\n  \"opti\": 6580,\n  \"optic\": 25190,\n  \"optic</w>\": 24755,\n  \"optical</w>\": 16822,\n  \"optics</w>\": 27165,\n  \"optim\": 22331,\n  \"optimal</w>\": 25235,\n  \"optimi\": 9737,\n  \"optimis\": 39459,\n  \"optimism</w>\": 25226,\n  \"optimist</w>\": 44581,\n  \"optimistic</w>\": 23104,\n  \"optimization</w>\": 25125,\n  \"optimize</w>\": 30456,\n  \"optimized</w>\": 43939,\n  \"optimizing</w>\": 49157,\n  \"optimum</w>\": 35974,\n  \"optimus</w>\": 43453,\n  \"option</w>\": 8464,\n  \"optional</w>\": 25411,\n  \"options</w>\": 7063,\n  \"optome\": 35533,\n  \"opul\": 39858,\n  \"opus</w>\": 33295,\n  \"opy</w>\": 21835,\n  \"or\": 523,\n  \"or</w>\": 541,\n  \"ora</w>\": 4301,\n  \"orac\": 24673,\n  \"oracle\": 37308,\n  \"oracle</w>\": 15966,\n  \"orah</w>\": 40820,\n  \"orail</w>\": 45120,\n  \"oral\": 32490,\n  \"oral</w>\": 6007,\n  \"orama</w>\": 33619,\n  \"oran\": 32209,\n  \"oran</w>\": 28395,\n  \"orang\": 22116,\n  \"orange\": 13957,\n  \"orange</w>\": 4287,\n  \"oranges</w>\": 32417,\n  \"orangu\": 36112,\n  \"orb\": 28894,\n  \"orb</w>\": 36958,\n  \"orbit</w>\": 19713,\n  \"orbital</w>\": 40312,\n  \"orc</w>\": 44305,\n  \"orca</w>\": 18631,\n  \"orcas</w>\": 47676,\n  \"orch\": 11893,\n  \"orchar\": 40226,\n  \"orchard</w>\": 19530,\n  \"orche\": 8004,\n  \"orchestr\": 42937,\n  \"orchestra</w>\": 9573,\n  \"orchestral</w>\": 40285,\n  \"orchi\": 23696,\n  \"orchid</w>\": 18678,\n  \"orchids</w>\": 28376,\n  \"ord\": 26903,\n  \"ord</w>\": 11502,\n  \"orda\": 33462,\n  \"ordained</w>\": 38302,\n  \"order\": 24613,\n  \"order</w>\": 2191,\n  \"ordered</w>\": 8335,\n  \"ordering</w>\": 19588,\n  \"orderly</w>\": 43457,\n  \"orders</w>\": 6187,\n  \"ordin\": 4378,\n  \"ordinance</w>\": 38583,\n  \"ordinary</w>\": 8012,\n  \"ore\": 3580,\n  \"ore</w>\": 1423,\n  \"orean</w>\": 36696,\n  \"ored</w>\": 5133,\n  \"oregon\": 21759,\n  \"oregon</w>\": 8035,\n  \"oren\": 21645,\n  \"oreo</w>\": 21873,\n  \"oreos</w>\": 41688,\n  \"ores</w>\": 17328,\n  \"org\": 3401,\n  \"org</w>\": 5593,\n  \"organ\": 3338,\n  \"organ</w>\": 13213,\n  \"organi\": 3636,\n  \"organic\": 24080,\n  \"organic</w>\": 5980,\n  \"organics</w>\": 44199,\n  \"organis\": 13204,\n  \"organisation</w>\": 15868,\n  \"organisations</w>\": 20651,\n  \"organise</w>\": 36073,\n  \"organised</w>\": 13191,\n  \"organiser</w>\": 49141,\n  \"organisers</w>\": 35778,\n  \"organising</w>\": 22787,\n  \"organisms</w>\": 37041,\n  \"organiz\": 11107,\n  \"organization</w>\": 8064,\n  \"organizational</w>\": 29510,\n  \"organizations</w>\": 13453,\n  \"organize</w>\": 19973,\n  \"organized</w>\": 10681,\n  \"organizer</w>\": 23905,\n  \"organizers</w>\": 27191,\n  \"organizing</w>\": 15779,\n  \"organs</w>\": 29872,\n  \"orgs</w>\": 29500,\n  \"ori\": 1540,\n  \"ori</w>\": 8693,\n  \"oria</w>\": 11474,\n  \"orial</w>\": 8648,\n  \"orian</w>\": 21193,\n  \"oric</w>\": 43810,\n  \"orice</w>\": 41341,\n  \"orie</w>\": 18815,\n  \"orient\": 13149,\n  \"orient</w>\": 30770,\n  \"oriental</w>\": 23056,\n  \"orientation</w>\": 16873,\n  \"oriente\": 40390,\n  \"oriented</w>\": 24596,\n  \"orienteering</w>\": 42985,\n  \"ories</w>\": 5934,\n  \"orig\": 2273,\n  \"orig</w>\": 38463,\n  \"origami</w>\": 31832,\n  \"origin\": 2555,\n  \"origin</w>\": 12372,\n  \"original\": 18496,\n  \"original</w>\": 3117,\n  \"originally</w>\": 12849,\n  \"originals</w>\": 16953,\n  \"originated</w>\": 41823,\n  \"origins</w>\": 16291,\n  \"orin</w>\": 39863,\n  \"oring</w>\": 3006,\n  \"orio</w>\": 24308,\n  \"orioles</w>\": 21430,\n  \"orion</w>\": 21765,\n  \"oris</w>\": 37064,\n  \"orities</w>\": 7903,\n  \"ority</w>\": 5556,\n  \"orium</w>\": 12015,\n  \"ork\": 22202,\n  \"ork</w>\": 37235,\n  \"orkney</w>\": 34254,\n  \"orl</w>\": 39465,\n  \"orlando\": 32247,\n  \"orlando</w>\": 7827,\n  \"orleans</w>\": 11127,\n  \"orm</w>\": 38464,\n  \"orn\": 25412,\n  \"orn</w>\": 8130,\n  \"ornam\": 36122,\n  \"ornament</w>\": 23409,\n  \"ornamental</w>\": 46270,\n  \"ornaments</w>\": 28968,\n  \"ornate</w>\": 46865,\n  \"orni\": 27713,\n  \"ornithology</w>\": 38275,\n  \"orns</w>\": 19340,\n  \"oro\": 9848,\n  \"oro</w>\": 14573,\n  \"orous</w>\": 19286,\n  \"orph\": 17318,\n  \"orphan\": 22718,\n  \"orphan</w>\": 28994,\n  \"orphanage</w>\": 45196,\n  \"orphaned</w>\": 46792,\n  \"orphans</w>\": 36588,\n  \"orphe\": 39186,\n  \"orr</w>\": 32977,\n  \"ors</w>\": 1127,\n  \"orship</w>\": 20846,\n  \"ort</w>\": 1019,\n  \"ortega</w>\": 39727,\n  \"orth\": 22584,\n  \"orth</w>\": 24461,\n  \"ortho\": 11366,\n  \"orthodon\": 37730,\n  \"orthodox</w>\": 19008,\n  \"orthop\": 42123,\n  \"orthopedic</w>\": 49341,\n  \"ortiz</w>\": 23544,\n  \"orton</w>\": 37238,\n  \"oru\": 44629,\n  \"oru</w>\": 31281,\n  \"orum</w>\": 42724,\n  \"orwell</w>\": 41218,\n  \"ory\": 16983,\n  \"ory</w>\": 1985,\n  \"os\": 2211,\n  \"os</w>\": 1299,\n  \"osa\": 16340,\n  \"osa</w>\": 17237,\n  \"osaka</w>\": 21347,\n  \"osborne</w>\": 22402,\n  \"osbourne</w>\": 43376,\n  \"osc\": 5092,\n  \"oscar\": 21157,\n  \"oscar</w>\": 8191,\n  \"oscars</w>\": 11098,\n  \"osce</w>\": 37303,\n  \"oscill\": 38272,\n  \"ose\": 46942,\n  \"ose</w>\": 22541,\n  \"osh\": 30717,\n  \"osh</w>\": 35011,\n  \"osha</w>\": 33907,\n  \"oshi</w>\": 34770,\n  \"osi\": 25247,\n  \"osi</w>\": 17636,\n  \"osis</w>\": 13903,\n  \"osity</w>\": 12730,\n  \"oslo</w>\": 20547,\n  \"osm\": 31626,\n  \"osman</w>\": 46539,\n  \"oso\": 42793,\n  \"oso</w>\": 21285,\n  \"osp\": 24387,\n  \"ospre\": 49001,\n  \"osprey</w>\": 37893,\n  \"oss\": 29362,\n  \"oss</w>\": 34640,\n  \"ost\": 23701,\n  \"ost</w>\": 18749,\n  \"oste\": 20632,\n  \"osteo\": 43163,\n  \"oster\": 31781,\n  \"ostr\": 33673,\n  \"ostrich</w>\": 47640,\n  \"osu\": 29480,\n  \"osu</w>\": 19818,\n  \"oswald</w>\": 38471,\n  \"ot\": 1863,\n  \"ot</w>\": 2062,\n  \"ota\": 17509,\n  \"ota</w>\": 8741,\n  \"otago</w>\": 45919,\n  \"otaku</w>\": 40743,\n  \"otas</w>\": 47616,\n  \"otc</w>\": 37934,\n  \"otd</w>\": 5683,\n  \"ote\": 28511,\n  \"ote</w>\": 19744,\n  \"otes</w>\": 27280,\n  \"oth\": 33262,\n  \"oth</w>\": 33519,\n  \"other\": 9758,\n  \"other</w>\": 1010,\n  \"others</w>\": 3326,\n  \"otherwise</w>\": 12376,\n  \"oti\": 19567,\n  \"oti</w>\": 45564,\n  \"otic</w>\": 9671,\n  \"otis</w>\": 28246,\n  \"otive</w>\": 10877,\n  \"oto\": 23946,\n  \"oto</w>\": 23399,\n  \"otp</w>\": 29822,\n  \"otr</w>\": 38685,\n  \"ots</w>\": 5769,\n  \"ott\": 10167,\n  \"ott</w>\": 7936,\n  \"otta\": 7623,\n  \"otta</w>\": 20941,\n  \"ottawa\": 49027,\n  \"ottawa</w>\": 9019,\n  \"otte</w>\": 35214,\n  \"otter\": 34710,\n  \"otter</w>\": 22456,\n  \"otters</w>\": 38883,\n  \"otti</w>\": 36721,\n  \"ottnews</w>\": 33995,\n  \"otto</w>\": 17730,\n  \"ottoman</w>\": 27503,\n  \"otw</w>\": 35259,\n  \"otwol\": 46868,\n  \"ou\": 520,\n  \"ou</w>\": 6544,\n  \"ouat</w>\": 32954,\n  \"ouch</w>\": 13493,\n  \"oud</w>\": 1359,\n  \"oue</w>\": 48838,\n  \"ouf</w>\": 34618,\n  \"ough\": 4204,\n  \"ough</w>\": 991,\n  \"ought</w>\": 2253,\n  \"oughton</w>\": 36860,\n  \"oui</w>\": 39421,\n  \"ouk</w>\": 21796,\n  \"oul\": 20253,\n  \"oul</w>\": 8081,\n  \"ould</w>\": 859,\n  \"oulos</w>\": 32808,\n  \"oun\": 636,\n  \"oun</w>\": 20960,\n  \"ounce</w>\": 15027,\n  \"ounces</w>\": 30299,\n  \"ound\": 2013,\n  \"ound</w>\": 853,\n  \"oundation</w>\": 40132,\n  \"ounded</w>\": 9634,\n  \"ounding</w>\": 11944,\n  \"ounds</w>\": 2753,\n  \"oung\": 35875,\n  \"oung</w>\": 25341,\n  \"ounge</w>\": 29427,\n  \"ount\": 43801,\n  \"ount</w>\": 4172,\n  \"ounts</w>\": 10963,\n  \"oup</w>\": 32815,\n  \"our\": 727,\n  \"our</w>\": 581,\n  \"oura\": 29806,\n  \"oura</w>\": 36352,\n  \"ourable</w>\": 24126,\n  \"ourage</w>\": 34525,\n  \"oural</w>\": 45840,\n  \"oured</w>\": 6956,\n  \"ouri\": 12696,\n  \"ouring</w>\": 12000,\n  \"ourism</w>\": 25496,\n  \"ourke</w>\": 26480,\n  \"ourlives</w>\": 37541,\n  \"ouro\": 41224,\n  \"ours</w>\": 1491,\n  \"ourse</w>\": 15415,\n  \"ourselves</w>\": 10124,\n  \"ourt</w>\": 22960,\n  \"oury</w>\": 29484,\n  \"ous\": 1987,\n  \"ous</w>\": 879,\n  \"ouse\": 32048,\n  \"ouse</w>\": 7603,\n  \"ouses</w>\": 33666,\n  \"ously</w>\": 2501,\n  \"ousness</w>\": 10689,\n  \"ousy</w>\": 28302,\n  \"out\": 1130,\n  \"out</w>\": 620,\n  \"outa</w>\": 35187,\n  \"outage</w>\": 27320,\n  \"outages</w>\": 40353,\n  \"outback</w>\": 28532,\n  \"outbound</w>\": 41256,\n  \"outbreak</w>\": 20103,\n  \"outcome</w>\": 16552,\n  \"outcomes</w>\": 14016,\n  \"outdated</w>\": 38313,\n  \"outdoor\": 19184,\n  \"outdoor</w>\": 6368,\n  \"outdoors</w>\": 10469,\n  \"oute</w>\": 44180,\n  \"outed</w>\": 34435,\n  \"outer\": 30499,\n  \"outer</w>\": 14188,\n  \"outes</w>\": 39600,\n  \"outfield</w>\": 41826,\n  \"outfit</w>\": 6525,\n  \"outfits</w>\": 16366,\n  \"outfitters</w>\": 37725,\n  \"outfy</w>\": 34920,\n  \"outgoing</w>\": 27302,\n  \"outh\": 16933,\n  \"outh</w>\": 8111,\n  \"outine</w>\": 35452,\n  \"outing</w>\": 11251,\n  \"outlander\": 45820,\n  \"outlander</w>\": 17095,\n  \"outlaw\": 37498,\n  \"outlaw</w>\": 27340,\n  \"outlaws</w>\": 30935,\n  \"outlet</w>\": 16855,\n  \"outlets</w>\": 20822,\n  \"outline</w>\": 26894,\n  \"outlines</w>\": 29159,\n  \"outlining</w>\": 45960,\n  \"outlook</w>\": 12983,\n  \"outof\": 43958,\n  \"outpatient</w>\": 46603,\n  \"outpost</w>\": 44622,\n  \"output</w>\": 17255,\n  \"outra\": 14262,\n  \"outrage</w>\": 23577,\n  \"outraged</w>\": 43402,\n  \"outrageous</w>\": 29342,\n  \"outre\": 14373,\n  \"outreach</w>\": 15297,\n  \"outright</w>\": 38200,\n  \"outs</w>\": 5790,\n  \"outsi\": 22515,\n  \"outside\": 47693,\n  \"outside</w>\": 2782,\n  \"outsider</w>\": 41196,\n  \"outsiders</w>\": 41742,\n  \"outskirts</w>\": 42088,\n  \"outsourcing</w>\": 34543,\n  \"outstanding</w>\": 6387,\n  \"outta</w>\": 15807,\n  \"outtuesday</w>\": 48692,\n  \"outw\": 34650,\n  \"oux\": 40960,\n  \"oux</w>\": 14228,\n  \"ov\": 6420,\n  \"ov</w>\": 8479,\n  \"ova</w>\": 12762,\n  \"oval</w>\": 15039,\n  \"ovarian</w>\": 42913,\n  \"ovation</w>\": 24333,\n  \"ove\": 8649,\n  \"ove</w>\": 15456,\n  \"oven\": 44620,\n  \"oven</w>\": 12579,\n  \"over\": 1658,\n  \"over</w>\": 962,\n  \"overall</w>\": 6914,\n  \"overboard</w>\": 42982,\n  \"overcame</w>\": 47235,\n  \"overcast</w>\": 36942,\n  \"overcome</w>\": 14365,\n  \"overcoming</w>\": 29348,\n  \"overdose</w>\": 27017,\n  \"overdrive</w>\": 40088,\n  \"overdue</w>\": 30240,\n  \"overflow</w>\": 32885,\n  \"overflowing</w>\": 45370,\n  \"overhaul</w>\": 31531,\n  \"overhead</w>\": 20321,\n  \"overland</w>\": 38808,\n  \"overlay</w>\": 44827,\n  \"overload</w>\": 24327,\n  \"overlook</w>\": 35767,\n  \"overlooked</w>\": 27632,\n  \"overlooking</w>\": 17319,\n  \"overly</w>\": 28820,\n  \"overnight</w>\": 9913,\n  \"overpass</w>\": 44310,\n  \"overrated</w>\": 38214,\n  \"overs\": 45774,\n  \"overs</w>\": 17329,\n  \"overseas</w>\": 15100,\n  \"oversight</w>\": 32494,\n  \"oversized</w>\": 31557,\n  \"overtime</w>\": 19347,\n  \"overturned</w>\": 31048,\n  \"overview</w>\": 14789,\n  \"overwatch</w>\": 18124,\n  \"overweight</w>\": 43465,\n  \"overwhel\": 12204,\n  \"overwhelmed</w>\": 23459,\n  \"overwhelming</w>\": 20306,\n  \"overwhelmingly</w>\": 43549,\n  \"ovi\": 32508,\n  \"ovic</w>\": 22417,\n  \"ovich</w>\": 27623,\n  \"ovie\": 47677,\n  \"ovo\": 41920,\n  \"ovo</w>\": 18065,\n  \"ovski</w>\": 26167,\n  \"ow\": 2032,\n  \"ow</w>\": 2250,\n  \"owa</w>\": 32770,\n  \"owe</w>\": 19073,\n  \"owed</w>\": 37641,\n  \"owen\": 24838,\n  \"owen</w>\": 12056,\n  \"owens</w>\": 20664,\n  \"owes</w>\": 35069,\n  \"owing</w>\": 48582,\n  \"owl\": 34332,\n  \"owl</w>\": 9899,\n  \"owls</w>\": 18247,\n  \"own\": 3845,\n  \"own</w>\": 1758,\n  \"owned</w>\": 8536,\n  \"owner</w>\": 5019,\n  \"owners</w>\": 7712,\n  \"ownership</w>\": 16583,\n  \"owning</w>\": 24661,\n  \"owns</w>\": 17533,\n  \"owo</w>\": 46142,\n  \"ows</w>\": 27423,\n  \"owski</w>\": 22573,\n  \"ox\": 3282,\n  \"ox</w>\": 12071,\n  \"oxfam</w>\": 45466,\n  \"oxford\": 28588,\n  \"oxford</w>\": 8824,\n  \"oxfordshire</w>\": 37855,\n  \"oxi\": 33731,\n  \"oxi</w>\": 48147,\n  \"oxid\": 17701,\n  \"oxide</w>\": 28235,\n  \"oxo</w>\": 37088,\n  \"oxy\": 12432,\n  \"oxygen</w>\": 16214,\n  \"oy\": 6638,\n  \"oy</w>\": 12437,\n  \"oya</w>\": 38894,\n  \"oye\": 48677,\n  \"oyster\": 40545,\n  \"oyster</w>\": 17253,\n  \"oysters</w>\": 22672,\n  \"oz\": 10584,\n  \"oz</w>\": 6044,\n  \"ozar\": 31848,\n  \"ozil</w>\": 41365,\n  \"ozone</w>\": 37052,\n  \"ozzy</w>\": 39549,\n  \"p\": 79,\n  \"p</w>\": 335,\n  \"pa\": 765,\n  \"pa</w>\": 2217,\n  \"paa</w>\": 32812,\n  \"pab\": 9354,\n  \"pablo\": 42172,\n  \"pablo</w>\": 14473,\n  \"pac\": 2332,\n  \"pac</w>\": 7608,\n  \"pace\": 40600,\n  \"pace</w>\": 9450,\n  \"paced</w>\": 32611,\n  \"pacers</w>\": 23976,\n  \"paces</w>\": 43001,\n  \"paci\": 5699,\n  \"pacific\": 19723,\n  \"pacific</w>\": 6654,\n  \"pacing</w>\": 45202,\n  \"pack\": 2711,\n  \"pack</w>\": 3420,\n  \"package</w>\": 7053,\n  \"packaged</w>\": 29656,\n  \"packages</w>\": 14305,\n  \"packaging</w>\": 11658,\n  \"packard</w>\": 46421,\n  \"packed</w>\": 5883,\n  \"packer</w>\": 28209,\n  \"packers</w>\": 14294,\n  \"packet</w>\": 25022,\n  \"packets</w>\": 40448,\n  \"packing</w>\": 9829,\n  \"packs</w>\": 11086,\n  \"paco</w>\": 41364,\n  \"pacqui\": 28456,\n  \"pacquiao</w>\": 30485,\n  \"pact</w>\": 27182,\n  \"pad\": 3798,\n  \"pad</w>\": 7601,\n  \"padded</w>\": 42253,\n  \"paddington</w>\": 33162,\n  \"paddle\": 38276,\n  \"paddle</w>\": 20811,\n  \"paddling</w>\": 40645,\n  \"paddock</w>\": 29590,\n  \"paddy\": 33103,\n  \"paddy</w>\": 19855,\n  \"padi</w>\": 47037,\n  \"padilla</w>\": 22380,\n  \"padma\": 44595,\n  \"padma</w>\": 46457,\n  \"padre</w>\": 38343,\n  \"padres</w>\": 22829,\n  \"pads</w>\": 17353,\n  \"paedi\": 41488,\n  \"paella</w>\": 46924,\n  \"paf\": 47185,\n  \"pafc</w>\": 49259,\n  \"pag\": 4151,\n  \"pag</w>\": 30525,\n  \"pagan</w>\": 27854,\n  \"page\": 14996,\n  \"page</w>\": 2504,\n  \"pageant</w>\": 22139,\n  \"pages</w>\": 8082,\n  \"pagoda</w>\": 44309,\n  \"pah\": 41054,\n  \"pah</w>\": 26884,\n  \"pai\": 20624,\n  \"pai</w>\": 21198,\n  \"paid</w>\": 5057,\n  \"paige\": 33659,\n  \"paige</w>\": 16022,\n  \"paign</w>\": 31796,\n  \"pain\": 2141,\n  \"pain</w>\": 4495,\n  \"paine</w>\": 38069,\n  \"painful</w>\": 16361,\n  \"pains</w>\": 25639,\n  \"paint\": 7948,\n  \"paint</w>\": 5185,\n  \"paintball</w>\": 39730,\n  \"painted</w>\": 6433,\n  \"painter</w>\": 10888,\n  \"painters</w>\": 35703,\n  \"painting\": 49164,\n  \"painting</w>\": 3086,\n  \"paintings</w>\": 9956,\n  \"paints</w>\": 21672,\n  \"pair\": 19848,\n  \"pair</w>\": 4038,\n  \"paired</w>\": 12433,\n  \"pairing</w>\": 16313,\n  \"pairings</w>\": 41152,\n  \"pairs</w>\": 9950,\n  \"pais\": 16878,\n  \"paisley</w>\": 22954,\n  \"pajam\": 24110,\n  \"pajama</w>\": 40244,\n  \"pajamas</w>\": 37231,\n  \"pak\": 13186,\n  \"pak</w>\": 9094,\n  \"paki\": 3438,\n  \"pakistan\": 10713,\n  \"pakistan</w>\": 3994,\n  \"pakistani</w>\": 14050,\n  \"pakistanis</w>\": 45707,\n  \"pakv\": 38196,\n  \"pal\": 1850,\n  \"pal</w>\": 3611,\n  \"pala</w>\": 17895,\n  \"palace</w>\": 6381,\n  \"palaces</w>\": 45625,\n  \"palad\": 28371,\n  \"palae\": 43379,\n  \"palais</w>\": 35673,\n  \"palate</w>\": 34666,\n  \"palawan</w>\": 48202,\n  \"palazzo</w>\": 36006,\n  \"pale\": 4768,\n  \"pale</w>\": 12518,\n  \"paleo\": 36741,\n  \"paleo</w>\": 22198,\n  \"paler\": 38028,\n  \"palermo</w>\": 40635,\n  \"palestin\": 9449,\n  \"palestine</w>\": 11682,\n  \"palestinian</w>\": 11764,\n  \"palestinians</w>\": 21874,\n  \"palette</w>\": 13901,\n  \"pali\": 48063,\n  \"palin</w>\": 40153,\n  \"palis\": 44256,\n  \"pality</w>\": 27296,\n  \"pall\": 35817,\n  \"palla\": 21208,\n  \"palladium</w>\": 37888,\n  \"pallet</w>\": 39057,\n  \"palli\": 28954,\n  \"palliative</w>\": 46014,\n  \"pally</w>\": 46073,\n  \"palm\": 19651,\n  \"palm</w>\": 8612,\n  \"palma</w>\": 29888,\n  \"palmer\": 40112,\n  \"palmer</w>\": 13633,\n  \"palms</w>\": 27059,\n  \"palo</w>\": 31562,\n  \"palom\": 47698,\n  \"palooza</w>\": 25861,\n  \"pals</w>\": 11043,\n  \"palsy</w>\": 46651,\n  \"pam\": 8228,\n  \"pam</w>\": 18513,\n  \"pamela</w>\": 26991,\n  \"pamp\": 37653,\n  \"pamper</w>\": 44345,\n  \"pamph\": 41332,\n  \"pan\": 1072,\n  \"pan</w>\": 7437,\n  \"panam\": 24606,\n  \"panama</w>\": 15522,\n  \"panas\": 26207,\n  \"panasonic</w>\": 29750,\n  \"pancake</w>\": 18723,\n  \"pancakes</w>\": 15308,\n  \"panch\": 27251,\n  \"pancra\": 42472,\n  \"pancre\": 27708,\n  \"pancreatic</w>\": 49337,\n  \"pancy</w>\": 41625,\n  \"pand\": 5631,\n  \"panda</w>\": 12952,\n  \"pandas</w>\": 35119,\n  \"pande\": 38419,\n  \"pandey</w>\": 34895,\n  \"pandit</w>\": 41191,\n  \"pandor\": 30250,\n  \"pandora</w>\": 17727,\n  \"pandoramusic</w>\": 42344,\n  \"pane</w>\": 27470,\n  \"panel</w>\": 3724,\n  \"paneli\": 19410,\n  \"panelist</w>\": 39719,\n  \"panelists</w>\": 24619,\n  \"panels</w>\": 12735,\n  \"panera</w>\": 48471,\n  \"pang\": 16756,\n  \"pang</w>\": 23672,\n  \"panhandle</w>\": 40919,\n  \"pani</w>\": 36092,\n  \"panic\": 46671,\n  \"panic</w>\": 14124,\n  \"panini</w>\": 30410,\n  \"pann\": 42302,\n  \"panna</w>\": 49065,\n  \"pano</w>\": 36165,\n  \"panor\": 12962,\n  \"panorama</w>\": 19763,\n  \"panoramic</w>\": 22563,\n  \"pans</w>\": 35204,\n  \"pant</w>\": 22550,\n  \"panther\": 22825,\n  \"panther</w>\": 13262,\n  \"panthers</w>\": 10494,\n  \"panties</w>\": 32515,\n  \"panto</w>\": 28776,\n  \"pantry</w>\": 25608,\n  \"pants</w>\": 5003,\n  \"panty\": 44217,\n  \"pany</w>\": 45567,\n  \"panzer</w>\": 41159,\n  \"pao</w>\": 33790,\n  \"paola</w>\": 44689,\n  \"paolo\": 48488,\n  \"paolo</w>\": 21133,\n  \"pap\": 1884,\n  \"pap</w>\": 30756,\n  \"papa</w>\": 12211,\n  \"papar\": 32782,\n  \"paparazzi</w>\": 37842,\n  \"papaya</w>\": 44098,\n  \"paper\": 8680,\n  \"paper</w>\": 2802,\n  \"paperback</w>\": 17928,\n  \"papers</w>\": 8204,\n  \"paperwork</w>\": 35785,\n  \"papi</w>\": 35177,\n  \"papp\": 26361,\n  \"paprika</w>\": 44793,\n  \"papua</w>\": 32629,\n  \"par\": 699,\n  \"par</w>\": 9163,\n  \"para\": 18355,\n  \"para</w>\": 8976,\n  \"parach\": 23147,\n  \"parachute</w>\": 30122,\n  \"parad\": 37143,\n  \"parade</w>\": 5809,\n  \"parades</w>\": 46479,\n  \"paradi\": 6658,\n  \"paradig\": 27786,\n  \"paradigm</w>\": 33485,\n  \"paradise\": 45869,\n  \"paradise</w>\": 7247,\n  \"paradox</w>\": 33109,\n  \"parag\": 11866,\n  \"paragon</w>\": 48099,\n  \"paragra\": 24903,\n  \"paragraph</w>\": 28499,\n  \"paragu\": 38021,\n  \"paraguay</w>\": 43579,\n  \"paral\": 15143,\n  \"paralle\": 13184,\n  \"parallel</w>\": 18201,\n  \"paralleled</w>\": 42520,\n  \"parallels</w>\": 46101,\n  \"paraly\": 30255,\n  \"paralym\": 18727,\n  \"paralympic</w>\": 30806,\n  \"paralympics</w>\": 37162,\n  \"paralysis</w>\": 45702,\n  \"param\": 12250,\n  \"parame\": 27106,\n  \"paramedic</w>\": 34630,\n  \"paramedics</w>\": 35991,\n  \"parameters</w>\": 44890,\n  \"paramore</w>\": 34401,\n  \"paramount</w>\": 26642,\n  \"parano\": 30283,\n  \"paranoid</w>\": 43029,\n  \"paranor\": 16940,\n  \"paranormal</w>\": 19047,\n  \"parap\": 41091,\n  \"paras\": 15198,\n  \"parasite</w>\": 42460,\n  \"parasites</w>\": 46175,\n  \"parc</w>\": 30914,\n  \"parcel</w>\": 30367,\n  \"parcels</w>\": 45589,\n  \"pard</w>\": 18773,\n  \"pardon\": 47606,\n  \"pardon</w>\": 26565,\n  \"pare\": 18202,\n  \"pared</w>\": 5498,\n  \"paren\": 3106,\n  \"parent\": 47848,\n  \"parent</w>\": 10183,\n  \"parental</w>\": 28339,\n  \"parenthood</w>\": 23887,\n  \"parenting</w>\": 14529,\n  \"parents</w>\": 3731,\n  \"pares</w>\": 12420,\n  \"parfait</w>\": 46140,\n  \"pari\": 17961,\n  \"pari</w>\": 27979,\n  \"paris\": 13982,\n  \"paris</w>\": 3445,\n  \"parisagreement</w>\": 47405,\n  \"parish\": 47328,\n  \"parish</w>\": 13020,\n  \"parisi\": 45081,\n  \"parisian</w>\": 38512,\n  \"parity</w>\": 42734,\n  \"park\": 4985,\n  \"park</w>\": 1452,\n  \"parked</w>\": 16487,\n  \"parker\": 31119,\n  \"parker</w>\": 8365,\n  \"parkin\": 34868,\n  \"parking</w>\": 5984,\n  \"parkinson</w>\": 28129,\n  \"parkland</w>\": 31287,\n  \"parkrun</w>\": 25747,\n  \"parks</w>\": 6873,\n  \"parkway</w>\": 19882,\n  \"parl\": 30373,\n  \"parl</w>\": 29897,\n  \"parliam\": 5941,\n  \"parliament\": 41599,\n  \"parliament</w>\": 7151,\n  \"parliamentary</w>\": 17912,\n  \"parlor</w>\": 38253,\n  \"parlour</w>\": 37829,\n  \"parma</w>\": 36077,\n  \"parme\": 26295,\n  \"parmesan</w>\": 27274,\n  \"paro\": 17429,\n  \"parody</w>\": 24318,\n  \"parole</w>\": 32158,\n  \"parr</w>\": 44113,\n  \"parrish</w>\": 43043,\n  \"parrot</w>\": 23565,\n  \"parry</w>\": 40604,\n  \"parsley</w>\": 30077,\n  \"parsons</w>\": 22505,\n  \"part\": 1872,\n  \"part</w>\": 1551,\n  \"parte</w>\": 48508,\n  \"parth</w>\": 34790,\n  \"parti\": 10509,\n  \"partial</w>\": 18957,\n  \"partially</w>\": 21269,\n  \"partic\": 2871,\n  \"partici\": 9540,\n  \"particip\": 4400,\n  \"participant</w>\": 27674,\n  \"participants</w>\": 10237,\n  \"participate</w>\": 9433,\n  \"participated</w>\": 14252,\n  \"participates</w>\": 46414,\n  \"participating</w>\": 11535,\n  \"participation</w>\": 13529,\n  \"particle</w>\": 27716,\n  \"particles</w>\": 27012,\n  \"particul\": 11408,\n  \"particular</w>\": 14098,\n  \"particularly</w>\": 12170,\n  \"parties</w>\": 9032,\n  \"parting</w>\": 32844,\n  \"partisan</w>\": 20772,\n  \"partist</w>\": 44713,\n  \"partition</w>\": 42219,\n  \"partly</w>\": 21459,\n  \"partner\": 5210,\n  \"partner</w>\": 4568,\n  \"partnered</w>\": 21402,\n  \"partnering</w>\": 21182,\n  \"partners</w>\": 5568,\n  \"partnership</w>\": 6123,\n  \"partnerships</w>\": 17418,\n  \"parton</w>\": 43245,\n  \"partridge</w>\": 34872,\n  \"parts</w>\": 5149,\n  \"party\": 12877,\n  \"party</w>\": 1580,\n  \"partying</w>\": 25702,\n  \"pas\": 1341,\n  \"pas</w>\": 9525,\n  \"pasadena</w>\": 25892,\n  \"pascal</w>\": 28626,\n  \"pasco</w>\": 49220,\n  \"pascu\": 42692,\n  \"pash\": 23936,\n  \"pasha</w>\": 46986,\n  \"paso</w>\": 18542,\n  \"pasqu\": 44941,\n  \"pass\": 5016,\n  \"pass</w>\": 3511,\n  \"passage</w>\": 16477,\n  \"passages</w>\": 48937,\n  \"passed</w>\": 4957,\n  \"passenger</w>\": 12311,\n  \"passengers</w>\": 12781,\n  \"passer</w>\": 48544,\n  \"passes</w>\": 7633,\n  \"passi\": 32471,\n  \"passing</w>\": 6589,\n  \"passion\": 8822,\n  \"passion</w>\": 5332,\n  \"passionate</w>\": 10947,\n  \"passionately</w>\": 44028,\n  \"passions</w>\": 38441,\n  \"passive</w>\": 23171,\n  \"passover</w>\": 38426,\n  \"passport</w>\": 14739,\n  \"passports</w>\": 46368,\n  \"password</w>\": 20258,\n  \"passwords</w>\": 43095,\n  \"past\": 7315,\n  \"past</w>\": 2729,\n  \"pasta</w>\": 10441,\n  \"paste\": 34765,\n  \"paste</w>\": 17038,\n  \"pastel</w>\": 19457,\n  \"pastels</w>\": 45699,\n  \"pastor\": 19792,\n  \"pastor</w>\": 9664,\n  \"pastoral</w>\": 37191,\n  \"pastors</w>\": 30959,\n  \"pastr\": 45478,\n  \"pastries</w>\": 39409,\n  \"pastry</w>\": 18582,\n  \"pasture</w>\": 34764,\n  \"pastures</w>\": 47793,\n  \"pat\": 1300,\n  \"pat</w>\": 7036,\n  \"patag\": 29862,\n  \"patagonia</w>\": 32786,\n  \"patch\": 29284,\n  \"patch</w>\": 8721,\n  \"patches</w>\": 22104,\n  \"patchwork</w>\": 44675,\n  \"patchy</w>\": 47488,\n  \"pate\": 42122,\n  \"pate</w>\": 42098,\n  \"patel</w>\": 14168,\n  \"patent</w>\": 14692,\n  \"patented</w>\": 37277,\n  \"patents</w>\": 33911,\n  \"paterson</w>\": 36560,\n  \"path\": 7408,\n  \"path</w>\": 5035,\n  \"pathetic</w>\": 18222,\n  \"pathfinder</w>\": 35415,\n  \"pathi\": 34976,\n  \"pathi</w>\": 27347,\n  \"pathic</w>\": 49025,\n  \"patho\": 18534,\n  \"pathology</w>\": 23290,\n  \"paths</w>\": 16333,\n  \"pathway</w>\": 23488,\n  \"pathways</w>\": 24690,\n  \"pathy</w>\": 13330,\n  \"pati\": 2799,\n  \"pati</w>\": 26708,\n  \"patience</w>\": 13575,\n  \"patient\": 30139,\n  \"patient</w>\": 6262,\n  \"patiently</w>\": 22980,\n  \"patients</w>\": 5543,\n  \"patil</w>\": 49187,\n  \"patio</w>\": 14304,\n  \"pational</w>\": 30627,\n  \"patna</w>\": 45025,\n  \"patory</w>\": 41859,\n  \"patreon</w>\": 17165,\n  \"patri\": 4771,\n  \"patriarch</w>\": 49054,\n  \"patriarchy</w>\": 48806,\n  \"patric\": 12569,\n  \"patrice</w>\": 40731,\n  \"patricia</w>\": 18143,\n  \"patrick\": 12078,\n  \"patrick</w>\": 5286,\n  \"patricks</w>\": 46783,\n  \"patriot\": 28896,\n  \"patriot</w>\": 15692,\n  \"patrioti\": 35520,\n  \"patriotic</w>\": 20217,\n  \"patriotism</w>\": 35807,\n  \"patriots</w>\": 8707,\n  \"patro\": 31650,\n  \"patrol</w>\": 10073,\n  \"patrolling</w>\": 39344,\n  \"patrols</w>\": 35978,\n  \"patron\": 26658,\n  \"patron</w>\": 17683,\n  \"patrons</w>\": 28308,\n  \"pats</w>\": 24874,\n  \"patsy</w>\": 46093,\n  \"patt\": 12637,\n  \"patter\": 4982,\n  \"pattern</w>\": 7447,\n  \"patterned</w>\": 47212,\n  \"patterns</w>\": 11637,\n  \"patterson</w>\": 21384,\n  \"patti\": 44927,\n  \"patti</w>\": 26123,\n  \"pattinson</w>\": 32474,\n  \"patton</w>\": 29026,\n  \"patty\": 48741,\n  \"patty</w>\": 18321,\n  \"pau\": 1834,\n  \"pau</w>\": 35970,\n  \"paul\": 6035,\n  \"paul</w>\": 2597,\n  \"paula\": 37363,\n  \"paula</w>\": 16777,\n  \"pauline</w>\": 30438,\n  \"paulo\": 48002,\n  \"paulo</w>\": 21628,\n  \"pauls\": 41413,\n  \"pauls</w>\": 40010,\n  \"paulson</w>\": 48201,\n  \"pause</w>\": 19439,\n  \"paused</w>\": 46782,\n  \"pav\": 6661,\n  \"pave</w>\": 37107,\n  \"paved</w>\": 27898,\n  \"pavel</w>\": 43152,\n  \"pavement</w>\": 27669,\n  \"pavilion</w>\": 13374,\n  \"paving</w>\": 28651,\n  \"paw\": 14009,\n  \"paw</w>\": 16016,\n  \"pawan\": 29754,\n  \"pawankalyan</w>\": 33702,\n  \"pawn</w>\": 43195,\n  \"paws</w>\": 16714,\n  \"pax\": 20007,\n  \"pax</w>\": 19033,\n  \"paxton</w>\": 38347,\n  \"pay\": 2642,\n  \"pay</w>\": 3345,\n  \"payback</w>\": 36413,\n  \"paycheck</w>\": 45078,\n  \"payday</w>\": 26957,\n  \"payee</w>\": 46985,\n  \"payer</w>\": 41503,\n  \"paying</w>\": 8341,\n  \"payment</w>\": 10596,\n  \"payments</w>\": 11832,\n  \"payne</w>\": 12775,\n  \"paypal</w>\": 21442,\n  \"payroll</w>\": 31610,\n  \"pays</w>\": 10845,\n  \"paysoff</w>\": 48174,\n  \"paytm</w>\": 45352,\n  \"payton</w>\": 27348,\n  \"paz</w>\": 22267,\n  \"pb\": 20112,\n  \"pb</w>\": 10981,\n  \"pba</w>\": 28205,\n  \"pbb\": 48567,\n  \"pbb</w>\": 40589,\n  \"pbc</w>\": 49191,\n  \"pbl</w>\": 35166,\n  \"pbr</w>\": 32998,\n  \"pbs</w>\": 17908,\n  \"pc\": 6782,\n  \"pc</w>\": 3808,\n  \"pca</w>\": 35705,\n  \"pcb</w>\": 26235,\n  \"pcc</w>\": 36059,\n  \"pci</w>\": 38957,\n  \"pcm</w>\": 47436,\n  \"pcr</w>\": 35704,\n  \"pcs</w>\": 11917,\n  \"pcso</w>\": 31963,\n  \"pct</w>\": 22168,\n  \"pd\": 4387,\n  \"pd</w>\": 4675,\n  \"pdates</w>\": 16842,\n  \"pdc</w>\": 40498,\n  \"pdf</w>\": 15181,\n  \"pdp</w>\": 24601,\n  \"pdt</w>\": 21743,\n  \"pdx\": 25470,\n  \"pdx</w>\": 16153,\n  \"pe\": 661,\n  \"pe</w>\": 956,\n  \"pea</w>\": 13915,\n  \"peabo\": 34083,\n  \"peabody</w>\": 41244,\n  \"peac\": 34615,\n  \"peace\": 6249,\n  \"peace</w>\": 3021,\n  \"peaceful</w>\": 9461,\n  \"peacefully</w>\": 30530,\n  \"peacekeeping</w>\": 43630,\n  \"peach\": 10522,\n  \"peach</w>\": 11538,\n  \"peaches</w>\": 27216,\n  \"peak\": 18572,\n  \"peak</w>\": 6026,\n  \"peakdistrict</w>\": 41289,\n  \"peake</w>\": 24810,\n  \"peaked</w>\": 36391,\n  \"peaks</w>\": 14067,\n  \"pean\": 11563,\n  \"peanu\": 25843,\n  \"peanut</w>\": 12491,\n  \"peanuts</w>\": 26503,\n  \"pear\": 4910,\n  \"pear</w>\": 18820,\n  \"pearce</w>\": 25996,\n  \"pearl\": 21806,\n  \"pearl</w>\": 8560,\n  \"pearljam</w>\": 46739,\n  \"pearls</w>\": 19581,\n  \"pears</w>\": 39565,\n  \"pearson</w>\": 20461,\n  \"peas</w>\": 15937,\n  \"peasant</w>\": 40621,\n  \"peasants</w>\": 48788,\n  \"peat</w>\": 26914,\n  \"pebble</w>\": 28056,\n  \"pebbles</w>\": 40155,\n  \"pec\": 32447,\n  \"pec</w>\": 17611,\n  \"pecan</w>\": 32177,\n  \"peck\": 25186,\n  \"peck</w>\": 29234,\n  \"pecker</w>\": 30169,\n  \"peckham</w>\": 45863,\n  \"pecu\": 34200,\n  \"peculiar</w>\": 42808,\n  \"ped\": 13197,\n  \"ped</w>\": 2966,\n  \"pedago\": 34590,\n  \"pedagogy</w>\": 48072,\n  \"pedal\": 32943,\n  \"pedal</w>\": 19621,\n  \"pedals</w>\": 38535,\n  \"pede\": 12862,\n  \"pede</w>\": 19560,\n  \"pedestri\": 30027,\n  \"pedestrian</w>\": 18256,\n  \"pedestrians</w>\": 33895,\n  \"pedi\": 12967,\n  \"pedia</w>\": 11733,\n  \"pediatric\": 48431,\n  \"pediatric</w>\": 22071,\n  \"pedic\": 35319,\n  \"pedic</w>\": 44528,\n  \"pedro\": 29963,\n  \"pedro</w>\": 15114,\n  \"peds</w>\": 45377,\n  \"pee\": 12988,\n  \"pee</w>\": 11196,\n  \"peed</w>\": 47369,\n  \"peek\": 46323,\n  \"peek</w>\": 7569,\n  \"peeking</w>\": 48771,\n  \"peel\": 34386,\n  \"peel</w>\": 17158,\n  \"peeled</w>\": 33533,\n  \"peeling</w>\": 48649,\n  \"peep\": 25425,\n  \"peep</w>\": 16857,\n  \"peeps</w>\": 11681,\n  \"peer\": 32416,\n  \"peer</w>\": 14432,\n  \"peers</w>\": 21626,\n  \"pees</w>\": 31830,\n  \"peg\": 32182,\n  \"peg</w>\": 11207,\n  \"pegas\": 30018,\n  \"pegasus</w>\": 37822,\n  \"peggy</w>\": 24271,\n  \"pei\": 48166,\n  \"pei</w>\": 12917,\n  \"pel\": 4286,\n  \"pel</w>\": 7006,\n  \"pele</w>\": 44105,\n  \"pelican</w>\": 34131,\n  \"pelicans</w>\": 29363,\n  \"pell</w>\": 46981,\n  \"pelle\": 31267,\n  \"pelled</w>\": 32506,\n  \"pellegr\": 38529,\n  \"pellets</w>\": 48240,\n  \"pelo\": 40192,\n  \"pelo</w>\": 40238,\n  \"pelosi</w>\": 22169,\n  \"pelvic</w>\": 45646,\n  \"pemb\": 19880,\n  \"pembro\": 24084,\n  \"pembroke\": 36702,\n  \"pembroke</w>\": 40044,\n  \"pembrokeshire</w>\": 40695,\n  \"pen\": 1501,\n  \"pen</w>\": 5356,\n  \"pena</w>\": 35788,\n  \"penalties</w>\": 25417,\n  \"penalty</w>\": 11491,\n  \"penang</w>\": 29545,\n  \"penc\": 20065,\n  \"pence</w>\": 18002,\n  \"pencil\": 41303,\n  \"pencil</w>\": 11200,\n  \"pencils</w>\": 21909,\n  \"pend\": 3052,\n  \"pendant</w>\": 12415,\n  \"pendants</w>\": 44117,\n  \"pending</w>\": 12770,\n  \"pendleton</w>\": 44272,\n  \"pendu\": 45336,\n  \"penelope</w>\": 36703,\n  \"penetr\": 26058,\n  \"peng\": 42955,\n  \"peng</w>\": 39200,\n  \"pengu\": 8854,\n  \"penguin\": 28249,\n  \"penguin</w>\": 14952,\n  \"penguins</w>\": 16557,\n  \"peninsu\": 13464,\n  \"peninsula</w>\": 14070,\n  \"penn\": 7760,\n  \"penn</w>\": 11128,\n  \"pennant</w>\": 43971,\n  \"penned</w>\": 45077,\n  \"penney</w>\": 47856,\n  \"pennies</w>\": 43094,\n  \"pennsylvania</w>\": 13673,\n  \"penny\": 20400,\n  \"penny</w>\": 11388,\n  \"pens\": 13307,\n  \"pens</w>\": 13310,\n  \"pensac\": 30925,\n  \"pensacola</w>\": 33573,\n  \"pension\": 32840,\n  \"pension</w>\": 17764,\n  \"pensions</w>\": 29773,\n  \"penske</w>\": 47154,\n  \"pent\": 10699,\n  \"pent</w>\": 22725,\n  \"pentagon</w>\": 23133,\n  \"pente\": 33165,\n  \"penthouse</w>\": 32673,\n  \"penultimate</w>\": 36553,\n  \"peop\": 1030,\n  \"people\": 10573,\n  \"people</w>\": 1047,\n  \"peoples\": 28241,\n  \"peoples</w>\": 14627,\n  \"peopleschoice</w>\": 32418,\n  \"peoplesvote</w>\": 45830,\n  \"peoria</w>\": 36985,\n  \"pep\": 12761,\n  \"pep</w>\": 14898,\n  \"pepe</w>\": 24778,\n  \"pepp\": 34425,\n  \"pepper\": 14861,\n  \"pepper</w>\": 8253,\n  \"peppermint</w>\": 30321,\n  \"pepperoni</w>\": 47307,\n  \"peppers</w>\": 14650,\n  \"pepsi</w>\": 21307,\n  \"per\": 703,\n  \"per</w>\": 1284,\n  \"pera</w>\": 26294,\n  \"perce\": 24135,\n  \"perceived</w>\": 38436,\n  \"percent\": 16328,\n  \"percent</w>\": 9017,\n  \"percentage</w>\": 19477,\n  \"percep\": 28017,\n  \"perception</w>\": 20591,\n  \"perceptions</w>\": 38138,\n  \"perch</w>\": 34281,\n  \"perched</w>\": 40071,\n  \"percu\": 41722,\n  \"percussion</w>\": 23980,\n  \"percy</w>\": 23940,\n  \"pere\": 8665,\n  \"pere</w>\": 36300,\n  \"pered</w>\": 24509,\n  \"peregr\": 37479,\n  \"peregrine</w>\": 44546,\n  \"pereira</w>\": 43927,\n  \"peren\": 24564,\n  \"perenni\": 26996,\n  \"perennial</w>\": 34038,\n  \"perez</w>\": 15107,\n  \"perf</w>\": 22816,\n  \"perfe\": 1624,\n  \"perfec\": 6599,\n  \"perfect\": 17261,\n  \"perfect</w>\": 1878,\n  \"perfection</w>\": 9646,\n  \"perfectly</w>\": 8037,\n  \"perfecto</w>\": 42898,\n  \"perfor\": 2311,\n  \"perform\": 3866,\n  \"perform</w>\": 5940,\n  \"performan\": 8973,\n  \"performance</w>\": 2714,\n  \"performances</w>\": 9553,\n  \"performed</w>\": 9997,\n  \"performer</w>\": 17061,\n  \"performers</w>\": 18476,\n  \"performing</w>\": 5170,\n  \"performs</w>\": 13839,\n  \"perfu\": 14214,\n  \"perfume</w>\": 17525,\n  \"perhaps</w>\": 9297,\n  \"peri\": 12618,\n  \"peri</w>\": 44068,\n  \"perience</w>\": 19302,\n  \"peril\": 40119,\n  \"peril</w>\": 48301,\n  \"perimeter</w>\": 38499,\n  \"pering</w>\": 29746,\n  \"perio\": 5101,\n  \"period</w>\": 6131,\n  \"periodic</w>\": 36476,\n  \"periods</w>\": 24401,\n  \"periph\": 35308,\n  \"peripheral</w>\": 43901,\n  \"peris\": 19461,\n  \"periscope</w>\": 21668,\n  \"perk</w>\": 33424,\n  \"perkins</w>\": 20057,\n  \"perks</w>\": 17660,\n  \"perl\": 44018,\n  \"perm</w>\": 47847,\n  \"perman\": 9018,\n  \"permanent</w>\": 11144,\n  \"permanently</w>\": 25584,\n  \"perme\": 42456,\n  \"permission</w>\": 15822,\n  \"permit</w>\": 21950,\n  \"permits</w>\": 33267,\n  \"permitted</w>\": 44380,\n  \"pero</w>\": 23551,\n  \"perpe\": 15749,\n  \"perpetr\": 33376,\n  \"perpetu\": 30132,\n  \"perpetual</w>\": 32018,\n  \"perrie</w>\": 32691,\n  \"perry\": 28478,\n  \"perry</w>\": 7899,\n  \"pers\": 3688,\n  \"pers</w>\": 10710,\n  \"perse\": 27498,\n  \"persecu\": 22878,\n  \"persecution</w>\": 32009,\n  \"perseverance</w>\": 29820,\n  \"persi\": 11509,\n  \"persian</w>\": 19859,\n  \"persist\": 19412,\n  \"persist</w>\": 40938,\n  \"persistence</w>\": 34588,\n  \"persistent</w>\": 29028,\n  \"person\": 3510,\n  \"person</w>\": 2533,\n  \"persona</w>\": 18401,\n  \"personal\": 10114,\n  \"personal</w>\": 4121,\n  \"personalised</w>\": 24186,\n  \"personalities</w>\": 27888,\n  \"personality</w>\": 10386,\n  \"personalized</w>\": 17845,\n  \"personally</w>\": 13885,\n  \"personnel</w>\": 14546,\n  \"persons</w>\": 14592,\n  \"perspec\": 17997,\n  \"perspective</w>\": 8996,\n  \"perspectives</w>\": 18777,\n  \"persu\": 20972,\n  \"pert\": 36970,\n  \"pert</w>\": 16306,\n  \"perth\": 19067,\n  \"perth</w>\": 11011,\n  \"peru\": 20612,\n  \"peru</w>\": 12964,\n  \"peruvian</w>\": 30822,\n  \"pes\": 38368,\n  \"pes</w>\": 2598,\n  \"pesa</w>\": 47409,\n  \"pesc\": 44044,\n  \"pesh\": 33184,\n  \"peshaw\": 28524,\n  \"peshawar</w>\": 29230,\n  \"pesky</w>\": 42512,\n  \"pesos</w>\": 47872,\n  \"pessi\": 43902,\n  \"pest\": 20130,\n  \"pest</w>\": 9425,\n  \"pesticide</w>\": 48481,\n  \"pesticides</w>\": 37868,\n  \"pesto</w>\": 26186,\n  \"pests</w>\": 41919,\n  \"pet\": 2167,\n  \"pet</w>\": 3703,\n  \"peta</w>\": 28785,\n  \"petal\": 38430,\n  \"petal</w>\": 40469,\n  \"petals</w>\": 26064,\n  \"petday</w>\": 45314,\n  \"pete\": 14479,\n  \"pete</w>\": 8571,\n  \"peter\": 5093,\n  \"peter</w>\": 3696,\n  \"peterborough</w>\": 26012,\n  \"peters</w>\": 16336,\n  \"petersburg</w>\": 21052,\n  \"petersen</w>\": 39794,\n  \"peterson</w>\": 16877,\n  \"peth</w>\": 48920,\n  \"petit\": 36437,\n  \"petit</w>\": 21276,\n  \"petite</w>\": 27213,\n  \"petition</w>\": 10975,\n  \"petitions</w>\": 43536,\n  \"petr\": 29808,\n  \"petra</w>\": 31300,\n  \"petre\": 47179,\n  \"petri\": 31831,\n  \"petro\": 8716,\n  \"petrol</w>\": 18149,\n  \"petroleum</w>\": 22063,\n  \"petron\": 42875,\n  \"pets</w>\": 7663,\n  \"pett\": 27051,\n  \"petti\": 48001,\n  \"petting</w>\": 44334,\n  \"petty</w>\": 17324,\n  \"peu\": 21411,\n  \"peuge\": 22893,\n  \"peugeot</w>\": 24129,\n  \"pew\": 21608,\n  \"pew</w>\": 30783,\n  \"pewdie\": 41882,\n  \"pewdiepie</w>\": 42563,\n  \"pex</w>\": 43765,\n  \"pey\": 14966,\n  \"pey</w>\": 30933,\n  \"peyton\": 49254,\n  \"peyton</w>\": 20307,\n  \"pez\": 45798,\n  \"pez</w>\": 10482,\n  \"pf\": 16680,\n  \"pf</w>\": 12572,\n  \"pfa</w>\": 47839,\n  \"pfc</w>\": 35007,\n  \"pff</w>\": 44121,\n  \"pfi\": 29810,\n  \"pfw</w>\": 31229,\n  \"pg\": 12476,\n  \"pg</w>\": 5211,\n  \"pga</w>\": 13351,\n  \"pgat\": 36514,\n  \"pgatour</w>\": 40094,\n  \"pgh\": 44862,\n  \"pgh</w>\": 30031,\n  \"pgs</w>\": 49204,\n  \"ph\": 745,\n  \"ph</w>\": 2042,\n  \"pha\": 4443,\n  \"pha</w>\": 26255,\n  \"phal\": 19962,\n  \"phan\": 8731,\n  \"phan</w>\": 40126,\n  \"phant\": 36998,\n  \"phantom\": 37688,\n  \"phantom</w>\": 14490,\n  \"phar\": 5570,\n  \"phara\": 35792,\n  \"pharaoh</w>\": 40437,\n  \"pharm</w>\": 45761,\n  \"pharma</w>\": 17831,\n  \"pharmac\": 8193,\n  \"pharmaceu\": 19490,\n  \"pharmaceutical</w>\": 25217,\n  \"pharmaceuticals</w>\": 44623,\n  \"pharmacist</w>\": 41024,\n  \"pharmacists</w>\": 44337,\n  \"pharmacy</w>\": 15293,\n  \"pharo\": 42308,\n  \"pharoah</w>\": 49287,\n  \"pharrell</w>\": 31316,\n  \"phase</w>\": 8304,\n  \"phases</w>\": 35337,\n  \"phat</w>\": 42492,\n  \"phc</w>\": 41102,\n  \"phd\": 20875,\n  \"phd</w>\": 8472,\n  \"phdchat</w>\": 39564,\n  \"phdlife</w>\": 39638,\n  \"phe\": 4787,\n  \"phe</w>\": 19853,\n  \"pheasant</w>\": 41983,\n  \"phee</w>\": 41292,\n  \"phel\": 23711,\n  \"phelps</w>\": 27128,\n  \"phen\": 7718,\n  \"pheno\": 47336,\n  \"phenom\": 31673,\n  \"phenom</w>\": 39618,\n  \"phenomen\": 11304,\n  \"phenomena</w>\": 41538,\n  \"phenomenal</w>\": 15035,\n  \"phenomenon</w>\": 24464,\n  \"pher\": 9194,\n  \"pher</w>\": 19828,\n  \"phers</w>\": 29531,\n  \"pherson</w>\": 36421,\n  \"phew</w>\": 10295,\n  \"phi\": 2239,\n  \"phi</w>\": 12220,\n  \"phia</w>\": 9228,\n  \"phic</w>\": 3977,\n  \"phie</w>\": 30237,\n  \"phies</w>\": 17062,\n  \"phil\": 2821,\n  \"phil</w>\": 6199,\n  \"phila</w>\": 47443,\n  \"philadel\": 9428,\n  \"philadelphia</w>\": 9749,\n  \"philanthro\": 16587,\n  \"philanthropist</w>\": 44153,\n  \"philanthropy</w>\": 25047,\n  \"philately</w>\": 33695,\n  \"phile</w>\": 36543,\n  \"philharmon\": 25228,\n  \"philharmonic</w>\": 31699,\n  \"phili\": 4277,\n  \"philia</w>\": 46654,\n  \"philip\": 20748,\n  \"philip</w>\": 11074,\n  \"philipp\": 5623,\n  \"philipp</w>\": 47591,\n  \"philippe</w>\": 20942,\n  \"philippine</w>\": 17629,\n  \"philippines</w>\": 8149,\n  \"philips</w>\": 25175,\n  \"phill\": 42346,\n  \"phill</w>\": 48272,\n  \"philli\": 6456,\n  \"phillies</w>\": 18748,\n  \"phillip\": 48832,\n  \"phillip</w>\": 19323,\n  \"phillips</w>\": 11041,\n  \"philly\": 19545,\n  \"philly</w>\": 7785,\n  \"philos\": 8395,\n  \"philosop\": 20349,\n  \"philosoph\": 10187,\n  \"philosopher</w>\": 25220,\n  \"philosophical</w>\": 32628,\n  \"philosophy</w>\": 12213,\n  \"phils</w>\": 38573,\n  \"phin</w>\": 33816,\n  \"phine</w>\": 40985,\n  \"phins</w>\": 40210,\n  \"phish</w>\": 36897,\n  \"phishing</w>\": 36546,\n  \"phl</w>\": 25603,\n  \"pho\": 816,\n  \"pho</w>\": 22707,\n  \"phobia</w>\": 28749,\n  \"phoe\": 22673,\n  \"phoebe</w>\": 27582,\n  \"phoeni\": 6778,\n  \"phoenix\": 20615,\n  \"phoenix</w>\": 7793,\n  \"phol</w>\": 48140,\n  \"phon\": 19602,\n  \"phon</w>\": 31115,\n  \"phone\": 15486,\n  \"phone</w>\": 1951,\n  \"phones</w>\": 6351,\n  \"phony</w>\": 31925,\n  \"phora</w>\": 31363,\n  \"phosp\": 22638,\n  \"photo\": 1153,\n  \"photo</w>\": 1125,\n  \"photobomb</w>\": 37075,\n  \"photobook</w>\": 41894,\n  \"photog</w>\": 28115,\n  \"photogenic</w>\": 36108,\n  \"photogra\": 36754,\n  \"photograph\": 1688,\n  \"photograph</w>\": 8853,\n  \"photographed</w>\": 11573,\n  \"photographer</w>\": 5748,\n  \"photographers</w>\": 17141,\n  \"photographic</w>\": 22053,\n  \"photographing</w>\": 30074,\n  \"photographs</w>\": 15759,\n  \"photography\": 33183,\n  \"photography</w>\": 2108,\n  \"photom\": 32223,\n  \"photoo\": 11106,\n  \"photooftheday</w>\": 11933,\n  \"photos</w>\": 2479,\n  \"photoshoot</w>\": 11121,\n  \"photoshop</w>\": 12419,\n  \"photoshopped</w>\": 35738,\n  \"phouse</w>\": 27848,\n  \"php</w>\": 17370,\n  \"phra\": 12777,\n  \"phrase</w>\": 18809,\n  \"phrases</w>\": 35264,\n  \"phs</w>\": 16495,\n  \"phu\": 21274,\n  \"phuket</w>\": 34028,\n  \"phx\": 35466,\n  \"phx</w>\": 29507,\n  \"phy\": 6484,\n  \"phy</w>\": 4292,\n  \"phyl\": 35600,\n  \"phyllis</w>\": 37844,\n  \"phys\": 3734,\n  \"phys</w>\": 37894,\n  \"physi\": 13782,\n  \"physic\": 46641,\n  \"physical\": 44127,\n  \"physical</w>\": 6671,\n  \"physically</w>\": 18105,\n  \"physician</w>\": 21055,\n  \"physicians</w>\": 26702,\n  \"physicist</w>\": 29052,\n  \"physics</w>\": 9369,\n  \"physio\": 29574,\n  \"physio</w>\": 29177,\n  \"physiology</w>\": 32349,\n  \"physique</w>\": 42884,\n  \"phyto\": 42197,\n  \"pi\": 741,\n  \"pi</w>\": 5357,\n  \"pia</w>\": 8918,\n  \"pian</w>\": 24637,\n  \"pianist</w>\": 21048,\n  \"piano\": 49278,\n  \"piano</w>\": 7894,\n  \"pianos</w>\": 47904,\n  \"piazza</w>\": 28496,\n  \"pic\": 901,\n  \"pic</w>\": 1282,\n  \"pical</w>\": 5482,\n  \"picard</w>\": 48507,\n  \"picasso</w>\": 21481,\n  \"piccad\": 33876,\n  \"piccadilly</w>\": 37287,\n  \"piccollage</w>\": 43621,\n  \"pick\": 6379,\n  \"pick</w>\": 3142,\n  \"picked</w>\": 6018,\n  \"picker</w>\": 43105,\n  \"pickering</w>\": 47605,\n  \"picket</w>\": 33559,\n  \"picking</w>\": 9545,\n  \"pickle</w>\": 24570,\n  \"pickled</w>\": 21705,\n  \"pickles</w>\": 25001,\n  \"picks</w>\": 8551,\n  \"pickup</w>\": 15382,\n  \"pickups</w>\": 33383,\n  \"picnic</w>\": 12007,\n  \"pico</w>\": 23363,\n  \"picoftheday</w>\": 18319,\n  \"pics</w>\": 2559,\n  \"pict</w>\": 18778,\n  \"pictorial</w>\": 40640,\n  \"picture\": 11663,\n  \"picture</w>\": 1674,\n  \"pictured</w>\": 7647,\n  \"pictures</w>\": 3646,\n  \"picturesque</w>\": 24894,\n  \"pid</w>\": 5225,\n  \"piday</w>\": 48056,\n  \"pie\": 12065,\n  \"pie</w>\": 5319,\n  \"piece\": 39632,\n  \"piece</w>\": 2754,\n  \"pieces</w>\": 6194,\n  \"pied\": 24686,\n  \"pied</w>\": 12713,\n  \"piedmont</w>\": 39691,\n  \"pier\": 5641,\n  \"pier</w>\": 11348,\n  \"pierc\": 49216,\n  \"pierce\": 48462,\n  \"pierce</w>\": 16782,\n  \"pierced</w>\": 32799,\n  \"piercing</w>\": 22557,\n  \"piero</w>\": 43125,\n  \"pierre\": 34670,\n  \"pierre</w>\": 11985,\n  \"piers</w>\": 29030,\n  \"pies</w>\": 6898,\n  \"pieter</w>\": 44801,\n  \"pietro</w>\": 42169,\n  \"piff</w>\": 40719,\n  \"pig\": 12009,\n  \"pig</w>\": 9619,\n  \"pigeon</w>\": 18008,\n  \"pigeons</w>\": 32910,\n  \"piggy</w>\": 28245,\n  \"pigment</w>\": 40284,\n  \"pigs</w>\": 16228,\n  \"pik</w>\": 48539,\n  \"pika</w>\": 47372,\n  \"pikach\": 27268,\n  \"pikachu</w>\": 28107,\n  \"pike\": 33457,\n  \"pike</w>\": 14011,\n  \"pil\": 2893,\n  \"pil</w>\": 20645,\n  \"pilates</w>\": 29518,\n  \"pile\": 44403,\n  \"pile</w>\": 13930,\n  \"piled</w>\": 26873,\n  \"piles</w>\": 31968,\n  \"pilgri\": 13966,\n  \"pilgrim</w>\": 32662,\n  \"pilgrimage</w>\": 24335,\n  \"pilgrims</w>\": 31370,\n  \"piling</w>\": 43050,\n  \"pilip\": 27234,\n  \"pilipinas</w>\": 32392,\n  \"pill\": 14830,\n  \"pill</w>\": 19226,\n  \"pillar</w>\": 17322,\n  \"pillars</w>\": 22054,\n  \"pillow\": 42237,\n  \"pillow</w>\": 12182,\n  \"pillows</w>\": 26499,\n  \"pills</w>\": 23964,\n  \"pilo\": 37526,\n  \"pilot\": 31619,\n  \"pilot</w>\": 6687,\n  \"pilots</w>\": 15586,\n  \"pilsner</w>\": 47153,\n  \"pim\": 15285,\n  \"pim</w>\": 35472,\n  \"pimp\": 35789,\n  \"pin\": 2629,\n  \"pin</w>\": 5164,\n  \"pinball</w>\": 31679,\n  \"pinch</w>\": 26114,\n  \"pine\": 9398,\n  \"pine</w>\": 7374,\n  \"pineapple</w>\": 14831,\n  \"pines</w>\": 20338,\n  \"ping\": 23720,\n  \"ping</w>\": 2089,\n  \"pinion</w>\": 40557,\n  \"pink\": 11151,\n  \"pink</w>\": 3360,\n  \"pinkfloyd</w>\": 48520,\n  \"pinky</w>\": 29803,\n  \"pinn\": 31448,\n  \"pinnacle</w>\": 32754,\n  \"pinned</w>\": 12165,\n  \"pinning</w>\": 44515,\n  \"pino</w>\": 36633,\n  \"pinot\": 41399,\n  \"pinot</w>\": 21146,\n  \"pinoy\": 43578,\n  \"pinoy</w>\": 35258,\n  \"pins</w>\": 14619,\n  \"pinst\": 41173,\n  \"pint\": 42537,\n  \"pint</w>\": 13584,\n  \"pinterest</w>\": 15379,\n  \"pinto</w>\": 35992,\n  \"pints</w>\": 27935,\n  \"pinup</w>\": 37349,\n  \"pio</w>\": 22108,\n  \"pion\": 36728,\n  \"pion</w>\": 29190,\n  \"pione\": 7975,\n  \"pioneer\": 34892,\n  \"pioneer</w>\": 12459,\n  \"pioneering</w>\": 25933,\n  \"pioneers</w>\": 22383,\n  \"pious</w>\": 42441,\n  \"pip</w>\": 30854,\n  \"pipe\": 29333,\n  \"pipe</w>\": 10459,\n  \"pipel\": 12387,\n  \"pipeline</w>\": 14151,\n  \"pipelines</w>\": 39683,\n  \"piper\": 47052,\n  \"piper</w>\": 16293,\n  \"pipes</w>\": 16991,\n  \"piping</w>\": 40744,\n  \"pippa</w>\": 47672,\n  \"pir\": 4351,\n  \"pir</w>\": 38899,\n  \"piracy</w>\": 39452,\n  \"piran\": 49034,\n  \"pirate\": 38680,\n  \"pirate</w>\": 13592,\n  \"pirates</w>\": 10442,\n  \"pire\": 16613,\n  \"pires</w>\": 14988,\n  \"pis\": 9230,\n  \"pis</w>\": 44441,\n  \"pisa</w>\": 43632,\n  \"pisces</w>\": 45982,\n  \"piss</w>\": 20818,\n  \"pissed</w>\": 17989,\n  \"pist\": 15556,\n  \"pist</w>\": 32826,\n  \"pistachi\": 29760,\n  \"pistachio</w>\": 36320,\n  \"pistol</w>\": 20480,\n  \"piston</w>\": 48236,\n  \"pistons</w>\": 27242,\n  \"pistor\": 48162,\n  \"pit\": 2946,\n  \"pit</w>\": 7476,\n  \"pita</w>\": 27070,\n  \"pitbull</w>\": 25295,\n  \"pitch\": 8992,\n  \"pitch</w>\": 5872,\n  \"pitched</w>\": 28447,\n  \"pitcher</w>\": 13445,\n  \"pitchers</w>\": 27835,\n  \"pitches</w>\": 21005,\n  \"pitching</w>\": 16455,\n  \"piti\": 47568,\n  \"pits</w>\": 24144,\n  \"pitt\": 7607,\n  \"pitt</w>\": 15599,\n  \"pitts\": 9531,\n  \"pittsburgh</w>\": 10453,\n  \"pity</w>\": 24380,\n  \"pius</w>\": 39988,\n  \"pivo\": 18009,\n  \"pivot</w>\": 31805,\n  \"pivotal</w>\": 31432,\n  \"pix\": 6185,\n  \"pix</w>\": 13088,\n  \"pixar</w>\": 27493,\n  \"pixel\": 14384,\n  \"pixel</w>\": 13241,\n  \"pixelart</w>\": 18516,\n  \"pixels</w>\": 34099,\n  \"pixie</w>\": 35573,\n  \"piyu\": 30772,\n  \"piyush\": 36191,\n  \"piyushgoyal</w>\": 45318,\n  \"pizz\": 3897,\n  \"pizza</w>\": 4474,\n  \"pizzas</w>\": 30647,\n  \"pizzeria</w>\": 44174,\n  \"pj\": 12524,\n  \"pj</w>\": 17179,\n  \"pjnet</w>\": 22011,\n  \"pjs</w>\": 36009,\n  \"pk\": 10149,\n  \"pk</w>\": 10991,\n  \"pkg</w>\": 49011,\n  \"pkk</w>\": 47480,\n  \"pknot</w>\": 41779,\n  \"pkwy</w>\": 36827,\n  \"pl\": 712,\n  \"pl</w>\": 5678,\n  \"pla\": 841,\n  \"pla</w>\": 19945,\n  \"plac\": 2331,\n  \"place\": 14884,\n  \"place</w>\": 1445,\n  \"placed</w>\": 9729,\n  \"placement</w>\": 16724,\n  \"placements</w>\": 43885,\n  \"placer</w>\": 49170,\n  \"places</w>\": 4448,\n  \"placing</w>\": 18531,\n  \"plague</w>\": 25360,\n  \"plaid</w>\": 23291,\n  \"plain\": 22776,\n  \"plain</w>\": 10709,\n  \"plains</w>\": 16345,\n  \"plan\": 1740,\n  \"plan</w>\": 2970,\n  \"pland</w>\": 24801,\n  \"plane\": 22728,\n  \"plane</w>\": 5363,\n  \"planes</w>\": 12581,\n  \"planet\": 16833,\n  \"planet</w>\": 5172,\n  \"planetary</w>\": 28361,\n  \"planets</w>\": 22315,\n  \"plank</w>\": 30991,\n  \"plankton</w>\": 48249,\n  \"plann\": 6409,\n  \"planned</w>\": 8169,\n  \"planner</w>\": 18083,\n  \"planners</w>\": 33664,\n  \"planning</w>\": 4446,\n  \"plano</w>\": 34063,\n  \"plans</w>\": 4181,\n  \"plant\": 8521,\n  \"plant</w>\": 3912,\n  \"plantation</w>\": 20014,\n  \"plantbased</w>\": 33720,\n  \"planted</w>\": 14286,\n  \"planter</w>\": 34453,\n  \"planters</w>\": 43661,\n  \"planting</w>\": 13922,\n  \"plants</w>\": 5829,\n  \"plaque</w>\": 16097,\n  \"plaques</w>\": 45610,\n  \"plar</w>\": 26754,\n  \"plas\": 45673,\n  \"plasma</w>\": 24999,\n  \"plaster</w>\": 31980,\n  \"plastic\": 15645,\n  \"plastic</w>\": 6102,\n  \"plasticpollution</w>\": 47129,\n  \"plastics</w>\": 20999,\n  \"plasticsurgery</w>\": 48555,\n  \"plat\": 3172,\n  \"plata</w>\": 46456,\n  \"plate\": 28744,\n  \"plate</w>\": 5135,\n  \"plateau</w>\": 29301,\n  \"plated</w>\": 21161,\n  \"plates</w>\": 11485,\n  \"platform</w>\": 5549,\n  \"platforms</w>\": 13551,\n  \"platin\": 10267,\n  \"plating</w>\": 44564,\n  \"platinum</w>\": 10979,\n  \"plato</w>\": 41101,\n  \"platoon</w>\": 41254,\n  \"platt\": 44459,\n  \"platt</w>\": 40097,\n  \"platte</w>\": 46785,\n  \"platter</w>\": 29071,\n  \"platz</w>\": 40878,\n  \"plau\": 39139,\n  \"play\": 1222,\n  \"play</w>\": 1453,\n  \"playa</w>\": 23756,\n  \"playable</w>\": 33885,\n  \"playback</w>\": 39194,\n  \"playbook</w>\": 34856,\n  \"playboy</w>\": 24383,\n  \"played</w>\": 3432,\n  \"player\": 24503,\n  \"player</w>\": 2477,\n  \"players</w>\": 3030,\n  \"playful</w>\": 23871,\n  \"playground</w>\": 15861,\n  \"playhouse</w>\": 23254,\n  \"playin</w>\": 24674,\n  \"playing\": 47368,\n  \"playing</w>\": 1629,\n  \"playlist</w>\": 9180,\n  \"playlists</w>\": 47183,\n  \"playo\": 5804,\n  \"playoff</w>\": 9655,\n  \"playoffs</w>\": 9548,\n  \"plays</w>\": 5134,\n  \"playstation</w>\": 11332,\n  \"playtime</w>\": 43037,\n  \"playwright</w>\": 32070,\n  \"plaza</w>\": 8943,\n  \"plc</w>\": 16827,\n  \"ple\": 926,\n  \"ple</w>\": 1619,\n  \"plea</w>\": 21956,\n  \"plead</w>\": 47539,\n  \"pleads</w>\": 31425,\n  \"plear\": 21362,\n  \"pleas\": 8481,\n  \"pleas</w>\": 48740,\n  \"pleasant</w>\": 12271,\n  \"please\": 41074,\n  \"please</w>\": 1474,\n  \"pleased</w>\": 6107,\n  \"pleasing</w>\": 32893,\n  \"pleasure</w>\": 5854,\n  \"pleasures</w>\": 29513,\n  \"pledge</w>\": 11507,\n  \"pledged</w>\": 36799,\n  \"pledges</w>\": 26746,\n  \"pledis</w>\": 41202,\n  \"plein</w>\": 43429,\n  \"plenary</w>\": 19891,\n  \"plenty</w>\": 7524,\n  \"pler</w>\": 17677,\n  \"ples</w>\": 6248,\n  \"pless\": 39821,\n  \"pless</w>\": 17059,\n  \"plets</w>\": 43230,\n  \"plex\": 23765,\n  \"plex</w>\": 15241,\n  \"pley</w>\": 19543,\n  \"pli\": 30001,\n  \"pli</w>\": 45797,\n  \"plic\": 5806,\n  \"plicity</w>\": 19823,\n  \"plight</w>\": 40317,\n  \"plin\": 44531,\n  \"plin</w>\": 32335,\n  \"pline</w>\": 25376,\n  \"pling</w>\": 12899,\n  \"plings</w>\": 31184,\n  \"pll\": 47629,\n  \"pll</w>\": 25266,\n  \"pln</w>\": 48755,\n  \"plo\": 1778,\n  \"plo</w>\": 43523,\n  \"plor\": 34695,\n  \"plot</w>\": 9918,\n  \"plots</w>\": 25672,\n  \"plotting</w>\": 30751,\n  \"plough\": 33811,\n  \"plow</w>\": 38363,\n  \"pls</w>\": 5572,\n  \"plu\": 2052,\n  \"plug</w>\": 12628,\n  \"plugged</w>\": 23261,\n  \"plugin</w>\": 31278,\n  \"plugins</w>\": 48797,\n  \"plugs</w>\": 28083,\n  \"plum\": 26267,\n  \"plum</w>\": 16202,\n  \"plumb\": 21769,\n  \"plumber</w>\": 43478,\n  \"plumbing</w>\": 24647,\n  \"plume</w>\": 39495,\n  \"plun\": 15122,\n  \"plunge</w>\": 26506,\n  \"plur\": 44664,\n  \"plus</w>\": 3097,\n  \"plush</w>\": 18926,\n  \"pluto</w>\": 26380,\n  \"ply\": 17249,\n  \"ply</w>\": 28705,\n  \"plying</w>\": 36071,\n  \"plym\": 11907,\n  \"plymouth</w>\": 13786,\n  \"plz</w>\": 10538,\n  \"pm\": 13699,\n  \"pm</w>\": 990,\n  \"pmi</w>\": 41206,\n  \"pmln</w>\": 23208,\n  \"pmo\": 18782,\n  \"pmoindia</w>\": 20374,\n  \"pms</w>\": 44223,\n  \"pn\": 14431,\n  \"pn</w>\": 13774,\n  \"pnc</w>\": 37148,\n  \"pne\": 30966,\n  \"pneu\": 28714,\n  \"pneumonia</w>\": 42906,\n  \"png</w>\": 20992,\n  \"pnp</w>\": 25972,\n  \"pnpp\": 42175,\n  \"pnw</w>\": 31521,\n  \"po\": 628,\n  \"po</w>\": 3057,\n  \"poa</w>\": 43912,\n  \"poached</w>\": 27665,\n  \"poaching</w>\": 35140,\n  \"poc\": 13232,\n  \"poc</w>\": 27780,\n  \"pocaly\": 37987,\n  \"pocalypse</w>\": 42307,\n  \"poche\": 38336,\n  \"poche</w>\": 39022,\n  \"pocket\": 29147,\n  \"pocket</w>\": 8504,\n  \"pockets</w>\": 19566,\n  \"pocon\": 41850,\n  \"pod\": 3583,\n  \"pod</w>\": 7446,\n  \"podcast\": 39654,\n  \"podcast</w>\": 4294,\n  \"podcasting</w>\": 40106,\n  \"podcasts</w>\": 19392,\n  \"pode\": 33368,\n  \"poder\": 24960,\n  \"podernfamily</w>\": 26620,\n  \"podi\": 32853,\n  \"podium</w>\": 14093,\n  \"pods</w>\": 18776,\n  \"poe\": 4746,\n  \"poe</w>\": 19254,\n  \"poem</w>\": 9436,\n  \"poems</w>\": 15577,\n  \"poet\": 41019,\n  \"poet</w>\": 9872,\n  \"poetic</w>\": 26365,\n  \"poetry\": 20192,\n  \"poetry</w>\": 6038,\n  \"poetryday</w>\": 39255,\n  \"poets</w>\": 19804,\n  \"pof\": 40850,\n  \"poff</w>\": 28236,\n  \"pogba</w>\": 25998,\n  \"poign\": 29682,\n  \"poignant</w>\": 32138,\n  \"poin\": 9074,\n  \"point\": 13280,\n  \"point</w>\": 2301,\n  \"pointe</w>\": 24631,\n  \"pointed</w>\": 20703,\n  \"pointer</w>\": 29883,\n  \"pointers</w>\": 36760,\n  \"pointing</w>\": 19233,\n  \"pointless</w>\": 33586,\n  \"points</w>\": 3396,\n  \"pois\": 17008,\n  \"poise</w>\": 45087,\n  \"poised</w>\": 27354,\n  \"poison\": 30722,\n  \"poison</w>\": 17074,\n  \"poisoned</w>\": 43624,\n  \"poisoning</w>\": 25750,\n  \"poisonous</w>\": 37131,\n  \"pok\": 15387,\n  \"poke\": 6892,\n  \"poke</w>\": 23186,\n  \"pokemon\": 16239,\n  \"pokemon</w>\": 9528,\n  \"pokemongo</w>\": 23985,\n  \"poker\": 30735,\n  \"poker</w>\": 11865,\n  \"pokes</w>\": 40221,\n  \"poking</w>\": 49169,\n  \"pokÃ©\": 20656,\n  \"pokÃ©mon</w>\": 22066,\n  \"pol\": 977,\n  \"pol</w>\": 7649,\n  \"pola</w>\": 43876,\n  \"poland</w>\": 9834,\n  \"polar\": 21432,\n  \"polar</w>\": 12214,\n  \"polari\": 27919,\n  \"polaris</w>\": 37965,\n  \"polarized</w>\": 48437,\n  \"polaro\": 25237,\n  \"polaroid</w>\": 30427,\n  \"poldark</w>\": 41322,\n  \"pole\": 26682,\n  \"pole</w>\": 8170,\n  \"poles</w>\": 22585,\n  \"poli\": 9675,\n  \"poli</w>\": 5414,\n  \"polic\": 16126,\n  \"police\": 15535,\n  \"police</w>\": 2120,\n  \"policeman</w>\": 37713,\n  \"policemen</w>\": 47946,\n  \"polici\": 10819,\n  \"policies</w>\": 10993,\n  \"policing</w>\": 20969,\n  \"policy\": 30173,\n  \"policy</w>\": 4660,\n  \"polio</w>\": 30533,\n  \"polis</w>\": 16133,\n  \"polish\": 46941,\n  \"polish</w>\": 9632,\n  \"polished</w>\": 21478,\n  \"polishing</w>\": 43629,\n  \"polit\": 2247,\n  \"politan</w>\": 15337,\n  \"polite</w>\": 31497,\n  \"politi\": 40597,\n  \"politic\": 33333,\n  \"political\": 37744,\n  \"political</w>\": 4197,\n  \"politically</w>\": 24323,\n  \"politician</w>\": 15960,\n  \"politicians</w>\": 12914,\n  \"politico</w>\": 39403,\n  \"politics</w>\": 4929,\n  \"polk</w>\": 33317,\n  \"polka</w>\": 29476,\n  \"poll</w>\": 7032,\n  \"pollen</w>\": 27651,\n  \"pollin\": 19152,\n  \"pollinators</w>\": 36599,\n  \"polling</w>\": 18024,\n  \"pollo</w>\": 42755,\n  \"pollock</w>\": 37614,\n  \"polls</w>\": 11813,\n  \"pollu\": 8370,\n  \"polluted</w>\": 43346,\n  \"pollution</w>\": 10384,\n  \"polly</w>\": 31204,\n  \"polo\": 35928,\n  \"polo</w>\": 10229,\n  \"poly\": 6833,\n  \"poly</w>\": 18367,\n  \"polye\": 31730,\n  \"polyester</w>\": 38514,\n  \"polym\": 23626,\n  \"polymer</w>\": 29993,\n  \"polyne\": 38892,\n  \"polyvore</w>\": 24771,\n  \"pom\": 7548,\n  \"pom</w>\": 24280,\n  \"pome\": 27963,\n  \"pomegran\": 29326,\n  \"pomegranate</w>\": 32415,\n  \"pomer\": 35156,\n  \"pomona</w>\": 41690,\n  \"pompe\": 18352,\n  \"pompeii</w>\": 47775,\n  \"pompeo</w>\": 34351,\n  \"pompey</w>\": 35079,\n  \"pon\": 3809,\n  \"pon</w>\": 22391,\n  \"ponce</w>\": 43637,\n  \"pond</w>\": 10750,\n  \"ponder</w>\": 36863,\n  \"pondering</w>\": 47395,\n  \"ponds</w>\": 31033,\n  \"pone</w>\": 32183,\n  \"pong\": 40546,\n  \"pong</w>\": 17710,\n  \"ponies</w>\": 34157,\n  \"pons</w>\": 41255,\n  \"pont\": 47563,\n  \"pont</w>\": 22997,\n  \"ponte</w>\": 40892,\n  \"ponti\": 15527,\n  \"pontiac</w>\": 25373,\n  \"pontifex</w>\": 33566,\n  \"ponty\": 45152,\n  \"pony\": 24438,\n  \"pony</w>\": 12678,\n  \"ponytail</w>\": 43265,\n  \"poo\": 6601,\n  \"poo</w>\": 14389,\n  \"pooch</w>\": 37037,\n  \"poodle</w>\": 34961,\n  \"pooh</w>\": 27103,\n  \"pooja</w>\": 35676,\n  \"pool\": 12484,\n  \"pool</w>\": 2831,\n  \"poole</w>\": 26290,\n  \"pools</w>\": 18736,\n  \"poolside</w>\": 35509,\n  \"poon\": 33799,\n  \"poon</w>\": 36178,\n  \"poop</w>\": 23310,\n  \"poor\": 14528,\n  \"poor</w>\": 3665,\n  \"poorest</w>\": 40771,\n  \"poorly</w>\": 21101,\n  \"pop\": 6530,\n  \"pop</w>\": 2852,\n  \"popart</w>\": 47425,\n  \"popcorn</w>\": 15034,\n  \"pope\": 16994,\n  \"pope</w>\": 9283,\n  \"popefrancis</w>\": 37254,\n  \"poplar</w>\": 38726,\n  \"popo\": 38835,\n  \"popo</w>\": 35572,\n  \"popp\": 13156,\n  \"popped</w>\": 14934,\n  \"poppies</w>\": 30385,\n  \"poppin</w>\": 28536,\n  \"popping</w>\": 18152,\n  \"poppins</w>\": 41216,\n  \"poppy\": 32194,\n  \"poppy</w>\": 15447,\n  \"pops</w>\": 11705,\n  \"popsic\": 38481,\n  \"popu\": 3785,\n  \"popul\": 6593,\n  \"popular\": 15854,\n  \"popular</w>\": 4368,\n  \"popularity</w>\": 19235,\n  \"populated</w>\": 38420,\n  \"population</w>\": 8423,\n  \"populations</w>\": 23797,\n  \"populism</w>\": 48998,\n  \"populist</w>\": 49376,\n  \"popup</w>\": 33053,\n  \"por\": 817,\n  \"por</w>\": 7697,\n  \"pora</w>\": 23537,\n  \"porcel\": 19409,\n  \"porcelain</w>\": 20451,\n  \"porch</w>\": 17154,\n  \"pore</w>\": 28267,\n  \"pork\": 40379,\n  \"pork</w>\": 7897,\n  \"poro\": 48110,\n  \"porridge</w>\": 34924,\n  \"porsch\": 48009,\n  \"porsche\": 44049,\n  \"porsche</w>\": 8783,\n  \"port\": 1641,\n  \"port</w>\": 1418,\n  \"porta</w>\": 45037,\n  \"portable</w>\": 11949,\n  \"portage</w>\": 32087,\n  \"portal</w>\": 14982,\n  \"porte</w>\": 28654,\n  \"ported</w>\": 16879,\n  \"porter\": 28319,\n  \"porter</w>\": 10318,\n  \"porters</w>\": 15670,\n  \"portfoli\": 45766,\n  \"portfolio</w>\": 11938,\n  \"porth\": 37425,\n  \"porti\": 45760,\n  \"porting</w>\": 26052,\n  \"portion</w>\": 13739,\n  \"portions</w>\": 22914,\n  \"portland\": 38366,\n  \"portland</w>\": 8880,\n  \"portman</w>\": 34755,\n  \"porto\": 24853,\n  \"porto</w>\": 18947,\n  \"portobello</w>\": 48025,\n  \"portra\": 4175,\n  \"portrait\": 39312,\n  \"portrait</w>\": 5352,\n  \"portraits</w>\": 14203,\n  \"portray</w>\": 46282,\n  \"portrayal</w>\": 39238,\n  \"portrayed</w>\": 36093,\n  \"ports</w>\": 7734,\n  \"portsm\": 17063,\n  \"portsmouth</w>\": 19074,\n  \"portu\": 7159,\n  \"portugal</w>\": 9503,\n  \"portugue\": 17498,\n  \"portuguese</w>\": 18019,\n  \"pos\": 1780,\n  \"pos</w>\": 11839,\n  \"pose\": 25478,\n  \"pose</w>\": 4230,\n  \"posed</w>\": 5206,\n  \"posei\": 47270,\n  \"poser</w>\": 46899,\n  \"poses</w>\": 9773,\n  \"posey</w>\": 34852,\n  \"posh</w>\": 26748,\n  \"posing</w>\": 10518,\n  \"posit\": 28793,\n  \"positi\": 7895,\n  \"position</w>\": 4657,\n  \"positioned</w>\": 34482,\n  \"positioning</w>\": 30657,\n  \"positions</w>\": 12188,\n  \"positive\": 21811,\n  \"positive</w>\": 4844,\n  \"positively</w>\": 24688,\n  \"positivity</w>\": 19966,\n  \"poss</w>\": 39745,\n  \"posse\": 17414,\n  \"posse</w>\": 28413,\n  \"possess</w>\": 36810,\n  \"possessed</w>\": 36220,\n  \"possession</w>\": 16154,\n  \"possessions</w>\": 40588,\n  \"possi\": 2521,\n  \"possibilities</w>\": 17932,\n  \"possibility</w>\": 18517,\n  \"possible</w>\": 3134,\n  \"possibly</w>\": 8601,\n  \"possum</w>\": 38575,\n  \"post\": 3489,\n  \"post</w>\": 1549,\n  \"postage</w>\": 27570,\n  \"postal</w>\": 21687,\n  \"postcard</w>\": 14785,\n  \"postcards</w>\": 23922,\n  \"postdoc</w>\": 41013,\n  \"posted</w>\": 4752,\n  \"poster\": 22881,\n  \"poster</w>\": 3574,\n  \"posters</w>\": 9673,\n  \"postgame</w>\": 34873,\n  \"postgraduate</w>\": 31997,\n  \"posthum\": 42410,\n  \"posting</w>\": 7559,\n  \"postman</w>\": 38285,\n  \"postpon\": 23247,\n  \"postponed</w>\": 25097,\n  \"posts</w>\": 7824,\n  \"postseason</w>\": 24521,\n  \"posture</w>\": 29681,\n  \"posure</w>\": 35539,\n  \"pot\": 3547,\n  \"pot</w>\": 5168,\n  \"potam\": 45825,\n  \"potassi\": 36889,\n  \"potassium</w>\": 37147,\n  \"potat\": 5975,\n  \"potato</w>\": 8527,\n  \"potatoes</w>\": 11567,\n  \"potd</w>\": 28765,\n  \"pote</w>\": 41869,\n  \"poten\": 4454,\n  \"potent</w>\": 26082,\n  \"potenti\": 44104,\n  \"potential</w>\": 5100,\n  \"potentially</w>\": 16508,\n  \"potholes</w>\": 47506,\n  \"potion</w>\": 46055,\n  \"potom\": 38848,\n  \"potomac</w>\": 43372,\n  \"pots</w>\": 19234,\n  \"pott\": 28698,\n  \"potted</w>\": 48581,\n  \"potter\": 24975,\n  \"potter</w>\": 9026,\n  \"pottery</w>\": 18396,\n  \"potts</w>\": 39839,\n  \"potty</w>\": 43569,\n  \"potus</w>\": 8740,\n  \"pou\": 9423,\n  \"pouch</w>\": 26811,\n  \"poul\": 22485,\n  \"poultry</w>\": 31005,\n  \"poun\": 33719,\n  \"pound\": 33809,\n  \"pound</w>\": 10674,\n  \"pounding</w>\": 46544,\n  \"pounds</w>\": 10752,\n  \"pour\": 33112,\n  \"pour</w>\": 8180,\n  \"poured</w>\": 26621,\n  \"pouring</w>\": 16098,\n  \"pours</w>\": 26005,\n  \"pout</w>\": 39621,\n  \"poutine</w>\": 43768,\n  \"pov</w>\": 25731,\n  \"pover\": 8432,\n  \"pover</w>\": 29464,\n  \"poverty</w>\": 9095,\n  \"pow\": 1317,\n  \"pow</w>\": 17745,\n  \"powder\": 32427,\n  \"powder</w>\": 9674,\n  \"powe\": 36955,\n  \"powell</w>\": 13305,\n  \"power\": 2789,\n  \"power</w>\": 1807,\n  \"powerball</w>\": 47803,\n  \"powered\": 45442,\n  \"powered</w>\": 7332,\n  \"powerful</w>\": 4875,\n  \"powerhouse</w>\": 22858,\n  \"powering</w>\": 16231,\n  \"powerof\": 31961,\n  \"powerpoint</w>\": 38940,\n  \"powerrangers</w>\": 40620,\n  \"powers</w>\": 9422,\n  \"pox</w>\": 43649,\n  \"poy</w>\": 34737,\n  \"poyn\": 47655,\n  \"poz\": 39953,\n  \"pp\": 604,\n  \"pp</w>\": 4186,\n  \"ppa</w>\": 10416,\n  \"ppard</w>\": 23391,\n  \"ppc</w>\": 27778,\n  \"ppe\": 24573,\n  \"ppe</w>\": 11867,\n  \"pped</w>\": 1873,\n  \"ppel</w>\": 46523,\n  \"ppen</w>\": 30663,\n  \"pper\": 6719,\n  \"pper</w>\": 2440,\n  \"ppers</w>\": 5232,\n  \"ppery</w>\": 27833,\n  \"ppet</w>\": 20744,\n  \"ppets</w>\": 25849,\n  \"ppg</w>\": 27433,\n  \"ppi</w>\": 9594,\n  \"ppie</w>\": 33795,\n  \"ppin</w>\": 8076,\n  \"pping\": 22214,\n  \"pping</w>\": 1682,\n  \"ppings</w>\": 35687,\n  \"ppl</w>\": 6758,\n  \"pple</w>\": 12302,\n  \"ppm</w>\": 42053,\n  \"ppo</w>\": 10215,\n  \"ppor\": 37613,\n  \"ppp</w>\": 14017,\n  \"pps</w>\": 10683,\n  \"ppv</w>\": 38864,\n  \"ppy\": 30360,\n  \"ppy</w>\": 3860,\n  \"pr\": 766,\n  \"pr</w>\": 4150,\n  \"pra\": 1865,\n  \"pra</w>\": 19285,\n  \"prab\": 17901,\n  \"prabhas</w>\": 29959,\n  \"prabhu</w>\": 31529,\n  \"prac\": 2243,\n  \"practi\": 29995,\n  \"practic\": 5495,\n  \"practical</w>\": 10792,\n  \"practically</w>\": 25588,\n  \"practice</w>\": 3349,\n  \"practiced</w>\": 36749,\n  \"practices</w>\": 9040,\n  \"practicing</w>\": 12750,\n  \"practise</w>\": 38938,\n  \"practising</w>\": 36478,\n  \"practiti\": 19909,\n  \"practitioner</w>\": 32591,\n  \"practitioners</w>\": 29045,\n  \"prada</w>\": 29456,\n  \"pradesh</w>\": 15384,\n  \"prado</w>\": 44141,\n  \"prag\": 31025,\n  \"prague</w>\": 14940,\n  \"prairi\": 12629,\n  \"prairie</w>\": 14753,\n  \"praise</w>\": 10013,\n  \"praised</w>\": 27649,\n  \"praises</w>\": 23049,\n  \"praising</w>\": 36961,\n  \"prakash\": 43708,\n  \"prakash</w>\": 25366,\n  \"pram\": 47774,\n  \"pran\": 20048,\n  \"prank</w>\": 23654,\n  \"pras</w>\": 41562,\n  \"prasad</w>\": 29562,\n  \"prat\": 23069,\n  \"prati\": 45773,\n  \"pratt\": 37863,\n  \"pratt</w>\": 23396,\n  \"prawn</w>\": 33102,\n  \"prawns</w>\": 34903,\n  \"pray\": 12671,\n  \"pray</w>\": 6041,\n  \"prayed</w>\": 34665,\n  \"prayer\": 41452,\n  \"prayer</w>\": 6583,\n  \"prayers</w>\": 8393,\n  \"prayfor\": 18443,\n  \"praying</w>\": 11550,\n  \"prays</w>\": 46602,\n  \"prc</w>\": 28781,\n  \"pre\": 679,\n  \"pre</w>\": 2900,\n  \"preach</w>\": 22545,\n  \"preacher</w>\": 29357,\n  \"preaching</w>\": 23642,\n  \"precau\": 36532,\n  \"precautions</w>\": 47845,\n  \"prece\": 15361,\n  \"preci\": 5470,\n  \"precin\": 27908,\n  \"precinct</w>\": 32587,\n  \"precious</w>\": 8226,\n  \"precipit\": 27463,\n  \"precipitation</w>\": 33399,\n  \"precise</w>\": 24457,\n  \"precisely</w>\": 34954,\n  \"precision\": 44021,\n  \"precision</w>\": 15621,\n  \"pred\": 40370,\n  \"predat\": 13364,\n  \"predator</w>\": 20653,\n  \"predators</w>\": 25569,\n  \"prede\": 38454,\n  \"predecess\": 38963,\n  \"predic\": 4876,\n  \"predict</w>\": 16900,\n  \"predictable</w>\": 25344,\n  \"predicted</w>\": 18702,\n  \"predicting</w>\": 30414,\n  \"prediction</w>\": 16296,\n  \"predictions</w>\": 15125,\n  \"predictive</w>\": 29798,\n  \"predicts</w>\": 25960,\n  \"preds</w>\": 40125,\n  \"pree</w>\": 47026,\n  \"preet</w>\": 30131,\n  \"prefe\": 14542,\n  \"prefecture</w>\": 32890,\n  \"prefer\": 33426,\n  \"prefer</w>\": 11450,\n  \"preference</w>\": 35057,\n  \"preferences</w>\": 38118,\n  \"preferred</w>\": 18772,\n  \"prefers</w>\": 38528,\n  \"pregame</w>\": 18575,\n  \"pregn\": 7190,\n  \"pregnancy</w>\": 12769,\n  \"pregnant</w>\": 11195,\n  \"prehistoric</w>\": 32750,\n  \"prejudice</w>\": 28337,\n  \"preli\": 15523,\n  \"prelimin\": 19990,\n  \"preliminary</w>\": 20997,\n  \"prelims</w>\": 43223,\n  \"prelude</w>\": 42966,\n  \"prem\": 32090,\n  \"prem</w>\": 21724,\n  \"premature</w>\": 39253,\n  \"premi\": 2413,\n  \"premier\": 16996,\n  \"premier</w>\": 5539,\n  \"premiere</w>\": 5367,\n  \"premiered</w>\": 27652,\n  \"premieres</w>\": 19907,\n  \"premiering</w>\": 32615,\n  \"premierleague</w>\": 22608,\n  \"premiers</w>\": 44883,\n  \"premiership</w>\": 23665,\n  \"premiosm\": 38460,\n  \"premiosmtvmiaw</w>\": 38630,\n  \"premise</w>\": 45952,\n  \"premises</w>\": 27266,\n  \"premium</w>\": 8011,\n  \"pren\": 20801,\n  \"preneur</w>\": 46288,\n  \"preorder</w>\": 16703,\n  \"preorders</w>\": 45985,\n  \"prep\": 6430,\n  \"prep</w>\": 7277,\n  \"prepa\": 26270,\n  \"prepaid</w>\": 42934,\n  \"prepar\": 4968,\n  \"preparation</w>\": 11651,\n  \"preparations</w>\": 19135,\n  \"prepare</w>\": 7014,\n  \"prepared</w>\": 7677,\n  \"preparedness</w>\": 29492,\n  \"prepares</w>\": 16375,\n  \"preparing</w>\": 7365,\n  \"prepped</w>\": 34379,\n  \"prepping</w>\": 16459,\n  \"preps</w>\": 14765,\n  \"prequel</w>\": 40461,\n  \"pres\": 1385,\n  \"pres</w>\": 8529,\n  \"presale</w>\": 27135,\n  \"presby\": 30447,\n  \"presbyter\": 33959,\n  \"presbyterian</w>\": 35370,\n  \"preschool</w>\": 24354,\n  \"prescott</w>\": 29392,\n  \"prescri\": 14851,\n  \"prescribed</w>\": 36968,\n  \"prescription</w>\": 23061,\n  \"preseason</w>\": 13813,\n  \"presen\": 16742,\n  \"presence</w>\": 8848,\n  \"present\": 2344,\n  \"present</w>\": 2881,\n  \"presentation</w>\": 4594,\n  \"presentations</w>\": 16998,\n  \"presented</w>\": 4587,\n  \"presenter</w>\": 18587,\n  \"presenters</w>\": 32759,\n  \"presenting</w>\": 5339,\n  \"presents</w>\": 4215,\n  \"preserv\": 17616,\n  \"preservation</w>\": 21074,\n  \"preserve</w>\": 15570,\n  \"preserved</w>\": 23161,\n  \"preserves</w>\": 44881,\n  \"preserving</w>\": 32315,\n  \"presi\": 1697,\n  \"presiden\": 43374,\n  \"presidency</w>\": 18077,\n  \"president\": 19900,\n  \"president</w>\": 1940,\n  \"presidente</w>\": 47363,\n  \"presidenti\": 48297,\n  \"presidential</w>\": 8503,\n  \"presidents</w>\": 16726,\n  \"presiding</w>\": 45298,\n  \"presley</w>\": 30013,\n  \"press\": 4124,\n  \"press</w>\": 2124,\n  \"pressed</w>\": 20080,\n  \"presser</w>\": 27826,\n  \"presses</w>\": 33748,\n  \"pressing</w>\": 20893,\n  \"pressure</w>\": 6083,\n  \"pressures</w>\": 38487,\n  \"prest\": 41840,\n  \"presti\": 12245,\n  \"prestige</w>\": 29328,\n  \"prestigious</w>\": 15888,\n  \"presto</w>\": 42211,\n  \"preston\": 37335,\n  \"preston</w>\": 15179,\n  \"presu\": 21667,\n  \"presumably</w>\": 42562,\n  \"pret\": 9652,\n  \"preten\": 15871,\n  \"pretend</w>\": 18111,\n  \"pretending</w>\": 21306,\n  \"pretoria</w>\": 36080,\n  \"prett\": 46667,\n  \"prettier</w>\": 31745,\n  \"prettiest</w>\": 22866,\n  \"pretty\": 18286,\n  \"pretty</w>\": 2111,\n  \"pretz\": 24890,\n  \"pretzel</w>\": 36707,\n  \"pretzels</w>\": 45468,\n  \"prev\": 20274,\n  \"prevail</w>\": 31637,\n  \"prevalence</w>\": 41729,\n  \"prevalent</w>\": 46260,\n  \"preven\": 29382,\n  \"prevent\": 26436,\n  \"prevent</w>\": 7968,\n  \"preventable</w>\": 44250,\n  \"prevented</w>\": 35356,\n  \"preventing</w>\": 21756,\n  \"prevention</w>\": 9500,\n  \"preventive</w>\": 40949,\n  \"prevents</w>\": 31746,\n  \"preview</w>\": 4449,\n  \"previews</w>\": 20279,\n  \"previous</w>\": 9252,\n  \"previously</w>\": 13359,\n  \"prey</w>\": 17131,\n  \"prez</w>\": 17956,\n  \"pri\": 955,\n  \"pri</w>\": 23400,\n  \"pric\": 24275,\n  \"price\": 13254,\n  \"price</w>\": 2827,\n  \"priced</w>\": 16934,\n  \"priceless</w>\": 15743,\n  \"prices</w>\": 5954,\n  \"pricing</w>\": 14800,\n  \"prick\": 43921,\n  \"prick</w>\": 46516,\n  \"pride\": 15323,\n  \"pride</w>\": 3436,\n  \"pridemonth</w>\": 41410,\n  \"prie\": 22477,\n  \"priest\": 38756,\n  \"priest</w>\": 14222,\n  \"priests</w>\": 30005,\n  \"prim\": 22004,\n  \"prima\": 35611,\n  \"prima</w>\": 33277,\n  \"primal</w>\": 36604,\n  \"primar\": 21579,\n  \"primaries</w>\": 46126,\n  \"primarily</w>\": 29465,\n  \"primark</w>\": 48329,\n  \"primary\": 35024,\n  \"primary</w>\": 5814,\n  \"primavera</w>\": 44899,\n  \"prime\": 14162,\n  \"prime</w>\": 5183,\n  \"primed</w>\": 45694,\n  \"primer</w>\": 22388,\n  \"primetime</w>\": 29763,\n  \"primitive</w>\": 37467,\n  \"primo</w>\": 43215,\n  \"primrose</w>\": 45891,\n  \"prin\": 1588,\n  \"prince\": 9457,\n  \"prince</w>\": 4735,\n  \"princes\": 45329,\n  \"princes</w>\": 30136,\n  \"princess\": 24123,\n  \"princess</w>\": 5079,\n  \"princesses</w>\": 34161,\n  \"princeton</w>\": 22433,\n  \"princi\": 5129,\n  \"principal\": 33599,\n  \"principal</w>\": 8860,\n  \"principals</w>\": 27524,\n  \"principle</w>\": 19595,\n  \"principles</w>\": 13755,\n  \"print\": 17851,\n  \"print</w>\": 3557,\n  \"printable</w>\": 29648,\n  \"printed</w>\": 7978,\n  \"printer</w>\": 14521,\n  \"printers</w>\": 27881,\n  \"printing</w>\": 7369,\n  \"printmaking</w>\": 38669,\n  \"prints</w>\": 7704,\n  \"prior\": 20328,\n  \"prior</w>\": 10572,\n  \"priorit\": 47773,\n  \"prioriti\": 28822,\n  \"priorities</w>\": 15232,\n  \"prioritize</w>\": 46715,\n  \"priority</w>\": 12451,\n  \"priory</w>\": 38665,\n  \"prisc\": 32468,\n  \"priscilla</w>\": 42396,\n  \"prise</w>\": 23343,\n  \"prism\": 49311,\n  \"prism</w>\": 34356,\n  \"prison\": 9281,\n  \"prison</w>\": 6622,\n  \"prisoner</w>\": 21427,\n  \"prisoners</w>\": 17460,\n  \"prisons</w>\": 26607,\n  \"pristine</w>\": 30618,\n  \"prit\": 41668,\n  \"prit</w>\": 37523,\n  \"prith\": 39173,\n  \"prius</w>\": 43561,\n  \"priv\": 3270,\n  \"privacy</w>\": 10437,\n  \"private\": 20362,\n  \"private</w>\": 4439,\n  \"privately</w>\": 32970,\n  \"privati\": 27379,\n  \"privi\": 8367,\n  \"privileg\": 18015,\n  \"privilege</w>\": 11537,\n  \"privileged</w>\": 18166,\n  \"prix</w>\": 10875,\n  \"priya</w>\": 31275,\n  \"priyan\": 16488,\n  \"priyanka</w>\": 31959,\n  \"priyankach\": 30030,\n  \"priyankachopra</w>\": 30264,\n  \"prize\": 48222,\n  \"prize</w>\": 4521,\n  \"prized</w>\": 38769,\n  \"prizes</w>\": 9268,\n  \"prk</w>\": 37094,\n  \"pro\": 644,\n  \"pro</w>\": 2630,\n  \"proactive</w>\": 33364,\n  \"prob\": 17706,\n  \"prob</w>\": 24007,\n  \"probab\": 3907,\n  \"probability</w>\": 32637,\n  \"probable</w>\": 42444,\n  \"probably</w>\": 4047,\n  \"probation</w>\": 36531,\n  \"probe</w>\": 14359,\n  \"probes</w>\": 48564,\n  \"probiotics</w>\": 49395,\n  \"proble\": 2719,\n  \"problem</w>\": 4324,\n  \"problematic</w>\": 33767,\n  \"problems</w>\": 4671,\n  \"probs</w>\": 16330,\n  \"probz</w>\": 34243,\n  \"proc\": 38417,\n  \"proce\": 4076,\n  \"procedu\": 18204,\n  \"procedural</w>\": 48177,\n  \"procedure</w>\": 20163,\n  \"procedures</w>\": 21109,\n  \"proceed\": 26664,\n  \"proceed</w>\": 33894,\n  \"proceedings</w>\": 26953,\n  \"proceeds</w>\": 11882,\n  \"process\": 17291,\n  \"process</w>\": 4078,\n  \"processed</w>\": 23816,\n  \"processes</w>\": 15169,\n  \"processing</w>\": 11737,\n  \"procession</w>\": 26288,\n  \"processor</w>\": 22838,\n  \"processors</w>\": 43634,\n  \"proclaimed</w>\": 34489,\n  \"proclamation</w>\": 32065,\n  \"procra\": 25361,\n  \"procrastin\": 25586,\n  \"procrastination</w>\": 42825,\n  \"procreate</w>\": 39336,\n  \"proctor</w>\": 47204,\n  \"procu\": 21001,\n  \"procurement</w>\": 23733,\n  \"prod\": 44349,\n  \"prod</w>\": 11991,\n  \"prodi\": 27759,\n  \"prodigy</w>\": 31973,\n  \"produ\": 27852,\n  \"produc\": 1471,\n  \"produce</w>\": 7529,\n  \"produced</w>\": 7479,\n  \"producer</w>\": 7064,\n  \"producers</w>\": 13883,\n  \"produces</w>\": 19940,\n  \"producing</w>\": 13579,\n  \"product\": 32602,\n  \"product</w>\": 4306,\n  \"production</w>\": 4146,\n  \"productions</w>\": 14166,\n  \"productive</w>\": 9697,\n  \"productivity</w>\": 12800,\n  \"products</w>\": 3964,\n  \"prof\": 15043,\n  \"prof</w>\": 5488,\n  \"profe\": 2611,\n  \"profess\": 5486,\n  \"professi\": 3705,\n  \"profession\": 8104,\n  \"profession</w>\": 19671,\n  \"professional\": 46007,\n  \"professional</w>\": 4774,\n  \"professionalism</w>\": 41252,\n  \"professionally</w>\": 33892,\n  \"professionals</w>\": 10165,\n  \"professor\": 47302,\n  \"professor</w>\": 6092,\n  \"professors</w>\": 27758,\n  \"profici\": 34685,\n  \"profile\": 14291,\n  \"profile</w>\": 6444,\n  \"profiles</w>\": 22070,\n  \"profiling</w>\": 37123,\n  \"profit\": 16941,\n  \"profit</w>\": 7909,\n  \"profitable</w>\": 25465,\n  \"profits</w>\": 13410,\n  \"profound\": 48245,\n  \"profound</w>\": 22998,\n  \"profs</w>\": 19260,\n  \"prog</w>\": 22219,\n  \"progno\": 46070,\n  \"program\": 4162,\n  \"program</w>\": 2737,\n  \"programme</w>\": 6322,\n  \"programmer</w>\": 37001,\n  \"programmes</w>\": 20468,\n  \"programming</w>\": 10831,\n  \"programs</w>\": 7345,\n  \"progre\": 7069,\n  \"progress</w>\": 4421,\n  \"progressi\": 23297,\n  \"progressing</w>\": 32346,\n  \"progression</w>\": 24772,\n  \"progressive</w>\": 12208,\n  \"progressives</w>\": 41709,\n  \"prohi\": 41124,\n  \"prohib\": 45040,\n  \"prohibition</w>\": 34440,\n  \"proj</w>\": 39156,\n  \"proje\": 48345,\n  \"projec\": 1610,\n  \"project\": 15911,\n  \"project</w>\": 1965,\n  \"projected</w>\": 22873,\n  \"projection</w>\": 22384,\n  \"projections</w>\": 34638,\n  \"projector</w>\": 27816,\n  \"projects</w>\": 5090,\n  \"proli\": 19710,\n  \"prolife</w>\": 32126,\n  \"prolifer\": 39018,\n  \"prolific</w>\": 27839,\n  \"prolly</w>\": 45968,\n  \"prolon\": 35379,\n  \"prolonged</w>\": 41972,\n  \"prom\": 40363,\n  \"prom</w>\": 7944,\n  \"prome\": 34355,\n  \"promen\": 33578,\n  \"promenade</w>\": 35522,\n  \"promethe\": 44183,\n  \"promin\": 35217,\n  \"prominent</w>\": 19172,\n  \"promis\": 3963,\n  \"promise</w>\": 6745,\n  \"promised</w>\": 11516,\n  \"promises</w>\": 12064,\n  \"promising</w>\": 14183,\n  \"promo\": 3037,\n  \"promo</w>\": 6755,\n  \"promos</w>\": 35044,\n  \"promote\": 47384,\n  \"promote</w>\": 8003,\n  \"promoted</w>\": 16395,\n  \"promoter</w>\": 33081,\n  \"promotes</w>\": 20169,\n  \"promoting</w>\": 9695,\n  \"promotion</w>\": 9259,\n  \"promotional</w>\": 17619,\n  \"promotions</w>\": 19142,\n  \"promp\": 11671,\n  \"prompt</w>\": 20198,\n  \"prompted</w>\": 45746,\n  \"prompts</w>\": 33490,\n  \"proms</w>\": 37759,\n  \"pron\": 13285,\n  \"prone</w>\": 30964,\n  \"pronoun\": 23022,\n  \"pronounce</w>\": 40489,\n  \"pronounced</w>\": 34109,\n  \"pronto</w>\": 44296,\n  \"proof\": 17020,\n  \"proof</w>\": 5248,\n  \"proofing</w>\": 35679,\n  \"proofs</w>\": 41023,\n  \"prop\": 19123,\n  \"prop</w>\": 16254,\n  \"propag\": 12151,\n  \"propaganda</w>\": 14718,\n  \"propane</w>\": 45546,\n  \"propel</w>\": 48439,\n  \"propeller</w>\": 47404,\n  \"proper\": 3577,\n  \"proper</w>\": 8205,\n  \"properly</w>\": 12560,\n  \"properties</w>\": 10922,\n  \"property\": 26486,\n  \"property</w>\": 5043,\n  \"prophe\": 9662,\n  \"prophecy</w>\": 32501,\n  \"prophet</w>\": 15549,\n  \"prophetic</w>\": 47476,\n  \"prophets</w>\": 39441,\n  \"propor\": 35016,\n  \"proportion</w>\": 35775,\n  \"proportions</w>\": 39391,\n  \"propos\": 9455,\n  \"proposal</w>\": 12139,\n  \"proposals</w>\": 20568,\n  \"propose</w>\": 28471,\n  \"proposed</w>\": 10615,\n  \"proposes</w>\": 27133,\n  \"proposing</w>\": 42631,\n  \"proposition</w>\": 44780,\n  \"propri\": 28243,\n  \"props</w>\": 15249,\n  \"propulsion</w>\": 49380,\n  \"pros\": 33925,\n  \"pros</w>\": 14147,\n  \"prosciutto</w>\": 46565,\n  \"prose\": 47063,\n  \"prose</w>\": 28675,\n  \"prosecco</w>\": 28839,\n  \"prosecu\": 12136,\n  \"prosecution</w>\": 30902,\n  \"prosecutor</w>\": 23736,\n  \"prosecutors</w>\": 31656,\n  \"prosp\": 24242,\n  \"prospec\": 12693,\n  \"prospect</w>\": 11211,\n  \"prospective</w>\": 28034,\n  \"prospects</w>\": 15372,\n  \"prosper\": 16121,\n  \"prosper</w>\": 33526,\n  \"prosperity</w>\": 17203,\n  \"prosperous</w>\": 28252,\n  \"prost</w>\": 47923,\n  \"prostate</w>\": 28808,\n  \"prostatec\": 49064,\n  \"prosthetic</w>\": 44602,\n  \"prostitu\": 37333,\n  \"protag\": 28950,\n  \"protagonist</w>\": 38183,\n  \"prote\": 1845,\n  \"protec\": 5640,\n  \"protect\": 25563,\n  \"protect</w>\": 4817,\n  \"protected</w>\": 12266,\n  \"protecting</w>\": 11710,\n  \"protection</w>\": 6238,\n  \"protections</w>\": 33772,\n  \"protective</w>\": 17028,\n  \"protector</w>\": 20441,\n  \"protectors</w>\": 45039,\n  \"protects</w>\": 21889,\n  \"protein</w>\": 8088,\n  \"proteins</w>\": 28661,\n  \"protest</w>\": 6279,\n  \"protestant</w>\": 46945,\n  \"protested</w>\": 48089,\n  \"protester</w>\": 42073,\n  \"protesters</w>\": 12660,\n  \"protesting</w>\": 18788,\n  \"protestors</w>\": 27822,\n  \"protests</w>\": 12450,\n  \"proto\": 8672,\n  \"proto</w>\": 44958,\n  \"protocol</w>\": 19938,\n  \"protocols</w>\": 39631,\n  \"proton</w>\": 40009,\n  \"prototype</w>\": 16675,\n  \"prototyping</w>\": 42081,\n  \"prou\": 5739,\n  \"proud\": 11080,\n  \"proud</w>\": 1679,\n  \"prouder</w>\": 39585,\n  \"proudest</w>\": 46806,\n  \"proudly</w>\": 11203,\n  \"proudof\": 48184,\n  \"proudtobe\": 35043,\n  \"prov\": 23772,\n  \"prov</w>\": 35021,\n  \"prove</w>\": 10107,\n  \"proved</w>\": 16473,\n  \"proven\": 35405,\n  \"proven</w>\": 14569,\n  \"provence</w>\": 28067,\n  \"prover\": 18312,\n  \"proverb</w>\": 34419,\n  \"proverbs</w>\": 27016,\n  \"proves</w>\": 16119,\n  \"provi\": 2289,\n  \"provide</w>\": 4832,\n  \"provided</w>\": 9046,\n  \"providence</w>\": 19331,\n  \"provider</w>\": 14409,\n  \"providers</w>\": 17120,\n  \"provides</w>\": 7161,\n  \"providing</w>\": 7250,\n  \"provin\": 12074,\n  \"province</w>\": 8978,\n  \"provinces</w>\": 35050,\n  \"provincial</w>\": 16002,\n  \"proving</w>\": 18055,\n  \"provision</w>\": 30148,\n  \"provisional</w>\": 36008,\n  \"provisions</w>\": 39269,\n  \"provo\": 15367,\n  \"provoc\": 31618,\n  \"provocative</w>\": 43809,\n  \"provoking</w>\": 25510,\n  \"provost</w>\": 36627,\n  \"prow\": 38737,\n  \"prowrestling</w>\": 39825,\n  \"prox\": 41616,\n  \"proxim\": 31436,\n  \"proximity</w>\": 38298,\n  \"proxy</w>\": 31680,\n  \"prs</w>\": 23879,\n  \"pru\": 12961,\n  \"pruitt</w>\": 39453,\n  \"prun\": 29029,\n  \"pruning</w>\": 48133,\n  \"pry\": 31965,\n  \"pryor</w>\": 43375,\n  \"ps\": 3982,\n  \"ps</w>\": 814,\n  \"psa</w>\": 14031,\n  \"psal\": 13859,\n  \"psalm</w>\": 17995,\n  \"psalms</w>\": 35003,\n  \"psb</w>\": 37017,\n  \"psc</w>\": 43118,\n  \"psd</w>\": 28810,\n  \"pse\": 19737,\n  \"pse</w>\": 5423,\n  \"pseu\": 24919,\n  \"pseudo</w>\": 46618,\n  \"psg</w>\": 17123,\n  \"psi\": 45848,\n  \"psi</w>\": 24533,\n  \"psic\": 29299,\n  \"psis</w>\": 33041,\n  \"psl</w>\": 21373,\n  \"psn</w>\": 36781,\n  \"pso\": 27045,\n  \"pson</w>\": 7487,\n  \"psori\": 44688,\n  \"psp</w>\": 32769,\n  \"pss\": 35718,\n  \"pss</w>\": 42535,\n  \"psst</w>\": 47814,\n  \"pst</w>\": 12692,\n  \"psu\": 41286,\n  \"psu</w>\": 28338,\n  \"psv</w>\": 44530,\n  \"psy\": 3576,\n  \"psy</w>\": 11056,\n  \"psych\": 31041,\n  \"psych</w>\": 20509,\n  \"psyched\": 19932,\n  \"psyched</w>\": 35199,\n  \"psychedelic</w>\": 23292,\n  \"psychi\": 18147,\n  \"psychiatric</w>\": 30578,\n  \"psychiatry</w>\": 39706,\n  \"psychic</w>\": 24916,\n  \"psycho\": 6472,\n  \"psycho</w>\": 22154,\n  \"psychological</w>\": 18153,\n  \"psychologist</w>\": 32827,\n  \"psychology</w>\": 12352,\n  \"psychop\": 30112,\n  \"psychotic</w>\": 48774,\n  \"pt\": 11139,\n  \"pt</w>\": 1459,\n  \"pta</w>\": 11586,\n  \"ptbo</w>\": 40481,\n  \"ptc</w>\": 44646,\n  \"pte</w>\": 47804,\n  \"pter\": 49323,\n  \"pti\": 29375,\n  \"pti</w>\": 10491,\n  \"ptic</w>\": 20670,\n  \"ption</w>\": 3479,\n  \"ptions</w>\": 24963,\n  \"pto\": 31372,\n  \"pto</w>\": 34092,\n  \"pton</w>\": 19780,\n  \"pts</w>\": 5886,\n  \"ptsd</w>\": 23973,\n  \"ptv</w>\": 42402,\n  \"pu\": 755,\n  \"pu</w>\": 11780,\n  \"pub\": 20720,\n  \"pub</w>\": 6301,\n  \"puberty</w>\": 44122,\n  \"pubg</w>\": 31496,\n  \"publ\": 3434,\n  \"publi\": 1617,\n  \"public\": 3592,\n  \"public</w>\": 2122,\n  \"publica</w>\": 49007,\n  \"publication</w>\": 13538,\n  \"publications</w>\": 27334,\n  \"publichealth</w>\": 35872,\n  \"publicity</w>\": 20831,\n  \"publicly</w>\": 18554,\n  \"publish</w>\": 19032,\n  \"published</w>\": 4311,\n  \"publisher</w>\": 20455,\n  \"publishers</w>\": 25222,\n  \"publishes</w>\": 35633,\n  \"publishing</w>\": 10994,\n  \"publix</w>\": 47985,\n  \"pubs</w>\": 21099,\n  \"puc\": 48779,\n  \"puck</w>\": 17550,\n  \"pud\": 39234,\n  \"pudding</w>\": 14025,\n  \"puddle</w>\": 33545,\n  \"pue\": 20161,\n  \"pueblo</w>\": 33076,\n  \"puer\": 8968,\n  \"puerto</w>\": 12289,\n  \"puertor\": 22757,\n  \"puertorico</w>\": 26356,\n  \"puff\": 44477,\n  \"puff</w>\": 17184,\n  \"puffin</w>\": 47632,\n  \"puffs</w>\": 47453,\n  \"puffy</w>\": 49245,\n  \"pug\": 20950,\n  \"pug</w>\": 17739,\n  \"pugchat</w>\": 42266,\n  \"pugh</w>\": 41302,\n  \"puglia</w>\": 38345,\n  \"pugs</w>\": 39425,\n  \"puj\": 46163,\n  \"puja</w>\": 33753,\n  \"puk</w>\": 31811,\n  \"pul\": 2469,\n  \"pul</w>\": 40512,\n  \"pula\": 45856,\n  \"puli</w>\": 47293,\n  \"pulit\": 27745,\n  \"pulitzer</w>\": 31419,\n  \"pull\": 20155,\n  \"pull</w>\": 6857,\n  \"pulled</w>\": 8525,\n  \"pulling</w>\": 12897,\n  \"pullman</w>\": 40203,\n  \"pullover</w>\": 44020,\n  \"pulls</w>\": 16041,\n  \"pulmon\": 32613,\n  \"pulmonary</w>\": 39132,\n  \"pulp</w>\": 25410,\n  \"pulse\": 40091,\n  \"pulse</w>\": 12485,\n  \"pulses</w>\": 42177,\n  \"pulsion</w>\": 35398,\n  \"pum\": 37497,\n  \"puma</w>\": 20858,\n  \"pump\": 5179,\n  \"pump</w>\": 9173,\n  \"pumped</w>\": 12796,\n  \"pumping</w>\": 25150,\n  \"pumpkin\": 36386,\n  \"pumpkin</w>\": 8842,\n  \"pumpkins</w>\": 23787,\n  \"pumps</w>\": 18540,\n  \"pun\": 2707,\n  \"pun</w>\": 19929,\n  \"punc\": 43907,\n  \"punch\": 29332,\n  \"punch</w>\": 10730,\n  \"punched</w>\": 31689,\n  \"punches</w>\": 35279,\n  \"punching</w>\": 33468,\n  \"punctu\": 31565,\n  \"punctuation</w>\": 47051,\n  \"pundit</w>\": 41466,\n  \"pune\": 32593,\n  \"pune</w>\": 14488,\n  \"pung</w>\": 45420,\n  \"puni\": 11479,\n  \"punish</w>\": 34569,\n  \"punished</w>\": 31598,\n  \"punisher</w>\": 38509,\n  \"punishment</w>\": 19099,\n  \"punjab\": 19405,\n  \"punjab</w>\": 12883,\n  \"punjabi</w>\": 25430,\n  \"punk\": 28933,\n  \"punk</w>\": 7246,\n  \"punks</w>\": 47171,\n  \"puns</w>\": 35231,\n  \"punt</w>\": 32699,\n  \"punta</w>\": 34112,\n  \"punter</w>\": 47092,\n  \"pup\": 11926,\n  \"pup</w>\": 11302,\n  \"pupil</w>\": 27265,\n  \"pupils</w>\": 13628,\n  \"pupp\": 7116,\n  \"puppet</w>\": 18439,\n  \"puppets</w>\": 28475,\n  \"puppies</w>\": 14820,\n  \"puppy\": 25431,\n  \"puppy</w>\": 6829,\n  \"puppylove</w>\": 40849,\n  \"pups</w>\": 20778,\n  \"pur\": 1727,\n  \"pur</w>\": 6265,\n  \"pura</w>\": 25596,\n  \"puram</w>\": 46174,\n  \"purcell</w>\": 46065,\n  \"purch\": 8384,\n  \"purchase</w>\": 5481,\n  \"purchased</w>\": 13399,\n  \"purchases</w>\": 21887,\n  \"purchasing</w>\": 20718,\n  \"purdu\": 40691,\n  \"purdue</w>\": 22280,\n  \"pure\": 14202,\n  \"pure</w>\": 5979,\n  \"puree</w>\": 45474,\n  \"purely</w>\": 32459,\n  \"puremichigan</w>\": 39783,\n  \"purest</w>\": 45497,\n  \"purge</w>\": 33514,\n  \"puri\": 16910,\n  \"puri</w>\": 21974,\n  \"purification</w>\": 47724,\n  \"purity</w>\": 29780,\n  \"purple\": 17837,\n  \"purple</w>\": 5496,\n  \"purpose\": 33492,\n  \"purpose</w>\": 7391,\n  \"purposes</w>\": 22020,\n  \"purr\": 49262,\n  \"purr</w>\": 46343,\n  \"purse</w>\": 16480,\n  \"pursue</w>\": 19463,\n  \"pursuing</w>\": 26424,\n  \"pursuit</w>\": 16469,\n  \"purÃ©e</w>\": 40981,\n  \"pus</w>\": 13841,\n  \"pusa</w>\": 40825,\n  \"push\": 16028,\n  \"push</w>\": 6831,\n  \"pushaw\": 35407,\n  \"pushaward\": 35448,\n  \"pushawards\": 47184,\n  \"pushed</w>\": 16155,\n  \"pushes</w>\": 23828,\n  \"pushing</w>\": 11549,\n  \"put\": 29535,\n  \"put</w>\": 1983,\n  \"putin</w>\": 10693,\n  \"putnam</w>\": 40235,\n  \"puts</w>\": 7898,\n  \"putt</w>\": 30279,\n  \"putter</w>\": 44723,\n  \"putting</w>\": 5154,\n  \"puzz\": 19760,\n  \"puzzle</w>\": 12875,\n  \"puzzles</w>\": 27986,\n  \"pv\": 14517,\n  \"pv</w>\": 13495,\n  \"pvc</w>\": 26959,\n  \"pvp</w>\": 44172,\n  \"pvt</w>\": 29898,\n  \"pw\": 19419,\n  \"pw</w>\": 16067,\n  \"pwc</w>\": 22965,\n  \"px\": 24790,\n  \"px</w>\": 10262,\n  \"pxrtg</w>\": 36262,\n  \"py\": 4005,\n  \"py</w>\": 7504,\n  \"pye\": 31099,\n  \"pyeongchang</w>\": 36066,\n  \"pyg\": 41450,\n  \"pyram\": 14405,\n  \"pyramid</w>\": 18725,\n  \"pyramids</w>\": 36877,\n  \"pyrene\": 36740,\n  \"pyrenees</w>\": 39744,\n  \"pyro\": 39762,\n  \"python</w>\": 13370,\n  \"pz</w>\": 48361,\n  \"pÃ©\": 43167,\n  \"q\": 80,\n  \"q</w>\": 336,\n  \"qa\": 24944,\n  \"qa</w>\": 16360,\n  \"qad\": 27844,\n  \"qadri</w>\": 35672,\n  \"qaeda</w>\": 31246,\n  \"qanda</w>\": 48672,\n  \"qanon</w>\": 19182,\n  \"qant\": 35404,\n  \"qantas</w>\": 43250,\n  \"qatar\": 32804,\n  \"qatar</w>\": 10872,\n  \"qb</w>\": 8073,\n  \"qbs</w>\": 38188,\n  \"qc</w>\": 17406,\n  \"qe</w>\": 30974,\n  \"qf</w>\": 27215,\n  \"qi\": 25054,\n  \"qi</w>\": 11256,\n  \"qing\": 46522,\n  \"qing</w>\": 34339,\n  \"ql</w>\": 28366,\n  \"qld\": 23039,\n  \"qld</w>\": 13765,\n  \"qldpol</w>\": 42296,\n  \"qm</w>\": 42148,\n  \"qotd</w>\": 24504,\n  \"qpr</w>\": 24788,\n  \"qq\": 31960,\n  \"qr</w>\": 18193,\n  \"qs</w>\": 14364,\n  \"qt</w>\": 15013,\n  \"qtr</w>\": 44803,\n  \"qu\": 666,\n  \"qu</w>\": 28646,\n  \"qua</w>\": 20363,\n  \"quack</w>\": 45575,\n  \"quad\": 11656,\n  \"quad</w>\": 13419,\n  \"quadcopter</w>\": 39792,\n  \"quadru\": 35831,\n  \"quaid</w>\": 34265,\n  \"quail</w>\": 34392,\n  \"quaint</w>\": 45976,\n  \"quake</w>\": 8421,\n  \"quaker</w>\": 43395,\n  \"quakes</w>\": 24572,\n  \"qual\": 9979,\n  \"qual</w>\": 32405,\n  \"qualcomm</w>\": 38683,\n  \"quali\": 4574,\n  \"qualification</w>\": 21508,\n  \"qualifications</w>\": 35225,\n  \"qualified</w>\": 11927,\n  \"qualifier</w>\": 18733,\n  \"qualifiers</w>\": 21388,\n  \"qualifies</w>\": 35820,\n  \"qualify</w>\": 17019,\n  \"qualifying</w>\": 11895,\n  \"qualitative</w>\": 45847,\n  \"qualities</w>\": 20488,\n  \"quality\": 28545,\n  \"quality</w>\": 3027,\n  \"quan\": 11669,\n  \"quan</w>\": 27490,\n  \"quand</w>\": 28198,\n  \"quant\": 15050,\n  \"quanti\": 31540,\n  \"quantitative</w>\": 40583,\n  \"quantities</w>\": 33917,\n  \"quantity</w>\": 26920,\n  \"quantum</w>\": 15320,\n  \"quar\": 3856,\n  \"quare</w>\": 42549,\n  \"quarry</w>\": 27601,\n  \"quart\": 7851,\n  \"quarter\": 8816,\n  \"quarter</w>\": 6632,\n  \"quarterback</w>\": 16545,\n  \"quarterfinal</w>\": 37992,\n  \"quarterfinals</w>\": 28971,\n  \"quarterly</w>\": 23350,\n  \"quarters</w>\": 10146,\n  \"quartet</w>\": 18056,\n  \"quartz</w>\": 17752,\n  \"quat\": 25715,\n  \"quattro</w>\": 40300,\n  \"quay\": 40276,\n  \"quay</w>\": 17304,\n  \"que\": 1147,\n  \"que</w>\": 2319,\n  \"quebec</w>\": 15373,\n  \"queen\": 6407,\n  \"queen</w>\": 2997,\n  \"queenof\": 44398,\n  \"queens\": 22943,\n  \"queens</w>\": 9330,\n  \"queensland</w>\": 15168,\n  \"queer\": 38874,\n  \"queer</w>\": 18161,\n  \"quel\": 39774,\n  \"quel</w>\": 21879,\n  \"quen\": 23876,\n  \"quen</w>\": 38324,\n  \"quent\": 23808,\n  \"quentin</w>\": 27530,\n  \"quer\": 17378,\n  \"quer</w>\": 26859,\n  \"quered</w>\": 23210,\n  \"queries</w>\": 32958,\n  \"querque</w>\": 30338,\n  \"query</w>\": 27464,\n  \"ques\": 25328,\n  \"ques</w>\": 7715,\n  \"queso</w>\": 40110,\n  \"quest\": 31653,\n  \"quest</w>\": 4846,\n  \"questi\": 2391,\n  \"question\": 18961,\n  \"question</w>\": 4382,\n  \"questionable</w>\": 30733,\n  \"questioned</w>\": 31847,\n  \"questioning</w>\": 24887,\n  \"questions</w>\": 3883,\n  \"quests</w>\": 44611,\n  \"quet</w>\": 8513,\n  \"quets</w>\": 39055,\n  \"quetta</w>\": 38326,\n  \"quette</w>\": 18993,\n  \"queu\": 32705,\n  \"queue</w>\": 18549,\n  \"queues</w>\": 40649,\n  \"queuing</w>\": 44082,\n  \"quez</w>\": 18677,\n  \"quezon</w>\": 41117,\n  \"qui\": 1912,\n  \"qui</w>\": 18046,\n  \"quic\": 26474,\n  \"quiche</w>\": 47723,\n  \"quick\": 5969,\n  \"quick</w>\": 3712,\n  \"quicker</w>\": 29211,\n  \"quickest</w>\": 37734,\n  \"quickly</w>\": 7787,\n  \"quid</w>\": 30732,\n  \"quie\": 43875,\n  \"quien</w>\": 43482,\n  \"quiere</w>\": 42723,\n  \"quiero</w>\": 32567,\n  \"quiet\": 17853,\n  \"quiet</w>\": 7557,\n  \"quietly</w>\": 22208,\n  \"quig\": 44690,\n  \"quil\": 12305,\n  \"quill</w>\": 48951,\n  \"quilt</w>\": 23977,\n  \"quilted</w>\": 46052,\n  \"quin\": 8607,\n  \"quin</w>\": 17167,\n  \"quincy</w>\": 27640,\n  \"quind\": 32339,\n  \"quinn</w>\": 12306,\n  \"quinoa</w>\": 26703,\n  \"quins</w>\": 39701,\n  \"quint\": 26898,\n  \"quinta</w>\": 47446,\n  \"quinte\": 22098,\n  \"quintess\": 37538,\n  \"quintet</w>\": 35125,\n  \"quipment</w>\": 42813,\n  \"quir\": 15943,\n  \"quirky</w>\": 25044,\n  \"quis\": 15064,\n  \"quist</w>\": 25128,\n  \"quit\": 19358,\n  \"quit</w>\": 11140,\n  \"quite</w>\": 4135,\n  \"quito</w>\": 35828,\n  \"quits</w>\": 32505,\n  \"quitting</w>\": 33871,\n  \"quity</w>\": 33133,\n  \"quiz\": 31197,\n  \"quiz</w>\": 8344,\n  \"quizz\": 35041,\n  \"quo\": 3046,\n  \"quo</w>\": 28127,\n  \"quoi</w>\": 45549,\n  \"quot\": 5452,\n  \"quot</w>\": 47587,\n  \"quota</w>\": 42097,\n  \"quotation</w>\": 49195,\n  \"quote\": 15446,\n  \"quote</w>\": 4020,\n  \"quoted</w>\": 27706,\n  \"quoteoftheday</w>\": 19975,\n  \"quotes</w>\": 5808,\n  \"quoting</w>\": 31651,\n  \"qur</w>\": 37782,\n  \"quran</w>\": 19690,\n  \"qureshi</w>\": 46307,\n  \"qvist</w>\": 42322,\n  \"qx</w>\": 45038,\n  \"r\": 81,\n  \"r</w>\": 337,\n  \"ra\": 559,\n  \"ra</w>\": 1735,\n  \"raa</w>\": 44344,\n  \"rab\": 14816,\n  \"rab</w>\": 33224,\n  \"rabb\": 6875,\n  \"rabbi</w>\": 20959,\n  \"rabbit</w>\": 10274,\n  \"rabbits</w>\": 27028,\n  \"rabhu</w>\": 25806,\n  \"rable</w>\": 10182,\n  \"rac\": 1773,\n  \"rac</w>\": 30462,\n  \"raccoon</w>\": 29516,\n  \"race\": 10978,\n  \"race</w>\": 2471,\n  \"racec\": 18814,\n  \"racecourse</w>\": 25036,\n  \"raced</w>\": 36021,\n  \"racer</w>\": 16798,\n  \"racers</w>\": 33603,\n  \"races</w>\": 8605,\n  \"raceway</w>\": 24650,\n  \"rach\": 6876,\n  \"rach</w>\": 33429,\n  \"racha\": 21952,\n  \"racha</w>\": 35022,\n  \"rachael</w>\": 29095,\n  \"rachel\": 13511,\n  \"rachel</w>\": 8029,\n  \"raci\": 33381,\n  \"racial</w>\": 13801,\n  \"racially</w>\": 43577,\n  \"racing\": 23306,\n  \"racing</w>\": 3699,\n  \"racism</w>\": 11276,\n  \"racist</w>\": 9684,\n  \"racists</w>\": 41777,\n  \"rack\": 24600,\n  \"rack</w>\": 12034,\n  \"racket</w>\": 37691,\n  \"racks</w>\": 21191,\n  \"rad\": 4473,\n  \"rad</w>\": 8238,\n  \"rada</w>\": 30437,\n  \"radar</w>\": 9672,\n  \"radcliffe</w>\": 33096,\n  \"rade\": 44494,\n  \"rade</w>\": 17911,\n  \"rader</w>\": 45002,\n  \"radford</w>\": 45800,\n  \"radha</w>\": 43122,\n  \"radi\": 5772,\n  \"radial</w>\": 42028,\n  \"radiance</w>\": 45670,\n  \"radiant</w>\": 25614,\n  \"radiation</w>\": 18210,\n  \"radiator</w>\": 39372,\n  \"radic\": 18082,\n  \"radical</w>\": 13712,\n  \"radicals</w>\": 45903,\n  \"radio\": 7176,\n  \"radio</w>\": 2638,\n  \"radioactive</w>\": 34704,\n  \"radiodisney</w>\": 36483,\n  \"radiohead</w>\": 39472,\n  \"radiology</w>\": 29684,\n  \"radios</w>\": 43669,\n  \"radish</w>\": 37789,\n  \"radius</w>\": 37570,\n  \"rado</w>\": 29784,\n  \"rae\": 21646,\n  \"rae</w>\": 15051,\n  \"rael</w>\": 45390,\n  \"raer</w>\": 44561,\n  \"raf\": 11495,\n  \"raf</w>\": 11490,\n  \"rafa\": 14352,\n  \"rafa</w>\": 24850,\n  \"rafael\": 38221,\n  \"rafael</w>\": 19216,\n  \"rafaelnadal</w>\": 49219,\n  \"raff\": 34900,\n  \"raffic</w>\": 32928,\n  \"raffle</w>\": 13752,\n  \"raffles</w>\": 43489,\n  \"rafi\": 35304,\n  \"raft</w>\": 9233,\n  \"rafting</w>\": 36309,\n  \"rag\": 13958,\n  \"rag</w>\": 20687,\n  \"rage</w>\": 8593,\n  \"rages</w>\": 34253,\n  \"ragh\": 35642,\n  \"ragha\": 40972,\n  \"raging</w>\": 25015,\n  \"ragn\": 24125,\n  \"ragnar\": 34385,\n  \"ragnarok</w>\": 41856,\n  \"ragon</w>\": 34768,\n  \"rags</w>\": 47838,\n  \"rah\": 12277,\n  \"rah</w>\": 8766,\n  \"raheem</w>\": 43317,\n  \"rahim</w>\": 24152,\n  \"rahman</w>\": 19680,\n  \"rahu\": 13129,\n  \"rahul\": 37239,\n  \"rahul</w>\": 17440,\n  \"rahulg\": 27510,\n  \"rahulgandhi</w>\": 28293,\n  \"rai\": 9165,\n  \"rai</w>\": 9638,\n  \"raid</w>\": 6877,\n  \"raided</w>\": 43417,\n  \"raider\": 27368,\n  \"raider</w>\": 21455,\n  \"raidernation</w>\": 47901,\n  \"raiders</w>\": 11817,\n  \"raids</w>\": 26655,\n  \"rail\": 4573,\n  \"rail</w>\": 6879,\n  \"raila</w>\": 47273,\n  \"railminindia</w>\": 35557,\n  \"railroad</w>\": 17080,\n  \"rails</w>\": 23427,\n  \"railway\": 27614,\n  \"railway</w>\": 7856,\n  \"railwayana</w>\": 46750,\n  \"railways</w>\": 20765,\n  \"raim\": 45785,\n  \"rain\": 3128,\n  \"rain</w>\": 2443,\n  \"raina</w>\": 30564,\n  \"rainbow\": 24562,\n  \"rainbow</w>\": 6286,\n  \"rainbows</w>\": 30483,\n  \"raine\": 49038,\n  \"raine</w>\": 6871,\n  \"rained</w>\": 32310,\n  \"rainf\": 15024,\n  \"rainfall</w>\": 15350,\n  \"rainforest</w>\": 22823,\n  \"rainier</w>\": 37850,\n  \"raining</w>\": 13964,\n  \"rains</w>\": 14272,\n  \"rainy</w>\": 10222,\n  \"rais\": 14729,\n  \"raise\": 24249,\n  \"raise</w>\": 5078,\n  \"raised</w>\": 6027,\n  \"raiser</w>\": 33555,\n  \"raises</w>\": 13297,\n  \"raisethe\": 47109,\n  \"raisin</w>\": 36864,\n  \"raising</w>\": 6883,\n  \"raj\": 5958,\n  \"raj</w>\": 10813,\n  \"raja\": 46069,\n  \"raja</w>\": 19150,\n  \"rajan</w>\": 46595,\n  \"rajas\": 16185,\n  \"rajasthan</w>\": 18017,\n  \"raje\": 21899,\n  \"rajesh</w>\": 43602,\n  \"raji\": 27569,\n  \"rajini\": 29600,\n  \"rajini</w>\": 40622,\n  \"rajinikanth</w>\": 32922,\n  \"rajiv</w>\": 40197,\n  \"rajkumar</w>\": 49304,\n  \"rajput</w>\": 47572,\n  \"raju</w>\": 47029,\n  \"rak\": 13523,\n  \"rak</w>\": 26287,\n  \"rake\": 26825,\n  \"rake</w>\": 32712,\n  \"rakesh</w>\": 41083,\n  \"ral\": 8062,\n  \"ral</w>\": 1406,\n  \"rale\": 14192,\n  \"raleigh</w>\": 18207,\n  \"rall\": 23249,\n  \"rallies</w>\": 25230,\n  \"rally\": 18882,\n  \"rally</w>\": 5041,\n  \"rallying</w>\": 36836,\n  \"ralph\": 25290,\n  \"ralph</w>\": 12234,\n  \"ram\": 1976,\n  \"ram</w>\": 2007,\n  \"rama</w>\": 22112,\n  \"ramad\": 12736,\n  \"ramadan</w>\": 15547,\n  \"ramadhan</w>\": 47415,\n  \"raman</w>\": 39816,\n  \"ramapho\": 43963,\n  \"ramaphosa</w>\": 44993,\n  \"ramatta</w>\": 49112,\n  \"rambo</w>\": 41855,\n  \"ramcharan</w>\": 45275,\n  \"rame</w>\": 47745,\n  \"ramen</w>\": 18892,\n  \"ramesh\": 48640,\n  \"ramesh</w>\": 40186,\n  \"rami</w>\": 43016,\n  \"ramirez</w>\": 23877,\n  \"ramon</w>\": 27958,\n  \"ramone</w>\": 47201,\n  \"ramos</w>\": 21046,\n  \"ramp</w>\": 14271,\n  \"rampage</w>\": 32077,\n  \"rampant</w>\": 41985,\n  \"ramps</w>\": 35257,\n  \"rams</w>\": 10292,\n  \"ramsay</w>\": 26259,\n  \"ramsey</w>\": 19215,\n  \"ran\": 1433,\n  \"ran</w>\": 4031,\n  \"rana</w>\": 22143,\n  \"ranbir</w>\": 40881,\n  \"rance</w>\": 29034,\n  \"ranch\": 43955,\n  \"ranch</w>\": 10659,\n  \"rancho</w>\": 26258,\n  \"rand\": 5628,\n  \"rand</w>\": 18718,\n  \"randall</w>\": 23639,\n  \"rande</w>\": 21469,\n  \"randolph</w>\": 29899,\n  \"random\": 11396,\n  \"random</w>\": 6160,\n  \"randomly</w>\": 17272,\n  \"rands</w>\": 39153,\n  \"randy\": 29479,\n  \"randy</w>\": 13279,\n  \"rane</w>\": 28852,\n  \"rang\": 4043,\n  \"rang</w>\": 24377,\n  \"range\": 13627,\n  \"range</w>\": 3818,\n  \"ranger\": 31472,\n  \"ranger</w>\": 13593,\n  \"rangers</w>\": 7664,\n  \"ranges</w>\": 25685,\n  \"ranging</w>\": 25946,\n  \"rani\": 29264,\n  \"rani</w>\": 22631,\n  \"rank</w>\": 11501,\n  \"ranked</w>\": 8307,\n  \"rankin</w>\": 37539,\n  \"ranking</w>\": 12347,\n  \"rankings</w>\": 12596,\n  \"ranks</w>\": 14469,\n  \"rano</w>\": 18608,\n  \"rans</w>\": 46259,\n  \"ransom\": 28523,\n  \"ransom</w>\": 34646,\n  \"ransomware</w>\": 33815,\n  \"rant\": 46467,\n  \"rant</w>\": 9819,\n  \"rants</w>\": 34014,\n  \"ranveer\": 32402,\n  \"ranveer</w>\": 41482,\n  \"ranveerofficial</w>\": 42116,\n  \"rao</w>\": 16913,\n  \"rap\": 7773,\n  \"rap</w>\": 7348,\n  \"rape\": 46099,\n  \"rape</w>\": 10070,\n  \"raped</w>\": 23700,\n  \"rapha\": 22754,\n  \"raphael</w>\": 30091,\n  \"rapi\": 8610,\n  \"rapid\": 47697,\n  \"rapid</w>\": 12205,\n  \"rapidly</w>\": 16710,\n  \"rapids</w>\": 18848,\n  \"raping</w>\": 44926,\n  \"rapist</w>\": 33360,\n  \"rapp\": 19283,\n  \"rapper</w>\": 11860,\n  \"rappers</w>\": 30315,\n  \"rapping</w>\": 42864,\n  \"raps</w>\": 37887,\n  \"raptor</w>\": 26762,\n  \"raptors</w>\": 17035,\n  \"raq\": 39787,\n  \"raq</w>\": 43312,\n  \"raqqa</w>\": 47074,\n  \"raquel</w>\": 44338,\n  \"rar\": 26819,\n  \"rar</w>\": 24605,\n  \"rard</w>\": 21012,\n  \"rare\": 18992,\n  \"rare</w>\": 3865,\n  \"rarely</w>\": 17315,\n  \"rarest</w>\": 43237,\n  \"rarity</w>\": 45862,\n  \"ras\": 23492,\n  \"ras</w>\": 8224,\n  \"rasc\": 30085,\n  \"rascal</w>\": 43481,\n  \"rash\": 14917,\n  \"rash</w>\": 30608,\n  \"rashad</w>\": 46527,\n  \"rasheed</w>\": 41638,\n  \"rashi\": 19426,\n  \"rashid</w>\": 26757,\n  \"rasp\": 10487,\n  \"raspberries</w>\": 37742,\n  \"raspberry\": 40162,\n  \"raspberry</w>\": 13615,\n  \"raspberrypi</w>\": 43934,\n  \"rass</w>\": 45654,\n  \"rasta</w>\": 47002,\n  \"rat\": 3806,\n  \"rat</w>\": 8985,\n  \"rata</w>\": 28568,\n  \"ratchet</w>\": 25078,\n  \"rate</w>\": 5068,\n  \"rated</w>\": 8183,\n  \"rates</w>\": 6864,\n  \"rath\": 18268,\n  \"rath</w>\": 39772,\n  \"rather</w>\": 5252,\n  \"rati\": 11486,\n  \"rating</w>\": 10567,\n  \"ratings</w>\": 14176,\n  \"ratio</w>\": 15893,\n  \"ration\": 27002,\n  \"ration</w>\": 35662,\n  \"rational</w>\": 33086,\n  \"ratna</w>\": 49078,\n  \"ratri</w>\": 32288,\n  \"rats</w>\": 19043,\n  \"ratt\": 20737,\n  \"ratt</w>\": 34785,\n  \"rattle\": 40824,\n  \"rattle</w>\": 41839,\n  \"rau\": 27744,\n  \"raul</w>\": 30218,\n  \"raun\": 41169,\n  \"rav\": 14367,\n  \"rav</w>\": 23606,\n  \"rave\": 38784,\n  \"rave</w>\": 17601,\n  \"ravel</w>\": 27927,\n  \"raven\": 10269,\n  \"raven</w>\": 16803,\n  \"ravens</w>\": 17946,\n  \"ravi\": 22947,\n  \"ravi</w>\": 19538,\n  \"ravin\": 39099,\n  \"raving</w>\": 45807,\n  \"raviol\": 41104,\n  \"ravioli</w>\": 43460,\n  \"raw\": 10166,\n  \"raw</w>\": 6323,\n  \"rawlings</w>\": 40662,\n  \"rax</w>\": 38520,\n  \"ray\": 5312,\n  \"ray</w>\": 3077,\n  \"raya</w>\": 29991,\n  \"raymond</w>\": 16683,\n  \"rayn\": 47852,\n  \"rayon</w>\": 47900,\n  \"rays</w>\": 11064,\n  \"raz\": 9700,\n  \"raz</w>\": 19087,\n  \"raza</w>\": 37724,\n  \"razer</w>\": 33832,\n  \"razor\": 24934,\n  \"razor</w>\": 21300,\n  \"razz\": 43769,\n  \"rb\": 12740,\n  \"rb</w>\": 7477,\n  \"rbc</w>\": 37500,\n  \"rbi</w>\": 15687,\n  \"rbs</w>\": 29102,\n  \"rc\": 7575,\n  \"rc</w>\": 7457,\n  \"rca</w>\": 33942,\n  \"rcb</w>\": 45240,\n  \"rcmp</w>\": 31489,\n  \"rcn</w>\": 49370,\n  \"rctid</w>\": 49223,\n  \"rd\": 13501,\n  \"rd</w>\": 1973,\n  \"rda</w>\": 45755,\n  \"rdr</w>\": 44364,\n  \"rds</w>\": 32378,\n  \"re\": 515,\n  \"re</w>\": 810,\n  \"rea</w>\": 11521,\n  \"reach\": 4483,\n  \"reach</w>\": 4279,\n  \"reached</w>\": 6878,\n  \"reaches</w>\": 14462,\n  \"reaching</w>\": 11358,\n  \"react\": 36566,\n  \"react</w>\": 15065,\n  \"reacted</w>\": 42515,\n  \"reacting</w>\": 40595,\n  \"reaction</w>\": 7189,\n  \"reactions</w>\": 18438,\n  \"reactive</w>\": 42072,\n  \"reactjs</w>\": 46173,\n  \"reactor</w>\": 32037,\n  \"reacts</w>\": 23115,\n  \"read\": 933,\n  \"read</w>\": 1199,\n  \"reader</w>\": 9884,\n  \"readers</w>\": 10335,\n  \"readiness</w>\": 28131,\n  \"reading\": 17556,\n  \"reading</w>\": 2337,\n  \"readingfc</w>\": 47428,\n  \"readings</w>\": 23361,\n  \"reads</w>\": 6597,\n  \"ready\": 17351,\n  \"ready</w>\": 1112,\n  \"reagan</w>\": 17767,\n  \"real\": 2017,\n  \"real</w>\": 1532,\n  \"realdonaldtrump</w>\": 7025,\n  \"reale\": 5930,\n  \"realest</w>\": 45855,\n  \"realestate\": 32937,\n  \"realestate</w>\": 6569,\n  \"reali\": 4185,\n  \"realis</w>\": 38114,\n  \"realise</w>\": 14773,\n  \"realised</w>\": 17945,\n  \"realising</w>\": 39537,\n  \"realism</w>\": 20024,\n  \"realist</w>\": 30248,\n  \"realistic</w>\": 16157,\n  \"realities</w>\": 32443,\n  \"reality\": 46802,\n  \"reality</w>\": 5004,\n  \"realization</w>\": 40402,\n  \"realize</w>\": 7538,\n  \"realized</w>\": 10489,\n  \"realizes</w>\": 42918,\n  \"realizing</w>\": 23284,\n  \"reall\": 39686,\n  \"really\": 43249,\n  \"really</w>\": 1414,\n  \"realm</w>\": 23083,\n  \"realmadrid</w>\": 27866,\n  \"realms</w>\": 43033,\n  \"realness</w>\": 46761,\n  \"realtime\": 44002,\n  \"realtime</w>\": 38203,\n  \"realtor</w>\": 18038,\n  \"realtors</w>\": 31759,\n  \"realty</w>\": 20471,\n  \"ream\": 37242,\n  \"ream</w>\": 15219,\n  \"rean</w>\": 48477,\n  \"reap</w>\": 31334,\n  \"reaper</w>\": 29922,\n  \"rear\": 39652,\n  \"rear</w>\": 10223,\n  \"reas\": 9121,\n  \"reason\": 12882,\n  \"reason</w>\": 3893,\n  \"reasonable</w>\": 18558,\n  \"reasonably</w>\": 38589,\n  \"reasoning</w>\": 30341,\n  \"reasons</w>\": 5686,\n  \"reau</w>\": 32398,\n  \"reb\": 12370,\n  \"reb</w>\": 18796,\n  \"reba</w>\": 48543,\n  \"rebate</w>\": 43817,\n  \"rebe\": 25227,\n  \"rebec\": 10774,\n  \"rebecca</w>\": 12892,\n  \"rebel\": 8185,\n  \"rebel</w>\": 12248,\n  \"rebellion</w>\": 22170,\n  \"rebels</w>\": 13623,\n  \"rebirth</w>\": 33303,\n  \"reboot</w>\": 22385,\n  \"reborn</w>\": 30229,\n  \"reboun\": 43381,\n  \"rebound</w>\": 31280,\n  \"rebounds</w>\": 19190,\n  \"rebs</w>\": 28164,\n  \"rebu\": 43162,\n  \"rebuild</w>\": 20022,\n  \"rebuilding</w>\": 30880,\n  \"rebuilt</w>\": 33137,\n  \"rec\": 1020,\n  \"rec</w>\": 11243,\n  \"recall</w>\": 15151,\n  \"recalled</w>\": 32142,\n  \"recalling</w>\": 47855,\n  \"recalls</w>\": 24740,\n  \"recap\": 29816,\n  \"recap</w>\": 8337,\n  \"recaps</w>\": 47997,\n  \"recard</w>\": 35536,\n  \"rece\": 1890,\n  \"recei\": 2148,\n  \"receip\": 38503,\n  \"receipt</w>\": 30479,\n  \"receipts</w>\": 41181,\n  \"receive</w>\": 4800,\n  \"received</w>\": 4178,\n  \"receiver</w>\": 17659,\n  \"receivers</w>\": 45294,\n  \"receives</w>\": 10027,\n  \"receiving</w>\": 7252,\n  \"recent</w>\": 3969,\n  \"recently</w>\": 4482,\n  \"recep\": 17450,\n  \"reception</w>\": 8364,\n  \"receptions</w>\": 46881,\n  \"receptor</w>\": 41835,\n  \"recess</w>\": 38182,\n  \"recession</w>\": 27176,\n  \"recharge</w>\": 29396,\n  \"rechargeable</w>\": 37516,\n  \"reci\": 2037,\n  \"recipe\": 28923,\n  \"recipe</w>\": 4614,\n  \"recipeoftheday</w>\": 38727,\n  \"recipes</w>\": 9243,\n  \"recipi\": 10136,\n  \"recipient</w>\": 13703,\n  \"recipients</w>\": 18940,\n  \"recipro\": 41789,\n  \"recital</w>\": 23457,\n  \"recite</w>\": 48824,\n  \"reck\": 11715,\n  \"reckless</w>\": 26284,\n  \"reckon</w>\": 23854,\n  \"recl\": 42277,\n  \"reclaim</w>\": 35969,\n  \"reclaimed</w>\": 32648,\n  \"reco\": 2535,\n  \"reco</w>\": 46038,\n  \"recogn\": 6343,\n  \"recogni\": 5329,\n  \"recognise</w>\": 19824,\n  \"recognised</w>\": 20986,\n  \"recognising</w>\": 48423,\n  \"recognition</w>\": 9415,\n  \"recognizable</w>\": 47240,\n  \"recognize</w>\": 10905,\n  \"recognized</w>\": 9929,\n  \"recognizes</w>\": 26909,\n  \"recognizing</w>\": 19666,\n  \"recomm\": 4540,\n  \"recommend\": 11628,\n  \"recommend</w>\": 8942,\n  \"recommendation</w>\": 20118,\n  \"recommendations</w>\": 16516,\n  \"recommended</w>\": 11100,\n  \"recommending</w>\": 44301,\n  \"recommends</w>\": 22940,\n  \"recon\": 15371,\n  \"recon</w>\": 28996,\n  \"reconciliation</w>\": 26451,\n  \"reconstruction</w>\": 24955,\n  \"recor\": 1723,\n  \"record\": 21328,\n  \"record</w>\": 2717,\n  \"recorded</w>\": 9392,\n  \"recorder</w>\": 26747,\n  \"recording\": 48237,\n  \"recording</w>\": 6942,\n  \"recordings</w>\": 19715,\n  \"records</w>\": 4529,\n  \"recover</w>\": 16785,\n  \"recovered</w>\": 16444,\n  \"recovering</w>\": 19005,\n  \"recovers</w>\": 47935,\n  \"recovery</w>\": 6591,\n  \"recre\": 22148,\n  \"recreate</w>\": 29775,\n  \"recreated</w>\": 40888,\n  \"recreating</w>\": 48224,\n  \"recreation</w>\": 17331,\n  \"recreational</w>\": 24329,\n  \"recru\": 4745,\n  \"recruit\": 9011,\n  \"recruit</w>\": 15585,\n  \"recruited</w>\": 36518,\n  \"recruiter</w>\": 43120,\n  \"recruiters</w>\": 46542,\n  \"recruiting</w>\": 10533,\n  \"recruitment</w>\": 10541,\n  \"recruits</w>\": 22647,\n  \"recs</w>\": 33069,\n  \"rectan\": 43041,\n  \"rectangular</w>\": 43321,\n  \"rector</w>\": 41585,\n  \"recu\": 26798,\n  \"recur\": 19983,\n  \"recurring</w>\": 35912,\n  \"recy\": 6790,\n  \"recycla\": 40659,\n  \"recyclable</w>\": 48907,\n  \"recycle</w>\": 19366,\n  \"recycled</w>\": 16829,\n  \"recycling</w>\": 12566,\n  \"red\": 1893,\n  \"red</w>\": 736,\n  \"redbubble</w>\": 46137,\n  \"redbull\": 29483,\n  \"redbull</w>\": 29219,\n  \"redcarpet</w>\": 32259,\n  \"redcross</w>\": 30659,\n  \"redd\": 22149,\n  \"redd</w>\": 40618,\n  \"redding</w>\": 41061,\n  \"reddish</w>\": 43383,\n  \"reddit</w>\": 15226,\n  \"reddy</w>\": 23028,\n  \"rede\": 10913,\n  \"redeem</w>\": 37449,\n  \"redefining</w>\": 46352,\n  \"redemption</w>\": 20233,\n  \"redesign</w>\": 24188,\n  \"redesigned</w>\": 33111,\n  \"redevelopment</w>\": 30322,\n  \"redhead</w>\": 36267,\n  \"redi\": 7976,\n  \"redman</w>\": 44753,\n  \"redmond</w>\": 39627,\n  \"rednation\": 28180,\n  \"rednationrising</w>\": 28262,\n  \"redneck</w>\": 39105,\n  \"redness</w>\": 22626,\n  \"redo</w>\": 42524,\n  \"redon\": 48506,\n  \"redro\": 37722,\n  \"reds</w>\": 11221,\n  \"redskins</w>\": 19023,\n  \"redsox</w>\": 19144,\n  \"reduc\": 5015,\n  \"reduce</w>\": 6604,\n  \"reduced</w>\": 10821,\n  \"reduces</w>\": 20539,\n  \"reducing</w>\": 13836,\n  \"reduction</w>\": 12219,\n  \"reductions</w>\": 48263,\n  \"redux</w>\": 43014,\n  \"redvelvet</w>\": 41845,\n  \"redwings</w>\": 31058,\n  \"redwood</w>\": 31748,\n  \"ree\": 9282,\n  \"ree</w>\": 5813,\n  \"reebok</w>\": 26734,\n  \"reece</w>\": 30457,\n  \"reed\": 26209,\n  \"reed</w>\": 10435,\n  \"reedus</w>\": 32865,\n  \"reef\": 46557,\n  \"reef</w>\": 15624,\n  \"reefs</w>\": 34459,\n  \"reel\": 34467,\n  \"reel</w>\": 17166,\n  \"reels</w>\": 48127,\n  \"reem</w>\": 48891,\n  \"reen\": 21638,\n  \"reen</w>\": 23679,\n  \"rees</w>\": 18314,\n  \"reese</w>\": 20929,\n  \"reeves</w>\": 23060,\n  \"ref\": 4067,\n  \"ref</w>\": 9591,\n  \"refe\": 5624,\n  \"refer\": 18425,\n  \"refer</w>\": 22325,\n  \"referee</w>\": 20398,\n  \"referees</w>\": 45583,\n  \"referen\": 13535,\n  \"reference</w>\": 10214,\n  \"references</w>\": 24009,\n  \"referendum</w>\": 16732,\n  \"referr\": 47784,\n  \"referral</w>\": 30219,\n  \"referred</w>\": 22969,\n  \"referring</w>\": 29797,\n  \"refers</w>\": 30069,\n  \"refill</w>\": 37859,\n  \"refin\": 13455,\n  \"refined</w>\": 26098,\n  \"refinery</w>\": 31393,\n  \"refining</w>\": 48406,\n  \"reflec\": 4608,\n  \"reflect</w>\": 13373,\n  \"reflected</w>\": 28732,\n  \"reflecting</w>\": 19700,\n  \"reflection</w>\": 11884,\n  \"reflections</w>\": 16647,\n  \"reflective</w>\": 27008,\n  \"reflects</w>\": 15821,\n  \"reflex\": 45756,\n  \"reflex</w>\": 36050,\n  \"reform\": 45678,\n  \"reform</w>\": 8875,\n  \"reformation</w>\": 45119,\n  \"reformed</w>\": 40880,\n  \"reforms</w>\": 19274,\n  \"refr\": 34850,\n  \"refre\": 11995,\n  \"refresh\": 17836,\n  \"refresh</w>\": 23288,\n  \"refreshed</w>\": 35925,\n  \"refresher</w>\": 41481,\n  \"refreshing</w>\": 14159,\n  \"refreshments</w>\": 31127,\n  \"refriger\": 21076,\n  \"refrigerator</w>\": 36662,\n  \"refs</w>\": 35595,\n  \"refu\": 3545,\n  \"refuge\": 5638,\n  \"refuge</w>\": 17432,\n  \"refugee</w>\": 11556,\n  \"refugees\": 42687,\n  \"refugees</w>\": 8316,\n  \"refund</w>\": 28899,\n  \"refur\": 15519,\n  \"refurbi\": 18259,\n  \"refurbished</w>\": 26190,\n  \"refurbishment</w>\": 35803,\n  \"refusal</w>\": 46547,\n  \"refuse</w>\": 16412,\n  \"refused</w>\": 17190,\n  \"refuses</w>\": 20085,\n  \"refusing</w>\": 26704,\n  \"reg\": 5472,\n  \"reg</w>\": 12353,\n  \"regain</w>\": 37510,\n  \"regal\": 31512,\n  \"regal</w>\": 25028,\n  \"regan</w>\": 34062,\n  \"regar\": 5881,\n  \"regard</w>\": 21801,\n  \"regarded</w>\": 32017,\n  \"regarding</w>\": 8493,\n  \"regardless</w>\": 17220,\n  \"regards</w>\": 23079,\n  \"regatta</w>\": 26316,\n  \"regen\": 46545,\n  \"regency</w>\": 29341,\n  \"regeneration</w>\": 29257,\n  \"regent</w>\": 30455,\n  \"regents</w>\": 46710,\n  \"regg\": 12757,\n  \"reggae\": 37821,\n  \"reggae</w>\": 15214,\n  \"reggie</w>\": 21872,\n  \"regi\": 1608,\n  \"regime</w>\": 11378,\n  \"regiment</w>\": 18603,\n  \"regin\": 23287,\n  \"regina</w>\": 16841,\n  \"region\": 16542,\n  \"region</w>\": 4341,\n  \"regional</w>\": 5552,\n  \"regionals</w>\": 26043,\n  \"regions</w>\": 14530,\n  \"regis</w>\": 28094,\n  \"register</w>\": 3967,\n  \"registered</w>\": 10254,\n  \"registering</w>\": 33510,\n  \"registr\": 29193,\n  \"registration</w>\": 7302,\n  \"registrations</w>\": 38423,\n  \"registry</w>\": 30020,\n  \"rego</w>\": 47351,\n  \"regram</w>\": 30329,\n  \"regrann</w>\": 48802,\n  \"regre\": 8627,\n  \"regression</w>\": 43733,\n  \"regret</w>\": 14374,\n  \"regrets</w>\": 23231,\n  \"regu\": 3411,\n  \"regui</w>\": 46722,\n  \"regul\": 11847,\n  \"regular\": 14882,\n  \"regular</w>\": 6307,\n  \"regularly</w>\": 17263,\n  \"regulat\": 14575,\n  \"regulate</w>\": 33494,\n  \"regulated</w>\": 31384,\n  \"regulating</w>\": 48156,\n  \"regulation</w>\": 14267,\n  \"regulations</w>\": 16654,\n  \"regulator</w>\": 30364,\n  \"regulators</w>\": 35837,\n  \"regulatory</w>\": 17717,\n  \"reh\": 21492,\n  \"reha\": 10193,\n  \"rehab</w>\": 16973,\n  \"rehabil\": 17930,\n  \"rehabilitation</w>\": 21042,\n  \"rehear\": 7273,\n  \"rehearsal</w>\": 11482,\n  \"rehearsals</w>\": 17977,\n  \"rehearsing</w>\": 23125,\n  \"rehman</w>\": 39206,\n  \"rei\": 15343,\n  \"rei</w>\": 26033,\n  \"reic\": 41230,\n  \"reich\": 48589,\n  \"reich</w>\": 28929,\n  \"reid\": 45125,\n  \"reid</w>\": 11744,\n  \"reig\": 13092,\n  \"reign\": 41419,\n  \"reign</w>\": 14827,\n  \"reigning</w>\": 28409,\n  \"reigns</w>\": 21217,\n  \"reiki</w>\": 46960,\n  \"reilly</w>\": 28120,\n  \"reim\": 35421,\n  \"reimagined</w>\": 46799,\n  \"reimbur\": 39857,\n  \"rein\": 9240,\n  \"rein</w>\": 45009,\n  \"reina</w>\": 43847,\n  \"reinde\": 23810,\n  \"reindeer</w>\": 25072,\n  \"reinfor\": 48161,\n  \"reinforced</w>\": 41909,\n  \"reinst\": 33969,\n  \"reinvent</w>\": 38171,\n  \"reissue</w>\": 34042,\n  \"reiter\": 35394,\n  \"rejec\": 9958,\n  \"reject</w>\": 22435,\n  \"rejected</w>\": 17505,\n  \"rejection</w>\": 32264,\n  \"rejects</w>\": 23155,\n  \"rejo\": 20150,\n  \"rejoice</w>\": 24712,\n  \"rejuven\": 26332,\n  \"rek\": 47542,\n  \"rek</w>\": 19201,\n  \"rel\": 1825,\n  \"rel</w>\": 5233,\n  \"rela\": 4362,\n  \"reland</w>\": 15220,\n  \"relat\": 27192,\n  \"relatable</w>\": 31010,\n  \"relate</w>\": 17520,\n  \"related</w>\": 5880,\n  \"relates</w>\": 36064,\n  \"relating</w>\": 27373,\n  \"relation\": 4561,\n  \"relation</w>\": 16207,\n  \"relations</w>\": 10100,\n  \"relationship\": 47239,\n  \"relationship</w>\": 5837,\n  \"relationships</w>\": 10610,\n  \"relative</w>\": 17265,\n  \"relatively</w>\": 18351,\n  \"relatives</w>\": 21981,\n  \"relax\": 6777,\n  \"relax</w>\": 9035,\n  \"relaxation</w>\": 22194,\n  \"relaxed</w>\": 18999,\n  \"relaxing</w>\": 10256,\n  \"relay</w>\": 12403,\n  \"relays</w>\": 28404,\n  \"rele\": 1602,\n  \"release\": 29100,\n  \"release</w>\": 2706,\n  \"released</w>\": 3410,\n  \"releases</w>\": 7393,\n  \"releasethe\": 44008,\n  \"releasing</w>\": 10321,\n  \"releg\": 23378,\n  \"relegated</w>\": 45884,\n  \"relegation</w>\": 35040,\n  \"relent\": 22213,\n  \"relentless</w>\": 27207,\n  \"relessly</w>\": 33927,\n  \"relev\": 9349,\n  \"relevance</w>\": 31400,\n  \"relevant</w>\": 10568,\n  \"reli\": 2674,\n  \"reliability</w>\": 27220,\n  \"reliable</w>\": 13714,\n  \"reliance</w>\": 27727,\n  \"relic</w>\": 27802,\n  \"relics</w>\": 43208,\n  \"relief</w>\": 7518,\n  \"relies</w>\": 41579,\n  \"relieve</w>\": 28623,\n  \"relieved</w>\": 36597,\n  \"religi\": 4940,\n  \"religion</w>\": 8803,\n  \"religions</w>\": 31189,\n  \"religious</w>\": 8289,\n  \"relish</w>\": 35550,\n  \"relive</w>\": 23939,\n  \"reliving</w>\": 47558,\n  \"rell\": 28802,\n  \"rell</w>\": 7127,\n  \"rella</w>\": 9952,\n  \"relle</w>\": 31390,\n  \"reloaded</w>\": 38908,\n  \"relocated</w>\": 46791,\n  \"relocation</w>\": 39198,\n  \"rels</w>\": 23320,\n  \"relu\": 32058,\n  \"reluct\": 32549,\n  \"reluctant</w>\": 45552,\n  \"rely</w>\": 4158,\n  \"relying</w>\": 42168,\n  \"rem\": 15098,\n  \"rem</w>\": 21637,\n  \"rema\": 4569,\n  \"remain\": 29144,\n  \"remain</w>\": 6415,\n  \"remainder</w>\": 41672,\n  \"remained</w>\": 23714,\n  \"remaining</w>\": 11392,\n  \"remains</w>\": 6807,\n  \"remake</w>\": 16234,\n  \"remark\": 11136,\n  \"remarkable</w>\": 12404,\n  \"remarkably</w>\": 39087,\n  \"remarks</w>\": 15001,\n  \"remastered</w>\": 24932,\n  \"rematch</w>\": 26473,\n  \"rembrandt</w>\": 45972,\n  \"reme\": 20071,\n  \"remedi\": 18442,\n  \"remedies</w>\": 25581,\n  \"remedy</w>\": 25794,\n  \"remem\": 7966,\n  \"rememb\": 7062,\n  \"remember\": 22045,\n  \"remember</w>\": 2195,\n  \"remembered</w>\": 11763,\n  \"remembering</w>\": 8135,\n  \"remembers</w>\": 12551,\n  \"remembrance\": 40321,\n  \"remembrance</w>\": 15860,\n  \"remembranceday</w>\": 48333,\n  \"rement</w>\": 7173,\n  \"rements</w>\": 12667,\n  \"remi</w>\": 41693,\n  \"remin\": 3216,\n  \"remind</w>\": 9868,\n  \"reminded</w>\": 12309,\n  \"reminder</w>\": 5565,\n  \"reminders</w>\": 34121,\n  \"reminding</w>\": 19976,\n  \"reminds</w>\": 8303,\n  \"remington</w>\": 43527,\n  \"reminis\": 17723,\n  \"reminiscent</w>\": 41704,\n  \"reminiscing</w>\": 32552,\n  \"remix</w>\": 8519,\n  \"remixes</w>\": 31011,\n  \"remn\": 29127,\n  \"remnants</w>\": 39032,\n  \"remo\": 4064,\n  \"remo</w>\": 33259,\n  \"remodel\": 34159,\n  \"remodel</w>\": 37495,\n  \"remodeling</w>\": 41432,\n  \"remote\": 47163,\n  \"remote</w>\": 9687,\n  \"remotely</w>\": 32375,\n  \"removable</w>\": 44095,\n  \"removal</w>\": 13679,\n  \"remove</w>\": 9709,\n  \"removed</w>\": 10289,\n  \"remover</w>\": 44267,\n  \"removes</w>\": 29018,\n  \"removing</w>\": 18504,\n  \"remy</w>\": 30434,\n  \"ren\": 737,\n  \"ren</w>\": 2596,\n  \"rena</w>\": 12591,\n  \"renais\": 15409,\n  \"renaissance</w>\": 16007,\n  \"renal</w>\": 36096,\n  \"renamed</w>\": 31535,\n  \"renault</w>\": 17600,\n  \"rence\": 19245,\n  \"rence</w>\": 1553,\n  \"rences</w>\": 8545,\n  \"rend\": 33932,\n  \"rend</w>\": 22851,\n  \"render\": 39752,\n  \"render</w>\": 13024,\n  \"rendered</w>\": 23652,\n  \"rendering</w>\": 21339,\n  \"renders</w>\": 39419,\n  \"rendez\": 43293,\n  \"rendezvous</w>\": 45644,\n  \"rendition</w>\": 28891,\n  \"rendon</w>\": 46272,\n  \"rendous</w>\": 49403,\n  \"rends</w>\": 38842,\n  \"rene\": 15438,\n  \"rene</w>\": 12597,\n  \"renee</w>\": 23480,\n  \"reneg\": 29909,\n  \"renegade</w>\": 41229,\n  \"renergy</w>\": 37151,\n  \"renew\": 6645,\n  \"renew</w>\": 22015,\n  \"renewable\": 31269,\n  \"renewable</w>\": 15941,\n  \"renewableenergy</w>\": 33357,\n  \"renewables</w>\": 21619,\n  \"renewal</w>\": 21270,\n  \"renewed</w>\": 20524,\n  \"renfre\": 45043,\n  \"reng</w>\": 36795,\n  \"reno\": 11520,\n  \"reno</w>\": 12831,\n  \"renov\": 9984,\n  \"renovated</w>\": 23839,\n  \"renovation</w>\": 17121,\n  \"renovations</w>\": 31311,\n  \"renowned</w>\": 14727,\n  \"rens</w>\": 18183,\n  \"renshaw</w>\": 44445,\n  \"rent\": 17377,\n  \"rent</w>\": 1609,\n  \"rental</w>\": 12193,\n  \"rentals</w>\": 24105,\n  \"rented</w>\": 35932,\n  \"rential</w>\": 31692,\n  \"renting</w>\": 37662,\n  \"rently</w>\": 2615,\n  \"rents</w>\": 31109,\n  \"reo\": 15963,\n  \"reo</w>\": 26854,\n  \"reon</w>\": 15761,\n  \"reopen</w>\": 26883,\n  \"reopened</w>\": 32868,\n  \"reopening</w>\": 36663,\n  \"reopens</w>\": 40644,\n  \"rep\": 4229,\n  \"rep</w>\": 6487,\n  \"repair</w>\": 8419,\n  \"repaired</w>\": 32953,\n  \"repairing</w>\": 38534,\n  \"repairs</w>\": 16297,\n  \"repar\": 34065,\n  \"repe\": 5785,\n  \"repeal\": 42622,\n  \"repeal</w>\": 23938,\n  \"repeat</w>\": 10192,\n  \"repeated</w>\": 27904,\n  \"repeatedly</w>\": 26630,\n  \"repeating</w>\": 33834,\n  \"repeats</w>\": 39158,\n  \"repell\": 46235,\n  \"repent\": 47261,\n  \"reper\": 29085,\n  \"repet\": 38533,\n  \"repl\": 13047,\n  \"replac\": 6069,\n  \"replace</w>\": 9466,\n  \"replaceable</w>\": 47762,\n  \"replaced</w>\": 13200,\n  \"replacement</w>\": 10835,\n  \"replaces</w>\": 27781,\n  \"replacing</w>\": 18647,\n  \"replay</w>\": 16875,\n  \"repleni\": 44839,\n  \"replic\": 21651,\n  \"replica</w>\": 18125,\n  \"replied</w>\": 24238,\n  \"replies</w>\": 18808,\n  \"reply</w>\": 8965,\n  \"replying</w>\": 47599,\n  \"repor\": 2628,\n  \"report</w>\": 2417,\n  \"reported</w>\": 7598,\n  \"reportedly</w>\": 10953,\n  \"reporter</w>\": 11019,\n  \"reporters</w>\": 18454,\n  \"reporting</w>\": 9218,\n  \"reports</w>\": 4908,\n  \"reposit\": 41276,\n  \"repository</w>\": 46977,\n  \"repost\": 33147,\n  \"repost</w>\": 7217,\n  \"repostapp</w>\": 38388,\n  \"reposting</w>\": 20223,\n  \"reppin</w>\": 19163,\n  \"repping</w>\": 22574,\n  \"repre\": 3397,\n  \"represent\": 8293,\n  \"represent</w>\": 8406,\n  \"representation</w>\": 13520,\n  \"representative</w>\": 13175,\n  \"representatives</w>\": 15591,\n  \"represented</w>\": 12299,\n  \"representing</w>\": 7561,\n  \"represents</w>\": 14433,\n  \"repri\": 31854,\n  \"reproduction</w>\": 35714,\n  \"reproductive</w>\": 25522,\n  \"reps</w>\": 14265,\n  \"reptile</w>\": 36938,\n  \"reptiles</w>\": 38679,\n  \"republic\": 6376,\n  \"republic</w>\": 7185,\n  \"republican</w>\": 9842,\n  \"republicans</w>\": 12384,\n  \"repur\": 41852,\n  \"req</w>\": 42411,\n  \"requ\": 10664,\n  \"reque\": 9539,\n  \"request</w>\": 7813,\n  \"requested</w>\": 16199,\n  \"requesting</w>\": 33245,\n  \"requests</w>\": 17087,\n  \"requi\": 4863,\n  \"requiem</w>\": 40316,\n  \"require</w>\": 14437,\n  \"required</w>\": 8500,\n  \"requirement</w>\": 27146,\n  \"requirements</w>\": 12860,\n  \"requires</w>\": 13396,\n  \"requiring</w>\": 33425,\n  \"requis\": 42602,\n  \"rer\": 41295,\n  \"rer</w>\": 3407,\n  \"rera</w>\": 14301,\n  \"rero</w>\": 21860,\n  \"rers</w>\": 18869,\n  \"res\": 4466,\n  \"res</w>\": 934,\n  \"resc\": 3956,\n  \"rescheduled</w>\": 43553,\n  \"rescu\": 8618,\n  \"rescue\": 28567,\n  \"rescue</w>\": 5718,\n  \"rescued</w>\": 11919,\n  \"rescues</w>\": 32439,\n  \"rescuing</w>\": 43770,\n  \"rese\": 13000,\n  \"resear\": 6090,\n  \"research\": 25694,\n  \"research</w>\": 2379,\n  \"researched</w>\": 42733,\n  \"researcher</w>\": 18334,\n  \"researchers</w>\": 9522,\n  \"researching</w>\": 24544,\n  \"reseller</w>\": 35391,\n  \"resemb\": 16916,\n  \"resemblance</w>\": 26856,\n  \"resemble</w>\": 37230,\n  \"resembles</w>\": 35417,\n  \"reser\": 16420,\n  \"reserv\": 11906,\n  \"reservation</w>\": 20289,\n  \"reservations</w>\": 19307,\n  \"reserve</w>\": 6911,\n  \"reserved</w>\": 19796,\n  \"reserves</w>\": 19705,\n  \"reservoir</w>\": 20574,\n  \"reset</w>\": 26250,\n  \"resh</w>\": 47432,\n  \"reshi</w>\": 39435,\n  \"resi\": 2152,\n  \"residen\": 22311,\n  \"residence</w>\": 11672,\n  \"residences</w>\": 38855,\n  \"residency</w>\": 18545,\n  \"resident</w>\": 9016,\n  \"residente\": 44637,\n  \"residentevil</w>\": 48393,\n  \"residential</w>\": 11002,\n  \"residents</w>\": 6008,\n  \"resign</w>\": 23584,\n  \"resignation</w>\": 24779,\n  \"resigned</w>\": 31014,\n  \"resigns</w>\": 29738,\n  \"resil\": 10932,\n  \"resili\": 39212,\n  \"resilience</w>\": 15271,\n  \"resilient</w>\": 24694,\n  \"resin</w>\": 24156,\n  \"resist\": 37345,\n  \"resist</w>\": 9587,\n  \"resistance</w>\": 7392,\n  \"resistant</w>\": 17542,\n  \"resisting</w>\": 43679,\n  \"resolution</w>\": 9977,\n  \"resolutions</w>\": 26816,\n  \"resolve</w>\": 20787,\n  \"resolved</w>\": 28807,\n  \"reson\": 18092,\n  \"resonance</w>\": 42310,\n  \"resort</w>\": 6594,\n  \"resorts</w>\": 18839,\n  \"resource\": 43729,\n  \"resource</w>\": 9760,\n  \"resources</w>\": 6723,\n  \"respec\": 7466,\n  \"respect\": 31411,\n  \"respect</w>\": 4916,\n  \"respected</w>\": 19126,\n  \"respectful</w>\": 24379,\n  \"respecting</w>\": 36172,\n  \"respective</w>\": 25817,\n  \"respectively</w>\": 28794,\n  \"respects</w>\": 23553,\n  \"respir\": 20771,\n  \"respiratory</w>\": 24483,\n  \"respon\": 2421,\n  \"respond</w>\": 12355,\n  \"responded</w>\": 21121,\n  \"respondents</w>\": 49253,\n  \"responders</w>\": 25155,\n  \"responding</w>\": 18037,\n  \"responds</w>\": 17436,\n  \"response</w>\": 5399,\n  \"responses</w>\": 19006,\n  \"responsi\": 5490,\n  \"responsibilities</w>\": 30375,\n  \"responsibility</w>\": 11272,\n  \"responsible</w>\": 8936,\n  \"responsibly</w>\": 33675,\n  \"responsive</w>\": 21544,\n  \"ress\": 34651,\n  \"ress</w>\": 13629,\n  \"resso</w>\": 15133,\n  \"rest\": 10974,\n  \"rest</w>\": 2539,\n  \"restart</w>\": 37378,\n  \"restaur\": 3775,\n  \"restaurant\": 41930,\n  \"restaurant</w>\": 4489,\n  \"restaurants</w>\": 11714,\n  \"rested</w>\": 46020,\n  \"resting</w>\": 18044,\n  \"restless</w>\": 36724,\n  \"restling</w>\": 30076,\n  \"resto\": 11118,\n  \"resto</w>\": 41666,\n  \"restock</w>\": 34060,\n  \"restocked</w>\": 36966,\n  \"restor\": 8984,\n  \"restoration</w>\": 11989,\n  \"restorative</w>\": 46509,\n  \"restore</w>\": 14008,\n  \"restored</w>\": 14238,\n  \"restoring</w>\": 24406,\n  \"restra\": 25424,\n  \"restric\": 11036,\n  \"restricted</w>\": 27197,\n  \"restriction</w>\": 44282,\n  \"restrictions</w>\": 19884,\n  \"restroom</w>\": 43423,\n  \"restructuring</w>\": 43260,\n  \"rests</w>\": 33775,\n  \"resu\": 10095,\n  \"resul\": 2655,\n  \"result</w>\": 5659,\n  \"resulted</w>\": 26449,\n  \"resulting</w>\": 24581,\n  \"results</w>\": 3790,\n  \"resume</w>\": 15077,\n  \"resumes</w>\": 30268,\n  \"resur\": 14865,\n  \"resurg\": 45962,\n  \"resurgence</w>\": 47692,\n  \"resurrec\": 18487,\n  \"resurrection</w>\": 25811,\n  \"resusc\": 47523,\n  \"ret\": 20500,\n  \"ret</w>\": 10048,\n  \"reta\": 20153,\n  \"retail\": 14910,\n  \"retail</w>\": 6455,\n  \"retailer</w>\": 22549,\n  \"retailers</w>\": 19418,\n  \"retain</w>\": 24430,\n  \"retained</w>\": 42737,\n  \"retaining</w>\": 35571,\n  \"retains</w>\": 42583,\n  \"retali\": 33101,\n  \"retar\": 29964,\n  \"retarded</w>\": 44111,\n  \"retention</w>\": 26247,\n  \"rethink</w>\": 29078,\n  \"rethinking</w>\": 42951,\n  \"reti\": 4721,\n  \"retin\": 31270,\n  \"retina</w>\": 36919,\n  \"retire</w>\": 18846,\n  \"retired</w>\": 11477,\n  \"retirement</w>\": 9205,\n  \"retires</w>\": 29060,\n  \"retiring</w>\": 21200,\n  \"retrac\": 32735,\n  \"retreat</w>\": 11210,\n  \"retri\": 16918,\n  \"retriever</w>\": 28394,\n  \"retro\": 6535,\n  \"retro</w>\": 7755,\n  \"retrogamer</w>\": 47220,\n  \"retrogaming</w>\": 11316,\n  \"retrospective</w>\": 27105,\n  \"rett\": 41082,\n  \"rett</w>\": 8425,\n  \"rette</w>\": 33066,\n  \"return\": 43042,\n  \"return</w>\": 3458,\n  \"returned</w>\": 10476,\n  \"returning</w>\": 9290,\n  \"returns</w>\": 5020,\n  \"retwee\": 48190,\n  \"retweet</w>\": 3195,\n  \"retweeted</w>\": 12705,\n  \"retweeting</w>\": 32345,\n  \"retweets</w>\": 10160,\n  \"rety</w>\": 41550,\n  \"reu\": 20255,\n  \"reu</w>\": 40371,\n  \"reuben</w>\": 40450,\n  \"reunion</w>\": 10247,\n  \"reunite</w>\": 26179,\n  \"reunited</w>\": 13516,\n  \"reusable</w>\": 30395,\n  \"reuse</w>\": 26535,\n  \"reut\": 15210,\n  \"reuters</w>\": 15569,\n  \"rev\": 8424,\n  \"rev</w>\": 11789,\n  \"revamp</w>\": 29819,\n  \"revamped</w>\": 36420,\n  \"revan</w>\": 45277,\n  \"reve\": 3115,\n  \"reveal</w>\": 8052,\n  \"revealed</w>\": 7171,\n  \"revealing</w>\": 21321,\n  \"reveals</w>\": 6621,\n  \"revel\": 14133,\n  \"revelation</w>\": 24053,\n  \"revelations</w>\": 36163,\n  \"reven\": 10171,\n  \"revenge</w>\": 12717,\n  \"revenue</w>\": 10637,\n  \"revenues</w>\": 33348,\n  \"rever\": 14829,\n  \"rever</w>\": 41913,\n  \"revere</w>\": 44187,\n  \"reverend</w>\": 34407,\n  \"revers\": 20726,\n  \"reversal</w>\": 33367,\n  \"reverse</w>\": 12812,\n  \"reversed</w>\": 42485,\n  \"reversi\": 31601,\n  \"reversible</w>\": 34212,\n  \"revi\": 8317,\n  \"review</w>\": 2268,\n  \"reviewed</w>\": 16678,\n  \"reviewer</w>\": 36409,\n  \"reviewers</w>\": 48195,\n  \"reviewing</w>\": 20458,\n  \"reviews</w>\": 7227,\n  \"revise</w>\": 46801,\n  \"revised</w>\": 22806,\n  \"revising</w>\": 46882,\n  \"revision</w>\": 20335,\n  \"revisit</w>\": 26568,\n  \"revisited</w>\": 34302,\n  \"revisiting</w>\": 33144,\n  \"revit\": 26367,\n  \"revitalization</w>\": 46923,\n  \"revival</w>\": 14142,\n  \"revive</w>\": 26450,\n  \"revived</w>\": 42912,\n  \"revo\": 28660,\n  \"revol\": 13447,\n  \"revolt</w>\": 31697,\n  \"revolu\": 4900,\n  \"revolution\": 17699,\n  \"revolution</w>\": 6644,\n  \"revolutionary</w>\": 14734,\n  \"revolver</w>\": 38747,\n  \"revolving</w>\": 47230,\n  \"revs</w>\": 49286,\n  \"revue</w>\": 43428,\n  \"rew</w>\": 37564,\n  \"rewar\": 15857,\n  \"reward</w>\": 11223,\n  \"rewarded</w>\": 27163,\n  \"rewarding</w>\": 23351,\n  \"rewards</w>\": 15235,\n  \"rewatch</w>\": 35610,\n  \"rewatching</w>\": 41287,\n  \"rewind</w>\": 26867,\n  \"rewrite</w>\": 45218,\n  \"rex\": 13002,\n  \"rex</w>\": 10904,\n  \"rexperience</w>\": 33924,\n  \"rey\": 9681,\n  \"rey</w>\": 4517,\n  \"reyes</w>\": 18255,\n  \"reykja\": 47571,\n  \"reyn\": 11998,\n  \"reynolds</w>\": 14309,\n  \"reys</w>\": 48284,\n  \"rez\": 27597,\n  \"rez</w>\": 15192,\n  \"reza</w>\": 35888,\n  \"rf\": 35529,\n  \"rf</w>\": 16368,\n  \"rfc</w>\": 19003,\n  \"rfid</w>\": 40204,\n  \"rg\": 33055,\n  \"rg</w>\": 14897,\n  \"rgb</w>\": 36128,\n  \"rgv</w>\": 33685,\n  \"rh\": 8745,\n  \"rh</w>\": 22404,\n  \"rha\": 19473,\n  \"rhapso\": 32532,\n  \"rhapsody</w>\": 35774,\n  \"rhe\": 9186,\n  \"rhea</w>\": 28612,\n  \"rhetor\": 24359,\n  \"rhetoric</w>\": 29985,\n  \"rhett</w>\": 42984,\n  \"rheu\": 42953,\n  \"rhi\": 21212,\n  \"rhin\": 12269,\n  \"rhine\": 22863,\n  \"rhine</w>\": 44833,\n  \"rhinestone</w>\": 30450,\n  \"rhino\": 41744,\n  \"rhino</w>\": 20056,\n  \"rhinos</w>\": 30671,\n  \"rho\": 7637,\n  \"rhode\": 39302,\n  \"rhode</w>\": 27907,\n  \"rhodes</w>\": 17785,\n  \"rhon\": 25882,\n  \"rhonda</w>\": 46100,\n  \"rhp</w>\": 27199,\n  \"rhs</w>\": 24551,\n  \"rhu\": 23897,\n  \"rhubarb</w>\": 30213,\n  \"rhy\": 7740,\n  \"rhyme</w>\": 37356,\n  \"rhymes</w>\": 33143,\n  \"rhys</w>\": 28647,\n  \"rhyth\": 27069,\n  \"rhythm</w>\": 16172,\n  \"rhythmic</w>\": 46386,\n  \"rhythms</w>\": 40872,\n  \"ri\": 553,\n  \"ri</w>\": 2574,\n  \"ria</w>\": 3650,\n  \"rial</w>\": 15200,\n  \"rian</w>\": 7788,\n  \"rib\": 44634,\n  \"rib</w>\": 18298,\n  \"riba</w>\": 44992,\n  \"ribb\": 10081,\n  \"ribbon</w>\": 12114,\n  \"ribbons</w>\": 35271,\n  \"ribe\": 46115,\n  \"ribs</w>\": 17519,\n  \"ric\": 920,\n  \"ric</w>\": 4798,\n  \"rica</w>\": 14230,\n  \"rical</w>\": 18109,\n  \"rican</w>\": 30958,\n  \"ricardo</w>\": 23140,\n  \"ricci\": 35783,\n  \"ricciardo</w>\": 49282,\n  \"rice\": 36362,\n  \"rice</w>\": 4741,\n  \"rich\": 5223,\n  \"rich</w>\": 4021,\n  \"richar\": 9350,\n  \"richard\": 9080,\n  \"richard</w>\": 4470,\n  \"richards</w>\": 11372,\n  \"richardson</w>\": 15984,\n  \"riche\": 23286,\n  \"richer</w>\": 34138,\n  \"riches</w>\": 37093,\n  \"richest</w>\": 25572,\n  \"richi\": 38934,\n  \"richie</w>\": 19797,\n  \"richland</w>\": 43079,\n  \"richmond\": 34143,\n  \"richmond</w>\": 11292,\n  \"richter</w>\": 37591,\n  \"rick\": 6237,\n  \"rick</w>\": 3064,\n  \"ricket\": 46161,\n  \"ricket</w>\": 23671,\n  \"ricks</w>\": 23111,\n  \"ricky\": 19188,\n  \"ricky</w>\": 12814,\n  \"rico\": 37962,\n  \"rico</w>\": 11362,\n  \"ricotta</w>\": 38473,\n  \"rics</w>\": 7353,\n  \"ricul\": 6980,\n  \"rid\": 18103,\n  \"rid</w>\": 9874,\n  \"ridd\": 21990,\n  \"ridden</w>\": 32025,\n  \"riddle</w>\": 31839,\n  \"ride\": 15816,\n  \"ride</w>\": 2994,\n  \"rider\": 31056,\n  \"rider</w>\": 9707,\n  \"riders</w>\": 10826,\n  \"rides</w>\": 11308,\n  \"ridg\": 42646,\n  \"ridge\": 16580,\n  \"ridge</w>\": 6352,\n  \"ridic\": 9624,\n  \"ridiculous</w>\": 12659,\n  \"ridiculously</w>\": 25661,\n  \"ridin</w>\": 47869,\n  \"riding</w>\": 6765,\n  \"ridley</w>\": 27883,\n  \"rie\": 14824,\n  \"rie</w>\": 5322,\n  \"ried</w>\": 7552,\n  \"riel</w>\": 26696,\n  \"rien</w>\": 35237,\n  \"rier\": 40714,\n  \"rier</w>\": 13336,\n  \"ries\": 28179,\n  \"ries</w>\": 3059,\n  \"riesling</w>\": 36372,\n  \"rif\": 7044,\n  \"riff</w>\": 30359,\n  \"rifle</w>\": 15354,\n  \"rifles</w>\": 25678,\n  \"rift</w>\": 26681,\n  \"rig\": 18462,\n  \"rig</w>\": 13871,\n  \"riga</w>\": 36626,\n  \"rigged</w>\": 35897,\n  \"rigging</w>\": 38160,\n  \"riggs</w>\": 40328,\n  \"righ\": 15391,\n  \"right\": 13341,\n  \"right</w>\": 1155,\n  \"righte\": 20762,\n  \"righteous</w>\": 28169,\n  \"righteousness</w>\": 42481,\n  \"rightful</w>\": 42601,\n  \"rightly</w>\": 42669,\n  \"rights</w>\": 3336,\n  \"rigid</w>\": 43138,\n  \"rigor\": 36788,\n  \"rigorous</w>\": 41654,\n  \"rigs</w>\": 42893,\n  \"rihanna</w>\": 13744,\n  \"rij\": 41097,\n  \"rik\": 31136,\n  \"rik</w>\": 27832,\n  \"rika</w>\": 28580,\n  \"ril\": 12270,\n  \"ril</w>\": 2388,\n  \"riley\": 35056,\n  \"riley</w>\": 12260,\n  \"rill</w>\": 23705,\n  \"rilla\": 43956,\n  \"rilla</w>\": 18685,\n  \"rim\": 28147,\n  \"rim</w>\": 12199,\n  \"rime</w>\": 27064,\n  \"rimin\": 11527,\n  \"rimo</w>\": 47817,\n  \"rims</w>\": 34327,\n  \"rin\": 5859,\n  \"rin</w>\": 11739,\n  \"rina</w>\": 12869,\n  \"rine</w>\": 24952,\n  \"ring\": 8318,\n  \"ring</w>\": 2540,\n  \"ringed</w>\": 44712,\n  \"ringer</w>\": 35761,\n  \"ringing</w>\": 26035,\n  \"ringo</w>\": 38845,\n  \"rings</w>\": 5751,\n  \"rington</w>\": 12455,\n  \"rink</w>\": 21497,\n  \"rinka</w>\": 47316,\n  \"rino</w>\": 47188,\n  \"rinse</w>\": 48320,\n  \"rio\": 15681,\n  \"rio</w>\": 5782,\n  \"rion\": 31623,\n  \"rion</w>\": 34046,\n  \"rios</w>\": 32814,\n  \"riot\": 32636,\n  \"riot</w>\": 14218,\n  \"riots</w>\": 24844,\n  \"rious</w>\": 6340,\n  \"rip\": 10353,\n  \"rip</w>\": 4243,\n  \"ripe</w>\": 22832,\n  \"ripley</w>\": 41589,\n  \"ripp\": 25276,\n  \"ripped</w>\": 17815,\n  \"ripper</w>\": 35347,\n  \"ripping</w>\": 29126,\n  \"ripple</w>\": 24825,\n  \"rips</w>\": 30182,\n  \"rir</w>\": 36792,\n  \"ris\": 6108,\n  \"ris</w>\": 1999,\n  \"rise\": 13641,\n  \"rise</w>\": 3151,\n  \"risen</w>\": 23653,\n  \"risers</w>\": 44983,\n  \"rises</w>\": 13362,\n  \"riseup</w>\": 35760,\n  \"rish\": 18378,\n  \"rish</w>\": 18927,\n  \"rishi\": 48434,\n  \"rising\": 30452,\n  \"rising</w>\": 5448,\n  \"risis</w>\": 37998,\n  \"risk\": 27967,\n  \"risk</w>\": 4213,\n  \"risking</w>\": 48155,\n  \"risks</w>\": 12474,\n  \"risky</w>\": 27630,\n  \"risotto</w>\": 31471,\n  \"rist</w>\": 40610,\n  \"rit\": 5156,\n  \"rit</w>\": 17333,\n  \"rita</w>\": 16178,\n  \"ritchie</w>\": 30997,\n  \"rite\": 39318,\n  \"rite</w>\": 18429,\n  \"rites</w>\": 36160,\n  \"rith\": 48169,\n  \"rith</w>\": 48850,\n  \"riti\": 32904,\n  \"rito</w>\": 19379,\n  \"ritos</w>\": 33507,\n  \"ritt</w>\": 26092,\n  \"ritter</w>\": 34854,\n  \"ritu\": 13391,\n  \"ritual</w>\": 19712,\n  \"rituals</w>\": 31145,\n  \"ritz\": 39151,\n  \"ritz</w>\": 25627,\n  \"rium</w>\": 33884,\n  \"riv\": 25113,\n  \"rival\": 13412,\n  \"rival</w>\": 15629,\n  \"rivalry</w>\": 19511,\n  \"rivals</w>\": 15135,\n  \"rive\": 27588,\n  \"rive</w>\": 34917,\n  \"river\": 5239,\n  \"river</w>\": 2473,\n  \"rivera</w>\": 18275,\n  \"riverdale</w>\": 28304,\n  \"riverfront</w>\": 44439,\n  \"rivers</w>\": 10723,\n  \"riverside</w>\": 15809,\n  \"riveting</w>\": 44024,\n  \"riviera</w>\": 25851,\n  \"rix\": 43407,\n  \"rix</w>\": 9483,\n  \"riya</w>\": 36908,\n  \"riyad\": 31564,\n  \"riyadh</w>\": 33577,\n  \"riz\": 18426,\n  \"riz</w>\": 35411,\n  \"rizal</w>\": 41555,\n  \"rizio</w>\": 40191,\n  \"rizz\": 34826,\n  \"rizzo</w>\": 49076,\n  \"rj\": 26016,\n  \"rj</w>\": 20949,\n  \"rk\": 38725,\n  \"rk</w>\": 21422,\n  \"rl\": 18041,\n  \"rl</w>\": 14590,\n  \"rlly</w>\": 43222,\n  \"rly</w>\": 25954,\n  \"rm\": 20202,\n  \"rm</w>\": 8431,\n  \"rmb</w>\": 49097,\n  \"rms</w>\": 40529,\n  \"rn\": 13206,\n  \"rn</w>\": 7666,\n  \"rna</w>\": 24566,\n  \"rnb</w>\": 31556,\n  \"rnc</w>\": 35309,\n  \"rnli</w>\": 29748,\n  \"ro\": 532,\n  \"ro</w>\": 2795,\n  \"roa\": 8313,\n  \"roach</w>\": 31073,\n  \"road\": 4370,\n  \"road</w>\": 1759,\n  \"roadhouse</w>\": 47891,\n  \"roadmap</w>\": 30111,\n  \"roads</w>\": 6189,\n  \"roadsafety</w>\": 39992,\n  \"roadshow</w>\": 21168,\n  \"roadside</w>\": 26928,\n  \"roadster</w>\": 28920,\n  \"roadto\": 24681,\n  \"roadtrip</w>\": 15094,\n  \"roadway</w>\": 42744,\n  \"roam</w>\": 34045,\n  \"roaming</w>\": 29240,\n  \"roano\": 34184,\n  \"roanoke</w>\": 36587,\n  \"roar\": 34193,\n  \"roar</w>\": 18483,\n  \"roaring</w>\": 26428,\n  \"roast</w>\": 11404,\n  \"roasted</w>\": 10479,\n  \"roasting</w>\": 32228,\n  \"rob\": 2668,\n  \"rob</w>\": 6442,\n  \"robb\": 14059,\n  \"robb</w>\": 39673,\n  \"robbed</w>\": 24163,\n  \"robber</w>\": 35545,\n  \"robbers</w>\": 40852,\n  \"robbery</w>\": 16393,\n  \"robbi\": 44898,\n  \"robbie\": 37200,\n  \"robbie</w>\": 15970,\n  \"robbing</w>\": 47569,\n  \"robbins</w>\": 23461,\n  \"robby</w>\": 44128,\n  \"robe</w>\": 23116,\n  \"rober\": 4532,\n  \"robert\": 8811,\n  \"robert</w>\": 3929,\n  \"roberta</w>\": 43373,\n  \"roberto\": 42645,\n  \"roberto</w>\": 16227,\n  \"roberts</w>\": 10366,\n  \"robertson</w>\": 17643,\n  \"robes</w>\": 29304,\n  \"robi</w>\": 16743,\n  \"robin\": 6681,\n  \"robin</w>\": 7988,\n  \"robins</w>\": 35502,\n  \"robinson</w>\": 8523,\n  \"robles</w>\": 47646,\n  \"roblo\": 27481,\n  \"roblox</w>\": 37798,\n  \"robo\": 4672,\n  \"robo</w>\": 36057,\n  \"robot\": 46089,\n  \"robot</w>\": 8797,\n  \"robotic</w>\": 23975,\n  \"robotics</w>\": 13546,\n  \"robots</w>\": 13473,\n  \"robson</w>\": 31113,\n  \"robust</w>\": 22780,\n  \"robyn</w>\": 34533,\n  \"roc\": 3268,\n  \"roc</w>\": 13776,\n  \"rocco</w>\": 30009,\n  \"roch\": 23788,\n  \"rochdale</w>\": 41880,\n  \"roche</w>\": 31776,\n  \"rochelle</w>\": 40161,\n  \"rochester</w>\": 18057,\n  \"rock\": 2640,\n  \"rock</w>\": 2172,\n  \"rockab\": 39353,\n  \"rockabilly</w>\": 45019,\n  \"rocke\": 19914,\n  \"rocked</w>\": 16116,\n  \"rockefeller</w>\": 35476,\n  \"rocker</w>\": 29008,\n  \"rockers</w>\": 32338,\n  \"rocket\": 25435,\n  \"rocket</w>\": 8383,\n  \"rockets</w>\": 13292,\n  \"rockford</w>\": 41039,\n  \"rockies</w>\": 20621,\n  \"rockin</w>\": 12073,\n  \"rocking</w>\": 7081,\n  \"rockn\": 24442,\n  \"rocknroll</w>\": 27840,\n  \"rocks</w>\": 6135,\n  \"rockstar\": 23603,\n  \"rockstar</w>\": 18000,\n  \"rockstargames</w>\": 27516,\n  \"rockstars</w>\": 46639,\n  \"rockthe\": 49363,\n  \"rockwell</w>\": 34747,\n  \"rocky\": 33481,\n  \"rocky</w>\": 9648,\n  \"rod\": 9712,\n  \"rod</w>\": 8291,\n  \"roddy</w>\": 42332,\n  \"rode</w>\": 18449,\n  \"rodeo</w>\": 18250,\n  \"rodgers</w>\": 17612,\n  \"rodi\": 49100,\n  \"rodney</w>\": 21753,\n  \"rodri\": 11053,\n  \"rodrigo</w>\": 33944,\n  \"rodriguez</w>\": 14057,\n  \"rods</w>\": 28618,\n  \"roe\": 27671,\n  \"roe</w>\": 9996,\n  \"rof\": 33029,\n  \"rofl</w>\": 48228,\n  \"roft</w>\": 45212,\n  \"rog\": 34269,\n  \"rog</w>\": 34017,\n  \"rogen</w>\": 23380,\n  \"roger\": 13929,\n  \"roger</w>\": 7735,\n  \"rogerfederer</w>\": 40182,\n  \"rogers</w>\": 10661,\n  \"rogue\": 32575,\n  \"rogue</w>\": 15162,\n  \"roh\": 14933,\n  \"roh</w>\": 29840,\n  \"rohan</w>\": 39848,\n  \"rohing\": 23600,\n  \"rohingya</w>\": 26146,\n  \"rohit\": 44649,\n  \"rohit</w>\": 24299,\n  \"roi</w>\": 21877,\n  \"rok</w>\": 36807,\n  \"rol\": 3393,\n  \"rol</w>\": 7818,\n  \"roland\": 33713,\n  \"roland</w>\": 19569,\n  \"role\": 18485,\n  \"role</w>\": 3414,\n  \"roles</w>\": 11871,\n  \"rolex</w>\": 21093,\n  \"rolf</w>\": 48606,\n  \"roll\": 4711,\n  \"roll</w>\": 3341,\n  \"rolled</w>\": 11982,\n  \"roller\": 21034,\n  \"roller</w>\": 12342,\n  \"rollercoaster</w>\": 38248,\n  \"rollers</w>\": 36941,\n  \"rollin</w>\": 27545,\n  \"rolling\": 24250,\n  \"rolling</w>\": 6347,\n  \"rollingstones</w>\": 41309,\n  \"rollins</w>\": 27724,\n  \"rollout</w>\": 47710,\n  \"rollover</w>\": 39214,\n  \"rolls</w>\": 8614,\n  \"rolltide</w>\": 28101,\n  \"rom\": 11377,\n  \"rom</w>\": 19205,\n  \"roma\": 44134,\n  \"roma</w>\": 11631,\n  \"romain</w>\": 48897,\n  \"roman\": 4416,\n  \"roman</w>\": 7370,\n  \"romance</w>\": 7215,\n  \"romania</w>\": 15884,\n  \"romanian</w>\": 30866,\n  \"romano</w>\": 38409,\n  \"romans</w>\": 23066,\n  \"romantic\": 41457,\n  \"romantic</w>\": 8821,\n  \"rome\": 9406,\n  \"rome</w>\": 5243,\n  \"romeo</w>\": 14429,\n  \"romero</w>\": 23694,\n  \"romney</w>\": 19287,\n  \"romo</w>\": 32248,\n  \"romper</w>\": 43699,\n  \"ron\": 2393,\n  \"ron</w>\": 3372,\n  \"rona</w>\": 42385,\n  \"ronal\": 46194,\n  \"ronald</w>\": 15683,\n  \"ronaldo</w>\": 13463,\n  \"ronan</w>\": 34971,\n  \"rond\": 31935,\n  \"ronda</w>\": 37436,\n  \"rondo</w>\": 43756,\n  \"rone\": 48082,\n  \"rone</w>\": 32763,\n  \"roni</w>\": 47234,\n  \"ronnie\": 45257,\n  \"ronnie</w>\": 16421,\n  \"rons</w>\": 19536,\n  \"ront</w>\": 48881,\n  \"roo\": 1249,\n  \"roo</w>\": 31227,\n  \"rood</w>\": 38007,\n  \"roof\": 9120,\n  \"roof</w>\": 6449,\n  \"roofing</w>\": 24415,\n  \"roofs</w>\": 34635,\n  \"rooftop</w>\": 16319,\n  \"rook</w>\": 35918,\n  \"rookie</w>\": 9771,\n  \"rookies</w>\": 31917,\n  \"room\": 8845,\n  \"room</w>\": 1530,\n  \"roomie</w>\": 36851,\n  \"roommate</w>\": 19825,\n  \"roommates</w>\": 37323,\n  \"rooms</w>\": 6328,\n  \"rooney</w>\": 17712,\n  \"roos</w>\": 32938,\n  \"roosevel\": 17644,\n  \"roosevelt</w>\": 18488,\n  \"rooster\": 46263,\n  \"rooster</w>\": 30926,\n  \"roosters</w>\": 43693,\n  \"root\": 25930,\n  \"root</w>\": 9728,\n  \"rooted</w>\": 30428,\n  \"rooting</w>\": 25523,\n  \"roots</w>\": 8084,\n  \"rop</w>\": 43401,\n  \"rope</w>\": 9953,\n  \"ropes</w>\": 30506,\n  \"ror\": 8668,\n  \"ror</w>\": 2843,\n  \"rors</w>\": 12072,\n  \"rory\": 42804,\n  \"rory</w>\": 17813,\n  \"ros\": 5288,\n  \"ros</w>\": 6930,\n  \"rosa</w>\": 14393,\n  \"rosal\": 30397,\n  \"rosario</w>\": 33640,\n  \"rosary</w>\": 33098,\n  \"rosberg</w>\": 46037,\n  \"rose\": 6146,\n  \"rose</w>\": 3568,\n  \"roseanne</w>\": 47528,\n  \"rosel\": 33616,\n  \"rosemary</w>\": 19472,\n  \"rosen\": 13214,\n  \"rosen</w>\": 36424,\n  \"rosenberg</w>\": 43558,\n  \"rosenthal</w>\": 46990,\n  \"roses</w>\": 9061,\n  \"rosetta</w>\": 43800,\n  \"rosewood</w>\": 38686,\n  \"rosie\": 43049,\n  \"rosie</w>\": 16888,\n  \"ross\": 8801,\n  \"ross</w>\": 2158,\n  \"rosse</w>\": 11602,\n  \"rossi</w>\": 24817,\n  \"rosso</w>\": 33023,\n  \"roster</w>\": 12487,\n  \"roswell</w>\": 45116,\n  \"rosy</w>\": 46705,\n  \"rosÃ©</w>\": 28006,\n  \"rot\": 10055,\n  \"rot</w>\": 9643,\n  \"rotar\": 45959,\n  \"rotary</w>\": 14654,\n  \"rotating</w>\": 32265,\n  \"rotation</w>\": 18089,\n  \"rotc</w>\": 32252,\n  \"roth\": 17741,\n  \"roth</w>\": 19139,\n  \"rother\": 23174,\n  \"rotherham</w>\": 37687,\n  \"rothschild</w>\": 45089,\n  \"roti</w>\": 46940,\n  \"roto\": 34698,\n  \"rotor</w>\": 42991,\n  \"rots</w>\": 16642,\n  \"rott\": 34806,\n  \"rotten</w>\": 24324,\n  \"rotter\": 22614,\n  \"rotterdam</w>\": 23422,\n  \"rotun\": 42970,\n  \"rou\": 2964,\n  \"rou</w>\": 34783,\n  \"roud</w>\": 28375,\n  \"rouge</w>\": 16209,\n  \"rough\": 11699,\n  \"rough</w>\": 8511,\n  \"roughly</w>\": 21910,\n  \"roughs</w>\": 37598,\n  \"rouhani</w>\": 39912,\n  \"roulette</w>\": 39930,\n  \"roun\": 5602,\n  \"round\": 9403,\n  \"round</w>\": 2522,\n  \"roundabout</w>\": 29953,\n  \"rounded</w>\": 26973,\n  \"rounder</w>\": 37024,\n  \"rounding</w>\": 40208,\n  \"rounds</w>\": 11242,\n  \"roundtable</w>\": 19386,\n  \"roundup</w>\": 17503,\n  \"roup</w>\": 29220,\n  \"rourke</w>\": 38753,\n  \"rous\": 33645,\n  \"rous</w>\": 34531,\n  \"rousey</w>\": 46267,\n  \"rout\": 7502,\n  \"rout</w>\": 41778,\n  \"route</w>\": 5261,\n  \"router</w>\": 29962,\n  \"routes</w>\": 14923,\n  \"routine</w>\": 12319,\n  \"routines</w>\": 44074,\n  \"routing</w>\": 44086,\n  \"roux</w>\": 43416,\n  \"rov</w>\": 23971,\n  \"rove</w>\": 30130,\n  \"rover</w>\": 12776,\n  \"rovers</w>\": 16373,\n  \"row\": 5275,\n  \"row</w>\": 1044,\n  \"rowan</w>\": 26240,\n  \"rowdy</w>\": 32141,\n  \"rowe</w>\": 28323,\n  \"rowed</w>\": 22615,\n  \"rower</w>\": 43345,\n  \"rowers</w>\": 41806,\n  \"rowing</w>\": 12807,\n  \"rowland</w>\": 33037,\n  \"rowley</w>\": 48793,\n  \"rowling</w>\": 29371,\n  \"rown\": 22287,\n  \"rown</w>\": 25060,\n  \"rows</w>\": 9409,\n  \"rox\": 14111,\n  \"rox</w>\": 41033,\n  \"roxy</w>\": 28093,\n  \"roy\": 2128,\n  \"roy</w>\": 6354,\n  \"royal\": 6691,\n  \"royal</w>\": 3853,\n  \"royale</w>\": 20630,\n  \"royalnavy</w>\": 41545,\n  \"royals</w>\": 13335,\n  \"royalties</w>\": 48660,\n  \"royalty</w>\": 18296,\n  \"royalwedding</w>\": 27461,\n  \"royce</w>\": 18444,\n  \"royd</w>\": 41476,\n  \"royo</w>\": 39357,\n  \"roz\": 28989,\n  \"roz</w>\": 37250,\n  \"rp\": 17305,\n  \"rp</w>\": 8174,\n  \"rpa</w>\": 41872,\n  \"rpg</w>\": 12445,\n  \"rpm</w>\": 23715,\n  \"rps</w>\": 49215,\n  \"rr\": 5311,\n  \"rr</w>\": 9126,\n  \"rrp</w>\": 36967,\n  \"rrr</w>\": 18267,\n  \"rrrr\": 25561,\n  \"rrrr</w>\": 34444,\n  \"rs\": 6978,\n  \"rs</w>\": 1724,\n  \"rsa</w>\": 29437,\n  \"rsc</w>\": 48524,\n  \"rsd</w>\": 34426,\n  \"rsi</w>\": 39046,\n  \"rsl</w>\": 44752,\n  \"rsp\": 16381,\n  \"rspb\": 38508,\n  \"rspb</w>\": 36727,\n  \"rspca</w>\": 45643,\n  \"rss\": 46466,\n  \"rss</w>\": 22350,\n  \"rstats</w>\": 38700,\n  \"rsvp</w>\": 9774,\n  \"rt\": 8959,\n  \"rt</w>\": 8991,\n  \"rtc</w>\": 31648,\n  \"rte\": 33822,\n  \"rte</w>\": 23322,\n  \"rtg</w>\": 22028,\n  \"rti</w>\": 47549,\n  \"rtr</w>\": 43999,\n  \"rts</w>\": 8496,\n  \"rtw</w>\": 34673,\n  \"ru\": 681,\n  \"ru</w>\": 13735,\n  \"rub\": 15862,\n  \"rub</w>\": 22586,\n  \"rubb\": 19597,\n  \"rubbed</w>\": 45239,\n  \"rubber\": 31131,\n  \"rubber</w>\": 11331,\n  \"rubbing</w>\": 41262,\n  \"rubbish</w>\": 21108,\n  \"rubble</w>\": 42230,\n  \"ruben\": 44058,\n  \"ruben</w>\": 29722,\n  \"rubi\": 27856,\n  \"rubin</w>\": 34128,\n  \"rubio</w>\": 24244,\n  \"rubs</w>\": 43422,\n  \"ruby\": 24552,\n  \"ruby</w>\": 11493,\n  \"ruck\": 27449,\n  \"rucker</w>\": 45402,\n  \"rud\": 35256,\n  \"rudd</w>\": 31836,\n  \"rude</w>\": 16548,\n  \"rudi\": 48360,\n  \"rudol\": 40927,\n  \"rudolf</w>\": 46835,\n  \"rudolph</w>\": 30119,\n  \"rudy\": 38226,\n  \"rudy</w>\": 22131,\n  \"rue\": 38024,\n  \"rue</w>\": 19276,\n  \"rufc</w>\": 45084,\n  \"ruff\": 28177,\n  \"ruff</w>\": 30304,\n  \"rufus</w>\": 39322,\n  \"rug\": 4217,\n  \"rug</w>\": 19220,\n  \"rugby\": 15091,\n  \"rugby</w>\": 4964,\n  \"rugbyleague</w>\": 44419,\n  \"ruger</w>\": 48655,\n  \"rugged</w>\": 25225,\n  \"rugs</w>\": 29946,\n  \"rui</w>\": 46974,\n  \"ruin</w>\": 16256,\n  \"ruined</w>\": 17231,\n  \"ruining</w>\": 29952,\n  \"ruins</w>\": 16094,\n  \"ruiz</w>\": 27873,\n  \"ruk</w>\": 46628,\n  \"rukh\": 43075,\n  \"rukh</w>\": 27631,\n  \"rule\": 31643,\n  \"rule</w>\": 6175,\n  \"ruled</w>\": 16324,\n  \"ruler</w>\": 26286,\n  \"rulers</w>\": 45328,\n  \"rules</w>\": 5272,\n  \"ruling</w>\": 14690,\n  \"rum\": 9223,\n  \"rum</w>\": 11233,\n  \"rumb\": 42432,\n  \"rumble</w>\": 18900,\n  \"rumi</w>\": 31428,\n  \"rumor</w>\": 22254,\n  \"rumored</w>\": 36694,\n  \"rumors</w>\": 16160,\n  \"rumour</w>\": 34296,\n  \"rumours</w>\": 20716,\n  \"rump</w>\": 29366,\n  \"run\": 1639,\n  \"run</w>\": 1934,\n  \"runaway</w>\": 28851,\n  \"runchat</w>\": 25838,\n  \"rundown</w>\": 41100,\n  \"rune\": 33882,\n  \"rune</w>\": 49244,\n  \"runner\": 37370,\n  \"runner</w>\": 7913,\n  \"runners</w>\": 10571,\n  \"runnin</w>\": 43130,\n  \"running\": 24451,\n  \"running</w>\": 2761,\n  \"runoff</w>\": 38564,\n  \"runs</w>\": 5586,\n  \"runway</w>\": 13927,\n  \"rup\": 7996,\n  \"rup</w>\": 14980,\n  \"rupaul</w>\": 44211,\n  \"rupee</w>\": 43916,\n  \"rupees</w>\": 44110,\n  \"rupert</w>\": 25625,\n  \"rupt</w>\": 23055,\n  \"ruption</w>\": 35403,\n  \"rural\": 28801,\n  \"rural</w>\": 8737,\n  \"rus\": 35811,\n  \"rus</w>\": 5998,\n  \"rush\": 12148,\n  \"rush</w>\": 6973,\n  \"rushed</w>\": 28104,\n  \"rusher</w>\": 48745,\n  \"rushes</w>\": 47217,\n  \"rushing</w>\": 20284,\n  \"russ\": 6285,\n  \"russ</w>\": 20764,\n  \"russell\": 26122,\n  \"russell</w>\": 8150,\n  \"russi\": 2600,\n  \"russia</w>\": 4018,\n  \"russian\": 30731,\n  \"russian</w>\": 4868,\n  \"russians</w>\": 25413,\n  \"russo</w>\": 30679,\n  \"rust\": 28682,\n  \"rust</w>\": 14212,\n  \"rustic</w>\": 19822,\n  \"rusty\": 43966,\n  \"rusty</w>\": 22646,\n  \"rut\": 14973,\n  \"rut</w>\": 39102,\n  \"rutger\": 49029,\n  \"rutgers</w>\": 28934,\n  \"ruth\": 15798,\n  \"ruth</w>\": 12029,\n  \"ruther\": 26676,\n  \"rutherford</w>\": 31070,\n  \"ruthless</w>\": 36063,\n  \"rutland</w>\": 46024,\n  \"ruto</w>\": 43702,\n  \"ruz</w>\": 23275,\n  \"rv\": 17135,\n  \"rv</w>\": 17951,\n  \"rva</w>\": 24278,\n  \"rw\": 9085,\n  \"rw</w>\": 22926,\n  \"rwa</w>\": 47452,\n  \"rwand\": 31758,\n  \"rwanda</w>\": 15427,\n  \"rwby</w>\": 39698,\n  \"rwc</w>\": 32321,\n  \"rx\": 41188,\n  \"rx</w>\": 15945,\n  \"ry\": 1511,\n  \"ry</w>\": 913,\n  \"ryan\": 8682,\n  \"ryan</w>\": 4053,\n  \"ryanair</w>\": 43526,\n  \"ryder\": 43564,\n  \"ryder</w>\": 21805,\n  \"rye\": 24015,\n  \"rye</w>\": 17409,\n  \"rying</w>\": 7838,\n  \"ryn</w>\": 37728,\n  \"ryo\": 24460,\n  \"rys</w>\": 21654,\n  \"ryu\": 46656,\n  \"ryu</w>\": 34604,\n  \"rÃ©\": 29106,\n  \"s\": 82,\n  \"s</w>\": 338,\n  \"sa\": 774,\n  \"sa</w>\": 1344,\n  \"saa</w>\": 13429,\n  \"saab</w>\": 27158,\n  \"saad</w>\": 36530,\n  \"saas</w>\": 25761,\n  \"saat\": 33151,\n  \"sab\": 3233,\n  \"sab</w>\": 23213,\n  \"saba</w>\": 38344,\n  \"sabah</w>\": 32854,\n  \"saban</w>\": 41620,\n  \"sabar\": 47102,\n  \"sabbath</w>\": 26008,\n  \"sabc</w>\": 30010,\n  \"sabcnews</w>\": 41093,\n  \"saber\": 46822,\n  \"saber</w>\": 25624,\n  \"sabha</w>\": 23431,\n  \"sabi</w>\": 47073,\n  \"sabine</w>\": 44062,\n  \"sable</w>\": 19224,\n  \"sabot\": 30700,\n  \"sabotage</w>\": 40496,\n  \"sabre</w>\": 35110,\n  \"sabres</w>\": 29620,\n  \"sabrin\": 37029,\n  \"sabrina</w>\": 24994,\n  \"sac\": 3632,\n  \"sac</w>\": 12905,\n  \"sach\": 30168,\n  \"sacha</w>\": 49010,\n  \"sachin\": 47527,\n  \"sachin</w>\": 30297,\n  \"sachs</w>\": 31451,\n  \"sack\": 28964,\n  \"sack</w>\": 14979,\n  \"sacked</w>\": 27519,\n  \"sacks</w>\": 26441,\n  \"sacram\": 13334,\n  \"sacramento</w>\": 16065,\n  \"sacred\": 40612,\n  \"sacred</w>\": 12477,\n  \"sacri\": 15283,\n  \"sacrif\": 12117,\n  \"sacrific\": 16919,\n  \"sacrifice</w>\": 12556,\n  \"sacrificed</w>\": 31116,\n  \"sacrifices</w>\": 28858,\n  \"sacrificing</w>\": 48146,\n  \"sad\": 2810,\n  \"sad</w>\": 3719,\n  \"saddened</w>\": 27720,\n  \"saddest</w>\": 34925,\n  \"saddle\": 30469,\n  \"saddle</w>\": 20283,\n  \"sade</w>\": 27429,\n  \"sadh\": 40955,\n  \"sadi\": 22207,\n  \"sadie</w>\": 30333,\n  \"sadiq</w>\": 44107,\n  \"sadler</w>\": 45600,\n  \"sadly</w>\": 11603,\n  \"sadness</w>\": 20399,\n  \"sae\": 38633,\n  \"sae</w>\": 34883,\n  \"saeed</w>\": 29745,\n  \"saf\": 2125,\n  \"saf</w>\": 25760,\n  \"safar\": 23443,\n  \"safari</w>\": 14091,\n  \"safarilive</w>\": 34816,\n  \"safc</w>\": 27998,\n  \"safe\": 2901,\n  \"safe</w>\": 2996,\n  \"safeguard</w>\": 42249,\n  \"safeguarding</w>\": 47451,\n  \"safely</w>\": 11513,\n  \"safer\": 40124,\n  \"safer</w>\": 15504,\n  \"safest</w>\": 38973,\n  \"safety\": 19050,\n  \"safety</w>\": 3406,\n  \"safetyfirst</w>\": 43608,\n  \"saffron</w>\": 27529,\n  \"sag\": 6609,\n  \"sag</w>\": 30048,\n  \"saga</w>\": 15758,\n  \"sagan</w>\": 37193,\n  \"sagar</w>\": 42518,\n  \"sage\": 25800,\n  \"sage</w>\": 7509,\n  \"sages</w>\": 25979,\n  \"sagin\": 47097,\n  \"sagitt\": 44685,\n  \"sagu\": 44708,\n  \"sah\": 30943,\n  \"sah</w>\": 26342,\n  \"saha\": 36062,\n  \"sahara</w>\": 24599,\n  \"saharan</w>\": 44255,\n  \"sahi\": 24608,\n  \"sahib</w>\": 34150,\n  \"sai\": 16048,\n  \"sai</w>\": 10886,\n  \"said\": 40319,\n  \"said</w>\": 1946,\n  \"saif</w>\": 44164,\n  \"saig\": 36328,\n  \"saigon</w>\": 41081,\n  \"sail\": 7528,\n  \"sail</w>\": 12156,\n  \"sailed</w>\": 43047,\n  \"sailing</w>\": 11003,\n  \"sailor\": 28002,\n  \"sailor</w>\": 16076,\n  \"sailormoon</w>\": 40673,\n  \"sailors</w>\": 25355,\n  \"sails</w>\": 27526,\n  \"sain\": 21226,\n  \"sain</w>\": 40378,\n  \"sains\": 24860,\n  \"sainsbury</w>\": 45879,\n  \"sainsburys</w>\": 36934,\n  \"saint\": 11274,\n  \"saint</w>\": 5599,\n  \"saints</w>\": 8769,\n  \"saintsfc</w>\": 31102,\n  \"sair\": 46600,\n  \"sair</w>\": 30971,\n  \"saire</w>\": 28087,\n  \"saison</w>\": 33256,\n  \"sait\": 48008,\n  \"saj\": 33580,\n  \"sak\": 11511,\n  \"sak</w>\": 35900,\n  \"saka</w>\": 33609,\n  \"sake</w>\": 12874,\n  \"sakh</w>\": 43945,\n  \"saki</w>\": 40514,\n  \"saku\": 37550,\n  \"sakura</w>\": 24162,\n  \"sal\": 980,\n  \"sal</w>\": 6126,\n  \"sala</w>\": 17300,\n  \"salaam</w>\": 46773,\n  \"salad</w>\": 6188,\n  \"salads</w>\": 30948,\n  \"salah</w>\": 22516,\n  \"salam\": 19007,\n  \"salam</w>\": 33963,\n  \"salamat</w>\": 44696,\n  \"salami</w>\": 46885,\n  \"salaries</w>\": 33132,\n  \"salary</w>\": 16312,\n  \"salazar</w>\": 45988,\n  \"sale\": 17786,\n  \"sale</w>\": 1690,\n  \"saleh</w>\": 38353,\n  \"salem\": 48194,\n  \"salem</w>\": 16884,\n  \"sales\": 13347,\n  \"sales</w>\": 3765,\n  \"salesforce</w>\": 22680,\n  \"salesman</w>\": 37633,\n  \"salford</w>\": 25629,\n  \"sali\": 15411,\n  \"salim</w>\": 42760,\n  \"salinas</w>\": 41990,\n  \"saline</w>\": 46918,\n  \"salis\": 20667,\n  \"salis</w>\": 39378,\n  \"salisbury</w>\": 24763,\n  \"sall\": 27122,\n  \"sall</w>\": 20883,\n  \"salle</w>\": 23738,\n  \"sally\": 29542,\n  \"sally</w>\": 13349,\n  \"salman\": 13754,\n  \"salman</w>\": 16219,\n  \"salmankhan</w>\": 15177,\n  \"salmon\": 37040,\n  \"salmon</w>\": 9137,\n  \"salom\": 38268,\n  \"salon\": 33916,\n  \"salon</w>\": 11105,\n  \"saloon</w>\": 26038,\n  \"sals</w>\": 16307,\n  \"salsa</w>\": 16442,\n  \"salt\": 12763,\n  \"salt</w>\": 6611,\n  \"salted</w>\": 26313,\n  \"saltlife</w>\": 47809,\n  \"salts</w>\": 40559,\n  \"saltwater</w>\": 43616,\n  \"salty</w>\": 20678,\n  \"salu\": 31711,\n  \"salud</w>\": 46867,\n  \"salut\": 44998,\n  \"salute\": 44908,\n  \"salute</w>\": 9747,\n  \"salutes</w>\": 32762,\n  \"salv\": 8299,\n  \"salvador</w>\": 20874,\n  \"salvage</w>\": 33131,\n  \"salvation</w>\": 19534,\n  \"salvatore</w>\": 38772,\n  \"salz\": 33594,\n  \"salzburg</w>\": 43396,\n  \"sam\": 1644,\n  \"sam</w>\": 3730,\n  \"sama</w>\": 19272,\n  \"samanth\": 11465,\n  \"samantha</w>\": 15466,\n  \"samanthap\": 38266,\n  \"samanthaprabhu</w>\": 38643,\n  \"samar\": 21820,\n  \"samaritan</w>\": 45495,\n  \"samba</w>\": 37190,\n  \"same\": 23062,\n  \"same</w>\": 2208,\n  \"samheughan</w>\": 36255,\n  \"sami\": 48400,\n  \"sami</w>\": 24322,\n  \"sammy\": 31091,\n  \"sammy</w>\": 16758,\n  \"samo\": 30006,\n  \"samoa</w>\": 34932,\n  \"samp\": 31225,\n  \"sample</w>\": 9542,\n  \"sampler</w>\": 40629,\n  \"samples</w>\": 13387,\n  \"sampling</w>\": 19522,\n  \"sampson</w>\": 39983,\n  \"sams</w>\": 44667,\n  \"samson</w>\": 34659,\n  \"samsun\": 47875,\n  \"samsung\": 35369,\n  \"samsung</w>\": 8115,\n  \"samu\": 7646,\n  \"samuel\": 30612,\n  \"samuel</w>\": 12787,\n  \"samurai</w>\": 21739,\n  \"san\": 1489,\n  \"san</w>\": 2223,\n  \"sana</w>\": 19434,\n  \"sanantonio</w>\": 34714,\n  \"sanat\": 29091,\n  \"sanatomy</w>\": 36052,\n  \"sanc\": 7398,\n  \"sance</w>\": 15930,\n  \"sanchez</w>\": 13971,\n  \"sanctioned</w>\": 43032,\n  \"sanctions</w>\": 17790,\n  \"sanctu\": 12712,\n  \"sanctuary</w>\": 14044,\n  \"sand\": 2147,\n  \"sand</w>\": 5094,\n  \"sandal\": 36445,\n  \"sandal</w>\": 42185,\n  \"sandals</w>\": 20731,\n  \"sandalwood</w>\": 47502,\n  \"sandeep</w>\": 46973,\n  \"sander</w>\": 34111,\n  \"sanders</w>\": 10429,\n  \"sanderson</w>\": 36198,\n  \"sandi\": 44249,\n  \"sandiego\": 45997,\n  \"sandiego</w>\": 15793,\n  \"sandman</w>\": 45730,\n  \"sando\": 35921,\n  \"sandoval</w>\": 44157,\n  \"sandra\": 33733,\n  \"sandra</w>\": 13415,\n  \"sandro</w>\": 42389,\n  \"sands</w>\": 5936,\n  \"sandstone</w>\": 36796,\n  \"sandwich\": 17050,\n  \"sandwich</w>\": 8687,\n  \"sandwiches</w>\": 19667,\n  \"sandy\": 29679,\n  \"sandy</w>\": 10355,\n  \"sane</w>\": 23419,\n  \"sanford</w>\": 32330,\n  \"sanfrancisco</w>\": 20254,\n  \"sang\": 13235,\n  \"sang</w>\": 11684,\n  \"sange\": 12466,\n  \"sangria</w>\": 42665,\n  \"sani\": 39137,\n  \"sani</w>\": 34492,\n  \"sanitary</w>\": 33842,\n  \"sanitation</w>\": 25414,\n  \"saniti\": 43987,\n  \"sanity</w>\": 30517,\n  \"sanjay\": 31712,\n  \"sanjay</w>\": 25796,\n  \"sanje\": 40405,\n  \"sanjose</w>\": 45971,\n  \"sank</w>\": 43692,\n  \"sano</w>\": 34053,\n  \"sans</w>\": 16982,\n  \"sansk\": 39689,\n  \"sanskrit</w>\": 48083,\n  \"sant\": 8356,\n  \"sant</w>\": 23120,\n  \"santa\": 22175,\n  \"santa</w>\": 4555,\n  \"santac\": 28876,\n  \"santam\": 45627,\n  \"santana</w>\": 27033,\n  \"santander</w>\": 46476,\n  \"santi\": 13856,\n  \"santiago</w>\": 16568,\n  \"santo\": 29631,\n  \"santo</w>\": 18400,\n  \"santor\": 28448,\n  \"santorini</w>\": 39573,\n  \"santos</w>\": 16582,\n  \"sany\": 47679,\n  \"sao</w>\": 28026,\n  \"sap\": 8089,\n  \"sap</w>\": 11591,\n  \"sapi\": 40016,\n  \"sapp\": 13427,\n  \"sapp</w>\": 40729,\n  \"sapphire</w>\": 22044,\n  \"sar\": 1808,\n  \"sar</w>\": 9424,\n  \"sara\": 37196,\n  \"sara</w>\": 10063,\n  \"sarab\": 40716,\n  \"sarac\": 35722,\n  \"sarah\": 9086,\n  \"sarah</w>\": 5327,\n  \"saraj\": 42592,\n  \"sarajevo</w>\": 48211,\n  \"saras\": 20373,\n  \"sarasota</w>\": 31990,\n  \"sarato\": 24845,\n  \"saratoga</w>\": 29496,\n  \"sarawak</w>\": 47331,\n  \"sarcasm</w>\": 37246,\n  \"sarcastic</w>\": 48639,\n  \"sardar</w>\": 41786,\n  \"sarde\": 43925,\n  \"sardin\": 27383,\n  \"sardinia</w>\": 41025,\n  \"sare\": 13051,\n  \"saree</w>\": 30860,\n  \"sargent</w>\": 34864,\n  \"sari\": 42327,\n  \"sari</w>\": 20261,\n  \"saries</w>\": 47586,\n  \"sarkar</w>\": 30673,\n  \"sarko\": 33658,\n  \"sarkodie</w>\": 42848,\n  \"sarmy</w>\": 20954,\n  \"sart</w>\": 33006,\n  \"sary</w>\": 15398,\n  \"sas\": 3960,\n  \"sas</w>\": 5235,\n  \"sash</w>\": 35656,\n  \"sasha\": 46078,\n  \"sasha</w>\": 20894,\n  \"sasia</w>\": 44751,\n  \"sask\": 47091,\n  \"sask</w>\": 30416,\n  \"saskat\": 17102,\n  \"saskatchewan</w>\": 23899,\n  \"saskatoon</w>\": 31128,\n  \"sass</w>\": 31351,\n  \"sassy</w>\": 20827,\n  \"sat\": 1382,\n  \"sat</w>\": 3279,\n  \"sata</w>\": 41520,\n  \"satan</w>\": 19446,\n  \"satanic</w>\": 38224,\n  \"satchel</w>\": 45908,\n  \"sate</w>\": 35749,\n  \"satell\": 9031,\n  \"satellite</w>\": 10316,\n  \"satellites</w>\": 28483,\n  \"sath\": 29675,\n  \"sathletics</w>\": 30154,\n  \"sati\": 7038,\n  \"satin</w>\": 21803,\n  \"sation</w>\": 23674,\n  \"sations</w>\": 31232,\n  \"satire</w>\": 29875,\n  \"satis\": 9906,\n  \"satisf\": 22941,\n  \"satisfaction</w>\": 19925,\n  \"satisfied</w>\": 18101,\n  \"satisfy</w>\": 29444,\n  \"satisfying</w>\": 23755,\n  \"sato</w>\": 34376,\n  \"satu</w>\": 45283,\n  \"satur\": 1634,\n  \"saturated</w>\": 32466,\n  \"saturday\": 12537,\n  \"saturday</w>\": 1748,\n  \"saturdaymorning</w>\": 29053,\n  \"saturdaymotivation</w>\": 40843,\n  \"saturdays</w>\": 18930,\n  \"saturn</w>\": 17312,\n  \"saty\": 39426,\n  \"sau\": 2096,\n  \"sau</w>\": 19455,\n  \"sauce</w>\": 5520,\n  \"saucer</w>\": 42272,\n  \"sauces</w>\": 40367,\n  \"saucy</w>\": 46684,\n  \"saudi\": 24511,\n  \"saudi</w>\": 8548,\n  \"saudiarabia</w>\": 28680,\n  \"sauer\": 46333,\n  \"saul\": 47623,\n  \"saul</w>\": 23252,\n  \"sault</w>\": 40361,\n  \"sauna</w>\": 35460,\n  \"saunders</w>\": 23794,\n  \"saur</w>\": 13227,\n  \"saura\": 46532,\n  \"saurus</w>\": 22118,\n  \"saus</w>\": 36121,\n  \"sausage</w>\": 11855,\n  \"sausages</w>\": 31593,\n  \"sautÃ©\": 36290,\n  \"sautÃ©ed</w>\": 38517,\n  \"sauvi\": 30116,\n  \"sauvignon</w>\": 32745,\n  \"sav\": 2248,\n  \"sav</w>\": 26533,\n  \"sava</w>\": 40198,\n  \"savag\": 43039,\n  \"savage</w>\": 11859,\n  \"savannah</w>\": 18662,\n  \"save\": 5895,\n  \"save</w>\": 2673,\n  \"saved</w>\": 7137,\n  \"saveour\": 33390,\n  \"saver</w>\": 20987,\n  \"savers</w>\": 31416,\n  \"saves</w>\": 12907,\n  \"savethe\": 18031,\n  \"savi\": 14721,\n  \"saving\": 28498,\n  \"saving</w>\": 6979,\n  \"savings</w>\": 10651,\n  \"savior</w>\": 24762,\n  \"saviour</w>\": 35800,\n  \"savor</w>\": 48071,\n  \"savory</w>\": 32992,\n  \"savoury</w>\": 49071,\n  \"savoy</w>\": 39552,\n  \"savvy</w>\": 29278,\n  \"saw\": 12429,\n  \"saw</w>\": 2425,\n  \"sawa</w>\": 39613,\n  \"sawards</w>\": 29012,\n  \"sawyer</w>\": 27726,\n  \"sax\": 14169,\n  \"sax</w>\": 23766,\n  \"saxon</w>\": 31856,\n  \"saxophon\": 43760,\n  \"saxophone</w>\": 32296,\n  \"say\": 3047,\n  \"say</w>\": 1451,\n  \"saya</w>\": 35170,\n  \"sayang</w>\": 46322,\n  \"sayers</w>\": 44116,\n  \"sayin</w>\": 23662,\n  \"saying</w>\": 4455,\n  \"says</w>\": 1563,\n  \"saz</w>\": 35577,\n  \"sb\": 5576,\n  \"sb</w>\": 4977,\n  \"sba</w>\": 44970,\n  \"sback</w>\": 43840,\n  \"sband</w>\": 27539,\n  \"sbaseball</w>\": 46491,\n  \"sbball</w>\": 39190,\n  \"sbc</w>\": 31404,\n  \"sberg</w>\": 20358,\n  \"sbi</w>\": 41369,\n  \"sbk</w>\": 39211,\n  \"sboro</w>\": 18909,\n  \"sbridge</w>\": 49228,\n  \"sbs</w>\": 18883,\n  \"sbu\": 48075,\n  \"sbu</w>\": 46281,\n  \"sburg</w>\": 7390,\n  \"sburgh</w>\": 48205,\n  \"sbury</w>\": 14081,\n  \"sby\": 26519,\n  \"sby</w>\": 10287,\n  \"sc\": 663,\n  \"sc</w>\": 3219,\n  \"sca</w>\": 11001,\n  \"scab\": 31716,\n  \"scaf\": 28981,\n  \"scafe</w>\": 45574,\n  \"scaffolding</w>\": 41687,\n  \"scal\": 10859,\n  \"scala</w>\": 37997,\n  \"scalable</w>\": 44084,\n  \"scale\": 37817,\n  \"scale</w>\": 5879,\n  \"scaled</w>\": 41923,\n  \"scales</w>\": 22891,\n  \"scaling</w>\": 29116,\n  \"scallo\": 19936,\n  \"scallop</w>\": 39544,\n  \"scallops</w>\": 31430,\n  \"scalp</w>\": 38898,\n  \"scam\": 17620,\n  \"scam</w>\": 13215,\n  \"scamp</w>\": 28451,\n  \"scams</w>\": 34395,\n  \"scan\": 10650,\n  \"scan</w>\": 11261,\n  \"scanada</w>\": 27121,\n  \"scand\": 8110,\n  \"scandal\": 35420,\n  \"scandal</w>\": 11622,\n  \"scandals</w>\": 45490,\n  \"scandin\": 32014,\n  \"scandinavian</w>\": 35661,\n  \"scanned</w>\": 43719,\n  \"scanner</w>\": 24185,\n  \"scanning</w>\": 24092,\n  \"scans</w>\": 31251,\n  \"scap\": 35883,\n  \"scape\": 36005,\n  \"scape</w>\": 12314,\n  \"scapes</w>\": 31933,\n  \"scar\": 4171,\n  \"scar</w>\": 18088,\n  \"scarborough</w>\": 24254,\n  \"scarce</w>\": 38572,\n  \"scarcity</w>\": 45812,\n  \"scare\": 33536,\n  \"scare</w>\": 15920,\n  \"scarec\": 38814,\n  \"scarecrow</w>\": 46504,\n  \"scared</w>\": 9870,\n  \"scares</w>\": 34096,\n  \"scarf</w>\": 13365,\n  \"scari\": 27050,\n  \"scariest</w>\": 37213,\n  \"scarlet</w>\": 20389,\n  \"scarlett</w>\": 28325,\n  \"scars</w>\": 20747,\n  \"scarves</w>\": 29249,\n  \"scary</w>\": 9250,\n  \"scat\": 13899,\n  \"scattered</w>\": 22090,\n  \"scavenger</w>\": 36778,\n  \"scc</w>\": 19458,\n  \"scd</w>\": 48422,\n  \"scen\": 2204,\n  \"scenario</w>\": 20456,\n  \"scenarios</w>\": 31346,\n  \"scence</w>\": 33418,\n  \"scene</w>\": 3562,\n  \"scenery</w>\": 16025,\n  \"scenes</w>\": 5415,\n  \"scenic</w>\": 15394,\n  \"scent\": 36277,\n  \"scent</w>\": 7683,\n  \"scented</w>\": 27190,\n  \"scenter</w>\": 23059,\n  \"scentre</w>\": 39371,\n  \"scents</w>\": 26336,\n  \"scep\": 24439,\n  \"scfc</w>\": 38578,\n  \"sch\": 844,\n  \"sch</w>\": 7542,\n  \"scha\": 42809,\n  \"schaf\": 45588,\n  \"schaft</w>\": 41010,\n  \"schal\": 35568,\n  \"schalke</w>\": 41029,\n  \"schallenge</w>\": 43665,\n  \"schan\": 31328,\n  \"schar\": 15085,\n  \"schat</w>\": 31842,\n  \"schau\": 35830,\n  \"sche\": 3038,\n  \"sche</w>\": 7289,\n  \"schedu\": 4207,\n  \"schedule</w>\": 5521,\n  \"scheduled</w>\": 10986,\n  \"schedules</w>\": 28986,\n  \"scheduling</w>\": 32216,\n  \"scheer</w>\": 26776,\n  \"schel\": 39881,\n  \"schel</w>\": 38569,\n  \"schem\": 17720,\n  \"scheme</w>\": 9024,\n  \"schemes</w>\": 22958,\n  \"schen\": 22738,\n  \"scher\": 21925,\n  \"scher</w>\": 21299,\n  \"schi\": 13731,\n  \"schi</w>\": 24984,\n  \"schicago</w>\": 46230,\n  \"schiff</w>\": 39431,\n  \"schild</w>\": 32148,\n  \"schiz\": 33230,\n  \"schizoph\": 40004,\n  \"schizophre\": 41163,\n  \"schle\": 32022,\n  \"schmid\": 17375,\n  \"schmidt</w>\": 18463,\n  \"schnau\": 45745,\n  \"schnei\": 19941,\n  \"schneider</w>\": 22972,\n  \"schnit\": 40903,\n  \"scho\": 2493,\n  \"schoice</w>\": 23860,\n  \"schol\": 4498,\n  \"scholar\": 7192,\n  \"scholar</w>\": 12830,\n  \"scholarly</w>\": 41065,\n  \"scholars</w>\": 13818,\n  \"scholarship</w>\": 9070,\n  \"scholarships</w>\": 17866,\n  \"scholastic</w>\": 35743,\n  \"schoo\": 20721,\n  \"school\": 6063,\n  \"school</w>\": 1228,\n  \"schooled</w>\": 44722,\n  \"schoolers</w>\": 31455,\n  \"schooling</w>\": 28608,\n  \"schools</w>\": 3513,\n  \"schre\": 47685,\n  \"schri\": 25453,\n  \"schro\": 32381,\n  \"schu\": 11318,\n  \"schubert</w>\": 46939,\n  \"schul\": 14945,\n  \"schultz</w>\": 30308,\n  \"schulz</w>\": 39572,\n  \"schumacher</w>\": 39208,\n  \"schumer</w>\": 25313,\n  \"schur\": 42475,\n  \"schwab</w>\": 47602,\n  \"schwar\": 13985,\n  \"schwartz</w>\": 30617,\n  \"schwarz\": 27074,\n  \"schwarzenegger</w>\": 33860,\n  \"schwe\": 25324,\n  \"sci\": 2267,\n  \"sci</w>\": 8309,\n  \"sciart</w>\": 31704,\n  \"scicom\": 28606,\n  \"scicomm</w>\": 29573,\n  \"scien\": 39261,\n  \"science\": 10201,\n  \"science</w>\": 2497,\n  \"sciencefiction</w>\": 39170,\n  \"sciences</w>\": 11481,\n  \"scienti\": 4338,\n  \"scientific</w>\": 9750,\n  \"scientist</w>\": 11083,\n  \"scientists</w>\": 8045,\n  \"sciento\": 36193,\n  \"scientology</w>\": 44694,\n  \"scifi\": 41862,\n  \"scifi</w>\": 12230,\n  \"scion</w>\": 47208,\n  \"sciss\": 25667,\n  \"scissors</w>\": 30867,\n  \"sciutto</w>\": 44392,\n  \"sclerosis</w>\": 39446,\n  \"sclub</w>\": 20017,\n  \"sco\": 1065,\n  \"sco</w>\": 4763,\n  \"scoe</w>\": 31164,\n  \"scol\": 13599,\n  \"scoll</w>\": 44895,\n  \"scollege</w>\": 39536,\n  \"scom</w>\": 26407,\n  \"scon\": 17163,\n  \"scon</w>\": 29272,\n  \"scones</w>\": 36443,\n  \"sconf</w>\": 39704,\n  \"scoo\": 14199,\n  \"scooby</w>\": 34469,\n  \"scoop</w>\": 13829,\n  \"scoops</w>\": 41360,\n  \"scope</w>\": 7979,\n  \"scopes</w>\": 30328,\n  \"scopic</w>\": 23869,\n  \"scopy</w>\": 20018,\n  \"scor\": 8442,\n  \"score\": 12067,\n  \"score</w>\": 4431,\n  \"scoreboard</w>\": 30104,\n  \"scorecard</w>\": 38128,\n  \"scored</w>\": 6143,\n  \"scoreless</w>\": 33469,\n  \"scorer</w>\": 16572,\n  \"scorers</w>\": 26699,\n  \"scores</w>\": 7039,\n  \"scoring</w>\": 9198,\n  \"scorpi\": 15445,\n  \"scorpio</w>\": 34331,\n  \"scorpion</w>\": 28461,\n  \"scorpions</w>\": 45401,\n  \"scorsese</w>\": 45975,\n  \"scot\": 2496,\n  \"scot</w>\": 9271,\n  \"scotch</w>\": 16687,\n  \"scoti\": 46446,\n  \"scotia</w>\": 27859,\n  \"scotland\": 29174,\n  \"scotland</w>\": 4203,\n  \"scots</w>\": 17260,\n  \"scotsman</w>\": 39612,\n  \"scott\": 7775,\n  \"scott</w>\": 3664,\n  \"scotti\": 6227,\n  \"scottish\": 18039,\n  \"scottish</w>\": 7442,\n  \"scottsdale</w>\": 27817,\n  \"scotty\": 39697,\n  \"scotty</w>\": 26836,\n  \"scotus</w>\": 21720,\n  \"scou\": 44909,\n  \"scoun\": 16110,\n  \"scouncil</w>\": 48787,\n  \"scountry</w>\": 40432,\n  \"scour\": 46172,\n  \"scout\": 32213,\n  \"scout</w>\": 10786,\n  \"scouting</w>\": 19072,\n  \"scouts</w>\": 14837,\n  \"scow\": 27929,\n  \"scowboys</w>\": 31386,\n  \"scp</w>\": 45030,\n  \"scr</w>\": 36131,\n  \"scra\": 11187,\n  \"scrabble</w>\": 39488,\n  \"scram\": 17289,\n  \"scramble</w>\": 32688,\n  \"scrambled</w>\": 39026,\n  \"scran\": 41774,\n  \"scranton</w>\": 45274,\n  \"scrap\": 27950,\n  \"scrap</w>\": 21695,\n  \"scrapbook</w>\": 48733,\n  \"scrapped</w>\": 43325,\n  \"scraps</w>\": 40809,\n  \"scrat\": 9572,\n  \"scratch</w>\": 13258,\n  \"scratched</w>\": 48831,\n  \"scratches</w>\": 46556,\n  \"scratching</w>\": 44617,\n  \"scre\": 1795,\n  \"scream\": 31645,\n  \"scream</w>\": 13239,\n  \"screamed</w>\": 35427,\n  \"screaming</w>\": 12891,\n  \"screams</w>\": 23989,\n  \"screen\": 5351,\n  \"screen</w>\": 3750,\n  \"screened</w>\": 31450,\n  \"screening</w>\": 6688,\n  \"screenings</w>\": 27655,\n  \"screenplay</w>\": 30058,\n  \"screens</w>\": 12689,\n  \"screenshot\": 20637,\n  \"screenshot</w>\": 12646,\n  \"screenshots</w>\": 26783,\n  \"screenshotsaturday</w>\": 21406,\n  \"screenwriter</w>\": 37293,\n  \"screenwriting</w>\": 35465,\n  \"screw\": 25529,\n  \"screw</w>\": 14225,\n  \"screwdriver</w>\": 48748,\n  \"screwed</w>\": 30592,\n  \"screws</w>\": 38292,\n  \"scri\": 2139,\n  \"scrib\": 34259,\n  \"scribe</w>\": 36228,\n  \"scribed</w>\": 38334,\n  \"scricket</w>\": 45947,\n  \"scrim\": 21978,\n  \"scrimmage</w>\": 25216,\n  \"scrip\": 11955,\n  \"script</w>\": 8374,\n  \"scripted</w>\": 40513,\n  \"scription</w>\": 26604,\n  \"scriptions</w>\": 39512,\n  \"scripts</w>\": 20109,\n  \"scripture</w>\": 27186,\n  \"scro\": 30768,\n  \"scroll</w>\": 24160,\n  \"scrolling</w>\": 28889,\n  \"scrolls</w>\": 38113,\n  \"scroo\": 42263,\n  \"scru\": 7589,\n  \"scrub</w>\": 23432,\n  \"scrubs</w>\": 37919,\n  \"scrum</w>\": 29047,\n  \"scrump\": 39791,\n  \"scrumptious</w>\": 40987,\n  \"scrutiny</w>\": 34305,\n  \"scs</w>\": 26853,\n  \"sct</w>\": 39284,\n  \"scu\": 8181,\n  \"scu</w>\": 32135,\n  \"scuba\": 39053,\n  \"scuba</w>\": 20559,\n  \"scubadiving</w>\": 49046,\n  \"scue</w>\": 25955,\n  \"scul\": 4948,\n  \"scully</w>\": 36598,\n  \"sculp\": 6093,\n  \"sculpt</w>\": 45044,\n  \"sculpted</w>\": 41296,\n  \"sculpting</w>\": 44389,\n  \"sculptor</w>\": 29409,\n  \"sculpture</w>\": 8757,\n  \"sculptures</w>\": 20378,\n  \"scum</w>\": 29655,\n  \"scumb\": 44525,\n  \"scup</w>\": 21506,\n  \"scur\": 32742,\n  \"scwx</w>\": 41966,\n  \"scy\": 27471,\n  \"sd\": 3080,\n  \"sd</w>\": 4159,\n  \"sda</w>\": 25548,\n  \"sdale</w>\": 12327,\n  \"sday\": 5902,\n  \"sday</w>\": 1376,\n  \"sdays</w>\": 14491,\n  \"sdc</w>\": 40992,\n  \"sdcc</w>\": 13246,\n  \"sden</w>\": 17241,\n  \"sdf</w>\": 34681,\n  \"sdg</w>\": 20177,\n  \"sdgs</w>\": 16261,\n  \"sdk</w>\": 40015,\n  \"sdlive</w>\": 34561,\n  \"sdn</w>\": 41925,\n  \"sdsu</w>\": 41284,\n  \"se\": 567,\n  \"se</w>\": 611,\n  \"sea\": 5970,\n  \"sea</w>\": 2102,\n  \"seab\": 15728,\n  \"seabir\": 42558,\n  \"seac\": 35626,\n  \"seaf\": 9336,\n  \"seafood</w>\": 12472,\n  \"seag\": 15730,\n  \"seagu\": 38076,\n  \"seagull</w>\": 38858,\n  \"seagulls</w>\": 42215,\n  \"seahawks</w>\": 15341,\n  \"seal\": 21381,\n  \"seal</w>\": 10159,\n  \"sealed</w>\": 13358,\n  \"sealing</w>\": 42992,\n  \"seals</w>\": 18179,\n  \"seam\": 13710,\n  \"seam</w>\": 44201,\n  \"seaman</w>\": 47513,\n  \"seamless</w>\": 29373,\n  \"seamus</w>\": 40175,\n  \"sean\": 11406,\n  \"sean</w>\": 6077,\n  \"seanhannity</w>\": 43316,\n  \"seap\": 29983,\n  \"seaport</w>\": 46418,\n  \"sear\": 1612,\n  \"search\": 23129,\n  \"search</w>\": 1920,\n  \"searched</w>\": 28961,\n  \"searches</w>\": 26378,\n  \"searching</w>\": 10626,\n  \"seared</w>\": 29727,\n  \"sears</w>\": 26693,\n  \"seas\": 7329,\n  \"seas</w>\": 9556,\n  \"seascape</w>\": 42593,\n  \"seaside</w>\": 18867,\n  \"season\": 19288,\n  \"season</w>\": 1367,\n  \"seasonal</w>\": 14215,\n  \"seasoned</w>\": 28399,\n  \"seasoning</w>\": 43439,\n  \"seasons</w>\": 8635,\n  \"seat\": 19670,\n  \"seat</w>\": 4922,\n  \"seated</w>\": 23953,\n  \"seater</w>\": 37543,\n  \"seating</w>\": 16240,\n  \"seats</w>\": 6944,\n  \"seattle\": 24388,\n  \"seattle</w>\": 6274,\n  \"seau</w>\": 32263,\n  \"seaw\": 32658,\n  \"seaweed</w>\": 30204,\n  \"seaworld</w>\": 27422,\n  \"seb\": 35766,\n  \"seb</w>\": 25171,\n  \"sebasti\": 10324,\n  \"sebastian\": 43792,\n  \"sebastian</w>\": 13181,\n  \"sebring</w>\": 41086,\n  \"sec\": 2875,\n  \"sec</w>\": 5338,\n  \"seca</w>\": 37847,\n  \"secco</w>\": 27394,\n  \"sece\": 46297,\n  \"seclu\": 42392,\n  \"secon\": 1846,\n  \"second\": 9329,\n  \"second</w>\": 2241,\n  \"secondary</w>\": 13107,\n  \"seconds</w>\": 6541,\n  \"secre\": 2460,\n  \"secret\": 20710,\n  \"secret</w>\": 4145,\n  \"secretari\": 29515,\n  \"secretariat</w>\": 31767,\n  \"secretary</w>\": 6552,\n  \"secretly</w>\": 21400,\n  \"secrets</w>\": 9735,\n  \"secs</w>\": 28665,\n  \"sect</w>\": 15772,\n  \"section\": 34986,\n  \"section</w>\": 4853,\n  \"sectional</w>\": 21876,\n  \"sections</w>\": 20061,\n  \"sector</w>\": 6579,\n  \"sectors</w>\": 22173,\n  \"secu\": 4894,\n  \"secular\": 47483,\n  \"secular</w>\": 27560,\n  \"secur\": 2557,\n  \"secure\": 44763,\n  \"secure</w>\": 7515,\n  \"secured</w>\": 16848,\n  \"secures</w>\": 31567,\n  \"securing</w>\": 24759,\n  \"securities</w>\": 25080,\n  \"security\": 31245,\n  \"security</w>\": 2741,\n  \"sed\": 14034,\n  \"sed</w>\": 1252,\n  \"sedan</w>\": 24237,\n  \"sedg\": 46926,\n  \"sedge</w>\": 45288,\n  \"sedi\": 29269,\n  \"sedly</w>\": 31771,\n  \"sedona</w>\": 46862,\n  \"seduc\": 19933,\n  \"seductive</w>\": 43721,\n  \"see\": 1751,\n  \"see</w>\": 862,\n  \"seed\": 14064,\n  \"seed</w>\": 6488,\n  \"seeded</w>\": 33688,\n  \"seeding</w>\": 40050,\n  \"seedlings</w>\": 47933,\n  \"seeds</w>\": 9128,\n  \"seeing</w>\": 3214,\n  \"seek</w>\": 8839,\n  \"seeker</w>\": 28011,\n  \"seekers</w>\": 20732,\n  \"seeking</w>\": 8592,\n  \"seeks</w>\": 12594,\n  \"seem\": 20043,\n  \"seem</w>\": 7523,\n  \"seemed</w>\": 17240,\n  \"seemingly</w>\": 25917,\n  \"seems</w>\": 4453,\n  \"seen\": 36273,\n  \"seen</w>\": 2041,\n  \"seer</w>\": 32486,\n  \"sees</w>\": 7594,\n  \"seeyou\": 41279,\n  \"sef</w>\": 27453,\n  \"seg\": 10551,\n  \"sega</w>\": 16122,\n  \"segment</w>\": 15615,\n  \"segments</w>\": 43053,\n  \"segreg\": 49117,\n  \"segregation</w>\": 39086,\n  \"segu\": 33156,\n  \"segun\": 43087,\n  \"seh\": 27536,\n  \"seh</w>\": 41430,\n  \"sehun</w>\": 17705,\n  \"sei\": 13130,\n  \"sei</w>\": 15907,\n  \"sein</w>\": 24669,\n  \"seine</w>\": 41378,\n  \"seinfeld</w>\": 33706,\n  \"seis\": 25559,\n  \"seismic</w>\": 38459,\n  \"seiz\": 22171,\n  \"seize</w>\": 26624,\n  \"seized</w>\": 15826,\n  \"seizure</w>\": 36804,\n  \"seizures</w>\": 47199,\n  \"sek\": 45515,\n  \"sek</w>\": 25880,\n  \"sel\": 1000,\n  \"sel</w>\": 4098,\n  \"sela</w>\": 47006,\n  \"selamat</w>\": 37692,\n  \"selangor</w>\": 44402,\n  \"selby</w>\": 43546,\n  \"selca</w>\": 38606,\n  \"selcaday</w>\": 35924,\n  \"seldom</w>\": 48322,\n  \"sele\": 29137,\n  \"selec\": 3014,\n  \"select</w>\": 8690,\n  \"selected</w>\": 6881,\n  \"selecting</w>\": 32696,\n  \"selection</w>\": 6724,\n  \"selections</w>\": 24099,\n  \"selective</w>\": 28686,\n  \"selects</w>\": 32902,\n  \"selen\": 19970,\n  \"selena</w>\": 14677,\n  \"selenagomez</w>\": 27653,\n  \"seley</w>\": 30556,\n  \"self\": 10139,\n  \"self</w>\": 1322,\n  \"selfcare</w>\": 39560,\n  \"selfi\": 3007,\n  \"selfie\": 26735,\n  \"selfie</w>\": 3666,\n  \"selfies\": 46058,\n  \"selfies</w>\": 10050,\n  \"selfish</w>\": 26907,\n  \"selfless</w>\": 34236,\n  \"sell\": 10279,\n  \"sell</w>\": 5119,\n  \"seller</w>\": 11779,\n  \"sellers</w>\": 16562,\n  \"selling</w>\": 4396,\n  \"sells</w>\": 14306,\n  \"selma</w>\": 36652,\n  \"sels</w>\": 42070,\n  \"selves</w>\": 4505,\n  \"sely</w>\": 8402,\n  \"sem\": 8645,\n  \"sem</w>\": 17106,\n  \"sema</w>\": 31816,\n  \"seman\": 29119,\n  \"seman</w>\": 28378,\n  \"semana</w>\": 41780,\n  \"semb\": 36054,\n  \"seme\": 10855,\n  \"sement</w>\": 10714,\n  \"sements</w>\": 31449,\n  \"semester</w>\": 11905,\n  \"semi\": 11023,\n  \"semi</w>\": 6684,\n  \"semic\": 26967,\n  \"semicon\": 34315,\n  \"semiconduc\": 35646,\n  \"semiconductor</w>\": 43551,\n  \"semifinal</w>\": 22935,\n  \"semifinals</w>\": 21863,\n  \"semin\": 5595,\n  \"seminar</w>\": 7269,\n  \"seminars</w>\": 34870,\n  \"seminary</w>\": 31655,\n  \"seminole</w>\": 42956,\n  \"semis</w>\": 24013,\n  \"semit\": 22628,\n  \"semite</w>\": 23721,\n  \"semitic</w>\": 34894,\n  \"semitism</w>\": 25911,\n  \"semper\": 47391,\n  \"sen\": 1057,\n  \"sen</w>\": 2249,\n  \"sena</w>\": 21584,\n  \"senate\": 30703,\n  \"senate</w>\": 6843,\n  \"senator\": 20871,\n  \"senator</w>\": 8495,\n  \"senators</w>\": 16889,\n  \"send\": 27684,\n  \"send</w>\": 3625,\n  \"sending</w>\": 6985,\n  \"sends</w>\": 10817,\n  \"sene\": 25269,\n  \"seneca</w>\": 33419,\n  \"senegal</w>\": 28255,\n  \"senew\": 49313,\n  \"seng\": 43022,\n  \"seng</w>\": 29971,\n  \"senior\": 19865,\n  \"senior</w>\": 3415,\n  \"seniors</w>\": 8138,\n  \"senna</w>\": 36195,\n  \"senpai</w>\": 46562,\n  \"sens\": 5218,\n  \"sens</w>\": 22837,\n  \"sensation</w>\": 19383,\n  \"sensational</w>\": 23051,\n  \"sense\": 29162,\n  \"sense</w>\": 4747,\n  \"sensei</w>\": 36158,\n  \"senses</w>\": 21809,\n  \"sensi\": 38802,\n  \"sensible</w>\": 30635,\n  \"sensing</w>\": 29236,\n  \"sensiti\": 20531,\n  \"sensitive</w>\": 13734,\n  \"sensitivity</w>\": 27788,\n  \"sensor</w>\": 15330,\n  \"sensors</w>\": 20356,\n  \"sensory</w>\": 21831,\n  \"sensu\": 28157,\n  \"sensual</w>\": 40860,\n  \"sent\": 6200,\n  \"sent</w>\": 3676,\n  \"sentence</w>\": 12737,\n  \"sentenced</w>\": 17773,\n  \"sentences</w>\": 25858,\n  \"sentencing</w>\": 34394,\n  \"senti\": 19042,\n  \"sentim\": 25102,\n  \"sentiment</w>\": 25949,\n  \"sentimental</w>\": 40070,\n  \"sentiments</w>\": 47450,\n  \"sentin\": 20042,\n  \"sentinel</w>\": 23123,\n  \"senting</w>\": 3924,\n  \"seo\": 24743,\n  \"seo</w>\": 8622,\n  \"seok\": 34697,\n  \"seok</w>\": 22482,\n  \"seokjin</w>\": 45584,\n  \"seoul</w>\": 13253,\n  \"sep\": 3212,\n  \"sep</w>\": 10434,\n  \"separ\": 6859,\n  \"separate</w>\": 13886,\n  \"separated</w>\": 22163,\n  \"separately</w>\": 41904,\n  \"separates</w>\": 45365,\n  \"separati\": 39377,\n  \"separating</w>\": 43480,\n  \"separation</w>\": 22007,\n  \"sephora</w>\": 38414,\n  \"sepsis</w>\": 40205,\n  \"sept</w>\": 5380,\n  \"septe\": 3672,\n  \"september</w>\": 3707,\n  \"septic</w>\": 34690,\n  \"sepul\": 47360,\n  \"seq</w>\": 44379,\n  \"sequ\": 5491,\n  \"seque\": 44662,\n  \"sequel</w>\": 15701,\n  \"sequence</w>\": 18833,\n  \"sequences</w>\": 47306,\n  \"sequencing</w>\": 33484,\n  \"sequo\": 32781,\n  \"sequoia</w>\": 42404,\n  \"ser\": 803,\n  \"ser</w>\": 2771,\n  \"sera</w>\": 28250,\n  \"serbia</w>\": 19038,\n  \"serbian</w>\": 33687,\n  \"sere\": 35770,\n  \"seren\": 7880,\n  \"serena</w>\": 19519,\n  \"serenawilliams</w>\": 48316,\n  \"serendip\": 45805,\n  \"serendipity</w>\": 49386,\n  \"serene</w>\": 28269,\n  \"serenity</w>\": 24187,\n  \"serge\": 13477,\n  \"serge</w>\": 35700,\n  \"sergeant</w>\": 22049,\n  \"sergei</w>\": 39870,\n  \"sergey</w>\": 35390,\n  \"sergi\": 47675,\n  \"sergio</w>\": 18359,\n  \"seri\": 2763,\n  \"seri</w>\": 37509,\n  \"serial</w>\": 14216,\n  \"serie</w>\": 19752,\n  \"seriea</w>\": 32660,\n  \"series</w>\": 1857,\n  \"serious\": 47421,\n  \"serious</w>\": 4770,\n  \"seriously</w>\": 4885,\n  \"sermon</w>\": 24884,\n  \"sero\": 48883,\n  \"serpent\": 37084,\n  \"serpent</w>\": 35364,\n  \"serra</w>\": 39851,\n  \"serrano</w>\": 44236,\n  \"sers</w>\": 13509,\n  \"serum</w>\": 25385,\n  \"serv\": 1297,\n  \"serv</w>\": 24571,\n  \"servant</w>\": 20810,\n  \"servants</w>\": 29652,\n  \"serve\": 39202,\n  \"serve</w>\": 2838,\n  \"served</w>\": 4740,\n  \"server\": 36458,\n  \"server</w>\": 8398,\n  \"serverless</w>\": 49243,\n  \"servers</w>\": 22262,\n  \"serves</w>\": 9915,\n  \"servic\": 27115,\n  \"service\": 21496,\n  \"service</w>\": 2086,\n  \"serviced</w>\": 44687,\n  \"services</w>\": 3100,\n  \"servicing</w>\": 41300,\n  \"serving</w>\": 5722,\n  \"sery</w>\": 14279,\n  \"ses\": 23708,\n  \"ses</w>\": 1386,\n  \"sesame</w>\": 21706,\n  \"sese</w>\": 37128,\n  \"sesh</w>\": 24274,\n  \"session</w>\": 2550,\n  \"sessions</w>\": 6327,\n  \"set\": 7965,\n  \"set</w>\": 1167,\n  \"setback</w>\": 43605,\n  \"seth\": 20005,\n  \"seth</w>\": 11870,\n  \"sethu\": 38933,\n  \"setlist</w>\": 33141,\n  \"seton</w>\": 43799,\n  \"sets</w>\": 4650,\n  \"sett\": 4984,\n  \"sett</w>\": 17567,\n  \"sette</w>\": 14613,\n  \"setter</w>\": 23153,\n  \"settes</w>\": 44145,\n  \"setti</w>\": 45170,\n  \"setting</w>\": 5264,\n  \"settings</w>\": 18628,\n  \"settle</w>\": 15075,\n  \"settled</w>\": 18310,\n  \"settlement</w>\": 16494,\n  \"settlements</w>\": 36605,\n  \"settlers</w>\": 35671,\n  \"settles</w>\": 41498,\n  \"settling</w>\": 22036,\n  \"setup</w>\": 11092,\n  \"seu</w>\": 31539,\n  \"seul\": 48975,\n  \"seum</w>\": 18838,\n  \"seun\": 24209,\n  \"seung\": 32393,\n  \"seung</w>\": 33711,\n  \"seungri</w>\": 41627,\n  \"seuss</w>\": 34441,\n  \"sev\": 26585,\n  \"sev</w>\": 37600,\n  \"seva</w>\": 42604,\n  \"seve\": 21458,\n  \"seve</w>\": 22468,\n  \"sevel\": 17439,\n  \"seven\": 7874,\n  \"seven</w>\": 5757,\n  \"sevens</w>\": 29911,\n  \"sevent\": 43048,\n  \"seventeen</w>\": 19337,\n  \"seventh</w>\": 17568,\n  \"seventy</w>\": 47170,\n  \"sever\": 3250,\n  \"sever</w>\": 45557,\n  \"several</w>\": 5560,\n  \"severance</w>\": 26194,\n  \"severe</w>\": 6215,\n  \"severely</w>\": 24417,\n  \"severn</w>\": 34626,\n  \"severy\": 34207,\n  \"sevilla</w>\": 24947,\n  \"seville</w>\": 34988,\n  \"sew</w>\": 28640,\n  \"sewage</w>\": 32777,\n  \"sewer</w>\": 28294,\n  \"sewing</w>\": 15974,\n  \"sewn</w>\": 42118,\n  \"sex\": 3548,\n  \"sex</w>\": 5937,\n  \"sexi\": 20562,\n  \"sexiest</w>\": 25426,\n  \"sexism</w>\": 32059,\n  \"sexist</w>\": 33047,\n  \"sexu\": 14741,\n  \"sexual</w>\": 6749,\n  \"sexuality</w>\": 21244,\n  \"sexually</w>\": 23032,\n  \"sexy\": 21019,\n  \"sexy</w>\": 38127,\n  \"sey\": 6317,\n  \"sey</w>\": 2258,\n  \"seychel\": 36809,\n  \"seychelles</w>\": 38519,\n  \"seye</w>\": 35604,\n  \"seym\": 22657,\n  \"seymour</w>\": 25850,\n  \"seys</w>\": 15081,\n  \"sez</w>\": 42377,\n  \"seÃ±\": 43368,\n  \"sf\": 4435,\n  \"sf</w>\": 4915,\n  \"sfa</w>\": 32675,\n  \"sfam</w>\": 37649,\n  \"sfb</w>\": 27930,\n  \"sfc</w>\": 14129,\n  \"sfest</w>\": 49024,\n  \"sff</w>\": 42056,\n  \"sfgiants</w>\": 20923,\n  \"sfield</w>\": 11801,\n  \"sfo</w>\": 39182,\n  \"sfootball</w>\": 45259,\n  \"sfor\": 9115,\n  \"sford</w>\": 28917,\n  \"sforsale</w>\": 28888,\n  \"sfw</w>\": 18073,\n  \"sfx</w>\": 37995,\n  \"sg\": 9599,\n  \"sg</w>\": 7611,\n  \"sga</w>\": 33049,\n  \"sgate</w>\": 27558,\n  \"sgh</w>\": 47590,\n  \"sgo\": 5393,\n  \"sgo</w>\": 21044,\n  \"sgt</w>\": 13748,\n  \"sh\": 552,\n  \"sh</w>\": 849,\n  \"sha\": 1514,\n  \"sha</w>\": 3337,\n  \"shaa</w>\": 44221,\n  \"shab\": 8323,\n  \"shabbat</w>\": 38042,\n  \"shabby</w>\": 28838,\n  \"shack\": 23866,\n  \"shack</w>\": 18785,\n  \"shad\": 3182,\n  \"shad</w>\": 23874,\n  \"shade\": 34554,\n  \"shade</w>\": 10097,\n  \"shaded</w>\": 43506,\n  \"shades\": 46608,\n  \"shades</w>\": 9270,\n  \"shadesof\": 45180,\n  \"shading</w>\": 37348,\n  \"shado\": 9325,\n  \"shadow\": 15243,\n  \"shadow</w>\": 7068,\n  \"shadowhun\": 19931,\n  \"shadowhunters</w>\": 24834,\n  \"shadowing</w>\": 46092,\n  \"shadows</w>\": 12971,\n  \"shady</w>\": 22158,\n  \"shaf\": 12032,\n  \"shaft</w>\": 21545,\n  \"shag\": 22439,\n  \"shaggy</w>\": 42662,\n  \"shah\": 13203,\n  \"shah</w>\": 8439,\n  \"shahe\": 23643,\n  \"shaheed</w>\": 30060,\n  \"shaheer</w>\": 43969,\n  \"shahi</w>\": 46972,\n  \"shahid\": 25696,\n  \"shahid</w>\": 27138,\n  \"shahidkapoor</w>\": 29892,\n  \"shahzad</w>\": 45915,\n  \"shai</w>\": 47941,\n  \"shaikh</w>\": 45712,\n  \"shail\": 37603,\n  \"shair</w>\": 43135,\n  \"shak\": 8385,\n  \"shake\": 8206,\n  \"shake</w>\": 8251,\n  \"shaken</w>\": 38237,\n  \"shaker</w>\": 26210,\n  \"shakers</w>\": 38411,\n  \"shakes</w>\": 19668,\n  \"shakespe\": 9890,\n  \"shakespeare\": 22499,\n  \"shakespeare</w>\": 12488,\n  \"shakespearesunday</w>\": 32320,\n  \"shaking</w>\": 19101,\n  \"shakira</w>\": 40795,\n  \"shakti\": 48593,\n  \"shakti</w>\": 32458,\n  \"shakur</w>\": 48915,\n  \"shal\": 15056,\n  \"shal</w>\": 28175,\n  \"shale</w>\": 32864,\n  \"shall</w>\": 4742,\n  \"shallow</w>\": 23730,\n  \"shalom</w>\": 31339,\n  \"sham\": 6453,\n  \"sham</w>\": 9005,\n  \"shaman</w>\": 48727,\n  \"shambles</w>\": 40799,\n  \"shame\": 14776,\n  \"shame</w>\": 7593,\n  \"shameful</w>\": 28283,\n  \"shameless</w>\": 25380,\n  \"shaming</w>\": 40553,\n  \"shampoo</w>\": 23944,\n  \"shamrock</w>\": 34199,\n  \"shan\": 5171,\n  \"shan</w>\": 8834,\n  \"shana</w>\": 44835,\n  \"shand\": 29101,\n  \"shane\": 26863,\n  \"shane</w>\": 11572,\n  \"shang\": 11141,\n  \"shanghai</w>\": 12742,\n  \"shani\": 46665,\n  \"shank</w>\": 24685,\n  \"shankar</w>\": 24108,\n  \"shann\": 9932,\n  \"shannon\": 22842,\n  \"shannon</w>\": 13581,\n  \"shant\": 36610,\n  \"shap\": 5581,\n  \"shape\": 26925,\n  \"shape</w>\": 6448,\n  \"shaped</w>\": 10127,\n  \"shapes</w>\": 15377,\n  \"shaping</w>\": 18632,\n  \"shapiro</w>\": 32110,\n  \"shaq\": 46402,\n  \"shaq</w>\": 26843,\n  \"shar\": 1669,\n  \"shar</w>\": 36542,\n  \"shara</w>\": 48849,\n  \"sharapo\": 36489,\n  \"sharapova</w>\": 36671,\n  \"shard</w>\": 42207,\n  \"share\": 7585,\n  \"share</w>\": 1978,\n  \"shared</w>\": 5368,\n  \"shareholder</w>\": 38241,\n  \"shareholders</w>\": 34778,\n  \"sharepoint</w>\": 39213,\n  \"shares</w>\": 4974,\n  \"sharethe\": 49277,\n  \"shareyour\": 45890,\n  \"shari\": 27738,\n  \"shari</w>\": 47390,\n  \"sharia</w>\": 37244,\n  \"sharif</w>\": 15501,\n  \"sharing</w>\": 3567,\n  \"sharjah</w>\": 33420,\n  \"shark\": 15836,\n  \"shark</w>\": 7980,\n  \"sharks</w>\": 10047,\n  \"sharkweek</w>\": 39571,\n  \"sharma</w>\": 10105,\n  \"sharon\": 28722,\n  \"sharon</w>\": 14138,\n  \"sharp\": 17126,\n  \"sharp</w>\": 8157,\n  \"sharpe</w>\": 34374,\n  \"sharpen\": 41465,\n  \"sharpie</w>\": 46858,\n  \"sharply</w>\": 37185,\n  \"shasta</w>\": 46727,\n  \"shat\": 12169,\n  \"shat</w>\": 44388,\n  \"shatter</w>\": 45008,\n  \"shattered</w>\": 26820,\n  \"shau\": 13750,\n  \"shaun\": 23446,\n  \"shaun</w>\": 16669,\n  \"shav\": 11410,\n  \"shave</w>\": 17735,\n  \"shaved</w>\": 25571,\n  \"shaving</w>\": 24261,\n  \"shaw\": 6122,\n  \"shaw</w>\": 6805,\n  \"shawa</w>\": 46413,\n  \"shawl</w>\": 35132,\n  \"shawn\": 16677,\n  \"shawn</w>\": 10970,\n  \"shawnee</w>\": 48060,\n  \"shawnmendes</w>\": 27277,\n  \"shawty</w>\": 38026,\n  \"shay\": 10778,\n  \"shay</w>\": 18361,\n  \"shaykh</w>\": 47223,\n  \"shaz\": 18618,\n  \"shazam</w>\": 29063,\n  \"shc</w>\": 43419,\n  \"shd</w>\": 37729,\n  \"she\": 1729,\n  \"she</w>\": 1043,\n  \"shea</w>\": 20407,\n  \"shead\": 44287,\n  \"shead</w>\": 20434,\n  \"shealth\": 41743,\n  \"shealth</w>\": 22197,\n  \"shear\": 27974,\n  \"shear</w>\": 32108,\n  \"shearer</w>\": 40505,\n  \"sheath</w>\": 45637,\n  \"shed\": 16586,\n  \"shed</w>\": 1492,\n  \"shedding</w>\": 33608,\n  \"sheds</w>\": 25921,\n  \"shee\": 23450,\n  \"shee</w>\": 34321,\n  \"sheed</w>\": 26105,\n  \"sheehan</w>\": 41809,\n  \"sheen</w>\": 25025,\n  \"sheep\": 23604,\n  \"sheep</w>\": 9629,\n  \"sheer</w>\": 17577,\n  \"sheeran</w>\": 18561,\n  \"sheet</w>\": 7298,\n  \"sheets</w>\": 12744,\n  \"shef\": 8237,\n  \"sheff\": 38844,\n  \"sheff</w>\": 43821,\n  \"sheffiel\": 26940,\n  \"sheffield\": 41763,\n  \"sheffield</w>\": 10420,\n  \"sheffieldissuper</w>\": 33628,\n  \"sheh\": 31667,\n  \"sheikh</w>\": 15031,\n  \"sheil\": 42765,\n  \"sheila</w>\": 25734,\n  \"shek</w>\": 33285,\n  \"shel\": 3159,\n  \"shelby\": 36906,\n  \"shelby</w>\": 16885,\n  \"sheldon</w>\": 25079,\n  \"shelf</w>\": 10955,\n  \"shell\": 23374,\n  \"shell</w>\": 6648,\n  \"shelley</w>\": 22497,\n  \"shelling</w>\": 43166,\n  \"shells</w>\": 19265,\n  \"shelly</w>\": 37461,\n  \"shelter</w>\": 8599,\n  \"sheltered</w>\": 48070,\n  \"shelters</w>\": 24312,\n  \"shelton</w>\": 24471,\n  \"shelves</w>\": 16225,\n  \"shem</w>\": 40299,\n  \"shen\": 10154,\n  \"shen</w>\": 31098,\n  \"shenan\": 20965,\n  \"shenando\": 44666,\n  \"shenanigans</w>\": 26590,\n  \"shenko</w>\": 39751,\n  \"shenmue</w>\": 48279,\n  \"shenzhen</w>\": 38970,\n  \"shep\": 33757,\n  \"shep</w>\": 44857,\n  \"shepard</w>\": 26810,\n  \"shepher\": 11008,\n  \"shepherd</w>\": 13242,\n  \"shepherds</w>\": 42792,\n  \"sheppard</w>\": 37304,\n  \"sher\": 3570,\n  \"sher</w>\": 4510,\n  \"sheraton</w>\": 39400,\n  \"shere</w>\": 21507,\n  \"sheri\": 9235,\n  \"sheridan</w>\": 27085,\n  \"sheriff</w>\": 10309,\n  \"sherlock</w>\": 17294,\n  \"sherman</w>\": 17822,\n  \"sherry\": 44348,\n  \"sherry</w>\": 24689,\n  \"shers</w>\": 14141,\n  \"sherwood</w>\": 24527,\n  \"sheryl</w>\": 39773,\n  \"shes\": 45514,\n  \"shes</w>\": 2502,\n  \"shet\": 15850,\n  \"shetland</w>\": 29595,\n  \"shetty</w>\": 25533,\n  \"shev\": 45182,\n  \"sheva</w>\": 45132,\n  \"shh</w>\": 35025,\n  \"shhh</w>\": 36932,\n  \"shi\": 823,\n  \"shi</w>\": 3533,\n  \"shia</w>\": 23791,\n  \"shibu\": 36177,\n  \"shibuya</w>\": 41623,\n  \"shie</w>\": 26638,\n  \"shiel\": 33413,\n  \"shield</w>\": 8670,\n  \"shields</w>\": 19085,\n  \"shies</w>\": 35312,\n  \"shif\": 35317,\n  \"shift\": 43767,\n  \"shift</w>\": 6905,\n  \"shifted</w>\": 34429,\n  \"shifter</w>\": 48944,\n  \"shifting</w>\": 21992,\n  \"shifts</w>\": 23957,\n  \"shik</w>\": 36980,\n  \"shil\": 14370,\n  \"shill\": 32121,\n  \"shill</w>\": 30090,\n  \"shilpa\": 47062,\n  \"shilpa</w>\": 40690,\n  \"shim\": 11986,\n  \"shim</w>\": 32780,\n  \"shima</w>\": 14382,\n  \"shimano</w>\": 48904,\n  \"shimi</w>\": 40517,\n  \"shimmer</w>\": 38792,\n  \"shin\": 5664,\n  \"shin</w>\": 11784,\n  \"shinde</w>\": 41516,\n  \"shine\": 17582,\n  \"shine</w>\": 3780,\n  \"shinee</w>\": 19660,\n  \"shines</w>\": 16015,\n  \"shing\": 38641,\n  \"shing</w>\": 1743,\n  \"shining</w>\": 10485,\n  \"shino\": 43074,\n  \"shiny</w>\": 12190,\n  \"ship\": 7645,\n  \"ship</w>\": 1158,\n  \"shipment</w>\": 28553,\n  \"shipp\": 34709,\n  \"shipped</w>\": 15279,\n  \"shippers</w>\": 44789,\n  \"shipping</w>\": 5721,\n  \"ships</w>\": 3262,\n  \"shipwreck</w>\": 48878,\n  \"shipy\": 26828,\n  \"shipyard</w>\": 31273,\n  \"shir\": 1956,\n  \"shiraz</w>\": 35618,\n  \"shire\": 11975,\n  \"shire</w>\": 2968,\n  \"shirehour</w>\": 32456,\n  \"shirley</w>\": 18189,\n  \"shiro</w>\": 26048,\n  \"shirt\": 27576,\n  \"shirt</w>\": 2523,\n  \"shirtless</w>\": 28959,\n  \"shirts</w>\": 5803,\n  \"shistory</w>\": 34979,\n  \"shiv\": 18042,\n  \"shiv</w>\": 37121,\n  \"shiva\": 33881,\n  \"shiva</w>\": 21174,\n  \"shka</w>\": 38944,\n  \"shld</w>\": 49359,\n  \"shma</w>\": 48074,\n  \"shment</w>\": 8802,\n  \"shments</w>\": 18822,\n  \"sho\": 719,\n  \"sho</w>\": 13756,\n  \"shock\": 19617,\n  \"shock</w>\": 8736,\n  \"shocked</w>\": 15787,\n  \"shocker</w>\": 37971,\n  \"shockey</w>\": 22258,\n  \"shocking</w>\": 13394,\n  \"shocks</w>\": 31886,\n  \"shoe\": 16308,\n  \"shoe</w>\": 7342,\n  \"shoes\": 49391,\n  \"shoes</w>\": 4079,\n  \"shol\": 21472,\n  \"sholm</w>\": 44139,\n  \"shome</w>\": 42701,\n  \"shon\": 19526,\n  \"shon</w>\": 37621,\n  \"shone</w>\": 47173,\n  \"shoo\": 1975,\n  \"shook</w>\": 20730,\n  \"shoops</w>\": 29956,\n  \"shoot\": 12531,\n  \"shoot</w>\": 3704,\n  \"shooter</w>\": 13645,\n  \"shooters</w>\": 31902,\n  \"shooting</w>\": 3992,\n  \"shootings</w>\": 26753,\n  \"shootout</w>\": 20666,\n  \"shoots</w>\": 14144,\n  \"shop\": 5738,\n  \"shop</w>\": 1557,\n  \"shopify</w>\": 47949,\n  \"shoplocal</w>\": 21775,\n  \"shopp\": 38486,\n  \"shoppe</w>\": 38236,\n  \"shopped</w>\": 28088,\n  \"shopper</w>\": 24346,\n  \"shoppers</w>\": 22316,\n  \"shopping\": 42101,\n  \"shopping</w>\": 4266,\n  \"shops</w>\": 6467,\n  \"shopsmall</w>\": 35942,\n  \"shor\": 3209,\n  \"shore\": 14717,\n  \"shore</w>\": 5928,\n  \"shored\": 33140,\n  \"shoreditch</w>\": 35042,\n  \"shoreline</w>\": 34807,\n  \"shores</w>\": 18102,\n  \"short\": 6803,\n  \"short</w>\": 3005,\n  \"shortage</w>\": 19910,\n  \"shortages</w>\": 38730,\n  \"shortcuts</w>\": 45793,\n  \"shorten</w>\": 41711,\n  \"shorter</w>\": 20350,\n  \"shortest</w>\": 33717,\n  \"shortfilm</w>\": 37204,\n  \"shorth\": 37397,\n  \"shortlist</w>\": 28163,\n  \"shortlisted</w>\": 20631,\n  \"shortly</w>\": 11967,\n  \"shorts</w>\": 9680,\n  \"shorty</w>\": 33502,\n  \"shot\": 9805,\n  \"shot</w>\": 2000,\n  \"shotel</w>\": 42365,\n  \"shotgun</w>\": 21643,\n  \"shots</w>\": 5342,\n  \"shou\": 3890,\n  \"shoul\": 29847,\n  \"should\": 14947,\n  \"should</w>\": 1535,\n  \"shoulder</w>\": 8476,\n  \"shoulders</w>\": 18738,\n  \"shouldn</w>\": 9416,\n  \"shour</w>\": 20025,\n  \"shouse</w>\": 28671,\n  \"shout\": 7335,\n  \"shout</w>\": 5214,\n  \"shouted</w>\": 44397,\n  \"shouting</w>\": 26464,\n  \"shoutout</w>\": 8274,\n  \"shouts</w>\": 26709,\n  \"shovel</w>\": 31778,\n  \"show\": 2133,\n  \"show</w>\": 1080,\n  \"showbiz</w>\": 34156,\n  \"showcas\": 14290,\n  \"showcase</w>\": 7265,\n  \"showcased</w>\": 35786,\n  \"showcases</w>\": 26266,\n  \"showcasing</w>\": 17036,\n  \"showdown</w>\": 15576,\n  \"showed</w>\": 7150,\n  \"shower</w>\": 7777,\n  \"showers</w>\": 9893,\n  \"showing</w>\": 3649,\n  \"shown</w>\": 8506,\n  \"showroom</w>\": 16821,\n  \"shows</w>\": 2665,\n  \"showtime\": 40576,\n  \"showtime</w>\": 15442,\n  \"showyour\": 46733,\n  \"shp</w>\": 38341,\n  \"shq</w>\": 21145,\n  \"shr\": 10118,\n  \"shra\": 21360,\n  \"shradd\": 28172,\n  \"shraddha\": 35208,\n  \"shraddhakapoor</w>\": 40385,\n  \"shre\": 12101,\n  \"shred\": 19756,\n  \"shred</w>\": 33017,\n  \"shredded</w>\": 31772,\n  \"shredding</w>\": 45534,\n  \"shree</w>\": 37410,\n  \"shrek</w>\": 35009,\n  \"shrews\": 26411,\n  \"shrewsbury</w>\": 30921,\n  \"shri\": 8838,\n  \"shri</w>\": 11424,\n  \"shrimp</w>\": 12727,\n  \"shrin\": 24865,\n  \"shrine</w>\": 16156,\n  \"shrink</w>\": 34957,\n  \"shrinking</w>\": 41243,\n  \"shrm</w>\": 44163,\n  \"shro\": 15259,\n  \"shroff</w>\": 32081,\n  \"shrop\": 22630,\n  \"shropshire</w>\": 26344,\n  \"shru\": 14911,\n  \"shrub</w>\": 41464,\n  \"shrubs</w>\": 47975,\n  \"shrun\": 46767,\n  \"shs</w>\": 16184,\n  \"sht</w>\": 44210,\n  \"shti</w>\": 38927,\n  \"shu\": 2872,\n  \"shu</w>\": 17651,\n  \"shua</w>\": 33771,\n  \"shub</w>\": 40552,\n  \"shud</w>\": 45782,\n  \"shuff\": 42641,\n  \"shuffle</w>\": 21681,\n  \"shui</w>\": 45473,\n  \"shuk\": 29927,\n  \"shukla</w>\": 46829,\n  \"shul\": 30721,\n  \"shum\": 37383,\n  \"shun\": 24479,\n  \"shun</w>\": 39594,\n  \"shur\": 41032,\n  \"shut\": 8702,\n  \"shut</w>\": 8282,\n  \"shutdown</w>\": 16051,\n  \"shutout</w>\": 24385,\n  \"shuts</w>\": 28313,\n  \"shutt\": 31866,\n  \"shutter\": 36235,\n  \"shutter</w>\": 33902,\n  \"shutters</w>\": 46894,\n  \"shutting</w>\": 31383,\n  \"shuttle</w>\": 15842,\n  \"shwar</w>\": 41640,\n  \"shy\": 22678,\n  \"shy</w>\": 9682,\n  \"si\": 564,\n  \"si</w>\": 2990,\n  \"sia</w>\": 2357,\n  \"siam\": 29686,\n  \"siam</w>\": 48248,\n  \"siamese</w>\": 43161,\n  \"sian\": 28510,\n  \"sian</w>\": 6221,\n  \"sians</w>\": 26583,\n  \"sias</w>\": 28645,\n  \"siber\": 22206,\n  \"siberia</w>\": 39969,\n  \"siberian</w>\": 34058,\n  \"sibl\": 14338,\n  \"sible</w>\": 14507,\n  \"sibling\": 43060,\n  \"sibling</w>\": 23779,\n  \"siblings</w>\": 17156,\n  \"sic\": 8278,\n  \"sic</w>\": 1118,\n  \"sica</w>\": 34125,\n  \"sical</w>\": 33875,\n  \"sichuan</w>\": 48950,\n  \"sicilian</w>\": 45292,\n  \"sicily</w>\": 23179,\n  \"sick\": 11143,\n  \"sick</w>\": 5359,\n  \"sickest</w>\": 47972,\n  \"sickle</w>\": 41459,\n  \"sickness</w>\": 28898,\n  \"sics</w>\": 26297,\n  \"sid\": 10117,\n  \"sid</w>\": 15119,\n  \"sidd\": 19842,\n  \"siddi\": 35227,\n  \"side\": 5869,\n  \"side</w>\": 1145,\n  \"sided</w>\": 21061,\n  \"sidekick</w>\": 44683,\n  \"sidel\": 43557,\n  \"sideline</w>\": 32056,\n  \"sidelines</w>\": 31046,\n  \"sider</w>\": 30581,\n  \"siders</w>\": 41249,\n  \"sides</w>\": 7578,\n  \"sideshow</w>\": 46789,\n  \"sidewalk</w>\": 23278,\n  \"sidewalks</w>\": 43583,\n  \"sideways</w>\": 35593,\n  \"siding</w>\": 38758,\n  \"sidney</w>\": 22598,\n  \"sie\": 8533,\n  \"sie</w>\": 5685,\n  \"sieg\": 49203,\n  \"siege</w>\": 18460,\n  \"siegel</w>\": 48559,\n  \"siem\": 18434,\n  \"siemens</w>\": 30147,\n  \"siempre</w>\": 44030,\n  \"siena</w>\": 33336,\n  \"sienna</w>\": 40373,\n  \"sier\": 10028,\n  \"sier</w>\": 7444,\n  \"sierra</w>\": 13552,\n  \"siers</w>\": 35923,\n  \"sies</w>\": 16367,\n  \"siest</w>\": 18323,\n  \"sif</w>\": 29300,\n  \"sig\": 872,\n  \"sig</w>\": 19145,\n  \"sigh\": 36303,\n  \"sigh</w>\": 15505,\n  \"sighs</w>\": 44579,\n  \"sight\": 16897,\n  \"sight</w>\": 6329,\n  \"sighted</w>\": 33034,\n  \"sighting</w>\": 17507,\n  \"sightings</w>\": 30004,\n  \"sights</w>\": 17364,\n  \"sightseeing</w>\": 34210,\n  \"sigma\": 45075,\n  \"sigma</w>\": 15697,\n  \"sign\": 5538,\n  \"sign</w>\": 2292,\n  \"signage</w>\": 21156,\n  \"signal</w>\": 10781,\n  \"signaling</w>\": 38492,\n  \"signalling</w>\": 48426,\n  \"signals</w>\": 17150,\n  \"signation</w>\": 24347,\n  \"signature</w>\": 9189,\n  \"signatures</w>\": 21865,\n  \"signed</w>\": 3163,\n  \"signee</w>\": 39778,\n  \"signi\": 34023,\n  \"signific\": 6374,\n  \"significance</w>\": 23769,\n  \"significant</w>\": 8735,\n  \"significantly</w>\": 16187,\n  \"signing</w>\": 4401,\n  \"signingday</w>\": 40282,\n  \"signings</w>\": 27731,\n  \"signs</w>\": 4659,\n  \"signup</w>\": 40791,\n  \"sigue</w>\": 49401,\n  \"sii</w>\": 36672,\n  \"sik\": 19974,\n  \"sik</w>\": 22413,\n  \"sika</w>\": 31144,\n  \"sikh</w>\": 21829,\n  \"sikhs</w>\": 45426,\n  \"sil\": 1556,\n  \"sil</w>\": 8315,\n  \"sila</w>\": 41754,\n  \"sile\": 37620,\n  \"silen\": 39048,\n  \"silence</w>\": 8462,\n  \"silenced</w>\": 45415,\n  \"silent\": 30352,\n  \"silent</w>\": 8487,\n  \"silently</w>\": 42640,\n  \"silhou\": 20589,\n  \"silhouette</w>\": 26149,\n  \"silic\": 23830,\n  \"silicon\": 32412,\n  \"silicon</w>\": 17888,\n  \"silicone</w>\": 28221,\n  \"silk\": 25891,\n  \"silk</w>\": 9743,\n  \"silky</w>\": 29554,\n  \"sill\": 42468,\n  \"sill</w>\": 48024,\n  \"silly</w>\": 11883,\n  \"silon</w>\": 31841,\n  \"sils</w>\": 39708,\n  \"silva</w>\": 16489,\n  \"silve\": 37697,\n  \"silver\": 7525,\n  \"silver</w>\": 3467,\n  \"silverado</w>\": 46160,\n  \"silverstone</w>\": 29666,\n  \"silvia</w>\": 37289,\n  \"sim\": 5026,\n  \"sim</w>\": 10740,\n  \"sima</w>\": 35871,\n  \"simba</w>\": 39492,\n  \"simcoe</w>\": 47148,\n  \"sime\": 28329,\n  \"simi</w>\": 38073,\n  \"simil\": 7202,\n  \"similar</w>\": 8547,\n  \"similarities</w>\": 34716,\n  \"simm\": 13001,\n  \"simmons</w>\": 14699,\n  \"simo</w>\": 37171,\n  \"simon\": 8796,\n  \"simon</w>\": 6668,\n  \"simona</w>\": 46277,\n  \"simone</w>\": 19062,\n  \"simons</w>\": 33097,\n  \"simp\": 2542,\n  \"simple\": 19018,\n  \"simple</w>\": 4129,\n  \"simpler</w>\": 35489,\n  \"simplest</w>\": 39588,\n  \"simpli\": 16868,\n  \"simplicity</w>\": 21262,\n  \"simplified</w>\": 36647,\n  \"simplify</w>\": 35479,\n  \"simply\": 25637,\n  \"simply</w>\": 6151,\n  \"simpson\": 41805,\n  \"simpson</w>\": 11750,\n  \"simpsons</w>\": 21092,\n  \"sims</w>\": 14021,\n  \"simul\": 9845,\n  \"simulated</w>\": 46395,\n  \"simulation</w>\": 18610,\n  \"simulator</w>\": 20821,\n  \"simultaneous</w>\": 48816,\n  \"simultaneously</w>\": 28575,\n  \"sin\": 1303,\n  \"sin</w>\": 3421,\n  \"sina</w>\": 19541,\n  \"sinai</w>\": 33226,\n  \"sinatra</w>\": 27262,\n  \"sinc</w>\": 30464,\n  \"since</w>\": 1855,\n  \"sincere\": 24513,\n  \"sincere</w>\": 24886,\n  \"sincerely</w>\": 25673,\n  \"sinclair</w>\": 23100,\n  \"sind\": 39598,\n  \"sind</w>\": 30877,\n  \"sindh</w>\": 20754,\n  \"sindia</w>\": 48038,\n  \"sine\": 22741,\n  \"sine</w>\": 33793,\n  \"sinfo</w>\": 47178,\n  \"sing\": 1387,\n  \"sing</w>\": 1197,\n  \"singapo\": 27861,\n  \"singapore\": 28879,\n  \"singapore</w>\": 6754,\n  \"singer\": 33880,\n  \"singer</w>\": 5108,\n  \"singers</w>\": 15613,\n  \"singersongwriter</w>\": 44585,\n  \"singh\": 19445,\n  \"singh</w>\": 5715,\n  \"singing</w>\": 5864,\n  \"single\": 19524,\n  \"single</w>\": 2688,\n  \"singles</w>\": 12025,\n  \"singleton</w>\": 46247,\n  \"singly</w>\": 16619,\n  \"sings</w>\": 13635,\n  \"singul\": 34003,\n  \"singular</w>\": 44009,\n  \"singularity</w>\": 48410,\n  \"sinha</w>\": 29416,\n  \"sini\": 41781,\n  \"sini</w>\": 26319,\n  \"sinister</w>\": 31313,\n  \"sink\": 37232,\n  \"sink</w>\": 14551,\n  \"sinking</w>\": 27949,\n  \"sinks</w>\": 32710,\n  \"sinn</w>\": 36315,\n  \"sinner</w>\": 45380,\n  \"sinners</w>\": 43436,\n  \"sino</w>\": 29759,\n  \"sins</w>\": 9345,\n  \"sinthe\": 30737,\n  \"sinu\": 37351,\n  \"sinus</w>\": 47535,\n  \"sio</w>\": 10807,\n  \"siob\": 40954,\n  \"siology</w>\": 46315,\n  \"sion\": 5676,\n  \"sion</w>\": 1015,\n  \"sional</w>\": 14533,\n  \"sionally</w>\": 30754,\n  \"sions</w>\": 4060,\n  \"sioux\": 44695,\n  \"sioux</w>\": 24954,\n  \"sip</w>\": 16096,\n  \"sipping</w>\": 28527,\n  \"sir\": 10708,\n  \"sir</w>\": 3846,\n  \"sire</w>\": 28450,\n  \"siren</w>\": 33026,\n  \"sirens</w>\": 35907,\n  \"siri\": 13986,\n  \"siri</w>\": 18394,\n  \"sirius\": 23574,\n  \"sirius</w>\": 34999,\n  \"siriusxm</w>\": 29833,\n  \"sirloin</w>\": 46828,\n  \"sis\": 18132,\n  \"sis</w>\": 2580,\n  \"sisd</w>\": 27132,\n  \"sisi</w>\": 37892,\n  \"siss\": 42929,\n  \"sissy</w>\": 27564,\n  \"sist</w>\": 20520,\n  \"sista</w>\": 37448,\n  \"sister\": 17417,\n  \"sister</w>\": 3677,\n  \"sisterhood</w>\": 37313,\n  \"sisters</w>\": 6404,\n  \"sit\": 7387,\n  \"sit</w>\": 4037,\n  \"sitcom</w>\": 30426,\n  \"site\": 26792,\n  \"site</w>\": 1988,\n  \"sites</w>\": 7236,\n  \"sith</w>\": 41499,\n  \"sito</w>\": 42613,\n  \"sits</w>\": 12726,\n  \"sitt\": 42988,\n  \"sitter</w>\": 40777,\n  \"sittin</w>\": 40887,\n  \"sitting</w>\": 4919,\n  \"situ\": 5562,\n  \"situ</w>\": 42536,\n  \"situated</w>\": 22030,\n  \"situation</w>\": 7144,\n  \"situations</w>\": 19096,\n  \"sity\": 38177,\n  \"sity</w>\": 5477,\n  \"siu</w>\": 40174,\n  \"sium</w>\": 8090,\n  \"sius</w>\": 27595,\n  \"siva</w>\": 20991,\n  \"sivan</w>\": 36931,\n  \"sive\": 23572,\n  \"sive</w>\": 1875,\n  \"sively</w>\": 10343,\n  \"siveness</w>\": 39667,\n  \"sives</w>\": 23896,\n  \"sivity</w>\": 42738,\n  \"siwon</w>\": 29055,\n  \"six\": 5968,\n  \"six</w>\": 4093,\n  \"sixers</w>\": 25941,\n  \"sixteen</w>\": 28677,\n  \"sixth</w>\": 12909,\n  \"sixties</w>\": 44948,\n  \"sixty</w>\": 32588,\n  \"siya</w>\": 44440,\n  \"size\": 38377,\n  \"size</w>\": 3235,\n  \"sized</w>\": 9832,\n  \"sizes</w>\": 10253,\n  \"sizing</w>\": 28330,\n  \"sizz\": 23778,\n  \"sizzle</w>\": 47890,\n  \"sizzling</w>\": 35799,\n  \"sj\": 7536,\n  \"sj</w>\": 16010,\n  \"sjo\": 42012,\n  \"sk\": 909,\n  \"sk</w>\": 2058,\n  \"ska</w>\": 7495,\n  \"skag\": 31948,\n  \"skan\": 46772,\n  \"skar\": 27587,\n  \"skar</w>\": 26835,\n  \"skate\": 13740,\n  \"skate</w>\": 12745,\n  \"skateboard</w>\": 31777,\n  \"skateboarding</w>\": 31352,\n  \"skater</w>\": 30337,\n  \"skaters</w>\": 39824,\n  \"skates</w>\": 31479,\n  \"skc</w>\": 44551,\n  \"ske\": 6261,\n  \"ske</w>\": 25516,\n  \"skel\": 36564,\n  \"skelet\": 27075,\n  \"skeletal</w>\": 37369,\n  \"skeleton</w>\": 20062,\n  \"skeletons</w>\": 48874,\n  \"skell</w>\": 40801,\n  \"skep\": 27772,\n  \"skeptical</w>\": 44934,\n  \"sker\": 37640,\n  \"sker</w>\": 33600,\n  \"sket\": 3744,\n  \"sketch\": 11767,\n  \"sketch</w>\": 5269,\n  \"sketchbook</w>\": 18899,\n  \"sketched</w>\": 38581,\n  \"sketches</w>\": 17622,\n  \"sketching</w>\": 23228,\n  \"sketchy</w>\": 41582,\n  \"skey</w>\": 37453,\n  \"ski\": 3327,\n  \"ski</w>\": 3428,\n  \"skid\": 36574,\n  \"skid</w>\": 32099,\n  \"skier</w>\": 42585,\n  \"skies</w>\": 7244,\n  \"skiing</w>\": 14400,\n  \"skil\": 24543,\n  \"skill\": 15598,\n  \"skill</w>\": 10604,\n  \"skilled</w>\": 17535,\n  \"skillet</w>\": 40568,\n  \"skills</w>\": 4113,\n  \"skim\": 33191,\n  \"skin\": 5821,\n  \"skin</w>\": 3575,\n  \"skincare</w>\": 12648,\n  \"skine</w>\": 37300,\n  \"sking\": 46215,\n  \"skinned</w>\": 42199,\n  \"skinner</w>\": 30261,\n  \"skinny\": 42729,\n  \"skinny</w>\": 15457,\n  \"skins</w>\": 11594,\n  \"skip\": 39793,\n  \"skip</w>\": 14296,\n  \"skipped</w>\": 40639,\n  \"skipper</w>\": 22226,\n  \"skipping</w>\": 34867,\n  \"skir\": 8919,\n  \"skirt</w>\": 12386,\n  \"skirts</w>\": 24840,\n  \"skis</w>\": 32843,\n  \"skit</w>\": 43573,\n  \"skitchen</w>\": 42820,\n  \"skittles</w>\": 43213,\n  \"sko\": 15141,\n  \"sko</w>\": 23493,\n  \"skoda</w>\": 38668,\n  \"skool</w>\": 26743,\n  \"skril\": 43149,\n  \"skrillex</w>\": 43651,\n  \"sks</w>\": 48136,\n  \"sku\": 10836,\n  \"skul\": 17561,\n  \"skull\": 34068,\n  \"skull</w>\": 12092,\n  \"skulls</w>\": 31804,\n  \"skunk</w>\": 42194,\n  \"sky\": 3075,\n  \"sky</w>\": 2390,\n  \"skybet\": 45540,\n  \"skye</w>\": 21475,\n  \"skyl\": 43554,\n  \"skylar</w>\": 45411,\n  \"skyline</w>\": 14606,\n  \"skymap</w>\": 41734,\n  \"skynews</w>\": 40977,\n  \"skype</w>\": 17069,\n  \"skyrim</w>\": 33693,\n  \"skysports\": 39845,\n  \"skysports</w>\": 46725,\n  \"skywalker</w>\": 32936,\n  \"sl\": 2621,\n  \"sl</w>\": 7489,\n  \"sla\": 2725,\n  \"sla</w>\": 26707,\n  \"slab</w>\": 24241,\n  \"slabs</w>\": 42818,\n  \"slack\": 37108,\n  \"slack</w>\": 30142,\n  \"slade</w>\": 33546,\n  \"slain</w>\": 35972,\n  \"slalom</w>\": 43540,\n  \"slam\": 14891,\n  \"slam</w>\": 10131,\n  \"slammed</w>\": 29772,\n  \"slams</w>\": 18907,\n  \"slan\": 44663,\n  \"slan</w>\": 47193,\n  \"sland</w>\": 11294,\n  \"slang</w>\": 33655,\n  \"slap\": 48830,\n  \"slap</w>\": 21751,\n  \"slapped</w>\": 38861,\n  \"slaps</w>\": 46796,\n  \"slash</w>\": 19749,\n  \"slat\": 38966,\n  \"slate</w>\": 17919,\n  \"slated</w>\": 36094,\n  \"slater</w>\": 25968,\n  \"slaugh\": 26782,\n  \"slaughter</w>\": 19815,\n  \"slaughtered</w>\": 46615,\n  \"slav</w>\": 47292,\n  \"slava</w>\": 41797,\n  \"slave</w>\": 14029,\n  \"slavery</w>\": 15754,\n  \"slaves</w>\": 23833,\n  \"slaw</w>\": 28178,\n  \"slay\": 48319,\n  \"slay</w>\": 19380,\n  \"slayed</w>\": 44870,\n  \"slayer</w>\": 21605,\n  \"slaying</w>\": 27812,\n  \"slays</w>\": 45648,\n  \"slc</w>\": 21972,\n  \"sle\": 1709,\n  \"sleague</w>\": 23336,\n  \"sled</w>\": 28438,\n  \"sledge</w>\": 48750,\n  \"slee\": 17642,\n  \"slee</w>\": 38977,\n  \"sleek</w>\": 23187,\n  \"sleep\": 4656,\n  \"sleep</w>\": 3840,\n  \"sleeper</w>\": 28709,\n  \"sleeping</w>\": 6982,\n  \"sleepless</w>\": 39779,\n  \"sleepover</w>\": 39415,\n  \"sleeps</w>\": 16610,\n  \"sleepy\": 32572,\n  \"sleepy</w>\": 14497,\n  \"sleet</w>\": 36948,\n  \"sleeve\": 35270,\n  \"sleeve</w>\": 10536,\n  \"sleeveless</w>\": 38049,\n  \"sleeves</w>\": 19691,\n  \"sleg</w>\": 47650,\n  \"sleigh</w>\": 30865,\n  \"slender</w>\": 40331,\n  \"slept</w>\": 20388,\n  \"sler</w>\": 14066,\n  \"sley\": 17198,\n  \"sley</w>\": 6496,\n  \"sli\": 1811,\n  \"sli</w>\": 44824,\n  \"slic\": 19692,\n  \"slice</w>\": 13431,\n  \"sliced</w>\": 28121,\n  \"slices</w>\": 28424,\n  \"slick</w>\": 18341,\n  \"slide\": 27828,\n  \"slide</w>\": 8837,\n  \"slider</w>\": 37861,\n  \"sliders</w>\": 40700,\n  \"slides</w>\": 15939,\n  \"slideshow</w>\": 42817,\n  \"sliding</w>\": 21468,\n  \"slife</w>\": 15448,\n  \"sliga</w>\": 21080,\n  \"slight</w>\": 14297,\n  \"slightly</w>\": 8456,\n  \"sligo</w>\": 30424,\n  \"slike\": 38744,\n  \"slim\": 35226,\n  \"slim</w>\": 12364,\n  \"slime</w>\": 29107,\n  \"sling\": 28021,\n  \"sling</w>\": 32607,\n  \"slinger</w>\": 47269,\n  \"slions</w>\": 43363,\n  \"slip\": 39785,\n  \"slip</w>\": 12105,\n  \"slipknot</w>\": 41816,\n  \"slipped</w>\": 30344,\n  \"slipper</w>\": 39644,\n  \"slippers</w>\": 26509,\n  \"slippery</w>\": 30814,\n  \"slipping</w>\": 36301,\n  \"slips</w>\": 30632,\n  \"slist</w>\": 33749,\n  \"slit</w>\": 47011,\n  \"slive</w>\": 31652,\n  \"slo\": 4303,\n  \"slo</w>\": 36083,\n  \"sloan</w>\": 29110,\n  \"sloane</w>\": 41553,\n  \"slogan</w>\": 23398,\n  \"slogans</w>\": 42795,\n  \"slope</w>\": 22769,\n  \"slopes</w>\": 24066,\n  \"sloppy</w>\": 36154,\n  \"slot</w>\": 14500,\n  \"sloth</w>\": 30007,\n  \"slots</w>\": 19238,\n  \"slou\": 48493,\n  \"slovak\": 23315,\n  \"slovakia</w>\": 25994,\n  \"sloven\": 17018,\n  \"slovenia</w>\": 21037,\n  \"slow\": 6674,\n  \"slow</w>\": 5444,\n  \"slowdown</w>\": 38421,\n  \"slowed</w>\": 43793,\n  \"slower</w>\": 29181,\n  \"slowing</w>\": 29839,\n  \"slowly</w>\": 9568,\n  \"slows</w>\": 46855,\n  \"slp</w>\": 45599,\n  \"slr</w>\": 21325,\n  \"sls</w>\": 33651,\n  \"slt</w>\": 39283,\n  \"sltd</w>\": 36388,\n  \"slu\": 7224,\n  \"slu</w>\": 47456,\n  \"slug</w>\": 34190,\n  \"slugger</w>\": 48671,\n  \"slum</w>\": 46754,\n  \"slumber</w>\": 44295,\n  \"slump</w>\": 35588,\n  \"slur\": 30476,\n  \"slush</w>\": 39815,\n  \"slv</w>\": 45526,\n  \"sly\": 28145,\n  \"sly</w>\": 21062,\n  \"sm\": 978,\n  \"sm</w>\": 2764,\n  \"sma\": 4357,\n  \"sma</w>\": 11854,\n  \"smack\": 21280,\n  \"smack</w>\": 30026,\n  \"smackdown</w>\": 26138,\n  \"smafia</w>\": 47686,\n  \"smag</w>\": 32212,\n  \"smal\": 48379,\n  \"small\": 5244,\n  \"small</w>\": 2442,\n  \"smallbiz\": 41724,\n  \"smallbiz</w>\": 18987,\n  \"smallbusiness</w>\": 21316,\n  \"smalle\": 18490,\n  \"smaller</w>\": 12431,\n  \"smallest</w>\": 18686,\n  \"smalls</w>\": 41696,\n  \"sman</w>\": 9612,\n  \"smar\": 3201,\n  \"smart\": 5383,\n  \"smart</w>\": 4115,\n  \"smartcities</w>\": 34822,\n  \"smartcity</w>\": 33973,\n  \"smarter</w>\": 18990,\n  \"smartest</w>\": 37092,\n  \"smarthome</w>\": 47726,\n  \"smartphone</w>\": 11290,\n  \"smartphones</w>\": 22212,\n  \"smartwatch</w>\": 35798,\n  \"smash\": 17258,\n  \"smash</w>\": 10332,\n  \"smashbros</w>\": 44897,\n  \"smashed</w>\": 18410,\n  \"smashes</w>\": 45657,\n  \"smashing</w>\": 19632,\n  \"smatter</w>\": 16537,\n  \"smb</w>\": 30446,\n  \"smc\": 31375,\n  \"smc</w>\": 28312,\n  \"smd</w>\": 34582,\n  \"sme\": 11758,\n  \"sme</w>\": 15650,\n  \"smear</w>\": 37546,\n  \"smel\": 28476,\n  \"smell</w>\": 9688,\n  \"smelling</w>\": 32493,\n  \"smells</w>\": 14668,\n  \"smelly</w>\": 46145,\n  \"smen</w>\": 15961,\n  \"smer\": 48526,\n  \"smere</w>\": 39629,\n  \"smes</w>\": 26141,\n  \"smg</w>\": 46876,\n  \"smh</w>\": 9623,\n  \"smi\": 5655,\n  \"smi</w>\": 40049,\n  \"smil\": 33937,\n  \"smile\": 27641,\n  \"smile</w>\": 3490,\n  \"smiled</w>\": 34362,\n  \"smiles</w>\": 8726,\n  \"smiley</w>\": 22925,\n  \"smiling</w>\": 9200,\n  \"smir\": 24667,\n  \"smith\": 10527,\n  \"smith</w>\": 2915,\n  \"smiths</w>\": 27872,\n  \"smithson\": 25372,\n  \"smithsonian</w>\": 31209,\n  \"smm</w>\": 19510,\n  \"smma</w>\": 42370,\n  \"smo\": 2513,\n  \"smo</w>\": 13437,\n  \"smobile</w>\": 38923,\n  \"smog</w>\": 44425,\n  \"smoke\": 20381,\n  \"smoke</w>\": 6664,\n  \"smoked</w>\": 11161,\n  \"smoker</w>\": 32348,\n  \"smokers</w>\": 29571,\n  \"smokes</w>\": 40336,\n  \"smokey</w>\": 23670,\n  \"smokin</w>\": 32825,\n  \"smoking</w>\": 9038,\n  \"smoky</w>\": 25549,\n  \"smol\": 29939,\n  \"smol</w>\": 40403,\n  \"smoo\": 5430,\n  \"smooth\": 10958,\n  \"smooth</w>\": 8990,\n  \"smoother</w>\": 44271,\n  \"smoothie</w>\": 16668,\n  \"smoothies</w>\": 34458,\n  \"smoothly</w>\": 32380,\n  \"smore</w>\": 48323,\n  \"smp</w>\": 32260,\n  \"smriti\": 49227,\n  \"sms</w>\": 10409,\n  \"smt</w>\": 26672,\n  \"smtown</w>\": 26072,\n  \"smu\": 10878,\n  \"smu</w>\": 30458,\n  \"smug</w>\": 41021,\n  \"smugg\": 28130,\n  \"smuggling</w>\": 34146,\n  \"smur\": 24708,\n  \"smusic</w>\": 19191,\n  \"smw</w>\": 44929,\n  \"smx</w>\": 46699,\n  \"smy\": 14381,\n  \"smyth</w>\": 44822,\n  \"sn\": 1672,\n  \"sn</w>\": 5844,\n  \"sna\": 4032,\n  \"snack\": 47548,\n  \"snack</w>\": 10039,\n  \"snacking</w>\": 46474,\n  \"snacks</w>\": 12349,\n  \"snag\": 34789,\n  \"snag</w>\": 28043,\n  \"snagged</w>\": 48534,\n  \"snail</w>\": 23132,\n  \"snails</w>\": 34928,\n  \"snake\": 30133,\n  \"snake</w>\": 8798,\n  \"snakes</w>\": 19605,\n  \"snap\": 4578,\n  \"snap</w>\": 7404,\n  \"snapback</w>\": 31234,\n  \"snapchat</w>\": 7799,\n  \"snapmatic</w>\": 45907,\n  \"snapp\": 10185,\n  \"snapped</w>\": 15543,\n  \"snapper</w>\": 31677,\n  \"snapping</w>\": 31581,\n  \"snaps</w>\": 16890,\n  \"snapshot</w>\": 18243,\n  \"snar\": 30810,\n  \"snare</w>\": 40651,\n  \"snat\": 18457,\n  \"snatch</w>\": 35302,\n  \"snatched</w>\": 44821,\n  \"snation</w>\": 14362,\n  \"snazzy</w>\": 48963,\n  \"snc</w>\": 39918,\n  \"sne\": 3791,\n  \"sne</w>\": 46503,\n  \"sneak\": 27871,\n  \"sneak</w>\": 6917,\n  \"sneaker\": 31698,\n  \"sneaker</w>\": 24781,\n  \"sneakers</w>\": 17397,\n  \"sneaking</w>\": 34633,\n  \"sneakpeek</w>\": 47831,\n  \"sneaks</w>\": 40926,\n  \"sneaky</w>\": 21293,\n  \"snee\": 42095,\n  \"snell</w>\": 46410,\n  \"sner</w>\": 31424,\n  \"snes</w>\": 26667,\n  \"snews</w>\": 18623,\n  \"snf</w>\": 47651,\n  \"sng</w>\": 41549,\n  \"snhl</w>\": 43093,\n  \"sni\": 7186,\n  \"sni</w>\": 35570,\n  \"snickers</w>\": 49127,\n  \"sniff</w>\": 37841,\n  \"snip</w>\": 42954,\n  \"sniper</w>\": 22157,\n  \"snippet</w>\": 37531,\n  \"snippets</w>\": 44001,\n  \"snl</w>\": 16011,\n  \"sno\": 8567,\n  \"sno</w>\": 17802,\n  \"snoo\": 11352,\n  \"snooker</w>\": 25657,\n  \"snoop\": 44503,\n  \"snoop</w>\": 27754,\n  \"snoopdogg</w>\": 48388,\n  \"snoopy</w>\": 41967,\n  \"snooze</w>\": 40718,\n  \"snor\": 16590,\n  \"snoring</w>\": 44560,\n  \"snorkel\": 44285,\n  \"snorkeling</w>\": 48103,\n  \"snow\": 3880,\n  \"snow</w>\": 2583,\n  \"snowball</w>\": 39254,\n  \"snowboard</w>\": 33403,\n  \"snowboarding</w>\": 32397,\n  \"snowday</w>\": 37982,\n  \"snowden</w>\": 32154,\n  \"snowdon</w>\": 47107,\n  \"snowdonia</w>\": 36088,\n  \"snowed</w>\": 45073,\n  \"snowfall</w>\": 21714,\n  \"snowflake</w>\": 33447,\n  \"snowflakes</w>\": 38618,\n  \"snowing</w>\": 21443,\n  \"snowman</w>\": 22668,\n  \"snowstorm</w>\": 38777,\n  \"snowy</w>\": 14191,\n  \"snp</w>\": 15301,\n  \"sns</w>\": 36343,\n  \"snsd</w>\": 27961,\n  \"snt</w>\": 34834,\n  \"snu\": 9694,\n  \"snuck</w>\": 36522,\n  \"snug</w>\": 45169,\n  \"snuggle</w>\": 31327,\n  \"snuggles</w>\": 48165,\n  \"sny\": 17526,\n  \"snyder</w>\": 22106,\n  \"snz</w>\": 37678,\n  \"so\": 759,\n  \"so</w>\": 706,\n  \"soa</w>\": 39584,\n  \"soak</w>\": 24839,\n  \"soaked</w>\": 26592,\n  \"soaking</w>\": 26750,\n  \"soap\": 26086,\n  \"soap</w>\": 11088,\n  \"soaps</w>\": 40958,\n  \"soar\": 48997,\n  \"soar</w>\": 22241,\n  \"soaring</w>\": 27968,\n  \"soars</w>\": 41348,\n  \"sob\": 24900,\n  \"sob</w>\": 35507,\n  \"sobbing</w>\": 36691,\n  \"sober\": 30969,\n  \"sober</w>\": 24487,\n  \"sobre</w>\": 42768,\n  \"sobri\": 49308,\n  \"sobs</w>\": 43636,\n  \"soc\": 3253,\n  \"soc</w>\": 7741,\n  \"soca</w>\": 49239,\n  \"socal\": 46470,\n  \"socal</w>\": 20450,\n  \"soccer\": 16268,\n  \"soccer</w>\": 4233,\n  \"socceroos</w>\": 41997,\n  \"socent</w>\": 30831,\n  \"sochi</w>\": 21014,\n  \"soci\": 1720,\n  \"social\": 4803,\n  \"social</w>\": 2346,\n  \"socialism</w>\": 23372,\n  \"socialist</w>\": 18450,\n  \"socialists</w>\": 43839,\n  \"socially</w>\": 24555,\n  \"socialmedi\": 23813,\n  \"socialmedia</w>\": 9600,\n  \"socialmediamarketing</w>\": 31790,\n  \"societal</w>\": 40058,\n  \"societies</w>\": 25855,\n  \"society</w>\": 3757,\n  \"socio\": 44319,\n  \"socio</w>\": 42790,\n  \"sociology</w>\": 32373,\n  \"sock\": 29801,\n  \"sock</w>\": 18277,\n  \"socket</w>\": 28657,\n  \"socks</w>\": 8774,\n  \"socorro</w>\": 46409,\n  \"socute</w>\": 45086,\n  \"sod</w>\": 31435,\n  \"soda</w>\": 13533,\n  \"sodium</w>\": 29070,\n  \"soe\": 44136,\n  \"soe</w>\": 25498,\n  \"soever</w>\": 34024,\n  \"sof\": 1571,\n  \"sof</w>\": 41187,\n  \"sofa</w>\": 15723,\n  \"soff\": 35290,\n  \"soff</w>\": 30684,\n  \"sofficial</w>\": 20563,\n  \"sofi\": 41537,\n  \"sofia</w>\": 18914,\n  \"sofinstagram</w>\": 17301,\n  \"soft\": 12778,\n  \"soft</w>\": 3773,\n  \"softball</w>\": 8369,\n  \"softer</w>\": 44462,\n  \"softhe\": 23127,\n  \"softly</w>\": 34958,\n  \"software\": 35941,\n  \"software</w>\": 5847,\n  \"softwitter</w>\": 11311,\n  \"sog</w>\": 44775,\n  \"soggy</w>\": 41168,\n  \"sohn</w>\": 49267,\n  \"soho\": 47749,\n  \"soho</w>\": 17592,\n  \"soi</w>\": 40495,\n  \"soil\": 33417,\n  \"soil</w>\": 9216,\n  \"soils</w>\": 34891,\n  \"soir</w>\": 43427,\n  \"sok</w>\": 43456,\n  \"sol\": 1175,\n  \"sol</w>\": 9941,\n  \"sola</w>\": 40086,\n  \"solace</w>\": 42567,\n  \"solar\": 16990,\n  \"solar</w>\": 5199,\n  \"solareclipse</w>\": 44727,\n  \"sold\": 33116,\n  \"sold</w>\": 3939,\n  \"soldi\": 5098,\n  \"soldier</w>\": 9355,\n  \"soldiers</w>\": 7547,\n  \"sole\": 10519,\n  \"sole</w>\": 8576,\n  \"soleil</w>\": 33148,\n  \"solely</w>\": 27913,\n  \"solent</w>\": 47783,\n  \"soles</w>\": 22682,\n  \"soli\": 3911,\n  \"solic\": 19369,\n  \"solicitor</w>\": 45647,\n  \"solicitors</w>\": 46000,\n  \"solid\": 30626,\n  \"solid</w>\": 6148,\n  \"solidar\": 10415,\n  \"solidarity</w>\": 10983,\n  \"solidi\": 46136,\n  \"solids</w>\": 49070,\n  \"solihull</w>\": 45293,\n  \"solit\": 37039,\n  \"solitaire</w>\": 47257,\n  \"solitary</w>\": 33094,\n  \"solitude</w>\": 33199,\n  \"solo\": 17626,\n  \"solo</w>\": 5797,\n  \"soloist</w>\": 46391,\n  \"solom\": 15768,\n  \"solomon</w>\": 19785,\n  \"solos</w>\": 44868,\n  \"solst\": 20298,\n  \"solstice</w>\": 21359,\n  \"solu\": 2487,\n  \"solution</w>\": 4575,\n  \"solutions</w>\": 5140,\n  \"solve</w>\": 8917,\n  \"solved</w>\": 13451,\n  \"solves</w>\": 42740,\n  \"solving</w>\": 15581,\n  \"som\": 734,\n  \"som</w>\": 10672,\n  \"soma</w>\": 36170,\n  \"somal\": 40281,\n  \"somali</w>\": 26231,\n  \"somalia</w>\": 17051,\n  \"somaliland</w>\": 43315,\n  \"some\": 1132,\n  \"some</w>\": 836,\n  \"somebody</w>\": 8305,\n  \"someday</w>\": 17127,\n  \"somehow</w>\": 11735,\n  \"someone</w>\": 2100,\n  \"somer\": 9656,\n  \"somerhalder</w>\": 33990,\n  \"somerset</w>\": 14926,\n  \"somerville</w>\": 41409,\n  \"somes</w>\": 38124,\n  \"somethin</w>\": 33541,\n  \"something\": 28316,\n  \"something</w>\": 2006,\n  \"sometime</w>\": 21464,\n  \"sometimes</w>\": 4237,\n  \"somewhat</w>\": 17864,\n  \"somewhere</w>\": 8119,\n  \"somm\": 42726,\n  \"somme</w>\": 30625,\n  \"sommer</w>\": 44954,\n  \"somos</w>\": 24951,\n  \"son\": 1176,\n  \"son</w>\": 825,\n  \"sona</w>\": 21249,\n  \"sonam\": 40096,\n  \"sonar</w>\": 48235,\n  \"sonata</w>\": 37009,\n  \"sone</w>\": 29599,\n  \"song\": 6868,\n  \"song</w>\": 2295,\n  \"songs</w>\": 4641,\n  \"songwriter</w>\": 13034,\n  \"songwriters</w>\": 39583,\n  \"songwriting</w>\": 33567,\n  \"songz</w>\": 49302,\n  \"soni\": 34899,\n  \"soni</w>\": 35911,\n  \"sonia</w>\": 20409,\n  \"sonic\": 23785,\n  \"sonic</w>\": 9132,\n  \"sonics</w>\": 48511,\n  \"sonja</w>\": 46102,\n  \"sonline</w>\": 23412,\n  \"sonny\": 43000,\n  \"sonny</w>\": 20880,\n  \"sono</w>\": 44109,\n  \"sonom\": 48596,\n  \"sonoma</w>\": 26269,\n  \"sons</w>\": 5502,\n  \"sonsof\": 46676,\n  \"sont</w>\": 31063,\n  \"sonthe\": 40923,\n  \"sony\": 16042,\n  \"sony</w>\": 8748,\n  \"sonya</w>\": 39172,\n  \"soo\": 5517,\n  \"soo</w>\": 8602,\n  \"soom\": 39771,\n  \"soon\": 27559,\n  \"soon</w>\": 1745,\n  \"sooner</w>\": 18968,\n  \"sooners</w>\": 30449,\n  \"sooo</w>\": 11526,\n  \"soooo</w>\": 13658,\n  \"sooooo</w>\": 21199,\n  \"soooooo</w>\": 34859,\n  \"soor\": 46698,\n  \"soothe</w>\": 44424,\n  \"soothing</w>\": 27730,\n  \"sop\": 3974,\n  \"sop</w>\": 19194,\n  \"soph</w>\": 34963,\n  \"sophi\": 6192,\n  \"sophia</w>\": 16790,\n  \"sophie\": 38648,\n  \"sophie</w>\": 12357,\n  \"sophistic\": 17646,\n  \"sophisticated</w>\": 20833,\n  \"sophom\": 13696,\n  \"sophomore</w>\": 15242,\n  \"sophomores</w>\": 47645,\n  \"soprano</w>\": 28880,\n  \"soproud</w>\": 44479,\n  \"sor\": 1852,\n  \"sor</w>\": 16872,\n  \"sora</w>\": 38719,\n  \"sorbet</w>\": 39994,\n  \"sore\": 43330,\n  \"sore</w>\": 15454,\n  \"sored</w>\": 6731,\n  \"soren\": 38907,\n  \"sorg</w>\": 28152,\n  \"sori\": 38588,\n  \"sorority</w>\": 30059,\n  \"soros</w>\": 33248,\n  \"sorren\": 44012,\n  \"sorrow</w>\": 28020,\n  \"sorrows</w>\": 47924,\n  \"sorry\": 25745,\n  \"sorry</w>\": 3675,\n  \"sorrynotsorry</w>\": 37105,\n  \"sort</w>\": 8450,\n  \"sorta</w>\": 34700,\n  \"sorted</w>\": 13221,\n  \"sorting</w>\": 19198,\n  \"sorts</w>\": 12577,\n  \"sory</w>\": 16257,\n  \"sos\": 25145,\n  \"sos</w>\": 5792,\n  \"sosa</w>\": 45433,\n  \"sosfam</w>\": 47709,\n  \"sot\": 41542,\n  \"sot</w>\": 34116,\n  \"sothe\": 32145,\n  \"sotho</w>\": 45496,\n  \"soto</w>\": 27947,\n  \"sotto</w>\": 26047,\n  \"sotu</w>\": 32286,\n  \"sou\": 1101,\n  \"sou</w>\": 24293,\n  \"sought</w>\": 18874,\n  \"soul\": 8701,\n  \"soul</w>\": 3755,\n  \"soulful</w>\": 30196,\n  \"soulmate</w>\": 38130,\n  \"souls</w>\": 10951,\n  \"soun\": 19474,\n  \"sound\": 5236,\n  \"sound</w>\": 3608,\n  \"soundcheck</w>\": 31394,\n  \"soundcloud</w>\": 15190,\n  \"sounded</w>\": 28287,\n  \"sounders</w>\": 44933,\n  \"sounding</w>\": 21351,\n  \"sounds</w>\": 5694,\n  \"soundtrack</w>\": 11389,\n  \"soup</w>\": 7077,\n  \"soups</w>\": 45052,\n  \"sour\": 2235,\n  \"sour</w>\": 12049,\n  \"source\": 23698,\n  \"source</w>\": 3634,\n  \"sourced</w>\": 23340,\n  \"sources</w>\": 5124,\n  \"sourcing</w>\": 19574,\n  \"sourdough</w>\": 29921,\n  \"souri</w>\": 11674,\n  \"sous</w>\": 32093,\n  \"sousa</w>\": 46296,\n  \"sout\": 38156,\n  \"sout</w>\": 32732,\n  \"south\": 2938,\n  \"south</w>\": 2045,\n  \"southafrica</w>\": 15184,\n  \"southampton</w>\": 15767,\n  \"southbank</w>\": 44173,\n  \"southbound</w>\": 22932,\n  \"southeast</w>\": 13942,\n  \"southeastern</w>\": 26813,\n  \"southend</w>\": 25583,\n  \"souther\": 33330,\n  \"southern\": 17704,\n  \"southern</w>\": 5036,\n  \"southgate</w>\": 47262,\n  \"southkorea</w>\": 43552,\n  \"southport</w>\": 37446,\n  \"southside</w>\": 36436,\n  \"southsudan</w>\": 30419,\n  \"southwark</w>\": 39098,\n  \"southwe\": 46443,\n  \"southwest</w>\": 13320,\n  \"southwestern</w>\": 30157,\n  \"souven\": 20210,\n  \"souvenir</w>\": 24811,\n  \"souvenirs</w>\": 48460,\n  \"souza</w>\": 29424,\n  \"sov</w>\": 29737,\n  \"sover</w>\": 31876,\n  \"sovere\": 17736,\n  \"sovereign\": 29418,\n  \"sovereign</w>\": 26337,\n  \"sovereignty</w>\": 31701,\n  \"soviet</w>\": 14274,\n  \"sow</w>\": 33089,\n  \"sowe\": 36130,\n  \"soweto</w>\": 47070,\n  \"sown</w>\": 49369,\n  \"sox\": 39556,\n  \"sox</w>\": 8657,\n  \"soy\": 16524,\n  \"soy</w>\": 15010,\n  \"soybean</w>\": 34606,\n  \"soybeans</w>\": 40840,\n  \"soyu\": 39578,\n  \"soyuz</w>\": 43842,\n  \"sp\": 588,\n  \"sp</w>\": 4393,\n  \"spa\": 7852,\n  \"spa</w>\": 6692,\n  \"spac\": 10336,\n  \"space\": 7857,\n  \"space</w>\": 2138,\n  \"spacecraft</w>\": 25940,\n  \"spaces</w>\": 9006,\n  \"spaceship</w>\": 34317,\n  \"spacex</w>\": 22511,\n  \"spacey</w>\": 48770,\n  \"spacious</w>\": 24769,\n  \"spad\": 45362,\n  \"spade</w>\": 32562,\n  \"spades</w>\": 48368,\n  \"spaghetti</w>\": 18440,\n  \"spain</w>\": 5083,\n  \"spal\": 26018,\n  \"spam\": 29712,\n  \"spam</w>\": 14624,\n  \"span\": 4270,\n  \"span</w>\": 14537,\n  \"spandex</w>\": 41686,\n  \"spani\": 16721,\n  \"spaniel</w>\": 35435,\n  \"spanish\": 29966,\n  \"spanish</w>\": 6013,\n  \"spann</w>\": 25323,\n  \"spanning</w>\": 38638,\n  \"spans</w>\": 45407,\n  \"spaper\": 34548,\n  \"spar\": 3378,\n  \"spar</w>\": 34576,\n  \"spare</w>\": 12615,\n  \"spares</w>\": 39505,\n  \"spark\": 9555,\n  \"spark</w>\": 11047,\n  \"sparked</w>\": 32647,\n  \"sparkle</w>\": 18287,\n  \"sparkles</w>\": 36410,\n  \"sparkling</w>\": 17893,\n  \"sparkly</w>\": 30542,\n  \"sparks</w>\": 15046,\n  \"sparky</w>\": 47198,\n  \"sparring</w>\": 42161,\n  \"sparrow</w>\": 22888,\n  \"spart\": 10143,\n  \"sparta</w>\": 38401,\n  \"spartan\": 26582,\n  \"spartan</w>\": 24225,\n  \"spartans</w>\": 20457,\n  \"sparty</w>\": 36477,\n  \"spas\": 31714,\n  \"spati\": 19200,\n  \"spatial</w>\": 22022,\n  \"spaw\": 31605,\n  \"spawn</w>\": 29166,\n  \"spay\": 40634,\n  \"spc</w>\": 20492,\n  \"spca</w>\": 37018,\n  \"spd\": 37717,\n  \"spd</w>\": 28307,\n  \"spdwy</w>\": 45981,\n  \"spe\": 876,\n  \"spe</w>\": 36676,\n  \"speak\": 20599,\n  \"speak</w>\": 4208,\n  \"speake\": 46077,\n  \"speaker\": 25764,\n  \"speaker</w>\": 4914,\n  \"speakers</w>\": 7675,\n  \"speaking</w>\": 3714,\n  \"speaks</w>\": 5661,\n  \"spear\": 23277,\n  \"spear</w>\": 30420,\n  \"speare</w>\": 43859,\n  \"spears</w>\": 20242,\n  \"spec\": 1711,\n  \"spec</w>\": 18596,\n  \"speci\": 1969,\n  \"special\": 11422,\n  \"special</w>\": 1689,\n  \"specialist</w>\": 10630,\n  \"specialists</w>\": 21719,\n  \"speciality</w>\": 46904,\n  \"specialized</w>\": 23265,\n  \"specializes</w>\": 48533,\n  \"specially</w>\": 4513,\n  \"specials</w>\": 11983,\n  \"specialty</w>\": 18262,\n  \"species</w>\": 6330,\n  \"specific</w>\": 10528,\n  \"specifically</w>\": 17174,\n  \"specification</w>\": 46394,\n  \"specifications</w>\": 39705,\n  \"specified</w>\": 48114,\n  \"specimen</w>\": 30263,\n  \"specimens</w>\": 42715,\n  \"specs</w>\": 24093,\n  \"spect</w>\": 3416,\n  \"spectac\": 7242,\n  \"spectacle</w>\": 34342,\n  \"spectacular</w>\": 8404,\n  \"spectator</w>\": 32372,\n  \"spectators</w>\": 39306,\n  \"spective</w>\": 6633,\n  \"spector</w>\": 48676,\n  \"spectral</w>\": 45441,\n  \"spectre</w>\": 35998,\n  \"spectro\": 27646,\n  \"spectrum</w>\": 13532,\n  \"specul\": 19209,\n  \"speculation</w>\": 30898,\n  \"sped</w>\": 38813,\n  \"spee\": 4050,\n  \"speech\": 19556,\n  \"speech</w>\": 4902,\n  \"speeches</w>\": 25208,\n  \"speechless</w>\": 23152,\n  \"speed\": 6860,\n  \"speed</w>\": 4163,\n  \"speeding</w>\": 27264,\n  \"speeds</w>\": 22017,\n  \"speedway</w>\": 11480,\n  \"speedy</w>\": 21603,\n  \"spel\": 41887,\n  \"spell\": 22784,\n  \"spell</w>\": 11230,\n  \"spelled</w>\": 24339,\n  \"spelling</w>\": 15614,\n  \"spells</w>\": 25335,\n  \"spelt</w>\": 38316,\n  \"spen\": 5087,\n  \"spence</w>\": 33324,\n  \"spencer\": 27509,\n  \"spencer</w>\": 10678,\n  \"spend</w>\": 4664,\n  \"spending</w>\": 5961,\n  \"spends</w>\": 22508,\n  \"spent</w>\": 4429,\n  \"speople</w>\": 33035,\n  \"sper\": 8213,\n  \"sper</w>\": 15313,\n  \"sperm</w>\": 35781,\n  \"sperson</w>\": 22687,\n  \"spf</w>\": 34973,\n  \"spg</w>\": 34623,\n  \"sph\": 28909,\n  \"sph</w>\": 24684,\n  \"sphe\": 33691,\n  \"spher\": 18349,\n  \"sphere</w>\": 6987,\n  \"spheres</w>\": 37478,\n  \"spheric</w>\": 21744,\n  \"sphin\": 39237,\n  \"sphinx</w>\": 46487,\n  \"spho\": 20442,\n  \"sphoto</w>\": 38594,\n  \"sphy\": 43808,\n  \"spi\": 3174,\n  \"spi</w>\": 37080,\n  \"spic\": 17264,\n  \"spice\": 29761,\n  \"spice</w>\": 10141,\n  \"spiced</w>\": 24267,\n  \"spicer</w>\": 37627,\n  \"spices</w>\": 21194,\n  \"spicy</w>\": 10915,\n  \"spide\": 36801,\n  \"spider\": 11963,\n  \"spider</w>\": 7622,\n  \"spiderman\": 39808,\n  \"spiderman</w>\": 18427,\n  \"spiders</w>\": 23141,\n  \"spidey</w>\": 41706,\n  \"spie\": 28573,\n  \"spie</w>\": 28746,\n  \"spied</w>\": 43998,\n  \"spiegel</w>\": 45351,\n  \"spiel\": 28435,\n  \"spiel</w>\": 37690,\n  \"spielberg</w>\": 37569,\n  \"spies</w>\": 25374,\n  \"spieth</w>\": 43254,\n  \"spike\": 35306,\n  \"spike</w>\": 15310,\n  \"spiked</w>\": 47014,\n  \"spikes</w>\": 29582,\n  \"spil\": 47765,\n  \"spill\": 43933,\n  \"spill</w>\": 18006,\n  \"spilled</w>\": 33206,\n  \"spilling</w>\": 49006,\n  \"spills</w>\": 35796,\n  \"spin\": 6288,\n  \"spin</w>\": 9226,\n  \"spinach</w>\": 14747,\n  \"spinal</w>\": 23925,\n  \"spine\": 48221,\n  \"spine</w>\": 19646,\n  \"sping</w>\": 47113,\n  \"spinner</w>\": 29924,\n  \"spinning</w>\": 13987,\n  \"spino\": 40848,\n  \"spinoff</w>\": 42513,\n  \"spinrilla</w>\": 46064,\n  \"spins</w>\": 27243,\n  \"spion\": 39604,\n  \"spionage</w>\": 41838,\n  \"spir\": 3745,\n  \"spiral</w>\": 19873,\n  \"spiration</w>\": 38126,\n  \"spire</w>\": 27439,\n  \"spired</w>\": 40650,\n  \"spires</w>\": 46938,\n  \"spiri\": 4024,\n  \"spirit\": 18224,\n  \"spirit</w>\": 4071,\n  \"spirited</w>\": 34701,\n  \"spirits</w>\": 13192,\n  \"spiritu\": 7237,\n  \"spiritual\": 46076,\n  \"spiritual</w>\": 9473,\n  \"spirituality</w>\": 22165,\n  \"spiro\": 40085,\n  \"spit\": 18115,\n  \"spit</w>\": 23177,\n  \"spite</w>\": 26060,\n  \"spitfire</w>\": 31126,\n  \"spitting</w>\": 40721,\n  \"spl\": 2470,\n  \"spl</w>\": 33052,\n  \"spla\": 4809,\n  \"splac\": 16059,\n  \"splace</w>\": 38743,\n  \"splash\": 43641,\n  \"splash</w>\": 11879,\n  \"splat\": 15733,\n  \"splatoon</w>\": 22565,\n  \"splay</w>\": 3169,\n  \"splen\": 18552,\n  \"splend\": 29861,\n  \"splendid</w>\": 21016,\n  \"splendor</w>\": 46262,\n  \"splin\": 38090,\n  \"split\": 25443,\n  \"split</w>\": 9109,\n  \"splits</w>\": 34897,\n  \"splitting</w>\": 37210,\n  \"splus</w>\": 40866,\n  \"spn\": 35467,\n  \"spn</w>\": 19414,\n  \"spnfamily</w>\": 38566,\n  \"spo\": 1261,\n  \"spo</w>\": 21085,\n  \"spock</w>\": 43918,\n  \"spoil</w>\": 25600,\n  \"spoiled</w>\": 21399,\n  \"spoiler</w>\": 16512,\n  \"spoilers</w>\": 18326,\n  \"spoils</w>\": 42436,\n  \"spoilt</w>\": 35358,\n  \"spokane</w>\": 24528,\n  \"spoke\": 13890,\n  \"spoke</w>\": 6518,\n  \"spoken</w>\": 12979,\n  \"spokesman</w>\": 31632,\n  \"spokesperson</w>\": 26234,\n  \"spol\": 22476,\n  \"spol</w>\": 8132,\n  \"spoli</w>\": 34301,\n  \"spolice</w>\": 37406,\n  \"spon\": 1715,\n  \"spon</w>\": 48216,\n  \"sponge\": 22861,\n  \"sponge</w>\": 24345,\n  \"spongebob</w>\": 25089,\n  \"spons\": 5597,\n  \"sponsor\": 10424,\n  \"sponsor</w>\": 7574,\n  \"sponsored</w>\": 7197,\n  \"sponsoring</w>\": 16181,\n  \"sponsors</w>\": 11005,\n  \"sponsorship</w>\": 17632,\n  \"spontaneous</w>\": 32465,\n  \"spoo\": 11248,\n  \"spooky</w>\": 15369,\n  \"spool</w>\": 49152,\n  \"spoon\": 27001,\n  \"spoon</w>\": 14024,\n  \"spoons</w>\": 29661,\n  \"spor\": 1475,\n  \"spor</w>\": 33746,\n  \"sport\": 4379,\n  \"sport</w>\": 2364,\n  \"sporting\": 32620,\n  \"sporting</w>\": 8944,\n  \"sports\": 6436,\n  \"sports</w>\": 2054,\n  \"sportsc\": 40114,\n  \"sportscar</w>\": 46931,\n  \"sportscenter</w>\": 39157,\n  \"sportsman</w>\": 39020,\n  \"sportsmanship</w>\": 34858,\n  \"sportsnet</w>\": 34144,\n  \"sportswear</w>\": 39747,\n  \"sporty</w>\": 33346,\n  \"spot\": 3223,\n  \"spot</w>\": 3049,\n  \"spotify</w>\": 7193,\n  \"spotlight</w>\": 7901,\n  \"spots</w>\": 7670,\n  \"spotted</w>\": 4533,\n  \"spotter</w>\": 30742,\n  \"spotting</w>\": 15885,\n  \"spouse</w>\": 24724,\n  \"spout</w>\": 48993,\n  \"spp</w>\": 47567,\n  \"spr\": 1536,\n  \"spr</w>\": 19417,\n  \"spra\": 12966,\n  \"spraw\": 46590,\n  \"spray\": 37885,\n  \"spray</w>\": 10449,\n  \"sprayed</w>\": 40022,\n  \"spraying</w>\": 39224,\n  \"spre\": 18740,\n  \"spread\": 20620,\n  \"spread</w>\": 5284,\n  \"spreading</w>\": 11821,\n  \"spreads</w>\": 27579,\n  \"spree</w>\": 21851,\n  \"spri\": 35498,\n  \"spride</w>\": 26685,\n  \"spring\": 5166,\n  \"spring</w>\": 2420,\n  \"springbreak</w>\": 37753,\n  \"springer</w>\": 30117,\n  \"springfield</w>\": 16599,\n  \"springs</w>\": 7308,\n  \"springst</w>\": 32132,\n  \"springsteen</w>\": 28367,\n  \"springtime</w>\": 28285,\n  \"springtraining</w>\": 49364,\n  \"springwatch</w>\": 29239,\n  \"sprink\": 15817,\n  \"sprinkle</w>\": 42897,\n  \"sprinkler</w>\": 48754,\n  \"sprinkles</w>\": 37326,\n  \"sprint\": 29248,\n  \"sprint</w>\": 10751,\n  \"sprinter</w>\": 36947,\n  \"sprints</w>\": 36404,\n  \"sprite</w>\": 32544,\n  \"spro\": 13902,\n  \"spro</w>\": 37403,\n  \"sproject</w>\": 37802,\n  \"sproud</w>\": 37686,\n  \"sprout</w>\": 35863,\n  \"sprouts</w>\": 25756,\n  \"spru\": 17041,\n  \"spruce</w>\": 23812,\n  \"sprung</w>\": 32968,\n  \"sps</w>\": 13869,\n  \"spu\": 23566,\n  \"spun\": 47922,\n  \"spun</w>\": 32852,\n  \"spur\": 15206,\n  \"spur</w>\": 20361,\n  \"spurs</w>\": 10916,\n  \"spursofficial</w>\": 45290,\n  \"sput\": 47521,\n  \"spx</w>\": 20584,\n  \"spy\": 13861,\n  \"spy</w>\": 6656,\n  \"spyder</w>\": 39952,\n  \"spying</w>\": 36227,\n  \"sq\": 9370,\n  \"sq</w>\": 11590,\n  \"sqft</w>\": 41912,\n  \"sql\": 42759,\n  \"sql</w>\": 18938,\n  \"sqm</w>\": 47978,\n  \"sqn</w>\": 41209,\n  \"squ\": 1653,\n  \"squad\": 13892,\n  \"squad</w>\": 4234,\n  \"squadron</w>\": 18579,\n  \"squads</w>\": 36590,\n  \"square\": 19314,\n  \"square</w>\": 3999,\n  \"squared</w>\": 32967,\n  \"squares</w>\": 26972,\n  \"squash</w>\": 13312,\n  \"squat\": 44628,\n  \"squat</w>\": 30680,\n  \"squats</w>\": 40213,\n  \"sque\": 9721,\n  \"sque</w>\": 8097,\n  \"squee\": 14420,\n  \"squeeze</w>\": 21684,\n  \"squeezed</w>\": 40413,\n  \"squid\": 42057,\n  \"squid</w>\": 22553,\n  \"squir\": 9683,\n  \"squire</w>\": 48090,\n  \"squirrel</w>\": 14004,\n  \"squirrels</w>\": 26623,\n  \"squish\": 42607,\n  \"squishy</w>\": 47001,\n  \"sr\": 3437,\n  \"sr</w>\": 5428,\n  \"srbachchan</w>\": 32353,\n  \"src</w>\": 23445,\n  \"sre\": 17748,\n  \"sri\": 11051,\n  \"sri</w>\": 9276,\n  \"sridevi</w>\": 46301,\n  \"srilan\": 15559,\n  \"srilanka</w>\": 16922,\n  \"srin\": 26818,\n  \"srinagar</w>\": 33671,\n  \"srini\": 41899,\n  \"sriracha</w>\": 42743,\n  \"sris\": 27851,\n  \"srisri</w>\": 32966,\n  \"srk\": 44982,\n  \"srk</w>\": 11216,\n  \"srl</w>\": 33808,\n  \"srp</w>\": 43004,\n  \"srs</w>\": 41764,\n  \"srsly</w>\": 44179,\n  \"srt</w>\": 28139,\n  \"sru\": 44152,\n  \"srugby</w>\": 40526,\n  \"ss\": 690,\n  \"ss</w>\": 632,\n  \"ssa</w>\": 6088,\n  \"ssal\": 31330,\n  \"ssal</w>\": 35936,\n  \"ssb</w>\": 37511,\n  \"ssc\": 21692,\n  \"ssc</w>\": 20364,\n  \"ssd</w>\": 23107,\n  \"sse\": 9030,\n  \"sse</w>\": 8938,\n  \"ssed\": 38755,\n  \"ssed</w>\": 1804,\n  \"ssel\": 17402,\n  \"ssel</w>\": 19373,\n  \"sseldorf</w>\": 47792,\n  \"ssell</w>\": 42388,\n  \"ssels</w>\": 8355,\n  \"ssen\": 39408,\n  \"ssen</w>\": 22645,\n  \"sser</w>\": 20445,\n  \"sses</w>\": 1802,\n  \"ssett</w>\": 44103,\n  \"ssf</w>\": 33239,\n  \"ssg</w>\": 40707,\n  \"ssh</w>\": 48866,\n  \"ssi\": 834,\n  \"ssi</w>\": 14953,\n  \"ssia</w>\": 22238,\n  \"ssian</w>\": 31218,\n  \"ssible</w>\": 47099,\n  \"ssic\": 27774,\n  \"ssic</w>\": 17077,\n  \"ssie</w>\": 7572,\n  \"ssier</w>\": 26422,\n  \"ssil</w>\": 15026,\n  \"ssin</w>\": 42660,\n  \"ssing</w>\": 2112,\n  \"ssion\": 16050,\n  \"ssion</w>\": 1627,\n  \"ssional</w>\": 13727,\n  \"ssionism</w>\": 24787,\n  \"ssionist</w>\": 27682,\n  \"ssions</w>\": 4137,\n  \"ssive</w>\": 2734,\n  \"ssively</w>\": 28060,\n  \"ssl</w>\": 32195,\n  \"ssler</w>\": 30287,\n  \"ssly</w>\": 24904,\n  \"ssn</w>\": 39116,\n  \"ssnhq</w>\": 47998,\n  \"sso\": 25900,\n  \"sso</w>\": 7914,\n  \"ssoccer</w>\": 32546,\n  \"sson\": 36124,\n  \"sson</w>\": 7271,\n  \"ssor</w>\": 35152,\n  \"ssp</w>\": 31101,\n  \"ssr</w>\": 39880,\n  \"sss</w>\": 11176,\n  \"ssss\": 30676,\n  \"ssss</w>\": 15880,\n  \"sssss</w>\": 24298,\n  \"sst</w>\": 40396,\n  \"ssu</w>\": 35351,\n  \"ssummit</w>\": 49301,\n  \"ssus</w>\": 31286,\n  \"ssw</w>\": 36937,\n  \"ssy\": 22519,\n  \"ssy</w>\": 8661,\n  \"st\": 522,\n  \"st</w>\": 545,\n  \"sta\": 1363,\n  \"sta</w>\": 2745,\n  \"stab\": 7726,\n  \"stab</w>\": 29974,\n  \"stabbed</w>\": 24534,\n  \"stabbing</w>\": 25474,\n  \"stabil\": 42576,\n  \"stabili\": 23903,\n  \"stability</w>\": 16716,\n  \"stable\": 44427,\n  \"stable</w>\": 10492,\n  \"stables</w>\": 34218,\n  \"stac\": 10175,\n  \"stacey\": 41653,\n  \"stacey</w>\": 24262,\n  \"stache</w>\": 23616,\n  \"stack\": 24723,\n  \"stack</w>\": 11257,\n  \"stacked</w>\": 24990,\n  \"stacking</w>\": 39836,\n  \"stacks</w>\": 24734,\n  \"stacy</w>\": 26628,\n  \"stad\": 15832,\n  \"stad</w>\": 16485,\n  \"stade</w>\": 38198,\n  \"stadi\": 26587,\n  \"stadion</w>\": 48815,\n  \"stadium</w>\": 3390,\n  \"stadiums</w>\": 38852,\n  \"stadt</w>\": 22713,\n  \"staf\": 2367,\n  \"staff\": 31188,\n  \"staff</w>\": 2813,\n  \"staffer</w>\": 38494,\n  \"staffers</w>\": 44994,\n  \"staffing</w>\": 32932,\n  \"stafford</w>\": 25006,\n  \"staffordshire</w>\": 29198,\n  \"staffs</w>\": 36098,\n  \"stag\": 12088,\n  \"stag</w>\": 20277,\n  \"stage\": 23182,\n  \"stage</w>\": 2170,\n  \"staged</w>\": 19906,\n  \"stages</w>\": 12297,\n  \"staggering</w>\": 37315,\n  \"staging</w>\": 27026,\n  \"stagram</w>\": 19503,\n  \"stags</w>\": 45936,\n  \"stain\": 3933,\n  \"stain</w>\": 14603,\n  \"stained</w>\": 13751,\n  \"staining</w>\": 32523,\n  \"stainless</w>\": 12320,\n  \"stains</w>\": 32008,\n  \"stair\": 7240,\n  \"stair</w>\": 17662,\n  \"staircase</w>\": 22777,\n  \"stairs</w>\": 9577,\n  \"stairway</w>\": 45559,\n  \"stak\": 39144,\n  \"stake\": 15955,\n  \"stake</w>\": 7937,\n  \"stakeholder</w>\": 39122,\n  \"stakeholders</w>\": 22968,\n  \"stakes</w>\": 7519,\n  \"staking</w>\": 47082,\n  \"stal\": 3861,\n  \"stal</w>\": 5535,\n  \"stale</w>\": 42471,\n  \"stalert</w>\": 25450,\n  \"stalin</w>\": 28346,\n  \"stalk\": 40826,\n  \"stalk</w>\": 14878,\n  \"stalker</w>\": 26777,\n  \"stalking</w>\": 24721,\n  \"stalks</w>\": 45886,\n  \"stall\": 24636,\n  \"stall</w>\": 12058,\n  \"stalled</w>\": 40362,\n  \"stallion</w>\": 28273,\n  \"stallions</w>\": 44787,\n  \"stallone</w>\": 40969,\n  \"stalls</w>\": 25427,\n  \"stam\": 4663,\n  \"stamatic</w>\": 30904,\n  \"stamford</w>\": 27843,\n  \"stamina</w>\": 48753,\n  \"stamp\": 28694,\n  \"stamp</w>\": 12771,\n  \"stampcollecting</w>\": 42852,\n  \"stamped</w>\": 38356,\n  \"stampede</w>\": 25384,\n  \"stamps</w>\": 13827,\n  \"stan\": 2203,\n  \"stan</w>\": 2434,\n  \"stana</w>\": 33311,\n  \"stanbul</w>\": 11231,\n  \"stance\": 48900,\n  \"stance</w>\": 3542,\n  \"stances</w>\": 15054,\n  \"stand\": 1819,\n  \"stand</w>\": 2087,\n  \"standalone</w>\": 44887,\n  \"standard\": 35780,\n  \"standard</w>\": 5807,\n  \"standardi\": 30247,\n  \"standards</w>\": 9022,\n  \"standby</w>\": 36184,\n  \"standing\": 39934,\n  \"standing</w>\": 2862,\n  \"standings</w>\": 19835,\n  \"standoff</w>\": 31821,\n  \"standout</w>\": 23131,\n  \"standre\": 48309,\n  \"stands</w>\": 6446,\n  \"standup\": 35108,\n  \"standup</w>\": 24964,\n  \"standwith\": 19540,\n  \"stanford\": 36219,\n  \"stanford</w>\": 15087,\n  \"stang</w>\": 12536,\n  \"stani</w>\": 38228,\n  \"stanis\": 37711,\n  \"stanley\": 19048,\n  \"stanley</w>\": 10079,\n  \"stanleycup</w>\": 28662,\n  \"stans</w>\": 26564,\n  \"stant\": 41576,\n  \"stant</w>\": 4906,\n  \"stanton</w>\": 25400,\n  \"stap\": 10438,\n  \"staple</w>\": 22695,\n  \"staples</w>\": 23646,\n  \"stapleton</w>\": 45228,\n  \"star\": 993,\n  \"star</w>\": 1565,\n  \"starbuck\": 48519,\n  \"starbucks</w>\": 9499,\n  \"starch</w>\": 47837,\n  \"starcraft</w>\": 48871,\n  \"stardom</w>\": 44616,\n  \"stardust</w>\": 34337,\n  \"stare</w>\": 18094,\n  \"stared</w>\": 47772,\n  \"stares</w>\": 37916,\n  \"starfish</w>\": 44283,\n  \"stargate</w>\": 41099,\n  \"stargazing</w>\": 49328,\n  \"staring</w>\": 13800,\n  \"stark\": 40446,\n  \"stark</w>\": 15353,\n  \"starlight</w>\": 32197,\n  \"starling</w>\": 46205,\n  \"starmagic\": 48023,\n  \"starplus</w>\": 37815,\n  \"starr</w>\": 19186,\n  \"starred</w>\": 24180,\n  \"starrer</w>\": 41311,\n  \"starring</w>\": 6660,\n  \"starry</w>\": 30963,\n  \"stars</w>\": 2895,\n  \"starship</w>\": 37166,\n  \"start\": 17466,\n  \"start</w>\": 1572,\n  \"started</w>\": 2760,\n  \"starter</w>\": 7800,\n  \"starters</w>\": 22222,\n  \"starting</w>\": 2530,\n  \"startrek\": 30642,\n  \"startrek</w>\": 15349,\n  \"starts</w>\": 3105,\n  \"startu\": 6996,\n  \"startup\": 18049,\n  \"startup</w>\": 5882,\n  \"startups</w>\": 9056,\n  \"starve</w>\": 46957,\n  \"starving</w>\": 30473,\n  \"starwar\": 17287,\n  \"starwars\": 26239,\n  \"starwars</w>\": 7887,\n  \"starz</w>\": 25928,\n  \"stas</w>\": 19866,\n  \"stash</w>\": 27711,\n  \"stasy</w>\": 45942,\n  \"stat\": 3004,\n  \"stat</w>\": 15216,\n  \"state\": 3492,\n  \"state</w>\": 1295,\n  \"statec\": 33931,\n  \"stated</w>\": 19629,\n  \"statedept</w>\": 41458,\n  \"statefair</w>\": 40305,\n  \"statement</w>\": 5401,\n  \"statements</w>\": 19513,\n  \"staten</w>\": 38263,\n  \"stateof\": 35195,\n  \"states\": 22125,\n  \"states</w>\": 4218,\n  \"statesman</w>\": 35301,\n  \"stateu</w>\": 44248,\n  \"statewide</w>\": 29561,\n  \"stati\": 9622,\n  \"static</w>\": 16363,\n  \"stating</w>\": 35147,\n  \"station\": 13498,\n  \"station</w>\": 2631,\n  \"stationary</w>\": 29493,\n  \"stationed</w>\": 47618,\n  \"stationery</w>\": 33851,\n  \"stations</w>\": 10051,\n  \"statistical</w>\": 29349,\n  \"statistics</w>\": 14165,\n  \"stats</w>\": 7294,\n  \"statu\": 32481,\n  \"statue</w>\": 8222,\n  \"statues</w>\": 24363,\n  \"status</w>\": 6414,\n  \"stau\": 28550,\n  \"staur\": 3709,\n  \"stav\": 20285,\n  \"stax</w>\": 32235,\n  \"stay\": 4714,\n  \"stay</w>\": 2277,\n  \"stayed</w>\": 13805,\n  \"staying</w>\": 8993,\n  \"stays</w>\": 13311,\n  \"staytuned</w>\": 39285,\n  \"stc</w>\": 29859,\n  \"std</w>\": 30477,\n  \"ste\": 795,\n  \"ste</w>\": 2686,\n  \"stea</w>\": 46614,\n  \"stead\": 16101,\n  \"stead</w>\": 11031,\n  \"steadily</w>\": 35049,\n  \"steady</w>\": 12937,\n  \"steak\": 26955,\n  \"steak</w>\": 8913,\n  \"steakhouse</w>\": 35031,\n  \"steaks</w>\": 30655,\n  \"steal\": 37070,\n  \"steal</w>\": 10181,\n  \"stealing</w>\": 14242,\n  \"steals</w>\": 20224,\n  \"stealth</w>\": 25327,\n  \"steam\": 10962,\n  \"steam</w>\": 6972,\n  \"steamboat</w>\": 41121,\n  \"steamed</w>\": 29007,\n  \"steamer</w>\": 49075,\n  \"steaming</w>\": 43746,\n  \"steampunk</w>\": 24130,\n  \"steamy</w>\": 43104,\n  \"stec</w>\": 46713,\n  \"stech\": 48949,\n  \"stech</w>\": 32455,\n  \"sted\": 20426,\n  \"sted</w>\": 1356,\n  \"stee\": 31793,\n  \"steed</w>\": 48293,\n  \"steel\": 6938,\n  \"steel</w>\": 4726,\n  \"steele</w>\": 19460,\n  \"steelers</w>\": 14430,\n  \"steen\": 42851,\n  \"steen</w>\": 18625,\n  \"steep\": 28648,\n  \"steep</w>\": 20714,\n  \"steer</w>\": 27612,\n  \"steering</w>\": 19833,\n  \"stef\": 29158,\n  \"stefan\": 15004,\n  \"stefan</w>\": 18829,\n  \"stefani</w>\": 38319,\n  \"stefano</w>\": 30719,\n  \"steff\": 30075,\n  \"stein\": 13653,\n  \"stein</w>\": 5818,\n  \"steiner</w>\": 36314,\n  \"stel\": 9102,\n  \"stel</w>\": 10798,\n  \"stell\": 22355,\n  \"stella\": 46178,\n  \"stella</w>\": 17869,\n  \"stellar</w>\": 13810,\n  \"stellen\": 42754,\n  \"stem\": 24342,\n  \"stem</w>\": 6761,\n  \"stemc\": 40486,\n  \"stems</w>\": 31503,\n  \"sten\": 7652,\n  \"sten</w>\": 7877,\n  \"stencil</w>\": 47854,\n  \"stennis</w>\": 45636,\n  \"step\": 15572,\n  \"step</w>\": 3348,\n  \"steph\": 3522,\n  \"steph</w>\": 16251,\n  \"stephan</w>\": 37312,\n  \"stephani\": 48121,\n  \"stephanie</w>\": 14361,\n  \"stephen\": 10421,\n  \"stephen</w>\": 6078,\n  \"stephenking</w>\": 46361,\n  \"stephens</w>\": 22256,\n  \"stephenson</w>\": 37280,\n  \"stepped</w>\": 18384,\n  \"stepping</w>\": 15906,\n  \"steps</w>\": 5408,\n  \"ster\": 1022,\n  \"ster</w>\": 881,\n  \"stere\": 9229,\n  \"stered</w>\": 6935,\n  \"stereo\": 15992,\n  \"stereo</w>\": 17400,\n  \"stereotypes</w>\": 27890,\n  \"steria</w>\": 38804,\n  \"stering</w>\": 14175,\n  \"sterling\": 45790,\n  \"sterling</w>\": 9378,\n  \"stern\": 36254,\n  \"stern</w>\": 2945,\n  \"steroids</w>\": 37670,\n  \"sterone</w>\": 39418,\n  \"sters</w>\": 2132,\n  \"stery</w>\": 24232,\n  \"stest</w>\": 8556,\n  \"stev\": 11640,\n  \"steve\": 7412,\n  \"steve</w>\": 3803,\n  \"steven\": 10973,\n  \"steven</w>\": 8016,\n  \"stevens</w>\": 13877,\n  \"stevenson</w>\": 25091,\n  \"stevie\": 42104,\n  \"stevie</w>\": 18969,\n  \"stew</w>\": 17906,\n  \"stewar\": 28453,\n  \"steward\": 34980,\n  \"steward</w>\": 43355,\n  \"stewards</w>\": 49294,\n  \"stewardship</w>\": 36720,\n  \"stewart</w>\": 8120,\n  \"stfu</w>\": 47000,\n  \"stg</w>\": 48387,\n  \"stgeorge\": 43698,\n  \"sth\": 13456,\n  \"sth</w>\": 34004,\n  \"sthe\": 16491,\n  \"sthel\": 42863,\n  \"sti\": 860,\n  \"sti</w>\": 12439,\n  \"stia</w>\": 26492,\n  \"stible</w>\": 25835,\n  \"stic\": 5868,\n  \"stic</w>\": 1561,\n  \"stical</w>\": 16660,\n  \"stically</w>\": 19041,\n  \"stick\": 5483,\n  \"stick</w>\": 4987,\n  \"sticker</w>\": 11270,\n  \"stickers</w>\": 11613,\n  \"sticking</w>\": 21021,\n  \"sticks</w>\": 10016,\n  \"sticky</w>\": 18887,\n  \"stics</w>\": 5449,\n  \"stie\": 38164,\n  \"stie</w>\": 11000,\n  \"stier</w>\": 42069,\n  \"sties</w>\": 16428,\n  \"stiff\": 43471,\n  \"stiff</w>\": 21441,\n  \"stig\": 4088,\n  \"stig</w>\": 42551,\n  \"stigate</w>\": 15390,\n  \"stigma</w>\": 20619,\n  \"stik</w>\": 42247,\n  \"stil\": 21790,\n  \"stil</w>\": 37519,\n  \"stiles</w>\": 33028,\n  \"still\": 13209,\n  \"still</w>\": 1170,\n  \"stills</w>\": 20259,\n  \"stim\": 18269,\n  \"stime</w>\": 24711,\n  \"stimul\": 16434,\n  \"stimulate</w>\": 42380,\n  \"stimulating</w>\": 41237,\n  \"stimulation</w>\": 39530,\n  \"stimulus</w>\": 47283,\n  \"stin\": 2588,\n  \"stin</w>\": 4025,\n  \"stina</w>\": 22359,\n  \"stine</w>\": 7098,\n  \"sting\": 19868,\n  \"sting</w>\": 1271,\n  \"stingly</w>\": 49332,\n  \"stingray</w>\": 43229,\n  \"stink</w>\": 38213,\n  \"stinky</w>\": 44957,\n  \"stino</w>\": 40658,\n  \"stint</w>\": 33531,\n  \"stion</w>\": 10812,\n  \"stip\": 39869,\n  \"stips</w>\": 44756,\n  \"stique</w>\": 43305,\n  \"stir\": 12416,\n  \"stir</w>\": 19564,\n  \"stirling</w>\": 23128,\n  \"stirring</w>\": 39205,\n  \"stis</w>\": 45224,\n  \"stit\": 14110,\n  \"stitch\": 30003,\n  \"stitch</w>\": 14771,\n  \"stitched</w>\": 36540,\n  \"stitcher</w>\": 48204,\n  \"stitches</w>\": 32360,\n  \"stitching</w>\": 45208,\n  \"stitu\": 14585,\n  \"stitutes</w>\": 40479,\n  \"stive</w>\": 22426,\n  \"stix</w>\": 48829,\n  \"stjohn\": 36153,\n  \"stl\": 14179,\n  \"stl</w>\": 12527,\n  \"stlblues</w>\": 44138,\n  \"stlcards</w>\": 28644,\n  \"stle</w>\": 7698,\n  \"stles</w>\": 48638,\n  \"stlouis\": 40358,\n  \"stlouis</w>\": 39516,\n  \"stm</w>\": 28333,\n  \"stn</w>\": 27175,\n  \"sto\": 928,\n  \"sto</w>\": 5723,\n  \"stock\": 5899,\n  \"stock</w>\": 3206,\n  \"stocked</w>\": 23552,\n  \"stockholm</w>\": 16024,\n  \"stocki\": 42944,\n  \"stocking</w>\": 17335,\n  \"stockings</w>\": 28040,\n  \"stockmarket</w>\": 40359,\n  \"stockport</w>\": 35569,\n  \"stocks</w>\": 9321,\n  \"stockton</w>\": 26130,\n  \"stoday</w>\": 22392,\n  \"stok</w>\": 43782,\n  \"stoke\": 31338,\n  \"stoke</w>\": 13550,\n  \"stoked</w>\": 13160,\n  \"stokes</w>\": 27512,\n  \"stol\": 11401,\n  \"stol</w>\": 6700,\n  \"stole</w>\": 10995,\n  \"stolen</w>\": 8704,\n  \"stolic</w>\": 45020,\n  \"stom\": 2343,\n  \"stom</w>\": 38068,\n  \"stoma</w>\": 43545,\n  \"stomach</w>\": 14722,\n  \"stomp</w>\": 40165,\n  \"stomping</w>\": 46144,\n  \"ston\": 4101,\n  \"ston</w>\": 1839,\n  \"stone\": 7694,\n  \"stone</w>\": 2441,\n  \"stoned</w>\": 36248,\n  \"stonehenge</w>\": 42417,\n  \"stoner\": 35131,\n  \"stoner</w>\": 29115,\n  \"stones\": 42659,\n  \"stones</w>\": 6885,\n  \"stonewall</w>\": 39688,\n  \"stoney</w>\": 44198,\n  \"stony\": 41717,\n  \"stony</w>\": 35691,\n  \"stoo\": 24505,\n  \"stood</w>\": 9151,\n  \"stool\": 34413,\n  \"stool</w>\": 22314,\n  \"stop\": 6005,\n  \"stop</w>\": 1691,\n  \"stopbrexit</w>\": 48680,\n  \"stopp\": 15738,\n  \"stopped</w>\": 6015,\n  \"stopper</w>\": 32147,\n  \"stoppers</w>\": 34457,\n  \"stopping</w>\": 10735,\n  \"stops</w>\": 9822,\n  \"stopthe\": 26463,\n  \"stor\": 809,\n  \"stor</w>\": 17740,\n  \"storage</w>\": 6824,\n  \"store\": 17769,\n  \"store</w>\": 2183,\n  \"stored</w>\": 28257,\n  \"stores</w>\": 6370,\n  \"storey</w>\": 24025,\n  \"storians</w>\": 34628,\n  \"stories</w>\": 3784,\n  \"storing</w>\": 40087,\n  \"stork</w>\": 46452,\n  \"storm\": 7434,\n  \"storm</w>\": 2819,\n  \"stormed</w>\": 45939,\n  \"stormhour</w>\": 12161,\n  \"storming</w>\": 24842,\n  \"storms</w>\": 6464,\n  \"stormtrooper</w>\": 49218,\n  \"stormy</w>\": 20075,\n  \"stors</w>\": 7178,\n  \"story\": 6512,\n  \"story</w>\": 1134,\n  \"storyline</w>\": 37079,\n  \"storymonth</w>\": 23717,\n  \"storyteller</w>\": 35882,\n  \"storytelling</w>\": 14457,\n  \"storytime</w>\": 44197,\n  \"stos</w>\": 19281,\n  \"stou\": 37168,\n  \"stour\": 37361,\n  \"stour</w>\": 21928,\n  \"stout</w>\": 16550,\n  \"stove</w>\": 21423,\n  \"stow\": 44284,\n  \"stow</w>\": 17046,\n  \"stowe</w>\": 34196,\n  \"stown\": 28071,\n  \"stown</w>\": 7939,\n  \"stp</w>\": 30576,\n  \"stpatrick\": 21343,\n  \"stpatricksday</w>\": 22747,\n  \"str\": 807,\n  \"str</w>\": 15913,\n  \"stra\": 1894,\n  \"stra</w>\": 6253,\n  \"strack</w>\": 46861,\n  \"strada</w>\": 31134,\n  \"strade</w>\": 48968,\n  \"straigh\": 31016,\n  \"straight\": 22114,\n  \"straight</w>\": 4241,\n  \"strain</w>\": 16887,\n  \"strains</w>\": 38067,\n  \"strait</w>\": 22946,\n  \"straits</w>\": 41984,\n  \"stral</w>\": 23289,\n  \"stralia</w>\": 42510,\n  \"stran\": 18411,\n  \"strand\": 18214,\n  \"strand</w>\": 17826,\n  \"stranded</w>\": 22975,\n  \"strang\": 11138,\n  \"strange\": 33380,\n  \"strange</w>\": 7288,\n  \"strangely</w>\": 37566,\n  \"stranger\": 35541,\n  \"stranger</w>\": 14149,\n  \"strangers</w>\": 20684,\n  \"strangerthings</w>\": 43271,\n  \"strangest</w>\": 46740,\n  \"strap</w>\": 13946,\n  \"strapped</w>\": 40922,\n  \"straps</w>\": 31213,\n  \"stras\": 36814,\n  \"stras</w>\": 42125,\n  \"strasbourg</w>\": 39576,\n  \"strat\": 11345,\n  \"strat</w>\": 32925,\n  \"strata</w>\": 47278,\n  \"strate\": 3532,\n  \"strate</w>\": 28758,\n  \"strategi\": 49102,\n  \"strategic</w>\": 10246,\n  \"strategically</w>\": 45706,\n  \"strategies</w>\": 9942,\n  \"strategist</w>\": 37180,\n  \"strategy</w>\": 5637,\n  \"strates</w>\": 45724,\n  \"stratford</w>\": 23955,\n  \"strath\": 21997,\n  \"stration</w>\": 3156,\n  \"strato\": 28878,\n  \"strauss</w>\": 32033,\n  \"strava</w>\": 34625,\n  \"stravel</w>\": 43494,\n  \"straw\": 7430,\n  \"straw</w>\": 16438,\n  \"strawberries</w>\": 17796,\n  \"strawberry</w>\": 10233,\n  \"straws</w>\": 33048,\n  \"stray\": 30784,\n  \"stray</w>\": 15712,\n  \"stre\": 1079,\n  \"stre</w>\": 19652,\n  \"stread</w>\": 27797,\n  \"streak</w>\": 11749,\n  \"streaks</w>\": 42092,\n  \"stream\": 8659,\n  \"stream</w>\": 3322,\n  \"streamed</w>\": 26280,\n  \"streamer</w>\": 25178,\n  \"streamers</w>\": 19937,\n  \"streaming</w>\": 6278,\n  \"streamline</w>\": 44917,\n  \"streams</w>\": 13545,\n  \"stree\": 35082,\n  \"stree</w>\": 32438,\n  \"streep</w>\": 38701,\n  \"street\": 4839,\n  \"street</w>\": 2012,\n  \"streetart</w>\": 12948,\n  \"streetcar</w>\": 34268,\n  \"streetfood</w>\": 44486,\n  \"streetphotography</w>\": 20786,\n  \"streets</w>\": 6058,\n  \"streetstyle</w>\": 39118,\n  \"streetwear</w>\": 37298,\n  \"strel</w>\": 39685,\n  \"stren\": 4349,\n  \"streng\": 4472,\n  \"strength\": 15475,\n  \"strength</w>\": 5959,\n  \"strengthen</w>\": 16318,\n  \"strengthened</w>\": 47131,\n  \"strengthening</w>\": 23475,\n  \"strengthens</w>\": 40280,\n  \"strengths</w>\": 29268,\n  \"stress\": 17297,\n  \"stress</w>\": 5843,\n  \"stressed</w>\": 16497,\n  \"stresses</w>\": 32112,\n  \"stressful</w>\": 24268,\n  \"stressing</w>\": 35917,\n  \"stret\": 12265,\n  \"stretch</w>\": 10064,\n  \"stretched</w>\": 29393,\n  \"stretches</w>\": 32231,\n  \"stretching</w>\": 24423,\n  \"stri\": 1493,\n  \"stri</w>\": 27795,\n  \"stria</w>\": 39620,\n  \"strial</w>\": 30217,\n  \"strian</w>\": 12924,\n  \"stric\": 2607,\n  \"strick\": 25181,\n  \"strickland</w>\": 48939,\n  \"strict</w>\": 21585,\n  \"strictly</w>\": 16475,\n  \"stride</w>\": 36024,\n  \"strides</w>\": 37355,\n  \"stries</w>\": 18171,\n  \"strife</w>\": 46473,\n  \"strike\": 20774,\n  \"strike</w>\": 5767,\n  \"striker</w>\": 12448,\n  \"strikers</w>\": 33465,\n  \"strikes</w>\": 9280,\n  \"striking</w>\": 13392,\n  \"string\": 25512,\n  \"string</w>\": 9696,\n  \"strings</w>\": 15699,\n  \"strip</w>\": 9317,\n  \"stripe</w>\": 19368,\n  \"striped</w>\": 22192,\n  \"stripes</w>\": 14239,\n  \"stripped</w>\": 26602,\n  \"stripper</w>\": 45759,\n  \"stripping</w>\": 48588,\n  \"strips</w>\": 19000,\n  \"strive</w>\": 22140,\n  \"striving</w>\": 37671,\n  \"stro\": 3121,\n  \"stro</w>\": 6186,\n  \"stroke\": 44621,\n  \"stroke</w>\": 10403,\n  \"strokes</w>\": 26595,\n  \"strol\": 30123,\n  \"stroll</w>\": 15924,\n  \"stroller</w>\": 47076,\n  \"strolling</w>\": 40911,\n  \"strom</w>\": 14707,\n  \"stron\": 4165,\n  \"strong\": 10436,\n  \"strong</w>\": 2389,\n  \"stronger\": 27760,\n  \"stronger</w>\": 9245,\n  \"strongertogether</w>\": 38532,\n  \"strongest</w>\": 16171,\n  \"strongh\": 38678,\n  \"strongly</w>\": 15507,\n  \"strophy</w>\": 47912,\n  \"strou\": 48425,\n  \"stroud</w>\": 39895,\n  \"strous</w>\": 23752,\n  \"stru\": 1666,\n  \"struc\": 3311,\n  \"struck</w>\": 10861,\n  \"struction</w>\": 12497,\n  \"structural</w>\": 16899,\n  \"structure</w>\": 5285,\n  \"structured</w>\": 27147,\n  \"structures</w>\": 14171,\n  \"structuring</w>\": 37496,\n  \"strugg\": 5176,\n  \"struggle</w>\": 8443,\n  \"struggled</w>\": 32921,\n  \"struggles</w>\": 17446,\n  \"struggling</w>\": 12135,\n  \"struly\": 34118,\n  \"strum</w>\": 37632,\n  \"strung</w>\": 46033,\n  \"strust</w>\": 23920,\n  \"strut</w>\": 48375,\n  \"stry\": 17325,\n  \"stry</w>\": 2245,\n  \"sts</w>\": 1088,\n  \"stu\": 858,\n  \"stu</w>\": 23531,\n  \"stuart\": 32054,\n  \"stuart</w>\": 11723,\n  \"stub\": 27066,\n  \"stubborn</w>\": 38955,\n  \"stuck</w>\": 6596,\n  \"stud\": 22368,\n  \"stud</w>\": 13319,\n  \"studded</w>\": 29153,\n  \"studen\": 44156,\n  \"student\": 14681,\n  \"student</w>\": 2556,\n  \"students</w>\": 1712,\n  \"studi\": 5691,\n  \"studied</w>\": 21369,\n  \"studies</w>\": 6426,\n  \"studio\": 17798,\n  \"studio</w>\": 3155,\n  \"studios</w>\": 6231,\n  \"studs</w>\": 27571,\n  \"study\": 21051,\n  \"study</w>\": 3123,\n  \"studyabroad</w>\": 45425,\n  \"studying</w>\": 8826,\n  \"stuff\": 46072,\n  \"stuff</w>\": 3487,\n  \"stuffed</w>\": 11781,\n  \"stuffing</w>\": 31612,\n  \"stuffs</w>\": 43455,\n  \"stuk</w>\": 32424,\n  \"stumb\": 16784,\n  \"stumble</w>\": 39045,\n  \"stumbled</w>\": 21776,\n  \"stump</w>\": 32064,\n  \"stun\": 3088,\n  \"stun</w>\": 37959,\n  \"stunned</w>\": 34034,\n  \"stunner</w>\": 29965,\n  \"stunning</w>\": 3769,\n  \"stunningly</w>\": 47515,\n  \"stuns</w>\": 43796,\n  \"stunt</w>\": 19905,\n  \"stunts</w>\": 40118,\n  \"stupi\": 18975,\n  \"stupid\": 42600,\n  \"stupid</w>\": 8085,\n  \"stupidity</w>\": 33766,\n  \"stur\": 10676,\n  \"sturdy</w>\": 43780,\n  \"stures</w>\": 27223,\n  \"sturgeon</w>\": 31580,\n  \"sturi\": 21747,\n  \"sturridge</w>\": 45331,\n  \"stutt\": 30444,\n  \"stuttgart</w>\": 32219,\n  \"stv\": 27060,\n  \"stv</w>\": 9708,\n  \"stweet</w>\": 46832,\n  \"stweets</w>\": 39174,\n  \"stx</w>\": 42548,\n  \"sty\": 1421,\n  \"sty</w>\": 2920,\n  \"style\": 12356,\n  \"style</w>\": 1844,\n  \"styled</w>\": 17974,\n  \"styles</w>\": 6948,\n  \"styli\": 38577,\n  \"styling</w>\": 14597,\n  \"stylish</w>\": 10378,\n  \"stylist</w>\": 15928,\n  \"styn</w>\": 41394,\n  \"su\": 605,\n  \"su</w>\": 2937,\n  \"sua</w>\": 42448,\n  \"suarez</w>\": 21437,\n  \"suave</w>\": 47305,\n  \"sub\": 1783,\n  \"sub</w>\": 7765,\n  \"subaru</w>\": 21319,\n  \"subjec\": 16090,\n  \"subject</w>\": 10300,\n  \"subjects</w>\": 22099,\n  \"subli\": 16350,\n  \"sublime</w>\": 22367,\n  \"submarine</w>\": 19968,\n  \"submer\": 27156,\n  \"submerged</w>\": 43171,\n  \"submission</w>\": 16571,\n  \"submissions</w>\": 21566,\n  \"submit</w>\": 10423,\n  \"submitted</w>\": 15189,\n  \"submitting</w>\": 38788,\n  \"subram\": 49207,\n  \"subs</w>\": 16398,\n  \"subscri\": 5838,\n  \"subscribe</w>\": 9839,\n  \"subscribed</w>\": 44867,\n  \"subscriber</w>\": 36292,\n  \"subscribers</w>\": 17337,\n  \"subscription</w>\": 17979,\n  \"subscriptions</w>\": 47162,\n  \"subsequ\": 33598,\n  \"subsequent</w>\": 44323,\n  \"subsi\": 14856,\n  \"subsidi\": 45029,\n  \"subsidiary</w>\": 45506,\n  \"subsidies</w>\": 37685,\n  \"subsidy</w>\": 47462,\n  \"substan\": 17487,\n  \"substance</w>\": 19309,\n  \"substances</w>\": 36834,\n  \"substantial</w>\": 27171,\n  \"substantially</w>\": 47577,\n  \"substitu\": 18529,\n  \"substitute</w>\": 25340,\n  \"subtitles</w>\": 39479,\n  \"subtle</w>\": 16536,\n  \"subur\": 12517,\n  \"suburb</w>\": 37664,\n  \"suburban</w>\": 23570,\n  \"suburbs</w>\": 25317,\n  \"subway</w>\": 12196,\n  \"suc\": 1869,\n  \"succe\": 7981,\n  \"succeed</w>\": 13556,\n  \"succeeded</w>\": 41077,\n  \"succes\": 39019,\n  \"success\": 3695,\n  \"success</w>\": 3034,\n  \"successes</w>\": 29436,\n  \"successful</w>\": 4670,\n  \"successfully</w>\": 9934,\n  \"succession</w>\": 38491,\n  \"successive</w>\": 41319,\n  \"successor</w>\": 34774,\n  \"succu\": 45253,\n  \"succul\": 25671,\n  \"succulent</w>\": 35236,\n  \"such</w>\": 2046,\n  \"suction</w>\": 42786,\n  \"sud\": 8067,\n  \"sud</w>\": 33714,\n  \"sudan\": 31149,\n  \"sudan</w>\": 13474,\n  \"sudanese</w>\": 42837,\n  \"sudbury</w>\": 32488,\n  \"sudden\": 10833,\n  \"sudden</w>\": 15433,\n  \"suddenly</w>\": 11076,\n  \"sue\": 14045,\n  \"sue</w>\": 6641,\n  \"sued</w>\": 22225,\n  \"suede</w>\": 21036,\n  \"sues</w>\": 17105,\n  \"suf\": 21204,\n  \"suf</w>\": 22579,\n  \"sufc</w>\": 37091,\n  \"suff\": 4866,\n  \"suffe\": 13510,\n  \"suffer</w>\": 13557,\n  \"suffered</w>\": 14766,\n  \"suffering</w>\": 10140,\n  \"suffers</w>\": 22389,\n  \"sufficient</w>\": 28410,\n  \"suffol\": 13775,\n  \"suffolk\": 46408,\n  \"suffolk</w>\": 15685,\n  \"suffra\": 34596,\n  \"suffrage</w>\": 39567,\n  \"sufi</w>\": 39756,\n  \"sug\": 3189,\n  \"suga</w>\": 28757,\n  \"sugar\": 12418,\n  \"sugar</w>\": 5574,\n  \"sugge\": 6345,\n  \"suggest</w>\": 13356,\n  \"suggested</w>\": 18790,\n  \"suggesti\": 15033,\n  \"suggesting</w>\": 29792,\n  \"suggestion</w>\": 23741,\n  \"suggestions</w>\": 16052,\n  \"suggests</w>\": 13333,\n  \"suho</w>\": 32744,\n  \"sui</w>\": 24972,\n  \"suici\": 16372,\n  \"suicidal</w>\": 37165,\n  \"suicide\": 31310,\n  \"suicide</w>\": 8247,\n  \"suing</w>\": 18309,\n  \"suisse</w>\": 35964,\n  \"suit\": 11887,\n  \"suit</w>\": 3940,\n  \"suitable</w>\": 17476,\n  \"suitcase</w>\": 27792,\n  \"suite</w>\": 9346,\n  \"suited</w>\": 25919,\n  \"suites</w>\": 21523,\n  \"suits</w>\": 9949,\n  \"suk\": 24820,\n  \"suk</w>\": 6886,\n  \"suka</w>\": 44017,\n  \"suke</w>\": 25590,\n  \"sukh\": 46961,\n  \"suki</w>\": 32704,\n  \"sul\": 1767,\n  \"sul</w>\": 19879,\n  \"sula\": 34713,\n  \"sula</w>\": 26143,\n  \"sullivan</w>\": 14477,\n  \"sully</w>\": 37752,\n  \"sulph\": 37234,\n  \"sulphur</w>\": 47659,\n  \"sultan\": 35650,\n  \"sultan</w>\": 17049,\n  \"sum\": 7054,\n  \"sum</w>\": 8257,\n  \"suma</w>\": 47938,\n  \"sumat\": 32640,\n  \"sumatra</w>\": 47346,\n  \"sume</w>\": 45457,\n  \"sumi</w>\": 41248,\n  \"summ\": 1309,\n  \"summar\": 34657,\n  \"summari\": 31993,\n  \"summary</w>\": 13435,\n  \"summed</w>\": 34912,\n  \"summer\": 5500,\n  \"summer</w>\": 1673,\n  \"summers</w>\": 18254,\n  \"summerslam</w>\": 40264,\n  \"summertime</w>\": 19025,\n  \"summit\": 30011,\n  \"summit</w>\": 3768,\n  \"summon\": 27622,\n  \"summon</w>\": 39782,\n  \"sumner</w>\": 46813,\n  \"sumo</w>\": 33734,\n  \"sump\": 34252,\n  \"sumptuous</w>\": 47354,\n  \"sums</w>\": 13325,\n  \"sun\": 968,\n  \"sun</w>\": 2176,\n  \"sunbathing</w>\": 46994,\n  \"sunburn</w>\": 45767,\n  \"sund</w>\": 40735,\n  \"sundae</w>\": 38078,\n  \"sundance</w>\": 24128,\n  \"sundar\": 44936,\n  \"sunday\": 6649,\n  \"sunday</w>\": 1706,\n  \"sundayfunday</w>\": 21565,\n  \"sundaymorning</w>\": 24809,\n  \"sundaymotivation</w>\": 46227,\n  \"sundays</w>\": 15827,\n  \"sundaywith\": 26469,\n  \"sundaywithmarsha</w>\": 26662,\n  \"sunder\": 15097,\n  \"sunderland\": 45727,\n  \"sunderland</w>\": 18851,\n  \"sundown</w>\": 44438,\n  \"sune</w>\": 41096,\n  \"sunflower</w>\": 21559,\n  \"sunflowers</w>\": 39809,\n  \"sung\": 16903,\n  \"sung</w>\": 6047,\n  \"sunglasses</w>\": 12906,\n  \"suni\": 17663,\n  \"suni</w>\": 47010,\n  \"sunil</w>\": 32861,\n  \"sunite</w>\": 21382,\n  \"sunited</w>\": 35276,\n  \"sunk</w>\": 37534,\n  \"sunken</w>\": 43473,\n  \"sunlight</w>\": 17996,\n  \"sunni</w>\": 44315,\n  \"sunny\": 15632,\n  \"sunny</w>\": 5438,\n  \"sunrise</w>\": 5610,\n  \"suns</w>\": 18322,\n  \"sunscreen</w>\": 29355,\n  \"sunset\": 37880,\n  \"sunset</w>\": 3424,\n  \"sunsets</w>\": 17721,\n  \"sunshine\": 32761,\n  \"sunshine</w>\": 5385,\n  \"suny</w>\": 41308,\n  \"sup\": 19078,\n  \"sup</w>\": 8249,\n  \"supdates</w>\": 24177,\n  \"super\": 1642,\n  \"super</w>\": 1994,\n  \"superb</w>\": 8930,\n  \"superbike</w>\": 45709,\n  \"superbowl\": 47461,\n  \"superbowl</w>\": 16467,\n  \"supercar</w>\": 27021,\n  \"supercars</w>\": 32185,\n  \"supercell</w>\": 43227,\n  \"supercharged</w>\": 47479,\n  \"supere\": 46831,\n  \"superfood</w>\": 41715,\n  \"supergirl</w>\": 25771,\n  \"superhero</w>\": 14049,\n  \"superheroes</w>\": 23334,\n  \"superint\": 17615,\n  \"superintendent</w>\": 19020,\n  \"superior</w>\": 13205,\n  \"superjunior</w>\": 40475,\n  \"superleague</w>\": 45539,\n  \"superman</w>\": 11237,\n  \"supermarket</w>\": 19897,\n  \"supermarkets</w>\": 45106,\n  \"supermodel</w>\": 41963,\n  \"supermoon</w>\": 36571,\n  \"supernatural</w>\": 15484,\n  \"supernova</w>\": 39843,\n  \"superrugby</w>\": 48717,\n  \"supersonic</w>\": 42019,\n  \"supersport</w>\": 46319,\n  \"superst\": 38202,\n  \"superstar\": 32551,\n  \"superstar</w>\": 10472,\n  \"superstars</w>\": 25797,\n  \"supervis\": 12709,\n  \"supervised</w>\": 41316,\n  \"supervision</w>\": 36234,\n  \"supervisor</w>\": 20366,\n  \"supervisors</w>\": 37958,\n  \"superyacht</w>\": 42714,\n  \"supp\": 1023,\n  \"supper</w>\": 15727,\n  \"supple\": 31431,\n  \"supplement</w>\": 19924,\n  \"supplements</w>\": 21265,\n  \"supplied</w>\": 24106,\n  \"supplier</w>\": 18043,\n  \"suppliers</w>\": 24196,\n  \"supplies</w>\": 9384,\n  \"supply\": 25074,\n  \"supply</w>\": 6389,\n  \"supplychain</w>\": 31224,\n  \"supplying</w>\": 32739,\n  \"suppo\": 6941,\n  \"suppor\": 2104,\n  \"support\": 12062,\n  \"support</w>\": 1425,\n  \"supported</w>\": 8038,\n  \"supporter</w>\": 12992,\n  \"supporters</w>\": 7403,\n  \"supportindiefilm</w>\": 43976,\n  \"supporting</w>\": 3976,\n  \"supportive</w>\": 18313,\n  \"supportlocal</w>\": 43852,\n  \"supports</w>\": 8336,\n  \"supportsmall\": 30941,\n  \"supportsmallstreamers</w>\": 36097,\n  \"suppose</w>\": 18924,\n  \"supposed</w>\": 9119,\n  \"supposedly</w>\": 32302,\n  \"suppre\": 20542,\n  \"suppression</w>\": 36508,\n  \"supra</w>\": 48485,\n  \"supre\": 5875,\n  \"supremac\": 28643,\n  \"supremacist</w>\": 39005,\n  \"supremacy</w>\": 28913,\n  \"supreme\": 35222,\n  \"supreme</w>\": 7468,\n  \"supt</w>\": 23625,\n  \"sur\": 1090,\n  \"sur</w>\": 7123,\n  \"sura\": 33412,\n  \"sura</w>\": 49125,\n  \"surabaya</w>\": 45227,\n  \"surance</w>\": 22184,\n  \"surat</w>\": 30201,\n  \"sure\": 14320,\n  \"sure</w>\": 1650,\n  \"sured</w>\": 36869,\n  \"surely</w>\": 11409,\n  \"sures</w>\": 12725,\n  \"suresh\": 32118,\n  \"suresh</w>\": 31464,\n  \"sureshpp\": 41924,\n  \"sureshpprabhu</w>\": 42050,\n  \"surf\": 10176,\n  \"surf</w>\": 10322,\n  \"surface</w>\": 7744,\n  \"surfaces</w>\": 20746,\n  \"surfer</w>\": 24925,\n  \"surfers</w>\": 34842,\n  \"surfing</w>\": 15762,\n  \"surg\": 13045,\n  \"surge</w>\": 17457,\n  \"surgeon</w>\": 16039,\n  \"surgeons</w>\": 26000,\n  \"surger\": 5122,\n  \"surgeries</w>\": 34940,\n  \"surgery</w>\": 5344,\n  \"surgical</w>\": 16386,\n  \"suri\": 14130,\n  \"suri</w>\": 33952,\n  \"suring</w>\": 16817,\n  \"suriya</w>\": 17832,\n  \"surpass</w>\": 45494,\n  \"surpassed</w>\": 25648,\n  \"surplus</w>\": 29413,\n  \"surpri\": 3244,\n  \"surprise</w>\": 5099,\n  \"surprised</w>\": 8949,\n  \"surprises</w>\": 16920,\n  \"surprising</w>\": 14964,\n  \"surprisingly</w>\": 17367,\n  \"surreal</w>\": 18408,\n  \"surrealism</w>\": 41773,\n  \"surrender</w>\": 20964,\n  \"surrendered</w>\": 44601,\n  \"surrey\": 26489,\n  \"surrey</w>\": 14315,\n  \"surro\": 47499,\n  \"surroun\": 8250,\n  \"surround\": 26543,\n  \"surround</w>\": 22999,\n  \"surrounded</w>\": 13589,\n  \"surrounding</w>\": 12544,\n  \"surroundings</w>\": 26915,\n  \"surrounds</w>\": 39012,\n  \"suru</w>\": 49240,\n  \"surve\": 8952,\n  \"surveill\": 15408,\n  \"surveillance</w>\": 15578,\n  \"survey\": 45914,\n  \"survey</w>\": 6809,\n  \"surveying</w>\": 33085,\n  \"surveys</w>\": 25096,\n  \"survi\": 3440,\n  \"surviv\": 12922,\n  \"survival</w>\": 10172,\n  \"survive</w>\": 10431,\n  \"survived</w>\": 13483,\n  \"survives</w>\": 30927,\n  \"surviving</w>\": 18609,\n  \"survivor\": 31934,\n  \"survivor</w>\": 10944,\n  \"survivors</w>\": 13711,\n  \"surya</w>\": 37767,\n  \"sus\": 8091,\n  \"sus</w>\": 3036,\n  \"susa</w>\": 20546,\n  \"susan\": 19922,\n  \"susan</w>\": 10168,\n  \"suscep\": 44270,\n  \"sush\": 22298,\n  \"sushi</w>\": 11729,\n  \"sushmaswar\": 48200,\n  \"susie</w>\": 32284,\n  \"susp\": 7971,\n  \"suspec\": 10298,\n  \"suspect</w>\": 9065,\n  \"suspected</w>\": 15579,\n  \"suspects</w>\": 18265,\n  \"suspen\": 10578,\n  \"suspend</w>\": 41007,\n  \"suspended</w>\": 13126,\n  \"suspends</w>\": 39535,\n  \"suspense</w>\": 21556,\n  \"suspension</w>\": 15417,\n  \"suspici\": 25714,\n  \"suspicion</w>\": 34910,\n  \"suspicious</w>\": 19862,\n  \"sussex\": 31244,\n  \"sussex</w>\": 13266,\n  \"sustain\": 4644,\n  \"sustain</w>\": 28156,\n  \"sustainability</w>\": 9635,\n  \"sustainable\": 23645,\n  \"sustainable</w>\": 7078,\n  \"sustained</w>\": 22699,\n  \"sustaining</w>\": 44418,\n  \"sut\": 23984,\n  \"sut</w>\": 28956,\n  \"sutherland</w>\": 27592,\n  \"sutton\": 39359,\n  \"sutton</w>\": 18564,\n  \"suv</w>\": 15985,\n  \"suz\": 9957,\n  \"suzanne</w>\": 24617,\n  \"suzu\": 36289,\n  \"suzuki</w>\": 16892,\n  \"suzy</w>\": 26552,\n  \"sv\": 6508,\n  \"sv</w>\": 17083,\n  \"svc</w>\": 45065,\n  \"sve\": 47637,\n  \"sven\": 37786,\n  \"sven</w>\": 45183,\n  \"sver\": 45923,\n  \"sville\": 44580,\n  \"sville</w>\": 6741,\n  \"svp</w>\": 28465,\n  \"svt</w>\": 42014,\n  \"svu</w>\": 32123,\n  \"sw\": 1220,\n  \"sw</w>\": 4457,\n  \"swa\": 4707,\n  \"swa</w>\": 31916,\n  \"swach\": 20862,\n  \"swachhb\": 31898,\n  \"swachhbharat</w>\": 36927,\n  \"swag\": 8852,\n  \"swag</w>\": 8177,\n  \"swagg</w>\": 47702,\n  \"swagger</w>\": 35797,\n  \"swain</w>\": 43226,\n  \"swal\": 13433,\n  \"swallow</w>\": 28979,\n  \"swallowed</w>\": 46956,\n  \"swallows</w>\": 45124,\n  \"swam</w>\": 42539,\n  \"swami</w>\": 25021,\n  \"swamp\": 41953,\n  \"swamp</w>\": 16595,\n  \"swamy</w>\": 28445,\n  \"swan\": 8215,\n  \"swan</w>\": 12530,\n  \"swana</w>\": 24699,\n  \"swans</w>\": 19516,\n  \"swansea</w>\": 16567,\n  \"swanson</w>\": 34797,\n  \"swap</w>\": 15234,\n  \"swapped</w>\": 39077,\n  \"swapping</w>\": 44702,\n  \"swaps</w>\": 49242,\n  \"swar\": 11680,\n  \"swarm</w>\": 31577,\n  \"swarovski</w>\": 28515,\n  \"swat\": 32547,\n  \"swat</w>\": 26482,\n  \"swatch</w>\": 48053,\n  \"sway\": 26443,\n  \"sway</w>\": 26617,\n  \"swc</w>\": 42231,\n  \"swe\": 2350,\n  \"swe</w>\": 38070,\n  \"swear</w>\": 7406,\n  \"swearing</w>\": 32627,\n  \"sweat\": 10282,\n  \"sweat</w>\": 12663,\n  \"sweater</w>\": 11455,\n  \"sweaters</w>\": 31303,\n  \"sweating</w>\": 33215,\n  \"sweats</w>\": 39321,\n  \"sweatshirt</w>\": 22442,\n  \"sweaty</w>\": 28419,\n  \"sweden</w>\": 8760,\n  \"swedish</w>\": 11585,\n  \"swee\": 1812,\n  \"sweek</w>\": 30017,\n  \"sweeney</w>\": 27286,\n  \"sweep\": 23220,\n  \"sweep</w>\": 13669,\n  \"sweeping</w>\": 25719,\n  \"sweeps</w>\": 26887,\n  \"sweepstakes</w>\": 25992,\n  \"sweet\": 10957,\n  \"sweet</w>\": 2418,\n  \"sweetened</w>\": 45577,\n  \"sweeter</w>\": 32873,\n  \"sweetest</w>\": 15180,\n  \"sweethe\": 16316,\n  \"sweetheart</w>\": 18079,\n  \"sweetie</w>\": 24450,\n  \"sweetness</w>\": 29713,\n  \"sweets</w>\": 18045,\n  \"swel\": 48470,\n  \"swell\": 35538,\n  \"swell</w>\": 21490,\n  \"swelling</w>\": 46578,\n  \"swept</w>\": 23311,\n  \"swer\": 30514,\n  \"swfc</w>\": 30227,\n  \"swfl</w>\": 46607,\n  \"swi\": 3881,\n  \"swi</w>\": 45223,\n  \"swick</w>\": 17159,\n  \"swif\": 28548,\n  \"swift\": 34843,\n  \"swift</w>\": 8229,\n  \"swild\": 33909,\n  \"swild</w>\": 38696,\n  \"swildlife</w>\": 46818,\n  \"swim\": 4928,\n  \"swim</w>\": 7681,\n  \"swimmer</w>\": 25475,\n  \"swimmers</w>\": 27776,\n  \"swimming</w>\": 7411,\n  \"swims</w>\": 46798,\n  \"swimsuit</w>\": 25504,\n  \"swimwear</w>\": 31889,\n  \"swin\": 14554,\n  \"swin</w>\": 40798,\n  \"swindon</w>\": 29540,\n  \"swine</w>\": 31166,\n  \"swing\": 25292,\n  \"swing</w>\": 7429,\n  \"swinging</w>\": 26760,\n  \"swings</w>\": 29141,\n  \"swipe</w>\": 31828,\n  \"swire</w>\": 42753,\n  \"swirl</w>\": 35795,\n  \"swis\": 23611,\n  \"swish</w>\": 38571,\n  \"swiss\": 37917,\n  \"swiss</w>\": 9287,\n  \"swit\": 3726,\n  \"switch\": 22480,\n  \"switch</w>\": 5893,\n  \"switched</w>\": 22869,\n  \"switches</w>\": 33569,\n  \"switching</w>\": 21155,\n  \"swith\": 17299,\n  \"switzer\": 9835,\n  \"switzerland</w>\": 9912,\n  \"swivel</w>\": 48256,\n  \"swo\": 38673,\n  \"swol\": 29575,\n  \"swollen</w>\": 36129,\n  \"swoo\": 29744,\n  \"swood</w>\": 24158,\n  \"swoon</w>\": 37028,\n  \"swoop</w>\": 45661,\n  \"sword\": 33294,\n  \"sword</w>\": 11356,\n  \"swords</w>\": 27181,\n  \"swork</w>\": 42722,\n  \"sworld</w>\": 33305,\n  \"sworn</w>\": 21130,\n  \"sworth</w>\": 13322,\n  \"swt</w>\": 38878,\n  \"swx</w>\": 20597,\n  \"sx\": 9402,\n  \"sx</w>\": 17806,\n  \"sxsw</w>\": 13369,\n  \"sy\": 974,\n  \"sy</w>\": 2126,\n  \"sya</w>\": 35017,\n  \"sycam\": 34911,\n  \"sycamore</w>\": 43086,\n  \"syd\": 4525,\n  \"syd</w>\": 22504,\n  \"sydney\": 15878,\n  \"sydney</w>\": 5278,\n  \"syed</w>\": 27624,\n  \"syfy</w>\": 32047,\n  \"sykes</w>\": 27287,\n  \"syl\": 6452,\n  \"sylla\": 41708,\n  \"sylvania</w>\": 12011,\n  \"sylve\": 28369,\n  \"sylvester</w>\": 37214,\n  \"sylvia</w>\": 25670,\n  \"sym\": 3645,\n  \"sym</w>\": 40327,\n  \"symb\": 22987,\n  \"symbol</w>\": 13085,\n  \"symboli\": 22019,\n  \"symbolic</w>\": 33177,\n  \"symbolism</w>\": 44679,\n  \"symbols</w>\": 25476,\n  \"symmetry</w>\": 31427,\n  \"symp\": 11468,\n  \"sympathi\": 47493,\n  \"sympathy</w>\": 32477,\n  \"symph\": 9544,\n  \"symphonic</w>\": 42639,\n  \"symphony</w>\": 11180,\n  \"sympo\": 9730,\n  \"symposium</w>\": 9971,\n  \"symptom</w>\": 47799,\n  \"symptoms</w>\": 12956,\n  \"syn\": 3758,\n  \"syn</w>\": 36090,\n  \"synago\": 30945,\n  \"synagogue</w>\": 33518,\n  \"sync</w>\": 20081,\n  \"synchron\": 23943,\n  \"syndic\": 21098,\n  \"syndicate</w>\": 28779,\n  \"syndrome</w>\": 10927,\n  \"syner\": 22283,\n  \"synergy</w>\": 32012,\n  \"syno\": 31533,\n  \"synod</w>\": 47712,\n  \"synopsis</w>\": 47018,\n  \"synth\": 33841,\n  \"synth</w>\": 24462,\n  \"synthe\": 22604,\n  \"synthesi\": 33565,\n  \"synthesis</w>\": 21602,\n  \"synthesizer</w>\": 44077,\n  \"synthetic</w>\": 19917,\n  \"syou\": 26742,\n  \"syour\": 21718,\n  \"syrac\": 17279,\n  \"syracuse</w>\": 19640,\n  \"syrah</w>\": 45364,\n  \"syri\": 18917,\n  \"syria</w>\": 5563,\n  \"syrian\": 47562,\n  \"syrian</w>\": 10041,\n  \"syrians</w>\": 41392,\n  \"syrup</w>\": 16611,\n  \"sys</w>\": 26726,\n  \"syste\": 1933,\n  \"system\": 47813,\n  \"system</w>\": 2422,\n  \"systematic</w>\": 28586,\n  \"systemic</w>\": 33807,\n  \"systems</w>\": 4828,\n  \"sz\": 13438,\n  \"sz</w>\": 15879,\n  \"sze\": 44507,\n  \"szn</w>\": 48092,\n  \"sÃ£o</w>\": 45911,\n  \"sÃ©\": 37879,\n  \"t\": 83,\n  \"t</w>\": 339,\n  \"ta\": 648,\n  \"ta</w>\": 1397,\n  \"taa</w>\": 43874,\n  \"tab\": 2648,\n  \"tab</w>\": 14724,\n  \"tabby</w>\": 36145,\n  \"tabern\": 48991,\n  \"tability</w>\": 15770,\n  \"table\": 12108,\n  \"table</w>\": 2175,\n  \"tableau</w>\": 39723,\n  \"tables</w>\": 7822,\n  \"tablet</w>\": 12494,\n  \"tabletop\": 46843,\n  \"tabletop</w>\": 25773,\n  \"tablets</w>\": 20436,\n  \"tably</w>\": 24440,\n  \"taboo</w>\": 38400,\n  \"tabs</w>\": 29163,\n  \"tac\": 3145,\n  \"tac</w>\": 22653,\n  \"tache</w>\": 39239,\n  \"tack\": 6339,\n  \"tack</w>\": 34446,\n  \"tackle</w>\": 10294,\n  \"tackled</w>\": 47218,\n  \"tackles</w>\": 18021,\n  \"tackling</w>\": 19628,\n  \"taco\": 31924,\n  \"taco</w>\": 12436,\n  \"tacoma</w>\": 25397,\n  \"tacos</w>\": 14090,\n  \"tactic</w>\": 40377,\n  \"tactical</w>\": 17137,\n  \"tactics</w>\": 16410,\n  \"tacular</w>\": 48985,\n  \"tad\": 15890,\n  \"tad</w>\": 19860,\n  \"tado</w>\": 40846,\n  \"tae\": 15257,\n  \"tae</w>\": 15580,\n  \"taehyung</w>\": 24642,\n  \"taek\": 30753,\n  \"taekwondo</w>\": 39963,\n  \"taemin</w>\": 30600,\n  \"taeyang</w>\": 45802,\n  \"taeyeon</w>\": 27389,\n  \"taf\": 29660,\n  \"taft</w>\": 42141,\n  \"tag\": 3456,\n  \"tag</w>\": 3640,\n  \"tage</w>\": 2669,\n  \"tages</w>\": 39902,\n  \"tagged</w>\": 12969,\n  \"tagging</w>\": 25138,\n  \"tagne</w>\": 47467,\n  \"tags</w>\": 11606,\n  \"tah\": 14822,\n  \"tah</w>\": 7090,\n  \"tahit\": 45385,\n  \"tahoe</w>\": 26140,\n  \"tai\": 6511,\n  \"tai</w>\": 13040,\n  \"taiji</w>\": 30185,\n  \"tail\": 7156,\n  \"tail</w>\": 4132,\n  \"tailed</w>\": 20626,\n  \"tailgate</w>\": 23168,\n  \"tailgating</w>\": 42625,\n  \"tailo\": 27230,\n  \"tailor</w>\": 29870,\n  \"tailored</w>\": 28275,\n  \"tailoring</w>\": 46357,\n  \"tails</w>\": 16066,\n  \"tain\": 2841,\n  \"tain</w>\": 1908,\n  \"taine\": 21214,\n  \"taine</w>\": 32299,\n  \"tained</w>\": 10212,\n  \"taining</w>\": 7565,\n  \"tainment</w>\": 30063,\n  \"tains</w>\": 3952,\n  \"tainted</w>\": 47211,\n  \"taipei</w>\": 24356,\n  \"tair\": 29143,\n  \"tairp</w>\": 43707,\n  \"tait</w>\": 45325,\n  \"taiwan\": 36319,\n  \"taiwan</w>\": 12626,\n  \"taiwanese</w>\": 41416,\n  \"taj\": 28937,\n  \"taj</w>\": 24805,\n  \"taji\": 46358,\n  \"tak\": 15070,\n  \"tak</w>\": 14458,\n  \"taka\": 24070,\n  \"taka</w>\": 40968,\n  \"take\": 5052,\n  \"take</w>\": 1172,\n  \"takeaway</w>\": 25737,\n  \"takeaways</w>\": 32080,\n  \"takeme\": 41748,\n  \"taken</w>\": 2807,\n  \"takeoff</w>\": 32789,\n  \"takeover</w>\": 11863,\n  \"taker</w>\": 17939,\n  \"takers</w>\": 30775,\n  \"takes</w>\": 2633,\n  \"takin</w>\": 30890,\n  \"taking</w>\": 2019,\n  \"taku</w>\": 48168,\n  \"tal\": 976,\n  \"tal</w>\": 2066,\n  \"tala</w>\": 29845,\n  \"talaga</w>\": 35349,\n  \"talbot</w>\": 30585,\n  \"tale\": 33971,\n  \"tale</w>\": 7798,\n  \"talent\": 30435,\n  \"talent</w>\": 5114,\n  \"talented</w>\": 5331,\n  \"talents</w>\": 16136,\n  \"tales</w>\": 9469,\n  \"tali\": 12122,\n  \"tali</w>\": 45406,\n  \"taliban</w>\": 20788,\n  \"talis\": 36480,\n  \"tality</w>\": 15631,\n  \"talk\": 12462,\n  \"talk</w>\": 1841,\n  \"talked</w>\": 10153,\n  \"talkin</w>\": 26040,\n  \"talking\": 31463,\n  \"talking</w>\": 2578,\n  \"talks</w>\": 3237,\n  \"tall\": 11664,\n  \"tall</w>\": 7771,\n  \"talla\": 21528,\n  \"tallade\": 44220,\n  \"tallahassee</w>\": 37832,\n  \"taller</w>\": 23470,\n  \"tallest</w>\": 19774,\n  \"tallinn</w>\": 45079,\n  \"tally</w>\": 16323,\n  \"talon</w>\": 47897,\n  \"tam\": 2661,\n  \"tam</w>\": 12246,\n  \"tama</w>\": 45424,\n  \"tamanna\": 48055,\n  \"tamar\": 22901,\n  \"tamara</w>\": 35697,\n  \"tame\": 38557,\n  \"tame</w>\": 32778,\n  \"tamed</w>\": 40575,\n  \"tami</w>\": 39429,\n  \"tamil\": 23046,\n  \"tamil</w>\": 14033,\n  \"tamilnadu</w>\": 32371,\n  \"tamine</w>\": 42566,\n  \"tammy</w>\": 28396,\n  \"tampa</w>\": 10906,\n  \"tampab\": 37852,\n  \"tamu</w>\": 34105,\n  \"tan\": 2123,\n  \"tan</w>\": 5039,\n  \"tana</w>\": 21396,\n  \"tand\": 20244,\n  \"tandem</w>\": 33756,\n  \"tane\": 13344,\n  \"tane</w>\": 24923,\n  \"taneous</w>\": 22275,\n  \"taneously</w>\": 24422,\n  \"tang\": 10425,\n  \"tang</w>\": 20794,\n  \"tanger\": 31844,\n  \"tangerine</w>\": 42045,\n  \"tangible</w>\": 44823,\n  \"tangle</w>\": 36568,\n  \"tangled</w>\": 33587,\n  \"tango</w>\": 24089,\n  \"tani\": 31374,\n  \"tani</w>\": 32985,\n  \"tania</w>\": 45369,\n  \"tank\": 29858,\n  \"tank</w>\": 6172,\n  \"tanker</w>\": 25020,\n  \"tanks</w>\": 14223,\n  \"tann\": 19174,\n  \"tanner</w>\": 22001,\n  \"tanning</w>\": 27985,\n  \"tans</w>\": 27332,\n  \"tant\": 41383,\n  \"tant</w>\": 41695,\n  \"tante</w>\": 48262,\n  \"tanto</w>\": 45685,\n  \"tany\": 34410,\n  \"tanya</w>\": 26800,\n  \"tanz\": 47399,\n  \"tanzania</w>\": 15711,\n  \"tao\": 29084,\n  \"tao</w>\": 18923,\n  \"tap\": 17923,\n  \"tap</w>\": 7888,\n  \"tapas</w>\": 27361,\n  \"tape\": 18332,\n  \"tape</w>\": 5749,\n  \"taped</w>\": 33219,\n  \"tapes</w>\": 17903,\n  \"tapestry</w>\": 33525,\n  \"taping</w>\": 24355,\n  \"tapp\": 27644,\n  \"tapp</w>\": 27764,\n  \"tapped</w>\": 26649,\n  \"tapping</w>\": 27882,\n  \"tapro\": 34415,\n  \"taproom</w>\": 40266,\n  \"taps</w>\": 23267,\n  \"tar\": 2002,\n  \"tar</w>\": 6977,\n  \"tara</w>\": 15264,\n  \"tarak</w>\": 37813,\n  \"taran\": 32370,\n  \"tarantino</w>\": 41180,\n  \"tarde</w>\": 48670,\n  \"tardis</w>\": 35410,\n  \"tares</w>\": 34587,\n  \"targe\": 9620,\n  \"target\": 38556,\n  \"target</w>\": 5400,\n  \"targeted</w>\": 14968,\n  \"targeting</w>\": 15818,\n  \"targets</w>\": 12468,\n  \"tari\": 4238,\n  \"tari</w>\": 38012,\n  \"tarian</w>\": 11762,\n  \"tarians</w>\": 42789,\n  \"taries</w>\": 47291,\n  \"tariff</w>\": 40220,\n  \"tariffs</w>\": 28335,\n  \"tariq</w>\": 42526,\n  \"tarmac</w>\": 44294,\n  \"taro</w>\": 26264,\n  \"tarot</w>\": 23702,\n  \"tart\": 16707,\n  \"tart</w>\": 14120,\n  \"tartan</w>\": 35064,\n  \"tarts</w>\": 29799,\n  \"tary\": 31729,\n  \"tary</w>\": 5065,\n  \"tarzan</w>\": 45463,\n  \"tas\": 6538,\n  \"tas</w>\": 10163,\n  \"tash\": 35272,\n  \"tasha</w>\": 44967,\n  \"task\": 39189,\n  \"task</w>\": 10549,\n  \"tasks</w>\": 19453,\n  \"tasmania</w>\": 22429,\n  \"tasmanian</w>\": 45102,\n  \"tassel</w>\": 49276,\n  \"tast\": 10839,\n  \"taste\": 14314,\n  \"taste</w>\": 5219,\n  \"tasted</w>\": 22827,\n  \"tasteof\": 38097,\n  \"taster</w>\": 29743,\n  \"tastes</w>\": 13736,\n  \"tastic</w>\": 21337,\n  \"tasting</w>\": 7656,\n  \"tastings</w>\": 49273,\n  \"tasty\": 43390,\n  \"tasty</w>\": 8568,\n  \"tat\": 2652,\n  \"tat</w>\": 21592,\n  \"tata</w>\": 19300,\n  \"tate\": 44476,\n  \"tate</w>\": 13295,\n  \"tath\": 27566,\n  \"tati\": 31433,\n  \"tatiana</w>\": 48837,\n  \"tation</w>\": 5280,\n  \"tations</w>\": 32324,\n  \"tator</w>\": 18791,\n  \"tators</w>\": 37206,\n  \"tats</w>\": 44557,\n  \"tatt\": 9232,\n  \"tatted</w>\": 41605,\n  \"tattoo\": 15980,\n  \"tattoo</w>\": 6325,\n  \"tattooed</w>\": 28541,\n  \"tattoos</w>\": 14900,\n  \"tatum</w>\": 26103,\n  \"tau\": 6620,\n  \"tau</w>\": 20510,\n  \"taught</w>\": 9306,\n  \"taun\": 23910,\n  \"taunton</w>\": 40681,\n  \"taurus</w>\": 32881,\n  \"taver\": 37776,\n  \"tavern</w>\": 18644,\n  \"taw\": 33868,\n  \"taw</w>\": 40289,\n  \"tawa</w>\": 29035,\n  \"tawards</w>\": 14351,\n  \"tax\": 4581,\n  \"tax</w>\": 3879,\n  \"taxation</w>\": 36847,\n  \"taxes</w>\": 11462,\n  \"taxi\": 25160,\n  \"taxi</w>\": 11380,\n  \"taxider\": 47420,\n  \"taxis</w>\": 34009,\n  \"taxpay\": 17986,\n  \"taxpayer</w>\": 30978,\n  \"taxpayers</w>\": 25503,\n  \"tay\": 6542,\n  \"tay</w>\": 15073,\n  \"taya</w>\": 38484,\n  \"tayl\": 3913,\n  \"taylor\": 9044,\n  \"taylor</w>\": 3961,\n  \"taylorswift</w>\": 18936,\n  \"tayo</w>\": 33941,\n  \"taz\": 41475,\n  \"taz</w>\": 31870,\n  \"tb\": 1990,\n  \"tb</w>\": 7490,\n  \"tba</w>\": 34363,\n  \"tball\": 8390,\n  \"tball</w>\": 1467,\n  \"tbc</w>\": 31807,\n  \"tbd</w>\": 45548,\n  \"tbh</w>\": 13238,\n  \"tbi</w>\": 45868,\n  \"tbl</w>\": 42962,\n  \"tbli\": 43664,\n  \"tblightning</w>\": 44178,\n  \"tbo</w>\": 34255,\n  \"tbr</w>\": 46643,\n  \"tbs</w>\": 37368,\n  \"tbt</w>\": 2950,\n  \"tc\": 6820,\n  \"tc</w>\": 5454,\n  \"tca</w>\": 35116,\n  \"tch\": 10744,\n  \"tch</w>\": 4048,\n  \"tches</w>\": 42001,\n  \"tcm\": 21501,\n  \"tcm</w>\": 26588,\n  \"tcmparty</w>\": 24338,\n  \"tcot</w>\": 8995,\n  \"tcs</w>\": 39107,\n  \"tcu</w>\": 26791,\n  \"td\": 20578,\n  \"td</w>\": 3192,\n  \"tdf</w>\": 21844,\n  \"tdi</w>\": 45621,\n  \"tdp</w>\": 47009,\n  \"tds</w>\": 20238,\n  \"tdsb</w>\": 29836,\n  \"te\": 600,\n  \"te</w>\": 756,\n  \"tea\": 41053,\n  \"tea</w>\": 3274,\n  \"teach\": 2043,\n  \"teach</w>\": 6865,\n  \"teacher\": 18051,\n  \"teacher</w>\": 4008,\n  \"teachers</w>\": 5069,\n  \"teaches</w>\": 17110,\n  \"teaching</w>\": 5141,\n  \"teachings</w>\": 32119,\n  \"teal</w>\": 22821,\n  \"team\": 2085,\n  \"team</w>\": 1027,\n  \"teamcanada</w>\": 46636,\n  \"teamed</w>\": 20590,\n  \"teamgb</w>\": 40971,\n  \"teaming</w>\": 24392,\n  \"teammate</w>\": 17900,\n  \"teammates</w>\": 13921,\n  \"teams</w>\": 3891,\n  \"teamsisd</w>\": 34703,\n  \"teamusa</w>\": 28625,\n  \"teamwork</w>\": 14657,\n  \"teaparty</w>\": 33065,\n  \"teapo\": 35745,\n  \"teapot</w>\": 40749,\n  \"tear\": 15802,\n  \"tear</w>\": 11862,\n  \"tearful</w>\": 46873,\n  \"tearing</w>\": 24785,\n  \"tears</w>\": 7688,\n  \"teas\": 23003,\n  \"teas</w>\": 29314,\n  \"tease</w>\": 25163,\n  \"teased</w>\": 49122,\n  \"teaser</w>\": 8982,\n  \"teasers</w>\": 48990,\n  \"teases</w>\": 28509,\n  \"teasing</w>\": 36507,\n  \"teat\": 26376,\n  \"teatime</w>\": 48948,\n  \"teatro</w>\": 35756,\n  \"teau</w>\": 24931,\n  \"tebow</w>\": 37797,\n  \"tec\": 17381,\n  \"tec</w>\": 11612,\n  \"tech\": 1782,\n  \"tech</w>\": 2061,\n  \"techcrunch</w>\": 42110,\n  \"techn\": 6252,\n  \"technews</w>\": 31787,\n  \"technic\": 16639,\n  \"technic</w>\": 37666,\n  \"technical\": 49231,\n  \"technical</w>\": 7582,\n  \"technically</w>\": 23180,\n  \"technician</w>\": 22540,\n  \"technicians</w>\": 35513,\n  \"techno\": 2599,\n  \"techno</w>\": 17564,\n  \"technological</w>\": 23068,\n  \"technologies</w>\": 10040,\n  \"technology</w>\": 3089,\n  \"techs</w>\": 41353,\n  \"ted\": 4841,\n  \"ted</w>\": 775,\n  \"tedcruz</w>\": 27517,\n  \"teddy\": 25758,\n  \"teddy</w>\": 11798,\n  \"tedly</w>\": 8539,\n  \"tedu</w>\": 42517,\n  \"tedx\": 17950,\n  \"tedx</w>\": 41504,\n  \"tee\": 12676,\n  \"tee</w>\": 3385,\n  \"teed</w>\": 13692,\n  \"teen\": 5398,\n  \"teen</w>\": 4697,\n  \"teenage</w>\": 14069,\n  \"teenager</w>\": 19338,\n  \"teenagers</w>\": 25989,\n  \"teenchoice</w>\": 28203,\n  \"teens</w>\": 12375,\n  \"teenth</w>\": 20249,\n  \"teenwolf</w>\": 40067,\n  \"teeny</w>\": 41622,\n  \"teer</w>\": 48648,\n  \"tees</w>\": 9641,\n  \"teessi\": 43295,\n  \"teeth</w>\": 8225,\n  \"tega</w>\": 29508,\n  \"tegr\": 39801,\n  \"teh\": 18720,\n  \"teh</w>\": 29601,\n  \"tehran</w>\": 26399,\n  \"tein</w>\": 33223,\n  \"tej</w>\": 46724,\n  \"tek\": 17489,\n  \"tek</w>\": 18294,\n  \"tekken</w>\": 29843,\n  \"tel\": 4978,\n  \"tel</w>\": 2226,\n  \"telang\": 23469,\n  \"telangana</w>\": 26386,\n  \"tele\": 3103,\n  \"tele</w>\": 32851,\n  \"telecom</w>\": 21057,\n  \"telecommunications</w>\": 39900,\n  \"telegram</w>\": 26780,\n  \"telegraph</w>\": 14713,\n  \"telephone</w>\": 17243,\n  \"telescope</w>\": 19037,\n  \"telethon</w>\": 49266,\n  \"televised</w>\": 39470,\n  \"television</w>\": 8608,\n  \"telford</w>\": 38323,\n  \"tell\": 16069,\n  \"tell</w>\": 2330,\n  \"teller</w>\": 20415,\n  \"tellers</w>\": 42707,\n  \"telling</w>\": 5507,\n  \"tells</w>\": 5217,\n  \"tellu\": 42511,\n  \"telly</w>\": 31475,\n  \"tels</w>\": 43607,\n  \"telugu</w>\": 22927,\n  \"tely</w>\": 5630,\n  \"tem\": 2404,\n  \"tem</w>\": 17536,\n  \"tema</w>\": 45881,\n  \"teme\": 43378,\n  \"temp\": 2684,\n  \"temp</w>\": 11097,\n  \"tempe</w>\": 36723,\n  \"temper\": 5981,\n  \"temper</w>\": 35521,\n  \"temperature</w>\": 9543,\n  \"temperatures</w>\": 11575,\n  \"tempered</w>\": 40521,\n  \"tempest</w>\": 36053,\n  \"templ\": 16679,\n  \"template</w>\": 18591,\n  \"templates</w>\": 30498,\n  \"temple\": 21841,\n  \"temple</w>\": 5620,\n  \"temples</w>\": 24024,\n  \"tempo</w>\": 19625,\n  \"tempor\": 4858,\n  \"temporal</w>\": 43656,\n  \"temporarily</w>\": 23189,\n  \"temporary</w>\": 6513,\n  \"temps</w>\": 11668,\n  \"tempt</w>\": 28460,\n  \"temptation</w>\": 30118,\n  \"tempted</w>\": 26226,\n  \"tempting</w>\": 34876,\n  \"ten\": 1149,\n  \"ten</w>\": 2581,\n  \"tenant</w>\": 16954,\n  \"tenants</w>\": 26023,\n  \"tenay</w>\": 45384,\n  \"tenberg</w>\": 31329,\n  \"tend\": 17630,\n  \"tend</w>\": 21252,\n  \"tendency</w>\": 47277,\n  \"tender\": 23020,\n  \"tender</w>\": 9838,\n  \"tenderloin</w>\": 42750,\n  \"tenders</w>\": 44741,\n  \"tending</w>\": 35084,\n  \"tendon</w>\": 48459,\n  \"tends</w>\": 39962,\n  \"tene\": 24868,\n  \"tened</w>\": 13682,\n  \"tener</w>\": 29054,\n  \"teneri\": 28000,\n  \"tenerife</w>\": 29401,\n  \"teners</w>\": 41307,\n  \"teness</w>\": 18018,\n  \"teng\": 34016,\n  \"teng</w>\": 28474,\n  \"tennant</w>\": 29310,\n  \"tennes\": 9514,\n  \"tennessee</w>\": 10053,\n  \"tennis\": 31504,\n  \"tennis</w>\": 5298,\n  \"tenor</w>\": 30521,\n  \"tens</w>\": 14062,\n  \"tense</w>\": 23518,\n  \"tension</w>\": 15221,\n  \"tensions</w>\": 24224,\n  \"tenstein</w>\": 49139,\n  \"tent\": 18505,\n  \"tent</w>\": 10782,\n  \"tentative</w>\": 48238,\n  \"tenth</w>\": 27483,\n  \"tention</w>\": 12191,\n  \"tents</w>\": 30730,\n  \"tenure</w>\": 30739,\n  \"teo</w>\": 18665,\n  \"tep</w>\": 31806,\n  \"tequ\": 17502,\n  \"tequila</w>\": 18510,\n  \"ter\": 704,\n  \"ter</w>\": 652,\n  \"tera</w>\": 15155,\n  \"teras</w>\": 44830,\n  \"tere\": 11329,\n  \"tered\": 49272,\n  \"tered</w>\": 4389,\n  \"terence</w>\": 33806,\n  \"teresa</w>\": 19081,\n  \"teri</w>\": 30917,\n  \"teria</w>\": 22685,\n  \"terie</w>\": 42276,\n  \"tering</w>\": 7929,\n  \"term\": 40991,\n  \"term</w>\": 4780,\n  \"termin\": 4766,\n  \"terminal</w>\": 11816,\n  \"terminals</w>\": 44091,\n  \"terminator</w>\": 29609,\n  \"terminology</w>\": 48896,\n  \"terms</w>\": 8663,\n  \"tern\": 41572,\n  \"tern</w>\": 12959,\n  \"terns</w>\": 25251,\n  \"tero\": 20727,\n  \"tero</w>\": 24697,\n  \"terps</w>\": 41471,\n  \"terr\": 3921,\n  \"terra\": 22366,\n  \"terra</w>\": 18816,\n  \"terrac\": 28549,\n  \"terrace</w>\": 13820,\n  \"terraces</w>\": 47508,\n  \"terracotta</w>\": 45123,\n  \"terrain</w>\": 20184,\n  \"terran\": 43726,\n  \"terre\": 33888,\n  \"terre</w>\": 27537,\n  \"terrell</w>\": 39494,\n  \"terrence</w>\": 38746,\n  \"terrestrial</w>\": 46299,\n  \"terri\": 4504,\n  \"terri</w>\": 36722,\n  \"terrible</w>\": 9741,\n  \"terribly</w>\": 34558,\n  \"terrier</w>\": 14455,\n  \"terriers</w>\": 47047,\n  \"terrific</w>\": 13837,\n  \"terrified</w>\": 28204,\n  \"terrifying</w>\": 18526,\n  \"territ\": 10720,\n  \"territorial</w>\": 39163,\n  \"territories</w>\": 32846,\n  \"territory</w>\": 13936,\n  \"terror\": 9596,\n  \"terror</w>\": 9327,\n  \"terrori\": 6836,\n  \"terrorism</w>\": 10583,\n  \"terrorist</w>\": 10575,\n  \"terrorists</w>\": 12835,\n  \"terry\": 19378,\n  \"terry</w>\": 8561,\n  \"ters\": 24102,\n  \"ters</w>\": 1737,\n  \"terti\": 48386,\n  \"tery</w>\": 4184,\n  \"tes\": 8019,\n  \"tes</w>\": 3609,\n  \"tesco</w>\": 15434,\n  \"tese</w>\": 33320,\n  \"tesla</w>\": 12254,\n  \"tess\": 21807,\n  \"tess</w>\": 20840,\n  \"tessa</w>\": 32063,\n  \"test\": 7738,\n  \"test</w>\": 1628,\n  \"testam\": 23477,\n  \"testament</w>\": 24609,\n  \"tested</w>\": 10576,\n  \"tester</w>\": 32707,\n  \"testi\": 18373,\n  \"testic\": 42364,\n  \"testify</w>\": 33088,\n  \"testifying</w>\": 46347,\n  \"testim\": 12553,\n  \"testimonial</w>\": 28834,\n  \"testimony</w>\": 18672,\n  \"testing</w>\": 4967,\n  \"testo\": 42428,\n  \"testosterone</w>\": 45168,\n  \"tests</w>\": 8715,\n  \"tet\": 40468,\n  \"tet</w>\": 13275,\n  \"tetra\": 40902,\n  \"tetris</w>\": 45934,\n  \"teu\": 47152,\n  \"teuk</w>\": 39979,\n  \"teur</w>\": 27120,\n  \"tex\": 2056,\n  \"tex</w>\": 11728,\n  \"texan\": 35287,\n  \"texan</w>\": 38386,\n  \"texans</w>\": 17580,\n  \"texanscheer</w>\": 43717,\n  \"texas\": 15713,\n  \"texas</w>\": 3403,\n  \"texaste\": 46469,\n  \"text\": 18169,\n  \"text</w>\": 4160,\n  \"textbook</w>\": 25952,\n  \"textbooks</w>\": 44041,\n  \"texted</w>\": 29004,\n  \"textile</w>\": 19789,\n  \"textiles</w>\": 24326,\n  \"texting</w>\": 18600,\n  \"texts</w>\": 12767,\n  \"texture</w>\": 16505,\n  \"textured</w>\": 32168,\n  \"textures</w>\": 28063,\n  \"tey</w>\": 32395,\n  \"tez</w>\": 22664,\n  \"tf\": 18828,\n  \"tf</w>\": 5001,\n  \"tfc</w>\": 30186,\n  \"tfl</w>\": 29918,\n  \"tford</w>\": 22493,\n  \"tful</w>\": 17108,\n  \"tfw</w>\": 16741,\n  \"tg\": 7665,\n  \"tg</w>\": 11981,\n  \"tgif</w>\": 14483,\n  \"th\": 513,\n  \"th</w>\": 640,\n  \"tha\": 18470,\n  \"tha</w>\": 4715,\n  \"thab\": 38219,\n  \"thad\": 48339,\n  \"thai\": 28054,\n  \"thai</w>\": 8825,\n  \"thail\": 7258,\n  \"thailand</w>\": 7469,\n  \"thak\": 22801,\n  \"thakur</w>\": 38427,\n  \"thal\": 7967,\n  \"thal</w>\": 12323,\n  \"thala</w>\": 17784,\n  \"thalai\": 25206,\n  \"thalaivar</w>\": 44918,\n  \"thalap\": 39789,\n  \"thalapathy\": 45405,\n  \"thalapathy</w>\": 23324,\n  \"thall</w>\": 36007,\n  \"tham\": 11761,\n  \"tham</w>\": 8896,\n  \"thames\": 43472,\n  \"thames</w>\": 15321,\n  \"than\": 792,\n  \"than</w>\": 1126,\n  \"thand\": 44465,\n  \"thane</w>\": 21463,\n  \"thang</w>\": 24870,\n  \"thani</w>\": 31322,\n  \"thank\": 2790,\n  \"thank</w>\": 1144,\n  \"thanked</w>\": 32079,\n  \"thankful\": 38839,\n  \"thankful</w>\": 6217,\n  \"thankfully</w>\": 22089,\n  \"thanking</w>\": 21989,\n  \"thanks\": 5672,\n  \"thanks</w>\": 1085,\n  \"thanksgiving\": 45732,\n  \"thanksgiving</w>\": 6167,\n  \"thanku</w>\": 45710,\n  \"thankyou\": 18050,\n  \"thankyou</w>\": 9911,\n  \"thanniversary</w>\": 35564,\n  \"thanos</w>\": 36709,\n  \"thanx</w>\": 25095,\n  \"thar\": 14396,\n  \"thar</w>\": 38843,\n  \"thard</w>\": 43474,\n  \"that\": 6303,\n  \"that</w>\": 682,\n  \"thatcher</w>\": 32496,\n  \"thats\": 44636,\n  \"thats</w>\": 9254,\n  \"thaw\": 26081,\n  \"thaw</w>\": 47229,\n  \"thbewithyou</w>\": 41067,\n  \"thc</w>\": 20091,\n  \"thcentury</w>\": 49111,\n  \"thd</w>\": 28219,\n  \"thday</w>\": 37801,\n  \"the\": 599,\n  \"the</w>\": 518,\n  \"thea\": 15935,\n  \"thea</w>\": 25429,\n  \"thead</w>\": 25259,\n  \"theal\": 45728,\n  \"thealth</w>\": 31398,\n  \"thear\": 43283,\n  \"theart\": 44678,\n  \"theast</w>\": 8378,\n  \"theastern</w>\": 17877,\n  \"theat\": 2263,\n  \"theater\": 39438,\n  \"theater</w>\": 6128,\n  \"theaters</w>\": 14689,\n  \"theatre\": 19857,\n  \"theatre</w>\": 3292,\n  \"theatres</w>\": 21680,\n  \"theatrical</w>\": 26833,\n  \"theband</w>\": 27695,\n  \"thebeatles</w>\": 35645,\n  \"thebest\": 40883,\n  \"thebest</w>\": 25856,\n  \"thebig\": 24732,\n  \"theblack\": 47718,\n  \"thec\": 48659,\n  \"thed</w>\": 31405,\n  \"thedaily\": 33550,\n  \"theday</w>\": 4408,\n  \"thedream</w>\": 39417,\n  \"thee\": 44475,\n  \"thee</w>\": 15108,\n  \"theeconomist</w>\": 44518,\n  \"theellenshow</w>\": 35342,\n  \"thefilm</w>\": 31665,\n  \"theflash</w>\": 25434,\n  \"theforce\": 40002,\n  \"theforceawakens</w>\": 48033,\n  \"theft</w>\": 13286,\n  \"thefuture</w>\": 34287,\n  \"thegame</w>\": 24428,\n  \"thegood\": 28594,\n  \"thegreat\": 28721,\n  \"thei\": 44522,\n  \"their</w>\": 911,\n  \"theirs</w>\": 29297,\n  \"thel\": 5403,\n  \"thelast\": 23495,\n  \"thelastjedi</w>\": 47992,\n  \"theless</w>\": 27712,\n  \"theli\": 15277,\n  \"thelittle\": 46872,\n  \"thelo\": 47036,\n  \"thelove\": 40668,\n  \"thelove</w>\": 43200,\n  \"them\": 5435,\n  \"them</w>\": 1180,\n  \"themasters</w>\": 48378,\n  \"theme\": 38524,\n  \"theme</w>\": 5849,\n  \"themed</w>\": 10126,\n  \"themes</w>\": 17849,\n  \"themet</w>\": 48183,\n  \"themovie</w>\": 27062,\n  \"themselves</w>\": 6503,\n  \"then\": 5929,\n  \"then</w>\": 1594,\n  \"thenburg</w>\": 45209,\n  \"thene\": 17012,\n  \"thenew\": 24212,\n  \"thenext\": 47881,\n  \"thenight</w>\": 43336,\n  \"theno\": 37172,\n  \"thenorth</w>\": 34338,\n  \"theo\": 17043,\n  \"theo</w>\": 18084,\n  \"theod\": 26653,\n  \"theodore</w>\": 30743,\n  \"theological</w>\": 41162,\n  \"theology</w>\": 24095,\n  \"theon</w>\": 34653,\n  \"theone</w>\": 46231,\n  \"theopen</w>\": 41438,\n  \"theore\": 22690,\n  \"theoretical</w>\": 35585,\n  \"theori\": 34804,\n  \"theories</w>\": 23937,\n  \"theory</w>\": 7143,\n  \"thepeople</w>\": 33597,\n  \"thepersonal\": 29981,\n  \"thepersonalnetwork</w>\": 30016,\n  \"thephoto\": 18303,\n  \"thephotohour</w>\": 18607,\n  \"ther\": 1160,\n  \"ther</w>\": 743,\n  \"therap\": 4499,\n  \"therapeu\": 19332,\n  \"therapeutic</w>\": 23240,\n  \"therapeutics</w>\": 49101,\n  \"therapies</w>\": 30179,\n  \"therapist</w>\": 20608,\n  \"therapists</w>\": 34763,\n  \"therapper</w>\": 49340,\n  \"therapy</w>\": 5257,\n  \"there\": 5283,\n  \"there</w>\": 997,\n  \"thereal\": 8074,\n  \"thereal</w>\": 41140,\n  \"thereby</w>\": 43308,\n  \"thered</w>\": 10208,\n  \"therefore</w>\": 16865,\n  \"theres</w>\": 18494,\n  \"theresa</w>\": 14126,\n  \"therese</w>\": 47996,\n  \"theresistance</w>\": 22845,\n  \"theri\": 28967,\n  \"theri</w>\": 45297,\n  \"therine\": 26807,\n  \"therine</w>\": 9239,\n  \"thering</w>\": 7891,\n  \"therland</w>\": 25351,\n  \"thermal</w>\": 13689,\n  \"thermo\": 22303,\n  \"thermom\": 31138,\n  \"thermometer</w>\": 38172,\n  \"thermost\": 42391,\n  \"thern\": 10919,\n  \"thern</w>\": 3137,\n  \"thero\": 13165,\n  \"theroad</w>\": 29807,\n  \"therock</w>\": 30036,\n  \"theroy\": 38146,\n  \"thers</w>\": 1959,\n  \"thes\": 40556,\n  \"thes</w>\": 6460,\n  \"thescript</w>\": 47061,\n  \"these\": 40366,\n  \"these</w>\": 1071,\n  \"theses</w>\": 39388,\n  \"thesimpsons</w>\": 45513,\n  \"thesims</w>\": 34192,\n  \"thesis</w>\": 10673,\n  \"thessal\": 41491,\n  \"thessaloni\": 41753,\n  \"thest</w>\": 35343,\n  \"thesun</w>\": 45617,\n  \"theta</w>\": 27694,\n  \"thetic</w>\": 7954,\n  \"thetimes</w>\": 36039,\n  \"thevamp\": 33701,\n  \"thevoice\": 47206,\n  \"thevoice</w>\": 30258,\n  \"thewalkingdead</w>\": 18087,\n  \"thewanted</w>\": 43008,\n  \"theworld\": 44988,\n  \"theworld</w>\": 17475,\n  \"thex\": 35990,\n  \"they\": 15174,\n  \"they</w>\": 889,\n  \"theyre</w>\": 28266,\n  \"thfc</w>\": 17729,\n  \"thi\": 2362,\n  \"thi</w>\": 9111,\n  \"thia</w>\": 17943,\n  \"thiago</w>\": 44537,\n  \"thian</w>\": 23214,\n  \"thians</w>\": 28187,\n  \"thibau\": 48351,\n  \"thic\": 26107,\n  \"thic</w>\": 11794,\n  \"thick\": 18417,\n  \"thick</w>\": 11006,\n  \"thicker</w>\": 43302,\n  \"thickness</w>\": 40754,\n  \"thief</w>\": 18508,\n  \"thier</w>\": 25595,\n  \"thierry</w>\": 32929,\n  \"thieves</w>\": 17899,\n  \"thigh\": 47124,\n  \"thigh</w>\": 22877,\n  \"thighs</w>\": 30847,\n  \"thik</w>\": 20512,\n  \"thika</w>\": 44619,\n  \"thill</w>\": 31266,\n  \"thim\": 42331,\n  \"thin\": 2178,\n  \"thin</w>\": 7847,\n  \"thine</w>\": 47192,\n  \"thing\": 7499,\n  \"thing</w>\": 946,\n  \"things\": 30670,\n  \"things</w>\": 1739,\n  \"thingsto\": 43924,\n  \"thingy</w>\": 36888,\n  \"think\": 9820,\n  \"think</w>\": 1331,\n  \"thinkbig\": 26015,\n  \"thinkbigsundaywithmarsha</w>\": 26666,\n  \"thinker</w>\": 34577,\n  \"thinkers</w>\": 32779,\n  \"thinkin</w>\": 34443,\n  \"thinking</w>\": 3291,\n  \"thinks</w>\": 6109,\n  \"thinner</w>\": 47247,\n  \"thir\": 6030,\n  \"third\": 32102,\n  \"third</w>\": 3981,\n  \"thirds</w>\": 42582,\n  \"thirst</w>\": 23563,\n  \"thirsty\": 39731,\n  \"thirsty</w>\": 17521,\n  \"thirteen</w>\": 34209,\n  \"thirty</w>\": 20813,\n  \"thiru\": 43292,\n  \"this\": 4340,\n  \"this</w>\": 589,\n  \"thisday</w>\": 6532,\n  \"thisdayin\": 33641,\n  \"thisdayinhistory</w>\": 46913,\n  \"thisi\": 7299,\n  \"thisis\": 14887,\n  \"thismorning</w>\": 36245,\n  \"thistle</w>\": 29039,\n  \"thistory</w>\": 28904,\n  \"thium</w>\": 21804,\n  \"thletics</w>\": 17765,\n  \"thm</w>\": 10407,\n  \"thman</w>\": 30079,\n  \"thms</w>\": 19874,\n  \"thn\": 44155,\n  \"thn</w>\": 45587,\n  \"thnx</w>\": 25480,\n  \"tho\": 1325,\n  \"tho</w>\": 5025,\n  \"thof\": 18943,\n  \"thofjuly</w>\": 21613,\n  \"thol\": 29319,\n  \"thole</w>\": 31029,\n  \"tholes</w>\": 42465,\n  \"thology</w>\": 9881,\n  \"thom\": 2585,\n  \"thom</w>\": 24094,\n  \"thomas\": 12574,\n  \"thomas</w>\": 3888,\n  \"thome</w>\": 21289,\n  \"thomp\": 37274,\n  \"thompson\": 42181,\n  \"thompson</w>\": 8535,\n  \"thomson</w>\": 24151,\n  \"thon\": 38776,\n  \"thon</w>\": 8924,\n  \"thong</w>\": 37058,\n  \"thood</w>\": 15623,\n  \"thor\": 4130,\n  \"thor</w>\": 13691,\n  \"thora</w>\": 46866,\n  \"thorn\": 12957,\n  \"thorn</w>\": 18466,\n  \"thorne</w>\": 18025,\n  \"thorns</w>\": 33650,\n  \"thornton</w>\": 23592,\n  \"thorough\": 15294,\n  \"thorough</w>\": 34788,\n  \"thoroughbred</w>\": 43248,\n  \"thoroughly</w>\": 19750,\n  \"thorpe</w>\": 18099,\n  \"thos</w>\": 41965,\n  \"those</w>\": 1753,\n  \"thot</w>\": 33736,\n  \"thou\": 1513,\n  \"thou</w>\": 17781,\n  \"though</w>\": 2846,\n  \"thought\": 23948,\n  \"thought</w>\": 2449,\n  \"thoughtful</w>\": 19592,\n  \"thoughts</w>\": 3618,\n  \"thour</w>\": 27125,\n  \"thousand</w>\": 9344,\n  \"thousands</w>\": 7089,\n  \"thouse\": 40318,\n  \"thouse</w>\": 7819,\n  \"thoven</w>\": 23078,\n  \"thr\": 1111,\n  \"thr</w>\": 19138,\n  \"thra\": 17761,\n  \"thra</w>\": 32797,\n  \"thrash</w>\": 38262,\n  \"thre\": 1607,\n  \"thread\": 31108,\n  \"thread</w>\": 8815,\n  \"threads</w>\": 24957,\n  \"threat\": 7527,\n  \"threat</w>\": 7212,\n  \"threaten</w>\": 26097,\n  \"threatened</w>\": 16391,\n  \"threatening</w>\": 16400,\n  \"threatens</w>\": 20555,\n  \"threats</w>\": 12766,\n  \"three\": 21615,\n  \"three</w>\": 2097,\n  \"thren</w>\": 41776,\n  \"thresh\": 29779,\n  \"threshold</w>\": 33791,\n  \"threw</w>\": 12746,\n  \"thri\": 8713,\n  \"thrift</w>\": 27779,\n  \"thrill</w>\": 21023,\n  \"thrilled</w>\": 7879,\n  \"thriller</w>\": 9653,\n  \"thrilling</w>\": 20101,\n  \"thrills</w>\": 39829,\n  \"thrive</w>\": 17669,\n  \"thriving</w>\": 22677,\n  \"thro\": 2101,\n  \"thro</w>\": 28624,\n  \"throat</w>\": 16371,\n  \"thrombo\": 47585,\n  \"throne</w>\": 15999,\n  \"thrones</w>\": 8072,\n  \"throp</w>\": 34939,\n  \"throttle</w>\": 37139,\n  \"through\": 6091,\n  \"through</w>\": 1417,\n  \"throughout</w>\": 6721,\n  \"throughs</w>\": 48278,\n  \"throw\": 3315,\n  \"throw</w>\": 6293,\n  \"throwback\": 6001,\n  \"throwback</w>\": 5058,\n  \"throwbackthursday</w>\": 6326,\n  \"thrower</w>\": 40199,\n  \"throwing</w>\": 9734,\n  \"thrown</w>\": 15079,\n  \"throws</w>\": 14723,\n  \"thru\": 23856,\n  \"thru</w>\": 6162,\n  \"thrush</w>\": 46133,\n  \"thrust</w>\": 40202,\n  \"ths</w>\": 2079,\n  \"tht</w>\": 23554,\n  \"thu\": 3837,\n  \"thu</w>\": 14153,\n  \"thub</w>\": 25660,\n  \"thug\": 37212,\n  \"thug</w>\": 18137,\n  \"thugs</w>\": 27686,\n  \"thul\": 28368,\n  \"thulhu</w>\": 37560,\n  \"thum\": 14679,\n  \"thumb\": 19514,\n  \"thumb</w>\": 18674,\n  \"thumbnail</w>\": 32365,\n  \"thumbs</w>\": 17599,\n  \"thun\": 32267,\n  \"thunder\": 6161,\n  \"thunder</w>\": 8951,\n  \"thunderbird</w>\": 45131,\n  \"thunderbirds</w>\": 44286,\n  \"thunderbolt</w>\": 43596,\n  \"thunderstorm</w>\": 12005,\n  \"thunderstorms</w>\": 19525,\n  \"thunt</w>\": 46763,\n  \"thur\": 1837,\n  \"thur</w>\": 21704,\n  \"thurman</w>\": 41291,\n  \"thurs</w>\": 9908,\n  \"thursday\": 11218,\n  \"thursday</w>\": 2221,\n  \"thursdaymotivation</w>\": 39375,\n  \"thursdays</w>\": 21444,\n  \"thursdaythoughts</w>\": 14866,\n  \"thurst</w>\": 33970,\n  \"thus</w>\": 12457,\n  \"thusi\": 9488,\n  \"thwaite</w>\": 48469,\n  \"thweeksary</w>\": 30871,\n  \"thx</w>\": 5913,\n  \"thy\": 7804,\n  \"thy</w>\": 3362,\n  \"thyme</w>\": 29805,\n  \"thyro\": 25174,\n  \"thyroid</w>\": 32558,\n  \"ti\": 555,\n  \"ti</w>\": 2605,\n  \"tia</w>\": 6709,\n  \"tial</w>\": 2826,\n  \"tially</w>\": 14503,\n  \"tian\": 23011,\n  \"tian</w>\": 8125,\n  \"tians</w>\": 35182,\n  \"tiara</w>\": 38322,\n  \"tib\": 47868,\n  \"tibet\": 19927,\n  \"tibet</w>\": 22234,\n  \"tibetan</w>\": 24057,\n  \"tible</w>\": 11453,\n  \"tic\": 890,\n  \"tic</w>\": 1550,\n  \"tica</w>\": 9669,\n  \"tical\": 34191,\n  \"tical</w>\": 4342,\n  \"tically</w>\": 13375,\n  \"ticals</w>\": 30861,\n  \"tice</w>\": 3122,\n  \"tich</w>\": 48769,\n  \"tician</w>\": 43358,\n  \"ticism</w>\": 26491,\n  \"tick\": 24640,\n  \"tick</w>\": 15617,\n  \"ticket\": 25740,\n  \"ticket</w>\": 4500,\n  \"ticketing</w>\": 44432,\n  \"tickets</w>\": 2015,\n  \"ticking</w>\": 35842,\n  \"tickle</w>\": 42999,\n  \"ticks</w>\": 40269,\n  \"tico</w>\": 17670,\n  \"ticon</w>\": 45996,\n  \"tics</w>\": 2419,\n  \"ticul\": 15538,\n  \"ticus</w>\": 44277,\n  \"tid\": 26002,\n  \"tid</w>\": 23727,\n  \"tidal</w>\": 21949,\n  \"tide\": 15698,\n  \"tide</w>\": 9105,\n  \"tides</w>\": 25524,\n  \"tidy</w>\": 23858,\n  \"tie\": 14072,\n  \"tie</w>\": 3422,\n  \"tied</w>\": 9889,\n  \"tiem\": 34762,\n  \"tien</w>\": 47538,\n  \"tiene</w>\": 43438,\n  \"tier\": 14390,\n  \"tier</w>\": 6598,\n  \"tierney</w>\": 45693,\n  \"tiers</w>\": 24604,\n  \"ties\": 25556,\n  \"ties</w>\": 2499,\n  \"tiest</w>\": 18300,\n  \"tiesto</w>\": 46367,\n  \"tif</w>\": 23216,\n  \"tiff\": 11112,\n  \"tiff</w>\": 20699,\n  \"tiffany\": 30467,\n  \"tiffany</w>\": 14446,\n  \"tification</w>\": 43923,\n  \"tified</w>\": 40854,\n  \"tiful</w>\": 29123,\n  \"tify</w>\": 6677,\n  \"tig</w>\": 31999,\n  \"tiger\": 11954,\n  \"tiger</w>\": 6531,\n  \"tigers</w>\": 6934,\n  \"tigh\": 31365,\n  \"tight\": 25763,\n  \"tight</w>\": 9123,\n  \"tighten</w>\": 46653,\n  \"tighter</w>\": 48193,\n  \"tightly</w>\": 37568,\n  \"tights</w>\": 29581,\n  \"tijuana</w>\": 45273,\n  \"tik\": 24986,\n  \"tik</w>\": 32403,\n  \"tiki</w>\": 30107,\n  \"til\": 6124,\n  \"til</w>\": 1763,\n  \"tile\": 26217,\n  \"tile</w>\": 8227,\n  \"tiles</w>\": 10607,\n  \"tility</w>\": 38180,\n  \"till\": 17462,\n  \"till</w>\": 4267,\n  \"tilla</w>\": 26063,\n  \"tillerson</w>\": 47738,\n  \"tilly</w>\": 41199,\n  \"tilt</w>\": 23601,\n  \"tim\": 1292,\n  \"tim</w>\": 3863,\n  \"timate</w>\": 4754,\n  \"timb\": 26627,\n  \"timber\": 14441,\n  \"timber</w>\": 16246,\n  \"timberlake</w>\": 28274,\n  \"timbers</w>\": 39911,\n  \"timberwolves</w>\": 41190,\n  \"time\": 3764,\n  \"time</w>\": 788,\n  \"timed</w>\": 32727,\n  \"timehop</w>\": 19944,\n  \"timel\": 23549,\n  \"timelapse</w>\": 48154,\n  \"timeless</w>\": 15558,\n  \"timeline</w>\": 11492,\n  \"timely</w>\": 19250,\n  \"timeout</w>\": 41536,\n  \"timer</w>\": 19725,\n  \"timers</w>\": 44574,\n  \"times\": 26445,\n  \"times</w>\": 1661,\n  \"timesnow</w>\": 45487,\n  \"timesof\": 32522,\n  \"timesofindia</w>\": 44182,\n  \"timetable</w>\": 31971,\n  \"timeto\": 29187,\n  \"timing</w>\": 13624,\n  \"timm\": 22444,\n  \"timmy</w>\": 33252,\n  \"timo\": 13390,\n  \"timo</w>\": 33777,\n  \"timothy\": 42087,\n  \"timothy</w>\": 18560,\n  \"timp\": 42166,\n  \"tin\": 1310,\n  \"tin</w>\": 5420,\n  \"tina</w>\": 9257,\n  \"tinder</w>\": 24287,\n  \"tine</w>\": 22341,\n  \"ting\": 7451,\n  \"ting</w>\": 694,\n  \"tinged</w>\": 44829,\n  \"tings</w>\": 35332,\n  \"tini</w>\": 26839,\n  \"tink\": 39278,\n  \"tinker\": 45272,\n  \"tinker</w>\": 40910,\n  \"tino</w>\": 20538,\n  \"tins</w>\": 37359,\n  \"tint</w>\": 40497,\n  \"tinted</w>\": 42618,\n  \"tiny\": 21716,\n  \"tiny</w>\": 5591,\n  \"tio</w>\": 27562,\n  \"tion\": 2274,\n  \"tion</w>\": 740,\n  \"tional\": 22460,\n  \"tional</w>\": 2986,\n  \"tionality</w>\": 24514,\n  \"tionally</w>\": 12409,\n  \"tionary</w>\": 8381,\n  \"tione\": 44318,\n  \"tioned</w>\": 9083,\n  \"tioning</w>\": 15528,\n  \"tionist</w>\": 25732,\n  \"tions</w>\": 1371,\n  \"tious</w>\": 14255,\n  \"tip\": 15383,\n  \"tip</w>\": 4623,\n  \"tipoff</w>\": 44521,\n  \"tipp\": 32294,\n  \"tipped</w>\": 31878,\n  \"tipper\": 38095,\n  \"tipperary</w>\": 45612,\n  \"tipping</w>\": 27827,\n  \"tips</w>\": 3173,\n  \"tipton</w>\": 48809,\n  \"tiptuesday</w>\": 42112,\n  \"tique</w>\": 37772,\n  \"tir\": 25467,\n  \"tir</w>\": 38462,\n  \"tire\": 29128,\n  \"tire</w>\": 9362,\n  \"tired</w>\": 6533,\n  \"tireless</w>\": 39835,\n  \"tirelessly</w>\": 41548,\n  \"tires</w>\": 15533,\n  \"tiring</w>\": 42630,\n  \"tiru\": 36033,\n  \"tis\": 7839,\n  \"tis</w>\": 7394,\n  \"tise</w>\": 13745,\n  \"tisgarh</w>\": 40538,\n  \"tish\": 45148,\n  \"tish</w>\": 28784,\n  \"tism</w>\": 27113,\n  \"tiss\": 28155,\n  \"tissue</w>\": 15368,\n  \"tissues</w>\": 32172,\n  \"tist</w>\": 7902,\n  \"tista</w>\": 25580,\n  \"tists</w>\": 25944,\n  \"tit\": 1991,\n  \"tit</w>\": 13202,\n  \"tita</w>\": 40936,\n  \"titan\": 13496,\n  \"titan</w>\": 15516,\n  \"titanic</w>\": 20729,\n  \"titanium</w>\": 24409,\n  \"titans</w>\": 13066,\n  \"titi\": 17434,\n  \"titi</w>\": 48504,\n  \"title\": 28033,\n  \"title</w>\": 3644,\n  \"titled</w>\": 9939,\n  \"titles</w>\": 9780,\n  \"tito</w>\": 26838,\n  \"titus</w>\": 36102,\n  \"tium</w>\": 21975,\n  \"tiv\": 1835,\n  \"tiva</w>\": 41886,\n  \"tive\": 14640,\n  \"tive</w>\": 1420,\n  \"tively</w>\": 9883,\n  \"tiveness</w>\": 20955,\n  \"tives</w>\": 7570,\n  \"tivity</w>\": 9859,\n  \"tivo</w>\": 32162,\n  \"tix</w>\": 5835,\n  \"tiz</w>\": 19376,\n  \"tj\": 18890,\n  \"tj</w>\": 18988,\n  \"tk\": 22344,\n  \"tk</w>\": 20676,\n  \"tko</w>\": 37347,\n  \"tks</w>\": 38739,\n  \"tl\": 14325,\n  \"tl</w>\": 8190,\n  \"tland</w>\": 30697,\n  \"tlap</w>\": 41976,\n  \"tlc</w>\": 22047,\n  \"tle\": 39141,\n  \"tle</w>\": 5825,\n  \"tles</w>\": 39363,\n  \"tless</w>\": 17427,\n  \"tlot</w>\": 41080,\n  \"tls</w>\": 47367,\n  \"tly\": 37483,\n  \"tly</w>\": 1646,\n  \"tm\": 9430,\n  \"tm</w>\": 7789,\n  \"tman</w>\": 20796,\n  \"tmc</w>\": 35263,\n  \"tment</w>\": 26485,\n  \"tml\": 39445,\n  \"tmltalk</w>\": 42260,\n  \"tmnt</w>\": 32444,\n  \"tmobile</w>\": 34901,\n  \"tmr</w>\": 35906,\n  \"tmrw</w>\": 16496,\n  \"tms</w>\": 44496,\n  \"tmund</w>\": 23801,\n  \"tmw</w>\": 45827,\n  \"tmz</w>\": 37248,\n  \"tn\": 3827,\n  \"tn</w>\": 7248,\n  \"tna</w>\": 21150,\n  \"tnam</w>\": 8079,\n  \"tner</w>\": 34922,\n  \"tness</w>\": 35212,\n  \"tney</w>\": 9523,\n  \"tng</w>\": 35898,\n  \"tnt</w>\": 20659,\n  \"tnx</w>\": 38220,\n  \"to\": 580,\n  \"to</w>\": 531,\n  \"toa\": 17916,\n  \"toad</w>\": 26096,\n  \"toast\": 24654,\n  \"toast</w>\": 10920,\n  \"toasted</w>\": 23533,\n  \"toaster</w>\": 39061,\n  \"toasty</w>\": 44726,\n  \"tob</w>\": 24260,\n  \"tobac\": 12611,\n  \"tobacco</w>\": 13905,\n  \"tobago</w>\": 39482,\n  \"tobe\": 17534,\n  \"tobe</w>\": 28740,\n  \"tober\": 18162,\n  \"tober</w>\": 2925,\n  \"toberfest</w>\": 26249,\n  \"tobi\": 40335,\n  \"tobi</w>\": 48374,\n  \"tobias</w>\": 32464,\n  \"tobin</w>\": 42466,\n  \"toby\": 29659,\n  \"toby</w>\": 18333,\n  \"toc\": 41907,\n  \"toc</w>\": 30643,\n  \"tock</w>\": 25274,\n  \"tod\": 38239,\n  \"tod</w>\": 33568,\n  \"toda</w>\": 47141,\n  \"todas</w>\": 36150,\n  \"today\": 11800,\n  \"today</w>\": 721,\n  \"todayin\": 32957,\n  \"todays</w>\": 13513,\n  \"todayshow</w>\": 29739,\n  \"todd\": 10398,\n  \"todd</w>\": 9951,\n  \"toddler</w>\": 17772,\n  \"toddlers</w>\": 36719,\n  \"toddy</w>\": 38926,\n  \"todo\": 48857,\n  \"todo</w>\": 23087,\n  \"todos</w>\": 33355,\n  \"toe\": 47756,\n  \"toe</w>\": 11344,\n  \"toes</w>\": 16511,\n  \"tof\": 6659,\n  \"toff</w>\": 27319,\n  \"toffee</w>\": 34880,\n  \"tofficial</w>\": 47953,\n  \"tofthe\": 23678,\n  \"toftheday</w>\": 20566,\n  \"tofu</w>\": 24692,\n  \"tog</w>\": 45715,\n  \"toge\": 1903,\n  \"together\": 17858,\n  \"together</w>\": 1952,\n  \"togo</w>\": 26729,\n  \"tography</w>\": 33968,\n  \"toh</w>\": 26851,\n  \"toi\": 7472,\n  \"toi</w>\": 26941,\n  \"toid</w>\": 49124,\n  \"toile\": 43148,\n  \"toilet</w>\": 11071,\n  \"toilets</w>\": 24027,\n  \"toire</w>\": 39534,\n  \"tok\": 16690,\n  \"tok</w>\": 27010,\n  \"token\": 32634,\n  \"token</w>\": 17134,\n  \"tokens</w>\": 23562,\n  \"tokyo\": 35038,\n  \"tokyo</w>\": 6667,\n  \"tol\": 4678,\n  \"tol</w>\": 32962,\n  \"told</w>\": 3527,\n  \"tole\": 15677,\n  \"toledo</w>\": 19812,\n  \"toler\": 12150,\n  \"tolerance</w>\": 20377,\n  \"tolerant</w>\": 38536,\n  \"tolerate</w>\": 35556,\n  \"tolkien</w>\": 32989,\n  \"toll\": 44090,\n  \"toll</w>\": 14155,\n  \"tollywood</w>\": 42016,\n  \"tology</w>\": 34799,\n  \"tom\": 999,\n  \"tom</w>\": 2435,\n  \"toma\": 42360,\n  \"toma</w>\": 44710,\n  \"tomas\": 35944,\n  \"tomas</w>\": 27178,\n  \"tomat\": 12041,\n  \"tomato</w>\": 9867,\n  \"tomatoes</w>\": 13004,\n  \"tomb\": 37187,\n  \"tomb</w>\": 15582,\n  \"tombs</w>\": 48613,\n  \"tombstone</w>\": 45729,\n  \"tome\": 24137,\n  \"tome</w>\": 24283,\n  \"tomi</w>\": 46290,\n  \"tomlin</w>\": 46649,\n  \"tomlinson</w>\": 17484,\n  \"tommorow</w>\": 42871,\n  \"tommy\": 16573,\n  \"tommy</w>\": 8876,\n  \"tomo\": 31223,\n  \"tomo</w>\": 34434,\n  \"tomor\": 1277,\n  \"tomorrow\": 19728,\n  \"tomorrow</w>\": 1293,\n  \"tomorrowland</w>\": 34951,\n  \"tomorrows</w>\": 32258,\n  \"tomorrowspaper\": 35005,\n  \"tomorrowspaperstoday</w>\": 35190,\n  \"tomp\": 43544,\n  \"tompkins</w>\": 49068,\n  \"toms</w>\": 10545,\n  \"tomy</w>\": 18730,\n  \"ton\": 838,\n  \"ton</w>\": 917,\n  \"tona</w>\": 13459,\n  \"tone\": 32366,\n  \"tone</w>\": 8408,\n  \"toned</w>\": 29426,\n  \"toner</w>\": 40614,\n  \"tones</w>\": 14744,\n  \"tong</w>\": 21510,\n  \"tonga</w>\": 37882,\n  \"tongue\": 44820,\n  \"tongue</w>\": 13626,\n  \"tongues</w>\": 39837,\n  \"toni\": 17766,\n  \"toni</w>\": 17171,\n  \"tonic</w>\": 17808,\n  \"tonics</w>\": 34647,\n  \"tonight</w>\": 1009,\n  \"tonights</w>\": 23312,\n  \"tonite</w>\": 13449,\n  \"tonka</w>\": 42781,\n  \"tonline</w>\": 45867,\n  \"tonne</w>\": 42450,\n  \"tonnes</w>\": 24813,\n  \"tons</w>\": 7555,\n  \"tony\": 9150,\n  \"tony</w>\": 4767,\n  \"tonyawards</w>\": 46068,\n  \"too\": 1843,\n  \"too</w>\": 1256,\n  \"took</w>\": 2280,\n  \"tool\": 13718,\n  \"tool</w>\": 5999,\n  \"toolbox</w>\": 46599,\n  \"toolkit</w>\": 29849,\n  \"tools</w>\": 5771,\n  \"toom\": 27550,\n  \"toon\": 24664,\n  \"toon</w>\": 19701,\n  \"toonami</w>\": 48336,\n  \"toons</w>\": 35345,\n  \"toor\": 42590,\n  \"tooth\": 15316,\n  \"tooth</w>\": 12030,\n  \"toothbrush</w>\": 36841,\n  \"toothpaste</w>\": 37322,\n  \"tooting</w>\": 42969,\n  \"top\": 5534,\n  \"top</w>\": 1253,\n  \"topaz</w>\": 46125,\n  \"tope\": 32149,\n  \"tope</w>\": 42239,\n  \"topeka</w>\": 46884,\n  \"topia</w>\": 29618,\n  \"topic</w>\": 8720,\n  \"topical</w>\": 37464,\n  \"topics</w>\": 11916,\n  \"topless</w>\": 37415,\n  \"topo\": 23008,\n  \"topoli</w>\": 30152,\n  \"topp\": 19529,\n  \"topped</w>\": 12588,\n  \"topper</w>\": 31780,\n  \"toppers</w>\": 41651,\n  \"topping</w>\": 21071,\n  \"toppings</w>\": 47554,\n  \"topps</w>\": 20201,\n  \"tops</w>\": 8154,\n  \"topshop</w>\": 40953,\n  \"topus</w>\": 21495,\n  \"tor\": 937,\n  \"tor</w>\": 1208,\n  \"tora</w>\": 45147,\n  \"torah</w>\": 37945,\n  \"toral</w>\": 45282,\n  \"torch\": 31921,\n  \"torch</w>\": 15820,\n  \"tore\": 38066,\n  \"tore</w>\": 19385,\n  \"tored</w>\": 38046,\n  \"torg</w>\": 33214,\n  \"tori\": 17689,\n  \"tori</w>\": 17539,\n  \"toria</w>\": 23732,\n  \"torial</w>\": 28029,\n  \"torian</w>\": 48399,\n  \"tories</w>\": 14193,\n  \"torino</w>\": 29178,\n  \"torio</w>\": 34235,\n  \"torn\": 8572,\n  \"torn</w>\": 18023,\n  \"tornad\": 24676,\n  \"tornado</w>\": 9062,\n  \"tornadoes</w>\": 28254,\n  \"toro</w>\": 17892,\n  \"toron\": 37407,\n  \"toronto\": 16866,\n  \"toronto</w>\": 4514,\n  \"torpe\": 34093,\n  \"torpedo</w>\": 46582,\n  \"torquay</w>\": 45738,\n  \"torque</w>\": 31940,\n  \"torre\": 39563,\n  \"torre</w>\": 38009,\n  \"torrent</w>\": 42317,\n  \"torrential</w>\": 41158,\n  \"torres</w>\": 16049,\n  \"tors</w>\": 2546,\n  \"tortilla</w>\": 32683,\n  \"torto\": 24170,\n  \"tortoise</w>\": 30178,\n  \"torture</w>\": 16013,\n  \"tortured</w>\": 29900,\n  \"tory\": 29390,\n  \"tory</w>\": 4214,\n  \"tos</w>\": 6094,\n  \"tosc\": 37719,\n  \"tose</w>\": 38154,\n  \"tosh</w>\": 17109,\n  \"toshi\": 31744,\n  \"toss</w>\": 19656,\n  \"tossed</w>\": 31296,\n  \"tot\": 4618,\n  \"tot</w>\": 23659,\n  \"total\": 13507,\n  \"total</w>\": 4445,\n  \"totally</w>\": 5440,\n  \"totals</w>\": 25772,\n  \"tote\": 48145,\n  \"tote</w>\": 19031,\n  \"totem</w>\": 45376,\n  \"totes</w>\": 37199,\n  \"tothe\": 12222,\n  \"toto</w>\": 39823,\n  \"tots</w>\": 24978,\n  \"totten\": 14360,\n  \"tottenham</w>\": 14889,\n  \"tou\": 1879,\n  \"tou</w>\": 29261,\n  \"touch\": 9480,\n  \"touch</w>\": 4526,\n  \"touchdown</w>\": 18664,\n  \"touchdowns</w>\": 37905,\n  \"touched</w>\": 13190,\n  \"touches</w>\": 14832,\n  \"touching</w>\": 14088,\n  \"touchscreen</w>\": 39095,\n  \"tough\": 12063,\n  \"tough</w>\": 5499,\n  \"tougher</w>\": 33722,\n  \"toughest</w>\": 23773,\n  \"toughness</w>\": 45522,\n  \"toulou\": 27145,\n  \"toulouse</w>\": 30267,\n  \"tour\": 2710,\n  \"tour</w>\": 1760,\n  \"tourde\": 39247,\n  \"toured</w>\": 27654,\n  \"touri\": 4224,\n  \"touring</w>\": 11853,\n  \"tourism\": 23661,\n  \"tourism</w>\": 6556,\n  \"tourist</w>\": 12123,\n  \"tourists</w>\": 15546,\n  \"tournament</w>\": 4097,\n  \"tournaments</w>\": 23058,\n  \"tourney</w>\": 12603,\n  \"tours</w>\": 8948,\n  \"tous</w>\": 37424,\n  \"tout</w>\": 22300,\n  \"touts</w>\": 41274,\n  \"tov</w>\": 28970,\n  \"tow\": 11557,\n  \"tow</w>\": 18653,\n  \"toward</w>\": 8508,\n  \"towards</w>\": 4447,\n  \"towed</w>\": 45419,\n  \"towel</w>\": 15953,\n  \"towels</w>\": 26578,\n  \"tower\": 26669,\n  \"tower</w>\": 4730,\n  \"towering</w>\": 39444,\n  \"towers</w>\": 12701,\n  \"towie</w>\": 44613,\n  \"towin</w>\": 45819,\n  \"towing</w>\": 36963,\n  \"town\": 4068,\n  \"town</w>\": 1605,\n  \"townfc</w>\": 33981,\n  \"townhall</w>\": 33408,\n  \"townhouse</w>\": 40178,\n  \"towns</w>\": 14173,\n  \"townsend</w>\": 26826,\n  \"township</w>\": 14622,\n  \"townsville</w>\": 47330,\n  \"towork</w>\": 48233,\n  \"tox\": 7742,\n  \"tox</w>\": 16145,\n  \"toxic\": 27436,\n  \"toxic</w>\": 12348,\n  \"toxicity</w>\": 41234,\n  \"toxin</w>\": 48899,\n  \"toxins</w>\": 36618,\n  \"toy\": 14387,\n  \"toy</w>\": 5988,\n  \"toya</w>\": 37602,\n  \"toyo\": 7644,\n  \"toyota</w>\": 8908,\n  \"toys\": 39508,\n  \"toys</w>\": 7162,\n  \"tp\": 23760,\n  \"tp</w>\": 15188,\n  \"tpp</w>\": 29411,\n  \"tps</w>\": 35246,\n  \"tq</w>\": 43066,\n  \"tr\": 635,\n  \"tr</w>\": 6337,\n  \"tra\": 752,\n  \"tra</w>\": 2483,\n  \"trac\": 2266,\n  \"trace\": 48611,\n  \"trace</w>\": 14767,\n  \"traced</w>\": 47956,\n  \"traces</w>\": 30913,\n  \"tracey</w>\": 25558,\n  \"tracing</w>\": 27897,\n  \"track\": 10887,\n  \"track</w>\": 2700,\n  \"tracked</w>\": 27049,\n  \"tracker</w>\": 18123,\n  \"tracking</w>\": 10428,\n  \"tracklist</w>\": 39777,\n  \"tracks</w>\": 7579,\n  \"tract</w>\": 4690,\n  \"traction</w>\": 10644,\n  \"tractor</w>\": 14607,\n  \"tractors</w>\": 37854,\n  \"tracy\": 32984,\n  \"tracy</w>\": 15508,\n  \"trad\": 48716,\n  \"trad</w>\": 38037,\n  \"trade\": 10457,\n  \"trade</w>\": 3629,\n  \"traded</w>\": 18860,\n  \"trademark</w>\": 25011,\n  \"trader</w>\": 17700,\n  \"traders</w>\": 19112,\n  \"trades</w>\": 18519,\n  \"trading\": 40083,\n  \"trading</w>\": 6520,\n  \"tradio</w>\": 20689,\n  \"tradition\": 20838,\n  \"tradition</w>\": 8784,\n  \"traditional\": 41113,\n  \"traditional</w>\": 5604,\n  \"traditionally</w>\": 35532,\n  \"traditions</w>\": 18016,\n  \"traf\": 3227,\n  \"trafal\": 32461,\n  \"trafalgar</w>\": 36969,\n  \"traff\": 31571,\n  \"traffic\": 12080,\n  \"traffic</w>\": 3399,\n  \"trafficking</w>\": 15983,\n  \"trafford</w>\": 22912,\n  \"trage\": 12430,\n  \"tragedy</w>\": 14082,\n  \"tragic</w>\": 14828,\n  \"tragically</w>\": 39599,\n  \"trail\": 11523,\n  \"trail</w>\": 4921,\n  \"trailblazer</w>\": 41015,\n  \"trailblazers</w>\": 35954,\n  \"trailer</w>\": 4700,\n  \"trailers</w>\": 24862,\n  \"trailing</w>\": 37427,\n  \"trails</w>\": 10633,\n  \"train\": 9122,\n  \"train</w>\": 3231,\n  \"trained</w>\": 10874,\n  \"trainee</w>\": 25795,\n  \"trainees</w>\": 30382,\n  \"trainer</w>\": 9767,\n  \"trainers</w>\": 18871,\n  \"training\": 34508,\n  \"training</w>\": 2199,\n  \"trains</w>\": 9541,\n  \"trait</w>\": 35160,\n  \"traitor</w>\": 31760,\n  \"traitors</w>\": 42633,\n  \"traits</w>\": 25748,\n  \"trajec\": 42042,\n  \"trak</w>\": 24065,\n  \"tral</w>\": 14609,\n  \"tram\": 9800,\n  \"tram</w>\": 17500,\n  \"tramp</w>\": 46289,\n  \"trampol\": 32905,\n  \"trampoline</w>\": 42800,\n  \"tramrahim</w>\": 35220,\n  \"tran\": 1357,\n  \"tran</w>\": 22031,\n  \"trance\": 30584,\n  \"trance</w>\": 18671,\n  \"trancefamily</w>\": 39630,\n  \"trane</w>\": 35779,\n  \"tranqu\": 18912,\n  \"tranquil</w>\": 35764,\n  \"tranquility</w>\": 36688,\n  \"trans\": 1826,\n  \"trans</w>\": 8126,\n  \"transaction</w>\": 24881,\n  \"transactions</w>\": 21653,\n  \"transat\": 37872,\n  \"transatlantic</w>\": 40703,\n  \"transc\": 21073,\n  \"transcend\": 47087,\n  \"transcript</w>\": 39008,\n  \"transcription</w>\": 48765,\n  \"transfer\": 22659,\n  \"transfer</w>\": 7134,\n  \"transferred</w>\": 29700,\n  \"transferring</w>\": 40924,\n  \"transfers</w>\": 21621,\n  \"transform\": 8142,\n  \"transform</w>\": 12288,\n  \"transformation\": 34204,\n  \"transformation</w>\": 7832,\n  \"transformational</w>\": 47135,\n  \"transformationtuesday</w>\": 36511,\n  \"transformative</w>\": 38106,\n  \"transformed</w>\": 17453,\n  \"transformer</w>\": 38235,\n  \"transformers</w>\": 17843,\n  \"transforming\": 44470,\n  \"transforming</w>\": 19251,\n  \"transforms</w>\": 30312,\n  \"transgender</w>\": 17732,\n  \"transi\": 32236,\n  \"transit</w>\": 10174,\n  \"transiti\": 22939,\n  \"transition</w>\": 11391,\n  \"transitional</w>\": 41519,\n  \"transitioning</w>\": 43586,\n  \"transitions</w>\": 39374,\n  \"transl\": 12243,\n  \"translate</w>\": 22655,\n  \"translated</w>\": 20752,\n  \"translates</w>\": 36334,\n  \"translating</w>\": 42156,\n  \"translation</w>\": 12153,\n  \"translations</w>\": 41367,\n  \"translator</w>\": 36230,\n  \"translucent</w>\": 49052,\n  \"transm\": 18861,\n  \"transmission</w>\": 16103,\n  \"transmitted</w>\": 48605,\n  \"transmitter</w>\": 40457,\n  \"transp\": 11726,\n  \"transpa\": 18524,\n  \"transparen\": 16108,\n  \"transparency</w>\": 16828,\n  \"transparent</w>\": 19017,\n  \"transpl\": 16038,\n  \"transplant\": 41871,\n  \"transplant</w>\": 18771,\n  \"transplantation</w>\": 45207,\n  \"transpor\": 19406,\n  \"transport\": 10231,\n  \"transport</w>\": 7362,\n  \"transportation</w>\": 10911,\n  \"transported</w>\": 29089,\n  \"transporter</w>\": 43568,\n  \"transporting</w>\": 42259,\n  \"trap\": 36224,\n  \"trap</w>\": 9677,\n  \"trape\": 42435,\n  \"trapped</w>\": 15592,\n  \"traps</w>\": 28517,\n  \"tras</w>\": 30638,\n  \"trash\": 39215,\n  \"trash</w>\": 9798,\n  \"traum\": 22263,\n  \"trauma</w>\": 13846,\n  \"traumati\": 46613,\n  \"traumatic</w>\": 29958,\n  \"trav\": 7586,\n  \"trav</w>\": 46955,\n  \"trave\": 35357,\n  \"travel\": 2824,\n  \"travel</w>\": 1949,\n  \"travelblog</w>\": 35957,\n  \"travelblogger</w>\": 25494,\n  \"travelchat</w>\": 46455,\n  \"traveled</w>\": 20384,\n  \"traveler</w>\": 17794,\n  \"travelers</w>\": 20644,\n  \"travelgram</w>\": 40069,\n  \"traveling</w>\": 9365,\n  \"travelled</w>\": 23428,\n  \"traveller</w>\": 22546,\n  \"travellers</w>\": 29583,\n  \"travelling</w>\": 11190,\n  \"travelphotography</w>\": 22808,\n  \"travelpics</w>\": 32293,\n  \"travels</w>\": 11472,\n  \"traveltips</w>\": 36260,\n  \"traveltuesday</w>\": 16713,\n  \"traverse</w>\": 35058,\n  \"travi\": 46971,\n  \"travis\": 27441,\n  \"travis</w>\": 12287,\n  \"traw\": 42288,\n  \"trax</w>\": 34421,\n  \"tray\": 38470,\n  \"tray</w>\": 14621,\n  \"trays</w>\": 39798,\n  \"trc</w>\": 41803,\n  \"tre\": 975,\n  \"tre</w>\": 6033,\n  \"treach\": 46005,\n  \"tread\": 26182,\n  \"tread</w>\": 35658,\n  \"treadmill</w>\": 37780,\n  \"treas\": 8591,\n  \"treason</w>\": 28103,\n  \"treasure</w>\": 9922,\n  \"treasured</w>\": 48068,\n  \"treasurer</w>\": 26985,\n  \"treasures</w>\": 16500,\n  \"treasury</w>\": 20956,\n  \"treat\": 3968,\n  \"treat</w>\": 3901,\n  \"treated</w>\": 9772,\n  \"treating</w>\": 13842,\n  \"treatment</w>\": 4869,\n  \"treatments</w>\": 15839,\n  \"treats</w>\": 8878,\n  \"treaty</w>\": 19967,\n  \"treble</w>\": 33194,\n  \"trecht</w>\": 33812,\n  \"tree\": 13354,\n  \"tree</w>\": 2677,\n  \"treehouse</w>\": 42387,\n  \"trees</w>\": 4682,\n  \"trek\": 13236,\n  \"trek</w>\": 8136,\n  \"trekking</w>\": 25293,\n  \"trell</w>\": 35159,\n  \"tremb\": 44043,\n  \"tremend\": 14659,\n  \"tremendous</w>\": 15988,\n  \"tren\": 2579,\n  \"trench</w>\": 23846,\n  \"trenches</w>\": 38723,\n  \"trend\": 19986,\n  \"trend</w>\": 6643,\n  \"trending</w>\": 6087,\n  \"trends</w>\": 7015,\n  \"trendsetter</w>\": 46666,\n  \"trendy</w>\": 23072,\n  \"trent\": 45885,\n  \"trent</w>\": 15548,\n  \"trenton</w>\": 37470,\n  \"tres</w>\": 23569,\n  \"tress</w>\": 4733,\n  \"tresses</w>\": 24273,\n  \"trevor\": 23437,\n  \"trevor</w>\": 13219,\n  \"trex</w>\": 42114,\n  \"trey\": 36670,\n  \"trey</w>\": 16939,\n  \"tri\": 924,\n  \"tri</w>\": 9618,\n  \"triad</w>\": 45602,\n  \"trial</w>\": 5991,\n  \"trials</w>\": 10992,\n  \"triangle</w>\": 14615,\n  \"triathlon</w>\": 18080,\n  \"trib</w>\": 45151,\n  \"tribal</w>\": 16629,\n  \"tribe\": 19943,\n  \"tribe</w>\": 11365,\n  \"tribeca</w>\": 35184,\n  \"tribes</w>\": 26546,\n  \"tribu\": 3028,\n  \"tribun\": 14311,\n  \"tribunal</w>\": 32911,\n  \"tribune</w>\": 18556,\n  \"tribute</w>\": 5493,\n  \"tributes</w>\": 15537,\n  \"tric\": 9511,\n  \"tric</w>\": 4081,\n  \"trich</w>\": 39519,\n  \"trick\": 17177,\n  \"trick</w>\": 8172,\n  \"tricks</w>\": 13177,\n  \"tricky</w>\": 22319,\n  \"trics</w>\": 31437,\n  \"trident</w>\": 35491,\n  \"tridge</w>\": 18722,\n  \"tried</w>\": 4554,\n  \"tries</w>\": 4315,\n  \"trife\": 48962,\n  \"trigge\": 30509,\n  \"trigger</w>\": 16158,\n  \"triggered</w>\": 30924,\n  \"triggers</w>\": 37319,\n  \"tright</w>\": 29915,\n  \"tril\": 40626,\n  \"trill</w>\": 39297,\n  \"trilli\": 39350,\n  \"trillion</w>\": 20160,\n  \"trilo\": 15183,\n  \"trilogy</w>\": 16862,\n  \"trim</w>\": 14182,\n  \"trimmed</w>\": 40657,\n  \"trin\": 6628,\n  \"trinidad</w>\": 26244,\n  \"trinity\": 30744,\n  \"trinity</w>\": 12267,\n  \"trio</w>\": 10263,\n  \"trip\": 23421,\n  \"trip</w>\": 2529,\n  \"tripad\": 37189,\n  \"tripadvisor</w>\": 38708,\n  \"triple\": 16519,\n  \"triple</w>\": 7673,\n  \"triplets</w>\": 48601,\n  \"tripod</w>\": 36141,\n  \"tripoli</w>\": 40095,\n  \"trippin</w>\": 43073,\n  \"tripping</w>\": 35229,\n  \"trippy</w>\": 35137,\n  \"trips</w>\": 12292,\n  \"tris</w>\": 29690,\n  \"trish\": 40511,\n  \"trish</w>\": 37179,\n  \"trisha</w>\": 39152,\n  \"tristan</w>\": 25497,\n  \"trit\": 37087,\n  \"triton</w>\": 45437,\n  \"triu\": 14782,\n  \"trium\": 21065,\n  \"triumph\": 26507,\n  \"triumph</w>\": 15307,\n  \"triumphant</w>\": 41918,\n  \"trivi\": 21228,\n  \"trivia</w>\": 10642,\n  \"triviatuesday</w>\": 45499,\n  \"trix</w>\": 41017,\n  \"tro\": 1046,\n  \"tro</w>\": 3332,\n  \"trock</w>\": 44368,\n  \"trojan</w>\": 30653,\n  \"trojans</w>\": 25310,\n  \"trol\": 10306,\n  \"troll\": 39737,\n  \"troll</w>\": 17103,\n  \"trolley</w>\": 25124,\n  \"trolling</w>\": 28552,\n  \"trolls</w>\": 20890,\n  \"tromb\": 32390,\n  \"trombone</w>\": 44423,\n  \"tron\": 19057,\n  \"tron</w>\": 10684,\n  \"tronic</w>\": 34258,\n  \"tronics</w>\": 34397,\n  \"troom</w>\": 23691,\n  \"troop\": 12492,\n  \"troop</w>\": 24054,\n  \"trooper</w>\": 18327,\n  \"troopers</w>\": 23576,\n  \"troops</w>\": 10109,\n  \"trop</w>\": 31585,\n  \"trope</w>\": 41150,\n  \"trophies</w>\": 20998,\n  \"trophy\": 42676,\n  \"trophy</w>\": 6502,\n  \"tropic\": 21794,\n  \"tropic</w>\": 36736,\n  \"tropical\": 41699,\n  \"tropical</w>\": 8686,\n  \"tropics</w>\": 36940,\n  \"tros</w>\": 40456,\n  \"trose</w>\": 36022,\n  \"trot</w>\": 30453,\n  \"trotter</w>\": 38287,\n  \"trou\": 5181,\n  \"troubad\": 49037,\n  \"trouble\": 25669,\n  \"trouble</w>\": 7848,\n  \"troubled</w>\": 25568,\n  \"troubles</w>\": 27254,\n  \"trough</w>\": 39761,\n  \"troupe</w>\": 34803,\n  \"trous\": 19727,\n  \"trousers</w>\": 23172,\n  \"trout</w>\": 14853,\n  \"trove</w>\": 45350,\n  \"trow</w>\": 46914,\n  \"troy\": 26283,\n  \"troy</w>\": 12819,\n  \"trs</w>\": 24770,\n  \"tru\": 931,\n  \"tru</w>\": 25326,\n  \"truck\": 14781,\n  \"truck</w>\": 4629,\n  \"trucker</w>\": 45918,\n  \"truckers</w>\": 43404,\n  \"trucking</w>\": 26208,\n  \"trucks</w>\": 9569,\n  \"trude</w>\": 39017,\n  \"trudeau</w>\": 15752,\n  \"true\": 13096,\n  \"true</w>\": 2328,\n  \"truec\": 37583,\n  \"truelove</w>\": 45711,\n  \"truffle</w>\": 23064,\n  \"truffles</w>\": 37057,\n  \"truly</w>\": 4545,\n  \"trum\": 11766,\n  \"trum</w>\": 11399,\n  \"truman</w>\": 29414,\n  \"trump\": 9124,\n  \"trump</w>\": 1797,\n  \"trumpet</w>\": 23681,\n  \"trumpp\": 45550,\n  \"trumprussia</w>\": 39135,\n  \"trumps</w>\": 29793,\n  \"trumptrain</w>\": 43595,\n  \"trun\": 16163,\n  \"trun</w>\": 46661,\n  \"trunk</w>\": 18347,\n  \"trunks</w>\": 38531,\n  \"truro</w>\": 43507,\n  \"truss</w>\": 46080,\n  \"trust\": 17691,\n  \"trust</w>\": 3876,\n  \"truste\": 17356,\n  \"trusted</w>\": 16538,\n  \"trustee</w>\": 30803,\n  \"trustees</w>\": 28853,\n  \"trusting</w>\": 33221,\n  \"trusts</w>\": 27507,\n  \"trustworthy</w>\": 46840,\n  \"trusty</w>\": 37955,\n  \"truth\": 21335,\n  \"truth</w>\": 4319,\n  \"truths</w>\": 27179,\n  \"trx</w>\": 31620,\n  \"try\": 4487,\n  \"try</w>\": 1209,\n  \"tryin</w>\": 31085,\n  \"trying</w>\": 2551,\n  \"tryna</w>\": 15702,\n  \"tryout</w>\": 43832,\n  \"tryouts</w>\": 28053,\n  \"ts\": 2290,\n  \"ts</w>\": 590,\n  \"tsa</w>\": 25977,\n  \"tsal</w>\": 20438,\n  \"tsb</w>\": 45015,\n  \"tsc</w>\": 37437,\n  \"tsch</w>\": 38778,\n  \"tsd</w>\": 20611,\n  \"tse\": 49144,\n  \"tsfor\": 42654,\n  \"tsford</w>\": 32823,\n  \"tsh\": 42872,\n  \"tshirt</w>\": 14907,\n  \"tshirts</w>\": 29377,\n  \"tsi\": 40048,\n  \"tsi</w>\": 37867,\n  \"tsk</w>\": 43600,\n  \"tsla</w>\": 35681,\n  \"tsm</w>\": 43452,\n  \"tsman</w>\": 20046,\n  \"tsn\": 44921,\n  \"tsn</w>\": 26896,\n  \"tson\": 42353,\n  \"tson</w>\": 47140,\n  \"tsp</w>\": 34230,\n  \"tsu\": 13950,\n  \"tsu</w>\": 20175,\n  \"tsun\": 19155,\n  \"tsunami</w>\": 24286,\n  \"tsville</w>\": 29080,\n  \"tt\": 971,\n  \"tt</w>\": 1402,\n  \"tta</w>\": 2646,\n  \"ttc</w>\": 27668,\n  \"tte\": 23105,\n  \"tte</w>\": 3070,\n  \"tted</w>\": 15163,\n  \"tten\": 11351,\n  \"tten</w>\": 17479,\n  \"tter\": 18691,\n  \"tter</w>\": 5165,\n  \"tters</w>\": 6318,\n  \"ttes</w>\": 9293,\n  \"tti</w>\": 5237,\n  \"ttin</w>\": 36589,\n  \"tting</w>\": 1188,\n  \"ttino</w>\": 47389,\n  \"ttip</w>\": 46993,\n  \"ttle</w>\": 9253,\n  \"ttm</w>\": 46838,\n  \"tto\": 8759,\n  \"tto</w>\": 8105,\n  \"tton</w>\": 10562,\n  \"ttot</w>\": 12480,\n  \"ttp</w>\": 30828,\n  \"ttr\": 47589,\n  \"tts</w>\": 11570,\n  \"ttt</w>\": 17256,\n  \"tttt</w>\": 33119,\n  \"ttu</w>\": 44006,\n  \"ttv</w>\": 24281,\n  \"tty\": 11457,\n  \"tty</w>\": 1856,\n  \"tu\": 764,\n  \"tu</w>\": 5760,\n  \"tua</w>\": 41344,\n  \"tual</w>\": 4799,\n  \"tuan</w>\": 37297,\n  \"tub\": 34907,\n  \"tub</w>\": 15450,\n  \"tube\": 38229,\n  \"tube</w>\": 3308,\n  \"tuber\": 30371,\n  \"tuberculo\": 42606,\n  \"tuberculosis</w>\": 43129,\n  \"tubes</w>\": 22870,\n  \"tubing</w>\": 40794,\n  \"tubs</w>\": 41705,\n  \"tubular</w>\": 48786,\n  \"tuc\": 14456,\n  \"tuc</w>\": 43871,\n  \"tuck</w>\": 22398,\n  \"tucked</w>\": 26923,\n  \"tucker\": 39703,\n  \"tucker</w>\": 15726,\n  \"tucket</w>\": 32677,\n  \"tucson</w>\": 17250,\n  \"tudor</w>\": 24547,\n  \"tue</w>\": 17515,\n  \"tues\": 2283,\n  \"tues</w>\": 12113,\n  \"tuesday\": 10209,\n  \"tuesday</w>\": 2519,\n  \"tuesdaymotivation</w>\": 25432,\n  \"tuesdays</w>\": 23195,\n  \"tuesdaythoughts</w>\": 17988,\n  \"tuf\": 44510,\n  \"tuff</w>\": 38868,\n  \"tug\": 47032,\n  \"tug</w>\": 27902,\n  \"tuition</w>\": 21129,\n  \"tuk\": 39271,\n  \"tuk</w>\": 14993,\n  \"tul\": 9069,\n  \"tul</w>\": 40837,\n  \"tula</w>\": 36332,\n  \"tulane</w>\": 44893,\n  \"tulip</w>\": 28389,\n  \"tulips</w>\": 30886,\n  \"tulsa</w>\": 18850,\n  \"tum\": 12932,\n  \"tum</w>\": 8843,\n  \"tumb\": 8831,\n  \"tumble</w>\": 38284,\n  \"tumbler</w>\": 48790,\n  \"tumbling</w>\": 46226,\n  \"tumblr</w>\": 11841,\n  \"tummy</w>\": 26053,\n  \"tumor</w>\": 22616,\n  \"tumors</w>\": 39894,\n  \"tumour</w>\": 45129,\n  \"tun\": 1415,\n  \"tun</w>\": 21349,\n  \"tuna</w>\": 15037,\n  \"tundra</w>\": 39899,\n  \"tune\": 11427,\n  \"tune</w>\": 3300,\n  \"tuned</w>\": 5898,\n  \"tunein</w>\": 16809,\n  \"tuner</w>\": 42905,\n  \"tunes\": 31688,\n  \"tunes</w>\": 10810,\n  \"tunesapp</w>\": 32550,\n  \"tung\": 47940,\n  \"tung</w>\": 31092,\n  \"tuni\": 16270,\n  \"tunic</w>\": 43495,\n  \"tuning</w>\": 19585,\n  \"tunisia</w>\": 23346,\n  \"tunnel</w>\": 11096,\n  \"tunnels</w>\": 29814,\n  \"tuous</w>\": 28738,\n  \"tup\": 37956,\n  \"tup</w>\": 4507,\n  \"tupac</w>\": 31506,\n  \"tups</w>\": 44855,\n  \"tur\": 985,\n  \"tur</w>\": 17182,\n  \"tura</w>\": 16127,\n  \"tural\": 45143,\n  \"tural</w>\": 4261,\n  \"turb\": 18973,\n  \"turban</w>\": 48515,\n  \"turbine</w>\": 26880,\n  \"turbines</w>\": 38863,\n  \"turbo\": 23578,\n  \"turbo</w>\": 13668,\n  \"turbul\": 31100,\n  \"turbulent</w>\": 47871,\n  \"ture\": 4321,\n  \"ture</w>\": 941,\n  \"tured</w>\": 3987,\n  \"turer</w>\": 11993,\n  \"turers</w>\": 16956,\n  \"tures</w>\": 2400,\n  \"turf\": 36762,\n  \"turf</w>\": 12510,\n  \"turi\": 11896,\n  \"turin</w>\": 36251,\n  \"turing</w>\": 5812,\n  \"turismo</w>\": 30202,\n  \"turk\": 8254,\n  \"turk</w>\": 32507,\n  \"turkey\": 35977,\n  \"turkey</w>\": 4790,\n  \"turkeys</w>\": 37991,\n  \"turkish\": 48199,\n  \"turkish</w>\": 9278,\n  \"turks</w>\": 34344,\n  \"turmeric</w>\": 34044,\n  \"turmoil</w>\": 37751,\n  \"turn\": 5522,\n  \"turn</w>\": 2105,\n  \"turnaround</w>\": 32719,\n  \"turnbull</w>\": 27863,\n  \"turned</w>\": 3771,\n  \"turner\": 42867,\n  \"turner</w>\": 8777,\n  \"turning</w>\": 4976,\n  \"turno\": 21377,\n  \"turnout</w>\": 11654,\n  \"turnover</w>\": 30794,\n  \"turnpike</w>\": 38301,\n  \"turns</w>\": 3185,\n  \"turnt</w>\": 28887,\n  \"turntable</w>\": 37953,\n  \"turnup</w>\": 30591,\n  \"turo</w>\": 29224,\n  \"turquo\": 19390,\n  \"turquoise</w>\": 19899,\n  \"turt\": 13716,\n  \"turtle\": 35943,\n  \"turtle</w>\": 10912,\n  \"turtles</w>\": 17862,\n  \"tus\": 24828,\n  \"tus</w>\": 7079,\n  \"tusc\": 17909,\n  \"tuscal\": 42638,\n  \"tuscaloosa</w>\": 44375,\n  \"tuscan</w>\": 42865,\n  \"tuscany</w>\": 20885,\n  \"tuss\": 31741,\n  \"tut</w>\": 35121,\n  \"tutor\": 10054,\n  \"tutor</w>\": 27858,\n  \"tutorial</w>\": 12857,\n  \"tutorials</w>\": 30973,\n  \"tutoring</w>\": 37532,\n  \"tutti</w>\": 46880,\n  \"tutu</w>\": 35845,\n  \"tux\": 28720,\n  \"tux</w>\": 49186,\n  \"tuxedo</w>\": 40173,\n  \"tv\": 3197,\n  \"tv</w>\": 1583,\n  \"tvc</w>\": 49190,\n  \"tvd</w>\": 25889,\n  \"tvmiaw</w>\": 38554,\n  \"tvn</w>\": 44232,\n  \"tvs</w>\": 27114,\n  \"tvtime</w>\": 19947,\n  \"tvxq</w>\": 43968,\n  \"tw\": 966,\n  \"tw</w>\": 12842,\n  \"twa</w>\": 46954,\n  \"twain</w>\": 30689,\n  \"twal\": 48126,\n  \"tware</w>\": 5707,\n  \"twc</w>\": 41217,\n  \"twd\": 29440,\n  \"twd</w>\": 19343,\n  \"twdfamily</w>\": 38218,\n  \"twe\": 18365,\n  \"tweak</w>\": 48870,\n  \"tweaks</w>\": 42661,\n  \"twee\": 1330,\n  \"tweed</w>\": 26904,\n  \"tweeps</w>\": 14928,\n  \"tweet\": 11826,\n  \"tweet</w>\": 1842,\n  \"tweeta\": 32024,\n  \"tweetapicture\": 40596,\n  \"tweeted</w>\": 7841,\n  \"tweeter</w>\": 32876,\n  \"tweeters</w>\": 31713,\n  \"tweeting</w>\": 8901,\n  \"tweets</w>\": 3560,\n  \"tweetyour\": 45033,\n  \"twel\": 14476,\n  \"twelf\": 39443,\n  \"twelfth</w>\": 44072,\n  \"twell\": 38722,\n  \"twell</w>\": 30162,\n  \"twelve</w>\": 19694,\n  \"twent\": 27027,\n  \"twenti\": 35167,\n  \"twenty</w>\": 13016,\n  \"twentyon\": 39609,\n  \"twentyonepilots</w>\": 40007,\n  \"twer\": 13923,\n  \"twerk</w>\": 28506,\n  \"twi\": 5537,\n  \"twice</w>\": 6970,\n  \"twick\": 34326,\n  \"twickenham</w>\": 39619,\n  \"twil\": 12804,\n  \"twili\": 35754,\n  \"twilight\": 46366,\n  \"twilight</w>\": 14512,\n  \"twill</w>\": 43703,\n  \"twin\": 9342,\n  \"twin</w>\": 6769,\n  \"twine</w>\": 42775,\n  \"twinkle</w>\": 36545,\n  \"twinning</w>\": 30156,\n  \"twinpeaks</w>\": 32042,\n  \"twins</w>\": 8040,\n  \"twist</w>\": 10589,\n  \"twisted</w>\": 18233,\n  \"twister</w>\": 45933,\n  \"twists</w>\": 34149,\n  \"twit\": 1643,\n  \"twit</w>\": 18704,\n  \"twitart</w>\": 27709,\n  \"twitch\": 13251,\n  \"twitch</w>\": 9153,\n  \"twitter\": 7546,\n  \"twitter</w>\": 1989,\n  \"twitterkurds</w>\": 32722,\n  \"twitterstorians</w>\": 35389,\n  \"two\": 17211,\n  \"two</w>\": 1237,\n  \"twol\": 31964,\n  \"twood\": 40404,\n  \"twood</w>\": 13245,\n  \"twp</w>\": 33283,\n  \"twright</w>\": 46778,\n  \"twt</w>\": 6825,\n  \"twx</w>\": 26830,\n  \"twy\": 45861,\n  \"tx\": 6636,\n  \"tx</w>\": 5200,\n  \"txhsfb</w>\": 34757,\n  \"txlege</w>\": 26995,\n  \"txst</w>\": 40761,\n  \"txt</w>\": 24595,\n  \"txwx</w>\": 22995,\n  \"ty\": 1260,\n  \"ty</w>\": 744,\n  \"tya</w>\": 41273,\n  \"tycoon</w>\": 36803,\n  \"tye</w>\": 43097,\n  \"tyfree</w>\": 41215,\n  \"tyga</w>\": 41952,\n  \"tying</w>\": 22559,\n  \"tyl</w>\": 47537,\n  \"tyler\": 14787,\n  \"tyler</w>\": 7058,\n  \"tym</w>\": 45772,\n  \"tyne\": 27000,\n  \"tyne</w>\": 29729,\n  \"tyour\": 16823,\n  \"type\": 15673,\n  \"type</w>\": 3877,\n  \"typed</w>\": 40753,\n  \"typeface</w>\": 44969,\n  \"types</w>\": 7543,\n  \"typewriter</w>\": 42180,\n  \"typho\": 17486,\n  \"typhoon</w>\": 21110,\n  \"typic\": 21648,\n  \"typical</w>\": 9854,\n  \"typically</w>\": 23175,\n  \"typing</w>\": 20102,\n  \"typo\": 18831,\n  \"typo</w>\": 29076,\n  \"typography</w>\": 24332,\n  \"tyr\": 15590,\n  \"tyran\": 46921,\n  \"tyranny</w>\": 35402,\n  \"tyre\": 38330,\n  \"tyre</w>\": 16864,\n  \"tyres</w>\": 21376,\n  \"tyrone</w>\": 30226,\n  \"tyson</w>\": 16616,\n  \"tz\": 7710,\n  \"tz</w>\": 4983,\n  \"tzer</w>\": 45267,\n  \"tzky</w>\": 47127,\n  \"tzman</w>\": 46032,\n  \"tzu</w>\": 34354,\n  \"tÃ©\": 27208,\n  \"tÃ©</w>\": 39694,\n  \"u\": 84,\n  \"u</w>\": 340,\n  \"ua\": 34075,\n  \"ua</w>\": 8441,\n  \"uaap\": 46753,\n  \"uaap</w>\": 43774,\n  \"uab</w>\": 35587,\n  \"uae</w>\": 9752,\n  \"ual</w>\": 1921,\n  \"ually</w>\": 10767,\n  \"uan</w>\": 33062,\n  \"uas</w>\": 38339,\n  \"uav</w>\": 30303,\n  \"ub\": 18430,\n  \"ub</w>\": 13494,\n  \"uba</w>\": 29768,\n  \"ubc\": 42479,\n  \"ubc</w>\": 29455,\n  \"ube</w>\": 30892,\n  \"uber\": 25896,\n  \"uber</w>\": 10668,\n  \"ubi\": 26758,\n  \"ubio</w>\": 32867,\n  \"ubiquit\": 48129,\n  \"ubis\": 28248,\n  \"ubisoft</w>\": 32051,\n  \"ubs</w>\": 43851,\n  \"ubun\": 28184,\n  \"ubuntu</w>\": 30791,\n  \"uc\": 4903,\n  \"uc</w>\": 12438,\n  \"uca</w>\": 30942,\n  \"ucc\": 44844,\n  \"ucc</w>\": 29138,\n  \"ucci</w>\": 30746,\n  \"uccino</w>\": 30409,\n  \"ucd\": 44746,\n  \"ucd</w>\": 43514,\n  \"ucf</w>\": 24414,\n  \"uch\": 19465,\n  \"uch</w>\": 22394,\n  \"uchi\": 37473,\n  \"uci\": 46354,\n  \"uci</w>\": 28925,\n  \"uck</w>\": 34189,\n  \"ucl\": 12013,\n  \"ucl</w>\": 13647,\n  \"ucla\": 37667,\n  \"ucla</w>\": 17259,\n  \"ucn</w>\": 49036,\n  \"uconn</w>\": 30549,\n  \"ud\": 6560,\n  \"ud</w>\": 5765,\n  \"uda</w>\": 22800,\n  \"udaipur</w>\": 49385,\n  \"uddin</w>\": 43035,\n  \"ude\": 37016,\n  \"ude</w>\": 35194,\n  \"ue\": 16696,\n  \"ue</w>\": 1190,\n  \"uefa</w>\": 19189,\n  \"uel</w>\": 24231,\n  \"uer</w>\": 45951,\n  \"ues</w>\": 2526,\n  \"uf\": 17777,\n  \"uf</w>\": 19230,\n  \"ufc\": 20396,\n  \"ufc</w>\": 6490,\n  \"uff</w>\": 45701,\n  \"ufo</w>\": 19443,\n  \"ufos</w>\": 48234,\n  \"ug\": 3754,\n  \"ug</w>\": 16061,\n  \"uga</w>\": 16056,\n  \"ugand\": 25965,\n  \"uganda</w>\": 11125,\n  \"ugandan</w>\": 44206,\n  \"ugby</w>\": 30658,\n  \"ugh\": 39736,\n  \"ugh</w>\": 12755,\n  \"ugliest</w>\": 43543,\n  \"ugly\": 36070,\n  \"ugly</w>\": 8159,\n  \"ugu</w>\": 18144,\n  \"uh\": 17661,\n  \"uh</w>\": 9219,\n  \"uhc</w>\": 44974,\n  \"uhh</w>\": 35938,\n  \"uhhh</w>\": 45270,\n  \"uhm</w>\": 35614,\n  \"uhur\": 29434,\n  \"uhuru</w>\": 35690,\n  \"ui\": 17326,\n  \"ui</w>\": 11458,\n  \"uil</w>\": 29395,\n  \"uit\": 30696,\n  \"uit</w>\": 47584,\n  \"uj\": 33266,\n  \"uji</w>\": 39672,\n  \"uk\": 2294,\n  \"uk</w>\": 1432,\n  \"uka</w>\": 23294,\n  \"uke\": 48836,\n  \"uke</w>\": 28577,\n  \"uked\": 48987,\n  \"uki\": 37435,\n  \"uki</w>\": 9009,\n  \"ukin\": 34996,\n  \"ukip</w>\": 20360,\n  \"uklabour</w>\": 36902,\n  \"ukmfg</w>\": 38764,\n  \"uko</w>\": 33562,\n  \"ukone</w>\": 24682,\n  \"ukrain\": 15468,\n  \"ukraine</w>\": 7768,\n  \"ukrainian</w>\": 16927,\n  \"ukrunchat</w>\": 34481,\n  \"uku\": 29541,\n  \"uku</w>\": 36082,\n  \"ukulele</w>\": 39094,\n  \"ul\": 914,\n  \"ul</w>\": 6625,\n  \"ula\": 34104,\n  \"ula</w>\": 9506,\n  \"ular</w>\": 4927,\n  \"ulary</w>\": 21701,\n  \"ulate</w>\": 20467,\n  \"ulation</w>\": 32896,\n  \"ule</w>\": 35616,\n  \"ules</w>\": 26274,\n  \"ulf</w>\": 49331,\n  \"uli\": 41841,\n  \"uli</w>\": 22174,\n  \"ull\": 33254,\n  \"ulla</w>\": 30577,\n  \"ullah</w>\": 45310,\n  \"ullivan</w>\": 45252,\n  \"ulls</w>\": 37418,\n  \"ulo\": 46084,\n  \"ulo</w>\": 36738,\n  \"ulous\": 42490,\n  \"ulous</w>\": 4281,\n  \"ulously</w>\": 20167,\n  \"ulster\": 29709,\n  \"ulster</w>\": 24639,\n  \"ult</w>\": 4380,\n  \"ulti\": 11925,\n  \"ulties</w>\": 21884,\n  \"ultimat\": 16522,\n  \"ultimate\": 34684,\n  \"ultimate</w>\": 5377,\n  \"ultimatefan\": 48372,\n  \"ultimatefanlive</w>\": 48644,\n  \"ultimately</w>\": 23023,\n  \"ultr\": 25636,\n  \"ultra\": 11398,\n  \"ultra</w>\": 8118,\n  \"ultram\": 44519,\n  \"ultrasound</w>\": 29717,\n  \"ulture</w>\": 22272,\n  \"ulty</w>\": 8036,\n  \"ulu\": 41815,\n  \"ulu</w>\": 15659,\n  \"ulum</w>\": 17235,\n  \"uly\": 33220,\n  \"ulysses</w>\": 46114,\n  \"um\": 1622,\n  \"um</w>\": 1008,\n  \"uma\": 29982,\n  \"uma</w>\": 9256,\n  \"uman</w>\": 27112,\n  \"umar</w>\": 25656,\n  \"umass</w>\": 39390,\n  \"umatic</w>\": 45006,\n  \"umb\": 7493,\n  \"umber\": 19195,\n  \"umbrel\": 34773,\n  \"umbrella</w>\": 17143,\n  \"umbrellas</w>\": 42782,\n  \"umbria</w>\": 39287,\n  \"umc</w>\": 39491,\n  \"umd</w>\": 42067,\n  \"ume\": 38480,\n  \"umen</w>\": 42832,\n  \"uments</w>\": 25924,\n  \"umer</w>\": 23539,\n  \"umes</w>\": 21403,\n  \"umi\": 48772,\n  \"umi</w>\": 15458,\n  \"umich\": 41294,\n  \"umin</w>\": 31542,\n  \"umm\": 26129,\n  \"umm</w>\": 21215,\n  \"ummer</w>\": 47628,\n  \"ummm</w>\": 33665,\n  \"umni</w>\": 31739,\n  \"ump\": 22224,\n  \"umpire</w>\": 36214,\n  \"ums</w>\": 8643,\n  \"umu</w>\": 39788,\n  \"un\": 569,\n  \"un</w>\": 2271,\n  \"una</w>\": 6385,\n  \"unable</w>\": 17793,\n  \"unacceptable</w>\": 25234,\n  \"unanim\": 20800,\n  \"unanimous</w>\": 33520,\n  \"unanimously</w>\": 31798,\n  \"unanswered</w>\": 43611,\n  \"unarmed</w>\": 41541,\n  \"unas</w>\": 41366,\n  \"unavailable</w>\": 48430,\n  \"unaware</w>\": 33347,\n  \"unbeat\": 37056,\n  \"unbeatable</w>\": 40267,\n  \"unbeaten</w>\": 19228,\n  \"unbeliev\": 11383,\n  \"unbelievable</w>\": 13306,\n  \"unbelievably</w>\": 33781,\n  \"unborn</w>\": 37257,\n  \"unboxing</w>\": 32866,\n  \"unbreakable</w>\": 32956,\n  \"unbroken</w>\": 49271,\n  \"unc\": 24921,\n  \"unc</w>\": 15322,\n  \"uncanny</w>\": 32556,\n  \"uncertain</w>\": 30384,\n  \"uncertainty</w>\": 23956,\n  \"unch</w>\": 1527,\n  \"unchanged</w>\": 34272,\n  \"uncharted</w>\": 34560,\n  \"unci\": 25521,\n  \"unciation</w>\": 34117,\n  \"uncle\": 31537,\n  \"uncle</w>\": 8002,\n  \"unclear</w>\": 32955,\n  \"uncles</w>\": 45335,\n  \"uncomfortable</w>\": 22470,\n  \"uncommon</w>\": 34888,\n  \"uncondition\": 46561,\n  \"unconditional</w>\": 31112,\n  \"unconscious</w>\": 34791,\n  \"unconstitutional</w>\": 43585,\n  \"unconventional</w>\": 39440,\n  \"uncover</w>\": 33031,\n  \"uncovered</w>\": 28234,\n  \"uncture</w>\": 38736,\n  \"uncut</w>\": 41056,\n  \"und\": 9762,\n  \"und</w>\": 9732,\n  \"unda</w>\": 39932,\n  \"undant</w>\": 25377,\n  \"unday</w>\": 29338,\n  \"unde</w>\": 45226,\n  \"undead</w>\": 40105,\n  \"undecided</w>\": 49368,\n  \"undefeated</w>\": 15326,\n  \"undeni\": 38424,\n  \"under\": 1473,\n  \"under</w>\": 1798,\n  \"underage</w>\": 45669,\n  \"underattack</w>\": 35075,\n  \"undercover</w>\": 21595,\n  \"underdog</w>\": 44266,\n  \"undere\": 21675,\n  \"underestim\": 23348,\n  \"underestimate</w>\": 31794,\n  \"undergo</w>\": 31545,\n  \"undergoing</w>\": 26419,\n  \"undergrad</w>\": 38331,\n  \"undergraduate</w>\": 24320,\n  \"underground</w>\": 9396,\n  \"undering</w>\": 30826,\n  \"underlying</w>\": 31812,\n  \"undermine</w>\": 42839,\n  \"underneath</w>\": 20857,\n  \"underrated</w>\": 19494,\n  \"unders</w>\": 20376,\n  \"understand\": 47582,\n  \"understand</w>\": 4600,\n  \"understanding</w>\": 7522,\n  \"understands</w>\": 21607,\n  \"understatement</w>\": 38296,\n  \"understood</w>\": 17303,\n  \"undertaker</w>\": 40144,\n  \"undertaking</w>\": 49067,\n  \"undertale</w>\": 48283,\n  \"underthe\": 41161,\n  \"underwater</w>\": 14760,\n  \"underway</w>\": 6273,\n  \"underwear</w>\": 21154,\n  \"underwood</w>\": 21474,\n  \"underworld</w>\": 34760,\n  \"undi</w>\": 23845,\n  \"undisclosed</w>\": 39334,\n  \"undo</w>\": 35454,\n  \"undocumented</w>\": 35414,\n  \"undoub\": 38836,\n  \"undoubtedly</w>\": 42204,\n  \"undp</w>\": 26691,\n  \"une\": 4522,\n  \"une</w>\": 10966,\n  \"unearth\": 32716,\n  \"unearthed</w>\": 36632,\n  \"unemp\": 15139,\n  \"unemployed</w>\": 32721,\n  \"unemployment</w>\": 19350,\n  \"unes</w>\": 6394,\n  \"unesco</w>\": 16216,\n  \"uneven</w>\": 43204,\n  \"unex\": 9484,\n  \"unexpe\": 10802,\n  \"unexpec\": 31829,\n  \"unexpected</w>\": 12293,\n  \"unexpectedly</w>\": 35622,\n  \"unf\": 29285,\n  \"unfair</w>\": 22193,\n  \"unfinished</w>\": 26526,\n  \"unfit</w>\": 45367,\n  \"unfold</w>\": 38681,\n  \"unfollow</w>\": 38797,\n  \"unfor\": 14010,\n  \"unforgettable</w>\": 16173,\n  \"unfortun\": 10194,\n  \"unfortunate</w>\": 22361,\n  \"unfortunately</w>\": 12863,\n  \"unfpa</w>\": 45048,\n  \"ung\": 10439,\n  \"ung</w>\": 4334,\n  \"unga</w>\": 19151,\n  \"ungsoo</w>\": 25582,\n  \"unh\": 25365,\n  \"unhappy</w>\": 26528,\n  \"unhcr</w>\": 43451,\n  \"unhealthy</w>\": 30994,\n  \"uni\": 1107,\n  \"uni</w>\": 5926,\n  \"unic\": 7648,\n  \"unicef\": 38286,\n  \"unicef</w>\": 19259,\n  \"unicorn</w>\": 15660,\n  \"unicorns</w>\": 35183,\n  \"unidenti\": 33707,\n  \"unidentified</w>\": 35563,\n  \"unification</w>\": 45036,\n  \"unified</w>\": 20876,\n  \"uniform</w>\": 11075,\n  \"uniforms</w>\": 17838,\n  \"unil\": 32388,\n  \"unilever</w>\": 48654,\n  \"uniof\": 21218,\n  \"union\": 14210,\n  \"union</w>\": 3503,\n  \"unions</w>\": 18353,\n  \"unis\": 30482,\n  \"unis</w>\": 39266,\n  \"unisex</w>\": 27609,\n  \"unison</w>\": 46694,\n  \"unit\": 28522,\n  \"unit</w>\": 5695,\n  \"unite\": 15078,\n  \"unite</w>\": 11305,\n  \"uniteblue</w>\": 20935,\n  \"united\": 10898,\n  \"united</w>\": 2690,\n  \"unitedstates</w>\": 39636,\n  \"unitedway\": 47486,\n  \"unites</w>\": 32061,\n  \"uniting</w>\": 31318,\n  \"units</w>\": 10394,\n  \"unity\": 38300,\n  \"unity</w>\": 8581,\n  \"univ\": 36680,\n  \"univ</w>\": 14896,\n  \"univer\": 15574,\n  \"univers\": 5855,\n  \"universal\": 19148,\n  \"universal</w>\": 8754,\n  \"universe</w>\": 6104,\n  \"universi\": 41692,\n  \"universit\": 26019,\n  \"universities</w>\": 16408,\n  \"university\": 40728,\n  \"university</w>\": 2182,\n  \"universityof\": 46158,\n  \"unk</w>\": 5542,\n  \"unknown</w>\": 8685,\n  \"unl</w>\": 43807,\n  \"unlawful</w>\": 42305,\n  \"unle\": 19677,\n  \"unlea\": 23893,\n  \"unleash</w>\": 26706,\n  \"unleashed</w>\": 27955,\n  \"unless</w>\": 10602,\n  \"unlike</w>\": 16694,\n  \"unlikely</w>\": 18904,\n  \"unlimited</w>\": 11015,\n  \"unlock</w>\": 18649,\n  \"unlocked</w>\": 16770,\n  \"unlocking</w>\": 40810,\n  \"unlucky</w>\": 35029,\n  \"unlv</w>\": 42283,\n  \"unmanned</w>\": 36751,\n  \"unmatched</w>\": 46054,\n  \"unn</w>\": 38364,\n  \"unnamed</w>\": 44985,\n  \"unnecessary</w>\": 24100,\n  \"unner</w>\": 31481,\n  \"unning</w>\": 43282,\n  \"unnoticed</w>\": 42807,\n  \"uno\": 32446,\n  \"uno</w>\": 17078,\n  \"unofficial</w>\": 22506,\n  \"unpacking</w>\": 43589,\n  \"unpaid</w>\": 32811,\n  \"unparalleled</w>\": 44396,\n  \"unplugged</w>\": 31724,\n  \"unpopular</w>\": 40232,\n  \"unprece\": 23054,\n  \"unprecedented</w>\": 23344,\n  \"unpredictable</w>\": 38684,\n  \"unra\": 45150,\n  \"unreal\": 46980,\n  \"unreal</w>\": 15636,\n  \"unrelated</w>\": 38644,\n  \"unreleased</w>\": 29654,\n  \"unrest</w>\": 36452,\n  \"uns</w>\": 25908,\n  \"unsafe</w>\": 32071,\n  \"unsc</w>\": 36395,\n  \"unseen</w>\": 19069,\n  \"unsigned</w>\": 39346,\n  \"unsolved</w>\": 40836,\n  \"unsplash</w>\": 46196,\n  \"unstable</w>\": 34730,\n  \"unstopp\": 22105,\n  \"unstoppable</w>\": 23484,\n  \"unsuccessful</w>\": 47478,\n  \"unsung</w>\": 33015,\n  \"unsure</w>\": 26396,\n  \"unt\": 19654,\n  \"unt</w>\": 6537,\n  \"until</w>\": 1942,\n  \"untitled</w>\": 21309,\n  \"unto</w>\": 19801,\n  \"untold</w>\": 32206,\n  \"untouch\": 44509,\n  \"untouched</w>\": 42764,\n  \"unused</w>\": 29636,\n  \"unusual</w>\": 12613,\n  \"unusually</w>\": 36465,\n  \"unve\": 6685,\n  \"unveil</w>\": 20483,\n  \"unveiled</w>\": 13572,\n  \"unveiling</w>\": 20327,\n  \"unveils</w>\": 15057,\n  \"unwanted</w>\": 25285,\n  \"unwind</w>\": 34064,\n  \"unya</w>\": 37142,\n  \"uo\": 30874,\n  \"uo</w>\": 36162,\n  \"uof\": 11155,\n  \"uoft</w>\": 37329,\n  \"uon\": 48144,\n  \"uous</w>\": 40185,\n  \"up\": 1083,\n  \"up</w>\": 705,\n  \"upa</w>\": 31727,\n  \"upbeat</w>\": 39201,\n  \"upcoming</w>\": 4196,\n  \"upcycled</w>\": 46552,\n  \"upd\": 3226,\n  \"update</w>\": 2491,\n  \"updated</w>\": 5974,\n  \"updates</w>\": 4904,\n  \"updating</w>\": 22792,\n  \"uper\": 38082,\n  \"uper</w>\": 33056,\n  \"upfront</w>\": 42064,\n  \"upgrade</w>\": 10365,\n  \"upgraded</w>\": 18577,\n  \"upgrades</w>\": 21253,\n  \"upgrading</w>\": 34368,\n  \"uph\": 14128,\n  \"uphill</w>\": 42767,\n  \"uphol\": 26195,\n  \"uphold</w>\": 43897,\n  \"upholstery</w>\": 44556,\n  \"upl\": 41939,\n  \"uplift</w>\": 45389,\n  \"uplifting</w>\": 29546,\n  \"upload</w>\": 13968,\n  \"uploaded</w>\": 16793,\n  \"uploading</w>\": 30145,\n  \"upon\": 23524,\n  \"upon</w>\": 5067,\n  \"upp\": 19549,\n  \"upp</w>\": 45946,\n  \"upper\": 22465,\n  \"upper</w>\": 7067,\n  \"upri\": 15982,\n  \"upright</w>\": 29818,\n  \"uprising</w>\": 26006,\n  \"upro\": 28922,\n  \"ups</w>\": 6926,\n  \"upscale</w>\": 47501,\n  \"upset</w>\": 11214,\n  \"upsets</w>\": 42637,\n  \"upside</w>\": 15362,\n  \"upstairs</w>\": 21387,\n  \"upstate</w>\": 33335,\n  \"upstream</w>\": 45517,\n  \"upthe\": 31510,\n  \"upto</w>\": 26575,\n  \"upton</w>\": 31910,\n  \"uptown</w>\": 23807,\n  \"upward</w>\": 32526,\n  \"upwards</w>\": 34915,\n  \"uq</w>\": 39591,\n  \"ur\": 565,\n  \"ur</w>\": 1775,\n  \"ura\": 29337,\n  \"ura</w>\": 3544,\n  \"urable</w>\": 40194,\n  \"ural\": 23547,\n  \"ural</w>\": 33948,\n  \"uran</w>\": 16197,\n  \"uranium</w>\": 29850,\n  \"urban\": 7931,\n  \"urban</w>\": 5800,\n  \"urbanart</w>\": 40834,\n  \"urd</w>\": 47880,\n  \"urday</w>\": 19742,\n  \"urdu</w>\": 29976,\n  \"ure\": 5514,\n  \"ure</w>\": 726,\n  \"ured</w>\": 4210,\n  \"urer</w>\": 20864,\n  \"ures</w>\": 2288,\n  \"urg</w>\": 35995,\n  \"urge</w>\": 14852,\n  \"urged</w>\": 23790,\n  \"urgency</w>\": 47612,\n  \"urgent</w>\": 13693,\n  \"urgently</w>\": 34534,\n  \"urges</w>\": 16692,\n  \"urging</w>\": 27748,\n  \"uri\": 11052,\n  \"uri</w>\": 8699,\n  \"urie</w>\": 46429,\n  \"urin\": 45245,\n  \"urine</w>\": 28864,\n  \"uring</w>\": 1351,\n  \"url</w>\": 23464,\n  \"urn</w>\": 38075,\n  \"uro\": 17343,\n  \"uro</w>\": 5925,\n  \"urology</w>\": 48585,\n  \"urope</w>\": 14918,\n  \"urs</w>\": 4794,\n  \"urself</w>\": 31942,\n  \"urst</w>\": 19181,\n  \"urstruly\": 34751,\n  \"urstrulymahesh</w>\": 35314,\n  \"ursula</w>\": 38390,\n  \"urt</w>\": 24309,\n  \"uru\": 16322,\n  \"uru</w>\": 11768,\n  \"uruguay</w>\": 27931,\n  \"urus</w>\": 14246,\n  \"urve\": 24583,\n  \"ury\": 8642,\n  \"ury</w>\": 2106,\n  \"us\": 904,\n  \"us</w>\": 718,\n  \"usa\": 9491,\n  \"usa</w>\": 2547,\n  \"usability</w>\": 46736,\n  \"usable</w>\": 22890,\n  \"usaf</w>\": 25017,\n  \"usage</w>\": 19137,\n  \"usaid</w>\": 34507,\n  \"usair\": 36742,\n  \"usairforce</w>\": 42179,\n  \"usarmy</w>\": 19132,\n  \"usatoday</w>\": 40263,\n  \"usav\": 36056,\n  \"usb</w>\": 10281,\n  \"usc\": 13346,\n  \"usc</w>\": 14995,\n  \"uscg</w>\": 43932,\n  \"usd</w>\": 7485,\n  \"usda</w>\": 25829,\n  \"use\": 4419,\n  \"use</w>\": 1483,\n  \"used\": 32289,\n  \"used</w>\": 2026,\n  \"useful</w>\": 9784,\n  \"useless</w>\": 20154,\n  \"usemb\": 39700,\n  \"user\": 21248,\n  \"user</w>\": 7031,\n  \"username</w>\": 28162,\n  \"users</w>\": 7433,\n  \"uses</w>\": 5282,\n  \"useum</w>\": 45189,\n  \"usf\": 32385,\n  \"usf</w>\": 28942,\n  \"usgs</w>\": 35103,\n  \"ush\": 12001,\n  \"ush</w>\": 18335,\n  \"usher</w>\": 27411,\n  \"ushi</w>\": 47734,\n  \"usi</w>\": 25540,\n  \"usic\": 34909,\n  \"usic</w>\": 16753,\n  \"using</w>\": 1996,\n  \"usky</w>\": 45778,\n  \"usl</w>\": 42113,\n  \"usm</w>\": 40041,\n  \"usmc</w>\": 21678,\n  \"usmnt</w>\": 30662,\n  \"usn</w>\": 40579,\n  \"usnavy</w>\": 24500,\n  \"usnews</w>\": 43752,\n  \"uso</w>\": 21539,\n  \"usopen</w>\": 21782,\n  \"usp\": 26651,\n  \"usps</w>\": 39980,\n  \"usrc</w>\": 33274,\n  \"uss\": 11545,\n  \"uss</w>\": 9260,\n  \"ussia</w>\": 29553,\n  \"ussoccer</w>\": 42828,\n  \"ussr</w>\": 32697,\n  \"ust\": 35501,\n  \"ust</w>\": 24725,\n  \"usu\": 4254,\n  \"usu</w>\": 40434,\n  \"usual</w>\": 6129,\n  \"usually</w>\": 8296,\n  \"usur\": 45582,\n  \"uswnt</w>\": 35255,\n  \"ut\": 1419,\n  \"ut</w>\": 3641,\n  \"uta\": 42706,\n  \"uta</w>\": 25925,\n  \"utah\": 27474,\n  \"utah</w>\": 9312,\n  \"utc</w>\": 18196,\n  \"utd</w>\": 10493,\n  \"ute\": 16856,\n  \"ute</w>\": 3130,\n  \"uten\": 32089,\n  \"uter\": 39197,\n  \"utes</w>\": 2850,\n  \"uth\": 48819,\n  \"uth</w>\": 44750,\n  \"uti</w>\": 24568,\n  \"util\": 28824,\n  \"utili\": 17015,\n  \"utilities</w>\": 27210,\n  \"utility</w>\": 14941,\n  \"utilize</w>\": 36861,\n  \"utilized</w>\": 47604,\n  \"utilizing</w>\": 40212,\n  \"utm</w>\": 47853,\n  \"utmost</w>\": 42352,\n  \"uto\": 18866,\n  \"uto</w>\": 13683,\n  \"utopia</w>\": 34433,\n  \"utpol</w>\": 42605,\n  \"utr\": 48726,\n  \"utrecht</w>\": 37216,\n  \"uts</w>\": 11740,\n  \"utsa</w>\": 37528,\n  \"utt\": 17096,\n  \"uttar</w>\": 40168,\n  \"uttarak\": 33755,\n  \"uttarakhand</w>\": 35655,\n  \"utter\": 18769,\n  \"utter</w>\": 24558,\n  \"utterly</w>\": 21353,\n  \"utto</w>\": 42183,\n  \"utv</w>\": 36351,\n  \"utz</w>\": 45320,\n  \"uu\": 5702,\n  \"uu</w>\": 14553,\n  \"uuu\": 44355,\n  \"uuu</w>\": 27656,\n  \"uuuu\": 16720,\n  \"uuuu</w>\": 40797,\n  \"uv\": 23777,\n  \"uv</w>\": 15977,\n  \"uva</w>\": 23908,\n  \"uw\": 13933,\n  \"uw</w>\": 19166,\n  \"uwe</w>\": 48785,\n  \"uwu</w>\": 35544,\n  \"ux\": 9251,\n  \"ux</w>\": 6213,\n  \"uy\": 31929,\n  \"uy</w>\": 48113,\n  \"uz\": 19398,\n  \"uz</w>\": 36991,\n  \"uzbe\": 43007,\n  \"uzbekistan</w>\": 45024,\n  \"uzzi</w>\": 48210,\n  \"v\": 85,\n  \"v</w>\": 341,\n  \"va\": 4648,\n  \"va</w>\": 1892,\n  \"vaa</w>\": 37488,\n  \"vable</w>\": 23088,\n  \"vac\": 3125,\n  \"vac</w>\": 34085,\n  \"vaca</w>\": 48215,\n  \"vacancies</w>\": 26333,\n  \"vacancy</w>\": 21247,\n  \"vacant</w>\": 25262,\n  \"vacation\": 28336,\n  \"vacation</w>\": 6561,\n  \"vacations</w>\": 29002,\n  \"vacay</w>\": 44716,\n  \"vacc\": 13342,\n  \"vaccin\": 19164,\n  \"vaccinated</w>\": 48134,\n  \"vaccination</w>\": 32518,\n  \"vaccine\": 47780,\n  \"vaccine</w>\": 17493,\n  \"vaccines</w>\": 25860,\n  \"vach\": 46211,\n  \"vacu\": 16058,\n  \"vacuum</w>\": 18420,\n  \"vad\": 11880,\n  \"vada</w>\": 46759,\n  \"vader</w>\": 21908,\n  \"vae</w>\": 39384,\n  \"vag\": 13015,\n  \"vague</w>\": 42154,\n  \"vah</w>\": 26921,\n  \"vai\": 26893,\n  \"vai</w>\": 36802,\n  \"vail</w>\": 21189,\n  \"vain</w>\": 25538,\n  \"vais</w>\": 28719,\n  \"vaj\": 34206,\n  \"vak\": 16288,\n  \"vak</w>\": 41597,\n  \"val\": 1214,\n  \"val</w>\": 1560,\n  \"vala</w>\": 48525,\n  \"valdez</w>\": 40617,\n  \"vale\": 35554,\n  \"vale</w>\": 10820,\n  \"valedic\": 43525,\n  \"valen\": 12630,\n  \"valence</w>\": 30225,\n  \"valenci\": 34183,\n  \"valencia</w>\": 16559,\n  \"valent\": 3655,\n  \"valent</w>\": 15300,\n  \"valentin</w>\": 48631,\n  \"valentina</w>\": 43741,\n  \"valentine\": 11208,\n  \"valentine</w>\": 5876,\n  \"valentines</w>\": 10259,\n  \"valentinesday</w>\": 12369,\n  \"valentino</w>\": 29624,\n  \"valeri\": 31951,\n  \"valerie</w>\": 25592,\n  \"valet</w>\": 45749,\n  \"vali\": 8230,\n  \"valiant</w>\": 33804,\n  \"valid</w>\": 15126,\n  \"validation</w>\": 32536,\n  \"valkyrie</w>\": 42326,\n  \"vall\": 23523,\n  \"vall</w>\": 35295,\n  \"vallarta</w>\": 47874,\n  \"valle\": 24857,\n  \"valle</w>\": 29105,\n  \"valley\": 18354,\n  \"valley</w>\": 3136,\n  \"valleys</w>\": 28649,\n  \"valor</w>\": 30930,\n  \"vals</w>\": 7431,\n  \"valu\": 6291,\n  \"valuable</w>\": 10056,\n  \"valuation</w>\": 25894,\n  \"value\": 41358,\n  \"value</w>\": 4602,\n  \"valued</w>\": 17801,\n  \"values</w>\": 8857,\n  \"valve</w>\": 17001,\n  \"valves</w>\": 33517,\n  \"vam\": 9983,\n  \"vamo\": 46718,\n  \"vamos</w>\": 30346,\n  \"vamp\": 10680,\n  \"vampi\": 47017,\n  \"vampire\": 47576,\n  \"vampire</w>\": 13220,\n  \"vampires</w>\": 30868,\n  \"vamps</w>\": 44810,\n  \"van\": 2446,\n  \"van</w>\": 2451,\n  \"vana</w>\": 20543,\n  \"vanc\": 6320,\n  \"vance</w>\": 31447,\n  \"vancou\": 6750,\n  \"vancouver\": 31904,\n  \"vancouver</w>\": 7208,\n  \"vand\": 11691,\n  \"vandalism</w>\": 45664,\n  \"vander\": 16264,\n  \"vanderbilt</w>\": 33524,\n  \"vandy\": 39268,\n  \"vane</w>\": 43828,\n  \"vaness\": 13328,\n  \"vanessa</w>\": 16836,\n  \"vangogh</w>\": 47849,\n  \"vanguard</w>\": 27916,\n  \"vani\": 15396,\n  \"vani</w>\": 26459,\n  \"vania</w>\": 10998,\n  \"vanilla</w>\": 11974,\n  \"vanished</w>\": 43783,\n  \"vanishing</w>\": 48296,\n  \"vanity\": 48353,\n  \"vanity</w>\": 22938,\n  \"vans</w>\": 11711,\n  \"vant\": 26298,\n  \"vantage</w>\": 31749,\n  \"vanu\": 42892,\n  \"vanuatu</w>\": 48766,\n  \"vap\": 10462,\n  \"vape\": 25423,\n  \"vape</w>\": 20219,\n  \"vaping</w>\": 29403,\n  \"vapor\": 37167,\n  \"vapor</w>\": 30729,\n  \"vapori\": 46183,\n  \"var\": 3187,\n  \"var</w>\": 12998,\n  \"vara</w>\": 47492,\n  \"varan\": 36585,\n  \"varanasi</w>\": 39364,\n  \"vard\": 21866,\n  \"vard</w>\": 8773,\n  \"vardy</w>\": 47371,\n  \"vare\": 38159,\n  \"vares</w>\": 42895,\n  \"vargas</w>\": 32752,\n  \"vari\": 3354,\n  \"variable</w>\": 26416,\n  \"varian</w>\": 34334,\n  \"variant</w>\": 20293,\n  \"variants</w>\": 38312,\n  \"variation</w>\": 26420,\n  \"variations</w>\": 29025,\n  \"varied</w>\": 32334,\n  \"varies</w>\": 32543,\n  \"varieties</w>\": 23805,\n  \"variety</w>\": 8396,\n  \"various</w>\": 7395,\n  \"varsity\": 43716,\n  \"varsity</w>\": 8574,\n  \"varun\": 48120,\n  \"varun</w>\": 22069,\n  \"vary</w>\": 18855,\n  \"varying</w>\": 36456,\n  \"vas\": 5669,\n  \"vas</w>\": 5995,\n  \"vasc</w>\": 40995,\n  \"vascular</w>\": 19218,\n  \"vase</w>\": 20431,\n  \"vasi\": 49092,\n  \"vast\": 24413,\n  \"vast</w>\": 16414,\n  \"vastly</w>\": 48257,\n  \"vat\": 11588,\n  \"vat</w>\": 18363,\n  \"vatican</w>\": 21030,\n  \"vation</w>\": 37884,\n  \"vau\": 6391,\n  \"vaugh\": 25158,\n  \"vaughan</w>\": 21392,\n  \"vaughn</w>\": 29013,\n  \"vaul\": 27469,\n  \"vault</w>\": 15240,\n  \"vaus</w>\": 40217,\n  \"vaux\": 27403,\n  \"vauxhall</w>\": 29173,\n  \"vaw</w>\": 47952,\n  \"vay\": 48000,\n  \"vaz\": 38142,\n  \"vb\": 29365,\n  \"vb</w>\": 8778,\n  \"vball</w>\": 38329,\n  \"vc\": 28670,\n  \"vc</w>\": 7952,\n  \"vcs</w>\": 43528,\n  \"vcu</w>\": 40102,\n  \"vd</w>\": 9515,\n  \"vday</w>\": 42055,\n  \"ve\": 673,\n  \"ve</w>\": 563,\n  \"vea</w>\": 43798,\n  \"veal</w>\": 36616,\n  \"veau</w>\": 24419,\n  \"vec\": 19912,\n  \"vector\": 40453,\n  \"vector</w>\": 21533,\n  \"ved\": 19515,\n  \"ved</w>\": 1102,\n  \"veda</w>\": 44401,\n  \"vedere</w>\": 45660,\n  \"vedi</w>\": 47971,\n  \"vee\": 35708,\n  \"vee</w>\": 17073,\n  \"veen</w>\": 22432,\n  \"veer\": 21243,\n  \"veer</w>\": 22058,\n  \"veg\": 9048,\n  \"veg</w>\": 16460,\n  \"vega</w>\": 22930,\n  \"vegan\": 15705,\n  \"vegan</w>\": 5615,\n  \"vegans</w>\": 48514,\n  \"vegas\": 20288,\n  \"vegas</w>\": 4413,\n  \"vege\": 6219,\n  \"vegetable</w>\": 15725,\n  \"vegetables</w>\": 14119,\n  \"vegetarian</w>\": 14600,\n  \"vegetation</w>\": 33947,\n  \"veggie</w>\": 19401,\n  \"veggies</w>\": 16767,\n  \"vehic\": 3973,\n  \"vehicle</w>\": 5299,\n  \"vehicles</w>\": 8361,\n  \"veil</w>\": 23516,\n  \"vein</w>\": 29169,\n  \"veins</w>\": 28867,\n  \"veit</w>\": 30620,\n  \"vel\": 942,\n  \"vel</w>\": 1287,\n  \"vela</w>\": 34898,\n  \"veld</w>\": 34011,\n  \"veled</w>\": 15370,\n  \"veli</w>\": 49166,\n  \"veling</w>\": 37970,\n  \"vell\": 21173,\n  \"vell</w>\": 32997,\n  \"velo\": 14357,\n  \"velo</w>\": 33850,\n  \"velocity</w>\": 23811,\n  \"vels</w>\": 5109,\n  \"velve\": 37849,\n  \"velvet</w>\": 11063,\n  \"vely</w>\": 1708,\n  \"vember</w>\": 3477,\n  \"vement</w>\": 3129,\n  \"vements</w>\": 11104,\n  \"ven\": 1240,\n  \"ven</w>\": 1638,\n  \"vena</w>\": 47442,\n  \"vend\": 10851,\n  \"vending</w>\": 29202,\n  \"vendor</w>\": 21261,\n  \"vendors</w>\": 20353,\n  \"vene\": 5365,\n  \"veness</w>\": 10516,\n  \"venetian</w>\": 34336,\n  \"venezia</w>\": 34139,\n  \"venezu\": 10939,\n  \"venezuela</w>\": 12839,\n  \"venezuelan</w>\": 34699,\n  \"veng</w>\": 31526,\n  \"venge\": 27757,\n  \"vengeance</w>\": 32057,\n  \"veni</w>\": 31142,\n  \"venice</w>\": 11010,\n  \"vening</w>\": 47532,\n  \"venison</w>\": 40037,\n  \"venom\": 42491,\n  \"venom</w>\": 21588,\n  \"vens</w>\": 20884,\n  \"vent\": 4373,\n  \"vent</w>\": 5687,\n  \"ventil\": 39522,\n  \"ventilation</w>\": 35066,\n  \"venting</w>\": 15731,\n  \"vention</w>\": 4122,\n  \"vents</w>\": 12833,\n  \"ventu\": 48217,\n  \"ventura</w>\": 20921,\n  \"venture\": 37046,\n  \"venture</w>\": 12543,\n  \"ventures</w>\": 20829,\n  \"venue</w>\": 5097,\n  \"venues</w>\": 18120,\n  \"venus</w>\": 14691,\n  \"ver\": 624,\n  \"ver</w>\": 667,\n  \"vera</w>\": 13350,\n  \"verage</w>\": 3725,\n  \"verb</w>\": 34952,\n  \"verbal</w>\": 26522,\n  \"verbally</w>\": 39985,\n  \"verbs</w>\": 45687,\n  \"verde</w>\": 16935,\n  \"verdi</w>\": 42306,\n  \"verdict</w>\": 18030,\n  \"vere\": 11135,\n  \"vere</w>\": 34707,\n  \"vered</w>\": 2868,\n  \"verge</w>\": 23913,\n  \"veri\": 11638,\n  \"verification</w>\": 33521,\n  \"verified</w>\": 22555,\n  \"verify</w>\": 34722,\n  \"vering</w>\": 4630,\n  \"veriz\": 19707,\n  \"verizon</w>\": 21532,\n  \"verma</w>\": 41261,\n  \"vermont</w>\": 19241,\n  \"vern\": 2214,\n  \"vern</w>\": 12586,\n  \"verne</w>\": 45553,\n  \"vernon</w>\": 18348,\n  \"vero\": 45217,\n  \"vero</w>\": 38208,\n  \"verona</w>\": 31819,\n  \"veronic\": 39551,\n  \"veronica</w>\": 24039,\n  \"vers\": 1219,\n  \"vers</w>\": 2094,\n  \"versa</w>\": 35765,\n  \"versace</w>\": 25422,\n  \"versail\": 29857,\n  \"versailles</w>\": 32129,\n  \"versary</w>\": 2940,\n  \"versatile</w>\": 18110,\n  \"versatility</w>\": 41340,\n  \"verse\": 39466,\n  \"verse</w>\": 3131,\n  \"verses</w>\": 30769,\n  \"versi\": 8934,\n  \"version</w>\": 3273,\n  \"versions</w>\": 16190,\n  \"versity</w>\": 1906,\n  \"verst\": 42484,\n  \"verstappen</w>\": 45064,\n  \"versus</w>\": 14548,\n  \"versy</w>\": 18522,\n  \"vert</w>\": 11742,\n  \"verte\": 35158,\n  \"verted</w>\": 48173,\n  \"verti\": 30459,\n  \"vertical</w>\": 14293,\n  \"vertigo</w>\": 42477,\n  \"verton</w>\": 40632,\n  \"verts</w>\": 37265,\n  \"very\": 11698,\n  \"very</w>\": 1070,\n  \"veryday</w>\": 37944,\n  \"verything</w>\": 45174,\n  \"ves\": 9616,\n  \"ves</w>\": 1003,\n  \"vesmatter</w>\": 47636,\n  \"vespa</w>\": 46029,\n  \"vessel</w>\": 16387,\n  \"vessels</w>\": 22822,\n  \"vest\": 31657,\n  \"vest</w>\": 12473,\n  \"vesti\": 40349,\n  \"vests</w>\": 41906,\n  \"vet\": 12294,\n  \"vet</w>\": 5951,\n  \"veter\": 4330,\n  \"veteran\": 20797,\n  \"veteran</w>\": 8814,\n  \"veterans</w>\": 7092,\n  \"veteransday</w>\": 26409,\n  \"veterin\": 43959,\n  \"veterinary</w>\": 25458,\n  \"veto</w>\": 36570,\n  \"vets</w>\": 13113,\n  \"vette</w>\": 17045,\n  \"vettel</w>\": 28700,\n  \"vevo</w>\": 35141,\n  \"vex\": 36187,\n  \"vex</w>\": 43978,\n  \"vey\": 34792,\n  \"vey</w>\": 3884,\n  \"vez\": 35987,\n  \"vez</w>\": 17226,\n  \"vf</w>\": 25966,\n  \"vfl</w>\": 33726,\n  \"vfx</w>\": 30149,\n  \"vg\": 40591,\n  \"vg</w>\": 22346,\n  \"vh\": 46953,\n  \"vh</w>\": 23847,\n  \"vhs</w>\": 21932,\n  \"vi\": 603,\n  \"vi</w>\": 4259,\n  \"via</w>\": 1048,\n  \"viable</w>\": 25752,\n  \"viadu\": 37012,\n  \"viaduct</w>\": 39113,\n  \"vial</w>\": 39951,\n  \"vian\": 40487,\n  \"vian</w>\": 16124,\n  \"vibe\": 37974,\n  \"vibe</w>\": 12813,\n  \"vibes</w>\": 7764,\n  \"vibr\": 9527,\n  \"vibrant</w>\": 14270,\n  \"vibration</w>\": 37456,\n  \"vibrations</w>\": 43660,\n  \"vic\": 1555,\n  \"vic</w>\": 4412,\n  \"vica</w>\": 46168,\n  \"vicar</w>\": 43899,\n  \"vice\": 43572,\n  \"vice</w>\": 6931,\n  \"vicente</w>\": 39411,\n  \"vices</w>\": 8332,\n  \"vich</w>\": 24143,\n  \"vici\": 46670,\n  \"vicious</w>\": 25177,\n  \"vick\": 15116,\n  \"vick</w>\": 29704,\n  \"vickers</w>\": 48452,\n  \"vicki</w>\": 34927,\n  \"vicky\": 37176,\n  \"vicky</w>\": 25788,\n  \"victi\": 6861,\n  \"victim</w>\": 9133,\n  \"victims</w>\": 7131,\n  \"victor\": 2423,\n  \"victor</w>\": 10690,\n  \"victori\": 17555,\n  \"victoria\": 39286,\n  \"victoria</w>\": 6127,\n  \"victorian</w>\": 12350,\n  \"victorias\": 47791,\n  \"victories</w>\": 24577,\n  \"victorious</w>\": 24033,\n  \"victory\": 36668,\n  \"victory</w>\": 4127,\n  \"vid\": 17233,\n  \"vid</w>\": 9284,\n  \"vida</w>\": 19015,\n  \"vidal</w>\": 36678,\n  \"vide\": 1334,\n  \"vide</w>\": 45244,\n  \"video\": 9478,\n  \"video</w>\": 1455,\n  \"videogame</w>\": 35097,\n  \"videogames</w>\": 21149,\n  \"videos</w>\": 6081,\n  \"vids</w>\": 23035,\n  \"vidy\": 29639,\n  \"vidya</w>\": 45264,\n  \"vie\": 922,\n  \"vie</w>\": 8538,\n  \"vien\": 36493,\n  \"vienna</w>\": 12670,\n  \"vier\": 15352,\n  \"vier</w>\": 11987,\n  \"viera</w>\": 21114,\n  \"viernes</w>\": 33826,\n  \"vies</w>\": 22458,\n  \"viest</w>\": 31979,\n  \"viet\": 17558,\n  \"viet</w>\": 13128,\n  \"vietnam\": 19558,\n  \"vietnam</w>\": 8623,\n  \"vietnamese</w>\": 22382,\n  \"view\": 12004,\n  \"view</w>\": 1093,\n  \"viewed</w>\": 7226,\n  \"viewer</w>\": 15061,\n  \"viewers</w>\": 14275,\n  \"viewing</w>\": 7124,\n  \"viewpoint</w>\": 41604,\n  \"views</w>\": 2758,\n  \"vig\": 8549,\n  \"vig</w>\": 45083,\n  \"vigil\": 21538,\n  \"vigil</w>\": 19896,\n  \"vigilant</w>\": 43026,\n  \"vigne\": 40447,\n  \"vigne</w>\": 34581,\n  \"vigo</w>\": 44097,\n  \"vigor\": 26781,\n  \"vii</w>\": 17759,\n  \"viii</w>\": 20414,\n  \"vijay\": 12014,\n  \"vijay</w>\": 10823,\n  \"vijaysethu\": 47966,\n  \"vik\": 10764,\n  \"vik</w>\": 17181,\n  \"vika</w>\": 39562,\n  \"vikas</w>\": 37116,\n  \"viking\": 26663,\n  \"viking</w>\": 15897,\n  \"vikings</w>\": 11713,\n  \"vikram\": 41136,\n  \"vikram</w>\": 24314,\n  \"viktor</w>\": 36101,\n  \"vil\": 1338,\n  \"vil</w>\": 3000,\n  \"vila</w>\": 37505,\n  \"vile</w>\": 27247,\n  \"vill\": 10481,\n  \"vill</w>\": 45698,\n  \"villa\": 3203,\n  \"villa</w>\": 7754,\n  \"village\": 34584,\n  \"village</w>\": 4331,\n  \"villagers</w>\": 34283,\n  \"villages</w>\": 17621,\n  \"villain</w>\": 15425,\n  \"villains</w>\": 25271,\n  \"villanova</w>\": 44025,\n  \"villar\": 35164,\n  \"villas</w>\": 28907,\n  \"ville\": 11110,\n  \"ville</w>\": 1930,\n  \"villen\": 46177,\n  \"villi\": 36907,\n  \"vimeo</w>\": 48720,\n  \"vin\": 1379,\n  \"vin</w>\": 2558,\n  \"vina</w>\": 35682,\n  \"vinai\": 37396,\n  \"vinaigrette</w>\": 39876,\n  \"vinay\": 43952,\n  \"vince\": 32429,\n  \"vince</w>\": 6236,\n  \"vincen\": 33402,\n  \"vincent\": 29069,\n  \"vincent</w>\": 10357,\n  \"vinci</w>\": 30199,\n  \"vind</w>\": 20275,\n  \"vindic\": 39582,\n  \"vine\": 8471,\n  \"vine</w>\": 7721,\n  \"vinegar</w>\": 23834,\n  \"vines</w>\": 21268,\n  \"vineyard</w>\": 16527,\n  \"vineyards</w>\": 23082,\n  \"ving\": 5375,\n  \"ving</w>\": 903,\n  \"vingne</w>\": 42579,\n  \"vings</w>\": 22510,\n  \"vini</w>\": 48119,\n  \"vinnie</w>\": 40885,\n  \"vinny</w>\": 36794,\n  \"vino</w>\": 14509,\n  \"vinod</w>\": 43348,\n  \"vins</w>\": 34820,\n  \"vinson</w>\": 45945,\n  \"vintag\": 10936,\n  \"vintage\": 13654,\n  \"vintage</w>\": 3266,\n  \"viny\": 40990,\n  \"vinyl\": 22835,\n  \"vinyl</w>\": 5754,\n  \"vio\": 11913,\n  \"vio</w>\": 20324,\n  \"viol\": 3164,\n  \"viola</w>\": 27438,\n  \"violate</w>\": 44875,\n  \"violated</w>\": 38192,\n  \"violating</w>\": 37554,\n  \"violation</w>\": 22919,\n  \"violations</w>\": 21969,\n  \"violence</w>\": 5450,\n  \"violent</w>\": 11565,\n  \"violently</w>\": 47758,\n  \"violet</w>\": 16118,\n  \"violets</w>\": 42861,\n  \"violin</w>\": 17058,\n  \"violinist</w>\": 36299,\n  \"vion</w>\": 35496,\n  \"vious</w>\": 6418,\n  \"viously</w>\": 7149,\n  \"vip\": 45714,\n  \"vip</w>\": 7111,\n  \"viper</w>\": 27401,\n  \"vips</w>\": 41149,\n  \"vir\": 1790,\n  \"vir</w>\": 25319,\n  \"vira</w>\": 35910,\n  \"viral</w>\": 11653,\n  \"virat</w>\": 32473,\n  \"virgil</w>\": 39076,\n  \"virgin\": 5651,\n  \"virgin</w>\": 12103,\n  \"virgini\": 43426,\n  \"virginia</w>\": 6728,\n  \"virgo</w>\": 39978,\n  \"viro\": 32301,\n  \"viron\": 38309,\n  \"virtu\": 7977,\n  \"virtual\": 18059,\n  \"virtual</w>\": 7790,\n  \"virtually</w>\": 22475,\n  \"virtualreality</w>\": 32608,\n  \"virtue</w>\": 26860,\n  \"virtues</w>\": 42167,\n  \"virtuoso</w>\": 47027,\n  \"virus</w>\": 11808,\n  \"viruses</w>\": 34830,\n  \"vis\": 1301,\n  \"vis</w>\": 5337,\n  \"visa</w>\": 12802,\n  \"visas</w>\": 41228,\n  \"vise</w>\": 24977,\n  \"vised</w>\": 14810,\n  \"vish\": 12024,\n  \"vish</w>\": 29124,\n  \"vishal</w>\": 33648,\n  \"vishnu</w>\": 37816,\n  \"visi\": 1409,\n  \"visibility</w>\": 15921,\n  \"visible\": 36658,\n  \"visible</w>\": 8626,\n  \"vising</w>\": 37439,\n  \"vision\": 11147,\n  \"vision</w>\": 2515,\n  \"visional</w>\": 24627,\n  \"visionary</w>\": 22959,\n  \"visions</w>\": 13804,\n  \"visit\": 3388,\n  \"visit</w>\": 1600,\n  \"visitation</w>\": 44370,\n  \"visited</w>\": 5580,\n  \"visiting</w>\": 4680,\n  \"visitor</w>\": 13881,\n  \"visitors</w>\": 9160,\n  \"visits</w>\": 8489,\n  \"visitscotland</w>\": 28760,\n  \"visitspain</w>\": 48860,\n  \"vism</w>\": 15514,\n  \"viso</w>\": 46732,\n  \"visor</w>\": 24217,\n  \"vist</w>\": 21436,\n  \"vista</w>\": 13865,\n  \"visu\": 7739,\n  \"visual\": 17004,\n  \"visual</w>\": 7195,\n  \"visualization</w>\": 28500,\n  \"visualize</w>\": 45057,\n  \"visually</w>\": 25743,\n  \"visuals</w>\": 21315,\n  \"viswas\": 36513,\n  \"viswasam</w>\": 47664,\n  \"vit\": 4056,\n  \"vit</w>\": 35580,\n  \"vita</w>\": 15700,\n  \"vital\": 32525,\n  \"vital</w>\": 10585,\n  \"vitality</w>\": 36385,\n  \"vitam\": 9856,\n  \"vitamin</w>\": 13675,\n  \"vitamins</w>\": 22582,\n  \"vito</w>\": 36725,\n  \"vity</w>\": 4893,\n  \"vitz</w>\": 26188,\n  \"vius</w>\": 41571,\n  \"viv\": 21827,\n  \"viv</w>\": 35363,\n  \"viva</w>\": 17399,\n  \"vival\": 35920,\n  \"vive\": 18980,\n  \"vive</w>\": 24004,\n  \"vivek</w>\": 36243,\n  \"vivi\": 11625,\n  \"vivian</w>\": 30129,\n  \"vivid</w>\": 22984,\n  \"vivo\": 28091,\n  \"vivo</w>\": 25888,\n  \"vix\": 28976,\n  \"vix</w>\": 34811,\n  \"vixen</w>\": 38757,\n  \"vixx</w>\": 32106,\n  \"viz\": 28251,\n  \"viz</w>\": 31786,\n  \"vj\": 45439,\n  \"vj</w>\": 30827,\n  \"vk</w>\": 41893,\n  \"vl\": 37580,\n  \"vl</w>\": 36442,\n  \"vla\": 23686,\n  \"vlad</w>\": 41089,\n  \"vladi\": 19320,\n  \"vladimir</w>\": 21702,\n  \"vlive</w>\": 46797,\n  \"vlog</w>\": 18894,\n  \"vm\": 16204,\n  \"vm</w>\": 20269,\n  \"vma</w>\": 35666,\n  \"vmas</w>\": 30236,\n  \"vmware</w>\": 29615,\n  \"vn\": 47098,\n  \"vn</w>\": 25076,\n  \"vo\": 947,\n  \"vo</w>\": 3951,\n  \"voc\": 4105,\n  \"voc</w>\": 20855,\n  \"vocab\": 21346,\n  \"vocabulary</w>\": 23804,\n  \"vocal\": 34037,\n  \"vocal</w>\": 13147,\n  \"vocali\": 19134,\n  \"vocalist</w>\": 22102,\n  \"vocals</w>\": 17666,\n  \"vocation</w>\": 20521,\n  \"vocational</w>\": 33751,\n  \"vod\": 11820,\n  \"vod</w>\": 35854,\n  \"vodaf\": 28436,\n  \"vodafone</w>\": 38695,\n  \"vodka</w>\": 13646,\n  \"vogel</w>\": 44960,\n  \"vogue\": 24418,\n  \"vogue</w>\": 13178,\n  \"voic\": 29185,\n  \"voice\": 13179,\n  \"voice</w>\": 3386,\n  \"voiced</w>\": 34352,\n  \"voiceof\": 44966,\n  \"voiceover</w>\": 41979,\n  \"voices</w>\": 9144,\n  \"void</w>\": 21561,\n  \"voip</w>\": 42762,\n  \"voir</w>\": 16036,\n  \"vol\": 1343,\n  \"vol</w>\": 7945,\n  \"volatile</w>\": 41022,\n  \"volatility</w>\": 32355,\n  \"volcan\": 9916,\n  \"volcanic</w>\": 24072,\n  \"volcano</w>\": 14581,\n  \"volcanoes</w>\": 38055,\n  \"voli</w>\": 40138,\n  \"volk\": 13432,\n  \"volkswag\": 14407,\n  \"volkswagen</w>\": 15342,\n  \"volley\": 7130,\n  \"volley</w>\": 34656,\n  \"volleyball</w>\": 7458,\n  \"volo</w>\": 44791,\n  \"vols</w>\": 20404,\n  \"volt</w>\": 26430,\n  \"volta\": 29879,\n  \"volta</w>\": 33480,\n  \"voltage</w>\": 23118,\n  \"voltron</w>\": 39314,\n  \"volu\": 3563,\n  \"volume</w>\": 8284,\n  \"volumes</w>\": 22651,\n  \"volun\": 3356,\n  \"voluntar\": 48823,\n  \"voluntary</w>\": 23815,\n  \"volunte\": 3556,\n  \"volunteer\": 32331,\n  \"volunteer</w>\": 7114,\n  \"volunteered</w>\": 34000,\n  \"volunteering</w>\": 14902,\n  \"volunteers</w>\": 5939,\n  \"volution</w>\": 24043,\n  \"volved</w>\": 42888,\n  \"volvo\": 39991,\n  \"volvo</w>\": 16906,\n  \"vom\": 24198,\n  \"vomit</w>\": 46485,\n  \"von\": 11269,\n  \"von</w>\": 8497,\n  \"voo\": 19497,\n  \"voodoo</w>\": 26869,\n  \"voor\": 34291,\n  \"voor</w>\": 34464,\n  \"vor\": 8338,\n  \"vor</w>\": 5308,\n  \"vore</w>\": 18215,\n  \"vortex</w>\": 30071,\n  \"vos</w>\": 16863,\n  \"vot</w>\": 48558,\n  \"vote\": 6830,\n  \"vote</w>\": 2187,\n  \"voted</w>\": 6454,\n  \"votel\": 41379,\n  \"voter\": 44474,\n  \"voter</w>\": 14065,\n  \"voters</w>\": 8925,\n  \"votes</w>\": 6693,\n  \"voting</w>\": 5756,\n  \"vou\": 11045,\n  \"voucher</w>\": 18190,\n  \"vouchers</w>\": 23384,\n  \"vous</w>\": 10636,\n  \"vow</w>\": 34787,\n  \"vows</w>\": 21677,\n  \"vox\": 29215,\n  \"vox</w>\": 22692,\n  \"voy\": 10622,\n  \"voy</w>\": 15021,\n  \"voyage</w>\": 16299,\n  \"voyager</w>\": 29669,\n  \"vp\": 32758,\n  \"vp</w>\": 3896,\n  \"vpn</w>\": 38212,\n  \"vr\": 16840,\n  \"vr</w>\": 5921,\n  \"vre\": 44500,\n  \"vre</w>\": 17501,\n  \"vs\": 11385,\n  \"vs</w>\": 1547,\n  \"vsco\": 26752,\n  \"vsco</w>\": 32822,\n  \"vscocam</w>\": 34694,\n  \"vsky</w>\": 37791,\n  \"vss</w>\": 31919,\n  \"vt\": 31732,\n  \"vt</w>\": 10291,\n  \"vu\": 8664,\n  \"vu</w>\": 13230,\n  \"vue\": 43915,\n  \"vue</w>\": 19313,\n  \"vuel\": 31312,\n  \"vuelta</w>\": 43856,\n  \"vuitton</w>\": 26705,\n  \"vul\": 6856,\n  \"vulcan</w>\": 34767,\n  \"vulner\": 11213,\n  \"vulnerability</w>\": 28797,\n  \"vulnerable</w>\": 14332,\n  \"vulture</w>\": 34593,\n  \"vultures</w>\": 47197,\n  \"vv\": 19264,\n  \"vv</w>\": 35686,\n  \"vw\": 28650,\n  \"vw</w>\": 13250,\n  \"vx</w>\": 47644,\n  \"vy\": 11566,\n  \"vy</w>\": 5157,\n  \"w\": 86,\n  \"w</w>\": 342,\n  \"wa\": 869,\n  \"wa</w>\": 2663,\n  \"waa</w>\": 35874,\n  \"wab\": 19893,\n  \"wab</w>\": 36852,\n  \"wac\": 27445,\n  \"wac</w>\": 37947,\n  \"wack\": 22880,\n  \"wack</w>\": 38270,\n  \"wacky</w>\": 34318,\n  \"waco</w>\": 36035,\n  \"wad\": 11133,\n  \"wad</w>\": 30451,\n  \"wada</w>\": 40006,\n  \"wade\": 40237,\n  \"wade</w>\": 14180,\n  \"wadi</w>\": 37253,\n  \"waf\": 17638,\n  \"wafc</w>\": 49086,\n  \"waff\": 13940,\n  \"waffle</w>\": 20375,\n  \"waffles</w>\": 24205,\n  \"wag\": 5764,\n  \"wag</w>\": 19177,\n  \"wage</w>\": 10716,\n  \"wager</w>\": 43430,\n  \"wages</w>\": 19114,\n  \"wagner</w>\": 18081,\n  \"wagon</w>\": 13260,\n  \"wagons</w>\": 47944,\n  \"wags</w>\": 48580,\n  \"wah\": 24812,\n  \"wah</w>\": 18014,\n  \"wahl\": 27500,\n  \"wahlberg</w>\": 35151,\n  \"wahoo</w>\": 47995,\n  \"wai\": 11469,\n  \"wai</w>\": 21569,\n  \"waifu</w>\": 46551,\n  \"waikiki</w>\": 44907,\n  \"wain\": 28358,\n  \"wain</w>\": 20120,\n  \"wainwright</w>\": 45878,\n  \"waist\": 36946,\n  \"waist</w>\": 18459,\n  \"wait\": 10021,\n  \"wait</w>\": 1885,\n  \"waite</w>\": 24272,\n  \"waited</w>\": 18492,\n  \"waiter</w>\": 32946,\n  \"waitin</w>\": 44482,\n  \"waiting</w>\": 2680,\n  \"waitress</w>\": 39760,\n  \"waitrose</w>\": 37164,\n  \"waits</w>\": 21361,\n  \"waiver</w>\": 42866,\n  \"waj</w>\": 49367,\n  \"wak\": 11172,\n  \"wak</w>\": 36015,\n  \"waka</w>\": 42696,\n  \"wake\": 10501,\n  \"wake</w>\": 5731,\n  \"wakefield</w>\": 26358,\n  \"wakes</w>\": 29108,\n  \"wakeup\": 26328,\n  \"wakeup</w>\": 35380,\n  \"wakeupamerica</w>\": 37474,\n  \"waking</w>\": 13025,\n  \"wal\": 1056,\n  \"wal</w>\": 6903,\n  \"wala</w>\": 16468,\n  \"walang</w>\": 49180,\n  \"walcott</w>\": 45744,\n  \"wald\": 46930,\n  \"wald</w>\": 15724,\n  \"walden</w>\": 39311,\n  \"waldo</w>\": 32440,\n  \"waldorf</w>\": 38227,\n  \"wale\": 41247,\n  \"wale</w>\": 20336,\n  \"wales\": 25383,\n  \"wales</w>\": 5110,\n  \"walgreens</w>\": 38490,\n  \"wali\": 37576,\n  \"wali</w>\": 14768,\n  \"walia</w>\": 44455,\n  \"walk\": 8588,\n  \"walk</w>\": 2374,\n  \"walkaway</w>\": 48255,\n  \"walked</w>\": 8667,\n  \"walker\": 24735,\n  \"walker</w>\": 6150,\n  \"walkers</w>\": 23366,\n  \"walkin</w>\": 45792,\n  \"walking\": 12644,\n  \"walking</w>\": 3941,\n  \"walkingdead</w>\": 14948,\n  \"walkout</w>\": 47470,\n  \"walks</w>\": 8192,\n  \"walkway</w>\": 36614,\n  \"wall\": 4316,\n  \"wall</w>\": 2569,\n  \"walla\": 26007,\n  \"walla</w>\": 39982,\n  \"wallabies</w>\": 48926,\n  \"wallace</w>\": 12535,\n  \"wallart</w>\": 36223,\n  \"walled</w>\": 36567,\n  \"waller</w>\": 45340,\n  \"wallet</w>\": 12154,\n  \"wallets</w>\": 38550,\n  \"walleye</w>\": 49099,\n  \"wallis</w>\": 42206,\n  \"wallpaper</w>\": 10560,\n  \"wallpapers</w>\": 29841,\n  \"walls</w>\": 8258,\n  \"wallstreet</w>\": 45341,\n  \"wally</w>\": 26024,\n  \"walmart</w>\": 11972,\n  \"walnut</w>\": 16310,\n  \"walnuts</w>\": 38294,\n  \"walsall</w>\": 42935,\n  \"walsh</w>\": 12856,\n  \"walt\": 23535,\n  \"walt</w>\": 14312,\n  \"waltdisneyworld</w>\": 36505,\n  \"walter\": 31156,\n  \"walter</w>\": 10645,\n  \"walters</w>\": 25532,\n  \"waltham\": 42742,\n  \"waltham</w>\": 45581,\n  \"walton</w>\": 19485,\n  \"waltz</w>\": 35982,\n  \"wam\": 20503,\n  \"wamy</w>\": 46970,\n  \"wan\": 2060,\n  \"wan</w>\": 4557,\n  \"wana</w>\": 30830,\n  \"wand\": 14636,\n  \"wand</w>\": 28559,\n  \"wanda</w>\": 25070,\n  \"wander\": 12985,\n  \"wander</w>\": 24473,\n  \"wandered</w>\": 46593,\n  \"wanderers</w>\": 27540,\n  \"wandering</w>\": 22597,\n  \"wanderlust</w>\": 16129,\n  \"wane</w>\": 27459,\n  \"wang\": 19731,\n  \"wang</w>\": 11900,\n  \"wani</w>\": 21674,\n  \"wankers</w>\": 42189,\n  \"wann\": 23622,\n  \"wanna\": 35940,\n  \"wanna</w>\": 3836,\n  \"wannabe</w>\": 40730,\n  \"wannaone</w>\": 44832,\n  \"want\": 18356,\n  \"want</w>\": 1280,\n  \"wanted</w>\": 3146,\n  \"wanting</w>\": 12801,\n  \"wants</w>\": 3107,\n  \"wap\": 27393,\n  \"wap</w>\": 30368,\n  \"waq\": 47512,\n  \"war\": 984,\n  \"war</w>\": 2238,\n  \"wara</w>\": 21631,\n  \"warbler</w>\": 33891,\n  \"warcraft</w>\": 13660,\n  \"ward\": 7728,\n  \"ward</w>\": 1460,\n  \"warden</w>\": 27798,\n  \"wardly</w>\": 30780,\n  \"wardro\": 14247,\n  \"wardrobe</w>\": 15020,\n  \"wards</w>\": 2593,\n  \"ware\": 7416,\n  \"ware</w>\": 4476,\n  \"wareagle</w>\": 35716,\n  \"warehouse</w>\": 13054,\n  \"wareness\": 41601,\n  \"wareness</w>\": 35870,\n  \"wares</w>\": 30692,\n  \"warfare</w>\": 15739,\n  \"warhammer</w>\": 26832,\n  \"warhol</w>\": 27554,\n  \"wari</w>\": 20977,\n  \"wark\": 46346,\n  \"wark</w>\": 15164,\n  \"warlock</w>\": 42455,\n  \"warm\": 14725,\n  \"warm</w>\": 3616,\n  \"warmed</w>\": 36695,\n  \"warmer</w>\": 14328,\n  \"warmest</w>\": 30910,\n  \"warming</w>\": 8606,\n  \"warmly</w>\": 45322,\n  \"warmongers</w>\": 33205,\n  \"warms</w>\": 32917,\n  \"warmth</w>\": 19636,\n  \"warmup</w>\": 29904,\n  \"warmups</w>\": 44094,\n  \"warn</w>\": 19360,\n  \"warned</w>\": 16409,\n  \"warner\": 28564,\n  \"warner</w>\": 13402,\n  \"warning</w>\": 4994,\n  \"warnings</w>\": 18098,\n  \"warns</w>\": 14086,\n  \"waron\": 38947,\n  \"warp</w>\": 32411,\n  \"warped</w>\": 32125,\n  \"warran\": 17392,\n  \"warrant</w>\": 22554,\n  \"warrants</w>\": 45677,\n  \"warranty</w>\": 23999,\n  \"warren\": 23143,\n  \"warren</w>\": 9234,\n  \"warri\": 4109,\n  \"warrington</w>\": 31203,\n  \"warrior\": 18998,\n  \"warrior</w>\": 8148,\n  \"warriors</w>\": 6421,\n  \"wars</w>\": 3931,\n  \"warsaw</w>\": 21072,\n  \"warship</w>\": 47846,\n  \"wart\": 43535,\n  \"wart</w>\": 7346,\n  \"wartime</w>\": 42998,\n  \"warts</w>\": 21781,\n  \"warwick\": 23081,\n  \"warwick</w>\": 22215,\n  \"warwickshire</w>\": 36766,\n  \"wary</w>\": 36213,\n  \"was\": 3398,\n  \"was</w>\": 739,\n  \"wasabi</w>\": 47334,\n  \"wash\": 3363,\n  \"wash</w>\": 7810,\n  \"washed</w>\": 14092,\n  \"washer</w>\": 24085,\n  \"washes</w>\": 38950,\n  \"washing</w>\": 13029,\n  \"washington\": 16774,\n  \"washington</w>\": 4365,\n  \"washingtondc</w>\": 40225,\n  \"washingtonpost</w>\": 28426,\n  \"wasn</w>\": 5044,\n  \"wasnt</w>\": 29607,\n  \"wasp</w>\": 24889,\n  \"wasps</w>\": 35300,\n  \"wassup</w>\": 45708,\n  \"wast\": 28886,\n  \"waste\": 18157,\n  \"waste</w>\": 6065,\n  \"wasted</w>\": 18278,\n  \"wasteland</w>\": 44035,\n  \"wastewater</w>\": 34463,\n  \"wasting</w>\": 25577,\n  \"wat\": 800,\n  \"wat</w>\": 10621,\n  \"wata</w>\": 42509,\n  \"watch\": 7046,\n  \"watch</w>\": 1239,\n  \"watchdog</w>\": 35303,\n  \"watched</w>\": 5775,\n  \"watcher</w>\": 35971,\n  \"watchers</w>\": 28443,\n  \"watches</w>\": 9521,\n  \"watchin</w>\": 32432,\n  \"watching</w>\": 2113,\n  \"water\": 2505,\n  \"water</w>\": 1573,\n  \"watercolor</w>\": 14211,\n  \"watercolour</w>\": 18377,\n  \"waterfall</w>\": 16403,\n  \"waterfalls</w>\": 26692,\n  \"waterford</w>\": 24448,\n  \"waterfront</w>\": 16605,\n  \"waterhouse</w>\": 45072,\n  \"watering</w>\": 19871,\n  \"waterloo</w>\": 17465,\n  \"watermelon</w>\": 19889,\n  \"waterproof</w>\": 17613,\n  \"waters</w>\": 7753,\n  \"watershed</w>\": 33204,\n  \"waterstones</w>\": 45014,\n  \"waterways</w>\": 37395,\n  \"watford</w>\": 23162,\n  \"watfordfc</w>\": 37328,\n  \"wati</w>\": 27966,\n  \"watkins</w>\": 22539,\n  \"watson\": 35490,\n  \"watson</w>\": 9294,\n  \"watt\": 22899,\n  \"watt</w>\": 15805,\n  \"wattpad</w>\": 32351,\n  \"watts</w>\": 14750,\n  \"wau\": 9479,\n  \"wav\": 6054,\n  \"wave\": 17530,\n  \"wave</w>\": 4535,\n  \"waved</w>\": 44657,\n  \"waver\": 25997,\n  \"waves</w>\": 7882,\n  \"waving</w>\": 26545,\n  \"wavy</w>\": 31941,\n  \"waw\": 22039,\n  \"wawrinka</w>\": 48414,\n  \"wawx</w>\": 47387,\n  \"wax\": 18789,\n  \"wax</w>\": 11910,\n  \"waxing</w>\": 38781,\n  \"way\": 3079,\n  \"way</w>\": 923,\n  \"wayback\": 47822,\n  \"wayne\": 23632,\n  \"wayne</w>\": 7003,\n  \"ways</w>\": 1248,\n  \"waz\": 20889,\n  \"waz</w>\": 48835,\n  \"wb\": 10726,\n  \"wb</w>\": 12377,\n  \"wba</w>\": 22675,\n  \"wbb</w>\": 14482,\n  \"wbc</w>\": 26745,\n  \"wbo</w>\": 49053,\n  \"wbz</w>\": 35471,\n  \"wc\": 4842,\n  \"wc</w>\": 5755,\n  \"wcc\": 47166,\n  \"wcc</w>\": 34926,\n  \"wcpo</w>\": 46624,\n  \"wcs</w>\": 39916,\n  \"wcvb</w>\": 32709,\n  \"wcw</w>\": 9041,\n  \"wd\": 15998,\n  \"wd</w>\": 7494,\n  \"wdw</w>\": 40334,\n  \"we\": 598,\n  \"we</w>\": 649,\n  \"wea\": 37146,\n  \"wea</w>\": 47301,\n  \"weak\": 12128,\n  \"weak</w>\": 10128,\n  \"weaker</w>\": 39735,\n  \"weakness</w>\": 21448,\n  \"weaknesses</w>\": 43487,\n  \"weal\": 14759,\n  \"wealth\": 33150,\n  \"wealth</w>\": 7904,\n  \"wealthy</w>\": 22617,\n  \"weap\": 6156,\n  \"weapon\": 42612,\n  \"weapon</w>\": 10537,\n  \"weapons</w>\": 10007,\n  \"wear\": 12206,\n  \"wear</w>\": 2839,\n  \"wearab\": 22983,\n  \"wearable\": 44943,\n  \"wearable</w>\": 24973,\n  \"wearables</w>\": 30319,\n  \"weare\": 4264,\n  \"weare</w>\": 27867,\n  \"weareall\": 45980,\n  \"wearec\": 43620,\n  \"wearen\": 45635,\n  \"weareone\": 16149,\n  \"weareoneexo</w>\": 16448,\n  \"wearethe\": 40242,\n  \"wearing</w>\": 3309,\n  \"wears</w>\": 11869,\n  \"weary</w>\": 38766,\n  \"weasel</w>\": 44308,\n  \"weather\": 8808,\n  \"weather</w>\": 2237,\n  \"weathercee</w>\": 44980,\n  \"weatherchannel</w>\": 42138,\n  \"weav\": 22260,\n  \"weave</w>\": 22450,\n  \"weaver</w>\": 20297,\n  \"weaving</w>\": 27131,\n  \"web\": 2055,\n  \"web</w>\": 4601,\n  \"webb</w>\": 15708,\n  \"webber</w>\": 34248,\n  \"webcam\": 24211,\n  \"webcam</w>\": 22589,\n  \"webcamtoy</w>\": 27719,\n  \"webcast</w>\": 28256,\n  \"webcomic</w>\": 34286,\n  \"webcomics</w>\": 39811,\n  \"webdesign</w>\": 20470,\n  \"webdev</w>\": 37000,\n  \"webdevelopment</w>\": 47553,\n  \"weber</w>\": 20179,\n  \"webin\": 8460,\n  \"webinar</w>\": 8921,\n  \"webinars</w>\": 47755,\n  \"webpage</w>\": 46964,\n  \"webs</w>\": 32829,\n  \"webseries</w>\": 44819,\n  \"website</w>\": 3364,\n  \"websites</w>\": 19278,\n  \"webster</w>\": 19471,\n  \"websummit</w>\": 48069,\n  \"wec</w>\": 33152,\n  \"wechat</w>\": 46124,\n  \"wed\": 1687,\n  \"wed</w>\": 3478,\n  \"wedd\": 7576,\n  \"wedding\": 11204,\n  \"wedding</w>\": 3101,\n  \"weddings</w>\": 15964,\n  \"wedge</w>\": 21446,\n  \"wedges</w>\": 33179,\n  \"wedne\": 2380,\n  \"wednesday\": 9311,\n  \"wednesday</w>\": 2689,\n  \"wednesdaymotivation</w>\": 37860,\n  \"wednesdays</w>\": 24943,\n  \"wednesdaywisdom</w>\": 11445,\n  \"wedo</w>\": 43432,\n  \"weds</w>\": 19107,\n  \"wee\": 716,\n  \"wee</w>\": 8288,\n  \"weed\": 36935,\n  \"weed</w>\": 8015,\n  \"weeds</w>\": 26326,\n  \"week\": 1286,\n  \"week</w>\": 994,\n  \"weekday</w>\": 29244,\n  \"weekdays</w>\": 44330,\n  \"weekend\": 17205,\n  \"weekend</w>\": 1456,\n  \"weekender</w>\": 36547,\n  \"weekends</w>\": 14564,\n  \"weekly\": 34652,\n  \"weekly</w>\": 5885,\n  \"weeknd</w>\": 29925,\n  \"weeks</w>\": 2898,\n  \"weeksary</w>\": 24628,\n  \"ween\": 17517,\n  \"ween</w>\": 1599,\n  \"weep</w>\": 39270,\n  \"weeping</w>\": 36629,\n  \"weer</w>\": 32491,\n  \"weet</w>\": 17742,\n  \"weets</w>\": 13454,\n  \"wef</w>\": 23313,\n  \"weg\": 47867,\n  \"weg</w>\": 47561,\n  \"wego\": 44784,\n  \"wego</w>\": 28220,\n  \"weh\": 48458,\n  \"weh</w>\": 40313,\n  \"weho</w>\": 47798,\n  \"wei\": 6958,\n  \"wei</w>\": 20952,\n  \"weibo</w>\": 20613,\n  \"weigh\": 10565,\n  \"weigh</w>\": 17346,\n  \"weighed</w>\": 33210,\n  \"weighing</w>\": 24455,\n  \"weighs</w>\": 20481,\n  \"weight\": 12723,\n  \"weight</w>\": 3868,\n  \"weighted</w>\": 43179,\n  \"weightlifting</w>\": 36164,\n  \"weightloss</w>\": 20359,\n  \"weights</w>\": 21374,\n  \"weil</w>\": 43720,\n  \"weiler</w>\": 42203,\n  \"wein\": 29134,\n  \"wein</w>\": 37684,\n  \"weiner</w>\": 38822,\n  \"weinstein</w>\": 34367,\n  \"weir\": 11299,\n  \"weir</w>\": 25517,\n  \"weird\": 27981,\n  \"weird</w>\": 5613,\n  \"weirdest</w>\": 29482,\n  \"weirdo</w>\": 32476,\n  \"weis\": 26251,\n  \"weiser</w>\": 34833,\n  \"weiss</w>\": 24794,\n  \"wel\": 1267,\n  \"wel</w>\": 8042,\n  \"welch</w>\": 25820,\n  \"welcom\": 11578,\n  \"welcome\": 18318,\n  \"welcome</w>\": 1881,\n  \"welcomed</w>\": 12590,\n  \"welcomes</w>\": 9304,\n  \"welcometo\": 47511,\n  \"welcoming</w>\": 8775,\n  \"weld</w>\": 39776,\n  \"welding</w>\": 24956,\n  \"welfare</w>\": 12129,\n  \"well\": 3277,\n  \"well</w>\": 1123,\n  \"wellbeing</w>\": 14273,\n  \"weller</w>\": 40921,\n  \"welling</w>\": 49165,\n  \"wellington</w>\": 15389,\n  \"wellness\": 40574,\n  \"wellness</w>\": 9904,\n  \"wells\": 42705,\n  \"wells</w>\": 9804,\n  \"welove\": 13573,\n  \"welp</w>\": 28391,\n  \"wels</w>\": 20852,\n  \"welsh\": 19173,\n  \"welsh</w>\": 10977,\n  \"welt</w>\": 38595,\n  \"welter\": 37115,\n  \"welterweight</w>\": 39617,\n  \"wemb\": 15213,\n  \"wembley</w>\": 16579,\n  \"wen\": 6590,\n  \"wen</w>\": 11278,\n  \"wend\": 15166,\n  \"wendell</w>\": 42091,\n  \"wendy\": 31616,\n  \"wendy</w>\": 14074,\n  \"wenger</w>\": 21105,\n  \"went\": 18633,\n  \"went</w>\": 2437,\n  \"wentworth</w>\": 36423,\n  \"wentz</w>\": 39179,\n  \"wer\": 6316,\n  \"wer</w>\": 2980,\n  \"were\": 15461,\n  \"were</w>\": 1365,\n  \"wered</w>\": 6605,\n  \"weren</w>\": 13611,\n  \"werewolf</w>\": 32001,\n  \"werk</w>\": 30176,\n  \"werner</w>\": 29917,\n  \"wers</w>\": 7110,\n  \"wes\": 18620,\n  \"wes</w>\": 14738,\n  \"wesle\": 29606,\n  \"wesley</w>\": 17332,\n  \"wesleyan</w>\": 32509,\n  \"wesome</w>\": 33292,\n  \"wess</w>\": 44431,\n  \"west\": 2973,\n  \"west</w>\": 1593,\n  \"westbound</w>\": 29208,\n  \"westbrook</w>\": 26948,\n  \"westchester</w>\": 36675,\n  \"westcoast</w>\": 44610,\n  \"westend</w>\": 44815,\n  \"wester\": 9846,\n  \"western\": 17079,\n  \"western</w>\": 4463,\n  \"westfield</w>\": 32309,\n  \"westh\": 36798,\n  \"westin</w>\": 43232,\n  \"westlake</w>\": 41535,\n  \"westminster</w>\": 15158,\n  \"weston</w>\": 22771,\n  \"westside</w>\": 33762,\n  \"westwood</w>\": 26371,\n  \"westworld</w>\": 42287,\n  \"wet\": 12406,\n  \"wet</w>\": 6682,\n  \"weta</w>\": 40946,\n  \"wethenorth</w>\": 45281,\n  \"wethepeople</w>\": 48030,\n  \"wether\": 33794,\n  \"wether</w>\": 48405,\n  \"wetland</w>\": 37357,\n  \"wetlands</w>\": 26547,\n  \"wett</w>\": 41971,\n  \"wetter</w>\": 43957,\n  \"wewant\": 39280,\n  \"wewill\": 37241,\n  \"wex\": 17234,\n  \"wexford</w>\": 29876,\n  \"wexmondays</w>\": 49042,\n  \"wey\": 30376,\n  \"wey</w>\": 19781,\n  \"weymouth</w>\": 41433,\n  \"wf\": 14576,\n  \"wf</w>\": 22313,\n  \"wfa\": 44606,\n  \"wfc</w>\": 36431,\n  \"wfp</w>\": 35193,\n  \"wftv</w>\": 47075,\n  \"wg\": 21091,\n  \"wg</w>\": 25857,\n  \"wga</w>\": 32354,\n  \"wgn\": 48828,\n  \"wh\": 573,\n  \"wh</w>\": 13844,\n  \"wha\": 18994,\n  \"wha</w>\": 25884,\n  \"whal\": 38967,\n  \"whale\": 37083,\n  \"whale</w>\": 11650,\n  \"whales</w>\": 17722,\n  \"wham\": 42506,\n  \"whar\": 15517,\n  \"wharf</w>\": 22452,\n  \"wharton</w>\": 43320,\n  \"what\": 4268,\n  \"what</w>\": 768,\n  \"whatcha</w>\": 37160,\n  \"whate\": 6695,\n  \"whatever</w>\": 6743,\n  \"whati\": 23500,\n  \"whats\": 9263,\n  \"whats</w>\": 13084,\n  \"whatsapp</w>\": 10119,\n  \"whatsoever</w>\": 39928,\n  \"whatson\": 35632,\n  \"whatyou\": 30508,\n  \"whe\": 2009,\n  \"whead</w>\": 34583,\n  \"wheat\": 20505,\n  \"wheat</w>\": 10303,\n  \"wheaton</w>\": 46933,\n  \"wheel\": 7360,\n  \"wheel</w>\": 6744,\n  \"wheelchair</w>\": 17713,\n  \"wheeler</w>\": 18405,\n  \"wheeling</w>\": 34839,\n  \"wheels</w>\": 8025,\n  \"whel\": 9792,\n  \"whelan</w>\": 40715,\n  \"when\": 8753,\n  \"when</w>\": 827,\n  \"whenever</w>\": 10500,\n  \"where\": 7052,\n  \"where</w>\": 1234,\n  \"whereabouts</w>\": 47808,\n  \"whereas</w>\": 42234,\n  \"wheres\": 46345,\n  \"wherever</w>\": 14103,\n  \"whereyou\": 46837,\n  \"whether</w>\": 5903,\n  \"whew</w>\": 39016,\n  \"whey</w>\": 34556,\n  \"whi\": 4295,\n  \"whi</w>\": 33129,\n  \"which</w>\": 1448,\n  \"whiche\": 48719,\n  \"whichever</w>\": 49138,\n  \"whil\": 8499,\n  \"while</w>\": 1519,\n  \"whilst</w>\": 8596,\n  \"whim\": 27766,\n  \"whimsical</w>\": 42282,\n  \"whip</w>\": 14412,\n  \"whipped</w>\": 22323,\n  \"whipping</w>\": 41567,\n  \"whir\": 20873,\n  \"whirl\": 30962,\n  \"whirlwind</w>\": 47771,\n  \"whis\": 6024,\n  \"whiskey\": 41381,\n  \"whiskey</w>\": 11610,\n  \"whisky\": 37567,\n  \"whisky</w>\": 12599,\n  \"whisp\": 21986,\n  \"whispe\": 30356,\n  \"whisper</w>\": 27616,\n  \"whisperer</w>\": 41368,\n  \"whispering</w>\": 42599,\n  \"whispers</w>\": 29133,\n  \"whist\": 13640,\n  \"whistle\": 23972,\n  \"whistle</w>\": 19746,\n  \"whistleblower</w>\": 40410,\n  \"whistler</w>\": 29633,\n  \"whit\": 4398,\n  \"whit</w>\": 31498,\n  \"whitaker</w>\": 35851,\n  \"whitby</w>\": 30858,\n  \"white\": 4699,\n  \"white</w>\": 1579,\n  \"whiteboard</w>\": 40839,\n  \"whitec\": 24575,\n  \"whitehall</w>\": 42827,\n  \"whitehead</w>\": 43560,\n  \"whitehouse</w>\": 20776,\n  \"whitening</w>\": 35540,\n  \"whitepaper</w>\": 42713,\n  \"whites\": 35886,\n  \"whites</w>\": 18835,\n  \"whitesox</w>\": 28816,\n  \"whitewater</w>\": 49350,\n  \"whitfield</w>\": 48404,\n  \"whitley</w>\": 40564,\n  \"whitman</w>\": 32394,\n  \"whitney\": 43021,\n  \"whitney</w>\": 18048,\n  \"whitt\": 33784,\n  \"whittaker</w>\": 47595,\n  \"whl</w>\": 25801,\n  \"who\": 2969,\n  \"who</w>\": 822,\n  \"whoa</w>\": 16943,\n  \"whoever</w>\": 11137,\n  \"whois\": 41884,\n  \"whole\": 10360,\n  \"whole</w>\": 2954,\n  \"wholefoods</w>\": 42840,\n  \"wholesale</w>\": 18306,\n  \"wholesome</w>\": 35959,\n  \"whom\": 38158,\n  \"whom</w>\": 12873,\n  \"whoo\": 20003,\n  \"whoo</w>\": 49290,\n  \"whoop</w>\": 22060,\n  \"whoops</w>\": 28433,\n  \"whopping</w>\": 34384,\n  \"whore</w>\": 31690,\n  \"whos\": 41460,\n  \"whos</w>\": 27130,\n  \"whose</w>\": 6933,\n  \"whouse</w>\": 45927,\n  \"whs</w>\": 26292,\n  \"wht</w>\": 32470,\n  \"whufc</w>\": 31695,\n  \"whun\": 18272,\n  \"why\": 11040,\n  \"why</w>\": 1182,\n  \"whyte</w>\": 42386,\n  \"wi\": 820,\n  \"wi</w>\": 5585,\n  \"wib</w>\": 45303,\n  \"wic\": 7834,\n  \"wich\": 9759,\n  \"wich</w>\": 5238,\n  \"wichita</w>\": 22566,\n  \"wick\": 6798,\n  \"wick</w>\": 6479,\n  \"wicked\": 32579,\n  \"wicked</w>\": 12825,\n  \"wicker</w>\": 38096,\n  \"wicket</w>\": 19180,\n  \"wickets</w>\": 22110,\n  \"wicklow</w>\": 39039,\n  \"wicz</w>\": 30121,\n  \"wid\": 11886,\n  \"wid</w>\": 20886,\n  \"wide\": 19341,\n  \"wide</w>\": 3184,\n  \"widely</w>\": 16195,\n  \"widening</w>\": 46598,\n  \"wider</w>\": 21263,\n  \"widesp\": 20598,\n  \"widespread</w>\": 21258,\n  \"widget</w>\": 43906,\n  \"wido\": 28068,\n  \"widow</w>\": 19949,\n  \"widows</w>\": 42129,\n  \"width</w>\": 23571,\n  \"wie\": 21378,\n  \"wie</w>\": 9131,\n  \"wielding</w>\": 47272,\n  \"wien</w>\": 38131,\n  \"wiener</w>\": 40567,\n  \"wies\": 42788,\n  \"wif</w>\": 37572,\n  \"wife</w>\": 3607,\n  \"wifey</w>\": 35282,\n  \"wifi</w>\": 11026,\n  \"wig\": 23690,\n  \"wig</w>\": 12216,\n  \"wigan</w>\": 23130,\n  \"wiggins</w>\": 32329,\n  \"wiggle</w>\": 47812,\n  \"wight\": 41278,\n  \"wight</w>\": 15545,\n  \"wigs</w>\": 31207,\n  \"wii</w>\": 8005,\n  \"wiiu</w>\": 40980,\n  \"wiki\": 10373,\n  \"wiki</w>\": 24265,\n  \"wikileaks</w>\": 28731,\n  \"wikipedia</w>\": 15176,\n  \"wil\": 1352,\n  \"wil</w>\": 20581,\n  \"wilbur</w>\": 43069,\n  \"wilcox</w>\": 43231,\n  \"wild\": 2780,\n  \"wild</w>\": 3220,\n  \"wildatlantic\": 35500,\n  \"wildatlanticway</w>\": 35776,\n  \"wildcard</w>\": 37360,\n  \"wildcat\": 49077,\n  \"wildcat</w>\": 25870,\n  \"wildcats</w>\": 15909,\n  \"wilde</w>\": 23498,\n  \"wilder\": 14343,\n  \"wilder</w>\": 23499,\n  \"wilderness</w>\": 16506,\n  \"wildest</w>\": 43028,\n  \"wildfire</w>\": 22788,\n  \"wildfires</w>\": 29184,\n  \"wildflower\": 27628,\n  \"wildflower</w>\": 33181,\n  \"wildflowerhour</w>\": 31302,\n  \"wildflowers</w>\": 29136,\n  \"wildlife\": 13298,\n  \"wildlife</w>\": 5250,\n  \"wildlifephotography</w>\": 32307,\n  \"wildlifewednesday</w>\": 48537,\n  \"wildly</w>\": 35981,\n  \"wildoz</w>\": 40113,\n  \"wiley</w>\": 32747,\n  \"wilhelm</w>\": 39696,\n  \"wilkes</w>\": 39548,\n  \"wilkins</w>\": 36986,\n  \"wilkinson</w>\": 26797,\n  \"will\": 5062,\n  \"will</w>\": 751,\n  \"willam\": 43276,\n  \"willard</w>\": 44920,\n  \"wille\": 48739,\n  \"willem</w>\": 38044,\n  \"willi\": 2256,\n  \"william\": 8420,\n  \"william</w>\": 4705,\n  \"williams\": 38452,\n  \"williams</w>\": 4075,\n  \"williamsburg</w>\": 30683,\n  \"williamson</w>\": 20793,\n  \"willie</w>\": 13907,\n  \"willing\": 34160,\n  \"willing</w>\": 11718,\n  \"willingness</w>\": 40573,\n  \"willis</w>\": 18491,\n  \"willow\": 33887,\n  \"willow</w>\": 15665,\n  \"wills</w>\": 26913,\n  \"willy\": 34502,\n  \"willy</w>\": 19599,\n  \"wilmington</w>\": 28052,\n  \"wilms\": 47879,\n  \"wilshere</w>\": 48359,\n  \"wilson\": 23629,\n  \"wilson</w>\": 5622,\n  \"wilt\": 23394,\n  \"wilt</w>\": 47357,\n  \"wilton</w>\": 46638,\n  \"wiltshire</w>\": 28025,\n  \"wim\": 8662,\n  \"wim</w>\": 27580,\n  \"wimble\": 11752,\n  \"wimbledon</w>\": 12229,\n  \"win\": 831,\n  \"win</w>\": 1225,\n  \"winchester</w>\": 20647,\n  \"wind\": 6812,\n  \"wind</w>\": 3630,\n  \"winder\": 44454,\n  \"winder</w>\": 46245,\n  \"winding</w>\": 22390,\n  \"windmill</w>\": 34084,\n  \"windo\": 3110,\n  \"window\": 26675,\n  \"window</w>\": 4879,\n  \"windows</w>\": 5437,\n  \"winds\": 12668,\n  \"winds</w>\": 7012,\n  \"windshield</w>\": 33002,\n  \"windsor\": 44322,\n  \"windsor</w>\": 12884,\n  \"windy</w>\": 13446,\n  \"wine\": 7375,\n  \"wine</w>\": 2604,\n  \"winelover</w>\": 26357,\n  \"winemaker</w>\": 41588,\n  \"wineoclock</w>\": 43846,\n  \"wineries</w>\": 49349,\n  \"winery</w>\": 15500,\n  \"wines</w>\": 8263,\n  \"winetasting</w>\": 41288,\n  \"winewednesday</w>\": 35447,\n  \"wing\": 8141,\n  \"wing</w>\": 1340,\n  \"winged</w>\": 24993,\n  \"winger</w>\": 22727,\n  \"winget</w>\": 44578,\n  \"wings</w>\": 5178,\n  \"wink\": 34455,\n  \"wink</w>\": 25859,\n  \"winkle</w>\": 36430,\n  \"winn</w>\": 38104,\n  \"winne\": 46273,\n  \"winner\": 32961,\n  \"winner</w>\": 2520,\n  \"winners</w>\": 4320,\n  \"winni\": 13018,\n  \"winnie</w>\": 29022,\n  \"winning\": 42099,\n  \"winning</w>\": 2577,\n  \"winnings</w>\": 46490,\n  \"winnipeg</w>\": 14369,\n  \"winona</w>\": 49202,\n  \"wins\": 46839,\n  \"wins</w>\": 2718,\n  \"winslow</w>\": 39658,\n  \"winston</w>\": 14848,\n  \"winter\": 7340,\n  \"winter</w>\": 2541,\n  \"winters</w>\": 21587,\n  \"wintry</w>\": 39504,\n  \"wip</w>\": 10447,\n  \"wipe</w>\": 26761,\n  \"wiped</w>\": 31822,\n  \"wipes</w>\": 33463,\n  \"wir\": 16849,\n  \"wir</w>\": 44838,\n  \"wire\": 7558,\n  \"wire</w>\": 7794,\n  \"wired</w>\": 18935,\n  \"wireless</w>\": 9103,\n  \"wires</w>\": 24311,\n  \"wiring</w>\": 36434,\n  \"wirral</w>\": 34675,\n  \"wis\": 3392,\n  \"wis</w>\": 20405,\n  \"wiscon\": 9857,\n  \"wisconsin</w>\": 10265,\n  \"wisdom\": 42474,\n  \"wisdom</w>\": 5425,\n  \"wise\": 19116,\n  \"wise</w>\": 5558,\n  \"wisely</w>\": 26173,\n  \"wiser</w>\": 44859,\n  \"wish\": 11328,\n  \"wish</w>\": 2412,\n  \"wished</w>\": 25883,\n  \"wishes</w>\": 6045,\n  \"wishing</w>\": 5307,\n  \"wishlist</w>\": 31969,\n  \"wit\": 584,\n  \"wit</w>\": 8531,\n  \"witch\": 20139,\n  \"witch</w>\": 10083,\n  \"witchcraft</w>\": 35065,\n  \"witcher</w>\": 33684,\n  \"witches</w>\": 21673,\n  \"with\": 1435,\n  \"with</w>\": 593,\n  \"withdra\": 24696,\n  \"withdraw</w>\": 31670,\n  \"withdrawal</w>\": 25765,\n  \"withdrawn</w>\": 46687,\n  \"withdraws</w>\": 48637,\n  \"wither\": 39655,\n  \"witherspoon</w>\": 45409,\n  \"within</w>\": 4154,\n  \"withme</w>\": 44670,\n  \"without\": 32836,\n  \"without</w>\": 2193,\n  \"withstand</w>\": 42236,\n  \"withthe\": 36872,\n  \"withus</w>\": 30572,\n  \"withyou</w>\": 30351,\n  \"witne\": 12096,\n  \"witness</w>\": 8793,\n  \"witnessed</w>\": 20187,\n  \"witnesses</w>\": 22778,\n  \"witnessing</w>\": 33618,\n  \"wits</w>\": 30938,\n  \"witt\": 38194,\n  \"witt</w>\": 17168,\n  \"witter</w>\": 31597,\n  \"witty</w>\": 29970,\n  \"witz\": 44186,\n  \"witz</w>\": 13265,\n  \"wiv</w>\": 48925,\n  \"wives</w>\": 14378,\n  \"wiwx</w>\": 44461,\n  \"wiz\": 7730,\n  \"wiz</w>\": 23178,\n  \"wizar\": 49121,\n  \"wizard\": 30490,\n  \"wizard</w>\": 14295,\n  \"wizards</w>\": 19140,\n  \"wizkid</w>\": 40146,\n  \"wj\": 19739,\n  \"wj</w>\": 35453,\n  \"wk\": 11512,\n  \"wk</w>\": 11528,\n  \"wkend</w>\": 42336,\n  \"wknd</w>\": 20851,\n  \"wks</w>\": 25508,\n  \"wku</w>\": 43377,\n  \"wl\": 13299,\n  \"wl</w>\": 9613,\n  \"wm\": 20268,\n  \"wm</w>\": 15790,\n  \"wn\": 1186,\n  \"wn</w>\": 757,\n  \"wnba</w>\": 32358,\n  \"wned</w>\": 8628,\n  \"wns</w>\": 12950,\n  \"wnt</w>\": 22484,\n  \"wny</w>\": 24833,\n  \"wo\": 1613,\n  \"wo</w>\": 11132,\n  \"woah</w>\": 17751,\n  \"wob\": 35984,\n  \"woc</w>\": 39011,\n  \"wod</w>\": 41522,\n  \"woes</w>\": 27860,\n  \"wof\": 45671,\n  \"woj\": 48931,\n  \"wok</w>\": 28912,\n  \"woke</w>\": 9331,\n  \"woken</w>\": 43697,\n  \"woking</w>\": 43931,\n  \"wol\": 2798,\n  \"wol</w>\": 48622,\n  \"wold</w>\": 42399,\n  \"wolf\": 9453,\n  \"wolf</w>\": 5916,\n  \"wolfe</w>\": 24989,\n  \"wolff</w>\": 34369,\n  \"wolfgang</w>\": 34061,\n  \"wolfpack</w>\": 30887,\n  \"wolve\": 45101,\n  \"wolver\": 14334,\n  \"wolverhampton</w>\": 34518,\n  \"wolverine</w>\": 23353,\n  \"wolverines</w>\": 42003,\n  \"wolves</w>\": 9372,\n  \"wom\": 1087,\n  \"womack</w>\": 48980,\n  \"woman\": 15716,\n  \"woman</w>\": 2308,\n  \"womanc\": 35630,\n  \"womancrush\": 37721,\n  \"womancrushwednesday</w>\": 39714,\n  \"womanin\": 30562,\n  \"womaninbiz</w>\": 36482,\n  \"womb</w>\": 37023,\n  \"women\": 3648,\n  \"women</w>\": 1507,\n  \"womenin\": 13062,\n  \"womeninscience</w>\": 41343,\n  \"womeninstem</w>\": 29380,\n  \"womenintech</w>\": 31470,\n  \"womenof\": 48421,\n  \"womens\": 12822,\n  \"womens</w>\": 14408,\n  \"womensart</w>\": 38548,\n  \"womensday</w>\": 13956,\n  \"womenshi\": 22887,\n  \"womenshistorymonth</w>\": 24982,\n  \"womensmarch</w>\": 30102,\n  \"won\": 1528,\n  \"won</w>\": 1749,\n  \"wonder\": 2070,\n  \"wonder</w>\": 3936,\n  \"wondercon</w>\": 46944,\n  \"wondered</w>\": 15550,\n  \"wonderful</w>\": 2582,\n  \"wonderfully</w>\": 23245,\n  \"wondering</w>\": 8360,\n  \"wonderland</w>\": 13874,\n  \"wonders</w>\": 14048,\n  \"wonderwoman</w>\": 31000,\n  \"wondo</w>\": 38402,\n  \"wondr\": 46771,\n  \"wong</w>\": 17876,\n  \"wonka</w>\": 43463,\n  \"wont\": 43174,\n  \"wont</w>\": 15952,\n  \"woo\": 1867,\n  \"woo</w>\": 9322,\n  \"wood\": 3269,\n  \"wood</w>\": 1704,\n  \"woodbridge</w>\": 49074,\n  \"wooden\": 48226,\n  \"wooden</w>\": 9057,\n  \"woodland\": 44314,\n  \"woodland</w>\": 17447,\n  \"woodlands</w>\": 32430,\n  \"woodley</w>\": 40566,\n  \"woodpecker</w>\": 32684,\n  \"woods</w>\": 6267,\n  \"woodson</w>\": 48967,\n  \"woodstock</w>\": 29486,\n  \"woodward</w>\": 27419,\n  \"woodwork</w>\": 47386,\n  \"woodworking</w>\": 29267,\n  \"woody\": 38627,\n  \"woody</w>\": 17144,\n  \"woof\": 34234,\n  \"woof</w>\": 24028,\n  \"woohoo</w>\": 20172,\n  \"wook</w>\": 29192,\n  \"wool\": 9967,\n  \"wool</w>\": 13283,\n  \"woolf</w>\": 43728,\n  \"woolly</w>\": 47722,\n  \"woon</w>\": 33126,\n  \"wooo</w>\": 43217,\n  \"woop</w>\": 31884,\n  \"woot</w>\": 22466,\n  \"wor\": 641,\n  \"worcester\": 22172,\n  \"worcester</w>\": 19580,\n  \"worcestershire</w>\": 38440,\n  \"worcestershirehour</w>\": 43644,\n  \"word\": 8272,\n  \"word</w>\": 2653,\n  \"wordof\": 33500,\n  \"wordoftheday</w>\": 43594,\n  \"wordpress</w>\": 15193,\n  \"words\": 31007,\n  \"words</w>\": 2709,\n  \"wore</w>\": 8953,\n  \"work\": 1636,\n  \"work</w>\": 951,\n  \"workday</w>\": 29735,\n  \"worked</w>\": 5410,\n  \"worker</w>\": 8098,\n  \"workers</w>\": 4795,\n  \"workflow</w>\": 28502,\n  \"workforce</w>\": 14672,\n  \"workin\": 31825,\n  \"workin</w>\": 26323,\n  \"working\": 20806,\n  \"working</w>\": 1699,\n  \"workinprogress</w>\": 46086,\n  \"workout</w>\": 6773,\n  \"workouts</w>\": 22779,\n  \"workplace</w>\": 11959,\n  \"workplaces</w>\": 47383,\n  \"works</w>\": 2322,\n  \"workshop</w>\": 3832,\n  \"workshops</w>\": 12262,\n  \"workspace</w>\": 34470,\n  \"worl\": 5221,\n  \"world\": 2334,\n  \"world</w>\": 1002,\n  \"worlda\": 46627,\n  \"worldbank</w>\": 36759,\n  \"worldbookday</w>\": 31191,\n  \"worldcup\": 42525,\n  \"worldcup</w>\": 8650,\n  \"worlden\": 44668,\n  \"worldenviron\": 47115,\n  \"worldenvironmentday</w>\": 47522,\n  \"worldly</w>\": 36268,\n  \"worldo\": 41698,\n  \"worldof\": 22636,\n  \"worldre\": 33951,\n  \"worlds</w>\": 7691,\n  \"worldseries</w>\": 26695,\n  \"worldtour</w>\": 23202,\n  \"worldwater\": 41176,\n  \"worldwaterday</w>\": 44520,\n  \"worldwide</w>\": 6214,\n  \"worm\": 33709,\n  \"worm</w>\": 10945,\n  \"worms</w>\": 20231,\n  \"worn</w>\": 9037,\n  \"worried</w>\": 11911,\n  \"worries</w>\": 17684,\n  \"worry</w>\": 7534,\n  \"worrying</w>\": 24058,\n  \"worse</w>\": 8236,\n  \"worsen\": 46344,\n  \"worshi\": 31840,\n  \"worship\": 46399,\n  \"worship</w>\": 9023,\n  \"worst</w>\": 5719,\n  \"wort</w>\": 30209,\n  \"worth\": 10671,\n  \"worth</w>\": 2450,\n  \"worthing</w>\": 39929,\n  \"worthit</w>\": 40830,\n  \"worthless</w>\": 44736,\n  \"worths</w>\": 44633,\n  \"worthwhile</w>\": 36295,\n  \"worthy</w>\": 8881,\n  \"worx</w>\": 44973,\n  \"wot</w>\": 24863,\n  \"wou\": 5279,\n  \"would\": 39873,\n  \"would</w>\": 1311,\n  \"wouldn</w>\": 5878,\n  \"wouldnt</w>\": 41595,\n  \"wound</w>\": 19231,\n  \"wounded</w>\": 14859,\n  \"wounds</w>\": 21290,\n  \"woven</w>\": 19830,\n  \"wow\": 22191,\n  \"wow</w>\": 2781,\n  \"woz\": 44558,\n  \"wozni\": 47782,\n  \"wp\": 15378,\n  \"wp</w>\": 13302,\n  \"wpg</w>\": 35048,\n  \"wps</w>\": 33386,\n  \"wq\": 45195,\n  \"wr\": 1189,\n  \"wr</w>\": 8028,\n  \"wra\": 3852,\n  \"wra</w>\": 46004,\n  \"wral</w>\": 49050,\n  \"wrangler</w>\": 30923,\n  \"wrap</w>\": 7094,\n  \"wrapped</w>\": 9875,\n  \"wrapping</w>\": 15223,\n  \"wraps</w>\": 18236,\n  \"wrath</w>\": 29783,\n  \"wray</w>\": 48943,\n  \"wrc</w>\": 16004,\n  \"wre\": 3168,\n  \"wreath</w>\": 23091,\n  \"wrec\": 20879,\n  \"wreck\": 28775,\n  \"wreck</w>\": 15017,\n  \"wrecked</w>\": 32695,\n  \"wreckem</w>\": 45676,\n  \"wrecking</w>\": 36956,\n  \"wrecks</w>\": 45545,\n  \"wren\": 20191,\n  \"wren</w>\": 31970,\n  \"wrench</w>\": 30980,\n  \"wrest\": 4177,\n  \"wrestle\": 17097,\n  \"wrestle</w>\": 28086,\n  \"wrestlemania</w>\": 18849,\n  \"wrestler</w>\": 19790,\n  \"wrestlers</w>\": 25902,\n  \"wrestling\": 31292,\n  \"wrestling</w>\": 5904,\n  \"wrexham</w>\": 34479,\n  \"wri\": 7667,\n  \"wri</w>\": 42007,\n  \"wright\": 28616,\n  \"wright</w>\": 6991,\n  \"wrights</w>\": 43711,\n  \"wrigley</w>\": 33538,\n  \"wrink\": 22201,\n  \"wrinkle</w>\": 46642,\n  \"wrinkles</w>\": 35525,\n  \"wrist\": 19243,\n  \"wrist</w>\": 16139,\n  \"wristband</w>\": 36890,\n  \"wristbands</w>\": 44864,\n  \"writ\": 2902,\n  \"write\": 28874,\n  \"write</w>\": 4946,\n  \"writer\": 27886,\n  \"writer</w>\": 4422,\n  \"writers\": 18742,\n  \"writers</w>\": 7307,\n  \"writerslife</w>\": 25007,\n  \"writes</w>\": 8023,\n  \"writing\": 16053,\n  \"writing</w>\": 2979,\n  \"writingcommunity</w>\": 39178,\n  \"writings</w>\": 36259,\n  \"written</w>\": 5231,\n  \"wro\": 5447,\n  \"wrong\": 18381,\n  \"wrong</w>\": 3669,\n  \"wrongly</w>\": 45642,\n  \"wrote</w>\": 5796,\n  \"wrought</w>\": 48125,\n  \"wrs</w>\": 45280,\n  \"ws\": 6300,\n  \"ws</w>\": 799,\n  \"wsb\": 30681,\n  \"wsbtv</w>\": 38394,\n  \"wsj</w>\": 19764,\n  \"wski</w>\": 12548,\n  \"wsl</w>\": 43706,\n  \"wsoc</w>\": 40253,\n  \"wson</w>\": 33954,\n  \"wsop</w>\": 41231,\n  \"wsu\": 44674,\n  \"wsu</w>\": 32913,\n  \"wsw</w>\": 43285,\n  \"wt\": 15873,\n  \"wt</w>\": 12255,\n  \"wta</w>\": 25984,\n  \"wtc</w>\": 39718,\n  \"wtf</w>\": 6891,\n  \"wth</w>\": 23021,\n  \"wthr\": 45269,\n  \"wti</w>\": 47345,\n  \"wto</w>\": 36406,\n  \"wts</w>\": 32159,\n  \"wu\": 9710,\n  \"wu</w>\": 9837,\n  \"wud</w>\": 43870,\n  \"wul\": 35154,\n  \"wunder\": 36661,\n  \"wur\": 24040,\n  \"wurst</w>\": 44409,\n  \"wusa</w>\": 40021,\n  \"wut</w>\": 28590,\n  \"wv\": 18920,\n  \"wv</w>\": 14743,\n  \"wvu\": 44878,\n  \"wvu</w>\": 25879,\n  \"ww\": 3181,\n  \"ww</w>\": 4491,\n  \"wwc</w>\": 26505,\n  \"wwdc</w>\": 47441,\n  \"wwe\": 12112,\n  \"wwe</w>\": 5290,\n  \"wwen\": 23308,\n  \"wwenetwork</w>\": 37228,\n  \"wwenxt</w>\": 39898,\n  \"wwer\": 32038,\n  \"wwf</w>\": 23332,\n  \"wwfc</w>\": 42681,\n  \"wwg</w>\": 35322,\n  \"wwi</w>\": 20194,\n  \"wwii</w>\": 10261,\n  \"www\": 26074,\n  \"www</w>\": 9667,\n  \"wwwbigbaldhead</w>\": 30761,\n  \"wwww\": 34224,\n  \"wwww</w>\": 25200,\n  \"wwwww</w>\": 48268,\n  \"wwx</w>\": 47431,\n  \"wx\": 18192,\n  \"wx</w>\": 3561,\n  \"wy\": 4665,\n  \"wy</w>\": 7625,\n  \"wyatt</w>\": 21660,\n  \"wyd</w>\": 33113,\n  \"wye\": 48436,\n  \"wye</w>\": 43751,\n  \"wylie</w>\": 49330,\n  \"wyn\": 11802,\n  \"wyn</w>\": 17504,\n  \"wynn</w>\": 36117,\n  \"wynne</w>\": 35951,\n  \"wynonna\": 41456,\n  \"wynonnaearp</w>\": 43755,\n  \"wyoming</w>\": 18693,\n  \"x\": 87,\n  \"x</w>\": 343,\n  \"xa</w>\": 24831,\n  \"xan\": 45530,\n  \"xander</w>\": 45601,\n  \"xavi\": 36342,\n  \"xavier\": 41044,\n  \"xavier</w>\": 18567,\n  \"xb</w>\": 33678,\n  \"xbox\": 18063,\n  \"xbox</w>\": 7748,\n  \"xboxone</w>\": 27410,\n  \"xc</w>\": 12515,\n  \"xchange</w>\": 49132,\n  \"xd</w>\": 6380,\n  \"xe\": 42886,\n  \"xe</w>\": 19183,\n  \"xen\": 15568,\n  \"xer\": 49005,\n  \"xf</w>\": 35274,\n  \"xfactor</w>\": 25211,\n  \"xfinity</w>\": 35107,\n  \"xford</w>\": 34732,\n  \"xh</w>\": 45771,\n  \"xham</w>\": 25284,\n  \"xi\": 2467,\n  \"xi</w>\": 7376,\n  \"xia\": 19854,\n  \"xia</w>\": 20724,\n  \"xian</w>\": 42570,\n  \"xiao</w>\": 49318,\n  \"xiaomi</w>\": 27477,\n  \"xico</w>\": 38469,\n  \"xide</w>\": 17398,\n  \"xie\": 40122,\n  \"xie</w>\": 15976,\n  \"xii</w>\": 36525,\n  \"xiii</w>\": 28199,\n  \"xim\": 11217,\n  \"xin\": 27053,\n  \"xin</w>\": 41517,\n  \"xing</w>\": 14383,\n  \"xion</w>\": 24164,\n  \"xis</w>\": 35793,\n  \"xit</w>\": 5316,\n  \"xiumin</w>\": 36563,\n  \"xiv</w>\": 16125,\n  \"xj</w>\": 42453,\n  \"xl\": 36529,\n  \"xl</w>\": 8833,\n  \"xley</w>\": 38223,\n  \"xm</w>\": 18626,\n  \"xma\": 48805,\n  \"xmas\": 48848,\n  \"xmas</w>\": 6425,\n  \"xmen</w>\": 28708,\n  \"xn</w>\": 25388,\n  \"xo\": 26936,\n  \"xo</w>\": 9000,\n  \"xon\": 29186,\n  \"xon</w>\": 8482,\n  \"xox\": 11531,\n  \"xox</w>\": 34050,\n  \"xoxo</w>\": 13313,\n  \"xp</w>\": 15651,\n  \"xper\": 32200,\n  \"xperia</w>\": 37615,\n  \"xpo</w>\": 44377,\n  \"xpress</w>\": 31809,\n  \"xq</w>\": 40606,\n  \"xr</w>\": 26276,\n  \"xrp</w>\": 26965,\n  \"xs</w>\": 16397,\n  \"xt</w>\": 1052,\n  \"xtina</w>\": 45520,\n  \"xton\": 32666,\n  \"xton</w>\": 10597,\n  \"xtra</w>\": 26969,\n  \"xtre\": 27025,\n  \"xtreme</w>\": 33483,\n  \"xu\": 42063,\n  \"xu</w>\": 37198,\n  \"xv</w>\": 17768,\n  \"xvi</w>\": 44031,\n  \"xx\": 5675,\n  \"xx</w>\": 3553,\n  \"xxl</w>\": 29777,\n  \"xxx\": 33923,\n  \"xxx</w>\": 8352,\n  \"xxxx\": 32035,\n  \"xxxx</w>\": 22819,\n  \"xxxxx</w>\": 44195,\n  \"xy\": 20023,\n  \"xy</w>\": 11443,\n  \"y\": 88,\n  \"y</w>\": 344,\n  \"ya\": 5018,\n  \"ya</w>\": 1430,\n  \"yaa\": 48847,\n  \"yaa</w>\": 34498,\n  \"yaan</w>\": 34680,\n  \"yab\": 27737,\n  \"yach\": 9039,\n  \"yacht\": 43806,\n  \"yacht</w>\": 12859,\n  \"yachts</w>\": 29260,\n  \"yad\": 13276,\n  \"yad</w>\": 40047,\n  \"yadav</w>\": 26650,\n  \"yaf\": 38019,\n  \"yag\": 35081,\n  \"yah\": 16170,\n  \"yah</w>\": 12381,\n  \"yaho\": 37929,\n  \"yahoo\": 38152,\n  \"yahoo</w>\": 16846,\n  \"yak\": 11014,\n  \"yak</w>\": 29074,\n  \"yaki</w>\": 44677,\n  \"yaku\": 29572,\n  \"yakuza</w>\": 42628,\n  \"yal\": 16198,\n  \"yal</w>\": 13418,\n  \"yale\": 39926,\n  \"yale</w>\": 17157,\n  \"yall</w>\": 9210,\n  \"yam\": 6666,\n  \"yam</w>\": 19318,\n  \"yama</w>\": 23512,\n  \"yamaha</w>\": 18854,\n  \"yan\": 3949,\n  \"yan</w>\": 4788,\n  \"yana</w>\": 18698,\n  \"yand\": 38609,\n  \"yang\": 23818,\n  \"yang</w>\": 12605,\n  \"yani</w>\": 26439,\n  \"yankee</w>\": 21554,\n  \"yankees</w>\": 11889,\n  \"yann\": 40246,\n  \"yann</w>\": 38657,\n  \"yao</w>\": 45231,\n  \"yap\": 48700,\n  \"yap</w>\": 34468,\n  \"yar\": 6786,\n  \"yar</w>\": 23071,\n  \"yard\": 20234,\n  \"yard</w>\": 4313,\n  \"yards</w>\": 7550,\n  \"yarmouth</w>\": 45941,\n  \"yarn</w>\": 19702,\n  \"yarra</w>\": 46824,\n  \"yas\": 8168,\n  \"yas</w>\": 20570,\n  \"yash\": 30216,\n  \"yash</w>\": 37836,\n  \"yasi\": 37700,\n  \"yasss</w>\": 23873,\n  \"yat\": 29443,\n  \"yat</w>\": 34965,\n  \"yates</w>\": 27677,\n  \"yatra</w>\": 38932,\n  \"yav\": 41275,\n  \"yaw\": 31989,\n  \"yawn</w>\": 48643,\n  \"yay\": 20614,\n  \"yay</w>\": 6712,\n  \"yaya</w>\": 37608,\n  \"yaz\": 19348,\n  \"yaz</w>\": 42252,\n  \"yb\": 41785,\n  \"yb</w>\": 27615,\n  \"yc</w>\": 11931,\n  \"ycle</w>\": 38089,\n  \"yd\": 29896,\n  \"yd</w>\": 9534,\n  \"yday</w>\": 15899,\n  \"yds</w>\": 24819,\n  \"ye\": 693,\n  \"ye</w>\": 4582,\n  \"yea</w>\": 13687,\n  \"yeah\": 29405,\n  \"yeah</w>\": 3908,\n  \"year\": 5163,\n  \"year</w>\": 935,\n  \"yearbook</w>\": 21636,\n  \"yearling</w>\": 48392,\n  \"yearly</w>\": 24541,\n  \"yearof\": 31944,\n  \"yearofthe\": 47899,\n  \"years\": 30864,\n  \"years</w>\": 1151,\n  \"yearsof\": 14932,\n  \"yearswith\": 45249,\n  \"yeast</w>\": 25819,\n  \"yeats</w>\": 44903,\n  \"yed\": 28137,\n  \"yed</w>\": 3301,\n  \"yee\": 18114,\n  \"yee</w>\": 23108,\n  \"yeezy</w>\": 24901,\n  \"yeg\": 16854,\n  \"yeg</w>\": 11976,\n  \"yegfood</w>\": 48711,\n  \"yeh</w>\": 21331,\n  \"yel\": 3323,\n  \"yel</w>\": 48164,\n  \"yell</w>\": 30824,\n  \"yelled</w>\": 39199,\n  \"yelling</w>\": 26581,\n  \"yellow\": 12059,\n  \"yellow</w>\": 4481,\n  \"yellowstone</w>\": 29241,\n  \"yelp</w>\": 31674,\n  \"yemen\": 29276,\n  \"yemen</w>\": 12513,\n  \"yemeni</w>\": 44656,\n  \"yemi</w>\": 42267,\n  \"yen\": 29602,\n  \"yen</w>\": 17960,\n  \"yeo\": 32292,\n  \"yeo</w>\": 43830,\n  \"yeol</w>\": 15808,\n  \"yeon</w>\": 16602,\n  \"yep</w>\": 10964,\n  \"yer\": 15491,\n  \"yer</w>\": 2371,\n  \"yers</w>\": 3722,\n  \"yes\": 21620,\n  \"yes</w>\": 1958,\n  \"yess\": 42778,\n  \"yess</w>\": 40189,\n  \"yesss</w>\": 36210,\n  \"yessss</w>\": 45620,\n  \"yester\": 1905,\n  \"yesterday</w>\": 1926,\n  \"yesterdays</w>\": 36238,\n  \"yesung</w>\": 38527,\n  \"yet</w>\": 2296,\n  \"yeti</w>\": 34228,\n  \"yev</w>\": 39855,\n  \"yew</w>\": 34660,\n  \"yey</w>\": 45447,\n  \"yg</w>\": 16396,\n  \"ygk</w>\": 44758,\n  \"ygo\": 46166,\n  \"yh</w>\": 41978,\n  \"yi\": 5826,\n  \"yi</w>\": 14762,\n  \"yield</w>\": 16825,\n  \"yields</w>\": 24856,\n  \"yikes</w>\": 25094,\n  \"yin\": 26476,\n  \"yin</w>\": 23543,\n  \"ying\": 42933,\n  \"ying</w>\": 910,\n  \"yixing</w>\": 32120,\n  \"yk</w>\": 30965,\n  \"yl\": 2656,\n  \"yl</w>\": 4045,\n  \"ylan</w>\": 41875,\n  \"ylde</w>\": 42850,\n  \"yle\": 32305,\n  \"yle</w>\": 10770,\n  \"ylene</w>\": 34239,\n  \"yler</w>\": 48081,\n  \"yles</w>\": 42860,\n  \"ylon</w>\": 22375,\n  \"ylor</w>\": 48468,\n  \"ym\": 1786,\n  \"ym</w>\": 19587,\n  \"yman</w>\": 29077,\n  \"ymc\": 47101,\n  \"ymca</w>\": 22369,\n  \"yment</w>\": 8199,\n  \"ymes</w>\": 39968,\n  \"ymi</w>\": 5271,\n  \"ymm</w>\": 37133,\n  \"ymoun\": 41426,\n  \"ymouth</w>\": 36429,\n  \"yn\": 2823,\n  \"yn</w>\": 4100,\n  \"yne</w>\": 18238,\n  \"ynes</w>\": 18020,\n  \"ynn</w>\": 10499,\n  \"ynna</w>\": 48292,\n  \"ynwa</w>\": 27372,\n  \"yo\": 586,\n  \"yo</w>\": 3497,\n  \"yoda</w>\": 31922,\n  \"yof\": 5966,\n  \"yofficial</w>\": 21818,\n  \"yofthe\": 43983,\n  \"yog\": 34985,\n  \"yog</w>\": 36539,\n  \"yoga\": 25872,\n  \"yoga</w>\": 5523,\n  \"yogh\": 32626,\n  \"yoghurt</w>\": 33491,\n  \"yogi</w>\": 22766,\n  \"yogur\": 16137,\n  \"yogurt</w>\": 16819,\n  \"yoh</w>\": 48880,\n  \"yoke</w>\": 41969,\n  \"yoko\": 25929,\n  \"yoko</w>\": 32256,\n  \"yokohama</w>\": 42409,\n  \"yol\": 19387,\n  \"yol</w>\": 35218,\n  \"yolanda</w>\": 43845,\n  \"yolo</w>\": 20905,\n  \"yom\": 34718,\n  \"yom</w>\": 44527,\n  \"yon\": 10147,\n  \"yon</w>\": 7604,\n  \"yong\": 27960,\n  \"yong</w>\": 20887,\n  \"yonge</w>\": 48592,\n  \"yoo\": 25842,\n  \"yoo</w>\": 20775,\n  \"yoon\": 30863,\n  \"yoon</w>\": 22113,\n  \"yoona</w>\": 32736,\n  \"yoongi</w>\": 24037,\n  \"yor\": 2028,\n  \"yor</w>\": 21132,\n  \"york\": 5318,\n  \"york</w>\": 2705,\n  \"yorker</w>\": 23865,\n  \"yorkers</w>\": 41041,\n  \"yorks</w>\": 39093,\n  \"yorkshi\": 43367,\n  \"yorkshire\": 27007,\n  \"yorkshire</w>\": 8633,\n  \"yoruba</w>\": 46083,\n  \"yos</w>\": 35607,\n  \"yosemite</w>\": 25893,\n  \"yoshi\": 22920,\n  \"yoshi</w>\": 25354,\n  \"yot\": 22875,\n  \"yotes</w>\": 46157,\n  \"yotpo</w>\": 26113,\n  \"you\": 1562,\n  \"you</w>\": 592,\n  \"youare\": 33879,\n  \"youcan\": 32498,\n  \"youknow\": 47919,\n  \"youknow</w>\": 41088,\n  \"youn\": 1596,\n  \"young\": 6939,\n  \"young</w>\": 1888,\n  \"younger</w>\": 10414,\n  \"youngest</w>\": 12316,\n  \"youngjae</w>\": 46426,\n  \"youngster</w>\": 35881,\n  \"youngsters</w>\": 28098,\n  \"younow</w>\": 33831,\n  \"your\": 2130,\n  \"your</w>\": 695,\n  \"youre\": 28344,\n  \"youre</w>\": 19695,\n  \"yourown\": 28583,\n  \"yours</w>\": 3834,\n  \"yourself</w>\": 3053,\n  \"yourselves</w>\": 19747,\n  \"youth\": 10743,\n  \"youth</w>\": 3281,\n  \"youthful</w>\": 37480,\n  \"youths</w>\": 23614,\n  \"youts</w>\": 22737,\n  \"youtu\": 13868,\n  \"youtube\": 31258,\n  \"youtube</w>\": 3895,\n  \"youtuber</w>\": 24720,\n  \"youtubers</w>\": 36822,\n  \"youu</w>\": 35055,\n  \"youuu</w>\": 35324,\n  \"youuuu</w>\": 47123,\n  \"yoy</w>\": 41865,\n  \"yp\": 38370,\n  \"yp</w>\": 34734,\n  \"ypg</w>\": 37386,\n  \"yql</w>\": 46122,\n  \"yqr</w>\": 36881,\n  \"yr\": 18395,\n  \"yr</w>\": 4333,\n  \"yrs</w>\": 4822,\n  \"ys\": 1971,\n  \"ys</w>\": 961,\n  \"yser</w>\": 33121,\n  \"ysis</w>\": 4843,\n  \"ysl</w>\": 45681,\n  \"ysm</w>\": 23842,\n  \"yst\": 40528,\n  \"yt\": 36777,\n  \"yt</w>\": 14779,\n  \"ytd</w>\": 47524,\n  \"yte</w>\": 48172,\n  \"yu\": 3371,\n  \"yu</w>\": 8887,\n  \"yuan</w>\": 26236,\n  \"yuck</w>\": 48282,\n  \"yugo\": 48231,\n  \"yuh</w>\": 42547,\n  \"yui</w>\": 47932,\n  \"yuk\": 17037,\n  \"yuk</w>\": 24063,\n  \"yuki</w>\": 34010,\n  \"yukon</w>\": 27094,\n  \"yul\": 39832,\n  \"yum\": 6869,\n  \"yum</w>\": 7259,\n  \"yuma</w>\": 47566,\n  \"yummy</w>\": 7687,\n  \"yun\": 14976,\n  \"yun</w>\": 18288,\n  \"yung\": 44545,\n  \"yung</w>\": 17676,\n  \"yunho</w>\": 39748,\n  \"yup</w>\": 13231,\n  \"yur\": 42533,\n  \"yuri</w>\": 23823,\n  \"yusuf</w>\": 33222,\n  \"yuv\": 36784,\n  \"yves</w>\": 33698,\n  \"yvon\": 23327,\n  \"yvonne</w>\": 32583,\n  \"yvr</w>\": 29058,\n  \"yw\": 33741,\n  \"yx</w>\": 35624,\n  \"yxe</w>\": 34240,\n  \"yy\": 3433,\n  \"yy</w>\": 8321,\n  \"yya</w>\": 37444,\n  \"yyc\": 27542,\n  \"yyc</w>\": 11741,\n  \"yyj</w>\": 26203,\n  \"yyy</w>\": 11514,\n  \"yyyy\": 38749,\n  \"yyyy</w>\": 16955,\n  \"yyyyy</w>\": 26089,\n  \"yyyyyy</w>\": 47055,\n  \"yz\": 37579,\n  \"yz</w>\": 46451,\n  \"yÃ¼\": 48232,\n  \"z\": 89,\n  \"z</w>\": 345,\n  \"za\": 3710,\n  \"za</w>\": 2186,\n  \"zab\": 22982,\n  \"zable</w>\": 37002,\n  \"zac\": 25501,\n  \"zac</w>\": 19159,\n  \"zach\": 13401,\n  \"zach</w>\": 11815,\n  \"zachary</w>\": 32401,\n  \"zack\": 30567,\n  \"zack</w>\": 19120,\n  \"zad\": 47314,\n  \"zad</w>\": 27838,\n  \"zada</w>\": 34889,\n  \"zaf\": 21837,\n  \"zafar</w>\": 46668,\n  \"zag\": 26091,\n  \"zag</w>\": 29346,\n  \"zagre\": 34107,\n  \"zagreb</w>\": 35355,\n  \"zah\": 23258,\n  \"zah</w>\": 43297,\n  \"zaha</w>\": 44408,\n  \"zai\": 44329,\n  \"zai</w>\": 27065,\n  \"zain\": 34400,\n  \"zain</w>\": 45366,\n  \"zak\": 13050,\n  \"zak</w>\": 20738,\n  \"zaki</w>\": 48091,\n  \"zal\": 20552,\n  \"zal</w>\": 33298,\n  \"zam\": 7218,\n  \"zam</w>\": 41578,\n  \"zambia</w>\": 21671,\n  \"zan\": 7284,\n  \"zan</w>\": 17835,\n  \"zana</w>\": 39643,\n  \"zand\": 37712,\n  \"zane</w>\": 34786,\n  \"zani</w>\": 45373,\n  \"zania</w>\": 15059,\n  \"zano</w>\": 27637,\n  \"zanzi\": 47835,\n  \"zap\": 24134,\n  \"zapp\": 33504,\n  \"zappa</w>\": 46592,\n  \"zar\": 5458,\n  \"zar</w>\": 16392,\n  \"zara</w>\": 24454,\n  \"zardari</w>\": 20174,\n  \"zas</w>\": 48261,\n  \"zation</w>\": 3683,\n  \"zawa</w>\": 49281,\n  \"zay\": 7102,\n  \"zayed</w>\": 36726,\n  \"zayn\": 22292,\n  \"zayn</w>\": 10308,\n  \"zaynmalik</w>\": 25278,\n  \"zazzle</w>\": 47857,\n  \"ze\": 2254,\n  \"ze</w>\": 1298,\n  \"zeal\": 44951,\n  \"zealand</w>\": 7618,\n  \"zeb</w>\": 46518,\n  \"zebra\": 47394,\n  \"zebra</w>\": 22548,\n  \"zed\": 21047,\n  \"zed</w>\": 1993,\n  \"zedd</w>\": 45608,\n  \"zee\": 25468,\n  \"zee</w>\": 14080,\n  \"zeiss</w>\": 47460,\n  \"zeit\": 37898,\n  \"zeit</w>\": 37906,\n  \"zek</w>\": 40829,\n  \"zeke</w>\": 47065,\n  \"zel\": 10389,\n  \"zel</w>\": 12027,\n  \"zelda</w>\": 17138,\n  \"zell</w>\": 39526,\n  \"zen\": 8518,\n  \"zen</w>\": 3928,\n  \"zend\": 33478,\n  \"zendaya</w>\": 35956,\n  \"zenith</w>\": 44740,\n  \"zens</w>\": 15298,\n  \"zeph\": 40726,\n  \"zepp\": 22977,\n  \"zeppelin</w>\": 25408,\n  \"zer\": 6118,\n  \"zer</w>\": 3716,\n  \"zero\": 14867,\n  \"zero</w>\": 5848,\n  \"zers</w>\": 9547,\n  \"zes</w>\": 4073,\n  \"zest</w>\": 37709,\n  \"zet\": 34098,\n  \"zeta</w>\": 30954,\n  \"zetta</w>\": 45993,\n  \"zeus</w>\": 32800,\n  \"zey\": 46647,\n  \"zh\": 33389,\n  \"zh</w>\": 41621,\n  \"zhang</w>\": 21127,\n  \"zhen\": 37374,\n  \"zhen</w>\": 33236,\n  \"zhou</w>\": 17384,\n  \"zhu\": 42049,\n  \"zi\": 2651,\n  \"zi</w>\": 5819,\n  \"zia</w>\": 13764,\n  \"zid\": 30235,\n  \"zidane</w>\": 34643,\n  \"zie\": 29316,\n  \"zie</w>\": 8956,\n  \"zieg\": 40157,\n  \"ziegler</w>\": 46812,\n  \"ziel</w>\": 32151,\n  \"zier</w>\": 15399,\n  \"zies</w>\": 38001,\n  \"ziest</w>\": 28159,\n  \"zig\": 15950,\n  \"zig</w>\": 21345,\n  \"ziggy</w>\": 39274,\n  \"zik</w>\": 30125,\n  \"zika</w>\": 28783,\n  \"zil\": 25039,\n  \"zil</w>\": 33190,\n  \"zilla</w>\": 17879,\n  \"zim\": 8112,\n  \"zim</w>\": 22577,\n  \"zimbab\": 12373,\n  \"zimbabwe\": 45668,\n  \"zimbabwe</w>\": 13583,\n  \"zimmer\": 27452,\n  \"zimmer</w>\": 35211,\n  \"zimmerman</w>\": 38231,\n  \"zin\": 14085,\n  \"zin</w>\": 21278,\n  \"zinc</w>\": 27458,\n  \"zind\": 26206,\n  \"zindabad</w>\": 42208,\n  \"zine</w>\": 16100,\n  \"zing\": 25062,\n  \"zing</w>\": 3152,\n  \"zinger</w>\": 42027,\n  \"zio</w>\": 13906,\n  \"zion\": 31763,\n  \"zion</w>\": 20963,\n  \"zione</w>\": 36161,\n  \"zionist</w>\": 33078,\n  \"zip\": 26479,\n  \"zip</w>\": 16083,\n  \"zipper</w>\": 33670,\n  \"zir\": 31892,\n  \"zl</w>\": 39168,\n  \"zlat\": 32489,\n  \"zlatan</w>\": 37877,\n  \"zm</w>\": 43691,\n  \"zman</w>\": 24248,\n  \"zn</w>\": 18004,\n  \"zo\": 4397,\n  \"zo</w>\": 5056,\n  \"zodi\": 22660,\n  \"zodiac</w>\": 27753,\n  \"zoe\": 43114,\n  \"zoe</w>\": 16662,\n  \"zoey</w>\": 39871,\n  \"zog</w>\": 40680,\n  \"zol\": 25939,\n  \"zola</w>\": 46105,\n  \"zom\": 6623,\n  \"zombi\": 29452,\n  \"zombie</w>\": 11819,\n  \"zombies\": 46702,\n  \"zombies</w>\": 16517,\n  \"zon\": 15109,\n  \"zon</w>\": 14618,\n  \"zona</w>\": 42134,\n  \"zone\": 37197,\n  \"zone</w>\": 4442,\n  \"zones</w>\": 17247,\n  \"zoning</w>\": 36790,\n  \"zoo\": 8182,\n  \"zoo</w>\": 7147,\n  \"zoom\": 32671,\n  \"zoom</w>\": 13909,\n  \"zor\": 17605,\n  \"zou\": 38072,\n  \"zr</w>\": 39275,\n  \"zs</w>\": 35248,\n  \"zshq</w>\": 41442,\n  \"zt</w>\": 42629,\n  \"zu\": 4091,\n  \"zu</w>\": 14184,\n  \"zucchini</w>\": 29873,\n  \"zucker\": 26890,\n  \"zuckerberg</w>\": 30066,\n  \"zul\": 31146,\n  \"zulu</w>\": 32821,\n  \"zum</w>\": 35094,\n  \"zuma</w>\": 23326,\n  \"zumba</w>\": 32976,\n  \"zun\": 42440,\n  \"zur\": 17128,\n  \"zurich</w>\": 21288,\n  \"zw</w>\": 42188,\n  \"zx</w>\": 31604,\n  \"zy\": 6615,\n  \"zy</w>\": 2303,\n  \"zyk</w>\": 39112,\n  \"zyme</w>\": 36472,\n  \"zyn\": 45287,\n  \"zz\": 1544,\n  \"zz</w>\": 4943,\n  \"zza</w>\": 14642,\n  \"zzi</w>\": 13974,\n  \"zzie</w>\": 18635,\n  \"zzle</w>\": 7873,\n  \"zzled</w>\": 39075,\n  \"zzo</w>\": 14036,\n  \"zzy\": 21275,\n  \"zzy</w>\": 8353,\n  \"zzz</w>\": 20055,\n  \"zzzz\": 35742,\n  \"zzzz</w>\": 43103,\n  \"{\": 90,\n  \"{</w>\": 346,\n  \"{}</w>\": 39025,\n  \"|\": 91,\n  \"|#</w>\": 31183,\n  \"|</w>\": 347,\n  \"|@</w>\": 41677,\n  \"||</w>\": 7566,\n  \"}\": 92,\n  \"}</w>\": 348,\n  \"~\": 93,\n  \"~!</w>\": 31181,\n  \"~\\\"</w>\": 48442,\n  \"~</w>\": 349,\n  \"~></w>\": 43291,\n  \"~@</w>\": 44247,\n  \"~~\": 11461,\n  \"~~</w>\": 16671,\n  \"~~~</w>\": 32472,\n  \"~~~~\": 28295,\n  \"¡\": 94,\n  \"¡</w>\": 350,\n  \"¡ï¸ı\": 15113,\n  \"¡ï¸ı</w>\": 4174,\n  \"¡ľ\": 43991,\n  \"¢\": 95,\n  \"¢</w>\": 351,\n  \"£\": 96,\n  \"£</w>\": 352,\n  \"£ï¸ı</w>\": 18446,\n  \"¤\": 97,\n  \"¤</w>\": 353,\n  \"¥\": 98,\n  \"¥</w>\": 354,\n  \"¦\": 99,\n  \"¦</w>\": 355,\n  \"¦Ī</w>\": 47615,\n  \"§\": 100,\n  \"§</w>\": 356,\n  \"¨\": 101,\n  \"¨</w>\": 357,\n  \"©\": 102,\n  \"©</w>\": 358,\n  \"ª\": 103,\n  \"ª</w>\": 359,\n  \"«\": 104,\n  \"«</w>\": 360,\n  \"¬\": 105,\n  \"¬</w>\": 361,\n  \"¬ë\": 31736,\n  \"®\": 106,\n  \"®</w>\": 362,\n  \"¯\": 107,\n  \"¯</w>\": 363,\n  \"°\": 108,\n  \"°:</w>\": 21787,\n  \"°</w>\": 364,\n  \"°ï¸ı</w>\": 34777,\n  \"±\": 109,\n  \"±</w>\": 365,\n  \"±ï¸ı</w>\": 41020,\n  \"²\": 110,\n  \"²</w>\": 366,\n  \"³\": 111,\n  \"³</w>\": 367,\n  \"³ï¸ı\": 22195,\n  \"³ï¸ı</w>\": 24706,\n  \"´\": 112,\n  \"´</w>\": 368,\n  \"µ\": 113,\n  \"µ</w>\": 369,\n  \"µï¸ı</w>\": 27605,\n  \"¶\": 114,\n  \"¶</w>\": 370,\n  \"·\": 115,\n  \"·</w>\": 371,\n  \"¸\": 116,\n  \"¸</w>\": 372,\n  \"¸ë\": 19693,\n  \"¹\": 117,\n  \"¹</w>\": 373,\n  \"º\": 118,\n  \"º</w>\": 374,\n  \"»\": 119,\n  \"»</w>\": 375,\n  \"¼\": 120,\n  \"¼</w>\": 376,\n  \"½\": 121,\n  \"½</w>\": 377,\n  \"½ï¸ı</w>\": 31333,\n  \"¾\": 122,\n  \"¾</w>\": 378,\n  \"¿\": 123,\n  \"¿</w>\": 379,\n  \"À\": 124,\n  \"À</w>\": 380,\n  \"Á\": 125,\n  \"Á</w>\": 381,\n  \"Â\": 126,\n  \"Â</w>\": 382,\n  \"Â¡\": 26868,\n  \"Â¡</w>\": 10830,\n  \"Â¡Â¡</w>\": 45505,\n  \"Â¢</w>\": 41359,\n  \"Â£\": 31117,\n  \"Â£</w>\": 1950,\n  \"Â¥</w>\": 20199,\n  \"Â¨\": 19957,\n  \"Â¨Â¨\": 23089,\n  \"Â¨Â¨Â¨Â¨\": 41223,\n  \"Â©\": 31148,\n  \"Â©</w>\": 5811,\n  \"Â«</w>\": 14434,\n  \"Â®\": 30857,\n  \"Â®</w>\": 8436,\n  \"Â¯\": 38682,\n  \"Â¯</w>\": 43593,\n  \"Â¯\\\\\": 44096,\n  \"Â¯\\\\_(</w>\": 45115,\n  \"Â°\": 21305,\n  \"Â°</w>\": 6858,\n  \"Â²</w>\": 41175,\n  \"Â´\": 30560,\n  \"Â´</w>\": 12559,\n  \"Â·</w>\": 14844,\n  \"Âº</w>\": 28059,\n  \"Â»\": 31642,\n  \"Â»</w>\": 7599,\n  \"Â½</w>\": 33613,\n  \"Â¿\": 44559,\n  \"Â¿</w>\": 17133,\n  \"ÂŃ</w>\": 22618,\n  \"Ã\": 127,\n  \"Ã</w>\": 383,\n  \"Ã¡\": 7261,\n  \"Ã¡</w>\": 22229,\n  \"Ã¡n\": 38340,\n  \"Ã¡n</w>\": 21385,\n  \"Ã¢\": 26170,\n  \"Ã£\": 19339,\n  \"Ã£o</w>\": 21141,\n  \"Ã¤\": 10896,\n  \"Ã¤</w>\": 47276,\n  \"Ã¤n\": 42787,\n  \"Ã¥\": 23176,\n  \"Ã¦\": 42495,\n  \"Ã§\": 10067,\n  \"Ã§a</w>\": 22711,\n  \"Ã¨\": 12138,\n  \"Ã¨</w>\": 37761,\n  \"Ã¨re</w>\": 30272,\n  \"Ã¨s</w>\": 41210,\n  \"Ã©\": 3459,\n  \"Ã©</w>\": 4166,\n  \"Ã©al</w>\": 45251,\n  \"Ã©e</w>\": 13489,\n  \"Ã©s</w>\": 20507,\n  \"Ãª\": 27515,\n  \"Ã«\": 29526,\n  \"Ã«</w>\": 40520,\n  \"Ã®\": 48704,\n  \"Ã¯\": 35689,\n  \"Ã±\": 6445,\n  \"Ã±a</w>\": 17753,\n  \"Ã±o</w>\": 16574,\n  \"Ã±os</w>\": 40104,\n  \"Ã³\": 8891,\n  \"Ã³</w>\": 27733,\n  \"Ã³n</w>\": 13926,\n  \"Ã´\": 26815,\n  \"Ã¶\": 7255,\n  \"Ã¶</w>\": 37423,\n  \"Ã¶r\": 31762,\n  \"Ã¸\": 17483,\n  \"Ã¸</w>\": 45598,\n  \"Ãº\": 17963,\n  \"Ãº</w>\": 36019,\n  \"Ã¼\": 6522,\n  \"Ã¼</w>\": 47177,\n  \"Ã¼r\": 26132,\n  \"ÃĹ</w>\": 16165,\n  \"Ãł\": 36149,\n  \"Ãł</w>\": 21259,\n  \"ÃŃ\": 8366,\n  \"ÃŃ</w>\": 23928,\n  \"ÃŃa</w>\": 16609,\n  \"ÃŃn</w>\": 33623,\n  \"Ä\": 128,\n  \"Ä</w>\": 384,\n  \"Ä±\": 18562,\n  \"Ä±</w>\": 41901,\n  \"Äģ\": 23134,\n  \"Äĩ</w>\": 31719,\n  \"Äį\": 45414,\n  \"ÄŁ\": 26540,\n  \"Å\": 129,\n  \"Å</w>\": 385,\n  \"Å¡\": 35621,\n  \"ÅĤ\": 40419,\n  \"Åį\": 41267,\n  \"ÅŁ\": 21254,\n  \"ÅŁ</w>\": 40706,\n  \"Æ\": 130,\n  \"Æ</w>\": 386,\n  \"Ç\": 131,\n  \"Ç</w>\": 387,\n  \"È\": 132,\n  \"È</w>\": 388,\n  \"É\": 133,\n  \"É</w>\": 389,\n  \"Ê\": 134,\n  \"Ê</w>\": 390,\n  \"Ë\": 135,\n  \"Ë</w>\": 391,\n  \"Ì\": 136,\n  \"Ì</w>\": 392,\n  \"Ìĩ</w>\": 16384,\n  \"Í\": 137,\n  \"Í</w>\": 393,\n  \"Î\": 138,\n  \"Î</w>\": 394,\n  \"Ï\": 139,\n  \"Ï</w>\": 395,\n  \"Ïī</w>\": 38065,\n  \"Ð\": 140,\n  \"Ð</w>\": 396,\n  \"Ð°\": 16912,\n  \"Ð°</w>\": 27080,\n  \"Ð°Ð\": 31090,\n  \"Ð²\": 39813,\n  \"Ðµ\": 22176,\n  \"Ð¸\": 16701,\n  \"Ð¸Ð\": 29503,\n  \"Ðº\": 27152,\n  \"Ð»\": 47611,\n  \"Ð¼\": 38018,\n  \"Ð½\": 22705,\n  \"Ð¾\": 13506,\n  \"Ð¾</w>\": 29386,\n  \"Ð¾Ð\": 20978,\n  \"Ð¾Ð´\": 38416,\n  \"Ð¾ÑĤ\": 28599,\n  \"Ð¿\": 26302,\n  \"Ð¿ÑĢÐ¸\": 46321,\n  \"Ð¿ÑĢÐ¸ÑĢÐ¾Ð´Ð°</w>\": 48150,\n  \"Ñ\": 141,\n  \"Ñ</w>\": 397,\n  \"ÑĢ\": 16370,\n  \"ÑĢÐ¸\": 41092,\n  \"ÑĢÐ¾Ð´\": 47039,\n  \"ÑĢÐ¾Ð´Ð°</w>\": 47929,\n  \"Ñģ\": 23669,\n  \"ÑĤ\": 17875,\n  \"Ñĥ\": 39729,\n  \"ÑĦ\": 27993,\n  \"ÑĦÐ¾ÑĤ\": 35155,\n  \"ÑĦÐ¾ÑĤÐ¾</w>\": 38981,\n  \"Ñĭ\": 45001,\n  \"Ò\": 142,\n  \"Ò</w>\": 398,\n  \"Ó\": 143,\n  \"Ó</w>\": 399,\n  \"Ô\": 144,\n  \"Ô</w>\": 400,\n  \"Õ\": 145,\n  \"Õ</w>\": 401,\n  \"Ö\": 146,\n  \"Ö</w>\": 402,\n  \"×\": 147,\n  \"×</w>\": 403,\n  \"Ø\": 148,\n  \"Ø</w>\": 404,\n  \"Ø§\": 6042,\n  \"Ø§</w>\": 22625,\n  \"Ø§Ø\": 13189,\n  \"Ø§Ø±\": 40137,\n  \"Ø§Ù\": 8453,\n  \"Ø§ÙĦ\": 12973,\n  \"Ø§Ùħ\": 47626,\n  \"Ø§ÙĨ\": 42773,\n  \"Ø§ÙĨ</w>\": 33200,\n  \"Ø¨\": 16378,\n  \"Ø¨</w>\": 35330,\n  \"Ø©</w>\": 20915,\n  \"Øª\": 18197,\n  \"Øª</w>\": 44333,\n  \"Ø¬\": 26375,\n  \"Ø®\": 41495,\n  \"Ø¯\": 19872,\n  \"Ø¯</w>\": 35566,\n  \"Ø±\": 10948,\n  \"Ø±</w>\": 24933,\n  \"Ø±ÙĬ\": 43273,\n  \"Ø²\": 36169,\n  \"Ø³\": 17856,\n  \"Ø´\": 28770,\n  \"Øµ\": 27271,\n  \"Ø·\": 32050,\n  \"Ø¹\": 18843,\n  \"Øº\": 48510,\n  \"ØŃ\": 25722,\n  \"Ù\": 149,\n  \"Ù</w>\": 405,\n  \"Ùģ\": 24112,\n  \"ÙĤ\": 27585,\n  \"Ùĥ\": 33499,\n  \"ÙĦ\": 14251,\n  \"ÙĦ</w>\": 37899,\n  \"Ùħ\": 12986,\n  \"Ùħ</w>\": 29945,\n  \"ÙĨ\": 16655,\n  \"ÙĨ</w>\": 25386,\n  \"Ùĩ\": 34274,\n  \"Ùĩ</w>\": 31343,\n  \"ÙĪ\": 12203,\n  \"ÙĪ</w>\": 38310,\n  \"ÙĪØ±\": 48242,\n  \"ÙĬ\": 12046,\n  \"ÙĬ</w>\": 23853,\n  \"Ú\": 150,\n  \"Ú</w>\": 406,\n  \"Ú©\": 26475,\n  \"Û\": 151,\n  \"Û</w>\": 407,\n  \"Ûģ\": 40480,\n  \"ÛĮ\": 21452,\n  \"ÛĮ</w>\": 32703,\n  \"Ü\": 152,\n  \"Ü</w>\": 408,\n  \"Ý\": 153,\n  \"Ý</w>\": 409,\n  \"Þ\": 154,\n  \"Þ</w>\": 410,\n  \"ß\": 155,\n  \"ß</w>\": 411,\n  \"à\": 156,\n  \"à</w>\": 412,\n  \"à¤\": 3124,\n  \"à¤¤</w>\": 27263,\n  \"à¤¦</w>\": 29552,\n  \"à¤¨</w>\": 26090,\n  \"à¤ª</w>\": 44149,\n  \"à¤¬</w>\": 43599,\n  \"à¤®\": 48254,\n  \"à¤®</w>\": 26774,\n  \"à¤¯</w>\": 37299,\n  \"à¤°\": 39136,\n  \"à¤°</w>\": 19052,\n  \"à¤²</w>\": 30881,\n  \"à¤µ</w>\": 39545,\n  \"à¤¶</w>\": 43181,\n  \"à¤¸</w>\": 28505,\n  \"à¤¹</w>\": 29446,\n  \"à¤¾\": 37973,\n  \"à¤¾</w>\": 13343,\n  \"à¤¿</w>\": 26721,\n  \"à¤Ĥ</w>\": 30833,\n  \"à¤ķ</w>\": 22067,\n  \"à¤Ĺ</w>\": 42598,\n  \"à¤ľ</w>\": 39561,\n  \"à¥\": 7410,\n  \"à¥Ģ\": 45791,\n  \"à¥Ģ</w>\": 25751,\n  \"à¥ģ</w>\": 39653,\n  \"à¥ĩ\": 48612,\n  \"à¥ĩ</w>\": 25130,\n  \"à¥ĭ</w>\": 34452,\n  \"à¥į</w>\": 19389,\n  \"à¦\": 11322,\n  \"à¦¾</w>\": 41532,\n  \"à§\": 26339,\n  \"à¨\": 15741,\n  \"à©\": 32086,\n  \"àª\": 22990,\n  \"à«\": 48347,\n  \"à¬\": 32791,\n  \"à®\": 6022,\n  \"à®¤</w>\": 34691,\n  \"à®©</w>\": 43394,\n  \"à®ª</w>\": 47388,\n  \"à®®</w>\": 35463,\n  \"à®°</w>\": 43270,\n  \"à®²</w>\": 47705,\n  \"à®¾</w>\": 32831,\n  \"à®¿</w>\": 27126,\n  \"à®ķ</w>\": 36168,\n  \"à®Ł</w>\": 45263,\n  \"à¯\": 11259,\n  \"à¯ģ</w>\": 33115,\n  \"à¯į</w>\": 16631,\n  \"à°\": 12100,\n  \"à±\": 23550,\n  \"à±į</w>\": 46098,\n  \"à²\": 9992,\n  \"à²¿</w>\": 47797,\n  \"à³\": 20745,\n  \"à³į</w>\": 36148,\n  \"à´\": 15418,\n  \"àµ\": 27392,\n  \"àµį</w>\": 45266,\n  \"à¶\": 29881,\n  \"à·\": 30766,\n  \"à¸\": 1777,\n  \"à¸¡\": 26137,\n  \"à¸¡</w>\": 29570,\n  \"à¸¢\": 27241,\n  \"à¸¢</w>\": 33091,\n  \"à¸£\": 32225,\n  \"à¸£</w>\": 27331,\n  \"à¸¥\": 34696,\n  \"à¸¥</w>\": 32746,\n  \"à¸§\": 26990,\n  \"à¸§</w>\": 30245,\n  \"à¸ª\": 37883,\n  \"à¸ª</w>\": 35737,\n  \"à¸«\": 33064,\n  \"à¸°\": 43920,\n  \"à¸°</w>\": 49234,\n  \"à¸±</w>\": 14978,\n  \"à¸²\": 11529,\n  \"à¸²</w>\": 38476,\n  \"à¸²à¸\": 12330,\n  \"à¸´</w>\": 17092,\n  \"à¸µ\": 22421,\n  \"à¸µ</w>\": 20278,\n  \"à¸µà¹Ī</w>\": 31511,\n  \"à¸·</w>\": 47991,\n  \"à¸¸</w>\": 30524,\n  \"à¸¹</w>\": 35273,\n  \"à¸ģ</w>\": 30767,\n  \"à¸ģà¸\": 31474,\n  \"à¸Ħ</w>\": 31757,\n  \"à¸Ħà¸\": 39628,\n  \"à¸ĩ\": 24603,\n  \"à¸ĩ</w>\": 33382,\n  \"à¸Ī\": 47608,\n  \"à¸Ĭ</w>\": 46324,\n  \"à¸Ķ\": 31107,\n  \"à¸Ķ</w>\": 38825,\n  \"à¸ķ\": 40273,\n  \"à¸ķ</w>\": 41108,\n  \"à¸Ĺ</w>\": 36171,\n  \"à¸Ļ\": 17474,\n  \"à¸Ļ</w>\": 17639,\n  \"à¸Ļà¸\": 23121,\n  \"à¸ļ\": 33859,\n  \"à¸ļ</w>\": 39616,\n  \"à¸ŀ</w>\": 48171,\n  \"à¸Ń\": 13398,\n  \"à¸Ń</w>\": 32818,\n  \"à¸Ńà¸\": 14649,\n  \"à¸Ńà¸ĩ\": 46622,\n  \"à¹\": 4484,\n  \"à¹Ģ\": 13729,\n  \"à¹Ģà¸\": 14076,\n  \"à¹ģà¸\": 23916,\n  \"à¹Ĥ\": 33118,\n  \"à¹ĥ\": 40962,\n  \"à¹Ħà¸\": 31718,\n  \"à¹ĩ</w>\": 38699,\n  \"à¹Ī</w>\": 11722,\n  \"à¹ī</w>\": 13123,\n  \"à¹Į</w>\": 28353,\n  \"à¼\": 46186,\n  \"à½\": 39219,\n  \"á\": 157,\n  \"á</w>\": 413,\n  \"á´\": 19036,\n  \"áµ\": 17330,\n  \"áĢ\": 45932,\n  \"áĥ\": 24829,\n  \"áĥ¦</w>\": 32193,\n  \"â\": 158,\n  \"â</w>\": 414,\n  \"â¤\": 25087,\n  \"â¤µï¸ı</w>\": 36026,\n  \"â¬\": 7930,\n  \"â¬ħï¸ı</w>\": 42111,\n  \"â¬Ĩ\": 27718,\n  \"â¬Ĩï¸ı</w>\": 32798,\n  \"â¬ĩ\": 10917,\n  \"â¬ĩ</w>\": 39370,\n  \"â¬ĩï¸ı\": 25621,\n  \"â¬ĩï¸ı</w>\": 13984,\n  \"â¬ĩï¸ıâ¬ĩï¸ı\": 40159,\n  \"âĢ\": 728,\n  \"âĢ¢\": 9485,\n  \"âĢ¢</w>\": 2701,\n  \"âĢ¢âĢ¢\": 15006,\n  \"âĢ¢âĢ¢</w>\": 47575,\n  \"âĢ¢âĢ¢âĢ¢âĢ¢\": 27502,\n  \"âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢\": 48630,\n  \"âĢ¦\": 7095,\n  \"âĢ¦\\\"</w>\": 20215,\n  \"âĢ¦..</w>\": 47779,\n  \"âĢ¦.</w>\": 18615,\n  \"âĢ¦/</w>\": 29842,\n  \"âĢ¦</w>\": 959,\n  \"âĢ¦âĢ¦</w>\": 40066,\n  \"âĢ²</w>\": 32633,\n  \"âĢ³</w>\": 25061,\n  \"âĢ¼\": 6578,\n  \"âĢ¼ï¸ı\": 15622,\n  \"âĢ¼ï¸ı</w>\": 8310,\n  \"âĢ¼ï¸ıâĢ¼ï¸ı</w>\": 33218,\n  \"âĢĭ\": 17086,\n  \"âĢĭ</w>\": 9844,\n  \"âĢį\": 4244,\n  \"âĢįâĻ\": 5177,\n  \"âĢįâĻĢï¸ı\": 18897,\n  \"âĢįâĻĢï¸ı</w>\": 9605,\n  \"âĢįâĻĤ\": 8832,\n  \"âĢįâĻĤï¸ı\": 21779,\n  \"âĢįâĻĤï¸ı</w>\": 10613,\n  \"âĢİ</w>\": 31001,\n  \"âĢĲ</w>\": 34512,\n  \"âĢĵ\": 21070,\n  \"âĢĵ</w>\": 1224,\n  \"âĢĶ\": 6718,\n  \"âĢĶ</w>\": 2005,\n  \"âĢĶ></w>\": 26341,\n  \"âĢĶ@</w>\": 28470,\n  \"âĢĶâĢĶ\": 10037,\n  \"âĢĶâĢĶ</w>\": 44800,\n  \"âĢĶâĢĶâĢĶâĢĶ\": 17797,\n  \"âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ\": 34432,\n  \"âĢķ</w>\": 14236,\n  \"âģ\": 1667,\n  \"âģ£\": 31089,\n  \"âģ£</w>\": 16845,\n  \"âģ¦\": 2773,\n  \"âģ¦</w>\": 34855,\n  \"âģ¦@</w>\": 2859,\n  \"âģ¦âģ¦@</w>\": 27783,\n  \"âģ©\": 20097,\n  \"âģ©,</w>\": 48749,\n  \"âģ©.</w>\": 35777,\n  \"âģ©</w>\": 2918,\n  \"âģīï¸ı</w>\": 46534,\n  \"âģł\": 23881,\n  \"âģł</w>\": 13503,\n  \"âģłâģł</w>\": 33488,\n  \"âĤ\": 5227,\n  \"âĤ¬\": 34919,\n  \"âĤ¬</w>\": 6309,\n  \"âĤ¹</w>\": 21777,\n  \"âĥ\": 2805,\n  \"âĥ£\": 11250,\n  \"âĥ£</w>\": 3076,\n  \"âĥ£@</w>\": 48291,\n  \"âĦ\": 8604,\n  \"âĦ¢\": 29438,\n  \"âĦ¢</w>\": 11675,\n  \"âĦ¹</w>\": 45462,\n  \"âĨ\": 6059,\n  \"âĨĴ</w>\": 7481,\n  \"âĨĵ</w>\": 41603,\n  \"âĩ\": 27228,\n  \"âĪ\": 17788,\n  \"âī\": 22684,\n  \"âīĪ</w>\": 45451,\n  \"âĮ\": 17848,\n  \"âĮļ\": 31301,\n  \"âĮļï¸ı</w>\": 35931,\n  \"âı\": 7960,\n  \"âı©</w>\": 40847,\n  \"âı°</w>\": 12714,\n  \"âı±</w>\": 33149,\n  \"âı³</w>\": 47617,\n  \"âĵ\": 27400,\n  \"âĶ\": 13389,\n  \"âĶĢ\": 45139,\n  \"âĶģ\": 42022,\n  \"âķ\": 17027,\n  \"âķĲ\": 48039,\n  \"âĸ\": 4168,\n  \"âĸª\": 21203,\n  \"âĸª</w>\": 36628,\n  \"âĸªï¸ı</w>\": 24974,\n  \"âĸ«\": 39478,\n  \"âĸ¬\": 33798,\n  \"âĸ¬âĸ¬\": 36975,\n  \"âĸ¶\": 12509,\n  \"âĸ¶</w>\": 21126,\n  \"âĸ¶ï¸ı</w>\": 14442,\n  \"âĸº\": 46061,\n  \"âĸº</w>\": 12086,\n  \"âĸ½\": 45634,\n  \"âĸł</w>\": 36791,\n  \"âĹ\": 9323,\n  \"âĹĨ</w>\": 48961,\n  \"âĹı</w>\": 26999,\n  \"âĺ\": 1741,\n  \"âĺ®</w>\": 45851,\n  \"âĺ¹\": 28811,\n  \"âĺ¹ï¸ı</w>\": 39605,\n  \"âĺº\": 5010,\n  \"âĺº</w>\": 8703,\n  \"âĺºâĺº</w>\": 46051,\n  \"âĺºï¸ı\": 11506,\n  \"âĺºï¸ı</w>\": 7779,\n  \"âĺºï¸ıâĺºï¸ı</w>\": 41315,\n  \"âĺ¼</w>\": 38877,\n  \"âĺĢ\": 32146,\n  \"âĺĢ</w>\": 22242,\n  \"âĺĢï¸ı\": 12817,\n  \"âĺĢï¸ı</w>\": 8219,\n  \"âĺĢï¸ıâĺĢï¸ı\": 44550,\n  \"âĺģ\": 25195,\n  \"âĺģï¸ı</w>\": 35197,\n  \"âĺĥ\": 38972,\n  \"âĺħ\": 9339,\n  \"âĺħ</w>\": 10643,\n  \"âĺħâĺħ\": 12681,\n  \"âĺħâĺħ</w>\": 36644,\n  \"âĺħâĺħâĺħâĺħ\": 34431,\n  \"âĺħâĺħâĺħâĺħ</w>\": 44034,\n  \"âĺħâĺħâĺħâĺħâĺħ</w>\": 45984,\n  \"âĺĨ\": 23941,\n  \"âĺĨ</w>\": 13439,\n  \"âĺİ\": 24045,\n  \"âĺİ</w>\": 45493,\n  \"âĺİï¸ı</w>\": 27219,\n  \"âĺĳ\": 20983,\n  \"âĺĳ</w>\": 42300,\n  \"âĺĳï¸ı</w>\": 22291,\n  \"âĺĶï¸ı</w>\": 31238,\n  \"âĺķ\": 11454,\n  \"âĺķ</w>\": 26561,\n  \"âĺķï¸ı\": 25839,\n  \"âĺķï¸ı</w>\": 15499,\n  \"âĺĺ\": 23483,\n  \"âĺĺï¸ı</w>\": 31454,\n  \"âĺĿ\": 21982,\n  \"âĺĿï¸ı</w>\": 38891,\n  \"âĺŀ</w>\": 31255,\n  \"âĺłï¸ı</w>\": 34672,\n  \"âĻ\": 1548,\n  \"âĻ¡\": 11091,\n  \"âĻ¡</w>\": 6251,\n  \"âĻ¡âĻ¡\": 22360,\n  \"âĻ¡âĻ¡</w>\": 34267,\n  \"âĻ¡âĻ¡âĻ¡</w>\": 36611,\n  \"âĻ¤</w>\": 47435,\n  \"âĻ¥\": 4622,\n  \"âĻ¥</w>\": 3405,\n  \"âĻ¥âĻ¥\": 12975,\n  \"âĻ¥âĻ¥</w>\": 19604,\n  \"âĻ¥âĻ¥âĻ¥</w>\": 23255,\n  \"âĻ¥âĻ¥âĻ¥âĻ¥\": 49020,\n  \"âĻ¥ï¸ı\": 17774,\n  \"âĻ¥ï¸ı</w>\": 10561,\n  \"âĻ¥ï¸ıâĻ¥ï¸ı\": 40309,\n  \"âĻ¦\": 32376,\n  \"âĻ¦</w>\": 47547,\n  \"âĻ©\": 30339,\n  \"âĻ©âĻ«</w>\": 31636,\n  \"âĻª\": 27364,\n  \"âĻª</w>\": 12382,\n  \"âĻ«\": 39217,\n  \"âĻ«</w>\": 10814,\n  \"âĻ¬</w>\": 24753,\n  \"âĻ»\": 39611,\n  \"âĻ»ï¸ı</w>\": 46075,\n  \"âļ\": 2234,\n  \"âļ¡\": 40098,\n  \"âļ¡</w>\": 20712,\n  \"âļ¡ï¸ı\": 19500,\n  \"âļ¡ï¸ı</w>\": 11605,\n  \"âļ¡ï¸ıâļ¡ï¸ı</w>\": 45922,\n  \"âļª\": 11922,\n  \"âļª</w>\": 36373,\n  \"âļªï¸ı\": 22251,\n  \"âļªï¸ı</w>\": 17885,\n  \"âļ«\": 15374,\n  \"âļ«ï¸ı\": 26529,\n  \"âļ«ï¸ı</w>\": 24649,\n  \"âļ½\": 4867,\n  \"âļ½</w>\": 13173,\n  \"âļ½âļ½\": 43259,\n  \"âļ½ï¸ı\": 11342,\n  \"âļ½ï¸ı</w>\": 6768,\n  \"âļ½ï¸ıâļ½ï¸ı\": 30358,\n  \"âļ½ï¸ıâļ½ï¸ı</w>\": 44148,\n  \"âļ¾\": 11314,\n  \"âļ¾</w>\": 34717,\n  \"âļ¾ï¸ı\": 24727,\n  \"âļ¾ï¸ı</w>\": 14858,\n  \"âļĵ\": 23522,\n  \"âļĵï¸ı</w>\": 35299,\n  \"âļĶï¸ı</w>\": 29361,\n  \"âļľ\": 47491,\n  \"âļł</w>\": 39203,\n  \"âļłï¸ı\": 40966,\n  \"âļłï¸ı</w>\": 15596,\n  \"âĽ\": 7956,\n  \"âĽ³ï¸ı</w>\": 29204,\n  \"âĽĦ\": 30668,\n  \"âĽĦï¸ı</w>\": 45465,\n  \"âľ\": 1508,\n  \"âľ¨\": 7181,\n  \"âľ¨</w>\": 3531,\n  \"âľ¨âľ¨\": 35174,\n  \"âľ¨âľ¨</w>\": 21985,\n  \"âľ¨âľ¨âľ¨</w>\": 39424,\n  \"âľĤ\": 38602,\n  \"âľħ\": 29544,\n  \"âľħ</w>\": 5564,\n  \"âľĪ\": 10682,\n  \"âľĪ</w>\": 30712,\n  \"âľĪï¸ı\": 26176,\n  \"âľĪï¸ı</w>\": 13413,\n  \"âľĬ\": 12392,\n  \"âľĬ</w>\": 17819,\n  \"âľĬðŁı½</w>\": 48547,\n  \"âľĬðŁı¾</w>\": 41185,\n  \"âľĭ\": 39383,\n  \"âľĭ</w>\": 30239,\n  \"âľĮ\": 6419,\n  \"âľĮ</w>\": 12656,\n  \"âľĮï¸ı\": 21906,\n  \"âľĮï¸ı</w>\": 12239,\n  \"âľĮðŁı»</w>\": 30538,\n  \"âľĮðŁı¼</w>\": 30588,\n  \"âľį\": 20872,\n  \"âľįï¸ı</w>\": 30888,\n  \"âľı\": 32574,\n  \"âľıï¸ı</w>\": 40724,\n  \"âľĵ</w>\": 36700,\n  \"âľĶ\": 47200,\n  \"âľĶ</w>\": 13749,\n  \"âľĶï¸ı\": 40544,\n  \"âľĶï¸ı</w>\": 9191,\n  \"âľĸï¸ı</w>\": 44133,\n  \"âľĿ\": 42220,\n  \"âĿ\": 1045,\n  \"âĿ£\": 37007,\n  \"âĿ£</w>\": 25623,\n  \"âĿ£ï¸ı</w>\": 25240,\n  \"âĿ¤\": 1266,\n  \"âĿ¤</w>\": 2720,\n  \"âĿ¤âĿ¤\": 9033,\n  \"âĿ¤âĿ¤</w>\": 14058,\n  \"âĿ¤âĿ¤âĿ¤</w>\": 16708,\n  \"âĿ¤âĿ¤âĿ¤âĿ¤\": 37918,\n  \"âĿ¤âĿ¤âĿ¤âĿ¤</w>\": 43970,\n  \"âĿ¤ï¸ı\": 2626,\n  \"âĿ¤ï¸ı#</w>\": 30281,\n  \"âĿ¤ï¸ı.</w>\": 45326,\n  \"âĿ¤ï¸ı</w>\": 1752,\n  \"âĿ¤ï¸ı@</w>\": 31187,\n  \"âĿ¤ï¸ıâĿ¤ï¸ı\": 6713,\n  \"âĿ¤ï¸ıâĿ¤ï¸ı</w>\": 10363,\n  \"âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı</w>\": 12282,\n  \"âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı\": 39167,\n  \"âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı</w>\": 29880,\n  \"âĿ¤ï¸ıðŁĴĻ</w>\": 37380,\n  \"âĿ¤ï¸ıðŁĺį</w>\": 37272,\n  \"âĿ¤ï¸ıðŁĺĺ</w>\": 41800,\n  \"âĿ¤ðŁĺį</w>\": 49120,\n  \"âĿ¥</w>\": 36914,\n  \"âĿĦ\": 8501,\n  \"âĿĦ</w>\": 30494,\n  \"âĿĦï¸ı\": 16834,\n  \"âĿĦï¸ı</w>\": 12402,\n  \"âĿĦï¸ıâĿĦï¸ı\": 41626,\n  \"âĿĮ\": 44485,\n  \"âĿĮ</w>\": 17975,\n  \"âĿĵ</w>\": 29791,\n  \"âĿĹ\": 12868,\n  \"âĿĹ</w>\": 29079,\n  \"âĿĹï¸ı\": 28642,\n  \"âĿĹï¸ı</w>\": 17391,\n  \"âĿĿ</w>\": 46951,\n  \"âŀ\": 3257,\n  \"âŀ¡</w>\": 12854,\n  \"âŀ¡ï¸ı\": 31860,\n  \"âŀ¡ï¸ı</w>\": 4956,\n  \"âŀ¤</w>\": 18651,\n  \"âŀķ</w>\": 46526,\n  \"âŀĸ\": 21327,\n  \"âŀĸ</w>\": 34902,\n  \"âŀĸâŀĸ\": 23316,\n  \"âŀĸâŀĸâŀĸâŀĸ\": 40401,\n  \"âŀľ</w>\": 23775,\n  \"âł\": 5689,\n  \"âłĢ\": 9691,\n  \"âłĢ</w>\": 8621,\n  \"âłĢâłĢ\": 11466,\n  \"âłĢâłĢ</w>\": 39092,\n  \"âłĢâłĢâłĢâłĢ\": 20976,\n  \"âłĢâłĢâłĢâłĢâłĢâłĢâłĢâłĢ\": 46063,\n  \"âŃ\": 5527,\n  \"âŃĲ\": 6410,\n  \"âŃĲ</w>\": 19012,\n  \"âŃĲâŃĲ\": 32663,\n  \"âŃĲï¸ı\": 12427,\n  \"âŃĲï¸ı</w>\": 10251,\n  \"âŃĲï¸ıâŃĲï¸ı\": 18640,\n  \"âŃĲï¸ıâŃĲï¸ıâŃĲï¸ı</w>\": 40746,\n  \"ã\": 159,\n  \"ã</w>\": 415,\n  \"ãĢ\": 4092,\n  \"ãĢģ</w>\": 45262,\n  \"ãĢĤ\": 38060,\n  \"ãĢĤ</w>\": 38000,\n  \"ãĢĬ</w>\": 39920,\n  \"ãĢĭ</w>\": 32898,\n  \"ãĢĮ</w>\": 18116,\n  \"ãĢį</w>\": 19149,\n  \"ãĢİ</w>\": 26947,\n  \"ãĢı</w>\": 30293,\n  \"ãĢĲ</w>\": 12534,\n  \"ãĢĳ</w>\": 12990,\n  \"ãĢľ</w>\": 39581,\n  \"ãģ\": 4813,\n  \"ãģ¦\": 48029,\n  \"ãģ¨\": 34671,\n  \"ãģ¨ç¹ĭãģ\": 47310,\n  \"ãģ¨ç¹ĭãģĮãĤĬãģŁãģĦ</w>\": 48290,\n  \"ãģª\": 29104,\n  \"ãģ®\": 21575,\n  \"ãģ·\": 44130,\n  \"ãģĦ\": 33523,\n  \"ãģĦ</w>\": 38850,\n  \"ãģĨ\": 44235,\n  \"ãģį\": 42184,\n  \"ãĤ\": 3909,\n  \"ãĤ¢\": 26560,\n  \"ãĤ¤\": 19319,\n  \"ãĤ¤ãĥ\": 36294,\n  \"ãĤ«\": 37367,\n  \"ãĤ¯\": 31574,\n  \"ãĤ·\": 37665,\n  \"ãĤ¸\": 32234,\n  \"ãĤ¸ãĥ\": 43491,\n  \"ãĤ¹\": 22694,\n  \"ãĤ¹</w>\": 39220,\n  \"ãĤ¹ãĥ\": 32421,\n  \"ãĤ¿\": 34941,\n  \"ãĤĬãģ\": 40500,\n  \"ãĤĮ</w>\": 45211,\n  \"ãĤŃ\": 47121,\n  \"ãĥ\": 2429,\n  \"ãĥ©\": 23007,\n  \"ãĥª\": 32115,\n  \"ãĥ«\": 33257,\n  \"ãĥ¬\": 32965,\n  \"ãĥ³\": 17671,\n  \"ãĥ³</w>\": 26875,\n  \"ãĥ³ãĤ\": 45105,\n  \"ãĥ³ãĥ\": 25914,\n  \"ãĥ»\": 8415,\n  \"ãĥ»</w>\": 11158,\n  \"ãĥ»ãĥ»\": 13949,\n  \"ãĥ»ãĥ»ãĥ»</w>\": 14234,\n  \"ãĥ¼\": 13457,\n  \"ãĥ¼</w>\": 30391,\n  \"ãĥ¼ãĥ\": 18584,\n  \"ãĥĥ\": 28902,\n  \"ãĥĦ</w>\": 32173,\n  \"ãĥĪ\": 42384,\n  \"ãĥİ</w>\": 39967,\n  \"ãĥķãĤ\": 33371,\n  \"ãĥŀ\": 48924,\n  \"ãĥŃ\": 35827,\n  \"ãħ\": 5947,\n  \"ãħ¤\": 21096,\n  \"ãħ¤ãħ¤\": 22583,\n  \"ãħ¤ãħ¤ãħ¤ãħ¤\": 39329,\n  \"ãħĭ\": 13052,\n  \"ãħĭ</w>\": 25108,\n  \"ãħĭãħĭ\": 16604,\n  \"ãħĭãħĭ</w>\": 42581,\n  \"ãħĭãħĭãħĭ</w>\": 46407,\n  \"ãħĭãħĭãħĭãħĭ\": 39362,\n  \"ãħł\": 16089,\n  \"ãħł</w>\": 25781,\n  \"ãħłãħł\": 22021,\n  \"ãħłãħł</w>\": 34398,\n  \"ãħłãħłãħłãħł\": 47028,\n  \"ä\": 160,\n  \"ä</w>\": 416,\n  \"ä¸\": 19759,\n  \"ä¹\": 41854,\n  \"äº\": 21078,\n  \"äºº\": 36839,\n  \"ä»\": 37743,\n  \"ä½\": 47466,\n  \"å\": 161,\n  \"å</w>\": 417,\n  \"å¤\": 23170,\n  \"å¥\": 29290,\n  \"å®\": 27047,\n  \"å°\": 34720,\n  \"å±\": 46096,\n  \"å¸\": 42021,\n  \"å¹\": 38780,\n  \"åħ\": 34314,\n  \"åĨ\": 27972,\n  \"åĨĻ\": 44653,\n  \"åĪ\": 42748,\n  \"åĭ\": 47505,\n  \"åı\": 34517,\n  \"åĲ\": 41673,\n  \"åĽ\": 39027,\n  \"åľ\": 37746,\n  \"åŃ\": 35751,\n  \"æ\": 162,\n  \"æ</w>\": 418,\n  \"æĸ\": 29032,\n  \"æĹ\": 22265,\n  \"æĹ¥\": 39121,\n  \"æĹ¥</w>\": 37156,\n  \"æĺ\": 42891,\n  \"æĻ\": 48132,\n  \"æľ\": 19277,\n  \"æľ¬\": 44353,\n  \"æĿ\": 27667,\n  \"æĿ±\": 48338,\n  \"ç\": 163,\n  \"ç</w>\": 419,\n  \"ç¥\": 26369,\n  \"ç¥Ń</w>\": 42557,\n  \"çµ\": 37810,\n  \"ç¹\": 43431,\n  \"ç¹ĭãģ\": 45930,\n  \"çĶ\": 20211,\n  \"çĶŁ\": 33375,\n  \"çľ\": 33440,\n  \"çľŁ\": 41570,\n  \"è\": 164,\n  \"è</w>\": 420,\n  \"èª\": 34002,\n  \"èªķ\": 41293,\n  \"é\": 165,\n  \"é</w>\": 421,\n  \"éģ\": 44854,\n  \"éĩ\": 38283,\n  \"ê\": 166,\n  \"ê</w>\": 422,\n  \"ê°\": 21122,\n  \"ê°ĵ\": 41076,\n  \"ê°ĵìĦ¸ë¸Ĳ</w>\": 41689,\n  \"ê°ķ\": 45758,\n  \"ê²\": 35555,\n  \"ê³\": 36216,\n  \"êµ\": 31871,\n  \"ê·\": 42680,\n  \"ê¸\": 32495,\n  \"ê¹\": 24531,\n  \"ê¹Ģ\": 25203,\n  \"ë\": 167,\n  \"ë</w>\": 423,\n  \"ë¦\": 24621,\n  \"ë¦¬\": 47649,\n  \"ë§\": 28024,\n  \"ë§Ī\": 40027,\n  \"ëª\": 36311,\n  \"ë¯\": 19528,\n  \"ë¯¼\": 34442,\n  \"ë¯¼</w>\": 44632,\n  \"ë°\": 15810,\n  \"ë°©\": 23273,\n  \"ë°©íĥ\": 25081,\n  \"ë°©íĥĦ\": 25641,\n  \"ë°©íĥĦìĨĮëħĦëĭ\": 26068,\n  \"ë°©íĥĦìĨĮëħĦëĭ¨</w>\": 27129,\n  \"ë°ķ\": 40988,\n  \"ë²\": 48267,\n  \"ë³\": 44693,\n  \"ë¹\": 24193,\n  \"ëĤ\": 27252,\n  \"ëĤĺ\": 48484,\n  \"ëĭ\": 13094,\n  \"ëĭ¤\": 46680,\n  \"ëĭĪ\": 33708,\n  \"ëį\": 45543,\n  \"ëı\": 31972,\n  \"ëĵ\": 30850,\n  \"ëĿ\": 44317,\n  \"ì\": 168,\n  \"ì</w>\": 424,\n  \"ì£\": 39856,\n  \"ì£¼\": 45161,\n  \"ì¤\": 31153,\n  \"ì§\": 16279,\n  \"ì§Ģ\": 28836,\n  \"ì§Ħ</w>\": 38890,\n  \"ì°\": 40742,\n  \"ì¶\": 42476,\n  \"ì¶ķ\": 46403,\n  \"ì¶ķíķĺ\": 47866,\n  \"ì¹\": 45088,\n  \"ìĤ\": 31061,\n  \"ìĥ\": 30587,\n  \"ìĥĿ\": 47858,\n  \"ìĦ\": 15074,\n  \"ìĦ¸ë\": 29254,\n  \"ìĦ¸ë¸\": 29658,\n  \"ìĦ¸ë¸Ĳ</w>\": 41415,\n  \"ìĨ\": 15115,\n  \"ìĨĮë\": 20515,\n  \"ìĨĮëħ\": 21391,\n  \"ìĨĮëħĦëĭ\": 25887,\n  \"ìĪ\": 32757,\n  \"ìĬ\": 12125,\n  \"ìĬ¤\": 20305,\n  \"ìĬ¤</w>\": 23829,\n  \"ìĭ\": 23924,\n  \"ìķ\": 16071,\n  \"ìķĦ\": 23233,\n  \"ìĸ\": 31625,\n  \"ìĹ\": 13252,\n  \"ìĹĲ\": 37622,\n  \"ìĹĳ\": 31036,\n  \"ìĹĳìĨ\": 42763,\n  \"ìĹĳìĨĮ</w>\": 45606,\n  \"ìĺ\": 21144,\n  \"ìĻ\": 39405,\n  \"ìļ\": 18541,\n  \"ìļ°\": 38415,\n  \"ìļ°</w>\": 49344,\n  \"ìĽ\": 22543,\n  \"ìĽĲ</w>\": 36495,\n  \"ìľ\": 20909,\n  \"ìľł\": 42890,\n  \"ìĿ\": 8276,\n  \"ìĿ´\": 12286,\n  \"ìĿ´</w>\": 34746,\n  \"ìĿ´ì\": 37590,\n  \"ìĿ¼\": 43406,\n  \"ìŀ\": 20849,\n  \"ìł\": 20580,\n  \"ìłķ\": 34725,\n  \"í\": 169,\n  \"í</w>\": 425,\n  \"íģ\": 35641,\n  \"íģ¬</w>\": 45832,\n  \"íĤ\": 43565,\n  \"íĥ\": 15012,\n  \"íĥĢ\": 41126,\n  \"íĥľ\": 37663,\n  \"íĬ\": 23215,\n  \"íĬ¸\": 48974,\n  \"íĬ¸</w>\": 39820,\n  \"íĭ\": 34350,\n  \"íĶ\": 29450,\n  \"íķ\": 15197,\n  \"íķ´</w>\": 35286,\n  \"íķĺ\": 33992,\n  \"íĺ\": 15962,\n  \"íĺ¸</w>\": 39657,\n  \"íĺĦ</w>\": 34645,\n  \"íĻ\": 31882,\n  \"î\": 170,\n  \"î</w>\": 426,\n  \"îĢ\": 36288,\n  \"îĦ\": 35368,\n  \"îĮ\": 41006,\n  \"îĲ\": 16929,\n  \"îĲĴ\": 40100,\n  \"ï\": 171,\n  \"ï</w>\": 427,\n  \"ï¸\": 842,\n  \"ï¸İ</w>\": 24029,\n  \"ï¸ı\": 1392,\n  \"ï¸ı#</w>\": 46997,\n  \"ï¸ı:</w>\": 32604,\n  \"ï¸ı</w>\": 1001,\n  \"ï¸ı@</w>\": 34600,\n  \"ï¸ıâĥ£\": 17394,\n  \"ï¸ıâĥ£-</w>\": 40376,\n  \"ï¸ıâĥ£</w>\": 4603,\n  \"ï¿\": 27850,\n  \"ï¿½\": 47356,\n  \"ï¿½</w>\": 39802,\n  \"ð\": 172,\n  \"ð</w>\": 428,\n  \"ðĿ\": 6874,\n  \"ðĿĲ\": 15889,\n  \"ðĿĳ\": 43794,\n  \"ðĿĴ\": 43387,\n  \"ðĿĵ\": 47110,\n  \"ðĿĹ\": 18865,\n  \"ðĿĺ\": 26109,\n  \"ðĿĻ\": 29415,\n  \"ðŁ\": 558,\n  \"ðŁ¤\": 1793,\n  \"ðŁ¤£\": 9665,\n  \"ðŁ¤£</w>\": 9909,\n  \"ðŁ¤£ðŁ¤£\": 16430,\n  \"ðŁ¤£ðŁ¤£</w>\": 31009,\n  \"ðŁ¤£ðŁ¤£ðŁ¤£</w>\": 32262,\n  \"ðŁ¤¤\": 39550,\n  \"ðŁ¤¤</w>\": 26759,\n  \"ðŁ¤¦\": 17186,\n  \"ðŁ¤§</w>\": 40983,\n  \"ðŁ¤©\": 27351,\n  \"ðŁ¤©</w>\": 16074,\n  \"ðŁ¤ª\": 44230,\n  \"ðŁ¤ª</w>\": 24920,\n  \"ðŁ¤«</w>\": 47671,\n  \"ðŁ¤¯</w>\": 37595,\n  \"ðŁ¤·\": 13185,\n  \"ðŁ¤·ðŁı»âĢįâĻĢï¸ı</w>\": 46770,\n  \"ðŁ¤ĳ</w>\": 34801,\n  \"ðŁ¤ĵ\": 36580,\n  \"ðŁ¤ĵ</w>\": 18928,\n  \"ðŁ¤Ķ\": 12706,\n  \"ðŁ¤Ķ</w>\": 6497,\n  \"ðŁ¤ĶðŁ¤Ķ</w>\": 28490,\n  \"ðŁ¤ĶðŁ¤ĶðŁ¤Ķ</w>\": 43361,\n  \"ðŁ¤ĸ</w>\": 46146,\n  \"ðŁ¤Ĺ\": 16646,\n  \"ðŁ¤Ĺ</w>\": 10465,\n  \"ðŁ¤ĹðŁ¤Ĺ</w>\": 44321,\n  \"ðŁ¤ĺ\": 10623,\n  \"ðŁ¤ĺ</w>\": 17288,\n  \"ðŁ¤ĺðŁı»\": 46449,\n  \"ðŁ¤ĺðŁı»</w>\": 30891,\n  \"ðŁ¤ĺðŁı¼</w>\": 31458,\n  \"ðŁ¤ĺðŁı½</w>\": 49362,\n  \"ðŁ¤Ļ\": 23800,\n  \"ðŁ¤Ļ</w>\": 39101,\n  \"ðŁ¤Ŀ</w>\": 35242,\n  \"ðŁ¤ŀ\": 29463,\n  \"ðŁ¤ŀ</w>\": 38597,\n  \"ðŁ¤Ł\": 48509,\n  \"ðŁ¤ł</w>\": 36737,\n  \"ðŁ¤Ń</w>\": 47289,\n  \"ðŁ¥\": 4156,\n  \"ðŁ¥°\": 29246,\n  \"ðŁ¥°</w>\": 17597,\n  \"ðŁ¥³\": 45823,\n  \"ðŁ¥³</w>\": 28055,\n  \"ðŁ¥º\": 43380,\n  \"ðŁ¥º</w>\": 36858,\n  \"ðŁ¥Ĥ\": 43805,\n  \"ðŁ¥Ĥ</w>\": 25212,\n  \"ðŁ¥ĥ</w>\": 47790,\n  \"ðŁ¥ĩ\": 34372,\n  \"ðŁ¥ĩ</w>\": 20069,\n  \"ðŁ¥Ī</w>\": 35858,\n  \"ðŁ¥ī</w>\": 36782,\n  \"ðŁ¥Ĭ</w>\": 29275,\n  \"ðŁ¦\": 6040,\n  \"ðŁ¦ģ\": 36367,\n  \"ðŁ¦ģ</w>\": 26056,\n  \"ðŁ¦ĥ</w>\": 40184,\n  \"ðŁ¦Ħ</w>\": 37659,\n  \"ðŁ¦ħ</w>\": 28800,\n  \"ðŁ¦Ī</w>\": 48984,\n  \"ðŁ¦ĭ\": 49325,\n  \"ðŁ¦ĭ</w>\": 28985,\n  \"ðŁ§\": 8792,\n  \"ðŁ§¡\": 30996,\n  \"ðŁ§¡</w>\": 24578,\n  \"ðŁ§Ĳ</w>\": 33549,\n  \"ðŁħ\": 22010,\n  \"ðŁĨ\": 9536,\n  \"ðŁĨķ</w>\": 34956,\n  \"ðŁĨĺ</w>\": 39868,\n  \"ðŁĨļ</w>\": 16325,\n  \"ðŁĩ\": 1173,\n  \"ðŁĩ¦\": 12469,\n  \"ðŁĩ¦</w>\": 28565,\n  \"ðŁĩ¦ðŁĩ\": 33196,\n  \"ðŁĩ¦ðŁĩ·</w>\": 41629,\n  \"ðŁĩ¦ðŁĩº</w>\": 25192,\n  \"ðŁĩ§\": 14660,\n  \"ðŁĩ§ðŁĩ\": 37342,\n  \"ðŁĩ§ðŁĩª</w>\": 38794,\n  \"ðŁĩ§ðŁĩ·</w>\": 28182,\n  \"ðŁĩ¨\": 8889,\n  \"ðŁĩ¨ðŁĩ\": 8989,\n  \"ðŁĩ¨ðŁĩ¦\": 34324,\n  \"ðŁĩ¨ðŁĩ¦</w>\": 16364,\n  \"ðŁĩ¨ðŁĩ³</w>\": 36819,\n  \"ðŁĩ¨ðŁĩŃ</w>\": 41119,\n  \"ðŁĩ©\": 15222,\n  \"ðŁĩ©ðŁĩ\": 36350,\n  \"ðŁĩ©ðŁĩª</w>\": 21531,\n  \"ðŁĩª\": 11428,\n  \"ðŁĩª</w>\": 12331,\n  \"ðŁĩªðŁĩ\": 13917,\n  \"ðŁĩªðŁĩ¸</w>\": 22177,\n  \"ðŁĩªðŁĩº</w>\": 34655,\n  \"ðŁĩ«\": 12977,\n  \"ðŁĩ«ðŁĩ·\": 39109,\n  \"ðŁĩ«ðŁĩ·</w>\": 16223,\n  \"ðŁĩ¬\": 8129,\n  \"ðŁĩ¬ðŁĩ\": 8354,\n  \"ðŁĩ¬ðŁĩ§\": 23762,\n  \"ðŁĩ¬ðŁĩ§</w>\": 11559,\n  \"ðŁĩ®\": 8268,\n  \"ðŁĩ®ðŁĩ\": 8347,\n  \"ðŁĩ®ðŁĩª</w>\": 34148,\n  \"ðŁĩ®ðŁĩ³\": 47299,\n  \"ðŁĩ®ðŁĩ³</w>\": 23602,\n  \"ðŁĩ®ðŁĩ¹\": 42034,\n  \"ðŁĩ®ðŁĩ¹</w>\": 17070,\n  \"ðŁĩ¯\": 20090,\n  \"ðŁĩ¯ðŁĩ\": 22924,\n  \"ðŁĩ¯ðŁĩµ</w>\": 26527,\n  \"ðŁĩ°\": 28232,\n  \"ðŁĩ±\": 29533,\n  \"ðŁĩ±ðŁĩ\": 40941,\n  \"ðŁĩ²\": 16411,\n  \"ðŁĩ²ðŁĩ\": 17562,\n  \"ðŁĩ²ðŁĩ½</w>\": 32073,\n  \"ðŁĩ³\": 16645,\n  \"ðŁĩ³ðŁĩ\": 17747,\n  \"ðŁĩ³ðŁĩ±</w>\": 36747,\n  \"ðŁĩµ\": 12127,\n  \"ðŁĩµðŁĩ\": 13608,\n  \"ðŁĩµðŁĩ°</w>\": 37764,\n  \"ðŁĩµðŁĩ¹</w>\": 42621,\n  \"ðŁĩµðŁĩŃ</w>\": 42777,\n  \"ðŁĩ·\": 16026,\n  \"ðŁĩ·</w>\": 9869,\n  \"ðŁĩ·ðŁĩº</w>\": 37902,\n  \"ðŁĩ¸\": 19447,\n  \"ðŁĩ¸ðŁĩ\": 33325,\n  \"ðŁĩ¸ðŁĩª</w>\": 39260,\n  \"ðŁĩ¹\": 21810,\n  \"ðŁĩ¹ðŁĩ\": 36250,\n  \"ðŁĩº\": 4054,\n  \"ðŁĩº</w>\": 17467,\n  \"ðŁĩºðŁĩ\": 4131,\n  \"ðŁĩºðŁĩ¸\": 8907,\n  \"ðŁĩºðŁĩ¸</w>\": 5688,\n  \"ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸\": 18739,\n  \"ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸</w>\": 41411,\n  \"ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸</w>\": 43357,\n  \"ðŁĩ¿\": 25520,\n  \"ðŁĩ¿ðŁĩ¦</w>\": 36982,\n  \"ðŁĩŃ\": 30370,\n  \"ðŁĮ\": 1576,\n  \"ðŁĮ±\": 35318,\n  \"ðŁĮ±</w>\": 20665,\n  \"ðŁĮ²\": 34071,\n  \"ðŁĮ²</w>\": 28154,\n  \"ðŁĮ³\": 44265,\n  \"ðŁĮ³</w>\": 28543,\n  \"ðŁĮ´\": 20643,\n  \"ðŁĮ´</w>\": 15968,\n  \"ðŁĮµ</w>\": 40871,\n  \"ðŁĮ·\": 32328,\n  \"ðŁĮ·</w>\": 24259,\n  \"ðŁĮ¸\": 16314,\n  \"ðŁĮ¸</w>\": 10980,\n  \"ðŁĮ¸ðŁĮ¸\": 46210,\n  \"ðŁĮ¹\": 14990,\n  \"ðŁĮ¹</w>\": 10662,\n  \"ðŁĮ¹ðŁĮ¹\": 37933,\n  \"ðŁĮº\": 27608,\n  \"ðŁĮº</w>\": 19829,\n  \"ðŁĮ»\": 27196,\n  \"ðŁĮ»</w>\": 19772,\n  \"ðŁĮ¼\": 36484,\n  \"ðŁĮ¼</w>\": 26312,\n  \"ðŁĮ¾</w>\": 39796,\n  \"ðŁĮ¿\": 27736,\n  \"ðŁĮ¿</w>\": 18588,\n  \"ðŁĮĢ</w>\": 34348,\n  \"ðŁĮħ</w>\": 27547,\n  \"ðŁĮĪ\": 23038,\n  \"ðŁĮĪ</w>\": 13042,\n  \"ðŁĮĬ\": 20465,\n  \"ðŁĮĬ</w>\": 14302,\n  \"ðŁĮĮ</w>\": 43393,\n  \"ðŁĮį\": 34931,\n  \"ðŁĮį</w>\": 18641,\n  \"ðŁĮİ\": 31125,\n  \"ðŁĮİ</w>\": 16969,\n  \"ðŁĮı</w>\": 31527,\n  \"ðŁĮĲ</w>\": 33071,\n  \"ðŁĮĻ\": 42330,\n  \"ðŁĮĻ</w>\": 23283,\n  \"ðŁĮļ\": 49004,\n  \"ðŁĮļ</w>\": 27877,\n  \"ðŁĮŀ\": 21152,\n  \"ðŁĮŀ</w>\": 12980,\n  \"ðŁĮŁ\": 13196,\n  \"ðŁĮŁ</w>\": 8542,\n  \"ðŁĮŁðŁĮŁ\": 26014,\n  \"ðŁį\": 2011,\n  \"ðŁį¦\": 47375,\n  \"ðŁį¦</w>\": 32032,\n  \"ðŁį©</w>\": 38379,\n  \"ðŁįª</w>\": 38958,\n  \"ðŁį«\": 47994,\n  \"ðŁį«</w>\": 33401,\n  \"ðŁį°\": 43732,\n  \"ðŁį°</w>\": 30051,\n  \"ðŁį³</w>\": 37441,\n  \"ðŁį´\": 41531,\n  \"ðŁį´</w>\": 25338,\n  \"ðŁį·\": 24445,\n  \"ðŁį·</w>\": 18072,\n  \"ðŁį¸\": 43058,\n  \"ðŁį¸</w>\": 31217,\n  \"ðŁį¹</w>\": 35598,\n  \"ðŁįº\": 31081,\n  \"ðŁįº</w>\": 21590,\n  \"ðŁį»\": 22793,\n  \"ðŁį»</w>\": 13167,\n  \"ðŁį¾\": 27294,\n  \"ðŁį¾</w>\": 21656,\n  \"ðŁįĢ\": 22865,\n  \"ðŁįĢ</w>\": 15764,\n  \"ðŁįģ\": 29837,\n  \"ðŁįģ</w>\": 23075,\n  \"ðŁįĤ\": 35015,\n  \"ðŁįĤ</w>\": 25721,\n  \"ðŁįĥ\": 27157,\n  \"ðŁįĥ</w>\": 20147,\n  \"ðŁįĩ</w>\": 48697,\n  \"ðŁįĬ\": 35001,\n  \"ðŁįĬ</w>\": 28036,\n  \"ðŁįĭ</w>\": 39543,\n  \"ðŁįĮ</w>\": 44987,\n  \"ðŁįį</w>\": 48946,\n  \"ðŁįİ</w>\": 32069,\n  \"ðŁįĳ</w>\": 32889,\n  \"ðŁįĴ</w>\": 33160,\n  \"ðŁįĵ\": 44739,\n  \"ðŁįĵ</w>\": 33456,\n  \"ðŁįĶ\": 46415,\n  \"ðŁįĶ</w>\": 36031,\n  \"ðŁįķ\": 31469,\n  \"ðŁįķ</w>\": 23904,\n  \"ðŁįŃ</w>\": 42100,\n  \"ðŁİ\": 1165,\n  \"ðŁİ£</w>\": 43158,\n  \"ðŁİ¤\": 23490,\n  \"ðŁİ¤</w>\": 15690,\n  \"ðŁİ¥\": 22186,\n  \"ðŁİ¥:</w>\": 43640,\n  \"ðŁİ¥</w>\": 13233,\n  \"ðŁİ§\": 31254,\n  \"ðŁİ§</w>\": 14266,\n  \"ðŁİ¨\": 31953,\n  \"ðŁİ¨</w>\": 13461,\n  \"ðŁİ©</w>\": 37701,\n  \"ðŁİ«</w>\": 30331,\n  \"ðŁİ¬\": 36020,\n  \"ðŁİ¬</w>\": 18150,\n  \"ðŁİ®</w>\": 29312,\n  \"ðŁİ¯</w>\": 23114,\n  \"ðŁİµ\": 27435,\n  \"ðŁİµ</w>\": 14946,\n  \"ðŁİ¶\": 11755,\n  \"ðŁİ¶</w>\": 6011,\n  \"ðŁİ¶ðŁİ¶</w>\": 36283,\n  \"ðŁİ¸\": 29135,\n  \"ðŁİ¸</w>\": 22122,\n  \"ðŁİ¹</w>\": 43493,\n  \"ðŁİ¼\": 34949,\n  \"ðŁİ¼</w>\": 23757,\n  \"ðŁİ¾\": 41982,\n  \"ðŁİ¾</w>\": 24222,\n  \"ðŁİĢ\": 34347,\n  \"ðŁİĢ</w>\": 20151,\n  \"ðŁİģ\": 18368,\n  \"ðŁİģ</w>\": 13462,\n  \"ðŁİĤ\": 13026,\n  \"ðŁİĤ</w>\": 10392,\n  \"ðŁİĤðŁİĤ\": 39338,\n  \"ðŁİĥ\": 22622,\n  \"ðŁİĥ</w>\": 16780,\n  \"ðŁİĦ\": 12942,\n  \"ðŁİĦ</w>\": 11267,\n  \"ðŁİħ\": 17685,\n  \"ðŁİħ</w>\": 24276,\n  \"ðŁİĨ</w>\": 39222,\n  \"ðŁİĪ\": 16142,\n  \"ðŁİĪ</w>\": 14448,\n  \"ðŁİĪðŁİī</w>\": 48049,\n  \"ðŁİī\": 4310,\n  \"ðŁİī:</w>\": 17310,\n  \"ðŁİī</w>\": 3986,\n  \"ðŁİīðŁİ\": 11473,\n  \"ðŁİīðŁİĪ\": 40499,\n  \"ðŁİīðŁİĪ</w>\": 34008,\n  \"ðŁİīðŁİī\": 25159,\n  \"ðŁİīðŁİī</w>\": 13450,\n  \"ðŁİīðŁİīðŁİī</w>\": 20828,\n  \"ðŁİīðŁİĬ\": 31662,\n  \"ðŁİīðŁİĬ</w>\": 30781,\n  \"ðŁİĬ\": 22763,\n  \"ðŁİĬ</w>\": 22425,\n  \"ðŁİĬðŁİī</w>\": 48801,\n  \"ðŁİĵ\": 28916,\n  \"ðŁİĵ</w>\": 18744,\n  \"ðŁİĻ\": 29001,\n  \"ðŁİĻ</w>\": 29753,\n  \"ðŁİĻï¸ı</w>\": 44205,\n  \"ðŁİŁ\": 19248,\n  \"ðŁİŁ</w>\": 21107,\n  \"ðŁİŁï¸ı</w>\": 30243,\n  \"ðŁİŃ</w>\": 28856,\n  \"ðŁı\": 1109,\n  \"ðŁı¡</w>\": 27318,\n  \"ðŁı³ï¸ı\": 26844,\n  \"ðŁı³ï¸ıâĢį\": 27093,\n  \"ðŁı³ï¸ıâĢįðŁĮĪ</w>\": 32610,\n  \"ðŁı´\": 39690,\n  \"ðŁı´</w>\": 19704,\n  \"ðŁı»\": 5042,\n  \"ðŁı»</w>\": 3702,\n  \"ðŁı»âĢį\": 46250,\n  \"ðŁı»âĢįâĻĢï¸ı\": 48391,\n  \"ðŁı»âĢįâĻĢï¸ı</w>\": 23595,\n  \"ðŁı»âĢįâĻĤï¸ı</w>\": 30984,\n  \"ðŁı¼\": 6193,\n  \"ðŁı¼</w>\": 4027,\n  \"ðŁı¼âĢįâĻĢï¸ı</w>\": 28955,\n  \"ðŁı½\": 8514,\n  \"ðŁı½</w>\": 6114,\n  \"ðŁı½âĢįâĻĢï¸ı</w>\": 37036,\n  \"ðŁı½âĢįâĻĤï¸ı</w>\": 43157,\n  \"ðŁı¾\": 10230,\n  \"ðŁı¾</w>\": 7778,\n  \"ðŁı¾âĢįâĻĤï¸ı</w>\": 47189,\n  \"ðŁı¿\": 29854,\n  \"ðŁı¿</w>\": 21094,\n  \"ðŁıĢ\": 13708,\n  \"ðŁıĢ</w>\": 8813,\n  \"ðŁıĢðŁıĢ\": 43169,\n  \"ðŁıģ\": 29423,\n  \"ðŁıģ</w>\": 17473,\n  \"ðŁıĥ\": 16820,\n  \"ðŁıĥ</w>\": 32751,\n  \"ðŁıħ</w>\": 25500,\n  \"ðŁıĨ\": 9585,\n  \"ðŁıĨ</w>\": 5596,\n  \"ðŁıĨðŁıĨ\": 18946,\n  \"ðŁıĨðŁıĨ</w>\": 38269,\n  \"ðŁıĨðŁıĨðŁıĨ</w>\": 44484,\n  \"ðŁıĩ\": 45789,\n  \"ðŁıĩ</w>\": 40288,\n  \"ðŁıĪ\": 16144,\n  \"ðŁıĪ</w>\": 10477,\n  \"ðŁıī</w>\": 26020,\n  \"ðŁıĬ\": 33061,\n  \"ðŁıĬ</w>\": 47830,\n  \"ðŁıĮ\": 41116,\n  \"ðŁıı</w>\": 32460,\n  \"ðŁıĲ\": 46334,\n  \"ðŁıĲ</w>\": 29433,\n  \"ðŁıĴ</w>\": 37756,\n  \"ðŁıŁ\": 35914,\n  \"ðŁıŁ</w>\": 26472,\n  \"ðŁıŁï¸ı</w>\": 42627,\n  \"ðŁıł</w>\": 33727,\n  \"ðŁĲ\": 2074,\n  \"ðŁĲ¢</w>\": 37049,\n  \"ðŁĲ£</w>\": 39597,\n  \"ðŁĲ¥</w>\": 42981,\n  \"ðŁĲ¦</w>\": 37260,\n  \"ðŁĲ¬</w>\": 44238,\n  \"ðŁĲ¯\": 34825,\n  \"ðŁĲ¯</w>\": 26111,\n  \"ðŁĲ°\": 35378,\n  \"ðŁĲ°</w>\": 25050,\n  \"ðŁĲ±\": 35710,\n  \"ðŁĲ±</w>\": 22979,\n  \"ðŁĲ´</w>\": 33509,\n  \"ðŁĲ¶\": 14466,\n  \"ðŁĲ¶</w>\": 10631,\n  \"ðŁĲ·</w>\": 38408,\n  \"ðŁĲ¸\": 45597,\n  \"ðŁĲ¸</w>\": 40298,\n  \"ðŁĲº\": 44281,\n  \"ðŁĲº</w>\": 31445,\n  \"ðŁĲ»\": 30750,\n  \"ðŁĲ»</w>\": 25322,\n  \"ðŁĲ¼</w>\": 46234,\n  \"ðŁĲ¾\": 16057,\n  \"ðŁĲ¾</w>\": 11317,\n  \"ðŁĲ¾ðŁĲ¾</w>\": 42202,\n  \"ðŁĲī</w>\": 46908,\n  \"ðŁĲĬ</w>\": 43974,\n  \"ðŁĲį\": 48903,\n  \"ðŁĲį</w>\": 30177,\n  \"ðŁĲİ\": 48281,\n  \"ðŁĲİ</w>\": 32726,\n  \"ðŁĲĲ\": 47735,\n  \"ðŁĲĲ</w>\": 27954,\n  \"ðŁĲĳ</w>\": 49389,\n  \"ðŁĲķ</w>\": 41069,\n  \"ðŁĲĺ</w>\": 38733,\n  \"ðŁĲĿ\": 30619,\n  \"ðŁĲĿ</w>\": 20111,\n  \"ðŁĲŁ\": 42084,\n  \"ðŁĲŁ</w>\": 29989,\n  \"ðŁĲł</w>\": 42725,\n  \"ðŁĳ\": 964,\n  \"ðŁĳ£</w>\": 39755,\n  \"ðŁĳ§\": 48938,\n  \"ðŁĳ¨\": 18966,\n  \"ðŁĳ¨âĢį\": 25023,\n  \"ðŁĳ©\": 18800,\n  \"ðŁĳ©âĢį\": 26304,\n  \"ðŁĳ«\": 47106,\n  \"ðŁĳ«</w>\": 35457,\n  \"ðŁĳ®\": 42686,\n  \"ðŁĳ¯\": 25910,\n  \"ðŁĳ¯</w>\": 20582,\n  \"ðŁĳ¶\": 26187,\n  \"ðŁĳ¶</w>\": 33189,\n  \"ðŁĳ¸\": 26268,\n  \"ðŁĳ¸</w>\": 36645,\n  \"ðŁĳ¹</w>\": 46766,\n  \"ðŁĳ»\": 24625,\n  \"ðŁĳ»</w>\": 16243,\n  \"ðŁĳ¼\": 25270,\n  \"ðŁĳ¼</w>\": 31083,\n  \"ðŁĳ½\": 42677,\n  \"ðŁĳ½</w>\": 26257,\n  \"ðŁĳĢ\": 11524,\n  \"ðŁĳĢ</w>\": 5908,\n  \"ðŁĳĢðŁĳĢ</w>\": 31561,\n  \"ðŁĳģ\": 47796,\n  \"ðŁĳģ</w>\": 45705,\n  \"ðŁĳĦ</w>\": 47445,\n  \"ðŁĳħ\": 31833,\n  \"ðŁĳħ</w>\": 24672,\n  \"ðŁĳĨ\": 42975,\n  \"ðŁĳĨ</w>\": 45194,\n  \"ðŁĳĩ\": 7662,\n  \"ðŁĳĩ</w>\": 7475,\n  \"ðŁĳĩðŁı»\": 45811,\n  \"ðŁĳĩðŁı»</w>\": 32813,\n  \"ðŁĳĩðŁı¼</w>\": 37504,\n  \"ðŁĳĩðŁĳĩ\": 17915,\n  \"ðŁĳĩðŁĳĩ</w>\": 31891,\n  \"ðŁĳĩðŁĳĩðŁĳĩ</w>\": 35627,\n  \"ðŁĳĪ\": 32794,\n  \"ðŁĳĪ</w>\": 20832,\n  \"ðŁĳī\": 9477,\n  \"ðŁĳī</w>\": 3988,\n  \"ðŁĳīðŁı»</w>\": 23481,\n  \"ðŁĳīðŁı¼</w>\": 27534,\n  \"ðŁĳīðŁı½</w>\": 38059,\n  \"ðŁĳīðŁĳī</w>\": 41480,\n  \"ðŁĳĬ\": 8897,\n  \"ðŁĳĬ</w>\": 9704,\n  \"ðŁĳĬðŁı»\": 47393,\n  \"ðŁĳĬðŁı»</w>\": 29152,\n  \"ðŁĳĬðŁı¼\": 49000,\n  \"ðŁĳĬðŁı¼</w>\": 30115,\n  \"ðŁĳĬðŁĳĬ</w>\": 46521,\n  \"ðŁĳĭ\": 19351,\n  \"ðŁĳĭ</w>\": 17686,\n  \"ðŁĳĮ\": 4890,\n  \"ðŁĳĮ</w>\": 4494,\n  \"ðŁĳĮðŁı»\": 31818,\n  \"ðŁĳĮðŁı»</w>\": 18606,\n  \"ðŁĳĮðŁı¼\": 37655,\n  \"ðŁĳĮðŁı¼</w>\": 20031,\n  \"ðŁĳĮðŁı½</w>\": 35834,\n  \"ðŁĳĮðŁĳĮ\": 36139,\n  \"ðŁĳĮðŁĳĮ</w>\": 21435,\n  \"ðŁĳĮðŁĳĮðŁĳĮ</w>\": 40876,\n  \"ðŁĳį\": 4686,\n  \"ðŁĳį</w>\": 4201,\n  \"ðŁĳįðŁı»\": 25803,\n  \"ðŁĳįðŁı»</w>\": 15129,\n  \"ðŁĳįðŁı¼\": 37285,\n  \"ðŁĳįðŁı¼</w>\": 19689,\n  \"ðŁĳįðŁı½</w>\": 43722,\n  \"ðŁĳįðŁĳį\": 33012,\n  \"ðŁĳįðŁĳį</w>\": 18997,\n  \"ðŁĳįðŁĳįðŁĳį</w>\": 37284,\n  \"ðŁĳİ\": 39702,\n  \"ðŁĳİ</w>\": 32568,\n  \"ðŁĳı\": 3802,\n  \"ðŁĳı</w>\": 4829,\n  \"ðŁĳıðŁı»\": 19236,\n  \"ðŁĳıðŁı»</w>\": 17029,\n  \"ðŁĳıðŁı»ðŁĳıðŁı»\": 35254,\n  \"ðŁĳıðŁı¼\": 24496,\n  \"ðŁĳıðŁı¼</w>\": 19979,\n  \"ðŁĳıðŁı¼ðŁĳıðŁı¼</w>\": 46712,\n  \"ðŁĳıðŁı½\": 40796,\n  \"ðŁĳıðŁı½</w>\": 33978,\n  \"ðŁĳıðŁı¾</w>\": 45450,\n  \"ðŁĳıðŁĳı\": 10356,\n  \"ðŁĳıðŁĳı</w>\": 16706,\n  \"ðŁĳıðŁĳıðŁĳı</w>\": 17254,\n  \"ðŁĳĲ</w>\": 40877,\n  \"ðŁĳĳ\": 14955,\n  \"ðŁĳĳ</w>\": 8717,\n  \"ðŁĳĳðŁĳĳ\": 48532,\n  \"ðŁĳķ</w>\": 47865,\n  \"ðŁĳŁ</w>\": 41183,\n  \"ðŁĳł</w>\": 41264,\n  \"ðŁĳŃ\": 34175,\n  \"ðŁĳŃ</w>\": 27943,\n  \"ðŁĴ\": 837,\n  \"ðŁĴ¡</w>\": 24081,\n  \"ðŁĴ£\": 36862,\n  \"ðŁĴ£</w>\": 29006,\n  \"ðŁĴ¤\": 34706,\n  \"ðŁĴ¤</w>\": 25632,\n  \"ðŁĴ¥\": 12209,\n  \"ðŁĴ¥</w>\": 7347,\n  \"ðŁĴ¥ðŁĴ¥\": 27396,\n  \"ðŁĴ¥ðŁĴ¥</w>\": 39246,\n  \"ðŁĴ¥ðŁĴ¥ðŁĴ¥</w>\": 48890,\n  \"ðŁĴ¦\": 21180,\n  \"ðŁĴ¦</w>\": 14060,\n  \"ðŁĴ¦ðŁĴ¦</w>\": 44469,\n  \"ðŁĴ§</w>\": 34095,\n  \"ðŁĴ¨\": 27408,\n  \"ðŁĴ¨</w>\": 17891,\n  \"ðŁĴ©\": 48621,\n  \"ðŁĴ©</w>\": 28847,\n  \"ðŁĴª\": 5475,\n  \"ðŁĴª</w>\": 6440,\n  \"ðŁĴªðŁı»\": 31669,\n  \"ðŁĴªðŁı»</w>\": 21903,\n  \"ðŁĴªðŁı¼\": 32041,\n  \"ðŁĴªðŁı¼</w>\": 20759,\n  \"ðŁĴªðŁı½\": 46380,\n  \"ðŁĴªðŁı½</w>\": 31111,\n  \"ðŁĴªðŁı¾</w>\": 39398,\n  \"ðŁĴªðŁĴª</w>\": 24747,\n  \"ðŁĴªðŁĴªðŁĴª</w>\": 39913,\n  \"ðŁĴ«\": 25770,\n  \"ðŁĴ«</w>\": 12526,\n  \"ðŁĴ¬</w>\": 30947,\n  \"ðŁĴ¯\": 10611,\n  \"ðŁĴ¯</w>\": 7018,\n  \"ðŁĴ¯ðŁĴ¯\": 30234,\n  \"ðŁĴ¯ðŁĴ¯</w>\": 44070,\n  \"ðŁĴ°\": 20454,\n  \"ðŁĴ°</w>\": 14078,\n  \"ðŁĴ°ðŁĴ°\": 41747,\n  \"ðŁĴµ\": 47412,\n  \"ðŁĴµ</w>\": 38041,\n  \"ðŁĴ¸\": 37696,\n  \"ðŁĴ¸</w>\": 25957,\n  \"ðŁĴ»\": 33433,\n  \"ðŁĴ»</w>\": 18135,\n  \"ðŁĴ¿</w>\": 39541,\n  \"ðŁĴĢ\": 14888,\n  \"ðŁĴĢ</w>\": 12158,\n  \"ðŁĴĢðŁĴĢ\": 30884,\n  \"ðŁĴģ\": 13997,\n  \"ðŁĴģ</w>\": 14392,\n  \"ðŁĴĥ\": 9947,\n  \"ðŁĴĥ</w>\": 14333,\n  \"ðŁĴĥðŁı»</w>\": 38624,\n  \"ðŁĴĥðŁĴĥ\": 28041,\n  \"ðŁĴĦ\": 46116,\n  \"ðŁĴĦ</w>\": 34571,\n  \"ðŁĴħ\": 27457,\n  \"ðŁĴħ</w>\": 32414,\n  \"ðŁĴī\": 44316,\n  \"ðŁĴī</w>\": 30503,\n  \"ðŁĴĭ\": 12217,\n  \"ðŁĴĭ</w>\": 7417,\n  \"ðŁĴĭðŁĴĭ</w>\": 29214,\n  \"ðŁĴĮ</w>\": 40817,\n  \"ðŁĴį\": 35850,\n  \"ðŁĴį</w>\": 24898,\n  \"ðŁĴİ\": 25938,\n  \"ðŁĴİ</w>\": 15874,\n  \"ðŁĴĲ\": 27375,\n  \"ðŁĴĲ</w>\": 20554,\n  \"ðŁĴĳ</w>\": 49404,\n  \"ðŁĴĵ\": 20628,\n  \"ðŁĴĵ</w>\": 12568,\n  \"ðŁĴĵðŁĴĵ</w>\": 43505,\n  \"ðŁĴĶ\": 18880,\n  \"ðŁĴĶ</w>\": 10704,\n  \"ðŁĴĶðŁĴĶ\": 44673,\n  \"ðŁĴķ\": 5412,\n  \"ðŁĴķ</w>\": 3082,\n  \"ðŁĴķðŁĴķ\": 23106,\n  \"ðŁĴķðŁĴķ</w>\": 14117,\n  \"ðŁĴķðŁĴķðŁĴķ</w>\": 26772,\n  \"ðŁĴĸ\": 8466,\n  \"ðŁĴĸ</w>\": 5582,\n  \"ðŁĴĸðŁĴĸ\": 19562,\n  \"ðŁĴĸðŁĴĸ</w>\": 30595,\n  \"ðŁĴĸðŁĴĸðŁĴĸ</w>\": 33915,\n  \"ðŁĴĹ\": 10148,\n  \"ðŁĴĹ</w>\": 6690,\n  \"ðŁĴĹðŁĴĹ\": 47158,\n  \"ðŁĴĹðŁĴĹ</w>\": 24064,\n  \"ðŁĴĹðŁĴĹðŁĴĹ</w>\": 36990,\n  \"ðŁĴĺ\": 18223,\n  \"ðŁĴĺ</w>\": 10816,\n  \"ðŁĴĺðŁĴĺ</w>\": 40464,\n  \"ðŁĴĻ\": 5305,\n  \"ðŁĴĻ</w>\": 4074,\n  \"ðŁĴĻðŁĴĻ\": 17833,\n  \"ðŁĴĻðŁĴĻ</w>\": 27101,\n  \"ðŁĴĻðŁĴĻðŁĴĻ</w>\": 30698,\n  \"ðŁĴĻðŁĴĽ\": 46804,\n  \"ðŁĴĻðŁĴĽ</w>\": 26230,\n  \"ðŁĴĻðŁĴľ\": 47931,\n  \"ðŁĴĻðŁĴľ</w>\": 42541,\n  \"ðŁĴļ\": 8102,\n  \"ðŁĴļ</w>\": 6521,\n  \"ðŁĴļðŁĴļ\": 27497,\n  \"ðŁĴļðŁĴļ</w>\": 46209,\n  \"ðŁĴļðŁĴļðŁĴļ</w>\": 46182,\n  \"ðŁĴļðŁĴĽ</w>\": 41232,\n  \"ðŁĴĽ\": 8221,\n  \"ðŁĴĽ</w>\": 6233,\n  \"ðŁĴĽðŁĴĻ</w>\": 36337,\n  \"ðŁĴĽðŁĴļ\": 37994,\n  \"ðŁĴĽðŁĴĽ\": 32420,\n  \"ðŁĴľ\": 6832,\n  \"ðŁĴľ</w>\": 4882,\n  \"ðŁĴľðŁĴľ\": 17280,\n  \"ðŁĴľðŁĴľ</w>\": 28211,\n  \"ðŁĴľðŁĴľðŁĴľ</w>\": 31004,\n  \"ðŁĴĿ\": 36761,\n  \"ðŁĴĿ</w>\": 22002,\n  \"ðŁĴŀ\": 14862,\n  \"ðŁĴŀ</w>\": 8988,\n  \"ðŁĴŀðŁĴŀ</w>\": 36448,\n  \"ðŁĴŁ\": 49394,\n  \"ðŁĴŁ</w>\": 28828,\n  \"ðŁĴŃ</w>\": 33848,\n  \"ðŁĵ\": 1497,\n  \"ðŁĵ¢\": 46560,\n  \"ðŁĵ¢</w>\": 20901,\n  \"ðŁĵ£\": 48841,\n  \"ðŁĵ£</w>\": 21282,\n  \"ðŁĵ°:</w>\": 28952,\n  \"ðŁĵ°</w>\": 14985,\n  \"ðŁĵ±\": 36104,\n  \"ðŁĵ±</w>\": 20824,\n  \"ðŁĵ²</w>\": 19363,\n  \"ðŁĵ·\": 6966,\n  \"ðŁĵ·:</w>\": 8294,\n  \"ðŁĵ·</w>\": 5551,\n  \"ðŁĵ·@</w>\": 40032,\n  \"ðŁĵ¸\": 8401,\n  \"ðŁĵ¸:</w>\": 10379,\n  \"ðŁĵ¸</w>\": 6074,\n  \"ðŁĵ¸@</w>\": 39660,\n  \"ðŁĵ¹</w>\": 49251,\n  \"ðŁĵº\": 21792,\n  \"ðŁĵº:</w>\": 29728,\n  \"ðŁĵº</w>\": 10450,\n  \"ðŁĵ»\": 32711,\n  \"ðŁĵ»</w>\": 15882,\n  \"ðŁĵ½</w>\": 45361,\n  \"ðŁĵħ</w>\": 21277,\n  \"ðŁĵĨ</w>\": 23471,\n  \"ðŁĵĪ</w>\": 23359,\n  \"ðŁĵĬ</w>\": 22244,\n  \"ðŁĵĭ</w>\": 46351,\n  \"ðŁĵĮ</w>\": 22289,\n  \"ðŁĵį\": 25043,\n  \"ðŁĵį:</w>\": 36845,\n  \"ðŁĵį</w>\": 8903,\n  \"ðŁĵĸ\": 49003,\n  \"ðŁĵĸ</w>\": 23043,\n  \"ðŁĵļ\": 25433,\n  \"ðŁĵļ</w>\": 15566,\n  \"ðŁĵĿ\": 31888,\n  \"ðŁĵĿ:</w>\": 48398,\n  \"ðŁĵĿ</w>\": 15853,\n  \"ðŁĵŀ</w>\": 24022,\n  \"ðŁĶ\": 1428,\n  \"ðŁĶ¥\": 3191,\n  \"ðŁĶ¥#</w>\": 44354,\n  \"ðŁĶ¥</w>\": 3016,\n  \"ðŁĶ¥ðŁĶ¥\": 5692,\n  \"ðŁĶ¥ðŁĶ¥</w>\": 11771,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\": 11004,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥\": 23408,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\": 30989,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\": 48401,\n  \"ðŁĶ¥ðŁĶĹ</w>\": 35130,\n  \"ðŁĶª\": 47078,\n  \"ðŁĶª</w>\": 34545,\n  \"ðŁĶ«\": 38116,\n  \"ðŁĶ«</w>\": 20583,\n  \"ðŁĶ¬</w>\": 44227,\n  \"ðŁĶ®</w>\": 38077,\n  \"ðŁĶ´\": 12408,\n  \"ðŁĶ´</w>\": 10854,\n  \"ðŁĶ´âļªï¸ı\": 46879,\n  \"ðŁĶ´âļªï¸ı</w>\": 40055,\n  \"ðŁĶµ\": 17531,\n  \"ðŁĶµ</w>\": 17193,\n  \"ðŁĶµâļªï¸ı</w>\": 42412,\n  \"ðŁĶ¶\": 42880,\n  \"ðŁĶ¶</w>\": 36222,\n  \"ðŁĶ·</w>\": 37740,\n  \"ðŁĶ¸</w>\": 24200,\n  \"ðŁĶ¹</w>\": 19995,\n  \"ðŁĶº</w>\": 45561,\n  \"ðŁĶģ</w>\": 41299,\n  \"ðŁĶĬ\": 32580,\n  \"ðŁĶĬ</w>\": 20502,\n  \"ðŁĶİ</w>\": 44935,\n  \"ðŁĶĳ</w>\": 35127,\n  \"ðŁĶĴ</w>\": 44972,\n  \"ðŁĶĶ</w>\": 45753,\n  \"ðŁĶĹ\": 47475,\n  \"ðŁĶĹ</w>\": 14561,\n  \"ðŁĶĺ</w>\": 38995,\n  \"ðŁĶľ</w>\": 36011,\n  \"ðŁĶĿ\": 44387,\n  \"ðŁĶĿ</w>\": 29506,\n  \"ðŁķ\": 7692,\n  \"ðŁķº\": 33958,\n  \"ðŁķĬ\": 42624,\n  \"ðŁķĬ</w>\": 37760,\n  \"ðŁĸ\": 6269,\n  \"ðŁĸ¤\": 17603,\n  \"ðŁĸ¤</w>\": 10860,\n  \"ðŁĸ¥</w>\": 47990,\n  \"ðŁĹ\": 7045,\n  \"ðŁĹ£\": 33232,\n  \"ðŁĹ£</w>\": 18583,\n  \"ðŁĹ£ï¸ı</w>\": 37476,\n  \"ðŁĹĵ\": 34335,\n  \"ðŁĹĵ</w>\": 28773,\n  \"ðŁĹĵï¸ı</w>\": 39847,\n  \"ðŁĺ\": 668,\n  \"ðŁĺ¡\": 21968,\n  \"ðŁĺ¡</w>\": 17452,\n  \"ðŁĺ¡ðŁĺ¡\": 37223,\n  \"ðŁĺ¢\": 14308,\n  \"ðŁĺ¢</w>\": 9925,\n  \"ðŁĺ¢ðŁĺ¢\": 32923,\n  \"ðŁĺ¢ðŁĺ¢</w>\": 47921,\n  \"ðŁĺ£</w>\": 32718,\n  \"ðŁĺ¤\": 26872,\n  \"ðŁĺ¤</w>\": 20740,\n  \"ðŁĺ¥\": 38383,\n  \"ðŁĺ¥</w>\": 23951,\n  \"ðŁĺ¨</w>\": 38080,\n  \"ðŁĺ©\": 9051,\n  \"ðŁĺ©</w>\": 9494,\n  \"ðŁĺ©ðŁĺ©\": 22820,\n  \"ðŁĺ©ðŁĺ©</w>\": 38031,\n  \"ðŁĺ©ðŁĺ©ðŁĺ©</w>\": 49063,\n  \"ðŁĺª\": 38181,\n  \"ðŁĺª</w>\": 22243,\n  \"ðŁĺ«\": 25141,\n  \"ðŁĺ«</w>\": 22340,\n  \"ðŁĺ¬\": 23704,\n  \"ðŁĺ¬</w>\": 14549,\n  \"ðŁĺ®\": 40163,\n  \"ðŁĺ®</w>\": 21616,\n  \"ðŁĺ¯</w>\": 37858,\n  \"ðŁĺ°</w>\": 34728,\n  \"ðŁĺ±\": 10938,\n  \"ðŁĺ±</w>\": 9055,\n  \"ðŁĺ±ðŁĺ±\": 22061,\n  \"ðŁĺ±ðŁĺ±</w>\": 40767,\n  \"ðŁĺ±ðŁĺ±ðŁĺ±</w>\": 40909,\n  \"ðŁĺ²\": 40460,\n  \"ðŁĺ²</w>\": 24620,\n  \"ðŁĺ³\": 12047,\n  \"ðŁĺ³</w>\": 8223,\n  \"ðŁĺ³ðŁĺ³\": 32592,\n  \"ðŁĺ´\": 23527,\n  \"ðŁĺ´</w>\": 16415,\n  \"ðŁĺ´ðŁĺ´</w>\": 49307,\n  \"ðŁĺµ</w>\": 39368,\n  \"ðŁĺ¶</w>\": 35207,\n  \"ðŁĺ·\": 37943,\n  \"ðŁĺ·</w>\": 25759,\n  \"ðŁĺ¸</w>\": 36912,\n  \"ðŁĺ¹\": 26477,\n  \"ðŁĺ¹</w>\": 26573,\n  \"ðŁĺ¹ðŁĺ¹\": 46287,\n  \"ðŁĺº</w>\": 40613,\n  \"ðŁĺ»\": 15453,\n  \"ðŁĺ»</w>\": 12911,\n  \"ðŁĺ»ðŁĺ»\": 34414,\n  \"ðŁĺ¼</w>\": 44245,\n  \"ðŁĺ½</w>\": 45156,\n  \"ðŁĺĢ\": 12832,\n  \"ðŁĺĢ</w>\": 7334,\n  \"ðŁĺĢðŁĺĢ</w>\": 34503,\n  \"ðŁĺģ\": 6967,\n  \"ðŁĺģ</w>\": 4821,\n  \"ðŁĺģðŁĺģ\": 37900,\n  \"ðŁĺģðŁĺģ</w>\": 19213,\n  \"ðŁĺģðŁĺģðŁĺģ</w>\": 29083,\n  \"ðŁĺĤ\": 1424,\n  \"ðŁĺĤ)</w>\": 42643,\n  \"ðŁĺĤ.</w>\": 42550,\n  \"ðŁĺĤ</w>\": 1558,\n  \"ðŁĺĤâĿ¤ï¸ı</w>\": 36412,\n  \"ðŁĺĤðŁĳĮ</w>\": 42000,\n  \"ðŁĺĤðŁĺĤ\": 2286,\n  \"ðŁĺĤðŁĺĤ</w>\": 4112,\n  \"ðŁĺĤðŁĺĤðŁĺĤ\": 22233,\n  \"ðŁĺĤðŁĺĤðŁĺĤ</w>\": 4887,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ\": 9936,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 11522,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 19295,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 33415,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 48973,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ\": 28504,\n  \"ðŁĺĤðŁĺį</w>\": 43128,\n  \"ðŁĺĤðŁĺŃ\": 28965,\n  \"ðŁĺĤðŁĺŃ</w>\": 25802,\n  \"ðŁĺĥ\": 14079,\n  \"ðŁĺĥ</w>\": 8520,\n  \"ðŁĺĥðŁĺĥ</w>\": 38358,\n  \"ðŁĺĦ\": 12141,\n  \"ðŁĺĦ</w>\": 7624,\n  \"ðŁĺĦðŁĺĦ</w>\": 32312,\n  \"ðŁĺħ\": 15245,\n  \"ðŁĺħ</w>\": 9188,\n  \"ðŁĺħðŁĺħ</w>\": 39078,\n  \"ðŁĺĨ\": 16541,\n  \"ðŁĺĨ</w>\": 10943,\n  \"ðŁĺĨðŁĺĨ</w>\": 39503,\n  \"ðŁĺĩ\": 21694,\n  \"ðŁĺĩ</w>\": 13091,\n  \"ðŁĺĪ\": 14377,\n  \"ðŁĺĪ</w>\": 9756,\n  \"ðŁĺĪðŁĺĪ</w>\": 44473,\n  \"ðŁĺī\": 9740,\n  \"ðŁĺī</w>\": 4955,\n  \"ðŁĺīðŁĺī</w>\": 40430,\n  \"ðŁĺĬ\": 4692,\n  \"ðŁĺĬ</w>\": 3020,\n  \"ðŁĺĬâĿ¤ï¸ı</w>\": 43606,\n  \"ðŁĺĬðŁĺĬ\": 12838,\n  \"ðŁĺĬðŁĺĬ</w>\": 20842,\n  \"ðŁĺĬðŁĺĬðŁĺĬ</w>\": 28685,\n  \"ðŁĺĬðŁĺĬðŁĺĬðŁĺĬ\": 35519,\n  \"ðŁĺĭ\": 12391,\n  \"ðŁĺĭ</w>\": 7203,\n  \"ðŁĺĭðŁĺĭ</w>\": 33304,\n  \"ðŁĺĮ\": 19221,\n  \"ðŁĺĮ</w>\": 12163,\n  \"ðŁĺį\": 1796,\n  \"ðŁĺį#</w>\": 42357,\n  \"ðŁĺį.</w>\": 48579,\n  \"ðŁĺį</w>\": 1754,\n  \"ðŁĺįâĿ¤</w>\": 29122,\n  \"ðŁĺįâĿ¤ï¸ı</w>\": 21945,\n  \"ðŁĺįðŁĳĮ</w>\": 41005,\n  \"ðŁĺįðŁĴķ</w>\": 35946,\n  \"ðŁĺįðŁĶ¥</w>\": 46648,\n  \"ðŁĺįðŁĺĤ</w>\": 48715,\n  \"ðŁĺįðŁĺį\": 3663,\n  \"ðŁĺįðŁĺį</w>\": 6471,\n  \"ðŁĺįðŁĺįðŁĺį\": 30614,\n  \"ðŁĺįðŁĺįðŁĺį</w>\": 7703,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺį\": 16603,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺį</w>\": 18925,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺįðŁĺį</w>\": 32078,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺį\": 48683,\n  \"ðŁĺįðŁĺĺ\": 29646,\n  \"ðŁĺįðŁĺĺ</w>\": 19849,\n  \"ðŁĺįðŁĺŃ</w>\": 39555,\n  \"ðŁĺİ\": 7426,\n  \"ðŁĺİ</w>\": 4345,\n  \"ðŁĺİðŁĺİ</w>\": 24048,\n  \"ðŁĺİðŁĺİðŁĺİ</w>\": 39742,\n  \"ðŁĺı\": 11624,\n  \"ðŁĺı</w>\": 6909,\n  \"ðŁĺıðŁĺı</w>\": 38151,\n  \"ðŁĺĲ\": 38586,\n  \"ðŁĺĲ</w>\": 19618,\n  \"ðŁĺĳ\": 32469,\n  \"ðŁĺĳ</w>\": 18937,\n  \"ðŁĺĴ\": 20792,\n  \"ðŁĺĴ</w>\": 11702,\n  \"ðŁĺĵ</w>\": 28733,\n  \"ðŁĺĶ\": 19532,\n  \"ðŁĺĶ</w>\": 11432,\n  \"ðŁĺķ\": 45741,\n  \"ðŁĺķ</w>\": 20602,\n  \"ðŁĺĸ</w>\": 35006,\n  \"ðŁĺĺ\": 4240,\n  \"ðŁĺĺ</w>\": 3352,\n  \"ðŁĺĺâĿ¤</w>\": 48409,\n  \"ðŁĺĺâĿ¤ï¸ı</w>\": 39150,\n  \"ðŁĺĺðŁĺį</w>\": 38176,\n  \"ðŁĺĺðŁĺĺ\": 15663,\n  \"ðŁĺĺðŁĺĺ</w>\": 10507,\n  \"ðŁĺĺðŁĺĺðŁĺĺ</w>\": 20208,\n  \"ðŁĺĺðŁĺĺðŁĺĺðŁĺĺ</w>\": 44892,\n  \"ðŁĺĻ\": 36201,\n  \"ðŁĺĻ</w>\": 29209,\n  \"ðŁĺļ\": 24897,\n  \"ðŁĺļ</w>\": 19102,\n  \"ðŁĺĽ\": 24550,\n  \"ðŁĺĽ</w>\": 15745,\n  \"ðŁĺľ\": 13226,\n  \"ðŁĺľ</w>\": 7830,\n  \"ðŁĺľðŁĺľ</w>\": 43065,\n  \"ðŁĺĿ\": 20064,\n  \"ðŁĺĿ</w>\": 12970,\n  \"ðŁĺŀ\": 40458,\n  \"ðŁĺŀ</w>\": 21103,\n  \"ðŁĺŁ</w>\": 46947,\n  \"ðŁĺł</w>\": 34094,\n  \"ðŁĺŃ\": 2962,\n  \"ðŁĺŃ</w>\": 3915,\n  \"ðŁĺŃâĿ¤ï¸ı</w>\": 29567,\n  \"ðŁĺŃðŁĴķ</w>\": 46306,\n  \"ðŁĺŃðŁĺĤ</w>\": 38505,\n  \"ðŁĺŃðŁĺį</w>\": 36893,\n  \"ðŁĺŃðŁĺŃ\": 5300,\n  \"ðŁĺŃðŁĺŃ</w>\": 11834,\n  \"ðŁĺŃðŁĺŃðŁĺŃ\": 44089,\n  \"ðŁĺŃðŁĺŃðŁĺŃ</w>\": 13116,\n  \"ðŁĺŃðŁĺŃðŁĺŃðŁĺŃ\": 19793,\n  \"ðŁĺŃðŁĺŃðŁĺŃðŁĺŃ</w>\": 27322,\n  \"ðŁĺŃðŁĺŃðŁĺŃðŁĺŃðŁĺŃ</w>\": 43366,\n  \"ðŁĻ\": 1478,\n  \"ðŁĻĢ</w>\": 43092,\n  \"ðŁĻĤ\": 32006,\n  \"ðŁĻĤ</w>\": 14860,\n  \"ðŁĻĥ\": 27222,\n  \"ðŁĻĥ</w>\": 15652,\n  \"ðŁĻĦ\": 20648,\n  \"ðŁĻĦ</w>\": 13049,\n  \"ðŁĻħ\": 42702,\n  \"ðŁĻĨ\": 30050,\n  \"ðŁĻĨ</w>\": 35730,\n  \"ðŁĻĪ\": 12661,\n  \"ðŁĻĪ</w>\": 9516,\n  \"ðŁĻĪðŁĻĪ</w>\": 41796,\n  \"ðŁĻĬ\": 23684,\n  \"ðŁĻĬ</w>\": 16636,\n  \"ðŁĻĭ\": 19193,\n  \"ðŁĻĭ</w>\": 30274,\n  \"ðŁĻĮ\": 4366,\n  \"ðŁĻĮ</w>\": 4855,\n  \"ðŁĻĮðŁı»\": 26756,\n  \"ðŁĻĮðŁı»</w>\": 15799,\n  \"ðŁĻĮðŁı¼\": 26584,\n  \"ðŁĻĮðŁı¼</w>\": 15364,\n  \"ðŁĻĮðŁı½\": 36660,\n  \"ðŁĻĮðŁı½</w>\": 22962,\n  \"ðŁĻĮðŁı¾\": 38023,\n  \"ðŁĻĮðŁı¾</w>\": 26466,\n  \"ðŁĻĮðŁĻĮ\": 21202,\n  \"ðŁĻĮðŁĻĮ</w>\": 30430,\n  \"ðŁĻĮðŁĻĮðŁĻĮ</w>\": 37127,\n  \"ðŁĻı\": 4260,\n  \"ðŁĻı</w>\": 5503,\n  \"ðŁĻıðŁı»\": 25100,\n  \"ðŁĻıðŁı»</w>\": 16650,\n  \"ðŁĻıðŁı¼\": 31163,\n  \"ðŁĻıðŁı¼</w>\": 18952,\n  \"ðŁĻıðŁı½\": 34103,\n  \"ðŁĻıðŁı½</w>\": 21540,\n  \"ðŁĻıðŁı¾\": 34277,\n  \"ðŁĻıðŁı¾</w>\": 21979,\n  \"ðŁĻıðŁĻı\": 18227,\n  \"ðŁĻıðŁĻı</w>\": 26510,\n  \"ðŁĻıðŁĻıðŁĻı</w>\": 31702,\n  \"ðŁļ\": 2730,\n  \"ðŁļ¨\": 12198,\n  \"ðŁļ¨</w>\": 6056,\n  \"ðŁļ¨ðŁļ¨\": 36487,\n  \"ðŁļ¨ðŁļ¨</w>\": 21440,\n  \"ðŁļ¨ðŁļ¨ðŁļ¨</w>\": 41515,\n  \"ðŁļ©</w>\": 44514,\n  \"ðŁļ«</w>\": 35291,\n  \"ðŁļ²</w>\": 37085,\n  \"ðŁļ´\": 30825,\n  \"ðŁļ¶\": 46060,\n  \"ðŁļĢ\": 22400,\n  \"ðŁļĢ</w>\": 13542,\n  \"ðŁļĢðŁļĢ\": 49033,\n  \"ðŁļĤ</w>\": 38949,\n  \"ðŁļĮ</w>\": 46891,\n  \"ðŁļĹ\": 33054,\n  \"ðŁļĹ</w>\": 22783,\n  \"ðŁļĺ</w>\": 35825,\n  \"ðŁļĻ</w>\": 48487,\n  \"ðŁĽ\": 11306,\n  \"ñ\": 173,\n  \"ñ</w>\": 429,\n  \"ò\": 174,\n  \"ò</w>\": 430,\n  \"ó\": 175,\n  \"ó</w>\": 431,\n  \"ô\": 176,\n  \"ô</w>\": 432,\n  \"õ\": 177,\n  \"õ</w>\": 433,\n  \"ö\": 178,\n  \"ö</w>\": 434,\n  \"÷\": 179,\n  \"÷</w>\": 435,\n  \"ø\": 180,\n  \"ø</w>\": 436,\n  \"ù\": 181,\n  \"ù</w>\": 437,\n  \"ú\": 182,\n  \"ú</w>\": 438,\n  \"û\": 183,\n  \"û</w>\": 439,\n  \"ü\": 184,\n  \"ü</w>\": 440,\n  \"ý\": 185,\n  \"ý</w>\": 441,\n  \"þ\": 186,\n  \"þ</w>\": 442,\n  \"ÿ\": 187,\n  \"ÿ</w>\": 443,\n  \"Ā\": 188,\n  \"Ā</w>\": 444,\n  \"ā\": 189,\n  \"ā</w>\": 445,\n  \"Ă\": 190,\n  \"Ă</w>\": 446,\n  \"ă\": 191,\n  \"ă</w>\": 447,\n  \"Ą\": 192,\n  \"Ą</w>\": 448,\n  \"ą\": 193,\n  \"ą</w>\": 449,\n  \"Ć\": 194,\n  \"Ć</w>\": 450,\n  \"ć\": 195,\n  \"ć</w>\": 451,\n  \"Ĉ\": 196,\n  \"Ĉ</w>\": 452,\n  \"ĉ\": 197,\n  \"ĉ</w>\": 453,\n  \"Ċ\": 198,\n  \"Ċ</w>\": 454,\n  \"ċ\": 199,\n  \"ċ</w>\": 455,\n  \"Č\": 200,\n  \"Č</w>\": 456,\n  \"č\": 201,\n  \"č</w>\": 457,\n  \"Ď\": 202,\n  \"Ď</w>\": 458,\n  \"ď\": 203,\n  \"ď</w>\": 459,\n  \"Đ\": 204,\n  \"Đ</w>\": 460,\n  \"đ\": 205,\n  \"đ</w>\": 461,\n  \"Ē\": 206,\n  \"Ē</w>\": 462,\n  \"ē\": 207,\n  \"ē</w>\": 463,\n  \"Ĕ\": 208,\n  \"Ĕ</w>\": 464,\n  \"ĕ\": 209,\n  \"ĕ</w>\": 465,\n  \"Ė\": 210,\n  \"Ė</w>\": 466,\n  \"ė\": 211,\n  \"ė</w>\": 467,\n  \"Ę\": 212,\n  \"Ę</w>\": 468,\n  \"ę\": 213,\n  \"ę</w>\": 469,\n  \"Ě\": 214,\n  \"Ě</w>\": 470,\n  \"ě\": 215,\n  \"ě</w>\": 471,\n  \"Ĝ\": 216,\n  \"Ĝ</w>\": 472,\n  \"ĝ\": 217,\n  \"ĝ</w>\": 473,\n  \"Ğ\": 218,\n  \"Ğ</w>\": 474,\n  \"ğ\": 219,\n  \"ğ</w>\": 475,\n  \"Ġ\": 220,\n  \"Ġ</w>\": 476,\n  \"ġ\": 221,\n  \"ġ</w>\": 477,\n  \"Ģ\": 222,\n  \"Ģ</w>\": 478,\n  \"Ģï¸ı\": 9668,\n  \"Ģï¸ı</w>\": 5511,\n  \"ģ\": 223,\n  \"ģ</w>\": 479,\n  \"ģà¸\": 15016,\n  \"Ĥ\": 224,\n  \"Ĥ</w>\": 480,\n  \"Ĥâĸ\": 29036,\n  \"ĤâĸĤâĸ\": 30832,\n  \"ĥ\": 225,\n  \"ĥ</w>\": 481,\n  \"Ħ\": 226,\n  \"Ħ</w>\": 482,\n  \"Ħà¸\": 20537,\n  \"Ħë\": 34462,\n  \"Ħëĭ\": 25170,\n  \"ħ\": 227,\n  \"ħ</w>\": 483,\n  \"ħï¸ı</w>\": 33950,\n  \"Ĩ\": 228,\n  \"Ĩ</w>\": 484,\n  \"ĩ\": 229,\n  \"ĩ</w>\": 485,\n  \"Ī\": 230,\n  \"Ī</w>\": 486,\n  \"ī\": 231,\n  \"ī</w>\": 487,\n  \"īï¸ı</w>\": 37463,\n  \"Ĭ\": 232,\n  \"Ĭ</w>\": 488,\n  \"Ĭãģ\": 30294,\n  \"ĭ\": 233,\n  \"ĭ</w>\": 489,\n  \"ĭãģ\": 36218,\n  \"ĭãĤ\": 45737,\n  \"Į\": 234,\n  \"Į</w>\": 490,\n  \"ĮãĤĬãģ\": 45969,\n  \"ĮãĤĬãģŁãģĦ</w>\": 47021,\n  \"Įë\": 17003,\n  \"į\": 235,\n  \"į</w>\": 491,\n  \"İ\": 236,\n  \"İ</w>\": 492,\n  \"ı\": 237,\n  \"ı</w>\": 493,\n  \"Ĳ\": 238,\n  \"Ĳ</w>\": 494,\n  \"ĳ\": 239,\n  \"ĳ</w>\": 495,\n  \"Ĵ\": 240,\n  \"Ĵ</w>\": 496,\n  \"ĵ\": 241,\n  \"ĵ</w>\": 497,\n  \"Ķ\": 242,\n  \"Ķ</w>\": 498,\n  \"Ķë\": 37978,\n  \"Ķï¸ı\": 24395,\n  \"Ķï¸ı</w>\": 7443,\n  \"ķ\": 243,\n  \"ķ</w>\": 499,\n  \"ķãĤ\": 26609,\n  \"ķï¸ı</w>\": 44853,\n  \"ĸ\": 244,\n  \"ĸ</w>\": 500,\n  \"ĸï¸ı</w>\": 28877,\n  \"Ĺ\": 245,\n  \"Ĺ</w>\": 501,\n  \"ĺ\": 246,\n  \"ĺ</w>\": 502,\n  \"Ļ\": 247,\n  \"Ļ</w>\": 503,\n  \"ļ\": 248,\n  \"ļ</w>\": 504,\n  \"Ľ\": 249,\n  \"Ľ</w>\": 505,\n  \"ľ\": 250,\n  \"ľ</w>\": 506,\n  \"ľë\": 39810,\n  \"Ŀ\": 251,\n  \"Ŀ</w>\": 507,\n  \"ŀ\": 252,\n  \"ŀ</w>\": 508,\n  \"Ł\": 253,\n  \"Ł</w>\": 509,\n  \"ŁãģĦ</w>\": 46023,\n  \"ł\": 254,\n  \"ł</w>\": 510,\n  \"łï¸ı\": 27899,\n  \"łï¸ı</w>\": 12715,\n  \"łĪ\": 43364,\n  \"Ń\": 255,\n  \"Ń</w>\": 511\n}\n"
  },
  {
    "path": "configs/sd15/unet/config.json",
    "content": "{\n  \"_class_name\": \"UNet2DConditionModel\",\n  \"_diffusers_version\": \"0.6.0\",\n  \"act_fn\": \"silu\",\n  \"attention_head_dim\": 8,\n  \"block_out_channels\": [\n    320,\n    640,\n    1280,\n    1280\n  ],\n  \"center_input_sample\": false,\n  \"cross_attention_dim\": 768,\n  \"down_block_types\": [\n    \"CrossAttnDownBlock2D\",\n    \"CrossAttnDownBlock2D\",\n    \"CrossAttnDownBlock2D\",\n    \"DownBlock2D\"\n  ],\n  \"downsample_padding\": 1,\n  \"flip_sin_to_cos\": true,\n  \"freq_shift\": 0,\n  \"in_channels\": 4,\n  \"layers_per_block\": 2,\n  \"mid_block_scale_factor\": 1,\n  \"norm_eps\": 1e-05,\n  \"norm_num_groups\": 32,\n  \"out_channels\": 4,\n  \"sample_size\": 64,\n  \"up_block_types\": [\n    \"UpBlock2D\",\n    \"CrossAttnUpBlock2D\",\n    \"CrossAttnUpBlock2D\",\n    \"CrossAttnUpBlock2D\"\n  ]\n}\n"
  },
  {
    "path": "configs/sd15/vae/config.json",
    "content": "{\n  \"_class_name\": \"AutoencoderKL\",\n  \"_diffusers_version\": \"0.6.0\",\n  \"act_fn\": \"silu\",\n  \"block_out_channels\": [\n    128,\n    256,\n    512,\n    512\n  ],\n  \"down_block_types\": [\n    \"DownEncoderBlock2D\",\n    \"DownEncoderBlock2D\",\n    \"DownEncoderBlock2D\",\n    \"DownEncoderBlock2D\"\n  ],\n  \"force_upcast\": false,\n  \"in_channels\": 3,\n  \"latent_channels\": 4,\n  \"layers_per_block\": 2,\n  \"norm_num_groups\": 32,\n  \"out_channels\": 3,\n  \"sample_size\": 512,\n  \"up_block_types\": [\n    \"UpDecoderBlock2D\",\n    \"UpDecoderBlock2D\",\n    \"UpDecoderBlock2D\",\n    \"UpDecoderBlock2D\"\n  ]\n}\n"
  },
  {
    "path": "configs/sd3/model_index.json",
    "content": "{\n  \"_class_name\": \"StableDiffusion3Pipeline\",\n  \"_diffusers_version\": \"0.29.0.dev0\",\n  \"_name_or_path\": \"stabilityai/stable-diffusion-3-medium\",\n  \"scheduler\": [\n    \"diffusers\",\n    \"FlowMatchEulerDiscreteScheduler\"\n  ],\n  \"text_encoder\": [\n    \"transformers\",\n    \"CLIPTextModelWithProjection\"\n  ],\n  \"text_encoder_2\": [\n    \"transformers\",\n    \"CLIPTextModelWithProjection\"\n  ],\n  \"text_encoder_3\": [\n    \"transformers\",\n    \"T5EncoderModel\"\n  ],\n  \"tokenizer\": [\n    \"transformers\",\n    \"CLIPTokenizer\"\n  ],\n  \"tokenizer_2\": [\n    \"transformers\",\n    \"CLIPTokenizer\"\n  ],\n  \"tokenizer_3\": [\n    \"transformers\",\n    \"T5TokenizerFast\"\n  ],\n  \"transformer\": [\n    \"diffusers\",\n    \"SD3Transformer2DModel\"\n  ],\n  \"vae\": [\n    \"diffusers\",\n    \"AutoencoderKL\"\n  ]\n}\n"
  },
  {
    "path": "configs/sd3/scheduler/scheduler_config.json",
    "content": "{\n  \"_class_name\": \"FlowMatchEulerDiscreteScheduler\",\n  \"_diffusers_version\": \"0.29.0.dev0\",\n  \"num_train_timesteps\": 1000,\n  \"shift\": 3.0\n}\n"
  },
  {
    "path": "configs/sd3/text_encoder/config.json",
    "content": "{\n  \"_name_or_path\": \"/raid/.cache/huggingface/models--stabilityai--stable-diffusion-3-medium/snapshots/84a9ff37a0a30f7252e21daae69cfd0134198d27/text_encoder\",\n  \"architectures\": [\n    \"CLIPTextModelWithProjection\"\n  ],\n  \"attention_dropout\": 0.0,\n  \"bos_token_id\": 0,\n  \"dropout\": 0.0,\n  \"eos_token_id\": 2,\n  \"hidden_act\": \"quick_gelu\",\n  \"hidden_size\": 768,\n  \"initializer_factor\": 1.0,\n  \"initializer_range\": 0.02,\n  \"intermediate_size\": 3072,\n  \"layer_norm_eps\": 1e-05,\n  \"max_position_embeddings\": 77,\n  \"model_type\": \"clip_text_model\",\n  \"num_attention_heads\": 12,\n  \"num_hidden_layers\": 12,\n  \"pad_token_id\": 1,\n  \"projection_dim\": 768,\n  \"torch_dtype\": \"float32\",\n  \"transformers_version\": \"4.41.0.dev0\",\n  \"vocab_size\": 49408\n}\n"
  },
  {
    "path": "configs/sd3/text_encoder_2/config.json",
    "content": "{\n  \"_name_or_path\": \"/raid/.cache/huggingface/models--stabilityai--stable-diffusion-3-medium/snapshots/84a9ff37a0a30f7252e21daae69cfd0134198d27/text_encoder_2\",\n  \"architectures\": [\n    \"CLIPTextModelWithProjection\"\n  ],\n  \"attention_dropout\": 0.0,\n  \"bos_token_id\": 0,\n  \"dropout\": 0.0,\n  \"eos_token_id\": 2,\n  \"hidden_act\": \"gelu\",\n  \"hidden_size\": 1280,\n  \"initializer_factor\": 1.0,\n  \"initializer_range\": 0.02,\n  \"intermediate_size\": 5120,\n  \"layer_norm_eps\": 1e-05,\n  \"max_position_embeddings\": 77,\n  \"model_type\": \"clip_text_model\",\n  \"num_attention_heads\": 20,\n  \"num_hidden_layers\": 32,\n  \"pad_token_id\": 1,\n  \"projection_dim\": 1280,\n  \"torch_dtype\": \"float32\",\n  \"transformers_version\": \"4.41.0.dev0\",\n  \"vocab_size\": 49408\n}\n"
  },
  {
    "path": "configs/sd3/text_encoder_3/config.json",
    "content": "{\n  \"_name_or_path\": \"/raid/.cache/huggingface/models--stabilityai--stable-diffusion-3-medium/snapshots/84a9ff37a0a30f7252e21daae69cfd0134198d27/text_encoder_3\",\n  \"architectures\": [\n    \"T5EncoderModel\"\n  ],\n  \"classifier_dropout\": 0.0,\n  \"d_ff\": 10240,\n  \"d_kv\": 64,\n  \"d_model\": 4096,\n  \"decoder_start_token_id\": 0,\n  \"dense_act_fn\": \"gelu_new\",\n  \"dropout_rate\": 0.1,\n  \"eos_token_id\": 1,\n  \"feed_forward_proj\": \"gated-gelu\",\n  \"initializer_factor\": 1.0,\n  \"is_encoder_decoder\": true,\n  \"is_gated_act\": true,\n  \"layer_norm_epsilon\": 1e-06,\n  \"model_type\": \"t5\",\n  \"num_decoder_layers\": 24,\n  \"num_heads\": 64,\n  \"num_layers\": 24,\n  \"output_past\": true,\n  \"pad_token_id\": 0,\n  \"relative_attention_max_distance\": 128,\n  \"relative_attention_num_buckets\": 32,\n  \"tie_word_embeddings\": false,\n  \"torch_dtype\": \"float32\",\n  \"transformers_version\": \"4.41.0.dev0\",\n  \"use_cache\": true,\n  \"vocab_size\": 32128\n}\n"
  },
  {
    "path": "configs/sd3/tokenizer/merges.txt",
    "content": "#version: 0.2\ni n\nt h\na n\nr e\na r\ne r\nth e</w>\nin g</w>\no u\no n\ns t\no r\ne n\no n</w>\na l\na t\ne r</w>\ni t\ni n</w>\nt o</w>\nr o\ni s</w>\nl e\ni c\na t</w>\nan d</w>\ne d</w>\no f</w>\nc h\no r</w>\ne s</w>\ni l\ne l\ns t</w>\na c\no m\na m\nl o\na n</w>\na y</w>\ns h\nr i\nl i\nt i\nf or</w>\nn e\nð Ł\nr a\nh a\nd e\no l\nv e</w>\ns i\nu r\na l</w>\ns e\n' s</w>\nu n\nd i\nb e\nl a\nw h\no o\nd ay</w>\ne n</w>\nm a\nn o\nl e</w>\nt o\nou r</w>\ni r\ng h\nw it\ni t</w>\ny o\na s\ns p\nth is</w>\nt s</w>\nat i\nyo u</w>\nwit h</w>\na d\ni s\na b\nl y</w>\nw e\nth e\nt e\na s</w>\na g\nv i\np p\ns u\nh o\nm y</w>\n. .\nb u\nc om\ns e</w>\ner s</w>\nm e\nm e</w>\nal l</w>\nc on\nm o\nk e</w>\ng e\nou t</w>\nen t</w>\nc o\nf e\nv er\na r</w>\nf ro\na u\np o\nc e</w>\ngh t</w>\nar e</w>\ns s</w>\nfro m</w>\nc h</w>\nt r\nou n\non e</w>\nb y</w>\nd o\nt h</w>\nw or\ner e</w>\nk e\np ro\nf or\nd s</w>\nb o\nt a\nw e</w>\ng o\nh e\nt er</w>\nin g\nd e</w>\nb e</w>\nati on</w>\nm or\na y\ne x\nil l</w>\np e\nk s</w>\ns c\nl u\nf u\nq u\nv er</w>\nðŁ ĺ\nj u\nm u\nat e</w>\nan d\nv e\nk ing</w>\nm ar\no p\nh i\n.. .</w>\np re\na d</w>\nr u\nth at</w>\nj o\no f\nc e\nne w</w>\na m</w>\na p\ng re\ns s\nd u\nno w</w>\ny e\nt ing</w>\ny our</w>\nit y</w>\nn i\nc i\np ar\ng u\nf i\na f\np er\nt er\nu p</w>\ns o</w>\ng i\non s</w>\ng r\ng e</w>\nb r\np l\n' t</w>\nm i\nin e</w>\nwe e\nb i\nu s</w>\nsh o\nha ve</w>\nto day</w>\na v\nm an\nen t\nac k</w>\nur e</w>\nou r\nâ Ģ\nc u\nl d</w>\nlo o\ni m\nic e</w>\ns om\nf in\nre d</w>\nre n\noo d</w>\nw as</w>\nti on</w>\np i\ni r</w>\nth er</w>\nt y</w>\np h\nar d</w>\ne c\n! !</w>\nm on\nmor e</w>\nw ill</w>\nt ra\nc an</w>\nc ol\np u\nt e</w>\nw n</w>\nm b\ns o\nit i\nju st</w>\nn ing</w>\nh ere</w>\nt u\np a\np r\nbu t</w>\nwh at</w>\nal ly</w>\nf ir\nm in\nc a\nan t</w>\ns a\nt ed</w>\ne v\nm ent</w>\nf a\nge t</w>\nam e</w>\nab out</w>\ng ra\nno t</w>\nha pp\nay s</w>\nm an</w>\nh is</w>\nti me</w>\nli ke</w>\ng h</w>\nha s</w>\nth an\nlo ve</w>\nar t</w>\nst e\nd ing</w>\nh e</w>\nc re\nw s</w>\nw at\nd er</w>\nit e</w>\ns er\nac e</w>\nag e</w>\nen d</w>\nst r\na w\nst or\nr e</w>\nc ar\nel l</w>\nal l\np s</w>\nf ri\np ho\np or\nd o</w>\na k\nw i\nf re\nwh o</w>\nsh i\nb oo\ns on</w>\nel l\nwh en</w>\nil l\nho w</w>\ngre at</w>\nw in\ne l</w>\nb l\ns si\nal i\nsom e</w>\nðŁ Ĵ\nt on\nd er\nle s</w>\np la\nï ¸\ne d\ns ch\nh u\non g</w>\nd on</w>\nk i\ns h</w>\nan n\nc or\n. .</w>\noun d</w>\na z\nin e\nar y</w>\nfu l</w>\nst u\nou ld</w>\nst i\ng o</w>\nse e</w>\nab le</w>\nar s</w>\nl l</w>\nm is\nb er\nc k</w>\nw a\nen ts</w>\nn o</w>\nsi g\nf e</w>\nfir st</w>\ne t</w>\nsp e\nac k\ni f</w>\nou s</w>\n' m</w>\nst er</w>\na pp\nan g\nan ce</w>\nan s</w>\ng ood</w>\nb re\ne ver\nthe y</w>\nt ic\ncom e</w>\nof f\nb ack</w>\nas e</w>\ning s</w>\nol d</w>\ni ght</w>\nf o\nh er</w>\nhapp y</w>\np ic\nit s</w>\nv ing</w>\nu s\nm at\nh om\nd y</w>\ne m\ns k\ny ing</w>\nthe ir</w>\nle d</w>\nr y</w>\nu l\nh ar\nc k\nt on</w>\non al</w>\nh el\nr ic\nb ir\nvi e\nw ay</w>\nt ri\nd a\np le\nb ro\nst o\noo l</w>\nni ght</w>\ntr u\nb a\nre ad\nre s</w>\nye ar</w>\nf r\nt or\nal s</w>\nc oun\nc la\nt ure</w>\nv el\nat ed</w>\nle c\nen d\nth ing</w>\nv o\nic i\nbe st</w>\nc an\nwor k</w>\nla st</w>\naf ter</w>\nen ce</w>\np ri\np e</w>\ne s\ni l</w>\nâĢ ¦</w>\nd re\ny s</w>\no ver</w>\ni es</w>\nðŁ ĳ\ncom m\nt w\nin k</w>\ns un\nc l\nli fe</w>\nt t\na ch\nl and</w>\ns y\nt re\nt al\np ol\ns m\ndu c\ns al\nf t</w>\n' re</w>\nch e\nw ar\nt ur\nati ons</w>\nac h</w>\nm s</w>\nil e</w>\np m</w>\nou gh</w>\nat e\nst ar\nwee k</w>\n! !!</w>\nc lu\nth ere</w>\nn er</w>\nt om\ns el\nï¸ ı</w>\nwor ld</w>\nv es</w>\nc am\ngo t</w>\nin ter\nof f</w>\nu m</w>\nton ight</w>\no ther</w>\nh ou\nloo k</w>\nj e\ni d</w>\nsi on</w>\nbe au\nat t\nel i\nor t</w>\nre c\nf f\nst er\nsu pp\ng en\nbe en</w>\nil y</w>\nte am</w>\nm m\ni c</w>\npe op\nit t\nat s</w>\non ly</w>\nmb er</w>\nen g\nb ri\nm p\nk now</w>\nb ur\nb ar\nin s</w>\nlo w</w>\nsh e</w>\nro w</w>\nâ Ŀ\nt ro\npeop le</w>\nvi a</w>\nlo w\nag a\nbe t\nx t</w>\nf ac\nch ar\ne ar\nw al\ns en\nf am\nb le</w>\nn ati\nis h</w>\nn or\ng ame</w>\nli ve</w>\ns co\nle y</w>\nd on\nic k</w>\nb all</w>\nver y</w>\nthe se</w>\np an\ni a</w>\nat ing</w>\nc r\na re\ng ir\nma ke</w>\nst re\nsho w</w>\n. \"</w>\nf l\nu p\nd r\nthan ks</w>\nil li\nw om\nst s</w>\ni g\ns ur\never y\nc ur\nvie w</w>\nle t</w>\nin to</w>\nmo st</w>\nn a\nin di\ng ar\nha d</w>\ns ou\nv ed</w>\nan t\niti on</w>\nma de</w>\nf ol\nun i\nit ed</w>\nðŁ ı\nic al</w>\nth r\nread y</w>\nch ec\nd ra\nk es</w>\nboo k</w>\ne p</w>\nsi c</w>\nmor ning</w>\nne ws</w>\nc au\nc t</w>\nw ell</w>\nan c\npho to</w>\nth an</w>\nor s</w>\nbir th\ng g\nou t\nne xt</w>\nsom e\nen ing</w>\nstor y</w>\nch ri\ndo wn</w>\nhom e</w>\nf fe\nfre e</w>\nd a</w>\nb or\nf il\nci al</w>\nthan k</w>\nsi de</w>\nle ar\nqu e\nl ine</w>\nt en\nat es</w>\nye ars</w>\nm y\npho to\nbeau ti\nri ght</w>\nn u\nfor m\nshi p</w>\nb an\nth er\nd ays</w>\ng am\nas on</w>\ng y</w>\nðŁ İ\nbirth day</w>\nse t</w>\nic k\ne t\nst ill</w>\ncom ing</w>\nta ke</w>\nðŁ ĩ\nb b\ns ol\ns on\nd en\ne p\nmu sic</w>\nthe m</w>\nde n</w>\nwh y</w>\nf oo\nc ra\nam az\nw n\nh ol\nt ting</w>\nw r\nu e</w>\nma g\nc ro\nl an\nc lo\nb ra\na k</w>\ns ing</w>\nc al\nre ad</w>\n' ve</w>\njo h\nb ab\nd ri\nb lo\nbi g</w>\ner ic\nin t</w>\nt or</w>\ntr y</w>\nl a</w>\nle g\nhou se</w>\nm ic\nv al\nbeauti ful</w>\nl itt\nchec k</w>\nne w\nver s\ns w\nar i\npla y\nh er\nâĢ ĵ</w>\nw in</w>\nm a</w>\ncon gr\nsch ool</w>\nf un\n. @</w>\nhe al\nic h</w>\nd el\nwh ere</w>\nl on\nke t</w>\ntw o</w>\nmu ch</w>\nwat ch</w>\nv en\nd ed</w>\na st</w>\nk ed</w>\nb as\ngo ing</w>\nm p</w>\ne ver</w>\nw ays</w>\nro o\nde sig\nl y\ns ed</w>\nto p</w>\nl in\nch an\nto o</w>\nit ing</w>\nd ent</w>\ngh ts</w>\nt y\nsp o\nne ed</w>\nb lu\nin st\nbe ing</w>\nâĿ ¤\nw el\nl s</w>\nhi m</w>\nm ay</w>\nst ing</w>\nn a</w>\nel y</w>\nlitt le</w>\ng a\nn at\ntom or\nm c\nh on\nw ant</w>\na ir\npi c</w>\nam eric\np er</w>\nle ss</w>\nwee k\nve l</w>\na h</w>\nc ap\nch am\ng er\nti m\ntomor row</w>\nne ss</w>\nst ate</w>\nh al\nser v\nz e</w>\no s</w>\np at\nv is\nex c\ns in\nf f</w>\nc ity</w>\nc en\nan y\nb el\nsu mm\nt in\nw ould</w>\nloo king</w>\nk o\nce le\nfam ily</w>\nm er\npo w\nhel p</w>\nbu s\nc o</w>\nc le\nsel f</w>\nen s</w>\nic s</w>\nth o\nan i\nch o\nle ad\nb s</w>\nt wee\nth ink</w>\nfor e</w>\nch il\nvi de\ndi d</w>\nal e</w>\nch i\nv il\nen ds</w>\nw ing</w>\np as\n' ll</w>\nv ol\ns a</w>\ng s</w>\nman y</w>\nj ec\nbe fore</w>\ngra ph\nn y</w>\nur ing</w>\nw il\nd d\nbu il\nf av\nst ed</w>\ntr an\nl ing</w>\nou d</w>\nd ge</w>\nfi el\nnati onal</w>\nst a\nc er\nw ere</w>\nin a</w>\nse ason</w>\nc ou\nn ed</w>\namaz ing</w>\nti ons</w>\ncele br\nn s</w>\na th\nhe ad</w>\ns day</w>\nd ar\nlo c\nv in\nan other</w>\ng oo\ns at\nn y\njo in</w>\npre s\ns es</w>\ns ing\nan a</w>\nin ing</w>\n.. ..</w>\nc our\nï¸ ı\nac t</w>\ncau se</w>\nli ght</w>\nam s</w>\nt a</w>\nb al\nf c</w>\nhi gh</w>\noff ici\nt t</w>\nchri st\nd ic\nd ay\nra l</w>\nh or\n: )</w>\nvi si\nn am\no b\nma s</w>\ngh t\nre ally</w>\nt un\nfin d</w>\nthr ough</w>\npor t</w>\nu t\nti ve</w>\nst y\nn e</w>\nor e</w>\nðŁĺ Ĥ\nsupp ort</w>\nne ver</w>\nev en</w>\nðŁ Ķ\nh a</w>\ny a</w>\nl d\nu k</w>\nr an\nj am\nwi th\nme di\nd es</w>\nne y</w>\nch ing</w>\nal e\nh y\nk in\n! !\nd y\npl ace</w>\nal so</w>\nb le\nwh ich</w>\nbl ack</w>\nb li\ns ay</w>\npar k</w>\npl ay</w>\nir e</w>\nvide o</w>\nweek end</w>\na il\nke y</w>\np t</w>\nw ard</w>\nfri day</w>\nd in\nine ss</w>\ng ro\nb en\nal ways</w>\nt ball</w>\nag o</w>\nm il\nc y\npro duc\ndi sc\nun der\nple ase</w>\nsp or\nfu ll</w>\ne y</w>\nðŁ Ļ\nis e</w>\niti es</w>\nc at\nk no\nu se</w>\nfo re\nk er</w>\nar t\nhi gh\nop en</w>\ns an\ne f\nour s</w>\nsh ed</w>\nst ri\nd ro\naga in</w>\ni m</w>\nðŁ ĵ\nen jo\nfu n</w>\nge tting</w>\np en\ng er</w>\nc li\nan y</w>\never y</w>\ne u\nwom en</w>\nâ ľ\ne st</w>\nc ould</w>\nr y\n\" @</w>\nth ou\nsh a\ncomm un\nb er</w>\nd ents</w>\ndi s\nwh ile</w>\naw ay</w>\ndi o</w>\nh am\ng la\nd ate</w>\nk a</w>\nmis s</w>\nun ch</w>\nw on\nin f\nroo m</w>\ng a</w>\nre al</w>\nex per\ndi rec\nsh ould</w>\nsp r\ng ol\nl ong</w>\nbet ter</w>\nor i\ne y\ni ence</w>\nil s</w>\nz z\nh an\nf ound</w>\nv s</w>\nâ Ļ\npo st</w>\nti c</w>\npar t</w>\nm en\nren ce</w>\nce ss</w>\nv ic\ns il\nsho p</w>\nðŁĺ Ĥ</w>\nf ood</w>\nv al</w>\nsti c</w>\ny ou\ns ays</w>\ne lec\nst ar</w>\no c\nl and\ni d\nc tion</w>\nfiel d</w>\ns of\nst art</w>\nwat er</w>\nfri ends</w>\non es</w>\nðŁ Į\nf la\nf ar\nwh ite</w>\npar ty</w>\nin st</w>\ngr ou\nt v</w>\nevery one</w>\nm ent\nj a\nch a\npr in\nan ts</w>\nd uring</w>\nl at\nl ar\nwe st</w>\nth en</w>\nk a\ny oun\nin sp\nin te\nwe en</w>\nvisi t</w>\naga inst</w>\nre le\nhe ad\nc es</w>\nto wn</w>\nloo ks</w>\nth re\nre gi\nren t</w>\npro jec\ngir l</w>\nse ar\nw o\nm om\nc ar</w>\nh un\npu bli\nd i</w>\np le</w>\nc all</w>\nc ri\nu m\nfor d</w>\nper fe\nfri end</w>\nh ard</w>\nssi on</w>\nte st</w>\npla ying</w>\nar ound</w>\nbe cause</w>\nke ts</w>\nme et</w>\nsat ur\nar ti\nwor k\nj un\nv en</w>\nr un\nme mber</w>\npor t\nsu per\nt wit\ns am\nel s</w>\nt ly</w>\nad v\nati ve</w>\nat h</w>\ns ure</w>\nav ail\nla r</w>\ns qu\nar ds</w>\nev ent</w>\nm en</w>\nl l\no ver\nlo gy</w>\nit al</w>\ntim es</w>\nm al\nb ack\nc oo\nma king</w>\nst ru\nâ ģ\nit u\nsh ar\ng an</w>\nc as\ns n\nsumm er</w>\npic ture</w>\nf an\nh in\nchrist mas</w>\nc y</w>\npr oud</w>\ncham pi\ndesig n</w>\npp ing</w>\nho pe</w>\nc a</w>\navail able</w>\nma y\nwe d\nphoto graph\nspe cial</w>\nsal e</w>\nsto p</w>\ner y</w>\na we\nal ity</w>\nhi story</w>\nam a</w>\npre si\nb ru\nwor king</w>\nd one</w>\nd r</w>\nk en</w>\nfe at\nw ood</w>\nate st</w>\nsun day</w>\nmo vi\nvel y</w>\ns le\nf ace</w>\nsp ec\nstu dents</w>\nb y\nha m</w>\nsp on\nbus iness</w>\nd at\ni e</w>\ni p\nso ci\ng lo\nh and\nre cor\nr s</w>\nme e\nke ep</w>\np ur\nheal th</w>\nsh e\ncom ple\ngo d</w>\nda vi\ncol lec\nli st\nr a</w>\nclu b</w>\nt ers</w>\nin clu\nth ings</w>\npl an\nâ ĺ\njoh n</w>\nsh ing</w>\nat ul\nso on</w>\nblu e</w>\ng or\nsatur day</w>\nw on</w>\ncongr atul\nse e\nâĿ¤ ï¸ı</w>\ntho se</w>\nðŁĺ į</w>\nfin al</w>\nd ou\nit h</w>\no wn</w>\nro ad</w>\nt our</w>\na st\nindi a</w>\nti l</w>\nn d</w>\nf er\nfav or\nsu l\nlear n</w>\nfir e</w>\nju st\ngrou p</w>\na h\nr ac\nbo dy</w>\nu r</w>\nc are</w>\nà ¸\np lo\no h</w>\npo s\ngi ve</w>\nte ch\nsu b\nc ent\ner ing</w>\ny m\nil ity</w>\nf ic\nlon don</w>\nv ir\ngu ys</w>\nb a</w>\nðŁ ¤\nbab y</w>\nsc re\nðŁĺ į\ntru mp</w>\nun der</w>\nchan ge</w>\ni an</w>\ncol le\nss es</w>\nl er</w>\nss ed</w>\nn ice</w>\nann oun\npow er</w>\ns ar\na king</w>\nmin i\ns li\ns wee\nk ar\nfu l\nc ru\nac tion</w>\na ther</w>\n) .</w>\nst and\nde vel\na a\ng an\nle ft</w>\nlo l</w>\nre l\ntran s\nm ents</w>\nin t\ne f</w>\nman ag\ndi g\ngen er\ndo wn\np au\nti v\nk u\nth ur\nk en\nst on</w>\nf ans</w>\ntal k</w>\ntwee t</w>\nt oo\nsty le</w>\npro te\nse con\nfr on\nawe some</w>\ng l\np al\nne t\ns or\nla u\ng on\nsin ce</w>\nt ty</w>\nser ies</w>\nme mor\nb eli\nfil m</w>\ndi d\ndi es</w>\no t\ncongratul ations</w>\np ra\ne ve</w>\nw oo\noffici al</w>\nsu c\nin cre\nb on\npar t\npp ed</w>\ncla ss</w>\nsi ve</w>\nbo y</w>\ncu l\nperfe ct</w>\nt ou\nd am\nwel come</w>\nfoo tball</w>\nh i</w>\np ap\nwa it</w>\nad a</w>\ncongr ats</w>\nyoun g</w>\nexc ited</w>\nre ce\nj an\nv a</w>\nre d\nst ra\nmedi a</w>\n' d</w>\ndo es</w>\nle t\nmu l\nill s</w>\ngre en</w>\nm el\nto ge\nfu ture</w>\nye ster\nvers ity</w>\nfor m</w>\nta in</w>\ni de\nch es</w>\nki ds</w>\nqu i\nha ha\nde ta\nbi g\nfavor ite</w>\ngir ls</w>\ncon tin\ndo m</w>\nsear ch</w>\nu al</w>\na ir</w>\nd ers</w>\nmon th</w>\nc er</w>\nyester day</w>\ncommun ity</w>\nad e</w>\ndo g</w>\nvil le</w>\nic es</w>\nd eli\nsy ste\nru n</w>\nis m</w>\nhe art</w>\nc up</w>\nen ti\nfe w</w>\npresi dent</w>\ne ds</w>\nun til</w>\nfe sti\no k\nf lo\nsa id</w>\nol e</w>\nme d\ntra vel</w>\nÂ £</w>\nph one</w>\ntoge ther</w>\nfa st</w>\nlo t</w>\ngam es</w>\nsh ir\nbet ween</w>\ny es</w>\nth ers</w>\ndo ing</w>\nm ac\nat or</w>\nb and</w>\nfol low\nprojec t</w>\ndevel op\ndi ffe\ncon fe\nspe ci\nca st</w>\ny s\nbo ard</w>\nr d</w>\ni al</w>\nsh oo\nr am\nha ving</w>\nsh are</w>\nfol low</w>\non e\nn ame</w>\nm r</w>\npu t</w>\ndisc u\nor y</w>\nc ame</w>\nou s\ns ite</w>\ntwit ter</w>\nt b\nt it\nfin ally</w>\nz ed</w>\nsu per</w>\ncom pan\nus ing</w>\nall s</w>\nli st</w>\nr is</w>\nsho t</w>\ng al\nt ar\nde l</w>\njoh n\nâĢ Ķ</w>\nsome thing</w>\nra m</w>\ninte re\nwh e\nb it</w>\nðŁ į\nstre et</w>\noun d\na i\ntic kets</w>\nmovi e</w>\nre al\nk y\nta king</w>\no pp\nc c</w>\nl am\nm oun\nin ve\nbl ack\nus ed</w>\non line</w>\ny or\nloc al</w>\ngu e\nc ks</w>\no w\nge st</w>\nbo ys</w>\nilli on</w>\ncon t\nre ci\nin ed</w>\neu ro\nno w\nse en</w>\np h</w>\nte ach\nde f\nsou th</w>\nsu ch</w>\naw ard</w>\nmu st</w>\nis su\nca re\nfe el</w>\np lu\nl atest</w>\nspor ts</w>\nwe b\nte x\ne ment</w>\ns k</w>\nfi c</w>\nw an\nte ch</w>\no t</w>\nbo x</w>\nn er\nfre e\nt al</w>\na sh\nc ase</w>\nho t</w>\nwon der\nmee ting</w>\ner a</w>\nch all\nðŁ Ĳ\njo b</w>\nil i\nc ool</w>\nj our\nth s</w>\nm o</w>\nf el\ndi e</w>\nmic ha\ne le\nte am\nserv ice</w>\nst and</w>\nma kes</w>\np ing</w>\near ly</w>\ncom es</w>\ne k</w>\nho li\nv ers</w>\nag ue</w>\ns au\nthre e</w>\nmon day</w>\nfa shi\nsome one</w>\nth ro\nse a</w>\nb ad</w>\nsupp or\ntur n</w>\nur y</w>\nm ing</w>\nphotograph y</w>\nn ic\nmar k</w>\npre tty</w>\nss ing</w>\nwat ching</w>\nme mb\nar ri\ncoun ty</w>\nbe ach</w>\nfr an\ncen ter</w>\npol ice</w>\nb at\npubli c</w>\nt an\npre ss</w>\ns af\ns y</w>\nge ts</w>\nro y\nn ers</w>\ny our\nbu y</w>\nst ers</w>\nsho w\nas ed</w>\nchil dre\naf ric\nin es</w>\nsp ace</w>\nsc ri\nh all</w>\npa in\nar ing</w>\nhom e\nm ur\nheal th\nch ed</w>\ns and\nrece i\ngu y</w>\ne a\nameric an</w>\nre si\nchildre n</w>\n- -\ni ri\ning ton</w>\ncoun try</w>\nro ss</w>\nle n</w>\nann a</w>\nboo ks</w>\nb c</w>\ne ce</w>\nd om\nlo vely</w>\nk h\npe t\ng y\ng ri\nst age</w>\noff ice</w>\nro ck</w>\nm on</w>\nb ay</w>\nt able</w>\nsu n</w>\nm ed</w>\nth in\nl or\nf low\n( @</w>\nuni versity</w>\nstor e</w>\nfron t</w>\ngoo d\nz a</w>\nvo te</w>\nnor th</w>\nhe y</w>\nan im\nor der</w>\nmi d\nwith out</w>\na de\nre member</w>\nmar ket</w>\n? ?</w>\nmu s\ntra ining</w>\ne duc\nbu t\nco ver</w>\nst an\nsc en\nb la\nbre ak\nl ou\ns ame</w>\ng old</w>\na in</w>\no s\nbo th</w>\nl it\nver n\na i</w>\nal bu\np a</w>\nenjo y</w>\nbe g\nell ing</w>\nthur sday</w>\ninf o</w>\ns an</w>\nameric a</w>\nha ir</w>\nte l</w>\nmar ch</w>\ncon cer\ncolle ge</w>\nconfe rence</w>\nap p</w>\nh our</w>\nch ang\nâ ļ\ns our\nol s</w>\nwe ather</w>\nw ar</w>\np hi\nfesti val</w>\nsecon d</w>\ncu te</w>\npr ac\nen er\nstr y</w>\nle a\npol it\ns av\nse n</w>\no w</w>\nm i</w>\nne ar</w>\nou ght</w>\nz e\nco ffe\nw illi\nd an\nse y</w>\ndavi d</w>\ne se</w>\nf an</w>\nde ci\nthe at\nno v\nati on\ntr ac\nsc i\nre view</w>\nc el\ne m</w>\nu n</w>\nju ly</w>\nor ig\nti on\nd ru\nform er</w>\nst ay</w>\naf ter\nin v\ntoo k</w>\ndat a</w>\nb al</w>\ntu es\nd an</w>\nev ening</w>\nðŁĺĤ ðŁĺĤ\nd ol\nu res</w>\npro vi\nt s\ne st\nsig n</w>\nj ac\nu k\ns ong</w>\nye t</w>\nbo w\nin du\nj ap\nh oo\npo int</w>\nany one</w>\nz y</w>\ni st</w>\nh ur\nit al\nbuil ding</w>\nwom an</w>\nch ur\nj er\nper for\nco ach</w>\nle ague</w>\nce ss\nne t</w>\ni mag\nnati on\nbr it\nqu e</w>\naw ards</w>\nag es</w>\nwor ks</w>\nc ed</w>\nman ce</w>\nl ate</w>\nig n</w>\nmon ey</w>\ntru e</w>\ni i</w>\nt ell</w>\npl ac\np ac\nas y</w>\nwor ld\nbe hin\nim port\nread ing</w>\ngra m</w>\ngi ving</w>\nme t</w>\nh it</w>\nfor ward</w>\nst om\npres ent\njun e</w>\nso cial</w>\nno on</w>\nmar t\nhal f</w>\ns we\ngo vern\nk er\ndeta ils</w>\nli sh</w>\n_ _\nac y</w>\nsi a</w>\nber t</w>\nf all</w>\n! !!!</w>\n) ,</w>\nth i\nd iti\nsp ort</w>\nk ing\nf it\nst af\nc at</w>\nmu se\ncen tr\ny er</w>\ncon tro\nb loo\nwal k</w>\nac tu\ndid n</w>\nli m\nlear ning</w>\nre search</w>\nwed ne\nau th\nh ours</w>\nk y</w>\nf ar</w>\nh en\n.. ..\nit ch\nri l</w>\nstr ong</w>\nsk y</w>\nque sti\njam es</w>\nr on\nd g\nf ur\nc in\ndo es\napp ro\nmar ke\ntu res</w>\nful ly</w>\nch at</w>\nbehin d</w>\nte m\nfin i\nmis sion</w>\nb att\nfe el\nhe av\nevery thing</w>\nb ar</w>\nw ish</w>\npre mi\ni ma\nexper ience</w>\ne ach</w>\nre port</w>\nswee t</w>\ntic s</w>\nspr ing</w>\nre spon\nsyste m</w>\nvic tor\nl in</w>\nsa w</w>\nal ready</w>\ngh ter</w>\nf le\nã ĥ\nbr ing</w>\nalbu m</w>\n- -</w>\nell s</w>\nst an</w>\nto m</w>\ninter national</w>\nw ent</w>\nan ni\nmat ch</w>\npp er</w>\nst one</w>\nsm all</w>\nra in</w>\nfashi on</w>\nare a</w>\nv an\nag ram</w>\nk o</w>\nthou ght</w>\nwor th</w>\nv an</w>\nm er</w>\ncoffe e</w>\nit es</w>\ng n\narti st</w>\nc on</w>\nar ch\nc ir\nse cre\ngr ound</w>\nis o\nh and</w>\nco m</w>\nbri dge</w>\nh s</w>\nx i\nl ink</w>\npu l\nsp l\nr ace</w>\nf li\nri ver</w>\ng as</w>\ndi sco\nd al\nplay er</w>\nf it</w>\nphoto s</w>\nit y\no k</w>\nj or\ntr a</w>\nap ril</w>\nad s</w>\na di\nsol u\nbeau ty</w>\ndo or</w>\nme ss\nup date</w>\nali a</w>\nsch o\nen ed</w>\nmom ent</w>\nsco t\nsc ience</w>\ni or</w>\nti es</w>\nac ross</w>\nous ly</w>\nsh es</w>\ndoes n</w>\np age</w>\nwat er\nm illion</w>\ncla ssi\nl ic\nca st\nform ation</w>\nmicha el</w>\nell o</w>\ns mo\nin ts</w>\nvi sion</w>\nop ening</w>\nld n</w>\nau str\ntues day</w>\nwin ner</w>\npo ssi\nr ound</w>\nshir t</w>\ndi t</w>\nb o</w>\nu es</w>\nil led</w>\nal ong</w>\ntri p</w>\nstar ting</w>\nim pro\nk an\nper son</w>\nno t\nre co\nne eds</w>\nc le</w>\nli e</w>\nre st</w>\nr ing</w>\nwin ter</w>\nsi mp\nmo m</w>\nbe er</w>\nfac e\ntor s</w>\nus a</w>\ncollec tion</w>\nge or\nse ssion</w>\ntr ying</w>\nla s</w>\nla ke</w>\nj en\norig in\nstu dent</w>\nse cur\nv in</w>\npic s</w>\nex pe\ncom p\ngon na</w>\ne qu\nb ad\nle y\na u</w>\nmemb ers</w>\nbre ak</w>\nw all</w>\ngi c</w>\ndin ner</w>\nbu l\ninsp ir\nr i</w>\nmin d</w>\nic a</w>\nwin ning</w>\ntal king</w>\nt ren\ns is</w>\nt en</w>\nwonder ful</w>\ns now</w>\nhe ar</w>\nth om\nno thing</w>\ngu i\nst in\nblo g</w>\nfe st</w>\nb un\nle e</w>\nwar ds</w>\nch ance</w>\ndre ss</w>\nre n</w>\npau l</w>\np es</w>\ntech no\nru ssi\nc ard</w>\ne ast</w>\nmar i\nw ine</w>\nt i</w>\nla w</w>\nstr ic\nk i</w>\nap e</w>\nau gu\npro fe\nas h</w>\ncour se</w>\nma il</w>\nren tly</w>\nd un\nm un\nlo ve\nis land</w>\ndri ve</w>\ns l\nend ed</w>\nma in</w>\nlo st</w>\nnat ure</w>\nâĿ¤ ï¸ı\nch ic\nre por\np in\npr o</w>\nst ation</w>\nce p\nta kes</w>\ncompan y</w>\ngo es</w>\non d</w>\nma ch\nra dio</w>\nd ad</w>\nro ck\nj a</w>\np ay\nchampi on\ne e\nin de\ntt a</w>\nati c</w>\nt ab\nbeli eve</w>\nener gy</w>\nz i\nt at\nwor d</w>\non ce</w>\nre sul\ny l\nand re\nan o</w>\ninst agram</w>\nclo se</w>\nt am\ncu stom\nw a</w>\ncon om\nsho ws</w>\nli fe\nk in</w>\nro b\nt age</w>\nn ation</w>\nal most</w>\nlist en</w>\nsa ve</w>\nre li\nac e\nmar y</w>\ntre e</w>\nfor get</w>\nj ack\nwa iting</w>\ndirec tor</w>\nh ill</w>\nbor n</w>\nte mp\nf l</w>\nst e</w>\non a</w>\nsing le</w>\nwedne sday</w>\nun ited</w>\nin o</w>\n@ _</w>\nne l</w>\ncelebr ate</w>\nen ding</w>\nde al</w>\nj i</w>\ncan ada</w>\nhu ge</w>\ntr ack</w>\nâĢ ¢</w>\nf y</w>\nfan ta\nan g</w>\nyor k</w>\nrele ase</w>\np un\nep iso\nwor ds</w>\nt our\np ack\ni gh\nclassi c</w>\nperfor mance</w>\nke t\nafter noon</w>\nrecor d</w>\nwin s</w>\npro ble\nâĿ ¤</w>\nf our</w>\nb ed</w>\nban k</w>\nd ance</w>\ns la\ncal led</w>\nmi ght</w>\na p</w>\npa st</w>\nðŁ ļ\ndiffe rent</w>\nit e\ngi ft</w>\nssi ve</w>\nchur ch</w>\nc us</w>\npro gram</w>\nho tel</w>\nic e\nma d\nsecur ity</w>\nen ge</w>\nd c</w>\nen ough</w>\nst a</w>\ne ty</w>\nde ad</w>\ng un\nhe ar\nm ir\nhu man</w>\ngre ss</w>\noun ds</w>\npi ece</w>\nbre aking</w>\ngar den</w>\nfi ght</w>\nvie ws</w>\nf ish</w>\nstar ted</w>\nrun ning</w>\ngre en\nser i\ns m</w>\nas k</w>\nd or\nde ath</w>\ne conom\ner i\nir d</w>\ns er</w>\nl unch</w>\nâģ ¦\nbo x\nnat u\nba se\nb an</w>\nf al\nglo bal</w>\nwil d\nwo w</w>\nout side</w>\nmo ve</w>\nle ad</w>\nan al\nmuse um</w>\non g\nha w\npow er\nthan k\nb ac\nchar ac\ncam pa\ndig ital</w>\nr o</w>\nop er\nde v\nw ol\np ati\nf a</w>\nm ale</w>\npap er</w>\nill ing</w>\nc s</w>\nâ ĥ\neduc ation</w>\nta ken</w>\ne ffe\nm ou\ns ad\n\" .</w>\nbas ed</w>\nstaf f</w>\ninclu ding</w>\nli ving</w>\na c</w>\nch ina</w>\nmo b\nstor m</w>\nlu ck</w>\nph il\no o</w>\ny n\ntra vel\nk el\nti al</w>\npr ice</w>\nboo k\nimport ant</w>\nbi o\np ool</w>\nny c</w>\nf ab\nlo ad</w>\n? !</w>\nchall enge</w>\ncr y\nser ve</w>\nwe ar</w>\nbu s</w>\nta in\nnu mber</w>\nro r</w>\nk at\ni z\nth ough</w>\nho sp\nm m</w>\nfa ir</w>\nut es</w>\nho t\npo p</w>\nfi ed</w>\ncam p\ndevelop ment</w>\nli br\nc ali\nem s</w>\nâģ¦ @</w>\nb ol\nis ed</w>\nstand ing</w>\nmo del</w>\nit a</w>\ng le</w>\nbro wn</w>\nima ge</w>\nve red</w>\nfor ce</w>\no il</w>\npar tic\nsh u\nda ily</w>\nla w\nse c\ncla ss\ncam p</w>\nholi day</w>\ncl in\nk ers</w>\npres ent</w>\ngam e\nincre di\ner ship</w>\ninter view</w>\nb ill</w>\ndu e</w>\nand y</w>\nab o\nin nov\nke y\nac ade\np il\nmo der\nst ars</w>\nbr and</w>\nf er</w>\nwee ks</w>\ncon si\npr e</w>\nsa fe\nwr it\ndi um</w>\nla unch</w>\nmarke ting</w>\nann ual</w>\nas si\ncour t</w>\nla dy</w>\nc ted</w>\nand a</w>\nin side</w>\nchil d</w>\nopp or\nsm ith</w>\ncentr e</w>\ngu e</w>\nâģ ©</w>\nf ren\nst y</w>\nfor t</w>\nent ly</w>\nis n</w>\nke ep\nto ber</w>\non y</w>\nbo y\nal d</w>\ncol la\nde mo\nle vel</w>\ncom pet\nad o</w>\nb our\nfanta stic</w>\nm ate</w>\ns u</w>\nsou th\noppor tun\nvers ary</w>\nlat er</w>\nbu d\nface book</w>\nla un\nster n</w>\np it\n! \"</w>\nma j\ngr am\ntb t</w>\nfi re\nhapp y\na ks</w>\nwh ole</w>\nactu ally</w>\nill er</w>\nell a</w>\nlo ts</w>\nal ex\nan ge\nlan ds</w>\nðŁĺ Ń\nen ter\nr ou\nepiso de</w>\np ed</w>\nin ten\nsh ire</w>\nwh o\npl an</w>\nh o</w>\nca ke</w>\nwe st\nmag az\nfre sh</w>\nc c\nn ar\nch ris</w>\nwr iting</w>\nw er</w>\nn om\nl o</w>\nmi dd\ndre am</w>\no l</w>\nti onal</w>\nde b\n> ></w>\nbe come</w>\ns i</w>\ngr and</w>\nall ing</w>\nhi stor\nri de</w>\ni red</w>\nsaf e</w>\nque en</w>\nci l</w>\nin tro\nvi l</w>\nd ani\n.. .\nar tic\nst at\nsh ort</w>\nor ing</w>\nsel fi\nmis si\ndo c\nb it\ng all\nb om\ni re\nse lec\nd ition</w>\nðŁĶ ¥</w>\nfri end\nbe at</w>\ngh ting</w>\nðŁĺ Ĭ</w>\npe ace</w>\nex hi\nant a</w>\nab ility</w>\nil lu\nj on\nqu ality</w>\ntri bu\nm es</w>\nplay ers</w>\nfa ir\ncu t</w>\nc ab\nsuc cess</w>\nb i</w>\nsu s</w>\npro mo\nsch e\nan ge</w>\nic o</w>\ncomm it\ncat ch</w>\nill a</w>\nkin d</w>\nfeel ing</w>\nqu o\ns ay\nanni versary</w>\nspo t</w>\nmo ther</w>\nan e</w>\np end\nyour self</w>\nop s</w>\napp le</w>\nmin utes</w>\np o</w>\ngr and\nri es</w>\nha ha</w>\ncare er</w>\ned ition</w>\nde c\nric k</w>\nam i</w>\nconcer t</w>\niti ve</w>\nge ous</w>\nd ly</w>\nt te</w>\nadv ent\ni g</w>\nli ghts</w>\nak er</w>\nsk y\nâĥ £</w>\nr ay</w>\nfini shed</w>\nw ay\ns d\nac coun\nðŁĴ ķ</w>\nck y</w>\nch el\nlit er\npain ting</w>\nlo s</w>\nst un\ntechno logy</w>\nn as\nma r</w>\nb il\nafric a</w>\nki e</w>\ney es</w>\ngol f</w>\nplu s</w>\nni a</w>\nit ec\nserv ices</w>\nwed ding</w>\nkno wn</w>\nte le\n.. ...</w>\nstar ts</w>\npa ren\nw ants</w>\nati onal</w>\nmon ths</w>\nwin do\nfav our\ner t</w>\nmagaz ine</w>\nex clu\nre ve\nb c\norigin al</w>\ne ss\nn al</w>\nan ti\nst ro\nt ice</w>\nstu dy</w>\nà ¤\nv ac\nnation al\nfi ve</w>\nra in\nve ment</w>\nu te</w>\nver se</w>\nem er\nar my</w>\npossi ble</w>\ngue ss</w>\nval ley</w>\nther n</w>\ncro w\nm r\ncol or</w>\non to</w>\npic k</w>\ncle ar</w>\ndar k</w>\nt ac\nwan ted</w>\nit ting</w>\ncan cer</w>\ngovern ment</w>\ndi e\nri se</w>\nz ing</w>\ncol d</w>\nf oun\nstu dio</w>\nstr ation</w>\nbro ther</w>\na head</w>\nsh el\nmic ro\nic ally</w>\nd au\nsig ned</w>\nvi ol\na x\nas se\ni o\nw re\nspl ay</w>\nch ick\naugu st</w>\npl at\nti ps</w>\nsp i\nhu man\ne asy</w>\nlo gi\nmi ke</w>\ngro w\nag re\nw w\nsh ad\nmo tiv\nwi de</w>\ntur ns</w>\nom g</w>\nv ar\nde fin\nsu g\nj im\nðŁĶ ¥\nt d</w>\ncampa ign</w>\nnam ed</w>\nre tweet</w>\nco p\nt v\nle av\nk is\ndou ble</w>\ns mar\nissu e</w>\nvil la\nin formation</w>\nli es</w>\nsto ck</w>\nn t</w>\ndi stric\nsh or\nmi x\ner o\nse p\nme x\nsee ing</w>\nli ve\nre min\nco de</w>\ng ur\ns c</w>\nwil d</w>\nl un\nh ood</w>\nspo t\nfa ther</w>\nfore ver</w>\nup d\ntra f\nf ly</w>\nne ed\ngra du\ntra in</w>\nma ke\ns ab\nbe y\nsi ze</w>\nlead er</w>\ntal ks</w>\ne u</w>\nlo g\nfo x</w>\ngor geous</w>\nle ss\nle ts</w>\nsur pri\nmy self</w>\nno te</w>\nli ves</w>\nf ru\nlo ved</w>\nse ver\nde m\nj i\nso c\nh old</w>\ndo gs</w>\nn i</w>\nâ ŀ\nlea ve</w>\nair port</w>\nben ef\nex pl\nshi ps</w>\ncomple te</w>\nach i\ngre at\nvin tage</w>\nj ack</w>\nro c\nwoo d\npri v\noff er</w>\ney e</w>\nver sion</w>\nte a</w>\nco ach\noff ic\nw ell\ng en</w>\ns at</w>\nh h\nyou th</w>\no x\n? \"</w>\nm t</w>\nmi x</w>\ng g</w>\nd le</w>\nnatu ral</w>\nbuil d</w>\nbreak fast</w>\nthin king</w>\ntheat re</w>\nmo on</w>\nber g</w>\ngo als</w>\ngeor ge</w>\nen e\nexc ell\nil ing</w>\ntun e</w>\ny ed</w>\ng ate</w>\nm it\nnet work</w>\njo e</w>\nh ello</w>\nf b</w>\ntu be</w>\nwe aring</w>\nath le\nstru c\nhar d\ngla ss</w>\ng ers</w>\nthro w\ng es</w>\nb t\nindu stry</w>\nmanag ement</w>\nali st</w>\ngo al</w>\nstre am</w>\ny el\na vi\nici ous</w>\no thers</w>\ns ki\nchri sti\nbir d</w>\ne sc\nm in</w>\ntr o</w>\nl t</w>\nj an</w>\nim p\nri ghts</w>\nsh a</w>\nor gan\ncent ral</w>\nar a</w>\nro ll</w>\nfavour ite</w>\nche ster</w>\nel se</w>\np ay</w>\ncar s</w>\nm ine</w>\nste p</w>\nprac tice</w>\nmaj or</w>\nh ang\nðŁĺ ĺ</w>\nn on</w>\nv ari\neng ine\nvol un\ndi a</w>\ni led</w>\narch itec\np ink</w>\nd s\nth y</w>\nwa sh\nweb site</w>\nba g</w>\ncontro l</w>\nel li\nf ra\nan sw\nd ence</w>\ny u\nr on</w>\nol a</w>\ng in\ndr in\nli c</w>\ncou ple</w>\nsp ar\ng on</w>\ncre ate</w>\nc t\ncelebr ating</w>\nde ep</w>\ne at</w>\nte e</w>\nvo ice</w>\ndro p</w>\nvis it\nat ors</w>\nsta dium</w>\nf t\nw is\nro l\ngra de</w>\nfam il\npo ints</w>\nre pre\nw as\ntraf fic</w>\njap an</w>\nor g\nhon or</w>\ntex as</w>\nman u\nâĻ ¥</w>\nsafe ty</w>\nre r</w>\nb ag\nem plo\nrele ased</w>\nre gu\nak a</w>\nn av\nro le</w>\nsen ior</w>\nspec t</w>\ncro ss</w>\nlin es</w>\nbe st\np ack</w>\ns in</w>\nti e</w>\nmis sing</w>\nsun set</w>\nli ber\nis ing</w>\nj ay\nsk i</w>\nchampion ship</w>\nac tiv\nla dies</w>\nplay ed</w>\ny y\npu bl\nal o\npri de</w>\ns r\npa ki\nlu x\nsur vi\nck ed</w>\ne ts</w>\ncho col\naustr alia</w>\npar is</w>\nmi les</w>\nh at\nment al</w>\nal a</w>\nme an</w>\nmob ile</w>\nen a</w>\nin si\nf ound\nchi ef</w>\nt ag\nincredi ble</w>\nre turn</w>\nÃ ©\ngoo gle</w>\nfren ch</w>\ncre w</w>\nhal lo\nali an</w>\nj az\nch er</w>\nsil ver</w>\nnor th\neng lish</w>\nbase ball</w>\nc af\nlim ited</w>\nfollow ing</w>\napp reci\near th</w>\nk ir\nve mber</w>\nw ed</w>\np tion</w>\ng ed</w>\noc tober</w>\nfl ori\nc r</w>\nen cy</w>\nga ve</w>\nlor d</w>\nstu ff</w>\nber ry</w>\npo st\nsm ile</w>\nbro ad\nst ate\ngg er</w>\nme ans</w>\nic y</w>\ngu n</w>\ny o</w>\nma ster</w>\nbur g</w>\nhan ds</w>\nni e</w>\n/ /</w>\nuni on</w>\nbrit ish</w>\nbig gest</w>\ndistric t</w>\nam ing</w>\nh il\no ce\nper son\npas s</w>\nen vir\nscho ols</w>\narri ved</w>\nanc es</w>\ninsp ired</w>\nex pla\nbe n</w>\nlibr ary</w>\nbo tt\nam p\nste ph\ncont act</w>\nb ang\nm s\ncali for\nt old</w>\nbatt le</w>\nb b</w>\nchic ago</w>\nâľ ¨</w>\nstr ate\nsh i</w>\nde ce\n- )</w>\nad d</w>\nla b\nj ones</w>\nleg end</w>\ncast le</w>\ning er</w>\nst ance</w>\nbe l</w>\nur a</w>\nre fu\nlead ers</w>\npo t\nse x\nh ic\nartic le</w>\nki d</w>\nfr ance</w>\nx x</w>\nex e\ngui de</w>\nvolun te\npr int</w>\nal i</w>\nce o</w>\ntwee ts</w>\nw x</w>\nscen e</w>\nvol u\nant i</w>\nh an</w>\nas soci\nshar ing</w>\nro se</w>\nmini ster</w>\nsh er\nin ste\ncle an\ndemo cr\npo ster</w>\nsk in</w>\np sy\npro per\ncra zy</w>\ni am\no re\nin i</w>\nany thing</w>\npo d\nmo ving</w>\ncl ick</w>\nex plo\ncom b\ncra ft</w>\nf i</w>\nbloo d</w>\nis ra\npubl ic\nd ent\nol ym\neng land</w>\na si\nch er\nfac t</w>\nenvir on\nhar ry</w>\ng one</w>\nme dic\nenjo ying</w>\njust ice</w>\nj r</w>\nindi an</w>\nwi fe</w>\ns ound</w>\nt es</w>\ndra wing</w>\np al</w>\nide a</w>\ncr it\nju li\nil er</w>\nwar m</w>\ncl ar\nthou ghts</w>\ndef en\ncoun cil</w>\nintro duc\ndi ed</w>\njan u\nan i</w>\ns end</w>\nli er</w>\nm l\nintere sting</w>\ntra de</w>\nwin d</w>\nb ay\ns ac\nanc y</w>\nsour ce</w>\nb es</w>\norg ani\nar ly</w>\nlar ge</w>\nff ici\nta g</w>\nu t</w>\nde sp\no es</w>\ntit le</w>\nsy m\npic tures</w>\nop en\nwom en\nsho wing</w>\nri a</w>\nle ast</w>\nlead ership</w>\ncur rent</w>\nelec tr\nval ent\nlist ening</w>\nc key</w>\ngener al</w>\nde ser\ndu ce</w>\n; )</w>\nc ent</w>\nðŁĺį ðŁĺį\nsco tt</w>\npo or</w>\nselfi e</w>\nev ents</w>\ni on</w>\nwr ong</w>\nde v</w>\nh ill\nsep te\ncul ture</w>\nl ine\nsor ry</w>\ns ent</w>\nsi ster</w>\nce pt</w>\nk ri\nno vember</w>\nar i</w>\nannoun ce</w>\nz ation</w>\nbr an\ng ent\nd u</w>\nl en\nper s\nf m</w>\nmart in</w>\no p</w>\ne mb\nom e\nmidd le</w>\nsuc cess\npe ter</w>\njanu ary</w>\nf lu\nrac ing</w>\nd av\nbi ke</w>\nðŁı »</w>\npe t</w>\nshoo t</w>\nprofe ssi\nfeat uring</w>\nsepte mber</w>\nnow playing</w>\nsta ur\nz a\non ic</w>\nqu ick</w>\nbas ke\nspe aking</w>\nmil it\nz er</w>\nchick en</w>\nb ell</w>\ns ad</w>\nco ast</w>\nlo ving</w>\ny ers</w>\nd j</w>\npan el</w>\nver age</w>\ns wit\nic ks</w>\nb ou\ncalifor nia</w>\ns am</w>\nparen ts</w>\ner o</w>\nk illed</w>\nph ys\njo bs</w>\nmi gr\nan th\ne mo\nhallo ween</w>\nand er\nc m</w>\ncompet ition</w>\ne ag\ns ket\nsp ir\nmay be</w>\nexclu sive</w>\napp e\njour ney</w>\nscre en</w>\nfor d\ni o</w>\nh ate</w>\nu g\nsou l</w>\nher o</w>\nsoci ety</w>\nsy n\ngu it\nn h\nd j\nas es</w>\nim pre\nti me\nsal es</w>\nd d</w>\nf ts</w>\nsumm it</w>\nstun ning</w>\nom s</w>\ntur ned</w>\ncle an</w>\nsof t</w>\nbe at\nre staur\nde red</w>\nen ces</w>\nma gic</w>\ndi o\nsh ine</w>\ngu est</w>\nhealth y</w>\nexhi b\nstor ies</w>\npo pu\nn is</w>\nel a</w>\nbel ow</w>\nfun ny</w>\nresul ts</w>\ns ne\ncur rently</w>\nar d\ndown load</w>\nf light</w>\nm al</w>\nf ine</w>\np ad\nch u\nent ed</w>\nh at</w>\nðŁĳ ı\nste ve</w>\nj o</w>\nmar k\nr at\nb all\np c</w>\np on\nb by</w>\no li\nar ts</w>\nas ure</w>\nbow l</w>\natt ack</w>\nmi c</w>\nde ar</w>\nran ge</w>\nen ter</w>\nchocol ate</w>\nbr illi\nac cess</w>\n, \"</w>\n? ??</w>\nch ap\ncon st\nt n\nmat ter</w>\nblu e\ngall ery</w>\nem p\nwork shop</w>\nlead ing</w>\ny ours</w>\nbaske tball</w>\nw anna</w>\nth u\n_ _</w>\nmar ri\nsle ep</w>\nbi a</w>\nch e</w>\nma d</w>\nimp act</w>\no wn\nsi r</w>\nchan nel</w>\neuro pe</w>\ne sp\nk itch\nhosp ital</w>\nw ra\nroy al</w>\nf s</w>\nne u\nqu ar\nne y\nac ks</w>\nch ase</w>\npp y</w>\nst al\nat ely</w>\nti m</w>\ndece mber</w>\nr are</w>\nper form\ncre am</w>\nwe ight</w>\nch oo\nni ght\nha ven</w>\nfr anc\nkh an</w>\nbuil t</w>\nhel ping</w>\ntru st</w>\nty pe</w>\ngol den</w>\nta x</w>\ns now\ns wi\ndi sa\nquesti ons</w>\nve y</w>\nli ght\nc n\ncl oud</w>\nthom as</w>\nag ed</w>\nsh ou\nte ams</w>\ngr an\nre ason</w>\na a</w>\nyou tube</w>\nv p</w>\npi zz\nmanag er</w>\nbur y</w>\ncre dit</w>\ntre at</w>\nma x</w>\ni k\nma in\ng ing</w>\nde ad\npro bab\nye ah</w>\nã Ĥ\nbr and\nso li\npl ant</w>\nta yl\ngir l\nðŁĺ Ń</w>\nnam ent</w>\nau to\nmess age</w>\nko re\nn ur\nter r\nag u\nma p</w>\nsen ting</w>\nlo ves</w>\ngi ves</w>\ng ab\nz en</w>\nro bert</w>\ncon fir\nw ars</w>\no m</w>\nsta in\ncam era</w>\nand er</w>\nwon der</w>\na b</w>\nca p</w>\ns old</w>\nsu it</w>\nwal king</w>\ncontin ue</w>\neffe c\ndau ghter</w>\nd anc\ncha in</w>\nmul ti\nki d\ny an\nchampi on</w>\nv o</w>\nta ins</w>\nho st</w>\nmin i</w>\nmis sed</w>\nre sc\nly n\nfin ish</w>\ndel icious</w>\ns as\ntayl or</w>\ni b\npro mis\nproduc ts</w>\nmoun tain</w>\nflori da</w>\nregi ster</w>\ntre at\nrec ent</w>\nfe male</w>\nboo th</w>\nmat t</w>\nve hic\ns op\nmo tor\nsuppor ting</w>\nphi c</w>\nex tre\ndr ink</w>\nlan e</w>\nth ird</w>\np s\ncon stru\nce re\nfar m</w>\nðŁİ ī</w>\ntu red</w>\nðŁĳ ī</w>\nc ats</w>\na j\ngi e</w>\nshoo ting</w>\nas ked</w>\npaki stan</w>\nam e\nm b</w>\ng il\nleg al</w>\nsqu are</w>\nin vol\ndra w</w>\noo oo\n!! !!\nopportun ity</w>\np y\ne i\nb ts</w>\nteach er</w>\ncharac ter</w>\njohn son</w>\nbr on\nly wood</w>\nch ine\nc ing</w>\nc ine\nd ge\ngam ing</w>\nrussi a</w>\nci a</w>\nquo te</w>\nric h</w>\ngo v\nflow ers</w>\nsp iri\nst in</w>\ngrow th</w>\nðŁı ¼</w>\ncomm er\nj uni\nmu m</w>\nr an</w>\ns na\na ren\nc b\nac tor</w>\ncol or\nsi t</w>\npa ir</w>\nch i</w>\nbo w</w>\nacade my</w>\nhel d</w>\nr ang\nme tal</w>\ny l</w>\nac tive</w>\nprobab ly</w>\nt ch</w>\nneed ed</w>\nspe e\ncho ice</w>\nital y</w>\nry an</w>\nðŁĩ º\nflow er</w>\nv it\nm n</w>\nfound ation</w>\nb ak\nsi ons</w>\nne igh\nf loo\nhe ard</w>\nre mo\nfre sh\ning ing</w>\nre f\nto wn\ncl ou\nje sus</w>\nspiri t</w>\ncou ldn</w>\nz es</w>\nðŁĴ Ļ</w>\nwilli ams</w>\npro ce\nmoder n</w>\npro cess</w>\nsho es</w>\ncre ated</w>\ntri c</w>\nissu es</w>\nann e</w>\natt en\nde but</w>\nh r</w>\nn it\nsti g\na po\ne ps</w>\nz u\nã Ģ\nsi x</w>\ncar ds</w>\nlan gu\nfam ous</w>\ntour nament</w>\nse l</w>\ne bay</w>\ny n</w>\nst on\nk ick\nannoun ced</w>\nk am\nvo c\nbrilli ant</w>\nhou se\nche ese</w>\nwar ri\nmus ic\nho ckey</w>\nðŁĺĤ ðŁĺĤ</w>\nsk ills</w>\nau tom\nsmar t</w>\nmed ical</w>\nmon y</w>\ne x</w>\ngu ar\ngi ve\npers onal</w>\nven tion</w>\nal li\npre ss\nflo or</w>\nm c</w>\nvictor y</w>\nhi m\nsimp le</w>\nth or\nðŁĩº ðŁĩ\nta il</w>\nlu cky</w>\nale x</w>\nqu ite</w>\nbo t\nssi ons</w>\nchall eng\nc ann\namaz on</w>\nh ell</w>\nb ought</w>\n) :</w>\ned y</w>\nsecre t</w>\nproduc tion</w>\ninde pend\nde fe\nad ded</w>\np r</w>\np ag\nbe d\ngre atest</w>\nwith in</w>\nj ay</w>\nðŁ ¥\nire land</w>\nre ly</w>\ns d</w>\nte xt</w>\ndri ving</w>\npro gram\nspe ed</w>\ncol um\nstr on\nÃ ©</w>\nfore st</w>\nâ ĸ\nmach ine</w>\nco in</w>\nsc ar\noun t</w>\nbi e</w>\n¡ ï¸ı</w>\npor tra\ncomm on</w>\nwre st\nrecei ved</w>\nkno w\ninve st\npl ans</w>\nac cor\nad op\nter y</w>\nre ali\np p</w>\nk al\nart work</w>\nme an\ngo d\ninste ad</w>\nan ci\nmotiv ation</w>\nas ing</w>\ninspir ation</w>\nup coming</w>\npolit ical</w>\neuro pe\nm ers</w>\nheav y</w>\nðŁĳ į</w>\nfe bru\nscot land</w>\nou gh\nb t</w>\nbo ss</w>\nsche du\nspe ak</w>\nn ick\nu red</w>\nin o\ne k\nri sk</w>\ntor y</w>\npres ents</w>\nb on</w>\nru g\nst ates</w>\nexhib ition</w>\nil o\nm ill\nbr ought</w>\n: -)</w>\ntou ri\ncom e\noffici ally</w>\nchampi ons</w>\ndo ors</w>\nre p\npo se</w>\nex tra</w>\nk ings</w>\nsoc cer</w>\nsqu ad</w>\napp lic\nat a</w>\nsome times</w>\nt ari\nexcell ent</w>\nðŁĺ ĺ\nstra ight</w>\ncar ol\nri p</w>\nâĢ į\ngra phic</w>\nm ol\nelec tion</w>\nfebru ary</w>\nas ons</w>\nl i</w>\ndi r\nm t\nn ick</w>\nu su\nm rs</w>\ncom ics</w>\ninst itu\ncor por\nv i</w>\nðŁĻ ı\ntu ral</w>\ndi se\nac ci\nwe are\nam ong</w>\nsho pping</w>\nt ill</w>\nwh at\ncha ir</w>\nsp an\nchine se</w>\ninnov ation</w>\njo y</w>\nk it</w>\ncent ury</w>\nob ama</w>\nph ili\nf c\nre ach</w>\nc iti\nul ous</w>\nn on\nd ang\nhapp ening</w>\nbur n</w>\np el\nor ange</w>\nd v\nk ick</w>\ncla im\ning ham</w>\nph y</w>\nno v</w>\npod cast</w>\nwh i\nni ghts</w>\near lier</w>\nbe ar</w>\nla h</w>\nexc iting</w>\nor a</w>\ngi ven</w>\ns lo\nmemor ies</w>\ncontin ues</w>\nproduc t</w>\ngh o\nc d\nkno ws</w>\nðŁİ ī\npubli shed</w>\ndiscu ss</w>\ny ard</w>\ni phone</w>\ntri es</w>\nw all\nfe b</w>\nare n</w>\ntru th</w>\nwin ners</w>\ntu re\nditi onal</w>\nmilit ary</w>\nproble m</w>\nm and\ndo g\nlo ss</w>\nc ric\ncan adi\nve ter\nvilla ge</w>\n\" ,</w>\ny r</w>\nun g</w>\ndon ald</w>\nag ing</w>\nbir ds</w>\nsci enti\nle s\nth is\nregi on</w>\ntic al</w>\nitt en</w>\nil a</w>\nðŁĺ İ</w>\nd ad\ndi am\nabo ve</w>\nst ren\nli t</w>\np ir\nla b</w>\nfo cus</w>\nbus y</w>\nd ur\napp ly</w>\ns ma\nauth or</w>\nac i\nexe cu\ndom in\nre la\njack son</w>\nat o</w>\nwash ington</w>\nðŁĻ Į\nk ill</w>\npopu lar</w>\nce ment</w>\nro ad\ne ating</w>\nloc ation</w>\nv ent\nar re\nn an\ncu sto\nadvent ure</w>\nor din\nspor t\nul t</w>\nlo ck</w>\nquesti on</w>\ndri ver</w>\nland sc\non i\nk ins</w>\np d\njor dan</w>\nte red</w>\nk k\na f</w>\nchil d\ns p</w>\njust in</w>\nen i\ns elling</w>\nz o\nwh it\nbo ston</w>\npartic ip\nsig ning</w>\nhapp ened</w>\nhe at</w>\nm am\ndre ams</w>\nlo ws</w>\ngra ph</w>\nthe day</w>\nhead ing</w>\nbr o</w>\nble ssed</w>\nvi c</w>\nve gas</w>\nh d</w>\nin ning</w>\nro man\nand ro\nden ti\nu se\nc it\npro gress</w>\nwrit er</w>\nbo b</w>\nff s</w>\ngro wing</w>\nb ly</w>\naw are\nex am\nsp ent</w>\nbe t</w>\nsc ore</w>\nbey ond</w>\ndo cu\nad el\ns f\ncou ra\ncolla bor\nin c</w>\npriv ate</w>\nbo at</w>\n* *</w>\nz one</w>\np ha\nb ill\nto tal</w>\nplan ning</w>\nto wards</w>\nplac es</w>\npre view</w>\ncre ative</w>\ndam n</w>\nide as</w>\nse ems</w>\npo ten\nsay ing</w>\ndi splay</w>\ns w</w>\na qu\nlou is</w>\nby e</w>\nli l</w>\ne mail</w>\nwe stern</w>\nger many</w>\nell er</w>\nre s\nf ant\nment ary</w>\nde als</w>\nric hard</w>\njer sey</w>\nstren g\nra d\npizz a</w>\nmon d</w>\nw are</w>\nl ac\ng i</w>\nar chi\nc d</w>\nyel low</w>\nrec ently</w>\nre ach\nà ¹\nkitch en</w>\ndesig ned</w>\ntr y\ng al</w>\nrestaur ant</w>\nat ure</w>\nw w</w>\nj as\nl ma\nðŁĳ Į</w>\npa in</w>\nav o\nmin ute</w>\nsch ol\nther ap\ntic ket</w>\nd ry</w>\njap an\nditi ons</w>\nter ri\nsel ves</w>\nhapp en</w>\nt up</w>\nma g</w>\ncop y</w>\nsh er</w>\nfree dom</w>\nf ile</w>\nspeci ally</w>\ntor onto</w>\nlo ad\ng ary</w>\nre y</w>\nansw er</w>\nlo y\ncau ght</w>\npri ze</w>\nu ne\nfic ation</w>\nni ger\nsy d\ntou ch</w>\nfeat ure</w>\njaz z</w>\nrecor ds</w>\nhim self</w>\ndi sh</w>\nro ber\nspot ted</w>\nma ster\nwa ve</w>\nfin als</w>\nbu ll\nfor um</w>\nal d\nre comm\nch a</w>\na e</w>\nd oo\ninst ru\ntru ly</w>\nl g\nin k\nbro thers</w>\nde st</w>\nj im</w>\nm it</w>\nclo sed</w>\nis on</w>\ntri ed</w>\ns anta</w>\naf fe\nw an</w>\nhor se</w>\ng row</w>\ncamp us</w>\nrel ation\nnati ve</w>\njour n\ngo v</w>\no ct</w>\nk it\nb ound</w>\npart ner</w>\nre ma\ncrow d</w>\n! )</w>\nc alls</w>\nra il\nqu ali\nsolu tion</w>\ncon test</w>\ncon vers\nsn ap\nb ase</w>\nin iti\nta x\ny e</w>\nent repre\nit or</w>\nconstru ction</w>\nfoo d\npresent ed</w>\nn ings</w>\ncli mate</w>\nk m</w>\nmo del\nb j\nblo ck</w>\npresent ation</w>\ndre am\nfi x\nc alling</w>\nbus ine\ncon gress</w>\nunder stand</w>\nwe b</w>\nval ue</w>\nï¸ı âĥ£</w>\nmex ico</w>\nit ely</w>\nki m</w>\nchar ity</w>\nref lec\nbl an\nfl ying</w>\nanal y\nfamil ies</w>\nb and\nreci pe</w>\ncelebr ation</w>\nac cep\nar y\nto t\ng b</w>\nintere sted</w>\ncap tain</w>\nâĻ ¥\nti p</w>\nab sol\nbra z\ninve stig\no logy</w>\nde c</w>\ntru ck</w>\nver ing</w>\nc lear\ndon t</w>\ngo tta</w>\nad vis\nbeg ins</w>\nma ss\nde scri\nblo ck\nk im\ndavi d\nson gs</w>\nmemor ial</w>\nfeat ures</w>\nsu stain\n' .</w>\ngra b</w>\njo se\nv a\ncon serv\nse ts</w>\nman chester</w>\nfi ghting</w>\nde gre\nag a</w>\nin d</w>\nsle ep\npos ition</w>\nha ir\nsig ns</w>\npol icy</w>\nit o</w>\nal ert</w>\nst am\nsp end</w>\nw y\nabsol ut\nd m</w>\nanim al</w>\nmy ster\nsuccess ful</w>\nproble ms</w>\nro bo\nk ay\ngar den\np d</w>\nmay or</w>\nd ale</w>\nt ol\noff ers</w>\nvis iting</w>\nfriend ly</w>\ntre es</w>\noffic er</w>\naccoun t</w>\nke vin</w>\nðŁĳ į\ngi ant</w>\ncontin u\ncon su\ntr act</w>\nn fl</w>\nðŁĺ Ĭ\nh q</w>\nb ility</w>\na ar\ndis ney</w>\nte en</w>\non ed</w>\nwh ite\ntra iler</w>\nde dic\nal one</w>\nabsolut ely</w>\ndig ital\nwilli am</w>\nin ation</w>\ns wa\ne e</w>\nenti re</w>\nger man</w>\nro ll\nh its</w>\nco st</w>\nst ay\nth a</w>\nali ve</w>\naccor ding</w>\nco t\nliter ally</w>\nher it\nre ti\nhaha ha</w>\nexper i\nli kes</w>\ng t</w>\nste el</w>\n__ __\nch air\nchristi an</w>\nto wer</w>\ndiffe rence</w>\nm d</w>\ntre ss</w>\nmi d</w>\nprin ce</w>\nafric an</w>\nfe der\nfoo t</w>\ncar ri\nser ved</w>\nr ice</w>\nsh all</w>\nfeat ured</w>\nck er</w>\nrec ru\npo e\nsen se</w>\nni fic\ncom edy</w>\ncont ent</w>\nf at\npo sted</w>\ncon tribu\ntim ate</w>\nli ver\nmb le</w>\ninter net</w>\nag e\neurope an</w>\ncl ing</w>\ngla d</w>\nff ic\nsc o</w>\nak es</w>\nel le</w>\nter min\nton y</w>\np ale\ncol our</w>\nseri ous</w>\npat ri\nmovi es</w>\nb m\nprofessi onal</w>\nad o\nal u\nbr inging</w>\nf alls</w>\nisra el</w>\nter m</w>\nlangu age</w>\nbro ok\nman n</w>\ncommun ic\ncan not</w>\nac ti\np he\ny an</w>\nentrepre ne\ntur key</w>\nlog ical</w>\nlon g\nar m</w>\nur s</w>\nwork ers</w>\ning ly</w>\ngg s</w>\nri c</w>\ntu al</w>\nrecei ve</w>\nop ens</w>\nge ar</w>\nsoci al\nfe et</w>\nc king</w>\nad ver\nfin an\nfe els</w>\nsp la\nh r\nea ster</w>\nbra in</w>\nã ģ\nfi g\nle dge</w>\nne arly</w>\nprote ct</w>\nma ssive</w>\ne th\naw a\nðŁĺ ģ</w>\ny rs</w>\naware ness</w>\ndefin itely</w>\nk n\nimag ine</w>\nk u</w>\nsyste ms</w>\nðŁĳ ı</w>\nf as\nli k\nprovi de</w>\nam o\ndisco ver</w>\ninf lu\nma ker</w>\ng az\nfit ness</w>\nstre et\ner s\nte d\nw c\nys is</w>\npos itive</w>\nhel ped</w>\nque st</w>\nandre w</w>\nbra d\nb in\nhang ing</w>\nl ing\nbri ght</w>\nse ction</w>\nma ss</w>\nðŁĻ Į</w>\nfollow ers</w>\nho sting</w>\ntem por\nfla g</w>\na ve</w>\nlet ter</w>\nk ur\nre qui\nof ten</w>\ncry p\nsu ff\nâļ ½\nrussi an</w>\ntreat ment</w>\nal le\nha y\nl an</w>\nkeep ing</w>\nhol y</w>\npower ful</w>\npre dic\nfun d</w>\ne specially</w>\nwindo w</w>\nje wel\nil y\nðŁĴ ľ</w>\ngener ation</w>\napp a\nseri ously</w>\no d\nðŁĺĤðŁĺĤ ðŁĺĤ</w>\ncer ti\niri sh</w>\nðŁĳ Į\nmi ami</w>\nbe th</w>\nv ity</w>\nse cu\nche f</w>\ncri me</w>\ngraph y</w>\nma x\narti sts</w>\nre volu\ngu ard</w>\nspee ch</w>\nu c\nupd ates</w>\nfac es</w>\nst ant</w>\nchang ed</w>\nrepor ts</w>\nlow er</w>\npe ar\nn c</w>\nk il\nloo ked</w>\nspe aker</w>\ns f</w>\nre spect</w>\nok ay</w>\noce an</w>\ns itting</w>\narchitec ture</w>\ntra il</w>\nse at</w>\ni ra\nle g</w>\njapan ese</w>\nd am</w>\nu lar</w>\nsw im\npolit ics</w>\nfinan cial</w>\nol d\nmou th</w>\nat temp\nde stin\nfi shing</w>\natten tion</w>\nme m\nchang es</w>\ndeci ded</w>\nreli gi\ng in</w>\nc av\nz z</w>\nad am</w>\nma c</w>\nwr ite</w>\nbeg in</w>\nsc ul\nal ter\nis s</w>\nath on</w>\nimag es</w>\nm oo\njo ined</w>\nðŁĺ ī</w>\nâŀ ¡ï¸ı</w>\npas sed</w>\nmu sli\nh ir\nlar gest</w>\ncam er\ncom ic</w>\ngh ted</w>\nrug by</w>\nbur gh</w>\ngg ing</w>\nte sting</w>\npre par\nlau gh\nal ed</w>\nimpro ve</w>\nbeli ev\nadv ice</w>\nsha res</w>\nhe art\ntur ning</w>\ns b</w>\nt el\ncaf e</w>\nn es</w>\ndani el</w>\npat ter\nt z</w>\nse tt\npar k\nc and\nst ick</w>\nhapp ens</w>\nbri an</w>\nne west</w>\ne pic</w>\nad or\nki es</w>\nwar ning</w>\nanim als</w>\ncusto m</w>\nar c\ndi an</w>\ngol d\ncor e</w>\nt f</w>\nc ity\npan ts</w>\nre ality</w>\ncon fi\nin ju\nfo x\ngu il\nk new</w>\nâĺ º\ncor rec\nitu de</w>\nd den</w>\n. #</w>\nre duc\npas s\nf on\ny a\now ner</w>\nre turns</w>\nn c\ne ast\nap ol\nin sur\nth o</w>\nsi m\njuni or</w>\nbe e</w>\nang el\natt le</w>\nelec tric</w>\nhor ror</w>\ncra sh</w>\ne ye\npat h</w>\nsou thern</w>\nemplo ye\nge o\nt an</w>\nha z\nr ally</w>\nðŁı »\nproper ty</w>\nwas n</w>\nenjo yed</w>\ngre y</w>\ng as\nbre w\nnor thern</w>\nhol ding</w>\ng p</w>\nta ke\nch art</w>\nly n</w>\ndr ama</w>\nz o</w>\npa id</w>\nthrow back</w>\ncu p\ndiscu ssion</w>\ndown town</w>\nw ill\nle w\nb is\nt ary</w>\nbre ad</w>\nup on</w>\nr ate</w>\nteach ers</w>\nit ation</w>\nanc ed</w>\ncy cle</w>\nchoo se</w>\nd c\nir an</w>\nco w\nda ve</w>\nra ise</w>\nprin cess</w>\nfa ith</w>\n- ></w>\nindu stri\nsp ain</w>\nguit ar</w>\nfac ts</w>\nm n\nsp en\ncour te\ngo tt\nprojec ts</w>\nau di\no sc\npe ter\ns and</w>\nintere st</w>\nhapp iness</w>\nven ue</w>\nsol di\nsurpri se</w>\npoten tial</w>\nper io\ncustom er</w>\ni i\ng ni\nmanu fac\ne co\nbro ken</w>\nsing er</w>\nvel s</w>\nwal es</w>\nhu s\nin j\nf our\ntal ent</w>\nd ying</w>\nmat the\nfil m\njo ining</w>\ns ell</w>\nj ar\nlma o</w>\nsur ger\nbb c\nsour ces</w>\nau stin</w>\nni k\nchar les</w>\nf am</w>\nprin ci\nange l</w>\ncas h</w>\nlo t\no red</w>\npla ys</w>\npl ate</w>\ndon e\nmemor y</w>\nbr ings</w>\nn ba</w>\nsolu tions</w>\nteach ing</w>\ngr ace</w>\ncir cu\nhel ps</w>\nfoun der</w>\nmar y\nexpl ore</w>\nde cor\npar ts</w>\nch o</w>\ninte gr\nha u\nis es</w>\npu tting</w>\nin er</w>\nr it\nv y</w>\nmic hel\nblu es</w>\nevery day</w>\nfor ms</w>\nbi o</w>\nye ar\np in</w>\nt ter</w>\nspr ing\n) )</w>\npo t</w>\nal ing</w>\nperform ing</w>\nsh an\nplan et</w>\nmus ical</w>\nhead s</w>\nit alian</w>\nstru gg\nâĢį âĻ\nw ings</w>\npu mp\nh h</w>\ntr ou\na id</w>\npri me</w>\near th\npa int</w>\nmon t\nam y</w>\nbb c</w>\nfab ulous</w>\nfru it</w>\nandro id</w>\nbour ne</w>\ncere mony</w>\nenti al</w>\n? ?\ndeb ate</w>\non ing</w>\ndra ft</w>\nsol ar</w>\nt x</w>\nj am</w>\ncor n\n!! !!!</w>\nbro o\nmil k</w>\npo sed</w>\no hi\nmo vement</w>\nb ren\npart ner\np g</w>\net te</w>\nar ies</w>\nsh out</w>\nn g</w>\nleav ing</w>\nt ells</w>\nsen s\nta ste</w>\nkel ly</w>\nwor l\ngy m</w>\nric h\ne gy\npi d</w>\nma s\nâ Ĥ\ncourte sy</w>\nfran k</w>\nincre ase</w>\nwr itten</w>\npp ers</w>\nre l</w>\nha i</w>\ns as</w>\ns ound\ntt i</w>\nw ich</w>\nri ver\n.. .\"</w>\na g</w>\nfel low</w>\nro me</w>\nsm all\ngen cy</w>\nic an</w>\nlux ury</w>\npro of</w>\nme t\nwild life</w>\nmom ents</w>\nra ther</w>\ncor ner</w>\ncom pe\ncanadi an</w>\nlik ely</w>\ntherap y</w>\nli am\neconom ic</w>\nindi e\nrou te</w>\nfi ght\nho pe\nse tting</w>\nant ly</w>\ncro ss\nfant asy</w>\nde e\nsket ch</w>\ncomp li\nym i</w>\nru les</w>\nengine ering</w>\nfig ure</w>\nro w\n. ,</w>\nf w</w>\nsyd ney</w>\nw ou\nt ation</w>\ndre w</w>\nus es</w>\nthe re\nsp read</w>\nstruc ture</w>\npat rick</w>\nappa rently</w>\nro s\nh ills</w>\nw we</w>\nann y</w>\ncom mission</w>\ndi v\nf ying</w>\ncon sul\nanal ysis</w>\nex i\nten nis</w>\nvehic le</w>\nðŁĺŃ ðŁĺŃ\nas s</w>\nhigh ly</w>\nop ened</w>\nb ann\nðŁĴ Ļ\nmp h</w>\nwi shing</w>\nv or</w>\nfi f\ngive away</w>\nr r\nra y\nje ss\ng at\nic ymi</w>\nx it</w>\nhigh est</w>\nyor k\npi e</w>\ninvol ved</w>\nhigh er</w>\nri e</w>\nmal ay\nint elli\ndesp ite</w>\nche e\nsar ah</w>\nbe an</w>\nreco gni\nar sen\ntal ented</w>\npas sion</w>\nic h\nab c</w>\nlead s</w>\ndise ase</w>\nv is</w>\nse c</w>\npre senting</w>\nm illi\nhol e</w>\nsho ts</w>\nde part\nsurger y</w>\ngov t</w>\nb in</w>\ndu al</w>\ne vi\nlon ger</w>\nev ol\nscre en\nportra it</w>\net c</w>\nlo se</w>\nch at\np en</w>\np i</w>\nom a</w>\ns ick</w>\ner c\ncompan ies</w>\nen try</w>\nplan e</w>\ngr y</w>\nven e\nliver pool</w>\npremi ere</w>\nsha red</w>\na red</w>\nfil ms</w>\nir a</w>\nholi days</w>\ncric ket</w>\nici an</w>\nv ing\n. )</w>\nul timate</w>\ndi vision</w>\ncon duc\nse pt</w>\nfor ces</w>\nmon t</w>\ns mart\ndisa pp\nsun shine</w>\nin d\nb less</w>\nma de\ncol ors</w>\nfran k\nir on</w>\nbott le</w>\ns go\nm ood</w>\nj ason</w>\ner ic</w>\nbir th</w>\nte en\nrespon se</w>\ntar get</w>\nstate ment</w>\nfe ar</w>\nth el\nal um\nar ab\nbl in</w>\ndirec tion</w>\nste ps</w>\ner ial</w>\nwor ked</w>\nat l\nðŁĴ ķ\nfel t</w>\npol i</w>\nscen es</w>\nhom es</w>\nb ell\ne at\nate ful</w>\nt in</w>\nl ace</w>\nfol ks</w>\np se</w>\nan n</w>\nwis dom</w>\nfa v</w>\nbut ter\ns r</w>\nare as</w>\nsm oo\nbi z</w>\ndg es</w>\napp o\nmo re\nthe m\neffe ct</w>\nwindo ws</w>\nsun ny</w>\ncap ital</w>\ntot ally</w>\nc ities</w>\ngr ant</w>\nmb ers</w>\ns low</w>\nau tu\nil ities</w>\nw ro\nri sing</w>\nst ics</w>\nviol ence</w>\ni gh</w>\nqu ot\nh it\nt c</w>\nherit age</w>\nbu ff\nne s\nz ar\nden tial</w>\nex ac\ned ge</w>\nde ep\naren a</w>\nbe came</w>\nbenef its</w>\nmar ks</w>\nmb er\na z</w>\nam es</w>\npre ci\ndra gon</w>\nre g\nd ings</w>\ndo s</w>\nðŁĴ ª\nn el\ns ity</w>\nme al</w>\ndi st\nleg end\npur chase</w>\npic al</w>\nst ick\nf at</w>\ndu ba\nprofe ss\ncar to\npro f</w>\ncoun tries</w>\nrespon si\nse qu\nfa b</w>\ntribu te</w>\nhon ored</w>\nprac tic\npur ple</w>\nan ton\npa red</w>\nt ough</w>\nsumm er\nenviron ment</w>\ns ons</w>\nðŁĻ ı</w>\nm ps</w>\ngi es</w>\nher oes</w>\nt elling</w>\nhen ry</w>\nf en\nknow ledge</w>\nĢ ï¸ı</w>\nf r</w>\nne g\nu re\nac king</w>\nhear ts</w>\ns oo\nhol lywood</w>\nju mp\nsau ce</w>\nschedu le</w>\ntur n\nyo ga</w>\ncre ating</w>\nc ket</w>\ncre ek</w>\nâ Ń\ncustom ers</w>\nma dri\ngu l\nasse mb\nmoun t</w>\nc ell</w>\nto p\nst al</w>\ndav is</w>\nt wi\nsig n\npremi er</w>\niti ons</w>\nhe aring</w>\nun k</w>\npati ents</w>\napp ear\nheav en</w>\nal ty</w>\ndoc tor</w>\na e\nplat form</w>\nje ff</w>\nðŁĵ ·</w>\nregi onal</w>\nbi d</w>\nbox ing</w>\nex ten\nor ity</w>\na w</w>\nw ise</w>\nil le</w>\nsever al</w>\nbi e\ns itu\nsy ria</w>\nâľ ħ</w>\nremin der</w>\nenter tain\nli on</w>\npart ners</w>\nin n</w>\nph ar\nf au\npl s</w>\nexpe cted</w>\nsug ar</w>\ndeci sion</w>\ns b\nch ron\nassoci ation</w>\nleav es</w>\nvis ited</w>\nsh ap\nðŁĴ ĸ</w>\nfur ther</w>\nh ann\nw i</w>\nrun s</w>\nl er\nfun ding</w>\nfil led</w>\n.. ....</w>\ntin y</w>\nhan g</w>\nor g</w>\nco ol\nse min\nðŁı Ĩ</w>\nspon s\nnav y</w>\nsa int</w>\ndru g</w>\nd al</w>\nr oun\nco vered</w>\ntra ditional</w>\ninvest ment</w>\nde te\nal ism</w>\nf low</w>\nn is\nsun rise</w>\nfe at</w>\nf ted</w>\nwe ird</w>\nje re\nve gan</w>\nmedic ine</w>\nan o\nac cu\ndeli very</w>\ntemp le</w>\nchang ing</w>\nwil son</w>\nphili pp\nre fe\nn d\nis er</w>\ng ay</w>\nr and\nati ves</w>\nt ely</w>\np and\nintelli g\ng are\nam bas\nde mon\ncommit tee</w>\nstrate gy</w>\nrefu ge\nbud get</w>\nprote c\npi er\nex press</w>\nnom in\neconom y</w>\nal low\nic on</w>\ngal ax\no h\nindi vi\ndem and</w>\nvir gin\nlu ke</w>\nali sts</w>\nman i\ns mi\nju dge</w>\nent y</w>\nmic hi\nresul t</w>\nam ed</w>\nspe aks</w>\n' ,</w>\nhou ston</w>\nsh in\nb ing</w>\nfl y\nch em\nau to</w>\nv as\nge t\nar m\nthank s\nd in</w>\ngan g</w>\nx x\nsi on\nloc ated</w>\np l</w>\njo sh</w>\nin fo\njo ins</w>\nadver ti\not d</w>\nel d</w>\nsi e</w>\nre asons</w>\nv ent</w>\nðŁĩºðŁĩ ¸</w>\nâ ł\nconvers ation</w>\nstu di\nðŁĶ¥ ðŁĶ¥\ngo s</w>\ns ounds</w>\nun it</w>\nmu sc\nge l</w>\nack ed</w>\npac i\nco s</w>\nde re\nu u\na o</w>\nla m</w>\ninspir ing</w>\nar ms</w>\ntw are</w>\nmat ters</w>\nad dic\ndu de</w>\nex t\ncri sis</w>\nb ath</w>\nme et\nsing h</w>\nexpe ct</w>\ndel hi</w>\nresc ue</w>\nwor st</w>\nau g</w>\nshi pping</w>\nser ving</w>\nst o</w>\ndar k\nac es</w>\nhistor ic</w>\nlandsc ape</w>\ndesig ner</w>\nb illion</w>\ngr ateful</w>\nwa ke</w>\ne ve\nm iller</w>\nhou sing</w>\ndy nam\nis co</w>\nbe ha\nsh op\npr ou\ne as\na sia</w>\ne ding</w>\nk on\ndepart ment</w>\naw ar\nmar ine</w>\nin ci\nphotograph er</w>\nta pe</w>\nlo go</w>\nr ings</w>\nd it\n-- --\nvin yl</w>\nw c</w>\nvo ting</w>\nse ven</w>\nambas sad\ndal las</w>\nt u</w>\ncom ment</w>\nk ra\nb les</w>\nw ag\nu d</w>\nau dio</w>\nstri ke</w>\noffici al\no ts</w>\nme tho\nto ols</w>\nra di\nal an</w>\nhun t</w>\nwat ched</w>\na ke</w>\nfa ke</w>\ndrin king</w>\nmer ry</w>\nm l</w>\nb day</w>\nri o</w>\nni ke</w>\nc ant</w>\nre pe\nco stu\nmur der</w>\nak ers</w>\nch ers</w>\nou ts</w>\nbeg inning</w>\nso s</w>\nad es</w>\nn in\nnot es</w>\nwro te</w>\nsol o</w>\nc i</w>\nli ghting</w>\nur ban</w>\nbre xit</w>\natt end</w>\nshir ts</w>\npla yo\nac tress</w>\npl ic\nstand ard</w>\nquot es</w>\npar ade</w>\nanci ent</w>\nÂ ©</w>\ntur ing</w>\nre e</w>\npri mary</w>\nfla sh</w>\nciti z\nmat es</w>\nste in</w>\nz i</w>\nclin ton</w>\nsk in\ngen e\nhu m\ng ar</w>\nt le</w>\ny i\nfo cu\nde an</w>\npl ants</w>\ncy ber\nb u</w>\nom e</w>\nho p</w>\nad dress</w>\nti x</w>\ngi fts</w>\nrelation ship</w>\nsub scri\nfe ed</w>\nexac tly</w>\nhaw ks</w>\nex o</w>\nstre ss</w>\ns n</w>\narre sted</w>\nan e\nsof tware</w>\nz ero</w>\nthe me</w>\nmu mb\nim migr\nmi a</w>\nmake up</w>\nple asure</w>\nuni vers\nhar b\neng ine</w>\nap er</w>\nr in\nbr a</w>\ninstitu te</w>\nle ather</w>\nal th</w>\nsing ing</w>\nco s\ngh ty</w>\nme as\nst ic\nsi de\ninsur ance</w>\nco t</w>\npit ch</w>\nmoun tains</w>\ncri min\nsu pre\nvalent ine</w>\nat er</w>\nwou ldn</w>\nsc ale</w>\nrel ated</w>\nre gar\nstar tup</w>\npack ed</w>\nmi ke\nweek ly</w>\np ts</w>\ncoun t</w>\nha r</w>\ngott en</w>\nmin d\nber lin</w>\ncon ditions</w>\nswit ch</w>\ncor n</w>\nsa ve\ng li\nemer gency</w>\ntun ed</w>\nsto ck\ndiscu ssing</w>\nevery body</w>\ns day\nwhe ther</w>\nwrest ling</w>\nec es</w>\ngen der</w>\nch en\nðŁĳ Ģ</w>\nmadri d</w>\nmar athon</w>\ne gg</w>\ni er</w>\nth x</w>\nas king</w>\nkore a</w>\nwol f</w>\nay a</w>\ng m</w>\ng au\nat ory</w>\nv r</w>\ngra ss</w>\nk illing</w>\nb ble</w>\nur o</w>\nun i</w>\ne th</w>\nsh ore</w>\nth en\nre ale\nbot tom</w>\nex erc\nk ar</w>\nor ies</w>\nad ri\nsan ds</w>\nse x</w>\n. '</w>\nvolunte ers</w>\nper form</w>\npar liam\ninclu de</w>\ndeli ghted</w>\nexecu tive</w>\nfu el</w>\nkis s</w>\nã ħ\nchar ge</w>\nh u</w>\nca kes</w>\nve t</w>\ng lu\nagre e</w>\npr ices</w>\nn au\nh l</w>\ng ru\nra j\nstreng th</w>\nb ic\nsp ending</w>\nal es</w>\nav en\nb last</w>\n: (</w>\nyo f\nnor mal</w>\nsi x\nqu ick\nse a\nd aw\nmee ts</w>\nlo vers</w>\nupd ated</w>\npo tat\ncomple ted</w>\ncoo k</w>\nopportun ities</w>\np ure</w>\norgan ic</w>\ntem per\nc am</w>\navo id</w>\npar king</w>\nduba i</w>\nand o</w>\ndi stri\nto y</w>\ncomple tely</w>\ndon ald\ntri al</w>\nbas s</w>\nb oun\nback ground</w>\nv as</w>\nmar vel</w>\nlu m</w>\nru s</w>\nt ool</w>\ncom missi\nthrow back\nfin ding</w>\nis lam\n! ?</w>\nst op\ne vil</w>\nor al</w>\nresi dents</w>\ni denti\no ak\nðŁİ ¶</w>\nl il\nspan ish</w>\nchap ter</w>\nsto pped</w>\ndirec t</w>\nho sted</w>\npic ked</w>\nlab our</w>\nlew is</w>\ndefen se</w>\nà ®\nhealth care</w>\nwh is\nmat h</w>\npe ak</w>\nra ised</w>\nfi x</w>\nbu ll</w>\nth ir\nchel sea</w>\nfol k</w>\ntr e</w>\ncan di\npau l\nei ther</w>\nad am\npoe try</w>\njewel ry</w>\nðŁ ¦\npr ay</w>\nØ §\ng c</w>\no z</w>\nwi shes</w>\nfore ign</w>\nsun g</w>\nlear ned</w>\nen e</w>\nn ing\nmicha el\nillu stration</w>\nlegend ary</w>\nw av\nb au\nðŁļ ¨</w>\ncal end\nstre ets</w>\nâ Ĩ\nmon ster</w>\nbu ck\ng r</w>\nscho ol\nba th\nwa ste</w>\nne ck\nha wa\nbe ach\nre plac\njec t</w>\non er</w>\nfac tory</w>\ncoun t\nðŁĵ ¸</w>\nmor gan</w>\nder ing</w>\nse an</w>\nsteph en</w>\nde p\nno vel</w>\nvide os</w>\nic al\npress ure</w>\narsen al</w>\nex pre\nir s</w>\ntren ding</w>\nss a</w>\nfla sh\nre sear\nthr ough\nprofess or</w>\nscul p\nto s</w>\ngg ed</w>\nmm a</w>\nbe e\na pe\nhun ter</w>\nam i\nhe i\npla stic</w>\nbu cks</w>\nuni verse</w>\nle gen\nniger ia</w>\nple ased</w>\nri s\nthin ks</w>\nautu mn</w>\ni ds</w>\nd is</w>\nanth ony</w>\nðŁı ½</w>\nak ed</w>\ngla sses</w>\nfin ance</w>\nz er\nk as\ncon tract</w>\nnu mbers</w>\nsh aw\npartner ship</w>\nt il\nlaun ched</w>\ns al</w>\nvictor ia</w>\ntheat er</w>\nusu al</w>\nnam es</w>\nperio d</w>\neli za\ni th\nbar cel\nro cks</w>\nbag s</w>\nmat e\ndistri bu\nj on</w>\ndi ffic\nali zed</w>\ncur ren\nsco red</w>\nb ha\ndu blin</w>\nro se\nin ted</w>\nsoli d</w>\nbeha vi\nwal ker</w>\nsimp ly</w>\ngarden s</w>\nhead ed</w>\nin i\nohi o</w>\nwe ap\nf o</w>\ngl en\ne state</w>\nran dom</w>\nth under\nthr u</w>\nk ill\njac ket</w>\nit i</w>\nentertain ment</w>\nthanks giving</w>\nent al</w>\nen coura\nel o\na ther\ntan k</w>\nhigh lights</w>\nf ting</w>\nru le</w>\nmodel s</w>\nbor der</w>\nbj p</w>\nhus band</w>\nin done\nken ya</w>\nbe ars</w>\nal o</w>\nn inten\npi x\nstr o</w>\nor ders</w>\nsal ad</w>\nro ads</w>\nn or</w>\nl ation</w>\nsop hi\nðŁı ¼\npi eces</w>\nb one</w>\nmin s</w>\ninclu des</w>\nnu tr\nphi l</w>\ns ent\nfun dra\nga in</w>\nbor ough</w>\nn ad\nmon day\nactiv ity</w>\nit ems</w>\nbe coming</w>\nken ne\nde tro\ncar di\ngue sts</w>\nu x</w>\nworld wide</w>\nsever e</w>\nnew s\nthank ful</w>\nfic tion</w>\nve ge\nm all</w>\nsi an</w>\ner al</w>\ninj ury</w>\nle e\nmen u</w>\ndanc ing</w>\nscot ti\nexam ple</w>\n( #</w>\nna i\nstudi os</w>\nba i\nðŁĴ Ľ</w>\nj av\ndiam ond</w>\nvin ce</w>\nric k\nprote ction</w>\nlin col\ncham ps</w>\nappro ach</w>\nd ar</w>\nm ile</w>\nclou ds</w>\nje ff\nin fin\nl ers</w>\np les</w>\npe ace\ngo p</w>\nâĻ ¡</w>\ntech n\nstr a</w>\na verage</w>\nef fort</w>\nintroduc ing</w>\ndi versity</w>\naustr alian</w>\nam p</w>\nboo st</w>\ns ke\npati ent</w>\nappreci ate</w>\nici ans</w>\npu r</w>\nf ell</w>\nwoo ds</w>\nillu str\nðŁ ĸ\nag ency</w>\nac tions</w>\nbrit ain</w>\nunder way</w>\nse attle</w>\nel and</w>\nag o\nf ill</w>\nstre aming</w>\npro test</w>\nchalleng es</w>\nky o</w>\net sy</w>\ncoo king</w>\nexper t</w>\nru ss\nrain bow</w>\ncommer cial</w>\nsp in\nbe ats</w>\nc ry</w>\nval u\nel i</w>\nth row</w>\ngr ams</w>\nle vels</w>\nmichi gan</w>\nc ad\nador able</w>\nconst itu\nw s\npu b</w>\nmid night</w>\nth at\nnet fli\nbraz il</w>\ndie go</w>\nregu lar</w>\njo y\nâĤ ¬</w>\nli qu\nea stern</w>\nk ni\nfl at</w>\nn p</w>\nbro wn\nw er\nse y\ntt ers</w>\nac ting</w>\nv anc\ncy cling</w>\nprogram me</w>\nra w</w>\ncomple x</w>\ntat too</w>\nthrowback thursday</w>\nse ssions</w>\nro oms</w>\nsi ght</w>\nspeci es</w>\nbom b</w>\nlau gh</w>\nke eps</w>\nmo on\noffic ers</w>\ncon ver\nt r</w>\nha sh\nt ack\nri ous</w>\nad ap\na j</w>\nreco gn\nex po</w>\nsug ge\nconfir med</w>\nrol ling</w>\ndre ssing</w>\nic t</w>\nfri day\nph ones</w>\nri dge</w>\ncon cept</w>\nro y</w>\nke ys</w>\nef for\nc ate\nk ne\nev en\nl ay</w>\ncommun ities</w>\nmo d\nn az\nevery where</w>\nal ab\nbit coin</w>\nban ks</w>\nout door</w>\nfeder al</w>\nsto res</w>\nh p</w>\nc al</w>\nm ely</w>\nsig nific\nbe ar\nre public\nclo ser</w>\nal lah</w>\npic k\nx d</w>\npal ace</w>\nch ill</w>\nb am\ner ous</w>\nun a</w>\nal len</w>\nout standing</w>\nolym pic</w>\nsupp ly</w>\nfi gu\nv au\nl p</w>\nchar lie</w>\nun es</w>\n> >></w>\nlegen ds</w>\nici al</w>\nco ast\nbenef it</w>\nmul ti</w>\nf its</w>\nfar mers</w>\nam ount</w>\nsi sters</w>\nhar ve\nhon ey</w>\nque en\nb ers</w>\npl ann\nâŃ Ĳ\nm u</w>\nbarcel ona</w>\nal ber\nstat us</w>\nre main</w>\nex tra\nc andy</w>\nvi ous</w>\nâľ Į\no v\nwarri ors</w>\n-- ></w>\nju mp</w>\nam ar\nx mas</w>\nstu dies</w>\ni ors</w>\nk or\ndon ate</w>\npre p\nfi sh\nim a</w>\npain ted</w>\nad mini\nco splay</w>\nspor ts\ndro ps</w>\nfi ghter</w>\nevi dence</w>\nðŁĴ ª</w>\nla ke\nro b</w>\ncine ma</w>\npro file</w>\nÃ ±\nstan ds</w>\nleg acy</w>\nsh ape</w>\nro of</w>\nci vil</w>\ni ans</w>\nsy l\nsh am\nvo ted</w>\nre tail</w>\nph illi\nli sted</w>\ndu ty</w>\nn b\nth es</w>\nf are</w>\nau ction</w>\nffici al</w>\nstor ms</w>\nd p</w>\nl oun\nsh ops</w>\nal y\nani me</w>\nmulti ple</w>\nðŁĺį ðŁĺį</w>\npsy cho\nje an</w>\nap art\ncandi date</w>\ngg y</w>\ncon f</w>\njose ph</w>\nw ick</w>\nme at</w>\nfr ame</w>\nc l</w>\nfor got</w>\nph y\nf ing\nli ed</w>\nre p</w>\nse ed</w>\nf all\nu fc</w>\nnu t</w>\nlin d\nmo de</w>\nfiel ds</w>\nen ce\ns ley</w>\nðŁ¤ Ķ</w>\nch ill\nfollow ed</w>\nannoun ces</w>\ncor ru\ntro phy</w>\nthem selves</w>\nac le</w>\nal du\nk ong</w>\nl on</w>\ns v\nbro ke</w>\nander son</w>\nta i\nstor y\ntempor ary</w>\nactiv ities</w>\nk ati\nari z\ncry stal</w>\nspo ke</w>\nextre mely</w>\ntra ding</w>\nðŁĴ ļ</w>\nÃ ¼\nin ch</w>\ned in\nout fit</w>\nequ ip\nma di\nform ed</w>\nbe ef</w>\npo p\nti ger</w>\nthis day</w>\nti red</w>\nneigh b\nre tro\nis a</w>\nun t</w>\nt as\nkan sas</w>\nde st\nsecon ds</w>\nta y\nhur ric\no u</w>\ngalax y</w>\ndad dy</w>\nbro w\nbur ger</w>\nen ced</w>\nde sk</w>\nac cur\nsecre tary</w>\nel ite</w>\nk ab\nch in\ntouri sm</w>\nbud dy</w>\nici de</w>\ndre ssed</w>\nu d\nvac ation</w>\nche ers</w>\ncom for\ncharac ters</w>\nj et</w>\nbu ying</w>\nl ins</w>\nn ap\nreale state</w>\nli e\naf c</w>\ni ii</w>\nf ame</w>\nn r\nb at</w>\nag ent</w>\nma kers</w>\nâĢ ¼\nsec tor</w>\nop ti\nle on\ndi et</w>\npra yer</w>\nhi p</w>\nmi r</w>\nle x\nbr y\nan a\npas sing</w>\nw en\nreco very</w>\nak i</w>\npo pul\nres ort</w>\nmar ia</w>\nstu ck</w>\nread s</w>\nti er</w>\nperfe c\nnetfli x</w>\np oo\ncham p</w>\no c</w>\nre duce</w>\nwe red</w>\ncomm ents</w>\ncla im</w>\nacci dent</w>\ns ag\nh ack\nsal t</w>\nkin da</w>\nk iller</w>\ni os</w>\nz y\nex change</w>\nlec ture</w>\neng er</w>\nic king</w>\nt au\nreve als</w>\npri son</w>\nz om\ngh an</w>\nu l</w>\njour nal</w>\ni ot</w>\ntr in\njon a\ngovern or</w>\ncap e</w>\nquar ter</w>\nspec tive</w>\nimpre ssive</w>\nbab ies</w>\nt x\nm ill</w>\no y\nhar ri\njo int</w>\nsu e</w>\ncollabor ation</w>\ntren d</w>\nrevolu tion</w>\nre new\nalum ni</w>\nge tt\nsh ell</w>\nsun day\nent u\nni c</w>\ndonald trump</w>\nblock chain</w>\npaci fic</w>\nexpla ins</w>\nsp y</w>\nad voc\npar adi\nto f\nstar ring</w>\np av\nfe ed\nbr ac\nsmo ke</w>\nham p\ny am\nto kyo</w>\nsi mon</w>\nd h\ne ffici\nphys ical</w>\nn j</w>\nell i</w>\ns low\ngradu ate</w>\nameric ans</w>\nti fy</w>\nf red</w>\nap ore</w>\nfin ds</w>\nrob in\nwe t</w>\nnot ice</w>\nse mi</w>\nun ve\nk om\npil ot</w>\nscre ening</w>\nda ily\nðŁĴ Ĺ</w>\nroy al\nsp a</w>\nvo tes</w>\nn ag\nwh ate\natt ending</w>\nexper im\nad dition</w>\nk ate</w>\nsto l</w>\nm ali\nfoo t\nchri st</w>\nch an</w>\nde e</w>\nlic en\nglo bal\nmo ore</w>\nti a</w>\nbri gh\nmyster y</w>\ny ay</w>\nâĿ¤ï¸ı âĿ¤ï¸ı\ncre ati\nme chan\nclo ck</w>\ndi c</w>\nâĢ Ķ\npp er\nal ph\nthrough out</w>\nal low</w>\nre sources</w>\nselec tion</w>\nham il\nbb q</w>\naa aa\nvirgin ia</w>\ndis ney\nen g</w>\nso red</w>\ndrin ks</w>\nf ancy</w>\nconsi der</w>\nend a</w>\njan e</w>\nhand made</w>\ndu l\non tari\ni us</w>\ns ville</w>\ncolor ado</w>\nwhate ver</w>\nwhe el</w>\npromis e</w>\nne ver\ndesig ns</w>\nab ly</w>\nsex ual</w>\nvanc ou\nat i</w>\ncon vention</w>\ncul tural</w>\nsing apore</w>\npro mo</w>\nload ed</w>\ngla sgo\npp l</w>\nn oo\nke e</w>\nste m</w>\nmen tion</w>\ni do\ncru ise</w>\nri ding</w>\nbe comes</w>\nbe y</w>\nâļ½ ï¸ı</w>\ntw in</w>\ndedic ated</w>\nna sh\nde si\nwork out</w>\njen ni\ni v\ngrou ps</w>\nrela x\npho eni\nli ft</w>\nmix ed</w>\nm ck\np c\nmu st\nme tro</w>\nci es</w>\ny ar\na im\nang er</w>\ni e\nrec y\nmarri ed</w>\ndro pped</w>\neng ag\nle st</w>\nambassad or</w>\nop h\nde s\nw ick\nassi stant</w>\nnat ur\nfa il</w>\nl td</w>\nshor t\nk ap\nsha w</w>\nbi gger</w>\nrema ins</w>\ncrit ical</w>\nsur vey</w>\nco verage</w>\ner son</w>\nwin d\nn b</w>\nbil ly</w>\nlet es</w>\nac ts</w>\njim my</w>\nat lan\nal and</w>\nt c\nimport ance</w>\ndam age</w>\nf g</w>\nstor age</w>\ntw t</w>\nbon d</w>\nbal ance</w>\ncr ying</w>\npu ppy</w>\nvo te\npu sh</w>\nðŁĴ ľ\npol y\nme l</w>\nlon don\nterr ori\neffec tive</w>\ncorpor ate</w>\natl anta</w>\njac o\nnas a</w>\ngre ek</w>\nsen ate</w>\ni sh\nev a</w>\nintellig ence</w>\neffor ts</w>\nal co\nk un\nh all\ndi ag\nclaim s</w>\nfir st\nh b\nba e</w>\nv ul\npu ll</w>\nÂ °</w>\nse par\nspe ed\nvic ti\non thisday</w>\naudi ence</w>\nr ates</w>\nte ach</w>\nfil ming</w>\nbu sh</w>\nson g\ny um\nbr un\nra ine</w>\naw a</w>\npar ks</w>\nð Ŀ\nra bb\nra ch\nra id</w>\nreach ed</w>\nra il</w>\nmo ves</w>\nselec ted</w>\nfr i</w>\nra ising</w>\nom y</w>\nst ones</w>\nsu k</w>\nfranc isco</w>\ncas es</w>\ncap it\ncon fu\nw tf</w>\npo ke\nequip ment</w>\ngre g\ness ential</w>\noff ering</w>\nne x\npi es</w>\nbe c\ncre ation</w>\nchair man</w>\ncro wn</w>\nw al</w>\njohn ny</w>\nshi ft</w>\nne ck</w>\nban g</w>\nbir d\nðŁĺ ı</w>\ndu ck</w>\nre serve</w>\nde pu\nma sters</w>\nover all</w>\nno tic\nju ice</w>\nsne ak</w>\nche er</w>\ncla sses</w>\neag les</w>\nn ca\ncar pet</w>\nci vil\ncoach es</w>\nhar ris</w>\nu ps</w>\nb alls</w>\ndec or</w>\nmar tin\nro s</w>\nv ice</w>\nannoun cement</w>\nwho se</w>\nti gers</w>\nste red</w>\nc ts</w>\ndr am\nste el\nyoun g\ninst all\nsupp o\nrecor ding</w>\nde ck</w>\nse ats</w>\nl der</w>\nang le</w>\nbo t</w>\nsty les</w>\nelec tions</w>\nfor tun\nn ab\nbut ter</w>\nari an</w>\nka sh\nin ner</w>\nou red</w>\nbe ast</w>\nwe i\nic onic</w>\nexper ts</w>\nne cess\nb eng\njam es\nli a</w>\ngre ece</w>\nðŁĵ ·\nðŁĺ ģ\ngood bye</w>\nm itch\ntw ice</w>\nmumb ai</w>\nste am</w>\nru sh</w>\nmed al</w>\nne tt</w>\nfashi on\nt ar</w>\nr s\nsav ing</w>\nric ul\nl m\nsleep ing</w>\nbrook lyn</w>\nmis s\nsen ding</w>\ndisco vered</w>\nsp here</w>\nof theday</w>\nk icks</w>\nmissi ons</w>\nw right</w>\ner n\nght ly</w>\ni ous</w>\nmel bourne</w>\nstar tu\nmo ved</w>\ncar ry</w>\nd ak\nag ues</w>\nbel gi\ne ma\nway ne</w>\ndo t</w>\ner ie</w>\npe l</w>\nit unes</w>\nmatthe w</w>\nno body</w>\nest ab\ncal m</w>\nwin ds</w>\nlu c\nprep are</w>\ntren ds</w>\nexerc ise</w>\nadv ant\nðŁĴ ¯</w>\nathle tics</w>\napp s</w>\nc tions</w>\nadv ance</w>\nlaun ches</w>\nlitt le\nreal donaldtrump</w>\neliza beth</w>\ncarol ina</w>\nhu b</w>\nhi dden</w>\nn w</w>\nus er</w>\npol l</w>\ngreat er</w>\nmo st\nf ed</w>\np at</w>\nlife style</w>\ns ati\nsco res</w>\nmarri age</w>\nl r</w>\naven ue</w>\nde serve</w>\nri f\nðŁ Ĺ\nwat ch\nchampion ships</w>\ngr ay</w>\nen ni\ncot ton</w>\ng om\nwhe re\npack age</w>\nsu m\nab solu\nnew ly</w>\nfoo ds</w>\nty ler</w>\nassemb ly</w>\nmusli m</w>\nban k\nre memb\nop tions</w>\nproduc er</w>\nland o</w>\nfun ds</w>\nu pper</w>\nshad ow</w>\npro gre\nco p</w>\ning e</w>\nleg s</w>\ndetro it</w>\nhill ary</w>\njo se</w>\ngi ants</w>\nsou p</w>\nsustain able</w>\nt us</w>\nclo thes</w>\nroc king</w>\nn z</w>\nmin ne\nmat eri\nbru ce</w>\near t\nca sting</w>\nindepend ent</w>\nthou sands</w>\nta h</w>\nde cl\nveter ans</w>\nli ons</w>\nwra p</w>\nâĢ ¦\nde ss\nbl ing</w>\nst ine</w>\ne ggs</w>\no on</w>\nclo sing</w>\nz ay\nat t</w>\nbac on</w>\nfa il\nariz ona</w>\nde pre\ngho st</w>\nnew sp\nw ers</w>\nvi p</w>\nli ked</w>\nid ent\nvolunte er</w>\nad ult</w>\npu pp\ncir cle</w>\nmat erial</w>\ndegre e</w>\ngro wn</w>\nboo m</w>\ncalend ar</w>\nsu r</w>\nvie wing</w>\nath letes</w>\nch and\nre ll</w>\nasi an</w>\nen tr\nvol ley\nvicti ms</w>\nbo dy\nm ama</w>\ntrans fer</w>\nge ek</w>\nin dic\nsav ed</w>\nma i\ng ent</w>\nit s\nloun ge</w>\nk ol\nthe ory</w>\nsitu ation</w>\nis lands</w>\nar th\nz oo</w>\nfloo d</w>\nvi ously</w>\nshow ed</w>\nparliam ent</w>\nch ev\nel ine</w>\nat trac\nab ad</w>\nta il\nh rs</w>\nlu s</w>\npor tu\ngor y</w>\nprovi des</w>\nto ys</w>\nde ath\nin fe\nan ce\ng le\nli am</w>\nlo ver</w>\nhu d\ndv d</w>\nreve aled</w>\ng w\nre ment</w>\nca the\nl ying</w>\nra dio\nder by</w>\nstor s</w>\nche mi\nhosp it\nâľ ¨\n' :</w>\nilo ve\nle mon</w>\nre public</w>\ns ni\nne ss\ndo or\nre action</w>\npre gn\nfla v\nschol ar\nspo tify</w>\nis ation</w>\nvis ual</w>\naw are</w>\nspon sored</w>\njo ke</w>\nless ons</w>\nleg is\nlo ck\nsi mil\nðŁĺ ĭ</w>\nkin d\nla y\nma h\nho ping</w>\nvancou ver</w>\nas er</w>\nclean ing</w>\ngal a</w>\nthre at</w>\nla p\nach e</w>\nro mance</w>\nex pen\nre post</w>\nz am\ne pi\nmir ror</w>\no ak</w>\nad ul\nbat man</w>\ns lu\nl c</w>\nvie wed</w>\nre views</w>\nd ates</w>\nindone sia</w>\nacti vi\noff en\nlea f</w>\ni si\nag ricul\ncostu me</w>\ns ites</w>\nspir itu\nappear ance</w>\nir y</w>\nst air\napplic ation</w>\nspec tac\nic ity</w>\nski es</w>\nhand le</w>\npun k</w>\nparadi se</w>\nt n</w>\nde al\nprovi ding</w>\ndo c</w>\nrecei ving</w>\nbre w</w>\nmicro soft</w>\nÃ ¶\nfer r\nme tro\nth ail\ny um</w>\ncar ter</w>\nÃ ¡\ngent le\nbre aks</w>\ncoo per\nshow case</w>\ncu tting</w>\negy pt</w>\nbab y\nsemin ar</w>\ngl ori\nss on</w>\nfa ve</w>\nre hear\nlo tte</w>\nla dy\nal as\npre p</w>\ndeli vered</w>\nnu clear</w>\nir o</w>\nengag ement</w>\nat ta\ncon ven\nz an\ngl ory</w>\nhol ds</w>\nbusine sses</w>\nstr ange</w>\nsch e</w>\nit self</w>\ngra d</w>\nmar kets</w>\nf alling</w>\nst ats</w>\nge on</w>\nbu dd\nli s\nshe et</w>\nthi si\nco lo\ndeser t</w>\nregi stration</w>\nig n\nexpla in</w>\ninter ior</w>\nla ws</w>\nwrit ers</w>\nspr ings</w>\nk r\nfri ed</w>\nblo om\ninf ra\na o\ncre d\npa st\nline up</w>\nbo o</w>\nbre a\nboo ts</w>\ncelebr ity</w>\natt acks</w>\nbro ok</w>\nev es</w>\nex cu\ncher ry</w>\noo p</w>\nfas cin\nboy friend</w>\nse as\nn ine</w>\neffec ts</w>\npo wered</w>\nk ha\nðŁĺ Ģ</w>\nsh out\ncon dition</w>\ni j\nher o\nenter pri\nwin ter\napplic ations</w>\nsho e</w>\ng el\nbatt le\npro grams</w>\nw art</w>\nðŁĴ ¥</w>\nra p</w>\nho l</w>\ndang erous</w>\ndi a\ncoun ter</w>\nric s</w>\ni or\nk night</w>\nco at</w>\nemo tional</w>\nat ures</w>\nd as</w>\nwhe el\nfore cast</w>\ntran sport</w>\nglasgo w</w>\nking dom</w>\nprepar ing</w>\nim medi\nff in</w>\nawar ded</w>\nprin ting</w>\nro man</w>\nfight ers</w>\nany more</w>\nbel t</w>\np ine</w>\nwin e\nx i</w>\nemploye es</w>\nlogi es</w>\nal led</w>\nde mo</w>\nbirth day\nange les</w>\nlo g</w>\ndri vers</w>\nneck lace</w>\nk ath\ns it\nathle te</w>\nef s</w>\ns burg</w>\npur pose</w>\nresi stance</w>\nrele ases</w>\nt is</w>\nvari ous</w>\ndeli ver</w>\nch al\ns anc\nopp o\ncra w\nneu ro\ndr a</w>\nsuppor ters</w>\nsna p</w>\ndiffic ult</w>\nswe ar</w>\nlogi st</w>\npa th\nattemp t</w>\nà ¥\nswim ming</w>\nste ve\nhur t</w>\ninclu ded</w>\nb ap\nwa re\nðŁĴ ĭ</w>\nend ers</w>\nja ke</w>\nle eds</w>\ncli mb\nl b</w>\nim ple\nli sa</w>\nclo thing</w>\nðŁĺ İ\nd t</w>\ncom pla\nsw ing</w>\nstra w\nv als</w>\nk le</w>\nus ers</w>\nstor m\ncu ts</w>\nontari o</w>\np an</w>\nhand some</w>\ni ow\nar gu\nchec king</w>\nscotti sh</w>\nĶ ï¸ı</w>\nsi er</w>\nem ma</w>\npo d</w>\npatter n</w>\nde sh</w>\nen h\ned ward</w>\nt ing\nk h</w>\nhal f\nlincol n</w>\nmo ther\nal leg\nr c</w>\nvolley ball</w>\nd n</w>\ng ay\nall y\nle ton</w>\ngro ve</w>\nl oud</w>\nadv anced</w>\nre spec\ncli ent</w>\nsupre me</w>\nthail and</w>\nho w\ngi g</w>\nto i\ndo t\ndol lar</w>\nðŁĳ ĩ</w>\np it</w>\nr b</w>\nh n</w>\nproduc ed</w>\ngg ers</w>\nâĨ Ĵ</w>\nml b</w>\ncan vas</w>\nfin eart\nus d</w>\nin the\np son</w>\nactu al</w>\ns l</w>\nt b</w>\nip ad</w>\nen sure</w>\nu mb\nw d</w>\nsk a</w>\nmar s</w>\nk end\nf eli\nth ing\ncount down</w>\nabsolu te</w>\nr out\ndra l</w>\np y</w>\ninju red</w>\nmin t</w>\nhun ting</w>\nmm er</w>\ns age</w>\nli gh\nac ity</w>\nex pan\nmur ray</w>\nar o\nsec ure</w>\nfour th</w>\neag le</w>\nreli ef</w>\nst akes</w>\nindustri al</w>\nclar k</w>\nunder standing</w>\nsee m</w>\npl enty</w>\nsil ver\ncla u\nthre at\nsa il\npro duce</w>\nab str\nis is</w>\nb r</w>\neng ers</w>\nwor ry</w>\nbie ber</w>\ns j\njust in\nreali ze</w>\nky le</w>\nesp n</w>\nfil ter</w>\ns ch</w>\nty pes</w>\ngame dev</w>\nd ing\ntwit ter\nsoldi ers</w>\np om\ncar bon</w>\ny ards</w>\nchild hood</w>\nri ed</w>\nke l</w>\nele ph\nt ons</w>\nkey note</w>\nqui et</w>\nwi re\npo sting</w>\nis sa</w>\nrepre senting</w>\nbac ks</w>\nalex ander</w>\ncelebr ates</w>\nta ining</w>\n| |</w>\nch or\nesc ape</w>\npe ek</w>\nti ves</w>\nfiel d\nssi e</w>\nim pac\nspons or</w>\nr c\nwe dd\ncann ab\nsi des</w>\ntrac ks</w>\ncom par\ncon trac\ntechn ical</w>\nbi ble</w>\nexpl oring</w>\nsh are\ntra v\nn ate</w>\nill o</w>\nsc ru\nm ingham</w>\ngun s</w>\nof the\nsh ame</w>\nse es</w>\nca tho\nac cess\nce l</w>\nrepor ted</w>\nÂ »</w>\nmari o</w>\np ad</w>\nhope fully</w>\nou se</w>\ny on</w>\ndisapp o\nol o</w>\np itt\npa c</w>\nga p</w>\ncru sh</w>\ns g</w>\nk le\nge m</w>\nemp ire</w>\ndir ty</w>\na is\navi ation</w>\nze aland</w>\nfac ing</w>\nhigh way</w>\nd anny</w>\nspi der</w>\not ta\nðŁĺ Ħ</w>\nw y</w>\ncol ours</w>\nin fl\nco sts</w>\nolym pics</w>\nau s</w>\nh m</w>\nho ward</w>\npas ses</w>\nlau ren</w>\nmu sh\nop in\nr ho\ndisc ount</w>\noper ation</w>\nem ily</w>\nmm m</w>\ncham ber</w>\nd il\nto yo\nshi p\nsam u\npic tured</w>\nun ic\npo l</w>\nkeep er</w>\ncarto on</w>\nst en\nig nor\nn ations</w>\nn l</w>\nta sting</w>\ndeta il</w>\noffici als</w>\nmo tor</w>\nfranc is</w>\ned itor</w>\nðŁĳ ĩ\npe ts</w>\nrang ers</w>\nt g\nr n</w>\nw ri\nnic hol\ni se\nspo ts</w>\nani e</w>\nchec k\ntri ple</w>\nku mar</w>\nspe akers</w>\nic ing</w>\npre pared</w>\nab use</w>\nfriend ship</w>\nmon th\nswi m</w>\nair e</w>\nsc ent</w>\nhamil ton</w>\nindi an\nj es\nyum my</w>\nte ars</w>\nda wn</w>\ni zed</w>\nworl ds</w>\nðŁ ķ\nb illi\nst one\nn hs</w>\nba sic</w>\np or</w>\nst le</w>\nir on\nol der</w>\ncle vel\ne ing</w>\nðŁĺįðŁĺį ðŁĺį</w>\nprin ts</w>\nfir m</w>\nair craft</w>\nfin est</w>\ndevel op</w>\naar on</w>\nt z\ngra ham</w>\nown ers</w>\nfo li\nless on</w>\nqu es</w>\nbab e</w>\ncra ft\nph en\nju n</w>\nbir mingham</w>\nv ine</w>\nll er</w>\ni an\nfineart america</w>\nevol u\nst ab\nim per\nwar d\ncom ic\nwi z\ninv ited</w>\ndu ke</w>\nmat ch\npor ts</w>\nro ger</w>\ndiag no\nke pt</w>\nte st\nvis u\nr hy\nso c</w>\nto x\nb aker</w>\nsur face</w>\nco vers</w>\nman s</w>\nb its</w>\nx box</w>\nff le</w>\nn an</w>\ngar d\nh art</w>\nwat ers</w>\nv illa</w>\nre tro</w>\nlight ning</w>\ncatho lic</w>\ndemocr acy</w>\nneigh bor\npen n\ncr an\njona than</w>\nla ura</w>\nvi bes</w>\nsu b</w>\ncoach ing</w>\nclear ly</w>\nuk raine</w>\nbra ve</w>\ncommit ment</w>\nt all</w>\nmar t</w>\nra p\nmo di</w>\nsco tt\nbro s</w>\nshow er</w>\nðŁı ¾</w>\nâĺº ï¸ı</w>\ncou sin</w>\nappro ach\nbr e</w>\ncom pos\nhil ari\nphil ly</w>\ng ad\nquick ly</w>\nri an</w>\nt m</w>\nvir tual</w>\nhou ses</w>\nk t</w>\nphoeni x</w>\nw ire</w>\nff y</w>\nb unch</w>\nanc ing</w>\ntal e</w>\nsnap chat</w>\nstar ter</w>\nh t</w>\nk icking</w>\nap art</w>\nth y\n) !</w>\nblo gger</w>\nit z</w>\ncom fort</w>\nang els</w>\nw ash</w>\n\" :</w>\nar gent\nre quest</w>\nhon est\nmi ghty</w>\nbo bby</w>\nk g</w>\nro l</w>\nthou se</w>\nex po\nh c</w>\ntab les</w>\nmag ical</w>\npo sts</w>\nde m</w>\nn w\nor lando</w>\nab er\n* **</w>\nðŁĺ ľ</w>\nenviron mental</w>\ntrans formation</w>\nmi le\nw ic\nhir ing</w>\nma ine</w>\nbo ar\nr ying</w>\nti s\nnit ure</w>\ntwee ted</w>\nanton io</w>\nopin ion</w>\nfin ale</w>\ndi y</w>\nf is\nth in</w>\ntrou ble</w>\nle go</w>\nfi les</w>\nqu art\nsp a\ncurren cy</w>\ncli mate\nfan art</w>\nrail way</w>\nsp ace\nban ds</w>\ndani el\nmo tion</w>\nl eng\nhol der</w>\noc cu\nmar ie</w>\ncathe dral</w>\nbu zz\nbi es</w>\nnas car</w>\nbm w</w>\nbat tery</w>\nchar lotte</w>\ndoc tor\nzz le</w>\nse ven\nin san\nd dy</w>\nst en</w>\nlab or</w>\nthr illed</w>\nse ren\ndocu mentary</w>\nwav es</w>\ncer tain</w>\ncan did\nallow ed</w>\nninten do</w>\nstar wars</w>\nta p</w>\nhome made</w>\nd les</w>\nther ing</w>\nbre e\nemp ty</w>\npi ano</w>\npos iti\ncoun try\npor k</w>\npu ts</w>\nper ry</w>\nm atic</w>\nspot light</w>\nti st</w>\nor ities</w>\nwe alth</w>\nc p\nbar bar\ncommit ted</w>\nas sau\npro fit</w>\ne ight</w>\nhu l\nfini shing</w>\nrun ner</w>\nss o</w>\ninsp ec\nchar ged</w>\nchrist op\nlo sing</w>\nco al</w>\nho o</w>\nele v\nde le\nmo ham\ndon ation</w>\nc able</w>\nclin ic</w>\nj in\nmanag ed</w>\nter ing</w>\nâ ¬\nur ban\ndepu ty</w>\nbb er</w>\nbur n\nacade mic</w>\no tt</w>\nsta ke</w>\nit er\nsto wn</w>\nack er</w>\nadvent ures</w>\nad ams</w>\ngre g</w>\npro m</w>\nvo l</w>\nac qu\ncon gre\npa int\ncitiz ens</w>\nc all\naf ford\nv c</w>\nas ks</w>\nthe tic</w>\nindepend ence</w>\nâ Ľ\nh itting</w>\nbl on\nfu ture\nâ ı\nin no\ngen e</w>\nbo ards</w>\ndi stance</w>\nse t\nre mem\nth al\npre vent</w>\nl ang\nob jec\nsu sp\nmat t\nin duc\nbor o</w>\npi one\nre di\nvir tu\nprin ted</w>\nsco pe</w>\nshar k</w>\nsuc ce\na stron\nil legal</w>\nj ag\nc ting</w>\nine e</w>\nat o\nrob in</w>\nnutr ition</w>\nb f</w>\ndu tch</w>\nb n</w>\nfur niture</w>\nfor gotten</w>\nat ar</w>\nru p\nhy per\nbran ch</w>\ncommunic ation</w>\ndegre es</w>\non ia</w>\nun cle</w>\npromo te</w>\nor che\nwi i</w>\nj s</w>\nbut ton</w>\nma jor\nc bs</w>\nbri stol</w>\npremi um</w>\nordin ary</w>\ne dit</w>\nm g</w>\nwe ed</w>\nst even</w>\n: '\ngu s</w>\nte s\ncap tured</w>\ndru gs</w>\ndo w\nwr ites</w>\nbi shop</w>\nwhe els</w>\nali zation</w>\ndisco very</w>\nw r</w>\nrach el</w>\nne il</w>\nhy dr\ncu test</w>\nentreprene ur</w>\nkore an</w>\nore gon</w>\nul ty</w>\nperfec tly</w>\nsuppor ted</w>\nhistor ical</w>\nt wins</w>\nell y\nwe l</w>\nde vil</w>\nin come</w>\nscienti sts</w>\nde leg\nh en</w>\non i</w>\nic ed</w>\ngi o</w>\ncur ry</w>\nreve al</w>\ne g\nbuff alo</w>\nn ol\nop era</w>\ncamer on</w>\nhaha haha\nj ab\ngradu ation</w>\ncra ig</w>\nr al\ni f\norgani zation</w>\nle ge</w>\ng ang\nsu d\nedin burgh</w>\nl ack</w>\nfli es</w>\ng ate\nthr ones</w>\nq b</w>\nthe real\ne leg\npp in</w>\nc les</w>\njam ie</w>\ntn am</w>\ncryp to\nou l</w>\np ages</w>\na se\nroo ts</w>\nstu pid</w>\na did\nboo t</w>\nprote in</w>\ns ap\nsi um</w>\nsu s\nend or\nfun ction</w>\ndon t\nen na</w>\nch y</w>\nsqu e</w>\nwor ker</w>\nm tv\ne a</w>\nk an</w>\nðŁĴ ļ\nmu s</w>\nprofessi on\nt to</w>\noper ations</w>\nal lo\nc tor</w>\ninv ite</w>\nsc and\nou th</w>\nz im\nlin ks</w>\ncli ents</w>\nsam sung</w>\ndiscu sses</w>\nn ell</w>\nul tra</w>\nsome where</w>\nste wart</w>\nine t</w>\nde z</w>\nb out</w>\nfac tor</w>\nti an</w>\ntr ans</w>\njere my</w>\nd b</w>\nðŁĩ ¬\nor n</w>\ndevelop ing</w>\nspo l</w>\ncoo per</w>\nma u\nrememb ering</w>\ntre k</w>\nfamil y\nsen iors</w>\nfo ster</w>\natt ended</w>\nw ing\ntrans form\nele mentary</w>\nhor iz\nli sting</w>\nmalay sia</w>\nit ch</w>\nwarri or</w>\nphilipp ines</w>\nruss ell</w>\nm end\niniti ative</w>\ncre ep\nto ps</w>\nbr iti\na ur\nshar p</w>\nadverti sing</w>\nug ly</w>\nachi ev\nmateri als</w>\nbu g</w>\ndev ice</w>\nbon us</w>\nfac ility</w>\ncol e</w>\nnh l</w>\ny as\nplann ed</w>\npol e</w>\nexcell ence</w>\ntr ick</w>\ncon fl\nr p</w>\nachi eve</w>\nlo an</w>\nswa g</w>\njess ica</w>\nho we\np our</w>\nsc u\nz oo\nr ated</w>\ndre sses</w>\nre bel\nmex ican</w>\nco ordin\nme ss</w>\natlan tic</w>\nt l</w>\nosc ar</w>\nwal ks</w>\nphar mac\ninvestig ation</w>\n... #</w>\ncc i</w>\neas ily</w>\nmonday motivation</w>\ny ment</w>\nau ti\nfor ced</w>\nar med</w>\ncolle agues</w>\npap ers</w>\npro per</w>\nsha ke\nbu c\nle an</w>\nexhi bit</w>\ne vement</w>\nco tt\nbi z\nsp er\nk ent</w>\nsw an\n/ @</w>\ngirl friend</w>\nhaw k</w>\nâĺ Ģï¸ı</w>\nmon o\nðŁĴ Ľ\nstat ue</w>\nðŁĺ ³</w>\nra s</w>\nte eth</w>\npreci ous</w>\nt ile</w>\np am\nswi ft</w>\nv ali\nno se</w>\ndr unk</w>\nexperi ences</w>\ncome back</w>\ngen ius</w>\nwor se</w>\nsh ef\nra d</w>\ned it\nhon our</w>\nau spol</w>\nlar ry</w>\nh ire</w>\ngor don</w>\nachi evement</w>\n.... ....\nsu icide</w>\nalter native</w>\nsu p</w>\nsur roun\nsha ke</w>\nke ith</w>\npe pper</w>\ntur k\ncrimin al</w>\nbe ck\nsu m</w>\nw alls</w>\ncn n</w>\nan tic\nof fe\ncol li\nwin es</w>\nhigh light</w>\nhawa ii</w>\nemb ar\nl fc</w>\nðŁĩ ®\nm v</w>\n> >\nat mo\nwor d\ncar l\nshout out</w>\nbre wing</w>\nì Ŀ\ndo f\ns ic\nhot test</w>\ncol on\nhh h</w>\nshu t</w>\nlow ing</w>\nvolu me</w>\napart ment</w>\nagre ement</w>\nde stro\nwe e</w>\nreligi ous</w>\niow a</w>\nro d</w>\nland ing</w>\nre present\nðŁĵ· :</w>\nla s\nusu ally</w>\nh l\nc ac\nsal v\nal ong\nlaugh ing</w>\nbe ans</w>\nremin ds</w>\npha se</w>\nsome body</w>\nma sk</w>\nran ked</w>\ndest roy\nsc i</w>\nâĢ¼ ï¸ı</w>\ngab ri\nle o</w>\nro a\nfa iled</w>\nsi l</w>\nrefuge es</w>\nre vi\nr ing\nber ries</w>\ncoo kies</w>\ny y</w>\nconserv ation</w>\nsh ab\nhuman s</w>\nde termin\na in\nni all</w>\nas su\nmb a</w>\nfro m\nextre me</w>\nvic es</w>\ncommer ce</w>\nght ful</w>\nor dered</w>\nsuppor ts</w>\nre cap</w>\nv or\ndro pping</w>\ncorrec t</w>\npay ing</w>\nmean ing</w>\nn j\nqui z</w>\n\" #</w>\nbusine ss\nðŁĩ® ðŁĩ\nindi gen\ndu st</w>\nbox es</w>\nbl ind</w>\nx xx</w>\nzz y</w>\nðŁĩ¬ ðŁĩ\nss els</w>\ns ant\ndd le</w>\nhilari ous</w>\ndesig n\nwonder ing</w>\nvehic les</w>\nk re\nju d\nrece ption</w>\npar ker</w>\nÃ Ń\npri vi\nhy dro\nsof tball</w>\npol lu\nlo cked</w>\nba h\ne ar</w>\nscri pt</w>\ndi vi\nbr ace\ngeor ge\nthe ast</w>\nbel o\nj al\ntion ary</w>\ndent al</w>\nroc ket</w>\npur ch\nsh ak\nmanufac turing</w>\ne z</w>\nit is</w>\ncon cep\ntb all\nch s</w>\ndirec ted</w>\npra yers</w>\noo k</w>\nphil os\nvari ety</w>\nche ss</w>\nser ver</w>\ng and\nbal ti\nðŁĵ ¸\nsel y</w>\ncru z</w>\nspectac ular</w>\nbur ning</w>\nre present</w>\ni z</w>\nt one</w>\nmer ce\nh ell\nbed room</w>\nestab li\nbo l</w>\ncom mon\nãĥ »\nab or\nkit ty</w>\nhei ghts</w>\nre pair</w>\nwilli am\nqu ake</w>\nalab ama</w>\npopul ation</w>\nre v\nre tt</w>\ni sts</w>\nn ite</w>\nle m</w>\na ha</w>\nclevel and</w>\nr m</w>\npo ver\nob se\nmon tre\nman ia</w>\nÂ ®</w>\ncon ne\ncar ni\nsh ah</w>\nf y\nu a</w>\nsc or\nstrugg le</w>\nbo b\n' '</w>\nappro pri\ndeci de</w>\nff ed</w>\nca ster</w>\ns ort</w>\nhun gry</w>\ndra g\nØ§ Ù\ngr ounds</w>\nd w\nsli ghtly</w>\ncar din\ndead line</w>\nbron ze</w>\nweb in\nbar ry</w>\nsil ence</w>\ne uro</w>\nop tion</w>\near n</w>\nðŁĴ ĸ\nhowe ver</w>\nna ren\nna ils</w>\nbath room</w>\nv ine\nph d</w>\nmin ing</w>\ngar age</w>\n( )</w>\nshou lder</w>\ndefe at</w>\ndi r</w>\no v</w>\nliber ty</w>\nple as\nx on</w>\ncom pre\na v</w>\nj in</w>\nab les</w>\nsil ent</w>\nfam ili\nvis its</w>\ndi pl\nha bit\nmilli ons</w>\nregar ding</w>\ninnov ative</w>\nsen ator</w>\nr ts</w>\nv on</w>\nk l\nwh il\nrequi red</w>\nâĿ Ħ\nlu v</w>\npresi dential</w>\npo cket</w>\nhun dre\nsho wn</w>\nfro zen</w>\nto ward</w>\nfa st\nconfi dence</w>\nr ough</w>\nindivi dual</w>\nqu et</w>\nðŁı ½\ndom e\nfi fa</w>\nengine er</w>\nz en\nre mix</w>\nðŁĺ ĥ</w>\npl ant\nmin or</w>\nrobin son</w>\nas y\npul led</w>\ncer tain\npotat o</w>\n( :</w>\npre s</w>\noc ca\nw it</w>\nit em</w>\nsi e\nd ating</w>\nthom pson</w>\nown ed</w>\nan u\nvi e</w>\nte dly</w>\ngood night</w>\nex cept</w>\nðŁĮ Ł</w>\nira q</w>\nki e\nren ces</w>\nli p</w>\nsimil ar</w>\nsau di</w>\nvi g\narth ur</w>\npic ks</w>\nmil an</w>\nhon da</w>\nma xi\no g</w>\nste st</w>\nar ch</w>\nanaly tics</w>\nba sti\npear l</w>\nter ry</w>\nhor se\nast ro\nac ce\nlaun ching</w>\ninter national\ns no\nta sty</w>\nden ver</w>\nir l</w>\npe te</w>\ntor n\nadvant age</w>\nvar sity</w>\n\" \"</w>\nsol e</w>\ng c\nlan g</w>\ndemon str\nol ds</w>\nun ity</w>\nne ts</w>\ninsp ire</w>\ncre te</w>\nnash ville</w>\nnel son</w>\ne ter\nwal k\nhy un</w>\nm ack\ntre as\nsee king</w>\nra ge</w>\nbru sh</w>\nab and\nwhil st</w>\nco con\nh ong</w>\nshel ter</w>\ni p</w>\npossi bly</w>\nso o</w>\nit ed\nâ Ħ\nrac es</w>\nwar ming</w>\nqu in\ntele vision</w>\nmat ches</w>\nra pi\nment al\npal m</w>\njenni fer</w>\nrol ls</w>\nindi ana</w>\nb ars</w>\ncat ching</w>\nresc u\ncandid ates</w>\nfa re\nâł Ģ</w>\nse o</w>\nvie tnam</w>\nalph a</w>\nmichel le</w>\nvisi ble</w>\nre gre\nwn ed</w>\napp le\nli p\nf fe</w>\nli z\nyork shire</w>\nha il</w>\nse asons</w>\nbe gan</w>\nm d\nk c</w>\nla p</w>\nfascin ating</w>\nhel p\nur y\nu ms</w>\nnu ts</w>\nse m\nalong side</w>\nbri dge\nori al</w>\no ve\nworld cup</w>\nbriti sh\ncomfor table</w>\ni ve</w>\nhot els</w>\nfair s</w>\nhor ri\nso x</w>\nd ining</w>\nstre am\nbar ri\nss y</w>\nw im\nter ms</w>\nv u\npe re\nl ens</w>\nwal ked</w>\nr or\nl ars</w>\nshi eld</w>\ndou bt</w>\npro to\ncro ssing</w>\nme ant</w>\nmedi um</w>\nad ding</w>\ne b</w>\nche ap</w>\nfun c\npap er\nbran ds</w>\nry an\nfeed back</w>\ncol lins</w>\nun known</w>\ntro pical</w>\nsand wich</w>\nfal len</w>\nfor mu\nselec t</w>\nlo ads</w>\nansw ers</w>\nor i</w>\nmag a</w>\nd or</w>\ndu o</w>\nali e</w>\ndru m</w>\nur i</w>\nde er</w>\nsou l\nsh ut\nâĺ º</w>\nsto len</w>\ndon ated</w>\nbu zz</w>\npatri ots</w>\nha l</w>\nna sty</w>\nnomin ated</w>\nmon te\nki a</w>\nth ri\ning u\nte sts</w>\npe tro\nðŁĳ ĳ</w>\nho sts</w>\nne st</w>\nto pic</w>\npat ch</w>\nm my</w>\nhu gh\nab ilities</w>\nma the\ns miles</w>\ng b\nag enda</w>\ninsi ghts</w>\nchi p</w>\nph an\nfail ure</w>\ndg ers</w>\nha i\nsignific ant</w>\nsho ck</w>\nru ral</w>\ngl am\nfigu res</w>\npot us</w>\no ta</w>\nmini stry</w>\nappe ars</w>\nfe ar\nr h\nameric an\nh att\nson y</w>\nfi res</w>\ne di\nn ou\ne qui\nwh en\nunivers al</w>\nmad ness</w>\ni x</w>\nsculp ture</w>\nb ach</w>\nt to\nswe den</w>\net a</w>\nen to</w>\ndevelop ed</w>\nmonth ly</w>\nma ps</w>\nra h</w>\nle d\ndel ta</w>\nsa ints</w>\nis lam</w>\nben ch</w>\nfif th</w>\nv ard</w>\nso cks</w>\nwel coming</w>\nj e</w>\ntur ner</w>\nv b</w>\nad i</w>\nnor way</w>\nad y</w>\nhurric ane</w>\npor sche</w>\ntra dition</w>\nex am</w>\nnewsp aper</w>\nlu ci\na ver\nide al</w>\nd na</w>\nmadi son</w>\nðŁ §\nwit ness</w>\nac ou\ninsi ght</w>\nsi mon\nrobo t</w>\nsna ke</w>\nn bc</w>\nac o</w>\nro ss\nsh ment</w>\nreligi on</w>\nch ann\nin su\ncamp bell</w>\ninst alled</w>\nwe ather\nhor ses</w>\nol i</w>\nrober t\nk az\nðŁı Ģ</w>\nveter an</w>\nth read</w>\nquar ter\nea sier</w>\ncap ture</w>\nhi pho\nlaw rence</w>\nroman tic</w>\npas sion\ncl ay</w>\nox ford</w>\nth ai</w>\nstu dying</w>\nfi a</w>\nelec ted</w>\nmost ly</w>\nc b</w>\ntu mb\nâĢįâĻ Ĥ\nx l</w>\nsh an</w>\nfa ster</w>\nev ans</w>\nsli de</w>\nsh ri\nsee k</w>\nmi es</w>\nchemi stry</w>\npump kin</w>\ntu m</w>\n, ,</w>\nro om\nfi red</w>\nli ps</w>\npres ence</w>\naf f\nbrew ery</w>\narri ve</w>\nsw ag\nphoto graph</w>\npen gu\nchi ps</w>\nat tor\nval ues</w>\naccur ate</w>\ncon temporary</w>\nprinci pal</w>\ncannab is</w>\nari o</w>\nany where</w>\ngi a</w>\ndemocr ats</w>\nbuil dings</w>\nli ved</w>\nap s</w>\nneg ative</w>\nm are</w>\nbal lo\nli on\ndiam on\nloo k\nre form</w>\ntom my</w>\nil la\ntre ats</w>\nhundre ds</w>\nport land</w>\nwor thy</w>\nex cep\nar ia</w>\nido l</w>\nbe er\ncd n\ny u</w>\naw k\nðŁĩ ¨\nc ells</w>\nÃ ³\nident ity</w>\ndra wn</w>\nde vil\nf inger</w>\nth am</w>\nðŁĳ Ĭ\near ned</w>\nfin tech</w>\ndol ph\ntwee ting</w>\nevolu tion</w>\nðŁĵ į</w>\nest im\nm vp</w>\nn one</w>\nðŁĩºðŁĩ ¸\ntoyo ta</w>\nau x</w>\nmar in\nb old</w>\nl bs</w>\nste ak</w>\nmur phy</w>\nit able</w>\nlou is\nsol ve</w>\npi a</w>\nsk ir\nill ino\nwebin ar</w>\nban ana</w>\nlo v\nth on</w>\nvo ters</w>\nafford able</w>\ndefe ated</w>\nlm fa\nair lines</w>\nsuper b</w>\nany way</w>\ndeb t</w>\nbo red</w>\nver si\nme tal\nresponsi ble</w>\nm k</w>\ns se</w>\nf ay\ncau sed</w>\nf p</w>\nrecomm end</w>\npla za</w>\nspor ting</w>\nalli ance</w>\nau stri\nn n\nt ours</w>\nsurpri sed</w>\narti f\nth under</w>\nsur ve\nwor e</w>\nbri ef</w>\nnecess ary</w>\nz ie</w>\nash ley</w>\ndra ke</w>\nr t\nkni fe</w>\nim mun\nchar ges</w>\na the\nbri de</w>\nrep ly</w>\ng av\nbroad cast</w>\npu er\nbrace let</w>\ncap acity</w>\nharve st</w>\nid k</w>\nperfor man\nd ding</w>\nil ers</w>\npar a</w>\njam a\npro vince</w>\nch in</w>\nid ers</w>\nhar i</w>\nte aser</w>\nch en</w>\nre stor\nr at</w>\nfl at\ncol om\nðŁĴ ŀ</w>\nðŁĩ¨ ðŁĩ\nsmoo th</w>\nr t</w>\np itch\nstay ing</w>\nisra eli</w>\nt cot</w>\nper spective</w>\ndo ck</w>\nopen er</w>\nlo vel\nx o</w>\nclass room</w>\nl ington</w>\ngo al\nkenne dy</w>\nsh am</w>\nsp aces</w>\nmitch ell</w>\nhome coming</w>\nuk i</w>\nclaim ed</w>\nrecru it\ning o</w>\nmu fc</w>\nmon it\ng roo\nresi dent</w>\nper cent</w>\nper man\notta wa</w>\nint ment</w>\nan xi\nstand ards</w>\nwor ship</w>\nsche me</w>\nf x</w>\npot ter</w>\nbi an</w>\nathle tic</w>\naf gh\ns se\nsat ell\npar ties</w>\nâĿ¤ âĿ¤\ninfra structure</w>\nrela x</w>\nmo du\nwor n</w>\nsmo king</w>\ny ach\npractic es</w>\nwc w</w>\nam b\ndome stic</w>\ntay lor\nk entu\nprovi ded</w>\nmo di\nve g\n\" ...</w>\nob serv\nðŁĺ ©\nbe ard</w>\nm our\nan gry</w>\nðŁĺ ±</w>\nstartu ps</w>\nwoo den</w>\ndi ve</w>\nna il</w>\nanti que</w>\nro ses</w>\ntorn ado</w>\nm at</w>\n^ ^</w>\nsu spect</w>\nfar m\nde vices</w>\nme ga</w>\ntu l\nscholar ship</w>\nge e</w>\ndisa ster</w>\narri val</w>\npo in\nmar c</w>\nkati e</w>\nbb ed</w>\nfal se</w>\ndeser ves</w>\nric hard\nju ana</w>\nfre y</w>\ntion ed</w>\nhy bri\nr w\nsar ah\nach i</w>\nc ure</w>\no le\nmor ris</w>\nch ic</w>\nbroad way</w>\nla bel</w>\npa k</w>\npover ty</w>\ngol f\ne red</w>\nf u</w>\ner ies</w>\nbe es</w>\nalo gue</w>\nst el\nwire less</w>\nje wish</w>\nti de</w>\nblo cked</w>\nlife time</w>\nb har\nsp lit</w>\nam ster\nth i</w>\njo shu\nbr unch</w>\nha ps</w>\ns for\noo ps</w>\nka poor</w>\nhi king</w>\nsuppo sed</w>\nro of\nre as\ntra in\nti ght</w>\ntru mp\nbas ically</w>\nr r</w>\nea red</w>\nsee ds</w>\nentr ance</w>\nc p</w>\nwi e</w>\nson ic</w>\nvic tim</w>\nhe re\ne h</w>\near rings</w>\nsal mon</w>\narc tic</w>\nan ne\ndou gla\ncorru ption</w>\nhann ah</w>\nha sn</w>\nvo ices</w>\ncon ce\natt a</w>\nfle et</w>\nclin ical</w>\ndemocr atic</w>\nton y\nst ood</w>\nle f\ntwit ch</w>\na il</w>\nhonest ly</w>\nincre ased</w>\ndro me</w>\ndon na</w>\naccep ted</w>\nvisit ors</w>\nap ar\nad or</w>\np ar</w>\njer ry</w>\nra i\nbrand on</w>\nab u\n!! !!!!</w>\nme me</w>\nin gh\nglori ous</w>\nb hu\npu mp</w>\nj ol\nli ke\nfi sher</w>\nma z\nag an</w>\ndestin ation</w>\nplay list</w>\nle tters</w>\ngen u\nbr ace</w>\ncelebr ated</w>\nbann er</w>\nr he\ndra gon\nðŁĺ ħ</w>\nsig nature</w>\ngre y\nâľ Ķï¸ı</w>\nal ice</w>\nbe red</w>\nph er\nber n\nca th\nga thering</w>\nsc oring</w>\ninflu ence</w>\nsm iling</w>\nde pt</w>\nlo cal\na x</w>\nac u\nreti rement</w>\nhon or\nher self</w>\nchem ical</w>\nasse ss\ny all</w>\nfre qu\nappreci ation</w>\nac a</w>\ncho ir</w>\ncu z</w>\nso il</w>\nc il\nrepor ting</w>\nu h</w>\nenterpri se</w>\ngr at\njaco b</w>\nru m\nfe e</w>\nj ak\nsp in</w>\nbi kes</w>\nphi a</w>\nste re\np is\nbloo d\nt att\nra ft</w>\nwar ren</w>\nsh eri\nback stage</w>\nmar sh\nhash tag</w>\nther ine</w>\nre in\ngame day</w>\nguar an\nreci pes</w>\nmin ds</w>\nstron ger</w>\nissu ed</w>\nbic y\nn ak\nment ed</w>\nsc ary</w>\nu x\npre vious</w>\ntt le</w>\nth ats</w>\nac tors</w>\nu ma</w>\ntin a</w>\nbun ny</w>\npromo tion</w>\nu ss</w>\noli ver</w>\nmontre al</w>\nwhat s\nappreci ated</w>\nla kes</w>\nexcu se</w>\nkno wing</w>\npri zes</w>\nmusc le</w>\nshad es</w>\nsco t</w>\ning redi\nelectr onic</w>\nju an</w>\ncomb at</w>\ns ri</w>\ne h\nturk ish</w>\nl om\nstri kes</w>\npri son\nre e\npo pe</w>\nvi d</w>\nol dest</w>\ndol l</w>\nsw iss</w>\ncerti fied</w>\ncli p</w>\nre turning</w>\nlat or</w>\nle igh</w>\ntt es</w>\nwat son</w>\nheal ing</w>\nel im\nper haps</w>\nha ss\nk au\nd der</w>\nmou se</w>\nnew castle</w>\nindigen ous</w>\nwel comes</w>\nco le\ntau ght</w>\nno ise</w>\nappe ar</w>\njo e\ncan on</w>\nwedne sday\nu tah</w>\nc tive</w>\ndri ven</w>\ni v</w>\nc ell\nstri p</w>\nac c</w>\nfocu sed</w>\nar rest</w>\nsto cks</w>\nwo o</w>\nâ Ĺ\nnotic ed</w>\nshad o\ndi spla\nter ror</w>\nbor ne</w>\nsecon d\nque ens</w>\nwo ke</w>\nja il</w>\nno tt\ncam bridge</w>\nhar t\nse af\nfa x</w>\nac cept</w>\nâĺ ħ\ngoo ds</w>\nk at</w>\nt win\nh s\nthou sand</w>\ns ins</w>\nsu ite</w>\namp ton</w>\nar n\nrele v\nric har\nhoo ps</w>\nn bc\nclass ic\np ab\nsoldi er</w>\nde plo\nle ans</w>\ninstall ation</w>\ncla sh</w>\nle ban\nee e</w>\nti re</w>\nbelo ved</w>\nfu sion</w>\ntravel ing</w>\nne i\ncoo kie</w>\nglo be</w>\nphys ics</w>\ns q\nco l</w>\nwol ves</w>\nd l</w>\nex it</w>\n\" -</w>\nfoo tball\nle af\nster ling</w>\nhi de</w>\nminne so\nfresh man</w>\nnatu re\nindi e</w>\nsupp lies</w>\nbri s\niri sh\nink tober</w>\ndoo dle</w>\nic op\nmess ages</w>\nadul ts</w>\nrecor ded</w>\nfix ed</w>\nar do</w>\noffe red</w>\nunder ground</w>\ndr one</w>\np ine\nma inten\nand re</w>\nham mer</w>\ns x\nr ound\nhi ke</w>\nbra d</w>\nro me\nfu ll\non ey</w>\nro ws</w>\ncolum bia</w>\narchi ves</w>\nappro ved</w>\nbat ch</w>\nillino is</w>\nrecogn ition</w>\nshou ldn</w>\nfo g</w>\nnca a</w>\nke vin\nhuman ity</w>\nal though</w>\npow ers</w>\np ou\ns ar</w>\npe st</w>\nalco hol</w>\ncon sci\nphil adel\nen o\nt m\nok la\ncate gory</w>\nparticip ate</w>\naccu sed</w>\nbri ef\npo em</w>\nclu bs</w>\nconsul t\nja b</w>\nbig data</w>\namster dam</w>\nac ing</w>\ncerti fic\nn u</w>\nd at</w>\nimpro ved</w>\nand y\ncampa ig\npale stin\np ace</w>\nmo bi\nfeel ings</w>\nwol f\nbra in\npro pos\ninter active</w>\nprin ce\ninde x</w>\nc is\ncha e\npeace ful</w>\nco vering</w>\nac o\ncour ses</w>\nmon key</w>\nre place</w>\nb l</w>\nbloo dy</w>\ntal es</w>\nbrigh ton</w>\nneighbor hood</w>\ng ates</w>\nspiritu al</w>\naf raid</w>\nbre ast</w>\nb ones</w>\nðŁĳ ī\nvide o\nw au\ntou ch\ninju ries</w>\ncar l</w>\nri x</w>\nune x\nâĢ ¢\nfre d\nconsi dered</w>\nthu si\nan ch\non y\nu sa\ngraph ics</w>\nac re</w>\nðŁĺ ©</w>\ncom memor\ncom mod\ngo ti\nguar dian</w>\nstar bucks</w>\npre vention</w>\nhaha haha</w>\nadmini stration</w>\nportu gal</w>\nfac ulty</w>\nbet a</w>\nul a</w>\nal bert</w>\nbre ath\ner i</w>\nle tting</w>\ntr ic\nment ation</w>\nincredi bly</w>\nten nes\nv d</w>\nðŁĻ Ī</w>\ned die</w>\nbr ick</w>\ngr ill</w>\nbt w</w>\nwat ches</w>\nresear chers</w>\nt ney</w>\nni e\np as</w>\na ster</w>\nvi br\npoke mon</w>\nch rome</w>\ngo at</w>\npitt s\nil ly</w>\nfesti ve</w>\ny d</w>\ncan al</w>\nðŁ Ĩ\nfi es</w>\ncar los</w>\nre que\npartic i\ntra ins</w>\nsam ple</w>\ntemper ature</w>\nsym ph\npic king</w>\nin door</w>\nz ers</w>\nplayo ffs</w>\n____ ____\nap es</w>\nly rics</w>\nislam ic</w>\nperforman ces</w>\nd ick</w>\nspar k\nse as</w>\nhom a</w>\ngr ound\ndisc i\nemploye e</w>\ncom mu\nalas ka</w>\nal an\nfe ast</w>\ndg ing</w>\nban king</w>\nmanu el</w>\nslow ly</w>\ntru cks</w>\nmc car\noo o</w>\nsc rat\norche stra</w>\nindivi du\nm x</w>\nbre ath</w>\nstair s</w>\nequ ality</w>\nbla ke</w>\nloc ations</w>\ncocon ut</w>\nbalti more</w>\naa a</w>\nl c\nðŁı Ĩ\nhar vey</w>\nresi st</w>\nimmigr ation</w>\nadid as</w>\nfil i\nre f</w>\nlg bt</w>\nmo s</w>\npp i</w>\nken ny</w>\nterr or\nban e</w>\napol is</w>\ns g\nsocial media</w>\nka i</w>\nhon est</w>\nas sas\nbol lywood</w>\nâĢįâĻ Ģï¸ı</w>\nferr ari</w>\nhor n</w>\ncryp to</w>\nbo om\nmainten ance</w>\ni di\ns man</w>\nw l</w>\next ended</w>\nin sul\nve s\ngo sp\ntr i</w>\npi g</w>\ntar ge\ncel er\nst ati\nsm h</w>\nri dic\nappe al</w>\n? )</w>\ncon clu\ncos me\nshe ep</w>\nchristop her</w>\nen thusi\npo lish</w>\nme ts</w>\noun ded</w>\nsustain ability</w>\ncreati vity</w>\ncon crete</w>\nra i</w>\nali en</w>\nble ss\nte es</w>\nclu b\nro t</w>\nbo s</w>\nex ist</w>\nperfe ction</w>\nlu ck\nrock y</w>\nexpen sive</w>\nmean while</w>\nhappy birthday\npre t\nthr iller</w>\nca ve</w>\nplayo ff</w>\nsom er\nl u</w>\nle x</w>\ndef ence</w>\nam writing</w>\nhome less</w>\npro phe\nch et</w>\npast or</w>\nðŁ¤ £\nland er</w>\nww w</w>\nĢ ï¸ı\ntic a</w>\n! #</w>\no tic</w>\nrad ar</w>\npo sters</w>\npow der</w>\npo li\nha un\ntra p</w>\nbl in\nassau lt</w>\nshor ts</w>\nre y\nsh y</w>\nsqu ir\nrac ist</w>\ngar lic</w>\nfu r</w>\nremo te</w>\nsm ell</w>\nimpre ssed</w>\nfing ers</w>\nâł Ģ\ndin o\nle ment</w>\ns nu\npromo ting</w>\nstr ing</w>\nproduc tive</w>\nb age</w>\nma son</w>\nra z\ndirec tly</w>\nj k</w>\nev al</w>\nðŁĳ Ĭ</w>\ndoc tors</w>\nco w</w>\nri der</w>\nst v</w>\nre move</w>\nw u\nna than</w>\nro d\nn r</w>\n= ></w>\naffe cted</w>\ninve st</w>\nmp tion</w>\ng inger</w>\no d</w>\nagricul ture</w>\ns que\nmu g</w>\ncoun ting</w>\nke e\nmag nific\ncoo k\nani stan</w>\nroo t</w>\nplac ed</w>\nsym po\ngh ana</w>\nun d</w>\nche er\nthro wing</w>\nsecre ts</w>\nf illing</w>\nopti mi\nbutter fly</w>\nbu bb\nðŁĺ ī\nterri ble</w>\nd g</w>\nsil k</w>\nobse ssed</w>\nlo u</w>\nai de</w>\nsal ute</w>\nmon u\nphiladel phia</w>\nscienti fic</w>\ni st\nu ae</w>\ndess ert</w>\nbott les</w>\ncan yon</w>\nðŁĺ Ī</w>\ncar ib\no ther\nw ich\nre source</w>\nguil ty</w>\nun d\nle on</w>\ne ss</w>\nkan e</w>\nel e</w>\ntra iner</w>\nhe im</w>\nan te</w>\nman age</w>\nroo kie</w>\ntre ated</w>\npo ses</w>\nrs vp</w>\ncau ses</w>\naw ak\nje well\nle tt</w>\non ics</w>\ntit les</w>\ncardi ff</w>\ng aga</w>\nbu mp\nuse ful</w>\n? !\nloo se</w>\nbb ing</w>\n: :</w>\nargent ina</w>\nde bu\ncy cl\nwh el\ndis gu\nj el\nk ills</w>\nbio logy</w>\nex ter\ntra sh</w>\nbo dies</w>\ntr am\ncircu it</w>\nexpe ct\nla ds</w>\nw ells</w>\nsho t\nge e\nnaren dr\nfa stest</w>\nb ent\nb ills</w>\nmar shall</w>\nh ats</w>\nintro duce</w>\nciti zen</w>\nim possible</w>\ngi b\naz z\nnet working</w>\nr ant</w>\nthin k\nin dy\nst ops</w>\nf theday</w>\nbri an\n* *\namo di</w>\ndom e</w>\ncoura ge</w>\npac king</w>\naf fairs</w>\ng n</w>\nsi zed</w>\nent ary</w>\npol and</w>\nswit zer\nafgh anistan</w>\nw u</w>\nten der</w>\nsubscri be</w>\nmo sco\natt end\nrepublic an</w>\nhon ey\nâĢ ĭ</w>\nsi mul\nwe ster\nfoo die</w>\nor o\nmidd le\nab t</w>\nco pies</w>\nma je\nnarendr amodi</w>\nty pical</w>\ninspir ational</w>\nvit am\nwis con\ncu bs</w>\ntiv ity</w>\nh ali\ne ars</w>\nk ay</w>\nd are</w>\nmari juana</w>\ncu rious</w>\nan ia</w>\ntom ato</w>\nre mind</w>\nðŁĩ ·</w>\nsc ared</w>\ncou p\npo et</w>\nland ed</w>\nri d</w>\nwra pped</w>\nmor ri\nclimb ing</w>\ne ws</w>\nfe eding</w>\ncon tra\ntho logy</w>\ngri d</w>\nti vely</w>\nread er</w>\nla ser</w>\ndi ving</w>\ndi g</w>\nlat in</w>\nti ed</w>\nshake spe\no ci\nad m\nshow ers</w>\nchu ck</w>\nmar cus</w>\noo s</w>\nkne e</w>\no live</w>\now l</w>\ndy lan</w>\nan no\ng ym\ndeci sions</w>\nwell ness</w>\narri ves</w>\nsati s\nchri s\nthur s</w>\nðŁ¤ £</w>\ninter views</w>\nthank you</w>\nswitzer land</w>\nover night</w>\njourn alist</w>\nser ves</w>\nvol can\n.... ...</w>\nplo t</w>\nnic ol\ncar rying</w>\nmag ne\ntre asure</w>\nex p\nbe ver\nðŁĺ ¢</w>\nmar ty\nmo le\ndon ations</w>\nrecogni zed</w>\nb h\ndu s</w>\nsh ann\nal do</w>\nsuccess fully</w>\nent e</w>\nðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ\ncab inet</w>\ncu is\ntit led</w>\nd as\nso l</w>\nstrate gies</w>\ndeli vering</w>\nad ds</w>\nani an</w>\nne ther\nðŁĴ ĥ\ncon tain\nsu its</w>\npa irs</w>\nto dd</w>\nrel la</w>\nro pe</w>\nci o</w>\ncro p</w>\npaint ings</w>\nsu z\nre jec\nbu st</w>\nd h</w>\nfra ud</w>\nm h\ncontro l\nje al\ndestroy ed</w>\nal lows</w>\nwo ol\nminneso ta</w>\nom en\nj u</w>\nsympo sium</w>\nd af\nlim it</w>\naccoun ts</w>\nload ing</w>\ninter n\nre solution</w>\nhol land</w>\nqu al\nmeet ings</w>\ngra ve</w>\ncam ping</w>\nv am\nre nov\nliber al</w>\nam ber</w>\ngre e\nhu mb\nfe ver</w>\nel ing</w>\nbroo ks</w>\nà ²\nbe th\nad ed</w>\nal t\nro e</w>\nperform ed</w>\njo sh\nfrank lin</w>\nnic ole</w>\nde ss</w>\nbb s</w>\nm g\nnet works</w>\nmin im\nal t</w>\nweap ons</w>\ngu y\njas on\ng ha\nharb our</w>\nat on</w>\npra ise</w>\nkentu cky</w>\nbel fast</w>\nst icks</w>\nblo ss\nho pes</w>\nan thro\nfamili ar</w>\nwa it\nch ile</w>\ndepre ssion</w>\nla x</w>\nje ts</w>\nle ice\nrecei ves</w>\nsi er\nan k</w>\nde x\ninde ed</w>\nfle xi\nfab ric</w>\nlam b</w>\nhel icop\nam anda</w>\nâĢĶ âĢĶ\ncompe te</w>\nsn ack</w>\ntechno logies</w>\nsy rian</w>\nmom s</w>\nmu ham\ncho sen</w>\nan at\ndev on</w>\nshar ks</w>\nre t</w>\nfundra iser</w>\nselfi es</w>\nst ations</w>\ncommunic ations</w>\ntennes see</w>\ntu tor\nro t\nvalu able</w>\ndynam ic</w>\nnur se</w>\ni ed</w>\nearth quake</w>\ndeser ved</w>\na ve\nsar a</w>\nstre tch</w>\ndougla s</w>\nne pal</w>\nÃ §\nob viously</w>\nd ame</w>\nra pe</w>\nany body</w>\nk w\npat rol</w>\nhol ders</w>\nh anna</w>\ninfo graphic</w>\nec o</w>\nbe ating</w>\nstan ley</w>\nbo ats</w>\nri bb\ne z\nwit ch</w>\ninv a\nac id</w>\nboar ding</w>\n- @</w>\ngi l</w>\nda ve\ncare ers</w>\nopp os\nl loy\nin ter</w>\ndo pe</w>\nre su\nj agu\nsh ade</w>\nin dy</w>\non ist</w>\nrel ations</w>\nag en\nab le\ninci dent</w>\nme ter</w>\nshar ma</w>\nid r</w>\npro ve</w>\nimmedi ately</w>\ntro ops</w>\nam an</w>\ng low</w>\ngaz a</w>\nblo cks</w>\nperson al\nchron ic\nall er\nsi d\nsh r\nwhats app</w>\nlu cy</w>\nar chae\nho u</w>\njourn alism</w>\nour selves</w>\ngo t\nthe med</w>\nshap ed</w>\nwe ak</w>\ncas ual</w>\nleng th</w>\nsla m</w>\nab bey</w>\ne v</w>\ncoun ter\nest a</w>\nreci pi\ncha pel</w>\nexpan sion</w>\nsel f\nsuff ering</w>\nsp ice</w>\nn z\nsp art\ndesp er\nboo king</w>\nquart ers</w>\ny on\nðŁĴ Ĺ\np k\ncontinu ed</w>\n- #</w>\nman hatt\ntal ked</w>\nsh en\ncom bo</w>\nhybri d</w>\nje ans</w>\nliqu id</w>\nse al</w>\nre tweets</w>\nac celer\ncollec tive</w>\nt as</w>\n: ))</w>\nprofession als</w>\nra w\no tt\nsu san</w>\nir ing</w>\nokla homa</w>\nre ven\nsurvi val</w>\ncre ator</w>\ntran sit</w>\nst ac\nsur f\ni k</w>\ned iting</w>\nch illing</w>\nbai ley</w>\nste al</w>\nra ble</w>\npa rent</w>\nhun ger</w>\nsn app\ncollec t</w>\nphilos oph\ndedic ation</w>\nc f\nc m\nle ep</w>\nrepe at</w>\nre ha\nun fortun\na er\na ero\nabstr act</w>\nmon itor</w>\nag ents</w>\nbu l</w>\nsci ence\nharb or</w>\ndrag ons</w>\nfloo ding</w>\nac compli\nd ash</w>\njuli a</w>\nthe red</w>\ntues day\ncy ber</w>\nb low</w>\nta ined</w>\nle m\nrefe rence</w>\npp o</w>\nne goti\nchar le\ncon nor</w>\nau lt</w>\naccess ories</w>\ncommissi oner</w>\nrain y</w>\nre ar</w>\nadvis ory</w>\nluc as</w>\nma id</w>\nco al\nk av\npol o</w>\nðŁı ¾\ntran sport\nmar gare\nstraw berry</w>\nbur ns</w>\ngre ens</w>\nne v\npartici pants</w>\ncol in</w>\nbelgi um</w>\ncol our\nin form\nd ell</w>\nbr on</w>\ncal y\nkick off</w>\nstrate gic</w>\nre union</w>\nhon ors</w>\nli b\negy p\nâŃĲ ï¸ı</w>\nhy po\nsi zes</w>\nregi stered</w>\nbet es</w>\nrelax ing</w>\nbloo m</w>\ninten se</w>\nvalent ines</w>\ninsan e</w>\nw wii</w>\np x</w>\ntri o</w>\nbla de</w>\nwiscon sin</w>\ncon e</w>\nplat in\nali ze</w>\nra ven\nincre asing</w>\nindi ans</w>\nil ian</w>\nbl u</w>\nrabb it</w>\nexten sion</w>\nje f\nau di</w>\nfer ry</w>\ns ell\na day</w>\nus b</w>\nswe at\ncham pag\nmetho d</w>\nmem ph\nassi st</w>\ns by</w>\nca pe\nremo ved</w>\nmag n\nv t</w>\nr ams</w>\nf bi</w>\ntack le</w>\nphe w</w>\nh on</w>\nmotor cycle</w>\nsu spec\neleph ant</w>\nsub ject</w>\nlet te</w>\nda iry</w>\nwhe at</w>\nawk ward</w>\nac t\ntro l\nmit ted</w>\nzay n</w>\nsheri ff</w>\nene my</w>\ncon s</w>\nke tt</w>\nbul ls</w>\nev alu\nbt c</w>\nsatell ite</w>\nho lo\npor ter</w>\ndia betes</w>\nbet ter\nrele asing</w>\nsur f</w>\n: -</w>\nse basti\ncollec ting</w>\nen cing</w>\ne thi\ngo ds</w>\nal ley</w>\nhealth y\nm ills</w>\nsma sh</w>\nco pper</w>\ncr ack</w>\nread ers</w>\nsp ac\nlicen se</w>\nbas ket</w>\nbang la\nen tic</w>\nom i</w>\nm ere</w>\nsi vely</w>\nanim ation</w>\nlan es</w>\ndent ally</w>\nchill in</w>\nfi e</w>\nk aren</w>\ndep th</w>\nli pse</w>\nn g\nri p\nmel o\nsand y</w>\nðŁĳı ðŁĳı\nvin cent</w>\nnu t\nhu g</w>\nwho le\ncre ates</w>\n? ???</w>\nâĿ¤ï¸ı âĿ¤ï¸ı</w>\nbak ed</w>\nup grade</w>\nrober ts</w>\nhar a</w>\ncarib bean</w>\nauth entic</w>\nmb s</w>\nmosco w</w>\nattor ney</w>\nwi ki\nch lo\nhu ll</w>\ncor k</w>\n\" !</w>\nsty lish</w>\nðŁĵ¸ :</w>\ndi ary</w>\nimpro ving</w>\nex pand\nbri ght\npollu tion</w>\nk nights</w>\nperson ality</w>\nchec ked</w>\nfac ilities</w>\nz el\nbow ling</w>\ngu er\nðŁİ Ĥ</w>\non going</w>\nun its</w>\nhoo k</w>\nbe ck</w>\nconfl ict</w>\nto dd\nfar ming</w>\neduc ational</w>\nk ak\ncla y\nstro ke</w>\nbel ly</w>\nexplo re\nmill enni\nth m</w>\nloo p</w>\nsm s</w>\nconsi st\ncir ca</w>\nbr yan</w>\nd ab\nyoun ger</w>\nsoli dar\npp a</w>\nexperi enced</w>\nb ella</w>\nbo ard\nshef field</w>\nsteph en\nconsu mer</w>\nsub mit</w>\nspon sor\nt ang\nag gre\ncomb ined</w>\ntrac king</w>\nsand ers</w>\nb az\nsurvi ve</w>\nfer red</w>\nequ al</w>\nse p</w>\nre ed</w>\nstr ong\npriv acy</w>\nst ap\nun g\nac ry\npa sta</w>\npir ates</w>\nag er</w>\nfair y</w>\ndu p</w>\nintroduc ed</w>\nwi p</w>\nlet s\nspr ay</w>\nðŁĵ º</w>\ngre w</w>\na sts</w>\npitts burgh</w>\nnew york</w>\njo ey</w>\nlau ren\ntra de\nch op\npi pe</w>\ncla ire</w>\nbehavi or</w>\nv ap\ncre ws</w>\nlap top</w>\nðŁ¤ Ĺ</w>\nche ster\ndisci pl\nd f</w>\nout doors</w>\nk s\ngo ver\nsuper star</w>\ncas ino</w>\nfar mer</w>\n; -)</w>\nre turned</w>\nðŁı Ī</w>\nma il\nroa sted</w>\nco sta</w>\nv ill\npe z</w>\ngard ening</w>\ndistribu tion</w>\nsh ining</w>\ninve stors</w>\nra sp\ndec ades</w>\nreali zed</w>\nbar n\np ti</w>\nst able</w>\nut d</w>\npan thers</w>\nm ens</w>\nb n\nca de\nbu cket</w>\nyn n</w>\nwhen ever</w>\nwa ke\nda is\nber nie</w>\nlo dge</w>\nju lie</w>\natmo sphere</w>\nðŁĺĺ ðŁĺĺ</w>\nmajor ity</w>\npar ti\nexc it\ncu t\nme h\nmusli ms</w>\nbe gun</w>\nfli ghts</w>\nvene ss</w>\nce me\npo sing</w>\nso le\ng ou\ndark ness</w>\npe ach\ncel tic</w>\nauth ority</w>\ngrand ma</w>\nful ness</w>\nsmi th\nspeci fic</w>\ngar cia</w>\nco ins</w>\ngood ness</w>\naldu b\nrecru iting</w>\nden nis</w>\ngar y\nsle eve</w>\nweap on</w>\npl z</w>\ndisco ver\nharri son</w>\nrecruit ment</w>\nja i\nch im\ncom pared</w>\ntom s</w>\nmo thers</w>\nam y\narchi ve</w>\nt ask</w>\nben jam\nse g\nlaw yer</w>\nal um</w>\ninve sting</w>\nmi e</w>\nche z</w>\nj p</w>\na ke\nfl am\nwall paper</w>\nâĻ¥ ï¸ı</w>\nt ton</w>\nche st</w>\nfavor ites</w>\nwe igh\ncoo lest</w>\nr ating</w>\nrelev ant</w>\nlo gan</w>\nma ple</w>\nrun ners</w>\npri or</w>\npeop le\nma ur\nterrori st</w>\nte sted</w>\ncarni val</w>\nsu spen\nme asure</w>\nm v\ncyber security</w>\napp ren\nterror ism</w>\no z\nv ital</w>\nni es</w>\ngon z\nfun ded</w>\ntwi st</w>\nassess ment</w>\ndie sel</w>\nen for\ncolum n</w>\nad dressing</w>\nca sts</w>\npay ment</w>\nx ton</w>\nfi er</w>\n, '</w>\nla st\nne e</w>\nun less</w>\nclo se\nsk ill</w>\ncuis ine</w>\nfun eral</w>\nti les</w>\na un\nk ru\nrelation ships</w>\nðŁĴ ¯\nev ent\nâĢįâĻĤ ï¸ı</w>\nkind ness</w>\npro posed</w>\nacou stic</w>\na es\ndefen der</w>\ndan ce\nh tt\nw at</w>\nvo y\nðŁ¤ ĺ\nau s\ncli ff</w>\nsear ching</w>\nbeauti fully</w>\nin qu\nat l</w>\nspeci alist</w>\nðŁĲ ¶</w>\nda i</w>\ntra ils</w>\nclass ics</w>\ninst ant</w>\nv ous</w>\nre venue</w>\nmar ch\nkir k\nfr inge</w>\nfire works</w>\ntri via</w>\nâĺ ħ</w>\ntr action</w>\nwal ter</w>\nmo to\nl ily</w>\natt itude</w>\ncli mb</w>\nsc an\nsav ings</w>\nc w\nfa ith\ncred its</w>\nab led</w>\ngra ff\nauto graph\nhe he</w>\nran ch</w>\nha d\nro gers</w>\nðŁĮ ¹</w>\nf in</w>\nre qu\nfol k\nad ditional</w>\nlyn n</w>\nu ber</w>\ndol lars</w>\nlo gic</w>\nwor th\nso m</w>\nthe sis</w>\np ound</w>\nbi c</w>\nst ur\ncer am\nspen cer</w>\nen tered</w>\nv amp\norgani zed</w>\nâľ Ī\npp s</w>\ntr on</w>\nmerce des</w>\nno ti\ncompet itive</w>\ndo w</w>\nous ness</w>\nvic tor</w>\ngr illed</w>\nna i</w>\npu tin</w>\nab ra\nbl ame</w>\nalex and\nanim al\ndec ent</w>\np ent\ninter ior\n:' )</w>\nbut ler</w>\nbal let</w>\nðŁĴ Ķ</w>\nalbu ms</w>\ndown s</w>\nla d</w>\nsi r\npla in</w>\np ers</w>\nblon de</w>\ndis c</w>\npaki stan\nse ment</w>\nga a</w>\nw age</w>\nch as\nman i</w>\nco ps</w>\nterr it\nlo l\nlau ghter</w>\nri vers</w>\nmagnific ent</w>\nlam p</w>\nw b\nnew sle\nchar ts</w>\nble ssing</w>\np unch</w>\nlon gest</w>\nfl oral</w>\ncu tie</w>\nfare well</w>\nsto pping</w>\nmb b</w>\nbu d</w>\nchee se\nde cla\nsi m</w>\nmc donald</w>\nde ter\nyou th\nt ch\nfre der\nkin dle</w>\nfer n\nat or\nas leep</w>\np ond</w>\nspr int</w>\np ounds</w>\nla zy</w>\ngh e\nfundra ising</w>\ndead ly</w>\ngran de</w>\ndou g</w>\nhe y\nlin da</w>\nconsi dering</w>\ni um</w>\ngol den\nvi k\nauth ors</w>\ndi ss\nu ally</w>\nappropri ate</w>\nmor ning\ny le</w>\nhon oring</w>\nfoli o</w>\nbe c</w>\nre bec\nfin land</w>\nformu la</w>\ncorn wall</w>\nsh ay\ncau sing</w>\nbl end</w>\nsig nal</w>\nt ent</w>\nkash mir</w>\nnation als</w>\nhar mony</w>\nsc out</w>\nacce ssi\nhe ight</w>\nmedi eval</w>\nimpro vement</w>\nke es</w>\nprac tical</w>\ncar d\nde par\nhu n</w>\nom ing</w>\ncal gary</w>\nste l</w>\nbu bble</w>\ngur u</w>\nma h</w>\nunex pe\nn h</w>\ned a</w>\nme at\ni ge</w>\nsi o</w>\ngod dess</w>\nin ches</w>\ntun es</w>\nbr itt\nsti on</w>\nra j</w>\nâĻ «</w>\nmer cy</w>\nðŁĴ ĺ</w>\nsen ds</w>\ni est</w>\npol ici\nval e</w>\nreduc ed</w>\nas ap</w>\nvi jay</w>\ndefen sive</w>\ncelebr ations</w>\nri ders</w>\nmed itation</w>\nhar mon\ng ing\nÂ ¡</w>\nprogram ming</w>\nin au\nsud den\nm h</w>\nreplac ement</w>\nsk u\nj ar</w>\ngra des</w>\nta st\nk itt\nbrand ing</w>\nk aw\nboo t\nf ought</w>\np ays</w>\ng f</w>\niz ation</w>\nho p\nk k</w>\nactivi st</w>\nv end\ncoast al</w>\ncha os</w>\nðŁĶ ´</w>\nse me\nbill board</w>\nli fting</w>\ncu mb\nsc al\nðŁĸ ¤</w>\nstru ck</w>\nl v\nindie dev</w>\nbeat en</w>\njun gle</w>\nal right</w>\ndestin y</w>\nm ing\nk c\nch ances</w>\nom an</w>\nq atar</w>\ncra f\ntra ined</w>\npri x</w>\nchar m</w>\no tive</w>\ns mu\ne c</w>\nand ers</w>\nhand ed</w>\nal ban\ncertain ly</w>\narri ving</w>\ni ze</w>\nsa i</w>\ntr ack\npain ter</w>\nhu mble</w>\nappo intment</w>\nhead line</w>\nmanag ing</w>\nmo d</w>\nas pe\nandre a</w>\nÃ ¤\nethi op\nun ited\nexi st\nbal i</w>\nk ad\nn t\nd red</w>\nre x</w>\nrecogni ze</w>\ntam pa</w>\nbe ers</w>\nati a</w>\nhe els</w>\nno te\ntransport ation</w>\ntur tle</w>\nre de\nhipho p</w>\nsp icy</w>\nsp urs</w>\nâ¬ ĩ\ncor p</w>\nther n\nto ast</w>\nhur ry</w>\nproper ties</w>\nma ge</w>\nmar co</w>\nele ments</w>\nbou ti\nsyn drome</w>\nms g</w>\ndevelop er</w>\ngra ders</w>\nhe im\nre sil\noff ices</w>\ndel ay</w>\ndi men\nvin tag\nbarbar a</w>\nðŁĺ ±\nvene zu\ncu lar</w>\nfac ed</w>\nbar n</w>\nðŁĺ Ĩ</w>\nsurvi vor</w>\nwor m</w>\nconfu sed</w>\npassion ate</w>\nØ ±\nidenti fy</w>\nelectr icity</w>\nsou ls</w>\nbrad ley</w>\nrepor tedly</w>\nlun ch\nshel f</w>\neli a</w>\nswee t\nsmoo th\nemplo yment</w>\nam el</w>\nmanhatt an</w>\nste am\noun ts</w>\nye p</w>\nli ving\nun e</w>\ndescri be</w>\nca res</w>\nman ila</w>\nsha wn</w>\nac ted</w>\nbas h</w>\nst even\nre st\npet ition</w>\ndiv ine</w>\nwel sh</w>\nrac e\nplatin um</w>\nðŁĮ ¸</w>\np b</w>\nextra ordinary</w>\nsolidar ity</w>\nm all\non ion</w>\nschedu led</w>\ngame of\nfer gu\nde ms</w>\nnor m\np k</w>\ntri als</w>\npolici es</w>\npubli shing</w>\nst ole</w>\nfron t\ncharac ter\nvan ia</w>\nex ce\nsti e</w>\nsc a</w>\nresi dential</w>\nsa iling</w>\nðŁĶ¥ðŁĶ¥ ðŁĶ¥</w>\nspons ors</w>\nth ick</w>\nchampag ne</w>\nshe pher\ncontinu ing</w>\nven ice</w>\nper th</w>\nna p</w>\na ster\ny ak\nun limited</w>\ncho ices</w>\nne o</w>\nhi v</w>\nrepor ter</w>\nbru ssels</w>\nf old</w>\ndy s\nse mi\nla wn</w>\nit alia</w>\nwi fi</w>\nas k\nem ed</w>\nfr ame\nmonit oring</w>\nste ad</w>\ni da\ngr in\nis a\nfli p</w>\nre stric\noffen sive</w>\natta ched</w>\ndi sh\nwh y\nphilli ps</w>\ngre et\np als</w>\nmix tape</w>\nv ou\nfiel der</w>\nspar k</w>\nalber ta</w>\ng len</w>\nca sh\ns ri\nu ri\nro dri\nentreprene urs</w>\nclimate change</w>\np sy</w>\nd le\nem ents</w>\nlin ked</w>\nnether lands</w>\nacci dentally</w>\noppos ition</w>\nvel vet</w>\nra ys</w>\nc w</w>\nom o</w>\nm f</w>\nlmfa o</w>\nnewsle tter</w>\n: )\ntoi let</w>\nliter ature</w>\ndi sp\nphili p</w>\nuni form</w>\nsudden ly</w>\nhead er</w>\ncool er</w>\n-- -</w>\nprou d\nbri g\nnis san</w>\nscienti st</w>\nj ah</w>\ncon centr\npac ks</w>\nappo inted</w>\nso ap</w>\neng age</w>\ncho se</w>\nâĻ ¡\nse tup</w>\njeal ous</w>\nhar ry\ng ation</w>\ntun nel</w>\nte mp</w>\nosc ars</w>\ndec ade</w>\nrecomm ended</w>\nchild ren\nab a</w>\nanxi ety</w>\nve ments</w>\nsal on</w>\npho too\norgani z\nmach ines</w>\nab s</w>\nvil le\nhy pe</w>\nti ff\nemer ging</w>\nav geek</w>\n[ #</w>\ncontribu tion</w>\nbra dy</w>\nre sto\ng mail</w>\nfit z\nphoto shoot</w>\nhel met</w>\nh t\neleg ant</w>\nug anda</w>\nnur sing</w>\nor leans</w>\npen n</w>\nna h</w>\nfoo tage</w>\nem a</w>\nw o</w>\nw ad\nconcer ns</w>\nve re\nre mark\nwho ever</w>\nstr ang\np t\nqu it</w>\nsh ang\nhistor y\ns ick\nperman ent</w>\nill ness</w>\ncol d\nvisi on\nhe m</w>\nar row</w>\ncon vic\npin k\noc cup\nbal d\nex hau\nu of\nam o</w>\non t</w>\nãĥ »</w>\nadop t</w>\nla id</w>\nsmo ked</w>\ninter pre\ness enti\nassoci ated</w>\nb d</w>\nbb y\nfi er\ninst all</w>\ndipl om\ncon diti\nc f</w>\nw ak\nany a</w>\ngr aci\nfi sher\ns ss</w>\nap r</w>\nil it\nmus ician</w>\nsymph ony</w>\ncor d</w>\nh ack</w>\nle gi\nl v</w>\nbless ings</w>\nhum or</w>\nsc ra\ne ti\nmin ster</w>\ntrav elling</w>\nbu sh\njewell ery</w>\nli me</w>\n!! !\npregn ant</w>\npe e</w>\nlo b\ncap ital\nip a</w>\npen cil</w>\nla bor\nduc ks</w>\nprou dly</w>\nwedd ing\ndere k</w>\nm w</w>\npe g</w>\nvalent ine\nan gu\nre treat</w>\npro spect</w>\ndang er</w>\nvul ner\nup set</w>\n, #</w>\nsr k</w>\nx im\nthur sday\nn fl\nkis ses</w>\nre ds</w>\ncr ack\nre ward</w>\nc u</w>\nko k</w>\nme te\naband oned</w>\nit t</w>\nme als</w>\nsp ell</w>\nstan bul</w>\ndel ays</w>\nru m</w>\nle op\ngu m</w>\nno va</w>\nsuper man</w>\nch ick</w>\nm is</w>\ndram atic</w>\ninno cent</w>\nr ounds</w>\nre c</w>\nauti sm</w>\nbangla desh</w>\nmor al</w>\nmo vie\nsp oo\nk la\nâĥ £\nou ting</w>\nmess i</w>\nab road</w>\nloo kin</w>\na im</w>\nq i</w>\nst ack</w>\ncolla ge</w>\nà ¯\nhud son</w>\nsc an</w>\nho e</w>\nch au\noc cur\ncomm ander</w>\nho les</w>\nðŁİ Ħ</w>\nbi as</w>\nv on\nstick er</w>\nma k\nresponsi bility</w>\ncolum bus</w>\nsa int\ned mon\nrac ism</w>\nfar ms</w>\nw en</w>\ngul f</w>\nmay o</w>\n!!!! !!!!\ncorpor ation</w>\nba chel\nel a\ninter nal</w>\nje ep</w>\nfol lows</w>\ndi alogue</w>\nde rer</w>\nsmart phone</w>\nhe len</w>\nrich mond</w>\nequ ity</w>\ns land</w>\nb g</w>\nne ar\nav i</w>\nmemph is</w>\nwe ir\ndiscu ssed</w>\nbad ge</w>\np up</w>\nmi stake</w>\nphen omen\nun ite</w>\nðŁ Ľ\nde pic\nri des</w>\nin augu\nn at</w>\nsof twitter</w>\ncomb ination</w>\ngosp el</w>\nâļ ¾\nad mission</w>\nretro gaming</w>\nðŁĲ ¾</w>\nsch u\nmb o</w>\njun ction</w>\nal arm</w>\nà ¦\ngr ac\nkh ali\nk ul\nm ale\ncap tion</w>\nwi sh\nte re\ncor ps</w>\nru bber</w>\nplay station</w>\ner in</w>\neffici ent</w>\nl or</w>\njo kes</w>\nin ary</w>\nnor man</w>\nlu is</w>\ninaugu ral</w>\nch ed\nâļ½ ï¸ı\ndi p</w>\nto e</w>\nstr at\naa c</w>\nam u\npi er</w>\nco tt</w>\ncomm and</w>\ntt en\nsn oo\ncu be</w>\nclo ses</w>\nclass ical</w>\ns word</w>\nexpre ssion</w>\nreach ing</w>\nn app\nco st\naffe ct</w>\nric o</w>\ngi f\nbrea the</w>\ntri be</w>\nor tho\nh ay</w>\nl g</w>\nfri es</w>\nn m</w>\nhi ding</w>\nrichar ds</w>\nen de\nmic ro</w>\ncapit ol</w>\ncop y\nro m\nregi me</w>\nmary land</w>\ntax i</w>\ndi al</w>\nembar ra\nun believ\nch t</w>\nv s\nelim in\no dd</w>\npen ny</w>\nsound track</w>\nl ings</w>\ntrans ition</w>\nrema ining</w>\na is</w>\nmali k</w>\n? !?</w>\nrand om\ndef end</w>\nul tra\ntru m</w>\ndanc er</w>\nst ol\ndri ve\na ver</w>\nro ast</w>\ndefin ition</w>\nse an\nexcit ement</w>\npartic ul\nsu rely</w>\nsh av\nber y</w>\ndi shes</w>\ncom m</w>\nis ol\ni am</w>\nob li\ngho st\nhugh es</w>\nchi efs</w>\nb as</w>\nconserv ative</w>\nspeci al\nfe min\nsh ri</w>\nn ancy</w>\ninte l</w>\ntu ne\nðŁĩ ª\njo el</w>\ngg le</w>\nmo to</w>\nðŁĺ Ķ</w>\nbu ck</w>\nd ag\nantic ip\nmont ana</w>\ngu id\nfro g</w>\nec raft</w>\nop e</w>\ndri ves</w>\nnu mer\nx y</w>\ncolor ful</w>\nwednesday wisdom</w>\nillu min\nbey on\ninau gur\ndeep ly</w>\npre fer</w>\nfor tune</w>\ncoo ked</w>\nti ble</w>\nâĺ ķ\nswe ater</w>\nit ter</w>\ntt y\nu i</w>\ngi e\ncom plic\n~ ~\ntax es</w>\ncu ps</w>\ndi verse</w>\nsam anth\nâłĢ âłĢ\nba king</w>\nsy mp\nwa i\nbe half</w>\nmer cur\ntravel s</w>\nðŁİī ðŁİ\nor ia</w>\neng aged</w>\njump ing</w>\nreti red</w>\nn aked</w>\np uni\nspeed way</w>\nsci ences</w>\nrehear sal</w>\non ym\ndy ou\npl ates</w>\nr ati\nkri sh\njaz z\ncar ol</w>\nra f</w>\npen alty</w>\ntim eline</w>\nru by</w>\nengine ers</w>\nra f\nbel le</w>\ndo se</w>\nche on</w>\nesc ap\nme g\nran k</w>\nor d</w>\nme gan</w>\nmer ch</w>\nec lipse</w>\nâĺº ï¸ı\nple dge</w>\nkir k</w>\nper si\nleice ster</w>\nsa k\nw k\nsaf ely</w>\nyy y</w>\nje t\npromis ed</w>\nj c</w>\nen ne</w>\nno ah</w>\nre no\nre a</w>\nðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ</w>\ntra il\nðŁĳ Ģ\nf d</w>\nsoo o</w>\nri min\nw k</w>\nà¸ ²\ni al\nx ox\nbis cu\nd ale\nfan dom</w>\nparticip ating</w>\nfla g\nprivi lege</w>\npe ach</w>\nmach ine\nbo ston\ngro ss</w>\no g\nmir acle</w>\nadop tion</w>\nu ss\nmon sters</w>\nbe ij\nclar ke</w>\npu shing</w>\npra ying</w>\nar o</w>\nd n\nell is</w>\napol lo</w>\nod ds</w>\nrefuge e</w>\nto w\nb p</w>\nðŁĩ¬ðŁĩ §</w>\nh end\napp eared</w>\nmemb ership</w>\npe an\ndu m</w>\nviol ent</w>\nv y\npotat oes</w>\naw w</w>\ngreet ings</w>\nt ts</w>\nac on</w>\nsh ane</w>\nphotograph ed</w>\ncra b</w>\ntemper atures</w>\ncu ba</w>\nc fc</w>\nwel com\nhe l</w>\nin nings</w>\nm k\nco de\nkno ck</w>\ngra ss\nswe dish</w>\np ta</w>\nick y</w>\nv at\nlin ing</w>\ns q</w>\nsa p</w>\nar c</w>\nannoun cing</w>\nsk ins</w>\ncit yof\nbr ing\nco x</w>\ngam er</w>\nit arian</w>\ni da</w>\nh d\nros se</w>\nsad ly</w>\nge o</w>\nâļ ¡ï¸ı</w>\ntag s</w>\nfa ther\nchan ge\nl ance</w>\nwhis key</w>\nadel aide</w>\nte c</w>\nstick ers</w>\nmarke t\nclass y</w>\nbad ass</w>\nflo rence</w>\nlin er</w>\nfro st</w>\nk ate\nac on\nscand al</w>\nes sex</w>\nðŁĺ ı\nvi vi\ndr ill</w>\nblo ggers</w>\nrecomm end\nd ha\nac res</w>\nro ma</w>\nbu y\ngro cer\ner ia</w>\nma har\nff er</w>\npatter ns</w>\nver i\ncom pu\nst ev\nang a</w>\nment or</w>\ndo o</w>\nit ali\ncdn poli</w>\non ly\nconduc t</w>\nelec tro\nde f</w>\nwh ale</w>\nprepar ation</w>\nbicy cle</w>\nvi ral</w>\nturn out</w>\nbra ss</w>\nqu ad\nhospit ality</w>\npack aging</w>\nden cy</w>\nceme tery</w>\nabo ard</w>\ndre aming</w>\npic ture\nt all\ninv ent\nad mi\no e</w>\ntem ps</w>\nqu an\nfun dam\npro mp\nresi dence</w>\nmu d</w>\nsour i</w>\nâĦ ¢</w>\ngraff iti</w>\ngi f</w>\nd nd</w>\ncom p</w>\ns war\npe eps</w>\npale stine</w>\ndevil s</w>\nsan g</w>\nassi stance</w>\nbi ke\nmissi ssi\ninter viewed</w>\nne phew</w>\ndru ms</w>\nv and\ngentle men</w>\nn sw</w>\ninst a</w>\nleban on</w>\nee ee\noli via</w>\nver y\nrou gh\nindustri es</w>\nm ation</w>\nðŁĺ Ĵ</w>\nbar rel</w>\nn ay\npo ps</w>\nmoder n\nill y\nare st</w>\non ents</w>\nprotec ting</w>\nv ans</w>\ne o</w>\nvi kings</w>\nrestaur ants</w>\nre ck\njac kie</w>\nandre w\nw illing</w>\nhe ath</w>\ncitiz en\ndisc rimin\nà¹ Ī</w>\nstu art</w>\nm ys</w>\nhi p\ntran sp\n\" ?</w>\nte x</w>\nsu shi</w>\nke d\ncro ssed</w>\ndist ur\npe dia</w>\nf ate</w>\nsome how</w>\nmo th</w>\nproce ssing</w>\nis s\nr in</w>\nu ts</w>\nyy c</w>\nver t</w>\nlg bt\nre id</w>\non to\narab ia</w>\nhabit at</w>\n= =\nstre ak</w>\nsimp son</w>\naddic tion</w>\nwim ble\ndeli vers</w>\nchalleng ing</w>\nðŁİ ¶\nfran ch\ne du\ns me\nai ds</w>\nhur st</w>\nth am\ntari an</w>\nremem bered</w>\npalestin ian</w>\nfe es</w>\ntru m\nsket ch\nur u</w>\nfit ting</w>\njes se</w>\nðŁĶ¥ ðŁĶ¥</w>\n---- ----\nba ch\nici a</w>\ncolo red</w>\nda h</w>\nassoci ate</w>\nint el\ns eller</w>\np u</w>\nstu ffed</w>\nac s</w>\nb s\nsh in</w>\ncooper ation</w>\ncertific ate</w>\nab u</w>\ningredi ents</w>\nre v</w>\nin ge\nel der\nchristi an\nbun dle</w>\nth ic</w>\ndir t</w>\nbeij ing</w>\ncomm it</w>\nted dy</w>\ned u</w>\nto day\ns field</w>\nw yn\nconfir ms</w>\nlo o</w>\nj v</w>\nene ss</w>\nal pha\nvir us</w>\nari um</w>\ngr ind</w>\nbri dges</w>\nintroduc tion</w>\npol ls</w>\nbac ter\nz ach</w>\ntermin al</w>\nra iders</w>\nfla vor</w>\nzom bie</w>\nvo d\nsp reading</w>\ngameof thrones</w>\neffici ency</w>\nlat ely</w>\nale m</w>\ntwee t\ncri mes</w>\ncl er\nde y</w>\ndg ed</w>\nhy un\npay ments</w>\ncir cus</w>\nðŁĺŃ ðŁĺŃ</w>\nmis souri</w>\nlu b</w>\nepiso des</w>\nc age</w>\npo s</w>\nmat ching</w>\ntumb lr</w>\nlin ed</w>\nge st\nam bi\nnar r\ning ton\nregu l\nblo wn</w>\nis le</w>\nco co\non don</w>\njoshu a</w>\ntour ing</w>\nsm a</w>\nsau sage</w>\nbest friend</w>\nbo eing</w>\ndesi re</w>\nsav age</w>\nra pper</w>\nde vo\nte ar</w>\ntake over</w>\ncow boys</w>\npo ker</w>\npar ag\npp e</w>\nh int</w>\nwe ars</w>\nse th</w>\nro les</w>\nl anc\nman ga</w>\nform at</w>\nfl yer</w>\nc ay\nmo or</w>\nba ke</w>\nspla sh</w>\nv ad\nker ala</w>\nproce eds</w>\nsil ly</w>\nreflec tion</w>\ndi str\nwi d\nsu it\nci vic</w>\nyan kees</w>\nby n</w>\nmigr ation</w>\ndi stin\nor ch\nfe mini\nquali fying</w>\ntu ri\no be\nhun dred</w>\ncra p</w>\nwan g</w>\nmathe mat\nbu re\nexpo sure</w>\nfergu son</w>\nseme ster</w>\nre serv\npl ym\na hu\nfac ial</w>\nwa x</w>\nwor ried</w>\nca b</w>\nvi o\nas a</w>\nco d</w>\nto pics</w>\np cs</w>\nhal o</w>\nrescu ed</w>\nhoriz on</w>\nar k\nâļ ª\nhol ly</w>\nel f</w>\nul ti\npu p\nquali fied</w>\nattend ance</w>\nati vely</w>\ndestro y</w>\ny c</w>\nfor th</w>\nphotoo ftheday</w>\nc ents</w>\nic eland</w>\nmeas ures</w>\nde sk\nport folio</w>\nartic les</w>\ndirec tors</w>\ndat ab\ne w\ncreep y</w>\noun ding</w>\nhon oured</w>\nmi st</w>\nj it\nmen tioned</w>\nport able</w>\niti c</w>\nd ann\nfriday feeling</w>\nam id</w>\nti ger\nscri p\nhelicop ter</w>\nhard ware</w>\nexpl or\nwork place</w>\naustri a</w>\nbeat les</w>\nber nar\nspi der\ndisc o</w>\ncul t</w>\nlim its</w>\nshor tly</w>\nfin al\nnin ja</w>\nlu ke\nle bron</w>\nwal mart</w>\no il\nvan illa</w>\nshi re\nye g</w>\nak y</w>\nc s\nbl er</w>\ncollec ted</w>\nt g</w>\nrol led</w>\nspeci als</w>\nb ff</w>\npier re</w>\nsh im\nvi er</w>\nflash back</w>\nrestor ation</w>\nindividu als</w>\npro d</w>\nfre aking</w>\ntu rer</w>\no a</w>\nre fre\nmor oc\ngre et</w>\nre yn\ncare ful</w>\nour ing</w>\nu sh\nis d</w>\ng ill</w>\nvie w\nthunder storm</w>\nb led</w>\npic nic</w>\nguar di\npi g\nar k</w>\nsyl vania</w>\nbann ed</w>\nu cl\nvi jay\nori um</w>\nav engers</w>\nbeliev es</w>\neu r</w>\nmonu ment</w>\nconcer ned</w>\nla bs</w>\nber g\na ap\nvi sh\nsing les</w>\ncan cel\nz el</w>\nar ab</w>\nru th</w>\ntoo th</w>\nar ta</w>\nsh af\nchair s</w>\nr ack</w>\ndise ases</w>\ncrow d\ncl y\nfle x</w>\nchrist ma\nartif icial</w>\ntom at\nfin e\ndra ws</w>\nadvoc ate</w>\nfran ce\nÙ Ĭ\nðŁĺ ³\nheav y\ns our</w>\ncompre hen\nno ble</w>\naa p</w>\nhin du</w>\ncor al</w>\ng ars</w>\now en</w>\nn l\nst all</w>\nyel low\nmar ina</w>\nin ver\nsuppor t\ntou gh\npromis es</w>\npi e\nmaster piece</w>\nsco re\nfor ce\nmor tg\ncrypto currency</w>\no x</w>\nr ors</w>\nrock in</w>\npro vin\nho g\nno stal\noak land</w>\npat rick\ninclu sion</w>\ntra ffic\nah med</w>\na ha\nlux ury\ncon secu\nde mon</w>\nâĸ º</w>\nb lowing</w>\nst ag\n: \"</w>\nencoura ge</w>\nben e\nsku ll</w>\ndo dge</w>\nbu ster</w>\nkin son</w>\nwit ne\ner ror</w>\nlo west</w>\nfel low\nà °\nsh re\nbl ur\nvir gin</w>\ncompos er</w>\nsli p</w>\nmor nings</w>\nga ins</w>\ntab le\ngra in</w>\nari st</w>\nbraz ilian</w>\nw we\ntu es</w>\nribb on</w>\nan ag\ndi st</w>\nsac rif\nem brace</w>\nentreprene ur\naf fili\nde o</w>\nt ali\ntouri st</w>\nfat al</w>\nì Ĭ\nautom atic</w>\nðŁĩ µ\nwe ak\nwel fare</w>\nconfir m</w>\nbenjam in</w>\nfi ghts</w>\nalleg ed</w>\nme ad\nstrugg ling</w>\npro secu\nche f\nÃ ¨\npropos al</w>\ner n</w>\nðŁĺ Ħ\ndy k</w>\non gs</w>\nhon g\nm ack</w>\nmel on</w>\non ent</w>\nru sh\nd ap\ntol er\npro pag\nc ze\ntrans lation</w>\nwal let</w>\ncott age</w>\nsa il</w>\nconstitu tion</w>\nðŁĴ Ģ</w>\nmun ici\nfav or</w>\nstorm hour</w>\ni h\nðŁĺ Į</w>\napproach ing</w>\npin ned</w>\nj ed\nniger ian</w>\nn ach\nsh at\nparticul arly</w>\nmc don\ncamer as</w>\nanni e</w>\nadmini str\nhe at\nelectr ical</w>\nchar ming</w>\ngib son</w>\nbouti que</w>\nex posed</w>\nac tor\npil low</w>\nbeach es</w>\ngenu ine</w>\nmargare t</w>\nben nett</w>\nlou isi\npos itions</w>\nel y\nshin y</w>\nten tion</w>\narchitec t</w>\nren tal</w>\nac qui\ngoo gle\nsub way</w>\nmom ent\nðŁļ ¨\nri m</w>\nmetho ds</w>\ncy cli\nnor folk</w>\nÙ Ī\nover whel\nra pid</w>\nwe ar\nhappy birthday</w>\nprogre ssive</w>\nðŁĴ ¥\nco gn\npap a</w>\nf ool</w>\nphilosoph y</w>\npol ar</w>\njim my\nwi g</w>\nðŁĴ ĭ\noper ating</w>\nreduc tion</w>\nph i</w>\nfla gs</w>\nto the\no di\na res</w>\nk oo\nk ang\nar kansas</w>\nash ton</w>\nwimble don</w>\nsci fi</w>\nattrac tive</w>\nmississi ppi</w>\nlogi sts</w>\nral ph</w>\nla bel\ngradu ates</w>\nma ha\nhome town</w>\nâľĮ ï¸ı</w>\nfoun ded</w>\non the\nli z</w>\ntrans l\nmini mum</w>\npre sti\nta m</w>\ngener ations</w>\nre bel</w>\njourn alists</w>\npar am\nmc m</w>\nacry lic</w>\ndeath s</w>\ntes la</w>\nw t</w>\nbry ant</w>\njer us\ni stanbul</w>\nmuham mad</w>\nri ley</w>\nk ris</w>\nwork shops</w>\nis o</w>\ncoun ts</w>\nstre t\nprote cted</w>\ntrin ity</w>\nman ual</w>\nr hin\nr il\npleas ant</w>\nle mon\nner d</w>\nhar der</w>\ndar ren</w>\nbur y\nra h\nbas is</w>\nmi gu\nocca sion</w>\nli sts</w>\nâĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ı</w>\ne b\nde cre\nhamp ton</w>\nìĿ ´\ntra vis</w>\ntrans form</w>\npuer to</w>\nnh l\nav oc\ntri ps</w>\nunexpe cted</w>\nve t\ndi dyou\nbar ber</w>\nst ages</w>\nm son</w>\nre presented</w>\nfor t\nl al\npp le</w>\nnic ely</w>\nignor e</w>\nqu il\nqu inn</w>\nh k</w>\ncarri er</w>\nremin ded</w>\nam ong\npass enger</w>\nel len</w>\ngue z</w>\nsc ape</w>\nmu ral</w>\nyoun gest</w>\nma sh\nd ill\nrout ine</w>\nstain less</w>\njack son\ngand hi</w>\nth al</w>\non ers</w>\nedit orial</w>\nconvers ations</w>\nsd ale</w>\nautom ation</w>\ni ke\nà¸² à¸\nðŁĩ ª</w>\nhau l</w>\nla ying</w>\nmen tions</w>\nam en</w>\nabor tion</w>\ni bi\ncoun ties</w>\nca therine</w>\nman ds</w>\njam e\nroll er</w>\nau t</w>\nn am</w>\no logical</w>\ncep tion</w>\nran king</w>\ntox ic</w>\nsn acks</w>\nvictor ian</w>\nbang kok</w>\npsycho logy</w>\nre g</w>\nang ela</w>\nrespon d</w>\nsty le\nsophi e</w>\ndak ota</w>\nachiev ed</w>\nmar ked</w>\nimper ial</w>\nin as</w>\nglo ves</w>\nsli m</w>\nconfi dent</w>\natt acked</w>\ngg er\nlon ely</w>\nvalentine sday</w>\nre b\ncraft beer</w>\norig in</w>\nzim bab\nce iling</w>\nte ens</w>\nother wise</w>\nw b</w>\nf ers</w>\nday sof\nadvis or</w>\ny ah</w>\nâĻ ª</w>\nen der</w>\nrepublic ans</w>\nav a</w>\nskir t</w>\npi pel\nchi e</w>\njan e\nja x</w>\nðŁĺ ĭ\nâľ Ĭ\nj ays</w>\nbre tt</w>\nbal o\ncru cial</w>\nd har\nas is</w>\nde au</w>\nlloy d</w>\nchat ting</w>\nâĿĦ ï¸ı</w>\nrel ay</w>\nremark able</w>\nn s\nwe t\nbris bane</w>\nðŁĶ ´\ntion ally</w>\nf k</w>\nla yer</w>\nhouse hold</w>\nconsecu tive</w>\nes is</w>\npend ant</w>\nst ir\ncrit ic\nsu gar\nphoto shop</w>\npa res</w>\narti stic</w>\ndo dgers</w>\nc un\ncra fted</w>\nam end\nbo at\nâŃĲ ï¸ı\negyp tian</w>\nsa w\ntra ge\nsmall er</w>\nox y\npa ired</w>\nnex t\ni res</w>\ntac o</w>\no y</w>\nu c</w>\nst i</w>\na erial</w>\n: //</w>\ndr o</w>\ndot com</w>\ngg ins</w>\nr pg</w>\nay e</w>\nle an\nstri ker</w>\nlo bby</w>\nprote sts</w>\npri ority</w>\ncongre ss\nam ate\ninv it\nr ington</w>\nmom my</w>\nth us</w>\nallow ing</w>\npione er</w>\nenfor cement</w>\ng ori\ntal k\ndra g</w>\ndu mb</w>\nbul let</w>\nsan ge\ner y\ntar gets</w>\nðŁĩ ¦\nhe ather</w>\nconsi der\nseaf ood</w>\nve st</w>\nris ks</w>\n% .</w>\np g\nsac red</w>\nhe ating</w>\nkick ed</w>\ntto t</w>\n. -</w>\nchan di\nco ven\npo ol\npul se</w>\ni a\nro ster</w>\nshakespe are</w>\nes a</w>\ncar go</w>\npean ut</w>\ntro op\nac tion\ntab let</w>\nhome work</w>\ncast le\nstru ction</w>\nmus icians</w>\nfree zing</w>\nbu tt\njustin bieber</w>\nj j\nbah rain</w>\nan them</w>\nau dit\ndidyou know</w>\nna vig\nguid ance</w>\nâĸ ¶\ntur f</w>\nn un\nfic ations</w>\nye men</w>\nchar ging</w>\nx c</w>\nbron cos</w>\nsu bur\np ale</w>\nbor ing</w>\namong st</w>\nfor the\nem per\nom fg</w>\np j\nexpe cting</w>\nðŁĴ «</w>\nst l</w>\nad min</w>\nexpect ations</w>\nsw an</w>\nshoo t\noooo o</w>\nmin ent</w>\nãĢ Ĳ</w>\nwall ace</w>\nstan g</w>\nsatur day\nadop ted</w>\ndou bles</w>\nhom ie</w>\nome z</w>\nd han\nvent ure</w>\nsurroun ding</w>\nfi le\nmob ility</w>\nde es</w>\nw ski</w>\nbroo ke</w>\nemb ro\nre members</w>\nkar a</w>\ntest im\nbo tan\nm tv</w>\nsacrif ice</w>\njerus alem</w>\nd l\nÂ ´</w>\nproper ly</w>\nili on</w>\nas i</w>\nleg it</w>\nco pe</w>\nm cla\nrecy cling</w>\nlar ger</w>\nðŁĴ ĵ</w>\npat ric\ngener ous</w>\nja red</w>\np f</w>\nmol ly</w>\nthom as\nju dges</w>\nh b</w>\nsor ts</w>\nbl vd</w>\no ven</w>\nenter ing</w>\nplan es</w>\nbe et\nintegr ation</w>\nboo ked</w>\nfre ed\nver n</w>\nash es</w>\nto pped</w>\nde pot</w>\nwelcom ed</w>\nren a</w>\nm ick</w>\nd and\nsee ks</w>\ngam er\nran kings</w>\nren e</w>\nmu t\nwhis ky</w>\nfire fighters</w>\ngu es</w>\nga ther</w>\ntour ney</w>\nde men\ny ang</w>\nnew ton</w>\nautom otive</w>\nback yard</w>\ndeta iled</w>\nmi st\nto bac\nfi ber</w>\nun usual</w>\ngrat itude</w>\nsp are</w>\nne ys</w>\n: *</w>\nper i\nflo ating</w>\nfin alist</w>\ndon ating</w>\ndre ss\nbro ad</w>\nbe the\neconom ics</w>\ntai wan</w>\ned wards</w>\nplu g</w>\npra iri\nval en\nbab a</w>\nf ad\nan as</w>\nhar per</w>\ndis order</w>\napp lied</w>\np att\nbi kin\nli ver</w>\ncu ri\ncarol ine</w>\nann er</w>\njuli an</w>\nwal king\nmal col\nscreen shot</w>\nco ding</w>\nskin care</w>\nactivi sts</w>\nmyster ious</w>\nex act</w>\nblo cking</w>\nmercur y</w>\nbat ter\ndu mp\nâľ Į</w>\nen se\nli sh\nridic ulous</w>\nprote sters</w>\nðŁĻ Ī\nlu st</w>\nswe at</w>\nas s\nali ke</w>\nco dy</w>\nre ments</w>\nwin ds\nas pir\nvi enna</w>\npra y\n.. .@</w>\nbo i</w>\ncand le</w>\nassi sts</w>\nte e\nder son</w>\np ony</w>\nf ence</w>\ncon spir\nâĺħ âĺħ\noo th</w>\ne pic\nba rely</w>\na unt</w>\nb am</w>\ndiamon ds</w>\nend less</w>\nscre ens</w>\ncan cer\ngr o</w>\np st</w>\npro spec\nmo sque</w>\nhelp ful</w>\nou ri\nbro ther\ngu jar\ncri sti\nine z</w>\nto wers</w>\nad dresses</w>\ngra y\nbur ton</w>\nre tweeted</w>\nðŁ¤ Ķ\nn ity</w>\ndu ck\nsuper vis\njo an</w>\nkin der\nsanc tu\npi ed</w>\nâı °</w>\nł ï¸ı</w>\nm ati\nreven ge</w>\nce ster</w>\neli fe</w>\ndesig ners</w>\nback ed</w>\nbo li\nwei ght\ncou ch</w>\nsu res</w>\ns its</w>\nshri mp</w>\nla gos</w>\nauth orities</w>\nos ity</w>\nhol ly\ncompu ting</w>\nfac tors</w>\nab e</w>\npan els</w>\nram ad\nsent ence</w>\nmissi on\nhol m</w>\nr b\nd ads</w>\nshang hai</w>\nmon ey\nshe ets</w>\nsk ate</w>\nthre w</w>\ncup cakes</w>\ninfin ite</w>\nl is</w>\npractic ing</w>\ness ay</w>\nka i\nas ci\nmo b</w>\nu gh</w>\nhol mes</w>\nre gg\nik h</w>\nmo ck</w>\ncollec tions</w>\npe p\no va</w>\nsal t\nnan dez</w>\nco y\nthre ats</w>\ntex ts</w>\ncin nam\npregn ancy</w>\npen ding</w>\nstam p</w>\nflow er\ng is</w>\nagre ed</w>\npay ne</w>\nro ver</w>\nph ra\nsof t\nf fin\nfa thers</w>\npass engers</w>\naw ays</w>\nal a\nh es</w>\nli van</w>\nin s\nsamu el</w>\ningu i\nh of</w>\nj j</w>\nchen nai</w>\ncat al\nom ic</w>\nhe ath\nni ece</w>\npump ed</w>\nintegr ated</w>\nare l</w>\nno m</w>\nproduc tivity</w>\nwan ting</w>\nvis a</w>\ndi ana</w>\ntw il\nit v</w>\ncam ps</w>\nro wing</w>\nd ley</w>\nblack and\ngu ards</w>\nb ells</w>\nre verse</w>\nvi be</w>\nric ky</w>\nmo ss</w>\nny t</w>\nâĺ Ģï¸ı\nel le\ntro y</w>\ncu dd\nev an\nwomen s\nfo to</w>\nmi stakes</w>\nwick ed</w>\nmi l</w>\nc led</w>\nme mes</w>\nco smo\nschol ar</w>\nren o</w>\nðŁĺ Ģ\nv ents</w>\n# âĢ¦</w>\nterrori sts</w>\nca sey</w>\ncardin als</w>\nðŁĺĬ ðŁĺĬ\nvenezu ela</w>\nbol a</w>\nliter acy</w>\nt w</w>\nen o</w>\ncon tains</w>\nau stin\nfin anci\nev an</w>\nhar vard</w>\norigin ally</w>\nchev ro\nher ald</w>\nnott ingham</w>\nmanag ers</w>\nâŀ ¡</w>\naccep ting</w>\nwal sh</w>\ntutor ial</w>\nentrepreneur ship</w>\nyach t</w>\nrequi rements</w>\nglen n</w>\npe de\nunfortun ately</w>\nach ing</w>\ndais y</w>\ngi an</w>\nnight mare</w>\nâĿ Ĺ\nr ina</w>\nb art</w>\nema ils</w>\noppo site</w>\nwho m</w>\nsa ke</w>\npu zzle</w>\nda shi\npar ty\nblan ket</w>\nbus es</w>\nlo re\nbeau ty\nreas on\npun jab</w>\nwinds or</w>\nfunc tional</w>\nexi sting</w>\nhel lo\ngli mp\ncon vin\nla k\nscre aming</w>\nrebec ca</w>\nbli ss</w>\nnorth west</w>\ninfin ity</w>\ncosme tics</w>\npul ling</w>\ncoffe e\npl ing</w>\nop ho\ncolom bia</w>\ninterior design</w>\n( +</w>\nemo tions</w>\nsa c</w>\nsun glasses</w>\nsav es</w>\nd f\nsix th</w>\nal y</w>\nðŁĺ »</w>\nde en</w>\ndev ast\npolit icians</w>\nlac rosse</w>\ng u</w>\npe i</w>\njav a</w>\ncomb ine</w>\ncoal ition</w>\ner ts</w>\nsurvi v\nch ad</w>\nstri an</w>\nn n</w>\nde vi\ncoun c\nconcer n</w>\ncontro ller</w>\nbre ast\nj ury</w>\ntu m\nintroduc es</w>\nla di\nmobi le\nal z\nste ady</w>\nnur ses</w>\nh acking</w>\non line\noce an\nðŁİ Ħ\na am\nju ven\nic c</w>\nlouisi ana</w>\nar te</w>\nstreet art</w>\nis on\nwn s</w>\nfr m</w>\np anda</w>\nno ir</w>\nmain tain</w>\ndel ay\nsymp toms</w>\nthor n\nge ome\nter n</w>\ncarri ed</w>\np ru\npan or\nas sy</w>\nper u</w>\nclou d\nsp ra\npe di\ne ste\ntag ged</w>\nðŁĺ Ŀ</w>\nshado ws</w>\nnaz i</w>\nØ§Ù Ħ\ncor ri\nâĻ¥ âĻ¥\nj ad\nðŁĩ «\nform al</w>\nspo ken</w>\nðŁĮ ŀ</w>\nenjo y\nlo pez</w>\nout look</w>\nin ho</w>\nw ander\nÙ ħ\nma ya</w>\npe e\nd ine</w>\nãĢ ĳ</w>\nbrief ing</w>\nsuppor ter</w>\nar ily</w>\nght ers</w>\nnatur ally</w>\ndoctor who</w>\nj en</w>\nv ar</w>\nnew year</w>\nre se\nsi mm\nre x\ncon sequ\ntomat oes</w>\nbur st</w>\nbra vo</w>\nbur gers</w>\ncr acking</w>\nnor theast</w>\nbi om\nmush room</w>\nmar que\ndou ble\nni er</w>\nv ag\ntw enty</w>\nkey board</w>\nwin ni\njama ica</w>\npar ish</w>\n: -\nmental health</w>\nali zing</w>\nren der</w>\nwa king</w>\nðŁİ Ĥ\ng ly\nna than\nwa shing</w>\nmel issa</w>\njun g</w>\nloy al</w>\nchil i</w>\nsong writer</w>\nguit arist</w>\nbo wie</w>\nneighb ors</w>\nonym ous</w>\nas set</w>\nta i</w>\nhead quarters</w>\nðŁĮ Ī</w>\ni hear\nci gare\nsur g\n) \"</w>\nre pl\ndar ling</w>\nðŁĻ Ħ</w>\nz ak\nsa re\nãħ ĭ\nmic key</w>\nware house</w>\nmass age</w>\nine es</w>\ndid nt</w>\ni w\nhur ts</w>\neng aging</w>\nmag ic\nwomen in\nk itten</w>\nmor s</w>\nc art</w>\ntit ans</w>\ncolle ague</w>\ncompe ting</w>\ner an</w>\nk hal\nmar ble</w>\ndem and\ndel ight</w>\net ary</w>\nbli zz\nlou ise</w>\nm ls</w>\nfini shes</w>\nexperim ent</w>\nconduc ted</w>\nelectr onics</w>\nitt ers</w>\ncar ing</w>\nwh ats</w>\nsym bol</w>\njun g\ne cu\npi x</w>\ncon text</w>\nchar ger</w>\nðŁĺ ĩ</w>\nre ig\nfra g\në ĭ\nch ad\ntru e\nker ry</w>\ndef ending</w>\na int</w>\nau ton\ncheck out</w>\nbar nes</w>\nless ly</w>\nd t\nm me</w>\nclou dy</w>\nsecond ary</w>\nare z</w>\n_ :</w>\napp a</w>\nconst ant</w>\n\" )</w>\nve ts</w>\njo b\ni ent</w>\nðŁĺŃðŁĺŃ ðŁĺŃ</w>\nm j\nfren ch\ndi ver\ndavi es</w>\nhh hh</w>\ne book</w>\nà¹ ī</w>\nmar iti\nbree ze</w>\nsusp ended</w>\nmat o\nvi et</w>\nra hu\nse i\nbol t</w>\nen ary</w>\nle is\nkar l</w>\nfr amed</w>\nexpla ining</w>\nab c\nde aling</w>\nnat o</w>\nja ke\nexp and</w>\nleon ard</w>\nestabli shed</w>\ndu b</w>\nar men\nel led</w>\nvoc al</w>\nnichol as</w>\nori ent\nk yo\nillustr ated</w>\nah h</w>\ndanc ers</w>\nmilli on\nge ta\npo pp\nas u\nmur dered</w>\ngi ble</w>\nsto ked</w>\ngri ffin</w>\nmaxi mum</w>\nadri an</w>\nen counter</w>\nther o\ndavid son</w>\nðŁį »</w>\nholi day\nev o</w>\nasse ts</w>\ncar son</w>\nmemor able</w>\nâļ ½</w>\nob am\nrepresent ative</w>\ncb d</w>\ntr icks</w>\nvo gue</w>\nvo ice\nmm mm</w>\nsebasti an</w>\ncli f\nath y</w>\npar alle\nðŁ¤ ·\npa k\nev acu\ne ats</w>\nØ§ Ø\ntou ched</w>\norgan ised</w>\nspir its</w>\ncan ad\ngui ded</w>\nframe work</w>\nðŁĮ Ł\npe d\nnatur al\nag ar\nreplac ed</w>\nanch or</w>\nti t</w>\nsha h\norgan is\nsuper ior</w>\nr n\nch ro\neric a</w>\nst ill\ncor on\nchu ck\nloc ks</w>\nor gan</w>\nro sen\nsc am</w>\nben ed\n/ #</w>\nke en</w>\ntre vor</w>\nvamp ire</w>\nsor ted</w>\n! '</w>\naf ford</w>\nin tro</w>\ngr ace\nðŁĺ ľ\nsau r</w>\nkick starter</w>\ninflu en\nv u</w>\ny up</w>\npo c\nðŁİ ¥</w>\na ar</w>\ns ang\ntre k\net sy\ntb h</w>\nscre am</w>\nchevro let</w>\npix el</w>\nshepher d</w>\nan or\ngabri el</w>\ntw ood</w>\nsd cc</w>\nme ters</w>\ndevelop ers</w>\nclo sure</w>\nv w</w>\ntwit ch\nì Ĺ\nse oul</w>\npr ice\nho g</w>\nn ish</w>\nhill ary\nscrat ch</w>\nin cen\nwag on</w>\ndis ability</w>\npan ther</w>\nch ats</w>\ng d\nwit z</w>\nsus sex</w>\nl ate\nden mark</w>\nger ald</w>\ncancel led</w>\nnet te</w>\ni x\nnav al</w>\nbap tist</w>\nte t</w>\ny ad\nma th\nho y</w>\nr andy</w>\npo int\nintel lec\nfru its</w>\nw ool</w>\ngu in\npr on\nthe ft</w>\ncon dem\nmar ry</w>\nn ola</w>\narchitec ts</w>\ncin cin\nroc kets</w>\ngentle man</w>\nex plan\nt ate</w>\ndo e</w>\nra ises</w>\nwild life\nw l\ninsi der</w>\nblan c</w>\nw p</w>\nfor sale</w>\nny c\npo well</w>\nunbeliev able</w>\npen s\ngoo dies</w>\nmu stang</w>\np ens</w>\nst ays</w>\nsqu ash</w>\nxox o</w>\nnear by</w>\never ton</w>\nco co</w>\nle agu\nk han\nstu d</w>\nsouth west</w>\ncon struc\ns worth</w>\ncro atia</w>\nle a</w>\nsu ms</w>\naim s</w>\ne an</w>\nvan ess\niti ous</w>\npa thy</w>\narc ade</w>\nb end</w>\nsugge sts</w>\nsac ram\nroy als</w>\nri er</w>\nem ir\nin cl</w>\nan k\nclar k\nri ght\nvac c\nà¤ ¾</w>\ntan e\nli b</w>\nu sc\nsal es\nhu h</w>\ns ally</w>\nver a</w>\np ga</w>\ngro ws</w>\ndru m\ntre e\neth ics</w>\nsug gest</w>\nis ab\nse aled</w>\npre viously</w>\nanim ated</w>\nab du\nri ses</w>\nglo b\npre dat\nscar f</w>\ndel ic\nom ar</w>\nll i</w>\nsx sw</w>\npy thon</w>\nne bra\nfun k</w>\nreflec t</w>\npav ilion</w>\ntic ally</w>\nch asing</w>\nbak ery</w>\ninva sion</w>\nko h\nbeliev ed</w>\nco hen</w>\ncon qu\ncra fts</w>\nnat i</w>\ncle ver</w>\ngovern ance</w>\nsam ples</w>\nfa ils</w>\nâ Ķ\nti mo\nr itu\nstri king</w>\ninclu sive</w>\nsho cking</w>\ncan t\nrequi res</w>\ndra wings</w>\nà¸ Ń\npurch ased</w>\ndu m\nz ach\nwar ner</w>\ncon sole</w>\nman sion</w>\nfoun tain</w>\ncircu m\ne sh</w>\nis land\nmil k\npro fits</w>\nhali fax</w>\nri val\nâľĪ ï¸ı</w>\njen ny</w>\nsand ra</w>\nny e</w>\nk elly\ny al</w>\nqu ad</w>\nno s</w>\ninste in</w>\nfin alists</w>\nmid fielder</w>\ncu e</w>\nexcep tional</w>\na an</w>\nsa pp\ngett in</w>\nsa a</w>\nf ati\nsl ice</w>\nvol k\ns wal\nla sting</w>\nsum mary</w>\nit as</w>\nsm o</w>\ns z\nâĺ Ĩ</w>\nip l</w>\nfl ames</w>\nene ws</w>\nha v\nhoo die</w>\npitch er</w>\nwin dy</w>\nre vol\ncentr al\nton ite</w>\nðŁİī ðŁİī</w>\nsol ved</w>\nmil wau\norganiz ations</w>\nwee ts</w>\nre fin\ns th\nãĥ ¼\nel in</w>\nton a</w>\ncinnam on</w>\nðŁİ ¨</w>\nðŁİ ģ</w>\nron aldo</w>\npen insu\nome ga</w>\nel ds</w>\ndesig ning</w>\ne igh\nblu et\nben z</w>\nnu g\nash a</w>\nrobo ts</w>\nsu dan</w>\nchoo sing</w>\nen do\nser ge\nclo sely</w>\nhand y</w>\nfing er\nbe ing\nar te\nsurvi ved</w>\nfl ame</w>\nmile stone</w>\ngu t</w>\nd war\nfu tures</w>\nÃ© e</w>\nel o</w>\nfri dge</w>\neli c</w>\nou ch</w>\nu b</w>\np v</w>\ntit an\ncol lar</w>\nst ation\nnev ada</w>\naur ora</w>\nr d\ndun can</w>\nâģ ł</w>\nbri en</w>\nmar sh</w>\nÐ ¾\nto tal\nch ry\ns ers</w>\nsu ffe\nra chel\ncolle ge\nto days</w>\ncour ts</w>\nch it\nre united</w>\ngym na\ngen esis</w>\nbe side</w>\nre presentation</w>\nch ant</w>\ncollec tor</w>\nra k\nath ens</w>\nni gh\nmun ich</w>\nlangu ages</w>\nfl u</w>\nparticip ation</w>\n__ _</w>\nc v\nspec trum</w>\nso da</w>\nco ver\nrefe ren\nab bo\nap a</w>\npublic ation</w>\ned m</w>\nmon ica</w>\nar my\nðŁļ Ģ</w>\ndiv or\ndr y\nstre ams</w>\nrobo tics</w>\nci der</w>\nbull ying</w>\nappro val</w>\nsto ke</w>\nplat forms</w>\nsier ra</w>\nex tin\ni b</w>\nha yes</w>\nsucce ed</w>\nsuff er</w>\nat ically</w>\nda i\nlyn ch</w>\nh ound</w>\ndel ines</w>\nack now\nd ated</w>\nexclu sively</w>\nhe res</w>\nfac ilit\ndam aged</w>\nchar ter</w>\nla kers</w>\nfal con</w>\nunve iled</w>\nwel ove\ne ase</w>\npati ence</w>\nl one</w>\ngent le</w>\ngene tic</w>\nproduc ing</w>\ng our\nshann on</w>\nbil ities</w>\nzimbab we</w>\np int</w>\ndau ghters</w>\nliter ary</w>\nbel le\ncl am\nsurroun ded</w>\nk any\nne il\npir ate</w>\nrang er</w>\nhb d</w>\nnat alie</w>\nbel ong</w>\nolym pi\nemb assy</w>\nsc ol\nen er</w>\nak in</w>\nlo ren\nb h</w>\n: /</w>\ndi va</w>\nden im</w>\nhi pp\nðŁĩµ ðŁĩ\narn old</w>\n? '</w>\nwe ren</w>\nem power\ndis abled</w>\nman or</w>\nrasp berry</w>\nb af\naw ful</w>\ndru mmer</w>\nkar dashi\nn ash</w>\nmachine learning</w>\nch u</w>\nrebel s</w>\ntim ing</w>\nmon roe</w>\nton gue</w>\nran ge\npup ils</w>\nre ss</w>\namaz on\nb z</w>\nhar ley</w>\npal mer</w>\nballo on</w>\ns ings</w>\nic ec\nj b</w>\nc ers</w>\ng ps</w>\nwhi st\nri se\nl t\noo oo</w>\nc attle</w>\nshoo ter</w>\nvod ka</w>\nuc l</w>\nmt g</w>\nle sli\njon as</w>\ndi spo\nat ric</w>\nste in\nvintag e\nfir ms</w>\nflo yd</w>\ncow boy</w>\nsoo oo</w>\nis aac</w>\nwar craft</w>\ndisney land</w>\nbeauti ful\nbe am</w>\nfranch ise</w>\nbu n</w>\nk ag\nan on</w>\ntur bo</w>\nswee p</w>\nmade in\nkar achi</w>\ndete ctive</w>\npenn sylvania</w>\ncontro versi\nvitam in</w>\na side</w>\nchron ic</w>\ndescri bes</w>\nremo val</w>\nha h</w>\nap er\nten ed</w>\nu to</w>\nbad ly</w>\nmir ac\nf ry</w>\nye a</w>\nin jec\nther mal</w>\ncomp act</w>\nth or</w>\nte ed</w>\nur gent</w>\nl ite</w>\ng illi\nsop hom\nic o\nche m</w>\np m\nfor k</w>\nfre ak</w>\nch ak\nrecipi ent</w>\ni y\nni k</w>\nmodel ing</w>\nc ans</w>\nðŁı Ģ\ndel ux\nse am\nsurviv ors</w>\nrad ical</w>\ninvestig ating</w>\nreli able</w>\nf m\ntur t\nligh thouse</w>\nto ol\ngo wn</w>\n) )\nbo ts</w>\nauto graph</w>\na id\nbu ffe\nh mm</w>\nhorri ble</w>\nssi onal</w>\nann i</w>\nà¹ Ģ\nk its</w>\nsch i\neter nal</w>\nhu ss\nsens itive</w>\nr u</w>\ntast es</w>\nchec ks</w>\nim o</w>\npor tion</w>\nsk ate\ne den</w>\nhalf time</w>\nfri ed\nri hanna</w>\nti se</w>\nfl ick\nca in</w>\ns gt</w>\nâľ Ķ</w>\nsh au\nsta ined</w>\nra ffle</w>\ndro ve</w>\nsal man\nprinci ples</w>\nsh o</w>\nar u\nje ss</w>\ngu ine\ngar bage</w>\nmy an\njel ly</w>\ndis ru\nz ia</w>\nq ld</w>\nent ries</w>\nla v\nfle w</w>\nad mit</w>\nobjec ts</w>\ncomp are</w>\nny times</w>\ncann es</w>\np n</w>\nsuff ol\nro c</w>\nd ana</w>\ne gg\nhi st</w>\ncoun sel\n' !</w>\nphy si\nimag ination</w>\nad just\nexplo sion</w>\nplym outh</w>\nhor ror\nelli ott</w>\nbour ne\nde x</w>\nbre ed</w>\nau dio\nlob ster</w>\ndisappo inted</w>\nnation wide</w>\n( (</w>\nincre ases</w>\naustr ali\nce dar</w>\nstar ing</w>\nrac ial</w>\ne is\ng mt</w>\nvisi ons</w>\nstay ed</w>\ndiscu ssions</w>\nde an\ncur tis</w>\nmai den</w>\nstel lar</w>\nhapp iest</w>\nh wy</w>\npre season</w>\ncar av\nmon days</w>\nhospit als</w>\nglimp se</w>\nschol ars</w>\nja i</w>\nter race</w>\nann a\ngoo se</w>\ngra ded</w>\nlot us</w>\nhun g</w>\ngrocer y</w>\nstam ps</w>\nemper or</w>\nsc oop</w>\nin ser\nc as</w>\nexist ence</w>\nhe al</w>\nfal cons</w>\nmar vel\nreduc ing</w>\nterri fic</w>\nmagne tic</w>\nperfor ms</w>\nbar re\np us</w>\ntre ating</w>\nic on\nw h</w>\ndecla red</w>\ntra uma</w>\ndo d\ncome dian</w>\nnik on</w>\nbu gs</w>\nas m</w>\nmont gom\nibi za</w>\ncomprehen sive</w>\nha s\nsan ti\nfellow ship</w>\nda sh\np sal\nlouis ville</w>\nsp y\nfau lt</w>\nd the\nfi led</w>\nvi sta</w>\nde sc\nfe ars</w>\nyou tu\nsp s</w>\nes p</w>\nri g</w>\ncri me\nber ger</w>\nwonder land</w>\nk ent\nin formed</w>\nstev ens</w>\nmy th</w>\nast on</w>\nir i</w>\nvisit or</w>\nat ri\nproduc ers</w>\nal la\nperson ally</w>\nsepar ate</w>\nagen cies</w>\naf ri\nil an\nspo ke\nn ina</w>\nsqu ad\ndi ves</w>\nde pend\nli v\nfier ce</w>\nenter taining</w>\ncha in\nsc at\nbor ders</w>\npal ette</w>\nsp ro\nos is</w>\nder by\ntobac co</w>\nzi o</w>\nwilli e</w>\nju vent\nzoo m</w>\nhol y\nenti rely</w>\naf e</w>\nmart inez</w>\nbe ds</w>\npe a</w>\nbull dogs</w>\nðŁĩª ðŁĩ\nib m</w>\nne on</w>\nethiop ia</w>\nteam mates</w>\nplan ting</w>\ntw er\nany time</w>\nfor bes</w>\nÃ³ n</w>\nrun way</w>\nner vous</w>\nro ger\np ile</w>\nch anc\napo caly\nu w\no i</w>\ndr ought</w>\nterrit ory</w>\nbr ick\ncre atures</w>\ngo in</w>\nw aff\ngre n\nsou theast</w>\nje an\nam bul\ned ited</w>\nstra p</w>\nc v</w>\naar on\nãĥ» ãĥ»\nt su\ndescri ption</w>\nkin dly</w>\nclu tch</w>\nim mer\nen or\nwomen sday</w>\nor ange\nra g\nob vious</w>\nhy der\nchann els</w>\nman go</w>\nme yer</w>\nra ining</w>\nge tty</w>\npil gri\ncoordin ator</w>\nup load</w>\nninten do\ndon uts</w>\nsan chez</w>\napp arel</w>\nj r\nzz i</w>\n, @</w>\njeff erson</w>\naccessi ble</w>\ngreat ly</w>\ne id</w>\niniti al</w>\nbudd ha</w>\npar is\nma scot</w>\nâ¬ĩ ï¸ı</w>\nsch war\nsi ri\nsp inning</w>\nmortg age</w>\ne cho</w>\nend ange\nge dly</w>\nchlo e</w>\nenh ance</w>\nkar nat\nk ry\nexplo res</w>\nðŁĴ ģ\naf fair</w>\nic als</w>\nall a</w>\ndar t\ndolph ins</w>\ndiffe rences</w>\nsquir rel</w>\nau gh</w>\ndr ones</w>\nell en\nre store</w>\npa w\nun for\npi ke</w>\nhil ton</w>\ncolla b</w>\nconsu mers</w>\nco inci\nout comes</w>\npp p</w>\na q\ncoup on</w>\nli est</w>\nsi ms</w>\nk ho\nav es</w>\nspo on</w>\npu dding</w>\ncor byn</w>\nhat ers</w>\nex ams</w>\nsla ve</w>\n. !</w>\np sa</w>\napp les</w>\ntam il</w>\nse d\nco ke</w>\nzz o</w>\nlo sange\ncar bon\ncla ir</w>\n... )</w>\nk hu\ncra ig\nexplor ation</w>\nsanctu ary</w>\nsu e\nal way\ndemen tia</w>\nwon ders</w>\nsuper hero</w>\npakistan i</w>\nbrown s</w>\nbluet ooth</w>\nlo cker</w>\nmar c\nev entu\ndelux e</w>\nrodri guez</w>\nâĿ¤ âĿ¤</w>\nro bb\nðŁĴ ¦</w>\nlin ux</w>\nten s</w>\nintellig ent</w>\nse ed\nvo ter</w>\ns ler</w>\npe aks</w>\ninter n</w>\nteen age</w>\npeninsu la</w>\nhand ling</w>\nti e\ncou sins</w>\nwen dy</w>\nme e</w>\nà¹Ģ à¸\ndin o</w>\nðŁĴ °</w>\nðŁĺ ĥ\nze e</w>\ns bury</w>\ntrage dy</w>\nb k</w>\nbo re\nz in\nwar ns</w>\nidi ot</w>\ntou ching</w>\ncontin ental</w>\ntac os</w>\nsaf ari</w>\nwa shed</w>\npo dium</w>\nmorri son</w>\nfore sts</w>\nc bc\nal on\npartic ular</w>\nbe ads</w>\ninv ented</w>\nlo ch</w>\nli ghter</w>\nwhere ver</w>\ni de</w>\ndocu ments</w>\na we</w>\nk r</w>\nno where</w>\nmin er\nst it\nro x\ncontribu te</w>\nhar dy</w>\ncl an</w>\nob ject</w>\nca it\nðŁĴķ ðŁĴķ</w>\nhapp ier</w>\nvege tables</w>\nt art</w>\ng ag\nnom inee</w>\nheav ily</w>\npan ic</w>\nj d</w>\nthere sa</w>\nat m</w>\nu ph\ns fc</w>\nsu ri\ndrin k\nn al\nre vel\nk l</w>\navoc ado</w>\nnom ination</w>\nma donna</w>\nshar on</w>\nmalcol m</w>\ncontrol led</w>\nsh ers</w>\nrevi val</w>\nlegis lation</w>\nshoo ts</w>\nn in</w>\ncomm entary</w>\npro s</w>\nhuman rights</w>\nstr anger</w>\nmit ch</w>\npipel ine</w>\nleg ally</w>\nth u</w>\ngil bert</w>\ntol l</w>\ngran ted</w>\ngh s</w>\nir anian</w>\nrefre shing</w>\ndu k</w>\nab i</w>\npri me\njose ph\nmo sa\nstati stics</w>\nproduc tions</w>\nmer ry\npat el</w>\nsa x\nhuman itarian</w>\nstruc tures</w>\ne missions</w>\ntown s</w>\nfre el\nster ing</w>\nrat ings</w>\nalle gedly</w>\ncab in</w>\nst l\nw ade</w>\nfl yers</w>\ntri m</w>\npromis ing</w>\nz u</w>\nbal lot</w>\ncompar ison</w>\nfree ze</w>\nou ter</w>\ngreat ness</w>\nas sign\nsnow y</w>\nr ale\ntor ies</w>\nmed iter\nkno ck\nconsult ant</w>\ncincin nati</w>\nanaly st</w>\nsc oo\nje ws</w>\nappro xim\npu re\nportra its</w>\ncy rus</w>\nation al\nlo ans</w>\nacqu is\nel u\naccep table</w>\nuni on\nwater color</w>\nru st</w>\nbatt les</w>\nper fu\nseas onal</w>\nser ial</w>\nmind set</w>\nri ot</w>\nfel d</w>\nenni al</w>\nclo set</w>\npri est</w>\ntan ks</w>\nint l</w>\nscre w</w>\nbu m</w>\nab dul\nou x</w>\nexpla ined</w>\nric a</w>\nimag ing</w>\nlaw yers</w>\nbu ried</w>\nãĥ»ãĥ» ãĥ»</w>\near l</w>\nâĢ ķ</w>\nl ton</w>\nresto red</w>\nstri pes</w>\nfo ss\nde mands</w>\nste aling</w>\nalex is</w>\nmun d</w>\nak er\nur us</w>\nwar dro\nhu gs</w>\ngen re</w>\ne go</w>\nÙ Ħ\nparticip ated</w>\nbab es</w>\nban quet</w>\nti ous</w>\nhe mi\nds b</w>\nlo st\nmilwau kee</w>\njen ner</w>\nge m\nou tra\nlo ses</w>\nid i</w>\nre ps</w>\nðŁİ §</w>\nregu lation</w>\nfla w\nf ang\nvibr ant</w>\nram p</w>\nra ins</w>\nwell being</w>\nso viet</w>\nvie wers</w>\nde po\nlibr aries</w>\nbi go\nser y</w>\ng ill\nde struction</w>\nco z</w>\nc x</w>\nbri dal</w>\nal ds</w>\nplan ted</w>\namate ur</w>\nlu d\nche ering</w>\nshow cas\npro file\ni u\nver tical</w>\npack ers</w>\nwiz ard</w>\nski p</w>\ns light</w>\nbe au</w>\nair ways</w>\nmu ch\nre ra</w>\nðŁĮ Ĭ</w>\nab sor\npati o</w>\npack ages</w>\ns ells</w>\nment ally</w>\nðŁĺ ¢\nreyn olds</w>\nk are\ntri bun\nwal t</w>\nkn it</w>\nta ste\nsur rey</w>\nboun ce</w>\ncre ature</w>\nb are</w>\nbet ting</w>\nsu re\nmi ley</w>\nlaugh s</w>\nal ore</w>\ncy n\nt l\narti st\nann ah</w>\nwar mer</w>\ndynam ics</w>\nlunch time</w>\nmariti me</w>\nvulner able</w>\nðŁĴ ĥ</w>\nwol ver\ndur ham</w>\nconst antly</w>\nam in\nsi bl\n: @</w>\nbul let\nk ach\nangel o</w>\nwil der\ndoo m</w>\ndesk top</w>\nlaw suit</w>\nk ca</w>\nhen derson</w>\ninv iting</w>\nbet ty</w>\nta wards</w>\nra fa\nle aked</w>\nand i</w>\nge ms</w>\naf l</w>\nvel o\nmediter ran\npro be</w>\nto tten\nsteph anie</w>\nsn ation</w>\ncom be</w>\nq s</w>\nover come</w>\nassas sin\nra v\nfil ip\nwinni peg</w>\nsh il\ndetermin ed</w>\nk as</w>\nou tre\nregre t</w>\ngui des</w>\naa a\nðŁĺ Ī\nwi ves</w>\nmani fe\ner ly</w>\nsm y\nsh ima</w>\nx ing</w>\npix el\njac ob\nac commod\nto y\non o</w>\npo o</w>\nti er\nan swe\nðŁĴ ģ</w>\nro sa</w>\nle ase</w>\nbel ongs</w>\nth ar\neventu ally</w>\nnei ther</w>\ngo a</w>\nski ing</w>\nat ra</w>\nag h</w>\nbroad casting</w>\nf ury</w>\npy ram\nd ice</w>\nvolk swag\nwom ens</w>\nprovi der</w>\nbom bs</w>\nmiss ile</w>\nwhi p</w>\nd ick\nnor we\nback up</w>\nel der</w>\nmat ure</w>\nconcer ts</w>\ngi ous</w>\nsque e\ngood morning</w>\nbra ves</w>\n^ _\nau ssie</w>\nlun a</w>\nmal es</w>\nhe ck</w>\nfor tn\nrome o</w>\nsteel ers</w>\np n\npe er</w>\nre presents</w>\nÂ «</w>\nkat y</w>\nmigu el</w>\nrequ ire</w>\ncha ins</w>\nl ur\nimmedi ate</w>\nti mber\nâĸ¶ ï¸ı</w>\nadvoc acy</w>\nex port</w>\nan z\ntiff any</w>\nauth or\nðŁİ Ī</w>\ndu des</w>\nchil ly</w>\nhi d</w>\nhar m</w>\nbu g\nmon ster\nterri er</w>\ntu c\nstory telling</w>\nta k</w>\nin ti\nimmigr ants</w>\nb is</w>\nreach es</w>\ncom passion</w>\njohn ny\ncontribu tions</w>\nðŁĲ ¶\nmechan ical</w>\nimpre ssion</w>\nran ks</w>\nko be</w>\nmen ting</w>\nbloss om</w>\npab lo</w>\nbuil der</w>\nbom bing</w>\ntw el\nsul livan</w>\nom o\npe te\nde mi</w>\nku dos</w>\nw bb</w>\nt gif</w>\nmass ach\nneighb or</w>\nche fs</w>\neng ines</w>\npun e</w>\nga ined</w>\nphan tom</w>\ns days</w>\next end</w>\ngr an</w>\ncent ers</w>\njac qu\ndat asci\nsleep y</w>\nel vis</w>\nanswe red</w>\ns lot</w>\ncon y</w>\nflexi ble</w>\nti ally</w>\nle tics</w>\n% ,</w>\nandre ws</w>\nsi ble</w>\nmom ma</w>\nvin o</w>\ndo x</w>\ninvit ational</w>\ntwil ight</w>\nj ade</w>\nill ery</w>\njoh ns</w>\nf ou\np v\n-- -></w>\nbreak down</w>\nbilli on\nprin ter</w>\nmon d\nc bc</w>\nmag gie</w>\nlegi on</w>\ndu b\nkur t</w>\npo or\nparen ting</w>\nregi ons</w>\nbikin i</w>\nbe ware</w>\nsi onal</w>\nau burn</w>\nkid ding</w>\namp les</w>\nsp an</w>\ncon tempor\nc ic\nha bits</w>\nak o</w>\npre fe\nbud dies</w>\nit z\nem ily\nperson nel</w>\nmoun tain\nver sus</w>\nðŁĺ ¬</w>\near ning</w>\ns ink</w>\ndar i</w>\nu u</w>\ns win\ni ster</w>\nbru tal</w>\nn ac\nkat a</w>\nclo th</w>\nam and\nðŁĶ Ĺ</w>\nne o\nalu min\nweek ends</w>\nnebra ska</w>\nco des</w>\ndelay ed</w>\nbrun o</w>\npro ven</w>\nin c\ni ght\nfl an\nor o</w>\nlam bert</w>\nregu lat\nw f\nmassach use\nkardashi an</w>\nbern ard</w>\nfi esta</w>\nvolcan o</w>\ngrand pa</w>\nanc a</w>\nd re</w>\nst itu\nmean ing\nfo am</w>\nau ck\nat ed\nr l</w>\nhot el\npers ons</w>\ndy nasty</w>\nell or</w>\nma i</w>\nam ne\nsty ling</w>\navi er</w>\ne g</w>\nvege tarian</w>\n, âĢ¦</w>\nfoun ders</w>\nsta in</w>\ng d</w>\ncy cles</w>\nsky line</w>\ntrac tor</w>\nexi sts</w>\ntra l</w>\nkid ney</w>\nmar il\ninst ag\nse tte</w>\naddic t</w>\ntri angle</w>\nflash back\ncontroversi al</w>\nz on</w>\np ins</w>\ni as</w>\ntr ay</w>\ntown ship</w>\ndeleg ates</w>\nsp am</w>\nh ms</w>\ncr ane</w>\npeop les</w>\no lo\nfac tion</w>\nbut es</w>\non ica</w>\ndeleg ation</w>\nnew profile\neli er</w>\nmc a</w>\nw and\ng ely</w>\nlosange les</w>\nber ke\nti ve\ndis rup\nzz a</w>\ncas a</w>\njor dan\nford shire</w>\nga thered</w>\nic hi</w>\natten dees</w>\nà¸Ń à¸\npe ppers</w>\nco in\nbour bon</w>\nern ity</w>\nro tary</w>\nbehavi our</w>\njere my\nteam work</w>\ncompli ance</w>\ntre mend\nðŁĩ §\nbu hari</w>\ncam bo\nbu yers</w>\nha gen</w>\nbu ds</w>\nbay ern</w>\nmon te</w>\nsm ells</w>\nan za</w>\nath lon</w>\ndescri bed</w>\nwork force</w>\ngi ving\nap i</w>\ninvest ments</w>\nda il\nsel ena</w>\ndatab ase</w>\nth um\nmor tal</w>\nstu dent\nbu yer</w>\ndo ver</w>\ngar ten</w>\natt le\nloy alty</w>\ngen oci\nholo cau\ntheat ers</w>\nru ling</w>\nven us</w>\npat ent</w>\nch un\nab by</w>\nawa ke</w>\nmass acre</w>\nbang alore</w>\nbreak ing\nsimm ons</w>\nju sti\nhal e</w>\ned chat</w>\ngg les</w>\nhaw k\nmar king</w>\nhead lines</w>\nstro m</w>\nco ve</w>\nbreath taking</w>\nmed als</w>\nhair cut</w>\nchrist ine</w>\ntele graph</w>\ngujar at</w>\nju ra\ncan e</w>\nsho re\npropag anda</w>\nmu eller</w>\n.... ....</w>\nsa vi\nstom ach</w>\nthro ws</w>\nta b</w>\nwar m\nj ong</w>\nreno wned</w>\nhi r</w>\nra is\nmush rooms</w>\nguaran teed</w>\nbo a</w>\nm j</w>\nrevolu tionary</w>\ncerti fication</w>\nbru ins</w>\njo in\nw es</w>\npas sport</w>\nc g</w>\nsex u\ncap able</w>\nw v</w>\nton es</w>\njac kets</w>\nac compan\nspin ach</w>\nfore ver\nbla ir</w>\nwat ts</w>\ng l</w>\ncou ples</w>\nprairi e</w>\nnewprofile pic</w>\nlogi stics</w>\nmassachuse tts</w>\njagu ar</w>\no id</w>\nwe al\nunder water</w>\nmo z\ny i</w>\nma ths</w>\nmyan mar</w>\npre ps</w>\nsuffe red</w>\ntr ace</w>\nwal i</w>\nah hh</w>\nbor g</w>\nst itch</w>\ncu lin\nreal ise</w>\ninfe ction</w>\ndiscrimin ation</w>\nsh ame\nan kle</w>\nhu mid\ny t</w>\nbrac ket</w>\ntru ck\ntri u\nea ster\ncommun ity\npost card</w>\ninvol ving</w>\nty ler\ncar amel</w>\nover view</w>\nex amples</w>\nintegr ity</w>\nbase ment</w>\ninstru ments</w>\nani um</w>\nat us</w>\ngh er</w>\nlaun dry</w>\nachi eve\ngen eva</w>\npr icing</w>\nhyder abad</w>\nbeli ef</w>\nme ta\nj aw\naccoun ting</w>\nlead er\ncristi ano</w>\ncou ture</w>\ncy p\nvis ed</w>\n, ,,</w>\nk nu\nh ick\nbreak er</w>\nbr am\nra b\nmo or\nham as</w>\ngradu ating</w>\npupp ies</w>\nak h\nta h\nach es</w>\nri e\nop ini\ng ta\nre ign</w>\ntra gic</w>\nre ver\np ill\npine apple</w>\ntou ches</w>\nda re\nle ys</w>\nil o</w>\ninter iors</w>\nsc outs</w>\nbar t\nen zie</w>\ndon o\nbro ck\nchristi ans</w>\nense mble</w>\nÂ ·</w>\ncine mas</w>\nnew port</w>\nair line</w>\nwin ston</w>\nle igh\ncont ents</w>\npre scri\nur ge</w>\ntr out</w>\nfic ally</w>\nil ia</w>\nsub si\nare r</w>\nâļ¾ ï¸ı</w>\nw ounded</w>\nðŁĻ Ĥ</w>\npe pper\nðŁĴ ŀ\nfit ted</w>\naf f</w>\nre sur\nthursday thoughts</w>\nz ero\narchae ology</w>\ndi v</w>\nje e</w>\ni on\nawa iting</w>\nco zy</w>\nbeauti es</w>\nbal d</w>\ndat a\ngri zz\nstal k</w>\nkin ds</w>\ncle ared</w>\njess ic\nregu lar\nali ens</w>\nplac e\nbo s\nbi zar\nthisi s\nðŁĴ Ģ\ntotten ham</w>\nma fia</w>\ns lam\nari ana</w>\ncar roll</w>\nback pack</w>\ncare y</w>\nuni v</w>\nr g</w>\npe p</w>\ndig it\ntatt oos</w>\nag on</w>\nvolunte ering</w>\ndiffe ren\nconsu mption</w>\nka thr\nhead phones</w>\nt shirt</w>\no b</w>\nele ment</w>\nre tail\nsh ru\nal gori\ncontain er</w>\nconsci ous</w>\nfi l</w>\ncom ing\nra sh\nu rope</w>\ndef ine</w>\ngi or\nfemini st</w>\nflow ing</w>\nrout es</w>\ngl aci\nfer t\nsomer set</w>\nant es</w>\ntwee ps</w>\n$ $</w>\nh our\nendange red</w>\nyear sof\nro h\npo pped</w>\nbac king</w>\nba sil</w>\nbra ke</w>\nmon aco</w>\nlgbt q</w>\npra gue</w>\nut ility</w>\ncas si\ngate way</w>\nhaun ted</w>\nsch ul\nðŁİ µ</w>\nshou ld\nwalking dead</w>\ncomple ting</w>\ndann y\nmontgom ery</w>\npengu in</w>\nss i</w>\nmer chandi\nðŁĳ ĳ\nchur ch\nh ates</w>\ncap tain\nbrea thing</w>\nce t</w>\nfair ly</w>\napproach es</w>\ncompan ion</w>\nsurpri sing</w>\nkany e</w>\npe y\nhin di</w>\ntarge ted</w>\nlor ds</w>\nde ut\ndi gging</w>\nger man\nru t\nener gy\nclose st</w>\ny un\napo logi\nà¸ ±</w>\ns ack</w>\nru p</w>\ndd y\nport al</w>\nd ough</w>\nb ats</w>\nðŁĵ °</w>\nat ur\ngraph er</w>\npi res</w>\nmo tors</w>\nðŁĮ ¹\nj c\ndan g</w>\ntu k</w>\nclu e</w>\nus c</w>\npag e\nd less</w>\nbro ws</w>\nju s</w>\nad ing</w>\nre marks</w>\noo m</w>\ncar dio\nste fan\narm strong</w>\nâĢ¢ âĢ¢\nni est</w>\nbelgi an</w>\nbi op\nso y</w>\nlo f\ní ĥ\nq t</w>\nflashback friday</w>\nce e</w>\nģ à¸\nwre ck</w>\nmar ines</w>\namend ment</w>\nwardro be</w>\nvo y</w>\nbur ned</w>\nguit ars</w>\nra inf\nli fel\nssi l</w>\noun ce</w>\nexter nal</w>\nc key\nme sh</w>\nshe ikh</w>\ninv itation</w>\nsugge sti\npop corn</w>\nphenomen al</w>\nan onymous</w>\ntun a</w>\nchic ago\no val</w>\ndel y</w>\nloc als</w>\n( &</w>\npro f\nno vel\nfin der</w>\nspar ks</w>\nla ven\nin fu\nnic ks</w>\nqu ant\nra e</w>\nexe c</w>\ndist ingui\nst ances</w>\nmu tual</w>\nsh al\nunve ils</w>\nedmon ton</w>\nzan ia</w>\na dio</w>\nvie wer</w>\nbrad ford</w>\naudit orium</w>\nqu is\nre act</w>\nhtt p</w>\nl ero\nchee ky</w>\nimpac ts</w>\nta k\ned t</w>\ndesper ate</w>\nt ay</w>\nì Ħ\nsett le</w>\nbar gain</w>\nresu me</w>\nun ite\nthro wn</w>\nke st</w>\nse ys</w>\nmar ching</w>\nam it\ndecl ine</w>\nsch ar\nme tr\nstan ford</w>\nlin ke\nber ra</w>\ndol ls</w>\nrug by\njam i\nb or</w>\nroad trip</w>\ndino saur</w>\nmi k\nsun der\nre m\nb k\nover seas</w>\nnau ghty</w>\nimple mentation</w>\niam srk</w>\nlun cheon</w>\nfir ing</w>\nmi ami\npere z</w>\nthe e</w>\nz on\ngi fted</w>\ncon version</w>\nceram ic</w>\n¡ ï¸ı\npe dro</w>\nì Ĩ\nv ick\n! @</w>\nhe ed</w>\nsi d</w>\nb w</w>\ndocu ment</w>\npl un\ngr ants</w>\nfant asy\npredic tions</w>\nvali d</w>\ncar ved</w>\ngradu ated</w>\nðŁĳį ðŁı»</w>\nnation ally</w>\nch y\naf l\nre sso</w>\nblan k</w>\nri vals</w>\nj ig\ne ties</w>\nom ics</w>\nune mp\nb ound\nsk o\ninspec tion</w>\npar al\nhigh s</w>\ncri sp</w>\nb ans</w>\nob a</w>\n[ @</w>\nco spla\ncostu mes</w>\nrec all</w>\nmou th\nni gel</w>\nb ts\nter a</w>\nko v</w>\ndo cs</w>\nwest minster</w>\ndic t</w>\ngra vity</w>\nkar i</w>\nro gue</w>\nt ted</w>\nwar k</w>\nida ho</w>\nw end\naw i</w>\nqueen sland</w>\nproce sses</w>\ncli ffe</w>\nm ick\ncom pens\nop ol\nthe y\ncl ari\nwiki pedia</w>\nsalman khan</w>\nhaz ard</w>\npre ston</w>\nswee test</w>\npd f</w>\nche es\ntr ilo\nsouth africa</w>\nbur nt</w>\n( $</w>\ncon tain</w>\nt p</w>\nsub mitted</w>\nsound cloud</w>\nat u\nre z</w>\nword press</w>\ncorru pt</w>\nn f\nma ker\ní ķ\npar as\nadv ent</w>\nri al</w>\nca fe\nfo ssil</w>\n!!!! !!!</w>\nco ws</w>\nc j</w>\nsp ur\ninstitu tions</w>\nland mark</w>\nent it\nre ut\nh is\nalz heim\nwe mb\nregg ae</w>\nmo squ\nst at</w>\nidenti fied</w>\ndeal er</w>\nre am</w>\nre land</w>\nten sion</w>\nðŁĩ ©\nwra pping</w>\ndeep er</w>\nfr at\nred dit</w>\nar is</w>\nmoroc co</w>\n.. \"</w>\nb low\nma pping</w>\npri orities</w>\ning a</w>\nswa p</w>\nre wards</w>\nconspir acy</w>\ncreati ve\nc j\ncongre ssional</w>\nvau lt</w>\nple x</w>\nsophom ore</w>\nshad ow\nele ss\nðŁĺ ħ\ndar ts</w>\naldu b</w>\nanno ying</w>\npro ps</w>\nn as</w>\nalumin um</w>\nh bo</w>\noffen se</w>\nj ill</w>\noni ons</w>\nla ur\nta e\nhar dest</w>\nsh ro\nga ining</w>\nmeas ure\ned tech</w>\ncyp rus</w>\ntar a</w>\nang eli\ncar lo</w>\ngo on</w>\nall i</w>\nim plic\nju pit\nresil ience</w>\nha il\nbal anced</w>\n) ...</w>\njoy ce</w>\ngr a</w>\nth eli\ndefin ed</w>\nshi pped</w>\nmain ly</w>\nmin a</w>\nl m</w>\nsac ri\no ber\np im\nclaim ing</w>\nent ers</w>\nco rey</w>\nbo k</w>\ncri ed</w>\ncool ing</w>\ndani elle</w>\npharmac y</w>\nthor ough\nca ke\nk lo\noutre ach</w>\nz ens</w>\ndigital marketing</w>\nval ent</w>\nsn p</w>\nher b</w>\nmr w</w>\ncaf Ã©</w>\ncap tures</w>\nno tre</w>\ntriu mph</w>\npan cakes</w>\ncu mber\nspi ke</w>\nd ation</w>\nbi gg\nsp er</w>\ncrit ical\nam al\ntoo th\nfoun ding</w>\na stro</w>\n' #</w>\nquan tum</w>\nth ames</w>\nun c</w>\npri de\nair bus</w>\nkno cked</w>\nun defeated</w>\nmediterran ean</w>\ncal cu\nclo wn</w>\nsens or</w>\nham mer\nfor give</w>\ncu shi\nber ry\nmaje stic</w>\nelec t</w>\npolit an</w>\ng ta</w>\nk ari\nbur ke</w>\nsea hawks</w>\nvolkswag en</w>\nre i\nlandsc apes</w>\ncas u\ngrand father</w>\nlist ened</w>\n/ /\nstar trek</w>\nrainf all</w>\nfur ry</w>\nvi er\nstar k</w>\nrif le</w>\nff a</w>\nleg es</w>\nhillary clinton</w>\nmin us</w>\ncorrec tly</w>\narchitec tural</w>\npre ce\nup side</w>\nbox er</w>\nðŁĻĮ ðŁı¼</w>\nis ai\nde t</w>\npro vo\ntis sue</w>\nspoo ky</w>\nve led</w>\nre con\nprospec ts</w>\nque bec</w>\nâļ «\nig no\nanat omy</w>\nshap es</w>\nw p\np interest</w>\nhor e</w>\nan es</w>\npick up</w>\nti p\npra desh</w>\nhu gh</w>\nco e</w>\npo k\ngram my</w>\nwell ington</w>\nsti gate</w>\nri gh\nlea p</w>\nking ston</w>\nscen ic</w>\ngo sh</w>\nv ani\nau g\ns ary</w>\nzi er</w>\nbure au</w>\nlin son</w>\ncon te\nfra gr\nall an</w>\ng aw\nlan a</w>\ncolli sion</w>\nsurve ill\nren ais\nar range\ns ali\ndo in</w>\nbr ance</w>\nbren dan</w>\nour se</w>\nin coming</w>\nsuspen sion</w>\nà ´\nl la</w>\neduc ators</w>\nin tri\nda e</w>\nbio graphy</w>\nbul gar\nvilla in</w>\ngo thic</w>\nrw anda</w>\ne w</w>\nmay or\nmeet up</w>\ndemocr at</w>\nmor gan\nsu dden</w>\nte sco</w>\ncar rot</w>\nbom ber</w>\nmck in\nre ne\nfun day</w>\nagricul tural</w>\nhaha h</w>\nshow time</w>\nform ing</w>\ncol a</w>\nscor pi\nquo te\npo ppy</w>\ns life</w>\nd az\ntu b</w>\nne n</w>\nmo t</w>\nðŁĺ »\ns ore</w>\nelder ly</w>\no ve</w>\nskin ny</w>\num i</w>\nanc o</w>\nman ship</w>\nwe re\ng v\nk ah</w>\nfol ding</w>\nne at</w>\nsamanth a</w>\ndan ish</w>\nuk rain\nhumid ity</w>\nnu tri\njak arta</w>\ncand les</w>\noooo oooo\nat ile</w>\nstreng th\ni bra\nbap ti\ncharle ston</w>\nfr ames</w>\ngirl s\nclear ing</w>\nglu ten\n# #</w>\nsuper natural</w>\nju bi\nph one\nhe in\ndr un\nle ak</w>\ninvest or</w>\ny er\ndom ain</w>\nball room</w>\nmi sh\napp li\noff shore</w>\nbla ze</w>\ndor o\nâĺķ ï¸ı</w>\nwin ery</w>\nshar if</w>\nad ore</w>\nn ir\nsaf er</w>\nsi gh</w>\nas cri\nstrong ly</w>\ntrac y</w>\nck er\nol l</w>\nfaith ful</w>\ney ed</w>\ndeli ghtful</w>\nvis m</w>\nkarnat aka</w>\ntit an</w>\nwh ar\njer seys</w>\nre fur\nheav en\ngri p</w>\npan ama</w>\npre li\nglu ten</w>\no dd\ncont ent\npon ti\ntion ing</w>\ne commerce</w>\nfeder ation</w>\nflaw less</w>\nge ar\nti res</w>\nby r\npol ice\ncu ban</w>\ntri butes</w>\ntic ul\nchur ches</w>\nnur sery</w>\ndi aries</w>\nmuse ums</w>\nsnapp ed</w>\ni van\nwi ght</w>\ntouri sts</w>\nramad an</w>\nt rent</w>\nprophe t</w>\nwon dered</w>\nfocu sing</w>\nhi d\nic ons</w>\ni q\nambul ance</w>\npi st\nfun niest</w>\ntime less</w>\nsr ilan\nbu ys</w>\nki ds\ncolour ful</w>\na shi\nch ir\nmu m\nðŁĵ ļ</w>\nlet ter\nx en\nreut ers</w>\npre serve</w>\nin ting</w>\nste p\nfu ji\nuni ver\ni u</w>\nshow down</w>\npo ems</w>\nsurveill ance</w>\nsuspec ted</w>\nta e</w>\nsol ving</w>\ntom b</w>\nmother sday</w>\ncar pen\nrecru it</w>\npil ots</w>\nbro c\nmix ing</w>\nfri days</w>\nty r\nrepresent atives</w>\ntra pped</w>\nabdu l</w>\nfree style</w>\nclu ster</w>\nâļ łï¸ı</w>\nk d</w>\nsk ill\npit t</w>\nex o\ncommer ci\nmuse um\nloc ally</w>\ng ina</w>\nno bel</w>\nimmun e</w>\nfr ac\ncap su\nmain ed\nattemp ts</w>\nbull dog</w>\nbe spoke</w>\nsing ers</w>\nsp elling</w>\nseg ment</w>\nnat ures</w>\ntic k</w>\nlip stick</w>\nclean er</w>\ngett able</w>\npreci sion</w>\nâĢ¼ ï¸ı\nth ood</w>\nre ef</w>\nno pe</w>\nbill y\ndi gi\nmu si\nri val</w>\nfigu red</w>\ntal ity</w>\nsun ny\nber k\naw ww</w>\nawa its</w>\nun real</w>\nco pen\nasy lum</w>\nex otic</w>\nbu en\nmo ck\nen able</w>\narch y</w>\nfr a</w>\npla stic\nal mond</w>\namp li\ndispla ys</w>\nabbo tt</w>\ns me</w>\nx p</w>\nðŁĻ ĥ</w>\ngraph ic\ni ved</w>\nmar a</w>\ncau tion</w>\nlea ks</w>\nen berg</w>\nul u</w>\nunic orn</w>\ncann on</w>\nappren tic\nðŁĺĺ ðŁĺĺ\nb ball</w>\nwil low</w>\nat ics</w>\nam as</w>\nmanufac turer</w>\ncampaig ns</w>\nport ers</w>\nflo ors</w>\nl su</w>\nty pe\nke j\nhonor ary</w>\nit im\nto le\nmin ecraft</w>\nd x</w>\nma sh</w>\nri o\nconsequ ences</w>\nron ald</w>\ngo ssi\nsuffol k</w>\nmu se</w>\nr bi</w>\nlive music</w>\ni van</w>\nðŁİ ¤</w>\nle u\npatri ot</w>\nman it\nlan ca\nhome decor</w>\nde ar\nsig ma</w>\nti de\nstr ings</w>\nv ita</w>\nsequ el</w>\ntry na</w>\ninve stigate</w>\nbor is</w>\nve gan\nbarri er</w>\nmind fulness</w>\nweb b</w>\nhu stle</w>\nin da</w>\ntan zania</w>\nstr ay</w>\ntex as\nc ag\ndiagno sis</w>\nwom an\ng w</w>\nob session</w>\nl ative</w>\nnu fc</w>\nfl ynn</w>\nmoment um</w>\nsof a</w>\nwal d</w>\nvege table</w>\ntu cker</w>\nsupp er</w>\nse ab\nar ro\nse ag\nven ting</w>\ncounc ill\nsp lat\ncal cul\n.. #</w>\ncom fy</w>\nodi sha</w>\nsto pp\nwar fare</w>\nca es\nà ¨\nco y</w>\nprice less</w>\nin sec\nðŁĺ Ľ</w>\ncontro ls</w>\nempower ment</w>\ndatasci ence</w>\nper pe\ngen ic</w>\ne res</w>\ntru deau</w>\nman o\nsla very</w>\nexpand ing</w>\nma he\nfa iling</w>\ns aga</w>\nphotograph s</w>\ncre st</w>\nre on</w>\nsurf ing</w>\nhi e</w>\nðŁį Ģ</w>\nja e</w>\nfel lows</w>\nsouth ampton</w>\nsol om\nce ster\ntab ility</w>\nhor n\nse ct</w>\nhe e</w>\ncole man</w>\nat las</w>\nexplo rer</w>\nconsul tation</w>\ncopy right</w>\norgani zing</w>\nden ied</w>\nmon keys</w>\nnoo dles</w>\nbr is</w>\nfl or\ndou gh\nbon ds</w>\nsho cked</w>\neco system</w>\ncare fully</w>\nw m</w>\napart ments</w>\ncur ve</w>\nsan diego</w>\nmust ard</w>\ncomm en\ncere mon\ne ch\nru th\nðŁĻĮ ðŁı»</w>\nhawa i\nfil med</w>\nte ar\nas ingly</w>\nca ir\nwat t</w>\ninstru ment</w>\nou tta</w>\nye ol</w>\nriver side</w>\në °\n. :</w>\nnor wich</w>\nalo g</w>\nmigr ants</w>\nnew man</w>\nri de\nspr ink\ntarge ting</w>\nbeli eve\ntor ch</w>\nreflec ts</w>\nper mission</w>\nff man</w>\nene mies</w>\nbas ics</w>\nse ized</w>\nsun days</w>\nle i\nhass an</w>\nen do</w>\nh c\nst ad\nle ments</w>\nkk kk\nnan o\nshar k\nman a</w>\non ic\ntreat ments</w>\near ly\ncollabor ative</w>\nshu ttle</w>\nbran ches</w>\nmis ses</w>\nmained cm</w>\nap ers</w>\nky le\ncarri e</w>\nleis ure</w>\nsh et\nbir ding</w>\nadv ances</w>\nðŁĵ Ŀ</w>\npopu lar\ndi ane</w>\na be\nre war\nneigh bour\nk pop</w>\nremem brance</w>\nplay ground</w>\nru b\nkrish na</w>\ne bola</w>\ninqu iry</w>\nep a</w>\nlu min\norgan isation</w>\nabra ham</w>\nnorm ally</w>\npre ten\njan et</w>\nw t\nðŁĴ İ</w>\nencoura ging</w>\na stic</w>\nbu mp</w>\nsyd ney\ns z</w>\nss ss</w>\ngar rett</w>\nðŁĵ »</w>\nconsul ting</w>\nroman ia</w>\nspo tting</w>\nchanc ellor</w>\nar ma\npresti gious</w>\nðĿ Ĳ\nt ad\ncry st\ncompe tit\nrati o</w>\ncat aly\nbro w</w>\nj ur\nvi king</w>\ncommu te</w>\ny day</w>\nla yers</w>\ndu mb\nesc al\ngenoci de</w>\nf ill\ngu pta</w>\nste pping</w>\nse i</w>\nfo to\nwild cats</w>\ncol i</w>\nprojec t\near nings</w>\nst r</w>\nge ons</w>\ncomple tion</w>\nb m</w>\ndecor ated</w>\ncraw ford</w>\naf ghan</w>\nsc are</w>\nvisi bility</w>\nhi b\ndirec tion\nstro ll</w>\nchrist ina</w>\nalter nate</w>\ncl are</w>\nsty list</w>\nbe hold</w>\ns ance</w>\nleop ard</w>\nacqui red</w>\nnarr ative</w>\nash i</w>\nthe a\n?? ??\npe as</w>\nat ch</w>\nsli des</w>\nle en</w>\nrenew able</w>\neng lish\nqu ir\nco aster</w>\nr x</w>\nfo ols</w>\nmatch day</w>\nmis m</w>\namaz ing\nz ig\nke ting</w>\nwon t</w>\nto wel</w>\ndi ab\nsta ke\nn m\nmel t</w>\ne than</w>\ngra pe</w>\npolit ician</w>\nsm en</w>\ní ĺ\nre o\nwedd ings</w>\ncat cher</w>\nor acle</w>\nme mo\nðŁĮ ´</w>\nec k</w>\nrob bie</w>\nnorwe gian</w>\noper ator</w>\nam or</w>\nse wing</w>\nju l</w>\nx ie</w>\nu v</w>\nfif ty</w>\nme ga\ntatt oo\nliber als</w>\nu pri\ntraffic king</w>\nrichard son</w>\nsu v</w>\nki p</w>\nmess y</w>\ntremend ous</w>\ngl ou\ncour tney</w>\nla d\nstere o\nmy ers</w>\ni dio\n^_ ^</w>\nman ning</w>\ndy e</w>\nw d\nthr one</w>\njun k</w>\nas u</w>\nprovin cial</w>\nk ook</w>\nwr c</w>\nfine art</w>\nhamp shire</w>\nrenais sance</w>\nb red</w>\nfall out</w>\ns j</w>\nsn l</w>\nal am</w>\ntor ture</w>\nfy i</w>\nsh ines</w>\npa w</w>\nch ar</w>\nhen ry\nc row</w>\naci ous</w>\ndi an\npa ige</w>\nba re\nstock holm</w>\nscen ery</w>\nðŁĩ ·\njef frey</w>\npu sh\ndecor ation</w>\nne d\ncu te\nbrig ade</w>\nlaven der</w>\ninv ites</w>\ne sports</w>\nvo ir</w>\ndri ed</w>\ntran spl\nsur geon</w>\nno vels</w>\npul ls</w>\nson y\nlun ar</w>\nman e</w>\ni vy</w>\nfru str\ndor set</w>\nsa i\ntor res</w>\nssi on\nshut down</w>\nsuggesti ons</w>\nwrit ing\ne o\nbattle field</w>\nu ga</w>\nðŁĲ ¾\nvac u\nspl ac\ng it\nu g</w>\nhigh land</w>\n% )</w>\nmer maid</w>\nsacram ento</w>\nta ils</w>\np w</w>\nka h\nt ell\nenh anced</w>\nì ķ\nauck land</w>\ncru el\nðŁ¤ ©</w>\nau dre\nsail or</w>\ngram mar</w>\ng love</w>\nde on</w>\ninfl am\nfresh ly</w>\nk ell\nzi p</w>\nchristi e</w>\nmil d</w>\ndi xon</w>\ninstru ctor</w>\ng ence</w>\nãħ ł\nsub jec\nconstitu tional</w>\ncrow ds</w>\nin visible</w>\nru ins</w>\nda k</w>\nsi p</w>\npla que</w>\np ouring</w>\ncomple x\nz ine</w>\nste ad\nf let\ntrans mission</w>\nlo way</w>\nar un\nincre asingly</w>\nau d\ntransp aren\ncro wned</w>\nsc oun\nblizz ard</w>\nlux u\nfi ers</w>\nachieve ments</w>\nhun ters</w>\nrock ed</w>\nbas in</w>\nvio let</w>\npro ves</w>\nachiev ing</w>\npro sper\nse ga</w>\nflo at</w>\nvi an</w>\nxi v</w>\npol ic\ntur a</w>\napproxim ately</w>\nwander lust</w>\nkeep ers</w>\ngeta way</w>\nco d\npol is</w>\nbr yan\ncol ts</w>\ntal ents</w>\nyo gur\ngluten free</w>\nwri st</w>\ngr y\ncze ch</w>\nðŁİ Ī\nev ille</w>\nðŁı Ī\nto x</w>\ndani els</w>\nam er</w>\nbi ds</w>\nweare one\nme tab\ng t\nboy z</w>\npd x</w>\npos session</w>\npu shed</w>\nshr ine</w>\nreali stic</w>\ntri gger</w>\nna vi\nru mors</w>\nn af\njen kins</w>\ntr un\ncomm uni\nÃ Ĺ</w>\ngam ers</w>\narm or</w>\nmoham med</w>\nbal cony</w>\ny ah\nstron gest</w>\nrhy thm</w>\nunfor gettable</w>\nk p\nho bb\ncusto dy</w>\ngreg or</w>\nr ita</w>\naes thetic</w>\nil ation</w>\nsponsor ing</w>\nn ay</w>\nkid napp\nsh s</w>\nra jas\nme g</w>\nsignific antly</w>\nbutt ons</w>\nla c</w>\nver sions</w>\nessenti als</w>\nopini ons</w>\nk ro\nd printing</w>\nwi dely</w>\nd k</w>\nur an</w>\ny al\nreque sted</w>\nc n</w>\ncur ric\nplu m</w>\ngr un\nv m\ndev on\nm yo\nrel ation</w>\njuvent us</w>\nrou ge</w>\nmin ority</w>\nmin es</w>\njupit er</w>\nn ine\noxy gen</w>\nfran kie</w>\nune sco</w>\nfab ric\ndisgu sting</w>\nsal man</w>\ndete ction</w>\nlan ka</w>\nd ac\nðŁĩ« ðŁĩ·</w>\nargu ment</w>\nshel ves</w>\ncel tics</w>\nrober to</w>\npi gs</w>\nhe dge\nfau l\npow ering</w>\nbutter flies</w>\nfi r</w>\nre make</w>\natt i</w>\ncom o</w>\nemp ha\nkend all</w>\npoke mon\nse ating</w>\nd ans</w>\nbald win</w>\nðŁĳ »</w>\nlesli e</w>\none direction</w>\nti mber</w>\nim an</w>\nfon t</w>\ne der</w>\ndi on</w>\nste ph</w>\nfor mat\ngre gory</w>\npro p</w>\nhe x\nru in</w>\nsor y</w>\ninf er\nn aw\nbar ak</w>\nsd gs</w>\nkar ao\nlu sh</w>\nv ander\nend ent</w>\ng is\na fro\nsoc cer\nay an</w>\nt uni\nlun g</w>\nda yof\nalex a</w>\nmar ath\naddic ted</w>\nag ile</w>\nhy gi\nlight weight</w>\nì §\nmand ela</w>\njo ey\nanc y\nhu m</w>\nbi r</w>\nmemor ial\njim in</w>\nging er\nv ak\njav ascri\ncro ps</w>\norig ins</w>\nd ari\npi per</w>\nim port</w>\naggre ssive</w>\npredic tion</w>\nre pairs</w>\ncr acker</w>\nvoy age</w>\nni ke\nmu mmy</w>\nlinke din</w>\ncountry side</w>\nbor der\ngla ss\nper t</w>\ns als</w>\nsho e\nautograph ed</w>\nwal nut</w>\ncolle gi\nsal ary</w>\npa iring</w>\nðŁĮ ¸\ncath ol\nswee the\ndefe ats</w>\nstreng then</w>\nroof top</w>\nimpro vements</w>\nbarri ers</w>\nur u\nt ally</w>\nru led</w>\nðŁĨ ļ</w>\nnai ja</w>\nemo ji</w>\nper cent\ngi o\npro bs</w>\non ce\nadm its</w>\npa ths</w>\nli ar</w>\nday tona</w>\npe ters</w>\ncal i</w>\ncal li\nmu g\no sa\nap h\nab y\nhy de</w>\neth nic</w>\npla ins</w>\nol f</w>\nhaha hahaha</w>\nholi c</w>\n?! ?!</w>\nsu bli\nbl acks</w>\nmo t\ngh ton</w>\nlo vin</w>\nb rent</w>\nbar u</w>\nl ati\nde w</w>\nate au</w>\nq a</w>\npain ful</w>\nbu sters</w>\nst atic</w>\nðŁĩ¨ðŁĩ ¦</w>\nnote book</w>\nout fits</w>\nsi es</w>\nr f</w>\nfloo ds</w>\nÑ Ģ\nthro at</w>\nsu ici\nro vers</w>\nbeng al</w>\npre pares</w>\nblo g\nmini ature</w>\nØ ¨\nam phi\ncom b</w>\nr sp\nin timate</w>\ngreen e</w>\nÌ ĩ</w>\nal tar</w>\nsurg ical</w>\nves sel</w>\n... ?</w>\ngav in</w>\ng ator</w>\nthreat ened</w>\nz ar</w>\nrob bery</w>\ndi er</w>\npromo ted</w>\ny g</w>\nx s</w>\nsu bs</w>\ninter viewing</w>\nthreat ening</w>\ndo zen</w>\nme ado\nwater fall</w>\nnintendo switch</w>\ncal um</w>\nmini sters</w>\ndro p\nunivers ities</w>\nwar ned</w>\ntac tics</w>\nðŁĩ ²\nrefu se</w>\nad ju\nv ast</w>\nðŁĺ ´</w>\nmc fc</w>\nlib ya</w>\nno filter</w>\ndistribu ted</w>\nre ser\nron nie</w>\nde co</w>\njavascri pt</w>\nmon k</w>\nintere sts</w>\nfle x\nmar tha</w>\nsti es</w>\noo d\nðŁ¤£ ðŁ¤£\ne un\nb ali\ng omez</w>\nsti mul\nmoder ate</w>\nd ity</w>\nir is</w>\nstra w</w>\nconsist ent</w>\ndirec tions</w>\nadop t\nsal sa</w>\ncro o\nreco vered</w>\nblack friday</w>\nlan caster</w>\naccep t\nweareone exo</w>\nbuil ds</w>\nfree man</w>\nair plane</w>\nditi on\nbel ong\njam ie\npit ching</w>\nli f\nom in\ncri spy</w>\npre pping</w>\nve g</w>\nchan g</w>\naccompli shed</w>\ngraci as</w>\ndolph in</w>\nelec tor\nculin ary</w>\nsuper bowl</w>\nwal a</w>\npur suit</w>\nblack berry</w>\nbe an\ncardin al</w>\npro ved</w>\nimmigr ant</w>\nstric tly</w>\nholocau st</w>\npass age</w>\nha us</w>\ncou p</w>\npur se</w>\nhar ass\n< <</w>\nle ed\nado be</w>\nst ad</w>\nlegis lat\npar ked</w>\npri yan\nsil va</w>\nkri st\ns the\nfun ky</w>\nig a</w>\nsett lement</w>\nph s</w>\nt mrw</w>\nstre ssed</w>\nhun t\nho ckey\ntreas ures</w>\ncham bers</w>\nol u\nhu t</w>\nmar ley</w>\ntex ture</w>\nwilder ness</w>\nmm ing</w>\npoten tially</w>\nom aha</w>\nju dy</w>\nto es</w>\nspo iler</w>\ndistingui shed</w>\nfeli x</w>\nah u</w>\nrecommend ations</w>\nzom bies</w>\nhit ler</w>\ntri ple\ncolla pse</w>\nmotiv ated</w>\nulti mat\ngg ling</w>\nso y\nci gar</w>\nfo ren\nvine yard</w>\ngl itter</w>\nfin dings</w>\ncolon ial</w>\nhun ter\neri k</w>\nden s</w>\nbeet le</w>\nlot te\nsub tle</w>\ns matter</w>\ntru sted</w>\nexperim ental</w>\nnam ents</w>\nðŁĺ Ĩ\nregi on\nacquis ition</w>\nbre eding</w>\nquarter back</w>\nam reading</w>\noo td</w>\nru de</w>\niniti atives</w>\nst out</w>\nhy ung</w>\nout come</w>\nal fred</w>\nmic s</w>\nexper tise</w>\nbacter ia</w>\npengu ins</w>\njump er</w>\nvalen cia</w>\nbar k</w>\ning day</w>\nsell ers</w>\ncontrac ts</w>\nhou ston\ncommissi oned</w>\nadap tation</w>\nswan sea</w>\nsanti ago</w>\ncommon wealth</w>\nju dging</w>\nsub mission</w>\nsco rer</w>\ntom my\nÃ± o</w>\nex quis\nfil ing</w>\nexplan ation</w>\nalli son</w>\nwemb ley</w>\nri dge\nchev y</w>\nsan tos</w>\nown ership</w>\ncogn itive</w>\nfavour ites</w>\nsh ed\nphil anthro\ndele ted</w>\ngo dd\ns nor\ngui delines</w>\nff ing</w>\nje ep\ncli ps</w>\nsw amp</w>\nan or</w>\nguil d</w>\nbol ton</w>\nspring field</w>\nmunici pal</w>\ngoal keeper</w>\nye on</w>\nðŁĺįðŁĺį ðŁĺįðŁĺį\nãħĭ ãħĭ\nwater front</w>\ngra ve\ncontempor ary\nar ity</w>\nÃŃ a</w>\nsle eps</w>\nsy rup</w>\nal am\npi re\nco yo\nmoto gp</w>\nty son</w>\nkej ri\ncir cul\nsing ly</w>\ncr unch</w>\ncomplic ated</w>\nnostal gia</w>\nk op\nmo ve\nk ale</w>\nmac ro</w>\nmid west</w>\nh ans</w>\ntri bal</w>\nnu de</w>\nà¯ į</w>\nbey once</w>\ncongratul ate</w>\ncat er\nleagu e\nðŁĻ Ĭ</w>\nla dder</w>\ncra shed</w>\ntech nic\nkarao ke</w>\nharass ment</w>\nro ts</w>\nexperi encing</w>\nkri sten</w>\nðŁĩ ³\nðŁ¤ Ĺ\nreflec tions</w>\nguin ness</w>\nillustr ator</w>\nðŁĻı ðŁı»</w>\ncen ter\nnar row</w>\ncomm ons</w>\nregul ations</w>\nÙ Ĩ\nhar m\ncro ft</w>\ncu ssion</w>\nhong kong</w>\nst ical</w>\nintern ship</w>\nzo e</w>\ncho p</w>\nhoo ds</w>\nestim ated</w>\nbatter ies</w>\nberke ley</w>\nsmooth ie</w>\nshau n</w>\ncro s\n~ ~</w>\ncam pe\nhu mp\nb g\nproto type</w>\ncl ick\nshaw n\nre viewed</w>\ntem pl\np f\njed i</w>\nblo gs</w>\nray mond</w>\nas th\nba h</w>\nav ail</w>\nscot ch</w>\nleaf s</w>\nnik ki</w>\nto k\nhol low</w>\nur ges</w>\nof t</w>\nun like</w>\nlat in\nu e\ncat ering</w>\nmil i\nalter nati\nma ver\nÐ ¸\nag le</w>\npre order</w>\nlu x</w>\ncu cu\nðŁĳı ðŁĳı</w>\nt art\nâĿ¤âĿ¤ âĿ¤</w>\narab ic</w>\nrapi dly</w>\nar rang\nall en\ntravel tuesday</w>\npa ws</w>\nflo ws</w>\nst ability</w>\nflu id</w>\nca pp\ncan berra</w>\nuu uu\nsp ani\ndemon stration</w>\nm la</w>\nplac ement</w>\nm w\npresi dents</w>\nawe som\nbever ly</w>\nani st</w>\nne al</w>\nfather sday</w>\nreferen dum</w>\nla hore</w>\no aks</w>\ndeb bie</w>\nhalf way</w>\ngho sts</w>\nde bor\nmatthe ws</w>\nfi at</w>\nt fw</w>\npre sen\nrob i</w>\nde d\nbro ck</w>\nlaugh ed</w>\nam ounts</w>\nbam boo</w>\nkinder garten</w>\neat en</w>\nmtv hottest</w>\nbreak out</w>\nu sic</w>\nfra ser</w>\nlegis lative</w>\np ang\nmodu le</w>\nsam my</w>\ngo ver</w>\near ns</w>\nexpe dition</w>\ngar h</w>\nconcep ts</w>\nchar lie\nla va</w>\nbachel or</w>\nveg gies</w>\ndeter mine</w>\nel lie</w>\nun locked</w>\nfru it\ndal la\ncou pe</w>\nwash ington\ndepo sit</w>\niv ory</w>\npau la</w>\nchic ag\ngu cci</w>\nðŁİ ĥ</w>\ncul tiv\npier ce</w>\nli fted</w>\nstu mb\nre cover</w>\nmusc les</w>\nconduc ting</w>\ncb s\nmcla ren</w>\nsophi a</w>\ncel lu\noce ans</w>\nup loaded</w>\ngame play</w>\nmal dives</w>\nkim ber\navo i\nrac er</w>\nca ine</w>\ncav s</w>\nh ana</w>\nli ga</w>\nra ven</w>\ninter vention</w>\ninaugur ation</w>\noo h</w>\nat traction</w>\nmerchandi se</w>\ntune in</w>\nli king</w>\njuni ors</w>\nint ended</w>\natt acking</w>\naqu arium</w>\ni wd</w>\ncomp onents</w>\nsur ing</w>\ncent u\nyogur t</w>\nðŁı ĥ\nshow room</w>\nop tical</w>\nty our\nju dge\nyi eld</w>\nan to\npl c</w>\ntransparen cy</w>\nrecy cled</w>\nchi ef\nar om\nambassad ors</w>\nplan et\nâĿĦ ï¸ı\nom ed</w>\nvaness a</w>\ncour t\nmar gar\nhal ey</w>\nv r\nreg ina</w>\npd ates</w>\nhi span\nlive stream</w>\nâģ £</w>\nya hoo</w>\ngal la\nsecu red</w>\nw ir\nbene ath</w>\noff l</w>\nn il\nam b</w>\nye g\nout let</w>\nu te\npe ep</w>\nlind say</w>\nbent ley</w>\n... !</w>\nhe el</w>\ntrilo gy</w>\nvo s</w>\nty re</w>\nthere fore</w>\ntor onto\nab i\nsimp li\nja e\nexten sive</w>\neleph ants</w>\ns or</w>\norient ation</w>\nim peach\nre play</w>\nconstru cted</w>\npeter son</w>\npa is\npor ted</w>\ncustom s</w>\ncolla p\nad u\nhigh lands</w>\nsal em</w>\nshel by</w>\nko vic</w>\nstra in</w>\nro sie</w>\nsen ators</w>\nsnap s</w>\nbo bb\nsuz uki</w>\nbla des</w>\nk p</w>\nlo lo\ngener ate</w>\nsi ght\nma e\nstruc tural</w>\npredic t</w>\njump ed</w>\nah mad</w>\nsun g\njust ice\ngla m</w>\nvol vo</w>\njubi lee</w>\nde tention</w>\nlo sses</w>\npu ri\nevery time</w>\nÐ °\nra o</w>\ned ge\nli mer\nrese mb\nhar old</w>\nre tri\nsacri fic\nsurpri ses</w>\nam c</w>\nsrilan ka</w>\nbar bie</w>\nmen s\nfin n</w>\nag s</w>\nukrain ian</w>\nem brac\nî Ĳ\nflav ors</w>\nhom er</w>\nlau re\nou th\npr iced</w>\nver de</w>\nfir m\nah s</w>\ncu b\ntre y</w>\npar anor\npro fit\nin dv\nwho a</w>\nhar sh</w>\nal ot</w>\ncrit ics</w>\nhu bby</w>\nfi gur\ngi ra\nca stro</w>\nchan el</w>\nin put</w>\norigin als</w>\nten ant</w>\nyy yy</w>\nture rs</w>\nlincol n\nco on</w>\nlear n\nch ou\nac are</w>\no les</w>\ndin er</w>\nhy p\nbizar re</w>\nmc r</w>\nlet sgo\ndecor ating</w>\nðŁĮ İ</w>\nal ison</w>\nar vin\nf d\nreha b</w>\nmccar thy</w>\nlot tery</w>\nda h\nminne apolis</w>\neli gible</w>\ndiagno sed</w>\nemer ald</w>\ndestin ations</w>\ns ans</w>\nor y\nbla zers</w>\nn v</w>\nba il</w>\ndigital art</w>\nno c\nmal ta</w>\nsol ar\npi pes</w>\nalleg ations</w>\nno ck</w>\npo pe\nbri d\npremi er\nn x</w>\npresent ations</w>\nef a</w>\nbo ws</w>\nval ve</w>\nopp onent</w>\nĮ ë\nvisu al\ning le</w>\ncate gor\ne ter</w>\npo is\ndan i</w>\nat tract</w>\nneu tral</w>\nth ene\ncra shes</w>\nfred die</w>\nut ili\nc st</w>\nawak ening</w>\nslo ven\nquali fy</w>\npro of\nfair y\nle v\nfre ight</w>\nenjo ys</w>\ncup cake</w>\nflav our</w>\nâ ķ\nprotec tive</w>\nðŁĳı ðŁı»</w>\nis u\nad mir\nh mmm</w>\ncontinu ous</w>\nai res</w>\nrap tors</w>\nshowcas ing</w>\ny uk\npa ste</w>\nfollow er</w>\ninstru ctions</w>\nsp ru\n@ __</w>\nthe o\ndebu ts</w>\nve tte</w>\nsto w</w>\nes of\nach ed</w>\nsul tan</w>\nsand wich\nsom alia</w>\nfranc o</w>\ncar ne\nflu ffy</w>\nal pine</w>\njas mine</w>\nhe ated</w>\nviol in</w>\nple ss</w>\ndivor ce</w>\nper former</w>\nphi es</w>\nport sm\ndar a</w>\nkir by</w>\nlo p</w>\nchill i</w>\nfor th\nsky pe</w>\nðŁĩ®ðŁĩ ¹</w>\ncelebr ities</w>\ned y\nve e</w>\npo ison</w>\ney el\ngra bs</w>\nssi c</w>\nun o</w>\nwester n\nrail road</w>\nam er\nnumer ous</w>\ns v</w>\nfo w\nfi st</w>\nâĢ ĭ\nreque sts</w>\nmar tial</w>\nem my</w>\naccept ance</w>\nlau ra\nà¸ ´</w>\ner up\nhyun dai</w>\nout lander</w>\nu tt\nwrest le\nesp resso</w>\ndemand ing</w>\ng dp</w>\ngeo graphy</w>\nsas kat\ntro ll</w>\nconfe der\nsu es</w>\nse m</w>\nbe ts</w>\nt ful</w>\nto sh</w>\nteach es</w>\ncol oured</w>\ngal way</w>\nmac y</w>\ndis orders</w>\nbb cra\nat em\nfen der</w>\nlit ter</w>\ne sh\nprovi ders</w>\nrenov ation</w>\nnomin ate</w>\nps g</w>\nnomin ations</w>\njen na</w>\nshar p\nsome day</w>\nz ur\nbra ins</w>\nche shire</w>\npre y</w>\nhu go</w>\nÂ ¿</w>\nto ken</w>\nr v\ncar r</w>\ntac tical</w>\nzel da</w>\nkay la</w>\nfern ando</w>\nphotograph ers</w>\nj our</w>\numb rella</w>\nwoo dy</w>\ncongress man</w>\ndu mp</w>\nle vy</w>\nju an\nd azz\nsign als</w>\nla in</w>\nan u</w>\nmic hel</w>\npor ch</w>\nal den\nsibl ings</w>\ny ale</w>\npe el</w>\nsw ick</w>\ngg in</w>\nll c</w>\nk ale\ns con\nil d</w>\npat reon</w>\nre el</w>\nqu in</w>\nwit t</w>\nmar ty</w>\nmoo dy</w>\nton i</w>\nder y</w>\ng ators</w>\nspeci fically</w>\ndd in</w>\nly on</w>\ntr ick\nmeado ws</w>\np j</w>\nbor gh\nvi k</w>\ntu r</w>\nbron x</w>\npu ff</w>\nlan tern</w>\nðŁ¤ ¦\ng ently</w>\nbe stie</w>\nfac t\nrefu sed</w>\nfas ci\nmp y</w>\nðŁĶ µ</w>\ncross over</w>\nmead ow</w>\nindian apolis</w>\nduc ation</w>\nsle y\nloo m</w>\nmix er</w>\nnew music</w>\nfilm maker</w>\nprosper ity</w>\nli m</w>\nweek end\ncre amy</w>\nneu tr\nlu ther</w>\nh v\nnor thern\ntw o\nh ra</w>\ncat ches</w>\nappear ances</w>\nha bit</w>\nkitt ens</w>\nn v\nilla c</w>\ninf an\nregar dless</w>\nliz ard</w>\ndun k</w>\ncur tain</w>\nac om\nin tu\nve z</w>\ne min\nfl ats</w>\ncalend ars</w>\nem power</w>\nru ined</w>\nhun gary</w>\nvi d\nwe x\nu lum</w>\naber deen</w>\no sa</w>\nk t\nma ssi\nse emed</w>\ns den</w>\n' ?</w>\ntele phone</w>\nde fi\ninsp ires</w>\nme ow</w>\nz ones</w>\nbl ind\npl y\ntuc son</w>\nadvent ure\nge d\noy ster</w>\nðŁĳıðŁĳı ðŁĳı</w>\nout put</w>\ntt t</w>\nmetal lic</w>\nsma sh\nucl a</w>\nsco ts</w>\nperfe ct\nlu cy\nregular ly</w>\nsp ic\nrel ative</w>\nath ers</w>\nmis e</w>\nbatt ling</w>\ndeci des</w>\nmat a</w>\noccu pied</w>\nrandom ly</w>\ncat softwitter</w>\ngi an\nball y\nal ties</w>\nal lies</w>\nim men\nsy rac\nðŁĴľ ðŁĴľ\nl lan\nau r</w>\nk ut\nlam ar</w>\naffe cts</w>\nn ra</w>\nstar war\nðŁ¤ ĺ</w>\nsc ram\nen chan\npro cess\nluxu rious</w>\nar ray</w>\nsher lock</w>\ncomp ati\ndor f</w>\nstre ss\nm su</w>\ns with\nsal a</w>\nsof instagram</w>\nfo il</w>\nunder stood</w>\nqu ay</w>\nr p\nc ade</w>\nja w</w>\nen ab\nen coun\nðŁİī :</w>\ndo ck\nsatur n</w>\nmu ll\nlay out</w>\nra rely</w>\nhapp ily</w>\nfix ture</w>\nor ph\nover looking</w>\nher bs</w>\nm itt\npil lar</w>\nnol an</w>\npe tty</w>\nstr y\nu i\nmu k\no res</w>\no vers</w>\ná µ\nre creation</w>\nwe sley</w>\nri t</w>\nkejri wal</w>\nsto cking</w>\ng v</w>\nsubscri bers</w>\nmoo se</w>\nma e</w>\nber t\nopp re\nassign ment</w>\nu ro\nhigh lighting</w>\ncal vin</w>\nwe igh</w>\ncambo dia</w>\nav on</w>\nke m</w>\ndis abilities</w>\nread y\nchar gers</w>\np ads</w>\niz ing</w>\nilli an</w>\ntru ste\ncol leges</w>\nassoci ates</w>\nalban y</w>\nmil ton</w>\ncr on\nbu r</w>\nhar dly</w>\nsi ghts</w>\nanti ques</w>\ne cho\nsurpri singly</w>\nha iti</w>\ncap t</w>\nph p</w>\nop io\nine quality</w>\nequ al\nken y\nsch mid\nautograph s</w>\nren t\nqu er\ncit rus</w>\nchalleng ed</w>\nte c\nepi de\nfe st\nz hou</w>\nli me\ncitizen ship</w>\ncry stal\nconvin ced</w>\nmess enger</w>\ncopen hagen</w>\nâĿĹ ï¸ı</w>\nwar ran\ndevelop ments</w>\nï¸ı âĥ£\nfore x</w>\nhi ro\nsne akers</w>\nxi de</w>\nvi va</w>\nstere o</w>\nbat ting</w>\nss el\nho st\nbeng al\ncritic ism</w>\nq c</w>\ncr un\nattemp ted</w>\nry e</w>\ndetermin ation</w>\ncre ations</w>\nd read\nlabel s</w>\npos se\nanc er</w>\njoh an\nsi ster\npartner ships</w>\nles bian</w>\nk st</w>\nguaran tee</w>\nbar o\nfix ing</w>\nma son\nm ous</w>\nchem icals</w>\nt less</w>\nbio diversity</w>\npar o\nbhar at</w>\nac ol\nrefu ge</w>\nen te\nt iti\ndys sey</w>\nrespon ds</w>\nlef to\nin er\nse vel\nrahu l</w>\nol ine</w>\nfrank fur\ncho reo\nenjoy able</w>\nc to</w>\nstrugg les</w>\nwood land</w>\nheavy weight</w>\ngen s</w>\nrece p\nac cred\nðŁĺ ¡</w>\ntrans formed</w>\nlist en\nat op</w>\nn k</w>\nsur ge</w>\nbe re\ngover nor\nprison ers</w>\nclau de</w>\nt ill\nmu lator</w>\nemo tion</w>\nwater loo</w>\nstar t\nðŁĩ º</w>\nclean ed</w>\ngrand mother</w>\nfear less</w>\nafric an\nastron omy</w>\nðŁı ģ</w>\nà¸ Ļ\nthe world</w>\nsu itable</w>\nanth ony\nk and\ntt en</w>\nmeaning ful</w>\ndisc lo\njaco bs</w>\nÃ ¸\ntom linson</w>\nghe tti</w>\nty pho\nsub stan\nas co</w>\nte k\nnag ar</w>\nmu d\nam on\nvacc ine</w>\nf ty</w>\nfle sh</w>\nno el</w>\ninfl ation</w>\nportu gue\nglam our</w>\ntra m</w>\nv re</w>\nte qu\nroun dup</w>\nw yn</w>\nrejec ted</w>\nmosa ic</w>\nsi ghting</w>\ncal f</w>\no ta\ncom position</w>\ngo pro</w>\ngonz ale\ne ed</w>\nb ard</w>\ntu e</w>\neffec tively</w>\nwe en\nal to</w>\nri bs</w>\nrel ate</w>\nthir sty</w>\nfu rious</w>\ndi m</w>\nch ard</w>\nperfu me</w>\ns ny\nchur chill</w>\nk of\nmaster class</w>\nwa ve\nðŁĶ µ\ner in\nown s</w>\nto be\nsk illed</w>\nte m</w>\ngo f\nen i</w>\ntor i</w>\ncra zy\nl ick</w>\nresi stant</w>\nici al\nag ar</w>\n! :</w>\ng ali\ndel aware</w>\nbl itz</w>\nkoh li</w>\npu ck</w>\navail ability</w>\nhi malay\ninflu ential</w>\ncro chet</w>\nvictor i\nread ing\nho bby</w>\nvie t\nj as</w>\nen gra\nsk ul\nðŁĩ² ðŁĩ\neduc ate</w>\ntech no</w>\ndistric ts</w>\nblu es\nse tt</w>\nseven th</w>\nlear ns</w>\nee ee</w>\napocaly pse</w>\nhang out</w>\ncru el</w>\nmu tu\nbru h</w>\nhel en\nshe er</w>\nc tion\nkle in</w>\ntex ans</w>\nce real</w>\nsh ine\nne red</w>\ngra s</w>\nam bro\nf ella</w>\nhin du\nmatthe w\nli ma</w>\nmir anda</w>\nje wel</w>\nso ho</w>\neuro vision</w>\nneighb ours</w>\nchand ler</w>\nbe sides</w>\nðŁ¥ °</w>\nast ros</w>\nthu mbs</w>\nren ault</w>\nra ve</w>\nhi red</w>\nðŁĸ ¤\nit ary</w>\nz or\nbla zer</w>\nk ine\nea u</w>\nkat y\ndc comics</w>\npe c</w>\nro dgers</w>\nwater proof</w>\nkill ers</w>\nsuper int\npre serv\nas so</w>\nbrew ers</w>\npromo tional</w>\nsc am\nvilla ges</w>\nsket ches</w>\nju icy</w>\nfor life</w>\nau dit</w>\nso lo\nfundam ental</w>\nlen e</w>\nphilipp ine</w>\nt end\nconserv atives</w>\nsponsor ship</w>\ndd le\na ine</w>\nh tc</w>\nos i</w>\nhul k</w>\nw af\nà¸ Ļ</w>\nevalu ation</w>\nant ine</w>\nsle e\nrobert son</w>\nroo sevel\nag i</w>\nsophi stic\nemplo yers</w>\nbubb les</w>\nko wski</w>\ninter action</w>\nsh u</w>\nbou le\nic an\nj are\nhan k</w>\nleg itim\nk nicks</w>\nkar ma</w>\nrecei ver</w>\nper ks</w>\nu h\nsta ir</w>\nsun i\nlabor atory</w>\ngra ves</w>\nvoc als</w>\noo t</w>\nc ture</w>\nthri ve</w>\ntic o</w>\nãĥ ³\nb w\ncarto ons</w>\nmcdon alds</w>\ndra w\ny ung</w>\npl er</w>\nli d</w>\neth ical</w>\ngroo ve</w>\nent a</w>\ninternational womensday</w>\npat ron</w>\nwor ries</w>\nðŁİ ħ\nðŁĳ ĭ</w>\nka therine</w>\ndi az</w>\ntor i\nbach chan</w>\ntru st\nmin eral</w>\nic om\nbuil ders</w>\nbor n\ncol oring</w>\nlat te</w>\nca se\nrevolu tion\ntra der</w>\nox id\nchi pot\ninst antly</w>\nsou thern\nse hun</w>\npro b\nher nandez</w>\nlis bon</w>\nhu awe\np ong</w>\nme a</w>\nro oney</w>\nwheel chair</w>\nke en\nbe tt\ncor in\nregulat ory</w>\ndi splac\nka ren\nsch em\nsun sets</w>\nwh ales</w>\nremin is\nhe p\nhi de\nmar cel\npand ora</w>\ndo yle</w>\nth fc</w>\not to</w>\nno kia</w>\ntrans gender</w>\nko v\nhawai ian</w>\nsha ve</w>\nso vere\nexc er\nnick i</w>\npu g</w>\nst or</w>\nro th\nwee t</w>\nleg al\ndig nity</w>\npo w</w>\nhom age</w>\nðŁĩ³ ðŁĩ\ns re\ncan on\nla x\nwo ah</w>\nquart z</w>\nÃ± a</w>\ngree ting</w>\nflick r</w>\nnai robi</w>\nadvoc ates</w>\nan c</w>\nvi i</w>\neu gene</w>\nth ra\nc re</w>\nel an\npen sion</w>\nth letics</w>\nton i\nre agan</w>\nx v</w>\nsto re\nben ch\nhar lem</w>\ntodd ler</w>\nsent enced</w>\nâĻ¥ ï¸ı\nglob ally</w>\nche aper</w>\nu f\nma m</w>\nnic o</w>\nik u</w>\ntho u</w>\nni st</w>\ndam i\nth ala</w>\nrho des</w>\nsal e\nbow ls</w>\nâ Ī\nlas vegas</w>\nsanc tions</w>\nadm ire</w>\nmat ched</w>\nun able</w>\ntravel er</w>\nele ven</w>\nstraw berries</w>\nâĢĶâĢĶ âĢĶâĢĶ\nstu dio\njac ques</w>\nim s</w>\nvalu ed</w>\ns no</w>\ncheese cake</w>\nn xt</w>\ne os</w>\ns x</w>\nf x\nton ic</w>\nhat ch</w>\nchic ks</w>\ngra ds</w>\nhand ic\nr ory</w>\nas p\nri pped</w>\ndenti st</w>\nn en\nlu fc</w>\nâľ Ĭ</w>\ndi ge\nhop kins</w>\nsher man</w>\nf da</w>\nfor all</w>\nash ley\nstr and</w>\nh y</w>\nliqu or</w>\nbuffe t</w>\ness ence</w>\nphar ma</w>\nsuri ya</w>\nðŁĴĻ ðŁĴĻ\nfesti vals</w>\nz an</w>\nre fresh\npur ple\nuni forms</w>\nkenne th</w>\n= )</w>\nas an</w>\nhel sin\ntransform ers</w>\nk ali\nperson alized</w>\nchal k</w>\nbo bby\nâ Į\nthe mes</w>\ndepar ture</w>\nprin t\nillustr ations</w>\nqui et\nagre es</w>\ngri ff\nØ ³\nm iti\ntoge ther\nconven ience</w>\nab ar\ncar lo\nturt les</w>\ninfo sec</w>\nsome what</w>\nar lington</w>\nscholar ships</w>\nemir ates</w>\nmu ms</w>\nst ella</w>\nauton om\nfe ather</w>\ng ore</w>\nnom inees</w>\nfragr ance</w>\nÑ Ĥ\nw ong</w>\nthea stern</w>\ngr e</w>\nz illa</w>\nis i</w>\nbump er</w>\ngo o</w>\ndo zens</w>\nab duc\nâļª ï¸ı</w>\no ils</w>\ndon ors</w>\nsil icon</w>\ni pod</w>\nfortn ite</w>\nðŁĴ ¨</w>\ntor o</w>\nspark ling</w>\nconsci ousness</w>\npal a</w>\nnu m\nmoun ted</w>\nffin s</w>\nthi eves</w>\nteam mate</w>\npra b\nom er</w>\nta pes</w>\nbo d\nmit su\nste w</w>\ne re\np bs</w>\ntu sc\nlo we</w>\nra de</w>\nparliam entary</w>\nh m\ned gar</w>\nðŁĳĩ ðŁĳĩ\nto a\na gh\nhon i</w>\ns late</w>\nge ek\nap t</w>\nhard t</w>\nta p\nhoriz on\ngrow th\nmake over</w>\nhi l</w>\npaper back</w>\nid an</w>\nreha bil\ngi u\npossi bilities</w>\nlet tu\nfran co\nbo ss\nach er</w>\ndoes nt</w>\nmo e</w>\nta ker</w>\nhuss ain</w>\nml k</w>\ndi l</w>\nth ia</w>\nham a</w>\nreal ised</w>\nraven s</w>\ncurric ulum</w>\nm ith</w>\nk night\nted x\nr v</w>\nisai ah</w>\ncumb ria</w>\nbirth days</w>\nf ing</w>\npre z</w>\nmu barak</w>\nexquis ite</w>\nclear ance</w>\ny en</w>\npar i\nev o\nÃ º\nmodi fied</w>\napp lying</w>\nimple ment</w>\ndisco vering</w>\nchap man</w>\nindie game</w>\ndis k</w>\ncrowd funding</w>\nmach in\nli vel\nsty led</w>\nâĿ Į</w>\nma king\nrehear sals</w>\nnutr iti\nsubscri ption</w>\nand ro</w>\ncre ators</w>\ncar ries</w>\nky lie</w>\ncam den</w>\nappren tice</w>\ntax pay\nc ca</w>\ntuesday thoughts</w>\npis sed</w>\ner man</w>\ndete c\nfreed om\nmer i\n.. !</w>\npsal m</w>\nsun light</w>\nper spec\nbe ings</w>\nbook store</w>\nrock star</w>\nfun ctions</w>\np ence</w>\nfav es</w>\nz n</w>\nobam acare</w>\nsp ill</w>\ncoven try</w>\npi geon</w>\npi vo\nba it</w>\nkol kata</w>\nav al\ndon or</w>\nwa h</w>\nprivi leg\ntra ditions</w>\nrajas than</w>\nten ess</w>\nportugue se</w>\nyn es</w>\ntack les</w>\nde fic\ntor n</w>\npol ling</w>\nthor ne</w>\nin a\nbened ict</w>\nbar ry\ncal ories</w>\nver dict</w>\nsave the\nnor ton</w>\noff ice\nmain stream</w>\nimpro ves</w>\nfr on</w>\nrespon ding</w>\nreal tor</w>\nscotti sh\nde clar\nr l\nshi v\nsupp lier</w>\nre sting</w>\nswee ts</w>\nqu i</w>\n. âĢ¦</w>\nwhit ney</w>\nstartu p\nthank you\nteach er\nh alls</w>\nha ve\nhand made\npro ving</w>\nquar tet</w>\nro chester</w>\nli an</w>\nvirtu al\nmend es</w>\nof icial</w>\nmid lands</w>\nx box\nmeas uring</w>\no vo</w>\naccommod ation</w>\nbri des</w>\ncollegi ate</w>\nintellec tual</w>\nin car\nni ag\nðŁį ·</w>\nsf w</w>\ncoco a</w>\nco ats</w>\ncivil ians</w>\npresi dency</w>\nmat rix</w>\nsweethe art</w>\ntri athlon</w>\nwag ner</w>\nra dic\nplann er</w>\nthe o</w>\nexecu tion</w>\nk um\nthe walkingdead</w>\nsc ar</w>\nro tation</w>\nblo gging</w>\nbom b\nre son\nbb les</w>\nst are</w>\nassi sted</w>\ne do</w>\nbrand ed</w>\nwar nings</w>\nthor pe</w>\nacknow le\nsatis fied</w>\nsho res</w>\nri d\ndor a</w>\nphys ically</w>\nbi gh\nappro ves</w>\nha h\nric al</w>\nvers atile</w>\npret end</w>\nlu m\nab hi\nye e\nsp it\nãĢ Į</w>\ndj s</w>\nash tra</w>\nj t</w>\nven ues</w>\ngram mys</w>\ncy clo\ntr acker</w>\nover watch</w>\nrepl ica</w>\nel yn</w>\nnr l</w>\nlind sey</w>\nhom o\nballo ons</w>\nkitch en\nsi s\nam os</w>\nende av\nðŁĴ »</w>\na rec\nthu g</w>\nhoo ked</w>\nhr c</w>\nnew york\nbur gh\nameric as</w>\npatric ia</w>\nug u</w>\nap athy</w>\nha st\npsy chi\ncor k\npetro l</w>\nðŁİ ¬</w>\nak u\npo pping</w>\npsycho logical</w>\nau x\ng ma</w>\ncad illac</w>\nwa ste\nauth ent\nbri stol\nnam e\nque er</w>\nto ber\njer ry\ncom in</w>\nch ant\nprivileg ed</w>\nop ar\nlo ser</w>\ntex t\nmar ker</w>\nstri es</w>\nequ ally</w>\nak i\nchrist mas\ngare th</w>\nble w</w>\nem ma\nimag in\nse als</w>\nche at</w>\nconditi oning</w>\nj ana</w>\nren s</w>\ndar ies</w>\no asis</w>\ndisc ounts</w>\ncoun cil\ni ka</w>\nshir ley</w>\nvou cher</w>\nal ps</w>\nw x\nq r</w>\ndri ft</w>\nattemp ting</w>\nut c</w>\nØ ª\ngonzale z</w>\nm f\njo ker</w>\nparalle l</w>\npa re\naspe cts</w>\nproce du\nn p\nam a\nrale igh</w>\nbright en</w>\ngu ire</w>\nradi ation</w>\ncre scent</w>\nho b\nil le\nstr and\nv ore</w>\nn ard</w>\nche st\ndi wali</w>\nav atar</w>\nal der\nd ling</w>\npa thetic</w>\nðŁĴ ĺ\nspir it\njor ge</w>\nfilm making</w>\nðŁĻı ðŁĻı\nchalleng er</w>\nb j</w>\ndown town\nht ml</w>\nade qu\ntwi sted</w>\nin ely</w>\n( '</w>\nwra ps</w>\noper ational</w>\ny ne</w>\nn us</w>\nmag net</w>\nmarket place</w>\nhealth ier</w>\nsnap shot</w>\ndam on</w>\ninter ven\nfe derer</w>\now ls</w>\nbiscu its</w>\nj p\nro deo</w>\nblue berry</w>\nlec tion</w>\nfron tier</w>\nsumm ers</w>\nre yes</w>\npede strian</w>\ngo l</w>\ncaf fe\nrefur bi\nbou lder</w>\nme ghan</w>\nspeci alty</w>\nla ss</w>\ne i</w>\nsuspec ts</w>\nappro x</w>\nrr r</w>\nra th\nst im\ncru shed</w>\nhe d\nwh un\nlo af</w>\ncr ore</w>\nriver a</w>\ngene tics</w>\nso ck</w>\nwa sted</w>\nny pd</w>\nansw ering</w>\ndo ve</w>\nbel la\nol in</w>\ndu n</w>\nfi ji</w>\npre tty\nspar kle</w>\ny un</w>\nj d\neuro pa</w>\nli fts</w>\nam ber\nmu r</w>\nte k</w>\nboy d</w>\nroy alty</w>\nin do</w>\nri b</w>\ngo tham</w>\nti est</w>\ninst alling</w>\nke mp\nthe photo\ncos mic</w>\n) ))</w>\nwhole sale</w>\nloy ment</w>\neas y\nsu ing</w>\nsett led</w>\naf p</w>\npro ver\nsuppor tive</w>\nre es</w>\nne ath</w>\ndeli ber\nc Ã©</w>\nwel come\npic oftheday</w>\nnew born</w>\npat ty</w>\nsun s</w>\nsi est</w>\nfl int</w>\ndiffe rently</w>\nspo ilers</w>\ntroop er</w>\ng ins</w>\ncor y</w>\nlook out</w>\nequi pped</w>\nta pe\nto by</w>\nresear cher</w>\nu sh</w>\nke yes</w>\nal ma</w>\ninduc tion</w>\nk w</w>\nk har\nsl ick</w>\nbri de\ne ur\ncra ving</w>\nbook ings</w>\nch es\ntr unk</w>\nvern on</w>\nsp her\ncryst als</w>\nrel atively</w>\npom pe\nuni ons</w>\nval ley\npar a\nw ant\nok c</w>\nde af</w>\nser gio</w>\nlen non</w>\nsh ay</w>\ncr a</w>\nv at</w>\nhe e\nt we\nliqu id\npol y</w>\nðŁİ ģ\nb ent</w>\nbe aring</w>\nmotor sport</w>\nbar be\nte sti\nhan i</w>\nfin ancing</w>\nastron aut</w>\nwater colour</w>\nri sh\ncomic con</w>\ngar t\nwr ong\nber n</w>\nit an</w>\nste pped</w>\nfil ters</w>\nc low\nme x</w>\ndem ons</w>\nall o</w>\nexpand ed</w>\ncomm and\net ers</w>\ngo ats</w>\nsi ri</w>\ny r\npot tery</w>\nmari on</w>\ni le\nel an</w>\nsan to</w>\nperson a</w>\ndu ke\nhom eless\nli ghted</w>\nwheel er</w>\nchang er</w>\ncab bage</w>\nsur real</w>\nham burg</w>\nsma shed</w>\nstr an\nk not</w>\ni art\nob i</w>\nbe dro\ndi al\nth ick\nb ingo</w>\nfu s</w>\nvacu um</w>\ncon ve\nati ve\naccur acy</w>\naccoun t\nre fer\nri z\nspider man</w>\nban a</w>\nr ite</w>\nu b\nab s\nmedic al\nlin k\nsi em\n> >>></w>\nbe tra\ng lowing</w>\nre actions</w>\npupp et</w>\nspa ghetti</w>\nang s</w>\nre medi\npray for\nroy ce</w>\nchar lotte\n£ ï¸ı</w>\ngh et\naffe cting</w>\nro de</w>\nsoci alist</w>\nmo ses</w>\naz i</w>\no it\nre porters</w>\ncd t</w>\nap ing</w>\ns nat\nminim al</w>\nwa ist</w>\nsie ge</w>\n>> >>\nri g\nschmid t</w>\nh are</w>\nec a</w>\nthor n</w>\nhe mp</w>\nes the\ncly de</w>\nth a\ndon ut</w>\nmoham ed</w>\nling erie</w>\nle gg\ncarpen ter</w>\nperform ers</w>\nde a</w>\nimag ined</w>\ncur se</w>\nla sh</w>\nct r</w>\nagu a</w>\nro ar</w>\ngr i</w>\nro le\nj fk</w>\nresur rec\nroosevel t</w>\nmaril yn</w>\nsm alle\nwill is</w>\nwa ited</w>\nchar ities</w>\nthe res</w>\nli k</w>\norigin al\ncar i\nc ough</w>\ncru ci\nla gun\ncontra st</w>\nk ou\narm our</w>\nre moving</w>\nt ent\nmaz da</w>\nbri ghter</w>\nthi ef</w>\ncor ner\ntequ ila</w>\nbuzz ing</w>\nal bi\np am</w>\naz ure</w>\ndisc oun\npixel art</w>\npossi bility</w>\nham ont</w>\ntra des</w>\nbu da\nhi ve</w>\nvers y</w>\nfin ch</w>\ntran spa\nem i</w>\nterri fying</w>\nin qui\ng ba</w>\nsub stitu\ncollec ti\nplac ing</w>\ncin dy</w>\nk ann\npa tho\ndiamon d\nmour inho</w>\nguine a</w>\nanthro po\nair s</w>\npu mps</w>\nì ļ\npas o</w>\ncur ling</w>\nan ita</w>\nresi dency</w>\nne wh\njo on</w>\ncigare tte</w>\nque ue</w>\nex trac\ngam es\nspl en\nex press\npublic ly</w>\nbon nie</w>\ntribun e</w>\nba ek\nreason able</w>\nc or</w>\ntimo thy</w>\nshe eran</w>\nÄ ±\nf dn</w>\nsu tton</w>\nconcentr ation</w>\ncarav an</w>\nx avier</w>\nal ger\ncy lin\nfreder ick</w>\nner ve</w>\npe ak\nlettu ce</w>\nj ail\npre game</w>\nkav an\nup graded</w>\neco logy</w>\nsquad ron</w>\ngra pes</w>\ngoo g\npa stry</w>\nðŁĹ £</w>\nãĥ¼ ãĥ\nmil ano</w>\nawa z</w>\npresen ter</w>\nðŁĮ ¿</w>\nher d</w>\nking s\ntem plate</w>\nfl our</w>\nh v</w>\nk ley</w>\ni ya</w>\nspe c</w>\nat er\nfrankfur t</w>\nco ch\ntex ting</w>\ndel i</w>\ncommuni st</w>\nregi ment</w>\nele anor</w>\nanticip ated</w>\nðŁĳĮ ðŁı»</w>\nthephoto hour</w>\nran o</w>\nsurvi ving</w>\nsimul ation</w>\ndaw son</w>\nar in</w>\naqu a</w>\nm or</w>\nâĢ¦ .</w>\ncin o</w>\nira qi</w>\nsh az\ndun dee</w>\nwe s\ndra u\nhann ah\ns news</w>\noccup ation</w>\nste en</w>\nx m</w>\nang les</w>\nsett ings</w>\ngur u\nkno x\nor ca</w>\nshap ing</w>\nw ent\ndr illing</w>\nzz ie</w>\nbr i</w>\nkis sing</w>\nfin d\nma ine\nâŃĲï¸ı âŃĲï¸ı\nðŁĮ į</w>\nlar ry\nbu sted</w>\nta vern</w>\nacti vely</w>\n- \"</w>\nreplac ing</w>\nno d</w>\nun lock</w>\n. \"\nâŀ ¤</w>\naffili ate</w>\nto w</w>\nl n</w>\nhappy newyear</w>\ndi f\nj m</w>\ngreen wich</w>\ncontro versy</w>\ndaw g</w>\ncon dol\nsav annah</w>\ncompens ation</w>\ntouch down</w>\nte o</w>\namb itious</w>\nembro i\nconvic ted</w>\niart g</w>\nbar ack\ntr ance</w>\ntestim ony</w>\nau dition</w>\nthum b</w>\nmy ths</w>\nbe x\nque z</w>\norch id</w>\nden y</w>\nentit led</w>\nhoo d\ngr ant\nin box</w>\nblue jays</w>\nr illa</w>\nsmalle st</w>\nbur den</w>\nin famous</w>\ndivi ded</w>\nboun daries</w>\nt ter\nel t</w>\nwy oming</w>\nbe verage</w>\nme sm\none ws</w>\nbudd hist</w>\ny ana</w>\nas sad</w>\nis ms</w>\nbar rett</w>\npredic ted</w>\nback to\ntw it</w>\ne there\ncap tains</w>\nescap ed</w>\nay o</w>\nlam borgh\ngard ner</w>\nla ps</w>\nk al</w>\nadverti sement</w>\ninsec ts</w>\nna po\nam en\nac y\nr and</w>\ng k</w>\nte h\nk athle\ntri dge</w>\npan cake</w>\nat ro\npyram id</w>\nbu la</w>\nparal ym\ngau ge</w>\nen cies</w>\ntom y</w>\nbiscu it</w>\nbut cher</w>\nquali fier</w>\ncoun ty\nke i\npo ols</w>\ndar ker</w>\nshould ers</w>\nðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸\nsp re\n( \"</w>\nwrit ers\ng m\nðŁİ ĵ</w>\nk nit\nhu ff\nmt b</w>\nphilli es</w>\no st</w>\nden is</w>\ng art</w>\nlicen sed</w>\ninter face</w>\nex cel</w>\nd well</w>\nfrom the\nco fficial</w>\naz zi</w>\nappear ing</w>\nfore st\nn ana</w>\nke ith\nmanufac turers</w>\nbeck ham</w>\n) ?</w>\ne se\ncol ony</w>\ndelic ate</w>\nut ter\nmc in\ntranspl ant</w>\npre ferred</w>\npar d</w>\nari e</w>\nhu b\npo ds</w>\nperspec tives</w>\npic t</w>\ndel u\napp er</w>\nbe than\np mo\ncrimin als</w>\nfemin ism</w>\nsh ack</w>\ncircum stances</w>\nfel las</w>\nprote sting</w>\nwa x\nsugge sted</w>\nt ator</w>\ndre w\nom ni\nfa ke\nkath y</w>\nre b</w>\ndel ine</w>\nber ni\nmi sty</w>\nðŁĳ ©\ner able</w>\nbreak through</w>\nmen swear</w>\nmillenni als</w>\nchan yeol</w>\nla z\ninser t</w>\nrep lies</w>\nphra se</w>\nn x\nihear tawards</w>\naudre y</w>\ngran ite</w>\nrac ec\nori e</w>\nter ra</w>\ninnov ations</w>\nbritt any</w>\nat eral</w>\npe ar</w>\nbio logical</w>\nsh ments</w>\ninstitu tion</w>\nm sn\nfrequ ency</w>\nd man</w>\nneg lec\nt f\nste fan</w>\nfox news</w>\nty po\ncomm s</w>\nsequ ence</w>\ncar men</w>\nwh ites</w>\neconom ist</w>\nexe ter</w>\nse um</w>\nre sorts</w>\ncas ually</w>\nbun de\ndivi de</w>\nØ ¹\nga g</w>\ncre ed</w>\nreti re</w>\ncau cus</w>\nrapi ds</w>\nwrestle mania</w>\ntul sa</w>\nsunder land</w>\nfundam ent\no di</w>\nyam aha</w>\nv ary</w>\nintri gu\nel se\nbe acon</w>\nan gie</w>\ntra ded</w>\ntran sm\ng ents</w>\nkn itting</w>\ngal ac\nðĿ Ĺ\nu to\nsea side</w>\nhol t</w>\nre rs</w>\nfar go</w>\ntrain ers</w>\nmon soon</w>\nb ale</w>\nsou ght</w>\nmad die</w>\nh w</w>\nco li\nfr an</w>\nfav s</w>\nðŁĴ Ķ\nint ent</w>\nr ally\ns bs</w>\nlemon ade</w>\nbarack obama</w>\nbre ad\nstick y</w>\nexplo sive</w>\nchel ten\nt j\nas soc</w>\nram en</w>\nhom ies</w>\nv log</w>\nmi ster</w>\nlor d\nâĢįâĻ Ģï¸ı\naly ssa</w>\nsketch book</w>\nru mble</w>\ncat ch\nmigr ant</w>\ndiscipl ine</w>\nun likely</w>\nchronic les</w>\nfl ora</w>\nsl ams</w>\nam id\ns boro</w>\ncoo p</w>\nju mps</w>\ntran qu\nmel is\nsof ia</w>\nen ri\ngab e</w>\nsy ri\nnicol as</w>\ncha i</w>\nw v\nbe cky</w>\nfoo ty</w>\nta o</w>\nsuppo se</w>\nðŁĺįðŁĺį ðŁĺįðŁĺį</w>\nplu sh</w>\nri sh</w>\nðŁ¤ ĵ</w>\nk ha</w>\nsatur days</w>\nac cent</w>\nhe c\nlim it\ncarl ton</w>\nwi red</w>\ntaylor swift</w>\nðŁĺ ĳ</w>\nsq l</w>\nhar ro\nrecipi ents</w>\ng at</w>\ngo p\nth of\namaz ed</w>\ngh an\nðŁıĨ ðŁıĨ\npor to</w>\ncla re\ndi stant</w>\nna c</w>\nohi o\nðŁĻı ðŁı¼</w>\nmt n</w>\nanti bio\ndino sa\nme sa</w>\npar tial</w>\nb v\nlear nt</w>\nlov ato</w>\nquesti on\nex tract</w>\ngossi p</w>\ngi bb\nniag ara</w>\nðŁĳ ¨\ndispla yed</w>\nso oner</w>\nste vie</w>\nnug gets</w>\nml n</w>\nbro m\ntur b\ngive aways</w>\nstu pi\nbl ink</w>\nc ili\nconven ient</w>\nmo h\nvi ve\nf ric\ncau se\ncham ber\ncu les</w>\nne arest</w>\nis se</w>\nsmall biz</w>\nt j</w>\ncanadi ans</w>\nsmar ter</w>\nbra sil</w>\nra re\nque tte</w>\nw ha\ncand le\nat omic</w>\nðŁĳį ðŁĳį</w>\nwarri or\nrelax ed</w>\nstri ps</w>\nne ur\nk ka</w>\nr fc</w>\njen sen</w>\nreco vering</w>\nrespon ses</w>\nsal am\northo dox</w>\nacti ve\nell ers</w>\nn it</w>\nâŃ Ĳ</w>\nmetro politan</w>\ncentu ries</w>\nvi da</w>\ngra ding</w>\ntranspa rent</w>\nsim ple\ndo ts</w>\nsuperint endent</w>\nelev ator</w>\nautom ated</w>\nred skins</w>\nima m</w>\nsummer time</w>\njona than\nge aring</w>\nmichel le\nconfl ic\nm ice</w>\nto te</w>\npubli sh</w>\npa x</w>\n) -</w>\nna iled</w>\ná ´\ntele scope</w>\nser bia</w>\nba b</w>\nape u\nst ically</w>\nsen ti\nr ats</w>\nisol ated</w>\ngrou p\nhat red</w>\nparanor mal</w>\nstan ley\nali on</w>\nsafe ty\nl s\nà¤ °</w>\nnex us</w>\nalexand ra</w>\nmas ks</w>\n+ +</w>\ntr on\nau k</w>\nbrother hood</w>\nbrow se</w>\nmix es</w>\nsim one</w>\nmu sk</w>\nappro ve</w>\nlo la</w>\nex p</w>\nper th\nfu turi\nun seen</w>\nd m\nchel se\nsc outing</w>\no we</w>\nportsm outh</w>\nk ram\nmi ze</w>\ndi spen\nsu p\nd lc</w>\nadver t</w>\ntere sa</w>\nis le\ncy cle\nmet all\nshi elds</w>\nmarin ers</w>\nra z</w>\ning en</w>\nfun d\nan go</w>\njon es\no ka</w>\nmad den</w>\nbroc coli</w>\ndomin ic</w>\nsitu ations</w>\nmer o</w>\ncric ke\npuni shment</w>\nd b\nsha king</w>\nðŁĺ ļ</w>\nm q\nari ans</w>\nle h\ncla w</w>\nwe ds</w>\nd ure</w>\nni el\nj elly\ngour met</w>\ntra ders</w>\nle vi</w>\nw ages</w>\nkne es</w>\nwi se\nheaven ly</w>\navi d</w>\nmelo dy</w>\nz ack</w>\nban anas</w>\napprentic e\npro p\nfun ny\no de\nrespec ted</w>\nme gan\nfe wer</w>\ndra fted</w>\nmed it\ngra pe\nus army</w>\ncru sad\nvo cali\nprepar ations</w>\nnon sense</w>\nus age</w>\nth r</w>\nro th</w>\nwiz ards</w>\ninsi de\npromo tions</w>\nmon a</w>\nred sox</w>\nsi g</w>\neleg ance</w>\nch ia</w>\nuniver sal\nãĢ į</w>\nra ja</w>\nun ga</w>\npol lin\nfilip ino</w>\nak a\nt sun\nik on</w>\nbi king</w>\ndecor ations</w>\nz ac</w>\ncade ts</w>\nhum our</w>\nag m</w>\nre ppin</w>\nvac cin\nelo ve</w>\nu w</w>\ndia be\ngalla gher</w>\naz er\ndo l</w>\na while</w>\npro minent</w>\nwel sh\nt ann\n' )</w>\nbi en\nwa g</w>\nin al</w>\nc wc</w>\nwic ket</w>\nur st</w>\nq anon</w>\nx e</w>\nout door\ndun n</w>\nstar r</w>\nco logy</w>\nric ky\nu efa</w>\nreb ounds</w>\ns music</w>\ninf ant</w>\nðŁĻ ĭ\nso p</w>\nu mber\nhand ing</w>\nbeg in\nsor ting</w>\nha sh</w>\nsp ati\nre k</w>\nbuda pest</w>\nblack hawks</w>\ndele te</w>\nro m</w>\ncan did</w>\nauth ori\nde bris</w>\nspe cul\ninter section</w>\nmarri ott</w>\nim ran</w>\nðŁĺģ ðŁĺģ</w>\ncru ises</w>\nram sey</w>\nrafa el</w>\naware ness\nvas cular</w>\nbeyon cÃ©</w>\nru g</w>\nðŁĺ Į\nfesti v\nar am\ns able</w>\nbas il\np ill</w>\nflo oring</w>\nun beaten</w>\nimplic ations</w>\nu f</w>\nw ound</w>\nfor ge</w>\npoin ting</w>\npo ts</w>\npopular ity</w>\nðŁĳı ðŁı»\nmani pul\ns lots</w>\ndeb ates</w>\nabs ence</w>\nver mont</w>\nnever forget</w>\nwri st\ngl oria</w>\nren ce\nhu sk\nmel ting</w>\nðŁİ Ł\nbr aces</w>\ntim ely</w>\ntransform ing</w>\nam ps</w>\nma k</w>\npo e</w>\nah an</w>\ngener ally</w>\nnd p</w>\nale ppo</w>\nunic ef</w>\npro fs</w>\nnor d\nma sk\njackson ville</w>\nv v\nsh ells</w>\nbloom ing</w>\noper ators</w>\nchar coal</w>\nne ville</w>\nma gi\nchi p\nsam a</w>\nir an\nre forms</w>\naccu mul\nru e</w>\næ ľ\nweb sites</w>\nga on</w>\ndevast ating</w>\nsto s</w>\nglaci er</w>\nra pp\nchipot le</w>\npr a</w>\nor ous</w>\nrom ney</w>\nseas on\ndecor ative</w>\nc isco</w>\ndit ch</w>\ncompla in</w>\nll o</w>\nassu me</w>\nðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤ</w>\nn els</w>\ncent ric</w>\nft w</w>\ncar rots</w>\ntat a</w>\ncan ter\nper ience</w>\nli ers</w>\ndemo s</w>\nbl unt</w>\noper ate</w>\nreserv ations</w>\nle ah</w>\nsub stance</w>\ndi son</w>\nan te\nelec tion\nv ue</w>\nsqu are\nnon profit</w>\nca a</w>\nf su</w>\ny am</w>\nãĤ ¤\nv ladi\ncomple tes</w>\nmar i</w>\nphilli p</w>\nne ill</w>\ner as\nka it\nmen do\nmahar ashtra</w>\ng p\ndan e</w>\nprovi dence</w>\nther apeu\njuven ile</w>\nme mo</w>\nin corpor\naa aa</w>\nseven teen</w>\nteen ager</w>\nÃ £\nor ns</w>\nwi de\ncu teness</w>\ntw d</w>\nff les</w>\nbar a</w>\ncom edy\nover time</w>\ny az\nbar on</w>\nunemp loyment</w>\nðŁĳ ĭ\nexter ior</w>\nden se</w>\ncent res</w>\nmatch up</w>\nhistory month</w>\nartif icial\nqu it\ne sk\nwar n</w>\ncr itic</w>\nj af\nðŁĵ ²</w>\ninform ative</w>\nfu els</w>\nrecy cle</w>\nnam ing</w>\nstri pe</w>\nsol ic\nmole cular</w>\ndee pi\ncon vo</w>\ns sel</w>\nna e</w>\nde scent</w>\nti z</w>\naccoun tability</w>\nter ry\nr ito</w>\nsl ay</w>\nem o</w>\ndem ol\nsens ation</w>\nco v\ntor e</w>\nround table</w>\ny ol\nexcu ses</w>\nà¥ į</w>\ntur quo\nhh hh\npod casts</w>\ncele b</w>\nme ssi\nli o</w>\nman n\ncontribu ted</w>\nu z\ngener ator</w>\nele ts</w>\nveg gie</w>\nindu l\nen suring</w>\ndetro it\npun jab\ntran spor\ninstru ction</w>\nad d\npor cel\npan eli\ncir cles</w>\npersi st\nclay ton</w>\nsp n</w>\ndog softwitter</w>\nis nt</w>\nsp r</w>\nretail ers</w>\np w\nhun gar\nel ena</w>\nmon aster\ngu atem\nje ssie</w>\nan z</w>\nra shi\nfle e\ncar ving</w>\nfau x</w>\nl al</w>\nhen ri\nd jo\ndu ll</w>\ns ana</w>\nlar a</w>\nglo be\ncri mson</w>\ncom pass</w>\npau se</w>\nna b</w>\nlion el</w>\nba ths</w>\nu fo</w>\ninvent ory</w>\nsin gh\nsat an</w>\nðŁĩ ¸\nce ments</w>\nin form</w>\ngener ated</w>\nbi den</w>\nav g</w>\ntas ks</w>\nde er\nsa u</w>\nja iled</w>\npa stel</w>\nsc c</w>\nna il\nsteel e</w>\nper is\nlamborgh ini</w>\npur sue</w>\nmar gin\nu ch\nbo sch</w>\ndra in</w>\ncl ara</w>\nbo m</w>\nlat ino</w>\nweb ster</w>\nrose mary</w>\nr ha\ns oun\nbillion aire</w>\nnot ch</w>\npercent age</w>\ncon or</w>\n' \"</w>\nhom es\nearth day</w>\nh ort</w>\nbig gest\ndi sin\nwal ton</w>\nedit ors</w>\nim ma</w>\nom ar\nequi valent</w>\npharmac eu\nah med\ncam eo</w>\nhan ni\nunder rated</w>\nge ment</w>\nmicro bi\nv oo\nhonor able</w>\nobe sity</w>\nâļ ¡ï¸ı\nlimer ick</w>\ninvol vement</w>\nst agram</w>\nboule vard</w>\nbur g\nblackand white</w>\nliber ation</w>\nfi ve\ninter im</w>\nsm m</w>\nrival ry</w>\ncap abilities</w>\nstat ements</w>\nthu mb\nve d\nsw ans</w>\nbar ber\ne que\nseren a</w>\nhel m</w>\nnoo dle</w>\nsam pling</w>\nn awaz</w>\nsing le\nthunder storms</w>\nsh on\nin ev\në ¯\nto pp\norch ard</w>\nbi an\nðŁĺ Ķ\ndoor step</w>\nsalv ation</w>\nmarke ting\nr ons</w>\ncle mson</w>\nra vi</w>\nin take</w>\nstand with\nsin a</w>\nha iku</w>\nple y</w>\nelector al</w>\nph illy\nla ys</w>\nelectr ic\ncap turing</w>\nu pp\ner gy</w>\nbeliev ing</w>\ncul tures</w>\nes day</w>\ninva sive</w>\ned ed</w>\nspee ch\nend ur\nviet nam\nboy cott</w>\npe de</w>\ndeli ver\nðŁĴĸ ðŁĴĸ\nmer chant</w>\nst ir</w>\nden ies</w>\npoc kets</w>\no ti\ncu ddle</w>\nro land</w>\nmm ed</w>\nden ed</w>\nlear ners</w>\nhoo p</w>\nsour cing</w>\nh acked</w>\ndi m\nenviron ments</w>\nben son</w>\njud icial</w>\nwor cester</w>\npear ls</w>\ngovern ments</w>\narri vals</w>\ncor ners</w>\ntun ing</w>\nla bour\ny m</w>\nor dering</w>\nle wi\ni fe</w>\nhygi ene</w>\nthou ghtful</w>\nindone sian</w>\ncampaig ning</w>\nprinci ple</w>\nassau l\nru bb\nat v</w>\nwil ly</w>\nen tre</w>\nil i</w>\nph on\ndu ties</w>\nâĻ¥ âĻ¥</w>\nsn akes</w>\nlo op\nam ar</w>\nconver tible</w>\nbon ding</w>\nment oring</w>\nmax well</w>\nethere um</w>\ndestro ying</w>\nax is</w>\nca iro</w>\nfin nish</w>\nsho ck\nðŁĺ Ĳ</w>\ncal eb</w>\ncom a</w>\npe dal</w>\nco re\ncontin ent</w>\nel son</w>\ntemp o</w>\nhelsin ki</w>\nac p</w>\ntack ling</w>\nst ated</w>\nbl a</w>\ndou b\nsma shing</w>\na ja</w>\ncamer on\ndisru ption</w>\nwarm th</w>\nbeing salmankhan</w>\nbullet in</w>\no de</w>\nsyrac use</w>\nar an</w>\nmc gregor</w>\nbul k</w>\nan ton</w>\nconfir mation</w>\nsp ine</w>\nim ran\ninstru c\njac ks</w>\nchi o</w>\npal m\nstr e</w>\nembarra ssing</w>\nun t\nelimin ate</w>\nto ss</w>\nc ise</w>\na ws</w>\noni sts</w>\nsh inee</w>\njo s</w>\nho se</w>\nli vely</w>\nopp onents</w>\nmo vements</w>\nrecogni zing</w>\nsandwich es</w>\nsh akes</w>\nexerc ises</w>\nse at\nprofe ssion</w>\nmerry christmas</w>\nlu gg\nadopt dont\nmar vin</w>\nbyr ne</w>\nun le\nhe t</w>\nku wait</w>\nrah man</w>\naspe ct</w>\nhumb led</w>\ngen es</w>\nf and\nlong time</w>\n) ;</w>\ncam pu\nan gus</w>\nðŁĳį ðŁı¼</w>\nq uran</w>\nsle eves</w>\ns lic\n¸ ë\ntwel ve</w>\nyour e</w>\ni ke</w>\ngo gh</w>\nb st</w>\ndic tionary</w>\nreflec ting</w>\nto on</w>\nyar n</w>\nem bed\nðŁı ´</w>\nre serves</w>\nfloo ded</w>\nver iz\ndu sk</w>\nestab lish</w>\npro li\nau d</w>\nritu al</w>\nor bit</w>\ndeclar ation</w>\nrecor dings</w>\ncam o</w>\ncas sette</w>\ngood luck</w>\ncu tter</w>\nbo p</w>\nb ho\nche ating</w>\npaci fic\nma res</w>\ntim er</w>\ncol t</w>\ntr ous\ntomor row\nhan sen</w>\nci e</w>\nw ang\nban i</w>\ncircu lar</w>\nac ute</w>\nfar mer\nco ys</w>\np se\nir ving</w>\nw j\nhaw kins</w>\nb ison</w>\nur day</w>\ncru ising</w>\no te</w>\nk ath</w>\nwhi stle</w>\nyour selves</w>\nant is</w>\nsla sh</w>\nthorough ly</w>\nke sh</w>\nser ie</w>\nex em\nen ig\nguil d\nsh red\nho gan</w>\nap o</w>\nä ¸\npu zz\nne tball</w>\nau ssi\npanor ama</w>\nws j</w>\nav is</w>\nar ming</w>\nhum ph\nbrow ser</w>\ncri es</w>\nfo ggy</w>\nmat te</w>\nðŁĮ »</w>\nit er</w>\ntal lest</w>\nby ron</w>\ncap tiv\nje su\nany ways</w>\nflag ship</w>\np ton</w>\nwe y</w>\nfay ette</w>\nfinanci al\nf oul</w>\nsolom on</w>\njenni fer\ncucu mber</w>\nar gue</w>\ntex tile</w>\nwrest ler</w>\njohn ston</w>\npa stor\nðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃ\ncac tus</w>\nedi ble</w>\nre served</w>\nric hie</w>\nmet res</w>\ningredi ent</w>\nh ella</w>\nun to</w>\nch ol\ncele bs</w>\npo ets</w>\ngra ham\nhay den</w>\ncoinci dence</w>\nb aw\ncommunic ate</w>\nflet cher</w>\n/ -</w>\ntole do</w>\necu ador</w>\ncoun sel</w>\ns laughter</w>\nline ar</w>\nat p</w>\nos u</w>\njo el\nev ed</w>\nconqu er</w>\nru stic</w>\nplic ity</w>\nrecogn ise</w>\nroom mate</w>\ncr acked</w>\njas per</w>\nph er</w>\nðŁĮ º</w>\nwo ven</w>\nmo ist\nff c</w>\nste ering</w>\nni sh\nstand ings</w>\nfrequ ent</w>\nar di</w>\nhaz el\nas msg</w>\nbau m</w>\nd art</w>\nsi dd\nnat h</w>\nch ero\ncard board</w>\nc ss</w>\nn sfw</w>\npa ir\nðŁĺį ðŁĺĺ</w>\noccur red</w>\nhomeless ness</w>\nmal one</w>\nph e</w>\nxi a\npad dy</w>\ndecl are</w>\ntheat re\nb f\nper sian</w>\nta d</w>\nax e</w>\nsusp icious</w>\nlam b\nmu cho</w>\nsen ior\nst as</w>\nk ite</w>\nst ing\ngra d\nk af\nwat ering</w>\nØ ¯\nspi ral</w>\nth ms</w>\neduc ator</w>\njer ome</w>\nof c</w>\nclo ck\nsu l</w>\npe mb\n.... .....</w>\npark way</w>\nde aux</w>\nrestric tions</w>\nm ons</w>\nneed le</w>\ne j\nle agues</w>\nwater melon</w>\nam an\npl enary</w>\nmax im\nw ab\ncoming soon</w>\nbry ce</w>\nvi gil</w>\nsuper market</w>\nfortun ate</w>\nturquo ise</w>\npresi dent\nli v</w>\ninter ns</w>\nfeel in</w>\nfix tures</w>\nstun t</w>\nst aged</w>\npremi eres</w>\nlo k\nprac titi\nshor tage</w>\nlog ne</w>\nve c\ncon cor\nroc ke\nli g\ncom posed</w>\nsyn thetic</w>\ndi p\ncam ila</w>\nch is\nj ou\nsu san\neye brows</w>\nsupp lement</w>\nsatis faction</w>\nmoham mad</w>\nti bet\nhouse of\npu n</w>\nas sam</w>\nshado whun\npsy ched\nse duc\nmand atory</w>\nher bert</w>\nsc allo\nstream ers</w>\nproto col</w>\nblock buster</w>\nproduc es</w>\nsch nei\nlau rel</w>\ntri be\ntime hop</w>\npl a</w>\nmod elling</w>\ntv time</w>\nmtv stars</w>\nwi dow</w>\nme tric</w>\nch am</w>\ncon do</w>\nflow ering</w>\nale c</w>\nd ms</w>\ninten sity</w>\nÂ ¨\nmccar tney</w>\nislam abad</w>\nk b</w>\nf fi\nph al\nanal og</w>\nf ond</w>\nh acks</w>\npositi vity</w>\ntreat y</w>\nsub marine</w>\nconne ct</w>\nsel en\ncategor ies</w>\ncu b</w>\norgani ze</w>\nsi k\nquote oftheday</w>\nremin ding</w>\nam or\nloc king</w>\nðŁĳı ðŁı¼</w>\ncomp ound</w>\net te\nb out\nrec ur\nfe rence</w>\nmi zz\ntren d\nhip ster</w>\nfor tress</w>\nforth coming</w>\npreli min\no dyssey</w>\nang p</w>\ndel ici\neven ings</w>\nðŁĶ ¹</w>\ni q</w>\nd w</w>\nda ir\nkathr yn</w>\nchristian ity</w>\nmoon light</w>\nha b</w>\nwh oo\nf bf</w>\nse th\ngenu inely</w>\npa x\nchar ity\ndeplo yed</w>\nb nb</w>\nbu cs</w>\nju dg\ncon ge\nplant ation</w>\nim press</w>\ncar a</w>\nsc lub</w>\nsco py</w>\nland ers</w>\ncompla ints</w>\nb ama</w>\nre build</w>\nx y\nreal ism</w>\nsh our</w>\nle in\nbrac elets</w>\nmer a</w>\nassas sin</w>\nan chor\nðŁĳĮ ðŁı¼</w>\nlin en</w>\ncon fron\nchronic le</w>\ncomm ent\ncat alog</w>\nil les</w>\ngor ge</w>\nme try</w>\njung kook</w>\nlove my\nsent in\nse em\nfit ness\nalli ed</w>\nts man</w>\ndigital transformation</w>\npr an\nlo ft</w>\nmin ton</w>\nalden richards</w>\nen vel\ncher ish</w>\ncertain ty</w>\nzz z</w>\nrhin o</w>\nper kins</w>\nen rich\ncape town</w>\nome ter</w>\nsec tions</w>\nske leton</w>\ndef enders</w>\nðŁĺ Ŀ\npen c\nbri t</w>\nja h\ncapital ism</w>\nðŁ¥ ĩ</w>\nbaz aar</w>\nre me\nex t</w>\nkk k</w>\nconver t</w>\nstor my</w>\nb ye\nkar an\nchry sler</w>\nad os</w>\npre ssed</w>\nsyn c</w>\nation day</w>\ndang er\nbad ges</w>\nrefu ses</w>\nem powering</w>\nly m\nex ports</w>\nadoptdont shop</w>\nðŁĩ ¯\nth c</w>\nawa ited</w>\nfocu ses</w>\nfin ed</w>\no at\nhaha hah</w>\nâģ ©\nn family</w>\nfi ona</w>\nluck ily</w>\nthr illing</w>\nty ping</w>\nout break</w>\ndi es\nhe u\ncraw l</w>\nne sses</w>\no ath</w>\nscri pts</w>\ngee ks</w>\nðŁĲ Ŀ</w>\np b\nmathemat ics</w>\nal is</w>\n________ ________\ngymna stics</w>\nacti vism</w>\nrecommend ation</w>\ngre n</w>\nwa in</w>\ncour ty\nn apol\ncau li\nhor nets</w>\ng als</w>\njo ckey</w>\ndir ty\nat ar\nenor mous</w>\npe st\ngreg ation</w>\nan os</w>\nii ii\ndef ends</w>\nblack historymonth</w>\nat x</w>\nmb c</w>\nlugg age</w>\nwit ch\nco b\nla sts</w>\ncu m\ngg g</w>\nba thing</w>\nn ar</w>\nce bu</w>\nðŁį ĥ</w>\nnavig ation</w>\nmin e\nre jo\nðŁİ Ģ</w>\ngif tide\nre ta\nuse less</w>\npu ll\ndefic it</w>\nal lu\nati me</w>\nit v\ntr illion</w>\npu e\nac ies</w>\nproce dure</w>\nl ori\njen ny\nc ad</w>\nul ously</w>\ndr ac\npromo tes</w>\ning the\ncan u\nwoo hoo</w>\nna omi</w>\nzar dari</w>\nts u</w>\nbe ir\nsd g</w>\nle ver\nwe ber</w>\nab ud\nlun d</w>\ncrow ded</w>\ndeplo yment</w>\nter rain</w>\nken ny\nho f\nwitne ssed</w>\nlo ch\nj k\nbul ly</w>\nw ren\npoe try\ndo ff</w>\nww i</w>\nmo red</w>\ndin i</w>\ncul ture\npromp t</w>\nÂ ¥</w>\nmaur ice</w>\nto pps</w>\nr m\ncor respon\nab out\njewel s</w>\ngi br\neag le\nðŁĺĺ ðŁĺĺðŁĺĺ</w>\nl ending</w>\nsou ven\nç Ķ\ncontemporary art</w>\nestabli shment</w>\nj ong\nâĢ¦ \"</w>\ngat or\npatri otic</w>\nmc coy</w>\nv ape</w>\nhuman e</w>\nfeli z</w>\ncoach ella</w>\nre posting</w>\nste als</w>\nfu ller</w>\nn ering</w>\nat ra\n( -</w>\nbla ke\nhe ather\nwor ms</w>\ndiscipl inary</w>\nrede mption</w>\ny ard\nam in</w>\n\" @_</w>\nd nc</w>\nt ds</w>\nk appa</w>\nne wark</w>\ncomm its</w>\nspe ars</w>\nj ams</w>\nt and\nmsn bc</w>\ninter medi\naim ed</w>\nat ic\nteen th</w>\nobserv ation</w>\nkash mir\nkavan augh</w>\nou l\nsan francisco</w>\nre u\nbel ated</w>\ncho w\npass word</w>\nst ills</w>\ndeta ined</w>\nsar i</w>\nday ton</w>\ndar ren\nitali an\nar th</w>\namu sic</w>\nar bit\nw m\nv m</w>\nhe m\ndou g\nmy r\na sho\npre v\nvin d</w>\nbra h\nsta g</w>\nà¸ µ</w>\npre views</w>\ngu k</w>\ncon taining</w>\nleon ardo</w>\nsad dle</w>\nru shing</w>\nst av\nlon gh\ngam bling</w>\nve gas\nreserv ation</w>\nend ale</w>\nbal a</w>\nfl a</w>\nvari ant</w>\nhe dge</w>\nbulgar ia</w>\nnat ali\nwe aver</w>\nsol st\nencoura ged</w>\nap c</w>\nas parag\nne st\ncycli sts</w>\nfe l</w>\nìĬ ¤\noverwhel ming</w>\npey ton</w>\nj it</w>\na post\nmb le\nble eding</w>\nneighbour hood</w>\na very</w>\nexpre ssions</w>\nmac donald</w>\ngi gs</w>\nmon ds</w>\nillu sion</w>\nn ct</w>\ncam ero\nover head</w>\nmy th\nol y\nvi o</w>\net v</w>\nlau rie</w>\nunve iling</w>\npri or\ncon n</w>\niron man</w>\ndi ff</w>\nday in\ncrit ici\ncon go</w>\nre vision</w>\nwal e</w>\ndirec tor\np ines</w>\nblack pink</w>\ngar ner</w>\ncur ated</w>\nmanit oba</w>\nh ac\ncommon ly</w>\nbar ton</w>\n.... #</w>\nmor tality</w>\nlive smatter</w>\nphilos op\nshor ter</w>\ncon vince</w>\nfre ak\nvend ors</w>\ninsi ghtful</w>\nel ly</w>\nsens ors</w>\ne led</w>\ns berg</w>\nweight loss</w>\nu kip</w>\nsp ur</w>\npriv ate\nqu a</w>\nss c</w>\n, ...</w>\nsupervis or</w>\nadvis er</w>\namaz ingly</w>\nless er</w>\nat es\nmah on</w>\noooo oo</w>\nsar as\npmo india</w>\nwaff le</w>\nun ders</w>\ntoler ance</w>\nsculp tures</w>\nher sh\nkno cking</w>\nsmo ke\ncathol ic\ngri m\ntra veled</w>\nfli p\nge off</w>\ndinosa urs</w>\nsle pt</w>\nscar let</w>\nok i</w>\ncompla int</w>\nob sc\nnam i\nla g</w>\ncross fit</w>\nu fc\nmc cain</w>\nrefe ree</w>\nsad ness</w>\npen ny\nli eu\nmo de\nki er\nvol s</w>\nw is</w>\nel on</w>\nshe a</w>\nba o</w>\nson ia</w>\ncla ire\nem manuel</w>\nmoist ure</w>\ndi gest</w>\nvi ii</w>\nt eller</w>\nch on\naccess ory</w>\nnight club</w>\nfoss il\naw an</w>\nhu sky</w>\nab original</w>\nbrand on\nffici ent</w>\ncou gars</w>\nste d\nad mitted</w>\nigno red</w>\ncontent marketing</w>\nag as\nv ase</w>\nexecu ted</w>\nnegoti ations</w>\nshe ad</w>\nn and\ntab lets</w>\ngo th</w>\nts al</w>\nd fw</w>\non ep\nprotec tor</w>\nsp ho\ngaz ette</w>\nandre as</w>\nss er</w>\ncomp ilation</w>\nha v</w>\ncontain ers</w>\nbro ker</w>\nsoc al</w>\nporcel ain</w>\nhy uk</w>\nair ing</w>\nðŁĴ °\npubli sher</w>\nscen ario</w>\nspart ans</w>\nre viewing</w>\nitu des</w>\ned el\npear son</w>\nba sh\nmau i</w>\na ad\nðŁĮ Ĭ\nli u</w>\nul ate</w>\nprogram mes</w>\nfav our</w>\nweb design</w>\nreal ty</w>\nmotiv ational</w>\ncro sses</w>\n' ...</w>\nbus ch</w>\nadjust able</w>\nar jun</w>\nmist ak\ndimen sion</w>\npi stol</w>\nweigh s</w>\nen y</w>\nunve il</w>\nindy car</w>\ngor don\nf ade</w>\nfran ken\nqual ities</w>\nbet t</w>\nloc ate</w>\nker r</w>\nsp c</w>\nconfu sion</w>\nne e\nluck y\nbas es</w>\ndep ends</w>\nfire fighter</w>\nol a\nre t\nmar oon</w>\nðŁĶ Ĭ</w>\nw am\ndefin ing</w>\nwhe at\nbi l</w>\nÃ© s</w>\nb hai</w>\npsy ch</w>\nta u</w>\nic ans</w>\nthi k</w>\nob ile</w>\ninspec tor</w>\nìĨ Įë\nill on</w>\ngo s\nev angel\nfa i\nsi st</w>\nvoc ation</w>\nbur ge\nchi stan</w>\nrenew ed</w>\nenthusi asm</w>\nen ting</w>\nag ri\nike a</w>\nm sc</w>\naero space</w>\nsens iti\nmemo ir</w>\nhosp ice</w>\nco caine</w>\nder ry</w>\nmechan ics</w>\nĦ à¸\ntin o</w>\nreduc es</w>\ncollec tors</w>\nin justice</w>\nsupp re\nv ana</w>\nab un\nnap a</w>\nsu sa</w>\nos lo</w>\ne ff\nen core</w>\nlic ence</w>\nched dar</w>\nz al\nmoun t\nðŁĴ Ĳ</w>\nthreat ens</w>\n!! \"</w>\narchi e</w>\nfu tsal</w>\nscu ba</w>\njo s\ngn on</w>\nse xi\ns official</w>\ncompar ing</w>\ndomin ant</w>\ntof theday</w>\nfa it</w>\npropos als</w>\ngi ft\ny as</w>\ncn c</w>\nl r\nha b\nreser voir</w>\nbeli efs</w>\ngener al\nmar ti\nt d\nest e</w>\nì ł\nwi l</w>\nðŁĳ ¯</w>\nðŁĶ «</w>\nsp x</w>\net work</w>\nexcer pt</w>\ne instein</w>\nhir o</w>\nsil hou\nteam ed</w>\nper ception</w>\ncorri dor</w>\nmental health\nhin ts</w>\nben ny</w>\ninduc ted</w>\nsw x</w>\nwi desp\nspe ak\ncher yl</w>\ndru g\nðŁĺ ķ</w>\nh f</w>\nasparag us</w>\nmyster ies</w>\nfitz gerald</w>\noff er\ntherap ist</w>\ncare er\ndam aging</w>\nts d</w>\nper u\nwei bo</w>\ny ay\nphoeni x\ndisc re\nmac book</w>\nbar ker</w>\nstig ma</w>\nsp read\nroc kies</w>\nkang ar\nbri dg\npa i\nbi shop\nta iled</w>\ncapsu le</w>\nðŁĴ ĵ\nge of\nroy ale</w>\nshort listed</w>\no ste\nash amed</w>\nch app\nkey e</w>\ncl a</w>\nscreen shot\naustri an</w>\nnati ve\nen ight</w>\njuli et</w>\nmichel e</w>\nðŁĮ ´\ntravel ers</w>\npi l</w>\nfootball er</w>\nwin chester</w>\nðŁĻ Ħ\nazer bai\ngold eng\norganis ations</w>\ninterpre tation</w>\npredat or</w>\nofthe week</w>\nlo gan\npok Ã©\nmari e\ncal la\nt nt</w>\ncin de\nge tic</w>\nfit fam</w>\ngra v\now ens</w>\nðŁĮ ±</w>\nshoot out</w>\nsal is\ncommissi ons</w>\nco he\np tic</w>\nni xon</w>\nhi a</w>\namb ition</w>\nmar ine\ncruel ty</w>\nt k</w>\ncru de</w>\nsal ty</w>\njim a</w>\nmon go\nir ony</w>\non wards</w>\narre sts</w>\nstrang ers</w>\nig er</w>\ncycli st</w>\nra g</w>\nexten ds</w>\ntra dio</w>\nbour g</w>\nmo i\nel la\ne able</w>\nlex us</w>\nau l\nder a</w>\nhistor ian</w>\nmor ton</w>\nti ff</w>\nman ner</w>\nko t</w>\nd k\npo inted</w>\nmar qu\na an\nen ey</w>\ndu blin\non poli</w>\nem ili\nsecre t\nfl o</w>\nâļ ¡</w>\nba j\nste ep</w>\naccompan ied</w>\nrum ours</w>\ndev i</w>\npurch asing</w>\nfi g</w>\npu b\nsch oo\nautonom ous</w>\ngo alie</w>\nx ia</w>\nautom atically</w>\nre vers\nter o\nfu ku\ntitan ic</w>\nshoo k</w>\nsand als</w>\nsee kers</w>\nexc av\nnor dic</w>\nbigo live</w>\nba ke\nr att\nz ak</w>\nne p\nðŁĺ ¤</w>\ncand y\nbilli ons</w>\nbook worm</w>\npp et</w>\nà ³\nsur faces</w>\nsc ars</w>\nphil ip\ndo gg</w>\nci gars</w>\nco te</w>\ntransl ated</w>\ncur ator</w>\nsin dh</w>\nhan gover</w>\nbre wer</w>\non es\nel ton</w>\nðŁĴª ðŁı¼</w>\nmar cu\nelli ot</w>\nrigh te\ndi oce\nru ss</w>\nrail ways</w>\ngrand son</w>\nas cen\napo logy</w>\nawa it</w>\nmob ili\nre spir\nparti san</w>\noli vi\nstri ke\nyo o</w>\nwhite house</w>\nexpre ssed</w>\npu ps</w>\nbed ford</w>\ncul tur\nfro gs</w>\nfly ing\ncav ali\nc ds</w>\nfri ger\nstreet photography</w>\nre solve</w>\ntali ban</w>\nkan g</w>\ncru shing</w>\nju m\nðŁĺ Ĵ\nwilliam son</w>\ntan g</w>\ncur ly</w>\nt man</w>\nveter an\nfa ire</w>\nartificial intelligence</w>\nun anim\npre n\nback drop</w>\nfr ances</w>\noc cer</w>\ndoro thy</w>\nwork ing\nar thr\nconver ted</w>\nday light</w>\nserv ant</w>\npad dle</w>\ncompla ining</w>\nthir ty</w>\nnad al</w>\nak u</w>\nibra him</w>\nad dressed</w>\np iss</w>\ngreen house</w>\nbatt alion</w>\nsi mulator</w>\nout lets</w>\nembroi dery</w>\nðŁĵ ±</w>\nfis cal</w>\nger ard</w>\nsas sy</w>\nðŁİī ðŁİīðŁİī</w>\nvent ures</w>\nmer it</w>\npublic ity</w>\nðŁĳ Ī</w>\nsophistic ated</w>\nc tu\nconven tional</w>\ncondol ences</w>\nisra el\ntra dition\nar an\nte ss</w>\ngla d\nðŁĺĬ ðŁĺĬ</w>\ncorrec tion</w>\nge on\nam d</w>\nor ship</w>\nbe ast\nch ment</w>\nì ŀ\nnic o\nwk nd</w>\nwel s</w>\ncushi on</w>\nbeli e\nvo c</w>\nidio ts</w>\nunder neath</w>\npu ma</w>\ncorn ell</w>\nen ation</w>\nlu l\nswa ch\nab ig\nu rer</w>\nmi e\nform erly</w>\nca f</w>\ner nal</w>\nchor us</w>\njuli us</w>\nsen ator\nâľ į\nwh ir\nsalv ador</w>\nph d\nuni fied</w>\nboo ster</w>\ngraph ical</w>\nw rec\nson ny</w>\nmi z\ndere rs</w>\ns all</w>\nven s</w>\ntusc any</w>\nwi d</w>\ny ong</w>\nkur ds</w>\nw az\ntrol ls</w>\nmac ro\ncat urday</w>\npre ssing</w>\nsa sha</w>\ncent ennial</w>\ngu sts</w>\nem c\nbe fore\nden ise</w>\ncu st\nðŁĵ ¢</w>\nlo oo\nbase l</w>\neng land\ny olo</w>\nar du\nmanife sto</w>\ndo ha</w>\nì ľ\nkni ves</w>\nbourne mouth</w>\nbi bl\nbar b</w>\nal icia</w>\nØ ©</w>\ncom er</w>\ncycl one</w>\ng it</w>\nane ws</w>\ncharacter i\nvent ura</w>\nin tra\nsf giants</w>\nhu t\nbe a</w>\ndar win</w>\nell er\nal v\nre ese</w>\nbl y\nkar an</w>\nconclu sion</w>\nman ny</w>\nfla kes</w>\nunite blue</w>\nnad u</w>\nco pp\ned ges</w>\nlanca shire</w>\ni als</w>\no tta</w>\nphilipp e</w>\nl ent\nche e</w>\nment ors</w>\nfesti val\nan ism</w>\ncompli mentary</w>\nr j</w>\npu g\nd ine\nwe i</w>\ncli ffs</w>\nsar my</w>\nti veness</w>\ntreas ury</w>\nil and</w>\nafter math</w>\nrabb i</w>\nou n</w>\nbou quet</w>\nherit age\nzi on</w>\nsur render</w>\nshen an\nin ks</w>\nkar l\ngh ty\npol icing</w>\nexam ination</w>\nce y</w>\nper su\nmeasure ment</w>\nhydro gen</w>\nlu han</w>\nâłĢâłĢ âłĢâłĢ\nwar i</w>\nÐ¾ Ð\nj y\nfow ler</w>\nmis h</w>\nal fre\nâĺ ĳ\nbb naija</w>\ncat alogue</w>\nrecogn ised</w>\nsa ver</w>\nhu skies</w>\ncol in\nmun do</w>\nsi va</w>\np ng</w>\ndiscoun ted</w>\nman utd</w>\nfre sno</w>\nde vin</w>\nprelimin ary</w>\ntro phies</w>\npla stics</w>\ndu g</w>\npro cu\nindi go</w>\ng ard</w>\ndy lan\npit ches</w>\nground breaking</w>\nin son</w>\nbl ac\nan thology</w>\nf h</w>\nexpl ic\nr ard</w>\nadmi ral</w>\nso chi</w>\nla shes</w>\nsplen did</w>\nen vy</w>\nad v</w>\nsex y\nfestiv ities</w>\nstic king</w>\nbi b</w>\nthr ill</w>\nop p</w>\nari el</w>\nbotan ical</w>\nendur ance</w>\nfe males</w>\nbr icks</w>\nvat ican</w>\nblack pool</w>\nber mu\nbr ough</w>\nroll er\nbi d\nsue de</w>\nsloven ia</w>\nmm ing\nml b\nmed alist</w>\ndi ans</w>\nrehabil itation</w>\nne on\ns go</w>\nli thu\nram os</w>\nz ed\npi anist</w>\ninten sive</w>\nbroad band</w>\nstu dy\npeter sburg</w>\nlu ca</w>\nah hhh</w>\nphys ician</w>\ndill on</w>\ntele com</w>\ngri ef</w>\nmu n</w>\nac ro\nsi ded</w>\ns ly</w>\nblo ws</w>\nclassic cars</w>\ntri um\nar gy\n? :</w>\nh ri\nmarsh mal\nâĢ ĵ\nto pping</w>\nwar saw</w>\ntran sc\npreserv ation</w>\nb av\nre friger\nexperim ents</w>\nä º\ngl it\nsli ga</w>\ng age</w>\nfac tor\nflav ours</w>\nbr ony</w>\nsp o</w>\ncook book</w>\ncarri age</w>\naw ay\nny fw</w>\non ian</w>\nw g\nsimp sons</w>\nro lex</w>\nðŁı ¿</w>\ncro sby</w>\nãħ ¤\ncre di\nsyn dic\npu bs</w>\nali fe</w>\npoor ly</w>\nmac ed\nðŁĺ ŀ</w>\nbehin dthe\nw enger</w>\nn ats</w>\nðŁİ Ł</w>\nrubb ish</w>\nprocedu res</w>\ntypho on</w>\nopho bia</w>\ner do\nfu el\nvi era</w>\nbu mps</w>\nmillenni um</w>\nnew zealand</w>\nlec tures</w>\nit on</w>\nmil ky</w>\nrespon ded</w>\nê °\nlandsc ape\n.. @</w>\nbo ther</w>\nâĸ ¶</w>\nz hang</w>\nhuawe i</w>\ntu ition</w>\ns worn</w>\nin u\ny or</w>\npa olo</w>\nau ditions</w>\nab il\nmalay sian</w>\nho ps</w>\nfe athers</w>\nmp le</w>\nau ts</w>\nÃ£ o</w>\nboun ty</w>\nic he</w>\nì ĺ\nsh q</w>\npin ot</w>\nge ars</w>\ndisapp ear\nvideo games</w>\nt na</w>\nalzheim er</w>\nðŁĮ ŀ\na ji</w>\nunder wear</w>\nswit ching</w>\nsign age</w>\no scar\nec on</w>\ndro w\ncl int</w>\npl ated</w>\ngun dy</w>\nemb lem</w>\nho es</w>\nici st</w>\nnel ly</w>\njuni or\nroad show</w>\nminer als</w>\nat le\nalexand ria</w>\nac claimed</w>\nv ell\nshi va</w>\nad he\nen ne\namne sty</w>\nh ounds</w>\ncouncill or</w>\nðŁĴ ¦\naes the\npart nering</w>\ninflu enced</w>\nmag no\nfl are</w>\nextin ction</w>\ncivil ian</w>\nmaje sty</w>\nva il</w>\nlaw makers</w>\nrac ks</w>\nmc c</w>\nori an</w>\nsp ices</w>\ner rors</w>\nmay er</w>\nco ca</w>\npa i</w>\ns ooooo</w>\nreti ring</w>\nba thro\nðŁĻĮ ðŁĻĮ\nâĸ ª\nsu f\nendor sement</w>\nbuil ding\nbroo ch</w>\npal la\narvin d\nag ent\nkar ate</w>\nr hi\nc tv\nta ine\num m</w>\nba x\nreig ns</w>\nuni of\nenterpri ses</w>\nadel e</w>\nfla ke</w>\nat tire</w>\nbru ce\nba hamas</w>\ngra vy</w>\nsa in\nche ek</w>\ntri vi\nlo v</w>\ne en</w>\nbb lo\nlady gaga</w>\nitt a</w>\n. \"-</w>\ndu stin</w>\nobserv atory</w>\neigh th</w>\nbloom berg</w>\nkh s</w>\nf cc</w>\ngi st</w>\ncommemor ate</w>\nve er\nsexu ality</w>\ned c</w>\nnic ole\nvac ancy</w>\nu ser\nson a</w>\n:' (</w>\ndipl oma</w>\nt end</w>\nup grades</w>\nÅ Ł\njura ssic</w>\ncardi ac</w>\ndr s</w>\nwidesp read</w>\nÃ ł</w>\ndail ies</w>\nvend or</w>\nsim plicity</w>\nwi der</w>\nlen ses</w>\nsupp lements</w>\nde pos\nob served</w>\nvin es</w>\nparti ally</w>\nrenew al</w>\ncollabor ate</w>\nali g\nfin ity</w>\nph u\nzz y\npe tit</w>\nðŁĵ ħ</w>\nz in</w>\ni gu\nsm ack\nfall on</w>\nðŁĵ £</w>\nback wards</w>\ncomp onent</w>\no so</w>\ncompati ble</w>\nbin ding</w>\nzur ich</w>\nthom e</w>\nw ounds</w>\nly ric</w>\nfresh men</w>\nsne aky</w>\nfi bro\ndi et\nemplo yer</w>\nin sect</w>\nh ated</w>\nsch er</w>\nraz or</w>\nn sw\nboo ker</w>\ncalifor ni\nav fc</w>\nÂ °\npreten ding</w>\npep si</w>\nal is\nun titled</w>\nk art</w>\ngrand parents</w>\ne the\no ck</w>\nlux emb\nvisu als</w>\nsmall business</w>\nabdul lah</w>\nmin ho</w>\nsu baru</w>\nh ra\nreve aling</w>\nheart breaking</w>\nclar ity</w>\nam g</w>\nsl r</w>\n** **\nâŀ ĸ\nrecor d\nici ary</w>\nmin ded</w>\nye h</w>\nexce ssive</w>\nknu ck\nicec ream</w>\ntru th\nev ic\nta stic</w>\nant arc\nren dering</w>\n, ,\nmit t</w>\nloren zo</w>\nst patrick\nbound ary</w>\nzi g</w>\nvo cab\nosa ka</w>\nfur n\ntu n</w>\ngu l</w>\ns ounding</w>\nblo gger\nutter ly</w>\ng af\nadv ancing</w>\nl cd</w>\nmar gin</w>\nlifel ong</w>\nsolst ice</w>\nsh ra\nwa its</w>\nple ar\nbre ach</w>\nen ligh\nad er</w>\nitt le</w>\nc ation</w>\nho on</w>\nstu died</w>\n?? ???</w>\nk ash</w>\nev angeli\nps l</w>\nwei ghts</w>\nmet als</w>\nty res</w>\ntur no\nwi e\ncar b</w>\ng ale</w>\nse al\nsun ite</w>\nam ic</w>\npatter son</w>\nÃ¡ n</w>\neu ph\nup stairs</w>\nquali fiers</w>\nkhali fa</w>\napple music</w>\nìĨĮë ħ\nvau ghan</w>\nal ter</w>\ncru iser</w>\nmu a</w>\nt ana</w>\nkat rina</w>\nid ols</w>\nspo iled</w>\nsecre tly</w>\nfi bre</w>\npart nered</w>\num es</w>\ngi ov\ncom et</w>\nscreenshot saturday</w>\nk eller</w>\nfil tr\nfe t\ncon way</w>\npe u\nbad minton</w>\ngi d</w>\nm ound</w>\ndon key</w>\nbu ff</w>\nlea ther\nlar gely</w>\nbro ch\nint ments</w>\nam use\nr k</w>\nsto ve</w>\nimpac ted</w>\ncon t</w>\ncr acks</w>\nprison er</w>\nbar i\ncontrac tor</w>\nori oles</w>\ndomin ate</w>\npol ar\nam elia</w>\ndr c</w>\nðŁĳĮ ðŁĳĮ</w>\nvi st</w>\nsu arez</w>\ninjec tion</w>\nblo oms</w>\nðŁļ¨ ðŁļ¨</w>\nsti ff</w>\npay pal</w>\nsno wing</w>\nthur sdays</w>\ngoo se\nwe dge</w>\neduc ated</w>\nweak ness</w>\nde cker</w>\nabud ha\nbree zy</w>\nÛ Į\nhope ful</w>\no bi\nrai der</w>\ngh am\nde u\nse ve\npar tly</w>\nfu t\ninfu sed</w>\nmer ri\nthan e</w>\nsome time</w>\nhu e</w>\nme in</w>\ncre dit\nsli ding</w>\nran de</w>\ncher ry\ndead pool</w>\nsh ol\nar am</w>\nunder wood</w>\nsky e</w>\ndistur bing</w>\nm nt</w>\npoli shed</w>\nguardi ans</w>\nha dn</w>\npic asso</w>\nari us</w>\nak shay\nir ri\nj h</w>\nhapp en\nla kh</w>\ndal ton</w>\nat the\ns well</w>\nmar sha</w>\nre h\ncour s</w>\nj kt</w>\ntop us</w>\nserv ice\nr ink</w>\nhack ers</w>\ndono van</w>\nhor o\ntc m\nmay hem</w>\ncha se\ndev ops</w>\nken sing\nsc up</w>\nsh ere</w>\nquali fication</w>\nc live</w>\nton g</w>\nn ancy\nmar is\nder dale</w>\nber man</w>\ncinde rella</w>\njol ly</w>\nci c</w>\nloo t</w>\ncollecti bles</w>\nhom icide</w>\ng ge\nepide mic</w>\nsu ites</w>\nmu ddy</w>\ngi mme</w>\ne rec\n- *</w>\ntal la\nlis le</w>\nembro ide\nðŁĩ© ðŁĩª</w>\nveriz on</w>\nve ctor</w>\nbe anie</w>\narti san</w>\nga in\nflo res</w>\nvi gil\nu so</w>\nðŁĻı ðŁı½</w>\ngrin ding</w>\ngh er\nair ports</w>\nrespon sive</w>\nshaf t</w>\ncan cel</w>\nceremon ies</w>\ne me</w>\nat ari</w>\nbru shes</w>\neag er</w>\nbo hemi\nchildren s</w>\nyan kee</w>\nma a</w>\nsuspen se</w>\nmor an</w>\nmac ar\nsun flower</w>\ncre w\nvo id</w>\nke ar\nfashi oned</w>\njen nings</w>\nsunday funday</w>\nsub missions</w>\nme ad</w>\nher man</w>\nwa i</w>\ncrit ically</w>\nle um</w>\nbaek hyun</w>\nfor cing</w>\nco bra</w>\nãģ ®\nacqu ire</w>\nal k</w>\nge ology</w>\npri mar\nimport antly</w>\nire z</w>\nbunde sliga</w>\ncuri osity</w>\nsen a</w>\nstric t</w>\ncon soli\nwin ters</w>\nven om</w>\nchelten ham</w>\nðŁį º</w>\ncen a</w>\nt at</w>\nba in</w>\nglo ver</w>\nunder cover</w>\nas ses</w>\ncar n\nmemorial day</w>\nam eli\ni rene</w>\nch on</w>\nsyn thesis</w>\nspe edy</w>\nmitsu bi\nsla yer</w>\ncompos ite</w>\nunder stands</w>\npe w\ninter rup\nhen ri</w>\nmor row</w>\nan om\nthof july</w>\ng lee</w>\nthre e\nðŁĺ ®</w>\nand hi</w>\nch att\nrenew ables</w>\nye s\ntrans fers</w>\n!!!! !!!!</w>\nbab u</w>\ndu ter\nlo ops</w>\npe ers</w>\no ilers</w>\npau lo</w>\nic ation</w>\nh mu</w>\nwar a</w>\nmer cer</w>\nhom eland</w>\nfu ji</w>\nale y</w>\nyear book</w>\nre m</w>\nre en\nab sur\nbo is</w>\n] :</w>\ncaes ar</w>\nshot gun</w>\nkur dish</w>\no ren\nra e\nanci es</w>\nty pic\nf h\ndef ault</w>\nre plic\nlu k</w>\ntrans actions</w>\nr ys</w>\ninfan try</w>\nðŁį ¾</w>\ncho w</w>\nchick ens</w>\nba gh\nwy att</w>\nay e\ngg i</w>\nbre ws</w>\ned itions</w>\nmi ra\ncommen cement</w>\npre su\nperis cope</w>\nic hi\nguatem ala</w>\nzam bia</w>\npain ts</w>\nwit ches</w>\nwan i</w>\nun dere\ncro y\nvo ws</w>\nus mc</w>\nhear ted</w>\ntheat res</w>\nshu ffle</w>\nle vel\nmul tic\nsquee ze</w>\nfer n</w>\napp et\npost al</w>\nmal t</w>\non board</w>\nld nt</w>\nco o</w>\ns sc\nk ac\nðŁĺ ĩ\nsc rap</w>\nmar cos</w>\ndeal ers</w>\nann u\nmill er\nco ve\nul ary</w>\nvladi mir</w>\nbe ef\nth ur</w>\npick led</w>\nse same</w>\nbengal uru</w>\nmo tt</w>\nkathle en</w>\nhi st\nno tor\ndr ank</w>\ndu chess</w>\nsnow fall</w>\ne ff</w>\ntin y\nj n</w>\nsy our\nspeci alists</w>\nscot us</w>\nbay lor</w>\neve rest</w>\nmali bu</w>\npre m</w>\nharm ful</w>\nl ali\nb ates</w>\ng ye\ndifferen ti\nand ra</w>\ngeome try</w>\nel over</w>\nblack out</w>\n== ==\nko ta</w>\ninter act</w>\nasi an\nla yo\nsamu rai</w>\nfi del\nexhau sted</w>\ngla di\npd t</w>\nspher ic</w>\nanti qu\nguit ar\nstu ri\nho pper</w>\nang le\nf ills</w>\nsla p</w>\nmi th\nrod ney</w>\nong i</w>\nin som\npre venting</w>\ncassi dy</w>\nap ho\nore gon\nlo in</w>\nham mond</w>\ncontribu ting</w>\nf n</w>\ngar ri\nori on</w>\ncomp elling</w>\nescap ing</w>\naim ing</w>\nplu mb\nbi stro</w>\nbe asts</w>\nconcer ning</w>\nbo e</w>\ndo pp\nshop local</w>\nstumb led</w>\nâĤ ¹</w>\nnaz is</w>\nâĢįâĻĤ ï¸ı\ngest ure</w>\nwar ts</w>\nus open</w>\nhi ggins</w>\nchar li\nhang s</w>\nbom bers</w>\n° :</w>\nfe eds</w>\nc ch\nst il\nnic ola</w>\nðŁĵ º\nclam ation</w>\ntro pic\naf ro</w>\nou k</w>\nexpen ses</w>\nder rick</w>\nal ine</w>\nfa w\nreg ard</w>\nim er</w>\nsat in</w>\nthi um</w>\nry der</w>\npear l\nte ss\nmm mmm</w>\nsen ses</w>\nðŁĩ ¹\npositi ve\nexhau st</w>\noccu r</w>\nnor ris</w>\nlil ly</w>\nis les</w>\ndirec ting</w>\nyo fficial</w>\ncount less</w>\nsam ar\non stage</w>\nflo ck</w>\nmir rors</w>\narch er</w>\nmo i</w>\nk d\nvi v\nin os</w>\nsi kh</w>\nle i</w>\nsen sory</w>\nbr its</w>\nkno x</w>\nchest nut</w>\nop y</w>\ncoli seum</w>\nz af\ndi vin\nadap ter</w>\n:) ))</w>\ntem ple\nku n</w>\nhel mets</w>\nt df</w>\ngu ide\nm old</w>\no ids</w>\nlu ther\nhe is\nmonaster y</w>\nsp ree</w>\nk lu\nbrit ney</w>\njagu ars</w>\ngre ats</w>\nc cc</w>\nky rie</w>\nmachin ery</w>\ncric ket\nre ro</w>\nab o</w>\naspir ing</w>\nsemi finals</w>\nale ss\nsig natures</w>\nvar d\nme th\nher bal</w>\nhol den</w>\nking dom\nap or\nreg gie</w>\nore o</w>\npalestin ians</w>\nem mys</w>\nsec tional</w>\nro i</w>\nney mar</w>\nqu el</w>\ncu ll\nl ka</w>\nhaz el</w>\nestim ate</w>\nul ties</w>\ngo w\nbe a\npurch ases</w>\nbel ts</w>\nprotec ts</w>\nm Ã©\ngue ssing</w>\nbb o</w>\nclau dia</w>\nfr acking</w>\njon ny</w>\nel k</w>\ncel tic\nal mighty</w>\nra je\ncourty ard</w>\nig i</w>\ncan es</w>\nðŁĴª ðŁı»</w>\nbank rup\nle thal</w>\nâľĮ ï¸ı\ngraphic design</w>\nvad er</w>\npenc ils</w>\nrough ly</w>\ndan te</w>\nm fg</w>\nconst ell\ncam el</w>\nj b\nbloss oms</w>\nen to\nbalo chistan</w>\ncine mato\nill ard</w>\njer sey\ncon sent</w>\ndent ed</w>\ncon templ\nsch er\nhol i</w>\nlou gh\nst our</w>\na yo\nbegin ners</w>\ncur b</w>\nv hs</w>\na jax</w>\ndu ff</w>\nav eng\ndom est\ncommit ting</w>\nai red</w>\ncha p</w>\nhedge hog</w>\ndisappo inting</w>\nfreel ance</w>\nin land</w>\nchar ms</w>\nðŁĺį âĿ¤ï¸ı</w>\nai sh\nm x\nbuck le</w>\nti dal</w>\nper mit</w>\nbo ating</w>\nra cha\nkend rick</w>\nb ello</w>\nb hi</w>\nple a</w>\nestim ates</w>\nl b\napo logies</w>\njay a</w>\nbb l</w>\nast oni\ninter state</w>\nmain taining</w>\nel bow</w>\nmu p</w>\nep it\nðŁĺ ¡\nviol ations</w>\ndef end\nbe h\nsl c</w>\nam ir</w>\npur i</w>\nti um</w>\nfi fa\nblur ry</w>\nscri m\nðŁĻı ðŁı¾</w>\nma ple\nrel atives</w>\nâĺ Ŀ\ncho c</w>\ncon nor\nâľ¨ âľ¨</w>\nwhi sp\nlist ings</w>\nma ze</w>\nthan king</w>\nri dd\ngrass roots</w>\nshi fting</w>\ndesper ately</w>\ngor illa</w>\nden i\nju les</w>\nstra th\ng ley</w>\nja in</w>\nbu ick</w>\nt anner</w>\nðŁĴ Ŀ</w>\nga e</w>\npri m\nit ors</w>\nn ano</w>\nsepar ation</w>\narmen ia</w>\nbor deaux</w>\nðŁ ħ\npj net</w>\nbu rial</w>\ne bon\nglo ss</w>\nre new</w>\ngri er</w>\nspe eds</w>\ncomic books</w>\nsym boli\npur poses</w>\nãħł ãħł\nspati al</w>\nno table</w>\nci on</w>\nn ps</w>\nho ffman</w>\nnor man\nrt g</w>\ndu sty</w>\nsitu ated</w>\ntr an</w>\nk fc</w>\nem en</w>\nnic kel</w>\nhast ings</w>\nsett ling</w>\ngr it\nl ena</w>\nw aw\nart s\ngu m\nca regi\nle wis\nsapp hire</w>\nrememb er\nembed ded</w>\nt lc</w>\nbl at\nserge ant</w>\nel sa</w>\nboot camp</w>\nbow man</w>\nphoto graphic</w>\npill ars</w>\ndirection ers</w>\nclassi fied</w>\nno is\nve er</w>\nbarre ls</w>\nwh oop</w>\nðŁĺ± ðŁĺ±\nfe male\npetro leum</w>\nmedi a\ne fc</w>\npokÃ© mon</w>\nà¤ ķ</w>\nenthusi astic</w>\nvar un</w>\npro files</w>\npedi atric</w>\nacci dents</w>\ncon rad</w>\njan g</w>\njo jo</w>\nac or\nob server</w>\nl f</w>\nlive stock</w>\nfor gi\nfo s</w>\nel m</w>\nan and</w>\ngo e\nc ere</w>\navoi ding</w>\ngri t</w>\nom an\nthank fully</w>\nscat tered</w>\nnick y</w>\ncylin der</w>\nchees y</w>\ndi ver</w>\nmahe sh</w>\ncav es</w>\near liest</w>\nqu inte\nsubjec ts</w>\nb end\ngul f\nvocali st</w>\nglu e</w>\npat ches</w>\nun stopp\nsny der</w>\ndemonstr ating</w>\npi o</w>\nhor ns</w>\nwic kets</w>\nand the\nr ama</w>\nyo on</w>\nstra ight\nbed time</w>\nor ang\nbul lets</w>\nsa urus</w>\nmin ers</w>\ninci dents</w>\n! ...</w>\nðŁİ ¸</w>\nag ers</w>\nhand les</w>\nstat es\nin ity</w>\nd ons</w>\nincredi ble\nemin em</w>\navi v</w>\nru dy</w>\nmoz art</w>\nfolk lore\nappli ances</w>\nmt l</w>\nfre y\ndi as\nhu a</w>\npage ant</w>\nstri ve</w>\nim prison\nbul lish</w>\nr ana</w>\nal erts</w>\nbb mas</w>\nhy per</w>\nderby shire</w>\nre cre\nre dd\ndebor ah</w>\ncosmo s</w>\nlaw son</w>\nmel anie</w>\npsy cho</w>\nho or\ndoo dles</w>\nsni per</w>\nshad y</w>\nman tle</w>\ncanadi an\nnew year\ninter actions</w>\nsepar ated</w>\ncor ds</w>\nspiritu ality</w>\nap u\nit o\np ct</w>\npel osi</w>\nrebel lion</w>\nse iz\nwor cester\nsec tors</w>\nul i</w>\nsan ta\nÐ µ\nðŁĩªðŁĩ ¸</w>\nbi ased</w>\nclass ical\ngam ma</w>\ndee plear\nemer ge</w>\nback er</w>\nsur ance</w>\nhand crafted</w>\nðŁİ ¥\nfranc is\nmill an</w>\nic i</w>\ncro wn\nwo w\nstri ped</w>\nun fair</w>\nrelax ation</w>\n³ ï¸ı\nembrac ing</w>\nshe alth</w>\npale o</w>\nmartin i</w>\ndist illery</w>\nwr ink\nor k\nna th\nhay ley</w>\ncour thouse</w>\nsi ber\nsa di\nquiet ly</w>\nmel t\nm sm</w>\nme h</w>\nsmart phones</w>\nrel ent\npp ing\nwar wick</w>\nco logne</w>\ngli a</w>\ncot ton\npro g</w>\nlon e\nip sw\nstar ters</w>\nexpan ds</w>\nu mp\nsu ed</w>\nski pper</w>\ninfe ctions</w>\ning le\nÃ ¡</w>\ncler k</w>\ndemonstr ate</w>\nac ar\nðŁĺĤðŁĺĤ ðŁĺĤ\nti bet</w>\nbun s</w>\nalo m</w>\ndemol ition</w>\nssi a</w>\ng st</w>\n[ ]</w>\nso ar</w>\nâĺ Ģ</w>\nðŁĺ ª</w>\nðŁĵ Ĭ</w>\ndee pest</w>\nbeyon d\nare t</w>\natt ends</w>\nactiv ated</w>\ndi mit\nâļª ï¸ı\nhigh lighted</w>\nmagaz ines</w>\nrum or</w>\naz za</w>\nsteph ens</w>\ndol ph</w>\nsho ckey</w>\nmat s</w>\nwe av\nmel an\nserv ers</w>\ntra um\nku sh\næ Ĺ\nbab ys\npa z</w>\na al\nla use</w>\nbreak ers</w>\ncanter bury</w>\nul ture</w>\nmi ri\neuro s</w>\ntane ous</w>\nimpre ssions</w>\ndu tch\nil d\ngh i</w>\npur due</w>\nadequ ate</w>\nl p\nsy ner\nang ler</w>\ndu rable</w>\ngal ore</w>\nro wn\nmg mt</w>\nðŁĵ Į</w>\nlu cia</w>\nâĺĳ ï¸ı</w>\nzay n\nbor row</w>\n. (</w>\nnorth umber\ncru sh\neng a</w>\nsu sh\nextra vag\nt out</w>\nma hal</w>\nali stic</w>\nther mo\ngall eries</w>\nes se</w>\nchi bi</w>\nattrac tions</w>\nlex ington</w>\nlegislat ure</w>\ndocu mented</w>\nresi den\nbrow nies</w>\nw f</w>\nst ool</w>\nplan ets</w>\nsho ppers</w>\nconduc tor</w>\nms p</w>\ntr icky</w>\nfru ity</w>\nend ra</w>\nfeel the\nwhi pped</w>\nhair style</w>\nre fer</w>\noo k\noc topus</w>\naudi ences</w>\nku mar\nafter no\nop tim\nc fl</w>\nni p</w>\ngen i\nalpha bet</w>\nann ab\nlam in\naccep ts</w>\nl ng</w>\nðŁĺ «</w>\nt ine</w>\nac om</w>\ncheer leaders</w>\nt k\ngr on\nv g</w>\nk ung</w>\nja x\ndha bi</w>\nr ss</w>\nmack enzie</w>\nbeir ut</w>\nclean up</w>\ngy psy</w>\nst ell\nbur ger\nhurric anes</w>\neduc ation\nst ina</w>\nâĻ¡ âĻ¡\nunfortun ate</w>\njere mi\nbad ger</w>\nat ers</w>\n: âĢ¦</w>\nter ra\nsubli me</w>\nstu d\ny mca</w>\nmr u</w>\nduter te</w>\nbren nan</w>\nbul b</w>\nmel o</w>\nyl on</w>\nhack er</w>\nc red</w>\ngu d</w>\nas an\npad illa</w>\nembroide red</w>\nvietnam ese</w>\npione ers</w>\nprojec tion</w>\nre boot</w>\nid c</w>\nan ey</w>\npri mer</w>\nsuff ers</w>\nwin ding</w>\np on</w>\nsto day</w>\nmor n</w>\nu ch</w>\nall in</w>\nadid as\neliza beth\ntu ck</w>\no graphy</w>\nðŁļ Ģ\nbe g</w>\nos borne</w>\nghet to</w>\nr h</w>\ncn n\nir ma</w>\nma kin</w>\ncab les</w>\nmur ders</w>\noc ks</w>\ninst a\nal as</w>\nsi k</w>\ncu ff</w>\nla re\nfoo dies</w>\no vic</w>\nat om\ngeome tric</w>\nem pathy</w>\nà¸ µ\ncent enary</w>\nnewsp apers</w>\nadministr ative</w>\nðŁİ Ĭ</w>\nsti ve</w>\ncontrac tors</w>\nle tt\ntas mania</w>\nawesom eness</w>\nden sity</w>\nve en</w>\nprince ton</w>\nfrequ ently</w>\nre ject</w>\ngh i\nmodu lar</w>\nceram ics</w>\nsh ag\nki wi</w>\ncan vas\nsweat shirt</w>\nan j\nti mm\nnapol i</w>\nil er\nappe als</w>\nhamil ton\nma yo\nwe ave</w>\narrang ed</w>\nwhar f</w>\noccu py\nb vb</w>\nas aki</w>\not ter</w>\nnor m</w>\nvi es</w>\nde tox</w>\ntion al\ndere k\nid ad</w>\nad missions</w>\nconstitu ency</w>\nu pper\nwoo t</w>\nallo y</w>\nse ve</w>\nlu b\nun comfortable</w>\ned win</w>\nab re\nd wight</w>\nar che\nvirtu ally</w>\nsp ol\npri e\nai i</w>\ner r\nswit ch\nbar ack</w>\nse ok</w>\ncou l\nwn t</w>\npou l\no live\ncaffe ine</w>\ncardi ff\nnotor ious</w>\nde mp\nex cess</w>\nbar r</w>\nt ford</w>\na jay\nbump ed</w>\nmy thology</w>\nshel ley</w>\nfal con\nshakespe are\nmust angs</w>\nno ted</w>\nbon e\ncivil ization</w>\nsy d</w>\npar sons</w>\nun official</w>\nhy ped</w>\nsp ends</w>\noppo sed</w>\nv ings</w>\nspace x</w>\nnoti fication</w>\ndeci ding</w>\nbio tech</w>\nout si\nsal ah</w>\n! .</w>\nfe d\nss y\nc ms</w>\nbad gers</w>\ncr o</w>\nela ine</w>\nn ba\ndy our\nn ant</w>\nhoney moon</w>\nclimb ed</w>\nconom y</w>\nath a</w>\nm ell\nne bula</w>\nnature photography</w>\njuli e\nbm x</w>\ninve sted</w>\nmon o</w>\nlieu tenant</w>\nwat kins</w>\ntechn ician</w>\no se</w>\nka e\nì Ľ\nmc queen</w>\npre ach</w>\ntrav eller</w>\nflexi bility</w>\nze bra</w>\nreta iler</w>\np ant</w>\nben der</w>\nbrand t</w>\nsqu id</w>\nwar rant</w>\nveri fied</w>\ncas s</w>\npier cing</w>\nhon ours</w>\nt ying</w>\nmor ris\nkis sed</w>\nop rah</w>\npanor amic</w>\nme i\nsplat oon</w>\nwich ita</w>\nari as</w>\ngal li\nindy ref</w>\ngood times</w>\nathe ist</w>\nconfe ssion</w>\now ski</w>\nre pping</w>\nad ditions</w>\nmechan ism</w>\nz im</w>\nj ans</w>\nsu f</w>\ncho pped</w>\nbeg innings</w>\nvitam ins</w>\nãħ¤ ãħ¤\nor th\npo les</w>\nru b</w>\nantarc tica</w>\nindie film</w>\nweb cam</w>\nket ch\nbre tt\ncle ment\nher on</w>\ndefe ating</w>\nhydr o</w>\nbuc ket\nwand ering</w>\nsid ney</w>\nfuture of\nb inge</w>\non ies</w>\nknock out</w>\nadministr ator</w>\nsyn the\nl ent</w>\njan i</w>\nbar ley</w>\npremier league</w>\nner ds</w>\ncr m</w>\nbra s</w>\nbot any</w>\nevol ved</w>\nrot ter\nro wed</w>\ntum or</w>\nweal thy</w>\nÂ Ń</w>\nmon arch</w>\nli shed</w>\nda hl</w>\nðŁİ ĥ\nbu ch\nken yan</w>\nØ §</w>\nred ness</w>\nassemb led</w>\nse mit\nhud der\nshro p\nran i</w>\nlear ning\nmor y</w>\niti a</w>\ngeo graphic</w>\nworl dof\nf b\npho sp\nboo gie</w>\nam ped</w>\n? ...</w>\nche w</w>\ndwar f</w>\nar us</w>\ns sen</w>\nru sty</w>\nrecru its</w>\nh k\ngar de</w>\napp lause</w>\nvol umes</w>\ninvol ves</w>\nta c</w>\nhand bag</w>\ntrans late</w>\nffe l</w>\nse ym\naqu atic</w>\ntrans fer\nzo di\nand r\nacade mia</w>\ncr ater</w>\nte z</w>\nar se</w>\nadap t</w>\ncol oni\nsnow man</w>\nmal i</w>\nhang in</w>\ndi schar\noy sters</w>\npho e\ncolon el</w>\nw ba</w>\nhispan ic</w>\nthri ving</w>\nsh y\nag les</w>\nsales force</w>\ncre me</w>\nso les</w>\nla fayette</w>\nâ ī\nter ia</w>\nach a</w>\nsp erson</w>\ngo go</w>\ncar ly</w>\nthe ore\nam ore</w>\nvo x</w>\naf t</w>\nãĤ ¹\nstap le</w>\nmu ffin</w>\ndi agram</w>\nino x</w>\nsu stained</w>\nav ent\nme ta</w>\narbit r\ndec ay</w>\nado le\nÐ ½\nec ol\nph o</w>\nn k\no cu\ngr anny</w>\nÃ§ a</w>\nluxemb our\nstad t</w>\nalber to</w>\nle vit\nam as\nd x\nor phan\nco bb</w>\nas c\nlo gy\nimmen se</w>\nchan ts</w>\noff line</w>\np ent</w>\nbre x\nw inger</w>\nplan e\ni el</w>\nnichol s</w>\nca thy</w>\nnar uto</w>\nlow ed</w>\n/ //</w>\nignor ance</w>\ncat astro\nyou ts</w>\nsch en\nbuil d\nhaz i</w>\ns ine\ncritical role</w>\ndu g\ndete ct</w>\nlo gs</w>\nen amel</w>\nstpatrick sday</w>\ned die\nco pa</w>\ncigare ttes</w>\nho ff</w>\nkay a</w>\nla goon</w>\nra pha\nair borne</w>\nchoo se\npuer tor\nke v\ngui ding</w>\nfro sty</w>\nbor ough\nmir a</w>\nðŁİ Ĭ\ncade t</w>\nanu sh\nyo gi</w>\ne ger</w>\nfl ing</w>\nslo pe</w>\nnin th</w>\nwe ston</w>\nfoot wear</w>\nf n\nmay weather</w>\na am</w>\npla in\nstair case</w>\nwitne sses</w>\nwork outs</w>\nro bust</w>\ndex ter</w>\nco hort</w>\nðŁļ Ĺ</w>\nsp ell\nha ze</w>\no om\norgan ising</w>\nwild fire</w>\ncont acts</w>\nav on\nmin o</w>\nupd ating</w>\nðŁį »\nli thium</w>\ning ual</w>\nk is</w>\nau ga</w>\nlo com\nde duc\nu da</w>\nth ak\nboy le</w>\nmp er</w>\nhot tie</w>\neri k\nre vised</w>\nis la</w>\ntravel photography</w>\noo za</w>\nen qui\nconfe rences</w>\nclo ver</w>\ng room</w>\ncur ves</w>\nlive on\nper f</w>\ndisplac ed</w>\nbo log\nxx xx</w>\nðŁĺ© ðŁĺ©\nte al</w>\nve ssels</w>\nrain forest</w>\ncal ci\npan ther\ngira ffe</w>\nta sted</w>\nimag ery</w>\npad res</w>\nday time</w>\nbas s\nri pe</w>\nopio id</w>\nnu e\nvin yl\ninvent or</w>\nsen s</w>\nprocess or</w>\nmu t</w>\ngad gets</w>\nbibl ical</w>\nshann on\njacqu eline</w>\ncar y</w>\nthe resistance</w>\nali en\nn vi\nco sy</w>\nbi har</w>\nfo ley</w>\nren d</w>\nmu gs</w>\nfa ken\ncl one</w>\nni allo\ngra bbed</w>\nchi hu\npower house</w>\nn tt</w>\nchero kee</w>\nspon ge\nimple menting</w>\nrh ine\nle one</w>\nðŁį Ģ\npret tiest</w>\ninfra red</w>\nimpro v</w>\nswit ched</w>\ntu bes</w>\ncon tr\nbl k</w>\nprojec ted</w>\nbe aver</w>\nyo t\nbbcra dio</w>\nthi gh</w>\nper secu\napologi ze</w>\nw ack\npo ster\noli ver\naz a</w>\nlou d\n( ?)</w>\nf the\nwomen shi\nspar row</w>\nblu sh</w>\nus able</w>\nsc ales</w>\nit ative</w>\npeu ge\nne eding</w>\nlegg ings</w>\nglam orous</w>\nmat ur\nc z\nwat t\nda b</w>\ntam ar\net sym\nbau er</w>\nheart felt</w>\nh n\nelse where</w>\nbir ch</w>\nalu mini\nhu ck\ne me\nj l</w>\ntraf ford</w>\nd z</w>\npor tions</w>\nana sta\narthr itis</w>\nesp n\nber gen</w>\nviol ation</w>\nyo shi\nc z</w>\nnorthumber land</w>\nclo sures</w>\nðŁĩ¯ ðŁĩ\nsmi ley</w>\nr w</w>\ntel ugu</w>\ninten si\ngre gg</w>\nve ga</w>\ndun geon</w>\nsouth bound</w>\nba il\ndomin ican</w>\nsemi final</w>\nchap ters</w>\nh itch\nvan ity</w>\ntrans iti\nrecomm ends</w>\nsati sf\nbar ca</w>\nqueen s\n( (\nde struc\nstra it</w>\nra vi\ndess erts</w>\nin tru\nhar am</w>\nk os</w>\nfo e</w>\nfat ty</w>\npais ley</w>\nmagn itude</w>\ndri dge</w>\ncom ey</w>\nschem es</w>\nvision ary</w>\nour t</w>\ndown loaded</w>\nðŁĻĮ ðŁı½</w>\ngd pr</w>\nlan i</w>\np wc</w>\ngu ad\nnic est</w>\nstake holders</w>\nre ferred</w>\ngeorge town</w>\narvind kejriwal</w>\nschnei der</w>\nin doors</w>\nall star</w>\nstrand ed</w>\ngen der\nze pp\nma sses</w>\nðŁĲ ±</w>\npati ently</w>\nbl dg</w>\nz ab\nwe arab\nvi vid</w>\nhe ck\nd ella</w>\nsy mb\nje opar\nla ger</w>\nà ª\ncomb ines</w>\nne c</w>\nbr ay</w>\nflo p</w>\ntx wx</w>\njo ys</w>\npon t</w>\npro found</w>\nsur round</w>\nmad hu\nma ble</w>\nay r\nte as\nn sa</w>\nopen ly</w>\ner nest</w>\nãĥ ©\nto po\ng na</w>\nanti oxid\nti an\ne tr\nc ello</w>\nma thi\ngener osity</w>\nb iting</w>\nman ic\nkel sey</w>\nchee ks</w>\nten der\nw th</w>\npron oun\nultimat ely</w>\ngu sta\nari anag\nger ry</w>\nble ed\nred dy</w>\nmic h</w>\nmitsubi shi</w>\noper ated</w>\nsex ually</w>\nma u</w>\ncl lr</w>\nvi ds</w>\nco c\nmel ted</w>\nðŁĮ Ī\nq ld\nite ch</w>\ninstru mental</w>\nend game</w>\nðŁĵ ĸ</w>\nener gi\nbrow nie</w>\ntam il\nat in</w>\ndomin ated</w>\npra ises</w>\nfire place</w>\nsens ational</w>\nmen a</w>\nk arti\nun prece\nru pt</w>\nori ental</w>\nmc cor\ntour naments</w>\nscen ter</w>\nre eves</w>\nprescri ption</w>\nsam e\nfra u\ntru ffle</w>\nem bo\nroman s</w>\nbla sts</w>\ntechno logical</w>\npr at\nb sb</w>\ny ar</w>\ntren dy</w>\nac l</w>\nal ad\nðŁį ģ</w>\no hh</w>\nbankrup t\ntho ven</w>\nregar ds</w>\nis er\nwar wick\nvine yards</w>\nreal m</w>\nniallo fficial</w>\ndo ta</w>\nge mini</w>\nto do</w>\nv able</w>\nÂ¨ Â¨\nla u</w>\nwre ath</w>\nju ve</w>\nnat asha</w>\nle ver</w>\nlor i</w>\nhor ser\ncc tv</w>\nair bnb</w>\nes anders</w>\nsin clair</w>\nema biggest\nhigh school</w>\ncon test\noptimi stic</w>\nt te\nðŁĴķ ðŁĴķ\nss d</w>\nye e</w>\nhel ena</w>\ncon sen\nric ks</w>\njes se\nan ic</w>\nðŁİ ¯</w>\nre acts</w>\nro be</w>\nindepend ence\nvol tage</w>\nm ington</w>\ns ant</w>\nà¸Ļ à¸\n-------- --------\nsentin el</w>\nke tt\nrehear sing</w>\naaaa aaaa\nsof the\nstir ling</w>\nsear ch\nwi gan</w>\nstand out</w>\nsna il</w>\npent agon</w>\nÄ ģ\nch lor\ncru st</w>\nnet any\nchemi st</w>\ndisapp eared</w>\nric ardo</w>\nsp iders</w>\nbo se</w>\nwar ren\nme ssing</w>\nbann ers</w>\ngu el\npar ach\nma id\ncoun ted</w>\nepi le\nbon fire</w>\nspeech less</w>\nse tter</w>\nmeas ured</w>\nrejec ts</w>\nnik ki\nle ster\nforen sic</w>\nfab rics</w>\nalo ha</w>\npre served</w>\nwat ford</w>\ndeta iling</w>\ndar th</w>\nbo u</w>\ncar ly\n... '</w>\ntail gate</w>\nnoti fications</w>\nå ¤\npas sive</w>\ntrous ers</w>\nbalo ch</w>\nro ther\ntypic ally</w>\nÃ ¥\nsp it</w>\nwi z</w>\nsic ily</w>\ntechnic ally</w>\nex pose</w>\nst age\nhu bb\ncre am\ncap s</w>\npo ke</w>\nsle ek</w>\nju ne\ntempor arily</w>\nde z\nawak ens</w>\nl ame</w>\n_ -</w>\nji ha\ntues days</w>\nadvis ed</w>\nadvis ors</w>\nexi sted</w>\ndis agree</w>\nnews room</w>\nlo sers</w>\nworld tour</w>\ndr ying</w>\nal di</w>\nhar ness</w>\nfoot print</w>\nhobb it</w>\np mln</w>\ni ro\nque red</w>\nasse ss</w>\ngaz e</w>\nsa b</w>\nth ian</w>\ní Ĭ\nti f</w>\nob serve</w>\nev il\ndra wer</w>\nswee p\ncor y\nco dy\nkyo to</w>\ncal lum</w>\nn inj\nlau rent</w>\nbe i</w>\nsket ching</w>\ncustom ized</w>\ndu r</w>\nregre ts</w>\nknox ville</w>\nìķ Ħ\nmess aging</w>\ngrac ie</w>\nabun dance</w>\nbi dding</w>\nbre wed</w>\nfl ouri\ntherapeu tic</w>\nalt itude</w>\nho gs</w>\nbur ner</w>\nelec tro</w>\nwonder fully</w>\nhe ater</w>\npost pon\nli very</w>\nr all\nad as</w>\na ac\nsau l</w>\nbrook lyn\nplay house</w>\nâĻ¥âĻ¥ âĻ¥</w>\nchar itable</w>\nin y</w>\nz ah\ncompet itions</w>\nbe av\nplu gged</w>\no is</w>\ndo om\nastron om\nspeci alized</w>\nmax i</w>\nta ps</w>\ncellu lar</w>\ndepre ssed</w>\nfolklore thursday</w>\ncri b</w>\ne mul\në° ©\nfi gh\nru z</w>\ncar lisle</w>\nspe ar\nside walk</w>\nde i</w>\ndepend ent</w>\nlac es</w>\nnh s\nðŁĮ Ļ</w>\nreali zing</w>\nnet work\nric he\nre gin\nre fresh</w>\nst ral</w>\npa thology</w>\npla id</w>\npsyched elic</w>\nhin d</w>\nu ka</w>\nalgori thm</w>\nlin king</w>\nprogre ssi\nfe y</w>\nd ade</w>\nhydr ated</w>\nb ant\nfam ed</w>\ncot sw\nbo ise</w>\nas c</w>\nrac ing\nja vier</w>\nww en\nmar lins</w>\npoo p</w>\nswe pt</w>\ntoni ghts</w>\nwe f</w>\nani me\nslo vak\nâŀĸ âŀĸ\ncla us</w>\nlem me</w>\ncli ppers</w>\nre ls</w>\narianag rande</w>\nr te</w>\nko t\nthal apathy</w>\nhungar ian</w>\nzu ma</w>\ny von\nis u</w>\njour neys</w>\nclin ics</w>\nbe be</w>\nww f</w>\nn ws\nsuper heroes</w>\ner it\nsle ague</w>\nidenti fication</w>\nmo tto</w>\nba i</w>\nsour ced</w>\nill er\nap i\npri se</w>\nunprece dented</w>\ndam as\ntuni sia</w>\ndra in\nundere stim\ne ther\nquarter ly</w>\nrewar ding</w>\nal ham\nwolver ine</w>\ncab ine\nhyp no\nnad ine</w>\nhav ana</w>\nda e\nðŁĵ Ī</w>\ndr on</w>\nread ings</w>\nb ati\npic o</w>\nmer ci\niti an</w>\nwal kers</w>\nel ope</w>\nmi key</w>\ngod zilla</w>\nbur lington</w>\nabu ja</w>\nsocial ism</w>\nat ility</w>\nsh ell\nharry potter</w>\ng no\nab ur\nre leg\nfel ici\nro gen</w>\nneuro science</w>\ninst in\nath am</w>\nvou chers</w>\nj arre\nfu se</w>\ndef ici\nmonte rey</w>\nde port\nmid day</w>\npp ard</w>\nfre ed</w>\name ter</w>\nwil t\nn ingham</w>\npr att</w>\nliber ty\nslo gan</w>\no to</w>\npr i</w>\nco ated</w>\nc pd</w>\nne tt\nil las</w>\nmal awi</w>\nevol ve</w>\naccessi bility</w>\nðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥\nor nament</w>\nb p\nel is\nson line</w>\nchi ro\nfl ick</w>\nib m\nar ak\nen ables</w>\ngar land</w>\nsan e</w>\ncu ties</w>\ntri p\nrotter dam</w>\nn ys</w>\nlam ps</w>\nlu cas\nbo g\nra ils</w>\ntravel led</w>\nhic ks</w>\nen u\nsab ha</w>\nscru b</w>\nhi er\nhart ford</w>\nfo o</w>\nfer nandez</w>\ntre vor\nmat tress</w>\nappo intments</w>\nale j\nfe i\no logist</w>\nsaf ar\noc ta\nsr c</w>\nsha un\nambi ent</w>\ndri c</w>\nbi ker</w>\nshe e\nmust ache</w>\nh ta\nbo one</w>\nher ty</w>\ncar dio</w>\nbra kes</w>\nrec ital</w>\nconsi sts</w>\noverwhel med</w>\ncau l\nrobb ins</w>\nim it\nal th\nur l</w>\nbi bli\non ne</w>\nblack livesmatter</w>\ndiffic ulties</w>\ntel ang\ntall er</w>\nðŁĵ Ĩ</w>\ndeb ating</w>\nbur rito</w>\nmo vember</w>\nstrength ening</w>\nbo e\nte stam\nmirac les</w>\nbase ball\nre nee</w>\nðŁĳī ðŁı»</w>\nal fa</w>\nâĺ ĺ\nunstopp able</w>\nec s</w>\ng mo</w>\ngiftide as</w>\npath way</w>\nfen cing</w>\nðŁİ ¤\nb ham</w>\nra s\nsk o</w>\nd led</w>\nthel ast\nmagn um</w>\nbin ary</w>\nwil de</w>\nwil der</w>\nwh ati\nbarbe cue</w>\nh ism</w>\ncan oe</w>\nkur di\neli ve</w>\nadvant ages</w>\nmad ame</w>\nbi er</w>\nmis sing\nenter tain</w>\nair force</w>\ny ama</w>\nc is</w>\nhash tags</w>\nj is</w>\nve il</w>\ndream y</w>\nten se</w>\nmay ward</w>\nch ateau</w>\nhunt ington</w>\nâļ ĵ\nv all\nup on\nbl ouse</w>\ndun es</w>\nðŁĺ ´\nfert ility</w>\nm ole</w>\ncurren cies</w>\nst u</w>\nber lin\ntoa sted</w>\ndiv as</w>\nwal t\nlar k</w>\npor a</w>\nhit ter</w>\num er</w>\nchil led</w>\nbal ancing</w>\nfa is\ny in</w>\nor tiz</w>\neast enders</w>\nh ate\nur al\nap ril\ntim el\nà ±\nper o</w>\nsto cked</w>\nrespec ts</w>\nth t</w>\nbest friends</w>\ngiving tuesday</w>\nbe ad</w>\ninv ent</w>\nim i</w>\nnap les</w>\ncomb ining</w>\ntok ens</w>\nthir st</w>\nma sc\npar rot</w>\nsp u\ndent on</w>\n* -*</w>\nt res</w>\nsubur ban</w>\nwid th</w>\nsi ve\ncon tender</w>\nsiri us\nlo k</w>\ntroop ers</w>\noutra ge</w>\ntur bo\nfrag ile</w>\nme ssed</w>\ndo h</w>\ndisc ord</w>\nnetany ahu</w>\nre sign</w>\nforgi veness</w>\nmo han</w>\nmun ch\ncam ou\nidenti fying</w>\nenab ling</w>\nhot ter</w>\nthorn ton</w>\njai pur</w>\nar ya</w>\nðŁı» âĢįâĻĢï¸ı</w>\nmu staf\nmaj ors</w>\no ke</w>\ndu ffy</w>\nroh ing\ntil t</w>\nðŁĩ®ðŁĩ ³</w>\nrock star\nshe ep\nhend rix</w>\nra v</w>\nin vention</w>\ndo u</w>\nlagun a</w>\ngru mpy</w>\nsw is\nim pe\n) '</w>\nyou ths</w>\nbun ker</w>\nst ache</w>\noppo se</w>\nindi es</w>\nacceler ate</w>\nml p</w>\ned en\nw ann\nk ail\nakshay kumar</w>\nsu pt</w>\npol ym\nmidd leton</w>\nextra ordin\nwil son\naustrali an\nalumini um</w>\nway ne\nalum nus</w>\nmat ics</w>\ngri m</w>\ner nie</w>\nopp a</w>\ncompetit ors</w>\nrand all</w>\nh ence</w>\ndecla res</w>\npre aching</w>\nsha he\ncan e\nsustain able\nstap les</w>\nle dge\nad ena</w>\ndoctor al</w>\nbur gundy</w>\ndecor ate</w>\nren dered</w>\nri sen</w>\npr ank</w>\ndi or</w>\nbee thoven</w>\nflo or\nac com\nto t</w>\nho dg\ntouri sm\nsay in</w>\nobjec tive</w>\nmar kers</w>\npremi ership</w>\nen abled</w>\ncamou fla\ngi ant\nÑ ģ\nsmo key</w>\nric ket</w>\npan g</w>\nde pending</w>\ns ation</w>\nevol ving</w>\ninter cep\ncen sus</w>\ntof the\nre en</w>\nmendo za</w>\ntrum pet</w>\nmarke ters</w>\nan it\nðŁĻ Ĭ\nnorth western</w>\nv la\nfoto gra\nblackand white\nche wan</w>\nwi g\ntro om</w>\nginger bread</w>\nk n</w>\nro mero</w>\nn fc</w>\nor chi\nfun ko</w>\nsour ce\nf s\nra ped</w>\no st\ntar ot</w>\nann ually</w>\nðŁĺ ¬\nr ill</w>\ndel av\n.. !!</w>\nse s\ncan n</w>\nmedic are</w>\nph el\nape x</w>\nguardi an\nrema ined</w>\nr pm</w>\na Ã±\nstory month</w>\ninstag ood</w>\nneighb our</w>\np ing\nsem ite</w>\nmy stic</w>\nas cot</w>\nmat er</w>\nhand ful</w>\ndang ers</w>\nti d</w>\nana heim</w>\nopol y</w>\nsh allow</w>\nnami bia</w>\ntor ia</w>\nprocu rement</w>\nbig bang</w>\nannoun cements</w>\nprosecu tor</w>\nbeng als</w>\nsal le</w>\nen roll\nga stro\nsugge stion</w>\nba k</w>\nha ul\nbudd hism</w>\nberni esanders</w>\nflu te</w>\nfati gue</w>\ncyn thia</w>\ncho i</w>\nir win</w>\ngu a</w>\nstr ous</w>\nh p\nba p</w>\nsatisf ying</w>\nplay a</w>\nðŁİ ¼</w>\ninst ap\nal ice\nt p\nirri gation</w>\nðŁĩ¬ðŁĩ §\nin tric\nclu es</w>\nple x\nsa x</w>\nhe pat\ndump ed</w>\nsignific ance</w>\nby u</w>\nmedic ation</w>\npro v\ntough est</w>\ncorn ish</w>\nâŀ ľ</w>\nkel ley</w>\nu v\nsi zz\nsi bling</w>\nme st</w>\ndi stor\ndiplom atic</w>\naun tie</w>\nb hat\nson ic\nbren da</w>\npump kins</w>\nro ch\nblack burn</w>\nur ged</w>\nshi a</w>\narrange ments</w>\nfloo d\nsa unders</w>\nlec turer</w>\nnou ri\npopul ations</w>\ndiplom acy</w>\nconsist ently</w>\nðŁ¤ Ļ\nt mund</w>\ncauli flower</w>\nl ily\nvocab ulary</w>\nvari eties</w>\ncoo ker</w>\nup town</w>\nqu ent\nmo sa</w>\nre inde\nvelo city</w>\nspru ce</w>\nsocial medi\ni ber\nvolun tary</w>\nproce ssed</w>\nbal tic</w>\ny ang\nleban ese</w>\nd p\ndol ly</w>\narrange ment</w>\ny uri</w>\ncran berry</w>\nkal yan</w>\nelev ation</w>\ncli ff\npu shes</w>\nìĬ ¤</w>\nsil ic\nco wx</w>\neter nity</w>\nsla ves</w>\nvine gar</w>\nglou cester</w>\ncon tained</w>\nbreaking news</w>\naga inst\nrenov ated</w>\nnorm andy</w>\nhero in</w>\nys m</w>\nmo ds</w>\ngre ek\nun di</w>\ntren ch</w>\nv h</w>\nencoura ges</w>\nhead ache</w>\ngr ange</w>\n: '</w>\never green</w>\nÙ Ĭ</w>\nreck on</w>\nab used</w>\nth ru\ncho ice\nti dy</w>\ncol der</w>\nscho ice</w>\nha in</w>\nbru m\nli ars</w>\nbre it\nyor ker</w>\nsh ack\nhe idi</w>\nmicha els</w>\nsco pic</w>\nfasci st</w>\nplay ful</w>\nca c</w>\nyas ss</w>\nsh ad</w>\n.. ?</w>\nqu en\nram irez</w>\nclif ton</w>\npr s</w>\nbest fan\nâģ ł\ngener ating</w>\nhead set</w>\ndisappo intment</w>\nabstr act\nbo iled</w>\nparen thood</w>\nazerbai jan</w>\nexhib iting</w>\nbom bay</w>\noli vier</w>\nko so\nun lea\nmat ernity</w>\niz er</w>\nsi ves</w>\nr hu\ncol l</w>\nsaskat chewan</w>\nfre akin</w>\nde k</w>\nna g</w>\nstab ili\nðŁį ķ</w>\norgani zer</w>\nbo sses</w>\nar u</w>\nu va</w>\nat able</w>\nta un\nafter wards</w>\nfert ili\nver ge</w>\naz i\nmor ph\nà¹ ģà¸\njer k</w>\ncosme tic</w>\nko w</w>\nstru st</w>\nap ache</w>\npost cards</w>\nfor mul\nì ĭ\nspin al</w>\njack pot</w>\nelec tri\nÃ Ń</w>\nlo y</w>\ngra der</w>\ndiab lo</w>\nar di\nhe sit\nf w\narch ery</w>\npa sh\nthe ories</w>\nrepe al</w>\nre live</w>\nper cy</w>\nâĺ Ĩ\nim in\nsyn chron\nsham poo</w>\ncoup ons</w>\no to\nla i</w>\nthou ght\nluxembour g</w>\nmo v</w>\nðŁĺ ¥</w>\nge mma</w>\nse ated</w>\nm ga</w>\nstrat ford</w>\nun certainty</w>\nshi fts</w>\nest o</w>\nfo ol\nfire arms</w>\ncor rie</w>\nki ki</w>\nappa rent</w>\np ills</w>\nolym pia</w>\nfi d</w>\nelev ated</w>\nde cks</w>\nignor ing</w>\nav alan\nro v</w>\nwhist le\np tsd</w>\nmilit ants</w>\nrobo tic</w>\npac ers</w>\nquil t</w>\nbankrupt cy</w>\nlic h\nper cussion</w>\ncelebr ity\nal s\n( ;</w>\nsu t\npokemon go</w>\nh g\noff s</w>\ngibr altar</w>\nscre ams</w>\nbilli e</w>\ngen ome</w>\nmar in</w>\nbe ams</w>\narch bishop</w>\nem in</w>\nbedro oms</w>\ng ated</w>\nol ly</w>\nwarran ty</w>\nat own</w>\ncudd les</w>\ngun na</w>\nk ic\nvi ve</w>\ncy mru</w>\nnar row\npro b</w>\nle o\nrefe rences</w>\nmanufac tured</w>\ncho pper</w>\nbrun swick</w>\nsem is</w>\ndon ia</w>\nr ye\nman o</w>\nhur ting</w>\n? #</w>\nhol li\ninvestig ations</w>\nc els</w>\nðŁĵ ŀ</w>\nle ster</w>\ntemp les</w>\nsto rey</w>\nmc mahon</w>\ntoi lets</w>\nwo of</w>\nï¸ İ</w>\nle verage</w>\nat om</w>\nnight mares</w>\nvictor ious</w>\nhaun ting</w>\ncustom er\nag i\nyo ongi</w>\nmon ty</w>\nver onica</w>\nw ur\ninti mid\nblan kets</w>\nvolu tion</w>\nj m\nâĺ İ\nam on</w>\njud ith</w>\nðŁĺİ ðŁĺİ</w>\ndistr acted</w>\ndri p</w>\nhurric ane\nand es</w>\nrevel ation</w>\ntro op</w>\nab leg</w>\ncol lin\ntibet an</w>\nwor rying</w>\ninter nationally</w>\neat er</w>\ncamero on</w>\nbrad or</w>\ny uk</w>\nðŁĴĹ ðŁĴĹ</w>\ntra k</w>\nslo pes</w>\nci er\nne a</w>\nol er\nta ka\nalbi on</w>\nvolcan ic</w>\nam n</w>\na fi\nob stac\nface time</w>\nger ing</w>\nn pr</w>\nmetall ica</w>\norgan ic\nðŁĴ ¡</w>\nki dd</w>\nd ances</w>\npemb ro\nwash er</w>\nm its</w>\nom er\nemo tionally</w>\ntan go</w>\nip o</w>\ndo cks</w>\nscan ning</w>\nspec s</w>\ntho m</w>\nthe ology</w>\nemer gen\nom i\ng pa</w>\nselec tions</w>\nun necessary</w>\nima ge\nter s\ninduc ed</w>\ngi gan\nrent als</w>\nsupp lied</w>\nm fa</w>\nshan kar</w>\nlat er\npa jam\ncla ve</w>\nÙ ģ\nma hin\ncarl son</w>\navi an</w>\nano va</w>\nkati e\naj ith</w>\ndesign ated</w>\nchocol ates</w>\ninvestig ators</w>\ngla zed</w>\nprin cess\ner ry</w>\nra gn\nou rable</w>\nhr u</w>\nsun dance</w>\npeuge ot</w>\nsteam punk</w>\ngh lin</w>\ngre ase</w>\nhi res</w>\nz ap\nper ce\nj ill\ntom e\nhe hehe</w>\njoy ful</w>\nmae stro</w>\nni shed</w>\ngene alo\nv ich</w>\np its</w>\nfox es</w>\ngood man</w>\nemer son</w>\nlo bes</w>\ncon verse</w>\no ats</w>\nthom son</w>\nra him</w>\nmal ware</w>\nah i</w>\nman kind</w>\nre sin</w>\nim g</w>\nsw ood</w>\nkin der</w>\nsc roll</w>\nar a\nsak ura</w>\nro bbed</w>\nxi on</w>\nny a</w>\nc ism</w>\nce dar\nbe in</w>\nmour ning</w>\ntor to\nheath row</w>\ndone gal</w>\nbar b\nhydr ation</w>\nk or</w>\nelim ination</w>\nsu pdates</w>\nhill s\nappe ti\nstar red</w>\nko m</w>\ngw en</w>\ndd d</w>\ncra y\nsc anner</w>\npersonal ised</w>\nseren ity</w>\nre design</w>\nmeta ph\nbox ed</w>\njudg ment</w>\nno se\në ¹\ner ad\nac ne</w>\nsupp liers</w>\nener getic</w>\nv om\nas ap\nðŁĶ ¸</w>\nir vine</w>\nhat ch\nla ss\nad ren\nwaff les</w>\naccur ately</w>\nici o</w>\nitt le\nse un\noccup y</w>\nweb cam\nthene w\nent es</w>\nga i\nj w</w>\naccoun table</w>\nvis or</w>\nir rit\nlicen sing</w>\nhudder sfield</w>\ngen ie</w>\nðŁİ ¾</w>\natmo spheric</w>\nten sions</w>\nspart an</w>\nclif ford</w>\nol an</w>\nnorth bound</w>\name en</w>\ncen sor\nu el</w>\nster y</w>\n$ $\nfar rell</w>\nhy ster\ncl t</w>\nse dan</w>\nrep lied</w>\ndescri bing</w>\nmicro wave</w>\nsla b</w>\npro sp\nassi sting</w>\nru bio</w>\ne than\nhh hhh</w>\ngu ay</w>\nz man</w>\nra ise\nroll ing\no e\nn ile</w>\nambro se</w>\nscar borough</w>\nhero ic</w>\ncoo ks</w>\nmor t\nchop ra</w>\nðŁĮ ·</w>\nto b</w>\nshav ing</w>\nstac ey</w>\ndor m</w>\nmotor sports</w>\nwi ki</w>\nfol ds</w>\nsp iced</w>\nstress ful</w>\nliter al</w>\nfu dge</w>\npe ggy</w>\nwa ite</w>\ntre sses</w>\nse sh</w>\npr ic\nðŁİ ħ</w>\nfri ght\nr va</w>\nmumb ai\npo m</w>\ntt v</w>\ncel lar</w>\ntom e</w>\nandro id\ndor is</w>\ntsun ami</w>\ntin der</w>\no ec\nm wc</w>\ndor tmund</w>\nno thin</w>\nl iti\nso u</w>\nbelieve in\nat u</w>\nkno cks</w>\nmag ni\nss sss</w>\nro hit</w>\nine ws</w>\nang i</w>\nm andy</w>\nke ttle</w>\nintermedi ate</w>\nav ant</w>\ncur l</w>\nendor sed</w>\nori o</w>\nur t</w>\nconsider ation</w>\nwi res</w>\nshel ters</w>\nb ino</w>\nvik ram</w>\nimple mented</w>\nly dia</w>\nbu k</w>\nparo dy</w>\nc news</w>\nunder graduate</w>\ncanu cks</w>\nsam i</w>\npolit ically</w>\nro tten</w>\ngh z</w>\ntex tiles</w>\nover load</w>\nmoder ni\nrecre ational</w>\nfli r\nbat on</w>\ntypo graphy</w>\nov ation</w>\nintrigu ing</w>\npilgri mage</w>\nal ge\nad ays</w>\ntcm party</w>\nsp elled</w>\ncur ls</w>\nboo ze</w>\nste m\nann es</w>\nir ls</w>\nspon ge</w>\nsho pper</w>\nsig nation</w>\nbra ss\nmi stress</w>\nle ah\nbeg inner</w>\nlau derdale</w>\naugu st\npre school</w>\nta ping</w>\ntai pei</w>\nexecu tives</w>\nb d\nrhe tor\nesc or\nimmun o\ndeeplear ning</w>\nstat ues</w>\nit us</w>\nmanu script</w>\nly ric\ncor vette</w>\nmol ly\nla ge</w>\nde p</w>\ncn bc</w>\nle st\nje ssi\nfi fe</w>\ngriff ith</w>\noppo sing</w>\nran g</w>\ndr ills</w>\nrespec tful</w>\np ity</w>\nd ell\nhar ding</w>\nplay boy</w>\nblo ke</w>\nshut out</w>\nk ili\no sp\nse attle\nbc poli</w>\nmis es</w>\njourn als</w>\nteam ing</w>\nes ther</w>\nfre ddy</w>\nĶ ï¸ı\nmetr ics</w>\nno tre\ngar ry</w>\nfor ty</w>\nnavi gate</w>\nperio ds</w>\nbened ic\nj id</w>\nda w</w>\nance stors</w>\nrestor ing</w>\ncon g</w>\naller gy</w>\ntit anium</w>\nc ence</w>\nlean ing</w>\nab bas</w>\nv ast\nuc f</w>\nroof ing</w>\ne man\nseve rely</w>\nvo gue\nve au</w>\nin bound</w>\nd z\ntane ously</w>\nstret ching</w>\nman chester\ndr yer</w>\ndav is\nkan th</w>\nthe game</w>\nit ted</w>\nre tain</w>\nel les</w>\nconge stion</w>\nfrat ernity</w>\nol lie</w>\nlo ki</w>\nfre ely</w>\ncho o</w>\npon y\nsc ep\ntab ly</w>\nbal t</w>\nrock n\ndi me</w>\nlo gging</w>\nðŁį ·\nad u</w>\nha voc</w>\nwater ford</w>\nchar is\nswee tie</w>\nrun ning\nner d\nerdo gan</w>\nz ara</w>\nweigh ing</w>\nfif ty\npre cise</w>\nlow ell</w>\nkurdi stan</w>\nr yo\nor th</w>\nsyn th</w>\nlin ers</w>\nphenomen on</w>\nart illery</w>\nil legally</w>\nconstru ct</w>\nnostal gic</w>\ngar th</w>\nal ta\nshel ton</w>\na sean</w>\nw ander</w>\ndur ban</w>\ndi versi\nbon o</w>\ncl on\nle man</w>\nsh un\nobstac les</w>\nappet ite</w>\nfe eder</w>\nrespir atory</w>\ndi xie</w>\nformu la\nan to</w>\nso ber</w>\nextin ct</w>\nau c\ning les</w>\nlegitim ate</w>\n; ;</w>\nmin nie</w>\nipsw ich</w>\ndram atically</w>\nðŁĳı ðŁı¼\ningh am\nmilit ary\nmon et</w>\nus navy</w>\nfor k\ndun no</w>\nplay er\nq otd</w>\nst oo\nex or\nethiop ian</w>\nfilm fest</w>\npe red</w>\nc ate</w>\nsau di\nin ner\nsin cere\ntion ality</w>\nale e</w>\nde eds</w>\ncooper ative</w>\nir onic</w>\ncro cod\nbr ary</w>\npost season</w>\ncam per</w>\ncan ary</w>\ne in</w>\nexten sions</w>\nnb d</w>\nsher wood</w>\nspo kane</w>\nhu mp</w>\njit su</w>\nê ¹\ndar yl</w>\np si</w>\nstab bed</w>\noffer ings</w>\nexpe cts</w>\ncav al\nbody building</w>\nfr aming</w>\nf ca</w>\nye arly</w>\nbom bed</w>\nsk il\nresear ching</w>\njud iciary</w>\ngree ted</w>\ntu dor</w>\nmil o</w>\ninnov ate</w>\nðŁĺ Ľ\nr hs</w>\nru by\ncontribu tor</w>\nfam er</w>\nsoci ally</w>\nm lin</w>\nfi ery</w>\nut ter</w>\nbeau t</w>\nit os</w>\nde voted</w>\nrain bow\nbar ney</w>\npe ren\nar jun\nr na</w>\ngab by</w>\nut i</w>\nhann ity</w>\npick le</w>\nser v</w>\nqu akes</w>\npp e\nfe m\nwh itec\nj n\nvictor ies</w>\nðŁ§ ¡</w>\ngol fer</w>\ncongratul ates</w>\nresul ting</w>\nmechan ic</w>\nur ve\ncen tered</w>\nkie v</w>\nan s\nin cub\n< <\nc mo</w>\nbestfan army</w>\ndap h\nen ham</w>\non cology</w>\nku sh</w>\nt xt</w>\nori ented</w>\nfashion able</w>\nc sr</w>\nsa hara</w>\nr ack\npd p</w>\nhan son</w>\nà¸ ĩ\nti ers</w>\nra r</w>\npan am\nin sky</w>\nsa hi\ntestam ent</w>\nasth ma</w>\nin her\nfisher ies</w>\nor der\nho we</w>\ngall on</w>\nep is\nsuz anne</w>\ndrow ning</w>\npaneli sts</w>\nðŁĺ ²</w>\në ¦\nal ach\ncommemor ative</w>\nat tribu\nðŁĳ »\nmo o</w>\nvisi onal</w>\nweek sary</w>\ngu st</w>\nak in\npoin te</w>\nee e\ndi spar\nni pp\ndent al\nst all\npi an</w>\nbor e</w>\nul ster</w>\ntic k\nir r\ntae hyung</w>\nmicro phone</w>\nbermu da</w>\nga ard</w>\nel er</w>\nplumb ing</w>\nhu gely</w>\nâļ« ï¸ı</w>\nrace way</w>\ncam bridge\nmar cel</w>\nburn ley</w>\nto ast\nholly wood\nfa sting</w>\nme red\nhib ition</w>\nca pped</w>\nbenef icial</w>\now ning</w>\ncont amin\narab ian</w>\nto on\ncap ac\nhul u</w>\nsm ir\nnutri ents</w>\nse in</w>\ngraph s</w>\ncon ditional</w>\nðŁĳ ħ</w>\nor ac\nplay in</w>\nnor the\ntor nad\nmar ian</w>\nju mbo</w>\nlex i</w>\nincredible india</w>\nroad to\nuk one</w>\nconfu sing</w>\nsp h</w>\nshan k</w>\npi ed\nmq m</w>\npositi vely</w>\nsher ry</w>\npath ways</w>\nconsi ders</w>\ntof u</w>\nargu ments</w>\nresil ient</w>\nche tt</w>\nwith dra\nter o</w>\nated ly</w>\nsw ana</w>\nhe b\nfli ght\nhar ley\ndecre ase</w>\nkind le\nbook shop</w>\n³ ï¸ı</w>\nmarty rs</w>\nsm ur\nmc cl\nconcer to</w>\nsti me</w>\nrejo ice</w>\napp lau\ncle ment</w>\nmer kel</w>\njai me</w>\nim mortal</w>\nisle of\nmar co\nyoutu ber</w>\nstal king</w>\nme too</w>\nst ack\nsp ouse</w>\nu st</w>\nlu v\nâļ¾ ï¸ı\neque strian</w>\nev ing</w>\nfl in\nnick name</w>\nthe big\nas ar\nst acks</w>\nwal ker\nbor a</w>\nkidnapp ed</w>\nhur ling</w>\nhumb old\nrec alls</w>\nco pper\nann is</w>\nse o\nmer ger</w>\nmu ir</w>\nad dy</w>\nðŁĴª ðŁĴª</w>\nbe x</w>\ncr acy</w>\ncon an</w>\ncongratul ation</w>\nmid st</w>\nâĻ ¬</w>\nfor bi\nop tic</w>\ncr ate</w>\ncrocod ile</w>\nmad agas\nsecur ing</w>\nast on\no gue</w>\nsavi or</w>\nsalis bury</w>\nlove it</w>\nfuji film</w>\ncast les</w>\nas st</w>\nar rows</w>\nsp acious</w>\ntr s</w>\npoly vore</w>\nprogre ssion</w>\nm ri</w>\nnel son\nbi m</w>\nindic ator</w>\no da</w>\npe pe</w>\nre signation</w>\ngu t\nsne aker</w>\nlog ically</w>\naz y</w>\nare lla</w>\nte aring</w>\njo shi</w>\nssion ism</w>\nq pr</w>\nmari ah</w>\np x\nble ed</w>\nmi an</w>\nmed ley</w>\nwe iss</w>\nker ry\ngat ory</w>\nat al</w>\nmadi son\nav enger</w>\nnab y</w>\npl and</w>\ngi les</w>\nfresh water</w>\nd ington</w>\nta j</w>\ndemonstr ates</w>\nn tv\nbul bs</w>\nsunday morning</w>\npe ake</w>\nsouven ir</w>\nwa h\nton nes</w>\nm kt</w>\ncomplex ity</w>\ncon den\nross i</w>\nb ing\ny ds</w>\nsu k\nn go</w>\nmid land</w>\nol y</w>\nlife is\nri pple</w>\nmo reno</w>\ndd ers</w>\ntu s\ná ĥ\nbou l\nx a</w>\nhol dings</w>\nwn y</w>\nshadowhun ters</w>\nke i</w>\nasp ire</w>\nm ous\now en\nso ak</w>\nskir ts</w>\nmoun taine\nstor ming</w>\nch rome\nri ots</w>\nsar ato\namaz e</w>\nless ness</w>\nnav ar\ncrit eria</w>\nra fa</w>\nindul ge</w>\nay er</w>\npor to\nnam o</w>\n........ ........\nyi elds</w>\nval le\nj h\nmac ron</w>\nsa ins\ndur ant</w>\ntra ilers</w>\nwo t</w>\nconfeder ate</w>\nsh rin\nid ol\nform ally</w>\nten e\nmotor cycles</w>\nthan g</w>\nno de</w>\nbang er</w>\ndal y</w>\np ats</w>\nenroll ment</w>\nau ctions</w>\nat al\nar bor</w>\nlo gos</w>\nde arest</w>\ntrans action</w>\ndom ingo</w>\nfle a</w>\nser mon</w>\nde ck\nsin cere</w>\nquesti oning</w>\njuli o</w>\nwas p</w>\npre tz\narmen ian</w>\nk ham\ninflam mation</w>\npicture sque</w>\nacci dental</w>\nfilm makers</w>\nðŁĺ ļ\nðŁĴ į</w>\nca sey\nso b\nyee zy</w>\ngood will</w>\nparag ra\nss ly</w>\nfe ather\ndy ed</w>\nassassin ation</w>\nna de\nb cs</w>\napp lies</w>\nfemin ine</w>\nfe u\next ent</w>\ndepu ties</w>\nl ack\npsy chic</w>\ngo i</w>\nkill ings</w>\npse u\nðŁ¤ ª</w>\nun c\nmar l\ntan e</w>\nmck enna</w>\nsur fer</w>\ninflu ences</w>\nfree way</w>\nhack ney</w>\nmal aria</w>\nel and\nte au</w>\nrema stered</w>\nØ ±</w>\nraz or\ngg y\ncor ro\nlak sh\nfla ir</w>\nhonest y</w>\nhoor ay</w>\nde pp</w>\nam c\nwedne sdays</w>\nq a\ned its</w>\n- $</w>\nse villa</w>\ndou bled</w>\nhuman ities</w>\nc cot</w>\nsom os</w>\nr ine</w>\naf a</w>\nsi oux</w>\nre construction</w>\nwel ding</w>\nth reads</w>\nam ish</w>\nencoura gement</w>\npo der\nbo ck</w>\nbal m</w>\np tions</w>\nstand up</w>\naccompli shments</w>\nguar ding</w>\nconvic tion</w>\nac ion</w>\nnapo leon</w>\ndepic ting</w>\natt ack\nsu i</w>\nwear able</w>\nâĸª ï¸ı</w>\npot ter\nesc ort</w>\nvis e</w>\nto ts</w>\nbo on\nevent profs</w>\nangu lar</w>\nwomenshi storymonth</w>\nbar row</w>\nsch i</w>\nac comp\nti k\nl end</w>\nkensing ton</w>\nwol fe</w>\nst acked</w>\ncra shing</w>\nexhi bit\nwing ed</w>\nsab rina</w>\nma sa\nk ms</w>\nalway s\net t</w>\npla sma</w>\ncounsel ing</w>\npick les</w>\nnfl draft</w>\nmr s\ninev itable</w>\ncoura geous</w>\nstaf ford</w>\nwriters life</w>\nho s</w>\ne j</w>\ngh yun</w>\ntrade mark</w>\nadri an\ninfluen cer</w>\ncoron ation</w>\nra ging</w>\nexplo red</w>\nusa f</w>\nexcep tion</w>\neu x</w>\ntan ker</w>\nsw ami</w>\npac ket</w>\nðŁĳ¨ âĢį\nf en</w>\nshe en</w>\na ero</w>\nj l\nre gal</w>\nnw t</w>\nau ster\nmeh ta</w>\nchar ge\na ste\nb ate\ninf eld</w>\nracec ourse</w>\ncollap sed</w>\nfle ece</w>\nz il\nal lie</w>\nalternati ves</w>\ngeor ges</w>\nðŁĵ į\nquir ky</w>\nfc b</w>\nnat geo</w>\nphilanthro py</w>\nbra i\nevery day\nðŁĲ °</w>\nach ers</w>\nja an</w>\nfin es</w>\nq i\nfisher man</w>\ndistin ct</w>\ngri mes</w>\nnation alist</w>\ncomm ence</w>\nro wn</w>\nâĢ ³</w>\nz ing\nf ter</w>\nhr w</w>\nbaro que</w>\nbl ender</w>\nkitt y\nhoo ks</w>\nc ited</w>\nw anda</w>\nconsen sus</w>\nreinde er</w>\nan and\nsupp ly\nme ds</w>\nv n</w>\nol ph</w>\nrat chet</w>\nshel don</w>\nsecur ities</w>\në°© íĥ\ncro m\nmosqu ito</w>\nj eric\nim mac\ndimen sions</w>\nâ ¤\ndi ssi\nsponge bob</w>\ndami en</w>\nsteven son</w>\njo anne</w>\ndel ish</w>\nyi kes</w>\nthan x</w>\nsurve ys</w>\npostpon ed</w>\nalco holic</w>\nal ised</w>\nðŁĻı ðŁı»\ndo ch</w>\nsen tim\nmered ith</w>\ncom pares</w>\nb ago</w>\nhappy days</w>\nmo ss\nãħ ĭ</w>\nne c\ngn ment</w>\nfrustr ated</w>\ncomb in\nri v\nec lec\ncol lo\ncompli ment</w>\nactor slife</w>\nct to</w>\nnic ar\nop hon\napar the\nman t\nja de\ntrol ley</w>\noptimi zation</w>\neye on</w>\neco logical</w>\nqui st</w>\nep he\nà¥ ĩ</w>\ncin co</w>\nappo ints</w>\nold school</w>\nc pr</w>\nbehavi oral</w>\nmin aj</w>\n:- (</w>\ntag ging</w>\nev al\njo aqu\nðŁĺ «\nha k\nde me\njama ican</w>\nso s\nhy att</w>\nhand book</w>\nlibr arian</w>\nhanni bal</w>\npump ing</w>\nch om\nf man</w>\nga i</w>\nhu ll\nrespon ders</w>\ngreen ville</w>\nn us\nvau gh\nðŁİī ðŁİī\nta xi\ngold berg</w>\nman tra</w>\nte ase</w>\nforbi dden</w>\nmetho dist</w>\nati vity</w>\n* ***</w>\nec t</w>\nmc gr\nĦ ëĭ\nse b</w>\namid st</w>\ndisapp ear</w>\nthy ro\nphili ps</w>\ner ina</w>\nv icious</w>\nstream er</w>\nmillion aire</w>\nma p\nstr ick\nhack athon</w>\ngh a</w>\ned ic\nmi ka</w>\npe ck\nill i</w>\nanto ine</w>\nar ca\nop tic\nma ure\nðŁĩ¦ ðŁĩº</w>\ncla shes</w>\nman ly</w>\nâĺ ģ\nal var\nand res</w>\nme i</w>\nel m\nww ww</w>\nal tered</w>\nl te</w>\nê¹ Ģ\nmo jo</w>\nfor rest</w>\nthal ai\nnon t</w>\nspee ches</w>\nacknow ledge</w>\nign ite</w>\nx factor</w>\nðŁ¥ Ĥ</w>\nmead ow\ndisru pt</w>\ndebu ted</w>\nscrim mage</w>\npharmaceu tical</w>\nfi dd\nfound ations</w>\nphilosop her</w>\net al</w>\npubli shers</w>\nbo ys\nc ke\nru gged</w>\nopti mism</w>\nre be\nphil harmon\nnar cis\nral lies</w>\nlu is\ngo blue</w>\nfol ded</w>\nun acceptable</w>\noptim al</w>\nli sa\npol aro\n+ .</w>\nen za</w>\nâĿ £ï¸ı</w>\nmon opoly</w>\ngrace ful</w>\ndair y\ndu a</w>\ndiffic ulty</w>\njudge ment</w>\no si\nmer sey\nflu x</w>\nnew found\nter ns</w>\ndimen sional</w>\nin vic\nal ba</w>\nam it</w>\nabudha bi</w>\nalger ia</w>\nautom obile</w>\nthe ad</w>\nlo tion</w>\nacceler ator</w>\nvac ant</w>\niti on\nlu f\nal ic\npl l</w>\nbla zing</w>\nba z</w>\nsen e\nðŁĳ ¼\nvilla ins</w>\ndirec tory</w>\neis en\nto ck</w>\nbroch ure</w>\nri pp\nhb d\nzayn malik</w>\nnic he</w>\nlo lol</w>\ncertific ates</w>\nmor se</w>\nfac up</w>\nx ham</w>\nun wanted</w>\nim ports</w>\ncarne gie</w>\nfan sign</w>\nmo u</w>\nr alph\ndestroy er</w>\nsw ing\ntrek king</w>\ncili ation</w>\npit bull</w>\ng aps</w>\nho well</w>\ndefin itive</w>\nmc le\nf ps</w>\net z</w>\nbol ly\nlyn n\ngan o</w>\nat ure\nfur suit\nco il</w>\nna v</w>\nbut ts</w>\ntro jans</w>\neu re\nen ko</w>\nsch umer</w>\nhorri fic</w>\ninstall ment</w>\nbr b</w>\nsubur bs</w>\na bel</w>\nvi r</w>\nde sh\ncun ningham</w>\nðŁĲ »</w>\nspan n</w>\nsch we\nke mp</w>\ntr u</w>\nste alth</w>\nqu es\nle w</w>\ndeli ghts</w>\nko ch</w>\nhu mili\ncr iti\nil t</w>\nsp ells</w>\nmi ley\ncar ic\nðŁį ´</w>\nlc fc</w>\nsubstitu te</w>\noun g</w>\n? !!</w>\naf fir\npredic table</w>\nclass of</w>\ner r</w>\ncy press</w>\nchand ra</w>\nage ing</w>\n__ __</w>\nther land</w>\ndon caster</w>\nel in\nyo shi</w>\nsail ors</w>\nhar ris\njo anna</w>\nniger ians</w>\nh ers</w>\npla gue</w>\npro cra\nk no</w>\ncan ton</w>\nbusine s\nun h\npra kash</w>\nc in</w>\nbow en</w>\nco ating</w>\nm als</w>\nbe gging</w>\nsmith son\nponti ac</w>\nsp ies</w>\ndam ian</w>\npl ine</w>\nund ant</w>\nal ta</w>\none ss</w>\nshame less</w>\nda q</w>\nbb m</w>\nwal es\nstam pede</w>\nser um</w>\nÙ Ĩ</w>\ncataly st</w>\nx n</w>\nab sc\nfree zer</w>\nch un</w>\nari os</w>\nmc cre\nfore head</w>\nhe ars</w>\ndamas cus</w>\ntac oma</w>\nardu ino</w>\nencoun ters</w>\nstan ton</w>\nlg b\nab as\n\" ..</w>\nke te\ndrac ula</w>\nele m</w>\ng ne</w>\nzepp elin</w>\nla brador</w>\npul p</w>\nop tional</w>\nor n\nrussi ans</w>\nsan itation</w>\nhil ary</w>\netsym ntt</w>\npen alties</w>\nau st</w>\nig ans</w>\nolympi an</w>\nmedic aid</w>\nvers ace</w>\nva pe\nre stra\npe ep\nsexi est</w>\nst alls</w>\ndi le\nthe a</w>\npunjab i</w>\npupp y\ntuesday motivation</w>\nðŁĵ ļ\nthe flash</w>\nroc ket\nmo dest</w>\nchihu ahu\non na\nk sa</w>\nhur dles</w>\nca ve\nfail ures</w>\nsp lit\nbo ho</w>\ngur l</w>\ndisappo int</w>\nho ward\nnug get</w>\nfran z</w>\nstal ert</w>\nkaz akh\nfor getting</w>\nsch ri\nag ate</w>\nam at</w>\neve rett</w>\ndu et</w>\nveter inary</w>\njuli an\nch ills</w>\nbra ve\nghost busters</w>\nlan do\ngre ets</w>\nprofit able</w>\nd Ã©\nti r\nze e\nom en</w>\npd x\ngray son</w>\nhar i\nfix es</w>\nstab bing</w>\nswim mer</w>\nsymb ols</w>\ncompli ments</w>\npo se\nfunc tioning</w>\nth nx</w>\ngi r</w>\ncorpor ations</w>\nbar low</w>\nlo e</w>\noff season</w>\ndistin ctive</w>\nmarvel ous</w>\nnik on\nenri que</w>\nky u</w>\nja ws</w>\namo to</w>\nlom bar\ntravel blogger</w>\nfa h\nouri sm</w>\ntri stan</w>\nso e</w>\nce ase</w>\nðŁı ħ</w>\nz ac\nmck enzie</w>\ntaxpay ers</w>\nswim suit</w>\nbl o</w>\nles ley</w>\nkan sas\nw ks</w>\nki el</w>\nprovo king</w>\nmy les</w>\nstr ing\nkangar oo</w>\ngalac tic</w>\nfif th\ns ke</w>\nwe ir</w>\nll is</w>\nmat ory</w>\nðŁĩ ¿\nun ci\nre productive</w>\nroo ting</w>\nti des</w>\ngad get</w>\n.... ......</w>\nalex ander\nbow ler</w>\nscre w\napo log\neri ka</w>\nwal ters</w>\nshet ty</w>\nlan e\nban ter</w>\nas ant</w>\nme so\nv ain</w>\n\" \"\"</w>\nus i</w>\nfer din\naccomp lish</w>\nman sfield</w>\nbom bar\ncollabor ating</w>\ncla p</w>\nit ure</w>\ns da</w>\nsmo ky</w>\nna k</w>\nim person\ncar la</w>\ncom ra\nbur gl\nlo co</w>\nti es\nin hi\ntrac ey</w>\nse is\ndiss er\nrr rr\ndra y\nprote ct\ncor ona</w>\nhun ger\nck en\nc eli\ntrou bled</w>\npredat ors</w>\nfic tional</w>\nshav ed</w>\nriche st</w>\nmetab oli\nful ham</w>\ngro oming</w>\nmono chrome</w>\nwa sting</w>\nas co\nast e</w>\nti sta</w>\nremedi es</w>\nung soo</w>\nsouth end</w>\nperman ently</w>\nbu mble\nprocra stin\nident ical</w>\npractic ally</w>\nma scul\nsu ke</w>\nassu red</w>\nval erie</w>\ndevi ant\ngrizz lies</w>\nthi er</w>\npur a</w>\nne pal\nnot ts</w>\nbil ateral</w>\nspo il</w>\ncar mel</w>\ncine matic</w>\nph l</w>\nni fty</w>\nma o</w>\nhypo cri\nla ser\npan try</w>\nmathemat ical</w>\nel isa\ncoordin ation</w>\nbel mont</w>\na it\nradi ant</w>\nbo iler</w>\nman g\nf ag\ncr c</w>\nh ams</w>\nbr in\nâ¬ĩ ï¸ı\nfamil ia</w>\nâĿ £</w>\nsab er</w>\nru pert</w>\ngg an</w>\nrit z</w>\nmic h\nsal ford</w>\nle vi\ngra l</w>\nðŁĴ ¤</w>\nn ino</w>\nce d\nbusiness man</w>\nul tr\nsim ply\ncompre ssion</w>\npa ins</w>\nhal t</w>\në°©íĥ Ħ\nlandsc aping</w>\nn f</w>\ncroo ked</w>\ner d</w>\nitt in</w>\nddle ston</w>\nsur passed</w>\nino a</w>\nda g</w>\nbl en\nexten ding</w>\nat ing\nal gae</w>\nball er</w>\nu mar</w>\nsnoo ker</w>\ncol lu\nflo wn</w>\nthu b</w>\nridic ulously</w>\nki sh\nop le</w>\ndi re</w>\nas ser\nari sto\nsc iss\nh ating</w>\ntrou ble\nsyl via</w>\nsuc cul\nplo ts</w>\nsincere ly</w>\nal er\nlaure ate</w>\nbr ack\natt n</w>\nrif les</w>\nme to\ncollec tible</w>\ncu omo</w>\nconte stant</w>\nconsist ency</w>\nant z</w>\nrang es</w>\nabig ail</w>\nde b</w>\nmini ster\ngrow ers</w>\nan oo\nhoo ver</w>\ndream er</w>\nnu cle\nresear ch\nmi y\nsha hid\nma v\nd honi</w>\ncin i</w>\ndo j</w>\nhin dus</w>\npart ying</w>\ndal i</w>\nalon so</w>\ninform al</w>\nclark son</w>\nit ton</w>\nki an</w>\ncit yo\nmor i\nla sted</w>\nas pen</w>\nlibr ary\nsusp ici\nqu at\nden ial</w>\nfol der</w>\nch ori\nswee ping</w>\neni x</w>\nðŁį Ĥ</w>\nØ Ń\nnas car\nhandmade hour</w>\nmou l\nheat wave</w>\nem er</w>\nexam ine</w>\nib n</w>\ngr ind\npo v</w>\ntion ist</w>\nm bo\nshe ila</w>\nintegr ate</w>\nom es</w>\ntake away</w>\ncer v\ncon nie</w>\ntic ket\nce led</w>\nbi en</w>\nvisu ally</w>\nmadagas car</w>\nsor ry\ngu i</w>\npark run</w>\ntra its</w>\nla be\npois oning</w>\nà¥ Ģ</w>\nvi able</w>\nbohemi an</w>\ndenti stry</w>\nbad os</w>\nspr outs</w>\nmask ed</w>\nte ddy\nðŁĺ ·</w>\nsa f</w>\nsa as</w>\nji ang</w>\nti ght\nspe aker\nwithdra wal</w>\nbc n</w>\nas signed</w>\nclass rooms</w>\nfle ming</w>\nðŁĴ «\nsuper girl</w>\ntot als</w>\ntable top</w>\ne books</w>\nhorizon tal</w>\ncra z\nflu sh</w>\nj ard\nc dc</w>\ner son\nãħ ł</w>\ngreen wood</w>\nni h</w>\nco x\nad a\nlit re</w>\ngo ing\nv icky</w>\ncur ved</w>\nlou ie</w>\ngra ins</w>\nhy e</w>\nlon ge\nreme dy</w>\ntra inee</w>\nsan jay</w>\nsuper stars</w>\nma ser\nman u</w>\ns age\nwh l</w>\nðŁĺĤ ðŁĺŃ</w>\nðŁĳį ðŁı»\nm sd\nen z\nrab hu</w>\nj oo\ngh u\nac er</w>\ne po\nresurrec tion</w>\njustice for\nbl ended</w>\nmo da</w>\navalan che</w>\nfrance sco</w>\nre spective</w>\ng s\nye ast</w>\nwel ch</w>\ndevo tion</w>\nge tin\nathe ism</w>\nam ic\ncarol yn</w>\nlo c</w>\nld nont</w>\nave c</w>\nus da</w>\nle gged</w>\nbra very</w>\nb lower</w>\ncow boy\nhe h</w>\nsti ble</w>\nbuff al\nchann el\nrun chat</w>\nâĺķ ï¸ı\nide ology</w>\nbest seller</w>\ny oo\npe anu\nbon ne</w>\nfel ic\nedi son</w>\nfr actu\nnaren dra</w>\npp ets</w>\nseym our</w>\nri viera</w>\nhe ctor</w>\nnecess arily</w>\nbi anca</w>\nsoci eties</w>\nthe best</w>\nw g</w>\nsent ences</w>\nwin k</w>\nvacc ines</w>\npal ooza</w>\njam ming</w>\nas f</w>\nmp us</w>\nagre ements</w>\nec k\nba c</w>\nhon ore\ncom pul\nwild cat</w>\nim posed</w>\nyo ga\nhud son\ncan celed</w>\nl ich</w>\nfu zzy</w>\nes que</w>\nch uk\nw vu</w>\nse k</w>\nfli pping</w>\nr hon\nwi shed</w>\nwh a</w>\ncap ability</w>\nlen ovo</w>\nìĨĮëħ Ħëĭ\nvi vo</w>\ntv d</w>\nnor a</w>\nsil k\npas adena</w>\nyo semite</w>\nvalu ation</w>\nclo cks</w>\nu ber\nmr c</w>\ndar kest</w>\nau bre\nss o\nbell y\nwrest lers</w>\nkill in</w>\nlou der</w>\nbuck ley</w>\nge el\nad on\nun s</w>\nappe aling</w>\nðŁĳ ¯\nsemit ism</w>\nlist ens</w>\nfit z</w>\nãĥ³ ãĥ\nny lon</w>\nar ty</w>\nseem ingly</w>\nhal a</w>\nsu ited</w>\net y\nshe ds</w>\nmu ffins</w>\nap ric\num ents</w>\nu ta</w>\njam mu</w>\nchelse afc</w>\nstar z</w>\nyo ko\nroo t\nclean sing</w>\ndi ar\npione ering</w>\nihear tradio</w>\ndig iti\nfin dyour\ncan o</w>\nðŁĴ İ\nz ol\nspac ecraft</w>\nsix ers</w>\nmoi sturi\nb ile</w>\nti sts</w>\nhor ton</w>\nrang ing</w>\ncolum bi\nmete oro\nsenti ment</w>\nep l</w>\nfoo th\ntext book</w>\ndrain age</w>\nr ly</w>\nsc ue</w>\nimran khan\nðŁĴ ¸</w>\nmargar ita</w>\ned dy</w>\npredic ts</w>\ngamer gate</w>\nadvis e</w>\ngrowth hacking</w>\nlove you</w>\nug and\nv f</w>\nbeng hazi</w>\ns later</w>\nne wor\nch el</w>\nindependence day</w>\np np</w>\ncul len</w>\nhoo dies</w>\nnum bered</w>\nbrit t</w>\nt sa</w>\nkl tu</w>\ns ages</w>\nmom o</w>\nonep lus</w>\ncol l\ngu ts</w>\nw ta</w>\nmesm eri\nenh ancing</w>\nchiro prac\nj is\nteen agers</w>\nm one</w>\nconstell ation</w>\nsweep stakes</w>\ne ze\nslovak ia</w>\nla ye\npear ce</w>\nwa ver\npo gba</w>\nk ron\nsur geons</w>\nmar x</w>\nti d\ngg a</w>\ndesc end\np ours</w>\nupri sing</w>\nwal la\nsab bath</w>\nbachel ore\nmack in\nk am</w>\npeter borough</w>\nhor a</w>\nðŁĮŁ ðŁĮŁ\nthink big\nr j\nhy drau\nsp al\nunivers it\nðŁı ī</w>\nmail online</w>\nleague of\nten ants</w>\nw ally</w>\nlan ce\nheav ens</w>\ndd r</w>\nbol ts</w>\nam ir\ni phone\nci gar\nen du\nre i</w>\nel abor\nr inging</w>\njohn son\ncharacteri stics</w>\nsal oon</w>\nalgori thms</w>\ntal kin</w>\nm tn\ndi ve\nregion als</w>\nff ice</w>\nhat i</w>\ndeviant art</w>\nso tto</w>\nshir o</w>\nl ama</w>\nk we\nf aded</w>\npor ting</w>\ntu mmy</w>\nest ates</w>\nbuen os</w>\nðŁ¦ ģ</w>\nbeli ever</w>\npen etr\ndar n</w>\nsp ite</w>\ncan opy</w>\nfashi oni\nt illa</w>\npet als</w>\neli jah</w>\nbra wl</w>\nmarty r</w>\në°©íĥĦ ìĨĮëħĦëĭ\nmid town</w>\neric h</w>\nd apper</w>\nsm town</w>\nme gam\nww w\nle le</w>\non s\ncat fish</w>\nfir th</w>\nfossil friday</w>\nball park</w>\nth aw\npot ent</w>\nilli e</w>\ncre ep</w>\ncar p</w>\nso ap\ngun dam</w>\ninfe c\nyy yyy</w>\nà¤ ¨</w>\nz ag\nrit t</w>\ncalcu lator</w>\nbo ca</w>\nok o</w>\nto ad</w>\nthreat en</w>\nrefin ed</w>\nolym pic\naccompli shment</w>\nbacter ial</w>\na ji\ntat um</w>\nfeli z\nshe ed</w>\nj at\nth ic\njam al</w>\nðĿ ĺ\nlin a</w>\nðŁĲ ¯</w>\njo king</w>\nyot po</w>\npin ch</w>\nak ron</w>\nher b\nmotiv ation\nli a\nho stage</w>\ncre ek\ngam ble</w>\nruss ell\npatt i</w>\nfo tos</w>\nc pc</w>\nbro ken\nback the\ncla ys</w>\nu mm\nstock ton</w>\nmat ernal</w>\nÃ¼ r\nla kel\ncent ury\nbe k</w>\ninfe cted</w>\nà¸ ¡\nsmack down</w>\nman ned</w>\nta hoe</w>\nsm es</w>\nbas a</w>\nsu la</w>\naugu sta</w>\n. *</w>\nrohing ya</w>\ngre ed</w>\ncounsel or</w>\nsilhou ette</w>\ngra vit\ncla use</w>\n' -</w>\nbo bc\nocca sions</w>\nnow adays</w>\ndic tat\nbe ard\nn ally</w>\nbrigh test</w>\nkab ul</w>\ninc india</w>\ndhan ush\narchae ological</w>\nche ape\nmizz ou</w>\nd hi</w>\nov ski</w>\nbax ter</w>\nasse mble</w>\nÃ ¢\ngi gi</w>\nac am\nwis ely</w>\nhaz ard\nnorth ampton</w>\nâľĪ ï¸ı\nme th</w>\nbla sting</w>\nre unite</w>\nmu lus</w>\nali zes</w>\nt read\nmil a</w>\ned ward\nko va</w>\npe sto</w>\nðŁĳ ¶\nvit z</w>\nhydrau lic</w>\nrefurbi shed</w>\nmo tel</w>\nisab ella</w>\nhom me</w>\nsever ance</w>\nuph ol\nmis erable</w>\nf ari\nlat ter</w>\nef er</w>\ncrack ers</w>\nes l</w>\nac io</w>\nyy j</w>\nin an</w>\nec b</w>\nz ind\npan as\ntru cking</w>\nre ed\nsh aker</w>\nburge ss</w>\nem pire\nag nes</w>\nn ington</w>\nart works</w>\nfr s</w>\nti le\nbi ome\neu n</w>\nch ong</w>\nameric ana</w>\ngod father</w>\ngo blin</w>\ni shi\n! ).</w>\ntemp ted</w>\ngen omics</w>\nmand ate</w>\nck y\nðŁĴĻ ðŁĴĽ</w>\nsom ali</w>\nbr andy</w>\nin ven\nspoke sperson</w>\npc b</w>\nyu an</w>\nh g</w>\nfa z\nstarwar s\nro wan</w>\nblue grass</w>\ndon g\nd day</w>\ntrin idad</w>\ner ton</w>\nban ning</w>\nre tention</w>\ncu red</w>\ntober fest</w>\nre set</w>\nwe is\ndeta ched</w>\nbehindthe scenes</w>\nimmun ity</w>\nph a</w>\nbra y\nðŁĳ ½</w>\nran cho</w>\nram say</w>\nest onia</w>\nnd tv</w>\n] .</w>\ncab aret</w>\ntar o</w>\nd v</w>\nshow cases</w>\nplu m\nðŁĳ ¸\nson oma</w>\npre pa\nmemor ab\ne stu\ndrive way</w>\nu les</w>\nmagn us</w>\nx r</w>\nnn n</w>\nmuch as</w>\nen ge\nstre amed</w>\nfore stry</w>\naudio book</w>\ntro y\nreck less</w>\nkil om\nru ler</w>\nra k</w>\nproce ssion</w>\ni ons</w>\npo ole</w>\nnoc tur\nwh s</w>\nfarm house</w>\nper a</w>\npar me\nhypocri sy</w>\ns ics</w>\nv ant\ncas k</w>\nholi stic</w>\nau st\nÐ ¿\nin do\nðŁĳ© âĢį\ndi so\ndisp atch</w>\nol sen</w>\nmake it\nen nis</w>\ncent re\nar range</w>\nðŁĮ ¼</w>\nsal ted</w>\nea siest</w>\nf ate\nreg atta</w>\nmo zz\nac an</w>\nsin i</w>\ng ically</w>\nch ops</w>\nchick en\nwork in</w>\nha gg\ninvol ve</w>\nwee ds</w>\nbook day</w>\nwake up\nky r\nmichel in</w>\nfu ss</w>\nre juven\nvac ancies</w>\nincar cer\nm st</w>\nsc ents</w>\nsovere ign</w>\nkick er</w>\nà §\nbo d</w>\nâĢĶ ></w>\nsa h</w>\nmob il\nshrop shire</w>\noph one</w>\ndress er</w>\nmis suni\nhep burn</w>\ni mo\nfoli age</w>\ndiagno stic</w>\nas san\ncycl ing\nguil t</w>\nc sa</w>\npuertor ico</w>\nwin elover</w>\nwake field</w>\ndo ggy</w>\nk he\npa pp\nco g\nal lot\ncu ck\npoe tic</w>\nmi o</w>\nre vit\nmag ician</w>\nç ¥\nant enna</w>\nwest wood</w>\nmber g</w>\nlux e</w>\noat meal</w>\nØ ¬\nte at\nffe e</w>\nsear ches</w>\nl ly</w>\nplu to</w>\nel on\nlet tering</w>\ninno cence</w>\nfa i</w>\nann on</w>\ntelang ana</w>\nma it\nneu ral</w>\ncan ni\nar oma</w>\na stor\nfe x</w>\nco cac\nmon etary</w>\nf ent\nun sure</w>\n' @</w>\nindi rec\nteh ran</w>\nisol ation</w>\nli bs</w>\nmake up\nmerce des\nff y\nhe tero\nde o\nsco m</w>\ncur sed</w>\nveteran sday</w>\nfranken stein</w>\nshre ws\nde co\nge ese</w>\nlefto ver</w>\nha did</w>\nvari able</w>\nacade mics</w>\ncarol in\nunder going</w>\nvari ation</w>\nna h\nssi er</w>\ngamer sunite</w>\npur suing</w>\nemer ged</w>\nll ers</w>\ncontrol ling</w>\nro aring</w>\nmete or\nvol t</w>\ndaw gs</w>\nbe aver\nis life</w>\nbathro oms</w>\naci onal</w>\npre vent\nlake district</w>\nin als</w>\ny ani</w>\ngra bbing</w>\nsac ks</w>\nle z</w>\nsw ay\nk ool</w>\ntime s\nklo pp</w>\nla de</w>\ncon cord</w>\nresul ted</w>\nrevi ve</w>\nrecon ciliation</w>\nol and</w>\naz z</w>\ngir o</w>\nmand arin</w>\nde en\nnutriti onal</w>\nis coming</w>\nvan i</w>\naw www</w>\nder ived</w>\nlove your\nstop the\nshou ting</w>\nnov ak</w>\nðŁĻĮ ðŁı¾</w>\nlo af\ndispla ying</w>\nsunday with\nma guire</w>\nch eri\nðŁı Ł</w>\nre match</w>\nqu ic\nÚ ©\ny in\nðŁĺ ¹\nili ve</w>\nz ip\nour ke</w>\ndown loads</w>\nsw at</w>\nmissi ss\ncare rs</w>\nt ment</w>\nproper ty\nhahahaha haha</w>\ngi bbs</w>\nsur rey\nar ise</w>\ntic ism</w>\nsti a</w>\nir ling</w>\nfro g\nco se</w>\nbas sist</w>\nfore ig\nlea u</w>\npil lows</w>\nhol la</w>\neli e</w>\ndisclo sure</w>\npeanu ts</w>\ninte ch</w>\nww c</w>\nplun ge</w>\ntrium ph\ncor i\nsli ppers</w>\nðŁĻı ðŁĻı</w>\nneutr ality</w>\nma re\nhair y</w>\ngang ster</w>\nhu mming\ncust ard</w>\nmer lin</w>\nale a</w>\ns by\ndam p</w>\nmo han\nver bal</w>\nj st</w>\ngu tted</w>\nb jor\nun finished</w>\nðŁĩ¯ðŁĩ µ</w>\nun happy</w>\nâļ« ï¸ı\nby pass</w>\nat su</w>\nfis cher</w>\nsa v</w>\nafric ans</w>\nre use</w>\nmid way</w>\ndemo lished</w>\nger rard</w>\nher cules</w>\nÄ Ł\nmedic ines</w>\ncl icking</w>\nsur round\njo ong</w>\nwav ing</w>\ntri bes</w>\nwet lands</w>\noffici el</w>\nargu ing</w>\nl le\ndo va</w>\nsu zy</w>\nclub house</w>\nne gro</w>\nob tain</w>\nga o</w>\ngl ance</w>\nassi st\nch os</w>\nãĤ ¢\nâĺ ķ</w>\nadri d</w>\noccur s</w>\nst ans</w>\npar don</w>\nlivel i\nemplo yed</w>\nre visit</w>\nff xiv</w>\nbb le\nne aring</w>\nmin er</w>\nðŁĺ ¹</w>\ngiov anni</w>\nup to</w>\nmar vell\nmar se\nto wels</w>\ncb n</w>\nengine ered</w>\ny elling</w>\nspart an\nsi ans</w>\nðŁĻĮ ðŁı¼\nse v\ncoyo te</w>\nsta di\nt cm</w>\napp en</w>\nshenan igans</w>\nopen access</w>\nso aked</w>\nma squ\nle vine</w>\nstro kes</w>\nl k</w>\naparthe id</w>\nhipho p\nchar don\nmay may\nha asan</w>\nstri pped</w>\nfr o</w>\nscri ption</w>\nf ton</w>\nh f\npri sons</w>\nmarsh al</w>\nķ ãĤ\nan cho\ncom promise</w>\nclassi fication</w>\nbuzz feed</w>\nbblo ggers</w>\ndeser ving</w>\n) /</w>\ns way</w>\nob o</w>\ncamp ers</w>\npoder nfamily</w>\np oured</w>\nbri e</w>\nsquir rels</w>\nse ize</w>\n: #</w>\nle k\nti mb\nst acy</w>\nnas daq</w>\nrepe atedly</w>\nbr at</w>\nmi ghty\ncompetit or</w>\nmah one</w>\nde si</w>\no ke\nbm w\nshi e</w>\nf cb\ncheape st</w>\nminim alist</w>\npar amount</w>\nn ate\nhar as\ninsan ity</w>\nlat eral</w>\nment ality</w>\nmo zam\nta pped</w>\nyad av</w>\nu sp\nb way</w>\nthe od\nbil t</w>\nra ids</w>\nem press</w>\nadap ted</w>\npat ron\nnut shell</w>\nag ra\nbe aded</w>\nsundaywith marsha</w>\nvi king\nproce ed\nmain tained</w>\nthinkbig sundaywithmarsha</w>\nsn es</w>\nmus ica</w>\nto wer\nch ab\nbo k\nsm t</w>\ninsul t</w>\nharve sting</w>\nwindo w\nru ther\nbe ige</w>\ndec al</w>\nindic ate</w>\nma iling</w>\nri ft</w>\npo le\nander son\nch oral</w>\nsp ride</w>\nl ili\nev elyn</w>\nimrankhan pti</w>\n.... \"</w>\nke red</w>\nun dp</w>\nwater falls</w>\nse ars</w>\nle mans</w>\nworld series</w>\nri el</w>\nani e\napp ar\nscore rs</w>\nlam p\na than</w>\nphys icians</w>\nqu inoa</w>\nrefu sing</w>\nvu itton</w>\nunle ash</w>\ns la</w>\npat i</w>\nshou ts</w>\ninten tions</w>\nfo amed</w>\neurope an\nneighbor hoods</w>\nme er\nman son</w>\ndu h</w>\nbr at\ncon es</w>\nbow l\nkazakh stan</w>\nà¤ ¿</w>\nin appropriate</w>\ndel hi\nketch up</w>\nful ton</w>\ns ys</w>\nconsul t</w>\ngar field</w>\nto go</w>\nf ml</w>\nf led</w>\nb ds</w>\nfacilit ate</w>\nree bok</w>\nselfi e\nelev ate</w>\nactiv ate</w>\nbi ble\nca wx</w>\nb ys</w>\ncam ille</w>\nsy ou\nsk ool</w>\nher t\nw bc</w>\nple dges</w>\nrecor der</w>\npo sh</w>\nac re\nso aking</w>\nmat il\nv sco\nshoot ings</w>\npla r</w>\ne con\nðŁĻĮ ðŁı»\nrashi d</w>\nu bi\nðŁ¤ ¤</w>\nsw inging</w>\nwi pe</w>\nrap tor</w>\nm su\nmusic video</w>\ndur ham\nat tic</w>\napar ty</w>\nfe tus</w>\nactiv ation</w>\naa z</w>\nmotiv ate</w>\nðŁĴķ ðŁĴķðŁĴķ</w>\nj al</w>\nà¤ ®</w>\nag on\nsche er</w>\nstal ker</w>\nfo ster\naz zo</w>\ntele gram</w>\nvi gor\ns laugh\nscreen shots</w>\nentrepre neu\nkri stin</w>\ninten tion</w>\nch illi\nfr action</w>\ndon a</w>\nge a</w>\ntc u</w>\ns ite\nla k</w>\nem il\nd nt</w>\nbor o\nwil kinson</w>\nre cu\nato day</w>\nt anya</w>\nbl anco</w>\ncd n</w>\nbrilli antly</w>\ng cc</w>\nac c\nevacu ated</w>\nther ine\nden ny</w>\ncait lin</w>\nshe pard</w>\npou ch</w>\nhand held</w>\nsou theastern</w>\nha a</w>\nÃ ´\nre solutions</w>\nled ger</w>\nsr in\nr ar\nshat tered</w>\nchim ney</w>\nim with\nmete or</w>\nhand led</w>\nra ke\ntown send</w>\nen han\nshi py\nduc t</w>\ntw x</w>\ninflam matory</w>\nwar hammer</w>\ntheat rical</w>\ngro s\nsk ar</w>\nsco tty</w>\nni el</w>\ntit o</w>\ntin i</w>\nconne ction</w>\n_ .</w>\ngoldeng lobes</w>\nsha q</w>\nðŁı ³ï¸ı\nhall way</w>\nfron ts</w>\neffec tiveness</w>\ngla ston\nd hs</w>\nex pi\nto h</w>\nc pl</w>\nsc s</w>\nre o</w>\nha g\nresemb lance</w>\nhor an</w>\nabu sive</w>\nqu er</w>\nvirtu e</w>\ncho lester\na q</w>\nshan e\nm ce\ncarri ers</w>\ndi stress</w>\nre wind</w>\nÂ ¡\nvoo doo</w>\nint act</w>\nann o</w>\nðŁĺ ¤\npi led</w>\nadi a</w>\nãĥ ³</w>\nen ow</w>\ndi gs</w>\nlight ly</w>\ngoo fy</w>\nturb ine</w>\ngovernor s</w>\ncon te</w>\nre open</w>\npa h</w>\ni ve\ncra fting</w>\nswee ps</w>\njo di</w>\nan de\nzu cker\nkaw aii</w>\no ko\nv ai\nout line</w>\nkri sti\nts n</w>\ninsp o</w>\nqu int\nfil thy</w>\nlyn ne</w>\nlisten ers</w>\ndepar ting</w>\nor d\nt weed</w>\n, &</w>\nale k\nsel fish</w>\nnor ther\nrecogni zes</w>\ni ps</w>\nbe s\na ed</w>\nw ills</w>\npe at</w>\nsurround ings</w>\nmon uments</w>\nais le</w>\nbe cker</w>\nla v</w>\nquant ity</w>\nv ah</w>\nhelicop ters</w>\ntu cked</w>\nalv arez</w>\nsha pe\no bey</w>\nad diti\nroad side</w>\nm ite</w>\nbl ers</w>\nep age</w>\nj au\nignor ant</w>\nb ins</w>\nlu lu</w>\nx o\nc fo</w>\nee eee</w>\napprentice ship</w>\nshef fiel\nto i</w>\nho k\nfaken ews</w>\ndeplo y</w>\naid an</w>\nhusk ers</w>\nãĢ İ</w>\nwest brook</w>\nmi ster\nconfi gur\ncar r\nfic a</w>\nproceed ings</w>\nha w</w>\nste ak\nmur derer</w>\npay day</w>\na jo</w>\np vc</w>\ndon ates</w>\nbi af\nnom nom</w>\nbe it</w>\nk ali</w>\nx rp</w>\nahmed abad</w>\nse mic\nche y\nx tra</w>\nan twer\nhead lining</w>\nsqu ares</w>\nroun ded</w>\nflu ore\nbol d\ndisa sters</w>\nam oo</w>\ngener ic</w>\ncran es</w>\nbrief ly</w>\ngi g\nauster ity</w>\nanticip ation</w>\nfor ti\ntreas urer</w>\ncann y</w>\nce cil\ndete cted</w>\ncheck list</w>\nà¸ §\npam ela</w>\nbar bados</w>\nan field</w>\nhear ty</w>\ntx lege</w>\nperen ni\narro g\ning ram</w>\nâĹ ı</w>\nty ne\nspo on\nr ation\nam ba</w>\nm be</w>\ncam el\nh hs</w>\nyork shire\nreflec tive</w>\nfre aks</w>\nto k</w>\nju do</w>\npartic les</w>\ndu bs</w>\nban jo</w>\naccred itation</w>\nprover bs</w>\nover dose</w>\ninte gral</w>\ngu ang\nmc s</w>\nsuper car</w>\naf b</w>\nal vin</w>\nail s</w>\nx tre\nst aging</w>\ntw ent\nrabb its</w>\nmar o\ninste m</w>\ndol l\ncr ay</w>\nsant ana</w>\nble ach</w>\nmini ons</w>\nche ap\nman t</w>\ndi vers</w>\ncatal onia</w>\nlo is</w>\nmat ri\ncou gar</w>\nkay ak</w>\ne gre\np so\na ia</w>\nå ®\nchar lton</w>\ntr acked</w>\nsc ari\npe tt\nf wd</w>\nx in\ngra vel</w>\nbr ic\nbigg boss</w>\nar den</w>\nhu gging</w>\npal ms</w>\nst v\nli mb\nthe movie</w>\nhandic ap</w>\nri me</w>\nz ai</w>\nstu b\nindi a\nlithu ania</w>\nrhy th\np ita</w>\nmaced onia</w>\nhigh ered</w>\nbrid get</w>\nschwar z\nske let\nhi kes</w>\nant arctic</w>\nc ps</w>\nmash up</w>\nÐ °</w>\nn ell\nchand ra\nhe ir\nan us</w>\nsher idan</w>\nmi mi</w>\nmuse u\nbec ca</w>\nan ir\nbar rie</w>\ndioce se</w>\ncompar able</w>\nðŁı³ï¸ı âĢį\nyuk on</w>\nme p</w>\nhor mon\nmer ic</w>\nal f</w>\ncon quered</w>\nchrist church</w>\nðŁĴĻ ðŁĴĻ</w>\nhazard ous</w>\npoo h</w>\ncont ing\nretro spective</w>\npar ame\nna ir</w>\ncon sor\nho tra</w>\nastoni shing</w>\ncater pillar</w>\nu man</w>\nti sm</w>\nt vs</w>\nserv ic\ncroy don</w>\nmor ales</w>\nc g\ncu m</w>\nte ur</w>\nscan ada</w>\ns all\nmagno lia</w>\nel ise</w>\nth our</w>\nà® ¿</w>\nag omez</w>\nphel ps</w>\në°©íĥĦìĨĮëħĦëĭ ¨</w>\nwh os</w>\nweav ing</w>\nsi sd</w>\npro poses</w>\ncro ws</w>\npre sale</w>\neconom ies</w>\nbernar do\nsha hid</w>\nair show</w>\nmc cann</w>\nhor ticul\nnr l\ndu el</w>\nmongo lia</w>\ntou lou\nrequi rement</w>\nstruc tured</w>\ned i</w>\no lives</w>\nhe a\ncu ter</w>\nÐ º\nenthusi ast</w>\nharri et</w>\ndomin ion</w>\nsub mer\nðŁį ĥ\nsa ab</w>\nnes burg</w>\nmo ff\ndef ended</w>\nbur t</w>\nrewar ded</w>\ngold man</w>\nop tics</w>\nkhali d</w>\nhouse holds</w>\nbuc kets</w>\nce cil</w>\nche ss\nsubstan tial</w>\nef l</w>\noper ation\nevalu ate</w>\nst n</w>\nrece ssion</w>\nl ll</w>\ntom as</w>\ntru ths</w>\nak bar</w>\ns words</w>\np act</w>\nembarra ss\nha o</w>\nay urve\nscrip ture</w>\nny cc</w>\nop t</w>\ndi ameter</w>\nsc ented</w>\norgani zers</w>\nre lat\nha e</w>\ndream ers</w>\nde se\nðŁĮ »\nrestric ted</w>\nn ale</w>\nr hp</w>\ndol an</w>\nmun ster</w>\nha ired</w>\nconsult ants</w>\njo ints</w>\nhu mil\nd ill</w>\nrelent less</w>\nt Ã©\naf il\nut ilities</w>\njapan ese\ncondem n</w>\npet ite</w>\ncolli de</w>\nq f</w>\npeach es</w>\ncou rier</w>\nl ore</w>\nâĺİ ï¸ı</w>\nreli ability</w>\nch uk</w>\nðŁĻ ĥ\nstu res</w>\nge ther</w>\nho stel</w>\nbi er\n- _-</w>\nâ ĩ\ne ze</w>\nta ilo\ndi ent</w>\nblu ff</w>\nchu ffed</w>\npil ip\nmon arch\ne em</w>\nbu chan\nb ick\nop au\nku ps</w>\nà¸ ¢\npist ons</w>\nsp ins</w>\nm and</w>\nce st</w>\nbur ne</w>\nv ile</w>\ncher ries</w>\nbec kett</w>\nneed les</w>\npan ch\në Ĥ\nhaha h\ntrou bles</w>\ninsi sts</w>\ndo you\ng mc</w>\nmor tar</w>\ndeleg ate</w>\nin n\ng anda</w>\nsin atra</w>\nà¤ ¤</w>\nspee ding</w>\npu pil</w>\npre mises</w>\nali gnment</w>\npi kach\nas us</w>\nj alan</w>\nØ µ\nlime stone</w>\nfol kl\nparme san</w>\nce il\nmo y\nshawn mendes</w>\nac up</w>\nhu st\not es</w>\nmed ina</w>\nma di</w>\ngta v</w>\ncensor ship</w>\nar g</w>\nswe eney</w>\nsy kes</w>\ncol o</w>\nfoot steps</w>\ncann ed</w>\nadv ance\ngta online</w>\nhealthy living</w>\nðŁį ¾\na ig\np ality</w>\noc s</w>\nhe brew</w>\nim minent</w>\nberk shire</w>\njeremi ah</w>\nout going</w>\nbak er\nentr ata</w>\nma ids</w>\ngro ves</w>\nbo c\na del</w>\nm fw</w>\ncon science</w>\narm ys</w>\nnut ella</w>\nconte stalert</w>\nnovel ist</w>\nla h\nban ker</w>\nmarque z</w>\nðŁı ¡</w>\nto ff</w>\nout age</w>\ngr p</w>\nðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃ</w>\nmusc le\ndu dley</w>\nnvi dia</w>\nmi di</w>\nm uni\ness ays</w>\ndat ac\ncar ter\nà¸ £</w>\nt ans</w>\ni ves</w>\npublic ations</w>\nal er</w>\nok wx</w>\nil u\ncu tt\nhar p</w>\nout law</w>\nluther an</w>\nbr ill\nbo lic</w>\ndo well</w>\ngreen land</w>\nbe sties</w>\npath i</w>\npay ton</w>\ngue st\nhar den</w>\nðŁ¤ ©\nann ed</w>\nevacu ation</w>\npo ised</w>\nmc der\nb han\no i\nenvel ope</w>\nci d</w>\nca vi\nta pas</w>\nbook review</w>\ngrey hound</w>\nâĻ ª\nfe ud</w>\nlun gs</w>\nfor te</w>\nrai der\nff er\noni x</w>\ndep end</w>\nyn wa</w>\nrel ating</w>\nde vs</w>\nðŁĴ Ĳ\nacqui res</w>\nd ha</w>\nj yo\npriv ati\ncan ine</w>\nk b\ncra b\nsar din\nimag ining</w>\nk j\nem por\ndown hill</w>\nne z</w>\nta eyeon</w>\nnick imin\ngb p</w>\nà µ\nw ap\nsec co</w>\nma shed</w>\nðŁĴ¥ ðŁĴ¥\naugu stine</w>\ndiss ol\ndic tator</w>\nâ ĵ\nvi per</w>\ned fringe</w>\nvau x\nhard work</w>\nbook let</w>\nno x</w>\nchi ff\nðŁĴ ¨\nobserv ations</w>\nxbox one</w>\nu sher</w>\nke er\nlu p</w>\ndal las\ncal gary\nma dra\ndi ous</w>\nk bs</w>\nwood ward</w>\nhero ine</w>\nlu mber\nsea world</w>\no ws</w>\nmc ke\nmaver ick</w>\ngu la</w>\ncross roads</w>\nfan g</w>\ns ade</w>\nnik ol\nchee tah</w>\nme c</w>\npp g</w>\ner ick\nðŁİ µ\ntox ic\nbj j</w>\nviol a</w>\nsp ire</w>\nch ino</w>\ntra vis\ninstitu tional</w>\nha as</w>\nlow ry</w>\nw ac\nea e</w>\nhu mid</w>\nmp ton</w>\nru ck\nje w</w>\nc ine</w>\nzim mer\nse f</w>\nbhar at\nfre es\naam ir</w>\nðŁĴ ħ\nz inc</w>\nwan e</w>\nmulti player</w>\nroyal wedding</w>\ne el</w>\npreci pit\nqu ery</w>\nkimber ly</w>\nisa bel</w>\nful fill</w>\nig an</w>\nvau l\npan e</w>\nsc y\ndig it</w>\ngun n</w>\nu tah\ndog day</w>\nfi on\nxia omi</w>\nda c</w>\nel ast\ncha vez</w>\nro blo\ng ine\nten th</w>\nab h\nke to\nhur dle</w>\nna dia</w>\nmemorab ilia</w>\nha bs</w>\nqu an</w>\nh w\nhv ac</w>\npix ar</w>\nec cle\nkram er</w>\naccu ses</w>\nðŁĴļ ðŁĴļ\nper se\nmean time</w>\nwa hl\natle tico</w>\nâĢ¢âĢ¢ âĢ¢âĢ¢\nott oman</w>\nno vo\nk us</w>\nconne cted</w>\ntru sts</w>\nd mv</w>\nspen cer\nrahu lg\ndo ve\nsto kes</w>\nbolog na</w>\nenthusi asts</w>\nÃ ª\nrockstar games</w>\nted cruz</w>\ndu ras</w>\ns acked</w>\nlate x</w>\nimmer sive</w>\ncer t</w>\nlu cin\nprinci pals</w>\nfa res</w>\nsa ils</w>\nfar n\nam ent</w>\nsaf fron</w>\nquent in</w>\ncheck point</w>\nfer ris</w>\nex cur\nðŁĳī ðŁı¼</w>\nbai ley\nse h\nter re</w>\nmad am</w>\ns band</w>\nwan derers</w>\ncumber batch</w>\nyy c\ndigit ally</w>\nblackandwhite photography</w>\nroll in</w>\nmoroc can</w>\nðŁĮ ħ</w>\ndin ner\nd well\nto om\nm ye\nez ra</w>\ncp fc</w>\nwar hol</w>\nme er</w>\njon ah</w>\nno aa</w>\ns gate</w>\nso on\nsecu lar</w>\ng ating</w>\nti o</w>\ndri ver\nsi ssy</w>\nassan ge</w>\nta th\ned mund</w>\nbobc ats</w>\nra ji\npo stage</w>\nstu ds</w>\nm gm</w>\nkat o</w>\nedin burgh\nmeet the\nshir t\nfa a</w>\nmens fashion</w>\nsp reads</w>\nwi m</w>\ncar ts</w>\nphoe be</w>\nj ars</w>\nbot swana</w>\nÙ Ĥ\ned war\nsk ar\nri ve\ngu sty</w>\nc tv</w>\nferdin and</w>\nsu therland</w>\nnickimin aj</w>\nk v\nsi us</w>\nbee ch</w>\nre z\ndesi res</w>\non ial</w>\ncamp o</w>\nquar ry</w>\nlor raine</w>\ngil more</w>\nig gy</w>\nµ ï¸ı</w>\nho pping</w>\navi z</w>\nðŁĮ º\nuni sex</w>\ndedic ate</w>\natt itudes</w>\nste er</w>\njun kie</w>\nrail way\ny b</w>\nwhi sper</w>\nkey an</w>\nk us\nju g</w>\ndi x</w>\na ins</w>\nsum mon\nov ich</w>\nsy ed</w>\nher ald\nma ison</w>\nme ded</w>\nwild flower\nmain land</w>\nri sky</w>\nru kh</w>\nover looked</w>\nki c</w>\ndestro ys</w>\nnam an</w>\nki p\nz ano</w>\nchampion sleague</w>\nban dit</w>\nquin cy</w>\nsmi le\ncal vin\nopen ings</w>\nta pp\nol ulu</w>\nspec tro\naccred ited</w>\nap k</w>\npra ised</w>\nbar nett</w>\npol len</w>\npremi ered</w>\nselen agomez</w>\ntou red</w>\nscreen ings</w>\nuu u</w>\nmis o\nen se</w>\nadam lambert</w>\nguel ph</w>\nhar yana</w>\nhu tto\nle ar</w>\nl tc</w>\npo ached</w>\nbrex it\næ Ŀ\ntt c</w>\npa vement</w>\nmon gers</w>\nro e\nad ers</w>\nling ton\nparticip ant</w>\nca red</w>\nga il</w>\ny ates</w>\nlan tic</w>\ndash board</w>\njo o</w>\nfeli pe</w>\nssi onist</w>\nbu m\ns end\na eri\nthu gs</w>\nluci fer</w>\na he\ndete ctor</w>\nfil ly</w>\ngas oline</w>\nham per</w>\nhump day</w>\nthe ta</w>\nthe band</w>\nfore casts</w>\no hhh</w>\nlo bb\nhol l\ncp u</w>\naz u\nad ar\nhai ley</w>\nbu b\ncar t\nquo ted</w>\nan archy</w>\npan cre\ntwit art</w>\nal den</w>\nst ash</w>\nthe less</w>\nor ni\nbelie bers</w>\nmor mon</w>\npartic le</w>\navi ation\nâ¬ Ĩ\nwebcam toy</w>\nsad dened</w>\ncru is\nham let</w>\nn ct\nroll ins</w>\nmarque e</w>\nsaw yer</w>\nreli ance</w>\na ura</w>\ndi ec\nsoo thing</w>\nsig nings</w>\nak is</w>\nÃ ³</w>\nat kins</w>\naer op\nðŁĮ ¿\ny ab\nsh ari\ncon nol\ndu bbed</w>\nmanufac ture</w>\nconvin cing</w>\nfeelthe bern</w>\nra u\npu lit\non ec\ngem stone</w>\nur ging</w>\nbag u\nga h</w>\naci ds</w>\nfi anc\nzodi ac</w>\nsn oop</w>\nher rera</w>\niniti ated</w>\nven ge\nprofess ors</w>\npro di\nstron ger\ne mission</w>\nbb a</w>\nhal le\nta pp</w>\nhaw an</w>\nwh im\ncompe ted</w>\nmyr tle</w>\nir port</w>\ncold play</w>\nach e\nske p\nm son\nss ic\ncalli graphy</w>\nswim mers</w>\nme y</w>\npp c</w>\nthri ft</w>\npo c</w>\nre places</w>\ncommu ter</w>\nâģ¦ âģ¦@</w>\ngo ers</w>\nlo gue</w>\npara dig\nbas kets</w>\nsensiti vity</w>\njoh an</w>\natl antis</w>\n& &</w>\nsuit case</w>\nanxi ous</w>\nl h\nstr i</w>\ngal loway</w>\nstre ad</w>\nwar den</w>\ngr ounded</w>\nffici ency</w>\nli feat\nreli c</w>\ndisgu ise</w>\nisland ers</w>\nf cofficial</w>\nclassical music</w>\nb mc</w>\nen field</w>\nbi que</w>\noak ley</w>\nbat man\nsla ying</w>\nner ves</w>\nmul tit\ncalci um</w>\nprojec tor</w>\nscott sdale</w>\nant ino</w>\ngri ps</w>\nkim mel</w>\ndes mond</w>\nprote stors</w>\nhi atus</w>\nmetaboli sm</w>\nconclu ded</w>\npress er</w>\nti pping</w>\nsli de\ne to\nhun ting\naus open</w>\nri k</w>\npp ery</w>\ninnov ators</w>\npitch ers</w>\nag ger\nfun gi</w>\nz ad</w>\nproli fic</w>\nrockn roll</w>\nbl ames</w>\nct ar</w>\nstam ford</w>\nq ad\nmozz arella</w>\ninsan ely</w>\nden ver\nph ouse</w>\nnom ad</w>\nï ¿\ns ris\npro du\nhen ley</w>\npag an</w>\nam trak</w>\nru bi\nin cl\ntu tor</w>\nsco tia</w>\nwo es</w>\nsing apo\nfun nel</w>\nturn bull</w>\nknow ledge\ngri mm</w>\nreal madrid</w>\nwe are</w>\nmissi les</w>\ncon sol\nemo jis</w>\nsne ak\nsmi ths</w>\nru iz</w>\nbr ou\ni el\nha ver\nðŁĮ ļ</w>\nkin gof\nbasil ica</w>\ncircul ation</w>\nprin ters</w>\nta pping</w>\nri dley</w>\ndra gged</w>\nha j\nwrit er\nfundament als</w>\npersonal ities</w>\nme tre</w>\nstereo types</w>\nbur le\nbest of\nn ffc</w>\nha th\nmini stries</w>\na ali\ntrac ing</w>\npav ed</w>\nł ï¸ı\ng ic\ninsp ire\ntu g</w>\nha re\nrepe ated</w>\nex pon\nlol li\nrho de</w>\npre cin\ninstall ations</w>\ninstag ram\naz ar</w>\ni es\nsole ly</w>\ndu kes</w>\nmission ary</w>\nvan guard</w>\nfursuit friday</w>\non d\npol ari\nma st</w>\nhar an</w>\njos Ã©</w>\njack ed</w>\nec oun\nal ities</w>\nne ph\nra vel</w>\nmoder ated</w>\nsco w\ns fb</w>\nuru guay</w>\nas o</w>\nni g\nau du\np ints</w>\nlat ina</w>\nben z\nm itting</w>\nchar ted</w>\nmat ology</w>\ncit ro\nbiop ic</w>\nðŁĳ Ń</w>\ndjo kovic</w>\nfox y</w>\nagu il\nso to</w>\nan ada</w>\nsin king</w>\nsc rap\nhair s</w>\nbethan y</w>\nfact friday</w>\nðŁĲ Ĳ</w>\nunlea shed</w>\n) (</w>\ncontra dic\nram on</w>\ncoast line</w>\ny ong\nsn sd</w>\nli gan</w>\np ome\nmit age</w>\nge tt</w>\nwat i</w>\nri sk\nso aring</w>\nbru sh\nf pl</w>\nav an\nå Ĩ\nlar son</w>\nsh ear\nmul til\nblu r</w>\nmulti media</w>\nchun ky</w>\npar i</w>\nn ani</w>\nweir d\ncholester ol</w>\nchar les\ndream ed</w>\ntan ning</w>\npuzz les</w>\nfr am\nhand ball</w>\nch ag\nbeli ze</w>\nal u</w>\nbang s</w>\nÑ Ħ\ndetec tives</w>\nmc g</w>\nish q\nbo thered</w>\nsaf c</w>\nmp ing</w>\nten eri\ng ays</w>\nsail or\nan gi\nmul ticul\ngue ssed</w>\nros Ã©</w>\nhigh ways</w>\nbro om</w>\nchatt anoo\n- '</w>\nsee ker</w>\non ed\nat f</w>\nlu c</w>\n> <</w>\nbar i</w>\nper cep\njewel ry\nas ph\nsor row</w>\nsl ing\nmam moth</w>\njac kie\në §\nwilt shire</w>\nsa o</w>\ncan cell\nim paired</w>\ntor ial</w>\nbre ed\nguy en</w>\njud ice</w>\ntit le\npro spective</w>\napplic ants</w>\nðŁį Ĭ</w>\nepis cop\ne id\nb yo\nstock ings</w>\nðŁĴĥ ðŁĴĥ\nll p</w>\nsna g</w>\nkeep it\nl ough</w>\nol son</w>\nmatur ity</w>\n!! !\"</w>\ncop ter</w>\ni sha</w>\nbl i</w>\nwil mington</w>\ntr youts</w>\nth ai\nðŁ¥ ³</w>\npe bble</w>\nkra ft</w>\nf p\nÂ º</w>\nssi vely</w>\nli vin</w>\ncontest ants</w>\ntex tures</w>\njo an\nh dr</w>\nfilm festival</w>\nprov ence</w>\nwi do\nop end\nc si</w>\nsto wn\ncro ati\nad just</w>\nhost ile</w>\nanaly sts</w>\nil an</w>\ncu ppa</w>\nbru m</w>\nnewfound land</w>\ngood win</w>\nme tt</w>\nmall orca</w>\nplu gs</w>\nbu k\nbb hutto\nwrest le</w>\nsa ire</w>\nsho pped</w>\nfor za</w>\nle head</w>\nvi vo\nba st\nro xy</w>\nreg is</w>\nhard working</w>\nhon olulu</w>\ndesp air</w>\nyoung sters</w>\nni g</w>\nimpro mp\nroll tide</w>\nde emed</w>\ntre ason</w>\nru shed</w>\nfor ged</w>\nff f</w>\npikach u</w>\nbri ggs</w>\ndo it</w>\nac cent\nla us</w>\ngla ze</w>\ncompet ent</w>\na ho\nphoto g</w>\nmid field</w>\nle go\nhar vard\nmin orities</w>\nre illy</w>\nslic ed</w>\nonce upon\niniti ally</w>\nfinanci ally</w>\nlandscape photography</w>\nhar dro\nqu o</w>\nmm ers</w>\npar kinson</w>\nsmu gg\nread iness</w>\nbru tally</w>\nglou cester\nmp ed</w>\nbbhutto zardari</w>\nmur der\nye d\ndat aviz</w>\nsr t</w>\ndow ning</w>\nbi ans</w>\nm Ã¼\nfle ck</w>\nfli pped</w>\ns ly\nbrilli ance</w>\nri m\nk um</w>\nbubb a</w>\nko i</w>\nknit ted</w>\nsor g</w>\nma is</w>\nðŁĮ ²</w>\nti ss\nsu stain</w>\nsen su\nak han</w>\nzi est</w>\nexam ines</w>\nchardon nay</w>\nuser name</w>\nshort list</w>\nre bs</w>\non o\ndar ing</w>\nhard wood</w>\nche que</w>\nrighte ous</w>\nlight ening</w>\ndir k</w>\nshra dd\ndu ra\ndown stairs</w>\nsh al</w>\nami gos</w>\nru ff\ns law</w>\nri es\nred nation\nman us</w>\nðŁĩ§ ðŁĩ·</w>\ndistin ction</w>\nu bun\ndur an</w>\nmi gra\nthi ans</w>\nla ver\ndomest ic\nk x\njaz zy</w>\njusti fy</w>\nbelong ing</w>\ninsul ation</w>\ncolor stv</w>\ndrun ken</w>\nchann eling</w>\nqu and</w>\nxi ii</w>\nenligh ten\nkan o</w>\nfati ma</w>\nteen choice</w>\nterri fied</w>\np ba</w>\nas ley</w>\nmet museum</w>\ndun e</w>\npack er</w>\nki o\nðŁĴľ ðŁĴľ</w>\nbo iler\nfas cism</w>\nar mored</w>\nback grounds</w>\nin mates</w>\nembarra ssed</w>\ndefin es</w>\nth d</w>\nwe go</w>\nsilic one</w>\nlo on</w>\nel ding</w>\nbor rowed</w>\nhe mp\nak sh\nkaw asaki</w>\nbr y</w>\nde af\nkill er\ndispo sal</w>\nðŁĩ °\nglaston bury</w>\nun covered</w>\no xide</w>\npo ff</w>\nd ant</w>\nk j</w>\nku ro\ndri zzle</w>\npeop les\nfe e\npro pri\ndd lovato</w>\npi ggy</w>\not is</w>\naller gies</w>\nu bis\npengu in\nser a</w>\nvi z\nprosp erous</w>\nici des</w>\ntornad oes</w>\nsene gal</w>\nweb cast</w>\nsto red</w>\nenchan ted</w>\nbb cone</w>\nbay area</w>\nentrepreneu rial</w>\nrednation rising</w>\nexperim enting</w>\nang an</w>\nlot to</w>\nthey re</w>\npor e</w>\ner p</w>\nseren e</w>\neast wood</w>\nbro kers</w>\nbar ge</w>\nstal lion</w>\ntimber lake</w>\ntailo red</w>\ndy stop\nb ate</w>\nlat ors</w>\ndi xit</w>\nbran son</w>\ndynam o</w>\nky lie\nshame ful</w>\nbt wn</w>\nspring time</w>\nmix ture</w>\ns ounded</w>\nlu ton</w>\ndad es</w>\nmal a</w>\nop ra</w>\nen ic</w>\nrahulg andhi</w>\nse wer</w>\n~~ ~~\nky u\nnor theastern</w>\nca er\nbc u</w>\nnir vana</w>\nkitch ens</w>\nous y</w>\nal m</w>\nriver dale</w>\nhid den\nfl int\nsp d</w>\npat rons</w>\nkaty perry</w>\nau gh\nexhib itions</w>\nsm c</w>\nshu ts</w>\nat ore</w>\nda in</w>\nsome thing\nber th</w>\nbo g</w>\npor ter\ngen to</w>\ncon cussion</w>\nang lic\nro we</w>\ngr illing</w>\nscar lett</w>\nmaster ing</w>\nmor nin</w>\ncomm ented</w>\nsi me\nsi zing</w>\nchrist y</w>\nce os</w>\nst m</w>\nat ry</w>\ntari ffs</w>\nvac ation\npre judice</w>\np su</w>\nparen tal</w>\nfar age</w>\ncan a</w>\ncap com</w>\nkoso vo</w>\nyou re\nmen stru\nstal in</w>\ngrape fruit</w>\nbr an</w>\nche sa\ndav en\nexc el\n!! )</w>\nà¹ Į</w>\ndistribu tor</w>\nce a</w>\nbride sma\nmillenni al</w>\nwa in\nob serving</w>\nmis ery</w>\nplan etary</w>\nexpo sing</w>\nbra ised</w>\ncomp ton</w>\ndon gha\nq l</w>\nspring steen</w>\nth ul\nsyl ve\ncab o</w>\npal ad\nniel sen</w>\ngaz ing</w>\nba ja</w>\nr oud</w>\norchi ds</w>\njohan nesburg</w>\nse man</w>\nd ji</w>\noper ative</w>\naffe ction</w>\neclec tic</w>\nat c</w>\nmut ant</w>\naw x</w>\nnic e\nmel bourne\nindu lg\ntu lip</w>\ndias pora</w>\nwel p</w>\nbig gie</w>\nmississ auga</w>\nretri ever</w>\nor an</w>\ntam my</w>\nc ta</w>\nhipp o\nseas oned</w>\nger mans</w>\neng v\nmarvell ous</w>\nim f</w>\nrela ys</w>\nmon tan\nmaur iti\nme ister</w>\nas surance</w>\nreig ning</w>\nsu fficient</w>\nhan e</w>\nno thing\npos se</w>\nnav y\nin love</w>\nbrigh ton\nen qu\nch ung</w>\nsweat y</w>\nes c</w>\ncal ed\nman s\nnicar agua</w>\nsl ices</w>\nmo cha</w>\nwashington post</w>\nbb n</w>\ndam ned</w>\ngrow ing\nen burg</w>\nlo an\nme s\nwh oops</w>\nbeliev ers</w>\nspi el\nvo daf\nl at</w>\ns led</w>\ncricke ter</w>\nbrown e</w>\ngolf ers</w>\nbar ra\nwat chers</w>\nlu igi</w>\nsw amy</w>\nmom s\npit ched</w>\nsan tor\ncr s</w>\nsi re</w>\nsc amp</w>\nbo de\nste war\njon ny\nent ity</w>\npac qui\nmind ful</w>\nmin india</w>\nbear ded</w>\ntemp t</w>\nscorpi on</w>\neat on</w>\nauthori zed</w>\nar to\ns vp</w>\nop athy</w>\ncch ini</w>\nhouse music</w>\ndisney world</w>\nâĢĶ @</w>\npro pose</w>\ndi y\nexpen se</w>\nten g</w>\npupp ets</w>\nsm el\nd aca</w>\nper ry\nfin n\nboo sting</w>\nlefto vers</w>\ncou gs</w>\nsatell ites</w>\nman y\naz e</w>\ng ong</w>\nfi e\nmetho do\nfer ries</w>\nðŁ¤Ķ ðŁ¤Ķ</w>\nexplore rs</w>\nload er</w>\nattrac ted</w>\nil ton</w>\ngodd amn</w>\npi azza</w>\ndoc tr\nsav ing\nparagra ph</w>\nvisu alization</w>\nmay ors</w>\nwork flow</w>\nack les</w>\nðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ\nà¤ ¸</w>\ntwer k</w>\nclu t\nlo ver\nte ases</w>\nsi an\no te\ndeter ior\naccor d</w>\nl fw</w>\nswar ovski</w>\nnat al</w>\ntra ps</w>\nk ina</w>\nanaly ze</w>\nlaye red</w>\nbever ages</w>\nun it\nran som\npe shaw\ndest ined</w>\nastro logy</w>\nsi pping</w>\nmiley cyrus</w>\ncam ino</w>\nmarshmal low</w>\nbli ss\nout back</w>\nfa q</w>\nint oler\nhumil ity</w>\npo ppin</w>\nhallo ween\nmon tene\nop hy\nnu n</w>\ntattoo ed</w>\na as\nðŁĮ ³</w>\ndale y</w>\nqual ity\ndu sa</w>\nfisher men</w>\nswi f\nter rac\nst au\nle in</w>\ntrol ling</w>\nship ment</w>\ngarden er</w>\nmarch madness</w>\nhead band</w>\ngr t</w>\nbur nett</w>\nw and</w>\n!!!! !!!!!</w>\ngh e</w>\ndu x</w>\nhu d</w>\nwar ner\nðŁĩ ¦</w>\nex ile</w>\nrescu e\nrat a</w>\nd han</w>\nduc ati</w>\ndro wn</w>\nbl ends</w>\nspi e\nalli gator</w>\nsimul taneously</w>\nbroo ke\nu ke</w>\nk har</w>\ncomm union</w>\nri ka</w>\nford fc</w>\nchin atown</w>\nyou rown\nme y\ncan al\nsyste matic</w>\nde pri\nox ford\nan il\nw ut</w>\nequ ation</w>\nbe z\nfle ur</w>\nthe good\nlang ley</w>\nad ity\ned ith</w>\nal fie</w>\nÐ¾ ÑĤ\nen cry\nbr ill</w>\nex emp\nce sar</w>\nmb ling</w>\nab ri\nsc icom\nj ing</w>\nschool ing</w>\nmi ka\nmechan isms</w>\nimpromp tu</w>\nrhe a</w>\nmoo re\ncrime a</w>\nbe sto\nwri ght\nel ders</w>\nro ds</w>\nkam al</w>\nfolkl ore</w>\nbe et</w>\nmini on</w>\nreli eve</w>\nthr o</w>\nteam usa</w>\npas cal</w>\nmade with\nboli via</w>\nitt i</w>\nfree bies</w>\ndesi red</w>\nbest selling</w>\nl iness</w>\nla den</w>\nke ane</w>\nmi sts</w>\nhipp ie</w>\natta chment</w>\n@ /</w>\nse w</w>\nflan agan</w>\nâĿĹ ï¸ı\nsupre mac\nstl cards</w>\nsi as</w>\nq u</w>\nrh ys</w>\nste ep\nval leys</w>\nv w\npav ing</w>\ndisp at\nal ison\npor te</w>\nid u</w>\nnew sc\nsoc ket</w>\nmo s\nco star\nre vo\nprote ins</w>\nstanley cup</w>\nm cal\near ring</w>\nse cs</w>\nmc lean</w>\ncap ric\nnick elo\nad en\nv c\nshou se</w>\nadap tive</w>\nmaxi mize</w>\nentertain er</w>\npro se</w>\ngri ffi\nsix teen</w>\nlam ar\nmi rage</w>\nsaudi arabia</w>\nawe ather</w>\nru st\nin filtr\nfashion week</w>\nðŁĺĬðŁĺĬ ðŁĺĬ</w>\nselec tive</w>\nbubb le\na den</w>\nfen nel</w>\ndeci sive</w>\nm ta</w>\nmock ing\nmb les</w>\nst amp\nmu le</w>\nbernar do</w>\ngr in</w>\npo tt\nj ingle</w>\nvet tel</w>\ncolom bian</w>\ncam o\nmotivation monday</w>\nba han</w>\np ly</w>\ndh ary</w>\nk ami</w>\nx men</w>\nsleep er</w>\ngar a</w>\nmy sti\nconfi dential</w>\nconflic ts</w>\np neu\nce s\ninsur tech</w>\nclean se</w>\nme rely</w>\nva is</w>\ntu x\nthe great\nshar on\nma j</w>\nhol a</w>\neco systems</w>\naj ay</w>\naa j\nhu sh</w>\nhar mon</w>\nbackto school</w>\nwiki leaks</w>\nreflec ted</w>\nðŁĺ ĵ</w>\ncommemor ating</w>\nac et\nbuck ingham</w>\nmessi ah</w>\ntu ous</w>\nhor net</w>\nto be</w>\nd q</w>\nhe ine\nmi g</w>\npl ate\nnichol son</w>\nsp ie</w>\ncumber land</w>\nnor mal\npho bia</w>\nhappy halloween</w>\ncity fc</w>\nmc el\ngilli an</w>\nke to</w>\nlu de</w>\nde mise</w>\nsu ga</w>\nstr ate</w>\nmcgr ath</w>\nvisit scotland</w>\nfoo led</w>\ncb r</w>\ngc se</w>\ncol ori\npo td</w>\nmissuni verse</w>\nfin ances</w>\nma poli</w>\nfor ks</w>\nØ ´\ncann on\nmedic inal</w>\nðŁĹ ĵ</w>\nkh o</w>\nwre ck\npan to</w>\nbag el</w>\ngu ll</w>\nsyndic ate</w>\nic y\npr c</w>\nki en</w>\nzi ka</w>\nti sh</w>\npe ta</w>\nc co</w>\nli za</w>\nch ut\nex traction</w>\nel g\ngl i</w>\nfu eled</w>\npos it\nrespec tively</w>\nleice ster\nbr ink</w>\nvulner ability</w>\nim ported</w>\ne sha</w>\nðŁ¦ ħ</w>\nr ural\nre ll\ngam ing\natlan tic\naband on</w>\nno ah\nre solved</w>\npro state</w>\naller gic</w>\nps d</w>\nâĺ ¹\ndun geon\nfang irl</w>\nillumin ated</w>\nm hs</w>\nwhite sox</w>\nd ently</w>\nck o</w>\nendor se</w>\nover ly</w>\ndazz ling</w>\nprior iti\nnight life</w>\nut il\nbe have</w>\nflam en\neast bound</w>\nðŁĴ Ł</w>\nilove you</w>\ngov uk</w>\nmozam bique</w>\nalle gi\ndr i</w>\ntestim onial</w>\nath s</w>\nì§ Ģ\nmm y\nshab by</w>\npro secco</w>\nfriend ships</w>\ncal am\ndam ages</w>\noff set</w>\njura ssic\njun o</w>\narre ll</w>\nðŁĴ ©</w>\ninterven tions</w>\ndare devil</w>\ncar ver</w>\nrun away</w>\nran e</w>\ntruste es</w>\nha ute</w>\ndep ths</w>\nðŁİ Ń</w>\nme in\nsacrific es</w>\ncon cier\nne sting</w>\ni zzy</w>\nme tam\nilove my\nur ine</w>\ndu lu\nmal hotra</w>\nve ins</w>\nnight ly</w>\nco at\nan di\nhe witt</w>\nlon el\nci ble</w>\nwr ite\njen nie</w>\nsant ac\nĸ ï¸ı</w>\nstr ato\nsingapo re\nsop rano</w>\nkri sten\ncheer ful</w>\nflee twood</w>\nfa iri\nm eli\nwa st\ntur nt</w>\nsfor sale</w>\nsc rolling</w>\nangel ina</w>\nren dition</w>\njeric ho</w>\nnick y\nor b\nfla vo\npatri ot\nash eville</w>\nsick ness</w>\nre fund</w>\naggre ssion</w>\nb pl</w>\nãĥ ĥ\nelu sive</w>\nthi story</w>\nhang er</w>\nbu ffs</w>\nvil las</w>\nat kinson</w>\nsp h\nja it\ndecl ined</w>\nwo k</w>\nsupre macy</w>\noo tball</w>\ney ang</w>\nðŁİ ĵ\ns ford</w>\nath i</w>\nconsu me</w>\nroad ster</w>\ne so</w>\nu pro\nreci pe\nau f</w>\nuc i</w>\nar on</w>\noo oh</w>\ncs go</w>\nre ich</w>\nmc d</w>\nmin ute\nladi es\npun k\nrut gers</w>\nmee k</w>\nariz on\nta j\nland lord</w>\nde gra\nautu mn\nlyn x</w>\nus f</w>\nb hi\nfairy tale</w>\ndongha e</w>\nbet sy</w>\nexplo ded</w>\nchen nai\nop a</w>\npro tag\nbr ant\nðŁĵ °:</w>\ng f\npal li\nðŁı¼ âĢįâĻĢï¸ı</w>\nsu t</w>\nill ini</w>\ncolum nist</w>\nshir tless</w>\nde centr\nsear ched</w>\nec or\nbu ggy</w>\ns ack\nðŁĺĤ ðŁĺŃ\nde t\nther i\nor naments</w>\nbring back\nto v</w>\nquarter finals</w>\nic he\ncon stra\ngi er</w>\nbuchan an</w>\nvi x\nkay aking</w>\nmu stread</w>\nswal low</w>\nmel b</w>\nsc af\nop al</w>\nmay oral</w>\nhar at</w>\nðŁ¦ ĭ</w>\nschedu les</w>\nid f</w>\nha gue</w>\nro z\na ah</w>\nd mc</w>\ndu plic\nca che</w>\norph an</w>\nfrac ture</w>\nrec on</w>\nch av\nbun nies</w>\nal ain</w>\nmustaf a</w>\nðŁİ Ļ\nvac ations</w>\ndynam ite</w>\ntex ted</w>\nbroad caster</w>\nðŁĴ £</w>\nste amed</w>\nrock er</w>\ndi etary</w>\nluxury travel</w>\ninaugur ated</w>\nsa wards</w>\nvaugh n</w>\nlincoln shire</w>\nclick ed</w>\nkra ja</w>\nf anc\nremo ves</w>\nlayo ffs</w>\nmc far\nbre eds</w>\nwin nie</w>\njon ghyun</w>\nincen tive</w>\nvari ations</w>\npat ton</w>\natur day</w>\npersist ent</w>\npr un\npi ers</w>\ndal es</w>\næ ĸ\nbreast feeding</w>\nr ance</w>\nta wa</w>\nĤ âĸ\nmur doch</w>\ncap tive</w>\nthi stle</w>\nnic a</w>\ncommod ity</w>\ncou ldnt</w>\nboard walk</w>\ngraci ous</w>\npractiti oners</w>\nn gc</w>\nscru m</w>\nner o</w>\ncamoufla ge</w>\ncol on</w>\nhe i</w>\nphys icist</w>\nsaturday morning</w>\nten er</w>\nsi won</w>\ncolum ns</w>\nbru ne\ny vr</w>\nba ir\nreti res</w>\nhal am\ncab er\nshaz am</w>\nmin u\ncas cade</w>\nmilk shake</w>\ngri d\nd ren\nvin cent\nso dium</w>\nplat ter</w>\ncheer leader</w>\nchen ko</w>\ny ak</w>\nelimin ated</w>\nty po</w>\ny man</w>\nre think</w>\nâĿ Ĺ</w>\nts ville</w>\nbernardo kath</w>\nex tr\nðŁĺģ ðŁĺģðŁĺģ</w>\nta o\nre per\nmo ths</w>\nem powered</w>\nc iting</w>\ntranspor ted</w>\nmon ks</w>\nsan at\ncle ars</w>\nbachelore tte</w>\ncamp bell\nracha el</w>\nhar le\nhand ler</w>\nclimb s</w>\ninter ference</w>\nrele ase\nsh and\nr bs</w>\nhr h</w>\nãģ ª\nval le</w>\nr Ã©\nsli me</w>\nw akes</w>\nchu bby</w>\nslo an</w>\nel ves</w>\nath en\nattor neys</w>\nmicro scope</w>\nston er</w>\nsc aling</w>\no be</w>\nc out\nse man\nmid week</w>\nbal sam\nðŁĺį âĿ¤</w>\nti ful</w>\nv ish</w>\nlo tta</w>\nri pping</w>\nre mn\nti re\nle ap\nha vent</w>\nla by\nhi mach\nwhisp ers</w>\nwe in\nðŁİ ¸\nwild flowers</w>\nse le\nu cc</w>\nli ability</w>\naz ine</w>\nsw ings</w>\nk ya</w>\nta ir\nre main\ne do\nflo ps</w>\npoc ket\ngrand ad</w>\nexam iner</w>\ngr is</w>\nffe ct</w>\nðŁĳĬ ðŁı»</w>\nstud ded</w>\nheart beat</w>\nde acon</w>\nfirm ly</w>\ninfec tious</w>\nste f\nout lines</w>\nle asing</w>\ncla ws</w>\nsen se\ntab s</w>\nhoo t</w>\nmo sul</w>\nspa wn</w>\nco a</w>\nhog warts</w>\nve in</w>\nalban ia</w>\nmanu el\nb ino\nvaux hall</w>\nscot land\ngo bucks</w>\nmat ty</w>\nphy sio</w>\ntor ino</w>\nconst able</w>\ninvestig ated</w>\ns lower</w>\nmistak en</w>\nbay er</w>\nwild fires</w>\nvo ic\nx on\ntime to\nchas sis</w>\nbar ric\npi on</w>\nbald head</w>\nwoo k</w>\nregi str\ndra fts</w>\nb hs</w>\nli gue</w>\nl ick\nstaf fordshire</w>\nbaf ta</w>\ndar ry\nje anne</w>\nven ding</w>\ncor p\nâĽ ³ï¸ı</w>\nkid dos</w>\nfen way</w>\nca o</w>\nwest bound</w>\nðŁĺ Ļ</w>\ndv r</w>\nquick er</w>\nbla h</w>\ngoo die</w>\nðŁĴĭ ðŁĴĭ</w>\nvo x\nesp er\nfac ade</w>\ncor relation</w>\nred bull</w>\nrou p</w>\ndecl ining</w>\nchi ve</w>\nmc gee</w>\ntur o</w>\nin der</w>\nf eller</w>\nfu g\nil ysm</w>\nmar di</w>\npeshaw ar</w>\nki eran</w>\nine ma</w>\nmeat balls</w>\npe ck</w>\ndepre ssing</w>\nsen sing</w>\ngi z\ndd ington</w>\nspring watch</w>\nro aming</w>\nyellow stone</w>\nhorse shoe</w>\nam man</w>\nweek day</w>\nol or</w>\nðŁ¥ °\nboo sts</w>\nspr int\nscar ves</w>\nje e\nbee tro\ncl an\nall the\nìĦ ¸ë\nenlighten ment</w>\nado be\nre generation</w>\n? @</w>\ncont ag\nyach ts</w>\nto u</w>\nmor a</w>\nen voy</w>\nr ani\ngo li\ndhanush kraja</w>\nwood working</w>\nstreng ths</w>\nse di\ndisc s</w>\nar ina</w>\nsc on</w>\nlit e\nano ther\nðŁ¥ Ĭ</w>\nye men\ngu ern\nsav vy</w>\nlo yed</w>\nbiom ed\nheart break</w>\ncomra des</w>\nmilli e</w>\npat ch\nun f\njar vis</w>\nbl aming</w>\ncommemor ation</w>\nge y</w>\nå ¥\ncardio vascular</w>\nalig ned</w>\ndocu ment\n. ?</w>\naesthe tics</w>\nem u</w>\nthe irs</w>\nle h</w>\nps ic\nsi f</w>\npl ateau</w>\nex pend\ndomin ating</w>\nrob es</w>\nmauriti us</w>\nexcep tionally</w>\nhom er\ndiscover ies</w>\nbra un</w>\nten nant</w>\ninsul in</w>\nðŁİ ®</w>\ncar bs</w>\nte as</w>\n? !\"</w>\nzi e\nfranco is</w>\nbrow sing</w>\nth ol\ncla rence</w>\nhel per</w>\nob tained</w>\ncas sie</w>\nle es\n! ,</w>\npome gran\nhu bs</w>\npresti ge</w>\n] [</w>\nmach er</w>\nbott led</w>\npun ch\npi pe\no ch\ngall ons</w>\ndeliver ies</w>\nu ra\nun day</w>\nmon de</w>\ndepic ts</w>\nre gency</w>\noutra geous</w>\nkhal ed</w>\ncar o</w>\nhe arti\nza g</w>\ndevelop mental</w>\nover coming</w>\nstati stical</w>\nflavo red</w>\nfor ds</w>\ncre atives</w>\nlau rence</w>\ndi as</w>\nsun screen</w>\nin ked</w>\npre acher</w>\nn ul\nimpac ting</w>\nauti stic</w>\nâļ Ķï¸ı</w>\no ss\npel icans</w>\ncele ste</w>\nv b\nru mp</w>\nmc gra\nfair fax</w>\nhu mor\nbbc news</w>\nrow ling</w>\ncal der\nseam less</w>\nag ne\np ti\nmix ed\nt shirts</w>\nmer ci</w>\nb tob</w>\nwomen instem</w>\ngenealo gy</w>\npre ven\nl our\ncra dle</w>\ngi use\nÐ ¾</w>\nchron o\nfair ness</w>\nchocol ate\ntor y\nas da</w>\npre scott</w>\nstret ched</w>\nal man\nu il</w>\nre charge</w>\nin tre\nob st\nhosp ital\nhay ward</w>\nteneri fe</w>\nfried man</w>\nvap ing</w>\nconfe ssions</w>\nye ah\nbal li\nluck now</w>\ncor pse</w>\nsculp tor</w>\namp ton\nt pp</w>\nindic ates</w>\nsur plus</w>\ntru man</w>\nðĿ Ļ\nsin ha</w>\nin vo\nsovere ign\nke v</w>\nestabli shing</w>\nengra ved</w>\nassu ming</w>\nðŁı ģ\nsou za</w>\nfab i\nton ed</w>\noun ge</w>\ndel oit\ndow ney</w>\nno ble\nom or\ncar tridge</w>\nðŁı Ĳ</w>\nu hur\nhol loway</w>\nsucce sses</w>\nr sa</w>\nâĦ ¢\nma zz\ntw d\ndisc ourse</w>\n. <</w>\ny at\nsatis fy</w>\ncom pri\nà¤ ¹</w>\ngraph ite</w>\ndisser tation</w>\nar ter\ní Ķ\nb ally</w>\nzom bi\nly ons</w>\na ic\nu bc</w>\npra da</w>\ne il\nda x</w>\ncla i\ngrand daughter</w>\nextravag anza</w>\nchall enge\nðŁ¤ ŀ\npo ver</w>\nprimar ily</w>\ndad dy\nman a\nbi kers</w>\ninqui ries</w>\nda un\nfel ine</w>\ngener ative</w>\nhe f\nbenef iting</w>\nlind sey\npol ka</w>\ndemonstr ated</w>\nal le</w>\nrand y\no su\nlow key</w>\nweir dest</w>\nred bull\nour y</w>\nn ous</w>\nwood stock</w>\ncre denti\nnic er</w>\ng ado</w>\naly ss\nap h</w>\nprepa redness</w>\nstation ary</w>\nincorpor ated</w>\ndy er</w>\nsarato ga</w>\ncele sti\n: \"\nantibio tics</w>\nor gs</w>\ninde fin\nap ron</w>\nÐ¸ Ð\nfif teen</w>\nno f\nðŁĶ Ŀ</w>\nph x</w>\nte ga</w>\nm z\norganiz ational</w>\non air</w>\nband ung</w>\npleas ures</w>\nmor i</w>\nsecre tari\nrac coon</w>\nca shi\npil ates</w>\nk on</w>\ngeof frey</w>\nla o</w>\nkam p</w>\ndepart ments</w>\nback packing</w>\nan am\nÃ «\ncrack down</w>\naun ty</w>\non do</w>\nli zzie</w>\nph ers</w>\ncu n</w>\nðŁĩ ±\nk pop\npu t\ninten tional</w>\nconnol ly</w>\nbar clays</w>\nhs fb</w>\nswin don</w>\nu ku\ns ally\na int\nâľ ħ\npen ang</w>\nup lifting</w>\nepile psy</w>\ninter ro\nbun gal\ngo ku</w>\nblue berries</w>\nà¤ ¦</w>\nu ssia</w>\nsil ky</w>\nmou red</w>\ni stic</w>\nbri efs</w>\nme ats</w>\ngo b\nch aser</w>\nstate wide</w>\npra sad</w>\ngl itch</w>\nar in\nban ff</w>\nmemb er\nðŁĺŃ âĿ¤ï¸ı</w>\nlo ving\nhall a</w>\nà¸ ¡</w>\nsmo kers</w>\nyak u\nscicom m</w>\nphysi o\nsw ol\nlem ons</w>\ngel ato</w>\nch ool</w>\ncapit als</w>\nki stan</w>\nti ghts</w>\nspi kes</w>\ntrav ellers</w>\nik lan</w>\ncommissi oning</w>\nar ine</w>\nemabiggest fans</w>\nempha sis</w>\nfront line</w>\npad dock</w>\ndestruc tive</w>\nba ha\nl inger</w>\nje wish\nshet land</w>\nmc gin\nmon key\nko z\ns one</w>\nraj ini\nte h</w>\ny en\nc vs</w>\nmasqu er\ngir ly</w>\nwe sle\nwas nt</w>\nbro dy</w>\ntermin ator</w>\ngil le\nmag gi\nbir die</w>\njeopar dy</w>\ncu bic</w>\nvm ware</w>\nintric ate</w>\nan up\nto pia</w>\neast on</w>\nsab res</w>\ninvestig ates</w>\nbu sting</w>\nbil ingual</w>\nvalent ino</w>\nin format\nfer re\nadvent ur\nhydr ate</w>\nfor sy\naz iz</w>\nsan to\ne de\nwhist ler</w>\ncontinu ously</w>\nd ham\nun used</w>\nji had</w>\naddic tive</w>\nvi dy\ndo b\ni do</w>\nfi ed\nni versary</w>\nn one\nfu er\nðŁĺį ðŁĺĺ\ncoven ant</w>\nprin table</w>\nimmac ulate</w>\no em</w>\ncl t\nserv ants</w>\nconsu med</w>\nun released</w>\nsc um</w>\npack aged</w>\nme re\nìĦ¸ë ¸\nto by\nta f\nspo ons</w>\nme al\nf ball</w>\nfair field</w>\njan et\nsilver stone</w>\ndart mouth</w>\nfollow me</w>\nvoy ager</w>\nkom bat</w>\nanni ver\nene w\nmag dal\nho ve</w>\nsa th\ngrizz ly</w>\ncar di</w>\ngart ner</w>\nsand y\nkan ye\npost ure</w>\npo ign\nim pulse</w>\nradio logy</w>\nhoriz ons</w>\nsi am\naish war\n= =></w>\nno che</w>\ntr is</w>\nel yn\ncom me</w>\ndu i</w>\nce c\ncouncill ors</w>\ncudd ling</w>\ncreep ing</w>\nloc ke</w>\nmanag es</w>\ntrans ferred</w>\nne cks</w>\ndi er\ndan o</w>\nv ick</w>\nlun ches</w>\nd he\nen sures</w>\ncri ss</w>\nul ster\nbann on</w>\ncont enders</w>\nsp am\nsweet ness</w>\nmed al\nhon duras</w>\narc tic\nultra sound</w>\nin fr\ndisco vers</w>\nei ffel</w>\nca sters</w>\nru ben</w>\ndu st\nawe ed</w>\natri um</w>\nlest we\nse ared</w>\nðŁĵº :</w>\nty ne</w>\nex changes</w>\nlittle mix</w>\nl le</w>\nastron auts</w>\nhersh ey</w>\nwork day</w>\nkno b</w>\nso v</w>\nre signs</w>\ntoday show</w>\nder man</w>\nan th</w>\naf c\nta ster</w>\nsw oo\nsa eed</w>\nper ing</w>\nnarrow ly</w>\nrn li</w>\nbest buy</w>\npanas onic</w>\nobst acle</w>\nfarmer s\nðŁİ Ļ</w>\npa wan\nki est</w>\nang ers</w>\nabsur d</w>\noh my\nsin o</w>\npist achi\nsp ice\ngiu li\nprime time</w>\nko w\nk ens</w>\nex agger\n! ?!</w>\nu ba</w>\nmidd les\nju dd</w>\ne jec\nslam med</w>\npen sions</w>\nof a</w>\nre create</w>\nb hp</w>\nxx l</w>\nliver pool\nthre sh\npur ity</w>\nni eu\nhol ics</w>\nwr ath</w>\nra do</w>\ngli o</w>\nam ma</w>\ndile mma</w>\ncr u</w>\nlets go</w>\n.... @</w>\nâĿ ĵ</w>\nsugge sting</w>\ntru mps</w>\nhor us</w>\nf v\nic om</w>\nrefer ring</w>\npredic tive</w>\ntar ts</w>\nge tte</w>\nso ck\nglo ssy</w>\npin ky</w>\nal ec\nthy me</w>\nou ra\nthero ad</w>\npe tr\ncr am\np fi\ndv n</w>\nme ier</w>\nincen tives</w>\ntun nels</w>\nmobi l</w>\nrec ap\nextra s</w>\nupri ght</w>\nrev amp</w>\nper severance</w>\n, -</w>\not p</w>\nmir ror\nar wx</w>\nger ry\nma her</w>\ng or</w>\nhom epage</w>\nam is</w>\nag ra</w>\nmade le\nbest friend\nsirius xm</w>\nbun dles</w>\nadmir ing</w>\nt dsb</w>\nðŁį ģ\nch as</w>\nslow ing</w>\nro h</w>\nwall papers</w>\nâĢ¦ /</w>\ntek ken</w>\ngang s</w>\ntal a</w>\nlind say\nshou l\nline backer</w>\ntool kit</w>\nur anium</w>\ncaly p\nab rams</w>\nmat thi\nðŁı ¿\nhon ourable</w>\nda yo\nver sail\ntan k\nst c</w>\nfr itz</w>\nspl end\npat ag\nanno yed</w>\non day</w>\ndevast ated</w>\nchattanoo ga</w>\nnational ism</w>\nmas sey</w>\njen n</w>\ntail or</w>\ndev gn</w>\norg ans</w>\nzu cchini</w>\non fox</w>\nsat ire</w>\nwex ford</w>\ndis grace</w>\nno to\nvol ta\nâĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ıâĿ¤ï¸ı</w>\nà ¶\nhome owners</w>\npoin ter</w>\nm cr\nau sten</w>\nday sto\nmo ons</w>\npal ma</w>\ngra zing</w>\ne so\ninfluen cers</w>\nshahid kapoor</w>\ncompli ant</w>\nmeasure ments</w>\ndevelop s</w>\ny d\npar l</w>\np vt</w>\nrand olph</w>\ntor tured</w>\nger ald\neli as</w>\ndeepi kap\nwar mup</w>\nhick ory</w>\ng ap\nco ffin</w>\nam our</w>\nre neg\nmoun ting</w>\nseven s</w>\nig le\nhi er</w>\ndec ad\ntri ght</w>\nesc apes</w>\nwer ner</w>\nt fl</w>\nful filled</w>\nni ger</w>\nsour dough</w>\nre aper</w>\nchoo ses</w>\nspin ner</w>\nweek nd</w>\nfil tered</w>\nsh uk\nkat i</w>\nold ham</w>\nopen source</w>\nkh anna</w>\nat elier</w>\nconne c\nopho bic</w>\ngla s\ncomplic ations</w>\nar son</w>\ncounc ils</w>\nsm ol\nas sy\nlur king</w>\nling ui\nhan ks</w>\ne in\nÙ ħ</w>\nru gs</w>\nn guyen</w>\nnou veau</w>\nmen ace</w>\nle v</w>\nalad din</w>\nru ining</w>\nround about</w>\nk m\ncon or\nshoo ps</w>\nmay day</w>\ntraum atic</w>\nprab has</w>\nka iser</w>\nk ita</w>\nrou ter</w>\npe dro\nre tar\nstun ner</w>\nspani sh\ndistur bed</w>\nacade my\ne learning</w>\nwit ty</w>\nsen g</w>\nfer al</w>\nav y</w>\nsta b</w>\nke aton</w>\nur du</w>\nko to</w>\nhu i</w>\ncoo ke</w>\nari an\nthe personal\nu ma\nse ap\na sting</w>\nrhetor ic</w>\nhand writing</w>\nmunici pality</w>\nconsor tium</w>\nðŁĲ Ł</w>\nglasgo w\nra ya</w>\neli za</w>\npolym er</w>\nbro th</w>\nprac ti\ncorrespon dent</w>\naddic ts</w>\ngay le</w>\nail ing</w>\no fe\np li\nhear tw\nst itch\nsight ings</w>\nprie sts</w>\nsam o\nslo th</w>\ngood wood</w>\nroc co</w>\nsab c</w>\nsumm it\nl ace\npres ley</w>\nitt en\ncin cy\nthepersonal network</w>\ns week</w>\npe gas\naf con</w>\nregi stry</w>\nci m</w>\nle th\ndic ap\ncand ice</w>\nflu ent</w>\nsm ack</w>\npede stri\nal oud</w>\ncar ac\npriyan kach\np gh</w>\nir ons</w>\ndol ce\nlat via</w>\ndece ased</w>\nthero ck</w>\ncla p\ncen e</w>\nfo am\nmorris sey</w>\ngre t\nessenti ally</w>\ncom cast</w>\nbe agle</w>\nargu es</w>\ning ed</w>\n- âĢ¦</w>\nsa g</w>\nha san</w>\nðŁĻ Ĩ\nðŁį °</w>\nnh ra</w>\nkann ada</w>\nindic ators</w>\non er\nbri xton</w>\nat as</w>\nscreen play</w>\nsor ority</w>\nsha heed</w>\nhe em</w>\nclass mates</w>\ntain ment</w>\nes i</w>\nbreast cancer</w>\nzucker berg</w>\naur or\nen cia</w>\nref ers</w>\nkae per\nvor tex</w>\ncom part\nlym ph\nphotograph ing</w>\nste ff\nrest ling</w>\npar sley</w>\nmom ento</w>\nth man</w>\nlac king</w>\ndu tt</w>\nocu lus</w>\nfin o</w>\nfren zy</w>\nra sc\nder n</w>\ndis missed</w>\nnoo k</w>\nmet gala</w>\nsh ill</w>\nrapha el</w>\nmaver icks</w>\nexhib its</w>\neag erly</w>\nc pa</w>\namen ities</w>\n. âłĢ</w>\nexo dus</w>\nern st</w>\nlit a</w>\ndeal t</w>\nwomens march</w>\ni ain</w>\nscore board</w>\ncampe ones</w>\nc en</w>\nti ki</w>\ngarri son</w>\nfidel ity</w>\nbra g</w>\nroad map</w>\npsy chop\nlo e\nble u</w>\nðŁĳĬ ðŁı¼</w>\nsau vi\nspr inger</w>\ntemp tation</w>\nru dolph</w>\nac ura</w>\nwic z</w>\nparach ute</w>\nstro l\nlen ny</w>\nzi k</w>\ndom s</w>\nnb af\nal pac\nvivi an</w>\nro ve</w>\npre et</w>\nperpe tu\nsna ke\nair soft</w>\ninfl atable</w>\nprin ces</w>\nati e</w>\nffe y</w>\npati ent\nm ire</w>\nchel le</w>\nsl ack</w>\ngroo vy</w>\n# :</w>\nup loading</w>\n!!!!!!!! !!!!!!!!\nsiem ens</w>\nprovi sion</w>\nv fx</w>\nneed y</w>\nf ats</w>\nto poli</w>\nbhu tto</w>\nsa thletics</w>\nalu ms</w>\nt winning</w>\nsouth western</w>\nadop ting</w>\nlast night</w>\nman ne\nla ga</w>\ntw ell</w>\nac ia</w>\n-- --</w>\neye wear</w>\nhur ley</w>\nfle e</w>\nsa ch\npe cker</w>\ncost ly</w>\nis k</w>\ncr ates</w>\npolic y\nero sion</w>\nin go\nwer k</w>\nðŁĲ į</w>\ntorto ise</w>\ntherap ies</w>\ninter net\nchihuahu a</w>\nri ps</w>\nfre i\ned or\ntai ji</w>\nt fc</w>\ndo d</w>\ndemp sey</w>\nchrist in\nchen g</w>\nhi ps</w>\ngra eme</w>\ncom passionate</w>\ncavali ers</w>\nhistor ic\nsoul ful</w>\ncrimin al\nja c</w>\nvin ci</w>\nexpi red</w>\nsur at</w>\nturi smo</w>\nk ona</w>\nse aweed</w>\nber ts</w>\nle ica</w>\nexpre ssing</w>\na al</w>\nwor t</w>\nbreak fast\nher ring</w>\nam used</w>\nrhu barb</w>\nmar tian</w>\ncospla yer</w>\ny ash\nstri al</w>\nra ul</w>\nrefer ral</w>\ndw ts</w>\nj w\nad ler</w>\ncur tains</w>\ngu r</w>\nval ence</w>\ntyr one</w>\nsw fc</w>\ncoach ed</w>\nre born</w>\ndiabe tic</w>\ncho ke</w>\nnor folk\ninvestig ative</w>\nðŁĴ¯ ðŁĴ¯\nz id\nv mas</w>\nphi e</w>\nobjec tives</w>\nâľ ĭ</w>\nover due</w>\ndi vers\nmat su\nðŁİŁ ï¸ı</w>\ncasu alties</w>\nà¸ §</w>\nal k\nstand ardi\nre alist</w>\narti facts</w>\npand or\nke x\nin vin\n( !)</w>\nine y</w>\npar aly\nmr t</w>\nfay e</w>\nthe voice</w>\non ga</w>\nde ed</w>\nskin ner</w>\naz wx</w>\nspeci men</w>\npriyankach opra</w>\nnu evo</w>\nbar kley</w>\ntoulou se</w>\nresu mes</w>\nfootball ers</w>\ncit i</w>\nfe tch</w>\nÃ¨ re</w>\nlestwe forget</w>\nðŁĻ ĭ</w>\nch unk</w>\ndri fting</w>\nmanipul ation</w>\nequ als</w>\npu tt</w>\nky ungsoo</w>\nâĿ¤ï¸ı #</w>\nela stic</w>\npar ano\nfo y</w>\ndo ping</w>\ncin cy</w>\nss ler</w>\ninterrup ted</w>\nal ay\nado res</w>\name thy\ncon voy</w>\nãĢ ı</w>\nĬ ãģ\nblack list</w>\ngener als</w>\nsa chin</w>\nbru shed</w>\noun ces</w>\nnon stop</w>\nilli ams</w>\nbt sarmy</w>\nu av</w>\nru ff</w>\nbur ma</w>\nbi k\ndefen ce\nschul tz</w>\nbo asts</w>\nlonel iness</w>\ngo re\ntrans forms</w>\nalum na</w>\n@ @</w>\nra ppers</w>\nne hru</w>\ncar o\nhimalay an</w>\nwearab les</w>\nge h\npepper mint</w>\nre development</w>\nflam ingo</w>\ncos by</w>\nbig baldhead</w>\nag ri</w>\nbare foot</w>\nsco pes</w>\nre gram</w>\ngh ana\nðŁİ «</w>\ni heart\nsa die</w>\ncarri e\nmicrobi al</w>\nku ala</w>\nsk ater</w>\nquer que</w>\nâĻ ©\ngen res</w>\nreas oning</w>\nch ased</w>\nas o\nsli pped</w>\nen can\nvam os</w>\nker s\nad verse</w>\nmo il</w>\ncommod ities</w>\nwith you</w>\nsil ent\nhy pe\nan de</w>\nam ination</w>\nwhi spe\nlit z</w>\nâļ½ï¸ı âļ½ï¸ı\nri ff</w>\npp y\nlam bs</w>\ngan esh</w>\nab sent</w>\nregu lator</w>\nmarse ille</w>\nen roll</w>\npar cel</w>\nwa p</w>\nby rd</w>\nðŁĩ Ń\ntu ber\ncountry music</w>\npar l\ncontro llers</w>\nresponsi bilities</w>\nwe y\nch ate\nmontene gro</w>\nchic o</w>\nmil an\nl ms</w>\ntra inees</w>\nappropri ately</w>\nun certain</w>\npopp ies</w>\ned sheeran</w>\nnutr itious</w>\ngar o</w>\ndeut sch\nawe some\nãĥ ¼</w>\ncomfor tably</w>\nland marks</w>\net i</w>\nre usable</w>\ndaniel le\nro sal\nco les</w>\njust ic\nc cs</w>\nf anny</w>\nni m\nmc u</w>\nclin ch</w>\nat ene\nmer ge</w>\nim db</w>\nang lo</w>\nuc cino</w>\npan ini</w>\nan not\nbur berry</w>\nfeat ure\npredic ting</w>\nfashioni sta</w>\ns ask</w>\nimag inary</w>\nmm o</w>\nsouth sudan</w>\nspe ar</w>\nhu bble</w>\njo inthe\ncoyo tes</w>\nsli go</w>\nko dak</w>\nsit com</w>\npolaro id</w>\nroo ted</w>\ncorru p\nðŁĻĮ ðŁĻĮ</w>\nbris ban\nat z</w>\nah l</w>\nre my</w>\ntal ent\naval on</w>\nra da</w>\npau line</w>\nlocom otive</w>\ngo ons</w>\nne mo</w>\nmaser ati</w>\nic u</w>\nstu tt\nhistor ically</w>\nsm b</w>\npres by\navo id\nso oners</w>\nrhine stone</w>\nw ad</w>\nri sing\ntro t</w>\nmo des</w>\nreg ent</w>\noptimi ze</w>\nre ece</w>\nsm u</w>\nver ti\nnewyork city</w>\ncor tez</w>\nra c</w>\nin case</w>\nsin c</w>\nfiel ding</w>\ne tta</w>\ntiff any\nal monds</w>\nsad dle\nk rat\nmat ter\ng low\nstar ving</w>\ngl o</w>\ncra ppy</w>\nsl ur\nst d</w>\nmonit ors</w>\nrecei pt</w>\nmaymay entrata</w>\nmc il\nun is\nrain bows</w>\ncal dwell</w>\npacqui ao</w>\nj op\na fe\nhoo k\nes sen</w>\nwiz ard\nmedi an</w>\nfla ws</w>\ncom s</w>\nâĿ Ħ</w>\ning h</w>\nha ynes</w>\nanton io\ntem plates</w>\nou ter\nna w</w>\ncardi gan</w>\nbel grade</w>\nðŁĴ ī</w>\nhom o</w>\na ise</w>\nro pes</w>\nno ve\nwhat you\ntri gge\nconcep tion</w>\nad ukone</w>\nna di\nfri ars</w>\nsw er\nadju sted</w>\nhot line</w>\nsan ity</w>\nkau r</w>\ndown loading</w>\nc gi</w>\nten or</w>\neth nic\napp alach\nà¸ ¸</w>\npa g</w>\ngol ds\non set</w>\ninvestig ator</w>\ncar tel</w>\npeace fully</w>\njarre tt</w>\ncat alan</w>\npoli o</w>\nn um</w>\nfru stration</w>\ndhar ma</w>\nmy life</w>\nâľĮ ðŁı»</w>\naber deen\nmu sa</w>\nbin der</w>\nspark ly</w>\nfle eing</w>\ninstin ct</w>\nco ping</w>\ndomin ance</w>\nill ers</w>\ner a\nu conn</w>\nlo oms</w>\nliving ston</w>\ngal i</w>\nhe s\nc ma\nbel a</w>\nse ley</w>\nmon k\nla ch\nmar x\nÂ ´\nm erica</w>\nwoman in\nes sex\nra ina</w>\njim i</w>\nnep tune</w>\nz ack\nchine se\nmart ins</w>\nchand elier</w>\nher n\nwith us</w>\near l\nasph alt</w>\nmodu les</w>\nst p</w>\nul la</w>\npsychi atric</w>\nmile age</w>\ncaptiv ating</w>\nsi der</w>\nmen to</w>\nmor t</w>\ntran ce\ntal bot</w>\nab by\nì ĥ\nâľĮ ðŁı¼</w>\nj ak</w>\ndaw n\nturn up</w>\nscre wed</w>\nfe ds</w>\nblue print</w>\nðŁĴĸ ðŁĴĸ</w>\nhar sh\ner os</w>\ninsom nia</w>\nban kers</w>\nta emin</w>\nmis conduct</w>\nhu mber\ngi di</w>\nedu ardo</w>\ncon a</w>\nmusc ular</w>\nconsu ming</w>\nra sh</w>\ndon nie</w>\ndi pped</w>\ncol lie</w>\nsamu el\nmelt down</w>\nðŁĺįðŁĺį ðŁĺį\nme z\nexam ining</w>\nschwar tz</w>\npri stine</w>\nðŁĲ Ŀ\nve it</w>\nful filling</w>\nan esthe\ngue sses</w>\ndra ft\nsom me</w>\nsoli d\npati onal</w>\nho ped</w>\nevolu tionary</w>\nall er</w>\nenter tained</w>\nsli ps</w>\nlud wig</w>\nconclu des</w>\nsen sible</w>\nbon net</w>\ncra ze</w>\ntra s</w>\nhaz ards</w>\nconst antine</w>\ned ics</w>\nstar trek\nto c</w>\noccu pational</w>\nin cheon</w>\ndeepikap adukone</w>\npizz as</w>\nnew comer</w>\nde part</w>\noppre ssion</w>\nebon y</w>\nfoss ils</w>\ntro jan</w>\nel en\nste aks</w>\nk hou</w>\npositi oning</w>\nug by</w>\nred cross</w>\nak h</w>\ndol ce</w>\nus mnt</w>\npp en</w>\ndil ig\nma vs</w>\ncall er</w>\ncost ello</w>\nâĽ Ħ\ndy n</w>\nthing s\nrhin os</w>\na xi\nsar kar</w>\ncon vocation</w>\natt ers</w>\nss ss\nfun gus</w>\neu gen\nruss o</w>\nsqu at</w>\nw sb\neli on</w>\nwilliam sburg</w>\ns off</w>\ndefici ency</w>\nbe arer</w>\no kin\nkey stone</w>\nt wain</w>\ncal ming</w>\nbreak able</w>\nwa res</w>\nhorser acing</w>\ncom bs</w>\nbun ting</w>\nu it\nt land</w>\nðŁĴĻðŁĴĻ ðŁĴĻ</w>\nga stron\nsab ot\nick ers</w>\ncommissi oners</w>\nsen ate\nii ot</w>\nath ena</w>\nnit rogen</w>\nan tony</w>\nero tic</w>\ndi alo\nmis sou\nhypo cr\nâľ Ī</w>\nkaeper nick</w>\ncan v\nd roo\nclevel and\no sh\nmon sta</w>\nstefan o</w>\n^ )</w>\nsh ul\npo ison\nha e\ncommerci als</w>\nma ul\nnit ro</w>\nco worker</w>\nalo e</w>\nvap or</w>\nt ents</w>\nrussi an\nqu id</w>\nquestion able</w>\nmid get</w>\npo ker\ngirl friends</w>\nsin the\nerit rea</w>\nten ure</w>\ndepos its</w>\nbuc keyes</w>\nspot ter</w>\ntheod ore</w>\ntrin ity\njoaqu in</w>\nu cci</w>\nfollow the\ncaf c</w>\nmp a</w>\nðŁĲ »\nplo tting</w>\ndom ino</w>\nta ek\nsion ally</w>\ndicap rio</w>\npa p</w>\ncar mel\nig er\nbt cc</w>\nbeth le\nwww bigbaldhead</w>\nfoo die\nbagh dad</w>\nmason ry</w>\noff ended</w>\nà ·\nà¸ ģ</w>\nsc ro\nvers es</w>\nori ent</w>\nar ches</w>\npi yu\nknow your\ngre e</w>\nta kers</w>\ngu ard\ndish on\nbucket list</w>\nbha fc</w>\nwar dly</w>\nðŁİīðŁİ Ĭ</w>\nleigh ton</w>\npe w</w>\nstra y\nassaul ted</w>\nin hal\nly fe</w>\namar keting</w>\nl x</w>\nkat z</w>\nubun tu</w>\nme o</w>\ncarto onist</w>\nturno ver</w>\nmi z</w>\ndis like</w>\nmul len</w>\nmo f\nbl and</w>\nhi des</w>\nemer ges</w>\nchori zo</w>\ntruste e</w>\nma hog\nlan sing</w>\nparalym pic</w>\nfa int</w>\nfa una</w>\nch al</w>\nsn ar\ncat h</w>\nbent on</w>\ncast illo</w>\nsli ppery</w>\napric ot</w>\noec d</w>\nbar o</w>\nl z</w>\nhe ming\nclow ns</w>\nco workers</w>\nperu vian</w>\ncommu ters</w>\ny ell</w>\nðŁļ ´\nunder ing</w>\nv j</w>\ntt p</w>\nfli pk\nw ana</w>\nsoc ent</w>\nĤâĸ Ĥâĸ\nà¤ Ĥ</w>\noo sa</w>\njag ger</w>\ndi sm\ne less</w>\nd ham</w>\ncali f</w>\na official</w>\nec lip\nharro gate</w>\ngra pp\ncom rade</w>\nn tr</w>\nconcentr ate</w>\nthi ghs</w>\nbit coin\nbel arus</w>\në ĵ\nend uring</w>\nnow watching</w>\nindustri al\npi p</w>\nar on\nar at</w>\nÂ ®\nwhit by</w>\noooo ooo</w>\nsa ree</w>\ntic als</w>\nmis leading</w>\nyo on\nyear s\nsle igh</w>\nroman ian</w>\nsciss ors</w>\nvam pires</w>\nac up\nab ba</w>\nth weeksary</w>\ncent ri\nfl ye\nu o\nc bi</w>\nbu ena</w>\nsin d</w>\nmar ino</w>\nbur r</w>\nre building</w>\nà¤ ²</w>\nanniver saire</w>\nac ca</w>\nðŁĴĢ ðŁĴĢ\ngett ing\ntu lips</w>\nwolf pack</w>\nâľį ï¸ı</w>\nmore than\nta kin</w>\nðŁ¤ĺ ðŁı»</w>\nu be</w>\nmon ic\ndou bts</w>\nmo wer</w>\nco balt</w>\ndon ne\nspecul ation</w>\nargu ably</w>\nkak u</w>\nhtt ps</w>\nprosecu tion</w>\ndin ah</w>\nstam atic</w>\ndisclo sed</w>\nbever ly\nfl wx</w>\ncra bs</w>\nextraordin aire</w>\nwar mest</w>\nimper i\no logists</w>\ntrac es</w>\npar c</w>\nlake side</w>\nam r</w>\nter i</w>\nhour ly</w>\ndomin ation</w>\nar row\nshrews bury</w>\nance stry</w>\nwr angler</w>\ntrigge red</w>\npen sac\nroo ster</w>\nsurvi ves</w>\na on\nbo ko</w>\nval or</w>\nlove is\nla g\npe y</w>\nfo cal</w>\nout laws</w>\nbl anc\nartic ho\nwit s</w>\nmarsh all\ndie go\nsupport small\nu ca</w>\nsa h\nje et</w>\nsyn ago\ngover ning</w>\nðŁĴ ¬</w>\nsal ads</w>\ncre ate\nmiri am</w>\ncen sored</w>\nami de</w>\nno u</w>\nz eta</w>\nallegi ance</w>\n* )</w>\nbl m</w>\nric an</w>\npa stors</w>\noly mpus</w>\nblo c</w>\nwhir l\nstar ry</w>\npr one</w>\ny k</w>\np ne\ncongratul ating</w>\nbe v</w>\nso ber\nlove island</w>\nsa ir</w>\nan ing</w>\ntutor ials</w>\nq e</w>\nlun d\nin ist</w>\ncle ver\ntaxpay er</w>\nali z\nwren ch</w>\ndd ling</w>\ncap ri</w>\nh pa</w>\nðŁı» âĢįâĻĤï¸ı</w>\nna j\no j\nfuturi stic</w>\njelly fish</w>\nðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥</w>\ncel ery</w>\nplan k</w>\nfil a</w>\nne me\nun healthy</w>\nlec tions</w>\nðŁ§ ¡\nrit chie</w>\nn ws</w>\nmi kha\nwonder woman</w>\nâĢ İ</w>\nhip stamatic</w>\nka g</w>\nðŁĴľðŁĴľ ðŁĴľ</w>\npoul try</w>\nmo w\nwor ds\nlo ff</w>\nðŁ¤£ ðŁ¤£</w>\nrelat able</w>\nre mixes</w>\nkeny atta</w>\nke m\nre signed</w>\nfo d\nstra igh\nj lo</w>\nhu tch\nbox ers</w>\ncolle en</w>\nmag s</w>\ninstruc tional</w>\nko l</w>\nattrac ts</w>\npra g\naccount ant</w>\ngo ggles</w>\nbr u</w>\nth ole</w>\nmar row</w>\nleu ke\noc to\npon ds</w>\nbubb ly</w>\nhe ist</w>\nìĹ ĳ\nim p</w>\na har\nha unt</w>\nhall mark\npsy ch\nkkkk kkkk\ncol umb\njump suit</w>\ncost co</w>\nsi delines</w>\nag gies</w>\nover turned</w>\nni b</w>\nkey chain</w>\nfu k</w>\nf af\nmi am\nassist ants</w>\ncy cled</w>\nri der\ndam mit</w>\nred wings</w>\nmag es</w>\nkin s\nì Ĥ\nho d\nson t</w>\ncarol ine\n\" '</w>\ncu le</w>\nbra id</w>\nfel ony</w>\nar ities</w>\nruther ford</w>\ndepic tion</w>\nisab elle</w>\nro ach</w>\nk day</w>\nfifth harmony</w>\nem y\nli gam\nbari sta</w>\nalbu querque</w>\ngro ss\nðŁį º\noo ks</w>\nðŁĳ ¼</w>\ndun can\ntry in</w>\njag s</w>\ng ould</w>\nli tho\nâģ £\nÐ° Ð\nsam my\ntun g</w>\ncas ser\napo lo\naaaa a</w>\nman g</w>\nas ics</w>\nsh en</w>\np ye\ntur bul\nss p</w>\nsaint sfc</w>\non lin\nn anny</w>\nhe ster</w>\ndo z</w>\nà¸ Ķ\nth read\nren ts</w>\nkh and</w>\nðŁĴª ðŁı½</w>\nun conditional</w>\nrob son</w>\ncar re\nph on</w>\nsacrific ed</w>\nÂ £\nauto s</w>\npar ker\noc a</w>\nlog in</w>\nkee gan</w>\nhard cover</w>\ndough nuts</w>\nðŁĮ İ\nspit fire</w>\nrefresh ments</w>\nsaskat oon</w>\ncommod ore</w>\nj f\nrub ber\nhalam adrid</w>\nchild care</w>\nstra da</w>\nio m</w>\nri k\ndak ar</w>\nther mom\ncro pped</w>\ngar u</w>\nali k</w>\nven i</w>\ni ft\nsi ka</w>\nritu als</w>\nz ul\ne ch</w>\nÂ ©\nsu dan\nl land\ni me</w>\ndo cker</w>\nì ¤\nfe ared</w>\nfa o</w>\nwal ter\nno g</w>\nmutu als</w>\nl h</w>\nali gn</w>\nmon ia</w>\nconcep tart</w>\nðŁĻı ðŁı¼\nsco e</w>\ncompet ence</w>\nsw ine</w>\nly me</w>\nlaun ch\ngreen er</w>\nabstract art</w>\ninqu is\ngran ada</w>\nga elic</w>\nflu ff</w>\nd backs</w>\ngrave yard</w>\nba be\nacade mic\nadventur ous</w>\njoh ann</w>\n~ !</w>\nbi bi</w>\n| #</w>\npl ings</w>\ngett y\nas b</w>\nâĿ¤ï¸ı @</w>\nstaf f\nreligi ons</w>\nbang or</w>\nworld bookday</w>\nme gh\nde vin\nash ore</w>\nmeri dian</w>\ngi thub</w>\nqui z\nall stars</w>\nbe stest</w>\nir resi\nack er\ndo te</w>\nwar rington</w>\npol ly</w>\nnewor leans</w>\ncr ou\nwi gs</w>\nche y</w>\nsmithson ian</w>\nla sag\nde tour</w>\nbor is\nstra ps</w>\nmari ah\ninten tionally</w>\nko h</w>\nðŁį ¸</w>\nssi an</w>\nmar issa</w>\ncor al\nepiscop al</w>\ncasu alty</w>\ntom o\nsupply chain</w>\nsam p\non go</w>\nro o</w>\ncavi ar</w>\np fw</w>\nclau dio</w>\nbuff alo\ns ations</w>\nmat ty\nsnap back</w>\nl ds</w>\nal arms</w>\nmat te\nâĺ Ķï¸ı</w>\nconditi oner</w>\nd ors</w>\nhe x</w>\nfi zz</w>\na stri\nsus sex\nsecur ity\nqa eda</w>\nall star\ncocac ola</w>\nas one</w>\ncl icks</w>\nsc ans</w>\nmu te</w>\nhe avier</w>\nðŁİ §\nâĺ ŀ</w>\nlv l</w>\nbook boost</w>\nyoutu be\nfla shes</w>\nf jor\nc su</w>\nexplo de</w>\ndo dge\ncair n\ngonz ales</w>\nth ill</w>\npel le\nhart ley</w>\nrenew able\nre tin\ne stre\ncostar ica</w>\nshipy ard</w>\nnc fc</w>\npri ya</w>\na ghan</w>\nan ath</w>\nplu gin</w>\nco rey\nre bound</w>\nor u</w>\nkat rin\nhor mone</w>\ngi m\nmahin dra</w>\ns sus</w>\npark land</w>\nhar per\nfanta stic\ninfer no</w>\nep ilo\nwrest ling\nfe ct</w>\nc it</w>\nac oun\nto ssed</w>\nmonu mental</w>\nchar tered</w>\nbu st\npe tra</w>\nâĮ ļ\nwildflower hour</w>\nsweat ers</w>\n* .</w>\nbl er\nate ch</w>\ngo wan</w>\ndemo graphic</w>\nbra l</w>\nsuici de\nrenov ations</w>\nvu el\nsin ister</w>\nar mani</w>\nmiso gy\nph arrell</w>\nnap s</w>\nun iting</w>\ncrusad ers</w>\ncor gi</w>\ninsu red</w>\nthan i</w>\nno or</w>\ng q</w>\nd ada</w>\nbicy cles</w>\nsnu ggle</w>\nsch an\nten berg</w>\nss al\nfe mme</w>\nbo il</w>\n½ ï¸ı</w>\nre ap</w>\noccur ring</w>\nhus sein</w>\ndivi d\nsto ke\nsh alom</w>\nna ia</w>\no lic</w>\nfrustr ating</w>\nÙ ĩ</w>\nig s</w>\ngro ver</w>\nscen arios</w>\nn ds</w>\nbru tality</w>\nmed alli\nbu on\nsas s</w>\nskate boarding</w>\nony x</w>\nlor ry</w>\nny u</w>\ngau tam</w>\nmm ings</w>\ngu g\nend i</w>\nlo thian</w>\ncomm ando</w>\nchal k\nph ora</w>\nasse ssing</w>\nti gh\ncrun chy</w>\nad ay\nis l</w>\nci ara</w>\npilgri ms</w>\nkam al\np to\nbrit anni\nt ani\nsm c\nl ure</w>\napp store</w>\nab y</w>\ngolf ing</w>\ncl c</w>\nfa u</w>\nan as\nshu tting</w>\nregul ated</w>\ncarn age</w>\nscow boys</w>\nall enge</w>\nc ma</w>\nhumbold t</w>\nrel le</w>\nku mb\nher i</w>\nrefin ery</w>\nsound check</w>\nd wayne</w>\nbos nia</w>\ni sp\nthe alth</w>\nanni v</w>\nrelev ance</w>\nmy a</w>\nbag gage</w>\ndre ad</w>\ns bc</w>\nth ed</w>\nbu h</w>\nhi jab</w>\nlo id</w>\nke w</w>\nc te</w>\nrespec t\nlovel ies</w>\ncu bes</w>\ncelebr ate\ndir t\nsav ers</w>\n_ ,</w>\ngar ment</w>\npulit zer</w>\nmas jid</w>\nbeat port</w>\nal arts</w>\nencry ption</w>\ns ner</w>\nple ads</w>\nfound ry</w>\nsym metry</w>\nru mi</w>\nbirth place</w>\nscallo ps</w>\nsupp le\npivo tal</w>\nt ati\nno de\nso d</w>\npro xim\ntr ics</w>\ncol dest</w>\nbren t\nmand u</w>\ncla ir\ne ach\nand alu\nhi ddleston</w>\nðŁĲ º</w>\nmel ts</w>\nv ance</w>\npin n\nse ments</w>\nscre ened</w>\nsa chs</w>\no bl\nic ha\nâĺĺ ï¸ı</w>\nschool ers</w>\nheal ed</w>\nlo gged</w>\nðŁ¤ĺ ðŁı¼</w>\nic us</w>\nbore dom</w>\nb ish</w>\nb ffs</w>\ntal king\nsure sh</w>\nhoo kem</w>\nde on\nde fl\nei leen</w>\nðŁį ķ\nwomen intech</w>\nri sotto</w>\nrang er\nadverti se</w>\nà¸ ģà¸\ntel ly</w>\nla go</w>\ndart moor</w>\nd ong</w>\nsk ates</w>\nlo go\nun ner</w>\nmail box</w>\nma sala</w>\nlo oooo\namethy st</w>\nche wing</w>\nc bb</w>\naustrali ans</w>\nrc mp</w>\ngame art</w>\n# ...</w>\nkor n</w>\nextre mism</w>\nfruit ful</w>\nanci ent\npu bg</w>\npol ite</w>\nwh it</w>\nmur als</w>\nm gr</w>\nline man</w>\ndav ao</w>\nste ms</w>\nten nis\nav age</w>\ntu pac</w>\ngigan tic</w>\nhs bc</w>\nauto biography</w>\nup the\nà¸µ à¹Ī</w>\nre gal\nfig uring</w>\nku l</w>\nmis sy</w>\nhoo p\ngra s\nfor ums</w>\nback lash</w>\nabduc ted</w>\np nw</w>\nmin ic\nbu tt</w>\nbott oms</w>\nat on\nven g</w>\nðŁĮ ı</w>\ndel aney</w>\nprab hu</w>\nfan club</w>\nover haul</w>\nhealth ye\nsy no\naa f</w>\nren amed</w>\nkim i</w>\nun cle\nman city</w>\nse u</w>\nqu anti\neste em</w>\num in</w>\nen zo</w>\nmel vin</w>\nunder go</w>\nj har\nfar ah</w>\ncoast ers</w>\nhumph rey</w>\nmh z</w>\nchildren s\n^ .\nd hi\ndisrup tive</w>\nintegr ating</w>\nr nb</w>\nover sized</w>\na ide\nne au</w>\ndocu mentation</w>\nðŁĳĢ ðŁĳĢ</w>\npal o</w>\nhear th\nri yad\npun ctu\nabc news</w>\nsecu res</w>\nboy band</w>\nbir ch\nju co</w>\ntra ff\nlegislat ors</w>\nbay a</w>\nãĤ ¯\nno ises</w>\ncollec ts</w>\ns warm</w>\nk ner</w>\nbi shops</w>\nstur geon</w>\nsnapp ing</w>\nmo l</w>\nfre aky</w>\nchair person</w>\ntro p</w>\nlyn ch\ncar cin\nart sy</w>\ne sto\ncha i\nfl ur\ninv ali\nsau sages</w>\nim el\nj or</w>\nfun fact</w>\nwit ter</w>\npuni shed</w>\nac ons</w>\nh ya</w>\nre versi\nem c</w>\ndif fu\nz x</w>\nsp aw\ncla d</w>\nd mit\nhol land\nfre sco</w>\npay roll</w>\nab undant</w>\nstu ffing</w>\nmor o</w>\nc ny</w>\nboy cott\nwend y\nele ven\npro voc\npil ot\ntr x</w>\nbe ad\nclimate action</w>\nri on\nassi e</w>\nì ĸ\no sm\nislam ic\nho ar\ngood reads</w>\nal ici\nafterno ons</w>\nspoke sman</w>\njo lie</w>\nit as\nmasc ara</w>\nâĻ© âĻ«</w>\npre vail</w>\nbeetro ot</w>\nlu jah</w>\nk li\ndod ger</w>\nÂ »\nru le\nl n\nscre am\nho bart</w>\ncol bert</w>\nr tc</w>\ner m</w>\npat ro\nquo ting</w>\ns live</w>\nque st\nnon fiction</w>\nsemin ary</w>\nprosecu tors</w>\nve st\nexpress way</w>\ng ge</w>\nnau tical</w>\net f</w>\nðŁİīðŁİ Ĭ\ndur ation</w>\ncha ired</w>\nthe film</w>\nfab io</w>\nshe h\ncan o\nðŁĴª ðŁı»\nwith draw</w>\n! :)</w>\ncor pus</w>\nphen om\nyel p</w>\nla wn\nent om\nsnapp er</w>\nbut te</w>\npin ball</w>\npro xy</w>\nlibr e</w>\nalle vi\nn ada</w>\ngabri el\nfo wl</w>\neure ka</w>\ndaph ne</w>\ntu nes\npun ched</w>\nwh ore</w>\njo g</w>\nren tial</w>\nman ners</w>\no pe\nwh ufc</w>\ngu th\nrevol t</w>\nsne aker\nphilharmon ic</w>\nho ste\nsovereign ty</w>\nðŁĻıðŁĻı ðŁĻı</w>\nfish ing\nsci art</w>\nfe ta</w>\ni pp\ndump ing</w>\nkel own\ngir i</w>\ndig its</w>\nsal u\nsan jay\ntwee ters</w>\nsp as\ncol chester</w>\nsc ab\nma dd\nà¹ Ħà¸\nÄ ĩ</w>\nged don</w>\nmarch for\ndo p</w>\nmaure en</w>\nun plugged</w>\ndi do</w>\nfashion blogger</w>\nup a</w>\nmex ic\ntar y\npol ye\njame son</w>\nv t\ngrin der</w>\nmad dy</w>\nconsult ancy</w>\n¬ ë\nleagueof legends</w>\nac cents</w>\num ni</w>\njane iro</w>\ntu ss\nh ens</w>\nampli fier</w>\nto shi\npret tier</w>\npre vents</w>\nnew town</w>\nred wood</w>\nvant age</w>\nball ard</w>\nar tof\na she</w>\na sion</w>\nlac ey</w>\nap at\ngro ve\nà¸ Ħ</w>\nrw and\nreal tors</w>\ntra itor</w>\nbed ding</w>\nÃ¶ r\nzi on\nfla shing</w>\ncam pan\nboom er</w>\nsecretari at</w>\nab ol\nliti gation</w>\ncont amination</w>\nse dly</w>\nshred ded</w>\nin for\ndo herty</w>\nbench mark</w>\nro che</w>\nskate board</w>\nsho vel</w>\ni zz\nto pper</w>\no ster\nlaby rin\nautu m\nk ong\nhum mus</w>\nvi z</w>\ntech news</w>\nkla us</w>\nam using</w>\nsocialmedi amarketing</w>\ni des</w>\ncast ell\nste e\nunderestim ate</w>\ncal ab\npa ign</w>\nb illing</w>\nunanim ously</w>\ng mb</w>\nfly fishing</w>\nhath away</w>\ncommerci al\ncolour ing</w>\nskul ls</w>\npivo t</w>\nte p</w>\ntb c</w>\nmotor way</w>\nx press</w>\nconstruc tive</w>\npu k</w>\nunder lying</w>\nkir sten</w>\nmani ac</w>\ncha o</w>\nse ma</w>\nchiff on</w>\nðŁĳĮ ðŁı»\nver ona</w>\nkom o</w>\nstan doff</w>\nwi ped</w>\nc ated</w>\nbla ir\nwor kin\nm sc\nbethle hem</w>\nswi pe</w>\nunexpe c\npe es</w>\npe tri\norig ami</w>\nðŁĳ ħ\nmex ico\nflav or\nru dd</w>\ncannab is\nmar u</w>\nri ddle</w>\nwor shi\nsil on</w>\nsch at</w>\nap se</w>\ntang er\nbi ous</w>\ne er</w>\nquesti oned</w>\no zar\ndan k</w>\nangle sey</w>\nchar an</w>\nbak u</w>\ncompe ten\nre pri\nbat ter</w>\nsa xon</w>\ncal ves</w>\nleng ths</w>\n$ $$</w>\nâŀ ¡ï¸ı\nimmer sion</w>\nga unt\ncar ry\ncy to\nb anda</w>\nshu tt\nexperi ence\nel gin</w>\nmous se</w>\nta z</w>\nê µ\nin correct</w>\nen z</w>\nb ham\nmor on</w>\nso ver</w>\nar un</w>\nti pped</w>\nla ble</w>\nde arly</w>\nbau tista</w>\ní Ļ\nmor tal\nwoo p</w>\ndt la</w>\nsho cks</w>\ndav os</w>\nðŁĵ Ŀ\nswim wear</w>\nher man\nðŁĳĩ ðŁĳĩ</w>\nz ir\nneglec ted</w>\ngrac ed</w>\ncampu ses</w>\nav s</w>\nar ora</w>\nswach hb\nlive pd</w>\nac cra</w>\nenqui ries</w>\nshoo ters</w>\nkur t\nvancou ver\nbrad ley\ngar da</w>\ng Ã¼\nol la</w>\nattrac ting</w>\nup ton</w>\nne win\nlu mia</w>\nfurn ace</w>\nev ers</w>\ne on</w>\nsw a</w>\nroo kies</w>\na oc</w>\nv ss</w>\nbris ket</w>\ntor ch\nyo da</w>\nheart land</w>\ntac o\nph ony</w>\nfood bank</w>\nab bey\nbab ylon</w>\nu y\ngre ate\nexpre sses</w>\nd andy</w>\nsc apes</w>\nsurvi vor\nron d\ne ci\nha vin</w>\nab el\nchil dish</w>\ntor que</w>\nwav y</w>\nur self</w>\nkanye west</w>\nyear of\nale stine</w>\no brien</w>\nal fon\nsk ag\nkore an\nanchor age</w>\nval eri\nde w\nðŁİ ¨\nland slide</w>\ncar ole</w>\nchrist en\ngo phers</w>\naf i</w>\npriyan ka</w>\nq q\npower of\nit te</w>\npc so</w>\ntw ol\npr y\nintellec tu\nguer rero</w>\npi les</w>\nwish list</w>\nw ren</w>\ntime table</w>\në ı\nprodi gy</w>\ngibb ons</w>\n. /</w>\nne ur</w>\nanz ac</w>\nmur ray\nvie st</w>\npla ster</w>\nla ir</w>\nart gallery</w>\ninter continental</w>\ng br</w>\nbell ator</w>\nnam joon</w>\nmam mals</w>\nam el\ny aw\nsaras ota</w>\ncam ar\nbud ding</w>\nsum mari\naco sta</w>\nla sh\ney ou\npost graduate</w>\ninstruc tors</w>\nti g</w>\nconst ant\nwere wolf</w>\nic os</w>\ncla s\nglen n\nbud ge\nðŁĻ Ĥ\ner ta</w>\nsta ins</w>\npersecu tion</w>\ncumb ri\no ch</w>\nsyner gy</w>\nhu ang</w>\nscand in\nmid terms</w>\ncomment ator</w>\nregar ded</w>\nperpe tual</w>\nbo iling</w>\nal p\nlan ge</w>\nsch le\nfac eli\ntwee ta\nri dden</w>\nok toberfest</w>\ncharlotte sville</w>\nik lan\njo u</w>\nch atham</w>\nb sc</w>\nðŁį ¦</w>\nstra uss</w>\nmel low</w>\nxx xx\nhappy hour</w>\nre actor</w>\nww er\ndistr action</w>\nat orial</w>\nðŁĴª ðŁı¼\ntwin peaks</w>\nfay ette\na or\nko k\nbro om\nsy fy</w>\nou se\nam ag\nØ ·\nubis oft</w>\nlu lu\nhall mark</w>\nstu art\nit ya</w>\nsi deline</w>\nvenge ance</w>\nre lu\nsex ism</w>\nboun cing</w>\nun ites</w>\ngu stav\nte ssa</w>\nstu mp</w>\npro clamation</w>\nima x</w>\ndivid end</w>\ncol by</w>\nðŁį İ</w>\nplay wright</w>\nun safe</w>\nco smo</w>\nðŁĩ²ðŁĩ ½</w>\ncup board</w>\nconstitu ents</w>\nang lia</w>\nram page</w>\nðŁĺįðŁĺį ðŁĺįðŁĺįðŁĺį</w>\nthan ked</w>\ntake aways</w>\nshro ff</w>\nde bat\nkh ur\nconduc ts</w>\nformat s</w>\nà ©\nport age</w>\ngraph ers</w>\nu ten\npre m\nmo ines</w>\ncondem ns</w>\ns ous</w>\nl ps</w>\nf cs</w>\ndeal ership</w>\nleuke mia</w>\nbure au\nski d</w>\nguardi ola</w>\nca ster\nthir d\navoi ded</w>\nen cyclo\nc sr\nvi xx</w>\nanaly zing</w>\nshe ar</w>\ndulu th</w>\nshap iro</w>\nchan ting</w>\nstre sses</w>\nas be\nmil itia</w>\nãĥ ª\ncol lin</w>\narsen e</w>\nsure sh\nteach ings</w>\nyi xing</w>\nsh ill\nnu des</w>\nsv u</w>\nclear water</w>\nwar ped</w>\npro life</w>\nartist son\nit u</w>\nversail les</w>\ngalax y\nax el</w>\nspring st</w>\ncal a</w>\nhu hu</w>\nsc u</w>\ncommit ments</w>\nexe ter\npoign ant</w>\nmo tion\nconserv atory</w>\nrow dy</w>\nrec alled</w>\nmu sk\nemb elli\nso the\nâĺ Ģ\nsto pper</w>\nsch ild</w>\nto pe\nel mo</w>\nzi el</w>\nj om\nbarn sley</w>\nsnow den</w>\non tour</w>\njour ney\nhills borough</w>\npar ole</w>\nw ts</w>\nmo ving\nag ility</w>\ntiv o</w>\nff ers</w>\nkindle unlimited</w>\ng wen\nann an</w>\nah mad\ntex tured</w>\nhepat itis</w>\ndra m</w>\ninsi ders</w>\ntis sues</w>\nãĥ Ħ</w>\nfc barcelona</w>\ncr atic</w>\nna acp</w>\npe can</w>\nf gm</w>\ncustom ize</w>\nconcer t\ng sm</w>\npe g\np one</w>\njustin trudeau</w>\nsuper cars</w>\nhappy holidays</w>\nbu lar</w>\nado x</w>\nlap tops</w>\ndigital health</w>\ndestin ation\ngradu ally</w>\náĥ ¦</w>\npopp y\nss l</w>\ninhi bit\nstar light</w>\nof fro\nglo omy</w>\nx per\nhal der</w>\nim plants</w>\nle to</w>\nhass el\na as</w>\nun told</w>\nen ci\nliber ia</w>\nor an\ncon tests</w>\nil ah</w>\nsma g</w>\nsc out\nmari anne</w>\ncr yo\nschedu ling</w>\nlo s\nkan e\nstutt gart</w>\nne se</w>\nlaw rence\nda in\npho tom\ncar ou\nà¸ £\ng wy\nnational dogday</w>\nroa sting</w>\nband camp</w>\nkentu cky\nstret ches</w>\nke rel</w>\nca she\nãĤ ¸\nsta x</w>\ntran si\ndog gie</w>\nat ric\nhal le</w>\nci vic\nbrow ning</w>\nlein ster</w>\ncat day</w>\nhigh land\njoy ous</w>\nin cumb\nor lando\nro mo</w>\ncol ton</w>\ndel ta\ncar ab\nro tc</w>\naster oid</w>\ngoose bumps</w>\nmo logy</w>\nyo ko</w>\nan ds</w>\ntomor rows</w>\nred carpet</w>\nsm p</w>\nca sio</w>\nðŁ¤£ðŁ¤£ ðŁ¤£</w>\nse au</w>\nrejec tion</w>\nrot ating</w>\nbi partisan</w>\nth un\nmat i</w>\nbon i\nol l\nener gye\ndo it\nl j</w>\nmother hood</w>\nlou ise\nneck laces</w>\nel ite\nni x</w>\nl cs</w>\nen v\ngl u</w>\nle sh</w>\ncran k</w>\nsu sie</w>\nm clau\nso tu</w>\ncrow ley</w>\nrat ri</w>\nuse d\nbre ton</w>\nalfre do</w>\nye o\ntravel pics</w>\nti pp\nelli son</w>\nsax ophone</w>\nme red</w>\nheu ghan</w>\nta ine</w>\nf es</w>\nvi ro\nsuppo sedly</w>\ni as\ndige stive</w>\ny le\nli zzy</w>\nwildlife photography</w>\nbri anna</w>\nwest field</w>\nra ined</w>\nam her\nðŁĺĦ ðŁĺĦ</w>\ndistribu te</w>\nbott om\npre serving</w>\noil and\ncraf ty</w>\nde scen\ncol ling\nshakespeare sunday</w>\nr wc</w>\nang led</w>\nci an</w>\nt ations</w>\nmon tage</w>\nme yers</w>\nfrance sca</w>\nðŁĮ ·\nwi ggins</w>\nsan ford</w>\nvolunte er\ncar ra\nbar k\nvari ed</w>\npl in</w>\nam u</w>\nkap il\nrock ers</w>\nqu ind\nbr ane</w>\nin mate</w>\nent al\nimpro vis\nmichi gan\nre tweeting</w>\nprogre ssing</w>\nmercedes benz</w>\nsmo ker</w>\nphysi ology</w>\ndor ado</w>\nwatt pad</w>\nh wa</w>\nsr bachchan</w>\nw ga</w>\nvol atility</w>\nhi re\nac ap\nwn ba</w>\nhein z</w>\nstit ches</w>\nkidnapp ing</w>\nbur ys</w>\nlim b</w>\nf itters</w>\nthumb nail</w>\nton e\nmir and\ndesi rable</w>\nad dison</w>\ntar an\ntamil nadu</w>\nspec tator</w>\nsoci ology</w>\namit shah</w>\nremo tely</w>\nâĻ ¦\nham id</w>\nr ds</w>\ng lee\nsmooth ly</w>\nsch ro\ner c</w>\nlali ga</w>\nhe als</w>\nus f\nni shi\nd hu\nun il\nh le</w>\ntro mb\nbhu tan</w>\npilip inas</w>\nse ung\nwhit man</w>\nte y</w>\nmin ce</w>\nsnow boarding</w>\nre au</w>\nk ker</w>\nav o</w>\nzach ary</w>\nran veer\nti k</w>\ngover n</w>\nqu al</w>\nbeck y\nanthropo logy</w>\natt en</w>\ngrocer ies</w>\nde bit</w>\nwar p</w>\nsil icon\nhawa ii\nðŁĴ ħ</w>\npomegran ate</w>\npe er\norang es</w>\npeople schoice</w>\nend ure</w>\nðŁĴĽ ðŁĴĽ\nãĤ¹ ãĥ\nac ial</w>\na haha</w>\nstu k</w>\nimper ial\nbl ond</w>\npow der\nkno ts</w>\nvin ce\nwood lands</w>\nden a</w>\nwatch in</w>\nmat cha</w>\nma hat\ngalax ies</w>\nmiddles brough</w>\nk Ã¶\nstre e</w>\nresc ues</w>\nwal do</w>\nlero y</w>\ndesp ic\nreal ities</w>\ntm nt</w>\nha q</w>\nun o\npe c\nbolly wood\nblin ds</w>\ndesign thinking</w>\nhe ms\nand hra</w>\nab sen\nfan s\nste ch</w>\nshire hour</w>\nbla ine</w>\nshak ti</w>\npu rely</w>\nðŁı ı</w>\ntra fal\nke ynes</w>\ngr ate\nto bias</w>\nspon taneous</w>\nsatur ated</w>\ncaval ry</w>\npri sc\nðŁĺ ĳ\nwh t</w>\npas si\n~~ ~</w>\nvir at</w>\npatt inson</w>\nla o\nweir do</w>\nsym pathy</w>\nju da\nocca sionally</w>\ncred ited</w>\nstat u\nes co\nhil ly</w>\nesc ape\ndischar ge</w>\nse er</w>\nmay nard</w>\nsud bury</w>\nz lat\nor al\nwe er</w>\nencoun tered</w>\nsm elling</w>\nover sight</w>\nê ¸\nthat cher</w>\nmack ay</w>\nyou can\nfre ep\nfreed oms</w>\nprophe cy</w>\nho e\nishq ba\ndra ke\nqu its</w>\npel led</w>\ntur k</w>\no vi\nwesle yan</w>\nnew music\nleg g</w>\nch eng\nh illi\nay y</w>\npan ties</w>\nad versity</w>\nad jac\nvaccin ation</w>\nju ke\nga c</w>\nexce ed</w>\ntime sof\nsta ining</w>\nep cot</w>\nv ital\nup ward</w>\nbethe sda</w>\napar k</w>\nma hi\ncamp fire</w>\nenchan ting</w>\nrha pso\nh z</w>\nna ver</w>\nfa x\nvali dation</w>\nac ad</w>\nny r</w>\nas ym\ncoordin ated</w>\ndepar ted</w>\nall ery</w>\nvar ies</w>\nspr ite</w>\nchap lin</w>\nss occer</w>\ns wat\nbre t</w>\nrelu ct\ntunes app</w>\nsuper star\nreminis cing</w>\no co</w>\nhome grown</w>\ndough nut</w>\nun canny</w>\nla pd</w>\nthyro id</w>\n! âĿ¤ï¸ı</w>\nbotan ic</w>\nbre s</w>\nsp ade</w>\ni ste</w>\necho es</w>\ndu lil\nbur sting</w>\nqui ero</w>\nðŁĳ İ</w>\nloy ola</w>\namuse ment</w>\nha ils</w>\nsleep y\nburgl ary</w>\nâľ ı\nro gue\ncot land</w>\nmo ors</w>\nlow er\nwic ked\nðŁĶ Ĭ\ncompet iti\nargent ine</w>\nyvon ne</w>\nkarti keyan</w>\nili ary</w>\ngat sby</w>\nprecin ct</w>\nsix ty</w>\nna ji\ncam s</w>\npractiti oner</w>\nðŁĺ³ ðŁĺ³\npu ne\nneg li\njuli en</w>\ninv aded</w>\ncali br\ncla m</w>\nduba i\nmu k</w>\nlan tic\nproduc t\nfe dex</w>\nï¸ı :</w>\neu ra\ndari us</w>\ns ling</w>\nvirtual reality</w>\nhome stead</w>\nðŁı³ï¸ıâĢį ðŁĮĪ</w>\npac ed</w>\nin ha</w>\npul mon\nla zy\npremi ering</w>\nma stered</w>\nin he\ncon gregation</w>\nba jo</w>\nsport ing\nnew jersey</w>\nhor ny</w>\nlma oo</w>\nleng thy</w>\ndu t\nyo gh\nswe aring</w>\nphilosoph ical</w>\npap ua</w>\nin ski</w>\nknow les</w>\ndy ke</w>\nâĢ ²</w>\nto ken\nmc guire</w>\nri ot\nprobab ility</w>\nmc con\ngro s</w>\nsu mat\nc ite</w>\nda a</w>\non da</w>\nmad dow</w>\nche w\nboard games</w>\nspar ked</w>\nre claimed</w>\nad hd</w>\nny se</w>\nimwith her</w>\nequ inox</w>\nboo ths</w>\nbalsam ic</w>\nha zy</w>\ndor chester</w>\nag os</w>\nse aw\nmoder ator</w>\nseri ea</w>\nander sen</w>\npilgri m</w>\nâŃĲ âŃĲ\nitch en</w>\nhal li\nx ton\nnathan iel</w>\nmun ition</w>\ncelesti al</w>\nga f</w>\nzo om\nmark le</w>\npen thouse</w>\ncal e</w>\ns fa</w>\nbar king</w>\ntu cket</w>\nem ery</w>\ncal orie</w>\nli que\nad ar</w>\nmc nam\ntor tilla</w>\nwood pecker</w>\nmo town</w>\nbad ger\nayr shire</w>\nscram ble</w>\ndd ay\ncra ziest</w>\nper rie</w>\ncho co</w>\ncast e</w>\ni ot\nwre cked</w>\nselec ting</w>\nuss r</w>\ngra ft</w>\npun t</w>\nlab ou\nir st</w>\nba ek</w>\nÛ Į</w>\nsu ki</w>\nque u\nach at</w>\nte ster</w>\naug mented</w>\nwc vb</w>\nsin ks</w>\nðŁĵ »\nra ke</w>\ninter ne\nbe cause\nbelle vue</w>\nune arth\nlight en</w>\nðŁĺ £</w>\nturn around</w>\nlabe led</w>\nunemp loyed</w>\ntwitter kurds</w>\nle ia</w>\nh ye\ngreat er\nðŁĲ İ</w>\ntim ed</w>\ni red\ne tt\nlimit ations</w>\ncab e</w>\ns out</w>\nbee ch\nanni hil\nre trac\nyo ona</w>\nang er\nden nis\nsupp lying</w>\ndi z</w>\n\" (</w>\nsc ur\ngun man</w>\nsu ho</w>\nsauvi gnon</w>\nà¸ ¥</w>\nwi ley</w>\nland on</w>\nchoreo graphy</w>\npre historic</w>\nðŁı ĥ</w>\nvar gas</w>\nassess ments</w>\npinn acle</w>\ndi i</w>\nchamber lain</w>\nì Ī\nv p\npresent ers</w>\ndeut sche</w>\nsun shine\nsal utes</w>\nr one</w>\nbu siest</w>\n- .-</w>\nmotor ists</w>\nhemi sphere</w>\nal wx</w>\nps p</w>\now a</w>\nden ying</w>\ncho c\ngu tier\nhan uk\nmus kete\njait ley</w>\nse wage</w>\nt ame</w>\nthin kers</w>\nshi m</w>\nse quo\npap ar\nmiddle east</w>\nk wa\nke g</w>\npatag onia</w>\nno y</w>\nbar Ã§a</w>\ntake off</w>\nhe a</w>\nà ¬\nn sc\ng dc</w>\nðŁĳ Ī\nmou stache</w>\nmel ania</w>\nthr a</w>\nâ¬Ĩ ï¸ı</w>\npier ced</w>\nze us</w>\nfon ts</w>\nber a</w>\nit iner\nq atar\ncontr ary</w>\nire land\ni fy</w>\nou los</w>\ncommun al</w>\nfin s</w>\nun paid</w>\npa a</w>\nðŁĳĩ ðŁı»</w>\nri os</w>\nou p</w>\nf iller</w>\ncafe teria</w>\nà¸ Ń</w>\nkas i</w>\ncali ber</w>\nz ulu</w>\nv sco</w>\nts ford</w>\ndragon fly</w>\nsmo kin</w>\npi st</w>\npsycho logist</w>\ndiplom at</w>\nwe bs</w>\nbuc cane\nà® ¾</w>\nmotiv ational\ndu ne\nba e\nc fs</w>\nwith out\ner on</w>\ni ac\nate e</w>\npen sion\nfra zier</w>\nen sis</w>\nsk is</w>\npar ting</w>\nger y</w>\nterrit ories</w>\nnach os</w>\neni ght\never lasting</w>\nmsd honi</w>\ntel e</w>\nsp un</w>\npo di\nsab ah</w>\nenviron mentally</w>\nce ase\nbeau mont</w>\nmar ta</w>\nkel vin</w>\nho ff\nsun il</w>\nn da</w>\nco b</w>\nsh ale</w>\nree dus</w>\nun boxing</w>\nu bio</w>\nre opened</w>\nn all</w>\ncapsu les</w>\nmar r</w>\nhimalay as</w>\nswee ter</w>\nja z</w>\nf mr</w>\ntwee ter</w>\ndha ka</w>\nna u</w>\nde mi\nd fs</w>\nta urus</w>\nfad ing</w>\nit utes</w>\nci p\nover flow</w>\njef frey\ndon ny</w>\ncar tunesapp</w>\nðŁį ĳ</w>\nprefe cture</w>\ndanc ed</w>\nc pt</w>\nple asing</w>\nital k</w>\nearth quakes</w>\nul ation</w>\nhi o</w>\nãĢ ĭ</w>\nant an\nnutri ent</w>\nde ere</w>\nselec ts</w>\nenrich ment</w>\nr iti\ntram pol\nbl amed</w>\nj ia</w>\ncontribu tors</w>\nchesa peake</w>\npi geons</w>\ntribun al</w>\nmad uro</w>\nw su</w>\nilo ve</w>\neffici ently</w>\ndar cy</w>\nwar ms</w>\nar ra\nec u</w>\nho wer</w>\nstrugg led</w>\nrajini kanth</w>\nðŁĺ¢ ðŁĺ¢\nhou sing\nstr at</w>\neli x\ndisp ro\nraf fic</w>\nthi erry</w>\nna sty\nc fb</w>\nstaf fing</w>\nal ma\nback ers</w>\nhen son</w>\nsky walker</w>\nreale state\nroo s</w>\nness y</w>\nchan ce\ncair ns</w>\nc ci\npe dal\nly ft</w>\ncross word</w>\nwait er</w>\nonly in\nkru ger</w>\nk ir</w>\nalej andro</w>\ncar tier</w>\ncar rera</w>\nre paired</w>\nou at</w>\nun clear</w>\nun breakable</w>\ntoday in\nqu eries</w>\njo dy</w>\ngen ital</w>\nwin ner\nto l</w>\nkelown a</w>\nfascin ated</w>\nãĥ ¬\nsris ri</w>\nsqu ared</w>\nspr ung</w>\nnegoti ate</w>\npriv ately</w>\nav en</w>\n>> >>></w>\ng ical</w>\ngav in\nchester field</w>\nzu mba</w>\nor r</w>\nnat alia</w>\nimpeach ment</w>\nmn l</w>\ncar at</w>\ncriti que</w>\ncredi ble</w>\ntrac y\ntan i</w>\nmusi k</w>\njig saw</w>\ngam bia</w>\ntol kien</w>\nfe u</w>\nas per\nsav ory</w>\nfo xx</w>\nf itt\nmar lon</w>\nl rt</w>\nv ell</w>\np br</w>\nimprison ed</w>\ni om\nchu l</w>\nwind shield</w>\nkay e</w>\nba a</w>\nchor d</w>\ns art</w>\nal gon\nminister ial</w>\nnat geo\nla zio</w>\nnor ms</w>\nðŁĳį ðŁĳį\nlic king</w>\nfut bol</w>\nun sung</w>\ndalla scowboys</w>\nsh red</w>\ndistur b\ndev ine</w>\nbe ards</w>\nch f</w>\nb day\nro sso</w>\nig or</w>\nay i</w>\nsi ren</w>\nk air\nsti les</w>\nro f\nmag nets</w>\nun cover</w>\nmou se\nbang ing</w>\nsi ghted</w>\nspe ople</w>\nimpac t\nrow land</w>\nkir a</w>\nenviron ment\nlove the\np sis</w>\nmish ra</w>\ngl endale</w>\nca jun</w>\no che</w>\nde ception</w>\nsex ist</w>\nstra ws</w>\ns ga</w>\nbuff er</w>\napost le</w>\nsp l</w>\npop up</w>\nðŁļ Ĺ\nr g\nup er</w>\nball in</w>\ni dy\nocca sional</w>\nnational park</w>\nðŁı Ĭ\nu an</w>\ninnov ation\nà¸ «\nte aparty</w>\nre tte</w>\ncounter fe\nb ha</w>\nrec s</w>\nig en</w>\nðŁĮ Ĳ</w>\nhumming bird</w>\ncu r</w>\nha ven\nla zar\npue blo</w>\n: :\nzi onist</w>\nop ath\ninver ness</w>\npromo ter</w>\ncarto on\ncabine ts</w>\nmahog any</w>\nsurve ying</w>\nr ational</w>\nfeel ing\ntesti fy</w>\nso w</w>\noc on</w>\nà¸ ¢</w>\nne el\nmar is</w>\nsol itary</w>\nche mo\nrad cliffe</w>\nsim ons</w>\nros ary</w>\nnew er</w>\njo die</w>\nre tali\npra wn</w>\npad dy\nhen ge</w>\nk ala</w>\nim plant</w>\nat y</w>\nbren twood</w>\npar adox</w>\nene z</w>\nre designed</w>\np our\nwy d</w>\nal de\nà¯ ģ</w>\nsol d\nbiomed ical</w>\nà¹ Ĥ\ntt tt</w>\nmat teo</w>\nys er</w>\nnew ton\nde bun\nner dy</w>\nloo l</w>\nwo on</w>\nelisa beth</w>\nec c</w>\nwh i</w>\nach o</w>\nsalv age</w>\nsal aries</w>\nqu ity</w>\nnavig ating</w>\noph thal\ncon soles</w>\nre built</w>\no pec</w>\nast ers</w>\nsho red\nset list</w>\nkathr yn\nrhy mes</w>\nre visiting</w>\nash ish</w>\nli ft\nre post\nsole il</w>\nâı ±</w>\nweal th\nsa at\nwe c</w>\nking james</w>\nflipk art</w>\nfield work</w>\nse gu\nmo dal</w>\nbu b</w>\nare rs</w>\nðŁį Ĵ</w>\nclo oney</w>\npad dington</w>\nnecess ity</w>\nguth rie</w>\npen te\nli mo</w>\njo sie</w>\nar tin\nen c</w>\nl hs</w>\nbetra yal</w>\ninfo graphics</w>\ni er\nmo a</w>\nhear ings</w>\nbon jour</w>\nsym bolic</w>\nag ro\nwed ges</w>\nkrist ina</w>\nwild flower</w>\nathle tic\nphotograph y\npe sh\nca hill</w>\nchi lean</w>\ngou l\nfi oren\nðŁĳ ¶</w>\nz il</w>\nsk im\nbad oo</w>\ndeli a</w>\ntre ble</w>\nn cc\nðŁĩ¦ ðŁĩ\na house</w>\nbul lock</w>\nsol itude</w>\nØ§Ù Ĩ</w>\ncan cers</w>\nfutureof work</w>\nhu tch</w>\nwater shed</w>\nwar mongers</w>\nsp illed</w>\ncolom bo</w>\nmo th\nassoci ations</w>\nweigh ed</w>\nglobal goals</w>\nnot just\nchrist i</w>\ntor g</w>\nswe ating</w>\nman eu\nclu sters</w>\nâĢ¼ï¸ı âĢ¼ï¸ı</w>\nta ped</w>\nul y\ntru sting</w>\nyu suf</w>\nte in</w>\nra b</w>\n, ,,,</w>\nsin ai</w>\naudi ble</w>\nexplic it</w>\ncro wns</w>\nsch iz\nat least</w>\nðŁĹ £\nde bra</w>\nje suit</w>\nene gger</w>\nz hen</w>\none sie</w>\ni it</w>\nss f</w>\ngur gaon</w>\nchak ra</w>\nbear cats</w>\nk ran\nk awa</w>\nreque sting</w>\nhan over</w>\ng end\nsor os</w>\nmer cy\nlovel y\ndo omed</w>\ntim my</w>\nku z\nul l\nab ram\nsa ison</w>\nãĥ «\nclean ers</w>\nre mo</w>\ncircu its</w>\nbar red</w>\no th\nmo ist</w>\nmadele ine</w>\ngall o</w>\nu j\nper mits</w>\nhea viest</w>\ncar ols</w>\naz te\ngior gio</w>\nflo ats</w>\ndecl aring</w>\nus rc</w>\nmin at</w>\ncraf ts\npri ma</w>\nconven i\nnickelo deon</w>\ndanc ing\nceremon ial</w>\nblo gg\ntw p</w>\nanglic an</w>\nshe k</w>\nk nick\n( ((</w>\nhubb ard</w>\nharve y\nhit man</w>\nfen g</w>\nwe some</w>\nfor za\ns word\nop us</w>\nbro m</w>\ngi bility</w>\nz al</w>\nm unch</w>\ndance hall</w>\ngre edy</w>\nhd mi</w>\nre birth</w>\nðŁĺĭ ðŁĺĭ</w>\ns world</w>\nfigur ine</w>\ncom post</w>\nk f\nengra ving</w>\ngior no</w>\nst ana</w>\nk man</w>\nham ster</w>\ncompos ers</w>\naj e</w>\nfunc tionality</w>\npol k</w>\nis ons</w>\nair planes</w>\nte se</w>\nhor rors</w>\nmusc at</w>\ngi ven\nsp ence</w>\nðŁĩ¸ ðŁĩ\neli ot</w>\nach illes</w>\nfre ck\ncrypto currencies</w>\nsou ther\nhal o\nbor neo</w>\npolit ic\nhahahaha h</w>\nup state</w>\nsi ena</w>\nobsc ure</w>\nhau sen</w>\nlloy d\nhappy friday</w>\nmotor bike</w>\nbon a</w>\nameric as\nhol s</w>\n- (</w>\nspor ty</w>\nun aware</w>\nreven ues</w>\nchristop her\nbank sy</w>\nav an</w>\nev apor\ncom press\neyel iner</w>\nto dos</w>\nbuff y</w>\nrenewable energy</w>\nly rical</w>\nar chan\nrapi st</w>\nfair trade</w>\nlma ooo</w>\nbeat z</w>\npro active</w>\nla pse</w>\nir ical</w>\nrevers al</w>\npo de\nmcin tyre</w>\nmac au</w>\nãĥ ķãĤ\nnash grier</w>\nf sa</w>\ng all</w>\nçĶ Ł\nperpe tr\nil ya</w>\nconfigur ation</w>\n% ;</w>\nstr ange\nrac i\nà¸ ĩ</w>\npic kups</w>\nkov sky</w>\nmam mal</w>\nw ps</w>\ng able</w>\ncompar ative</w>\nz h\nsave our\nda vey</w>\non etsy</w>\nmu ssels</w>\nmis er\ncri stina</w>\nelectr on</w>\ncra ve</w>\nlo ren</w>\nprecipit ation</w>\nm z</w>\nðŁį «</w>\nvin cen\nsnow board</w>\nno ida</w>\nah n</w>\nmarin ated</w>\ng tr</w>\ntown hall</w>\nmin is\nbethe l</w>\nadv an\nsu ra\nshi el\nfur ry\nðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ</w>\nlyn d\nso il\nsc ence</w>\nsen eca</w>\nshar jah</w>\ndick ens</w>\ncredenti als</w>\nav ar\nper k</w>\nrequ iring</w>\npre fer\nj ian</w>\nde ca</w>\nr ach</w>\ning for\ndel e</w>\nbe ep</w>\nðŁĴ »\ncis ely</w>\nhu ddle</w>\ngreen sboro</w>\nhaw king</w>\nho ax</w>\nhang ar</w>\nç ľ\nmis o</w>\nlo vin\ngre ta</w>\nab ad\nlogi e</w>\nat an</w>\nsnow flake</w>\nmahe sh\nfear the\nal kal\nbobb lehead</w>\nba hn</w>\nju dged</w>\nfu tu\nfeli x\nðŁį ĵ</w>\npi ke\nder iv\nnotic es</w>\nau er</w>\ndis super</w>\nor da\nwi pes</w>\nam ino</w>\nstri kers</w>\nfoo tb\ndram as</w>\npun ching</w>\nscore less</w>\nheming way</w>\nbi h</w>\nbal lad</w>\nchat ter\nam mo</w>\nkle in\nfabric ation</w>\nkari m</w>\nz end\nhi sto\nvol ta</w>\nrock y\nmarke ter</w>\nxtre me</w>\nsequ encing</w>\nparadig m</w>\ncle ats</w>\nboom ing</w>\nâģł âģł</w>\nblock ade</w>\npromp ts</w>\nyogh urt</w>\npur pose\nnu r</w>\nregu late</w>\nnois y</w>\ning rid</w>\nbird watching</w>\nbar tender</w>\nÙ ĥ\nwor dof\ncha otic</w>\nshor ty</w>\nel dest</w>\nz app\nonceupon atime</w>\nfl yo\nrit os</w>\nmike quind\nðŁĲ ´</w>\nregi stering</w>\n. ]</w>\nad ol\ngg gg</w>\npur ge</w>\nkid lit</w>\nar bor\nval ves</w>\nsynago gue</w>\no th</w>\nunanim ous</w>\nveri fication</w>\ndar rell</w>\nãģ Ħ\nvander bilt</w>\ntape stry</w>\npro sper</w>\ndid dy</w>\ndra fting</w>\nde cep\nmarqu is</w>\nst int</w>\nmichael jackson</w>\npee led</w>\nmen us</w>\nbb b</w>\nsc are\nema il\nwri gley</w>\nit is\nf ell\nsome thin</w>\nbar ra</w>\ned gar\ndi pping</w>\npu ddle</w>\nsla de</w>\nlear ner</w>\njal en</w>\nðŁ§ Ĳ</w>\nthe daily\nmikequind azzi</w>\nju x\niq bal</w>\nmckin ney</w>\nra iser</w>\nef an\ndr one\ncat o</w>\npic ket</w>\ncro we</w>\nl att\nuk o</w>\ngiuse ppe</w>\nhin i</w>\nsynthe si\nponti fex</w>\nsong writing</w>\nto d</w>\nswit ches</w>\ndin ners</w>\nh q\ngabri elle</w>\npensac ola</w>\ncir cle\nexpo ses</w>\nev s</w>\nriyad h</w>\npro men\no ck\nsa j\ncit ation</w>\nbrew co</w>\njo si\nep aper</w>\ndri f\npoint less</w>\ntang led</w>\ncri pp\nline ups</w>\nfairi es</w>\ndaz e</w>\nmour n</w>\nbla dder</w>\nsal z\nbur undi</w>\nbook mark</w>\nthe people</w>\nsub sequ\nprinci pal\nsk er</w>\ncourt ney\na oki</w>\nrac ers</w>\nad m</w>\nmom a</w>\ncritical role\nhou n</w>\nshed ding</w>\nsa ka</w>\nace ous</w>\nmck ay</w>\nhus bands</w>\nÂ ½</w>\nme da</w>\naccu sations</w>\nro sel\nnc is</w>\nwitne ssing</w>\nor ama</w>\ngo ds\nhil ton\nel man</w>\nÃŃ n</w>\nmeg ap\ncra ven</w>\nannoun cer</w>\ncrit eri\nsheffiel dissuper</w>\nmilit ant</w>\nconsu l</w>\nhoo ded</w>\naby ss</w>\nb x</w>\nma dam\nlo cu\nmary am\nmanic ure</w>\ngrat is</w>\nac tresses</w>\nros ario</w>\nthis dayin\nking ly</w>\ngn ome</w>\ncel ine</w>\nr ous\nhe el\nlil ac</w>\nvish al</w>\nab h</w>\nthor ns</w>\ns ls</w>\nne al\nconstruc ting</w>\nbe ren\ns lang</w>\nma ins</w>\nfar ra\nsar ko\npai ge\ngu iller\nl ala</w>\nice berg</w>\nnou n</w>\nplann ers</w>\nu mmm</w>\nou ses</w>\nill ary</w>\nma an</w>\nbox ing\nzi pper</w>\nsrin agar</w>\nmigu el\no str\nmp o</w>\nresponsi bly</w>\nlan terns</w>\nappli ance</w>\nx b</w>\ngren ade</w>\nneglec t</w>\ndy sle\nham mock</w>\nne ctar</w>\nwit cher</w>\nr gv</w>\ndi ence</w>\nser bian</w>\nseed ed</w>\ncru z\nbi sh\nsp he\ne q</w>\nsky rim</w>\nalge bra</w>\nphil ately</w>\nbungal ow</w>\nge off\ny ves</w>\ndemand ed</w>\nconsider ations</w>\nthe vamp\npawan kalyan</w>\nco ded</w>\ngrit ty</w>\nerup tion</w>\nse infeld</w>\nuni denti\nëĭ Ī\nwor m\nac us</w>\nse ung</w>\ndun g</w>\nro land\nsu d</w>\ndi visions</w>\nab lanc\nshor test</w>\nj f</w>\np oun\nplant based</w>\nbe to</w>\ntough er</w>\nmc o</w>\ndon et\nmark us</w>\nv fl</w>\nðŁı ł</w>\nopen ing\nco ward</w>\ncaber net</w>\no xi\nburle sque</w>\nsand ra\nsu mo</w>\nconsi st</w>\ntho t</w>\ncay man</w>\nmotor ola</w>\ngutier rez</w>\nd slr</w>\ny w\nno bel\nnov ice</w>\nmoms demand</w>\ngrun ge</w>\nsp or</w>\nd cc</w>\npre sses</w>\nsli st</w>\nallot ment</w>\nvoc ational</w>\nft c</w>\npu ja</w>\nlo ven\nutt arak\ntan dem</w>\nsh ep\ncome dians</w>\nanat om\ncant wait</w>\nhealthye ating</w>\nwest side</w>\nmar gins</w>\nchi ang</w>\nasbe stos</w>\nstupi dity</w>\nproble matic</w>\nfit bit</w>\n: $</w>\nceil ings</w>\nshu a</w>\nprotec tions</w>\nbio tic</w>\nbeng ali</w>\nre sts</w>\nbien nale</w>\ntim o</w>\ncul min\ne minent</w>\naffe ction\nunbeliev ably</w>\nindividu ally</w>\ncanvas sing</w>\nwh itt\nnov asco\nchin son</w>\nh pe</w>\ngo w</w>\ngloucester shire</w>\npa o</w>\nthresh old</w>\nchev ron</w>\ns ine</w>\nwe ther\npp ie</w>\naqu ino</w>\nantwer p</w>\nâĸ ¬\npo on\ninst af\nequ ine</w>\ncinemato graphy</w>\nnbaf inals</w>\nvali ant</w>\nkil kenny</w>\nte rence</w>\nsyste mic</w>\nsr l</w>\np ound\nmade ira</w>\npl ough\ntre cht</w>\nmat ed</w>\nmp d</w>\nransom ware</w>\nph in</w>\nli qui\nbb ce\nboom er\ni standwith\ncon ju\nr te\nnar a</w>\nfoo lish</w>\nda shing</w>\nvier nes</w>\nbr ite</w>\nda u</w>\njuni per</w>\nai da</w>\nyou now</w>\nra zer</w>\nde i\nrepe ating</w>\ncomfor ting</w>\nadjac ent</w>\ne to</w>\nca sted</w>\nchat ur\nmu er\nsyn th\nsan itary</w>\nmac le\nindepend ent\nlaw ful</w>\ne erie</w>\nh or</w>\nðŁĴ Ń</w>\nam rit\nvel o</w>\nstation ery</w>\nmu f\nmay may</w>\ncontempl ating</w>\nelabor ate</w>\ngre gor\ndri es</w>\nac col\nà¸ ļ\nschwarz enegger</w>\nill nesses</w>\nday break</w>\nfollow back</w>\ncollu sion</w>\nelectr onic\njo vi</w>\nhiro shima</w>\nta w\nhom ec\nmic ah</w>\nqu itting</w>\nfro sting</w>\nben fica</w>\nhel i\ns ical</w>\npic cad\ncorpor ate\nment orship</w>\nyou are\nsing er\nshi va\nru ne\ning er\nri um</w>\nplay able</w>\ndoo p</w>\nwil low\nter re\nni p\nat d</w>\nwar bler</w>\nprofession ally</w>\ner ase</w>\nproce ed</w>\npedestri ans</w>\nmis chief</w>\nben ding</w>\nalas kan</w>\nc kett</w>\nmo p</w>\ndd les</w>\nshut ter</w>\nge ared</w>\natene o</w>\nma deline</w>\ng ations</w>\no sha</w>\nder ick</w>\nsw ild\nan gry\npat ents</w>\nhun k</w>\ndecre ased</w>\nfr y\nðŁĴĸðŁĴĸ ðŁĴĸ</w>\nsal on\nquant ities</w>\nd ario</w>\nni gel\nku ma</w>\njen n\nhapp ye\nxx x\nrex perience</w>\npro s\nau sch\nrele ssly</w>\nham burger</w>\nfuku shima</w>\ner ne\nstat ec\nren d\nmay field</w>\nj one\nlef ty</w>\nbern stein</w>\nsm il\ngener ates</w>\nfore station</w>\nband its</w>\nta yo</w>\nr ca</w>\nac ci</w>\nrodri go</w>\nkn app</w>\nelo vers</w>\nvege tation</w>\nu ral</w>\nle ft\nħ ï¸ı</w>\nworl dre\nsur i</w>\nembar k</w>\nw son</w>\nba you</w>\nmu ller</w>\nmo vers</w>\nðŁķ º\npresby ter\nl f\ncre e\nbat b</w>\nsal am</w>\ndemonstr ations</w>\nan ec\nn pc</w>\nit ics</w>\nto graphy</w>\nre inst\nthur st</w>\ntal e\noff ences</w>\nsmart city</w>\nbro tha</w>\nofthe year</w>\nin valuable</w>\near n\nðŁĳı ðŁı½</w>\nkre mlin</w>\ngra dy</w>\ntown fc</w>\nguern sey</w>\nma ha</w>\ncontag ious</w>\ndre x\nbe en\n( Â£</w>\nnati vity</w>\nk tm</w>\nsomer halder</w>\ncomp ounds</w>\níķ ĺ\n\" âĢ¦</w>\naf g</w>\nott news</w>\nh ound\nfire fly</w>\ncil an\ndonet sk</w>\nvolunte ered</w>\nak ira</w>\nè ª\nsing ul\nst h</w>\ndro wned</w>\nmand o</w>\nhe ir</w>\nðŁİīðŁİ Ī</w>\ntax is</w>\ny uki</w>\nvel d</w>\nk ans</w>\nel k\nran ts</w>\nhash tag\nt eng\nro g</w>\na at\ngru b</w>\ne ber\nin india</w>\ncolo ssus</w>\nsig ni\nso ever</w>\nmile stones</w>\nder o</w>\ndifferen tial</w>\nphu ket</w>\nmaster mind</w>\nan gh\nmel ani\nbro ker\nactor vijay</w>\nstun ned</w>\ncontinu ity</w>\naf fl\nvo cal\nperenni al</w>\nfianc Ã©</w>\nin complete</w>\nhun ts</w>\nre issue</w>\ndomin ates</w>\ntur meric</w>\nro am</w>\nri on</w>\nbag ged</w>\nnas sau</w>\nfu t</w>\nx ox</w>\nnational trust</w>\njo ye\nsan o</w>\nhearth stone</w>\ndis respect</w>\nle es</w>\nh se</w>\nsiber ian</w>\noffe e</w>\nre stock</w>\nwolf gang</w>\nre gan</w>\nplan o</w>\nun wind</w>\nre par\nmil le</w>\n] ,</w>\nskul l\nfat ally</w>\nconcep tual</w>\nðŁĮ ²\nf Ã©\nber to</w>\nb ms</w>\nu a\nmag na</w>\nnotre dame</w>\nle te</w>\nla undering</w>\nheartw arming</w>\nbuffe tt</w>\ngo at\npe abo\nwind mill</w>\nv ac</w>\ncontinu ally</w>\naz alea</w>\nmem brane</w>\ncan cels</w>\nmake yourown\nathe red</w>\np to</w>\ntor pe\nðŁĺ ł</w>\nðŁĴ §</w>\nsc ares</w>\nle aking</w>\nz et\npix els</w>\nac i</w>\nkh il\nmarath i</w>\nðŁĻı ðŁı½\nu la\ntam u</w>\nchandi garh</w>\nz agre\naa b</w>\npronoun ced</w>\naubre y</w>\nsand er</w>\npun ta</w>\nhar low</w>\nic elan\ncelebr atory</w>\nso t</w>\nunci ation</w>\nstru ly\nmc dowell</w>\ndeepi ka</w>\nremin ders</w>\nmy stical</w>\nct c</w>\nchat ted</w>\ns ica</w>\nbar gains</w>\nch hat\nru bin</w>\nm net</w>\noiland gas</w>\npel ican</w>\no at</w>\nmor ality</w>\nk our\ni h</w>\nnu clear\ngc u</w>\nric her</w>\nvene zia</w>\nm ma\nle ith</w>\nac company</w>\nrich mond\nsports net</w>\nba ahu\nsmu ggling</w>\nmm i</w>\nðŁĩ®ðŁĩ ª</w>\ntwi sts</w>\nsahi b</w>\n.... .\namb itions</w>\nil lo\nhistor ical\nfo rec\nshow biz</w>\npon ies</w>\nchas ers</w>\nremo del\nwill ing\nprince sses</w>\nam ple</w>\ncushi ons</w>\nac les</w>\nlot r</w>\nda ch\nan the\nin corporate</w>\nnew bury</w>\nki ri\nfried rich</w>\nab v</w>\nball ers</w>\nalber t\nðŁĳ Ń\nlet i</w>\nnan op\nci de</w>\nanal o\nn sf</w>\n)) ))</w>\ngriffi ths</w>\nvalen ci\nro ano\nfun run</w>\nbabys itting</w>\nca day</w>\nent re\nu ck</w>\nslu g</w>\ntic al\nthe sims</w>\nro ar\ncar ney</w>\ng am</w>\nsto we</w>\nfi d\nbun ny\nsham rock</w>\npe cu\nmol ina</w>\ngo cougs</w>\ncon tributes</w>\ntransform ation\nmo y</w>\nv aj\nsever y\nantioxid ants</w>\nthir teen</w>\nsight seeing</w>\nl j\nreversi ble</w>\nodd ly</w>\nhoo kah</w>\nnou vel\nhal al</w>\nfe i</w>\nstab les</w>\nmul t\nho pped</w>\nbra ids</w>\ninter change</w>\nghana ian</w>\nww ww\neth no\ncon junction</w>\nago v</w>\nye ti</w>\nearth and\nts p</w>\ncon serve</w>\nheir loom</w>\nmetaph or</w>\nwoo f\ntor io</w>\nself less</w>\nn wa</w>\nem ilia</w>\nyl ene</w>\ny xe</w>\ngi ar\nmoder ating</w>\npro bz</w>\nb fi</w>\nne er\ndu mmy</w>\nhanuk kah</w>\nwe bber</w>\nk v</w>\neye brow</w>\ndag ger</w>\nsu mp\nra ges</w>\nork ney</w>\ntb o</w>\nhal sey</w>\nassign ments</w>\ntr onic</w>\nscri b\nco on\nan war</w>\n# âĢİ</w>\njal ape\nflori da\nqu aid</w>\nhaw keyes</w>\nâĻ¡ âĻ¡</w>\nstreet car</w>\nro g\ndat lantic\ngran ola</w>\nun changed</w>\nexpect ation</w>\nÙ ĩ\nmar lin</w>\ngu mmy</w>\nðŁĻı ðŁı¾\nawareness month</w>\noil painting</w>\nmu th</w>\nper ch</w>\njun to</w>\nvilla gers</w>\nmor g\nche ated</w>\nweb comic</w>\nthe future</w>\nd ps</w>\nla kings</w>\nmen tioning</w>\nvo or\nident ities</w>\naccor d\nmc gu\nl pga</w>\nrum our</w>\nmassi vely</w>\nm pls</w>\nheal y</w>\nd ate\nsp oli</w>\nre visited</w>\non t\nal and\nscru tiny</w>\nlakel and</w>\nbl ending</w>\n< /</w>\nan kara</w>\njami edor\nmetab olic</w>\nf ences</w>\nann y\nå ħ\nsemic on\noo tt</w>\nspace ship</w>\nwack y</w>\nle ta</w>\nap ac</w>\nshe e</w>\nin herit\ndo res</w>\nðŁĩ¨ðŁĩ ¦\ngent e</w>\ntw ick\nri ms</w>\ngal ve\nde ville</w>\nking fisher</w>\nscorpi o</w>\now l\nal ar\nvari an</w>\nðŁĹ ĵ\nvene tian</w>\nstar dust</w>\nthen orth</w>\nq ing</w>\nhar rington</w>\nconsul ate</w>\nspectac le</w>\nho bbs</w>\ntur ks</w>\ngre er</w>\nmat ing</w>\nðŁİ Ģ\nðŁĮ Ģ</w>\ndirec ts</w>\ní ĭ\npompe o</w>\nvo iced</w>\nla os</w>\ntz u</w>\npro me\npri sm</w>\nmer c\nfortun ately</w>\nbc fc</w>\nmcdon nell</w>\nnot sorry</w>\nsmi led</w>\nt ba</w>\nfor war\nmid term</w>\ndar by</w>\nwe instein</w>\nup grading</w>\nwol ff</w>\nbron co</w>\ncab ello</w>\nðŁ¥ ĩ\nfi able</w>\nshar pe</w>\nbat tered</w>\nsat o</w>\nmyth ical</w>\ninstap ic</w>\npre pped</w>\neni um</w>\ne spo\ndi aper</w>\nexplan ations</w>\nwho pping</w>\nragn ar\npe el\nantibio tic</w>\nl acks</w>\nharri son\nli sm</w>\nau l</w>\nqu ail</w>\nmartin a</w>\nsent encing</w>\nsc ams</w>\ndi di</w>\ntr onics</w>\nãħł ãħł</w>\ngo ff</w>\nza in\nparam ore</w>\ncha ined</w>\nclin ton\nli ff</w>\ncott ages</w>\nem on</w>\nreve rend</w>\nconsu mer\nce an\nt any\nlum pur</w>\ne bay\nsto ol\nðŁĺ» ðŁĺ»\nta pro\nh ath</w>\nmodern art</w>\njust ine</w>\nprover b</w>\napp y</w>\ntra x</w>\nmani fest</w>\nam bu\nnai k</w>\npe pp\nr sd</w>\nmer chants</w>\nkitch ener</w>\nshi fted</w>\nli zz\nâĺħâĺħ âĺħâĺħ\nâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶ\nuto pia</w>\ntom o</w>\nou ted</w>\ncom ers</w>\nchiroprac tic</w>\nbook club</w>\ncin dy\npro hibition</w>\nse uss</w>\në¯ ¼\nthin kin</w>\nrr rr</w>\ngo fund\nt ack</w>\nom b</w>\ncatastro phic</w>\nling u\nguild ford</w>\nbo td</w>\nà¥ ĭ</w>\nplan ter</w>\n^ ^\nwin k\nkath mandu</w>\nsto ppers</w>\nsmooth ies</w>\nre efs</w>\nhin d\nbell amy</w>\nĦ ë\nwaste water</w>\nvo or</w>\nnat l</w>\n! ]</w>\nre el\ny ap</w>\nscoo by</w>\nwork space</w>\ncorin thians</w>\nbl un\nobli gation</w>\ng bbo</w>\ndy son</w>\ncra vings</w>\nell ington</w>\ndap l</w>\nwre xham</w>\nearthand clouds</w>\nuk runchat</w>\npositi oned</w>\nkal b</w>\nfour square</w>\njo ck</w>\nim pending</w>\neven ing\nath y\npro claimed</w>\nc ites</w>\nann apolis</w>\nsan i</w>\nmar th\nir l\naccom mo\nka a</w>\nfin a</w>\ny aa</w>\ndi sper\nec ar\nbha k\nwill y\nðŁĺĢ ðŁĺĢ</w>\nmcder mott</w>\nmo j\ngener ational</w>\nu said</w>\ntrain ing\nlon ely\nlo res</w>\nimpe cc\nâĢ Ĳ</w>\nbeav ers</w>\nma ki</w>\nhe b</w>\naap l</w>\nå ı\nwolver hampton</w>\nleader board</w>\nme u</w>\nc fa</w>\neaster n\nhu r</w>\ncivil war</w>\nou rage</w>\nhor ned</w>\nle high</w>\nawar ds\nevi dent</w>\ngi gab\nr ous</w>\nma del\nro byn</w>\nur gently</w>\nk ors</w>\nen as</w>\nheis man</w>\nbam bam</w>\nfab ian</w>\nf om\nevalu ating</w>\nassemb ly\nout sourcing</w>\nhun tsville</w>\nðŁĶ ª</w>\njusti fied</w>\ncashi er</w>\nsp aper\nbuc keye</w>\nanaly tical</w>\nillumin ati</w>\nau tho\no j</w>\nsha de\ngeel ong</w>\nwh ey</w>\nhe aton</w>\nterri bly</w>\nele k\nun charted</w>\nsd live</w>\nmoto cross</w>\nher mes</w>\ndar shan</w>\ndar lington</w>\ncash mere</w>\ngri pping</w>\ncilan tro</w>\npun ish</w>\n... :</w>\nðŁĴ Ħ</w>\ninst ance</w>\nder i\nlo bal</w>\nmuk her\nsp ar</w>\nthin ker</w>\nfre mont</w>\ncom piled</w>\ncolor ado\nvig ne</w>\nsm d</w>\nwhe ad</w>\nvilla ge\nle ek</w>\nformula e</w>\nta res</w>\npersist ence</w>\n?? ????</w>\nped ago\nhe z\nalzheim ers</w>\nvul ture</w>\noff ence</w>\nis great</w>\nsuff ra\nkick in</w>\nh mmmm</w>\nbroad way\nï¸ı @</w>\nart i</w>\nalli son\nendor ses</w>\nry u</w>\nlolli pop</w>\nsoy bean</w>\nkend all\ncer a</w>\ninv ade</w>\n( ðŁĵ·:</w>\nconver ter</w>\ncar pets</w>\nho bo\nfr it\npe ac\nes qu\nern an</w>\nou f</w>\nan il</w>\ndi ffer</w>\nch ing\nbre cht</w>\nsp g</w>\ndaven port</w>\nstra va</w>\nsever n</w>\nn gos</w>\nstor ians</w>\nfe te</w>\nparame dic</w>\nj hb</w>\nal amo</w>\nsne aking</w>\ngold coast</w>\nroof s</w>\nisi l</w>\ndepic ted</w>\nprojec tions</w>\nnu mb\no ss</w>\nep i</w>\nglu cose</w>\nzid ane</w>\ninfin iti</w>\níĺ Ħ</w>\nran som</w>\nton ics</w>\nfal k\ng ler</w>\nou tw\nre ss\nweek ly\nthe on</w>\nn ole</w>\nðŁĩªðŁĩ º</w>\nvol ley</w>\nsum mar\nneg ativity</w>\nsam son</w>\nye w</w>\naus votes</w>\nju l\nju dy\nf art</w>\npra yed</w>\npal ate</w>\nmulticul tural</w>\ndouble header</w>\ncycl ones</w>\npier re\nãģ ¨\nâĺ łï¸ı</w>\nrt w</w>\nconver ting</w>\nwir ral</w>\nl ari\nir relevant</w>\naustin mahone</w>\nan che</w>\nya an</w>\nsd f</w>\n$ .</w>\nexplo ding</w>\nulti mate\nprof ici\ngofund me</w>\ncell ence</w>\nep stein</w>\nbul lied</w>\nsep tic</w>\nà® ¤</w>\nlu mber</w>\ncu ff\nvsco cam</w>\npl or\nà¸ ¥\nse ok\nro to\nvenezu elan</w>\nsor ta</w>\nspir ited</w>\ndaniel padilla</w>\nteam sisd</w>\nradio active</w>\nicelan dic</w>\nðŁĴ ¤\nver e</w>\naccommo date</w>\nshi pp\not ter\nol ina</w>\ne go\nsu la\nsan antonio</w>\nde as</w>\nsimil arities</w>\nâļ ¾</w>\ny om\nbro ward</w>\nå °\ncan cun</w>\nveri fy</w>\non te</w>\ncandle light</w>\nìł ķ\ninf ants</w>\naz am</w>\nðŁĺ °</w>\nle ven</w>\nun stable</w>\nbloom ington</w>\nx ford</w>\ncon tour</w>\ny p</w>\ninnov ator</w>\nhistor ies</w>\npo y</w>\nlolo lol</w>\nex pires</w>\ncat alo\nbill boards</w>\nan ab\nel ic\nnovasco tia</w>\nfa ire\nìĿ ´</w>\nrock well</w>\ngr ille</w>\naz tec</w>\njoh or</w>\nur struly\nfi ren\ndun lop</w>\nid le</w>\nport man</w>\njo es</w>\ntx hsfb</w>\nhol m\ncham ele\nunder world</w>\nlo ss\nti em\ntherap ists</w>\npast ure</w>\npa ste\ning now</w>\nvul can</w>\nra gon</w>\nlar kin</w>\no shi</w>\nho co</w>\nchild hood\numb rel\nsuccess or</w>\nkath y\niz en</w>\n° ï¸ı</w>\nshare holders</w>\nol ga</w>\nai b</w>\nhe ap</w>\nfl aming</w>\nro u</w>\nair tel</w>\nrat t</w>\nz ane</w>\nvo w</w>\nthor ough</w>\nsn ag\npar th</w>\nun conscious</w>\nve y\nnew release</w>\ngh ee</w>\ncroati an</w>\nfacilit ating</w>\nswan son</w>\nastor ia</w>\nto logy</w>\nmaster y</w>\nðŁ¤ ĳ</w>\nbil bao</w>\ntrou pe</w>\nthe ori\nchey enne</w>\nro tt\nshore line</w>\ngra sso</w>\nmaster chef</w>\n+ )</w>\nvi x</w>\nellen show</w>\nas g</w>\nan ak\nku ya</w>\nsafar ilive</w>\ndebu ting</w>\nblu m</w>\nlist ener</w>\nv ins</w>\nbook shelf</w>\nsmart cities</w>\nmakeyourown lane</w>\n; ;\nðŁĲ ¯\nri zz\non ward</w>\nbull dog\nbear ish</w>\nvir uses</w>\nfri gh\nlin den</w>\nwe iser</w>\nsn t</w>\ngon a</w>\ndre sden</w>\nfl anders</w>\ncu k</w>\nwheel ing</w>\nba u</w>\natu esday</w>\nsurf ers</w>\nswi ft\nmc call</w>\narbitr ation</w>\naw d</w>\nmon c\nb ine</w>\nat x\nre fr\nmi ro\npo sey</w>\nn are\nrit ter</w>\nâģ ¦</w>\nplay book</w>\nblow out</w>\nsports manship</w>\ns oooooo</w>\nmalay alam</w>\ngri ms\nbur bank</w>\ninfin ity\nsar gent</w>\noit nb</w>\njoseph ine</w>\nski pping</w>\npar kin\nexcur sion</w>\nsemin ars</w>\njo har</w>\npar tridge</w>\npost game</w>\nll ll\nblan che</w>\ntemp ting</w>\nm na</w>\nlu ka</w>\nis ers</w>\nto ffee</w>\nbar ron</w>\nhe mmings</w>\nsa e</w>\ngo hawks</w>\ncu pid</w>\nli mbs</w>\ncon se\nun common</w>\nz ada</w>\nhead shot</w>\nso ils</w>\npione er\nmam ma</w>\nsem itic</w>\npan dey</w>\njamiedor nan</w>\nspl its</w>\nvel a</w>\nson i\nra ff\nt mobile</w>\nâŀ ĸ</w>\npra wns</w>\nlit er</w>\nenjo yment</w>\negg plant</w>\ntu b\ncultur al\nus ic\nsuspici on</w>\nsy cam\nsumm ed</w>\nma du\nho ck\nup wards</w>\neye ing</w>\nri ve</w>\nassas sins</w>\nâĤ ¬\nout fy</w>\nchi ves</w>\nt ner</w>\nla is</w>\npor ridge</w>\nsad dest</w>\nw cc</w>\nvick i</w>\nsna ils</w>\nbiz italk</w>\nmill an\nðŁĮ į\nsam oa</w>\nj ing\nmi key\ngu j\nchel ms\neli gibility</w>\narma da</w>\nthro p</w>\nsurger ies</w>\nãĤ ¿\nmo hawk</w>\nex its</w>\nme m</w>\nis lington</w>\nc me</w>\nland fill</w>\nkait lyn</w>\nðŁİ ¼\ncombin ations</w>\ntomorrow land</w>\nver b</w>\ncor a</w>\npre cisely</w>\nna om\nðŁĨ ķ</w>\nshr ink</w>\nsof tly</w>\nmerce de\nmand el\npoo dle</w>\nball erina</w>\nsop h</w>\njux ta\ny at</w>\nary an</w>\nhesit ate</w>\nlo wered</w>\ngu lar</w>\ndungeon sand\nron an</w>\nmy ri\nsp f</w>\nmen opau\ngra sp</w>\npa thi\nfe asi\nfla w</w>\nshi story</w>\nste ward\ngg le\nfay re</w>\ncli que</w>\ncredi bility</w>\nyo g\nsec tion\nmu sko\nse ville</w>\nno tt</w>\ncal m\nmate o</w>\nindic ted</w>\nfi ba</w>\nby l</w>\nlin o</w>\nu kin\n!! #</w>\nenig ma</w>\nsiri us</w>\nbu sc\nðŁį Ĭ\nmac kerel</w>\npsal ms</w>\na at</w>\ntomorrow spaper\nðŁĺ ĸ</w>\np fc</w>\n........ ...</w>\nshre k</w>\nmul let</w>\no sh</w>\ndanger ously</w>\nimmen sely</w>\nam ur\nðŁį Ĥ\npro por\nsy a</w>\nlondon marathon</w>\nabo ve\nobli gatory</w>\npro v</w>\nra cha</w>\nalex is\npri mary\nsh h</w>\nether net</w>\nd stv</w>\ncou gar\nun lucky</w>\nni l</w>\nsteak house</w>\nmel a</w>\nfc bayern</w>\ncause way</w>\nca therine\nfluore scent</w>\nnx t\nto kyo\nau sp\nreleg ation</w>\nqui zz\nshored itch</w>\nproud tobe\npromo s</w>\ninter acting</w>\nhome brew</w>\nda esh</w>\nw pg</w>\nstead ily</w>\nprovin ces</w>\nbal lots</w>\ni ah</w>\nal to\n< <<</w>\nyou u</w>\nri ley\nprefe rence</w>\ntra verse</w>\nincen se</w>\nam munition</w>\nho dges</w>\n# @</w>\nhail state</w>\ntart an</w>\nwitch craft</w>\nvent ilation</w>\nliber tarian</w>\n! âĢ¦</w>\now es</w>\n% !</w>\nong chang</w>\nbru shing</w>\nle ic\nfi ber\nunder attack</w>\ndown load\nex pir\nhy o</w>\npompe y</w>\nmc bride</w>\ny ag\nstre e\ncom bat\nten ding</w>\nai ra\ngug gen\nab ra</w>\nin na</w>\nfli ps</w>\naw al</w>\nm ach</w>\ndol lar\ninspir ations</w>\nz um</w>\no du\nit ty</w>\nvideo game</w>\naqu aman</w>\nhar u</w>\nbel fast\nje b</w>\nbut ch</w>\nus gs</w>\ncalcu lus</w>\ngo yal</w>\nmor gen</w>\nx finity</w>\nstand up\ncontrac ep\nsab re</w>\nna be\nin secure</w>\ngener ously</w>\nepit ome</w>\nl w</w>\nt ca</w>\nnarr atives</w>\ndon nell</w>\npand as</w>\nber gh</w>\ntu t</w>\nker al\nfel icity</w>\nbr ampton</w>\nquinte t</w>\nnom ore\nðŁĶ ĳ</w>\nlo i</w>\nalham dulil\nðŁĶ¥ ðŁĶĹ</w>\nston er\nshaw l</w>\nclin ical\nbren dan\ngon e\nfla wed</w>\ntri ppy</w>\nj g</w>\nal location</w>\npo aching</w>\nve vo</w>\nmo cks</w>\nlef tist</w>\nbon uses</w>\ncondem ned</w>\nabil ity\nst ating</w>\nmicrobi ome</w>\nbio logist</w>\nfor you</w>\nwahl berg</w>\nss or</w>\nift ar</w>\nw ul\nÑĦ Ð¾ÑĤ\npom er\nme me\nver te\ntre ll</w>\ntra it</w>\nin let</w>\nhormon es</w>\ndeliber ately</w>\nvill ar\nbattle ship</w>\np bl</w>\ntw enti\nho kies</w>\ndal ail\nsay a</w>\nmay fair</w>\nhan s\ndie ts</w>\nâľ¨ âľ¨\nod in</w>\nhot spur</w>\npap i</w>\nk ana</w>\nk amp\nfin na</w>\nflo tus</w>\nti ans</w>\nunic orns</w>\ntribe ca</w>\nchang ers</w>\nfore ground</w>\nout a</w>\ninv aders</w>\ngett ys\ntomorrowspaper stoday</w>\nmac millan</w>\nhand written</w>\nw fp</w>\nu de</w>\nstate of\nbase d\nâĺģ ï¸ı</w>\ncas m</w>\npsy ched</w>\nhistor ians</w>\nfol d\nd da</w>\nag grav\np ans</w>\ngreen way</w>\nau sv\nðŁĺ ¶</w>\nshradd ha\ninde x\nbe sti\nzim mer</w>\nt ness</w>\neye shadow</w>\not te</w>\ngo ts</w>\ndistribu ting</w>\npro min\nyo l</w>\nace a</w>\ntram rahim</w>\nhoo per</w>\nsupre me\njam min</w>\nintu itive</w>\nquali fications</w>\nsli m\nsid di\njay ne</w>\ntri pping</w>\ng tx</w>\npun s</w>\ne manuel</w>\nom g\nmid summer</w>\nin to\nsuccul ent</w>\nri en</w>\nnew mexico</w>\no or</w>\nhoo king</w>\nin f</w>\nðŁ¤ Ŀ</w>\nflir ting</w>\nna hi</w>\ng friend</w>\nt ps</w>\nhel ix</w>\nz s</w>\non ie</w>\nct f</w>\nkri s\nirresi stible</w>\nfla p</w>\nðŁĳıðŁı» ðŁĳıðŁı»\nus wnt</w>\nru d\nram ps</w>\npin oy</w>\not w</w>\nlol z</w>\nlow ering</w>\nfavor ite\nt mc</w>\nphra ses</w>\nher mi\naver aging</w>\nem br\nben o\nestu ary</w>\nsle eve\nribb ons</w>\nta sh\nà¸ ¹</w>\nx f</w>\naw gs</w>\nsun ited</w>\nbrew eries</w>\nanir ud\npun ches</w>\nol die</w>\nip ads</w>\nwi fey</w>\nland lords</w>\nd ji\ngun ner</w>\níķ ´</w>\ntex an\nex op\ncas sandra</w>\ns off\nðŁļ «</w>\nigh ton</w>\nbak ers\nawareness week</w>\nv all</w>\near p</w>\nbts bbmas</w>\napologi zes</w>\nâļĵ ï¸ı</w>\nwas ps</w>\nstates man</w>\nsnat ch</w>\nwatch dog</w>\nra fi\nafter party</w>\nspi ke\nj er</w>\nperi ph\nr nc</w>\nmu ll</w>\nle en\nshi es</w>\nli eu</w>\nurstruly mahesh</w>\nmer ton</w>\nde sai</w>\nshi f\nðŁĮ ±\npe dic\ngos ling</w>\narrang ing</w>\nww g</w>\ngen y</w>\nyou uu</w>\nnetfli x\ne ttes</w>\nk wi\nbernar dino</w>\nam iga</w>\nØ ¨</w>\nkashmir i</w>\nt ings</w>\nemer itus</w>\nde cat\nab domin\ndc i</w>\npha ses</w>\nd jan\nbe am\nop ry</w>\ni shed</w>\nthe ellenshow</w>\nthe st</w>\nhabit ats</w>\nto ons</w>\nmclau ghlin</w>\nri pper</w>\nmicro biology</w>\ntal aga</w>\nclu eless</w>\nss u</w>\ncro che\nbro mance</w>\nlonge vity</w>\nzagre b</w>\nprev ented</w>\ntra ve\nspo ilt</w>\ndarry l</w>\nmigra ine</w>\nal cat\ndd dd</w>\nvi v</w>\nser pent</w>\nmat tel</w>\njam a</w>\ncon quest</w>\nî Ħ\nsam sung\npresbyter ian</w>\nket ch</w>\nfire fox</w>\nmo tif</w>\nle c</w>\ncho pping</w>\ncher no\nj ann\nðŁĲ °\npro lon\nwake up</w>\nconver gence</w>\nmersey side</w>\nheart broken</w>\nlo oming</w>\nhal lucin\nmai ze</w>\ncommun ism</w>\nmo h</w>\ntwitter storians</w>\nserge y</w>\nres eller</w>\nfavor able</w>\ned gy</w>\nre iter\nmal aga</w>\nlive me</w>\nka hn</w>\npul sion</w>\nbig g</w>\nkim kardashian</w>\nati o</w>\ntyr anny</w>\nru ption</w>\nq ant\npro ven\nby z\npu shaw\nkri stin\ne er\ntar dis</w>\nri z</w>\nawak en</w>\nmi ko</w>\nun documented</w>\npath finder</w>\nindirec t</w>\nresemb les</w>\nh ler</w>\nconce aled</w>\nscand al\nre im\nd nb</w>\ncr itters</w>\nattend ant</w>\napprentice ships</w>\naa u</w>\nscre amed</w>\nl su\nfa h</w>\nhar bour\ned d</w>\nbat sman</w>\nli ss</w>\nmi sha</w>\nspani el</w>\nit f</w>\nadvan cement</w>\nfa c</w>\nclose up</w>\ncecil ia</w>\nmedi c</w>\nnarcis si\nlav ish</w>\ngi ac\nma ys</w>\nle it\nwine wednesday</w>\npushaw ard\nlet to</w>\ncurren ts</w>\nbug atti</w>\nout ine</w>\nw j</w>\nun do</w>\nler osis</w>\ndevo tional</w>\nðŁĳ «</w>\non na</w>\nfais al</w>\nsa una</w>\nhimach al</w>\nam ii\nà® ®</w>\ndi zzy</w>\nscreen writing</w>\nph x\nsp n\nick i</w>\nag irl</w>\nfi shes</w>\nwb z</w>\npi m</w>\nbo ar</w>\nac id\n! ..</w>\nrocke feller</w>\nn ga</w>\ndra stically</w>\nsimpli fy</w>\ndru mming</w>\nautum nal</w>\ngur mee\nlor de</w>\njo ann\ngive up</w>\nb our</w>\nam ura</w>\nder land</w>\nsim pler</w>\nwat son\ntri dent</w>\nconcor dia</w>\nbel lum</w>\nbre k\ndum plings</w>\nvi on</w>\ndungeonsand dragons</w>\nsp ri\nascen sion</w>\nwil datlantic\nu st\nrob ins</w>\nlegi on\ninsi st</w>\njar o</w>\ngue ss\nso b</w>\nbigh it</w>\npool side</w>\nnegoti ating</w>\nmc gill</w>\nbil d</w>\ntechn icians</w>\nmiti gation</w>\najay devgn</w>\nb to</w>\nant en\ncosmo politan</w>\nðŁĺĬðŁĺĬ ðŁĺĬðŁĺĬ\npatri oti\ntemp er</w>\npromen ade</w>\nnav ajo</w>\nnam m</w>\nwrink les</w>\ndc fc</w>\nle ach</w>\nbru nette</w>\nr f\ncout inho</w>\nal ti\ntradition ally</w>\nop tome\nna z</w>\naccord ingly</w>\nrec ard</w>\nde ets</w>\nsw ell\npo sure</w>\nwhit ening</w>\nstrang er\nilli on\nhere ford</w>\nu wu</w>\nro bber</w>\ncotsw olds</w>\ncl en\ngor ge\nnam aste</w>\nre lish</w>\ngri ff</w>\nadren aline</w>\nbla sio</w>\nval e\nê ²\ntoler ate</w>\nrail minindia</w>\njen sen\nho ven</w>\nel lu\nob sole\neisen hower</w>\nunidenti fied</w>\nthan niversary</w>\nbody guard</w>\nØ ¯</w>\ni dge</w>\nsch al\nstock port</w>\nsn i</w>\nre taining</w>\npo po</w>\npix ie</w>\noli thic</w>\nki er</w>\nha jj</w>\nsa z</w>\ncor bin</w>\n!!!! !!!!!!</w>\nv it</w>\nme gat\nde h</w>\ncircu it\naf fleck</w>\ntheore tical</w>\nhope less</w>\nu ab</w>\nslu mp</w>\nb ice\njam med</w>\nlet stalk</w>\ncan i\nside ways</w>\nlabyrin th</w>\nre fs</w>\nha hn</w>\njare d\nðŁį ¹</w>\njam bo\nph yl\nenhan cement</w>\nc tr\nful lest</w>\nse ye</w>\ndo ba</w>\ncho ic\nyo s</w>\ncb j</w>\nandr Ã©</w>\nre watch</w>\npri ma\ndoctr ine</w>\nfor gets</w>\nu hm</w>\nar ound\nu le</w>\nart lovers</w>\nshi raz</w>\nhar th</w>\nex tor\nÅ ¡\nunexpec tedly</w>\neli us</w>\ny x</w>\nem my\nse ac\nðŁĳĩðŁĳĩ ðŁĳĩ</w>\ncorrec ted</w>\ncom bu\nwom anc\ncou gh\nwhat son\npubli shes</w>\ndivers ity\nback bone</w>\nlock down</w>\nmesmeri zing</w>\nnor te</w>\nma b</w>\ndesig ner\ní ģ\nra gh\nmole cules</w>\nget outside</w>\nthe beatles</w>\nsemicon duc\nnach o</w>\nlun es</w>\nham mers</w>\nsul tan\no on\nfe ren\natt ach</w>\nar qu\nuttarak hand</w>\ns ash</w>\n; -\ntre ad</w>\ni ko\nar thur\nscandin avian</w>\nr ation</w>\nga el</w>\ncharge able</w>\nfish y</w>\nv ma</w>\nhand bags</w>\nchar a</w>\nay ne</w>\nde fam\nsett lers</w>\nqad ri</w>\npal ais</w>\nin wx</w>\napocaly ptic</w>\npoo ja</w>\na es</w>\nat ories</w>\nproof ing</w>\nn lp</w>\nts la</w>\nv ina</w>\nli do</w>\ndee phouse</w>\ninformat ics</w>\nv v</w>\npp ings</w>\ndi ss</w>\nÃ ¯\nuhur u</w>\nst ony</w>\nbetra yed</w>\nb aff\nmy ra</w>\nas pen\nallow ance</w>\ntam ara</w>\nci f</w>\ncor bett</w>\nser ge</w>\ndi go</w>\nambi gu\npain ters</w>\np cr</w>\np ca</w>\nnom s</w>\nlo ft\nve e\nopend ata</w>\nðŁĲ ±\nalex andre</w>\nidenti fies</w>\nfantasy football</w>\nre production</w>\nbrom ley</w>\nware agle</w>\nmm er\np ss\ncu es</w>\nay at</w>\nhut chinson</w>\nsar ac\njack man</w>\nira h</w>\nap ink</w>\ncol s</w>\naussi es</w>\nex ecs</w>\nday ton\nðŁĻ Ĩ</w>\nim v\nhar am\nchuck le</w>\nauthent icity</w>\nar do\nincub ator</w>\nà¸ ª</w>\nphoto shopped</w>\nembrac ed</w>\nfight for</w>\ngor man</w>\nzz zz\nschol astic</w>\ncri sps</w>\nte apo\nmid night\nga ine\ncol lier</w>\ns ate</w>\nde tte</w>\nå Ń\nimag ine\ni ff\ntw ili\ni fication</w>\nteat ro</w>\nnor ma</w>\nes ur\nemergen cies</w>\nrise up</w>\nr inger</w>\nhass le</w>\ncait lyn</w>\ntranqu il</w>\nvers a</w>\nse b\nover look</w>\ngin i</w>\nbo go</w>\nse re\nmay ne</w>\nhenri k</w>\ncontamin ated</w>\nrhapso dy</w>\npro portion</w>\nwildatlantic way</w>\nâģ© .</w>\norganis ers</w>\ntran e</w>\nstand ard\nsper m</w>\nlaun cher</w>\nric ci\nher ts</w>\npaper work</w>\nshowcas ed</w>\nmer yl</w>\npen a</w>\np imp\ndisa strous</w>\n^. ^</w>\nphar a\nx is</w>\nfron tal</w>\nsw irl</w>\nsp ills</w>\nswag ger</w>\nsmart watch</w>\nsizz ling</w>\nsavi our</w>\ncat ar\nbb cr</w>\nrefurbi shment</w>\ndr is</w>\ncitro en</w>\nabsor b</w>\npatrioti sm</w>\nil leg\nchro mo\nfresh ers</w>\nru s\nlim iting</w>\nef ish</w>\ndown ed</w>\nman dir</w>\nhazel nut</w>\np all\nmac on</w>\ndisappear ing</w>\nquali fies</w>\nbo on</w>\nbar racks</w>\nam ine</w>\ngen dere\nðŁļ ĺ</w>\nj es</w>\nãĥ Ń\nqu ito</w>\nmiddle weight</w>\nsch au\nquad ru\naci ones</w>\nlimit less</w>\nðŁĳĮ ðŁı½</w>\nch man</w>\nar av\nregulat ors</w>\nit up</w>\nbatter sea</w>\nmil ford</w>\ng z</w>\ntic king</w>\ngh ou\ncru shes</w>\ntu tu</w>\ndread ful</w>\nfam ine</w>\nfor change</w>\ndalail ama</w>\nðŁĴ į\nwhit aker</w>\nhash mi</w>\nh us</w>\nvo d</w>\nbet te</w>\naa ah</w>\niso o</w>\nðŁ¥ Ī</w>\nha ar</w>\nla ine</w>\nb v</w>\nall day</w>\nspr out</w>\nindie games</w>\nfree bie</w>\ngree ks</w>\nbut ler\nill in</w>\nha al</w>\nware ness</w>\nsi ma</w>\npublic health</w>\ngam a</w>\nwa a</w>\noun g\ngoo oo\nokin awa</w>\noff enders</w>\nim pose</w>\nho c</w>\nyoung ster</w>\nstory teller</w>\nsc ap\nfigh ter\n+ ,</w>\nwhit es\nmusic monday</w>\nre za</w>\ngo ducks</w>\nbri a</w>\nmi um</w>\ncas per</w>\ncru mbs</w>\na ad</w>\nmarti alarts</w>\nch p</w>\nri gged</w>\ntn g</w>\nharve sted</w>\nsa k</w>\ndo jo</w>\nmill wall</w>\nb nw</w>\noc d</w>\nhistor yof\nt mr</w>\nsi rens</w>\nfan ci\ncaregi vers</w>\nvir a</w>\nson i</w>\nrecur ring</w>\nacknowle dged</w>\nðŁı Ł\noph ile</w>\nbu cky</w>\nstre ssing</w>\nroo k</w>\ndi gger</w>\nvi val\nsan do\nfle et\nsi ers</w>\nsel caday</w>\nrefre shed</w>\nanti fa</w>\na que\npo lo\ndisappear ance</w>\nde mb\nâĮļ ï¸ı</w>\nren ted</w>\nber ger\ng mb\ncu la</w>\nss al</w>\ngoo dy</w>\nu hh</w>\nmarcel o</w>\nw anna\nsoft ware\nshop small</w>\nturt le\ntom as\nfri sco</w>\nðŁĺį ðŁĴķ</w>\njim enez</w>\nc su\nday z</w>\nan do\nwyn ne</w>\nchoreo grapher</w>\ncerv ical</w>\ntrail blazers</w>\ned g\nzend aya</w>\ntravel blog</w>\nel s\nwhole some</w>\nco g</w>\nlab out\nar ney</w>\ndel le</w>\nsu isse</w>\nma si\nine se</w>\nom be</w>\nfi ddle</w>\nre claim</w>\npa u</w>\nwat cher</w>\nsla in</w>\nber ty</w>\nopti mum</w>\nel ites</w>\nmin is</w>\ntur key\npatro ls</w>\nger ard\nau reli\nwild ly</w>\nwal tz</w>\nbr gy</w>\nw ob\ncre st\n+ ++</w>\nve z\nfro sted</w>\ndavi do</w>\nthe x\nparam edics</w>\np into</w>\nhan k\ndu pont</w>\nur g</w>\nfo stering</w>\nmicro poetry</w>\nspec tre</w>\n---- ></w>\nne uro</w>\nfri da</w>\nmusic al\ngalve ston</w>\ne ffic\nsc ape\npal azzo</w>\nth all</w>\npro visional</w>\np js</w>\nau re\nðŁĶ ľ</w>\nmam amoo</w>\nkit ties</w>\ncre e</w>\nwa k</w>\nlo ool</w>\nlu pus</w>\ncn blue</w>\nÃ º</w>\nðŁİ ¬\nrac ed</w>\ntro se</w>\nom as</w>\nstri de</w>\nco ors</w>\nâ¤ µï¸ı</w>\nin comparable</w>\ncy ril</w>\nbroad er</w>\narec lipse</w>\nðŁį Ķ</w>\ninter val</w>\nti ru\nco working</w>\nw aco</w>\na ham\na bee</w>\nflouri sh</w>\nthe times</w>\nol ini</w>\nkick boxing</w>\nlu cer\nat la\nas un\ncasser ole</w>\nmi aw</w>\nlobb ying</w>\njan ice</w>\ncir que</w>\nre flex</w>\nle ary</w>\nsanat omy</w>\ntem pest</w>\nse mb\nmur dering</w>\nus av\nro bo</w>\non et</w>\np cc</w>\nnati ves</w>\nlife of\nsa ha\nruth less</w>\nrel ates</w>\nappeti zer</w>\npye ongchang</w>\nnor d</w>\ner u\na thing</w>\nug ly\npl ying</w>\nbran ce\norgan ise</w>\nkend ra</w>\ndat o</w>\nchees es</w>\npar ma</w>\nburn out</w>\na stra</w>\npre toria</w>\nadjust ment</w>\nuk u</w>\nsl o</w>\nli ken\nfav ors</w>\ncli ve\nbe ets</w>\nsnow donia</w>\ngo tv</w>\nsy n</w>\nopen house</w>\npan i</w>\nportra yed</w>\nsl ated</w>\nme cca</w>\nren al</w>\nsupportsmall streamers</w>\nstaf fs</w>\nda o</w>\nbi ker\nvik tor</w>\ntit us</w>\nadmi red</w>\nðŁĵ ±\nhurric an\nhe ats</w>\ngl ory\nphoto genic</w>\nmer i</w>\nde por\nburn ham</w>\nor angu\ndj ing</w>\nimpre ssionism</w>\nign ition</w>\nca i</w>\nw ynn</w>\nde pe\ncove ted</w>\ncolla gen</w>\nsau s</w>\nor nam\nadministr ators</w>\nss on\nnh politics</w>\nhahahaha hahahaha\naspir ations</w>\nr gb</w>\nswol len</w>\nso we\nsc r</w>\ndiver gent</w>\nhou ghton</w>\nhan oi</w>\nd ory</w>\nni ki</w>\nland ry</w>\nb cci</w>\nðŁĳĮ ðŁĳĮ\nis mail</w>\ntri pod</w>\nher d\nbhat t</w>\ndress age</w>\ntab by</w>\ningu ish</w>\nhur on</w>\nà³ į</w>\nÃ ł\nto das</w>\nevangel ical</w>\nchor ds</w>\nst john\nslo ppy</w>\nmarty r\nface book\nali ght</w>\nsen sei</w>\nkath niel</w>\nr ites</w>\nzi one</w>\nu o</w>\nrevel ations</w>\nweight lifting</w>\npan o</w>\nnc wx</w>\nac ton\nà® ķ</w>\nØ ²\nsom a</w>\nà¸ Ĺ</w>\nrespec ting</w>\nmar che</w>\nfore man</w>\nbe tty\nki k</w>\nshi bu\npo on</w>\nargy le</w>\nk swx</w>\net z\nmar bella</w>\nbrac kets</w>\nstand by</w>\nfire side</w>\ndefi ance</w>\nv ex\nbritanni a</w>\nin habit\nappo int</w>\npiyu sh\nle ash</w>\nsci ento\nfla sk</w>\nsen na</w>\n> :</w>\nat roc\nsand erson</w>\nid lib</w>\ndhan ush</w>\nðŁĺ Ļ\nen thr\nhit ch</w>\nde dly</w>\nal ley\ndor k</w>\nmon do</w>\ncudd ly</w>\nmis sin</w>\nye sss</w>\nnight ing\nj pn</w>\nw ary</w>\nump ire</w>\nma z</w>\nê ³\nbab s</w>\nĭ ãģ\nstan ford\nposse ssed</w>\nexce eded</w>\nðŁĶ ¶</w>\nwall art</w>\ntra p\nj il\nhi bis\nsp ying</w>\nscri be</w>\nkhali l</w>\ntrans lator</w>\nlu mb\ndi zed</w>\nch c</w>\nsuper vision</w>\nshut ter\nja g</w>\n_ *</w>\nyester days</w>\nms f</w>\nhi hi</w>\ngonz aga</w>\ngille spie</w>\nvive k</w>\nec static</w>\nthis morning</w>\nch us</w>\ned es</w>\nston ed</w>\nbe es\nðŁĩ¹ ðŁĩ\ntur in</w>\nho ver\nat rics</w>\nster n\nsam heughan</w>\nauti sm\nmi ya</w>\neye witness</w>\nwrit ings</w>\ntravel tips</w>\nchut ney</w>\npx rtg</w>\nkeny ans</w>\nmy stic\nk rit\n/ $</w>\nred head</w>\nworld ly</w>\nam us</w>\nop la\nle ve\ngab bana</w>\nse en\no clock</w>\ngang a</w>\nkeen an</w>\nsc ent\nol dies</w>\ngo green</w>\ncorner stone</w>\ncomp ly</w>\ncon cours</w>\nðŁİ¶ ðŁİ¶</w>\nha an</w>\ncon fis\naw son</w>\ncle op\nî Ģ\nsu zu\nsau tÃ©\nal gar\nsubscri ber</w>\neste emed</w>\nãĤ¤ ãĥ\nworth while</w>\nmel rose</w>\nflo ck\nbri ghtly</w>\nviol inist</w>\np ere</w>\nsli pping</w>\nand co</w>\nsi gh\nha van</w>\ncu lo\nm sa</w>\nfibro sis</w>\nmatil da</w>\nra fting</w>\naw ard\në ª\nmm mm\nge aux\nste iner</w>\nsin n</w>\nhelp ers</w>\nbeet les</w>\nai mee</w>\ntai wan\npistachi o</w>\nmac beth</w>\nm zan\ndescend ants</w>\non sale</w>\nin r</w>\nil m</w>\ngrou se</w>\nsa ig\nmo w</w>\nbi gre\nadjust ments</w>\ntu la</w>\nmathe w</w>\ntransl ates</w>\nmu h\nbol lah</w>\nðŁĴĽ ðŁĴĻ</w>\namo res</w>\nab outs</w>\nbomb shell</w>\nbla ster</w>\nx avi\ns ns</w>\nk roger</w>\nga ther\nerad ic\ndaf t</w>\nchem o</w>\nben ches</w>\nðŁĩ© ðŁĩ\nut v</w>\nour a</w>\nn ko\ngator ade</w>\nbiaf ra</w>\nok state</w>\nim danielpadilla</w>\ndom ains</w>\nopen ingday</w>\nkid do</w>\ndo i</w>\nric e\nday care</w>\nmac millan\nba thurst</w>\ncheer leading</w>\nðŁ¦ ģ\ncash back</w>\nk won</w>\nhob bies</w>\nexem pl\nries ling</w>\nâļ ª</w>\nag les\nny s\nevery thing\nnav is</w>\nad di</w>\nmagne sium</w>\nfaceli ft</w>\nark ham</w>\ngrand es</w>\nextre mist</w>\ndon at\nvit ality</w>\npump kin\nbe tta</w>\nsl td</w>\narti san\nli by\npe aked</w>\nah hhhh</w>\nmary am</w>\nassi m</w>\nun sc</w>\nment e</w>\nal aya</w>\nlow ers</w>\nar as</w>\ngri ev\nle ip\ngr ati\ncri ses</w>\nspr ints</w>\nexe cute</w>\nw to</w>\nms d</w>\nmag ical\nre viewer</w>\nspark les</w>\njuke box</w>\nðŁĺĤ âĿ¤ï¸ı</w>\npay back</w>\nlicen ses</w>\ndun kin</w>\nbel t\nlake wood</w>\nh ateful</w>\nbud gets</w>\nrev amped</w>\nph erson</w>\nky iv</w>\nwent worth</w>\nro sen</w>\ncru ise\ngi ggle</w>\ndef star</w>\nassassin scre\nym outh</w>\nwin kle</w>\nw fc</w>\nband wagon</w>\nb kk</w>\nw iring</w>\nkear ney</w>\nsouth side</w>\npe tit\n! ðŁĺį</w>\nnor dic\nmir za</w>\nmu gabe</w>\nv l</w>\nscon es</w>\nk tv\nsand al\ndu c</w>\nm alls</w>\nðŁĴŀ ðŁĴŀ</w>\nit c</w>\nal ay</w>\nim pair\nun rest</w>\nflo ss</w>\nc Ã©\nab ou\nvar ying</w>\nmuse o</w>\nser ver\ndi ya</w>\nhibis cus</w>\nero y</w>\nmer ritt</w>\nfin dom</w>\nf pp</w>\nun usually</w>\ngo tt</w>\nconting ent</w>\nali aa</w>\nball on</w>\njo l</w>\nhi ked</w>\nzy me</w>\nay r</w>\nag n\nga z</w>\nperio dic</w>\nspar ty</w>\npracti sing</w>\nlin ton</w>\ntal is\ncy pri\nwomanin biz</w>\nradio disney</w>\nðŁĮ ¼\njump ers</w>\nendo cr\nðŁļ¨ ðŁļ¨\nand on</w>\nshar apo\nmi er</w>\nma sonic</w>\nfac tories</w>\nvi en\nbb ers</w>\nìĽ Ĳ</w>\nhol d\nke bab</w>\nbe ak</w>\napproach ed</w>\nac milan</w>\nmun ro</w>\nko sher</w>\nexcell ency</w>\nnegoti ation</w>\nwalt disneyworld</w>\ncr ouch</w>\nte asing</w>\nsuppre ssion</w>\nen ya</w>\nb ce</w>\ntransformation tuesday</w>\ncal lie</w>\nvis was\np gat\nic ted</w>\nend ings</w>\nesc u\nrecru ited</w>\nit fc</w>\ncollabor ations</w>\ng ino</w>\nsnu ck</w>\nausch witz</w>\ni fc</w>\nx ii</w>\nke sha</w>\nger vais</w>\nclo ak</w>\nx l\nsa ad</w>\nprob ation</w>\npre cau\nmac in\nanasta si\nle k</w>\ne azy</w>\ndaysof code</w>\nmariah carey</w>\nyo g</w>\nstit ched</w>\nboy friends</w>\nsh ar</w>\nph ile</w>\nag u</w>\ntwin kle</w>\nphi shing</w>\nweek ender</w>\nic ton</w>\ngurmee tramrahim</w>\nal ton</w>\nl eness</w>\nall an\npen ultimate</w>\nkry stal</w>\ngo u</w>\nlan de</w>\ndis mant\nab using</w>\nnor se</w>\npat erson</w>\ned mun\nap an</w>\nxi umin</w>\nsk el\ncat walk</w>\nre act\nwal led</w>\nt angle</w>\nbr yn\nve to</w>\nsuper moon</w>\ncas ablanc\nappreci ates</w>\nski d\nbo th\ncatal ina</w>\nele ague</w>\ncyber monday</w>\ncau tious</w>\nðŁ¤ ĵ\nnov o</w>\nhamp ton\nha ye\njose f</w>\nvar an\nlo bos</w>\nroano ke</w>\norph ans</w>\ntt in</w>\nsqu ads</w>\nishqba aaz</w>\nblack panther</w>\ne tu\nk sh</w>\ncru mble</w>\ncess na</w>\nreli eved</w>\nscul ly</w>\npollin ators</w>\nexplore canada</w>\nki es\nkam loops</w>\nkir an</w>\npri mal</w>\nsett lements</w>\nhot spot</w>\nbrain storming</w>\nce dric</w>\nbi ennial</w>\nsh ant\nâĻ¡âĻ¡ âĻ¡</w>\ndo on</w>\nhear n</w>\nwalk way</w>\nfe m</w>\nve al</w>\ndeport ation</w>\ntox ins</w>\nelimin ating</w>\ndescen ding</w>\nby the\nbla sphe\nha sta</w>\ncomple ment</w>\nas cent</w>\nri ga</w>\nprovo st</w>\nâĸ ª</w>\nwee ping</w>\nanti semitism</w>\nemploye e\nunearth ed</w>\npin o</w>\nnatali e\nbla d</w>\nang ola</w>\nlock heed</w>\nin ian</w>\nag r\nni ster</w>\nim pala</w>\nm ke</w>\nfan atic</w>\nâĺħ âĺħ</w>\nðŁĳ ¸</w>\nlu ch\nsimpli fied</w>\ngall ery\neconom ic\ncy borg</w>\ncon i</w>\nsel ma</w>\nin ception</w>\nko ala</w>\ndv ds</w>\ncre sted</w>\nm mor\nvisi ble\nn sd</w>\nðŁĻĮ ðŁı½\nw under\nrefriger ator</w>\nre opening</w>\ne era</w>\ncarou sel</w>\nas p</w>\nballi stic</w>\nvictor y\nmo tive</w>\ntre y\nsharapo va</w>\nsi i</w>\nmon ter\nint end</w>\nwest chester</w>\nsp e</w>\ncy mb\nvi dal</w>\nll ama</w>\nuni v\nfin er</w>\ncrafts manship</w>\njazz fest</w>\nb ch</w>\nag gio</w>\nn cc</w>\nlamb da</w>\ntranqu ility</w>\ncis co\nba den</w>\nso bbing</w>\nof i\ngo ta</w>\nru mored</w>\nwar med</w>\nore an</w>\nac ton</w>\nmar ci\ngh ani</w>\nâľ ĵ</w>\nas sorted</w>\npembro ke\npen elope</w>\nda f</w>\nat ty</w>\naim o</w>\npretz el</w>\ncarni val\nthan os</w>\nko chi</w>\nmer sal</w>\nham radio</w>\nar twit</w>\ncas c\nguer rilla</w>\nkush ner</w>\nk app\nal ise</w>\ntodd lers</w>\nsteward ship</w>\no tti</w>\nter ri</w>\ntem pe</w>\nrest less</w>\nvit o</w>\nzay ed</w>\nrsp b</w>\npi on\nhi ppo</w>\nhaw thorne</w>\nin as\nam ily</w>\nnut cracker</w>\nlo p\nd ali\ntro pic</w>\nðŁ¤ ł</w>\nul o</w>\njare dle\npy rene\npale o\nusa ir\nm ould</w>\nit ated</w>\ngene tically</w>\nbiom ass</w>\nðŁĩ³ðŁĩ ±</w>\ndo dd</w>\npractic ed</w>\nmonarch s</w>\nun manned</w>\nm buhari</w>\nam al</w>\nphoto gra\nko ol\nbren don</w>\nju ices</w>\ncu re\nworld bank</w>\npoin ters</w>\nðŁĴ Ŀ\ntur f\nle ds</w>\nbor ussia</w>\nbapti sm</w>\nwarwick shire</w>\nmoun ts</w>\ngay o</w>\nbe gg\nco pied</w>\nasi ans</w>\nk g\nmoder nist</w>\ngi d\nfront man</w>\nconcentr ated</w>\ny t\nsc avenger</w>\niron ically</w>\nadi c</w>\nps n</w>\nðŁ¥ ī</w>\ncultur ally</w>\nyu v\nmac arthur</w>\nfertili zer</w>\nbe withyou</w>\nri gor\nmin ors</w>\nz oning</w>\nâĸ ł</w>\nri r</w>\nadole scent</w>\nvin ny</w>\nren g</w>\nsand stone</w>\ngu et</w>\nwe sth\nple dged</w>\nlac ed</w>\nsp ide\nv ai</w>\nty coon</w>\nseiz ure</w>\ndu p\nappalach ian</w>\nro k</w>\ncathol ics</w>\nsey chel\nposse ss</w>\nla ger\njo di\ncham p\nstra s\nd ina</w>\ncent uri\ncal der</w>\nblur ay</w>\nðŁĩ¨ðŁĩ ³</w>\nmo do</w>\nan nette</w>\nyoutu bers</w>\nchap s</w>\nang ling</w>\nlabel ing</w>\na qui\npk wy</w>\nly le</w>\nbi sexual</w>\nlit ur\ndug out</w>\nli bby</w>\ngrey sanatomy</w>\nsub stances</w>\naugust us</w>\nrall ying</w>\nfi del</w>\ning ue</w>\näº º\nhallmark channel</w>\ntooth brush</w>\nm Ã¡\nadi rond\nag gi\nðŁĵį :</w>\ncru sade</w>\ntax ation</w>\nk z</w>\ni ver\ndou bling</w>\nroom ie</w>\nwa b</w>\nen rolled</w>\naz on</w>\na ju\ngrand children</w>\nas df\nðŁ¥ º</w>\nmat ic\nough ton</w>\nutili ze</w>\nðŁĴ £\npon der</w>\nrais in</w>\ndys function</w>\nco bain</w>\nbutter nut</w>\ne man</w>\nsu red</w>\ndri an</w>\nand friends</w>\nwith the\non omy</w>\nheine ken</w>\nbri dal\nleader ship\npyram ids</w>\ndeutsch land</w>\njo cel\nbo wel</w>\ny qr</w>\nhorse power</w>\nbe acon\ning eni\ngra dient</w>\nfer mented</w>\nmo om\nthing y</w>\npot assi\nwrist band</w>\nbor d</w>\nbo died</w>\nðŁĺŃ ðŁĺį</w>\nma pp</w>\nka u</w>\ncyber punk</w>\nph ish</w>\nloo king\nco ates</w>\nap ur\nam ie</w>\nuk labour</w>\nat in\ng la</w>\nadop table</w>\nshel by\nv illi\nri ya</w>\nm ingly</w>\ncli mber</w>\nbumble bee</w>\nðŁĺ ¸</w>\nc sd</w>\nâĿ ¥</w>\nhospit alized</w>\nc ki\nhat er</w>\nch r</w>\nre tina</w>\nit a\nfan base</w>\nbeat rice</w>\ngwy ne\ngo ss</w>\nfo s\nfavor ited</w>\nswachhb harat</w>\nmal ade</w>\nmon mouth</w>\n\" [</w>\nsi van</w>\nsh hh</w>\ncommand ing</w>\nsains burys</w>\nwee d\ng man</w>\nss w</w>\nrep tile</w>\niv y\ntro pics</w>\nroll ers</w>\nover cast</w>\nex position</w>\nmasquer ade</w>\nman crush\nwa ist\nspr inter</w>\nsle et</w>\nle vin</w>\nj pg</w>\n_ (</w>\no pel</w>\nexplo it</w>\nap a\npo we\nwrec king</w>\njong in</w>\nor b</w>\ner ick</w>\nbo sco</w>\npra ising</w>\nber tr\nto wing</w>\nin security</w>\nku t</w>\nresto cked</w>\nrr p</w>\nprescri bed</w>\ntrafal gar</w>\nper t\ng ases</w>\napp rais\ng har</w>\nmusic als</w>\nâĸ¬ âĸ¬\nmc fad\nag ony</w>\nconditi on\nequi p</w>\nshi k</w>\natra vel</w>\nðŁĩ¿ ðŁĩ¦</w>\nke h</w>\nabduc tion</w>\npe oria</w>\nwil kins</w>\ng ms</w>\nas d</w>\nev i</w>\nðŁĴĹ ðŁĴĹðŁĴĹ</w>\nu z</w>\nmo c</w>\nhalle lujah</w>\nguad alu\nlou vre</w>\ndra wing\ngo ve</w>\nph ant\nfri e\nweb dev</w>\nprogram mer</w>\nz able</w>\ngames com</w>\nclari fy</w>\nli th\nkin ky</w>\nâĿ £\nlabour doorstep</w>\nson ata</w>\nju ris\nmai den\nvi adu\nbuch arest</w>\nconditi oned</w>\ncapit alist</w>\nu de\nps b</w>\nsp ca</w>\nlul la\nfooth ills</w>\nkay o</w>\nbon d\nwom b</w>\nroun der</w>\nce sar\nbur sts</w>\nap ra\nsw oon</w>\nsab rin\nfra grant</w>\ncle arer</w>\nku brick</w>\ncli max</w>\njour no</w>\nag le\nðŁı½ âĢįâĻĢï¸ı</w>\npoo ch</w>\nhal e\nsol it\nsal mon\norganis ms</w>\nbron son</w>\nart en</w>\nhodg son</w>\nalo ve</w>\nvent ure\nbb i</w>\nae a</w>\nðŁĲ ¢</w>\nld n\nd nr</w>\no zone</w>\nel las</w>\nman ny\nazz ur\nun beat\ntru ffles</w>\nth ong</w>\nma Ã±\nlas ers</w>\nley e</w>\ngettys burg</w>\nback packs</w>\nor is</w>\nma ison\ncraw ling</w>\nla bra\ncl ing\ndra gging</w>\nste al\ndou bt\nde van\nck ers</w>\nagent sof\nphoto bomb</w>\nelon musk</w>\nabo y</w>\ndist ances</w>\nstory line</w>\nsp i</w>\nnor than\neurope ans</w>\nwh ale\nser pent\nðŁļ ²</w>\nfi or\ntr it\nox o</w>\nawar ding</w>\nclass mate</w>\nsu fc</w>\nsmar test</w>\nrich es</w>\npr k</w>\nbig foot</w>\nar mb\nbi polar</w>\ndw elling</w>\nom ars</w>\nk wan\ngri me</w>\nm eng\nfreder ick\nnavar ro</w>\nsorry notsorry</w>\njaredle to</w>\npa ve</w>\nsl ack\nbarn sley\natt ar</w>\nevic tion</w>\naccumul ation</w>\no ir</w>\ncat chy</w>\nwel ter\nvik as</w>\nhas see</w>\nnik ita</w>\nmo yes</w>\nmathe ws</w>\nshi v</w>\ngat wick</w>\npro filing</w>\ncompan ions</w>\nmar rake\nan tics</w>\nðŁĻĮðŁĻĮ ðŁĻĮ</w>\nse se</w>\nbo i\nbart lett</w>\npoison ous</w>\nab uses</w>\nym m</w>\nkam pala</w>\nguggen heim</w>\nimv kohli</w>\ndol om\nbre e</w>\nthro ttle</w>\ngare th\nfitz patrick</w>\nun ya</w>\npar ad\nmar got</w>\nj nr</w>\nwe a\npotassi um</w>\np nc</w>\ndisgu ised</w>\ncra sh\nren ergy</w>\nill ic\ncoup led</w>\nni els</w>\nci ones</w>\næĹ ¥</w>\nim ent</w>\ndespic able</w>\nd ye\nwhat cha</w>\nconne ctions</w>\nparalym pics</w>\ngaunt let</w>\nwait rose</w>\nsuici dal</w>\nstar ship</w>\nvap or\nst ou\nlaw maker</w>\ncoo led</w>\nsi mo</w>\nthen o\noffro ad</w>\nja den</w>\nbas que</w>\nvick y\nlu kaku</w>\ncentr o</w>\ntri sh</w>\nstrate gist</w>\nmedic ations</w>\nhor st</w>\nb fc</w>\ngra il</w>\nsharp ly</w>\nad itya</w>\ntom b\nkau fman</w>\ntri pad\nsam ba</w>\npastor al</w>\nbrit ney\nsag an</w>\nhill side</w>\nmas ons</w>\nsar a\nz one\nx u</w>\nto tes</w>\nrob bie\napp en\nmon tag\nder o\nshort film</w>\ncharis matic</w>\ntat ors</w>\nki ba\nand ri\nal arming</w>\nsplit ting</w>\nic ar\nth ug\nscari est</w>\nsylve ster</w>\nan an\nu trecht</w>\na difference</w>\nme ade</w>\nbu ster\nair strikes</w>\ncu ffs</w>\naccount ants</w>\nðŁĺ¡ ðŁĺ¡\nnew t</w>\nbo tt</w>\nissu ing</w>\ncl ancy</w>\nwwen etwork</w>\nkyu hyun</w>\nrese mble</w>\npajam as</w>\nsin k\nkin ney</w>\nsul ph\nor k</w>\nli es\nla gh\nor ton</w>\nra hul\nd sc</w>\nwe will\nre am\ncollo qui\nshar ia</w>\nhec tic</w>\nsar casm</w>\nland er\ntm z</w>\nendor f</w>\nro z</w>\nham mered</w>\nfri s\nw adi</w>\npope francis</w>\nhe it</w>\nflash light</w>\nun born</w>\nop es</w>\nhol iness</w>\nðŁĲ ¦</w>\nnach t</w>\nim sa</w>\ngr acing</w>\nbj p\nver ts</w>\nc sc</w>\nhome owner</w>\na que</w>\nbigo try</w>\nanni e\nbag h</w>\nâĿ¤ï¸ı ðŁĺį</w>\ncar i</w>\nthom p\ndispo sable</w>\ncardio logy</w>\npat ented</w>\nhh hhhh</w>\nld r</w>\nstephen son</w>\ncro res</w>\nfan ning</w>\ncli mat\nðŁĳį ðŁĳįðŁĳį</w>\nðŁĳį ðŁı¼\naer on\npiccad illy</w>\nbank rupt</w>\nsil via</w>\nemplo y\ndon ny\ncommen ting</w>\nscreen writer</w>\nio ta</w>\nce an</w>\nanc ers</w>\ntu an</w>\nstreet wear</w>\nà¤ ¯</w>\nsk ine</w>\nesp a\nasi f</w>\nos ce</w>\nshe ppard</w>\nmore cam\nbott le\nder s\norac le\ngoogle play</w>\naver aged</w>\nedmon ton\nsteph an</w>\nsister hood</w>\ncru sted</w>\nstag gering</w>\nmethodo logy</w>\ncongress woman</w>\nc abo\ntri ggers</w>\nmil ky\ngli de</w>\ntooth paste</w>\nroom mates</w>\nnu ff</w>\ngu am</w>\nsprink les</w>\nalternati ve\nwat fordfc</w>\nuof t</w>\nhal ey\ncont acted</w>\nbun dy</w>\npro stitu\ngh ar\npre ston\non site</w>\nhil ar\ng ts</w>\nc att\nhamp stead</w>\n? ?!</w>\nðŁĩ§ ðŁĩ\nbbc qt</w>\naless andro</w>\nresi st\nma idan</w>\nt ko</w>\nshad ing</w>\npin up</w>\ngal lo\nsin u\nat ec\nfun k\nac lu</w>\nstri des</w>\nrhy me</w>\nwet land</w>\nbbc springwatch</w>\nt ins</w>\nwild card</w>\nst our\nflamen co</w>\npau la\nonto logy</w>\ngang sta</w>\nam ade\nãĤ «\nt bs</w>\nskelet al</w>\nrun ner\njard in</w>\nharri er</w>\nhun ted</w>\nz hen\nbelievein film</w>\nde mean\nau diti\nre start</w>\nchon dri\nâĿ¤ï¸ı ðŁĴĻ</w>\nmcla ren\nga b</w>\nsh um\nau sa</w>\nlewi sham\ny pg</w>\nk jv</w>\nfur nished</w>\ndor o</w>\nbon ded</w>\nmor ty</w>\nlat itude</w>\n_ )</w>\nlo va</w>\nwater ways</w>\nvin ai\nshor th\ndrun k\nc ay</w>\nay ana</w>\nkap lan</w>\ncapp uccino</w>\nspr o</w>\nlife boat</w>\nhas bro</w>\nspol ice</w>\ntor on\ndo ing\ndam n\nsh ree</w>\nfoun tains</w>\nent ation</w>\nmar u\nboar der</w>\nto pless</w>\nj ada</w>\nchan ning</w>\nul ls</w>\nen closure</w>\ngib son\nfractu red</w>\nbrit ton</w>\nÃ ¶</w>\nt ous</w>\npor th\ndra f\ntra iling</w>\nmar gate</w>\neli fe\ndown ward</w>\nlin n</w>\ngla des</w>\ngirl power</w>\nak rish\nu ki\nron da</w>\nts c</w>\nappreci ationday</w>\nvis ing</w>\nlo om\nðŁį ³</w>\nmex ican\nar gos</w>\ny ya</w>\njad ine</w>\nsouth port</w>\nd end\nsi sta</w>\nrede em</w>\nmen g</w>\nbra xton</w>\nantioxid ant</w>\ns key</w>\nmp g</w>\nfin ding\nvibr ation</w>\nce u</w>\nkh art</w>\ndi mini\ncl ine</w>\nshel ly</w>\nhin es</w>\nī ï¸ı</w>\nto pical</w>\nno ver</w>\nma xx</w>\nprim itive</w>\nillustr ate</w>\nb ounds</w>\ntren ton</w>\njoin tly</w>\nbreed ers</w>\nu chi\nwakeup america</w>\nb ada</w>\nðŁĹ £ï¸ı</w>\ngu acam\nsp heres</w>\npere gr\nyouth ful</w>\nlo lo</w>\nbir min\nt ly\njeremy corbyn</w>\ndefe cts</w>\nco sm\na rent</w>\nv aa</w>\nbag els</w>\nmedi ac\ncori ander</w>\nic ago</w>\ng haz\nab bas\nre model</w>\nstruc turing</w>\npu m\nout law\nad ani</w>\nr bc</w>\ngul ls</w>\nn li</w>\nconfu se</w>\nðŁĳĩ ðŁı¼</w>\nvil a</w>\nmcnam ara</w>\ncorrec tions</w>\nmug hal</w>\nser i</w>\nre gain</w>\nss b</w>\nlea ve\nhaha hah\ngran de\ndi stressed</w>\nre chargeable</w>\nho a</w>\nhou sed</w>\nsti l</w>\nattribu ted</w>\nopath ic</w>\ndi ps</w>\npri t</w>\nhead phone</w>\nconclu de</w>\npil o\nhe t\nut sa</w>\nnit in</w>\nje m</w>\nsni ppet</w>\ntutor ing</w>\nop er</w>\nsun k</w>\nen sla\ncha u</w>\nac orn</w>\nquinte ss\nran kin</w>\naffili ated</w>\nour lives</w>\ncl int\nse ater</w>\nisa ac\nba shing</w>\nsme ar</w>\nnur se\ndoo dling</w>\n\" ;</w>\nsa ku\natroc ities</w>\nim am\ng fs</w>\nviol ating</w>\ncomm end\nbrad shaw</w>\ner ville</w>\nb illed</w>\nb be</w>\nthul hu</w>\ni phones</w>\nmoo se\ndi os</w>\nre w</w>\nme thane</w>\nstrang ely</w>\nwhis ky\nti ghtly</w>\nspiel berg</w>\nradi us</w>\nnotic ing</w>\nwi f</w>\nig nati\ni fa</w>\nap is</w>\nw ali\nha itian</w>\nbu shes</w>\ny z\nv l\nex ited</w>\nasse l</w>\ntru ec\ndom en\nash er</w>\nin king</w>\nnewyear seve</w>\nhend ricks</w>\nbat i</w>\nìĿ´ ì\nrich ter</w>\nmon santo</w>\ncon line</w>\nagre at\nðŁ¤ ¯</w>\nmaster pieces</w>\nar n</w>\nrough s</w>\ncle ve\nse v</w>\nfashi ons</w>\nto ya</w>\nsh ail\ncop eland</w>\naqu ari\ndec als</w>\nare you\ny aya</w>\na str\nfon t\nml m</w>\nar ca</w>\npp or\npol lock</w>\nxper ia</w>\nconserv ation\nchain saw</w>\nag gie</w>\n?! ?!?</w>\nsi le\nsh on</w>\nìĹ Ĳ\nnote books</w>\nmarque tte</w>\nde us</w>\nbb led</w>\nspic er</w>\nmc cabe</w>\nnor wich\nmodi fication</w>\nboo sted</w>\nstru m</w>\nsales man</w>\nbang le</w>\nnis san\nhez bollah</w>\nbrea sts</w>\na af\nanth us</w>\nsk er\now ed</w>\nher os</w>\ngi fs</w>\nfo sters</w>\neat ers</w>\ndu es</w>\n_ /\nlymph oma</w>\nsf am</w>\nme gal\nafri di</w>\nag ic</w>\np amp\njeal ousy</w>\nðŁĳĮ ðŁı¼\ncalcul ate</w>\nnapp ing</w>\ng ale\nðŁ¦ Ħ</w>\nlub bock</w>\nassu med</w>\nren ting</w>\níĥ ľ\nsubur b</w>\nãĤ ·\ntech nic</w>\nu cla\nin front</w>\ngar net</w>\nster oids</w>\nstri ving</w>\nho war\nmo ver</w>\nle ton\nbull do\nis in</w>\nci ao</w>\nsn z</w>\nfore front</w>\nd ams</w>\nmid wife</w>\nma wards</w>\ncla pton</w>\nwe in</w>\nsubsi dies</w>\nspr oud</w>\nrother ham</w>\nphan tom\nar ach\nspi el</w>\nrac ket</w>\nsel amat</w>\nno on\nl bc</w>\nenti ally</w>\nðŁĴ ¸\nsil ve\nm oud</w>\nkine tic</w>\ny asi\nðŁİ ©</w>\no ol\nmi ku</w>\ni za</w>\nfer a</w>\nflo ren\nbarber shop</w>\ngroo t</w>\nz est</w>\nne ars</w>\nstan is\nz and\npolice man</w>\njuris dic\nform ations</w>\nappar atus</w>\nsp d\narti fact</w>\nto sc\nmotiv ating</w>\nwomanc rush\nre dro\ndiagno stics</w>\nra za</w>\nout fitters</w>\nel xn</w>\ndod gy</w>\nry n</w>\nsh d</w>\northo don\nol de</w>\njay anti</w>\nbal ances</w>\nquic kest</w>\ncan ton\nfriday reads</w>\n! *</w>\nna a</w>\na ak\nðŁĶ ·</w>\nbehavi ors</w>\nrasp berries</w>\nä »\npolit ical\ncam il\nå ľ\ndi k</w>\nast ounding</w>\nlie be</w>\nnovel ty</w>\ntur moil</w>\nsul ly</w>\nspring break</w>\nhon ouring</w>\ncc g</w>\nðŁı Ĵ</w>\nmy little\nky c</w>\npro ms</w>\nðŁķ Ĭ</w>\nÃ ¨</w>\nbi ge\nav ril</w>\nðŁĩµðŁĩ °</w>\nmari on\nas ants</w>\nsur ya</w>\noc tag\nluf than\nac ron\nfayette ville</w>\nti que</w>\nlove s\nen ca</w>\nde kalb</w>\nta ver\nde vote\naux iliary</w>\njoh annes</w>\ntread mill</w>\nay an\nqu r</w>\ndonald son</w>\ncher yl\n\" ....</w>\ns ven\nkir sty</w>\ngun ners</w>\nra dish</w>\no ahu</w>\nv sky</w>\ni ble</w>\ncon course</w>\nb ps</w>\nelo qu\nash ford</w>\nte bow</w>\nroblo x</w>\nma da</w>\ndri ving\nth day</w>\nspro ject</w>\nm ms</w>\nband ed</w>\n. !!</w>\nlibr arians</w>\nflan nel</w>\nintoler ance</w>\nher al\nç µ\nneme sis</w>\nlist a</w>\ntar ak</w>\ncry pt</w>\nstar plus</w>\nvish nu</w>\nsc ale\ncr is</w>\n% ),</w>\nj illian</w>\nregg ae\npegas us</w>\nol in\nip ment</w>\nman ic</w>\nl fc\ngodd ard</w>\nite am</w>\nparl our</w>\nanch ors</w>\nlee minho</w>\ntalla hassee</w>\nant it\nd ho\nkid ney\ny ash</w>\nbatt led</w>\naz ad</w>\ngar is</w>\nfaul kner</w>\nsni ff</w>\npapar azzi</w>\ned m\nphy llis</w>\ncon tested</w>\naa ay</w>\nse ca</w>\nk ton</w>\nvel ve\nrain ier</w>\nfor um\ntam pab\nho sp</w>\ntrac tors</w>\nox fordshire</w>\nno tion</w>\nguang zhou</w>\nðŁĺ ¯</w>\nref ill</w>\nwednesday motivation</w>\nsli der</w>\nmukher jee</w>\npr att\nfon taine</w>\nalph on\naf ar</w>\nts i</w>\npest icides</w>\nfi ends</w>\nmo cking</w>\nbra w\ntran sat\ndo ses</w>\nco res</w>\nhom ophobia</w>\ndocu menting</w>\nzlat an</w>\ncon doms</w>\ns Ã©\nsun set\nkun st</w>\nton ga</w>\nà¸ ª\nv ation</w>\nsp ray\nchow der</w>\nra ps</w>\npalla dium</w>\nnor wood</w>\nmusic history</w>\nhoo ker</w>\nsi si</w>\nosp rey</w>\nph ys</w>\nconce ded</w>\nbob cat</w>\nar mad\nze it\nÙ Ħ</w>\nðŁĺģ ðŁĺģ\nmer idi\nðŁĩ· ðŁĩº</w>\ncorn wall\n! ),</w>\ntouch downs</w>\nze it</w>\nchal et</w>\nmm m\nal che\ngor illa\nfo ss</w>\nati ku</w>\nlumin ous</w>\nivan ka</w>\nbe ek</w>\nsta res</w>\nsw iss\nâĿ¤âĿ¤ âĿ¤âĿ¤\nscru bs</w>\nme ath</w>\ngusta v</w>\njo gging</w>\nconfe tti</w>\nas os</w>\ners fc</w>\nbreit bart</w>\napplic able</w>\nautho red</w>\nya ho\nh in</w>\ndisplac ement</w>\nj v\nðŁĮ¹ ðŁĮ¹\not c</w>\nnon profits</w>\ndiec ast</w>\ngu sto</w>\ninte stin\nc ages</w>\nme en\nlu kas</w>\nmoon ey</w>\nðŁĺ ·\nvery day</w>\ntor ah</w>\nis sion</w>\nwa c</w>\nlever aging</w>\nish able</w>\ncu se</w>\nle wood</w>\nmay an</w>\nturn table</w>\nju ice\ntru sty</w>\ntu p\neti quette</w>\nsupervis ors</w>\nstu n</w>\ngu zman</w>\nconfe ren\nric o\nfe ast\nback ward</w>\npol aris</w>\nmic he\njo g\nh ing\nfield house</w>\nvel ing</w>\nsho cker</w>\nesc ence</w>\nà¤ ¾\nvi be\nanasta sia</w>\nmar ched</w>\nkill ing\nĶ ë\nfe tt</w>\nexop lan\n... (</w>\nsnow day</w>\nlo h</w>\nir ani</w>\nla khs</w>\ndel a</w>\npo caly\nboom ers</w>\ndictat orship</w>\nac er\ntur keys</w>\nquarter final</w>\nmuskete ers</w>\nðŁĴĽ ðŁĴļ\nsf x</w>\nmuseum week</w>\nsc ala</w>\nri sis</w>\n( ðŁĵ·</w>\nãĢ Ĥ</w>\nz ies</w>\nbo eh\nhu es</w>\nlu sci\ndol a</w>\nimpeach trump</w>\nroo d</w>\ndon caster\ntor re</w>\nhero es\nfo yer</w>\ntar i</w>\nblur red</w>\nke w\nfrank ly</w>\ndro id</w>\nap al\nÐ ¼\ny af\nbre t\npar agu\ncac ao</w>\nðŁĻĮ ðŁı¾\nru e\nhead aches</w>\nshaw ty</w>\nchar ley</w>\npal er\ngo wns</w>\ncorrec tional</w>\nðŁĺ© ðŁĺ©</w>\nbreaking bad</w>\nol ing</w>\nda p</w>\nendeav our</w>\ncit adel</w>\ntra d</w>\nincumb ent</w>\nmedit ate</w>\nfoo ted</w>\nðŁĴ µ</w>\nshab bat</w>\ndayof the\nwil lem</w>\ngal way\nto red</w>\nmarri age\nf illion</w>\nsleeve less</w>\naud itor</w>\njin young</w>\ninvin cible</w>\nkad una</w>\na and\nvolcan oes</w>\nmon eti\nindie gogo</w>\nbuccane ers</w>\nðŁĳī ðŁı½</w>\nãĢ Ĥ\nlay ton</w>\ncuck oo</w>\nhu mber</w>\nbuzz er</w>\nÏ ī</w>\nto re\nstra ins</w>\nsto m</w>\npa ine</w>\ns we</w>\ndu ff\nz ou\nsi mi</w>\nli pp\nur n</w>\nse agu\nðŁĶ ®</w>\nsun dae</w>\nhi c</w>\nðŁĺ ¨</w>\nbull pen</w>\nu per\nflyo ver</w>\nal dridge</w>\nglo bes</w>\nali es</w>\nken zie</w>\nge es</w>\ny cle</w>\nsp lin\nmag enta</w>\nj ha</w>\nbal u\ngh orn</w>\nti pper\nwick er</w>\ntaste of\ncon clave</w>\nch ale</w>\ninv asi\ncat er</w>\ndio xide</w>\nme gab\nwin n</w>\nat p\ntransform ative</w>\nnest led</w>\nhi g\nbri dging</w>\nlil ies</w>\nchee red</w>\nbad dest</w>\nsc rolls</w>\nreal is</w>\ndipl o</w>\nðŁĶ «\nconce ssion</w>\nprefe rences</w>\nexplo des</w>\ner gon\nintroduc tory</w>\nine au</w>\nch af\nsom es</w>\nland rover</w>\nspir ation</w>\nsex y</w>\nsco recard</w>\nillustr ates</w>\nsoul mate</w>\nwi en</w>\ninter disciplinary</w>\nfore casting</w>\nent ities</w>\nglu ed</w>\nen lar\ncur t</w>\npercep tions</w>\nboot leg</w>\nmi re\nasho k</w>\nv az\nhor ne</w>\ncal le</w>\nac ulture</w>\nther oy\nnight time</w>\noc al</w>\ncharacter design</w>\nar mist\nðŁĺı ðŁĺı</w>\nyah oo\nac eae</w>\nto se</w>\neven to</w>\nsou t\nnay anth\nwh om\nv are\nri gging</w>\ngen us</w>\nhi ve\ncom mands</w>\nsti e\nday a</w>\nethan ol</w>\nen f\nhi fi</w>\nflu ence</w>\ncle mson\nre invent</w>\nthermom eter</w>\nhumor ous</w>\nemer ging\naci Ã³n</w>\nðŁĺĺ ðŁĺį</w>\ns ity\nhaw ke</w>\naccompan ying</w>\nt ility</w>\nðŁĺ ª\nre cess</w>\nprotag onist</w>\nl ery</w>\ndun dal\nint l\nbritt any\nq bs</w>\noff the\nmarri ages</w>\nhow to\nviol ated</w>\nadel aide\nwit t\nlanc er</w>\npak v\nhu me</w>\nst ade</w>\nbra gging</w>\nou tright</w>\nad c</w>\nsuper st\nreal time</w>\ncu res</w>\ngarden ers</w>\nero ck</w>\ndale jr</w>\nver o</w>\nbar tol\nmo ti\nmc fly</w>\nv pn</w>\nst ink</w>\nover rated</w>\nguer ra</w>\ne tis\nath ome</w>\ntwd family</w>\nth ab\ntn x</w>\nrafa el\nfamily travel</w>\nx ley</w>\nsat anic</w>\nequ ations</w>\nru dy\nwal dorf</w>\nstan i</w>\ntu be\nmeas les</w>\nzimmer man</w>\nobli gations</w>\ni ously</w>\nbow ser</w>\ntrans former</w>\nsho ppe</w>\nshak en</w>\ngh ouse</w>\nto d\nke tball</w>\nshare holder</w>\nmar ca</w>\nkp mg</w>\nak an</w>\ngiven chy</w>\ncoast al\nau th</w>\nroller coaster</w>\nmar ches</w>\ncoordin ate</w>\ncine ma\napprentic es</w>\npar lor</w>\nmit o\nmen on</w>\nconsider able</w>\nbar re</w>\nglo ss\nenh ances</w>\njaz eera</w>\nfal mouth</w>\nthra sh</w>\nstat en</w>\nk zn</w>\neng el\nsamanth ap\nflo ppy</w>\nsal om\nðŁıĨ ðŁıĨ</w>\nw ack</w>\ndeliber ate</w>\nosc ill\nherit ag\ndu sted</w>\norni thology</w>\npad dle\nfer ns</w>\nbar un\ncl ans</w>\nanticip ate</w>\na ay\nmat ically</w>\né ĩ\ntu mble</w>\npost man</w>\nunic ef\ntro tter</w>\nop d</w>\nleaf let</w>\nge ist</w>\ncease fire</w>\nscre ws</w>\ncre ation\nwal nuts</w>\nlongh orns</w>\nunder statement</w>\nab b</w>\nproxim ity</w>\nna x\nun ity\nturn pike</w>\norda ined</w>\ndub step</w>\nchak ra\nme ch</w>\nlove her</w>\nlook alike</w>\ndonne in\nvir on\nÙ Ī</w>\nbang ers</w>\nvari ants</w>\nout dated</w>\nin ta</w>\ncri sto</w>\nsp elt</w>\nfood and\nf on</w>\nstefan i</w>\nmargin al</w>\nhu tton</w>\nti ara</w>\ntel ford</w>\nqu en</w>\nfair grounds</w>\nque tta</w>\nmikha il</w>\nheal er</w>\nv ball</w>\nty re\nunder grad</w>\ngl end\nhom ers</w>\nscri bed</w>\nmain tains</w>\npo che\nmis sal</w>\nmar ko</w>\nu as</w>\nÃ¡ n\nsh p</w>\ncon vey</w>\npad re</w>\nsab a</w>\npu glia</w>\nmadhu ri\npa xton</w>\nchap lain</w>\nn ago\nca si\n... !!!</w>\nfli rt</w>\nsal eh</w>\nk are</w>\ndi re\nstam ped</w>\nextre me\nðŁĺĥ ðŁĺĥ</w>\nho ppy</w>\nguadalu pe</w>\nadvant aged</w>\neu char\np low</w>\nun n</w>\nmac qu\nport land\ncla sh\npe s\nlou bout\ny p\nkeep ing\narca dia</w>\nfran kie\nfi u</w>\nde th</w>\nencyclo pedia</w>\nsi ze\ninve sts</w>\nðŁį ©</w>\ngeo logical</w>\nfran Ã§\ncon front</w>\nðŁĺ ¥\nd ys</w>\naf m</w>\ntex an</w>\ngraph ene</w>\nrepost app</w>\nac f</w>\nur sula</w>\ngaz a\ndd led</w>\nfu m</w>\nwsb tv</w>\nm be\nfron tiers</w>\nchrono graph</w>\nke s\ninter faith</w>\ntab oo</w>\nspar ta</w>\nwon do</w>\nflori st</w>\nem braces</w>\nca w\nno el\narch ers</w>\nðŁĲ ·</w>\nroman o</w>\nban an\nsh akers</w>\nmelo dies</w>\ngeo thermal</w>\nse phora</w>\nìļ °\nÐ¾Ð ´\npro c\nhand shake</w>\npan de\npopul ated</w>\nslow down</w>\nhor tons</w>\nregistr ations</w>\nun deni\nlan ts</w>\npas sover</w>\nthak ur</w>\nli ef</w>\nadhe sive</w>\npe tal\nmicro scopy</w>\nmemph is\nconfir ming</w>\nair drop</w>\nmesm er\nperce ived</w>\nming le</w>\nlifel ine</w>\ngh j\nworcester shire</w>\npas sions</w>\nach er\nel lar</w>\nah o</w>\nfiren ze</w>\nbar ang\nletter man</w>\nhat field</w>\nlu cha</w>\nje ter</w>\ne shop\nwilliam s\nhoro scope</w>\npre de\neast bourne</w>\ndur ga</w>\ndi version</w>\nal trin\nseis mic</w>\npremi osm\nnar co\nti r</w>\nori g</w>\nor m</w>\nland fall</w>\nci ous</w>\nlin do</w>\nmax ine</w>\nx ico</w>\ntra y\nos wald</w>\nc ba</w>\nric otta</w>\nn cr</w>\nmar au\nà¸ ²</w>\ngladi ator</w>\nch ery</w>\nlun g\nu me\npo psic\nlon ging</w>\ncan als</w>\nta ya</w>\ndecentr alized</w>\nsho pp\npres sures</w>\nmahar aj</w>\neti had</w>\nwal greens</w>\nsucce ssion</w>\nsign aling</w>\nli g</w>\nstaf fer</w>\nnorth korea</w>\ndef ying</w>\nas ma</w>\nde g</w>\nperi meter</w>\noak ville</w>\nm sk\nbalti more\nrece ip\nde ple\nðŁĺŃ ðŁĺĤ</w>\njambo ree</w>\n> .<</w>\nrsp b\npuni sher</w>\nconsider ably</w>\nin tothe\npari sian</w>\nacceler ated</w>\npolye ster</w>\nlow es</w>\nfr ying</w>\nsautÃ© ed</w>\nmou ths</w>\nseychel les</w>\nra x</w>\ngo dis\ndak ota\nhouse wives</w>\nthe me\nmat inee</w>\nblack bird</w>\nye sung</w>\npre fers</w>\npelle gr\nin ated</w>\ntrun ks</w>\nstronger together</w>\nre pet\nre pairing</w>\nped als</w>\ntoler ant</w>\nher r</w>\ndun ne</w>\nindic ation</w>\ndecat ur</w>\nb tv</w>\nexhibit ors</w>\nik on\nfriday motivation</w>\nbra gg</w>\nlive tweet</w>\nal ves</w>\nwomens art</w>\nforeig ners</w>\nwal lets</w>\nmin dy</w>\nlan ey</w>\nbb in</w>\ntv miaw</w>\nlif ter</w>\ntar get\ntam e\ndr ou\nastro photography</w>\nmp c</w>\ng pu</w>\nnord strom</w>\nfric tion</w>\nrun off</w>\nlov able</w>\nsp nfamily</w>\next ingui\nbloo dy\nsch el</w>\narti stry</w>\nsw ish</w>\nscar ce</w>\nph ils</w>\nmax im</w>\npos sum</w>\ncom promised</w>\nsty li\nsc fc</w>\nis sa\nbirmin gham\nsket ched</w>\nangel ica</w>\nordin ance</w>\nje ts\nconqu er\nðŁĺ Ĳ\nonline shopping</w>\ns ori\nreason ably</w>\nnue stro</w>\nar turo</w>\nch l</w>\nbenef ici\nspho to</w>\nwel t</w>\nni kk\nðŁ¤ ŀ</w>\ndan ao</w>\nfor mid\nas se</w>\naf irst</w>\nâľ Ĥ\ngil lette</w>\nas sor\nan onym\nsel ca</w>\nfe mi</w>\nbear able</w>\ny and\nar mory</w>\ncre pe</w>\nceltic fc</w>\nbra vo\nin expensive</w>\nde lec\nge cko</w>\nnew market</w>\nsnow flakes</w>\nkab ir</w>\ncon tra</w>\ncan ning</w>\nmor pho\ngar wal</w>\nðŁĴĥ ðŁı»</w>\nfight ing\nmu tation</w>\nwoo dy\nju gg\ngr aces</w>\npremiosm tvmiaw</w>\nkenne dy\ngu p\nsa e\nop ha\noff spring</w>\nfini sher</w>\nbet ts</w>\nspan ning</w>\nmar j\nh one</w>\nsh ing\ncontin ents</w>\nsamanthap rabhu</w>\nun related</w>\nl acy</w>\nexplo sions</w>\nbenjam in\nsophi e\nno ting</w>\nmicro soft\nas sen</w>\na hoy</w>\ni ker</w>\nho fer</w>\nmo e\nah madi\nyan n</w>\nan ak</w>\nma hi</w>\nbe u\naha h</w>\ncreep er</w>\nbaahu bali</w>\nam at\npri ory</w>\nhaw keye</w>\ndeloit te</w>\nsko da</w>\nprint making</w>\nassemb ling</w>\nmirac ulous</w>\nno ch</w>\nsw o\nleg a</w>\noper ates</w>\nborder lands</w>\neli e\nstron gh\nrep tiles</w>\npir ate\nun fold</w>\nÂ ¯\nqual comm</w>\nun predictable</w>\not r</w>\nrose wood</w>\ndirec tional</w>\ncounsel ors</w>\ncorn ell\nliber ated</w>\nj ad</w>\nir regular</w>\nbulgar ian</w>\nhigh ness</w>\nvodaf one</w>\nsw ild</w>\nmini mize</w>\ngra zie</w>\nà¹ ĩ</w>\nr stats</w>\nstre ep</w>\nome tric</w>\nhumb le\nlu mp</w>\nl ille</w>\nb Ã¼\nhome depot</w>\ntripad visor</w>\nki wan\na via</w>\ner z</w>\nex ico</w>\ndu f\nblu men\nmi zing</w>\nar ma</w>\nin im\ncon stan\nsor a</w>\nju al</w>\nau n</w>\ntw ell\ntren ches</w>\nher a</w>\nr k\npo plar</w>\nrecipe oftheday</w>\nll an</w>\nbhu ban\nshort ages</w>\ning don</w>\nbridge water</w>\nðŁĲ ĺ</w>\nfortn ite\ncam den\nun cture</w>\npro w\ncolon ies</w>\nt ks</w>\nn go\nb hm</w>\nlive pd\nspl ace</w>\nsli ke\nhappye aster</w>\nter rence</w>\nrevol ver</w>\nj ed</w>\nyy yy\noffice of\nm ts</w>\nexist ential</w>\nr ourke</w>\nexplore bc</w>\nsse d\npri est\nvix en</w>\nsi ding</w>\nk pa</w>\na har</w>\nju ic\nob struc\nforen sics</w>\nuk mfg</w>\ncancell ation</w>\nwe ary</w>\nab q</w>\nele c</w>\npri zed</w>\ndeb ts</w>\nme zz\nsalv atore</w>\nm dc\ngre tte</w>\nc gc</w>\nth on\nsnow storm</w>\nts ch</w>\ncook ery</w>\nå ¹\nwa xing</w>\nn acional</w>\nmur s</w>\nra ve\ncap es</w>\nger main</w>\ndri pping</w>\nsub mitting</w>\nome lette</w>\niter ation</w>\naj es</w>\nshim mer</w>\nfu eling</w>\nðŁĩ§ ðŁĩª</w>\nli po\nbo bble</w>\nun follow</w>\nislam ist</w>\nhi ber\ncat s\nagentsof shield</w>\nsen si\n____ _</w>\nster ia</w>\ninst al\nausp icious</w>\nhar row</w>\nover land</w>\nfemini sts</w>\ninst ant\nchar iot</w>\nblind ness</w>\nsp ed</w>\nsc arec\nnu it</w>\nmini atures</w>\nho seok</w>\nglo ck</w>\nfifa worldcup</w>\ne te\ndis m</w>\nwe iner</w>\nex foli\near ts</w>\nà¸ Ķ</w>\nmy art</w>\nman il\niss ant</w>\nform a</w>\nin cu\nbuffal ob\nin tim\nmc cul\nanj ali</w>\npo po\nun doub\nhil a</w>\nfun gal</w>\nthank ful\nfu tur\nen dish</w>\nren ds</w>\nth ar</w>\nshe ff\nring o</w>\nnichol ls</w>\nio wa\npo tom\ncl ams</w>\nãģ Ħ</w>\nacon f</w>\nstadi ums</w>\ndi mp\ndi k\nresiden ces</w>\ndo v</w>\ncaric ature</w>\nseagu ll</w>\nkl m</w>\nconfe ss</w>\nsla pped</w>\ncele b\nturb ines</w>\npp v</w>\nnur ture</w>\nel ab</w>\n.... .#</w>\ntu ff</w>\nde press\nal far\namii bo</w>\ndi spon\ne wing</w>\nque er\nfriend s\nfor re\nâĺ ¼</w>\nsw t</w>\naqu arius</w>\nhead liner</w>\ncur d</w>\nfi gs</w>\no tters</w>\nlove fl</w>\nkare em</w>\ngo vegan</w>\nfri yay</w>\nconsol ation</w>\nat ri</w>\nì§ Ħ</w>\nâĺĿ ï¸ı</w>\npoly ne\ngu ed</w>\no ya</w>\nla us\nintestin al</w>\ncam illa</w>\nscal p</w>\npi r</w>\nleed s\nhorri fying</w>\nbore tum</w>\ndand elion</w>\nfer rer</w>\nell ic\nas x</w>\nso ren\nre loaded</w>\nale ague</w>\nnavig ator</w>\nine tte</w>\nadd ams</w>\nal chemist</w>\nak shay</w>\ndystop ian</w>\nawe c</w>\nn aya</w>\nal isa</w>\nai led</w>\nag or\navi ator</w>\nali zer</w>\nsmo bile</w>\nfindyour park</w>\ncop ying</w>\nto ddy</w>\nsh ti</w>\nmon ger</w>\ncal houn</w>\nnap kin</w>\nbreak up</w>\ny atra</w>\nse thu\nric hi\neras mus</w>\nfer ry\nam ore\nprac tise</w>\nbo bo</w>\npower point</w>\noo se</w>\nli ffe</w>\nchin a\nsh ka</w>\nfad navis</w>\ndu ane</w>\nwar on\nfal se\nðŁļ Ĥ</w>\nwa shes</w>\ndisc ip\n==== ====\ng k\nab b\nstub born</w>\nmedi eval\np ci</w>\nðŁį ª</w>\nmaril yn\nh yo\nman di\ncr i</w>\nprede cess\ncontinu ation</w>\nom usic</w>\ns lat\nwh al\nmall ory</w>\nbon n</w>\nshen zhen</w>\nca i\nâĺ ĥ\nsa fest</w>\nfor wards</w>\ndra wers</w>\nbla sted</w>\nsle e</w>\nmor phe\nmb ta</w>\ndumb ass</w>\nÑĦÐ¾ÑĤ Ð¾</w>\nalhamdulil lah</w>\nec lub</w>\nal beit</w>\nheal ey</w>\nayurve da</w>\nadverti sed</w>\ncro cs</w>\nitt les</w>\nbry son</w>\nbe i\nnj pw</w>\nhonore e</w>\nfu sed</w>\nðŁĶ ĺ</w>\nmul tin\nn aga</w>\nde parts</w>\nko p</w>\nkin o</w>\njhar khand</w>\ned na</w>\nax le</w>\nmil ton\nsupremac ist</w>\nmarrake ch</w>\ndomin ic\ntran script</w>\n] [#</w>\n: ).</w>\nwo c</w>\nsur rounds</w>\no gil\nleaf lets</w>\nco well</w>\nwhe w</w>\ntru de</w>\nproli fer\nsucce s\nsports man</w>\ncon dom</w>\npo che</w>\nk up\nimprison ment</w>\n{ }</w>\nscram bled</w>\nå Ľ\nka ine</w>\ncell phone</w>\nmetam or\ncon i\nremn ants</w>\nee z</w>\ndown pour</w>\nafterno on\nexerc ising</w>\nber ser\narchitec ture\nwick low</w>\nm ns</w>\nis p</w>\nbo c</w>\nn iss</w>\nmn wild</w>\nstu mble</w>\nr si</w>\nlu ffy</w>\nsil en\ndd ad</w>\nbul lies</w>\nhaw ker</w>\nbb cc\nscu ba\ne pp\nque ts</w>\nfor aging</w>\npal let</w>\nha di</w>\ncinemato grapher</w>\ncat chers</w>\nto aster</w>\nk hi\nlite coin</w>\nkid lit\namher st</w>\nmaur icio</w>\nip ad\nmar malade</w>\nfe y\ndon nelly</w>\ng to</w>\nest as</w>\ncere bral</w>\nant grasso</w>\nzz led</w>\nvir gil</w>\nswa pped</w>\nðŁĺħ ðŁĺħ</w>\nno dapl</w>\ngreate st\nnhl bruins</w>\nfra ser\nb mo</w>\nane w\n. âĿ¤ï¸ı</w>\nse gregation</w>\nremark ably</w>\nmccor mick</w>\nlo gger</w>\ner as</w>\ncontrac ting</w>\nâłĢ âłĢ</w>\nyor ks</w>\nuku lele</w>\ntouch screen</w>\nde cked</w>\nben n</w>\nsouth wark</w>\nra vin\nnu mis\nðŁ¤ Ļ</w>\nru t</w>\ngre co</w>\neth ic</w>\nred neck</w>\nar r\nt cs</w>\nih ri\nðŁĩ« ðŁĩ·\nl k\ninher ited</w>\nzy k</w>\nviadu ct</w>\nmarty red</w>\nhi gu\nss n</w>\nbe in\nstreet style</w>\nfer gie</w>\nbank of\næĹ ¥\nstake holder</w>\nexempl ary</w>\ncre ss</w>\ness a</w>\nero tica</w>\nintre pid</w>\ngom es</w>\nbra un\nbethan y\nbang tan</w>\npulmon ary</w>\nm illing</w>\ndoctor ate</w>\ntrump russia</w>\nà¤ °\ns ani\nbl att</w>\npla u\ndepri ved</w>\nt le\nful ly\nbour n</w>\nst ak\nlufthan sa</w>\nkio sk</w>\nfar oo\ndef y</w>\nbad an</w>\nðŁĺĺ âĿ¤ï¸ı</w>\nrit z\ntri sha</w>\nran ds</w>\nmiddle sex</w>\narab s</w>\npro j</w>\nsport scenter</w>\nrepe ats</w>\niv f</w>\nbleed blue</w>\nas sure</w>\no bs</w>\nterrit orial</w>\nele n</w>\nbever ley</w>\nann ah\nâĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ıâĿ¤ï¸ı\nz l</w>\nfor good</w>\nscience fiction</w>\ngla u\nson ya</w>\npri th\nst weets</w>\nmix ers</w>\nmari o\nant elope</w>\nwriting community</w>\nwent z</w>\nden ham</w>\nbe di</w>\nsf o</w>\nharley davidson</w>\nlook book</w>\nimmuno therapy</w>\nor phe\nes ville</w>\ned ged</w>\ntas k\nsb ball</w>\ncorro sion</w>\nkilom eters</w>\nco sting</w>\nplay back</w>\nke ke</w>\ndi visi\nu ter\nre location</w>\nyel led</w>\npen g</w>\nup beat</w>\nser ve\nâļ ł</w>\nhal en</w>\nstir ring</w>\nreh man</w>\nen v</w>\nschu macher</w>\nfrag ment</w>\nalkal ine</w>\nsb k</w>\nresil i\nshare point</w>\nrol lover</w>\ntra sh\ncounter part</w>\nâĻ «\nob itu\nà ½\nãĤ ¹</w>\nmul berry</w>\nðŁİ Ĩ</w>\nauton omy</w>\nspra ying</w>\nnat l\nlove you\nfran ki\nnu k</w>\nesc ar\ncan teen</w>\nali baba</w>\nde plor\nmole cule</w>\npu d\nfort night</w>\nblon die</w>\nsp hin\nportra yal</w>\nta che</w>\nbu te</w>\nconsi sting</w>\nfreep alestine</w>\nc sp</w>\nim mort\nd ns</w>\nðŁĴ¥ ðŁĴ¥</w>\ntour de\ncoo king\narchi val</w>\nga thers</w>\nbit t</w>\nb anc\npre mature</w>\nsnow ball</w>\npoetry day</w>\nlou dly</w>\nfug itive</w>\ned ay\nem ra\nðŁĩ¸ ðŁĩª</w>\nsci en\nnode js</w>\njur gen</w>\nje ong</w>\nband ana</w>\nun is</w>\nfox sports</w>\nv andy\npro visions</w>\nwee p</w>\ntu k\ni ko</w>\nh oun\nzig gy</w>\nz r</w>\nfil let</w>\nbat a</w>\ntin k\ncon e\nwe want\nk ilo\nhor ace</w>\nsl t</w>\nsc t</w>\nstay tuned</w>\nvictor ia\numb ria</w>\natt acker</w>\ningham shire</w>\nfright ening</w>\nno ir\nfr at</w>\ncon tempt</w>\nlia ison</w>\nho i\nbr ink\ntr ill</w>\nni agar\nkick ass</w>\ndun das</w>\nnot my\nrho de\nbu mble</w>\nno xi\nfa g</w>\nspec tators</w>\nmancrush monday</w>\njin ping</w>\ndistr act</w>\ndais y\nwal den</w>\nportra it\nar thistory</w>\nvol tron</w>\nev el\nis c</w>\nac m</w>\nr ite\nna o</w>\nde ported</w>\nswe ats</w>\nru fus</w>\nlo bo</w>\nlabor day</w>\ngam o</w>\nihri thik</w>\nbl it\nabdomin al</w>\nãħ¤ãħ¤ ãħ¤ãħ¤\ni it\ne q\nbu sy\nallu arjun</w>\nun disclosed</w>\nde ton\npro create</w>\nki l</w>\nðŁİĤ ðŁİĤ\nmitch ell\nki i</w>\ninherit ance</w>\nal p</w>\njo burg</w>\npat rolling</w>\ncompul sory</w>\nun signed</w>\nni am\nl ga</w>\neshop suk</w>\ntr illi\nma w\nappreci ating</w>\nrock ab\nmaÃ± ana</w>\nan tal\nmal vern</w>\nroy o</w>\ngrand prix</w>\nsut ton\ngo ftheday</w>\ndig i</w>\nãħĭãħĭ ãħĭãħĭ\nt les</w>\nvaran asi</w>\nerec ted</w>\ndiscip les</w>\ncont act\nðŁĺ µ</w>\nli d\nâ¬ ĩ</w>\nscen tre</w>\nradi ator</w>\ning tips</w>\ntrans itions</w>\nthursday motivation</w>\nchem ical\nsepar ati\nsal is</w>\nmi m</w>\ngeo graphical</w>\nbook fest</w>\n/ .</w>\nâľ ĭ\nv ae</w>\ncur rie</w>\nag garwal</w>\nacceler ation</w>\nthe ses</w>\nlg m</w>\nu mass</w>\npro portions</w>\nnat a</w>\nani ans</w>\nku ch</w>\nbe acons</w>\nap r\n@ #</w>\nðŁĴª ðŁı¾</w>\nnu ke</w>\nsher aton</w>\nki o</w>\nma kati</w>\npolit ico</w>\nmor ale</w>\nì Ļ\neconom ically</w>\ngg ly</w>\nss en\npa stries</w>\nintern ships</w>\nvic ente</w>\nfanta ken</w>\naveng ers\naccu se</w>\nslee pover</w>\nindic ated</w>\nthe dream</w>\nster one</w>\nren ders</w>\nfro st\nou i</w>\ngre gg\nd ore</w>\nâľ¨ âľ¨âľ¨</w>\npu gs</w>\nsat y\nnu mb</w>\nhems worth</w>\ntam i</w>\nla ssic</w>\nschi ff</w>\nigle sias</w>\nag awa</w>\n] \"</w>\nre shi</w>\ngame stop</w>\ndivor ced</w>\ntheat er\nclau di\nun conventional</w>\nprophe ts</w>\nac in\ntwel f\ntow ering</w>\nt ml\nsc lerosis</w>\nk wan</w>\nge ts\ndistur b</w>\nna ira</w>\nener g\npir acy</w>\npru itt</w>\nnoti fied</w>\nhen na</w>\nbra m</w>\nground water</w>\nbl s</w>\nopti mis\n$ )</w>\nluci e</w>\nbiz hour</w>\nfang irling</w>\ngr ills</w>\nor l</w>\nver se\nc ina</w>\nlaw less</w>\nartistson twitter</w>\ntele vised</w>\nmarshmal lows</w>\nradio head</w>\nbar r\nm fc</w>\nbre vi\nmmor pg</w>\ng aya</w>\nâĸ «\nsub titles</w>\nj t\ndisney land\nto bago</w>\nnh m</w>\ngroo ve\nfi awec</w>\n\" /</w>\nba o\nscra bble</w>\nom ni</w>\nff l</w>\num c</w>\nsi mba</w>\nali er</w>\nter rell</w>\nplu me</w>\nmi di\ndig nit\nco c</w>\nbru t</w>\nad ata</w>\nalche my</w>\nd sm</w>\nðŁĺĨ ðŁĺĨ</w>\nwin try</w>\nspa res</w>\ncu er\nconclu sions</w>\nto ys\nod or</w>\nfl ann\ngar vey</w>\nscrip tions</w>\ninspec tions</w>\ncat ap\nang lo\nst louis</w>\nheim er</w>\nat ay\ntr ich</w>\nen yc</w>\nchil ds</w>\nvent il\nmont p\nguiller mo</w>\ncircu lare\nz ell</w>\nmode led</w>\ncraf tsman</w>\nal ina</w>\nstimul ation</w>\ncashe w</w>\nju das</w>\nbest of</w>\nto ire</w>\nsusp ends</w>\nscol lege</w>\nreal ising</w>\nby tes</w>\nbloo ds</w>\nas si</w>\nðŁĴ ¿</w>\no hs</w>\nðŁį ĭ</w>\nscallo p</w>\nà¤ µ</w>\ngi fting</w>\ncamo gie</w>\nwil kes</w>\no zzy</w>\nðŁ¤ ¤\nver onic\nsav oy</w>\ndeme tri\nbaby girl</w>\nðŁĺį ðŁĺŃ</w>\nso x\ncly de\ninduc tee</w>\ncount down\nself care</w>\nà¤ ľ</w>\nvi ka</w>\ntor re\nphd chat</w>\npe ars</w>\naw h</w>\nsuff rage</w>\nle sn\nadmir ation</w>\nmp p</w>\nshark week</w>\nschul z</w>\nsantor ini</w>\nclo ver\n( *</w>\nstras bourg</w>\nex iting</w>\nso yu\nfinger print</w>\nche a</w>\nãĢ ľ</w>\nvin dic\nsong writers</w>\nso a</w>\nprou der</w>\nnam a</w>\n= ))</w>\nsimple st</w>\ndelici ously</w>\ngil les</w>\nu q</w>\nmn wx</w>\nep p</w>\nsh un</w>\nken nel</w>\nfall on\nðŁĲ £</w>\nsin d\ntra gically</w>\nout es</w>\nmodern ism</w>\nco ke\ngy n</w>\nspi on\nâĺ¹ ï¸ı</w>\nle am\ncompress or</w>\napolog ise</w>\ntwent yon\nfan atics</w>\nâĻ »\nsco tsman</w>\nsa wa</w>\nko u</w>\nas er\nà¸ ļ</w>\nwelter weight</w>\nphen om</w>\ntwick enham</w>\nstri a</w>\np out</w>\nka z</w>\ngi am\ncd p</w>\nho y\nemplo y</w>\nred mond</w>\nà¸ Ħà¸\nsm ere</w>\ntrance family</w>\nproto cols</w>\npie ce\nlu iz</w>\niter acy</w>\ncarl s\nunited states</w>\nhar med</w>\nphd life</w>\nch aw\nfoot prints</w>\nl Ã©\ncho ker</w>\nz ana</w>\nsli pper</w>\neric sson</w>\ninsul ting</w>\narticho ke</w>\nadvis ing</w>\nacquis itions</w>\nop or\nmut ations</w>\nre ar\nà¥ ģ</w>\npod cast\nwi ther\nkun g\níĺ ¸</w>\nwin slow</w>\ndi apers</w>\nðŁĵ¸ @</w>\nec ker\ncol lar\nhu ey</w>\ngi ro\nmono gram</w>\nkas ich</w>\nsi veness</w>\nmalay si\narom atic</w>\ngre s</w>\ngali leo</w>\nu ji</w>\nrob b</w>\ndr m</w>\nnone theless</w>\nas a\n: ></w>\nlo a</w>\nl np</w>\nat work</w>\nag t</w>\nlaksh mi</w>\npipel ines</w>\nid al</w>\nstre l</w>\nre all\nchain z</w>\nstone wall</w>\nsan sk\nðŁı ´\npied mont</w>\nhoste ss</w>\nci u\nt Ã©</w>\nanaly ses</w>\nwil helm</w>\nscott y\nrw by</w>\nmosqu it\nuse mb\nqu ins</w>\nðŁĳ İ\ntu cker\ns conf</w>\nspeci fications</w>\npsychi atry</w>\nbroo kes</w>\ns ils</w>\nol af</w>\nde to\nco di\ncli p\nfil th</w>\nwomancrush wednesday</w>\ngo to\nang erous</w>\nbe ale</w>\nw tc</w>\npaneli st</w>\nne x</w>\nlar sen</w>\nemili o</w>\ntab leau</w>\nh itters</w>\nconce ived</w>\nameric ani\nor tega</w>\nmar di\nÑ ĥ\npain tball</w>\nthir sty\nnew yorker</w>\netis ation</w>\ngo ss\nwe aker</w>\nu gh\ntro ll\nhar ga</w>\ndu al\nght ning</w>\nat ine</w>\nðŁĺİ ðŁĺİðŁĺİ</w>\ncook out</w>\npyrene es</w>\npo ss</w>\nauthent ication</w>\nsports wear</w>\nyun ho</w>\nkir o</w>\narchi pel\nshen ko</w>\nren der\nnov ation</w>\ndivin ity</w>\nðŁĳ £</w>\nsu fi</w>\nhumb ling</w>\nge opol\ndevote es</w>\nwait ress</w>\ntr ough</w>\npy ro\ni ba</w>\nbl ing\ngra f</w>\nepilo ts</w>\nbt r</w>\nof tball</w>\nbas king</w>\ndomin os</w>\nso om\nr ath</w>\nsher yl</w>\nqu el\nastronom ical</w>\nwel d</w>\ntrack list</w>\nsig nee</w>\nslee pless</w>\ncom man\nch ron</w>\nsumm on</w>\npure michigan</w>\ncri spr</w>\nsli p\nla gi</w>\nra q\num u</w>\nthal ap\nchar med</w>\nscru mp\nquad copter</w>\nski p\npeter sen</w>\nmun i</w>\nðŁĮ ¾</w>\nmon aghan</w>\ntra ys</w>\nick ed</w>\ncanad aday</w>\nte gr\nï¿ ½</w>\nhot ness</w>\nheavy metal</w>\nab ar</w>\ngop debate</w>\naz ul</w>\nspider man\nsun flowers</w>\nľ ë\nweb comics</w>\nbar d\nÐ ²\nnichol as\nslu sh</w>\nram an</w>\nmark ham</w>\nffici al\nff ler</w>\níĬ ¸</w>\nple ss\nanush ka</w>\nto to</w>\nsk aters</w>\npro wrestling</w>\ncompet es</w>\nay ala</w>\nmyster y\nthr ills</w>\nmp g\nindepend ently</w>\ny ul\nimper ative</w>\nformid able</w>\ntire less</w>\nst acking</w>\nton gues</w>\nmal tese</w>\npot ts</w>\nmat ti\nchar ting</w>\nchill out</w>\nsuper nova</w>\nome o</w>\nsky sports\nnu tty</w>\nðŁĹĵ ï¸ı</w>\nro han</w>\ninsp ired\nconcier ge</w>\nser ra</w>\nma kk\ngal at\nchi pp\nye v</w>\nì £\nreim bur\nop ul\nkimber ley</w>\ni eee</w>\nbre men</w>\nch itec\nor in</w>\nnak u\nbon kers</w>\nfoo ty\nemer gence</w>\nðŁĨ ĺ</w>\nsti p\nserge i</w>\nzo ey</w>\nai me</w>\nwou ld\ndy es</w>\ndestin y\nvinai grette</w>\ndri er</w>\ncirculare conomy</w>\nan archi\nss r</w>\nsch el\ncin er\ngro om\ndetermin ing</w>\ngar min</w>\ncal ais</w>\nincarcer ation</w>\nbu kit</w>\nno i</w>\nchelms ford</w>\nmckin ley</w>\nchi pped</w>\nbelong ed</w>\ntu mors</w>\nstr oud</w>\nmi i</w>\ninfluen za</w>\nwwen xt</w>\ntun dra</w>\ntele communications</w>\ncat sofinstagram</w>\nt ages</w>\nbeat ty</w>\no du</w>\nml kday</w>\noo per</w>\ndang le</w>\nak ley</w>\ncru mb</w>\nanti gua</w>\nti mbers</w>\nrou hani</w>\nðŁĴª ðŁĴªðŁĴª</w>\nha fi\n... !!</w>\nw cs</w>\ncoo p\nsn c</w>\nlit res</w>\nãĢ Ĭ</w>\nha z</w>\nco z\nk ant\ngreen field</w>\ncur ti\ny ale\nflye agles\nwhat soever</w>\nwor thing</w>\nrou lette</w>\nflyeagles fly</w>\nun da</w>\na inted</w>\nstand ing\nlusci ous</w>\nh pc</w>\neffic acy</w>\nash land</w>\nme ghan\nky wx</w>\nn pr\nbath tub</w>\nac os</w>\nh ani\nmar cor\nman tis</w>\nda isi\nbo ba</w>\nab bie</w>\nmu til\nvi al</w>\nspy der</w>\npo z\ng ti</w>\nel fie</w>\nnigh tw\nmetro id</w>\nanton i\nmad die\ndh ry</w>\ndar lings</w>\nten ds</w>\ntaek wondo</w>\natlan ta\nme ow\nchlo e\nãĥ İ</w>\nym es</w>\nsiber ia</w>\nk con</w>\ngu es\nmar iner</w>\nfac il\nazz le</w>\n[ ...\nhan nover</w>\nbav aria</w>\nvir go</w>\nte uk</w>\nu sps</w>\n) #</w>\nwall a</w>\nsam pson</w>\nneed less</w>\nver bally</w>\nhay ley\nbow led</w>\npi us</w>\nlam pard</w>\nham string</w>\nvol vo\nroad safety</w>\ncho king</w>\nsor bet</w>\na hem</w>\nhealthy food</w>\nbrai ded</w>\nhorticul ture</w>\ncr ative</w>\nche ek\nad do</w>\nthe force\nko ko</w>\nschiz oph\nj ie</w>\nw ada</w>\ntwentyon epilots</w>\nh bcu</w>\npro ton</w>\npau ls</w>\nlou isa</w>\nlat am</w>\nkyr gy\ncom pac\nsd k</w>\nsap i\n?? ?\nliber alism</w>\nep silon</w>\nai den</w>\nw usa</w>\nspra yed</w>\nbaske tball\nkim ono</w>\nblue wave</w>\nali as</w>\në§ Ī\nmug shot</w>\nce c</w>\ndo gre\nad ora</w>\nðŁĵ· @</w>\nkra kow</w>\nintrigu ed</w>\nexhau sting</w>\nastron omer</w>\nven ison</w>\nlady bug</w>\nci v\nbra e</w>\nus m</w>\nbri be</w>\nacup uncture</w>\npembro ke</w>\nke ating</w>\nchi e\ny ad</w>\nt si\nsm i</w>\nsee ding</w>\ngate shead</w>\nlis boa</w>\ngy p\ncanv ass</w>\nðŁĶ´ âļªï¸ı</w>\nop i\nni r</w>\nsoci etal</w>\nly te</w>\nati es</w>\nc sm</w>\nar tery</w>\nal in</w>\naka poor</w>\nabstr acts</w>\nâĢ¦ âĢ¦</w>\nteen wolf</w>\nne we\ntravel gram</w>\nsentim ental</w>\nper ched</w>\nhan del</w>\nho ek</w>\nf ay</w>\ncoordin ating</w>\nanim ate</w>\nman ian</w>\neffor t\njer ky</w>\nf ck\nadri enne</w>\nma bly</w>\ntra ding\nmy el\nspi ro\nsol a</w>\nstor ing</w>\nover drive</w>\nmonday morning</w>\ndream team</w>\npul se\nbon di</w>\nber nie\npgat our</w>\ntri poli</w>\nson am\nplat t</w>\nâļ ¡\nag roup</w>\nîĲ Ĵ\ninv ading</w>\nv cu</w>\nk ell</w>\nÃ± os</w>\nun dead</w>\npod casting</w>\nmercede sam\nmana fort</w>\ncor tex</w>\nque so</w>\nimpecc able</w>\npal mer\nwil doz</w>\nsport sc\nguacam ole</w>\ndispen ser</w>\ncate gori\nstun ts</w>\nper il\ninvit ations</w>\ndune din</w>\nxi e\nachi eves</w>\nsaf er\npre ds</w>\nph an</w>\nknuck les</w>\nk ak</w>\nigno res</w>\nlovemy job</w>\naru ba</w>\nound ation</w>\ndatac enter</w>\nco vert</w>\ngr ing</w>\ncou ple\nØ§ Ø±\nvol i</w>\nmc cle\narti sans</w>\nlu do\nkal am</w>\narom a\nunder taker</w>\nhu la</w>\nwiz kid</w>\ngu mb\ngod frey</w>\nbakers field</w>\nker n</w>\nengine er\ncar ve</w>\npal in</w>\nguaran tees</w>\npe bbles</w>\nb ays</w>\nzi eg\nfin k</w>\nâ¬ĩï¸ı â¬ĩï¸ı\ndown pours</w>\nro chelle</w>\nrasp berry\nðŁĺ ®\ngra phies</w>\nstom p</w>\ncaf es</w>\nari zed</w>\nutt ar</w>\ncal vary</w>\ndri e</w>\ncrusad er</w>\nbus an</w>\ntux edo</w>\nsi u</w>\nseam us</w>\ncul tured</w>\nblan chard</w>\ntown house</w>\nge red</w>\nbutter milk</w>\nflu ctu\nroger federer</w>\nhel i</w>\nðŁ¦ ĥ</w>\nu ous</w>\nram esh</w>\nmu ppets</w>\nemail marketing</w>\nye ss</w>\nbr ice</w>\nri zio</w>\npel o\ndonnein arte</w>\nu rable</w>\ninve stin\nbump ing</w>\nraji v</w>\nsav a</w>\nthro wer</w>\nfore x\no hhhh</w>\nth rust</w>\npull man</w>\nr fid</w>\nsep sis</w>\nle ed</w>\nfri ght</w>\nroun ding</w>\nne b\nph ins</w>\nai sha</w>\nutili zing</w>\nsqu ats</w>\ngold smith</w>\nj ic</w>\nbo ks</w>\nvau s</w>\ni po\nexclu sion</w>\ntari ff</w>\npo kes</w>\nmin al</w>\nland s\nen force</w>\nwashington dc</w>\nor char\ng x</w>\nmar ys</w>\ney our\naussi e\nbak ers</w>\nun popular</w>\nlatin os</w>\nlar ge\npu tnam</w>\nbol o</w>\nwa de\npel o</w>\ndi zz\nob struction</w>\nfla ppy</w>\nweare the\ndepend ence</w>\npajam a</w>\ne te</w>\ny ann\ne wan</w>\ndisc la\na ay</w>\nkar ina</w>\ne ic\nan trim</w>\nw soc</w>\nneg atively</w>\nkai do</w>\nfotogra fia</w>\ndh ru\ncolo ssal</w>\nmcle od</w>\nk wang</w>\nmani pu\nex hilar\nus atoday</w>\nsummer slam</w>\nco les\ntapro om</w>\nunbeat able</w>\nde ma\ntic ks</w>\nk ling\nfil s</w>\ncampaig ners</w>\nà¸ ķ\nbrew ster</w>\naudu bon</w>\nqu ay\nch s\nki gali</w>\nd ler</w>\nstrength ens</w>\nsom al\nsign ingday</w>\ngol ds</w>\npig ment</w>\norche stral</w>\ng q\nlin kin\nðŁı ĩ</w>\nta w</w>\nalgar ve</w>\nho v</w>\near le</w>\ngold fish</w>\nam ig\nex er\nben in</w>\ndru id</w>\nðŁĲ ¸</w>\nshe m</w>\nquat tro</w>\nmer cen\nmen te\nincorpor ating</w>\nbon anza</w>\nstate fair</w>\nen de</w>\nconcep tions</w>\ne es</w>\nâĻ¥ï¸ı âĻ¥ï¸ı\nd son</w>\nfire arm</w>\norb ital</w>\nwe h</w>\nmulti p\nfo b</w>\nrequi em</w>\np light</w>\nthou se\nsa id\noc re</w>\nremem brance\nn old</w>\nchi pping</w>\nbe v\ner t\nca thy\nsy m</w>\nri ggs</w>\nm ley</w>\ndialo gues</w>\nsl ender</w>\nhow l</w>\ngau teng</w>\nwd w</w>\nto bi\nsmo kes</w>\nim plo\nb pm</w>\nad n</w>\nmom basa</w>\ncap sul\nbloom field</w>\nartic ul\ncle o</w>\ngoog led</w>\nflu ffy\nl ard</w>\nen zyme</w>\nve sti\nibra hi\nfl ame\ne mea</w>\nout ages</w>\ndispro por\nble ak</w>\nan sel\nick er</w>\nst louis\nstock market</w>\ngood friday</w>\nsau lt</w>\nstal led</w>\npro m\nep som</w>\nb Ã©\nthe se\nsau ces</w>\nme w</w>\nlit fest</w>\npre d\nre u</w>\nkar ak\nsi enna</w>\nell in</w>\nbio technology</w>\nï¸ıâĥ£ -</w>\ntac tic</w>\nsa in</w>\npor k\nmon za</w>\nka j</w>\nlu sh\ncompart ment</w>\nchang ing\nshraddha kapoor</w>\nfo al</w>\nar tem\ncu ando</w>\ncan ola</w>\nori ente\nme sse</w>\nd ited</w>\nbr c</w>\nbox er\nbbc two</w>\ns st</w>\nment day</w>\nem ing</w>\nde wey</w>\nkof i</w>\nâŀĸâŀĸ âŀĸâŀĸ\nreali zation</w>\nsmo l</w>\ntw ood\nsan je\nflag staff</w>\nber wick</w>\ncor set</w>\ncan ary\nwhistle blower</w>\net ched</w>\ncom posing</w>\nsquee zed</w>\nbow er</w>\nauto desk</w>\nne h\nmathi eu</w>\nba ja\nÅ Ĥ\nhy dra</w>\nda im\nam eri\ninsi sted</w>\nmer lot</w>\ngar ros</w>\nheart news</w>\ngaine sville</w>\ncut ler</w>\nbo de</w>\nðŁĺī ðŁĺī</w>\nlew es</w>\nscoun try</w>\ng sa</w>\nus u</w>\ncc m</w>\ngod awgs</w>\nphara oh</w>\ncra e</w>\nmor ley</w>\nhyp noti\nf ades</w>\nneur ons</w>\nfu zz</w>\ning co</w>\nhigh landers</w>\nstar k\nvig ne\npac kets</w>\namar illo</w>\nreu ben</w>\ninsul ts</w>\nbas ic\nvec tor\nn me</w>\nac ruz</w>\ntro s</w>\ntransm itter</w>\nðŁĺ ŀ\ninterpre t</w>\nðŁĺ ²\npre quel</w>\nmc gowan</w>\ndis semin\nðŁĴĺ ðŁĴĺ</w>\nmascul inity</w>\nindie gamedev</w>\nali ve\nte t\npe tal</w>\nema iled</w>\nar med\nko o</w>\nhe er</w>\nba ird</w>\nsuper junior</w>\nmetro polis</w>\ndelav in\ndecl ines</w>\nstit utes</w>\nÛ ģ\np tbo</w>\ng lan\ncho res</w>\ne aling</w>\nchri ssy</w>\nste mc\nvi an\nassassin ated</w>\npron ounce</w>\nilleg als</w>\ndiscover y\ncav ill</w>\nfri fotos</w>\nf al</w>\nso i</w>\nsabot age</w>\nt int</w>\np dc</w>\nðŁİīðŁİ Ī\nãĤ Ĭãģ\nji o</w>\nendeav or</w>\nin sig\ncommit tees</w>\nshe arer</w>\nme tz</w>\nmar rying</w>\nh dd</w>\ng by</w>\nfre t</w>\ntri sh\npu l</w>\nscrip ted</w>\nsa ki</w>\nl w\nke ye\nshim i</w>\nnan aimo</w>\nca h</w>\nÃ «</w>\ntem pered</w>\nici an\ndu gg\ndish washer</w>\nair field</w>\ns rugby</w>\ngr inch</w>\ny st\nr ms</w>\nmahat ma</w>\nlan kan</w>\ndisc ar\ndige stion</w>\nno des</w>\nl ls</w>\nom ic\ngu tter</w>\ntis garh</w>\nfeder ico</w>\nelection day</w>\nbo he\nmaster card</w>\nfire ball</w>\nâľ Ķï¸ı\noy ster\np ong\ndo k\nen route</w>\nm vc</w>\nbeat the\nali stair</w>\nshu b</w>\nsh aming</w>\ncherno byl</w>\nghi bli</w>\nthe s\npin ion</w>\nd bs</w>\nsal ts</w>\nic tion</w>\nepi ph\nnc pol</w>\nin convenience</w>\nwhit ley</w>\ninspec ting</w>\nwood ley</w>\nwi ener</w>\nskil let</w>\nno les</w>\nm ca\nh ina</w>\na sha\nwilling ness</w>\nwell ness\ntam ed</w>\nshow time\ndis advantaged</w>\nber nat\nus n</w>\nmission aries</w>\ncoun selling</w>\narrog ant</w>\nquant itative</w>\nleg alization</w>\nho dge</w>\nenergye fficiency</w>\ncameron dallas</w>\npos sessions</w>\np bb</w>\nharris burg</w>\nv g\nhindu ism</w>\nhappy thanksgiving</w>\nfi b</w>\nre acting</w>\ntweeta picture\npol iti\nmu ppet</w>\nhur rah</w>\npac e\ncoast guard</w>\nguar ded</w>\nas am\npar ry</w>\nfore very\nx q</w>\noom f</w>\nke anu</w>\nj ind\nri st</w>\ncustomer service</w>\nsac red\nðŁĺ º</w>\nton er</w>\noccur rence</w>\nmat u\nval dez</w>\nred d</w>\nis ak\npower rangers</w>\npe asant</w>\nraj ini</w>\nabra ham\ne mil</w>\ncar do</w>\ntr il\nhair styles</w>\nobsole te</w>\nsam pler</w>\ndirec tive</w>\ndelavin kisses</w>\nver ton</w>\nglo s</w>\nsp ay\npaler mo</w>\ncom ets</w>\nman ziel</w>\nchicag of\nski pped</w>\npic torial</w>\nh ant\nb mi</w>\na ol</w>\nre opens</w>\npad dling</w>\ndevo s</w>\nfra ud\nbas eline</w>\nque ues</w>\nsp ired</w>\nsn are</w>\neu ve</w>\ndescri ptions</w>\ndaisi es</w>\nca ching</w>\ngall eria</w>\ntri mmed</w>\nstin o</w>\nrecy cla\nic ular</w>\nbir ken\nraw lings</w>\nfli x</w>\nchic as</w>\nb gt</w>\nlik eli\nargy ll</w>\nthel ove\nga ston</w>\nbl anca</w>\nha k</w>\nf one</w>\nsailor moon</w>\nh aci\nima c</w>\nfl yn\nde can\nbel les</w>\nap ic\nzo g</w>\ntaun ton</w>\ncon stance</w>\nlasag na</w>\nker nel</w>\nin ka</w>\nhar bor\ncollec tively</w>\ncalcul ated</w>\nav ille</w>\nshil pa</w>\npur du\ngi mm\nfun er\na est</w>\npembroke shire</w>\nnighting ale</w>\nn unes</w>\nhyper tension</w>\nhu bert</w>\nsli ders</w>\ninfer tility</w>\ncomm ended</w>\ntransat lantic</w>\nmetr ical</w>\n!! @</w>\nÅ Ł</w>\nss g</w>\nbac ca</w>\ninver ted</w>\nfun factfriday</w>\nit ans</w>\nalbu m\nacqu ainted</w>\nri er\nwhel an</w>\nsar ab\nmu e</w>\nsnoo ze</w>\npi ff</w>\nagre eing</w>\nsp itting</w>\njer maine</w>\nn ye\nâľı ï¸ı</w>\nam bush</w>\nze ph\ncon greg\nunivers ity\ns app</w>\nwann abe</w>\npat rice</w>\nib d</w>\ndo glo\nfri dges</w>\nsun d</w>\nking ston\nar gon\nkam en</w>\nhardro ck</w>\nds ley</w>\ndo lores</w>\nì °\nota ku</w>\npi ping</w>\nbe having</w>\nâŃĲï¸ıâŃĲï¸ı âŃĲï¸ı</w>\nblue bird</w>\nan sari</w>\nteapo t</w>\nfire work</w>\ncro p\nlog ans</w>\nty ped</w>\nthick ness</w>\nig ers\nc fp</w>\ndys functional</w>\ncontra sting</w>\net ty</w>\naston martin</w>\ntx st</w>\ndra grace</w>\nat tributes</w>\nmarath on\nmanu scripts</w>\njohn stone</w>\nðŁĺ± ðŁĺ±</w>\nbo er</w>\nay u</w>\naru gula</w>\npoo rest</w>\ncon du\nassu mption</w>\nanag h</w>\nno h</w>\ndelav in</w>\nsit ter</w>\ng Ã¶\nmor ow</w>\nkick start</w>\ncom i\ngl acial</w>\nghe ad</w>\nba in\nker shaw</w>\nen dof\nfre ud</w>\nom at\ni af</w>\nhu g\nsign up</w>\neach other</w>\ndefin ite</w>\ntu bing</w>\nshak ira</w>\nðŁĳı ðŁı½\nuu uu</w>\nsw in</w>\nsham bles</w>\nol as</w>\nsk ell</w>\nbrit ain\nkn w</w>\nclu tter</w>\nom y\nj ens</w>\nhang ed</w>\ncity scape</w>\nscra ps</w>\nun locking</w>\ndead liest</w>\ner no</w>\nbreast cancer\na it</w>\ninspec t</w>\nfu ri\nðŁĴ Į</w>\nku d\nju le\nor ah</w>\nmi ds</w>\nm dt</w>\nbur gring</w>\nr attle\npu sa</w>\nstal k\ncle ans</w>\niss ance</w>\nz ek</w>\nworth it</w>\nnam eis\nmusko ka</w>\ncouncil man</w>\nurban art</w>\nbar rac\nun solved</w>\ntu l</w>\ng ita</w>\nwhite board</w>\nsoy beans</w>\nem ent\ncont i</w>\nsaturday motivation</w>\nconveni ently</w>\ndoc king</w>\nt ado</w>\nâı ©</w>\nsp ino\npuppy love</w>\npo f\nfabric ated</w>\nrobb ers</w>\nadop ts</w>\nti fied</w>\nkk r</w>\nindulg ence</w>\nnotic eable</w>\nmacqu arie</w>\nchap el\nsensu al</w>\nki ko</w>\nmelan oma</w>\nlore tta</w>\nli ance</w>\nab en\nsp lus</w>\nga al</w>\nac ele\nlib dems</w>\ncompar isons</w>\nðŁĮ µ</w>\nrhy thms</w>\nmer y</w>\nen capsul\nnap ier</w>\nðŁĳĮ ðŁĳĮðŁĳĮ</w>\nðŁĳ Ĳ</w>\nplat z</w>\nfre sno\nre formed</w>\nran bir</w>\nel it\nthe best\nbhu shan</w>\nvin nie</w>\nimpro vised</w>\ns ittin</w>\nre created</w>\ne ba</w>\nec ker</w>\nac rob\npon te</w>\ncor d\ngi ddy</w>\neur usd</w>\nfe ver\nintu ition</w>\ngar i\ndum mies</w>\nbud weiser</w>\namend ments</w>\nte tra\nsch nit\nay as</w>\nmar ys\nci st</w>\nk ani\nker mit</w>\nðŁĺ±ðŁĺ± ðŁĺ±</w>\ntin ker</w>\nstrol ling</w>\ndi visional</w>\nniger i\nomin ous</w>\nmenstru al</w>\nkar ab\nk hy\nbw fc</w>\npan handle</w>\nl illi\nwell er</w>\nstra pped</w>\nson the\ntransfer ring</w>\nethe real</w>\nsne aks</w>\nru dol\ngab les</w>\njac king</w>\ncin code\nfor tune\ncanadi ens</w>\ncon for\nab normal</w>\nfrank lin\ntit a</w>\nmu la</w>\npersi st</w>\ncu ties\nki el\nðŁĩ± ðŁĩ\nher mann</w>\naw k</w>\nfi asco</w>\nko to\nwe ta</w>\nhi ker</w>\nbudd y\npreven tive</w>\nmcgra w</w>\ngame boy</w>\nforsy th</w>\ntop shop</w>\nsi ob\nsad h\nin tram\nfollow art</w>\nso aps</w>\ndragon ball\nou x\nmorri son\nà¹ ĥ\nlu bric\nadul thood</w>\nmorri sons</w>\nâļ łï¸ı\nher mo\nta ka</w>\nstall one</w>\nmis use</w>\nteam gb</w>\nra gha\ncon fined</w>\nat y\nhom ophobic</w>\nnw o</w>\nsky news</w>\nho ya</w>\nac rosse</w>\nwi iu</w>\npur Ã©e</w>\njed dah</w>\nðŁ¤ §</w>\nadvis ers</w>\nph ine</w>\nan is\nscrump tious</w>\në° ķ\nc ke</w>\nvin y\nter m\ns dc</w>\no do</w>\nhome school</w>\nvas c</w>\nleop ards</w>\ndebor ah\nillic it</w>\ncur ran</w>\nas roma</w>\nnau ght</w>\nmar ig\nbrand i</w>\nem p</w>\nðŁĺį ðŁĳĮ</w>\nî Į\nsu spend</w>\nlu z</w>\niniti ation</w>\nsch aft</w>\njensen ackles</w>\ncraw ler</w>\npost doc</w>\ndes ks</w>\ntrail blazer</w>\nden omin\ntri x</w>\nno ise\npo et\n± ï¸ı</w>\ns mug</w>\nvol atile</w>\nproof s</w>\npharmac ist</w>\nsardin ia</w>\nmash able</w>\nkim chi</w>\nco ed</w>\nschal ke</w>\ndoo dled</w>\nc sw</w>\nsh ur\nro x</w>\ndo k</w>\nchris brown</w>\nmathemat ician</w>\nab ound</w>\nang elic</w>\nrock ford</w>\nd ole</w>\nyor kers</w>\nms n</w>\ng man\nxavi er\nbor rowing</w>\nmark ings</w>\nlongh orn</w>\nk ja\ndiver ted</w>\nmm it</w>\neuph oria</w>\nay yy</w>\nte a\npa h\nck i</w>\nun cut</w>\nli ven\nky ung</w>\nfan art\nmer ing</w>\nred ding</w>\namo vie</w>\ngri di\nc thulhu</w>\nschol arly</w>\nju dah</w>\nth bewithyou</w>\neu calyp\nðŁĲ ķ</w>\nhert fordshire</w>\ncour troom</w>\nby u\nauc tioned</w>\nple ase\nmar cia</w>\nê° ĵ\nsucce eded</w>\nel as</w>\narvin d</w>\nt lot</w>\nsaig on</w>\nre tt\nra kesh</w>\nfd ny</w>\nas en\nse bring</w>\ngladi ators</w>\nyou know</w>\nv lad</w>\ngol a</w>\npar ap\nÑĢ Ð¸\nsab cnews</w>\none team</w>\noh l</w>\nsun e</w>\nri j\ncd c\nstar gate</w>\nrun down</w>\nplat o</w>\nph c</w>\nchat ter</w>\nra viol\nmn f</w>\nmand ala</w>\nli et</w>\nà¸ ķ</w>\nmari a\nhun gover</w>\nconsoli dation</w>\nfer rell</w>\ntradition al\nilove art</w>\ngal ap\nðŁı Į\nque zon</w>\nespa Ã±a</w>\nðŁĩ¨ðŁĩ Ń</w>\nho bby\nsteam boat</w>\nmali gn\nguil lau\npro hi\nits me\níĥ Ģ\nin scription</w>\nal z</w>\nmari an\nk ade</w>\nmm on</w>\nadju sting</w>\nne sts</w>\nintern ally</w>\nci r</w>\nvik ram\nmal ala</w>\nk ph</w>\nfel icia</w>\nthe real</w>\ncap tivity</w>\nat is</w>\nmarcor ubio</w>\nkale ido\nche v</w>\nmano j</w>\nle more</w>\ngent ri\nvi ps</w>\ntro pe</w>\n\" âĢĶ</w>\npair ings</w>\nmal nutrition</w>\nfr ay</w>\ndesig nation</w>\nbrun omars</w>\naz e\ntor rential</w>\npan zer</w>\nga il\nunder the\nthe ological</w>\nschizoph re\ndazz le</w>\nfreder ic</w>\nmo par</w>\nad illa</w>\nso ggy</w>\nra un\nmedi ocre</w>\ncolo rec\ni fe\np inst\nblu ef\nÂ ²</w>\nworld water\ngir oud</w>\nclar inet</w>\nad olf</w>\ntar antino</w>\nreceip ts</w>\nassu mp\nðŁĳ Ł</w>\ncoffe es</w>\nâľĬ ðŁı¾</w>\ndu plex</w>\ns of</w>\nr x\nlin o\ntimber wolves</w>\npan dit</w>\nmo tm</w>\ne ga</w>\nay ama</w>\nach s</w>\noutsi der</w>\nll en\nco er\ntil ly</w>\ncheese burger</w>\nma ds</w>\nple dis</w>\nemp ty\nnational parks</w>\naz iz\np mi</w>\njun kies</w>\nf ener\nsq n</w>\nÃ¨ s</w>\ngener ation\ncleop atra</w>\nbhuban es\nmosqu es</w>\nty free</w>\npopp ins</w>\ntw c</w>\nor well</w>\nn age</w>\nka whi</w>\nhol low\ndal ai</w>\nÂ¨Â¨ Â¨Â¨\nou ro\nm health</w>\ngi on</w>\naz o</w>\nvis as</w>\nreneg ade</w>\nre ic\nw sop</w>\nðŁĴļ ðŁĴĽ</w>\ne chel\ntox icity</w>\nmÃ¼ n\nbun k</w>\nstimul ating</w>\nasth our</w>\n\\ '</w>\nep h</w>\nende mic</w>\ncn bc\nshrin king</w>\npeabo dy</w>\nmichel angelo</w>\ncan yon\nwal e\nsu mi</w>\nsi ders</w>\ninu it</w>\n? .</w>\nprofession alism</w>\ndr acing</w>\nplat oon</w>\np ons</w>\nout bound</w>\nmaple leafs</w>\nde sol\ncen cy</w>\na than\nver ma</w>\nru bbing</w>\nok an\nðŁĳ ł</w>\nmull ins</w>\nauthent ic\nÅ į\nalman ac</w>\nga ia</w>\nbb q\non imo</w>\nke h\nty a</w>\ntou ts</w>\ny av\nre posit\n, .</w>\nwi ght\nse eyou\ncal lof\ndone sia</w>\nbar gaining</w>\ngr anth\nsd su</w>\namphi theater</w>\np su\nre watching</w>\nwine tasting</w>\npeak district</w>\ndete cting</w>\nthur man</w>\nphe e</w>\nèª ķ\nu mich\nre r\nsculp ted</w>\ngo le\nname sake</w>\nðŁĶ ģ</w>\nserv icing</w>\nbau gh</w>\npu gh</w>\npen cil\ndar th\nmunch kin</w>\nat orium</w>\nten ers</w>\nsun y</w>\nrolling stones</w>\nmag ing</w>\nstar rer</w>\ni dris</w>\nfe instein</w>\nag ron\nâĺºï¸ı âĺºï¸ı</w>\nsupervis ed</w>\nchamele on</w>\naggre gate</w>\nsucce ssive</w>\nmo gul</w>\ninst yle</w>\npol dark</w>\ncustom e\nohio state</w>\nha ya</w>\nci des</w>\nbroker age</w>\nangel ou</w>\nfifa wwc</w>\nde forestation</w>\nal ton\npam ph\nhu gged</w>\nho bo</w>\nchange able</w>\nku ber\nbur roughs</w>\ndemon etisation</w>\ncape cod</w>\nvers atility</w>\nor ice</w>\nle ila</w>\nwomenin science</w>\ntu a</w>\nhe dges</w>\nembarrass ment</w>\nali fe\nso ars</w>\nni ghter</w>\nhy mn</w>\ngi pp\nchas u\ntech s</w>\nni all\nk illa</w>\nhi ka</w>\ncam els</w>\nvalu e\nÂ ¢</w>\nsc oops</w>\nmah moud</w>\nclu sive</w>\nadri ana</w>\npac o</w>\noz il</w>\nun as</w>\ntransl ations</w>\nwhispe rer</w>\ns bi</w>\nbu xton</w>\nbio tics</w>\nindi ffe\nken ney</w>\nk lar\net ching</w>\nbarra best</w>\ninst ability</w>\nse ine</w>\nvo tel\nblo gged</w>\nwhis key\nmy space</w>\nt ant\nlan dia</w>\ngive back</w>\nillu s</w>\naw ak</w>\nac ab\nf bloggers</w>\ncloud computing</w>\nblat ant</w>\nsyri ans</w>\nband ra</w>\nsty n</w>\nan em\nke ted</w>\nkar thik</w>\nbarun sob\npin ot\ngu bernat\ngay e</w>\narti ste</w>\ni fied</w>\nconven tions</w>\nhu an</w>\ngeni uses</w>\neeee ee</w>\nfol ly</w>\nsomer ville</w>\npride month</w>\nðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸</w>\nchemo therapy</w>\npaul s\nbak ar</w>\nìĦ¸ë¸ Ĳ</w>\ntaiwan ese</w>\nfol lo\nc ss\nre ign\nnn nn</w>\nfla un\ncatastro phe</w>\niti es\nfrag ments</w>\nextre mists</w>\nym oun\ncar men\neze kiel</w>\nconne cting</w>\nse h</w>\nman ta</w>\nremodel ing</w>\nwe ymouth</w>\nat oms</w>\nce m</w>\nne well</w>\nlu mi\nthe open</w>\nmo c\nmili band</w>\ng land</w>\nz shq</w>\nmag gie\nmani acs</w>\nm sp\nad y\ncre ams</w>\nle anne</w>\ne sta\npy g\naf finity</w>\npray er\ndun bar</w>\nligh troom</w>\nac adi\nwyn onna\nroman tic\nstate dept</w>\nsick le</w>\nwh os\nlam o\net our</w>\nfin ity\nshru b</w>\nshar pen\npun dit</w>\ned on</w>\naf ore\nmar s\njeff ery</w>\nter ps</w>\nmedal list</w>\nkath arine</w>\naccu sing</w>\nta z\nroy d</w>\nfrom home</w>\nconfron tation</w>\nalle gh\nðŁĳī ðŁĳī</w>\nrefresh er</w>\nran veer</w>\nnever land</w>\njo jo\nlu crative</w>\nen am\nca ver\npa edi\nman jaro</w>\nflu ids</w>\nthe ssal\noppre ssed</w>\nmu ss\njoh anna</w>\nØ ®\ncn g</w>\nbuil dthe\nsett les</w>\ns ith</w>\nfu ego</w>\ncl amp</w>\nar ag\npay er</w>\nted x</w>\nmand y\ninter stellar</w>\nfr c</w>\nch and</w>\nb cc</w>\nmo lo\nlen til</w>\njohan sson</w>\ngrims by</w>\nnature lovers</w>\nðŁļ¨ ðŁļ¨ðŁļ¨</w>\nshin de</w>\nx in</w>\ninternational dayof\ntransiti onal</w>\nsat a</w>\ncad dy</w>\nwo d</w>\nif u</w>\nha ys</w>\nholl yo\nj ang\nir c</w>\nco im\ngrad able</w>\n\" \"\nðŁį ´\nà¦ ¾</w>\na el\nn yo\nwest lake</w>\ntime out</w>\nsof i\nphenom ena</w>\ncultiv ation</w>\nag no\nun armed</w>\nso t\ncon j\ngen o\nroyal navy</w>\nnutriti on\nfair mont</w>\nti relessly</w>\nsn g</w>\nre ty</w>\nmic a</w>\nlu cent</w>\nslo ane</w>\ndroo l</w>\nriz al</w>\nod ell</w>\ncritici zed</w>\n. '\"</w>\nla ze</w>\ndeser ted</w>\nco der</w>\npra s</w>\nl illian</w>\nitiner ary</w>\ndav y</w>\nan ap\nwhi pping</w>\nhobo ken</w>\nkare ena</w>\nçľ Ł\nvi us</w>\nter n\nnan tucket</w>\nmis understood</w>\nbu laga</w>\nst ant\nchin ook</w>\nz am</w>\nreli es</w>\nd ss</w>\ned mond</w>\nsket chy</w>\nm ell</w>\nfe x\nrec tor</w>\ndist ill\nday dream</w>\nwine maker</w>\nri pley</w>\nbillion aires</w>\nhel ene</w>\nati f</w>\ncul prit</w>\nbertr and</w>\nwou ldnt</w>\nma pped</w>\nv ak</w>\ngla dly</w>\nparliam ent\nkidlit art</w>\nware ness\ngoli ath</w>\nâĨ ĵ</w>\nview point</w>\ntat ted</w>\nfu ls</w>\ndor sey</w>\nang lers</w>\nli ds</w>\nki ya</w>\nbow les</w>\nbe h</w>\nb ite</w>\ncompati bility</w>\nance stral</w>\npro x\nbeha ved</w>\ngubernat orial</w>\nch field</w>\nsab an</w>\nz h</w>\nteen y</w>\nshibu ya</w>\nholli day</w>\npan cy</w>\nâĿĦï¸ı âĿĦï¸ı\nseun gri</w>\n? ,</w>\nðŁĩ¦ ðŁĩ·</w>\nim itation</w>\nimpac tful</w>\nany i</w>\ngene vie\naÃ± os</w>\nbate man</w>\ngli der</w>\naf ar\nra sheed</w>\neffor tless</w>\nsh war</w>\ndach sh\ner un</w>\nat os</w>\nkin i</w>\nch d</w>\nkha ki</w>\nk lin</w>\nfelici dades</w>\nbel o</w>\nas l</w>\nto ppers</w>\nfin ley</w>\nstac ey\nrigor ous</w>\nkar ting</w>\nle ppard</w>\ncar michael</w>\nbe ret</w>\nc se</w>\nak hi\nmer ingue</w>\nab an\nha ke\nger i\ner jee</w>\nre sto</w>\ncomm anders</w>\npr it\nfl or</w>\nad ven\nex termin\nremain der</w>\nå Ĳ\nes g</w>\nmartin o</w>\nlulla by</w>\n| @</w>\nmi gn\nin store</w>\nbig bang\ncor di\ncau ley</w>\nante bellum</w>\ndg ate</w>\ncro ck\nspan dex</w>\nscaf folding</w>\nore os</w>\nê°ĵ ìĦ¸ë¸Ĳ</w>\npom ona</w>\nma uro</w>\nuni versi\nre mi</w>\naf ootball</w>\nt ant</w>\nsm alls</w>\nne h</w>\nworl do\ntropic al\nmor ph</w>\njav elin</w>\ngla r</w>\narqu itec\nreminis cent</w>\ntu bs</w>\nspide y</w>\nmake u\nsyl la\nprogressi ves</w>\nblo t</w>\nshor ten</w>\nkeep in</w>\nch ak</w>\nang st</w>\nsuper food</w>\ndecad ent</w>\nston y\nneuro logical</w>\nar boretum</w>\nann ak\nfe ma</w>\nper cu\ndis respectful</w>\nsmall biz\nlo x</w>\nco om\nc sc\nbs bi\npre valence</w>\nhim ss</w>\nesp an\nmo ga\nfr ampton</w>\nsky map</w>\nmas se\nlevi athan</w>\n( ).</w>\nnoctur nal</w>\ncar ameli\nang or</w>\namne sia</w>\noutsi ders</w>\nshe alth\nrhin o\nant ag\nag io</w>\nðŁĴ° ðŁĴ°\ntake me\nkab addi</w>\nc si\nm sh\ncoch rane</w>\nthessal oni\nsil a</w>\nha us\ndu sting</w>\nobe se</w>\nmack lemore</w>\nmani sh\nlen in</w>\nm dc</w>\ngro wn\nshef field\ns rs</w>\nke le\ncar son\nch um</w>\ndah lia</w>\ncan tore</w>\nopp o</w>\nhow ling</w>\ncyber crime</w>\nsur realism</w>\nsc ran\nfa iz\nthre n</w>\nrac ists</w>\nr out</w>\npk not</w>\nse mana</w>\nsin i\nmc cull\nma chi\nalfon so</w>\ny b\nsar dar</w>\nkend rick\nden g</w>\nreci pro\non f</w>\ndoom sday</w>\nbri bery</w>\ncustom iz\nart is</w>\nc pi</w>\nðŁĻĪ ðŁĻĪ</w>\nsla va</w>\nlet te\nen s\nâĿ¤ï¸ı ðŁĺĺ</w>\ncra yon</w>\nad an</w>\ntr c</w>\nmigr ate</w>\nsimp son\nrow ers</w>\nking sley</w>\nfarmers market</w>\nshee han</w>\nne phe\nbor non\ncar ton</w>\nmic key\nall ure</w>\nu lu\nsli pknot</w>\nheb do</w>\ngui do</w>\ndog celebration</w>\nonline marketing</w>\nacceler ating</w>\n) ..</w>\norigin ated</w>\nmacar oni</w>\ned tech\nout field</w>\nmit z\ndisc us</w>\nadverti ser</w>\nman or\nha shi</w>\ndescri p\ncap ita</w>\nful bright</w>\nrecep tor</w>\ncon n\ncon ey</w>\nspion age</w>\nr attle</w>\npre st\nu li\nblog post</w>\nacker ay</w>\n) âĢ¦</w>\nred velvet</w>\nmat th\ninspir ing\nb sd</w>\nker ri\npo con\nmil lar</w>\nre pur\naccent ure</w>\nä ¹\nram bo</w>\nragnar ok</w>\ndele ting</w>\nbritish museum</w>\npat ory</w>\nleip zig</w>\nflori an</w>\nsci fi\nin ers</w>\nbr ate</w>\nyo y</w>\nmelis sa\nab er</w>\nma sa</w>\npo te</w>\nmosquit oes</w>\ntranspl ant\nr pa</w>\n; ))</w>\nbast ille</w>\nyl an</w>\njoye ux</w>\nmelo dic</w>\ncap tions</w>\natri st</w>\nroch dale</w>\ngott i</w>\npew die\ncuties aturday</w>\nwho is\naqu aculture</w>\ntiv a</w>\nsp el\nhe ss</w>\nha ji</w>\nfred die\nco per\nbrand o</w>\nv k</w>\nphoto book</w>\n* ,</w>\nmy dayin\nmicha ela</w>\nbrune i</w>\nsr ini\nin te</w>\nÄ ±</w>\nde ol</w>\nd fc</w>\nsepar ately</w>\nbun d</w>\nve sts</w>\nto c\nme ck\nrein forced</w>\nconstra ints</w>\ncar roll\nsq ft</w>\nre ver</w>\ncam per\nbird man</w>\nin action</w>\ngener ators</w>\ntriumph ant</w>\npe sts</w>\no vo\ngy pt</w>\nal amo\nsc aled</w>\nsuresh pp\nsd n</w>\nis mo</w>\ngi os</w>\n) @</w>\njustic eleague</w>\nrestaur ant\ngab i</w>\nden gue</w>\nnext gen</w>\nexemp li\nap ex\ninspir ational\ndown side</w>\nkid z</w>\nu pl\net na</w>\nalvar o</w>\nfel dman</w>\nbar net</w>\nm ha</w>\nes ch</w>\nbloo ded</w>\n>>>> >>>>\nkan i</w>\nho fficial</w>\ncasablanc a</w>\nbir ds\nty ga</w>\nsw amp\no day</w>\nnew castle\nnb ap\nci sion</w>\ncho ols</w>\naf lo\nne p</w>\nmon ton</w>\nak b</w>\nsuper model</w>\ndown time</w>\nth os</w>\nsc wx</w>\nsnoo py</w>\nag greg\nyo ke</w>\nnor cal</w>\nwe tt</w>\nprolon ged</w>\nme tast\nbeat er</w>\nf ta</w>\nt lap</w>\ndisgu sted</w>\ny h</w>\nvoice over</w>\nitch y</w>\nip c</w>\nðŁİ ¾\nphe asant</w>\nstra its</w>\nram pant</w>\nj g\nfer til\nassu res</w>\nfortun es</w>\nsal inas</w>\nliz ards</w>\nkett le\ni bs</w>\ncyn thi\nhe g\nmc cr\nsoccer oos</w>\nhappen ings</w>\ncor den</w>\nðŁĺĤ ðŁĳĮ</w>\nt ches</w>\negre t</w>\nwolver ines</w>\ncongratul ated</w>\nho gg</w>\nbott ling</w>\nwr i</w>\nfer ri\nbo sch\naf ire</w>\nog den</w>\ns jo\nj dm</w>\nsv t</w>\ncon tex\ntol lywood</w>\nmin k</w>\nme se</w>\nsuper sonic</w>\nop oulos</w>\nå ¸\nâĶ ģ\nknuck le</w>\ngu ise</w>\ngam i</w>\nchu cky</w>\nz inger</w>\nradi al</w>\ncompla ined</w>\nbo da</w>\nfe tal</w>\ndiscipl ines</w>\ncor ro</w>\nðŁĩ®ðŁĩ ¹\nop ted</w>\nfiltr ation</w>\nad nan</w>\nem cee</w>\nmi stre\ninsom ni\nfer gus</w>\ntra jec\non don\nmed tech</w>\ntanger ine</w>\nmadra s</w>\ngru e\ncab s</w>\nz hu\nsureshpp rabhu</w>\ninsul ated</w>\nday swild</w>\npp m</w>\nband ai</w>\nv day</w>\ns ff</w>\nsqu id\nlo thing</w>\nnot dead</w>\nexpre ssive</w>\ncu ll</w>\nala stair</w>\nx u\nup front</w>\nfish ers</w>\nen es</w>\num d</w>\ndis missal</w>\nsti er</w>\nsel s</w>\nlu st\nre active</w>\nprote ster</w>\neyel ashes</w>\nal im\ngoo de</w>\ngre eng\nda ir</w>\ncom pen\nanush ka\nproto typing</w>\nma pu\nbear ings</w>\nðŁĲ Ł\nfor me</w>\nbsbi botany</w>\ntimo thy\nout skirts</w>\nam bed\nare tha</w>\nwend ell</w>\nstre aks</w>\nni m</w>\nk pk</w>\nsne e\nfit ter</w>\nquo ta</w>\np ate</w>\nwin ning\nðŁį Ń</w>\nsho pping\nma inst\ncul ver</w>\nste vie\nmcfad den</w>\ncounter parts</w>\ngren fell</w>\nfol som</w>\ndor set\ntech crunch</w>\nâ¬ ħï¸ı</w>\ntip tuesday</w>\nus l</w>\ntre x</w>\ngeor gie</w>\nranveer official</w>\nlic ks</w>\nse wn</w>\nk f</w>\n' âĢ¦</w>\njap s</w>\np ate\north op\nfe sta</w>\nstra s</w>\nmon tal\nhammer smith</w>\nfore most</w>\nwido ws</w>\nmad re</w>\nite z</w>\nmito chondri\nlig ans</w>\nz ona</w>\ncari bou</w>\nm ss\nandre i</w>\nweather channel</w>\ngh c</w>\n: ...</w>\nta ft</w>\nawe ather\nal isation</w>\nbru tal\nbliss ful</w>\nnik ola</w>\nmal icious</w>\nq m</w>\nmpg vip</w>\nbro die</w>\nbl itz\napplau d</w>\ndri bb\nv ague</w>\ndog go</w>\ntransl ating</w>\ninterpre ted</w>\nhat ched</w>\nge tyour\nbenefici aries</w>\nspar ring</w>\ncaes ars</w>\naw illiams</w>\nla hat</w>\nbro ke\nti mp\nvirtu es</w>\nrel ying</w>\npie tro</w>\nk tn\nici sts</w>\npab lo\nlou i\na ag\npn pp\ncha st\npul ses</w>\nfini sh\nusair force</w>\ntype writer</w>\nthomp son\ndog s\nut to</w>\nãģ į\nsand al</w>\nnew ly\ndo ge</w>\nz w</w>\nwan kers</w>\nne gr\nmu cha</w>\ndetermin es</w>\nblack fish</w>\nsk unk</w>\nmu ps</w>\ninstru ment\nphy to\ndaysto go</w>\nskin ned</w>\nhai der</w>\ncon ten\nðŁĲ¾ ðŁĲ¾</w>\nwe iler</w>\nundoub tedly</w>\nchair ing</w>\nwall is</w>\nsh ard</w>\nzind abad</w>\nadul t\nabsor ption</w>\npre sto</w>\ndeplo ying</w>\ndrum mond</w>\nbattle front</w>\nseag ulls</w>\nhow dy</w>\njuda ism</w>\ndes de</w>\npart ition</w>\nâľ Ŀ\nno logy</w>\nnational bestfriend\nlesn ar</w>\nfilm fare</w>\nco asts</w>\nchristen sen</w>\nac an\nmb u</w>\nco pped</w>\nru bble</w>\nsw c</w>\nfun nier</w>\nfar ther</w>\nwhere as</w>\nnano technology</w>\nwith stand</w>\npil low\nbow ers</w>\nto pe</w>\nit ly</w>\ncon fit</w>\nma kar\ncomfor ts</w>\nbo sh</w>\ncli pper</w>\nbal la\nsti k</w>\nmil b</w>\nsafe guard</w>\nmusi que</w>\neas port\nya z</w>\npad ded</w>\nbad er</w>\nfore ign\nchop in</w>\narchi ve\no ka\ntran sporting</w>\ntml talk</w>\naj it</w>\nconsequ ence</w>\nsc roo\nff o</w>\ncollabor ated</w>\npug chat</w>\nye mi</w>\njav ed</w>\nau burn\no of</w>\nma w</w>\nsau cer</w>\nmiti gate</w>\ni les</w>\nevangeli st</w>\nter ie</w>\nre cl\nindic tment</w>\ncat a</w>\nbright ness</w>\nmay the</w>\nwhim sical</w>\nun lv</w>\nkey word</w>\ncu min</w>\nmed way</w>\nwest world</w>\ntra w\nim posing</w>\nform ity</w>\ncoul ter</w>\nab z</w>\nny pd\ngrass i</w>\nkel sey\nqld pol</w>\nclock work</w>\nf dr</w>\ndi anne</w>\nâĺ ĳ</w>\nad h</w>\np ann\nbra vely</w>\nae ge\nun lawful</w>\nver di</w>\npocaly pse</w>\nphar o\nkar la</w>\nreson ance</w>\nma stiff</w>\nla dak\nbu u\nma iled</w>\nhi i</w>\ncraw ley</w>\ntor rent</w>\nmach ado</w>\nliby an</w>\neffort lessly</w>\nfal sely</w>\nq vist</w>\nke ef</w>\ncraf thour</w>\ncheri shed</w>\nval kyrie</w>\ns ari\nkal amaz\nbe he\nðŁĮ Ļ\nth im\nro ddy</w>\ncol trane</w>\nbut chers</w>\nach im</w>\nwk end</w>\nawk ward\ncab rera</w>\n:) )))</w>\nfran c</w>\ndecl an</w>\ncon dos</w>\na ja\npandor amusic</w>\nchar ter\nph ill\nmon trose</w>\nhatch back</w>\nhandic app\ngre aves</w>\neucalyp tus</w>\nut most</w>\nt son\nbur ton\nmid wives</w>\nin cur\nðŁĺį #</w>\nmoo d\ncompre ssed</w>\ntom a\nmust ang\nmo g</w>\nas ana</w>\nte stic\nsho tel</w>\nin sol\ncor sair</w>\nnh q</w>\nben ny\nsm ma</w>\nkap ur</w>\nin con\njon as\nener gies</w>\ndon al\nas ad</w>\nse z</w>\nn pa</w>\narchi ved</w>\nstimul ate</w>\ndo p\nhy d</w>\ngri eving</w>\nãĥ Ī\nron a</w>\nwhy te</w>\ntree house</w>\nss ell</w>\nsand ro</w>\nko bo</w>\nther most\nse clu\nhi ya</w>\nge ez</w>\nmam as</w>\nprisc illa</w>\nflav oured</w>\nfas s\nw old</w>\nmaker space</w>\ncospla y\np tv</w>\nhappy valentinesday</w>\nsequo ia</w>\nlove craft</w>\ngu an</w>\nd tm</w>\nci i</w>\nyoko hama</w>\npos thum\nre q</w>\nðŁĶµ âļªï¸ı</w>\ngalat asar\ndol by</w>\nhamp tons</w>\ndisturb ance</w>\nstone henge</w>\nok c\ndisrup ting</w>\nmonth sary</w>\njun gle\nhead lights</w>\ndu stin\nmicro sof\nhappy mothersday</w>\nko ko\ngra zi\nte sto\nna idu</w>\nmal ay</w>\nari al</w>\nru mb\nab oo</w>\nhar man</w>\ntra pe\nspo ils</w>\nje ho\ngo dly</w>\nlock screen</w>\nz un\npi ous</w>\nma gento</w>\nl enders</w>\nprob able</w>\ncorpor al</w>\nm our</w>\naw al\nsu a</w>\ncall me\nton ne</w>\ngo vin\ndevast ation</w>\nx j</w>\ngear box</w>\nwar lock</w>\nper me\nit ate</w>\ngaza underattack</w>\ndu val</w>\nparas ite</w>\nclement e</w>\nle th</w>\ni va</w>\nfro zen\ntho les</w>\nto bin</w>\ncair n</w>\ns ill\nluc kiest</w>\nconver ts</w>\nst ale</w>\npan cra\neuro pale\nwis dom\nsch ur\nì ¶\nverti go</w>\nbi j\nu bc\nnu re\nrighte ousness</w>\nmt c</w>\nfactor y\nver st\nrevers ed</w>\nhur i</w>\nhee chul</w>\nfab er</w>\nar r</w>\nul ous\nven om\nph at</w>\ngreen ery</w>\nbra dy\nÃ ¦\n: ((</w>\nnever giveup</w>\ndi sha</w>\nmo ta</w>\nhealth care\ndun ham</w>\ndex po</w>\nden zel</w>\nbb ins</w>\nf ics</w>\nwh am\nmc g\neli an</w>\nwat a</w>\nstr alia</w>\ntel lu\npe sky</w>\nspin off</w>\nar moured</w>\nre acted</w>\ndo fficial</w>\nte du</w>\nsag ar</w>\nmor ally</w>\nparalle led</w>\nfi os</w>\ndow ner</w>\ndau gh\nre do</w>\nworld cup\ntari q</w>\nbar ne\nglaci ers</w>\noc cult</w>\nbarbar ian</w>\nher mosa</w>\n!! !)</w>\ny ur\ninter nation\np ss</w>\nsit u</w>\np int\namerican air</w>\nsw am</w>\ndopp ler</w>\nðŁĴĻ ðŁĴľ</w>\ncincode mayo</w>\nle van\nhell enic</w>\nmc ne\nju di\nyu h</w>\nst x</w>\nqu are</w>\nðŁĺĤ .</w>\nsti g</w>\ng els</w>\nmot ley</w>\nhard work\neuro zone</w>\ne ad\nç¥ Ń</w>\nseab ir\nci us</w>\nla id\nalpac a</w>\npresu mably</w>\npewdie pie</w>\nboo ted</w>\nam ari\ntam ine</w>\nsol ace</w>\nbar row\nacade mies</w>\nx ian</w>\nom ination</w>\ndun geons</w>\nb ma</w>\nde ity</w>\nai k</w>\nstab il\nhir a</w>\naffection ate</w>\nving ne</w>\nnew port\nãħĭ ãħĭ</w>\nthir ds</w>\nre tains</w>\naroma therapy</w>\nski er</w>\nni ma</w>\ndo pe\ncr inge</w>\ncon domin\nto or\nanim ator</w>\nsar aj\nseas cape</w>\nminim alism</w>\nlake shore</w>\ncalla way</w>\nberg man</w>\nà¤ Ĺ</w>\nwhisp ering</w>\nstupi d\nri ghtful</w>\nrequ is\nir n</w>\nse va</w>\nut pol</w>\ntuber culo\nsqu ish\nde but\ngovern mental</w>\nchrist ine\nall man</w>\nweap on\ns ito</w>\nbur i</w>\nlo lita</w>\nleaf y</w>\nfu ch\ntin ted</w>\nmck en\na hahaha</w>\nðŁĩµðŁĩ ¹</w>\nrepe al\nne gan</w>\nðŁķ Ĭ\ntail gating</w>\ngame insight</w>\nðŁıŁ ï¸ı</w>\nyaku za</w>\nz t</w>\nti ring</w>\npro posing</w>\nbow lers</w>\ntra itors</w>\nak shi</w>\ncler gy</w>\ncit o</w>\nup sets</w>\ntu scal\nsymph onic</w>\nsil ently</w>\nshu ff\nblack well</w>\nðŁĺĤ )</w>\nko be\nrober to\nri dg\ndc u</w>\nmer ino</w>\nft p</w>\neast side</w>\n. ~</w>\nnb l</w>\nmn leg</w>\nts for\nfrau dul\nca pping</w>\nin my\ngymna st</w>\nston es\nss in</w>\ntwe aks</w>\nshag gy</w>\noak land\ndem sin\nsang ria</w>\nmm va</w>\nhen nessy</w>\ndown ton</w>\nri ghtly</w>\nin it</w>\naga ve</w>\nob last</w>\nnorthe ast\nfriend ship\ndal a</w>\ntro phy\nðŁĳ ½\nmag in\nmargar itas</w>\nê ·\nww fc</w>\nfa sh\ndi ke</w>\ncu d\nchar t\nðŁĳ ®\nrefuge es\njop lin</w>\nn cs</w>\nimp y</w>\nfirm ware</w>\npas cu\nflam in\nhealth tech</w>\nbell letstalk</w>\nw aka</w>\nol ls</w>\nla go\nco wan</w>\nbombar dier</w>\nsh ome</w>\nðŁĻ ħ\nmc master</w>\nna ve\nwell s\nu ta\ntell ers</w>\nmis fits</w>\nkap il</w>\nface off</w>\naf firm\na pro\nwhit epaper</w>\nsuper yacht</w>\nspeci mens</w>\nal located</w>\n... ,</w>\n- __\nka w</w>\ndachsh und</w>\ndjo ker\ns work</w>\nqui ere</w>\nor um</w>\nðŁĲ ł</w>\nsom m\nc mt</w>\ningh our</w>\nskin ny\nlgb ti</w>\ngi ggles</w>\nbreak away</w>\nresear ched</w>\npar ity</w>\nmy al\nms l</w>\nre tained</w>\nsi vity</w>\nmake inindia</w>\nsol ves</w>\ndefam ation</w>\nwal tham\nsri racha</w>\nroad way</w>\nconcep tu\nal in\niw ant\nå Ī\ndel ft</w>\ntender loin</w>\nga ins\nfaul ts</w>\nsw ire</w>\nst ellen\npol lo</w>\ndy ne</w>\nbornon thisday</w>\nasdf ghj\nsq l\nsali m</w>\nadvis es</w>\nvo ip</w>\nìĹĳ ìĨ\nun touched</w>\nshe il\nontari o\nuph ill</w>\nso bre</w>\nde shi</w>\nnov ella</w>\ndu tton</w>\ncraw fish</w>\nØ§Ù Ĩ\nma a\ntw ine</w>\nkal in\nðŁĩµðŁĩ Ń</w>\nye ss\nbrook s\nhoo siers</w>\nton ka</w>\numbrel las</w>\nay ers</w>\nate am</w>\nacqu iring</w>\nsu ction</w>\nÃ¤ n\nwi es\ntari ans</w>\nsoci o</w>\nmat tb\nshepher ds</w>\no so\ncharity tuesday</w>\ns logans</w>\nninj as</w>\nal bat\nby te</w>\nbash ir</w>\ntrampol ine</w>\nmydayin la</w>\ni ja</w>\nbas el\nror y\ngol die</w>\nfi rec\nun noticed</w>\npecu liar</w>\nsch a\nker son</w>\nmour ns</w>\nliquid ity</w>\nqu ipment</w>\nhi bs</w>\nar s\naeron au\nslide show</w>\nsla bs</w>\ndelici ousness</w>\nsk itchen</w>\nhta fc</w>\nfull erton</w>\ncre ighton</w>\naer ob\nprocrastin ation</w>\naz ores</w>\nwhite hall</w>\nuss occer</w>\nmedi ation</w>\ndjoker nole</w>\nand me</w>\num en</w>\nnoxi ous</w>\njo ss</w>\nili fe</w>\nanni vers\nsudan ese</w>\net res</w>\nunder mine</w>\nwhole foods</w>\ndiso be\nkor i</w>\nade le\neli z\ncan ti\nal on</w>\ngymna sium</w>\nsarko die</w>\nmeteoro logist</w>\nyl de</w>\nste en\nstamp collecting</w>\nnas al</w>\nlo tt</w>\nfran ks</w>\nex ol</w>\nack i</w>\ngood year</w>\nanimal rights</w>\ny les</w>\nvio lets</w>\nmm es</w>\ns thel\nra pping</w>\ntu scan</w>\nwai ver</w>\ntur ner\neat local</w>\nnorthe asthour</w>\nanim ations</w>\ntom morow</w>\nt sh\nff ame</w>\nbra e\npe tron\nglam our\nbr yn</w>\nd cs</w>\nbal es</w>\nðŁĶ ¶\nbro v\nbre v</w>\nb ons</w>\nphysi que</w>\ncar ne</w>\nx e\nelix ir</w>\nvol ved</w>\nl oma</w>\nìľ ł\næ ĺ\nvan u\nri gs</w>\nbal ance\nva res</w>\nbon ita</w>\nsprink le</w>\nperfec to</w>\ndi on\nle ak\ncalcu tta</w>\no ba\nd ma</w>\nc mon</w>\ntun er</w>\npneu monia</w>\nbo gus</w>\napolo ge\ncl ough</w>\nbor ne\n)) ))\nrevi ved</w>\no varian</w>\nner f</w>\nc legg</w>\nfan fest</w>\ncho u</w>\nreali zes</w>\nmc n\nli gu\nleg alize</w>\njust saying</w>\nfor ster</w>\nbo sni\nk hi</w>\nin dom\nhei del\nen cryp\nsi ss\ned di\nmar bles</w>\nbrisban e\ny ing\npre paid</w>\nwal sall</w>\ncooper ate</w>\norche str\nmar isa</w>\nho wie</w>\nche wy</w>\nbren ner</w>\nandro meda</w>\ne gan</w>\nsto cki\ncav endish</w>\nag an\nban o</w>\nde ir\ngo g</w>\nbl k\nre thinking</w>\nch ig\nrhe u\nsni p</w>\np eng\nsemin ole</w>\nm swx</w>\nan nex\nlyn da</w>\nlewisham ilton</w>\ncu mul\ntb l</w>\ndolph in\nagu ero</w>\n........ ....</w>\npre lude</w>\nat our</w>\ngr anger</w>\ntoo ting</w>\nro tun\ndis ar\nhome items</w>\nda res</w>\n**** ****\nðŁĳ Ĩ\ncompre h\njin x</w>\nas well</w>\niri e</w>\ncircul ating</w>\nðŁĲ ¥</w>\nover board</w>\ncultiv ate</w>\nrhe tt</w>\noriente ering</w>\nca k</w>\nbal kans</w>\ns itt\njas min\nbritney spears</w>\nro tor</w>\nse aling</w>\ng bc</w>\noc ci\nf as</w>\neman cip\ncom er\nwar time</w>\ntic kle</w>\nson ny\npac es</w>\nlog g</w>\nat rix</w>\nsr p</w>\ng win\ndo bbs</w>\nuz be\nthe wanted</w>\ndru sh</w>\nex tru\nm icky</w>\nhonore es</w>\ndar win\nre dux</w>\nmm j</w>\nram i</w>\njalape Ã±o</w>\nio c</w>\ndo ver\nju ju</w>\nwhit ney\ns eng\nen ly</w>\nau ch</w>\narchipel ago</w>\nvigil ant</w>\nman gal\nwil dest</w>\nparano id</w>\nhal i</w>\nbb ly</w>\nsanc tioned</w>\nreal ms</w>\ncon co\nu ddin</w>\nc sk</w>\nplay time</w>\nlibr a</w>\nsav ag\noc tane</w>\nrec tan\nre turn\npar rish</w>\nmor rha\ncc p</w>\nc mu</w>\nsa iled</w>\nse vent\nro sie\npil ing</w>\nhe w</w>\nboar ded</w>\nseg ments</w>\nneph ro\n( .</w>\ncr ats</w>\nbak es</w>\nðŁį ¸\nback tothe\nsibl ing\nkirk land</w>\nke o\ngu wa\nbre ads</w>\nðŁĺľ ðŁĺľ</w>\nt q</w>\nharas sed</w>\nga u</w>\nwil bur</w>\nj isoo</w>\nep er</w>\nli sam\ntri ppin</w>\nsh ino\nru kh\nbeast mode</w>\ncho a</w>\ninst aweather\nrich land</w>\ngar i</w>\nfe z</w>\ncowboy snation</w>\nfur suit</w>\nk run\na en\nsycam ore</w>\nse gun\nent ennial</w>\ndi h</w>\no ax\ndemsin philly</w>\nðŁĻ Ģ</w>\nsn hl</w>\npen nies</w>\npass words</w>\nma kin\nty e</w>\nd eng\nkni gh\njeep life</w>\nhel pline</w>\na for\nzz zz</w>\nste amy</w>\npic ker</w>\niter ate</w>\nhappen ingnow</w>\nki b\nbloom berg\nmartyr dom</w>\nbul ly\nassor tment</w>\na hora</w>\nzo e\nno i\nillu stri\nagar wal</w>\np sc</w>\nelectr onica</w>\nrecruit er</w>\ngar diner</w>\nrad ha</w>\nnaf ta</w>\ndot net</w>\npi ero</w>\ngeor g</w>\nbel s</w>\nðŁĺĤ ðŁĺį</w>\ntuberculo sis</w>\nrun nin</w>\nmor is\nhaul ing</w>\nev oc\nbre thren</w>\nsha ir</w>\nframe works</w>\na stu\nri gid</w>\nku ma\nkre me</w>\njin nah</w>\ninsu rers</w>\nny u\nf ere</w>\nnol lywood</w>\ngood vibes</w>\n- ...</w>\ntoi le\nsk ril\ninstaweather pro</w>\ncze ch\npa vel</w>\none piece</w>\nnike plus</w>\nfi let</w>\ncav ity</w>\nðŁı½ âĢįâĻĤï¸ı</w>\nðŁİ £</w>\ndra stic</w>\ndail ys\nsiam ese</w>\nre bu\noste o\nlar k\nf re</w>\nsh elling</w>\np Ã©\nglad ys</w>\nðŁıĢ ðŁıĢ\ngusta ve</w>\nsubmer ged</w>\ngrand stand</w>\natt u</w>\nwon t\nf pv</w>\nb ley</w>\njon i</w>\nang ames</w>\nweigh ted</w>\nal ou\nà¤ ¶</w>\nles bians</w>\nf j\nanni es</w>\nam l</w>\ndor ia</w>\ndav in\nbe ta\ncan c\nmadewith unity</w>\nha j</w>\nbad lands</w>\nmu l</w>\nblu ec\npa wn</w>\ncov ington</w>\nneuro logy</w>\nhtt weets</w>\ndysle xia</w>\nthel ove</w>\nne at\nfork lift</w>\nautom ate</w>\nune ven</w>\nmonte ss\nhe in</w>\nha g</w>\nrel ics</w>\ncompetiti veness</w>\ncan elo</w>\nmar tens</w>\nbullet proof</w>\nsk ittles</w>\ng ya</w>\npri mo</w>\nameric afirst</w>\nwoo o</w>\nabor tions</w>\n?? !!</w>\nma che\nld ers</w>\nrl ly</w>\npreli ms</w>\ndirec t\ncour se\nswa in</w>\nsuper cell</w>\nec centric</w>\nsting ray</w>\nple ts</w>\nwil cox</w>\nwest in</w>\nokan agan</w>\nkir an\ncar bo\nbomb ings</w>\nra rest</w>\nbo h\ngaw d</w>\ndi gg\nmo ana</w>\nenti rety</w>\nen closed</w>\ndodge ball</w>\npar ton</w>\nmilky way</w>\nat r</w>\nthorough bred</w>\nre ally\nqant as</w>\nepiph any</w>\nine e\naero smith</w>\nspi eth</w>\nar thro\nell ini</w>\ndu bu\nbra ving</w>\nâļ½ âļ½\nre structuring</w>\nillumin ate</w>\nequ ili\nmp i</w>\nash ton\npony tail</w>\nma scots</w>\nflat tering</w>\ncru m\nast a</w>\nà® °</w>\nstranger things</w>\nbar nab\nØ± ÙĬ\nmake shift</w>\ngot cha</w>\nwill am\ncho irs</w>\nkilom etres</w>\ngho sh</w>\neu than\ndol ly\nun ning</w>\nthe ar\ncre we</w>\nw sw</w>\nj ace</w>\ndis miss</w>\nke an\nho ta</w>\nkh at\n~ ></w>\nthir u\nren dez\nhart man</w>\ntee ssi\ncas ca\nz ah</w>\nhydr ange\nfo d</w>\naw p</w>\nmzan si</w>\nthick er</w>\nnago ya</w>\nne va</w>\nsti que</w>\ncast el\ndam ian\nthere by</w>\nji ang\nale k</w>\nmusic islife</w>\nra q</w>\ncalla han</w>\ngou ache</w>\nsomal iland</w>\nsean hannity</w>\nra heem</w>\nlo se\nelo ve\nwhar ton</w>\nrectan gular</w>\nillustr ating</w>\nhar ne\nauti sma\nscra pped</w>\nell and</w>\ndecre e</w>\nnag pur</w>\nki pp\nso re\nn md</w>\nma as\ngun a</w>\ngart ner\nbel li\nthen ight</w>\nje on</w>\ngendere quality</w>\ngi ver</w>\na el</w>\ngar ments</w>\nne u</w>\nmardi gras</w>\nmar sden</w>\nro wer</w>\npollu ted</w>\ncamer aman</w>\nvin od</w>\nbe asley</w>\ncro c</w>\nji u\nhollyo aks</w>\nanesthe sia</w>\nal les</w>\nste ward</w>\nlati mes</w>\nðŁĩºðŁĩ¸ðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸</w>\ntic ian</w>\ngor ia</w>\ncome dic</w>\nðŁ¤Ķ ðŁ¤ĶðŁ¤Ķ</w>\nnai ve</w>\nsli ons</w>\nł Ī\nbur glar</w>\nðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃðŁĺŃ</w>\nyork shi\nse Ã±\nfan boy</w>\nlau rel\ninci dence</w>\npotom ac</w>\nrober ta</w>\npresi den\npr yor</w>\nos bourne</w>\nw ku</w>\nte me\npal ae\nðŁ¥ º\nre boun\nitu de\nred dish</w>\nk hand\ncoloni alism</w>\nnorth carolina</w>\nðĿ Ĵ\nmanne quin</w>\nlady bird</w>\nta sty\nknowledge able</w>\ng shore</w>\nðŁĮ Į</w>\nà® ©</w>\nqu aker</w>\nsalz burg</w>\nmed alists</w>\nchy na</w>\nbridesma id</w>\nma ori</w>\nro p</w>\noutra ged</w>\nin adequate</w>\ntruck ers</w>\nal ana</w>\nìĿ ¼\nri x\noooo oooo</w>\ncommand ments</w>\nlam beth</w>\naa j</w>\neco friendly</w>\nbla z\nmorecam be</w>\nboun cy</w>\nrou x</w>\nrai ded</w>\nmi zed</w>\nsh c</w>\ngaw x</w>\nlabor atories</w>\nru bs</w>\nrest room</w>\nconsult ations</w>\nca jun\nvirgin i\nso ir</w>\nrev ue</w>\nple in</w>\nwag er</w>\nç ¹\nwe do</w>\ngrowing up\n! ðŁĺĬ</w>\nface ted</w>\nsin ners</w>\nho vering</w>\nti ene</w>\nseas oning</w>\nan ja</w>\nleg go</w>\nil is</w>\nfla x</w>\ndev o</w>\nash ram</w>\nmati sse</w>\nker i</w>\ngo wer</w>\nbo tox</w>\nmar shes</w>\nunh cr</w>\nts m</w>\nopti mus</w>\ndun i</w>\nstu ffs</w>\nso k</w>\norder ly</w>\nn bad\nislam ophobia</w>\nraviol i</w>\nfab er\ncre ds</w>\nwon ka</w>\nin fusion</w>\nover weight</w>\ndaily news</w>\nassi mil\nacol lege</w>\nmedalli on</w>\nkili manjaro</w>\nsti ff\ntham es\nsun ken</w>\nth ard</w>\nmy dubai</w>\nhilari ously</w>\nhan nel</w>\nplu mber</w>\nfair view</w>\nsepar ating</w>\nrasc al</w>\nqui en</w>\nnecess ities</w>\nconfeder ation</w>\nll ll</w>\n: ]</w>\nweak nesses</w>\nbron co\nra ffles</w>\nel ot</w>\nãĤ¸ ãĥ\nadvent calendar</w>\nðŁİ ¹</w>\nstra vel</w>\ntun ic</w>\nk su</w>\nim peach</w>\ne spionage</w>\n! -</w>\ndi ment</w>\ncur rant</w>\nbio de\ncommu ting</w>\nby ron\nðŁĴĵ ðŁĴĵ</w>\nshad ed</w>\ntr uro</w>\ncray ons</w>\nar ne</w>\nh sc</w>\nfre aked</w>\ndram ati\nfle ek</w>\nu cd</w>\nmarl borough</w>\n^ -\ncross ings</w>\nmal o</w>\nblack ops</w>\nbin ance</w>\ncho ked</w>\nchen ey</w>\npl o</w>\nge stures</w>\nval edic\nryan air</w>\nrem ington</w>\nv cs</w>\nmc kee</w>\nec z\nbe gs</w>\nnail art</w>\nmayor of\nhappy fathersday</w>\nwar t\npet itions</w>\nn ingly</w>\nclean energy</w>\nbro x</w>\nsl alom</w>\nexist ent</w>\nab ay</w>\nug liest</w>\ntom p\nstom a</w>\nsel by</w>\ngoal scorer</w>\nben ji</w>\noverwhel mingly</w>\nlan s\nsemiconduc tor</w>\nsouth korea</w>\nre scheduled</w>\nsk yl\nen listed</w>\ndow ski</w>\nsi del\nrosen berg</w>\nnas ser</w>\nwhite head</w>\npri us</w>\nhar are</w>\nen n</w>\nry der\ní Ĥ\nmon g</w>\nclas ico</w>\ntranspor ter</w>\npo tty</w>\nis me</w>\n** ***</w>\nvic e\nsk it</w>\node ssa</w>\nl mp</w>\nher n</w>\nraci ally</w>\npin oy\nparagu ay</w>\nobitu ary</w>\ngo es\nbu cha</w>\nside walks</w>\nangu lar\nun constitutional</w>\ntransiti oning</w>\ni bu\ngu ys\nun packing</w>\noooo oo\nblack girl\nber gs</w>\nÂ ¯</w>\nwordof theday</w>\ntrump train</w>\nthunder bolt</w>\nm si\nfasci sts</w>\nà¤ ¬</w>\nt sk</w>\ncollap ses</w>\nraje sh</w>\nloveis love</w>\nmigr ating</w>\nset back</w>\nðŁĺĬ âĿ¤ï¸ı</w>\nt els</w>\nsafety first</w>\nnar rated</w>\njae joong</w>\nun answered</w>\nlique ur</w>\nen nes</w>\ndal go</w>\nbill ings</w>\nsalt water</w>\nmer maids</w>\nlon gs</w>\nclap ham</w>\nwe arec\npic collage</w>\nn ach</w>\nh ace</w>\npois oned</w>\nlo th</w>\nag na</w>\nadel rey</w>\nguar dia</w>\npoli shing</w>\npeace keeping</w>\nd all</w>\np isa</w>\nla pland</w>\nprocess ors</w>\nde andre</w>\nso bs</w>\np once</w>\ndra ins</w>\nc be</w>\nðŁİ¥ :</w>\nspla sh\nmeat ball</w>\nfon tana</w>\nworcester shirehour</w>\nne v</w>\nbri sk</w>\nb int\nac r</w>\npo x</w>\ncay enne</w>\nskril lex</w>\nj fc</w>\nhahahaha hahaha</w>\ngla s</w>\nen gul\ntempor al</w>\noni zed</w>\ncon cre\ncom pose</w>\nvibr ations</w>\nplant ers</w>\nfer t</w>\ncriticalrole fanart</w>\nt bli\nsch allenge</w>\nhuck abee</w>\nmunici pal\niam bic\nradi os</w>\nne vis</w>\ndura bility</w>\nmc cla\nhorse back</w>\ninst itutes</w>\nful fill\natta ch\nate ur</w>\nak an\nresi sting</w>\nillumin ation</w>\nhand le\nhair care</w>\nom ent</w>\nmacle od</w>\nka iser\ng no</w>\nbear down</w>\nly f</w>\ngl omer\ndistor tion</w>\nz m</w>\nsan k</w>\nroo sters</w>\nis now</w>\nas ports</w>\nag en</w>\nwo ken</w>\nst george\nro mper</w>\nmy le\neconom ists</w>\nru to</w>\nt will</w>\nhealth and\nd ito</w>\nws l</w>\ntair p</w>\npra kash\nmic heal</w>\nh ts</w>\nw rights</w>\nkat su</w>\nfioren tina</w>\ndefen seman</w>\nd itch\nvar sity\ntexan scheer</w>\nba ham\nsc anned</w>\nwe il</w>\nseduc tive</w>\nðŁĳį ðŁı½</w>\nfu e</w>\ner win</w>\ndav ison</w>\nter ran\nmoo ds</w>\nwool f</w>\nre source\n@ .</w>\ncu sh\nðŁį °\nregre ssion</w>\ncur led</w>\nla zer</w>\njo anne\nab bott\nmo z</w>\ndown ers</w>\nmm mmmm</w>\nvalent ina</w>\nk hair\ndream t</w>\ncro ok</w>\nche k</w>\nste aming</w>\nnephe ws</w>\ncl eric</w>\nas ober\nindefin itely</w>\nw ye</w>\nus news</w>\njoy ce\nflu shing</w>\nwynonna earp</w>\nron do</w>\nkis s\nhot dog</w>\nbar ns</w>\nsax ophon\nfar ley</w>\ngas p</w>\ndecre asing</w>\nal way</w>\npe x</w>\nl sd</w>\nshi ft\np outine</w>\nra zz\nrescu ing</w>\nni ko</w>\nho ch\ncc l</w>\nu aap</w>\nn ts</w>\nm car\nil wx</w>\nconqu ering</w>\nket tering</w>\nstur dy</w>\ndelay ing</w>\nsto k</w>\nvani shed</w>\ncath ar\nbin gham\nin v</w>\nic hiro</w>\nhe mo\nbudge ting</w>\n[... ]</w>\nbe ss</w>\nsebasti an\nslow ed</w>\nðĿ ĳ\nmusli m\nstun s</w>\nacton climate</w>\nve a</w>\nse ton</w>\nrose tta</w>\noun t\nhard in</w>\nflu id\nca w</w>\nðŁ¥ Ĥ\nyach t\nun l</w>\nsp hy\nprovoc ative</w>\nor ic</w>\nis back</w>\n__ _\nnicol as\ngy an</w>\nloo se\nfl in</w>\nreb ate</w>\n: ::</w>\n! \"@</w>\ncom icon</w>\nshe ff</w>\ndown stream</w>\nchic hester</w>\nbeach life</w>\nmom life</w>\ndiabe te\nar ra</w>\nvan e</w>\nok u</w>\nye o</w>\nman go\ntry out</w>\napp ell\nhe irs</w>\narjun a</w>\ndd u</w>\nna veen</w>\nmovi c</w>\nsoci alists</w>\ns back</w>\ncriteri on</w>\nsoyu z</w>\nk her</w>\nda z</w>\nyol anda</w>\nwine oclock</w>\nre ina</w>\none w</w>\nleon ard\nen dez</w>\nu bs</w>\nsupport local</w>\nfacilit ated</w>\ncarameli zed</w>\nb pa</w>\nvuel ta</w>\nmy tho\nm ami</w>\nspe are</w>\nnbap layoffs</w>\nfe vre</w>\nnick jonas</w>\nim print</w>\nc so</w>\ncraig slist</w>\nla salle</w>\ngi deon</w>\nha doop</w>\ndis regard</w>\nw ud</w>\ntu c</w>\nma gee</w>\nacou stics</w>\nta a</w>\nqui e\npol a</w>\ncr t</w>\ndw yer</w>\ndis sec\ncapit ol\nmen tion\nkn oll</w>\nhe igh\nfin ders</w>\nplac ements</w>\nl se</w>\nindi ra</w>\ngur i</w>\nmadhuri dixit</w>\nkingdom s</w>\niambic pent</w>\ngeor gina</w>\nje ky\nconflic ting</w>\nbay an</w>\naga tha</w>\nuph old</w>\ndr on\nvic ar</w>\nex pat</w>\nperiph eral</w>\npe ssi\nfa f</w>\nance stor</w>\n? ..</w>\nwid get</w>\npun c\ncomm enced</w>\nbeav s</w>\nair waves</w>\nad dis</w>\npo a</w>\nde sses</w>\nco den\nvu e\nru pee</w>\nkar in</w>\nspo ck</w>\nm sy</w>\nà¸ °\npr ick\nfill more</w>\nti fication</w>\nthing sto\nsar de\nem ile</w>\npere ira</w>\nn ad</w>\nbright ening</w>\narre sting</w>\nwo king</w>\nusc g</w>\nsp ill\nraspberry pi</w>\nhu go\nite c</w>\nis ma\ncuff links</w>\noptimi zed</w>\noc c</w>\nmi wx</w>\nen ka</w>\nel ited\nafford able\nsa kh</w>\ncoron ado</w>\nho h</w>\nat ul</w>\nai oli</w>\njim cantore</w>\naccoun ted</w>\nvin ay\nher mit</w>\ngroo ves</w>\nran ch\nr illa\nwe tter</w>\nou tof\nveter in\nni kov</w>\nki an\nfair banks</w>\nram apho\nn iti\nk ko</w>\nru sty\nne stle</w>\ntv xq</w>\nshahe er</w>\nâĿ¤âĿ¤ âĿ¤âĿ¤</w>\npenn ant</w>\ngem stones</w>\ndem debate</w>\nðŁĲ Ĭ</w>\nauton ews</w>\nsupport indiefilm</w>\nmach o</w>\nve x</w>\nnew sat</w>\nne ti\nconce ssions</w>\ncan died</w>\nyof the\nmac au\nden ds</w>\ncricke ters</w>\nsan iti\nmari ano</w>\ngh at</w>\nar toftheday</w>\n¡ ľ\ne gos</w>\ngen oa</w>\nchat bots</w>\nbri er</w>\nal labout\nmon ty\nspi ed</w>\nr tr</w>\ncomfor t\nsni ppets</w>\nreal time\ngra in\nexam ined</w>\nen lightening</w>\ntt u</w>\ngod bless</w>\nrelease the\nsing ular</w>\nki ans</w>\nha ka</w>\nsor ren\ndefe ct</w>\nmar g</w>\nequ ities</w>\nd orian</w>\nsu ka</w>\nper l\naishwar ya</w>\npul lover</w>\npreci sion\nfair way</w>\nne ve</w>\nrive ting</w>\nvill anova</w>\nen com\nak o\npassion ately</w>\neuropale ague</w>\nsiem pre</w>\nx vi</w>\nenligh tened</w>\nc fr</w>\nâĺħâĺħ âĺħâĺħ</w>\nwast eland</w>\nis f</w>\nnew comers</w>\nemergen cy\namphi theatre</w>\n- .</w>\ntext books</w>\nfigur ative</w>\ntre mb\npe sc\nab hin\nab bot</w>\nac acia</w>\nhar ds</w>\npor sche\nkau ai</w>\nel isa</w>\ncar rick</w>\nabo u</w>\nelli er</w>\nbe ch\nneu tron</w>\ngalap agos</w>\nru ben\nin nis\nhow to</w>\nnun s</w>\nsab ine</w>\ni ac</w>\nclin ched</w>\nno tori\nfi ves</w>\ncairn gor\nper i</w>\ngr c</w>\nðŁĴ¯ ðŁĴ¯</w>\nmal m\ntwelf th</w>\ndi ff\nrout ines</w>\nmarty n</w>\nlin den\nsynthesi zer</w>\nnu mber\ngame cube</w>\nfal kirk</w>\nbyz antine</w>\nqueu ing</w>\ngr ill\nscal able</w>\nchar red</w>\nrou ting</w>\nher bali\ngri zz</w>\nðŁĺŃðŁĺŃ ðŁĺŃ\ntol l\ntermin als</w>\nl pc</w>\nab d</w>\nwar mups</w>\nremo vable</w>\nÂ¯ \\\nvi go</w>\npap aya</w>\nne ve\nlov ingly</w>\njo kers</w>\nib les</w>\nsse tt</w>\npoten ti\npel e</w>\ngi gi\nsadi q</w>\nleg acy\nson o</w>\nru pees</w>\nretar ded</w>\nele e</w>\npar r</w>\nfi ance</w>\ney re</w>\nsay ers</w>\npend ants</w>\nmak nae</w>\nal bans</w>\nadap ting</w>\np ff</w>\npu berty</w>\nji u</w>\ning rad</w>\nhypocr ite</w>\ndiplom ats</w>\nphys ical\nrob by</w>\nbon sai</w>\nãģ ·\nf att\ncatal unya</w>\nâľ ĸï¸ı</w>\nro ma\nmore land</w>\nso e\nconver sions</w>\nstl blues</w>\nshol m</w>\ngra ssy</w>\npra do</w>\non u\nassaul ting</w>\n> _\nsett es</w>\ndis graceful</w>\naph ra\nâļ½ï¸ı âļ½ï¸ı</w>\nà¤ ª</w>\nkil n</w>\ngoal tender</w>\ns ru\nphilanthro pist</w>\nb als</w>\nth n\nstu den\nsando val</w>\ndogre scue</w>\neli ons</w>\nasse ssed</w>\nlar go</w>\nhec tares</w>\nsh rm</w>\nsa if</w>\ncle avage</w>\nno ches</w>\nn ene</w>\nfat alities</w>\ncur ing</w>\nclean ser</w>\nal es\np vp</w>\nsouth bank</w>\npizz eria</w>\nmarsh als</w>\nkni fe\nan dover</w>\ntbli ghtning</w>\nsr sly</w>\nou te</w>\ndigi mon</w>\ntimesof india</w>\nprome the\nle bo\nf su\nwit z\nrever e</w>\nman as\nmam ba</w>\nch ica</w>\ngu an\nexhibit or</w>\ncsr racing</w>\nd ere</w>\nxx xxx</w>\ngu sta</w>\nstory time</w>\nston ey</w>\norgan ics</w>\nand u\nse am</w>\nmin ogue</w>\nanushka sharma</w>\nab a\nðŁİĻ ï¸ı</w>\nugand an</w>\nchro matic</w>\nas sn</w>\ndocument aries</w>\nsh t</w>\nru paul</w>\nloy d</w>\nk ats</w>\ne us</w>\nite ch\nme dusa</w>\npan ty\nkel logg</w>\net to</w>\ntalla de\nsha a</w>\ndo st</w>\np ms</w>\nmari ana</w>\nje ster</w>\ncroo ks</w>\nðŁĶ ¬</w>\nmin danao</w>\nind hoven</w>\nðŁ¤ ª\nle xi\ntv n</w>\njan is</w>\nco te\nãģ Ĩ\nser rano</w>\niw m</w>\nðŁĲ ¬</w>\nk ke</w>\ndistribu tors</w>\ncap u\ncounterfe it</w>\ncamp site</w>\nag gie\nðŁĺ ¼</w>\nchhat tisgarh</w>\n~ @</w>\nstate u</w>\nsan di\nprevent able</w>\ncl s</w>\ncan ne\nmm c</w>\ni ver</w>\nsa haran</w>\npal is\nnight out</w>\ndo s\nap ia</w>\nabsc bn\nmanag erial</w>\naro se</w>\nmo wx</w>\naro sa</w>\nðŁĮ ³\nunder dog</w>\nremo ver</w>\nastronom ers</w>\nlent ils</w>\nsu scep\nsmoo ther</w>\npend leton</w>\nfau cet</w>\ne mory</w>\ndal mati\naf cb</w>\ntic us</w>\nexem pt</w>\nen rol\nd heim</w>\nðŁĲ º\nrestric tion</w>\nstar fish</w>\nsto w\nsnor kel\nthunder birds</w>\nshe ad\nhomo sexual</w>\ndy n\nas li</w>\nandre tti</w>\ndou che</w>\ndom o</w>\ntar mac</w>\nslu mber</w>\npr onto</w>\nfirst dayof\nmini ature\nmari achi</w>\nargu s</w>\nrecomm ending</w>\nmobi les</w>\nin ce</w>\nillustri ous</w>\nor c</w>\nadver ts</w>\ngr its</w>\nwea sel</w>\npag oda</w>\nover pass</w>\ngre ys</w>\nmaxi mus</w>\narma gh</w>\nwood land\nsun ni</w>\nðŁĴ ī\në Ŀ\nti one\nsoci o\nho s\nðŁ¤Ĺ ðŁ¤Ĺ</w>\nwind sor\nsubsequ ent</w>\nmunch ies</w>\nid h</w>\nexclu ding</w>\ne mi\ncu th\nz ai\nweek days</w>\nlaw suits</w>\nbarn ard</w>\nØ ª</w>\npe tting</w>\nnet es</w>\nmul ligan</w>\npharmac ists</w>\nra quel</w>\ne ton</w>\ncran ston</w>\ngil ded</w>\ncle ary</w>\nce ph\nra a</w>\npam per</w>\nlombar di</w>\nas in</w>\nsher ry\npro d\nfor te\nari anism</w>\nbuffalob ills</w>\næľ ¬\nðŁĶ¥ #</w>\nuu u\njust ices</w>\ncar ina</w>\nnat in</w>\nmas low</w>\ndro oling</w>\ncog nac</w>\ncam ber\nel ong\nr dr</w>\nin en</w>\nconvic tions</w>\nam use</w>\ntro ck</w>\nharm less</w>\nvisit ation</w>\ngen omic</w>\nbl and\nbeno it</w>\nchim p</w>\ntuscal oosa</w>\ngre asy</w>\nx po</w>\ngil t</w>\nse q</w>\nper mitted</w>\nchristma seve</w>\nbook s\nmu e\nold school\nhuman right\nbe ati\nðŁĶ Ŀ\nsh at</w>\nsculp ting</w>\nh wan</w>\nfern andes</w>\nsci utto</w>\nfu entes</w>\nendeav ors</w>\nmaid stone</w>\nun paralleled</w>\nshou ted</w>\nqueen of\nmer c</w>\nband ic\nve da</w>\nsel angor</w>\npi le\nja han\nintimid ating</w>\ndisapp ears</w>\ncl ich\nza ha</w>\nw urst</w>\nhi v\nfod ils</w>\ncor dless</w>\naaaa aa</w>\nhy dra\nbel inda</w>\ne els</w>\nbu f\nsu staining</w>\nrugby league</w>\nno c</w>\nbrig itte</w>\n( ðŁĵ¸:</w>\ntromb one</w>\nsoo the</w>\nsmo g</w>\nad p</w>\nstab le\ning ley</w>\ndiagno se</w>\nms g\nwe ss</w>\ntic keting</w>\none e</w>\nnsw pol</w>\ne up\nauto psy</w>\nadity anath</w>\nsun down</w>\nriver front</w>\nsi ya</w>\np is</w>\nhier archy</w>\ndur ango</w>\ndi jk</w>\nren shaw</w>\nhe aps</w>\nepide mi\ndavid bowie</w>\ninterne tof\ndd i</w>\nnation ality</w>\nmb ar\nair y</w>\nwin der\nw alia</w>\nelli ott\nc x\nbav arian</w>\npl att\nan tw\nwi wx</w>\nsof ter</w>\nne ha</w>\nh eller</w>\nth and\ndani ela</w>\nbo ast</w>\ndegra dation</w>\nðŁĴ¦ ðŁĴ¦</w>\ntransform ing\nman e\nav ut</w>\nðŁĺĪ ðŁĺĪ</w>\nvo ter\nthe e\nt ate\npu ff\nin door\nsop roud</w>\nboy ce</w>\nboris johnson</w>\nwait in</w>\nimmun ology</w>\nðŁıĨðŁıĨ ðŁıĨ</w>\nâĿ Į\nstreet food</w>\nliz asober\ncavali er</w>\nc elia</w>\nneed le\nmotor ing</w>\ng ato</w>\n, )</w>\nra de\nharve st\nt ms</w>\njar pad</w>\non ey\nair men</w>\nv re\nimpair ment</w>\nabhi shek</w>\nsnoo p\nl ant</w>\nfam ously</w>\nbl ou\ns ze\ng ander</w>\nun touch\ntu f\ndee jay</w>\ncol lateral</w>\nb ind</w>\nðŁļ ©</w>\npin ning</w>\nic n</w>\n' ;</w>\nthe economist</w>\nul tram\nworldwater day</w>\nti poff</w>\nthe i\nfeed ers</w>\ncampa ign\nsc umb\nday weekend</w>\nyo m</w>\npe dic</w>\nh ough</w>\nps v</w>\npl in\non de</w>\nboston marathon</w>\naz zy</w>\n* _*</w>\ncon ley</w>\nthi ago</w>\nhoo o</w>\ngal erie</w>\nluci d</w>\nje tt</w>\ngl itz</w>\nfinal fantasy</w>\nachiev ers</w>\ny ung\nperegr ine</w>\nop hi\ndam es</w>\nbiom ar\nâĺĢï¸ı âĺĢï¸ı\nsk c</w>\nl ics</w>\nfl ank</w>\nar rahman</w>\nho of</w>\nuphol stery</w>\nt ats</w>\nwo z\nÂ ¿\nsnor ing</w>\nra er</w>\nl ju\nap d</w>\npl ating</w>\nkan u</w>\nim ation</w>\nfragr ances</w>\nm ra\nmor ay</w>\nmo tt\nim muni\nhearti es</w>\nbho pal</w>\ntim ers</w>\ng ata</w>\ncolor way</w>\ncar nation</w>\nwin get</w>\nsi ghs</w>\ns ville\noptimi st</w>\nchate au\nolympi ans</w>\nci o\nsinger songwriter</w>\nny o</w>\nfi bers</w>\nbur ch</w>\nag ro</w>\nmil ne</w>\nig bo</w>\ncr amer</w>\nation als</w>\ndan ube</w>\npad ma\nnor mani</w>\nen forced</w>\nbre ck\nboeh ner</w>\nar den\nsur rendered</w>\npros thetic</w>\nom a\nha iled</w>\ncalcul ations</w>\nw fa\nbi b\nfcb live</w>\nfon da</w>\nwest coast</w>\nque sts</w>\nfriend ly\nto wie</w>\nfit ch</w>\nbal ot\nstar dom</w>\nscrat ching</w>\nho sa</w>\nthi ka</w>\no ven\nstro ke\nout post</w>\npharmaceu ticals</w>\nhi kari</w>\nmu y</w>\naf d</w>\nfallon tonight</w>\nsqu at\nor u\ndra ined</w>\nchocol at</w>\në¯ ¼</w>\nwor ths</w>\nri b\nmu j\nthat s\nresiden te\nit el</w>\nboo st\nmi gos</w>\nmul led</w>\nla a</w>\netsy shop</w>\ndon keys</w>\nme k</w>\np tc</w>\nflin ders</w>\ne hs</w>\nro hit\nmu ir\ng ad</w>\ncompos itions</w>\nåĨ Ļ\ncombu stion</w>\ni kh\nyemen i</w>\nwav ed</w>\ngar ci\nak os</w>\noo ds</w>\nfu sion\nse que\ns lan\npl ur\nkic chasu\nshenan do\ns ams</w>\nworl den\nhoro witz</w>\nwith me</w>\nmic robes</w>\nk ki</w>\nðŁĴĶ ðŁĴĶ\nw su\npatch work</w>\nfre er\ny aki</w>\nthe art\nsymboli sm</w>\nmil er</w>\nbt n</w>\nma bu\nside kick</w>\nmotiv ates</w>\nsag itt\nnatur als</w>\nserv iced</w>\nps ori\npa ola</w>\nqu ig\ni badan</w>\ngi ggs</w>\në ³\nsciento logy</w>\nsi oux\nsalam at</w>\nd res</w>\ncad bury</w>\nd hawan</w>\nci Ã³n</w>\n_ '</w>\nswa pping</w>\nmaris ka</w>\njames bond</w>\nexplo sives</w>\nay les\naf er\ns agu\ncen sor</w>\ntom a</w>\njeff erson\nring ed</w>\npar tist</w>\nir responsible</w>\naguil ar</w>\nvac ay</w>\nequ itable</w>\naltrin cham</w>\nac ur\nman ish</w>\nger min\nschoo led</w>\npu tter</w>\ned ad</w>\nnav al\ntoast y</w>\nsol areclipse</w>\ndish u</w>\ncoy ne</w>\nac co</w>\nmu ck\nmar an\nel os</w>\nlen der</w>\ncro ix</w>\nworth less</w>\nha ber\ngun men</w>\nðŁį ĵ\nzen ith</w>\nt enders</w>\nhur st\nhol tz</w>\nitali ans</w>\ncar low</w>\nu cd\ncharacteri stic</w>\nbun g</w>\nav l\nu th</w>\nsa sia</w>\nrs l</w>\nred man</w>\nneighbor ing</w>\ngreen peace</w>\nsti ps</w>\nfollow party</w>\ny gk</w>\nen os</w>\nomni bus</w>\nna issance</w>\nchri ssy\nsecu re\ncall back</w>\nji hoon</w>\nmemor y\nblock er</w>\nl anta</w>\ndaf fodils</w>\nbil t\nffer ty</w>\nfau st</w>\nie c</w>\nnipp les</w>\nso g</w>\nm nd</w>\njagu ar\nbol dly</w>\nab poli</w>\npro position</w>\ngun sense</w>\nevan sville</w>\ncu tters</w>\nwe go\ndou n</w>\ndo x\nstal lions</w>\nka j\nshi ppers</w>\nj awa\nvol o</w>\nle ven\npap rika</w>\nkov ich</w>\njor di</w>\ninduc tees</w>\napp alling</w>\ndial ysis</w>\nallevi ate</w>\nâĢĶ âĢĶ</w>\npie ter</w>\nmid wi\nq tr</w>\njuli ette</w>\ninter mission</w>\nhaw ks\nact ment</w>\none ill</w>\nk lin\nvam ps</w>\nfam ous\ncou ld\nautom obi\nda an</w>\nwest end</w>\nelli p\nnh c</w>\nmel anch\nweb series</w>\nton gue\nsnat ched</w>\nsmy th</w>\ntan gible</w>\nsl i</w>\ne asing</w>\nbar stool\nover lay</w>\nafford ability</w>\nting ed</w>\nter as</w>\nay ush\nwanna one</w>\nrh ine</w>\ndan a\nsh ana</w>\nkend al</w>\nfer tile</w>\nw ir</w>\nrepl eni\nlar vae</w>\nis ro</w>\ncon vos</w>\nab brevi\nu cc\nhun gry\nbur rows</w>\nag er\nnav i</w>\nmat in</w>\ndu per</w>\ncer n</w>\nma don\nķ ï¸ı</w>\né ģ\ntu ps</w>\nhy att\nsh ep</w>\nfriday night\nwis er</w>\nhei di\nhat ton</w>\np gh\nfoun tain\nwrist bands</w>\nahmadi yya</w>\naeri al\nsubscri bed</w>\nso los</w>\nm ace</w>\nsla yed</w>\nfor fe\ndul ce</w>\nchrist mass\narun jaitley</w>\nviol ate</w>\nob stru\nni eces</w>\nw vu\nidy l\nfa ze</w>\npre serves</w>\ninfr inge\npremi ers</w>\ninter vals</w>\nagen cy\n( Â©</w>\nstand alone</w>\ndi mes</w>\nbo er\nparam eters</w>\nge tit\nðŁĺĺðŁĺĺ ðŁĺĺðŁĺĺ</w>\ntu lane</w>\nfor given</w>\nscol l</w>\nmb ps</w>\nsmash bros</w>\nrob bi\nprima vera</w>\nali st\nghost ly</w>\nay at\nye ats</w>\nimpre ssionist</w>\near phones</w>\ncaul field</w>\nwai kiki</w>\nsal ute\nsc ou\nmu ay\nlouis vuitton</w>\nbak hta\nado g</w>\ninven tions</w>\nhur d</w>\nforec lo\nstream line</w>\nthalai var</w>\nch snews</w>\nwill ard</w>\nt sn\neuro parl</w>\ncru sher</w>\nmy sore</w>\ngro wer</w>\nra ping</w>\npat ti\ng den</w>\nsm w</w>\nmuf ti</w>\nkid man</w>\nab r\nsoun ders</w>\nskep tical</w>\nðŁĶ İ</w>\nsun dar\ni me\nfer g</w>\nfeather weight</w>\nar lington\npas qu\nag azine</w>\nwearab le\nnati c</w>\nmccl ure</w>\ninter mitt\nhor de</w>\nsix ties</w>\ncar te</w>\nbha v\nze al\nexperi ential</w>\nador ned</w>\nsom mer</w>\neno te</w>\nhypo thesis</w>\nstin ky</w>\npro to</w>\ndead lines</w>\nvo gel</w>\nmus ings</w>\nmonc ton</w>\ngu ter\nf le</w>\naci on\nvoice of\nta sha</w>\ninhabit ants</w>\ntype face</w>\ns ba</w>\nbts x\nðŁĶ Ĵ</w>\nwor x</w>\nu hc</w>\njo ko\ncell ars</w>\ngor o</w>\ncontinu um</w>\n... &</w>\nweather cee</w>\nha p\nsr k\nris ers</w>\nlonely planet</w>\nun named</w>\nco eur</w>\nðŁį Į</w>\nthe world\nili ke\nfa sten\nami go</w>\nri ba</w>\nramapho sa</w>\nstaf fers</w>\nhad ley</w>\n? ?\"</w>\nfi ore</w>\nsal ut\nhu ff</w>\nbez os</w>\nÑ ĭ\nra der</w>\nkam ala</w>\nin line</w>\nfill ers</w>\num atic</w>\nall in\nshat ter</w>\nre in</w>\no ku\nch ases</w>\nfla gged</w>\nbaby metal</w>\nwater stones</w>\nts b</w>\ncut out</w>\nop hel\naam a\nrockab illy</w>\nsto lic</w>\njet blue</w>\nich ick</w>\ndown ton\nuzbe kistan</w>\npat na</w>\nla q</w>\ngr ange\n) _/\nsubsi di\nsc p</w>\nnewsc ast</w>\nit sa\ntwee tyour\ne mor\narchae ologists</w>\nuni fication</w>\npor ta</w>\nq x</w>\nprotec tors</w>\npro hib\ncharis ma</w>\ncar tag\nren fre\nscul pt</w>\nguwa hati</w>\nde ma</w>\nboo p</w>\nunf pa</w>\ndex ter\nlay la</w>\nalleg es</w>\nsou ps</w>\nnever again</w>\nl ys</w>\ncal c</w>\nbar oness</w>\nvisu alize</w>\nger ber</w>\nabsor bed</w>\ni ers</w>\na han\nfon tein</w>\ndetec tors</w>\nverst appen</w>\nsv c</w>\nformul ated</w>\nac dc</w>\nli x</w>\nin competent</w>\nbh k</w>\nlour des</w>\nwater house</w>\nsnow ed</w>\nappreci ative</w>\nsig ma\nlizasober ano</w>\npen ned</w>\npay check</w>\ntall inn</w>\nfanc afe</w>\npar isi\nav alley</w>\nvi g</w>\nru fc</w>\nhard ship</w>\nso cute</w>\npo ise</w>\nì ¹\nroth schild</w>\nk ly</w>\n???? ????\nl hp</w>\nil ay\nf hs</w>\nam ad\nide als</w>\nbrad bury</w>\nbal boa</w>\nnic ot\nkid nap</w>\nwol ve\ntas manian</w>\nop t\nmatthi as</w>\nãĥ³ ãĤ\nsuper markets</w>\nmylittle pony</w>\nme lee</w>\nli ster</w>\ngr oun\nfe dora</w>\nkind ness\nen en</w>\nbra hms</w>\nÂ¯\\ _(</w>\nros well</w>\nmar lene</w>\nic u\nre formation</w>\nor ail</w>\nhe brides</w>\ndispar ities</w>\nterrac otta</w>\nswal lows</w>\nre id\ninflu encing</w>\nflu or\nden e</w>\ntum our</w>\nblon des</w>\nthunder bird</w>\nsh eva</w>\nmoga dishu</w>\nka b</w>\ncre eps</w>\ni ving</w>\nene ed\nanno y</w>\nâĶ Ģ\nintri gue</w>\nenqu iry</w>\nar aj</w>\ntur al\nkuber netes</w>\nend lessly</w>\ndivi dends</w>\ntor a</w>\nti sh\ncommemor ates</w>\nun ra\ntri b</w>\npon ty\nne m</w>\ndiss ent</w>\nbrew ingco</w>\nðŁĺ ½</w>\nnor mali\nbi of\n( ...</w>\nchil len</w>\nì£ ¼\nmell on</w>\nav is\nmccor mack</w>\ning ra\nenrich ed</w>\ncustome rexperience</w>\ntesto sterone</w>\nsnu g</w>\nsett i</w>\nger onimo</w>\ninqui rer</w>\nbre aches</w>\nvery thing</w>\nbloom ing\nmu ra\ndispo s\nbi de</w>\nde va</w>\nshade sof\nin trin\nsh ev\ns ven</w>\nnayanth ara</w>\ngan esha</w>\nc ws</w>\nber ta</w>\nlabel led</w>\nuse um</w>\nnick named</w>\nma han\ncar uso</w>\nap ur</w>\nðŁĳ Ĩ</w>\nw q\norphan age</w>\ndiscar ded</w>\nmag nu\nlu e</w>\nje on\nbridge port</w>\npac ing</w>\nmercur y\n( ðŁĵ¸</w>\nmarx ist</w>\namphi bious</w>\ntransplant ation</w>\nstit ching</w>\nthen burg</w>\ngradu al</w>\nãĤ Į</w>\nro ft</w>\nma ils</w>\nine c</w>\nguy ana</w>\ndopp elg\nver o\nre write</w>\nhead less</w>\nharb augh</w>\ngate way\ncar sforsale</w>\nsw i</w>\nst is</w>\nmach t</w>\nun de</w>\nsura baya</w>\nstap leton</w>\nnur turing</w>\nmil ner</w>\nya o</w>\nlma oooo</w>\nko sh</w>\narsen al\nk ame\ner ry\nar royo</w>\ndis misses</w>\nru bbed</w>\nrc b</w>\nlew d</w>\ndil u\nand or\nvi de</w>\nur in\ninter sec\nha ar\nal b\nyear swith\napp leton</w>\nÃ© al</w>\nul livan</w>\nsuc cu\nmonter rey</w>\nd mx</w>\nartem is</w>\nron nie\nfarm land</w>\ns football</w>\ngro tto</w>\nanth i</w>\nãĢ ģ</w>\nà® Ł</w>\nvid ya</w>\njimmy fallon</w>\nàµ į</w>\nt zer</w>\ngravit ational</w>\nw thr\nu hhh</w>\ne hr\ntin ker\nti juana</w>\nscran ton</w>\nram charan</w>\nbar clay</w>\nre van</w>\nm si</w>\nka p</w>\nwr s</w>\nwe thenorth</w>\ntor al</w>\nsat u</w>\ngro m</w>\nfac ep\nerick son</w>\nz yn\nse dge</w>\noo dle</w>\nspur sofficial</w>\nds p</w>\nsic ilian</w>\nsoli hull</w>\nrecei vers</w>\nladak h</w>\nhend rick</w>\nther i</w>\npresi ding</w>\nmc guinness</w>\nlitt ers</w>\ngun nar</w>\ngh oul</w>\nwi b</w>\nn tv</w>\nkar o</w>\nfro ck</w>\nb lau\nampli fy</w>\nall is</w>\nul lah</w>\nmemo irs</w>\nkh loe</w>\nintercep tions</w>\npet day</w>\nlo oney</w>\ncon fin\nch ay\npiyush goyal</w>\nfrequ encies</w>\nut z</w>\nevent ual</w>\nwarm ly</w>\nobli vion</w>\nan ka</w>\nta it</w>\nâĿ¤ï¸ı .</w>\ndirector ial</w>\nru lers</w>\nprince s\nmu ck</w>\nstur ridge</w>\ndeu ce</w>\nabri dged</w>\nbagu ette</w>\nun cles</w>\npen du\nmin ding</w>\nforre ster</w>\nav ila</w>\nwall er</w>\nwall street</w>\nment or\nhin o</w>\nhigh way\ncrom well</w>\nfanart friday</w>\nmb i</w>\nco yle</w>\na hi\ntro ve</w>\nspie gel</w>\npay tm</w>\nmcin tosh</w>\njan sen</w>\nnit i</w>\nnash ville\nlen o</w>\nleicester shire</w>\nle gos</w>\ndic t\nðŁĵ ½</w>\nsp ad\nbeverly hills</w>\nsy rah</w>\nsepar ates</w>\nz ain</w>\nun fit</w>\ndra gs</w>\ntan ia</w>\nover flowing</w>\nhri thik</w>\nhaw thorn</w>\nz ani</w>\nmac far\nfi de</w>\nto tem</w>\npe ds</w>\nfundament ally</w>\ncal ico</w>\nsin ner</w>\nj Ã¤\nhil de\nds d</w>\nten ay</w>\nta hit\nmil f</w>\nlie b</w>\ninform ing</w>\nup lift</w>\nra el</w>\nmortg ages</w>\nlec t</w>\nii ii</w>\nguillau me</w>\ncompos ites</w>\nold smobile</w>\nl end\ngar th\ncom mish</w>\nbapti zed</w>\nscorpi ons</w>\nru cker</w>\nbringback our\nalli ance\nthalap athy\ntal i</w>\nsp ans</w>\neri dge</w>\nwither spoon</w>\nlin da\nsky lar</w>\nkor n\nhom s</w>\nÄ į\nsil enced</w>\ncaf fe</w>\nar ty\ndist inguish</w>\nto wed</w>\npun g</w>\njessic a\near nest</w>\nbeau fort</w>\nt ama</w>\nstudy abroad</w>\nsi khs</w>\nnew bie</w>\nnav ratri</w>\nmar ble\nloun ging</w>\nlit ter\ndal it</w>\nso sa</w>\niz es</w>\ngra de\ncom promising</w>\ntr iton</w>\nde tta</w>\nv j\nchau ffe\nspec tral</w>\npowe red\nmontess ori</w>\nartic ulate</w>\nhal ton</w>\nal co</w>\nye y</w>\nmn twins</w>\nacoun ty</w>\nðŁĳı ðŁı¾</w>\nâī Ī</w>\nmad men</w>\nkal a\ngru m\nchi k</w>\nati s\nsu me</w>\nakh tar</w>\njob search</w>\nhigh lighter</w>\nbo ath\nâĦ ¹</w>\ntar zan</w>\nlam bo</w>\nâĽĦ ï¸ı</w>\nox fam</w>\ndump ster</w>\npretz els</w>\nmac os</w>\nincl ined</w>\nfac tual</w>\nadverti sers</w>\nshu i</w>\npu ree</w>\nml pfi\nanti dote</w>\ncap o</w>\npa str\nmerc ado</w>\nbut ton\nar min\nag g</w>\nlol la\nhorri bly</w>\ner rands</w>\nchristop he</w>\ntime snow</w>\nmonday motiv\nli ss\nscand als</w>\nmc i</w>\ndispropor tion\nâĺ İ</w>\nsur pass</w>\nsamar itan</w>\nso tho</w>\npu rest</w>\nfl att\ntrivi atuesday</w>\ndelec table</w>\nleop old</w>\nhermi one</w>\nchou dhary</w>\nen rich</w>\nÂ¡ Â¡</w>\nsubsi diary</w>\nine qualities</w>\nbachel or\nauto immune</w>\nla kota</w>\ni hop</w>\nad jec\nthe simpsons</w>\nsh es\nse k\ngret chen</w>\nup stream</w>\nhin akhan</w>\ncoper nic\nx tina</w>\nlu g</w>\ntough ness</w>\ne ad</w>\ncli pped</w>\nbi us</w>\nsl v</w>\nfah ren\ndee pak</w>\nca u</w>\nx an\nim mature</w>\ndig ni\nbo bs</w>\nshred ding</w>\nbut tery</w>\naccommod ations</w>\nde ven\nchun ks</w>\nsuper league</w>\nsky bet\nkil dare</w>\nje et\në į\nce k</w>\nwrec ks</w>\npro pane</w>\noh l\ntb d</w>\nquo i</w>\ntrum pp\nmi mo\nreluct ant</w>\nver ne</w>\no ic</w>\nma gh\nar nau\nse ver</w>\nli dge</w>\nstair way</w>\nkicchasu deep</w>\nðŁĶ º</w>\nmach ining</w>\naama admi\not i</w>\nc da</w>\nal it\npan y</w>\ninst alls</w>\nac ct</w>\ne shop</w>\ndi em</w>\nhard well</w>\nfulfill ment</w>\nsc afe</w>\nqu ack</w>\nextrac ts</w>\nswee tened</w>\nfi ghton</w>\nf di</w>\nd inger</w>\nwal tham</w>\nus ur\nrefe rees</w>\nseok jin</w>\ngran n</w>\naf rin</w>\nth n</w>\nsch af\npar cels</w>\nbet is</w>\namar ine</w>\nnom an\nkh tar</w>\nmor itz</w>\ncou pling</w>\nbar ons</w>\nðŁĲ ¸\nÃ ¸</w>\nsl p</w>\nsad ler</w>\nx ander</w>\ntri ad</w>\nmc millan</w>\nkh z</w>\ndivi ding</w>\nìĹĳìĨ Į</w>\ndar yl\nzed d</w>\nle ys\npla ques</w>\nflu ori\ntipper ary</w>\non nell</w>\ndi dier</w>\nlang ford</w>\nim c</w>\nthe sun</w>\nbir dies</w>\nar cha\nye ssss</w>\nt di</w>\ndar ia</w>\ncand ace</w>\nal tam\npal aces</w>\nch it</w>\nsant am\nevent ful</w>\nbook of\nad b</w>\nmon stax</w>\ncre ole</w>\nco el\nâĸ ½\nwe aren\nsten nis</w>\nshe ath</w>\nati sm</w>\ngron ingen</w>\nmlpfi m</w>\nle pre\nwrong ly</w>\nrsp ca</w>\nrendez vous</w>\nacknowle dging</w>\npel vic</w>\nsolic itor</w>\nsla ys</w>\nnue stra</w>\nlo d\nis lander</w>\nfer oci\nfashion show</w>\nra ss</w>\ndge on</w>\nadole scents</w>\nsma shes</w>\nnegli gence</w>\ngrate ful\nved ere</w>\nsw oop</w>\ning l\napol ice</w>\nvand alism</w>\ngan n</w>\njo ao</w>\ndi supdates</w>\nzimbab we\nunder age</w>\nradi ance</w>\nw of\nbour geo\npla s\ncr ani\ngh ue</w>\nwrec kem</w>\nwarran ts</w>\nre form\njim mie</w>\nat wood</w>\nys l</w>\nneil himself</w>\nl bj</w>\ni man\ntan to</w>\nnois se\nver bs</w>\nequip o</w>\nal together</w>\nmam ent</w>\nl ice</w>\ndou glass</w>\ntier ney</w>\npri med</w>\nj hal\nfurn itu\nbraz ili\nv ill</w>\npast els</w>\nn ison</w>\nu ff</w>\nparal ysis</w>\njay e</w>\nim po\nðŁĳ ģ</w>\nstrate gically</w>\npakistan is</w>\nwas sup</w>\nsuper bike</w>\nthank u</w>\ntru elove</w>\nsha ikh</w>\nisrael is</w>\nvi p\nto g</w>\nli en</w>\nla ker\ngrey hounds</w>\ncul ars</w>\nbian chi</w>\nbalot elli</w>\nar ran</w>\nloo s</w>\nstr ates</w>\nhe bron</w>\nar vo</w>\nsunder land\nthe al\ntomb stone</w>\nsand man</w>\nc pac</w>\nthanks giving\nlove him</w>\nlat ino\nan in</w>\naka if</w>\nĭ ãĤ\ntor quay</w>\ndi est</w>\nalli anz</w>\nðŁĺ ķ\ngolf club</w>\ncl lr\nwal cott</w>\nsch nau\npromp ted</w>\nnomin ating</w>\nlen nox</w>\nval et</w>\nmon ro\nmay ward\ne ph\nðŁĶ Ķ</w>\ninter oper\nr da</w>\nre flex\narm chair</w>\nê° ķ\nstri pper</w>\npor ti\nph arm</w>\nham za</w>\nni reland</w>\nne ue</w>\nh pv</w>\nport foli\nsun burn</w>\nfris bee</w>\nbe al</w>\nbapti ste</w>\nx h</w>\nty m</w>\npr ati\no vers\nhaz rat</w>\ndeser t\nder ry\nus ky</w>\nem mett</w>\nach arya</w>\n)_/ Â¯</w>\nshu d</w>\nmay a\nham ill\nra im\nnr c</w>\nfitt ings</w>\ncur vy</w>\nðŁı ĩ\nster ling\nà¥ Ģ\nwal kin</w>\nshort cuts</w>\nmil ly</w>\nast ur\nalpha be\npl i</w>\npe z\nmiss you</w>\nrad ford</w>\nml g</w>\nta eyang</w>\nnotjust lakes</w>\ndu mps</w>\nseren dip\nle ur</w>\nra ving</w>\ne ster</w>\nde priv\nabsc bn</w>\nðŁĳĩ ðŁı»\nscar city</w>\no cr\nmean ings</w>\ncap t\nda hl\nfer mentation</w>\nbri oche</w>\nto win</w>\nout lander\nmassi mo</w>\nen cro\nðŁ¥ ³\nbuil t\npo tam\nkir i</w>\ntm w</w>\nmonit ored</w>\nk ites</w>\npeoples vote</w>\ngray son\níģ ¬</w>\nafri ka</w>\na dies</w>\ni vote\ngy ne\ng annon</w>\ndi x\nc mc</w>\nou ral</w>\nfox andfriends</w>\nbel i</w>\nig ne</w>\ngl an</w>\nkatrin akaif</w>\nco politics</w>\nqual itative</w>\np si\nlu cci</w>\ndisc oura\nâĺ ®</w>\nkel li\ngau tam\ncarac as</w>\nreale st</w>\npu la\nin us</w>\nhill top</w>\nmake aw\natten borough</w>\ntw y\nr arity</w>\npeck ham</w>\nma hon\ncorn elius</w>\nclin icians</w>\nton line</w>\ntb i</w>\nparadi se\nka si\ninev it\nfresh ness</w>\ncolling wood</w>\nlun atic</w>\ndefen se\ncop d</w>\nin fra</w>\nwain wright</w>\nsains bury</w>\nalab am\nte ma</w>\nlac o\nchec ker</w>\nreleg ated</w>\ntren t\nstal ks</w>\nhuff post\nbhubanes war</w>\nast ral</w>\nshare your\nprim rose</w>\nhi me</w>\ncat an</w>\nend ment</w>\nen dow\ncle mens</w>\nmal oney</w>\nhil ary\ngame time</w>\nden ise\ncollabor ators</w>\nb wo\nradic als</w>\ngue tta</w>\nici on\nau a</w>\nsnap matic</w>\nsat chel</w>\nexcav ation</w>\nbase man</w>\ns Ã£o</w>\ngn ation</w>\nfel d\nsurve y\nshah zad</w>\nma st\nanirud hofficial</w>\ntru cker</w>\not ago</w>\ngeo graph\nethe l</w>\nâļ¡ï¸ı âļ¡ï¸ı</w>\ns ver\nmu tt</w>\ninternetof things</w>\nancho red</w>\nwh ouse</w>\nbang la</w>\nbal main</w>\nç¹ ĭãģ\nbreak fa\ná Ģ\ntwi ster</w>\nte tris</w>\nca v</w>\nstag s</w>\ng z\nau b</w>\nstor med</w>\nhel ens</w>\nyar mouth</w>\nst asy</w>\ngustav o</w>\nco sc\nvin son</w>\nup p</w>\nsc ricket</w>\nassump tions</w>\napp e</w>\nnu h</w>\nu er</w>\npre mise</w>\nn aga\ne amon\ncoron ary</w>\nna f</w>\nnorth side</w>\nel mer</w>\nro tar\nout lining</w>\nel f\nre surg\nkat elyn</w>\nin can\nhyster ia</w>\nce e\nam bani</w>\npro lly</w>\nĮ ãĤĬãģ\nax es</w>\nsan jose</w>\nrem brandt</w>\nmag pie</w>\neven ly</w>\nscor sese</w>\nqu aint</w>\nf g\nb buk</w>\nindian football</w>\nweare all\nspd wy</w>\npis ces</w>\nec g</w>\nâĺħâĺħâĺħâĺħ âĺħ</w>\npre orders</w>\n: |</w>\nni pple</w>\nsal azar</w>\nju me\njail break</w>\nmin n\nbas sett</w>\nze tta</w>\njef free\nad jun\ntic on</w>\nsan diego\ndrink local</w>\nchol era</w>\nsolic itors</w>\no bo\ncom post\nni an</w>\nwr a</w>\ntre ach\nic ic\nprofession al\ndel ve</w>\nleg ate</w>\nhistor ia</w>\ncro issant</w>\ncon noisse\nnam o\npalli ative</w>\nchem trails</w>\ni ority</w>\nglobal warming</w>\ncomic art</w>\nbehavi oural</w>\nre sted</w>\nli as</w>\ncli mates</w>\nŁ ãģĦ</w>\nrut land</w>\nnou rish</w>\nmenopau se</w>\nhot ties</w>\ndemen ti\nve spa</w>\nmel ville</w>\nanal ogue</w>\ntz man</w>\nstr ung</w>\nim perfect</w>\ngl are</w>\ncir cling</w>\nros berg</w>\nrec o</w>\noc ity\nlo ire</w>\nem be\ndo ssier</w>\nne el</w>\nnan do\nme a\ngal vani\nfin esse</w>\nag p</w>\nberke ley\nasi m</w>\nâĺº âĺº</w>\nquil ted</w>\nish ere</w>\nun matched</w>\npo tion</w>\nfor z\nat re\nselfi es\njuli ana</w>\nðŁļ ¶\nâĸ º\nmel ton</w>\nâłĢâłĢâłĢâłĢ âłĢâłĢâłĢâłĢ\nspin rilla</w>\npur cell</w>\ned p</w>\nat leti</w>\ntony awards</w>\nra ja\npro gno\nmol ten</w>\nstu ff\np ally</w>\nnobel prize</w>\nâĻ» ï¸ı</w>\nspiritu al\nspe ake\nsa sha\nbri um</w>\ntru ss</w>\ncritici ze</w>\nassassinscre ed</w>\nyor uba</w>\nu lo\nfire man</w>\nworkin progress</w>\nef cc</w>\nfla res</w>\nro bot\nhi kers</w>\ncl l\nshado wing</w>\npat sy</w>\nleh man</w>\nc ns</w>\nå ±\nguad al\nà± į</w>\nra pe\nr honda</w>\nparalle ls</w>\nson ja</w>\nlangu age\nland ings</w>\nz ola</w>\ncr amps</w>\nbur ning\napprais al</w>\njol la</w>\nham m</w>\nkas a</w>\ngul ly</w>\nf go</w>\nuly sses</w>\nri be\nðŁĴ Ħ\nib u</w>\neti enne</w>\nbri ar</w>\nfin ely</w>\ncomb ating</w>\ny ql</w>\ngo tham\nwe chat</w>\nto paz</w>\nprimar ies</w>\nl se\niz z</w>\nhel e</w>\ndispon ible</w>\ncy stic</w>\nbel ichick</w>\nth rush</w>\nkansas city</w>\nge om\nsoli di\nred bubble</w>\nby stand\ncambridge shire</w>\npar fait</w>\nast le</w>\now o</w>\nind ore</w>\nstom ping</w>\nsm elly</w>\nðŁ¤ ĸ</w>\nlocom o\nadm itting</w>\nhol me</w>\nclock wise</w>\nmin sk</w>\nmc co\nfor get\nev p</w>\ncam ra</w>\nab ella</w>\nyo tes</w>\nuniversit yof\nmÃ© xico</w>\nsilver ado</w>\nric ket\ncrom bie</w>\npu j\neradic ate</w>\ndeli ght\ny go\nglam ping</w>\nvic a</w>\ndu ggan</w>\ncoun ters</w>\ncf d</w>\nsc our\nreact js</w>\npu ram</w>\nparas ites</w>\nin ki\nvill en\nstel la\nli mbo</w>\nang as</w>\nk cr\nðŁĴļðŁĴļ ðŁĴļ</w>\nvap ori\nmum ford</w>\noli gar\nà ¼\nal oo</w>\nboo ties</w>\nad r</w>\nk elli</w>\ndru mmers</w>\nav ici\nnature uk</w>\nron al\nin trac\nun splash</w>\nle che</w>\ng oma</w>\nel ine\nenvir o</w>\nbi onic</w>\nbu eno</w>\nmi k</w>\nav in\nstar ling</w>\nem powers</w>\ncake day</w>\nboy cot\nðŁĴļ ðŁĴļ</w>\nðŁĮ¸ ðŁĮ¸\nv ach\nm ci\nfractu res</w>\nger i</w>\nsk ing\nexclu ded</w>\nlu ce</w>\nja ve\nig gy\nevi den\naki stan</w>\na wn</w>\nmor als</w>\nluci fer\nha ban\ntumb ling</w>\nsunday motivation</w>\nmo sley</w>\ncaptain america</w>\nsch icago</w>\nthe one</w>\nmo td</w>\nd ts</w>\nðŁĲ ¼</w>\nrep ell\nii i\nlocu st</w>\ngeo spatial</w>\nmer sey</w>\nimmer se</w>\ndesc end</w>\nber nade\nj s\nboat sales</w>\nwin der</w>\ncran k\nsing leton</w>\ncandid acy</w>\nben a</w>\nðŁı» âĢį\nhigh lander</w>\nol t</w>\nk prs</w>\nhealthy lifestyle</w>\nfour teen</w>\nend the\nith aca</w>\ncircul ated</w>\nr ans</w>\npre valent</w>\nha vas\nsplend or</w>\nroo ster\nkalamaz oo</w>\njewell ers</w>\nenne dy</w>\nrou sey</w>\nes y\ncann ons</w>\nornam ental</w>\n// //\nren don</w>\nwin ne\nmol ding</w>\neid mubarak</w>\ncoun tess</w>\nsimon a</w>\nha wa</w>\nfo es</w>\ndu ster</w>\nsb u</w>\npor tray</w>\nmar ries</w>\ngoo dday\ncho co\nachi ever</w>\nðŁĺ¹ ðŁĺ¹\npre neur</w>\ntr amp</w>\ntom i</w>\nn bat\ngarden chat</w>\nfarra khan</w>\never glades</w>\nab ru\nsou sa</w>\nse ce\nhomes wee\nterre strial</w>\nbar it\nsri devi</w>\nol u</w>\nmel inda</w>\nf rick</w>\ncan dies</w>\nðŁĺŃ ðŁĴķ</w>\nqu reshi</w>\nfamily fun</w>\nexor cist</w>\ncardin al\nny t\ndies el\ncu mulus</w>\ncapric orn</w>\nsi ology</w>\nlor na</w>\ndou gie</w>\nan die</w>\nsuper sport</w>\nc fl\nÐ¿ ÑĢÐ¸\nsay ang</w>\npe ek\nà¸ Ĭ</w>\nlo be</w>\nj em\ning lis</w>\ngg led</w>\nc sn</w>\namne sty\nchu ps</w>\nba es</w>\nsau er\nðŁı Ĳ\nmongo lian</w>\nen et</w>\nback street\ndr illed</w>\nacce ssing</w>\nce o\nb se</w>\nai ken</w>\npur r</w>\nwor sen\nwhe res\nwar k\ntesti fying</w>\nbu ri\nbla st\naw g</w>\nðŁĵ ĭ</w>\nre defining</w>\nhear ing\nu ci\nc mp\nbon i</w>\ntail oring</w>\nta ji\nnoc chi</w>\nem t</w>\nstephen king</w>\nne et</w>\ncompla ins</w>\ncampaig ner</w>\nluci ano</w>\ntwili ght\nti esto</w>\npas sports</w>\nflo yd\ncathe dr\nna ked\ncaregi ver</w>\nb coz</w>\nade cides</w>\nku ri\nly k</w>\nbr aries</w>\ndren ched</w>\ndisc lose</w>\nðŁĴª ðŁı½\nle blanc</w>\nje tty</w>\ngar ty</w>\nchip mun\nb su</w>\nrhyth mic</w>\nic z</w>\nfri d</w>\nanne x</w>\name x</w>\nsolo ist</w>\nlanc ers</w>\narro whead</w>\nspeci fication</w>\nsimul ated</w>\nna is\ninver te\nbo wing</w>\nwor ship\nf z</w>\nabo ss</w>\nsha q\nì¶ ķ\nchalleng ers</w>\nan arch\naamaadmi party</w>\nãħĭãħĭ ãħĭ</w>\nsuffol k\nso corro</w>\nsn ell</w>\ncla dding</w>\nabsor bing</w>\nshaw a</w>\nparticip ates</w>\nðŁį Ķ\nbook stores</w>\nbak u\nseap ort</w>\nko jima</w>\ngab y</w>\npack ard</w>\nelectr ician</w>\nlet it\nmo wing</w>\nfa wad\nyoung jae</w>\nhot mail</w>\nmen ing\nu rie</w>\nintim acy</w>\ncon ti\n: \")</w>\nlifeis good</w>\nin ciner\ni dri\ncraz iness</w>\njour nos</w>\nfran chi\nbott len\nal da</w>\nff es</w>\nk x</w>\nsouth we\nair a</w>\nclay ton\nsco ti\nf j</w>\nbri ga\nðŁ¤ĺ ðŁı»\ndemonstr ators</w>\ny z</w>\nstor k</w>\nna q\ncasc ades</w>\ntravel chat</w>\nplat a</w>\npad ma</w>\nfran ci\nat tain</w>\nbat girl</w>\nlom bard</w>\nhoo s</w>\nd dos</w>\nneon atal</w>\ndiscla imer</w>\nr ss\nr ant\ndi sen\ntex aste\nso cal\nfrac tal</w>\ncam ry</w>\nstri fe</w>\nsn acking</w>\nmu h</w>\nsant ander</w>\nmor ons</w>\ngra f\npar ades</w>\nhu ston</w>\ndru pal</w>\nmi ento</w>\nkir stel</w>\nhy de\nvom it</w>\nforti fied</w>\nsphin x</w>\nda v</w>\nbir yani</w>\nwin nings</w>\ns baseball</w>\nmer ged</w>\nlovel ondon</w>\nling ering</w>\ndream big</w>\ncar leton</w>\nliveli hood</w>\ndjan go</w>\nastri d</w>\ngri ds</w>\ndown e</w>\nbru ised</w>\ns ne</w>\nscarec row</w>\nhel ium</w>\nf nc</w>\nbi ggs</w>\nan ter\nrestor ative</w>\nem pires</w>\nab del\nlife style\nkiwan is</w>\ncolloqui um</w>\nme en</w>\npr ick</w>\nanti que\nze b</w>\nmi mic</w>\nedmon ds</w>\nðŁĳĬ ðŁĳĬ</w>\nq ing\npp el</w>\nmc gill\ninterpre ting</w>\nâŀ ķ</w>\nrash ad</w>\ndo ka</w>\nnarr ator</w>\nelectro magnetic</w>\nash by</w>\nsau ra\niran deal</w>\nâģ īï¸ı</w>\nkrish nan</w>\nin di</w>\nff en</w>\nbre a</w>\nos man</w>\nmultin ational</w>\nchi ppe\nrecruit ers</w>\naus biz</w>\np ounding</w>\nre gen\ncur sor</w>\nrefu sal</w>\nmac s</w>\nin ak\nax ial</w>\nwa ifu</w>\nup cycled</w>\nhindu stan</w>\ncas sini</w>\ncarly le</w>\nscrat ches</w>\nre ef\nman atee</w>\neat ery</w>\nðŁĵ ¢\nun condition\nsen pai</w>\non ther\ncomic book</w>\npro sciutto</w>\nde mar</w>\nmi se\nma ge\nfre ec\naye sha</w>\nal der</w>\nandroid games</w>\nley ton</w>\nho ck</w>\ndoor way</w>\nchicagof ire</w>\naali yah</w>\nsw elling</w>\nbi x\n. ðŁĺĤ</w>\nevan kirstel</w>\ntorpe do</w>\nkon stant\ngenevie ve</w>\nma ia</w>\nha user</w>\ndo torg</w>\nhide ous</w>\nfi k</w>\nsp raw\ne ek</w>\nz appa</w>\nwan dered</w>\n' '\nra jan</w>\nbam bi</w>\n( $)</w>\nwid ening</w>\ntool box</w>\nsa ir\nillumin ating</w>\npra ys</w>\nout patient</w>\ni w</w>\nday o</w>\nlo b</w>\nsw fl</w>\nsha des\ngu ms</w>\ncoo kin</w>\nko di\ngri ffin\ntraum ati\nste a</w>\nslaugh tered</w>\ngod bless\nair time</w>\npseu do</w>\nb sa</w>\nhau led</w>\nar if</w>\nà¸Ńà¸ ĩ\nle l</w>\nwc po</w>\nmil iti\nchar ters</w>\nworl da\nru k</w>\nk gs</w>\ndigital india</w>\nis able</w>\nidyl lic</w>\nesp ino\nmarie tta</w>\ne bo</w>\nteam canada</w>\nab our</w>\nwil ton</w>\nrock stars</w>\nfav ored</w>\nphys ic\nwrink le</w>\ntb r</w>\nd print</w>\nball arat</w>\nad al\nz ey\nðŁĺį ðŁĶ¥</w>\ntom lin</w>\nmt r</w>\npal sy</w>\nfener bah\ntight en</w>\nphil ia</w>\nir oning</w>\nry u\nb ant</w>\nenqu ire</w>\nca ir</w>\nabur ger</w>\ntru n</w>\ngreen berg</w>\nchau han</w>\nir ina</w>\nsh ani\ntrend setter</w>\npre tt\nzaf ar</w>\nalo ve\nv ici\npan ic\nno o</w>\nlu stre</w>\ndisrup ted</w>\nbal lis\nson sof\nmon si\ninst ac\nake st</w>\nëĭ ¤\nkw ame</w>\nhorror movies</w>\ndistric t\nsau cy</w>\nmb an</w>\nar mies</w>\nwith drawn</w>\nmed ics</w>\nloft us</w>\ner oom</w>\nbe kind</w>\nar ns</w>\nall on</w>\nun ison</w>\ndavi ds</w>\ncr at</w>\nnicot ine</w>\nso or\nsm x</w>\non co\ncospla ying</w>\nzombi es\nhar ms</w>\ne ger\nro sy</w>\nmoon shine</w>\nfe in\nce tt</w>\ndu brov\nreg ents</w>\nben itez</w>\nðŁĳıðŁı¼ ðŁĳıðŁı¼</w>\nste c</w>\nm alia</w>\nprioriti ze</w>\nic eland\nft se</w>\nv amo\nlam ont</w>\nhomo sexuality</w>\nbre es</w>\nregu i</w>\ncb p</w>\nte j</w>\nsky sports</w>\ndeter gent</w>\nsha sta</w>\nde rel\nconserv ancy</w>\ncolori zed</w>\naccol ades</w>\nvis o</w>\nshow your\nnan ow\nbice ps</w>\nus ability</w>\nbi m\ndailys ketch</w>\npearl jam</w>\nstran gest</w>\nmega deth</w>\nbroad casts</w>\nbar ren</w>\nar ton</w>\nchri ss\nconfi gu\nlu res</w>\nis the\ne ul\nrailway ana</w>\nglobal health</w>\ngi anni</w>\nu aap\ns lum</w>\nconsci ously</w>\nab re</w>\nn up\nbud get\nv ada</w>\ne sch\nreal ness</w>\ner ased</w>\nth unt</w>\nbe z</w>\narmist ice</w>\nðŁĳ ¹</w>\nsh run\no led</w>\ndriver less</w>\nðŁ¤· ðŁı»âĢįâĻĢï¸ı</w>\nwon dr\nsk an\nsal aam</w>\nmother land</w>\nh wang</w>\ngen o</w>\ngang nam</w>\ntw right</w>\nendor sing</w>\nen ic\nador ation</w>\npau sed</w>\npatric ks</w>\ndo cked</w>\nplat te</w>\nff xv</w>\nethnic ity</w>\nauto show</w>\nside show</w>\nafter life</w>\nre located</w>\norphan ed</w>\nfood network</w>\ndare to\nand ra\nsla ps</w>\nv live</w>\nswim s</w>\nre imagined</w>\nmist le\nre vise</w>\nreal ity\nbhar ti</w>\nðŁĴĻ ðŁĴĽ\nlate st\nprou dest</w>\ngra sses</w>\nlan yard</w>\nfresh est</w>\ncarcin oma</w>\nanom aly</w>\nzieg ler</w>\nsum ner</w>\nly rix</w>\ngor g</w>\nis d\nav el\nswild life</w>\nme squ\njohn cena</w>\neuro league</w>\nsab er\nmaster ful</w>\nyar ra</w>\ncogn ition</w>\njacob son</w>\nabo lic</w>\nsir loin</w>\nshuk la</w>\nmoj ito</w>\nsu pere\nst weet</w>\nme z</w>\ne sa\nrudol f</w>\ngur a</w>\nwhere you\ntt m</w>\nwin s\ntrust worthy</w>\nny k</w>\nbra den</w>\ntable top\ngood food</w>\nes on\nbe k\nlingui stic</w>\ngra ys</w>\nch ath\nh cs</w>\nmon i\nde ans</w>\ncu ssions</w>\nch ell</w>\nslo ws</w>\nhe mi</w>\nd app\nshar pie</w>\nboo sters</w>\na os</w>\nstr ack</w>\nse dona</w>\nmu eller\nhard wick</w>\nor nate</w>\nthor a</w>\nsal ud</w>\no twol\nch um\nmi ho</w>\nfor age</w>\nthel ittle\ntear ful</w>\nones elf</w>\nmin dy\nsm g</w>\ngmb h</w>\nemer ald\nðŁĶ´ âļªï¸ı\ntu tti</w>\nrecep tions</w>\nre vising</w>\ni brox</w>\ntope ka</w>\nsal ami</w>\nexpan se</w>\ni books</w>\ndob son</w>\ncli o</w>\nat s\nðŁļ Į</w>\nmo ha\nis ance</w>\nshu tters</w>\nmoo t</w>\njan ine</w>\nmarvel comics</w>\njor dani\npos er</w>\nkenne th\nhy ung\nde ja</w>\nase ball</w>\nspeci ality</w>\neu ston</w>\nclassic car</w>\nhad ith</w>\nðŁĲ ī</w>\nchas ing\niz o</w>\ngros ven\nag lia</w>\nthisdayin history</w>\nt row</w>\nom ile</w>\nhu ar\nby n\nsal ine</w>\ndiv ine\ndemon ic</w>\nty ran\nhan dover</w>\nrevit alization</w>\npa ella</w>\ncryp tic</w>\nse dg\nm end</w>\ndun kirk</w>\nbre d\nwal d\nsport scar</w>\na ard\nwhe aton</w>\nda ener\nk lan</w>\nbr t</w>\nbakhta war\nspi res</w>\nschu bert</w>\nro ti</w>\npoli sh\no se\nag ame</w>\nwonder con</w>\nprote stant</w>\nbo sa</w>\nðŁĺ Ł</w>\nd Ã¼\njoy ride</w>\nger trude</w>\nâĿ Ŀ</w>\ngil a</w>\nv h\ntw a</w>\ntra v</w>\nswal lowed</w>\nstar ve</w>\nla in\nent ren\nrei ki</w>\nsu kh\ncra ic</w>\naz u</w>\nweb page</w>\nkee fe</w>\nhypo the\nhir sch</w>\nhel le</w>\ncamp ground</w>\nw amy</w>\ntra vi\nsha hi</w>\nsan deep</w>\nru i</w>\nhan uman</w>\ndw p</w>\nreposit ory</w>\nno or\nno ff</w>\nun real\np ell</w>\nblack history</w>\nhar vick</w>\nma scar\npay ee</w>\npa sha</w>\ngastron omy</w>\nd ÃŃ\nai g</w>\nrosen thal</w>\nopen day</w>\nembelli shed</w>\nt tip</w>\nsun bathing</w>\ngo pack\nend ome\nï¸ı #</w>\ninvali d</w>\nfinal four</w>\nst fu</w>\nsquish y</w>\nra sta</w>\nmo sch\njam esc\ndie trich</w>\nsel a</w>\nmel b\nel vi\nt dp</w>\nsun i</w>\nsli t</w>\nj ha\nbi za</w>\nspi ked</w>\nl li\nl illard</w>\nvam pi\nsyno psis</w>\naz har</w>\nkendrick lamar</w>\nĮãĤĬãģ ŁãģĦ</w>\nheart less</w>\ncountry file</w>\nair play</w>\narrog ance</w>\npre e</w>\nvirtu oso</w>\nãħłãħł ãħłãħł\nraj u</w>\nle bu\nfor ward\ntu g\ndro s</w>\nmondaymotiv aton</w>\nconcep cion</w>\nthel o\npad i</w>\nlooo ol</w>\nÑĢ Ð¾Ð´\nit ss\neth ical\nend uro</w>\n__ :</w>\nexpend iture</w>\nmon ste\nmas king</w>\nterri ers</w>\nib is</w>\ne mber</w>\ncu mple</w>\npunctu ation</w>\npi per\nir vin</w>\nade e</w>\nyy yyyy</w>\nflash backs</w>\ncel sius</w>\ndon nie\nbo gota</w>\nben evol\nthe script</w>\nshil pa\npro se\nfin dia</w>\nze ke</w>\nne ko</w>\ndo ves</w>\nblues lyrix</w>\nfro sh</w>\nsowe to</w>\nmp lo\nal ai</w>\nsab i</w>\nraq qa</w>\nwf tv</w>\nstro ller</w>\nian somerhalder</w>\nðŁĶ ª\nan on\nmo seley</w>\n! ?!?</w>\nsta king</w>\nmol y</w>\ncar tri\nc sg</w>\nast or</w>\ntransc end\nma er\nde ux</w>\ncow girl</w>\nsas k\npun ter</w>\nma ken\no ates</w>\nlove tt</w>\ngrow ler</w>\nsag in\nv n\nssi ble</w>\nofficeof rg</w>\ny mc\nsab ar\nfaul ty</w>\nap ha</w>\nak on</w>\nðŁĳ «\nsnow don</w>\nae w</w>\nraise the\nðĿ ĵ\ngrue some</w>\nclement ine</w>\nsp ing</w>\nlat a</w>\nworlden viron\nmi mic\ncan aria</w>\nbakhtawar bz</w>\nao a</w>\nfal a\nãĤ Ń\navi va</w>\nyou uuu</w>\nthi gh\nla dders</w>\ngu mbo</w>\ntz ky</w>\nfu zz\nplastic pollution</w>\nest ate\nstrength ened</w>\nk ant</w>\ndr in</w>\ncal vert</w>\ntransform ational</w>\nfrigh tened</w>\nmac lean</w>\nelited angerous</w>\near thy</w>\nt son</w>\nto da</w>\nj nu</w>\n.. ,</w>\nmic hal\ni ban\nje ong\nis real</w>\nsim coe</w>\nexclu sives</w>\nblue bells</w>\nben e</w>\nte u\npil sner</w>\npens ke</w>\nathe ists</w>\nm pu\ncartag ena</w>\nðŁĴĹ ðŁĴĹ\nmillion aires</w>\nkk kk</w>\nit ar</w>\nsubscri ptions</w>\nremo te\nma fi\nhin ton</w>\nw cc\nho k</w>\nds b\nab leton</w>\nsevent y</w>\npun ks</w>\ne indhoven</w>\nsh one</w>\nmcfar lane</w>\nlim popo</w>\nempha si\nÃ ¼</w>\nsin fo</w>\npe tre\nman grove</w>\nch ino\nber tie</w>\nplay lists</w>\npush awards\np af\ndeb bie\nc do</w>\nr ino</w>\nðŁı¾ âĢįâĻĤï¸ı</w>\nfol ke\nbon nar\nth ine</w>\nsl an</w>\nhal ter</w>\nevi e</w>\naw some</w>\nvul tures</w>\nspar ky</w>\nseiz ures</w>\nâľ Ķ\nram one</w>\nine ffe\nal n\npro ctor</w>\nast ra\nthe voice\ngro te\nsci on</w>\ndead line\nam aya</w>\ntain ted</w>\npatter ned</w>\nexce eding</w>\ncross fit\nkay lee</w>\ndrop box</w>\nru shes</w>\ntack led</w>\nmo by</w>\nretro gamer</w>\nn cbd</w>\nbenef itting</w>\nshay kh</w>\nguild hall</w>\ngen try</w>\ndream cast</w>\ndread ed</w>\nbun dled</w>\nth aw</w>\nrevol ving</w>\nn pt</w>\nkylie jenner</w>\nimagin ative</w>\nron i</w>\nover came</w>\nfamily time</w>\nds burg</w>\ncar naval</w>\nrelation ship\nrecogni zable</w>\ncor oner</w>\nho le\nfan fic</w>\nemir ates\nbur ritos</w>\nanaly se</w>\nthin ner</w>\nne es</w>\ngalli poli</w>\nbl r</w>\ncat woman</w>\n-- >></w>\nau lt\nada ily</w>\nnau ghty\nili o</w>\nsolit aire</w>\nmtv br\njocel yn</w>\narun ach\nrep ent\nsouth gate</w>\nhy acin\nessenti al\nfent on</w>\nand um</w>\nit or\ngo pal</w>\nsl inger</w>\npo sei\naw il\nwi elding</w>\nra ila</w>\neli as\na sto\nÃ ¤</w>\ntend ency</w>\nstr ata</w>\nker t</w>\n< -</w>\nim acele\nda es\nsti mulus</w>\nhan ley</w>\nfit nes\nec stasy</w>\nlim ous\nha iling</w>\nðŁ¤ Ń</w>\nchis wick</w>\ntar ies</w>\nsla v</w>\npul i</w>\nmoderni zation</w>\nblack mail</w>\nb ingham</w>\nh fx\n+ +\nðŁĩ®ðŁĩ ³\nni v</w>\nwe a</w>\nprofess or\nk off</w>\nbol ster</w>\nsu ave</w>\nsequ ences</w>\npepper oni</w>\nnot te</w>\ndre n</w>\nãģ¨ ç¹ĭãģ\nhs v</w>\no ga</w>\nap tly</w>\nz ad\nexcel si\nrin ka</w>\nmol dova</w>\nmin n</w>\nma bel</w>\nconferen cing</w>\nbas ing\nof er\nob si\nhamill himself</w>\ncare less</w>\nbrief ed</w>\ninhe rent</w>\npar ish\ndub nation</w>\ntown sville</w>\nsar awak</w>\ngee ky</w>\ndoncaster isgreat</w>\nwas abi</w>\ngu p</w>\nphen o\ndra inthe\ncarrie underwood</w>\nble eds</w>\nbbc world</w>\nane w</w>\nalta f</w>\ndul wich</w>\nani ston</w>\nw ti</w>\nsumat ra</w>\ngra fton</w>\nbl n</w>\nme ster</w>\nbode ga</w>\nre go</w>\nes q</w>\nan jo</w>\nsump tuous</w>\nmai sie</w>\nï¿ ½\nwil t</w>\njak ob</w>\nel vis\nse pul\nmu ster</w>\nair pollution</w>\npresident e</w>\nhappy monday</w>\nexten sively</w>\nfl ondon</w>\nt ls</w>\nplay ing\npe ed</w>\ndin ho</w>\nvar dy</w>\npi ka</w>\nn iro</w>\nau cus</w>\nðŁį ¦\nnu ll</w>\nel ondon</w>\njuvent us\nimag ines</w>\ndis ab\nlit o</w>\nd ura</w>\nwork places</w>\npromo te\nmc caf\nwood work</w>\nwaw x</w>\nà® ª</w>\ntt ino</w>\nshar i</w>\nsem per\nbetter together</w>\nðŁĳĬ ðŁı»\nze bra\npon dering</w>\nen chil\nho m</w>\ncosm ic\ntan z\nmo cked</w>\nec cc</w>\nath ed</w>\nabo lish</w>\nprop eller</w>\nparis agreement</w>\nassemb lies</w>\nindu stry\nfraudul ent</w>\npe sa</w>\nchang min</w>\nax x\nðŁĴ µ\nirr ational</w>\ncu sa</w>\nramad han</w>\nocta via</w>\non elove</w>\njac ki\nbar ak\ntaxi der\nseri ous\nnathan fillion</w>\nmc en\nch k</w>\npo part</w>\ngrav ity\ncopp ola</w>\nreading fc</w>\nillu sions</w>\nj ig</w>\nww x</w>\nre sh</w>\nex porting</w>\nbuzz ard</w>\nâĻ ¤</w>\np cm</w>\nlan apar\nko s\narom as</w>\nantal ya</w>\nww dc</w>\nven a</w>\nphil a</w>\nball in\nðŁĳ Ħ</w>\nquin ta</w>\nma o\nf ery</w>\neigh ty</w>\nsentim ents</w>\nsafe guarding</w>\nr wa</w>\npu ffs</w>\nluc ille</w>\nde cath\nsl u</w>\nnu gent</w>\nde ter</w>\nbraz il\nze iss</w>\nsuper bowl\nsubsi dy</w>\nalter n\nhi dalgo</w>\nenz ymes</w>\nä ½\ntag ne</w>\nhair dresser</w>\nadri en</w>\nwalk out</w>\noppo ses</w>\ncan tina</w>\nbed side</w>\naf an\nðŁĶ Ĺ\nprophe tic</w>\ndan es</w>\nun successful</w>\nsuper charged</w>\npk k</w>\nexem ption</w>\nhart le\nsecu lar\ncli pping</w>\nbr s</w>\nunited way\nc net</w>\npat chy</w>\nha gan</w>\ne en\nâļ ľ\nvar a</w>\nsym pathi\nnever trump</w>\naffir mation</w>\nom f</w>\nny cfc</w>\nma ja</w>\nsur ro\nkeer th\nup scale</w>\nsandal wood</w>\nmon archy</w>\nkno bs</w>\nå ĭ\npo tholes</w>\nhunger games</w>\nter races</w>\nna sir</w>\ncoun sell\nwelcome to\nwa q\nse aman</w>\nm ita</w>\nstun ningly</w>\non theroad</w>\nin ability</w>\n) !!</w>\nbon go</w>\nant v</w>\nsp ut\nworldenviron mentday</w>\nresu sc\ny td</w>\nfi m</w>\neun hyuk</w>\nsa chin\nrose anne</w>\ncler mont</w>\nape c</w>\nam ina</w>\nv ening</w>\nn antes</w>\nal most\nsin us</w>\nex as</w>\nty l</w>\nti en</w>\nple ad</w>\nlanc s</w>\nbur naby</w>\nre k\njo om\nobserv ers</w>\ndisco graphy</w>\ncl g</w>\nâĻ ¦</w>\nsn ack\nr ti</w>\no ily</w>\ncrystal li\nbru te</w>\nweb development</w>\ntopp ings</w>\nla f\nan is</w>\nad der</w>\nreli ving</w>\ncar lin</w>\nbattle of\nwe g</w>\nsyri an\npon t\nn dc</w>\nlagh ate\nyu ma</w>\nsp p</w>\np iti\nro bbing</w>\nmart ing\nrey kja\nraj put</w>\nnc ds</w>\nkie wicz</w>\nâĢ¢ âĢ¢</w>\nvam pire\nsubstan tially</w>\nopio ids</w>\nnepal i</w>\nk line</w>\nar oo</w>\nunder stand\nlit t</w>\nu it</w>\nthro mbo\nsar ies</w>\nqu ot</w>\nb alling</w>\nt tr\ns gh</w>\nphilip p</w>\nbr ant</w>\nac l\nm ello</w>\nwhit taker</w>\n. ;</w>\ndefi ant</w>\nb gc</w>\nrepl ying</w>\nmir ren</w>\nmetamor pho\nsch wab</w>\nbul ge</w>\nutili zed</w>\npick ering</w>\npar don\nd sa</w>\nà¸ Ī\ndoo ley</w>\ncumul ative</w>\nÐ »\nur gency</w>\ne mir</w>\n+ /-</w>\n¦ Ī</w>\not as</w>\nâı ³</w>\nstation ed</w>\ngrape vine</w>\nar ac\nkaran johar</w>\nf ancy\nsau l\ncoo gs</w>\nlgbt q\nØ§Ù ħ\njav i</w>\nu mmer</w>\npl l\nden is\ndai pur</w>\npu ffin</w>\nlewi sham</w>\nfand om\nco pe\nves matter</w>\ns ve\nhel pless</w>\ndeo dor\nostr ich</w>\nkaz an</w>\nfriday the</w>\ncon dor</w>\nv x</w>\nsophom ores</w>\nrob les</w>\ncu tt</w>\ncli mbers</w>\në¦ ¬\nsle g</w>\nsn f</w>\nmac ys</w>\nhydr ating</w>\ngrou pe</w>\npo yn\nmou lin</w>\nhg tv</w>\nlmfa ooo</w>\nsulph ur</w>\nasdfghj kl</w>\nannab elle</w>\nhump back</w>\nbra ved</w>\nviswas am</w>\nmulti purpose</w>\nhu midi\nescor ted</w>\nbarb ican</w>\nf ad</w>\ncor sa</w>\nðŁ¤ «</w>\npi ppa</w>\nhere to\ncan y\nser gi\nor cas</w>\no vie\ned ou\ns any\nglob alization</w>\nman cini</w>\nfood truck</w>\nf is</w>\ndefi brill\nsch re\nsma fia</w>\nlove wins</w>\nla ut\nk aka</w>\nhol lande</w>\ngame on</w>\nresurg ence</w>\nout side\nolympi ad</w>\nint an\nabstr action</w>\nrapi d\npal om\ncal le\njas min</w>\nattack ers</w>\nswag g</w>\nmit ra</w>\nky lo</w>\nà® ²</w>\nher mitage</w>\ngor do</w>\ne ira</w>\nso sfam</w>\nroll out</w>\nexc ite</w>\nsy nod</w>\nmer rill</w>\nc als</w>\nas sa</w>\nliveli hoods</w>\nju ve\nthe black\ngopack go</w>\nant lers</w>\nalban ian</w>\nwool ly</w>\nqu iche</w>\npuri fication</w>\nare th</w>\nsmar thome</w>\nne k</w>\nall blacks</w>\nmex icans</w>\nis m\nger ms</w>\ncomple xion</w>\nmar ck</w>\nu shi</w>\nðŁĲ Ĳ\nchar l\nca stic</w>\ntill erson</w>\ngiuli ani</w>\nbiode gradable</w>\nmal bec</w>\nbo is\nju bil\nim es</w>\nr ame</w>\ngene tic\nesp nu</w>\nch ley</w>\nso ho\ngo pher\ng sc</w>\nbuu ren</w>\ncu be\nbridesma ids</w>\nwebin ars</w>\nto e\nmani pur</w>\nviol ently</w>\nnotic ias</w>\nex changing</w>\nchi ev\nreplac eable</w>\nmuay thai</w>\nbu ss</w>\nsp il\ninstal ment</w>\ndiv ya</w>\ncait lin\no lim\nfil tering</w>\nwhirl wind</w>\nsta red</w>\nprior it\npr am\npompe ii</w>\nmono logue</w>\nk ite\nbu ka</w>\nâĢ¦ ..</w>\nvac cine\nbre ro</w>\nwoz ni\nsol ent</w>\nre ferr\nmy rt\ngridi ron</w>\ngalatasar ay</w>\nfro ze</w>\nclare mont</w>\nðŁ¥ ĥ</w>\nvictori as\nssel dorf</w>\npa stures</w>\nnet neutrality</w>\nch or</w>\nðŁĳ ģ\nà² ¿</w>\nwe ho</w>\nsymp tom</w>\njo sel\nin ous</w>\ndragon con</w>\npower ball</w>\np te</w>\nfour thofjuly</w>\nec la\near buds</w>\nwhere abouts</w>\nsalt life</w>\ndepriv ation</w>\nch ter</w>\nwi ggle</w>\nsyste m\nps st</w>\nch az\nd any</w>\nri mo</w>\noax aca</w>\nlanapar rilla</w>\nbarcel on\nmelanch oly</w>\nway back\nho tro\nn si\nl illy\nkur o</w>\nja han</w>\nintellec t</w>\nboard game</w>\nðŁı Ĭ</w>\nsneak peek</w>\nk prc</w>\njail s</w>\ncand el\nzan zi\nmor timer</w>\nstar ch</w>\nra gs</w>\np fa</w>\nlong live\nk art\ngir ona</w>\ncro cker</w>\nchristop h</w>\nprecau tions</w>\nwar ship</w>\nper m</w>\nparen t\nvan gogh</w>\ngif ford</w>\nallegh eny</w>\nra yn\nut m</w>\nsten cil</w>\nrec alling</w>\npen ney</w>\nz azzle</w>\nìĥ Ŀ\nhin ds</w>\naren as</w>\nnu ev\nlaw ler</w>\ngu in</w>\ndo this</w>\nðŁĳ ķ</w>\nì¶ķ íķĺ\nwe g\nti b\nri din</w>\ncomplex es</w>\nturbul ent</w>\npe sos</w>\nde marcus</w>\nvall arta</w>\nsam sun\nkis ses\nhein rich</w>\ndeport es</w>\nwil ms\nur d</w>\nthen ext\ninki gayo</w>\nho wi\nfir sts</w>\ncarri age\nclean liness</w>\nmas war\nis ch</w>\nax el\nsi zzle</w>\nroad house</w>\nfr ans</w>\nent ourage</w>\nco bble\nboo th\nbenedic t\ntal on</w>\nfc u</w>\nyear ofthe\nray on</w>\nraider nation</w>\nfo yle</w>\nko val\npi anos</w>\nl pg</w>\nbur mese</w>\nman ure</w>\ngeo caching</w>\ncosc ino</w>\nb np</w>\nfer ra\nstro phy</w>\nmar ais</w>\nce es</w>\nlegen dof\nkat niss</w>\neno ch</w>\nav ed</w>\nyou know\nd prk</w>\nðŁĺ¢ ðŁĺ¢</w>\nsp un\npro st</w>\nsor rows</w>\ncent red</w>\nke a</w>\ngal icia</w>\n? ðŁ¤Ķ</w>\nÑĢÐ¾Ð´ Ð°</w>\nbou chard</w>\nðŁĴĻ ðŁĴľ\nyu i</w>\nseed lings</w>\njon ah\nreco vers</w>\nny rd</w>\nboard room</w>\nsu ma</w>\nmy japs</w>\ntun g\nsha i</w>\nir gc</w>\neli o</w>\nwag ons</w>\nka shi\npolic emen</w>\njohn nie</w>\nale coscino</w>\nshop ify</w>\ndot ted</w>\nde tri\nva w</w>\nto fficial</w>\nin your\nchal mers</w>\ntrac ed</w>\nno vi\nby es</w>\nari el\nnipp on</w>\nla pel</w>\ngri ez\nb gs</w>\nfool ing</w>\nd ita</w>\nvijay sethu\nnm wx</w>\nas ot</w>\nkr anti</w>\nhel m\nve di</w>\nsic kest</w>\nmo chi</w>\nk abo\nshru bs</w>\nhe red\nb sp</w>\nsq m</w>\nham r</w>\ndul kar</w>\nanth a</w>\nnr f</w>\navoid ance</w>\nat en</w>\npubli x</w>\nbe arers</w>\nnas i</w>\nha p</w>\nh ells</w>\nðŁĸ ¥</w>\nà¸ ·</w>\nthelast jedi</w>\noh wx</w>\nðŁį «\nwa hoo</w>\nthere se</w>\nrec aps</w>\nss nhq</w>\nbird photography</w>\nv ay\npet ti\npau lo\nbel vedere</w>\n( *\ngr l</w>\ndu vet</w>\nc pec</w>\nsa it\npor sch\nmeas urable</w>\navi ators</w>\nfre mantle</w>\nbre en</w>\non om\nme and\nlife saving</w>\neu ref</w>\nen don</w>\nembar as\naira sia</w>\nel is</w>\ndun kin\nstar magic\ns ill</w>\nporto bello</w>\nki efer</w>\nex e</w>\nmu ted</w>\nãģ ¦\nwe thepeople</w>\nlogi a</w>\nliber al\ntheforce awakens</w>\nmin ed</w>\nhaun ts</w>\nfreck les</w>\ncare taker</w>\ns india</w>\nâķ Ĳ\ndev lin</w>\nlist on</w>\ndirection er</w>\noh n</w>\nfi garo</w>\nem manuel\ndu bois</w>\ncl ones</w>\nbru ise</w>\nðŁİĪ ðŁİī</w>\ndisin fe\nder matology</w>\nas r</w>\ns watch</w>\ndis comfort</w>\ntam anna\npi day</w>\nmack en\nk atic</w>\ndelu sional</w>\nshaw nee</w>\ngu d\nal bino</w>\np ali\ndin gh\ncucu mbers</w>\ncoffe y</w>\nanticip ating</w>\ntreas ured</w>\nweb summit</w>\nshel tered</w>\nsav or</w>\npedago gy</w>\nm gs</w>\nsh ma</w>\ns bu\nden ali</w>\ncam pos</w>\nbubble gum</w>\no ir\nle aps</w>\ny ler</w>\nr one\nsansk rit</w>\nmin t\nmeat less\nfuturi st</w>\ndu de\na vel</w>\nprote sted</w>\nsqu ire</w>\nz aki</w>\nsz n</w>\nhar court</w>\ncycl one\nbour dain</w>\ngather ings</w>\nd ant\nadvent urer</w>\nparag on</w>\nalt man</w>\ndd ing\nban erjee</w>\nsnorkel ing</w>\nmother well</w>\nmis sy\nen der\nglo ws</w>\nki wis</w>\nchick pea</w>\npor o\ne fron</w>\napp t</w>\nu y</w>\nspeci fied</w>\ngab by\ne strada</w>\ncom bos</w>\nbour bon\nvin i</w>\nvar un\nsteph ani\nkey words</w>\ncar vings</w>\namit abh</w>\nwr ought</w>\ntw al\nre els</w>\nclu bbing</w>\nubi quit\ncri t</w>\nambed kar</w>\næ Ļ\nprun ing</w>\nvaccin ated</w>\nboe ing\ns ks</w>\nlo ona</w>\nhypno sis</w>\nedel man</w>\npho l</w>\nhe w\ncolo sse\nmckin sey</w>\nu on\nto te\nsacrific ing</w>\nox i</w>\nn ang\ne mu\nÐ¿ÑĢÐ¸ ÑĢÐ¾Ð´Ð°</w>\nm th</w>\nkers wednesday</w>\nargu ed</w>\ntimel apse</w>\nris king</w>\nregul ating</w>\nni gh</w>\nlikeli hood</w>\ncu bic\nau ction\nrein for\npi stor\nno ses</w>\nye l</w>\nsnu ggles</w>\npe i\njean ette</w>\nta ku</w>\nri th\nguy z</w>\nà¸ ŀ</w>\ny te</w>\nver ted</w>\npay soff</w>\njau regui</w>\nhoo ligans</w>\nprocedu ral</w>\nmi b</w>\nhar dy\nel eng\nchec kers</w>\nall ine</w>\nthe met</w>\nprou dof\nkeerth yofficial</w>\ncollabor ator</w>\nni u</w>\ninfl icted</w>\nadv ani</w>\nre twee\nmemor iam</w>\nf icial</w>\nti ghter</w>\nsal em\nre viewers</w>\nbr ics</w>\nben digo</w>\nam ell</w>\ntur kish\nsush maswar\npaul son</w>\npal awan</w>\nmol lie</w>\nstitch er</w>\ns burgh</w>\nir u</w>\nhay dn</w>\nen ers</w>\naro a</w>\nu zzi</w>\nsaraj evo</w>\nhel a</w>\napol lo\nnine ty</w>\nvac a</w>\nsp on</w>\nvent u\njel ena</w>\nhei fer</w>\navo ids</w>\nsp ine\npri ze\nmar ist</w>\nre creating</w>\nme de</w>\nwoo den\nfind lay</w>\nro fl</w>\nn di</w>\ncompreh end</w>\nyu go\ny Ã¼\nto work</w>\nu fos</w>\nson ar</w>\npi ston</w>\nrecor ding\ntent ative</w>\nart forsale</w>\npel lets</w>\nfre do</w>\nÙĪ Ø±\nmu ses</w>\ncustom ization</w>\npro found\nis ner</w>\nide ally</w>\nsi am</w>\nplan kton</w>\ncm dr</w>\nman ger</w>\nfran ken</w>\ncustomiz able</w>\nà¤ ®\nwalk away</w>\nswi vel</w>\nvast ly</w>\nno ton\nlex a</w>\nex moor</w>\nz as</w>\ntan te</w>\nreduc tions</w>\nlol ly</w>\nhip sters</w>\nbenef ited</w>\në ²\nww www</w>\nmascul ine</w>\nfi ji\ndre y\nph ill</w>\nane ous</w>\nnic ol</w>\nmen dez</w>\ndisapp ro\nch ner</w>\nthrough s</w>\nshen mue</w>\neast man</w>\nðŁĲ İ\nyu ck</w>\nunder tale</w>\nre ys</w>\ngo beavs</w>\neng en</w>\nc na</w>\nmer r\nbir k\nãģ¨ç¹ĭãģ ĮãĤĬãģŁãģĦ</w>\nâĥ£ @</w>\nyn na</w>\nste ed</w>\noffen der</w>\nat um</w>\nvani shing</w>\npresi denti\nlove them</w>\ng nocchi</w>\nfri ggin</w>\nper il</w>\nmad hya</w>\nag ne</w>\ndee jay\nmar nock</w>\nm tb\nfold able</w>\n@ ___</w>\nstand re\nbron x\nbow ski</w>\nfin ite</w>\ncro ckett</w>\nb sf</w>\nge tit</w>\nseren awilliams</w>\nmir o</w>\nignati us</w>\nsla y\nrin se</w>\nfon due</w>\nsel dom</w>\ns more</w>\ngan i</w>\ndy ce</w>\ndmit ry</w>\ncru mb\nlate post</w>\npri mark</w>\noh ana</w>\nflor als</w>\ndo a</w>\nremembrance day</w>\nd ds</w>\nazi one</w>\ntoon ami</w>\nair port\næĿ ±\nth ad\nfi st\ndine sh</w>\ndr who</w>\nad words</w>\nadmi rer</w>\npro je\nkyrgy z\nà «\nmanife station</w>\nle wan\nj ic\nthi bau\nle ased</w>\nvan ity\nnouri shed</w>\nnever theless</w>\naug mente\nfu elled</w>\nche ad\nwil shere</w>\nru di\np z</w>\nmy co\nmor ro</w>\nherbali fe</w>\nhardro ck\nde man</w>\ndre ality</w>\nsp ades</w>\nce vic\nbha i\nbar on\nultimat efan\nhou news</w>\nto bi</w>\nstru t</w>\nke el</w>\naffili ation</w>\nthe masters</w>\nsm al\nhu e\neste ban</w>\ncon v</w>\nom nic\ndatab ases</w>\nco v</w>\nter ti\nst g</w>\nsnoop dogg</w>\nmetab ol\nleth bridge</w>\nðŁı» âĢįâĻĢï¸ı\nyear ling</w>\nresidente vil</w>\nnws l</w>\niy aki</w>\ngriez mann</w>\nc ous</w>\nðŁĵĿ :</w>\ntor ian</w>\nsam i\nðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\ng are</w>\nalli ances</w>\nwhit field</w>\nwe ther</w>\nrefin ing</w>\ncoy i</w>\nkra ken</w>\nðŁĺĺ âĿ¤</w>\nsingul arity</w>\nlil i</w>\nh ns</w>\nbol dand\nwaw rinka</w>\nmisogy ny</w>\nlo vers\nc q</w>\nb dg</w>\nad ona</w>\ngar ter</w>\nwomen of\nsc d</w>\nrecogn ising</w>\nmun a</w>\nstr ou\nsign alling</w>\nlare do</w>\nhell boy</w>\nalek sand\nun available</w>\npedi atric\nas in\nmer ia</w>\nri shi\nfuturi sm</w>\nw ye\npolari zed</w>\ne we</w>\npro pel</w>\nin forms</w>\ncre ase</w>\n~ \"</w>\narti ston\nlike for\nheidel berg</w>\ner ra</w>\nlife in\nlen ny\ninter rupt</w>\ncohe rent</w>\nca z\nvick ers</w>\nle veled</w>\nf bs</w>\ncab ins</w>\nbu mmed</w>\napost les</w>\nwe h\nten don</w>\nsouven irs</w>\ninfu ri\npier ce\nasse t\nm las</w>\ngo th\ndi ggin</w>\nann as\nyl or</w>\nth waite</w>\nsw el\npan era</w>\nmur derers</w>\ncroo ked\nbs go</w>\nac u</w>\na on</w>\nre an</w>\none of\nko hl</w>\nbloo dh\npest icide</w>\nlost dog</w>\nfle xing</w>\nëĤ ĺ\nsu pra</w>\neter nally</w>\nðŁļ Ļ</w>\npa olo\nol an\nmom o\nis elle</w>\ncaptain marvel</w>\ns lou\nmistak enly</w>\nakhi lesh</w>\nmer t</w>\nil inan</w>\nbu on</w>\nbal kan</w>\nmir ro\nmill en\nder ail\ndam on\ntit i</w>\nbi os</w>\nre don\npic ard</w>\npar te</w>\nðŁ¤ Ł\nØ º\nson ics</w>\nfir sth\ndd c</w>\nveg ans</w>\ntur ban</w>\nni gan</w>\nlot tie</w>\nlyn don</w>\nstar buck\npink floyd</w>\nlife styles</w>\nam ara</w>\na she\nr sc</w>\nval a</w>\nsm er\ncw gc</w>\ncli ent\nbuen as</w>\njag an</w>\ncoo ps</w>\nðŁĳĳ ðŁĳĳ\nspeci alizes</w>\nsnag ged</w>\ng lar\nben net</w>\nwildlife wednesday</w>\nbow den</w>\npi k</w>\nart in</w>\nempor ium</w>\nar l</w>\nre ba</w>\npas ser</w>\ndisappo ints</w>\nadditi ve</w>\nâľĬ ðŁı½</w>\nbay er\nmissou la</w>\nha skell</w>\ncomm ences</w>\nni x\nne man</w>\nexplo ited</w>\nplastic surgery</w>\ncc d</w>\naso cial</w>\nvo t</w>\nsie gel</w>\nfro ome</w>\nkap am\nfar a</w>\ne ha</w>\npro bes</w>\nmw f</w>\nmeet ing\np bb\nak ins</w>\nmistle toe</w>\nkingdom hearts</w>\nfor kids</w>\nec r</w>\nbal e\nescor ts</w>\nadidas originals</w>\nk wa</w>\nk ts</w>\nhallo ffame</w>\nðŁĺį .</w>\nwag s</w>\npot ted</w>\no wing</w>\nhoney comb</w>\nhe fty</w>\nuro logy</w>\nmer le</w>\nb pd</w>\nstri pping</w>\nre ich\nk state\ngu ay\nyon ge</w>\nshak ti\ng loom</w>\nbat t</w>\nson om\nn ery</w>\nel ba</w>\nblan ks</w>\nhel le\ntriple ts</w>\nbom bay\nak arta</w>\nab ia</w>\ntransm itted</w>\nrol f</w>\nja is\nangular js</w>\nfi erc\nm ss</w>\ntrac e\nà¥ ĩ\ntom bs</w>\nold man</w>\nkom bucha</w>\nfo l</w>\ne health</w>\ncere als</w>\nare lli</w>\nin ari</w>\nðŁĴ ©\nwo l</w>\nliber ties</w>\nfa wn</w>\naf firm</w>\nnun avut</w>\nhyster ical</w>\nk drama</w>\nart es</w>\nâĢ¢âĢ¢âĢ¢âĢ¢ âĢ¢âĢ¢âĢ¢âĢ¢\nvalent in</w>\nman slaughter</w>\ngal es</w>\neo in</w>\nenergi zed</w>\ndel s</w>\nwith draws</w>\nst les</w>\nsar castic</w>\nram esh\nincredi bles</w>\nlock hart</w>\nya wn</w>\nultimatefan live</w>\noooooooo oooooooo\nmu en\nguru dev</w>\nte er</w>\npe eling</w>\nnew snow</w>\nlingui stics</w>\ndirec tv</w>\nag end\nuni lever</w>\nru ger</w>\nhan dedly</w>\nero se</w>\nli mel\nthe c\nroyal ties</w>\nfini shers</w>\nnr g</w>\nm gt</w>\nfid get</w>\ncom ps</w>\nbac on\naggre ssively</w>\nab it</w>\nch Ã¢\ntar de</w>\nslu gger</w>\nq anda</w>\ngre ening</w>\nd ats</w>\nensla ved</w>\nspec tor</w>\no ye\nfre ef\nb hand\nstop brexit</w>\nmis conceptions</w>\ncav a</w>\nðŁĺįðŁĺįðŁĺįðŁĺį ðŁĺįðŁĺįðŁĺįðŁĺį\nmultit asking</w>\nhou sel\nferre ira</w>\ncen time\nank les</w>\njo dh\nhel ly</w>\nfro me</w>\nout tuesday</w>\nnar nia</w>\nbal aji</w>\nl bloggers</w>\njyo ti</w>\nðŁį ĩ</w>\nlan cia</w>\ncap ri\ny ap\nnat ash\ndown fall</w>\n.\" âĢĶ</w>\nÃ ®\nligam ent</w>\ncoat ings</w>\nai ded</w>\nhi ko</w>\nfall ing\nencryp ted</w>\nyeg food</w>\ninfringe ment</w>\ncu di</w>\nce p</w>\nðŁĺį ðŁĺĤ</w>\ntra d\nsuper rugby</w>\ned win\nwh iche\nvi meo</w>\nlay ne</w>\nin vigor\nhe he\ndubrov nik</w>\nbie ber\nu tr\nsham an</w>\nop ers</w>\nham ill</w>\nen ig</w>\ndi f</w>\nar um</w>\nscrap book</w>\nmin h</w>\ndiver gence</w>\nmckin non</w>\nlife time\nguter res</w>\nwil le\nple as</w>\npatt y\nmic ron\nk z\ndom aine</w>\nru sher</w>\nm ds</w>\nches ney</w>\nscrew driver</w>\nâģ© ,</w>\nsle dge</w>\nhau er</w>\nchan a</w>\nstam ina</w>\nsprink ler</w>\npl n</w>\nhe ff\nbol ton\nom on\ncar rington</w>\naccor dion</w>\njor ge\ninter ception</w>\nin puts</w>\ngu ll\ntran scription</w>\nvanu atu</w>\nit ical</w>\neth os</w>\ntic h</w>\nspac ey</w>\npee king</w>\nu mi\nha ger\npsycho tic</w>\nilli an\nilli a</w>\nbonnar oo</w>\nan ese</w>\npu c\nlaghate parth</w>\nen hall</w>\neconom ical</w>\ndre dge</w>\n% -</w>\nu we</w>\ntu bular</w>\nscoun cil</w>\npe asants</w>\nfl er</w>\ntumb ler</w>\nhe p</w>\nford ham</w>\nrow ley</w>\niniti als</w>\nev asion</w>\ner nation</w>\nplu gins</w>\ncoch ran</w>\nc attle\nacid ity</w>\nðŁİĬ ðŁİī</w>\nre grann</w>\njump man</w>\nef ace</w>\nx ma\npatri archy</w>\nesco bar</w>\ncristi an</w>\ntip ton</w>\nnu eva</w>\nhack ney\nback seat</w>\nkill arney</w>\naid an\nsta dion</w>\nsimul taneous</w>\nida ho\na je\nu th\nfigu re\nclo s</w>\nbur k\nvolun tar\nrec ite</w>\nmacfar lane</w>\ncur few</w>\nbou do\nw gn\nsti x</w>\nsla p\nscrat ched</w>\nphilli p\njour ne\nex pelled</w>\nwa z</w>\nu ke\ntati ana</w>\nou e</w>\nho pp\ndimit ri</w>\nðŁĵ £\nmato logist</w>\nelectri fying</w>\nblu ffs</w>\nbill smafia</w>\naz cardinals</w>\ny aa\nx mas\nshar a</w>\nr ith</w>\ng ills</w>\ndre s\nbar ton\nauthori zation</w>\nimperi alism</w>\nhome of\nto do\nfoot path</w>\nband width</w>\nvisit spain</w>\nmoh sin</w>\nerup ted</w>\nmi ki</w>\ninsig nia</w>\nmike l</w>\nss h</w>\nger a</w>\nbank holiday\naw an\nt weak</w>\nstar craft</w>\ne al\nconstruc tion\nskelet ons</w>\nle ep\nine m</w>\nbar clay\nship wreck</w>\nmonsi eur</w>\nyo h</w>\nron t</w>\nform ative</w>\nser o\nle p\nhorse man</w>\nhoo sier</w>\nhaz mat</w>\ncylin ders</w>\ncen ti\nðŁĴ¥ðŁĴ¥ ðŁĴ¥</w>\nre em</w>\nna ire</w>\nmus ically</w>\ngras shopper</w>\nest onian</w>\ntermin ology</w>\nro main</w>\nblogger rt</w>\ntox in</w>\nstan ce\ncultiv ated</w>\nan ast\nðŁĲ į\nshi mano</w>\ngo pher</w>\nene i</w>\nrecycla ble</w>\ngam ification</w>\nfight for\nc q\navoc ados</w>\nke ys\neli ke\ngly cer\nshak ur</w>\nmobili zation</w>\ngal ley</w>\nexpla in\nex changed</w>\npe th</w>\nobe dience</w>\nilla ge</w>\nen nis\nãĥ ŀ\nwi v</w>\nwalla bies</w>\nma ar</w>\nig ers</w>\nfin tech\nfin alized</w>\nwo j\nmeaning less</w>\nin field</w>\nonna ise</w>\ne et</w>\nbron te</w>\npass ages</w>\nðŁĳ §\nstrick land</w>\nnorthern lights</w>\nlom ond</w>\nh tc\nwr ay</w>\nshi fter</w>\ndi alog</w>\nðŁį į</w>\n>> >>>></w>\nte atime</w>\nste ch\nsic huan</w>\nqu ill</w>\nfran ca\ncomple mentary</w>\nbar rington</w>\nmarcu s\nmal am</w>\ngoo oo</w>\nfor sa\nelec tra</w>\naf s</w>\nâĹ Ĩ</w>\ntri fe\nsn azzy</w>\nfo lia</w>\nand olan</w>\nafter dark</w>\nwood son</w>\nstra de</w>\nlitt lest</w>\no gun\ncon wy</w>\nco wards</w>\nðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤ</w>\níĬ ¸\nse ul\nmur phy\ndun ks</w>\nkapil shar\njo achim</w>\nwom ack</w>\nequal ity\naver ages</w>\na ine\nðŁ¦ Ī</w>\ntac ular</w>\ndis ability\nu ked\nmid century</w>\nbar thol\nteas ers</w>\ntab ern\nnj caa</w>\nsp out</w>\nop i</w>\nku bball</w>\nbl om\nso ar\npopu lism</w>\nmeth yl\nðŁĳĬ ðŁı¼\no spre\nalo ils</w>\nðŁĵ ĸ\nðŁĮ ļ\nx er\nsp illing</w>\npubl ica</w>\ncar dam\nadi sh</w>\nsa cha</w>\np kg</w>\nbu da</w>\nlyric ist</w>\ni bc</w>\ngru mp\nho ver</w>\nhal ep</w>\nanti body</w>\nanem one</w>\nâĻ¥âĻ¥ âĻ¥âĻ¥\nm cl\nlitho graph</w>\ncc u</w>\ns fest</w>\npath ic</w>\ncalli ster</w>\notta wa\ngun sn\nrut ger\nhali but</w>\nen vision</w>\ndifferenti ate</w>\nðŁļĢ ðŁļĢ\npir an\nlat el\nuc n</w>\ntrou bad\nra ine\nfierc ely</w>\nlearn english</w>\nlea se\nwex mondays</w>\nem it</w>\ndray ton</w>\nbur rell</w>\nscuba diving</w>\nhol ler</w>\ndr u</w>\nclo cked</w>\nw ral</w>\nap ro</w>\ntrans lucent</w>\nw bo</w>\npatri arch</w>\nmo ja\nlan nister</w>\nfish ery</w>\nne derland</w>\nmil dly</w>\nmi rai</w>\nma ko</w>\nja p</w>\nðŁĺ©ðŁĺ© ðŁĺ©</w>\npro statec\np anna</w>\nar ama</w>\nunder taking</w>\ntomp kins</w>\nne op\nsoli ds</w>\nsav oury</w>\ne ames</w>\ncut lery</w>\nwood bridge</w>\nsteam er</w>\nri zzo</w>\nwild cat\nrat na</w>\nlamin ated</w>\nkin eni</w>\njal ap\nai des</w>\nacknowle dges</w>\n?! ?!?!</w>\n! ðŁİī</w>\nw afc</w>\nmag gio</w>\nha ves</w>\ndar je\nof i</w>\ngr il\nv asi\nbru x\nmo hd</w>\nfake speare</w>\narn old\nr mb</w>\nfor be\nwal leye</w>\nro di\ntherapeu tics</w>\nstrate gi\nob ste\nmu dder</w>\ndownload able</w>\ndd ings</w>\nd ca</w>\nasi angames</w>\ncampe on\nappropri ation</w>\nth century</w>\nram atta</w>\ndra ped</w>\nbul lion</w>\nmu c</w>\none x</w>\nse greg\nophel ia</w>\nbod ily</w>\nâĿ¤ ðŁĺį</w>\nwi zar\nte ased</w>\nade my</w>\nto id</w>\nsur a</w>\nlazar us</w>\nsn ickers</w>\nma se\nlo h\nbow ed</w>\nbibli o\nx change</w>\nhar lan</w>\ngho shal</w>\nflavor ful</w>\nbha gat</w>\nalle z</w>\nwhiche ver</w>\nten stein</w>\ndisc er\norgan iser</w>\nmt g\ndream liner</w>\nt se\nhok kaido</w>\nmo k\nindulg ent</w>\nhick man</w>\nblin ded</w>\nal yn\naaa ah</w>\nsp ool</w>\nlough borough</w>\ninter pret\net v\naristo tle</w>\noptimi zing</w>\navici i</w>\nmadu rai</w>\nju li</w>\nnaw az\nmat chups</w>\nab ide</w>\npaint ing\nw elling</w>\nvel i</w>\noctag on</w>\nin scribed</w>\npo king</w>\nplac er</w>\nlife cycle</w>\nkili g</w>\ng sp</w>\neli ves</w>\ncle ments</w>\nna sheed</w>\nme sut</w>\nincarcer ated</w>\ndist illed</w>\nwal ang</w>\ndelic acy</w>\ndel gado</w>\nche z\nch ita</w>\nad ero</w>\ntu x</w>\npati l</w>\no do\nabh cosmetics</w>\ntv c</w>\np bc</w>\nin accurate</w>\nhardwork paysoff</w>\nball er\nquot ation</w>\nmerchandi sing</w>\nga stri\ndefen ses</w>\ndro gba</w>\nbex hill</w>\nban kno\nwin ona</w>\nsi eg\np gs</w>\nhahah ha</w>\nagu chi</w>\nsu bram\nmirac le\nde sch\nli bre\nba cher</w>\nent ine</w>\nbbcra di\nlou dest</w>\nr ps</w>\npi erc\nfr yer</w>\nstorm trooper</w>\nrafael nadal</w>\npas co</w>\nexhau stion</w>\nepic onetsy</w>\nrc tid</w>\nkel lie</w>\nga ines</w>\nd bz</w>\nsm riti\ns bridge</w>\nlim ited\ncla w\ntechnic al\nbio graphical</w>\nado red</w>\nà¸ °</w>\nexclu de</w>\nac adia</w>\nkey boards</w>\nfur man</w>\nso ca</w>\nsur u</w>\nni ps</w>\nsw aps</w>\nserver less</w>\nrun e</w>\npu ffy</w>\nnorth ampton\nnish ings</w>\nhen der\ncartri dges</w>\ngun shot</w>\nðŁĵ ¹</w>\nfil ament</w>\nrespon dents</w>\npey ton\nmountaine er</w>\nmer ging</w>\nlife span</w>\nintimid ation</w>\np afc</w>\nnl wx</w>\nexpan sive</w>\npur r\nf ck</w>\nca e</w>\nat ti\ntele thon</w>\nso hn</w>\nmend el\nlo pes</w>\ndor i</w>\nun broken</w>\nte red\ntast ings</w>\nin active</w>\ndisin tegr\nt assel</w>\nshare the\npi ano\nis lay</w>\nair space</w>\nz awa</w>\nricci ardo</w>\nming ton\nfresh er</w>\ncur ry\nre vs</w>\npharo ah</w>\nh mv</w>\nexhilar ating</w>\nwh oo</w>\nlin kin</w>\nkri spy</w>\ncompeten cy</w>\nste wards</w>\nne bu\nkat su\nad mins</w>\nbaz ar</w>\nas ar</w>\ngiving back</w>\ns summit</w>\nsong z</w>\nlin us</w>\nraj kumar</w>\nfarm ington</w>\nfanta sia</w>\nðŁĺ´ ðŁĺ´</w>\nso bri\nlis se</w>\nbarry more</w>\npri sm\nblo b</w>\nsen ew\nmono xide</w>\nexp ire</w>\neigh teen</w>\ndi pper</w>\nxi ao</w>\nkil t</w>\nhin ch\nbbc sport</w>\nbam boo\np ter\nex al\nðŁ¦ ĭ\nham lin</w>\nexpe ditions</w>\nstar gazing</w>\nfood security</w>\nwy lie</w>\nul f</w>\nst ingly</w>\non storm</w>\nlo eb</w>\nbro ome</w>\nbn ha</w>\npancre atic</w>\neli ve\n!!!!!!!! !!!</w>\nther apper</w>\northo pedic</w>\navengers endgame</w>\nantit rust</w>\nìļ °</w>\ngo te</w>\nom d</w>\noff side</w>\ngy llen\nwin eries</w>\nwhite water</w>\nad l</w>\nlu pita</w>\nexce eds</w>\nconsi sted</w>\nchew bacca</w>\nash leigh</w>\nnhl jets</w>\nis san\nsh ld</w>\nhay at</w>\ncran berries</w>\nðŁ¤ĺ ðŁı½</w>\nrock the\nspring training</w>\nfall out\ndairy free</w>\nwa j</w>\nun decided</w>\nso wn</w>\nrc n</w>\nnorth wales</w>\nhtt r</w>\nfu mble</w>\nd its</w>\ncomp elled</w>\npopu list</w>\nmin ted</w>\nblan chett</w>\n. ''</w>\npro pulsion</w>\nm illa</w>\nau berg\nher tz</w>\nh ta</w>\nu daipur</w>\nserendip ity</w>\nazte cs</w>\nals ace</w>\nðŁĲ ĳ</w>\nlu n</w>\nsho es\nchar li</w>\ngar za</w>\nðŁĴ Ł\npro biotics</w>\nfox tv</w>\nol is</w>\nmi ff\nloc alized</w>\ndiffu ser</w>\nsi gue</w>\nfun ko\nrend ous</w>\nðŁĴ ĳ</w>\njeky ll</w>\n"
  },
  {
    "path": "configs/sd3/tokenizer/special_tokens_map.json",
    "content": "{\n  \"bos_token\": {\n    \"content\": \"<|startoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": true,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"eos_token\": {\n    \"content\": \"<|endoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": false,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"pad_token\": {\n    \"content\": \"<|endoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": false,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"unk_token\": {\n    \"content\": \"<|endoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": false,\n    \"rstrip\": false,\n    \"single_word\": false\n  }\n}\n"
  },
  {
    "path": "configs/sd3/tokenizer/tokenizer_config.json",
    "content": "{\n  \"add_prefix_space\": false,\n  \"added_tokens_decoder\": {\n    \"49406\": {\n      \"content\": \"<|startoftext|>\",\n      \"lstrip\": false,\n      \"normalized\": true,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"49407\": {\n      \"content\": \"<|endoftext|>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    }\n  },\n  \"bos_token\": \"<|startoftext|>\",\n  \"clean_up_tokenization_spaces\": true,\n  \"do_lower_case\": true,\n  \"eos_token\": \"<|endoftext|>\",\n  \"errors\": \"replace\",\n  \"model_max_length\": 77,\n  \"pad_token\": \"<|endoftext|>\",\n  \"tokenizer_class\": \"CLIPTokenizer\",\n  \"unk_token\": \"<|endoftext|>\"\n}\n"
  },
  {
    "path": "configs/sd3/tokenizer/vocab.json",
    "content": "{\n  \"!\": 0,\n  \"!!\": 1443,\n  \"!!!\": 11194,\n  \"!!!!\": 4003,\n  \"!!!!!!!!\": 11281,\n  \"!!!!!!!!!!!!!!!!\": 30146,\n  \"!!!!!!!!!!!</w>\": 49339,\n  \"!!!!!!!!!!</w>\": 35579,\n  \"!!!!!!!!!</w>\": 28560,\n  \"!!!!!!!!</w>\": 21622,\n  \"!!!!!!!</w>\": 15203,\n  \"!!!!!!</w>\": 9168,\n  \"!!!!!</w>\": 5203,\n  \"!!!!</w>\": 2360,\n  \"!!!\\\"</w>\": 28048,\n  \"!!!)</w>\": 42532,\n  \"!!!</w>\": 995,\n  \"!!\\\"</w>\": 20556,\n  \"!!#</w>\": 34997,\n  \"!!)</w>\": 28352,\n  \"!!</w>\": 748,\n  \"!!@</w>\": 40705,\n  \"!\\\"</w>\": 2947,\n  \"!\\\"@</w>\": 43819,\n  \"!#</w>\": 9670,\n  \"!'</w>\": 13222,\n  \"!),</w>\": 37904,\n  \"!).</w>\": 26225,\n  \"!)</w>\": 4571,\n  \"!*</w>\": 37737,\n  \"!,</w>\": 29325,\n  \"!-</w>\": 43499,\n  \"!...</w>\": 22121,\n  \"!..</w>\": 35475,\n  \"!.</w>\": 22517,\n  \"!:)</w>\": 31671,\n  \"!:</w>\": 17545,\n  \"!</w>\": 256,\n  \"!?!</w>\": 29767,\n  \"!?!?</w>\": 47081,\n  \"!?</w>\": 6004,\n  \"!@</w>\": 15117,\n  \"!]</w>\": 34466,\n  \"!âĢ¦</w>\": 35068,\n  \"!âĿ¤ï¸ı</w>\": 32559,\n  \"!ðŁİī</w>\": 49085,\n  \"!ðŁĺĬ</w>\": 43434,\n  \"!ðŁĺį</w>\": 36438,\n  \"\\\"\": 1,\n  \"\\\"!</w>\": 10377,\n  \"\\\"\\\"\": 41530,\n  \"\\\"\\\"\\\"</w>\": 25539,\n  \"\\\"\\\"</w>\": 8575,\n  \"\\\"#</w>\": 8345,\n  \"\\\"'</w>\": 31065,\n  \"\\\"(</w>\": 32741,\n  \"\\\")</w>\": 13112,\n  \"\\\",</w>\": 4332,\n  \"\\\"-</w>\": 9375,\n  \"\\\"....</w>\": 37785,\n  \"\\\"...</w>\": 9049,\n  \"\\\"..</w>\": 25403,\n  \"\\\".</w>\": 2811,\n  \"\\\"/</w>\": 39486,\n  \"\\\":</w>\": 7811,\n  \"\\\";</w>\": 37549,\n  \"\\\"</w>\": 257,\n  \"\\\"?</w>\": 11727,\n  \"\\\"@</w>\": 1512,\n  \"\\\"@_</w>\": 20236,\n  \"\\\"[</w>\": 36930,\n  \"\\\"âĢ¦</w>\": 33993,\n  \"\\\"âĢĶ</w>\": 41151,\n  \"#\": 2,\n  \"##</w>\": 15483,\n  \"#...</w>\": 31491,\n  \"#:</w>\": 30144,\n  \"#</w>\": 258,\n  \"#@</w>\": 35062,\n  \"#âĢ¦</w>\": 12834,\n  \"#âĢİ</w>\": 34262,\n  \"$\": 3,\n  \"$$\": 24233,\n  \"$$$</w>\": 31859,\n  \"$$</w>\": 14929,\n  \"$)</w>\": 39460,\n  \"$.</w>\": 34682,\n  \"$</w>\": 259,\n  \"%\": 4,\n  \"%!</w>\": 35070,\n  \"%),</w>\": 37819,\n  \"%)</w>\": 16063,\n  \"%,</w>\": 14505,\n  \"%-</w>\": 48784,\n  \"%.</w>\": 12475,\n  \"%;</w>\": 33379,\n  \"%</w>\": 260,\n  \"&\": 5,\n  \"&&</w>\": 27791,\n  \"&</w>\": 261,\n  \"'\": 6,\n  \"'!</w>\": 13781,\n  \"'\\\"</w>\": 19479,\n  \"'#</w>\": 15319,\n  \"''\": 46594,\n  \"''</w>\": 8445,\n  \"')</w>\": 19175,\n  \"',</w>\": 5662,\n  \"'-</w>\": 26152,\n  \"'...</w>\": 20474,\n  \"'.</w>\": 4645,\n  \"':</w>\": 7182,\n  \"';</w>\": 44517,\n  \"'</w>\": 262,\n  \"'?</w>\": 17242,\n  \"'@</w>\": 26397,\n  \"'d</w>\": 1896,\n  \"'ll</w>\": 1342,\n  \"'m</w>\": 880,\n  \"'re</w>\": 982,\n  \"'s</w>\": 568,\n  \"'t</w>\": 713,\n  \"'ve</w>\": 1200,\n  \"'âĢ¦</w>\": 42120,\n  \"(\": 7,\n  \"(!)</w>\": 30253,\n  \"(\\\"</w>\": 18741,\n  \"(#</w>\": 6229,\n  \"($)</w>\": 46597,\n  \"($</w>\": 15186,\n  \"(&</w>\": 15042,\n  \"('</w>\": 18235,\n  \"((\": 22944,\n  \"(((</w>\": 33287,\n  \"((</w>\": 13796,\n  \"().</w>\": 41737,\n  \"()</w>\": 8475,\n  \"(*\": 48004,\n  \"(*</w>\": 39575,\n  \"(+</w>\": 12903,\n  \"(-</w>\": 20228,\n  \"(...</w>\": 45159,\n  \"(.</w>\": 43055,\n  \"(:</w>\": 8528,\n  \"(;</w>\": 23983,\n  \"(</w>\": 263,\n  \"(?)</w>\": 22885,\n  \"(@</w>\": 2181,\n  \"(Â£</w>\": 33987,\n  \"(Â©</w>\": 44886,\n  \"(ðŁĵ·:</w>\": 34610,\n  \"(ðŁĵ·</w>\": 37999,\n  \"(ðŁĵ¸:</w>\": 44422,\n  \"(ðŁĵ¸</w>\": 45204,\n  \")\": 8,\n  \")!!</w>\": 47518,\n  \")!</w>\": 7805,\n  \")\\\"</w>\": 13046,\n  \")#</w>\": 39981,\n  \")'</w>\": 23613,\n  \")(</w>\": 27956,\n  \"))\": 13720,\n  \"))))\": 42911,\n  \"))))</w>\": 34181,\n  \")))</w>\": 18305,\n  \"))</w>\": 5167,\n  \"),</w>\": 2361,\n  \")-</w>\": 19034,\n  \")...</w>\": 15274,\n  \")..</w>\": 41822,\n  \").</w>\": 1818,\n  \")/</w>\": 26616,\n  \"):</w>\": 4143,\n  \");</w>\": 19686,\n  \")</w>\": 264,\n  \")?</w>\": 18765,\n  \")@</w>\": 41928,\n  \")_/\": 45028,\n  \")_/Â¯</w>\": 45781,\n  \")âĢ¦</w>\": 41844,\n  \"*\": 9,\n  \"*)</w>\": 30956,\n  \"**\": 9825,\n  \"****\": 21326,\n  \"********\": 42974,\n  \"*****</w>\": 43571,\n  \"****</w>\": 25167,\n  \"***</w>\": 7829,\n  \"**</w>\": 4441,\n  \"*,</w>\": 41895,\n  \"*-*</w>\": 23568,\n  \"*.</w>\": 31304,\n  \"*</w>\": 265,\n  \"*_*</w>\": 44535,\n  \"+\": 10,\n  \"+)</w>\": 34810,\n  \"++\": 47298,\n  \"+++</w>\": 35986,\n  \"++</w>\": 19056,\n  \"+,</w>\": 35885,\n  \"+.</w>\": 25238,\n  \"+/-</w>\": 47614,\n  \"+</w>\": 266,\n  \",\": 11,\n  \",\\\"</w>\": 3823,\n  \",#</w>\": 11215,\n  \",&</w>\": 26905,\n  \",'</w>\": 10599,\n  \",)</w>\": 44493,\n  \",,\": 21340,\n  \",,,,</w>\": 33225,\n  \",,,</w>\": 14811,\n  \",,</w>\": 8844,\n  \",-</w>\": 29821,\n  \",...</w>\": 20365,\n  \",.</w>\": 41277,\n  \",</w>\": 267,\n  \",@</w>\": 13975,\n  \",âĢ¦</w>\": 14601,\n  \"-\": 12,\n  \"-\\\"</w>\": 18646,\n  \"-#</w>\": 10151,\n  \"-$</w>\": 24946,\n  \"-'</w>\": 28010,\n  \"-(</w>\": 33345,\n  \"-)</w>\": 3535,\n  \"-*</w>\": 21527,\n  \"--\": 2154,\n  \"----\": 5753,\n  \"--------\": 11772,\n  \"----------------\": 23122,\n  \"----</w>\": 30164,\n  \"----></w>\": 35999,\n  \"---</w>\": 11079,\n  \"---></w>\": 14518,\n  \"--</w>\": 2432,\n  \"--></w>\": 6422,\n  \"-->></w>\": 47252,\n  \"-.-</w>\": 32765,\n  \"-...</w>\": 43147,\n  \"-.</w>\": 44040,\n  \"-</w>\": 268,\n  \"-></w>\": 5081,\n  \"-@</w>\": 10087,\n  \"-_-</w>\": 27227,\n  \"-__\": 42718,\n  \"-âĢ¦</w>\": 30047,\n  \".\": 13,\n  \".!!</w>\": 37805,\n  \".!</w>\": 14030,\n  \".\\\"\": 18650,\n  \".\\\"-</w>\": 21234,\n  \".\\\"</w>\": 1081,\n  \".\\\"âĢĶ</w>\": 48703,\n  \".#</w>\": 5014,\n  \".'\\\"</w>\": 41558,\n  \".''</w>\": 49379,\n  \".'</w>\": 5938,\n  \".(</w>\": 22294,\n  \".)</w>\": 5376,\n  \".*</w>\": 26145,\n  \".,</w>\": 5276,\n  \".-</w>\": 12481,\n  \"..\": 608,\n  \"..!!</w>\": 23707,\n  \"..!</w>\": 17994,\n  \"..\\\"</w>\": 15229,\n  \"..#</w>\": 15735,\n  \"..,</w>\": 47143,\n  \"...\": 3002,\n  \"...!!!</w>\": 38351,\n  \"...!!</w>\": 39915,\n  \"...!</w>\": 16860,\n  \"...\\\"</w>\": 5240,\n  \"...#</w>\": 8195,\n  \"...&</w>\": 44979,\n  \"...'</w>\": 23167,\n  \"...(</w>\": 37981,\n  \"...)</w>\": 14040,\n  \"...,</w>\": 42717,\n  \"....\": 2386,\n  \"....\\\"</w>\": 26689,\n  \"....#</w>\": 20346,\n  \".....\": 34151,\n  \".....#</w>\": 38867,\n  \"........\": 8246,\n  \"................\": 24855,\n  \"............</w>\": 42965,\n  \"...........</w>\": 35008,\n  \"..........</w>\": 25526,\n  \".........</w>\": 19881,\n  \"........</w>\": 14720,\n  \".......</w>\": 9917,\n  \"......</w>\": 5590,\n  \".....</w>\": 3104,\n  \"....</w>\": 1390,\n  \"....@</w>\": 29790,\n  \"...:</w>\": 34570,\n  \"...</w>\": 678,\n  \"...?</w>\": 16388,\n  \"...@</w>\": 12672,\n  \"..</w>\": 852,\n  \"..?</w>\": 23875,\n  \"..@</w>\": 21124,\n  \"./</w>\": 31975,\n  \".:</w>\": 15811,\n  \".;</w>\": 47596,\n  \".</w>\": 269,\n  \".<</w>\": 29442,\n  \".?</w>\": 29294,\n  \".@</w>\": 1230,\n  \".]</w>\": 33511,\n  \".~</w>\": 42651,\n  \".âĢ¦</w>\": 18047,\n  \".âĿ¤ï¸ı</w>\": 39085,\n  \".âłĢ</w>\": 30097,\n  \".ðŁĺĤ</w>\": 46580,\n  \"/\": 14,\n  \"/#</w>\": 13217,\n  \"/$</w>\": 36266,\n  \"/-</w>\": 19811,\n  \"/.</w>\": 39382,\n  \"//\": 15348,\n  \"////\": 46271,\n  \"///</w>\": 22734,\n  \"//</w>\": 3502,\n  \"/</w>\": 270,\n  \"/@</w>\": 8216,\n  \"0\": 15,\n  \"0</w>\": 271,\n  \"1\": 16,\n  \"1</w>\": 272,\n  \"2\": 17,\n  \"2</w>\": 273,\n  \"3\": 18,\n  \"3</w>\": 274,\n  \"4\": 19,\n  \"4</w>\": 275,\n  \"5\": 20,\n  \"5</w>\": 276,\n  \"6\": 21,\n  \"6</w>\": 277,\n  \"7\": 22,\n  \"7</w>\": 278,\n  \"8\": 23,\n  \"8</w>\": 279,\n  \"9\": 24,\n  \"9</w>\": 280,\n  \":\": 25,\n  \":\\\"\": 29498,\n  \":\\\")</w>\": 46432,\n  \":\\\"</w>\": 12089,\n  \":#</w>\": 26625,\n  \":$</w>\": 33769,\n  \":'\": 8017,\n  \":'(</w>\": 21250,\n  \":')</w>\": 10701,\n  \":'</w>\": 23851,\n  \":((</w>\": 42496,\n  \":(</w>\": 5965,\n  \":)\": 11070,\n  \":))))</w>\": 42339,\n  \":)))</w>\": 21840,\n  \":))</w>\": 10164,\n  \":).</w>\": 39010,\n  \":)</w>\": 1408,\n  \":*</w>\": 12617,\n  \":-\": 13021,\n  \":-(</w>\": 25137,\n  \":-)</w>\": 4223,\n  \":-</w>\": 10323,\n  \":...</w>\": 42140,\n  \"://</w>\": 12441,\n  \":/</w>\": 13604,\n  \"::\": 33077,\n  \":::</w>\": 43818,\n  \"::</w>\": 9788,\n  \":</w>\": 281,\n  \":></w>\": 39677,\n  \":@</w>\": 14339,\n  \":]</w>\": 43486,\n  \":|</w>\": 45986,\n  \":âĢ¦</w>\": 22365,\n  \";\": 26,\n  \";))</w>\": 41873,\n  \";)</w>\": 3661,\n  \";-\": 35657,\n  \";-)</w>\": 10475,\n  \";;\": 34824,\n  \";;</w>\": 24492,\n  \";</w>\": 282,\n  \"<\": 27,\n  \"<-</w>\": 47280,\n  \"</</w>\": 34308,\n  \"<<\": 24588,\n  \"<</w>\": 283,\n  \"<<</w>\": 16482,\n  \"<<<</w>\": 35054,\n  \"<|endoftext|>\": 49407,\n  \"<|startoftext|>\": 49406,\n  \"=\": 28,\n  \"=))</w>\": 39587,\n  \"=)</w>\": 17840,\n  \"=</w>\": 284,\n  \"==\": 11748,\n  \"====\": 21734,\n  \"========\": 38952,\n  \"==></w>\": 29688,\n  \"=></w>\": 9714,\n  \">\": 29,\n  \">.<</w>\": 38507,\n  \">:</w>\": 36196,\n  \"></w>\": 285,\n  \"><</w>\": 28015,\n  \">>\": 8270,\n  \">></w>\": 2988,\n  \">>></w>\": 6395,\n  \">>>>\": 18461,\n  \">>>></w>\": 18435,\n  \">>>>></w>\": 32972,\n  \">>>>>></w>\": 48947,\n  \">>>>>>>>\": 41947,\n  \">_\": 44144,\n  \"?\": 30,\n  \"?!\": 9785,\n  \"?!!</w>\": 25342,\n  \"?!\\\"</w>\": 29315,\n  \"?!</w>\": 2835,\n  \"?!?!</w>\": 16349,\n  \"?!?!?!</w>\": 49084,\n  \"?!?!?</w>\": 37619,\n  \"?!?</w>\": 11395,\n  \"?\\\"</w>\": 3283,\n  \"?#</w>\": 24018,\n  \"?'</w>\": 13610,\n  \"?)</w>\": 9626,\n  \"?,</w>\": 41628,\n  \"?...</w>\": 22641,\n  \"?..</w>\": 43905,\n  \"?.</w>\": 41251,\n  \"?:</w>\": 21067,\n  \"?</w>\": 286,\n  \"??\": 5195,\n  \"??!!</w>\": 43219,\n  \"??!</w>\": 37341,\n  \"??\\\"</w>\": 44996,\n  \"??</w>\": 2197,\n  \"???\": 40017,\n  \"???</w>\": 3824,\n  \"????\": 15936,\n  \"????</w>\": 10362,\n  \"?????</w>\": 21370,\n  \"??????</w>\": 34589,\n  \"????????\": 45091,\n  \"?@</w>\": 29258,\n  \"?ðŁ¤Ķ</w>\": 47928,\n  \"@\": 31,\n  \"@#</w>\": 39397,\n  \"@.</w>\": 43730,\n  \"@/</w>\": 28639,\n  \"@</w>\": 287,\n  \"@@</w>\": 30314,\n  \"@_</w>\": 2692,\n  \"@__</w>\": 17042,\n  \"@___</w>\": 48308,\n  \"A\": 32,\n  \"A</w>\": 288,\n  \"B\": 33,\n  \"B</w>\": 289,\n  \"C\": 34,\n  \"C</w>\": 290,\n  \"D\": 35,\n  \"D</w>\": 291,\n  \"E\": 36,\n  \"E</w>\": 292,\n  \"F\": 37,\n  \"F</w>\": 293,\n  \"G\": 38,\n  \"G</w>\": 294,\n  \"H\": 39,\n  \"H</w>\": 295,\n  \"I\": 40,\n  \"I</w>\": 296,\n  \"J\": 41,\n  \"J</w>\": 297,\n  \"K\": 42,\n  \"K</w>\": 298,\n  \"L\": 43,\n  \"L</w>\": 299,\n  \"M\": 44,\n  \"M</w>\": 300,\n  \"N\": 45,\n  \"N</w>\": 301,\n  \"O\": 46,\n  \"O</w>\": 302,\n  \"P\": 47,\n  \"P</w>\": 303,\n  \"Q\": 48,\n  \"Q</w>\": 304,\n  \"R\": 49,\n  \"R</w>\": 305,\n  \"S\": 50,\n  \"S</w>\": 306,\n  \"T\": 51,\n  \"T</w>\": 307,\n  \"U\": 52,\n  \"U</w>\": 308,\n  \"V\": 53,\n  \"V</w>\": 309,\n  \"W\": 54,\n  \"W</w>\": 310,\n  \"X\": 55,\n  \"X</w>\": 311,\n  \"Y\": 56,\n  \"Y</w>\": 312,\n  \"Z\": 57,\n  \"Z</w>\": 313,\n  \"[\": 58,\n  \"[#</w>\": 11115,\n  \"[...\": 39975,\n  \"[...]</w>\": 43790,\n  \"[</w>\": 314,\n  \"[@</w>\": 15148,\n  \"[]</w>\": 22240,\n  \"\\\\\": 59,\n  \"\\\\'</w>\": 41239,\n  \"\\\\</w>\": 315,\n  \"]\": 60,\n  \"]\\\"</w>\": 39434,\n  \"],</w>\": 34067,\n  \"].</w>\": 26262,\n  \"]:</w>\": 21641,\n  \"]</w>\": 316,\n  \"][#</w>\": 39009,\n  \"][</w>\": 29329,\n  \"^\": 61,\n  \"^)</w>\": 30720,\n  \"^-\": 43516,\n  \"^.\": 31552,\n  \"^.^</w>\": 35791,\n  \"^</w>\": 317,\n  \"^^\": 34454,\n  \"^^</w>\": 9064,\n  \"^_\": 14423,\n  \"^_^</w>\": 15995,\n  \"_\": 62,\n  \"_'</w>\": 44701,\n  \"_(</w>\": 36951,\n  \"_)</w>\": 37393,\n  \"_*</w>\": 36237,\n  \"_,</w>\": 31417,\n  \"_-</w>\": 23193,\n  \"_.</w>\": 26841,\n  \"_/\": 37647,\n  \"_:</w>\": 13109,\n  \"_</w>\": 318,\n  \"__\": 2355,\n  \"__:</w>\": 47043,\n  \"__</w>\": 3838,\n  \"___\": 43812,\n  \"___</w>\": 13530,\n  \"____\": 4727,\n  \"____</w>\": 25350,\n  \"_____</w>\": 38803,\n  \"________\": 9549,\n  \"________________\": 20115,\n  \"`\": 63,\n  \"`</w>\": 319,\n  \"a\": 64,\n  \"a</w>\": 320,\n  \"aa\": 1821,\n  \"aa</w>\": 3894,\n  \"aaa\": 14376,\n  \"aaa</w>\": 9583,\n  \"aaaa\": 6727,\n  \"aaaa</w>\": 19336,\n  \"aaaaa</w>\": 31095,\n  \"aaaaaa</w>\": 44413,\n  \"aaaaaaaa\": 23126,\n  \"aaaah</w>\": 49151,\n  \"aaah</w>\": 35856,\n  \"aaay</w>\": 37846,\n  \"aab</w>\": 34108,\n  \"aac\": 23251,\n  \"aac</w>\": 11346,\n  \"aad\": 20464,\n  \"aad</w>\": 35894,\n  \"aaf\": 37638,\n  \"aaf</w>\": 31534,\n  \"aag\": 42174,\n  \"aah</w>\": 28990,\n  \"aaj\": 28727,\n  \"aaj</w>\": 43411,\n  \"aak\": 37739,\n  \"aal\": 22268,\n  \"aal</w>\": 30208,\n  \"aali\": 27896,\n  \"aaliyah</w>\": 46577,\n  \"aam\": 12943,\n  \"aam</w>\": 22775,\n  \"aama\": 45018,\n  \"aamaadmi\": 45563,\n  \"aamaadmiparty</w>\": 46406,\n  \"aamir</w>\": 27456,\n  \"aan\": 20705,\n  \"aan</w>\": 13426,\n  \"aand\": 38054,\n  \"aap\": 12023,\n  \"aap</w>\": 12052,\n  \"aapl</w>\": 34516,\n  \"aar\": 4695,\n  \"aar</w>\": 13234,\n  \"aard\": 46932,\n  \"aaron\": 13948,\n  \"aaron</w>\": 7709,\n  \"aas\": 28542,\n  \"aas</w>\": 32205,\n  \"aat\": 34018,\n  \"aat</w>\": 35004,\n  \"aau</w>\": 35426,\n  \"aay\": 38281,\n  \"aay</w>\": 40249,\n  \"aaz</w>\": 26770,\n  \"ab\": 596,\n  \"ab</w>\": 3937,\n  \"aba\": 44204,\n  \"aba</w>\": 11102,\n  \"abad\": 33444,\n  \"abad</w>\": 7155,\n  \"aban\": 41662,\n  \"aband\": 8595,\n  \"abandon</w>\": 28805,\n  \"abandoned</w>\": 11227,\n  \"abar\": 17860,\n  \"abar</w>\": 39805,\n  \"abas\": 25402,\n  \"abay</w>\": 43542,\n  \"abb\": 38954,\n  \"abb</w>\": 38297,\n  \"abba</w>\": 30870,\n  \"abbas\": 37494,\n  \"abbas</w>\": 24412,\n  \"abbey\": 31927,\n  \"abbey</w>\": 10132,\n  \"abbie</w>\": 39949,\n  \"abbo\": 13536,\n  \"abbot</w>\": 44046,\n  \"abbott\": 43737,\n  \"abbott</w>\": 15649,\n  \"abbrevi\": 44843,\n  \"abby\": 30586,\n  \"abby</w>\": 14694,\n  \"abc\": 13137,\n  \"abc</w>\": 5334,\n  \"abcnews</w>\": 31566,\n  \"abd</w>\": 44093,\n  \"abdel\": 46511,\n  \"abdomin\": 35335,\n  \"abdominal</w>\": 39328,\n  \"abdu\": 13361,\n  \"abduc\": 17884,\n  \"abducted</w>\": 31520,\n  \"abduction</w>\": 36984,\n  \"abdul\": 14227,\n  \"abdul</w>\": 15593,\n  \"abdullah</w>\": 21317,\n  \"abe\": 15856,\n  \"abe</w>\": 12734,\n  \"abee</w>\": 36037,\n  \"abel\": 31938,\n  \"abel</w>\": 25318,\n  \"abella</w>\": 46156,\n  \"aben\": 40865,\n  \"aber\": 7828,\n  \"aber</w>\": 41867,\n  \"aberdeen\": 30539,\n  \"aberdeen</w>\": 17236,\n  \"abh\": 27484,\n  \"abh</w>\": 33649,\n  \"abhcosmetics</w>\": 49189,\n  \"abhi\": 18113,\n  \"abhin\": 44045,\n  \"abhishek</w>\": 44502,\n  \"abi\": 16867,\n  \"abi</w>\": 14161,\n  \"abia</w>\": 48604,\n  \"abide</w>\": 49163,\n  \"abig\": 20863,\n  \"abigail</w>\": 25686,\n  \"abil\": 21135,\n  \"abilities</w>\": 8724,\n  \"ability\": 35146,\n  \"ability</w>\": 3024,\n  \"abit</w>\": 48668,\n  \"ablanc\": 33716,\n  \"able\": 10102,\n  \"able</w>\": 863,\n  \"abled</w>\": 10655,\n  \"ableg</w>\": 24055,\n  \"ables</w>\": 8486,\n  \"ableton</w>\": 47169,\n  \"ably</w>\": 6748,\n  \"abnormal</w>\": 40934,\n  \"abo\": 2889,\n  \"abo</w>\": 21861,\n  \"aboard</w>\": 11661,\n  \"abol\": 31768,\n  \"abolic</w>\": 46827,\n  \"abolish</w>\": 47403,\n  \"aboo</w>\": 42433,\n  \"abor\": 8416,\n  \"aboriginal</w>\": 20422,\n  \"abortion</w>\": 12336,\n  \"abortions</w>\": 43218,\n  \"aboss</w>\": 46401,\n  \"abou\": 36455,\n  \"abou</w>\": 44053,\n  \"abound</w>\": 41037,\n  \"abour</w>\": 46637,\n  \"about\": 20204,\n  \"about</w>\": 781,\n  \"abouts</w>\": 36339,\n  \"above\": 35019,\n  \"above</w>\": 4348,\n  \"aboy</w>\": 37077,\n  \"abpoli</w>\": 44779,\n  \"abq</w>\": 38767,\n  \"abr\": 44932,\n  \"abra\": 10694,\n  \"abra</w>\": 35087,\n  \"abraham\": 40623,\n  \"abraham</w>\": 15869,\n  \"abram\": 33255,\n  \"abrams</w>\": 29852,\n  \"abre\": 22472,\n  \"abre</w>\": 46756,\n  \"abri\": 28605,\n  \"abridged</w>\": 45333,\n  \"abroad</w>\": 11253,\n  \"abru\": 46295,\n  \"abs\": 18431,\n  \"abs</w>\": 11109,\n  \"absc\": 25389,\n  \"abscbn\": 44260,\n  \"abscbn</w>\": 45810,\n  \"absen\": 32453,\n  \"absence</w>\": 19240,\n  \"absent</w>\": 30363,\n  \"absol\": 4624,\n  \"absolu\": 7055,\n  \"absolut\": 4666,\n  \"absolute</w>\": 7501,\n  \"absolutely</w>\": 4703,\n  \"absor\": 14303,\n  \"absorb</w>\": 35806,\n  \"absorbed</w>\": 45059,\n  \"absorbing</w>\": 46412,\n  \"absorption</w>\": 42210,\n  \"abstr\": 7530,\n  \"abstract\": 23885,\n  \"abstract</w>\": 10197,\n  \"abstractart</w>\": 31170,\n  \"abstraction</w>\": 47696,\n  \"abstracts</w>\": 40065,\n  \"absur\": 21639,\n  \"absurd</w>\": 29757,\n  \"abt</w>\": 9850,\n  \"abu\": 9167,\n  \"abu</w>\": 11787,\n  \"abud\": 20180,\n  \"abudha\": 21450,\n  \"abudhabi</w>\": 25256,\n  \"abuja</w>\": 23371,\n  \"abun\": 20544,\n  \"abundance</w>\": 23236,\n  \"abundant</w>\": 31611,\n  \"abur\": 23377,\n  \"aburger</w>\": 46660,\n  \"abuse</w>\": 7678,\n  \"abused</w>\": 23855,\n  \"abuses</w>\": 37132,\n  \"abusing</w>\": 36558,\n  \"abusive</w>\": 26858,\n  \"abv</w>\": 34172,\n  \"aby\": 16342,\n  \"aby</w>\": 31378,\n  \"abyss</w>\": 33632,\n  \"abz</w>\": 42292,\n  \"ac\": 546,\n  \"ac</w>\": 2816,\n  \"aca</w>\": 9213,\n  \"acab\": 41388,\n  \"acacia</w>\": 44047,\n  \"acad</w>\": 32537,\n  \"acade\": 2892,\n  \"academia</w>\": 22662,\n  \"academic\": 31178,\n  \"academic</w>\": 7935,\n  \"academics</w>\": 26417,\n  \"academies</w>\": 42569,\n  \"academy\": 29968,\n  \"academy</w>\": 4041,\n  \"acadi\": 41455,\n  \"acadia</w>\": 49236,\n  \"acam\": 26172,\n  \"acan\": 42227,\n  \"acan</w>\": 26318,\n  \"acap\": 32357,\n  \"acar\": 22232,\n  \"acare</w>\": 16961,\n  \"acc\": 26805,\n  \"acc</w>\": 9318,\n  \"acca</w>\": 30883,\n  \"acce\": 8564,\n  \"acceler\": 10161,\n  \"accelerate</w>\": 23619,\n  \"accelerated</w>\": 38513,\n  \"accelerating</w>\": 41821,\n  \"acceleration</w>\": 39387,\n  \"accelerator</w>\": 25261,\n  \"accent\": 28110,\n  \"accent</w>\": 18931,\n  \"accents</w>\": 31738,\n  \"accenture</w>\": 41853,\n  \"accep\": 4616,\n  \"accept\": 16447,\n  \"accept</w>\": 9338,\n  \"acceptable</w>\": 14209,\n  \"acceptance</w>\": 17090,\n  \"accepted</w>\": 9159,\n  \"accepting</w>\": 12855,\n  \"accepts</w>\": 22338,\n  \"access\": 7596,\n  \"access</w>\": 3822,\n  \"accessi\": 10787,\n  \"accessibility</w>\": 23407,\n  \"accessible</w>\": 13977,\n  \"accessing</w>\": 46339,\n  \"accessories</w>\": 10220,\n  \"accessory</w>\": 20417,\n  \"acci\": 4263,\n  \"acci</w>\": 33943,\n  \"accident</w>\": 6608,\n  \"accidental</w>\": 24895,\n  \"accidentally</w>\": 11061,\n  \"accidents</w>\": 22072,\n  \"acclaimed</w>\": 21172,\n  \"acco</w>\": 44730,\n  \"accol\": 33858,\n  \"accolades</w>\": 46731,\n  \"accom\": 23658,\n  \"accommo\": 34495,\n  \"accommod\": 14386,\n  \"accommodate</w>\": 34708,\n  \"accommodation</w>\": 18066,\n  \"accommodations</w>\": 45536,\n  \"accomp\": 24985,\n  \"accompan\": 14746,\n  \"accompanied</w>\": 20715,\n  \"accompany</w>\": 34142,\n  \"accompanying</w>\": 38179,\n  \"accompli\": 10205,\n  \"accomplish</w>\": 25542,\n  \"accomplished</w>\": 16462,\n  \"accomplishment</w>\": 26100,\n  \"accomplishments</w>\": 24965,\n  \"accor\": 4182,\n  \"accord\": 34293,\n  \"accord</w>\": 28513,\n  \"according</w>\": 4717,\n  \"accordingly</w>\": 35535,\n  \"accordion</w>\": 48760,\n  \"accoun\": 3081,\n  \"account\": 18424,\n  \"account</w>\": 4684,\n  \"accountability</w>\": 19377,\n  \"accountable</w>\": 24216,\n  \"accountant</w>\": 31026,\n  \"accountants</w>\": 37222,\n  \"accounted</w>\": 43951,\n  \"accounting</w>\": 14805,\n  \"accounts</w>\": 9974,\n  \"accra</w>\": 31900,\n  \"accred\": 17451,\n  \"accreditation</w>\": 27015,\n  \"accredited</w>\": 27647,\n  \"acct</w>\": 45569,\n  \"accu\": 5618,\n  \"accumul\": 19275,\n  \"accumulation</w>\": 37112,\n  \"accur\": 6551,\n  \"accuracy</w>\": 18423,\n  \"accurate</w>\": 8858,\n  \"accurately</w>\": 24206,\n  \"accusations</w>\": 33615,\n  \"accuse</w>\": 39414,\n  \"accused</w>\": 9434,\n  \"accuses</w>\": 27496,\n  \"accusing</w>\": 41474,\n  \"acdc</w>\": 45067,\n  \"ace\": 2675,\n  \"ace</w>\": 804,\n  \"acea</w>\": 35219,\n  \"aceae</w>\": 38153,\n  \"acele\": 40868,\n  \"aceous</w>\": 33610,\n  \"acer\": 37990,\n  \"acer</w>\": 25809,\n  \"aces</w>\": 5725,\n  \"acet\": 28735,\n  \"acf</w>\": 38389,\n  \"ach\": 972,\n  \"ach</w>\": 987,\n  \"acha</w>\": 22686,\n  \"acharya</w>\": 45780,\n  \"achat</w>\": 32706,\n  \"ache\": 27771,\n  \"ache</w>\": 7214,\n  \"ached</w>\": 17048,\n  \"acher\": 38442,\n  \"acher</w>\": 17936,\n  \"achers</w>\": 25051,\n  \"aches</w>\": 14823,\n  \"achi\": 3264,\n  \"achi</w>\": 9087,\n  \"achiev\": 8160,\n  \"achieve\": 14798,\n  \"achieve</w>\": 8175,\n  \"achieved</w>\": 12359,\n  \"achievement</w>\": 8245,\n  \"achievements</w>\": 16114,\n  \"achiever</w>\": 46286,\n  \"achievers</w>\": 44544,\n  \"achieves</w>\": 40123,\n  \"achieving</w>\": 16120,\n  \"achilles</w>\": 33327,\n  \"achim</w>\": 42335,\n  \"aching</w>\": 12864,\n  \"acho</w>\": 33130,\n  \"achs</w>\": 41195,\n  \"aci\": 4359,\n  \"aci</w>\": 34100,\n  \"acia</w>\": 30163,\n  \"acial</w>\": 32422,\n  \"acid\": 35474,\n  \"acid</w>\": 10085,\n  \"acidity</w>\": 48800,\n  \"acids</w>\": 27751,\n  \"acies</w>\": 20162,\n  \"acin\": 39442,\n  \"acing</w>\": 9442,\n  \"acio</w>\": 26202,\n  \"acion\": 44965,\n  \"acion</w>\": 24968,\n  \"acional</w>\": 26435,\n  \"aciones</w>\": 35832,\n  \"acious</w>\": 16020,\n  \"acity</w>\": 7511,\n  \"aciÃ³n</w>\": 38175,\n  \"ack\": 877,\n  \"ack</w>\": 725,\n  \"acked</w>\": 5698,\n  \"acker\": 31201,\n  \"acker</w>\": 7940,\n  \"ackeray</w>\": 41843,\n  \"acki</w>\": 42857,\n  \"acking</w>\": 5515,\n  \"ackles</w>\": 28503,\n  \"acknow\": 13563,\n  \"acknowle\": 18100,\n  \"acknowledge</w>\": 25209,\n  \"acknowledged</w>\": 35913,\n  \"acknowledges</w>\": 49083,\n  \"acknowledging</w>\": 45645,\n  \"acks</w>\": 3858,\n  \"acl\": 47593,\n  \"acl</w>\": 23073,\n  \"acle</w>\": 6504,\n  \"acles</w>\": 34164,\n  \"aclu</w>\": 37354,\n  \"acm</w>\": 39317,\n  \"acmilan</w>\": 36500,\n  \"acne</w>\": 24195,\n  \"aco\": 9463,\n  \"aco</w>\": 8800,\n  \"acol\": 17431,\n  \"acollege</w>\": 43468,\n  \"acom\": 17224,\n  \"acom</w>\": 22342,\n  \"acon\": 11621,\n  \"acon</w>\": 11571,\n  \"aconf</w>\": 38851,\n  \"acons</w>\": 31599,\n  \"acor\": 22076,\n  \"acorn</w>\": 37537,\n  \"acos</w>\": 39943,\n  \"acosta</w>\": 31994,\n  \"acou\": 8794,\n  \"acoun\": 31295,\n  \"acounty</w>\": 45449,\n  \"acoustic</w>\": 10616,\n  \"acoustics</w>\": 43873,\n  \"acp</w>\": 19627,\n  \"acqu\": 7946,\n  \"acquainted</w>\": 40713,\n  \"acqui\": 12194,\n  \"acquire</w>\": 21576,\n  \"acquired</w>\": 15932,\n  \"acquires</w>\": 27376,\n  \"acquiring</w>\": 42785,\n  \"acquis\": 14207,\n  \"acquisition</w>\": 16543,\n  \"acquisitions</w>\": 39649,\n  \"acr</w>\": 43648,\n  \"acre\": 26749,\n  \"acre</w>\": 9493,\n  \"acres</w>\": 11630,\n  \"acro\": 21060,\n  \"acrob\": 40891,\n  \"acron\": 37770,\n  \"across</w>\": 2500,\n  \"acrosse</w>\": 40979,\n  \"acruz</w>\": 40455,\n  \"acry\": 10440,\n  \"acrylic</w>\": 12252,\n  \"acs</w>\": 11782,\n  \"act\": 10305,\n  \"act</w>\": 1393,\n  \"acted</w>\": 10971,\n  \"acti\": 4786,\n  \"acting</w>\": 6319,\n  \"action\": 12493,\n  \"action</w>\": 1816,\n  \"actions</w>\": 6271,\n  \"activ\": 3430,\n  \"activate</w>\": 26737,\n  \"activated</w>\": 22249,\n  \"activation</w>\": 26769,\n  \"active\": 19009,\n  \"active</w>\": 4046,\n  \"actively</w>\": 18645,\n  \"activi\": 7230,\n  \"activism</w>\": 20117,\n  \"activist</w>\": 10850,\n  \"activists</w>\": 12649,\n  \"activities</w>\": 6514,\n  \"activity</w>\": 6206,\n  \"actment</w>\": 44807,\n  \"acton\": 36167,\n  \"acton</w>\": 36697,\n  \"actonclimate</w>\": 43797,\n  \"actor\": 12181,\n  \"actor</w>\": 4035,\n  \"actors</w>\": 9255,\n  \"actorslife</w>\": 25117,\n  \"actorvijay</w>\": 34033,\n  \"actress</w>\": 5805,\n  \"actresses</w>\": 33639,\n  \"acts</w>\": 6816,\n  \"actu\": 2375,\n  \"actual</w>\": 7488,\n  \"actually</w>\": 2955,\n  \"acu\": 9204,\n  \"acu</w>\": 48475,\n  \"aculture</w>\": 38145,\n  \"acup\": 30869,\n  \"acup</w>\": 27278,\n  \"acupuncture</w>\": 40043,\n  \"acur\": 44719,\n  \"acura</w>\": 30120,\n  \"acus</w>\": 33710,\n  \"acute</w>\": 19734,\n  \"acy\": 18717,\n  \"acy</w>\": 2356,\n  \"ad\": 594,\n  \"ad</w>\": 680,\n  \"ada\": 25785,\n  \"ada</w>\": 1886,\n  \"adaily</w>\": 47254,\n  \"adal\": 46646,\n  \"adam\": 6037,\n  \"adam</w>\": 4944,\n  \"adamlambert</w>\": 27659,\n  \"adams</w>\": 7942,\n  \"adan</w>\": 41802,\n  \"adani</w>\": 37499,\n  \"adap\": 6341,\n  \"adapt</w>\": 22666,\n  \"adaptation</w>\": 16566,\n  \"adapted</w>\": 26657,\n  \"adapter</w>\": 21839,\n  \"adapting</w>\": 44120,\n  \"adaptive</w>\": 28672,\n  \"adar\": 27702,\n  \"adar</w>\": 32681,\n  \"adas</w>\": 23250,\n  \"adata</w>\": 39500,\n  \"aday\": 31367,\n  \"aday</w>\": 10280,\n  \"adays</w>\": 24337,\n  \"adb</w>\": 45630,\n  \"adc</w>\": 38201,\n  \"add\": 19408,\n  \"add</w>\": 3536,\n  \"addams</w>\": 38912,\n  \"added</w>\": 4149,\n  \"adder</w>\": 47557,\n  \"addi</w>\": 36378,\n  \"addic\": 5709,\n  \"addict</w>\": 14614,\n  \"addicted</w>\": 16275,\n  \"addiction</w>\": 11751,\n  \"addictive</w>\": 29638,\n  \"addicts</w>\": 29997,\n  \"adding</w>\": 8676,\n  \"addis</w>\": 43911,\n  \"addison</w>\": 32369,\n  \"additi\": 26927,\n  \"addition</w>\": 6698,\n  \"additional</w>\": 10666,\n  \"additions</w>\": 22575,\n  \"additive</w>\": 48546,\n  \"addo</w>\": 40001,\n  \"address</w>\": 5834,\n  \"addressed</w>\": 20817,\n  \"addresses</w>\": 12702,\n  \"addressing</w>\": 10594,\n  \"adds</w>\": 9944,\n  \"addy</w>\": 24746,\n  \"ade\": 2194,\n  \"ade</w>\": 1928,\n  \"adecides</w>\": 46374,\n  \"aded</w>\": 9994,\n  \"adee</w>\": 47054,\n  \"adel\": 4434,\n  \"adel</w>\": 27308,\n  \"adelaide\": 38193,\n  \"adelaide</w>\": 11611,\n  \"adele\": 42843,\n  \"adele</w>\": 21220,\n  \"adelrey</w>\": 43627,\n  \"ademy</w>\": 49123,\n  \"aden\": 28669,\n  \"aden</w>\": 28688,\n  \"adena</w>\": 23648,\n  \"adequ\": 18232,\n  \"adequate</w>\": 22281,\n  \"ader</w>\": 21365,\n  \"adero</w>\": 49185,\n  \"aders</w>\": 27672,\n  \"ades</w>\": 5793,\n  \"adh</w>\": 42301,\n  \"adhd</w>\": 32649,\n  \"adhe\": 21175,\n  \"adhesive</w>\": 38429,\n  \"adi\": 2486,\n  \"adi</w>\": 8779,\n  \"adia</w>\": 26874,\n  \"adic</w>\": 36780,\n  \"adid\": 8086,\n  \"adidas\": 22396,\n  \"adidas</w>\": 9589,\n  \"adidasoriginals</w>\": 48575,\n  \"adies</w>\": 45834,\n  \"adifference</w>\": 37217,\n  \"adilla</w>\": 41167,\n  \"ading</w>\": 15000,\n  \"adio</w>\": 15060,\n  \"adirond\": 36843,\n  \"adish</w>\": 49009,\n  \"adity\": 28596,\n  \"aditya</w>\": 37186,\n  \"adityanath</w>\": 44437,\n  \"adjac\": 32517,\n  \"adjacent</w>\": 33836,\n  \"adjec\": 45512,\n  \"adju\": 16413,\n  \"adjun\": 45995,\n  \"adjust\": 13784,\n  \"adjust</w>\": 28073,\n  \"adjustable</w>\": 20476,\n  \"adjusted</w>\": 30515,\n  \"adjusting</w>\": 41132,\n  \"adjustment</w>\": 36081,\n  \"adjustments</w>\": 36331,\n  \"adl</w>\": 49351,\n  \"adler</w>\": 30222,\n  \"adm\": 9892,\n  \"adm</w>\": 33604,\n  \"admi\": 11666,\n  \"admin</w>\": 12528,\n  \"admini\": 6434,\n  \"administr\": 12174,\n  \"administration</w>\": 9502,\n  \"administrative</w>\": 22424,\n  \"administrator</w>\": 22603,\n  \"administrators</w>\": 36123,\n  \"admins</w>\": 49297,\n  \"admir\": 17031,\n  \"admiral</w>\": 21013,\n  \"admiration</w>\": 39569,\n  \"admire</w>\": 17791,\n  \"admired</w>\": 36103,\n  \"admirer</w>\": 48344,\n  \"admiring</w>\": 29835,\n  \"admission</w>\": 11315,\n  \"admissions</w>\": 22463,\n  \"admit</w>\": 13769,\n  \"admits</w>\": 16332,\n  \"admitted</w>\": 20427,\n  \"admitting</w>\": 46148,\n  \"adn</w>\": 40339,\n  \"adnan</w>\": 42037,\n  \"ado\": 4775,\n  \"ado</w>\": 2933,\n  \"adobe\": 29256,\n  \"adobe</w>\": 16484,\n  \"adog</w>\": 44913,\n  \"adol\": 33512,\n  \"adole\": 22704,\n  \"adolescent</w>\": 36793,\n  \"adolescents</w>\": 45656,\n  \"adolf</w>\": 41179,\n  \"adon\": 25907,\n  \"adona</w>\": 48419,\n  \"adop\": 4183,\n  \"adopt\": 16441,\n  \"adopt</w>\": 11159,\n  \"adoptable</w>\": 36905,\n  \"adoptdont\": 19674,\n  \"adoptdontshop</w>\": 20089,\n  \"adopted</w>\": 12538,\n  \"adopting</w>\": 30158,\n  \"adoption</w>\": 11544,\n  \"adopts</w>\": 40853,\n  \"ador\": 4992,\n  \"ador</w>\": 9162,\n  \"adora</w>\": 40031,\n  \"adorable</w>\": 6298,\n  \"adoration</w>\": 46781,\n  \"adore</w>\": 15502,\n  \"adored</w>\": 49233,\n  \"adores</w>\": 30290,\n  \"adorned</w>\": 44953,\n  \"ados</w>\": 20079,\n  \"adox</w>\": 32188,\n  \"adp</w>\": 44426,\n  \"adr</w>\": 46189,\n  \"adren\": 24204,\n  \"adrenaline</w>\": 35552,\n  \"adri\": 5935,\n  \"adrian\": 25012,\n  \"adrian</w>\": 13163,\n  \"adriana</w>\": 41363,\n  \"adrid</w>\": 26562,\n  \"adrien</w>\": 47469,\n  \"adrienne</w>\": 40081,\n  \"ads</w>\": 2485,\n  \"adu\": 16882,\n  \"adu</w>\": 24446,\n  \"adukone</w>\": 30511,\n  \"adul\": 7222,\n  \"adult\": 42209,\n  \"adult</w>\": 7115,\n  \"adulthood</w>\": 40964,\n  \"adults</w>\": 9391,\n  \"adv\": 1647,\n  \"adv</w>\": 21018,\n  \"advan\": 33411,\n  \"advance\": 27291,\n  \"advance</w>\": 7022,\n  \"advanced</w>\": 7465,\n  \"advancement</w>\": 35437,\n  \"advances</w>\": 15852,\n  \"advancing</w>\": 21355,\n  \"advani</w>\": 48189,\n  \"advant\": 7017,\n  \"advantage</w>\": 8573,\n  \"advantaged</w>\": 38361,\n  \"advantages</w>\": 23506,\n  \"adven\": 41670,\n  \"advent\": 3071,\n  \"advent</w>\": 15199,\n  \"adventcalendar</w>\": 43492,\n  \"adventur\": 29627,\n  \"adventure\": 17251,\n  \"adventure</w>\": 4377,\n  \"adventurer</w>\": 48098,\n  \"adventures</w>\": 7941,\n  \"adventurous</w>\": 31179,\n  \"adver\": 4806,\n  \"adverse</w>\": 30348,\n  \"adversity</w>\": 32516,\n  \"advert</w>\": 19080,\n  \"adverti\": 5682,\n  \"advertise</w>\": 31473,\n  \"advertised</w>\": 38987,\n  \"advertisement</w>\": 18713,\n  \"advertiser</w>\": 41829,\n  \"advertisers</w>\": 45472,\n  \"advertising</w>\": 8158,\n  \"adverts</w>\": 44306,\n  \"advice</w>\": 4973,\n  \"advis\": 4634,\n  \"advise</w>\": 25962,\n  \"advised</w>\": 23196,\n  \"adviser</w>\": 20367,\n  \"advisers</w>\": 40984,\n  \"advises</w>\": 42761,\n  \"advising</w>\": 39648,\n  \"advisor</w>\": 12380,\n  \"advisors</w>\": 23197,\n  \"advisory</w>\": 10224,\n  \"advoc\": 6657,\n  \"advocacy</w>\": 14443,\n  \"advocate</w>\": 12044,\n  \"advocates</w>\": 17757,\n  \"adwords</w>\": 48343,\n  \"ady\": 41446,\n  \"ady</w>\": 8781,\n  \"ae\": 5548,\n  \"ae</w>\": 4542,\n  \"aea</w>\": 37048,\n  \"aed</w>\": 26912,\n  \"aege\": 42304,\n  \"ael\": 41533,\n  \"ael</w>\": 43340,\n  \"aen\": 43085,\n  \"aer\": 10195,\n  \"aeri\": 27685,\n  \"aerial\": 44866,\n  \"aerial</w>\": 12440,\n  \"aero\": 10196,\n  \"aero</w>\": 25026,\n  \"aerob\": 42824,\n  \"aeron\": 37286,\n  \"aeronau\": 42816,\n  \"aerop\": 27735,\n  \"aerosmith</w>\": 43253,\n  \"aerospace</w>\": 20530,\n  \"aes\": 10617,\n  \"aes</w>\": 35677,\n  \"aest</w>\": 40694,\n  \"aesthe\": 21181,\n  \"aesthetic</w>\": 16179,\n  \"aesthetics</w>\": 29295,\n  \"aew</w>\": 47108,\n  \"af\": 702,\n  \"af</w>\": 4391,\n  \"afa</w>\": 24953,\n  \"afan\": 47474,\n  \"afar\": 41637,\n  \"afar</w>\": 37866,\n  \"afb</w>\": 27022,\n  \"afc\": 29742,\n  \"afc</w>\": 6571,\n  \"afcb</w>\": 44276,\n  \"afcon</w>\": 30019,\n  \"afd</w>\": 44626,\n  \"afe\": 30487,\n  \"afe</w>\": 13912,\n  \"afer\": 44707,\n  \"aff\": 8849,\n  \"aff</w>\": 14864,\n  \"affair</w>\": 13998,\n  \"affairs</w>\": 9830,\n  \"affe\": 4556,\n  \"affect</w>\": 11361,\n  \"affected</w>\": 9715,\n  \"affecting</w>\": 18448,\n  \"affection\": 33780,\n  \"affection</w>\": 28381,\n  \"affectionate</w>\": 42578,\n  \"affects</w>\": 17285,\n  \"affili\": 12120,\n  \"affiliate</w>\": 18652,\n  \"affiliated</w>\": 37540,\n  \"affiliation</w>\": 48377,\n  \"affinity</w>\": 41451,\n  \"affir\": 25343,\n  \"affirm\": 42711,\n  \"affirm</w>\": 48625,\n  \"affirmation</w>\": 47495,\n  \"affl\": 34036,\n  \"affleck</w>\": 35584,\n  \"afford\": 7951,\n  \"afford</w>\": 13223,\n  \"affordability</w>\": 44828,\n  \"affordable\": 43944,\n  \"affordable</w>\": 8926,\n  \"afg</w>\": 33994,\n  \"afgh\": 9029,\n  \"afghan</w>\": 15919,\n  \"afghanistan</w>\": 9836,\n  \"afi\": 24074,\n  \"afi</w>\": 31958,\n  \"afil\": 27209,\n  \"afire</w>\": 42010,\n  \"afirst</w>\": 38601,\n  \"afl\": 15132,\n  \"afl</w>\": 14356,\n  \"aflo\": 41959,\n  \"afm</w>\": 38385,\n  \"afootball</w>\": 41694,\n  \"afor\": 43102,\n  \"afore\": 41468,\n  \"afp</w>\": 18311,\n  \"afraid</w>\": 9474,\n  \"afri\": 13888,\n  \"afric\": 2136,\n  \"africa</w>\": 3093,\n  \"african\": 17471,\n  \"african</w>\": 4736,\n  \"africans</w>\": 26534,\n  \"afridi</w>\": 37651,\n  \"afrika</w>\": 45833,\n  \"afrin</w>\": 45586,\n  \"afro\": 16267,\n  \"afro</w>\": 21795,\n  \"afs</w>\": 48960,\n  \"aft</w>\": 22693,\n  \"after\": 2278,\n  \"after</w>\": 953,\n  \"afterdark</w>\": 48966,\n  \"afterlife</w>\": 46790,\n  \"aftermath</w>\": 20958,\n  \"afterno\": 22330,\n  \"afternoon\": 39035,\n  \"afternoon</w>\": 2716,\n  \"afternoons</w>\": 31631,\n  \"afterparty</w>\": 35305,\n  \"afterwards</w>\": 23911,\n  \"ag\": 602,\n  \"ag</w>\": 5241,\n  \"aga\": 1050,\n  \"aga</w>\": 4654,\n  \"again</w>\": 1495,\n  \"against\": 23838,\n  \"against</w>\": 1601,\n  \"agame</w>\": 46943,\n  \"agan\": 42946,\n  \"agan</w>\": 9178,\n  \"agar\": 13199,\n  \"agar</w>\": 17544,\n  \"agarwal</w>\": 43117,\n  \"agas\": 20430,\n  \"agate</w>\": 25454,\n  \"agatha</w>\": 43896,\n  \"agave</w>\": 42671,\n  \"agawa</w>\": 39433,\n  \"agazine</w>\": 44942,\n  \"age\": 4758,\n  \"age</w>\": 805,\n  \"aged</w>\": 3889,\n  \"ageing</w>\": 25349,\n  \"agen\": 10101,\n  \"agen</w>\": 43696,\n  \"agencies</w>\": 13887,\n  \"agency\": 44885,\n  \"agency</w>\": 6270,\n  \"agend\": 48653,\n  \"agenda</w>\": 8728,\n  \"agent\": 21210,\n  \"agent</w>\": 6576,\n  \"agents</w>\": 10199,\n  \"agentsof\": 37074,\n  \"agentsofshield</w>\": 38801,\n  \"ager\": 44847,\n  \"ager</w>\": 10443,\n  \"agers</w>\": 22123,\n  \"ages</w>\": 2321,\n  \"agg</w>\": 45482,\n  \"aggarwal</w>\": 39386,\n  \"agger\": 27836,\n  \"aggi\": 36844,\n  \"aggie\": 44244,\n  \"aggie</w>\": 37618,\n  \"aggies</w>\": 31047,\n  \"aggio</w>\": 36685,\n  \"aggrav\": 35203,\n  \"aggre\": 10426,\n  \"aggreg\": 41968,\n  \"aggregate</w>\": 41318,\n  \"aggression</w>\": 28900,\n  \"aggressive</w>\": 16295,\n  \"aggressively</w>\": 48667,\n  \"agh\": 17917,\n  \"agh</w>\": 14402,\n  \"aghan</w>\": 31276,\n  \"agi\": 24036,\n  \"agi</w>\": 17645,\n  \"agic</w>\": 37652,\n  \"agile</w>\": 16276,\n  \"agility</w>\": 32161,\n  \"aging</w>\": 4336,\n  \"agio</w>\": 41746,\n  \"agirl</w>\": 35469,\n  \"agle\": 37035,\n  \"agle</w>\": 16702,\n  \"agles\": 36374,\n  \"agles</w>\": 22679,\n  \"aglia</w>\": 46912,\n  \"agm</w>\": 19162,\n  \"agn\": 36474,\n  \"agna</w>\": 43626,\n  \"agne\": 29374,\n  \"agne</w>\": 48303,\n  \"agnes</w>\": 26213,\n  \"agno\": 41540,\n  \"ago\": 6276,\n  \"ago</w>\": 1468,\n  \"agomez</w>\": 27127,\n  \"agon\": 26775,\n  \"agon</w>\": 14901,\n  \"agony</w>\": 36977,\n  \"agor\": 38920,\n  \"agos</w>\": 32657,\n  \"agov</w>\": 34227,\n  \"agp</w>\": 46048,\n  \"agr\": 36639,\n  \"agra\": 26660,\n  \"agra</w>\": 29830,\n  \"agram</w>\": 2447,\n  \"agre\": 3180,\n  \"agreat\": 37594,\n  \"agree</w>\": 5953,\n  \"agreed</w>\": 12774,\n  \"agreeing</w>\": 40720,\n  \"agreement</w>\": 8286,\n  \"agreements</w>\": 25865,\n  \"agrees</w>\": 17854,\n  \"agri\": 20527,\n  \"agri</w>\": 30326,\n  \"agricul\": 7234,\n  \"agricultural</w>\": 15440,\n  \"agriculture</w>\": 9720,\n  \"agro\": 33178,\n  \"agro</w>\": 44589,\n  \"agron\": 41314,\n  \"agroup</w>\": 40099,\n  \"ags</w>\": 16926,\n  \"agt</w>\": 39681,\n  \"agu\": 3922,\n  \"agu</w>\": 36544,\n  \"agua</w>\": 18482,\n  \"aguchi</w>\": 49206,\n  \"ague</w>\": 2095,\n  \"aguero</w>\": 42964,\n  \"agues</w>\": 7000,\n  \"aguil\": 27946,\n  \"aguilar</w>\": 44715,\n  \"ah\": 1772,\n  \"ah</w>\": 1288,\n  \"aha\": 12082,\n  \"aha</w>\": 8429,\n  \"ahah</w>\": 38661,\n  \"ahaha</w>\": 32423,\n  \"ahahaha</w>\": 42620,\n  \"aham\": 36036,\n  \"ahan\": 45061,\n  \"ahan</w>\": 19255,\n  \"ahar\": 31038,\n  \"ahar</w>\": 38760,\n  \"ahe\": 27688,\n  \"ahead</w>\": 3158,\n  \"ahem</w>\": 39995,\n  \"ahh</w>\": 13152,\n  \"ahhh</w>\": 14769,\n  \"ahhhh</w>\": 21054,\n  \"ahhhhh</w>\": 36392,\n  \"ahi\": 45349,\n  \"ahi</w>\": 24154,\n  \"ahl</w>\": 30433,\n  \"ahmad\": 32167,\n  \"ahmad</w>\": 16902,\n  \"ahmadi\": 38656,\n  \"ahmadiyya</w>\": 44865,\n  \"ahmed\": 19491,\n  \"ahmed</w>\": 12081,\n  \"ahmedabad</w>\": 26966,\n  \"ahn</w>\": 33405,\n  \"aho\": 28114,\n  \"aho</w>\": 38444,\n  \"ahora</w>\": 43113,\n  \"ahouse</w>\": 33197,\n  \"ahoy</w>\": 38652,\n  \"ahs</w>\": 16937,\n  \"ahu\": 11908,\n  \"ahu</w>\": 16515,\n  \"ai\": 2014,\n  \"ai</w>\": 2215,\n  \"aia</w>\": 27046,\n  \"aib</w>\": 34780,\n  \"aic\": 29454,\n  \"aid\": 13723,\n  \"aid</w>\": 5182,\n  \"aida</w>\": 33830,\n  \"aidan\": 48814,\n  \"aidan</w>\": 26945,\n  \"aide\": 31558,\n  \"aide</w>\": 9746,\n  \"aided</w>\": 48707,\n  \"aiden</w>\": 40020,\n  \"aides</w>\": 49082,\n  \"aids</w>\": 11759,\n  \"aig\": 27295,\n  \"aig</w>\": 46989,\n  \"aii</w>\": 22478,\n  \"aik</w>\": 42575,\n  \"aiken</w>\": 46342,\n  \"ail\": 1457,\n  \"ail</w>\": 9154,\n  \"ailed</w>\": 38919,\n  \"ailing</w>\": 29999,\n  \"ails</w>\": 27024,\n  \"aim\": 6787,\n  \"aim</w>\": 11255,\n  \"aime</w>\": 39872,\n  \"aimed</w>\": 20247,\n  \"aimee</w>\": 36318,\n  \"aiming</w>\": 21768,\n  \"aimo</w>\": 36706,\n  \"aims</w>\": 13326,\n  \"ain\": 8326,\n  \"ain</w>\": 2210,\n  \"aine\": 48983,\n  \"aine</w>\": 17634,\n  \"ains</w>\": 27621,\n  \"aint\": 29543,\n  \"aint</w>\": 13099,\n  \"ainted</w>\": 39933,\n  \"aioli</w>\": 43949,\n  \"air\": 1281,\n  \"air</w>\": 1922,\n  \"aira\": 35085,\n  \"aira</w>\": 46444,\n  \"airasia</w>\": 48020,\n  \"airbnb</w>\": 23098,\n  \"airborne</w>\": 22755,\n  \"airbus</w>\": 15324,\n  \"aircraft</w>\": 7706,\n  \"airdrop</w>\": 38434,\n  \"aire</w>\": 7682,\n  \"aired</w>\": 21938,\n  \"aires</w>\": 17034,\n  \"airfield</w>\": 40525,\n  \"airforce</w>\": 23511,\n  \"airing</w>\": 20453,\n  \"airline</w>\": 14847,\n  \"airlines</w>\": 8929,\n  \"airmen</w>\": 44499,\n  \"airplane</w>\": 16451,\n  \"airplanes</w>\": 33319,\n  \"airplay</w>\": 47024,\n  \"airpollution</w>\": 47362,\n  \"airport\": 48337,\n  \"airport</w>\": 3259,\n  \"airports</w>\": 21543,\n  \"airs</w>\": 18539,\n  \"airshow</w>\": 27139,\n  \"airsoft</w>\": 30134,\n  \"airspace</w>\": 49280,\n  \"airstrikes</w>\": 37220,\n  \"airtel</w>\": 34784,\n  \"airtime</w>\": 46617,\n  \"airwaves</w>\": 43910,\n  \"airways</w>\": 14299,\n  \"airy</w>\": 44453,\n  \"ais\": 7616,\n  \"ais</w>\": 11393,\n  \"aise</w>\": 30505,\n  \"aish\": 21946,\n  \"aisha</w>\": 40211,\n  \"aishwar\": 29687,\n  \"aishwarya</w>\": 44019,\n  \"aisle</w>\": 26917,\n  \"ait\": 25613,\n  \"ait</w>\": 40814,\n  \"aj\": 3990,\n  \"aj</w>\": 6342,\n  \"aja\": 42343,\n  \"aja</w>\": 19633,\n  \"ajax</w>\": 21933,\n  \"ajay\": 22494,\n  \"ajay</w>\": 28726,\n  \"ajaydevgn</w>\": 35515,\n  \"aje\": 48818,\n  \"aje</w>\": 33315,\n  \"ajes</w>\": 38791,\n  \"aji\": 26102,\n  \"aji</w>\": 21153,\n  \"ajit</w>\": 42261,\n  \"ajith</w>\": 24118,\n  \"ajo</w>\": 26958,\n  \"aju\": 36855,\n  \"ak\": 819,\n  \"ak</w>\": 1196,\n  \"aka\": 19154,\n  \"aka</w>\": 3412,\n  \"akaif</w>\": 45736,\n  \"akan\": 43678,\n  \"akan</w>\": 38244,\n  \"akapoor</w>\": 40064,\n  \"akarta</w>\": 48603,\n  \"akb</w>\": 41962,\n  \"akbar</w>\": 27180,\n  \"ake\": 10558,\n  \"ake</w>\": 5776,\n  \"aked</w>\": 6115,\n  \"aker\": 14245,\n  \"aker</w>\": 3074,\n  \"akers</w>\": 5788,\n  \"akes</w>\": 4764,\n  \"akest</w>\": 46679,\n  \"akh\": 14821,\n  \"akh</w>\": 30660,\n  \"akhan</w>\": 28158,\n  \"akhi\": 41660,\n  \"akhilesh</w>\": 48495,\n  \"akhtar</w>\": 45458,\n  \"aki\": 18173,\n  \"aki</w>\": 6592,\n  \"akin\": 24630,\n  \"akin</w>\": 13601,\n  \"aking</w>\": 1809,\n  \"akins</w>\": 48568,\n  \"akira</w>\": 34001,\n  \"akis</w>\": 27732,\n  \"akistan</w>\": 46221,\n  \"akley</w>\": 39908,\n  \"ako\": 44027,\n  \"ako</w>\": 14541,\n  \"akon</w>\": 47105,\n  \"akos</w>\": 44659,\n  \"akrish\": 37434,\n  \"akron</w>\": 26115,\n  \"aks</w>\": 2953,\n  \"aksh\": 28226,\n  \"akshay\": 21483,\n  \"akshay</w>\": 38914,\n  \"akshaykumar</w>\": 23624,\n  \"akshi</w>\": 42634,\n  \"aku\": 18151,\n  \"aku</w>\": 20815,\n  \"aky</w>\": 11977,\n  \"al\": 526,\n  \"al</w>\": 566,\n  \"ala\": 12783,\n  \"ala</w>\": 3449,\n  \"alab\": 6365,\n  \"alabam\": 45880,\n  \"alabama</w>\": 8422,\n  \"alach\": 24622,\n  \"alad\": 23074,\n  \"aladdin</w>\": 29951,\n  \"alai</w>\": 47072,\n  \"alain</w>\": 28999,\n  \"alam\": 16612,\n  \"alam</w>\": 16012,\n  \"alamo\": 41922,\n  \"alamo</w>\": 34632,\n  \"alan\": 9563,\n  \"alan</w>\": 5773,\n  \"alana</w>\": 43405,\n  \"aland\": 34304,\n  \"aland</w>\": 6819,\n  \"alar\": 34333,\n  \"alarm</w>\": 11321,\n  \"alarming</w>\": 37209,\n  \"alarms</w>\": 31236,\n  \"alarts</w>\": 31422,\n  \"alas\": 7276,\n  \"alas</w>\": 22412,\n  \"alaska</w>\": 9562,\n  \"alaskan</w>\": 33898,\n  \"alastair</w>\": 42062,\n  \"alay\": 30289,\n  \"alay</w>\": 36450,\n  \"alaya</w>\": 36397,\n  \"alb\": 45248,\n  \"alba</w>\": 25254,\n  \"alban\": 10882,\n  \"albania</w>\": 29170,\n  \"albanian</w>\": 47721,\n  \"albans</w>\": 44119,\n  \"albany</w>\": 17359,\n  \"albat\": 42797,\n  \"albeit</w>\": 38984,\n  \"alber\": 6413,\n  \"albert\": 34174,\n  \"albert</w>\": 9507,\n  \"alberta</w>\": 11048,\n  \"alberto</w>\": 22714,\n  \"albi\": 18512,\n  \"albino</w>\": 48062,\n  \"albion</w>\": 24071,\n  \"albu\": 2216,\n  \"album\": 40712,\n  \"album</w>\": 2431,\n  \"albums</w>\": 10705,\n  \"albuquerque</w>\": 31079,\n  \"alcat\": 35361,\n  \"alche\": 37909,\n  \"alchemist</w>\": 38913,\n  \"alchemy</w>\": 39501,\n  \"alco\": 6848,\n  \"alco</w>\": 45446,\n  \"alcohol</w>\": 9426,\n  \"alcoholic</w>\": 25098,\n  \"ald\": 4539,\n  \"ald</w>\": 2928,\n  \"alda</w>\": 46440,\n  \"alde\": 33114,\n  \"alden\": 17155,\n  \"alden</w>\": 27710,\n  \"aldenrichards</w>\": 20051,\n  \"alder\": 18220,\n  \"alder</w>\": 46571,\n  \"aldi</w>\": 23204,\n  \"aldo</w>\": 9933,\n  \"aldridge</w>\": 38084,\n  \"alds</w>\": 14285,\n  \"aldu\": 6505,\n  \"aldub\": 10532,\n  \"aldub</w>\": 15247,\n  \"ale\": 1440,\n  \"ale</w>\": 1336,\n  \"alea</w>\": 26518,\n  \"aleague</w>\": 38909,\n  \"alec\": 29804,\n  \"alec</w>\": 19954,\n  \"alecoscino</w>\": 47948,\n  \"aled</w>\": 4970,\n  \"alee</w>\": 24515,\n  \"alej\": 23440,\n  \"alejandro</w>\": 32950,\n  \"alek\": 26906,\n  \"alek</w>\": 43310,\n  \"aleksand\": 48429,\n  \"alem</w>\": 11825,\n  \"aleppo</w>\": 19258,\n  \"aler\": 25674,\n  \"aler</w>\": 27335,\n  \"alert</w>\": 4662,\n  \"alerts</w>\": 22144,\n  \"ales\": 44171,\n  \"ales</w>\": 5962,\n  \"aless\": 21864,\n  \"alessandro</w>\": 37344,\n  \"alestine</w>\": 31945,\n  \"alex\": 2959,\n  \"alex</w>\": 4134,\n  \"alexa</w>\": 16273,\n  \"alexand\": 10696,\n  \"alexander\": 25527,\n  \"alexander</w>\": 7563,\n  \"alexandra</w>\": 19054,\n  \"alexandre</w>\": 35711,\n  \"alexandria</w>\": 21171,\n  \"alexis\": 35023,\n  \"alexis</w>\": 14243,\n  \"aley</w>\": 21635,\n  \"alf</w>\": 27098,\n  \"alfa</w>\": 23482,\n  \"alfar\": 38870,\n  \"alfie</w>\": 28598,\n  \"alfon\": 31947,\n  \"alfonso</w>\": 41784,\n  \"alfre\": 20982,\n  \"alfred</w>\": 16553,\n  \"alfredo</w>\": 32291,\n  \"algae</w>\": 25654,\n  \"algar\": 36291,\n  \"algarve</w>\": 40290,\n  \"alge\": 24336,\n  \"algebra</w>\": 33694,\n  \"alger\": 18568,\n  \"algeria</w>\": 25257,\n  \"algon\": 33007,\n  \"algori\": 14912,\n  \"algorithm</w>\": 23295,\n  \"algorithms</w>\": 26039,\n  \"alham\": 23352,\n  \"alhamdulil\": 35129,\n  \"alhamdulillah</w>\": 38982,\n  \"ali\": 835,\n  \"ali</w>\": 3558,\n  \"alia</w>\": 2492,\n  \"aliaa</w>\": 36468,\n  \"alian</w>\": 3464,\n  \"alias</w>\": 40026,\n  \"alibaba</w>\": 39231,\n  \"alic\": 25265,\n  \"alice\": 23759,\n  \"alice</w>\": 9192,\n  \"alici\": 31630,\n  \"alicia</w>\": 20914,\n  \"alie</w>\": 8697,\n  \"alien\": 22846,\n  \"alien</w>\": 9639,\n  \"aliens</w>\": 14883,\n  \"alier</w>\": 39493,\n  \"alies</w>\": 38086,\n  \"alife\": 41347,\n  \"alife</w>\": 21100,\n  \"alig\": 21272,\n  \"alight</w>\": 36157,\n  \"align</w>\": 31160,\n  \"aligned</w>\": 29292,\n  \"alignment</w>\": 27267,\n  \"alik</w>\": 31141,\n  \"alike</w>\": 12665,\n  \"alim\": 42075,\n  \"alin\": 42746,\n  \"alin</w>\": 40063,\n  \"alina</w>\": 39529,\n  \"aline</w>\": 21799,\n  \"aling</w>\": 5169,\n  \"alion</w>\": 19049,\n  \"alis\": 21308,\n  \"alis</w>\": 20114,\n  \"alisa</w>\": 38918,\n  \"alisation</w>\": 42143,\n  \"alise</w>\": 36718,\n  \"alised</w>\": 25099,\n  \"alism</w>\": 5607,\n  \"alison\": 28653,\n  \"alison</w>\": 16970,\n  \"alist\": 44900,\n  \"alist</w>\": 3320,\n  \"alistair</w>\": 40551,\n  \"alistic</w>\": 22302,\n  \"alists</w>\": 5653,\n  \"alit\": 45566,\n  \"alities</w>\": 27925,\n  \"ality</w>\": 1694,\n  \"alive\": 40467,\n  \"alive</w>\": 4716,\n  \"aliz\": 30979,\n  \"alization</w>\": 8026,\n  \"alize</w>\": 10268,\n  \"alized</w>\": 6141,\n  \"alizer</w>\": 38922,\n  \"alizes</w>\": 26181,\n  \"alizing</w>\": 13023,\n  \"alk\": 30246,\n  \"alk</w>\": 21577,\n  \"alkal\": 33450,\n  \"alkaline</w>\": 39210,\n  \"all\": 813,\n  \"all</w>\": 615,\n  \"alla\": 13884,\n  \"alla</w>\": 14000,\n  \"allabout\": 43996,\n  \"allah</w>\": 6378,\n  \"allan\": 36552,\n  \"allan</w>\": 15404,\n  \"allblacks</w>\": 47728,\n  \"allday</w>\": 35862,\n  \"alle\": 4870,\n  \"alle</w>\": 29478,\n  \"alled</w>\": 7379,\n  \"alleg\": 7456,\n  \"allegations</w>\": 16992,\n  \"alleged</w>\": 12133,\n  \"allegedly</w>\": 14177,\n  \"alleges</w>\": 45051,\n  \"allegh\": 41479,\n  \"allegheny</w>\": 47851,\n  \"allegi\": 28832,\n  \"allegiance</w>\": 30955,\n  \"allen\": 16712,\n  \"allen</w>\": 6386,\n  \"allenge</w>\": 31387,\n  \"aller\": 10116,\n  \"aller</w>\": 30630,\n  \"allergic</w>\": 28809,\n  \"allergies</w>\": 28247,\n  \"allergy</w>\": 24408,\n  \"allery</w>\": 32542,\n  \"alles</w>\": 43354,\n  \"allevi\": 31682,\n  \"alleviate</w>\": 44799,\n  \"alley\": 36205,\n  \"alley</w>\": 10329,\n  \"allez</w>\": 49137,\n  \"alli\": 4123,\n  \"alli</w>\": 15268,\n  \"alliance\": 45404,\n  \"alliance</w>\": 8945,\n  \"alliances</w>\": 48403,\n  \"allianz</w>\": 45740,\n  \"allie</w>\": 25040,\n  \"allied</w>\": 20045,\n  \"allies</w>\": 17277,\n  \"alligator</w>\": 28574,\n  \"allin\": 45007,\n  \"allin</w>\": 22395,\n  \"alline</w>\": 48182,\n  \"alling</w>\": 2992,\n  \"allis</w>\": 45309,\n  \"allison\": 34602,\n  \"allison</w>\": 16578,\n  \"allman</w>\": 42611,\n  \"allo\": 8107,\n  \"allo</w>\": 18389,\n  \"allocated</w>\": 42716,\n  \"allocation</w>\": 35139,\n  \"allon</w>\": 46693,\n  \"allot\": 26363,\n  \"allotment</w>\": 33750,\n  \"allow\": 5645,\n  \"allow</w>\": 6722,\n  \"allowance</w>\": 35696,\n  \"allowed</w>\": 7885,\n  \"allowing</w>\": 12458,\n  \"allows</w>\": 9966,\n  \"alloy</w>\": 22467,\n  \"alls</w>\": 1997,\n  \"allstar\": 31247,\n  \"allstar</w>\": 22974,\n  \"allstars</w>\": 31198,\n  \"allthe\": 29253,\n  \"allu\": 20157,\n  \"alluarjun</w>\": 39333,\n  \"allure</w>\": 41814,\n  \"ally\": 7461,\n  \"ally</w>\": 769,\n  \"alm</w>\": 28303,\n  \"alma\": 32933,\n  \"alma</w>\": 18337,\n  \"alman\": 29394,\n  \"almanac</w>\": 41268,\n  \"almighty</w>\": 21898,\n  \"almond</w>\": 15646,\n  \"almonds</w>\": 30468,\n  \"almost\": 47534,\n  \"almost</w>\": 2671,\n  \"aln\": 47203,\n  \"alo\": 3435,\n  \"alo</w>\": 6183,\n  \"aloe</w>\": 30728,\n  \"alog</w>\": 15813,\n  \"alogue</w>\": 9101,\n  \"aloha</w>\": 23160,\n  \"aloils</w>\": 49002,\n  \"alom</w>\": 22236,\n  \"alon\": 14097,\n  \"alon</w>\": 42846,\n  \"alone</w>\": 4702,\n  \"along\": 8300,\n  \"along</w>\": 2528,\n  \"alongside</w>\": 8646,\n  \"alonso</w>\": 25704,\n  \"aloo</w>\": 46187,\n  \"alore</w>\": 14323,\n  \"alot</w>\": 16945,\n  \"alou\": 43180,\n  \"aloud</w>\": 30028,\n  \"alove\": 46669,\n  \"alove</w>\": 37045,\n  \"alp\": 32020,\n  \"alp</w>\": 39342,\n  \"alpac\": 30128,\n  \"alpaca</w>\": 42561,\n  \"alph\": 6720,\n  \"alpha\": 11807,\n  \"alpha</w>\": 8624,\n  \"alphabe\": 45796,\n  \"alphabet</w>\": 22335,\n  \"alphon\": 37865,\n  \"alpine</w>\": 17055,\n  \"alps</w>\": 18191,\n  \"already</w>\": 2426,\n  \"alright</w>\": 10866,\n  \"als\": 23982,\n  \"als</w>\": 938,\n  \"alsace</w>\": 49388,\n  \"also</w>\": 1446,\n  \"alt\": 9995,\n  \"alt</w>\": 10006,\n  \"alta\": 24470,\n  \"alta</w>\": 25378,\n  \"altaf</w>\": 47342,\n  \"altam\": 45624,\n  \"altar</w>\": 16385,\n  \"alter\": 4949,\n  \"alter</w>\": 21393,\n  \"altered</w>\": 25201,\n  \"altern\": 47463,\n  \"alternate</w>\": 15926,\n  \"alternati\": 16699,\n  \"alternative\": 37327,\n  \"alternative</w>\": 8248,\n  \"alternatives</w>\": 25041,\n  \"alth\": 23463,\n  \"alth</w>\": 5863,\n  \"although</w>\": 9421,\n  \"alti\": 35531,\n  \"alties</w>\": 17276,\n  \"altitude</w>\": 23241,\n  \"altman</w>\": 48100,\n  \"alto\": 35053,\n  \"alto</w>\": 17518,\n  \"altogether</w>\": 45689,\n  \"alton\": 41331,\n  \"alton</w>\": 36550,\n  \"altrin\": 38458,\n  \"altrincham</w>\": 44718,\n  \"alty</w>\": 5546,\n  \"alu\": 4776,\n  \"alu</w>\": 27991,\n  \"alum\": 5404,\n  \"alum</w>\": 10553,\n  \"alumin\": 14563,\n  \"alumini\": 22908,\n  \"aluminium</w>\": 23631,\n  \"aluminum</w>\": 15251,\n  \"alumna</w>\": 30313,\n  \"alumni</w>\": 6646,\n  \"alumnus</w>\": 23633,\n  \"alums</w>\": 30155,\n  \"alv\": 20928,\n  \"alvar\": 25196,\n  \"alvarez</w>\": 26924,\n  \"alvaro</w>\": 41941,\n  \"alves</w>\": 38547,\n  \"alvin</w>\": 27023,\n  \"alway\": 14046,\n  \"alway</w>\": 43764,\n  \"always\": 24997,\n  \"always</w>\": 1466,\n  \"alwx</w>\": 32768,\n  \"aly\": 6468,\n  \"aly</w>\": 12910,\n  \"alyn\": 49150,\n  \"alyss\": 29490,\n  \"alyssa</w>\": 18898,\n  \"alz\": 12936,\n  \"alz</w>\": 41128,\n  \"alzheim\": 15212,\n  \"alzheimer</w>\": 21151,\n  \"alzheimers</w>\": 34592,\n  \"am\": 548,\n  \"am</w>\": 687,\n  \"ama\": 18206,\n  \"ama</w>\": 1696,\n  \"amad\": 45095,\n  \"amade\": 37366,\n  \"amag\": 32049,\n  \"amal\": 15315,\n  \"amal</w>\": 36753,\n  \"aman\": 19890,\n  \"aman</w>\": 10110,\n  \"amand\": 14560,\n  \"amanda</w>\": 10036,\n  \"amar\": 6424,\n  \"amar</w>\": 19607,\n  \"amara</w>\": 48522,\n  \"amari\": 42565,\n  \"amarillo</w>\": 40449,\n  \"amarine</w>\": 45591,\n  \"amarketing</w>\": 30788,\n  \"amas\": 22716,\n  \"amas</w>\": 15667,\n  \"amat\": 38664,\n  \"amat</w>\": 25455,\n  \"amate\": 12453,\n  \"amateur</w>\": 14287,\n  \"amaya</w>\": 47210,\n  \"amaz\": 1185,\n  \"amaze</w>\": 24846,\n  \"amazed</w>\": 18944,\n  \"amazing\": 15949,\n  \"amazing</w>\": 1370,\n  \"amazingly</w>\": 20368,\n  \"amazon\": 13630,\n  \"amazon</w>\": 4140,\n  \"amb\": 9042,\n  \"amb</w>\": 16853,\n  \"amba</w>\": 27003,\n  \"ambani</w>\": 45967,\n  \"ambas\": 5634,\n  \"ambassad\": 5758,\n  \"ambassador</w>\": 6795,\n  \"ambassadors</w>\": 16832,\n  \"ambed\": 42089,\n  \"ambedkar</w>\": 48131,\n  \"amber\": 18292,\n  \"amber</w>\": 9986,\n  \"ambi\": 11844,\n  \"ambient</w>\": 23447,\n  \"ambigu\": 35702,\n  \"ambition</w>\": 20673,\n  \"ambitions</w>\": 34152,\n  \"ambitious</w>\": 18666,\n  \"ambro\": 17585,\n  \"ambrose</w>\": 24253,\n  \"ambu\": 34423,\n  \"ambul\": 13944,\n  \"ambulance</w>\": 15555,\n  \"ambush</w>\": 40725,\n  \"amc\": 24942,\n  \"amc</w>\": 16921,\n  \"amd</w>\": 20845,\n  \"ame\": 3995,\n  \"ame</w>\": 780,\n  \"amed</w>\": 5660,\n  \"ameen</w>\": 24229,\n  \"amel\": 31988,\n  \"amel</w>\": 10960,\n  \"ameli\": 21599,\n  \"amelia</w>\": 21433,\n  \"amell</w>\": 48198,\n  \"amen\": 18716,\n  \"amen</w>\": 12335,\n  \"amend\": 12425,\n  \"amendment</w>\": 15019,\n  \"amendments</w>\": 40901,\n  \"amenities</w>\": 30096,\n  \"ament</w>\": 27528,\n  \"amer\": 17081,\n  \"amer</w>\": 16147,\n  \"ameri\": 40422,\n  \"americ\": 1283,\n  \"america</w>\": 2224,\n  \"americafirst</w>\": 43216,\n  \"american\": 8746,\n  \"american</w>\": 2151,\n  \"americana</w>\": 26221,\n  \"americanair</w>\": 42538,\n  \"americani\": 39726,\n  \"americans</w>\": 6676,\n  \"americas\": 33343,\n  \"americas</w>\": 18142,\n  \"ames</w>\": 5469,\n  \"ameter</w>\": 23393,\n  \"amethy\": 30291,\n  \"amethyst</w>\": 31485,\n  \"amex</w>\": 46390,\n  \"amg</w>\": 21324,\n  \"amher\": 32311,\n  \"amherst</w>\": 39065,\n  \"ami\": 6100,\n  \"ami</w>\": 3065,\n  \"amic\": 25824,\n  \"amic</w>\": 21383,\n  \"amid\": 18908,\n  \"amid</w>\": 11953,\n  \"amide</w>\": 30952,\n  \"amidst</w>\": 25172,\n  \"amie</w>\": 36901,\n  \"amig\": 40294,\n  \"amiga</w>\": 35329,\n  \"amigo</w>\": 44991,\n  \"amigos</w>\": 28176,\n  \"amii\": 35462,\n  \"amiibo</w>\": 38871,\n  \"amily</w>\": 36732,\n  \"amin\": 14337,\n  \"amin</w>\": 20235,\n  \"amina</w>\": 47531,\n  \"amination</w>\": 30355,\n  \"amine</w>\": 35823,\n  \"aming</w>\": 3507,\n  \"amino</w>\": 33464,\n  \"amir\": 26029,\n  \"amir</w>\": 21973,\n  \"amis</w>\": 29829,\n  \"amish</w>\": 24958,\n  \"amit\": 15083,\n  \"amit</w>\": 25255,\n  \"amitabh</w>\": 48124,\n  \"amitshah</w>\": 32374,\n  \"aml</w>\": 43185,\n  \"amma</w>\": 29786,\n  \"amman</w>\": 29243,\n  \"ammo</w>\": 33474,\n  \"ammunition</w>\": 35060,\n  \"amn</w>\": 24073,\n  \"amne\": 14596,\n  \"amnesia</w>\": 41741,\n  \"amnesty\": 46330,\n  \"amnesty</w>\": 21177,\n  \"amo\": 4833,\n  \"amo</w>\": 11156,\n  \"amodi</w>\": 9826,\n  \"amon\": 17492,\n  \"amon</w>\": 24046,\n  \"among\": 12310,\n  \"among</w>\": 4265,\n  \"amongst</w>\": 12520,\n  \"amoo</w>\": 26977,\n  \"amor\": 19977,\n  \"amor</w>\": 15973,\n  \"amore\": 38937,\n  \"amore</w>\": 22691,\n  \"amores</w>\": 36338,\n  \"amos</w>\": 18133,\n  \"amoto</w>\": 25492,\n  \"amount</w>\": 6403,\n  \"amounts</w>\": 16747,\n  \"amour</w>\": 29908,\n  \"amovie</w>\": 41062,\n  \"amp\": 3521,\n  \"amp</w>\": 6259,\n  \"amped</w>\": 22640,\n  \"amphi\": 16379,\n  \"amphibious</w>\": 45206,\n  \"amphitheater</w>\": 41285,\n  \"amphitheatre</w>\": 44039,\n  \"ample</w>\": 34162,\n  \"amples</w>\": 14536,\n  \"ampli\": 15647,\n  \"amplifier</w>\": 31743,\n  \"amplify</w>\": 45308,\n  \"amps</w>\": 19252,\n  \"ampton\": 29410,\n  \"ampton</w>\": 9347,\n  \"amr</w>\": 30916,\n  \"amreading</w>\": 16546,\n  \"amrit\": 33849,\n  \"ams</w>\": 1396,\n  \"amster\": 9110,\n  \"amsterdam</w>\": 9441,\n  \"amtrak</w>\": 27855,\n  \"amu\": 11347,\n  \"amu</w>\": 32336,\n  \"amur\": 35014,\n  \"amura</w>\": 35487,\n  \"amus</w>\": 36269,\n  \"amuse\": 21421,\n  \"amuse</w>\": 44367,\n  \"amused</w>\": 30212,\n  \"amusement</w>\": 32570,\n  \"amusic</w>\": 20266,\n  \"amusing</w>\": 31789,\n  \"amwriting</w>\": 9660,\n  \"amy\": 10547,\n  \"amy</w>\": 5187,\n  \"an\": 514,\n  \"an</w>\": 550,\n  \"ana\": 6588,\n  \"ana</w>\": 1388,\n  \"anab\": 34742,\n  \"anada</w>\": 27948,\n  \"anag\": 12115,\n  \"anagh</w>\": 40774,\n  \"anaheim</w>\": 23728,\n  \"anak\": 34814,\n  \"anak</w>\": 38658,\n  \"anal\": 2785,\n  \"analo\": 34179,\n  \"analog</w>\": 19963,\n  \"analogue</w>\": 46031,\n  \"analy\": 4611,\n  \"analyse</w>\": 47246,\n  \"analyses</w>\": 39695,\n  \"analysis</w>\": 5296,\n  \"analyst</w>\": 14198,\n  \"analysts</w>\": 28075,\n  \"analytical</w>\": 34550,\n  \"analytics</w>\": 8558,\n  \"analyze</w>\": 28519,\n  \"analyzing</w>\": 32107,\n  \"anam\": 29525,\n  \"anan\": 37215,\n  \"anand\": 25073,\n  \"anand</w>\": 22083,\n  \"anap\": 41566,\n  \"anarch\": 46405,\n  \"anarchi\": 39879,\n  \"anarchy</w>\": 27707,\n  \"anas\": 31382,\n  \"anas</w>\": 12633,\n  \"anast\": 48902,\n  \"anasta\": 22915,\n  \"anastasi\": 36534,\n  \"anastasia</w>\": 37975,\n  \"anat\": 10045,\n  \"anath</w>\": 31277,\n  \"anatom\": 33759,\n  \"anatomy</w>\": 15376,\n  \"anc\": 1124,\n  \"anc</w>\": 17758,\n  \"anca</w>\": 14583,\n  \"ance\": 7165,\n  \"ance</w>\": 884,\n  \"anced</w>\": 5071,\n  \"ancer</w>\": 17415,\n  \"ancers</w>\": 37296,\n  \"ances</w>\": 3515,\n  \"ancestor</w>\": 43904,\n  \"ancestors</w>\": 24405,\n  \"ancestral</w>\": 41615,\n  \"ancestry</w>\": 30922,\n  \"anch\": 9489,\n  \"anche</w>\": 34679,\n  \"ancho\": 26610,\n  \"anchor\": 20030,\n  \"anchor</w>\": 13201,\n  \"anchorage</w>\": 31950,\n  \"anchored</w>\": 45926,\n  \"anchors</w>\": 37830,\n  \"anci\": 4192,\n  \"ancient\": 31495,\n  \"ancient</w>\": 5810,\n  \"ancies</w>\": 21647,\n  \"ancing</w>\": 7797,\n  \"anco</w>\": 15459,\n  \"ancy\": 16282,\n  \"ancy</w>\": 3633,\n  \"and\": 672,\n  \"and</w>\": 537,\n  \"anda</w>\": 2911,\n  \"andalu\": 31443,\n  \"andco</w>\": 36302,\n  \"ande\": 26889,\n  \"ande</w>\": 30354,\n  \"ander\": 3740,\n  \"ander</w>\": 3935,\n  \"anders</w>\": 10880,\n  \"andersen</w>\": 32661,\n  \"anderson\": 26683,\n  \"anderson</w>\": 6510,\n  \"andes</w>\": 24052,\n  \"andfriends</w>\": 36871,\n  \"andhi</w>\": 21617,\n  \"andhra</w>\": 32452,\n  \"andi\": 28870,\n  \"andi</w>\": 14354,\n  \"andie</w>\": 46318,\n  \"andme</w>\": 42831,\n  \"ando\": 35950,\n  \"ando</w>\": 5986,\n  \"andolan</w>\": 48965,\n  \"andon</w>\": 36488,\n  \"andor\": 45243,\n  \"andover</w>\": 44177,\n  \"andr\": 22661,\n  \"andra\": 46795,\n  \"andra</w>\": 21730,\n  \"andre\": 2657,\n  \"andre</w>\": 9400,\n  \"andrea</w>\": 10895,\n  \"andreas</w>\": 20444,\n  \"andrei</w>\": 42137,\n  \"andres</w>\": 25197,\n  \"andretti</w>\": 44291,\n  \"andrew\": 11717,\n  \"andrew</w>\": 4847,\n  \"andrews</w>\": 14506,\n  \"andri\": 37208,\n  \"andro\": 4417,\n  \"andro</w>\": 17980,\n  \"android\": 24284,\n  \"android</w>\": 5191,\n  \"androidgames</w>\": 46572,\n  \"andromeda</w>\": 42942,\n  \"andrÃ©</w>\": 35609,\n  \"ands</w>\": 32257,\n  \"andthe\": 22111,\n  \"andu\": 44200,\n  \"andum</w>\": 47266,\n  \"andy\": 9447,\n  \"andy</w>\": 2888,\n  \"ane\": 5846,\n  \"ane</w>\": 3051,\n  \"anec\": 33965,\n  \"anem\": 41395,\n  \"anemone</w>\": 49019,\n  \"aneous</w>\": 48273,\n  \"anes</w>\": 15381,\n  \"anese</w>\": 48778,\n  \"anesthe\": 30622,\n  \"anesthesia</w>\": 43353,\n  \"anew\": 39084,\n  \"anew</w>\": 47341,\n  \"anews</w>\": 20919,\n  \"aney</w>\": 22387,\n  \"anfield</w>\": 26993,\n  \"ang\": 883,\n  \"ang</w>\": 2704,\n  \"anga</w>\": 11641,\n  \"angames</w>\": 43178,\n  \"angan</w>\": 28264,\n  \"angas</w>\": 46180,\n  \"ange\": 2960,\n  \"ange</w>\": 3039,\n  \"angel\": 5029,\n  \"angel</w>\": 5130,\n  \"angela</w>\": 12354,\n  \"angeles</w>\": 7382,\n  \"angeli\": 15265,\n  \"angelic</w>\": 41038,\n  \"angelica</w>\": 38582,\n  \"angelina</w>\": 28890,\n  \"angelo</w>\": 14342,\n  \"angelou</w>\": 41328,\n  \"angels</w>\": 7809,\n  \"anger\": 32737,\n  \"anger</w>\": 6788,\n  \"angerous</w>\": 39716,\n  \"angers</w>\": 29756,\n  \"angh\": 34030,\n  \"angi\": 28003,\n  \"angi</w>\": 24301,\n  \"angie</w>\": 18859,\n  \"angle\": 21749,\n  \"angle</w>\": 6946,\n  \"angled</w>\": 32322,\n  \"angler</w>\": 22284,\n  \"anglers</w>\": 41608,\n  \"angles</w>\": 18627,\n  \"anglesey</w>\": 31850,\n  \"anglia</w>\": 32076,\n  \"anglic\": 28322,\n  \"anglican</w>\": 33284,\n  \"angling</w>\": 36824,\n  \"anglo\": 39515,\n  \"anglo</w>\": 30408,\n  \"ango</w>\": 19090,\n  \"angola</w>\": 36636,\n  \"angor</w>\": 41740,\n  \"angp</w>\": 19992,\n  \"angry\": 33910,\n  \"angry</w>\": 9054,\n  \"angs</w>\": 18441,\n  \"angst</w>\": 41714,\n  \"angu\": 11209,\n  \"angular\": 43584,\n  \"angular</w>\": 24981,\n  \"angularjs</w>\": 48608,\n  \"angus</w>\": 19688,\n  \"ani\": 1326,\n  \"ani</w>\": 3624,\n  \"ania</w>\": 9866,\n  \"anian</w>\": 9945,\n  \"anians</w>\": 39393,\n  \"anic</w>\": 23113,\n  \"anie\": 26697,\n  \"anie</w>\": 7671,\n  \"anil\": 28589,\n  \"anil</w>\": 34619,\n  \"anim\": 2190,\n  \"animal\": 10697,\n  \"animal</w>\": 4668,\n  \"animalrights</w>\": 42859,\n  \"animals</w>\": 4995,\n  \"animate</w>\": 40076,\n  \"animated</w>\": 13360,\n  \"animation</w>\": 10344,\n  \"animations</w>\": 42870,\n  \"animator</w>\": 42591,\n  \"anime\": 23314,\n  \"anime</w>\": 6469,\n  \"anin</w>\": 45735,\n  \"aning</w>\": 30972,\n  \"anir\": 27089,\n  \"anirud\": 35278,\n  \"anirudhofficial</w>\": 45917,\n  \"anis\": 40986,\n  \"anis</w>\": 47556,\n  \"anism</w>\": 20947,\n  \"anist</w>\": 16729,\n  \"anistan</w>\": 9727,\n  \"aniston</w>\": 47344,\n  \"anit\": 23683,\n  \"anita</w>\": 18544,\n  \"anium</w>\": 14794,\n  \"anj\": 22443,\n  \"anja</w>\": 43440,\n  \"anjali</w>\": 38834,\n  \"anjo</w>\": 47353,\n  \"ank\": 13339,\n  \"ank</w>\": 10029,\n  \"anka</w>\": 45324,\n  \"ankara</w>\": 34309,\n  \"ankle</w>\": 14777,\n  \"ankles</w>\": 48688,\n  \"ann\": 850,\n  \"ann</w>\": 5424,\n  \"anna\": 13821,\n  \"anna</w>\": 2160,\n  \"annab\": 22336,\n  \"annabelle</w>\": 47661,\n  \"annah\": 39166,\n  \"annah</w>\": 14327,\n  \"annak\": 41720,\n  \"annan</w>\": 32166,\n  \"annapolis</w>\": 34491,\n  \"annas\": 48467,\n  \"anne\": 9139,\n  \"anne</w>\": 4083,\n  \"anned</w>\": 27352,\n  \"anner</w>\": 12642,\n  \"annes</w>\": 24343,\n  \"annette</w>\": 36821,\n  \"annex\": 42958,\n  \"annex</w>\": 46389,\n  \"anni\": 2438,\n  \"anni</w>\": 13728,\n  \"annie\": 37270,\n  \"annie</w>\": 12173,\n  \"annies</w>\": 43184,\n  \"annihil\": 32734,\n  \"annis</w>\": 24742,\n  \"anniv</w>\": 31399,\n  \"anniver\": 29671,\n  \"annivers\": 42836,\n  \"anniversaire</w>\": 30882,\n  \"anniversary</w>\": 3048,\n  \"anno\": 9901,\n  \"anno</w>\": 26871,\n  \"annon</w>\": 26385,\n  \"annot\": 30411,\n  \"announ\": 1806,\n  \"announce</w>\": 3682,\n  \"announced</w>\": 4103,\n  \"announcement</w>\": 6932,\n  \"announcements</w>\": 23735,\n  \"announcer</w>\": 33626,\n  \"announces</w>\": 6500,\n  \"announcing</w>\": 11593,\n  \"annoy</w>\": 45138,\n  \"annoyed</w>\": 29863,\n  \"annoying</w>\": 15248,\n  \"annu\": 21698,\n  \"annual</w>\": 2906,\n  \"annually</w>\": 23703,\n  \"anny\": 34313,\n  \"anny</w>\": 5291,\n  \"ano\": 5617,\n  \"ano</w>\": 2658,\n  \"anom\": 21612,\n  \"anomaly</w>\": 46811,\n  \"anon\": 47079,\n  \"anon</w>\": 13667,\n  \"anonym\": 38605,\n  \"anonymous</w>\": 15036,\n  \"anoo\": 25690,\n  \"anor\": 13243,\n  \"anor</w>\": 16596,\n  \"anos</w>\": 20132,\n  \"another\": 29274,\n  \"another</w>\": 1380,\n  \"anova</w>\": 24116,\n  \"ans\": 24586,\n  \"ans</w>\": 885,\n  \"ansari</w>\": 40748,\n  \"ansel\": 40356,\n  \"answ\": 3369,\n  \"answe\": 14391,\n  \"answer</w>\": 4518,\n  \"answered</w>\": 14499,\n  \"answering</w>\": 18280,\n  \"answers</w>\": 8692,\n  \"ant\": 1103,\n  \"ant</w>\": 773,\n  \"anta</w>\": 3023,\n  \"antag\": 41745,\n  \"antal\": 39355,\n  \"antalya</w>\": 47440,\n  \"antan\": 32899,\n  \"antarc\": 21338,\n  \"antarctic</w>\": 27077,\n  \"antarctica</w>\": 22587,\n  \"ante\": 19311,\n  \"ante</w>\": 9769,\n  \"antebellum</w>\": 41683,\n  \"antelope</w>\": 39177,\n  \"anten\": 35517,\n  \"antenna</w>\": 26370,\n  \"anter\": 46508,\n  \"antes</w>\": 14927,\n  \"antgrasso</w>\": 39074,\n  \"anth\": 3737,\n  \"anth</w>\": 29741,\n  \"antha</w>\": 47981,\n  \"anthe\": 34167,\n  \"anthem</w>\": 12504,\n  \"anthi</w>\": 45261,\n  \"anthology</w>\": 21009,\n  \"anthony\": 17477,\n  \"anthony</w>\": 6113,\n  \"anthro\": 10019,\n  \"anthropo\": 18538,\n  \"anthropology</w>\": 32407,\n  \"anthus</w>\": 37639,\n  \"anti\": 3120,\n  \"anti</w>\": 3564,\n  \"antibio\": 18954,\n  \"antibiotic</w>\": 34387,\n  \"antibiotics</w>\": 29499,\n  \"antibody</w>\": 49018,\n  \"antic\": 8260,\n  \"anticip\": 11435,\n  \"anticipate</w>\": 38280,\n  \"anticipated</w>\": 18605,\n  \"anticipating</w>\": 48067,\n  \"anticipation</w>\": 26983,\n  \"antics</w>\": 37126,\n  \"antidote</w>\": 45476,\n  \"antifa</w>\": 35926,\n  \"antigua</w>\": 39910,\n  \"antine</w>\": 17641,\n  \"antino</w>\": 27818,\n  \"antioxid\": 23010,\n  \"antioxidant</w>\": 37452,\n  \"antioxidants</w>\": 34208,\n  \"antiqu\": 21745,\n  \"antique\": 46517,\n  \"antique</w>\": 9060,\n  \"antiques</w>\": 17365,\n  \"antis</w>\": 19748,\n  \"antisemitism</w>\": 36630,\n  \"antit\": 37833,\n  \"antitrust</w>\": 49343,\n  \"antlers</w>\": 47720,\n  \"antly</w>\": 5265,\n  \"anto\": 16826,\n  \"anto</w>\": 24486,\n  \"antoine</w>\": 25188,\n  \"anton\": 5497,\n  \"anton</w>\": 19644,\n  \"antoni\": 39958,\n  \"antonio\": 30497,\n  \"antonio</w>\": 7842,\n  \"antony</w>\": 30707,\n  \"antrim</w>\": 40252,\n  \"ants</w>\": 1589,\n  \"antv</w>\": 47520,\n  \"antw\": 44460,\n  \"antwer\": 26970,\n  \"antwerp</w>\": 33797,\n  \"antz</w>\": 25684,\n  \"anu\": 8537,\n  \"anu</w>\": 17152,\n  \"anup\": 29617,\n  \"anus</w>\": 27084,\n  \"anush\": 22765,\n  \"anushka\": 42080,\n  \"anushka</w>\": 39822,\n  \"anushkasharma</w>\": 44203,\n  \"anwar</w>\": 34261,\n  \"anxi\": 9021,\n  \"anxiety</w>\": 11103,\n  \"anxious</w>\": 27793,\n  \"any\": 1307,\n  \"any</w>\": 1504,\n  \"anya</w>\": 11173,\n  \"anybody</w>\": 10071,\n  \"anyi</w>\": 41632,\n  \"anymore</w>\": 7372,\n  \"anyone</w>\": 2302,\n  \"anything</w>\": 3582,\n  \"anytime</w>\": 13924,\n  \"anyway</w>\": 8931,\n  \"anyways</w>\": 19778,\n  \"anywhere</w>\": 8863,\n  \"anz\": 14445,\n  \"anz</w>\": 19425,\n  \"anza</w>\": 14669,\n  \"anzac</w>\": 31977,\n  \"ao\": 7313,\n  \"ao</w>\": 5703,\n  \"aoa</w>\": 47119,\n  \"aoc</w>\": 31918,\n  \"aofficial</w>\": 30840,\n  \"aoki</w>\": 33602,\n  \"aol</w>\": 40643,\n  \"aon\": 30928,\n  \"aon</w>\": 48476,\n  \"aor\": 32044,\n  \"aos</w>\": 46860,\n  \"ap\": 688,\n  \"ap</w>\": 2728,\n  \"apa\": 36954,\n  \"apa</w>\": 13537,\n  \"apac</w>\": 34320,\n  \"apache</w>\": 23921,\n  \"apal\": 38017,\n  \"apan</w>\": 36562,\n  \"apar\": 9161,\n  \"apark</w>\": 32528,\n  \"apart\": 6474,\n  \"apart</w>\": 7803,\n  \"aparthe\": 25121,\n  \"apartheid</w>\": 26597,\n  \"apartment</w>\": 8285,\n  \"apartments</w>\": 15791,\n  \"aparty</w>\": 26767,\n  \"apat\": 31755,\n  \"apathy</w>\": 18145,\n  \"apc</w>\": 20300,\n  \"apd</w>\": 44563,\n  \"ape\": 6098,\n  \"ape</w>\": 2609,\n  \"apec</w>\": 47530,\n  \"aper\": 13681,\n  \"aper</w>\": 5858,\n  \"apers</w>\": 15846,\n  \"apes</w>\": 9550,\n  \"apeu\": 19040,\n  \"apex\": 41935,\n  \"apex</w>\": 23712,\n  \"aph\": 16341,\n  \"aph</w>\": 29491,\n  \"apha</w>\": 47104,\n  \"apho\": 21758,\n  \"aphra\": 44147,\n  \"api\": 23342,\n  \"api</w>\": 14674,\n  \"apia</w>\": 44259,\n  \"apic\": 40679,\n  \"aping</w>\": 18456,\n  \"apink</w>\": 35725,\n  \"apis</w>\": 37575,\n  \"apk</w>\": 27648,\n  \"apo\": 4089,\n  \"apo</w>\": 19758,\n  \"apocaly\": 13932,\n  \"apocalypse</w>\": 17571,\n  \"apocalyptic</w>\": 35675,\n  \"apol\": 5023,\n  \"apolice</w>\": 45663,\n  \"apolis</w>\": 9598,\n  \"apollo\": 48213,\n  \"apollo</w>\": 11554,\n  \"apolo\": 31094,\n  \"apolog\": 25530,\n  \"apologe\": 42908,\n  \"apologi\": 14977,\n  \"apologies</w>\": 21959,\n  \"apologise</w>\": 39608,\n  \"apologize</w>\": 22879,\n  \"apologizes</w>\": 35298,\n  \"apology</w>\": 20768,\n  \"apor\": 21871,\n  \"apore</w>\": 6679,\n  \"apost\": 20309,\n  \"apostle</w>\": 33051,\n  \"apostles</w>\": 48457,\n  \"app\": 882,\n  \"app</w>\": 2231,\n  \"appa\": 4884,\n  \"appa</w>\": 13110,\n  \"appalach\": 30523,\n  \"appalachian</w>\": 36806,\n  \"appalling</w>\": 44797,\n  \"appar\": 26698,\n  \"apparatus</w>\": 37716,\n  \"apparel</w>\": 13972,\n  \"apparent</w>\": 23963,\n  \"apparently</w>\": 5287,\n  \"appe\": 3748,\n  \"appe</w>\": 45949,\n  \"appeal</w>\": 9625,\n  \"appealing</w>\": 25909,\n  \"appeals</w>\": 22447,\n  \"appear\": 5544,\n  \"appear</w>\": 9308,\n  \"appearance</w>\": 7238,\n  \"appearances</w>\": 17214,\n  \"appeared</w>\": 11561,\n  \"appearing</w>\": 18759,\n  \"appears</w>\": 8743,\n  \"appell\": 43833,\n  \"appen\": 37201,\n  \"appen</w>\": 26589,\n  \"apper</w>\": 18780,\n  \"appet\": 21686,\n  \"appeti\": 24179,\n  \"appetite</w>\": 24481,\n  \"appetizer</w>\": 36065,\n  \"applau\": 24713,\n  \"applaud</w>\": 42152,\n  \"applause</w>\": 22650,\n  \"apple\": 8629,\n  \"apple</w>\": 3055,\n  \"applemusic</w>\": 21390,\n  \"apples</w>\": 14032,\n  \"appleton</w>\": 45250,\n  \"appli\": 15495,\n  \"appliance</w>\": 33677,\n  \"appliances</w>\": 22134,\n  \"applic\": 4235,\n  \"applicable</w>\": 37927,\n  \"applicants</w>\": 28035,\n  \"application</w>\": 7241,\n  \"applications</w>\": 7341,\n  \"applied</w>\": 12636,\n  \"applies</w>\": 24910,\n  \"apply</w>\": 4356,\n  \"applying</w>\": 17965,\n  \"appo\": 5433,\n  \"appoint</w>\": 36190,\n  \"appointed</w>\": 11087,\n  \"appointment</w>\": 10890,\n  \"appointments</w>\": 23439,\n  \"appoints</w>\": 25132,\n  \"apprais\": 36972,\n  \"appraisal</w>\": 46108,\n  \"appreci\": 3474,\n  \"appreciate</w>\": 6263,\n  \"appreciated</w>\": 9264,\n  \"appreciates</w>\": 36573,\n  \"appreciating</w>\": 39352,\n  \"appreciation</w>\": 9212,\n  \"appreciationday</w>\": 37438,\n  \"appreciative</w>\": 45074,\n  \"appren\": 10582,\n  \"apprentic\": 15662,\n  \"apprentice\": 19122,\n  \"apprentice</w>\": 17985,\n  \"apprentices</w>\": 38252,\n  \"apprenticeship</w>\": 26939,\n  \"apprenticeships</w>\": 35425,\n  \"appro\": 2398,\n  \"approach\": 7781,\n  \"approach</w>\": 6241,\n  \"approached</w>\": 36499,\n  \"approaches</w>\": 14962,\n  \"approaching</w>\": 12164,\n  \"appropri\": 8446,\n  \"appropriate</w>\": 10768,\n  \"appropriately</w>\": 30383,\n  \"appropriation</w>\": 49110,\n  \"approval</w>\": 13549,\n  \"approve</w>\": 19064,\n  \"approved</w>\": 9412,\n  \"approves</w>\": 18107,\n  \"approx</w>\": 18266,\n  \"approxim\": 14201,\n  \"approximately</w>\": 16128,\n  \"apps</w>\": 7020,\n  \"appstore</w>\": 31377,\n  \"appt</w>\": 48112,\n  \"appy</w>\": 34420,\n  \"apr\": 39396,\n  \"apr</w>\": 11177,\n  \"apra\": 37027,\n  \"apric\": 25923,\n  \"apricot</w>\": 30815,\n  \"april\": 23548,\n  \"april</w>\": 2484,\n  \"apro\": 42712,\n  \"apro</w>\": 49051,\n  \"apron</w>\": 29502,\n  \"aps</w>\": 8868,\n  \"apse</w>\": 31843,\n  \"apt</w>\": 17921,\n  \"aptly</w>\": 47313,\n  \"apu\": 22166,\n  \"apur\": 36900,\n  \"apur</w>\": 45193,\n  \"aq\": 14018,\n  \"aq</w>\": 26862,\n  \"aqu\": 4458,\n  \"aqua</w>\": 18613,\n  \"aquaculture</w>\": 41885,\n  \"aquaman</w>\": 35098,\n  \"aquari\": 37605,\n  \"aquarium</w>\": 16814,\n  \"aquarius</w>\": 38879,\n  \"aquatic</w>\": 22658,\n  \"aque\": 35927,\n  \"aque</w>\": 37268,\n  \"aqui\": 36826,\n  \"aquino</w>\": 33796,\n  \"ar\": 516,\n  \"ar</w>\": 625,\n  \"ara\": 24161,\n  \"ara</w>\": 3340,\n  \"arab\": 5405,\n  \"arab</w>\": 12028,\n  \"arabia</w>\": 11746,\n  \"arabian</w>\": 24663,\n  \"arabic</w>\": 16709,\n  \"arabs</w>\": 39155,\n  \"arac\": 47620,\n  \"arach\": 37689,\n  \"arag\": 41502,\n  \"araj</w>\": 45142,\n  \"arak\": 23416,\n  \"aram\": 19223,\n  \"aram</w>\": 21473,\n  \"arama</w>\": 49066,\n  \"aran\": 20839,\n  \"aran</w>\": 19641,\n  \"aras</w>\": 36399,\n  \"arat</w>\": 30856,\n  \"arav\": 35836,\n  \"arbit\": 20267,\n  \"arbitr\": 22702,\n  \"arbitration</w>\": 34845,\n  \"arbor\": 33516,\n  \"arbor</w>\": 24878,\n  \"arboretum</w>\": 41719,\n  \"arc\": 4997,\n  \"arc</w>\": 11592,\n  \"arca\": 25189,\n  \"arca</w>\": 37612,\n  \"arcade</w>\": 13331,\n  \"arcadia</w>\": 38372,\n  \"arch\": 2458,\n  \"arch</w>\": 8557,\n  \"archa\": 45619,\n  \"archae\": 10121,\n  \"archaeological</w>\": 26163,\n  \"archaeologists</w>\": 45035,\n  \"archaeology</w>\": 14868,\n  \"archan\": 33359,\n  \"archbishop</w>\": 23994,\n  \"arche\": 22474,\n  \"archer</w>\": 21824,\n  \"archers</w>\": 38407,\n  \"archery</w>\": 23935,\n  \"arches</w>\": 30771,\n  \"archi\": 4479,\n  \"archie</w>\": 20557,\n  \"archipel\": 39750,\n  \"archipelago</w>\": 43025,\n  \"architec\": 3359,\n  \"architect</w>\": 12192,\n  \"architects</w>\": 13290,\n  \"architectural</w>\": 15360,\n  \"architecture\": 39038,\n  \"architecture</w>\": 4920,\n  \"archival</w>\": 39249,\n  \"archive\": 42257,\n  \"archive</w>\": 10548,\n  \"archived</w>\": 42379,\n  \"archives</w>\": 9411,\n  \"archy</w>\": 15643,\n  \"arctic\": 29716,\n  \"arctic</w>\": 9138,\n  \"ard\": 3793,\n  \"ard</w>\": 746,\n  \"arden\": 44600,\n  \"arden</w>\": 27057,\n  \"ardi\": 23932,\n  \"ardi</w>\": 19837,\n  \"ardo\": 35735,\n  \"ardo</w>\": 9394,\n  \"ards</w>\": 1654,\n  \"ardu\": 20906,\n  \"arduino</w>\": 25398,\n  \"are\": 1076,\n  \"are</w>\": 631,\n  \"area</w>\": 2445,\n  \"areas</w>\": 5429,\n  \"arec\": 18136,\n  \"areclipse</w>\": 36030,\n  \"ared</w>\": 5369,\n  \"arel</w>\": 12798,\n  \"arella</w>\": 24784,\n  \"arelli</w>\": 48619,\n  \"aren\": 4033,\n  \"aren</w>\": 4318,\n  \"arena</w>\": 5463,\n  \"arenas</w>\": 47860,\n  \"arent</w>\": 37487,\n  \"arer</w>\": 14857,\n  \"arers</w>\": 33159,\n  \"ares</w>\": 12224,\n  \"arest</w>\": 11708,\n  \"aret</w>\": 22247,\n  \"areth</w>\": 47725,\n  \"aretha</w>\": 42090,\n  \"areyou\": 37607,\n  \"arez</w>\": 13108,\n  \"arg</w>\": 27285,\n  \"argent\": 7812,\n  \"argentina</w>\": 9789,\n  \"argentine</w>\": 32582,\n  \"argon\": 40737,\n  \"argos</w>\": 37443,\n  \"argu\": 7440,\n  \"arguably</w>\": 30899,\n  \"argue</w>\": 19788,\n  \"argued</w>\": 48153,\n  \"argues</w>\": 30045,\n  \"arguing</w>\": 26549,\n  \"argument</w>\": 16224,\n  \"arguments</w>\": 24693,\n  \"argus</w>\": 44300,\n  \"argy\": 21066,\n  \"argyle</w>\": 36179,\n  \"argyll</w>\": 40667,\n  \"ari\": 1221,\n  \"ari</w>\": 3681,\n  \"aria</w>\": 8883,\n  \"arial</w>\": 42431,\n  \"arian\": 29980,\n  \"arian</w>\": 6953,\n  \"ariana</w>\": 14892,\n  \"arianag\": 23025,\n  \"arianagrande</w>\": 23321,\n  \"arianism</w>\": 44351,\n  \"arians</w>\": 19104,\n  \"arias</w>\": 22567,\n  \"arie</w>\": 18774,\n  \"ariel\": 47959,\n  \"ariel</w>\": 21025,\n  \"aries</w>\": 5213,\n  \"arif</w>\": 46621,\n  \"arily</w>\": 12993,\n  \"arin\": 29564,\n  \"arin</w>\": 18612,\n  \"arina</w>\": 29271,\n  \"arine</w>\": 29586,\n  \"aring</w>\": 2142,\n  \"ario</w>\": 8862,\n  \"arios</w>\": 25392,\n  \"aris</w>\": 15227,\n  \"arise</w>\": 26490,\n  \"arist</w>\": 12110,\n  \"aristo\": 25666,\n  \"aristotle</w>\": 49156,\n  \"arities</w>\": 31069,\n  \"arity</w>\": 16608,\n  \"arium</w>\": 11809,\n  \"arius</w>\": 21482,\n  \"ariz\": 6516,\n  \"arized</w>\": 40167,\n  \"arizon\": 28936,\n  \"arizona</w>\": 7106,\n  \"arjun\": 24565,\n  \"arjun</w>\": 20477,\n  \"arjuna</w>\": 43835,\n  \"ark\": 11921,\n  \"ark</w>\": 12010,\n  \"arkansas</w>\": 12227,\n  \"arkham</w>\": 36381,\n  \"arl</w>\": 48542,\n  \"arlington\": 44940,\n  \"arlington</w>\": 17865,\n  \"arly</w>\": 3637,\n  \"arm\": 5671,\n  \"arm</w>\": 4793,\n  \"arma\": 15887,\n  \"arma</w>\": 38716,\n  \"armad\": 37897,\n  \"armada</w>\": 34938,\n  \"armagh</w>\": 44313,\n  \"armani</w>\": 31314,\n  \"armb\": 37096,\n  \"armchair</w>\": 45757,\n  \"armed\": 40471,\n  \"armed</w>\": 8202,\n  \"armen\": 13145,\n  \"armenia</w>\": 22008,\n  \"armenian</w>\": 24891,\n  \"armies</w>\": 46686,\n  \"armin\": 45481,\n  \"arming</w>\": 19766,\n  \"armist\": 38150,\n  \"armistice</w>\": 46765,\n  \"armor</w>\": 16167,\n  \"armored</w>\": 28214,\n  \"armory</w>\": 38610,\n  \"armour</w>\": 18503,\n  \"armoured</w>\": 42514,\n  \"arms</w>\": 5706,\n  \"armstrong</w>\": 15005,\n  \"army\": 13541,\n  \"army</w>\": 3133,\n  \"armys</w>\": 27311,\n  \"arn\": 9348,\n  \"arn</w>\": 37597,\n  \"arnau\": 45556,\n  \"arne</w>\": 43509,\n  \"arney</w>\": 35962,\n  \"arnold\": 49096,\n  \"arnold</w>\": 13609,\n  \"arns</w>\": 46692,\n  \"aro\": 7514,\n  \"aro</w>\": 11551,\n  \"aroa</w>\": 48209,\n  \"arom\": 16831,\n  \"aroma\": 40143,\n  \"aroma</w>\": 26390,\n  \"aromas</w>\": 47439,\n  \"aromatherapy</w>\": 42584,\n  \"aromatic</w>\": 39669,\n  \"aron\": 30855,\n  \"aron</w>\": 28926,\n  \"aroo</w>\": 47581,\n  \"arora</w>\": 31897,\n  \"arosa</w>\": 44264,\n  \"arose</w>\": 44262,\n  \"around\": 35615,\n  \"around</w>\": 1630,\n  \"arqu\": 35654,\n  \"arquitec\": 41703,\n  \"arr\": 39106,\n  \"arr</w>\": 42489,\n  \"arra\": 32918,\n  \"arra</w>\": 43827,\n  \"arrahman</w>\": 44554,\n  \"arran</w>\": 45722,\n  \"arrang\": 16711,\n  \"arrange\": 15410,\n  \"arrange</w>\": 26311,\n  \"arranged</w>\": 22451,\n  \"arrangement</w>\": 23822,\n  \"arrangements</w>\": 23792,\n  \"arranging</w>\": 35321,\n  \"array</w>\": 17293,\n  \"arre\": 4374,\n  \"arrell</w>\": 28846,\n  \"arrest</w>\": 9320,\n  \"arrested</w>\": 5845,\n  \"arresting</w>\": 43930,\n  \"arrests</w>\": 20683,\n  \"arri\": 2115,\n  \"arrival</w>\": 9073,\n  \"arrivals</w>\": 19583,\n  \"arrive</w>\": 8851,\n  \"arrived</w>\": 3514,\n  \"arrives</w>\": 9905,\n  \"arriving</w>\": 10884,\n  \"arro\": 15729,\n  \"arrog\": 26997,\n  \"arrogance</w>\": 47025,\n  \"arrogant</w>\": 40582,\n  \"arrow\": 30920,\n  \"arrow</w>\": 11149,\n  \"arrowhead</w>\": 46393,\n  \"arrows</w>\": 24768,\n  \"arroyo</w>\": 45237,\n  \"ars\": 42815,\n  \"ars</w>\": 864,\n  \"arse</w>\": 22665,\n  \"arsen\": 5330,\n  \"arsenal\": 45234,\n  \"arsenal</w>\": 6084,\n  \"arsene</w>\": 32117,\n  \"arson</w>\": 29937,\n  \"art\": 1486,\n  \"art</w>\": 794,\n  \"arta</w>\": 12031,\n  \"arte\": 13482,\n  \"arte</w>\": 12947,\n  \"artem\": 40387,\n  \"artemis</w>\": 45256,\n  \"arten</w>\": 37043,\n  \"arter\": 29449,\n  \"artery</w>\": 40062,\n  \"artes</w>\": 48629,\n  \"artforsale</w>\": 48239,\n  \"artgallery</w>\": 31982,\n  \"arth\": 7146,\n  \"arth</w>\": 20265,\n  \"arthistory</w>\": 39313,\n  \"arthr\": 20807,\n  \"arthritis</w>\": 22916,\n  \"arthro\": 43255,\n  \"arthur\": 35660,\n  \"arthur</w>\": 8550,\n  \"arti\": 1635,\n  \"arti</w>\": 34601,\n  \"artic\": 3003,\n  \"articho\": 30937,\n  \"artichoke</w>\": 39647,\n  \"article</w>\": 3550,\n  \"articles</w>\": 11939,\n  \"articul\": 40343,\n  \"articulate</w>\": 45444,\n  \"artif\": 8950,\n  \"artifact</w>\": 37718,\n  \"artifacts</w>\": 30249,\n  \"artificial\": 19357,\n  \"artificial</w>\": 12040,\n  \"artificialintelligence</w>\": 20799,\n  \"artillery</w>\": 24465,\n  \"artin\": 33168,\n  \"artin</w>\": 48540,\n  \"artis</w>\": 41794,\n  \"artisan\": 36389,\n  \"artisan</w>\": 21535,\n  \"artisans</w>\": 40140,\n  \"artist\": 14326,\n  \"artist</w>\": 2456,\n  \"artiste</w>\": 41402,\n  \"artistic</w>\": 12421,\n  \"artiston\": 48443,\n  \"artistry</w>\": 38570,\n  \"artists</w>\": 4899,\n  \"artistson\": 32127,\n  \"artistsontwitter</w>\": 39469,\n  \"artlovers</w>\": 35617,\n  \"arto\": 28464,\n  \"artof\": 31751,\n  \"artoftheday</w>\": 43990,\n  \"arton</w>\": 46744,\n  \"arts\": 22040,\n  \"arts</w>\": 3812,\n  \"artsy</w>\": 31588,\n  \"arturo</w>\": 38591,\n  \"artwit</w>\": 36713,\n  \"artwork</w>\": 4188,\n  \"artworks</w>\": 26215,\n  \"arty\": 45417,\n  \"arty</w>\": 25916,\n  \"aru\": 13757,\n  \"aru</w>\": 23907,\n  \"aruba</w>\": 40131,\n  \"arugula</w>\": 40770,\n  \"arum</w>\": 48732,\n  \"arun\": 16105,\n  \"arun</w>\": 31877,\n  \"arunach\": 47260,\n  \"arunjaitley</w>\": 44874,\n  \"arus</w>\": 22644,\n  \"arvin\": 16971,\n  \"arvind\": 21209,\n  \"arvind</w>\": 41079,\n  \"arvindkejriwal</w>\": 22971,\n  \"arvo</w>\": 45726,\n  \"arwx</w>\": 29824,\n  \"ary\": 4617,\n  \"ary</w>\": 856,\n  \"arya</w>\": 23594,\n  \"aryan</w>\": 34966,\n  \"as\": 587,\n  \"as</w>\": 601,\n  \"asa\": 39676,\n  \"asa</w>\": 11914,\n  \"asad</w>\": 42376,\n  \"asaki</w>\": 22455,\n  \"asam\": 40603,\n  \"asan\": 22379,\n  \"asan</w>\": 17841,\n  \"asana</w>\": 42363,\n  \"asant</w>\": 25536,\n  \"asants</w>\": 37766,\n  \"asap\": 24199,\n  \"asap</w>\": 10822,\n  \"asar\": 24733,\n  \"asar</w>\": 49299,\n  \"asb</w>\": 31186,\n  \"asbe\": 32113,\n  \"asbestos</w>\": 33765,\n  \"asc\": 22720,\n  \"asc</w>\": 23305,\n  \"ascen\": 20767,\n  \"ascension</w>\": 35499,\n  \"ascent</w>\": 36625,\n  \"asci\": 12753,\n  \"asco\": 25578,\n  \"asco</w>\": 17488,\n  \"ascot</w>\": 23723,\n  \"ascri\": 15506,\n  \"asd</w>\": 36988,\n  \"asda</w>\": 29391,\n  \"asdf\": 36857,\n  \"asdfghj\": 42758,\n  \"asdfghjkl</w>\": 47660,\n  \"ase\": 8083,\n  \"ase</w>\": 894,\n  \"asean</w>\": 24472,\n  \"aseball</w>\": 46903,\n  \"ased</w>\": 2134,\n  \"asen\": 41085,\n  \"aser\": 39615,\n  \"aser</w>\": 7209,\n  \"ases</w>\": 3762,\n  \"asf</w>\": 25863,\n  \"asg</w>\": 34813,\n  \"ash\": 2067,\n  \"ash</w>\": 2612,\n  \"asha\": 40572,\n  \"asha</w>\": 13472,\n  \"ashamed</w>\": 20633,\n  \"ashby</w>\": 46531,\n  \"ashe\": 48523,\n  \"ashe</w>\": 31752,\n  \"asher</w>\": 37585,\n  \"ashes</w>\": 12587,\n  \"asheville</w>\": 28897,\n  \"ashford</w>\": 37796,\n  \"ashi\": 15563,\n  \"ashi</w>\": 15934,\n  \"ashish</w>\": 33145,\n  \"ashland</w>\": 39938,\n  \"ashleigh</w>\": 49356,\n  \"ashley\": 17825,\n  \"ashley</w>\": 8957,\n  \"asho\": 20273,\n  \"ashok</w>\": 38141,\n  \"ashore</w>\": 31194,\n  \"ashram</w>\": 43445,\n  \"ashton\": 43264,\n  \"ashton</w>\": 12228,\n  \"ashtra</w>\": 18118,\n  \"asi\": 3596,\n  \"asi</w>\": 12562,\n  \"asia</w>\": 5741,\n  \"asian\": 21737,\n  \"asian</w>\": 7128,\n  \"asiangames</w>\": 49108,\n  \"asians</w>\": 36771,\n  \"asics</w>\": 31097,\n  \"aside</w>\": 13676,\n  \"asif</w>\": 37302,\n  \"asim</w>\": 46050,\n  \"asin\": 48432,\n  \"asin</w>\": 44347,\n  \"asing</w>\": 4194,\n  \"asingly</w>\": 15803,\n  \"asion</w>\": 31753,\n  \"asis</w>\": 12398,\n  \"ask\": 11027,\n  \"ask</w>\": 2765,\n  \"asked</w>\": 3993,\n  \"asking</w>\": 5914,\n  \"asks</w>\": 7953,\n  \"asl</w>\": 41650,\n  \"asleep</w>\": 10749,\n  \"asley</w>\": 28206,\n  \"asli</w>\": 44290,\n  \"asm</w>\": 13851,\n  \"asma</w>\": 38497,\n  \"asmsg</w>\": 19839,\n  \"aso\": 30343,\n  \"aso</w>\": 27932,\n  \"asober\": 43749,\n  \"asocial</w>\": 48557,\n  \"ason</w>\": 1163,\n  \"asone</w>\": 31249,\n  \"asons</w>\": 4249,\n  \"asos</w>\": 37924,\n  \"asot</w>\": 47968,\n  \"asp\": 17814,\n  \"asp</w>\": 36666,\n  \"asparag\": 20301,\n  \"asparagus</w>\": 20604,\n  \"aspe\": 10894,\n  \"aspect</w>\": 19681,\n  \"aspects</w>\": 18203,\n  \"aspen\": 35695,\n  \"aspen</w>\": 25712,\n  \"asper\": 32991,\n  \"asph\": 28019,\n  \"asphalt</w>\": 30574,\n  \"aspir\": 12669,\n  \"aspirations</w>\": 36127,\n  \"aspire</w>\": 24836,\n  \"aspiring</w>\": 21862,\n  \"asports</w>\": 43695,\n  \"asr</w>\": 48052,\n  \"asroma</w>\": 41000,\n  \"ass\": 12664,\n  \"ass</w>\": 5301,\n  \"assa</w>\": 47715,\n  \"assad</w>\": 18699,\n  \"assam</w>\": 19930,\n  \"assan\": 26352,\n  \"assange</w>\": 27565,\n  \"assas\": 9603,\n  \"assassin\": 14366,\n  \"assassin</w>\": 20029,\n  \"assassinated</w>\": 40488,\n  \"assassination</w>\": 24907,\n  \"assassins</w>\": 34918,\n  \"assassinscre\": 36428,\n  \"assassinscreed</w>\": 46082,\n  \"assau\": 7908,\n  \"assaul\": 19596,\n  \"assault</w>\": 9679,\n  \"assaulted</w>\": 30785,\n  \"assaulting</w>\": 44143,\n  \"asse\": 3166,\n  \"asse</w>\": 38600,\n  \"assel</w>\": 37582,\n  \"assemb\": 5531,\n  \"assemble</w>\": 26169,\n  \"assembled</w>\": 22627,\n  \"assemblies</w>\": 47406,\n  \"assembling</w>\": 38670,\n  \"assembly\": 34542,\n  \"assembly</w>\": 7059,\n  \"assen</w>\": 38651,\n  \"asser\": 25665,\n  \"asses</w>\": 21596,\n  \"assess\": 9209,\n  \"assess</w>\": 23211,\n  \"assessed</w>\": 44160,\n  \"assessing</w>\": 31364,\n  \"assessment</w>\": 10590,\n  \"assessments</w>\": 32753,\n  \"asset\": 48463,\n  \"asset</w>\": 13039,\n  \"assets</w>\": 13170,\n  \"assi\": 2907,\n  \"assi</w>\": 39540,\n  \"assie</w>\": 31624,\n  \"assign\": 14190,\n  \"assigned</w>\": 25767,\n  \"assignment</w>\": 17342,\n  \"assignments</w>\": 34257,\n  \"assim</w>\": 36394,\n  \"assimil\": 43467,\n  \"assist\": 26558,\n  \"assist</w>\": 10286,\n  \"assistance</w>\": 11685,\n  \"assistant</w>\": 6799,\n  \"assistants</w>\": 31054,\n  \"assisted</w>\": 18095,\n  \"assisting</w>\": 24243,\n  \"assists</w>\": 12675,\n  \"assn</w>\": 44208,\n  \"asso</w>\": 17617,\n  \"assoc</w>\": 18891,\n  \"associ\": 3566,\n  \"associate</w>\": 11777,\n  \"associated</w>\": 11164,\n  \"associates</w>\": 17358,\n  \"association</w>\": 5578,\n  \"associations</w>\": 33209,\n  \"assor\": 38604,\n  \"assorted</w>\": 36701,\n  \"assortment</w>\": 43112,\n  \"asst</w>\": 24767,\n  \"assu\": 8328,\n  \"assume</w>\": 19294,\n  \"assumed</w>\": 37661,\n  \"assuming</w>\": 29422,\n  \"assump\": 41182,\n  \"assumption</w>\": 40773,\n  \"assumptions</w>\": 45948,\n  \"assurance</w>\": 28408,\n  \"assure</w>\": 39161,\n  \"assured</w>\": 25591,\n  \"assures</w>\": 41988,\n  \"assy\": 29940,\n  \"assy</w>\": 12963,\n  \"ast\": 1761,\n  \"ast</w>\": 1242,\n  \"asta</w>\": 43269,\n  \"aste\": 25033,\n  \"aste</w>\": 25579,\n  \"aster\": 11013,\n  \"aster</w>\": 9526,\n  \"asteroid</w>\": 32253,\n  \"asters</w>\": 33139,\n  \"asth\": 16684,\n  \"asthma</w>\": 24610,\n  \"asthour</w>\": 41238,\n  \"astic</w>\": 15876,\n  \"asting</w>\": 29984,\n  \"astle</w>\": 46141,\n  \"asto\": 47275,\n  \"aston\": 24760,\n  \"aston</w>\": 13879,\n  \"astoni\": 21962,\n  \"astonishing</w>\": 27110,\n  \"astonmartin</w>\": 40760,\n  \"astor\": 26391,\n  \"astor</w>\": 47086,\n  \"astoria</w>\": 34798,\n  \"astounding</w>\": 37748,\n  \"astr\": 37609,\n  \"astra\": 47205,\n  \"astra</w>\": 36079,\n  \"astral</w>\": 45889,\n  \"astri\": 31243,\n  \"astrid</w>\": 46499,\n  \"astro\": 8563,\n  \"astro</w>\": 15318,\n  \"astrology</w>\": 28526,\n  \"astron\": 7982,\n  \"astronaut</w>\": 18376,\n  \"astronauts</w>\": 29733,\n  \"astronom\": 23264,\n  \"astronomer</w>\": 40036,\n  \"astronomers</w>\": 44268,\n  \"astronomical</w>\": 39775,\n  \"astronomy</w>\": 17472,\n  \"astrophotography</w>\": 38559,\n  \"astros</w>\": 17598,\n  \"asts</w>\": 10452,\n  \"astu\": 43137,\n  \"astur\": 45795,\n  \"asu\": 13157,\n  \"asu</w>\": 16001,\n  \"asun\": 36044,\n  \"asure</w>\": 3813,\n  \"asus</w>\": 27269,\n  \"aswell</w>\": 42978,\n  \"asx</w>\": 38906,\n  \"asy\": 8524,\n  \"asy</w>\": 2333,\n  \"asylum</w>\": 15638,\n  \"asym\": 32539,\n  \"at\": 527,\n  \"at</w>\": 536,\n  \"ata</w>\": 4236,\n  \"atable</w>\": 23909,\n  \"atal\": 24877,\n  \"atal</w>\": 24797,\n  \"atan</w>\": 33446,\n  \"atar\": 20128,\n  \"atar</w>\": 7995,\n  \"atari</w>\": 21549,\n  \"atas</w>\": 30057,\n  \"atay\": 39518,\n  \"atc</w>\": 28383,\n  \"atch</w>\": 15938,\n  \"atd</w>\": 33890,\n  \"ate\": 992,\n  \"ate</w>\": 671,\n  \"ateam</w>\": 42784,\n  \"ateau</w>\": 16359,\n  \"atec\": 37352,\n  \"atech</w>\": 31306,\n  \"ated\": 14589,\n  \"ated</w>\": 943,\n  \"atedly</w>\": 24698,\n  \"atee</w>\": 32839,\n  \"ateful</w>\": 5419,\n  \"atelier</w>\": 29932,\n  \"ately</w>\": 3862,\n  \"atem\": 17116,\n  \"aten</w>\": 47984,\n  \"atene\": 30405,\n  \"ateneo</w>\": 33904,\n  \"ater\": 18597,\n  \"ater</w>\": 5877,\n  \"ateral</w>\": 18819,\n  \"aters</w>\": 22364,\n  \"ates\": 20370,\n  \"ates</w>\": 1150,\n  \"atest</w>\": 1705,\n  \"ateur</w>\": 43677,\n  \"atf</w>\": 28013,\n  \"ath\": 1374,\n  \"ath</w>\": 1649,\n  \"atha</w>\": 22530,\n  \"atham</w>\": 23383,\n  \"athan\": 41260,\n  \"athan</w>\": 26701,\n  \"athe\": 8963,\n  \"athed</w>\": 47402,\n  \"atheism</w>\": 25823,\n  \"atheist</w>\": 22571,\n  \"atheists</w>\": 47155,\n  \"athen\": 29112,\n  \"athena</w>\": 30705,\n  \"athens</w>\": 13524,\n  \"ather\": 6171,\n  \"ather</w>\": 1817,\n  \"athered</w>\": 34091,\n  \"athers</w>\": 17266,\n  \"athi</w>\": 28918,\n  \"athing</w>\": 36069,\n  \"athle\": 3310,\n  \"athlete</w>\": 7388,\n  \"athletes</w>\": 7125,\n  \"athletic\": 33182,\n  \"athletic</w>\": 9028,\n  \"athletics</w>\": 7019,\n  \"athlon</w>\": 14670,\n  \"athome</w>\": 38217,\n  \"athon</w>\": 4951,\n  \"aths</w>\": 28835,\n  \"athy\": 34488,\n  \"athy</w>\": 13183,\n  \"ati\": 591,\n  \"ati</w>\": 6751,\n  \"atia</w>\": 10908,\n  \"atic\": 20248,\n  \"atic</w>\": 2647,\n  \"atically</w>\": 13558,\n  \"atics</w>\": 15666,\n  \"atie</w>\": 30137,\n  \"aties</w>\": 40060,\n  \"atif</w>\": 41592,\n  \"atiku</w>\": 37912,\n  \"atile</w>\": 15474,\n  \"atility</w>\": 23373,\n  \"atime</w>\": 20158,\n  \"atin\": 36903,\n  \"atin</w>\": 23047,\n  \"atine</w>\": 39741,\n  \"ating\": 25653,\n  \"ating</w>\": 1074,\n  \"atio</w>\": 35401,\n  \"ation\": 2265,\n  \"ation</w>\": 656,\n  \"ational\": 14205,\n  \"ational</w>\": 3108,\n  \"ationals</w>\": 44593,\n  \"ationday</w>\": 20082,\n  \"ations</w>\": 986,\n  \"atis\": 45456,\n  \"atis</w>\": 41142,\n  \"atism</w>\": 45638,\n  \"ative\": 18422,\n  \"ative</w>\": 1648,\n  \"atively</w>\": 11929,\n  \"atives</w>\": 5629,\n  \"ativity</w>\": 25166,\n  \"atkins</w>\": 27734,\n  \"atkinson</w>\": 28908,\n  \"atl\": 5411,\n  \"atl</w>\": 10629,\n  \"atla\": 36043,\n  \"atlan\": 6818,\n  \"atlanta\": 39964,\n  \"atlanta</w>\": 6839,\n  \"atlantic\": 28804,\n  \"atlantic</w>\": 8189,\n  \"atlantis</w>\": 27790,\n  \"atlas</w>\": 15775,\n  \"atle\": 21170,\n  \"atleast</w>\": 33231,\n  \"atleti</w>\": 46067,\n  \"atletico</w>\": 27501,\n  \"atm</w>\": 14127,\n  \"atmo\": 8271,\n  \"atmosphere</w>\": 10506,\n  \"atmospheric</w>\": 24223,\n  \"ato\": 7987,\n  \"ato</w>\": 4364,\n  \"atoday</w>\": 26799,\n  \"atom\": 22418,\n  \"atom</w>\": 24031,\n  \"atomic</w>\": 18996,\n  \"atoms</w>\": 41434,\n  \"aton\": 31525,\n  \"aton</w>\": 10012,\n  \"atop</w>\": 17455,\n  \"ator\": 10748,\n  \"ator</w>\": 1962,\n  \"atore</w>\": 28314,\n  \"atorial</w>\": 32040,\n  \"atories</w>\": 35678,\n  \"atorium</w>\": 41306,\n  \"ators</w>\": 3389,\n  \"atory</w>\": 5920,\n  \"atos</w>\": 41643,\n  \"atour</w>\": 42967,\n  \"atown</w>\": 24000,\n  \"atp\": 38105,\n  \"atp</w>\": 19817,\n  \"atr</w>\": 43247,\n  \"atra\": 20227,\n  \"atra</w>\": 14401,\n  \"atravel</w>\": 36981,\n  \"atre\": 46057,\n  \"atri\": 13882,\n  \"atri</w>\": 38889,\n  \"atric\": 32238,\n  \"atric</w>\": 13652,\n  \"atrics</w>\": 36253,\n  \"atrist</w>\": 41879,\n  \"atrium</w>\": 29725,\n  \"atrix</w>\": 43003,\n  \"atro\": 18724,\n  \"atroc\": 36197,\n  \"atrocities</w>\": 37551,\n  \"atry</w>\": 28334,\n  \"ats\": 46890,\n  \"ats</w>\": 1032,\n  \"atsu</w>\": 26531,\n  \"att\": 1017,\n  \"att</w>\": 7103,\n  \"atta\": 7282,\n  \"atta</w>\": 9146,\n  \"attach\": 43676,\n  \"attach</w>\": 35653,\n  \"attached</w>\": 11038,\n  \"attachment</w>\": 28638,\n  \"attack\": 24971,\n  \"attack</w>\": 3815,\n  \"attacked</w>\": 12366,\n  \"attacker</w>\": 39288,\n  \"attackers</w>\": 47701,\n  \"attacking</w>\": 16813,\n  \"attacks</w>\": 7321,\n  \"attain</w>\": 46459,\n  \"attar</w>\": 37110,\n  \"attemp\": 4933,\n  \"attempt</w>\": 7409,\n  \"attempted</w>\": 17408,\n  \"attempting</w>\": 18195,\n  \"attempts</w>\": 15610,\n  \"atten\": 4084,\n  \"atten</w>\": 32408,\n  \"attenborough</w>\": 45860,\n  \"attend\": 9841,\n  \"attend</w>\": 5802,\n  \"attendance</w>\": 11928,\n  \"attendant</w>\": 35424,\n  \"attended</w>\": 8140,\n  \"attendees</w>\": 14648,\n  \"attending</w>\": 6696,\n  \"attends</w>\": 22248,\n  \"attention</w>\": 4936,\n  \"atters</w>\": 30675,\n  \"atthe\": 21489,\n  \"atti\": 49265,\n  \"atti</w>\": 16235,\n  \"attic</w>\": 26766,\n  \"attire</w>\": 21222,\n  \"attitude</w>\": 10648,\n  \"attitudes</w>\": 27611,\n  \"attle\": 14685,\n  \"attle</w>\": 5030,\n  \"attn</w>\": 25677,\n  \"attor\": 8856,\n  \"attorney</w>\": 10372,\n  \"attorneys</w>\": 29113,\n  \"attrac\": 7154,\n  \"attract</w>\": 17010,\n  \"attracted</w>\": 28493,\n  \"attracting</w>\": 31909,\n  \"attraction</w>\": 16807,\n  \"attractions</w>\": 22307,\n  \"attractive</w>\": 12231,\n  \"attracts</w>\": 31024,\n  \"attribu\": 24624,\n  \"attributed</w>\": 37520,\n  \"attributes</w>\": 40763,\n  \"attu</w>\": 43173,\n  \"atty</w>\": 36705,\n  \"atu\": 15191,\n  \"atu</w>\": 24295,\n  \"atuesday</w>\": 34841,\n  \"atul\": 1744,\n  \"atul</w>\": 43948,\n  \"atum</w>\": 48295,\n  \"atur\": 14986,\n  \"aturday</w>\": 29027,\n  \"ature\": 25305,\n  \"ature</w>\": 4490,\n  \"atures</w>\": 7358,\n  \"atus</w>\": 14795,\n  \"atv</w>\": 19598,\n  \"atwood</w>\": 45680,\n  \"atwork</w>\": 39680,\n  \"atx\": 34849,\n  \"atx</w>\": 20136,\n  \"aty\": 40974,\n  \"aty</w>\": 33107,\n  \"atz</w>\": 30432,\n  \"au\": 627,\n  \"au</w>\": 2566,\n  \"aua</w>\": 45906,\n  \"aub</w>\": 45938,\n  \"auberg\": 49382,\n  \"aubre\": 25899,\n  \"aubrey</w>\": 34110,\n  \"auburn\": 42269,\n  \"auburn</w>\": 14534,\n  \"auc\": 24489,\n  \"auch</w>\": 43024,\n  \"auck\": 14588,\n  \"auckland</w>\": 16072,\n  \"auction\": 48160,\n  \"auction</w>\": 6462,\n  \"auctioned</w>\": 41073,\n  \"auctions</w>\": 24876,\n  \"aucus</w>\": 47374,\n  \"aud\": 16107,\n  \"aud</w>\": 19711,\n  \"audi\": 5091,\n  \"audi</w>\": 10277,\n  \"audible</w>\": 33227,\n  \"audience</w>\": 6863,\n  \"audiences</w>\": 22328,\n  \"audio\": 13792,\n  \"audio</w>\": 5766,\n  \"audiobook</w>\": 26282,\n  \"audit\": 12505,\n  \"audit</w>\": 17625,\n  \"auditi\": 37377,\n  \"audition</w>\": 18673,\n  \"auditions</w>\": 21134,\n  \"auditor</w>\": 38050,\n  \"auditorium</w>\": 15063,\n  \"audre\": 16075,\n  \"audrey</w>\": 18812,\n  \"audu\": 27934,\n  \"audubon</w>\": 40275,\n  \"auer</w>\": 33460,\n  \"auf</w>\": 28924,\n  \"aug\": 15397,\n  \"aug</w>\": 5720,\n  \"auga</w>\": 22797,\n  \"augh\": 28310,\n  \"augh</w>\": 14005,\n  \"augmente\": 48356,\n  \"augmented</w>\": 32708,\n  \"augu\": 2610,\n  \"august\": 24353,\n  \"august</w>\": 3171,\n  \"augusta</w>\": 26144,\n  \"augustine</w>\": 27397,\n  \"augustus</w>\": 36835,\n  \"auk</w>\": 19058,\n  \"aul\": 20695,\n  \"aul</w>\": 34391,\n  \"ault\": 47253,\n  \"ault</w>\": 10219,\n  \"aun\": 10608,\n  \"aun</w>\": 38721,\n  \"aunt</w>\": 12685,\n  \"auntie</w>\": 23783,\n  \"aunty</w>\": 29528,\n  \"aur\": 8156,\n  \"aur</w>\": 17282,\n  \"aura</w>\": 27728,\n  \"aure\": 36010,\n  \"aureli\": 35980,\n  \"auror\": 30067,\n  \"aurora</w>\": 13500,\n  \"aus\": 10624,\n  \"aus</w>\": 7630,\n  \"ausa</w>\": 37384,\n  \"ausbiz</w>\": 46543,\n  \"ausch\": 33926,\n  \"auschwitz</w>\": 36523,\n  \"ausopen</w>\": 27831,\n  \"ausp\": 35039,\n  \"auspicious</w>\": 38806,\n  \"auspol</w>\": 8241,\n  \"aussi\": 19762,\n  \"aussie\": 40230,\n  \"aussie</w>\": 14424,\n  \"aussies</w>\": 35727,\n  \"aust\": 26301,\n  \"aust</w>\": 25418,\n  \"austen</w>\": 29885,\n  \"auster\": 25030,\n  \"austerity</w>\": 26982,\n  \"austin\": 12845,\n  \"austin</w>\": 5125,\n  \"austinmahone</w>\": 34678,\n  \"austr\": 2518,\n  \"australi\": 13798,\n  \"australia</w>\": 3444,\n  \"australian\": 23630,\n  \"australian</w>\": 6258,\n  \"australians</w>\": 31488,\n  \"austri\": 8946,\n  \"austria</w>\": 11960,\n  \"austrian</w>\": 20638,\n  \"ausv\": 35206,\n  \"ausvotes</w>\": 34661,\n  \"aut</w>\": 12343,\n  \"auth\": 2381,\n  \"auth</w>\": 38247,\n  \"authent\": 18158,\n  \"authentic\": 41266,\n  \"authentic</w>\": 10369,\n  \"authentication</w>\": 39746,\n  \"authenticity</w>\": 35734,\n  \"autho\": 34552,\n  \"author\": 14447,\n  \"author</w>\": 4358,\n  \"authored</w>\": 37928,\n  \"authori\": 19207,\n  \"authorities</w>\": 12729,\n  \"authority</w>\": 10524,\n  \"authorization</w>\": 48854,\n  \"authorized</w>\": 28463,\n  \"authors</w>\": 10765,\n  \"auti\": 8200,\n  \"autism\": 36256,\n  \"autism</w>\": 11244,\n  \"autisma\": 43324,\n  \"autistic</w>\": 29360,\n  \"auto\": 3917,\n  \"auto</w>\": 5668,\n  \"autobiography</w>\": 31509,\n  \"autodesk</w>\": 40415,\n  \"autograph\": 10657,\n  \"autograph</w>\": 13722,\n  \"autographed</w>\": 16309,\n  \"autographs</w>\": 17376,\n  \"autoimmune</w>\": 45509,\n  \"autom\": 4114,\n  \"automate</w>\": 43203,\n  \"automated</w>\": 19022,\n  \"automatic</w>\": 12126,\n  \"automatically</w>\": 20725,\n  \"automation</w>\": 12328,\n  \"automobi\": 44813,\n  \"automobile</w>\": 25258,\n  \"automotive</w>\": 12607,\n  \"auton\": 13100,\n  \"autonews</w>\": 43975,\n  \"autonom\": 17870,\n  \"autonomous</w>\": 20722,\n  \"autonomy</w>\": 39223,\n  \"autopsy</w>\": 44436,\n  \"autos</w>\": 31118,\n  \"autoshow</w>\": 46788,\n  \"auts</w>\": 21140,\n  \"autu\": 5445,\n  \"autum\": 31783,\n  \"autumn\": 28940,\n  \"autumn</w>\": 6110,\n  \"autumnal</w>\": 35481,\n  \"aux\": 18154,\n  \"aux</w>\": 8909,\n  \"auxiliary</w>\": 37778,\n  \"av\": 722,\n  \"av</w>\": 8484,\n  \"ava</w>\": 12385,\n  \"avage</w>\": 31505,\n  \"avail\": 1651,\n  \"avail</w>\": 16686,\n  \"availability</w>\": 17551,\n  \"available</w>\": 1685,\n  \"aval\": 18012,\n  \"avalan\": 23970,\n  \"avalanche</w>\": 25815,\n  \"avalley</w>\": 45082,\n  \"avalon</w>\": 30436,\n  \"avan\": 27971,\n  \"avan</w>\": 33351,\n  \"avant</w>\": 24305,\n  \"avar\": 33423,\n  \"avatar</w>\": 18219,\n  \"ave\": 10062,\n  \"ave</w>\": 4860,\n  \"avec</w>\": 25828,\n  \"aved</w>\": 47918,\n  \"avel\": 46817,\n  \"avel</w>\": 48088,\n  \"aven\": 5963,\n  \"aven</w>\": 32971,\n  \"aveng\": 21935,\n  \"avenger</w>\": 24799,\n  \"avengers\": 39413,\n  \"avengers</w>\": 12016,\n  \"avengersendgame</w>\": 49342,\n  \"avent\": 22700,\n  \"avenue</w>\": 7042,\n  \"aver\": 8788,\n  \"aver</w>\": 11403,\n  \"average</w>\": 6254,\n  \"averaged</w>\": 37310,\n  \"averages</w>\": 48982,\n  \"averaging</w>\": 35266,\n  \"avery</w>\": 20313,\n  \"aves</w>\": 14023,\n  \"avfc</w>\": 21304,\n  \"avg</w>\": 19452,\n  \"avgeek</w>\": 11114,\n  \"avi\": 3324,\n  \"avi</w>\": 11297,\n  \"avia</w>\": 38710,\n  \"avian</w>\": 24115,\n  \"aviation\": 27717,\n  \"aviation</w>\": 7617,\n  \"aviator</w>\": 38921,\n  \"aviators</w>\": 48011,\n  \"avici\": 46192,\n  \"avicii</w>\": 49158,\n  \"avid</w>\": 19118,\n  \"avier</w>\": 14598,\n  \"avila</w>\": 45339,\n  \"aville</w>\": 40689,\n  \"avin\": 46204,\n  \"avis\": 45163,\n  \"avis</w>\": 19765,\n  \"aviv</w>\": 22130,\n  \"aviva</w>\": 47122,\n  \"aviz</w>\": 27607,\n  \"avl\": 44749,\n  \"avo\": 4496,\n  \"avo</w>\": 32400,\n  \"avoc\": 12291,\n  \"avocado</w>\": 14135,\n  \"avocados</w>\": 48911,\n  \"avoi\": 16797,\n  \"avoid\": 30448,\n  \"avoid</w>\": 5983,\n  \"avoidance</w>\": 47983,\n  \"avoided</w>\": 32103,\n  \"avoiding</w>\": 22086,\n  \"avoids</w>\": 48220,\n  \"avon\": 22790,\n  \"avon</w>\": 17348,\n  \"avril</w>\": 37763,\n  \"avs</w>\": 31896,\n  \"avut</w>\": 44472,\n  \"avy</w>\": 29973,\n  \"aw\": 808,\n  \"aw</w>\": 5557,\n  \"awa\": 4820,\n  \"awa</w>\": 6872,\n  \"await</w>\": 20769,\n  \"awaited</w>\": 20092,\n  \"awaiting</w>\": 14872,\n  \"awaits</w>\": 15635,\n  \"awak\": 9776,\n  \"awak</w>\": 41387,\n  \"awake</w>\": 14695,\n  \"awaken</w>\": 35412,\n  \"awakening</w>\": 17017,\n  \"awakens</w>\": 23191,\n  \"awal\": 42447,\n  \"awal</w>\": 35090,\n  \"awan\": 48869,\n  \"awan</w>\": 20420,\n  \"awar\": 5745,\n  \"award\": 36310,\n  \"award</w>\": 2047,\n  \"awarded</w>\": 7368,\n  \"awarding</w>\": 37089,\n  \"awards\": 34528,\n  \"awards</w>\": 2320,\n  \"aware\": 4427,\n  \"aware</w>\": 7196,\n  \"awareness\": 19217,\n  \"awareness</w>\": 4823,\n  \"awarenessmonth</w>\": 34278,\n  \"awarenessweek</w>\": 35294,\n  \"away\": 21088,\n  \"away</w>\": 1520,\n  \"aways</w>\": 12782,\n  \"awaz</w>\": 18586,\n  \"awd</w>\": 34846,\n  \"awe\": 1693,\n  \"awe</w>\": 14106,\n  \"aweather\": 42142,\n  \"aweather</w>\": 28681,\n  \"awec</w>\": 38916,\n  \"aweed</w>\": 29724,\n  \"awesom\": 16727,\n  \"awesome\": 30390,\n  \"awesome</w>\": 1848,\n  \"awesomeness</w>\": 22430,\n  \"awful</w>\": 13617,\n  \"awg</w>\": 46350,\n  \"awgs</w>\": 35275,\n  \"awh</w>\": 39566,\n  \"awhile</w>\": 19171,\n  \"awi</w>\": 15167,\n  \"awil\": 47271,\n  \"awilliams</w>\": 42163,\n  \"awk\": 8888,\n  \"awk</w>\": 40943,\n  \"awkward\": 42337,\n  \"awkward</w>\": 10304,\n  \"awn</w>\": 46222,\n  \"awp</w>\": 43300,\n  \"aws</w>\": 19658,\n  \"awsome</w>\": 47196,\n  \"awson</w>\": 36286,\n  \"aww</w>\": 11568,\n  \"awww</w>\": 15634,\n  \"awwww</w>\": 26460,\n  \"awx</w>\": 28385,\n  \"ax\": 3165,\n  \"ax</w>\": 9203,\n  \"axe</w>\": 19861,\n  \"axel\": 47889,\n  \"axel</w>\": 32131,\n  \"axes</w>\": 45970,\n  \"axi\": 30672,\n  \"axial</w>\": 46550,\n  \"axis</w>\": 19614,\n  \"axle</w>\": 39003,\n  \"axx\": 47411,\n  \"ay\": 658,\n  \"ay</w>\": 551,\n  \"aya</w>\": 5917,\n  \"ayala</w>\": 39827,\n  \"ayama</w>\": 41194,\n  \"ayan\": 37781,\n  \"ayan</w>\": 16269,\n  \"ayana</w>\": 37400,\n  \"ayas</w>\": 40904,\n  \"ayat\": 44902,\n  \"ayat</w>\": 35720,\n  \"aye\": 21661,\n  \"aye</w>\": 12446,\n  \"ayer</w>\": 24852,\n  \"ayers</w>\": 42783,\n  \"ayesha</w>\": 46570,\n  \"ayi</w>\": 33025,\n  \"ayles\": 44706,\n  \"ayne</w>\": 35669,\n  \"ayo\": 21929,\n  \"ayo</w>\": 18708,\n  \"ayr\": 23002,\n  \"ayr</w>\": 36473,\n  \"ayrshire</w>\": 32687,\n  \"ays</w>\": 785,\n  \"ayu</w>\": 40769,\n  \"ayurve\": 27185,\n  \"ayurveda</w>\": 38986,\n  \"ayush\": 44831,\n  \"ayy</w>\": 32514,\n  \"ayyy</w>\": 41052,\n  \"az\": 854,\n  \"az</w>\": 5468,\n  \"aza</w>\": 22883,\n  \"azad</w>\": 37838,\n  \"azalea</w>\": 34087,\n  \"azam</w>\": 34727,\n  \"azar</w>\": 27911,\n  \"azcardinals</w>\": 48846,\n  \"aze\": 41157,\n  \"aze</w>\": 28485,\n  \"azer\": 19169,\n  \"azerbai\": 20649,\n  \"azerbaijan</w>\": 23888,\n  \"azhar</w>\": 47019,\n  \"azi\": 23914,\n  \"azi</w>\": 18452,\n  \"azine</w>\": 29140,\n  \"azione</w>\": 48335,\n  \"aziz\": 41205,\n  \"aziz</w>\": 29630,\n  \"azo</w>\": 41227,\n  \"azon</w>\": 36854,\n  \"azores</w>\": 42826,\n  \"azte\": 33270,\n  \"aztec</w>\": 34749,\n  \"aztecs</w>\": 49387,\n  \"azu\": 27701,\n  \"azu</w>\": 46963,\n  \"azul</w>\": 39807,\n  \"azure</w>\": 18514,\n  \"azwx</w>\": 30262,\n  \"azy</w>\": 24783,\n  \"azz\": 9817,\n  \"azz</w>\": 26453,\n  \"azza</w>\": 22255,\n  \"azzi</w>\": 18758,\n  \"azzle</w>\": 39974,\n  \"azzo</w>\": 26779,\n  \"azzur\": 37055,\n  \"azzy</w>\": 44534,\n  \"aÃ±\": 23716,\n  \"aÃ±os</w>\": 41634,\n  \"b\": 65,\n  \"b</w>\": 321,\n  \"ba\": 932,\n  \"ba</w>\": 1792,\n  \"baa</w>\": 33004,\n  \"baahu\": 34145,\n  \"baahubali</w>\": 38663,\n  \"bab\": 1202,\n  \"bab</w>\": 19039,\n  \"baba</w>\": 12631,\n  \"babe\": 31177,\n  \"babe</w>\": 7716,\n  \"babes</w>\": 14253,\n  \"babies</w>\": 6635,\n  \"babs</w>\": 36217,\n  \"babu</w>\": 21623,\n  \"baby\": 7268,\n  \"baby</w>\": 1794,\n  \"babygirl</w>\": 39554,\n  \"babylon</w>\": 31928,\n  \"babymetal</w>\": 45013,\n  \"babys\": 22266,\n  \"babysitting</w>\": 34186,\n  \"bac\": 2791,\n  \"bac</w>\": 25867,\n  \"bacca</w>\": 40708,\n  \"bach\": 11773,\n  \"bach</w>\": 8758,\n  \"bachchan</w>\": 17690,\n  \"bachel\": 11283,\n  \"bachelor\": 45508,\n  \"bachelor</w>\": 16766,\n  \"bachelore\": 26009,\n  \"bachelorette</w>\": 29093,\n  \"bacher</w>\": 49211,\n  \"back\": 1663,\n  \"back</w>\": 893,\n  \"backbone</w>\": 35635,\n  \"backdrop</w>\": 20802,\n  \"backed</w>\": 12721,\n  \"backer</w>\": 22183,\n  \"backers</w>\": 32934,\n  \"background</w>\": 5994,\n  \"backgrounds</w>\": 28215,\n  \"backing</w>\": 14935,\n  \"backlash</w>\": 31519,\n  \"backpack</w>\": 14894,\n  \"backpacking</w>\": 29524,\n  \"backpacks</w>\": 37063,\n  \"backs</w>\": 7562,\n  \"backseat</w>\": 48812,\n  \"backstage</w>\": 9236,\n  \"backstreet\": 46337,\n  \"backthe\": 26127,\n  \"backto\": 18703,\n  \"backtoschool</w>\": 28730,\n  \"backtothe\": 43059,\n  \"backup</w>\": 14415,\n  \"backward</w>\": 37964,\n  \"backwards</w>\": 21283,\n  \"backyard</w>\": 12608,\n  \"bacon\": 48666,\n  \"bacon</w>\": 7104,\n  \"bacter\": 11814,\n  \"bacteria</w>\": 16556,\n  \"bacterial</w>\": 26101,\n  \"bad\": 2564,\n  \"bad</w>\": 2103,\n  \"bada</w>\": 37475,\n  \"badan</w>\": 39149,\n  \"badass</w>\": 11616,\n  \"baddest</w>\": 38112,\n  \"baden</w>\": 36690,\n  \"bader</w>\": 42254,\n  \"badge</w>\": 11301,\n  \"badger\": 32686,\n  \"badger</w>\": 22363,\n  \"badgers</w>\": 22521,\n  \"badges</w>\": 20084,\n  \"badlands</w>\": 43192,\n  \"badly</w>\": 13684,\n  \"badminton</w>\": 21412,\n  \"badoo</w>\": 33192,\n  \"bados</w>\": 25755,\n  \"bae\": 32834,\n  \"bae</w>\": 6855,\n  \"baek\": 18557,\n  \"baek</w>\": 32702,\n  \"baekhyun</w>\": 21572,\n  \"baes</w>\": 46332,\n  \"baf\": 13616,\n  \"baff\": 35693,\n  \"bafta</w>\": 29199,\n  \"bag\": 3408,\n  \"bag</w>\": 3365,\n  \"bage</w>\": 9698,\n  \"bagel</w>\": 28777,\n  \"bagels</w>\": 37489,\n  \"baggage</w>\": 31402,\n  \"bagged</w>\": 34047,\n  \"bagh\": 21659,\n  \"bagh</w>\": 37271,\n  \"baghdad</w>\": 30763,\n  \"bago</w>\": 25105,\n  \"bags</w>\": 6136,\n  \"bagu\": 27749,\n  \"baguette</w>\": 45334,\n  \"bah\": 8372,\n  \"bah</w>\": 16685,\n  \"baha\": 29592,\n  \"baham\": 43718,\n  \"bahamas</w>\": 21224,\n  \"bahan</w>\": 28704,\n  \"bahn</w>\": 33452,\n  \"bahrain</w>\": 12503,\n  \"bai\": 6232,\n  \"bai</w>\": 23339,\n  \"bail\": 22933,\n  \"bail</w>\": 16986,\n  \"bailey\": 27535,\n  \"bailey</w>\": 10180,\n  \"bain\": 40784,\n  \"bain</w>\": 21593,\n  \"bair\": 29059,\n  \"baird</w>\": 40474,\n  \"bait</w>\": 18010,\n  \"baj\": 20713,\n  \"baja\": 40418,\n  \"baja</w>\": 28374,\n  \"bajo</w>\": 32619,\n  \"bak\": 4059,\n  \"bak</w>\": 23742,\n  \"bakar</w>\": 41414,\n  \"bake\": 20736,\n  \"bake</w>\": 11878,\n  \"baked</w>\": 10364,\n  \"baker\": 27303,\n  \"baker</w>\": 7743,\n  \"bakers\": 35293,\n  \"bakers</w>\": 40231,\n  \"bakersfield</w>\": 40149,\n  \"bakery</w>\": 13377,\n  \"bakes</w>\": 43057,\n  \"bakhta\": 44912,\n  \"bakhtawar\": 46937,\n  \"bakhtawarbz</w>\": 47118,\n  \"baking</w>\": 11467,\n  \"baku\": 46417,\n  \"baku</w>\": 31852,\n  \"bal\": 1398,\n  \"bal</w>\": 2282,\n  \"bala</w>\": 20291,\n  \"balaji</w>\": 48694,\n  \"balance\": 42894,\n  \"balance</w>\": 6827,\n  \"balanced</w>\": 15273,\n  \"balances</w>\": 37733,\n  \"balancing</w>\": 23541,\n  \"balboa</w>\": 45098,\n  \"balcony</w>\": 16169,\n  \"bald\": 11153,\n  \"bald</w>\": 14875,\n  \"baldhead</w>\": 29191,\n  \"baldwin</w>\": 16242,\n  \"bale\": 48573,\n  \"bale</w>\": 18873,\n  \"bales</w>\": 42879,\n  \"bali\": 16432,\n  \"bali</w>\": 10900,\n  \"balkan</w>\": 48499,\n  \"balkans</w>\": 42987,\n  \"ball\": 3807,\n  \"ball</w>\": 1069,\n  \"balla\": 42246,\n  \"ballad</w>\": 33472,\n  \"ballarat</w>\": 46645,\n  \"ballard</w>\": 31750,\n  \"baller\": 49194,\n  \"baller</w>\": 25655,\n  \"ballerina</w>\": 34962,\n  \"ballers</w>\": 34173,\n  \"ballet</w>\": 10703,\n  \"balli\": 29406,\n  \"ballin\": 47444,\n  \"ballin</w>\": 33057,\n  \"balling</w>\": 47588,\n  \"ballis\": 46675,\n  \"ballistic</w>\": 36667,\n  \"ballo\": 8871,\n  \"ballon</w>\": 36469,\n  \"balloon</w>\": 13634,\n  \"balloons</w>\": 18130,\n  \"ballot</w>\": 14185,\n  \"ballots</w>\": 35051,\n  \"ballpark</w>\": 26080,\n  \"ballroom</w>\": 15493,\n  \"balls</w>\": 6927,\n  \"bally\": 17275,\n  \"bally</w>\": 29451,\n  \"balm</w>\": 24962,\n  \"balmain</w>\": 45929,\n  \"balo\": 12395,\n  \"baloch</w>\": 23173,\n  \"balochistan</w>\": 21918,\n  \"balot\": 44615,\n  \"balotelli</w>\": 45721,\n  \"bals</w>\": 44154,\n  \"balsam\": 29121,\n  \"balsamic</w>\": 32654,\n  \"balt</w>\": 24441,\n  \"balti\": 8400,\n  \"baltic</w>\": 23817,\n  \"baltimore\": 38502,\n  \"baltimore</w>\": 9582,\n  \"balu\": 38093,\n  \"bam\": 6383,\n  \"bam</w>\": 12686,\n  \"bama</w>\": 20021,\n  \"bambam</w>\": 34538,\n  \"bambi</w>\": 46596,\n  \"bamboo\": 49322,\n  \"bamboo</w>\": 16748,\n  \"ban\": 1159,\n  \"ban</w>\": 2777,\n  \"bana</w>\": 18428,\n  \"banan\": 38410,\n  \"banana</w>\": 8922,\n  \"bananas</w>\": 19121,\n  \"banc\": 39252,\n  \"band\": 4613,\n  \"band</w>\": 1963,\n  \"banda</w>\": 31865,\n  \"bandai</w>\": 42054,\n  \"bandana</w>\": 39265,\n  \"bandcamp</w>\": 32229,\n  \"banded</w>\": 37804,\n  \"bandic\": 44400,\n  \"bandit</w>\": 27639,\n  \"bandits</w>\": 33940,\n  \"bandra</w>\": 41393,\n  \"bands</w>\": 7858,\n  \"bandung</w>\": 29512,\n  \"bandwagon</w>\": 36432,\n  \"bandwidth</w>\": 48859,\n  \"bane</w>\": 9597,\n  \"banerjee</w>\": 48102,\n  \"banff</w>\": 29565,\n  \"bang\": 3524,\n  \"bang</w>\": 6907,\n  \"bangalore</w>\": 14697,\n  \"banger</w>\": 24872,\n  \"bangers</w>\": 38311,\n  \"banging</w>\": 33033,\n  \"bangkok</w>\": 12351,\n  \"bangla\": 10339,\n  \"bangla</w>\": 45928,\n  \"bangladesh</w>\": 11245,\n  \"bangle</w>\": 37634,\n  \"bangor</w>\": 31190,\n  \"bangs</w>\": 27992,\n  \"bangtan</w>\": 39131,\n  \"bani</w>\": 19732,\n  \"banjo</w>\": 27014,\n  \"bank\": 7061,\n  \"bank</w>\": 2723,\n  \"banker</w>\": 27316,\n  \"bankers</w>\": 30599,\n  \"bankholiday\": 48868,\n  \"banking</w>\": 9566,\n  \"bankno\": 49201,\n  \"bankof\": 39120,\n  \"bankrup\": 21904,\n  \"bankrupt\": 23077,\n  \"bankrupt</w>\": 37288,\n  \"bankruptcy</w>\": 23978,\n  \"banks</w>\": 6367,\n  \"banksy</w>\": 33350,\n  \"bann\": 5304,\n  \"banned</w>\": 12012,\n  \"banner</w>\": 9185,\n  \"banners</w>\": 23145,\n  \"banning</w>\": 26246,\n  \"bannon</w>\": 29710,\n  \"bano</w>\": 42947,\n  \"banquet</w>\": 14254,\n  \"bans</w>\": 15146,\n  \"bant\": 23301,\n  \"bant</w>\": 46657,\n  \"banter</w>\": 25535,\n  \"bao\": 39487,\n  \"bao</w>\": 20408,\n  \"bap\": 7415,\n  \"bap</w>\": 23754,\n  \"bapti\": 15477,\n  \"baptism</w>\": 36765,\n  \"baptist</w>\": 13274,\n  \"baptiste</w>\": 45770,\n  \"baptized</w>\": 45400,\n  \"bar\": 1040,\n  \"bar</w>\": 2411,\n  \"bara</w>\": 19345,\n  \"barack\": 18670,\n  \"barack</w>\": 22481,\n  \"barackobama</w>\": 18885,\n  \"barak\": 47419,\n  \"barak</w>\": 16260,\n  \"barang\": 38446,\n  \"barb\": 24173,\n  \"barb</w>\": 20913,\n  \"barbados</w>\": 26992,\n  \"barbar\": 7906,\n  \"barbara</w>\": 10937,\n  \"barbarian</w>\": 42530,\n  \"barbe\": 18372,\n  \"barbecue</w>\": 23501,\n  \"barber\": 19517,\n  \"barber</w>\": 12296,\n  \"barbershop</w>\": 37707,\n  \"barbican</w>\": 47668,\n  \"barbie</w>\": 16923,\n  \"barca</w>\": 22942,\n  \"barcel\": 6134,\n  \"barcelon\": 47820,\n  \"barcelona</w>\": 6412,\n  \"barclay\": 48877,\n  \"barclay</w>\": 45276,\n  \"barclays</w>\": 29538,\n  \"bard\": 39812,\n  \"bard</w>\": 17514,\n  \"bare\": 16023,\n  \"bare</w>\": 14318,\n  \"barefoot</w>\": 30327,\n  \"barely</w>\": 12684,\n  \"bargain</w>\": 15076,\n  \"bargaining</w>\": 41282,\n  \"bargains</w>\": 34126,\n  \"barge</w>\": 28272,\n  \"bari\": 21428,\n  \"bari</w>\": 28016,\n  \"barista</w>\": 31078,\n  \"barit\": 46300,\n  \"bark\": 32333,\n  \"bark</w>\": 16560,\n  \"barker</w>\": 20618,\n  \"barking</w>\": 32676,\n  \"barkley</w>\": 30266,\n  \"barley</w>\": 22607,\n  \"barlow</w>\": 25483,\n  \"barn\": 10490,\n  \"barn</w>\": 10942,\n  \"barnab\": 43272,\n  \"barnard</w>\": 44332,\n  \"barne\": 42527,\n  \"barnes</w>\": 13102,\n  \"barnet</w>\": 41943,\n  \"barnett</w>\": 27650,\n  \"barney</w>\": 24563,\n  \"barns</w>\": 43759,\n  \"barnsley\": 37109,\n  \"barnsley</w>\": 32153,\n  \"baro\": 17422,\n  \"baro</w>\": 30817,\n  \"baron\": 48371,\n  \"baron</w>\": 19349,\n  \"baroness</w>\": 45056,\n  \"barons</w>\": 45596,\n  \"baroque</w>\": 25065,\n  \"barr\": 39473,\n  \"barr</w>\": 22492,\n  \"barra\": 28442,\n  \"barra</w>\": 33542,\n  \"barrabest</w>\": 41376,\n  \"barrac\": 40835,\n  \"barracks</w>\": 35822,\n  \"barre\": 13840,\n  \"barre</w>\": 38257,\n  \"barred</w>\": 33261,\n  \"barrel</w>\": 11703,\n  \"barrels</w>\": 22059,\n  \"barren</w>\": 46743,\n  \"barrett</w>\": 18701,\n  \"barri\": 8660,\n  \"barric\": 29189,\n  \"barrie</w>\": 27090,\n  \"barrier</w>\": 15706,\n  \"barriers</w>\": 16321,\n  \"barrington</w>\": 48954,\n  \"barron</w>\": 34881,\n  \"barrow\": 42568,\n  \"barrow</w>\": 24983,\n  \"barry\": 18028,\n  \"barry</w>\": 8461,\n  \"barrymore</w>\": 49310,\n  \"bars</w>\": 8616,\n  \"barstool\": 44826,\n  \"bart\": 14838,\n  \"bart</w>\": 12870,\n  \"bartender</w>\": 33498,\n  \"barthol\": 48989,\n  \"bartlett</w>\": 37130,\n  \"bartol\": 38209,\n  \"barton\": 48853,\n  \"barton</w>\": 20345,\n  \"baru</w>\": 16356,\n  \"barun\": 38278,\n  \"barunsob\": 41398,\n  \"barÃ§a</w>\": 32788,\n  \"bas\": 1244,\n  \"bas</w>\": 11420,\n  \"basa</w>\": 26142,\n  \"base\": 2776,\n  \"base</w>\": 4579,\n  \"baseball\": 23479,\n  \"baseball</w>\": 3470,\n  \"based\": 35196,\n  \"based</w>\": 2812,\n  \"basel\": 42803,\n  \"basel</w>\": 20903,\n  \"baseline</w>\": 40648,\n  \"baseman</w>\": 45910,\n  \"basement</w>\": 14792,\n  \"bases</w>\": 20496,\n  \"bash\": 20462,\n  \"bash</w>\": 10972,\n  \"bashing</w>\": 37545,\n  \"bashir</w>\": 42799,\n  \"basic\": 40452,\n  \"basic</w>\": 7696,\n  \"basically</w>\": 9125,\n  \"basics</w>\": 15825,\n  \"basil\": 19225,\n  \"basil</w>\": 14936,\n  \"basilica</w>\": 27879,\n  \"basin</w>\": 16117,\n  \"basing\": 47321,\n  \"basis</w>\": 12278,\n  \"baske\": 3713,\n  \"basket</w>\": 10338,\n  \"basketball\": 40023,\n  \"basketball</w>\": 3835,\n  \"baskets</w>\": 27787,\n  \"basking</w>\": 39769,\n  \"basque</w>\": 37175,\n  \"bass\": 22831,\n  \"bass</w>\": 5992,\n  \"bassett</w>\": 45992,\n  \"bassist</w>\": 26496,\n  \"bast\": 28092,\n  \"basti\": 8559,\n  \"bastille</w>\": 41874,\n  \"bat\": 2121,\n  \"bat</w>\": 6575,\n  \"bata</w>\": 39277,\n  \"batb</w>\": 33962,\n  \"batch</w>\": 9413,\n  \"bate\": 25034,\n  \"bate</w>\": 28277,\n  \"bateman</w>\": 41635,\n  \"bates</w>\": 21727,\n  \"batgirl</w>\": 46460,\n  \"bath\": 6064,\n  \"bath</w>\": 5713,\n  \"bathing</w>\": 20144,\n  \"bathro\": 21201,\n  \"bathroom</w>\": 8470,\n  \"bathrooms</w>\": 26434,\n  \"baths</w>\": 19442,\n  \"bathtub</w>\": 39942,\n  \"bathurst</w>\": 36365,\n  \"bati\": 23362,\n  \"bati</w>\": 37589,\n  \"batman\": 27811,\n  \"batman</w>\": 7223,\n  \"baton</w>\": 24331,\n  \"bats</w>\": 14984,\n  \"batsman</w>\": 35432,\n  \"batt\": 2407,\n  \"batt</w>\": 48595,\n  \"battalion</w>\": 20820,\n  \"batter\": 12654,\n  \"batter</w>\": 31855,\n  \"battered</w>\": 34375,\n  \"batteries</w>\": 16666,\n  \"battersea</w>\": 35839,\n  \"battery</w>\": 7870,\n  \"batting</w>\": 17401,\n  \"battle\": 7344,\n  \"battle</w>\": 3528,\n  \"battled</w>\": 37837,\n  \"battlefield</w>\": 16055,\n  \"battlefront</w>\": 42214,\n  \"battleof\": 47560,\n  \"battles</w>\": 14213,\n  \"battleship</w>\": 35165,\n  \"battling</w>\": 17268,\n  \"bau\": 6055,\n  \"bau</w>\": 34840,\n  \"bauer</w>\": 22903,\n  \"baugh</w>\": 41301,\n  \"baum</w>\": 19840,\n  \"bautista</w>\": 31881,\n  \"bav\": 21075,\n  \"bavaria</w>\": 39977,\n  \"bavarian</w>\": 44458,\n  \"baw\": 19808,\n  \"bax\": 21216,\n  \"baxter</w>\": 26168,\n  \"bay\": 3631,\n  \"bay</w>\": 2174,\n  \"baya</w>\": 31573,\n  \"bayan</w>\": 43895,\n  \"bayarea</w>\": 28260,\n  \"bayer\": 48548,\n  \"bayer</w>\": 29183,\n  \"bayern</w>\": 14666,\n  \"baylor</w>\": 21721,\n  \"bayou</w>\": 33955,\n  \"bays</w>\": 40156,\n  \"baz\": 10430,\n  \"baz</w>\": 25268,\n  \"bazaar</w>\": 20070,\n  \"bazar</w>\": 49298,\n  \"bb\": 1174,\n  \"bb</w>\": 3529,\n  \"bba</w>\": 27762,\n  \"bball</w>\": 15664,\n  \"bbb</w>\": 33535,\n  \"bbc\": 5123,\n  \"bbc</w>\": 5188,\n  \"bbcc\": 39052,\n  \"bbce\": 33818,\n  \"bbcnews</w>\": 29370,\n  \"bbcone</w>\": 28259,\n  \"bbcqt</w>\": 37343,\n  \"bbcr</w>\": 35802,\n  \"bbcra\": 17115,\n  \"bbcradi\": 49213,\n  \"bbcradio</w>\": 22876,\n  \"bbcsport</w>\": 49321,\n  \"bbcspringwatch</w>\": 37358,\n  \"bbctwo</w>\": 40395,\n  \"bbcworld</w>\": 47340,\n  \"bbe</w>\": 37559,\n  \"bbed</w>\": 9077,\n  \"bber</w>\": 7933,\n  \"bbers</w>\": 36494,\n  \"bbhutto\": 28085,\n  \"bbhuttozardari</w>\": 28135,\n  \"bbi</w>\": 37047,\n  \"bbin</w>\": 38553,\n  \"bbing</w>\": 9787,\n  \"bbins</w>\": 42504,\n  \"bbl</w>\": 21961,\n  \"bble\": 26570,\n  \"bble</w>\": 5924,\n  \"bbled</w>\": 37626,\n  \"bbles</w>\": 18093,\n  \"bblo\": 21231,\n  \"bbloggers</w>\": 26614,\n  \"bbly</w>\": 43031,\n  \"bbm</w>\": 25382,\n  \"bbmas</w>\": 22145,\n  \"bbn</w>\": 28427,\n  \"bbnaija</w>\": 20984,\n  \"bbo</w>\": 21892,\n  \"bbq\": 41270,\n  \"bbq</w>\": 6726,\n  \"bbs</w>\": 10002,\n  \"bbuk</w>\": 45978,\n  \"bby\": 11166,\n  \"bby</w>\": 3810,\n  \"bc\": 3116,\n  \"bc</w>\": 2162,\n  \"bcc</w>\": 41509,\n  \"bcci</w>\": 36138,\n  \"bce</w>\": 36510,\n  \"bcfc</w>\": 34359,\n  \"bch</w>\": 36684,\n  \"bcn</w>\": 25766,\n  \"bcoz</w>\": 46373,\n  \"bcpoli</w>\": 24389,\n  \"bcs</w>\": 24909,\n  \"bcu</w>\": 28299,\n  \"bd\": 24358,\n  \"bd</w>\": 11165,\n  \"bday\": 33022,\n  \"bday</w>\": 5781,\n  \"bdg</w>\": 48418,\n  \"bds</w>\": 26732,\n  \"be\": 571,\n  \"be</w>\": 655,\n  \"bea\": 21886,\n  \"bea</w>\": 20925,\n  \"beach\": 6068,\n  \"beach</w>\": 2117,\n  \"beaches</w>\": 12183,\n  \"beachlife</w>\": 43824,\n  \"beacon\": 36883,\n  \"beacon</w>\": 18858,\n  \"beacons</w>\": 39395,\n  \"bead\": 31621,\n  \"bead</w>\": 23557,\n  \"beaded</w>\": 26661,\n  \"beads</w>\": 14099,\n  \"beagle</w>\": 30044,\n  \"beak</w>\": 36498,\n  \"beal</w>\": 45769,\n  \"beale</w>\": 39717,\n  \"beam\": 35339,\n  \"beam</w>\": 13663,\n  \"beams</w>\": 23993,\n  \"bean\": 16471,\n  \"bean</w>\": 5328,\n  \"beanie</w>\": 21534,\n  \"beans</w>\": 8302,\n  \"bear\": 6375,\n  \"bear</w>\": 4298,\n  \"bearable</w>\": 38608,\n  \"bearcats</w>\": 33242,\n  \"beard\": 26157,\n  \"beard</w>\": 9052,\n  \"bearded</w>\": 28459,\n  \"beardown</w>\": 43687,\n  \"beards</w>\": 33020,\n  \"bearer</w>\": 30686,\n  \"bearers</w>\": 47986,\n  \"bearing</w>\": 18370,\n  \"bearings</w>\": 42083,\n  \"bearish</w>\": 34829,\n  \"bears</w>\": 6182,\n  \"beasley</w>\": 43349,\n  \"beast\": 20847,\n  \"beast</w>\": 6957,\n  \"beastmode</w>\": 43076,\n  \"beasts</w>\": 21771,\n  \"beat\": 3774,\n  \"beat</w>\": 3018,\n  \"beaten</w>\": 10864,\n  \"beater</w>\": 41974,\n  \"beati\": 44386,\n  \"beating</w>\": 10078,\n  \"beatles</w>\": 11961,\n  \"beatport</w>\": 31421,\n  \"beatrice</w>\": 36922,\n  \"beats</w>\": 6289,\n  \"beatthe\": 40550,\n  \"beatty</w>\": 39903,\n  \"beatz</w>\": 33363,\n  \"beau\": 1016,\n  \"beau</w>\": 14298,\n  \"beaufort</w>\": 45423,\n  \"beaumont</w>\": 32857,\n  \"beaut</w>\": 24559,\n  \"beauti\": 1154,\n  \"beauties</w>\": 14874,\n  \"beautiful\": 13662,\n  \"beautiful</w>\": 1215,\n  \"beautifully</w>\": 10627,\n  \"beauty\": 12881,\n  \"beauty</w>\": 2488,\n  \"beav\": 23260,\n  \"beaver\": 26432,\n  \"beaver</w>\": 22874,\n  \"beavers</w>\": 34513,\n  \"beavs</w>\": 43909,\n  \"bebe</w>\": 23331,\n  \"bec\": 6899,\n  \"bec</w>\": 10773,\n  \"became</w>\": 5464,\n  \"because\": 32714,\n  \"because</w>\": 1631,\n  \"becca</w>\": 27088,\n  \"bech\": 44055,\n  \"beck\": 8256,\n  \"beck</w>\": 10396,\n  \"becker</w>\": 26918,\n  \"beckett</w>\": 27249,\n  \"beckham</w>\": 18764,\n  \"becky\": 32406,\n  \"becky</w>\": 18921,\n  \"become</w>\": 2989,\n  \"becomes</w>\": 6766,\n  \"becoming</w>\": 6208,\n  \"bed\": 4152,\n  \"bed</w>\": 2722,\n  \"bedding</w>\": 31761,\n  \"bedford</w>\": 20779,\n  \"bedi</w>\": 39181,\n  \"bedro\": 18415,\n  \"bedroom</w>\": 8411,\n  \"bedrooms</w>\": 23996,\n  \"beds</w>\": 13914,\n  \"bedside</w>\": 47473,\n  \"bedtime</w>\": 22115,\n  \"bee\": 6097,\n  \"bee</w>\": 5028,\n  \"beech\": 32733,\n  \"beech</w>\": 27596,\n  \"beef\": 21703,\n  \"beef</w>\": 6529,\n  \"beek</w>\": 37915,\n  \"been\": 33986,\n  \"been</w>\": 1025,\n  \"beep</w>\": 33432,\n  \"beer\": 8885,\n  \"beer</w>\": 2544,\n  \"beers</w>\": 10907,\n  \"bees\": 36249,\n  \"bees</w>\": 9100,\n  \"beet\": 12582,\n  \"beet</w>\": 28621,\n  \"beethoven</w>\": 23656,\n  \"beetle</w>\": 16534,\n  \"beetles</w>\": 36317,\n  \"beetro\": 29251,\n  \"beetroot</w>\": 31638,\n  \"beets</w>\": 36087,\n  \"before\": 20898,\n  \"before</w>\": 1348,\n  \"beg\": 2219,\n  \"beg</w>\": 22401,\n  \"began</w>\": 8636,\n  \"begg\": 36769,\n  \"begging</w>\": 25371,\n  \"begin\": 19197,\n  \"begin</w>\": 4947,\n  \"beginner</w>\": 24351,\n  \"beginners</w>\": 21930,\n  \"beginning</w>\": 5791,\n  \"beginnings</w>\": 22581,\n  \"begins</w>\": 4635,\n  \"begs</w>\": 43531,\n  \"begun</w>\": 10514,\n  \"beh\": 21971,\n  \"beh</w>\": 41612,\n  \"beha\": 5737,\n  \"behalf</w>\": 11470,\n  \"behave</w>\": 28825,\n  \"behaved</w>\": 41617,\n  \"behavi\": 6149,\n  \"behaving</w>\": 40745,\n  \"behavior</w>\": 10461,\n  \"behavioral</w>\": 25135,\n  \"behaviors</w>\": 37741,\n  \"behaviour</w>\": 14655,\n  \"behavioural</w>\": 46019,\n  \"behe\": 42329,\n  \"behin\": 2335,\n  \"behind</w>\": 2403,\n  \"behindthe\": 21104,\n  \"behindthescenes</w>\": 26253,\n  \"behold</w>\": 15929,\n  \"bei\": 38991,\n  \"bei</w>\": 23227,\n  \"beige</w>\": 26677,\n  \"beij\": 11547,\n  \"beijing</w>\": 11796,\n  \"bein\": 39117,\n  \"bein</w>\": 24168,\n  \"being\": 13481,\n  \"being</w>\": 1265,\n  \"beings</w>\": 17998,\n  \"beingsalmankhan</w>\": 19637,\n  \"beir\": 20176,\n  \"beirut</w>\": 22352,\n  \"beit</w>\": 26963,\n  \"bek\": 46846,\n  \"bek</w>\": 26135,\n  \"bekind</w>\": 46691,\n  \"bel\": 1308,\n  \"bel</w>\": 3543,\n  \"bela</w>\": 30555,\n  \"belarus</w>\": 30849,\n  \"belated</w>\": 20256,\n  \"belfast\": 35100,\n  \"belfast</w>\": 10015,\n  \"belgi\": 7001,\n  \"belgian</w>\": 15008,\n  \"belgium</w>\": 10239,\n  \"belgrade</w>\": 30502,\n  \"beli\": 1859,\n  \"beli</w>\": 45842,\n  \"belichick</w>\": 46132,\n  \"belie\": 20854,\n  \"beliebers</w>\": 27714,\n  \"belief</w>\": 14802,\n  \"beliefs</w>\": 20575,\n  \"believ\": 4972,\n  \"believe\": 15819,\n  \"believe</w>\": 2649,\n  \"believed</w>\": 13380,\n  \"believein\": 24294,\n  \"believeinfilm</w>\": 37375,\n  \"believer</w>\": 26057,\n  \"believers</w>\": 28434,\n  \"believes</w>\": 12017,\n  \"believing</w>\": 19551,\n  \"belinda</w>\": 44415,\n  \"belize</w>\": 27990,\n  \"bell\": 5417,\n  \"bell</w>\": 3718,\n  \"bella\": 18282,\n  \"bella</w>\": 10418,\n  \"bellamy</w>\": 34461,\n  \"bellator</w>\": 31985,\n  \"belle\": 13587,\n  \"belle</w>\": 11496,\n  \"belles</w>\": 40678,\n  \"bellevue</w>\": 32715,\n  \"belli\": 43335,\n  \"bellletstalk</w>\": 42695,\n  \"bello</w>\": 21954,\n  \"bells</w>\": 12811,\n  \"bellum</w>\": 35493,\n  \"belly\": 25901,\n  \"belly</w>\": 10404,\n  \"belmont</w>\": 25612,\n  \"belo\": 8379,\n  \"belo</w>\": 41649,\n  \"belong\": 16453,\n  \"belong</w>\": 13596,\n  \"belonged</w>\": 39893,\n  \"belonging</w>\": 28193,\n  \"belongs</w>\": 14395,\n  \"beloved</w>\": 9363,\n  \"below</w>\": 3788,\n  \"bels</w>\": 43127,\n  \"belt\": 36416,\n  \"belt</w>\": 7373,\n  \"belts</w>\": 21888,\n  \"belvedere</w>\": 48003,\n  \"ben\": 1465,\n  \"ben</w>\": 3518,\n  \"bena</w>\": 46249,\n  \"bench\": 17770,\n  \"bench</w>\": 8771,\n  \"benches</w>\": 36349,\n  \"benchmark</w>\": 31775,\n  \"bend\": 22100,\n  \"bend</w>\": 13332,\n  \"bender</w>\": 22551,\n  \"bendigo</w>\": 48197,\n  \"bending</w>\": 33897,\n  \"bene\": 12091,\n  \"bene</w>\": 47151,\n  \"beneath</w>\": 16850,\n  \"bened\": 13216,\n  \"benedic\": 24402,\n  \"benedict\": 47896,\n  \"benedict</w>\": 18027,\n  \"benef\": 3260,\n  \"benefici\": 38593,\n  \"beneficial</w>\": 24660,\n  \"beneficiaries</w>\": 42160,\n  \"benefit</w>\": 6399,\n  \"benefited</w>\": 48266,\n  \"benefiting</w>\": 29474,\n  \"benefits</w>\": 5465,\n  \"benefitting</w>\": 47222,\n  \"benevol\": 47060,\n  \"benfica</w>\": 33873,\n  \"beng\": 6962,\n  \"bengal\": 17404,\n  \"bengal</w>\": 16374,\n  \"bengali</w>\": 33774,\n  \"bengals</w>\": 23737,\n  \"bengaluru</w>\": 21707,\n  \"benghazi</w>\": 25967,\n  \"benin</w>\": 40296,\n  \"benitez</w>\": 46711,\n  \"benjam\": 10550,\n  \"benjamin\": 38647,\n  \"benjamin</w>\": 12131,\n  \"benji</w>\": 43548,\n  \"benn</w>\": 39097,\n  \"bennet</w>\": 48536,\n  \"bennett</w>\": 12186,\n  \"benny\": 42369,\n  \"benny</w>\": 20595,\n  \"beno\": 35268,\n  \"benoit</w>\": 44373,\n  \"benson</w>\": 19578,\n  \"bent\": 9809,\n  \"bent</w>\": 18369,\n  \"bentley</w>\": 16859,\n  \"benton</w>\": 30812,\n  \"benz\": 27937,\n  \"benz</w>\": 13470,\n  \"ber\": 867,\n  \"ber</w>\": 1516,\n  \"bera</w>\": 32802,\n  \"bere\": 17458,\n  \"bered</w>\": 9193,\n  \"beren\": 33654,\n  \"beret</w>\": 41658,\n  \"berg\": 12022,\n  \"berg</w>\": 3294,\n  \"bergen</w>\": 22918,\n  \"berger\": 35933,\n  \"berger</w>\": 13873,\n  \"bergh</w>\": 35120,\n  \"bergman</w>\": 42597,\n  \"bergs</w>\": 43592,\n  \"berk\": 15633,\n  \"berke\": 14639,\n  \"berkeley\": 46049,\n  \"berkeley</w>\": 16667,\n  \"berkshire</w>\": 27300,\n  \"berlin\": 23532,\n  \"berlin</w>\": 5891,\n  \"berman</w>\": 21514,\n  \"bermu\": 21032,\n  \"bermuda</w>\": 24644,\n  \"bern\": 9195,\n  \"bern</w>\": 18382,\n  \"bernade\": 46242,\n  \"bernar\": 11962,\n  \"bernard</w>\": 14579,\n  \"bernardino</w>\": 35328,\n  \"bernardo\": 27137,\n  \"bernardo</w>\": 28696,\n  \"bernardokath</w>\": 29081,\n  \"bernat\": 40578,\n  \"berni\": 18798,\n  \"bernie\": 40093,\n  \"bernie</w>\": 10503,\n  \"berniesanders</w>\": 23745,\n  \"bernstein</w>\": 33936,\n  \"berra</w>\": 15089,\n  \"berries</w>\": 8319,\n  \"berry\": 15334,\n  \"berry</w>\": 3488,\n  \"bers</w>\": 6408,\n  \"berser\": 39037,\n  \"bert\": 17340,\n  \"bert</w>\": 2358,\n  \"berta</w>\": 45187,\n  \"berth</w>\": 28317,\n  \"bertie</w>\": 47182,\n  \"berto</w>\": 34073,\n  \"bertr\": 36962,\n  \"bertrand</w>\": 41594,\n  \"berts</w>\": 30205,\n  \"berty</w>\": 35973,\n  \"berwick</w>\": 40407,\n  \"bery</w>\": 11411,\n  \"bes\": 26911,\n  \"bes</w>\": 3635,\n  \"beside</w>\": 13519,\n  \"besides</w>\": 17596,\n  \"bespoke</w>\": 15612,\n  \"bess</w>\": 43791,\n  \"best\": 3419,\n  \"best</w>\": 949,\n  \"bestbuy</w>\": 29749,\n  \"bestest</w>\": 31199,\n  \"bestfan\": 23880,\n  \"bestfanarmy</w>\": 24590,\n  \"bestfriend\": 29832,\n  \"bestfriend</w>\": 11856,\n  \"bestfriends</w>\": 23555,\n  \"besti\": 35210,\n  \"bestie</w>\": 17188,\n  \"besties</w>\": 27346,\n  \"besto\": 28615,\n  \"bestof\": 27892,\n  \"bestof</w>\": 39533,\n  \"bestseller</w>\": 25841,\n  \"bestselling</w>\": 28632,\n  \"bet\": 1051,\n  \"bet</w>\": 4430,\n  \"beta\": 43188,\n  \"beta</w>\": 9505,\n  \"betes</w>\": 10255,\n  \"beth\": 9993,\n  \"beth</w>\": 4892,\n  \"bethan\": 18781,\n  \"bethany\": 39130,\n  \"bethany</w>\": 27952,\n  \"bethe\": 12624,\n  \"bethel</w>\": 33410,\n  \"bethesda</w>\": 32527,\n  \"bethle\": 30760,\n  \"bethlehem</w>\": 31827,\n  \"betis</w>\": 45590,\n  \"beto</w>\": 33721,\n  \"betra\": 18436,\n  \"betrayal</w>\": 33171,\n  \"betrayed</w>\": 35692,\n  \"bets</w>\": 17107,\n  \"betsy</w>\": 28946,\n  \"bett\": 17715,\n  \"bett</w>\": 20489,\n  \"betta</w>\": 36387,\n  \"bette</w>\": 35855,\n  \"better\": 10320,\n  \"better</w>\": 1539,\n  \"bettertogether</w>\": 47392,\n  \"betting</w>\": 14319,\n  \"betts</w>\": 38637,\n  \"betty\": 36175,\n  \"betty</w>\": 14350,\n  \"between</w>\": 1957,\n  \"beu\": 38660,\n  \"bev\": 40324,\n  \"bev</w>\": 30968,\n  \"bever\": 9924,\n  \"beverage</w>\": 18694,\n  \"beverages</w>\": 28521,\n  \"beverley</w>\": 39165,\n  \"beverly\": 30906,\n  \"beverly</w>\": 16728,\n  \"beverlyhills</w>\": 45363,\n  \"beware</w>\": 14532,\n  \"bewithyou</w>\": 36787,\n  \"bex\": 18676,\n  \"bex</w>\": 24748,\n  \"bexhill</w>\": 49200,\n  \"bey\": 3234,\n  \"bey</w>\": 6767,\n  \"beyon\": 11447,\n  \"beyonce</w>\": 16632,\n  \"beyoncÃ©</w>\": 19219,\n  \"beyond\": 22246,\n  \"beyond</w>\": 4432,\n  \"bez\": 28592,\n  \"bez</w>\": 46764,\n  \"bezos</w>\": 45000,\n  \"bf\": 19858,\n  \"bf</w>\": 7990,\n  \"bfc</w>\": 37183,\n  \"bff</w>\": 11984,\n  \"bffs</w>\": 31462,\n  \"bfi</w>\": 34244,\n  \"bg\": 16674,\n  \"bg</w>\": 11295,\n  \"bgc</w>\": 47598,\n  \"bgs</w>\": 47963,\n  \"bgt</w>\": 40665,\n  \"bh\": 9930,\n  \"bh</w>\": 13603,\n  \"bha\": 6144,\n  \"bha</w>\": 33068,\n  \"bhafc</w>\": 30779,\n  \"bhagat</w>\": 49136,\n  \"bhai\": 48370,\n  \"bhai</w>\": 20508,\n  \"bhak\": 34501,\n  \"bham\": 31874,\n  \"bham</w>\": 23491,\n  \"bhan\": 27356,\n  \"bhand\": 48679,\n  \"bhar\": 9108,\n  \"bharat\": 27454,\n  \"bharat</w>\": 17430,\n  \"bharti</w>\": 46803,\n  \"bhat\": 23784,\n  \"bhatt</w>\": 36143,\n  \"bhav\": 44950,\n  \"bhi\": 28943,\n  \"bhi</w>\": 21955,\n  \"bhk</w>\": 45070,\n  \"bhm</w>\": 38741,\n  \"bho\": 19721,\n  \"bhopal</w>\": 44573,\n  \"bhp</w>\": 29776,\n  \"bhs</w>\": 29195,\n  \"bhu\": 9172,\n  \"bhuban\": 38729,\n  \"bhubanes\": 41213,\n  \"bhubaneswar</w>\": 45888,\n  \"bhushan</w>\": 40884,\n  \"bhutan</w>\": 32391,\n  \"bhutto</w>\": 30153,\n  \"bi\": 717,\n  \"bi</w>\": 3035,\n  \"bia</w>\": 3841,\n  \"biaf\": 26961,\n  \"biafra</w>\": 36355,\n  \"bian\": 19531,\n  \"bian</w>\": 9027,\n  \"bianca</w>\": 25854,\n  \"bianchi</w>\": 45720,\n  \"bians</w>\": 28141,\n  \"bias</w>\": 11268,\n  \"biased</w>\": 22178,\n  \"bib\": 44607,\n  \"bib</w>\": 21022,\n  \"bibi</w>\": 31182,\n  \"bibl\": 20912,\n  \"bible\": 26738,\n  \"bible</w>\": 7583,\n  \"bibli\": 23465,\n  \"biblical</w>\": 22841,\n  \"biblio\": 49131,\n  \"bic\": 5960,\n  \"bic</w>\": 10675,\n  \"bice\": 35589,\n  \"biceps</w>\": 46735,\n  \"bick\": 27238,\n  \"bicy\": 9247,\n  \"bicycle</w>\": 11652,\n  \"bicycles</w>\": 31326,\n  \"bid\": 21035,\n  \"bid</w>\": 5553,\n  \"bidding</w>\": 23237,\n  \"bide</w>\": 45178,\n  \"biden</w>\": 19451,\n  \"bids</w>\": 16148,\n  \"bie\": 5561,\n  \"bie</w>\": 4173,\n  \"bieber\": 48725,\n  \"bieber</w>\": 7535,\n  \"bien\": 19176,\n  \"bien</w>\": 25742,\n  \"biennale</w>\": 33776,\n  \"biennial</w>\": 36609,\n  \"bier\": 27226,\n  \"bier</w>\": 23508,\n  \"bies</w>\": 7867,\n  \"big\": 1915,\n  \"big</w>\": 1205,\n  \"bigbaldhead</w>\": 30325,\n  \"bigbang\": 41680,\n  \"bigbang</w>\": 23734,\n  \"bigdata</w>\": 9440,\n  \"bige\": 37762,\n  \"bigfoot</w>\": 37095,\n  \"bigg\": 15312,\n  \"bigg</w>\": 35399,\n  \"biggboss</w>\": 27056,\n  \"bigger</w>\": 6806,\n  \"biggest\": 19483,\n  \"biggest</w>\": 3505,\n  \"biggie</w>\": 28392,\n  \"biggs</w>\": 46507,\n  \"bigh\": 18106,\n  \"bighit</w>\": 35508,\n  \"bigo\": 14278,\n  \"bigolive</w>\": 20735,\n  \"bigotry</w>\": 37269,\n  \"bigre\": 36330,\n  \"bih</w>\": 33471,\n  \"bihar</w>\": 22849,\n  \"bij\": 42478,\n  \"bik\": 30306,\n  \"bike\": 11686,\n  \"bike</w>\": 3701,\n  \"biker\": 36100,\n  \"biker</w>\": 23449,\n  \"bikers</w>\": 29468,\n  \"bikes</w>\": 9227,\n  \"bikin\": 12638,\n  \"biking</w>\": 19157,\n  \"bikini</w>\": 14531,\n  \"bil\": 3092,\n  \"bil</w>\": 20506,\n  \"bilateral</w>\": 25599,\n  \"bilbao</w>\": 34802,\n  \"bild</w>\": 35512,\n  \"bile</w>\": 25943,\n  \"bilingual</w>\": 29623,\n  \"bilities</w>\": 13582,\n  \"bility</w>\": 4694,\n  \"bill\": 4444,\n  \"bill</w>\": 2886,\n  \"billboard</w>\": 10856,\n  \"billboards</w>\": 34741,\n  \"billed</w>\": 37558,\n  \"billi\": 7693,\n  \"billie</w>\": 23990,\n  \"billing</w>\": 31797,\n  \"billings</w>\": 43615,\n  \"billion\": 14520,\n  \"billion</w>\": 5729,\n  \"billionaire</w>\": 19475,\n  \"billionaires</w>\": 41590,\n  \"billions</w>\": 20742,\n  \"bills</w>\": 9810,\n  \"billsmafia</w>\": 48845,\n  \"billy\": 15626,\n  \"billy</w>\": 6814,\n  \"bilt\": 44770,\n  \"bilt</w>\": 26654,\n  \"bim\": 46737,\n  \"bim</w>\": 24775,\n  \"bin\": 4849,\n  \"bin</w>\": 5346,\n  \"binance</w>\": 43520,\n  \"binary</w>\": 23497,\n  \"bind</w>\": 44513,\n  \"binder</w>\": 30541,\n  \"binding</w>\": 21287,\n  \"bine</w>\": 34848,\n  \"bing\": 24818,\n  \"bing</w>\": 5665,\n  \"binge</w>\": 22600,\n  \"bingham\": 43785,\n  \"bingham</w>\": 47296,\n  \"bingo</w>\": 18418,\n  \"bino\": 29172,\n  \"bino</w>\": 24313,\n  \"bins</w>\": 26934,\n  \"bint\": 43647,\n  \"bio\": 2830,\n  \"bio</w>\": 5162,\n  \"biode\": 43502,\n  \"biodegradable</w>\": 47740,\n  \"biodiversity</w>\": 17428,\n  \"biof\": 45158,\n  \"biographical</w>\": 49232,\n  \"biography</w>\": 15423,\n  \"biological</w>\": 18821,\n  \"biologist</w>\": 35149,\n  \"biology</w>\": 9796,\n  \"biom\": 13010,\n  \"biomar\": 44549,\n  \"biomass</w>\": 36746,\n  \"biome\": 26218,\n  \"biomed\": 29280,\n  \"biomedical</w>\": 33117,\n  \"bionic</w>\": 46201,\n  \"biop\": 15009,\n  \"biopic</w>\": 27942,\n  \"bios</w>\": 48505,\n  \"biotech</w>\": 22514,\n  \"biotechnology</w>\": 40375,\n  \"biotic</w>\": 33773,\n  \"biotics</w>\": 41371,\n  \"bious</w>\": 31845,\n  \"bipartisan</w>\": 32266,\n  \"bipolar</w>\": 37097,\n  \"bique</w>\": 27809,\n  \"bir\": 921,\n  \"bir</w>\": 16284,\n  \"birch\": 31569,\n  \"birch</w>\": 22907,\n  \"bird\": 6908,\n  \"bird</w>\": 3329,\n  \"birdie</w>\": 29612,\n  \"birdies</w>\": 45618,\n  \"birding</w>\": 15851,\n  \"birdman</w>\": 41915,\n  \"birdphotography</w>\": 47999,\n  \"birds\": 41951,\n  \"birds</w>\": 4337,\n  \"birdwatching</w>\": 33497,\n  \"birk\": 48289,\n  \"birken\": 40661,\n  \"birmin\": 37482,\n  \"birmingham\": 38580,\n  \"birmingham</w>\": 7720,\n  \"birth\": 1128,\n  \"birth</w>\": 5397,\n  \"birthday\": 7381,\n  \"birthday</w>\": 1166,\n  \"birthdays</w>\": 17954,\n  \"birthplace</w>\": 31429,\n  \"biryani</w>\": 46489,\n  \"bis\": 5064,\n  \"bis</w>\": 14461,\n  \"biscu\": 11532,\n  \"biscuit</w>\": 18731,\n  \"biscuits</w>\": 18248,\n  \"bisexual</w>\": 36829,\n  \"bish\": 33690,\n  \"bish</w>\": 31461,\n  \"bishop\": 20625,\n  \"bishop</w>\": 8024,\n  \"bishops</w>\": 31579,\n  \"bison</w>\": 19741,\n  \"bistro</w>\": 21770,\n  \"bit\": 3010,\n  \"bit</w>\": 2010,\n  \"bitcoin\": 30848,\n  \"bitcoin</w>\": 6366,\n  \"bite</w>\": 41613,\n  \"biting</w>\": 23016,\n  \"bits</w>\": 7747,\n  \"bitt</w>\": 39251,\n  \"bius</w>\": 45525,\n  \"bix\": 46579,\n  \"biz\": 8212,\n  \"biz</w>\": 5431,\n  \"biza</w>\": 47013,\n  \"bizar\": 14886,\n  \"bizarre</w>\": 16965,\n  \"bizhour</w>\": 39462,\n  \"bizitalk</w>\": 34929,\n  \"bj\": 4592,\n  \"bj</w>\": 18229,\n  \"bjj</w>\": 27437,\n  \"bjor\": 26525,\n  \"bjp\": 37264,\n  \"bjp</w>\": 6178,\n  \"bk\": 15099,\n  \"bk</w>\": 14083,\n  \"bkk</w>\": 36433,\n  \"bl\": 833,\n  \"bl</w>\": 9467,\n  \"bla\": 2205,\n  \"bla</w>\": 19630,\n  \"blac\": 21008,\n  \"black\": 2025,\n  \"black</w>\": 1449,\n  \"blackand\": 12809,\n  \"blackandwhite\": 23688,\n  \"blackandwhite</w>\": 19506,\n  \"blackandwhitephotography</w>\": 27544,\n  \"blackberry</w>\": 16470,\n  \"blackbird</w>\": 38526,\n  \"blackburn</w>\": 23789,\n  \"blackfish</w>\": 42193,\n  \"blackfriday</w>\": 16445,\n  \"blackgirl\": 43591,\n  \"blackhawks</w>\": 19203,\n  \"blackhistory</w>\": 46982,\n  \"blackhistorymonth</w>\": 20135,\n  \"blacklist</w>\": 30295,\n  \"blacklivesmatter</w>\": 23467,\n  \"blackmail</w>\": 47295,\n  \"blackops</w>\": 43519,\n  \"blackout</w>\": 21733,\n  \"blackpanther</w>\": 36592,\n  \"blackpink</w>\": 20339,\n  \"blackpool</w>\": 21031,\n  \"blacks</w>\": 16351,\n  \"blackwell</w>\": 42642,\n  \"blad</w>\": 36635,\n  \"bladder</w>\": 33593,\n  \"blade</w>\": 10264,\n  \"blades</w>\": 16893,\n  \"blah</w>\": 29212,\n  \"blaine</w>\": 32457,\n  \"blair\": 31824,\n  \"blair</w>\": 14749,\n  \"blake\": 20229,\n  \"blake</w>\": 9579,\n  \"blame</w>\": 10695,\n  \"blamed</w>\": 32906,\n  \"blames</w>\": 27841,\n  \"blaming</w>\": 29287,\n  \"blan\": 4609,\n  \"blanc\": 30936,\n  \"blanc</w>\": 13301,\n  \"blanca</w>\": 40670,\n  \"blanchard</w>\": 40177,\n  \"blanche</w>\": 34875,\n  \"blanchett</w>\": 49378,\n  \"blanco</w>\": 26801,\n  \"bland\": 44372,\n  \"bland</w>\": 30799,\n  \"blank</w>\": 15134,\n  \"blanket</w>\": 12878,\n  \"blankets</w>\": 24042,\n  \"blanks</w>\": 48599,\n  \"blasio</w>\": 35553,\n  \"blasphe\": 36622,\n  \"blast\": 46349,\n  \"blast</w>\": 5964,\n  \"blasted</w>\": 38976,\n  \"blaster</w>\": 36341,\n  \"blasting</w>\": 26178,\n  \"blasts</w>\": 23067,\n  \"blat\": 22048,\n  \"blatant</w>\": 41391,\n  \"blatt</w>\": 39138,\n  \"blau\": 45307,\n  \"blaz\": 43413,\n  \"blaze</w>\": 15497,\n  \"blazer</w>\": 17606,\n  \"blazers</w>\": 16984,\n  \"blazing</w>\": 25267,\n  \"bldg</w>\": 22981,\n  \"ble\": 1447,\n  \"ble</w>\": 1059,\n  \"bleach</w>\": 27034,\n  \"bleak</w>\": 40355,\n  \"bled</w>\": 12006,\n  \"bleed\": 23027,\n  \"bleed</w>\": 24791,\n  \"bleedblue</w>\": 39160,\n  \"bleeding</w>\": 20311,\n  \"bleeds</w>\": 47339,\n  \"blen\": 25651,\n  \"blend</w>\": 10780,\n  \"blended</w>\": 25813,\n  \"blender</w>\": 25066,\n  \"blending</w>\": 34307,\n  \"blends</w>\": 28572,\n  \"bler\": 31305,\n  \"bler</w>\": 11979,\n  \"blers</w>\": 26930,\n  \"bles</w>\": 5763,\n  \"bless\": 9640,\n  \"bless</w>\": 5387,\n  \"blessed</w>\": 4411,\n  \"blessing</w>\": 10729,\n  \"blessings</w>\": 11185,\n  \"bleu</w>\": 30114,\n  \"blew</w>\": 18176,\n  \"bley</w>\": 43176,\n  \"bli\": 1450,\n  \"bli</w>\": 28051,\n  \"blin\": 9678,\n  \"blin</w>\": 5406,\n  \"blind\": 17248,\n  \"blind</w>\": 8351,\n  \"blinded</w>\": 49149,\n  \"blindness</w>\": 38812,\n  \"blinds</w>\": 32449,\n  \"bling\": 39764,\n  \"bling</w>\": 7097,\n  \"blink</w>\": 18976,\n  \"bliss\": 28531,\n  \"bliss</w>\": 12893,\n  \"blissful</w>\": 42145,\n  \"blit\": 39327,\n  \"blitz\": 42151,\n  \"blitz</w>\": 17548,\n  \"blizz\": 13075,\n  \"blizzard</w>\": 16111,\n  \"blk\": 42950,\n  \"blk</w>\": 22872,\n  \"blm</w>\": 30957,\n  \"bln</w>\": 47348,\n  \"blo\": 1204,\n  \"blo</w>\": 25505,\n  \"blob</w>\": 49312,\n  \"bloc</w>\": 30961,\n  \"block\": 4638,\n  \"block</w>\": 4593,\n  \"blockade</w>\": 33489,\n  \"blockbuster</w>\": 19939,\n  \"blockchain</w>\": 6653,\n  \"blocked</w>\": 9106,\n  \"blocker</w>\": 44767,\n  \"blocking</w>\": 12652,\n  \"blocks</w>\": 10113,\n  \"blog\": 16376,\n  \"blog</w>\": 2589,\n  \"blogg\": 33282,\n  \"blogged</w>\": 41380,\n  \"blogger\": 21352,\n  \"blogger</w>\": 7806,\n  \"bloggerrt</w>\": 48898,\n  \"bloggers</w>\": 11627,\n  \"blogging</w>\": 18090,\n  \"blogpost</w>\": 41842,\n  \"blogs</w>\": 16682,\n  \"bloke</w>\": 24384,\n  \"blom\": 48996,\n  \"blon\": 7958,\n  \"blond</w>\": 32426,\n  \"blonde</w>\": 10711,\n  \"blondes</w>\": 45130,\n  \"blondie</w>\": 39236,\n  \"bloo\": 2373,\n  \"blood\": 9231,\n  \"blood</w>\": 3590,\n  \"blooded</w>\": 41946,\n  \"bloodh\": 48480,\n  \"bloods</w>\": 39539,\n  \"bloody\": 38568,\n  \"bloody</w>\": 9468,\n  \"bloom\": 7311,\n  \"bloom</w>\": 10257,\n  \"bloomberg\": 43109,\n  \"bloomberg</w>\": 21238,\n  \"bloomfield</w>\": 40342,\n  \"blooming\": 45175,\n  \"blooming</w>\": 19266,\n  \"bloomington</w>\": 34731,\n  \"blooms</w>\": 21439,\n  \"bloss\": 10017,\n  \"blossom</w>\": 14472,\n  \"blossoms</w>\": 21916,\n  \"blot</w>\": 41710,\n  \"blou\": 44506,\n  \"blouse</w>\": 23525,\n  \"blow\": 15230,\n  \"blow</w>\": 10211,\n  \"blower</w>\": 25832,\n  \"blowing</w>\": 12087,\n  \"blown</w>\": 11848,\n  \"blowout</w>\": 34857,\n  \"blows</w>\": 21063,\n  \"blr</w>\": 47250,\n  \"bls</w>\": 39458,\n  \"blu\": 1263,\n  \"blu</w>\": 10273,\n  \"blue\": 3829,\n  \"blue</w>\": 1746,\n  \"bluebells</w>\": 47150,\n  \"blueberries</w>\": 29551,\n  \"blueberry</w>\": 18251,\n  \"bluebird</w>\": 40747,\n  \"bluec\": 43194,\n  \"bluef\": 41174,\n  \"bluegrass</w>\": 26241,\n  \"bluejays</w>\": 18684,\n  \"blueprint</w>\": 30594,\n  \"blues\": 17566,\n  \"blues</w>\": 5159,\n  \"blueslyrix</w>\": 47068,\n  \"bluet\": 13469,\n  \"bluetooth</w>\": 14052,\n  \"bluewave</w>\": 40025,\n  \"bluff</w>\": 27232,\n  \"bluffs</w>\": 48844,\n  \"blum</w>\": 34818,\n  \"blumen\": 38714,\n  \"blun\": 34472,\n  \"blunt</w>\": 19305,\n  \"blur\": 12102,\n  \"blur</w>\": 27976,\n  \"bluray</w>\": 36818,\n  \"blurred</w>\": 38013,\n  \"blurry</w>\": 21977,\n  \"blush</w>\": 22889,\n  \"blvd</w>\": 12578,\n  \"bly\": 20930,\n  \"bly</w>\": 4426,\n  \"bm\": 4773,\n  \"bm</w>\": 15916,\n  \"bma</w>\": 42573,\n  \"bmc</w>\": 27807,\n  \"bmi</w>\": 40642,\n  \"bmo</w>\": 39083,\n  \"bms</w>\": 34074,\n  \"bmw\": 26637,\n  \"bmw</w>\": 7869,\n  \"bmx</w>\": 22535,\n  \"bn\": 10496,\n  \"bn</w>\": 7992,\n  \"bnb</w>\": 20010,\n  \"bnha</w>\": 49336,\n  \"bnp</w>\": 47910,\n  \"bnw</w>\": 35903,\n  \"bo\": 647,\n  \"bo</w>\": 2525,\n  \"boa</w>\": 14732,\n  \"boar\": 7837,\n  \"boar</w>\": 35473,\n  \"board\": 10419,\n  \"board</w>\": 1972,\n  \"boarded</w>\": 43052,\n  \"boarder</w>\": 37414,\n  \"boardgame</w>\": 47829,\n  \"boardgames</w>\": 32646,\n  \"boarding</w>\": 10086,\n  \"boardroom</w>\": 47937,\n  \"boards</w>\": 7963,\n  \"boardwalk</w>\": 29043,\n  \"boast</w>\": 44467,\n  \"boasts</w>\": 30309,\n  \"boat\": 12426,\n  \"boat</w>\": 4440,\n  \"boath\": 45461,\n  \"boating</w>\": 21951,\n  \"boats</w>\": 10080,\n  \"boatsales</w>\": 46244,\n  \"bob\": 8444,\n  \"bob</w>\": 4423,\n  \"boba</w>\": 39948,\n  \"bobb\": 16891,\n  \"bobble</w>\": 38796,\n  \"bobblehead</w>\": 33451,\n  \"bobby\": 17847,\n  \"bobby</w>\": 7816,\n  \"bobc\": 26153,\n  \"bobcat</w>\": 37896,\n  \"bobcats</w>\": 27568,\n  \"bobo</w>\": 38939,\n  \"bobs</w>\": 45533,\n  \"boc\": 27307,\n  \"boc</w>\": 39042,\n  \"boca</w>\": 26094,\n  \"bock</w>\": 24961,\n  \"bod\": 17904,\n  \"bod</w>\": 26340,\n  \"boda</w>\": 42030,\n  \"bode\": 28452,\n  \"bode</w>\": 40429,\n  \"bodega</w>\": 47350,\n  \"bodied</w>\": 36892,\n  \"bodies</w>\": 9799,\n  \"bodily</w>\": 49119,\n  \"body\": 7132,\n  \"body</w>\": 1774,\n  \"bodybuilding</w>\": 24538,\n  \"bodyguard</w>\": 35565,\n  \"boe\": 23476,\n  \"boe</w>\": 21773,\n  \"boeh\": 38002,\n  \"boehner</w>\": 44599,\n  \"boeing\": 48135,\n  \"boeing</w>\": 11857,\n  \"boer\": 44889,\n  \"boer</w>\": 40768,\n  \"bog\": 23426,\n  \"bog</w>\": 28318,\n  \"bogo</w>\": 35769,\n  \"bogota</w>\": 47059,\n  \"bogus</w>\": 42907,\n  \"boh\": 43238,\n  \"bohe\": 40541,\n  \"bohemi\": 21552,\n  \"bohemian</w>\": 25753,\n  \"boho</w>\": 25444,\n  \"boi\": 37129,\n  \"boi</w>\": 12673,\n  \"boil</w>\": 31332,\n  \"boiled</w>\": 23886,\n  \"boiler\": 28212,\n  \"boiler</w>\": 25615,\n  \"boiling</w>\": 32019,\n  \"bois\": 47742,\n  \"bois</w>\": 21640,\n  \"boise</w>\": 23304,\n  \"bok\": 26671,\n  \"bok</w>\": 15289,\n  \"boko</w>\": 30929,\n  \"boks</w>\": 40216,\n  \"bol\": 2860,\n  \"bol</w>\": 8413,\n  \"bola</w>\": 12840,\n  \"bold\": 26975,\n  \"bold</w>\": 8911,\n  \"boldand\": 48413,\n  \"boldly</w>\": 44778,\n  \"boli\": 12722,\n  \"bolic</w>\": 27343,\n  \"bolivia</w>\": 28628,\n  \"bollah</w>\": 36336,\n  \"bolly\": 25302,\n  \"bollywood\": 32448,\n  \"bollywood</w>\": 9604,\n  \"bolo</w>\": 40236,\n  \"bolog\": 22818,\n  \"bologna</w>\": 27513,\n  \"bolster</w>\": 47304,\n  \"bolt</w>\": 13131,\n  \"bolton\": 48757,\n  \"bolton</w>\": 16598,\n  \"bolts</w>\": 26028,\n  \"bom\": 3012,\n  \"bom</w>\": 19469,\n  \"bomb\": 18091,\n  \"bomb</w>\": 6331,\n  \"bombar\": 25544,\n  \"bombardier</w>\": 42700,\n  \"bombay\": 48602,\n  \"bombay</w>\": 23890,\n  \"bombed</w>\": 24542,\n  \"bomber</w>\": 15436,\n  \"bombers</w>\": 21786,\n  \"bombing</w>\": 14475,\n  \"bombings</w>\": 43236,\n  \"bombs</w>\": 14410,\n  \"bombshell</w>\": 36340,\n  \"bon\": 1871,\n  \"bon</w>\": 4216,\n  \"bona</w>\": 33342,\n  \"bonanza</w>\": 40304,\n  \"bond\": 37022,\n  \"bond</w>\": 6826,\n  \"bonded</w>\": 37390,\n  \"bondi</w>\": 40092,\n  \"bonding</w>\": 19609,\n  \"bonds</w>\": 15786,\n  \"bone\": 22502,\n  \"bone</w>\": 6195,\n  \"bones</w>\": 9476,\n  \"bonfire</w>\": 23151,\n  \"bongo</w>\": 47519,\n  \"boni\": 32269,\n  \"boni</w>\": 46356,\n  \"bonita</w>\": 42896,\n  \"bonjour</w>\": 33176,\n  \"bonkers</w>\": 39865,\n  \"bonn</w>\": 38969,\n  \"bonnar\": 47191,\n  \"bonnaroo</w>\": 48777,\n  \"bonne</w>\": 25844,\n  \"bonnet</w>\": 30636,\n  \"bonnie</w>\": 18555,\n  \"bono</w>\": 24476,\n  \"bons</w>\": 42883,\n  \"bonsai</w>\": 44129,\n  \"bonus</w>\": 8164,\n  \"bonuses</w>\": 35144,\n  \"boo\": 824,\n  \"boo</w>\": 7317,\n  \"boogie</w>\": 22639,\n  \"book\": 2828,\n  \"book</w>\": 1116,\n  \"bookboost</w>\": 31257,\n  \"bookclub</w>\": 34438,\n  \"bookday</w>\": 26327,\n  \"booked</w>\": 12584,\n  \"booker</w>\": 21302,\n  \"bookfest</w>\": 39381,\n  \"booking</w>\": 10145,\n  \"bookings</w>\": 18345,\n  \"booklet</w>\": 27405,\n  \"bookmark</w>\": 33596,\n  \"bookof\": 45629,\n  \"bookreview</w>\": 27362,\n  \"books\": 44382,\n  \"books</w>\": 2161,\n  \"bookshelf</w>\": 34821,\n  \"bookshop</w>\": 24705,\n  \"bookstore</w>\": 17999,\n  \"bookstores</w>\": 46416,\n  \"bookworm</w>\": 20743,\n  \"boom\": 9609,\n  \"boom</w>\": 7121,\n  \"boomer\": 33819,\n  \"boomer</w>\": 31766,\n  \"boomers</w>\": 37988,\n  \"booming</w>\": 33487,\n  \"boon\": 24979,\n  \"boon</w>\": 35821,\n  \"boone</w>\": 23453,\n  \"boop</w>\": 45047,\n  \"boost\": 44639,\n  \"boost</w>\": 6260,\n  \"boosted</w>\": 37631,\n  \"booster</w>\": 20877,\n  \"boosters</w>\": 46859,\n  \"boosting</w>\": 28480,\n  \"boosts</w>\": 29247,\n  \"boot\": 10843,\n  \"boot</w>\": 8087,\n  \"bootcamp</w>\": 22051,\n  \"booted</w>\": 42564,\n  \"booth\": 47895,\n  \"booth</w>\": 3971,\n  \"booths</w>\": 32653,\n  \"booties</w>\": 46188,\n  \"bootleg</w>\": 38139,\n  \"boots</w>\": 7319,\n  \"booze</w>\": 24341,\n  \"bop</w>\": 19720,\n  \"bor\": 1141,\n  \"bor</w>\": 15093,\n  \"bora</w>\": 24736,\n  \"bord</w>\": 36891,\n  \"bordeaux</w>\": 22009,\n  \"border\": 16304,\n  \"border</w>\": 6177,\n  \"borderlands</w>\": 38676,\n  \"borders</w>\": 13900,\n  \"bore\": 14084,\n  \"bore</w>\": 24638,\n  \"bored</w>\": 8933,\n  \"boredom</w>\": 31460,\n  \"boretum</w>\": 38902,\n  \"borg</w>\": 14770,\n  \"borgh\": 17180,\n  \"boring</w>\": 12519,\n  \"boris\": 31212,\n  \"boris</w>\": 15704,\n  \"borisjohnson</w>\": 44481,\n  \"born\": 17695,\n  \"born</w>\": 2683,\n  \"borne\": 42910,\n  \"borne</w>\": 9328,\n  \"borneo</w>\": 33332,\n  \"bornon\": 41811,\n  \"bornonthisday</w>\": 42757,\n  \"boro\": 26796,\n  \"boro</w>\": 7974,\n  \"borough\": 22761,\n  \"borough</w>\": 6203,\n  \"borrow</w>\": 22293,\n  \"borrowed</w>\": 28224,\n  \"borrowing</w>\": 41045,\n  \"borussia</w>\": 36764,\n  \"bos\": 14885,\n  \"bos</w>\": 9644,\n  \"bosa</w>\": 46946,\n  \"bosch\": 42009,\n  \"bosch</w>\": 19466,\n  \"bosco</w>\": 36960,\n  \"bose</w>\": 23142,\n  \"bosh</w>\": 42244,\n  \"bosni\": 42924,\n  \"bosnia</w>\": 31396,\n  \"boss\": 17935,\n  \"boss</w>\": 4206,\n  \"bosses</w>\": 23906,\n  \"boston\": 11540,\n  \"boston</w>\": 4399,\n  \"bostonmarathon</w>\": 44533,\n  \"bot\": 4136,\n  \"bot</w>\": 6947,\n  \"botan\": 12554,\n  \"botanic</w>\": 32560,\n  \"botanical</w>\": 21026,\n  \"botany</w>\": 22612,\n  \"botd</w>\": 34451,\n  \"both\": 36575,\n  \"both</w>\": 2212,\n  \"bother</w>\": 21125,\n  \"bothered</w>\": 27997,\n  \"botox</w>\": 43449,\n  \"bots</w>\": 13721,\n  \"botswana</w>\": 27584,\n  \"bott\": 3520,\n  \"bott</w>\": 37225,\n  \"bottle\": 37306,\n  \"bottle</w>\": 5392,\n  \"bottled</w>\": 29331,\n  \"bottlen\": 46439,\n  \"bottles</w>\": 9754,\n  \"bottling</w>\": 42006,\n  \"bottom\": 32314,\n  \"bottom</w>\": 5931,\n  \"bottoms</w>\": 31524,\n  \"bou\": 3728,\n  \"bou</w>\": 23165,\n  \"bouchard</w>\": 47930,\n  \"boudo\": 48827,\n  \"bought</w>\": 4142,\n  \"boul\": 24830,\n  \"boulder</w>\": 18260,\n  \"boule\": 17652,\n  \"boulevard</w>\": 19504,\n  \"boun\": 5993,\n  \"bounce</w>\": 14316,\n  \"bouncing</w>\": 32060,\n  \"bouncy</w>\": 43415,\n  \"bound\": 15140,\n  \"bound</w>\": 4567,\n  \"boundaries</w>\": 18690,\n  \"boundary</w>\": 21344,\n  \"bounds</w>\": 37469,\n  \"bounty</w>\": 21142,\n  \"bouquet</w>\": 20961,\n  \"bour\": 2934,\n  \"bour</w>\": 35486,\n  \"bourbon\": 48118,\n  \"bourbon</w>\": 14652,\n  \"bourdain</w>\": 48095,\n  \"bourg</w>\": 20690,\n  \"bourgeo\": 45672,\n  \"bourn</w>\": 39143,\n  \"bourne\": 13789,\n  \"bourne</w>\": 5192,\n  \"bournemouth</w>\": 20911,\n  \"bout\": 19982,\n  \"bout</w>\": 8123,\n  \"bouti\": 10926,\n  \"boutique</w>\": 12179,\n  \"bow\": 2297,\n  \"bow</w>\": 4040,\n  \"bowden</w>\": 48538,\n  \"bowed</w>\": 49130,\n  \"bowel</w>\": 36880,\n  \"bowen</w>\": 25368,\n  \"bower</w>\": 40414,\n  \"bowers</w>\": 42238,\n  \"bowie</w>\": 13036,\n  \"bowing</w>\": 46398,\n  \"bowl\": 26719,\n  \"bowl</w>\": 3814,\n  \"bowled</w>\": 39987,\n  \"bowler</w>\": 25528,\n  \"bowlers</w>\": 42632,\n  \"bowles</w>\": 41611,\n  \"bowling</w>\": 10390,\n  \"bowls</w>\": 17787,\n  \"bowman</w>\": 22052,\n  \"bows</w>\": 17000,\n  \"bowser</w>\": 38234,\n  \"bowski</w>\": 48311,\n  \"box\": 2774,\n  \"box</w>\": 2063,\n  \"boxed</w>\": 24190,\n  \"boxer\": 40394,\n  \"boxer</w>\": 15363,\n  \"boxers</w>\": 31019,\n  \"boxes</w>\": 8350,\n  \"boxing\": 33669,\n  \"boxing</w>\": 5554,\n  \"boy\": 2927,\n  \"boy</w>\": 1876,\n  \"boyband</w>\": 31568,\n  \"boyce</w>\": 44480,\n  \"boycot\": 46208,\n  \"boycott\": 31615,\n  \"boycott</w>\": 19559,\n  \"boyd</w>\": 18295,\n  \"boyfriend</w>\": 7328,\n  \"boyfriends</w>\": 36541,\n  \"boyle</w>\": 22802,\n  \"boys\": 25223,\n  \"boys</w>\": 2034,\n  \"boyz</w>\": 16152,\n  \"bp\": 23410,\n  \"bp</w>\": 11558,\n  \"bpa</w>\": 43855,\n  \"bpd</w>\": 48587,\n  \"bpl</w>\": 28901,\n  \"bpm</w>\": 40338,\n  \"bps</w>\": 37794,\n  \"br\": 711,\n  \"br</w>\": 7532,\n  \"bra\": 1195,\n  \"bra</w>\": 5860,\n  \"brac\": 6663,\n  \"brace\": 8376,\n  \"brace</w>\": 9183,\n  \"bracelet</w>\": 8969,\n  \"bracelets</w>\": 20027,\n  \"braces</w>\": 19249,\n  \"brack\": 25676,\n  \"bracket</w>\": 14780,\n  \"brackets</w>\": 36183,\n  \"brad\": 4848,\n  \"brad</w>\": 9405,\n  \"bradbury</w>\": 45097,\n  \"braden</w>\": 46842,\n  \"bradford</w>\": 15062,\n  \"bradley\": 31905,\n  \"bradley</w>\": 10952,\n  \"brador</w>\": 24062,\n  \"bradshaw</w>\": 37556,\n  \"brady\": 42494,\n  \"brady</w>\": 11117,\n  \"brae\": 42874,\n  \"brae</w>\": 40040,\n  \"brag</w>\": 30110,\n  \"bragg</w>\": 38545,\n  \"bragging</w>\": 38199,\n  \"brah\": 20276,\n  \"brahms</w>\": 45114,\n  \"brai\": 25048,\n  \"braid</w>\": 31067,\n  \"braided</w>\": 39997,\n  \"braids</w>\": 34221,\n  \"brain\": 9454,\n  \"brain</w>\": 4812,\n  \"brains</w>\": 17129,\n  \"brainstorming</w>\": 36607,\n  \"braised</w>\": 28363,\n  \"brake</w>\": 14937,\n  \"brakes</w>\": 23456,\n  \"bral</w>\": 31309,\n  \"bram\": 14815,\n  \"bram</w>\": 39456,\n  \"brampton</w>\": 35124,\n  \"bran\": 3684,\n  \"bran</w>\": 28348,\n  \"brance\": 36072,\n  \"brance</w>\": 15413,\n  \"branch</w>\": 7998,\n  \"branches</w>\": 15843,\n  \"brand\": 3910,\n  \"brand</w>\": 2896,\n  \"branded</w>\": 18097,\n  \"brandi</w>\": 41003,\n  \"branding</w>\": 10841,\n  \"brando</w>\": 41892,\n  \"brandon\": 20423,\n  \"brandon</w>\": 9166,\n  \"brands</w>\": 8681,\n  \"brandt</w>\": 22552,\n  \"brandy</w>\": 26232,\n  \"brane</w>\": 32340,\n  \"branson</w>\": 28280,\n  \"brant\": 28951,\n  \"brant</w>\": 47592,\n  \"braries</w>\": 46377,\n  \"brary</w>\": 24520,\n  \"bras</w>\": 22611,\n  \"brasil</w>\": 18991,\n  \"brass\": 24348,\n  \"brass</w>\": 11655,\n  \"brat\": 26717,\n  \"brat</w>\": 26631,\n  \"brate</w>\": 41864,\n  \"braun\": 39129,\n  \"braun</w>\": 29309,\n  \"brave\": 25461,\n  \"brave</w>\": 7769,\n  \"braved</w>\": 47663,\n  \"bravely</w>\": 42303,\n  \"bravery</w>\": 25831,\n  \"braves</w>\": 14422,\n  \"braving</w>\": 43258,\n  \"bravo\": 38613,\n  \"bravo</w>\": 13006,\n  \"braw\": 37871,\n  \"brawl</w>\": 26066,\n  \"braxton</w>\": 37451,\n  \"bray\": 26256,\n  \"bray</w>\": 22993,\n  \"braz\": 4625,\n  \"brazil\": 47459,\n  \"brazil</w>\": 6305,\n  \"brazili\": 45697,\n  \"brazilian</w>\": 12111,\n  \"brb</w>\": 25316,\n  \"brc</w>\": 40393,\n  \"bre\": 887,\n  \"bre</w>\": 7782,\n  \"brea\": 7318,\n  \"brea</w>\": 46538,\n  \"breach</w>\": 21363,\n  \"breaches</w>\": 45173,\n  \"bread\": 18886,\n  \"bread</w>\": 5066,\n  \"breads</w>\": 43064,\n  \"break\": 2206,\n  \"break</w>\": 2568,\n  \"breakable</w>\": 30691,\n  \"breakaway</w>\": 42732,\n  \"breakdown</w>\": 14519,\n  \"breaker</w>\": 14814,\n  \"breakers</w>\": 22270,\n  \"breakfa\": 45931,\n  \"breakfast\": 30210,\n  \"breakfast</w>\": 3290,\n  \"breaking\": 14698,\n  \"breaking</w>\": 2755,\n  \"breakingbad</w>\": 38032,\n  \"breakingnews</w>\": 23837,\n  \"breakout</w>\": 16752,\n  \"breaks</w>\": 7263,\n  \"breakthrough</w>\": 18802,\n  \"breakup</w>\": 38931,\n  \"breast\": 12930,\n  \"breast</w>\": 9475,\n  \"breastcancer\": 40813,\n  \"breastcancer</w>\": 30065,\n  \"breastfeeding</w>\": 29033,\n  \"breasts</w>\": 37637,\n  \"breath\": 9508,\n  \"breath</w>\": 9576,\n  \"breathe</w>\": 11364,\n  \"breathing</w>\": 14959,\n  \"breathtaking</w>\": 14709,\n  \"brecht</w>\": 34622,\n  \"breck\": 44598,\n  \"bred\": 46929,\n  \"bred</w>\": 16008,\n  \"bree\": 7892,\n  \"bree</w>\": 37138,\n  \"breed\": 28030,\n  \"breed</w>\": 13791,\n  \"breeders</w>\": 37472,\n  \"breeding</w>\": 16544,\n  \"breeds</w>\": 29021,\n  \"breen</w>\": 48013,\n  \"brees</w>\": 46721,\n  \"breeze</w>\": 13125,\n  \"breezy</w>\": 21451,\n  \"breit\": 23864,\n  \"breitbart</w>\": 37926,\n  \"brek\": 35494,\n  \"bremen</w>\": 39861,\n  \"bren\": 5209,\n  \"brenda</w>\": 23786,\n  \"brendan\": 35134,\n  \"brendan</w>\": 15414,\n  \"brendon</w>\": 36756,\n  \"brennan</w>\": 22372,\n  \"brenner</w>\": 42941,\n  \"brent\": 31439,\n  \"brent</w>\": 16355,\n  \"brentwood</w>\": 33108,\n  \"brero</w>\": 47781,\n  \"bres</w>\": 32561,\n  \"bret\": 38020,\n  \"bret</w>\": 32548,\n  \"brethren</w>\": 43134,\n  \"breton</w>\": 32290,\n  \"brett\": 22591,\n  \"brett</w>\": 12394,\n  \"brev</w>\": 42882,\n  \"brevi\": 39475,\n  \"brew\": 5048,\n  \"brew</w>\": 7253,\n  \"brewco</w>\": 33582,\n  \"brewed</w>\": 23238,\n  \"brewer</w>\": 20756,\n  \"breweries</w>\": 35277,\n  \"brewers</w>\": 17618,\n  \"brewery</w>\": 8850,\n  \"brewing</w>\": 8275,\n  \"brewingco</w>\": 45155,\n  \"brews</w>\": 21663,\n  \"brewster</w>\": 40274,\n  \"brex\": 22726,\n  \"brexit\": 27666,\n  \"brexit</w>\": 5801,\n  \"brgy</w>\": 35983,\n  \"bri\": 1036,\n  \"bri</w>\": 18636,\n  \"bria</w>\": 35890,\n  \"brian\": 9824,\n  \"brian</w>\": 4989,\n  \"brianna</w>\": 32308,\n  \"briar</w>\": 46119,\n  \"bribe</w>\": 40042,\n  \"bribery</w>\": 41792,\n  \"bric\": 27055,\n  \"brice</w>\": 40190,\n  \"brick\": 13937,\n  \"brick</w>\": 9518,\n  \"bricks</w>\": 21029,\n  \"brics</w>\": 48196,\n  \"brid\": 16995,\n  \"bridal\": 36875,\n  \"bridal</w>\": 14284,\n  \"bride\": 18342,\n  \"bride</w>\": 8964,\n  \"brides</w>\": 18067,\n  \"bridesma\": 28356,\n  \"bridesmaid</w>\": 43399,\n  \"bridesmaids</w>\": 47754,\n  \"bridg\": 20623,\n  \"bridge\": 8647,\n  \"bridge</w>\": 2465,\n  \"bridgeport</w>\": 45201,\n  \"bridges</w>\": 11811,\n  \"bridget</w>\": 27073,\n  \"bridgewater</w>\": 38732,\n  \"bridging</w>\": 38109,\n  \"brie</w>\": 26622,\n  \"brief\": 9435,\n  \"brief</w>\": 8954,\n  \"briefed</w>\": 47326,\n  \"briefing</w>\": 12991,\n  \"briefly</w>\": 26980,\n  \"briefs</w>\": 29557,\n  \"brien</w>\": 13504,\n  \"brier</w>\": 43995,\n  \"brig\": 11081,\n  \"briga\": 46448,\n  \"brigade</w>\": 16032,\n  \"briggs</w>\": 28108,\n  \"brigh\": 6710,\n  \"bright\": 10383,\n  \"bright</w>\": 4852,\n  \"brighten</w>\": 18208,\n  \"brightening</w>\": 43929,\n  \"brighter</w>\": 18507,\n  \"brightest</w>\": 26159,\n  \"brightly</w>\": 36298,\n  \"brightness</w>\": 42280,\n  \"brighton\": 28416,\n  \"brighton</w>\": 9470,\n  \"brigitte</w>\": 44421,\n  \"brill\": 27342,\n  \"brill</w>\": 28601,\n  \"brilli\": 3821,\n  \"brilliance</w>\": 28146,\n  \"brilliant</w>\": 4106,\n  \"brilliantly</w>\": 26803,\n  \"brin\": 25620,\n  \"bring\": 11596,\n  \"bring</w>\": 2430,\n  \"bringback\": 28969,\n  \"bringbackour\": 45403,\n  \"bringing</w>\": 4777,\n  \"brings</w>\": 5138,\n  \"brink\": 39296,\n  \"brink</w>\": 28796,\n  \"brioche</w>\": 45818,\n  \"bris\": 9385,\n  \"bris</w>\": 15783,\n  \"brisban\": 30431,\n  \"brisbane\": 42932,\n  \"brisbane</w>\": 12407,\n  \"brisk</w>\": 43646,\n  \"brisket</w>\": 31920,\n  \"bristol\": 18159,\n  \"bristol</w>\": 8010,\n  \"brit\": 2318,\n  \"brit</w>\": 20066,\n  \"britain\": 40802,\n  \"britain</w>\": 6272,\n  \"britanni\": 31373,\n  \"britannia</w>\": 36188,\n  \"brite</w>\": 33827,\n  \"briti\": 8155,\n  \"british\": 8651,\n  \"british</w>\": 3504,\n  \"britishmuseum</w>\": 41858,\n  \"britney\": 37192,\n  \"britney</w>\": 21853,\n  \"britneyspears</w>\": 42990,\n  \"brits</w>\": 21832,\n  \"britt\": 10811,\n  \"britt</w>\": 25976,\n  \"brittany\": 38187,\n  \"brittany</w>\": 18818,\n  \"britton</w>\": 37422,\n  \"brium</w>\": 46079,\n  \"brixton</w>\": 30056,\n  \"bro\": 927,\n  \"bro</w>\": 4410,\n  \"broad\": 3491,\n  \"broad</w>\": 12623,\n  \"broadband</w>\": 21050,\n  \"broadcast</w>\": 8967,\n  \"broadcaster</w>\": 29005,\n  \"broadcasting</w>\": 14403,\n  \"broadcasts</w>\": 46742,\n  \"broader</w>\": 36029,\n  \"broadway\": 34599,\n  \"broadway</w>\": 9092,\n  \"broc\": 15587,\n  \"broccoli</w>\": 19094,\n  \"broch\": 21419,\n  \"brochure</w>\": 25275,\n  \"brock\": 14841,\n  \"brock</w>\": 16745,\n  \"brodie</w>\": 42150,\n  \"brody</w>\": 29608,\n  \"broke\": 42165,\n  \"broke</w>\": 6509,\n  \"broken\": 26126,\n  \"broken</w>\": 5107,\n  \"broker\": 34032,\n  \"broker</w>\": 20449,\n  \"brokerage</w>\": 41327,\n  \"brokers</w>\": 28271,\n  \"brom\": 18972,\n  \"brom</w>\": 33296,\n  \"bromance</w>\": 35353,\n  \"bromley</w>\": 35715,\n  \"bron\": 4011,\n  \"bron</w>\": 10243,\n  \"bronco\": 43488,\n  \"bronco</w>\": 34370,\n  \"broncos</w>\": 12516,\n  \"bronson</w>\": 37042,\n  \"bronte</w>\": 48936,\n  \"bronx\": 48310,\n  \"bronx</w>\": 17183,\n  \"brony</w>\": 21084,\n  \"bronze</w>\": 8459,\n  \"broo\": 5204,\n  \"brooch</w>\": 21207,\n  \"brook\": 4782,\n  \"brook</w>\": 7322,\n  \"brooke\": 28576,\n  \"brooke</w>\": 12549,\n  \"brookes</w>\": 39707,\n  \"brooklyn\": 23253,\n  \"brooklyn</w>\": 6983,\n  \"brooks\": 42779,\n  \"brooks</w>\": 9991,\n  \"broom\": 32046,\n  \"broom</w>\": 28008,\n  \"broome</w>\": 49335,\n  \"bros</w>\": 7776,\n  \"broth</w>\": 29994,\n  \"brotha</w>\": 33974,\n  \"brother\": 12697,\n  \"brother</w>\": 3157,\n  \"brotherhood</w>\": 19059,\n  \"brothers</w>\": 4548,\n  \"brou\": 27874,\n  \"brough</w>\": 21033,\n  \"brought</w>\": 4222,\n  \"brov\": 42881,\n  \"brow\": 6547,\n  \"brow</w>\": 15895,\n  \"broward</w>\": 34719,\n  \"brown\": 6315,\n  \"brown</w>\": 2866,\n  \"browne</w>\": 28440,\n  \"brownie</w>\": 23045,\n  \"brownies</w>\": 22312,\n  \"browning</w>\": 32241,\n  \"browns</w>\": 14051,\n  \"brows</w>\": 14998,\n  \"browse</w>\": 19060,\n  \"browser</w>\": 19768,\n  \"browsing</w>\": 29318,\n  \"brox</w>\": 43539,\n  \"brs</w>\": 47485,\n  \"brt</w>\": 46936,\n  \"bru\": 1698,\n  \"bru</w>\": 31028,\n  \"bruce\": 21223,\n  \"bruce</w>\": 7085,\n  \"bruh</w>\": 17575,\n  \"bruins</w>\": 14736,\n  \"bruise</w>\": 48048,\n  \"bruised</w>\": 46502,\n  \"brum\": 23862,\n  \"brum</w>\": 28078,\n  \"brun\": 6870,\n  \"brunch</w>\": 9113,\n  \"brune\": 29057,\n  \"brunei</w>\": 41898,\n  \"brunette</w>\": 35528,\n  \"bruno</w>\": 14568,\n  \"brunomars</w>\": 41156,\n  \"brunswick</w>\": 24012,\n  \"brush\": 27969,\n  \"brush</w>\": 8594,\n  \"brushed</w>\": 30298,\n  \"brushes</w>\": 21550,\n  \"brushing</w>\": 35072,\n  \"brussels</w>\": 11020,\n  \"brut</w>\": 39499,\n  \"brutal\": 42144,\n  \"brutal</w>\": 14556,\n  \"brutality</w>\": 31348,\n  \"brutally</w>\": 28132,\n  \"brute</w>\": 47552,\n  \"brux\": 49093,\n  \"bry\": 6587,\n  \"bry</w>\": 28228,\n  \"bryan\": 16134,\n  \"bryan</w>\": 10412,\n  \"bryant</w>\": 12256,\n  \"bryce</w>\": 19895,\n  \"bryn\": 36569,\n  \"bryn</w>\": 42877,\n  \"bryson</w>\": 38990,\n  \"bs\": 11783,\n  \"bs</w>\": 1329,\n  \"bsa</w>\": 46619,\n  \"bsb</w>\": 23070,\n  \"bsbi\": 41728,\n  \"bsbibotany</w>\": 42086,\n  \"bsc</w>\": 32031,\n  \"bsd</w>\": 41848,\n  \"bse</w>\": 46341,\n  \"bsf</w>\": 48314,\n  \"bsgo</w>\": 48474,\n  \"bsp</w>\": 47977,\n  \"bst</w>\": 19698,\n  \"bsu</w>\": 46385,\n  \"bt\": 3317,\n  \"bt</w>\": 4205,\n  \"btc</w>\": 10315,\n  \"btcc</w>\": 30759,\n  \"btn</w>\": 44681,\n  \"bto</w>\": 35516,\n  \"btob</w>\": 29379,\n  \"btr</w>\": 39767,\n  \"bts\": 15154,\n  \"bts</w>\": 4007,\n  \"btsarmy</w>\": 30302,\n  \"btsbbmas</w>\": 35297,\n  \"btsx\": 44971,\n  \"btv</w>\": 38541,\n  \"btw</w>\": 9520,\n  \"btwn</w>\": 28284,\n  \"bu\": 609,\n  \"bu</w>\": 5831,\n  \"bub\": 27704,\n  \"bub</w>\": 33158,\n  \"bubb\": 9739,\n  \"bubba</w>\": 28149,\n  \"bubble\": 28687,\n  \"bubble</w>\": 10799,\n  \"bubblegum</w>\": 48078,\n  \"bubbles</w>\": 17648,\n  \"bubbly</w>\": 31034,\n  \"buc\": 8207,\n  \"buccane\": 32830,\n  \"buccaneers</w>\": 38058,\n  \"buch\": 22623,\n  \"bucha</w>\": 43582,\n  \"buchan\": 27237,\n  \"buchanan</w>\": 28975,\n  \"bucharest</w>\": 37013,\n  \"buck\": 6061,\n  \"buck</w>\": 11433,\n  \"bucket\": 22596,\n  \"bucket</w>\": 10498,\n  \"bucketlist</w>\": 30778,\n  \"buckets</w>\": 27168,\n  \"buckeye</w>\": 34549,\n  \"buckeyes</w>\": 30741,\n  \"buckingham</w>\": 28736,\n  \"buckle</w>\": 21948,\n  \"buckley</w>\": 25905,\n  \"bucks</w>\": 6103,\n  \"bucky</w>\": 35916,\n  \"bucs</w>\": 20011,\n  \"bud\": 2942,\n  \"bud</w>\": 10737,\n  \"buda\": 18520,\n  \"buda</w>\": 49012,\n  \"budapest</w>\": 19202,\n  \"budd\": 7296,\n  \"buddha</w>\": 13981,\n  \"buddhism</w>\": 23744,\n  \"buddhist</w>\": 18697,\n  \"buddies</w>\": 14543,\n  \"budding</w>\": 31992,\n  \"buddy\": 40948,\n  \"buddy</w>\": 6557,\n  \"budge\": 32005,\n  \"budget\": 46758,\n  \"budget</w>\": 5639,\n  \"budgeting</w>\": 43789,\n  \"budgets</w>\": 36419,\n  \"buds</w>\": 14665,\n  \"budweiser</w>\": 40900,\n  \"buen\": 15640,\n  \"buena</w>\": 30876,\n  \"buenas</w>\": 48529,\n  \"bueno</w>\": 46202,\n  \"buenos</w>\": 26055,\n  \"buf\": 44417,\n  \"buff\": 5456,\n  \"buff</w>\": 21416,\n  \"buffal\": 25836,\n  \"buffalo\": 31231,\n  \"buffalo</w>\": 8054,\n  \"buffalob\": 38831,\n  \"buffalobills</w>\": 44352,\n  \"buffe\": 13724,\n  \"buffer</w>\": 33050,\n  \"buffet</w>\": 17829,\n  \"buffett</w>\": 34081,\n  \"buffs</w>\": 28906,\n  \"buffy</w>\": 33356,\n  \"bug\": 14453,\n  \"bug</w>\": 8162,\n  \"bugatti</w>\": 35451,\n  \"buggy</w>\": 28963,\n  \"bugs</w>\": 13850,\n  \"buh</w>\": 31406,\n  \"buhari</w>\": 14661,\n  \"buick</w>\": 22000,\n  \"buil\": 1354,\n  \"build\": 22739,\n  \"build</w>\": 3289,\n  \"builder</w>\": 14474,\n  \"builders</w>\": 17694,\n  \"building\": 21206,\n  \"building</w>\": 2307,\n  \"buildings</w>\": 8866,\n  \"builds</w>\": 16449,\n  \"buildthe\": 41497,\n  \"built\": 45824,\n  \"built</w>\": 3874,\n  \"buk\": 28084,\n  \"buk</w>\": 24317,\n  \"buka</w>\": 47778,\n  \"bukit</w>\": 39888,\n  \"bul\": 2572,\n  \"bul</w>\": 10200,\n  \"bula</w>\": 18726,\n  \"bulaga</w>\": 41575,\n  \"bular</w>\": 32187,\n  \"bulb</w>\": 22373,\n  \"bulbs</w>\": 24808,\n  \"bulgar\": 15424,\n  \"bulgaria</w>\": 20295,\n  \"bulgarian</w>\": 38693,\n  \"bulge</w>\": 47603,\n  \"bulk</w>\": 19643,\n  \"bull\": 4537,\n  \"bull</w>\": 6029,\n  \"bulldo\": 37675,\n  \"bulldog\": 34828,\n  \"bulldog</w>\": 15611,\n  \"bulldogs</w>\": 13916,\n  \"bullet\": 14340,\n  \"bullet</w>\": 12465,\n  \"bulletin</w>\": 19638,\n  \"bulletproof</w>\": 43212,\n  \"bullets</w>\": 22117,\n  \"bullied</w>\": 34689,\n  \"bullies</w>\": 39050,\n  \"bullion</w>\": 49114,\n  \"bullish</w>\": 22142,\n  \"bullock</w>\": 33198,\n  \"bullpen</w>\": 38081,\n  \"bulls</w>\": 10313,\n  \"bully\": 43111,\n  \"bully</w>\": 20190,\n  \"bullying</w>\": 13548,\n  \"bum\": 27683,\n  \"bum</w>\": 14226,\n  \"bumble\": 25585,\n  \"bumble</w>\": 39303,\n  \"bumblebee</w>\": 36911,\n  \"bummed</w>\": 48456,\n  \"bump\": 9783,\n  \"bump</w>\": 15877,\n  \"bumped</w>\": 22495,\n  \"bumper</w>\": 17881,\n  \"bumping</w>\": 40196,\n  \"bumps</w>\": 21115,\n  \"bun\": 2591,\n  \"bun</w>\": 13665,\n  \"bunch</w>\": 7796,\n  \"bund</w>\": 41905,\n  \"bunde\": 18841,\n  \"bundesliga</w>\": 21582,\n  \"bundle</w>\": 11793,\n  \"bundled</w>\": 47228,\n  \"bundles</w>\": 29834,\n  \"bundy</w>\": 37332,\n  \"bung</w>\": 44748,\n  \"bungal\": 29549,\n  \"bungalow</w>\": 33696,\n  \"bunk</w>\": 41236,\n  \"bunker</w>\": 23615,\n  \"bunnies</w>\": 28998,\n  \"bunny\": 34198,\n  \"bunny</w>\": 9258,\n  \"buns</w>\": 22235,\n  \"bunting</w>\": 30695,\n  \"buon\": 31350,\n  \"buon</w>\": 48498,\n  \"bur\": 1039,\n  \"bur</w>\": 17362,\n  \"burbank</w>\": 34862,\n  \"burberry</w>\": 30412,\n  \"burch</w>\": 44588,\n  \"burden</w>\": 18687,\n  \"bure\": 11902,\n  \"bureau\": 32098,\n  \"bureau</w>\": 15400,\n  \"burg\": 19505,\n  \"burg</w>\": 3499,\n  \"burge\": 20522,\n  \"burger\": 22356,\n  \"burger</w>\": 6548,\n  \"burgers</w>\": 13007,\n  \"burgess</w>\": 26211,\n  \"burgh\": 18141,\n  \"burgh</w>\": 4965,\n  \"burgl\": 25554,\n  \"burglar</w>\": 43365,\n  \"burglary</w>\": 32573,\n  \"burgring</w>\": 40823,\n  \"burgundy</w>\": 23650,\n  \"buri\": 46348,\n  \"buri</w>\": 42614,\n  \"burial</w>\": 22012,\n  \"buried</w>\": 14233,\n  \"burk\": 48822,\n  \"burke</w>\": 15340,\n  \"burle\": 27891,\n  \"burlesque</w>\": 33732,\n  \"burlington</w>\": 23370,\n  \"burma</w>\": 30305,\n  \"burmese</w>\": 47906,\n  \"burn\": 7934,\n  \"burn</w>\": 4285,\n  \"burnaby</w>\": 47541,\n  \"burne</w>\": 27246,\n  \"burned</w>\": 15022,\n  \"burner</w>\": 23243,\n  \"burnett</w>\": 28558,\n  \"burnham</w>\": 36111,\n  \"burning\": 46107,\n  \"burning</w>\": 8405,\n  \"burnley</w>\": 24653,\n  \"burnout</w>\": 36078,\n  \"burns</w>\": 10234,\n  \"burnt</w>\": 15185,\n  \"burr</w>\": 30879,\n  \"burrell</w>\": 49045,\n  \"burrito</w>\": 23473,\n  \"burritos</w>\": 47245,\n  \"burroughs</w>\": 41337,\n  \"burrows</w>\": 44846,\n  \"burst</w>\": 13005,\n  \"bursting</w>\": 32566,\n  \"bursts</w>\": 37026,\n  \"burt</w>\": 27162,\n  \"burton\": 42354,\n  \"burton</w>\": 12704,\n  \"burundi</w>\": 33595,\n  \"bury\": 12276,\n  \"bury</w>\": 3899,\n  \"burys</w>\": 32362,\n  \"bus\": 1319,\n  \"bus</w>\": 2840,\n  \"busan</w>\": 40172,\n  \"busc\": 35000,\n  \"busch</w>\": 20475,\n  \"buses</w>\": 12879,\n  \"bush\": 11191,\n  \"bush</w>\": 6867,\n  \"bushes</w>\": 37578,\n  \"busiest</w>\": 32764,\n  \"busine\": 4598,\n  \"busines\": 25364,\n  \"business\": 8346,\n  \"business</w>\": 1716,\n  \"businesses</w>\": 7287,\n  \"businessman</w>\": 25635,\n  \"buss</w>\": 47764,\n  \"bust\": 31299,\n  \"bust</w>\": 9959,\n  \"busted</w>\": 18643,\n  \"buster\": 37219,\n  \"buster</w>\": 12094,\n  \"busters</w>\": 16362,\n  \"busting</w>\": 29622,\n  \"busy\": 39332,\n  \"busy</w>\": 4354,\n  \"but\": 2201,\n  \"but</w>\": 767,\n  \"butch</w>\": 35102,\n  \"butcher</w>\": 18732,\n  \"butchers</w>\": 42334,\n  \"bute</w>\": 39240,\n  \"butes</w>\": 14630,\n  \"butler\": 35867,\n  \"butler</w>\": 10702,\n  \"butt\": 12500,\n  \"butt</w>\": 31523,\n  \"butte</w>\": 31678,\n  \"butter\": 5427,\n  \"butter</w>\": 6952,\n  \"butterflies</w>\": 16232,\n  \"butterfly</w>\": 9738,\n  \"buttermilk</w>\": 40180,\n  \"butternut</w>\": 36867,\n  \"buttery</w>\": 45535,\n  \"button\": 45480,\n  \"button</w>\": 8007,\n  \"buttons</w>\": 16188,\n  \"butts</w>\": 25309,\n  \"buu\": 42313,\n  \"buuren</w>\": 47752,\n  \"buxton</w>\": 41370,\n  \"buy\": 11632,\n  \"buy</w>\": 2131,\n  \"buyer</w>\": 14682,\n  \"buyers</w>\": 14663,\n  \"buying</w>\": 6566,\n  \"buys</w>\": 15560,\n  \"buzz\": 7866,\n  \"buzz</w>\": 8706,\n  \"buzzard</w>\": 47434,\n  \"buzzer</w>\": 38064,\n  \"buzzfeed</w>\": 26613,\n  \"buzzing</w>\": 18511,\n  \"bv\": 18958,\n  \"bv</w>\": 35861,\n  \"bvb</w>\": 22454,\n  \"bw\": 17672,\n  \"bw</w>\": 15120,\n  \"bway</w>\": 26652,\n  \"bwfc</w>\": 40918,\n  \"bwo\": 45902,\n  \"bx</w>\": 33633,\n  \"by\": 1713,\n  \"by</w>\": 638,\n  \"bye\": 20076,\n  \"bye</w>\": 4460,\n  \"byes</w>\": 47958,\n  \"byl</w>\": 34994,\n  \"byn\": 46917,\n  \"byn</w>\": 11890,\n  \"byo\": 28039,\n  \"bypass</w>\": 26530,\n  \"byr\": 15534,\n  \"byrd</w>\": 30369,\n  \"byrne</w>\": 19676,\n  \"byron\": 43504,\n  \"byron</w>\": 19775,\n  \"bys</w>\": 26740,\n  \"bystand\": 46138,\n  \"byte</w>\": 42798,\n  \"bytes</w>\": 39538,\n  \"bythe\": 36621,\n  \"byu\": 41072,\n  \"byu</w>\": 23770,\n  \"byz\": 35406,\n  \"byzantine</w>\": 44081,\n  \"bz</w>\": 13631,\n  \"bÃ©\": 40365,\n  \"bÃ¼\": 38706,\n  \"c\": 66,\n  \"c</w>\": 322,\n  \"ca\": 772,\n  \"ca</w>\": 1684,\n  \"caa</w>\": 19316,\n  \"cab\": 3033,\n  \"cab</w>\": 11912,\n  \"cabaret</w>\": 26263,\n  \"cabbage</w>\": 18407,\n  \"cabe</w>\": 32731,\n  \"cabello</w>\": 34371,\n  \"caber\": 29062,\n  \"cabernet</w>\": 33730,\n  \"cabin</w>\": 14178,\n  \"cabine\": 23354,\n  \"cabinet</w>\": 9937,\n  \"cabinets</w>\": 33083,\n  \"cabins</w>\": 48455,\n  \"cable</w>\": 7925,\n  \"cables</w>\": 22408,\n  \"cabo\": 37318,\n  \"cabo</w>\": 28370,\n  \"cabrera</w>\": 42338,\n  \"cabs</w>\": 42048,\n  \"cac\": 8298,\n  \"cac</w>\": 23872,\n  \"cacao</w>\": 38022,\n  \"cache</w>\": 28993,\n  \"caching</w>\": 40655,\n  \"cactus</w>\": 19794,\n  \"cad\": 6297,\n  \"cad</w>\": 20166,\n  \"caday</w>\": 34187,\n  \"cadbury</w>\": 44698,\n  \"caddy</w>\": 41521,\n  \"cade\": 10497,\n  \"cade</w>\": 17306,\n  \"cadet</w>\": 22764,\n  \"cadets</w>\": 19160,\n  \"cadillac</w>\": 18156,\n  \"cae</w>\": 49264,\n  \"caer\": 28298,\n  \"caes\": 15740,\n  \"caesar</w>\": 21642,\n  \"caesars</w>\": 42162,\n  \"caf\": 3471,\n  \"caf</w>\": 20867,\n  \"cafc</w>\": 30748,\n  \"cafe\": 15201,\n  \"cafe</w>\": 4979,\n  \"cafes</w>\": 40166,\n  \"cafeteria</w>\": 32817,\n  \"caffe\": 18258,\n  \"caffe</w>\": 45416,\n  \"caffeine</w>\": 22487,\n  \"cafÃ©</w>\": 15304,\n  \"cag\": 15714,\n  \"cage</w>\": 11838,\n  \"cages</w>\": 37939,\n  \"cah</w>\": 40519,\n  \"cahill</w>\": 33185,\n  \"cai\": 38971,\n  \"cai</w>\": 36116,\n  \"cain</w>\": 13747,\n  \"caine</w>\": 16799,\n  \"cair\": 15804,\n  \"cair</w>\": 46659,\n  \"cairn\": 31264,\n  \"cairn</w>\": 42467,\n  \"cairngor\": 44067,\n  \"cairns</w>\": 32941,\n  \"cairo</w>\": 19615,\n  \"cait\": 14116,\n  \"caitlin\": 47768,\n  \"caitlin</w>\": 26809,\n  \"caitlyn</w>\": 35763,\n  \"cajun\": 43425,\n  \"cajun</w>\": 33044,\n  \"cak</w>\": 42986,\n  \"cake\": 15295,\n  \"cake</w>\": 2972,\n  \"cakeday</w>\": 46207,\n  \"cakes</w>\": 5950,\n  \"cal\": 1198,\n  \"cal</w>\": 6372,\n  \"cala</w>\": 32133,\n  \"calab\": 31795,\n  \"calais</w>\": 39886,\n  \"calam\": 28841,\n  \"calc</w>\": 45055,\n  \"calci\": 22824,\n  \"calcium</w>\": 27815,\n  \"calcu\": 15328,\n  \"calcul\": 15734,\n  \"calculate</w>\": 37656,\n  \"calculated</w>\": 40688,\n  \"calculations</w>\": 44605,\n  \"calculator</w>\": 26093,\n  \"calculus</w>\": 35104,\n  \"calcutta</w>\": 42901,\n  \"calder\": 29372,\n  \"calder</w>\": 36817,\n  \"caldwell</w>\": 30484,\n  \"cale</w>\": 32674,\n  \"caleb</w>\": 19619,\n  \"caled\": 28421,\n  \"calend\": 6057,\n  \"calendar</w>\": 7122,\n  \"calendars</w>\": 17229,\n  \"calf</w>\": 17508,\n  \"calgary\": 27415,\n  \"calgary</w>\": 10797,\n  \"calhoun</w>\": 38929,\n  \"cali\": 2857,\n  \"cali</w>\": 16337,\n  \"caliber</w>\": 32820,\n  \"calibr\": 32597,\n  \"calico</w>\": 45379,\n  \"calif</w>\": 30839,\n  \"califor\": 3526,\n  \"californi\": 21303,\n  \"california</w>\": 3729,\n  \"call\": 7950,\n  \"call</w>\": 1620,\n  \"calla\": 20658,\n  \"callahan</w>\": 43313,\n  \"callaway</w>\": 42596,\n  \"callback</w>\": 44764,\n  \"calle\": 47699,\n  \"calle</w>\": 38144,\n  \"called</w>\": 2726,\n  \"caller</w>\": 30666,\n  \"calli\": 16338,\n  \"callie</w>\": 36512,\n  \"calligraphy</w>\": 27775,\n  \"calling</w>\": 4597,\n  \"callister</w>\": 49026,\n  \"callme\": 42449,\n  \"callof\": 41280,\n  \"calls</w>\": 4572,\n  \"callum</w>\": 23224,\n  \"calm\": 34990,\n  \"calm</w>\": 7011,\n  \"calming</w>\": 30690,\n  \"calorie</w>\": 32679,\n  \"calories</w>\": 18029,\n  \"cals</w>\": 47714,\n  \"calum</w>\": 16405,\n  \"calvary</w>\": 40169,\n  \"calvert</w>\": 47134,\n  \"calves</w>\": 31857,\n  \"calvin\": 27642,\n  \"calvin</w>\": 17345,\n  \"caly\": 10244,\n  \"calyp\": 29851,\n  \"cam\": 1004,\n  \"cam</w>\": 5982,\n  \"camar\": 31991,\n  \"camber\": 44362,\n  \"cambo\": 14662,\n  \"cambodia</w>\": 17347,\n  \"cambridge\": 24651,\n  \"cambridge</w>\": 9334,\n  \"cambridgeshire</w>\": 46139,\n  \"camden\": 38735,\n  \"camden</w>\": 17984,\n  \"came</w>\": 1986,\n  \"camel\": 27005,\n  \"camel</w>\": 21914,\n  \"camels</w>\": 41357,\n  \"cameo</w>\": 19492,\n  \"camer\": 4961,\n  \"camera</w>\": 3934,\n  \"cameraman</w>\": 43347,\n  \"cameras</w>\": 12172,\n  \"camero\": 20320,\n  \"cameron\": 19634,\n  \"cameron</w>\": 8057,\n  \"camerondallas</w>\": 40587,\n  \"cameroon</w>\": 24061,\n  \"camil\": 37745,\n  \"camila</w>\": 19919,\n  \"camilla</w>\": 38897,\n  \"camille</w>\": 26741,\n  \"camino</w>\": 28529,\n  \"camo\": 28702,\n  \"camo</w>\": 19716,\n  \"camogie</w>\": 39547,\n  \"camou\": 23588,\n  \"camoufla\": 23667,\n  \"camouflage</w>\": 29049,\n  \"camp\": 2854,\n  \"camp</w>\": 2877,\n  \"campa\": 2793,\n  \"campaig\": 9448,\n  \"campaign\": 44524,\n  \"campaign</w>\": 3193,\n  \"campaigner</w>\": 46364,\n  \"campaigners</w>\": 40272,\n  \"campaigning</w>\": 19594,\n  \"campaigns</w>\": 15669,\n  \"campan\": 31765,\n  \"campbell\": 29094,\n  \"campbell</w>\": 8806,\n  \"campe\": 16672,\n  \"campeon\": 49109,\n  \"campeones</w>\": 30105,\n  \"camper\": 41914,\n  \"camper</w>\": 24522,\n  \"campers</w>\": 26619,\n  \"campfire</w>\": 32530,\n  \"campground</w>\": 46969,\n  \"camping</w>\": 9982,\n  \"campo</w>\": 27600,\n  \"campos</w>\": 48077,\n  \"camps</w>\": 12806,\n  \"campsite</w>\": 44243,\n  \"campu\": 19687,\n  \"campus</w>\": 4560,\n  \"campuses</w>\": 31895,\n  \"camra</w>\": 46155,\n  \"camry</w>\": 46472,\n  \"cams</w>\": 32590,\n  \"can\": 950,\n  \"can</w>\": 753,\n  \"cana</w>\": 28341,\n  \"canad\": 13193,\n  \"canada</w>\": 2698,\n  \"canadaday</w>\": 39800,\n  \"canadi\": 4329,\n  \"canadian\": 22160,\n  \"canadian</w>\": 5255,\n  \"canadians</w>\": 18989,\n  \"canadiens</w>\": 40932,\n  \"canal\": 28585,\n  \"canal</w>\": 9535,\n  \"canals</w>\": 38483,\n  \"canaria</w>\": 47117,\n  \"canary\": 40409,\n  \"canary</w>\": 24523,\n  \"canberra</w>\": 16719,\n  \"canc\": 43189,\n  \"cancel\": 12026,\n  \"cancel</w>\": 21546,\n  \"canceled</w>\": 25874,\n  \"cancell\": 28027,\n  \"cancellation</w>\": 38765,\n  \"cancelled</w>\": 13270,\n  \"cancels</w>\": 34089,\n  \"cancer\": 12690,\n  \"cancer</w>\": 3148,\n  \"cancers</w>\": 33201,\n  \"cancun</w>\": 34721,\n  \"cand\": 4986,\n  \"candace</w>\": 45623,\n  \"candel\": 47834,\n  \"candi\": 6034,\n  \"candice</w>\": 30024,\n  \"candid\": 7884,\n  \"candid</w>\": 19206,\n  \"candidacy</w>\": 46248,\n  \"candidate</w>\": 6475,\n  \"candidates</w>\": 8619,\n  \"candied</w>\": 43982,\n  \"candies</w>\": 46305,\n  \"candle\": 18995,\n  \"candle</w>\": 12674,\n  \"candlelight</w>\": 34724,\n  \"candles</w>\": 15472,\n  \"candy\": 20741,\n  \"candy</w>\": 6417,\n  \"cane\": 23644,\n  \"cane</w>\": 14716,\n  \"canelo</w>\": 43210,\n  \"canes</w>\": 21902,\n  \"cani\": 35592,\n  \"canine</w>\": 27380,\n  \"cann\": 4139,\n  \"cann</w>\": 23709,\n  \"cannab\": 7577,\n  \"cannabis\": 31837,\n  \"cannabis</w>\": 8861,\n  \"canne\": 44252,\n  \"canned</w>\": 27290,\n  \"cannes</w>\": 13773,\n  \"canni\": 26389,\n  \"canning</w>\": 38621,\n  \"cannon\": 28771,\n  \"cannon</w>\": 15661,\n  \"cannons</w>\": 46269,\n  \"cannot</w>\": 4785,\n  \"canny</w>\": 26986,\n  \"cano\": 31668,\n  \"cano</w>\": 25937,\n  \"canoe</w>\": 23503,\n  \"canola</w>\": 40389,\n  \"canon\": 17749,\n  \"canon</w>\": 9310,\n  \"canopy</w>\": 26061,\n  \"cans</w>\": 13707,\n  \"cant\": 13395,\n  \"cant</w>\": 5784,\n  \"canteen</w>\": 39230,\n  \"canter\": 19301,\n  \"canterbury</w>\": 22271,\n  \"canti\": 42845,\n  \"cantina</w>\": 47472,\n  \"canton\": 37735,\n  \"canton</w>\": 25363,\n  \"cantore</w>\": 41769,\n  \"cantwait</w>\": 33760,\n  \"canu\": 20171,\n  \"canucks</w>\": 24321,\n  \"canv\": 30714,\n  \"canvas\": 22441,\n  \"canvas</w>\": 7483,\n  \"canvass</w>\": 40054,\n  \"canvassing</w>\": 33783,\n  \"cany\": 47674,\n  \"canyon\": 41246,\n  \"canyon</w>\": 9755,\n  \"cao</w>\": 29207,\n  \"cap\": 1289,\n  \"cap</w>\": 3938,\n  \"capabilities</w>\": 19512,\n  \"capability</w>\": 25885,\n  \"capable</w>\": 14742,\n  \"capac\": 24665,\n  \"capacity</w>\": 8970,\n  \"capcom</w>\": 28342,\n  \"cape\": 10288,\n  \"cape</w>\": 6631,\n  \"capecod</w>\": 41339,\n  \"capes</w>\": 38785,\n  \"capetown</w>\": 20059,\n  \"capit\": 6889,\n  \"capita</w>\": 41833,\n  \"capital\": 11198,\n  \"capital</w>\": 5439,\n  \"capitalism</w>\": 20068,\n  \"capitalist</w>\": 37015,\n  \"capitals</w>\": 29579,\n  \"capitol\": 43880,\n  \"capitol</w>\": 11375,\n  \"capo</w>\": 45477,\n  \"capp\": 16718,\n  \"capped</w>\": 24659,\n  \"capping</w>\": 42656,\n  \"cappuccino</w>\": 37402,\n  \"capri\": 48699,\n  \"capri</w>\": 30982,\n  \"capric\": 28667,\n  \"capricorn</w>\": 46314,\n  \"caps</w>\": 23185,\n  \"capsu\": 15608,\n  \"capsul\": 40341,\n  \"capsule</w>\": 20627,\n  \"capsules</w>\": 32870,\n  \"capt\": 45815,\n  \"capt</w>\": 17369,\n  \"captain\": 14958,\n  \"captain</w>\": 4621,\n  \"captainamerica</w>\": 46229,\n  \"captainmarvel</w>\": 48492,\n  \"captains</w>\": 18706,\n  \"caption</w>\": 11327,\n  \"captions</w>\": 41878,\n  \"captiv\": 19776,\n  \"captivating</w>\": 30580,\n  \"captive</w>\": 29038,\n  \"captivity</w>\": 41141,\n  \"capture</w>\": 8818,\n  \"captured</w>\": 8020,\n  \"captures</w>\": 15305,\n  \"capturing</w>\": 19548,\n  \"capu\": 44241,\n  \"car\": 811,\n  \"car</w>\": 1615,\n  \"cara</w>\": 20016,\n  \"carab\": 32251,\n  \"carac\": 30029,\n  \"caracas</w>\": 45854,\n  \"caramel</w>\": 14788,\n  \"carameli\": 41739,\n  \"caramelized</w>\": 43854,\n  \"carat</w>\": 32981,\n  \"carav\": 13814,\n  \"caravan</w>\": 18566,\n  \"carb</w>\": 21379,\n  \"carbo\": 43235,\n  \"carbon\": 14038,\n  \"carbon</w>\": 7549,\n  \"carbs</w>\": 29313,\n  \"carcin\": 31587,\n  \"carcinoma</w>\": 46810,\n  \"card\": 10793,\n  \"card</w>\": 2601,\n  \"cardam\": 49008,\n  \"cardboard</w>\": 19845,\n  \"cardi\": 6211,\n  \"cardi</w>\": 29677,\n  \"cardiac</w>\": 21256,\n  \"cardiff\": 22488,\n  \"cardiff</w>\": 9781,\n  \"cardigan</w>\": 30501,\n  \"cardin\": 8457,\n  \"cardinal\": 46310,\n  \"cardinal</w>\": 16472,\n  \"cardinals</w>\": 12837,\n  \"cardio\": 15003,\n  \"cardio</w>\": 23455,\n  \"cardiology</w>\": 37276,\n  \"cardiovascular</w>\": 29291,\n  \"cardo</w>\": 40625,\n  \"cards</w>\": 4094,\n  \"care\": 2050,\n  \"care</w>\": 1776,\n  \"cared</w>\": 27675,\n  \"career\": 20609,\n  \"career</w>\": 3061,\n  \"careers</w>\": 10090,\n  \"careful</w>\": 11999,\n  \"carefully</w>\": 15789,\n  \"caregi\": 22042,\n  \"caregiver</w>\": 46372,\n  \"caregivers</w>\": 35909,\n  \"careless</w>\": 47325,\n  \"carers</w>\": 26484,\n  \"cares</w>\": 10968,\n  \"caretaker</w>\": 48037,\n  \"carey</w>\": 14895,\n  \"cargo</w>\": 12490,\n  \"cari\": 18497,\n  \"cari</w>\": 37273,\n  \"carib\": 9757,\n  \"caribbean</w>\": 10368,\n  \"caribou</w>\": 42135,\n  \"caric\": 25337,\n  \"caricature</w>\": 38857,\n  \"carina</w>\": 44357,\n  \"caring</w>\": 13083,\n  \"carl\": 8273,\n  \"carl</w>\": 9482,\n  \"carla</w>\": 25552,\n  \"carleton</w>\": 46496,\n  \"carlin</w>\": 47559,\n  \"carlisle</w>\": 23276,\n  \"carlo\": 17861,\n  \"carlo</w>\": 15266,\n  \"carlos</w>\": 9538,\n  \"carlow</w>\": 44745,\n  \"carls\": 39635,\n  \"carlson</w>\": 24114,\n  \"carlton</w>\": 18934,\n  \"carly\": 23166,\n  \"carly</w>\": 22689,\n  \"carlyle</w>\": 46555,\n  \"carmel\": 30757,\n  \"carmel</w>\": 25601,\n  \"carmen\": 41427,\n  \"carmen</w>\": 18834,\n  \"carmichael</w>\": 41657,\n  \"carn\": 21597,\n  \"carnage</w>\": 31385,\n  \"carnation</w>\": 44577,\n  \"carnaval</w>\": 47238,\n  \"carne\": 17053,\n  \"carne</w>\": 42885,\n  \"carnegie</w>\": 25287,\n  \"carney</w>\": 34194,\n  \"carni\": 8438,\n  \"carnival\": 36708,\n  \"carnival</w>\": 10577,\n  \"caro\": 30317,\n  \"caro</w>\": 29344,\n  \"carol\": 4242,\n  \"carol</w>\": 11489,\n  \"carole</w>\": 31955,\n  \"carolin\": 26418,\n  \"carolina</w>\": 7027,\n  \"caroline\": 31064,\n  \"caroline</w>\": 12641,\n  \"carols</w>\": 33269,\n  \"carolyn</w>\": 25825,\n  \"carou\": 32224,\n  \"carousel</w>\": 36665,\n  \"carp</w>\": 26085,\n  \"carpen\": 15584,\n  \"carpenter</w>\": 18475,\n  \"carpet</w>\": 6922,\n  \"carpets</w>\": 34612,\n  \"carr\": 26951,\n  \"carr</w>\": 17136,\n  \"carra\": 32332,\n  \"carre\": 31114,\n  \"carrera</w>\": 32952,\n  \"carri\": 4739,\n  \"carriage\": 47885,\n  \"carriage</w>\": 21087,\n  \"carrick</w>\": 44052,\n  \"carrie\": 30334,\n  \"carrie</w>\": 15848,\n  \"carried</w>\": 12960,\n  \"carrier</w>\": 12308,\n  \"carriers</w>\": 26865,\n  \"carries</w>\": 17982,\n  \"carrieunderwood</w>\": 47338,\n  \"carrington</w>\": 48759,\n  \"carroll\": 41911,\n  \"carroll</w>\": 14893,\n  \"carrot</w>\": 15435,\n  \"carrots</w>\": 19299,\n  \"carry\": 31863,\n  \"carry</w>\": 6998,\n  \"carrying</w>\": 9920,\n  \"cars</w>\": 3346,\n  \"carsforsale</w>\": 45222,\n  \"carson\": 41766,\n  \"carson</w>\": 13171,\n  \"cart\": 27705,\n  \"cart</w>\": 13065,\n  \"cartag\": 45042,\n  \"cartagena</w>\": 47157,\n  \"carte</w>\": 44949,\n  \"cartel</w>\": 30529,\n  \"carter\": 27330,\n  \"carter</w>\": 7260,\n  \"cartier</w>\": 32951,\n  \"carto\": 5487,\n  \"carton</w>\": 41812,\n  \"cartoon\": 33082,\n  \"cartoon</w>\": 7651,\n  \"cartoonist</w>\": 30793,\n  \"cartoons</w>\": 17673,\n  \"cartri\": 47084,\n  \"cartridge</w>\": 29432,\n  \"cartridges</w>\": 49249,\n  \"carts</w>\": 27581,\n  \"cartunesapp</w>\": 32888,\n  \"caruso</w>\": 45192,\n  \"carve</w>\": 40152,\n  \"carved</w>\": 15127,\n  \"carver</w>\": 28850,\n  \"carving</w>\": 19428,\n  \"carvings</w>\": 48123,\n  \"cary</w>\": 22844,\n  \"cas\": 1671,\n  \"cas</w>\": 13831,\n  \"casa</w>\": 14643,\n  \"casablanc\": 36572,\n  \"casablanca</w>\": 41950,\n  \"casc\": 36714,\n  \"casca\": 43296,\n  \"cascade</w>\": 29065,\n  \"cascades</w>\": 46454,\n  \"case\": 17698,\n  \"case</w>\": 2068,\n  \"cases</w>\": 6888,\n  \"casey\": 24899,\n  \"casey</w>\": 12836,\n  \"cash\": 11050,\n  \"cash</w>\": 5131,\n  \"cashback</w>\": 36368,\n  \"cashe\": 32233,\n  \"cashew</w>\": 39531,\n  \"cashi\": 29517,\n  \"cashier</w>\": 34547,\n  \"cashmere</w>\": 34566,\n  \"casi\": 38350,\n  \"casino</w>\": 10473,\n  \"casio</w>\": 32261,\n  \"cask</w>\": 26299,\n  \"casm</w>\": 35198,\n  \"casper</w>\": 35892,\n  \"cass</w>\": 22556,\n  \"cassandra</w>\": 35289,\n  \"casser\": 31093,\n  \"casserole</w>\": 36045,\n  \"cassette</w>\": 19717,\n  \"cassi\": 14942,\n  \"cassidy</w>\": 21757,\n  \"cassie</w>\": 29323,\n  \"cassini</w>\": 46554,\n  \"cast\": 2509,\n  \"cast</w>\": 1970,\n  \"caste</w>\": 32693,\n  \"casted</w>\": 33838,\n  \"castel\": 43306,\n  \"castell\": 31792,\n  \"caster\": 32101,\n  \"caster</w>\": 8449,\n  \"casters</w>\": 29721,\n  \"castic</w>\": 47737,\n  \"castillo</w>\": 30813,\n  \"casting</w>\": 7087,\n  \"castle\": 12496,\n  \"castle</w>\": 3540,\n  \"castles</w>\": 24766,\n  \"castro</w>\": 16950,\n  \"casts</w>\": 10595,\n  \"casu\": 15345,\n  \"casual</w>\": 10129,\n  \"casually</w>\": 18840,\n  \"casualties</w>\": 30244,\n  \"casualty</w>\": 31222,\n  \"cat\": 1481,\n  \"cat</w>\": 2368,\n  \"cata</w>\": 42279,\n  \"catal\": 12792,\n  \"catalan</w>\": 30532,\n  \"catalina</w>\": 36576,\n  \"catalo\": 34740,\n  \"catalog</w>\": 20036,\n  \"catalogue</w>\": 20985,\n  \"catalonia</w>\": 27039,\n  \"catalunya</w>\": 44132,\n  \"cataly\": 15894,\n  \"catalyst</w>\": 25387,\n  \"catan</w>\": 45893,\n  \"catap\": 39514,\n  \"catar\": 35801,\n  \"catastro\": 22736,\n  \"catastrophe</w>\": 41422,\n  \"catastrophic</w>\": 34448,\n  \"catch\": 18901,\n  \"catch</w>\": 3042,\n  \"catcher</w>\": 15965,\n  \"catchers</w>\": 39060,\n  \"catches</w>\": 17213,\n  \"catching</w>\": 8617,\n  \"catchy</w>\": 37114,\n  \"catday</w>\": 32243,\n  \"cate\": 6357,\n  \"cate</w>\": 24510,\n  \"cated</w>\": 31823,\n  \"categor\": 17006,\n  \"categori\": 40117,\n  \"categories</w>\": 19971,\n  \"category</w>\": 9432,\n  \"cater\": 16634,\n  \"cater</w>\": 38101,\n  \"catering</w>\": 16697,\n  \"caterpillar</w>\": 27111,\n  \"catfish</w>\": 26077,\n  \"cath\": 9196,\n  \"cath</w>\": 30811,\n  \"cathar\": 43784,\n  \"cathe\": 7174,\n  \"cathedr\": 46370,\n  \"cathedral</w>\": 7865,\n  \"catherine\": 35035,\n  \"catherine</w>\": 12339,\n  \"catho\": 7595,\n  \"cathol\": 16315,\n  \"catholic\": 20382,\n  \"catholic</w>\": 7757,\n  \"catholics</w>\": 36808,\n  \"cathy\": 40326,\n  \"cathy</w>\": 22731,\n  \"cation</w>\": 21367,\n  \"cato</w>\": 33558,\n  \"cats\": 38800,\n  \"cats</w>\": 3989,\n  \"catsofinstagram</w>\": 39901,\n  \"catsoftwitter</w>\": 17273,\n  \"catt\": 37339,\n  \"cattle\": 48799,\n  \"cattle</w>\": 13644,\n  \"caturday</w>\": 20892,\n  \"catwalk</w>\": 36565,\n  \"catwoman</w>\": 47251,\n  \"cau\": 1121,\n  \"cau</w>\": 45529,\n  \"caucus</w>\": 18847,\n  \"caught</w>\": 4520,\n  \"caul\": 23460,\n  \"cauley</w>\": 41682,\n  \"caulfield</w>\": 44906,\n  \"cauli\": 20123,\n  \"cauliflower</w>\": 23802,\n  \"cause\": 18982,\n  \"cause</w>\": 1394,\n  \"caused</w>\": 8940,\n  \"causes</w>\": 9775,\n  \"causeway</w>\": 35034,\n  \"causing</w>\": 10779,\n  \"caution</w>\": 15656,\n  \"cautious</w>\": 36579,\n  \"cav\": 4942,\n  \"cav</w>\": 45935,\n  \"cava</w>\": 48682,\n  \"caval\": 24537,\n  \"cavali\": 20783,\n  \"cavalier</w>\": 44488,\n  \"cavaliers</w>\": 30194,\n  \"cavalry</w>\": 32467,\n  \"cave\": 25441,\n  \"cave</w>\": 9654,\n  \"cavendish</w>\": 42945,\n  \"caver\": 41487,\n  \"caves</w>\": 22096,\n  \"cavi\": 27360,\n  \"caviar</w>\": 31228,\n  \"cavill</w>\": 40492,\n  \"cavity</w>\": 43156,\n  \"cavs</w>\": 16800,\n  \"caw\": 38405,\n  \"caw</w>\": 43804,\n  \"cawx</w>\": 26739,\n  \"cay\": 11876,\n  \"cay</w>\": 37399,\n  \"cayenne</w>\": 43650,\n  \"cayman</w>\": 33737,\n  \"caz\": 48451,\n  \"cb\": 4034,\n  \"cb</w>\": 8830,\n  \"cba</w>\": 38472,\n  \"cbb</w>\": 31487,\n  \"cbc\": 14096,\n  \"cbc</w>\": 14523,\n  \"cbd</w>\": 13176,\n  \"cbe</w>\": 43639,\n  \"cbi</w>\": 30875,\n  \"cbj</w>\": 35608,\n  \"cbn</w>\": 26579,\n  \"cbp</w>\": 46723,\n  \"cbr</w>\": 28762,\n  \"cbs\": 16788,\n  \"cbs</w>\": 8009,\n  \"cc\": 2976,\n  \"cc</w>\": 2021,\n  \"cca</w>\": 17987,\n  \"ccc</w>\": 21856,\n  \"ccd</w>\": 48556,\n  \"ccg</w>\": 37755,\n  \"cch\": 21789,\n  \"cchini</w>\": 28467,\n  \"cci\": 32942,\n  \"cci</w>\": 8196,\n  \"ccl</w>\": 43773,\n  \"ccm</w>\": 40435,\n  \"cco</w>\": 28786,\n  \"ccot</w>\": 24950,\n  \"ccp</w>\": 43045,\n  \"ccs</w>\": 30400,\n  \"cctv</w>\": 23097,\n  \"ccu</w>\": 49023,\n  \"cd\": 4308,\n  \"cd</w>\": 4480,\n  \"cda</w>\": 45565,\n  \"cdc\": 41098,\n  \"cdc</w>\": 25779,\n  \"cdn\": 8886,\n  \"cdn</w>\": 26802,\n  \"cdnpoli</w>\": 11645,\n  \"cdo</w>\": 47187,\n  \"cdp</w>\": 39624,\n  \"cds</w>\": 20784,\n  \"cdt</w>\": 18455,\n  \"ce\": 685,\n  \"ce</w>\": 629,\n  \"cea</w>\": 28355,\n  \"cean\": 34409,\n  \"cean</w>\": 37295,\n  \"cease\": 32856,\n  \"cease</w>\": 25499,\n  \"ceasefire</w>\": 38291,\n  \"cebu</w>\": 20146,\n  \"cec\": 29694,\n  \"cec</w>\": 40029,\n  \"cecil\": 26987,\n  \"cecil</w>\": 27169,\n  \"cecilia</w>\": 35440,\n  \"ced\": 25634,\n  \"ced</w>\": 2323,\n  \"cedar\": 24167,\n  \"cedar</w>\": 13799,\n  \"cedric</w>\": 36608,\n  \"cee\": 45966,\n  \"cee</w>\": 15015,\n  \"cees</w>\": 47914,\n  \"ceil\": 27275,\n  \"ceiling</w>\": 12374,\n  \"ceilings</w>\": 33770,\n  \"cek</w>\": 45544,\n  \"cel\": 2269,\n  \"cel</w>\": 7597,\n  \"cele\": 1314,\n  \"celeb\": 38862,\n  \"celeb</w>\": 19393,\n  \"celebr\": 1372,\n  \"celebrate\": 31414,\n  \"celebrate</w>\": 2694,\n  \"celebrated</w>\": 9184,\n  \"celebrates</w>\": 7564,\n  \"celebrating</w>\": 3382,\n  \"celebration</w>\": 4615,\n  \"celebrations</w>\": 10825,\n  \"celebratory</w>\": 34115,\n  \"celebrities</w>\": 17071,\n  \"celebrity\": 23981,\n  \"celebrity</w>\": 7320,\n  \"celebs</w>\": 19803,\n  \"celed</w>\": 25741,\n  \"celer\": 9621,\n  \"celery</w>\": 30990,\n  \"celeste</w>\": 29364,\n  \"celesti\": 29497,\n  \"celestial</w>\": 32669,\n  \"celi\": 25567,\n  \"celia</w>\": 44489,\n  \"celine</w>\": 33644,\n  \"cell\": 9316,\n  \"cell</w>\": 5533,\n  \"cellar</w>\": 24282,\n  \"cellars</w>\": 44976,\n  \"cellence</w>\": 34687,\n  \"cello</w>\": 23013,\n  \"cellphone</w>\": 39029,\n  \"cells</w>\": 8890,\n  \"cellu\": 16791,\n  \"cellular</w>\": 23268,\n  \"cels</w>\": 24021,\n  \"celsius</w>\": 47057,\n  \"celtic\": 21897,\n  \"celtic</w>\": 10523,\n  \"celticfc</w>\": 38612,\n  \"celtics</w>\": 16226,\n  \"cem</w>\": 41435,\n  \"ceme\": 10517,\n  \"cement</w>\": 4369,\n  \"cements</w>\": 19448,\n  \"cemetery</w>\": 11660,\n  \"cen\": 1306,\n  \"cen</w>\": 30106,\n  \"cena</w>\": 21591,\n  \"cence</w>\": 24410,\n  \"cency</w>\": 41259,\n  \"cene</w>\": 30038,\n  \"censor\": 24230,\n  \"censor</w>\": 44709,\n  \"censored</w>\": 30951,\n  \"censorship</w>\": 27284,\n  \"census</w>\": 23677,\n  \"cent\": 1784,\n  \"cent</w>\": 3662,\n  \"centenary</w>\": 22422,\n  \"centennial</w>\": 20895,\n  \"center\": 16651,\n  \"center</w>\": 2119,\n  \"centered</w>\": 24584,\n  \"centers</w>\": 14494,\n  \"centi\": 48889,\n  \"centime\": 48687,\n  \"centr\": 2370,\n  \"central\": 13448,\n  \"central</w>\": 3339,\n  \"centre\": 26310,\n  \"centre</w>\": 2916,\n  \"centred</w>\": 47925,\n  \"centres</w>\": 19354,\n  \"centri\": 30872,\n  \"centric</w>\": 19297,\n  \"centro</w>\": 37178,\n  \"cents</w>\": 11934,\n  \"centu\": 16818,\n  \"centuri\": 36816,\n  \"centuries</w>\": 19014,\n  \"century\": 26134,\n  \"century</w>\": 4275,\n  \"ceo\": 46340,\n  \"ceo</w>\": 3559,\n  \"ceos</w>\": 28332,\n  \"cep\": 2632,\n  \"cep</w>\": 48714,\n  \"ceph\": 44343,\n  \"cept</w>\": 3678,\n  \"ception</w>\": 12346,\n  \"cer\": 1364,\n  \"cer</w>\": 1925,\n  \"cera</w>\": 34608,\n  \"ceram\": 10677,\n  \"ceramic</w>\": 15112,\n  \"ceramics</w>\": 22438,\n  \"cere\": 3984,\n  \"cere</w>\": 22085,\n  \"cereal</w>\": 17581,\n  \"cereals</w>\": 48618,\n  \"cerebral</w>\": 39073,\n  \"ceremon\": 15796,\n  \"ceremonial</w>\": 33281,\n  \"ceremonies</w>\": 21547,\n  \"ceremony</w>\": 5193,\n  \"cern</w>\": 44851,\n  \"cers</w>\": 13638,\n  \"cert</w>\": 27522,\n  \"certain\": 8526,\n  \"certain</w>\": 7883,\n  \"certainly</w>\": 10883,\n  \"certainty</w>\": 20054,\n  \"certi\": 4888,\n  \"certific\": 9443,\n  \"certificate</w>\": 11786,\n  \"certificates</w>\": 25281,\n  \"certification</w>\": 14735,\n  \"certified</w>\": 9288,\n  \"cerv\": 25738,\n  \"cervical</w>\": 35953,\n  \"ces\": 28715,\n  \"ces</w>\": 1604,\n  \"cesar\": 37025,\n  \"cesar</w>\": 28603,\n  \"cess\": 2314,\n  \"cess</w>\": 1554,\n  \"cessna</w>\": 36596,\n  \"cest</w>\": 27245,\n  \"cester\": 15769,\n  \"cester</w>\": 12718,\n  \"cet</w>\": 14960,\n  \"cett</w>\": 46708,\n  \"ceu</w>\": 37457,\n  \"cevic\": 48369,\n  \"cey</w>\": 20971,\n  \"cf\": 10189,\n  \"cf</w>\": 11171,\n  \"cfa</w>\": 34521,\n  \"cfb</w>\": 32931,\n  \"cfc</w>\": 11577,\n  \"cfd</w>\": 46171,\n  \"cfl\": 46320,\n  \"cfl</w>\": 22332,\n  \"cfo</w>\": 26937,\n  \"cfp</w>\": 40756,\n  \"cfr</w>\": 44033,\n  \"cfs</w>\": 32835,\n  \"cg\": 27118,\n  \"cg</w>\": 14740,\n  \"cgc</w>\": 38775,\n  \"cgi</w>\": 30520,\n  \"ch\": 540,\n  \"ch</w>\": 634,\n  \"cha\": 1587,\n  \"cha</w>\": 4541,\n  \"chab\": 26670,\n  \"chad\": 13095,\n  \"chad</w>\": 12923,\n  \"chae\": 9460,\n  \"chaf\": 38123,\n  \"chag\": 27989,\n  \"chai\": 31590,\n  \"chai</w>\": 18919,\n  \"chain\": 13898,\n  \"chain</w>\": 3946,\n  \"chained</w>\": 34402,\n  \"chains</w>\": 14438,\n  \"chainsaw</w>\": 37617,\n  \"chainz</w>\": 39687,\n  \"chair\": 4728,\n  \"chair</w>\": 4269,\n  \"chaired</w>\": 31664,\n  \"chairing</w>\": 42205,\n  \"chairman</w>\": 6901,\n  \"chairperson</w>\": 31584,\n  \"chairs</w>\": 12033,\n  \"chak\": 13702,\n  \"chak</w>\": 41713,\n  \"chakra\": 38304,\n  \"chakra</w>\": 33241,\n  \"chal\": 7397,\n  \"chal</w>\": 30809,\n  \"chale</w>\": 38099,\n  \"chalet</w>\": 37907,\n  \"chalk\": 31362,\n  \"chalk</w>\": 17846,\n  \"chall\": 2073,\n  \"challeng\": 4138,\n  \"challenge\": 29462,\n  \"challenge</w>\": 2836,\n  \"challenged</w>\": 17380,\n  \"challenger</w>\": 18228,\n  \"challengers</w>\": 46404,\n  \"challenges</w>\": 6280,\n  \"challenging</w>\": 11754,\n  \"chalmers</w>\": 47955,\n  \"cham\": 1290,\n  \"cham</w>\": 19951,\n  \"chamber\": 18983,\n  \"chamber</w>\": 7642,\n  \"chamberlain</w>\": 32756,\n  \"chambers</w>\": 16501,\n  \"chamele\": 34759,\n  \"chameleon</w>\": 41317,\n  \"champ\": 36813,\n  \"champ</w>\": 6602,\n  \"champag\": 10283,\n  \"champagne</w>\": 11007,\n  \"champi\": 1680,\n  \"champion\": 2643,\n  \"champion</w>\": 3950,\n  \"champions</w>\": 4227,\n  \"championship</w>\": 3429,\n  \"championships</w>\": 7047,\n  \"championsleague</w>\": 27638,\n  \"champs</w>\": 6240,\n  \"chan\": 1255,\n  \"chan</w>\": 6704,\n  \"chana</w>\": 48752,\n  \"chanc\": 13931,\n  \"chance\": 32940,\n  \"chance</w>\": 2594,\n  \"chancellor</w>\": 15886,\n  \"chances</w>\": 10870,\n  \"chand\": 7126,\n  \"chand</w>\": 41508,\n  \"chandelier</w>\": 30570,\n  \"chandi\": 12482,\n  \"chandigarh</w>\": 34106,\n  \"chandler</w>\": 17595,\n  \"chandra\": 27082,\n  \"chandra</w>\": 25348,\n  \"chanel</w>\": 16951,\n  \"chang\": 2233,\n  \"chang</w>\": 16461,\n  \"change\": 11608,\n  \"change</w>\": 1799,\n  \"changeable</w>\": 41335,\n  \"changed</w>\": 4907,\n  \"changer</w>\": 18406,\n  \"changers</w>\": 35185,\n  \"changes</w>\": 4938,\n  \"changing\": 40384,\n  \"changing</w>\": 5621,\n  \"changmin</w>\": 47410,\n  \"chann\": 8804,\n  \"channel\": 25837,\n  \"channel</w>\": 3847,\n  \"channeling</w>\": 28197,\n  \"channels</w>\": 13961,\n  \"channing</w>\": 37417,\n  \"chant\": 18165,\n  \"chant</w>\": 13521,\n  \"chanting</w>\": 32111,\n  \"chants</w>\": 22723,\n  \"chanyeol</w>\": 18805,\n  \"chao</w>\": 31815,\n  \"chaos</w>\": 10853,\n  \"chaotic</w>\": 33501,\n  \"chap\": 3825,\n  \"chap</w>\": 21939,\n  \"chapel\": 40859,\n  \"chapel</w>\": 10137,\n  \"chaplain</w>\": 38348,\n  \"chaplin</w>\": 32545,\n  \"chapman</w>\": 17968,\n  \"chapp\": 20634,\n  \"chaps</w>\": 36823,\n  \"chapter</w>\": 6014,\n  \"chapters</w>\": 22936,\n  \"char\": 1054,\n  \"char</w>\": 16017,\n  \"chara</w>\": 35668,\n  \"charac\": 2792,\n  \"character\": 10997,\n  \"character</w>\": 4009,\n  \"characterdesign</w>\": 38149,\n  \"characteri\": 20920,\n  \"characteristic</w>\": 44747,\n  \"characteristics</w>\": 26037,\n  \"characters</w>\": 6564,\n  \"charan</w>\": 31851,\n  \"charcoal</w>\": 19268,\n  \"chard</w>\": 17524,\n  \"chardon\": 26599,\n  \"chardonnay</w>\": 28161,\n  \"charge\": 25032,\n  \"charge</w>\": 5948,\n  \"chargeable</w>\": 35664,\n  \"charged</w>\": 7916,\n  \"charger</w>\": 13090,\n  \"chargers</w>\": 17352,\n  \"charges</w>\": 8962,\n  \"charging</w>\": 12514,\n  \"chariot</w>\": 38811,\n  \"charis\": 24449,\n  \"charisma</w>\": 45041,\n  \"charismatic</w>\": 37205,\n  \"charitable</w>\": 23256,\n  \"charities</w>\": 18493,\n  \"charity\": 20008,\n  \"charity</w>\": 4607,\n  \"charitytuesday</w>\": 42794,\n  \"charl\": 47736,\n  \"charle\": 10217,\n  \"charles\": 27983,\n  \"charles</w>\": 5127,\n  \"charleston</w>\": 15478,\n  \"charley</w>\": 38027,\n  \"charli\": 21784,\n  \"charli</w>\": 49392,\n  \"charlie\": 16764,\n  \"charlie</w>\": 6393,\n  \"charlotte\": 18445,\n  \"charlotte</w>\": 7871,\n  \"charlottesville</w>\": 32027,\n  \"charlton</w>\": 27048,\n  \"charm</w>\": 10876,\n  \"charmed</w>\": 39790,\n  \"charming</w>\": 12177,\n  \"charms</w>\": 21944,\n  \"charred</w>\": 44085,\n  \"chart\": 42685,\n  \"chart</w>\": 5053,\n  \"charted</w>\": 27939,\n  \"charter\": 42345,\n  \"charter</w>\": 13569,\n  \"chartered</w>\": 31298,\n  \"charters</w>\": 46626,\n  \"charting</w>\": 39841,\n  \"charts</w>\": 10728,\n  \"chas\": 10717,\n  \"chas</w>\": 29838,\n  \"chase\": 21503,\n  \"chase</w>\": 3859,\n  \"chased</w>\": 30342,\n  \"chaser</w>\": 29560,\n  \"chasers</w>\": 34158,\n  \"chases</w>\": 45011,\n  \"chasing\": 46909,\n  \"chasing</w>\": 13376,\n  \"chassis</w>\": 29188,\n  \"chast\": 42176,\n  \"chasu\": 41352,\n  \"chat\": 5355,\n  \"chat</w>\": 2402,\n  \"chatbots</w>\": 43994,\n  \"chate\": 30377,\n  \"chateau\": 44582,\n  \"chateau</w>\": 23520,\n  \"chath\": 46849,\n  \"chatham</w>\": 32030,\n  \"chats</w>\": 13263,\n  \"chatt\": 21618,\n  \"chattanoo\": 28009,\n  \"chattanooga</w>\": 29866,\n  \"chatted</w>\": 34124,\n  \"chatter\": 33473,\n  \"chatter</w>\": 41103,\n  \"chatting</w>\": 12401,\n  \"chatur\": 33839,\n  \"chau\": 11263,\n  \"chau</w>\": 37536,\n  \"chauffe\": 45440,\n  \"chauhan</w>\": 46663,\n  \"chav\": 28997,\n  \"chavez</w>\": 27480,\n  \"chaw\": 39639,\n  \"chay\": 45317,\n  \"chaz\": 47815,\n  \"chc</w>\": 36233,\n  \"chd</w>\": 41645,\n  \"che\": 983,\n  \"che</w>\": 3842,\n  \"chea</w>\": 39580,\n  \"chead\": 48358,\n  \"cheap\": 27036,\n  \"cheap</w>\": 8678,\n  \"cheape\": 26164,\n  \"cheaper</w>\": 17776,\n  \"cheapest</w>\": 26640,\n  \"cheat</w>\": 18180,\n  \"cheated</w>\": 34285,\n  \"cheating</w>\": 19722,\n  \"chec\": 1113,\n  \"check\": 7672,\n  \"check</w>\": 1217,\n  \"checked</w>\": 10387,\n  \"checker</w>\": 45883,\n  \"checkers</w>\": 48181,\n  \"checking</w>\": 7441,\n  \"checklist</w>\": 26989,\n  \"checkout</w>\": 13101,\n  \"checkpoint</w>\": 27531,\n  \"checks</w>\": 13737,\n  \"ched\": 11341,\n  \"ched</w>\": 2146,\n  \"cheddar</w>\": 20551,\n  \"chee\": 5326,\n  \"chee</w>\": 20944,\n  \"cheek\": 40000,\n  \"cheek</w>\": 21227,\n  \"cheeks</w>\": 23019,\n  \"cheeky</w>\": 15068,\n  \"cheer\": 9733,\n  \"cheer</w>\": 6918,\n  \"cheered</w>\": 38111,\n  \"cheerful</w>\": 28882,\n  \"cheering</w>\": 14289,\n  \"cheerleader</w>\": 29072,\n  \"cheerleaders</w>\": 22343,\n  \"cheerleading</w>\": 36366,\n  \"cheers</w>\": 6562,\n  \"chees\": 15182,\n  \"cheese\": 10738,\n  \"cheese</w>\": 4108,\n  \"cheeseburger</w>\": 41200,\n  \"cheesecake</w>\": 17803,\n  \"cheeses</w>\": 36076,\n  \"cheesy</w>\": 22093,\n  \"cheetah</w>\": 27431,\n  \"chef\": 12137,\n  \"chef</w>\": 4895,\n  \"chefs</w>\": 14486,\n  \"chek</w>\": 43745,\n  \"chel\": 3084,\n  \"chel</w>\": 25970,\n  \"chell</w>\": 46854,\n  \"chelle</w>\": 30141,\n  \"chelms\": 34936,\n  \"chelmsford</w>\": 39890,\n  \"chelse\": 19071,\n  \"chelsea</w>\": 6031,\n  \"chelseafc</w>\": 25927,\n  \"chelten\": 18889,\n  \"cheltenham</w>\": 21589,\n  \"chem\": 5667,\n  \"chem</w>\": 13698,\n  \"chemi\": 7179,\n  \"chemical\": 39376,\n  \"chemical</w>\": 9208,\n  \"chemicals</w>\": 17426,\n  \"chemist</w>\": 23138,\n  \"chemistry</w>\": 8841,\n  \"chemo\": 33095,\n  \"chemo</w>\": 36348,\n  \"chemotherapy</w>\": 41412,\n  \"chemtrails</w>\": 46015,\n  \"chen\": 5907,\n  \"chen</w>\": 8983,\n  \"cheney</w>\": 43522,\n  \"cheng\": 32512,\n  \"cheng</w>\": 30190,\n  \"chenko</w>\": 29073,\n  \"chennai\": 28948,\n  \"chennai</w>\": 12791,\n  \"cheon</w>\": 11498,\n  \"cheque</w>\": 28168,\n  \"cher\": 3597,\n  \"cher</w>\": 3466,\n  \"cheri\": 26471,\n  \"cherish</w>\": 20053,\n  \"cherished</w>\": 42325,\n  \"cherno\": 35376,\n  \"chernobyl</w>\": 40554,\n  \"chero\": 19844,\n  \"cherokee</w>\": 22860,\n  \"cherries</w>\": 27248,\n  \"cherry\": 21470,\n  \"cherry</w>\": 7325,\n  \"chers</w>\": 5789,\n  \"chery</w>\": 38478,\n  \"cheryl\": 37784,\n  \"cheryl</w>\": 20600,\n  \"ches\": 18346,\n  \"ches</w>\": 1910,\n  \"chesa\": 28349,\n  \"chesapeake</w>\": 32909,\n  \"cheshire</w>\": 17130,\n  \"chesney</w>\": 48747,\n  \"chess\": 27170,\n  \"chess</w>\": 8397,\n  \"chest\": 18217,\n  \"chest</w>\": 10563,\n  \"chester\": 10466,\n  \"chester</w>\": 3343,\n  \"chesterfield</w>\": 32975,\n  \"chestnut</w>\": 21834,\n  \"chet</w>\": 9663,\n  \"chett</w>\": 24695,\n  \"chev\": 7152,\n  \"chev</w>\": 41145,\n  \"chevro\": 12850,\n  \"chevrolet</w>\": 13240,\n  \"chevron</w>\": 33792,\n  \"chevy</w>\": 16581,\n  \"chew\": 32645,\n  \"chew</w>\": 22642,\n  \"chewan</w>\": 23689,\n  \"chewbacca</w>\": 49355,\n  \"chewing</w>\": 31486,\n  \"chewy</w>\": 42940,\n  \"chey\": 26968,\n  \"chey</w>\": 31208,\n  \"cheyenne</w>\": 34805,\n  \"chez\": 49183,\n  \"chez</w>\": 10556,\n  \"chf</w>\": 33021,\n  \"chfield</w>\": 41619,\n  \"chhat\": 34127,\n  \"chhattisgarh</w>\": 44246,\n  \"chi\": 1337,\n  \"chi</w>\": 4039,\n  \"chia</w>\": 19147,\n  \"chiang</w>\": 33764,\n  \"chibi</w>\": 22306,\n  \"chic\": 2627,\n  \"chic</w>\": 9091,\n  \"chica</w>\": 44190,\n  \"chicag\": 16778,\n  \"chicago\": 15038,\n  \"chicago</w>\": 3530,\n  \"chicagof\": 40638,\n  \"chicagofire</w>\": 46576,\n  \"chicas</w>\": 40664,\n  \"chichester</w>\": 43823,\n  \"chick\": 3170,\n  \"chick</w>\": 11238,\n  \"chicken\": 26322,\n  \"chicken</w>\": 3717,\n  \"chickens</w>\": 21658,\n  \"chickpea</w>\": 48109,\n  \"chicks</w>\": 17810,\n  \"chico</w>\": 30379,\n  \"chie\": 40046,\n  \"chie</w>\": 12388,\n  \"chief\": 16830,\n  \"chief</w>\": 3455,\n  \"chiefs</w>\": 11419,\n  \"chiev\": 47761,\n  \"chiff\": 27407,\n  \"chiffon</w>\": 31817,\n  \"chig\": 42952,\n  \"chihu\": 22857,\n  \"chihuahu\": 25437,\n  \"chihuahua</w>\": 30181,\n  \"chik</w>\": 45455,\n  \"chil\": 1333,\n  \"child\": 4392,\n  \"child</w>\": 2913,\n  \"childcare</w>\": 31133,\n  \"childhood\": 34772,\n  \"childhood</w>\": 7551,\n  \"childish</w>\": 31939,\n  \"childre\": 2135,\n  \"children\": 11101,\n  \"children</w>\": 2153,\n  \"childrens\": 31551,\n  \"childrens</w>\": 21553,\n  \"childs</w>\": 39521,\n  \"chile</w>\": 10022,\n  \"chilean</w>\": 33186,\n  \"chili</w>\": 13033,\n  \"chill\": 6498,\n  \"chill</w>\": 6382,\n  \"chilled</w>\": 23540,\n  \"chillen</w>\": 45160,\n  \"chilli\": 26787,\n  \"chilli</w>\": 17067,\n  \"chillin</w>\": 10347,\n  \"chilling</w>\": 10179,\n  \"chillout</w>\": 39842,\n  \"chills</w>\": 25460,\n  \"chilly</w>\": 14450,\n  \"chim\": 10543,\n  \"chimney</w>\": 26821,\n  \"chimp</w>\": 44374,\n  \"chin\": 6555,\n  \"chin</w>\": 8979,\n  \"china\": 38943,\n  \"china</w>\": 2817,\n  \"chinatown</w>\": 28582,\n  \"chine\": 4013,\n  \"chinese\": 30568,\n  \"chinese</w>\": 4271,\n  \"ching\": 34621,\n  \"ching</w>\": 1439,\n  \"chino\": 47181,\n  \"chino</w>\": 27440,\n  \"chinook</w>\": 41577,\n  \"chinson</w>\": 33786,\n  \"chio</w>\": 19650,\n  \"chip\": 19271,\n  \"chip</w>\": 8730,\n  \"chipmun\": 46384,\n  \"chipot\": 17702,\n  \"chipotle</w>\": 19284,\n  \"chipp\": 39854,\n  \"chippe\": 46541,\n  \"chipped</w>\": 39892,\n  \"chipping</w>\": 40323,\n  \"chips</w>\": 8855,\n  \"chir\": 15564,\n  \"chiro\": 23413,\n  \"chiroprac\": 25987,\n  \"chiropractic</w>\": 34437,\n  \"chis\": 19920,\n  \"chistan</w>\": 20523,\n  \"chiswick</w>\": 47290,\n  \"chit\": 13515,\n  \"chit</w>\": 45626,\n  \"chita</w>\": 49184,\n  \"chitec\": 39862,\n  \"chive</w>\": 29222,\n  \"chives</w>\": 34921,\n  \"chk</w>\": 47424,\n  \"chl</w>\": 38592,\n  \"chley</w>\": 47748,\n  \"chlo\": 10374,\n  \"chloe\": 39966,\n  \"chloe</w>\": 13992,\n  \"chlor\": 23135,\n  \"chman</w>\": 35835,\n  \"chment</w>\": 20848,\n  \"chner</w>\": 48277,\n  \"cho\": 1327,\n  \"cho</w>\": 5150,\n  \"choa</w>\": 43077,\n  \"choc\": 32772,\n  \"choc</w>\": 21983,\n  \"choco\": 46285,\n  \"choco</w>\": 32692,\n  \"chocol\": 3443,\n  \"chocolat</w>\": 44631,\n  \"chocolate\": 29389,\n  \"chocolate</w>\": 3820,\n  \"chocolates</w>\": 24120,\n  \"choi</w>\": 23749,\n  \"choic\": 35606,\n  \"choice\": 23857,\n  \"choice</w>\": 4051,\n  \"choices</w>\": 11016,\n  \"choir</w>\": 9214,\n  \"choirs</w>\": 43277,\n  \"choke</w>\": 30231,\n  \"choked</w>\": 43521,\n  \"choker</w>\": 39642,\n  \"choking</w>\": 39993,\n  \"chol\": 19802,\n  \"cholera</w>\": 45999,\n  \"cholester\": 26861,\n  \"cholesterol</w>\": 27982,\n  \"chom\": 25151,\n  \"chon\": 20416,\n  \"chon</w>\": 21601,\n  \"chondri\": 37379,\n  \"chong</w>\": 26220,\n  \"choo\": 3869,\n  \"choo</w>\": 24437,\n  \"chool</w>\": 29578,\n  \"chools</w>\": 41958,\n  \"choose\": 22756,\n  \"choose</w>\": 5073,\n  \"chooses</w>\": 29923,\n  \"choosing</w>\": 13475,\n  \"chop\": 10458,\n  \"chop</w>\": 16663,\n  \"chopin</w>\": 42256,\n  \"chopped</w>\": 22580,\n  \"chopper</w>\": 24011,\n  \"chopping</w>\": 35375,\n  \"chopra</w>\": 24258,\n  \"chops</w>\": 26321,\n  \"chor\": 7567,\n  \"chor</w>\": 47795,\n  \"choral</w>\": 26684,\n  \"chord</w>\": 33005,\n  \"chords</w>\": 36152,\n  \"choreo\": 17443,\n  \"choreographer</w>\": 35952,\n  \"choreography</w>\": 32749,\n  \"chores</w>\": 40483,\n  \"chori\": 25718,\n  \"chorizo</w>\": 30802,\n  \"chorus</w>\": 20869,\n  \"chos</w>\": 26559,\n  \"chose</w>\": 11090,\n  \"chosen</w>\": 10044,\n  \"chou\": 16960,\n  \"chou</w>\": 42917,\n  \"choudhary</w>\": 45503,\n  \"chow\": 20257,\n  \"chow</w>\": 21657,\n  \"chowder</w>\": 37886,\n  \"chp</w>\": 35896,\n  \"chr</w>\": 36918,\n  \"chri\": 1135,\n  \"chris\": 9907,\n  \"chris</w>\": 2978,\n  \"chrisbrown</w>\": 41035,\n  \"chriss\": 46745,\n  \"chrissy\": 44762,\n  \"chrissy</w>\": 40485,\n  \"christ\": 1403,\n  \"christ</w>\": 6703,\n  \"christchurch</w>\": 27100,\n  \"christen\": 31956,\n  \"christensen</w>\": 42226,\n  \"christi\": 3328,\n  \"christi</w>\": 33213,\n  \"christian\": 11792,\n  \"christian</w>\": 4729,\n  \"christianity</w>\": 20000,\n  \"christians</w>\": 14842,\n  \"christie</w>\": 16084,\n  \"christin\": 30189,\n  \"christina</w>\": 15925,\n  \"christine\": 42610,\n  \"christine</w>\": 14712,\n  \"christma\": 12039,\n  \"christmas\": 18174,\n  \"christmas</w>\": 1677,\n  \"christmaseve</w>\": 44381,\n  \"christmass\": 44873,\n  \"christop\": 7917,\n  \"christoph</w>\": 47844,\n  \"christophe</w>\": 45486,\n  \"christopher\": 33349,\n  \"christopher</w>\": 9630,\n  \"christy</w>\": 28331,\n  \"chro\": 13207,\n  \"chromatic</w>\": 44207,\n  \"chrome\": 24843,\n  \"chrome</w>\": 9529,\n  \"chromo\": 35809,\n  \"chron\": 5577,\n  \"chron</w>\": 39781,\n  \"chronic\": 10115,\n  \"chronic</w>\": 13677,\n  \"chronicle</w>\": 20034,\n  \"chronicles</w>\": 18905,\n  \"chrono\": 29387,\n  \"chronograph</w>\": 38397,\n  \"chry\": 13508,\n  \"chrysler</w>\": 20078,\n  \"chs\": 40277,\n  \"chs</w>\": 8391,\n  \"chsnews</w>\": 44919,\n  \"cht</w>\": 11384,\n  \"chter</w>\": 47811,\n  \"chu\": 3799,\n  \"chu</w>\": 13622,\n  \"chubby</w>\": 29109,\n  \"chuck\": 13211,\n  \"chuck</w>\": 9894,\n  \"chuckle</w>\": 35733,\n  \"chucky</w>\": 42026,\n  \"chuffed</w>\": 27233,\n  \"chuk\": 25878,\n  \"chuk</w>\": 27221,\n  \"chul</w>\": 33001,\n  \"chum\": 46869,\n  \"chum</w>\": 41767,\n  \"chun\": 14693,\n  \"chun</w>\": 25391,\n  \"chung</w>\": 28418,\n  \"chunk</w>\": 30275,\n  \"chunks</w>\": 45538,\n  \"chunky</w>\": 27978,\n  \"chups</w>\": 46331,\n  \"chur\": 2309,\n  \"church\": 14956,\n  \"church</w>\": 2735,\n  \"churches</w>\": 15539,\n  \"churchill</w>\": 17527,\n  \"chus</w>\": 36246,\n  \"chut\": 28788,\n  \"chutney</w>\": 36261,\n  \"chy\": 15131,\n  \"chy</w>\": 8096,\n  \"chyna</w>\": 43398,\n  \"chÃ¢\": 48669,\n  \"ci\": 698,\n  \"ci</w>\": 5798,\n  \"cia</w>\": 4019,\n  \"cial</w>\": 1143,\n  \"cian</w>\": 32323,\n  \"ciao</w>\": 37677,\n  \"ciara</w>\": 31369,\n  \"cible</w>\": 28873,\n  \"cic\": 14539,\n  \"cic</w>\": 21517,\n  \"cid</w>\": 27359,\n  \"cide</w>\": 34178,\n  \"cider</w>\": 13547,\n  \"cides</w>\": 41326,\n  \"cie</w>\": 19730,\n  \"cier\": 24067,\n  \"cies</w>\": 6785,\n  \"cif</w>\": 35698,\n  \"cigar\": 26031,\n  \"cigar</w>\": 16525,\n  \"cigare\": 13044,\n  \"cigarette</w>\": 18548,\n  \"cigarettes</w>\": 22750,\n  \"cigars</w>\": 20750,\n  \"cii</w>\": 42408,\n  \"cil\": 9217,\n  \"cil</w>\": 2998,\n  \"cilan\": 33998,\n  \"cilantro</w>\": 34568,\n  \"cili\": 18977,\n  \"ciliation</w>\": 25294,\n  \"cim</w>\": 30021,\n  \"cin\": 2396,\n  \"cin</w>\": 25367,\n  \"cina</w>\": 39467,\n  \"cincin\": 13291,\n  \"cincinnati</w>\": 14197,\n  \"cinco</w>\": 25131,\n  \"cincode\": 40930,\n  \"cincodemayo</w>\": 42542,\n  \"cincy\": 30015,\n  \"cincy</w>\": 30286,\n  \"cinde\": 20660,\n  \"cinderella</w>\": 21515,\n  \"cindy\": 34439,\n  \"cindy</w>\": 18532,\n  \"cine\": 4015,\n  \"cine</w>\": 27451,\n  \"cinema\": 38251,\n  \"cinema</w>\": 6443,\n  \"cinemas</w>\": 14845,\n  \"cinematic</w>\": 25602,\n  \"cinemato\": 21919,\n  \"cinematographer</w>\": 39059,\n  \"cinematography</w>\": 33802,\n  \"ciner\": 39882,\n  \"cing</w>\": 4014,\n  \"cini</w>\": 25699,\n  \"cinnam\": 12768,\n  \"cinnamon</w>\": 13460,\n  \"cino</w>\": 18616,\n  \"cio\": 44584,\n  \"cio</w>\": 9954,\n  \"cion</w>\": 22024,\n  \"ciones</w>\": 37155,\n  \"cious</w>\": 38466,\n  \"cip\": 32884,\n  \"cir\": 2459,\n  \"cir</w>\": 41135,\n  \"circa</w>\": 10411,\n  \"circle\": 33574,\n  \"circle</w>\": 7117,\n  \"circles</w>\": 19411,\n  \"circling</w>\": 46036,\n  \"circu\": 5143,\n  \"circuit\": 35583,\n  \"circuit</w>\": 9801,\n  \"circuits</w>\": 33260,\n  \"circul\": 16618,\n  \"circular</w>\": 19733,\n  \"circulare\": 39525,\n  \"circulareconomy</w>\": 39878,\n  \"circulated</w>\": 46258,\n  \"circulating</w>\": 42980,\n  \"circulation</w>\": 27880,\n  \"circum\": 13406,\n  \"circumstances</w>\": 18786,\n  \"circus</w>\": 11833,\n  \"cirque</w>\": 36049,\n  \"cis\": 9459,\n  \"cis</w>\": 23513,\n  \"cisco\": 36689,\n  \"cisco</w>\": 19290,\n  \"cise</w>\": 19657,\n  \"cisely</w>\": 33434,\n  \"cision</w>\": 41957,\n  \"cism</w>\": 24166,\n  \"cist</w>\": 40906,\n  \"cit\": 4420,\n  \"cit</w>\": 31294,\n  \"citadel</w>\": 38036,\n  \"citation</w>\": 33581,\n  \"cite</w>\": 32641,\n  \"cited</w>\": 25069,\n  \"cites</w>\": 34490,\n  \"citi\": 4280,\n  \"citi</w>\": 30270,\n  \"cities</w>\": 5441,\n  \"citing</w>\": 29088,\n  \"citiz\": 5816,\n  \"citizen\": 11720,\n  \"citizen</w>\": 9814,\n  \"citizens</w>\": 7949,\n  \"citizenship</w>\": 17386,\n  \"cito</w>\": 42636,\n  \"citro\": 27941,\n  \"citroen</w>\": 35805,\n  \"citrus</w>\": 17379,\n  \"city\": 5002,\n  \"city</w>\": 1305,\n  \"cityfc</w>\": 28751,\n  \"cityo\": 25709,\n  \"cityof\": 11595,\n  \"cityscape</w>\": 40808,\n  \"ciu\": 39693,\n  \"cius</w>\": 42559,\n  \"civ\": 40039,\n  \"civic\": 32240,\n  \"civic</w>\": 11888,\n  \"civil\": 6923,\n  \"civil</w>\": 6450,\n  \"civilian</w>\": 21187,\n  \"civilians</w>\": 18076,\n  \"civilization</w>\": 22503,\n  \"civilwar</w>\": 34524,\n  \"ciÃ³n</w>\": 44700,\n  \"cj\": 15238,\n  \"cj</w>\": 15205,\n  \"ck\": 916,\n  \"ck</w>\": 868,\n  \"cke\": 25224,\n  \"cke</w>\": 40989,\n  \"cked</w>\": 3441,\n  \"cken\": 25566,\n  \"cker\": 15509,\n  \"cker</w>\": 4744,\n  \"ckers</w>\": 37073,\n  \"cket</w>\": 5525,\n  \"ckett</w>\": 33899,\n  \"ckey\": 15029,\n  \"ckey</w>\": 3657,\n  \"cki\": 36916,\n  \"cki</w>\": 41055,\n  \"cking</w>\": 4805,\n  \"cko</w>\": 28818,\n  \"cks</w>\": 2031,\n  \"cky\": 26229,\n  \"cky</w>\": 3083,\n  \"cl\": 969,\n  \"cl</w>\": 6482,\n  \"cla\": 940,\n  \"cla</w>\": 20636,\n  \"clad</w>\": 31606,\n  \"cladding</w>\": 46411,\n  \"clai\": 29459,\n  \"claim\": 4290,\n  \"claim</w>\": 6607,\n  \"claimed</w>\": 9010,\n  \"claiming</w>\": 15286,\n  \"claims</w>\": 6852,\n  \"clair\": 31441,\n  \"clair</w>\": 14039,\n  \"claire\": 20410,\n  \"claire</w>\": 10460,\n  \"clam\": 13588,\n  \"clam</w>\": 32598,\n  \"clamation</w>\": 21793,\n  \"clamp</w>\": 41501,\n  \"clams</w>\": 38849,\n  \"clan\": 29252,\n  \"clan</w>\": 14114,\n  \"clancy</w>\": 37227,\n  \"clans</w>\": 38279,\n  \"clap\": 30037,\n  \"clap</w>\": 25546,\n  \"clapham</w>\": 43619,\n  \"clapton</w>\": 37683,\n  \"clar\": 3617,\n  \"clara</w>\": 19468,\n  \"clare\": 18948,\n  \"clare</w>\": 15927,\n  \"claremont</w>\": 47789,\n  \"clarence</w>\": 29320,\n  \"clari\": 15175,\n  \"clarify</w>\": 37004,\n  \"clarinet</w>\": 41178,\n  \"clarity</w>\": 21323,\n  \"clark\": 13340,\n  \"clark</w>\": 7521,\n  \"clarke</w>\": 11548,\n  \"clarkson</w>\": 25706,\n  \"clas\": 32003,\n  \"clash\": 38367,\n  \"clash</w>\": 9359,\n  \"clashes</w>\": 25193,\n  \"clasico</w>\": 43567,\n  \"class\": 2876,\n  \"class</w>\": 1874,\n  \"classes</w>\": 6919,\n  \"classi\": 2507,\n  \"classic\": 9353,\n  \"classic</w>\": 2713,\n  \"classical\": 22179,\n  \"classical</w>\": 11355,\n  \"classicalmusic</w>\": 27806,\n  \"classiccar</w>\": 46906,\n  \"classiccars</w>\": 21064,\n  \"classics</w>\": 10634,\n  \"classification</w>\": 26612,\n  \"classified</w>\": 22056,\n  \"classmate</w>\": 37090,\n  \"classmates</w>\": 30062,\n  \"classof</w>\": 25345,\n  \"classroom</w>\": 9001,\n  \"classrooms</w>\": 25768,\n  \"classy</w>\": 11615,\n  \"clau\": 7526,\n  \"claude</w>\": 17461,\n  \"claudi\": 39439,\n  \"claudia</w>\": 21893,\n  \"claudio</w>\": 31230,\n  \"claus</w>\": 23317,\n  \"clause</w>\": 26151,\n  \"clave</w>\": 24111,\n  \"claw\": 49230,\n  \"claw</w>\": 19106,\n  \"claws</w>\": 29161,\n  \"clay\": 10402,\n  \"clay</w>\": 8823,\n  \"clays</w>\": 26128,\n  \"clayton\": 46445,\n  \"clayton</w>\": 19413,\n  \"clc</w>\": 31380,\n  \"cle\": 1321,\n  \"cle</w>\": 2537,\n  \"clean\": 3572,\n  \"clean</w>\": 3772,\n  \"cleaned</w>\": 17468,\n  \"cleanenergy</w>\": 43538,\n  \"cleaner</w>\": 15619,\n  \"cleaners</w>\": 33258,\n  \"cleaning</w>\": 7210,\n  \"cleanliness</w>\": 47886,\n  \"cleans</w>\": 40827,\n  \"cleanse</w>\": 28717,\n  \"cleanser</w>\": 44170,\n  \"cleansing</w>\": 25931,\n  \"cleanup</w>\": 22353,\n  \"clear\": 4631,\n  \"clear</w>\": 3143,\n  \"clearance</w>\": 17959,\n  \"cleared</w>\": 14880,\n  \"clearer</w>\": 37031,\n  \"clearing</w>\": 15481,\n  \"clearly</w>\": 7767,\n  \"clears</w>\": 29092,\n  \"clearwater</w>\": 32124,\n  \"cleary</w>\": 44342,\n  \"cleats</w>\": 33486,\n  \"cleavage</w>\": 44165,\n  \"cled</w>\": 12827,\n  \"clegg</w>\": 42915,\n  \"clemens</w>\": 45896,\n  \"clement\": 22592,\n  \"clement</w>\": 24714,\n  \"clemente</w>\": 42461,\n  \"clementine</w>\": 47112,\n  \"clements</w>\": 49175,\n  \"clemson\": 38170,\n  \"clemson</w>\": 19537,\n  \"clen\": 35547,\n  \"cleo</w>\": 40344,\n  \"cleop\": 36287,\n  \"cleopatra</w>\": 41212,\n  \"cler\": 11828,\n  \"clergy</w>\": 42635,\n  \"cleric</w>\": 43748,\n  \"clerk</w>\": 22230,\n  \"clermont</w>\": 47529,\n  \"cles</w>\": 8077,\n  \"cleve\": 37599,\n  \"clevel\": 7701,\n  \"cleveland\": 30716,\n  \"cleveland</w>\": 8430,\n  \"clever\": 30977,\n  \"clever</w>\": 13385,\n  \"clg</w>\": 47546,\n  \"cli\": 1503,\n  \"clich\": 44407,\n  \"click\": 16676,\n  \"click</w>\": 3585,\n  \"clicked</w>\": 29015,\n  \"clicking</w>\": 26542,\n  \"clicks</w>\": 31250,\n  \"client\": 48528,\n  \"client</w>\": 7467,\n  \"clients</w>\": 8114,\n  \"clif\": 13182,\n  \"cliff\": 23827,\n  \"cliff</w>\": 10625,\n  \"cliffe</w>\": 15170,\n  \"clifford</w>\": 24226,\n  \"cliffs</w>\": 20953,\n  \"clifton</w>\": 23878,\n  \"climat\": 37283,\n  \"climate\": 7854,\n  \"climate</w>\": 4589,\n  \"climateaction</w>\": 31622,\n  \"climatechange</w>\": 11055,\n  \"climates</w>\": 46022,\n  \"climax</w>\": 37033,\n  \"climb\": 7421,\n  \"climb</w>\": 10649,\n  \"climbed</w>\": 22528,\n  \"climber</w>\": 36910,\n  \"climbers</w>\": 47648,\n  \"climbing</w>\": 9877,\n  \"climbs</w>\": 29098,\n  \"clin\": 2879,\n  \"clinch</w>\": 30404,\n  \"clinched</w>\": 44064,\n  \"cline</w>\": 37460,\n  \"cling\": 37068,\n  \"cling</w>\": 4760,\n  \"clinic</w>\": 7926,\n  \"clinical\": 35133,\n  \"clinical</w>\": 9148,\n  \"clinicians</w>\": 45866,\n  \"clinics</w>\": 23330,\n  \"clint\": 37542,\n  \"clint</w>\": 21160,\n  \"clinton\": 34403,\n  \"clinton</w>\": 5820,\n  \"clio</w>\": 46889,\n  \"clip\": 39712,\n  \"clip</w>\": 9289,\n  \"clipped</w>\": 45524,\n  \"clipper</w>\": 42245,\n  \"clippers</w>\": 23319,\n  \"clipping</w>\": 47484,\n  \"clips</w>\": 16594,\n  \"clique</w>\": 34983,\n  \"clive\": 36086,\n  \"clive</w>\": 21509,\n  \"cll\": 46091,\n  \"cllr\": 45743,\n  \"cllr</w>\": 23034,\n  \"clo\": 1194,\n  \"cloak</w>\": 36528,\n  \"clock\": 19878,\n  \"clock</w>\": 6716,\n  \"clocked</w>\": 49049,\n  \"clocks</w>\": 25895,\n  \"clockwise</w>\": 46150,\n  \"clockwork</w>\": 42297,\n  \"clon\": 24477,\n  \"clone</w>\": 22854,\n  \"clones</w>\": 48047,\n  \"clooney</w>\": 33161,\n  \"clos</w>\": 48821,\n  \"close\": 10603,\n  \"close</w>\": 2660,\n  \"closed</w>\": 4552,\n  \"closely</w>\": 13478,\n  \"closer</w>\": 6377,\n  \"closes</w>\": 11354,\n  \"closest</w>\": 14975,\n  \"closet</w>\": 14221,\n  \"closeup</w>\": 35439,\n  \"closing</w>\": 7101,\n  \"closure</w>\": 13249,\n  \"closures</w>\": 22923,\n  \"cloth</w>\": 14559,\n  \"clothes</w>\": 7080,\n  \"clothing</w>\": 7425,\n  \"clou\": 4069,\n  \"cloud\": 12965,\n  \"cloud</w>\": 3887,\n  \"cloudcomputing</w>\": 41390,\n  \"clouds</w>\": 6244,\n  \"cloudy</w>\": 13106,\n  \"clough</w>\": 42909,\n  \"clover\": 39574,\n  \"clover</w>\": 22812,\n  \"clow\": 18386,\n  \"clown</w>\": 15329,\n  \"clowns</w>\": 30820,\n  \"cls</w>\": 44251,\n  \"clt\": 29651,\n  \"clt</w>\": 24236,\n  \"clu\": 996,\n  \"club\": 9642,\n  \"club</w>\": 1736,\n  \"clubbing</w>\": 48128,\n  \"clubhouse</w>\": 26553,\n  \"clubs</w>\": 9437,\n  \"clue</w>\": 14994,\n  \"clueless</w>\": 35350,\n  \"clues</w>\": 23764,\n  \"clusive</w>\": 41362,\n  \"cluster</w>\": 15595,\n  \"clusters</w>\": 33217,\n  \"clut\": 28507,\n  \"clutch</w>\": 13953,\n  \"clutter</w>\": 40804,\n  \"cly\": 12037,\n  \"clyde\": 39557,\n  \"clyde</w>\": 18469,\n  \"cm\": 10190,\n  \"cm</w>\": 3741,\n  \"cma\": 30554,\n  \"cma</w>\": 31388,\n  \"cmc</w>\": 45839,\n  \"cmdr</w>\": 48250,\n  \"cme</w>\": 34946,\n  \"cmo</w>\": 24589,\n  \"cmon</w>\": 42904,\n  \"cmp\": 46355,\n  \"cms</w>\": 22520,\n  \"cmt</w>\": 42727,\n  \"cmu</w>\": 43046,\n  \"cn\": 3886,\n  \"cn</w>\": 16200,\n  \"cna</w>\": 48287,\n  \"cnbc\": 41242,\n  \"cnbc</w>\": 24371,\n  \"cnblue</w>\": 36018,\n  \"cnc</w>\": 20571,\n  \"cnet</w>\": 47487,\n  \"cnews</w>\": 24319,\n  \"cng</w>\": 41496,\n  \"cnn\": 22405,\n  \"cnn</w>\": 8259,\n  \"cns</w>\": 46095,\n  \"cny</w>\": 31614,\n  \"co\": 622,\n  \"co</w>\": 1320,\n  \"coa</w>\": 29167,\n  \"coach\": 3275,\n  \"coach</w>\": 2312,\n  \"coached</w>\": 30228,\n  \"coachella</w>\": 20222,\n  \"coaches</w>\": 6924,\n  \"coaching</w>\": 7766,\n  \"coal\": 10227,\n  \"coal</w>\": 7919,\n  \"coalition</w>\": 12920,\n  \"coast\": 6398,\n  \"coast</w>\": 3720,\n  \"coastal\": 38246,\n  \"coastal</w>\": 10852,\n  \"coaster</w>\": 15944,\n  \"coasters</w>\": 31548,\n  \"coastguard</w>\": 40601,\n  \"coastline</w>\": 27959,\n  \"coasts</w>\": 42225,\n  \"coat\": 28869,\n  \"coat</w>\": 7356,\n  \"coated</w>\": 23401,\n  \"coates</w>\": 36899,\n  \"coating</w>\": 25369,\n  \"coatings</w>\": 48706,\n  \"coats</w>\": 18075,\n  \"cob\": 20140,\n  \"cob</w>\": 32863,\n  \"cobain</w>\": 36866,\n  \"cobalt</w>\": 30896,\n  \"cobb</w>\": 22719,\n  \"cobble\": 47894,\n  \"cobra</w>\": 21574,\n  \"coc\": 23036,\n  \"coc</w>\": 39498,\n  \"coca</w>\": 21197,\n  \"cocac\": 26393,\n  \"cocacola</w>\": 31248,\n  \"cocaine</w>\": 20534,\n  \"coch\": 18599,\n  \"cochran</w>\": 48798,\n  \"cochrane</w>\": 41752,\n  \"coco\": 11850,\n  \"coco</w>\": 13316,\n  \"cocoa</w>\": 18074,\n  \"cocon\": 8597,\n  \"coconut</w>\": 9581,\n  \"cod\": 16132,\n  \"cod</w>\": 11915,\n  \"code\": 11582,\n  \"code</w>\": 3217,\n  \"coded</w>\": 33703,\n  \"coden\": 43914,\n  \"coder</w>\": 41561,\n  \"codes</w>\": 14566,\n  \"codi\": 39711,\n  \"coding</w>\": 12647,\n  \"cody\": 23222,\n  \"cody</w>\": 12666,\n  \"coe</w>\": 15386,\n  \"coed</w>\": 41028,\n  \"coel\": 45633,\n  \"coer\": 41198,\n  \"coeur</w>\": 44986,\n  \"coffe\": 2255,\n  \"coffee\": 12898,\n  \"coffee</w>\": 2453,\n  \"coffees</w>\": 41184,\n  \"coffey</w>\": 48066,\n  \"cofficial</w>\": 18757,\n  \"coffin</w>\": 29907,\n  \"cog\": 26362,\n  \"cog</w>\": 35960,\n  \"cogn\": 12210,\n  \"cognac</w>\": 44361,\n  \"cognition</w>\": 46825,\n  \"cognitive</w>\": 16584,\n  \"cohe\": 20669,\n  \"cohen</w>\": 13381,\n  \"coherent</w>\": 48450,\n  \"cohort</w>\": 22782,\n  \"coil</w>\": 25307,\n  \"coim\": 41528,\n  \"coin\": 14651,\n  \"coin</w>\": 4170,\n  \"coinci\": 14015,\n  \"coincidence</w>\": 19807,\n  \"coins</w>\": 10530,\n  \"coke\": 39602,\n  \"coke</w>\": 14035,\n  \"col\": 754,\n  \"col</w>\": 9371,\n  \"cola</w>\": 15444,\n  \"colbert</w>\": 31647,\n  \"colby</w>\": 32068,\n  \"colchester</w>\": 31715,\n  \"cold\": 11146,\n  \"cold</w>\": 3153,\n  \"colder</w>\": 23859,\n  \"coldest</w>\": 31438,\n  \"coldplay</w>\": 27770,\n  \"cole\": 9305,\n  \"cole</w>\": 8166,\n  \"coleman</w>\": 15774,\n  \"coles\": 40265,\n  \"coles</w>\": 30398,\n  \"coli\": 18877,\n  \"coli</w>\": 15910,\n  \"colin\": 20989,\n  \"colin</w>\": 10238,\n  \"coliseum</w>\": 21836,\n  \"coll\": 25982,\n  \"coll</w>\": 23898,\n  \"colla\": 2929,\n  \"collab</w>\": 14013,\n  \"collabor\": 4437,\n  \"collaborate</w>\": 21271,\n  \"collaborated</w>\": 42265,\n  \"collaborating</w>\": 25545,\n  \"collaboration</w>\": 6642,\n  \"collaborations</w>\": 36520,\n  \"collaborative</w>\": 15841,\n  \"collaborator</w>\": 48186,\n  \"collaborators</w>\": 45901,\n  \"collage</w>\": 11258,\n  \"collagen</w>\": 36120,\n  \"collap\": 16881,\n  \"collapse</w>\": 16520,\n  \"collapsed</w>\": 25037,\n  \"collapses</w>\": 43601,\n  \"collar\": 39662,\n  \"collar</w>\": 13497,\n  \"collateral</w>\": 44512,\n  \"colle\": 1801,\n  \"colleague</w>\": 13067,\n  \"colleagues</w>\": 8203,\n  \"collec\": 1733,\n  \"collect</w>\": 10186,\n  \"collected</w>\": 11980,\n  \"collecti\": 18530,\n  \"collectible</w>\": 25680,\n  \"collectibles</w>\": 21519,\n  \"collecting</w>\": 10325,\n  \"collection</w>\": 2548,\n  \"collections</w>\": 12760,\n  \"collective</w>\": 10162,\n  \"collectively</w>\": 40687,\n  \"collector</w>\": 13522,\n  \"collectors</w>\": 20540,\n  \"collects</w>\": 31576,\n  \"colleen</w>\": 31020,\n  \"college\": 13512,\n  \"college</w>\": 2229,\n  \"colleges</w>\": 17357,\n  \"collegi\": 16311,\n  \"collegiate</w>\": 18068,\n  \"colli\": 8262,\n  \"collide</w>\": 27214,\n  \"collie</w>\": 30611,\n  \"collier</w>\": 35748,\n  \"collin\": 24056,\n  \"collin</w>\": 32116,\n  \"colling\": 32319,\n  \"collingwood</w>\": 45873,\n  \"collins</w>\": 8684,\n  \"collision</w>\": 15407,\n  \"collo\": 25115,\n  \"colloqui\": 37243,\n  \"colloquium</w>\": 46514,\n  \"collu\": 25658,\n  \"collusion</w>\": 33864,\n  \"colo\": 7300,\n  \"colo</w>\": 27288,\n  \"cologne</w>\": 22216,\n  \"cology</w>\": 19187,\n  \"colom\": 8987,\n  \"colombia</w>\": 12901,\n  \"colombian</w>\": 28701,\n  \"colombo</w>\": 33207,\n  \"colon\": 8280,\n  \"colon</w>\": 29050,\n  \"colonel</w>\": 22674,\n  \"coloni\": 22667,\n  \"colonial</w>\": 16530,\n  \"colonialism</w>\": 43385,\n  \"colonies</w>\": 38738,\n  \"colony</w>\": 18767,\n  \"color\": 4036,\n  \"color</w>\": 3140,\n  \"colorado\": 34580,\n  \"colorado</w>\": 6742,\n  \"colorec\": 41171,\n  \"colored</w>\": 11775,\n  \"colorful</w>\": 11444,\n  \"colori\": 28764,\n  \"coloring</w>\": 17696,\n  \"colorized</w>\": 46730,\n  \"colors</w>\": 5389,\n  \"colorstv</w>\": 28195,\n  \"colorway</w>\": 44576,\n  \"colossal</w>\": 40258,\n  \"colosse\": 48142,\n  \"colossus</w>\": 34022,\n  \"colour\": 10240,\n  \"colour</w>\": 4769,\n  \"coloured</w>\": 17111,\n  \"colourful</w>\": 15562,\n  \"colouring</w>\": 31803,\n  \"colours</w>\": 7626,\n  \"cols</w>\": 35726,\n  \"colt</w>\": 19726,\n  \"colton</w>\": 32249,\n  \"coltrane</w>\": 42333,\n  \"colts</w>\": 16135,\n  \"colum\": 4164,\n  \"columb\": 31043,\n  \"columbi\": 25947,\n  \"columbia</w>\": 9410,\n  \"columbus</w>\": 11273,\n  \"column</w>\": 10593,\n  \"columnist</w>\": 28958,\n  \"columns</w>\": 29056,\n  \"com\": 610,\n  \"com</w>\": 2464,\n  \"coma</w>\": 19620,\n  \"comb\": 3587,\n  \"comb</w>\": 16380,\n  \"combat\": 35083,\n  \"combat</w>\": 9275,\n  \"combating</w>\": 46121,\n  \"combe</w>\": 14363,\n  \"combin\": 25112,\n  \"combination</w>\": 11312,\n  \"combinations</w>\": 34950,\n  \"combine</w>\": 12919,\n  \"combined</w>\": 10427,\n  \"combines</w>\": 22991,\n  \"combining</w>\": 23561,\n  \"combo</w>\": 10155,\n  \"combos</w>\": 48117,\n  \"combs</w>\": 30694,\n  \"combu\": 35629,\n  \"combustion</w>\": 44654,\n  \"comcast</w>\": 30043,\n  \"come\": 4225,\n  \"come</w>\": 891,\n  \"comeback</w>\": 8234,\n  \"comedian</w>\": 13848,\n  \"comedians</w>\": 33758,\n  \"comedic</w>\": 43360,\n  \"comedy\": 19346,\n  \"comedy</w>\": 4749,\n  \"comer\": 42997,\n  \"comer</w>\": 20916,\n  \"comers</w>\": 34436,\n  \"comes</w>\": 2091,\n  \"comet</w>\": 21405,\n  \"comets</w>\": 40636,\n  \"comey</w>\": 22957,\n  \"comfor\": 6563,\n  \"comfort\": 44000,\n  \"comfort</w>\": 7808,\n  \"comfortable</w>\": 8652,\n  \"comfortably</w>\": 30392,\n  \"comforting</w>\": 33835,\n  \"comforts</w>\": 42243,\n  \"comfy</w>\": 15736,\n  \"comi\": 40781,\n  \"comic\": 7729,\n  \"comic</w>\": 4962,\n  \"comicart</w>\": 46018,\n  \"comicbook</w>\": 46564,\n  \"comicbooks</w>\": 22018,\n  \"comiccon</w>\": 18379,\n  \"comicon</w>\": 43820,\n  \"comics</w>\": 4256,\n  \"comin</w>\": 18164,\n  \"coming\": 14916,\n  \"coming</w>\": 1171,\n  \"comingsoon</w>\": 19894,\n  \"comm\": 965,\n  \"comm</w>\": 11413,\n  \"comman\": 39780,\n  \"command\": 18391,\n  \"command</w>\": 11350,\n  \"commander</w>\": 11265,\n  \"commanders</w>\": 41667,\n  \"commanding</w>\": 36933,\n  \"commandments</w>\": 43409,\n  \"commando</w>\": 31361,\n  \"commands</w>\": 38163,\n  \"comme</w>\": 29692,\n  \"commemor\": 9495,\n  \"commemorate</w>\": 21242,\n  \"commemorates</w>\": 45149,\n  \"commemorating</w>\": 28734,\n  \"commemoration</w>\": 29288,\n  \"commemorative</w>\": 24623,\n  \"commen\": 15795,\n  \"commence</w>\": 25059,\n  \"commenced</w>\": 43908,\n  \"commencement</w>\": 21666,\n  \"commences</w>\": 48551,\n  \"commend\": 37555,\n  \"commended</w>\": 40702,\n  \"comment\": 20035,\n  \"comment</w>\": 5761,\n  \"commentary</w>\": 14146,\n  \"commentator</w>\": 32016,\n  \"commented</w>\": 28328,\n  \"commenting</w>\": 37292,\n  \"comments</w>\": 6606,\n  \"commer\": 4028,\n  \"commerce</w>\": 8333,\n  \"commerci\": 15601,\n  \"commercial\": 31802,\n  \"commercial</w>\": 6287,\n  \"commercials</w>\": 30724,\n  \"commish</w>\": 45399,\n  \"commissi\": 6000,\n  \"commission</w>\": 5292,\n  \"commissioned</w>\": 16565,\n  \"commissioner</w>\": 10221,\n  \"commissioners</w>\": 30702,\n  \"commissioning</w>\": 29585,\n  \"commissions</w>\": 20668,\n  \"commit\": 3041,\n  \"commit</w>\": 11797,\n  \"commitment</w>\": 7770,\n  \"commitments</w>\": 32136,\n  \"commits</w>\": 20241,\n  \"committed</w>\": 7907,\n  \"committee</w>\": 5636,\n  \"committees</w>\": 40504,\n  \"committing</w>\": 21937,\n  \"commod\": 9496,\n  \"commodities</w>\": 30350,\n  \"commodity</w>\": 29041,\n  \"commodore</w>\": 31129,\n  \"common\": 8414,\n  \"common</w>\": 4176,\n  \"commonly</w>\": 20344,\n  \"commons</w>\": 16653,\n  \"commonwealth</w>\": 16569,\n  \"comms</w>\": 18832,\n  \"commu\": 9561,\n  \"commun\": 1515,\n  \"communal</w>\": 32809,\n  \"communi\": 16164,\n  \"communic\": 4784,\n  \"communicate</w>\": 19809,\n  \"communication</w>\": 7999,\n  \"communications</w>\": 10052,\n  \"communion</w>\": 28579,\n  \"communism</w>\": 35387,\n  \"communist</w>\": 18602,\n  \"communities</w>\": 6361,\n  \"community\": 14784,\n  \"community</w>\": 1927,\n  \"commute</w>\": 15898,\n  \"commuter</w>\": 27782,\n  \"commuters</w>\": 30823,\n  \"commuting</w>\": 43503,\n  \"como</w>\": 16236,\n  \"comp\": 2561,\n  \"comp</w>\": 11679,\n  \"compac\": 40014,\n  \"compact</w>\": 13690,\n  \"compan\": 1995,\n  \"companies</w>\": 5361,\n  \"companion</w>\": 14963,\n  \"companions</w>\": 37124,\n  \"company</w>\": 2634,\n  \"compar\": 7580,\n  \"comparable</w>\": 27092,\n  \"comparative</w>\": 33388,\n  \"compare</w>\": 13771,\n  \"compared</w>\": 10544,\n  \"compares</w>\": 25104,\n  \"comparing</w>\": 20564,\n  \"comparison</w>\": 14186,\n  \"comparisons</w>\": 40870,\n  \"compart\": 30072,\n  \"compartment</w>\": 40383,\n  \"compass</w>\": 19438,\n  \"compassion</w>\": 14463,\n  \"compassionate</w>\": 30193,\n  \"compati\": 17295,\n  \"compatibility</w>\": 41614,\n  \"compatible</w>\": 21286,\n  \"compe\": 5254,\n  \"compelled</w>\": 49375,\n  \"compelling</w>\": 21766,\n  \"compen\": 42079,\n  \"compens\": 15172,\n  \"compensation</w>\": 18663,\n  \"compet\": 2932,\n  \"compete</w>\": 10038,\n  \"competed</w>\": 27767,\n  \"competen\": 31853,\n  \"competence</w>\": 31165,\n  \"competency</w>\": 49293,\n  \"competent</w>\": 28113,\n  \"competes</w>\": 39826,\n  \"competing</w>\": 13068,\n  \"competit\": 15892,\n  \"competiti\": 32581,\n  \"competition</w>\": 3742,\n  \"competitions</w>\": 23259,\n  \"competitive</w>\": 10687,\n  \"competitiveness</w>\": 43209,\n  \"competitor</w>\": 26633,\n  \"competitors</w>\": 23638,\n  \"compilation</w>\": 20446,\n  \"compiled</w>\": 34579,\n  \"compla\": 7428,\n  \"complain</w>\": 19292,\n  \"complained</w>\": 42029,\n  \"complaining</w>\": 20812,\n  \"complains</w>\": 46363,\n  \"complaint</w>\": 20391,\n  \"complaints</w>\": 20020,\n  \"comple\": 1730,\n  \"complement</w>\": 36624,\n  \"complementary</w>\": 48953,\n  \"complete</w>\": 3263,\n  \"completed</w>\": 5976,\n  \"completely</w>\": 5989,\n  \"completes</w>\": 19321,\n  \"completing</w>\": 14949,\n  \"completion</w>\": 15915,\n  \"complex\": 16099,\n  \"complex</w>\": 6324,\n  \"complexes</w>\": 47870,\n  \"complexion</w>\": 47732,\n  \"complexity</w>\": 24815,\n  \"compli\": 5270,\n  \"compliance</w>\": 14658,\n  \"compliant</w>\": 29893,\n  \"complic\": 11460,\n  \"complicated</w>\": 16621,\n  \"complications</w>\": 29936,\n  \"compliment</w>\": 25116,\n  \"complimentary</w>\": 20948,\n  \"compliments</w>\": 25477,\n  \"comply</w>\": 36281,\n  \"component</w>\": 21284,\n  \"components</w>\": 16816,\n  \"compos\": 7783,\n  \"compose</w>\": 43659,\n  \"composed</w>\": 19916,\n  \"composer</w>\": 12104,\n  \"composers</w>\": 33314,\n  \"composing</w>\": 40412,\n  \"composite</w>\": 21606,\n  \"composites</w>\": 45395,\n  \"composition</w>\": 17510,\n  \"compositions</w>\": 44652,\n  \"compost\": 46002,\n  \"compost</w>\": 33307,\n  \"compound</w>\": 19980,\n  \"compounds</w>\": 33991,\n  \"compre\": 8483,\n  \"compreh\": 42976,\n  \"comprehen\": 12050,\n  \"comprehend</w>\": 48230,\n  \"comprehensive</w>\": 13854,\n  \"compress\": 33353,\n  \"compressed</w>\": 42359,\n  \"compression</w>\": 25638,\n  \"compressor</w>\": 39607,\n  \"compri\": 29445,\n  \"compromise</w>\": 26611,\n  \"compromised</w>\": 38576,\n  \"compromising</w>\": 45436,\n  \"comps</w>\": 48665,\n  \"compton</w>\": 28364,\n  \"compu\": 11639,\n  \"compul\": 25869,\n  \"compulsory</w>\": 39345,\n  \"computing</w>\": 12732,\n  \"comra\": 25553,\n  \"comrade</w>\": 30844,\n  \"comrades</w>\": 29282,\n  \"coms</w>\": 30493,\n  \"con\": 616,\n  \"con</w>\": 2457,\n  \"cona</w>\": 30605,\n  \"conan</w>\": 24750,\n  \"conce\": 9145,\n  \"concealed</w>\": 35419,\n  \"conceded</w>\": 37895,\n  \"conceived</w>\": 39725,\n  \"concentr\": 11085,\n  \"concentrate</w>\": 30846,\n  \"concentrated</w>\": 36776,\n  \"concentration</w>\": 18565,\n  \"concep\": 8389,\n  \"concepcion</w>\": 47035,\n  \"concept</w>\": 6353,\n  \"conceptart</w>\": 31162,\n  \"conception</w>\": 30510,\n  \"conceptions</w>\": 40307,\n  \"concepts</w>\": 16763,\n  \"conceptu\": 42745,\n  \"conceptual</w>\": 34070,\n  \"concer\": 2228,\n  \"concern</w>\": 12928,\n  \"concerned</w>\": 12020,\n  \"concerning</w>\": 21772,\n  \"concerns</w>\": 11134,\n  \"concert\": 32180,\n  \"concert</w>\": 3066,\n  \"concerto</w>\": 24710,\n  \"concerts</w>\": 14418,\n  \"concession</w>\": 38117,\n  \"concessions</w>\": 43981,\n  \"concier\": 28859,\n  \"concierge</w>\": 39850,\n  \"conclave</w>\": 38098,\n  \"conclu\": 9627,\n  \"conclude</w>\": 37525,\n  \"concluded</w>\": 27825,\n  \"concludes</w>\": 30634,\n  \"conclusion</w>\": 20932,\n  \"conclusions</w>\": 39507,\n  \"conco\": 43034,\n  \"concor\": 19913,\n  \"concord</w>\": 26448,\n  \"concordia</w>\": 35492,\n  \"concours</w>\": 36282,\n  \"concourse</w>\": 37793,\n  \"concre\": 43658,\n  \"concrete</w>\": 9637,\n  \"concussion</w>\": 28321,\n  \"condem\": 13287,\n  \"condemn</w>\": 27212,\n  \"condemned</w>\": 35145,\n  \"condemns</w>\": 32092,\n  \"conden\": 24816,\n  \"conditi\": 11170,\n  \"condition\": 36978,\n  \"condition</w>\": 7336,\n  \"conditional</w>\": 24671,\n  \"conditioned</w>\": 37014,\n  \"conditioner</w>\": 31239,\n  \"conditioning</w>\": 18181,\n  \"conditions</w>\": 5892,\n  \"condo</w>\": 19952,\n  \"condol\": 18661,\n  \"condolences</w>\": 20836,\n  \"condom</w>\": 39021,\n  \"condomin\": 42589,\n  \"condoms</w>\": 37878,\n  \"condor</w>\": 47643,\n  \"condos</w>\": 42342,\n  \"condu\": 40772,\n  \"conduc\": 5379,\n  \"conduct</w>\": 11647,\n  \"conducted</w>\": 13080,\n  \"conducting</w>\": 16787,\n  \"conductor</w>\": 22317,\n  \"conducts</w>\": 32084,\n  \"cone\": 39279,\n  \"cone</w>\": 10266,\n  \"cones</w>\": 26718,\n  \"coney</w>\": 41837,\n  \"conf</w>\": 6477,\n  \"confe\": 1968,\n  \"confeder\": 17104,\n  \"confederate</w>\": 24864,\n  \"confederation</w>\": 43484,\n  \"conferen\": 37961,\n  \"conference</w>\": 2230,\n  \"conferences</w>\": 22811,\n  \"conferencing</w>\": 47320,\n  \"confess</w>\": 38860,\n  \"confession</w>\": 22572,\n  \"confessions</w>\": 29404,\n  \"confetti</w>\": 37923,\n  \"confi\": 5005,\n  \"confidence</w>\": 8510,\n  \"confident</w>\": 12365,\n  \"confidential</w>\": 28712,\n  \"configu\": 46746,\n  \"configur\": 26950,\n  \"configuration</w>\": 33378,\n  \"confin\": 45316,\n  \"confined</w>\": 40973,\n  \"confir\": 3930,\n  \"confirm</w>\": 12130,\n  \"confirmation</w>\": 19645,\n  \"confirmed</w>\": 6346,\n  \"confirming</w>\": 38433,\n  \"confirms</w>\": 11803,\n  \"confis\": 36285,\n  \"confit</w>\": 42241,\n  \"confl\": 8173,\n  \"conflic\": 19029,\n  \"conflict</w>\": 10397,\n  \"conflicting</w>\": 43894,\n  \"conflicts</w>\": 28713,\n  \"confor\": 40933,\n  \"confron\": 20033,\n  \"confront</w>\": 38382,\n  \"confrontation</w>\": 41478,\n  \"confu\": 6890,\n  \"confuse</w>\": 37503,\n  \"confused</w>\": 10946,\n  \"confusing</w>\": 24683,\n  \"confusion</w>\": 20493,\n  \"cong</w>\": 24407,\n  \"conge\": 20013,\n  \"congestion</w>\": 24432,\n  \"congo</w>\": 20334,\n  \"congr\": 1227,\n  \"congrats</w>\": 1887,\n  \"congratul\": 1750,\n  \"congratulate</w>\": 16633,\n  \"congratulated</w>\": 42004,\n  \"congratulates</w>\": 24580,\n  \"congratulating</w>\": 30967,\n  \"congratulation</w>\": 24751,\n  \"congratulations</w>\": 1864,\n  \"congre\": 7947,\n  \"congreg\": 40727,\n  \"congregation</w>\": 32618,\n  \"congress\": 12452,\n  \"congress</w>\": 4599,\n  \"congressional</w>\": 15239,\n  \"congressman</w>\": 17145,\n  \"congresswoman</w>\": 37317,\n  \"coni\": 39031,\n  \"coni</w>\": 36651,\n  \"conj\": 41543,\n  \"conju\": 33821,\n  \"conjunction</w>\": 34226,\n  \"conley</w>\": 44536,\n  \"conline</w>\": 37593,\n  \"conn\": 41836,\n  \"conn</w>\": 20329,\n  \"conne\": 8437,\n  \"connec\": 29933,\n  \"connect</w>\": 19969,\n  \"connected</w>\": 27506,\n  \"connecting</w>\": 41429,\n  \"connection</w>\": 26840,\n  \"connections</w>\": 37161,\n  \"connie</w>\": 25739,\n  \"connoisse\": 46012,\n  \"connol\": 27739,\n  \"connolly</w>\": 29537,\n  \"connor\": 21984,\n  \"connor</w>\": 10218,\n  \"conom\": 2664,\n  \"conomy</w>\": 22529,\n  \"conor\": 29955,\n  \"conor</w>\": 19478,\n  \"conqu\": 13382,\n  \"conquer\": 38585,\n  \"conquer</w>\": 19821,\n  \"conquered</w>\": 27099,\n  \"conquering</w>\": 43778,\n  \"conquest</w>\": 35367,\n  \"conrad</w>\": 22073,\n  \"cons</w>\": 10311,\n  \"consci\": 9427,\n  \"conscience</w>\": 27310,\n  \"conscious</w>\": 14914,\n  \"consciously</w>\": 46755,\n  \"consciousness</w>\": 17894,\n  \"conse\": 34887,\n  \"consecu\": 12084,\n  \"consecutive</w>\": 12413,\n  \"consen\": 23110,\n  \"consensus</w>\": 25071,\n  \"consent</w>\": 21922,\n  \"consequ\": 13003,\n  \"consequence</w>\": 42262,\n  \"consequences</w>\": 15682,\n  \"conserv\": 4649,\n  \"conservancy</w>\": 46729,\n  \"conservation\": 37616,\n  \"conservation</w>\": 8322,\n  \"conservative</w>\": 11421,\n  \"conservatives</w>\": 17631,\n  \"conservatory</w>\": 32140,\n  \"conserve</w>\": 34231,\n  \"consi\": 2899,\n  \"consider\": 12471,\n  \"consider</w>\": 6734,\n  \"considerable</w>\": 38256,\n  \"considerably</w>\": 38510,\n  \"consideration</w>\": 24310,\n  \"considerations</w>\": 33700,\n  \"considered</w>\": 9487,\n  \"considering</w>\": 10761,\n  \"considers</w>\": 24691,\n  \"consist\": 10410,\n  \"consist</w>\": 33735,\n  \"consisted</w>\": 49354,\n  \"consistency</w>\": 25683,\n  \"consistent</w>\": 16439,\n  \"consistently</w>\": 23799,\n  \"consisting</w>\": 39241,\n  \"consists</w>\": 23458,\n  \"consol\": 27869,\n  \"consolation</w>\": 38888,\n  \"console</w>\": 13403,\n  \"consoles</w>\": 33136,\n  \"consoli\": 21586,\n  \"consolidation</w>\": 41111,\n  \"consor\": 27108,\n  \"consortium</w>\": 29988,\n  \"conspir\": 12680,\n  \"conspiracy</w>\": 15236,\n  \"const\": 3826,\n  \"constable</w>\": 29179,\n  \"constan\": 38718,\n  \"constance</w>\": 40682,\n  \"constant\": 32000,\n  \"constant</w>\": 13111,\n  \"constantine</w>\": 30640,\n  \"constantly</w>\": 14336,\n  \"constell\": 21913,\n  \"constellation</w>\": 25991,\n  \"constitu\": 6299,\n  \"constituency</w>\": 22464,\n  \"constituents</w>\": 32075,\n  \"constitution</w>\": 12157,\n  \"constitutional</w>\": 16091,\n  \"constra\": 28973,\n  \"constraints</w>\": 41910,\n  \"constru\": 3983,\n  \"construc\": 13321,\n  \"construct</w>\": 24467,\n  \"constructed</w>\": 16876,\n  \"constructing</w>\": 33653,\n  \"construction\": 48873,\n  \"construction</w>\": 4585,\n  \"constructive</w>\": 31810,\n  \"consu\": 4689,\n  \"consul\": 5295,\n  \"consul</w>\": 33630,\n  \"consulate</w>\": 34341,\n  \"consult\": 9438,\n  \"consult</w>\": 26727,\n  \"consultancy</w>\": 31735,\n  \"consultant</w>\": 14196,\n  \"consultants</w>\": 27203,\n  \"consultation</w>\": 15777,\n  \"consultations</w>\": 43424,\n  \"consulting</w>\": 15883,\n  \"consume</w>\": 28919,\n  \"consumed</w>\": 29653,\n  \"consumer\": 34408,\n  \"consumer</w>\": 10422,\n  \"consumers</w>\": 14014,\n  \"consuming</w>\": 30607,\n  \"consumption</w>\": 14904,\n  \"cont\": 2036,\n  \"cont</w>\": 21425,\n  \"contact\": 39367,\n  \"contact</w>\": 3523,\n  \"contacted</w>\": 37331,\n  \"contacts</w>\": 22789,\n  \"contag\": 29259,\n  \"contagious</w>\": 33984,\n  \"contain\": 9948,\n  \"contain</w>\": 15187,\n  \"contained</w>\": 23836,\n  \"container</w>\": 14913,\n  \"containers</w>\": 20448,\n  \"containing</w>\": 20281,\n  \"contains</w>\": 12844,\n  \"contamin\": 24662,\n  \"contaminated</w>\": 35773,\n  \"contamination</w>\": 31770,\n  \"conte\": 15402,\n  \"conte</w>\": 26882,\n  \"contempl\": 21924,\n  \"contemplating</w>\": 33854,\n  \"contempor\": 14538,\n  \"contemporary\": 16607,\n  \"contemporary</w>\": 8859,\n  \"contemporaryart</w>\": 20212,\n  \"contempt</w>\": 39293,\n  \"conten\": 42201,\n  \"contender</w>\": 23573,\n  \"contenders</w>\": 29711,\n  \"content\": 15526,\n  \"content</w>\": 4750,\n  \"contentmarketing</w>\": 20429,\n  \"contents</w>\": 14850,\n  \"contest\": 23103,\n  \"contest</w>\": 4576,\n  \"contestalert</w>\": 27313,\n  \"contestant</w>\": 25682,\n  \"contestants</w>\": 28062,\n  \"contested</w>\": 37845,\n  \"contests</w>\": 32210,\n  \"contex\": 42015,\n  \"context</w>\": 13089,\n  \"conti\": 46431,\n  \"conti</w>\": 40842,\n  \"contin\": 1918,\n  \"continent</w>\": 19623,\n  \"continental</w>\": 14089,\n  \"continents</w>\": 38642,\n  \"conting\": 27104,\n  \"contingent</w>\": 36467,\n  \"continu\": 4688,\n  \"continually</w>\": 34086,\n  \"continuation</w>\": 38964,\n  \"continue</w>\": 3942,\n  \"continued</w>\": 10150,\n  \"continues</w>\": 4305,\n  \"continuing</w>\": 11009,\n  \"continuity</w>\": 34035,\n  \"continuous</w>\": 17033,\n  \"continuously</w>\": 29634,\n  \"continuum</w>\": 44978,\n  \"contour</w>\": 34733,\n  \"contr\": 22871,\n  \"contra\": 9880,\n  \"contra</w>\": 38620,\n  \"contrac\": 7581,\n  \"contracep\": 35109,\n  \"contract</w>\": 6120,\n  \"contracting</w>\": 39091,\n  \"contractor</w>\": 21429,\n  \"contractors</w>\": 22427,\n  \"contracts</w>\": 16563,\n  \"contradic\": 27957,\n  \"contrary</w>\": 32805,\n  \"contrast</w>\": 18501,\n  \"contrasting</w>\": 40758,\n  \"contribu\": 4753,\n  \"contribute</w>\": 14112,\n  \"contributed</w>\": 19397,\n  \"contributes</w>\": 34203,\n  \"contributing</w>\": 21762,\n  \"contribution</w>\": 11116,\n  \"contributions</w>\": 14465,\n  \"contributor</w>\": 24553,\n  \"contributors</w>\": 32908,\n  \"contro\": 2372,\n  \"control\": 9963,\n  \"control</w>\": 3366,\n  \"controlled</w>\": 14140,\n  \"controller</w>\": 12929,\n  \"controllers</w>\": 30374,\n  \"controlling</w>\": 26427,\n  \"controls</w>\": 15746,\n  \"controversi\": 13674,\n  \"controversial</w>\": 14617,\n  \"controversy</w>\": 18659,\n  \"conv</w>\": 48382,\n  \"conve\": 18421,\n  \"conven\": 7283,\n  \"conveni\": 33278,\n  \"convenience</w>\": 17859,\n  \"convenient</w>\": 18978,\n  \"conveniently</w>\": 40844,\n  \"convention</w>\": 6752,\n  \"conventional</w>\": 20835,\n  \"conventions</w>\": 41404,\n  \"conver\": 6336,\n  \"convergence</w>\": 35381,\n  \"convers\": 4577,\n  \"conversation</w>\": 5690,\n  \"conversations</w>\": 12326,\n  \"converse</w>\": 24149,\n  \"conversion</w>\": 15111,\n  \"conversions</w>\": 44137,\n  \"convert</w>\": 20074,\n  \"converted</w>\": 20808,\n  \"converter</w>\": 34611,\n  \"convertible</w>\": 19608,\n  \"converting</w>\": 34674,\n  \"converts</w>\": 42470,\n  \"convey</w>\": 38342,\n  \"convic\": 11150,\n  \"convicted</w>\": 18668,\n  \"conviction</w>\": 24967,\n  \"convictions</w>\": 44366,\n  \"convin\": 12889,\n  \"convince</w>\": 20351,\n  \"convinced</w>\": 17388,\n  \"convincing</w>\": 27742,\n  \"convo</w>\": 19372,\n  \"convocation</w>\": 30674,\n  \"convos</w>\": 44842,\n  \"convoy</w>\": 30292,\n  \"conway</w>\": 21410,\n  \"conwy</w>\": 48971,\n  \"cony</w>\": 14501,\n  \"coo\": 1664,\n  \"coo</w>\": 21691,\n  \"coogs</w>\": 47624,\n  \"cook\": 9726,\n  \"cook</w>\": 5977,\n  \"cookbook</w>\": 21086,\n  \"cooke</w>\": 29979,\n  \"cooked</w>\": 11452,\n  \"cooker</w>\": 23806,\n  \"cookery</w>\": 38779,\n  \"cookie</w>\": 9367,\n  \"cookies</w>\": 8320,\n  \"cookin</w>\": 46610,\n  \"cooking\": 39248,\n  \"cooking</w>\": 6283,\n  \"cookout</w>\": 39743,\n  \"cooks</w>\": 24256,\n  \"cool\": 5594,\n  \"cool</w>\": 2077,\n  \"cooled</w>\": 37170,\n  \"cooler</w>\": 11078,\n  \"coolest</w>\": 10566,\n  \"cooling</w>\": 15291,\n  \"coom\": 41726,\n  \"coon\": 34260,\n  \"coon</w>\": 16958,\n  \"coop\": 39917,\n  \"coop</w>\": 18910,\n  \"cooper\": 7264,\n  \"cooper</w>\": 8133,\n  \"cooperate</w>\": 42936,\n  \"cooperation</w>\": 11785,\n  \"cooperative</w>\": 24517,\n  \"coops</w>\": 48531,\n  \"coordin\": 8187,\n  \"coordinate</w>\": 38250,\n  \"coordinated</w>\": 32540,\n  \"coordinating</w>\": 40075,\n  \"coordination</w>\": 25611,\n  \"coordinator</w>\": 13967,\n  \"coors</w>\": 36025,\n  \"cop\": 3196,\n  \"cop</w>\": 7070,\n  \"copa</w>\": 22749,\n  \"copd</w>\": 45876,\n  \"cope\": 47635,\n  \"cope</w>\": 12564,\n  \"copeland</w>\": 37604,\n  \"copen\": 15637,\n  \"copenhagen</w>\": 17390,\n  \"coper\": 41891,\n  \"copernic\": 45519,\n  \"copied</w>\": 36770,\n  \"copies</w>\": 9851,\n  \"coping</w>\": 30545,\n  \"copolitics</w>\": 45846,\n  \"copp\": 20937,\n  \"copped</w>\": 42229,\n  \"copper\": 24741,\n  \"copper</w>\": 10333,\n  \"coppola</w>\": 47427,\n  \"cops</w>\": 10719,\n  \"copter</w>\": 28049,\n  \"copy\": 11376,\n  \"copy</w>\": 4509,\n  \"copying</w>\": 38925,\n  \"copyright</w>\": 15778,\n  \"cor\": 851,\n  \"cor</w>\": 18559,\n  \"cora</w>\": 34953,\n  \"coral\": 31220,\n  \"coral</w>\": 12054,\n  \"corbett</w>\": 35699,\n  \"corbin</w>\": 35578,\n  \"corbyn</w>\": 14026,\n  \"cord\": 40893,\n  \"cord</w>\": 11181,\n  \"corden</w>\": 41999,\n  \"cordi\": 41681,\n  \"cordless</w>\": 44412,\n  \"cords</w>\": 22164,\n  \"core\": 19622,\n  \"core</w>\": 5000,\n  \"cores</w>\": 37874,\n  \"corey\": 31279,\n  \"corey</w>\": 15288,\n  \"corgi</w>\": 31320,\n  \"cori\": 26508,\n  \"coriander</w>\": 37491,\n  \"corin\": 17716,\n  \"corinthians</w>\": 34471,\n  \"cork\": 18148,\n  \"cork</w>\": 10376,\n  \"corn\": 5202,\n  \"corn</w>\": 5894,\n  \"cornelius</w>\": 45865,\n  \"cornell\": 38689,\n  \"cornell</w>\": 20859,\n  \"corner\": 18509,\n  \"corner</w>\": 5253,\n  \"corners</w>\": 19584,\n  \"cornerstone</w>\": 36280,\n  \"cornish</w>\": 23774,\n  \"cornwall\": 37903,\n  \"cornwall</w>\": 10777,\n  \"coron\": 13210,\n  \"corona</w>\": 25564,\n  \"coronado</w>\": 43946,\n  \"coronary</w>\": 45955,\n  \"coronation</w>\": 25014,\n  \"coroner</w>\": 47241,\n  \"corp\": 29203,\n  \"corp</w>\": 10918,\n  \"corpor\": 4258,\n  \"corporal</w>\": 42445,\n  \"corporate\": 33877,\n  \"corporate</w>\": 6838,\n  \"corporation</w>\": 11282,\n  \"corporations</w>\": 25482,\n  \"corps</w>\": 11330,\n  \"corpse</w>\": 29408,\n  \"corpus</w>\": 31672,\n  \"correc\": 5011,\n  \"correct</w>\": 8340,\n  \"corrected</w>\": 35628,\n  \"correction</w>\": 20843,\n  \"correctional</w>\": 38030,\n  \"corrections</w>\": 37507,\n  \"correctly</w>\": 15359,\n  \"correlation</w>\": 29218,\n  \"correspon\": 20203,\n  \"correspondent</w>\": 29996,\n  \"corri\": 12974,\n  \"corridor</w>\": 20592,\n  \"corrie</w>\": 23961,\n  \"corro\": 24936,\n  \"corro</w>\": 42033,\n  \"corrosion</w>\": 39191,\n  \"corru\": 6501,\n  \"corrup\": 30429,\n  \"corrupt</w>\": 15194,\n  \"corruption</w>\": 9141,\n  \"corsa</w>\": 47670,\n  \"corsair</w>\": 42367,\n  \"corset</w>\": 40408,\n  \"cortex</w>\": 40109,\n  \"cortez</w>\": 30461,\n  \"corvette</w>\": 24367,\n  \"cory\": 23221,\n  \"cory</w>\": 18329,\n  \"cos\": 5865,\n  \"cos</w>\": 5700,\n  \"cosby</w>\": 30324,\n  \"cosc\": 45944,\n  \"coscino</w>\": 47909,\n  \"cose</w>\": 26495,\n  \"cosm\": 37486,\n  \"cosme\": 9628,\n  \"cosmetic</w>\": 23918,\n  \"cosmetics</w>\": 12896,\n  \"cosmic\": 47398,\n  \"cosmic</w>\": 18304,\n  \"cosmo\": 12829,\n  \"cosmo</w>\": 32072,\n  \"cosmopolitan</w>\": 35518,\n  \"cosmos</w>\": 22151,\n  \"cospla\": 15149,\n  \"cosplay\": 42401,\n  \"cosplay</w>\": 6435,\n  \"cosplayer</w>\": 30215,\n  \"cosplaying</w>\": 46701,\n  \"cost\": 11360,\n  \"cost</w>\": 4713,\n  \"costa</w>\": 10480,\n  \"costar\": 28659,\n  \"costarica</w>\": 31272,\n  \"costco</w>\": 31045,\n  \"costello</w>\": 30667,\n  \"costing</w>\": 39193,\n  \"costly</w>\": 30170,\n  \"costs</w>\": 7628,\n  \"costu\": 5786,\n  \"costume</w>\": 7235,\n  \"costumes</w>\": 15150,\n  \"cosy</w>\": 22848,\n  \"cot\": 4718,\n  \"cot</w>\": 5871,\n  \"cote\": 44234,\n  \"cote</w>\": 20751,\n  \"cotland</w>\": 32576,\n  \"cotsw\": 23303,\n  \"cotswolds</w>\": 35546,\n  \"cott\": 8211,\n  \"cott</w>\": 11349,\n  \"cottage</w>\": 12155,\n  \"cottages</w>\": 34405,\n  \"cotton\": 22218,\n  \"cotton</w>\": 7050,\n  \"cou\": 1368,\n  \"couch</w>\": 12724,\n  \"cougar\": 35028,\n  \"cougar</w>\": 27042,\n  \"cougars</w>\": 20425,\n  \"cough\": 35631,\n  \"cough</w>\": 18498,\n  \"cougs</w>\": 28482,\n  \"coul\": 22483,\n  \"could\": 44812,\n  \"could</w>\": 1510,\n  \"couldn</w>\": 4072,\n  \"couldnt</w>\": 29042,\n  \"coulter</w>\": 42291,\n  \"coun\": 939,\n  \"counc\": 12927,\n  \"council\": 18187,\n  \"council</w>\": 3620,\n  \"councill\": 15732,\n  \"councillor</w>\": 21179,\n  \"councillors</w>\": 29695,\n  \"councilman</w>\": 40833,\n  \"councils</w>\": 29938,\n  \"counsel\": 13780,\n  \"counsel</w>\": 19814,\n  \"counseling</w>\": 25000,\n  \"counsell\": 47510,\n  \"counselling</w>\": 40581,\n  \"counselor</w>\": 26148,\n  \"counselors</w>\": 38688,\n  \"count\": 6073,\n  \"count</w>\": 5887,\n  \"countdown\": 39559,\n  \"countdown</w>\": 7500,\n  \"counted</w>\": 23149,\n  \"counter\": 10134,\n  \"counter</w>\": 7352,\n  \"counterfe\": 33067,\n  \"counterfeit</w>\": 44242,\n  \"counterpart</w>\": 39216,\n  \"counterparts</w>\": 42106,\n  \"counters</w>\": 46170,\n  \"countess</w>\": 46276,\n  \"counties</w>\": 12338,\n  \"counting</w>\": 9723,\n  \"countless</w>\": 21819,\n  \"countries</w>\": 5489,\n  \"country\": 7896,\n  \"country</w>\": 2157,\n  \"countryfile</w>\": 47023,\n  \"countrymusic</w>\": 30372,\n  \"countryside</w>\": 16303,\n  \"counts</w>\": 12264,\n  \"county\": 18734,\n  \"county</w>\": 2116,\n  \"coup\": 9871,\n  \"coup</w>\": 16479,\n  \"coupe</w>\": 16773,\n  \"couple\": 40136,\n  \"couple</w>\": 3377,\n  \"coupled</w>\": 37153,\n  \"couples</w>\": 14752,\n  \"coupling</w>\": 45595,\n  \"coupon</w>\": 14019,\n  \"coupons</w>\": 23945,\n  \"cour\": 1391,\n  \"coura\": 4436,\n  \"courage</w>\": 9828,\n  \"courageous</w>\": 25005,\n  \"courier</w>\": 27217,\n  \"cours</w>\": 21493,\n  \"course\": 43225,\n  \"course</w>\": 2613,\n  \"courses</w>\": 9464,\n  \"court\": 16837,\n  \"court</w>\": 2908,\n  \"courte\": 5088,\n  \"courtesy</w>\": 5228,\n  \"courthouse</w>\": 22205,\n  \"courtney\": 33601,\n  \"courtney</w>\": 15990,\n  \"courtroom</w>\": 41071,\n  \"courts</w>\": 13514,\n  \"courty\": 20121,\n  \"courtyard</w>\": 21900,\n  \"cous</w>\": 48397,\n  \"cousin</w>\": 7780,\n  \"cousins</w>\": 14073,\n  \"cout\": 29118,\n  \"coutinho</w>\": 35530,\n  \"couture</w>\": 14808,\n  \"cov\": 19384,\n  \"cov</w>\": 48385,\n  \"cove\": 21700,\n  \"cove</w>\": 14708,\n  \"coven\": 12483,\n  \"covenant</w>\": 29647,\n  \"coventry</w>\": 18007,\n  \"cover\": 13534,\n  \"cover</w>\": 2202,\n  \"coverage</w>\": 6810,\n  \"covered</w>\": 5603,\n  \"covering</w>\": 9462,\n  \"covers</w>\": 7745,\n  \"covert</w>\": 40134,\n  \"coveted</w>\": 36119,\n  \"covington</w>\": 43196,\n  \"cow\": 5076,\n  \"cow</w>\": 9706,\n  \"cowan</w>\": 42699,\n  \"coward</w>\": 33729,\n  \"cowards</w>\": 48972,\n  \"cowboy\": 25833,\n  \"cowboy</w>\": 13657,\n  \"cowboys</w>\": 11864,\n  \"cowboysnation</w>\": 43082,\n  \"cowell</w>\": 39015,\n  \"cowgirl</w>\": 47090,\n  \"coworker</w>\": 30727,\n  \"coworkers</w>\": 30821,\n  \"coworking</w>\": 36034,\n  \"cows</w>\": 15204,\n  \"cowx</w>\": 23831,\n  \"cox\": 25784,\n  \"cox</w>\": 11597,\n  \"coy\": 12765,\n  \"coy</w>\": 15742,\n  \"coyi</w>\": 48407,\n  \"coyle</w>\": 45348,\n  \"coyne</w>\": 44729,\n  \"coyo\": 16614,\n  \"coyote</w>\": 26586,\n  \"coyotes</w>\": 30423,\n  \"coys</w>\": 19736,\n  \"coz\": 39922,\n  \"coz</w>\": 14282,\n  \"cozy</w>\": 14873,\n  \"cp\": 7905,\n  \"cp</w>\": 9130,\n  \"cpa</w>\": 30095,\n  \"cpac</w>\": 45731,\n  \"cpc</w>\": 26125,\n  \"cpd</w>\": 23402,\n  \"cpec</w>\": 48007,\n  \"cpfc</w>\": 27553,\n  \"cpi</w>\": 41795,\n  \"cpl</w>\": 26852,\n  \"cpr</w>\": 25134,\n  \"cps</w>\": 27078,\n  \"cpt</w>\": 32892,\n  \"cpu</w>\": 27700,\n  \"cq\": 48910,\n  \"cq</w>\": 48417,\n  \"cr\": 1075,\n  \"cr</w>\": 3483,\n  \"cra\": 1184,\n  \"cra</w>\": 18362,\n  \"crab\": 27382,\n  \"crab</w>\": 11574,\n  \"crabs</w>\": 30908,\n  \"crack\": 11222,\n  \"crack</w>\": 10334,\n  \"crackdown</w>\": 29527,\n  \"cracked</w>\": 19826,\n  \"cracker</w>\": 16298,\n  \"crackers</w>\": 26200,\n  \"cracking</w>\": 13008,\n  \"cracks</w>\": 21426,\n  \"cracy</w>\": 24749,\n  \"cradle</w>\": 29384,\n  \"crae</w>\": 40438,\n  \"craf\": 10873,\n  \"craft\": 7717,\n  \"craft</w>\": 3588,\n  \"craftbeer</w>\": 12371,\n  \"crafted</w>\": 12424,\n  \"crafthour</w>\": 42324,\n  \"crafting</w>\": 26886,\n  \"crafts\": 33276,\n  \"crafts</w>\": 13383,\n  \"craftsman</w>\": 39528,\n  \"craftsmanship</w>\": 36682,\n  \"crafty</w>\": 32317,\n  \"craic</w>\": 46962,\n  \"craig\": 14042,\n  \"craig</w>\": 8061,\n  \"craigslist</w>\": 43865,\n  \"cram\": 29809,\n  \"cramer</w>\": 44592,\n  \"cramps</w>\": 46106,\n  \"cran\": 7761,\n  \"cranberries</w>\": 49361,\n  \"cranberry</w>\": 23824,\n  \"crane</w>\": 14626,\n  \"cranes</w>\": 26979,\n  \"crani\": 45674,\n  \"crank\": 46246,\n  \"crank</w>\": 32283,\n  \"cranston</w>\": 44340,\n  \"crap</w>\": 11899,\n  \"crappy</w>\": 30475,\n  \"crash\": 37150,\n  \"crash</w>\": 5033,\n  \"crashed</w>\": 16638,\n  \"crashes</w>\": 17013,\n  \"crashing</w>\": 24991,\n  \"crat</w>\": 46696,\n  \"crate</w>\": 24756,\n  \"crater</w>\": 22663,\n  \"crates</w>\": 30172,\n  \"cratic</w>\": 32175,\n  \"crative</w>\": 39999,\n  \"crats</w>\": 43056,\n  \"crave</w>\": 33397,\n  \"craven</w>\": 33625,\n  \"craving</w>\": 18344,\n  \"cravings</w>\": 34476,\n  \"craw\": 7400,\n  \"crawfish</w>\": 42772,\n  \"crawford</w>\": 15918,\n  \"crawl</w>\": 20106,\n  \"crawler</w>\": 41012,\n  \"crawley</w>\": 42316,\n  \"crawling</w>\": 37066,\n  \"cray\": 24184,\n  \"cray</w>\": 27032,\n  \"crayon</w>\": 41801,\n  \"crayons</w>\": 43508,\n  \"craz\": 25776,\n  \"craze</w>\": 30637,\n  \"craziest</w>\": 32690,\n  \"craziness</w>\": 46436,\n  \"crazy\": 17540,\n  \"crazy</w>\": 3578,\n  \"crc</w>\": 25618,\n  \"cre\": 798,\n  \"cre</w>\": 17762,\n  \"cream\": 23184,\n  \"cream</w>\": 3867,\n  \"creams</w>\": 41447,\n  \"creamy</w>\": 17206,\n  \"crease</w>\": 48441,\n  \"create\": 30949,\n  \"create</w>\": 3380,\n  \"created</w>\": 4080,\n  \"creates</w>\": 10361,\n  \"creati\": 6714,\n  \"creating</w>\": 5524,\n  \"creation\": 38293,\n  \"creation</w>\": 6900,\n  \"creations</w>\": 17411,\n  \"creative\": 15237,\n  \"creative</w>\": 4450,\n  \"creatives</w>\": 29352,\n  \"creativity</w>\": 9636,\n  \"creator</w>\": 10173,\n  \"creators</w>\": 17981,\n  \"creature</w>\": 14317,\n  \"creatures</w>\": 13938,\n  \"cred\": 7314,\n  \"cred</w>\": 22377,\n  \"credenti\": 29487,\n  \"credentials</w>\": 33422,\n  \"credi\": 21097,\n  \"credibility</w>\": 34984,\n  \"credible</w>\": 32983,\n  \"credit\": 21467,\n  \"credit</w>\": 3900,\n  \"credited</w>\": 32480,\n  \"credits</w>\": 10654,\n  \"creds</w>\": 43462,\n  \"cree\": 33961,\n  \"cree</w>\": 36014,\n  \"creed</w>\": 18845,\n  \"creek\": 26120,\n  \"creek</w>\": 5526,\n  \"creep\": 8153,\n  \"creep</w>\": 26084,\n  \"creeper</w>\": 38662,\n  \"creeping</w>\": 29697,\n  \"creeps</w>\": 45135,\n  \"creepy</w>\": 11943,\n  \"creighton</w>\": 42823,\n  \"creme</w>\": 22681,\n  \"creole</w>\": 45632,\n  \"crepe</w>\": 38611,\n  \"crescent</w>\": 18211,\n  \"cress</w>\": 39124,\n  \"crest\": 35985,\n  \"crest</w>\": 15760,\n  \"crested</w>\": 36656,\n  \"crete</w>\": 8584,\n  \"crew\": 21560,\n  \"crew</w>\": 3462,\n  \"crewe</w>\": 43284,\n  \"crews</w>\": 10463,\n  \"cri\": 1621,\n  \"cri</w>\": 38962,\n  \"crib</w>\": 23271,\n  \"cric\": 4328,\n  \"cricke\": 19098,\n  \"cricket\": 21859,\n  \"cricket</w>\": 5373,\n  \"cricketer</w>\": 28439,\n  \"cricketers</w>\": 43986,\n  \"cried</w>\": 15290,\n  \"cries</w>\": 19769,\n  \"crime\": 13872,\n  \"crime</w>\": 4896,\n  \"crimea</w>\": 28614,\n  \"crimes</w>\": 11827,\n  \"crimin\": 5874,\n  \"criminal\": 30197,\n  \"criminal</w>\": 8255,\n  \"criminals</w>\": 18783,\n  \"crimson</w>\": 19437,\n  \"cringe</w>\": 42588,\n  \"cripp\": 33588,\n  \"cris</w>\": 37818,\n  \"crises</w>\": 36403,\n  \"crisis</w>\": 5712,\n  \"crisp</w>\": 15145,\n  \"crispr</w>\": 39784,\n  \"crisps</w>\": 35744,\n  \"crispy</w>\": 16458,\n  \"criss</w>\": 29708,\n  \"cristi\": 12699,\n  \"cristian</w>\": 48808,\n  \"cristiano</w>\": 14807,\n  \"cristina</w>\": 33395,\n  \"cristo</w>\": 38315,\n  \"crit\": 3613,\n  \"crit</w>\": 48130,\n  \"criteri\": 33627,\n  \"criteria</w>\": 24849,\n  \"criterion</w>\": 43841,\n  \"criti\": 25333,\n  \"critic\": 12417,\n  \"critic</w>\": 19361,\n  \"critical\": 15314,\n  \"critical</w>\": 6808,\n  \"critically</w>\": 21570,\n  \"criticalrole\": 33606,\n  \"criticalrole</w>\": 22742,\n  \"criticalrolefanart</w>\": 43663,\n  \"critici\": 20333,\n  \"criticism</w>\": 17405,\n  \"criticize</w>\": 46081,\n  \"criticized</w>\": 41557,\n  \"critics</w>\": 16946,\n  \"critique</w>\": 32982,\n  \"critters</w>\": 35423,\n  \"crm</w>\": 22610,\n  \"cro\": 1192,\n  \"cro</w>\": 22522,\n  \"croati\": 28072,\n  \"croatia</w>\": 13323,\n  \"croatian</w>\": 34795,\n  \"croc</w>\": 43350,\n  \"croche\": 35352,\n  \"crochet</w>\": 17554,\n  \"crock\": 41685,\n  \"crocker</w>\": 47843,\n  \"crockett</w>\": 48313,\n  \"crocod\": 24519,\n  \"crocodile</w>\": 24757,\n  \"crocs</w>\": 38988,\n  \"croft</w>\": 16657,\n  \"croissant</w>\": 46011,\n  \"croix</w>\": 44735,\n  \"crom\": 25082,\n  \"crombie</w>\": 46162,\n  \"cromwell</w>\": 45345,\n  \"cron\": 17361,\n  \"croo\": 16443,\n  \"crook</w>\": 43744,\n  \"crooked\": 48473,\n  \"crooked</w>\": 25644,\n  \"crooks</w>\": 44226,\n  \"crop\": 40751,\n  \"crop</w>\": 9955,\n  \"cropped</w>\": 31139,\n  \"crops</w>\": 16290,\n  \"crore</w>\": 18274,\n  \"crores</w>\": 37281,\n  \"cros\": 16670,\n  \"crosby</w>\": 21095,\n  \"cross\": 5266,\n  \"cross</w>\": 3417,\n  \"crossed</w>\": 11731,\n  \"crosses</w>\": 20473,\n  \"crossfit\": 47214,\n  \"crossfit</w>\": 20395,\n  \"crossing</w>\": 8673,\n  \"crossings</w>\": 43517,\n  \"crossover</w>\": 17194,\n  \"crossroads</w>\": 27427,\n  \"crossword</w>\": 32945,\n  \"crou\": 31206,\n  \"crouch</w>\": 36506,\n  \"crow\": 3138,\n  \"crow</w>\": 16019,\n  \"crowd\": 12036,\n  \"crowd</w>\": 4570,\n  \"crowded</w>\": 20182,\n  \"crowdfunding</w>\": 17971,\n  \"crowds</w>\": 16092,\n  \"crowe</w>\": 33560,\n  \"crowley</w>\": 32287,\n  \"crown\": 22190,\n  \"crown</w>\": 6902,\n  \"crowned</w>\": 16109,\n  \"crowns</w>\": 33229,\n  \"crows</w>\": 27134,\n  \"croy\": 21676,\n  \"croydon</w>\": 27116,\n  \"crs</w>\": 28449,\n  \"crt</w>\": 43877,\n  \"cru\": 1815,\n  \"cru</w>\": 29788,\n  \"cruci\": 18499,\n  \"crucial</w>\": 12396,\n  \"crude</w>\": 20677,\n  \"cruel\": 16073,\n  \"cruel</w>\": 17573,\n  \"cruelty</w>\": 20675,\n  \"cruis\": 27721,\n  \"cruise\": 36425,\n  \"cruise</w>\": 6764,\n  \"cruiser</w>\": 21394,\n  \"cruises</w>\": 19214,\n  \"cruising</w>\": 19743,\n  \"crum\": 43268,\n  \"crumb\": 48327,\n  \"crumb</w>\": 39909,\n  \"crumble</w>\": 36595,\n  \"crumbs</w>\": 35893,\n  \"crun\": 17407,\n  \"crunch</w>\": 16620,\n  \"crunchy</w>\": 31366,\n  \"crusad\": 19133,\n  \"crusade</w>\": 36846,\n  \"crusader</w>\": 40171,\n  \"crusaders</w>\": 31319,\n  \"crush\": 22296,\n  \"crush</w>\": 7610,\n  \"crushed</w>\": 18270,\n  \"crusher</w>\": 44923,\n  \"crushes</w>\": 35844,\n  \"crushing</w>\": 20790,\n  \"crust</w>\": 23136,\n  \"crusted</w>\": 37314,\n  \"cruz\": 33689,\n  \"cruz</w>\": 8403,\n  \"cry\": 2837,\n  \"cry</w>\": 6290,\n  \"crying</w>\": 6828,\n  \"cryo\": 32215,\n  \"cryp\": 4865,\n  \"crypt</w>\": 37814,\n  \"cryptic</w>\": 46925,\n  \"crypto\": 8080,\n  \"crypto</w>\": 9608,\n  \"cryptocurrencies</w>\": 33329,\n  \"cryptocurrency</w>\": 12070,\n  \"cryst\": 15891,\n  \"crystal\": 17387,\n  \"crystal</w>\": 6517,\n  \"crystalli\": 47551,\n  \"crystals</w>\": 18350,\n  \"cs\": 11978,\n  \"cs</w>\": 2804,\n  \"csa</w>\": 26355,\n  \"csc\": 41727,\n  \"csc</w>\": 37266,\n  \"csd</w>\": 36913,\n  \"cse</w>\": 41659,\n  \"csg</w>\": 47085,\n  \"csgo</w>\": 28928,\n  \"csi\": 41750,\n  \"csi</w>\": 28070,\n  \"csk</w>\": 43036,\n  \"csm</w>\": 40061,\n  \"csn</w>\": 46329,\n  \"cso</w>\": 43864,\n  \"csp</w>\": 39243,\n  \"csr\": 32105,\n  \"csr</w>\": 24598,\n  \"csrracing</w>\": 44193,\n  \"css\": 41418,\n  \"css</w>\": 19846,\n  \"cst</w>\": 17016,\n  \"csu\": 35948,\n  \"csu</w>\": 31261,\n  \"csw</w>\": 41031,\n  \"ct\": 3381,\n  \"ct</w>\": 1122,\n  \"cta</w>\": 28397,\n  \"ctar</w>\": 27842,\n  \"ctc</w>\": 34123,\n  \"cte</w>\": 31410,\n  \"cted</w>\": 2910,\n  \"ctf</w>\": 35250,\n  \"cthulhu</w>\": 41064,\n  \"cting</w>\": 7985,\n  \"ction\": 17578,\n  \"ction</w>\": 1569,\n  \"ctions</w>\": 7021,\n  \"ctive</w>\": 9313,\n  \"cto</w>\": 17445,\n  \"ctor</w>\": 8108,\n  \"ctr\": 35602,\n  \"ctr</w>\": 18481,\n  \"cts</w>\": 6936,\n  \"ctto</w>\": 25118,\n  \"ctu\": 20834,\n  \"cture</w>\": 17668,\n  \"ctv\": 21213,\n  \"ctv</w>\": 27590,\n  \"cu\": 729,\n  \"cu</w>\": 11224,\n  \"cuando</w>\": 40388,\n  \"cub\": 16938,\n  \"cub</w>\": 19972,\n  \"cuba</w>\": 11576,\n  \"cuban</w>\": 15536,\n  \"cube\": 47753,\n  \"cube</w>\": 11353,\n  \"cubes</w>\": 31413,\n  \"cubic\": 48159,\n  \"cubic</w>\": 29614,\n  \"cubs</w>\": 9858,\n  \"cuck\": 26364,\n  \"cuckoo</w>\": 38062,\n  \"cucu\": 16705,\n  \"cucumber</w>\": 19787,\n  \"cucumbers</w>\": 48065,\n  \"cud\": 42684,\n  \"cudd\": 12820,\n  \"cuddle</w>\": 19568,\n  \"cuddles</w>\": 24001,\n  \"cuddling</w>\": 29696,\n  \"cuddly</w>\": 36208,\n  \"cudi</w>\": 48713,\n  \"cue</w>\": 13424,\n  \"cuer\": 39506,\n  \"cues</w>\": 35719,\n  \"cuff\": 34693,\n  \"cuff</w>\": 22414,\n  \"cufflinks</w>\": 43938,\n  \"cuffs</w>\": 37221,\n  \"cuis\": 9938,\n  \"cuisine</w>\": 10605,\n  \"cuk</w>\": 34838,\n  \"cul\": 1877,\n  \"cula</w>\": 35935,\n  \"cular</w>\": 10940,\n  \"culars</w>\": 45719,\n  \"cule</w>\": 31066,\n  \"cules</w>\": 18984,\n  \"culin\": 14772,\n  \"culinary</w>\": 16466,\n  \"cull\": 21880,\n  \"cull</w>\": 42061,\n  \"cullen</w>\": 25973,\n  \"culmin\": 33778,\n  \"culo\": 36305,\n  \"culprit</w>\": 41593,\n  \"cult</w>\": 11965,\n  \"cultiv\": 16781,\n  \"cultivate</w>\": 42983,\n  \"cultivated</w>\": 48901,\n  \"cultivation</w>\": 41539,\n  \"cultur\": 20780,\n  \"cultural\": 34908,\n  \"cultural</w>\": 6753,\n  \"culturally</w>\": 36783,\n  \"culture\": 20197,\n  \"culture</w>\": 3673,\n  \"cultured</w>\": 40176,\n  \"cultures</w>\": 19552,\n  \"culver</w>\": 42103,\n  \"cum\": 20142,\n  \"cum</w>\": 27119,\n  \"cumb\": 10858,\n  \"cumber\": 15309,\n  \"cumberbatch</w>\": 27541,\n  \"cumberland</w>\": 28747,\n  \"cumbri\": 32010,\n  \"cumbria</w>\": 17953,\n  \"cumin</w>\": 42285,\n  \"cumple</w>\": 47050,\n  \"cumul\": 42961,\n  \"cumulative</w>\": 47610,\n  \"cumulus</w>\": 46313,\n  \"cun\": 12423,\n  \"cun</w>\": 29532,\n  \"cunningham</w>\": 25321,\n  \"cuomo</w>\": 25681,\n  \"cup\": 5059,\n  \"cup</w>\": 1937,\n  \"cupboard</w>\": 32074,\n  \"cupcake</w>\": 17025,\n  \"cupcakes</w>\": 12747,\n  \"cupid</w>\": 34885,\n  \"cuppa</w>\": 28077,\n  \"cups</w>\": 11463,\n  \"cur\": 1092,\n  \"cur</w>\": 33073,\n  \"curated</w>\": 20341,\n  \"curator</w>\": 20753,\n  \"curb</w>\": 21931,\n  \"curd</w>\": 38881,\n  \"cure\": 36758,\n  \"cure</w>\": 9088,\n  \"cured</w>\": 26248,\n  \"cures</w>\": 38204,\n  \"curfew</w>\": 48826,\n  \"curi\": 12640,\n  \"curing</w>\": 44169,\n  \"curiosity</w>\": 21583,\n  \"curious</w>\": 9865,\n  \"curl</w>\": 24306,\n  \"curled</w>\": 43734,\n  \"curling</w>\": 18543,\n  \"curls</w>\": 24340,\n  \"curly</w>\": 20795,\n  \"curran</w>\": 40999,\n  \"currant</w>\": 43501,\n  \"curren\": 6142,\n  \"currencies</w>\": 23530,\n  \"currency</w>\": 7853,\n  \"current</w>\": 3653,\n  \"currently</w>\": 3792,\n  \"currents</w>\": 35450,\n  \"curric\": 16201,\n  \"curriculum</w>\": 17947,\n  \"currie</w>\": 39385,\n  \"curry\": 49285,\n  \"curry</w>\": 8051,\n  \"curse</w>\": 18479,\n  \"cursed</w>\": 26408,\n  \"cursor</w>\": 46546,\n  \"curt</w>\": 38137,\n  \"curtain</w>\": 17223,\n  \"curtains</w>\": 30223,\n  \"curti\": 39925,\n  \"curtis</w>\": 13808,\n  \"curve</w>\": 15792,\n  \"curved</w>\": 25789,\n  \"curves</w>\": 22814,\n  \"curvy</w>\": 45788,\n  \"cus</w>\": 2736,\n  \"cusa</w>\": 47414,\n  \"cuse</w>\": 37950,\n  \"cush\": 43731,\n  \"cushi\": 15333,\n  \"cushion</w>\": 20853,\n  \"cushions</w>\": 34163,\n  \"cussion</w>\": 16658,\n  \"cussions</w>\": 46853,\n  \"cust\": 20900,\n  \"custard</w>\": 26516,\n  \"custo\": 4376,\n  \"custody</w>\": 16176,\n  \"custom\": 2662,\n  \"custom</w>\": 4996,\n  \"custome\": 41323,\n  \"customer\": 24035,\n  \"customer</w>\": 5102,\n  \"customerexperience</w>\": 45167,\n  \"customers</w>\": 5528,\n  \"customerservice</w>\": 40611,\n  \"customiz\": 41793,\n  \"customizable</w>\": 48253,\n  \"customization</w>\": 48244,\n  \"customize</w>\": 32179,\n  \"customized</w>\": 23229,\n  \"customs</w>\": 16880,\n  \"cut\": 10511,\n  \"cut</w>\": 3032,\n  \"cute\": 16031,\n  \"cute</w>\": 2242,\n  \"cuteness</w>\": 19342,\n  \"cuter</w>\": 27151,\n  \"cutest</w>\": 8032,\n  \"cuth\": 44328,\n  \"cutie</w>\": 10733,\n  \"cuties\": 40939,\n  \"cuties</w>\": 23420,\n  \"cutiesaturday</w>\": 41883,\n  \"cutler</w>\": 40428,\n  \"cutlery</w>\": 49073,\n  \"cutout</w>\": 45016,\n  \"cuts</w>\": 7435,\n  \"cutt\": 27338,\n  \"cutt</w>\": 47647,\n  \"cutter</w>\": 19719,\n  \"cutters</w>\": 44783,\n  \"cutting</w>\": 7266,\n  \"cuz</w>\": 9215,\n  \"cv\": 13531,\n  \"cv</w>\": 13947,\n  \"cvs</w>\": 29603,\n  \"cw\": 10652,\n  \"cw</w>\": 11065,\n  \"cwc</w>\": 19179,\n  \"cwgc</w>\": 48527,\n  \"cws</w>\": 45186,\n  \"cx\": 44457,\n  \"cx</w>\": 14283,\n  \"cy\": 1470,\n  \"cy</w>\": 1678,\n  \"cyber\": 5830,\n  \"cyber</w>\": 10210,\n  \"cybercrime</w>\": 41772,\n  \"cybermonday</w>\": 36578,\n  \"cyberpunk</w>\": 36896,\n  \"cybersecurity</w>\": 10581,\n  \"cyborg</w>\": 36650,\n  \"cycl\": 9791,\n  \"cycle\": 19083,\n  \"cycle</w>\": 5072,\n  \"cycled</w>\": 31055,\n  \"cycles</w>\": 14605,\n  \"cycli\": 12201,\n  \"cycling\": 26353,\n  \"cycling</w>\": 6321,\n  \"cyclist</w>\": 20686,\n  \"cyclists</w>\": 20303,\n  \"cyclo\": 18122,\n  \"cyclone\": 48094,\n  \"cyclone</w>\": 20917,\n  \"cyclones</w>\": 34669,\n  \"cylin\": 18569,\n  \"cylinder</w>\": 22092,\n  \"cylinders</w>\": 48888,\n  \"cymb\": 36677,\n  \"cymru</w>\": 24005,\n  \"cyn\": 14324,\n  \"cynthi\": 41994,\n  \"cynthia</w>\": 23748,\n  \"cyp\": 14809,\n  \"cypress</w>\": 25347,\n  \"cypri\": 36481,\n  \"cyprus</w>\": 15263,\n  \"cyril</w>\": 36028,\n  \"cyrus</w>\": 14204,\n  \"cystic</w>\": 46131,\n  \"cyto\": 31864,\n  \"cz\": 22898,\n  \"cz</w>\": 22921,\n  \"cze\": 12152,\n  \"czech\": 43151,\n  \"czech</w>\": 16141,\n  \"cÃ©\": 36454,\n  \"cÃ©</w>\": 18317,\n  \"d\": 67,\n  \"d</w>\": 323,\n  \"da\": 925,\n  \"da</w>\": 1140,\n  \"daa</w>\": 32642,\n  \"daan</w>\": 44814,\n  \"dab\": 10413,\n  \"dab</w>\": 22900,\n  \"dac\": 16222,\n  \"dac</w>\": 27478,\n  \"daca</w>\": 28477,\n  \"dach\": 34166,\n  \"dachsh\": 41641,\n  \"dachshund</w>\": 42720,\n  \"dad\": 4346,\n  \"dad</w>\": 2639,\n  \"dada</w>\": 31325,\n  \"daddy\": 29466,\n  \"daddy</w>\": 6546,\n  \"dade</w>\": 23299,\n  \"dades</w>\": 28289,\n  \"dads</w>\": 12741,\n  \"dae\": 23358,\n  \"dae</w>\": 15422,\n  \"daener\": 46934,\n  \"daes\": 47282,\n  \"daesh</w>\": 35047,\n  \"daf\": 9972,\n  \"daf</w>\": 36704,\n  \"daffodils</w>\": 44769,\n  \"daft</w>\": 36347,\n  \"dag\": 11434,\n  \"dag</w>\": 25650,\n  \"dagger</w>\": 34251,\n  \"dah\": 16976,\n  \"dah</w>\": 11776,\n  \"dahl\": 45816,\n  \"dahl</w>\": 22621,\n  \"dahlia</w>\": 41768,\n  \"dai\": 13559,\n  \"dai</w>\": 10632,\n  \"dail\": 14676,\n  \"dailies</w>\": 21260,\n  \"daily\": 6689,\n  \"daily</w>\": 2873,\n  \"dailynews</w>\": 43466,\n  \"dailys\": 43160,\n  \"dailysketch</w>\": 46738,\n  \"daim\": 40421,\n  \"dain\": 32222,\n  \"dain</w>\": 28315,\n  \"daipur</w>\": 47631,\n  \"dair\": 19998,\n  \"dair</w>\": 42078,\n  \"dairy\": 25243,\n  \"dairy</w>\": 10302,\n  \"dairyfree</w>\": 49366,\n  \"dais\": 10502,\n  \"daisi\": 39947,\n  \"daisies</w>\": 40654,\n  \"daisy\": 39310,\n  \"daisy</w>\": 12865,\n  \"dak\": 6999,\n  \"dak</w>\": 16095,\n  \"dakar</w>\": 31137,\n  \"dakota\": 38522,\n  \"dakota</w>\": 12358,\n  \"dal\": 2476,\n  \"dal</w>\": 5601,\n  \"dala</w>\": 42675,\n  \"dalai</w>\": 41222,\n  \"dalail\": 35169,\n  \"dalailama</w>\": 35849,\n  \"dale\": 11533,\n  \"dale</w>\": 4677,\n  \"dalejr</w>\": 38207,\n  \"dales</w>\": 29031,\n  \"daley</w>\": 28544,\n  \"dalgo</w>\": 43614,\n  \"dali\": 36735,\n  \"dali</w>\": 25703,\n  \"dalit</w>\": 45432,\n  \"dall</w>\": 43631,\n  \"dalla\": 16772,\n  \"dallas\": 27414,\n  \"dallas</w>\": 5759,\n  \"dallascowboys</w>\": 33016,\n  \"dalmati\": 44275,\n  \"dalton</w>\": 21488,\n  \"daly</w>\": 24873,\n  \"dam\": 1880,\n  \"dam</w>\": 4926,\n  \"damage</w>\": 6822,\n  \"damaged</w>\": 13568,\n  \"damages</w>\": 28842,\n  \"damaging</w>\": 20610,\n  \"damas\": 23345,\n  \"damascus</w>\": 25396,\n  \"dame</w>\": 10069,\n  \"dames</w>\": 44548,\n  \"dami\": 17783,\n  \"damian\": 43307,\n  \"damian</w>\": 25375,\n  \"damien</w>\": 25090,\n  \"dammit</w>\": 31057,\n  \"damn\": 37409,\n  \"damn</w>\": 4451,\n  \"damned</w>\": 28428,\n  \"damon\": 48503,\n  \"damon</w>\": 18244,\n  \"damp</w>\": 26520,\n  \"dams</w>\": 37680,\n  \"dan\": 2257,\n  \"dan</w>\": 2284,\n  \"dana\": 44834,\n  \"dana</w>\": 13777,\n  \"danao</w>\": 38598,\n  \"danc\": 3945,\n  \"dance\": 10619,\n  \"dance</w>\": 2724,\n  \"danced</w>\": 32891,\n  \"dancehall</w>\": 33300,\n  \"dancer</w>\": 11400,\n  \"dancers</w>\": 13153,\n  \"dances</w>\": 24083,\n  \"dancing\": 33280,\n  \"dancing</w>\": 6226,\n  \"dand\": 12593,\n  \"dandelion</w>\": 38903,\n  \"dandy</w>\": 31932,\n  \"dane</w>\": 19330,\n  \"danes</w>\": 47477,\n  \"dang\": 4283,\n  \"dang</w>\": 14992,\n  \"danger\": 20083,\n  \"danger</w>\": 11212,\n  \"dangerous</w>\": 7350,\n  \"dangerously</w>\": 35012,\n  \"dangers</w>\": 23726,\n  \"dangle</w>\": 39907,\n  \"dani\": 3001,\n  \"dani</w>\": 17009,\n  \"daniel\": 7859,\n  \"daniel</w>\": 4981,\n  \"daniela</w>\": 44466,\n  \"danielle\": 30396,\n  \"danielle</w>\": 15292,\n  \"danielpadilla</w>\": 34702,\n  \"daniels</w>\": 16146,\n  \"danish</w>\": 15467,\n  \"dank</w>\": 31849,\n  \"dann\": 11951,\n  \"danny\": 14950,\n  \"danny</w>\": 7621,\n  \"dano</w>\": 29703,\n  \"dans</w>\": 16241,\n  \"dant\": 48097,\n  \"dant</w>\": 28237,\n  \"dante</w>\": 21911,\n  \"danube</w>\": 44594,\n  \"dany</w>\": 47816,\n  \"dao</w>\": 36099,\n  \"dap\": 12149,\n  \"dap</w>\": 38034,\n  \"daph\": 24591,\n  \"daphne</w>\": 31687,\n  \"dapl</w>\": 34478,\n  \"dapp\": 46857,\n  \"dapper</w>\": 26071,\n  \"daq</w>\": 25381,\n  \"dar\": 1377,\n  \"dar</w>\": 6242,\n  \"dara</w>\": 17064,\n  \"darby</w>\": 34366,\n  \"darcy</w>\": 32916,\n  \"dare\": 14833,\n  \"dare</w>\": 9863,\n  \"daredevil</w>\": 28849,\n  \"dares</w>\": 42973,\n  \"dareto\": 46794,\n  \"dari\": 16292,\n  \"dari</w>\": 14552,\n  \"daria</w>\": 45622,\n  \"daries</w>\": 18184,\n  \"daring</w>\": 28166,\n  \"dario</w>\": 33918,\n  \"darius</w>\": 32606,\n  \"darje\": 49089,\n  \"dark\": 5724,\n  \"dark</w>\": 3144,\n  \"darker</w>\": 18737,\n  \"darkest</w>\": 25898,\n  \"darkness</w>\": 10521,\n  \"darling</w>\": 13048,\n  \"darlings</w>\": 39961,\n  \"darlington</w>\": 34565,\n  \"darn</w>\": 26059,\n  \"darrell</w>\": 33522,\n  \"darren\": 20263,\n  \"darren</w>\": 12275,\n  \"darry\": 29200,\n  \"darryl</w>\": 35359,\n  \"darshan</w>\": 34564,\n  \"dart\": 14001,\n  \"dart</w>\": 19841,\n  \"darth\": 41304,\n  \"darth</w>\": 23164,\n  \"dartmoor</w>\": 31477,\n  \"dartmouth</w>\": 29667,\n  \"darts</w>\": 15246,\n  \"darwin\": 43013,\n  \"darwin</w>\": 20926,\n  \"daryl\": 45607,\n  \"daryl</w>\": 24532,\n  \"das\": 9940,\n  \"das</w>\": 7359,\n  \"dash\": 13858,\n  \"dash</w>\": 10206,\n  \"dashboard</w>\": 27679,\n  \"dashi\": 12876,\n  \"dashing</w>\": 33825,\n  \"dat\": 1717,\n  \"dat</w>\": 9445,\n  \"data\": 14876,\n  \"data</w>\": 2281,\n  \"datab\": 11941,\n  \"database</w>\": 14678,\n  \"databases</w>\": 48384,\n  \"datac\": 27329,\n  \"datacenter</w>\": 40133,\n  \"datasci\": 14496,\n  \"datascience</w>\": 15748,\n  \"dataviz</w>\": 28138,\n  \"date\": 34300,\n  \"date</w>\": 1524,\n  \"dated</w>\": 13564,\n  \"dates</w>\": 7228,\n  \"dating</w>\": 8534,\n  \"dation</w>\": 15311,\n  \"datlantic\": 34270,\n  \"dato</w>\": 36075,\n  \"dats</w>\": 48674,\n  \"dau\": 3162,\n  \"dau</w>\": 33828,\n  \"daugh\": 42523,\n  \"daughter</w>\": 3944,\n  \"daughters</w>\": 13585,\n  \"daun\": 29470,\n  \"dav\": 3700,\n  \"dav</w>\": 46488,\n  \"davao</w>\": 31502,\n  \"dave\": 10089,\n  \"dave</w>\": 5077,\n  \"daven\": 28350,\n  \"davenport</w>\": 34624,\n  \"davey</w>\": 33391,\n  \"davi\": 1732,\n  \"david\": 4640,\n  \"david</w>\": 2259,\n  \"davidbowie</w>\": 44448,\n  \"davido</w>\": 35989,\n  \"davids</w>\": 46695,\n  \"davidson</w>\": 13166,\n  \"davies</w>\": 13120,\n  \"davin\": 43187,\n  \"davis\": 24426,\n  \"davis</w>\": 5536,\n  \"davison</w>\": 43725,\n  \"davos</w>\": 31887,\n  \"davy</w>\": 41565,\n  \"daw\": 5971,\n  \"daw</w>\": 24404,\n  \"dawg</w>\": 18660,\n  \"dawgs</w>\": 26431,\n  \"dawn\": 30590,\n  \"dawn</w>\": 7689,\n  \"dawson</w>\": 18611,\n  \"dax</w>\": 29458,\n  \"day\": 1405,\n  \"day</w>\": 575,\n  \"daya</w>\": 38165,\n  \"daybreak</w>\": 33862,\n  \"daycare</w>\": 36363,\n  \"daydream</w>\": 41587,\n  \"dayin\": 20332,\n  \"daylight</w>\": 20809,\n  \"dayo\": 29856,\n  \"dayo</w>\": 46605,\n  \"dayof\": 16272,\n  \"dayofthe\": 38043,\n  \"days</w>\": 1161,\n  \"daysof\": 12379,\n  \"daysofcode</w>\": 36537,\n  \"daysto\": 29886,\n  \"daystogo</w>\": 42198,\n  \"dayswild</w>\": 42052,\n  \"daytime</w>\": 22830,\n  \"dayton\": 35729,\n  \"dayton</w>\": 20262,\n  \"daytona</w>\": 16335,\n  \"dayweekend</w>\": 44526,\n  \"dayz</w>\": 35949,\n  \"daz\": 15449,\n  \"daz</w>\": 43844,\n  \"daze</w>\": 33591,\n  \"dazz\": 17149,\n  \"dazzle</w>\": 41164,\n  \"dazzling</w>\": 28821,\n  \"db\": 19100,\n  \"db</w>\": 8128,\n  \"dbacks</w>\": 31175,\n  \"dbs</w>\": 40558,\n  \"dbz</w>\": 49226,\n  \"dc\": 5074,\n  \"dc</w>\": 2743,\n  \"dca</w>\": 49107,\n  \"dcc</w>\": 33747,\n  \"dccomics</w>\": 17610,\n  \"dcfc</w>\": 35526,\n  \"dci</w>\": 35336,\n  \"dcs</w>\": 42878,\n  \"dcu</w>\": 42647,\n  \"dd\": 1353,\n  \"dd</w>\": 3766,\n  \"dda</w>\": 35202,\n  \"ddad</w>\": 39049,\n  \"dday\": 32689,\n  \"dday</w>\": 26243,\n  \"ddc</w>\": 48513,\n  \"ddd</w>\": 24183,\n  \"dddd</w>\": 35362,\n  \"dden</w>\": 5013,\n  \"dder</w>\": 9300,\n  \"dders</w>\": 24827,\n  \"ddi</w>\": 44450,\n  \"ddin</w>\": 17175,\n  \"dding\": 48101,\n  \"dding</w>\": 8974,\n  \"ddings</w>\": 49106,\n  \"ddington</w>\": 29238,\n  \"ddle\": 17633,\n  \"ddle</w>\": 8357,\n  \"ddled</w>\": 38392,\n  \"ddles</w>\": 33901,\n  \"ddleston</w>\": 25647,\n  \"ddling</w>\": 30981,\n  \"ddlovato</w>\": 28244,\n  \"ddos</w>\": 46463,\n  \"ddr</w>\": 26027,\n  \"dds</w>\": 48334,\n  \"ddu</w>\": 43836,\n  \"ddy\": 14981,\n  \"ddy</w>\": 7876,\n  \"de\": 561,\n  \"de</w>\": 654,\n  \"dea</w>\": 18477,\n  \"deacon</w>\": 29155,\n  \"dead\": 3906,\n  \"dead</w>\": 2747,\n  \"deadliest</w>\": 40811,\n  \"deadline\": 47209,\n  \"deadline</w>\": 8458,\n  \"deadlines</w>\": 44959,\n  \"deadly</w>\": 10756,\n  \"deadpool</w>\": 21471,\n  \"deaf\": 28229,\n  \"deaf</w>\": 18358,\n  \"deal\": 7249,\n  \"deal</w>\": 2696,\n  \"dealer</w>\": 15218,\n  \"dealers</w>\": 21697,\n  \"dealership</w>\": 32096,\n  \"dealing</w>\": 13138,\n  \"deals</w>\": 4469,\n  \"dealt</w>\": 30101,\n  \"dean\": 13807,\n  \"dean</w>\": 5828,\n  \"deandre</w>\": 43635,\n  \"deans</w>\": 46852,\n  \"dear\": 15696,\n  \"dear</w>\": 3817,\n  \"dearest</w>\": 24880,\n  \"dearly</w>\": 31880,\n  \"deas</w>\": 34715,\n  \"death\": 7163,\n  \"death</w>\": 2767,\n  \"deaths</w>\": 12253,\n  \"deau</w>\": 12399,\n  \"deaux</w>\": 19883,\n  \"deb\": 2987,\n  \"deb</w>\": 25687,\n  \"debat\": 32082,\n  \"debate</w>\": 5196,\n  \"debates</w>\": 19239,\n  \"debating</w>\": 23472,\n  \"debbie\": 47186,\n  \"debbie</w>\": 16735,\n  \"debit</w>\": 32410,\n  \"debor\": 16738,\n  \"deborah\": 40997,\n  \"deborah</w>\": 22150,\n  \"debra</w>\": 33233,\n  \"debris</w>\": 19208,\n  \"debt</w>\": 8932,\n  \"debts</w>\": 38770,\n  \"debu\": 9790,\n  \"debun\": 33123,\n  \"debut\": 42608,\n  \"debut</w>\": 4085,\n  \"debuted</w>\": 25215,\n  \"debuting</w>\": 34817,\n  \"debuts</w>\": 17044,\n  \"dec\": 3063,\n  \"dec</w>\": 4628,\n  \"deca</w>\": 33428,\n  \"decad\": 29914,\n  \"decade</w>\": 11099,\n  \"decadent</w>\": 41716,\n  \"decades</w>\": 10488,\n  \"decal</w>\": 26678,\n  \"decals</w>\": 37606,\n  \"decan\": 40677,\n  \"decat\": 35334,\n  \"decath\": 47455,\n  \"decatur</w>\": 38540,\n  \"decay</w>\": 22703,\n  \"dece\": 3534,\n  \"deceased</w>\": 30035,\n  \"december</w>\": 3864,\n  \"decent</w>\": 10698,\n  \"decentr\": 28960,\n  \"decentralized</w>\": 38485,\n  \"decep\": 33529,\n  \"deception</w>\": 33046,\n  \"deci\": 2262,\n  \"decide</w>\": 8447,\n  \"decided</w>\": 4939,\n  \"decides</w>\": 17269,\n  \"deciding</w>\": 22513,\n  \"decision</w>\": 5575,\n  \"decisions</w>\": 9903,\n  \"decisive</w>\": 28690,\n  \"deck\": 24885,\n  \"deck</w>\": 6943,\n  \"decked</w>\": 39096,\n  \"decker</w>\": 21449,\n  \"decks</w>\": 23968,\n  \"decl\": 7091,\n  \"decla\": 10739,\n  \"declan</w>\": 42341,\n  \"declar\": 18040,\n  \"declaration</w>\": 19714,\n  \"declare</w>\": 19856,\n  \"declared</w>\": 13845,\n  \"declares</w>\": 23641,\n  \"declaring</w>\": 33273,\n  \"decline</w>\": 15084,\n  \"declined</w>\": 28911,\n  \"declines</w>\": 40478,\n  \"declining</w>\": 29221,\n  \"deco\": 26412,\n  \"deco</w>\": 16422,\n  \"decor\": 5148,\n  \"decor</w>\": 6928,\n  \"decorate</w>\": 23651,\n  \"decorated</w>\": 15917,\n  \"decorating</w>\": 16968,\n  \"decoration</w>\": 16029,\n  \"decorations</w>\": 19158,\n  \"decorative</w>\": 19289,\n  \"decre\": 12284,\n  \"decrease</w>\": 24703,\n  \"decreased</w>\": 33913,\n  \"decreasing</w>\": 43763,\n  \"decree</w>\": 43327,\n  \"ded\": 16744,\n  \"ded</w>\": 1241,\n  \"dedic\": 4701,\n  \"dedicate</w>\": 27610,\n  \"dedicated</w>\": 6770,\n  \"dedication</w>\": 10188,\n  \"dedly</w>\": 36204,\n  \"deduc\": 22799,\n  \"dee\": 5268,\n  \"dee</w>\": 6705,\n  \"deed</w>\": 30260,\n  \"deeds</w>\": 24516,\n  \"deejay\": 48304,\n  \"deejay</w>\": 44511,\n  \"deemed</w>\": 28102,\n  \"deen\": 26456,\n  \"deen</w>\": 12912,\n  \"deep\": 5462,\n  \"deep</w>\": 3383,\n  \"deepak</w>\": 45528,\n  \"deeper</w>\": 15224,\n  \"deepest</w>\": 22245,\n  \"deephouse</w>\": 35684,\n  \"deepi\": 19371,\n  \"deepika</w>\": 34120,\n  \"deepikap\": 29903,\n  \"deepikapadukone</w>\": 30646,\n  \"deeplear\": 22181,\n  \"deeplearning</w>\": 24362,\n  \"deeply</w>\": 11449,\n  \"deer\": 19454,\n  \"deer</w>\": 8700,\n  \"deere</w>\": 32901,\n  \"dees</w>\": 12547,\n  \"deets</w>\": 35537,\n  \"def\": 2044,\n  \"def</w>\": 11649,\n  \"defam\": 35670,\n  \"defamation</w>\": 42741,\n  \"default</w>\": 21650,\n  \"defe\": 4148,\n  \"defeat</w>\": 8477,\n  \"defeated</w>\": 8927,\n  \"defeating</w>\": 22594,\n  \"defeats</w>\": 16317,\n  \"defect</w>\": 44013,\n  \"defects</w>\": 37485,\n  \"defen\": 3619,\n  \"defence\": 30307,\n  \"defence</w>\": 9659,\n  \"defend\": 21970,\n  \"defend</w>\": 11397,\n  \"defended</w>\": 27161,\n  \"defender</w>\": 10618,\n  \"defenders</w>\": 20063,\n  \"defending</w>\": 13098,\n  \"defends</w>\": 20134,\n  \"defense\": 45875,\n  \"defense</w>\": 6021,\n  \"defenseman</w>\": 43714,\n  \"defenses</w>\": 49198,\n  \"defensive</w>\": 10824,\n  \"defi\": 17244,\n  \"defiance</w>\": 36186,\n  \"defiant</w>\": 47597,\n  \"defibrill\": 47684,\n  \"defic\": 18022,\n  \"defici\": 23387,\n  \"deficiency</w>\": 30685,\n  \"deficit</w>\": 20156,\n  \"defin\": 3188,\n  \"define</w>\": 14919,\n  \"defined</w>\": 15278,\n  \"defines</w>\": 28218,\n  \"defining</w>\": 20504,\n  \"definite</w>\": 40793,\n  \"definitely</w>\": 4824,\n  \"definition</w>\": 11405,\n  \"definitive</w>\": 25298,\n  \"defl\": 31467,\n  \"deforestation</w>\": 41330,\n  \"defstar</w>\": 36427,\n  \"defy</w>\": 39148,\n  \"defying</w>\": 38496,\n  \"deg</w>\": 38498,\n  \"degra\": 28939,\n  \"degradation</w>\": 44468,\n  \"degre\": 4653,\n  \"degree</w>\": 7119,\n  \"degrees</w>\": 8000,\n  \"deh</w>\": 35582,\n  \"dei\": 33833,\n  \"dei</w>\": 23279,\n  \"deir\": 42948,\n  \"deity</w>\": 42574,\n  \"deja</w>\": 46902,\n  \"dek</w>\": 23901,\n  \"dekalb</w>\": 37775,\n  \"del\": 1233,\n  \"del</w>\": 2003,\n  \"dela</w>\": 37986,\n  \"delaney</w>\": 31528,\n  \"delav\": 23706,\n  \"delavin\": 40477,\n  \"delavin</w>\": 40776,\n  \"delavinkisses</w>\": 40631,\n  \"delaware</w>\": 17547,\n  \"delay\": 12955,\n  \"delay</w>\": 10934,\n  \"delayed</w>\": 14567,\n  \"delaying</w>\": 43781,\n  \"delays</w>\": 11232,\n  \"dele\": 7922,\n  \"dele</w>\": 33431,\n  \"delec\": 38615,\n  \"delectable</w>\": 45500,\n  \"deleg\": 8046,\n  \"delegate</w>\": 27259,\n  \"delegates</w>\": 14623,\n  \"delegation</w>\": 14632,\n  \"delete</w>\": 19204,\n  \"deleted</w>\": 16588,\n  \"deleting</w>\": 41857,\n  \"delft</w>\": 42749,\n  \"delgado</w>\": 49182,\n  \"delhi\": 26723,\n  \"delhi</w>\": 5717,\n  \"deli\": 1932,\n  \"deli</w>\": 18601,\n  \"delia</w>\": 33193,\n  \"deliber\": 18316,\n  \"deliberate</w>\": 38271,\n  \"deliberately</w>\": 35163,\n  \"delic\": 13366,\n  \"delicacy</w>\": 49181,\n  \"delicate</w>\": 18768,\n  \"delici\": 19993,\n  \"delicious</w>\": 3959,\n  \"deliciously</w>\": 39589,\n  \"deliciousness</w>\": 42819,\n  \"delight\": 46165,\n  \"delight</w>\": 13073,\n  \"delighted</w>\": 5943,\n  \"delightful</w>\": 15513,\n  \"delights</w>\": 25330,\n  \"deline</w>\": 18797,\n  \"delines</w>\": 13562,\n  \"delish</w>\": 25093,\n  \"deliver\": 19561,\n  \"deliver</w>\": 7396,\n  \"delivered</w>\": 7278,\n  \"deliveries</w>\": 29336,\n  \"delivering</w>\": 9943,\n  \"delivers</w>\": 11753,\n  \"delivery</w>\": 5619,\n  \"dell\": 24381,\n  \"dell</w>\": 10242,\n  \"della</w>\": 22986,\n  \"delle</w>\": 35963,\n  \"deloit\": 29428,\n  \"deloitte</w>\": 38667,\n  \"dels</w>\": 48636,\n  \"delta\": 32250,\n  \"delta</w>\": 8768,\n  \"delu\": 18779,\n  \"delusional</w>\": 48059,\n  \"delux\": 13709,\n  \"deluxe</w>\": 14056,\n  \"delve</w>\": 46008,\n  \"dely</w>\": 15040,\n  \"dem\": 3251,\n  \"dem</w>\": 7825,\n  \"dema\": 40268,\n  \"dema</w>\": 45046,\n  \"deman</w>\": 48366,\n  \"demand\": 13072,\n  \"demand</w>\": 5650,\n  \"demanded</w>\": 33699,\n  \"demanding</w>\": 17099,\n  \"demands</w>\": 14241,\n  \"demar</w>\": 46566,\n  \"demarcus</w>\": 47873,\n  \"demb\": 35930,\n  \"demdebate</w>\": 43973,\n  \"deme\": 25143,\n  \"demean\": 37376,\n  \"demen\": 12604,\n  \"dementi\": 46028,\n  \"dementia</w>\": 14047,\n  \"demetri\": 39553,\n  \"demi\": 32879,\n  \"demi</w>\": 14480,\n  \"demise</w>\": 28756,\n  \"demo\": 2930,\n  \"demo</w>\": 7380,\n  \"democr\": 3573,\n  \"democracy</w>\": 7758,\n  \"democrat</w>\": 15431,\n  \"democratic</w>\": 9149,\n  \"democrats</w>\": 8865,\n  \"demographic</w>\": 31308,\n  \"demol\": 19382,\n  \"demolished</w>\": 26537,\n  \"demolition</w>\": 22237,\n  \"demon\": 5635,\n  \"demon</w>\": 12085,\n  \"demonetisation</w>\": 41338,\n  \"demonic</w>\": 46920,\n  \"demons</w>\": 18388,\n  \"demonstr\": 8579,\n  \"demonstrate</w>\": 22231,\n  \"demonstrated</w>\": 29477,\n  \"demonstrates</w>\": 24806,\n  \"demonstrating</w>\": 22107,\n  \"demonstration</w>\": 16722,\n  \"demonstrations</w>\": 33964,\n  \"demonstrators</w>\": 46450,\n  \"demos</w>\": 19304,\n  \"demp\": 22490,\n  \"dempsey</w>\": 30188,\n  \"dems</w>\": 10989,\n  \"demsin\": 42664,\n  \"demsinphilly</w>\": 43091,\n  \"den\": 1177,\n  \"den</w>\": 1181,\n  \"dena</w>\": 32431,\n  \"denali</w>\": 48076,\n  \"dence</w>\": 3370,\n  \"dency</w>\": 11659,\n  \"dend\": 37447,\n  \"dends</w>\": 43985,\n  \"dene</w>\": 45128,\n  \"dened</w>\": 19571,\n  \"deng\": 43098,\n  \"deng</w>\": 41788,\n  \"dengue</w>\": 41932,\n  \"denham</w>\": 39180,\n  \"deni\": 21995,\n  \"denial</w>\": 25716,\n  \"denied</w>\": 15780,\n  \"denies</w>\": 19565,\n  \"denim</w>\": 13606,\n  \"denis\": 47630,\n  \"denis</w>\": 18750,\n  \"denise\": 45900,\n  \"denise</w>\": 20899,\n  \"denmark</w>\": 13268,\n  \"dennis\": 32738,\n  \"dennis</w>\": 10534,\n  \"denny</w>\": 26808,\n  \"denomin\": 41016,\n  \"dens</w>\": 16533,\n  \"dense</w>\": 19353,\n  \"density</w>\": 22431,\n  \"dent\": 3593,\n  \"dent</w>\": 1258,\n  \"dental\": 24635,\n  \"dental</w>\": 8382,\n  \"dentally</w>\": 10346,\n  \"dented</w>\": 21923,\n  \"denti\": 4418,\n  \"dential</w>\": 5459,\n  \"dentist</w>\": 17816,\n  \"dentistry</w>\": 25754,\n  \"dently</w>\": 28817,\n  \"denton</w>\": 23567,\n  \"dents</w>\": 1517,\n  \"denver\": 27847,\n  \"denver</w>\": 8569,\n  \"deny</w>\": 18679,\n  \"denying</w>\": 32771,\n  \"denzel</w>\": 42503,\n  \"deo\": 26406,\n  \"deo</w>\": 12121,\n  \"deodor\": 47639,\n  \"deol</w>\": 41902,\n  \"deon\": 31466,\n  \"deon</w>\": 16079,\n  \"dep\": 6079,\n  \"dep</w>\": 24370,\n  \"depar\": 10794,\n  \"depart\": 5343,\n  \"depart</w>\": 30649,\n  \"departed</w>\": 32541,\n  \"departing</w>\": 26902,\n  \"department</w>\": 5744,\n  \"departments</w>\": 29523,\n  \"departs</w>\": 38998,\n  \"departure</w>\": 17850,\n  \"depe\": 36118,\n  \"depend\": 13894,\n  \"depend</w>\": 27371,\n  \"dependence</w>\": 40243,\n  \"dependent</w>\": 23280,\n  \"depending</w>\": 23673,\n  \"depends</w>\": 20497,\n  \"depic\": 11307,\n  \"depicted</w>\": 34637,\n  \"depicting</w>\": 24970,\n  \"depiction</w>\": 31071,\n  \"depicts</w>\": 29340,\n  \"deple\": 38504,\n  \"deplo\": 9356,\n  \"deplor\": 39232,\n  \"deploy</w>\": 26944,\n  \"deployed</w>\": 20009,\n  \"deploying</w>\": 42212,\n  \"deployment</w>\": 20183,\n  \"depo\": 14276,\n  \"depor\": 36110,\n  \"deport\": 23389,\n  \"deportation</w>\": 36617,\n  \"deported</w>\": 39320,\n  \"deportes</w>\": 47878,\n  \"depos\": 21266,\n  \"deposit</w>\": 16775,\n  \"deposits</w>\": 30740,\n  \"depot</w>\": 12589,\n  \"depp</w>\": 24941,\n  \"depre\": 7107,\n  \"depress\": 38869,\n  \"depressed</w>\": 23269,\n  \"depressing</w>\": 29235,\n  \"depression</w>\": 10023,\n  \"depri\": 28587,\n  \"depriv\": 45809,\n  \"deprivation</w>\": 47810,\n  \"deprived</w>\": 39140,\n  \"dept</w>\": 9201,\n  \"depth</w>\": 10350,\n  \"depths</w>\": 28855,\n  \"depu\": 6912,\n  \"deputies</w>\": 24914,\n  \"deputy</w>\": 7932,\n  \"der\": 839,\n  \"der</w>\": 801,\n  \"dera</w>\": 20696,\n  \"derail\": 48502,\n  \"derby\": 13904,\n  \"derby</w>\": 7177,\n  \"derbyshire</w>\": 22147,\n  \"derdale</w>\": 21513,\n  \"dere\": 5701,\n  \"dere</w>\": 44194,\n  \"dered</w>\": 3776,\n  \"derek\": 22461,\n  \"derek</w>\": 11205,\n  \"derel\": 46728,\n  \"derer</w>\": 11289,\n  \"derers</w>\": 20882,\n  \"deri\": 34573,\n  \"derick</w>\": 33908,\n  \"dering</w>\": 6076,\n  \"deriv\": 33458,\n  \"derived</w>\": 26461,\n  \"derland</w>\": 35488,\n  \"derman</w>\": 29740,\n  \"dermatology</w>\": 48051,\n  \"dern</w>\": 30086,\n  \"dero\": 37203,\n  \"dero</w>\": 34026,\n  \"derrick</w>\": 21798,\n  \"derry\": 45777,\n  \"derry</w>\": 20535,\n  \"ders\": 37307,\n  \"ders</w>\": 1923,\n  \"derson</w>\": 12677,\n  \"dery</w>\": 17172,\n  \"des\": 6797,\n  \"des</w>\": 1437,\n  \"desai</w>\": 35316,\n  \"desc\": 13866,\n  \"descen\": 32318,\n  \"descend\": 26004,\n  \"descend</w>\": 46241,\n  \"descendants</w>\": 36323,\n  \"descending</w>\": 36620,\n  \"descent</w>\": 19375,\n  \"desch\": 49209,\n  \"descri\": 4637,\n  \"describe</w>\": 10967,\n  \"described</w>\": 14671,\n  \"describes</w>\": 13678,\n  \"describing</w>\": 24239,\n  \"descrip\": 41832,\n  \"description</w>\": 13951,\n  \"descriptions</w>\": 40653,\n  \"desde</w>\": 42218,\n  \"dese\": 27195,\n  \"deser\": 3659,\n  \"desert\": 45776,\n  \"desert</w>\": 7301,\n  \"deserted</w>\": 41560,\n  \"deserve</w>\": 7043,\n  \"deserved</w>\": 10061,\n  \"deserves</w>\": 9079,\n  \"deserving</w>\": 26615,\n  \"desh\": 25320,\n  \"desh</w>\": 7448,\n  \"deshi</w>\": 42769,\n  \"desi\": 6772,\n  \"desi</w>\": 26635,\n  \"desig\": 1250,\n  \"design\": 8359,\n  \"design</w>\": 1681,\n  \"designated</w>\": 24119,\n  \"designation</w>\": 41155,\n  \"designed</w>\": 4486,\n  \"designer\": 35640,\n  \"designer</w>\": 5728,\n  \"designers</w>\": 12720,\n  \"designing</w>\": 13467,\n  \"designs</w>\": 6747,\n  \"designthinking</w>\": 32450,\n  \"desirable</w>\": 32368,\n  \"desire</w>\": 11858,\n  \"desired</w>\": 28631,\n  \"desires</w>\": 27598,\n  \"desk\": 11937,\n  \"desk</w>\": 6550,\n  \"desks</w>\": 41014,\n  \"desktop</w>\": 14345,\n  \"desmond</w>\": 27821,\n  \"desol\": 41258,\n  \"desp\": 3642,\n  \"despair</w>\": 28097,\n  \"desper\": 10144,\n  \"desperate</w>\": 15072,\n  \"desperately</w>\": 21993,\n  \"despic\": 32442,\n  \"despicable</w>\": 37158,\n  \"despite</w>\": 5325,\n  \"dess\": 7096,\n  \"dess</w>\": 10001,\n  \"dessert</w>\": 9753,\n  \"desserts</w>\": 22948,\n  \"desses</w>\": 43913,\n  \"dest\": 6540,\n  \"dest</w>\": 4549,\n  \"destin\": 4934,\n  \"destination\": 32191,\n  \"destination</w>\": 9179,\n  \"destinations</w>\": 16981,\n  \"destined</w>\": 28525,\n  \"destiny\": 39875,\n  \"destiny</w>\": 10867,\n  \"destro\": 8287,\n  \"destroy\": 8308,\n  \"destroy</w>\": 11930,\n  \"destroyed</w>\": 9965,\n  \"destroyer</w>\": 25291,\n  \"destroying</w>\": 19613,\n  \"destroys</w>\": 27634,\n  \"destruc\": 22945,\n  \"destruction</w>\": 14281,\n  \"destructive</w>\": 29591,\n  \"det\": 28966,\n  \"det</w>\": 15366,\n  \"deta\": 1914,\n  \"detached</w>\": 26252,\n  \"detail</w>\": 7657,\n  \"detailed</w>\": 12609,\n  \"detailing</w>\": 23163,\n  \"details</w>\": 2353,\n  \"detained</w>\": 20260,\n  \"dete\": 5606,\n  \"detec\": 17991,\n  \"detect</w>\": 22744,\n  \"detected</w>\": 26988,\n  \"detecting</w>\": 41290,\n  \"detection</w>\": 16220,\n  \"detective</w>\": 13672,\n  \"detectives</w>\": 27994,\n  \"detector</w>\": 27689,\n  \"detectors</w>\": 45063,\n  \"detention</w>\": 16908,\n  \"deter\": 10742,\n  \"deter</w>\": 47458,\n  \"detergent</w>\": 46726,\n  \"deterior\": 28512,\n  \"determin\": 8325,\n  \"determination</w>\": 17410,\n  \"determine</w>\": 16768,\n  \"determined</w>\": 14371,\n  \"determines</w>\": 42192,\n  \"determining</w>\": 39884,\n  \"deth</w>\": 38375,\n  \"deto\": 39710,\n  \"deton\": 39335,\n  \"detour</w>\": 31211,\n  \"detox</w>\": 22459,\n  \"detri\": 47951,\n  \"detro\": 6210,\n  \"detroit\": 19404,\n  \"detroit</w>\": 7073,\n  \"detta</w>\": 45438,\n  \"dette</w>\": 35750,\n  \"deu\": 21457,\n  \"deuce</w>\": 45332,\n  \"deus</w>\": 37625,\n  \"deut\": 14970,\n  \"deutsch\": 30389,\n  \"deutsche</w>\": 32760,\n  \"deutschland</w>\": 36878,\n  \"deux</w>\": 47089,\n  \"dev\": 2797,\n  \"dev</w>\": 3670,\n  \"deva</w>\": 45179,\n  \"devan\": 37072,\n  \"devast\": 12913,\n  \"devastated</w>\": 29865,\n  \"devastating</w>\": 19280,\n  \"devastation</w>\": 42452,\n  \"devel\": 1820,\n  \"develop\": 1966,\n  \"develop</w>\": 7708,\n  \"developed</w>\": 8763,\n  \"developer</w>\": 10929,\n  \"developers</w>\": 13248,\n  \"developing</w>\": 8131,\n  \"development</w>\": 2855,\n  \"developmental</w>\": 29347,\n  \"developments</w>\": 17393,\n  \"develops</w>\": 29895,\n  \"deven\": 45537,\n  \"devgn</w>\": 29871,\n  \"devi\": 12926,\n  \"devi</w>\": 20717,\n  \"deviant\": 25593,\n  \"deviantart</w>\": 26046,\n  \"device</w>\": 8163,\n  \"devices</w>\": 9067,\n  \"devil\": 8894,\n  \"devil</w>\": 8043,\n  \"deville</w>\": 34329,\n  \"devils</w>\": 11683,\n  \"devin\": 31193,\n  \"devin</w>\": 20996,\n  \"devine</w>\": 33019,\n  \"devlin</w>\": 48040,\n  \"devo\": 11861,\n  \"devo</w>\": 43444,\n  \"devon\": 16205,\n  \"devon</w>\": 10046,\n  \"devops</w>\": 21504,\n  \"devos</w>\": 40646,\n  \"devote\": 37777,\n  \"devoted</w>\": 24561,\n  \"devotees</w>\": 39759,\n  \"devotion</w>\": 25821,\n  \"devotional</w>\": 35456,\n  \"devs</w>\": 27374,\n  \"dew\": 31952,\n  \"dew</w>\": 16358,\n  \"dewey</w>\": 40399,\n  \"dex\": 10030,\n  \"dex</w>\": 13790,\n  \"dexpo</w>\": 42502,\n  \"dexter\": 45049,\n  \"dexter</w>\": 22781,\n  \"dey</w>\": 11829,\n  \"dez\": 23190,\n  \"dez</w>\": 8122,\n  \"df\": 12908,\n  \"df</w>\": 10468,\n  \"dfc</w>\": 41903,\n  \"dfs</w>\": 32880,\n  \"dfw</w>\": 20439,\n  \"dg\": 2394,\n  \"dg</w>\": 9742,\n  \"dgate</w>\": 41684,\n  \"dge\": 4016,\n  \"dge</w>\": 1360,\n  \"dged</w>\": 11830,\n  \"dgeon</w>\": 45655,\n  \"dgers</w>\": 8733,\n  \"dges</w>\": 5432,\n  \"dging</w>\": 9565,\n  \"dh\": 6669,\n  \"dh</w>\": 9960,\n  \"dha\": 11629,\n  \"dha</w>\": 27377,\n  \"dhabi</w>\": 22349,\n  \"dhaka</w>\": 32877,\n  \"dham\": 29635,\n  \"dham</w>\": 30838,\n  \"dhan\": 12542,\n  \"dhan</w>\": 28569,\n  \"dhanush\": 26162,\n  \"dhanush</w>\": 36200,\n  \"dhanushkraja</w>\": 29266,\n  \"dhar\": 12397,\n  \"dharma</w>\": 30536,\n  \"dhary</w>\": 28706,\n  \"dhawan</w>\": 44699,\n  \"dhe\": 29706,\n  \"dheim</w>\": 44280,\n  \"dhi\": 31553,\n  \"dhi</w>\": 26166,\n  \"dho\": 37834,\n  \"dhoni</w>\": 25698,\n  \"dhru\": 40257,\n  \"dhry</w>\": 39960,\n  \"dhs</w>\": 26849,\n  \"dhu\": 32387,\n  \"di\": 570,\n  \"di</w>\": 1618,\n  \"dia\": 7351,\n  \"dia</w>\": 3357,\n  \"diab\": 15954,\n  \"diabe\": 19167,\n  \"diabete\": 43826,\n  \"diabetes</w>\": 10319,\n  \"diabetic</w>\": 30230,\n  \"diablo</w>\": 23931,\n  \"diag\": 6851,\n  \"diagno\": 7736,\n  \"diagnose</w>\": 44429,\n  \"diagnosed</w>\": 16979,\n  \"diagnosis</w>\": 15715,\n  \"diagnostic</w>\": 26351,\n  \"diagnostics</w>\": 37723,\n  \"diagram</w>\": 22697,\n  \"dial\": 18416,\n  \"dial</w>\": 11381,\n  \"dialo\": 30709,\n  \"dialog</w>\": 48945,\n  \"dialogue</w>\": 11288,\n  \"dialogues</w>\": 40330,\n  \"dialysis</w>\": 44798,\n  \"diam\": 4347,\n  \"diameter</w>\": 27189,\n  \"diamon\": 8873,\n  \"diamond\": 18535,\n  \"diamond</w>\": 6235,\n  \"diamonds</w>\": 12687,\n  \"dian\": 16021,\n  \"dian</w>\": 4998,\n  \"diana</w>\": 12803,\n  \"diane</w>\": 15855,\n  \"dianne</w>\": 42299,\n  \"dians</w>\": 21041,\n  \"diaper</w>\": 34382,\n  \"diapers</w>\": 39659,\n  \"diar\": 25932,\n  \"diaries</w>\": 15541,\n  \"diary</w>\": 10380,\n  \"dias\": 22137,\n  \"dias</w>\": 29354,\n  \"diaspora</w>\": 28390,\n  \"diaz</w>\": 17688,\n  \"dic\": 1404,\n  \"dic</w>\": 6717,\n  \"dicap\": 30023,\n  \"dicaprio</w>\": 30755,\n  \"dice</w>\": 14406,\n  \"dick\": 14413,\n  \"dick</w>\": 9554,\n  \"dickens</w>\": 33421,\n  \"dict\": 45360,\n  \"dict</w>\": 15159,\n  \"dictat\": 26156,\n  \"dictator</w>\": 27399,\n  \"dictatorship</w>\": 37989,\n  \"dictionary</w>\": 19699,\n  \"did\": 1861,\n  \"did</w>\": 1335,\n  \"diddy</w>\": 33527,\n  \"didi</w>\": 34396,\n  \"didier</w>\": 45614,\n  \"didn</w>\": 2376,\n  \"didnt</w>\": 13057,\n  \"dido</w>\": 31725,\n  \"didyou\": 12295,\n  \"didyouknow</w>\": 12506,\n  \"die\": 3150,\n  \"die</w>\": 2082,\n  \"diec\": 27729,\n  \"diecast</w>\": 37936,\n  \"died</w>\": 3622,\n  \"diego\": 30940,\n  \"diego</w>\": 6306,\n  \"diem</w>\": 45571,\n  \"dience</w>\": 33686,\n  \"dient</w>\": 27231,\n  \"dier\": 29702,\n  \"dier</w>\": 16394,\n  \"dies\": 20104,\n  \"dies</w>\": 1862,\n  \"diesel\": 46312,\n  \"diesel</w>\": 10591,\n  \"diest</w>\": 45739,\n  \"diet\": 21295,\n  \"diet</w>\": 6582,\n  \"dietary</w>\": 29009,\n  \"dietrich</w>\": 47005,\n  \"diets</w>\": 35173,\n  \"dif\": 18656,\n  \"dif</w>\": 48731,\n  \"diff\": 44073,\n  \"diff</w>\": 20331,\n  \"diffe\": 1967,\n  \"differ</w>\": 34620,\n  \"differen\": 14903,\n  \"difference</w>\": 4731,\n  \"differences</w>\": 14003,\n  \"different</w>\": 2731,\n  \"differenti\": 21729,\n  \"differential</w>\": 34027,\n  \"differentiate</w>\": 49032,\n  \"differently</w>\": 18325,\n  \"diffic\": 6140,\n  \"difficult</w>\": 7405,\n  \"difficulties</w>\": 23468,\n  \"difficulty</w>\": 25245,\n  \"diffu\": 31603,\n  \"diffuser</w>\": 49400,\n  \"dig\": 1831,\n  \"dig</w>\": 9887,\n  \"dige\": 17820,\n  \"digest</w>\": 20413,\n  \"digestion</w>\": 40533,\n  \"digestive</w>\": 32304,\n  \"digg\": 43240,\n  \"digger</w>\": 35919,\n  \"diggin</w>\": 48466,\n  \"digging</w>\": 14971,\n  \"digi\": 15627,\n  \"digi</w>\": 39361,\n  \"digimon</w>\": 44181,\n  \"digit\": 14899,\n  \"digit</w>\": 27472,\n  \"digital\": 4704,\n  \"digital</w>\": 2794,\n  \"digitalart</w>\": 16987,\n  \"digitalhealth</w>\": 32190,\n  \"digitalindia</w>\": 46630,\n  \"digitally</w>\": 27543,\n  \"digitalmarketing</w>\": 15299,\n  \"digitaltransformation</w>\": 20047,\n  \"digiti\": 25935,\n  \"digits</w>\": 31710,\n  \"digni\": 45532,\n  \"dignit\": 39497,\n  \"dignity</w>\": 17744,\n  \"digo</w>\": 35701,\n  \"digs</w>\": 26877,\n  \"dih</w>\": 43089,\n  \"dii</w>\": 32755,\n  \"dijk</w>\": 44444,\n  \"dik\": 38854,\n  \"dik</w>\": 37747,\n  \"dike</w>\": 42683,\n  \"dil\": 7643,\n  \"dil</w>\": 17942,\n  \"dile\": 25428,\n  \"dilemma</w>\": 29787,\n  \"dilig\": 30664,\n  \"dill\": 12318,\n  \"dill</w>\": 27206,\n  \"dillon</w>\": 21056,\n  \"dilu\": 45242,\n  \"dim\": 19576,\n  \"dim</w>\": 17523,\n  \"dime</w>\": 24443,\n  \"dimen\": 10935,\n  \"dimension</w>\": 20479,\n  \"dimensional</w>\": 25252,\n  \"dimensions</w>\": 25086,\n  \"diment</w>\": 43500,\n  \"dimes</w>\": 44888,\n  \"dimini\": 37459,\n  \"dimit\": 22250,\n  \"dimitri</w>\": 48840,\n  \"dimp\": 38853,\n  \"din\": 1462,\n  \"din</w>\": 5673,\n  \"dina</w>\": 36815,\n  \"dinah</w>\": 30903,\n  \"dine\": 20951,\n  \"dine</w>\": 12989,\n  \"diner</w>\": 16963,\n  \"dinesh</w>\": 48341,\n  \"ding\": 7545,\n  \"ding</w>\": 796,\n  \"dinger</w>\": 45580,\n  \"dingh\": 48064,\n  \"dings</w>\": 5473,\n  \"dington</w>\": 24804,\n  \"dinho</w>\": 47370,\n  \"dini</w>\": 20196,\n  \"dining</w>\": 8658,\n  \"dinner\": 27548,\n  \"dinner</w>\": 2571,\n  \"dinners</w>\": 33570,\n  \"dino\": 9692,\n  \"dino</w>\": 14077,\n  \"dinosa\": 18955,\n  \"dinosaur</w>\": 15095,\n  \"dinosaurs</w>\": 20387,\n  \"dio\": 3779,\n  \"dio</w>\": 1521,\n  \"dioce\": 20763,\n  \"diocese</w>\": 27091,\n  \"dion\": 42899,\n  \"dion</w>\": 16250,\n  \"dior</w>\": 23655,\n  \"dios</w>\": 37563,\n  \"dious</w>\": 27417,\n  \"dioxide</w>\": 38102,\n  \"dip\": 19918,\n  \"dip</w>\": 11343,\n  \"dipl\": 8490,\n  \"diplo</w>\": 38115,\n  \"diplom\": 11169,\n  \"diploma</w>\": 21251,\n  \"diplomacy</w>\": 23798,\n  \"diplomat</w>\": 32828,\n  \"diplomatic</w>\": 23782,\n  \"diplomats</w>\": 44126,\n  \"dipped</w>\": 30610,\n  \"dipper</w>\": 49317,\n  \"dipping</w>\": 33544,\n  \"dips</w>\": 37522,\n  \"dir\": 4251,\n  \"dir</w>\": 8478,\n  \"dire\": 38355,\n  \"dire</w>\": 25664,\n  \"direc\": 1534,\n  \"direct\": 43224,\n  \"direct</w>\": 6016,\n  \"directed</w>\": 8392,\n  \"directing</w>\": 21817,\n  \"direction\": 15923,\n  \"direction</w>\": 5407,\n  \"directional</w>\": 38687,\n  \"directioner</w>\": 48042,\n  \"directioners</w>\": 22055,\n  \"directions</w>\": 16440,\n  \"directive</w>\": 40630,\n  \"directly</w>\": 9701,\n  \"director\": 20337,\n  \"director</w>\": 2681,\n  \"directorial</w>\": 45327,\n  \"directors</w>\": 11940,\n  \"directory</w>\": 25272,\n  \"directs</w>\": 34349,\n  \"directv</w>\": 48652,\n  \"dirk</w>\": 28171,\n  \"dirt\": 31415,\n  \"dirt</w>\": 11795,\n  \"dirty\": 20127,\n  \"dirty</w>\": 7615,\n  \"dis\": 1518,\n  \"dis</w>\": 6112,\n  \"disa\": 3882,\n  \"disab\": 47380,\n  \"disabilities</w>\": 17350,\n  \"disability\": 48986,\n  \"disability</w>\": 13261,\n  \"disabled</w>\": 13613,\n  \"disadvantaged</w>\": 40577,\n  \"disagree</w>\": 23199,\n  \"disapp\": 5384,\n  \"disappear\": 21148,\n  \"disappear</w>\": 25173,\n  \"disappearance</w>\": 35929,\n  \"disappeared</w>\": 23139,\n  \"disappearing</w>\": 35819,\n  \"disappears</w>\": 44406,\n  \"disappo\": 7605,\n  \"disappoint</w>\": 25446,\n  \"disappointed</w>\": 13794,\n  \"disappointing</w>\": 21941,\n  \"disappointment</w>\": 23884,\n  \"disappoints</w>\": 48545,\n  \"disappro\": 48276,\n  \"disar\": 42971,\n  \"disaster</w>\": 9072,\n  \"disasters</w>\": 26976,\n  \"disastrous</w>\": 35790,\n  \"disc\": 1472,\n  \"disc</w>\": 10712,\n  \"discar\": 40532,\n  \"discarded</w>\": 45197,\n  \"discer\": 49140,\n  \"dischar\": 22671,\n  \"discharge</w>\": 32485,\n  \"disci\": 9559,\n  \"discip\": 38951,\n  \"discipl\": 10467,\n  \"disciples</w>\": 39366,\n  \"disciplinary</w>\": 20232,\n  \"discipline</w>\": 18903,\n  \"disciplines</w>\": 42032,\n  \"discla\": 40248,\n  \"disclaimer</w>\": 46465,\n  \"disclo\": 17481,\n  \"disclose</w>\": 46379,\n  \"disclosed</w>\": 30905,\n  \"disclosure</w>\": 26502,\n  \"disco\": 2475,\n  \"disco</w>\": 11964,\n  \"discography</w>\": 47545,\n  \"discomfort</w>\": 48054,\n  \"discord</w>\": 23582,\n  \"discoun\": 18515,\n  \"discount</w>\": 7638,\n  \"discounted</w>\": 20993,\n  \"discounts</w>\": 18186,\n  \"discoura\": 45850,\n  \"discourse</w>\": 29441,\n  \"discover\": 10539,\n  \"discover</w>\": 4834,\n  \"discovered</w>\": 6986,\n  \"discoveries</w>\": 29308,\n  \"discovering</w>\": 17967,\n  \"discovers</w>\": 29719,\n  \"discovery\": 40491,\n  \"discovery</w>\": 8027,\n  \"discre\": 20616,\n  \"discrimin\": 11721,\n  \"discrimination</w>\": 14775,\n  \"discs</w>\": 29270,\n  \"discu\": 1984,\n  \"discus</w>\": 41828,\n  \"discuss</w>\": 4312,\n  \"discussed</w>\": 11300,\n  \"discusses</w>\": 8116,\n  \"discussing</w>\": 5900,\n  \"discussion</w>\": 5060,\n  \"discussions</w>\": 13806,\n  \"dise\": 4262,\n  \"disease</w>\": 5336,\n  \"diseases</w>\": 12035,\n  \"disen\": 46468,\n  \"disgrace</w>\": 29877,\n  \"disgraceful</w>\": 44146,\n  \"disgu\": 9793,\n  \"disguise</w>\": 27803,\n  \"disguised</w>\": 37149,\n  \"disgusted</w>\": 41977,\n  \"disgusting</w>\": 16218,\n  \"dish\": 11039,\n  \"dish</w>\": 4531,\n  \"disha</w>\": 42498,\n  \"dishes</w>\": 11412,\n  \"dishon\": 30777,\n  \"dishu</w>\": 44728,\n  \"dishwasher</w>\": 40524,\n  \"disin\": 19484,\n  \"disinfe\": 48050,\n  \"disintegr\": 49275,\n  \"disk</w>\": 17970,\n  \"dislike</w>\": 30796,\n  \"dism\": 30836,\n  \"dism</w>\": 38821,\n  \"dismant\": 36557,\n  \"dismiss</w>\": 43287,\n  \"dismissal</w>\": 42068,\n  \"dismissed</w>\": 30087,\n  \"dismisses</w>\": 45238,\n  \"disney\": 6729,\n  \"disney</w>\": 4696,\n  \"disneyland\": 39481,\n  \"disneyland</w>\": 13661,\n  \"disneyworld</w>\": 28469,\n  \"diso\": 26305,\n  \"disobe\": 42841,\n  \"dison</w>\": 19310,\n  \"disorder</w>\": 12635,\n  \"disorders</w>\": 17114,\n  \"disp\": 11073,\n  \"dispar\": 24633,\n  \"disparities</w>\": 45122,\n  \"dispat\": 28652,\n  \"dispatch</w>\": 26306,\n  \"dispen\": 19077,\n  \"dispenser</w>\": 40116,\n  \"disper\": 34499,\n  \"displa\": 9326,\n  \"displac\": 17718,\n  \"displaced</w>\": 22817,\n  \"displacement</w>\": 37931,\n  \"display</w>\": 4456,\n  \"displayed</w>\": 18967,\n  \"displaying</w>\": 26468,\n  \"displays</w>\": 15648,\n  \"dispo\": 13651,\n  \"dispon\": 38872,\n  \"disponible</w>\": 46130,\n  \"dispos\": 45177,\n  \"disposable</w>\": 37275,\n  \"disposal</w>\": 28231,\n  \"dispro\": 32927,\n  \"dispropor\": 40354,\n  \"disproportion\": 45492,\n  \"disregard</w>\": 43869,\n  \"disrespect</w>\": 34055,\n  \"disrespectful</w>\": 41723,\n  \"disru\": 13763,\n  \"disrup\": 14641,\n  \"disrupt</w>\": 25214,\n  \"disrupted</w>\": 46674,\n  \"disrupting</w>\": 42419,\n  \"disruption</w>\": 19635,\n  \"disruptive</w>\": 31554,\n  \"diss\": 10766,\n  \"diss</w>\": 35688,\n  \"dissec\": 43879,\n  \"dissemin\": 40463,\n  \"dissent</w>\": 45154,\n  \"disser\": 25560,\n  \"dissertation</w>\": 29448,\n  \"dissi\": 25088,\n  \"dissol\": 27398,\n  \"dissuper</w>\": 33461,\n  \"dist\": 5479,\n  \"dist</w>\": 12116,\n  \"distance</w>\": 7964,\n  \"distances</w>\": 37078,\n  \"distant</w>\": 18949,\n  \"distill\": 41586,\n  \"distilled</w>\": 49179,\n  \"distillery</w>\": 22200,\n  \"distin\": 11892,\n  \"distinct</w>\": 25056,\n  \"distinction</w>\": 28183,\n  \"distinctive</w>\": 25486,\n  \"distingui\": 15053,\n  \"distinguish</w>\": 45418,\n  \"distinguished</w>\": 16513,\n  \"distor\": 23781,\n  \"distortion</w>\": 43690,\n  \"distr\": 11885,\n  \"distract</w>\": 39309,\n  \"distracted</w>\": 24049,\n  \"distraction</w>\": 32039,\n  \"distress</w>\": 26866,\n  \"distressed</w>\": 37515,\n  \"distri\": 5987,\n  \"distribu\": 6138,\n  \"distribute</w>\": 32313,\n  \"distributed</w>\": 16419,\n  \"distributing</w>\": 35216,\n  \"distribution</w>\": 10484,\n  \"distributor</w>\": 28354,\n  \"distributors</w>\": 44240,\n  \"distric\": 3208,\n  \"district\": 46683,\n  \"district</w>\": 3506,\n  \"districts</w>\": 17565,\n  \"distur\": 11732,\n  \"disturb\": 33018,\n  \"disturb</w>\": 39449,\n  \"disturbance</w>\": 42416,\n  \"disturbed</w>\": 29967,\n  \"disturbing</w>\": 21476,\n  \"disupdates</w>\": 45667,\n  \"dit\": 5752,\n  \"dit</w>\": 2524,\n  \"dita</w>\": 47965,\n  \"ditch\": 43715,\n  \"ditch</w>\": 19291,\n  \"dited</w>\": 40392,\n  \"diti\": 2363,\n  \"dition\": 16452,\n  \"dition</w>\": 3015,\n  \"ditional</w>\": 4322,\n  \"ditions</w>\": 4503,\n  \"dito</w>\": 43705,\n  \"dits</w>\": 49374,\n  \"dity</w>\": 16436,\n  \"dium</w>\": 2903,\n  \"div\": 5293,\n  \"div</w>\": 14869,\n  \"diva</w>\": 13605,\n  \"divas</w>\": 23534,\n  \"dive\": 26042,\n  \"dive</w>\": 9058,\n  \"diver\": 13119,\n  \"diver</w>\": 22094,\n  \"divergence</w>\": 48735,\n  \"divergent</w>\": 36132,\n  \"divers\": 30241,\n  \"divers</w>\": 27038,\n  \"diverse</w>\": 11464,\n  \"diversi\": 24475,\n  \"diversion</w>\": 38457,\n  \"diversity\": 35634,\n  \"diversity</w>\": 6257,\n  \"diverted</w>\": 41049,\n  \"dives</w>\": 13893,\n  \"divi\": 8375,\n  \"divid\": 31337,\n  \"divide</w>\": 18842,\n  \"divided</w>\": 18689,\n  \"dividend</w>\": 32067,\n  \"dividends</w>\": 45146,\n  \"dividing</w>\": 45605,\n  \"divin\": 21838,\n  \"divine\": 46919,\n  \"divine</w>\": 10976,\n  \"diving</w>\": 9886,\n  \"divinity</w>\": 39754,\n  \"divisi\": 39196,\n  \"division</w>\": 5378,\n  \"divisional</w>\": 40912,\n  \"divisions</w>\": 33715,\n  \"divor\": 13543,\n  \"divorce</w>\": 17060,\n  \"divorced</w>\": 39437,\n  \"divya</w>\": 47767,\n  \"diwali</w>\": 18218,\n  \"dix\": 45838,\n  \"dix</w>\": 27620,\n  \"dixie</w>\": 24484,\n  \"dixit</w>\": 28279,\n  \"dixon</w>\": 16086,\n  \"diy\": 28472,\n  \"diy</w>\": 7845,\n  \"diya</w>\": 36459,\n  \"diz</w>\": 32740,\n  \"dized</w>\": 36232,\n  \"dizz\": 40239,\n  \"dizzy</w>\": 35464,\n  \"dj\": 3761,\n  \"dj</w>\": 3723,\n  \"djan\": 35338,\n  \"django</w>\": 46498,\n  \"dji\": 35284,\n  \"dji</w>\": 28379,\n  \"djing</w>\": 36113,\n  \"djo\": 19432,\n  \"djoker\": 42721,\n  \"djokernole</w>\": 42830,\n  \"djokovic</w>\": 27944,\n  \"djs</w>\": 18117,\n  \"dk\": 20702,\n  \"dk</w>\": 16196,\n  \"dl\": 12558,\n  \"dl</w>\": 9373,\n  \"dlc</w>\": 19079,\n  \"dle\": 11057,\n  \"dle</w>\": 3287,\n  \"dled</w>\": 23494,\n  \"dler</w>\": 40279,\n  \"dles</w>\": 7890,\n  \"dless</w>\": 14997,\n  \"dley</w>\": 12808,\n  \"dling</w>\": 18221,\n  \"dly</w>\": 3069,\n  \"dm\": 19070,\n  \"dm</w>\": 4667,\n  \"dma</w>\": 42903,\n  \"dman</w>\": 18826,\n  \"dmc</w>\": 28991,\n  \"dmit\": 31607,\n  \"dmitry</w>\": 48326,\n  \"dms</w>\": 19955,\n  \"dmv</w>\": 27508,\n  \"dmx</w>\": 45255,\n  \"dn\": 11552,\n  \"dn</w>\": 7459,\n  \"dna</w>\": 8790,\n  \"dnb</w>\": 35422,\n  \"dnc</w>\": 20237,\n  \"dnd</w>\": 11678,\n  \"dnr</w>\": 37051,\n  \"dns</w>\": 39245,\n  \"dnt</w>\": 26795,\n  \"do\": 639,\n  \"do</w>\": 818,\n  \"doa</w>\": 48332,\n  \"dob\": 29640,\n  \"doba</w>\": 35605,\n  \"dobbs</w>\": 43006,\n  \"dobson</w>\": 46888,\n  \"doc\": 3009,\n  \"doc</w>\": 7251,\n  \"doch</w>\": 25101,\n  \"dock\": 17311,\n  \"dock</w>\": 8997,\n  \"docked</w>\": 46784,\n  \"docker</w>\": 31152,\n  \"docking</w>\": 40845,\n  \"docks</w>\": 24091,\n  \"docs</w>\": 15157,\n  \"doctor\": 7872,\n  \"doctor</w>\": 5547,\n  \"doctoral</w>\": 23649,\n  \"doctorate</w>\": 39134,\n  \"doctors</w>\": 9705,\n  \"doctorwho</w>\": 12996,\n  \"doctr\": 28497,\n  \"doctrine</w>\": 35612,\n  \"docu\": 4433,\n  \"document\": 29293,\n  \"document</w>\": 15121,\n  \"documentaries</w>\": 44209,\n  \"documentary</w>\": 7881,\n  \"documentation</w>\": 31560,\n  \"documented</w>\": 22310,\n  \"documenting</w>\": 37876,\n  \"documents</w>\": 14105,\n  \"dod\": 13847,\n  \"dod</w>\": 30187,\n  \"dodd</w>\": 36748,\n  \"dodge\": 31263,\n  \"dodge</w>\": 12093,\n  \"dodgeball</w>\": 43244,\n  \"dodger</w>\": 31641,\n  \"dodgers</w>\": 12422,\n  \"dodgy</w>\": 37727,\n  \"doe</w>\": 13296,\n  \"does\": 2397,\n  \"does</w>\": 1897,\n  \"doesn</w>\": 2503,\n  \"doesnt</w>\": 17937,\n  \"dof\": 8277,\n  \"doff</w>\": 20193,\n  \"dofficial</w>\": 42516,\n  \"dog\": 4326,\n  \"dog</w>\": 1929,\n  \"dogcelebration</w>\": 41819,\n  \"dogday</w>\": 27475,\n  \"doge</w>\": 42187,\n  \"dogg</w>\": 20749,\n  \"doggie</w>\": 32237,\n  \"doggo</w>\": 42155,\n  \"doggy</w>\": 26359,\n  \"doglo\": 40733,\n  \"dogre\": 40030,\n  \"dogrescue</w>\": 44158,\n  \"dogs\": 42182,\n  \"dogs</w>\": 3255,\n  \"dogsoftwitter</w>\": 19415,\n  \"doh</w>\": 23581,\n  \"doha</w>\": 20908,\n  \"doherty</w>\": 31774,\n  \"doi</w>\": 36361,\n  \"doin</w>\": 15412,\n  \"doing\": 37408,\n  \"doing</w>\": 1960,\n  \"doit\": 32272,\n  \"doit</w>\": 28109,\n  \"doj</w>\": 25700,\n  \"dojo</w>\": 35901,\n  \"dok\": 40547,\n  \"dok</w>\": 41034,\n  \"doka</w>\": 46528,\n  \"dol\": 2287,\n  \"dol</w>\": 19170,\n  \"dola</w>\": 38005,\n  \"dolan</w>\": 27200,\n  \"dolby</w>\": 42414,\n  \"dolce\": 30033,\n  \"dolce</w>\": 30661,\n  \"dole</w>\": 41040,\n  \"doll\": 27031,\n  \"doll</w>\": 9286,\n  \"dollar\": 35092,\n  \"dollar</w>\": 7474,\n  \"dollars</w>\": 10669,\n  \"dolls</w>\": 15090,\n  \"dolly\": 43281,\n  \"dolly</w>\": 23821,\n  \"dolom\": 37137,\n  \"dolores</w>\": 40741,\n  \"dolph\": 8900,\n  \"dolph</w>\": 22257,\n  \"dolphin\": 42963,\n  \"dolphin</w>\": 16464,\n  \"dolphins</w>\": 14002,\n  \"dom\": 2164,\n  \"dom</w>\": 1919,\n  \"domain</w>\": 15492,\n  \"domaine</w>\": 48744,\n  \"domains</w>\": 36358,\n  \"dome\": 8515,\n  \"dome</w>\": 9827,\n  \"domen\": 37584,\n  \"domest\": 21936,\n  \"domestic\": 28189,\n  \"domestic</w>\": 9043,\n  \"domin\": 4361,\n  \"dominance</w>\": 30546,\n  \"dominant</w>\": 20565,\n  \"dominate</w>\": 21431,\n  \"dominated</w>\": 23048,\n  \"dominates</w>\": 34043,\n  \"dominating</w>\": 29303,\n  \"domination</w>\": 30919,\n  \"domingo</w>\": 24882,\n  \"dominic\": 39007,\n  \"dominic</w>\": 19095,\n  \"dominican</w>\": 22934,\n  \"dominion</w>\": 27155,\n  \"domino</w>\": 30752,\n  \"dominos</w>\": 39770,\n  \"domo</w>\": 44293,\n  \"doms</w>\": 30126,\n  \"don\": 1067,\n  \"don</w>\": 847,\n  \"dona</w>\": 26789,\n  \"donal\": 42375,\n  \"donald\": 5990,\n  \"donald</w>\": 4335,\n  \"donaldson</w>\": 37783,\n  \"donaldtrump</w>\": 6652,\n  \"donat\": 36384,\n  \"donate</w>\": 6429,\n  \"donated</w>\": 8705,\n  \"donates</w>\": 26960,\n  \"donating</w>\": 12621,\n  \"donation</w>\": 7924,\n  \"donations</w>\": 9928,\n  \"doncaster\": 38008,\n  \"doncaster</w>\": 25352,\n  \"doncasterisgreat</w>\": 47333,\n  \"done\": 5136,\n  \"done</w>\": 1700,\n  \"donegal</w>\": 24172,\n  \"donesia</w>\": 41281,\n  \"donet\": 33724,\n  \"donetsk</w>\": 33999,\n  \"dong\": 26242,\n  \"dong</w>\": 31478,\n  \"dongha\": 28365,\n  \"donghae</w>\": 28945,\n  \"donia</w>\": 24014,\n  \"donkey</w>\": 21415,\n  \"donkeys</w>\": 44644,\n  \"donna</w>\": 9158,\n  \"donne\": 30897,\n  \"donnein\": 38308,\n  \"donneinarte</w>\": 40193,\n  \"donnell</w>\": 35118,\n  \"donnelly</w>\": 39070,\n  \"donnie\": 47058,\n  \"donnie</w>\": 30609,\n  \"donny\": 37291,\n  \"donny</w>\": 32887,\n  \"dono\": 14840,\n  \"donor</w>\": 18013,\n  \"donors</w>\": 17887,\n  \"donovan</w>\": 21499,\n  \"dons</w>\": 22127,\n  \"dont\": 8094,\n  \"dont</w>\": 4632,\n  \"donut</w>\": 18471,\n  \"donuts</w>\": 13970,\n  \"doo\": 4543,\n  \"doo</w>\": 11643,\n  \"doodle</w>\": 9388,\n  \"doodled</w>\": 41030,\n  \"doodles</w>\": 22156,\n  \"doodling</w>\": 37548,\n  \"dooley</w>\": 47609,\n  \"doom\": 23263,\n  \"doom</w>\": 14344,\n  \"doomed</w>\": 33251,\n  \"doomsday</w>\": 41791,\n  \"doon</w>\": 36612,\n  \"doop</w>\": 33886,\n  \"door\": 7188,\n  \"door</w>\": 2489,\n  \"doors</w>\": 4228,\n  \"doorstep</w>\": 19533,\n  \"doorway</w>\": 46575,\n  \"dop\": 42381,\n  \"dop</w>\": 31722,\n  \"dope\": 42587,\n  \"dope</w>\": 10094,\n  \"doping</w>\": 30285,\n  \"dopp\": 21774,\n  \"doppelg\": 45216,\n  \"doppler</w>\": 42540,\n  \"dor\": 2766,\n  \"dor</w>\": 8695,\n  \"dora</w>\": 18104,\n  \"dorado</w>\": 32350,\n  \"dorchester</w>\": 32656,\n  \"dore</w>\": 39423,\n  \"dores</w>\": 34323,\n  \"dorf</w>\": 17296,\n  \"dori</w>\": 49270,\n  \"doria</w>\": 43186,\n  \"dorian</w>\": 44016,\n  \"doris</w>\": 24285,\n  \"dork</w>\": 36206,\n  \"dorm</w>\": 24263,\n  \"doro\": 15498,\n  \"doro</w>\": 37389,\n  \"dorothy</w>\": 20805,\n  \"dors</w>\": 31240,\n  \"dorset\": 42109,\n  \"dorset</w>\": 16047,\n  \"dorsey</w>\": 41607,\n  \"dortmund</w>\": 24290,\n  \"dory</w>\": 36135,\n  \"dos\": 44258,\n  \"dos</w>\": 5474,\n  \"dose</w>\": 11497,\n  \"doses</w>\": 37873,\n  \"dossier</w>\": 46042,\n  \"dost</w>\": 44222,\n  \"dot\": 7473,\n  \"dot</w>\": 7004,\n  \"dota</w>\": 23085,\n  \"dotcom</w>\": 12443,\n  \"dote</w>\": 31202,\n  \"dothis</w>\": 47864,\n  \"dotnet</w>\": 43124,\n  \"dotorg</w>\": 46587,\n  \"dots</w>\": 19019,\n  \"dotted</w>\": 47950,\n  \"dou\": 1756,\n  \"dou</w>\": 23608,\n  \"doub\": 19631,\n  \"double\": 13013,\n  \"double</w>\": 3200,\n  \"doubled</w>\": 24948,\n  \"doubleheader</w>\": 34668,\n  \"doubles</w>\": 12539,\n  \"doubling</w>\": 36850,\n  \"doubt\": 37071,\n  \"doubt</w>\": 8671,\n  \"doubts</w>\": 30894,\n  \"douche</w>\": 44292,\n  \"doug\": 20271,\n  \"doug</w>\": 10758,\n  \"dough\": 15785,\n  \"dough</w>\": 14983,\n  \"doughnut</w>\": 32555,\n  \"doughnuts</w>\": 31124,\n  \"dougie</w>\": 46317,\n  \"dougla\": 9140,\n  \"douglas</w>\": 10065,\n  \"douglass</w>\": 45692,\n  \"doun</w>\": 44785,\n  \"dov</w>\": 38856,\n  \"dova</w>\": 26551,\n  \"dove\": 27511,\n  \"dove</w>\": 18281,\n  \"dover\": 43019,\n  \"dover</w>\": 14683,\n  \"doves</w>\": 47067,\n  \"dow\": 8022,\n  \"dow</w>\": 10688,\n  \"dowell</w>\": 27344,\n  \"down\": 1833,\n  \"down</w>\": 1136,\n  \"downe</w>\": 46501,\n  \"downed</w>\": 35814,\n  \"downer</w>\": 42522,\n  \"downers</w>\": 43739,\n  \"downey</w>\": 29429,\n  \"downfall</w>\": 48702,\n  \"downhill</w>\": 27387,\n  \"downing</w>\": 28140,\n  \"download\": 35076,\n  \"download</w>\": 3794,\n  \"downloadable</w>\": 49105,\n  \"downloaded</w>\": 22961,\n  \"downloading</w>\": 30519,\n  \"downloads</w>\": 26481,\n  \"downpour</w>\": 39034,\n  \"downpours</w>\": 40160,\n  \"downs</w>\": 10706,\n  \"downside</w>\": 41937,\n  \"downstairs</w>\": 28174,\n  \"downstream</w>\": 43822,\n  \"downtime</w>\": 41964,\n  \"downton\": 45023,\n  \"downton</w>\": 42668,\n  \"downtown\": 18230,\n  \"downtown</w>\": 5061,\n  \"downward</w>\": 37430,\n  \"dowski</w>\": 43556,\n  \"dox\": 44786,\n  \"dox</w>\": 14510,\n  \"doyle</w>\": 17728,\n  \"doyou\": 27256,\n  \"doz</w>\": 31106,\n  \"dozen</w>\": 16401,\n  \"dozens</w>\": 17883,\n  \"dp\": 23820,\n  \"dp</w>\": 6465,\n  \"dprint</w>\": 46644,\n  \"dprinting</w>\": 16194,\n  \"dprk</w>\": 47920,\n  \"dps</w>\": 34288,\n  \"dq</w>\": 28741,\n  \"dr\": 1084,\n  \"dr</w>\": 1701,\n  \"dra\": 1114,\n  \"dra</w>\": 7402,\n  \"drac\": 20168,\n  \"dracing</w>\": 41253,\n  \"dracula</w>\": 25405,\n  \"draf\": 37426,\n  \"draft\": 30624,\n  \"draft</w>\": 5198,\n  \"drafted</w>\": 19129,\n  \"drafting</w>\": 33528,\n  \"drafts</w>\": 29194,\n  \"drag\": 8452,\n  \"drag</w>\": 12463,\n  \"dragged</w>\": 27884,\n  \"dragging</w>\": 37069,\n  \"dragon\": 9187,\n  \"dragon</w>\": 5471,\n  \"dragonball\": 40959,\n  \"dragoncon</w>\": 47802,\n  \"dragonfly</w>\": 32824,\n  \"dragons</w>\": 10203,\n  \"dragrace</w>\": 40762,\n  \"drags</w>\": 45368,\n  \"drain\": 23347,\n  \"drain</w>\": 19467,\n  \"drainage</w>\": 25953,\n  \"drained</w>\": 44630,\n  \"drains</w>\": 43638,\n  \"drainthe\": 47337,\n  \"drake\": 32504,\n  \"drake</w>\": 8958,\n  \"dral</w>\": 7503,\n  \"dram\": 6937,\n  \"dram</w>\": 32170,\n  \"drama</w>\": 5055,\n  \"dramas</w>\": 33467,\n  \"dramati\": 43512,\n  \"dramatic</w>\": 11240,\n  \"dramatically</w>\": 24495,\n  \"drank</w>\": 21712,\n  \"draped</w>\": 49113,\n  \"drastic</w>\": 43159,\n  \"drastically</w>\": 35478,\n  \"drau\": 18621,\n  \"draw\": 17675,\n  \"draw</w>\": 4001,\n  \"drawer</w>\": 23219,\n  \"drawers</w>\": 38975,\n  \"drawing\": 36996,\n  \"drawing</w>\": 3610,\n  \"drawings</w>\": 13397,\n  \"drawn</w>\": 8893,\n  \"draws</w>\": 12043,\n  \"dray\": 25562,\n  \"drayton</w>\": 49044,\n  \"drc</w>\": 21434,\n  \"dre\": 960,\n  \"dre</w>\": 14584,\n  \"dread\": 17412,\n  \"dread</w>\": 31403,\n  \"dreaded</w>\": 47227,\n  \"dreadful</w>\": 35846,\n  \"dreality</w>\": 48367,\n  \"dream\": 4595,\n  \"dream</w>\": 2984,\n  \"dreambig</w>\": 46495,\n  \"dreamcast</w>\": 47226,\n  \"dreamed</w>\": 27984,\n  \"dreamer</w>\": 25692,\n  \"dreamers</w>\": 27194,\n  \"dreaming</w>\": 11662,\n  \"dreamliner</w>\": 49143,\n  \"dreams</w>\": 4405,\n  \"dreamt</w>\": 43743,\n  \"dreamteam</w>\": 40090,\n  \"dreamy</w>\": 23517,\n  \"dred</w>\": 10903,\n  \"dredge</w>\": 48783,\n  \"dren\": 29068,\n  \"dren</w>\": 47309,\n  \"drenched</w>\": 46378,\n  \"dres\": 48852,\n  \"dres</w>\": 44697,\n  \"dresden</w>\": 34836,\n  \"dress\": 12622,\n  \"dress</w>\": 2595,\n  \"dressage</w>\": 36144,\n  \"dressed</w>\": 6559,\n  \"dresser</w>\": 26346,\n  \"dresses</w>\": 8184,\n  \"dressing</w>\": 6348,\n  \"drew\": 18792,\n  \"drew</w>\": 5281,\n  \"drex\": 33985,\n  \"drey\": 48271,\n  \"dri\": 1203,\n  \"dri</w>\": 28833,\n  \"drian</w>\": 36870,\n  \"dribb\": 42153,\n  \"dric</w>\": 23448,\n  \"dridge</w>\": 22956,\n  \"drie</w>\": 40170,\n  \"dried</w>\": 16037,\n  \"drier</w>\": 39877,\n  \"dries</w>\": 33857,\n  \"drif\": 33585,\n  \"drift</w>\": 18194,\n  \"drifting</w>\": 30276,\n  \"drill</w>\": 11626,\n  \"drilled</w>\": 46338,\n  \"drilling</w>\": 18634,\n  \"drills</w>\": 24378,\n  \"drin\": 3375,\n  \"drin</w>\": 47133,\n  \"drink\": 14131,\n  \"drink</w>\": 3979,\n  \"drinking</w>\": 5778,\n  \"drinklocal</w>\": 45998,\n  \"drinks</w>\": 6732,\n  \"drip</w>\": 24050,\n  \"dripping</w>\": 38787,\n  \"dris</w>\": 35804,\n  \"drive\": 11402,\n  \"drive</w>\": 2620,\n  \"driven</w>\": 9314,\n  \"driver\": 27563,\n  \"driver</w>\": 4383,\n  \"driverless</w>\": 46769,\n  \"drivers</w>\": 7384,\n  \"drives</w>\": 11441,\n  \"driveway</w>\": 26273,\n  \"driving\": 37800,\n  \"driving</w>\": 4161,\n  \"drizzle</w>\": 28240,\n  \"drm</w>\": 39674,\n  \"dro\": 1494,\n  \"dro</w>\": 12442,\n  \"drogba</w>\": 49199,\n  \"droid</w>\": 38016,\n  \"drome</w>\": 9157,\n  \"dron\": 43898,\n  \"dron</w>\": 23360,\n  \"drone\": 33557,\n  \"drone</w>\": 9397,\n  \"drones</w>\": 14006,\n  \"droo\": 30715,\n  \"drool</w>\": 41554,\n  \"drooling</w>\": 44360,\n  \"drop\": 16407,\n  \"drop</w>\": 3387,\n  \"dropbox</w>\": 47216,\n  \"dropped</w>\": 6792,\n  \"dropping</w>\": 8339,\n  \"drops</w>\": 6437,\n  \"dros</w>\": 47033,\n  \"drou\": 38558,\n  \"drought</w>\": 13935,\n  \"drove</w>\": 13753,\n  \"drow\": 21159,\n  \"drown</w>\": 28571,\n  \"drowned</w>\": 34005,\n  \"drowning</w>\": 24618,\n  \"drs</w>\": 21257,\n  \"dru\": 2275,\n  \"dru</w>\": 49048,\n  \"drug\": 20601,\n  \"drug</w>\": 5600,\n  \"drugs</w>\": 8021,\n  \"druid</w>\": 40297,\n  \"drum\": 13353,\n  \"drum</w>\": 8698,\n  \"drummer</w>\": 13618,\n  \"drummers</w>\": 46191,\n  \"drumming</w>\": 35480,\n  \"drummond</w>\": 42213,\n  \"drums</w>\": 11690,\n  \"drun\": 15488,\n  \"drunk\": 37398,\n  \"drunk</w>\": 8232,\n  \"drunken</w>\": 28196,\n  \"drupal</w>\": 46481,\n  \"drush</w>\": 43009,\n  \"drwho</w>\": 48342,\n  \"dry\": 13544,\n  \"dry</w>\": 4501,\n  \"dryer</w>\": 24425,\n  \"drying</w>\": 23203,\n  \"ds\": 3361,\n  \"ds</w>\": 646,\n  \"dsa</w>\": 47607,\n  \"dsb\": 47168,\n  \"dsb</w>\": 14257,\n  \"dsburg</w>\": 47237,\n  \"dsc</w>\": 37240,\n  \"dsd</w>\": 45383,\n  \"dsley</w>\": 40740,\n  \"dslr</w>\": 33740,\n  \"dsm</w>\": 39502,\n  \"dson</w>\": 40310,\n  \"dsp</w>\": 45291,\n  \"dss</w>\": 41580,\n  \"dstv</w>\": 35027,\n  \"dt\": 13104,\n  \"dt</w>\": 7427,\n  \"dthe\": 13863,\n  \"dtla</w>\": 31885,\n  \"dtm</w>\": 42407,\n  \"dts</w>\": 46233,\n  \"du\": 691,\n  \"du</w>\": 3686,\n  \"dua</w>\": 25244,\n  \"dual\": 39739,\n  \"dual</w>\": 5347,\n  \"duane</w>\": 38946,\n  \"dub\": 14526,\n  \"dub</w>\": 13144,\n  \"duba\": 5485,\n  \"dubai\": 32599,\n  \"dubai</w>\": 5985,\n  \"dubbed</w>\": 27740,\n  \"dublin\": 20707,\n  \"dublin</w>\": 6145,\n  \"dubnation</w>\": 47329,\n  \"dubois</w>\": 48046,\n  \"dubrov\": 46709,\n  \"dubrovnik</w>\": 48724,\n  \"dubs</w>\": 27013,\n  \"dubstep</w>\": 38303,\n  \"dubu\": 43257,\n  \"duc\": 979,\n  \"duc</w>\": 36446,\n  \"ducati</w>\": 28570,\n  \"ducation</w>\": 17197,\n  \"duce</w>\": 3660,\n  \"duchess</w>\": 21713,\n  \"duck\": 12708,\n  \"duck</w>\": 6910,\n  \"ducks</w>\": 11202,\n  \"duct</w>\": 26829,\n  \"dude\": 48087,\n  \"dude</w>\": 5710,\n  \"dudes</w>\": 14449,\n  \"dudley</w>\": 27324,\n  \"due</w>\": 2887,\n  \"duel</w>\": 27143,\n  \"dues</w>\": 37646,\n  \"duet</w>\": 25457,\n  \"duf\": 38713,\n  \"duff\": 38071,\n  \"duff</w>\": 21934,\n  \"duffy</w>\": 23599,\n  \"dug\": 22743,\n  \"dug</w>\": 21000,\n  \"dugg\": 40523,\n  \"duggan</w>\": 46169,\n  \"dugout</w>\": 36831,\n  \"duh</w>\": 26716,\n  \"dui</w>\": 29693,\n  \"duk</w>\": 14160,\n  \"duke\": 18402,\n  \"duke</w>\": 7732,\n  \"dukes</w>\": 27914,\n  \"dul\": 6738,\n  \"dulce</w>\": 44872,\n  \"dulil\": 32565,\n  \"dulkar</w>\": 47980,\n  \"dull</w>\": 19433,\n  \"dulu\": 28865,\n  \"duluth</w>\": 32109,\n  \"dulwich</w>\": 47343,\n  \"dum\": 13400,\n  \"dum</w>\": 11564,\n  \"dumb\": 15901,\n  \"dumb</w>\": 12464,\n  \"dumbass</w>\": 38980,\n  \"dummies</w>\": 40899,\n  \"dummy</w>\": 34246,\n  \"dump\": 12655,\n  \"dump</w>\": 17146,\n  \"dumped</w>\": 23768,\n  \"dumping</w>\": 31707,\n  \"dumplings</w>\": 35495,\n  \"dumps</w>\": 45804,\n  \"dumpster</w>\": 45467,\n  \"dun\": 2616,\n  \"dun</w>\": 18284,\n  \"dunbar</w>\": 41453,\n  \"duncan\": 31084,\n  \"duncan</w>\": 13502,\n  \"dundal\": 38185,\n  \"dundas</w>\": 39300,\n  \"dundee</w>\": 18619,\n  \"dune\": 32833,\n  \"dune</w>\": 28208,\n  \"dunedin</w>\": 40121,\n  \"dunes</w>\": 23526,\n  \"dung</w>\": 33712,\n  \"dungeon\": 28812,\n  \"dungeon</w>\": 22931,\n  \"dungeons</w>\": 42572,\n  \"dungeonsand\": 34970,\n  \"dungeonsanddragons</w>\": 35497,\n  \"dunham</w>\": 42501,\n  \"duni</w>\": 43454,\n  \"dunk</w>\": 17222,\n  \"dunkin\": 48022,\n  \"dunkin</w>\": 36415,\n  \"dunkirk</w>\": 46928,\n  \"dunks</w>\": 48977,\n  \"dunlop</w>\": 34753,\n  \"dunn</w>\": 19185,\n  \"dunne</w>\": 38538,\n  \"dunno</w>\": 24502,\n  \"duo</w>\": 8696,\n  \"dup\": 36805,\n  \"dup</w>\": 10445,\n  \"duper</w>\": 44850,\n  \"duplex</w>\": 41186,\n  \"duplic\": 28992,\n  \"dupont</w>\": 35994,\n  \"dur\": 4355,\n  \"dur</w>\": 23230,\n  \"dura\": 28173,\n  \"dura</w>\": 47382,\n  \"durability</w>\": 43671,\n  \"durable</w>\": 22285,\n  \"duran</w>\": 28185,\n  \"durango</w>\": 44443,\n  \"durant</w>\": 24861,\n  \"duras</w>\": 27518,\n  \"duration</w>\": 31663,\n  \"durban</w>\": 24474,\n  \"dure</w>\": 19108,\n  \"durga</w>\": 38456,\n  \"durham\": 26765,\n  \"durham</w>\": 14335,\n  \"during</w>\": 1590,\n  \"dus</w>\": 9931,\n  \"dusa</w>\": 28546,\n  \"dusk</w>\": 19708,\n  \"dust\": 29723,\n  \"dust</w>\": 8349,\n  \"dusted</w>\": 38274,\n  \"duster</w>\": 46280,\n  \"dustin\": 42423,\n  \"dustin</w>\": 21235,\n  \"dusting</w>\": 41756,\n  \"dusty</w>\": 22029,\n  \"dut\": 32625,\n  \"dutch\": 22277,\n  \"dutch</w>\": 7991,\n  \"duter\": 21624,\n  \"duterte</w>\": 22371,\n  \"duties</w>\": 19603,\n  \"dutt</w>\": 30081,\n  \"dutton</w>\": 42771,\n  \"duty</w>\": 6458,\n  \"duval</w>\": 42459,\n  \"duvet</w>\": 48006,\n  \"dux</w>\": 28562,\n  \"dv\": 4288,\n  \"dv</w>\": 26265,\n  \"dvd</w>\": 7170,\n  \"dvds</w>\": 36655,\n  \"dvn</w>\": 29811,\n  \"dvr</w>\": 29210,\n  \"dw\": 8455,\n  \"dw</w>\": 19997,\n  \"dwar\": 13487,\n  \"dwarf</w>\": 22643,\n  \"dwayne</w>\": 31395,\n  \"dwell\": 27549,\n  \"dwell</w>\": 18755,\n  \"dwelling</w>\": 37098,\n  \"dwight</w>\": 22473,\n  \"dwp</w>\": 46976,\n  \"dwts</w>\": 30220,\n  \"dwyer</w>\": 43878,\n  \"dx\": 22717,\n  \"dx</w>\": 15679,\n  \"dy\": 1444,\n  \"dy</w>\": 907,\n  \"dyce</w>\": 48325,\n  \"dye\": 37159,\n  \"dye</w>\": 15997,\n  \"dyed</w>\": 24906,\n  \"dyer</w>\": 29495,\n  \"dyes</w>\": 39874,\n  \"dying</w>\": 5115,\n  \"dyk</w>\": 12142,\n  \"dyke</w>\": 32632,\n  \"dylan\": 21004,\n  \"dylan</w>\": 9900,\n  \"dyn\": 44289,\n  \"dyn</w>\": 30669,\n  \"dynam\": 5735,\n  \"dynamic</w>\": 10057,\n  \"dynamics</w>\": 14329,\n  \"dynamite</w>\": 29003,\n  \"dynamo</w>\": 28281,\n  \"dynasty</w>\": 14593,\n  \"dyne</w>\": 42756,\n  \"dyou\": 11484,\n  \"dyour\": 22525,\n  \"dys\": 11022,\n  \"dys</w>\": 38384,\n  \"dysfunction</w>\": 36865,\n  \"dysfunctional</w>\": 40757,\n  \"dysle\": 33681,\n  \"dyslexia</w>\": 43199,\n  \"dyson</w>\": 34475,\n  \"dyssey</w>\": 17435,\n  \"dystop\": 28276,\n  \"dystopian</w>\": 38915,\n  \"dz\": 24421,\n  \"dz</w>\": 22913,\n  \"dÃ©\": 25466,\n  \"dÃ¼\": 46948,\n  \"dÃŃ\": 46988,\n  \"e\": 68,\n  \"e</w>\": 324,\n  \"ea\": 2150,\n  \"ea</w>\": 8100,\n  \"eable</w>\": 20693,\n  \"each\": 31442,\n  \"each</w>\": 2416,\n  \"eachother</w>\": 40792,\n  \"ead\": 42556,\n  \"ead</w>\": 45523,\n  \"eae</w>\": 27446,\n  \"eag\": 3743,\n  \"eager</w>\": 21551,\n  \"eagerly</w>\": 30094,\n  \"eagle\": 20207,\n  \"eagle</w>\": 7517,\n  \"eagles</w>\": 6920,\n  \"eal\": 48872,\n  \"ealing</w>\": 40484,\n  \"eames</w>\": 49072,\n  \"eamon\": 45954,\n  \"ean</w>\": 13327,\n  \"ear\": 1055,\n  \"ear</w>\": 8373,\n  \"earbuds</w>\": 47807,\n  \"eared</w>\": 9127,\n  \"earl\": 30573,\n  \"earl</w>\": 14235,\n  \"earle</w>\": 40292,\n  \"earlier</w>\": 4297,\n  \"earliest</w>\": 22097,\n  \"early\": 15840,\n  \"early</w>\": 2090,\n  \"earn\": 33977,\n  \"earn</w>\": 8465,\n  \"earned</w>\": 8898,\n  \"earnest</w>\": 45422,\n  \"earning</w>\": 14550,\n  \"earnings</w>\": 15912,\n  \"earns</w>\": 16760,\n  \"earp</w>\": 35296,\n  \"earphones</w>\": 44905,\n  \"earring</w>\": 28664,\n  \"earrings</w>\": 9136,\n  \"ears</w>\": 9861,\n  \"eart\": 7086,\n  \"earth\": 5184,\n  \"earth</w>\": 3475,\n  \"earthand\": 34229,\n  \"earthandclouds</w>\": 34480,\n  \"earthday</w>\": 19481,\n  \"earthquake</w>\": 10060,\n  \"earthquakes</w>\": 32895,\n  \"earthy</w>\": 47139,\n  \"earts</w>\": 38824,\n  \"eas\": 5740,\n  \"ease</w>\": 13574,\n  \"easier</w>\": 8817,\n  \"easiest</w>\": 26314,\n  \"easily</w>\": 8197,\n  \"easing</w>\": 44825,\n  \"easport\": 42251,\n  \"east\": 5022,\n  \"east</w>\": 2602,\n  \"eastbound</w>\": 28827,\n  \"eastbourne</w>\": 38455,\n  \"eastenders</w>\": 23545,\n  \"easter\": 14783,\n  \"easter</w>\": 4811,\n  \"eastern\": 34522,\n  \"eastern</w>\": 6311,\n  \"eastman</w>\": 48280,\n  \"easton</w>\": 29619,\n  \"eastside</w>\": 42650,\n  \"eastwood</w>\": 28270,\n  \"easy\": 18308,\n  \"easy</w>\": 3176,\n  \"eat\": 5418,\n  \"eat</w>\": 3384,\n  \"eaten</w>\": 16750,\n  \"eater</w>\": 24060,\n  \"eaters</w>\": 37645,\n  \"eatery</w>\": 46559,\n  \"eating</w>\": 4371,\n  \"eatlocal</w>\": 42868,\n  \"eaton</w>\": 28462,\n  \"eats</w>\": 13188,\n  \"eau</w>\": 17608,\n  \"eazy</w>\": 36536,\n  \"eb\": 12283,\n  \"eb</w>\": 8677,\n  \"eba</w>\": 40889,\n  \"ebay\": 34412,\n  \"ebay</w>\": 4099,\n  \"eber\": 34020,\n  \"ebo</w>\": 46635,\n  \"ebola</w>\": 15864,\n  \"ebon\": 22013,\n  \"ebony</w>\": 30651,\n  \"ebook</w>\": 13122,\n  \"ebooks</w>\": 25774,\n  \"ec\": 747,\n  \"ec</w>\": 10879,\n  \"eca</w>\": 18465,\n  \"ecar\": 34500,\n  \"ecb</w>\": 26205,\n  \"ecc</w>\": 33128,\n  \"eccc</w>\": 47401,\n  \"eccentric</w>\": 43228,\n  \"eccle\": 27494,\n  \"ece</w>\": 2163,\n  \"eces</w>\": 5905,\n  \"ecg</w>\": 45983,\n  \"ech\": 15797,\n  \"ech</w>\": 31147,\n  \"echel\": 41233,\n  \"echo\": 17366,\n  \"echo</w>\": 13989,\n  \"echoes</w>\": 32564,\n  \"eci\": 31936,\n  \"eck\": 25866,\n  \"eck</w>\": 15969,\n  \"ecker\": 39661,\n  \"ecker</w>\": 40890,\n  \"ecla\": 47806,\n  \"eclec\": 25114,\n  \"eclectic</w>\": 28382,\n  \"eclip\": 30841,\n  \"eclipse</w>\": 11505,\n  \"eclub</w>\": 38983,\n  \"eco\": 5106,\n  \"eco</w>\": 10077,\n  \"ecofriendly</w>\": 43412,\n  \"ecol\": 22706,\n  \"ecological</w>\": 25127,\n  \"ecology</w>\": 18578,\n  \"ecommerce</w>\": 15529,\n  \"econ\": 26755,\n  \"econ</w>\": 21158,\n  \"econom\": 2768,\n  \"economic\": 36649,\n  \"economic</w>\": 5259,\n  \"economical</w>\": 48782,\n  \"economically</w>\": 39406,\n  \"economics</w>\": 12625,\n  \"economies</w>\": 27136,\n  \"economist</w>\": 18836,\n  \"economists</w>\": 43701,\n  \"economy</w>\": 5644,\n  \"ecor\": 28962,\n  \"ecosystem</w>\": 15788,\n  \"ecosystems</w>\": 28725,\n  \"ecoun\": 27924,\n  \"ecr</w>\": 48572,\n  \"ecraft</w>\": 11439,\n  \"ecs</w>\": 23485,\n  \"ecstasy</w>\": 47286,\n  \"ecstatic</w>\": 36244,\n  \"ect</w>\": 25168,\n  \"ecu\": 13087,\n  \"ecu</w>\": 32919,\n  \"ecuador</w>\": 19813,\n  \"ecz\": 43530,\n  \"ed\": 843,\n  \"ed</w>\": 538,\n  \"eda</w>\": 10804,\n  \"edad</w>\": 44724,\n  \"eday\": 39258,\n  \"edc</w>\": 21245,\n  \"edchat</w>\": 14702,\n  \"edd</w>\": 35431,\n  \"eddi\": 42930,\n  \"eddie\": 22748,\n  \"eddie</w>\": 9517,\n  \"eddy</w>\": 25959,\n  \"ede\": 29632,\n  \"eded</w>\": 19555,\n  \"edel\": 20460,\n  \"edelman</w>\": 48139,\n  \"eden\": 23621,\n  \"eden</w>\": 13741,\n  \"eder</w>\": 16249,\n  \"edes</w>\": 36247,\n  \"edfringe</w>\": 27402,\n  \"edg\": 35955,\n  \"edgar\": 33543,\n  \"edgar</w>\": 17914,\n  \"edge\": 16914,\n  \"edge</w>\": 5461,\n  \"edged</w>\": 39188,\n  \"edges</w>\": 20938,\n  \"edgy</w>\": 35393,\n  \"edi\": 8750,\n  \"edi</w>\": 27148,\n  \"edible</w>\": 19795,\n  \"edic\": 25184,\n  \"edics</w>\": 30641,\n  \"edin\": 6524,\n  \"edinburgh\": 27574,\n  \"edinburgh</w>\": 8068,\n  \"eding</w>\": 5742,\n  \"edison</w>\": 25846,\n  \"edit\": 8239,\n  \"edit</w>\": 8013,\n  \"edited</w>\": 13945,\n  \"edith</w>\": 28597,\n  \"editing</w>\": 10178,\n  \"edition</w>\": 3062,\n  \"editions</w>\": 21664,\n  \"editor</w>\": 7661,\n  \"editorial</w>\": 12325,\n  \"editors</w>\": 19486,\n  \"edits</w>\": 24945,\n  \"edm\": 37843,\n  \"edm</w>\": 13539,\n  \"edmon\": 11275,\n  \"edmond</w>\": 41581,\n  \"edmonds</w>\": 46520,\n  \"edmonton\": 37311,\n  \"edmonton</w>\": 15058,\n  \"edmun\": 36561,\n  \"edmund</w>\": 27567,\n  \"edna</w>\": 39002,\n  \"edo\": 29145,\n  \"edo</w>\": 18096,\n  \"edon</w>\": 41467,\n  \"edor\": 30184,\n  \"edou\": 47678,\n  \"edp</w>\": 46066,\n  \"eds</w>\": 1941,\n  \"edsheeran</w>\": 30386,\n  \"edt</w>\": 15071,\n  \"edtech\": 41825,\n  \"edtech</w>\": 15262,\n  \"edu\": 11757,\n  \"edu</w>\": 11799,\n  \"eduardo</w>\": 30604,\n  \"educ\": 2200,\n  \"educate</w>\": 17563,\n  \"educated</w>\": 21447,\n  \"education\": 22358,\n  \"education</w>\": 2806,\n  \"educational</w>\": 10400,\n  \"educator</w>\": 19875,\n  \"educators</w>\": 15420,\n  \"edwar\": 27586,\n  \"edward\": 26184,\n  \"edward</w>\": 7450,\n  \"edwards</w>\": 12627,\n  \"edwin\": 48718,\n  \"edwin</w>\": 22471,\n  \"edy\": 17072,\n  \"edy</w>\": 4144,\n  \"ee\": 2644,\n  \"ee</w>\": 4708,\n  \"eed</w>\": 17513,\n  \"eee\": 24632,\n  \"eee</w>\": 9361,\n  \"eeee\": 11696,\n  \"eeee</w>\": 17570,\n  \"eeeee</w>\": 26938,\n  \"eeeeee</w>\": 41407,\n  \"eek</w>\": 46591,\n  \"eel</w>\": 27462,\n  \"eels</w>\": 44416,\n  \"eem</w>\": 27236,\n  \"een\": 47490,\n  \"een</w>\": 21230,\n  \"eer\": 35409,\n  \"eer</w>\": 31846,\n  \"eera</w>\": 36664,\n  \"eerie</w>\": 33846,\n  \"ees</w>\": 40308,\n  \"eet</w>\": 48935,\n  \"eez</w>\": 39033,\n  \"ef\": 1490,\n  \"ef</w>\": 1829,\n  \"efa</w>\": 16999,\n  \"eface</w>\": 48804,\n  \"efan\": 33556,\n  \"efc</w>\": 22065,\n  \"efcc</w>\": 46087,\n  \"efer</w>\": 26199,\n  \"eff\": 20548,\n  \"eff</w>\": 21715,\n  \"effe\": 2808,\n  \"effec\": 3943,\n  \"effect</w>\": 5436,\n  \"effective</w>\": 6837,\n  \"effectively</w>\": 17516,\n  \"effectiveness</w>\": 26847,\n  \"effects</w>\": 7331,\n  \"effic\": 36004,\n  \"efficacy</w>\": 39937,\n  \"effici\": 6670,\n  \"efficiency</w>\": 11823,\n  \"efficient</w>\": 11334,\n  \"efficiently</w>\": 32915,\n  \"effor\": 6356,\n  \"effort\": 40078,\n  \"effort</w>\": 6255,\n  \"effortless</w>\": 41639,\n  \"effortlessly</w>\": 42320,\n  \"efforts</w>\": 6847,\n  \"efish</w>\": 35813,\n  \"efl</w>\": 27172,\n  \"efron</w>\": 48111,\n  \"efs</w>\": 7389,\n  \"eg\": 8053,\n  \"eg</w>\": 14599,\n  \"ega</w>\": 41193,\n  \"egan</w>\": 42943,\n  \"eger\": 46704,\n  \"eger</w>\": 22767,\n  \"egg\": 13778,\n  \"egg</w>\": 5911,\n  \"eggplant</w>\": 34906,\n  \"eggs</w>\": 7099,\n  \"ego\": 34712,\n  \"ego</w>\": 14250,\n  \"egos</w>\": 43992,\n  \"egre\": 27044,\n  \"egret</w>\": 42002,\n  \"egy\": 5224,\n  \"egyp\": 10250,\n  \"egypt</w>\": 7267,\n  \"egyptian</w>\": 12428,\n  \"eh\": 9277,\n  \"eh</w>\": 9135,\n  \"eha</w>\": 48563,\n  \"ehealth</w>\": 48617,\n  \"ehr\": 45271,\n  \"ehs</w>\": 44648,\n  \"ei\": 4006,\n  \"ei</w>\": 18264,\n  \"eic\": 40251,\n  \"eid\": 28038,\n  \"eid</w>\": 13979,\n  \"eidmubarak</w>\": 46275,\n  \"eiffel</w>\": 29720,\n  \"eigh\": 13468,\n  \"eight</w>\": 7910,\n  \"eighteen</w>\": 49316,\n  \"eighth</w>\": 21237,\n  \"eighty</w>\": 47449,\n  \"eil\": 29457,\n  \"eileen</w>\": 31468,\n  \"ein\": 29944,\n  \"ein</w>\": 24524,\n  \"eindhoven</w>\": 47172,\n  \"eing</w>\": 7702,\n  \"einstein</w>\": 20587,\n  \"eira</w>\": 47708,\n  \"eis\": 13802,\n  \"eisen\": 25273,\n  \"eisenhower</w>\": 35562,\n  \"either</w>\": 6036,\n  \"ej\": 19887,\n  \"ej</w>\": 25009,\n  \"ejec\": 29771,\n  \"ek\": 4212,\n  \"ek</w>\": 2092,\n  \"el\": 544,\n  \"el</w>\": 832,\n  \"ela\": 11284,\n  \"ela</w>\": 3787,\n  \"elab</w>\": 38866,\n  \"elabor\": 26034,\n  \"elaborate</w>\": 33855,\n  \"elaine</w>\": 22523,\n  \"elan\": 17763,\n  \"elan</w>\": 18399,\n  \"eland\": 24930,\n  \"eland</w>\": 6275,\n  \"elas</w>\": 41078,\n  \"elast\": 27479,\n  \"elastic</w>\": 30282,\n  \"elba</w>\": 48598,\n  \"elbow</w>\": 21965,\n  \"eld</w>\": 5684,\n  \"elder\": 11791,\n  \"elder</w>\": 14416,\n  \"elderly</w>\": 15455,\n  \"elders</w>\": 28617,\n  \"eldest</w>\": 33503,\n  \"elding</w>\": 28223,\n  \"elds</w>\": 13466,\n  \"ele\": 2084,\n  \"ele</w>\": 9766,\n  \"eleague</w>\": 36577,\n  \"eleanor</w>\": 18604,\n  \"elearning</w>\": 29969,\n  \"elec\": 1564,\n  \"elec</w>\": 38768,\n  \"elect</w>\": 15336,\n  \"elected</w>\": 8828,\n  \"election\": 19312,\n  \"election</w>\": 4247,\n  \"electionday</w>\": 40540,\n  \"elections</w>\": 6949,\n  \"elector\": 16465,\n  \"electoral</w>\": 19544,\n  \"electr\": 3654,\n  \"electra</w>\": 48959,\n  \"electri\": 23927,\n  \"electric\": 19547,\n  \"electric</w>\": 5031,\n  \"electrical</w>\": 12176,\n  \"electrician</w>\": 46422,\n  \"electricity</w>\": 10950,\n  \"electrifying</w>\": 48843,\n  \"electro\": 11648,\n  \"electro</w>\": 23244,\n  \"electromagnetic</w>\": 46530,\n  \"electron</w>\": 33396,\n  \"electronic\": 33865,\n  \"electronic</w>\": 9273,\n  \"electronica</w>\": 43119,\n  \"electronics</w>\": 13081,\n  \"eled</w>\": 20357,\n  \"elee</w>\": 44112,\n  \"eleg\": 8075,\n  \"elegance</w>\": 19146,\n  \"elegant</w>\": 11124,\n  \"elek\": 34559,\n  \"elem</w>\": 25406,\n  \"element</w>\": 14909,\n  \"elementary</w>\": 8143,\n  \"elements</w>\": 10925,\n  \"elen\": 30654,\n  \"elen</w>\": 39164,\n  \"elena</w>\": 19421,\n  \"eleng\": 48180,\n  \"eleph\": 7554,\n  \"elephant</w>\": 10299,\n  \"elephants</w>\": 16871,\n  \"eler</w>\": 24646,\n  \"eless\": 15244,\n  \"eless</w>\": 30837,\n  \"elets</w>\": 19400,\n  \"elev\": 7921,\n  \"elevate</w>\": 26736,\n  \"elevated</w>\": 23967,\n  \"elevation</w>\": 23826,\n  \"elevator</w>\": 19021,\n  \"eleven\": 31617,\n  \"eleven</w>\": 17795,\n  \"elf\": 45961,\n  \"elf</w>\": 11924,\n  \"elfie</w>\": 39955,\n  \"elg\": 28790,\n  \"elgin</w>\": 31868,\n  \"eli\": 1018,\n  \"eli</w>\": 6292,\n  \"elia</w>\": 10956,\n  \"elian</w>\": 42508,\n  \"elias\": 47274,\n  \"elias</w>\": 29902,\n  \"elic\": 34743,\n  \"elic</w>\": 13492,\n  \"elie\": 38677,\n  \"elie</w>\": 26501,\n  \"elier</w>\": 14634,\n  \"elife\": 37429,\n  \"elife</w>\": 12719,\n  \"eligibility</w>\": 34937,\n  \"eligible</w>\": 16978,\n  \"elijah</w>\": 26065,\n  \"elike\": 48913,\n  \"elim\": 9296,\n  \"elimin\": 11386,\n  \"eliminate</w>\": 19655,\n  \"eliminated</w>\": 29075,\n  \"eliminating</w>\": 36619,\n  \"elimination</w>\": 24176,\n  \"elin\": 25353,\n  \"elin</w>\": 13458,\n  \"eline\": 46199,\n  \"eline</w>\": 7153,\n  \"eling</w>\": 9990,\n  \"elio</w>\": 47943,\n  \"elion</w>\": 30682,\n  \"elions</w>\": 44159,\n  \"eliot</w>\": 33326,\n  \"elis\": 23411,\n  \"elis</w>\": 48021,\n  \"elisa\": 25610,\n  \"elisa</w>\": 44051,\n  \"elisabeth</w>\": 33127,\n  \"elise</w>\": 27124,\n  \"elit\": 40882,\n  \"elite\": 32277,\n  \"elite</w>\": 6553,\n  \"elited\": 43943,\n  \"elitedangerous</w>\": 47138,\n  \"elites</w>\": 35975,\n  \"elius</w>\": 35623,\n  \"elive\": 49338,\n  \"elive</w>\": 23505,\n  \"elives</w>\": 49174,\n  \"elix\": 32926,\n  \"elixir</w>\": 42887,\n  \"eliz\": 42844,\n  \"eliza\": 6132,\n  \"eliza</w>\": 29992,\n  \"elizabeth\": 22397,\n  \"elizabeth</w>\": 7026,\n  \"elk\": 34013,\n  \"elk</w>\": 21896,\n  \"ell\": 826,\n  \"ell</w>\": 812,\n  \"ella\": 20692,\n  \"ella</w>\": 2957,\n  \"elland</w>\": 43326,\n  \"ellar</w>\": 38443,\n  \"ellas</w>\": 37053,\n  \"elle\": 12818,\n  \"elle</w>\": 4765,\n  \"elled</w>\": 13146,\n  \"ellen\": 14007,\n  \"ellen</w>\": 12312,\n  \"ellenshow</w>\": 34812,\n  \"eller\": 20927,\n  \"eller</w>\": 4465,\n  \"ellers</w>\": 19010,\n  \"elles</w>\": 24431,\n  \"elli\": 3367,\n  \"elli</w>\": 6673,\n  \"ellic\": 38905,\n  \"ellie</w>\": 16769,\n  \"ellier</w>\": 44054,\n  \"ellin</w>\": 40374,\n  \"elling</w>\": 2220,\n  \"ellington</w>\": 34477,\n  \"ellini</w>\": 43256,\n  \"elliot</w>\": 20761,\n  \"elliott\": 44456,\n  \"elliott</w>\": 13788,\n  \"ellip\": 44816,\n  \"ellis</w>\": 11553,\n  \"ellison</w>\": 32295,\n  \"ello</w>\": 2512,\n  \"ellor</w>\": 14594,\n  \"ells</w>\": 2433,\n  \"ellu\": 35560,\n  \"elly\": 8041,\n  \"elly</w>\": 20355,\n  \"elm\": 25199,\n  \"elm</w>\": 22082,\n  \"elman</w>\": 33622,\n  \"elmer</w>\": 45958,\n  \"elmo</w>\": 32150,\n  \"elo\": 6170,\n  \"elo</w>\": 13490,\n  \"elon\": 26381,\n  \"elon</w>\": 20406,\n  \"elondon</w>\": 47377,\n  \"elong\": 44363,\n  \"elonmusk</w>\": 37076,\n  \"elope</w>\": 23367,\n  \"eloqu\": 37795,\n  \"elos</w>\": 44733,\n  \"elot</w>\": 43490,\n  \"elove\": 43319,\n  \"elove</w>\": 19165,\n  \"elover</w>\": 21732,\n  \"elovers</w>\": 33946,\n  \"els\": 35958,\n  \"els</w>\": 1645,\n  \"elsa</w>\": 22050,\n  \"else\": 18857,\n  \"else</w>\": 3344,\n  \"elsewhere</w>\": 22906,\n  \"elson</w>\": 19624,\n  \"elt</w>\": 18692,\n  \"elton</w>\": 20758,\n  \"elu\": 14208,\n  \"elusive</w>\": 28903,\n  \"elves</w>\": 29111,\n  \"elvi\": 47008,\n  \"elvis\": 47359,\n  \"elvis</w>\": 14498,\n  \"elxn</w>\": 37726,\n  \"ely\": 12189,\n  \"ely</w>\": 1273,\n  \"elyn\": 29691,\n  \"elyn</w>\": 18126,\n  \"em\": 908,\n  \"em</w>\": 2270,\n  \"ema\": 7002,\n  \"ema</w>\": 11131,\n  \"emabiggest\": 23101,\n  \"emabiggestfans</w>\": 29587,\n  \"email\": 33537,\n  \"email</w>\": 4462,\n  \"emailed</w>\": 40470,\n  \"emailmarketing</w>\": 40188,\n  \"emails</w>\": 12871,\n  \"eman\": 24416,\n  \"eman</w>\": 36868,\n  \"emancip\": 42996,\n  \"emanuel</w>\": 35232,\n  \"emb\": 3692,\n  \"embar\": 8266,\n  \"embaras\": 48019,\n  \"embark</w>\": 33953,\n  \"embarra\": 11382,\n  \"embarrass\": 27183,\n  \"embarrassed</w>\": 28217,\n  \"embarrassing</w>\": 19653,\n  \"embarrassment</w>\": 41346,\n  \"embassy</w>\": 13598,\n  \"embe\": 46041,\n  \"embed\": 19703,\n  \"embedded</w>\": 22046,\n  \"embelli\": 32144,\n  \"embellished</w>\": 46992,\n  \"ember</w>\": 47049,\n  \"emblem</w>\": 21163,\n  \"embo\": 23065,\n  \"embr\": 35267,\n  \"embrac\": 16928,\n  \"embrace</w>\": 12118,\n  \"embraced</w>\": 35739,\n  \"embraces</w>\": 38404,\n  \"embracing</w>\": 22196,\n  \"embro\": 12550,\n  \"embroi\": 18667,\n  \"embroide\": 21530,\n  \"embroidered</w>\": 22381,\n  \"embroidery</w>\": 20823,\n  \"emc\": 20897,\n  \"emc</w>\": 31602,\n  \"emcee</w>\": 42038,\n  \"eme\": 22910,\n  \"eme</w>\": 21548,\n  \"emea</w>\": 40352,\n  \"emed</w>\": 11028,\n  \"emen</w>\": 22033,\n  \"ement\": 40841,\n  \"ement</w>\": 2057,\n  \"ements</w>\": 11058,\n  \"emer\": 3132,\n  \"emer</w>\": 25727,\n  \"emerald\": 46878,\n  \"emerald</w>\": 16980,\n  \"emerge</w>\": 22182,\n  \"emerged</w>\": 26425,\n  \"emergen\": 24096,\n  \"emergence</w>\": 39867,\n  \"emergencies</w>\": 35759,\n  \"emergency\": 44038,\n  \"emergency</w>\": 5897,\n  \"emerges</w>\": 30801,\n  \"emerging\": 38174,\n  \"emerging</w>\": 11113,\n  \"emeritus</w>\": 35333,\n  \"emerson</w>\": 24147,\n  \"emery</w>\": 32678,\n  \"emi\": 44327,\n  \"emi</w>\": 18525,\n  \"emil\": 26794,\n  \"emil</w>\": 40624,\n  \"emile</w>\": 43926,\n  \"emili\": 20709,\n  \"emilia</w>\": 34238,\n  \"emilio</w>\": 39722,\n  \"emily\": 14545,\n  \"emily</w>\": 7640,\n  \"emin\": 17227,\n  \"emin</w>\": 23995,\n  \"eminem</w>\": 22129,\n  \"eminent</w>\": 33779,\n  \"eming</w>\": 40398,\n  \"emir\": 13337,\n  \"emir</w>\": 47613,\n  \"emirates\": 47244,\n  \"emirates</w>\": 17867,\n  \"emission</w>\": 27761,\n  \"emissions</w>\": 14172,\n  \"emit</w>\": 49043,\n  \"emma\": 18177,\n  \"emma</w>\": 7445,\n  \"emmanuel\": 48045,\n  \"emmanuel</w>\": 20411,\n  \"emmett</w>\": 45779,\n  \"emmy\": 35625,\n  \"emmy</w>\": 17089,\n  \"emmys</w>\": 21875,\n  \"emo\": 3738,\n  \"emo</w>\": 19381,\n  \"emoji</w>\": 16327,\n  \"emojis</w>\": 27870,\n  \"emon</w>\": 34406,\n  \"emor\": 45034,\n  \"emory</w>\": 44274,\n  \"emotion</w>\": 17464,\n  \"emotional</w>\": 7357,\n  \"emotionally</w>\": 24088,\n  \"emotions</w>\": 12904,\n  \"emp\": 3831,\n  \"emp</w>\": 41004,\n  \"empathy</w>\": 22420,\n  \"emper\": 12522,\n  \"emperor</w>\": 13828,\n  \"empha\": 16237,\n  \"emphasi\": 47176,\n  \"emphasis</w>\": 29588,\n  \"empire\": 26212,\n  \"empire</w>\": 7614,\n  \"empires</w>\": 46510,\n  \"emplo\": 3409,\n  \"employ\": 37290,\n  \"employ</w>\": 39626,\n  \"employe\": 5037,\n  \"employed</w>\": 26567,\n  \"employee\": 36631,\n  \"employee</w>\": 9560,\n  \"employees</w>\": 7377,\n  \"employer</w>\": 21296,\n  \"employers</w>\": 17647,\n  \"employment</w>\": 10959,\n  \"empor\": 27386,\n  \"emporium</w>\": 48541,\n  \"empower\": 13612,\n  \"empower</w>\": 17230,\n  \"empowered</w>\": 29087,\n  \"empowering</w>\": 20086,\n  \"empowerment</w>\": 15747,\n  \"empowers</w>\": 46206,\n  \"empress</w>\": 26656,\n  \"empty\": 41203,\n  \"empty</w>\": 7893,\n  \"emra\": 39259,\n  \"ems</w>\": 2858,\n  \"emt</w>\": 46360,\n  \"emu\": 48149,\n  \"emu</w>\": 29296,\n  \"emul\": 23272,\n  \"emy\": 31076,\n  \"en\": 524,\n  \"en</w>\": 576,\n  \"ena</w>\": 3452,\n  \"enab\": 17308,\n  \"enable</w>\": 15642,\n  \"enabled</w>\": 23666,\n  \"enables</w>\": 23417,\n  \"enabling</w>\": 23590,\n  \"enam\": 41486,\n  \"enamel</w>\": 22746,\n  \"enary</w>\": 13132,\n  \"enas</w>\": 34536,\n  \"enation</w>\": 20860,\n  \"enberg</w>\": 15658,\n  \"enburg</w>\": 28430,\n  \"enc</w>\": 33169,\n  \"enca</w>\": 37774,\n  \"encan\": 30345,\n  \"encapsul\": 40874,\n  \"ence\": 6495,\n  \"ence</w>\": 954,\n  \"enced</w>\": 6549,\n  \"ences</w>\": 3777,\n  \"enchan\": 17290,\n  \"enchanted</w>\": 28258,\n  \"enchanting</w>\": 32531,\n  \"enchil\": 47396,\n  \"enci\": 32207,\n  \"encia</w>\": 30068,\n  \"encies</w>\": 18729,\n  \"encing</w>\": 10326,\n  \"enclosed</w>\": 43243,\n  \"enclosure</w>\": 37419,\n  \"encom\": 44026,\n  \"encore</w>\": 20549,\n  \"encoun\": 17309,\n  \"encounter</w>\": 13164,\n  \"encountered</w>\": 32492,\n  \"encounters</w>\": 25399,\n  \"encoura\": 6169,\n  \"encourage</w>\": 12090,\n  \"encouraged</w>\": 20299,\n  \"encouragement</w>\": 24959,\n  \"encourages</w>\": 23848,\n  \"encouraging</w>\": 15875,\n  \"encro\": 45822,\n  \"encry\": 28600,\n  \"encryp\": 42928,\n  \"encrypted</w>\": 48710,\n  \"encryption</w>\": 31423,\n  \"ency</w>\": 3484,\n  \"encyclo\": 32104,\n  \"encyclopedia</w>\": 38376,\n  \"end\": 945,\n  \"end</w>\": 806,\n  \"enda</w>\": 6735,\n  \"endale</w>\": 20290,\n  \"endange\": 13990,\n  \"endangered</w>\": 14931,\n  \"ende\": 11373,\n  \"ende</w>\": 40306,\n  \"endeav\": 18134,\n  \"endeavor</w>\": 40502,\n  \"endeavors</w>\": 44394,\n  \"endeavour</w>\": 38035,\n  \"ended</w>\": 2622,\n  \"endemic</w>\": 41241,\n  \"endent</w>\": 16265,\n  \"ender\": 48106,\n  \"ender</w>\": 12383,\n  \"enders</w>\": 7418,\n  \"endez</w>\": 43850,\n  \"endgame</w>\": 23042,\n  \"endi</w>\": 31359,\n  \"ending</w>\": 2695,\n  \"endings</w>\": 36516,\n  \"endish</w>\": 38841,\n  \"endless</w>\": 12688,\n  \"endlessly</w>\": 45145,\n  \"endment</w>\": 45894,\n  \"endo\": 13476,\n  \"endo</w>\": 15830,\n  \"endocr\": 36486,\n  \"endof\": 40786,\n  \"endome\": 46996,\n  \"endon</w>\": 48018,\n  \"endor\": 8092,\n  \"endorf</w>\": 37249,\n  \"endorse</w>\": 28819,\n  \"endorsed</w>\": 24307,\n  \"endorsement</w>\": 21205,\n  \"endorses</w>\": 34603,\n  \"endorsing</w>\": 46779,\n  \"endow\": 45895,\n  \"endra</w>\": 22321,\n  \"ends</w>\": 1339,\n  \"endthe\": 46256,\n  \"endu\": 26032,\n  \"endur\": 19557,\n  \"endurance</w>\": 21027,\n  \"endure</w>\": 32419,\n  \"enduring</w>\": 30851,\n  \"enduro</w>\": 47042,\n  \"ene\": 3297,\n  \"ene</w>\": 6049,\n  \"ened</w>\": 2494,\n  \"eneed\": 45137,\n  \"enegger</w>\": 33235,\n  \"enei</w>\": 48906,\n  \"enemies</w>\": 15824,\n  \"enemy</w>\": 10310,\n  \"enen</w>\": 45113,\n  \"ener\": 2244,\n  \"ener</w>\": 13600,\n  \"energ\": 39451,\n  \"energetic</w>\": 24197,\n  \"energi\": 23044,\n  \"energies</w>\": 42374,\n  \"energized</w>\": 48635,\n  \"energy\": 14974,\n  \"energy</w>\": 2650,\n  \"energye\": 32271,\n  \"energyefficiency</w>\": 40586,\n  \"eners</w>\": 48208,\n  \"enes</w>\": 42066,\n  \"eness</w>\": 11806,\n  \"enet</w>\": 46336,\n  \"enew\": 29672,\n  \"enews</w>\": 13442,\n  \"eney</w>\": 20706,\n  \"enez</w>\": 33110,\n  \"enf\": 38167,\n  \"enfield</w>\": 27808,\n  \"enfor\": 10592,\n  \"enforce</w>\": 40224,\n  \"enforced</w>\": 44597,\n  \"enforcement</w>\": 12460,\n  \"eng\": 1035,\n  \"eng</w>\": 6730,\n  \"enga</w>\": 22297,\n  \"engag\": 6793,\n  \"engage</w>\": 11089,\n  \"engaged</w>\": 11475,\n  \"engagement</w>\": 7281,\n  \"engaging</w>\": 13060,\n  \"enge\": 26279,\n  \"enge</w>\": 2742,\n  \"engel\": 38265,\n  \"engen</w>\": 48286,\n  \"enger</w>\": 6618,\n  \"engers</w>\": 7533,\n  \"engine\": 3355,\n  \"engine</w>\": 5857,\n  \"engineer\": 40151,\n  \"engineer</w>\": 8517,\n  \"engineered</w>\": 26580,\n  \"engineering</w>\": 5273,\n  \"engineers</w>\": 11494,\n  \"engines</w>\": 14487,\n  \"england\": 20904,\n  \"england</w>\": 3595,\n  \"english\": 15942,\n  \"english</w>\": 3469,\n  \"engra\": 17560,\n  \"engraved</w>\": 29421,\n  \"engraving</w>\": 33309,\n  \"engul\": 43655,\n  \"engv\": 28401,\n  \"enh\": 7449,\n  \"enhall</w>\": 48781,\n  \"enham</w>\": 24592,\n  \"enhan\": 26827,\n  \"enhance</w>\": 13993,\n  \"enhanced</w>\": 16070,\n  \"enhancement</w>\": 35601,\n  \"enhances</w>\": 38259,\n  \"enhancing</w>\": 25986,\n  \"eni\": 4395,\n  \"eni</w>\": 17538,\n  \"enic\": 46780,\n  \"enic</w>\": 28292,\n  \"enig\": 19754,\n  \"enig</w>\": 48730,\n  \"enight\": 32848,\n  \"enight</w>\": 20640,\n  \"enigma</w>\": 34998,\n  \"ening</w>\": 1133,\n  \"enium</w>\": 34380,\n  \"enix</w>\": 25720,\n  \"enjo\": 1498,\n  \"enjoy\": 12981,\n  \"enjoy</w>\": 2218,\n  \"enjoyable</w>\": 17444,\n  \"enjoyed</w>\": 5045,\n  \"enjoying</w>\": 3603,\n  \"enjoyment</w>\": 34905,\n  \"enjoys</w>\": 17024,\n  \"enka</w>\": 43942,\n  \"enko</w>\": 25312,\n  \"enlar\": 38136,\n  \"enligh\": 21364,\n  \"enlighten\": 28200,\n  \"enlightened</w>\": 44032,\n  \"enlightening</w>\": 44005,\n  \"enlightenment</w>\": 29255,\n  \"enlisted</w>\": 43555,\n  \"enly</w>\": 43023,\n  \"enn</w>\": 43563,\n  \"enna</w>\": 8095,\n  \"enne\": 21176,\n  \"enne</w>\": 11518,\n  \"ennedy</w>\": 46266,\n  \"ennes</w>\": 43613,\n  \"enni\": 7049,\n  \"ennial</w>\": 14220,\n  \"ennis\": 48923,\n  \"ennis</w>\": 26309,\n  \"eno\": 9429,\n  \"eno</w>\": 12843,\n  \"enoch</w>\": 47917,\n  \"enor\": 13955,\n  \"enormous</w>\": 20129,\n  \"enos</w>\": 44759,\n  \"enote</w>\": 44955,\n  \"enough</w>\": 2744,\n  \"enow</w>\": 26876,\n  \"enqu\": 28417,\n  \"enqui\": 22810,\n  \"enquire</w>\": 46658,\n  \"enquiries</w>\": 31901,\n  \"enquiry</w>\": 45141,\n  \"enri\": 18915,\n  \"enrich\": 20058,\n  \"enrich</w>\": 45504,\n  \"enriched</w>\": 45166,\n  \"enrichment</w>\": 32903,\n  \"enrique</w>\": 25489,\n  \"enrol\": 44279,\n  \"enroll\": 23739,\n  \"enroll</w>\": 30366,\n  \"enrolled</w>\": 36853,\n  \"enrollment</w>\": 24875,\n  \"enroute</w>\": 40548,\n  \"ens\": 41799,\n  \"ens</w>\": 1323,\n  \"ense\": 12657,\n  \"ense</w>\": 27658,\n  \"ensemble</w>\": 14843,\n  \"ensis</w>\": 32842,\n  \"ensla\": 37535,\n  \"enslaved</w>\": 48675,\n  \"ensure</w>\": 7492,\n  \"ensures</w>\": 29707,\n  \"ensuring</w>\": 19403,\n  \"ent\": 724,\n  \"ent</w>\": 621,\n  \"enta</w>\": 17681,\n  \"ental\": 32342,\n  \"ental</w>\": 6168,\n  \"entary</w>\": 9833,\n  \"entation</w>\": 37412,\n  \"ente\": 17433,\n  \"ente</w>\": 9935,\n  \"ented</w>\": 3800,\n  \"entennial</w>\": 43088,\n  \"enter\": 2963,\n  \"enter</w>\": 3819,\n  \"entered</w>\": 10679,\n  \"entering</w>\": 12580,\n  \"enterpri\": 7339,\n  \"enterprise</w>\": 9220,\n  \"enterprises</w>\": 21219,\n  \"enters</w>\": 15287,\n  \"entertain\": 5566,\n  \"entertain</w>\": 23510,\n  \"entertained</w>\": 30631,\n  \"entertainer</w>\": 28674,\n  \"entertaining</w>\": 13897,\n  \"entertainment</w>\": 6166,\n  \"entes</w>\": 24213,\n  \"enthr\": 36202,\n  \"enthusi\": 9631,\n  \"enthusiasm</w>\": 20525,\n  \"enthusiast</w>\": 27153,\n  \"enthusiastic</w>\": 22068,\n  \"enthusiasts</w>\": 27514,\n  \"enti\": 1938,\n  \"ential</w>\": 5194,\n  \"entially</w>\": 37695,\n  \"entic</w>\": 10340,\n  \"entine</w>\": 49212,\n  \"enting</w>\": 20526,\n  \"entire</w>\": 4709,\n  \"entirely</w>\": 13911,\n  \"entirety</w>\": 43242,\n  \"entit\": 15209,\n  \"entities</w>\": 38134,\n  \"entitled</w>\": 18680,\n  \"entity</w>\": 28455,\n  \"ently</w>\": 2922,\n  \"ento\": 21917,\n  \"ento</w>\": 8762,\n  \"entom\": 31676,\n  \"entourage</w>\": 47893,\n  \"entr\": 7129,\n  \"entrance</w>\": 9129,\n  \"entrata</w>\": 27304,\n  \"entre\": 34188,\n  \"entre</w>\": 19600,\n  \"entren\": 46959,\n  \"entrepre\": 4583,\n  \"entreprene\": 4789,\n  \"entrepreneu\": 26784,\n  \"entrepreneur\": 12119,\n  \"entrepreneur</w>\": 8033,\n  \"entrepreneurial</w>\": 28261,\n  \"entrepreneurs</w>\": 11054,\n  \"entrepreneurship</w>\": 12858,\n  \"entries</w>\": 13766,\n  \"entry</w>\": 5362,\n  \"ents</w>\": 870,\n  \"entu\": 6650,\n  \"enty</w>\": 5657,\n  \"enu\": 23430,\n  \"env\": 32280,\n  \"env</w>\": 39207,\n  \"envel\": 20052,\n  \"envelope</w>\": 27358,\n  \"envir\": 3512,\n  \"enviro</w>\": 46200,\n  \"environ\": 3599,\n  \"environment\": 33039,\n  \"environment</w>\": 5501,\n  \"environmental</w>\": 7831,\n  \"environmentally</w>\": 32855,\n  \"environments</w>\": 19577,\n  \"envision</w>\": 49031,\n  \"envoy</w>\": 29263,\n  \"envy</w>\": 21017,\n  \"eny</w>\": 20482,\n  \"enya</w>\": 36509,\n  \"enyc</w>\": 39520,\n  \"enz\": 25805,\n  \"enz</w>\": 31873,\n  \"enza</w>\": 25239,\n  \"enzie</w>\": 14839,\n  \"enzo</w>\": 31543,\n  \"enzyme</w>\": 40348,\n  \"enzymes</w>\": 47465,\n  \"eo\": 16054,\n  \"eo</w>\": 11712,\n  \"eoin</w>\": 48634,\n  \"eon</w>\": 31915,\n  \"eos</w>\": 17805,\n  \"ep\": 1178,\n  \"ep</w>\": 1117,\n  \"epa</w>\": 15866,\n  \"epage</w>\": 26931,\n  \"epaper</w>\": 33584,\n  \"epcot</w>\": 32524,\n  \"eper</w>\": 43071,\n  \"eph\": 45752,\n  \"eph</w>\": 41240,\n  \"ephe\": 25129,\n  \"epi\": 7219,\n  \"epi</w>\": 34641,\n  \"epic\": 12683,\n  \"epic</w>\": 4991,\n  \"epiconetsy</w>\": 49222,\n  \"epide\": 17382,\n  \"epidemi\": 44447,\n  \"epidemic</w>\": 21522,\n  \"epile\": 23150,\n  \"epilepsy</w>\": 29547,\n  \"epilo\": 31291,\n  \"epilots</w>\": 39766,\n  \"epiph\": 40561,\n  \"epiphany</w>\": 43251,\n  \"epis\": 24616,\n  \"episcop\": 28037,\n  \"episcopal</w>\": 31221,\n  \"episo\": 2708,\n  \"episode</w>\": 2965,\n  \"episodes</w>\": 11837,\n  \"epit\": 21967,\n  \"epitome</w>\": 35114,\n  \"epl</w>\": 25950,\n  \"epo\": 25810,\n  \"epp\": 39054,\n  \"epp</w>\": 39593,\n  \"eps</w>\": 4090,\n  \"epsilon</w>\": 40019,\n  \"epsom</w>\": 40364,\n  \"epstein</w>\": 34688,\n  \"eq\": 39331,\n  \"eq</w>\": 33692,\n  \"equ\": 2563,\n  \"equal\": 17373,\n  \"equal</w>\": 10433,\n  \"equality\": 48981,\n  \"equality</w>\": 9578,\n  \"equally</w>\": 18172,\n  \"equals</w>\": 30278,\n  \"equation</w>\": 28591,\n  \"equations</w>\": 38225,\n  \"eque\": 19518,\n  \"equestrian</w>\": 24728,\n  \"equi\": 8752,\n  \"equili\": 43262,\n  \"equine</w>\": 33801,\n  \"equinox</w>\": 32652,\n  \"equip\": 6526,\n  \"equip</w>\": 36979,\n  \"equipment</w>\": 6893,\n  \"equipo</w>\": 45688,\n  \"equipped</w>\": 18331,\n  \"equitable</w>\": 44717,\n  \"equities</w>\": 44015,\n  \"equity</w>\": 11293,\n  \"equivalent</w>\": 19489,\n  \"er\": 517,\n  \"er</w>\": 528,\n  \"era\": 30548,\n  \"era</w>\": 2072,\n  \"erable</w>\": 18801,\n  \"erad\": 24194,\n  \"eradic\": 36346,\n  \"eradicate</w>\": 46164,\n  \"eral</w>\": 6222,\n  \"eran</w>\": 13069,\n  \"eras\": 19325,\n  \"eras</w>\": 39090,\n  \"erase</w>\": 33893,\n  \"erased</w>\": 46762,\n  \"erasmus</w>\": 38935,\n  \"erc\": 5360,\n  \"erc</w>\": 32382,\n  \"erd</w>\": 25645,\n  \"erdo\": 21112,\n  \"erdogan</w>\": 24453,\n  \"ere\": 17907,\n  \"ere</w>\": 642,\n  \"erec\": 21526,\n  \"erected</w>\": 39365,\n  \"ered</w>\": 9097,\n  \"eres</w>\": 15751,\n  \"ergon\": 38120,\n  \"ergy</w>\": 19550,\n  \"eri\": 2769,\n  \"eri</w>\": 9509,\n  \"eria</w>\": 11634,\n  \"erial</w>\": 5409,\n  \"eric\": 1206,\n  \"eric</w>\": 5396,\n  \"erica</w>\": 13208,\n  \"erich</w>\": 26070,\n  \"erick\": 27434,\n  \"erick</w>\": 36959,\n  \"erickson</w>\": 45286,\n  \"ericsson</w>\": 39645,\n  \"eridge</w>\": 45408,\n  \"erie</w>\": 7005,\n  \"eries</w>\": 9099,\n  \"erik\": 22805,\n  \"erik</w>\": 16532,\n  \"erika</w>\": 25531,\n  \"erin\": 17532,\n  \"erin</w>\": 11333,\n  \"erina</w>\": 25176,\n  \"ering</w>\": 1785,\n  \"erit\": 23335,\n  \"eritrea</w>\": 30738,\n  \"erjee</w>\": 41665,\n  \"erly</w>\": 14380,\n  \"erm</w>\": 31649,\n  \"erman</w>\": 17990,\n  \"ern\": 6992,\n  \"ern</w>\": 12140,\n  \"ernal</w>\": 20868,\n  \"ernan</w>\": 34617,\n  \"ernation</w>\": 48796,\n  \"erne\": 33930,\n  \"ernest</w>\": 23006,\n  \"ernie</w>\": 23636,\n  \"ernity</w>\": 14653,\n  \"erno</w>\": 40812,\n  \"ernst</w>\": 30099,\n  \"ero\": 3211,\n  \"ero</w>\": 3732,\n  \"erock</w>\": 38206,\n  \"eron</w>\": 32837,\n  \"eroom</w>\": 46690,\n  \"eros</w>\": 30597,\n  \"erose</w>\": 48657,\n  \"erosion</w>\": 30174,\n  \"erotic</w>\": 30708,\n  \"erotica</w>\": 39126,\n  \"erous</w>\": 6384,\n  \"eroy</w>\": 36461,\n  \"erp</w>\": 28268,\n  \"err\": 22479,\n  \"err</w>\": 25346,\n  \"erra</w>\": 48446,\n  \"errands</w>\": 45485,\n  \"error</w>\": 12097,\n  \"errors</w>\": 21195,\n  \"erry\": 45236,\n  \"erry</w>\": 24124,\n  \"ers\": 4840,\n  \"ers</w>\": 612,\n  \"ersfc</w>\": 37925,\n  \"ership</w>\": 2884,\n  \"erson\": 25780,\n  \"erson</w>\": 6811,\n  \"ert\": 40325,\n  \"ert</w>\": 3112,\n  \"erta</w>\": 32007,\n  \"erton</w>\": 26245,\n  \"erts</w>\": 12921,\n  \"eru\": 36068,\n  \"erun</w>\": 41642,\n  \"erup\": 17093,\n  \"erupted</w>\": 48862,\n  \"eruption</w>\": 33705,\n  \"erville</w>\": 37557,\n  \"erwin</w>\": 43724,\n  \"ery\": 12467,\n  \"ery</w>\": 1692,\n  \"erz</w>\": 38711,\n  \"es\": 957,\n  \"es</w>\": 542,\n  \"esa\": 46834,\n  \"esa</w>\": 12489,\n  \"esanders</w>\": 23099,\n  \"esc\": 3330,\n  \"esc</w>\": 28420,\n  \"escal\": 15902,\n  \"escap\": 11499,\n  \"escape\": 32484,\n  \"escape</w>\": 7568,\n  \"escaped</w>\": 18707,\n  \"escapes</w>\": 29916,\n  \"escaping</w>\": 21767,\n  \"escar\": 39229,\n  \"escence</w>\": 37972,\n  \"esch\": 46760,\n  \"esch</w>\": 41945,\n  \"esco\": 32482,\n  \"escobar</w>\": 48807,\n  \"escor\": 24360,\n  \"escort</w>\": 24976,\n  \"escorted</w>\": 47667,\n  \"escorts</w>\": 48574,\n  \"escu\": 36517,\n  \"esday</w>\": 19553,\n  \"ese\": 18766,\n  \"ese</w>\": 2260,\n  \"esg</w>\": 41674,\n  \"esh\": 17119,\n  \"esh</w>\": 13407,\n  \"esha</w>\": 28799,\n  \"eshop\": 38451,\n  \"eshop</w>\": 45570,\n  \"eshopsuk</w>\": 39349,\n  \"esi</w>\": 30064,\n  \"esis</w>\": 12414,\n  \"esk\": 19359,\n  \"esl</w>\": 26201,\n  \"eso\": 29890,\n  \"eso</w>\": 28921,\n  \"esof\": 17047,\n  \"eson\": 46845,\n  \"esp\": 3849,\n  \"esp</w>\": 13870,\n  \"espa\": 37301,\n  \"espan\": 41731,\n  \"espaÃ±a</w>\": 41118,\n  \"especially</w>\": 4878,\n  \"esper\": 29216,\n  \"espino\": 46633,\n  \"espionage</w>\": 43498,\n  \"espn\": 22917,\n  \"espn</w>\": 7540,\n  \"espnu</w>\": 47747,\n  \"espo\": 34381,\n  \"esports</w>\": 16035,\n  \"espresso</w>\": 17098,\n  \"esq</w>\": 47352,\n  \"esqu\": 34616,\n  \"esque</w>\": 25877,\n  \"ess\": 3118,\n  \"ess</w>\": 9764,\n  \"essa</w>\": 39125,\n  \"essay</w>\": 12751,\n  \"essays</w>\": 27328,\n  \"esse</w>\": 22305,\n  \"essen</w>\": 30489,\n  \"essence</w>\": 17830,\n  \"essenti\": 11163,\n  \"essential\": 47264,\n  \"essential</w>\": 6895,\n  \"essentially</w>\": 30042,\n  \"essentials</w>\": 16191,\n  \"essex\": 30563,\n  \"essex</w>\": 11623,\n  \"est\": 2291,\n  \"est</w>\": 1509,\n  \"esta\": 41449,\n  \"esta</w>\": 10135,\n  \"estab\": 7010,\n  \"establi\": 8412,\n  \"establish</w>\": 19709,\n  \"established</w>\": 13143,\n  \"establishing</w>\": 29420,\n  \"establishment</w>\": 20213,\n  \"estas</w>\": 39072,\n  \"estate\": 47130,\n  \"estate</w>\": 6159,\n  \"estates</w>\": 26054,\n  \"este\": 12968,\n  \"este</w>\": 20579,\n  \"esteban</w>\": 48381,\n  \"esteem</w>\": 31541,\n  \"esteemed</w>\": 36293,\n  \"ester</w>\": 45808,\n  \"esthe\": 18468,\n  \"esther</w>\": 24393,\n  \"estim\": 8904,\n  \"estimate</w>\": 21883,\n  \"estimated</w>\": 16665,\n  \"estimates</w>\": 21957,\n  \"esto\": 31589,\n  \"esto</w>\": 23958,\n  \"estonia</w>\": 26260,\n  \"estonian</w>\": 48895,\n  \"estrada</w>\": 48116,\n  \"estre\": 31271,\n  \"estu\": 26272,\n  \"estuary</w>\": 35269,\n  \"esur\": 35758,\n  \"esville</w>\": 39187,\n  \"esy\": 46268,\n  \"et\": 1169,\n  \"et</w>\": 875,\n  \"eta</w>\": 8761,\n  \"etal</w>\": 25221,\n  \"etary</w>\": 13074,\n  \"etc</w>\": 5353,\n  \"etched</w>\": 40411,\n  \"etching</w>\": 41375,\n  \"ete\": 38820,\n  \"ete</w>\": 40245,\n  \"eter\": 8587,\n  \"eter</w>\": 17007,\n  \"eternal</w>\": 13732,\n  \"eternally</w>\": 48486,\n  \"eternity</w>\": 23832,\n  \"eters</w>\": 18392,\n  \"etf</w>\": 31661,\n  \"eth\": 4819,\n  \"eth</w>\": 5927,\n  \"ethan\": 24245,\n  \"ethan</w>\": 15958,\n  \"ethanol</w>\": 38166,\n  \"ethe\": 21312,\n  \"ethel</w>\": 45921,\n  \"ether\": 23349,\n  \"ethere\": 18705,\n  \"ethereal</w>\": 40925,\n  \"ethereum</w>\": 19612,\n  \"ethernet</w>\": 35026,\n  \"ethi\": 10327,\n  \"ethic</w>\": 39104,\n  \"ethical\": 47041,\n  \"ethical</w>\": 17679,\n  \"ethics</w>\": 13355,\n  \"ethiop\": 10897,\n  \"ethiopia</w>\": 13920,\n  \"ethiopian</w>\": 24507,\n  \"ethnic\": 30522,\n  \"ethnic</w>\": 16344,\n  \"ethnicity</w>\": 46787,\n  \"ethno\": 34225,\n  \"ethos</w>\": 48768,\n  \"eti\": 11188,\n  \"eti</w>\": 30394,\n  \"etienne</w>\": 46118,\n  \"eties</w>\": 15137,\n  \"etihad</w>\": 38489,\n  \"etiquette</w>\": 37957,\n  \"etis\": 38216,\n  \"etisation</w>\": 39733,\n  \"etna</w>\": 41940,\n  \"eto\": 27829,\n  \"eto</w>\": 33837,\n  \"eton</w>\": 44339,\n  \"etour</w>\": 41462,\n  \"etr\": 23012,\n  \"etres</w>\": 42838,\n  \"ets</w>\": 3442,\n  \"etsy\": 13237,\n  \"etsy</w>\": 6282,\n  \"etsym\": 22902,\n  \"etsymntt</w>\": 25416,\n  \"etsyshop</w>\": 44643,\n  \"ett\": 32729,\n  \"ett</w>\": 24998,\n  \"etta</w>\": 30466,\n  \"ette\": 19981,\n  \"ette</w>\": 5212,\n  \"ettes</w>\": 35326,\n  \"etto</w>\": 44219,\n  \"etty</w>\": 40759,\n  \"etu\": 36593,\n  \"etv\": 49155,\n  \"etv</w>\": 20325,\n  \"etwork</w>\": 20585,\n  \"ety\": 25920,\n  \"ety</w>\": 2746,\n  \"etz\": 36181,\n  \"etz</w>\": 25301,\n  \"eu\": 1506,\n  \"eu</w>\": 3238,\n  \"eucalyp\": 41068,\n  \"eucalyptus</w>\": 42351,\n  \"euchar\": 38362,\n  \"eugen\": 30678,\n  \"eugene</w>\": 17760,\n  \"eul\": 46749,\n  \"eun\": 16431,\n  \"eun</w>\": 26219,\n  \"eunhyuk</w>\": 47526,\n  \"eup\": 44435,\n  \"euph\": 21386,\n  \"euphoria</w>\": 41051,\n  \"eur\": 18343,\n  \"eur</w>\": 12018,\n  \"eura\": 32605,\n  \"eure\": 25311,\n  \"euref</w>\": 48017,\n  \"eureka</w>\": 31686,\n  \"euro\": 2039,\n  \"euro</w>\": 8463,\n  \"euroleague</w>\": 46821,\n  \"europa</w>\": 18290,\n  \"europale\": 42473,\n  \"europaleague</w>\": 44029,\n  \"europarl</w>\": 44922,\n  \"europe\": 4198,\n  \"europe</w>\": 3848,\n  \"european\": 26712,\n  \"european</w>\": 4759,\n  \"europeans</w>\": 37082,\n  \"euros</w>\": 22274,\n  \"eurovision</w>\": 17593,\n  \"eurozone</w>\": 42555,\n  \"eurusd</w>\": 40895,\n  \"eus</w>\": 44214,\n  \"euston</w>\": 46905,\n  \"euthan\": 43280,\n  \"euve</w>\": 40652,\n  \"eux</w>\": 25019,\n  \"ev\": 776,\n  \"ev</w>\": 10133,\n  \"eva</w>\": 6845,\n  \"evacu\": 13187,\n  \"evacuated</w>\": 26806,\n  \"evacuation</w>\": 27353,\n  \"eval\": 25139,\n  \"eval</w>\": 9703,\n  \"evalu\": 10314,\n  \"evaluate</w>\": 27174,\n  \"evaluating</w>\": 34541,\n  \"evaluation</w>\": 17640,\n  \"evan\": 12821,\n  \"evan</w>\": 12847,\n  \"evangel\": 20518,\n  \"evangeli\": 21372,\n  \"evangelical</w>\": 36151,\n  \"evangelist</w>\": 42275,\n  \"evankirstel</w>\": 46581,\n  \"evans</w>\": 8836,\n  \"evansville</w>\": 44782,\n  \"evapor\": 33352,\n  \"evasion</w>\": 48795,\n  \"eve\": 5732,\n  \"eve</w>\": 1866,\n  \"eved</w>\": 19820,\n  \"evel\": 39315,\n  \"evelyn</w>\": 26687,\n  \"evement</w>\": 8210,\n  \"even\": 6359,\n  \"even</w>\": 1427,\n  \"evening\": 34487,\n  \"evening</w>\": 2285,\n  \"evenings</w>\": 19994,\n  \"evenly</w>\": 45974,\n  \"event\": 10612,\n  \"event</w>\": 1655,\n  \"eventful</w>\": 45628,\n  \"evento</w>\": 38155,\n  \"eventprofs</w>\": 24980,\n  \"events</w>\": 3667,\n  \"eventu\": 14055,\n  \"eventual</w>\": 45321,\n  \"eventually</w>\": 14397,\n  \"ever\": 888,\n  \"ever</w>\": 1247,\n  \"everest</w>\": 21722,\n  \"everett</w>\": 25456,\n  \"everglades</w>\": 46294,\n  \"evergreen</w>\": 23852,\n  \"everlasting</w>\": 32849,\n  \"evers</w>\": 31914,\n  \"everton</w>\": 13315,\n  \"every\": 1091,\n  \"every</w>\": 1505,\n  \"everybody</w>\": 5901,\n  \"everyday\": 25049,\n  \"everyday</w>\": 5160,\n  \"everyone</w>\": 1584,\n  \"everything\": 36376,\n  \"everything</w>\": 2410,\n  \"everytime</w>\": 16911,\n  \"everywhere</w>\": 6364,\n  \"eves</w>\": 7323,\n  \"evi\": 5348,\n  \"evi</w>\": 36989,\n  \"evic\": 21336,\n  \"eviction</w>\": 37111,\n  \"eviden\": 46220,\n  \"evidence</w>\": 6439,\n  \"evident</w>\": 34529,\n  \"evie</w>\": 47195,\n  \"evil\": 23218,\n  \"evil</w>\": 6006,\n  \"eville</w>\": 16143,\n  \"eving</w>\": 24729,\n  \"evo\": 17962,\n  \"evo</w>\": 13169,\n  \"evoc\": 43133,\n  \"evol\": 5350,\n  \"evolu\": 7725,\n  \"evolution</w>\": 8902,\n  \"evolutionary</w>\": 30629,\n  \"evolve</w>\": 23406,\n  \"evolved</w>\": 22613,\n  \"evolving</w>\": 23675,\n  \"evp</w>\": 46154,\n  \"evs</w>\": 33576,\n  \"ew\": 11942,\n  \"ew</w>\": 15428,\n  \"ewan</w>\": 40247,\n  \"ewe</w>\": 48438,\n  \"ewing</w>\": 38873,\n  \"ews</w>\": 9878,\n  \"ex\": 659,\n  \"ex</w>\": 4118,\n  \"exac\": 5460,\n  \"exact</w>\": 12651,\n  \"exactly</w>\": 5840,\n  \"exagger\": 29766,\n  \"exal\": 49324,\n  \"exam\": 4428,\n  \"exam</w>\": 8785,\n  \"examination</w>\": 20970,\n  \"examine</w>\": 25728,\n  \"examined</w>\": 44004,\n  \"examiner</w>\": 29149,\n  \"examines</w>\": 28160,\n  \"examining</w>\": 30616,\n  \"example</w>\": 6228,\n  \"examples</w>\": 14790,\n  \"exams</w>\": 14028,\n  \"exas</w>\": 47536,\n  \"exc\": 1302,\n  \"excav\": 20733,\n  \"excavation</w>\": 45909,\n  \"exce\": 10999,\n  \"exceed</w>\": 32521,\n  \"exceeded</w>\": 36221,\n  \"exceeding</w>\": 47213,\n  \"exceeds</w>\": 49353,\n  \"excel\": 28351,\n  \"excel</w>\": 18754,\n  \"excell\": 3298,\n  \"excellence</w>\": 8171,\n  \"excellency</w>\": 36503,\n  \"excellent</w>\": 4239,\n  \"excelsi\": 47315,\n  \"excep\": 8882,\n  \"except</w>\": 8541,\n  \"exception</w>\": 25018,\n  \"exceptional</w>\": 13425,\n  \"exceptionally</w>\": 29306,\n  \"excer\": 17737,\n  \"excerpt</w>\": 20586,\n  \"excess</w>\": 22491,\n  \"excessive</w>\": 21332,\n  \"exchange</w>\": 6616,\n  \"exchanged</w>\": 48919,\n  \"exchanges</w>\": 29730,\n  \"exchanging</w>\": 47760,\n  \"excit\": 10510,\n  \"excite</w>\": 47711,\n  \"excited</w>\": 1889,\n  \"excitement</w>\": 11407,\n  \"exciting</w>\": 4300,\n  \"exclu\": 3114,\n  \"exclude</w>\": 49235,\n  \"excluded</w>\": 46216,\n  \"excluding</w>\": 44326,\n  \"exclusion</w>\": 40219,\n  \"exclusive</w>\": 3747,\n  \"exclusively</w>\": 13565,\n  \"exclusives</w>\": 47149,\n  \"excu\": 7324,\n  \"excur\": 27533,\n  \"excursion</w>\": 34869,\n  \"excuse</w>\": 9266,\n  \"excuses</w>\": 19388,\n  \"exe\": 3554,\n  \"exe</w>\": 48027,\n  \"exec</w>\": 15052,\n  \"execs</w>\": 35728,\n  \"execu\": 4360,\n  \"execute</w>\": 36405,\n  \"executed</w>\": 20432,\n  \"execution</w>\": 18085,\n  \"executive</w>\": 5944,\n  \"executives</w>\": 24357,\n  \"exem\": 19753,\n  \"exemp\": 28602,\n  \"exempl\": 36371,\n  \"exemplary</w>\": 39123,\n  \"exempli\": 41934,\n  \"exempt</w>\": 44278,\n  \"exemption</w>\": 47481,\n  \"exer\": 40295,\n  \"exerc\": 5932,\n  \"exercise</w>\": 7016,\n  \"exercises</w>\": 19669,\n  \"exercising</w>\": 39036,\n  \"exeter\": 32137,\n  \"exeter</w>\": 18837,\n  \"exfoli\": 38823,\n  \"exhau\": 11154,\n  \"exhaust</w>\": 21812,\n  \"exhausted</w>\": 21741,\n  \"exhausting</w>\": 40035,\n  \"exhaustion</w>\": 49221,\n  \"exhi\": 3022,\n  \"exhib\": 3783,\n  \"exhibit\": 24992,\n  \"exhibit</w>\": 8209,\n  \"exhibiting</w>\": 23889,\n  \"exhibition</w>\": 4219,\n  \"exhibitions</w>\": 28311,\n  \"exhibitor</w>\": 44192,\n  \"exhibitors</w>\": 38542,\n  \"exhibits</w>\": 30093,\n  \"exhilar\": 40262,\n  \"exhilarating</w>\": 49289,\n  \"exi\": 5297,\n  \"exico</w>\": 38712,\n  \"exile</w>\": 28566,\n  \"exist\": 10899,\n  \"exist</w>\": 9645,\n  \"existed</w>\": 23198,\n  \"existence</w>\": 13832,\n  \"existent</w>\": 43541,\n  \"existential</w>\": 38752,\n  \"existing</w>\": 12886,\n  \"exists</w>\": 14608,\n  \"exit</w>\": 9374,\n  \"exited</w>\": 37581,\n  \"exiting</w>\": 39577,\n  \"exits</w>\": 34943,\n  \"exmoor</w>\": 48260,\n  \"exo\": 15600,\n  \"exo</w>\": 5842,\n  \"exodus</w>\": 30098,\n  \"exol</w>\": 42856,\n  \"exop\": 35288,\n  \"exoplan\": 37980,\n  \"exor\": 24506,\n  \"exorcist</w>\": 46309,\n  \"exotic</w>\": 15639,\n  \"exp\": 9923,\n  \"exp</w>\": 19066,\n  \"expan\": 7512,\n  \"expand\": 10382,\n  \"expand</w>\": 13141,\n  \"expanded</w>\": 18390,\n  \"expanding</w>\": 15755,\n  \"expands</w>\": 22223,\n  \"expanse</w>\": 46886,\n  \"expansion</w>\": 10138,\n  \"expansive</w>\": 49261,\n  \"expat</w>\": 43900,\n  \"expe\": 2560,\n  \"expect\": 9802,\n  \"expect</w>\": 5716,\n  \"expectation</w>\": 34273,\n  \"expectations</w>\": 12529,\n  \"expected</w>\": 5573,\n  \"expecting</w>\": 12525,\n  \"expects</w>\": 24536,\n  \"expedition</w>\": 16761,\n  \"expeditions</w>\": 49327,\n  \"expelled</w>\": 48834,\n  \"expen\": 7216,\n  \"expend\": 29302,\n  \"expenditure</w>\": 47044,\n  \"expense</w>\": 28473,\n  \"expenses</w>\": 21797,\n  \"expensive</w>\": 9649,\n  \"exper\": 1533,\n  \"experi\": 4723,\n  \"experience\": 31867,\n  \"experience</w>\": 2415,\n  \"experienced</w>\": 10417,\n  \"experiences</w>\": 8233,\n  \"experiencing</w>\": 16643,\n  \"experiential</w>\": 44952,\n  \"experim\": 6697,\n  \"experiment</w>\": 13079,\n  \"experimental</w>\": 16539,\n  \"experimenting</w>\": 28263,\n  \"experiments</w>\": 21077,\n  \"expert</w>\": 6284,\n  \"expertise</w>\": 16555,\n  \"experts</w>\": 6960,\n  \"expi\": 26850,\n  \"expir\": 35077,\n  \"expire</w>\": 49315,\n  \"expired</w>\": 30200,\n  \"expires</w>\": 34739,\n  \"expl\": 3261,\n  \"expla\": 3517,\n  \"explain\": 48918,\n  \"explain</w>\": 7304,\n  \"explained</w>\": 14229,\n  \"explaining</w>\": 13136,\n  \"explains</w>\": 6655,\n  \"explan\": 13294,\n  \"explanation</w>\": 16577,\n  \"explanations</w>\": 34383,\n  \"explic\": 21011,\n  \"explicit</w>\": 33228,\n  \"explo\": 3586,\n  \"explode</w>\": 31262,\n  \"exploded</w>\": 28947,\n  \"explodes</w>\": 38119,\n  \"exploding</w>\": 34683,\n  \"exploit</w>\": 36953,\n  \"exploited</w>\": 48554,\n  \"explor\": 11958,\n  \"exploration</w>\": 14043,\n  \"explore\": 10405,\n  \"explore</w>\": 5147,\n  \"explorebc</w>\": 38754,\n  \"explorecanada</w>\": 36600,\n  \"explored</w>\": 25016,\n  \"explorer</w>\": 15776,\n  \"explorers</w>\": 28491,\n  \"explores</w>\": 13996,\n  \"exploring</w>\": 7584,\n  \"explosion</w>\": 13785,\n  \"explosions</w>\": 38646,\n  \"explosive</w>\": 18888,\n  \"explosives</w>\": 44705,\n  \"expo\": 7820,\n  \"expo</w>\": 6344,\n  \"expon\": 27905,\n  \"export</w>\": 14444,\n  \"exporting</w>\": 47433,\n  \"exports</w>\": 20088,\n  \"expose</w>\": 23181,\n  \"exposed</w>\": 12180,\n  \"exposes</w>\": 33575,\n  \"exposing</w>\": 28362,\n  \"exposition</w>\": 36943,\n  \"exposure</w>\": 11903,\n  \"expre\": 6085,\n  \"express\": 18553,\n  \"express</w>\": 5642,\n  \"expressed</w>\": 20777,\n  \"expresses</w>\": 31931,\n  \"expressing</w>\": 30207,\n  \"expression</w>\": 11357,\n  \"expressions</w>\": 20314,\n  \"expressive</w>\": 42060,\n  \"expressway</w>\": 31658,\n  \"exquis\": 16575,\n  \"exquisite</w>\": 17958,\n  \"ext\": 5711,\n  \"ext</w>\": 20072,\n  \"exten\": 5555,\n  \"extend</w>\": 14492,\n  \"extended</w>\": 9614,\n  \"extending</w>\": 25652,\n  \"extends</w>\": 20688,\n  \"extension</w>\": 10275,\n  \"extensions</w>\": 24525,\n  \"extensive</w>\": 16870,\n  \"extensively</w>\": 47365,\n  \"extent</w>\": 24913,\n  \"exter\": 9797,\n  \"exterior</w>\": 19352,\n  \"extermin\": 41671,\n  \"external</w>\": 15028,\n  \"extin\": 13553,\n  \"extinct</w>\": 24488,\n  \"extinction</w>\": 21186,\n  \"extingui\": 38567,\n  \"extor\": 35620,\n  \"extr\": 29082,\n  \"extra\": 6416,\n  \"extra</w>\": 4231,\n  \"extrac\": 18550,\n  \"extract</w>\": 18962,\n  \"extraction</w>\": 28789,\n  \"extracts</w>\": 45576,\n  \"extraordin\": 23628,\n  \"extraordinaire</w>\": 30909,\n  \"extraordinary</w>\": 10982,\n  \"extras</w>\": 29817,\n  \"extravag\": 22299,\n  \"extravaganza</w>\": 29461,\n  \"extre\": 3978,\n  \"extreme\": 38357,\n  \"extreme</w>\": 8331,\n  \"extremely</w>\": 6519,\n  \"extremism</w>\": 31493,\n  \"extremist</w>\": 36383,\n  \"extremists</w>\": 41425,\n  \"extru\": 43010,\n  \"ey\": 1541,\n  \"ey</w>\": 1477,\n  \"eyang</w>\": 28915,\n  \"eye\": 5034,\n  \"eye</w>\": 3272,\n  \"eyebrow</w>\": 34250,\n  \"eyebrows</w>\": 19923,\n  \"eyed</w>\": 15512,\n  \"eyeing</w>\": 34916,\n  \"eyel\": 17075,\n  \"eyelashes</w>\": 42074,\n  \"eyeliner</w>\": 33354,\n  \"eyeon</w>\": 25126,\n  \"eyes</w>\": 3095,\n  \"eyeshadow</w>\": 35213,\n  \"eyewear</w>\": 30165,\n  \"eyewitness</w>\": 36258,\n  \"eyou\": 31996,\n  \"eyour\": 40229,\n  \"eyre</w>\": 44115,\n  \"ez\": 10082,\n  \"ez</w>\": 8387,\n  \"eze\": 25993,\n  \"eze</w>\": 27229,\n  \"ezekiel</w>\": 41428,\n  \"ezra</w>\": 27552,\n  \"f\": 69,\n  \"f</w>\": 325,\n  \"fa\": 778,\n  \"fa</w>\": 2800,\n  \"faa</w>\": 27577,\n  \"fab\": 2833,\n  \"fab</w>\": 5492,\n  \"faber\": 43461,\n  \"faber</w>\": 42488,\n  \"fabi\": 29425,\n  \"fabian</w>\": 34539,\n  \"fabio</w>\": 31666,\n  \"fabric\": 16217,\n  \"fabric</w>\": 10033,\n  \"fabricated</w>\": 40851,\n  \"fabrication</w>\": 33476,\n  \"fabrics</w>\": 23159,\n  \"fabulous</w>\": 5189,\n  \"fac\": 1053,\n  \"fac</w>\": 35438,\n  \"facade</w>\": 29217,\n  \"face\": 2545,\n  \"face</w>\": 1710,\n  \"facebook\": 36156,\n  \"facebook</w>\": 2943,\n  \"faced</w>\": 10941,\n  \"faceli\": 32023,\n  \"facelift</w>\": 36380,\n  \"faceoff</w>\": 42710,\n  \"facep\": 45285,\n  \"faces</w>\": 4905,\n  \"faceted</w>\": 43435,\n  \"facetime</w>\": 24076,\n  \"facial</w>\": 11909,\n  \"facil\": 39973,\n  \"facilit\": 13567,\n  \"facilitate</w>\": 26733,\n  \"facilitated</w>\": 43853,\n  \"facilitating</w>\": 34796,\n  \"facilities</w>\": 10388,\n  \"facility</w>\": 8165,\n  \"facing</w>\": 7619,\n  \"fact\": 17189,\n  \"fact</w>\": 3598,\n  \"factfriday</w>\": 27953,\n  \"faction</w>\": 14629,\n  \"factor\": 21082,\n  \"factor</w>\": 8124,\n  \"factories</w>\": 36492,\n  \"factors</w>\": 12733,\n  \"factory\": 42483,\n  \"factory</w>\": 6072,\n  \"facts</w>\": 5085,\n  \"factual</w>\": 45471,\n  \"faculty</w>\": 9504,\n  \"facup</w>\": 25283,\n  \"fad\": 12632,\n  \"fad</w>\": 47669,\n  \"fade</w>\": 20486,\n  \"faded</w>\": 26051,\n  \"fades</w>\": 40441,\n  \"fading</w>\": 32882,\n  \"fadnavis</w>\": 38945,\n  \"faf\": 31052,\n  \"faf</w>\": 43903,\n  \"fag\": 25617,\n  \"fag</w>\": 39305,\n  \"fah\": 25495,\n  \"fah</w>\": 35429,\n  \"fahren\": 45527,\n  \"fai\": 20519,\n  \"fai</w>\": 26384,\n  \"fail\": 7105,\n  \"fail</w>\": 6801,\n  \"failed</w>\": 8314,\n  \"failing</w>\": 15757,\n  \"fails</w>\": 13388,\n  \"failure</w>\": 8732,\n  \"failures</w>\": 25442,\n  \"faint</w>\": 30807,\n  \"fair\": 3031,\n  \"fair</w>\": 2849,\n  \"fairbanks</w>\": 43962,\n  \"faire\": 34745,\n  \"faire</w>\": 20798,\n  \"fairfax</w>\": 29368,\n  \"fairfield</w>\": 29664,\n  \"fairgrounds</w>\": 38325,\n  \"fairi\": 28884,\n  \"fairies</w>\": 33590,\n  \"fairly</w>\": 14961,\n  \"fairmont</w>\": 41547,\n  \"fairness</w>\": 29388,\n  \"fairs</w>\": 8655,\n  \"fairtrade</w>\": 33361,\n  \"fairview</w>\": 43479,\n  \"fairway</w>\": 44022,\n  \"fairy\": 17021,\n  \"fairy</w>\": 10444,\n  \"fairytale</w>\": 28944,\n  \"fais\": 23542,\n  \"faisal</w>\": 35459,\n  \"fait</w>\": 20567,\n  \"faith\": 10653,\n  \"faith</w>\": 5080,\n  \"faithful</w>\": 15511,\n  \"faiz\": 41775,\n  \"fake\": 18794,\n  \"fake</w>\": 5777,\n  \"faken\": 22853,\n  \"fakenews</w>\": 26943,\n  \"fakespeare</w>\": 49095,\n  \"fal\": 2778,\n  \"fal</w>\": 40494,\n  \"fala\": 47120,\n  \"falcon\": 22498,\n  \"falcon</w>\": 13571,\n  \"falcons</w>\": 13834,\n  \"falk\": 34648,\n  \"falkirk</w>\": 44080,\n  \"fall\": 6489,\n  \"fall</w>\": 2359,\n  \"fallen</w>\": 8688,\n  \"falling\": 48709,\n  \"falling</w>\": 7293,\n  \"fallon\": 39596,\n  \"fallon</w>\": 21281,\n  \"fallontonight</w>\": 44627,\n  \"fallout\": 49365,\n  \"fallout</w>\": 16009,\n  \"falls</w>\": 4778,\n  \"falmouth</w>\": 38261,\n  \"false\": 38948,\n  \"false</w>\": 9078,\n  \"falsely</w>\": 42321,\n  \"fam\": 1058,\n  \"fam</w>\": 5128,\n  \"fame</w>\": 6573,\n  \"famed</w>\": 23302,\n  \"famer</w>\": 24554,\n  \"famil\": 3395,\n  \"famili\": 8488,\n  \"familia</w>\": 25622,\n  \"familiar</w>\": 10020,\n  \"families</w>\": 4612,\n  \"family\": 8137,\n  \"family</w>\": 1315,\n  \"familyfun</w>\": 46308,\n  \"familytime</w>\": 47236,\n  \"familytravel</w>\": 38222,\n  \"famine</w>\": 35847,\n  \"famous\": 44811,\n  \"famous</w>\": 4096,\n  \"famously</w>\": 44505,\n  \"fan\": 1675,\n  \"fan</w>\": 2261,\n  \"fanart\": 41059,\n  \"fanart</w>\": 7855,\n  \"fanartfriday</w>\": 45346,\n  \"fanatic</w>\": 36643,\n  \"fanatics</w>\": 39610,\n  \"fanbase</w>\": 36921,\n  \"fanboy</w>\": 43369,\n  \"fanc\": 29017,\n  \"fancafe</w>\": 45080,\n  \"fanci\": 35908,\n  \"fanclub</w>\": 31530,\n  \"fancy\": 47622,\n  \"fancy</w>\": 6733,\n  \"fand\": 19684,\n  \"fandom\": 47634,\n  \"fandom</w>\": 11534,\n  \"fanfest</w>\": 42916,\n  \"fanfic</w>\": 47243,\n  \"fang\": 14269,\n  \"fang</w>\": 27428,\n  \"fangirl</w>\": 28813,\n  \"fangirling</w>\": 39463,\n  \"fanning</w>\": 37282,\n  \"fanny</w>\": 30401,\n  \"fans\": 32454,\n  \"fans</w>\": 1840,\n  \"fansign</w>\": 25288,\n  \"fant\": 4467,\n  \"fanta\": 2703,\n  \"fantaken</w>\": 39412,\n  \"fantasia</w>\": 49306,\n  \"fantastic\": 31289,\n  \"fantastic</w>\": 2935,\n  \"fantasy\": 15124,\n  \"fantasy</w>\": 5267,\n  \"fantasyfootball</w>\": 35713,\n  \"fao</w>\": 31155,\n  \"faq</w>\": 28533,\n  \"far\": 1578,\n  \"far</w>\": 2384,\n  \"fara</w>\": 48562,\n  \"farage</w>\": 28340,\n  \"farah</w>\": 31547,\n  \"fare\": 8620,\n  \"fare</w>\": 6461,\n  \"fares</w>\": 27525,\n  \"farewell</w>\": 10734,\n  \"fargo</w>\": 18870,\n  \"fari\": 26197,\n  \"farley</w>\": 43761,\n  \"farm\": 9066,\n  \"farm</w>\": 3985,\n  \"farmer\": 19735,\n  \"farmer</w>\": 10474,\n  \"farmers\": 29752,\n  \"farmers</w>\": 6402,\n  \"farmersmarket</w>\": 41808,\n  \"farmhouse</w>\": 26293,\n  \"farming</w>\": 10399,\n  \"farmington</w>\": 49305,\n  \"farmland</w>\": 45258,\n  \"farms</w>\": 11277,\n  \"farn\": 27527,\n  \"faroo\": 39147,\n  \"farra\": 33657,\n  \"farrakhan</w>\": 46293,\n  \"farrell</w>\": 24234,\n  \"fart</w>\": 34664,\n  \"farther</w>\": 42233,\n  \"fas\": 4830,\n  \"fas</w>\": 42995,\n  \"fasci\": 17191,\n  \"fascin\": 7327,\n  \"fascinated</w>\": 32964,\n  \"fascinating</w>\": 8640,\n  \"fascism</w>\": 28213,\n  \"fascist</w>\": 23870,\n  \"fascists</w>\": 43598,\n  \"fash\": 42682,\n  \"fashi\": 2099,\n  \"fashion\": 6976,\n  \"fashion</w>\": 2444,\n  \"fashionable</w>\": 24597,\n  \"fashionblogger</w>\": 31726,\n  \"fashioned</w>\": 21563,\n  \"fashioni\": 26062,\n  \"fashionista</w>\": 30415,\n  \"fashions</w>\": 37601,\n  \"fashionshow</w>\": 45653,\n  \"fashionweek</w>\": 28684,\n  \"fass\": 42398,\n  \"fast\": 8509,\n  \"fast</w>\": 1953,\n  \"fasten\": 44990,\n  \"faster</w>\": 8835,\n  \"fastest</w>\": 9808,\n  \"fasting</w>\": 24656,\n  \"fat\": 4751,\n  \"fat</w>\": 5484,\n  \"fatal</w>\": 12124,\n  \"fatalities</w>\": 44168,\n  \"fatally</w>\": 34069,\n  \"fate\": 26315,\n  \"fate</w>\": 11734,\n  \"father\": 11607,\n  \"father</w>\": 3224,\n  \"fathers</w>\": 12780,\n  \"fathersday</w>\": 16731,\n  \"fati\": 13430,\n  \"fatigue</w>\": 23747,\n  \"fatima</w>\": 28202,\n  \"fats</w>\": 30151,\n  \"fatt\": 44131,\n  \"fatty</w>\": 22953,\n  \"fau\": 5571,\n  \"fau</w>\": 31381,\n  \"faucet</w>\": 44273,\n  \"faul\": 16230,\n  \"faulkner</w>\": 37840,\n  \"fault</w>\": 13862,\n  \"faults</w>\": 42752,\n  \"faulty</w>\": 47103,\n  \"fauna</w>\": 30808,\n  \"faust</w>\": 44772,\n  \"faux</w>\": 19429,\n  \"fav\": 1355,\n  \"fav</w>\": 5426,\n  \"fave</w>\": 7272,\n  \"faves</w>\": 18003,\n  \"favor\": 1766,\n  \"favor</w>\": 12160,\n  \"favorable</w>\": 35392,\n  \"favored</w>\": 46640,\n  \"favorite\": 35262,\n  \"favorite</w>\": 1916,\n  \"favorited</w>\": 36926,\n  \"favorites</w>\": 10564,\n  \"favors</w>\": 36085,\n  \"favour\": 3111,\n  \"favour</w>\": 20469,\n  \"favourite</w>\": 3342,\n  \"favourites</w>\": 16585,\n  \"favs</w>\": 18879,\n  \"faw\": 21800,\n  \"fawad\": 46425,\n  \"fawn</w>\": 48624,\n  \"fax\": 32535,\n  \"fax</w>\": 9337,\n  \"fay\": 8939,\n  \"fay</w>\": 40074,\n  \"faye</w>\": 30257,\n  \"fayette\": 32043,\n  \"fayette</w>\": 19782,\n  \"fayetteville</w>\": 37771,\n  \"fayre</w>\": 34982,\n  \"faz\": 26238,\n  \"faze</w>\": 44880,\n  \"fb\": 22637,\n  \"fb</w>\": 3307,\n  \"fball</w>\": 29663,\n  \"fbf</w>\": 20004,\n  \"fbi</w>\": 10293,\n  \"fbloggers</w>\": 41389,\n  \"fbs</w>\": 48454,\n  \"fc\": 4278,\n  \"fc</w>\": 1399,\n  \"fca</w>\": 24540,\n  \"fcb\": 26639,\n  \"fcb</w>\": 25045,\n  \"fcbarcelona</w>\": 32174,\n  \"fcbayern</w>\": 35033,\n  \"fcblive</w>\": 44608,\n  \"fcc</w>\": 21240,\n  \"fck\": 40080,\n  \"fck</w>\": 49263,\n  \"fcofficial</w>\": 27805,\n  \"fcs</w>\": 32095,\n  \"fcu</w>\": 47898,\n  \"fd\": 16972,\n  \"fd</w>\": 11525,\n  \"fda</w>\": 17823,\n  \"fdi</w>\": 45579,\n  \"fdn</w>\": 18563,\n  \"fdny</w>\": 41084,\n  \"fdr</w>\": 42298,\n  \"fe\": 623,\n  \"fe</w>\": 873,\n  \"fear\": 8744,\n  \"fear</w>\": 5402,\n  \"feared</w>\": 31154,\n  \"fearless</w>\": 17470,\n  \"fears</w>\": 13867,\n  \"fearthe\": 33449,\n  \"feasi\": 34977,\n  \"feast\": 37963,\n  \"feast</w>\": 9564,\n  \"feat\": 1703,\n  \"feat</w>\": 5611,\n  \"feather\": 24905,\n  \"feather</w>\": 17871,\n  \"feathers</w>\": 21138,\n  \"featherweight</w>\": 44939,\n  \"feature\": 30413,\n  \"feature</w>\": 4527,\n  \"featured</w>\": 4743,\n  \"features</w>\": 4643,\n  \"featuring</w>\": 3706,\n  \"feb</w>\": 4317,\n  \"febru\": 4202,\n  \"february</w>\": 4248,\n  \"fect</w>\": 31293,\n  \"fed\": 22518,\n  \"fed</w>\": 7035,\n  \"feder\": 4737,\n  \"federal</w>\": 6369,\n  \"federation</w>\": 15530,\n  \"federer</w>\": 18246,\n  \"federico</w>\": 40539,\n  \"fedex</w>\": 32603,\n  \"fedora</w>\": 45111,\n  \"feds</w>\": 30593,\n  \"fee\": 28242,\n  \"fee</w>\": 9224,\n  \"feed\": 6662,\n  \"feed</w>\": 5839,\n  \"feedback</w>\": 8683,\n  \"feeder</w>\": 24482,\n  \"feeders</w>\": 44523,\n  \"feeding</w>\": 9879,\n  \"feeds</w>\": 21788,\n  \"feel\": 2408,\n  \"feel</w>\": 2051,\n  \"feelin</w>\": 19903,\n  \"feeling\": 33087,\n  \"feeling</w>\": 3045,\n  \"feelings</w>\": 9452,\n  \"feels</w>\": 4808,\n  \"feelthe\": 22322,\n  \"feelthebern</w>\": 27743,\n  \"fees</w>\": 11765,\n  \"feet</w>\": 4804,\n  \"fei\": 23441,\n  \"fei</w>\": 34217,\n  \"fein\": 46707,\n  \"feinstein</w>\": 41313,\n  \"fel\": 2081,\n  \"fel</w>\": 20304,\n  \"feld\": 45913,\n  \"feld</w>\": 14219,\n  \"feldman</w>\": 41942,\n  \"feli\": 7498,\n  \"felic\": 25845,\n  \"felici\": 23379,\n  \"felicia</w>\": 41139,\n  \"felicidades</w>\": 41648,\n  \"felicity</w>\": 35123,\n  \"feline</w>\": 29471,\n  \"felipe</w>\": 27681,\n  \"felix\": 33455,\n  \"felix</w>\": 16514,\n  \"feliz\": 26104,\n  \"feliz</w>\": 20221,\n  \"fell\": 33540,\n  \"fell</w>\": 6266,\n  \"fella</w>\": 17586,\n  \"fellas</w>\": 18787,\n  \"feller</w>\": 29226,\n  \"fellow\": 12099,\n  \"fellow</w>\": 5242,\n  \"fellows</w>\": 15766,\n  \"fellowship</w>\": 13857,\n  \"felony</w>\": 31068,\n  \"felt</w>\": 5413,\n  \"fem\": 24574,\n  \"fem</w>\": 36615,\n  \"fema</w>\": 41721,\n  \"female\": 22062,\n  \"female</w>\": 3970,\n  \"females</w>\": 21028,\n  \"femi</w>\": 38607,\n  \"femin\": 11423,\n  \"femini\": 11894,\n  \"feminine</w>\": 24911,\n  \"feminism</w>\": 18784,\n  \"feminist</w>\": 14921,\n  \"feminists</w>\": 38809,\n  \"femme</w>\": 31331,\n  \"fen\": 5509,\n  \"fen</w>\": 25024,\n  \"fence</w>\": 12679,\n  \"fences</w>\": 34312,\n  \"fencing</w>\": 23489,\n  \"fender</w>\": 17117,\n  \"fener\": 41208,\n  \"fenerbah\": 46652,\n  \"feng</w>\": 33291,\n  \"fennel</w>\": 28689,\n  \"fent\": 26395,\n  \"fenton</w>\": 47265,\n  \"fenway</w>\": 29206,\n  \"fer\": 1765,\n  \"fer</w>\": 2897,\n  \"fera</w>\": 37705,\n  \"feral</w>\": 29972,\n  \"ferdin\": 25541,\n  \"ferdinand</w>\": 27591,\n  \"fere</w>\": 43144,\n  \"feren\": 35652,\n  \"ference</w>\": 19984,\n  \"ferg</w>\": 44938,\n  \"fergie</w>\": 39119,\n  \"fergu\": 10988,\n  \"fergus</w>\": 42041,\n  \"ferguson</w>\": 11904,\n  \"fermentation</w>\": 45817,\n  \"fermented</w>\": 36886,\n  \"fern\": 10747,\n  \"fern</w>\": 21685,\n  \"fernandes</w>\": 44391,\n  \"fernandez</w>\": 23436,\n  \"fernando</w>\": 17140,\n  \"ferns</w>\": 38277,\n  \"feroci\": 45652,\n  \"ferr\": 7256,\n  \"ferra\": 47911,\n  \"ferrari</w>\": 9606,\n  \"ferre\": 29626,\n  \"ferred</w>\": 10432,\n  \"ferreira</w>\": 48686,\n  \"ferrell</w>\": 41112,\n  \"ferrer</w>\": 38904,\n  \"ferri\": 42008,\n  \"ferries</w>\": 28489,\n  \"ferris</w>\": 27532,\n  \"ferry\": 38936,\n  \"ferry</w>\": 10278,\n  \"fers</w>\": 12378,\n  \"fert\": 14925,\n  \"fert</w>\": 43662,\n  \"fertil\": 41987,\n  \"fertile</w>\": 44837,\n  \"fertili\": 23912,\n  \"fertility</w>\": 23528,\n  \"fertilizer</w>\": 36786,\n  \"fery</w>\": 47448,\n  \"fes</w>\": 32300,\n  \"fest\": 17383,\n  \"fest</w>\": 2590,\n  \"festa</w>\": 42124,\n  \"festi\": 1943,\n  \"festiv\": 19222,\n  \"festival\": 20946,\n  \"festival</w>\": 2240,\n  \"festivals</w>\": 17834,\n  \"festive</w>\": 9533,\n  \"festivities</w>\": 21020,\n  \"fet\": 21409,\n  \"feta</w>\": 31705,\n  \"fetal</w>\": 42031,\n  \"fetch</w>\": 30271,\n  \"fete</w>\": 34629,\n  \"fett</w>\": 37979,\n  \"fetus</w>\": 26768,\n  \"feu\": 24912,\n  \"feu</w>\": 32990,\n  \"feud</w>\": 27365,\n  \"fever\": 40896,\n  \"fever</w>\": 9989,\n  \"fevre</w>\": 43861,\n  \"few</w>\": 1939,\n  \"fewer</w>\": 19128,\n  \"fex\": 41584,\n  \"fex</w>\": 26392,\n  \"fey\": 39069,\n  \"fey</w>\": 23298,\n  \"fez</w>\": 43081,\n  \"ff\": 1021,\n  \"ff</w>\": 1304,\n  \"ffa</w>\": 15355,\n  \"ffame</w>\": 42873,\n  \"ffc</w>\": 19832,\n  \"ffe\": 1138,\n  \"ffe</w>\": 8631,\n  \"ffect</w>\": 29151,\n  \"ffed</w>\": 8448,\n  \"ffee</w>\": 26377,\n  \"ffel</w>\": 22656,\n  \"ffen</w>\": 46537,\n  \"ffer\": 27369,\n  \"ffer</w>\": 11636,\n  \"ffers</w>\": 32163,\n  \"fferty</w>\": 44771,\n  \"ffes</w>\": 46441,\n  \"ffey</w>\": 30138,\n  \"fff</w>\": 28106,\n  \"ffi\": 19961,\n  \"ffic\": 4762,\n  \"ffice</w>\": 26044,\n  \"ffici\": 3639,\n  \"fficial\": 39818,\n  \"fficial</w>\": 6463,\n  \"fficiency</w>\": 27800,\n  \"fficient</w>\": 20424,\n  \"ffin\": 12779,\n  \"ffin</w>\": 7367,\n  \"ffing</w>\": 16592,\n  \"ffins</w>\": 17898,\n  \"ffl</w>\": 39490,\n  \"ffle</w>\": 7749,\n  \"ffler</w>\": 39819,\n  \"ffles</w>\": 19344,\n  \"ffman</w>\": 15823,\n  \"ffo</w>\": 42264,\n  \"ffs</w>\": 4424,\n  \"ffxiv</w>\": 26569,\n  \"ffxv</w>\": 46786,\n  \"ffy\": 26404,\n  \"ffy</w>\": 7795,\n  \"fg\": 45977,\n  \"fg</w>\": 6823,\n  \"fgm</w>\": 32178,\n  \"fgo</w>\": 46113,\n  \"fh\": 21649,\n  \"fh</w>\": 21010,\n  \"fhs</w>\": 45094,\n  \"fi\": 701,\n  \"fi</w>\": 3589,\n  \"fia</w>\": 8827,\n  \"fiable</w>\": 34373,\n  \"fianc\": 27752,\n  \"fiance</w>\": 44114,\n  \"fiancÃ©</w>\": 34039,\n  \"fiasco</w>\": 40944,\n  \"fiat</w>\": 16740,\n  \"fiawec</w>\": 39485,\n  \"fib</w>\": 40594,\n  \"fiba</w>\": 34993,\n  \"fiber\": 35074,\n  \"fiber</w>\": 12612,\n  \"fibers</w>\": 44587,\n  \"fibre</w>\": 21401,\n  \"fibro\": 21294,\n  \"fibrosis</w>\": 36307,\n  \"fic\": 1788,\n  \"fic</w>\": 2059,\n  \"fica</w>\": 26952,\n  \"fically</w>\": 14854,\n  \"fication</w>\": 4523,\n  \"fications</w>\": 12512,\n  \"ficial</w>\": 48192,\n  \"fics</w>\": 42505,\n  \"fiction</w>\": 6218,\n  \"fictional</w>\": 25570,\n  \"fid\": 34197,\n  \"fid</w>\": 23966,\n  \"fidd\": 25218,\n  \"fiddle</w>\": 35968,\n  \"fide</w>\": 45375,\n  \"fidel\": 21740,\n  \"fidel</w>\": 36837,\n  \"fidelity</w>\": 30109,\n  \"fidget</w>\": 48664,\n  \"fie\": 28487,\n  \"fie</w>\": 10348,\n  \"fied\": 29642,\n  \"fied</w>\": 2853,\n  \"fiel\": 1361,\n  \"field\": 7571,\n  \"field</w>\": 1570,\n  \"fielder</w>\": 11046,\n  \"fieldhouse</w>\": 37969,\n  \"fielding</w>\": 30465,\n  \"fields</w>\": 6494,\n  \"fieldwork</w>\": 33155,\n  \"fiends</w>\": 37869,\n  \"fier\": 11167,\n  \"fier</w>\": 10598,\n  \"fierc\": 48609,\n  \"fierce</w>\": 13896,\n  \"fiercely</w>\": 49039,\n  \"fiers</w>\": 16113,\n  \"fiery</w>\": 24557,\n  \"fies</w>\": 9537,\n  \"fiesta</w>\": 14580,\n  \"fif\": 5309,\n  \"fifa\": 21976,\n  \"fifa</w>\": 8516,\n  \"fifaworldcup</w>\": 38819,\n  \"fifawwc</w>\": 41329,\n  \"fife</w>\": 24374,\n  \"fifteen</w>\": 29504,\n  \"fifth\": 25515,\n  \"fifth</w>\": 8772,\n  \"fifthharmony</w>\": 31075,\n  \"fifty\": 24456,\n  \"fifty</w>\": 15978,\n  \"fig\": 4814,\n  \"fig</w>\": 20719,\n  \"figaro</w>\": 48044,\n  \"figh\": 23274,\n  \"fight\": 5262,\n  \"fight</w>\": 2757,\n  \"fighter\": 35884,\n  \"fighter</w>\": 6438,\n  \"fighters</w>\": 7371,\n  \"fightfor\": 48909,\n  \"fightfor</w>\": 35740,\n  \"fighting\": 38625,\n  \"fighting</w>\": 4652,\n  \"fighton</w>\": 45578,\n  \"fights</w>\": 12132,\n  \"figs</w>\": 38882,\n  \"figu\": 6390,\n  \"figur\": 16948,\n  \"figurative</w>\": 44042,\n  \"figure\": 48820,\n  \"figure</w>\": 5274,\n  \"figured</w>\": 15630,\n  \"figures</w>\": 8739,\n  \"figurine</w>\": 33306,\n  \"figuring</w>\": 31513,\n  \"fiji\": 48270,\n  \"fiji</w>\": 18285,\n  \"fik</w>\": 46589,\n  \"fil\": 1142,\n  \"fil</w>\": 14915,\n  \"fila</w>\": 30992,\n  \"filament</w>\": 49252,\n  \"file\": 12545,\n  \"file</w>\": 4512,\n  \"filed</w>\": 13864,\n  \"files</w>\": 7850,\n  \"filet</w>\": 43155,\n  \"fili\": 9590,\n  \"filing</w>\": 16576,\n  \"filip\": 14368,\n  \"filipino</w>\": 19153,\n  \"fill\": 15904,\n  \"fill</w>\": 6277,\n  \"filled</w>\": 5589,\n  \"filler</w>\": 32816,\n  \"fillers</w>\": 45005,\n  \"fillet</w>\": 39276,\n  \"filling</w>\": 9736,\n  \"fillion</w>\": 38048,\n  \"fillmore</w>\": 43922,\n  \"fills</w>\": 21750,\n  \"filly</w>\": 27690,\n  \"film\": 5117,\n  \"film</w>\": 1860,\n  \"filmed</w>\": 15801,\n  \"filmfare</w>\": 42224,\n  \"filmfest</w>\": 24508,\n  \"filmfestival</w>\": 28066,\n  \"filming</w>\": 6866,\n  \"filmmaker</w>\": 17202,\n  \"filmmakers</w>\": 24896,\n  \"filmmaking</w>\": 18226,\n  \"films</w>\": 5370,\n  \"fils</w>\": 40271,\n  \"filter</w>\": 7541,\n  \"filtered</w>\": 29926,\n  \"filtering</w>\": 47770,\n  \"filters</w>\": 18385,\n  \"filth</w>\": 39713,\n  \"filthy</w>\": 26899,\n  \"filtr\": 21408,\n  \"filtration</w>\": 42036,\n  \"fim</w>\": 47525,\n  \"fin\": 735,\n  \"fin</w>\": 10663,\n  \"fina</w>\": 34497,\n  \"final\": 11968,\n  \"final</w>\": 1755,\n  \"finale</w>\": 7844,\n  \"finalfantasy</w>\": 44543,\n  \"finalfour</w>\": 46999,\n  \"finalist</w>\": 12620,\n  \"finalists</w>\": 13422,\n  \"finalized</w>\": 48930,\n  \"finally</w>\": 1992,\n  \"finals</w>\": 4536,\n  \"finan\": 4807,\n  \"finance</w>\": 6117,\n  \"finances</w>\": 28767,\n  \"financi\": 12846,\n  \"financial\": 19783,\n  \"financial</w>\": 4930,\n  \"financially</w>\": 28124,\n  \"financing</w>\": 18375,\n  \"finch</w>\": 18523,\n  \"find\": 18638,\n  \"find</w>\": 1416,\n  \"finder</w>\": 15045,\n  \"finders</w>\": 43884,\n  \"findia</w>\": 47064,\n  \"finding\": 37455,\n  \"finding</w>\": 6002,\n  \"findings</w>\": 16529,\n  \"findlay</w>\": 48227,\n  \"findom</w>\": 36463,\n  \"finds</w>\": 6680,\n  \"findyour\": 25936,\n  \"findyourpark</w>\": 38924,\n  \"fine\": 12042,\n  \"fine</w>\": 3797,\n  \"fineart\": 7484,\n  \"fineart</w>\": 16005,\n  \"fineartamerica</w>\": 7724,\n  \"fined</w>\": 20094,\n  \"finely</w>\": 46120,\n  \"finer</w>\": 36681,\n  \"fines</w>\": 25053,\n  \"finesse</w>\": 46047,\n  \"finest</w>\": 7707,\n  \"fing\": 6485,\n  \"fing</w>\": 17955,\n  \"finger\": 13480,\n  \"finger</w>\": 8895,\n  \"fingerprint</w>\": 39579,\n  \"fingers</w>\": 9690,\n  \"fini\": 2405,\n  \"finish\": 42178,\n  \"finish</w>\": 3958,\n  \"finished</w>\": 3078,\n  \"finisher</w>\": 38636,\n  \"finishers</w>\": 48661,\n  \"finishes</w>\": 13078,\n  \"finishing</w>\": 7912,\n  \"finite</w>\": 48312,\n  \"finity\": 41463,\n  \"finity</w>\": 21273,\n  \"fink</w>\": 40158,\n  \"finland</w>\": 10775,\n  \"finley</w>\": 41652,\n  \"finn\": 28479,\n  \"finn</w>\": 16925,\n  \"finna</w>\": 35180,\n  \"finnish</w>\": 19616,\n  \"fino</w>\": 30083,\n  \"fins</w>\": 32810,\n  \"fintech\": 48929,\n  \"fintech</w>\": 8899,\n  \"fion\": 27476,\n  \"fiona</w>\": 20099,\n  \"fior\": 37086,\n  \"fiore</w>\": 44997,\n  \"fioren\": 33188,\n  \"fiorentina</w>\": 43713,\n  \"fios</w>\": 42521,\n  \"fir\": 770,\n  \"fir</w>\": 16233,\n  \"fire\": 2951,\n  \"fire</w>\": 1769,\n  \"firearm</w>\": 40311,\n  \"firearms</w>\": 23960,\n  \"fireball</w>\": 40543,\n  \"firec\": 42806,\n  \"fired</w>\": 8846,\n  \"firefighter</w>\": 20498,\n  \"firefighters</w>\": 12600,\n  \"firefly</w>\": 33997,\n  \"firefox</w>\": 35372,\n  \"fireman</w>\": 46085,\n  \"firen\": 34752,\n  \"firenze</w>\": 38445,\n  \"fireplace</w>\": 23050,\n  \"fires</w>\": 8749,\n  \"fireside</w>\": 36185,\n  \"firework</w>\": 40750,\n  \"fireworks</w>\": 10641,\n  \"firing</w>\": 15105,\n  \"firm\": 16936,\n  \"firm</w>\": 7705,\n  \"firmly</w>\": 29156,\n  \"firms</w>\": 13655,\n  \"firmware</w>\": 42691,\n  \"first\": 6853,\n  \"first</w>\": 874,\n  \"firstdayof\": 44297,\n  \"firsth\": 48512,\n  \"firsts</w>\": 47884,\n  \"firth</w>\": 26078,\n  \"fis\": 7846,\n  \"fis</w>\": 47683,\n  \"fiscal</w>\": 20825,\n  \"fischer</w>\": 26532,\n  \"fish\": 6431,\n  \"fish</w>\": 2759,\n  \"fisher\": 11175,\n  \"fisher</w>\": 9176,\n  \"fisheries</w>\": 24612,\n  \"fisherman</w>\": 25055,\n  \"fishermen</w>\": 28547,\n  \"fishers</w>\": 42065,\n  \"fishery</w>\": 49057,\n  \"fishes</w>\": 35470,\n  \"fishing\": 31703,\n  \"fishing</w>\": 4935,\n  \"fishy</w>\": 35665,\n  \"fist\": 48340,\n  \"fist</w>\": 17085,\n  \"fit\": 2366,\n  \"fit</w>\": 2478,\n  \"fitbit</w>\": 33768,\n  \"fitch</w>\": 44614,\n  \"fitfam</w>\": 20662,\n  \"fitnes\": 47285,\n  \"fitness\": 20044,\n  \"fitness</w>\": 4838,\n  \"fits</w>\": 6401,\n  \"fitt\": 32994,\n  \"fitted</w>\": 14863,\n  \"fitter</w>\": 42096,\n  \"fitters</w>\": 32364,\n  \"fitting</w>\": 11769,\n  \"fittings</w>\": 45787,\n  \"fitz\": 11120,\n  \"fitz</w>\": 25913,\n  \"fitzgerald</w>\": 20606,\n  \"fitzpatrick</w>\": 37141,\n  \"fiu</w>\": 38374,\n  \"five\": 19508,\n  \"five</w>\": 3127,\n  \"fives</w>\": 44066,\n  \"fix\": 4596,\n  \"fix</w>\": 6028,\n  \"fixed</w>\": 9393,\n  \"fixes</w>\": 25473,\n  \"fixing</w>\": 17423,\n  \"fixture</w>\": 17317,\n  \"fixtures</w>\": 19904,\n  \"fizz</w>\": 31242,\n  \"fj\": 43183,\n  \"fj</w>\": 46447,\n  \"fjor\": 31260,\n  \"fk</w>\": 12410,\n  \"fl\": 1082,\n  \"fl</w>\": 2685,\n  \"fla\": 1577,\n  \"fla</w>\": 20292,\n  \"flag\": 11536,\n  \"flag</w>\": 4859,\n  \"flagged</w>\": 45012,\n  \"flags</w>\": 12221,\n  \"flagship</w>\": 19779,\n  \"flagstaff</w>\": 40406,\n  \"flair</w>\": 24938,\n  \"flake</w>\": 21221,\n  \"flakes</w>\": 20934,\n  \"flam\": 10559,\n  \"flame\": 40351,\n  \"flame</w>\": 13484,\n  \"flamen\": 28826,\n  \"flamenco</w>\": 37362,\n  \"flames</w>\": 13441,\n  \"flamin\": 42693,\n  \"flaming</w>\": 34782,\n  \"flamingo</w>\": 30323,\n  \"flan\": 14572,\n  \"flanagan</w>\": 28641,\n  \"flanders</w>\": 34837,\n  \"flank</w>\": 44553,\n  \"flann\": 39510,\n  \"flannel</w>\": 37807,\n  \"flap</w>\": 35253,\n  \"flappy</w>\": 40241,\n  \"flare</w>\": 21185,\n  \"flares</w>\": 46088,\n  \"flash\": 6089,\n  \"flash</w>\": 5815,\n  \"flashback\": 14616,\n  \"flashback</w>\": 11988,\n  \"flashbackfriday</w>\": 15014,\n  \"flashbacks</w>\": 47056,\n  \"flashes</w>\": 31259,\n  \"flashing</w>\": 31764,\n  \"flashlight</w>\": 37256,\n  \"flask</w>\": 36194,\n  \"flat\": 8986,\n  \"flat</w>\": 6313,\n  \"flats</w>\": 17228,\n  \"flatt\": 45498,\n  \"flattering</w>\": 43267,\n  \"flaun\": 41421,\n  \"flav\": 7191,\n  \"flavo\": 28895,\n  \"flavor\": 31835,\n  \"flavor</w>\": 11818,\n  \"flavored</w>\": 29350,\n  \"flavorful</w>\": 49135,\n  \"flavors</w>\": 16930,\n  \"flavour</w>\": 17026,\n  \"flavoured</w>\": 42397,\n  \"flavours</w>\": 21083,\n  \"flaw\": 14268,\n  \"flaw</w>\": 34978,\n  \"flawed</w>\": 35136,\n  \"flawless</w>\": 15531,\n  \"flaws</w>\": 30492,\n  \"flax</w>\": 43443,\n  \"fle\": 2428,\n  \"fle</w>\": 44964,\n  \"flea</w>\": 24883,\n  \"fleck</w>\": 28143,\n  \"fled</w>\": 26731,\n  \"flee\": 19427,\n  \"flee</w>\": 30167,\n  \"fleece</w>\": 25038,\n  \"fleeing</w>\": 30543,\n  \"fleek</w>\": 43513,\n  \"fleet\": 35922,\n  \"fleet</w>\": 9147,\n  \"fleetwood</w>\": 28883,\n  \"fleming</w>\": 25769,\n  \"fler</w>\": 48789,\n  \"flesh</w>\": 17495,\n  \"flet\": 16102,\n  \"fletcher</w>\": 19810,\n  \"fleur</w>\": 28593,\n  \"flew</w>\": 13768,\n  \"flex\": 16426,\n  \"flex</w>\": 12038,\n  \"flexi\": 10032,\n  \"flexibility</w>\": 22547,\n  \"flexible</w>\": 14502,\n  \"flexing</w>\": 48483,\n  \"fli\": 2472,\n  \"flick\": 13746,\n  \"flick</w>\": 23414,\n  \"flickr</w>\": 17755,\n  \"flies</w>\": 8070,\n  \"flight\": 24701,\n  \"flight</w>\": 3795,\n  \"flights</w>\": 10515,\n  \"flin\": 24730,\n  \"flin</w>\": 43816,\n  \"flinders</w>\": 44647,\n  \"fling</w>\": 22768,\n  \"flint\": 28306,\n  \"flint</w>\": 18324,\n  \"flip\": 20385,\n  \"flip</w>\": 11035,\n  \"flipk\": 30829,\n  \"flipkart</w>\": 33154,\n  \"flipped</w>\": 28144,\n  \"flipping</w>\": 25881,\n  \"flips</w>\": 35089,\n  \"flir\": 24330,\n  \"flirt</w>\": 38352,\n  \"flirting</w>\": 35243,\n  \"flix</w>\": 40663,\n  \"flo\": 1945,\n  \"flo</w>\": 20711,\n  \"float</w>\": 16123,\n  \"floating</w>\": 12619,\n  \"floats</w>\": 33272,\n  \"flock\": 36297,\n  \"flock</w>\": 21822,\n  \"flondon</w>\": 47366,\n  \"floo\": 4062,\n  \"flood\": 23793,\n  \"flood</w>\": 7148,\n  \"flooded</w>\": 19706,\n  \"flooding</w>\": 10204,\n  \"floods</w>\": 16369,\n  \"floor\": 23657,\n  \"floor</w>\": 4125,\n  \"flooring</w>\": 19227,\n  \"floors</w>\": 15671,\n  \"flop</w>\": 22994,\n  \"floppy</w>\": 38267,\n  \"flops</w>\": 29146,\n  \"flor\": 15784,\n  \"flor</w>\": 41669,\n  \"flora</w>\": 18906,\n  \"floral</w>\": 10732,\n  \"florals</w>\": 48331,\n  \"floren\": 37706,\n  \"florence</w>\": 11617,\n  \"flores</w>\": 21537,\n  \"flori\": 3482,\n  \"florian</w>\": 41861,\n  \"florida\": 34264,\n  \"florida</w>\": 3966,\n  \"florist</w>\": 38403,\n  \"floss</w>\": 36453,\n  \"flotus</w>\": 35181,\n  \"flour</w>\": 18592,\n  \"flouri\": 23239,\n  \"flourish</w>\": 36038,\n  \"flow\": 2180,\n  \"flow</w>\": 5608,\n  \"flower\": 12772,\n  \"flower</w>\": 4055,\n  \"flowering</w>\": 19953,\n  \"flowers</w>\": 4023,\n  \"flowing</w>\": 14922,\n  \"flown</w>\": 25659,\n  \"flows</w>\": 16715,\n  \"floyd\": 46369,\n  \"floyd</w>\": 13656,\n  \"flu\": 3698,\n  \"flu</w>\": 13528,\n  \"fluctu\": 40181,\n  \"fluence</w>\": 38169,\n  \"fluent</w>\": 30025,\n  \"fluff</w>\": 31174,\n  \"fluffy\": 40346,\n  \"fluffy</w>\": 17054,\n  \"fluid\": 43803,\n  \"fluid</w>\": 16717,\n  \"fluids</w>\": 41490,\n  \"fluor\": 45127,\n  \"fluore\": 26974,\n  \"fluorescent</w>\": 35036,\n  \"fluori\": 45611,\n  \"flur\": 31591,\n  \"flush</w>\": 25777,\n  \"flushing</w>\": 43754,\n  \"flute</w>\": 23746,\n  \"flux</w>\": 25249,\n  \"flwx</w>\": 30907,\n  \"fly\": 5666,\n  \"fly</w>\": 3228,\n  \"flye\": 30873,\n  \"flyeagles\": 39927,\n  \"flyeaglesfly</w>\": 39931,\n  \"flyer</w>\": 11875,\n  \"flyers</w>\": 14181,\n  \"flyfishing</w>\": 31800,\n  \"flying\": 20782,\n  \"flying</w>\": 4610,\n  \"flyn\": 40676,\n  \"flynn</w>\": 15721,\n  \"flyo\": 33506,\n  \"flyover</w>\": 38083,\n  \"fm\": 13715,\n  \"fm</w>\": 3689,\n  \"fman</w>\": 25152,\n  \"fml</w>\": 26730,\n  \"fmr</w>\": 32875,\n  \"fn\": 22773,\n  \"fn</w>\": 21763,\n  \"fnc</w>\": 46506,\n  \"fo\": 898,\n  \"fo</w>\": 6157,\n  \"foal</w>\": 40386,\n  \"foam\": 30039,\n  \"foam</w>\": 14587,\n  \"foamed</w>\": 26711,\n  \"fob</w>\": 40315,\n  \"focal</w>\": 30934,\n  \"focu\": 5827,\n  \"focus</w>\": 4353,\n  \"focused</w>\": 9319,\n  \"focuses</w>\": 20093,\n  \"focusing</w>\": 15551,\n  \"fod\": 31015,\n  \"fod</w>\": 43299,\n  \"fodils</w>\": 44411,\n  \"foe</w>\": 22952,\n  \"foes</w>\": 46279,\n  \"fog</w>\": 9417,\n  \"foggy</w>\": 19770,\n  \"foil</w>\": 17302,\n  \"fol\": 1106,\n  \"fol</w>\": 48616,\n  \"fold\": 35201,\n  \"fold</w>\": 11021,\n  \"foldable</w>\": 48307,\n  \"folded</w>\": 25233,\n  \"folder</w>\": 25717,\n  \"folding</w>\": 15464,\n  \"folds</w>\": 24266,\n  \"foley</w>\": 22850,\n  \"foli\": 7713,\n  \"folia</w>\": 48964,\n  \"foliage</w>\": 26350,\n  \"folio</w>\": 10772,\n  \"folk\": 10665,\n  \"folk</w>\": 6032,\n  \"folke\": 47190,\n  \"folkl\": 27273,\n  \"folklore\": 22133,\n  \"folklore</w>\": 28620,\n  \"folklorethursday</w>\": 23270,\n  \"folks</w>\": 5422,\n  \"follo\": 41417,\n  \"follow\": 1964,\n  \"follow</w>\": 1979,\n  \"followart</w>\": 40957,\n  \"followback</w>\": 33863,\n  \"followed</w>\": 6499,\n  \"follower</w>\": 17039,\n  \"followers</w>\": 4856,\n  \"following</w>\": 3473,\n  \"followme</w>\": 29668,\n  \"followparty</w>\": 44757,\n  \"follows</w>\": 11287,\n  \"followthe\": 30747,\n  \"folly</w>\": 41408,\n  \"folsom</w>\": 42108,\n  \"fom\": 34540,\n  \"fon\": 5017,\n  \"fon</w>\": 38318,\n  \"fond</w>\": 19964,\n  \"fonda</w>\": 44609,\n  \"fondue</w>\": 48321,\n  \"fone</w>\": 40672,\n  \"font\": 37610,\n  \"font</w>\": 16248,\n  \"fontaine</w>\": 37864,\n  \"fontana</w>\": 43643,\n  \"fontein</w>\": 45062,\n  \"fonts</w>\": 32801,\n  \"foo\": 1183,\n  \"foo</w>\": 23435,\n  \"food\": 4586,\n  \"food</w>\": 1559,\n  \"foodand\": 38317,\n  \"foodbank</w>\": 31926,\n  \"foodie\": 30762,\n  \"foodie</w>\": 9847,\n  \"foodies</w>\": 22416,\n  \"foodnetwork</w>\": 46793,\n  \"foods</w>\": 7057,\n  \"foodsecurity</w>\": 49329,\n  \"foodtruck</w>\": 47682,\n  \"fool\": 23959,\n  \"fool</w>\": 12212,\n  \"fooled</w>\": 28761,\n  \"fooling</w>\": 47964,\n  \"foolish</w>\": 33824,\n  \"fools</w>\": 15946,\n  \"foot\": 6702,\n  \"foot</w>\": 4738,\n  \"footage</w>\": 11130,\n  \"footb\": 33466,\n  \"football\": 9376,\n  \"football</w>\": 1882,\n  \"footballer</w>\": 20646,\n  \"footballers</w>\": 30269,\n  \"footed</w>\": 38040,\n  \"footh\": 25951,\n  \"foothills</w>\": 37020,\n  \"footpath</w>\": 48858,\n  \"footprint</w>\": 23206,\n  \"footprints</w>\": 39640,\n  \"footsteps</w>\": 27289,\n  \"footwear</w>\": 22772,\n  \"footy\": 39866,\n  \"footy</w>\": 18922,\n  \"for\": 645,\n  \"for</w>\": 556,\n  \"forage</w>\": 46871,\n  \"foraging</w>\": 39056,\n  \"forall</w>\": 17824,\n  \"forbe\": 49098,\n  \"forbes</w>\": 13925,\n  \"forbi\": 24754,\n  \"forbidden</w>\": 25164,\n  \"force\": 12068,\n  \"force</w>\": 2869,\n  \"forced</w>\": 8201,\n  \"forces</w>\": 5381,\n  \"forchange</w>\": 35848,\n  \"forcing</w>\": 21573,\n  \"ford\": 3751,\n  \"ford</w>\": 1623,\n  \"fordfc</w>\": 28581,\n  \"fordham</w>\": 48792,\n  \"fords</w>\": 29351,\n  \"fordshire</w>\": 14645,\n  \"fore\": 1484,\n  \"fore</w>\": 1332,\n  \"forec\": 34155,\n  \"forecast</w>\": 7361,\n  \"forecasting</w>\": 38133,\n  \"forecasts</w>\": 27696,\n  \"foreclo\": 44916,\n  \"forefront</w>\": 37679,\n  \"foreground</w>\": 35186,\n  \"forehead</w>\": 25394,\n  \"foreig\": 26497,\n  \"foreign\": 42255,\n  \"foreign</w>\": 6046,\n  \"foreigners</w>\": 38549,\n  \"foreman</w>\": 36174,\n  \"foremost</w>\": 42128,\n  \"foren\": 16526,\n  \"forensic</w>\": 23158,\n  \"forensics</w>\": 38763,\n  \"forest\": 18760,\n  \"forest</w>\": 4167,\n  \"forestation</w>\": 33939,\n  \"forestry</w>\": 26281,\n  \"forests</w>\": 14095,\n  \"forever\": 14748,\n  \"forever</w>\": 3225,\n  \"forevery\": 40605,\n  \"forex\": 40200,\n  \"forex</w>\": 17395,\n  \"forfe\": 44871,\n  \"forge</w>\": 19232,\n  \"forged</w>\": 28105,\n  \"forget\": 46153,\n  \"forget</w>\": 2678,\n  \"forgets</w>\": 35613,\n  \"forgetting</w>\": 25452,\n  \"forgi\": 22080,\n  \"forgive</w>\": 15332,\n  \"forgiven</w>\": 44894,\n  \"forgiveness</w>\": 23585,\n  \"forgood</w>\": 39169,\n  \"forgot</w>\": 6483,\n  \"forgotten</w>\": 7994,\n  \"fork\": 24501,\n  \"fork</w>\": 13700,\n  \"forkids</w>\": 48571,\n  \"forklift</w>\": 43202,\n  \"forks</w>\": 28769,\n  \"forlife</w>\": 17624,\n  \"form\": 1157,\n  \"form</w>\": 1907,\n  \"forma</w>\": 38829,\n  \"formal</w>\": 12978,\n  \"formally</w>\": 24867,\n  \"format\": 16252,\n  \"format</w>\": 11874,\n  \"formation</w>\": 2510,\n  \"formations</w>\": 37715,\n  \"formative</w>\": 48882,\n  \"formats</w>\": 32085,\n  \"forme</w>\": 42085,\n  \"formed</w>\": 6528,\n  \"former</w>\": 2276,\n  \"formerly</w>\": 20866,\n  \"formid\": 38599,\n  \"formidable</w>\": 39834,\n  \"forming</w>\": 15443,\n  \"formity</w>\": 42290,\n  \"forms</w>\": 5161,\n  \"formu\": 8689,\n  \"formul\": 23923,\n  \"formula\": 24485,\n  \"formula</w>\": 10776,\n  \"formulae</w>\": 34586,\n  \"formulated</w>\": 45066,\n  \"forre\": 38876,\n  \"forrest</w>\": 25205,\n  \"forrester</w>\": 45338,\n  \"forsa\": 48958,\n  \"forsale</w>\": 13303,\n  \"forster</w>\": 42923,\n  \"forsy\": 29629,\n  \"forsyth</w>\": 40952,\n  \"fort\": 12300,\n  \"fort</w>\": 2921,\n  \"forte\": 44350,\n  \"forte</w>\": 27367,\n  \"forth\": 17068,\n  \"forth</w>\": 11932,\n  \"forthcoming</w>\": 19989,\n  \"forthe\": 12521,\n  \"forti\": 26984,\n  \"fortified</w>\": 46486,\n  \"fortn\": 14428,\n  \"fortnight</w>\": 39235,\n  \"fortnite\": 38734,\n  \"fortnite</w>\": 17890,\n  \"fortress</w>\": 19988,\n  \"fortun\": 6950,\n  \"fortunate</w>\": 19898,\n  \"fortunately</w>\": 34358,\n  \"fortune\": 40931,\n  \"fortune</w>\": 11451,\n  \"fortunes</w>\": 41989,\n  \"forty</w>\": 24399,\n  \"forum\": 37851,\n  \"forum</w>\": 4538,\n  \"forums</w>\": 31518,\n  \"forwar\": 34364,\n  \"forward\": 47031,\n  \"forward</w>\": 2342,\n  \"forwards</w>\": 38974,\n  \"foryou</w>\": 35150,\n  \"forz\": 46056,\n  \"forza\": 33293,\n  \"forza</w>\": 28089,\n  \"fos\": 36925,\n  \"fos</w>\": 22081,\n  \"foss\": 14240,\n  \"foss</w>\": 37911,\n  \"fossil\": 20419,\n  \"fossil</w>\": 15202,\n  \"fossilfriday</w>\": 26079,\n  \"fossils</w>\": 30652,\n  \"foster\": 26778,\n  \"foster</w>\": 8139,\n  \"fostering</w>\": 35996,\n  \"fosters</w>\": 37644,\n  \"foto\": 15908,\n  \"foto</w>\": 12823,\n  \"fotogra\": 23687,\n  \"fotografia</w>\": 40256,\n  \"fotos</w>\": 26124,\n  \"fou\": 14516,\n  \"fought</w>\": 10844,\n  \"foul</w>\": 19784,\n  \"foun\": 3154,\n  \"found\": 3454,\n  \"found</w>\": 1546,\n  \"foundation</w>\": 4058,\n  \"foundations</w>\": 25219,\n  \"founded</w>\": 12240,\n  \"founder</w>\": 5145,\n  \"founders</w>\": 14602,\n  \"founding</w>\": 15317,\n  \"foundry</w>\": 31426,\n  \"fountain\": 44863,\n  \"fountain</w>\": 13405,\n  \"fountains</w>\": 37411,\n  \"four\": 5113,\n  \"four</w>\": 2721,\n  \"foursquare</w>\": 34484,\n  \"fourteen</w>\": 46255,\n  \"fourth</w>\": 7516,\n  \"fourthofjuly</w>\": 47805,\n  \"fow\": 17084,\n  \"fowl</w>\": 31685,\n  \"fowler</w>\": 20980,\n  \"fox\": 5007,\n  \"fox</w>\": 3240,\n  \"foxandfriends</w>\": 45841,\n  \"foxes</w>\": 24145,\n  \"foxnews</w>\": 18830,\n  \"foxsports</w>\": 39267,\n  \"foxtv</w>\": 49396,\n  \"foxx</w>\": 32993,\n  \"foxy</w>\": 27945,\n  \"foy</w>\": 30284,\n  \"foyer</w>\": 38011,\n  \"foyle</w>\": 47902,\n  \"fp\": 28058,\n  \"fp</w>\": 8941,\n  \"fpl</w>\": 27970,\n  \"fpp</w>\": 36464,\n  \"fps</w>\": 25300,\n  \"fpv</w>\": 43175,\n  \"fr\": 936,\n  \"fr</w>\": 5512,\n  \"fra\": 3368,\n  \"fra</w>\": 15644,\n  \"frac\": 15607,\n  \"fracking</w>\": 21894,\n  \"fractal</w>\": 46471,\n  \"fraction</w>\": 26788,\n  \"fractu\": 25847,\n  \"fracture</w>\": 28995,\n  \"fractured</w>\": 37421,\n  \"fractures</w>\": 46213,\n  \"frag\": 13093,\n  \"fragile</w>\": 23579,\n  \"fragment</w>\": 39209,\n  \"fragments</w>\": 41424,\n  \"fragr\": 15403,\n  \"fragrance</w>\": 17874,\n  \"fragrances</w>\": 44567,\n  \"fragrant</w>\": 37030,\n  \"fram\": 27987,\n  \"frame\": 11029,\n  \"frame</w>\": 6481,\n  \"framed</w>\": 13135,\n  \"frames</w>\": 15479,\n  \"framework</w>\": 13195,\n  \"frameworks</w>\": 43136,\n  \"framing</w>\": 24539,\n  \"frampton</w>\": 41733,\n  \"fran\": 2118,\n  \"fran</w>\": 18878,\n  \"franc\": 3872,\n  \"franc</w>\": 42340,\n  \"franca\": 48952,\n  \"france\": 12045,\n  \"france</w>\": 3552,\n  \"frances</w>\": 20803,\n  \"francesca</w>\": 32327,\n  \"francesco</w>\": 25816,\n  \"franch\": 11756,\n  \"franchi\": 46438,\n  \"franchise</w>\": 13664,\n  \"franci\": 46458,\n  \"francis\": 22187,\n  \"francis</w>\": 7660,\n  \"francisco</w>\": 6887,\n  \"franco\": 17934,\n  \"franco</w>\": 17052,\n  \"francois</w>\": 29317,\n  \"frank\": 5390,\n  \"frank</w>\": 5229,\n  \"franken\": 20487,\n  \"franken</w>\": 48252,\n  \"frankenstein</w>\": 26410,\n  \"frankfur\": 17442,\n  \"frankfurt</w>\": 18598,\n  \"franki\": 39227,\n  \"frankie\": 38373,\n  \"frankie</w>\": 16215,\n  \"franklin\": 40935,\n  \"franklin</w>\": 9999,\n  \"frankly</w>\": 38015,\n  \"franks</w>\": 42855,\n  \"frans</w>\": 47892,\n  \"franz</w>\": 25449,\n  \"franÃ§\": 38381,\n  \"fraser\": 39082,\n  \"fraser</w>\": 16754,\n  \"frat\": 15225,\n  \"frat</w>\": 39292,\n  \"fraternity</w>\": 24433,\n  \"frau\": 23063,\n  \"fraud\": 40647,\n  \"fraud</w>\": 9961,\n  \"fraudul\": 42655,\n  \"fraudulent</w>\": 47408,\n  \"fray</w>\": 41154,\n  \"frazier</w>\": 32841,\n  \"frc</w>\": 41507,\n  \"fre\": 821,\n  \"fre</w>\": 43165,\n  \"freak\": 20352,\n  \"freak</w>\": 13701,\n  \"freaked</w>\": 43511,\n  \"freakin</w>\": 23900,\n  \"freaking</w>\": 11992,\n  \"freaks</w>\": 27009,\n  \"freaky</w>\": 31583,\n  \"freck\": 33328,\n  \"freckles</w>\": 48036,\n  \"fred\": 9486,\n  \"fred</w>\": 6678,\n  \"freddie\": 41890,\n  \"freddie</w>\": 17014,\n  \"freddy</w>\": 24394,\n  \"freder\": 10745,\n  \"frederic</w>\": 41165,\n  \"frederick\": 37103,\n  \"frederick</w>\": 18570,\n  \"fredo</w>\": 48241,\n  \"free\": 2065,\n  \"free</w>\": 1139,\n  \"freebie</w>\": 35865,\n  \"freebies</w>\": 28630,\n  \"freec\": 46569,\n  \"freed\": 12585,\n  \"freed</w>\": 23392,\n  \"freedom\": 17992,\n  \"freedom</w>\": 4511,\n  \"freedoms</w>\": 32500,\n  \"freef\": 48678,\n  \"freel\": 14174,\n  \"freelance</w>\": 21942,\n  \"freely</w>\": 24436,\n  \"freeman</w>\": 16450,\n  \"freep\": 32499,\n  \"freepalestine</w>\": 39242,\n  \"freer\": 44676,\n  \"frees\": 27455,\n  \"freestyle</w>\": 15594,\n  \"freeway</w>\": 24927,\n  \"freeze</w>\": 14187,\n  \"freezer</w>\": 25390,\n  \"freezing</w>\": 12499,\n  \"frei\": 30183,\n  \"freight</w>\": 17023,\n  \"fremantle</w>\": 48012,\n  \"fremont</w>\": 34578,\n  \"fren\": 2919,\n  \"french\": 13118,\n  \"french</w>\": 3461,\n  \"frenzy</w>\": 30084,\n  \"frequ\": 9211,\n  \"frequencies</w>\": 45319,\n  \"frequency</w>\": 18825,\n  \"frequent</w>\": 19836,\n  \"frequently</w>\": 22434,\n  \"fresco</w>\": 31609,\n  \"fresh\": 4065,\n  \"fresh</w>\": 2975,\n  \"fresher</w>\": 49284,\n  \"freshers</w>\": 35810,\n  \"freshest</w>\": 46809,\n  \"freshly</w>\": 16081,\n  \"freshman</w>\": 9381,\n  \"freshmen</w>\": 21292,\n  \"freshness</w>\": 45872,\n  \"freshwater</w>\": 24803,\n  \"fresno\": 40879,\n  \"fresno</w>\": 20995,\n  \"fret</w>\": 40510,\n  \"freud</w>\": 40787,\n  \"frey\": 22136,\n  \"frey</w>\": 9082,\n  \"fri\": 815,\n  \"fri</w>\": 6882,\n  \"friars</w>\": 30513,\n  \"fric\": 18981,\n  \"frick</w>\": 46304,\n  \"friction</w>\": 38563,\n  \"frid</w>\": 46388,\n  \"frida</w>\": 36001,\n  \"friday\": 6350,\n  \"friday</w>\": 1461,\n  \"fridayfeeling</w>\": 11952,\n  \"fridaymotivation</w>\": 38544,\n  \"fridaynight\": 44858,\n  \"fridayreads</w>\": 37736,\n  \"fridays</w>\": 15589,\n  \"fridaythe</w>\": 47642,\n  \"fridge</w>\": 13491,\n  \"fridges</w>\": 40734,\n  \"frie\": 36999,\n  \"fried\": 13743,\n  \"fried</w>\": 7310,\n  \"friedman</w>\": 29402,\n  \"friedrich</w>\": 34171,\n  \"friend\": 3017,\n  \"friend</w>\": 1625,\n  \"friendly\": 44612,\n  \"friendly</w>\": 4681,\n  \"friends\": 38875,\n  \"friends</w>\": 1574,\n  \"friendship\": 42674,\n  \"friendship</w>\": 7679,\n  \"friendships</w>\": 28840,\n  \"fries</w>\": 11369,\n  \"frifotos</w>\": 40493,\n  \"friger\": 20785,\n  \"friggin</w>\": 48300,\n  \"frigh\": 34831,\n  \"fright\": 24277,\n  \"fright</w>\": 40207,\n  \"frightened</w>\": 47136,\n  \"frightening</w>\": 39290,\n  \"fringe</w>\": 10640,\n  \"fris\": 37252,\n  \"frisbee</w>\": 45768,\n  \"frisco</w>\": 35945,\n  \"frit\": 34614,\n  \"fritz</w>\": 29860,\n  \"friyay</w>\": 38887,\n  \"frm</w>\": 12951,\n  \"fro\": 626,\n  \"fro</w>\": 26603,\n  \"frock</w>\": 45306,\n  \"frog\": 26494,\n  \"frog</w>\": 11438,\n  \"frogs</w>\": 20781,\n  \"from\": 8330,\n  \"from</w>\": 633,\n  \"frome</w>\": 48691,\n  \"fromhome</w>\": 41477,\n  \"fromthe\": 18756,\n  \"fron\": 1847,\n  \"fron</w>\": 18036,\n  \"front\": 10996,\n  \"front</w>\": 2184,\n  \"frontal</w>\": 35794,\n  \"frontier</w>\": 18253,\n  \"frontiers</w>\": 38396,\n  \"frontline</w>\": 29589,\n  \"frontman</w>\": 36775,\n  \"fronts</w>\": 26846,\n  \"froome</w>\": 48560,\n  \"frosh</w>\": 47069,\n  \"frost\": 39420,\n  \"frost</w>\": 11619,\n  \"frosted</w>\": 35988,\n  \"frosting</w>\": 33872,\n  \"frosty</w>\": 22760,\n  \"froze</w>\": 47788,\n  \"frozen\": 42464,\n  \"frozen</w>\": 8507,\n  \"frs</w>\": 26216,\n  \"fru\": 3248,\n  \"fruit\": 16771,\n  \"fruit</w>\": 5190,\n  \"fruitful</w>\": 31494,\n  \"fruits</w>\": 13282,\n  \"fruity</w>\": 22320,\n  \"frustr\": 16046,\n  \"frustrated</w>\": 25111,\n  \"frustrating</w>\": 31342,\n  \"frustration</w>\": 30535,\n  \"fry\": 33914,\n  \"fry</w>\": 13686,\n  \"fryer</w>\": 49217,\n  \"frying</w>\": 38516,\n  \"fs\": 23699,\n  \"fs</w>\": 3854,\n  \"fsa</w>\": 33373,\n  \"fsu\": 44185,\n  \"fsu</w>\": 19317,\n  \"ft\": 3391,\n  \"ft</w>\": 981,\n  \"fta</w>\": 41975,\n  \"ftc</w>\": 33752,\n  \"fted</w>\": 5612,\n  \"fter</w>\": 25063,\n  \"fthe\": 22886,\n  \"ftheday</w>\": 9823,\n  \"fting</w>\": 6174,\n  \"fton</w>\": 26605,\n  \"ftp</w>\": 42649,\n  \"fts</w>\": 3767,\n  \"ftse</w>\": 46717,\n  \"ftw</w>\": 19298,\n  \"fty</w>\": 17494,\n  \"fu\": 665,\n  \"fu</w>\": 9098,\n  \"fuch\": 42617,\n  \"fudge</w>\": 24270,\n  \"fue</w>\": 43723,\n  \"fuego</w>\": 41500,\n  \"fuel\": 21113,\n  \"fuel</w>\": 5945,\n  \"fueled</w>\": 28792,\n  \"fueling</w>\": 38793,\n  \"fuelled</w>\": 48357,\n  \"fuels</w>\": 19365,\n  \"fuentes</w>\": 44393,\n  \"fuer\": 29645,\n  \"fug\": 29227,\n  \"fugitive</w>\": 39257,\n  \"fuji\": 15573,\n  \"fuji</w>\": 21634,\n  \"fujifilm</w>\": 24765,\n  \"fuk</w>\": 31051,\n  \"fuku\": 20728,\n  \"fukushima</w>\": 33929,\n  \"ful\": 1814,\n  \"ful</w>\": 857,\n  \"fulbright</w>\": 41834,\n  \"fulfill\": 43675,\n  \"fulfill</w>\": 27467,\n  \"fulfilled</w>\": 29919,\n  \"fulfilling</w>\": 30621,\n  \"fulfillment</w>\": 45573,\n  \"fulham</w>\": 25574,\n  \"full\": 9407,\n  \"full</w>\": 1476,\n  \"fuller</w>\": 20225,\n  \"fullerton</w>\": 42822,\n  \"fullest</w>\": 35603,\n  \"fully\": 39142,\n  \"fully</w>\": 2401,\n  \"fulness</w>\": 10526,\n  \"fuls</w>\": 41606,\n  \"fulton</w>\": 26725,\n  \"fum</w>\": 38393,\n  \"fumble</w>\": 49373,\n  \"fun\": 1229,\n  \"fun</w>\": 1499,\n  \"func\": 8679,\n  \"function</w>\": 8093,\n  \"functional</w>\": 12885,\n  \"functionality</w>\": 33316,\n  \"functioning</w>\": 25479,\n  \"functions</w>\": 18001,\n  \"fund\": 19089,\n  \"fund</w>\": 4877,\n  \"fundam\": 11670,\n  \"fundament\": 18852,\n  \"fundamental</w>\": 17627,\n  \"fundamentally</w>\": 45378,\n  \"fundamentals</w>\": 27887,\n  \"funday</w>\": 15439,\n  \"funded</w>\": 10588,\n  \"funding</w>\": 5588,\n  \"fundra\": 6201,\n  \"fundraiser</w>\": 10049,\n  \"fundraising</w>\": 10755,\n  \"funds</w>\": 7066,\n  \"funer\": 40693,\n  \"funeral</w>\": 10606,\n  \"funfact</w>\": 31596,\n  \"funfactfriday</w>\": 40710,\n  \"fungal</w>\": 38838,\n  \"fungi</w>\": 27837,\n  \"fungus</w>\": 30677,\n  \"funk\": 37353,\n  \"funk</w>\": 13372,\n  \"funko\": 49402,\n  \"funko</w>\": 23697,\n  \"funky</w>\": 16492,\n  \"funnel</w>\": 27862,\n  \"funnier</w>\": 42232,\n  \"funniest</w>\": 15557,\n  \"funny\": 19124,\n  \"funny</w>\": 3789,\n  \"funrun</w>\": 34185,\n  \"fur\": 2395,\n  \"fur</w>\": 9686,\n  \"furi\": 40816,\n  \"furious</w>\": 17522,\n  \"furman</w>\": 49238,\n  \"furn\": 21348,\n  \"furnace</w>\": 31913,\n  \"furnished</w>\": 37388,\n  \"furnitu\": 45696,\n  \"furniture</w>\": 7993,\n  \"furry\": 33414,\n  \"furry</w>\": 15351,\n  \"fursuit\": 25306,\n  \"fursuit</w>\": 43083,\n  \"fursuitfriday</w>\": 27917,\n  \"further</w>\": 5583,\n  \"fury</w>\": 14404,\n  \"fus</w>\": 18419,\n  \"fuse</w>\": 23386,\n  \"fused</w>\": 38994,\n  \"fusion\": 44661,\n  \"fusion</w>\": 9364,\n  \"fuss</w>\": 26331,\n  \"fut\": 21460,\n  \"fut</w>\": 34049,\n  \"futbol</w>\": 33014,\n  \"futsal</w>\": 20558,\n  \"futu\": 33454,\n  \"futur\": 38840,\n  \"future\": 7959,\n  \"future</w>\": 1904,\n  \"futureof\": 22599,\n  \"futureofwork</w>\": 33202,\n  \"futures</w>\": 13488,\n  \"futuri\": 19068,\n  \"futurism</w>\": 48435,\n  \"futurist</w>\": 48086,\n  \"futuristic</w>\": 30987,\n  \"fuzz\": 47128,\n  \"fuzz</w>\": 40443,\n  \"fuzzy</w>\": 25876,\n  \"fv\": 29795,\n  \"fw\": 23934,\n  \"fw</w>\": 5277,\n  \"fwd</w>\": 27052,\n  \"fx\": 17807,\n  \"fx</w>\": 9025,\n  \"fy\": 8440,\n  \"fy</w>\": 2702,\n  \"fyi</w>\": 16014,\n  \"fying</w>\": 5294,\n  \"fz</w>\": 46400,\n  \"fÃ©\": 34072,\n  \"g\": 70,\n  \"g</w>\": 326,\n  \"ga\": 1275,\n  \"ga</w>\": 1531,\n  \"gaa</w>\": 10715,\n  \"gaal</w>\": 40867,\n  \"gaard</w>\": 24645,\n  \"gab\": 3927,\n  \"gab</w>\": 37382,\n  \"gabbana</w>\": 36272,\n  \"gabby\": 48115,\n  \"gabby</w>\": 24567,\n  \"gabe</w>\": 18916,\n  \"gabi</w>\": 41931,\n  \"gable</w>\": 33387,\n  \"gables</w>\": 40928,\n  \"gabri\": 8311,\n  \"gabriel\": 31684,\n  \"gabriel</w>\": 13244,\n  \"gabrielle</w>\": 33572,\n  \"gaby</w>\": 46420,\n  \"gac</w>\": 32520,\n  \"gad\": 7786,\n  \"gad</w>\": 44651,\n  \"gadget</w>\": 25525,\n  \"gadgets</w>\": 22840,\n  \"gado</w>\": 29489,\n  \"gae</w>\": 22003,\n  \"gael</w>\": 35663,\n  \"gaelic</w>\": 31173,\n  \"gaf\": 21354,\n  \"gaf</w>\": 32670,\n  \"gag\": 14121,\n  \"gag</w>\": 18844,\n  \"gaga</w>\": 9782,\n  \"gage</w>\": 21081,\n  \"gah</w>\": 27750,\n  \"gai\": 24214,\n  \"gai</w>\": 25153,\n  \"gaia</w>\": 41269,\n  \"gail\": 41160,\n  \"gail</w>\": 27676,\n  \"gain\": 21536,\n  \"gain</w>\": 6202,\n  \"gaine\": 35747,\n  \"gained</w>\": 14489,\n  \"gaines</w>\": 49225,\n  \"gainesville</w>\": 40427,\n  \"gaining</w>\": 15260,\n  \"gains\": 42751,\n  \"gains</w>\": 12107,\n  \"gal\": 2001,\n  \"gal</w>\": 4488,\n  \"gala</w>\": 7211,\n  \"galac\": 18864,\n  \"galactic</w>\": 25514,\n  \"galap\": 41115,\n  \"galapagos</w>\": 44057,\n  \"galat\": 39853,\n  \"galatasar\": 42413,\n  \"galatasaray</w>\": 47787,\n  \"galax\": 5647,\n  \"galaxies</w>\": 32435,\n  \"galaxy\": 32130,\n  \"galaxy</w>\": 6545,\n  \"gale\": 37658,\n  \"gale</w>\": 21380,\n  \"galerie</w>\": 44539,\n  \"gales</w>\": 48633,\n  \"gali\": 17546,\n  \"gali</w>\": 30552,\n  \"galicia</w>\": 47927,\n  \"galileo</w>\": 39671,\n  \"gall\": 3011,\n  \"gall</w>\": 33374,\n  \"galla\": 16847,\n  \"gallagher</w>\": 19168,\n  \"galleria</w>\": 40656,\n  \"galleries</w>\": 22304,\n  \"gallery\": 36648,\n  \"gallery</w>\": 3830,\n  \"galley</w>\": 48917,\n  \"galli\": 22568,\n  \"gallipoli</w>\": 47249,\n  \"gallo\": 37350,\n  \"gallo</w>\": 33265,\n  \"gallon</w>\": 24615,\n  \"gallons</w>\": 29335,\n  \"galloway</w>\": 27796,\n  \"galore</w>\": 22286,\n  \"gals</w>\": 20125,\n  \"galvani\": 46046,\n  \"galve\": 34328,\n  \"galveston</w>\": 36003,\n  \"galway\": 38045,\n  \"galway</w>\": 17112,\n  \"gam\": 1162,\n  \"gam</w>\": 34195,\n  \"gama</w>\": 35873,\n  \"gambia</w>\": 32988,\n  \"gamble</w>\": 26121,\n  \"gambling</w>\": 20287,\n  \"game\": 2882,\n  \"game</w>\": 1063,\n  \"gameart</w>\": 31490,\n  \"gameboy</w>\": 40951,\n  \"gamecube</w>\": 44079,\n  \"gameday</w>\": 9241,\n  \"gamedev</w>\": 7544,\n  \"gameinsight</w>\": 42626,\n  \"gameof\": 10987,\n  \"gameofthrones</w>\": 11822,\n  \"gameon</w>\": 47691,\n  \"gameplay</w>\": 16794,\n  \"gamer\": 12595,\n  \"gamer</w>\": 11598,\n  \"gamergate</w>\": 25961,\n  \"gamers</w>\": 16166,\n  \"gamersunite</w>\": 26423,\n  \"games\": 18551,\n  \"games</w>\": 1955,\n  \"gamescom</w>\": 37003,\n  \"gamestop</w>\": 39436,\n  \"gametime</w>\": 45899,\n  \"gami</w>\": 42025,\n  \"gamification</w>\": 48908,\n  \"gaming\": 28803,\n  \"gaming</w>\": 4017,\n  \"gamma</w>\": 22180,\n  \"gamo</w>\": 39325,\n  \"gan\": 1822,\n  \"gan</w>\": 1670,\n  \"gand\": 8399,\n  \"ganda</w>\": 27261,\n  \"gander</w>\": 44508,\n  \"gandhi</w>\": 12322,\n  \"ganesh</w>\": 30362,\n  \"ganesha</w>\": 45185,\n  \"gang\": 8066,\n  \"gang</w>\": 5674,\n  \"ganga</w>\": 36275,\n  \"gangnam</w>\": 46777,\n  \"gangs</w>\": 29844,\n  \"gangsta</w>\": 37365,\n  \"gangster</w>\": 26514,\n  \"gani</w>\": 48324,\n  \"gann</w>\": 45665,\n  \"gannon</w>\": 45837,\n  \"gano</w>\": 25304,\n  \"gao</w>\": 26556,\n  \"gaon</w>\": 19279,\n  \"gap\": 29906,\n  \"gap</w>\": 7609,\n  \"gaps</w>\": 25296,\n  \"gar\": 1099,\n  \"gar</w>\": 5824,\n  \"gara</w>\": 28710,\n  \"garage</w>\": 8474,\n  \"garbage</w>\": 13760,\n  \"garci\": 44658,\n  \"garcia</w>\": 10529,\n  \"gard\": 7751,\n  \"gard</w>\": 21003,\n  \"garda</w>\": 31906,\n  \"garde</w>\": 22649,\n  \"garden\": 4674,\n  \"garden</w>\": 2756,\n  \"gardenchat</w>\": 46292,\n  \"gardener</w>\": 28554,\n  \"gardeners</w>\": 38205,\n  \"gardening</w>\": 10483,\n  \"gardens</w>\": 6152,\n  \"gardiner</w>\": 43121,\n  \"gardner</w>\": 18710,\n  \"gare\": 5633,\n  \"gare</w>\": 48402,\n  \"gareth\": 37140,\n  \"gareth</w>\": 18175,\n  \"garfield</w>\": 26728,\n  \"garh</w>\": 16762,\n  \"gari\": 40898,\n  \"gari</w>\": 43080,\n  \"garis</w>\": 37839,\n  \"garland</w>\": 23418,\n  \"garlic</w>\": 9685,\n  \"garment</w>\": 31418,\n  \"garments</w>\": 43341,\n  \"garmin</w>\": 39885,\n  \"garner</w>\": 20340,\n  \"garnet</w>\": 37669,\n  \"garo</w>\": 30388,\n  \"garrett</w>\": 15881,\n  \"garri\": 21764,\n  \"garrison</w>\": 30108,\n  \"garros</w>\": 40425,\n  \"garry</w>\": 24398,\n  \"gars</w>\": 12055,\n  \"gart\": 18380,\n  \"gart</w>\": 18751,\n  \"garten</w>\": 14684,\n  \"garter</w>\": 48420,\n  \"garth\": 45398,\n  \"garth</w>\": 24469,\n  \"gartner\": 43334,\n  \"gartner</w>\": 29678,\n  \"garty</w>\": 46383,\n  \"garu</w>\": 31140,\n  \"garvey</w>\": 39511,\n  \"garwal</w>\": 38623,\n  \"gary\": 10535,\n  \"gary</w>\": 4516,\n  \"garza</w>\": 49393,\n  \"gas\": 5047,\n  \"gas</w>\": 2474,\n  \"gases</w>\": 36971,\n  \"gasoline</w>\": 27691,\n  \"gasp</w>\": 43762,\n  \"gaston</w>\": 40669,\n  \"gastri\": 49197,\n  \"gastro\": 23740,\n  \"gastron\": 30699,\n  \"gastronomy</w>\": 46987,\n  \"gat\": 5314,\n  \"gat</w>\": 18941,\n  \"gata</w>\": 44575,\n  \"gate\": 8071,\n  \"gate</w>\": 3302,\n  \"gated</w>\": 23997,\n  \"gates</w>\": 9472,\n  \"gateshead</w>\": 40051,\n  \"gateway\": 45221,\n  \"gateway</w>\": 14943,\n  \"gather\": 36345,\n  \"gather</w>\": 12602,\n  \"gathered</w>\": 14646,\n  \"gathering</w>\": 9197,\n  \"gatherings</w>\": 48096,\n  \"gathers</w>\": 39250,\n  \"gating</w>\": 27561,\n  \"gation</w>\": 11095,\n  \"gations</w>\": 33906,\n  \"gato</w>\": 44492,\n  \"gator\": 20216,\n  \"gator</w>\": 16390,\n  \"gatorade</w>\": 36354,\n  \"gators</w>\": 17173,\n  \"gatory</w>\": 24796,\n  \"gatsby</w>\": 32586,\n  \"gatwick</w>\": 37122,\n  \"gau\": 5919,\n  \"gau</w>\": 43068,\n  \"gauge</w>\": 18728,\n  \"gaunt\": 31862,\n  \"gauntlet</w>\": 37163,\n  \"gautam\": 45853,\n  \"gautam</w>\": 31356,\n  \"gauteng</w>\": 40333,\n  \"gav\": 8966,\n  \"gave</w>\": 3485,\n  \"gavin\": 32974,\n  \"gavin</w>\": 16389,\n  \"gaw\": 15405,\n  \"gawd</w>\": 43239,\n  \"gawx</w>\": 43420,\n  \"gay\": 7460,\n  \"gay</w>\": 5627,\n  \"gaya</w>\": 39477,\n  \"gaye</w>\": 41401,\n  \"gayle</w>\": 29998,\n  \"gayo</w>\": 36768,\n  \"gays</w>\": 28001,\n  \"gaz\": 4837,\n  \"gaz</w>\": 36475,\n  \"gaza\": 38391,\n  \"gaza</w>\": 10112,\n  \"gazaunderattack</w>\": 42458,\n  \"gaze</w>\": 23212,\n  \"gazette</w>\": 20443,\n  \"gazing</w>\": 28373,\n  \"gb\": 8727,\n  \"gb</w>\": 4619,\n  \"gba</w>\": 18528,\n  \"gbbo</w>\": 34474,\n  \"gbc</w>\": 42993,\n  \"gbp</w>\": 27391,\n  \"gbr</w>\": 31984,\n  \"gby</w>\": 40509,\n  \"gc\": 8577,\n  \"gc</w>\": 6043,\n  \"gcc</w>\": 26804,\n  \"gcse</w>\": 28763,\n  \"gcu</w>\": 34137,\n  \"gd\": 13264,\n  \"gd</w>\": 14604,\n  \"gdc</w>\": 32793,\n  \"gden</w>\": 44928,\n  \"gdp</w>\": 17100,\n  \"gdpr</w>\": 22963,\n  \"ge\": 619,\n  \"ge</w>\": 710,\n  \"gea</w>\": 26790,\n  \"gear\": 15532,\n  \"gear</w>\": 4802,\n  \"gearbox</w>\": 42454,\n  \"geared</w>\": 33903,\n  \"gearing</w>\": 19027,\n  \"gears</w>\": 21147,\n  \"geaux\": 36313,\n  \"gecko</w>\": 38616,\n  \"ged\": 17252,\n  \"ged</w>\": 3480,\n  \"geddon</w>\": 31720,\n  \"gedly</w>\": 13991,\n  \"gee\": 9806,\n  \"gee</w>\": 9071,\n  \"geek\": 17920,\n  \"geek</w>\": 7135,\n  \"geeks</w>\": 20110,\n  \"geeky</w>\": 47332,\n  \"geel\": 25906,\n  \"geelong</w>\": 34555,\n  \"gees</w>\": 38088,\n  \"geese</w>\": 26413,\n  \"geez</w>\": 42394,\n  \"geh\": 30320,\n  \"geist</w>\": 38290,\n  \"gel\": 7343,\n  \"gel</w>\": 5697,\n  \"gelato</w>\": 29577,\n  \"gels</w>\": 42552,\n  \"gely</w>\": 14637,\n  \"gem\": 14261,\n  \"gem</w>\": 7613,\n  \"gement</w>\": 19495,\n  \"gemini</w>\": 23086,\n  \"gemma</w>\": 23952,\n  \"gems</w>\": 14355,\n  \"gemstone</w>\": 27747,\n  \"gemstones</w>\": 43972,\n  \"gen\": 1024,\n  \"gen</w>\": 3278,\n  \"gence</w>\": 16088,\n  \"gency</w>\": 5245,\n  \"gend\": 33247,\n  \"gender\": 22976,\n  \"gender</w>\": 5906,\n  \"gendere\": 35824,\n  \"genderequality</w>\": 43338,\n  \"gene\": 5822,\n  \"gene</w>\": 7962,\n  \"genealo\": 24142,\n  \"genealogy</w>\": 29381,\n  \"gener\": 1832,\n  \"general\": 20576,\n  \"general</w>\": 3658,\n  \"generally</w>\": 19256,\n  \"generals</w>\": 30296,\n  \"generate</w>\": 16896,\n  \"generated</w>\": 19450,\n  \"generates</w>\": 33938,\n  \"generating</w>\": 23882,\n  \"generation\": 41211,\n  \"generation</w>\": 4883,\n  \"generational</w>\": 34506,\n  \"generations</w>\": 12247,\n  \"generative</w>\": 29472,\n  \"generator</w>\": 19399,\n  \"generators</w>\": 41917,\n  \"generic</w>\": 26978,\n  \"generosity</w>\": 23015,\n  \"generous</w>\": 12570,\n  \"generously</w>\": 35113,\n  \"genes</w>\": 19683,\n  \"genesis</w>\": 13518,\n  \"genetic\": 47746,\n  \"genetic</w>\": 13578,\n  \"genetically</w>\": 36745,\n  \"genetics</w>\": 18276,\n  \"geneva</w>\": 14799,\n  \"genevie\": 41633,\n  \"genevieve</w>\": 46584,\n  \"geni\": 22334,\n  \"genic</w>\": 15750,\n  \"genie</w>\": 24221,\n  \"genital</w>\": 32960,\n  \"genius</w>\": 8235,\n  \"geniuses</w>\": 41406,\n  \"geno\": 41544,\n  \"geno</w>\": 46776,\n  \"genoa</w>\": 43993,\n  \"genoci\": 14687,\n  \"genocide</w>\": 15903,\n  \"genome</w>\": 23991,\n  \"genomic</w>\": 44371,\n  \"genomics</w>\": 26227,\n  \"genre</w>\": 14249,\n  \"genres</w>\": 30340,\n  \"gens</w>\": 17449,\n  \"gent\": 3685,\n  \"gent</w>\": 7139,\n  \"gente</w>\": 34325,\n  \"gentle\": 7262,\n  \"gentle</w>\": 13577,\n  \"gentleman</w>\": 13293,\n  \"gentlemen</w>\": 11692,\n  \"gently</w>\": 17187,\n  \"gento</w>\": 28320,\n  \"gentri\": 41148,\n  \"gentry</w>\": 47225,\n  \"gents</w>\": 18862,\n  \"genu\": 9182,\n  \"genuine</w>\": 12184,\n  \"genuinely</w>\": 20006,\n  \"genus</w>\": 38161,\n  \"geny</w>\": 35323,\n  \"geo\": 5038,\n  \"geo</w>\": 11604,\n  \"geocaching</w>\": 47908,\n  \"geof\": 20629,\n  \"geoff\": 33697,\n  \"geoff</w>\": 20386,\n  \"geoffrey</w>\": 29520,\n  \"geograph\": 45920,\n  \"geographic</w>\": 22635,\n  \"geographical</w>\": 39380,\n  \"geography</w>\": 17101,\n  \"geological</w>\": 38380,\n  \"geology</w>\": 21578,\n  \"geom\": 46135,\n  \"geome\": 12958,\n  \"geometric</w>\": 22419,\n  \"geometry</w>\": 21731,\n  \"geon\": 20844,\n  \"geon</w>\": 7295,\n  \"geons</w>\": 15914,\n  \"geopol\": 39758,\n  \"geor\": 2549,\n  \"georg</w>\": 43126,\n  \"george\": 8377,\n  \"george</w>\": 3296,\n  \"georges</w>\": 25042,\n  \"georgetown</w>\": 22970,\n  \"georgie</w>\": 42115,\n  \"georgina</w>\": 43892,\n  \"geospatial</w>\": 46238,\n  \"geothermal</w>\": 38413,\n  \"geous</w>\": 3068,\n  \"ger\": 1291,\n  \"ger</w>\": 1502,\n  \"gera</w>\": 48867,\n  \"gerald\": 29901,\n  \"gerald</w>\": 13269,\n  \"gerard\": 35979,\n  \"gerard</w>\": 20826,\n  \"gerber</w>\": 45058,\n  \"gered</w>\": 40179,\n  \"geri\": 41664,\n  \"geri</w>\": 46214,\n  \"gering</w>\": 24077,\n  \"germain</w>\": 38786,\n  \"german\": 14972,\n  \"german</w>\": 4710,\n  \"germans</w>\": 28400,\n  \"germany</w>\": 4464,\n  \"germin\": 44721,\n  \"germs</w>\": 47731,\n  \"geronimo</w>\": 45171,\n  \"gerrard</w>\": 26538,\n  \"gerry\": 29825,\n  \"gerry</w>\": 23026,\n  \"gers</w>\": 3314,\n  \"gertrude</w>\": 46950,\n  \"gervais</w>\": 36527,\n  \"gery</w>\": 32845,\n  \"ges</w>\": 3316,\n  \"gest\": 11843,\n  \"gest</w>\": 2033,\n  \"gesture</w>\": 21780,\n  \"gestures</w>\": 43524,\n  \"get\": 5670,\n  \"get</w>\": 779,\n  \"geta\": 13155,\n  \"getaway</w>\": 16131,\n  \"gether</w>\": 27224,\n  \"getic</w>\": 20661,\n  \"getin\": 25822,\n  \"getit\": 44891,\n  \"getit</w>\": 48315,\n  \"getoutside</w>\": 35644,\n  \"gets\": 39448,\n  \"gets</w>\": 2127,\n  \"gett\": 6647,\n  \"gett</w>\": 27965,\n  \"gettable</w>\": 15620,\n  \"gette</w>\": 29800,\n  \"gettin</w>\": 13428,\n  \"getting\": 30885,\n  \"getting</w>\": 1500,\n  \"getty\": 31185,\n  \"getty</w>\": 13965,\n  \"gettys\": 35189,\n  \"gettysburg</w>\": 37062,\n  \"getyour\": 42159,\n  \"gey</w>\": 29289,\n  \"gf\": 28953,\n  \"gf</w>\": 10846,\n  \"gfriend</w>\": 35245,\n  \"gfs</w>\": 37553,\n  \"gg\": 1129,\n  \"gg</w>\": 3286,\n  \"gga</w>\": 26003,\n  \"ggan</w>\": 25626,\n  \"gge\": 21521,\n  \"gge</w>\": 31659,\n  \"gged</w>\": 6095,\n  \"gger\": 12367,\n  \"gger</w>\": 3493,\n  \"ggers</w>\": 7480,\n  \"ggg</w>\": 20143,\n  \"gggg</w>\": 33513,\n  \"ggi</w>\": 21662,\n  \"ggin</w>\": 17160,\n  \"gging</w>\": 4966,\n  \"ggins</w>\": 12444,\n  \"ggle\": 34981,\n  \"ggle</w>\": 11430,\n  \"ggled</w>\": 46328,\n  \"ggles</w>\": 14703,\n  \"ggling</w>\": 16523,\n  \"ggly</w>\": 39407,\n  \"ggs</w>\": 4797,\n  \"ggy\": 24935,\n  \"ggy</w>\": 6476,\n  \"gh\": 583,\n  \"gh</w>\": 790,\n  \"gha\": 10010,\n  \"gha</w>\": 25183,\n  \"gham\": 21456,\n  \"ghan\": 18945,\n  \"ghan</w>\": 6624,\n  \"ghana\": 30330,\n  \"ghana</w>\": 9731,\n  \"ghanaian</w>\": 34223,\n  \"ghani</w>\": 36699,\n  \"ghar\": 37334,\n  \"ghar</w>\": 36973,\n  \"ghat</w>\": 43989,\n  \"ghaz\": 37493,\n  \"ghc</w>\": 42139,\n  \"ghe\": 10754,\n  \"ghe</w>\": 28561,\n  \"ghead</w>\": 40783,\n  \"ghee</w>\": 34794,\n  \"gher\": 21542,\n  \"gher</w>\": 14796,\n  \"ghet\": 18447,\n  \"ghetti</w>\": 17485,\n  \"ghetto</w>\": 22403,\n  \"ghi\": 22436,\n  \"ghi</w>\": 22279,\n  \"ghibli</w>\": 40555,\n  \"ghj\": 38439,\n  \"ghlin</w>\": 24131,\n  \"gho\": 4307,\n  \"ghorn</w>\": 38094,\n  \"ghosh</w>\": 43279,\n  \"ghoshal</w>\": 49134,\n  \"ghost\": 11417,\n  \"ghost</w>\": 7108,\n  \"ghostbusters</w>\": 25462,\n  \"ghostly</w>\": 44901,\n  \"ghosts</w>\": 16737,\n  \"ghou\": 35843,\n  \"ghoul</w>\": 45302,\n  \"ghouse</w>\": 38238,\n  \"ghs</w>\": 14157,\n  \"ght\": 1413,\n  \"ght</w>\": 630,\n  \"ghted</w>\": 4963,\n  \"ghter</w>\": 2427,\n  \"ghters</w>\": 12994,\n  \"ghtful</w>\": 8334,\n  \"ghting</w>\": 3019,\n  \"ghtly</w>\": 6993,\n  \"ghtning</w>\": 39740,\n  \"ghton</w>\": 16353,\n  \"ghts</w>\": 1259,\n  \"ghty\": 20968,\n  \"ghty</w>\": 5866,\n  \"ghu\": 25808,\n  \"ghue</w>\": 45675,\n  \"ghyun</w>\": 25010,\n  \"ghz</w>\": 24325,\n  \"gi\": 707,\n  \"gi</w>\": 4478,\n  \"gia</w>\": 8864,\n  \"giac\": 35444,\n  \"giam\": 39623,\n  \"gian\": 17274,\n  \"gian</w>\": 12866,\n  \"gianni</w>\": 46752,\n  \"giant\": 23668,\n  \"giant</w>\": 4687,\n  \"giants</w>\": 7076,\n  \"giar\": 34241,\n  \"gib\": 9816,\n  \"gibb\": 18964,\n  \"gibbons</w>\": 31974,\n  \"gibbs</w>\": 26488,\n  \"gibility</w>\": 33297,\n  \"gible</w>\": 13159,\n  \"gibr\": 20206,\n  \"gibraltar</w>\": 23988,\n  \"gibson\": 37420,\n  \"gibson</w>\": 12178,\n  \"gic\": 27900,\n  \"gic</w>\": 2570,\n  \"gical</w>\": 32973,\n  \"gically</w>\": 26320,\n  \"gid\": 36774,\n  \"gid</w>\": 21413,\n  \"giddy</w>\": 40894,\n  \"gideon</w>\": 43867,\n  \"gidi</w>\": 30603,\n  \"gie\": 11459,\n  \"gie</w>\": 3991,\n  \"gier</w>\": 28974,\n  \"gies</w>\": 5505,\n  \"gif\": 11363,\n  \"gif</w>\": 11677,\n  \"gifford</w>\": 47850,\n  \"gifs</w>\": 37643,\n  \"gift\": 20569,\n  \"gift</w>\": 2733,\n  \"gifted</w>\": 15110,\n  \"giftide\": 20152,\n  \"giftideas</w>\": 23487,\n  \"gifting</w>\": 39546,\n  \"gifts</w>\": 5836,\n  \"gig\": 26981,\n  \"gig</w>\": 7471,\n  \"gigab\": 34530,\n  \"gigan\": 24104,\n  \"gigantic</w>\": 31507,\n  \"giggle</w>\": 36426,\n  \"giggles</w>\": 42731,\n  \"giggs</w>\": 44692,\n  \"gigi\": 44106,\n  \"gigi</w>\": 26171,\n  \"gigs</w>\": 20316,\n  \"gil\": 3997,\n  \"gil</w>\": 10088,\n  \"gila</w>\": 46952,\n  \"gilbert</w>\": 14154,\n  \"gilded</w>\": 44341,\n  \"giles</w>\": 24802,\n  \"gill\": 14280,\n  \"gill</w>\": 12003,\n  \"gille\": 29610,\n  \"gilles</w>\": 39590,\n  \"gillespie</w>\": 36242,\n  \"gillette</w>\": 38603,\n  \"gilli\": 13695,\n  \"gillian</w>\": 28753,\n  \"gills</w>\": 48851,\n  \"gilmore</w>\": 27603,\n  \"gilt</w>\": 44378,\n  \"gim\": 31284,\n  \"gimm\": 40692,\n  \"gimme</w>\": 21525,\n  \"gin\": 3374,\n  \"gin</w>\": 4941,\n  \"gina</w>\": 15604,\n  \"gine\": 27482,\n  \"ging\": 10829,\n  \"ging</w>\": 3905,\n  \"ginger\": 16287,\n  \"ginger</w>\": 9718,\n  \"gingerbread</w>\": 23692,\n  \"gini</w>\": 35768,\n  \"gino</w>\": 36521,\n  \"gins</w>\": 18328,\n  \"gio\": 16329,\n  \"gio</w>\": 8050,\n  \"gion</w>\": 41226,\n  \"gior\": 14920,\n  \"giorgio</w>\": 33271,\n  \"giorno</w>\": 33310,\n  \"gios</w>\": 41927,\n  \"gious</w>\": 14419,\n  \"giov\": 21404,\n  \"giovanni</w>\": 26574,\n  \"gipp\": 41351,\n  \"gir\": 1077,\n  \"gir</w>\": 25481,\n  \"gira\": 16949,\n  \"giraffe</w>\": 22826,\n  \"giri</w>\": 31709,\n  \"girl\": 3914,\n  \"girl</w>\": 1611,\n  \"girlfriend</w>\": 8217,\n  \"girlfriends</w>\": 30736,\n  \"girlpower</w>\": 37433,\n  \"girls\": 15480,\n  \"girls</w>\": 1917,\n  \"girly</w>\": 29605,\n  \"giro\": 39664,\n  \"giro</w>\": 26454,\n  \"girona</w>\": 47842,\n  \"giroud</w>\": 41177,\n  \"gis\": 16266,\n  \"gis</w>\": 12773,\n  \"gist</w>\": 21241,\n  \"git\": 16060,\n  \"git</w>\": 20918,\n  \"gita</w>\": 40838,\n  \"github</w>\": 31196,\n  \"giu\": 17931,\n  \"giuli\": 29762,\n  \"giuliani</w>\": 47739,\n  \"giuse\": 29385,\n  \"giuseppe</w>\": 33563,\n  \"give\": 4120,\n  \"give</w>\": 1781,\n  \"giveaway</w>\": 5310,\n  \"giveaways</w>\": 18974,\n  \"giveback</w>\": 41385,\n  \"given\": 33323,\n  \"given</w>\": 4302,\n  \"givenchy</w>\": 38245,\n  \"giver</w>\": 43339,\n  \"gives</w>\": 3926,\n  \"giveup</w>\": 35485,\n  \"giving\": 14673,\n  \"giving</w>\": 2339,\n  \"givingback</w>\": 49300,\n  \"givingtuesday</w>\": 23556,\n  \"giz\": 29237,\n  \"gk\": 38953,\n  \"gk</w>\": 18719,\n  \"gl\": 1849,\n  \"gl</w>\": 14751,\n  \"gla\": 1523,\n  \"gla</w>\": 36904,\n  \"glaci\": 14924,\n  \"glacial</w>\": 40782,\n  \"glacier</w>\": 19282,\n  \"glaciers</w>\": 42528,\n  \"glad\": 20841,\n  \"glad</w>\": 4761,\n  \"glades</w>\": 37432,\n  \"gladi\": 21742,\n  \"gladiator</w>\": 38477,\n  \"gladiators</w>\": 41087,\n  \"gladly</w>\": 41598,\n  \"gladys</w>\": 43168,\n  \"glam\": 8738,\n  \"glam</w>\": 16905,\n  \"glamorous</w>\": 22896,\n  \"glamour\": 42876,\n  \"glamour</w>\": 17499,\n  \"glamping</w>\": 46167,\n  \"glan\": 40482,\n  \"glan</w>\": 45844,\n  \"glance</w>\": 26557,\n  \"gland</w>\": 41441,\n  \"glar\": 48535,\n  \"glar</w>\": 41702,\n  \"glare</w>\": 46035,\n  \"glas\": 29935,\n  \"glas</w>\": 43654,\n  \"glasgo\": 6757,\n  \"glasgow\": 29990,\n  \"glasgow</w>\": 7363,\n  \"glass\": 16305,\n  \"glass</w>\": 3313,\n  \"glasses</w>\": 6116,\n  \"glaston\": 26848,\n  \"glastonbury</w>\": 28233,\n  \"glau\": 39171,\n  \"glaze</w>\": 28112,\n  \"glazed</w>\": 24122,\n  \"gle\": 7166,\n  \"gle</w>\": 2865,\n  \"glee\": 32379,\n  \"glee</w>\": 21614,\n  \"glen\": 6158,\n  \"glen</w>\": 11049,\n  \"glend\": 38332,\n  \"glendale</w>\": 33043,\n  \"glenn\": 32004,\n  \"glenn</w>\": 12861,\n  \"gler</w>\": 34649,\n  \"gley</w>\": 21998,\n  \"gli\": 5896,\n  \"gli</w>\": 28791,\n  \"glia</w>\": 22217,\n  \"glide</w>\": 37321,\n  \"glider</w>\": 41636,\n  \"glimp\": 12888,\n  \"glimpse</w>\": 13817,\n  \"glio</w>\": 29785,\n  \"glit\": 21079,\n  \"glitch</w>\": 29563,\n  \"glitter</w>\": 16528,\n  \"glitz</w>\": 44542,\n  \"glo\": 1721,\n  \"glo</w>\": 30474,\n  \"glob\": 13363,\n  \"global\": 6707,\n  \"global</w>\": 2779,\n  \"globalgoals</w>\": 33211,\n  \"globalhealth</w>\": 46751,\n  \"globalization</w>\": 47680,\n  \"globally</w>\": 17775,\n  \"globalwarming</w>\": 46017,\n  \"globe\": 19436,\n  \"globe</w>\": 9368,\n  \"globes</w>\": 38085,\n  \"glock</w>\": 38818,\n  \"glomer\": 43689,\n  \"gloom</w>\": 48594,\n  \"gloomy</w>\": 32199,\n  \"glori\": 7270,\n  \"gloria</w>\": 19244,\n  \"glorious</w>\": 9171,\n  \"glory\": 36107,\n  \"glory</w>\": 7285,\n  \"glos</w>\": 40633,\n  \"gloss\": 38258,\n  \"gloss</w>\": 22014,\n  \"glossy</w>\": 29802,\n  \"glou\": 15989,\n  \"gloucester\": 28133,\n  \"gloucester</w>\": 23835,\n  \"gloucestershire</w>\": 33789,\n  \"glove</w>\": 16078,\n  \"glover</w>\": 21594,\n  \"gloves</w>\": 12363,\n  \"glow\": 30472,\n  \"glow</w>\": 10111,\n  \"glowing</w>\": 18437,\n  \"glows</w>\": 48107,\n  \"glu\": 5952,\n  \"glu</w>\": 32281,\n  \"glucose</w>\": 34642,\n  \"glue</w>\": 22103,\n  \"glued</w>\": 38135,\n  \"gluten\": 15482,\n  \"gluten</w>\": 15524,\n  \"glutenfree</w>\": 16138,\n  \"gly\": 13027,\n  \"glycer\": 48914,\n  \"gm\": 18743,\n  \"gm</w>\": 5918,\n  \"gma</w>\": 18155,\n  \"gmail</w>\": 11119,\n  \"gman\": 41043,\n  \"gman</w>\": 36936,\n  \"gmb\": 35934,\n  \"gmb</w>\": 31799,\n  \"gmbh</w>\": 46877,\n  \"gmc</w>\": 27257,\n  \"gmo</w>\": 23486,\n  \"gms</w>\": 36987,\n  \"gmt</w>\": 13803,\n  \"gn\": 2455,\n  \"gn</w>\": 9831,\n  \"gna</w>\": 23009,\n  \"gnation</w>\": 45912,\n  \"gne</w>\": 25407,\n  \"gni\": 5104,\n  \"gnment</w>\": 25110,\n  \"gno\": 23376,\n  \"gno</w>\": 43686,\n  \"gnocchi</w>\": 48299,\n  \"gnome</w>\": 33643,\n  \"gnon</w>\": 20561,\n  \"go\": 650,\n  \"go</w>\": 861,\n  \"goa</w>\": 14399,\n  \"goal\": 9003,\n  \"goal</w>\": 3321,\n  \"goalie</w>\": 20723,\n  \"goalkeeper</w>\": 16601,\n  \"goals</w>\": 3295,\n  \"goalscorer</w>\": 43547,\n  \"goaltender</w>\": 44151,\n  \"goat\": 34082,\n  \"goat</w>\": 9530,\n  \"goats</w>\": 18393,\n  \"gob\": 29559,\n  \"gobeavs</w>\": 48285,\n  \"goblin</w>\": 26223,\n  \"goblue</w>\": 25232,\n  \"gobucks</w>\": 29175,\n  \"gocougs</w>\": 34202,\n  \"god\": 4190,\n  \"god</w>\": 1731,\n  \"godawgs</w>\": 40436,\n  \"godbless\": 46616,\n  \"godbless</w>\": 44007,\n  \"godd\": 16589,\n  \"goddamn</w>\": 28495,\n  \"goddard</w>\": 37827,\n  \"goddess</w>\": 10808,\n  \"godfather</w>\": 26222,\n  \"godfrey</w>\": 40148,\n  \"godis\": 38521,\n  \"godly</w>\": 42438,\n  \"gods\": 33620,\n  \"gods</w>\": 10328,\n  \"goducks</w>\": 35889,\n  \"godzilla</w>\": 23369,\n  \"goe\": 22084,\n  \"goers</w>\": 27784,\n  \"goes\": 43581,\n  \"goes</w>\": 2635,\n  \"gof\": 17537,\n  \"goff</w>\": 34399,\n  \"goftheday</w>\": 39360,\n  \"gofund\": 34445,\n  \"gofundme</w>\": 34686,\n  \"gog</w>\": 42949,\n  \"goggles</w>\": 31027,\n  \"gogh</w>\": 19697,\n  \"gogo</w>\": 22688,\n  \"gogreen</w>\": 36279,\n  \"gohawks</w>\": 34884,\n  \"goi</w>\": 24917,\n  \"goin</w>\": 13939,\n  \"going\": 25787,\n  \"going</w>\": 1245,\n  \"goku</w>\": 29550,\n  \"gol\": 1537,\n  \"gol</w>\": 18257,\n  \"gola</w>\": 41090,\n  \"gold\": 4999,\n  \"gold</w>\": 2209,\n  \"goldberg</w>\": 25161,\n  \"goldcoast</w>\": 34634,\n  \"golden\": 10763,\n  \"golden</w>\": 3878,\n  \"goldeng\": 20650,\n  \"goldenglobes</w>\": 26842,\n  \"goldfish</w>\": 40293,\n  \"goldie</w>\": 42805,\n  \"goldman</w>\": 27164,\n  \"golds\": 30526,\n  \"golds</w>\": 40283,\n  \"goldsmith</w>\": 40214,\n  \"gole\": 41297,\n  \"golf\": 9096,\n  \"golf</w>\": 3096,\n  \"golfclub</w>\": 45742,\n  \"golfer</w>\": 24579,\n  \"golfers</w>\": 28441,\n  \"golfing</w>\": 31379,\n  \"goli\": 29265,\n  \"goliath</w>\": 41602,\n  \"gom\": 7051,\n  \"goma</w>\": 46198,\n  \"gomes</w>\": 39128,\n  \"gomez</w>\": 16433,\n  \"gon\": 1854,\n  \"gon</w>\": 3379,\n  \"gona</w>\": 34835,\n  \"gone\": 35135,\n  \"gone</w>\": 3601,\n  \"gong</w>\": 28486,\n  \"gonna</w>\": 2562,\n  \"gonz\": 10587,\n  \"gonzaga</w>\": 36241,\n  \"gonzale\": 17512,\n  \"gonzales</w>\": 31265,\n  \"gonzalez</w>\": 18198,\n  \"goo\": 1381,\n  \"goo</w>\": 17882,\n  \"good\": 2185,\n  \"good</w>\": 886,\n  \"goodbye</w>\": 6968,\n  \"goodday\": 46284,\n  \"goode</w>\": 42076,\n  \"goodfood</w>\": 46844,\n  \"goodfriday</w>\": 40360,\n  \"goodie</w>\": 29213,\n  \"goodies</w>\": 13308,\n  \"goodluck</w>\": 19718,\n  \"goodman</w>\": 24146,\n  \"goodmorning</w>\": 14421,\n  \"goodness</w>\": 10531,\n  \"goodnight</w>\": 8540,\n  \"goodreads</w>\": 31629,\n  \"goods</w>\": 9340,\n  \"goodtimes</w>\": 22570,\n  \"goodvibes</w>\": 43146,\n  \"goodwill</w>\": 24902,\n  \"goodwin</w>\": 28080,\n  \"goodwood</w>\": 30008,\n  \"goody</w>\": 35937,\n  \"goodyear</w>\": 42858,\n  \"goofy</w>\": 26879,\n  \"goog\": 18581,\n  \"google\": 12195,\n  \"google</w>\": 3460,\n  \"googled</w>\": 40345,\n  \"googleplay</w>\": 37309,\n  \"goon</w>\": 15267,\n  \"goons</w>\": 30440,\n  \"goooo\": 35876,\n  \"goooo</w>\": 48957,\n  \"goose\": 21445,\n  \"goose</w>\": 13822,\n  \"goosebumps</w>\": 32254,\n  \"gop\": 18942,\n  \"gop</w>\": 6250,\n  \"gopack\": 46995,\n  \"gopackgo</w>\": 47719,\n  \"gopal</w>\": 47268,\n  \"gopdebate</w>\": 39806,\n  \"gopher\": 47750,\n  \"gopher</w>\": 48905,\n  \"gophers</w>\": 31957,\n  \"gopro</w>\": 17511,\n  \"gor\": 1747,\n  \"gor</w>\": 29827,\n  \"gordo</w>\": 47707,\n  \"gordon\": 20485,\n  \"gordon</w>\": 8244,\n  \"gore\": 30311,\n  \"gore</w>\": 17872,\n  \"gorg</w>\": 46815,\n  \"gorge\": 35548,\n  \"gorge</w>\": 20038,\n  \"gorgeous</w>\": 3241,\n  \"gori\": 12461,\n  \"goria</w>\": 43359,\n  \"gorilla\": 37910,\n  \"gorilla</w>\": 21994,\n  \"gorman</w>\": 35741,\n  \"goro</w>\": 44977,\n  \"gory</w>\": 7160,\n  \"gos\": 20517,\n  \"gos</w>\": 5693,\n  \"gosh</w>\": 15395,\n  \"gosling</w>\": 35320,\n  \"gosp\": 9617,\n  \"gospel</w>\": 11313,\n  \"goss\": 39734,\n  \"goss</w>\": 36924,\n  \"gossi\": 15684,\n  \"gossip</w>\": 18963,\n  \"got\": 10125,\n  \"got</w>\": 1005,\n  \"gota</w>\": 36693,\n  \"gotcha</w>\": 43275,\n  \"gote</w>\": 49345,\n  \"goth\": 48465,\n  \"goth</w>\": 20437,\n  \"gotham\": 46123,\n  \"gotham</w>\": 18299,\n  \"gothic</w>\": 15426,\n  \"goti\": 9497,\n  \"goto\": 39715,\n  \"gots</w>\": 35215,\n  \"gott\": 5089,\n  \"gott</w>\": 36466,\n  \"gotta</w>\": 4633,\n  \"gotten</w>\": 5889,\n  \"gotti</w>\": 41881,\n  \"gotv</w>\": 36089,\n  \"gou\": 10520,\n  \"gou</w>\": 36555,\n  \"gouache</w>\": 43314,\n  \"goul\": 33187,\n  \"gould</w>\": 31087,\n  \"gour\": 13580,\n  \"gourmet</w>\": 19111,\n  \"gov\": 4022,\n  \"gov</w>\": 4564,\n  \"gove</w>\": 36997,\n  \"govegan</w>\": 38886,\n  \"gover\": 10471,\n  \"gover</w>\": 16759,\n  \"govern\": 2351,\n  \"govern</w>\": 32404,\n  \"governance</w>\": 13386,\n  \"governing</w>\": 30946,\n  \"government</w>\": 3149,\n  \"governmental</w>\": 42609,\n  \"governments</w>\": 19582,\n  \"governor\": 17459,\n  \"governor</w>\": 6630,\n  \"governors</w>\": 26881,\n  \"govin\": 42451,\n  \"govt</w>\": 5345,\n  \"govuk</w>\": 28830,\n  \"gow\": 21885,\n  \"gow</w>\": 33788,\n  \"gowan</w>\": 31307,\n  \"gower</w>\": 43448,\n  \"gown</w>\": 13719,\n  \"gowns</w>\": 38029,\n  \"goyal</w>\": 35105,\n  \"gp\": 19329,\n  \"gp</w>\": 5051,\n  \"gpa</w>\": 24098,\n  \"gps</w>\": 13639,\n  \"gpu</w>\": 38561,\n  \"gq\": 40286,\n  \"gq</w>\": 31324,\n  \"gr\": 709,\n  \"gr</w>\": 6062,\n  \"gra\": 782,\n  \"gra</w>\": 15276,\n  \"grab</w>\": 4646,\n  \"grabbed</w>\": 22856,\n  \"grabbing</w>\": 26440,\n  \"grabs</w>\": 17076,\n  \"grac\": 11323,\n  \"grace\": 13225,\n  \"grace</w>\": 5142,\n  \"graced</w>\": 31894,\n  \"graceful</w>\": 25242,\n  \"graces</w>\": 38629,\n  \"graci\": 11174,\n  \"gracias</w>\": 16463,\n  \"gracie</w>\": 23235,\n  \"gracing</w>\": 37263,\n  \"gracious</w>\": 29044,\n  \"grad\": 19869,\n  \"grad</w>\": 7291,\n  \"gradable</w>\": 41529,\n  \"grade\": 45435,\n  \"grade</w>\": 3394,\n  \"graded</w>\": 13823,\n  \"grader</w>\": 23930,\n  \"graders</w>\": 10930,\n  \"grades</w>\": 10838,\n  \"gradient</w>\": 36885,\n  \"grading</w>\": 19016,\n  \"grads</w>\": 17811,\n  \"gradu\": 3230,\n  \"gradual</w>\": 45210,\n  \"gradually</w>\": 32192,\n  \"graduate</w>\": 6675,\n  \"graduated</w>\": 15128,\n  \"graduates</w>\": 12236,\n  \"graduating</w>\": 14819,\n  \"graduation</w>\": 8060,\n  \"grady</w>\": 33980,\n  \"graeme</w>\": 30192,\n  \"graf\": 46478,\n  \"graf</w>\": 39765,\n  \"graff\": 10656,\n  \"graffiti</w>\": 11676,\n  \"graft</w>\": 32698,\n  \"grafton</w>\": 47347,\n  \"graham\": 19805,\n  \"graham</w>\": 7711,\n  \"grail</w>\": 37184,\n  \"grain\": 44003,\n  \"grain</w>\": 12109,\n  \"grains</w>\": 25791,\n  \"gral</w>\": 25631,\n  \"gram\": 2949,\n  \"gram</w>\": 2338,\n  \"grammar</w>\": 16077,\n  \"grammy</w>\": 15388,\n  \"grammys</w>\": 18121,\n  \"grams</w>\": 6294,\n  \"gran\": 3892,\n  \"gran</w>\": 14493,\n  \"granada</w>\": 31172,\n  \"grand\": 3058,\n  \"grand</w>\": 2991,\n  \"grandad</w>\": 29148,\n  \"grandchildren</w>\": 36856,\n  \"granddaughter</w>\": 29460,\n  \"grande\": 37514,\n  \"grande</w>\": 10757,\n  \"grandes</w>\": 36382,\n  \"grandfather</w>\": 15346,\n  \"grandma</w>\": 10525,\n  \"grandmother</w>\": 17469,\n  \"grandpa</w>\": 14582,\n  \"grandparents</w>\": 21311,\n  \"grandprix</w>\": 39358,\n  \"grandson</w>\": 20766,\n  \"grandstand</w>\": 43172,\n  \"grange\": 45027,\n  \"grange</w>\": 23850,\n  \"granger</w>\": 42968,\n  \"granite</w>\": 18813,\n  \"grann</w>\": 45585,\n  \"granny</w>\": 22710,\n  \"granola</w>\": 34271,\n  \"grant\": 18682,\n  \"grant</w>\": 5442,\n  \"granted</w>\": 14156,\n  \"granth\": 41283,\n  \"grants</w>\": 15123,\n  \"grape\": 19131,\n  \"grape</w>\": 15959,\n  \"grapefruit</w>\": 28347,\n  \"grapes</w>\": 18580,\n  \"grapevine</w>\": 47619,\n  \"graph\": 1349,\n  \"graph</w>\": 4407,\n  \"graphene</w>\": 38387,\n  \"grapher</w>\": 14987,\n  \"graphers</w>\": 32088,\n  \"graphic\": 15653,\n  \"graphic</w>\": 4245,\n  \"graphical</w>\": 20878,\n  \"graphicdesign</w>\": 21907,\n  \"graphics</w>\": 9492,\n  \"graphies</w>\": 40164,\n  \"graphite</w>\": 29447,\n  \"graphs</w>\": 24670,\n  \"graphy</w>\": 4897,\n  \"grapp\": 30843,\n  \"gras\": 31517,\n  \"gras</w>\": 17584,\n  \"grasp</w>\": 34975,\n  \"grass\": 11584,\n  \"grass</w>\": 5922,\n  \"grasses</w>\": 46807,\n  \"grasshopper</w>\": 48894,\n  \"grassi</w>\": 42294,\n  \"grasso</w>\": 34808,\n  \"grassroots</w>\": 21991,\n  \"grassy</w>\": 44140,\n  \"grat\": 9221,\n  \"grate\": 32463,\n  \"grateful\": 45659,\n  \"grateful</w>\": 5730,\n  \"grati\": 36402,\n  \"gratis</w>\": 33638,\n  \"gratitude</w>\": 12614,\n  \"grav\": 20663,\n  \"grave\": 16606,\n  \"grave</w>\": 9981,\n  \"gravel</w>\": 27054,\n  \"graves</w>\": 17665,\n  \"graveyard</w>\": 31176,\n  \"gravit\": 26150,\n  \"gravitational</w>\": 45268,\n  \"gravity\": 47426,\n  \"gravity</w>\": 15160,\n  \"gravy</w>\": 21225,\n  \"gray\": 12703,\n  \"gray</w>\": 7048,\n  \"grays</w>\": 46848,\n  \"grayson\": 45831,\n  \"grayson</w>\": 25471,\n  \"grazi\": 42427,\n  \"grazie</w>\": 38698,\n  \"grazing</w>\": 29889,\n  \"grc</w>\": 44069,\n  \"gre\": 689,\n  \"gre</w>\": 17878,\n  \"grease</w>\": 24132,\n  \"greasy</w>\": 44376,\n  \"great\": 3265,\n  \"great</w>\": 830,\n  \"greate\": 31930,\n  \"greater\": 32725,\n  \"greater</w>\": 7033,\n  \"greatest\": 39080,\n  \"greatest</w>\": 4153,\n  \"greatly</w>\": 13978,\n  \"greatness</w>\": 14189,\n  \"greats</w>\": 21855,\n  \"greaves</w>\": 42350,\n  \"greco</w>\": 39103,\n  \"gree\": 9987,\n  \"gree</w>\": 30774,\n  \"greece</w>\": 6965,\n  \"greed</w>\": 26147,\n  \"greedy</w>\": 33301,\n  \"greek\": 23844,\n  \"greek</w>\": 6842,\n  \"greeks</w>\": 35866,\n  \"green\": 2762,\n  \"green</w>\": 1901,\n  \"greenberg</w>\": 46662,\n  \"greene</w>\": 16383,\n  \"greener</w>\": 31169,\n  \"greenery</w>\": 42493,\n  \"greenfield</w>\": 39924,\n  \"greeng\": 42077,\n  \"greenhouse</w>\": 20819,\n  \"greening</w>\": 48673,\n  \"greenland</w>\": 27345,\n  \"greenpeace</w>\": 44755,\n  \"greens</w>\": 10235,\n  \"greensboro</w>\": 33436,\n  \"greenville</w>\": 25156,\n  \"greenway</w>\": 35205,\n  \"greenwich</w>\": 18658,\n  \"greenwood</w>\": 25782,\n  \"greer</w>\": 34345,\n  \"greet\": 11042,\n  \"greet</w>\": 11997,\n  \"greeted</w>\": 24546,\n  \"greeting</w>\": 17754,\n  \"greetings</w>\": 11569,\n  \"greets</w>\": 25464,\n  \"greg\": 6894,\n  \"greg</w>\": 7943,\n  \"gregation</w>\": 20131,\n  \"gregg\": 39422,\n  \"gregg</w>\": 22929,\n  \"gregor\": 33856,\n  \"gregor</w>\": 16177,\n  \"gregory</w>\": 16253,\n  \"gren\": 13941,\n  \"gren</w>\": 20119,\n  \"grenade</w>\": 33679,\n  \"grenfell</w>\": 42107,\n  \"gres</w>\": 39670,\n  \"gress</w>\": 2752,\n  \"gret\": 30041,\n  \"greta</w>\": 33443,\n  \"gretchen</w>\": 45516,\n  \"grette</w>\": 38774,\n  \"grew</w>\": 10451,\n  \"grey\": 9190,\n  \"grey</w>\": 5046,\n  \"greyhound</w>\": 27363,\n  \"greyhounds</w>\": 45718,\n  \"greys</w>\": 44311,\n  \"greysanatomy</w>\": 36833,\n  \"gri\": 2169,\n  \"gri</w>\": 18484,\n  \"grid\": 29067,\n  \"grid</w>\": 9882,\n  \"gridi\": 41063,\n  \"gridiron</w>\": 47786,\n  \"grids</w>\": 46500,\n  \"grief</w>\": 21058,\n  \"grier</w>\": 22016,\n  \"griev\": 36400,\n  \"grieving</w>\": 42383,\n  \"griez\": 47962,\n  \"griezmann</w>\": 48396,\n  \"griff\": 17855,\n  \"griff</w>\": 35551,\n  \"griffi\": 28676,\n  \"griffin\": 46612,\n  \"griffin</w>\": 13161,\n  \"griffith</w>\": 24375,\n  \"griffiths</w>\": 34182,\n  \"gril\": 49091,\n  \"grill\": 44083,\n  \"grill</w>\": 9519,\n  \"grille</w>\": 34748,\n  \"grilled</w>\": 10691,\n  \"grilling</w>\": 28324,\n  \"grills</w>\": 39464,\n  \"grim\": 20383,\n  \"grim</w>\": 23635,\n  \"grime</w>\": 37101,\n  \"grimes</w>\": 25057,\n  \"grimm</w>\": 27865,\n  \"grims\": 34861,\n  \"grimsby</w>\": 41513,\n  \"grin\": 11033,\n  \"grin</w>\": 28697,\n  \"grinch</w>\": 40527,\n  \"grind\": 25730,\n  \"grind</w>\": 11810,\n  \"grinder</w>\": 31733,\n  \"grinding</w>\": 21541,\n  \"gring</w>\": 40135,\n  \"grip</w>\": 15521,\n  \"gripping</w>\": 34567,\n  \"grips</w>\": 27819,\n  \"gris</w>\": 29150,\n  \"grit\": 22037,\n  \"grit</w>\": 22087,\n  \"grits</w>\": 44307,\n  \"gritty</w>\": 33704,\n  \"grizz\": 14877,\n  \"grizz</w>\": 44088,\n  \"grizzlies</w>\": 25594,\n  \"grizzly</w>\": 29676,\n  \"grl</w>\": 48005,\n  \"gro\": 1464,\n  \"gro</w>\": 12691,\n  \"grocer\": 11633,\n  \"groceries</w>\": 32409,\n  \"grocery</w>\": 13826,\n  \"grom</w>\": 45284,\n  \"gron\": 22345,\n  \"groningen</w>\": 45639,\n  \"groo\": 9015,\n  \"groom\": 39883,\n  \"groom</w>\": 22813,\n  \"grooming</w>\": 25575,\n  \"groot</w>\": 37708,\n  \"groove\": 39484,\n  \"groove</w>\": 17680,\n  \"grooves</w>\": 43954,\n  \"groovy</w>\": 30143,\n  \"gros\": 26834,\n  \"gros</w>\": 32639,\n  \"gross\": 31080,\n  \"gross</w>\": 11541,\n  \"grosven\": 46911,\n  \"grote\": 47207,\n  \"grotto</w>\": 45260,\n  \"grou\": 1582,\n  \"groun\": 45110,\n  \"ground\": 9558,\n  \"ground</w>\": 2461,\n  \"groundbreaking</w>\": 21006,\n  \"grounded</w>\": 27799,\n  \"grounds</w>\": 8454,\n  \"groundwater</w>\": 39457,\n  \"group\": 19045,\n  \"group</w>\": 1771,\n  \"groupe</w>\": 47654,\n  \"groups</w>\": 6776,\n  \"grouse</w>\": 36327,\n  \"grove\": 31756,\n  \"grove</w>\": 7463,\n  \"grover</w>\": 31345,\n  \"groves</w>\": 27306,\n  \"grow\": 3179,\n  \"grow</w>\": 4559,\n  \"grower</w>\": 44925,\n  \"growers</w>\": 25689,\n  \"growing\": 28429,\n  \"growing</w>\": 4425,\n  \"growingup\": 43433,\n  \"growler</w>\": 47096,\n  \"grown\": 41762,\n  \"grown</w>\": 7120,\n  \"grows</w>\": 13352,\n  \"growth\": 17925,\n  \"growth</w>\": 4026,\n  \"growthhacking</w>\": 25963,\n  \"grp</w>\": 27321,\n  \"grt</w>\": 28557,\n  \"gru\": 5957,\n  \"grub</w>\": 34019,\n  \"grue\": 42047,\n  \"gruesome</w>\": 47111,\n  \"grum\": 45454,\n  \"grump\": 49015,\n  \"grumpy</w>\": 23610,\n  \"grun\": 16203,\n  \"grunge</w>\": 33745,\n  \"gry\": 16140,\n  \"gry</w>\": 5364,\n  \"gs\": 25818,\n  \"gs</w>\": 1345,\n  \"gsa</w>\": 40433,\n  \"gsc</w>\": 47751,\n  \"gshore</w>\": 43392,\n  \"gsm</w>\": 32181,\n  \"gsp</w>\": 49173,\n  \"gst</w>\": 22239,\n  \"gt\": 16151,\n  \"gt</w>\": 4725,\n  \"gta\": 14826,\n  \"gta</w>\": 15338,\n  \"gtaonline</w>\": 27292,\n  \"gtav</w>\": 27283,\n  \"gti</w>\": 39954,\n  \"gto</w>\": 39071,\n  \"gtr</w>\": 33407,\n  \"gts</w>\": 37338,\n  \"gtx</w>\": 35230,\n  \"gu\": 700,\n  \"gu</w>\": 12916,\n  \"gua</w>\": 23751,\n  \"guacam\": 37477,\n  \"guacamole</w>\": 40115,\n  \"guad\": 22966,\n  \"guadal\": 46097,\n  \"guadalu\": 36994,\n  \"guadalupe</w>\": 38360,\n  \"guam</w>\": 37325,\n  \"guan\": 44191,\n  \"guan</w>\": 42406,\n  \"guang\": 27019,\n  \"guangzhou</w>\": 37857,\n  \"guar\": 4119,\n  \"guaran\": 9242,\n  \"guarantee</w>\": 17421,\n  \"guaranteed</w>\": 14731,\n  \"guarantees</w>\": 40154,\n  \"guard\": 30776,\n  \"guard</w>\": 4901,\n  \"guarded</w>\": 40602,\n  \"guardi\": 12008,\n  \"guardia</w>\": 43628,\n  \"guardian\": 23713,\n  \"guardian</w>\": 9498,\n  \"guardians</w>\": 21479,\n  \"guarding</w>\": 24966,\n  \"guardiola</w>\": 32100,\n  \"guards</w>\": 12810,\n  \"guatem\": 19423,\n  \"guatemala</w>\": 21670,\n  \"guay\": 48591,\n  \"guay</w>\": 24247,\n  \"gubernat\": 41400,\n  \"gubernatorial</w>\": 41618,\n  \"gucci</w>\": 16779,\n  \"gud\": 48061,\n  \"gud</w>\": 22378,\n  \"gue\": 2030,\n  \"gue</w>\": 2917,\n  \"gued</w>\": 38893,\n  \"guel\": 23146,\n  \"guelph</w>\": 27660,\n  \"guer\": 10391,\n  \"guern\": 29277,\n  \"guernsey</w>\": 33982,\n  \"guerra</w>\": 38215,\n  \"guerrero</w>\": 31967,\n  \"guerrilla</w>\": 36715,\n  \"gues\": 39971,\n  \"gues</w>\": 12601,\n  \"guess\": 35506,\n  \"guess</w>\": 3135,\n  \"guessed</w>\": 28005,\n  \"guesses</w>\": 30623,\n  \"guessing</w>\": 21891,\n  \"guest\": 27349,\n  \"guest</w>\": 3781,\n  \"guests</w>\": 6212,\n  \"guet</w>\": 36797,\n  \"guetta</w>\": 45904,\n  \"guez</w>\": 12313,\n  \"gug\": 31358,\n  \"guggen\": 35086,\n  \"guggenheim</w>\": 37135,\n  \"gui\": 2587,\n  \"gui</w>\": 25746,\n  \"guid\": 11437,\n  \"guidance</w>\": 12508,\n  \"guide\": 21845,\n  \"guide</w>\": 3555,\n  \"guided</w>\": 13194,\n  \"guidelines</w>\": 16591,\n  \"guides</w>\": 14375,\n  \"guiding</w>\": 22759,\n  \"guido</w>\": 41818,\n  \"guil\": 5008,\n  \"guild\": 19755,\n  \"guild</w>\": 16597,\n  \"guildford</w>\": 34450,\n  \"guildhall</w>\": 47224,\n  \"guillau\": 41123,\n  \"guillaume</w>\": 45394,\n  \"guiller\": 33660,\n  \"guillermo</w>\": 39524,\n  \"guilt</w>\": 26354,\n  \"guilty</w>\": 9761,\n  \"guin\": 13284,\n  \"guin</w>\": 47863,\n  \"guine\": 13759,\n  \"guinea</w>\": 18537,\n  \"guinness</w>\": 16648,\n  \"guire</w>\": 18209,\n  \"guise</w>\": 42024,\n  \"guit\": 3759,\n  \"guitar\": 21746,\n  \"guitar</w>\": 5084,\n  \"guitarist</w>\": 13035,\n  \"guitars</w>\": 15023,\n  \"guj\": 34935,\n  \"gujar\": 12698,\n  \"gujarat</w>\": 14714,\n  \"guk</w>\": 20280,\n  \"gul\": 5530,\n  \"gul</w>\": 21350,\n  \"gula</w>\": 27426,\n  \"gular</w>\": 34969,\n  \"gulf\": 22101,\n  \"gulf</w>\": 11279,\n  \"gull\": 48764,\n  \"gull</w>\": 28778,\n  \"gulls</w>\": 37501,\n  \"gully</w>\": 46112,\n  \"gum\": 22041,\n  \"gum</w>\": 11235,\n  \"gumb\": 40147,\n  \"gumbo</w>\": 47126,\n  \"gummy</w>\": 34276,\n  \"gums</w>\": 46609,\n  \"gun\": 2748,\n  \"gun</w>\": 3496,\n  \"guna</w>\": 43333,\n  \"gundam</w>\": 26087,\n  \"gundy</w>\": 21162,\n  \"gunman</w>\": 32743,\n  \"gunmen</w>\": 44738,\n  \"gunn</w>\": 27473,\n  \"gunna</w>\": 24002,\n  \"gunnar</w>\": 45301,\n  \"gunner</w>\": 35285,\n  \"gunners</w>\": 37788,\n  \"guns</w>\": 7591,\n  \"gunsense</w>\": 44781,\n  \"gunshot</w>\": 49250,\n  \"gunsn\": 49028,\n  \"gup\": 38632,\n  \"gup</w>\": 47335,\n  \"gupta</w>\": 15905,\n  \"gur\": 3218,\n  \"gur</w>\": 30224,\n  \"gura</w>\": 46836,\n  \"gurgaon</w>\": 33240,\n  \"guri</w>\": 43888,\n  \"gurl</w>\": 25445,\n  \"gurmee\": 35482,\n  \"gurmeetramrahim</w>\": 36549,\n  \"guru\": 18629,\n  \"guru</w>\": 10800,\n  \"gurudev</w>\": 48647,\n  \"gus</w>\": 8018,\n  \"gust</w>\": 24629,\n  \"gusta\": 23024,\n  \"gusta</w>\": 44196,\n  \"gustav\": 32062,\n  \"gustav</w>\": 37921,\n  \"gustave</w>\": 43170,\n  \"gustavo</w>\": 45943,\n  \"gusto</w>\": 37937,\n  \"gusts</w>\": 20896,\n  \"gusty</w>\": 27589,\n  \"gut\": 24780,\n  \"gut</w>\": 13486,\n  \"guter\": 44963,\n  \"guterres</w>\": 48738,\n  \"guth\": 31696,\n  \"guthrie</w>\": 33164,\n  \"gutier\": 32773,\n  \"gutierrez</w>\": 33739,\n  \"guts</w>\": 25983,\n  \"gutted</w>\": 26524,\n  \"gutter</w>\": 40537,\n  \"guwa\": 43063,\n  \"guwahati</w>\": 45045,\n  \"guy\": 10008,\n  \"guy</w>\": 2149,\n  \"guyana</w>\": 45215,\n  \"guyen</w>\": 28031,\n  \"guys\": 43588,\n  \"guys</w>\": 1791,\n  \"guyz</w>\": 48170,\n  \"guzman</w>\": 37960,\n  \"gv\": 15462,\n  \"gv</w>\": 17336,\n  \"gw\": 7172,\n  \"gw</w>\": 15717,\n  \"gwen\": 32165,\n  \"gwen</w>\": 24182,\n  \"gwin\": 43005,\n  \"gwy\": 32226,\n  \"gwyne\": 36923,\n  \"gx</w>\": 40227,\n  \"gy\": 2168,\n  \"gy</w>\": 1164,\n  \"gya</w>\": 43214,\n  \"gyan</w>\": 43814,\n  \"gye\": 21728,\n  \"gyllen\": 49348,\n  \"gym\": 9902,\n  \"gym</w>\": 5222,\n  \"gymna\": 13517,\n  \"gymnasium</w>\": 42847,\n  \"gymnast</w>\": 42658,\n  \"gymnastics</w>\": 20116,\n  \"gyn</w>\": 39603,\n  \"gyne\": 45836,\n  \"gyp\": 40053,\n  \"gypsy</w>\": 22354,\n  \"gypt</w>\": 41921,\n  \"gz\": 45937,\n  \"gz</w>\": 35841,\n  \"gÃ¶\": 40778,\n  \"gÃ¼\": 31907,\n  \"h\": 71,\n  \"h</w>\": 327,\n  \"ha\": 560,\n  \"ha</w>\": 1429,\n  \"haa</w>\": 26814,\n  \"haal</w>\": 35869,\n  \"haan</w>\": 36284,\n  \"haar\": 45247,\n  \"haar</w>\": 35859,\n  \"haas</w>\": 27443,\n  \"haasan</w>\": 26601,\n  \"hab\": 20573,\n  \"hab</w>\": 20002,\n  \"haban\": 46225,\n  \"haber\": 44737,\n  \"habit\": 8491,\n  \"habit</w>\": 17215,\n  \"habitat</w>\": 11747,\n  \"habitats</w>\": 35344,\n  \"habits</w>\": 14540,\n  \"habs</w>\": 27489,\n  \"hac\": 20343,\n  \"hace</w>\": 43623,\n  \"haci\": 40674,\n  \"hack\": 6610,\n  \"hack</w>\": 11182,\n  \"hackathon</w>\": 25182,\n  \"hacked</w>\": 19575,\n  \"hacker</w>\": 22376,\n  \"hackers</w>\": 21498,\n  \"hacking</w>\": 12939,\n  \"hackney\": 48811,\n  \"hackney</w>\": 24928,\n  \"hacks</w>\": 19965,\n  \"had\": 10660,\n  \"had</w>\": 1100,\n  \"hadi</w>\": 39058,\n  \"hadid</w>\": 26415,\n  \"hadith</w>\": 46907,\n  \"hadley</w>\": 44995,\n  \"hadn</w>\": 21480,\n  \"hadoop</w>\": 43868,\n  \"hae\": 30723,\n  \"hae</w>\": 27193,\n  \"hafi\": 39914,\n  \"hag\": 26855,\n  \"hag</w>\": 43207,\n  \"hagan</w>\": 47489,\n  \"hagen</w>\": 14664,\n  \"hager\": 48773,\n  \"hagg\": 26324,\n  \"hague</w>\": 28988,\n  \"hah\": 18108,\n  \"hah</w>\": 13680,\n  \"haha\": 1913,\n  \"haha</w>\": 3060,\n  \"hahah\": 27253,\n  \"hahah</w>\": 15441,\n  \"hahaha</w>\": 4722,\n  \"hahahah\": 37513,\n  \"hahahah</w>\": 20096,\n  \"hahahaha\": 8058,\n  \"hahahaha</w>\": 9501,\n  \"hahahahah</w>\": 33334,\n  \"hahahahaha</w>\": 16347,\n  \"hahahahahaha</w>\": 26487,\n  \"hahahahahahaha</w>\": 43653,\n  \"hahahahahahahaha\": 36126,\n  \"hahahha</w>\": 49205,\n  \"hahn</w>\": 35596,\n  \"hai\": 8734,\n  \"hai</w>\": 5234,\n  \"haider</w>\": 42200,\n  \"haiku</w>\": 19542,\n  \"hail\": 15272,\n  \"hail</w>\": 8634,\n  \"hailed</w>\": 44604,\n  \"hailey</w>\": 27703,\n  \"hailing</w>\": 47288,\n  \"hails</w>\": 32571,\n  \"hailstate</w>\": 35063,\n  \"hain</w>\": 23861,\n  \"hair\": 4658,\n  \"hair</w>\": 2225,\n  \"haircare</w>\": 43682,\n  \"haircut</w>\": 14711,\n  \"hairdresser</w>\": 47468,\n  \"haired</w>\": 27202,\n  \"hairs</w>\": 27951,\n  \"hairstyle</w>\": 22324,\n  \"hairstyles</w>\": 40627,\n  \"hairy</w>\": 26513,\n  \"haiti</w>\": 17368,\n  \"haitian</w>\": 37577,\n  \"haj\": 27885,\n  \"haj</w>\": 43191,\n  \"haji</w>\": 41889,\n  \"hajj</w>\": 35576,\n  \"hak\": 25142,\n  \"hak</w>\": 40671,\n  \"haka</w>\": 44011,\n  \"hake\": 41663,\n  \"hal\": 1296,\n  \"hal</w>\": 8708,\n  \"hala</w>\": 25918,\n  \"halal</w>\": 34216,\n  \"halam\": 29061,\n  \"halamadrid</w>\": 31132,\n  \"halder</w>\": 32201,\n  \"hale\": 37038,\n  \"hale</w>\": 14701,\n  \"halen</w>\": 39204,\n  \"halep</w>\": 49017,\n  \"haley\": 37330,\n  \"haley</w>\": 16839,\n  \"half\": 7453,\n  \"half</w>\": 2349,\n  \"halftime</w>\": 13742,\n  \"halfway</w>\": 16736,\n  \"hali\": 9860,\n  \"hali</w>\": 43030,\n  \"halibut</w>\": 49030,\n  \"halifax</w>\": 13411,\n  \"hall\": 6850,\n  \"hall</w>\": 2140,\n  \"halla</w>\": 29569,\n  \"halle\": 27763,\n  \"halle</w>\": 32239,\n  \"hallelujah</w>\": 36993,\n  \"halli\": 32665,\n  \"hallmark\": 31040,\n  \"hallmark</w>\": 32053,\n  \"hallmarkchannel</w>\": 36840,\n  \"hallo\": 3463,\n  \"halloffame</w>\": 48578,\n  \"halloween\": 28537,\n  \"halloween</w>\": 3739,\n  \"halls</w>\": 18052,\n  \"hallucin\": 35385,\n  \"hallway</w>\": 26845,\n  \"halo\": 33331,\n  \"halo</w>\": 11918,\n  \"halsey</w>\": 34256,\n  \"halt</w>\": 25640,\n  \"halter</w>\": 47194,\n  \"halton</w>\": 45445,\n  \"ham\": 1522,\n  \"ham</w>\": 1714,\n  \"hama</w>\": 17944,\n  \"hamas</w>\": 14818,\n  \"hamburg</w>\": 18409,\n  \"hamburger</w>\": 33928,\n  \"hamid</w>\": 32377,\n  \"hamil\": 6725,\n  \"hamill\": 45784,\n  \"hamill</w>\": 48729,\n  \"hamillhimself</w>\": 47324,\n  \"hamilton\": 22448,\n  \"hamilton</w>\": 7684,\n  \"hamlet</w>\": 27722,\n  \"hamlin</w>\": 49326,\n  \"hamm</w>\": 46110,\n  \"hammer\": 15331,\n  \"hammer</w>\": 9401,\n  \"hammered</w>\": 37251,\n  \"hammers</w>\": 35649,\n  \"hammersmith</w>\": 42127,\n  \"hammock</w>\": 33682,\n  \"hammond</w>\": 21761,\n  \"hamont</w>\": 18518,\n  \"hamp\": 6665,\n  \"hamper</w>\": 27692,\n  \"hampshire</w>\": 16006,\n  \"hampstead</w>\": 37340,\n  \"hampton\": 36582,\n  \"hampton</w>\": 12285,\n  \"hamptons</w>\": 42415,\n  \"hamr</w>\": 47979,\n  \"hamradio</w>\": 36712,\n  \"hams</w>\": 25619,\n  \"hamster</w>\": 33313,\n  \"hamstring</w>\": 39990,\n  \"hamza</w>\": 45762,\n  \"han\": 1545,\n  \"han</w>\": 3565,\n  \"hana</w>\": 16801,\n  \"hand\": 1722,\n  \"hand</w>\": 2463,\n  \"handbag</w>\": 22654,\n  \"handbags</w>\": 35667,\n  \"handball</w>\": 27988,\n  \"handbook</w>\": 25147,\n  \"handcrafted</w>\": 22185,\n  \"handed</w>\": 10881,\n  \"handedly</w>\": 48656,\n  \"handel</w>\": 40072,\n  \"handful</w>\": 23725,\n  \"handheld</w>\": 26812,\n  \"handic\": 17812,\n  \"handicap</w>\": 27063,\n  \"handicapp\": 42349,\n  \"handing</w>\": 19196,\n  \"handle\": 43681,\n  \"handle</w>\": 7245,\n  \"handled</w>\": 26824,\n  \"handler</w>\": 29097,\n  \"handles</w>\": 22124,\n  \"handling</w>\": 14071,\n  \"handmade\": 18054,\n  \"handmade</w>\": 6737,\n  \"handmadehour</w>\": 25724,\n  \"handover</w>\": 46922,\n  \"hands</w>\": 3500,\n  \"handshake</w>\": 38418,\n  \"handsome</w>\": 7438,\n  \"handwriting</w>\": 29986,\n  \"handwritten</w>\": 35192,\n  \"handy</w>\": 13479,\n  \"hane</w>\": 28411,\n  \"hang\": 3351,\n  \"hang</w>\": 5592,\n  \"hangar</w>\": 33439,\n  \"hanged</w>\": 40807,\n  \"hanger</w>\": 28905,\n  \"hangin</w>\": 22670,\n  \"hanging</w>\": 4850,\n  \"hangout</w>\": 17572,\n  \"hangover</w>\": 20755,\n  \"hangs</w>\": 21785,\n  \"hani\": 39944,\n  \"hani</w>\": 18374,\n  \"hank\": 35993,\n  \"hank</w>\": 17655,\n  \"hanks</w>\": 29943,\n  \"hanley</w>\": 47284,\n  \"hann\": 5584,\n  \"hanna</w>\": 10075,\n  \"hannah\": 18622,\n  \"hannah</w>\": 9142,\n  \"hannel</w>\": 43477,\n  \"hanni\": 19493,\n  \"hannibal</w>\": 25149,\n  \"hannity</w>\": 24569,\n  \"hannover</w>\": 39976,\n  \"hanoi</w>\": 36134,\n  \"hanover</w>\": 33246,\n  \"hans\": 35172,\n  \"hans</w>\": 16628,\n  \"hansen</w>\": 19729,\n  \"hanson</w>\": 24602,\n  \"hant\": 40641,\n  \"hanuk\": 32774,\n  \"hanukkah</w>\": 34247,\n  \"hanuman</w>\": 46975,\n  \"hao</w>\": 27184,\n  \"hap\": 44981,\n  \"hap</w>\": 47988,\n  \"happ\": 784,\n  \"happen\": 21486,\n  \"happen</w>\": 4506,\n  \"happened</w>\": 4402,\n  \"happening</w>\": 4284,\n  \"happeningnow</w>\": 43107,\n  \"happenings</w>\": 41998,\n  \"happens</w>\": 4988,\n  \"happier</w>\": 14118,\n  \"happiest</w>\": 13811,\n  \"happily</w>\": 17316,\n  \"happiness</w>\": 5096,\n  \"happy\": 2952,\n  \"happy</w>\": 900,\n  \"happybirthday\": 9651,\n  \"happybirthday</w>\": 12207,\n  \"happydays</w>\": 25106,\n  \"happye\": 33922,\n  \"happyeaster</w>\": 38745,\n  \"happyfathersday</w>\": 43534,\n  \"happyfriday</w>\": 33340,\n  \"happyhalloween</w>\": 28750,\n  \"happyholidays</w>\": 32186,\n  \"happyhour</w>\": 32036,\n  \"happymonday</w>\": 47364,\n  \"happymothersday</w>\": 42425,\n  \"happynewyear</w>\": 18655,\n  \"happythanksgiving</w>\": 40593,\n  \"happyvalentinesday</w>\": 42403,\n  \"haps</w>\": 9114,\n  \"haq</w>\": 32445,\n  \"har\": 915,\n  \"har</w>\": 5888,\n  \"hara</w>\": 10367,\n  \"haram\": 35732,\n  \"haram</w>\": 22950,\n  \"haran</w>\": 27921,\n  \"harare</w>\": 43562,\n  \"haras\": 26644,\n  \"harass\": 16481,\n  \"harassed</w>\": 43067,\n  \"harassment</w>\": 16641,\n  \"harat</w>\": 28984,\n  \"harb\": 5856,\n  \"harbaugh</w>\": 45220,\n  \"harbor\": 40686,\n  \"harbor</w>\": 10202,\n  \"harbour\": 35430,\n  \"harbour</w>\": 10011,\n  \"harcourt</w>\": 48093,\n  \"hard\": 3312,\n  \"hard</w>\": 1626,\n  \"hardcover</w>\": 31123,\n  \"harden</w>\": 27350,\n  \"harder</w>\": 12274,\n  \"hardest</w>\": 15258,\n  \"hardin</w>\": 43802,\n  \"harding</w>\": 24382,\n  \"hardly</w>\": 17363,\n  \"hardro\": 28126,\n  \"hardrock\": 48365,\n  \"hardrock</w>\": 40739,\n  \"hards</w>\": 44048,\n  \"hardship</w>\": 45085,\n  \"hardt</w>\": 17922,\n  \"hardware</w>\": 11957,\n  \"hardwell</w>\": 45572,\n  \"hardwick</w>\": 46864,\n  \"hardwood</w>\": 28167,\n  \"hardwork\": 42554,\n  \"hardwork</w>\": 27404,\n  \"hardworking</w>\": 28095,\n  \"hardworkpaysoff</w>\": 49193,\n  \"hardy\": 48179,\n  \"hardy</w>\": 14113,\n  \"hare\": 27903,\n  \"hare</w>\": 18464,\n  \"harga</w>\": 39738,\n  \"hari\": 25472,\n  \"hari</w>\": 8981,\n  \"harlan</w>\": 49133,\n  \"harle\": 29096,\n  \"harlem</w>\": 17771,\n  \"harley\": 24702,\n  \"harley</w>\": 13632,\n  \"harleydavidson</w>\": 39183,\n  \"harlow</w>\": 34113,\n  \"harm\": 16656,\n  \"harm</w>\": 14452,\n  \"harman</w>\": 42434,\n  \"harmed</w>\": 39637,\n  \"harmful</w>\": 21725,\n  \"harmless</w>\": 44369,\n  \"harmon\": 10828,\n  \"harmon</w>\": 28729,\n  \"harmony</w>\": 10785,\n  \"harms</w>\": 46703,\n  \"harne\": 43323,\n  \"harness</w>\": 23205,\n  \"harold</w>\": 16917,\n  \"harp</w>\": 27339,\n  \"harper\": 31288,\n  \"harper</w>\": 12634,\n  \"harri\": 6639,\n  \"harrier</w>\": 37372,\n  \"harriet</w>\": 27154,\n  \"harrington</w>\": 34340,\n  \"harris\": 25356,\n  \"harris</w>\": 6925,\n  \"harrisburg</w>\": 40590,\n  \"harrison\": 34389,\n  \"harrison</w>\": 10540,\n  \"harro\": 18939,\n  \"harrogate</w>\": 30842,\n  \"harrow</w>\": 38807,\n  \"harry\": 11094,\n  \"harry</w>\": 3600,\n  \"harrypotter</w>\": 23375,\n  \"harsh\": 30596,\n  \"harsh</w>\": 16944,\n  \"hart\": 9335,\n  \"hart</w>\": 7752,\n  \"hartford</w>\": 23434,\n  \"harth</w>\": 35619,\n  \"hartle\": 47482,\n  \"hartley</w>\": 31268,\n  \"hartman</w>\": 43294,\n  \"haru</w>\": 35099,\n  \"harvard\": 28118,\n  \"harvard</w>\": 12848,\n  \"harve\": 6405,\n  \"harvest\": 44495,\n  \"harvest</w>\": 8971,\n  \"harvested</w>\": 35899,\n  \"harvesting</w>\": 26674,\n  \"harvey\": 33289,\n  \"harvey</w>\": 9586,\n  \"harvick</w>\": 46983,\n  \"haryana</w>\": 27661,\n  \"has\": 13855,\n  \"has</w>\": 791,\n  \"hasan</w>\": 30049,\n  \"hasbro</w>\": 37405,\n  \"hash\": 6338,\n  \"hash</w>\": 19199,\n  \"hashi</w>\": 41831,\n  \"hashmi</w>\": 35852,\n  \"hashtag\": 34015,\n  \"hashtag</w>\": 9238,\n  \"hashtags</w>\": 23514,\n  \"haskell</w>\": 48550,\n  \"hasn</w>\": 9143,\n  \"hass\": 9298,\n  \"hassan</w>\": 15829,\n  \"hassee</w>\": 37117,\n  \"hassel\": 32204,\n  \"hassle</w>\": 35762,\n  \"hast\": 18146,\n  \"hasta</w>\": 36623,\n  \"hastings</w>\": 22035,\n  \"hat\": 3447,\n  \"hat</w>\": 3801,\n  \"hatch\": 24202,\n  \"hatch</w>\": 17809,\n  \"hatchback</w>\": 42348,\n  \"hatched</w>\": 42158,\n  \"hate\": 23546,\n  \"hate</w>\": 3753,\n  \"hated</w>\": 21298,\n  \"hateful</w>\": 36418,\n  \"hater</w>\": 36917,\n  \"haters</w>\": 14027,\n  \"hates</w>\": 14957,\n  \"hatfield</w>\": 38448,\n  \"hath\": 27894,\n  \"hath</w>\": 34416,\n  \"hathaway</w>\": 31801,\n  \"hati</w>\": 26045,\n  \"hating</w>\": 25668,\n  \"hatred</w>\": 19046,\n  \"hats</w>\": 9812,\n  \"hatt\": 8747,\n  \"hatton</w>\": 44861,\n  \"hau\": 5152,\n  \"hauer</w>\": 48751,\n  \"haul\": 23743,\n  \"haul</w>\": 12332,\n  \"hauled</w>\": 46620,\n  \"hauling</w>\": 43132,\n  \"haun\": 9676,\n  \"haunt</w>\": 31039,\n  \"haunted</w>\": 14944,\n  \"haunting</w>\": 24034,\n  \"haunts</w>\": 48035,\n  \"haus\": 41755,\n  \"haus</w>\": 16478,\n  \"hausen</w>\": 33338,\n  \"hauser</w>\": 46586,\n  \"haute</w>\": 28854,\n  \"hav\": 13443,\n  \"hav</w>\": 20447,\n  \"havan</w>\": 36304,\n  \"havana</w>\": 23357,\n  \"havas\": 46261,\n  \"have\": 18053,\n  \"have</w>\": 720,\n  \"haven\": 33074,\n  \"haven</w>\": 3871,\n  \"havent</w>\": 29130,\n  \"haver\": 27876,\n  \"haves</w>\": 49088,\n  \"havin</w>\": 31937,\n  \"having</w>\": 1977,\n  \"havoc</w>\": 24447,\n  \"haw\": 2788,\n  \"haw</w>\": 26954,\n  \"hawa\": 6067,\n  \"hawa</w>\": 46278,\n  \"hawai\": 15800,\n  \"hawaii\": 32413,\n  \"hawaii</w>\": 8265,\n  \"hawaiian</w>\": 17734,\n  \"hawan</w>\": 27765,\n  \"hawk\": 14704,\n  \"hawk</w>\": 8218,\n  \"hawke</w>\": 38178,\n  \"hawker</w>\": 39051,\n  \"hawkeye</w>\": 38666,\n  \"hawkeyes</w>\": 34266,\n  \"hawking</w>\": 33437,\n  \"hawkins</w>\": 19740,\n  \"hawks\": 44806,\n  \"hawks</w>\": 5841,\n  \"hawthorn</w>\": 45372,\n  \"hawthorne</w>\": 36730,\n  \"hay\": 4871,\n  \"hay</w>\": 11367,\n  \"haya</w>\": 41325,\n  \"hayat</w>\": 49360,\n  \"hayden</w>\": 19806,\n  \"haydn</w>\": 48207,\n  \"haye\": 36583,\n  \"hayes</w>\": 13555,\n  \"hayley\": 39986,\n  \"hayley</w>\": 22204,\n  \"haynes</w>\": 30496,\n  \"hays</w>\": 41524,\n  \"hayward</w>\": 29400,\n  \"haz\": 5040,\n  \"haz</w>\": 39921,\n  \"hazard\": 26174,\n  \"hazard</w>\": 15178,\n  \"hazardous</w>\": 27102,\n  \"hazards</w>\": 30639,\n  \"haze</w>\": 22785,\n  \"hazel\": 19838,\n  \"hazel</w>\": 21882,\n  \"hazelnut</w>\": 35816,\n  \"hazi</w>\": 22740,\n  \"hazmat</w>\": 48887,\n  \"hazrat</w>\": 45775,\n  \"hazy</w>\": 32655,\n  \"hb\": 6854,\n  \"hb</w>\": 12576,\n  \"hbcu</w>\": 40008,\n  \"hbd\": 25277,\n  \"hbd</w>\": 13594,\n  \"hbo</w>\": 15252,\n  \"hc\": 15831,\n  \"hc</w>\": 7821,\n  \"hcs</w>\": 46850,\n  \"hd\": 11601,\n  \"hd</w>\": 4414,\n  \"hdd</w>\": 40508,\n  \"hdmi</w>\": 33302,\n  \"hdr</w>\": 28065,\n  \"he\": 651,\n  \"he</w>\": 797,\n  \"hea\": 27150,\n  \"hea</w>\": 32790,\n  \"head\": 1603,\n  \"head</w>\": 1375,\n  \"headache</w>\": 23849,\n  \"headaches</w>\": 38025,\n  \"headband</w>\": 28556,\n  \"headed</w>\": 6153,\n  \"header</w>\": 11077,\n  \"heading</w>\": 4409,\n  \"headless</w>\": 45219,\n  \"headlights</w>\": 42422,\n  \"headline</w>\": 10891,\n  \"headliner</w>\": 38880,\n  \"headlines</w>\": 14706,\n  \"headlining</w>\": 26971,\n  \"headphone</w>\": 37524,\n  \"headphones</w>\": 14906,\n  \"headquarters</w>\": 13041,\n  \"heads</w>\": 5174,\n  \"headset</w>\": 23883,\n  \"headshot</w>\": 34890,\n  \"heal\": 1231,\n  \"heal</w>\": 13833,\n  \"healed</w>\": 31456,\n  \"healer</w>\": 38328,\n  \"healey</w>\": 38985,\n  \"healing</w>\": 9295,\n  \"heals</w>\": 32384,\n  \"health\": 2145,\n  \"health</w>\": 1728,\n  \"healthand\": 43704,\n  \"healthcare\": 42500,\n  \"healthcare</w>\": 6023,\n  \"healthier</w>\": 18242,\n  \"healthtech</w>\": 42694,\n  \"healthy\": 10330,\n  \"healthy</w>\": 3782,\n  \"healthye\": 31532,\n  \"healthyeating</w>\": 33761,\n  \"healthyfood</w>\": 39996,\n  \"healthylifestyle</w>\": 46254,\n  \"healthyliving</w>\": 27293,\n  \"healy</w>\": 34299,\n  \"heap</w>\": 34781,\n  \"heaps</w>\": 44446,\n  \"hear\": 2749,\n  \"hear</w>\": 2584,\n  \"heard</w>\": 4063,\n  \"hearing\": 46353,\n  \"hearing</w>\": 5541,\n  \"hearings</w>\": 33175,\n  \"hearn</w>\": 36613,\n  \"hears</w>\": 25395,\n  \"heart\": 4975,\n  \"heart</w>\": 1936,\n  \"heartbeat</w>\": 29154,\n  \"heartbreak</w>\": 29281,\n  \"heartbreaking</w>\": 21322,\n  \"heartbroken</w>\": 35383,\n  \"hearted</w>\": 21679,\n  \"heartfelt</w>\": 22904,\n  \"hearth\": 31563,\n  \"hearthstone</w>\": 34054,\n  \"hearti\": 29345,\n  \"hearties</w>\": 44572,\n  \"heartland</w>\": 31923,\n  \"heartless</w>\": 47022,\n  \"heartnews</w>\": 40426,\n  \"hearts</w>\": 5516,\n  \"heartw\": 30002,\n  \"heartwarming</w>\": 34080,\n  \"hearty</w>\": 26994,\n  \"heat\": 12175,\n  \"heat</w>\": 4403,\n  \"heated</w>\": 17057,\n  \"heater</w>\": 23246,\n  \"heath\": 12794,\n  \"heath</w>\": 11719,\n  \"heather\": 20230,\n  \"heather</w>\": 12470,\n  \"heathrow</w>\": 24171,\n  \"heating</w>\": 12478,\n  \"heaton</w>\": 34557,\n  \"heats</w>\": 36106,\n  \"heatwave</w>\": 25726,\n  \"heav\": 2409,\n  \"heaven\": 15520,\n  \"heaven</w>\": 5545,\n  \"heavenly</w>\": 19117,\n  \"heavens</w>\": 26026,\n  \"heavier</w>\": 31253,\n  \"heaviest</w>\": 33268,\n  \"heavily</w>\": 14123,\n  \"heavy\": 12048,\n  \"heavy</w>\": 4200,\n  \"heavymetal</w>\": 39804,\n  \"heavyweight</w>\": 17448,\n  \"heb\": 24700,\n  \"heb</w>\": 34515,\n  \"hebdo</w>\": 41817,\n  \"hebrew</w>\": 27298,\n  \"hebrides</w>\": 45121,\n  \"hebron</w>\": 45725,\n  \"hec\": 18932,\n  \"heck\": 22985,\n  \"heck</w>\": 14427,\n  \"hectares</w>\": 44162,\n  \"hectic</w>\": 37245,\n  \"hector</w>\": 25852,\n  \"hed\": 18271,\n  \"hedge\": 16229,\n  \"hedge</w>\": 20294,\n  \"hedgehog</w>\": 21940,\n  \"hedges</w>\": 41345,\n  \"hee\": 18364,\n  \"hee</w>\": 15773,\n  \"heechul</w>\": 42487,\n  \"heed</w>\": 15118,\n  \"heel\": 33646,\n  \"heel</w>\": 16861,\n  \"heels</w>\": 10909,\n  \"heem</w>\": 30061,\n  \"heer</w>\": 40473,\n  \"hef\": 29473,\n  \"heff\": 48756,\n  \"hefty</w>\": 48584,\n  \"heg\": 41995,\n  \"heh</w>\": 25834,\n  \"hehe\": 48723,\n  \"hehe</w>\": 10658,\n  \"hehehe</w>\": 24138,\n  \"hei\": 6101,\n  \"hei</w>\": 29051,\n  \"heidel\": 42927,\n  \"heidelberg</w>\": 48445,\n  \"heidi\": 44860,\n  \"heidi</w>\": 23867,\n  \"heifer</w>\": 48219,\n  \"heigh\": 43883,\n  \"height</w>\": 10788,\n  \"heights</w>\": 8418,\n  \"heim\": 10931,\n  \"heim</w>\": 9768,\n  \"heimer</w>\": 39517,\n  \"hein\": 15487,\n  \"hein</w>\": 43206,\n  \"heine\": 28742,\n  \"heineken</w>\": 36874,\n  \"heinrich</w>\": 47877,\n  \"heinz</w>\": 32359,\n  \"heir\": 27083,\n  \"heir</w>\": 34007,\n  \"heirloom</w>\": 34232,\n  \"heirs</w>\": 43834,\n  \"heis\": 21849,\n  \"heisman</w>\": 34537,\n  \"heist</w>\": 31035,\n  \"heit</w>\": 37255,\n  \"hel\": 919,\n  \"hel</w>\": 11579,\n  \"hela</w>\": 48212,\n  \"held</w>\": 4042,\n  \"hele</w>\": 46129,\n  \"helen\": 17576,\n  \"helen</w>\": 11291,\n  \"helena</w>\": 23109,\n  \"helene</w>\": 41591,\n  \"helens</w>\": 45940,\n  \"heli\": 33874,\n  \"heli</w>\": 40183,\n  \"helicop\": 10035,\n  \"helicopter</w>\": 11956,\n  \"helicopters</w>\": 26922,\n  \"helium</w>\": 46505,\n  \"helix</w>\": 35247,\n  \"hell\": 8410,\n  \"hell</w>\": 4141,\n  \"hella</w>\": 19800,\n  \"hellboy</w>\": 48428,\n  \"helle\": 48600,\n  \"helle</w>\": 46968,\n  \"hellenic</w>\": 42544,\n  \"heller</w>\": 44464,\n  \"hello\": 12887,\n  \"hello</w>\": 3306,\n  \"hells</w>\": 47989,\n  \"helly</w>\": 48690,\n  \"helm\": 47970,\n  \"helm</w>\": 19520,\n  \"helmet</w>\": 11122,\n  \"helmets</w>\": 21843,\n  \"help\": 8641,\n  \"help</w>\": 1318,\n  \"helped</w>\": 4845,\n  \"helper</w>\": 29321,\n  \"helpers</w>\": 36316,\n  \"helpful</w>\": 12695,\n  \"helping</w>\": 3875,\n  \"helpless</w>\": 47638,\n  \"helpline</w>\": 43101,\n  \"helps</w>\": 5144,\n  \"helsin\": 17842,\n  \"helsinki</w>\": 19626,\n  \"hem\": 20270,\n  \"hem</w>\": 11148,\n  \"hemi\": 14256,\n  \"hemi</w>\": 46856,\n  \"heming\": 30819,\n  \"hemingway</w>\": 33470,\n  \"hemisphere</w>\": 32767,\n  \"hemmings</w>\": 34882,\n  \"hemo\": 43788,\n  \"hemp\": 28225,\n  \"hemp</w>\": 18467,\n  \"hems\": 32451,\n  \"hemsworth</w>\": 39428,\n  \"hen\": 2385,\n  \"hen</w>\": 8047,\n  \"hence</w>\": 23640,\n  \"hend\": 11560,\n  \"hender\": 49248,\n  \"henderson</w>\": 14348,\n  \"hendrick</w>\": 45296,\n  \"hendricks</w>\": 37588,\n  \"hendrix</w>\": 23605,\n  \"henge</w>\": 33104,\n  \"henley</w>\": 27853,\n  \"henna</w>\": 39455,\n  \"hennessy</w>\": 42667,\n  \"henri\": 19431,\n  \"henri</w>\": 21610,\n  \"henrik</w>\": 35772,\n  \"henry\": 16018,\n  \"henry</w>\": 5508,\n  \"hens</w>\": 31742,\n  \"henson</w>\": 32935,\n  \"hep\": 17724,\n  \"hep</w>\": 48791,\n  \"hepat\": 23767,\n  \"hepatitis</w>\": 32169,\n  \"hepburn</w>\": 26348,\n  \"her\": 1223,\n  \"her</w>\": 899,\n  \"hera</w>\": 38724,\n  \"heral\": 37809,\n  \"herald\": 27625,\n  \"herald</w>\": 12851,\n  \"herb\": 26116,\n  \"herb</w>\": 15302,\n  \"herbal</w>\": 21868,\n  \"herbali\": 44087,\n  \"herbalife</w>\": 48364,\n  \"herbert</w>\": 19935,\n  \"herbs</w>\": 17320,\n  \"hercules</w>\": 26539,\n  \"herd\": 36142,\n  \"herd</w>\": 18589,\n  \"here\": 9134,\n  \"here</w>\": 763,\n  \"hered\": 47976,\n  \"hereford</w>\": 35543,\n  \"heres</w>\": 13566,\n  \"hereto\": 47673,\n  \"heri</w>\": 31392,\n  \"herit\": 4720,\n  \"heritag\": 38273,\n  \"heritage\": 20962,\n  \"heritage</w>\": 5455,\n  \"herman\": 31890,\n  \"herman</w>\": 21568,\n  \"hermann</w>\": 40942,\n  \"hermes</w>\": 34563,\n  \"hermi\": 35265,\n  \"hermione</w>\": 45502,\n  \"hermit</w>\": 43953,\n  \"hermitage</w>\": 47706,\n  \"hermo\": 40967,\n  \"hermosa</w>\": 42531,\n  \"hern\": 30571,\n  \"hern</w>\": 43576,\n  \"hernandez</w>\": 17707,\n  \"hero\": 7338,\n  \"hero</w>\": 3756,\n  \"heroes\": 38010,\n  \"heroes</w>\": 5506,\n  \"heroic</w>\": 24255,\n  \"heroin</w>\": 23841,\n  \"heroine</w>\": 27420,\n  \"heron</w>\": 22593,\n  \"heros</w>\": 37642,\n  \"herr</w>\": 38537,\n  \"herrera</w>\": 27755,\n  \"herring</w>\": 30211,\n  \"hers</w>\": 25359,\n  \"herself</w>\": 9207,\n  \"hersh\": 20379,\n  \"hershey</w>\": 29734,\n  \"hert\": 26744,\n  \"hertfordshire</w>\": 41070,\n  \"herts</w>\": 35784,\n  \"herty</w>\": 23454,\n  \"hertz</w>\": 49383,\n  \"hes\": 30553,\n  \"hes</w>\": 12784,\n  \"hesit\": 23933,\n  \"hesitate</w>\": 34967,\n  \"hess</w>\": 41888,\n  \"hester</w>\": 31105,\n  \"het\": 37527,\n  \"het</w>\": 19678,\n  \"hetero\": 26405,\n  \"heu\": 20105,\n  \"heughan</w>\": 32298,\n  \"hew\": 48141,\n  \"hew</w>\": 43051,\n  \"hewitt</w>\": 28871,\n  \"hex\": 16255,\n  \"hex</w>\": 31241,\n  \"hey\": 10759,\n  \"hey</w>\": 2189,\n  \"hez\": 34591,\n  \"hezbollah</w>\": 37636,\n  \"hf\": 26606,\n  \"hf</w>\": 20603,\n  \"hfx\": 47297,\n  \"hg\": 23986,\n  \"hg</w>\": 26237,\n  \"hgtv</w>\": 47657,\n  \"hh\": 3280,\n  \"hh</w>\": 5180,\n  \"hhh</w>\": 8281,\n  \"hhhh\": 19391,\n  \"hhhh</w>\": 13121,\n  \"hhhhh</w>\": 24246,\n  \"hhhhhh</w>\": 37278,\n  \"hhs</w>\": 27006,\n  \"hi\": 677,\n  \"hi</w>\": 1883,\n  \"hia</w>\": 20672,\n  \"hiatus</w>\": 27823,\n  \"hib\": 15922,\n  \"hiber\": 38799,\n  \"hibis\": 36226,\n  \"hibiscus</w>\": 36460,\n  \"hibition</w>\": 24658,\n  \"hibs</w>\": 42814,\n  \"hic\": 3549,\n  \"hic</w>\": 38079,\n  \"hick\": 14813,\n  \"hickman</w>\": 49148,\n  \"hickory</w>\": 29905,\n  \"hicks</w>\": 23429,\n  \"hid\": 15552,\n  \"hid</w>\": 14451,\n  \"hidalgo</w>\": 47464,\n  \"hidden\": 28305,\n  \"hidden</w>\": 7029,\n  \"hiddleston</w>\": 31444,\n  \"hide\": 17725,\n  \"hide</w>\": 9379,\n  \"hideous</w>\": 46588,\n  \"hides</w>\": 30800,\n  \"hiding</w>\": 11371,\n  \"hie</w>\": 15763,\n  \"hier\": 23433,\n  \"hier</w>\": 29913,\n  \"hierarchy</w>\": 44442,\n  \"hifi</w>\": 38168,\n  \"hig\": 38108,\n  \"higgins</w>\": 21783,\n  \"high\": 1487,\n  \"high</w>\": 1400,\n  \"higher</w>\": 5321,\n  \"highered</w>\": 27072,\n  \"highest</w>\": 5317,\n  \"highland\": 32244,\n  \"highland</w>\": 16062,\n  \"highlander</w>\": 46251,\n  \"highlanders</w>\": 40445,\n  \"highlands</w>\": 16883,\n  \"highlight</w>\": 8264,\n  \"highlighted</w>\": 22252,\n  \"highlighter</w>\": 45460,\n  \"highlighting</w>\": 17344,\n  \"highlights</w>\": 6173,\n  \"highly</w>\": 5302,\n  \"highness</w>\": 38694,\n  \"highs</w>\": 15144,\n  \"highschool</w>\": 23102,\n  \"highway\": 45344,\n  \"highway</w>\": 7620,\n  \"highways</w>\": 28007,\n  \"higu\": 39115,\n  \"hihi</w>\": 36240,\n  \"hii</w>\": 42315,\n  \"hijab</w>\": 31407,\n  \"hika</w>\": 41356,\n  \"hikari</w>\": 44624,\n  \"hike</w>\": 9404,\n  \"hiked</w>\": 36471,\n  \"hiker</w>\": 40947,\n  \"hikers</w>\": 46090,\n  \"hikes</w>\": 27076,\n  \"hiking</w>\": 9118,\n  \"hiko</w>\": 48708,\n  \"hil\": 3508,\n  \"hil</w>\": 17927,\n  \"hila</w>\": 38837,\n  \"hilar\": 37337,\n  \"hilari\": 7784,\n  \"hilarious</w>\": 8358,\n  \"hilariously</w>\": 43476,\n  \"hilary\": 45898,\n  \"hilary</w>\": 25415,\n  \"hilde\": 45382,\n  \"hill\": 3671,\n  \"hill</w>\": 2682,\n  \"hillary\": 13257,\n  \"hillary</w>\": 7074,\n  \"hillaryclinton</w>\": 15357,\n  \"hilli\": 32513,\n  \"hills\": 24178,\n  \"hills</w>\": 5289,\n  \"hillsborough</w>\": 32157,\n  \"hillside</w>\": 37194,\n  \"hilltop</w>\": 45858,\n  \"hilly</w>\": 32483,\n  \"hilton\": 33621,\n  \"hilton</w>\": 14012,\n  \"him\": 4128,\n  \"him</w>\": 1269,\n  \"himach\": 29132,\n  \"himachal</w>\": 35461,\n  \"himalay\": 17552,\n  \"himalayan</w>\": 30318,\n  \"himalayas</w>\": 32872,\n  \"hime</w>\": 45892,\n  \"himself</w>\": 4530,\n  \"himss</w>\": 41730,\n  \"hin\": 1676,\n  \"hin</w>\": 37930,\n  \"hina</w>\": 40571,\n  \"hinakhan</w>\": 45518,\n  \"hinch\": 49320,\n  \"hind\": 34460,\n  \"hind</w>\": 23293,\n  \"hindi</w>\": 14967,\n  \"hinds</w>\": 47859,\n  \"hindu\": 17587,\n  \"hindu</w>\": 12053,\n  \"hinduism</w>\": 40592,\n  \"hindus</w>\": 25701,\n  \"hindustan</w>\": 46553,\n  \"hines</w>\": 37462,\n  \"hing\": 37968,\n  \"hini</w>\": 33564,\n  \"hino</w>\": 45343,\n  \"hint</w>\": 11868,\n  \"hinton</w>\": 47165,\n  \"hints</w>\": 20594,\n  \"hio</w>\": 32897,\n  \"hip\": 11725,\n  \"hip</w>\": 6584,\n  \"hipho\": 8819,\n  \"hiphop\": 26598,\n  \"hiphop</w>\": 10914,\n  \"hipp\": 13607,\n  \"hippie</w>\": 28637,\n  \"hippo\": 28398,\n  \"hippo</w>\": 36729,\n  \"hips</w>\": 30191,\n  \"hipstamatic</w>\": 31002,\n  \"hipster</w>\": 19987,\n  \"hipsters</w>\": 48265,\n  \"hir\": 4959,\n  \"hir</w>\": 14728,\n  \"hira</w>\": 42577,\n  \"hire\": 32356,\n  \"hire</w>\": 8243,\n  \"hired</w>\": 17602,\n  \"hires</w>\": 24133,\n  \"hiring</w>\": 7835,\n  \"hiro\": 17396,\n  \"hiro</w>\": 20588,\n  \"hiroshima</w>\": 33867,\n  \"hirsch</w>\": 46967,\n  \"his\": 15211,\n  \"his</w>\": 787,\n  \"hism</w>\": 23502,\n  \"hispan\": 16843,\n  \"hispanic</w>\": 22676,\n  \"hist\": 21710,\n  \"hist</w>\": 13779,\n  \"histo\": 33479,\n  \"histor\": 2993,\n  \"historia</w>\": 46010,\n  \"historian</w>\": 20697,\n  \"historians</w>\": 35200,\n  \"historic\": 30195,\n  \"historic</w>\": 5726,\n  \"historical\": 34154,\n  \"historical</w>\": 8039,\n  \"historically</w>\": 30445,\n  \"histories</w>\": 34736,\n  \"history\": 11142,\n  \"history</w>\": 1695,\n  \"historymonth</w>\": 19356,\n  \"historyof\": 35905,\n  \"hit\": 5453,\n  \"hit</w>\": 2341,\n  \"hitch\": 22937,\n  \"hitch</w>\": 36203,\n  \"hitler</w>\": 16518,\n  \"hitman</w>\": 33290,\n  \"hits</w>\": 4712,\n  \"hitter</w>\": 23538,\n  \"hitters</w>\": 39724,\n  \"hitting</w>\": 7957,\n  \"hiv\": 44410,\n  \"hiv</w>\": 11018,\n  \"hive\": 38162,\n  \"hive</w>\": 18521,\n  \"hiya</w>\": 42393,\n  \"hk\": 22648,\n  \"hk</w>\": 12307,\n  \"hl\": 8297,\n  \"hl</w>\": 5956,\n  \"hle</w>\": 32389,\n  \"hler</w>\": 35418,\n  \"hm\": 17913,\n  \"hm</w>\": 7631,\n  \"hmm</w>\": 13725,\n  \"hmmm</w>\": 17032,\n  \"hmmmm</w>\": 34598,\n  \"hms</w>\": 14625,\n  \"hmu</w>\": 21630,\n  \"hmv</w>\": 49288,\n  \"hn\": 22905,\n  \"hn</w>\": 7478,\n  \"hns</w>\": 48412,\n  \"ho\": 606,\n  \"ho</w>\": 2971,\n  \"hoa</w>\": 37517,\n  \"hoar\": 31628,\n  \"hoax</w>\": 33438,\n  \"hob\": 18212,\n  \"hobart</w>\": 31646,\n  \"hobb\": 16175,\n  \"hobbies</w>\": 36370,\n  \"hobbit</w>\": 23207,\n  \"hobbs</w>\": 34343,\n  \"hobby\": 41120,\n  \"hobby</w>\": 17557,\n  \"hobo\": 34613,\n  \"hobo</w>\": 41334,\n  \"hoboken</w>\": 41568,\n  \"hoc</w>\": 35880,\n  \"hoch\": 43772,\n  \"hock\": 34914,\n  \"hock</w>\": 46574,\n  \"hockey\": 16499,\n  \"hockey</w>\": 4111,\n  \"hoco</w>\": 34771,\n  \"hod\": 31062,\n  \"hodg\": 23660,\n  \"hodge</w>\": 40585,\n  \"hodges</w>\": 35061,\n  \"hodgson</w>\": 37044,\n  \"hoe\": 32502,\n  \"hoe</w>\": 11262,\n  \"hoek</w>\": 40073,\n  \"hoes</w>\": 21164,\n  \"hof\": 20186,\n  \"hof</w>\": 12789,\n  \"hofer</w>\": 38654,\n  \"hoff\": 32860,\n  \"hoff</w>\": 22751,\n  \"hofficial</w>\": 41949,\n  \"hoffman</w>\": 22026,\n  \"hog\": 12075,\n  \"hog</w>\": 13255,\n  \"hogan</w>\": 19757,\n  \"hogg</w>\": 42005,\n  \"hogs</w>\": 23242,\n  \"hogwarts</w>\": 29168,\n  \"hoh</w>\": 43947,\n  \"hoi\": 39295,\n  \"hok\": 26942,\n  \"hok</w>\": 47167,\n  \"hokies</w>\": 35168,\n  \"hokkaido</w>\": 49145,\n  \"hol\": 1187,\n  \"hol</w>\": 7349,\n  \"hola</w>\": 28724,\n  \"hold\": 36496,\n  \"hold</w>\": 3254,\n  \"holden</w>\": 21869,\n  \"holder</w>\": 7862,\n  \"holders</w>\": 10074,\n  \"holding</w>\": 5050,\n  \"holdings</w>\": 24832,\n  \"holds</w>\": 7286,\n  \"hole\": 47242,\n  \"hole</w>\": 5341,\n  \"holes</w>\": 11266,\n  \"holi\": 2093,\n  \"holi</w>\": 21926,\n  \"holic</w>\": 16348,\n  \"holics</w>\": 29782,\n  \"holiday\": 13168,\n  \"holiday</w>\": 2878,\n  \"holidays</w>\": 5372,\n  \"holiness</w>\": 37259,\n  \"holistic</w>\": 26300,\n  \"holl\": 27699,\n  \"holla</w>\": 26500,\n  \"holland\": 31608,\n  \"holland</w>\": 9978,\n  \"hollande</w>\": 47690,\n  \"holler</w>\": 49047,\n  \"holli\": 24019,\n  \"holliday</w>\": 41624,\n  \"hollow\": 41221,\n  \"hollow</w>\": 16691,\n  \"holloway</w>\": 29435,\n  \"holly\": 12731,\n  \"holly</w>\": 11923,\n  \"hollyo\": 41525,\n  \"hollyoaks</w>\": 43352,\n  \"hollywood\": 24655,\n  \"hollywood</w>\": 5518,\n  \"holm\": 34758,\n  \"holm</w>\": 12739,\n  \"holme</w>\": 46149,\n  \"holmes</w>\": 12756,\n  \"holo\": 10317,\n  \"holocau\": 14688,\n  \"holocaust</w>\": 16476,\n  \"hols</w>\": 33344,\n  \"holt</w>\": 18868,\n  \"holtz</w>\": 44743,\n  \"holy\": 13910,\n  \"holy</w>\": 4874,\n  \"hom\": 906,\n  \"hom</w>\": 47397,\n  \"homa</w>\": 9557,\n  \"homage</w>\": 17746,\n  \"home\": 2143,\n  \"home</w>\": 1137,\n  \"homebrew</w>\": 35046,\n  \"homec\": 33869,\n  \"homecoming</w>\": 9008,\n  \"homedecor</w>\": 15695,\n  \"homedepot</w>\": 38707,\n  \"homegrown</w>\": 32554,\n  \"homeitems</w>\": 42972,\n  \"homeland</w>\": 21633,\n  \"homeless\": 18403,\n  \"homeless</w>\": 9661,\n  \"homelessness</w>\": 19851,\n  \"homemade</w>\": 7889,\n  \"homeof\": 48856,\n  \"homeowner</w>\": 37267,\n  \"homeowners</w>\": 29882,\n  \"homepage</w>\": 29828,\n  \"homer\": 29307,\n  \"homer</w>\": 16931,\n  \"homers</w>\": 38333,\n  \"homes\": 19480,\n  \"homes</w>\": 5416,\n  \"homeschool</w>\": 40994,\n  \"homestead</w>\": 32609,\n  \"homeswee\": 46298,\n  \"hometown</w>\": 12238,\n  \"homework</w>\": 12495,\n  \"homicide</w>\": 21520,\n  \"homie</w>\": 12540,\n  \"homies</w>\": 18893,\n  \"homme</w>\": 26193,\n  \"homo\": 18129,\n  \"homo</w>\": 30504,\n  \"homophobia</w>\": 37875,\n  \"homophobic</w>\": 40975,\n  \"homosexual</w>\": 44288,\n  \"homosexuality</w>\": 46720,\n  \"homs</w>\": 45413,\n  \"hon\": 1279,\n  \"hon</w>\": 10296,\n  \"honda</w>\": 8553,\n  \"honduras</w>\": 29715,\n  \"hone</w>\": 38640,\n  \"honest\": 7814,\n  \"honest</w>\": 9602,\n  \"honestly</w>\": 9155,\n  \"honesty</w>\": 24939,\n  \"honey\": 9843,\n  \"honey</w>\": 6406,\n  \"honeycomb</w>\": 48583,\n  \"honeymoon</w>\": 22527,\n  \"hong\": 12144,\n  \"hong</w>\": 8598,\n  \"hongkong</w>\": 16659,\n  \"honi</w>\": 17918,\n  \"honolulu</w>\": 28096,\n  \"honor\": 9206,\n  \"honor</w>\": 3402,\n  \"honorable</w>\": 19498,\n  \"honorary</w>\": 15675,\n  \"honore\": 25868,\n  \"honored</w>\": 5494,\n  \"honoree</w>\": 38993,\n  \"honorees</w>\": 43012,\n  \"honoring</w>\": 10771,\n  \"honors</w>\": 10248,\n  \"honour</w>\": 8240,\n  \"honourable</w>\": 29855,\n  \"honoured</w>\": 11945,\n  \"honouring</w>\": 37754,\n  \"honours</w>\": 22558,\n  \"hoo\": 2300,\n  \"hoo</w>\": 7920,\n  \"hood\": 18681,\n  \"hood</w>\": 3222,\n  \"hooded</w>\": 33631,\n  \"hoodie</w>\": 13444,\n  \"hoodies</w>\": 25974,\n  \"hoods</w>\": 16664,\n  \"hoof</w>\": 44555,\n  \"hook\": 30488,\n  \"hook</w>\": 10395,\n  \"hookah</w>\": 34214,\n  \"hooked</w>\": 18138,\n  \"hookem</w>\": 31465,\n  \"hooker</w>\": 37891,\n  \"hooking</w>\": 35240,\n  \"hooks</w>\": 25068,\n  \"hooligans</w>\": 48176,\n  \"hoon</w>\": 21368,\n  \"hooo</w>\": 44538,\n  \"hoop\": 31516,\n  \"hoop</w>\": 19573,\n  \"hooper</w>\": 35221,\n  \"hoops</w>\": 9351,\n  \"hoor\": 22155,\n  \"hooray</w>\": 24940,\n  \"hoos</w>\": 46462,\n  \"hoosier</w>\": 48886,\n  \"hoosiers</w>\": 42780,\n  \"hoot</w>\": 29164,\n  \"hoover</w>\": 25691,\n  \"hop\": 10848,\n  \"hop</w>\": 5833,\n  \"hope\": 5263,\n  \"hope</w>\": 1683,\n  \"hoped</w>\": 30628,\n  \"hopeful</w>\": 21453,\n  \"hopefully</w>\": 7602,\n  \"hopeless</w>\": 35586,\n  \"hopes</w>\": 10018,\n  \"hoping</w>\": 7207,\n  \"hopkins</w>\": 17821,\n  \"hopp\": 48839,\n  \"hopped</w>\": 34220,\n  \"hopper</w>\": 21748,\n  \"hopping</w>\": 27606,\n  \"hoppy</w>\": 38359,\n  \"hops</w>\": 21137,\n  \"hor\": 1407,\n  \"hor</w>\": 33847,\n  \"hora</w>\": 26013,\n  \"horace</w>\": 39282,\n  \"horan</w>\": 26857,\n  \"horde</w>\": 44947,\n  \"hore</w>\": 15380,\n  \"horiz\": 8144,\n  \"horizon\": 17924,\n  \"horizon</w>\": 11920,\n  \"horizons</w>\": 29685,\n  \"horizontal</w>\": 25775,\n  \"hormon\": 27096,\n  \"hormone</w>\": 31283,\n  \"hormones</w>\": 35162,\n  \"horn\": 15771,\n  \"horn</w>\": 9607,\n  \"horne</w>\": 38143,\n  \"horned</w>\": 34526,\n  \"hornet</w>\": 28739,\n  \"hornets</w>\": 20124,\n  \"horns</w>\": 22109,\n  \"horny</w>\": 32622,\n  \"horo\": 21500,\n  \"horoscope</w>\": 38453,\n  \"horowitz</w>\": 44669,\n  \"horri\": 8656,\n  \"horrible</w>\": 13726,\n  \"horribly</w>\": 45484,\n  \"horrific</w>\": 25314,\n  \"horrifying</w>\": 38901,\n  \"horror\": 13787,\n  \"horror</w>\": 5032,\n  \"horrormovies</w>\": 46682,\n  \"horrors</w>\": 33321,\n  \"horse\": 8562,\n  \"horse</w>\": 4558,\n  \"horseback</w>\": 43673,\n  \"horseman</w>\": 48885,\n  \"horsepower</w>\": 36882,\n  \"horser\": 23096,\n  \"horseracing</w>\": 30693,\n  \"horses</w>\": 8809,\n  \"horseshoe</w>\": 29242,\n  \"horst</w>\": 37182,\n  \"hort</w>\": 19482,\n  \"horticul\": 27141,\n  \"horticulture</w>\": 39998,\n  \"horton</w>\": 25945,\n  \"hortons</w>\": 38422,\n  \"horus</w>\": 29794,\n  \"hos\": 44320,\n  \"hos</w>\": 25008,\n  \"hosa</w>\": 44618,\n  \"hose</w>\": 19662,\n  \"hoseok</w>\": 38817,\n  \"hosp\": 2847,\n  \"hosp</w>\": 37853,\n  \"hospice</w>\": 20533,\n  \"hospit\": 7180,\n  \"hospital\": 29399,\n  \"hospital</w>\": 3851,\n  \"hospitality</w>\": 11657,\n  \"hospitalized</w>\": 36915,\n  \"hospitals</w>\": 13816,\n  \"host\": 17403,\n  \"host</w>\": 3953,\n  \"hostage</w>\": 26119,\n  \"hoste\": 31700,\n  \"hosted</w>\": 6017,\n  \"hostel</w>\": 27225,\n  \"hostess</w>\": 39692,\n  \"hostile</w>\": 28074,\n  \"hosting</w>\": 4857,\n  \"hosts</w>\": 8718,\n  \"hot\": 2851,\n  \"hot</w>\": 2069,\n  \"hota</w>\": 43289,\n  \"hotdog</w>\": 43758,\n  \"hotel\": 14591,\n  \"hotel</w>\": 2738,\n  \"hotels</w>\": 8654,\n  \"hotline</w>\": 30516,\n  \"hotmail</w>\": 46427,\n  \"hotness</w>\": 39803,\n  \"hotra</w>\": 27109,\n  \"hotro\": 47823,\n  \"hotspot</w>\": 36606,\n  \"hotspur</w>\": 35176,\n  \"hotter</w>\": 23591,\n  \"hottest</w>\": 8279,\n  \"hottie</w>\": 22804,\n  \"hotties</w>\": 46027,\n  \"hou\": 1011,\n  \"hou</w>\": 10122,\n  \"hough</w>\": 44529,\n  \"houghton</w>\": 36133,\n  \"houn\": 39273,\n  \"houn</w>\": 33607,\n  \"hound\": 33996,\n  \"hound</w>\": 13561,\n  \"hounds</w>\": 21178,\n  \"hounews</w>\": 48373,\n  \"hour\": 14930,\n  \"hour</w>\": 2232,\n  \"hourly</w>\": 30918,\n  \"hours</w>\": 2382,\n  \"house\": 4107,\n  \"house</w>\": 1212,\n  \"housed</w>\": 37518,\n  \"household</w>\": 12412,\n  \"households</w>\": 27167,\n  \"housel\": 48685,\n  \"housemusic</w>\": 28468,\n  \"houseof\": 19928,\n  \"houses</w>\": 7791,\n  \"housewives</w>\": 38523,\n  \"housing\": 32924,\n  \"housing</w>\": 5734,\n  \"houston\": 16564,\n  \"houston</w>\": 5663,\n  \"hov</w>\": 40291,\n  \"hove</w>\": 29674,\n  \"hoven</w>\": 35559,\n  \"hover\": 36252,\n  \"hover</w>\": 49016,\n  \"hovering</w>\": 43437,\n  \"how\": 7470,\n  \"how</w>\": 829,\n  \"howar\": 37672,\n  \"howard\": 25447,\n  \"howard</w>\": 7632,\n  \"howdy</w>\": 42216,\n  \"howe\": 8179,\n  \"howe</w>\": 24614,\n  \"howell</w>\": 25297,\n  \"hower</w>\": 32920,\n  \"however</w>\": 8467,\n  \"howi\": 47883,\n  \"howie</w>\": 42939,\n  \"howl</w>\": 40332,\n  \"howling</w>\": 41771,\n  \"howto\": 38191,\n  \"howto</w>\": 44060,\n  \"hoy\": 39625,\n  \"hoy</w>\": 13278,\n  \"hoya</w>\": 40978,\n  \"hp\": 23753,\n  \"hp</w>\": 6371,\n  \"hpa</w>\": 30983,\n  \"hpc</w>\": 39936,\n  \"hpe</w>\": 33787,\n  \"hpv</w>\": 45765,\n  \"hq\": 33571,\n  \"hq</w>\": 4693,\n  \"hr\": 4810,\n  \"hr</w>\": 4086,\n  \"hra\": 21320,\n  \"hra</w>\": 17212,\n  \"hrc</w>\": 18139,\n  \"hrh</w>\": 29103,\n  \"hri\": 21068,\n  \"hrithik</w>\": 45371,\n  \"hrs</w>\": 7157,\n  \"hru</w>\": 24127,\n  \"hrw</w>\": 25064,\n  \"hs\": 9343,\n  \"hs</w>\": 2466,\n  \"hsbc</w>\": 31508,\n  \"hsc</w>\": 43510,\n  \"hse</w>\": 34057,\n  \"hsfb</w>\": 29539,\n  \"hsv</w>\": 47311,\n  \"ht\": 11123,\n  \"ht</w>\": 7801,\n  \"hta\": 23452,\n  \"hta</w>\": 49384,\n  \"htafc</w>\": 42821,\n  \"htc\": 48942,\n  \"htc</w>\": 17635,\n  \"html</w>\": 18231,\n  \"hts</w>\": 43710,\n  \"htt\": 10620,\n  \"http</w>\": 15066,\n  \"https</w>\": 30901,\n  \"httr</w>\": 49372,\n  \"httweets</w>\": 43198,\n  \"hu\": 845,\n  \"hu</w>\": 5949,\n  \"hua</w>\": 22138,\n  \"huan</w>\": 41405,\n  \"huang</w>\": 32013,\n  \"huar\": 46916,\n  \"huawe\": 17709,\n  \"huawei</w>\": 21128,\n  \"hub\": 18775,\n  \"hub</w>\": 7028,\n  \"hubb\": 23183,\n  \"hubbard</w>\": 33288,\n  \"hubble</w>\": 30421,\n  \"hubby</w>\": 16947,\n  \"hubert</w>\": 40699,\n  \"hubs</w>\": 29327,\n  \"huck\": 22909,\n  \"huckabee</w>\": 43666,\n  \"hud\": 7169,\n  \"hud</w>\": 28563,\n  \"hudder\": 22629,\n  \"huddersfield</w>\": 24220,\n  \"huddle</w>\": 33435,\n  \"hudson\": 25873,\n  \"hudson</w>\": 11260,\n  \"hue\": 48380,\n  \"hue</w>\": 21465,\n  \"hues</w>\": 38003,\n  \"huey</w>\": 39663,\n  \"huff\": 18746,\n  \"huff</w>\": 44999,\n  \"huffpost\": 45887,\n  \"hug\": 40790,\n  \"hug</w>\": 10359,\n  \"huge</w>\": 2699,\n  \"hugely</w>\": 24648,\n  \"hugged</w>\": 41333,\n  \"hugging</w>\": 27058,\n  \"hugh\": 8723,\n  \"hugh</w>\": 15385,\n  \"hughes</w>\": 11418,\n  \"hugo\": 43935,\n  \"hugo</w>\": 17132,\n  \"hugs</w>\": 14248,\n  \"huh</w>\": 13348,\n  \"huhu</w>\": 32134,\n  \"hui</w>\": 29978,\n  \"hul\": 7911,\n  \"hula</w>\": 40145,\n  \"hulk</w>\": 17637,\n  \"hull\": 25154,\n  \"hull</w>\": 10375,\n  \"hulu</w>\": 24666,\n  \"hum\": 5823,\n  \"hum</w>\": 16283,\n  \"human\": 3175,\n  \"human</w>\": 2751,\n  \"humane</w>\": 20220,\n  \"humanitarian</w>\": 14170,\n  \"humanities</w>\": 24949,\n  \"humanity</w>\": 9420,\n  \"humanright\": 44385,\n  \"humanrights</w>\": 14148,\n  \"humans</w>\": 8324,\n  \"humb\": 9988,\n  \"humber\": 30602,\n  \"humber</w>\": 38063,\n  \"humble\": 38703,\n  \"humble</w>\": 10889,\n  \"humbled</w>\": 19682,\n  \"humbling</w>\": 39757,\n  \"humbold\": 24739,\n  \"humboldt</w>\": 31389,\n  \"hume</w>\": 38197,\n  \"humid\": 14778,\n  \"humid</w>\": 27447,\n  \"humidi\": 47666,\n  \"humidity</w>\": 15469,\n  \"humil\": 27205,\n  \"humili\": 25332,\n  \"humility</w>\": 28535,\n  \"humming\": 26515,\n  \"hummingbird</w>\": 33072,\n  \"hummus</w>\": 31785,\n  \"humor\": 29369,\n  \"humor</w>\": 11186,\n  \"humorous</w>\": 38173,\n  \"humour</w>\": 19161,\n  \"hump\": 16673,\n  \"hump</w>\": 24529,\n  \"humpback</w>\": 47662,\n  \"humpday</w>\": 27693,\n  \"humph\": 19767,\n  \"humphrey</w>\": 31549,\n  \"hun\": 1616,\n  \"hun</w>\": 10795,\n  \"hundre\": 8505,\n  \"hundred</w>\": 11898,\n  \"hundreds</w>\": 8879,\n  \"hung</w>\": 13825,\n  \"hungar\": 19420,\n  \"hungarian</w>\": 23325,\n  \"hungary</w>\": 17232,\n  \"hunger\": 25565,\n  \"hunger</w>\": 10184,\n  \"hungergames</w>\": 47507,\n  \"hungover</w>\": 41110,\n  \"hungry\": 44845,\n  \"hungry</w>\": 8451,\n  \"hunk</w>\": 33912,\n  \"hunt\": 16498,\n  \"hunt</w>\": 5774,\n  \"hunted</w>\": 37373,\n  \"hunter\": 16531,\n  \"hunter</w>\": 6099,\n  \"hunters</w>\": 16115,\n  \"hunting\": 27830,\n  \"hunting</w>\": 7507,\n  \"huntington</w>\": 23521,\n  \"hunts</w>\": 34041,\n  \"huntsville</w>\": 34544,\n  \"hur\": 2305,\n  \"hur</w>\": 34523,\n  \"hurd</w>\": 44915,\n  \"hurdle</w>\": 27486,\n  \"hurdles</w>\": 25440,\n  \"huri</w>\": 42486,\n  \"hurley</w>\": 30166,\n  \"hurling</w>\": 24738,\n  \"huron</w>\": 36147,\n  \"hurrah</w>\": 40599,\n  \"hurric\": 6543,\n  \"hurrican\": 36105,\n  \"hurricane\": 24051,\n  \"hurricane</w>\": 8782,\n  \"hurricanes</w>\": 22357,\n  \"hurry</w>\": 10921,\n  \"hurst\": 44742,\n  \"hurst</w>\": 11760,\n  \"hurt</w>\": 7413,\n  \"hurting</w>\": 24017,\n  \"hurts</w>\": 13059,\n  \"hus\": 5111,\n  \"hus</w>\": 35853,\n  \"husband</w>\": 6179,\n  \"husbands</w>\": 33612,\n  \"hush</w>\": 28728,\n  \"husk\": 19246,\n  \"huskers</w>\": 26946,\n  \"huskies</w>\": 20988,\n  \"husky</w>\": 20421,\n  \"huss\": 13733,\n  \"hussain</w>\": 17940,\n  \"hussein</w>\": 31336,\n  \"hust\": 27279,\n  \"hustle</w>\": 15709,\n  \"huston</w>\": 46480,\n  \"hut\": 20924,\n  \"hut</w>\": 16503,\n  \"hutch\": 31018,\n  \"hutch</w>\": 33203,\n  \"hutchinson</w>\": 35721,\n  \"hutto\": 27662,\n  \"hutton</w>\": 38321,\n  \"hv\": 17209,\n  \"hv</w>\": 18593,\n  \"hvac</w>\": 27492,\n  \"hw\": 27491,\n  \"hw</w>\": 18876,\n  \"hwa</w>\": 32352,\n  \"hwan</w>\": 44390,\n  \"hwang</w>\": 46775,\n  \"hwy</w>\": 13812,\n  \"hy\": 1441,\n  \"hy</w>\": 17827,\n  \"hya</w>\": 31600,\n  \"hyacin\": 47263,\n  \"hyatt\": 44856,\n  \"hyatt</w>\": 25146,\n  \"hybri\": 9084,\n  \"hybrid</w>\": 10156,\n  \"hyd</w>\": 42382,\n  \"hyde\": 46484,\n  \"hyde</w>\": 16343,\n  \"hyder\": 13960,\n  \"hyderabad</w>\": 14801,\n  \"hydr\": 8031,\n  \"hydra\": 44414,\n  \"hydra</w>\": 40420,\n  \"hydrange\": 43298,\n  \"hydrate</w>\": 29628,\n  \"hydrated</w>\": 23300,\n  \"hydrating</w>\": 47653,\n  \"hydration</w>\": 24174,\n  \"hydrau\": 26017,\n  \"hydraulic</w>\": 26189,\n  \"hydro\": 8368,\n  \"hydro</w>\": 22595,\n  \"hydrogen</w>\": 20974,\n  \"hye\": 32724,\n  \"hye</w>\": 25792,\n  \"hygi\": 16277,\n  \"hygiene</w>\": 19591,\n  \"hymn</w>\": 41350,\n  \"hyo\": 38960,\n  \"hyo</w>\": 35078,\n  \"hyp\": 16964,\n  \"hype\": 30353,\n  \"hype</w>\": 11111,\n  \"hyped</w>\": 22507,\n  \"hyper\": 7997,\n  \"hyper</w>\": 22146,\n  \"hypertension</w>\": 40698,\n  \"hypno\": 23355,\n  \"hypnosis</w>\": 48138,\n  \"hypnoti\": 40440,\n  \"hypo\": 10252,\n  \"hypocr\": 30711,\n  \"hypocri\": 25606,\n  \"hypocrisy</w>\": 26296,\n  \"hypocrite</w>\": 44125,\n  \"hypothe\": 46966,\n  \"hypothesis</w>\": 44956,\n  \"hyster\": 24235,\n  \"hysteria</w>\": 45965,\n  \"hysterical</w>\": 48627,\n  \"hyuk</w>\": 20452,\n  \"hyun\": 11831,\n  \"hyun</w>\": 8589,\n  \"hyundai</w>\": 17094,\n  \"hyung\": 46901,\n  \"hyung</w>\": 16551,\n  \"hz</w>\": 32533,\n  \"i\": 72,\n  \"i</w>\": 328,\n  \"ia\": 12486,\n  \"ia</w>\": 1073,\n  \"iac\": 32838,\n  \"iac</w>\": 44063,\n  \"iaf</w>\": 40789,\n  \"iah</w>\": 35052,\n  \"iain</w>\": 30103,\n  \"ial\": 11530,\n  \"ial</w>\": 1974,\n  \"ials</w>\": 20940,\n  \"iam\": 3579,\n  \"iam</w>\": 11415,\n  \"iambic\": 43668,\n  \"iambicpent</w>\": 43891,\n  \"iamsrk</w>\": 15103,\n  \"ian\": 7723,\n  \"ian</w>\": 1800,\n  \"ians</w>\": 6451,\n  \"iansomerhalder</w>\": 47077,\n  \"iart\": 18413,\n  \"iartg</w>\": 18669,\n  \"ias\": 32303,\n  \"ias</w>\": 14620,\n  \"ib\": 3962,\n  \"ib</w>\": 13554,\n  \"iba</w>\": 39763,\n  \"ibadan</w>\": 44691,\n  \"iban\": 47145,\n  \"ibc</w>\": 49014,\n  \"ibd</w>\": 40732,\n  \"iber\": 23814,\n  \"ibi\": 12337,\n  \"ibis</w>\": 47048,\n  \"ibiza</w>\": 13853,\n  \"ible</w>\": 37792,\n  \"ibles</w>\": 44102,\n  \"ibm\": 23415,\n  \"ibm</w>\": 13918,\n  \"ibn</w>\": 25729,\n  \"ibooks</w>\": 46887,\n  \"ibra\": 15476,\n  \"ibrahi\": 40350,\n  \"ibrahim</w>\": 20816,\n  \"ibrox</w>\": 46883,\n  \"ibs</w>\": 41993,\n  \"ibu\": 43587,\n  \"ibu</w>\": 46117,\n  \"ic\": 535,\n  \"ic</w>\": 1029,\n  \"ica</w>\": 2576,\n  \"icago</w>\": 37492,\n  \"ical\": 6082,\n  \"ical</w>\": 1110,\n  \"ically</w>\": 3161,\n  \"icals</w>\": 13999,\n  \"ican\": 17653,\n  \"ican</w>\": 5246,\n  \"icans</w>\": 20511,\n  \"icar\": 37211,\n  \"ication</w>\": 21629,\n  \"icc</w>\": 12945,\n  \"ice\": 2739,\n  \"ice</w>\": 733,\n  \"iceberg</w>\": 33662,\n  \"icec\": 13636,\n  \"icecream</w>\": 21334,\n  \"iced</w>\": 8049,\n  \"icelan\": 34114,\n  \"iceland\": 46716,\n  \"iceland</w>\": 11935,\n  \"icelandic</w>\": 34705,\n  \"ices</w>\": 1931,\n  \"ich\": 5333,\n  \"ich</w>\": 1232,\n  \"icha\": 31453,\n  \"iche\": 28972,\n  \"iche</w>\": 21143,\n  \"ichi\": 21669,\n  \"ichi</w>\": 14647,\n  \"ichick</w>\": 45022,\n  \"ichiro</w>\": 43787,\n  \"ici\": 948,\n  \"ici</w>\": 22189,\n  \"icia</w>\": 11774,\n  \"icial\": 17543,\n  \"icial</w>\": 6397,\n  \"ician\": 40522,\n  \"ician</w>\": 5374,\n  \"icians</w>\": 6264,\n  \"iciary</w>\": 21329,\n  \"icic\": 46006,\n  \"icide</w>\": 6558,\n  \"icides</w>\": 28253,\n  \"icing</w>\": 7676,\n  \"icio</w>\": 24207,\n  \"icion\": 45905,\n  \"icious</w>\": 3325,\n  \"icist</w>\": 21165,\n  \"icists</w>\": 42171,\n  \"icity</w>\": 7243,\n  \"ick\": 1168,\n  \"ick</w>\": 1068,\n  \"icked</w>\": 39799,\n  \"icker</w>\": 40357,\n  \"ickers</w>\": 30701,\n  \"icki</w>\": 35468,\n  \"icking</w>\": 6619,\n  \"icks</w>\": 3727,\n  \"icky</w>\": 11587,\n  \"icn</w>\": 44516,\n  \"ico\": 13697,\n  \"ico</w>\": 3040,\n  \"icom\": 17693,\n  \"icom</w>\": 29796,\n  \"icon\": 13843,\n  \"icon</w>\": 5646,\n  \"iconic</w>\": 6959,\n  \"icons</w>\": 15553,\n  \"icop\": 9389,\n  \"icos</w>\": 32002,\n  \"ics</w>\": 1324,\n  \"ict</w>\": 6349,\n  \"icted</w>\": 36515,\n  \"iction</w>\": 40560,\n  \"icton</w>\": 36548,\n  \"icu\": 45118,\n  \"icu</w>\": 30443,\n  \"icular</w>\": 40660,\n  \"icus</w>\": 31459,\n  \"icy\": 28780,\n  \"icy</w>\": 3495,\n  \"icymi</w>\": 5315,\n  \"icz</w>\": 46387,\n  \"id\": 1568,\n  \"id</w>\": 1014,\n  \"ida\": 11032,\n  \"ida</w>\": 11600,\n  \"idad</w>\": 22462,\n  \"idaho\": 48817,\n  \"idaho</w>\": 15165,\n  \"idal</w>\": 39684,\n  \"idan</w>\": 17929,\n  \"idc</w>\": 22386,\n  \"ide\": 1909,\n  \"ide</w>\": 14104,\n  \"idea</w>\": 3612,\n  \"ideal</w>\": 8789,\n  \"ideally</w>\": 48247,\n  \"ideals</w>\": 45096,\n  \"ideas</w>\": 4452,\n  \"ident\": 7113,\n  \"identi\": 6009,\n  \"identical</w>\": 25587,\n  \"identification</w>\": 23337,\n  \"identified</w>\": 15217,\n  \"identifies</w>\": 35712,\n  \"identify</w>\": 10949,\n  \"identifying</w>\": 23589,\n  \"identities</w>\": 34292,\n  \"identity</w>\": 8892,\n  \"ideology</w>\": 25840,\n  \"iders</w>\": 8980,\n  \"ides</w>\": 31791,\n  \"idf</w>\": 28987,\n  \"idge</w>\": 35567,\n  \"idh</w>\": 44325,\n  \"idi\": 9611,\n  \"idi</w>\": 14264,\n  \"idio\": 15994,\n  \"idiot</w>\": 14087,\n  \"idiots</w>\": 20856,\n  \"idk</w>\": 8972,\n  \"idle</w>\": 34754,\n  \"idlib</w>\": 36199,\n  \"ido\": 6763,\n  \"ido</w>\": 29641,\n  \"idol\": 24866,\n  \"idol</w>\": 8884,\n  \"idols</w>\": 21398,\n  \"idr</w>\": 10106,\n  \"idri\": 46435,\n  \"idris</w>\": 41312,\n  \"ids</w>\": 6111,\n  \"idu</w>\": 28655,\n  \"idy\": 33058,\n  \"idyl\": 44879,\n  \"idyllic</w>\": 46632,\n  \"ie\": 6789,\n  \"ie</w>\": 1718,\n  \"iec</w>\": 44773,\n  \"ied</w>\": 10059,\n  \"ieee</w>\": 39860,\n  \"iel\": 27875,\n  \"iel</w>\": 22729,\n  \"ience</w>\": 1542,\n  \"ient</w>\": 13115,\n  \"ier\": 33173,\n  \"ier</w>\": 5912,\n  \"iers</w>\": 45060,\n  \"ies\": 27912,\n  \"ies</w>\": 963,\n  \"iest</w>\": 10818,\n  \"if\": 8063,\n  \"if</w>\": 878,\n  \"ifa</w>\": 37574,\n  \"ifc</w>\": 36524,\n  \"ife\": 41172,\n  \"ife</w>\": 19590,\n  \"iff\": 35753,\n  \"ification</w>\": 35755,\n  \"ified</w>\": 41403,\n  \"ift\": 31143,\n  \"iftar</w>\": 35153,\n  \"ifu</w>\": 41523,\n  \"ify</w>\": 32807,\n  \"ig\": 1089,\n  \"ig</w>\": 3072,\n  \"iga</w>\": 16493,\n  \"igan</w>\": 27468,\n  \"igans</w>\": 25419,\n  \"igbo</w>\": 44591,\n  \"ige</w>\": 10806,\n  \"igen</w>\": 33070,\n  \"iger\": 30758,\n  \"iger</w>\": 20685,\n  \"igers\": 40755,\n  \"igers</w>\": 48928,\n  \"iggy\": 46219,\n  \"iggy</w>\": 27604,\n  \"igh\": 2712,\n  \"igh</w>\": 5451,\n  \"ight\": 14571,\n  \"ight</w>\": 897,\n  \"ighton</w>\": 35292,\n  \"igi</w>\": 21901,\n  \"igle\": 29912,\n  \"iglesias</w>\": 39432,\n  \"ign\": 7303,\n  \"ign</w>\": 2326,\n  \"ignati\": 37573,\n  \"ignatius</w>\": 48318,\n  \"igne</w>\": 45843,\n  \"ignite</w>\": 25210,\n  \"ignition</w>\": 36115,\n  \"igno\": 15375,\n  \"ignor\": 7653,\n  \"ignorance</w>\": 22735,\n  \"ignorant</w>\": 26933,\n  \"ignore</w>\": 12304,\n  \"ignored</w>\": 20428,\n  \"ignores</w>\": 40129,\n  \"ignoring</w>\": 23969,\n  \"igor</w>\": 33024,\n  \"igs</w>\": 31344,\n  \"igu\": 21279,\n  \"ih\": 12162,\n  \"ih</w>\": 34135,\n  \"ihear\": 13043,\n  \"iheart\": 30332,\n  \"iheartawards</w>\": 18811,\n  \"iheartradio</w>\": 25934,\n  \"ihop</w>\": 45511,\n  \"ihri\": 39108,\n  \"ihrithik</w>\": 39326,\n  \"ii\": 5103,\n  \"ii</w>\": 2329,\n  \"iii\": 46236,\n  \"iii</w>\": 6572,\n  \"iiii\": 20133,\n  \"iiii</w>\": 45393,\n  \"iiot</w>\": 30704,\n  \"iit\": 39330,\n  \"iit</w>\": 33238,\n  \"ij\": 7337,\n  \"ija</w>\": 42802,\n  \"ik\": 3903,\n  \"ik</w>\": 10177,\n  \"ika</w>\": 18188,\n  \"ike\": 12329,\n  \"ike</w>\": 19696,\n  \"ikea</w>\": 20528,\n  \"iker</w>\": 38653,\n  \"ikh\": 44655,\n  \"ikh</w>\": 12758,\n  \"iklan\": 32028,\n  \"iklan</w>\": 29584,\n  \"iko\": 35659,\n  \"iko</w>\": 39272,\n  \"ikon\": 38543,\n  \"ikon</w>\": 19156,\n  \"iku</w>\": 17780,\n  \"il\": 543,\n  \"il</w>\": 958,\n  \"ila</w>\": 4344,\n  \"ilah</w>\": 32211,\n  \"ilan\": 13889,\n  \"ilan</w>\": 28076,\n  \"iland</w>\": 20957,\n  \"ilation</w>\": 16180,\n  \"ilay\": 45093,\n  \"ild\": 22278,\n  \"ild</w>\": 17164,\n  \"ile\": 18398,\n  \"ile</w>\": 989,\n  \"iled</w>\": 3358,\n  \"iler\": 22446,\n  \"iler</w>\": 3615,\n  \"ilers</w>\": 8975,\n  \"iles</w>\": 42274,\n  \"ili\": 2076,\n  \"ili</w>\": 19601,\n  \"ilia</w>\": 14855,\n  \"ilian</w>\": 10272,\n  \"iliary</w>\": 32585,\n  \"ilife</w>\": 42835,\n  \"ilike\": 44989,\n  \"ilinan</w>\": 48497,\n  \"iling</w>\": 3299,\n  \"ilio</w>\": 47256,\n  \"ilion</w>\": 12561,\n  \"ilis</w>\": 43442,\n  \"ilit\": 11178,\n  \"ilities</w>\": 5446,\n  \"ility</w>\": 1787,\n  \"ilive</w>\": 26478,\n  \"ill\": 828,\n  \"ill</w>\": 660,\n  \"illa\": 8877,\n  \"illa</w>\": 3043,\n  \"illac</w>\": 17218,\n  \"illage</w>\": 48922,\n  \"illard</w>\": 21920,\n  \"illary</w>\": 33667,\n  \"illas</w>\": 23404,\n  \"ille\": 18213,\n  \"ille</w>\": 5559,\n  \"illed</w>\": 2527,\n  \"illeg\": 35808,\n  \"illegal</w>\": 7983,\n  \"illegally</w>\": 24466,\n  \"illegals</w>\": 40490,\n  \"iller\": 23341,\n  \"iller</w>\": 2956,\n  \"illers</w>\": 30547,\n  \"illery</w>\": 14514,\n  \"illes</w>\": 20037,\n  \"illi\": 1086,\n  \"illi</w>\": 25187,\n  \"illia</w>\": 48776,\n  \"illiams</w>\": 30301,\n  \"illian\": 48775,\n  \"illian</w>\": 17355,\n  \"illic\": 37152,\n  \"illicit</w>\": 40998,\n  \"illie</w>\": 26083,\n  \"illin</w>\": 35868,\n  \"illing</w>\": 2803,\n  \"illini</w>\": 28957,\n  \"illino\": 8920,\n  \"illinois</w>\": 9414,\n  \"illion\": 35542,\n  \"illion</w>\": 2035,\n  \"illness</w>\": 11145,\n  \"illnesses</w>\": 33861,\n  \"illo\": 34153,\n  \"illo</w>\": 7588,\n  \"illon</w>\": 20516,\n  \"ills</w>\": 1900,\n  \"illu\": 3025,\n  \"illumin\": 11446,\n  \"illuminate</w>\": 43261,\n  \"illuminated</w>\": 28814,\n  \"illuminati</w>\": 34551,\n  \"illuminating</w>\": 46601,\n  \"illumination</w>\": 43680,\n  \"illus</w>\": 41386,\n  \"illusion</w>\": 20318,\n  \"illusions</w>\": 47429,\n  \"illustr\": 6268,\n  \"illustrate</w>\": 37468,\n  \"illustrated</w>\": 13151,\n  \"illustrates</w>\": 38129,\n  \"illustrating</w>\": 43322,\n  \"illustration</w>\": 6052,\n  \"illustrations</w>\": 17852,\n  \"illustrator</w>\": 16649,\n  \"illustri\": 43116,\n  \"illustrious</w>\": 44304,\n  \"illy\": 11707,\n  \"illy</w>\": 9532,\n  \"ilm</w>\": 36326,\n  \"ilo\": 4220,\n  \"ilo</w>\": 14835,\n  \"ilove\": 7183,\n  \"ilove</w>\": 32914,\n  \"iloveart</w>\": 41114,\n  \"ilovemy\": 28863,\n  \"iloveyou</w>\": 28829,\n  \"ils</w>\": 1543,\n  \"ilt</w>\": 25334,\n  \"ilton</w>\": 28494,\n  \"ilu\": 27337,\n  \"ilwx</w>\": 43777,\n  \"ily\": 4881,\n  \"ily</w>\": 1026,\n  \"ilya</w>\": 33377,\n  \"ilysm</w>\": 29228,\n  \"im\": 732,\n  \"im</w>\": 1496,\n  \"ima\": 2414,\n  \"ima</w>\": 6432,\n  \"imac</w>\": 40675,\n  \"imacele\": 47281,\n  \"imag\": 2316,\n  \"image\": 24101,\n  \"image</w>\": 2867,\n  \"imagery</w>\": 22828,\n  \"images</w>\": 4952,\n  \"imagin\": 18178,\n  \"imaginary</w>\": 30417,\n  \"imagination</w>\": 13783,\n  \"imaginative</w>\": 47233,\n  \"imagine\": 35752,\n  \"imagine</w>\": 4826,\n  \"imagined</w>\": 18478,\n  \"imagines</w>\": 47379,\n  \"imaging</w>\": 14231,\n  \"imagining</w>\": 27384,\n  \"imam\": 37552,\n  \"imam</w>\": 19024,\n  \"iman\": 45684,\n  \"iman</w>\": 16247,\n  \"imation</w>\": 44566,\n  \"imax</w>\": 32066,\n  \"imc</w>\": 45616,\n  \"imdanielpadilla</w>\": 36357,\n  \"imdb</w>\": 30407,\n  \"ime\": 44937,\n  \"ime</w>\": 31151,\n  \"imel\": 31594,\n  \"iment</w>\": 37157,\n  \"imer</w>\": 21802,\n  \"imes</w>\": 47744,\n  \"imf</w>\": 28403,\n  \"img</w>\": 24157,\n  \"imi</w>\": 23559,\n  \"imin\": 23942,\n  \"imit\": 23462,\n  \"imitation</w>\": 41630,\n  \"imma</w>\": 19487,\n  \"immac\": 25085,\n  \"immaculate</w>\": 29649,\n  \"immature</w>\": 45531,\n  \"immedi\": 7366,\n  \"immediate</w>\": 14440,\n  \"immediately</w>\": 10108,\n  \"immen\": 17278,\n  \"immense</w>\": 22722,\n  \"immensely</w>\": 35013,\n  \"immer\": 13954,\n  \"immerse</w>\": 46240,\n  \"immersion</w>\": 31861,\n  \"immersive</w>\": 27521,\n  \"immigr\": 5851,\n  \"immigrant</w>\": 16474,\n  \"immigrants</w>\": 14460,\n  \"immigration</w>\": 9588,\n  \"imminent</w>\": 27299,\n  \"immort\": 39244,\n  \"immortal</w>\": 24717,\n  \"immun\": 8961,\n  \"immune</w>\": 15606,\n  \"immuni\": 44571,\n  \"immunity</w>\": 26254,\n  \"immuno\": 24361,\n  \"immunology</w>\": 44483,\n  \"immunotherapy</w>\": 39185,\n  \"imo\": 26349,\n  \"imo</w>\": 13738,\n  \"imp\": 3335,\n  \"imp</w>\": 31037,\n  \"impac\": 7573,\n  \"impact\": 33036,\n  \"impact</w>\": 3844,\n  \"impacted</w>\": 21424,\n  \"impactful</w>\": 41631,\n  \"impacting</w>\": 29359,\n  \"impacts</w>\": 15069,\n  \"impair\": 36451,\n  \"impaired</w>\": 28028,\n  \"impairment</w>\": 44501,\n  \"impala</w>\": 36641,\n  \"impe\": 23612,\n  \"impeach\": 16874,\n  \"impeach</w>\": 43497,\n  \"impeachment</w>\": 32979,\n  \"impeachtrump</w>\": 38006,\n  \"impecc\": 34511,\n  \"impeccable</w>\": 40111,\n  \"impending</w>\": 34486,\n  \"imper\": 7727,\n  \"imperative</w>\": 39833,\n  \"imperfect</w>\": 46034,\n  \"imperi\": 30911,\n  \"imperial\": 32425,\n  \"imperial</w>\": 12361,\n  \"imperialism</w>\": 48855,\n  \"imperson\": 25551,\n  \"implant</w>\": 33106,\n  \"implants</w>\": 32202,\n  \"imple\": 7423,\n  \"implement</w>\": 17966,\n  \"implementation</w>\": 15102,\n  \"implemented</w>\": 24315,\n  \"implementing</w>\": 22862,\n  \"implic\": 15269,\n  \"implications</w>\": 19229,\n  \"implo\": 40337,\n  \"impo\": 45704,\n  \"import\": 2336,\n  \"import</w>\": 16294,\n  \"importance</w>\": 6821,\n  \"important</w>\": 2829,\n  \"importantly</w>\": 21580,\n  \"imported</w>\": 28798,\n  \"imports</w>\": 25286,\n  \"impose</w>\": 35879,\n  \"imposed</w>\": 25871,\n  \"imposing</w>\": 42289,\n  \"impossible</w>\": 9815,\n  \"impre\": 3763,\n  \"impress</w>\": 20015,\n  \"impressed</w>\": 9689,\n  \"impression</w>\": 14468,\n  \"impressionism</w>\": 36114,\n  \"impressionist</w>\": 44904,\n  \"impressions</w>\": 22276,\n  \"impressive</w>\": 6634,\n  \"imprint</w>\": 43863,\n  \"imprison\": 22141,\n  \"imprisoned</w>\": 32999,\n  \"imprisonment</w>\": 39024,\n  \"impro\": 2531,\n  \"impromp\": 28100,\n  \"impromptu</w>\": 28611,\n  \"improv</w>\": 22868,\n  \"improve</w>\": 4971,\n  \"improved</w>\": 9446,\n  \"improvement</w>\": 10790,\n  \"improvements</w>\": 16320,\n  \"improves</w>\": 18035,\n  \"improving</w>\": 10381,\n  \"improvis\": 32343,\n  \"improvised</w>\": 40886,\n  \"impulse</w>\": 29683,\n  \"impy</w>\": 42690,\n  \"imran\": 19647,\n  \"imran</w>\": 19212,\n  \"imrankhan\": 25956,\n  \"imrankhanpti</w>\": 26688,\n  \"ims</w>\": 17800,\n  \"imsa</w>\": 37262,\n  \"imv\": 35731,\n  \"imvkohli</w>\": 37136,\n  \"imwith\": 26822,\n  \"imwithher</w>\": 32651,\n  \"in\": 512,\n  \"in</w>\": 530,\n  \"ina\": 18026,\n  \"ina</w>\": 1366,\n  \"inability</w>\": 47517,\n  \"inaccurate</w>\": 49192,\n  \"inaction</w>\": 41916,\n  \"inactive</w>\": 49274,\n  \"inadequate</w>\": 43403,\n  \"inak\": 46549,\n  \"inal</w>\": 19178,\n  \"inals</w>\": 26438,\n  \"inan</w>\": 26204,\n  \"inappropriate</w>\": 26722,\n  \"inari</w>\": 48620,\n  \"inary</w>\": 11337,\n  \"inas\": 36731,\n  \"inas</w>\": 12362,\n  \"inated</w>\": 38530,\n  \"ination</w>\": 4706,\n  \"inau\": 10832,\n  \"inaugu\": 11309,\n  \"inaugur\": 11448,\n  \"inaugural</w>\": 11340,\n  \"inaugurated</w>\": 29011,\n  \"inauguration</w>\": 16805,\n  \"inbound</w>\": 24420,\n  \"inbox</w>\": 18683,\n  \"inc\": 14570,\n  \"inc</w>\": 4438,\n  \"incan\": 45964,\n  \"incar\": 18070,\n  \"incarcer\": 26334,\n  \"incarcerated</w>\": 49178,\n  \"incarceration</w>\": 39887,\n  \"incase</w>\": 30463,\n  \"ince</w>\": 44303,\n  \"incen\": 13259,\n  \"incense</w>\": 35059,\n  \"incentive</w>\": 29024,\n  \"incentives</w>\": 29813,\n  \"inception</w>\": 36653,\n  \"inch</w>\": 6523,\n  \"incheon</w>\": 30645,\n  \"inches</w>\": 10809,\n  \"inci\": 5747,\n  \"incidence</w>\": 43371,\n  \"incident</w>\": 10103,\n  \"incidents</w>\": 22120,\n  \"incindia</w>\": 26161,\n  \"inciner\": 46434,\n  \"incl\": 27857,\n  \"incl</w>\": 13338,\n  \"inclined</w>\": 45470,\n  \"inclu\": 1738,\n  \"include</w>\": 5942,\n  \"included</w>\": 7414,\n  \"includes</w>\": 6197,\n  \"including</w>\": 2814,\n  \"inclusion</w>\": 12079,\n  \"inclusive</w>\": 13393,\n  \"income</w>\": 8044,\n  \"incoming</w>\": 15416,\n  \"incomparable</w>\": 36027,\n  \"incompetent</w>\": 45069,\n  \"incomplete</w>\": 34040,\n  \"incon\": 42372,\n  \"inconvenience</w>\": 40563,\n  \"incorpor\": 19335,\n  \"incorporate</w>\": 34168,\n  \"incorporated</w>\": 29494,\n  \"incorporating</w>\": 40303,\n  \"incorrect</w>\": 31872,\n  \"incre\": 1870,\n  \"increase</w>\": 5230,\n  \"increased</w>\": 9156,\n  \"increases</w>\": 13797,\n  \"increasing</w>\": 10270,\n  \"increasingly</w>\": 16106,\n  \"incredi\": 2883,\n  \"incredible\": 22128,\n  \"incredible</w>\": 3457,\n  \"incredibleindia</w>\": 24680,\n  \"incredibles</w>\": 48641,\n  \"incredibly</w>\": 9513,\n  \"incu\": 38830,\n  \"incub\": 24587,\n  \"incubator</w>\": 35736,\n  \"incumb\": 32246,\n  \"incumbent</w>\": 38038,\n  \"incur\": 42356,\n  \"ind\": 5386,\n  \"ind</w>\": 4655,\n  \"inda</w>\": 15710,\n  \"inde\": 2645,\n  \"indeed</w>\": 10031,\n  \"indefin\": 29501,\n  \"indefinitely</w>\": 43750,\n  \"independ\": 4147,\n  \"independence\": 23117,\n  \"independence</w>\": 7955,\n  \"independenceday</w>\": 25971,\n  \"independent\": 33844,\n  \"independent</w>\": 7088,\n  \"independently</w>\": 39831,\n  \"inder</w>\": 29225,\n  \"index\": 35209,\n  \"index</w>\": 9458,\n  \"indhoven</w>\": 44229,\n  \"indi\": 1098,\n  \"indi</w>\": 46536,\n  \"india\": 27067,\n  \"india</w>\": 1762,\n  \"indian\": 7685,\n  \"indian</w>\": 3606,\n  \"indiana</w>\": 8615,\n  \"indianapolis</w>\": 17196,\n  \"indianfootball</w>\": 45979,\n  \"indians</w>\": 10271,\n  \"indic\": 7136,\n  \"indicate</w>\": 26679,\n  \"indicated</w>\": 39416,\n  \"indicates</w>\": 29412,\n  \"indication</w>\": 38539,\n  \"indicator</w>\": 24776,\n  \"indicators</w>\": 30054,\n  \"indicted</w>\": 34992,\n  \"indictment</w>\": 42278,\n  \"indie\": 5260,\n  \"indie</w>\": 9383,\n  \"indiedev</w>\": 10863,\n  \"indiefilm</w>\": 22588,\n  \"indiegame</w>\": 17969,\n  \"indiegamedev</w>\": 40466,\n  \"indiegames</w>\": 35864,\n  \"indiegogo</w>\": 38057,\n  \"indies</w>\": 23618,\n  \"indiffe\": 41372,\n  \"indigen\": 8348,\n  \"indigenous</w>\": 9303,\n  \"indigo</w>\": 21002,\n  \"indira</w>\": 43887,\n  \"indirec\": 26398,\n  \"indirect</w>\": 35416,\n  \"indivi\": 5649,\n  \"individu\": 9574,\n  \"individual</w>\": 8512,\n  \"individually</w>\": 33782,\n  \"individuals</w>\": 11990,\n  \"indo\": 26303,\n  \"indo</w>\": 18297,\n  \"indom\": 42926,\n  \"indone\": 6180,\n  \"indonesia</w>\": 7229,\n  \"indonesian</w>\": 19593,\n  \"indoor\": 44478,\n  \"indoor</w>\": 9546,\n  \"indoors</w>\": 22973,\n  \"indore</w>\": 46143,\n  \"indu\": 2298,\n  \"induc\": 7973,\n  \"induced</w>\": 24103,\n  \"inducted</w>\": 20596,\n  \"inductee</w>\": 39558,\n  \"inductees</w>\": 44796,\n  \"induction</w>\": 18338,\n  \"indul\": 19402,\n  \"indulg\": 28388,\n  \"indulge</w>\": 24851,\n  \"indulgence</w>\": 40856,\n  \"indulgent</w>\": 49147,\n  \"industri\": 5082,\n  \"industrial\": 30853,\n  \"industrial</w>\": 7520,\n  \"industries</w>\": 11700,\n  \"industry\": 47407,\n  \"industry</w>\": 3318,\n  \"indv\": 16942,\n  \"indy\": 9821,\n  \"indy</w>\": 10098,\n  \"indycar</w>\": 20484,\n  \"indyref</w>\": 22569,\n  \"ine\": 855,\n  \"ine</w>\": 715,\n  \"ineau</w>\": 38122,\n  \"inec</w>\": 45214,\n  \"ined</w>\": 2038,\n  \"inee\": 43252,\n  \"inee</w>\": 7986,\n  \"inees</w>\": 13056,\n  \"ineffe\": 47202,\n  \"inely</w>\": 18234,\n  \"inem</w>\": 48876,\n  \"inema</w>\": 29232,\n  \"inen</w>\": 44365,\n  \"inequalities</w>\": 45507,\n  \"inequality</w>\": 17372,\n  \"iner\": 17438,\n  \"iner</w>\": 5155,\n  \"iners</w>\": 41863,\n  \"ines</w>\": 2137,\n  \"inese</w>\": 35966,\n  \"iness</w>\": 1463,\n  \"inet</w>\": 8121,\n  \"inette</w>\": 38911,\n  \"inev\": 19527,\n  \"inevit\": 45871,\n  \"inevitable</w>\": 25004,\n  \"inews</w>\": 24300,\n  \"inexpensive</w>\": 38614,\n  \"iney</w>\": 30254,\n  \"inez</w>\": 12700,\n  \"inf\": 1529,\n  \"inf</w>\": 35241,\n  \"infamous</w>\": 18688,\n  \"infan\": 17219,\n  \"infant</w>\": 19192,\n  \"infantry</w>\": 21655,\n  \"infants</w>\": 34726,\n  \"infe\": 7164,\n  \"infec\": 26088,\n  \"infected</w>\": 26136,\n  \"infection</w>\": 14774,\n  \"infections</w>\": 22227,\n  \"infectious</w>\": 29157,\n  \"infeld</w>\": 25035,\n  \"infer\": 16258,\n  \"inferno</w>\": 31290,\n  \"infertility</w>\": 40701,\n  \"infield</w>\": 48933,\n  \"infiltr\": 28683,\n  \"infin\": 6246,\n  \"infinite</w>\": 12748,\n  \"infiniti</w>\": 34644,\n  \"infinity\": 34863,\n  \"infinity</w>\": 12895,\n  \"infl\": 7627,\n  \"inflam\": 16080,\n  \"inflammation</w>\": 24893,\n  \"inflammatory</w>\": 26831,\n  \"inflatable</w>\": 30135,\n  \"inflation</w>\": 17497,\n  \"inflicted</w>\": 48188,\n  \"influ\": 4835,\n  \"influen\": 13229,\n  \"influence</w>\": 9199,\n  \"influenced</w>\": 21183,\n  \"influencer</w>\": 25013,\n  \"influencers</w>\": 29891,\n  \"influences</w>\": 24926,\n  \"influencing</w>\": 45126,\n  \"influential</w>\": 17553,\n  \"influenza</w>\": 39897,\n  \"info\": 5680,\n  \"info</w>\": 2222,\n  \"infographic</w>\": 10076,\n  \"infographics</w>\": 33172,\n  \"infor\": 31773,\n  \"inform\": 10241,\n  \"inform</w>\": 19449,\n  \"informal</w>\": 25705,\n  \"informat\": 29625,\n  \"informatics</w>\": 35685,\n  \"information</w>\": 3204,\n  \"informative</w>\": 19364,\n  \"informed</w>\": 13876,\n  \"informing</w>\": 45388,\n  \"informs</w>\": 48440,\n  \"infosec</w>\": 17863,\n  \"infr\": 29718,\n  \"infra\": 7312,\n  \"infra</w>\": 45877,\n  \"infrared</w>\": 22867,\n  \"infrastructure</w>\": 9034,\n  \"infringe\": 44882,\n  \"infringement</w>\": 48712,\n  \"infront</w>\": 37668,\n  \"infu\": 15048,\n  \"infuri\": 48461,\n  \"infused</w>\": 21461,\n  \"infusion</w>\": 43464,\n  \"ing\": 653,\n  \"ing</w>\": 519,\n  \"inga</w>\": 15233,\n  \"ingco</w>\": 40444,\n  \"ingday</w>\": 16561,\n  \"ingdon</w>\": 38731,\n  \"inge\": 11790,\n  \"inge</w>\": 7071,\n  \"inged</w>\": 30046,\n  \"ingen</w>\": 19088,\n  \"ingeni\": 36884,\n  \"inger\": 33883,\n  \"inger</w>\": 3541,\n  \"ingfor\": 33430,\n  \"ingh\": 9170,\n  \"ingh</w>\": 30495,\n  \"ingham\": 24497,\n  \"ingham</w>\": 4291,\n  \"inghamshire</w>\": 39289,\n  \"inghour</w>\": 42728,\n  \"inging</w>\": 4066,\n  \"ingl\": 45662,\n  \"ingle\": 22228,\n  \"ingle</w>\": 17005,\n  \"ingles</w>\": 24490,\n  \"ingley</w>\": 44428,\n  \"inglis</w>\": 46327,\n  \"ingly</w>\": 4796,\n  \"ingnow</w>\": 34766,\n  \"ingo\": 30175,\n  \"ingo</w>\": 9012,\n  \"ingra\": 45165,\n  \"ingrad</w>\": 44124,\n  \"ingram</w>\": 26998,\n  \"ingredi\": 9272,\n  \"ingredient</w>\": 19799,\n  \"ingredients</w>\": 11788,\n  \"ingrid</w>\": 33496,\n  \"ings</w>\": 895,\n  \"ingthe\": 20170,\n  \"ingtips</w>\": 39373,\n  \"ington\": 11846,\n  \"ington</w>\": 2156,\n  \"ingu\": 8714,\n  \"ingual</w>\": 22795,\n  \"ingue</w>\": 36838,\n  \"ingui\": 12788,\n  \"inguish</w>\": 36146,\n  \"inha</w>\": 32612,\n  \"inhabit\": 36189,\n  \"inhabitants</w>\": 44968,\n  \"inhal\": 30786,\n  \"inhe\": 32617,\n  \"inher\": 24611,\n  \"inherent</w>\": 47327,\n  \"inherit\": 34322,\n  \"inheritance</w>\": 39341,\n  \"inherited</w>\": 39111,\n  \"inhi\": 25557,\n  \"inhibit\": 32196,\n  \"inho</w>\": 12984,\n  \"ini\": 6154,\n  \"ini</w>\": 3581,\n  \"inian</w>\": 36638,\n  \"inim\": 38717,\n  \"inindia</w>\": 34021,\n  \"ining</w>\": 1389,\n  \"inist</w>\": 30976,\n  \"init</w>\": 42670,\n  \"initi\": 4580,\n  \"initial</w>\": 13980,\n  \"initially</w>\": 28123,\n  \"initials</w>\": 48794,\n  \"initiated</w>\": 27756,\n  \"initiation</w>\": 41009,\n  \"initiative</w>\": 8152,\n  \"initiatives</w>\": 16549,\n  \"inity</w>\": 22126,\n  \"inj\": 5112,\n  \"injec\": 13688,\n  \"injection</w>\": 21438,\n  \"inju\": 5006,\n  \"injured</w>\": 7505,\n  \"injuries</w>\": 9481,\n  \"injury</w>\": 6223,\n  \"injustice</w>\": 20541,\n  \"ink\": 4547,\n  \"ink</w>\": 967,\n  \"inka</w>\": 40685,\n  \"inked</w>\": 29356,\n  \"inki\": 46176,\n  \"inkigayo</w>\": 47882,\n  \"inking</w>\": 37586,\n  \"inks</w>\": 20966,\n  \"inktober</w>\": 9387,\n  \"inland</w>\": 21943,\n  \"inlet</w>\": 35161,\n  \"inline</w>\": 45004,\n  \"inlove</w>\": 28415,\n  \"inmate</w>\": 32341,\n  \"inmates</w>\": 28216,\n  \"inmy\": 42657,\n  \"inn\": 27260,\n  \"inn</w>\": 5569,\n  \"inna</w>\": 35088,\n  \"inner\": 24512,\n  \"inner</w>\": 6955,\n  \"inning</w>\": 4415,\n  \"innings</w>\": 11580,\n  \"innis\": 44059,\n  \"inno\": 7961,\n  \"innocence</w>\": 26383,\n  \"innocent</w>\": 11241,\n  \"innov\": 2890,\n  \"innovate</w>\": 24549,\n  \"innovation\": 33063,\n  \"innovation</w>\": 4272,\n  \"innovations</w>\": 18817,\n  \"innovative</w>\": 8494,\n  \"innovator</w>\": 34735,\n  \"innovators</w>\": 27834,\n  \"ino\": 4211,\n  \"ino</w>\": 2691,\n  \"inoa</w>\": 25649,\n  \"inos</w>\": 21828,\n  \"inous</w>\": 47801,\n  \"inox</w>\": 22698,\n  \"input</w>\": 16952,\n  \"inputs</w>\": 48763,\n  \"inqu\": 10628,\n  \"inqui\": 18527,\n  \"inquirer</w>\": 45172,\n  \"inquiries</w>\": 29469,\n  \"inquiry</w>\": 15865,\n  \"inquis\": 31171,\n  \"inr</w>\": 36325,\n  \"ins\": 12786,\n  \"ins</w>\": 1041,\n  \"insan\": 7875,\n  \"insane</w>\": 10260,\n  \"insanely</w>\": 27846,\n  \"insanity</w>\": 26645,\n  \"inscribed</w>\": 49168,\n  \"inscription</w>\": 41127,\n  \"insec\": 15744,\n  \"insect</w>\": 21297,\n  \"insects</w>\": 18714,\n  \"insecure</w>\": 35112,\n  \"insecurity</w>\": 36964,\n  \"inser\": 13830,\n  \"insert</w>\": 18807,\n  \"insi\": 3453,\n  \"inside\": 19141,\n  \"inside</w>\": 2912,\n  \"insider</w>\": 13300,\n  \"insiders</w>\": 32171,\n  \"insig\": 40503,\n  \"insight</w>\": 8795,\n  \"insightful</w>\": 20354,\n  \"insights</w>\": 8729,\n  \"insignia</w>\": 48864,\n  \"insist</w>\": 35504,\n  \"insisted</w>\": 40423,\n  \"insists</w>\": 27255,\n  \"inski</w>\": 32630,\n  \"insky</w>\": 24607,\n  \"insol\": 42366,\n  \"insom\": 21755,\n  \"insomni\": 42040,\n  \"insomnia</w>\": 30598,\n  \"inson</w>\": 21007,\n  \"insp\": 1597,\n  \"inspec\": 7915,\n  \"inspect</w>\": 40815,\n  \"inspecting</w>\": 40565,\n  \"inspection</w>\": 15142,\n  \"inspections</w>\": 39513,\n  \"inspector</w>\": 20514,\n  \"inspir\": 2573,\n  \"inspiration</w>\": 4195,\n  \"inspirational\": 41936,\n  \"inspirational</w>\": 9855,\n  \"inspirations</w>\": 35093,\n  \"inspire\": 27901,\n  \"inspire</w>\": 8583,\n  \"inspired\": 39849,\n  \"inspired</w>\": 3516,\n  \"inspires</w>\": 17245,\n  \"inspiring\": 41847,\n  \"inspiring</w>\": 5705,\n  \"inspo</w>\": 26897,\n  \"inst\": 1264,\n  \"inst</w>\": 1581,\n  \"insta\": 22411,\n  \"insta</w>\": 11694,\n  \"instability</w>\": 41377,\n  \"instac\": 46678,\n  \"instaf\": 33800,\n  \"instag\": 14612,\n  \"instagood</w>\": 23718,\n  \"instagram\": 27910,\n  \"instagram</w>\": 2659,\n  \"instal\": 38805,\n  \"install\": 6940,\n  \"install</w>\": 11168,\n  \"installation</w>\": 9358,\n  \"installations</w>\": 27909,\n  \"installed</w>\": 8807,\n  \"installing</w>\": 18301,\n  \"installment</w>\": 25315,\n  \"installs</w>\": 45568,\n  \"instalment</w>\": 47766,\n  \"instance</w>\": 34572,\n  \"instant\": 38810,\n  \"instant</w>\": 10635,\n  \"instantly</w>\": 17703,\n  \"instap\": 23758,\n  \"instapic</w>\": 34378,\n  \"instaweather\": 43078,\n  \"instaweatherpro</w>\": 43150,\n  \"inste\": 3571,\n  \"instead</w>\": 4191,\n  \"instein</w>\": 13421,\n  \"instem</w>\": 27030,\n  \"instin\": 23382,\n  \"instinct</w>\": 30544,\n  \"institu\": 4257,\n  \"institute</w>\": 5861,\n  \"institutes</w>\": 43674,\n  \"institution</w>\": 18823,\n  \"institutional</w>\": 27442,\n  \"institutions</w>\": 15207,\n  \"instore</w>\": 41679,\n  \"instru\": 4544,\n  \"instruc\": 19648,\n  \"instruction</w>\": 19407,\n  \"instructional</w>\": 31022,\n  \"instructions</w>\": 17040,\n  \"instructor</w>\": 16087,\n  \"instructors</w>\": 31998,\n  \"instrument\": 42196,\n  \"instrument</w>\": 15806,\n  \"instrumental</w>\": 23041,\n  \"instruments</w>\": 14793,\n  \"instyle</w>\": 41321,\n  \"insu\": 8805,\n  \"insul\": 9615,\n  \"insulated</w>\": 42051,\n  \"insulation</w>\": 28194,\n  \"insulin</w>\": 29311,\n  \"insult</w>\": 26673,\n  \"insulting</w>\": 39646,\n  \"insults</w>\": 40451,\n  \"insur\": 5024,\n  \"insurance</w>\": 5870,\n  \"insured</w>\": 31321,\n  \"insurers</w>\": 43142,\n  \"insurtech</w>\": 28716,\n  \"int\": 1828,\n  \"int</w>\": 1207,\n  \"inta</w>\": 38314,\n  \"intact</w>\": 26870,\n  \"intake</w>\": 19539,\n  \"intan\": 47695,\n  \"inte\": 1598,\n  \"inte</w>\": 41900,\n  \"intech</w>\": 26504,\n  \"inted</w>\": 6147,\n  \"integr\": 5151,\n  \"integral</w>\": 27018,\n  \"integrate</w>\": 25735,\n  \"integrated</w>\": 12797,\n  \"integrating</w>\": 31555,\n  \"integration</w>\": 12583,\n  \"integrity</w>\": 14791,\n  \"intel\": 11778,\n  \"intel</w>\": 11426,\n  \"intellec\": 13281,\n  \"intellect</w>\": 47828,\n  \"intellectu\": 31966,\n  \"intellectual</w>\": 18069,\n  \"intelli\": 5324,\n  \"intellig\": 5632,\n  \"intelligence</w>\": 6846,\n  \"intelligent</w>\": 14063,\n  \"inten\": 2967,\n  \"intend</w>\": 36674,\n  \"intended</w>\": 16812,\n  \"intense</w>\": 10258,\n  \"intensi\": 22928,\n  \"intensity</w>\": 19956,\n  \"intensive</w>\": 21049,\n  \"intent</w>\": 18881,\n  \"intention</w>\": 26786,\n  \"intentional</w>\": 29536,\n  \"intentionally</w>\": 31215,\n  \"intentions</w>\": 26710,\n  \"inter\": 1006,\n  \"inter</w>\": 10093,\n  \"interact</w>\": 21736,\n  \"interacting</w>\": 35045,\n  \"interaction</w>\": 17650,\n  \"interactions</w>\": 22162,\n  \"interactive</w>\": 9456,\n  \"intercep\": 23676,\n  \"interception</w>\": 48762,\n  \"interceptions</w>\": 45313,\n  \"interchange</w>\": 34222,\n  \"intercontinental</w>\": 31983,\n  \"interdisciplinary</w>\": 38132,\n  \"intere\": 2008,\n  \"interest</w>\": 5095,\n  \"interested</w>\": 4620,\n  \"interesting</w>\": 3628,\n  \"interests</w>\": 16425,\n  \"interface</w>\": 18753,\n  \"interfaith</w>\": 38399,\n  \"interference</w>\": 29099,\n  \"interim</w>\": 19509,\n  \"interior\": 10700,\n  \"interior</w>\": 7305,\n  \"interiordesign</w>\": 12902,\n  \"interiors</w>\": 14836,\n  \"intermedi\": 20246,\n  \"intermediate</w>\": 24304,\n  \"intermission</w>\": 44805,\n  \"intermitt\": 44946,\n  \"intern\": 9976,\n  \"intern</w>\": 14068,\n  \"internal</w>\": 11285,\n  \"internally</w>\": 41134,\n  \"internation\": 42534,\n  \"international\": 8566,\n  \"international</w>\": 2436,\n  \"internationaldayof\": 41518,\n  \"internationally</w>\": 24059,\n  \"internationalwomensday</w>\": 17682,\n  \"interne\": 32713,\n  \"internet\": 30180,\n  \"internet</w>\": 4757,\n  \"internetof\": 44449,\n  \"internetofthings</w>\": 45925,\n  \"interns</w>\": 19902,\n  \"internship</w>\": 16661,\n  \"internships</w>\": 39410,\n  \"interoper\": 45754,\n  \"interpre\": 11162,\n  \"interpret\": 49154,\n  \"interpret</w>\": 40459,\n  \"interpretation</w>\": 20652,\n  \"interpreted</w>\": 42157,\n  \"interpreting</w>\": 46525,\n  \"interro\": 29548,\n  \"interrup\": 21609,\n  \"interrupt</w>\": 48449,\n  \"interrupted</w>\": 30288,\n  \"intersec\": 45246,\n  \"intersection</w>\": 19210,\n  \"interstate</w>\": 21963,\n  \"interstellar</w>\": 41506,\n  \"interval</w>\": 36032,\n  \"intervals</w>\": 44884,\n  \"interven\": 18245,\n  \"intervention</w>\": 16804,\n  \"interventions</w>\": 28848,\n  \"interview</w>\": 2885,\n  \"interviewed</w>\": 11688,\n  \"interviewing</w>\": 16399,\n  \"interviews</w>\": 9910,\n  \"intestin\": 37938,\n  \"intestinal</w>\": 38896,\n  \"inthe\": 7486,\n  \"inti\": 14459,\n  \"intim\": 38832,\n  \"intimacy</w>\": 46430,\n  \"intimate</w>\": 16382,\n  \"intimid\": 24041,\n  \"intimidating</w>\": 44405,\n  \"intimidation</w>\": 49258,\n  \"inting</w>\": 15571,\n  \"intl\": 38186,\n  \"intl</w>\": 14224,\n  \"intment</w>\": 9020,\n  \"intments</w>\": 21420,\n  \"into\": 35235,\n  \"into</w>\": 1095,\n  \"intoler\": 28534,\n  \"intolerance</w>\": 37808,\n  \"intothe\": 38511,\n  \"intra\": 20922,\n  \"intrac\": 46195,\n  \"intram\": 40956,\n  \"intre\": 29397,\n  \"intrepid</w>\": 39127,\n  \"intri\": 15421,\n  \"intric\": 23763,\n  \"intricate</w>\": 29616,\n  \"intrigu\": 18856,\n  \"intrigue</w>\": 45140,\n  \"intrigued</w>\": 40034,\n  \"intriguing</w>\": 24334,\n  \"intrin\": 45181,\n  \"intro\": 2999,\n  \"intro</w>\": 13224,\n  \"introduc\": 3621,\n  \"introduce</w>\": 9813,\n  \"introduced</w>\": 10446,\n  \"introduces</w>\": 12933,\n  \"introducing</w>\": 6256,\n  \"introduction</w>\": 11812,\n  \"introductory</w>\": 38121,\n  \"intru\": 22949,\n  \"ints</w>\": 2514,\n  \"intu\": 17225,\n  \"intuition</w>\": 40897,\n  \"intuitive</w>\": 35224,\n  \"inu\": 21131,\n  \"inuit</w>\": 41250,\n  \"inus</w>\": 45857,\n  \"inv\": 2279,\n  \"inv</w>\": 43786,\n  \"inva\": 10084,\n  \"invade</w>\": 34609,\n  \"invaded</w>\": 32596,\n  \"invaders</w>\": 35188,\n  \"invading</w>\": 40101,\n  \"invali\": 31592,\n  \"invalid</w>\": 46998,\n  \"invaluable</w>\": 33976,\n  \"invasi\": 38100,\n  \"invasion</w>\": 13378,\n  \"invasive</w>\": 19554,\n  \"inve\": 2024,\n  \"inven\": 26233,\n  \"invent\": 11665,\n  \"invent</w>\": 23558,\n  \"invented</w>\": 14100,\n  \"invention</w>\": 23607,\n  \"inventions</w>\": 44914,\n  \"inventor</w>\": 22836,\n  \"inventory</w>\": 19444,\n  \"inver\": 12061,\n  \"inverness</w>\": 33080,\n  \"inverte\": 46397,\n  \"inverted</w>\": 40709,\n  \"invest\": 4180,\n  \"invest</w>\": 9716,\n  \"invested</w>\": 22536,\n  \"investig\": 4626,\n  \"investigate</w>\": 15703,\n  \"investigated</w>\": 29180,\n  \"investigates</w>\": 29621,\n  \"investigating</w>\": 13713,\n  \"investigation</w>\": 8194,\n  \"investigations</w>\": 24020,\n  \"investigative</w>\": 30233,\n  \"investigator</w>\": 30528,\n  \"investigators</w>\": 24121,\n  \"investin\": 40195,\n  \"investing</w>\": 10554,\n  \"investment</w>\": 5605,\n  \"investments</w>\": 14675,\n  \"investor</w>\": 15490,\n  \"investors</w>\": 10486,\n  \"invests</w>\": 38378,\n  \"invic\": 25253,\n  \"invigor\": 48722,\n  \"invin\": 30252,\n  \"invincible</w>\": 38052,\n  \"invisible</w>\": 16093,\n  \"invit\": 12454,\n  \"invitation</w>\": 15032,\n  \"invitational</w>\": 14511,\n  \"invitations</w>\": 40120,\n  \"invite</w>\": 8109,\n  \"invited</w>\": 7731,\n  \"invites</w>\": 16034,\n  \"inviting</w>\": 14349,\n  \"invo\": 29417,\n  \"invol\": 4000,\n  \"involve</w>\": 26325,\n  \"involved</w>\": 5320,\n  \"involvement</w>\": 19502,\n  \"involves</w>\": 22652,\n  \"involving</w>\": 14786,\n  \"inwx</w>\": 35674,\n  \"iny</w>\": 23257,\n  \"inyour\": 47954,\n  \"io\": 3167,\n  \"io</w>\": 3752,\n  \"ioc</w>\": 43018,\n  \"iom\": 33000,\n  \"iom</w>\": 31135,\n  \"ion\": 14871,\n  \"ion</w>\": 3668,\n  \"ions</w>\": 26289,\n  \"ior\": 7354,\n  \"ior</w>\": 2498,\n  \"iority</w>\": 46016,\n  \"iors</w>\": 6427,\n  \"ios</w>\": 6614,\n  \"iot\": 32694,\n  \"iot</w>\": 6627,\n  \"iota</w>\": 37294,\n  \"ious</w>\": 6994,\n  \"iously</w>\": 38233,\n  \"iow\": 7439,\n  \"iowa\": 38847,\n  \"iowa</w>\": 8290,\n  \"ip\": 1719,\n  \"ip</w>\": 8600,\n  \"ipa</w>\": 11199,\n  \"ipad\": 39067,\n  \"ipad</w>\": 7491,\n  \"ipads</w>\": 35281,\n  \"ipc</w>\": 41981,\n  \"iphone\": 26030,\n  \"iphone</w>\": 4314,\n  \"iphones</w>\": 37561,\n  \"ipl</w>\": 13440,\n  \"ipment</w>\": 37824,\n  \"ipo\": 40218,\n  \"ipo</w>\": 24090,\n  \"ipod</w>\": 17889,\n  \"ipp\": 31706,\n  \"ips</w>\": 26910,\n  \"ipsw\": 22221,\n  \"ipswich</w>\": 24494,\n  \"iq\": 15554,\n  \"iq</w>\": 19996,\n  \"iqbal</w>\": 33553,\n  \"ir\": 582,\n  \"ir</w>\": 742,\n  \"ira\": 4923,\n  \"ira</w>\": 5371,\n  \"irah</w>\": 35724,\n  \"iran\": 19273,\n  \"iran</w>\": 5075,\n  \"irandeal</w>\": 46533,\n  \"irani</w>\": 37984,\n  \"iranian</w>\": 14158,\n  \"iraq</w>\": 8543,\n  \"iraqi</w>\": 18617,\n  \"irc</w>\": 41527,\n  \"ird</w>\": 2770,\n  \"ire\": 3013,\n  \"ire</w>\": 1454,\n  \"ired\": 32728,\n  \"ired</w>\": 2995,\n  \"ireland\": 32806,\n  \"ireland</w>\": 4157,\n  \"irene</w>\": 21600,\n  \"ires</w>\": 12435,\n  \"irez</w>\": 21581,\n  \"irgc</w>\": 47942,\n  \"iri\": 2155,\n  \"iri</w>\": 13880,\n  \"irical</w>\": 33366,\n  \"irie</w>\": 42979,\n  \"irina</w>\": 46664,\n  \"iring</w>\": 10169,\n  \"iris</w>\": 16437,\n  \"irish\": 9386,\n  \"irish</w>\": 4889,\n  \"irl\": 34494,\n  \"irl</w>\": 8570,\n  \"irling</w>\": 26493,\n  \"irls</w>\": 24344,\n  \"irma</w>\": 22406,\n  \"irn</w>\": 42603,\n  \"iro\": 23209,\n  \"iro</w>\": 7280,\n  \"iron\": 7699,\n  \"iron</w>\": 5391,\n  \"ironic</w>\": 24518,\n  \"ironically</w>\": 36779,\n  \"ironing</w>\": 46655,\n  \"ironman</w>\": 20330,\n  \"irons</w>\": 30032,\n  \"irony</w>\": 20681,\n  \"irport</w>\": 27769,\n  \"irr\": 24641,\n  \"irrational</w>\": 47413,\n  \"irregular</w>\": 38692,\n  \"irrelevant</w>\": 34677,\n  \"irresi\": 31200,\n  \"irresistible</w>\": 35252,\n  \"irresponsible</w>\": 44714,\n  \"irri\": 21484,\n  \"irrigation</w>\": 23761,\n  \"irrit\": 24218,\n  \"irs</w>\": 6086,\n  \"irst</w>\": 32701,\n  \"iru</w>\": 48206,\n  \"irvin</w>\": 47053,\n  \"irvine</w>\": 24201,\n  \"irving</w>\": 19738,\n  \"irwin</w>\": 23750,\n  \"iry</w>\": 7239,\n  \"is\": 595,\n  \"is</w>\": 533,\n  \"isa\": 11034,\n  \"isa</w>\": 6536,\n  \"isaac\": 37544,\n  \"isaac</w>\": 13659,\n  \"isab\": 13357,\n  \"isabel</w>\": 27466,\n  \"isabella</w>\": 26192,\n  \"isabelle</w>\": 31072,\n  \"isable</w>\": 46631,\n  \"isai\": 15365,\n  \"isaiah</w>\": 17952,\n  \"isak\": 40619,\n  \"isance</w>\": 46893,\n  \"isation</w>\": 7194,\n  \"isback</w>\": 43811,\n  \"isc</w>\": 39316,\n  \"isch</w>\": 47888,\n  \"isco</w>\": 5736,\n  \"iscoming</w>\": 26458,\n  \"isd\": 46816,\n  \"isd</w>\": 12002,\n  \"ise\": 7669,\n  \"ise</w>\": 1479,\n  \"ised</w>\": 2861,\n  \"iselle</w>\": 48491,\n  \"iser\": 23080,\n  \"iser</w>\": 5626,\n  \"isers</w>\": 34879,\n  \"ises</w>\": 5153,\n  \"isf</w>\": 44036,\n  \"isgreat</w>\": 34595,\n  \"ish\": 6844,\n  \"ish</w>\": 1061,\n  \"isha</w>\": 28050,\n  \"ishable</w>\": 37949,\n  \"ished</w>\": 35341,\n  \"ishere</w>\": 46053,\n  \"ishi\": 26224,\n  \"ishq\": 27996,\n  \"ishqba\": 32503,\n  \"ishqbaaaz</w>\": 36591,\n  \"isi\": 7233,\n  \"isi</w>\": 17880,\n  \"isil</w>\": 34636,\n  \"isin</w>\": 37676,\n  \"ising</w>\": 3426,\n  \"isis</w>\": 7531,\n  \"isk</w>\": 30171,\n  \"isl</w>\": 31368,\n  \"isla</w>\": 22807,\n  \"islam\": 6003,\n  \"islam</w>\": 8770,\n  \"islamabad</w>\": 19959,\n  \"islamic\": 31627,\n  \"islamic</w>\": 9552,\n  \"islamist</w>\": 38798,\n  \"islamophobia</w>\": 43459,\n  \"island\": 13408,\n  \"island</w>\": 2619,\n  \"islander</w>\": 45651,\n  \"islanders</w>\": 27804,\n  \"islands</w>\": 7145,\n  \"islay</w>\": 49279,\n  \"isle\": 19082,\n  \"isle</w>\": 11849,\n  \"isleof\": 24718,\n  \"isles</w>\": 21816,\n  \"islife</w>\": 26433,\n  \"islington</w>\": 34945,\n  \"ism\": 47730,\n  \"ism</w>\": 1935,\n  \"isma\": 43937,\n  \"ismail</w>\": 36140,\n  \"isme</w>\": 43570,\n  \"ismo</w>\": 41926,\n  \"isms</w>\": 18700,\n  \"isn</w>\": 2923,\n  \"isner</w>\": 48246,\n  \"isnow</w>\": 43694,\n  \"isnt</w>\": 19416,\n  \"iso\": 2462,\n  \"iso</w>\": 12263,\n  \"isol\": 11414,\n  \"isolated</w>\": 19044,\n  \"isolation</w>\": 26400,\n  \"ison\": 12949,\n  \"ison</w>\": 4553,\n  \"isons</w>\": 33318,\n  \"isoo</w>\": 35857,\n  \"isp\": 31397,\n  \"isp</w>\": 39041,\n  \"isra\": 3591,\n  \"israel\": 20837,\n  \"israel</w>\": 4779,\n  \"israeli</w>\": 8994,\n  \"israelis</w>\": 45713,\n  \"isreal</w>\": 47147,\n  \"isro</w>\": 44841,\n  \"iss\": 11738,\n  \"iss</w>\": 4950,\n  \"issa\": 38579,\n  \"issa</w>\": 7560,\n  \"issan\": 49358,\n  \"issance</w>\": 40828,\n  \"issant</w>\": 38828,\n  \"isse</w>\": 18986,\n  \"ission</w>\": 37946,\n  \"issu\": 2049,\n  \"issue</w>\": 3202,\n  \"issued</w>\": 9246,\n  \"issues</w>\": 4082,\n  \"issuing</w>\": 37226,\n  \"ist\": 9751,\n  \"ist</w>\": 2304,\n  \"istanbul</w>\": 12258,\n  \"istandwith\": 33820,\n  \"iste</w>\": 32563,\n  \"ister</w>\": 14555,\n  \"isthe\": 46748,\n  \"istic</w>\": 29556,\n  \"ists</w>\": 8426,\n  \"isu\": 17030,\n  \"isu</w>\": 23328,\n  \"it\": 529,\n  \"it</w>\": 585,\n  \"ita\": 36920,\n  \"ita</w>\": 2864,\n  \"itable</w>\": 8915,\n  \"ital\": 2306,\n  \"ital</w>\": 1660,\n  \"itali\": 11644,\n  \"italia</w>\": 11025,\n  \"italian\": 20264,\n  \"italian</w>\": 5175,\n  \"italians</w>\": 44744,\n  \"italk</w>\": 32894,\n  \"italy</w>\": 4052,\n  \"itan</w>\": 18383,\n  \"itans</w>\": 40711,\n  \"itar</w>\": 47161,\n  \"itarian</w>\": 11599,\n  \"itary</w>\": 17604,\n  \"itas\": 31634,\n  \"itas</w>\": 13436,\n  \"itate</w>\": 42457,\n  \"itated</w>\": 36744,\n  \"itation</w>\": 5070,\n  \"itative</w>\": 22892,\n  \"itc</w>\": 36449,\n  \"itch\": 2387,\n  \"itch</w>\": 8147,\n  \"itchen</w>\": 32664,\n  \"itchy</w>\": 41980,\n  \"ite\": 2732,\n  \"ite</w>\": 802,\n  \"iteam</w>\": 37828,\n  \"itec\": 3099,\n  \"itec</w>\": 43936,\n  \"itech\": 44215,\n  \"itech</w>\": 23040,\n  \"ited\": 8603,\n  \"ited</w>\": 1108,\n  \"itel</w>\": 44638,\n  \"itely</w>\": 4605,\n  \"item</w>\": 8532,\n  \"items</w>\": 6207,\n  \"iter\": 7938,\n  \"iter</w>\": 19773,\n  \"iteracy</w>\": 39634,\n  \"iterate</w>\": 43106,\n  \"iteration</w>\": 38790,\n  \"ites</w>\": 2454,\n  \"itez</w>\": 42131,\n  \"itf</w>\": 35436,\n  \"itfc</w>\": 36519,\n  \"ith\": 6133,\n  \"ith</w>\": 1757,\n  \"ithaca</w>\": 46257,\n  \"iti\": 760,\n  \"iti</w>\": 6165,\n  \"itia</w>\": 22634,\n  \"itian</w>\": 23365,\n  \"itic</w>\": 11950,\n  \"itical</w>\": 48767,\n  \"itics</w>\": 33967,\n  \"ities\": 41423,\n  \"ities</w>\": 1480,\n  \"itim\": 15676,\n  \"itiner\": 32803,\n  \"itinerary</w>\": 41564,\n  \"iting</w>\": 1257,\n  \"ition\": 25263,\n  \"ition</w>\": 1104,\n  \"itions</w>\": 5540,\n  \"itious</w>\": 13329,\n  \"itis\": 33539,\n  \"itis</w>\": 8388,\n  \"itive</w>\": 3067,\n  \"itly</w>\": 42240,\n  \"ito\": 22167,\n  \"ito</w>\": 4661,\n  \"iton</w>\": 21119,\n  \"itor\": 47267,\n  \"itor</w>\": 4584,\n  \"itors</w>\": 22005,\n  \"itos</w>\": 24560,\n  \"its\": 7140,\n  \"its</w>\": 902,\n  \"itsa\": 45032,\n  \"itself</w>\": 7290,\n  \"itsme\": 41125,\n  \"itss\": 47040,\n  \"itt\": 1031,\n  \"itt</w>\": 11228,\n  \"itta</w>\": 21233,\n  \"itte</w>\": 31962,\n  \"itted</w>\": 24429,\n  \"itten\": 30014,\n  \"itten</w>\": 4343,\n  \"itter</w>\": 11456,\n  \"itters</w>\": 13082,\n  \"itti</w>\": 28629,\n  \"ittin</w>\": 25646,\n  \"itting</w>\": 3147,\n  \"ittle\": 24208,\n  \"ittle</w>\": 21366,\n  \"ittles</w>\": 38989,\n  \"itton</w>\": 25707,\n  \"itty</w>\": 35096,\n  \"itu\": 1668,\n  \"itu</w>\": 32128,\n  \"itude\": 43382,\n  \"itude</w>\": 5012,\n  \"itudes</w>\": 20459,\n  \"itunes</w>\": 7007,\n  \"itup</w>\": 35838,\n  \"iture</w>\": 25547,\n  \"itus</w>\": 24364,\n  \"itutes</w>\": 32883,\n  \"itv\": 20159,\n  \"itv</w>\": 12805,\n  \"ity\": 2480,\n  \"ity</w>\": 696,\n  \"itya</w>\": 32055,\n  \"itz\": 14544,\n  \"itz</w>\": 7807,\n  \"iu\": 14292,\n  \"iu</w>\": 15575,\n  \"ium</w>\": 10762,\n  \"ius</w>\": 6740,\n  \"iv\": 6775,\n  \"iv</w>\": 9315,\n  \"iva</w>\": 42463,\n  \"ivan\": 15544,\n  \"ivan</w>\": 15689,\n  \"ivanka</w>\": 37914,\n  \"ive\": 26885,\n  \"ive</w>\": 8653,\n  \"ived</w>\": 15654,\n  \"iver\": 36849,\n  \"iver</w>\": 44254,\n  \"ives</w>\": 27333,\n  \"ivf</w>\": 39159,\n  \"iving</w>\": 45136,\n  \"ivory</w>\": 16776,\n  \"ivote\": 45835,\n  \"ivy\": 36939,\n  \"ivy</w>\": 16045,\n  \"iw\": 13058,\n  \"iw</w>\": 46604,\n  \"iwant\": 42747,\n  \"iwd</w>\": 16815,\n  \"iwm</w>\": 44237,\n  \"ix\": 13272,\n  \"ix</w>\": 8756,\n  \"iy\": 13704,\n  \"iya</w>\": 18595,\n  \"iyaki</w>\": 48395,\n  \"iz\": 2845,\n  \"iz</w>\": 8407,\n  \"iza</w>\": 37704,\n  \"ization</w>\": 10847,\n  \"ize</w>\": 10885,\n  \"ized</w>\": 7690,\n  \"izen</w>\": 34776,\n  \"izer</w>\": 23895,\n  \"izes</w>\": 45434,\n  \"izing</w>\": 17354,\n  \"izo</w>\": 46910,\n  \"izz\": 31779,\n  \"izz</w>\": 46128,\n  \"izzy</w>\": 28861,\n  \"j\": 73,\n  \"j</w>\": 329,\n  \"ja\": 1586,\n  \"ja</w>\": 2641,\n  \"jaan</w>\": 25052,\n  \"jab\": 8059,\n  \"jab</w>\": 9439,\n  \"jac\": 2293,\n  \"jac</w>\": 30198,\n  \"jace</w>\": 43286,\n  \"jack\": 2679,\n  \"jack</w>\": 3267,\n  \"jacked</w>\": 27923,\n  \"jacket</w>\": 6164,\n  \"jackets</w>\": 14745,\n  \"jacki\": 47418,\n  \"jackie\": 28023,\n  \"jackie</w>\": 11716,\n  \"jacking</w>\": 40929,\n  \"jackman</w>\": 35723,\n  \"jackpot</w>\": 23926,\n  \"jacks</w>\": 19649,\n  \"jackson\": 12321,\n  \"jackson</w>\": 4363,\n  \"jacksonville</w>\": 19263,\n  \"jaco\": 6840,\n  \"jacob\": 14385,\n  \"jacob</w>\": 9222,\n  \"jacobs</w>\": 17482,\n  \"jacobson</w>\": 46826,\n  \"jacqu\": 14495,\n  \"jacqueline</w>\": 22843,\n  \"jacques</w>\": 17799,\n  \"jad\": 12976,\n  \"jad</w>\": 38691,\n  \"jada</w>\": 37416,\n  \"jade\": 25123,\n  \"jade</w>\": 14513,\n  \"jaden</w>\": 37174,\n  \"jadine</w>\": 37445,\n  \"jae\": 16869,\n  \"jae</w>\": 15765,\n  \"jaejoong</w>\": 43610,\n  \"jaf\": 19362,\n  \"jag\": 7984,\n  \"jag</w>\": 36236,\n  \"jagan</w>\": 48530,\n  \"jagger</w>\": 30835,\n  \"jags</w>\": 31086,\n  \"jagu\": 10096,\n  \"jaguar\": 44777,\n  \"jaguar</w>\": 14757,\n  \"jaguars</w>\": 21854,\n  \"jah\": 20067,\n  \"jah</w>\": 11084,\n  \"jahan\": 44404,\n  \"jahan</w>\": 47827,\n  \"jai\": 10542,\n  \"jai</w>\": 13819,\n  \"jail\": 18574,\n  \"jail</w>\": 9332,\n  \"jailbreak</w>\": 45990,\n  \"jailed</w>\": 19456,\n  \"jails</w>\": 47833,\n  \"jaime</w>\": 24716,\n  \"jain</w>\": 21999,\n  \"jaipur</w>\": 23593,\n  \"jais\": 48607,\n  \"jait\": 28910,\n  \"jaitley</w>\": 32776,\n  \"jak\": 9225,\n  \"jak</w>\": 30589,\n  \"jakarta</w>\": 15471,\n  \"jake\": 13140,\n  \"jake</w>\": 7419,\n  \"jakob</w>\": 47358,\n  \"jal\": 8380,\n  \"jal</w>\": 26773,\n  \"jalan</w>\": 27270,\n  \"jalap\": 49081,\n  \"jalape\": 34263,\n  \"jalapeÃ±o</w>\": 43017,\n  \"jalen</w>\": 33548,\n  \"jam\": 1434,\n  \"jam</w>\": 5201,\n  \"jama\": 8977,\n  \"jama</w>\": 35366,\n  \"jamaica</w>\": 13019,\n  \"jamaican</w>\": 25144,\n  \"jamal</w>\": 26108,\n  \"jambo\": 35599,\n  \"jamboree</w>\": 38506,\n  \"jame\": 12341,\n  \"james\": 6963,\n  \"james</w>\": 2392,\n  \"jamesbond</w>\": 44704,\n  \"jamesc\": 47004,\n  \"jameson</w>\": 31731,\n  \"jami\": 15092,\n  \"jamie\": 16454,\n  \"jamie</w>\": 8078,\n  \"jamiedor\": 34310,\n  \"jamiedornan</w>\": 34896,\n  \"jammed</w>\": 35590,\n  \"jammin</w>\": 35223,\n  \"jamming</w>\": 25862,\n  \"jammu</w>\": 25926,\n  \"jams</w>\": 20243,\n  \"jan\": 1891,\n  \"jan</w>\": 3334,\n  \"jana</w>\": 18182,\n  \"jane\": 12389,\n  \"jane</w>\": 6736,\n  \"janeiro</w>\": 31740,\n  \"janet\": 29665,\n  \"janet</w>\": 15872,\n  \"jang\": 41526,\n  \"jang</w>\": 22074,\n  \"jani</w>\": 22606,\n  \"janice</w>\": 36048,\n  \"janine</w>\": 46896,\n  \"janis</w>\": 44233,\n  \"jann\": 35377,\n  \"jans</w>\": 22578,\n  \"jansen</w>\": 45354,\n  \"janu\": 3623,\n  \"january</w>\": 3697,\n  \"jap\": 2299,\n  \"jap</w>\": 49062,\n  \"japan\": 4502,\n  \"japan</w>\": 3400,\n  \"japanese\": 27211,\n  \"japanese</w>\": 4925,\n  \"japs</w>\": 42121,\n  \"jar\": 5120,\n  \"jar</w>\": 10837,\n  \"jard\": 25778,\n  \"jardin</w>\": 37371,\n  \"jare\": 17654,\n  \"jared\": 35597,\n  \"jared</w>\": 12571,\n  \"jaredle\": 36739,\n  \"jaredleto</w>\": 37106,\n  \"jaro</w>\": 35505,\n  \"jarpad</w>\": 44497,\n  \"jarre\": 23385,\n  \"jarrett</w>\": 30531,\n  \"jars</w>\": 27583,\n  \"jarvis</w>\": 29286,\n  \"jas\": 4492,\n  \"jas</w>\": 17559,\n  \"jasmin\": 42989,\n  \"jasmin</w>\": 47700,\n  \"jasmine</w>\": 17056,\n  \"jason\": 10009,\n  \"jason</w>\": 5395,\n  \"jasper</w>\": 19827,\n  \"jat\": 26106,\n  \"jau\": 26932,\n  \"jauregui</w>\": 48175,\n  \"jav\": 6234,\n  \"java</w>\": 12918,\n  \"javascri\": 16289,\n  \"javascript</w>\": 16423,\n  \"jave\": 46218,\n  \"javed</w>\": 42268,\n  \"javelin</w>\": 41701,\n  \"javi</w>\": 47627,\n  \"javier</w>\": 23307,\n  \"jaw\": 14804,\n  \"jaw</w>\": 17307,\n  \"jawa\": 44790,\n  \"jaws</w>\": 25491,\n  \"jax\": 22348,\n  \"jax</w>\": 12390,\n  \"jay\": 3427,\n  \"jay</w>\": 4155,\n  \"jaya</w>\": 21960,\n  \"jayanti</w>\": 37732,\n  \"jaye</w>\": 45703,\n  \"jayne</w>\": 35228,\n  \"jays</w>\": 12393,\n  \"jaz\": 3465,\n  \"jaz</w>\": 32874,\n  \"jazeera</w>\": 38260,\n  \"jazz\": 11488,\n  \"jazz</w>\": 4528,\n  \"jazzfest</w>\": 36683,\n  \"jazzy</w>\": 28191,\n  \"jb\": 21915,\n  \"jb</w>\": 13637,\n  \"jc\": 14991,\n  \"jc</w>\": 11517,\n  \"jd\": 18289,\n  \"jd</w>\": 14125,\n  \"jdm</w>\": 42013,\n  \"je\": 1013,\n  \"je</w>\": 8776,\n  \"jeal\": 9964,\n  \"jealous</w>\": 11093,\n  \"jealousy</w>\": 37654,\n  \"jean\": 13943,\n  \"jean</w>\": 6473,\n  \"jeanette</w>\": 48167,\n  \"jeanne</w>\": 29201,\n  \"jeans</w>\": 10157,\n  \"jeb</w>\": 35101,\n  \"jec\": 1347,\n  \"ject</w>\": 6070,\n  \"jed\": 12166,\n  \"jed</w>\": 38748,\n  \"jeddah</w>\": 40982,\n  \"jedi</w>\": 16681,\n  \"jee\": 29250,\n  \"jee</w>\": 14870,\n  \"jeep\": 16593,\n  \"jeep</w>\": 11286,\n  \"jeeplife</w>\": 43100,\n  \"jeet\": 45542,\n  \"jeet</w>\": 30944,\n  \"jef\": 10276,\n  \"jeff\": 6245,\n  \"jeff</w>\": 5550,\n  \"jefferson\": 44711,\n  \"jefferson</w>\": 13976,\n  \"jeffery</w>\": 41470,\n  \"jeffree\": 45994,\n  \"jeffrey\": 32886,\n  \"jeffrey</w>\": 16027,\n  \"jeho\": 42437,\n  \"jeky\": 43893,\n  \"jekyll</w>\": 49405,\n  \"jel\": 9794,\n  \"jelena</w>\": 48218,\n  \"jelly\": 19110,\n  \"jelly</w>\": 13762,\n  \"jellyfish</w>\": 30988,\n  \"jem\": 46326,\n  \"jem</w>\": 37530,\n  \"jen\": 2554,\n  \"jen</w>\": 12997,\n  \"jenkins</w>\": 16162,\n  \"jenn\": 33921,\n  \"jenn</w>\": 29869,\n  \"jenna</w>\": 17125,\n  \"jenner</w>\": 14260,\n  \"jenni\": 6774,\n  \"jennie</w>\": 28875,\n  \"jennifer\": 19786,\n  \"jennifer</w>\": 8613,\n  \"jennings</w>\": 21564,\n  \"jenny\": 20165,\n  \"jenny</w>\": 13414,\n  \"jens</w>\": 40806,\n  \"jensen\": 35558,\n  \"jensen</w>\": 19004,\n  \"jensenackles</w>\": 41011,\n  \"jeon\": 45200,\n  \"jeon</w>\": 43337,\n  \"jeong\": 47146,\n  \"jeong</w>\": 39264,\n  \"jeopar\": 22988,\n  \"jeopardy</w>\": 29613,\n  \"jer\": 2310,\n  \"jer</w>\": 35307,\n  \"jere\": 5614,\n  \"jeremi\": 22362,\n  \"jeremiah</w>\": 27301,\n  \"jeremy\": 14656,\n  \"jeremy</w>\": 8127,\n  \"jeremycorbyn</w>\": 37484,\n  \"jeric\": 25084,\n  \"jericho</w>\": 28892,\n  \"jerk</w>\": 23917,\n  \"jerky</w>\": 40079,\n  \"jermaine</w>\": 40722,\n  \"jerome</w>\": 19876,\n  \"jerry\": 18163,\n  \"jerry</w>\": 9164,\n  \"jersey\": 21921,\n  \"jersey</w>\": 4471,\n  \"jerseys</w>\": 15518,\n  \"jerus\": 12257,\n  \"jerusalem</w>\": 12557,\n  \"jes\": 7686,\n  \"jes</w>\": 35826,\n  \"jess\": 5313,\n  \"jess</w>\": 13758,\n  \"jesse\": 23112,\n  \"jesse</w>\": 11770,\n  \"jessi\": 24373,\n  \"jessic\": 14881,\n  \"jessica\": 45421,\n  \"jessica</w>\": 8178,\n  \"jessie</w>\": 19424,\n  \"jester</w>\": 44225,\n  \"jesu\": 19777,\n  \"jesuit</w>\": 33234,\n  \"jesus</w>\": 4070,\n  \"jet\": 11515,\n  \"jet</w>\": 6565,\n  \"jetblue</w>\": 45021,\n  \"jeter</w>\": 38450,\n  \"jets\": 38584,\n  \"jets</w>\": 10025,\n  \"jett</w>\": 44541,\n  \"jetty</w>\": 46382,\n  \"jew</w>\": 27450,\n  \"jewel\": 4880,\n  \"jewel</w>\": 17591,\n  \"jewell\": 9777,\n  \"jewellers</w>\": 46265,\n  \"jewellery</w>\": 11192,\n  \"jewelry\": 28018,\n  \"jewelry</w>\": 6039,\n  \"jewels</w>\": 20205,\n  \"jewish\": 29594,\n  \"jewish</w>\": 9104,\n  \"jews</w>\": 14200,\n  \"jf\": 31130,\n  \"jf</w>\": 33718,\n  \"jfc</w>\": 43652,\n  \"jfk</w>\": 18486,\n  \"jg\": 41986,\n  \"jg</w>\": 35138,\n  \"jh\": 24858,\n  \"jh</w>\": 21485,\n  \"jha\": 47012,\n  \"jha</w>\": 38092,\n  \"jhal\": 45695,\n  \"jhar\": 31546,\n  \"jharkhand</w>\": 39001,\n  \"jhb</w>\": 34631,\n  \"ji\": 3252,\n  \"ji</w>\": 2697,\n  \"jia</w>\": 32907,\n  \"jian</w>\": 33427,\n  \"jiang\": 43309,\n  \"jiang</w>\": 25762,\n  \"jic\": 48350,\n  \"jic</w>\": 40215,\n  \"jid</w>\": 24403,\n  \"jie</w>\": 40005,\n  \"jig\": 15136,\n  \"jig</w>\": 47430,\n  \"jigsaw</w>\": 32987,\n  \"jiha\": 23194,\n  \"jihad</w>\": 29637,\n  \"jihoon</w>\": 44765,\n  \"jil\": 36225,\n  \"jill\": 24136,\n  \"jill</w>\": 15254,\n  \"jillian</w>\": 37820,\n  \"jim\": 3190,\n  \"jim</w>\": 4550,\n  \"jima</w>\": 20679,\n  \"jimcantore</w>\": 43950,\n  \"jimenez</w>\": 35947,\n  \"jimi</w>\": 30565,\n  \"jimin</w>\": 16286,\n  \"jimmie</w>\": 45679,\n  \"jimmy\": 12215,\n  \"jimmy</w>\": 6817,\n  \"jimmyfallon</w>\": 45265,\n  \"jin\": 7927,\n  \"jin</w>\": 8485,\n  \"jind\": 40609,\n  \"jing\": 34933,\n  \"jing</w>\": 28607,\n  \"jingle</w>\": 28699,\n  \"jinnah</w>\": 43141,\n  \"jinping</w>\": 39308,\n  \"jinx</w>\": 42977,\n  \"jinyoung</w>\": 38051,\n  \"jio</w>\": 40501,\n  \"jis\": 25988,\n  \"jis</w>\": 23515,\n  \"jisoo</w>\": 43070,\n  \"jit\": 11947,\n  \"jit</w>\": 20308,\n  \"jitsu</w>\": 24530,\n  \"jiu\": 43351,\n  \"jiu</w>\": 44123,\n  \"jj\": 12502,\n  \"jj</w>\": 12790,\n  \"jk\": 20189,\n  \"jk</w>\": 9702,\n  \"jkt</w>\": 21494,\n  \"jl\": 25027,\n  \"jl</w>\": 22911,\n  \"jlo</w>\": 31017,\n  \"jm\": 24044,\n  \"jm</w>\": 18657,\n  \"jn\": 24576,\n  \"jn</w>\": 21717,\n  \"jnr</w>\": 37145,\n  \"jnu</w>\": 47142,\n  \"jo\": 683,\n  \"jo</w>\": 3804,\n  \"joachim</w>\": 48979,\n  \"joan\": 28064,\n  \"joan</w>\": 12710,\n  \"joann\": 35484,\n  \"joanna</w>\": 25357,\n  \"joanne\": 43736,\n  \"joanne</w>\": 25092,\n  \"joao</w>\": 45666,\n  \"joaqu\": 25140,\n  \"joaquin</w>\": 30745,\n  \"job\": 13114,\n  \"job</w>\": 2075,\n  \"jobs</w>\": 3735,\n  \"jobsearch</w>\": 45459,\n  \"joburg</w>\": 39343,\n  \"jocel\": 36879,\n  \"jocelyn</w>\": 47259,\n  \"jock</w>\": 34485,\n  \"jockey</w>\": 20126,\n  \"jodh\": 48689,\n  \"jodi\": 36812,\n  \"jodi</w>\": 26888,\n  \"jodie</w>\": 33100,\n  \"jody</w>\": 32959,\n  \"joe\": 9309,\n  \"joe</w>\": 3305,\n  \"joel\": 19819,\n  \"joel</w>\": 11429,\n  \"joes</w>\": 34756,\n  \"joey\": 16281,\n  \"joey</w>\": 10455,\n  \"jog\": 37967,\n  \"jog</w>\": 31691,\n  \"jogging</w>\": 37922,\n  \"joh\": 1201,\n  \"johan\": 17416,\n  \"johan</w>\": 27789,\n  \"johann</w>\": 31180,\n  \"johanna</w>\": 41494,\n  \"johannes</w>\": 37779,\n  \"johannesburg</w>\": 28377,\n  \"johansson</w>\": 41512,\n  \"johar</w>\": 34871,\n  \"john\": 2004,\n  \"john</w>\": 1742,\n  \"johncena</w>\": 46820,\n  \"johnnie</w>\": 47947,\n  \"johnny\": 14464,\n  \"johnny</w>\": 6904,\n  \"johns</w>\": 14515,\n  \"johnson\": 26036,\n  \"johnson</w>\": 4010,\n  \"johnston</w>\": 19791,\n  \"johnstone</w>\": 40766,\n  \"johor</w>\": 34750,\n  \"join\": 14737,\n  \"join</w>\": 1384,\n  \"joined</w>\": 4954,\n  \"joining</w>\": 5118,\n  \"joins</w>\": 5681,\n  \"joint</w>\": 6640,\n  \"jointhe\": 30422,\n  \"jointly</w>\": 37471,\n  \"joints</w>\": 27204,\n  \"jojo\": 41484,\n  \"jojo</w>\": 22075,\n  \"joke</w>\": 7198,\n  \"joker</w>\": 18200,\n  \"jokers</w>\": 44101,\n  \"jokes</w>\": 11336,\n  \"joking</w>\": 26112,\n  \"joko\": 44975,\n  \"jol\": 9174,\n  \"jol</w>\": 36470,\n  \"jolie</w>\": 31633,\n  \"jolla</w>\": 46109,\n  \"jolly</w>\": 21516,\n  \"jom\": 32152,\n  \"jon\": 3026,\n  \"jon</w>\": 6139,\n  \"jona\": 6629,\n  \"jonah\": 47934,\n  \"jonah</w>\": 27556,\n  \"jonas\": 42373,\n  \"jonas</w>\": 13650,\n  \"jonathan\": 19026,\n  \"jonathan</w>\": 7762,\n  \"jone\": 33934,\n  \"jones\": 19091,\n  \"jones</w>\": 3538,\n  \"jong\": 20214,\n  \"jong</w>\": 14726,\n  \"jonghyun</w>\": 29023,\n  \"jongin</w>\": 36957,\n  \"joni</w>\": 43177,\n  \"jonny\": 28454,\n  \"jonny</w>\": 21895,\n  \"joo\": 25807,\n  \"joo</w>\": 27680,\n  \"joom\": 47543,\n  \"joon</w>\": 18547,\n  \"joong</w>\": 26544,\n  \"jop\": 30486,\n  \"joplin</w>\": 42688,\n  \"jor\": 2482,\n  \"jor</w>\": 31595,\n  \"jordan\": 14644,\n  \"jordan</w>\": 4388,\n  \"jordani\": 46898,\n  \"jordi</w>\": 44795,\n  \"jorge\": 48761,\n  \"jorge</w>\": 18225,\n  \"jos\": 20560,\n  \"jos</w>\": 19661,\n  \"jose\": 4647,\n  \"jose</w>\": 7075,\n  \"josef</w>\": 36584,\n  \"josel\": 47800,\n  \"joseph\": 14163,\n  \"joseph</w>\": 6478,\n  \"josephine</w>\": 34866,\n  \"josh\": 9998,\n  \"josh</w>\": 5679,\n  \"joshi</w>\": 24786,\n  \"joshu\": 9112,\n  \"joshua</w>\": 11852,\n  \"josi\": 33583,\n  \"josie</w>\": 33167,\n  \"joss</w>\": 42834,\n  \"josÃ©</w>\": 27922,\n  \"jou\": 19921,\n  \"jou</w>\": 32029,\n  \"jour\": 2078,\n  \"jour</w>\": 17142,\n  \"journ\": 4563,\n  \"journal</w>\": 6626,\n  \"journalism</w>\": 10123,\n  \"journalist</w>\": 9914,\n  \"journalists</w>\": 12249,\n  \"journals</w>\": 24391,\n  \"journe\": 48833,\n  \"journey\": 32156,\n  \"journey</w>\": 3749,\n  \"journeys</w>\": 23329,\n  \"journo</w>\": 37034,\n  \"journos</w>\": 46437,\n  \"jovi</w>\": 33866,\n  \"joy\": 6308,\n  \"joy</w>\": 4273,\n  \"joyce\": 43753,\n  \"joyce</w>\": 15275,\n  \"joye\": 34052,\n  \"joyeux</w>\": 41876,\n  \"joyful</w>\": 24139,\n  \"joyous</w>\": 32245,\n  \"joyride</w>\": 46949,\n  \"joys</w>\": 22996,\n  \"jp\": 18249,\n  \"jp</w>\": 10557,\n  \"jpg</w>\": 36950,\n  \"jpn</w>\": 36212,\n  \"jr\": 13973,\n  \"jr</w>\": 3605,\n  \"js\": 46243,\n  \"js</w>\": 8006,\n  \"jst</w>\": 26523,\n  \"jt\": 39480,\n  \"jt</w>\": 18119,\n  \"ju\": 669,\n  \"ju</w>\": 9970,\n  \"jual</w>\": 38720,\n  \"juan\": 17148,\n  \"juan</w>\": 9274,\n  \"juana</w>\": 9081,\n  \"jubi\": 15485,\n  \"jubil\": 47743,\n  \"jubilee</w>\": 16907,\n  \"juco</w>\": 31570,\n  \"jud\": 8363,\n  \"juda\": 32478,\n  \"judah</w>\": 41066,\n  \"judaism</w>\": 42217,\n  \"judas</w>\": 39532,\n  \"judd</w>\": 29770,\n  \"judg\": 20012,\n  \"judge\": 16824,\n  \"judge</w>\": 5656,\n  \"judged</w>\": 33453,\n  \"judgement</w>\": 25246,\n  \"judges</w>\": 12575,\n  \"judging</w>\": 16570,\n  \"judgment</w>\": 24191,\n  \"judi\": 42546,\n  \"judice</w>\": 28032,\n  \"judicial</w>\": 19579,\n  \"judiciary</w>\": 24545,\n  \"judith</w>\": 24047,\n  \"judo</w>\": 27011,\n  \"judy\": 34663,\n  \"judy</w>\": 16510,\n  \"jug</w>\": 27619,\n  \"jugg\": 38628,\n  \"juic\": 38761,\n  \"juice\": 37954,\n  \"juice</w>\": 6916,\n  \"juices</w>\": 36757,\n  \"juicy</w>\": 17623,\n  \"juju</w>\": 43020,\n  \"juke\": 32519,\n  \"jukebox</w>\": 36411,\n  \"jul\": 34662,\n  \"jul</w>\": 15975,\n  \"jule\": 40819,\n  \"jules</w>\": 21996,\n  \"juli\": 3614,\n  \"juli</w>\": 49160,\n  \"julia</w>\": 10207,\n  \"julian\": 25459,\n  \"julian</w>\": 12643,\n  \"juliana</w>\": 46059,\n  \"julie\": 22534,\n  \"julie</w>\": 10505,\n  \"julien</w>\": 32595,\n  \"juliet</w>\": 20641,\n  \"juliette</w>\": 44804,\n  \"julio</w>\": 24888,\n  \"julius</w>\": 20870,\n  \"july</w>\": 2272,\n  \"jum\": 20791,\n  \"jumbo</w>\": 24678,\n  \"jume\": 45989,\n  \"jump\": 5519,\n  \"jump</w>\": 6423,\n  \"jumped</w>\": 16901,\n  \"jumper</w>\": 16558,\n  \"jumpers</w>\": 36485,\n  \"jumping</w>\": 11476,\n  \"jumpman</w>\": 48803,\n  \"jumps</w>\": 18911,\n  \"jumpsuit</w>\": 31044,\n  \"jun\": 1637,\n  \"jun</w>\": 7719,\n  \"junction</w>\": 11320,\n  \"june\": 23188,\n  \"june</w>\": 2345,\n  \"jung\": 13086,\n  \"jung</w>\": 13031,\n  \"jungkook</w>\": 20040,\n  \"jungle\": 42421,\n  \"jungle</w>\": 10865,\n  \"juni\": 4029,\n  \"junior\": 21167,\n  \"junior</w>\": 5027,\n  \"juniors</w>\": 16811,\n  \"juniper</w>\": 33829,\n  \"junk</w>\": 16000,\n  \"junkie</w>\": 27613,\n  \"junkies</w>\": 41207,\n  \"juno</w>\": 28845,\n  \"junto</w>\": 34282,\n  \"jupit\": 15270,\n  \"jupiter</w>\": 16212,\n  \"jur\": 15896,\n  \"jura\": 14715,\n  \"jurassic\": 28844,\n  \"jurassic</w>\": 21255,\n  \"jurgen</w>\": 39263,\n  \"juris\": 37010,\n  \"jurisdic\": 37714,\n  \"jury</w>\": 12931,\n  \"jus</w>\": 14999,\n  \"just\": 1770,\n  \"just</w>\": 761,\n  \"justi\": 14700,\n  \"justic\": 30399,\n  \"justice\": 16904,\n  \"justice</w>\": 3604,\n  \"justicefor\": 25812,\n  \"justiceleague</w>\": 41929,\n  \"justices</w>\": 44356,\n  \"justified</w>\": 34546,\n  \"justify</w>\": 28192,\n  \"justin\": 7537,\n  \"justin</w>\": 4394,\n  \"justinbieber</w>\": 12501,\n  \"justine</w>\": 34418,\n  \"justintrudeau</w>\": 32184,\n  \"justsaying</w>\": 42922,\n  \"juve\": 47717,\n  \"juve</w>\": 23092,\n  \"juven\": 12944,\n  \"juvenile</w>\": 19333,\n  \"juvent\": 13908,\n  \"juventus\": 47378,\n  \"juventus</w>\": 16208,\n  \"jux\": 33552,\n  \"juxta\": 34964,\n  \"jv\": 37932,\n  \"jv</w>\": 11805,\n  \"jw\": 30221,\n  \"jw</w>\": 24215,\n  \"jy\": 20979,\n  \"jyo\": 27378,\n  \"jyoti</w>\": 48696,\n  \"jÃ¤\": 45381,\n  \"k\": 74,\n  \"k</w>\": 330,\n  \"ka\": 1595,\n  \"ka</w>\": 1525,\n  \"kaa</w>\": 34496,\n  \"kab\": 6554,\n  \"kab</w>\": 45134,\n  \"kabaddi</w>\": 41749,\n  \"kabir</w>\": 38619,\n  \"kabo\": 47974,\n  \"kabul</w>\": 26160,\n  \"kac\": 21693,\n  \"kach\": 14341,\n  \"kad\": 10901,\n  \"kade</w>\": 41130,\n  \"kaduna</w>\": 38053,\n  \"kae\": 22542,\n  \"kaeper\": 30070,\n  \"kaepernick</w>\": 30713,\n  \"kaf\": 19870,\n  \"kag\": 13666,\n  \"kag</w>\": 31003,\n  \"kah\": 16068,\n  \"kah</w>\": 15463,\n  \"kahn</w>\": 35397,\n  \"kai\": 12752,\n  \"kai</w>\": 9601,\n  \"kaido</w>\": 40255,\n  \"kail\": 23623,\n  \"kaine</w>\": 39028,\n  \"kair\": 33027,\n  \"kaiser\": 43685,\n  \"kaiser</w>\": 29960,\n  \"kait\": 19326,\n  \"kaitlyn</w>\": 34948,\n  \"kaj\": 44788,\n  \"kaj</w>\": 40381,\n  \"kak\": 10401,\n  \"kak</w>\": 40128,\n  \"kaka</w>\": 47689,\n  \"kaku</w>\": 30900,\n  \"kal\": 4187,\n  \"kal</w>\": 18712,\n  \"kala\": 45453,\n  \"kala</w>\": 33105,\n  \"kalam</w>\": 40142,\n  \"kalamaz\": 42328,\n  \"kalamazoo</w>\": 46264,\n  \"kalb</w>\": 34483,\n  \"kale\": 17162,\n  \"kale</w>\": 16625,\n  \"kaleido\": 41144,\n  \"kali\": 17844,\n  \"kali</w>\": 26964,\n  \"kalin\": 42776,\n  \"kalyan</w>\": 23825,\n  \"kam\": 4104,\n  \"kam</w>\": 26011,\n  \"kamal\": 31371,\n  \"kamal</w>\": 28619,\n  \"kamala</w>\": 45003,\n  \"kame\": 45235,\n  \"kamen</w>\": 40738,\n  \"kami</w>\": 28707,\n  \"kamloops</w>\": 36602,\n  \"kamp\": 35179,\n  \"kamp</w>\": 29522,\n  \"kampala</w>\": 37134,\n  \"kan\": 2532,\n  \"kan</w>\": 8101,\n  \"kana</w>\": 35178,\n  \"kand\": 17478,\n  \"kane\": 32218,\n  \"kane</w>\": 9765,\n  \"kang\": 12226,\n  \"kang</w>\": 20789,\n  \"kangar\": 20622,\n  \"kangaroo</w>\": 25513,\n  \"kani\": 40907,\n  \"kani</w>\": 41948,\n  \"kann\": 18533,\n  \"kannada</w>\": 30053,\n  \"kano</w>\": 28201,\n  \"kans</w>\": 34012,\n  \"kansas\": 25507,\n  \"kansas</w>\": 6539,\n  \"kansascity</w>\": 46134,\n  \"kant\": 39923,\n  \"kant</w>\": 47132,\n  \"kanth</w>\": 24427,\n  \"kanu</w>\": 44565,\n  \"kany\": 13590,\n  \"kanye\": 29680,\n  \"kanye</w>\": 14965,\n  \"kanyewest</w>\": 31943,\n  \"kap\": 6804,\n  \"kap</w>\": 45279,\n  \"kapam\": 48561,\n  \"kapil\": 32337,\n  \"kapil</w>\": 42709,\n  \"kapilshar\": 48978,\n  \"kaplan</w>\": 37401,\n  \"kapoor</w>\": 9117,\n  \"kapp\": 36717,\n  \"kappa</w>\": 20239,\n  \"kapur</w>\": 42371,\n  \"kar\": 1813,\n  \"kar</w>\": 5933,\n  \"kara</w>\": 12552,\n  \"karab\": 40916,\n  \"karachi</w>\": 13671,\n  \"karak\": 40372,\n  \"karan\": 20077,\n  \"karan</w>\": 20931,\n  \"karanjohar</w>\": 47621,\n  \"karao\": 16262,\n  \"karaoke</w>\": 16640,\n  \"karate</w>\": 21211,\n  \"kardashi\": 13619,\n  \"kardashian</w>\": 14578,\n  \"kare\": 14310,\n  \"kare</w>\": 38354,\n  \"kareem</w>\": 38885,\n  \"kareena</w>\": 41569,\n  \"karen\": 17719,\n  \"karen</w>\": 10349,\n  \"kari\": 15339,\n  \"kari</w>\": 15161,\n  \"karim</w>\": 33477,\n  \"karin</w>\": 43917,\n  \"karina</w>\": 40250,\n  \"karl\": 20967,\n  \"karl</w>\": 13134,\n  \"karla</w>\": 42309,\n  \"karma</w>\": 17658,\n  \"karnat\": 13994,\n  \"karnataka</w>\": 15515,\n  \"karo</w>\": 45305,\n  \"kart\": 47841,\n  \"kart</w>\": 21310,\n  \"karthik</w>\": 41397,\n  \"karti\": 23053,\n  \"kartikeyan</w>\": 32584,\n  \"karting</w>\": 41655,\n  \"kas\": 6119,\n  \"kas</w>\": 14372,\n  \"kasa</w>\": 46111,\n  \"kash\": 6954,\n  \"kash</w>\": 21371,\n  \"kashi\": 47945,\n  \"kashmir\": 20251,\n  \"kashmir</w>\": 10783,\n  \"kashmiri</w>\": 35331,\n  \"kasi\": 45870,\n  \"kasi</w>\": 32819,\n  \"kasich</w>\": 39666,\n  \"kat\": 2844,\n  \"kat</w>\": 9341,\n  \"kata</w>\": 14558,\n  \"kate\": 11620,\n  \"kate</w>\": 6699,\n  \"katelyn</w>\": 45963,\n  \"kath\": 7386,\n  \"kath</w>\": 19745,\n  \"katharine</w>\": 41473,\n  \"katherine</w>\": 17687,\n  \"kathle\": 18721,\n  \"kathleen</w>\": 21709,\n  \"kathmandu</w>\": 34456,\n  \"kathniel</w>\": 36159,\n  \"kathr\": 14905,\n  \"kathryn\": 33142,\n  \"kathryn</w>\": 19999,\n  \"kathy\": 34775,\n  \"kathy</w>\": 18795,\n  \"kati\": 6515,\n  \"kati</w>\": 29928,\n  \"katic</w>\": 48058,\n  \"katie\": 24117,\n  \"katie</w>\": 9076,\n  \"katniss</w>\": 47916,\n  \"kato</w>\": 27573,\n  \"katrin\": 31282,\n  \"katrina</w>\": 21397,\n  \"katrinakaif</w>\": 45845,\n  \"kats</w>\": 44213,\n  \"katsu\": 49296,\n  \"katsu</w>\": 43712,\n  \"katy\": 17609,\n  \"katy</w>\": 14435,\n  \"katyperry</w>\": 28309,\n  \"katz</w>\": 30790,\n  \"kau\": 9299,\n  \"kau</w>\": 36895,\n  \"kauai</w>\": 44050,\n  \"kaufman</w>\": 37188,\n  \"kaur</w>\": 30518,\n  \"kav\": 10228,\n  \"kavan\": 18576,\n  \"kavanaugh</w>\": 20252,\n  \"kaw\": 10842,\n  \"kaw</w>\": 42719,\n  \"kawa</w>\": 33244,\n  \"kawaii</w>\": 26891,\n  \"kawasaki</w>\": 28227,\n  \"kawhi</w>\": 41220,\n  \"kay\": 4673,\n  \"kay</w>\": 9862,\n  \"kaya</w>\": 22752,\n  \"kayak</w>\": 27043,\n  \"kayaking</w>\": 28977,\n  \"kaye</w>\": 33003,\n  \"kayla</w>\": 17139,\n  \"kaylee</w>\": 47215,\n  \"kayo</w>\": 37021,\n  \"kaz\": 8812,\n  \"kaz</w>\": 39622,\n  \"kazakh\": 25451,\n  \"kazakhstan</w>\": 26720,\n  \"kazan</w>\": 47641,\n  \"kb\": 27381,\n  \"kb</w>\": 19960,\n  \"kbs</w>\": 27418,\n  \"kc\": 10869,\n  \"kc</w>\": 8638,\n  \"kca</w>\": 14347,\n  \"kcon</w>\": 39970,\n  \"kcr\": 46181,\n  \"kd\": 21826,\n  \"kd</w>\": 15597,\n  \"kday</w>\": 31074,\n  \"kdrama</w>\": 48628,\n  \"ke\": 643,\n  \"ke</w>\": 618,\n  \"kea</w>\": 47926,\n  \"kean\": 43288,\n  \"keane</w>\": 28635,\n  \"keanu</w>\": 40608,\n  \"kear\": 21562,\n  \"kearney</w>\": 36435,\n  \"keating</w>\": 40045,\n  \"keaton</w>\": 29975,\n  \"kebab</w>\": 36497,\n  \"ked\": 11730,\n  \"ked</w>\": 1243,\n  \"kee\": 9724,\n  \"kee</w>\": 6760,\n  \"keef</w>\": 42323,\n  \"keefe</w>\": 46965,\n  \"keegan</w>\": 31122,\n  \"keel</w>\": 48376,\n  \"keen\": 17714,\n  \"keen</w>\": 13218,\n  \"keenan</w>\": 36276,\n  \"keep\": 2924,\n  \"keep</w>\": 1726,\n  \"keeper</w>\": 7650,\n  \"keepers</w>\": 16130,\n  \"keepin</w>\": 41712,\n  \"keeping\": 38371,\n  \"keeping</w>\": 4873,\n  \"keepit\": 28044,\n  \"keeps</w>\": 6333,\n  \"keer\": 27412,\n  \"keerth\": 47500,\n  \"keerthyofficial</w>\": 48185,\n  \"kees</w>\": 10791,\n  \"keg</w>\": 32785,\n  \"keh\": 41272,\n  \"keh</w>\": 36983,\n  \"kei\": 18735,\n  \"kei</w>\": 24835,\n  \"keith\": 18762,\n  \"keith</w>\": 8252,\n  \"kej\": 15674,\n  \"kejri\": 16617,\n  \"kejriwal</w>\": 17334,\n  \"keke</w>\": 39195,\n  \"kel\": 2825,\n  \"kel</w>\": 7553,\n  \"kele\": 41765,\n  \"kell\": 16082,\n  \"kell</w>\": 40103,\n  \"keller</w>\": 21407,\n  \"kelley</w>\": 23776,\n  \"kelli\": 45852,\n  \"kelli</w>\": 46190,\n  \"kellie</w>\": 49224,\n  \"kellogg</w>\": 44218,\n  \"kelly\": 13417,\n  \"kelly</w>\": 5220,\n  \"kelown\": 31708,\n  \"kelowna</w>\": 32963,\n  \"kelsey\": 42295,\n  \"kelsey</w>\": 23018,\n  \"kelvin</w>\": 32859,\n  \"kem\": 31013,\n  \"kem</w>\": 17349,\n  \"kemp\": 18302,\n  \"kemp</w>\": 25325,\n  \"ken\": 1838,\n  \"ken</w>\": 1702,\n  \"kend\": 7497,\n  \"kendal</w>\": 44836,\n  \"kendall\": 34607,\n  \"kendall</w>\": 16238,\n  \"kendra</w>\": 36074,\n  \"kendrick\": 41787,\n  \"kendrick</w>\": 21953,\n  \"kendricklamar</w>\": 47020,\n  \"kenne\": 6209,\n  \"kennedy\": 38631,\n  \"kennedy</w>\": 9004,\n  \"kennel</w>\": 39595,\n  \"kenneth\": 46900,\n  \"kenneth</w>\": 17839,\n  \"kenney</w>\": 41373,\n  \"kenny\": 20185,\n  \"kenny</w>\": 9595,\n  \"kens</w>\": 29765,\n  \"kensing\": 21505,\n  \"kensington</w>\": 24988,\n  \"kent\": 13875,\n  \"kent</w>\": 8214,\n  \"kentu\": 9045,\n  \"kentucky\": 32230,\n  \"kentucky</w>\": 10014,\n  \"keny\": 17374,\n  \"kenya</w>\": 6181,\n  \"kenyan</w>\": 22624,\n  \"kenyans</w>\": 36263,\n  \"kenyatta</w>\": 31012,\n  \"kenzie</w>\": 38087,\n  \"keo\": 43062,\n  \"kept</w>\": 7737,\n  \"ker\": 2352,\n  \"ker</w>\": 1485,\n  \"keral\": 35122,\n  \"kerala</w>\": 11881,\n  \"kered</w>\": 26690,\n  \"kerel</w>\": 32232,\n  \"keri</w>\": 43447,\n  \"kermit</w>\": 40908,\n  \"kern</w>\": 40150,\n  \"kernel</w>\": 40684,\n  \"kerr</w>\": 20491,\n  \"kerri\": 41849,\n  \"kerry\": 24795,\n  \"kerry</w>\": 13097,\n  \"kers\": 30347,\n  \"kers</w>\": 2880,\n  \"kershaw</w>\": 40785,\n  \"kerson</w>\": 42810,\n  \"kerswednesday</w>\": 48152,\n  \"kert</w>\": 47279,\n  \"kes\": 38398,\n  \"kes</w>\": 1115,\n  \"kesh</w>\": 19751,\n  \"kesha</w>\": 36526,\n  \"kest</w>\": 15080,\n  \"ket\": 2715,\n  \"ket</w>\": 1236,\n  \"ketball</w>\": 38240,\n  \"ketch\": 22590,\n  \"ketch</w>\": 35371,\n  \"ketchup</w>\": 26724,\n  \"kete\": 25404,\n  \"keted</w>\": 41396,\n  \"keting</w>\": 15951,\n  \"keto\": 27485,\n  \"keto</w>\": 28754,\n  \"kets</w>\": 1632,\n  \"kett\": 23124,\n  \"kett</w>\": 10312,\n  \"kettering</w>\": 43779,\n  \"kettle\": 41992,\n  \"kettle</w>\": 24303,\n  \"kev\": 22758,\n  \"kev</w>\": 29419,\n  \"kevin\": 9419,\n  \"kevin</w>\": 4685,\n  \"kew\": 38014,\n  \"kew</w>\": 31409,\n  \"kex\": 30251,\n  \"key\": 2891,\n  \"key</w>\": 1458,\n  \"keyan</w>\": 27617,\n  \"keyboard</w>\": 13017,\n  \"keyboards</w>\": 49237,\n  \"keychain</w>\": 31050,\n  \"keye\": 40516,\n  \"keye</w>\": 20635,\n  \"keyes</w>\": 18336,\n  \"keynes</w>\": 32462,\n  \"keynote</w>\": 7556,\n  \"keys\": 48912,\n  \"keys</w>\": 6355,\n  \"keystone</w>\": 30688,\n  \"keyword</w>\": 42284,\n  \"keywords</w>\": 48122,\n  \"kf\": 33308,\n  \"kf</w>\": 42119,\n  \"kfc</w>\": 22032,\n  \"kg\": 36772,\n  \"kg</w>\": 7817,\n  \"kgs</w>\": 46629,\n  \"kh\": 2166,\n  \"kh</w>\": 7452,\n  \"kha\": 7333,\n  \"kha</w>\": 18929,\n  \"khair\": 43742,\n  \"khaki</w>\": 41646,\n  \"khal\": 13070,\n  \"khaled</w>\": 29343,\n  \"khali\": 11324,\n  \"khalid</w>\": 27166,\n  \"khalifa</w>\": 21389,\n  \"khalil</w>\": 36229,\n  \"kham\": 24892,\n  \"khan\": 13318,\n  \"khan</w>\": 3873,\n  \"khand\": 43384,\n  \"khand</w>\": 31110,\n  \"khanna</w>\": 29931,\n  \"khar\": 18340,\n  \"khar</w>\": 28578,\n  \"khart</w>\": 37458,\n  \"khat\": 43290,\n  \"khe\": 26360,\n  \"kher</w>\": 43843,\n  \"khi\": 39062,\n  \"khi</w>\": 42925,\n  \"khil\": 34101,\n  \"khloe</w>\": 45312,\n  \"kho\": 14022,\n  \"kho</w>\": 28774,\n  \"khou</w>\": 30656,\n  \"khs</w>\": 21239,\n  \"khtar</w>\": 45593,\n  \"khu\": 14041,\n  \"khur\": 32083,\n  \"khy\": 40917,\n  \"khz</w>\": 45604,\n  \"ki\": 848,\n  \"ki</w>\": 2608,\n  \"kia</w>\": 8712,\n  \"kian\": 43961,\n  \"kian</w>\": 25708,\n  \"kians</w>\": 44010,\n  \"kib\": 43108,\n  \"kiba\": 37207,\n  \"kic\": 24003,\n  \"kic</w>\": 27633,\n  \"kicchasu\": 44665,\n  \"kicchasudeep</w>\": 45560,\n  \"kick\": 4102,\n  \"kick</w>\": 4289,\n  \"kickass</w>\": 39299,\n  \"kickboxing</w>\": 36041,\n  \"kicked</w>\": 12479,\n  \"kicker</w>\": 26338,\n  \"kickin</w>\": 34597,\n  \"kicking</w>\": 7802,\n  \"kickoff</w>\": 10245,\n  \"kicks</w>\": 6989,\n  \"kickstart</w>\": 40780,\n  \"kickstarter</w>\": 13228,\n  \"kid\": 3948,\n  \"kid</w>\": 3551,\n  \"kidd</w>\": 24082,\n  \"kidding</w>\": 14535,\n  \"kiddo</w>\": 36360,\n  \"kiddos</w>\": 29205,\n  \"kidlit\": 39064,\n  \"kidlit</w>\": 33515,\n  \"kidlitart</w>\": 41600,\n  \"kidman</w>\": 44931,\n  \"kidnap</w>\": 45100,\n  \"kidnapp\": 16183,\n  \"kidnapped</w>\": 24737,\n  \"kidnapping</w>\": 32361,\n  \"kidney\": 37835,\n  \"kidney</w>\": 14610,\n  \"kids\": 15561,\n  \"kids</w>\": 1911,\n  \"kidz</w>\": 41938,\n  \"kie\": 8544,\n  \"kie</w>\": 3094,\n  \"kiefer</w>\": 48026,\n  \"kiel\": 40940,\n  \"kiel</w>\": 25509,\n  \"kien</w>\": 28782,\n  \"kier\": 20403,\n  \"kier</w>\": 35575,\n  \"kieran</w>\": 29231,\n  \"kies\": 36601,\n  \"kies</w>\": 4993,\n  \"kiest</w>\": 29755,\n  \"kiev</w>\": 24585,\n  \"kiewicz</w>\": 47574,\n  \"kigali</w>\": 40278,\n  \"kii</w>\": 39340,\n  \"kik</w>\": 36176,\n  \"kiki</w>\": 23962,\n  \"kiko</w>\": 40861,\n  \"kil\": 4912,\n  \"kil</w>\": 39337,\n  \"kildare</w>\": 45541,\n  \"kili\": 24386,\n  \"kilig</w>\": 49172,\n  \"kilimanjaro</w>\": 43470,\n  \"kilkenny</w>\": 33805,\n  \"kill\": 6163,\n  \"kill</w>\": 4367,\n  \"killa</w>\": 41355,\n  \"killarney</w>\": 48813,\n  \"killed</w>\": 3733,\n  \"killer\": 28230,\n  \"killer</w>\": 6613,\n  \"killers</w>\": 17614,\n  \"killin</w>\": 25903,\n  \"killing\": 37977,\n  \"killing</w>\": 5923,\n  \"killings</w>\": 24918,\n  \"kills</w>\": 9795,\n  \"kiln</w>\": 44150,\n  \"kilo\": 39281,\n  \"kilom\": 26285,\n  \"kilometers</w>\": 39192,\n  \"kilometres</w>\": 43278,\n  \"kilt</w>\": 49319,\n  \"kim\": 4639,\n  \"kim</w>\": 4606,\n  \"kimber\": 16796,\n  \"kimberley</w>\": 39859,\n  \"kimberly</w>\": 27465,\n  \"kimchi</w>\": 41027,\n  \"kimi</w>\": 31536,\n  \"kimkardashian</w>\": 35400,\n  \"kimmel</w>\": 27820,\n  \"kimono</w>\": 40024,\n  \"kin\": 1442,\n  \"kin</w>\": 2667,\n  \"kina</w>\": 28518,\n  \"kind\": 7204,\n  \"kind</w>\": 3044,\n  \"kinda</w>\": 6612,\n  \"kinder\": 12711,\n  \"kinder</w>\": 24159,\n  \"kindergarten</w>\": 16749,\n  \"kindle\": 24704,\n  \"kindle</w>\": 10746,\n  \"kindleunlimited</w>\": 32164,\n  \"kindly</w>\": 13952,\n  \"kindness\": 45112,\n  \"kindness</w>\": 10614,\n  \"kinds</w>\": 14879,\n  \"kine\": 17607,\n  \"kineni</w>\": 49080,\n  \"kinetic</w>\": 37699,\n  \"king\": 2365,\n  \"king</w>\": 674,\n  \"kingdom\": 21870,\n  \"kingdom</w>\": 7364,\n  \"kingdomhearts</w>\": 48570,\n  \"kingdoms</w>\": 43890,\n  \"kingfisher</w>\": 34330,\n  \"kingjames</w>\": 33153,\n  \"kingly</w>\": 33642,\n  \"kingof\": 27878,\n  \"kings\": 18590,\n  \"kings</w>\": 4232,\n  \"kingsley</w>\": 41807,\n  \"kingston\": 40736,\n  \"kingston</w>\": 15393,\n  \"kini</w>\": 41644,\n  \"kinky</w>\": 37006,\n  \"kinney</w>\": 37233,\n  \"kino</w>\": 39000,\n  \"kins\": 31060,\n  \"kins</w>\": 4386,\n  \"kinson</w>\": 12095,\n  \"kio\": 28210,\n  \"kio</w>\": 39401,\n  \"kiosk</w>\": 39146,\n  \"kip\": 27636,\n  \"kip</w>\": 15986,\n  \"kipp\": 43329,\n  \"kir\": 3476,\n  \"kir</w>\": 32949,\n  \"kira</w>\": 33038,\n  \"kiran\": 43234,\n  \"kiran</w>\": 36603,\n  \"kirby</w>\": 17065,\n  \"kiri\": 34170,\n  \"kiri</w>\": 45826,\n  \"kirk\": 10639,\n  \"kirk</w>\": 11508,\n  \"kirkland</w>\": 43061,\n  \"kiro</w>\": 39749,\n  \"kirstel</w>\": 46483,\n  \"kirsten</w>\": 31813,\n  \"kirsty</w>\": 37787,\n  \"kis\": 3199,\n  \"kis</w>\": 22796,\n  \"kish\": 25662,\n  \"kiss\": 43757,\n  \"kiss</w>\": 5946,\n  \"kissed</w>\": 22561,\n  \"kisses\": 47876,\n  \"kisses</w>\": 11220,\n  \"kissing</w>\": 18637,\n  \"kistan</w>\": 29580,\n  \"kit\": 4566,\n  \"kit</w>\": 4274,\n  \"kita</w>\": 29961,\n  \"kitch\": 3850,\n  \"kitchen\": 18131,\n  \"kitchen</w>\": 4485,\n  \"kitchener</w>\": 34428,\n  \"kitchens</w>\": 28301,\n  \"kite\": 47777,\n  \"kite</w>\": 19867,\n  \"kites</w>\": 45829,\n  \"kits</w>\": 13730,\n  \"kitt\": 10840,\n  \"kitten</w>\": 13063,\n  \"kittens</w>\": 17216,\n  \"kitties</w>\": 36013,\n  \"kitty\": 25067,\n  \"kitty</w>\": 8417,\n  \"kiwan\": 38709,\n  \"kiwanis</w>\": 46513,\n  \"kiwi</w>\": 22440,\n  \"kiwis</w>\": 48108,\n  \"kiya</w>\": 41610,\n  \"kj\": 27385,\n  \"kj</w>\": 28238,\n  \"kja\": 41048,\n  \"kjv</w>\": 37387,\n  \"kk\": 4390,\n  \"kk</w>\": 10849,\n  \"kka</w>\": 19002,\n  \"kke</w>\": 44239,\n  \"kker</w>\": 32399,\n  \"kki</w>\": 44672,\n  \"kkk</w>\": 20073,\n  \"kkkk\": 15834,\n  \"kkkk</w>\": 47160,\n  \"kkkkkkkk\": 31042,\n  \"kko</w>\": 43965,\n  \"kkr</w>\": 40855,\n  \"kl\": 8498,\n  \"kl</w>\": 14134,\n  \"kla\": 11249,\n  \"klan</w>\": 46935,\n  \"klar\": 41374,\n  \"klaus</w>\": 31788,\n  \"kle\": 7612,\n  \"kle</w>\": 7432,\n  \"klein\": 33475,\n  \"klein</w>\": 17579,\n  \"kley</w>\": 18594,\n  \"kli\": 31640,\n  \"klin\": 44809,\n  \"klin</w>\": 41647,\n  \"kline</w>\": 47580,\n  \"kling\": 40270,\n  \"klm</w>\": 38859,\n  \"klo\": 15296,\n  \"klopp</w>\": 26446,\n  \"kltu</w>\": 25978,\n  \"klu\": 21852,\n  \"kly</w>\": 45090,\n  \"km\": 29954,\n  \"km</w>\": 4590,\n  \"kman</w>\": 33312,\n  \"kms</w>\": 24996,\n  \"kn\": 4825,\n  \"kn</w>\": 23693,\n  \"knapp</w>\": 33945,\n  \"kne\": 6358,\n  \"knee</w>\": 9897,\n  \"knees</w>\": 19115,\n  \"kner</w>\": 31578,\n  \"knew</w>\": 5009,\n  \"kni\": 6312,\n  \"knick\": 33286,\n  \"knicks</w>\": 17657,\n  \"knife\": 44176,\n  \"knife</w>\": 8960,\n  \"knigh\": 43099,\n  \"knight\": 17949,\n  \"knight</w>\": 7355,\n  \"knights</w>\": 10385,\n  \"knit\": 18745,\n  \"knit</w>\": 14313,\n  \"knitted</w>\": 28151,\n  \"knitting</w>\": 18863,\n  \"knives</w>\": 20910,\n  \"kno\": 1482,\n  \"kno</w>\": 25362,\n  \"knob</w>\": 29736,\n  \"knobs</w>\": 47504,\n  \"knock\": 14195,\n  \"knock</w>\": 11583,\n  \"knocked</w>\": 15325,\n  \"knocking</w>\": 20380,\n  \"knockout</w>\": 22602,\n  \"knocks</w>\": 24296,\n  \"knoll</w>\": 43882,\n  \"knot</w>\": 18412,\n  \"knots</w>\": 32428,\n  \"know\": 4179,\n  \"know</w>\": 1038,\n  \"knowing</w>\": 9267,\n  \"knowledge\": 27864,\n  \"knowledge</w>\": 5510,\n  \"knowledgeable</w>\": 43391,\n  \"knowles</w>\": 32631,\n  \"known</w>\": 3102,\n  \"knows</w>\": 4309,\n  \"knowyour\": 30773,\n  \"knox\": 18630,\n  \"knox</w>\": 21833,\n  \"knoxville</w>\": 23232,\n  \"knu\": 14812,\n  \"knuck\": 21333,\n  \"knuckle</w>\": 42023,\n  \"knuckles</w>\": 40127,\n  \"knw</w>\": 40803,\n  \"ko\": 1313,\n  \"ko</w>\": 2448,\n  \"koala</w>\": 36654,\n  \"kobe\": 42644,\n  \"kobe</w>\": 14470,\n  \"kobo</w>\": 42390,\n  \"koch</w>\": 25331,\n  \"kochi</w>\": 36710,\n  \"kodak</w>\": 30425,\n  \"kodi\": 46611,\n  \"kof\": 17528,\n  \"koff</w>\": 47303,\n  \"kofi</w>\": 40400,\n  \"koh\": 13379,\n  \"koh</w>\": 31216,\n  \"kohl</w>\": 48479,\n  \"kohli</w>\": 17549,\n  \"koi</w>\": 28150,\n  \"kojima</w>\": 46419,\n  \"kok\": 32045,\n  \"kok</w>\": 11225,\n  \"koko\": 42426,\n  \"koko</w>\": 40003,\n  \"kol\": 7142,\n  \"kol</w>\": 31023,\n  \"kolkata</w>\": 18011,\n  \"kom\": 6686,\n  \"kom</w>\": 24181,\n  \"kombat</w>\": 29670,\n  \"kombucha</w>\": 48615,\n  \"komo</w>\": 31820,\n  \"kon\": 5743,\n  \"kon</w>\": 29519,\n  \"kona</w>\": 30203,\n  \"kong\": 31784,\n  \"kong</w>\": 6506,\n  \"konstant\": 46583,\n  \"koo\": 12225,\n  \"koo</w>\": 40472,\n  \"kook</w>\": 16003,\n  \"kool\": 36755,\n  \"kool</w>\": 26444,\n  \"kop\": 16623,\n  \"kop</w>\": 38999,\n  \"kor\": 6428,\n  \"kor</w>\": 24175,\n  \"kore\": 3919,\n  \"korea</w>\": 5915,\n  \"korean\": 31949,\n  \"korean</w>\": 8034,\n  \"kori</w>\": 42842,\n  \"korn\": 45412,\n  \"korn</w>\": 31492,\n  \"kors</w>\": 34535,\n  \"kos\": 47438,\n  \"kos</w>\": 22951,\n  \"kosh</w>\": 45233,\n  \"kosher</w>\": 36502,\n  \"koso\": 23892,\n  \"kosovo</w>\": 28343,\n  \"kot\": 23323,\n  \"kot</w>\": 20701,\n  \"kota</w>\": 21735,\n  \"koto\": 40945,\n  \"koto</w>\": 29977,\n  \"kou\": 18502,\n  \"kou</w>\": 39614,\n  \"kour\": 34134,\n  \"kov\": 17733,\n  \"kov</w>\": 15156,\n  \"kova</w>\": 26185,\n  \"koval\": 47903,\n  \"kovic</w>\": 16886,\n  \"kovich</w>\": 44794,\n  \"kovsky</w>\": 33384,\n  \"kow\": 29764,\n  \"kow</w>\": 23919,\n  \"kowski</w>\": 17649,\n  \"koz\": 29598,\n  \"kp\": 16174,\n  \"kp</w>\": 16894,\n  \"kpa</w>\": 38759,\n  \"kph</w>\": 41138,\n  \"kpk</w>\": 42094,\n  \"kpmg</w>\": 38243,\n  \"kpop\": 29534,\n  \"kpop</w>\": 15859,\n  \"kprc</w>\": 47832,\n  \"kprs</w>\": 46253,\n  \"kr\": 7309,\n  \"kr</w>\": 14107,\n  \"kra\": 5762,\n  \"kraft</w>\": 28057,\n  \"kraja</w>\": 29016,\n  \"kraken</w>\": 48408,\n  \"krakow</w>\": 40033,\n  \"kram\": 19075,\n  \"kramer</w>\": 27495,\n  \"kran\": 33243,\n  \"kranti</w>\": 47969,\n  \"krat\": 30470,\n  \"kre\": 8362,\n  \"kreme</w>\": 43140,\n  \"kremlin</w>\": 33979,\n  \"kri\": 3679,\n  \"kris\": 35251,\n  \"kris</w>\": 12261,\n  \"krish\": 11487,\n  \"krishna</w>\": 15863,\n  \"krishnan</w>\": 46535,\n  \"krispy</w>\": 49292,\n  \"krist\": 16490,\n  \"kristen\": 28881,\n  \"kristen</w>\": 16644,\n  \"kristi\": 26895,\n  \"kristin\": 35408,\n  \"kristin</w>\": 26785,\n  \"kristina</w>\": 33180,\n  \"krit\": 36265,\n  \"kro\": 16193,\n  \"kroger</w>\": 36344,\n  \"kron\": 25999,\n  \"kru\": 10609,\n  \"kruger</w>\": 32948,\n  \"krun\": 43084,\n  \"kry\": 13995,\n  \"krystal</w>\": 36554,\n  \"ks\": 10470,\n  \"ks</w>\": 662,\n  \"ksa</w>\": 25439,\n  \"ksh</w>\": 36594,\n  \"kst</w>\": 17420,\n  \"kstate\": 48590,\n  \"ksu</w>\": 43496,\n  \"kswx</w>\": 36180,\n  \"kt\": 17238,\n  \"kt</w>\": 7792,\n  \"ktm</w>\": 33989,\n  \"ktn\": 42170,\n  \"kton</w>\": 37848,\n  \"kts</w>\": 48577,\n  \"ktv\": 36444,\n  \"ku\": 1836,\n  \"ku</w>\": 4827,\n  \"kuala</w>\": 30336,\n  \"kubball</w>\": 48995,\n  \"kuber\": 41336,\n  \"kubernetes</w>\": 45144,\n  \"kubrick</w>\": 37032,\n  \"kuch</w>\": 39394,\n  \"kud\": 40818,\n  \"kudos</w>\": 14481,\n  \"kul\": 11325,\n  \"kul</w>\": 31514,\n  \"kum\": 18086,\n  \"kum</w>\": 28148,\n  \"kuma\": 43139,\n  \"kuma</w>\": 33920,\n  \"kumar\": 22329,\n  \"kumar</w>\": 7674,\n  \"kumb\": 31391,\n  \"kun\": 6849,\n  \"kun</w>\": 21842,\n  \"kung\": 39656,\n  \"kung</w>\": 22347,\n  \"kunst</w>\": 37881,\n  \"kup\": 39023,\n  \"kups</w>\": 27240,\n  \"kur\": 4862,\n  \"kurdi\": 23504,\n  \"kurdish</w>\": 21644,\n  \"kurdistan</w>\": 24459,\n  \"kurds</w>\": 20888,\n  \"kuri\": 46375,\n  \"kuro\": 28239,\n  \"kuro</w>\": 47826,\n  \"kurt\": 31903,\n  \"kurt</w>\": 14527,\n  \"kus\": 27618,\n  \"kus</w>\": 27505,\n  \"kush\": 22264,\n  \"kush</w>\": 24594,\n  \"kushner</w>\": 36716,\n  \"kut\": 17283,\n  \"kut</w>\": 36965,\n  \"kuwait</w>\": 19679,\n  \"kuya</w>\": 34815,\n  \"kuz\": 33253,\n  \"kv\": 27594,\n  \"kv</w>\": 34249,\n  \"kw\": 10072,\n  \"kw</w>\": 18339,\n  \"kwa\": 32784,\n  \"kwa</w>\": 48576,\n  \"kwame</w>\": 46681,\n  \"kwan\": 37100,\n  \"kwan</w>\": 39447,\n  \"kwang</w>\": 40260,\n  \"kwe\": 26050,\n  \"kwi\": 35327,\n  \"kwon</w>\": 36369,\n  \"kx\": 28190,\n  \"kx</w>\": 46442,\n  \"ky\": 2018,\n  \"ky</w>\": 2383,\n  \"kya</w>\": 29142,\n  \"kyc</w>\": 37758,\n  \"kyiv</w>\": 36422,\n  \"kyle\": 15847,\n  \"kyle</w>\": 7539,\n  \"kylie\": 28282,\n  \"kylie</w>\": 17983,\n  \"kyliejenner</w>\": 47232,\n  \"kylo</w>\": 47704,\n  \"kyo\": 13150,\n  \"kyo</w>\": 6281,\n  \"kyoto</w>\": 23223,\n  \"kyr\": 26329,\n  \"kyrgy\": 40013,\n  \"kyrgyz\": 48346,\n  \"kyrie</w>\": 21857,\n  \"kyu\": 28296,\n  \"kyu</w>\": 25490,\n  \"kyuhyun</w>\": 37229,\n  \"kyung</w>\": 41058,\n  \"kyungsoo</w>\": 30280,\n  \"kywx</w>\": 39940,\n  \"kz\": 48743,\n  \"kz</w>\": 36848,\n  \"kzn</w>\": 38264,\n  \"kÃ¶\": 32437,\n  \"l\": 75,\n  \"l</w>\": 331,\n  \"la\": 572,\n  \"la</w>\": 1210,\n  \"laa</w>\": 44642,\n  \"lab\": 3537,\n  \"lab</w>\": 4352,\n  \"labe\": 25749,\n  \"label\": 12235,\n  \"label</w>\": 9093,\n  \"labeled</w>\": 32720,\n  \"labeling</w>\": 36825,\n  \"labelled</w>\": 45188,\n  \"labels</w>\": 17413,\n  \"lable</w>\": 31879,\n  \"labor\": 11201,\n  \"labor</w>\": 7878,\n  \"laboratories</w>\": 43421,\n  \"laboratory</w>\": 17664,\n  \"laborday</w>\": 39324,\n  \"labou\": 32700,\n  \"labour\": 19586,\n  \"labour</w>\": 6019,\n  \"labourdoorstep</w>\": 37008,\n  \"labout\": 35961,\n  \"labra\": 37067,\n  \"labrador</w>\": 25409,\n  \"labs</w>\": 12021,\n  \"laby\": 29131,\n  \"labyrin\": 31782,\n  \"labyrinth</w>\": 35594,\n  \"lac\": 4477,\n  \"lac</w>\": 16189,\n  \"lace\": 30012,\n  \"lace</w>\": 5421,\n  \"laced</w>\": 36800,\n  \"laces</w>\": 23281,\n  \"lacey</w>\": 31754,\n  \"lach\": 30558,\n  \"lack\": 24915,\n  \"lack</w>\": 8069,\n  \"lacking</w>\": 30080,\n  \"lacks</w>\": 34388,\n  \"laco\": 45882,\n  \"lacrosse</w>\": 12915,\n  \"lacy</w>\": 38645,\n  \"lad\": 15991,\n  \"lad</w>\": 10707,\n  \"ladak\": 42312,\n  \"ladakh</w>\": 45295,\n  \"ladder</w>\": 16637,\n  \"ladders</w>\": 47125,\n  \"lade</w>\": 26447,\n  \"laden</w>\": 28634,\n  \"ladi\": 12934,\n  \"ladies\": 28932,\n  \"ladies</w>\": 3431,\n  \"lads</w>\": 9803,\n  \"lady\": 7275,\n  \"lady</w>\": 2909,\n  \"ladybird</w>\": 43389,\n  \"ladybug</w>\": 40038,\n  \"ladygaga</w>\": 21232,\n  \"laf\": 47555,\n  \"lafayette</w>\": 22683,\n  \"lag\": 30932,\n  \"lag</w>\": 20394,\n  \"laga</w>\": 30161,\n  \"lage</w>\": 24369,\n  \"lager\": 36811,\n  \"lager</w>\": 22989,\n  \"lagh\": 37237,\n  \"laghate\": 47565,\n  \"laghateparth</w>\": 48780,\n  \"lagi</w>\": 39786,\n  \"lago\": 42698,\n  \"lago</w>\": 31476,\n  \"lagoon</w>\": 22753,\n  \"lagos</w>\": 12728,\n  \"lagun\": 18500,\n  \"laguna</w>\": 23609,\n  \"lah\": 27315,\n  \"lah</w>\": 4299,\n  \"lahat</w>\": 42164,\n  \"lahore</w>\": 16733,\n  \"lai</w>\": 23947,\n  \"laid\": 42560,\n  \"laid</w>\": 11160,\n  \"lain\": 46958,\n  \"lain</w>\": 17151,\n  \"laine</w>\": 35860,\n  \"lair</w>\": 31981,\n  \"lais</w>\": 34923,\n  \"lak\": 12890,\n  \"lak</w>\": 26793,\n  \"lake\": 6441,\n  \"lake</w>\": 2553,\n  \"lakedistrict</w>\": 26437,\n  \"lakel\": 26133,\n  \"lakeland</w>\": 34306,\n  \"laker\": 45717,\n  \"lakers</w>\": 13570,\n  \"lakes</w>\": 9265,\n  \"lakeshore</w>\": 42595,\n  \"lakeside</w>\": 30915,\n  \"lakewood</w>\": 36417,\n  \"lakh</w>\": 21487,\n  \"lakhs</w>\": 37985,\n  \"lakings</w>\": 34289,\n  \"lakota</w>\": 45510,\n  \"laksh\": 24937,\n  \"lakshmi</w>\": 39682,\n  \"lal\": 12301,\n  \"lal</w>\": 19430,\n  \"lala</w>\": 33661,\n  \"lali\": 21726,\n  \"laliga</w>\": 32383,\n  \"lam\": 2022,\n  \"lam</w>\": 5704,\n  \"lama</w>\": 26049,\n  \"lamar\": 28678,\n  \"lamar</w>\": 17284,\n  \"lamb\": 19863,\n  \"lamb</w>\": 10034,\n  \"lambda</w>\": 36687,\n  \"lambert</w>\": 14574,\n  \"lambeth</w>\": 43410,\n  \"lambo</w>\": 45464,\n  \"lamborgh\": 18709,\n  \"lamborghini</w>\": 19462,\n  \"lambs</w>\": 30361,\n  \"lame</w>\": 23192,\n  \"lamin\": 22337,\n  \"laminated</w>\": 49079,\n  \"lamo\": 41461,\n  \"lamont</w>\": 46719,\n  \"lamp\": 26700,\n  \"lamp</w>\": 10725,\n  \"lampard</w>\": 39989,\n  \"lamps</w>\": 23424,\n  \"lan\": 1193,\n  \"lan</w>\": 4872,\n  \"lana</w>\": 15406,\n  \"lanapar\": 47437,\n  \"lanaparrilla</w>\": 47819,\n  \"lanc\": 11872,\n  \"lanca\": 15694,\n  \"lancashire</w>\": 20939,\n  \"lancaster</w>\": 16446,\n  \"lance\": 26025,\n  \"lance</w>\": 11609,\n  \"lancer</w>\": 38195,\n  \"lancers</w>\": 46392,\n  \"lancia</w>\": 48698,\n  \"lancs</w>\": 47540,\n  \"land\": 1567,\n  \"land</w>\": 973,\n  \"lande</w>\": 36556,\n  \"landed</w>\": 9873,\n  \"lander\": 37247,\n  \"lander</w>\": 9666,\n  \"landers</w>\": 20019,\n  \"landfall</w>\": 38465,\n  \"landfill</w>\": 34947,\n  \"landia</w>\": 41384,\n  \"landing</w>\": 8292,\n  \"landings</w>\": 46104,\n  \"landlord</w>\": 28938,\n  \"landlords</w>\": 35283,\n  \"landmark</w>\": 15208,\n  \"landmarks</w>\": 30393,\n  \"lando\": 25463,\n  \"lando</w>\": 7065,\n  \"landon</w>\": 32748,\n  \"landrover</w>\": 38125,\n  \"landry</w>\": 36137,\n  \"lands\": 40223,\n  \"lands</w>\": 2961,\n  \"landsc\": 4384,\n  \"landscape\": 21123,\n  \"landscape</w>\": 5727,\n  \"landscapephotography</w>\": 28125,\n  \"landscapes</w>\": 15344,\n  \"landscaping</w>\": 25642,\n  \"landslide</w>\": 31954,\n  \"lane\": 25534,\n  \"lane</w>\": 3980,\n  \"lanes</w>\": 10345,\n  \"laney</w>\": 38552,\n  \"lang\": 7969,\n  \"lang</w>\": 8578,\n  \"lange</w>\": 32021,\n  \"langford</w>\": 45615,\n  \"langley</w>\": 28595,\n  \"langu\": 4095,\n  \"language\": 46103,\n  \"language</w>\": 4781,\n  \"languages</w>\": 13527,\n  \"lani</w>\": 22964,\n  \"lanka</w>\": 16221,\n  \"lankan</w>\": 40531,\n  \"lannister</w>\": 49056,\n  \"lans\": 43550,\n  \"lansing</w>\": 30805,\n  \"lant</w>\": 44504,\n  \"lanta</w>\": 44768,\n  \"lantern</w>\": 17185,\n  \"lanterns</w>\": 33676,\n  \"lantic\": 32601,\n  \"lantic</w>\": 27678,\n  \"lants</w>\": 38425,\n  \"lanyard</w>\": 46808,\n  \"lao\": 32475,\n  \"lao</w>\": 29521,\n  \"laos</w>\": 34353,\n  \"lap\": 7213,\n  \"lap</w>\": 8639,\n  \"lapd</w>\": 32557,\n  \"lapel</w>\": 47961,\n  \"lapland</w>\": 43633,\n  \"laps</w>\": 18711,\n  \"lapse</w>\": 33365,\n  \"laptop</w>\": 10464,\n  \"laptops</w>\": 32189,\n  \"laq</w>\": 45026,\n  \"lar\": 1592,\n  \"lar</w>\": 1652,\n  \"lara</w>\": 19435,\n  \"lard</w>\": 40347,\n  \"lare\": 22415,\n  \"laredo</w>\": 48427,\n  \"large\": 40234,\n  \"large</w>\": 3638,\n  \"largely</w>\": 21418,\n  \"larger</w>\": 12567,\n  \"largest</w>\": 4960,\n  \"largo</w>\": 44161,\n  \"lari\": 34676,\n  \"lark\": 43164,\n  \"lark</w>\": 23536,\n  \"larkin</w>\": 34769,\n  \"larry\": 18642,\n  \"larry</w>\": 8242,\n  \"lars</w>\": 8669,\n  \"larsen</w>\": 39721,\n  \"larson</w>\": 27973,\n  \"larvae</w>\": 44840,\n  \"las\": 8295,\n  \"las</w>\": 2552,\n  \"lasag\": 31210,\n  \"lasagna</w>\": 40683,\n  \"lasalle</w>\": 43866,\n  \"laser\": 25607,\n  \"laser</w>\": 9885,\n  \"lasers</w>\": 37060,\n  \"lash\": 31995,\n  \"lash</w>\": 18480,\n  \"lashes</w>\": 21015,\n  \"lass\": 24203,\n  \"lass</w>\": 18263,\n  \"lassic</w>\": 39430,\n  \"last\": 10600,\n  \"last</w>\": 952,\n  \"lasted</w>\": 25711,\n  \"lasting</w>\": 13434,\n  \"lastnight</w>\": 30159,\n  \"lasts</w>\": 20141,\n  \"lasvegas</w>\": 17789,\n  \"lat\": 1591,\n  \"lat</w>\": 28437,\n  \"lata</w>\": 47114,\n  \"latam</w>\": 40012,\n  \"late\": 13267,\n  \"late</w>\": 2325,\n  \"latel\": 49035,\n  \"lately</w>\": 11824,\n  \"latepost</w>\": 48328,\n  \"later\": 24109,\n  \"later</w>\": 2941,\n  \"lateral</w>\": 26646,\n  \"latest\": 46805,\n  \"latest</w>\": 2053,\n  \"latex</w>\": 27520,\n  \"lati\": 16357,\n  \"latimes</w>\": 43356,\n  \"latin\": 16695,\n  \"latin</w>\": 9888,\n  \"latina</w>\": 27936,\n  \"latino\": 45734,\n  \"latino</w>\": 19470,\n  \"latinos</w>\": 40233,\n  \"lation</w>\": 6191,\n  \"latitude</w>\": 37392,\n  \"lative</w>\": 15719,\n  \"lator</w>\": 9291,\n  \"lators</w>\": 28278,\n  \"latt\": 33561,\n  \"latte</w>\": 17697,\n  \"latter</w>\": 26198,\n  \"latvia</w>\": 30034,\n  \"lau\": 1853,\n  \"lau</w>\": 23090,\n  \"lauderdale</w>\": 24352,\n  \"laugh\": 4969,\n  \"laugh</w>\": 6332,\n  \"laughed</w>\": 16746,\n  \"laughing</w>\": 8301,\n  \"laughs</w>\": 14322,\n  \"laughter</w>\": 10722,\n  \"laun\": 2944,\n  \"launch\": 31168,\n  \"launch</w>\": 2904,\n  \"launched</w>\": 6125,\n  \"launcher</w>\": 35782,\n  \"launches</w>\": 7023,\n  \"launching</w>\": 8565,\n  \"laundering</w>\": 34079,\n  \"laundry</w>\": 14797,\n  \"laur\": 15256,\n  \"laura\": 17091,\n  \"laura</w>\": 7763,\n  \"laure\": 16932,\n  \"laureate</w>\": 25675,\n  \"laurel\": 43370,\n  \"laurel</w>\": 19942,\n  \"lauren\": 10456,\n  \"lauren</w>\": 7634,\n  \"laurence</w>\": 29353,\n  \"laurent</w>\": 23226,\n  \"laurie</w>\": 20326,\n  \"laus\": 38895,\n  \"laus</w>\": 28111,\n  \"lause</w>\": 22269,\n  \"laut\": 47688,\n  \"lav\": 13767,\n  \"lav</w>\": 26919,\n  \"lava</w>\": 16765,\n  \"laven\": 15047,\n  \"lavender</w>\": 16033,\n  \"laver\": 28188,\n  \"lavish</w>\": 35443,\n  \"law\": 2874,\n  \"law</w>\": 2606,\n  \"lawful</w>\": 33845,\n  \"lawler</w>\": 47862,\n  \"lawless</w>\": 39468,\n  \"lawmaker</w>\": 37169,\n  \"lawmakers</w>\": 21190,\n  \"lawn\": 31675,\n  \"lawn</w>\": 11024,\n  \"lawrence\": 32221,\n  \"lawrence</w>\": 8820,\n  \"laws</w>\": 7306,\n  \"lawson</w>\": 22152,\n  \"lawsuit</w>\": 14346,\n  \"lawsuits</w>\": 44331,\n  \"lawyer</w>\": 10552,\n  \"lawyers</w>\": 14232,\n  \"lax\": 17750,\n  \"lax</w>\": 10024,\n  \"lay\": 7205,\n  \"lay</w>\": 6360,\n  \"laye\": 25995,\n  \"layer</w>\": 12411,\n  \"layered</w>\": 28520,\n  \"layers</w>\": 15900,\n  \"laying</w>\": 12333,\n  \"layla</w>\": 45050,\n  \"layne</w>\": 48721,\n  \"layo\": 21738,\n  \"layoffs</w>\": 29019,\n  \"layout</w>\": 17314,\n  \"lays</w>\": 19546,\n  \"layton</w>\": 38061,\n  \"laz\": 18806,\n  \"lazar\": 33075,\n  \"lazarus</w>\": 49126,\n  \"laze</w>\": 41559,\n  \"lazer</w>\": 43735,\n  \"lazio</w>\": 33010,\n  \"lazy\": 32614,\n  \"lazy</w>\": 10753,\n  \"lb\": 21958,\n  \"lb</w>\": 7422,\n  \"lbc</w>\": 37694,\n  \"lbj</w>\": 45683,\n  \"lbloggers</w>\": 48695,\n  \"lbs</w>\": 8912,\n  \"lc\": 9584,\n  \"lc</w>\": 7225,\n  \"lcd</w>\": 21356,\n  \"lcfc</w>\": 25339,\n  \"lcs</w>\": 32279,\n  \"ld\": 1431,\n  \"ld</w>\": 730,\n  \"lder</w>\": 6945,\n  \"lders</w>\": 43221,\n  \"ldn\": 37050,\n  \"ldn</w>\": 2517,\n  \"ldnont</w>\": 25827,\n  \"ldnt</w>\": 21690,\n  \"ldr</w>\": 37279,\n  \"lds</w>\": 31235,\n  \"le\": 534,\n  \"le</w>\": 579,\n  \"lea\": 2246,\n  \"lea</w>\": 13324,\n  \"leach</w>\": 35527,\n  \"lead\": 1328,\n  \"lead</w>\": 2784,\n  \"leader\": 14806,\n  \"leader</w>\": 3236,\n  \"leaderboard</w>\": 34519,\n  \"leaders</w>\": 3546,\n  \"leadership\": 36876,\n  \"leadership</w>\": 3652,\n  \"leading</w>\": 3833,\n  \"leads</w>\": 5335,\n  \"leaf\": 9377,\n  \"leaf</w>\": 7232,\n  \"leaflet</w>\": 38289,\n  \"leaflets</w>\": 39014,\n  \"leafs</w>\": 16688,\n  \"leafy</w>\": 42616,\n  \"leagu\": 13317,\n  \"league\": 16635,\n  \"league</w>\": 2313,\n  \"leagueof\": 26022,\n  \"leagueoflegends</w>\": 31737,\n  \"leagues</w>\": 19888,\n  \"leah\": 24350,\n  \"leah</w>\": 19308,\n  \"leak\": 42900,\n  \"leak</w>\": 15489,\n  \"leaked</w>\": 14353,\n  \"leaking</w>\": 34097,\n  \"leaks</w>\": 15657,\n  \"leam\": 39606,\n  \"lean\": 12447,\n  \"lean</w>\": 8208,\n  \"leaning</w>\": 24411,\n  \"leanne</w>\": 41448,\n  \"leans</w>\": 9357,\n  \"leap\": 29129,\n  \"leap</w>\": 15392,\n  \"leaps</w>\": 48080,\n  \"lear\": 1146,\n  \"lear</w>\": 27663,\n  \"learn\": 16959,\n  \"learn</w>\": 1768,\n  \"learned</w>\": 6048,\n  \"learnenglish</w>\": 49040,\n  \"learner</w>\": 33547,\n  \"learners</w>\": 19572,\n  \"learning\": 22632,\n  \"learning</w>\": 2378,\n  \"learns</w>\": 17569,\n  \"learnt</w>\": 18959,\n  \"leary</w>\": 36051,\n  \"lease\": 49041,\n  \"lease</w>\": 14394,\n  \"leased</w>\": 48352,\n  \"leash</w>\": 36192,\n  \"leasing</w>\": 29160,\n  \"least</w>\": 3651,\n  \"leather\": 21417,\n  \"leather</w>\": 5862,\n  \"leau</w>\": 26498,\n  \"leav\": 3198,\n  \"leave\": 37512,\n  \"leave</w>\": 3258,\n  \"leaves</w>\": 5579,\n  \"leaving</w>\": 5216,\n  \"leban\": 9360,\n  \"lebanese</w>\": 23819,\n  \"lebanon</w>\": 11695,\n  \"leblanc</w>\": 46381,\n  \"lebo\": 44184,\n  \"lebron</w>\": 11971,\n  \"lebu\": 47030,\n  \"lec\": 944,\n  \"lec</w>\": 35374,\n  \"leche</w>\": 46197,\n  \"lect</w>\": 45392,\n  \"lection</w>\": 18252,\n  \"lections</w>\": 30995,\n  \"lecture</w>\": 6617,\n  \"lecturer</w>\": 23795,\n  \"lectures</w>\": 21118,\n  \"led\": 8767,\n  \"led</w>\": 912,\n  \"ledge\": 23647,\n  \"ledge</w>\": 4815,\n  \"ledger</w>\": 26817,\n  \"leds</w>\": 36763,\n  \"lee\": 6224,\n  \"lee</w>\": 2592,\n  \"leed\": 16483,\n  \"leed</w>\": 40206,\n  \"leeds\": 38900,\n  \"leeds</w>\": 7420,\n  \"leek</w>\": 34585,\n  \"leeminho</w>\": 37831,\n  \"leen\": 35311,\n  \"leen</w>\": 15940,\n  \"leep\": 48875,\n  \"leep</w>\": 10191,\n  \"lees\": 29324,\n  \"lees</w>\": 34056,\n  \"lef\": 9152,\n  \"left\": 33949,\n  \"left</w>\": 1823,\n  \"leftist</w>\": 35143,\n  \"lefto\": 17437,\n  \"leftover</w>\": 26414,\n  \"leftovers</w>\": 28481,\n  \"lefty</w>\": 33935,\n  \"leg\": 1211,\n  \"leg</w>\": 4924,\n  \"lega</w>\": 38674,\n  \"legacy\": 44108,\n  \"legacy</w>\": 6447,\n  \"legal\": 17743,\n  \"legal</w>\": 3998,\n  \"legalization</w>\": 40584,\n  \"legalize</w>\": 42921,\n  \"legally</w>\": 14152,\n  \"legate</w>\": 46009,\n  \"lege</w>\": 8065,\n  \"legen\": 6105,\n  \"legend\": 5480,\n  \"legend</w>\": 3539,\n  \"legendary</w>\": 6053,\n  \"legendof\": 47915,\n  \"legends</w>\": 6396,\n  \"leges</w>\": 15356,\n  \"legg\": 18474,\n  \"legg</w>\": 32511,\n  \"legged</w>\": 25830,\n  \"leggings</w>\": 22895,\n  \"leggo</w>\": 43441,\n  \"legi\": 11183,\n  \"legion\": 35503,\n  \"legion</w>\": 14525,\n  \"legis\": 7200,\n  \"legislat\": 16486,\n  \"legislation</w>\": 14143,\n  \"legislative</w>\": 16755,\n  \"legislators</w>\": 31572,\n  \"legislature</w>\": 22309,\n  \"legit</w>\": 12563,\n  \"legitim\": 17656,\n  \"legitimate</w>\": 24491,\n  \"lego\": 28117,\n  \"lego</w>\": 7849,\n  \"legos</w>\": 45359,\n  \"legs</w>\": 7072,\n  \"leh\": 19105,\n  \"leh</w>\": 29298,\n  \"lehead</w>\": 28090,\n  \"lehigh</w>\": 34527,\n  \"lehman</w>\": 46094,\n  \"lei\": 15828,\n  \"lei</w>\": 21830,\n  \"leia</w>\": 32723,\n  \"leic\": 35073,\n  \"leica</w>\": 30206,\n  \"leice\": 10026,\n  \"leicester\": 28795,\n  \"leicester</w>\": 11510,\n  \"leicestershire</w>\": 45358,\n  \"leigh\": 14849,\n  \"leigh</w>\": 9292,\n  \"leighton</w>\": 30782,\n  \"leila</w>\": 41342,\n  \"lein\": 20026,\n  \"lein</w>\": 28551,\n  \"leinster</w>\": 32242,\n  \"leip\": 36401,\n  \"leipzig</w>\": 41860,\n  \"leis\": 13133,\n  \"leisure</w>\": 15849,\n  \"leit\": 35446,\n  \"leith</w>\": 34141,\n  \"lek\": 26626,\n  \"lek</w>\": 36535,\n  \"lel</w>\": 46623,\n  \"lele</w>\": 26075,\n  \"lem\": 10213,\n  \"lem</w>\": 8428,\n  \"leman</w>\": 24478,\n  \"lemans</w>\": 26694,\n  \"lement</w>\": 9693,\n  \"lements</w>\": 15833,\n  \"lemme</w>\": 23318,\n  \"lemon\": 12272,\n  \"lemon</w>\": 7184,\n  \"lemonade</w>\": 18884,\n  \"lemons</w>\": 29576,\n  \"lemore</w>\": 41147,\n  \"len\": 3687,\n  \"len</w>\": 2159,\n  \"lena</w>\": 22038,\n  \"lend\": 45397,\n  \"lend</w>\": 24987,\n  \"lender</w>\": 44734,\n  \"lenders</w>\": 42443,\n  \"lending</w>\": 20209,\n  \"lene</w>\": 17628,\n  \"leness</w>\": 36551,\n  \"leng\": 7861,\n  \"length</w>\": 10130,\n  \"lengths</w>\": 31858,\n  \"lengthy</w>\": 32624,\n  \"lenin</w>\": 41760,\n  \"lennon</w>\": 18360,\n  \"lennox</w>\": 45748,\n  \"lenny\": 48448,\n  \"lenny</w>\": 30124,\n  \"leno</w>\": 45357,\n  \"lenovo</w>\": 25886,\n  \"lens</w>\": 8666,\n  \"lenses</w>\": 21264,\n  \"lent\": 20943,\n  \"lent</w>\": 22605,\n  \"lentil</w>\": 41511,\n  \"lentils</w>\": 44269,\n  \"leo\": 24008,\n  \"leo</w>\": 8312,\n  \"leon\": 6581,\n  \"leon</w>\": 9763,\n  \"leonard\": 43849,\n  \"leonard</w>\": 13142,\n  \"leonardo</w>\": 20282,\n  \"leone</w>\": 22864,\n  \"leop\": 11234,\n  \"leopard</w>\": 15931,\n  \"leopards</w>\": 40996,\n  \"leopold</w>\": 45501,\n  \"lep\": 48884,\n  \"leppard</w>\": 41656,\n  \"lepre\": 45641,\n  \"ler\": 5587,\n  \"ler</w>\": 1803,\n  \"lero\": 15067,\n  \"lerosis</w>\": 35455,\n  \"leroy</w>\": 32441,\n  \"lers</w>\": 6247,\n  \"lery</w>\": 38184,\n  \"les\": 4339,\n  \"les</w>\": 840,\n  \"lesbian</w>\": 17419,\n  \"lesbians</w>\": 43182,\n  \"lesh</w>\": 32282,\n  \"lesley</w>\": 25506,\n  \"lesli\": 13649,\n  \"leslie</w>\": 16244,\n  \"lesn\": 39568,\n  \"lesnar</w>\": 42223,\n  \"less\": 3242,\n  \"less</w>\": 1285,\n  \"lesser</w>\": 20369,\n  \"lessly</w>\": 13103,\n  \"lessness</w>\": 24847,\n  \"lesson</w>\": 7714,\n  \"lessons</w>\": 7199,\n  \"lest\": 24372,\n  \"lest</w>\": 6794,\n  \"lester\": 23157,\n  \"lester</w>\": 24023,\n  \"lestwe\": 29726,\n  \"lestweforget</w>\": 30273,\n  \"let\": 1898,\n  \"let</w>\": 1094,\n  \"leta</w>\": 34319,\n  \"lete</w>\": 34078,\n  \"letes</w>\": 6815,\n  \"leth\": 30022,\n  \"leth</w>\": 42462,\n  \"lethal</w>\": 21905,\n  \"lethbridge</w>\": 48390,\n  \"leti</w>\": 34176,\n  \"letics</w>\": 14504,\n  \"letit\": 46423,\n  \"leto</w>\": 32203,\n  \"leton\": 37674,\n  \"leton</w>\": 7462,\n  \"lets\": 10448,\n  \"lets</w>\": 3243,\n  \"letsgo\": 16967,\n  \"letsgo</w>\": 29789,\n  \"letstalk</w>\": 35591,\n  \"lett\": 22428,\n  \"lett</w>\": 9778,\n  \"lette\": 41798,\n  \"lette</w>\": 10301,\n  \"letter\": 15567,\n  \"letter</w>\": 4861,\n  \"lettering</w>\": 26382,\n  \"letterman</w>\": 38447,\n  \"letters</w>\": 9181,\n  \"letting</w>\": 9510,\n  \"letto</w>\": 35449,\n  \"lettu\": 17933,\n  \"lettuce</w>\": 18573,\n  \"leu\": 15691,\n  \"leuke\": 31031,\n  \"leukemia</w>\": 32097,\n  \"leum</w>\": 21571,\n  \"leur</w>\": 45806,\n  \"lev\": 17022,\n  \"lev</w>\": 29950,\n  \"levan\": 42543,\n  \"leve\": 36271,\n  \"level\": 21682,\n  \"level</w>\": 2931,\n  \"leveled</w>\": 48453,\n  \"levels</w>\": 6295,\n  \"leven\": 44792,\n  \"leven</w>\": 34729,\n  \"lever\": 20178,\n  \"lever</w>\": 23094,\n  \"leverage</w>\": 24030,\n  \"leveraging</w>\": 37948,\n  \"levi\": 25630,\n  \"levi</w>\": 19113,\n  \"leviathan</w>\": 41736,\n  \"levin</w>\": 36949,\n  \"levine</w>\": 26594,\n  \"levit\": 22715,\n  \"levy</w>\": 17147,\n  \"lew\": 5063,\n  \"lew</w>\": 25329,\n  \"lewan\": 48349,\n  \"lewd</w>\": 45241,\n  \"lewes</w>\": 40431,\n  \"lewi\": 19589,\n  \"lewis\": 22043,\n  \"lewis</w>\": 6020,\n  \"lewisham\": 37385,\n  \"lewisham</w>\": 47633,\n  \"lewishamilton</w>\": 42960,\n  \"lewood</w>\": 37951,\n  \"lex\": 6586,\n  \"lex</w>\": 9658,\n  \"lexa</w>\": 48259,\n  \"lexi\": 44231,\n  \"lexi</w>\": 24679,\n  \"lexington</w>\": 22308,\n  \"lexus</w>\": 20694,\n  \"ley\": 2565,\n  \"ley</w>\": 1066,\n  \"leye</w>\": 37061,\n  \"leys\": 45609,\n  \"leys</w>\": 14834,\n  \"leyton</w>\": 46573,\n  \"lez</w>\": 26442,\n  \"lf\": 33960,\n  \"lf</w>\": 22078,\n  \"lfc\": 37826,\n  \"lfc</w>\": 8267,\n  \"lfw</w>\": 28514,\n  \"lg\": 4546,\n  \"lg</w>\": 11368,\n  \"lga</w>\": 39348,\n  \"lgb\": 25401,\n  \"lgbt\": 11743,\n  \"lgbt</w>\": 9592,\n  \"lgbti</w>\": 42730,\n  \"lgbtq\": 47625,\n  \"lgbtq</w>\": 14939,\n  \"lgm</w>\": 39389,\n  \"lh\": 27794,\n  \"lh</w>\": 31159,\n  \"lhp</w>\": 45092,\n  \"lhs</w>\": 33170,\n  \"li\": 554,\n  \"li</w>\": 4250,\n  \"lia\": 26118,\n  \"lia</w>\": 6964,\n  \"liability</w>\": 29139,\n  \"liaison</w>\": 39294,\n  \"liam\": 5258,\n  \"liam</w>\": 7167,\n  \"lian</w>\": 18058,\n  \"liance</w>\": 40864,\n  \"liar</w>\": 16334,\n  \"liars</w>\": 23863,\n  \"lias</w>\": 46021,\n  \"lib\": 10249,\n  \"lib</w>\": 13345,\n  \"libby</w>\": 36832,\n  \"libdems</w>\": 40869,\n  \"liber\": 3425,\n  \"liberal\": 48032,\n  \"liberal</w>\": 9985,\n  \"liberalism</w>\": 40018,\n  \"liberals</w>\": 15981,\n  \"liberated</w>\": 38690,\n  \"liberation</w>\": 19507,\n  \"liberia</w>\": 32208,\n  \"libertarian</w>\": 35067,\n  \"liberties</w>\": 48623,\n  \"liberty\": 23397,\n  \"liberty</w>\": 8480,\n  \"libr\": 2856,\n  \"libra</w>\": 43038,\n  \"librarian</w>\": 25148,\n  \"librarians</w>\": 37806,\n  \"libraries</w>\": 14277,\n  \"library\": 25713,\n  \"library</w>\": 3519,\n  \"libre\": 49210,\n  \"libre</w>\": 31681,\n  \"libs</w>\": 26401,\n  \"liby\": 36390,\n  \"libya</w>\": 16417,\n  \"libyan</w>\": 42319,\n  \"lic\": 2508,\n  \"lic</w>\": 3376,\n  \"lice</w>\": 45691,\n  \"licen\": 6706,\n  \"licence</w>\": 20550,\n  \"license</w>\": 10337,\n  \"licensed</w>\": 18752,\n  \"licenses</w>\": 36414,\n  \"licensing</w>\": 24219,\n  \"lich\": 23979,\n  \"lich</w>\": 25875,\n  \"lick\": 29197,\n  \"lick</w>\": 17541,\n  \"licking</w>\": 33013,\n  \"licks</w>\": 42117,\n  \"lics</w>\": 44552,\n  \"lid\": 39369,\n  \"lid</w>\": 17678,\n  \"lidge</w>\": 45558,\n  \"lido</w>\": 35683,\n  \"lids</w>\": 41609,\n  \"lie\": 6570,\n  \"lie</w>\": 2538,\n  \"lieb</w>\": 45387,\n  \"liebe</w>\": 37749,\n  \"lied</w>\": 6486,\n  \"lief</w>\": 38428,\n  \"lien</w>\": 45716,\n  \"lier</w>\": 3626,\n  \"liers</w>\": 19303,\n  \"lies\": 37236,\n  \"lies</w>\": 3205,\n  \"liest</w>\": 14020,\n  \"liet</w>\": 41107,\n  \"lieu\": 20401,\n  \"lieu</w>\": 35313,\n  \"lieutenant</w>\": 22538,\n  \"lif\": 16456,\n  \"life\": 2666,\n  \"life</w>\": 970,\n  \"lifeat\": 27801,\n  \"lifeboat</w>\": 37404,\n  \"lifecycle</w>\": 49171,\n  \"lifein\": 48447,\n  \"lifeis\": 24824,\n  \"lifeisgood</w>\": 46433,\n  \"lifel\": 15025,\n  \"lifeline</w>\": 38438,\n  \"lifelong</w>\": 21358,\n  \"lifeof\": 36061,\n  \"lifesaving</w>\": 48016,\n  \"lifespan</w>\": 49257,\n  \"lifestyle\": 46512,\n  \"lifestyle</w>\": 7037,\n  \"lifestyles</w>\": 48521,\n  \"lifetime\": 48737,\n  \"lifetime</w>\": 9107,\n  \"liff</w>\": 34404,\n  \"liffe</w>\": 38942,\n  \"lift\": 33146,\n  \"lift</w>\": 6779,\n  \"lifted</w>\": 16783,\n  \"lifter</w>\": 38555,\n  \"lifting</w>\": 10857,\n  \"lifts</w>\": 18291,\n  \"lig\": 19915,\n  \"lig</w>\": 38493,\n  \"liga</w>\": 16802,\n  \"ligam\": 31077,\n  \"ligament</w>\": 48705,\n  \"ligan</w>\": 27962,\n  \"ligans</w>\": 42133,\n  \"ligh\": 7510,\n  \"light\": 3885,\n  \"light</w>\": 1395,\n  \"lighted</w>\": 18404,\n  \"lighten</w>\": 32717,\n  \"lightening</w>\": 28170,\n  \"lighter</w>\": 14102,\n  \"lighthouse</w>\": 13717,\n  \"lighting</w>\": 5799,\n  \"lightly</w>\": 26878,\n  \"lightning</w>\": 7756,\n  \"lightroom</w>\": 41454,\n  \"lights</w>\": 3073,\n  \"lightweight</w>\": 16278,\n  \"ligu\": 42920,\n  \"ligue</w>\": 29196,\n  \"lik\": 4831,\n  \"lik</w>\": 18495,\n  \"like\": 9175,\n  \"like</w>\": 789,\n  \"liked</w>\": 7112,\n  \"likefor\": 48444,\n  \"likeli\": 40666,\n  \"likelihood</w>\": 48158,\n  \"likely</w>\": 5256,\n  \"liken\": 36084,\n  \"likes</w>\": 4724,\n  \"liking</w>\": 16810,\n  \"lil\": 6012,\n  \"lil</w>\": 4461,\n  \"lilac</w>\": 33647,\n  \"lili\": 26686,\n  \"lili</w>\": 48411,\n  \"lilies</w>\": 38110,\n  \"lillard</w>\": 47016,\n  \"lille</w>\": 38705,\n  \"lilli\": 40920,\n  \"lillian</w>\": 41563,\n  \"lilly\": 47825,\n  \"lilly</w>\": 21815,\n  \"lily\": 23803,\n  \"lily</w>\": 10647,\n  \"lim\": 2377,\n  \"lim</w>\": 17204,\n  \"lima</w>\": 17589,\n  \"limb\": 27061,\n  \"limb</w>\": 32363,\n  \"limbo</w>\": 46179,\n  \"limbs</w>\": 34886,\n  \"lime\": 17385,\n  \"lime</w>\": 11193,\n  \"limel\": 48658,\n  \"limer\": 16915,\n  \"limerick</w>\": 19501,\n  \"limestone</w>\": 27272,\n  \"limit\": 18933,\n  \"limit</w>\": 9973,\n  \"limitations</w>\": 32730,\n  \"limited\": 49229,\n  \"limited</w>\": 3472,\n  \"limiting</w>\": 35812,\n  \"limitless</w>\": 35833,\n  \"limits</w>\": 11966,\n  \"limo</w>\": 33166,\n  \"limous\": 47287,\n  \"limpopo</w>\": 47175,\n  \"lin\": 1254,\n  \"lin</w>\": 2424,\n  \"lina</w>\": 26110,\n  \"lincol\": 6239,\n  \"lincoln\": 16957,\n  \"lincoln</w>\": 7454,\n  \"lincolnshire</w>\": 29014,\n  \"lind\": 6492,\n  \"linda\": 45410,\n  \"linda</w>\": 10760,\n  \"linden\": 44076,\n  \"linden</w>\": 34832,\n  \"lindo</w>\": 38467,\n  \"lindsay\": 29846,\n  \"lindsay</w>\": 16858,\n  \"lindsey\": 29475,\n  \"lindsey</w>\": 18128,\n  \"line\": 3674,\n  \"line</w>\": 1148,\n  \"linear</w>\": 19816,\n  \"linebacker</w>\": 29848,\n  \"lined</w>\": 11842,\n  \"lineman</w>\": 31501,\n  \"linen</w>\": 20032,\n  \"liner</w>\": 11618,\n  \"liners</w>\": 24463,\n  \"lines</w>\": 3418,\n  \"liness</w>\": 28633,\n  \"lineup</w>\": 7316,\n  \"lineups</w>\": 33589,\n  \"ling\": 4851,\n  \"ling</w>\": 1358,\n  \"linger</w>\": 29593,\n  \"lingerie</w>\": 18473,\n  \"lingering</w>\": 46494,\n  \"lings</w>\": 11390,\n  \"lington\": 27673,\n  \"lington</w>\": 9002,\n  \"lingu\": 34449,\n  \"lingui\": 29942,\n  \"linguistic</w>\": 46847,\n  \"linguistics</w>\": 48651,\n  \"lining</w>\": 11589,\n  \"link\": 18433,\n  \"link</w>\": 2468,\n  \"linke\": 15088,\n  \"linked</w>\": 11059,\n  \"linkedin</w>\": 16302,\n  \"linkin\": 40287,\n  \"linkin</w>\": 49291,\n  \"linking</w>\": 23296,\n  \"links</w>\": 8113,\n  \"linn</w>\": 37431,\n  \"lino\": 41189,\n  \"lino</w>\": 34995,\n  \"lins</w>\": 6567,\n  \"linson</w>\": 15401,\n  \"linton</w>\": 36479,\n  \"linus</w>\": 49303,\n  \"linux</w>\": 14061,\n  \"lio</w>\": 19395,\n  \"lion\": 8872,\n  \"lion</w>\": 5567,\n  \"lionel</w>\": 19441,\n  \"lions</w>\": 7093,\n  \"lip\": 8630,\n  \"lip</w>\": 8546,\n  \"lipo\": 38795,\n  \"lipp\": 38074,\n  \"lips</w>\": 8847,\n  \"lipse</w>\": 10351,\n  \"lipstick</w>\": 15618,\n  \"liqu\": 6310,\n  \"lique\": 32680,\n  \"liqueur</w>\": 43612,\n  \"liqui\": 33817,\n  \"liquid\": 18366,\n  \"liquid</w>\": 10158,\n  \"liquidity</w>\": 42812,\n  \"liquor</w>\": 17828,\n  \"lis\": 7297,\n  \"lis</w>\": 12749,\n  \"lisa\": 25236,\n  \"lisa</w>\": 7424,\n  \"lisam\": 43072,\n  \"lisboa</w>\": 40052,\n  \"lisbon</w>\": 17708,\n  \"lish\": 12658,\n  \"lish</w>\": 2354,\n  \"lished</w>\": 22620,\n  \"lisle</w>\": 21529,\n  \"lism</w>\": 34390,\n  \"liss\": 45489,\n  \"liss</w>\": 35433,\n  \"lisse</w>\": 49309,\n  \"list\": 1734,\n  \"list</w>\": 1998,\n  \"lista</w>\": 37812,\n  \"listed</w>\": 6457,\n  \"listen\": 17454,\n  \"listen</w>\": 2672,\n  \"listened</w>\": 15347,\n  \"listener</w>\": 34819,\n  \"listeners</w>\": 26901,\n  \"listening</w>\": 3656,\n  \"listens</w>\": 25912,\n  \"lister</w>\": 45109,\n  \"listing</w>\": 8145,\n  \"listings</w>\": 21987,\n  \"liston</w>\": 48041,\n  \"lists</w>\": 12281,\n  \"lit\": 2213,\n  \"lit</w>\": 4350,\n  \"lita</w>\": 30100,\n  \"lite\": 29273,\n  \"lite</w>\": 13694,\n  \"litecoin</w>\": 39063,\n  \"liter\": 3085,\n  \"liter</w>\": 34904,\n  \"literacy</w>\": 12841,\n  \"literal</w>\": 24269,\n  \"literally</w>\": 4719,\n  \"literary</w>\": 13586,\n  \"literature</w>\": 11072,\n  \"litfest</w>\": 40369,\n  \"lith\": 37005,\n  \"lithium</w>\": 22794,\n  \"litho\": 31088,\n  \"lithograph</w>\": 49022,\n  \"lithu\": 21045,\n  \"lithuania</w>\": 27068,\n  \"liti\": 24292,\n  \"litigation</w>\": 31769,\n  \"lito</w>\": 47381,\n  \"litre</w>\": 25786,\n  \"litres</w>\": 39919,\n  \"litt\": 1216,\n  \"litt</w>\": 47583,\n  \"litter\": 45431,\n  \"litter</w>\": 17118,\n  \"litters</w>\": 45300,\n  \"little\": 7024,\n  \"little</w>\": 1274,\n  \"littlemix</w>\": 29731,\n  \"littlest</w>\": 48969,\n  \"litur\": 36830,\n  \"litz</w>\": 30357,\n  \"liu</w>\": 20466,\n  \"liv\": 13895,\n  \"liv</w>\": 19901,\n  \"livan</w>\": 12785,\n  \"live\": 3215,\n  \"live</w>\": 1064,\n  \"lived</w>\": 8867,\n  \"livel\": 17973,\n  \"liveli\": 26566,\n  \"livelihood</w>\": 46497,\n  \"livelihoods</w>\": 47716,\n  \"lively</w>\": 19663,\n  \"liveme</w>\": 35396,\n  \"livemusic</w>\": 15688,\n  \"liven\": 41057,\n  \"liveon\": 22815,\n  \"livepd\": 38742,\n  \"livepd</w>\": 31899,\n  \"liver\": 4755,\n  \"liver</w>\": 12639,\n  \"liverpool\": 29778,\n  \"liverpool</w>\": 5366,\n  \"livery</w>\": 23248,\n  \"lives</w>\": 3247,\n  \"livesmatter</w>\": 20348,\n  \"livestock</w>\": 22079,\n  \"livestream</w>\": 16844,\n  \"livetweet</w>\": 38546,\n  \"livin</w>\": 28061,\n  \"living\": 10965,\n  \"living</w>\": 2815,\n  \"livingston</w>\": 30551,\n  \"lix</w>\": 45068,\n  \"liz\": 8632,\n  \"liz</w>\": 12242,\n  \"liza</w>\": 28787,\n  \"lizard</w>\": 17221,\n  \"lizards</w>\": 41991,\n  \"lizasober\": 44487,\n  \"lizasoberano</w>\": 45076,\n  \"lizz\": 34430,\n  \"lizzie</w>\": 29530,\n  \"lizzy</w>\": 32306,\n  \"lj\": 34211,\n  \"lj</w>\": 32273,\n  \"lju\": 44562,\n  \"lk\": 39110,\n  \"lk</w>\": 26596,\n  \"lka</w>\": 21881,\n  \"ll\": 1657,\n  \"ll</w>\": 865,\n  \"lla</w>\": 15419,\n  \"llama</w>\": 36679,\n  \"llan\": 17281,\n  \"llan</w>\": 38728,\n  \"lland\": 31150,\n  \"llc</w>\": 17161,\n  \"lle\": 26550,\n  \"lle</w>\": 29732,\n  \"llen\": 41197,\n  \"ller</w>\": 7722,\n  \"llers</w>\": 26426,\n  \"lli\": 47015,\n  \"lli</w>\": 13368,\n  \"llis</w>\": 25518,\n  \"lll</w>\": 27177,\n  \"llll\": 34874,\n  \"llll</w>\": 43485,\n  \"llo</w>\": 19293,\n  \"lloy\": 10092,\n  \"lloyd\": 33339,\n  \"lloyd</w>\": 12400,\n  \"llp</w>\": 28042,\n  \"lls</w>\": 40535,\n  \"lly</w>\": 26379,\n  \"lm\": 6981,\n  \"lm</w>\": 15282,\n  \"lma\": 4493,\n  \"lmao</w>\": 5121,\n  \"lmaoo</w>\": 32623,\n  \"lmaooo</w>\": 33362,\n  \"lmaoooo</w>\": 45232,\n  \"lmfa\": 8928,\n  \"lmfao</w>\": 11068,\n  \"lmfaooo</w>\": 47658,\n  \"lmp</w>\": 43575,\n  \"lms</w>\": 30381,\n  \"ln\": 31644,\n  \"ln</w>\": 18654,\n  \"lng</w>\": 22339,\n  \"lnp</w>\": 39679,\n  \"lo\": 549,\n  \"lo</w>\": 2982,\n  \"loa</w>\": 39678,\n  \"load\": 4515,\n  \"load</w>\": 2834,\n  \"loaded</w>\": 6756,\n  \"loader</w>\": 28492,\n  \"loading</w>\": 9975,\n  \"loads</w>\": 8691,\n  \"loaf\": 26467,\n  \"loaf</w>\": 18273,\n  \"loan\": 28431,\n  \"loan</w>\": 8176,\n  \"loans</w>\": 14206,\n  \"lob\": 11197,\n  \"lob</w>\": 46606,\n  \"lobal</w>\": 34574,\n  \"lobb\": 27698,\n  \"lobby</w>\": 12449,\n  \"lobbying</w>\": 36047,\n  \"lobe</w>\": 46325,\n  \"lobes</w>\": 24148,\n  \"lobo</w>\": 39323,\n  \"lobos</w>\": 36586,\n  \"lobster</w>\": 13793,\n  \"loc\": 1378,\n  \"loc</w>\": 25826,\n  \"local\": 9202,\n  \"local</w>\": 2029,\n  \"localized</w>\": 49399,\n  \"locally</w>\": 15603,\n  \"locals</w>\": 15041,\n  \"locate</w>\": 20490,\n  \"located</w>\": 5677,\n  \"location</w>\": 4372,\n  \"locations</w>\": 9580,\n  \"loch\": 20188,\n  \"loch</w>\": 14101,\n  \"lock\": 7201,\n  \"lock</w>\": 4381,\n  \"lockdown</w>\": 35636,\n  \"locke</w>\": 29698,\n  \"locked</w>\": 8371,\n  \"locker</w>\": 14053,\n  \"lockhart</w>\": 48642,\n  \"lockheed</w>\": 36637,\n  \"locking</w>\": 19978,\n  \"locks</w>\": 13212,\n  \"lockscreen</w>\": 42439,\n  \"loco</w>\": 25555,\n  \"locom\": 22798,\n  \"locomo\": 46147,\n  \"locomotive</w>\": 30439,\n  \"locu\": 33635,\n  \"locust</w>\": 46237,\n  \"lod\": 45650,\n  \"lodge</w>\": 10504,\n  \"loe\": 30113,\n  \"loe</w>\": 25484,\n  \"loeb</w>\": 49334,\n  \"lof\": 15011,\n  \"loff</w>\": 31008,\n  \"loft\": 35707,\n  \"loft</w>\": 20049,\n  \"loftus</w>\": 46689,\n  \"log\": 3239,\n  \"log</w>\": 7383,\n  \"logan\": 20655,\n  \"logan</w>\": 10569,\n  \"logans</w>\": 40752,\n  \"logg</w>\": 43002,\n  \"logged</w>\": 31457,\n  \"logger</w>\": 39089,\n  \"logging</w>\": 24444,\n  \"logi\": 3177,\n  \"logia</w>\": 48031,\n  \"logic</w>\": 10670,\n  \"logical</w>\": 4791,\n  \"logically</w>\": 24782,\n  \"logie</w>\": 33445,\n  \"logies</w>\": 7378,\n  \"login</w>\": 31121,\n  \"logist</w>\": 7407,\n  \"logistics</w>\": 14755,\n  \"logists</w>\": 12233,\n  \"logne</w>\": 19911,\n  \"logo\": 31480,\n  \"logo</w>\": 5750,\n  \"logos</w>\": 24879,\n  \"logs</w>\": 22745,\n  \"logue</w>\": 27785,\n  \"logy\": 22721,\n  \"logy</w>\": 1659,\n  \"loh\": 49129,\n  \"loh</w>\": 37983,\n  \"loi</w>\": 35128,\n  \"loid</w>\": 31408,\n  \"loin</w>\": 21760,\n  \"loire</w>\": 46040,\n  \"lois</w>\": 27040,\n  \"lok\": 19908,\n  \"lok</w>\": 23575,\n  \"loki</w>\": 24435,\n  \"lol\": 10721,\n  \"lol</w>\": 1824,\n  \"lola</w>\": 19065,\n  \"lolita</w>\": 42615,\n  \"lolla\": 45483,\n  \"lolli\": 27906,\n  \"lollipop</w>\": 34605,\n  \"lolly</w>\": 48264,\n  \"lolo\": 16895,\n  \"lolo</w>\": 37481,\n  \"lolol</w>\": 25280,\n  \"lololol</w>\": 34738,\n  \"lolz</w>\": 35260,\n  \"lom\": 9279,\n  \"loma</w>\": 42889,\n  \"lombar\": 25493,\n  \"lombard</w>\": 46461,\n  \"lombardi</w>\": 44346,\n  \"lomond</w>\": 48941,\n  \"lon\": 1235,\n  \"lon</w>\": 6507,\n  \"london\": 6835,\n  \"london</w>\": 1789,\n  \"londonmarathon</w>\": 35018,\n  \"lone\": 22220,\n  \"lone</w>\": 13576,\n  \"lonel\": 28872,\n  \"loneliness</w>\": 30310,\n  \"lonely\": 34509,\n  \"lonely</w>\": 12368,\n  \"lonelyplanet</w>\": 44984,\n  \"long\": 4792,\n  \"long</w>\": 1538,\n  \"longe\": 25793,\n  \"longer</w>\": 5349,\n  \"longest</w>\": 10731,\n  \"longevity</w>\": 35354,\n  \"longh\": 20286,\n  \"longhorn</w>\": 41047,\n  \"longhorns</w>\": 38295,\n  \"longing</w>\": 38482,\n  \"longlive\": 47840,\n  \"longs</w>\": 43618,\n  \"longtime</w>\": 19685,\n  \"loo\": 731,\n  \"loo</w>\": 11804,\n  \"look\": 8874,\n  \"look</w>\": 1012,\n  \"lookalike</w>\": 38307,\n  \"lookbook</w>\": 39184,\n  \"looked</w>\": 4913,\n  \"lookin</w>\": 11254,\n  \"looking\": 36898,\n  \"looking</w>\": 1312,\n  \"lookout</w>\": 18330,\n  \"looks</w>\": 1606,\n  \"lool</w>\": 33125,\n  \"loom\": 37440,\n  \"loom</w>\": 17199,\n  \"looming</w>\": 35384,\n  \"looms</w>\": 30550,\n  \"loon</w>\": 28222,\n  \"loona</w>\": 48137,\n  \"looney</w>\": 45315,\n  \"looo\": 20902,\n  \"loool</w>\": 36016,\n  \"looool</w>\": 47038,\n  \"looooo\": 31484,\n  \"loop\": 19606,\n  \"loop</w>\": 10408,\n  \"loops</w>\": 21625,\n  \"loos</w>\": 45723,\n  \"loose\": 43815,\n  \"loose</w>\": 9786,\n  \"loot</w>\": 21518,\n  \"lop\": 36734,\n  \"lop</w>\": 17066,\n  \"lopes</w>\": 49269,\n  \"lopez</w>\": 12982,\n  \"lor\": 2179,\n  \"lor</w>\": 11335,\n  \"lord\": 18896,\n  \"lord</w>\": 3486,\n  \"lorde</w>\": 35483,\n  \"lords</w>\": 14969,\n  \"lore\": 12880,\n  \"lore</w>\": 27218,\n  \"loren\": 13602,\n  \"loren</w>\": 33398,\n  \"lorenzo</w>\": 21342,\n  \"lores</w>\": 34510,\n  \"loretta</w>\": 40863,\n  \"lori\": 20164,\n  \"lori</w>\": 23095,\n  \"lorna</w>\": 46316,\n  \"lorraine</w>\": 27602,\n  \"lorry</w>\": 31354,\n  \"los\": 32217,\n  \"los</w>\": 3087,\n  \"losange\": 14037,\n  \"losangeles</w>\": 14638,\n  \"lose\": 43318,\n  \"lose</w>\": 5354,\n  \"loser</w>\": 18168,\n  \"losers</w>\": 23201,\n  \"loses</w>\": 14263,\n  \"losing</w>\": 7918,\n  \"loss\": 34761,\n  \"loss</w>\": 4327,\n  \"losses</w>\": 16909,\n  \"lost\": 14258,\n  \"lost</w>\": 2624,\n  \"lostdog</w>\": 48482,\n  \"lot\": 5132,\n  \"lot</w>\": 1954,\n  \"loth</w>\": 43625,\n  \"lothian</w>\": 31360,\n  \"lothing</w>\": 42058,\n  \"lotion</w>\": 25260,\n  \"lotr</w>\": 34165,\n  \"lots</w>\": 2958,\n  \"lott</w>\": 42854,\n  \"lotta</w>\": 29125,\n  \"lotte\": 16535,\n  \"lotte</w>\": 7274,\n  \"lottery</w>\": 16975,\n  \"lottie</w>\": 48517,\n  \"lotto</w>\": 28265,\n  \"lotus</w>\": 13824,\n  \"lou\": 2207,\n  \"lou</w>\": 9745,\n  \"loubout\": 38369,\n  \"loud\": 22884,\n  \"loud</w>\": 7464,\n  \"louder</w>\": 25904,\n  \"loudest</w>\": 49214,\n  \"loudly</w>\": 39256,\n  \"lough\": 21927,\n  \"lough</w>\": 28045,\n  \"loughborough</w>\": 49153,\n  \"loui\": 42173,\n  \"louie</w>\": 25790,\n  \"louis\": 8916,\n  \"louis</w>\": 4459,\n  \"louisa</w>\": 40011,\n  \"louise\": 32275,\n  \"louise</w>\": 13076,\n  \"louisi\": 12187,\n  \"louisiana</w>\": 12946,\n  \"louisville</w>\": 13860,\n  \"louisvuitton</w>\": 44911,\n  \"loun\": 6466,\n  \"lounge</w>\": 7141,\n  \"lounging</w>\": 45430,\n  \"lour\": 29383,\n  \"lourdes</w>\": 45071,\n  \"louvre</w>\": 36995,\n  \"lov\": 8923,\n  \"lov</w>\": 21229,\n  \"lova</w>\": 37394,\n  \"lovable</w>\": 38565,\n  \"lovato</w>\": 18960,\n  \"love\": 2618,\n  \"love</w>\": 793,\n  \"lovecraft</w>\": 42405,\n  \"loved</w>\": 3249,\n  \"lovefl</w>\": 38884,\n  \"loveher</w>\": 38306,\n  \"lovehim</w>\": 45733,\n  \"loveis\": 30931,\n  \"loveisland</w>\": 30970,\n  \"loveislove</w>\": 43603,\n  \"loveit</w>\": 24764,\n  \"lovel\": 8999,\n  \"lovelies</w>\": 31412,\n  \"lovelondon</w>\": 46493,\n  \"lovely\": 33250,\n  \"lovely</w>\": 2165,\n  \"lovemy\": 20041,\n  \"lovemyjob</w>\": 40130,\n  \"loven\": 33754,\n  \"lover\": 28508,\n  \"lover</w>\": 7168,\n  \"lovers\": 48416,\n  \"lovers</w>\": 5973,\n  \"loves\": 37773,\n  \"loves</w>\": 3925,\n  \"lovethe\": 33040,\n  \"lovethem</w>\": 48298,\n  \"lovett</w>\": 47095,\n  \"lovewins</w>\": 47687,\n  \"loveyou\": 39226,\n  \"loveyou</w>\": 25964,\n  \"loveyour\": 26462,\n  \"lovin\": 33442,\n  \"lovin</w>\": 16354,\n  \"loving\": 29568,\n  \"loving</w>\": 3721,\n  \"lovingly</w>\": 44100,\n  \"low\": 1049,\n  \"low</w>\": 1042,\n  \"loway</w>\": 16104,\n  \"lowe</w>\": 17910,\n  \"lowed</w>\": 22733,\n  \"lowell</w>\": 24458,\n  \"lower\": 32578,\n  \"lower</w>\": 4909,\n  \"lowered</w>\": 34968,\n  \"lowering</w>\": 35261,\n  \"lowers</w>\": 36398,\n  \"lowes</w>\": 38515,\n  \"lowest</w>\": 12098,\n  \"lowing</w>\": 8283,\n  \"lowkey</w>\": 29481,\n  \"lowry</w>\": 27444,\n  \"lows</w>\": 4406,\n  \"lox</w>\": 41725,\n  \"loy\": 4519,\n  \"loy</w>\": 23929,\n  \"loyal</w>\": 13032,\n  \"loyalty</w>\": 14686,\n  \"loyd</w>\": 44212,\n  \"loyed</w>\": 29279,\n  \"loyment</w>\": 18307,\n  \"loyola</w>\": 32569,\n  \"lp\": 22282,\n  \"lp</w>\": 6392,\n  \"lpc</w>\": 44092,\n  \"lpg</w>\": 47905,\n  \"lpga</w>\": 34295,\n  \"lps</w>\": 32094,\n  \"lr\": 20572,\n  \"lr</w>\": 7041,\n  \"lrt</w>\": 32996,\n  \"ls\": 19051,\n  \"ls</w>\": 1268,\n  \"lsd</w>\": 43766,\n  \"lse\": 46127,\n  \"lse</w>\": 43886,\n  \"lsu\": 35428,\n  \"lsu</w>\": 15672,\n  \"lt\": 13642,\n  \"lt</w>\": 3333,\n  \"ltc</w>\": 27664,\n  \"ltd</w>\": 6802,\n  \"lte</w>\": 25202,\n  \"lton</w>\": 14237,\n  \"lu\": 664,\n  \"lu</w>\": 9657,\n  \"lub\": 22469,\n  \"lub</w>\": 11836,\n  \"lubbock</w>\": 37660,\n  \"lubric\": 40963,\n  \"luc\": 7013,\n  \"luc</w>\": 28014,\n  \"luca</w>\": 21053,\n  \"lucas\": 23425,\n  \"lucas</w>\": 10225,\n  \"lucci</w>\": 45849,\n  \"luce</w>\": 46217,\n  \"lucent</w>\": 41552,\n  \"lucer\": 36042,\n  \"luch\": 36646,\n  \"lucha</w>\": 38449,\n  \"luci\": 8787,\n  \"lucia</w>\": 22290,\n  \"luciano</w>\": 46365,\n  \"lucid</w>\": 44540,\n  \"lucie</w>\": 39461,\n  \"lucifer\": 46224,\n  \"lucifer</w>\": 27687,\n  \"lucille</w>\": 47454,\n  \"lucin\": 27523,\n  \"luck\": 9647,\n  \"luck</w>\": 2820,\n  \"luckiest</w>\": 42469,\n  \"luckily</w>\": 20100,\n  \"lucknow</w>\": 29407,\n  \"lucky\": 20495,\n  \"lucky</w>\": 4133,\n  \"lucrative</w>\": 41485,\n  \"lucy\": 17262,\n  \"lucy</w>\": 10120,\n  \"lud\": 14288,\n  \"lude</w>\": 28755,\n  \"ludo\": 40141,\n  \"ludwig</w>\": 30633,\n  \"lue</w>\": 45199,\n  \"luf\": 25264,\n  \"lufc</w>\": 17818,\n  \"luffy</w>\": 39047,\n  \"lufthan\": 37769,\n  \"lufthansa</w>\": 39145,\n  \"lug</w>\": 45521,\n  \"lugg\": 19673,\n  \"luggage</w>\": 20138,\n  \"luhan</w>\": 20975,\n  \"luigi</w>\": 28444,\n  \"luis\": 25231,\n  \"luis</w>\": 11339,\n  \"luiz</w>\": 39633,\n  \"lujah</w>\": 31639,\n  \"luk</w>\": 21652,\n  \"luka</w>\": 34878,\n  \"lukaku</w>\": 37177,\n  \"lukas</w>\": 37941,\n  \"luke\": 11970,\n  \"luke</w>\": 5652,\n  \"lul\": 20861,\n  \"lulla\": 37019,\n  \"lullaby</w>\": 41676,\n  \"lulu\": 32052,\n  \"lulu</w>\": 26935,\n  \"lum\": 18112,\n  \"lum</w>\": 5997,\n  \"lumb\": 36231,\n  \"lumber\": 27421,\n  \"lumber</w>\": 34692,\n  \"lumi\": 41437,\n  \"lumia</w>\": 31912,\n  \"lumin\": 15867,\n  \"luminous</w>\": 37913,\n  \"lump</w>\": 38704,\n  \"lumpur</w>\": 34411,\n  \"lun\": 3221,\n  \"lun</w>\": 49390,\n  \"luna</w>\": 14425,\n  \"lunar</w>\": 16043,\n  \"lunatic</w>\": 45874,\n  \"lunch\": 10954,\n  \"lunch</w>\": 2772,\n  \"luncheon</w>\": 15104,\n  \"lunches</w>\": 29705,\n  \"lunchtime</w>\": 14330,\n  \"lund\": 30975,\n  \"lund</w>\": 20181,\n  \"lunes</w>\": 35648,\n  \"lung\": 38479,\n  \"lung</w>\": 16271,\n  \"lungs</w>\": 27366,\n  \"lup</w>\": 27413,\n  \"lupita</w>\": 49352,\n  \"lupus</w>\": 36017,\n  \"lur\": 14439,\n  \"lure</w>\": 31376,\n  \"lures</w>\": 46747,\n  \"lurking</w>\": 29941,\n  \"lus</w>\": 7158,\n  \"lusci\": 38004,\n  \"luscious</w>\": 39935,\n  \"lush\": 40382,\n  \"lush</w>\": 16263,\n  \"lust\": 42071,\n  \"lust</w>\": 12662,\n  \"lustre</w>\": 46673,\n  \"luther\": 21848,\n  \"luther</w>\": 17208,\n  \"lutheran</w>\": 27341,\n  \"luton</w>\": 28288,\n  \"luv\": 24726,\n  \"luv</w>\": 8502,\n  \"lux\": 3439,\n  \"lux</w>\": 16704,\n  \"luxe</w>\": 26373,\n  \"luxemb\": 21314,\n  \"luxembour\": 22712,\n  \"luxembourg</w>\": 23949,\n  \"luxu\": 16112,\n  \"luxurious</w>\": 17292,\n  \"luxury\": 12083,\n  \"luxury</w>\": 5247,\n  \"luxurytravel</w>\": 29010,\n  \"luz</w>\": 41008,\n  \"lv\": 10862,\n  \"lv</w>\": 11184,\n  \"lvl</w>\": 31256,\n  \"lw\": 40515,\n  \"lw</w>\": 35115,\n  \"lx</w>\": 30789,\n  \"ly\": 1251,\n  \"ly</w>\": 597,\n  \"lydia</w>\": 24316,\n  \"lyf</w>\": 43688,\n  \"lyfe</w>\": 30787,\n  \"lyft</w>\": 32944,\n  \"lying</w>\": 7175,\n  \"lyk</w>\": 46376,\n  \"lyle</w>\": 36828,\n  \"lym\": 20087,\n  \"lyme</w>\": 31167,\n  \"lymph\": 30073,\n  \"lymphoma</w>\": 37648,\n  \"lyn\": 3957,\n  \"lyn</w>\": 5054,\n  \"lynch\": 31586,\n  \"lynch</w>\": 13560,\n  \"lynd\": 33416,\n  \"lynda</w>\": 42959,\n  \"lyndon</w>\": 48518,\n  \"lynn\": 25303,\n  \"lynn</w>\": 10667,\n  \"lynne</w>\": 26900,\n  \"lynx</w>\": 28941,\n  \"lyon</w>\": 17176,\n  \"lyons</w>\": 29453,\n  \"lyric\": 24366,\n  \"lyric</w>\": 21291,\n  \"lyrical</w>\": 33358,\n  \"lyricist</w>\": 49013,\n  \"lyrics</w>\": 9551,\n  \"lyrix</w>\": 46814,\n  \"lys</w>\": 45054,\n  \"lyte</w>\": 40059,\n  \"lywood</w>\": 4012,\n  \"lz</w>\": 30818,\n  \"lÃ©\": 39641,\n  \"m\": 76,\n  \"m</w>\": 332,\n  \"ma\": 577,\n  \"ma</w>\": 1226,\n  \"maa\": 42774,\n  \"maa</w>\": 21555,\n  \"maan</w>\": 33668,\n  \"maar</w>\": 48927,\n  \"maas\": 43332,\n  \"mab</w>\": 35639,\n  \"mabel</w>\": 47319,\n  \"mable</w>\": 23001,\n  \"mably</w>\": 40082,\n  \"mabu\": 44682,\n  \"mac\": 1961,\n  \"mac</w>\": 4945,\n  \"macar\": 21558,\n  \"macaroni</w>\": 41824,\n  \"macarthur</w>\": 36785,\n  \"macau\": 43984,\n  \"macau</w>\": 33370,\n  \"macbeth</w>\": 36321,\n  \"macbook</w>\": 20617,\n  \"macdonald</w>\": 20315,\n  \"mace</w>\": 44869,\n  \"maced\": 21102,\n  \"macedonia</w>\": 27071,\n  \"macfar\": 45374,\n  \"macfarlane</w>\": 48825,\n  \"mach\": 2637,\n  \"mach</w>\": 35091,\n  \"machado</w>\": 42318,\n  \"mache\": 43220,\n  \"macher</w>\": 29330,\n  \"machi\": 41783,\n  \"machin\": 17972,\n  \"machine\": 11539,\n  \"machine</w>\": 4169,\n  \"machinelearning</w>\": 13621,\n  \"machinery</w>\": 21858,\n  \"machines</w>\": 11108,\n  \"machining</w>\": 45562,\n  \"macho</w>\": 43977,\n  \"macht</w>\": 45225,\n  \"macin\": 36533,\n  \"mack\": 8590,\n  \"mack</w>\": 12145,\n  \"mackay</w>\": 32497,\n  \"macken\": 48057,\n  \"mackenzie</w>\": 22351,\n  \"mackerel</w>\": 35002,\n  \"mackin\": 26010,\n  \"macklemore</w>\": 41758,\n  \"macle\": 33843,\n  \"maclean</w>\": 47137,\n  \"macleod</w>\": 43684,\n  \"macmillan\": 36364,\n  \"macmillan</w>\": 35191,\n  \"macon</w>\": 35818,\n  \"macos</w>\": 45469,\n  \"macqu\": 38365,\n  \"macquarie</w>\": 40858,\n  \"macro\": 20891,\n  \"macro</w>\": 16626,\n  \"macron</w>\": 24859,\n  \"macs</w>\": 46548,\n  \"macy</w>\": 17113,\n  \"macys</w>\": 47652,\n  \"mad\": 2740,\n  \"mad</w>\": 3843,\n  \"mada</w>\": 37799,\n  \"madagas\": 24758,\n  \"madagascar</w>\": 25744,\n  \"madam\": 33634,\n  \"madam</w>\": 27538,\n  \"madame</w>\": 23507,\n  \"madd\": 31717,\n  \"madden</w>\": 19093,\n  \"maddie\": 39959,\n  \"maddie</w>\": 18875,\n  \"maddow</w>\": 32644,\n  \"maddy</w>\": 31734,\n  \"made\": 5388,\n  \"made</w>\": 1105,\n  \"madein\": 13670,\n  \"madeira</w>\": 33810,\n  \"madel\": 34532,\n  \"madele\": 29831,\n  \"madeleine</w>\": 33264,\n  \"madeline</w>\": 33905,\n  \"madewith\": 28627,\n  \"madewithunity</w>\": 43190,\n  \"madhu\": 23000,\n  \"madhuri\": 38346,\n  \"madhuridixit</w>\": 43889,\n  \"madhya</w>\": 48302,\n  \"madi\": 6527,\n  \"madi</w>\": 27282,\n  \"madison\": 24798,\n  \"madison</w>\": 8791,\n  \"madmen</w>\": 45452,\n  \"madness</w>\": 8755,\n  \"madon\": 44852,\n  \"madonna</w>\": 14137,\n  \"madra\": 27416,\n  \"madras</w>\": 42046,\n  \"madre</w>\": 42130,\n  \"madri\": 5529,\n  \"madrid</w>\": 5909,\n  \"mads</w>\": 41201,\n  \"madu\": 34913,\n  \"madurai</w>\": 49159,\n  \"maduro</w>\": 32912,\n  \"mae\": 16898,\n  \"mae</w>\": 17339,\n  \"maer\": 47088,\n  \"maestro</w>\": 24140,\n  \"mafi\": 47164,\n  \"mafia</w>\": 14890,\n  \"mag\": 1191,\n  \"mag</w>\": 4508,\n  \"maga</w>\": 8694,\n  \"magaz\": 2974,\n  \"magazine</w>\": 3113,\n  \"magazines</w>\": 22253,\n  \"magdal\": 29673,\n  \"mage\": 46568,\n  \"mage</w>\": 10923,\n  \"magee</w>\": 43872,\n  \"magenta</w>\": 38091,\n  \"magento</w>\": 42442,\n  \"mages</w>\": 31059,\n  \"maggi\": 29611,\n  \"maggie\": 41443,\n  \"maggie</w>\": 14524,\n  \"maggio</w>\": 49087,\n  \"magh\": 45555,\n  \"magi\": 19270,\n  \"magic\": 13061,\n  \"magic</w>\": 3778,\n  \"magical\": 36408,\n  \"magical</w>\": 7823,\n  \"magician</w>\": 26368,\n  \"magin\": 42678,\n  \"maging</w>\": 41310,\n  \"magn\": 10290,\n  \"magna</w>\": 34076,\n  \"magne\": 9921,\n  \"magnesium</w>\": 36379,\n  \"magnet</w>\": 18240,\n  \"magnetic</w>\": 13838,\n  \"magnets</w>\": 33030,\n  \"magni\": 24297,\n  \"magnific\": 9725,\n  \"magnificent</w>\": 10724,\n  \"magnitude</w>\": 22955,\n  \"magno\": 21184,\n  \"magnolia</w>\": 27123,\n  \"magnu\": 45198,\n  \"magnum</w>\": 23496,\n  \"magnus</w>\": 26275,\n  \"magpie</w>\": 45973,\n  \"mags</w>\": 31021,\n  \"maguire</w>\": 26470,\n  \"mah\": 7206,\n  \"mah</w>\": 10801,\n  \"maha\": 12237,\n  \"maha</w>\": 33983,\n  \"mahal</w>\": 22301,\n  \"mahan\": 45191,\n  \"mahar\": 11635,\n  \"maharaj</w>\": 38488,\n  \"maharashtra</w>\": 19328,\n  \"mahat\": 32434,\n  \"mahatma</w>\": 40530,\n  \"mahe\": 15756,\n  \"maher</w>\": 29826,\n  \"mahesh\": 33448,\n  \"mahesh</w>\": 22095,\n  \"mahi\": 32529,\n  \"mahi</w>\": 38659,\n  \"mahin\": 24113,\n  \"mahindra</w>\": 31285,\n  \"mahmoud</w>\": 41361,\n  \"mahog\": 30804,\n  \"mahogany</w>\": 33084,\n  \"mahon\": 45864,\n  \"mahon</w>\": 20371,\n  \"mahone</w>\": 26634,\n  \"mai\": 7138,\n  \"mai</w>\": 14595,\n  \"maia</w>\": 46585,\n  \"maid\": 23148,\n  \"maid</w>\": 10226,\n  \"maidan</w>\": 37346,\n  \"maiden\": 37011,\n  \"maiden</w>\": 13809,\n  \"maids</w>\": 27305,\n  \"maidstone</w>\": 44395,\n  \"mail\": 10478,\n  \"mail</w>\": 2614,\n  \"mailbox</w>\": 31482,\n  \"mailed</w>\": 42314,\n  \"mailing</w>\": 26680,\n  \"mailonline</w>\": 26021,\n  \"mails</w>\": 45213,\n  \"main\": 3904,\n  \"main</w>\": 2623,\n  \"maine\": 18639,\n  \"maine</w>\": 7836,\n  \"mained\": 15609,\n  \"mainedcm</w>\": 15845,\n  \"mainland</w>\": 27629,\n  \"mainly</w>\": 15280,\n  \"mains</w>\": 33656,\n  \"mainst\": 42102,\n  \"mainstream</w>\": 18034,\n  \"maintain</w>\": 12954,\n  \"maintained</w>\": 26665,\n  \"maintaining</w>\": 21964,\n  \"maintains</w>\": 38335,\n  \"mainten\": 9399,\n  \"maintenance</w>\": 9610,\n  \"mais</w>\": 28153,\n  \"maisie</w>\": 47355,\n  \"maison\": 37065,\n  \"maison</w>\": 27626,\n  \"mait\": 26387,\n  \"maize</w>\": 35386,\n  \"maj\": 2948,\n  \"maj</w>\": 28723,\n  \"maja</w>\": 47498,\n  \"maje\": 9852,\n  \"majestic</w>\": 15335,\n  \"majesty</w>\": 21188,\n  \"major\": 8008,\n  \"major</w>\": 3350,\n  \"majority</w>\": 10508,\n  \"majors</w>\": 23597,\n  \"mak\": 11271,\n  \"mak</w>\": 19253,\n  \"makar\": 42242,\n  \"makati</w>\": 39402,\n  \"make\": 3232,\n  \"make</w>\": 1078,\n  \"makeaw\": 45859,\n  \"makeinindia</w>\": 42739,\n  \"makeit\": 26308,\n  \"maken\": 47093,\n  \"makeover</w>\": 17926,\n  \"maker\": 15196,\n  \"maker</w>\": 4836,\n  \"makers</w>\": 6577,\n  \"makerspace</w>\": 42400,\n  \"makes</w>\": 2088,\n  \"makeshift</w>\": 43274,\n  \"makeu\": 41707,\n  \"makeup\": 26402,\n  \"makeup</w>\": 5853,\n  \"makeyourown\": 34090,\n  \"makeyourownlane</w>\": 34823,\n  \"maki</w>\": 34514,\n  \"makin\": 43096,\n  \"makin</w>\": 22407,\n  \"making\": 17976,\n  \"making</w>\": 1665,\n  \"makk\": 39852,\n  \"maknae</w>\": 44118,\n  \"mako</w>\": 49061,\n  \"mal\": 1662,\n  \"mal</w>\": 3796,\n  \"mala</w>\": 28290,\n  \"malade</w>\": 36928,\n  \"malaga</w>\": 35395,\n  \"malala</w>\": 41137,\n  \"malam</w>\": 48956,\n  \"malaria</w>\": 24929,\n  \"malawi</w>\": 23405,\n  \"malay\": 5323,\n  \"malay</w>\": 42430,\n  \"malayalam</w>\": 34860,\n  \"malaysi\": 39668,\n  \"malaysia</w>\": 8146,\n  \"malaysian</w>\": 21136,\n  \"malbec</w>\": 47741,\n  \"malcol\": 12645,\n  \"malcolm</w>\": 14139,\n  \"maldives</w>\": 16795,\n  \"male\": 11326,\n  \"male</w>\": 2801,\n  \"males</w>\": 14426,\n  \"malhotra</w>\": 28866,\n  \"mali\": 6701,\n  \"mali</w>\": 22669,\n  \"malia</w>\": 46714,\n  \"malibu</w>\": 21723,\n  \"malicious</w>\": 42147,\n  \"malign\": 41122,\n  \"malik</w>\": 11394,\n  \"mall\": 10984,\n  \"mall</w>\": 6220,\n  \"mallorca</w>\": 28082,\n  \"mallory</w>\": 38968,\n  \"malls</w>\": 36447,\n  \"malm\": 44071,\n  \"malnutrition</w>\": 41153,\n  \"malo</w>\": 43518,\n  \"malone</w>\": 19852,\n  \"maloney</w>\": 45897,\n  \"mals</w>\": 25370,\n  \"malt</w>\": 21688,\n  \"malta</w>\": 16989,\n  \"maltese</w>\": 39838,\n  \"malvern</w>\": 39356,\n  \"malware</w>\": 24153,\n  \"mam\": 4404,\n  \"mam</w>\": 17778,\n  \"mama</w>\": 7133,\n  \"mamamoo</w>\": 36012,\n  \"mamas</w>\": 42395,\n  \"mamba</w>\": 44189,\n  \"mament</w>\": 45690,\n  \"mami</w>\": 43858,\n  \"mamma</w>\": 34893,\n  \"mammal</w>\": 33385,\n  \"mammals</w>\": 31987,\n  \"mammoth</w>\": 28022,\n  \"man\": 723,\n  \"man</w>\": 786,\n  \"mana\": 29467,\n  \"mana</w>\": 15837,\n  \"manafort</w>\": 40108,\n  \"manag\": 1830,\n  \"manage</w>\": 9770,\n  \"managed</w>\": 7928,\n  \"management</w>\": 3319,\n  \"manager</w>\": 3898,\n  \"managerial</w>\": 44261,\n  \"managers</w>\": 12853,\n  \"manages</w>\": 29699,\n  \"managing</w>\": 10892,\n  \"manas\": 44188,\n  \"manatee</w>\": 46558,\n  \"mance</w>\": 2324,\n  \"manchester\": 24424,\n  \"manchester</w>\": 4651,\n  \"mancini</w>\": 47681,\n  \"mancity</w>\": 31538,\n  \"mancrush\": 36945,\n  \"mancrushmonday</w>\": 39307,\n  \"mand\": 4325,\n  \"mand</w>\": 27244,\n  \"mandala</w>\": 41106,\n  \"mandarin</w>\": 26455,\n  \"mandate</w>\": 26228,\n  \"mandatory</w>\": 19934,\n  \"mandel\": 34960,\n  \"mandela</w>\": 16280,\n  \"mandi\": 38961,\n  \"mandir</w>\": 35815,\n  \"mando</w>\": 34006,\n  \"mands</w>\": 12340,\n  \"mandu</w>\": 31440,\n  \"mandy\": 41505,\n  \"mandy</w>\": 24302,\n  \"mane\": 44471,\n  \"mane</w>\": 16044,\n  \"maneu\": 33216,\n  \"mang\": 25616,\n  \"mang</w>\": 31096,\n  \"manga</w>\": 11873,\n  \"mangal\": 43027,\n  \"manger</w>\": 48251,\n  \"mango\": 43831,\n  \"mango</w>\": 13962,\n  \"mangrove</w>\": 47180,\n  \"manhatt\": 10152,\n  \"manhattan</w>\": 10961,\n  \"mani\": 5654,\n  \"mani</w>\": 10718,\n  \"mania</w>\": 8435,\n  \"maniac</w>\": 31814,\n  \"maniacs</w>\": 41444,\n  \"manian</w>\": 40077,\n  \"manic\": 23017,\n  \"manic</w>\": 37825,\n  \"manicure</w>\": 33637,\n  \"manife\": 14379,\n  \"manifest</w>\": 34422,\n  \"manifestation</w>\": 48348,\n  \"manifesto</w>\": 20907,\n  \"manil\": 38827,\n  \"manila</w>\": 10969,\n  \"manipu\": 40261,\n  \"manipul\": 19237,\n  \"manipulation</w>\": 30277,\n  \"manipur</w>\": 47757,\n  \"manish\": 41759,\n  \"manish</w>\": 44720,\n  \"manit\": 15693,\n  \"manitoba</w>\": 20342,\n  \"manjaro</w>\": 41489,\n  \"mankind</w>\": 24155,\n  \"manly</w>\": 25194,\n  \"mann\": 19396,\n  \"mann</w>\": 4783,\n  \"manne\": 30160,\n  \"manned</w>\": 26139,\n  \"mannequin</w>\": 43388,\n  \"manner</w>\": 20700,\n  \"manners</w>\": 31693,\n  \"manning</w>\": 15996,\n  \"manny\": 37054,\n  \"manny</w>\": 20933,\n  \"mano\": 15753,\n  \"mano</w>\": 24016,\n  \"manoj</w>\": 41146,\n  \"manor\": 41830,\n  \"manor</w>\": 13614,\n  \"mans\": 28422,\n  \"mans</w>\": 7746,\n  \"mansfield</w>\": 25543,\n  \"manship</w>\": 15460,\n  \"mansion</w>\": 13404,\n  \"manslaughter</w>\": 48632,\n  \"manson</w>\": 26715,\n  \"mant\": 25122,\n  \"mant</w>\": 27037,\n  \"manta</w>\": 41431,\n  \"mantis</w>\": 39946,\n  \"mantle</w>\": 22159,\n  \"mantra</w>\": 25162,\n  \"manu\": 3404,\n  \"manu</w>\": 25799,\n  \"manual</w>\": 12268,\n  \"manuel\": 29171,\n  \"manuel</w>\": 9567,\n  \"manufac\": 5105,\n  \"manufacture</w>\": 27741,\n  \"manufactured</w>\": 24010,\n  \"manufacturer</w>\": 15668,\n  \"manufacturers</w>\": 18763,\n  \"manufacturing</w>\": 8386,\n  \"manure</w>\": 47907,\n  \"manus</w>\": 28181,\n  \"manuscript</w>\": 24365,\n  \"manuscripts</w>\": 40765,\n  \"manutd</w>\": 20994,\n  \"many\": 28484,\n  \"many</w>\": 1346,\n  \"manziel</w>\": 40637,\n  \"mao\": 47447,\n  \"mao</w>\": 25605,\n  \"maori</w>\": 43400,\n  \"map\": 25180,\n  \"map</w>\": 3923,\n  \"maple\": 21980,\n  \"maple</w>\": 10570,\n  \"mapleleafs</w>\": 41257,\n  \"mapoli</w>\": 28768,\n  \"mapp</w>\": 36894,\n  \"mapped</w>\": 41596,\n  \"mapping</w>\": 15231,\n  \"maps</w>\": 8765,\n  \"mapu\": 42082,\n  \"mar\": 675,\n  \"mar</w>\": 3091,\n  \"mara</w>\": 15655,\n  \"marais</w>\": 47913,\n  \"maran\": 44732,\n  \"marath\": 16274,\n  \"marathi</w>\": 34102,\n  \"marathon\": 40764,\n  \"marathon</w>\": 5910,\n  \"marau\": 38475,\n  \"marbella</w>\": 36182,\n  \"marble\": 45429,\n  \"marble</w>\": 13071,\n  \"marbles</w>\": 42931,\n  \"marc\": 14054,\n  \"marc</w>\": 9075,\n  \"marca</w>\": 38242,\n  \"marcel\": 17726,\n  \"marcel</w>\": 24652,\n  \"marcelo</w>\": 35939,\n  \"march\": 10638,\n  \"march</w>\": 2227,\n  \"marche</w>\": 36173,\n  \"marched</w>\": 37976,\n  \"marches</w>\": 38249,\n  \"marchfor\": 31721,\n  \"marching</w>\": 15082,\n  \"marchmadness</w>\": 28555,\n  \"marci\": 36698,\n  \"marcia</w>\": 41075,\n  \"marck</w>\": 47733,\n  \"marco\": 24719,\n  \"marco</w>\": 10924,\n  \"marcor\": 39945,\n  \"marcorubio</w>\": 41143,\n  \"marcos</w>\": 21696,\n  \"marcu\": 20760,\n  \"marcus\": 48955,\n  \"marcus</w>\": 9895,\n  \"mardi\": 39728,\n  \"mardi</w>\": 29229,\n  \"mardigras</w>\": 43343,\n  \"mare\": 26512,\n  \"mare</w>\": 8870,\n  \"mares</w>\": 19724,\n  \"marg</w>\": 44014,\n  \"margar\": 16838,\n  \"margare\": 10232,\n  \"margaret</w>\": 12185,\n  \"margarita</w>\": 25958,\n  \"margaritas</w>\": 42679,\n  \"margate</w>\": 37428,\n  \"margin\": 19464,\n  \"margin</w>\": 21357,\n  \"marginal</w>\": 38320,\n  \"margins</w>\": 33763,\n  \"margot</w>\": 37144,\n  \"mari\": 2603,\n  \"mari</w>\": 19322,\n  \"maria\": 41109,\n  \"maria</w>\": 6595,\n  \"mariachi</w>\": 44299,\n  \"mariah\": 31214,\n  \"mariah</w>\": 24789,\n  \"mariahcarey</w>\": 36538,\n  \"marian\": 41129,\n  \"marian</w>\": 24677,\n  \"mariana</w>\": 44224,\n  \"marianne</w>\": 32214,\n  \"mariano</w>\": 43988,\n  \"marie\": 20657,\n  \"marie</w>\": 7864,\n  \"marietta</w>\": 46634,\n  \"marig\": 41002,\n  \"marijuana</w>\": 9864,\n  \"maril\": 14611,\n  \"marilyn\": 38959,\n  \"marilyn</w>\": 18489,\n  \"marin\": 8910,\n  \"marin</w>\": 23992,\n  \"marina</w>\": 12060,\n  \"marinated</w>\": 33406,\n  \"marine\": 20674,\n  \"marine</w>\": 5746,\n  \"mariner</w>\": 39972,\n  \"mariners</w>\": 19086,\n  \"marines</w>\": 15018,\n  \"marino</w>\": 30878,\n  \"mario\": 39176,\n  \"mario</w>\": 7600,\n  \"marion\": 37765,\n  \"marion</w>\": 18397,\n  \"maris\": 21512,\n  \"maris</w>\": 33093,\n  \"marisa</w>\": 42938,\n  \"mariska</w>\": 44703,\n  \"marissa</w>\": 31219,\n  \"marist</w>\": 48223,\n  \"mariti\": 13124,\n  \"maritime</w>\": 14331,\n  \"marj\": 38639,\n  \"mark\": 3805,\n  \"mark</w>\": 2110,\n  \"marke\": 2399,\n  \"marked</w>\": 12360,\n  \"marker</w>\": 18170,\n  \"markers</w>\": 23664,\n  \"market\": 11614,\n  \"market</w>\": 2196,\n  \"marketer</w>\": 33482,\n  \"marketers</w>\": 23682,\n  \"marketing\": 19535,\n  \"marketing</w>\": 2905,\n  \"marketplace</w>\": 18241,\n  \"markets</w>\": 7292,\n  \"markham</w>\": 39817,\n  \"marking</w>\": 14705,\n  \"markings</w>\": 41046,\n  \"markle</w>\": 32672,\n  \"marko</w>\": 38338,\n  \"marks</w>\": 5466,\n  \"markus</w>\": 33725,\n  \"marl\": 24922,\n  \"marlborough</w>\": 43515,\n  \"marlene</w>\": 45117,\n  \"marley</w>\": 16504,\n  \"marlin</w>\": 34275,\n  \"marlins</w>\": 23309,\n  \"marlon</w>\": 32995,\n  \"marmalade</w>\": 39068,\n  \"marnock</w>\": 48305,\n  \"maro\": 27029,\n  \"maroon</w>\": 20501,\n  \"marqu\": 20704,\n  \"marque\": 13012,\n  \"marquee</w>\": 27725,\n  \"marquette</w>\": 37624,\n  \"marquez</w>\": 27317,\n  \"marquis</w>\": 33530,\n  \"marr</w>\": 32871,\n  \"marrake\": 37125,\n  \"marrakech</w>\": 39006,\n  \"marri\": 3839,\n  \"marriage\": 38047,\n  \"marriage</w>\": 7040,\n  \"marriages</w>\": 38190,\n  \"married</w>\": 6791,\n  \"marries</w>\": 46283,\n  \"marriott</w>\": 19211,\n  \"marrow</w>\": 31030,\n  \"marry</w>\": 13288,\n  \"marrying</w>\": 40507,\n  \"mars\": 41469,\n  \"mars</w>\": 7496,\n  \"marsden</w>\": 43344,\n  \"marse\": 26577,\n  \"marseille</w>\": 30365,\n  \"marsh\": 9237,\n  \"marsh</w>\": 13505,\n  \"marsha</w>\": 21491,\n  \"marshal</w>\": 26608,\n  \"marshall\": 30939,\n  \"marshall</w>\": 9811,\n  \"marshals</w>\": 44175,\n  \"marshes</w>\": 43450,\n  \"marshmal\": 21069,\n  \"marshmallow</w>\": 28530,\n  \"marshmallows</w>\": 39471,\n  \"mart\": 2348,\n  \"mart</w>\": 7772,\n  \"marta</w>\": 32858,\n  \"martens</w>\": 43211,\n  \"marth\": 34493,\n  \"martha</w>\": 16427,\n  \"marti\": 20577,\n  \"martial</w>\": 17088,\n  \"martialarts</w>\": 35895,\n  \"martian</w>\": 30214,\n  \"martin\": 6929,\n  \"martin</w>\": 3690,\n  \"martina</w>\": 34393,\n  \"martinez</w>\": 13913,\n  \"marting\": 47570,\n  \"martini</w>\": 22199,\n  \"martino</w>\": 41675,\n  \"martins</w>\": 30569,\n  \"marty\": 9926,\n  \"marty</w>\": 17169,\n  \"martyn</w>\": 44075,\n  \"martyr\": 36155,\n  \"martyr</w>\": 26067,\n  \"martyrdom</w>\": 43110,\n  \"martyred</w>\": 39114,\n  \"martyrs</w>\": 24707,\n  \"maru\": 37413,\n  \"maru</w>\": 31838,\n  \"marvel\": 13835,\n  \"marvel</w>\": 5996,\n  \"marvelcomics</w>\": 46897,\n  \"marvell\": 26576,\n  \"marvellous</w>\": 28402,\n  \"marvelous</w>\": 25487,\n  \"marvin</w>\": 19675,\n  \"marx\": 30559,\n  \"marx</w>\": 26001,\n  \"marxist</w>\": 45205,\n  \"mary\": 5146,\n  \"mary</w>\": 2676,\n  \"maryam\": 33636,\n  \"maryam</w>\": 36393,\n  \"maryland</w>\": 11379,\n  \"marys\": 40905,\n  \"marys</w>\": 40228,\n  \"mas\": 5226,\n  \"mas</w>\": 1412,\n  \"masa\": 24995,\n  \"masa</w>\": 41868,\n  \"masala</w>\": 31483,\n  \"masc\": 23564,\n  \"mascar\": 46984,\n  \"mascara</w>\": 31635,\n  \"mascot</w>\": 13983,\n  \"mascots</w>\": 43266,\n  \"mascul\": 25589,\n  \"masculine</w>\": 48269,\n  \"masculinity</w>\": 40465,\n  \"mase\": 49128,\n  \"maser\": 25798,\n  \"maserati</w>\": 30442,\n  \"mash\": 12317,\n  \"mash</w>\": 15680,\n  \"mashable</w>\": 41026,\n  \"mashed</w>\": 27395,\n  \"mashup</w>\": 27079,\n  \"masi\": 35965,\n  \"masjid</w>\": 31420,\n  \"mask\": 19262,\n  \"mask</w>\": 8306,\n  \"masked</w>\": 25757,\n  \"masking</w>\": 47046,\n  \"masks</w>\": 19055,\n  \"maslow</w>\": 44359,\n  \"mason\": 17424,\n  \"mason</w>\": 9699,\n  \"masonic</w>\": 36491,\n  \"masonry</w>\": 30764,\n  \"masons</w>\": 37195,\n  \"masqu\": 26593,\n  \"masquer\": 29604,\n  \"masquerade</w>\": 36944,\n  \"mass\": 4636,\n  \"mass</w>\": 4854,\n  \"massach\": 14484,\n  \"massachuse\": 14577,\n  \"massachusetts</w>\": 14756,\n  \"massacre</w>\": 14696,\n  \"massage</w>\": 13055,\n  \"masse\": 41735,\n  \"masses</w>\": 22978,\n  \"massey</w>\": 29868,\n  \"massi\": 17239,\n  \"massimo</w>\": 45821,\n  \"massive</w>\": 4818,\n  \"massively</w>\": 34297,\n  \"mast\": 45916,\n  \"mast</w>\": 27920,\n  \"master\": 4534,\n  \"master</w>\": 3498,\n  \"mastercard</w>\": 40542,\n  \"masterchef</w>\": 34809,\n  \"masterclass</w>\": 17529,\n  \"mastered</w>\": 32616,\n  \"masterful</w>\": 46823,\n  \"mastering</w>\": 28326,\n  \"mastermind</w>\": 34029,\n  \"masterpiece</w>\": 12066,\n  \"masterpieces</w>\": 37596,\n  \"masters</w>\": 6913,\n  \"mastery</w>\": 34800,\n  \"mastiff</w>\": 42311,\n  \"maswar\": 47887,\n  \"mat\": 905,\n  \"mat</w>\": 9063,\n  \"mata</w>\": 17270,\n  \"match\": 7733,\n  \"match</w>\": 2439,\n  \"matcha</w>\": 32433,\n  \"matchday</w>\": 15947,\n  \"matched</w>\": 17792,\n  \"matches</w>\": 8609,\n  \"matching</w>\": 11840,\n  \"matchup</w>\": 19355,\n  \"matchups</w>\": 49162,\n  \"mate\": 6137,\n  \"mate</w>\": 2936,\n  \"mated</w>\": 33813,\n  \"mateo</w>\": 34991,\n  \"mater</w>\": 23724,\n  \"materi\": 7084,\n  \"material</w>\": 7118,\n  \"materials</w>\": 8161,\n  \"maternal</w>\": 26131,\n  \"maternity</w>\": 23894,\n  \"mates</w>\": 5817,\n  \"math\": 13277,\n  \"math</w>\": 6025,\n  \"mathe\": 8725,\n  \"mathemat\": 11901,\n  \"mathematical</w>\": 25609,\n  \"mathematician</w>\": 41036,\n  \"mathematics</w>\": 20113,\n  \"mathew</w>\": 36333,\n  \"mathews</w>\": 37120,\n  \"mathi\": 23014,\n  \"mathieu</w>\": 40417,\n  \"maths</w>\": 14763,\n  \"mati\": 12716,\n  \"mati</w>\": 32268,\n  \"matic\": 36859,\n  \"matic</w>\": 7900,\n  \"matically</w>\": 38282,\n  \"matics</w>\": 23634,\n  \"matil\": 26751,\n  \"matilda</w>\": 36308,\n  \"matin</w>\": 44849,\n  \"matinee</w>\": 38525,\n  \"mating</w>\": 34346,\n  \"mation</w>\": 11701,\n  \"matisse</w>\": 43446,\n  \"mato\": 13127,\n  \"matologist</w>\": 48842,\n  \"matology</w>\": 27940,\n  \"matory</w>\": 25519,\n  \"matri\": 27041,\n  \"matrix</w>\": 18078,\n  \"mats</w>\": 22259,\n  \"matsu\": 30242,\n  \"matt\": 7972,\n  \"matt</w>\": 3972,\n  \"mattb\": 42791,\n  \"matte\": 31237,\n  \"matte</w>\": 19771,\n  \"mattel</w>\": 35365,\n  \"matteo</w>\": 33120,\n  \"matter\": 30471,\n  \"matter</w>\": 3828,\n  \"matters</w>\": 5708,\n  \"matth\": 41846,\n  \"matthe\": 5116,\n  \"matthew\": 17588,\n  \"matthew</w>\": 7008,\n  \"matthews</w>\": 16739,\n  \"matthi\": 29853,\n  \"matthias</w>\": 45104,\n  \"matti\": 39840,\n  \"mattress</w>\": 23438,\n  \"matty\": 31233,\n  \"matty</w>\": 29176,\n  \"matu\": 40616,\n  \"matur\": 22897,\n  \"mature</w>\": 14417,\n  \"maturity</w>\": 28047,\n  \"mau\": 8134,\n  \"mau</w>\": 23033,\n  \"maui</w>\": 20463,\n  \"maul\": 30725,\n  \"maur\": 10574,\n  \"maure\": 25191,\n  \"maureen</w>\": 31723,\n  \"maurice</w>\": 20200,\n  \"mauricio</w>\": 39066,\n  \"mauriti\": 28406,\n  \"mauritius</w>\": 29305,\n  \"mauro</w>\": 41691,\n  \"mav\": 25697,\n  \"maver\": 16700,\n  \"maverick</w>\": 27425,\n  \"mavericks</w>\": 30092,\n  \"mavs</w>\": 30665,\n  \"maw\": 39351,\n  \"maw</w>\": 42271,\n  \"mawards</w>\": 37682,\n  \"max\": 4898,\n  \"max</w>\": 3902,\n  \"maxi\": 8554,\n  \"maxi</w>\": 23266,\n  \"maxim\": 19892,\n  \"maxim</w>\": 38574,\n  \"maximize</w>\": 28673,\n  \"maximum</w>\": 13162,\n  \"maximus</w>\": 44312,\n  \"maxine</w>\": 38468,\n  \"maxwell</w>\": 19611,\n  \"maxx</w>\": 37466,\n  \"may\": 1686,\n  \"may</w>\": 1270,\n  \"maya\": 45783,\n  \"maya</w>\": 12987,\n  \"mayan</w>\": 37952,\n  \"maybe</w>\": 3746,\n  \"mayday</w>\": 29957,\n  \"mayer</w>\": 21196,\n  \"mayfair</w>\": 35171,\n  \"mayfield</w>\": 33933,\n  \"mayhem</w>\": 21502,\n  \"maymay\": 26600,\n  \"maymay</w>\": 33853,\n  \"maymayentrata</w>\": 30480,\n  \"maynard</w>\": 32487,\n  \"mayne</w>\": 35771,\n  \"mayo\": 22449,\n  \"mayo</w>\": 11280,\n  \"mayor\": 15429,\n  \"mayor</w>\": 4676,\n  \"mayoral</w>\": 28983,\n  \"mayorof\": 43533,\n  \"mayors</w>\": 28501,\n  \"mays</w>\": 35445,\n  \"maythe</w>\": 42281,\n  \"mayward\": 45751,\n  \"mayward</w>\": 23519,\n  \"mayweather</w>\": 22774,\n  \"maz\": 9177,\n  \"maz</w>\": 36215,\n  \"mazda</w>\": 18506,\n  \"maze</w>\": 21988,\n  \"mazz\": 29439,\n  \"maÃ±\": 37059,\n  \"maÃ±ana</w>\": 39354,\n  \"mb\": 758,\n  \"mb</w>\": 3996,\n  \"mba</w>\": 8329,\n  \"mban</w>\": 46685,\n  \"mbar\": 44452,\n  \"mbb</w>\": 10736,\n  \"mbc</w>\": 20137,\n  \"mbe\": 38395,\n  \"mbe</w>\": 27004,\n  \"mber\": 5467,\n  \"mber</w>\": 1034,\n  \"mberg</w>\": 26372,\n  \"mbers</w>\": 5443,\n  \"mbi</w>\": 45347,\n  \"mble\": 20310,\n  \"mble</w>\": 4756,\n  \"mbles</w>\": 28693,\n  \"mbling</w>\": 28604,\n  \"mbo\": 25733,\n  \"mbo</w>\": 11319,\n  \"mbps</w>\": 44896,\n  \"mbs</w>\": 10370,\n  \"mbta</w>\": 38979,\n  \"mbu</w>\": 42228,\n  \"mbuhari</w>\": 36752,\n  \"mc\": 1278,\n  \"mc</w>\": 4126,\n  \"mca\": 40570,\n  \"mca</w>\": 14635,\n  \"mcal\": 28663,\n  \"mcar\": 43776,\n  \"mcbride</w>\": 35080,\n  \"mcc</w>\": 21192,\n  \"mccabe</w>\": 37628,\n  \"mccaf\": 47385,\n  \"mccain</w>\": 20397,\n  \"mccall</w>\": 34844,\n  \"mccann</w>\": 27140,\n  \"mccar\": 9570,\n  \"mccarthy</w>\": 16974,\n  \"mccartney</w>\": 19958,\n  \"mccl\": 24709,\n  \"mccla\": 43672,\n  \"mccle\": 40139,\n  \"mcclure</w>\": 44945,\n  \"mcco\": 46152,\n  \"mccon\": 32638,\n  \"mccor\": 23057,\n  \"mccormack</w>\": 45164,\n  \"mccormick</w>\": 39088,\n  \"mccoy</w>\": 20218,\n  \"mccr\": 41996,\n  \"mccre\": 25393,\n  \"mccul\": 38833,\n  \"mccull\": 41782,\n  \"mcd</w>\": 28930,\n  \"mcder\": 27355,\n  \"mcdermott</w>\": 34504,\n  \"mcdon\": 12171,\n  \"mcdonald</w>\": 10741,\n  \"mcdonalds</w>\": 17674,\n  \"mcdonnell</w>\": 34360,\n  \"mcdowell</w>\": 34119,\n  \"mce\": 26864,\n  \"mcel\": 28752,\n  \"mcen\": 47423,\n  \"mcfad\": 36976,\n  \"mcfadden</w>\": 42105,\n  \"mcfar\": 29020,\n  \"mcfarlane</w>\": 47174,\n  \"mcfc</w>\": 16416,\n  \"mcfly</w>\": 38211,\n  \"mcg\": 42507,\n  \"mcg</w>\": 27995,\n  \"mcgee</w>\": 29223,\n  \"mcgill\": 46524,\n  \"mcgill</w>\": 35511,\n  \"mcgin\": 29596,\n  \"mcgowan</w>\": 40462,\n  \"mcgr\": 25169,\n  \"mcgra\": 29367,\n  \"mcgrath</w>\": 28759,\n  \"mcgraw</w>\": 40950,\n  \"mcgregor</w>\": 19642,\n  \"mcgu\": 34294,\n  \"mcguinness</w>\": 45299,\n  \"mcguire</w>\": 32635,\n  \"mci\": 46212,\n  \"mci</w>\": 45491,\n  \"mcil\": 30481,\n  \"mcin\": 18770,\n  \"mcintosh</w>\": 45353,\n  \"mcintyre</w>\": 33369,\n  \"mck\": 6781,\n  \"mckay</w>\": 33611,\n  \"mcke\": 27424,\n  \"mckee</w>\": 43529,\n  \"mcken\": 42619,\n  \"mckenna</w>\": 24924,\n  \"mckenzie</w>\": 25502,\n  \"mckin\": 15437,\n  \"mckinley</w>\": 39891,\n  \"mckinney</w>\": 33554,\n  \"mckinnon</w>\": 48736,\n  \"mckinsey</w>\": 48143,\n  \"mcl\": 49021,\n  \"mcla\": 12565,\n  \"mclaren\": 37381,\n  \"mclaren</w>\": 16789,\n  \"mclau\": 32285,\n  \"mclaughlin</w>\": 35346,\n  \"mcle\": 25299,\n  \"mclean</w>\": 28666,\n  \"mcleod</w>\": 40259,\n  \"mcm</w>\": 12251,\n  \"mcmahon</w>\": 24026,\n  \"mcmaster</w>\": 42703,\n  \"mcmillan</w>\": 45603,\n  \"mcn\": 42919,\n  \"mcnam\": 32682,\n  \"mcnamara</w>\": 37506,\n  \"mcne\": 42545,\n  \"mco</w>\": 33723,\n  \"mcqueen</w>\": 22544,\n  \"mcr\": 29884,\n  \"mcr</w>\": 16966,\n  \"mcs</w>\": 27020,\n  \"mcu</w>\": 30403,\n  \"md\": 8637,\n  \"md</w>\": 4732,\n  \"mdc\": 38773,\n  \"mdc</w>\": 41761,\n  \"mds</w>\": 48746,\n  \"mdt</w>\": 40822,\n  \"me\": 613,\n  \"me</w>\": 614,\n  \"mea\": 46045,\n  \"mea</w>\": 17711,\n  \"mead\": 12134,\n  \"mead</w>\": 21567,\n  \"meade</w>\": 37218,\n  \"meado\": 16402,\n  \"meadow\": 25213,\n  \"meadow</w>\": 17195,\n  \"meadows</w>\": 17178,\n  \"meal\": 29662,\n  \"meal</w>\": 5478,\n  \"meals</w>\": 11229,\n  \"mean\": 4189,\n  \"mean</w>\": 3450,\n  \"meand\": 48015,\n  \"meaning\": 14586,\n  \"meaning</w>\": 8342,\n  \"meaningful</w>\": 17480,\n  \"meaningless</w>\": 48932,\n  \"meanings</w>\": 45814,\n  \"means</w>\": 3494,\n  \"meant</w>\": 8674,\n  \"meantime</w>\": 27499,\n  \"meanwhile</w>\": 9650,\n  \"meas\": 5867,\n  \"measles</w>\": 38230,\n  \"measurable</w>\": 48010,\n  \"measure\": 15261,\n  \"measure</w>\": 10579,\n  \"measured</w>\": 23154,\n  \"measurement</w>\": 20973,\n  \"measurements</w>\": 29894,\n  \"measures</w>\": 11936,\n  \"measuring</w>\": 18064,\n  \"meat\": 10805,\n  \"meat</w>\": 6480,\n  \"meatball</w>\": 43642,\n  \"meatballs</w>\": 29233,\n  \"meath</w>\": 37920,\n  \"meatless\": 48085,\n  \"meats</w>\": 29558,\n  \"mec</w>\": 27432,\n  \"mecca</w>\": 36095,\n  \"mech</w>\": 38305,\n  \"mechan\": 6715,\n  \"mechanic</w>\": 24582,\n  \"mechanical</w>\": 14467,\n  \"mechanics</w>\": 20536,\n  \"mechanism</w>\": 22576,\n  \"mechanisms</w>\": 28610,\n  \"meck\": 41908,\n  \"med\": 1948,\n  \"med</w>\": 2177,\n  \"meda</w>\": 33614,\n  \"medal\": 29714,\n  \"medal</w>\": 6974,\n  \"medalist</w>\": 21040,\n  \"medalists</w>\": 43397,\n  \"medalli\": 31349,\n  \"medallion</w>\": 43469,\n  \"medallist</w>\": 41472,\n  \"medals</w>\": 14710,\n  \"mede</w>\": 48225,\n  \"meded</w>\": 27627,\n  \"medi\": 1436,\n  \"media\": 22064,\n  \"media</w>\": 1895,\n  \"mediac\": 37490,\n  \"median</w>\": 30491,\n  \"mediation</w>\": 42829,\n  \"medic\": 3602,\n  \"medic</w>\": 35441,\n  \"medicaid</w>\": 25421,\n  \"medical\": 18432,\n  \"medical</w>\": 4116,\n  \"medicare</w>\": 23710,\n  \"medication</w>\": 23771,\n  \"medications</w>\": 37181,\n  \"medicinal</w>\": 28772,\n  \"medicine</w>\": 5616,\n  \"medicines</w>\": 26541,\n  \"medics</w>\": 46688,\n  \"medieval\": 38956,\n  \"medieval</w>\": 10789,\n  \"medina</w>\": 27281,\n  \"mediocre</w>\": 41170,\n  \"medit\": 19130,\n  \"meditate</w>\": 38039,\n  \"meditation</w>\": 10827,\n  \"mediter\": 14194,\n  \"mediterran\": 14358,\n  \"mediterranean</w>\": 15327,\n  \"medium</w>\": 8675,\n  \"medley</w>\": 24793,\n  \"meds</w>\": 25075,\n  \"medtech</w>\": 42044,\n  \"medusa</w>\": 44216,\n  \"medway</w>\": 42286,\n  \"mee\": 1725,\n  \"mee</w>\": 14075,\n  \"meek</w>\": 28935,\n  \"meen\": 37940,\n  \"meen</w>\": 46515,\n  \"meer\": 26714,\n  \"meer</w>\": 27555,\n  \"meet\": 5714,\n  \"meet</w>\": 1633,\n  \"meeting\": 48566,\n  \"meeting</w>\": 2071,\n  \"meetings</w>\": 9980,\n  \"meets</w>\": 5972,\n  \"meetthe\": 27575,\n  \"meetup</w>\": 15430,\n  \"meg\": 11500,\n  \"meg</w>\": 16186,\n  \"mega\": 15979,\n  \"mega</w>\": 9068,\n  \"megab\": 38103,\n  \"megadeth</w>\": 46741,\n  \"megal\": 37650,\n  \"megam\": 26073,\n  \"megan\": 19127,\n  \"megan</w>\": 11503,\n  \"megap\": 33624,\n  \"megat\": 35581,\n  \"megh\": 31192,\n  \"meghan\": 39939,\n  \"meghan</w>\": 18261,\n  \"meh\": 10512,\n  \"meh</w>\": 22211,\n  \"mehta</w>\": 25031,\n  \"mei\": 22564,\n  \"mei</w>\": 25198,\n  \"meier</w>\": 29812,\n  \"mein\": 28857,\n  \"mein</w>\": 21466,\n  \"meister</w>\": 28407,\n  \"mek</w>\": 44645,\n  \"mel\": 1902,\n  \"mel</w>\": 6834,\n  \"mela</w>\": 35032,\n  \"melan\": 22261,\n  \"melanch\": 44818,\n  \"melancholy</w>\": 47821,\n  \"melani\": 34031,\n  \"melania</w>\": 32796,\n  \"melanie</w>\": 22153,\n  \"melanoma</w>\": 40862,\n  \"melb\": 47007,\n  \"melb</w>\": 28980,\n  \"melbourne\": 28387,\n  \"melbourne</w>\": 6995,\n  \"melee</w>\": 45108,\n  \"meli\": 28885,\n  \"melinda</w>\": 46303,\n  \"melis\": 18913,\n  \"melissa\": 41866,\n  \"melissa</w>\": 13030,\n  \"mell\": 22531,\n  \"mell</w>\": 41583,\n  \"mello</w>\": 47594,\n  \"mellon</w>\": 45162,\n  \"mellow</w>\": 32034,\n  \"melo\": 10354,\n  \"melo</w>\": 22374,\n  \"melodic</w>\": 41877,\n  \"melodies</w>\": 38412,\n  \"melody</w>\": 19119,\n  \"melon</w>\": 12146,\n  \"melrose</w>\": 36296,\n  \"melt\": 22209,\n  \"melt</w>\": 15957,\n  \"meltdown</w>\": 30613,\n  \"melted</w>\": 23037,\n  \"melting</w>\": 19247,\n  \"melton</w>\": 46062,\n  \"melts</w>\": 31446,\n  \"melville</w>\": 46030,\n  \"melvin</w>\": 31544,\n  \"mely</w>\": 6373,\n  \"mem\": 4937,\n  \"mem</w>\": 34944,\n  \"memb\": 2114,\n  \"member\": 29566,\n  \"member</w>\": 1640,\n  \"members</w>\": 2567,\n  \"membership</w>\": 11562,\n  \"membrane</w>\": 34088,\n  \"meme\": 35157,\n  \"meme</w>\": 9169,\n  \"memes</w>\": 12828,\n  \"memo\": 15967,\n  \"memo</w>\": 19334,\n  \"memoir</w>\": 20532,\n  \"memoirs</w>\": 45311,\n  \"memor\": 1858,\n  \"memorab\": 26271,\n  \"memorabilia</w>\": 27488,\n  \"memorable</w>\": 13172,\n  \"memorial\": 16285,\n  \"memorial</w>\": 4642,\n  \"memorialday</w>\": 21598,\n  \"memoriam</w>\": 48191,\n  \"memories</w>\": 4304,\n  \"memory\": 44766,\n  \"memory</w>\": 5137,\n  \"memph\": 10285,\n  \"memphis\": 38432,\n  \"memphis</w>\": 11298,\n  \"men\": 1552,\n  \"men</w>\": 1656,\n  \"mena</w>\": 23052,\n  \"menace</w>\": 29949,\n  \"mend\": 8151,\n  \"mend</w>\": 46927,\n  \"mendel\": 49268,\n  \"mendes</w>\": 18060,\n  \"mendez</w>\": 48275,\n  \"mendo\": 19327,\n  \"mendoza</w>\": 23680,\n  \"meng\": 37102,\n  \"meng</w>\": 37450,\n  \"mening\": 46428,\n  \"menon</w>\": 38255,\n  \"menopau\": 34974,\n  \"menopause</w>\": 46026,\n  \"mens\": 16924,\n  \"mens</w>\": 10495,\n  \"mensfashion</w>\": 27578,\n  \"menstru\": 28345,\n  \"menstrual</w>\": 40915,\n  \"menswear</w>\": 18803,\n  \"ment\": 1585,\n  \"ment</w>\": 777,\n  \"mental\": 8611,\n  \"mental</w>\": 3448,\n  \"mentalhealth\": 20593,\n  \"mentalhealth</w>\": 13022,\n  \"mentality</w>\": 26647,\n  \"mentally</w>\": 14307,\n  \"mentary</w>\": 4468,\n  \"mentation</w>\": 9512,\n  \"mentday</w>\": 40397,\n  \"mente\": 40302,\n  \"mente</w>\": 36396,\n  \"mented</w>\": 9249,\n  \"menting</w>\": 14471,\n  \"mention\": 43881,\n  \"mention</w>\": 6762,\n  \"mentioned</w>\": 11948,\n  \"mentioning</w>\": 34290,\n  \"mentions</w>\": 12334,\n  \"mento</w>\": 30582,\n  \"mentor\": 45342,\n  \"mentor</w>\": 11642,\n  \"mentoring</w>\": 19610,\n  \"mentors</w>\": 20945,\n  \"mentorship</w>\": 33878,\n  \"ments</w>\": 1827,\n  \"menu</w>\": 6225,\n  \"menus</w>\": 33534,\n  \"meo</w>\": 30792,\n  \"meow\": 39965,\n  \"meow</w>\": 17246,\n  \"mep</w>\": 27095,\n  \"mer\": 1316,\n  \"mer</w>\": 2452,\n  \"mera</w>\": 20028,\n  \"merc\": 34357,\n  \"merc</w>\": 44399,\n  \"mercado</w>\": 45479,\n  \"merce\": 8409,\n  \"mercede\": 34959,\n  \"mercedes\": 26403,\n  \"mercedes</w>\": 10685,\n  \"mercedesam\": 40107,\n  \"mercedesbenz</w>\": 32347,\n  \"mercen\": 40301,\n  \"mercer</w>\": 21632,\n  \"merch</w>\": 11504,\n  \"merchandi\": 14954,\n  \"merchandise</w>\": 16808,\n  \"merchandising</w>\": 49196,\n  \"merchant</w>\": 19563,\n  \"merchants</w>\": 34427,\n  \"merci\": 23364,\n  \"merci</w>\": 29378,\n  \"mercur\": 11471,\n  \"mercury\": 45203,\n  \"mercury</w>\": 12653,\n  \"mercy\": 33249,\n  \"mercy</w>\": 10815,\n  \"mere\": 29657,\n  \"mere</w>\": 10342,\n  \"mered\": 24657,\n  \"mered</w>\": 32297,\n  \"meredith</w>\": 25103,\n  \"merely</w>\": 28718,\n  \"merge</w>\": 30406,\n  \"merged</w>\": 46492,\n  \"merger</w>\": 24744,\n  \"merging</w>\": 49256,\n  \"meri\": 17993,\n  \"meri</w>\": 36109,\n  \"meria</w>\": 48433,\n  \"meric</w>\": 27097,\n  \"merica</w>\": 30561,\n  \"meridi\": 37901,\n  \"meridian</w>\": 31195,\n  \"mering</w>\": 41060,\n  \"meringue</w>\": 41661,\n  \"merino</w>\": 42648,\n  \"merit</w>\": 20830,\n  \"merkel</w>\": 24715,\n  \"merle</w>\": 48586,\n  \"merlin</w>\": 26517,\n  \"merlot</w>\": 40424,\n  \"mermaid</w>\": 16064,\n  \"mermaids</w>\": 43617,\n  \"mero</w>\": 19097,\n  \"merr\": 48288,\n  \"merri\": 21462,\n  \"merrill</w>\": 47713,\n  \"merritt</w>\": 36462,\n  \"merry\": 14167,\n  \"merry</w>\": 5779,\n  \"merrychristmas</w>\": 19672,\n  \"mers</w>\": 4199,\n  \"mersal</w>\": 36711,\n  \"mersey\": 25248,\n  \"mersey</w>\": 46239,\n  \"merseyside</w>\": 35382,\n  \"mert</w>\": 48496,\n  \"merton</w>\": 35315,\n  \"mery</w>\": 40873,\n  \"meryl</w>\": 35787,\n  \"mes\": 28432,\n  \"mes</w>\": 3029,\n  \"mesa</w>\": 18956,\n  \"mese</w>\": 42018,\n  \"mesh</w>\": 15030,\n  \"mesm\": 18695,\n  \"mesmer\": 38435,\n  \"mesmeri\": 25985,\n  \"mesmerizing</w>\": 35637,\n  \"meso\": 25537,\n  \"mesqu\": 46819,\n  \"mess\": 2490,\n  \"mess</w>\": 8188,\n  \"message</w>\": 3918,\n  \"messages</w>\": 9390,\n  \"messaging</w>\": 23234,\n  \"messe</w>\": 40391,\n  \"messed</w>\": 23580,\n  \"messenger</w>\": 17389,\n  \"messi\": 19394,\n  \"messi</w>\": 11252,\n  \"messiah</w>\": 28737,\n  \"messing</w>\": 23144,\n  \"messy</w>\": 15987,\n  \"mest</w>\": 23780,\n  \"mester</w>\": 47349,\n  \"mesut</w>\": 49177,\n  \"met\": 5249,\n  \"met</w>\": 2340,\n  \"meta\": 14803,\n  \"meta</w>\": 22701,\n  \"metab\": 16150,\n  \"metabol\": 48389,\n  \"metaboli\": 25573,\n  \"metabolic</w>\": 34311,\n  \"metabolism</w>\": 27824,\n  \"metal\": 8935,\n  \"metal</w>\": 4044,\n  \"metall\": 19084,\n  \"metallic</w>\": 17257,\n  \"metallica</w>\": 24079,\n  \"metals</w>\": 21375,\n  \"metam\": 28862,\n  \"metamor\": 39030,\n  \"metamorpho\": 47601,\n  \"metaph\": 24189,\n  \"metaphor</w>\": 34233,\n  \"metast\": 41973,\n  \"mete\": 11226,\n  \"meteor\": 26429,\n  \"meteor</w>\": 26823,\n  \"meteoro\": 25948,\n  \"meteorologist</w>\": 42849,\n  \"meter</w>\": 10104,\n  \"meters</w>\": 13247,\n  \"metgala</w>\": 30089,\n  \"meth\": 21867,\n  \"meth</w>\": 26177,\n  \"methane</w>\": 37565,\n  \"metho\": 5770,\n  \"method</w>\": 10284,\n  \"methodist</w>\": 25165,\n  \"methodo\": 28488,\n  \"methodology</w>\": 37316,\n  \"methods</w>\": 12200,\n  \"methyl\": 48999,\n  \"metmuseum</w>\": 28207,\n  \"meto\": 25679,\n  \"metoo</w>\": 24722,\n  \"metr\": 15086,\n  \"metre</w>\": 27889,\n  \"metres</w>\": 19798,\n  \"metric</w>\": 19950,\n  \"metrical</w>\": 40704,\n  \"metrics</w>\": 24396,\n  \"metro\": 7257,\n  \"metro</w>\": 6784,\n  \"metroid</w>\": 39957,\n  \"metropolis</w>\": 40476,\n  \"metropolitan</w>\": 19013,\n  \"metry</w>\": 20039,\n  \"mets</w>\": 9633,\n  \"mett</w>\": 28081,\n  \"metz</w>\": 40506,\n  \"meu</w>\": 34520,\n  \"mew</w>\": 40368,\n  \"mex\": 3213,\n  \"mex</w>\": 18387,\n  \"mexic\": 31728,\n  \"mexican\": 37442,\n  \"mexican</w>\": 8186,\n  \"mexicans</w>\": 47729,\n  \"mexico\": 31834,\n  \"mexico</w>\": 4604,\n  \"mey\": 28584,\n  \"mey</w>\": 27777,\n  \"meyer</w>\": 13963,\n  \"meyers</w>\": 32326,\n  \"mez\": 30615,\n  \"mez</w>\": 46833,\n  \"mezz\": 38771,\n  \"mf\": 18199,\n  \"mf</w>\": 11067,\n  \"mfa</w>\": 24107,\n  \"mfc</w>\": 39474,\n  \"mfg</w>\": 21912,\n  \"mfw</w>\": 27309,\n  \"mg\": 10003,\n  \"mg</w>\": 8014,\n  \"mga</w>\": 23954,\n  \"mgm</w>\": 27572,\n  \"mgmt</w>\": 22288,\n  \"mgr</w>\": 31500,\n  \"mgs</w>\": 48073,\n  \"mgt</w>\": 48663,\n  \"mh\": 9962,\n  \"mh</w>\": 10834,\n  \"mha</w>\": 41944,\n  \"mhealth</w>\": 41225,\n  \"mhs</w>\": 28815,\n  \"mhz</w>\": 31550,\n  \"mi\": 714,\n  \"mi</w>\": 2251,\n  \"mia</w>\": 5852,\n  \"miam\": 31053,\n  \"miami\": 15106,\n  \"miami</w>\": 4891,\n  \"mian</w>\": 24792,\n  \"miaw</w>\": 36046,\n  \"mib</w>\": 48178,\n  \"mic\": 1213,\n  \"mic</w>\": 3816,\n  \"mica</w>\": 41551,\n  \"micah</w>\": 33870,\n  \"mice</w>\": 19030,\n  \"mich\": 25628,\n  \"mich</w>\": 23029,\n  \"micha\": 2083,\n  \"michael\": 6051,\n  \"michael</w>\": 2511,\n  \"michaela</w>\": 41897,\n  \"michaeljackson</w>\": 33532,\n  \"michaels</w>\": 23868,\n  \"michal\": 47144,\n  \"miche\": 37966,\n  \"micheal</w>\": 43709,\n  \"michel\": 5158,\n  \"michel</w>\": 17153,\n  \"michelangelo</w>\": 41245,\n  \"michele</w>\": 20642,\n  \"michelin</w>\": 26330,\n  \"michelle\": 19028,\n  \"michelle</w>\": 8625,\n  \"michi\": 5658,\n  \"michigan\": 32344,\n  \"michigan</w>\": 6296,\n  \"mick\": 15171,\n  \"mick</w>\": 12592,\n  \"mickey\": 41813,\n  \"mickey</w>\": 13053,\n  \"micky</w>\": 43011,\n  \"micro\": 3160,\n  \"micro</w>\": 11374,\n  \"microbes</w>\": 44671,\n  \"microbi\": 19496,\n  \"microbial</w>\": 30335,\n  \"microbiology</w>\": 35348,\n  \"microbiome</w>\": 35148,\n  \"micron\": 48742,\n  \"microphone</w>\": 24643,\n  \"micropoetry</w>\": 35997,\n  \"microscope</w>\": 29114,\n  \"microscopy</w>\": 38431,\n  \"microsof\": 42424,\n  \"microsoft\": 38650,\n  \"microsoft</w>\": 7254,\n  \"microwave</w>\": 24240,\n  \"mics</w>\": 16554,\n  \"mid\": 2192,\n  \"mid</w>\": 4734,\n  \"midcentury</w>\": 48988,\n  \"midd\": 2983,\n  \"midday</w>\": 23390,\n  \"middle\": 9849,\n  \"middle</w>\": 3694,\n  \"middleeast</w>\": 32783,\n  \"middles\": 29769,\n  \"middlesbrough</w>\": 32436,\n  \"middlesex</w>\": 39154,\n  \"middleton</w>\": 23627,\n  \"middleweight</w>\": 35829,\n  \"midfield</w>\": 28116,\n  \"midfielder</w>\": 13423,\n  \"midget</w>\": 30734,\n  \"midi\": 39496,\n  \"midi</w>\": 27326,\n  \"midland</w>\": 24822,\n  \"midlands</w>\": 18062,\n  \"midnight\": 35746,\n  \"midnight</w>\": 6302,\n  \"mids</w>\": 40821,\n  \"midst</w>\": 24752,\n  \"midsummer</w>\": 35234,\n  \"midterm</w>\": 34365,\n  \"midterms</w>\": 32015,\n  \"midtown</w>\": 26069,\n  \"midway</w>\": 26536,\n  \"midweek</w>\": 29120,\n  \"midwest</w>\": 16627,\n  \"midwi\": 44802,\n  \"midwife</w>\": 37681,\n  \"midwives</w>\": 42355,\n  \"mie\": 20865,\n  \"mie</w>\": 10555,\n  \"miento</w>\": 46482,\n  \"mier</w>\": 36490,\n  \"mies</w>\": 8840,\n  \"miff\": 49398,\n  \"mig</w>\": 28743,\n  \"might</w>\": 2727,\n  \"mighty\": 26632,\n  \"mighty</w>\": 7815,\n  \"mign\": 41678,\n  \"migos</w>\": 44640,\n  \"migr\": 3736,\n  \"migra\": 28186,\n  \"migraine</w>\": 35360,\n  \"migrant</w>\": 18902,\n  \"migrants</w>\": 15814,\n  \"migrate</w>\": 41804,\n  \"migrating</w>\": 43604,\n  \"migration</w>\": 11891,\n  \"migu\": 12279,\n  \"miguel\": 33672,\n  \"miguel</w>\": 14436,\n  \"miho</w>\": 46870,\n  \"mii</w>\": 39896,\n  \"mik\": 15096,\n  \"mik</w>\": 46203,\n  \"mika\": 28609,\n  \"mika</w>\": 25185,\n  \"mike\": 5884,\n  \"mike</w>\": 3178,\n  \"mikel</w>\": 48865,\n  \"mikequind\": 33508,\n  \"mikequindazzi</w>\": 33551,\n  \"mikey\": 34934,\n  \"mikey</w>\": 23368,\n  \"mikha\": 30999,\n  \"mikhail</w>\": 38327,\n  \"miki</w>\": 48863,\n  \"miko</w>\": 35413,\n  \"miku</w>\": 37703,\n  \"mil\": 1469,\n  \"mil</w>\": 12826,\n  \"mila</w>\": 26183,\n  \"milan\": 30380,\n  \"milan</w>\": 8552,\n  \"milano</w>\": 18585,\n  \"milb</w>\": 42248,\n  \"mild</w>\": 16085,\n  \"mildly</w>\": 49059,\n  \"mile\": 7833,\n  \"mile</w>\": 6243,\n  \"mileage</w>\": 30579,\n  \"miler</w>\": 44680,\n  \"miles</w>\": 3446,\n  \"milestone</w>\": 13485,\n  \"milestones</w>\": 34025,\n  \"miley\": 25336,\n  \"miley</w>\": 14321,\n  \"mileycyrus</w>\": 28528,\n  \"milf</w>\": 45386,\n  \"milford</w>\": 35840,\n  \"mili\": 16698,\n  \"miliband</w>\": 41440,\n  \"milit\": 3715,\n  \"militant</w>\": 33629,\n  \"militants</w>\": 23974,\n  \"military\": 24498,\n  \"military</w>\": 4323,\n  \"militi\": 46625,\n  \"militia</w>\": 32114,\n  \"milk\": 13409,\n  \"milk</w>\": 5205,\n  \"milkshake</w>\": 29066,\n  \"milky\": 37320,\n  \"milky</w>\": 21120,\n  \"milkyway</w>\": 43246,\n  \"mill\": 4221,\n  \"mill</w>\": 6637,\n  \"milla</w>\": 49381,\n  \"millan\": 34930,\n  \"millan</w>\": 22188,\n  \"millar</w>\": 41851,\n  \"mille</w>\": 34066,\n  \"millen\": 48501,\n  \"millenni\": 10406,\n  \"millennial</w>\": 28357,\n  \"millennials</w>\": 18804,\n  \"millennium</w>\": 21116,\n  \"miller\": 21699,\n  \"miller</w>\": 5733,\n  \"milli\": 5340,\n  \"millie</w>\": 29283,\n  \"milling</w>\": 39133,\n  \"million\": 13154,\n  \"million</w>\": 2506,\n  \"millionaire</w>\": 25179,\n  \"millionaires</w>\": 47159,\n  \"millions</w>\": 8492,\n  \"mills</w>\": 10331,\n  \"millwall</w>\": 35902,\n  \"milly</w>\": 45794,\n  \"milne</w>\": 44590,\n  \"milner</w>\": 45230,\n  \"milo</w>\": 24548,\n  \"milton\": 39004,\n  \"milton</w>\": 17360,\n  \"milwau\": 13452,\n  \"milwaukee</w>\": 14259,\n  \"mim</w>\": 39379,\n  \"mimi</w>\": 27086,\n  \"mimic\": 47116,\n  \"mimic</w>\": 46519,\n  \"mimo\": 45551,\n  \"min\": 771,\n  \"min</w>\": 3331,\n  \"mina</w>\": 15281,\n  \"minaj</w>\": 25136,\n  \"minal</w>\": 40222,\n  \"minat</w>\": 33275,\n  \"mince</w>\": 32396,\n  \"mind\": 5890,\n  \"mind</w>\": 2575,\n  \"mindanao</w>\": 44228,\n  \"minded</w>\": 21330,\n  \"mindful</w>\": 28457,\n  \"mindfulness</w>\": 15707,\n  \"minding</w>\": 45337,\n  \"minds</w>\": 9244,\n  \"mindset</w>\": 14217,\n  \"mindy\": 46875,\n  \"mindy</w>\": 38551,\n  \"mine\": 20149,\n  \"mine</w>\": 3347,\n  \"minecraft</w>\": 15678,\n  \"mined</w>\": 48034,\n  \"minent</w>\": 12533,\n  \"miner\": 14109,\n  \"miner</w>\": 26572,\n  \"mineral</w>\": 17692,\n  \"minerals</w>\": 21169,\n  \"miners</w>\": 22119,\n  \"mines</w>\": 16211,\n  \"ming\": 10868,\n  \"ming</w>\": 2107,\n  \"mingham</w>\": 7590,\n  \"mingle</w>\": 38437,\n  \"mingly</w>\": 36909,\n  \"mington\": 49283,\n  \"mington</w>\": 23119,\n  \"minh</w>\": 48734,\n  \"minho</w>\": 21318,\n  \"mini\": 1810,\n  \"mini</w>\": 3954,\n  \"miniature\": 44298,\n  \"miniature</w>\": 16377,\n  \"miniatures</w>\": 38816,\n  \"minic\": 31522,\n  \"minim\": 10005,\n  \"minimal</w>\": 18458,\n  \"minimalism</w>\": 42594,\n  \"minimalist</w>\": 26641,\n  \"minimize</w>\": 38697,\n  \"minimum</w>\": 12244,\n  \"minindia</w>\": 28458,\n  \"mining</w>\": 8473,\n  \"minion</w>\": 28622,\n  \"minions</w>\": 27035,\n  \"minis\": 33409,\n  \"minis</w>\": 35976,\n  \"minister\": 25688,\n  \"minister</w>\": 3569,\n  \"ministerial</w>\": 33008,\n  \"ministers</w>\": 16406,\n  \"ministries</w>\": 27895,\n  \"ministry</w>\": 8742,\n  \"mink</w>\": 42017,\n  \"minn\": 45991,\n  \"minn</w>\": 47318,\n  \"minne\": 7083,\n  \"minneapolis</w>\": 16977,\n  \"minneso\": 9380,\n  \"minnesota</w>\": 9968,\n  \"minnie</w>\": 24493,\n  \"mino</w>\": 22791,\n  \"minogue</w>\": 44202,\n  \"minor</w>\": 8522,\n  \"minorities</w>\": 28119,\n  \"minority</w>\": 16210,\n  \"minors</w>\": 36789,\n  \"mins</w>\": 6196,\n  \"minsk</w>\": 46151,\n  \"minster</w>\": 11189,\n  \"mint\": 48084,\n  \"mint</w>\": 7506,\n  \"minted</w>\": 49377,\n  \"minton</w>\": 20050,\n  \"minu\": 29064,\n  \"minus</w>\": 15358,\n  \"minute\": 28931,\n  \"minute</w>\": 4497,\n  \"minutes</w>\": 3056,\n  \"mio</w>\": 26366,\n  \"mir\": 2750,\n  \"mir</w>\": 6585,\n  \"mira\": 21665,\n  \"mira</w>\": 22762,\n  \"mirac\": 13685,\n  \"miracle\": 49208,\n  \"miracle</w>\": 11543,\n  \"miracles</w>\": 23478,\n  \"miraculous</w>\": 38671,\n  \"mirage</w>\": 28679,\n  \"mirai</w>\": 49060,\n  \"mirand\": 32367,\n  \"miranda</w>\": 17590,\n  \"mire\": 38140,\n  \"mire</w>\": 30140,\n  \"miri\": 22273,\n  \"miriam</w>\": 30950,\n  \"miro\": 34851,\n  \"miro</w>\": 48317,\n  \"mirren</w>\": 47600,\n  \"mirro\": 48500,\n  \"mirror\": 29823,\n  \"mirror</w>\": 7220,\n  \"mirrors</w>\": 21823,\n  \"mirza</w>\": 36440,\n  \"mis\": 866,\n  \"mis</w>\": 11239,\n  \"mischief</w>\": 33896,\n  \"misconceptions</w>\": 48681,\n  \"misconduct</w>\": 30601,\n  \"mise\": 46567,\n  \"mise</w>\": 17267,\n  \"miser\": 33394,\n  \"miserable</w>\": 26196,\n  \"misery</w>\": 28360,\n  \"mises</w>\": 24390,\n  \"misfits</w>\": 42708,\n  \"mish\": 15494,\n  \"mish</w>\": 20981,\n  \"misha</w>\": 35434,\n  \"mishra</w>\": 33042,\n  \"misleading</w>\": 30862,\n  \"mism</w>\": 15948,\n  \"miso\": 27657,\n  \"miso</w>\": 33441,\n  \"misogy\": 31315,\n  \"misogyny</w>\": 48415,\n  \"miss\": 6984,\n  \"miss</w>\": 1526,\n  \"missal</w>\": 38337,\n  \"missed</w>\": 3955,\n  \"misses</w>\": 15844,\n  \"missi\": 3008,\n  \"missile</w>\": 14411,\n  \"missiles</w>\": 27868,\n  \"missin</w>\": 36209,\n  \"missing\": 23509,\n  \"missing</w>\": 3423,\n  \"mission\": 12738,\n  \"mission</w>\": 2406,\n  \"missionaries</w>\": 40580,\n  \"missionary</w>\": 27915,\n  \"missions</w>\": 6990,\n  \"mississ\": 26483,\n  \"mississauga</w>\": 28393,\n  \"mississi\": 11687,\n  \"mississippi</w>\": 12232,\n  \"missou\": 30710,\n  \"missoula</w>\": 48549,\n  \"missouri</w>\": 11835,\n  \"missuni\": 26347,\n  \"missuniverse</w>\": 28766,\n  \"missy\": 48105,\n  \"missy</w>\": 31515,\n  \"missyou</w>\": 45799,\n  \"mist\": 12610,\n  \"mist</w>\": 11946,\n  \"mistak\": 20478,\n  \"mistake</w>\": 11303,\n  \"mistaken</w>\": 29182,\n  \"mistakenly</w>\": 48494,\n  \"mistakes</w>\": 12824,\n  \"mister\": 26949,\n  \"mister</w>\": 18895,\n  \"mistle\": 46800,\n  \"mistletoe</w>\": 48569,\n  \"mistre\": 42039,\n  \"mistress</w>\": 24349,\n  \"mists</w>\": 28636,\n  \"misty</w>\": 18799,\n  \"misunderstood</w>\": 41574,\n  \"misuse</w>\": 40970,\n  \"mit\": 3303,\n  \"mit</w>\": 4551,\n  \"mita</w>\": 47514,\n  \"mitage</w>\": 27964,\n  \"mitch\": 6969,\n  \"mitch</w>\": 14150,\n  \"mitchell\": 39339,\n  \"mitchell</w>\": 9007,\n  \"mite</w>\": 26929,\n  \"mith\": 21752,\n  \"mith</w>\": 17948,\n  \"miti\": 17857,\n  \"mitigate</w>\": 42273,\n  \"mitigation</w>\": 35514,\n  \"mito\": 38254,\n  \"mitochondri\": 42132,\n  \"mitra</w>\": 47703,\n  \"mits</w>\": 24086,\n  \"mitsu\": 17905,\n  \"mitsubi\": 21604,\n  \"mitsubishi</w>\": 23030,\n  \"mitt\": 17321,\n  \"mitt</w>\": 21341,\n  \"mitted</w>\": 10307,\n  \"mitting</w>\": 27938,\n  \"mitz\": 41827,\n  \"mium</w>\": 35891,\n  \"miwx</w>\": 43941,\n  \"mix\": 3210,\n  \"mix</w>\": 3285,\n  \"mixed\": 29376,\n  \"mixed</w>\": 6780,\n  \"mixer</w>\": 17200,\n  \"mixers</w>\": 39175,\n  \"mixes</w>\": 19061,\n  \"mixing</w>\": 15588,\n  \"mixtape</w>\": 11044,\n  \"mixture</w>\": 28286,\n  \"miy\": 25695,\n  \"miya</w>\": 36257,\n  \"miz\": 20881,\n  \"miz</w>\": 30795,\n  \"mize</w>\": 19076,\n  \"mized</w>\": 43418,\n  \"mizing</w>\": 38715,\n  \"mizz\": 19985,\n  \"mizzou</w>\": 26165,\n  \"mj\": 13117,\n  \"mj</w>\": 14733,\n  \"mk\": 11581,\n  \"mk</w>\": 8937,\n  \"mke</w>\": 36642,\n  \"mkt</w>\": 24814,\n  \"ml\": 3627,\n  \"ml</w>\": 5780,\n  \"mla</w>\": 16723,\n  \"mlas</w>\": 48464,\n  \"mlb\": 21039,\n  \"mlb</w>\": 7482,\n  \"mley</w>\": 40329,\n  \"mlg</w>\": 45801,\n  \"mlin</w>\": 24556,\n  \"mlk</w>\": 17941,\n  \"mlkday</w>\": 39905,\n  \"mlm</w>\": 37611,\n  \"mln</w>\": 18971,\n  \"mlp</w>\": 23620,\n  \"mlpfi\": 45475,\n  \"mlpfim</w>\": 45640,\n  \"mls</w>\": 13077,\n  \"mm\": 1028,\n  \"mm</w>\": 2848,\n  \"mma\": 34140,\n  \"mma</w>\": 6096,\n  \"mmc</w>\": 44253,\n  \"mme</w>\": 13105,\n  \"mmed</w>\": 19570,\n  \"mmer\": 35717,\n  \"mmer</w>\": 7508,\n  \"mmers</w>\": 28128,\n  \"mmes</w>\": 42862,\n  \"mmi</w>\": 34147,\n  \"mming\": 21038,\n  \"mming</w>\": 16507,\n  \"mmings</w>\": 31357,\n  \"mmit</w>\": 41050,\n  \"mmj</w>\": 43015,\n  \"mmm\": 37908,\n  \"mmm</w>\": 7641,\n  \"mmmm\": 36312,\n  \"mmmm</w>\": 13180,\n  \"mmmmm</w>\": 21808,\n  \"mmmmmm</w>\": 43740,\n  \"mmo</w>\": 30418,\n  \"mmon</w>\": 41131,\n  \"mmor\": 36657,\n  \"mmorpg</w>\": 39476,\n  \"mms</w>\": 37803,\n  \"mmva</w>\": 42666,\n  \"mmy\": 28837,\n  \"mmy</w>\": 8722,\n  \"mn\": 5086,\n  \"mn</w>\": 4057,\n  \"mna</w>\": 34877,\n  \"mnd</w>\": 44776,\n  \"mnet</w>\": 34129,\n  \"mnf</w>\": 41105,\n  \"mnl</w>\": 32980,\n  \"mnleg</w>\": 42653,\n  \"mns</w>\": 39040,\n  \"mnt</w>\": 21477,\n  \"mntwins</w>\": 45448,\n  \"mnwild</w>\": 39044,\n  \"mnwx</w>\": 39592,\n  \"mo\": 617,\n  \"mo</w>\": 2080,\n  \"moa</w>\": 33174,\n  \"moana</w>\": 43241,\n  \"mob\": 2818,\n  \"mob</w>\": 12754,\n  \"mobi\": 9451,\n  \"mobil\": 26343,\n  \"mobil</w>\": 29815,\n  \"mobile\": 12935,\n  \"mobile</w>\": 3451,\n  \"mobiles</w>\": 44302,\n  \"mobili\": 20770,\n  \"mobility</w>\": 12546,\n  \"mobilization</w>\": 48916,\n  \"moby</w>\": 47219,\n  \"moc\": 41439,\n  \"moc</w>\": 36992,\n  \"mocha</w>\": 28425,\n  \"mochi</w>\": 47973,\n  \"mock\": 15641,\n  \"mock</w>\": 12759,\n  \"mocked</w>\": 47400,\n  \"mocking\": 28692,\n  \"mocking</w>\": 37870,\n  \"mocks</w>\": 35142,\n  \"mod\": 6362,\n  \"mod</w>\": 10893,\n  \"moda</w>\": 25814,\n  \"modal</w>\": 33157,\n  \"mode\": 20402,\n  \"mode</w>\": 6493,\n  \"model\": 4591,\n  \"model</w>\": 2863,\n  \"modeled</w>\": 39527,\n  \"modeling</w>\": 13706,\n  \"modelling</w>\": 19946,\n  \"models</w>\": 6176,\n  \"moder\": 2894,\n  \"moderate</w>\": 16435,\n  \"moderated</w>\": 27928,\n  \"moderating</w>\": 34242,\n  \"moderator</w>\": 32659,\n  \"modern\": 11706,\n  \"modern</w>\": 4077,\n  \"modernart</w>\": 34417,\n  \"moderni\": 24328,\n  \"modernism</w>\": 39601,\n  \"modernist</w>\": 36773,\n  \"modernization</w>\": 47294,\n  \"modes</w>\": 30454,\n  \"modest</w>\": 25436,\n  \"modi\": 9047,\n  \"modi</w>\": 7774,\n  \"modification</w>\": 37630,\n  \"modified</w>\": 17964,\n  \"modo</w>\": 36820,\n  \"mods</w>\": 23843,\n  \"modu\": 9036,\n  \"modular</w>\": 22437,\n  \"module</w>\": 16757,\n  \"modules</w>\": 30575,\n  \"moe\": 38655,\n  \"moe</w>\": 17938,\n  \"mof\": 30798,\n  \"moff\": 27160,\n  \"mog</w>\": 42362,\n  \"moga\": 41732,\n  \"mogadishu</w>\": 45133,\n  \"mogul</w>\": 41320,\n  \"moh\": 18979,\n  \"moh</w>\": 35388,\n  \"moha\": 46892,\n  \"moham\": 7923,\n  \"mohamed</w>\": 18472,\n  \"mohammad</w>\": 19926,\n  \"mohammed</w>\": 16168,\n  \"mohan\": 26521,\n  \"mohan</w>\": 23586,\n  \"mohawk</w>\": 34942,\n  \"mohd</w>\": 49094,\n  \"mohsin</w>\": 48861,\n  \"moi\": 20691,\n  \"moi</w>\": 21825,\n  \"moil</w>\": 30349,\n  \"moines</w>\": 32091,\n  \"moist\": 19831,\n  \"moist</w>\": 33263,\n  \"moisture</w>\": 20412,\n  \"moisturi\": 25942,\n  \"moj\": 34505,\n  \"moja\": 49055,\n  \"mojito</w>\": 46830,\n  \"mojo</w>\": 25204,\n  \"mok\": 49146,\n  \"mol\": 4246,\n  \"mol</w>\": 31582,\n  \"mold</w>\": 21846,\n  \"molding</w>\": 46274,\n  \"moldova</w>\": 47317,\n  \"mole\": 9927,\n  \"mole</w>\": 23529,\n  \"molecular</w>\": 19370,\n  \"molecule</w>\": 39233,\n  \"molecules</w>\": 35643,\n  \"molina</w>\": 34201,\n  \"mollie</w>\": 48203,\n  \"molly\": 24368,\n  \"molly</w>\": 12573,\n  \"molo\": 41510,\n  \"mology</w>\": 32255,\n  \"molten</w>\": 46071,\n  \"moly</w>\": 47083,\n  \"mom\": 1614,\n  \"mom</w>\": 2543,\n  \"moma</w>\": 33605,\n  \"mombasa</w>\": 40340,\n  \"moment\": 12197,\n  \"moment</w>\": 2495,\n  \"momento</w>\": 30078,\n  \"moments</w>\": 5251,\n  \"momentum</w>\": 15722,\n  \"momlife</w>\": 43825,\n  \"momma</w>\": 14508,\n  \"mommy</w>\": 12456,\n  \"momo\": 48490,\n  \"momo</w>\": 25980,\n  \"moms\": 28446,\n  \"moms</w>\": 10042,\n  \"momsdemand</w>\": 33744,\n  \"mon\": 749,\n  \"mon</w>\": 2173,\n  \"mona</w>\": 19143,\n  \"monaco</w>\": 14938,\n  \"monaghan</w>\": 39797,\n  \"monarch\": 27235,\n  \"monarch</w>\": 22619,\n  \"monarchs</w>\": 36750,\n  \"monarchy</w>\": 47503,\n  \"monaster\": 19422,\n  \"monastery</w>\": 21850,\n  \"monc\": 34847,\n  \"moncton</w>\": 44962,\n  \"mond\": 14522,\n  \"mond</w>\": 4475,\n  \"monday\": 6205,\n  \"monday</w>\": 2098,\n  \"mondaymorning</w>\": 40089,\n  \"mondaymotiv\": 45488,\n  \"mondaymotivation</w>\": 8198,\n  \"mondaymotivaton</w>\": 47034,\n  \"mondays</w>\": 13815,\n  \"monde</w>\": 29339,\n  \"mondo</w>\": 36207,\n  \"monds</w>\": 20317,\n  \"mone</w>\": 25990,\n  \"monet</w>\": 24499,\n  \"monetary</w>\": 26394,\n  \"moneti\": 38056,\n  \"money\": 12743,\n  \"money</w>\": 2327,\n  \"mong</w>\": 43566,\n  \"monger</w>\": 38928,\n  \"mongers</w>\": 27670,\n  \"mongo\": 20680,\n  \"mongolia</w>\": 27144,\n  \"mongolian</w>\": 46335,\n  \"moni\": 46851,\n  \"monia</w>\": 31161,\n  \"monic\": 30893,\n  \"monica</w>\": 13540,\n  \"monit\": 9014,\n  \"monitor</w>\": 10198,\n  \"monitored</w>\": 45828,\n  \"monitoring</w>\": 11030,\n  \"monitors</w>\": 30478,\n  \"monk\": 30557,\n  \"monk</w>\": 16424,\n  \"monkey\": 29597,\n  \"monkey</w>\": 9465,\n  \"monkeys</w>\": 15781,\n  \"monks</w>\": 29090,\n  \"monmouth</w>\": 36929,\n  \"mono\": 8220,\n  \"mono</w>\": 22537,\n  \"monochrome</w>\": 25576,\n  \"monogram</w>\": 39665,\n  \"monologue</w>\": 47776,\n  \"monopoly</w>\": 25241,\n  \"monoxide</w>\": 49314,\n  \"monro\": 45750,\n  \"monroe</w>\": 13625,\n  \"mons</w>\": 19885,\n  \"monsanto</w>\": 37592,\n  \"monsi\": 46677,\n  \"monsieur</w>\": 48879,\n  \"monsoon</w>\": 18872,\n  \"monsta</w>\": 30718,\n  \"monstax</w>\": 45631,\n  \"monste\": 47045,\n  \"monster\": 14454,\n  \"monster</w>\": 6060,\n  \"monsters</w>\": 11546,\n  \"mont\": 5186,\n  \"mont</w>\": 5382,\n  \"montag\": 37202,\n  \"montage</w>\": 32325,\n  \"montal\": 42126,\n  \"montan\": 28405,\n  \"montana</w>\": 11436,\n  \"monte\": 8711,\n  \"monte</w>\": 14667,\n  \"montene\": 28538,\n  \"montenegro</w>\": 30378,\n  \"monter\": 36673,\n  \"monterey</w>\": 23388,\n  \"monterrey</w>\": 45254,\n  \"montess\": 43205,\n  \"montessori</w>\": 45443,\n  \"montgom\": 13852,\n  \"montgomery</w>\": 14951,\n  \"month\": 7680,\n  \"month</w>\": 1924,\n  \"monthly</w>\": 8764,\n  \"months</w>\": 3109,\n  \"monthsary</w>\": 42420,\n  \"monton</w>\": 41961,\n  \"montp\": 39523,\n  \"montre\": 8434,\n  \"montreal</w>\": 9262,\n  \"montrose</w>\": 42347,\n  \"monty\": 43997,\n  \"monty</w>\": 24038,\n  \"monu\": 9748,\n  \"monument</w>\": 12019,\n  \"monumental</w>\": 31297,\n  \"monuments</w>\": 26916,\n  \"mony</w>\": 4117,\n  \"monza</w>\": 40380,\n  \"moo\": 4953,\n  \"moo</w>\": 24626,\n  \"mood\": 42358,\n  \"mood</w>\": 5394,\n  \"moods</w>\": 43727,\n  \"moody</w>\": 17170,\n  \"moom\": 36887,\n  \"moon\": 6334,\n  \"moon</w>\": 3293,\n  \"mooney</w>\": 37942,\n  \"moonlight</w>\": 20001,\n  \"moons</w>\": 29887,\n  \"moonshine</w>\": 46706,\n  \"moor\": 14817,\n  \"moor</w>\": 11877,\n  \"moore\": 28613,\n  \"moore</w>\": 6708,\n  \"moors</w>\": 32577,\n  \"moose\": 37562,\n  \"moose</w>\": 17338,\n  \"moot</w>\": 46895,\n  \"mop</w>\": 33900,\n  \"mopar</w>\": 41166,\n  \"mor\": 657,\n  \"mor</w>\": 18614,\n  \"mora</w>\": 29262,\n  \"moral</w>\": 11246,\n  \"morale</w>\": 39404,\n  \"morales</w>\": 27117,\n  \"morality</w>\": 34133,\n  \"morally</w>\": 42519,\n  \"morals</w>\": 46223,\n  \"moran</w>\": 21557,\n  \"moray</w>\": 44569,\n  \"more\": 5434,\n  \"more</w>\": 750,\n  \"morecam\": 37305,\n  \"morecambe</w>\": 43414,\n  \"mored</w>\": 20195,\n  \"moreland</w>\": 44135,\n  \"moreno</w>\": 24826,\n  \"morethan\": 30889,\n  \"morg\": 34284,\n  \"morgan\": 15432,\n  \"morgan</w>\": 6075,\n  \"morgen</w>\": 35106,\n  \"mori\": 25710,\n  \"mori</w>\": 29514,\n  \"moris\": 43131,\n  \"moritz</w>\": 45594,\n  \"morley</w>\": 40439,\n  \"mormon</w>\": 27715,\n  \"morn</w>\": 22393,\n  \"mornin</w>\": 28327,\n  \"morning\": 10769,\n  \"morning</w>\": 1119,\n  \"mornings</w>\": 12106,\n  \"moro</w>\": 31613,\n  \"moroc\": 11996,\n  \"moroccan</w>\": 27546,\n  \"morocco</w>\": 15228,\n  \"moron</w>\": 31875,\n  \"morons</w>\": 46477,\n  \"morow</w>\": 40779,\n  \"morph\": 23915,\n  \"morph</w>\": 41700,\n  \"morphe\": 38978,\n  \"morpho\": 38622,\n  \"morrha\": 43044,\n  \"morri\": 9876,\n  \"morris\": 22560,\n  \"morris</w>\": 9090,\n  \"morrison\": 40961,\n  \"morrison</w>\": 14094,\n  \"morrisons</w>\": 40965,\n  \"morrissey</w>\": 30040,\n  \"morro</w>\": 48363,\n  \"morrow</w>\": 21611,\n  \"mors</w>\": 13064,\n  \"morse</w>\": 25282,\n  \"mort\": 24257,\n  \"mort</w>\": 30583,\n  \"mortal\": 31883,\n  \"mortal</w>\": 14680,\n  \"mortality</w>\": 20347,\n  \"mortar</w>\": 27258,\n  \"mortg\": 12069,\n  \"mortgage</w>\": 13988,\n  \"mortgages</w>\": 45391,\n  \"mortimer</w>\": 47836,\n  \"morton</w>\": 20698,\n  \"morty</w>\": 37391,\n  \"mory</w>\": 22633,\n  \"mos\": 28658,\n  \"mos</w>\": 9593,\n  \"mosa\": 14164,\n  \"mosa</w>\": 23809,\n  \"mosaic</w>\": 17506,\n  \"mosch\": 47003,\n  \"mosco\": 9840,\n  \"moscow</w>\": 10371,\n  \"moseley</w>\": 47080,\n  \"moses</w>\": 18451,\n  \"mosley</w>\": 46228,\n  \"mosqu\": 15215,\n  \"mosque</w>\": 12694,\n  \"mosques</w>\": 41214,\n  \"mosquit\": 39699,\n  \"mosquito</w>\": 25083,\n  \"mosquitoes</w>\": 41870,\n  \"moss\": 25107,\n  \"moss</w>\": 12815,\n  \"most\": 7034,\n  \"most</w>\": 1096,\n  \"mostly</w>\": 8829,\n  \"mosul</w>\": 29165,\n  \"mot\": 16352,\n  \"mot</w>\": 15452,\n  \"mota</w>\": 42499,\n  \"motd</w>\": 46232,\n  \"motel</w>\": 26191,\n  \"moth\": 33208,\n  \"moth</w>\": 11736,\n  \"mother\": 7455,\n  \"mother</w>\": 3050,\n  \"motherhood</w>\": 32274,\n  \"motherland</w>\": 46774,\n  \"mothers</w>\": 10546,\n  \"mothersday</w>\": 15583,\n  \"motherwell</w>\": 48104,\n  \"moths</w>\": 29086,\n  \"moti\": 38210,\n  \"motif</w>\": 35373,\n  \"motion\": 32139,\n  \"motion</w>\": 7860,\n  \"motiv\": 3183,\n  \"motivate</w>\": 26771,\n  \"motivated</w>\": 16521,\n  \"motivates</w>\": 44684,\n  \"motivating</w>\": 37720,\n  \"motivation\": 26117,\n  \"motivation</w>\": 4193,\n  \"motivational\": 32832,\n  \"motivational</w>\": 20472,\n  \"motivationmonday</w>\": 28703,\n  \"motive</w>\": 36669,\n  \"motley</w>\": 42553,\n  \"motm</w>\": 41192,\n  \"moto\": 10646,\n  \"moto</w>\": 11431,\n  \"motocross</w>\": 34562,\n  \"motogp</w>\": 16615,\n  \"motor\": 3975,\n  \"motor</w>\": 7659,\n  \"motorbike</w>\": 33341,\n  \"motorcycle</w>\": 10297,\n  \"motorcycles</w>\": 24869,\n  \"motoring</w>\": 44491,\n  \"motorists</w>\": 32766,\n  \"motorola</w>\": 33738,\n  \"motors</w>\": 14989,\n  \"motorsport</w>\": 18371,\n  \"motorsports</w>\": 24264,\n  \"motorway</w>\": 31808,\n  \"motown</w>\": 32685,\n  \"mott\": 44570,\n  \"mott</w>\": 21708,\n  \"motto</w>\": 23338,\n  \"mou\": 2809,\n  \"mou</w>\": 25289,\n  \"moud</w>\": 37698,\n  \"moul\": 25725,\n  \"mould</w>\": 36743,\n  \"moulin</w>\": 47656,\n  \"moun\": 2023,\n  \"mound</w>\": 21414,\n  \"mount\": 20553,\n  \"mount</w>\": 5532,\n  \"mountain\": 14547,\n  \"mountain</w>\": 3965,\n  \"mountaine\": 24841,\n  \"mountaineer</w>\": 49255,\n  \"mountains</w>\": 5873,\n  \"mounted</w>\": 17897,\n  \"mounting</w>\": 29910,\n  \"mounts</w>\": 36767,\n  \"mour\": 9053,\n  \"mour</w>\": 42446,\n  \"moured</w>\": 29555,\n  \"mourinho</w>\": 18536,\n  \"mourn</w>\": 33592,\n  \"mourning</w>\": 24169,\n  \"mourns</w>\": 42811,\n  \"mous\": 24837,\n  \"mous</w>\": 17425,\n  \"mouse\": 33032,\n  \"mouse</w>\": 9301,\n  \"mousse</w>\": 31869,\n  \"moustache</w>\": 32795,\n  \"mouth\": 15152,\n  \"mouth</w>\": 4932,\n  \"mouths</w>\": 38518,\n  \"mov</w>\": 23950,\n  \"move\": 16624,\n  \"move</w>\": 2783,\n  \"moved</w>\": 6997,\n  \"movember</w>\": 23474,\n  \"movement</w>\": 5208,\n  \"movements</w>\": 19665,\n  \"mover</w>\": 37673,\n  \"movers</w>\": 33957,\n  \"moves</w>\": 6880,\n  \"movi\": 1707,\n  \"movic</w>\": 43838,\n  \"movie\": 11247,\n  \"movie</w>\": 2016,\n  \"movies</w>\": 4772,\n  \"moving\": 32160,\n  \"moving</w>\": 3584,\n  \"mow\": 31006,\n  \"mow</w>\": 36329,\n  \"mower</w>\": 30895,\n  \"mowing</w>\": 46424,\n  \"mowx</w>\": 44263,\n  \"moy\": 27276,\n  \"moy</w>\": 34205,\n  \"moyes</w>\": 37119,\n  \"moz\": 14761,\n  \"moz</w>\": 43738,\n  \"mozam\": 26648,\n  \"mozambique</w>\": 28831,\n  \"mozart</w>\": 22132,\n  \"mozz\": 26317,\n  \"mozzarella</w>\": 27845,\n  \"mp\": 1037,\n  \"mp</w>\": 1246,\n  \"mpa</w>\": 30749,\n  \"mpc</w>\": 38560,\n  \"mpd</w>\": 33814,\n  \"mped</w>\": 28134,\n  \"mper</w>\": 22803,\n  \"mpg\": 39830,\n  \"mpg</w>\": 37454,\n  \"mpgvip</w>\": 42149,\n  \"mph</w>\": 5306,\n  \"mpi</w>\": 43263,\n  \"mping</w>\": 27999,\n  \"mple</w>\": 21139,\n  \"mplo\": 47071,\n  \"mpls</w>\": 34298,\n  \"mpo</w>\": 33674,\n  \"mpp</w>\": 39570,\n  \"mps</w>\": 5504,\n  \"mption</w>\": 9717,\n  \"mpton</w>\": 27448,\n  \"mpu\": 47156,\n  \"mpus</w>\": 25864,\n  \"mpy</w>\": 17192,\n  \"mq\": 19103,\n  \"mqm</w>\": 24687,\n  \"mr\": 3139,\n  \"mr</w>\": 1982,\n  \"mra\": 44568,\n  \"mrc</w>\": 25897,\n  \"mri</w>\": 24773,\n  \"mrs\": 25003,\n  \"mrs</w>\": 4255,\n  \"mrt</w>\": 30256,\n  \"mru</w>\": 22370,\n  \"mrw</w>\": 15303,\n  \"ms\": 3525,\n  \"ms</w>\": 988,\n  \"msa</w>\": 36306,\n  \"msc\": 31826,\n  \"msc</w>\": 20529,\n  \"msd\": 25804,\n  \"msd</w>\": 36407,\n  \"msdhoni</w>\": 32850,\n  \"msf</w>\": 36239,\n  \"msg\": 44430,\n  \"msg</w>\": 10928,\n  \"msh\": 41751,\n  \"msi\": 43597,\n  \"msi</w>\": 45278,\n  \"msk\": 38501,\n  \"msl</w>\": 42736,\n  \"msm</w>\": 22210,\n  \"msn\": 18824,\n  \"msn</w>\": 41042,\n  \"msnbc</w>\": 20245,\n  \"mson\": 27773,\n  \"mson</w>\": 12298,\n  \"msp\": 41445,\n  \"msp</w>\": 22318,\n  \"mss\": 42136,\n  \"mss</w>\": 48610,\n  \"mst</w>\": 26335,\n  \"msu\": 26763,\n  \"msu</w>\": 17298,\n  \"mswx</w>\": 42957,\n  \"msy</w>\": 43919,\n  \"mt\": 4252,\n  \"mt</w>\": 3284,\n  \"mta</w>\": 28691,\n  \"mtb\": 48306,\n  \"mtb</w>\": 18747,\n  \"mtc</w>\": 42482,\n  \"mtg\": 49142,\n  \"mtg</w>\": 13648,\n  \"mth</w>\": 48151,\n  \"mtl</w>\": 22135,\n  \"mtn\": 26041,\n  \"mtn</w>\": 18953,\n  \"mtr</w>\": 46650,\n  \"mts</w>\": 38751,\n  \"mtv\": 8099,\n  \"mtv</w>\": 12555,\n  \"mtvbr\": 47258,\n  \"mtvhottest</w>\": 16751,\n  \"mtvstars</w>\": 19948,\n  \"mu\": 670,\n  \"mu</w>\": 6411,\n  \"mua</w>\": 21395,\n  \"muay\": 44910,\n  \"muaythai</w>\": 47763,\n  \"mubarak</w>\": 17957,\n  \"muc</w>\": 49115,\n  \"much\": 14300,\n  \"much</w>\": 1238,\n  \"mucha</w>\": 42191,\n  \"muchas</w>\": 26278,\n  \"mucho</w>\": 19864,\n  \"muck\": 44731,\n  \"muck</w>\": 45330,\n  \"mud\": 17491,\n  \"mud</w>\": 11673,\n  \"mudder</w>\": 49104,\n  \"muddy</w>\": 21524,\n  \"mue\": 44383,\n  \"mue</w>\": 40717,\n  \"mueller\": 46863,\n  \"mueller</w>\": 14719,\n  \"muen\": 48646,\n  \"muer\": 33840,\n  \"muf\": 33852,\n  \"mufc</w>\": 9013,\n  \"muffin</w>\": 22696,\n  \"muffins</w>\": 25922,\n  \"mufti</w>\": 44930,\n  \"mug\": 16339,\n  \"mug</w>\": 9722,\n  \"mugabe</w>\": 36441,\n  \"mughal</w>\": 37508,\n  \"mugs</w>\": 22852,\n  \"mugshot</w>\": 40028,\n  \"muh\": 36335,\n  \"muh</w>\": 46475,\n  \"muham\": 10043,\n  \"muhammad</w>\": 12259,\n  \"muir\": 44650,\n  \"muir</w>\": 24745,\n  \"muj\": 44635,\n  \"muk\": 17327,\n  \"muk</w>\": 32600,\n  \"mukher\": 34575,\n  \"mukherjee</w>\": 37862,\n  \"mul\": 1899,\n  \"mul</w>\": 43193,\n  \"mula</w>\": 40937,\n  \"mulator</w>\": 17463,\n  \"mulberry</w>\": 39221,\n  \"mule</w>\": 28695,\n  \"mull\": 17313,\n  \"mull</w>\": 35310,\n  \"mulled</w>\": 44641,\n  \"mullen</w>\": 30797,\n  \"muller</w>\": 33956,\n  \"mullet</w>\": 35010,\n  \"mulligan</w>\": 44336,\n  \"mullins</w>\": 41265,\n  \"mult\": 34219,\n  \"multi\": 3947,\n  \"multi</w>\": 6400,\n  \"multic\": 21683,\n  \"multicul\": 28004,\n  \"multicultural</w>\": 34667,\n  \"multil\": 27975,\n  \"multimedia</w>\": 27977,\n  \"multin\": 38996,\n  \"multinational</w>\": 46540,\n  \"multip\": 40314,\n  \"multiplayer</w>\": 27460,\n  \"multiple</w>\": 6470,\n  \"multipurpose</w>\": 47665,\n  \"multit\": 27814,\n  \"multitasking</w>\": 48684,\n  \"mulus</w>\": 26180,\n  \"mum\": 15565,\n  \"mum</w>\": 4030,\n  \"mumb\": 5850,\n  \"mumbai\": 24279,\n  \"mumbai</w>\": 6971,\n  \"mumford</w>\": 46184,\n  \"mummy</w>\": 16301,\n  \"mums</w>\": 17868,\n  \"mun\": 2617,\n  \"mun</w>\": 21059,\n  \"muna</w>\": 48424,\n  \"munch\": 23587,\n  \"munch</w>\": 33299,\n  \"munchies</w>\": 44324,\n  \"munchkin</w>\": 41305,\n  \"mund</w>\": 14244,\n  \"mundo</w>\": 20990,\n  \"muni\": 27327,\n  \"muni</w>\": 39795,\n  \"munich</w>\": 13526,\n  \"munici\": 12159,\n  \"municipal\": 43667,\n  \"municipal</w>\": 16600,\n  \"municipality</w>\": 29987,\n  \"munition</w>\": 32668,\n  \"munro</w>\": 36501,\n  \"munster</w>\": 27201,\n  \"mup</w>\": 21966,\n  \"muppet</w>\": 40598,\n  \"muppets</w>\": 40187,\n  \"mups</w>\": 42195,\n  \"mur\": 2144,\n  \"mur</w>\": 18293,\n  \"mura\": 45176,\n  \"mural</w>\": 12315,\n  \"murals</w>\": 31499,\n  \"murder\": 28136,\n  \"murder</w>\": 5787,\n  \"murdered</w>\": 13158,\n  \"murderer</w>\": 26956,\n  \"murderers</w>\": 48472,\n  \"murdering</w>\": 36055,\n  \"murders</w>\": 22409,\n  \"murdoch</w>\": 29037,\n  \"murphy\": 48976,\n  \"murphy</w>\": 8914,\n  \"murray\": 31978,\n  \"murray</w>\": 7513,\n  \"murs</w>\": 38783,\n  \"mus\": 2198,\n  \"mus</w>\": 8103,\n  \"musa</w>\": 30540,\n  \"musc\": 5696,\n  \"muscat</w>\": 33322,\n  \"muscle\": 27323,\n  \"muscle</w>\": 9269,\n  \"muscles</w>\": 16786,\n  \"muscular</w>\": 30606,\n  \"muse\": 2369,\n  \"muse</w>\": 15686,\n  \"museo</w>\": 36457,\n  \"muses</w>\": 48243,\n  \"museu\": 27087,\n  \"museum\": 15602,\n  \"museum</w>\": 2786,\n  \"museums</w>\": 15542,\n  \"museumweek</w>\": 37996,\n  \"mush\": 7635,\n  \"mushroom</w>\": 13011,\n  \"mushrooms</w>\": 14730,\n  \"musi\": 15628,\n  \"music\": 4110,\n  \"music</w>\": 1179,\n  \"musica</w>\": 26668,\n  \"musical\": 36002,\n  \"musical</w>\": 5173,\n  \"musically</w>\": 48893,\n  \"musicals</w>\": 36974,\n  \"musichistory</w>\": 37890,\n  \"musician</w>\": 11179,\n  \"musicians</w>\": 12498,\n  \"musicislife</w>\": 43311,\n  \"musicmonday</w>\": 35887,\n  \"musicvideo</w>\": 26764,\n  \"musik</w>\": 32986,\n  \"musings</w>\": 44961,\n  \"musique</w>\": 42250,\n  \"musk\": 32143,\n  \"musk</w>\": 19063,\n  \"muskete\": 32775,\n  \"musketeers</w>\": 37993,\n  \"musko\": 34987,\n  \"muskoka</w>\": 40832,\n  \"musli\": 4958,\n  \"muslim\": 43795,\n  \"muslim</w>\": 7060,\n  \"muslims</w>\": 10513,\n  \"muss\": 41493,\n  \"mussels</w>\": 33393,\n  \"must\": 6783,\n  \"must</w>\": 2048,\n  \"mustache</w>\": 23451,\n  \"mustaf\": 23596,\n  \"mustafa</w>\": 29000,\n  \"mustang\": 42361,\n  \"mustang</w>\": 13309,\n  \"mustangs</w>\": 22500,\n  \"mustard</w>\": 15794,\n  \"muster</w>\": 47361,\n  \"mustread</w>\": 28978,\n  \"mut\": 12598,\n  \"mut</w>\": 22839,\n  \"mutant</w>\": 28384,\n  \"mutation</w>\": 38626,\n  \"mutations</w>\": 39651,\n  \"mute</w>\": 31252,\n  \"muted</w>\": 48028,\n  \"muth</w>\": 34280,\n  \"mutil\": 39950,\n  \"mutt</w>\": 45924,\n  \"mutu\": 17574,\n  \"mutual</w>\": 15055,\n  \"mutuals</w>\": 31158,\n  \"muy</w>\": 44625,\n  \"mv\": 10580,\n  \"mv</w>\": 8269,\n  \"mvc</w>\": 40549,\n  \"mvp</w>\": 8905,\n  \"mw\": 16725,\n  \"mw</w>\": 11206,\n  \"mwc</w>\": 24289,\n  \"mwf</w>\": 48565,\n  \"mx\": 21947,\n  \"mx</w>\": 9575,\n  \"my\": 1152,\n  \"my</w>\": 607,\n  \"mya</w>\": 31401,\n  \"myal\": 42735,\n  \"myan\": 13761,\n  \"myanmar</w>\": 14764,\n  \"myart</w>\": 38826,\n  \"myco\": 48362,\n  \"mydayin\": 41896,\n  \"mydayinla</w>\": 42801,\n  \"mydubai</w>\": 43475,\n  \"mye\": 27551,\n  \"myel\": 40084,\n  \"myers</w>\": 15993,\n  \"myjaps</w>\": 47939,\n  \"myle\": 43700,\n  \"myles</w>\": 25511,\n  \"mylife</w>\": 30537,\n  \"mylittle\": 37757,\n  \"mylittlepony</w>\": 45107,\n  \"myo\": 16206,\n  \"myr\": 20272,\n  \"myra</w>\": 35694,\n  \"myri\": 34972,\n  \"myrt\": 47785,\n  \"myrtle</w>\": 27768,\n  \"mys</w>\": 11724,\n  \"myself</w>\": 3245,\n  \"mysore</w>\": 44924,\n  \"myspace</w>\": 41382,\n  \"myster\": 4669,\n  \"mysteries</w>\": 20605,\n  \"mysterious</w>\": 12650,\n  \"mystery\": 39828,\n  \"mystery</w>\": 6711,\n  \"mysti\": 28711,\n  \"mystic\": 36264,\n  \"mystic</w>\": 23722,\n  \"mystical</w>\": 34122,\n  \"myth\": 20322,\n  \"myth</w>\": 13878,\n  \"mythical</w>\": 34377,\n  \"mytho\": 43857,\n  \"mythology</w>\": 22496,\n  \"myths</w>\": 18675,\n  \"mz\": 29509,\n  \"mz</w>\": 33400,\n  \"mzan\": 36322,\n  \"mzansi</w>\": 43301,\n  \"mÃ¡\": 36842,\n  \"mÃ©\": 21890,\n  \"mÃ©xico</w>\": 46159,\n  \"mÃ¼\": 28142,\n  \"mÃ¼n\": 41235,\n  \"n\": 77,\n  \"n</w>\": 333,\n  \"na\": 1097,\n  \"na</w>\": 1272,\n  \"naa</w>\": 37738,\n  \"naacp</w>\": 32176,\n  \"nab\": 6951,\n  \"nab</w>\": 19440,\n  \"nabe\": 35111,\n  \"naby</w>\": 24800,\n  \"nac\": 14557,\n  \"nac</w>\": 18950,\n  \"nach\": 12168,\n  \"nach</w>\": 43622,\n  \"nacho</w>\": 35647,\n  \"nachos</w>\": 32847,\n  \"nacht</w>\": 37261,\n  \"nacional</w>\": 38782,\n  \"nad\": 6204,\n  \"nad</w>\": 43928,\n  \"nada</w>\": 31683,\n  \"nadal</w>\": 20814,\n  \"nade\": 24908,\n  \"nadi\": 30512,\n  \"nadia</w>\": 27487,\n  \"nadine</w>\": 23356,\n  \"nadu</w>\": 20936,\n  \"nae</w>\": 19374,\n  \"naf\": 16161,\n  \"naf</w>\": 45956,\n  \"nafta</w>\": 43123,\n  \"nag\": 6694,\n  \"nag</w>\": 23902,\n  \"naga\": 45953,\n  \"naga</w>\": 38997,\n  \"nagar</w>\": 17490,\n  \"nage</w>\": 41219,\n  \"nago\": 38349,\n  \"nagoya</w>\": 43303,\n  \"nagpur</w>\": 43328,\n  \"nah\": 26421,\n  \"nah</w>\": 11129,\n  \"nahi</w>\": 35244,\n  \"nai\": 6230,\n  \"nai</w>\": 10692,\n  \"naia</w>\": 31340,\n  \"naidu</w>\": 42429,\n  \"naija</w>\": 16326,\n  \"naik</w>\": 34424,\n  \"nail\": 19459,\n  \"nail</w>\": 9059,\n  \"nailart</w>\": 43532,\n  \"nailed</w>\": 19035,\n  \"nails</w>\": 8469,\n  \"nair</w>\": 27107,\n  \"naira</w>\": 39450,\n  \"naire</w>\": 48892,\n  \"nairobi</w>\": 17756,\n  \"nais\": 46396,\n  \"naissance</w>\": 44761,\n  \"naive</w>\": 43362,\n  \"naj\": 30985,\n  \"naji\": 32589,\n  \"nak\": 9248,\n  \"nak</w>\": 25550,\n  \"naked\": 46371,\n  \"naked</w>\": 11478,\n  \"naku\": 39864,\n  \"nal\": 14132,\n  \"nal</w>\": 3119,\n  \"nale</w>\": 27198,\n  \"nall</w>\": 32869,\n  \"nally</w>\": 26158,\n  \"nam\": 1410,\n  \"nam</w>\": 12344,\n  \"nama</w>\": 39586,\n  \"naman</w>\": 27635,\n  \"namaste</w>\": 35549,\n  \"name\": 18160,\n  \"name</w>\": 1981,\n  \"named</w>\": 3194,\n  \"nameis\": 40831,\n  \"nament</w>\": 3916,\n  \"naments</w>\": 16540,\n  \"names</w>\": 6130,\n  \"namesake</w>\": 41298,\n  \"nami\": 20393,\n  \"namibia</w>\": 23731,\n  \"naming</w>\": 19367,\n  \"namjoon</w>\": 31986,\n  \"namm</w>\": 35524,\n  \"namo\": 46013,\n  \"namo</w>\": 24854,\n  \"nan\": 4375,\n  \"nan</w>\": 7750,\n  \"nana</w>\": 18761,\n  \"nanaimo</w>\": 40518,\n  \"nancy\": 21511,\n  \"nancy</w>\": 11425,\n  \"nand\": 20435,\n  \"nandez</w>\": 12764,\n  \"nando\": 46044,\n  \"nang\": 48148,\n  \"nani</w>\": 27980,\n  \"nanny</w>\": 31104,\n  \"nano\": 15835,\n  \"nano</w>\": 22006,\n  \"nanop\": 34177,\n  \"nanotechnology</w>\": 42235,\n  \"nanow\": 46734,\n  \"nant</w>\": 22526,\n  \"nantes</w>\": 47533,\n  \"nantucket</w>\": 41573,\n  \"nao</w>\": 39319,\n  \"naom\": 34955,\n  \"naomi</w>\": 20173,\n  \"nap\": 6568,\n  \"nap</w>\": 11012,\n  \"napa</w>\": 20545,\n  \"napier</w>\": 40875,\n  \"napkin</w>\": 38930,\n  \"naples</w>\": 23560,\n  \"napo\": 18715,\n  \"napol\": 20122,\n  \"napoleon</w>\": 24969,\n  \"napoli</w>\": 22445,\n  \"napp\": 11359,\n  \"napping</w>\": 37657,\n  \"naps</w>\": 31317,\n  \"naq\": 46453,\n  \"nar\": 2977,\n  \"nar</w>\": 20145,\n  \"nara</w>\": 33823,\n  \"narcis\": 25229,\n  \"narcissi\": 35442,\n  \"narco\": 38461,\n  \"nard</w>\": 18216,\n  \"nare\": 34853,\n  \"naren\": 8468,\n  \"narendr\": 9807,\n  \"narendra</w>\": 25848,\n  \"narendramodi</w>\": 9853,\n  \"narnia</w>\": 48693,\n  \"narr\": 11845,\n  \"narrated</w>\": 43609,\n  \"narrative</w>\": 15933,\n  \"narratives</w>\": 35117,\n  \"narrator</w>\": 46529,\n  \"narrow\": 24006,\n  \"narrow</w>\": 16652,\n  \"narrowly</w>\": 29747,\n  \"naruto</w>\": 22732,\n  \"nas\": 3090,\n  \"nas</w>\": 15250,\n  \"nasa</w>\": 6841,\n  \"nasal</w>\": 42853,\n  \"nascar\": 25723,\n  \"nascar</w>\": 7868,\n  \"nasdaq</w>\": 26629,\n  \"nash\": 6771,\n  \"nash</w>\": 13620,\n  \"nasheed</w>\": 49176,\n  \"nashgrier</w>\": 33372,\n  \"nashville\": 45356,\n  \"nashville</w>\": 8585,\n  \"nasi</w>\": 47987,\n  \"nasir</w>\": 47509,\n  \"nassau</w>\": 34048,\n  \"nasser</w>\": 43559,\n  \"nasty\": 32930,\n  \"nasty</w>\": 8709,\n  \"nat\": 1276,\n  \"nat</w>\": 11310,\n  \"nata</w>\": 39392,\n  \"natal</w>\": 28516,\n  \"natali\": 20296,\n  \"natalia</w>\": 32978,\n  \"natalie\": 36634,\n  \"natalie</w>\": 13595,\n  \"natash\": 48701,\n  \"natasha</w>\": 23093,\n  \"nate\": 26643,\n  \"nate</w>\": 7587,\n  \"natgeo\": 33009,\n  \"natgeo</w>\": 25046,\n  \"nath\": 22203,\n  \"nath</w>\": 19843,\n  \"nathan\": 13028,\n  \"nathan</w>\": 9711,\n  \"nathanfillion</w>\": 47422,\n  \"nathaniel</w>\": 32667,\n  \"nati\": 1060,\n  \"nati</w>\": 13384,\n  \"natic</w>\": 44944,\n  \"natin</w>\": 44358,\n  \"nation\": 2317,\n  \"nation</w>\": 2670,\n  \"national\": 3126,\n  \"national</w>\": 1362,\n  \"nationalbestfriend\": 42222,\n  \"nationaldogday</w>\": 32227,\n  \"nationalism</w>\": 29867,\n  \"nationalist</w>\": 25058,\n  \"nationality</w>\": 44451,\n  \"nationally</w>\": 15130,\n  \"nationalpark</w>\": 33060,\n  \"nationalparks</w>\": 41204,\n  \"nationals</w>\": 10784,\n  \"nationaltrust</w>\": 34051,\n  \"nations</w>\": 7654,\n  \"nationwide</w>\": 13795,\n  \"native\": 20639,\n  \"native</w>\": 4562,\n  \"natives</w>\": 36060,\n  \"nativity</w>\": 33988,\n  \"natl\": 39225,\n  \"natl</w>\": 34465,\n  \"nato</w>\": 13139,\n  \"nats</w>\": 21106,\n  \"natu\": 2775,\n  \"natur\": 6800,\n  \"natural\": 13198,\n  \"natural</w>\": 3288,\n  \"naturally</w>\": 12995,\n  \"naturals</w>\": 44686,\n  \"nature\": 9382,\n  \"nature</w>\": 2625,\n  \"naturelovers</w>\": 41514,\n  \"naturephotography</w>\": 22533,\n  \"natures</w>\": 15616,\n  \"natureuk</w>\": 46193,\n  \"nau\": 5955,\n  \"nau</w>\": 32878,\n  \"naught</w>\": 41001,\n  \"naughty\": 47255,\n  \"naughty</w>\": 15101,\n  \"nautical</w>\": 31660,\n  \"nav\": 3413,\n  \"nav</w>\": 25308,\n  \"navajo</w>\": 35523,\n  \"naval\": 44725,\n  \"naval</w>\": 13273,\n  \"navar\": 24848,\n  \"navarro</w>\": 37104,\n  \"nave\": 42704,\n  \"naveen</w>\": 43837,\n  \"naver</w>\": 32534,\n  \"navi\": 16159,\n  \"navi</w>\": 44848,\n  \"navig\": 12507,\n  \"navigate</w>\": 24400,\n  \"navigating</w>\": 33134,\n  \"navigation</w>\": 20148,\n  \"navigator</w>\": 38910,\n  \"navis</w>\": 36377,\n  \"navratri</w>\": 45428,\n  \"navy\": 28414,\n  \"navy</w>\": 5598,\n  \"naw\": 16259,\n  \"naw</w>\": 30500,\n  \"nawaz\": 49161,\n  \"nawaz</w>\": 19523,\n  \"nax\": 38299,\n  \"nay\": 11704,\n  \"nay</w>\": 16182,\n  \"naya</w>\": 38917,\n  \"nayanth\": 38157,\n  \"nayanthara</w>\": 45184,\n  \"naz\": 6363,\n  \"naz</w>\": 35534,\n  \"nazi</w>\": 12972,\n  \"nazis</w>\": 21778,\n  \"nb\": 6459,\n  \"nb</w>\": 6813,\n  \"nba\": 22524,\n  \"nba</w>\": 5139,\n  \"nbad\": 43458,\n  \"nbaf\": 30127,\n  \"nbafinals</w>\": 33803,\n  \"nbap\": 41956,\n  \"nbaplayoffs</w>\": 43860,\n  \"nbat\": 46291,\n  \"nbc\": 9352,\n  \"nbc</w>\": 8799,\n  \"nbd</w>\": 24526,\n  \"nbl</w>\": 42652,\n  \"nc\": 5021,\n  \"nc</w>\": 4911,\n  \"nca\": 6921,\n  \"ncaa</w>\": 9418,\n  \"ncbd</w>\": 47221,\n  \"ncc\": 33195,\n  \"ncc</w>\": 36686,\n  \"ncds</w>\": 47573,\n  \"ncfc</w>\": 31274,\n  \"ncis</w>\": 33617,\n  \"ncpol</w>\": 40562,\n  \"ncr</w>\": 38474,\n  \"ncs</w>\": 42689,\n  \"nct\": 27723,\n  \"nct</w>\": 20319,\n  \"ncwx</w>\": 36166,\n  \"nd\": 5625,\n  \"nd</w>\": 1764,\n  \"nda</w>\": 32862,\n  \"ndc</w>\": 47564,\n  \"ndi</w>\": 48229,\n  \"ndp</w>\": 19257,\n  \"nds</w>\": 31347,\n  \"ndtv</w>\": 26261,\n  \"ne\": 557,\n  \"ne</w>\": 1422,\n  \"nea</w>\": 24068,\n  \"neal\": 33652,\n  \"neal</w>\": 16730,\n  \"near\": 11296,\n  \"near</w>\": 2252,\n  \"nearby</w>\": 13314,\n  \"nearest</w>\": 18985,\n  \"nearing</w>\": 26571,\n  \"nearly</w>\": 4816,\n  \"nears</w>\": 37710,\n  \"neat\": 43201,\n  \"neat</w>\": 15465,\n  \"neath</w>\": 18315,\n  \"neau</w>\": 31559,\n  \"neb\": 40209,\n  \"nebra\": 13371,\n  \"nebraska</w>\": 14565,\n  \"nebu\": 49295,\n  \"nebula</w>\": 22532,\n  \"nec\": 25109,\n  \"nec</w>\": 22992,\n  \"necess\": 6961,\n  \"necessarily</w>\": 25853,\n  \"necessary</w>\": 8955,\n  \"necessities</w>\": 43483,\n  \"necessity</w>\": 33163,\n  \"neck\": 6066,\n  \"neck</w>\": 6906,\n  \"necklace</w>\": 7385,\n  \"necklaces</w>\": 32276,\n  \"necks</w>\": 29701,\n  \"nectar</w>\": 33683,\n  \"ned\": 16030,\n  \"ned</w>\": 1369,\n  \"nederland</w>\": 49058,\n  \"nee\": 20494,\n  \"nee</w>\": 10601,\n  \"need\": 3229,\n  \"need</w>\": 1262,\n  \"needed</w>\": 4049,\n  \"needing</w>\": 22894,\n  \"needle\": 44490,\n  \"needle</w>\": 19886,\n  \"needles</w>\": 27250,\n  \"needless</w>\": 39984,\n  \"needs</w>\": 2536,\n  \"needy</w>\": 30150,\n  \"neel\": 33092,\n  \"neel</w>\": 46043,\n  \"neer\": 34245,\n  \"nees</w>\": 47248,\n  \"neet</w>\": 46362,\n  \"neg\": 5513,\n  \"negan</w>\": 42623,\n  \"negative</w>\": 8869,\n  \"negatively</w>\": 40254,\n  \"negativity</w>\": 34658,\n  \"neglec\": 18827,\n  \"neglect</w>\": 33680,\n  \"neglected</w>\": 31893,\n  \"negli\": 32594,\n  \"negligence</w>\": 45658,\n  \"negoti\": 10216,\n  \"negotiate</w>\": 32969,\n  \"negotiating</w>\": 35510,\n  \"negotiation</w>\": 36504,\n  \"negotiations</w>\": 20433,\n  \"negr\": 42190,\n  \"negro</w>\": 26554,\n  \"neh\": 40416,\n  \"neh</w>\": 41697,\n  \"neha</w>\": 44463,\n  \"nehru</w>\": 30316,\n  \"nei\": 9366,\n  \"neigh\": 4061,\n  \"neighb\": 6534,\n  \"neighbor\": 7759,\n  \"neighbor</w>\": 14485,\n  \"neighborhood</w>\": 9471,\n  \"neighborhoods</w>\": 26713,\n  \"neighboring</w>\": 44754,\n  \"neighbors</w>\": 13037,\n  \"neighbour\": 15858,\n  \"neighbour</w>\": 23719,\n  \"neighbourhood</w>\": 20312,\n  \"neighbours</w>\": 17594,\n  \"neil\": 13591,\n  \"neil</w>\": 8030,\n  \"neilhimself</w>\": 45682,\n  \"neill</w>\": 19324,\n  \"neither</w>\": 14398,\n  \"nek</w>\": 47727,\n  \"neko</w>\": 47066,\n  \"nel\": 5476,\n  \"nel</w>\": 2693,\n  \"nell\": 27081,\n  \"nell</w>\": 8117,\n  \"nelly</w>\": 21166,\n  \"nels</w>\": 19296,\n  \"nelson\": 24774,\n  \"nelson</w>\": 8586,\n  \"nem</w>\": 45153,\n  \"neman</w>\": 48553,\n  \"neme\": 30993,\n  \"nemesis</w>\": 37811,\n  \"nemo</w>\": 30441,\n  \"nen\": 17817,\n  \"nen</w>\": 15451,\n  \"nene</w>\": 44167,\n  \"neo\": 14562,\n  \"neo</w>\": 11017,\n  \"neon\": 21043,\n  \"neon</w>\": 13919,\n  \"neonatal</w>\": 46464,\n  \"neop\": 49069,\n  \"nep\": 20739,\n  \"nep</w>\": 41960,\n  \"nepal\": 25597,\n  \"nepal</w>\": 10066,\n  \"nepali</w>\": 47579,\n  \"neph\": 27926,\n  \"nephe\": 41810,\n  \"nephew</w>\": 11689,\n  \"nephews</w>\": 43747,\n  \"nephro\": 43054,\n  \"neptune</w>\": 30566,\n  \"ner\": 2064,\n  \"ner</w>\": 998,\n  \"nerd\": 24452,\n  \"nerd</w>\": 12273,\n  \"nerds</w>\": 22609,\n  \"nerdy</w>\": 33124,\n  \"nered</w>\": 17583,\n  \"nerf</w>\": 42914,\n  \"nering</w>\": 20226,\n  \"nero</w>\": 29048,\n  \"ners</w>\": 2129,\n  \"nerve</w>\": 18571,\n  \"nerves</w>\": 27813,\n  \"nervous</w>\": 13928,\n  \"nery</w>\": 48597,\n  \"nes\": 5457,\n  \"nes</w>\": 4980,\n  \"nesburg</w>\": 27159,\n  \"nese</w>\": 32220,\n  \"ness\": 7187,\n  \"ness</w>\": 1294,\n  \"nesses</w>\": 20107,\n  \"nessy</w>\": 32939,\n  \"nest\": 20302,\n  \"nest</w>\": 8719,\n  \"nesting</w>\": 28860,\n  \"nestle</w>\": 43967,\n  \"nestled</w>\": 38107,\n  \"nests</w>\": 41133,\n  \"net\": 1851,\n  \"net</w>\": 2315,\n  \"netany\": 23137,\n  \"netanyahu</w>\": 23583,\n  \"netball</w>\": 19761,\n  \"netes</w>\": 44335,\n  \"netfli\": 6304,\n  \"netflix\": 35325,\n  \"netflix</w>\": 6600,\n  \"nether\": 9946,\n  \"netherlands</w>\": 11060,\n  \"neti\": 43980,\n  \"netneutrality</w>\": 47794,\n  \"nets</w>\": 8582,\n  \"nett\": 23403,\n  \"nett</w>\": 6975,\n  \"nette</w>\": 13271,\n  \"network\": 23285,\n  \"network</w>\": 3304,\n  \"networking</w>\": 9818,\n  \"networks</w>\": 10004,\n  \"neu\": 3855,\n  \"neu</w>\": 43342,\n  \"neue</w>\": 45764,\n  \"neur\": 19001,\n  \"neur</w>\": 31976,\n  \"neural</w>\": 26388,\n  \"neuro\": 7401,\n  \"neuro</w>\": 36000,\n  \"neurological</w>\": 41718,\n  \"neurology</w>\": 43197,\n  \"neurons</w>\": 40442,\n  \"neuroscience</w>\": 23381,\n  \"neutr\": 17207,\n  \"neutral</w>\": 17011,\n  \"neutrality</w>\": 26511,\n  \"neutron</w>\": 44056,\n  \"nev\": 10236,\n  \"nev</w>\": 43645,\n  \"neva</w>\": 43304,\n  \"nevada</w>\": 13499,\n  \"neve\": 44099,\n  \"neve</w>\": 44023,\n  \"never\": 6746,\n  \"never</w>\": 1426,\n  \"neveragain</w>\": 45053,\n  \"neverforget</w>\": 19242,\n  \"nevergiveup</w>\": 42497,\n  \"neverland</w>\": 41483,\n  \"nevertheless</w>\": 48355,\n  \"nevertrump</w>\": 47494,\n  \"neville</w>\": 19269,\n  \"nevis</w>\": 43670,\n  \"new\": 1218,\n  \"new</w>\": 686,\n  \"newark</w>\": 20240,\n  \"newbie</w>\": 45427,\n  \"newborn</w>\": 18320,\n  \"newbury</w>\": 34169,\n  \"newcastle\": 41955,\n  \"newcastle</w>\": 9302,\n  \"newcomer</w>\": 30648,\n  \"newcomers</w>\": 44037,\n  \"newe\": 40068,\n  \"newell</w>\": 41436,\n  \"newer</w>\": 33099,\n  \"newest</w>\": 4990,\n  \"newfound\": 25250,\n  \"newfoundland</w>\": 28079,\n  \"newh\": 18546,\n  \"newin\": 31911,\n  \"newjersey</w>\": 32621,\n  \"newly\": 42186,\n  \"newly</w>\": 7056,\n  \"newman</w>\": 15815,\n  \"newmarket</w>\": 38617,\n  \"newmexico</w>\": 35238,\n  \"newmusic\": 32510,\n  \"newmusic</w>\": 17201,\n  \"newor\": 25969,\n  \"neworleans</w>\": 31205,\n  \"newport\": 42580,\n  \"newport</w>\": 14846,\n  \"newprofile\": 14633,\n  \"newprofilepic</w>\": 14754,\n  \"newrelease</w>\": 34793,\n  \"news\": 6216,\n  \"news</w>\": 1120,\n  \"newsat</w>\": 43979,\n  \"newsc\": 28656,\n  \"newscast</w>\": 45031,\n  \"newsle\": 10727,\n  \"newsletter</w>\": 11069,\n  \"newsnow</w>\": 48650,\n  \"newsp\": 7109,\n  \"newspaper</w>\": 8786,\n  \"newspapers</w>\": 22423,\n  \"newsroom</w>\": 23200,\n  \"newt</w>\": 37224,\n  \"newton\": 33122,\n  \"newton</w>\": 12606,\n  \"newtown</w>\": 31747,\n  \"newyear\": 22161,\n  \"newyear</w>\": 12999,\n  \"newyearseve</w>\": 37587,\n  \"newyork\": 18140,\n  \"newyork</w>\": 10454,\n  \"newyorkcity</w>\": 30460,\n  \"newyorker</w>\": 39732,\n  \"newzealand</w>\": 21117,\n  \"nex\": 6897,\n  \"nex</w>\": 39720,\n  \"next\": 12434,\n  \"next</w>\": 1131,\n  \"nextgen</w>\": 41933,\n  \"nexus</w>\": 19053,\n  \"ney\": 3857,\n  \"ney</w>\": 1438,\n  \"neymar</w>\": 21878,\n  \"neys</w>\": 12616,\n  \"nez</w>\": 27388,\n  \"nf\": 15195,\n  \"nf</w>\": 25643,\n  \"nfamily</w>\": 20098,\n  \"nfc</w>\": 23695,\n  \"nffc</w>\": 27893,\n  \"nfl\": 11219,\n  \"nfl</w>\": 4691,\n  \"nfldraft</w>\": 25002,\n  \"ng\": 10352,\n  \"ng</w>\": 5215,\n  \"nga</w>\": 35477,\n  \"ngc</w>\": 29046,\n  \"ngo\": 38740,\n  \"ngo</w>\": 24821,\n  \"ngos</w>\": 34627,\n  \"nguyen</w>\": 29947,\n  \"nh\": 3760,\n  \"nh</w>\": 10803,\n  \"nhc</w>\": 44817,\n  \"nhl\": 12290,\n  \"nhl</w>\": 8167,\n  \"nhlbruins</w>\": 39081,\n  \"nhljets</w>\": 49357,\n  \"nhm</w>\": 39483,\n  \"nhpolitics</w>\": 36125,\n  \"nhq</w>\": 42368,\n  \"nhra</w>\": 30052,\n  \"nhs\": 23282,\n  \"nhs</w>\": 7695,\n  \"ni\": 697,\n  \"ni</w>\": 3256,\n  \"nia</w>\": 3098,\n  \"niag\": 18071,\n  \"niagar\": 39298,\n  \"niagara</w>\": 18965,\n  \"niall\": 41354,\n  \"niall</w>\": 8327,\n  \"niallo\": 22855,\n  \"niallofficial</w>\": 23084,\n  \"niam\": 39347,\n  \"nian</w>\": 46003,\n  \"nib</w>\": 31049,\n  \"nic\": 2109,\n  \"nic</w>\": 6651,\n  \"nica</w>\": 29040,\n  \"nicar\": 25119,\n  \"nicaragua</w>\": 28423,\n  \"nice\": 28386,\n  \"nice</w>\": 1805,\n  \"nicely</w>\": 12303,\n  \"nicer</w>\": 29488,\n  \"nicest</w>\": 22967,\n  \"niche</w>\": 25279,\n  \"nichol\": 7668,\n  \"nicholas\": 39814,\n  \"nicholas</w>\": 13148,\n  \"nicholls</w>\": 38846,\n  \"nichols</w>\": 22730,\n  \"nicholson</w>\": 28745,\n  \"nick\": 4209,\n  \"nick</w>\": 4253,\n  \"nickel</w>\": 22034,\n  \"nickelo\": 28668,\n  \"nickelodeon</w>\": 33279,\n  \"nicki</w>\": 17738,\n  \"nickimin\": 27390,\n  \"nickiminaj</w>\": 27593,\n  \"nickjonas</w>\": 43862,\n  \"nickname</w>\": 24731,\n  \"nicknamed</w>\": 45190,\n  \"nicks</w>\": 15049,\n  \"nicky\": 28893,\n  \"nicky</w>\": 22091,\n  \"nico\": 20850,\n  \"nico</w>\": 17779,\n  \"nicol\": 9919,\n  \"nicol</w>\": 48274,\n  \"nicola</w>\": 21791,\n  \"nicolas\": 43813,\n  \"nicolas</w>\": 18918,\n  \"nicole\": 21246,\n  \"nicole</w>\": 10000,\n  \"nicot\": 45099,\n  \"nicotine</w>\": 46697,\n  \"nie\": 9524,\n  \"nie</w>\": 3501,\n  \"niece</w>\": 12795,\n  \"nieces</w>\": 44877,\n  \"niel\": 19109,\n  \"niel</w>\": 26837,\n  \"niels</w>\": 37154,\n  \"nielsen</w>\": 28372,\n  \"nier</w>\": 13014,\n  \"nies</w>\": 10586,\n  \"niest</w>\": 15007,\n  \"nieu\": 29781,\n  \"nific\": 4748,\n  \"nifty</w>\": 25604,\n  \"nig\": 27933,\n  \"nig</w>\": 28099,\n  \"nigan</w>\": 48516,\n  \"nigel\": 33919,\n  \"nigel</w>\": 15153,\n  \"niger\": 4524,\n  \"niger</w>\": 29920,\n  \"nigeri\": 40913,\n  \"nigeria</w>\": 6106,\n  \"nigerian</w>\": 12167,\n  \"nigerians</w>\": 25358,\n  \"nigh\": 13525,\n  \"nigh</w>\": 48157,\n  \"night\": 3870,\n  \"night</w>\": 930,\n  \"nightclub</w>\": 20418,\n  \"nighter</w>\": 41349,\n  \"nighting\": 36211,\n  \"nightingale</w>\": 40696,\n  \"nightlife</w>\": 28823,\n  \"nightly</w>\": 28868,\n  \"nightmare</w>\": 12867,\n  \"nightmares</w>\": 24032,\n  \"nightout</w>\": 44257,\n  \"nights</w>\": 4296,\n  \"nighttime</w>\": 38147,\n  \"nightw\": 39956,\n  \"nih</w>\": 25783,\n  \"nik\": 5126,\n  \"nik</w>\": 13705,\n  \"nike\": 16300,\n  \"nike</w>\": 5783,\n  \"nikeplus</w>\": 43154,\n  \"niki</w>\": 36136,\n  \"nikita</w>\": 37118,\n  \"nikk\": 38596,\n  \"nikki\": 23156,\n  \"nikki</w>\": 16689,\n  \"niko</w>\": 43771,\n  \"nikol\": 27430,\n  \"nikola</w>\": 42146,\n  \"nikon\": 25488,\n  \"nikon</w>\": 13849,\n  \"nikov</w>\": 43960,\n  \"nil\": 16852,\n  \"nil</w>\": 35030,\n  \"nile</w>\": 24252,\n  \"nim\": 30402,\n  \"nim</w>\": 42093,\n  \"nima</w>\": 42586,\n  \"nin\": 5794,\n  \"nin</w>\": 14145,\n  \"nina</w>\": 13891,\n  \"nine\": 16213,\n  \"nine</w>\": 7330,\n  \"ninety</w>\": 48214,\n  \"ning\": 6050,\n  \"ning</w>\": 762,\n  \"ningham</w>\": 23395,\n  \"ningly</w>\": 43537,\n  \"nings</w>\": 4588,\n  \"nington</w>\": 26214,\n  \"ninj\": 23225,\n  \"ninja</w>\": 11969,\n  \"ninjas</w>\": 42796,\n  \"nino</w>\": 25633,\n  \"ninten\": 6184,\n  \"nintendo\": 13969,\n  \"nintendo</w>\": 7886,\n  \"nintendoswitch</w>\": 16404,\n  \"ninth</w>\": 22770,\n  \"nip\": 33889,\n  \"nip</w>\": 22333,\n  \"nipp\": 24634,\n  \"nipple</w>\": 45987,\n  \"nipples</w>\": 44774,\n  \"nippon</w>\": 47960,\n  \"nips</w>\": 49241,\n  \"nir\": 15503,\n  \"nir</w>\": 40057,\n  \"nireland</w>\": 45763,\n  \"niro</w>\": 47373,\n  \"nirvana</w>\": 28300,\n  \"nis\": 5609,\n  \"nis</w>\": 3786,\n  \"nish\": 19834,\n  \"nish</w>\": 13256,\n  \"nished</w>\": 24141,\n  \"nishi\": 32386,\n  \"nishings</w>\": 49247,\n  \"nison</w>\": 45700,\n  \"niss</w>\": 39043,\n  \"nissan\": 37635,\n  \"nissan</w>\": 11082,\n  \"nist</w>\": 17782,\n  \"nister</w>\": 36640,\n  \"nit\": 4087,\n  \"nit</w>\": 19011,\n  \"nite</w>\": 8427,\n  \"niti\": 43964,\n  \"niti</w>\": 45355,\n  \"nitin</w>\": 37529,\n  \"nitro</w>\": 30726,\n  \"nitrogen</w>\": 30706,\n  \"niture</w>\": 7840,\n  \"nity</w>\": 12707,\n  \"niu</w>\": 48187,\n  \"niv</w>\": 47300,\n  \"niversary</w>\": 29643,\n  \"nix\": 48552,\n  \"nix</w>\": 32278,\n  \"nixon</w>\": 20671,\n  \"nj\": 8343,\n  \"nj</w>\": 6672,\n  \"njcaa</w>\": 48992,\n  \"njpw</w>\": 38992,\n  \"nk\": 22708,\n  \"nk</w>\": 17456,\n  \"nko\": 36353,\n  \"nl\": 12057,\n  \"nl</w>\": 7655,\n  \"nli</w>\": 37502,\n  \"nlp</w>\": 35680,\n  \"nlwx</w>\": 49260,\n  \"nm\": 15956,\n  \"nm</w>\": 11370,\n  \"nmd</w>\": 43331,\n  \"nme</w>\": 40454,\n  \"nmwx</w>\": 47967,\n  \"nn\": 8947,\n  \"nn</w>\": 12925,\n  \"nnn</w>\": 26277,\n  \"nnnn</w>\": 41420,\n  \"no\": 578,\n  \"no</w>\": 871,\n  \"noaa</w>\": 27557,\n  \"noah\": 28806,\n  \"noah</w>\": 11519,\n  \"nobel\": 33742,\n  \"nobel</w>\": 15605,\n  \"nobelprize</w>\": 46074,\n  \"noble\": 29430,\n  \"noble</w>\": 12051,\n  \"nobody</w>\": 7009,\n  \"noc\": 16988,\n  \"noc</w>\": 44420,\n  \"nocchi</w>\": 46359,\n  \"noch</w>\": 38672,\n  \"noche</w>\": 29689,\n  \"noches</w>\": 44166,\n  \"nock</w>\": 16993,\n  \"noctur\": 26291,\n  \"nocturnal</w>\": 41738,\n  \"nod</w>\": 18648,\n  \"nodapl</w>\": 39079,\n  \"node\": 31434,\n  \"node</w>\": 24871,\n  \"nodejs</w>\": 39262,\n  \"nodes</w>\": 40534,\n  \"noel\": 38406,\n  \"noel</w>\": 17496,\n  \"nof\": 29505,\n  \"noff</w>\": 46979,\n  \"nofilter</w>\": 16418,\n  \"nog</w>\": 31157,\n  \"noh</w>\": 40775,\n  \"noi\": 43115,\n  \"noi</w>\": 39889,\n  \"noida</w>\": 33404,\n  \"noir\": 39291,\n  \"noir</w>\": 12953,\n  \"nois\": 22057,\n  \"noise\": 41018,\n  \"noise</w>\": 9307,\n  \"noises</w>\": 31575,\n  \"noisse\": 45686,\n  \"noisy</w>\": 33495,\n  \"nokia</w>\": 17731,\n  \"nol\": 8055,\n  \"nola</w>\": 13289,\n  \"nolan</w>\": 17323,\n  \"nold</w>\": 40322,\n  \"nole</w>\": 34654,\n  \"noles</w>\": 40569,\n  \"nollywood</w>\": 43145,\n  \"nology</w>\": 42221,\n  \"nom\": 2981,\n  \"nom</w>\": 12799,\n  \"nomad</w>\": 27849,\n  \"noman\": 45592,\n  \"nomin\": 5643,\n  \"nominate</w>\": 17122,\n  \"nominated</w>\": 8710,\n  \"nominating</w>\": 45747,\n  \"nomination</w>\": 14136,\n  \"nominations</w>\": 17124,\n  \"nominee</w>\": 14122,\n  \"nominees</w>\": 17873,\n  \"nomnom</w>\": 26962,\n  \"nomore\": 35126,\n  \"noms</w>\": 35706,\n  \"non\": 4282,\n  \"non</w>\": 3353,\n  \"none\": 29644,\n  \"none</w>\": 8906,\n  \"nonetheless</w>\": 39675,\n  \"nonfiction</w>\": 31654,\n  \"nonprofit</w>\": 19315,\n  \"nonprofits</w>\": 37935,\n  \"nonsense</w>\": 19136,\n  \"nonstop</w>\": 30300,\n  \"nont</w>\": 25207,\n  \"noo\": 6759,\n  \"noo</w>\": 46672,\n  \"noodle</w>\": 19521,\n  \"noodles</w>\": 15782,\n  \"nook</w>\": 30088,\n  \"noon\": 37693,\n  \"noon</w>\": 2347,\n  \"noor\": 46978,\n  \"noor</w>\": 31323,\n  \"nope</w>\": 15625,\n  \"nor\": 1062,\n  \"nor</w>\": 6190,\n  \"nora</w>\": 25890,\n  \"norcal</w>\": 41970,\n  \"nord\": 19261,\n  \"nord</w>\": 36067,\n  \"nordic\": 36439,\n  \"nordic</w>\": 20734,\n  \"nordstrom</w>\": 38562,\n  \"norfolk\": 30232,\n  \"norfolk</w>\": 12202,\n  \"norm\": 10990,\n  \"norm</w>\": 22457,\n  \"norma</w>\": 35757,\n  \"normal\": 28748,\n  \"normal</w>\": 5967,\n  \"normali\": 45157,\n  \"normally</w>\": 15870,\n  \"norman\": 22027,\n  \"norman</w>\": 11338,\n  \"normandy</w>\": 23840,\n  \"normani</w>\": 44596,\n  \"norms</w>\": 33011,\n  \"norris</w>\": 21814,\n  \"norse</w>\": 36559,\n  \"norte</w>\": 35638,\n  \"north\": 3468,\n  \"north</w>\": 2188,\n  \"northampton\": 49246,\n  \"northampton</w>\": 26175,\n  \"northan\": 37081,\n  \"northbound</w>\": 24228,\n  \"northcarolina</w>\": 43386,\n  \"northe\": 24675,\n  \"northeast\": 42673,\n  \"northeast</w>\": 13009,\n  \"northeastern</w>\": 28297,\n  \"northeasthour</w>\": 42869,\n  \"norther\": 26908,\n  \"northern\": 17210,\n  \"northern</w>\": 5049,\n  \"northernlights</w>\": 48940,\n  \"northkorea</w>\": 38495,\n  \"northside</w>\": 45957,\n  \"northumber\": 22295,\n  \"northumberland</w>\": 22922,\n  \"northwales</w>\": 49371,\n  \"northwest</w>\": 12894,\n  \"northwestern</w>\": 23685,\n  \"norton</w>\": 18032,\n  \"norway</w>\": 8780,\n  \"norwe\": 14414,\n  \"norwegian</w>\": 15971,\n  \"norwich\": 37629,\n  \"norwich</w>\": 15812,\n  \"norwood</w>\": 37889,\n  \"nos</w>\": 13420,\n  \"nose\": 24192,\n  \"nose</w>\": 8231,\n  \"noses</w>\": 48163,\n  \"nostal\": 12076,\n  \"nostalgia</w>\": 16622,\n  \"nostalgic</w>\": 24468,\n  \"not\": 2534,\n  \"not</w>\": 783,\n  \"notable</w>\": 22023,\n  \"notch</w>\": 19476,\n  \"notdead</w>\": 42059,\n  \"note\": 10910,\n  \"note</w>\": 3246,\n  \"notebook</w>\": 16365,\n  \"notebooks</w>\": 37623,\n  \"noted</w>\": 22501,\n  \"notes</w>\": 5795,\n  \"nothin</w>\": 24291,\n  \"nothing\": 28412,\n  \"nothing</w>\": 2586,\n  \"noti\": 10686,\n  \"notic\": 6915,\n  \"notice</w>\": 6683,\n  \"noticeable</w>\": 40857,\n  \"noticed</w>\": 9324,\n  \"notices</w>\": 33459,\n  \"noticias</w>\": 47759,\n  \"noticing</w>\": 37571,\n  \"notification</w>\": 22512,\n  \"notifications</w>\": 23169,\n  \"notified</w>\": 39454,\n  \"noting</w>\": 38649,\n  \"notion</w>\": 37856,\n  \"notjust\": 33212,\n  \"notjustlakes</w>\": 45803,\n  \"notmy\": 39301,\n  \"noto\": 29878,\n  \"noton\": 48258,\n  \"notor\": 21711,\n  \"notori\": 44065,\n  \"notorious</w>\": 22489,\n  \"notre\": 24397,\n  \"notre</w>\": 15306,\n  \"notredame</w>\": 34077,\n  \"notsorry</w>\": 34361,\n  \"nott\": 9333,\n  \"nott</w>\": 34989,\n  \"notte</w>\": 47308,\n  \"nottingham</w>\": 12852,\n  \"notts</w>\": 25598,\n  \"nou\": 8751,\n  \"nou</w>\": 30953,\n  \"noun</w>\": 33663,\n  \"nouri\": 23796,\n  \"nourish</w>\": 46025,\n  \"nourished</w>\": 48354,\n  \"nous</w>\": 29485,\n  \"nouveau</w>\": 29948,\n  \"nouvel\": 34215,\n  \"nov\": 2264,\n  \"nov</w>\": 4293,\n  \"nova</w>\": 11236,\n  \"novak</w>\": 26465,\n  \"novasco\": 33785,\n  \"novascotia</w>\": 34744,\n  \"novation</w>\": 39753,\n  \"nove\": 30507,\n  \"novel\": 15044,\n  \"novel</w>\": 6080,\n  \"novelist</w>\": 27314,\n  \"novella</w>\": 42770,\n  \"novels</w>\": 16040,\n  \"novelty</w>\": 37750,\n  \"november</w>\": 3680,\n  \"nover</w>\": 37465,\n  \"novi\": 47957,\n  \"novice</w>\": 33743,\n  \"novo\": 27504,\n  \"novo</w>\": 36581,\n  \"now\": 2040,\n  \"now</w>\": 692,\n  \"nowadays</w>\": 26155,\n  \"nowhere</w>\": 14108,\n  \"nowplaying</w>\": 3708,\n  \"nowwatching</w>\": 30852,\n  \"nox</w>\": 27406,\n  \"noxi\": 39304,\n  \"noxious</w>\": 42833,\n  \"noy</w>\": 32787,\n  \"np\": 18205,\n  \"np</w>\": 6314,\n  \"npa</w>\": 42378,\n  \"npc</w>\": 33966,\n  \"npr\": 39941,\n  \"npr</w>\": 24078,\n  \"nps</w>\": 22025,\n  \"npt</w>\": 47231,\n  \"nr\": 6574,\n  \"nr</w>\": 9713,\n  \"nra</w>\": 17286,\n  \"nrc</w>\": 45786,\n  \"nrf</w>\": 47982,\n  \"nrg</w>\": 48662,\n  \"nrl\": 27142,\n  \"nrl</w>\": 18127,\n  \"ns\": 12405,\n  \"ns</w>\": 1373,\n  \"nsa</w>\": 23004,\n  \"nsc\": 32792,\n  \"nsd</w>\": 36659,\n  \"nsf</w>\": 34180,\n  \"nsfw</w>\": 19847,\n  \"nsi\": 47824,\n  \"nsw\": 21301,\n  \"nsw</w>\": 11693,\n  \"nswpol</w>\": 44434,\n  \"nt\": 10902,\n  \"nt</w>\": 3207,\n  \"ntr</w>\": 30845,\n  \"nts</w>\": 43775,\n  \"ntt</w>\": 22859,\n  \"ntv\": 24807,\n  \"ntv</w>\": 45304,\n  \"nu\": 1156,\n  \"nu</w>\": 9444,\n  \"nucle\": 25693,\n  \"nuclear\": 34136,\n  \"nuclear</w>\": 7279,\n  \"nude</w>\": 16630,\n  \"nudes</w>\": 32122,\n  \"nue\": 22834,\n  \"nuestra</w>\": 45649,\n  \"nuestro</w>\": 38590,\n  \"nuev\": 47861,\n  \"nueva</w>\": 48810,\n  \"nuevo</w>\": 30265,\n  \"nufc</w>\": 15720,\n  \"nuff</w>\": 37324,\n  \"nug\": 13471,\n  \"nugent</w>\": 47457,\n  \"nugget</w>\": 25448,\n  \"nuggets</w>\": 18970,\n  \"nuh</w>\": 45950,\n  \"nuit</w>\": 38815,\n  \"nuk</w>\": 39228,\n  \"nuke</w>\": 39399,\n  \"nul\": 29358,\n  \"null</w>\": 47376,\n  \"num\": 17896,\n  \"num</w>\": 30534,\n  \"numb\": 34639,\n  \"numb</w>\": 39427,\n  \"number\": 44078,\n  \"number</w>\": 2842,\n  \"numbered</w>\": 25975,\n  \"numbers</w>\": 6121,\n  \"numer\": 11442,\n  \"numerous</w>\": 17082,\n  \"numis\": 39100,\n  \"nun\": 12511,\n  \"nun</w>\": 28540,\n  \"nunavut</w>\": 48626,\n  \"nunes</w>\": 40697,\n  \"nuns</w>\": 44061,\n  \"nup\": 46757,\n  \"nur\": 3920,\n  \"nur</w>\": 33493,\n  \"nure\": 42480,\n  \"nurse\": 37547,\n  \"nurse</w>\": 10058,\n  \"nursery</w>\": 15540,\n  \"nurses</w>\": 12938,\n  \"nursing</w>\": 11126,\n  \"nurture</w>\": 38865,\n  \"nurturing</w>\": 45229,\n  \"nus\": 25157,\n  \"nus</w>\": 18239,\n  \"nut\": 10358,\n  \"nut</w>\": 6491,\n  \"nutcracker</w>\": 36733,\n  \"nutella</w>\": 27312,\n  \"nutr\": 6198,\n  \"nutri\": 15470,\n  \"nutrient</w>\": 32900,\n  \"nutrients</w>\": 24668,\n  \"nutriti\": 17978,\n  \"nutrition\": 41546,\n  \"nutrition</w>\": 7989,\n  \"nutritional</w>\": 26457,\n  \"nutritious</w>\": 30387,\n  \"nuts</w>\": 8644,\n  \"nutshell</w>\": 26659,\n  \"nutty</w>\": 39846,\n  \"nv\": 17217,\n  \"nv</w>\": 16985,\n  \"nvi\": 22847,\n  \"nvidia</w>\": 27325,\n  \"nw\": 7826,\n  \"nw</w>\": 7030,\n  \"nwa</w>\": 34237,\n  \"nwo</w>\": 40976,\n  \"nws\": 23333,\n  \"nws</w>\": 30998,\n  \"nwsl</w>\": 48394,\n  \"nwt</w>\": 25029,\n  \"nx\": 18810,\n  \"nx</w>\": 16997,\n  \"nxt\": 35037,\n  \"nxt</w>\": 17804,\n  \"ny\": 1383,\n  \"ny</w>\": 1350,\n  \"nya</w>\": 24165,\n  \"nyc\": 13304,\n  \"nyc</w>\": 2832,\n  \"nycc</w>\": 27187,\n  \"nycfc</w>\": 47497,\n  \"nye\": 40723,\n  \"nye</w>\": 13416,\n  \"nyfw</w>\": 21089,\n  \"nyk</w>\": 46841,\n  \"nylon</w>\": 25915,\n  \"nyo\": 41534,\n  \"nyo</w>\": 44586,\n  \"nypd\": 42293,\n  \"nypd</w>\": 18279,\n  \"nyr</w>\": 32538,\n  \"nyrd</w>\": 47936,\n  \"nys\": 36375,\n  \"nys</w>\": 23423,\n  \"nyse</w>\": 32650,\n  \"nyt\": 46311,\n  \"nyt</w>\": 12816,\n  \"nytimes</w>\": 13772,\n  \"nyu\": 43143,\n  \"nyu</w>\": 31355,\n  \"nz\": 10142,\n  \"nz</w>\": 7082,\n  \"o\": 78,\n  \"o</w>\": 334,\n  \"oa</w>\": 11994,\n  \"oahu</w>\": 37790,\n  \"oak\": 6010,\n  \"oak</w>\": 7221,\n  \"oakland\": 42663,\n  \"oakland</w>\": 12077,\n  \"oakley</w>\": 27810,\n  \"oaks</w>\": 16734,\n  \"oakville</w>\": 38500,\n  \"oasis</w>\": 18185,\n  \"oat\": 20095,\n  \"oat</w>\": 34132,\n  \"oates</w>\": 47094,\n  \"oath</w>\": 20108,\n  \"oatmeal</w>\": 26374,\n  \"oats</w>\": 24150,\n  \"oax\": 43090,\n  \"oaxaca</w>\": 47818,\n  \"ob\": 1411,\n  \"ob</w>\": 14908,\n  \"oba\": 42902,\n  \"oba</w>\": 15147,\n  \"obam\": 13174,\n  \"obama</w>\": 4276,\n  \"obamacare</w>\": 18005,\n  \"obe\": 11897,\n  \"obe</w>\": 29117,\n  \"obedience</w>\": 48921,\n  \"ober\": 15284,\n  \"obese</w>\": 41757,\n  \"obesity</w>\": 19499,\n  \"obey</w>\": 26926,\n  \"obi\": 21454,\n  \"obi</w>\": 18414,\n  \"obile</w>\": 20513,\n  \"obitu\": 39218,\n  \"obituary</w>\": 43580,\n  \"objec\": 7970,\n  \"object</w>\": 14115,\n  \"objective</w>\": 23663,\n  \"objectives</w>\": 30238,\n  \"objects</w>\": 13770,\n  \"obl\": 31452,\n  \"oblast</w>\": 42672,\n  \"obli\": 11416,\n  \"obligation</w>\": 34473,\n  \"obligations</w>\": 38232,\n  \"obligatory</w>\": 35020,\n  \"oblivion</w>\": 45323,\n  \"obo\": 46001,\n  \"obo</w>\": 26618,\n  \"obrien</w>\": 31946,\n  \"obs</w>\": 39162,\n  \"obsc\": 20392,\n  \"obscure</w>\": 33337,\n  \"obse\": 8433,\n  \"observ\": 9050,\n  \"observation</w>\": 20250,\n  \"observations</w>\": 27409,\n  \"observatory</w>\": 21236,\n  \"observe</w>\": 23217,\n  \"observed</w>\": 21267,\n  \"observer</w>\": 22077,\n  \"observers</w>\": 47544,\n  \"observing</w>\": 28359,\n  \"obsessed</w>\": 9744,\n  \"obsession</w>\": 15718,\n  \"obsi\": 47323,\n  \"obsole\": 35561,\n  \"obsolete</w>\": 40628,\n  \"obst\": 29398,\n  \"obstac\": 24075,\n  \"obstacle</w>\": 29751,\n  \"obstacles</w>\": 24480,\n  \"obste\": 49103,\n  \"obstru\": 44876,\n  \"obstruc\": 38762,\n  \"obstruction</w>\": 40240,\n  \"obtain</w>\": 26555,\n  \"obtained</w>\": 29322,\n  \"obvious</w>\": 13959,\n  \"obviously</w>\": 10068,\n  \"oc\": 1566,\n  \"oc</w>\": 6603,\n  \"oca</w>\": 31120,\n  \"ocal</w>\": 38148,\n  \"occ</w>\": 43940,\n  \"occa\": 8530,\n  \"occasion</w>\": 12280,\n  \"occasional</w>\": 33059,\n  \"occasionally</w>\": 32479,\n  \"occasions</w>\": 26154,\n  \"occer</w>\": 20804,\n  \"occi\": 42994,\n  \"occu\": 7863,\n  \"occult</w>\": 42529,\n  \"occup\": 11152,\n  \"occupation</w>\": 18624,\n  \"occupational</w>\": 30644,\n  \"occupied</w>\": 17271,\n  \"occupy\": 22453,\n  \"occupy</w>\": 24210,\n  \"occur\": 11264,\n  \"occur</w>\": 21813,\n  \"occurred</w>\": 19850,\n  \"occurrence</w>\": 40615,\n  \"occurring</w>\": 31335,\n  \"occurs</w>\": 26563,\n  \"ocd</w>\": 35904,\n  \"oce\": 3509,\n  \"ocean\": 12941,\n  \"ocean</w>\": 4918,\n  \"oceans</w>\": 16792,\n  \"och\": 29334,\n  \"och</w>\": 32011,\n  \"oche</w>\": 33045,\n  \"oci\": 9891,\n  \"ocity\": 46039,\n  \"ock\": 33579,\n  \"ock</w>\": 21313,\n  \"ocks</w>\": 22410,\n  \"oclock</w>\": 36274,\n  \"oco</w>\": 32553,\n  \"ocon</w>\": 33090,\n  \"ocr\": 45813,\n  \"ocre</w>\": 40320,\n  \"ocs</w>\": 27297,\n  \"oct</w>\": 4565,\n  \"octa\": 23444,\n  \"octag\": 37768,\n  \"octagon</w>\": 49167,\n  \"octane</w>\": 43040,\n  \"octavia</w>\": 47416,\n  \"octo\": 31032,\n  \"october</w>\": 3481,\n  \"octopus</w>\": 22327,\n  \"ocu\": 22709,\n  \"oculus</w>\": 30082,\n  \"od\": 4886,\n  \"od</w>\": 9719,\n  \"oda</w>\": 24777,\n  \"oday</w>\": 41954,\n  \"odd\": 15525,\n  \"odd</w>\": 11387,\n  \"oddly</w>\": 34213,\n  \"odds</w>\": 11555,\n  \"ode\": 19125,\n  \"ode</w>\": 19639,\n  \"odell</w>\": 41556,\n  \"odessa</w>\": 43574,\n  \"odi\": 12223,\n  \"odi</w>\": 18853,\n  \"odin</w>\": 35175,\n  \"odisha</w>\": 15737,\n  \"odo\": 49188,\n  \"odo</w>\": 40993,\n  \"odor</w>\": 39509,\n  \"odu\": 35095,\n  \"odu</w>\": 39904,\n  \"odyssey</w>\": 19991,\n  \"oe\": 24251,\n  \"oe</w>\": 11667,\n  \"oec\": 24288,\n  \"oecd</w>\": 30816,\n  \"oem</w>\": 29650,\n  \"oes</w>\": 3643,\n  \"of\": 684,\n  \"of</w>\": 539,\n  \"ofa</w>\": 29774,\n  \"ofc</w>\": 19877,\n  \"ofe\": 30000,\n  \"ofer\": 47322,\n  \"off\": 892,\n  \"off</w>\": 1007,\n  \"offe\": 8261,\n  \"offee</w>\": 34059,\n  \"offen\": 7231,\n  \"offence</w>\": 34594,\n  \"offences</w>\": 33972,\n  \"offended</w>\": 30765,\n  \"offender</w>\": 48294,\n  \"offenders</w>\": 35878,\n  \"offense</w>\": 15253,\n  \"offensive</w>\": 11037,\n  \"offer\": 20607,\n  \"offer</w>\": 3271,\n  \"offered</w>\": 9395,\n  \"offering</w>\": 6896,\n  \"offerings</w>\": 24535,\n  \"offers</w>\": 4679,\n  \"offic\": 3276,\n  \"office\": 18033,\n  \"office</w>\": 2171,\n  \"officeof\": 38750,\n  \"officeofrg</w>\": 47100,\n  \"officer</w>\": 4683,\n  \"officers</w>\": 6335,\n  \"offices</w>\": 10933,\n  \"offici\": 1401,\n  \"official\": 5768,\n  \"official</w>\": 1868,\n  \"officially</w>\": 4226,\n  \"officials</w>\": 7658,\n  \"officiel</w>\": 26548,\n  \"offl</w>\": 16851,\n  \"offline</w>\": 22724,\n  \"offro\": 32198,\n  \"offroad</w>\": 37173,\n  \"offs</w>\": 23987,\n  \"offseason</w>\": 25485,\n  \"offset</w>\": 28843,\n  \"offshore</w>\": 15496,\n  \"offside</w>\": 49347,\n  \"offspring</w>\": 38635,\n  \"offthe\": 38189,\n  \"ofi\": 36692,\n  \"ofi</w>\": 49090,\n  \"oficial</w>\": 18061,\n  \"oft</w>\": 16693,\n  \"oftball</w>\": 39768,\n  \"often</w>\": 4864,\n  \"ofthe\": 7592,\n  \"oftheday</w>\": 6988,\n  \"oftheweek</w>\": 20654,\n  \"oftheyear</w>\": 33975,\n  \"og\": 11542,\n  \"og</w>\": 8555,\n  \"oga</w>\": 47312,\n  \"ogden</w>\": 42011,\n  \"ogil\": 39013,\n  \"ography</w>\": 22399,\n  \"ogue</w>\": 24761,\n  \"ogun\": 48970,\n  \"oh\": 5648,\n  \"oh</w>\": 1779,\n  \"ohana</w>\": 48330,\n  \"ohh</w>\": 23076,\n  \"ohhh</w>\": 27697,\n  \"ohhhh</w>\": 40201,\n  \"ohi\": 5207,\n  \"ohio\": 18951,\n  \"ohio</w>\": 6155,\n  \"ohiostate</w>\": 41324,\n  \"ohl\": 45547,\n  \"ohl</w>\": 41095,\n  \"ohmy\": 29758,\n  \"ohn</w>\": 48043,\n  \"ohs</w>\": 39542,\n  \"ohwx</w>\": 47993,\n  \"oi\": 27357,\n  \"oi</w>\": 13934,\n  \"oic</w>\": 45554,\n  \"oid</w>\": 14758,\n  \"oids</w>\": 21847,\n  \"oil\": 11973,\n  \"oil</w>\": 2870,\n  \"oiland\": 32316,\n  \"oilandgas</w>\": 34130,\n  \"oilers</w>\": 21627,\n  \"oilpainting</w>\": 34279,\n  \"oils</w>\": 17886,\n  \"oily</w>\": 47550,\n  \"oir\": 48079,\n  \"oir</w>\": 37113,\n  \"ois</w>\": 23262,\n  \"oit\": 18453,\n  \"oitnb</w>\": 34865,\n  \"oj\": 30986,\n  \"oj</w>\": 34553,\n  \"ok\": 1944,\n  \"ok</w>\": 2481,\n  \"oka\": 42258,\n  \"oka</w>\": 19092,\n  \"okan\": 41263,\n  \"okanagan</w>\": 43233,\n  \"okay</w>\": 4917,\n  \"okc\": 42418,\n  \"okc</w>\": 18357,\n  \"oke\": 26636,\n  \"oke</w>\": 23598,\n  \"oki</w>\": 20390,\n  \"okin\": 30687,\n  \"okinawa</w>\": 35877,\n  \"okla\": 9431,\n  \"oklahoma</w>\": 10170,\n  \"oko\": 26892,\n  \"oko</w>\": 26095,\n  \"okstate</w>\": 36356,\n  \"oktoberfest</w>\": 32026,\n  \"oku\": 45010,\n  \"oku</w>\": 43829,\n  \"okwx</w>\": 27336,\n  \"ol\": 562,\n  \"ol</w>\": 2985,\n  \"ola\": 20499,\n  \"ola</w>\": 3373,\n  \"olaf</w>\": 39709,\n  \"olan\": 48489,\n  \"olan</w>\": 24227,\n  \"oland</w>\": 26452,\n  \"olas</w>\": 40800,\n  \"old\": 4931,\n  \"old</w>\": 896,\n  \"olde</w>\": 37731,\n  \"older</w>\": 7700,\n  \"oldest</w>\": 9285,\n  \"oldham</w>\": 29929,\n  \"oldie</w>\": 35280,\n  \"oldies</w>\": 36278,\n  \"oldman</w>\": 48614,\n  \"olds</w>\": 8580,\n  \"oldschool\": 44384,\n  \"oldschool</w>\": 25133,\n  \"oldsmobile</w>\": 45396,\n  \"ole\": 9089,\n  \"ole</w>\": 1947,\n  \"oled</w>\": 46768,\n  \"oler\": 24069,\n  \"oles</w>\": 16962,\n  \"olf</w>\": 16346,\n  \"olga</w>\": 34779,\n  \"oli\": 3811,\n  \"oli</w>\": 8810,\n  \"olic</w>\": 31341,\n  \"oligar\": 46185,\n  \"olim\": 47769,\n  \"olin\": 37823,\n  \"olin</w>\": 18283,\n  \"olina</w>\": 34711,\n  \"oline</w>\": 17441,\n  \"oling</w>\": 38033,\n  \"olini</w>\": 36040,\n  \"olis</w>\": 49397,\n  \"olithic</w>\": 35574,\n  \"olive\": 22486,\n  \"olive</w>\": 9898,\n  \"oliver\": 22882,\n  \"oliver</w>\": 9261,\n  \"olives</w>\": 27149,\n  \"olivi\": 20773,\n  \"olivia</w>\": 11697,\n  \"olivier</w>\": 23891,\n  \"oll\": 32270,\n  \"oll</w>\": 15510,\n  \"olla</w>\": 31908,\n  \"ollie</w>\": 24434,\n  \"olls</w>\": 42697,\n  \"olly</w>\": 23998,\n  \"olo\": 14628,\n  \"olo</w>\": 7606,\n  \"ological</w>\": 12345,\n  \"ologist</w>\": 23442,\n  \"ologists</w>\": 30912,\n  \"ology</w>\": 4627,\n  \"olor</w>\": 29245,\n  \"olph</w>\": 25077,\n  \"ols</w>\": 2236,\n  \"olsen</w>\": 26307,\n  \"olson</w>\": 28046,\n  \"olt</w>\": 46252,\n  \"olu\": 16502,\n  \"olu</w>\": 46302,\n  \"olulu</w>\": 27645,\n  \"oly\": 20323,\n  \"oly</w>\": 24823,\n  \"olym\": 3594,\n  \"olympi\": 13597,\n  \"olympia</w>\": 23965,\n  \"olympiad</w>\": 47694,\n  \"olympian</w>\": 25420,\n  \"olympians</w>\": 44583,\n  \"olympic\": 26099,\n  \"olympic</w>\": 6388,\n  \"olympics</w>\": 7629,\n  \"olympus</w>\": 30960,\n  \"om\": 547,\n  \"om</w>\": 3932,\n  \"oma\": 44603,\n  \"oma</w>\": 5358,\n  \"omaha</w>\": 16509,\n  \"oman\": 22088,\n  \"oman</w>\": 10871,\n  \"omar\": 19488,\n  \"omar</w>\": 13367,\n  \"omars</w>\": 37099,\n  \"omas</w>\": 36023,\n  \"omat\": 40788,\n  \"omb</w>\": 34447,\n  \"ombe</w>\": 35967,\n  \"omd</w>\": 49346,\n  \"ome\": 3693,\n  \"ome</w>\": 5832,\n  \"omed</w>\": 16835,\n  \"omega</w>\": 13465,\n  \"omelette</w>\": 38789,\n  \"omen\": 9969,\n  \"omen</w>\": 25469,\n  \"oment</w>\": 43683,\n  \"omeo</w>\": 39844,\n  \"omer\": 24087,\n  \"omer</w>\": 17902,\n  \"omes</w>\": 25736,\n  \"ometer</w>\": 20060,\n  \"ometric</w>\": 38702,\n  \"omez</w>\": 12541,\n  \"omf</w>\": 47496,\n  \"omfg</w>\": 12523,\n  \"omg\": 35233,\n  \"omg</w>\": 3186,\n  \"omi\": 24097,\n  \"omi</w>\": 10341,\n  \"omic\": 40536,\n  \"omic</w>\": 12793,\n  \"omics</w>\": 15138,\n  \"omile</w>\": 46915,\n  \"omin\": 16457,\n  \"omination</w>\": 42571,\n  \"oming</w>\": 10796,\n  \"ominous</w>\": 40914,\n  \"omni\": 18793,\n  \"omni</w>\": 39489,\n  \"omnibus</w>\": 44760,\n  \"omnic\": 48383,\n  \"omo\": 14478,\n  \"omo</w>\": 11066,\n  \"omon\": 48758,\n  \"omor\": 29431,\n  \"oms</w>\": 3770,\n  \"omusic</w>\": 38965,\n  \"omy\": 40805,\n  \"omy</w>\": 6884,\n  \"on\": 521,\n  \"on</w>\": 525,\n  \"ona</w>\": 2687,\n  \"onair</w>\": 29511,\n  \"onal</w>\": 918,\n  \"onboard</w>\": 21689,\n  \"once\": 16331,\n  \"once</w>\": 2654,\n  \"onceupon\": 28122,\n  \"onceuponatime</w>\": 33505,\n  \"onco\": 46700,\n  \"oncology</w>\": 24593,\n  \"ond\": 27918,\n  \"ond</w>\": 2636,\n  \"onda</w>\": 32643,\n  \"onday</w>\": 29864,\n  \"onde</w>\": 44532,\n  \"ondo</w>\": 29529,\n  \"ondon\": 42043,\n  \"ondon</w>\": 11851,\n  \"one\": 1980,\n  \"one</w>\": 637,\n  \"onec\": 27746,\n  \"oned\": 28012,\n  \"oned</w>\": 4698,\n  \"onedirection</w>\": 16245,\n  \"onee</w>\": 44433,\n  \"oneill</w>\": 44808,\n  \"onelove</w>\": 47417,\n  \"onent</w>\": 12147,\n  \"onents</w>\": 11709,\n  \"oneof\": 48478,\n  \"onep\": 20440,\n  \"onepiece</w>\": 43153,\n  \"oneplus</w>\": 25981,\n  \"oner\": 30055,\n  \"oner</w>\": 6071,\n  \"oners</w>\": 12324,\n  \"ones\": 20757,\n  \"ones</w>\": 1575,\n  \"oneself</w>\": 46874,\n  \"onesie</w>\": 33237,\n  \"oness</w>\": 25379,\n  \"onet</w>\": 36058,\n  \"oneteam</w>\": 41094,\n  \"onetsy</w>\": 33392,\n  \"onew</w>\": 43848,\n  \"onews</w>\": 18696,\n  \"onex</w>\": 49116,\n  \"oney\": 44498,\n  \"oney</w>\": 9408,\n  \"onf</w>\": 41790,\n  \"onfox</w>\": 29874,\n  \"ong\": 2787,\n  \"ong</w>\": 846,\n  \"onga</w>\": 30259,\n  \"ongchang</w>\": 35071,\n  \"ongi</w>\": 21754,\n  \"ongo</w>\": 31226,\n  \"ongoing</w>\": 10393,\n  \"ongs</w>\": 12143,\n  \"oni\": 4385,\n  \"oni</w>\": 8048,\n  \"onia</w>\": 8001,\n  \"onial</w>\": 27599,\n  \"onian</w>\": 21090,\n  \"onic\": 15838,\n  \"onic</w>\": 3711,\n  \"onica</w>\": 14631,\n  \"onics</w>\": 9779,\n  \"onie</w>\": 35249,\n  \"onies</w>\": 22601,\n  \"onimo</w>\": 41271,\n  \"oning</w>\": 5197,\n  \"onion</w>\": 10985,\n  \"onions</w>\": 15255,\n  \"onist</w>\": 10099,\n  \"onists</w>\": 19659,\n  \"onix</w>\": 27370,\n  \"onized</w>\": 43657,\n  \"onlin\": 31103,\n  \"online\": 12940,\n  \"online</w>\": 2027,\n  \"onlinemarketing</w>\": 41820,\n  \"onlineshopping</w>\": 38587,\n  \"only\": 11646,\n  \"only</w>\": 1033,\n  \"onlyin\": 32947,\n  \"onna\": 25438,\n  \"onna</w>\": 35458,\n  \"onnaise</w>\": 48934,\n  \"onne</w>\": 23466,\n  \"onnell</w>\": 45613,\n  \"ono\": 28165,\n  \"ono</w>\": 14388,\n  \"onom\": 48014,\n  \"onomy</w>\": 36873,\n  \"onpoli</w>\": 20708,\n  \"ons\": 26076,\n  \"ons</w>\": 708,\n  \"onsale</w>\": 36324,\n  \"onset</w>\": 30527,\n  \"onsite</w>\": 37336,\n  \"onstage</w>\": 21821,\n  \"onstorm</w>\": 49333,\n  \"ont\": 34303,\n  \"ont</w>\": 11157,\n  \"ontari\": 6739,\n  \"ontario\": 42766,\n  \"ontario</w>\": 7436,\n  \"onte</w>\": 34723,\n  \"onthe\": 12241,\n  \"onther\": 46563,\n  \"ontheroad</w>\": 47516,\n  \"onthisday</w>\": 6862,\n  \"onto\": 11745,\n  \"onto</w>\": 3141,\n  \"ontology</w>\": 37364,\n  \"ontour</w>\": 32155,\n  \"onu\": 44142,\n  \"onward</w>\": 34827,\n  \"onwards</w>\": 20682,\n  \"ony\": 9490,\n  \"ony</w>\": 2926,\n  \"onym\": 11483,\n  \"onymous</w>\": 13038,\n  \"onyx</w>\": 31353,\n  \"oo\": 574,\n  \"oo</w>\": 2822,\n  \"ood\": 16429,\n  \"ood</w>\": 738,\n  \"oodle</w>\": 45289,\n  \"oods</w>\": 44660,\n  \"oof</w>\": 42270,\n  \"ooh</w>\": 16806,\n  \"ook\": 22326,\n  \"ook</w>\": 8394,\n  \"ooks</w>\": 31082,\n  \"ool\": 37702,\n  \"ool</w>\": 929,\n  \"oom\": 22786,\n  \"oom</w>\": 15002,\n  \"oomf</w>\": 40607,\n  \"oon\": 35651,\n  \"oon</w>\": 7100,\n  \"ooo</w>\": 9571,\n  \"oooh</w>\": 28927,\n  \"oooo\": 4002,\n  \"oooo</w>\": 13643,\n  \"ooooo</w>\": 12532,\n  \"oooooo\": 43590,\n  \"oooooo</w>\": 20372,\n  \"ooooooo</w>\": 30859,\n  \"oooooooo\": 15473,\n  \"oooooooo</w>\": 43408,\n  \"oooooooooooooooo\": 48645,\n  \"oop</w>\": 7326,\n  \"ooper</w>\": 39906,\n  \"oops</w>\": 9116,\n  \"oor</w>\": 35239,\n  \"oos</w>\": 9896,\n  \"oosa</w>\": 30834,\n  \"oose</w>\": 38941,\n  \"oot</w>\": 17667,\n  \"ootball</w>\": 28914,\n  \"ootd</w>\": 16547,\n  \"ooth</w>\": 12682,\n  \"oott</w>\": 34316,\n  \"ooza</w>\": 22809,\n  \"op\": 676,\n  \"op</w>\": 3691,\n  \"opa</w>\": 28949,\n  \"opal</w>\": 28982,\n  \"opar\": 18167,\n  \"opath\": 33079,\n  \"opathic</w>\": 37521,\n  \"opathy</w>\": 28466,\n  \"opau\": 27239,\n  \"opd</w>\": 38288,\n  \"ope\": 31694,\n  \"ope</w>\": 11440,\n  \"opec</w>\": 33138,\n  \"opel</w>\": 36952,\n  \"open\": 3647,\n  \"open</w>\": 1488,\n  \"openaccess</w>\": 26591,\n  \"opend\": 28069,\n  \"opendata</w>\": 35709,\n  \"openday</w>\": 46991,\n  \"opened</w>\": 5303,\n  \"opener</w>\": 8998,\n  \"openhouse</w>\": 36091,\n  \"opening\": 33728,\n  \"opening</w>\": 2516,\n  \"openingday</w>\": 36359,\n  \"openings</w>\": 27643,\n  \"openly</w>\": 23005,\n  \"opens</w>\": 4801,\n  \"opensource</w>\": 29930,\n  \"oper\": 2796,\n  \"oper</w>\": 37533,\n  \"opera</w>\": 8056,\n  \"operate</w>\": 19306,\n  \"operated</w>\": 23031,\n  \"operates</w>\": 38675,\n  \"operating</w>\": 12218,\n  \"operation\": 27173,\n  \"operation</w>\": 7639,\n  \"operational</w>\": 18237,\n  \"operations</w>\": 8106,\n  \"operative</w>\": 28380,\n  \"operator</w>\": 15972,\n  \"operators</w>\": 19267,\n  \"opers</w>\": 48728,\n  \"opes</w>\": 37258,\n  \"oph\": 6796,\n  \"opha\": 38634,\n  \"ophel\": 45017,\n  \"ophelia</w>\": 49118,\n  \"ophi\": 44547,\n  \"ophile</w>\": 35915,\n  \"opho\": 12900,\n  \"ophobia</w>\": 21111,\n  \"ophobic</w>\": 29934,\n  \"ophon\": 25120,\n  \"ophone</w>\": 26345,\n  \"ophthal\": 33135,\n  \"ophy\": 28539,\n  \"opi\": 40056,\n  \"opi</w>\": 48994,\n  \"opin\": 7636,\n  \"opini\": 14825,\n  \"opinion</w>\": 7843,\n  \"opinions</w>\": 16192,\n  \"opio\": 17371,\n  \"opioid</w>\": 22833,\n  \"opioids</w>\": 47578,\n  \"opla\": 36270,\n  \"ople</w>\": 25663,\n  \"opol\": 15173,\n  \"opoly</w>\": 23729,\n  \"opor\": 39650,\n  \"opoulos</w>\": 42020,\n  \"opp\": 2020,\n  \"opp</w>\": 21024,\n  \"oppa</w>\": 23637,\n  \"oppo\": 7399,\n  \"oppo</w>\": 41770,\n  \"opponent</w>\": 17002,\n  \"opponents</w>\": 19664,\n  \"oppor\": 2914,\n  \"opportun\": 2939,\n  \"opportunities</w>\": 5978,\n  \"opportunity</w>\": 4004,\n  \"oppos\": 10091,\n  \"oppose</w>\": 23617,\n  \"opposed</w>\": 22509,\n  \"opposes</w>\": 47471,\n  \"opposing</w>\": 24376,\n  \"opposite</w>\": 12872,\n  \"opposition</w>\": 11062,\n  \"oppre\": 17341,\n  \"oppressed</w>\": 41492,\n  \"oppression</w>\": 30650,\n  \"opra</w>\": 28291,\n  \"oprah</w>\": 22562,\n  \"opry</w>\": 35340,\n  \"ops</w>\": 3054,\n  \"opt\": 45103,\n  \"opt</w>\": 27188,\n  \"opted</w>\": 42035,\n  \"opti\": 6580,\n  \"optic\": 25190,\n  \"optic</w>\": 24755,\n  \"optical</w>\": 16822,\n  \"optics</w>\": 27165,\n  \"optim\": 22331,\n  \"optimal</w>\": 25235,\n  \"optimi\": 9737,\n  \"optimis\": 39459,\n  \"optimism</w>\": 25226,\n  \"optimist</w>\": 44581,\n  \"optimistic</w>\": 23104,\n  \"optimization</w>\": 25125,\n  \"optimize</w>\": 30456,\n  \"optimized</w>\": 43939,\n  \"optimizing</w>\": 49157,\n  \"optimum</w>\": 35974,\n  \"optimus</w>\": 43453,\n  \"option</w>\": 8464,\n  \"optional</w>\": 25411,\n  \"options</w>\": 7063,\n  \"optome\": 35533,\n  \"opul\": 39858,\n  \"opus</w>\": 33295,\n  \"opy</w>\": 21835,\n  \"or\": 523,\n  \"or</w>\": 541,\n  \"ora</w>\": 4301,\n  \"orac\": 24673,\n  \"oracle\": 37308,\n  \"oracle</w>\": 15966,\n  \"orah</w>\": 40820,\n  \"orail</w>\": 45120,\n  \"oral\": 32490,\n  \"oral</w>\": 6007,\n  \"orama</w>\": 33619,\n  \"oran\": 32209,\n  \"oran</w>\": 28395,\n  \"orang\": 22116,\n  \"orange\": 13957,\n  \"orange</w>\": 4287,\n  \"oranges</w>\": 32417,\n  \"orangu\": 36112,\n  \"orb\": 28894,\n  \"orb</w>\": 36958,\n  \"orbit</w>\": 19713,\n  \"orbital</w>\": 40312,\n  \"orc</w>\": 44305,\n  \"orca</w>\": 18631,\n  \"orcas</w>\": 47676,\n  \"orch\": 11893,\n  \"orchar\": 40226,\n  \"orchard</w>\": 19530,\n  \"orche\": 8004,\n  \"orchestr\": 42937,\n  \"orchestra</w>\": 9573,\n  \"orchestral</w>\": 40285,\n  \"orchi\": 23696,\n  \"orchid</w>\": 18678,\n  \"orchids</w>\": 28376,\n  \"ord\": 26903,\n  \"ord</w>\": 11502,\n  \"orda\": 33462,\n  \"ordained</w>\": 38302,\n  \"order\": 24613,\n  \"order</w>\": 2191,\n  \"ordered</w>\": 8335,\n  \"ordering</w>\": 19588,\n  \"orderly</w>\": 43457,\n  \"orders</w>\": 6187,\n  \"ordin\": 4378,\n  \"ordinance</w>\": 38583,\n  \"ordinary</w>\": 8012,\n  \"ore\": 3580,\n  \"ore</w>\": 1423,\n  \"orean</w>\": 36696,\n  \"ored</w>\": 5133,\n  \"oregon\": 21759,\n  \"oregon</w>\": 8035,\n  \"oren\": 21645,\n  \"oreo</w>\": 21873,\n  \"oreos</w>\": 41688,\n  \"ores</w>\": 17328,\n  \"org\": 3401,\n  \"org</w>\": 5593,\n  \"organ\": 3338,\n  \"organ</w>\": 13213,\n  \"organi\": 3636,\n  \"organic\": 24080,\n  \"organic</w>\": 5980,\n  \"organics</w>\": 44199,\n  \"organis\": 13204,\n  \"organisation</w>\": 15868,\n  \"organisations</w>\": 20651,\n  \"organise</w>\": 36073,\n  \"organised</w>\": 13191,\n  \"organiser</w>\": 49141,\n  \"organisers</w>\": 35778,\n  \"organising</w>\": 22787,\n  \"organisms</w>\": 37041,\n  \"organiz\": 11107,\n  \"organization</w>\": 8064,\n  \"organizational</w>\": 29510,\n  \"organizations</w>\": 13453,\n  \"organize</w>\": 19973,\n  \"organized</w>\": 10681,\n  \"organizer</w>\": 23905,\n  \"organizers</w>\": 27191,\n  \"organizing</w>\": 15779,\n  \"organs</w>\": 29872,\n  \"orgs</w>\": 29500,\n  \"ori\": 1540,\n  \"ori</w>\": 8693,\n  \"oria</w>\": 11474,\n  \"orial</w>\": 8648,\n  \"orian</w>\": 21193,\n  \"oric</w>\": 43810,\n  \"orice</w>\": 41341,\n  \"orie</w>\": 18815,\n  \"orient\": 13149,\n  \"orient</w>\": 30770,\n  \"oriental</w>\": 23056,\n  \"orientation</w>\": 16873,\n  \"oriente\": 40390,\n  \"oriented</w>\": 24596,\n  \"orienteering</w>\": 42985,\n  \"ories</w>\": 5934,\n  \"orig\": 2273,\n  \"orig</w>\": 38463,\n  \"origami</w>\": 31832,\n  \"origin\": 2555,\n  \"origin</w>\": 12372,\n  \"original\": 18496,\n  \"original</w>\": 3117,\n  \"originally</w>\": 12849,\n  \"originals</w>\": 16953,\n  \"originated</w>\": 41823,\n  \"origins</w>\": 16291,\n  \"orin</w>\": 39863,\n  \"oring</w>\": 3006,\n  \"orio</w>\": 24308,\n  \"orioles</w>\": 21430,\n  \"orion</w>\": 21765,\n  \"oris</w>\": 37064,\n  \"orities</w>\": 7903,\n  \"ority</w>\": 5556,\n  \"orium</w>\": 12015,\n  \"ork\": 22202,\n  \"ork</w>\": 37235,\n  \"orkney</w>\": 34254,\n  \"orl</w>\": 39465,\n  \"orlando\": 32247,\n  \"orlando</w>\": 7827,\n  \"orleans</w>\": 11127,\n  \"orm</w>\": 38464,\n  \"orn\": 25412,\n  \"orn</w>\": 8130,\n  \"ornam\": 36122,\n  \"ornament</w>\": 23409,\n  \"ornamental</w>\": 46270,\n  \"ornaments</w>\": 28968,\n  \"ornate</w>\": 46865,\n  \"orni\": 27713,\n  \"ornithology</w>\": 38275,\n  \"orns</w>\": 19340,\n  \"oro\": 9848,\n  \"oro</w>\": 14573,\n  \"orous</w>\": 19286,\n  \"orph\": 17318,\n  \"orphan\": 22718,\n  \"orphan</w>\": 28994,\n  \"orphanage</w>\": 45196,\n  \"orphaned</w>\": 46792,\n  \"orphans</w>\": 36588,\n  \"orphe\": 39186,\n  \"orr</w>\": 32977,\n  \"ors</w>\": 1127,\n  \"orship</w>\": 20846,\n  \"ort</w>\": 1019,\n  \"ortega</w>\": 39727,\n  \"orth\": 22584,\n  \"orth</w>\": 24461,\n  \"ortho\": 11366,\n  \"orthodon\": 37730,\n  \"orthodox</w>\": 19008,\n  \"orthop\": 42123,\n  \"orthopedic</w>\": 49341,\n  \"ortiz</w>\": 23544,\n  \"orton</w>\": 37238,\n  \"oru\": 44629,\n  \"oru</w>\": 31281,\n  \"orum</w>\": 42724,\n  \"orwell</w>\": 41218,\n  \"ory\": 16983,\n  \"ory</w>\": 1985,\n  \"os\": 2211,\n  \"os</w>\": 1299,\n  \"osa\": 16340,\n  \"osa</w>\": 17237,\n  \"osaka</w>\": 21347,\n  \"osborne</w>\": 22402,\n  \"osbourne</w>\": 43376,\n  \"osc\": 5092,\n  \"oscar\": 21157,\n  \"oscar</w>\": 8191,\n  \"oscars</w>\": 11098,\n  \"osce</w>\": 37303,\n  \"oscill\": 38272,\n  \"ose\": 46942,\n  \"ose</w>\": 22541,\n  \"osh\": 30717,\n  \"osh</w>\": 35011,\n  \"osha</w>\": 33907,\n  \"oshi</w>\": 34770,\n  \"osi\": 25247,\n  \"osi</w>\": 17636,\n  \"osis</w>\": 13903,\n  \"osity</w>\": 12730,\n  \"oslo</w>\": 20547,\n  \"osm\": 31626,\n  \"osman</w>\": 46539,\n  \"oso\": 42793,\n  \"oso</w>\": 21285,\n  \"osp\": 24387,\n  \"ospre\": 49001,\n  \"osprey</w>\": 37893,\n  \"oss\": 29362,\n  \"oss</w>\": 34640,\n  \"ost\": 23701,\n  \"ost</w>\": 18749,\n  \"oste\": 20632,\n  \"osteo\": 43163,\n  \"oster\": 31781,\n  \"ostr\": 33673,\n  \"ostrich</w>\": 47640,\n  \"osu\": 29480,\n  \"osu</w>\": 19818,\n  \"oswald</w>\": 38471,\n  \"ot\": 1863,\n  \"ot</w>\": 2062,\n  \"ota\": 17509,\n  \"ota</w>\": 8741,\n  \"otago</w>\": 45919,\n  \"otaku</w>\": 40743,\n  \"otas</w>\": 47616,\n  \"otc</w>\": 37934,\n  \"otd</w>\": 5683,\n  \"ote\": 28511,\n  \"ote</w>\": 19744,\n  \"otes</w>\": 27280,\n  \"oth\": 33262,\n  \"oth</w>\": 33519,\n  \"other\": 9758,\n  \"other</w>\": 1010,\n  \"others</w>\": 3326,\n  \"otherwise</w>\": 12376,\n  \"oti\": 19567,\n  \"oti</w>\": 45564,\n  \"otic</w>\": 9671,\n  \"otis</w>\": 28246,\n  \"otive</w>\": 10877,\n  \"oto\": 23946,\n  \"oto</w>\": 23399,\n  \"otp</w>\": 29822,\n  \"otr</w>\": 38685,\n  \"ots</w>\": 5769,\n  \"ott\": 10167,\n  \"ott</w>\": 7936,\n  \"otta\": 7623,\n  \"otta</w>\": 20941,\n  \"ottawa\": 49027,\n  \"ottawa</w>\": 9019,\n  \"otte</w>\": 35214,\n  \"otter\": 34710,\n  \"otter</w>\": 22456,\n  \"otters</w>\": 38883,\n  \"otti</w>\": 36721,\n  \"ottnews</w>\": 33995,\n  \"otto</w>\": 17730,\n  \"ottoman</w>\": 27503,\n  \"otw</w>\": 35259,\n  \"otwol\": 46868,\n  \"ou\": 520,\n  \"ou</w>\": 6544,\n  \"ouat</w>\": 32954,\n  \"ouch</w>\": 13493,\n  \"oud</w>\": 1359,\n  \"oue</w>\": 48838,\n  \"ouf</w>\": 34618,\n  \"ough\": 4204,\n  \"ough</w>\": 991,\n  \"ought</w>\": 2253,\n  \"oughton</w>\": 36860,\n  \"oui</w>\": 39421,\n  \"ouk</w>\": 21796,\n  \"oul\": 20253,\n  \"oul</w>\": 8081,\n  \"ould</w>\": 859,\n  \"oulos</w>\": 32808,\n  \"oun\": 636,\n  \"oun</w>\": 20960,\n  \"ounce</w>\": 15027,\n  \"ounces</w>\": 30299,\n  \"ound\": 2013,\n  \"ound</w>\": 853,\n  \"oundation</w>\": 40132,\n  \"ounded</w>\": 9634,\n  \"ounding</w>\": 11944,\n  \"ounds</w>\": 2753,\n  \"oung\": 35875,\n  \"oung</w>\": 25341,\n  \"ounge</w>\": 29427,\n  \"ount\": 43801,\n  \"ount</w>\": 4172,\n  \"ounts</w>\": 10963,\n  \"oup</w>\": 32815,\n  \"our\": 727,\n  \"our</w>\": 581,\n  \"oura\": 29806,\n  \"oura</w>\": 36352,\n  \"ourable</w>\": 24126,\n  \"ourage</w>\": 34525,\n  \"oural</w>\": 45840,\n  \"oured</w>\": 6956,\n  \"ouri\": 12696,\n  \"ouring</w>\": 12000,\n  \"ourism</w>\": 25496,\n  \"ourke</w>\": 26480,\n  \"ourlives</w>\": 37541,\n  \"ouro\": 41224,\n  \"ours</w>\": 1491,\n  \"ourse</w>\": 15415,\n  \"ourselves</w>\": 10124,\n  \"ourt</w>\": 22960,\n  \"oury</w>\": 29484,\n  \"ous\": 1987,\n  \"ous</w>\": 879,\n  \"ouse\": 32048,\n  \"ouse</w>\": 7603,\n  \"ouses</w>\": 33666,\n  \"ously</w>\": 2501,\n  \"ousness</w>\": 10689,\n  \"ousy</w>\": 28302,\n  \"out\": 1130,\n  \"out</w>\": 620,\n  \"outa</w>\": 35187,\n  \"outage</w>\": 27320,\n  \"outages</w>\": 40353,\n  \"outback</w>\": 28532,\n  \"outbound</w>\": 41256,\n  \"outbreak</w>\": 20103,\n  \"outcome</w>\": 16552,\n  \"outcomes</w>\": 14016,\n  \"outdated</w>\": 38313,\n  \"outdoor\": 19184,\n  \"outdoor</w>\": 6368,\n  \"outdoors</w>\": 10469,\n  \"oute</w>\": 44180,\n  \"outed</w>\": 34435,\n  \"outer\": 30499,\n  \"outer</w>\": 14188,\n  \"outes</w>\": 39600,\n  \"outfield</w>\": 41826,\n  \"outfit</w>\": 6525,\n  \"outfits</w>\": 16366,\n  \"outfitters</w>\": 37725,\n  \"outfy</w>\": 34920,\n  \"outgoing</w>\": 27302,\n  \"outh\": 16933,\n  \"outh</w>\": 8111,\n  \"outine</w>\": 35452,\n  \"outing</w>\": 11251,\n  \"outlander\": 45820,\n  \"outlander</w>\": 17095,\n  \"outlaw\": 37498,\n  \"outlaw</w>\": 27340,\n  \"outlaws</w>\": 30935,\n  \"outlet</w>\": 16855,\n  \"outlets</w>\": 20822,\n  \"outline</w>\": 26894,\n  \"outlines</w>\": 29159,\n  \"outlining</w>\": 45960,\n  \"outlook</w>\": 12983,\n  \"outof\": 43958,\n  \"outpatient</w>\": 46603,\n  \"outpost</w>\": 44622,\n  \"output</w>\": 17255,\n  \"outra\": 14262,\n  \"outrage</w>\": 23577,\n  \"outraged</w>\": 43402,\n  \"outrageous</w>\": 29342,\n  \"outre\": 14373,\n  \"outreach</w>\": 15297,\n  \"outright</w>\": 38200,\n  \"outs</w>\": 5790,\n  \"outsi\": 22515,\n  \"outside\": 47693,\n  \"outside</w>\": 2782,\n  \"outsider</w>\": 41196,\n  \"outsiders</w>\": 41742,\n  \"outskirts</w>\": 42088,\n  \"outsourcing</w>\": 34543,\n  \"outstanding</w>\": 6387,\n  \"outta</w>\": 15807,\n  \"outtuesday</w>\": 48692,\n  \"outw\": 34650,\n  \"oux\": 40960,\n  \"oux</w>\": 14228,\n  \"ov\": 6420,\n  \"ov</w>\": 8479,\n  \"ova</w>\": 12762,\n  \"oval</w>\": 15039,\n  \"ovarian</w>\": 42913,\n  \"ovation</w>\": 24333,\n  \"ove\": 8649,\n  \"ove</w>\": 15456,\n  \"oven\": 44620,\n  \"oven</w>\": 12579,\n  \"over\": 1658,\n  \"over</w>\": 962,\n  \"overall</w>\": 6914,\n  \"overboard</w>\": 42982,\n  \"overcame</w>\": 47235,\n  \"overcast</w>\": 36942,\n  \"overcome</w>\": 14365,\n  \"overcoming</w>\": 29348,\n  \"overdose</w>\": 27017,\n  \"overdrive</w>\": 40088,\n  \"overdue</w>\": 30240,\n  \"overflow</w>\": 32885,\n  \"overflowing</w>\": 45370,\n  \"overhaul</w>\": 31531,\n  \"overhead</w>\": 20321,\n  \"overland</w>\": 38808,\n  \"overlay</w>\": 44827,\n  \"overload</w>\": 24327,\n  \"overlook</w>\": 35767,\n  \"overlooked</w>\": 27632,\n  \"overlooking</w>\": 17319,\n  \"overly</w>\": 28820,\n  \"overnight</w>\": 9913,\n  \"overpass</w>\": 44310,\n  \"overrated</w>\": 38214,\n  \"overs\": 45774,\n  \"overs</w>\": 17329,\n  \"overseas</w>\": 15100,\n  \"oversight</w>\": 32494,\n  \"oversized</w>\": 31557,\n  \"overtime</w>\": 19347,\n  \"overturned</w>\": 31048,\n  \"overview</w>\": 14789,\n  \"overwatch</w>\": 18124,\n  \"overweight</w>\": 43465,\n  \"overwhel\": 12204,\n  \"overwhelmed</w>\": 23459,\n  \"overwhelming</w>\": 20306,\n  \"overwhelmingly</w>\": 43549,\n  \"ovi\": 32508,\n  \"ovic</w>\": 22417,\n  \"ovich</w>\": 27623,\n  \"ovie\": 47677,\n  \"ovo\": 41920,\n  \"ovo</w>\": 18065,\n  \"ovski</w>\": 26167,\n  \"ow\": 2032,\n  \"ow</w>\": 2250,\n  \"owa</w>\": 32770,\n  \"owe</w>\": 19073,\n  \"owed</w>\": 37641,\n  \"owen\": 24838,\n  \"owen</w>\": 12056,\n  \"owens</w>\": 20664,\n  \"owes</w>\": 35069,\n  \"owing</w>\": 48582,\n  \"owl\": 34332,\n  \"owl</w>\": 9899,\n  \"owls</w>\": 18247,\n  \"own\": 3845,\n  \"own</w>\": 1758,\n  \"owned</w>\": 8536,\n  \"owner</w>\": 5019,\n  \"owners</w>\": 7712,\n  \"ownership</w>\": 16583,\n  \"owning</w>\": 24661,\n  \"owns</w>\": 17533,\n  \"owo</w>\": 46142,\n  \"ows</w>\": 27423,\n  \"owski</w>\": 22573,\n  \"ox\": 3282,\n  \"ox</w>\": 12071,\n  \"oxfam</w>\": 45466,\n  \"oxford\": 28588,\n  \"oxford</w>\": 8824,\n  \"oxfordshire</w>\": 37855,\n  \"oxi\": 33731,\n  \"oxi</w>\": 48147,\n  \"oxid\": 17701,\n  \"oxide</w>\": 28235,\n  \"oxo</w>\": 37088,\n  \"oxy\": 12432,\n  \"oxygen</w>\": 16214,\n  \"oy\": 6638,\n  \"oy</w>\": 12437,\n  \"oya</w>\": 38894,\n  \"oye\": 48677,\n  \"oyster\": 40545,\n  \"oyster</w>\": 17253,\n  \"oysters</w>\": 22672,\n  \"oz\": 10584,\n  \"oz</w>\": 6044,\n  \"ozar\": 31848,\n  \"ozil</w>\": 41365,\n  \"ozone</w>\": 37052,\n  \"ozzy</w>\": 39549,\n  \"p\": 79,\n  \"p</w>\": 335,\n  \"pa\": 765,\n  \"pa</w>\": 2217,\n  \"paa</w>\": 32812,\n  \"pab\": 9354,\n  \"pablo\": 42172,\n  \"pablo</w>\": 14473,\n  \"pac\": 2332,\n  \"pac</w>\": 7608,\n  \"pace\": 40600,\n  \"pace</w>\": 9450,\n  \"paced</w>\": 32611,\n  \"pacers</w>\": 23976,\n  \"paces</w>\": 43001,\n  \"paci\": 5699,\n  \"pacific\": 19723,\n  \"pacific</w>\": 6654,\n  \"pacing</w>\": 45202,\n  \"pack\": 2711,\n  \"pack</w>\": 3420,\n  \"package</w>\": 7053,\n  \"packaged</w>\": 29656,\n  \"packages</w>\": 14305,\n  \"packaging</w>\": 11658,\n  \"packard</w>\": 46421,\n  \"packed</w>\": 5883,\n  \"packer</w>\": 28209,\n  \"packers</w>\": 14294,\n  \"packet</w>\": 25022,\n  \"packets</w>\": 40448,\n  \"packing</w>\": 9829,\n  \"packs</w>\": 11086,\n  \"paco</w>\": 41364,\n  \"pacqui\": 28456,\n  \"pacquiao</w>\": 30485,\n  \"pact</w>\": 27182,\n  \"pad\": 3798,\n  \"pad</w>\": 7601,\n  \"padded</w>\": 42253,\n  \"paddington</w>\": 33162,\n  \"paddle\": 38276,\n  \"paddle</w>\": 20811,\n  \"paddling</w>\": 40645,\n  \"paddock</w>\": 29590,\n  \"paddy\": 33103,\n  \"paddy</w>\": 19855,\n  \"padi</w>\": 47037,\n  \"padilla</w>\": 22380,\n  \"padma\": 44595,\n  \"padma</w>\": 46457,\n  \"padre</w>\": 38343,\n  \"padres</w>\": 22829,\n  \"pads</w>\": 17353,\n  \"paedi\": 41488,\n  \"paella</w>\": 46924,\n  \"paf\": 47185,\n  \"pafc</w>\": 49259,\n  \"pag\": 4151,\n  \"pag</w>\": 30525,\n  \"pagan</w>\": 27854,\n  \"page\": 14996,\n  \"page</w>\": 2504,\n  \"pageant</w>\": 22139,\n  \"pages</w>\": 8082,\n  \"pagoda</w>\": 44309,\n  \"pah\": 41054,\n  \"pah</w>\": 26884,\n  \"pai\": 20624,\n  \"pai</w>\": 21198,\n  \"paid</w>\": 5057,\n  \"paige\": 33659,\n  \"paige</w>\": 16022,\n  \"paign</w>\": 31796,\n  \"pain\": 2141,\n  \"pain</w>\": 4495,\n  \"paine</w>\": 38069,\n  \"painful</w>\": 16361,\n  \"pains</w>\": 25639,\n  \"paint\": 7948,\n  \"paint</w>\": 5185,\n  \"paintball</w>\": 39730,\n  \"painted</w>\": 6433,\n  \"painter</w>\": 10888,\n  \"painters</w>\": 35703,\n  \"painting\": 49164,\n  \"painting</w>\": 3086,\n  \"paintings</w>\": 9956,\n  \"paints</w>\": 21672,\n  \"pair\": 19848,\n  \"pair</w>\": 4038,\n  \"paired</w>\": 12433,\n  \"pairing</w>\": 16313,\n  \"pairings</w>\": 41152,\n  \"pairs</w>\": 9950,\n  \"pais\": 16878,\n  \"paisley</w>\": 22954,\n  \"pajam\": 24110,\n  \"pajama</w>\": 40244,\n  \"pajamas</w>\": 37231,\n  \"pak\": 13186,\n  \"pak</w>\": 9094,\n  \"paki\": 3438,\n  \"pakistan\": 10713,\n  \"pakistan</w>\": 3994,\n  \"pakistani</w>\": 14050,\n  \"pakistanis</w>\": 45707,\n  \"pakv\": 38196,\n  \"pal\": 1850,\n  \"pal</w>\": 3611,\n  \"pala</w>\": 17895,\n  \"palace</w>\": 6381,\n  \"palaces</w>\": 45625,\n  \"palad\": 28371,\n  \"palae\": 43379,\n  \"palais</w>\": 35673,\n  \"palate</w>\": 34666,\n  \"palawan</w>\": 48202,\n  \"palazzo</w>\": 36006,\n  \"pale\": 4768,\n  \"pale</w>\": 12518,\n  \"paleo\": 36741,\n  \"paleo</w>\": 22198,\n  \"paler\": 38028,\n  \"palermo</w>\": 40635,\n  \"palestin\": 9449,\n  \"palestine</w>\": 11682,\n  \"palestinian</w>\": 11764,\n  \"palestinians</w>\": 21874,\n  \"palette</w>\": 13901,\n  \"pali\": 48063,\n  \"palin</w>\": 40153,\n  \"palis\": 44256,\n  \"pality</w>\": 27296,\n  \"pall\": 35817,\n  \"palla\": 21208,\n  \"palladium</w>\": 37888,\n  \"pallet</w>\": 39057,\n  \"palli\": 28954,\n  \"palliative</w>\": 46014,\n  \"pally</w>\": 46073,\n  \"palm\": 19651,\n  \"palm</w>\": 8612,\n  \"palma</w>\": 29888,\n  \"palmer\": 40112,\n  \"palmer</w>\": 13633,\n  \"palms</w>\": 27059,\n  \"palo</w>\": 31562,\n  \"palom\": 47698,\n  \"palooza</w>\": 25861,\n  \"pals</w>\": 11043,\n  \"palsy</w>\": 46651,\n  \"pam\": 8228,\n  \"pam</w>\": 18513,\n  \"pamela</w>\": 26991,\n  \"pamp\": 37653,\n  \"pamper</w>\": 44345,\n  \"pamph\": 41332,\n  \"pan\": 1072,\n  \"pan</w>\": 7437,\n  \"panam\": 24606,\n  \"panama</w>\": 15522,\n  \"panas\": 26207,\n  \"panasonic</w>\": 29750,\n  \"pancake</w>\": 18723,\n  \"pancakes</w>\": 15308,\n  \"panch\": 27251,\n  \"pancra\": 42472,\n  \"pancre\": 27708,\n  \"pancreatic</w>\": 49337,\n  \"pancy</w>\": 41625,\n  \"pand\": 5631,\n  \"panda</w>\": 12952,\n  \"pandas</w>\": 35119,\n  \"pande\": 38419,\n  \"pandey</w>\": 34895,\n  \"pandit</w>\": 41191,\n  \"pandor\": 30250,\n  \"pandora</w>\": 17727,\n  \"pandoramusic</w>\": 42344,\n  \"pane</w>\": 27470,\n  \"panel</w>\": 3724,\n  \"paneli\": 19410,\n  \"panelist</w>\": 39719,\n  \"panelists</w>\": 24619,\n  \"panels</w>\": 12735,\n  \"panera</w>\": 48471,\n  \"pang\": 16756,\n  \"pang</w>\": 23672,\n  \"panhandle</w>\": 40919,\n  \"pani</w>\": 36092,\n  \"panic\": 46671,\n  \"panic</w>\": 14124,\n  \"panini</w>\": 30410,\n  \"pann\": 42302,\n  \"panna</w>\": 49065,\n  \"pano</w>\": 36165,\n  \"panor\": 12962,\n  \"panorama</w>\": 19763,\n  \"panoramic</w>\": 22563,\n  \"pans</w>\": 35204,\n  \"pant</w>\": 22550,\n  \"panther\": 22825,\n  \"panther</w>\": 13262,\n  \"panthers</w>\": 10494,\n  \"panties</w>\": 32515,\n  \"panto</w>\": 28776,\n  \"pantry</w>\": 25608,\n  \"pants</w>\": 5003,\n  \"panty\": 44217,\n  \"pany</w>\": 45567,\n  \"panzer</w>\": 41159,\n  \"pao</w>\": 33790,\n  \"paola</w>\": 44689,\n  \"paolo\": 48488,\n  \"paolo</w>\": 21133,\n  \"pap\": 1884,\n  \"pap</w>\": 30756,\n  \"papa</w>\": 12211,\n  \"papar\": 32782,\n  \"paparazzi</w>\": 37842,\n  \"papaya</w>\": 44098,\n  \"paper\": 8680,\n  \"paper</w>\": 2802,\n  \"paperback</w>\": 17928,\n  \"papers</w>\": 8204,\n  \"paperwork</w>\": 35785,\n  \"papi</w>\": 35177,\n  \"papp\": 26361,\n  \"paprika</w>\": 44793,\n  \"papua</w>\": 32629,\n  \"par\": 699,\n  \"par</w>\": 9163,\n  \"para\": 18355,\n  \"para</w>\": 8976,\n  \"parach\": 23147,\n  \"parachute</w>\": 30122,\n  \"parad\": 37143,\n  \"parade</w>\": 5809,\n  \"parades</w>\": 46479,\n  \"paradi\": 6658,\n  \"paradig\": 27786,\n  \"paradigm</w>\": 33485,\n  \"paradise\": 45869,\n  \"paradise</w>\": 7247,\n  \"paradox</w>\": 33109,\n  \"parag\": 11866,\n  \"paragon</w>\": 48099,\n  \"paragra\": 24903,\n  \"paragraph</w>\": 28499,\n  \"paragu\": 38021,\n  \"paraguay</w>\": 43579,\n  \"paral\": 15143,\n  \"paralle\": 13184,\n  \"parallel</w>\": 18201,\n  \"paralleled</w>\": 42520,\n  \"parallels</w>\": 46101,\n  \"paraly\": 30255,\n  \"paralym\": 18727,\n  \"paralympic</w>\": 30806,\n  \"paralympics</w>\": 37162,\n  \"paralysis</w>\": 45702,\n  \"param\": 12250,\n  \"parame\": 27106,\n  \"paramedic</w>\": 34630,\n  \"paramedics</w>\": 35991,\n  \"parameters</w>\": 44890,\n  \"paramore</w>\": 34401,\n  \"paramount</w>\": 26642,\n  \"parano\": 30283,\n  \"paranoid</w>\": 43029,\n  \"paranor\": 16940,\n  \"paranormal</w>\": 19047,\n  \"parap\": 41091,\n  \"paras\": 15198,\n  \"parasite</w>\": 42460,\n  \"parasites</w>\": 46175,\n  \"parc</w>\": 30914,\n  \"parcel</w>\": 30367,\n  \"parcels</w>\": 45589,\n  \"pard</w>\": 18773,\n  \"pardon\": 47606,\n  \"pardon</w>\": 26565,\n  \"pare\": 18202,\n  \"pared</w>\": 5498,\n  \"paren\": 3106,\n  \"parent\": 47848,\n  \"parent</w>\": 10183,\n  \"parental</w>\": 28339,\n  \"parenthood</w>\": 23887,\n  \"parenting</w>\": 14529,\n  \"parents</w>\": 3731,\n  \"pares</w>\": 12420,\n  \"parfait</w>\": 46140,\n  \"pari\": 17961,\n  \"pari</w>\": 27979,\n  \"paris\": 13982,\n  \"paris</w>\": 3445,\n  \"parisagreement</w>\": 47405,\n  \"parish\": 47328,\n  \"parish</w>\": 13020,\n  \"parisi\": 45081,\n  \"parisian</w>\": 38512,\n  \"parity</w>\": 42734,\n  \"park\": 4985,\n  \"park</w>\": 1452,\n  \"parked</w>\": 16487,\n  \"parker\": 31119,\n  \"parker</w>\": 8365,\n  \"parkin\": 34868,\n  \"parking</w>\": 5984,\n  \"parkinson</w>\": 28129,\n  \"parkland</w>\": 31287,\n  \"parkrun</w>\": 25747,\n  \"parks</w>\": 6873,\n  \"parkway</w>\": 19882,\n  \"parl\": 30373,\n  \"parl</w>\": 29897,\n  \"parliam\": 5941,\n  \"parliament\": 41599,\n  \"parliament</w>\": 7151,\n  \"parliamentary</w>\": 17912,\n  \"parlor</w>\": 38253,\n  \"parlour</w>\": 37829,\n  \"parma</w>\": 36077,\n  \"parme\": 26295,\n  \"parmesan</w>\": 27274,\n  \"paro\": 17429,\n  \"parody</w>\": 24318,\n  \"parole</w>\": 32158,\n  \"parr</w>\": 44113,\n  \"parrish</w>\": 43043,\n  \"parrot</w>\": 23565,\n  \"parry</w>\": 40604,\n  \"parsley</w>\": 30077,\n  \"parsons</w>\": 22505,\n  \"part\": 1872,\n  \"part</w>\": 1551,\n  \"parte</w>\": 48508,\n  \"parth</w>\": 34790,\n  \"parti\": 10509,\n  \"partial</w>\": 18957,\n  \"partially</w>\": 21269,\n  \"partic\": 2871,\n  \"partici\": 9540,\n  \"particip\": 4400,\n  \"participant</w>\": 27674,\n  \"participants</w>\": 10237,\n  \"participate</w>\": 9433,\n  \"participated</w>\": 14252,\n  \"participates</w>\": 46414,\n  \"participating</w>\": 11535,\n  \"participation</w>\": 13529,\n  \"particle</w>\": 27716,\n  \"particles</w>\": 27012,\n  \"particul\": 11408,\n  \"particular</w>\": 14098,\n  \"particularly</w>\": 12170,\n  \"parties</w>\": 9032,\n  \"parting</w>\": 32844,\n  \"partisan</w>\": 20772,\n  \"partist</w>\": 44713,\n  \"partition</w>\": 42219,\n  \"partly</w>\": 21459,\n  \"partner\": 5210,\n  \"partner</w>\": 4568,\n  \"partnered</w>\": 21402,\n  \"partnering</w>\": 21182,\n  \"partners</w>\": 5568,\n  \"partnership</w>\": 6123,\n  \"partnerships</w>\": 17418,\n  \"parton</w>\": 43245,\n  \"partridge</w>\": 34872,\n  \"parts</w>\": 5149,\n  \"party\": 12877,\n  \"party</w>\": 1580,\n  \"partying</w>\": 25702,\n  \"pas\": 1341,\n  \"pas</w>\": 9525,\n  \"pasadena</w>\": 25892,\n  \"pascal</w>\": 28626,\n  \"pasco</w>\": 49220,\n  \"pascu\": 42692,\n  \"pash\": 23936,\n  \"pasha</w>\": 46986,\n  \"paso</w>\": 18542,\n  \"pasqu\": 44941,\n  \"pass\": 5016,\n  \"pass</w>\": 3511,\n  \"passage</w>\": 16477,\n  \"passages</w>\": 48937,\n  \"passed</w>\": 4957,\n  \"passenger</w>\": 12311,\n  \"passengers</w>\": 12781,\n  \"passer</w>\": 48544,\n  \"passes</w>\": 7633,\n  \"passi\": 32471,\n  \"passing</w>\": 6589,\n  \"passion\": 8822,\n  \"passion</w>\": 5332,\n  \"passionate</w>\": 10947,\n  \"passionately</w>\": 44028,\n  \"passions</w>\": 38441,\n  \"passive</w>\": 23171,\n  \"passover</w>\": 38426,\n  \"passport</w>\": 14739,\n  \"passports</w>\": 46368,\n  \"password</w>\": 20258,\n  \"passwords</w>\": 43095,\n  \"past\": 7315,\n  \"past</w>\": 2729,\n  \"pasta</w>\": 10441,\n  \"paste\": 34765,\n  \"paste</w>\": 17038,\n  \"pastel</w>\": 19457,\n  \"pastels</w>\": 45699,\n  \"pastor\": 19792,\n  \"pastor</w>\": 9664,\n  \"pastoral</w>\": 37191,\n  \"pastors</w>\": 30959,\n  \"pastr\": 45478,\n  \"pastries</w>\": 39409,\n  \"pastry</w>\": 18582,\n  \"pasture</w>\": 34764,\n  \"pastures</w>\": 47793,\n  \"pat\": 1300,\n  \"pat</w>\": 7036,\n  \"patag\": 29862,\n  \"patagonia</w>\": 32786,\n  \"patch\": 29284,\n  \"patch</w>\": 8721,\n  \"patches</w>\": 22104,\n  \"patchwork</w>\": 44675,\n  \"patchy</w>\": 47488,\n  \"pate\": 42122,\n  \"pate</w>\": 42098,\n  \"patel</w>\": 14168,\n  \"patent</w>\": 14692,\n  \"patented</w>\": 37277,\n  \"patents</w>\": 33911,\n  \"paterson</w>\": 36560,\n  \"path\": 7408,\n  \"path</w>\": 5035,\n  \"pathetic</w>\": 18222,\n  \"pathfinder</w>\": 35415,\n  \"pathi\": 34976,\n  \"pathi</w>\": 27347,\n  \"pathic</w>\": 49025,\n  \"patho\": 18534,\n  \"pathology</w>\": 23290,\n  \"paths</w>\": 16333,\n  \"pathway</w>\": 23488,\n  \"pathways</w>\": 24690,\n  \"pathy</w>\": 13330,\n  \"pati\": 2799,\n  \"pati</w>\": 26708,\n  \"patience</w>\": 13575,\n  \"patient\": 30139,\n  \"patient</w>\": 6262,\n  \"patiently</w>\": 22980,\n  \"patients</w>\": 5543,\n  \"patil</w>\": 49187,\n  \"patio</w>\": 14304,\n  \"pational</w>\": 30627,\n  \"patna</w>\": 45025,\n  \"patory</w>\": 41859,\n  \"patreon</w>\": 17165,\n  \"patri\": 4771,\n  \"patriarch</w>\": 49054,\n  \"patriarchy</w>\": 48806,\n  \"patric\": 12569,\n  \"patrice</w>\": 40731,\n  \"patricia</w>\": 18143,\n  \"patrick\": 12078,\n  \"patrick</w>\": 5286,\n  \"patricks</w>\": 46783,\n  \"patriot\": 28896,\n  \"patriot</w>\": 15692,\n  \"patrioti\": 35520,\n  \"patriotic</w>\": 20217,\n  \"patriotism</w>\": 35807,\n  \"patriots</w>\": 8707,\n  \"patro\": 31650,\n  \"patrol</w>\": 10073,\n  \"patrolling</w>\": 39344,\n  \"patrols</w>\": 35978,\n  \"patron\": 26658,\n  \"patron</w>\": 17683,\n  \"patrons</w>\": 28308,\n  \"pats</w>\": 24874,\n  \"patsy</w>\": 46093,\n  \"patt\": 12637,\n  \"patter\": 4982,\n  \"pattern</w>\": 7447,\n  \"patterned</w>\": 47212,\n  \"patterns</w>\": 11637,\n  \"patterson</w>\": 21384,\n  \"patti\": 44927,\n  \"patti</w>\": 26123,\n  \"pattinson</w>\": 32474,\n  \"patton</w>\": 29026,\n  \"patty\": 48741,\n  \"patty</w>\": 18321,\n  \"pau\": 1834,\n  \"pau</w>\": 35970,\n  \"paul\": 6035,\n  \"paul</w>\": 2597,\n  \"paula\": 37363,\n  \"paula</w>\": 16777,\n  \"pauline</w>\": 30438,\n  \"paulo\": 48002,\n  \"paulo</w>\": 21628,\n  \"pauls\": 41413,\n  \"pauls</w>\": 40010,\n  \"paulson</w>\": 48201,\n  \"pause</w>\": 19439,\n  \"paused</w>\": 46782,\n  \"pav\": 6661,\n  \"pave</w>\": 37107,\n  \"paved</w>\": 27898,\n  \"pavel</w>\": 43152,\n  \"pavement</w>\": 27669,\n  \"pavilion</w>\": 13374,\n  \"paving</w>\": 28651,\n  \"paw\": 14009,\n  \"paw</w>\": 16016,\n  \"pawan\": 29754,\n  \"pawankalyan</w>\": 33702,\n  \"pawn</w>\": 43195,\n  \"paws</w>\": 16714,\n  \"pax\": 20007,\n  \"pax</w>\": 19033,\n  \"paxton</w>\": 38347,\n  \"pay\": 2642,\n  \"pay</w>\": 3345,\n  \"payback</w>\": 36413,\n  \"paycheck</w>\": 45078,\n  \"payday</w>\": 26957,\n  \"payee</w>\": 46985,\n  \"payer</w>\": 41503,\n  \"paying</w>\": 8341,\n  \"payment</w>\": 10596,\n  \"payments</w>\": 11832,\n  \"payne</w>\": 12775,\n  \"paypal</w>\": 21442,\n  \"payroll</w>\": 31610,\n  \"pays</w>\": 10845,\n  \"paysoff</w>\": 48174,\n  \"paytm</w>\": 45352,\n  \"payton</w>\": 27348,\n  \"paz</w>\": 22267,\n  \"pb\": 20112,\n  \"pb</w>\": 10981,\n  \"pba</w>\": 28205,\n  \"pbb\": 48567,\n  \"pbb</w>\": 40589,\n  \"pbc</w>\": 49191,\n  \"pbl</w>\": 35166,\n  \"pbr</w>\": 32998,\n  \"pbs</w>\": 17908,\n  \"pc\": 6782,\n  \"pc</w>\": 3808,\n  \"pca</w>\": 35705,\n  \"pcb</w>\": 26235,\n  \"pcc</w>\": 36059,\n  \"pci</w>\": 38957,\n  \"pcm</w>\": 47436,\n  \"pcr</w>\": 35704,\n  \"pcs</w>\": 11917,\n  \"pcso</w>\": 31963,\n  \"pct</w>\": 22168,\n  \"pd\": 4387,\n  \"pd</w>\": 4675,\n  \"pdates</w>\": 16842,\n  \"pdc</w>\": 40498,\n  \"pdf</w>\": 15181,\n  \"pdp</w>\": 24601,\n  \"pdt</w>\": 21743,\n  \"pdx\": 25470,\n  \"pdx</w>\": 16153,\n  \"pe\": 661,\n  \"pe</w>\": 956,\n  \"pea</w>\": 13915,\n  \"peabo\": 34083,\n  \"peabody</w>\": 41244,\n  \"peac\": 34615,\n  \"peace\": 6249,\n  \"peace</w>\": 3021,\n  \"peaceful</w>\": 9461,\n  \"peacefully</w>\": 30530,\n  \"peacekeeping</w>\": 43630,\n  \"peach\": 10522,\n  \"peach</w>\": 11538,\n  \"peaches</w>\": 27216,\n  \"peak\": 18572,\n  \"peak</w>\": 6026,\n  \"peakdistrict</w>\": 41289,\n  \"peake</w>\": 24810,\n  \"peaked</w>\": 36391,\n  \"peaks</w>\": 14067,\n  \"pean\": 11563,\n  \"peanu\": 25843,\n  \"peanut</w>\": 12491,\n  \"peanuts</w>\": 26503,\n  \"pear\": 4910,\n  \"pear</w>\": 18820,\n  \"pearce</w>\": 25996,\n  \"pearl\": 21806,\n  \"pearl</w>\": 8560,\n  \"pearljam</w>\": 46739,\n  \"pearls</w>\": 19581,\n  \"pears</w>\": 39565,\n  \"pearson</w>\": 20461,\n  \"peas</w>\": 15937,\n  \"peasant</w>\": 40621,\n  \"peasants</w>\": 48788,\n  \"peat</w>\": 26914,\n  \"pebble</w>\": 28056,\n  \"pebbles</w>\": 40155,\n  \"pec\": 32447,\n  \"pec</w>\": 17611,\n  \"pecan</w>\": 32177,\n  \"peck\": 25186,\n  \"peck</w>\": 29234,\n  \"pecker</w>\": 30169,\n  \"peckham</w>\": 45863,\n  \"pecu\": 34200,\n  \"peculiar</w>\": 42808,\n  \"ped\": 13197,\n  \"ped</w>\": 2966,\n  \"pedago\": 34590,\n  \"pedagogy</w>\": 48072,\n  \"pedal\": 32943,\n  \"pedal</w>\": 19621,\n  \"pedals</w>\": 38535,\n  \"pede\": 12862,\n  \"pede</w>\": 19560,\n  \"pedestri\": 30027,\n  \"pedestrian</w>\": 18256,\n  \"pedestrians</w>\": 33895,\n  \"pedi\": 12967,\n  \"pedia</w>\": 11733,\n  \"pediatric\": 48431,\n  \"pediatric</w>\": 22071,\n  \"pedic\": 35319,\n  \"pedic</w>\": 44528,\n  \"pedro\": 29963,\n  \"pedro</w>\": 15114,\n  \"peds</w>\": 45377,\n  \"pee\": 12988,\n  \"pee</w>\": 11196,\n  \"peed</w>\": 47369,\n  \"peek\": 46323,\n  \"peek</w>\": 7569,\n  \"peeking</w>\": 48771,\n  \"peel\": 34386,\n  \"peel</w>\": 17158,\n  \"peeled</w>\": 33533,\n  \"peeling</w>\": 48649,\n  \"peep\": 25425,\n  \"peep</w>\": 16857,\n  \"peeps</w>\": 11681,\n  \"peer\": 32416,\n  \"peer</w>\": 14432,\n  \"peers</w>\": 21626,\n  \"pees</w>\": 31830,\n  \"peg\": 32182,\n  \"peg</w>\": 11207,\n  \"pegas\": 30018,\n  \"pegasus</w>\": 37822,\n  \"peggy</w>\": 24271,\n  \"pei\": 48166,\n  \"pei</w>\": 12917,\n  \"pel\": 4286,\n  \"pel</w>\": 7006,\n  \"pele</w>\": 44105,\n  \"pelican</w>\": 34131,\n  \"pelicans</w>\": 29363,\n  \"pell</w>\": 46981,\n  \"pelle\": 31267,\n  \"pelled</w>\": 32506,\n  \"pellegr\": 38529,\n  \"pellets</w>\": 48240,\n  \"pelo\": 40192,\n  \"pelo</w>\": 40238,\n  \"pelosi</w>\": 22169,\n  \"pelvic</w>\": 45646,\n  \"pemb\": 19880,\n  \"pembro\": 24084,\n  \"pembroke\": 36702,\n  \"pembroke</w>\": 40044,\n  \"pembrokeshire</w>\": 40695,\n  \"pen\": 1501,\n  \"pen</w>\": 5356,\n  \"pena</w>\": 35788,\n  \"penalties</w>\": 25417,\n  \"penalty</w>\": 11491,\n  \"penang</w>\": 29545,\n  \"penc\": 20065,\n  \"pence</w>\": 18002,\n  \"pencil\": 41303,\n  \"pencil</w>\": 11200,\n  \"pencils</w>\": 21909,\n  \"pend\": 3052,\n  \"pendant</w>\": 12415,\n  \"pendants</w>\": 44117,\n  \"pending</w>\": 12770,\n  \"pendleton</w>\": 44272,\n  \"pendu\": 45336,\n  \"penelope</w>\": 36703,\n  \"penetr\": 26058,\n  \"peng\": 42955,\n  \"peng</w>\": 39200,\n  \"pengu\": 8854,\n  \"penguin\": 28249,\n  \"penguin</w>\": 14952,\n  \"penguins</w>\": 16557,\n  \"peninsu\": 13464,\n  \"peninsula</w>\": 14070,\n  \"penn\": 7760,\n  \"penn</w>\": 11128,\n  \"pennant</w>\": 43971,\n  \"penned</w>\": 45077,\n  \"penney</w>\": 47856,\n  \"pennies</w>\": 43094,\n  \"pennsylvania</w>\": 13673,\n  \"penny\": 20400,\n  \"penny</w>\": 11388,\n  \"pens\": 13307,\n  \"pens</w>\": 13310,\n  \"pensac\": 30925,\n  \"pensacola</w>\": 33573,\n  \"pension\": 32840,\n  \"pension</w>\": 17764,\n  \"pensions</w>\": 29773,\n  \"penske</w>\": 47154,\n  \"pent\": 10699,\n  \"pent</w>\": 22725,\n  \"pentagon</w>\": 23133,\n  \"pente\": 33165,\n  \"penthouse</w>\": 32673,\n  \"penultimate</w>\": 36553,\n  \"peop\": 1030,\n  \"people\": 10573,\n  \"people</w>\": 1047,\n  \"peoples\": 28241,\n  \"peoples</w>\": 14627,\n  \"peopleschoice</w>\": 32418,\n  \"peoplesvote</w>\": 45830,\n  \"peoria</w>\": 36985,\n  \"pep\": 12761,\n  \"pep</w>\": 14898,\n  \"pepe</w>\": 24778,\n  \"pepp\": 34425,\n  \"pepper\": 14861,\n  \"pepper</w>\": 8253,\n  \"peppermint</w>\": 30321,\n  \"pepperoni</w>\": 47307,\n  \"peppers</w>\": 14650,\n  \"pepsi</w>\": 21307,\n  \"per\": 703,\n  \"per</w>\": 1284,\n  \"pera</w>\": 26294,\n  \"perce\": 24135,\n  \"perceived</w>\": 38436,\n  \"percent\": 16328,\n  \"percent</w>\": 9017,\n  \"percentage</w>\": 19477,\n  \"percep\": 28017,\n  \"perception</w>\": 20591,\n  \"perceptions</w>\": 38138,\n  \"perch</w>\": 34281,\n  \"perched</w>\": 40071,\n  \"percu\": 41722,\n  \"percussion</w>\": 23980,\n  \"percy</w>\": 23940,\n  \"pere\": 8665,\n  \"pere</w>\": 36300,\n  \"pered</w>\": 24509,\n  \"peregr\": 37479,\n  \"peregrine</w>\": 44546,\n  \"pereira</w>\": 43927,\n  \"peren\": 24564,\n  \"perenni\": 26996,\n  \"perennial</w>\": 34038,\n  \"perez</w>\": 15107,\n  \"perf</w>\": 22816,\n  \"perfe\": 1624,\n  \"perfec\": 6599,\n  \"perfect\": 17261,\n  \"perfect</w>\": 1878,\n  \"perfection</w>\": 9646,\n  \"perfectly</w>\": 8037,\n  \"perfecto</w>\": 42898,\n  \"perfor\": 2311,\n  \"perform\": 3866,\n  \"perform</w>\": 5940,\n  \"performan\": 8973,\n  \"performance</w>\": 2714,\n  \"performances</w>\": 9553,\n  \"performed</w>\": 9997,\n  \"performer</w>\": 17061,\n  \"performers</w>\": 18476,\n  \"performing</w>\": 5170,\n  \"performs</w>\": 13839,\n  \"perfu\": 14214,\n  \"perfume</w>\": 17525,\n  \"perhaps</w>\": 9297,\n  \"peri\": 12618,\n  \"peri</w>\": 44068,\n  \"perience</w>\": 19302,\n  \"peril\": 40119,\n  \"peril</w>\": 48301,\n  \"perimeter</w>\": 38499,\n  \"pering</w>\": 29746,\n  \"perio\": 5101,\n  \"period</w>\": 6131,\n  \"periodic</w>\": 36476,\n  \"periods</w>\": 24401,\n  \"periph\": 35308,\n  \"peripheral</w>\": 43901,\n  \"peris\": 19461,\n  \"periscope</w>\": 21668,\n  \"perk</w>\": 33424,\n  \"perkins</w>\": 20057,\n  \"perks</w>\": 17660,\n  \"perl\": 44018,\n  \"perm</w>\": 47847,\n  \"perman\": 9018,\n  \"permanent</w>\": 11144,\n  \"permanently</w>\": 25584,\n  \"perme\": 42456,\n  \"permission</w>\": 15822,\n  \"permit</w>\": 21950,\n  \"permits</w>\": 33267,\n  \"permitted</w>\": 44380,\n  \"pero</w>\": 23551,\n  \"perpe\": 15749,\n  \"perpetr\": 33376,\n  \"perpetu\": 30132,\n  \"perpetual</w>\": 32018,\n  \"perrie</w>\": 32691,\n  \"perry\": 28478,\n  \"perry</w>\": 7899,\n  \"pers\": 3688,\n  \"pers</w>\": 10710,\n  \"perse\": 27498,\n  \"persecu\": 22878,\n  \"persecution</w>\": 32009,\n  \"perseverance</w>\": 29820,\n  \"persi\": 11509,\n  \"persian</w>\": 19859,\n  \"persist\": 19412,\n  \"persist</w>\": 40938,\n  \"persistence</w>\": 34588,\n  \"persistent</w>\": 29028,\n  \"person\": 3510,\n  \"person</w>\": 2533,\n  \"persona</w>\": 18401,\n  \"personal\": 10114,\n  \"personal</w>\": 4121,\n  \"personalised</w>\": 24186,\n  \"personalities</w>\": 27888,\n  \"personality</w>\": 10386,\n  \"personalized</w>\": 17845,\n  \"personally</w>\": 13885,\n  \"personnel</w>\": 14546,\n  \"persons</w>\": 14592,\n  \"perspec\": 17997,\n  \"perspective</w>\": 8996,\n  \"perspectives</w>\": 18777,\n  \"persu\": 20972,\n  \"pert\": 36970,\n  \"pert</w>\": 16306,\n  \"perth\": 19067,\n  \"perth</w>\": 11011,\n  \"peru\": 20612,\n  \"peru</w>\": 12964,\n  \"peruvian</w>\": 30822,\n  \"pes\": 38368,\n  \"pes</w>\": 2598,\n  \"pesa</w>\": 47409,\n  \"pesc\": 44044,\n  \"pesh\": 33184,\n  \"peshaw\": 28524,\n  \"peshawar</w>\": 29230,\n  \"pesky</w>\": 42512,\n  \"pesos</w>\": 47872,\n  \"pessi\": 43902,\n  \"pest\": 20130,\n  \"pest</w>\": 9425,\n  \"pesticide</w>\": 48481,\n  \"pesticides</w>\": 37868,\n  \"pesto</w>\": 26186,\n  \"pests</w>\": 41919,\n  \"pet\": 2167,\n  \"pet</w>\": 3703,\n  \"peta</w>\": 28785,\n  \"petal\": 38430,\n  \"petal</w>\": 40469,\n  \"petals</w>\": 26064,\n  \"petday</w>\": 45314,\n  \"pete\": 14479,\n  \"pete</w>\": 8571,\n  \"peter\": 5093,\n  \"peter</w>\": 3696,\n  \"peterborough</w>\": 26012,\n  \"peters</w>\": 16336,\n  \"petersburg</w>\": 21052,\n  \"petersen</w>\": 39794,\n  \"peterson</w>\": 16877,\n  \"peth</w>\": 48920,\n  \"petit\": 36437,\n  \"petit</w>\": 21276,\n  \"petite</w>\": 27213,\n  \"petition</w>\": 10975,\n  \"petitions</w>\": 43536,\n  \"petr\": 29808,\n  \"petra</w>\": 31300,\n  \"petre\": 47179,\n  \"petri\": 31831,\n  \"petro\": 8716,\n  \"petrol</w>\": 18149,\n  \"petroleum</w>\": 22063,\n  \"petron\": 42875,\n  \"pets</w>\": 7663,\n  \"pett\": 27051,\n  \"petti\": 48001,\n  \"petting</w>\": 44334,\n  \"petty</w>\": 17324,\n  \"peu\": 21411,\n  \"peuge\": 22893,\n  \"peugeot</w>\": 24129,\n  \"pew\": 21608,\n  \"pew</w>\": 30783,\n  \"pewdie\": 41882,\n  \"pewdiepie</w>\": 42563,\n  \"pex</w>\": 43765,\n  \"pey\": 14966,\n  \"pey</w>\": 30933,\n  \"peyton\": 49254,\n  \"peyton</w>\": 20307,\n  \"pez\": 45798,\n  \"pez</w>\": 10482,\n  \"pf\": 16680,\n  \"pf</w>\": 12572,\n  \"pfa</w>\": 47839,\n  \"pfc</w>\": 35007,\n  \"pff</w>\": 44121,\n  \"pfi\": 29810,\n  \"pfw</w>\": 31229,\n  \"pg\": 12476,\n  \"pg</w>\": 5211,\n  \"pga</w>\": 13351,\n  \"pgat\": 36514,\n  \"pgatour</w>\": 40094,\n  \"pgh\": 44862,\n  \"pgh</w>\": 30031,\n  \"pgs</w>\": 49204,\n  \"ph\": 745,\n  \"ph</w>\": 2042,\n  \"pha\": 4443,\n  \"pha</w>\": 26255,\n  \"phal\": 19962,\n  \"phan\": 8731,\n  \"phan</w>\": 40126,\n  \"phant\": 36998,\n  \"phantom\": 37688,\n  \"phantom</w>\": 14490,\n  \"phar\": 5570,\n  \"phara\": 35792,\n  \"pharaoh</w>\": 40437,\n  \"pharm</w>\": 45761,\n  \"pharma</w>\": 17831,\n  \"pharmac\": 8193,\n  \"pharmaceu\": 19490,\n  \"pharmaceutical</w>\": 25217,\n  \"pharmaceuticals</w>\": 44623,\n  \"pharmacist</w>\": 41024,\n  \"pharmacists</w>\": 44337,\n  \"pharmacy</w>\": 15293,\n  \"pharo\": 42308,\n  \"pharoah</w>\": 49287,\n  \"pharrell</w>\": 31316,\n  \"phase</w>\": 8304,\n  \"phases</w>\": 35337,\n  \"phat</w>\": 42492,\n  \"phc</w>\": 41102,\n  \"phd\": 20875,\n  \"phd</w>\": 8472,\n  \"phdchat</w>\": 39564,\n  \"phdlife</w>\": 39638,\n  \"phe\": 4787,\n  \"phe</w>\": 19853,\n  \"pheasant</w>\": 41983,\n  \"phee</w>\": 41292,\n  \"phel\": 23711,\n  \"phelps</w>\": 27128,\n  \"phen\": 7718,\n  \"pheno\": 47336,\n  \"phenom\": 31673,\n  \"phenom</w>\": 39618,\n  \"phenomen\": 11304,\n  \"phenomena</w>\": 41538,\n  \"phenomenal</w>\": 15035,\n  \"phenomenon</w>\": 24464,\n  \"pher\": 9194,\n  \"pher</w>\": 19828,\n  \"phers</w>\": 29531,\n  \"pherson</w>\": 36421,\n  \"phew</w>\": 10295,\n  \"phi\": 2239,\n  \"phi</w>\": 12220,\n  \"phia</w>\": 9228,\n  \"phic</w>\": 3977,\n  \"phie</w>\": 30237,\n  \"phies</w>\": 17062,\n  \"phil\": 2821,\n  \"phil</w>\": 6199,\n  \"phila</w>\": 47443,\n  \"philadel\": 9428,\n  \"philadelphia</w>\": 9749,\n  \"philanthro\": 16587,\n  \"philanthropist</w>\": 44153,\n  \"philanthropy</w>\": 25047,\n  \"philately</w>\": 33695,\n  \"phile</w>\": 36543,\n  \"philharmon\": 25228,\n  \"philharmonic</w>\": 31699,\n  \"phili\": 4277,\n  \"philia</w>\": 46654,\n  \"philip\": 20748,\n  \"philip</w>\": 11074,\n  \"philipp\": 5623,\n  \"philipp</w>\": 47591,\n  \"philippe</w>\": 20942,\n  \"philippine</w>\": 17629,\n  \"philippines</w>\": 8149,\n  \"philips</w>\": 25175,\n  \"phill\": 42346,\n  \"phill</w>\": 48272,\n  \"philli\": 6456,\n  \"phillies</w>\": 18748,\n  \"phillip\": 48832,\n  \"phillip</w>\": 19323,\n  \"phillips</w>\": 11041,\n  \"philly\": 19545,\n  \"philly</w>\": 7785,\n  \"philos\": 8395,\n  \"philosop\": 20349,\n  \"philosoph\": 10187,\n  \"philosopher</w>\": 25220,\n  \"philosophical</w>\": 32628,\n  \"philosophy</w>\": 12213,\n  \"phils</w>\": 38573,\n  \"phin</w>\": 33816,\n  \"phine</w>\": 40985,\n  \"phins</w>\": 40210,\n  \"phish</w>\": 36897,\n  \"phishing</w>\": 36546,\n  \"phl</w>\": 25603,\n  \"pho\": 816,\n  \"pho</w>\": 22707,\n  \"phobia</w>\": 28749,\n  \"phoe\": 22673,\n  \"phoebe</w>\": 27582,\n  \"phoeni\": 6778,\n  \"phoenix\": 20615,\n  \"phoenix</w>\": 7793,\n  \"phol</w>\": 48140,\n  \"phon\": 19602,\n  \"phon</w>\": 31115,\n  \"phone\": 15486,\n  \"phone</w>\": 1951,\n  \"phones</w>\": 6351,\n  \"phony</w>\": 31925,\n  \"phora</w>\": 31363,\n  \"phosp\": 22638,\n  \"photo\": 1153,\n  \"photo</w>\": 1125,\n  \"photobomb</w>\": 37075,\n  \"photobook</w>\": 41894,\n  \"photog</w>\": 28115,\n  \"photogenic</w>\": 36108,\n  \"photogra\": 36754,\n  \"photograph\": 1688,\n  \"photograph</w>\": 8853,\n  \"photographed</w>\": 11573,\n  \"photographer</w>\": 5748,\n  \"photographers</w>\": 17141,\n  \"photographic</w>\": 22053,\n  \"photographing</w>\": 30074,\n  \"photographs</w>\": 15759,\n  \"photography\": 33183,\n  \"photography</w>\": 2108,\n  \"photom\": 32223,\n  \"photoo\": 11106,\n  \"photooftheday</w>\": 11933,\n  \"photos</w>\": 2479,\n  \"photoshoot</w>\": 11121,\n  \"photoshop</w>\": 12419,\n  \"photoshopped</w>\": 35738,\n  \"phouse</w>\": 27848,\n  \"php</w>\": 17370,\n  \"phra\": 12777,\n  \"phrase</w>\": 18809,\n  \"phrases</w>\": 35264,\n  \"phs</w>\": 16495,\n  \"phu\": 21274,\n  \"phuket</w>\": 34028,\n  \"phx\": 35466,\n  \"phx</w>\": 29507,\n  \"phy\": 6484,\n  \"phy</w>\": 4292,\n  \"phyl\": 35600,\n  \"phyllis</w>\": 37844,\n  \"phys\": 3734,\n  \"phys</w>\": 37894,\n  \"physi\": 13782,\n  \"physic\": 46641,\n  \"physical\": 44127,\n  \"physical</w>\": 6671,\n  \"physically</w>\": 18105,\n  \"physician</w>\": 21055,\n  \"physicians</w>\": 26702,\n  \"physicist</w>\": 29052,\n  \"physics</w>\": 9369,\n  \"physio\": 29574,\n  \"physio</w>\": 29177,\n  \"physiology</w>\": 32349,\n  \"physique</w>\": 42884,\n  \"phyto\": 42197,\n  \"pi\": 741,\n  \"pi</w>\": 5357,\n  \"pia</w>\": 8918,\n  \"pian</w>\": 24637,\n  \"pianist</w>\": 21048,\n  \"piano\": 49278,\n  \"piano</w>\": 7894,\n  \"pianos</w>\": 47904,\n  \"piazza</w>\": 28496,\n  \"pic\": 901,\n  \"pic</w>\": 1282,\n  \"pical</w>\": 5482,\n  \"picard</w>\": 48507,\n  \"picasso</w>\": 21481,\n  \"piccad\": 33876,\n  \"piccadilly</w>\": 37287,\n  \"piccollage</w>\": 43621,\n  \"pick\": 6379,\n  \"pick</w>\": 3142,\n  \"picked</w>\": 6018,\n  \"picker</w>\": 43105,\n  \"pickering</w>\": 47605,\n  \"picket</w>\": 33559,\n  \"picking</w>\": 9545,\n  \"pickle</w>\": 24570,\n  \"pickled</w>\": 21705,\n  \"pickles</w>\": 25001,\n  \"picks</w>\": 8551,\n  \"pickup</w>\": 15382,\n  \"pickups</w>\": 33383,\n  \"picnic</w>\": 12007,\n  \"pico</w>\": 23363,\n  \"picoftheday</w>\": 18319,\n  \"pics</w>\": 2559,\n  \"pict</w>\": 18778,\n  \"pictorial</w>\": 40640,\n  \"picture\": 11663,\n  \"picture</w>\": 1674,\n  \"pictured</w>\": 7647,\n  \"pictures</w>\": 3646,\n  \"picturesque</w>\": 24894,\n  \"pid</w>\": 5225,\n  \"piday</w>\": 48056,\n  \"pie\": 12065,\n  \"pie</w>\": 5319,\n  \"piece\": 39632,\n  \"piece</w>\": 2754,\n  \"pieces</w>\": 6194,\n  \"pied\": 24686,\n  \"pied</w>\": 12713,\n  \"piedmont</w>\": 39691,\n  \"pier\": 5641,\n  \"pier</w>\": 11348,\n  \"pierc\": 49216,\n  \"pierce\": 48462,\n  \"pierce</w>\": 16782,\n  \"pierced</w>\": 32799,\n  \"piercing</w>\": 22557,\n  \"piero</w>\": 43125,\n  \"pierre\": 34670,\n  \"pierre</w>\": 11985,\n  \"piers</w>\": 29030,\n  \"pies</w>\": 6898,\n  \"pieter</w>\": 44801,\n  \"pietro</w>\": 42169,\n  \"piff</w>\": 40719,\n  \"pig\": 12009,\n  \"pig</w>\": 9619,\n  \"pigeon</w>\": 18008,\n  \"pigeons</w>\": 32910,\n  \"piggy</w>\": 28245,\n  \"pigment</w>\": 40284,\n  \"pigs</w>\": 16228,\n  \"pik</w>\": 48539,\n  \"pika</w>\": 47372,\n  \"pikach\": 27268,\n  \"pikachu</w>\": 28107,\n  \"pike\": 33457,\n  \"pike</w>\": 14011,\n  \"pil\": 2893,\n  \"pil</w>\": 20645,\n  \"pilates</w>\": 29518,\n  \"pile\": 44403,\n  \"pile</w>\": 13930,\n  \"piled</w>\": 26873,\n  \"piles</w>\": 31968,\n  \"pilgri\": 13966,\n  \"pilgrim</w>\": 32662,\n  \"pilgrimage</w>\": 24335,\n  \"pilgrims</w>\": 31370,\n  \"piling</w>\": 43050,\n  \"pilip\": 27234,\n  \"pilipinas</w>\": 32392,\n  \"pill\": 14830,\n  \"pill</w>\": 19226,\n  \"pillar</w>\": 17322,\n  \"pillars</w>\": 22054,\n  \"pillow\": 42237,\n  \"pillow</w>\": 12182,\n  \"pillows</w>\": 26499,\n  \"pills</w>\": 23964,\n  \"pilo\": 37526,\n  \"pilot\": 31619,\n  \"pilot</w>\": 6687,\n  \"pilots</w>\": 15586,\n  \"pilsner</w>\": 47153,\n  \"pim\": 15285,\n  \"pim</w>\": 35472,\n  \"pimp\": 35789,\n  \"pin\": 2629,\n  \"pin</w>\": 5164,\n  \"pinball</w>\": 31679,\n  \"pinch</w>\": 26114,\n  \"pine\": 9398,\n  \"pine</w>\": 7374,\n  \"pineapple</w>\": 14831,\n  \"pines</w>\": 20338,\n  \"ping\": 23720,\n  \"ping</w>\": 2089,\n  \"pinion</w>\": 40557,\n  \"pink\": 11151,\n  \"pink</w>\": 3360,\n  \"pinkfloyd</w>\": 48520,\n  \"pinky</w>\": 29803,\n  \"pinn\": 31448,\n  \"pinnacle</w>\": 32754,\n  \"pinned</w>\": 12165,\n  \"pinning</w>\": 44515,\n  \"pino</w>\": 36633,\n  \"pinot\": 41399,\n  \"pinot</w>\": 21146,\n  \"pinoy\": 43578,\n  \"pinoy</w>\": 35258,\n  \"pins</w>\": 14619,\n  \"pinst\": 41173,\n  \"pint\": 42537,\n  \"pint</w>\": 13584,\n  \"pinterest</w>\": 15379,\n  \"pinto</w>\": 35992,\n  \"pints</w>\": 27935,\n  \"pinup</w>\": 37349,\n  \"pio</w>\": 22108,\n  \"pion\": 36728,\n  \"pion</w>\": 29190,\n  \"pione\": 7975,\n  \"pioneer\": 34892,\n  \"pioneer</w>\": 12459,\n  \"pioneering</w>\": 25933,\n  \"pioneers</w>\": 22383,\n  \"pious</w>\": 42441,\n  \"pip</w>\": 30854,\n  \"pipe\": 29333,\n  \"pipe</w>\": 10459,\n  \"pipel\": 12387,\n  \"pipeline</w>\": 14151,\n  \"pipelines</w>\": 39683,\n  \"piper\": 47052,\n  \"piper</w>\": 16293,\n  \"pipes</w>\": 16991,\n  \"piping</w>\": 40744,\n  \"pippa</w>\": 47672,\n  \"pir\": 4351,\n  \"pir</w>\": 38899,\n  \"piracy</w>\": 39452,\n  \"piran\": 49034,\n  \"pirate\": 38680,\n  \"pirate</w>\": 13592,\n  \"pirates</w>\": 10442,\n  \"pire\": 16613,\n  \"pires</w>\": 14988,\n  \"pis\": 9230,\n  \"pis</w>\": 44441,\n  \"pisa</w>\": 43632,\n  \"pisces</w>\": 45982,\n  \"piss</w>\": 20818,\n  \"pissed</w>\": 17989,\n  \"pist\": 15556,\n  \"pist</w>\": 32826,\n  \"pistachi\": 29760,\n  \"pistachio</w>\": 36320,\n  \"pistol</w>\": 20480,\n  \"piston</w>\": 48236,\n  \"pistons</w>\": 27242,\n  \"pistor\": 48162,\n  \"pit\": 2946,\n  \"pit</w>\": 7476,\n  \"pita</w>\": 27070,\n  \"pitbull</w>\": 25295,\n  \"pitch\": 8992,\n  \"pitch</w>\": 5872,\n  \"pitched</w>\": 28447,\n  \"pitcher</w>\": 13445,\n  \"pitchers</w>\": 27835,\n  \"pitches</w>\": 21005,\n  \"pitching</w>\": 16455,\n  \"piti\": 47568,\n  \"pits</w>\": 24144,\n  \"pitt\": 7607,\n  \"pitt</w>\": 15599,\n  \"pitts\": 9531,\n  \"pittsburgh</w>\": 10453,\n  \"pity</w>\": 24380,\n  \"pius</w>\": 39988,\n  \"pivo\": 18009,\n  \"pivot</w>\": 31805,\n  \"pivotal</w>\": 31432,\n  \"pix\": 6185,\n  \"pix</w>\": 13088,\n  \"pixar</w>\": 27493,\n  \"pixel\": 14384,\n  \"pixel</w>\": 13241,\n  \"pixelart</w>\": 18516,\n  \"pixels</w>\": 34099,\n  \"pixie</w>\": 35573,\n  \"piyu\": 30772,\n  \"piyush\": 36191,\n  \"piyushgoyal</w>\": 45318,\n  \"pizz\": 3897,\n  \"pizza</w>\": 4474,\n  \"pizzas</w>\": 30647,\n  \"pizzeria</w>\": 44174,\n  \"pj\": 12524,\n  \"pj</w>\": 17179,\n  \"pjnet</w>\": 22011,\n  \"pjs</w>\": 36009,\n  \"pk\": 10149,\n  \"pk</w>\": 10991,\n  \"pkg</w>\": 49011,\n  \"pkk</w>\": 47480,\n  \"pknot</w>\": 41779,\n  \"pkwy</w>\": 36827,\n  \"pl\": 712,\n  \"pl</w>\": 5678,\n  \"pla\": 841,\n  \"pla</w>\": 19945,\n  \"plac\": 2331,\n  \"place\": 14884,\n  \"place</w>\": 1445,\n  \"placed</w>\": 9729,\n  \"placement</w>\": 16724,\n  \"placements</w>\": 43885,\n  \"placer</w>\": 49170,\n  \"places</w>\": 4448,\n  \"placing</w>\": 18531,\n  \"plague</w>\": 25360,\n  \"plaid</w>\": 23291,\n  \"plain\": 22776,\n  \"plain</w>\": 10709,\n  \"plains</w>\": 16345,\n  \"plan\": 1740,\n  \"plan</w>\": 2970,\n  \"pland</w>\": 24801,\n  \"plane\": 22728,\n  \"plane</w>\": 5363,\n  \"planes</w>\": 12581,\n  \"planet\": 16833,\n  \"planet</w>\": 5172,\n  \"planetary</w>\": 28361,\n  \"planets</w>\": 22315,\n  \"plank</w>\": 30991,\n  \"plankton</w>\": 48249,\n  \"plann\": 6409,\n  \"planned</w>\": 8169,\n  \"planner</w>\": 18083,\n  \"planners</w>\": 33664,\n  \"planning</w>\": 4446,\n  \"plano</w>\": 34063,\n  \"plans</w>\": 4181,\n  \"plant\": 8521,\n  \"plant</w>\": 3912,\n  \"plantation</w>\": 20014,\n  \"plantbased</w>\": 33720,\n  \"planted</w>\": 14286,\n  \"planter</w>\": 34453,\n  \"planters</w>\": 43661,\n  \"planting</w>\": 13922,\n  \"plants</w>\": 5829,\n  \"plaque</w>\": 16097,\n  \"plaques</w>\": 45610,\n  \"plar</w>\": 26754,\n  \"plas\": 45673,\n  \"plasma</w>\": 24999,\n  \"plaster</w>\": 31980,\n  \"plastic\": 15645,\n  \"plastic</w>\": 6102,\n  \"plasticpollution</w>\": 47129,\n  \"plastics</w>\": 20999,\n  \"plasticsurgery</w>\": 48555,\n  \"plat\": 3172,\n  \"plata</w>\": 46456,\n  \"plate\": 28744,\n  \"plate</w>\": 5135,\n  \"plateau</w>\": 29301,\n  \"plated</w>\": 21161,\n  \"plates</w>\": 11485,\n  \"platform</w>\": 5549,\n  \"platforms</w>\": 13551,\n  \"platin\": 10267,\n  \"plating</w>\": 44564,\n  \"platinum</w>\": 10979,\n  \"plato</w>\": 41101,\n  \"platoon</w>\": 41254,\n  \"platt\": 44459,\n  \"platt</w>\": 40097,\n  \"platte</w>\": 46785,\n  \"platter</w>\": 29071,\n  \"platz</w>\": 40878,\n  \"plau\": 39139,\n  \"play\": 1222,\n  \"play</w>\": 1453,\n  \"playa</w>\": 23756,\n  \"playable</w>\": 33885,\n  \"playback</w>\": 39194,\n  \"playbook</w>\": 34856,\n  \"playboy</w>\": 24383,\n  \"played</w>\": 3432,\n  \"player\": 24503,\n  \"player</w>\": 2477,\n  \"players</w>\": 3030,\n  \"playful</w>\": 23871,\n  \"playground</w>\": 15861,\n  \"playhouse</w>\": 23254,\n  \"playin</w>\": 24674,\n  \"playing\": 47368,\n  \"playing</w>\": 1629,\n  \"playlist</w>\": 9180,\n  \"playlists</w>\": 47183,\n  \"playo\": 5804,\n  \"playoff</w>\": 9655,\n  \"playoffs</w>\": 9548,\n  \"plays</w>\": 5134,\n  \"playstation</w>\": 11332,\n  \"playtime</w>\": 43037,\n  \"playwright</w>\": 32070,\n  \"plaza</w>\": 8943,\n  \"plc</w>\": 16827,\n  \"ple\": 926,\n  \"ple</w>\": 1619,\n  \"plea</w>\": 21956,\n  \"plead</w>\": 47539,\n  \"pleads</w>\": 31425,\n  \"plear\": 21362,\n  \"pleas\": 8481,\n  \"pleas</w>\": 48740,\n  \"pleasant</w>\": 12271,\n  \"please\": 41074,\n  \"please</w>\": 1474,\n  \"pleased</w>\": 6107,\n  \"pleasing</w>\": 32893,\n  \"pleasure</w>\": 5854,\n  \"pleasures</w>\": 29513,\n  \"pledge</w>\": 11507,\n  \"pledged</w>\": 36799,\n  \"pledges</w>\": 26746,\n  \"pledis</w>\": 41202,\n  \"plein</w>\": 43429,\n  \"plenary</w>\": 19891,\n  \"plenty</w>\": 7524,\n  \"pler</w>\": 17677,\n  \"ples</w>\": 6248,\n  \"pless\": 39821,\n  \"pless</w>\": 17059,\n  \"plets</w>\": 43230,\n  \"plex\": 23765,\n  \"plex</w>\": 15241,\n  \"pley</w>\": 19543,\n  \"pli\": 30001,\n  \"pli</w>\": 45797,\n  \"plic\": 5806,\n  \"plicity</w>\": 19823,\n  \"plight</w>\": 40317,\n  \"plin\": 44531,\n  \"plin</w>\": 32335,\n  \"pline</w>\": 25376,\n  \"pling</w>\": 12899,\n  \"plings</w>\": 31184,\n  \"pll\": 47629,\n  \"pll</w>\": 25266,\n  \"pln</w>\": 48755,\n  \"plo\": 1778,\n  \"plo</w>\": 43523,\n  \"plor\": 34695,\n  \"plot</w>\": 9918,\n  \"plots</w>\": 25672,\n  \"plotting</w>\": 30751,\n  \"plough\": 33811,\n  \"plow</w>\": 38363,\n  \"pls</w>\": 5572,\n  \"plu\": 2052,\n  \"plug</w>\": 12628,\n  \"plugged</w>\": 23261,\n  \"plugin</w>\": 31278,\n  \"plugins</w>\": 48797,\n  \"plugs</w>\": 28083,\n  \"plum\": 26267,\n  \"plum</w>\": 16202,\n  \"plumb\": 21769,\n  \"plumber</w>\": 43478,\n  \"plumbing</w>\": 24647,\n  \"plume</w>\": 39495,\n  \"plun\": 15122,\n  \"plunge</w>\": 26506,\n  \"plur\": 44664,\n  \"plus</w>\": 3097,\n  \"plush</w>\": 18926,\n  \"pluto</w>\": 26380,\n  \"ply\": 17249,\n  \"ply</w>\": 28705,\n  \"plying</w>\": 36071,\n  \"plym\": 11907,\n  \"plymouth</w>\": 13786,\n  \"plz</w>\": 10538,\n  \"pm\": 13699,\n  \"pm</w>\": 990,\n  \"pmi</w>\": 41206,\n  \"pmln</w>\": 23208,\n  \"pmo\": 18782,\n  \"pmoindia</w>\": 20374,\n  \"pms</w>\": 44223,\n  \"pn\": 14431,\n  \"pn</w>\": 13774,\n  \"pnc</w>\": 37148,\n  \"pne\": 30966,\n  \"pneu\": 28714,\n  \"pneumonia</w>\": 42906,\n  \"png</w>\": 20992,\n  \"pnp</w>\": 25972,\n  \"pnpp\": 42175,\n  \"pnw</w>\": 31521,\n  \"po\": 628,\n  \"po</w>\": 3057,\n  \"poa</w>\": 43912,\n  \"poached</w>\": 27665,\n  \"poaching</w>\": 35140,\n  \"poc\": 13232,\n  \"poc</w>\": 27780,\n  \"pocaly\": 37987,\n  \"pocalypse</w>\": 42307,\n  \"poche\": 38336,\n  \"poche</w>\": 39022,\n  \"pocket\": 29147,\n  \"pocket</w>\": 8504,\n  \"pockets</w>\": 19566,\n  \"pocon\": 41850,\n  \"pod\": 3583,\n  \"pod</w>\": 7446,\n  \"podcast\": 39654,\n  \"podcast</w>\": 4294,\n  \"podcasting</w>\": 40106,\n  \"podcasts</w>\": 19392,\n  \"pode\": 33368,\n  \"poder\": 24960,\n  \"podernfamily</w>\": 26620,\n  \"podi\": 32853,\n  \"podium</w>\": 14093,\n  \"pods</w>\": 18776,\n  \"poe\": 4746,\n  \"poe</w>\": 19254,\n  \"poem</w>\": 9436,\n  \"poems</w>\": 15577,\n  \"poet\": 41019,\n  \"poet</w>\": 9872,\n  \"poetic</w>\": 26365,\n  \"poetry\": 20192,\n  \"poetry</w>\": 6038,\n  \"poetryday</w>\": 39255,\n  \"poets</w>\": 19804,\n  \"pof\": 40850,\n  \"poff</w>\": 28236,\n  \"pogba</w>\": 25998,\n  \"poign\": 29682,\n  \"poignant</w>\": 32138,\n  \"poin\": 9074,\n  \"point\": 13280,\n  \"point</w>\": 2301,\n  \"pointe</w>\": 24631,\n  \"pointed</w>\": 20703,\n  \"pointer</w>\": 29883,\n  \"pointers</w>\": 36760,\n  \"pointing</w>\": 19233,\n  \"pointless</w>\": 33586,\n  \"points</w>\": 3396,\n  \"pois\": 17008,\n  \"poise</w>\": 45087,\n  \"poised</w>\": 27354,\n  \"poison\": 30722,\n  \"poison</w>\": 17074,\n  \"poisoned</w>\": 43624,\n  \"poisoning</w>\": 25750,\n  \"poisonous</w>\": 37131,\n  \"pok\": 15387,\n  \"poke\": 6892,\n  \"poke</w>\": 23186,\n  \"pokemon\": 16239,\n  \"pokemon</w>\": 9528,\n  \"pokemongo</w>\": 23985,\n  \"poker\": 30735,\n  \"poker</w>\": 11865,\n  \"pokes</w>\": 40221,\n  \"poking</w>\": 49169,\n  \"pokÃ©\": 20656,\n  \"pokÃ©mon</w>\": 22066,\n  \"pol\": 977,\n  \"pol</w>\": 7649,\n  \"pola</w>\": 43876,\n  \"poland</w>\": 9834,\n  \"polar\": 21432,\n  \"polar</w>\": 12214,\n  \"polari\": 27919,\n  \"polaris</w>\": 37965,\n  \"polarized</w>\": 48437,\n  \"polaro\": 25237,\n  \"polaroid</w>\": 30427,\n  \"poldark</w>\": 41322,\n  \"pole\": 26682,\n  \"pole</w>\": 8170,\n  \"poles</w>\": 22585,\n  \"poli\": 9675,\n  \"poli</w>\": 5414,\n  \"polic\": 16126,\n  \"police\": 15535,\n  \"police</w>\": 2120,\n  \"policeman</w>\": 37713,\n  \"policemen</w>\": 47946,\n  \"polici\": 10819,\n  \"policies</w>\": 10993,\n  \"policing</w>\": 20969,\n  \"policy\": 30173,\n  \"policy</w>\": 4660,\n  \"polio</w>\": 30533,\n  \"polis</w>\": 16133,\n  \"polish\": 46941,\n  \"polish</w>\": 9632,\n  \"polished</w>\": 21478,\n  \"polishing</w>\": 43629,\n  \"polit\": 2247,\n  \"politan</w>\": 15337,\n  \"polite</w>\": 31497,\n  \"politi\": 40597,\n  \"politic\": 33333,\n  \"political\": 37744,\n  \"political</w>\": 4197,\n  \"politically</w>\": 24323,\n  \"politician</w>\": 15960,\n  \"politicians</w>\": 12914,\n  \"politico</w>\": 39403,\n  \"politics</w>\": 4929,\n  \"polk</w>\": 33317,\n  \"polka</w>\": 29476,\n  \"poll</w>\": 7032,\n  \"pollen</w>\": 27651,\n  \"pollin\": 19152,\n  \"pollinators</w>\": 36599,\n  \"polling</w>\": 18024,\n  \"pollo</w>\": 42755,\n  \"pollock</w>\": 37614,\n  \"polls</w>\": 11813,\n  \"pollu\": 8370,\n  \"polluted</w>\": 43346,\n  \"pollution</w>\": 10384,\n  \"polly</w>\": 31204,\n  \"polo\": 35928,\n  \"polo</w>\": 10229,\n  \"poly\": 6833,\n  \"poly</w>\": 18367,\n  \"polye\": 31730,\n  \"polyester</w>\": 38514,\n  \"polym\": 23626,\n  \"polymer</w>\": 29993,\n  \"polyne\": 38892,\n  \"polyvore</w>\": 24771,\n  \"pom\": 7548,\n  \"pom</w>\": 24280,\n  \"pome\": 27963,\n  \"pomegran\": 29326,\n  \"pomegranate</w>\": 32415,\n  \"pomer\": 35156,\n  \"pomona</w>\": 41690,\n  \"pompe\": 18352,\n  \"pompeii</w>\": 47775,\n  \"pompeo</w>\": 34351,\n  \"pompey</w>\": 35079,\n  \"pon\": 3809,\n  \"pon</w>\": 22391,\n  \"ponce</w>\": 43637,\n  \"pond</w>\": 10750,\n  \"ponder</w>\": 36863,\n  \"pondering</w>\": 47395,\n  \"ponds</w>\": 31033,\n  \"pone</w>\": 32183,\n  \"pong\": 40546,\n  \"pong</w>\": 17710,\n  \"ponies</w>\": 34157,\n  \"pons</w>\": 41255,\n  \"pont\": 47563,\n  \"pont</w>\": 22997,\n  \"ponte</w>\": 40892,\n  \"ponti\": 15527,\n  \"pontiac</w>\": 25373,\n  \"pontifex</w>\": 33566,\n  \"ponty\": 45152,\n  \"pony\": 24438,\n  \"pony</w>\": 12678,\n  \"ponytail</w>\": 43265,\n  \"poo\": 6601,\n  \"poo</w>\": 14389,\n  \"pooch</w>\": 37037,\n  \"poodle</w>\": 34961,\n  \"pooh</w>\": 27103,\n  \"pooja</w>\": 35676,\n  \"pool\": 12484,\n  \"pool</w>\": 2831,\n  \"poole</w>\": 26290,\n  \"pools</w>\": 18736,\n  \"poolside</w>\": 35509,\n  \"poon\": 33799,\n  \"poon</w>\": 36178,\n  \"poop</w>\": 23310,\n  \"poor\": 14528,\n  \"poor</w>\": 3665,\n  \"poorest</w>\": 40771,\n  \"poorly</w>\": 21101,\n  \"pop\": 6530,\n  \"pop</w>\": 2852,\n  \"popart</w>\": 47425,\n  \"popcorn</w>\": 15034,\n  \"pope\": 16994,\n  \"pope</w>\": 9283,\n  \"popefrancis</w>\": 37254,\n  \"poplar</w>\": 38726,\n  \"popo\": 38835,\n  \"popo</w>\": 35572,\n  \"popp\": 13156,\n  \"popped</w>\": 14934,\n  \"poppies</w>\": 30385,\n  \"poppin</w>\": 28536,\n  \"popping</w>\": 18152,\n  \"poppins</w>\": 41216,\n  \"poppy\": 32194,\n  \"poppy</w>\": 15447,\n  \"pops</w>\": 11705,\n  \"popsic\": 38481,\n  \"popu\": 3785,\n  \"popul\": 6593,\n  \"popular\": 15854,\n  \"popular</w>\": 4368,\n  \"popularity</w>\": 19235,\n  \"populated</w>\": 38420,\n  \"population</w>\": 8423,\n  \"populations</w>\": 23797,\n  \"populism</w>\": 48998,\n  \"populist</w>\": 49376,\n  \"popup</w>\": 33053,\n  \"por\": 817,\n  \"por</w>\": 7697,\n  \"pora</w>\": 23537,\n  \"porcel\": 19409,\n  \"porcelain</w>\": 20451,\n  \"porch</w>\": 17154,\n  \"pore</w>\": 28267,\n  \"pork\": 40379,\n  \"pork</w>\": 7897,\n  \"poro\": 48110,\n  \"porridge</w>\": 34924,\n  \"porsch\": 48009,\n  \"porsche\": 44049,\n  \"porsche</w>\": 8783,\n  \"port\": 1641,\n  \"port</w>\": 1418,\n  \"porta</w>\": 45037,\n  \"portable</w>\": 11949,\n  \"portage</w>\": 32087,\n  \"portal</w>\": 14982,\n  \"porte</w>\": 28654,\n  \"ported</w>\": 16879,\n  \"porter\": 28319,\n  \"porter</w>\": 10318,\n  \"porters</w>\": 15670,\n  \"portfoli\": 45766,\n  \"portfolio</w>\": 11938,\n  \"porth\": 37425,\n  \"porti\": 45760,\n  \"porting</w>\": 26052,\n  \"portion</w>\": 13739,\n  \"portions</w>\": 22914,\n  \"portland\": 38366,\n  \"portland</w>\": 8880,\n  \"portman</w>\": 34755,\n  \"porto\": 24853,\n  \"porto</w>\": 18947,\n  \"portobello</w>\": 48025,\n  \"portra\": 4175,\n  \"portrait\": 39312,\n  \"portrait</w>\": 5352,\n  \"portraits</w>\": 14203,\n  \"portray</w>\": 46282,\n  \"portrayal</w>\": 39238,\n  \"portrayed</w>\": 36093,\n  \"ports</w>\": 7734,\n  \"portsm\": 17063,\n  \"portsmouth</w>\": 19074,\n  \"portu\": 7159,\n  \"portugal</w>\": 9503,\n  \"portugue\": 17498,\n  \"portuguese</w>\": 18019,\n  \"pos\": 1780,\n  \"pos</w>\": 11839,\n  \"pose\": 25478,\n  \"pose</w>\": 4230,\n  \"posed</w>\": 5206,\n  \"posei\": 47270,\n  \"poser</w>\": 46899,\n  \"poses</w>\": 9773,\n  \"posey</w>\": 34852,\n  \"posh</w>\": 26748,\n  \"posing</w>\": 10518,\n  \"posit\": 28793,\n  \"positi\": 7895,\n  \"position</w>\": 4657,\n  \"positioned</w>\": 34482,\n  \"positioning</w>\": 30657,\n  \"positions</w>\": 12188,\n  \"positive\": 21811,\n  \"positive</w>\": 4844,\n  \"positively</w>\": 24688,\n  \"positivity</w>\": 19966,\n  \"poss</w>\": 39745,\n  \"posse\": 17414,\n  \"posse</w>\": 28413,\n  \"possess</w>\": 36810,\n  \"possessed</w>\": 36220,\n  \"possession</w>\": 16154,\n  \"possessions</w>\": 40588,\n  \"possi\": 2521,\n  \"possibilities</w>\": 17932,\n  \"possibility</w>\": 18517,\n  \"possible</w>\": 3134,\n  \"possibly</w>\": 8601,\n  \"possum</w>\": 38575,\n  \"post\": 3489,\n  \"post</w>\": 1549,\n  \"postage</w>\": 27570,\n  \"postal</w>\": 21687,\n  \"postcard</w>\": 14785,\n  \"postcards</w>\": 23922,\n  \"postdoc</w>\": 41013,\n  \"posted</w>\": 4752,\n  \"poster\": 22881,\n  \"poster</w>\": 3574,\n  \"posters</w>\": 9673,\n  \"postgame</w>\": 34873,\n  \"postgraduate</w>\": 31997,\n  \"posthum\": 42410,\n  \"posting</w>\": 7559,\n  \"postman</w>\": 38285,\n  \"postpon\": 23247,\n  \"postponed</w>\": 25097,\n  \"posts</w>\": 7824,\n  \"postseason</w>\": 24521,\n  \"posture</w>\": 29681,\n  \"posure</w>\": 35539,\n  \"pot\": 3547,\n  \"pot</w>\": 5168,\n  \"potam\": 45825,\n  \"potassi\": 36889,\n  \"potassium</w>\": 37147,\n  \"potat\": 5975,\n  \"potato</w>\": 8527,\n  \"potatoes</w>\": 11567,\n  \"potd</w>\": 28765,\n  \"pote</w>\": 41869,\n  \"poten\": 4454,\n  \"potent</w>\": 26082,\n  \"potenti\": 44104,\n  \"potential</w>\": 5100,\n  \"potentially</w>\": 16508,\n  \"potholes</w>\": 47506,\n  \"potion</w>\": 46055,\n  \"potom\": 38848,\n  \"potomac</w>\": 43372,\n  \"pots</w>\": 19234,\n  \"pott\": 28698,\n  \"potted</w>\": 48581,\n  \"potter\": 24975,\n  \"potter</w>\": 9026,\n  \"pottery</w>\": 18396,\n  \"potts</w>\": 39839,\n  \"potty</w>\": 43569,\n  \"potus</w>\": 8740,\n  \"pou\": 9423,\n  \"pouch</w>\": 26811,\n  \"poul\": 22485,\n  \"poultry</w>\": 31005,\n  \"poun\": 33719,\n  \"pound\": 33809,\n  \"pound</w>\": 10674,\n  \"pounding</w>\": 46544,\n  \"pounds</w>\": 10752,\n  \"pour\": 33112,\n  \"pour</w>\": 8180,\n  \"poured</w>\": 26621,\n  \"pouring</w>\": 16098,\n  \"pours</w>\": 26005,\n  \"pout</w>\": 39621,\n  \"poutine</w>\": 43768,\n  \"pov</w>\": 25731,\n  \"pover\": 8432,\n  \"pover</w>\": 29464,\n  \"poverty</w>\": 9095,\n  \"pow\": 1317,\n  \"pow</w>\": 17745,\n  \"powder\": 32427,\n  \"powder</w>\": 9674,\n  \"powe\": 36955,\n  \"powell</w>\": 13305,\n  \"power\": 2789,\n  \"power</w>\": 1807,\n  \"powerball</w>\": 47803,\n  \"powered\": 45442,\n  \"powered</w>\": 7332,\n  \"powerful</w>\": 4875,\n  \"powerhouse</w>\": 22858,\n  \"powering</w>\": 16231,\n  \"powerof\": 31961,\n  \"powerpoint</w>\": 38940,\n  \"powerrangers</w>\": 40620,\n  \"powers</w>\": 9422,\n  \"pox</w>\": 43649,\n  \"poy</w>\": 34737,\n  \"poyn\": 47655,\n  \"poz\": 39953,\n  \"pp\": 604,\n  \"pp</w>\": 4186,\n  \"ppa</w>\": 10416,\n  \"ppard</w>\": 23391,\n  \"ppc</w>\": 27778,\n  \"ppe\": 24573,\n  \"ppe</w>\": 11867,\n  \"pped</w>\": 1873,\n  \"ppel</w>\": 46523,\n  \"ppen</w>\": 30663,\n  \"pper\": 6719,\n  \"pper</w>\": 2440,\n  \"ppers</w>\": 5232,\n  \"ppery</w>\": 27833,\n  \"ppet</w>\": 20744,\n  \"ppets</w>\": 25849,\n  \"ppg</w>\": 27433,\n  \"ppi</w>\": 9594,\n  \"ppie</w>\": 33795,\n  \"ppin</w>\": 8076,\n  \"pping\": 22214,\n  \"pping</w>\": 1682,\n  \"ppings</w>\": 35687,\n  \"ppl</w>\": 6758,\n  \"pple</w>\": 12302,\n  \"ppm</w>\": 42053,\n  \"ppo</w>\": 10215,\n  \"ppor\": 37613,\n  \"ppp</w>\": 14017,\n  \"pps</w>\": 10683,\n  \"ppv</w>\": 38864,\n  \"ppy\": 30360,\n  \"ppy</w>\": 3860,\n  \"pr\": 766,\n  \"pr</w>\": 4150,\n  \"pra\": 1865,\n  \"pra</w>\": 19285,\n  \"prab\": 17901,\n  \"prabhas</w>\": 29959,\n  \"prabhu</w>\": 31529,\n  \"prac\": 2243,\n  \"practi\": 29995,\n  \"practic\": 5495,\n  \"practical</w>\": 10792,\n  \"practically</w>\": 25588,\n  \"practice</w>\": 3349,\n  \"practiced</w>\": 36749,\n  \"practices</w>\": 9040,\n  \"practicing</w>\": 12750,\n  \"practise</w>\": 38938,\n  \"practising</w>\": 36478,\n  \"practiti\": 19909,\n  \"practitioner</w>\": 32591,\n  \"practitioners</w>\": 29045,\n  \"prada</w>\": 29456,\n  \"pradesh</w>\": 15384,\n  \"prado</w>\": 44141,\n  \"prag\": 31025,\n  \"prague</w>\": 14940,\n  \"prairi\": 12629,\n  \"prairie</w>\": 14753,\n  \"praise</w>\": 10013,\n  \"praised</w>\": 27649,\n  \"praises</w>\": 23049,\n  \"praising</w>\": 36961,\n  \"prakash\": 43708,\n  \"prakash</w>\": 25366,\n  \"pram\": 47774,\n  \"pran\": 20048,\n  \"prank</w>\": 23654,\n  \"pras</w>\": 41562,\n  \"prasad</w>\": 29562,\n  \"prat\": 23069,\n  \"prati\": 45773,\n  \"pratt\": 37863,\n  \"pratt</w>\": 23396,\n  \"prawn</w>\": 33102,\n  \"prawns</w>\": 34903,\n  \"pray\": 12671,\n  \"pray</w>\": 6041,\n  \"prayed</w>\": 34665,\n  \"prayer\": 41452,\n  \"prayer</w>\": 6583,\n  \"prayers</w>\": 8393,\n  \"prayfor\": 18443,\n  \"praying</w>\": 11550,\n  \"prays</w>\": 46602,\n  \"prc</w>\": 28781,\n  \"pre\": 679,\n  \"pre</w>\": 2900,\n  \"preach</w>\": 22545,\n  \"preacher</w>\": 29357,\n  \"preaching</w>\": 23642,\n  \"precau\": 36532,\n  \"precautions</w>\": 47845,\n  \"prece\": 15361,\n  \"preci\": 5470,\n  \"precin\": 27908,\n  \"precinct</w>\": 32587,\n  \"precious</w>\": 8226,\n  \"precipit\": 27463,\n  \"precipitation</w>\": 33399,\n  \"precise</w>\": 24457,\n  \"precisely</w>\": 34954,\n  \"precision\": 44021,\n  \"precision</w>\": 15621,\n  \"pred\": 40370,\n  \"predat\": 13364,\n  \"predator</w>\": 20653,\n  \"predators</w>\": 25569,\n  \"prede\": 38454,\n  \"predecess\": 38963,\n  \"predic\": 4876,\n  \"predict</w>\": 16900,\n  \"predictable</w>\": 25344,\n  \"predicted</w>\": 18702,\n  \"predicting</w>\": 30414,\n  \"prediction</w>\": 16296,\n  \"predictions</w>\": 15125,\n  \"predictive</w>\": 29798,\n  \"predicts</w>\": 25960,\n  \"preds</w>\": 40125,\n  \"pree</w>\": 47026,\n  \"preet</w>\": 30131,\n  \"prefe\": 14542,\n  \"prefecture</w>\": 32890,\n  \"prefer\": 33426,\n  \"prefer</w>\": 11450,\n  \"preference</w>\": 35057,\n  \"preferences</w>\": 38118,\n  \"preferred</w>\": 18772,\n  \"prefers</w>\": 38528,\n  \"pregame</w>\": 18575,\n  \"pregn\": 7190,\n  \"pregnancy</w>\": 12769,\n  \"pregnant</w>\": 11195,\n  \"prehistoric</w>\": 32750,\n  \"prejudice</w>\": 28337,\n  \"preli\": 15523,\n  \"prelimin\": 19990,\n  \"preliminary</w>\": 20997,\n  \"prelims</w>\": 43223,\n  \"prelude</w>\": 42966,\n  \"prem\": 32090,\n  \"prem</w>\": 21724,\n  \"premature</w>\": 39253,\n  \"premi\": 2413,\n  \"premier\": 16996,\n  \"premier</w>\": 5539,\n  \"premiere</w>\": 5367,\n  \"premiered</w>\": 27652,\n  \"premieres</w>\": 19907,\n  \"premiering</w>\": 32615,\n  \"premierleague</w>\": 22608,\n  \"premiers</w>\": 44883,\n  \"premiership</w>\": 23665,\n  \"premiosm\": 38460,\n  \"premiosmtvmiaw</w>\": 38630,\n  \"premise</w>\": 45952,\n  \"premises</w>\": 27266,\n  \"premium</w>\": 8011,\n  \"pren\": 20801,\n  \"preneur</w>\": 46288,\n  \"preorder</w>\": 16703,\n  \"preorders</w>\": 45985,\n  \"prep\": 6430,\n  \"prep</w>\": 7277,\n  \"prepa\": 26270,\n  \"prepaid</w>\": 42934,\n  \"prepar\": 4968,\n  \"preparation</w>\": 11651,\n  \"preparations</w>\": 19135,\n  \"prepare</w>\": 7014,\n  \"prepared</w>\": 7677,\n  \"preparedness</w>\": 29492,\n  \"prepares</w>\": 16375,\n  \"preparing</w>\": 7365,\n  \"prepped</w>\": 34379,\n  \"prepping</w>\": 16459,\n  \"preps</w>\": 14765,\n  \"prequel</w>\": 40461,\n  \"pres\": 1385,\n  \"pres</w>\": 8529,\n  \"presale</w>\": 27135,\n  \"presby\": 30447,\n  \"presbyter\": 33959,\n  \"presbyterian</w>\": 35370,\n  \"preschool</w>\": 24354,\n  \"prescott</w>\": 29392,\n  \"prescri\": 14851,\n  \"prescribed</w>\": 36968,\n  \"prescription</w>\": 23061,\n  \"preseason</w>\": 13813,\n  \"presen\": 16742,\n  \"presence</w>\": 8848,\n  \"present\": 2344,\n  \"present</w>\": 2881,\n  \"presentation</w>\": 4594,\n  \"presentations</w>\": 16998,\n  \"presented</w>\": 4587,\n  \"presenter</w>\": 18587,\n  \"presenters</w>\": 32759,\n  \"presenting</w>\": 5339,\n  \"presents</w>\": 4215,\n  \"preserv\": 17616,\n  \"preservation</w>\": 21074,\n  \"preserve</w>\": 15570,\n  \"preserved</w>\": 23161,\n  \"preserves</w>\": 44881,\n  \"preserving</w>\": 32315,\n  \"presi\": 1697,\n  \"presiden\": 43374,\n  \"presidency</w>\": 18077,\n  \"president\": 19900,\n  \"president</w>\": 1940,\n  \"presidente</w>\": 47363,\n  \"presidenti\": 48297,\n  \"presidential</w>\": 8503,\n  \"presidents</w>\": 16726,\n  \"presiding</w>\": 45298,\n  \"presley</w>\": 30013,\n  \"press\": 4124,\n  \"press</w>\": 2124,\n  \"pressed</w>\": 20080,\n  \"presser</w>\": 27826,\n  \"presses</w>\": 33748,\n  \"pressing</w>\": 20893,\n  \"pressure</w>\": 6083,\n  \"pressures</w>\": 38487,\n  \"prest\": 41840,\n  \"presti\": 12245,\n  \"prestige</w>\": 29328,\n  \"prestigious</w>\": 15888,\n  \"presto</w>\": 42211,\n  \"preston\": 37335,\n  \"preston</w>\": 15179,\n  \"presu\": 21667,\n  \"presumably</w>\": 42562,\n  \"pret\": 9652,\n  \"preten\": 15871,\n  \"pretend</w>\": 18111,\n  \"pretending</w>\": 21306,\n  \"pretoria</w>\": 36080,\n  \"prett\": 46667,\n  \"prettier</w>\": 31745,\n  \"prettiest</w>\": 22866,\n  \"pretty\": 18286,\n  \"pretty</w>\": 2111,\n  \"pretz\": 24890,\n  \"pretzel</w>\": 36707,\n  \"pretzels</w>\": 45468,\n  \"prev\": 20274,\n  \"prevail</w>\": 31637,\n  \"prevalence</w>\": 41729,\n  \"prevalent</w>\": 46260,\n  \"preven\": 29382,\n  \"prevent\": 26436,\n  \"prevent</w>\": 7968,\n  \"preventable</w>\": 44250,\n  \"prevented</w>\": 35356,\n  \"preventing</w>\": 21756,\n  \"prevention</w>\": 9500,\n  \"preventive</w>\": 40949,\n  \"prevents</w>\": 31746,\n  \"preview</w>\": 4449,\n  \"previews</w>\": 20279,\n  \"previous</w>\": 9252,\n  \"previously</w>\": 13359,\n  \"prey</w>\": 17131,\n  \"prez</w>\": 17956,\n  \"pri\": 955,\n  \"pri</w>\": 23400,\n  \"pric\": 24275,\n  \"price\": 13254,\n  \"price</w>\": 2827,\n  \"priced</w>\": 16934,\n  \"priceless</w>\": 15743,\n  \"prices</w>\": 5954,\n  \"pricing</w>\": 14800,\n  \"prick\": 43921,\n  \"prick</w>\": 46516,\n  \"pride\": 15323,\n  \"pride</w>\": 3436,\n  \"pridemonth</w>\": 41410,\n  \"prie\": 22477,\n  \"priest\": 38756,\n  \"priest</w>\": 14222,\n  \"priests</w>\": 30005,\n  \"prim\": 22004,\n  \"prima\": 35611,\n  \"prima</w>\": 33277,\n  \"primal</w>\": 36604,\n  \"primar\": 21579,\n  \"primaries</w>\": 46126,\n  \"primarily</w>\": 29465,\n  \"primark</w>\": 48329,\n  \"primary\": 35024,\n  \"primary</w>\": 5814,\n  \"primavera</w>\": 44899,\n  \"prime\": 14162,\n  \"prime</w>\": 5183,\n  \"primed</w>\": 45694,\n  \"primer</w>\": 22388,\n  \"primetime</w>\": 29763,\n  \"primitive</w>\": 37467,\n  \"primo</w>\": 43215,\n  \"primrose</w>\": 45891,\n  \"prin\": 1588,\n  \"prince\": 9457,\n  \"prince</w>\": 4735,\n  \"princes\": 45329,\n  \"princes</w>\": 30136,\n  \"princess\": 24123,\n  \"princess</w>\": 5079,\n  \"princesses</w>\": 34161,\n  \"princeton</w>\": 22433,\n  \"princi\": 5129,\n  \"principal\": 33599,\n  \"principal</w>\": 8860,\n  \"principals</w>\": 27524,\n  \"principle</w>\": 19595,\n  \"principles</w>\": 13755,\n  \"print\": 17851,\n  \"print</w>\": 3557,\n  \"printable</w>\": 29648,\n  \"printed</w>\": 7978,\n  \"printer</w>\": 14521,\n  \"printers</w>\": 27881,\n  \"printing</w>\": 7369,\n  \"printmaking</w>\": 38669,\n  \"prints</w>\": 7704,\n  \"prior\": 20328,\n  \"prior</w>\": 10572,\n  \"priorit\": 47773,\n  \"prioriti\": 28822,\n  \"priorities</w>\": 15232,\n  \"prioritize</w>\": 46715,\n  \"priority</w>\": 12451,\n  \"priory</w>\": 38665,\n  \"prisc\": 32468,\n  \"priscilla</w>\": 42396,\n  \"prise</w>\": 23343,\n  \"prism\": 49311,\n  \"prism</w>\": 34356,\n  \"prison\": 9281,\n  \"prison</w>\": 6622,\n  \"prisoner</w>\": 21427,\n  \"prisoners</w>\": 17460,\n  \"prisons</w>\": 26607,\n  \"pristine</w>\": 30618,\n  \"prit\": 41668,\n  \"prit</w>\": 37523,\n  \"prith\": 39173,\n  \"prius</w>\": 43561,\n  \"priv\": 3270,\n  \"privacy</w>\": 10437,\n  \"private\": 20362,\n  \"private</w>\": 4439,\n  \"privately</w>\": 32970,\n  \"privati\": 27379,\n  \"privi\": 8367,\n  \"privileg\": 18015,\n  \"privilege</w>\": 11537,\n  \"privileged</w>\": 18166,\n  \"prix</w>\": 10875,\n  \"priya</w>\": 31275,\n  \"priyan\": 16488,\n  \"priyanka</w>\": 31959,\n  \"priyankach\": 30030,\n  \"priyankachopra</w>\": 30264,\n  \"prize\": 48222,\n  \"prize</w>\": 4521,\n  \"prized</w>\": 38769,\n  \"prizes</w>\": 9268,\n  \"prk</w>\": 37094,\n  \"pro\": 644,\n  \"pro</w>\": 2630,\n  \"proactive</w>\": 33364,\n  \"prob\": 17706,\n  \"prob</w>\": 24007,\n  \"probab\": 3907,\n  \"probability</w>\": 32637,\n  \"probable</w>\": 42444,\n  \"probably</w>\": 4047,\n  \"probation</w>\": 36531,\n  \"probe</w>\": 14359,\n  \"probes</w>\": 48564,\n  \"probiotics</w>\": 49395,\n  \"proble\": 2719,\n  \"problem</w>\": 4324,\n  \"problematic</w>\": 33767,\n  \"problems</w>\": 4671,\n  \"probs</w>\": 16330,\n  \"probz</w>\": 34243,\n  \"proc\": 38417,\n  \"proce\": 4076,\n  \"procedu\": 18204,\n  \"procedural</w>\": 48177,\n  \"procedure</w>\": 20163,\n  \"procedures</w>\": 21109,\n  \"proceed\": 26664,\n  \"proceed</w>\": 33894,\n  \"proceedings</w>\": 26953,\n  \"proceeds</w>\": 11882,\n  \"process\": 17291,\n  \"process</w>\": 4078,\n  \"processed</w>\": 23816,\n  \"processes</w>\": 15169,\n  \"processing</w>\": 11737,\n  \"procession</w>\": 26288,\n  \"processor</w>\": 22838,\n  \"processors</w>\": 43634,\n  \"proclaimed</w>\": 34489,\n  \"proclamation</w>\": 32065,\n  \"procra\": 25361,\n  \"procrastin\": 25586,\n  \"procrastination</w>\": 42825,\n  \"procreate</w>\": 39336,\n  \"proctor</w>\": 47204,\n  \"procu\": 21001,\n  \"procurement</w>\": 23733,\n  \"prod\": 44349,\n  \"prod</w>\": 11991,\n  \"prodi\": 27759,\n  \"prodigy</w>\": 31973,\n  \"produ\": 27852,\n  \"produc\": 1471,\n  \"produce</w>\": 7529,\n  \"produced</w>\": 7479,\n  \"producer</w>\": 7064,\n  \"producers</w>\": 13883,\n  \"produces</w>\": 19940,\n  \"producing</w>\": 13579,\n  \"product\": 32602,\n  \"product</w>\": 4306,\n  \"production</w>\": 4146,\n  \"productions</w>\": 14166,\n  \"productive</w>\": 9697,\n  \"productivity</w>\": 12800,\n  \"products</w>\": 3964,\n  \"prof\": 15043,\n  \"prof</w>\": 5488,\n  \"profe\": 2611,\n  \"profess\": 5486,\n  \"professi\": 3705,\n  \"profession\": 8104,\n  \"profession</w>\": 19671,\n  \"professional\": 46007,\n  \"professional</w>\": 4774,\n  \"professionalism</w>\": 41252,\n  \"professionally</w>\": 33892,\n  \"professionals</w>\": 10165,\n  \"professor\": 47302,\n  \"professor</w>\": 6092,\n  \"professors</w>\": 27758,\n  \"profici\": 34685,\n  \"profile\": 14291,\n  \"profile</w>\": 6444,\n  \"profiles</w>\": 22070,\n  \"profiling</w>\": 37123,\n  \"profit\": 16941,\n  \"profit</w>\": 7909,\n  \"profitable</w>\": 25465,\n  \"profits</w>\": 13410,\n  \"profound\": 48245,\n  \"profound</w>\": 22998,\n  \"profs</w>\": 19260,\n  \"prog</w>\": 22219,\n  \"progno\": 46070,\n  \"program\": 4162,\n  \"program</w>\": 2737,\n  \"programme</w>\": 6322,\n  \"programmer</w>\": 37001,\n  \"programmes</w>\": 20468,\n  \"programming</w>\": 10831,\n  \"programs</w>\": 7345,\n  \"progre\": 7069,\n  \"progress</w>\": 4421,\n  \"progressi\": 23297,\n  \"progressing</w>\": 32346,\n  \"progression</w>\": 24772,\n  \"progressive</w>\": 12208,\n  \"progressives</w>\": 41709,\n  \"prohi\": 41124,\n  \"prohib\": 45040,\n  \"prohibition</w>\": 34440,\n  \"proj</w>\": 39156,\n  \"proje\": 48345,\n  \"projec\": 1610,\n  \"project\": 15911,\n  \"project</w>\": 1965,\n  \"projected</w>\": 22873,\n  \"projection</w>\": 22384,\n  \"projections</w>\": 34638,\n  \"projector</w>\": 27816,\n  \"projects</w>\": 5090,\n  \"proli\": 19710,\n  \"prolife</w>\": 32126,\n  \"prolifer\": 39018,\n  \"prolific</w>\": 27839,\n  \"prolly</w>\": 45968,\n  \"prolon\": 35379,\n  \"prolonged</w>\": 41972,\n  \"prom\": 40363,\n  \"prom</w>\": 7944,\n  \"prome\": 34355,\n  \"promen\": 33578,\n  \"promenade</w>\": 35522,\n  \"promethe\": 44183,\n  \"promin\": 35217,\n  \"prominent</w>\": 19172,\n  \"promis\": 3963,\n  \"promise</w>\": 6745,\n  \"promised</w>\": 11516,\n  \"promises</w>\": 12064,\n  \"promising</w>\": 14183,\n  \"promo\": 3037,\n  \"promo</w>\": 6755,\n  \"promos</w>\": 35044,\n  \"promote\": 47384,\n  \"promote</w>\": 8003,\n  \"promoted</w>\": 16395,\n  \"promoter</w>\": 33081,\n  \"promotes</w>\": 20169,\n  \"promoting</w>\": 9695,\n  \"promotion</w>\": 9259,\n  \"promotional</w>\": 17619,\n  \"promotions</w>\": 19142,\n  \"promp\": 11671,\n  \"prompt</w>\": 20198,\n  \"prompted</w>\": 45746,\n  \"prompts</w>\": 33490,\n  \"proms</w>\": 37759,\n  \"pron\": 13285,\n  \"prone</w>\": 30964,\n  \"pronoun\": 23022,\n  \"pronounce</w>\": 40489,\n  \"pronounced</w>\": 34109,\n  \"pronto</w>\": 44296,\n  \"proof\": 17020,\n  \"proof</w>\": 5248,\n  \"proofing</w>\": 35679,\n  \"proofs</w>\": 41023,\n  \"prop\": 19123,\n  \"prop</w>\": 16254,\n  \"propag\": 12151,\n  \"propaganda</w>\": 14718,\n  \"propane</w>\": 45546,\n  \"propel</w>\": 48439,\n  \"propeller</w>\": 47404,\n  \"proper\": 3577,\n  \"proper</w>\": 8205,\n  \"properly</w>\": 12560,\n  \"properties</w>\": 10922,\n  \"property\": 26486,\n  \"property</w>\": 5043,\n  \"prophe\": 9662,\n  \"prophecy</w>\": 32501,\n  \"prophet</w>\": 15549,\n  \"prophetic</w>\": 47476,\n  \"prophets</w>\": 39441,\n  \"propor\": 35016,\n  \"proportion</w>\": 35775,\n  \"proportions</w>\": 39391,\n  \"propos\": 9455,\n  \"proposal</w>\": 12139,\n  \"proposals</w>\": 20568,\n  \"propose</w>\": 28471,\n  \"proposed</w>\": 10615,\n  \"proposes</w>\": 27133,\n  \"proposing</w>\": 42631,\n  \"proposition</w>\": 44780,\n  \"propri\": 28243,\n  \"props</w>\": 15249,\n  \"propulsion</w>\": 49380,\n  \"pros\": 33925,\n  \"pros</w>\": 14147,\n  \"prosciutto</w>\": 46565,\n  \"prose\": 47063,\n  \"prose</w>\": 28675,\n  \"prosecco</w>\": 28839,\n  \"prosecu\": 12136,\n  \"prosecution</w>\": 30902,\n  \"prosecutor</w>\": 23736,\n  \"prosecutors</w>\": 31656,\n  \"prosp\": 24242,\n  \"prospec\": 12693,\n  \"prospect</w>\": 11211,\n  \"prospective</w>\": 28034,\n  \"prospects</w>\": 15372,\n  \"prosper\": 16121,\n  \"prosper</w>\": 33526,\n  \"prosperity</w>\": 17203,\n  \"prosperous</w>\": 28252,\n  \"prost</w>\": 47923,\n  \"prostate</w>\": 28808,\n  \"prostatec\": 49064,\n  \"prosthetic</w>\": 44602,\n  \"prostitu\": 37333,\n  \"protag\": 28950,\n  \"protagonist</w>\": 38183,\n  \"prote\": 1845,\n  \"protec\": 5640,\n  \"protect\": 25563,\n  \"protect</w>\": 4817,\n  \"protected</w>\": 12266,\n  \"protecting</w>\": 11710,\n  \"protection</w>\": 6238,\n  \"protections</w>\": 33772,\n  \"protective</w>\": 17028,\n  \"protector</w>\": 20441,\n  \"protectors</w>\": 45039,\n  \"protects</w>\": 21889,\n  \"protein</w>\": 8088,\n  \"proteins</w>\": 28661,\n  \"protest</w>\": 6279,\n  \"protestant</w>\": 46945,\n  \"protested</w>\": 48089,\n  \"protester</w>\": 42073,\n  \"protesters</w>\": 12660,\n  \"protesting</w>\": 18788,\n  \"protestors</w>\": 27822,\n  \"protests</w>\": 12450,\n  \"proto\": 8672,\n  \"proto</w>\": 44958,\n  \"protocol</w>\": 19938,\n  \"protocols</w>\": 39631,\n  \"proton</w>\": 40009,\n  \"prototype</w>\": 16675,\n  \"prototyping</w>\": 42081,\n  \"prou\": 5739,\n  \"proud\": 11080,\n  \"proud</w>\": 1679,\n  \"prouder</w>\": 39585,\n  \"proudest</w>\": 46806,\n  \"proudly</w>\": 11203,\n  \"proudof\": 48184,\n  \"proudtobe\": 35043,\n  \"prov\": 23772,\n  \"prov</w>\": 35021,\n  \"prove</w>\": 10107,\n  \"proved</w>\": 16473,\n  \"proven\": 35405,\n  \"proven</w>\": 14569,\n  \"provence</w>\": 28067,\n  \"prover\": 18312,\n  \"proverb</w>\": 34419,\n  \"proverbs</w>\": 27016,\n  \"proves</w>\": 16119,\n  \"provi\": 2289,\n  \"provide</w>\": 4832,\n  \"provided</w>\": 9046,\n  \"providence</w>\": 19331,\n  \"provider</w>\": 14409,\n  \"providers</w>\": 17120,\n  \"provides</w>\": 7161,\n  \"providing</w>\": 7250,\n  \"provin\": 12074,\n  \"province</w>\": 8978,\n  \"provinces</w>\": 35050,\n  \"provincial</w>\": 16002,\n  \"proving</w>\": 18055,\n  \"provision</w>\": 30148,\n  \"provisional</w>\": 36008,\n  \"provisions</w>\": 39269,\n  \"provo\": 15367,\n  \"provoc\": 31618,\n  \"provocative</w>\": 43809,\n  \"provoking</w>\": 25510,\n  \"provost</w>\": 36627,\n  \"prow\": 38737,\n  \"prowrestling</w>\": 39825,\n  \"prox\": 41616,\n  \"proxim\": 31436,\n  \"proximity</w>\": 38298,\n  \"proxy</w>\": 31680,\n  \"prs</w>\": 23879,\n  \"pru\": 12961,\n  \"pruitt</w>\": 39453,\n  \"prun\": 29029,\n  \"pruning</w>\": 48133,\n  \"pry\": 31965,\n  \"pryor</w>\": 43375,\n  \"ps\": 3982,\n  \"ps</w>\": 814,\n  \"psa</w>\": 14031,\n  \"psal\": 13859,\n  \"psalm</w>\": 17995,\n  \"psalms</w>\": 35003,\n  \"psb</w>\": 37017,\n  \"psc</w>\": 43118,\n  \"psd</w>\": 28810,\n  \"pse\": 19737,\n  \"pse</w>\": 5423,\n  \"pseu\": 24919,\n  \"pseudo</w>\": 46618,\n  \"psg</w>\": 17123,\n  \"psi\": 45848,\n  \"psi</w>\": 24533,\n  \"psic\": 29299,\n  \"psis</w>\": 33041,\n  \"psl</w>\": 21373,\n  \"psn</w>\": 36781,\n  \"pso\": 27045,\n  \"pson</w>\": 7487,\n  \"psori\": 44688,\n  \"psp</w>\": 32769,\n  \"pss\": 35718,\n  \"pss</w>\": 42535,\n  \"psst</w>\": 47814,\n  \"pst</w>\": 12692,\n  \"psu\": 41286,\n  \"psu</w>\": 28338,\n  \"psv</w>\": 44530,\n  \"psy\": 3576,\n  \"psy</w>\": 11056,\n  \"psych\": 31041,\n  \"psych</w>\": 20509,\n  \"psyched\": 19932,\n  \"psyched</w>\": 35199,\n  \"psychedelic</w>\": 23292,\n  \"psychi\": 18147,\n  \"psychiatric</w>\": 30578,\n  \"psychiatry</w>\": 39706,\n  \"psychic</w>\": 24916,\n  \"psycho\": 6472,\n  \"psycho</w>\": 22154,\n  \"psychological</w>\": 18153,\n  \"psychologist</w>\": 32827,\n  \"psychology</w>\": 12352,\n  \"psychop\": 30112,\n  \"psychotic</w>\": 48774,\n  \"pt\": 11139,\n  \"pt</w>\": 1459,\n  \"pta</w>\": 11586,\n  \"ptbo</w>\": 40481,\n  \"ptc</w>\": 44646,\n  \"pte</w>\": 47804,\n  \"pter\": 49323,\n  \"pti\": 29375,\n  \"pti</w>\": 10491,\n  \"ptic</w>\": 20670,\n  \"ption</w>\": 3479,\n  \"ptions</w>\": 24963,\n  \"pto\": 31372,\n  \"pto</w>\": 34092,\n  \"pton</w>\": 19780,\n  \"pts</w>\": 5886,\n  \"ptsd</w>\": 23973,\n  \"ptv</w>\": 42402,\n  \"pu\": 755,\n  \"pu</w>\": 11780,\n  \"pub\": 20720,\n  \"pub</w>\": 6301,\n  \"puberty</w>\": 44122,\n  \"pubg</w>\": 31496,\n  \"publ\": 3434,\n  \"publi\": 1617,\n  \"public\": 3592,\n  \"public</w>\": 2122,\n  \"publica</w>\": 49007,\n  \"publication</w>\": 13538,\n  \"publications</w>\": 27334,\n  \"publichealth</w>\": 35872,\n  \"publicity</w>\": 20831,\n  \"publicly</w>\": 18554,\n  \"publish</w>\": 19032,\n  \"published</w>\": 4311,\n  \"publisher</w>\": 20455,\n  \"publishers</w>\": 25222,\n  \"publishes</w>\": 35633,\n  \"publishing</w>\": 10994,\n  \"publix</w>\": 47985,\n  \"pubs</w>\": 21099,\n  \"puc\": 48779,\n  \"puck</w>\": 17550,\n  \"pud\": 39234,\n  \"pudding</w>\": 14025,\n  \"puddle</w>\": 33545,\n  \"pue\": 20161,\n  \"pueblo</w>\": 33076,\n  \"puer\": 8968,\n  \"puerto</w>\": 12289,\n  \"puertor\": 22757,\n  \"puertorico</w>\": 26356,\n  \"puff\": 44477,\n  \"puff</w>\": 17184,\n  \"puffin</w>\": 47632,\n  \"puffs</w>\": 47453,\n  \"puffy</w>\": 49245,\n  \"pug\": 20950,\n  \"pug</w>\": 17739,\n  \"pugchat</w>\": 42266,\n  \"pugh</w>\": 41302,\n  \"puglia</w>\": 38345,\n  \"pugs</w>\": 39425,\n  \"puj\": 46163,\n  \"puja</w>\": 33753,\n  \"puk</w>\": 31811,\n  \"pul\": 2469,\n  \"pul</w>\": 40512,\n  \"pula\": 45856,\n  \"puli</w>\": 47293,\n  \"pulit\": 27745,\n  \"pulitzer</w>\": 31419,\n  \"pull\": 20155,\n  \"pull</w>\": 6857,\n  \"pulled</w>\": 8525,\n  \"pulling</w>\": 12897,\n  \"pullman</w>\": 40203,\n  \"pullover</w>\": 44020,\n  \"pulls</w>\": 16041,\n  \"pulmon\": 32613,\n  \"pulmonary</w>\": 39132,\n  \"pulp</w>\": 25410,\n  \"pulse\": 40091,\n  \"pulse</w>\": 12485,\n  \"pulses</w>\": 42177,\n  \"pulsion</w>\": 35398,\n  \"pum\": 37497,\n  \"puma</w>\": 20858,\n  \"pump\": 5179,\n  \"pump</w>\": 9173,\n  \"pumped</w>\": 12796,\n  \"pumping</w>\": 25150,\n  \"pumpkin\": 36386,\n  \"pumpkin</w>\": 8842,\n  \"pumpkins</w>\": 23787,\n  \"pumps</w>\": 18540,\n  \"pun\": 2707,\n  \"pun</w>\": 19929,\n  \"punc\": 43907,\n  \"punch\": 29332,\n  \"punch</w>\": 10730,\n  \"punched</w>\": 31689,\n  \"punches</w>\": 35279,\n  \"punching</w>\": 33468,\n  \"punctu\": 31565,\n  \"punctuation</w>\": 47051,\n  \"pundit</w>\": 41466,\n  \"pune\": 32593,\n  \"pune</w>\": 14488,\n  \"pung</w>\": 45420,\n  \"puni\": 11479,\n  \"punish</w>\": 34569,\n  \"punished</w>\": 31598,\n  \"punisher</w>\": 38509,\n  \"punishment</w>\": 19099,\n  \"punjab\": 19405,\n  \"punjab</w>\": 12883,\n  \"punjabi</w>\": 25430,\n  \"punk\": 28933,\n  \"punk</w>\": 7246,\n  \"punks</w>\": 47171,\n  \"puns</w>\": 35231,\n  \"punt</w>\": 32699,\n  \"punta</w>\": 34112,\n  \"punter</w>\": 47092,\n  \"pup\": 11926,\n  \"pup</w>\": 11302,\n  \"pupil</w>\": 27265,\n  \"pupils</w>\": 13628,\n  \"pupp\": 7116,\n  \"puppet</w>\": 18439,\n  \"puppets</w>\": 28475,\n  \"puppies</w>\": 14820,\n  \"puppy\": 25431,\n  \"puppy</w>\": 6829,\n  \"puppylove</w>\": 40849,\n  \"pups</w>\": 20778,\n  \"pur\": 1727,\n  \"pur</w>\": 6265,\n  \"pura</w>\": 25596,\n  \"puram</w>\": 46174,\n  \"purcell</w>\": 46065,\n  \"purch\": 8384,\n  \"purchase</w>\": 5481,\n  \"purchased</w>\": 13399,\n  \"purchases</w>\": 21887,\n  \"purchasing</w>\": 20718,\n  \"purdu\": 40691,\n  \"purdue</w>\": 22280,\n  \"pure\": 14202,\n  \"pure</w>\": 5979,\n  \"puree</w>\": 45474,\n  \"purely</w>\": 32459,\n  \"puremichigan</w>\": 39783,\n  \"purest</w>\": 45497,\n  \"purge</w>\": 33514,\n  \"puri\": 16910,\n  \"puri</w>\": 21974,\n  \"purification</w>\": 47724,\n  \"purity</w>\": 29780,\n  \"purple\": 17837,\n  \"purple</w>\": 5496,\n  \"purpose\": 33492,\n  \"purpose</w>\": 7391,\n  \"purposes</w>\": 22020,\n  \"purr\": 49262,\n  \"purr</w>\": 46343,\n  \"purse</w>\": 16480,\n  \"pursue</w>\": 19463,\n  \"pursuing</w>\": 26424,\n  \"pursuit</w>\": 16469,\n  \"purÃ©e</w>\": 40981,\n  \"pus</w>\": 13841,\n  \"pusa</w>\": 40825,\n  \"push\": 16028,\n  \"push</w>\": 6831,\n  \"pushaw\": 35407,\n  \"pushaward\": 35448,\n  \"pushawards\": 47184,\n  \"pushed</w>\": 16155,\n  \"pushes</w>\": 23828,\n  \"pushing</w>\": 11549,\n  \"put\": 29535,\n  \"put</w>\": 1983,\n  \"putin</w>\": 10693,\n  \"putnam</w>\": 40235,\n  \"puts</w>\": 7898,\n  \"putt</w>\": 30279,\n  \"putter</w>\": 44723,\n  \"putting</w>\": 5154,\n  \"puzz\": 19760,\n  \"puzzle</w>\": 12875,\n  \"puzzles</w>\": 27986,\n  \"pv\": 14517,\n  \"pv</w>\": 13495,\n  \"pvc</w>\": 26959,\n  \"pvp</w>\": 44172,\n  \"pvt</w>\": 29898,\n  \"pw\": 19419,\n  \"pw</w>\": 16067,\n  \"pwc</w>\": 22965,\n  \"px\": 24790,\n  \"px</w>\": 10262,\n  \"pxrtg</w>\": 36262,\n  \"py\": 4005,\n  \"py</w>\": 7504,\n  \"pye\": 31099,\n  \"pyeongchang</w>\": 36066,\n  \"pyg\": 41450,\n  \"pyram\": 14405,\n  \"pyramid</w>\": 18725,\n  \"pyramids</w>\": 36877,\n  \"pyrene\": 36740,\n  \"pyrenees</w>\": 39744,\n  \"pyro\": 39762,\n  \"python</w>\": 13370,\n  \"pz</w>\": 48361,\n  \"pÃ©\": 43167,\n  \"q\": 80,\n  \"q</w>\": 336,\n  \"qa\": 24944,\n  \"qa</w>\": 16360,\n  \"qad\": 27844,\n  \"qadri</w>\": 35672,\n  \"qaeda</w>\": 31246,\n  \"qanda</w>\": 48672,\n  \"qanon</w>\": 19182,\n  \"qant\": 35404,\n  \"qantas</w>\": 43250,\n  \"qatar\": 32804,\n  \"qatar</w>\": 10872,\n  \"qb</w>\": 8073,\n  \"qbs</w>\": 38188,\n  \"qc</w>\": 17406,\n  \"qe</w>\": 30974,\n  \"qf</w>\": 27215,\n  \"qi\": 25054,\n  \"qi</w>\": 11256,\n  \"qing\": 46522,\n  \"qing</w>\": 34339,\n  \"ql</w>\": 28366,\n  \"qld\": 23039,\n  \"qld</w>\": 13765,\n  \"qldpol</w>\": 42296,\n  \"qm</w>\": 42148,\n  \"qotd</w>\": 24504,\n  \"qpr</w>\": 24788,\n  \"qq\": 31960,\n  \"qr</w>\": 18193,\n  \"qs</w>\": 14364,\n  \"qt</w>\": 15013,\n  \"qtr</w>\": 44803,\n  \"qu\": 666,\n  \"qu</w>\": 28646,\n  \"qua</w>\": 20363,\n  \"quack</w>\": 45575,\n  \"quad\": 11656,\n  \"quad</w>\": 13419,\n  \"quadcopter</w>\": 39792,\n  \"quadru\": 35831,\n  \"quaid</w>\": 34265,\n  \"quail</w>\": 34392,\n  \"quaint</w>\": 45976,\n  \"quake</w>\": 8421,\n  \"quaker</w>\": 43395,\n  \"quakes</w>\": 24572,\n  \"qual\": 9979,\n  \"qual</w>\": 32405,\n  \"qualcomm</w>\": 38683,\n  \"quali\": 4574,\n  \"qualification</w>\": 21508,\n  \"qualifications</w>\": 35225,\n  \"qualified</w>\": 11927,\n  \"qualifier</w>\": 18733,\n  \"qualifiers</w>\": 21388,\n  \"qualifies</w>\": 35820,\n  \"qualify</w>\": 17019,\n  \"qualifying</w>\": 11895,\n  \"qualitative</w>\": 45847,\n  \"qualities</w>\": 20488,\n  \"quality\": 28545,\n  \"quality</w>\": 3027,\n  \"quan\": 11669,\n  \"quan</w>\": 27490,\n  \"quand</w>\": 28198,\n  \"quant\": 15050,\n  \"quanti\": 31540,\n  \"quantitative</w>\": 40583,\n  \"quantities</w>\": 33917,\n  \"quantity</w>\": 26920,\n  \"quantum</w>\": 15320,\n  \"quar\": 3856,\n  \"quare</w>\": 42549,\n  \"quarry</w>\": 27601,\n  \"quart\": 7851,\n  \"quarter\": 8816,\n  \"quarter</w>\": 6632,\n  \"quarterback</w>\": 16545,\n  \"quarterfinal</w>\": 37992,\n  \"quarterfinals</w>\": 28971,\n  \"quarterly</w>\": 23350,\n  \"quarters</w>\": 10146,\n  \"quartet</w>\": 18056,\n  \"quartz</w>\": 17752,\n  \"quat\": 25715,\n  \"quattro</w>\": 40300,\n  \"quay\": 40276,\n  \"quay</w>\": 17304,\n  \"que\": 1147,\n  \"que</w>\": 2319,\n  \"quebec</w>\": 15373,\n  \"queen\": 6407,\n  \"queen</w>\": 2997,\n  \"queenof\": 44398,\n  \"queens\": 22943,\n  \"queens</w>\": 9330,\n  \"queensland</w>\": 15168,\n  \"queer\": 38874,\n  \"queer</w>\": 18161,\n  \"quel\": 39774,\n  \"quel</w>\": 21879,\n  \"quen\": 23876,\n  \"quen</w>\": 38324,\n  \"quent\": 23808,\n  \"quentin</w>\": 27530,\n  \"quer\": 17378,\n  \"quer</w>\": 26859,\n  \"quered</w>\": 23210,\n  \"queries</w>\": 32958,\n  \"querque</w>\": 30338,\n  \"query</w>\": 27464,\n  \"ques\": 25328,\n  \"ques</w>\": 7715,\n  \"queso</w>\": 40110,\n  \"quest\": 31653,\n  \"quest</w>\": 4846,\n  \"questi\": 2391,\n  \"question\": 18961,\n  \"question</w>\": 4382,\n  \"questionable</w>\": 30733,\n  \"questioned</w>\": 31847,\n  \"questioning</w>\": 24887,\n  \"questions</w>\": 3883,\n  \"quests</w>\": 44611,\n  \"quet</w>\": 8513,\n  \"quets</w>\": 39055,\n  \"quetta</w>\": 38326,\n  \"quette</w>\": 18993,\n  \"queu\": 32705,\n  \"queue</w>\": 18549,\n  \"queues</w>\": 40649,\n  \"queuing</w>\": 44082,\n  \"quez</w>\": 18677,\n  \"quezon</w>\": 41117,\n  \"qui\": 1912,\n  \"qui</w>\": 18046,\n  \"quic\": 26474,\n  \"quiche</w>\": 47723,\n  \"quick\": 5969,\n  \"quick</w>\": 3712,\n  \"quicker</w>\": 29211,\n  \"quickest</w>\": 37734,\n  \"quickly</w>\": 7787,\n  \"quid</w>\": 30732,\n  \"quie\": 43875,\n  \"quien</w>\": 43482,\n  \"quiere</w>\": 42723,\n  \"quiero</w>\": 32567,\n  \"quiet\": 17853,\n  \"quiet</w>\": 7557,\n  \"quietly</w>\": 22208,\n  \"quig\": 44690,\n  \"quil\": 12305,\n  \"quill</w>\": 48951,\n  \"quilt</w>\": 23977,\n  \"quilted</w>\": 46052,\n  \"quin\": 8607,\n  \"quin</w>\": 17167,\n  \"quincy</w>\": 27640,\n  \"quind\": 32339,\n  \"quinn</w>\": 12306,\n  \"quinoa</w>\": 26703,\n  \"quins</w>\": 39701,\n  \"quint\": 26898,\n  \"quinta</w>\": 47446,\n  \"quinte\": 22098,\n  \"quintess\": 37538,\n  \"quintet</w>\": 35125,\n  \"quipment</w>\": 42813,\n  \"quir\": 15943,\n  \"quirky</w>\": 25044,\n  \"quis\": 15064,\n  \"quist</w>\": 25128,\n  \"quit\": 19358,\n  \"quit</w>\": 11140,\n  \"quite</w>\": 4135,\n  \"quito</w>\": 35828,\n  \"quits</w>\": 32505,\n  \"quitting</w>\": 33871,\n  \"quity</w>\": 33133,\n  \"quiz\": 31197,\n  \"quiz</w>\": 8344,\n  \"quizz\": 35041,\n  \"quo\": 3046,\n  \"quo</w>\": 28127,\n  \"quoi</w>\": 45549,\n  \"quot\": 5452,\n  \"quot</w>\": 47587,\n  \"quota</w>\": 42097,\n  \"quotation</w>\": 49195,\n  \"quote\": 15446,\n  \"quote</w>\": 4020,\n  \"quoted</w>\": 27706,\n  \"quoteoftheday</w>\": 19975,\n  \"quotes</w>\": 5808,\n  \"quoting</w>\": 31651,\n  \"qur</w>\": 37782,\n  \"quran</w>\": 19690,\n  \"qureshi</w>\": 46307,\n  \"qvist</w>\": 42322,\n  \"qx</w>\": 45038,\n  \"r\": 81,\n  \"r</w>\": 337,\n  \"ra\": 559,\n  \"ra</w>\": 1735,\n  \"raa</w>\": 44344,\n  \"rab\": 14816,\n  \"rab</w>\": 33224,\n  \"rabb\": 6875,\n  \"rabbi</w>\": 20959,\n  \"rabbit</w>\": 10274,\n  \"rabbits</w>\": 27028,\n  \"rabhu</w>\": 25806,\n  \"rable</w>\": 10182,\n  \"rac\": 1773,\n  \"rac</w>\": 30462,\n  \"raccoon</w>\": 29516,\n  \"race\": 10978,\n  \"race</w>\": 2471,\n  \"racec\": 18814,\n  \"racecourse</w>\": 25036,\n  \"raced</w>\": 36021,\n  \"racer</w>\": 16798,\n  \"racers</w>\": 33603,\n  \"races</w>\": 8605,\n  \"raceway</w>\": 24650,\n  \"rach\": 6876,\n  \"rach</w>\": 33429,\n  \"racha\": 21952,\n  \"racha</w>\": 35022,\n  \"rachael</w>\": 29095,\n  \"rachel\": 13511,\n  \"rachel</w>\": 8029,\n  \"raci\": 33381,\n  \"racial</w>\": 13801,\n  \"racially</w>\": 43577,\n  \"racing\": 23306,\n  \"racing</w>\": 3699,\n  \"racism</w>\": 11276,\n  \"racist</w>\": 9684,\n  \"racists</w>\": 41777,\n  \"rack\": 24600,\n  \"rack</w>\": 12034,\n  \"racket</w>\": 37691,\n  \"racks</w>\": 21191,\n  \"rad\": 4473,\n  \"rad</w>\": 8238,\n  \"rada</w>\": 30437,\n  \"radar</w>\": 9672,\n  \"radcliffe</w>\": 33096,\n  \"rade\": 44494,\n  \"rade</w>\": 17911,\n  \"rader</w>\": 45002,\n  \"radford</w>\": 45800,\n  \"radha</w>\": 43122,\n  \"radi\": 5772,\n  \"radial</w>\": 42028,\n  \"radiance</w>\": 45670,\n  \"radiant</w>\": 25614,\n  \"radiation</w>\": 18210,\n  \"radiator</w>\": 39372,\n  \"radic\": 18082,\n  \"radical</w>\": 13712,\n  \"radicals</w>\": 45903,\n  \"radio\": 7176,\n  \"radio</w>\": 2638,\n  \"radioactive</w>\": 34704,\n  \"radiodisney</w>\": 36483,\n  \"radiohead</w>\": 39472,\n  \"radiology</w>\": 29684,\n  \"radios</w>\": 43669,\n  \"radish</w>\": 37789,\n  \"radius</w>\": 37570,\n  \"rado</w>\": 29784,\n  \"rae\": 21646,\n  \"rae</w>\": 15051,\n  \"rael</w>\": 45390,\n  \"raer</w>\": 44561,\n  \"raf\": 11495,\n  \"raf</w>\": 11490,\n  \"rafa\": 14352,\n  \"rafa</w>\": 24850,\n  \"rafael\": 38221,\n  \"rafael</w>\": 19216,\n  \"rafaelnadal</w>\": 49219,\n  \"raff\": 34900,\n  \"raffic</w>\": 32928,\n  \"raffle</w>\": 13752,\n  \"raffles</w>\": 43489,\n  \"rafi\": 35304,\n  \"raft</w>\": 9233,\n  \"rafting</w>\": 36309,\n  \"rag\": 13958,\n  \"rag</w>\": 20687,\n  \"rage</w>\": 8593,\n  \"rages</w>\": 34253,\n  \"ragh\": 35642,\n  \"ragha\": 40972,\n  \"raging</w>\": 25015,\n  \"ragn\": 24125,\n  \"ragnar\": 34385,\n  \"ragnarok</w>\": 41856,\n  \"ragon</w>\": 34768,\n  \"rags</w>\": 47838,\n  \"rah\": 12277,\n  \"rah</w>\": 8766,\n  \"raheem</w>\": 43317,\n  \"rahim</w>\": 24152,\n  \"rahman</w>\": 19680,\n  \"rahu\": 13129,\n  \"rahul\": 37239,\n  \"rahul</w>\": 17440,\n  \"rahulg\": 27510,\n  \"rahulgandhi</w>\": 28293,\n  \"rai\": 9165,\n  \"rai</w>\": 9638,\n  \"raid</w>\": 6877,\n  \"raided</w>\": 43417,\n  \"raider\": 27368,\n  \"raider</w>\": 21455,\n  \"raidernation</w>\": 47901,\n  \"raiders</w>\": 11817,\n  \"raids</w>\": 26655,\n  \"rail\": 4573,\n  \"rail</w>\": 6879,\n  \"raila</w>\": 47273,\n  \"railminindia</w>\": 35557,\n  \"railroad</w>\": 17080,\n  \"rails</w>\": 23427,\n  \"railway\": 27614,\n  \"railway</w>\": 7856,\n  \"railwayana</w>\": 46750,\n  \"railways</w>\": 20765,\n  \"raim\": 45785,\n  \"rain\": 3128,\n  \"rain</w>\": 2443,\n  \"raina</w>\": 30564,\n  \"rainbow\": 24562,\n  \"rainbow</w>\": 6286,\n  \"rainbows</w>\": 30483,\n  \"raine\": 49038,\n  \"raine</w>\": 6871,\n  \"rained</w>\": 32310,\n  \"rainf\": 15024,\n  \"rainfall</w>\": 15350,\n  \"rainforest</w>\": 22823,\n  \"rainier</w>\": 37850,\n  \"raining</w>\": 13964,\n  \"rains</w>\": 14272,\n  \"rainy</w>\": 10222,\n  \"rais\": 14729,\n  \"raise\": 24249,\n  \"raise</w>\": 5078,\n  \"raised</w>\": 6027,\n  \"raiser</w>\": 33555,\n  \"raises</w>\": 13297,\n  \"raisethe\": 47109,\n  \"raisin</w>\": 36864,\n  \"raising</w>\": 6883,\n  \"raj\": 5958,\n  \"raj</w>\": 10813,\n  \"raja\": 46069,\n  \"raja</w>\": 19150,\n  \"rajan</w>\": 46595,\n  \"rajas\": 16185,\n  \"rajasthan</w>\": 18017,\n  \"raje\": 21899,\n  \"rajesh</w>\": 43602,\n  \"raji\": 27569,\n  \"rajini\": 29600,\n  \"rajini</w>\": 40622,\n  \"rajinikanth</w>\": 32922,\n  \"rajiv</w>\": 40197,\n  \"rajkumar</w>\": 49304,\n  \"rajput</w>\": 47572,\n  \"raju</w>\": 47029,\n  \"rak\": 13523,\n  \"rak</w>\": 26287,\n  \"rake\": 26825,\n  \"rake</w>\": 32712,\n  \"rakesh</w>\": 41083,\n  \"ral\": 8062,\n  \"ral</w>\": 1406,\n  \"rale\": 14192,\n  \"raleigh</w>\": 18207,\n  \"rall\": 23249,\n  \"rallies</w>\": 25230,\n  \"rally\": 18882,\n  \"rally</w>\": 5041,\n  \"rallying</w>\": 36836,\n  \"ralph\": 25290,\n  \"ralph</w>\": 12234,\n  \"ram\": 1976,\n  \"ram</w>\": 2007,\n  \"rama</w>\": 22112,\n  \"ramad\": 12736,\n  \"ramadan</w>\": 15547,\n  \"ramadhan</w>\": 47415,\n  \"raman</w>\": 39816,\n  \"ramapho\": 43963,\n  \"ramaphosa</w>\": 44993,\n  \"ramatta</w>\": 49112,\n  \"rambo</w>\": 41855,\n  \"ramcharan</w>\": 45275,\n  \"rame</w>\": 47745,\n  \"ramen</w>\": 18892,\n  \"ramesh\": 48640,\n  \"ramesh</w>\": 40186,\n  \"rami</w>\": 43016,\n  \"ramirez</w>\": 23877,\n  \"ramon</w>\": 27958,\n  \"ramone</w>\": 47201,\n  \"ramos</w>\": 21046,\n  \"ramp</w>\": 14271,\n  \"rampage</w>\": 32077,\n  \"rampant</w>\": 41985,\n  \"ramps</w>\": 35257,\n  \"rams</w>\": 10292,\n  \"ramsay</w>\": 26259,\n  \"ramsey</w>\": 19215,\n  \"ran\": 1433,\n  \"ran</w>\": 4031,\n  \"rana</w>\": 22143,\n  \"ranbir</w>\": 40881,\n  \"rance</w>\": 29034,\n  \"ranch\": 43955,\n  \"ranch</w>\": 10659,\n  \"rancho</w>\": 26258,\n  \"rand\": 5628,\n  \"rand</w>\": 18718,\n  \"randall</w>\": 23639,\n  \"rande</w>\": 21469,\n  \"randolph</w>\": 29899,\n  \"random\": 11396,\n  \"random</w>\": 6160,\n  \"randomly</w>\": 17272,\n  \"rands</w>\": 39153,\n  \"randy\": 29479,\n  \"randy</w>\": 13279,\n  \"rane</w>\": 28852,\n  \"rang\": 4043,\n  \"rang</w>\": 24377,\n  \"range\": 13627,\n  \"range</w>\": 3818,\n  \"ranger\": 31472,\n  \"ranger</w>\": 13593,\n  \"rangers</w>\": 7664,\n  \"ranges</w>\": 25685,\n  \"ranging</w>\": 25946,\n  \"rani\": 29264,\n  \"rani</w>\": 22631,\n  \"rank</w>\": 11501,\n  \"ranked</w>\": 8307,\n  \"rankin</w>\": 37539,\n  \"ranking</w>\": 12347,\n  \"rankings</w>\": 12596,\n  \"ranks</w>\": 14469,\n  \"rano</w>\": 18608,\n  \"rans</w>\": 46259,\n  \"ransom\": 28523,\n  \"ransom</w>\": 34646,\n  \"ransomware</w>\": 33815,\n  \"rant\": 46467,\n  \"rant</w>\": 9819,\n  \"rants</w>\": 34014,\n  \"ranveer\": 32402,\n  \"ranveer</w>\": 41482,\n  \"ranveerofficial</w>\": 42116,\n  \"rao</w>\": 16913,\n  \"rap\": 7773,\n  \"rap</w>\": 7348,\n  \"rape\": 46099,\n  \"rape</w>\": 10070,\n  \"raped</w>\": 23700,\n  \"rapha\": 22754,\n  \"raphael</w>\": 30091,\n  \"rapi\": 8610,\n  \"rapid\": 47697,\n  \"rapid</w>\": 12205,\n  \"rapidly</w>\": 16710,\n  \"rapids</w>\": 18848,\n  \"raping</w>\": 44926,\n  \"rapist</w>\": 33360,\n  \"rapp\": 19283,\n  \"rapper</w>\": 11860,\n  \"rappers</w>\": 30315,\n  \"rapping</w>\": 42864,\n  \"raps</w>\": 37887,\n  \"raptor</w>\": 26762,\n  \"raptors</w>\": 17035,\n  \"raq\": 39787,\n  \"raq</w>\": 43312,\n  \"raqqa</w>\": 47074,\n  \"raquel</w>\": 44338,\n  \"rar\": 26819,\n  \"rar</w>\": 24605,\n  \"rard</w>\": 21012,\n  \"rare\": 18992,\n  \"rare</w>\": 3865,\n  \"rarely</w>\": 17315,\n  \"rarest</w>\": 43237,\n  \"rarity</w>\": 45862,\n  \"ras\": 23492,\n  \"ras</w>\": 8224,\n  \"rasc\": 30085,\n  \"rascal</w>\": 43481,\n  \"rash\": 14917,\n  \"rash</w>\": 30608,\n  \"rashad</w>\": 46527,\n  \"rasheed</w>\": 41638,\n  \"rashi\": 19426,\n  \"rashid</w>\": 26757,\n  \"rasp\": 10487,\n  \"raspberries</w>\": 37742,\n  \"raspberry\": 40162,\n  \"raspberry</w>\": 13615,\n  \"raspberrypi</w>\": 43934,\n  \"rass</w>\": 45654,\n  \"rasta</w>\": 47002,\n  \"rat\": 3806,\n  \"rat</w>\": 8985,\n  \"rata</w>\": 28568,\n  \"ratchet</w>\": 25078,\n  \"rate</w>\": 5068,\n  \"rated</w>\": 8183,\n  \"rates</w>\": 6864,\n  \"rath\": 18268,\n  \"rath</w>\": 39772,\n  \"rather</w>\": 5252,\n  \"rati\": 11486,\n  \"rating</w>\": 10567,\n  \"ratings</w>\": 14176,\n  \"ratio</w>\": 15893,\n  \"ration\": 27002,\n  \"ration</w>\": 35662,\n  \"rational</w>\": 33086,\n  \"ratna</w>\": 49078,\n  \"ratri</w>\": 32288,\n  \"rats</w>\": 19043,\n  \"ratt\": 20737,\n  \"ratt</w>\": 34785,\n  \"rattle\": 40824,\n  \"rattle</w>\": 41839,\n  \"rau\": 27744,\n  \"raul</w>\": 30218,\n  \"raun\": 41169,\n  \"rav\": 14367,\n  \"rav</w>\": 23606,\n  \"rave\": 38784,\n  \"rave</w>\": 17601,\n  \"ravel</w>\": 27927,\n  \"raven\": 10269,\n  \"raven</w>\": 16803,\n  \"ravens</w>\": 17946,\n  \"ravi\": 22947,\n  \"ravi</w>\": 19538,\n  \"ravin\": 39099,\n  \"raving</w>\": 45807,\n  \"raviol\": 41104,\n  \"ravioli</w>\": 43460,\n  \"raw\": 10166,\n  \"raw</w>\": 6323,\n  \"rawlings</w>\": 40662,\n  \"rax</w>\": 38520,\n  \"ray\": 5312,\n  \"ray</w>\": 3077,\n  \"raya</w>\": 29991,\n  \"raymond</w>\": 16683,\n  \"rayn\": 47852,\n  \"rayon</w>\": 47900,\n  \"rays</w>\": 11064,\n  \"raz\": 9700,\n  \"raz</w>\": 19087,\n  \"raza</w>\": 37724,\n  \"razer</w>\": 33832,\n  \"razor\": 24934,\n  \"razor</w>\": 21300,\n  \"razz\": 43769,\n  \"rb\": 12740,\n  \"rb</w>\": 7477,\n  \"rbc</w>\": 37500,\n  \"rbi</w>\": 15687,\n  \"rbs</w>\": 29102,\n  \"rc\": 7575,\n  \"rc</w>\": 7457,\n  \"rca</w>\": 33942,\n  \"rcb</w>\": 45240,\n  \"rcmp</w>\": 31489,\n  \"rcn</w>\": 49370,\n  \"rctid</w>\": 49223,\n  \"rd\": 13501,\n  \"rd</w>\": 1973,\n  \"rda</w>\": 45755,\n  \"rdr</w>\": 44364,\n  \"rds</w>\": 32378,\n  \"re\": 515,\n  \"re</w>\": 810,\n  \"rea</w>\": 11521,\n  \"reach\": 4483,\n  \"reach</w>\": 4279,\n  \"reached</w>\": 6878,\n  \"reaches</w>\": 14462,\n  \"reaching</w>\": 11358,\n  \"react\": 36566,\n  \"react</w>\": 15065,\n  \"reacted</w>\": 42515,\n  \"reacting</w>\": 40595,\n  \"reaction</w>\": 7189,\n  \"reactions</w>\": 18438,\n  \"reactive</w>\": 42072,\n  \"reactjs</w>\": 46173,\n  \"reactor</w>\": 32037,\n  \"reacts</w>\": 23115,\n  \"read\": 933,\n  \"read</w>\": 1199,\n  \"reader</w>\": 9884,\n  \"readers</w>\": 10335,\n  \"readiness</w>\": 28131,\n  \"reading\": 17556,\n  \"reading</w>\": 2337,\n  \"readingfc</w>\": 47428,\n  \"readings</w>\": 23361,\n  \"reads</w>\": 6597,\n  \"ready\": 17351,\n  \"ready</w>\": 1112,\n  \"reagan</w>\": 17767,\n  \"real\": 2017,\n  \"real</w>\": 1532,\n  \"realdonaldtrump</w>\": 7025,\n  \"reale\": 5930,\n  \"realest</w>\": 45855,\n  \"realestate\": 32937,\n  \"realestate</w>\": 6569,\n  \"reali\": 4185,\n  \"realis</w>\": 38114,\n  \"realise</w>\": 14773,\n  \"realised</w>\": 17945,\n  \"realising</w>\": 39537,\n  \"realism</w>\": 20024,\n  \"realist</w>\": 30248,\n  \"realistic</w>\": 16157,\n  \"realities</w>\": 32443,\n  \"reality\": 46802,\n  \"reality</w>\": 5004,\n  \"realization</w>\": 40402,\n  \"realize</w>\": 7538,\n  \"realized</w>\": 10489,\n  \"realizes</w>\": 42918,\n  \"realizing</w>\": 23284,\n  \"reall\": 39686,\n  \"really\": 43249,\n  \"really</w>\": 1414,\n  \"realm</w>\": 23083,\n  \"realmadrid</w>\": 27866,\n  \"realms</w>\": 43033,\n  \"realness</w>\": 46761,\n  \"realtime\": 44002,\n  \"realtime</w>\": 38203,\n  \"realtor</w>\": 18038,\n  \"realtors</w>\": 31759,\n  \"realty</w>\": 20471,\n  \"ream\": 37242,\n  \"ream</w>\": 15219,\n  \"rean</w>\": 48477,\n  \"reap</w>\": 31334,\n  \"reaper</w>\": 29922,\n  \"rear\": 39652,\n  \"rear</w>\": 10223,\n  \"reas\": 9121,\n  \"reason\": 12882,\n  \"reason</w>\": 3893,\n  \"reasonable</w>\": 18558,\n  \"reasonably</w>\": 38589,\n  \"reasoning</w>\": 30341,\n  \"reasons</w>\": 5686,\n  \"reau</w>\": 32398,\n  \"reb\": 12370,\n  \"reb</w>\": 18796,\n  \"reba</w>\": 48543,\n  \"rebate</w>\": 43817,\n  \"rebe\": 25227,\n  \"rebec\": 10774,\n  \"rebecca</w>\": 12892,\n  \"rebel\": 8185,\n  \"rebel</w>\": 12248,\n  \"rebellion</w>\": 22170,\n  \"rebels</w>\": 13623,\n  \"rebirth</w>\": 33303,\n  \"reboot</w>\": 22385,\n  \"reborn</w>\": 30229,\n  \"reboun\": 43381,\n  \"rebound</w>\": 31280,\n  \"rebounds</w>\": 19190,\n  \"rebs</w>\": 28164,\n  \"rebu\": 43162,\n  \"rebuild</w>\": 20022,\n  \"rebuilding</w>\": 30880,\n  \"rebuilt</w>\": 33137,\n  \"rec\": 1020,\n  \"rec</w>\": 11243,\n  \"recall</w>\": 15151,\n  \"recalled</w>\": 32142,\n  \"recalling</w>\": 47855,\n  \"recalls</w>\": 24740,\n  \"recap\": 29816,\n  \"recap</w>\": 8337,\n  \"recaps</w>\": 47997,\n  \"recard</w>\": 35536,\n  \"rece\": 1890,\n  \"recei\": 2148,\n  \"receip\": 38503,\n  \"receipt</w>\": 30479,\n  \"receipts</w>\": 41181,\n  \"receive</w>\": 4800,\n  \"received</w>\": 4178,\n  \"receiver</w>\": 17659,\n  \"receivers</w>\": 45294,\n  \"receives</w>\": 10027,\n  \"receiving</w>\": 7252,\n  \"recent</w>\": 3969,\n  \"recently</w>\": 4482,\n  \"recep\": 17450,\n  \"reception</w>\": 8364,\n  \"receptions</w>\": 46881,\n  \"receptor</w>\": 41835,\n  \"recess</w>\": 38182,\n  \"recession</w>\": 27176,\n  \"recharge</w>\": 29396,\n  \"rechargeable</w>\": 37516,\n  \"reci\": 2037,\n  \"recipe\": 28923,\n  \"recipe</w>\": 4614,\n  \"recipeoftheday</w>\": 38727,\n  \"recipes</w>\": 9243,\n  \"recipi\": 10136,\n  \"recipient</w>\": 13703,\n  \"recipients</w>\": 18940,\n  \"recipro\": 41789,\n  \"recital</w>\": 23457,\n  \"recite</w>\": 48824,\n  \"reck\": 11715,\n  \"reckless</w>\": 26284,\n  \"reckon</w>\": 23854,\n  \"recl\": 42277,\n  \"reclaim</w>\": 35969,\n  \"reclaimed</w>\": 32648,\n  \"reco\": 2535,\n  \"reco</w>\": 46038,\n  \"recogn\": 6343,\n  \"recogni\": 5329,\n  \"recognise</w>\": 19824,\n  \"recognised</w>\": 20986,\n  \"recognising</w>\": 48423,\n  \"recognition</w>\": 9415,\n  \"recognizable</w>\": 47240,\n  \"recognize</w>\": 10905,\n  \"recognized</w>\": 9929,\n  \"recognizes</w>\": 26909,\n  \"recognizing</w>\": 19666,\n  \"recomm\": 4540,\n  \"recommend\": 11628,\n  \"recommend</w>\": 8942,\n  \"recommendation</w>\": 20118,\n  \"recommendations</w>\": 16516,\n  \"recommended</w>\": 11100,\n  \"recommending</w>\": 44301,\n  \"recommends</w>\": 22940,\n  \"recon\": 15371,\n  \"recon</w>\": 28996,\n  \"reconciliation</w>\": 26451,\n  \"reconstruction</w>\": 24955,\n  \"recor\": 1723,\n  \"record\": 21328,\n  \"record</w>\": 2717,\n  \"recorded</w>\": 9392,\n  \"recorder</w>\": 26747,\n  \"recording\": 48237,\n  \"recording</w>\": 6942,\n  \"recordings</w>\": 19715,\n  \"records</w>\": 4529,\n  \"recover</w>\": 16785,\n  \"recovered</w>\": 16444,\n  \"recovering</w>\": 19005,\n  \"recovers</w>\": 47935,\n  \"recovery</w>\": 6591,\n  \"recre\": 22148,\n  \"recreate</w>\": 29775,\n  \"recreated</w>\": 40888,\n  \"recreating</w>\": 48224,\n  \"recreation</w>\": 17331,\n  \"recreational</w>\": 24329,\n  \"recru\": 4745,\n  \"recruit\": 9011,\n  \"recruit</w>\": 15585,\n  \"recruited</w>\": 36518,\n  \"recruiter</w>\": 43120,\n  \"recruiters</w>\": 46542,\n  \"recruiting</w>\": 10533,\n  \"recruitment</w>\": 10541,\n  \"recruits</w>\": 22647,\n  \"recs</w>\": 33069,\n  \"rectan\": 43041,\n  \"rectangular</w>\": 43321,\n  \"rector</w>\": 41585,\n  \"recu\": 26798,\n  \"recur\": 19983,\n  \"recurring</w>\": 35912,\n  \"recy\": 6790,\n  \"recycla\": 40659,\n  \"recyclable</w>\": 48907,\n  \"recycle</w>\": 19366,\n  \"recycled</w>\": 16829,\n  \"recycling</w>\": 12566,\n  \"red\": 1893,\n  \"red</w>\": 736,\n  \"redbubble</w>\": 46137,\n  \"redbull\": 29483,\n  \"redbull</w>\": 29219,\n  \"redcarpet</w>\": 32259,\n  \"redcross</w>\": 30659,\n  \"redd\": 22149,\n  \"redd</w>\": 40618,\n  \"redding</w>\": 41061,\n  \"reddish</w>\": 43383,\n  \"reddit</w>\": 15226,\n  \"reddy</w>\": 23028,\n  \"rede\": 10913,\n  \"redeem</w>\": 37449,\n  \"redefining</w>\": 46352,\n  \"redemption</w>\": 20233,\n  \"redesign</w>\": 24188,\n  \"redesigned</w>\": 33111,\n  \"redevelopment</w>\": 30322,\n  \"redhead</w>\": 36267,\n  \"redi\": 7976,\n  \"redman</w>\": 44753,\n  \"redmond</w>\": 39627,\n  \"rednation\": 28180,\n  \"rednationrising</w>\": 28262,\n  \"redneck</w>\": 39105,\n  \"redness</w>\": 22626,\n  \"redo</w>\": 42524,\n  \"redon\": 48506,\n  \"redro\": 37722,\n  \"reds</w>\": 11221,\n  \"redskins</w>\": 19023,\n  \"redsox</w>\": 19144,\n  \"reduc\": 5015,\n  \"reduce</w>\": 6604,\n  \"reduced</w>\": 10821,\n  \"reduces</w>\": 20539,\n  \"reducing</w>\": 13836,\n  \"reduction</w>\": 12219,\n  \"reductions</w>\": 48263,\n  \"redux</w>\": 43014,\n  \"redvelvet</w>\": 41845,\n  \"redwings</w>\": 31058,\n  \"redwood</w>\": 31748,\n  \"ree\": 9282,\n  \"ree</w>\": 5813,\n  \"reebok</w>\": 26734,\n  \"reece</w>\": 30457,\n  \"reed\": 26209,\n  \"reed</w>\": 10435,\n  \"reedus</w>\": 32865,\n  \"reef\": 46557,\n  \"reef</w>\": 15624,\n  \"reefs</w>\": 34459,\n  \"reel\": 34467,\n  \"reel</w>\": 17166,\n  \"reels</w>\": 48127,\n  \"reem</w>\": 48891,\n  \"reen\": 21638,\n  \"reen</w>\": 23679,\n  \"rees</w>\": 18314,\n  \"reese</w>\": 20929,\n  \"reeves</w>\": 23060,\n  \"ref\": 4067,\n  \"ref</w>\": 9591,\n  \"refe\": 5624,\n  \"refer\": 18425,\n  \"refer</w>\": 22325,\n  \"referee</w>\": 20398,\n  \"referees</w>\": 45583,\n  \"referen\": 13535,\n  \"reference</w>\": 10214,\n  \"references</w>\": 24009,\n  \"referendum</w>\": 16732,\n  \"referr\": 47784,\n  \"referral</w>\": 30219,\n  \"referred</w>\": 22969,\n  \"referring</w>\": 29797,\n  \"refers</w>\": 30069,\n  \"refill</w>\": 37859,\n  \"refin\": 13455,\n  \"refined</w>\": 26098,\n  \"refinery</w>\": 31393,\n  \"refining</w>\": 48406,\n  \"reflec\": 4608,\n  \"reflect</w>\": 13373,\n  \"reflected</w>\": 28732,\n  \"reflecting</w>\": 19700,\n  \"reflection</w>\": 11884,\n  \"reflections</w>\": 16647,\n  \"reflective</w>\": 27008,\n  \"reflects</w>\": 15821,\n  \"reflex\": 45756,\n  \"reflex</w>\": 36050,\n  \"reform\": 45678,\n  \"reform</w>\": 8875,\n  \"reformation</w>\": 45119,\n  \"reformed</w>\": 40880,\n  \"reforms</w>\": 19274,\n  \"refr\": 34850,\n  \"refre\": 11995,\n  \"refresh\": 17836,\n  \"refresh</w>\": 23288,\n  \"refreshed</w>\": 35925,\n  \"refresher</w>\": 41481,\n  \"refreshing</w>\": 14159,\n  \"refreshments</w>\": 31127,\n  \"refriger\": 21076,\n  \"refrigerator</w>\": 36662,\n  \"refs</w>\": 35595,\n  \"refu\": 3545,\n  \"refuge\": 5638,\n  \"refuge</w>\": 17432,\n  \"refugee</w>\": 11556,\n  \"refugees\": 42687,\n  \"refugees</w>\": 8316,\n  \"refund</w>\": 28899,\n  \"refur\": 15519,\n  \"refurbi\": 18259,\n  \"refurbished</w>\": 26190,\n  \"refurbishment</w>\": 35803,\n  \"refusal</w>\": 46547,\n  \"refuse</w>\": 16412,\n  \"refused</w>\": 17190,\n  \"refuses</w>\": 20085,\n  \"refusing</w>\": 26704,\n  \"reg\": 5472,\n  \"reg</w>\": 12353,\n  \"regain</w>\": 37510,\n  \"regal\": 31512,\n  \"regal</w>\": 25028,\n  \"regan</w>\": 34062,\n  \"regar\": 5881,\n  \"regard</w>\": 21801,\n  \"regarded</w>\": 32017,\n  \"regarding</w>\": 8493,\n  \"regardless</w>\": 17220,\n  \"regards</w>\": 23079,\n  \"regatta</w>\": 26316,\n  \"regen\": 46545,\n  \"regency</w>\": 29341,\n  \"regeneration</w>\": 29257,\n  \"regent</w>\": 30455,\n  \"regents</w>\": 46710,\n  \"regg\": 12757,\n  \"reggae\": 37821,\n  \"reggae</w>\": 15214,\n  \"reggie</w>\": 21872,\n  \"regi\": 1608,\n  \"regime</w>\": 11378,\n  \"regiment</w>\": 18603,\n  \"regin\": 23287,\n  \"regina</w>\": 16841,\n  \"region\": 16542,\n  \"region</w>\": 4341,\n  \"regional</w>\": 5552,\n  \"regionals</w>\": 26043,\n  \"regions</w>\": 14530,\n  \"regis</w>\": 28094,\n  \"register</w>\": 3967,\n  \"registered</w>\": 10254,\n  \"registering</w>\": 33510,\n  \"registr\": 29193,\n  \"registration</w>\": 7302,\n  \"registrations</w>\": 38423,\n  \"registry</w>\": 30020,\n  \"rego</w>\": 47351,\n  \"regram</w>\": 30329,\n  \"regrann</w>\": 48802,\n  \"regre\": 8627,\n  \"regression</w>\": 43733,\n  \"regret</w>\": 14374,\n  \"regrets</w>\": 23231,\n  \"regu\": 3411,\n  \"regui</w>\": 46722,\n  \"regul\": 11847,\n  \"regular\": 14882,\n  \"regular</w>\": 6307,\n  \"regularly</w>\": 17263,\n  \"regulat\": 14575,\n  \"regulate</w>\": 33494,\n  \"regulated</w>\": 31384,\n  \"regulating</w>\": 48156,\n  \"regulation</w>\": 14267,\n  \"regulations</w>\": 16654,\n  \"regulator</w>\": 30364,\n  \"regulators</w>\": 35837,\n  \"regulatory</w>\": 17717,\n  \"reh\": 21492,\n  \"reha\": 10193,\n  \"rehab</w>\": 16973,\n  \"rehabil\": 17930,\n  \"rehabilitation</w>\": 21042,\n  \"rehear\": 7273,\n  \"rehearsal</w>\": 11482,\n  \"rehearsals</w>\": 17977,\n  \"rehearsing</w>\": 23125,\n  \"rehman</w>\": 39206,\n  \"rei\": 15343,\n  \"rei</w>\": 26033,\n  \"reic\": 41230,\n  \"reich\": 48589,\n  \"reich</w>\": 28929,\n  \"reid\": 45125,\n  \"reid</w>\": 11744,\n  \"reig\": 13092,\n  \"reign\": 41419,\n  \"reign</w>\": 14827,\n  \"reigning</w>\": 28409,\n  \"reigns</w>\": 21217,\n  \"reiki</w>\": 46960,\n  \"reilly</w>\": 28120,\n  \"reim\": 35421,\n  \"reimagined</w>\": 46799,\n  \"reimbur\": 39857,\n  \"rein\": 9240,\n  \"rein</w>\": 45009,\n  \"reina</w>\": 43847,\n  \"reinde\": 23810,\n  \"reindeer</w>\": 25072,\n  \"reinfor\": 48161,\n  \"reinforced</w>\": 41909,\n  \"reinst\": 33969,\n  \"reinvent</w>\": 38171,\n  \"reissue</w>\": 34042,\n  \"reiter\": 35394,\n  \"rejec\": 9958,\n  \"reject</w>\": 22435,\n  \"rejected</w>\": 17505,\n  \"rejection</w>\": 32264,\n  \"rejects</w>\": 23155,\n  \"rejo\": 20150,\n  \"rejoice</w>\": 24712,\n  \"rejuven\": 26332,\n  \"rek\": 47542,\n  \"rek</w>\": 19201,\n  \"rel\": 1825,\n  \"rel</w>\": 5233,\n  \"rela\": 4362,\n  \"reland</w>\": 15220,\n  \"relat\": 27192,\n  \"relatable</w>\": 31010,\n  \"relate</w>\": 17520,\n  \"related</w>\": 5880,\n  \"relates</w>\": 36064,\n  \"relating</w>\": 27373,\n  \"relation\": 4561,\n  \"relation</w>\": 16207,\n  \"relations</w>\": 10100,\n  \"relationship\": 47239,\n  \"relationship</w>\": 5837,\n  \"relationships</w>\": 10610,\n  \"relative</w>\": 17265,\n  \"relatively</w>\": 18351,\n  \"relatives</w>\": 21981,\n  \"relax\": 6777,\n  \"relax</w>\": 9035,\n  \"relaxation</w>\": 22194,\n  \"relaxed</w>\": 18999,\n  \"relaxing</w>\": 10256,\n  \"relay</w>\": 12403,\n  \"relays</w>\": 28404,\n  \"rele\": 1602,\n  \"release\": 29100,\n  \"release</w>\": 2706,\n  \"released</w>\": 3410,\n  \"releases</w>\": 7393,\n  \"releasethe\": 44008,\n  \"releasing</w>\": 10321,\n  \"releg\": 23378,\n  \"relegated</w>\": 45884,\n  \"relegation</w>\": 35040,\n  \"relent\": 22213,\n  \"relentless</w>\": 27207,\n  \"relessly</w>\": 33927,\n  \"relev\": 9349,\n  \"relevance</w>\": 31400,\n  \"relevant</w>\": 10568,\n  \"reli\": 2674,\n  \"reliability</w>\": 27220,\n  \"reliable</w>\": 13714,\n  \"reliance</w>\": 27727,\n  \"relic</w>\": 27802,\n  \"relics</w>\": 43208,\n  \"relief</w>\": 7518,\n  \"relies</w>\": 41579,\n  \"relieve</w>\": 28623,\n  \"relieved</w>\": 36597,\n  \"religi\": 4940,\n  \"religion</w>\": 8803,\n  \"religions</w>\": 31189,\n  \"religious</w>\": 8289,\n  \"relish</w>\": 35550,\n  \"relive</w>\": 23939,\n  \"reliving</w>\": 47558,\n  \"rell\": 28802,\n  \"rell</w>\": 7127,\n  \"rella</w>\": 9952,\n  \"relle</w>\": 31390,\n  \"reloaded</w>\": 38908,\n  \"relocated</w>\": 46791,\n  \"relocation</w>\": 39198,\n  \"rels</w>\": 23320,\n  \"relu\": 32058,\n  \"reluct\": 32549,\n  \"reluctant</w>\": 45552,\n  \"rely</w>\": 4158,\n  \"relying</w>\": 42168,\n  \"rem\": 15098,\n  \"rem</w>\": 21637,\n  \"rema\": 4569,\n  \"remain\": 29144,\n  \"remain</w>\": 6415,\n  \"remainder</w>\": 41672,\n  \"remained</w>\": 23714,\n  \"remaining</w>\": 11392,\n  \"remains</w>\": 6807,\n  \"remake</w>\": 16234,\n  \"remark\": 11136,\n  \"remarkable</w>\": 12404,\n  \"remarkably</w>\": 39087,\n  \"remarks</w>\": 15001,\n  \"remastered</w>\": 24932,\n  \"rematch</w>\": 26473,\n  \"rembrandt</w>\": 45972,\n  \"reme\": 20071,\n  \"remedi\": 18442,\n  \"remedies</w>\": 25581,\n  \"remedy</w>\": 25794,\n  \"remem\": 7966,\n  \"rememb\": 7062,\n  \"remember\": 22045,\n  \"remember</w>\": 2195,\n  \"remembered</w>\": 11763,\n  \"remembering</w>\": 8135,\n  \"remembers</w>\": 12551,\n  \"remembrance\": 40321,\n  \"remembrance</w>\": 15860,\n  \"remembranceday</w>\": 48333,\n  \"rement</w>\": 7173,\n  \"rements</w>\": 12667,\n  \"remi</w>\": 41693,\n  \"remin\": 3216,\n  \"remind</w>\": 9868,\n  \"reminded</w>\": 12309,\n  \"reminder</w>\": 5565,\n  \"reminders</w>\": 34121,\n  \"reminding</w>\": 19976,\n  \"reminds</w>\": 8303,\n  \"remington</w>\": 43527,\n  \"reminis\": 17723,\n  \"reminiscent</w>\": 41704,\n  \"reminiscing</w>\": 32552,\n  \"remix</w>\": 8519,\n  \"remixes</w>\": 31011,\n  \"remn\": 29127,\n  \"remnants</w>\": 39032,\n  \"remo\": 4064,\n  \"remo</w>\": 33259,\n  \"remodel\": 34159,\n  \"remodel</w>\": 37495,\n  \"remodeling</w>\": 41432,\n  \"remote\": 47163,\n  \"remote</w>\": 9687,\n  \"remotely</w>\": 32375,\n  \"removable</w>\": 44095,\n  \"removal</w>\": 13679,\n  \"remove</w>\": 9709,\n  \"removed</w>\": 10289,\n  \"remover</w>\": 44267,\n  \"removes</w>\": 29018,\n  \"removing</w>\": 18504,\n  \"remy</w>\": 30434,\n  \"ren\": 737,\n  \"ren</w>\": 2596,\n  \"rena</w>\": 12591,\n  \"renais\": 15409,\n  \"renaissance</w>\": 16007,\n  \"renal</w>\": 36096,\n  \"renamed</w>\": 31535,\n  \"renault</w>\": 17600,\n  \"rence\": 19245,\n  \"rence</w>\": 1553,\n  \"rences</w>\": 8545,\n  \"rend\": 33932,\n  \"rend</w>\": 22851,\n  \"render\": 39752,\n  \"render</w>\": 13024,\n  \"rendered</w>\": 23652,\n  \"rendering</w>\": 21339,\n  \"renders</w>\": 39419,\n  \"rendez\": 43293,\n  \"rendezvous</w>\": 45644,\n  \"rendition</w>\": 28891,\n  \"rendon</w>\": 46272,\n  \"rendous</w>\": 49403,\n  \"rends</w>\": 38842,\n  \"rene\": 15438,\n  \"rene</w>\": 12597,\n  \"renee</w>\": 23480,\n  \"reneg\": 29909,\n  \"renegade</w>\": 41229,\n  \"renergy</w>\": 37151,\n  \"renew\": 6645,\n  \"renew</w>\": 22015,\n  \"renewable\": 31269,\n  \"renewable</w>\": 15941,\n  \"renewableenergy</w>\": 33357,\n  \"renewables</w>\": 21619,\n  \"renewal</w>\": 21270,\n  \"renewed</w>\": 20524,\n  \"renfre\": 45043,\n  \"reng</w>\": 36795,\n  \"reno\": 11520,\n  \"reno</w>\": 12831,\n  \"renov\": 9984,\n  \"renovated</w>\": 23839,\n  \"renovation</w>\": 17121,\n  \"renovations</w>\": 31311,\n  \"renowned</w>\": 14727,\n  \"rens</w>\": 18183,\n  \"renshaw</w>\": 44445,\n  \"rent\": 17377,\n  \"rent</w>\": 1609,\n  \"rental</w>\": 12193,\n  \"rentals</w>\": 24105,\n  \"rented</w>\": 35932,\n  \"rential</w>\": 31692,\n  \"renting</w>\": 37662,\n  \"rently</w>\": 2615,\n  \"rents</w>\": 31109,\n  \"reo\": 15963,\n  \"reo</w>\": 26854,\n  \"reon</w>\": 15761,\n  \"reopen</w>\": 26883,\n  \"reopened</w>\": 32868,\n  \"reopening</w>\": 36663,\n  \"reopens</w>\": 40644,\n  \"rep\": 4229,\n  \"rep</w>\": 6487,\n  \"repair</w>\": 8419,\n  \"repaired</w>\": 32953,\n  \"repairing</w>\": 38534,\n  \"repairs</w>\": 16297,\n  \"repar\": 34065,\n  \"repe\": 5785,\n  \"repeal\": 42622,\n  \"repeal</w>\": 23938,\n  \"repeat</w>\": 10192,\n  \"repeated</w>\": 27904,\n  \"repeatedly</w>\": 26630,\n  \"repeating</w>\": 33834,\n  \"repeats</w>\": 39158,\n  \"repell\": 46235,\n  \"repent\": 47261,\n  \"reper\": 29085,\n  \"repet\": 38533,\n  \"repl\": 13047,\n  \"replac\": 6069,\n  \"replace</w>\": 9466,\n  \"replaceable</w>\": 47762,\n  \"replaced</w>\": 13200,\n  \"replacement</w>\": 10835,\n  \"replaces</w>\": 27781,\n  \"replacing</w>\": 18647,\n  \"replay</w>\": 16875,\n  \"repleni\": 44839,\n  \"replic\": 21651,\n  \"replica</w>\": 18125,\n  \"replied</w>\": 24238,\n  \"replies</w>\": 18808,\n  \"reply</w>\": 8965,\n  \"replying</w>\": 47599,\n  \"repor\": 2628,\n  \"report</w>\": 2417,\n  \"reported</w>\": 7598,\n  \"reportedly</w>\": 10953,\n  \"reporter</w>\": 11019,\n  \"reporters</w>\": 18454,\n  \"reporting</w>\": 9218,\n  \"reports</w>\": 4908,\n  \"reposit\": 41276,\n  \"repository</w>\": 46977,\n  \"repost\": 33147,\n  \"repost</w>\": 7217,\n  \"repostapp</w>\": 38388,\n  \"reposting</w>\": 20223,\n  \"reppin</w>\": 19163,\n  \"repping</w>\": 22574,\n  \"repre\": 3397,\n  \"represent\": 8293,\n  \"represent</w>\": 8406,\n  \"representation</w>\": 13520,\n  \"representative</w>\": 13175,\n  \"representatives</w>\": 15591,\n  \"represented</w>\": 12299,\n  \"representing</w>\": 7561,\n  \"represents</w>\": 14433,\n  \"repri\": 31854,\n  \"reproduction</w>\": 35714,\n  \"reproductive</w>\": 25522,\n  \"reps</w>\": 14265,\n  \"reptile</w>\": 36938,\n  \"reptiles</w>\": 38679,\n  \"republic\": 6376,\n  \"republic</w>\": 7185,\n  \"republican</w>\": 9842,\n  \"republicans</w>\": 12384,\n  \"repur\": 41852,\n  \"req</w>\": 42411,\n  \"requ\": 10664,\n  \"reque\": 9539,\n  \"request</w>\": 7813,\n  \"requested</w>\": 16199,\n  \"requesting</w>\": 33245,\n  \"requests</w>\": 17087,\n  \"requi\": 4863,\n  \"requiem</w>\": 40316,\n  \"require</w>\": 14437,\n  \"required</w>\": 8500,\n  \"requirement</w>\": 27146,\n  \"requirements</w>\": 12860,\n  \"requires</w>\": 13396,\n  \"requiring</w>\": 33425,\n  \"requis\": 42602,\n  \"rer\": 41295,\n  \"rer</w>\": 3407,\n  \"rera</w>\": 14301,\n  \"rero</w>\": 21860,\n  \"rers</w>\": 18869,\n  \"res\": 4466,\n  \"res</w>\": 934,\n  \"resc\": 3956,\n  \"rescheduled</w>\": 43553,\n  \"rescu\": 8618,\n  \"rescue\": 28567,\n  \"rescue</w>\": 5718,\n  \"rescued</w>\": 11919,\n  \"rescues</w>\": 32439,\n  \"rescuing</w>\": 43770,\n  \"rese\": 13000,\n  \"resear\": 6090,\n  \"research\": 25694,\n  \"research</w>\": 2379,\n  \"researched</w>\": 42733,\n  \"researcher</w>\": 18334,\n  \"researchers</w>\": 9522,\n  \"researching</w>\": 24544,\n  \"reseller</w>\": 35391,\n  \"resemb\": 16916,\n  \"resemblance</w>\": 26856,\n  \"resemble</w>\": 37230,\n  \"resembles</w>\": 35417,\n  \"reser\": 16420,\n  \"reserv\": 11906,\n  \"reservation</w>\": 20289,\n  \"reservations</w>\": 19307,\n  \"reserve</w>\": 6911,\n  \"reserved</w>\": 19796,\n  \"reserves</w>\": 19705,\n  \"reservoir</w>\": 20574,\n  \"reset</w>\": 26250,\n  \"resh</w>\": 47432,\n  \"reshi</w>\": 39435,\n  \"resi\": 2152,\n  \"residen\": 22311,\n  \"residence</w>\": 11672,\n  \"residences</w>\": 38855,\n  \"residency</w>\": 18545,\n  \"resident</w>\": 9016,\n  \"residente\": 44637,\n  \"residentevil</w>\": 48393,\n  \"residential</w>\": 11002,\n  \"residents</w>\": 6008,\n  \"resign</w>\": 23584,\n  \"resignation</w>\": 24779,\n  \"resigned</w>\": 31014,\n  \"resigns</w>\": 29738,\n  \"resil\": 10932,\n  \"resili\": 39212,\n  \"resilience</w>\": 15271,\n  \"resilient</w>\": 24694,\n  \"resin</w>\": 24156,\n  \"resist\": 37345,\n  \"resist</w>\": 9587,\n  \"resistance</w>\": 7392,\n  \"resistant</w>\": 17542,\n  \"resisting</w>\": 43679,\n  \"resolution</w>\": 9977,\n  \"resolutions</w>\": 26816,\n  \"resolve</w>\": 20787,\n  \"resolved</w>\": 28807,\n  \"reson\": 18092,\n  \"resonance</w>\": 42310,\n  \"resort</w>\": 6594,\n  \"resorts</w>\": 18839,\n  \"resource\": 43729,\n  \"resource</w>\": 9760,\n  \"resources</w>\": 6723,\n  \"respec\": 7466,\n  \"respect\": 31411,\n  \"respect</w>\": 4916,\n  \"respected</w>\": 19126,\n  \"respectful</w>\": 24379,\n  \"respecting</w>\": 36172,\n  \"respective</w>\": 25817,\n  \"respectively</w>\": 28794,\n  \"respects</w>\": 23553,\n  \"respir\": 20771,\n  \"respiratory</w>\": 24483,\n  \"respon\": 2421,\n  \"respond</w>\": 12355,\n  \"responded</w>\": 21121,\n  \"respondents</w>\": 49253,\n  \"responders</w>\": 25155,\n  \"responding</w>\": 18037,\n  \"responds</w>\": 17436,\n  \"response</w>\": 5399,\n  \"responses</w>\": 19006,\n  \"responsi\": 5490,\n  \"responsibilities</w>\": 30375,\n  \"responsibility</w>\": 11272,\n  \"responsible</w>\": 8936,\n  \"responsibly</w>\": 33675,\n  \"responsive</w>\": 21544,\n  \"ress\": 34651,\n  \"ress</w>\": 13629,\n  \"resso</w>\": 15133,\n  \"rest\": 10974,\n  \"rest</w>\": 2539,\n  \"restart</w>\": 37378,\n  \"restaur\": 3775,\n  \"restaurant\": 41930,\n  \"restaurant</w>\": 4489,\n  \"restaurants</w>\": 11714,\n  \"rested</w>\": 46020,\n  \"resting</w>\": 18044,\n  \"restless</w>\": 36724,\n  \"restling</w>\": 30076,\n  \"resto\": 11118,\n  \"resto</w>\": 41666,\n  \"restock</w>\": 34060,\n  \"restocked</w>\": 36966,\n  \"restor\": 8984,\n  \"restoration</w>\": 11989,\n  \"restorative</w>\": 46509,\n  \"restore</w>\": 14008,\n  \"restored</w>\": 14238,\n  \"restoring</w>\": 24406,\n  \"restra\": 25424,\n  \"restric\": 11036,\n  \"restricted</w>\": 27197,\n  \"restriction</w>\": 44282,\n  \"restrictions</w>\": 19884,\n  \"restroom</w>\": 43423,\n  \"restructuring</w>\": 43260,\n  \"rests</w>\": 33775,\n  \"resu\": 10095,\n  \"resul\": 2655,\n  \"result</w>\": 5659,\n  \"resulted</w>\": 26449,\n  \"resulting</w>\": 24581,\n  \"results</w>\": 3790,\n  \"resume</w>\": 15077,\n  \"resumes</w>\": 30268,\n  \"resur\": 14865,\n  \"resurg\": 45962,\n  \"resurgence</w>\": 47692,\n  \"resurrec\": 18487,\n  \"resurrection</w>\": 25811,\n  \"resusc\": 47523,\n  \"ret\": 20500,\n  \"ret</w>\": 10048,\n  \"reta\": 20153,\n  \"retail\": 14910,\n  \"retail</w>\": 6455,\n  \"retailer</w>\": 22549,\n  \"retailers</w>\": 19418,\n  \"retain</w>\": 24430,\n  \"retained</w>\": 42737,\n  \"retaining</w>\": 35571,\n  \"retains</w>\": 42583,\n  \"retali\": 33101,\n  \"retar\": 29964,\n  \"retarded</w>\": 44111,\n  \"retention</w>\": 26247,\n  \"rethink</w>\": 29078,\n  \"rethinking</w>\": 42951,\n  \"reti\": 4721,\n  \"retin\": 31270,\n  \"retina</w>\": 36919,\n  \"retire</w>\": 18846,\n  \"retired</w>\": 11477,\n  \"retirement</w>\": 9205,\n  \"retires</w>\": 29060,\n  \"retiring</w>\": 21200,\n  \"retrac\": 32735,\n  \"retreat</w>\": 11210,\n  \"retri\": 16918,\n  \"retriever</w>\": 28394,\n  \"retro\": 6535,\n  \"retro</w>\": 7755,\n  \"retrogamer</w>\": 47220,\n  \"retrogaming</w>\": 11316,\n  \"retrospective</w>\": 27105,\n  \"rett\": 41082,\n  \"rett</w>\": 8425,\n  \"rette</w>\": 33066,\n  \"return\": 43042,\n  \"return</w>\": 3458,\n  \"returned</w>\": 10476,\n  \"returning</w>\": 9290,\n  \"returns</w>\": 5020,\n  \"retwee\": 48190,\n  \"retweet</w>\": 3195,\n  \"retweeted</w>\": 12705,\n  \"retweeting</w>\": 32345,\n  \"retweets</w>\": 10160,\n  \"rety</w>\": 41550,\n  \"reu\": 20255,\n  \"reu</w>\": 40371,\n  \"reuben</w>\": 40450,\n  \"reunion</w>\": 10247,\n  \"reunite</w>\": 26179,\n  \"reunited</w>\": 13516,\n  \"reusable</w>\": 30395,\n  \"reuse</w>\": 26535,\n  \"reut\": 15210,\n  \"reuters</w>\": 15569,\n  \"rev\": 8424,\n  \"rev</w>\": 11789,\n  \"revamp</w>\": 29819,\n  \"revamped</w>\": 36420,\n  \"revan</w>\": 45277,\n  \"reve\": 3115,\n  \"reveal</w>\": 8052,\n  \"revealed</w>\": 7171,\n  \"revealing</w>\": 21321,\n  \"reveals</w>\": 6621,\n  \"revel\": 14133,\n  \"revelation</w>\": 24053,\n  \"revelations</w>\": 36163,\n  \"reven\": 10171,\n  \"revenge</w>\": 12717,\n  \"revenue</w>\": 10637,\n  \"revenues</w>\": 33348,\n  \"rever\": 14829,\n  \"rever</w>\": 41913,\n  \"revere</w>\": 44187,\n  \"reverend</w>\": 34407,\n  \"revers\": 20726,\n  \"reversal</w>\": 33367,\n  \"reverse</w>\": 12812,\n  \"reversed</w>\": 42485,\n  \"reversi\": 31601,\n  \"reversible</w>\": 34212,\n  \"revi\": 8317,\n  \"review</w>\": 2268,\n  \"reviewed</w>\": 16678,\n  \"reviewer</w>\": 36409,\n  \"reviewers</w>\": 48195,\n  \"reviewing</w>\": 20458,\n  \"reviews</w>\": 7227,\n  \"revise</w>\": 46801,\n  \"revised</w>\": 22806,\n  \"revising</w>\": 46882,\n  \"revision</w>\": 20335,\n  \"revisit</w>\": 26568,\n  \"revisited</w>\": 34302,\n  \"revisiting</w>\": 33144,\n  \"revit\": 26367,\n  \"revitalization</w>\": 46923,\n  \"revival</w>\": 14142,\n  \"revive</w>\": 26450,\n  \"revived</w>\": 42912,\n  \"revo\": 28660,\n  \"revol\": 13447,\n  \"revolt</w>\": 31697,\n  \"revolu\": 4900,\n  \"revolution\": 17699,\n  \"revolution</w>\": 6644,\n  \"revolutionary</w>\": 14734,\n  \"revolver</w>\": 38747,\n  \"revolving</w>\": 47230,\n  \"revs</w>\": 49286,\n  \"revue</w>\": 43428,\n  \"rew</w>\": 37564,\n  \"rewar\": 15857,\n  \"reward</w>\": 11223,\n  \"rewarded</w>\": 27163,\n  \"rewarding</w>\": 23351,\n  \"rewards</w>\": 15235,\n  \"rewatch</w>\": 35610,\n  \"rewatching</w>\": 41287,\n  \"rewind</w>\": 26867,\n  \"rewrite</w>\": 45218,\n  \"rex\": 13002,\n  \"rex</w>\": 10904,\n  \"rexperience</w>\": 33924,\n  \"rey\": 9681,\n  \"rey</w>\": 4517,\n  \"reyes</w>\": 18255,\n  \"reykja\": 47571,\n  \"reyn\": 11998,\n  \"reynolds</w>\": 14309,\n  \"reys</w>\": 48284,\n  \"rez\": 27597,\n  \"rez</w>\": 15192,\n  \"reza</w>\": 35888,\n  \"rf\": 35529,\n  \"rf</w>\": 16368,\n  \"rfc</w>\": 19003,\n  \"rfid</w>\": 40204,\n  \"rg\": 33055,\n  \"rg</w>\": 14897,\n  \"rgb</w>\": 36128,\n  \"rgv</w>\": 33685,\n  \"rh\": 8745,\n  \"rh</w>\": 22404,\n  \"rha\": 19473,\n  \"rhapso\": 32532,\n  \"rhapsody</w>\": 35774,\n  \"rhe\": 9186,\n  \"rhea</w>\": 28612,\n  \"rhetor\": 24359,\n  \"rhetoric</w>\": 29985,\n  \"rhett</w>\": 42984,\n  \"rheu\": 42953,\n  \"rhi\": 21212,\n  \"rhin\": 12269,\n  \"rhine\": 22863,\n  \"rhine</w>\": 44833,\n  \"rhinestone</w>\": 30450,\n  \"rhino\": 41744,\n  \"rhino</w>\": 20056,\n  \"rhinos</w>\": 30671,\n  \"rho\": 7637,\n  \"rhode\": 39302,\n  \"rhode</w>\": 27907,\n  \"rhodes</w>\": 17785,\n  \"rhon\": 25882,\n  \"rhonda</w>\": 46100,\n  \"rhp</w>\": 27199,\n  \"rhs</w>\": 24551,\n  \"rhu\": 23897,\n  \"rhubarb</w>\": 30213,\n  \"rhy\": 7740,\n  \"rhyme</w>\": 37356,\n  \"rhymes</w>\": 33143,\n  \"rhys</w>\": 28647,\n  \"rhyth\": 27069,\n  \"rhythm</w>\": 16172,\n  \"rhythmic</w>\": 46386,\n  \"rhythms</w>\": 40872,\n  \"ri\": 553,\n  \"ri</w>\": 2574,\n  \"ria</w>\": 3650,\n  \"rial</w>\": 15200,\n  \"rian</w>\": 7788,\n  \"rib\": 44634,\n  \"rib</w>\": 18298,\n  \"riba</w>\": 44992,\n  \"ribb\": 10081,\n  \"ribbon</w>\": 12114,\n  \"ribbons</w>\": 35271,\n  \"ribe\": 46115,\n  \"ribs</w>\": 17519,\n  \"ric\": 920,\n  \"ric</w>\": 4798,\n  \"rica</w>\": 14230,\n  \"rical</w>\": 18109,\n  \"rican</w>\": 30958,\n  \"ricardo</w>\": 23140,\n  \"ricci\": 35783,\n  \"ricciardo</w>\": 49282,\n  \"rice\": 36362,\n  \"rice</w>\": 4741,\n  \"rich\": 5223,\n  \"rich</w>\": 4021,\n  \"richar\": 9350,\n  \"richard\": 9080,\n  \"richard</w>\": 4470,\n  \"richards</w>\": 11372,\n  \"richardson</w>\": 15984,\n  \"riche\": 23286,\n  \"richer</w>\": 34138,\n  \"riches</w>\": 37093,\n  \"richest</w>\": 25572,\n  \"richi\": 38934,\n  \"richie</w>\": 19797,\n  \"richland</w>\": 43079,\n  \"richmond\": 34143,\n  \"richmond</w>\": 11292,\n  \"richter</w>\": 37591,\n  \"rick\": 6237,\n  \"rick</w>\": 3064,\n  \"ricket\": 46161,\n  \"ricket</w>\": 23671,\n  \"ricks</w>\": 23111,\n  \"ricky\": 19188,\n  \"ricky</w>\": 12814,\n  \"rico\": 37962,\n  \"rico</w>\": 11362,\n  \"ricotta</w>\": 38473,\n  \"rics</w>\": 7353,\n  \"ricul\": 6980,\n  \"rid\": 18103,\n  \"rid</w>\": 9874,\n  \"ridd\": 21990,\n  \"ridden</w>\": 32025,\n  \"riddle</w>\": 31839,\n  \"ride\": 15816,\n  \"ride</w>\": 2994,\n  \"rider\": 31056,\n  \"rider</w>\": 9707,\n  \"riders</w>\": 10826,\n  \"rides</w>\": 11308,\n  \"ridg\": 42646,\n  \"ridge\": 16580,\n  \"ridge</w>\": 6352,\n  \"ridic\": 9624,\n  \"ridiculous</w>\": 12659,\n  \"ridiculously</w>\": 25661,\n  \"ridin</w>\": 47869,\n  \"riding</w>\": 6765,\n  \"ridley</w>\": 27883,\n  \"rie\": 14824,\n  \"rie</w>\": 5322,\n  \"ried</w>\": 7552,\n  \"riel</w>\": 26696,\n  \"rien</w>\": 35237,\n  \"rier\": 40714,\n  \"rier</w>\": 13336,\n  \"ries\": 28179,\n  \"ries</w>\": 3059,\n  \"riesling</w>\": 36372,\n  \"rif\": 7044,\n  \"riff</w>\": 30359,\n  \"rifle</w>\": 15354,\n  \"rifles</w>\": 25678,\n  \"rift</w>\": 26681,\n  \"rig\": 18462,\n  \"rig</w>\": 13871,\n  \"riga</w>\": 36626,\n  \"rigged</w>\": 35897,\n  \"rigging</w>\": 38160,\n  \"riggs</w>\": 40328,\n  \"righ\": 15391,\n  \"right\": 13341,\n  \"right</w>\": 1155,\n  \"righte\": 20762,\n  \"righteous</w>\": 28169,\n  \"righteousness</w>\": 42481,\n  \"rightful</w>\": 42601,\n  \"rightly</w>\": 42669,\n  \"rights</w>\": 3336,\n  \"rigid</w>\": 43138,\n  \"rigor\": 36788,\n  \"rigorous</w>\": 41654,\n  \"rigs</w>\": 42893,\n  \"rihanna</w>\": 13744,\n  \"rij\": 41097,\n  \"rik\": 31136,\n  \"rik</w>\": 27832,\n  \"rika</w>\": 28580,\n  \"ril\": 12270,\n  \"ril</w>\": 2388,\n  \"riley\": 35056,\n  \"riley</w>\": 12260,\n  \"rill</w>\": 23705,\n  \"rilla\": 43956,\n  \"rilla</w>\": 18685,\n  \"rim\": 28147,\n  \"rim</w>\": 12199,\n  \"rime</w>\": 27064,\n  \"rimin\": 11527,\n  \"rimo</w>\": 47817,\n  \"rims</w>\": 34327,\n  \"rin\": 5859,\n  \"rin</w>\": 11739,\n  \"rina</w>\": 12869,\n  \"rine</w>\": 24952,\n  \"ring\": 8318,\n  \"ring</w>\": 2540,\n  \"ringed</w>\": 44712,\n  \"ringer</w>\": 35761,\n  \"ringing</w>\": 26035,\n  \"ringo</w>\": 38845,\n  \"rings</w>\": 5751,\n  \"rington</w>\": 12455,\n  \"rink</w>\": 21497,\n  \"rinka</w>\": 47316,\n  \"rino</w>\": 47188,\n  \"rinse</w>\": 48320,\n  \"rio\": 15681,\n  \"rio</w>\": 5782,\n  \"rion\": 31623,\n  \"rion</w>\": 34046,\n  \"rios</w>\": 32814,\n  \"riot\": 32636,\n  \"riot</w>\": 14218,\n  \"riots</w>\": 24844,\n  \"rious</w>\": 6340,\n  \"rip\": 10353,\n  \"rip</w>\": 4243,\n  \"ripe</w>\": 22832,\n  \"ripley</w>\": 41589,\n  \"ripp\": 25276,\n  \"ripped</w>\": 17815,\n  \"ripper</w>\": 35347,\n  \"ripping</w>\": 29126,\n  \"ripple</w>\": 24825,\n  \"rips</w>\": 30182,\n  \"rir</w>\": 36792,\n  \"ris\": 6108,\n  \"ris</w>\": 1999,\n  \"rise\": 13641,\n  \"rise</w>\": 3151,\n  \"risen</w>\": 23653,\n  \"risers</w>\": 44983,\n  \"rises</w>\": 13362,\n  \"riseup</w>\": 35760,\n  \"rish\": 18378,\n  \"rish</w>\": 18927,\n  \"rishi\": 48434,\n  \"rising\": 30452,\n  \"rising</w>\": 5448,\n  \"risis</w>\": 37998,\n  \"risk\": 27967,\n  \"risk</w>\": 4213,\n  \"risking</w>\": 48155,\n  \"risks</w>\": 12474,\n  \"risky</w>\": 27630,\n  \"risotto</w>\": 31471,\n  \"rist</w>\": 40610,\n  \"rit\": 5156,\n  \"rit</w>\": 17333,\n  \"rita</w>\": 16178,\n  \"ritchie</w>\": 30997,\n  \"rite\": 39318,\n  \"rite</w>\": 18429,\n  \"rites</w>\": 36160,\n  \"rith\": 48169,\n  \"rith</w>\": 48850,\n  \"riti\": 32904,\n  \"rito</w>\": 19379,\n  \"ritos</w>\": 33507,\n  \"ritt</w>\": 26092,\n  \"ritter</w>\": 34854,\n  \"ritu\": 13391,\n  \"ritual</w>\": 19712,\n  \"rituals</w>\": 31145,\n  \"ritz\": 39151,\n  \"ritz</w>\": 25627,\n  \"rium</w>\": 33884,\n  \"riv\": 25113,\n  \"rival\": 13412,\n  \"rival</w>\": 15629,\n  \"rivalry</w>\": 19511,\n  \"rivals</w>\": 15135,\n  \"rive\": 27588,\n  \"rive</w>\": 34917,\n  \"river\": 5239,\n  \"river</w>\": 2473,\n  \"rivera</w>\": 18275,\n  \"riverdale</w>\": 28304,\n  \"riverfront</w>\": 44439,\n  \"rivers</w>\": 10723,\n  \"riverside</w>\": 15809,\n  \"riveting</w>\": 44024,\n  \"riviera</w>\": 25851,\n  \"rix\": 43407,\n  \"rix</w>\": 9483,\n  \"riya</w>\": 36908,\n  \"riyad\": 31564,\n  \"riyadh</w>\": 33577,\n  \"riz\": 18426,\n  \"riz</w>\": 35411,\n  \"rizal</w>\": 41555,\n  \"rizio</w>\": 40191,\n  \"rizz\": 34826,\n  \"rizzo</w>\": 49076,\n  \"rj\": 26016,\n  \"rj</w>\": 20949,\n  \"rk\": 38725,\n  \"rk</w>\": 21422,\n  \"rl\": 18041,\n  \"rl</w>\": 14590,\n  \"rlly</w>\": 43222,\n  \"rly</w>\": 25954,\n  \"rm\": 20202,\n  \"rm</w>\": 8431,\n  \"rmb</w>\": 49097,\n  \"rms</w>\": 40529,\n  \"rn\": 13206,\n  \"rn</w>\": 7666,\n  \"rna</w>\": 24566,\n  \"rnb</w>\": 31556,\n  \"rnc</w>\": 35309,\n  \"rnli</w>\": 29748,\n  \"ro\": 532,\n  \"ro</w>\": 2795,\n  \"roa\": 8313,\n  \"roach</w>\": 31073,\n  \"road\": 4370,\n  \"road</w>\": 1759,\n  \"roadhouse</w>\": 47891,\n  \"roadmap</w>\": 30111,\n  \"roads</w>\": 6189,\n  \"roadsafety</w>\": 39992,\n  \"roadshow</w>\": 21168,\n  \"roadside</w>\": 26928,\n  \"roadster</w>\": 28920,\n  \"roadto\": 24681,\n  \"roadtrip</w>\": 15094,\n  \"roadway</w>\": 42744,\n  \"roam</w>\": 34045,\n  \"roaming</w>\": 29240,\n  \"roano\": 34184,\n  \"roanoke</w>\": 36587,\n  \"roar\": 34193,\n  \"roar</w>\": 18483,\n  \"roaring</w>\": 26428,\n  \"roast</w>\": 11404,\n  \"roasted</w>\": 10479,\n  \"roasting</w>\": 32228,\n  \"rob\": 2668,\n  \"rob</w>\": 6442,\n  \"robb\": 14059,\n  \"robb</w>\": 39673,\n  \"robbed</w>\": 24163,\n  \"robber</w>\": 35545,\n  \"robbers</w>\": 40852,\n  \"robbery</w>\": 16393,\n  \"robbi\": 44898,\n  \"robbie\": 37200,\n  \"robbie</w>\": 15970,\n  \"robbing</w>\": 47569,\n  \"robbins</w>\": 23461,\n  \"robby</w>\": 44128,\n  \"robe</w>\": 23116,\n  \"rober\": 4532,\n  \"robert\": 8811,\n  \"robert</w>\": 3929,\n  \"roberta</w>\": 43373,\n  \"roberto\": 42645,\n  \"roberto</w>\": 16227,\n  \"roberts</w>\": 10366,\n  \"robertson</w>\": 17643,\n  \"robes</w>\": 29304,\n  \"robi</w>\": 16743,\n  \"robin\": 6681,\n  \"robin</w>\": 7988,\n  \"robins</w>\": 35502,\n  \"robinson</w>\": 8523,\n  \"robles</w>\": 47646,\n  \"roblo\": 27481,\n  \"roblox</w>\": 37798,\n  \"robo\": 4672,\n  \"robo</w>\": 36057,\n  \"robot\": 46089,\n  \"robot</w>\": 8797,\n  \"robotic</w>\": 23975,\n  \"robotics</w>\": 13546,\n  \"robots</w>\": 13473,\n  \"robson</w>\": 31113,\n  \"robust</w>\": 22780,\n  \"robyn</w>\": 34533,\n  \"roc\": 3268,\n  \"roc</w>\": 13776,\n  \"rocco</w>\": 30009,\n  \"roch\": 23788,\n  \"rochdale</w>\": 41880,\n  \"roche</w>\": 31776,\n  \"rochelle</w>\": 40161,\n  \"rochester</w>\": 18057,\n  \"rock\": 2640,\n  \"rock</w>\": 2172,\n  \"rockab\": 39353,\n  \"rockabilly</w>\": 45019,\n  \"rocke\": 19914,\n  \"rocked</w>\": 16116,\n  \"rockefeller</w>\": 35476,\n  \"rocker</w>\": 29008,\n  \"rockers</w>\": 32338,\n  \"rocket\": 25435,\n  \"rocket</w>\": 8383,\n  \"rockets</w>\": 13292,\n  \"rockford</w>\": 41039,\n  \"rockies</w>\": 20621,\n  \"rockin</w>\": 12073,\n  \"rocking</w>\": 7081,\n  \"rockn\": 24442,\n  \"rocknroll</w>\": 27840,\n  \"rocks</w>\": 6135,\n  \"rockstar\": 23603,\n  \"rockstar</w>\": 18000,\n  \"rockstargames</w>\": 27516,\n  \"rockstars</w>\": 46639,\n  \"rockthe\": 49363,\n  \"rockwell</w>\": 34747,\n  \"rocky\": 33481,\n  \"rocky</w>\": 9648,\n  \"rod\": 9712,\n  \"rod</w>\": 8291,\n  \"roddy</w>\": 42332,\n  \"rode</w>\": 18449,\n  \"rodeo</w>\": 18250,\n  \"rodgers</w>\": 17612,\n  \"rodi\": 49100,\n  \"rodney</w>\": 21753,\n  \"rodri\": 11053,\n  \"rodrigo</w>\": 33944,\n  \"rodriguez</w>\": 14057,\n  \"rods</w>\": 28618,\n  \"roe\": 27671,\n  \"roe</w>\": 9996,\n  \"rof\": 33029,\n  \"rofl</w>\": 48228,\n  \"roft</w>\": 45212,\n  \"rog\": 34269,\n  \"rog</w>\": 34017,\n  \"rogen</w>\": 23380,\n  \"roger\": 13929,\n  \"roger</w>\": 7735,\n  \"rogerfederer</w>\": 40182,\n  \"rogers</w>\": 10661,\n  \"rogue\": 32575,\n  \"rogue</w>\": 15162,\n  \"roh\": 14933,\n  \"roh</w>\": 29840,\n  \"rohan</w>\": 39848,\n  \"rohing\": 23600,\n  \"rohingya</w>\": 26146,\n  \"rohit\": 44649,\n  \"rohit</w>\": 24299,\n  \"roi</w>\": 21877,\n  \"rok</w>\": 36807,\n  \"rol\": 3393,\n  \"rol</w>\": 7818,\n  \"roland\": 33713,\n  \"roland</w>\": 19569,\n  \"role\": 18485,\n  \"role</w>\": 3414,\n  \"roles</w>\": 11871,\n  \"rolex</w>\": 21093,\n  \"rolf</w>\": 48606,\n  \"roll\": 4711,\n  \"roll</w>\": 3341,\n  \"rolled</w>\": 11982,\n  \"roller\": 21034,\n  \"roller</w>\": 12342,\n  \"rollercoaster</w>\": 38248,\n  \"rollers</w>\": 36941,\n  \"rollin</w>\": 27545,\n  \"rolling\": 24250,\n  \"rolling</w>\": 6347,\n  \"rollingstones</w>\": 41309,\n  \"rollins</w>\": 27724,\n  \"rollout</w>\": 47710,\n  \"rollover</w>\": 39214,\n  \"rolls</w>\": 8614,\n  \"rolltide</w>\": 28101,\n  \"rom\": 11377,\n  \"rom</w>\": 19205,\n  \"roma\": 44134,\n  \"roma</w>\": 11631,\n  \"romain</w>\": 48897,\n  \"roman\": 4416,\n  \"roman</w>\": 7370,\n  \"romance</w>\": 7215,\n  \"romania</w>\": 15884,\n  \"romanian</w>\": 30866,\n  \"romano</w>\": 38409,\n  \"romans</w>\": 23066,\n  \"romantic\": 41457,\n  \"romantic</w>\": 8821,\n  \"rome\": 9406,\n  \"rome</w>\": 5243,\n  \"romeo</w>\": 14429,\n  \"romero</w>\": 23694,\n  \"romney</w>\": 19287,\n  \"romo</w>\": 32248,\n  \"romper</w>\": 43699,\n  \"ron\": 2393,\n  \"ron</w>\": 3372,\n  \"rona</w>\": 42385,\n  \"ronal\": 46194,\n  \"ronald</w>\": 15683,\n  \"ronaldo</w>\": 13463,\n  \"ronan</w>\": 34971,\n  \"rond\": 31935,\n  \"ronda</w>\": 37436,\n  \"rondo</w>\": 43756,\n  \"rone\": 48082,\n  \"rone</w>\": 32763,\n  \"roni</w>\": 47234,\n  \"ronnie\": 45257,\n  \"ronnie</w>\": 16421,\n  \"rons</w>\": 19536,\n  \"ront</w>\": 48881,\n  \"roo\": 1249,\n  \"roo</w>\": 31227,\n  \"rood</w>\": 38007,\n  \"roof\": 9120,\n  \"roof</w>\": 6449,\n  \"roofing</w>\": 24415,\n  \"roofs</w>\": 34635,\n  \"rooftop</w>\": 16319,\n  \"rook</w>\": 35918,\n  \"rookie</w>\": 9771,\n  \"rookies</w>\": 31917,\n  \"room\": 8845,\n  \"room</w>\": 1530,\n  \"roomie</w>\": 36851,\n  \"roommate</w>\": 19825,\n  \"roommates</w>\": 37323,\n  \"rooms</w>\": 6328,\n  \"rooney</w>\": 17712,\n  \"roos</w>\": 32938,\n  \"roosevel\": 17644,\n  \"roosevelt</w>\": 18488,\n  \"rooster\": 46263,\n  \"rooster</w>\": 30926,\n  \"roosters</w>\": 43693,\n  \"root\": 25930,\n  \"root</w>\": 9728,\n  \"rooted</w>\": 30428,\n  \"rooting</w>\": 25523,\n  \"roots</w>\": 8084,\n  \"rop</w>\": 43401,\n  \"rope</w>\": 9953,\n  \"ropes</w>\": 30506,\n  \"ror\": 8668,\n  \"ror</w>\": 2843,\n  \"rors</w>\": 12072,\n  \"rory\": 42804,\n  \"rory</w>\": 17813,\n  \"ros\": 5288,\n  \"ros</w>\": 6930,\n  \"rosa</w>\": 14393,\n  \"rosal\": 30397,\n  \"rosario</w>\": 33640,\n  \"rosary</w>\": 33098,\n  \"rosberg</w>\": 46037,\n  \"rose\": 6146,\n  \"rose</w>\": 3568,\n  \"roseanne</w>\": 47528,\n  \"rosel\": 33616,\n  \"rosemary</w>\": 19472,\n  \"rosen\": 13214,\n  \"rosen</w>\": 36424,\n  \"rosenberg</w>\": 43558,\n  \"rosenthal</w>\": 46990,\n  \"roses</w>\": 9061,\n  \"rosetta</w>\": 43800,\n  \"rosewood</w>\": 38686,\n  \"rosie\": 43049,\n  \"rosie</w>\": 16888,\n  \"ross\": 8801,\n  \"ross</w>\": 2158,\n  \"rosse</w>\": 11602,\n  \"rossi</w>\": 24817,\n  \"rosso</w>\": 33023,\n  \"roster</w>\": 12487,\n  \"roswell</w>\": 45116,\n  \"rosy</w>\": 46705,\n  \"rosÃ©</w>\": 28006,\n  \"rot\": 10055,\n  \"rot</w>\": 9643,\n  \"rotar\": 45959,\n  \"rotary</w>\": 14654,\n  \"rotating</w>\": 32265,\n  \"rotation</w>\": 18089,\n  \"rotc</w>\": 32252,\n  \"roth\": 17741,\n  \"roth</w>\": 19139,\n  \"rother\": 23174,\n  \"rotherham</w>\": 37687,\n  \"rothschild</w>\": 45089,\n  \"roti</w>\": 46940,\n  \"roto\": 34698,\n  \"rotor</w>\": 42991,\n  \"rots</w>\": 16642,\n  \"rott\": 34806,\n  \"rotten</w>\": 24324,\n  \"rotter\": 22614,\n  \"rotterdam</w>\": 23422,\n  \"rotun\": 42970,\n  \"rou\": 2964,\n  \"rou</w>\": 34783,\n  \"roud</w>\": 28375,\n  \"rouge</w>\": 16209,\n  \"rough\": 11699,\n  \"rough</w>\": 8511,\n  \"roughly</w>\": 21910,\n  \"roughs</w>\": 37598,\n  \"rouhani</w>\": 39912,\n  \"roulette</w>\": 39930,\n  \"roun\": 5602,\n  \"round\": 9403,\n  \"round</w>\": 2522,\n  \"roundabout</w>\": 29953,\n  \"rounded</w>\": 26973,\n  \"rounder</w>\": 37024,\n  \"rounding</w>\": 40208,\n  \"rounds</w>\": 11242,\n  \"roundtable</w>\": 19386,\n  \"roundup</w>\": 17503,\n  \"roup</w>\": 29220,\n  \"rourke</w>\": 38753,\n  \"rous\": 33645,\n  \"rous</w>\": 34531,\n  \"rousey</w>\": 46267,\n  \"rout\": 7502,\n  \"rout</w>\": 41778,\n  \"route</w>\": 5261,\n  \"router</w>\": 29962,\n  \"routes</w>\": 14923,\n  \"routine</w>\": 12319,\n  \"routines</w>\": 44074,\n  \"routing</w>\": 44086,\n  \"roux</w>\": 43416,\n  \"rov</w>\": 23971,\n  \"rove</w>\": 30130,\n  \"rover</w>\": 12776,\n  \"rovers</w>\": 16373,\n  \"row\": 5275,\n  \"row</w>\": 1044,\n  \"rowan</w>\": 26240,\n  \"rowdy</w>\": 32141,\n  \"rowe</w>\": 28323,\n  \"rowed</w>\": 22615,\n  \"rower</w>\": 43345,\n  \"rowers</w>\": 41806,\n  \"rowing</w>\": 12807,\n  \"rowland</w>\": 33037,\n  \"rowley</w>\": 48793,\n  \"rowling</w>\": 29371,\n  \"rown\": 22287,\n  \"rown</w>\": 25060,\n  \"rows</w>\": 9409,\n  \"rox\": 14111,\n  \"rox</w>\": 41033,\n  \"roxy</w>\": 28093,\n  \"roy\": 2128,\n  \"roy</w>\": 6354,\n  \"royal\": 6691,\n  \"royal</w>\": 3853,\n  \"royale</w>\": 20630,\n  \"royalnavy</w>\": 41545,\n  \"royals</w>\": 13335,\n  \"royalties</w>\": 48660,\n  \"royalty</w>\": 18296,\n  \"royalwedding</w>\": 27461,\n  \"royce</w>\": 18444,\n  \"royd</w>\": 41476,\n  \"royo</w>\": 39357,\n  \"roz\": 28989,\n  \"roz</w>\": 37250,\n  \"rp\": 17305,\n  \"rp</w>\": 8174,\n  \"rpa</w>\": 41872,\n  \"rpg</w>\": 12445,\n  \"rpm</w>\": 23715,\n  \"rps</w>\": 49215,\n  \"rr\": 5311,\n  \"rr</w>\": 9126,\n  \"rrp</w>\": 36967,\n  \"rrr</w>\": 18267,\n  \"rrrr\": 25561,\n  \"rrrr</w>\": 34444,\n  \"rs\": 6978,\n  \"rs</w>\": 1724,\n  \"rsa</w>\": 29437,\n  \"rsc</w>\": 48524,\n  \"rsd</w>\": 34426,\n  \"rsi</w>\": 39046,\n  \"rsl</w>\": 44752,\n  \"rsp\": 16381,\n  \"rspb\": 38508,\n  \"rspb</w>\": 36727,\n  \"rspca</w>\": 45643,\n  \"rss\": 46466,\n  \"rss</w>\": 22350,\n  \"rstats</w>\": 38700,\n  \"rsvp</w>\": 9774,\n  \"rt\": 8959,\n  \"rt</w>\": 8991,\n  \"rtc</w>\": 31648,\n  \"rte\": 33822,\n  \"rte</w>\": 23322,\n  \"rtg</w>\": 22028,\n  \"rti</w>\": 47549,\n  \"rtr</w>\": 43999,\n  \"rts</w>\": 8496,\n  \"rtw</w>\": 34673,\n  \"ru\": 681,\n  \"ru</w>\": 13735,\n  \"rub\": 15862,\n  \"rub</w>\": 22586,\n  \"rubb\": 19597,\n  \"rubbed</w>\": 45239,\n  \"rubber\": 31131,\n  \"rubber</w>\": 11331,\n  \"rubbing</w>\": 41262,\n  \"rubbish</w>\": 21108,\n  \"rubble</w>\": 42230,\n  \"ruben\": 44058,\n  \"ruben</w>\": 29722,\n  \"rubi\": 27856,\n  \"rubin</w>\": 34128,\n  \"rubio</w>\": 24244,\n  \"rubs</w>\": 43422,\n  \"ruby\": 24552,\n  \"ruby</w>\": 11493,\n  \"ruck\": 27449,\n  \"rucker</w>\": 45402,\n  \"rud\": 35256,\n  \"rudd</w>\": 31836,\n  \"rude</w>\": 16548,\n  \"rudi\": 48360,\n  \"rudol\": 40927,\n  \"rudolf</w>\": 46835,\n  \"rudolph</w>\": 30119,\n  \"rudy\": 38226,\n  \"rudy</w>\": 22131,\n  \"rue\": 38024,\n  \"rue</w>\": 19276,\n  \"rufc</w>\": 45084,\n  \"ruff\": 28177,\n  \"ruff</w>\": 30304,\n  \"rufus</w>\": 39322,\n  \"rug\": 4217,\n  \"rug</w>\": 19220,\n  \"rugby\": 15091,\n  \"rugby</w>\": 4964,\n  \"rugbyleague</w>\": 44419,\n  \"ruger</w>\": 48655,\n  \"rugged</w>\": 25225,\n  \"rugs</w>\": 29946,\n  \"rui</w>\": 46974,\n  \"ruin</w>\": 16256,\n  \"ruined</w>\": 17231,\n  \"ruining</w>\": 29952,\n  \"ruins</w>\": 16094,\n  \"ruiz</w>\": 27873,\n  \"ruk</w>\": 46628,\n  \"rukh\": 43075,\n  \"rukh</w>\": 27631,\n  \"rule\": 31643,\n  \"rule</w>\": 6175,\n  \"ruled</w>\": 16324,\n  \"ruler</w>\": 26286,\n  \"rulers</w>\": 45328,\n  \"rules</w>\": 5272,\n  \"ruling</w>\": 14690,\n  \"rum\": 9223,\n  \"rum</w>\": 11233,\n  \"rumb\": 42432,\n  \"rumble</w>\": 18900,\n  \"rumi</w>\": 31428,\n  \"rumor</w>\": 22254,\n  \"rumored</w>\": 36694,\n  \"rumors</w>\": 16160,\n  \"rumour</w>\": 34296,\n  \"rumours</w>\": 20716,\n  \"rump</w>\": 29366,\n  \"run\": 1639,\n  \"run</w>\": 1934,\n  \"runaway</w>\": 28851,\n  \"runchat</w>\": 25838,\n  \"rundown</w>\": 41100,\n  \"rune\": 33882,\n  \"rune</w>\": 49244,\n  \"runner\": 37370,\n  \"runner</w>\": 7913,\n  \"runners</w>\": 10571,\n  \"runnin</w>\": 43130,\n  \"running\": 24451,\n  \"running</w>\": 2761,\n  \"runoff</w>\": 38564,\n  \"runs</w>\": 5586,\n  \"runway</w>\": 13927,\n  \"rup\": 7996,\n  \"rup</w>\": 14980,\n  \"rupaul</w>\": 44211,\n  \"rupee</w>\": 43916,\n  \"rupees</w>\": 44110,\n  \"rupert</w>\": 25625,\n  \"rupt</w>\": 23055,\n  \"ruption</w>\": 35403,\n  \"rural\": 28801,\n  \"rural</w>\": 8737,\n  \"rus\": 35811,\n  \"rus</w>\": 5998,\n  \"rush\": 12148,\n  \"rush</w>\": 6973,\n  \"rushed</w>\": 28104,\n  \"rusher</w>\": 48745,\n  \"rushes</w>\": 47217,\n  \"rushing</w>\": 20284,\n  \"russ\": 6285,\n  \"russ</w>\": 20764,\n  \"russell\": 26122,\n  \"russell</w>\": 8150,\n  \"russi\": 2600,\n  \"russia</w>\": 4018,\n  \"russian\": 30731,\n  \"russian</w>\": 4868,\n  \"russians</w>\": 25413,\n  \"russo</w>\": 30679,\n  \"rust\": 28682,\n  \"rust</w>\": 14212,\n  \"rustic</w>\": 19822,\n  \"rusty\": 43966,\n  \"rusty</w>\": 22646,\n  \"rut\": 14973,\n  \"rut</w>\": 39102,\n  \"rutger\": 49029,\n  \"rutgers</w>\": 28934,\n  \"ruth\": 15798,\n  \"ruth</w>\": 12029,\n  \"ruther\": 26676,\n  \"rutherford</w>\": 31070,\n  \"ruthless</w>\": 36063,\n  \"rutland</w>\": 46024,\n  \"ruto</w>\": 43702,\n  \"ruz</w>\": 23275,\n  \"rv\": 17135,\n  \"rv</w>\": 17951,\n  \"rva</w>\": 24278,\n  \"rw\": 9085,\n  \"rw</w>\": 22926,\n  \"rwa</w>\": 47452,\n  \"rwand\": 31758,\n  \"rwanda</w>\": 15427,\n  \"rwby</w>\": 39698,\n  \"rwc</w>\": 32321,\n  \"rx\": 41188,\n  \"rx</w>\": 15945,\n  \"ry\": 1511,\n  \"ry</w>\": 913,\n  \"ryan\": 8682,\n  \"ryan</w>\": 4053,\n  \"ryanair</w>\": 43526,\n  \"ryder\": 43564,\n  \"ryder</w>\": 21805,\n  \"rye\": 24015,\n  \"rye</w>\": 17409,\n  \"rying</w>\": 7838,\n  \"ryn</w>\": 37728,\n  \"ryo\": 24460,\n  \"rys</w>\": 21654,\n  \"ryu\": 46656,\n  \"ryu</w>\": 34604,\n  \"rÃ©\": 29106,\n  \"s\": 82,\n  \"s</w>\": 338,\n  \"sa\": 774,\n  \"sa</w>\": 1344,\n  \"saa</w>\": 13429,\n  \"saab</w>\": 27158,\n  \"saad</w>\": 36530,\n  \"saas</w>\": 25761,\n  \"saat\": 33151,\n  \"sab\": 3233,\n  \"sab</w>\": 23213,\n  \"saba</w>\": 38344,\n  \"sabah</w>\": 32854,\n  \"saban</w>\": 41620,\n  \"sabar\": 47102,\n  \"sabbath</w>\": 26008,\n  \"sabc</w>\": 30010,\n  \"sabcnews</w>\": 41093,\n  \"saber\": 46822,\n  \"saber</w>\": 25624,\n  \"sabha</w>\": 23431,\n  \"sabi</w>\": 47073,\n  \"sabine</w>\": 44062,\n  \"sable</w>\": 19224,\n  \"sabot\": 30700,\n  \"sabotage</w>\": 40496,\n  \"sabre</w>\": 35110,\n  \"sabres</w>\": 29620,\n  \"sabrin\": 37029,\n  \"sabrina</w>\": 24994,\n  \"sac\": 3632,\n  \"sac</w>\": 12905,\n  \"sach\": 30168,\n  \"sacha</w>\": 49010,\n  \"sachin\": 47527,\n  \"sachin</w>\": 30297,\n  \"sachs</w>\": 31451,\n  \"sack\": 28964,\n  \"sack</w>\": 14979,\n  \"sacked</w>\": 27519,\n  \"sacks</w>\": 26441,\n  \"sacram\": 13334,\n  \"sacramento</w>\": 16065,\n  \"sacred\": 40612,\n  \"sacred</w>\": 12477,\n  \"sacri\": 15283,\n  \"sacrif\": 12117,\n  \"sacrific\": 16919,\n  \"sacrifice</w>\": 12556,\n  \"sacrificed</w>\": 31116,\n  \"sacrifices</w>\": 28858,\n  \"sacrificing</w>\": 48146,\n  \"sad\": 2810,\n  \"sad</w>\": 3719,\n  \"saddened</w>\": 27720,\n  \"saddest</w>\": 34925,\n  \"saddle\": 30469,\n  \"saddle</w>\": 20283,\n  \"sade</w>\": 27429,\n  \"sadh\": 40955,\n  \"sadi\": 22207,\n  \"sadie</w>\": 30333,\n  \"sadiq</w>\": 44107,\n  \"sadler</w>\": 45600,\n  \"sadly</w>\": 11603,\n  \"sadness</w>\": 20399,\n  \"sae\": 38633,\n  \"sae</w>\": 34883,\n  \"saeed</w>\": 29745,\n  \"saf\": 2125,\n  \"saf</w>\": 25760,\n  \"safar\": 23443,\n  \"safari</w>\": 14091,\n  \"safarilive</w>\": 34816,\n  \"safc</w>\": 27998,\n  \"safe\": 2901,\n  \"safe</w>\": 2996,\n  \"safeguard</w>\": 42249,\n  \"safeguarding</w>\": 47451,\n  \"safely</w>\": 11513,\n  \"safer\": 40124,\n  \"safer</w>\": 15504,\n  \"safest</w>\": 38973,\n  \"safety\": 19050,\n  \"safety</w>\": 3406,\n  \"safetyfirst</w>\": 43608,\n  \"saffron</w>\": 27529,\n  \"sag\": 6609,\n  \"sag</w>\": 30048,\n  \"saga</w>\": 15758,\n  \"sagan</w>\": 37193,\n  \"sagar</w>\": 42518,\n  \"sage\": 25800,\n  \"sage</w>\": 7509,\n  \"sages</w>\": 25979,\n  \"sagin\": 47097,\n  \"sagitt\": 44685,\n  \"sagu\": 44708,\n  \"sah\": 30943,\n  \"sah</w>\": 26342,\n  \"saha\": 36062,\n  \"sahara</w>\": 24599,\n  \"saharan</w>\": 44255,\n  \"sahi\": 24608,\n  \"sahib</w>\": 34150,\n  \"sai\": 16048,\n  \"sai</w>\": 10886,\n  \"said\": 40319,\n  \"said</w>\": 1946,\n  \"saif</w>\": 44164,\n  \"saig\": 36328,\n  \"saigon</w>\": 41081,\n  \"sail\": 7528,\n  \"sail</w>\": 12156,\n  \"sailed</w>\": 43047,\n  \"sailing</w>\": 11003,\n  \"sailor\": 28002,\n  \"sailor</w>\": 16076,\n  \"sailormoon</w>\": 40673,\n  \"sailors</w>\": 25355,\n  \"sails</w>\": 27526,\n  \"sain\": 21226,\n  \"sain</w>\": 40378,\n  \"sains\": 24860,\n  \"sainsbury</w>\": 45879,\n  \"sainsburys</w>\": 36934,\n  \"saint\": 11274,\n  \"saint</w>\": 5599,\n  \"saints</w>\": 8769,\n  \"saintsfc</w>\": 31102,\n  \"sair\": 46600,\n  \"sair</w>\": 30971,\n  \"saire</w>\": 28087,\n  \"saison</w>\": 33256,\n  \"sait\": 48008,\n  \"saj\": 33580,\n  \"sak\": 11511,\n  \"sak</w>\": 35900,\n  \"saka</w>\": 33609,\n  \"sake</w>\": 12874,\n  \"sakh</w>\": 43945,\n  \"saki</w>\": 40514,\n  \"saku\": 37550,\n  \"sakura</w>\": 24162,\n  \"sal\": 980,\n  \"sal</w>\": 6126,\n  \"sala</w>\": 17300,\n  \"salaam</w>\": 46773,\n  \"salad</w>\": 6188,\n  \"salads</w>\": 30948,\n  \"salah</w>\": 22516,\n  \"salam\": 19007,\n  \"salam</w>\": 33963,\n  \"salamat</w>\": 44696,\n  \"salami</w>\": 46885,\n  \"salaries</w>\": 33132,\n  \"salary</w>\": 16312,\n  \"salazar</w>\": 45988,\n  \"sale\": 17786,\n  \"sale</w>\": 1690,\n  \"saleh</w>\": 38353,\n  \"salem\": 48194,\n  \"salem</w>\": 16884,\n  \"sales\": 13347,\n  \"sales</w>\": 3765,\n  \"salesforce</w>\": 22680,\n  \"salesman</w>\": 37633,\n  \"salford</w>\": 25629,\n  \"sali\": 15411,\n  \"salim</w>\": 42760,\n  \"salinas</w>\": 41990,\n  \"saline</w>\": 46918,\n  \"salis\": 20667,\n  \"salis</w>\": 39378,\n  \"salisbury</w>\": 24763,\n  \"sall\": 27122,\n  \"sall</w>\": 20883,\n  \"salle</w>\": 23738,\n  \"sally\": 29542,\n  \"sally</w>\": 13349,\n  \"salman\": 13754,\n  \"salman</w>\": 16219,\n  \"salmankhan</w>\": 15177,\n  \"salmon\": 37040,\n  \"salmon</w>\": 9137,\n  \"salom\": 38268,\n  \"salon\": 33916,\n  \"salon</w>\": 11105,\n  \"saloon</w>\": 26038,\n  \"sals</w>\": 16307,\n  \"salsa</w>\": 16442,\n  \"salt\": 12763,\n  \"salt</w>\": 6611,\n  \"salted</w>\": 26313,\n  \"saltlife</w>\": 47809,\n  \"salts</w>\": 40559,\n  \"saltwater</w>\": 43616,\n  \"salty</w>\": 20678,\n  \"salu\": 31711,\n  \"salud</w>\": 46867,\n  \"salut\": 44998,\n  \"salute\": 44908,\n  \"salute</w>\": 9747,\n  \"salutes</w>\": 32762,\n  \"salv\": 8299,\n  \"salvador</w>\": 20874,\n  \"salvage</w>\": 33131,\n  \"salvation</w>\": 19534,\n  \"salvatore</w>\": 38772,\n  \"salz\": 33594,\n  \"salzburg</w>\": 43396,\n  \"sam\": 1644,\n  \"sam</w>\": 3730,\n  \"sama</w>\": 19272,\n  \"samanth\": 11465,\n  \"samantha</w>\": 15466,\n  \"samanthap\": 38266,\n  \"samanthaprabhu</w>\": 38643,\n  \"samar\": 21820,\n  \"samaritan</w>\": 45495,\n  \"samba</w>\": 37190,\n  \"same\": 23062,\n  \"same</w>\": 2208,\n  \"samheughan</w>\": 36255,\n  \"sami\": 48400,\n  \"sami</w>\": 24322,\n  \"sammy\": 31091,\n  \"sammy</w>\": 16758,\n  \"samo\": 30006,\n  \"samoa</w>\": 34932,\n  \"samp\": 31225,\n  \"sample</w>\": 9542,\n  \"sampler</w>\": 40629,\n  \"samples</w>\": 13387,\n  \"sampling</w>\": 19522,\n  \"sampson</w>\": 39983,\n  \"sams</w>\": 44667,\n  \"samson</w>\": 34659,\n  \"samsun\": 47875,\n  \"samsung\": 35369,\n  \"samsung</w>\": 8115,\n  \"samu\": 7646,\n  \"samuel\": 30612,\n  \"samuel</w>\": 12787,\n  \"samurai</w>\": 21739,\n  \"san\": 1489,\n  \"san</w>\": 2223,\n  \"sana</w>\": 19434,\n  \"sanantonio</w>\": 34714,\n  \"sanat\": 29091,\n  \"sanatomy</w>\": 36052,\n  \"sanc\": 7398,\n  \"sance</w>\": 15930,\n  \"sanchez</w>\": 13971,\n  \"sanctioned</w>\": 43032,\n  \"sanctions</w>\": 17790,\n  \"sanctu\": 12712,\n  \"sanctuary</w>\": 14044,\n  \"sand\": 2147,\n  \"sand</w>\": 5094,\n  \"sandal\": 36445,\n  \"sandal</w>\": 42185,\n  \"sandals</w>\": 20731,\n  \"sandalwood</w>\": 47502,\n  \"sandeep</w>\": 46973,\n  \"sander</w>\": 34111,\n  \"sanders</w>\": 10429,\n  \"sanderson</w>\": 36198,\n  \"sandi\": 44249,\n  \"sandiego\": 45997,\n  \"sandiego</w>\": 15793,\n  \"sandman</w>\": 45730,\n  \"sando\": 35921,\n  \"sandoval</w>\": 44157,\n  \"sandra\": 33733,\n  \"sandra</w>\": 13415,\n  \"sandro</w>\": 42389,\n  \"sands</w>\": 5936,\n  \"sandstone</w>\": 36796,\n  \"sandwich\": 17050,\n  \"sandwich</w>\": 8687,\n  \"sandwiches</w>\": 19667,\n  \"sandy\": 29679,\n  \"sandy</w>\": 10355,\n  \"sane</w>\": 23419,\n  \"sanford</w>\": 32330,\n  \"sanfrancisco</w>\": 20254,\n  \"sang\": 13235,\n  \"sang</w>\": 11684,\n  \"sange\": 12466,\n  \"sangria</w>\": 42665,\n  \"sani\": 39137,\n  \"sani</w>\": 34492,\n  \"sanitary</w>\": 33842,\n  \"sanitation</w>\": 25414,\n  \"saniti\": 43987,\n  \"sanity</w>\": 30517,\n  \"sanjay\": 31712,\n  \"sanjay</w>\": 25796,\n  \"sanje\": 40405,\n  \"sanjose</w>\": 45971,\n  \"sank</w>\": 43692,\n  \"sano</w>\": 34053,\n  \"sans</w>\": 16982,\n  \"sansk\": 39689,\n  \"sanskrit</w>\": 48083,\n  \"sant\": 8356,\n  \"sant</w>\": 23120,\n  \"santa\": 22175,\n  \"santa</w>\": 4555,\n  \"santac\": 28876,\n  \"santam\": 45627,\n  \"santana</w>\": 27033,\n  \"santander</w>\": 46476,\n  \"santi\": 13856,\n  \"santiago</w>\": 16568,\n  \"santo\": 29631,\n  \"santo</w>\": 18400,\n  \"santor\": 28448,\n  \"santorini</w>\": 39573,\n  \"santos</w>\": 16582,\n  \"sany\": 47679,\n  \"sao</w>\": 28026,\n  \"sap\": 8089,\n  \"sap</w>\": 11591,\n  \"sapi\": 40016,\n  \"sapp\": 13427,\n  \"sapp</w>\": 40729,\n  \"sapphire</w>\": 22044,\n  \"sar\": 1808,\n  \"sar</w>\": 9424,\n  \"sara\": 37196,\n  \"sara</w>\": 10063,\n  \"sarab\": 40716,\n  \"sarac\": 35722,\n  \"sarah\": 9086,\n  \"sarah</w>\": 5327,\n  \"saraj\": 42592,\n  \"sarajevo</w>\": 48211,\n  \"saras\": 20373,\n  \"sarasota</w>\": 31990,\n  \"sarato\": 24845,\n  \"saratoga</w>\": 29496,\n  \"sarawak</w>\": 47331,\n  \"sarcasm</w>\": 37246,\n  \"sarcastic</w>\": 48639,\n  \"sardar</w>\": 41786,\n  \"sarde\": 43925,\n  \"sardin\": 27383,\n  \"sardinia</w>\": 41025,\n  \"sare\": 13051,\n  \"saree</w>\": 30860,\n  \"sargent</w>\": 34864,\n  \"sari\": 42327,\n  \"sari</w>\": 20261,\n  \"saries</w>\": 47586,\n  \"sarkar</w>\": 30673,\n  \"sarko\": 33658,\n  \"sarkodie</w>\": 42848,\n  \"sarmy</w>\": 20954,\n  \"sart</w>\": 33006,\n  \"sary</w>\": 15398,\n  \"sas\": 3960,\n  \"sas</w>\": 5235,\n  \"sash</w>\": 35656,\n  \"sasha\": 46078,\n  \"sasha</w>\": 20894,\n  \"sasia</w>\": 44751,\n  \"sask\": 47091,\n  \"sask</w>\": 30416,\n  \"saskat\": 17102,\n  \"saskatchewan</w>\": 23899,\n  \"saskatoon</w>\": 31128,\n  \"sass</w>\": 31351,\n  \"sassy</w>\": 20827,\n  \"sat\": 1382,\n  \"sat</w>\": 3279,\n  \"sata</w>\": 41520,\n  \"satan</w>\": 19446,\n  \"satanic</w>\": 38224,\n  \"satchel</w>\": 45908,\n  \"sate</w>\": 35749,\n  \"satell\": 9031,\n  \"satellite</w>\": 10316,\n  \"satellites</w>\": 28483,\n  \"sath\": 29675,\n  \"sathletics</w>\": 30154,\n  \"sati\": 7038,\n  \"satin</w>\": 21803,\n  \"sation</w>\": 23674,\n  \"sations</w>\": 31232,\n  \"satire</w>\": 29875,\n  \"satis\": 9906,\n  \"satisf\": 22941,\n  \"satisfaction</w>\": 19925,\n  \"satisfied</w>\": 18101,\n  \"satisfy</w>\": 29444,\n  \"satisfying</w>\": 23755,\n  \"sato</w>\": 34376,\n  \"satu</w>\": 45283,\n  \"satur\": 1634,\n  \"saturated</w>\": 32466,\n  \"saturday\": 12537,\n  \"saturday</w>\": 1748,\n  \"saturdaymorning</w>\": 29053,\n  \"saturdaymotivation</w>\": 40843,\n  \"saturdays</w>\": 18930,\n  \"saturn</w>\": 17312,\n  \"saty\": 39426,\n  \"sau\": 2096,\n  \"sau</w>\": 19455,\n  \"sauce</w>\": 5520,\n  \"saucer</w>\": 42272,\n  \"sauces</w>\": 40367,\n  \"saucy</w>\": 46684,\n  \"saudi\": 24511,\n  \"saudi</w>\": 8548,\n  \"saudiarabia</w>\": 28680,\n  \"sauer\": 46333,\n  \"saul\": 47623,\n  \"saul</w>\": 23252,\n  \"sault</w>\": 40361,\n  \"sauna</w>\": 35460,\n  \"saunders</w>\": 23794,\n  \"saur</w>\": 13227,\n  \"saura\": 46532,\n  \"saurus</w>\": 22118,\n  \"saus</w>\": 36121,\n  \"sausage</w>\": 11855,\n  \"sausages</w>\": 31593,\n  \"sautÃ©\": 36290,\n  \"sautÃ©ed</w>\": 38517,\n  \"sauvi\": 30116,\n  \"sauvignon</w>\": 32745,\n  \"sav\": 2248,\n  \"sav</w>\": 26533,\n  \"sava</w>\": 40198,\n  \"savag\": 43039,\n  \"savage</w>\": 11859,\n  \"savannah</w>\": 18662,\n  \"save\": 5895,\n  \"save</w>\": 2673,\n  \"saved</w>\": 7137,\n  \"saveour\": 33390,\n  \"saver</w>\": 20987,\n  \"savers</w>\": 31416,\n  \"saves</w>\": 12907,\n  \"savethe\": 18031,\n  \"savi\": 14721,\n  \"saving\": 28498,\n  \"saving</w>\": 6979,\n  \"savings</w>\": 10651,\n  \"savior</w>\": 24762,\n  \"saviour</w>\": 35800,\n  \"savor</w>\": 48071,\n  \"savory</w>\": 32992,\n  \"savoury</w>\": 49071,\n  \"savoy</w>\": 39552,\n  \"savvy</w>\": 29278,\n  \"saw\": 12429,\n  \"saw</w>\": 2425,\n  \"sawa</w>\": 39613,\n  \"sawards</w>\": 29012,\n  \"sawyer</w>\": 27726,\n  \"sax\": 14169,\n  \"sax</w>\": 23766,\n  \"saxon</w>\": 31856,\n  \"saxophon\": 43760,\n  \"saxophone</w>\": 32296,\n  \"say\": 3047,\n  \"say</w>\": 1451,\n  \"saya</w>\": 35170,\n  \"sayang</w>\": 46322,\n  \"sayers</w>\": 44116,\n  \"sayin</w>\": 23662,\n  \"saying</w>\": 4455,\n  \"says</w>\": 1563,\n  \"saz</w>\": 35577,\n  \"sb\": 5576,\n  \"sb</w>\": 4977,\n  \"sba</w>\": 44970,\n  \"sback</w>\": 43840,\n  \"sband</w>\": 27539,\n  \"sbaseball</w>\": 46491,\n  \"sbball</w>\": 39190,\n  \"sbc</w>\": 31404,\n  \"sberg</w>\": 20358,\n  \"sbi</w>\": 41369,\n  \"sbk</w>\": 39211,\n  \"sboro</w>\": 18909,\n  \"sbridge</w>\": 49228,\n  \"sbs</w>\": 18883,\n  \"sbu\": 48075,\n  \"sbu</w>\": 46281,\n  \"sburg</w>\": 7390,\n  \"sburgh</w>\": 48205,\n  \"sbury</w>\": 14081,\n  \"sby\": 26519,\n  \"sby</w>\": 10287,\n  \"sc\": 663,\n  \"sc</w>\": 3219,\n  \"sca</w>\": 11001,\n  \"scab\": 31716,\n  \"scaf\": 28981,\n  \"scafe</w>\": 45574,\n  \"scaffolding</w>\": 41687,\n  \"scal\": 10859,\n  \"scala</w>\": 37997,\n  \"scalable</w>\": 44084,\n  \"scale\": 37817,\n  \"scale</w>\": 5879,\n  \"scaled</w>\": 41923,\n  \"scales</w>\": 22891,\n  \"scaling</w>\": 29116,\n  \"scallo\": 19936,\n  \"scallop</w>\": 39544,\n  \"scallops</w>\": 31430,\n  \"scalp</w>\": 38898,\n  \"scam\": 17620,\n  \"scam</w>\": 13215,\n  \"scamp</w>\": 28451,\n  \"scams</w>\": 34395,\n  \"scan\": 10650,\n  \"scan</w>\": 11261,\n  \"scanada</w>\": 27121,\n  \"scand\": 8110,\n  \"scandal\": 35420,\n  \"scandal</w>\": 11622,\n  \"scandals</w>\": 45490,\n  \"scandin\": 32014,\n  \"scandinavian</w>\": 35661,\n  \"scanned</w>\": 43719,\n  \"scanner</w>\": 24185,\n  \"scanning</w>\": 24092,\n  \"scans</w>\": 31251,\n  \"scap\": 35883,\n  \"scape\": 36005,\n  \"scape</w>\": 12314,\n  \"scapes</w>\": 31933,\n  \"scar\": 4171,\n  \"scar</w>\": 18088,\n  \"scarborough</w>\": 24254,\n  \"scarce</w>\": 38572,\n  \"scarcity</w>\": 45812,\n  \"scare\": 33536,\n  \"scare</w>\": 15920,\n  \"scarec\": 38814,\n  \"scarecrow</w>\": 46504,\n  \"scared</w>\": 9870,\n  \"scares</w>\": 34096,\n  \"scarf</w>\": 13365,\n  \"scari\": 27050,\n  \"scariest</w>\": 37213,\n  \"scarlet</w>\": 20389,\n  \"scarlett</w>\": 28325,\n  \"scars</w>\": 20747,\n  \"scarves</w>\": 29249,\n  \"scary</w>\": 9250,\n  \"scat\": 13899,\n  \"scattered</w>\": 22090,\n  \"scavenger</w>\": 36778,\n  \"scc</w>\": 19458,\n  \"scd</w>\": 48422,\n  \"scen\": 2204,\n  \"scenario</w>\": 20456,\n  \"scenarios</w>\": 31346,\n  \"scence</w>\": 33418,\n  \"scene</w>\": 3562,\n  \"scenery</w>\": 16025,\n  \"scenes</w>\": 5415,\n  \"scenic</w>\": 15394,\n  \"scent\": 36277,\n  \"scent</w>\": 7683,\n  \"scented</w>\": 27190,\n  \"scenter</w>\": 23059,\n  \"scentre</w>\": 39371,\n  \"scents</w>\": 26336,\n  \"scep\": 24439,\n  \"scfc</w>\": 38578,\n  \"sch\": 844,\n  \"sch</w>\": 7542,\n  \"scha\": 42809,\n  \"schaf\": 45588,\n  \"schaft</w>\": 41010,\n  \"schal\": 35568,\n  \"schalke</w>\": 41029,\n  \"schallenge</w>\": 43665,\n  \"schan\": 31328,\n  \"schar\": 15085,\n  \"schat</w>\": 31842,\n  \"schau\": 35830,\n  \"sche\": 3038,\n  \"sche</w>\": 7289,\n  \"schedu\": 4207,\n  \"schedule</w>\": 5521,\n  \"scheduled</w>\": 10986,\n  \"schedules</w>\": 28986,\n  \"scheduling</w>\": 32216,\n  \"scheer</w>\": 26776,\n  \"schel\": 39881,\n  \"schel</w>\": 38569,\n  \"schem\": 17720,\n  \"scheme</w>\": 9024,\n  \"schemes</w>\": 22958,\n  \"schen\": 22738,\n  \"scher\": 21925,\n  \"scher</w>\": 21299,\n  \"schi\": 13731,\n  \"schi</w>\": 24984,\n  \"schicago</w>\": 46230,\n  \"schiff</w>\": 39431,\n  \"schild</w>\": 32148,\n  \"schiz\": 33230,\n  \"schizoph\": 40004,\n  \"schizophre\": 41163,\n  \"schle\": 32022,\n  \"schmid\": 17375,\n  \"schmidt</w>\": 18463,\n  \"schnau\": 45745,\n  \"schnei\": 19941,\n  \"schneider</w>\": 22972,\n  \"schnit\": 40903,\n  \"scho\": 2493,\n  \"schoice</w>\": 23860,\n  \"schol\": 4498,\n  \"scholar\": 7192,\n  \"scholar</w>\": 12830,\n  \"scholarly</w>\": 41065,\n  \"scholars</w>\": 13818,\n  \"scholarship</w>\": 9070,\n  \"scholarships</w>\": 17866,\n  \"scholastic</w>\": 35743,\n  \"schoo\": 20721,\n  \"school\": 6063,\n  \"school</w>\": 1228,\n  \"schooled</w>\": 44722,\n  \"schoolers</w>\": 31455,\n  \"schooling</w>\": 28608,\n  \"schools</w>\": 3513,\n  \"schre\": 47685,\n  \"schri\": 25453,\n  \"schro\": 32381,\n  \"schu\": 11318,\n  \"schubert</w>\": 46939,\n  \"schul\": 14945,\n  \"schultz</w>\": 30308,\n  \"schulz</w>\": 39572,\n  \"schumacher</w>\": 39208,\n  \"schumer</w>\": 25313,\n  \"schur\": 42475,\n  \"schwab</w>\": 47602,\n  \"schwar\": 13985,\n  \"schwartz</w>\": 30617,\n  \"schwarz\": 27074,\n  \"schwarzenegger</w>\": 33860,\n  \"schwe\": 25324,\n  \"sci\": 2267,\n  \"sci</w>\": 8309,\n  \"sciart</w>\": 31704,\n  \"scicom\": 28606,\n  \"scicomm</w>\": 29573,\n  \"scien\": 39261,\n  \"science\": 10201,\n  \"science</w>\": 2497,\n  \"sciencefiction</w>\": 39170,\n  \"sciences</w>\": 11481,\n  \"scienti\": 4338,\n  \"scientific</w>\": 9750,\n  \"scientist</w>\": 11083,\n  \"scientists</w>\": 8045,\n  \"sciento\": 36193,\n  \"scientology</w>\": 44694,\n  \"scifi\": 41862,\n  \"scifi</w>\": 12230,\n  \"scion</w>\": 47208,\n  \"sciss\": 25667,\n  \"scissors</w>\": 30867,\n  \"sciutto</w>\": 44392,\n  \"sclerosis</w>\": 39446,\n  \"sclub</w>\": 20017,\n  \"sco\": 1065,\n  \"sco</w>\": 4763,\n  \"scoe</w>\": 31164,\n  \"scol\": 13599,\n  \"scoll</w>\": 44895,\n  \"scollege</w>\": 39536,\n  \"scom</w>\": 26407,\n  \"scon\": 17163,\n  \"scon</w>\": 29272,\n  \"scones</w>\": 36443,\n  \"sconf</w>\": 39704,\n  \"scoo\": 14199,\n  \"scooby</w>\": 34469,\n  \"scoop</w>\": 13829,\n  \"scoops</w>\": 41360,\n  \"scope</w>\": 7979,\n  \"scopes</w>\": 30328,\n  \"scopic</w>\": 23869,\n  \"scopy</w>\": 20018,\n  \"scor\": 8442,\n  \"score\": 12067,\n  \"score</w>\": 4431,\n  \"scoreboard</w>\": 30104,\n  \"scorecard</w>\": 38128,\n  \"scored</w>\": 6143,\n  \"scoreless</w>\": 33469,\n  \"scorer</w>\": 16572,\n  \"scorers</w>\": 26699,\n  \"scores</w>\": 7039,\n  \"scoring</w>\": 9198,\n  \"scorpi\": 15445,\n  \"scorpio</w>\": 34331,\n  \"scorpion</w>\": 28461,\n  \"scorpions</w>\": 45401,\n  \"scorsese</w>\": 45975,\n  \"scot\": 2496,\n  \"scot</w>\": 9271,\n  \"scotch</w>\": 16687,\n  \"scoti\": 46446,\n  \"scotia</w>\": 27859,\n  \"scotland\": 29174,\n  \"scotland</w>\": 4203,\n  \"scots</w>\": 17260,\n  \"scotsman</w>\": 39612,\n  \"scott\": 7775,\n  \"scott</w>\": 3664,\n  \"scotti\": 6227,\n  \"scottish\": 18039,\n  \"scottish</w>\": 7442,\n  \"scottsdale</w>\": 27817,\n  \"scotty\": 39697,\n  \"scotty</w>\": 26836,\n  \"scotus</w>\": 21720,\n  \"scou\": 44909,\n  \"scoun\": 16110,\n  \"scouncil</w>\": 48787,\n  \"scountry</w>\": 40432,\n  \"scour\": 46172,\n  \"scout\": 32213,\n  \"scout</w>\": 10786,\n  \"scouting</w>\": 19072,\n  \"scouts</w>\": 14837,\n  \"scow\": 27929,\n  \"scowboys</w>\": 31386,\n  \"scp</w>\": 45030,\n  \"scr</w>\": 36131,\n  \"scra\": 11187,\n  \"scrabble</w>\": 39488,\n  \"scram\": 17289,\n  \"scramble</w>\": 32688,\n  \"scrambled</w>\": 39026,\n  \"scran\": 41774,\n  \"scranton</w>\": 45274,\n  \"scrap\": 27950,\n  \"scrap</w>\": 21695,\n  \"scrapbook</w>\": 48733,\n  \"scrapped</w>\": 43325,\n  \"scraps</w>\": 40809,\n  \"scrat\": 9572,\n  \"scratch</w>\": 13258,\n  \"scratched</w>\": 48831,\n  \"scratches</w>\": 46556,\n  \"scratching</w>\": 44617,\n  \"scre\": 1795,\n  \"scream\": 31645,\n  \"scream</w>\": 13239,\n  \"screamed</w>\": 35427,\n  \"screaming</w>\": 12891,\n  \"screams</w>\": 23989,\n  \"screen\": 5351,\n  \"screen</w>\": 3750,\n  \"screened</w>\": 31450,\n  \"screening</w>\": 6688,\n  \"screenings</w>\": 27655,\n  \"screenplay</w>\": 30058,\n  \"screens</w>\": 12689,\n  \"screenshot\": 20637,\n  \"screenshot</w>\": 12646,\n  \"screenshots</w>\": 26783,\n  \"screenshotsaturday</w>\": 21406,\n  \"screenwriter</w>\": 37293,\n  \"screenwriting</w>\": 35465,\n  \"screw\": 25529,\n  \"screw</w>\": 14225,\n  \"screwdriver</w>\": 48748,\n  \"screwed</w>\": 30592,\n  \"screws</w>\": 38292,\n  \"scri\": 2139,\n  \"scrib\": 34259,\n  \"scribe</w>\": 36228,\n  \"scribed</w>\": 38334,\n  \"scricket</w>\": 45947,\n  \"scrim\": 21978,\n  \"scrimmage</w>\": 25216,\n  \"scrip\": 11955,\n  \"script</w>\": 8374,\n  \"scripted</w>\": 40513,\n  \"scription</w>\": 26604,\n  \"scriptions</w>\": 39512,\n  \"scripts</w>\": 20109,\n  \"scripture</w>\": 27186,\n  \"scro\": 30768,\n  \"scroll</w>\": 24160,\n  \"scrolling</w>\": 28889,\n  \"scrolls</w>\": 38113,\n  \"scroo\": 42263,\n  \"scru\": 7589,\n  \"scrub</w>\": 23432,\n  \"scrubs</w>\": 37919,\n  \"scrum</w>\": 29047,\n  \"scrump\": 39791,\n  \"scrumptious</w>\": 40987,\n  \"scrutiny</w>\": 34305,\n  \"scs</w>\": 26853,\n  \"sct</w>\": 39284,\n  \"scu\": 8181,\n  \"scu</w>\": 32135,\n  \"scuba\": 39053,\n  \"scuba</w>\": 20559,\n  \"scubadiving</w>\": 49046,\n  \"scue</w>\": 25955,\n  \"scul\": 4948,\n  \"scully</w>\": 36598,\n  \"sculp\": 6093,\n  \"sculpt</w>\": 45044,\n  \"sculpted</w>\": 41296,\n  \"sculpting</w>\": 44389,\n  \"sculptor</w>\": 29409,\n  \"sculpture</w>\": 8757,\n  \"sculptures</w>\": 20378,\n  \"scum</w>\": 29655,\n  \"scumb\": 44525,\n  \"scup</w>\": 21506,\n  \"scur\": 32742,\n  \"scwx</w>\": 41966,\n  \"scy\": 27471,\n  \"sd\": 3080,\n  \"sd</w>\": 4159,\n  \"sda</w>\": 25548,\n  \"sdale</w>\": 12327,\n  \"sday\": 5902,\n  \"sday</w>\": 1376,\n  \"sdays</w>\": 14491,\n  \"sdc</w>\": 40992,\n  \"sdcc</w>\": 13246,\n  \"sden</w>\": 17241,\n  \"sdf</w>\": 34681,\n  \"sdg</w>\": 20177,\n  \"sdgs</w>\": 16261,\n  \"sdk</w>\": 40015,\n  \"sdlive</w>\": 34561,\n  \"sdn</w>\": 41925,\n  \"sdsu</w>\": 41284,\n  \"se\": 567,\n  \"se</w>\": 611,\n  \"sea\": 5970,\n  \"sea</w>\": 2102,\n  \"seab\": 15728,\n  \"seabir\": 42558,\n  \"seac\": 35626,\n  \"seaf\": 9336,\n  \"seafood</w>\": 12472,\n  \"seag\": 15730,\n  \"seagu\": 38076,\n  \"seagull</w>\": 38858,\n  \"seagulls</w>\": 42215,\n  \"seahawks</w>\": 15341,\n  \"seal\": 21381,\n  \"seal</w>\": 10159,\n  \"sealed</w>\": 13358,\n  \"sealing</w>\": 42992,\n  \"seals</w>\": 18179,\n  \"seam\": 13710,\n  \"seam</w>\": 44201,\n  \"seaman</w>\": 47513,\n  \"seamless</w>\": 29373,\n  \"seamus</w>\": 40175,\n  \"sean\": 11406,\n  \"sean</w>\": 6077,\n  \"seanhannity</w>\": 43316,\n  \"seap\": 29983,\n  \"seaport</w>\": 46418,\n  \"sear\": 1612,\n  \"search\": 23129,\n  \"search</w>\": 1920,\n  \"searched</w>\": 28961,\n  \"searches</w>\": 26378,\n  \"searching</w>\": 10626,\n  \"seared</w>\": 29727,\n  \"sears</w>\": 26693,\n  \"seas\": 7329,\n  \"seas</w>\": 9556,\n  \"seascape</w>\": 42593,\n  \"seaside</w>\": 18867,\n  \"season\": 19288,\n  \"season</w>\": 1367,\n  \"seasonal</w>\": 14215,\n  \"seasoned</w>\": 28399,\n  \"seasoning</w>\": 43439,\n  \"seasons</w>\": 8635,\n  \"seat\": 19670,\n  \"seat</w>\": 4922,\n  \"seated</w>\": 23953,\n  \"seater</w>\": 37543,\n  \"seating</w>\": 16240,\n  \"seats</w>\": 6944,\n  \"seattle\": 24388,\n  \"seattle</w>\": 6274,\n  \"seau</w>\": 32263,\n  \"seaw\": 32658,\n  \"seaweed</w>\": 30204,\n  \"seaworld</w>\": 27422,\n  \"seb\": 35766,\n  \"seb</w>\": 25171,\n  \"sebasti\": 10324,\n  \"sebastian\": 43792,\n  \"sebastian</w>\": 13181,\n  \"sebring</w>\": 41086,\n  \"sec\": 2875,\n  \"sec</w>\": 5338,\n  \"seca</w>\": 37847,\n  \"secco</w>\": 27394,\n  \"sece\": 46297,\n  \"seclu\": 42392,\n  \"secon\": 1846,\n  \"second\": 9329,\n  \"second</w>\": 2241,\n  \"secondary</w>\": 13107,\n  \"seconds</w>\": 6541,\n  \"secre\": 2460,\n  \"secret\": 20710,\n  \"secret</w>\": 4145,\n  \"secretari\": 29515,\n  \"secretariat</w>\": 31767,\n  \"secretary</w>\": 6552,\n  \"secretly</w>\": 21400,\n  \"secrets</w>\": 9735,\n  \"secs</w>\": 28665,\n  \"sect</w>\": 15772,\n  \"section\": 34986,\n  \"section</w>\": 4853,\n  \"sectional</w>\": 21876,\n  \"sections</w>\": 20061,\n  \"sector</w>\": 6579,\n  \"sectors</w>\": 22173,\n  \"secu\": 4894,\n  \"secular\": 47483,\n  \"secular</w>\": 27560,\n  \"secur\": 2557,\n  \"secure\": 44763,\n  \"secure</w>\": 7515,\n  \"secured</w>\": 16848,\n  \"secures</w>\": 31567,\n  \"securing</w>\": 24759,\n  \"securities</w>\": 25080,\n  \"security\": 31245,\n  \"security</w>\": 2741,\n  \"sed\": 14034,\n  \"sed</w>\": 1252,\n  \"sedan</w>\": 24237,\n  \"sedg\": 46926,\n  \"sedge</w>\": 45288,\n  \"sedi\": 29269,\n  \"sedly</w>\": 31771,\n  \"sedona</w>\": 46862,\n  \"seduc\": 19933,\n  \"seductive</w>\": 43721,\n  \"see\": 1751,\n  \"see</w>\": 862,\n  \"seed\": 14064,\n  \"seed</w>\": 6488,\n  \"seeded</w>\": 33688,\n  \"seeding</w>\": 40050,\n  \"seedlings</w>\": 47933,\n  \"seeds</w>\": 9128,\n  \"seeing</w>\": 3214,\n  \"seek</w>\": 8839,\n  \"seeker</w>\": 28011,\n  \"seekers</w>\": 20732,\n  \"seeking</w>\": 8592,\n  \"seeks</w>\": 12594,\n  \"seem\": 20043,\n  \"seem</w>\": 7523,\n  \"seemed</w>\": 17240,\n  \"seemingly</w>\": 25917,\n  \"seems</w>\": 4453,\n  \"seen\": 36273,\n  \"seen</w>\": 2041,\n  \"seer</w>\": 32486,\n  \"sees</w>\": 7594,\n  \"seeyou\": 41279,\n  \"sef</w>\": 27453,\n  \"seg\": 10551,\n  \"sega</w>\": 16122,\n  \"segment</w>\": 15615,\n  \"segments</w>\": 43053,\n  \"segreg\": 49117,\n  \"segregation</w>\": 39086,\n  \"segu\": 33156,\n  \"segun\": 43087,\n  \"seh\": 27536,\n  \"seh</w>\": 41430,\n  \"sehun</w>\": 17705,\n  \"sei\": 13130,\n  \"sei</w>\": 15907,\n  \"sein</w>\": 24669,\n  \"seine</w>\": 41378,\n  \"seinfeld</w>\": 33706,\n  \"seis\": 25559,\n  \"seismic</w>\": 38459,\n  \"seiz\": 22171,\n  \"seize</w>\": 26624,\n  \"seized</w>\": 15826,\n  \"seizure</w>\": 36804,\n  \"seizures</w>\": 47199,\n  \"sek\": 45515,\n  \"sek</w>\": 25880,\n  \"sel\": 1000,\n  \"sel</w>\": 4098,\n  \"sela</w>\": 47006,\n  \"selamat</w>\": 37692,\n  \"selangor</w>\": 44402,\n  \"selby</w>\": 43546,\n  \"selca</w>\": 38606,\n  \"selcaday</w>\": 35924,\n  \"seldom</w>\": 48322,\n  \"sele\": 29137,\n  \"selec\": 3014,\n  \"select</w>\": 8690,\n  \"selected</w>\": 6881,\n  \"selecting</w>\": 32696,\n  \"selection</w>\": 6724,\n  \"selections</w>\": 24099,\n  \"selective</w>\": 28686,\n  \"selects</w>\": 32902,\n  \"selen\": 19970,\n  \"selena</w>\": 14677,\n  \"selenagomez</w>\": 27653,\n  \"seley</w>\": 30556,\n  \"self\": 10139,\n  \"self</w>\": 1322,\n  \"selfcare</w>\": 39560,\n  \"selfi\": 3007,\n  \"selfie\": 26735,\n  \"selfie</w>\": 3666,\n  \"selfies\": 46058,\n  \"selfies</w>\": 10050,\n  \"selfish</w>\": 26907,\n  \"selfless</w>\": 34236,\n  \"sell\": 10279,\n  \"sell</w>\": 5119,\n  \"seller</w>\": 11779,\n  \"sellers</w>\": 16562,\n  \"selling</w>\": 4396,\n  \"sells</w>\": 14306,\n  \"selma</w>\": 36652,\n  \"sels</w>\": 42070,\n  \"selves</w>\": 4505,\n  \"sely</w>\": 8402,\n  \"sem\": 8645,\n  \"sem</w>\": 17106,\n  \"sema</w>\": 31816,\n  \"seman\": 29119,\n  \"seman</w>\": 28378,\n  \"semana</w>\": 41780,\n  \"semb\": 36054,\n  \"seme\": 10855,\n  \"sement</w>\": 10714,\n  \"sements</w>\": 31449,\n  \"semester</w>\": 11905,\n  \"semi\": 11023,\n  \"semi</w>\": 6684,\n  \"semic\": 26967,\n  \"semicon\": 34315,\n  \"semiconduc\": 35646,\n  \"semiconductor</w>\": 43551,\n  \"semifinal</w>\": 22935,\n  \"semifinals</w>\": 21863,\n  \"semin\": 5595,\n  \"seminar</w>\": 7269,\n  \"seminars</w>\": 34870,\n  \"seminary</w>\": 31655,\n  \"seminole</w>\": 42956,\n  \"semis</w>\": 24013,\n  \"semit\": 22628,\n  \"semite</w>\": 23721,\n  \"semitic</w>\": 34894,\n  \"semitism</w>\": 25911,\n  \"semper\": 47391,\n  \"sen\": 1057,\n  \"sen</w>\": 2249,\n  \"sena</w>\": 21584,\n  \"senate\": 30703,\n  \"senate</w>\": 6843,\n  \"senator\": 20871,\n  \"senator</w>\": 8495,\n  \"senators</w>\": 16889,\n  \"send\": 27684,\n  \"send</w>\": 3625,\n  \"sending</w>\": 6985,\n  \"sends</w>\": 10817,\n  \"sene\": 25269,\n  \"seneca</w>\": 33419,\n  \"senegal</w>\": 28255,\n  \"senew\": 49313,\n  \"seng\": 43022,\n  \"seng</w>\": 29971,\n  \"senior\": 19865,\n  \"senior</w>\": 3415,\n  \"seniors</w>\": 8138,\n  \"senna</w>\": 36195,\n  \"senpai</w>\": 46562,\n  \"sens\": 5218,\n  \"sens</w>\": 22837,\n  \"sensation</w>\": 19383,\n  \"sensational</w>\": 23051,\n  \"sense\": 29162,\n  \"sense</w>\": 4747,\n  \"sensei</w>\": 36158,\n  \"senses</w>\": 21809,\n  \"sensi\": 38802,\n  \"sensible</w>\": 30635,\n  \"sensing</w>\": 29236,\n  \"sensiti\": 20531,\n  \"sensitive</w>\": 13734,\n  \"sensitivity</w>\": 27788,\n  \"sensor</w>\": 15330,\n  \"sensors</w>\": 20356,\n  \"sensory</w>\": 21831,\n  \"sensu\": 28157,\n  \"sensual</w>\": 40860,\n  \"sent\": 6200,\n  \"sent</w>\": 3676,\n  \"sentence</w>\": 12737,\n  \"sentenced</w>\": 17773,\n  \"sentences</w>\": 25858,\n  \"sentencing</w>\": 34394,\n  \"senti\": 19042,\n  \"sentim\": 25102,\n  \"sentiment</w>\": 25949,\n  \"sentimental</w>\": 40070,\n  \"sentiments</w>\": 47450,\n  \"sentin\": 20042,\n  \"sentinel</w>\": 23123,\n  \"senting</w>\": 3924,\n  \"seo\": 24743,\n  \"seo</w>\": 8622,\n  \"seok\": 34697,\n  \"seok</w>\": 22482,\n  \"seokjin</w>\": 45584,\n  \"seoul</w>\": 13253,\n  \"sep\": 3212,\n  \"sep</w>\": 10434,\n  \"separ\": 6859,\n  \"separate</w>\": 13886,\n  \"separated</w>\": 22163,\n  \"separately</w>\": 41904,\n  \"separates</w>\": 45365,\n  \"separati\": 39377,\n  \"separating</w>\": 43480,\n  \"separation</w>\": 22007,\n  \"sephora</w>\": 38414,\n  \"sepsis</w>\": 40205,\n  \"sept</w>\": 5380,\n  \"septe\": 3672,\n  \"september</w>\": 3707,\n  \"septic</w>\": 34690,\n  \"sepul\": 47360,\n  \"seq</w>\": 44379,\n  \"sequ\": 5491,\n  \"seque\": 44662,\n  \"sequel</w>\": 15701,\n  \"sequence</w>\": 18833,\n  \"sequences</w>\": 47306,\n  \"sequencing</w>\": 33484,\n  \"sequo\": 32781,\n  \"sequoia</w>\": 42404,\n  \"ser\": 803,\n  \"ser</w>\": 2771,\n  \"sera</w>\": 28250,\n  \"serbia</w>\": 19038,\n  \"serbian</w>\": 33687,\n  \"sere\": 35770,\n  \"seren\": 7880,\n  \"serena</w>\": 19519,\n  \"serenawilliams</w>\": 48316,\n  \"serendip\": 45805,\n  \"serendipity</w>\": 49386,\n  \"serene</w>\": 28269,\n  \"serenity</w>\": 24187,\n  \"serge\": 13477,\n  \"serge</w>\": 35700,\n  \"sergeant</w>\": 22049,\n  \"sergei</w>\": 39870,\n  \"sergey</w>\": 35390,\n  \"sergi\": 47675,\n  \"sergio</w>\": 18359,\n  \"seri\": 2763,\n  \"seri</w>\": 37509,\n  \"serial</w>\": 14216,\n  \"serie</w>\": 19752,\n  \"seriea</w>\": 32660,\n  \"series</w>\": 1857,\n  \"serious\": 47421,\n  \"serious</w>\": 4770,\n  \"seriously</w>\": 4885,\n  \"sermon</w>\": 24884,\n  \"sero\": 48883,\n  \"serpent\": 37084,\n  \"serpent</w>\": 35364,\n  \"serra</w>\": 39851,\n  \"serrano</w>\": 44236,\n  \"sers</w>\": 13509,\n  \"serum</w>\": 25385,\n  \"serv\": 1297,\n  \"serv</w>\": 24571,\n  \"servant</w>\": 20810,\n  \"servants</w>\": 29652,\n  \"serve\": 39202,\n  \"serve</w>\": 2838,\n  \"served</w>\": 4740,\n  \"server\": 36458,\n  \"server</w>\": 8398,\n  \"serverless</w>\": 49243,\n  \"servers</w>\": 22262,\n  \"serves</w>\": 9915,\n  \"servic\": 27115,\n  \"service\": 21496,\n  \"service</w>\": 2086,\n  \"serviced</w>\": 44687,\n  \"services</w>\": 3100,\n  \"servicing</w>\": 41300,\n  \"serving</w>\": 5722,\n  \"sery</w>\": 14279,\n  \"ses\": 23708,\n  \"ses</w>\": 1386,\n  \"sesame</w>\": 21706,\n  \"sese</w>\": 37128,\n  \"sesh</w>\": 24274,\n  \"session</w>\": 2550,\n  \"sessions</w>\": 6327,\n  \"set\": 7965,\n  \"set</w>\": 1167,\n  \"setback</w>\": 43605,\n  \"seth\": 20005,\n  \"seth</w>\": 11870,\n  \"sethu\": 38933,\n  \"setlist</w>\": 33141,\n  \"seton</w>\": 43799,\n  \"sets</w>\": 4650,\n  \"sett\": 4984,\n  \"sett</w>\": 17567,\n  \"sette</w>\": 14613,\n  \"setter</w>\": 23153,\n  \"settes</w>\": 44145,\n  \"setti</w>\": 45170,\n  \"setting</w>\": 5264,\n  \"settings</w>\": 18628,\n  \"settle</w>\": 15075,\n  \"settled</w>\": 18310,\n  \"settlement</w>\": 16494,\n  \"settlements</w>\": 36605,\n  \"settlers</w>\": 35671,\n  \"settles</w>\": 41498,\n  \"settling</w>\": 22036,\n  \"setup</w>\": 11092,\n  \"seu</w>\": 31539,\n  \"seul\": 48975,\n  \"seum</w>\": 18838,\n  \"seun\": 24209,\n  \"seung\": 32393,\n  \"seung</w>\": 33711,\n  \"seungri</w>\": 41627,\n  \"seuss</w>\": 34441,\n  \"sev\": 26585,\n  \"sev</w>\": 37600,\n  \"seva</w>\": 42604,\n  \"seve\": 21458,\n  \"seve</w>\": 22468,\n  \"sevel\": 17439,\n  \"seven\": 7874,\n  \"seven</w>\": 5757,\n  \"sevens</w>\": 29911,\n  \"sevent\": 43048,\n  \"seventeen</w>\": 19337,\n  \"seventh</w>\": 17568,\n  \"seventy</w>\": 47170,\n  \"sever\": 3250,\n  \"sever</w>\": 45557,\n  \"several</w>\": 5560,\n  \"severance</w>\": 26194,\n  \"severe</w>\": 6215,\n  \"severely</w>\": 24417,\n  \"severn</w>\": 34626,\n  \"severy\": 34207,\n  \"sevilla</w>\": 24947,\n  \"seville</w>\": 34988,\n  \"sew</w>\": 28640,\n  \"sewage</w>\": 32777,\n  \"sewer</w>\": 28294,\n  \"sewing</w>\": 15974,\n  \"sewn</w>\": 42118,\n  \"sex\": 3548,\n  \"sex</w>\": 5937,\n  \"sexi\": 20562,\n  \"sexiest</w>\": 25426,\n  \"sexism</w>\": 32059,\n  \"sexist</w>\": 33047,\n  \"sexu\": 14741,\n  \"sexual</w>\": 6749,\n  \"sexuality</w>\": 21244,\n  \"sexually</w>\": 23032,\n  \"sexy\": 21019,\n  \"sexy</w>\": 38127,\n  \"sey\": 6317,\n  \"sey</w>\": 2258,\n  \"seychel\": 36809,\n  \"seychelles</w>\": 38519,\n  \"seye</w>\": 35604,\n  \"seym\": 22657,\n  \"seymour</w>\": 25850,\n  \"seys</w>\": 15081,\n  \"sez</w>\": 42377,\n  \"seÃ±\": 43368,\n  \"sf\": 4435,\n  \"sf</w>\": 4915,\n  \"sfa</w>\": 32675,\n  \"sfam</w>\": 37649,\n  \"sfb</w>\": 27930,\n  \"sfc</w>\": 14129,\n  \"sfest</w>\": 49024,\n  \"sff</w>\": 42056,\n  \"sfgiants</w>\": 20923,\n  \"sfield</w>\": 11801,\n  \"sfo</w>\": 39182,\n  \"sfootball</w>\": 45259,\n  \"sfor\": 9115,\n  \"sford</w>\": 28917,\n  \"sforsale</w>\": 28888,\n  \"sfw</w>\": 18073,\n  \"sfx</w>\": 37995,\n  \"sg\": 9599,\n  \"sg</w>\": 7611,\n  \"sga</w>\": 33049,\n  \"sgate</w>\": 27558,\n  \"sgh</w>\": 47590,\n  \"sgo\": 5393,\n  \"sgo</w>\": 21044,\n  \"sgt</w>\": 13748,\n  \"sh\": 552,\n  \"sh</w>\": 849,\n  \"sha\": 1514,\n  \"sha</w>\": 3337,\n  \"shaa</w>\": 44221,\n  \"shab\": 8323,\n  \"shabbat</w>\": 38042,\n  \"shabby</w>\": 28838,\n  \"shack\": 23866,\n  \"shack</w>\": 18785,\n  \"shad\": 3182,\n  \"shad</w>\": 23874,\n  \"shade\": 34554,\n  \"shade</w>\": 10097,\n  \"shaded</w>\": 43506,\n  \"shades\": 46608,\n  \"shades</w>\": 9270,\n  \"shadesof\": 45180,\n  \"shading</w>\": 37348,\n  \"shado\": 9325,\n  \"shadow\": 15243,\n  \"shadow</w>\": 7068,\n  \"shadowhun\": 19931,\n  \"shadowhunters</w>\": 24834,\n  \"shadowing</w>\": 46092,\n  \"shadows</w>\": 12971,\n  \"shady</w>\": 22158,\n  \"shaf\": 12032,\n  \"shaft</w>\": 21545,\n  \"shag\": 22439,\n  \"shaggy</w>\": 42662,\n  \"shah\": 13203,\n  \"shah</w>\": 8439,\n  \"shahe\": 23643,\n  \"shaheed</w>\": 30060,\n  \"shaheer</w>\": 43969,\n  \"shahi</w>\": 46972,\n  \"shahid\": 25696,\n  \"shahid</w>\": 27138,\n  \"shahidkapoor</w>\": 29892,\n  \"shahzad</w>\": 45915,\n  \"shai</w>\": 47941,\n  \"shaikh</w>\": 45712,\n  \"shail\": 37603,\n  \"shair</w>\": 43135,\n  \"shak\": 8385,\n  \"shake\": 8206,\n  \"shake</w>\": 8251,\n  \"shaken</w>\": 38237,\n  \"shaker</w>\": 26210,\n  \"shakers</w>\": 38411,\n  \"shakes</w>\": 19668,\n  \"shakespe\": 9890,\n  \"shakespeare\": 22499,\n  \"shakespeare</w>\": 12488,\n  \"shakespearesunday</w>\": 32320,\n  \"shaking</w>\": 19101,\n  \"shakira</w>\": 40795,\n  \"shakti\": 48593,\n  \"shakti</w>\": 32458,\n  \"shakur</w>\": 48915,\n  \"shal\": 15056,\n  \"shal</w>\": 28175,\n  \"shale</w>\": 32864,\n  \"shall</w>\": 4742,\n  \"shallow</w>\": 23730,\n  \"shalom</w>\": 31339,\n  \"sham\": 6453,\n  \"sham</w>\": 9005,\n  \"shaman</w>\": 48727,\n  \"shambles</w>\": 40799,\n  \"shame\": 14776,\n  \"shame</w>\": 7593,\n  \"shameful</w>\": 28283,\n  \"shameless</w>\": 25380,\n  \"shaming</w>\": 40553,\n  \"shampoo</w>\": 23944,\n  \"shamrock</w>\": 34199,\n  \"shan\": 5171,\n  \"shan</w>\": 8834,\n  \"shana</w>\": 44835,\n  \"shand\": 29101,\n  \"shane\": 26863,\n  \"shane</w>\": 11572,\n  \"shang\": 11141,\n  \"shanghai</w>\": 12742,\n  \"shani\": 46665,\n  \"shank</w>\": 24685,\n  \"shankar</w>\": 24108,\n  \"shann\": 9932,\n  \"shannon\": 22842,\n  \"shannon</w>\": 13581,\n  \"shant\": 36610,\n  \"shap\": 5581,\n  \"shape\": 26925,\n  \"shape</w>\": 6448,\n  \"shaped</w>\": 10127,\n  \"shapes</w>\": 15377,\n  \"shaping</w>\": 18632,\n  \"shapiro</w>\": 32110,\n  \"shaq\": 46402,\n  \"shaq</w>\": 26843,\n  \"shar\": 1669,\n  \"shar</w>\": 36542,\n  \"shara</w>\": 48849,\n  \"sharapo\": 36489,\n  \"sharapova</w>\": 36671,\n  \"shard</w>\": 42207,\n  \"share\": 7585,\n  \"share</w>\": 1978,\n  \"shared</w>\": 5368,\n  \"shareholder</w>\": 38241,\n  \"shareholders</w>\": 34778,\n  \"sharepoint</w>\": 39213,\n  \"shares</w>\": 4974,\n  \"sharethe\": 49277,\n  \"shareyour\": 45890,\n  \"shari\": 27738,\n  \"shari</w>\": 47390,\n  \"sharia</w>\": 37244,\n  \"sharif</w>\": 15501,\n  \"sharing</w>\": 3567,\n  \"sharjah</w>\": 33420,\n  \"shark\": 15836,\n  \"shark</w>\": 7980,\n  \"sharks</w>\": 10047,\n  \"sharkweek</w>\": 39571,\n  \"sharma</w>\": 10105,\n  \"sharon\": 28722,\n  \"sharon</w>\": 14138,\n  \"sharp\": 17126,\n  \"sharp</w>\": 8157,\n  \"sharpe</w>\": 34374,\n  \"sharpen\": 41465,\n  \"sharpie</w>\": 46858,\n  \"sharply</w>\": 37185,\n  \"shasta</w>\": 46727,\n  \"shat\": 12169,\n  \"shat</w>\": 44388,\n  \"shatter</w>\": 45008,\n  \"shattered</w>\": 26820,\n  \"shau\": 13750,\n  \"shaun\": 23446,\n  \"shaun</w>\": 16669,\n  \"shav\": 11410,\n  \"shave</w>\": 17735,\n  \"shaved</w>\": 25571,\n  \"shaving</w>\": 24261,\n  \"shaw\": 6122,\n  \"shaw</w>\": 6805,\n  \"shawa</w>\": 46413,\n  \"shawl</w>\": 35132,\n  \"shawn\": 16677,\n  \"shawn</w>\": 10970,\n  \"shawnee</w>\": 48060,\n  \"shawnmendes</w>\": 27277,\n  \"shawty</w>\": 38026,\n  \"shay\": 10778,\n  \"shay</w>\": 18361,\n  \"shaykh</w>\": 47223,\n  \"shaz\": 18618,\n  \"shazam</w>\": 29063,\n  \"shc</w>\": 43419,\n  \"shd</w>\": 37729,\n  \"she\": 1729,\n  \"she</w>\": 1043,\n  \"shea</w>\": 20407,\n  \"shead\": 44287,\n  \"shead</w>\": 20434,\n  \"shealth\": 41743,\n  \"shealth</w>\": 22197,\n  \"shear\": 27974,\n  \"shear</w>\": 32108,\n  \"shearer</w>\": 40505,\n  \"sheath</w>\": 45637,\n  \"shed\": 16586,\n  \"shed</w>\": 1492,\n  \"shedding</w>\": 33608,\n  \"sheds</w>\": 25921,\n  \"shee\": 23450,\n  \"shee</w>\": 34321,\n  \"sheed</w>\": 26105,\n  \"sheehan</w>\": 41809,\n  \"sheen</w>\": 25025,\n  \"sheep\": 23604,\n  \"sheep</w>\": 9629,\n  \"sheer</w>\": 17577,\n  \"sheeran</w>\": 18561,\n  \"sheet</w>\": 7298,\n  \"sheets</w>\": 12744,\n  \"shef\": 8237,\n  \"sheff\": 38844,\n  \"sheff</w>\": 43821,\n  \"sheffiel\": 26940,\n  \"sheffield\": 41763,\n  \"sheffield</w>\": 10420,\n  \"sheffieldissuper</w>\": 33628,\n  \"sheh\": 31667,\n  \"sheikh</w>\": 15031,\n  \"sheil\": 42765,\n  \"sheila</w>\": 25734,\n  \"shek</w>\": 33285,\n  \"shel\": 3159,\n  \"shelby\": 36906,\n  \"shelby</w>\": 16885,\n  \"sheldon</w>\": 25079,\n  \"shelf</w>\": 10955,\n  \"shell\": 23374,\n  \"shell</w>\": 6648,\n  \"shelley</w>\": 22497,\n  \"shelling</w>\": 43166,\n  \"shells</w>\": 19265,\n  \"shelly</w>\": 37461,\n  \"shelter</w>\": 8599,\n  \"sheltered</w>\": 48070,\n  \"shelters</w>\": 24312,\n  \"shelton</w>\": 24471,\n  \"shelves</w>\": 16225,\n  \"shem</w>\": 40299,\n  \"shen\": 10154,\n  \"shen</w>\": 31098,\n  \"shenan\": 20965,\n  \"shenando\": 44666,\n  \"shenanigans</w>\": 26590,\n  \"shenko</w>\": 39751,\n  \"shenmue</w>\": 48279,\n  \"shenzhen</w>\": 38970,\n  \"shep\": 33757,\n  \"shep</w>\": 44857,\n  \"shepard</w>\": 26810,\n  \"shepher\": 11008,\n  \"shepherd</w>\": 13242,\n  \"shepherds</w>\": 42792,\n  \"sheppard</w>\": 37304,\n  \"sher\": 3570,\n  \"sher</w>\": 4510,\n  \"sheraton</w>\": 39400,\n  \"shere</w>\": 21507,\n  \"sheri\": 9235,\n  \"sheridan</w>\": 27085,\n  \"sheriff</w>\": 10309,\n  \"sherlock</w>\": 17294,\n  \"sherman</w>\": 17822,\n  \"sherry\": 44348,\n  \"sherry</w>\": 24689,\n  \"shers</w>\": 14141,\n  \"sherwood</w>\": 24527,\n  \"sheryl</w>\": 39773,\n  \"shes\": 45514,\n  \"shes</w>\": 2502,\n  \"shet\": 15850,\n  \"shetland</w>\": 29595,\n  \"shetty</w>\": 25533,\n  \"shev\": 45182,\n  \"sheva</w>\": 45132,\n  \"shh</w>\": 35025,\n  \"shhh</w>\": 36932,\n  \"shi\": 823,\n  \"shi</w>\": 3533,\n  \"shia</w>\": 23791,\n  \"shibu\": 36177,\n  \"shibuya</w>\": 41623,\n  \"shie</w>\": 26638,\n  \"shiel\": 33413,\n  \"shield</w>\": 8670,\n  \"shields</w>\": 19085,\n  \"shies</w>\": 35312,\n  \"shif\": 35317,\n  \"shift\": 43767,\n  \"shift</w>\": 6905,\n  \"shifted</w>\": 34429,\n  \"shifter</w>\": 48944,\n  \"shifting</w>\": 21992,\n  \"shifts</w>\": 23957,\n  \"shik</w>\": 36980,\n  \"shil\": 14370,\n  \"shill\": 32121,\n  \"shill</w>\": 30090,\n  \"shilpa\": 47062,\n  \"shilpa</w>\": 40690,\n  \"shim\": 11986,\n  \"shim</w>\": 32780,\n  \"shima</w>\": 14382,\n  \"shimano</w>\": 48904,\n  \"shimi</w>\": 40517,\n  \"shimmer</w>\": 38792,\n  \"shin\": 5664,\n  \"shin</w>\": 11784,\n  \"shinde</w>\": 41516,\n  \"shine\": 17582,\n  \"shine</w>\": 3780,\n  \"shinee</w>\": 19660,\n  \"shines</w>\": 16015,\n  \"shing\": 38641,\n  \"shing</w>\": 1743,\n  \"shining</w>\": 10485,\n  \"shino\": 43074,\n  \"shiny</w>\": 12190,\n  \"ship\": 7645,\n  \"ship</w>\": 1158,\n  \"shipment</w>\": 28553,\n  \"shipp\": 34709,\n  \"shipped</w>\": 15279,\n  \"shippers</w>\": 44789,\n  \"shipping</w>\": 5721,\n  \"ships</w>\": 3262,\n  \"shipwreck</w>\": 48878,\n  \"shipy\": 26828,\n  \"shipyard</w>\": 31273,\n  \"shir\": 1956,\n  \"shiraz</w>\": 35618,\n  \"shire\": 11975,\n  \"shire</w>\": 2968,\n  \"shirehour</w>\": 32456,\n  \"shirley</w>\": 18189,\n  \"shiro</w>\": 26048,\n  \"shirt\": 27576,\n  \"shirt</w>\": 2523,\n  \"shirtless</w>\": 28959,\n  \"shirts</w>\": 5803,\n  \"shistory</w>\": 34979,\n  \"shiv\": 18042,\n  \"shiv</w>\": 37121,\n  \"shiva\": 33881,\n  \"shiva</w>\": 21174,\n  \"shka</w>\": 38944,\n  \"shld</w>\": 49359,\n  \"shma</w>\": 48074,\n  \"shment</w>\": 8802,\n  \"shments</w>\": 18822,\n  \"sho\": 719,\n  \"sho</w>\": 13756,\n  \"shock\": 19617,\n  \"shock</w>\": 8736,\n  \"shocked</w>\": 15787,\n  \"shocker</w>\": 37971,\n  \"shockey</w>\": 22258,\n  \"shocking</w>\": 13394,\n  \"shocks</w>\": 31886,\n  \"shoe\": 16308,\n  \"shoe</w>\": 7342,\n  \"shoes\": 49391,\n  \"shoes</w>\": 4079,\n  \"shol\": 21472,\n  \"sholm</w>\": 44139,\n  \"shome</w>\": 42701,\n  \"shon\": 19526,\n  \"shon</w>\": 37621,\n  \"shone</w>\": 47173,\n  \"shoo\": 1975,\n  \"shook</w>\": 20730,\n  \"shoops</w>\": 29956,\n  \"shoot\": 12531,\n  \"shoot</w>\": 3704,\n  \"shooter</w>\": 13645,\n  \"shooters</w>\": 31902,\n  \"shooting</w>\": 3992,\n  \"shootings</w>\": 26753,\n  \"shootout</w>\": 20666,\n  \"shoots</w>\": 14144,\n  \"shop\": 5738,\n  \"shop</w>\": 1557,\n  \"shopify</w>\": 47949,\n  \"shoplocal</w>\": 21775,\n  \"shopp\": 38486,\n  \"shoppe</w>\": 38236,\n  \"shopped</w>\": 28088,\n  \"shopper</w>\": 24346,\n  \"shoppers</w>\": 22316,\n  \"shopping\": 42101,\n  \"shopping</w>\": 4266,\n  \"shops</w>\": 6467,\n  \"shopsmall</w>\": 35942,\n  \"shor\": 3209,\n  \"shore\": 14717,\n  \"shore</w>\": 5928,\n  \"shored\": 33140,\n  \"shoreditch</w>\": 35042,\n  \"shoreline</w>\": 34807,\n  \"shores</w>\": 18102,\n  \"short\": 6803,\n  \"short</w>\": 3005,\n  \"shortage</w>\": 19910,\n  \"shortages</w>\": 38730,\n  \"shortcuts</w>\": 45793,\n  \"shorten</w>\": 41711,\n  \"shorter</w>\": 20350,\n  \"shortest</w>\": 33717,\n  \"shortfilm</w>\": 37204,\n  \"shorth\": 37397,\n  \"shortlist</w>\": 28163,\n  \"shortlisted</w>\": 20631,\n  \"shortly</w>\": 11967,\n  \"shorts</w>\": 9680,\n  \"shorty</w>\": 33502,\n  \"shot\": 9805,\n  \"shot</w>\": 2000,\n  \"shotel</w>\": 42365,\n  \"shotgun</w>\": 21643,\n  \"shots</w>\": 5342,\n  \"shou\": 3890,\n  \"shoul\": 29847,\n  \"should\": 14947,\n  \"should</w>\": 1535,\n  \"shoulder</w>\": 8476,\n  \"shoulders</w>\": 18738,\n  \"shouldn</w>\": 9416,\n  \"shour</w>\": 20025,\n  \"shouse</w>\": 28671,\n  \"shout\": 7335,\n  \"shout</w>\": 5214,\n  \"shouted</w>\": 44397,\n  \"shouting</w>\": 26464,\n  \"shoutout</w>\": 8274,\n  \"shouts</w>\": 26709,\n  \"shovel</w>\": 31778,\n  \"show\": 2133,\n  \"show</w>\": 1080,\n  \"showbiz</w>\": 34156,\n  \"showcas\": 14290,\n  \"showcase</w>\": 7265,\n  \"showcased</w>\": 35786,\n  \"showcases</w>\": 26266,\n  \"showcasing</w>\": 17036,\n  \"showdown</w>\": 15576,\n  \"showed</w>\": 7150,\n  \"shower</w>\": 7777,\n  \"showers</w>\": 9893,\n  \"showing</w>\": 3649,\n  \"shown</w>\": 8506,\n  \"showroom</w>\": 16821,\n  \"shows</w>\": 2665,\n  \"showtime\": 40576,\n  \"showtime</w>\": 15442,\n  \"showyour\": 46733,\n  \"shp</w>\": 38341,\n  \"shq</w>\": 21145,\n  \"shr\": 10118,\n  \"shra\": 21360,\n  \"shradd\": 28172,\n  \"shraddha\": 35208,\n  \"shraddhakapoor</w>\": 40385,\n  \"shre\": 12101,\n  \"shred\": 19756,\n  \"shred</w>\": 33017,\n  \"shredded</w>\": 31772,\n  \"shredding</w>\": 45534,\n  \"shree</w>\": 37410,\n  \"shrek</w>\": 35009,\n  \"shrews\": 26411,\n  \"shrewsbury</w>\": 30921,\n  \"shri\": 8838,\n  \"shri</w>\": 11424,\n  \"shrimp</w>\": 12727,\n  \"shrin\": 24865,\n  \"shrine</w>\": 16156,\n  \"shrink</w>\": 34957,\n  \"shrinking</w>\": 41243,\n  \"shrm</w>\": 44163,\n  \"shro\": 15259,\n  \"shroff</w>\": 32081,\n  \"shrop\": 22630,\n  \"shropshire</w>\": 26344,\n  \"shru\": 14911,\n  \"shrub</w>\": 41464,\n  \"shrubs</w>\": 47975,\n  \"shrun\": 46767,\n  \"shs</w>\": 16184,\n  \"sht</w>\": 44210,\n  \"shti</w>\": 38927,\n  \"shu\": 2872,\n  \"shu</w>\": 17651,\n  \"shua</w>\": 33771,\n  \"shub</w>\": 40552,\n  \"shud</w>\": 45782,\n  \"shuff\": 42641,\n  \"shuffle</w>\": 21681,\n  \"shui</w>\": 45473,\n  \"shuk\": 29927,\n  \"shukla</w>\": 46829,\n  \"shul\": 30721,\n  \"shum\": 37383,\n  \"shun\": 24479,\n  \"shun</w>\": 39594,\n  \"shur\": 41032,\n  \"shut\": 8702,\n  \"shut</w>\": 8282,\n  \"shutdown</w>\": 16051,\n  \"shutout</w>\": 24385,\n  \"shuts</w>\": 28313,\n  \"shutt\": 31866,\n  \"shutter\": 36235,\n  \"shutter</w>\": 33902,\n  \"shutters</w>\": 46894,\n  \"shutting</w>\": 31383,\n  \"shuttle</w>\": 15842,\n  \"shwar</w>\": 41640,\n  \"shy\": 22678,\n  \"shy</w>\": 9682,\n  \"si\": 564,\n  \"si</w>\": 2990,\n  \"sia</w>\": 2357,\n  \"siam\": 29686,\n  \"siam</w>\": 48248,\n  \"siamese</w>\": 43161,\n  \"sian\": 28510,\n  \"sian</w>\": 6221,\n  \"sians</w>\": 26583,\n  \"sias</w>\": 28645,\n  \"siber\": 22206,\n  \"siberia</w>\": 39969,\n  \"siberian</w>\": 34058,\n  \"sibl\": 14338,\n  \"sible</w>\": 14507,\n  \"sibling\": 43060,\n  \"sibling</w>\": 23779,\n  \"siblings</w>\": 17156,\n  \"sic\": 8278,\n  \"sic</w>\": 1118,\n  \"sica</w>\": 34125,\n  \"sical</w>\": 33875,\n  \"sichuan</w>\": 48950,\n  \"sicilian</w>\": 45292,\n  \"sicily</w>\": 23179,\n  \"sick\": 11143,\n  \"sick</w>\": 5359,\n  \"sickest</w>\": 47972,\n  \"sickle</w>\": 41459,\n  \"sickness</w>\": 28898,\n  \"sics</w>\": 26297,\n  \"sid\": 10117,\n  \"sid</w>\": 15119,\n  \"sidd\": 19842,\n  \"siddi\": 35227,\n  \"side\": 5869,\n  \"side</w>\": 1145,\n  \"sided</w>\": 21061,\n  \"sidekick</w>\": 44683,\n  \"sidel\": 43557,\n  \"sideline</w>\": 32056,\n  \"sidelines</w>\": 31046,\n  \"sider</w>\": 30581,\n  \"siders</w>\": 41249,\n  \"sides</w>\": 7578,\n  \"sideshow</w>\": 46789,\n  \"sidewalk</w>\": 23278,\n  \"sidewalks</w>\": 43583,\n  \"sideways</w>\": 35593,\n  \"siding</w>\": 38758,\n  \"sidney</w>\": 22598,\n  \"sie\": 8533,\n  \"sie</w>\": 5685,\n  \"sieg\": 49203,\n  \"siege</w>\": 18460,\n  \"siegel</w>\": 48559,\n  \"siem\": 18434,\n  \"siemens</w>\": 30147,\n  \"siempre</w>\": 44030,\n  \"siena</w>\": 33336,\n  \"sienna</w>\": 40373,\n  \"sier\": 10028,\n  \"sier</w>\": 7444,\n  \"sierra</w>\": 13552,\n  \"siers</w>\": 35923,\n  \"sies</w>\": 16367,\n  \"siest</w>\": 18323,\n  \"sif</w>\": 29300,\n  \"sig\": 872,\n  \"sig</w>\": 19145,\n  \"sigh\": 36303,\n  \"sigh</w>\": 15505,\n  \"sighs</w>\": 44579,\n  \"sight\": 16897,\n  \"sight</w>\": 6329,\n  \"sighted</w>\": 33034,\n  \"sighting</w>\": 17507,\n  \"sightings</w>\": 30004,\n  \"sights</w>\": 17364,\n  \"sightseeing</w>\": 34210,\n  \"sigma\": 45075,\n  \"sigma</w>\": 15697,\n  \"sign\": 5538,\n  \"sign</w>\": 2292,\n  \"signage</w>\": 21156,\n  \"signal</w>\": 10781,\n  \"signaling</w>\": 38492,\n  \"signalling</w>\": 48426,\n  \"signals</w>\": 17150,\n  \"signation</w>\": 24347,\n  \"signature</w>\": 9189,\n  \"signatures</w>\": 21865,\n  \"signed</w>\": 3163,\n  \"signee</w>\": 39778,\n  \"signi\": 34023,\n  \"signific\": 6374,\n  \"significance</w>\": 23769,\n  \"significant</w>\": 8735,\n  \"significantly</w>\": 16187,\n  \"signing</w>\": 4401,\n  \"signingday</w>\": 40282,\n  \"signings</w>\": 27731,\n  \"signs</w>\": 4659,\n  \"signup</w>\": 40791,\n  \"sigue</w>\": 49401,\n  \"sii</w>\": 36672,\n  \"sik\": 19974,\n  \"sik</w>\": 22413,\n  \"sika</w>\": 31144,\n  \"sikh</w>\": 21829,\n  \"sikhs</w>\": 45426,\n  \"sil\": 1556,\n  \"sil</w>\": 8315,\n  \"sila</w>\": 41754,\n  \"sile\": 37620,\n  \"silen\": 39048,\n  \"silence</w>\": 8462,\n  \"silenced</w>\": 45415,\n  \"silent\": 30352,\n  \"silent</w>\": 8487,\n  \"silently</w>\": 42640,\n  \"silhou\": 20589,\n  \"silhouette</w>\": 26149,\n  \"silic\": 23830,\n  \"silicon\": 32412,\n  \"silicon</w>\": 17888,\n  \"silicone</w>\": 28221,\n  \"silk\": 25891,\n  \"silk</w>\": 9743,\n  \"silky</w>\": 29554,\n  \"sill\": 42468,\n  \"sill</w>\": 48024,\n  \"silly</w>\": 11883,\n  \"silon</w>\": 31841,\n  \"sils</w>\": 39708,\n  \"silva</w>\": 16489,\n  \"silve\": 37697,\n  \"silver\": 7525,\n  \"silver</w>\": 3467,\n  \"silverado</w>\": 46160,\n  \"silverstone</w>\": 29666,\n  \"silvia</w>\": 37289,\n  \"sim\": 5026,\n  \"sim</w>\": 10740,\n  \"sima</w>\": 35871,\n  \"simba</w>\": 39492,\n  \"simcoe</w>\": 47148,\n  \"sime\": 28329,\n  \"simi</w>\": 38073,\n  \"simil\": 7202,\n  \"similar</w>\": 8547,\n  \"similarities</w>\": 34716,\n  \"simm\": 13001,\n  \"simmons</w>\": 14699,\n  \"simo</w>\": 37171,\n  \"simon\": 8796,\n  \"simon</w>\": 6668,\n  \"simona</w>\": 46277,\n  \"simone</w>\": 19062,\n  \"simons</w>\": 33097,\n  \"simp\": 2542,\n  \"simple\": 19018,\n  \"simple</w>\": 4129,\n  \"simpler</w>\": 35489,\n  \"simplest</w>\": 39588,\n  \"simpli\": 16868,\n  \"simplicity</w>\": 21262,\n  \"simplified</w>\": 36647,\n  \"simplify</w>\": 35479,\n  \"simply\": 25637,\n  \"simply</w>\": 6151,\n  \"simpson\": 41805,\n  \"simpson</w>\": 11750,\n  \"simpsons</w>\": 21092,\n  \"sims</w>\": 14021,\n  \"simul\": 9845,\n  \"simulated</w>\": 46395,\n  \"simulation</w>\": 18610,\n  \"simulator</w>\": 20821,\n  \"simultaneous</w>\": 48816,\n  \"simultaneously</w>\": 28575,\n  \"sin\": 1303,\n  \"sin</w>\": 3421,\n  \"sina</w>\": 19541,\n  \"sinai</w>\": 33226,\n  \"sinatra</w>\": 27262,\n  \"sinc</w>\": 30464,\n  \"since</w>\": 1855,\n  \"sincere\": 24513,\n  \"sincere</w>\": 24886,\n  \"sincerely</w>\": 25673,\n  \"sinclair</w>\": 23100,\n  \"sind\": 39598,\n  \"sind</w>\": 30877,\n  \"sindh</w>\": 20754,\n  \"sindia</w>\": 48038,\n  \"sine\": 22741,\n  \"sine</w>\": 33793,\n  \"sinfo</w>\": 47178,\n  \"sing\": 1387,\n  \"sing</w>\": 1197,\n  \"singapo\": 27861,\n  \"singapore\": 28879,\n  \"singapore</w>\": 6754,\n  \"singer\": 33880,\n  \"singer</w>\": 5108,\n  \"singers</w>\": 15613,\n  \"singersongwriter</w>\": 44585,\n  \"singh\": 19445,\n  \"singh</w>\": 5715,\n  \"singing</w>\": 5864,\n  \"single\": 19524,\n  \"single</w>\": 2688,\n  \"singles</w>\": 12025,\n  \"singleton</w>\": 46247,\n  \"singly</w>\": 16619,\n  \"sings</w>\": 13635,\n  \"singul\": 34003,\n  \"singular</w>\": 44009,\n  \"singularity</w>\": 48410,\n  \"sinha</w>\": 29416,\n  \"sini\": 41781,\n  \"sini</w>\": 26319,\n  \"sinister</w>\": 31313,\n  \"sink\": 37232,\n  \"sink</w>\": 14551,\n  \"sinking</w>\": 27949,\n  \"sinks</w>\": 32710,\n  \"sinn</w>\": 36315,\n  \"sinner</w>\": 45380,\n  \"sinners</w>\": 43436,\n  \"sino</w>\": 29759,\n  \"sins</w>\": 9345,\n  \"sinthe\": 30737,\n  \"sinu\": 37351,\n  \"sinus</w>\": 47535,\n  \"sio</w>\": 10807,\n  \"siob\": 40954,\n  \"siology</w>\": 46315,\n  \"sion\": 5676,\n  \"sion</w>\": 1015,\n  \"sional</w>\": 14533,\n  \"sionally</w>\": 30754,\n  \"sions</w>\": 4060,\n  \"sioux\": 44695,\n  \"sioux</w>\": 24954,\n  \"sip</w>\": 16096,\n  \"sipping</w>\": 28527,\n  \"sir\": 10708,\n  \"sir</w>\": 3846,\n  \"sire</w>\": 28450,\n  \"siren</w>\": 33026,\n  \"sirens</w>\": 35907,\n  \"siri\": 13986,\n  \"siri</w>\": 18394,\n  \"sirius\": 23574,\n  \"sirius</w>\": 34999,\n  \"siriusxm</w>\": 29833,\n  \"sirloin</w>\": 46828,\n  \"sis\": 18132,\n  \"sis</w>\": 2580,\n  \"sisd</w>\": 27132,\n  \"sisi</w>\": 37892,\n  \"siss\": 42929,\n  \"sissy</w>\": 27564,\n  \"sist</w>\": 20520,\n  \"sista</w>\": 37448,\n  \"sister\": 17417,\n  \"sister</w>\": 3677,\n  \"sisterhood</w>\": 37313,\n  \"sisters</w>\": 6404,\n  \"sit\": 7387,\n  \"sit</w>\": 4037,\n  \"sitcom</w>\": 30426,\n  \"site\": 26792,\n  \"site</w>\": 1988,\n  \"sites</w>\": 7236,\n  \"sith</w>\": 41499,\n  \"sito</w>\": 42613,\n  \"sits</w>\": 12726,\n  \"sitt\": 42988,\n  \"sitter</w>\": 40777,\n  \"sittin</w>\": 40887,\n  \"sitting</w>\": 4919,\n  \"situ\": 5562,\n  \"situ</w>\": 42536,\n  \"situated</w>\": 22030,\n  \"situation</w>\": 7144,\n  \"situations</w>\": 19096,\n  \"sity\": 38177,\n  \"sity</w>\": 5477,\n  \"siu</w>\": 40174,\n  \"sium</w>\": 8090,\n  \"sius</w>\": 27595,\n  \"siva</w>\": 20991,\n  \"sivan</w>\": 36931,\n  \"sive\": 23572,\n  \"sive</w>\": 1875,\n  \"sively</w>\": 10343,\n  \"siveness</w>\": 39667,\n  \"sives</w>\": 23896,\n  \"sivity</w>\": 42738,\n  \"siwon</w>\": 29055,\n  \"six\": 5968,\n  \"six</w>\": 4093,\n  \"sixers</w>\": 25941,\n  \"sixteen</w>\": 28677,\n  \"sixth</w>\": 12909,\n  \"sixties</w>\": 44948,\n  \"sixty</w>\": 32588,\n  \"siya</w>\": 44440,\n  \"size\": 38377,\n  \"size</w>\": 3235,\n  \"sized</w>\": 9832,\n  \"sizes</w>\": 10253,\n  \"sizing</w>\": 28330,\n  \"sizz\": 23778,\n  \"sizzle</w>\": 47890,\n  \"sizzling</w>\": 35799,\n  \"sj\": 7536,\n  \"sj</w>\": 16010,\n  \"sjo\": 42012,\n  \"sk\": 909,\n  \"sk</w>\": 2058,\n  \"ska</w>\": 7495,\n  \"skag\": 31948,\n  \"skan\": 46772,\n  \"skar\": 27587,\n  \"skar</w>\": 26835,\n  \"skate\": 13740,\n  \"skate</w>\": 12745,\n  \"skateboard</w>\": 31777,\n  \"skateboarding</w>\": 31352,\n  \"skater</w>\": 30337,\n  \"skaters</w>\": 39824,\n  \"skates</w>\": 31479,\n  \"skc</w>\": 44551,\n  \"ske\": 6261,\n  \"ske</w>\": 25516,\n  \"skel\": 36564,\n  \"skelet\": 27075,\n  \"skeletal</w>\": 37369,\n  \"skeleton</w>\": 20062,\n  \"skeletons</w>\": 48874,\n  \"skell</w>\": 40801,\n  \"skep\": 27772,\n  \"skeptical</w>\": 44934,\n  \"sker\": 37640,\n  \"sker</w>\": 33600,\n  \"sket\": 3744,\n  \"sketch\": 11767,\n  \"sketch</w>\": 5269,\n  \"sketchbook</w>\": 18899,\n  \"sketched</w>\": 38581,\n  \"sketches</w>\": 17622,\n  \"sketching</w>\": 23228,\n  \"sketchy</w>\": 41582,\n  \"skey</w>\": 37453,\n  \"ski\": 3327,\n  \"ski</w>\": 3428,\n  \"skid\": 36574,\n  \"skid</w>\": 32099,\n  \"skier</w>\": 42585,\n  \"skies</w>\": 7244,\n  \"skiing</w>\": 14400,\n  \"skil\": 24543,\n  \"skill\": 15598,\n  \"skill</w>\": 10604,\n  \"skilled</w>\": 17535,\n  \"skillet</w>\": 40568,\n  \"skills</w>\": 4113,\n  \"skim\": 33191,\n  \"skin\": 5821,\n  \"skin</w>\": 3575,\n  \"skincare</w>\": 12648,\n  \"skine</w>\": 37300,\n  \"sking\": 46215,\n  \"skinned</w>\": 42199,\n  \"skinner</w>\": 30261,\n  \"skinny\": 42729,\n  \"skinny</w>\": 15457,\n  \"skins</w>\": 11594,\n  \"skip\": 39793,\n  \"skip</w>\": 14296,\n  \"skipped</w>\": 40639,\n  \"skipper</w>\": 22226,\n  \"skipping</w>\": 34867,\n  \"skir\": 8919,\n  \"skirt</w>\": 12386,\n  \"skirts</w>\": 24840,\n  \"skis</w>\": 32843,\n  \"skit</w>\": 43573,\n  \"skitchen</w>\": 42820,\n  \"skittles</w>\": 43213,\n  \"sko\": 15141,\n  \"sko</w>\": 23493,\n  \"skoda</w>\": 38668,\n  \"skool</w>\": 26743,\n  \"skril\": 43149,\n  \"skrillex</w>\": 43651,\n  \"sks</w>\": 48136,\n  \"sku\": 10836,\n  \"skul\": 17561,\n  \"skull\": 34068,\n  \"skull</w>\": 12092,\n  \"skulls</w>\": 31804,\n  \"skunk</w>\": 42194,\n  \"sky\": 3075,\n  \"sky</w>\": 2390,\n  \"skybet\": 45540,\n  \"skye</w>\": 21475,\n  \"skyl\": 43554,\n  \"skylar</w>\": 45411,\n  \"skyline</w>\": 14606,\n  \"skymap</w>\": 41734,\n  \"skynews</w>\": 40977,\n  \"skype</w>\": 17069,\n  \"skyrim</w>\": 33693,\n  \"skysports\": 39845,\n  \"skysports</w>\": 46725,\n  \"skywalker</w>\": 32936,\n  \"sl\": 2621,\n  \"sl</w>\": 7489,\n  \"sla\": 2725,\n  \"sla</w>\": 26707,\n  \"slab</w>\": 24241,\n  \"slabs</w>\": 42818,\n  \"slack\": 37108,\n  \"slack</w>\": 30142,\n  \"slade</w>\": 33546,\n  \"slain</w>\": 35972,\n  \"slalom</w>\": 43540,\n  \"slam\": 14891,\n  \"slam</w>\": 10131,\n  \"slammed</w>\": 29772,\n  \"slams</w>\": 18907,\n  \"slan\": 44663,\n  \"slan</w>\": 47193,\n  \"sland</w>\": 11294,\n  \"slang</w>\": 33655,\n  \"slap\": 48830,\n  \"slap</w>\": 21751,\n  \"slapped</w>\": 38861,\n  \"slaps</w>\": 46796,\n  \"slash</w>\": 19749,\n  \"slat\": 38966,\n  \"slate</w>\": 17919,\n  \"slated</w>\": 36094,\n  \"slater</w>\": 25968,\n  \"slaugh\": 26782,\n  \"slaughter</w>\": 19815,\n  \"slaughtered</w>\": 46615,\n  \"slav</w>\": 47292,\n  \"slava</w>\": 41797,\n  \"slave</w>\": 14029,\n  \"slavery</w>\": 15754,\n  \"slaves</w>\": 23833,\n  \"slaw</w>\": 28178,\n  \"slay\": 48319,\n  \"slay</w>\": 19380,\n  \"slayed</w>\": 44870,\n  \"slayer</w>\": 21605,\n  \"slaying</w>\": 27812,\n  \"slays</w>\": 45648,\n  \"slc</w>\": 21972,\n  \"sle\": 1709,\n  \"sleague</w>\": 23336,\n  \"sled</w>\": 28438,\n  \"sledge</w>\": 48750,\n  \"slee\": 17642,\n  \"slee</w>\": 38977,\n  \"sleek</w>\": 23187,\n  \"sleep\": 4656,\n  \"sleep</w>\": 3840,\n  \"sleeper</w>\": 28709,\n  \"sleeping</w>\": 6982,\n  \"sleepless</w>\": 39779,\n  \"sleepover</w>\": 39415,\n  \"sleeps</w>\": 16610,\n  \"sleepy\": 32572,\n  \"sleepy</w>\": 14497,\n  \"sleet</w>\": 36948,\n  \"sleeve\": 35270,\n  \"sleeve</w>\": 10536,\n  \"sleeveless</w>\": 38049,\n  \"sleeves</w>\": 19691,\n  \"sleg</w>\": 47650,\n  \"sleigh</w>\": 30865,\n  \"slender</w>\": 40331,\n  \"slept</w>\": 20388,\n  \"sler</w>\": 14066,\n  \"sley\": 17198,\n  \"sley</w>\": 6496,\n  \"sli\": 1811,\n  \"sli</w>\": 44824,\n  \"slic\": 19692,\n  \"slice</w>\": 13431,\n  \"sliced</w>\": 28121,\n  \"slices</w>\": 28424,\n  \"slick</w>\": 18341,\n  \"slide\": 27828,\n  \"slide</w>\": 8837,\n  \"slider</w>\": 37861,\n  \"sliders</w>\": 40700,\n  \"slides</w>\": 15939,\n  \"slideshow</w>\": 42817,\n  \"sliding</w>\": 21468,\n  \"slife</w>\": 15448,\n  \"sliga</w>\": 21080,\n  \"slight</w>\": 14297,\n  \"slightly</w>\": 8456,\n  \"sligo</w>\": 30424,\n  \"slike\": 38744,\n  \"slim\": 35226,\n  \"slim</w>\": 12364,\n  \"slime</w>\": 29107,\n  \"sling\": 28021,\n  \"sling</w>\": 32607,\n  \"slinger</w>\": 47269,\n  \"slions</w>\": 43363,\n  \"slip\": 39785,\n  \"slip</w>\": 12105,\n  \"slipknot</w>\": 41816,\n  \"slipped</w>\": 30344,\n  \"slipper</w>\": 39644,\n  \"slippers</w>\": 26509,\n  \"slippery</w>\": 30814,\n  \"slipping</w>\": 36301,\n  \"slips</w>\": 30632,\n  \"slist</w>\": 33749,\n  \"slit</w>\": 47011,\n  \"slive</w>\": 31652,\n  \"slo\": 4303,\n  \"slo</w>\": 36083,\n  \"sloan</w>\": 29110,\n  \"sloane</w>\": 41553,\n  \"slogan</w>\": 23398,\n  \"slogans</w>\": 42795,\n  \"slope</w>\": 22769,\n  \"slopes</w>\": 24066,\n  \"sloppy</w>\": 36154,\n  \"slot</w>\": 14500,\n  \"sloth</w>\": 30007,\n  \"slots</w>\": 19238,\n  \"slou\": 48493,\n  \"slovak\": 23315,\n  \"slovakia</w>\": 25994,\n  \"sloven\": 17018,\n  \"slovenia</w>\": 21037,\n  \"slow\": 6674,\n  \"slow</w>\": 5444,\n  \"slowdown</w>\": 38421,\n  \"slowed</w>\": 43793,\n  \"slower</w>\": 29181,\n  \"slowing</w>\": 29839,\n  \"slowly</w>\": 9568,\n  \"slows</w>\": 46855,\n  \"slp</w>\": 45599,\n  \"slr</w>\": 21325,\n  \"sls</w>\": 33651,\n  \"slt</w>\": 39283,\n  \"sltd</w>\": 36388,\n  \"slu\": 7224,\n  \"slu</w>\": 47456,\n  \"slug</w>\": 34190,\n  \"slugger</w>\": 48671,\n  \"slum</w>\": 46754,\n  \"slumber</w>\": 44295,\n  \"slump</w>\": 35588,\n  \"slur\": 30476,\n  \"slush</w>\": 39815,\n  \"slv</w>\": 45526,\n  \"sly\": 28145,\n  \"sly</w>\": 21062,\n  \"sm\": 978,\n  \"sm</w>\": 2764,\n  \"sma\": 4357,\n  \"sma</w>\": 11854,\n  \"smack\": 21280,\n  \"smack</w>\": 30026,\n  \"smackdown</w>\": 26138,\n  \"smafia</w>\": 47686,\n  \"smag</w>\": 32212,\n  \"smal\": 48379,\n  \"small\": 5244,\n  \"small</w>\": 2442,\n  \"smallbiz\": 41724,\n  \"smallbiz</w>\": 18987,\n  \"smallbusiness</w>\": 21316,\n  \"smalle\": 18490,\n  \"smaller</w>\": 12431,\n  \"smallest</w>\": 18686,\n  \"smalls</w>\": 41696,\n  \"sman</w>\": 9612,\n  \"smar\": 3201,\n  \"smart\": 5383,\n  \"smart</w>\": 4115,\n  \"smartcities</w>\": 34822,\n  \"smartcity</w>\": 33973,\n  \"smarter</w>\": 18990,\n  \"smartest</w>\": 37092,\n  \"smarthome</w>\": 47726,\n  \"smartphone</w>\": 11290,\n  \"smartphones</w>\": 22212,\n  \"smartwatch</w>\": 35798,\n  \"smash\": 17258,\n  \"smash</w>\": 10332,\n  \"smashbros</w>\": 44897,\n  \"smashed</w>\": 18410,\n  \"smashes</w>\": 45657,\n  \"smashing</w>\": 19632,\n  \"smatter</w>\": 16537,\n  \"smb</w>\": 30446,\n  \"smc\": 31375,\n  \"smc</w>\": 28312,\n  \"smd</w>\": 34582,\n  \"sme\": 11758,\n  \"sme</w>\": 15650,\n  \"smear</w>\": 37546,\n  \"smel\": 28476,\n  \"smell</w>\": 9688,\n  \"smelling</w>\": 32493,\n  \"smells</w>\": 14668,\n  \"smelly</w>\": 46145,\n  \"smen</w>\": 15961,\n  \"smer\": 48526,\n  \"smere</w>\": 39629,\n  \"smes</w>\": 26141,\n  \"smg</w>\": 46876,\n  \"smh</w>\": 9623,\n  \"smi\": 5655,\n  \"smi</w>\": 40049,\n  \"smil\": 33937,\n  \"smile\": 27641,\n  \"smile</w>\": 3490,\n  \"smiled</w>\": 34362,\n  \"smiles</w>\": 8726,\n  \"smiley</w>\": 22925,\n  \"smiling</w>\": 9200,\n  \"smir\": 24667,\n  \"smith\": 10527,\n  \"smith</w>\": 2915,\n  \"smiths</w>\": 27872,\n  \"smithson\": 25372,\n  \"smithsonian</w>\": 31209,\n  \"smm</w>\": 19510,\n  \"smma</w>\": 42370,\n  \"smo\": 2513,\n  \"smo</w>\": 13437,\n  \"smobile</w>\": 38923,\n  \"smog</w>\": 44425,\n  \"smoke\": 20381,\n  \"smoke</w>\": 6664,\n  \"smoked</w>\": 11161,\n  \"smoker</w>\": 32348,\n  \"smokers</w>\": 29571,\n  \"smokes</w>\": 40336,\n  \"smokey</w>\": 23670,\n  \"smokin</w>\": 32825,\n  \"smoking</w>\": 9038,\n  \"smoky</w>\": 25549,\n  \"smol\": 29939,\n  \"smol</w>\": 40403,\n  \"smoo\": 5430,\n  \"smooth\": 10958,\n  \"smooth</w>\": 8990,\n  \"smoother</w>\": 44271,\n  \"smoothie</w>\": 16668,\n  \"smoothies</w>\": 34458,\n  \"smoothly</w>\": 32380,\n  \"smore</w>\": 48323,\n  \"smp</w>\": 32260,\n  \"smriti\": 49227,\n  \"sms</w>\": 10409,\n  \"smt</w>\": 26672,\n  \"smtown</w>\": 26072,\n  \"smu\": 10878,\n  \"smu</w>\": 30458,\n  \"smug</w>\": 41021,\n  \"smugg\": 28130,\n  \"smuggling</w>\": 34146,\n  \"smur\": 24708,\n  \"smusic</w>\": 19191,\n  \"smw</w>\": 44929,\n  \"smx</w>\": 46699,\n  \"smy\": 14381,\n  \"smyth</w>\": 44822,\n  \"sn\": 1672,\n  \"sn</w>\": 5844,\n  \"sna\": 4032,\n  \"snack\": 47548,\n  \"snack</w>\": 10039,\n  \"snacking</w>\": 46474,\n  \"snacks</w>\": 12349,\n  \"snag\": 34789,\n  \"snag</w>\": 28043,\n  \"snagged</w>\": 48534,\n  \"snail</w>\": 23132,\n  \"snails</w>\": 34928,\n  \"snake\": 30133,\n  \"snake</w>\": 8798,\n  \"snakes</w>\": 19605,\n  \"snap\": 4578,\n  \"snap</w>\": 7404,\n  \"snapback</w>\": 31234,\n  \"snapchat</w>\": 7799,\n  \"snapmatic</w>\": 45907,\n  \"snapp\": 10185,\n  \"snapped</w>\": 15543,\n  \"snapper</w>\": 31677,\n  \"snapping</w>\": 31581,\n  \"snaps</w>\": 16890,\n  \"snapshot</w>\": 18243,\n  \"snar\": 30810,\n  \"snare</w>\": 40651,\n  \"snat\": 18457,\n  \"snatch</w>\": 35302,\n  \"snatched</w>\": 44821,\n  \"snation</w>\": 14362,\n  \"snazzy</w>\": 48963,\n  \"snc</w>\": 39918,\n  \"sne\": 3791,\n  \"sne</w>\": 46503,\n  \"sneak\": 27871,\n  \"sneak</w>\": 6917,\n  \"sneaker\": 31698,\n  \"sneaker</w>\": 24781,\n  \"sneakers</w>\": 17397,\n  \"sneaking</w>\": 34633,\n  \"sneakpeek</w>\": 47831,\n  \"sneaks</w>\": 40926,\n  \"sneaky</w>\": 21293,\n  \"snee\": 42095,\n  \"snell</w>\": 46410,\n  \"sner</w>\": 31424,\n  \"snes</w>\": 26667,\n  \"snews</w>\": 18623,\n  \"snf</w>\": 47651,\n  \"sng</w>\": 41549,\n  \"snhl</w>\": 43093,\n  \"sni\": 7186,\n  \"sni</w>\": 35570,\n  \"snickers</w>\": 49127,\n  \"sniff</w>\": 37841,\n  \"snip</w>\": 42954,\n  \"sniper</w>\": 22157,\n  \"snippet</w>\": 37531,\n  \"snippets</w>\": 44001,\n  \"snl</w>\": 16011,\n  \"sno\": 8567,\n  \"sno</w>\": 17802,\n  \"snoo\": 11352,\n  \"snooker</w>\": 25657,\n  \"snoop\": 44503,\n  \"snoop</w>\": 27754,\n  \"snoopdogg</w>\": 48388,\n  \"snoopy</w>\": 41967,\n  \"snooze</w>\": 40718,\n  \"snor\": 16590,\n  \"snoring</w>\": 44560,\n  \"snorkel\": 44285,\n  \"snorkeling</w>\": 48103,\n  \"snow\": 3880,\n  \"snow</w>\": 2583,\n  \"snowball</w>\": 39254,\n  \"snowboard</w>\": 33403,\n  \"snowboarding</w>\": 32397,\n  \"snowday</w>\": 37982,\n  \"snowden</w>\": 32154,\n  \"snowdon</w>\": 47107,\n  \"snowdonia</w>\": 36088,\n  \"snowed</w>\": 45073,\n  \"snowfall</w>\": 21714,\n  \"snowflake</w>\": 33447,\n  \"snowflakes</w>\": 38618,\n  \"snowing</w>\": 21443,\n  \"snowman</w>\": 22668,\n  \"snowstorm</w>\": 38777,\n  \"snowy</w>\": 14191,\n  \"snp</w>\": 15301,\n  \"sns</w>\": 36343,\n  \"snsd</w>\": 27961,\n  \"snt</w>\": 34834,\n  \"snu\": 9694,\n  \"snuck</w>\": 36522,\n  \"snug</w>\": 45169,\n  \"snuggle</w>\": 31327,\n  \"snuggles</w>\": 48165,\n  \"sny\": 17526,\n  \"snyder</w>\": 22106,\n  \"snz</w>\": 37678,\n  \"so\": 759,\n  \"so</w>\": 706,\n  \"soa</w>\": 39584,\n  \"soak</w>\": 24839,\n  \"soaked</w>\": 26592,\n  \"soaking</w>\": 26750,\n  \"soap\": 26086,\n  \"soap</w>\": 11088,\n  \"soaps</w>\": 40958,\n  \"soar\": 48997,\n  \"soar</w>\": 22241,\n  \"soaring</w>\": 27968,\n  \"soars</w>\": 41348,\n  \"sob\": 24900,\n  \"sob</w>\": 35507,\n  \"sobbing</w>\": 36691,\n  \"sober\": 30969,\n  \"sober</w>\": 24487,\n  \"sobre</w>\": 42768,\n  \"sobri\": 49308,\n  \"sobs</w>\": 43636,\n  \"soc\": 3253,\n  \"soc</w>\": 7741,\n  \"soca</w>\": 49239,\n  \"socal\": 46470,\n  \"socal</w>\": 20450,\n  \"soccer\": 16268,\n  \"soccer</w>\": 4233,\n  \"socceroos</w>\": 41997,\n  \"socent</w>\": 30831,\n  \"sochi</w>\": 21014,\n  \"soci\": 1720,\n  \"social\": 4803,\n  \"social</w>\": 2346,\n  \"socialism</w>\": 23372,\n  \"socialist</w>\": 18450,\n  \"socialists</w>\": 43839,\n  \"socially</w>\": 24555,\n  \"socialmedi\": 23813,\n  \"socialmedia</w>\": 9600,\n  \"socialmediamarketing</w>\": 31790,\n  \"societal</w>\": 40058,\n  \"societies</w>\": 25855,\n  \"society</w>\": 3757,\n  \"socio\": 44319,\n  \"socio</w>\": 42790,\n  \"sociology</w>\": 32373,\n  \"sock\": 29801,\n  \"sock</w>\": 18277,\n  \"socket</w>\": 28657,\n  \"socks</w>\": 8774,\n  \"socorro</w>\": 46409,\n  \"socute</w>\": 45086,\n  \"sod</w>\": 31435,\n  \"soda</w>\": 13533,\n  \"sodium</w>\": 29070,\n  \"soe\": 44136,\n  \"soe</w>\": 25498,\n  \"soever</w>\": 34024,\n  \"sof\": 1571,\n  \"sof</w>\": 41187,\n  \"sofa</w>\": 15723,\n  \"soff\": 35290,\n  \"soff</w>\": 30684,\n  \"sofficial</w>\": 20563,\n  \"sofi\": 41537,\n  \"sofia</w>\": 18914,\n  \"sofinstagram</w>\": 17301,\n  \"soft\": 12778,\n  \"soft</w>\": 3773,\n  \"softball</w>\": 8369,\n  \"softer</w>\": 44462,\n  \"softhe\": 23127,\n  \"softly</w>\": 34958,\n  \"software\": 35941,\n  \"software</w>\": 5847,\n  \"softwitter</w>\": 11311,\n  \"sog</w>\": 44775,\n  \"soggy</w>\": 41168,\n  \"sohn</w>\": 49267,\n  \"soho\": 47749,\n  \"soho</w>\": 17592,\n  \"soi</w>\": 40495,\n  \"soil\": 33417,\n  \"soil</w>\": 9216,\n  \"soils</w>\": 34891,\n  \"soir</w>\": 43427,\n  \"sok</w>\": 43456,\n  \"sol\": 1175,\n  \"sol</w>\": 9941,\n  \"sola</w>\": 40086,\n  \"solace</w>\": 42567,\n  \"solar\": 16990,\n  \"solar</w>\": 5199,\n  \"solareclipse</w>\": 44727,\n  \"sold\": 33116,\n  \"sold</w>\": 3939,\n  \"soldi\": 5098,\n  \"soldier</w>\": 9355,\n  \"soldiers</w>\": 7547,\n  \"sole\": 10519,\n  \"sole</w>\": 8576,\n  \"soleil</w>\": 33148,\n  \"solely</w>\": 27913,\n  \"solent</w>\": 47783,\n  \"soles</w>\": 22682,\n  \"soli\": 3911,\n  \"solic\": 19369,\n  \"solicitor</w>\": 45647,\n  \"solicitors</w>\": 46000,\n  \"solid\": 30626,\n  \"solid</w>\": 6148,\n  \"solidar\": 10415,\n  \"solidarity</w>\": 10983,\n  \"solidi\": 46136,\n  \"solids</w>\": 49070,\n  \"solihull</w>\": 45293,\n  \"solit\": 37039,\n  \"solitaire</w>\": 47257,\n  \"solitary</w>\": 33094,\n  \"solitude</w>\": 33199,\n  \"solo\": 17626,\n  \"solo</w>\": 5797,\n  \"soloist</w>\": 46391,\n  \"solom\": 15768,\n  \"solomon</w>\": 19785,\n  \"solos</w>\": 44868,\n  \"solst\": 20298,\n  \"solstice</w>\": 21359,\n  \"solu\": 2487,\n  \"solution</w>\": 4575,\n  \"solutions</w>\": 5140,\n  \"solve</w>\": 8917,\n  \"solved</w>\": 13451,\n  \"solves</w>\": 42740,\n  \"solving</w>\": 15581,\n  \"som\": 734,\n  \"som</w>\": 10672,\n  \"soma</w>\": 36170,\n  \"somal\": 40281,\n  \"somali</w>\": 26231,\n  \"somalia</w>\": 17051,\n  \"somaliland</w>\": 43315,\n  \"some\": 1132,\n  \"some</w>\": 836,\n  \"somebody</w>\": 8305,\n  \"someday</w>\": 17127,\n  \"somehow</w>\": 11735,\n  \"someone</w>\": 2100,\n  \"somer\": 9656,\n  \"somerhalder</w>\": 33990,\n  \"somerset</w>\": 14926,\n  \"somerville</w>\": 41409,\n  \"somes</w>\": 38124,\n  \"somethin</w>\": 33541,\n  \"something\": 28316,\n  \"something</w>\": 2006,\n  \"sometime</w>\": 21464,\n  \"sometimes</w>\": 4237,\n  \"somewhat</w>\": 17864,\n  \"somewhere</w>\": 8119,\n  \"somm\": 42726,\n  \"somme</w>\": 30625,\n  \"sommer</w>\": 44954,\n  \"somos</w>\": 24951,\n  \"son\": 1176,\n  \"son</w>\": 825,\n  \"sona</w>\": 21249,\n  \"sonam\": 40096,\n  \"sonar</w>\": 48235,\n  \"sonata</w>\": 37009,\n  \"sone</w>\": 29599,\n  \"song\": 6868,\n  \"song</w>\": 2295,\n  \"songs</w>\": 4641,\n  \"songwriter</w>\": 13034,\n  \"songwriters</w>\": 39583,\n  \"songwriting</w>\": 33567,\n  \"songz</w>\": 49302,\n  \"soni\": 34899,\n  \"soni</w>\": 35911,\n  \"sonia</w>\": 20409,\n  \"sonic\": 23785,\n  \"sonic</w>\": 9132,\n  \"sonics</w>\": 48511,\n  \"sonja</w>\": 46102,\n  \"sonline</w>\": 23412,\n  \"sonny\": 43000,\n  \"sonny</w>\": 20880,\n  \"sono</w>\": 44109,\n  \"sonom\": 48596,\n  \"sonoma</w>\": 26269,\n  \"sons</w>\": 5502,\n  \"sonsof\": 46676,\n  \"sont</w>\": 31063,\n  \"sonthe\": 40923,\n  \"sony\": 16042,\n  \"sony</w>\": 8748,\n  \"sonya</w>\": 39172,\n  \"soo\": 5517,\n  \"soo</w>\": 8602,\n  \"soom\": 39771,\n  \"soon\": 27559,\n  \"soon</w>\": 1745,\n  \"sooner</w>\": 18968,\n  \"sooners</w>\": 30449,\n  \"sooo</w>\": 11526,\n  \"soooo</w>\": 13658,\n  \"sooooo</w>\": 21199,\n  \"soooooo</w>\": 34859,\n  \"soor\": 46698,\n  \"soothe</w>\": 44424,\n  \"soothing</w>\": 27730,\n  \"sop\": 3974,\n  \"sop</w>\": 19194,\n  \"soph</w>\": 34963,\n  \"sophi\": 6192,\n  \"sophia</w>\": 16790,\n  \"sophie\": 38648,\n  \"sophie</w>\": 12357,\n  \"sophistic\": 17646,\n  \"sophisticated</w>\": 20833,\n  \"sophom\": 13696,\n  \"sophomore</w>\": 15242,\n  \"sophomores</w>\": 47645,\n  \"soprano</w>\": 28880,\n  \"soproud</w>\": 44479,\n  \"sor\": 1852,\n  \"sor</w>\": 16872,\n  \"sora</w>\": 38719,\n  \"sorbet</w>\": 39994,\n  \"sore\": 43330,\n  \"sore</w>\": 15454,\n  \"sored</w>\": 6731,\n  \"soren\": 38907,\n  \"sorg</w>\": 28152,\n  \"sori\": 38588,\n  \"sorority</w>\": 30059,\n  \"soros</w>\": 33248,\n  \"sorren\": 44012,\n  \"sorrow</w>\": 28020,\n  \"sorrows</w>\": 47924,\n  \"sorry\": 25745,\n  \"sorry</w>\": 3675,\n  \"sorrynotsorry</w>\": 37105,\n  \"sort</w>\": 8450,\n  \"sorta</w>\": 34700,\n  \"sorted</w>\": 13221,\n  \"sorting</w>\": 19198,\n  \"sorts</w>\": 12577,\n  \"sory</w>\": 16257,\n  \"sos\": 25145,\n  \"sos</w>\": 5792,\n  \"sosa</w>\": 45433,\n  \"sosfam</w>\": 47709,\n  \"sot\": 41542,\n  \"sot</w>\": 34116,\n  \"sothe\": 32145,\n  \"sotho</w>\": 45496,\n  \"soto</w>\": 27947,\n  \"sotto</w>\": 26047,\n  \"sotu</w>\": 32286,\n  \"sou\": 1101,\n  \"sou</w>\": 24293,\n  \"sought</w>\": 18874,\n  \"soul\": 8701,\n  \"soul</w>\": 3755,\n  \"soulful</w>\": 30196,\n  \"soulmate</w>\": 38130,\n  \"souls</w>\": 10951,\n  \"soun\": 19474,\n  \"sound\": 5236,\n  \"sound</w>\": 3608,\n  \"soundcheck</w>\": 31394,\n  \"soundcloud</w>\": 15190,\n  \"sounded</w>\": 28287,\n  \"sounders</w>\": 44933,\n  \"sounding</w>\": 21351,\n  \"sounds</w>\": 5694,\n  \"soundtrack</w>\": 11389,\n  \"soup</w>\": 7077,\n  \"soups</w>\": 45052,\n  \"sour\": 2235,\n  \"sour</w>\": 12049,\n  \"source\": 23698,\n  \"source</w>\": 3634,\n  \"sourced</w>\": 23340,\n  \"sources</w>\": 5124,\n  \"sourcing</w>\": 19574,\n  \"sourdough</w>\": 29921,\n  \"souri</w>\": 11674,\n  \"sous</w>\": 32093,\n  \"sousa</w>\": 46296,\n  \"sout\": 38156,\n  \"sout</w>\": 32732,\n  \"south\": 2938,\n  \"south</w>\": 2045,\n  \"southafrica</w>\": 15184,\n  \"southampton</w>\": 15767,\n  \"southbank</w>\": 44173,\n  \"southbound</w>\": 22932,\n  \"southeast</w>\": 13942,\n  \"southeastern</w>\": 26813,\n  \"southend</w>\": 25583,\n  \"souther\": 33330,\n  \"southern\": 17704,\n  \"southern</w>\": 5036,\n  \"southgate</w>\": 47262,\n  \"southkorea</w>\": 43552,\n  \"southport</w>\": 37446,\n  \"southside</w>\": 36436,\n  \"southsudan</w>\": 30419,\n  \"southwark</w>\": 39098,\n  \"southwe\": 46443,\n  \"southwest</w>\": 13320,\n  \"southwestern</w>\": 30157,\n  \"souven\": 20210,\n  \"souvenir</w>\": 24811,\n  \"souvenirs</w>\": 48460,\n  \"souza</w>\": 29424,\n  \"sov</w>\": 29737,\n  \"sover</w>\": 31876,\n  \"sovere\": 17736,\n  \"sovereign\": 29418,\n  \"sovereign</w>\": 26337,\n  \"sovereignty</w>\": 31701,\n  \"soviet</w>\": 14274,\n  \"sow</w>\": 33089,\n  \"sowe\": 36130,\n  \"soweto</w>\": 47070,\n  \"sown</w>\": 49369,\n  \"sox\": 39556,\n  \"sox</w>\": 8657,\n  \"soy\": 16524,\n  \"soy</w>\": 15010,\n  \"soybean</w>\": 34606,\n  \"soybeans</w>\": 40840,\n  \"soyu\": 39578,\n  \"soyuz</w>\": 43842,\n  \"sp\": 588,\n  \"sp</w>\": 4393,\n  \"spa\": 7852,\n  \"spa</w>\": 6692,\n  \"spac\": 10336,\n  \"space\": 7857,\n  \"space</w>\": 2138,\n  \"spacecraft</w>\": 25940,\n  \"spaces</w>\": 9006,\n  \"spaceship</w>\": 34317,\n  \"spacex</w>\": 22511,\n  \"spacey</w>\": 48770,\n  \"spacious</w>\": 24769,\n  \"spad\": 45362,\n  \"spade</w>\": 32562,\n  \"spades</w>\": 48368,\n  \"spaghetti</w>\": 18440,\n  \"spain</w>\": 5083,\n  \"spal\": 26018,\n  \"spam\": 29712,\n  \"spam</w>\": 14624,\n  \"span\": 4270,\n  \"span</w>\": 14537,\n  \"spandex</w>\": 41686,\n  \"spani\": 16721,\n  \"spaniel</w>\": 35435,\n  \"spanish\": 29966,\n  \"spanish</w>\": 6013,\n  \"spann</w>\": 25323,\n  \"spanning</w>\": 38638,\n  \"spans</w>\": 45407,\n  \"spaper\": 34548,\n  \"spar\": 3378,\n  \"spar</w>\": 34576,\n  \"spare</w>\": 12615,\n  \"spares</w>\": 39505,\n  \"spark\": 9555,\n  \"spark</w>\": 11047,\n  \"sparked</w>\": 32647,\n  \"sparkle</w>\": 18287,\n  \"sparkles</w>\": 36410,\n  \"sparkling</w>\": 17893,\n  \"sparkly</w>\": 30542,\n  \"sparks</w>\": 15046,\n  \"sparky</w>\": 47198,\n  \"sparring</w>\": 42161,\n  \"sparrow</w>\": 22888,\n  \"spart\": 10143,\n  \"sparta</w>\": 38401,\n  \"spartan\": 26582,\n  \"spartan</w>\": 24225,\n  \"spartans</w>\": 20457,\n  \"sparty</w>\": 36477,\n  \"spas\": 31714,\n  \"spati\": 19200,\n  \"spatial</w>\": 22022,\n  \"spaw\": 31605,\n  \"spawn</w>\": 29166,\n  \"spay\": 40634,\n  \"spc</w>\": 20492,\n  \"spca</w>\": 37018,\n  \"spd\": 37717,\n  \"spd</w>\": 28307,\n  \"spdwy</w>\": 45981,\n  \"spe\": 876,\n  \"spe</w>\": 36676,\n  \"speak\": 20599,\n  \"speak</w>\": 4208,\n  \"speake\": 46077,\n  \"speaker\": 25764,\n  \"speaker</w>\": 4914,\n  \"speakers</w>\": 7675,\n  \"speaking</w>\": 3714,\n  \"speaks</w>\": 5661,\n  \"spear\": 23277,\n  \"spear</w>\": 30420,\n  \"speare</w>\": 43859,\n  \"spears</w>\": 20242,\n  \"spec\": 1711,\n  \"spec</w>\": 18596,\n  \"speci\": 1969,\n  \"special\": 11422,\n  \"special</w>\": 1689,\n  \"specialist</w>\": 10630,\n  \"specialists</w>\": 21719,\n  \"speciality</w>\": 46904,\n  \"specialized</w>\": 23265,\n  \"specializes</w>\": 48533,\n  \"specially</w>\": 4513,\n  \"specials</w>\": 11983,\n  \"specialty</w>\": 18262,\n  \"species</w>\": 6330,\n  \"specific</w>\": 10528,\n  \"specifically</w>\": 17174,\n  \"specification</w>\": 46394,\n  \"specifications</w>\": 39705,\n  \"specified</w>\": 48114,\n  \"specimen</w>\": 30263,\n  \"specimens</w>\": 42715,\n  \"specs</w>\": 24093,\n  \"spect</w>\": 3416,\n  \"spectac\": 7242,\n  \"spectacle</w>\": 34342,\n  \"spectacular</w>\": 8404,\n  \"spectator</w>\": 32372,\n  \"spectators</w>\": 39306,\n  \"spective</w>\": 6633,\n  \"spector</w>\": 48676,\n  \"spectral</w>\": 45441,\n  \"spectre</w>\": 35998,\n  \"spectro\": 27646,\n  \"spectrum</w>\": 13532,\n  \"specul\": 19209,\n  \"speculation</w>\": 30898,\n  \"sped</w>\": 38813,\n  \"spee\": 4050,\n  \"speech\": 19556,\n  \"speech</w>\": 4902,\n  \"speeches</w>\": 25208,\n  \"speechless</w>\": 23152,\n  \"speed\": 6860,\n  \"speed</w>\": 4163,\n  \"speeding</w>\": 27264,\n  \"speeds</w>\": 22017,\n  \"speedway</w>\": 11480,\n  \"speedy</w>\": 21603,\n  \"spel\": 41887,\n  \"spell\": 22784,\n  \"spell</w>\": 11230,\n  \"spelled</w>\": 24339,\n  \"spelling</w>\": 15614,\n  \"spells</w>\": 25335,\n  \"spelt</w>\": 38316,\n  \"spen\": 5087,\n  \"spence</w>\": 33324,\n  \"spencer\": 27509,\n  \"spencer</w>\": 10678,\n  \"spend</w>\": 4664,\n  \"spending</w>\": 5961,\n  \"spends</w>\": 22508,\n  \"spent</w>\": 4429,\n  \"speople</w>\": 33035,\n  \"sper\": 8213,\n  \"sper</w>\": 15313,\n  \"sperm</w>\": 35781,\n  \"sperson</w>\": 22687,\n  \"spf</w>\": 34973,\n  \"spg</w>\": 34623,\n  \"sph\": 28909,\n  \"sph</w>\": 24684,\n  \"sphe\": 33691,\n  \"spher\": 18349,\n  \"sphere</w>\": 6987,\n  \"spheres</w>\": 37478,\n  \"spheric</w>\": 21744,\n  \"sphin\": 39237,\n  \"sphinx</w>\": 46487,\n  \"spho\": 20442,\n  \"sphoto</w>\": 38594,\n  \"sphy\": 43808,\n  \"spi\": 3174,\n  \"spi</w>\": 37080,\n  \"spic\": 17264,\n  \"spice\": 29761,\n  \"spice</w>\": 10141,\n  \"spiced</w>\": 24267,\n  \"spicer</w>\": 37627,\n  \"spices</w>\": 21194,\n  \"spicy</w>\": 10915,\n  \"spide\": 36801,\n  \"spider\": 11963,\n  \"spider</w>\": 7622,\n  \"spiderman\": 39808,\n  \"spiderman</w>\": 18427,\n  \"spiders</w>\": 23141,\n  \"spidey</w>\": 41706,\n  \"spie\": 28573,\n  \"spie</w>\": 28746,\n  \"spied</w>\": 43998,\n  \"spiegel</w>\": 45351,\n  \"spiel\": 28435,\n  \"spiel</w>\": 37690,\n  \"spielberg</w>\": 37569,\n  \"spies</w>\": 25374,\n  \"spieth</w>\": 43254,\n  \"spike\": 35306,\n  \"spike</w>\": 15310,\n  \"spiked</w>\": 47014,\n  \"spikes</w>\": 29582,\n  \"spil\": 47765,\n  \"spill\": 43933,\n  \"spill</w>\": 18006,\n  \"spilled</w>\": 33206,\n  \"spilling</w>\": 49006,\n  \"spills</w>\": 35796,\n  \"spin\": 6288,\n  \"spin</w>\": 9226,\n  \"spinach</w>\": 14747,\n  \"spinal</w>\": 23925,\n  \"spine\": 48221,\n  \"spine</w>\": 19646,\n  \"sping</w>\": 47113,\n  \"spinner</w>\": 29924,\n  \"spinning</w>\": 13987,\n  \"spino\": 40848,\n  \"spinoff</w>\": 42513,\n  \"spinrilla</w>\": 46064,\n  \"spins</w>\": 27243,\n  \"spion\": 39604,\n  \"spionage</w>\": 41838,\n  \"spir\": 3745,\n  \"spiral</w>\": 19873,\n  \"spiration</w>\": 38126,\n  \"spire</w>\": 27439,\n  \"spired</w>\": 40650,\n  \"spires</w>\": 46938,\n  \"spiri\": 4024,\n  \"spirit\": 18224,\n  \"spirit</w>\": 4071,\n  \"spirited</w>\": 34701,\n  \"spirits</w>\": 13192,\n  \"spiritu\": 7237,\n  \"spiritual\": 46076,\n  \"spiritual</w>\": 9473,\n  \"spirituality</w>\": 22165,\n  \"spiro\": 40085,\n  \"spit\": 18115,\n  \"spit</w>\": 23177,\n  \"spite</w>\": 26060,\n  \"spitfire</w>\": 31126,\n  \"spitting</w>\": 40721,\n  \"spl\": 2470,\n  \"spl</w>\": 33052,\n  \"spla\": 4809,\n  \"splac\": 16059,\n  \"splace</w>\": 38743,\n  \"splash\": 43641,\n  \"splash</w>\": 11879,\n  \"splat\": 15733,\n  \"splatoon</w>\": 22565,\n  \"splay</w>\": 3169,\n  \"splen\": 18552,\n  \"splend\": 29861,\n  \"splendid</w>\": 21016,\n  \"splendor</w>\": 46262,\n  \"splin\": 38090,\n  \"split\": 25443,\n  \"split</w>\": 9109,\n  \"splits</w>\": 34897,\n  \"splitting</w>\": 37210,\n  \"splus</w>\": 40866,\n  \"spn\": 35467,\n  \"spn</w>\": 19414,\n  \"spnfamily</w>\": 38566,\n  \"spo\": 1261,\n  \"spo</w>\": 21085,\n  \"spock</w>\": 43918,\n  \"spoil</w>\": 25600,\n  \"spoiled</w>\": 21399,\n  \"spoiler</w>\": 16512,\n  \"spoilers</w>\": 18326,\n  \"spoils</w>\": 42436,\n  \"spoilt</w>\": 35358,\n  \"spokane</w>\": 24528,\n  \"spoke\": 13890,\n  \"spoke</w>\": 6518,\n  \"spoken</w>\": 12979,\n  \"spokesman</w>\": 31632,\n  \"spokesperson</w>\": 26234,\n  \"spol\": 22476,\n  \"spol</w>\": 8132,\n  \"spoli</w>\": 34301,\n  \"spolice</w>\": 37406,\n  \"spon\": 1715,\n  \"spon</w>\": 48216,\n  \"sponge\": 22861,\n  \"sponge</w>\": 24345,\n  \"spongebob</w>\": 25089,\n  \"spons\": 5597,\n  \"sponsor\": 10424,\n  \"sponsor</w>\": 7574,\n  \"sponsored</w>\": 7197,\n  \"sponsoring</w>\": 16181,\n  \"sponsors</w>\": 11005,\n  \"sponsorship</w>\": 17632,\n  \"spontaneous</w>\": 32465,\n  \"spoo\": 11248,\n  \"spooky</w>\": 15369,\n  \"spool</w>\": 49152,\n  \"spoon\": 27001,\n  \"spoon</w>\": 14024,\n  \"spoons</w>\": 29661,\n  \"spor\": 1475,\n  \"spor</w>\": 33746,\n  \"sport\": 4379,\n  \"sport</w>\": 2364,\n  \"sporting\": 32620,\n  \"sporting</w>\": 8944,\n  \"sports\": 6436,\n  \"sports</w>\": 2054,\n  \"sportsc\": 40114,\n  \"sportscar</w>\": 46931,\n  \"sportscenter</w>\": 39157,\n  \"sportsman</w>\": 39020,\n  \"sportsmanship</w>\": 34858,\n  \"sportsnet</w>\": 34144,\n  \"sportswear</w>\": 39747,\n  \"sporty</w>\": 33346,\n  \"spot\": 3223,\n  \"spot</w>\": 3049,\n  \"spotify</w>\": 7193,\n  \"spotlight</w>\": 7901,\n  \"spots</w>\": 7670,\n  \"spotted</w>\": 4533,\n  \"spotter</w>\": 30742,\n  \"spotting</w>\": 15885,\n  \"spouse</w>\": 24724,\n  \"spout</w>\": 48993,\n  \"spp</w>\": 47567,\n  \"spr\": 1536,\n  \"spr</w>\": 19417,\n  \"spra\": 12966,\n  \"spraw\": 46590,\n  \"spray\": 37885,\n  \"spray</w>\": 10449,\n  \"sprayed</w>\": 40022,\n  \"spraying</w>\": 39224,\n  \"spre\": 18740,\n  \"spread\": 20620,\n  \"spread</w>\": 5284,\n  \"spreading</w>\": 11821,\n  \"spreads</w>\": 27579,\n  \"spree</w>\": 21851,\n  \"spri\": 35498,\n  \"spride</w>\": 26685,\n  \"spring\": 5166,\n  \"spring</w>\": 2420,\n  \"springbreak</w>\": 37753,\n  \"springer</w>\": 30117,\n  \"springfield</w>\": 16599,\n  \"springs</w>\": 7308,\n  \"springst</w>\": 32132,\n  \"springsteen</w>\": 28367,\n  \"springtime</w>\": 28285,\n  \"springtraining</w>\": 49364,\n  \"springwatch</w>\": 29239,\n  \"sprink\": 15817,\n  \"sprinkle</w>\": 42897,\n  \"sprinkler</w>\": 48754,\n  \"sprinkles</w>\": 37326,\n  \"sprint\": 29248,\n  \"sprint</w>\": 10751,\n  \"sprinter</w>\": 36947,\n  \"sprints</w>\": 36404,\n  \"sprite</w>\": 32544,\n  \"spro\": 13902,\n  \"spro</w>\": 37403,\n  \"sproject</w>\": 37802,\n  \"sproud</w>\": 37686,\n  \"sprout</w>\": 35863,\n  \"sprouts</w>\": 25756,\n  \"spru\": 17041,\n  \"spruce</w>\": 23812,\n  \"sprung</w>\": 32968,\n  \"sps</w>\": 13869,\n  \"spu\": 23566,\n  \"spun\": 47922,\n  \"spun</w>\": 32852,\n  \"spur\": 15206,\n  \"spur</w>\": 20361,\n  \"spurs</w>\": 10916,\n  \"spursofficial</w>\": 45290,\n  \"sput\": 47521,\n  \"spx</w>\": 20584,\n  \"spy\": 13861,\n  \"spy</w>\": 6656,\n  \"spyder</w>\": 39952,\n  \"spying</w>\": 36227,\n  \"sq\": 9370,\n  \"sq</w>\": 11590,\n  \"sqft</w>\": 41912,\n  \"sql\": 42759,\n  \"sql</w>\": 18938,\n  \"sqm</w>\": 47978,\n  \"sqn</w>\": 41209,\n  \"squ\": 1653,\n  \"squad\": 13892,\n  \"squad</w>\": 4234,\n  \"squadron</w>\": 18579,\n  \"squads</w>\": 36590,\n  \"square\": 19314,\n  \"square</w>\": 3999,\n  \"squared</w>\": 32967,\n  \"squares</w>\": 26972,\n  \"squash</w>\": 13312,\n  \"squat\": 44628,\n  \"squat</w>\": 30680,\n  \"squats</w>\": 40213,\n  \"sque\": 9721,\n  \"sque</w>\": 8097,\n  \"squee\": 14420,\n  \"squeeze</w>\": 21684,\n  \"squeezed</w>\": 40413,\n  \"squid\": 42057,\n  \"squid</w>\": 22553,\n  \"squir\": 9683,\n  \"squire</w>\": 48090,\n  \"squirrel</w>\": 14004,\n  \"squirrels</w>\": 26623,\n  \"squish\": 42607,\n  \"squishy</w>\": 47001,\n  \"sr\": 3437,\n  \"sr</w>\": 5428,\n  \"srbachchan</w>\": 32353,\n  \"src</w>\": 23445,\n  \"sre\": 17748,\n  \"sri\": 11051,\n  \"sri</w>\": 9276,\n  \"sridevi</w>\": 46301,\n  \"srilan\": 15559,\n  \"srilanka</w>\": 16922,\n  \"srin\": 26818,\n  \"srinagar</w>\": 33671,\n  \"srini\": 41899,\n  \"sriracha</w>\": 42743,\n  \"sris\": 27851,\n  \"srisri</w>\": 32966,\n  \"srk\": 44982,\n  \"srk</w>\": 11216,\n  \"srl</w>\": 33808,\n  \"srp</w>\": 43004,\n  \"srs</w>\": 41764,\n  \"srsly</w>\": 44179,\n  \"srt</w>\": 28139,\n  \"sru\": 44152,\n  \"srugby</w>\": 40526,\n  \"ss\": 690,\n  \"ss</w>\": 632,\n  \"ssa</w>\": 6088,\n  \"ssal\": 31330,\n  \"ssal</w>\": 35936,\n  \"ssb</w>\": 37511,\n  \"ssc\": 21692,\n  \"ssc</w>\": 20364,\n  \"ssd</w>\": 23107,\n  \"sse\": 9030,\n  \"sse</w>\": 8938,\n  \"ssed\": 38755,\n  \"ssed</w>\": 1804,\n  \"ssel\": 17402,\n  \"ssel</w>\": 19373,\n  \"sseldorf</w>\": 47792,\n  \"ssell</w>\": 42388,\n  \"ssels</w>\": 8355,\n  \"ssen\": 39408,\n  \"ssen</w>\": 22645,\n  \"sser</w>\": 20445,\n  \"sses</w>\": 1802,\n  \"ssett</w>\": 44103,\n  \"ssf</w>\": 33239,\n  \"ssg</w>\": 40707,\n  \"ssh</w>\": 48866,\n  \"ssi\": 834,\n  \"ssi</w>\": 14953,\n  \"ssia</w>\": 22238,\n  \"ssian</w>\": 31218,\n  \"ssible</w>\": 47099,\n  \"ssic\": 27774,\n  \"ssic</w>\": 17077,\n  \"ssie</w>\": 7572,\n  \"ssier</w>\": 26422,\n  \"ssil</w>\": 15026,\n  \"ssin</w>\": 42660,\n  \"ssing</w>\": 2112,\n  \"ssion\": 16050,\n  \"ssion</w>\": 1627,\n  \"ssional</w>\": 13727,\n  \"ssionism</w>\": 24787,\n  \"ssionist</w>\": 27682,\n  \"ssions</w>\": 4137,\n  \"ssive</w>\": 2734,\n  \"ssively</w>\": 28060,\n  \"ssl</w>\": 32195,\n  \"ssler</w>\": 30287,\n  \"ssly</w>\": 24904,\n  \"ssn</w>\": 39116,\n  \"ssnhq</w>\": 47998,\n  \"sso\": 25900,\n  \"sso</w>\": 7914,\n  \"ssoccer</w>\": 32546,\n  \"sson\": 36124,\n  \"sson</w>\": 7271,\n  \"ssor</w>\": 35152,\n  \"ssp</w>\": 31101,\n  \"ssr</w>\": 39880,\n  \"sss</w>\": 11176,\n  \"ssss\": 30676,\n  \"ssss</w>\": 15880,\n  \"sssss</w>\": 24298,\n  \"sst</w>\": 40396,\n  \"ssu</w>\": 35351,\n  \"ssummit</w>\": 49301,\n  \"ssus</w>\": 31286,\n  \"ssw</w>\": 36937,\n  \"ssy\": 22519,\n  \"ssy</w>\": 8661,\n  \"st\": 522,\n  \"st</w>\": 545,\n  \"sta\": 1363,\n  \"sta</w>\": 2745,\n  \"stab\": 7726,\n  \"stab</w>\": 29974,\n  \"stabbed</w>\": 24534,\n  \"stabbing</w>\": 25474,\n  \"stabil\": 42576,\n  \"stabili\": 23903,\n  \"stability</w>\": 16716,\n  \"stable\": 44427,\n  \"stable</w>\": 10492,\n  \"stables</w>\": 34218,\n  \"stac\": 10175,\n  \"stacey\": 41653,\n  \"stacey</w>\": 24262,\n  \"stache</w>\": 23616,\n  \"stack\": 24723,\n  \"stack</w>\": 11257,\n  \"stacked</w>\": 24990,\n  \"stacking</w>\": 39836,\n  \"stacks</w>\": 24734,\n  \"stacy</w>\": 26628,\n  \"stad\": 15832,\n  \"stad</w>\": 16485,\n  \"stade</w>\": 38198,\n  \"stadi\": 26587,\n  \"stadion</w>\": 48815,\n  \"stadium</w>\": 3390,\n  \"stadiums</w>\": 38852,\n  \"stadt</w>\": 22713,\n  \"staf\": 2367,\n  \"staff\": 31188,\n  \"staff</w>\": 2813,\n  \"staffer</w>\": 38494,\n  \"staffers</w>\": 44994,\n  \"staffing</w>\": 32932,\n  \"stafford</w>\": 25006,\n  \"staffordshire</w>\": 29198,\n  \"staffs</w>\": 36098,\n  \"stag\": 12088,\n  \"stag</w>\": 20277,\n  \"stage\": 23182,\n  \"stage</w>\": 2170,\n  \"staged</w>\": 19906,\n  \"stages</w>\": 12297,\n  \"staggering</w>\": 37315,\n  \"staging</w>\": 27026,\n  \"stagram</w>\": 19503,\n  \"stags</w>\": 45936,\n  \"stain\": 3933,\n  \"stain</w>\": 14603,\n  \"stained</w>\": 13751,\n  \"staining</w>\": 32523,\n  \"stainless</w>\": 12320,\n  \"stains</w>\": 32008,\n  \"stair\": 7240,\n  \"stair</w>\": 17662,\n  \"staircase</w>\": 22777,\n  \"stairs</w>\": 9577,\n  \"stairway</w>\": 45559,\n  \"stak\": 39144,\n  \"stake\": 15955,\n  \"stake</w>\": 7937,\n  \"stakeholder</w>\": 39122,\n  \"stakeholders</w>\": 22968,\n  \"stakes</w>\": 7519,\n  \"staking</w>\": 47082,\n  \"stal\": 3861,\n  \"stal</w>\": 5535,\n  \"stale</w>\": 42471,\n  \"stalert</w>\": 25450,\n  \"stalin</w>\": 28346,\n  \"stalk\": 40826,\n  \"stalk</w>\": 14878,\n  \"stalker</w>\": 26777,\n  \"stalking</w>\": 24721,\n  \"stalks</w>\": 45886,\n  \"stall\": 24636,\n  \"stall</w>\": 12058,\n  \"stalled</w>\": 40362,\n  \"stallion</w>\": 28273,\n  \"stallions</w>\": 44787,\n  \"stallone</w>\": 40969,\n  \"stalls</w>\": 25427,\n  \"stam\": 4663,\n  \"stamatic</w>\": 30904,\n  \"stamford</w>\": 27843,\n  \"stamina</w>\": 48753,\n  \"stamp\": 28694,\n  \"stamp</w>\": 12771,\n  \"stampcollecting</w>\": 42852,\n  \"stamped</w>\": 38356,\n  \"stampede</w>\": 25384,\n  \"stamps</w>\": 13827,\n  \"stan\": 2203,\n  \"stan</w>\": 2434,\n  \"stana</w>\": 33311,\n  \"stanbul</w>\": 11231,\n  \"stance\": 48900,\n  \"stance</w>\": 3542,\n  \"stances</w>\": 15054,\n  \"stand\": 1819,\n  \"stand</w>\": 2087,\n  \"standalone</w>\": 44887,\n  \"standard\": 35780,\n  \"standard</w>\": 5807,\n  \"standardi\": 30247,\n  \"standards</w>\": 9022,\n  \"standby</w>\": 36184,\n  \"standing\": 39934,\n  \"standing</w>\": 2862,\n  \"standings</w>\": 19835,\n  \"standoff</w>\": 31821,\n  \"standout</w>\": 23131,\n  \"standre\": 48309,\n  \"stands</w>\": 6446,\n  \"standup\": 35108,\n  \"standup</w>\": 24964,\n  \"standwith\": 19540,\n  \"stanford\": 36219,\n  \"stanford</w>\": 15087,\n  \"stang</w>\": 12536,\n  \"stani</w>\": 38228,\n  \"stanis\": 37711,\n  \"stanley\": 19048,\n  \"stanley</w>\": 10079,\n  \"stanleycup</w>\": 28662,\n  \"stans</w>\": 26564,\n  \"stant\": 41576,\n  \"stant</w>\": 4906,\n  \"stanton</w>\": 25400,\n  \"stap\": 10438,\n  \"staple</w>\": 22695,\n  \"staples</w>\": 23646,\n  \"stapleton</w>\": 45228,\n  \"star\": 993,\n  \"star</w>\": 1565,\n  \"starbuck\": 48519,\n  \"starbucks</w>\": 9499,\n  \"starch</w>\": 47837,\n  \"starcraft</w>\": 48871,\n  \"stardom</w>\": 44616,\n  \"stardust</w>\": 34337,\n  \"stare</w>\": 18094,\n  \"stared</w>\": 47772,\n  \"stares</w>\": 37916,\n  \"starfish</w>\": 44283,\n  \"stargate</w>\": 41099,\n  \"stargazing</w>\": 49328,\n  \"staring</w>\": 13800,\n  \"stark\": 40446,\n  \"stark</w>\": 15353,\n  \"starlight</w>\": 32197,\n  \"starling</w>\": 46205,\n  \"starmagic\": 48023,\n  \"starplus</w>\": 37815,\n  \"starr</w>\": 19186,\n  \"starred</w>\": 24180,\n  \"starrer</w>\": 41311,\n  \"starring</w>\": 6660,\n  \"starry</w>\": 30963,\n  \"stars</w>\": 2895,\n  \"starship</w>\": 37166,\n  \"start\": 17466,\n  \"start</w>\": 1572,\n  \"started</w>\": 2760,\n  \"starter</w>\": 7800,\n  \"starters</w>\": 22222,\n  \"starting</w>\": 2530,\n  \"startrek\": 30642,\n  \"startrek</w>\": 15349,\n  \"starts</w>\": 3105,\n  \"startu\": 6996,\n  \"startup\": 18049,\n  \"startup</w>\": 5882,\n  \"startups</w>\": 9056,\n  \"starve</w>\": 46957,\n  \"starving</w>\": 30473,\n  \"starwar\": 17287,\n  \"starwars\": 26239,\n  \"starwars</w>\": 7887,\n  \"starz</w>\": 25928,\n  \"stas</w>\": 19866,\n  \"stash</w>\": 27711,\n  \"stasy</w>\": 45942,\n  \"stat\": 3004,\n  \"stat</w>\": 15216,\n  \"state\": 3492,\n  \"state</w>\": 1295,\n  \"statec\": 33931,\n  \"stated</w>\": 19629,\n  \"statedept</w>\": 41458,\n  \"statefair</w>\": 40305,\n  \"statement</w>\": 5401,\n  \"statements</w>\": 19513,\n  \"staten</w>\": 38263,\n  \"stateof\": 35195,\n  \"states\": 22125,\n  \"states</w>\": 4218,\n  \"statesman</w>\": 35301,\n  \"stateu</w>\": 44248,\n  \"statewide</w>\": 29561,\n  \"stati\": 9622,\n  \"static</w>\": 16363,\n  \"stating</w>\": 35147,\n  \"station\": 13498,\n  \"station</w>\": 2631,\n  \"stationary</w>\": 29493,\n  \"stationed</w>\": 47618,\n  \"stationery</w>\": 33851,\n  \"stations</w>\": 10051,\n  \"statistical</w>\": 29349,\n  \"statistics</w>\": 14165,\n  \"stats</w>\": 7294,\n  \"statu\": 32481,\n  \"statue</w>\": 8222,\n  \"statues</w>\": 24363,\n  \"status</w>\": 6414,\n  \"stau\": 28550,\n  \"staur\": 3709,\n  \"stav\": 20285,\n  \"stax</w>\": 32235,\n  \"stay\": 4714,\n  \"stay</w>\": 2277,\n  \"stayed</w>\": 13805,\n  \"staying</w>\": 8993,\n  \"stays</w>\": 13311,\n  \"staytuned</w>\": 39285,\n  \"stc</w>\": 29859,\n  \"std</w>\": 30477,\n  \"ste\": 795,\n  \"ste</w>\": 2686,\n  \"stea</w>\": 46614,\n  \"stead\": 16101,\n  \"stead</w>\": 11031,\n  \"steadily</w>\": 35049,\n  \"steady</w>\": 12937,\n  \"steak\": 26955,\n  \"steak</w>\": 8913,\n  \"steakhouse</w>\": 35031,\n  \"steaks</w>\": 30655,\n  \"steal\": 37070,\n  \"steal</w>\": 10181,\n  \"stealing</w>\": 14242,\n  \"steals</w>\": 20224,\n  \"stealth</w>\": 25327,\n  \"steam\": 10962,\n  \"steam</w>\": 6972,\n  \"steamboat</w>\": 41121,\n  \"steamed</w>\": 29007,\n  \"steamer</w>\": 49075,\n  \"steaming</w>\": 43746,\n  \"steampunk</w>\": 24130,\n  \"steamy</w>\": 43104,\n  \"stec</w>\": 46713,\n  \"stech\": 48949,\n  \"stech</w>\": 32455,\n  \"sted\": 20426,\n  \"sted</w>\": 1356,\n  \"stee\": 31793,\n  \"steed</w>\": 48293,\n  \"steel\": 6938,\n  \"steel</w>\": 4726,\n  \"steele</w>\": 19460,\n  \"steelers</w>\": 14430,\n  \"steen\": 42851,\n  \"steen</w>\": 18625,\n  \"steep\": 28648,\n  \"steep</w>\": 20714,\n  \"steer</w>\": 27612,\n  \"steering</w>\": 19833,\n  \"stef\": 29158,\n  \"stefan\": 15004,\n  \"stefan</w>\": 18829,\n  \"stefani</w>\": 38319,\n  \"stefano</w>\": 30719,\n  \"steff\": 30075,\n  \"stein\": 13653,\n  \"stein</w>\": 5818,\n  \"steiner</w>\": 36314,\n  \"stel\": 9102,\n  \"stel</w>\": 10798,\n  \"stell\": 22355,\n  \"stella\": 46178,\n  \"stella</w>\": 17869,\n  \"stellar</w>\": 13810,\n  \"stellen\": 42754,\n  \"stem\": 24342,\n  \"stem</w>\": 6761,\n  \"stemc\": 40486,\n  \"stems</w>\": 31503,\n  \"sten\": 7652,\n  \"sten</w>\": 7877,\n  \"stencil</w>\": 47854,\n  \"stennis</w>\": 45636,\n  \"step\": 15572,\n  \"step</w>\": 3348,\n  \"steph\": 3522,\n  \"steph</w>\": 16251,\n  \"stephan</w>\": 37312,\n  \"stephani\": 48121,\n  \"stephanie</w>\": 14361,\n  \"stephen\": 10421,\n  \"stephen</w>\": 6078,\n  \"stephenking</w>\": 46361,\n  \"stephens</w>\": 22256,\n  \"stephenson</w>\": 37280,\n  \"stepped</w>\": 18384,\n  \"stepping</w>\": 15906,\n  \"steps</w>\": 5408,\n  \"ster\": 1022,\n  \"ster</w>\": 881,\n  \"stere\": 9229,\n  \"stered</w>\": 6935,\n  \"stereo\": 15992,\n  \"stereo</w>\": 17400,\n  \"stereotypes</w>\": 27890,\n  \"steria</w>\": 38804,\n  \"stering</w>\": 14175,\n  \"sterling\": 45790,\n  \"sterling</w>\": 9378,\n  \"stern\": 36254,\n  \"stern</w>\": 2945,\n  \"steroids</w>\": 37670,\n  \"sterone</w>\": 39418,\n  \"sters</w>\": 2132,\n  \"stery</w>\": 24232,\n  \"stest</w>\": 8556,\n  \"stev\": 11640,\n  \"steve\": 7412,\n  \"steve</w>\": 3803,\n  \"steven\": 10973,\n  \"steven</w>\": 8016,\n  \"stevens</w>\": 13877,\n  \"stevenson</w>\": 25091,\n  \"stevie\": 42104,\n  \"stevie</w>\": 18969,\n  \"stew</w>\": 17906,\n  \"stewar\": 28453,\n  \"steward\": 34980,\n  \"steward</w>\": 43355,\n  \"stewards</w>\": 49294,\n  \"stewardship</w>\": 36720,\n  \"stewart</w>\": 8120,\n  \"stfu</w>\": 47000,\n  \"stg</w>\": 48387,\n  \"stgeorge\": 43698,\n  \"sth\": 13456,\n  \"sth</w>\": 34004,\n  \"sthe\": 16491,\n  \"sthel\": 42863,\n  \"sti\": 860,\n  \"sti</w>\": 12439,\n  \"stia</w>\": 26492,\n  \"stible</w>\": 25835,\n  \"stic\": 5868,\n  \"stic</w>\": 1561,\n  \"stical</w>\": 16660,\n  \"stically</w>\": 19041,\n  \"stick\": 5483,\n  \"stick</w>\": 4987,\n  \"sticker</w>\": 11270,\n  \"stickers</w>\": 11613,\n  \"sticking</w>\": 21021,\n  \"sticks</w>\": 10016,\n  \"sticky</w>\": 18887,\n  \"stics</w>\": 5449,\n  \"stie\": 38164,\n  \"stie</w>\": 11000,\n  \"stier</w>\": 42069,\n  \"sties</w>\": 16428,\n  \"stiff\": 43471,\n  \"stiff</w>\": 21441,\n  \"stig\": 4088,\n  \"stig</w>\": 42551,\n  \"stigate</w>\": 15390,\n  \"stigma</w>\": 20619,\n  \"stik</w>\": 42247,\n  \"stil\": 21790,\n  \"stil</w>\": 37519,\n  \"stiles</w>\": 33028,\n  \"still\": 13209,\n  \"still</w>\": 1170,\n  \"stills</w>\": 20259,\n  \"stim\": 18269,\n  \"stime</w>\": 24711,\n  \"stimul\": 16434,\n  \"stimulate</w>\": 42380,\n  \"stimulating</w>\": 41237,\n  \"stimulation</w>\": 39530,\n  \"stimulus</w>\": 47283,\n  \"stin\": 2588,\n  \"stin</w>\": 4025,\n  \"stina</w>\": 22359,\n  \"stine</w>\": 7098,\n  \"sting\": 19868,\n  \"sting</w>\": 1271,\n  \"stingly</w>\": 49332,\n  \"stingray</w>\": 43229,\n  \"stink</w>\": 38213,\n  \"stinky</w>\": 44957,\n  \"stino</w>\": 40658,\n  \"stint</w>\": 33531,\n  \"stion</w>\": 10812,\n  \"stip\": 39869,\n  \"stips</w>\": 44756,\n  \"stique</w>\": 43305,\n  \"stir\": 12416,\n  \"stir</w>\": 19564,\n  \"stirling</w>\": 23128,\n  \"stirring</w>\": 39205,\n  \"stis</w>\": 45224,\n  \"stit\": 14110,\n  \"stitch\": 30003,\n  \"stitch</w>\": 14771,\n  \"stitched</w>\": 36540,\n  \"stitcher</w>\": 48204,\n  \"stitches</w>\": 32360,\n  \"stitching</w>\": 45208,\n  \"stitu\": 14585,\n  \"stitutes</w>\": 40479,\n  \"stive</w>\": 22426,\n  \"stix</w>\": 48829,\n  \"stjohn\": 36153,\n  \"stl\": 14179,\n  \"stl</w>\": 12527,\n  \"stlblues</w>\": 44138,\n  \"stlcards</w>\": 28644,\n  \"stle</w>\": 7698,\n  \"stles</w>\": 48638,\n  \"stlouis\": 40358,\n  \"stlouis</w>\": 39516,\n  \"stm</w>\": 28333,\n  \"stn</w>\": 27175,\n  \"sto\": 928,\n  \"sto</w>\": 5723,\n  \"stock\": 5899,\n  \"stock</w>\": 3206,\n  \"stocked</w>\": 23552,\n  \"stockholm</w>\": 16024,\n  \"stocki\": 42944,\n  \"stocking</w>\": 17335,\n  \"stockings</w>\": 28040,\n  \"stockmarket</w>\": 40359,\n  \"stockport</w>\": 35569,\n  \"stocks</w>\": 9321,\n  \"stockton</w>\": 26130,\n  \"stoday</w>\": 22392,\n  \"stok</w>\": 43782,\n  \"stoke\": 31338,\n  \"stoke</w>\": 13550,\n  \"stoked</w>\": 13160,\n  \"stokes</w>\": 27512,\n  \"stol\": 11401,\n  \"stol</w>\": 6700,\n  \"stole</w>\": 10995,\n  \"stolen</w>\": 8704,\n  \"stolic</w>\": 45020,\n  \"stom\": 2343,\n  \"stom</w>\": 38068,\n  \"stoma</w>\": 43545,\n  \"stomach</w>\": 14722,\n  \"stomp</w>\": 40165,\n  \"stomping</w>\": 46144,\n  \"ston\": 4101,\n  \"ston</w>\": 1839,\n  \"stone\": 7694,\n  \"stone</w>\": 2441,\n  \"stoned</w>\": 36248,\n  \"stonehenge</w>\": 42417,\n  \"stoner\": 35131,\n  \"stoner</w>\": 29115,\n  \"stones\": 42659,\n  \"stones</w>\": 6885,\n  \"stonewall</w>\": 39688,\n  \"stoney</w>\": 44198,\n  \"stony\": 41717,\n  \"stony</w>\": 35691,\n  \"stoo\": 24505,\n  \"stood</w>\": 9151,\n  \"stool\": 34413,\n  \"stool</w>\": 22314,\n  \"stop\": 6005,\n  \"stop</w>\": 1691,\n  \"stopbrexit</w>\": 48680,\n  \"stopp\": 15738,\n  \"stopped</w>\": 6015,\n  \"stopper</w>\": 32147,\n  \"stoppers</w>\": 34457,\n  \"stopping</w>\": 10735,\n  \"stops</w>\": 9822,\n  \"stopthe\": 26463,\n  \"stor\": 809,\n  \"stor</w>\": 17740,\n  \"storage</w>\": 6824,\n  \"store\": 17769,\n  \"store</w>\": 2183,\n  \"stored</w>\": 28257,\n  \"stores</w>\": 6370,\n  \"storey</w>\": 24025,\n  \"storians</w>\": 34628,\n  \"stories</w>\": 3784,\n  \"storing</w>\": 40087,\n  \"stork</w>\": 46452,\n  \"storm\": 7434,\n  \"storm</w>\": 2819,\n  \"stormed</w>\": 45939,\n  \"stormhour</w>\": 12161,\n  \"storming</w>\": 24842,\n  \"storms</w>\": 6464,\n  \"stormtrooper</w>\": 49218,\n  \"stormy</w>\": 20075,\n  \"stors</w>\": 7178,\n  \"story\": 6512,\n  \"story</w>\": 1134,\n  \"storyline</w>\": 37079,\n  \"storymonth</w>\": 23717,\n  \"storyteller</w>\": 35882,\n  \"storytelling</w>\": 14457,\n  \"storytime</w>\": 44197,\n  \"stos</w>\": 19281,\n  \"stou\": 37168,\n  \"stour\": 37361,\n  \"stour</w>\": 21928,\n  \"stout</w>\": 16550,\n  \"stove</w>\": 21423,\n  \"stow\": 44284,\n  \"stow</w>\": 17046,\n  \"stowe</w>\": 34196,\n  \"stown\": 28071,\n  \"stown</w>\": 7939,\n  \"stp</w>\": 30576,\n  \"stpatrick\": 21343,\n  \"stpatricksday</w>\": 22747,\n  \"str\": 807,\n  \"str</w>\": 15913,\n  \"stra\": 1894,\n  \"stra</w>\": 6253,\n  \"strack</w>\": 46861,\n  \"strada</w>\": 31134,\n  \"strade</w>\": 48968,\n  \"straigh\": 31016,\n  \"straight\": 22114,\n  \"straight</w>\": 4241,\n  \"strain</w>\": 16887,\n  \"strains</w>\": 38067,\n  \"strait</w>\": 22946,\n  \"straits</w>\": 41984,\n  \"stral</w>\": 23289,\n  \"stralia</w>\": 42510,\n  \"stran\": 18411,\n  \"strand\": 18214,\n  \"strand</w>\": 17826,\n  \"stranded</w>\": 22975,\n  \"strang\": 11138,\n  \"strange\": 33380,\n  \"strange</w>\": 7288,\n  \"strangely</w>\": 37566,\n  \"stranger\": 35541,\n  \"stranger</w>\": 14149,\n  \"strangers</w>\": 20684,\n  \"strangerthings</w>\": 43271,\n  \"strangest</w>\": 46740,\n  \"strap</w>\": 13946,\n  \"strapped</w>\": 40922,\n  \"straps</w>\": 31213,\n  \"stras\": 36814,\n  \"stras</w>\": 42125,\n  \"strasbourg</w>\": 39576,\n  \"strat\": 11345,\n  \"strat</w>\": 32925,\n  \"strata</w>\": 47278,\n  \"strate\": 3532,\n  \"strate</w>\": 28758,\n  \"strategi\": 49102,\n  \"strategic</w>\": 10246,\n  \"strategically</w>\": 45706,\n  \"strategies</w>\": 9942,\n  \"strategist</w>\": 37180,\n  \"strategy</w>\": 5637,\n  \"strates</w>\": 45724,\n  \"stratford</w>\": 23955,\n  \"strath\": 21997,\n  \"stration</w>\": 3156,\n  \"strato\": 28878,\n  \"strauss</w>\": 32033,\n  \"strava</w>\": 34625,\n  \"stravel</w>\": 43494,\n  \"straw\": 7430,\n  \"straw</w>\": 16438,\n  \"strawberries</w>\": 17796,\n  \"strawberry</w>\": 10233,\n  \"straws</w>\": 33048,\n  \"stray\": 30784,\n  \"stray</w>\": 15712,\n  \"stre\": 1079,\n  \"stre</w>\": 19652,\n  \"stread</w>\": 27797,\n  \"streak</w>\": 11749,\n  \"streaks</w>\": 42092,\n  \"stream\": 8659,\n  \"stream</w>\": 3322,\n  \"streamed</w>\": 26280,\n  \"streamer</w>\": 25178,\n  \"streamers</w>\": 19937,\n  \"streaming</w>\": 6278,\n  \"streamline</w>\": 44917,\n  \"streams</w>\": 13545,\n  \"stree\": 35082,\n  \"stree</w>\": 32438,\n  \"streep</w>\": 38701,\n  \"street\": 4839,\n  \"street</w>\": 2012,\n  \"streetart</w>\": 12948,\n  \"streetcar</w>\": 34268,\n  \"streetfood</w>\": 44486,\n  \"streetphotography</w>\": 20786,\n  \"streets</w>\": 6058,\n  \"streetstyle</w>\": 39118,\n  \"streetwear</w>\": 37298,\n  \"strel</w>\": 39685,\n  \"stren\": 4349,\n  \"streng\": 4472,\n  \"strength\": 15475,\n  \"strength</w>\": 5959,\n  \"strengthen</w>\": 16318,\n  \"strengthened</w>\": 47131,\n  \"strengthening</w>\": 23475,\n  \"strengthens</w>\": 40280,\n  \"strengths</w>\": 29268,\n  \"stress\": 17297,\n  \"stress</w>\": 5843,\n  \"stressed</w>\": 16497,\n  \"stresses</w>\": 32112,\n  \"stressful</w>\": 24268,\n  \"stressing</w>\": 35917,\n  \"stret\": 12265,\n  \"stretch</w>\": 10064,\n  \"stretched</w>\": 29393,\n  \"stretches</w>\": 32231,\n  \"stretching</w>\": 24423,\n  \"stri\": 1493,\n  \"stri</w>\": 27795,\n  \"stria</w>\": 39620,\n  \"strial</w>\": 30217,\n  \"strian</w>\": 12924,\n  \"stric\": 2607,\n  \"strick\": 25181,\n  \"strickland</w>\": 48939,\n  \"strict</w>\": 21585,\n  \"strictly</w>\": 16475,\n  \"stride</w>\": 36024,\n  \"strides</w>\": 37355,\n  \"stries</w>\": 18171,\n  \"strife</w>\": 46473,\n  \"strike\": 20774,\n  \"strike</w>\": 5767,\n  \"striker</w>\": 12448,\n  \"strikers</w>\": 33465,\n  \"strikes</w>\": 9280,\n  \"striking</w>\": 13392,\n  \"string\": 25512,\n  \"string</w>\": 9696,\n  \"strings</w>\": 15699,\n  \"strip</w>\": 9317,\n  \"stripe</w>\": 19368,\n  \"striped</w>\": 22192,\n  \"stripes</w>\": 14239,\n  \"stripped</w>\": 26602,\n  \"stripper</w>\": 45759,\n  \"stripping</w>\": 48588,\n  \"strips</w>\": 19000,\n  \"strive</w>\": 22140,\n  \"striving</w>\": 37671,\n  \"stro\": 3121,\n  \"stro</w>\": 6186,\n  \"stroke\": 44621,\n  \"stroke</w>\": 10403,\n  \"strokes</w>\": 26595,\n  \"strol\": 30123,\n  \"stroll</w>\": 15924,\n  \"stroller</w>\": 47076,\n  \"strolling</w>\": 40911,\n  \"strom</w>\": 14707,\n  \"stron\": 4165,\n  \"strong\": 10436,\n  \"strong</w>\": 2389,\n  \"stronger\": 27760,\n  \"stronger</w>\": 9245,\n  \"strongertogether</w>\": 38532,\n  \"strongest</w>\": 16171,\n  \"strongh\": 38678,\n  \"strongly</w>\": 15507,\n  \"strophy</w>\": 47912,\n  \"strou\": 48425,\n  \"stroud</w>\": 39895,\n  \"strous</w>\": 23752,\n  \"stru\": 1666,\n  \"struc\": 3311,\n  \"struck</w>\": 10861,\n  \"struction</w>\": 12497,\n  \"structural</w>\": 16899,\n  \"structure</w>\": 5285,\n  \"structured</w>\": 27147,\n  \"structures</w>\": 14171,\n  \"structuring</w>\": 37496,\n  \"strugg\": 5176,\n  \"struggle</w>\": 8443,\n  \"struggled</w>\": 32921,\n  \"struggles</w>\": 17446,\n  \"struggling</w>\": 12135,\n  \"struly\": 34118,\n  \"strum</w>\": 37632,\n  \"strung</w>\": 46033,\n  \"strust</w>\": 23920,\n  \"strut</w>\": 48375,\n  \"stry\": 17325,\n  \"stry</w>\": 2245,\n  \"sts</w>\": 1088,\n  \"stu\": 858,\n  \"stu</w>\": 23531,\n  \"stuart\": 32054,\n  \"stuart</w>\": 11723,\n  \"stub\": 27066,\n  \"stubborn</w>\": 38955,\n  \"stuck</w>\": 6596,\n  \"stud\": 22368,\n  \"stud</w>\": 13319,\n  \"studded</w>\": 29153,\n  \"studen\": 44156,\n  \"student\": 14681,\n  \"student</w>\": 2556,\n  \"students</w>\": 1712,\n  \"studi\": 5691,\n  \"studied</w>\": 21369,\n  \"studies</w>\": 6426,\n  \"studio\": 17798,\n  \"studio</w>\": 3155,\n  \"studios</w>\": 6231,\n  \"studs</w>\": 27571,\n  \"study\": 21051,\n  \"study</w>\": 3123,\n  \"studyabroad</w>\": 45425,\n  \"studying</w>\": 8826,\n  \"stuff\": 46072,\n  \"stuff</w>\": 3487,\n  \"stuffed</w>\": 11781,\n  \"stuffing</w>\": 31612,\n  \"stuffs</w>\": 43455,\n  \"stuk</w>\": 32424,\n  \"stumb\": 16784,\n  \"stumble</w>\": 39045,\n  \"stumbled</w>\": 21776,\n  \"stump</w>\": 32064,\n  \"stun\": 3088,\n  \"stun</w>\": 37959,\n  \"stunned</w>\": 34034,\n  \"stunner</w>\": 29965,\n  \"stunning</w>\": 3769,\n  \"stunningly</w>\": 47515,\n  \"stuns</w>\": 43796,\n  \"stunt</w>\": 19905,\n  \"stunts</w>\": 40118,\n  \"stupi\": 18975,\n  \"stupid\": 42600,\n  \"stupid</w>\": 8085,\n  \"stupidity</w>\": 33766,\n  \"stur\": 10676,\n  \"sturdy</w>\": 43780,\n  \"stures</w>\": 27223,\n  \"sturgeon</w>\": 31580,\n  \"sturi\": 21747,\n  \"sturridge</w>\": 45331,\n  \"stutt\": 30444,\n  \"stuttgart</w>\": 32219,\n  \"stv\": 27060,\n  \"stv</w>\": 9708,\n  \"stweet</w>\": 46832,\n  \"stweets</w>\": 39174,\n  \"stx</w>\": 42548,\n  \"sty\": 1421,\n  \"sty</w>\": 2920,\n  \"style\": 12356,\n  \"style</w>\": 1844,\n  \"styled</w>\": 17974,\n  \"styles</w>\": 6948,\n  \"styli\": 38577,\n  \"styling</w>\": 14597,\n  \"stylish</w>\": 10378,\n  \"stylist</w>\": 15928,\n  \"styn</w>\": 41394,\n  \"su\": 605,\n  \"su</w>\": 2937,\n  \"sua</w>\": 42448,\n  \"suarez</w>\": 21437,\n  \"suave</w>\": 47305,\n  \"sub\": 1783,\n  \"sub</w>\": 7765,\n  \"subaru</w>\": 21319,\n  \"subjec\": 16090,\n  \"subject</w>\": 10300,\n  \"subjects</w>\": 22099,\n  \"subli\": 16350,\n  \"sublime</w>\": 22367,\n  \"submarine</w>\": 19968,\n  \"submer\": 27156,\n  \"submerged</w>\": 43171,\n  \"submission</w>\": 16571,\n  \"submissions</w>\": 21566,\n  \"submit</w>\": 10423,\n  \"submitted</w>\": 15189,\n  \"submitting</w>\": 38788,\n  \"subram\": 49207,\n  \"subs</w>\": 16398,\n  \"subscri\": 5838,\n  \"subscribe</w>\": 9839,\n  \"subscribed</w>\": 44867,\n  \"subscriber</w>\": 36292,\n  \"subscribers</w>\": 17337,\n  \"subscription</w>\": 17979,\n  \"subscriptions</w>\": 47162,\n  \"subsequ\": 33598,\n  \"subsequent</w>\": 44323,\n  \"subsi\": 14856,\n  \"subsidi\": 45029,\n  \"subsidiary</w>\": 45506,\n  \"subsidies</w>\": 37685,\n  \"subsidy</w>\": 47462,\n  \"substan\": 17487,\n  \"substance</w>\": 19309,\n  \"substances</w>\": 36834,\n  \"substantial</w>\": 27171,\n  \"substantially</w>\": 47577,\n  \"substitu\": 18529,\n  \"substitute</w>\": 25340,\n  \"subtitles</w>\": 39479,\n  \"subtle</w>\": 16536,\n  \"subur\": 12517,\n  \"suburb</w>\": 37664,\n  \"suburban</w>\": 23570,\n  \"suburbs</w>\": 25317,\n  \"subway</w>\": 12196,\n  \"suc\": 1869,\n  \"succe\": 7981,\n  \"succeed</w>\": 13556,\n  \"succeeded</w>\": 41077,\n  \"succes\": 39019,\n  \"success\": 3695,\n  \"success</w>\": 3034,\n  \"successes</w>\": 29436,\n  \"successful</w>\": 4670,\n  \"successfully</w>\": 9934,\n  \"succession</w>\": 38491,\n  \"successive</w>\": 41319,\n  \"successor</w>\": 34774,\n  \"succu\": 45253,\n  \"succul\": 25671,\n  \"succulent</w>\": 35236,\n  \"such</w>\": 2046,\n  \"suction</w>\": 42786,\n  \"sud\": 8067,\n  \"sud</w>\": 33714,\n  \"sudan\": 31149,\n  \"sudan</w>\": 13474,\n  \"sudanese</w>\": 42837,\n  \"sudbury</w>\": 32488,\n  \"sudden\": 10833,\n  \"sudden</w>\": 15433,\n  \"suddenly</w>\": 11076,\n  \"sue\": 14045,\n  \"sue</w>\": 6641,\n  \"sued</w>\": 22225,\n  \"suede</w>\": 21036,\n  \"sues</w>\": 17105,\n  \"suf\": 21204,\n  \"suf</w>\": 22579,\n  \"sufc</w>\": 37091,\n  \"suff\": 4866,\n  \"suffe\": 13510,\n  \"suffer</w>\": 13557,\n  \"suffered</w>\": 14766,\n  \"suffering</w>\": 10140,\n  \"suffers</w>\": 22389,\n  \"sufficient</w>\": 28410,\n  \"suffol\": 13775,\n  \"suffolk\": 46408,\n  \"suffolk</w>\": 15685,\n  \"suffra\": 34596,\n  \"suffrage</w>\": 39567,\n  \"sufi</w>\": 39756,\n  \"sug\": 3189,\n  \"suga</w>\": 28757,\n  \"sugar\": 12418,\n  \"sugar</w>\": 5574,\n  \"sugge\": 6345,\n  \"suggest</w>\": 13356,\n  \"suggested</w>\": 18790,\n  \"suggesti\": 15033,\n  \"suggesting</w>\": 29792,\n  \"suggestion</w>\": 23741,\n  \"suggestions</w>\": 16052,\n  \"suggests</w>\": 13333,\n  \"suho</w>\": 32744,\n  \"sui</w>\": 24972,\n  \"suici\": 16372,\n  \"suicidal</w>\": 37165,\n  \"suicide\": 31310,\n  \"suicide</w>\": 8247,\n  \"suing</w>\": 18309,\n  \"suisse</w>\": 35964,\n  \"suit\": 11887,\n  \"suit</w>\": 3940,\n  \"suitable</w>\": 17476,\n  \"suitcase</w>\": 27792,\n  \"suite</w>\": 9346,\n  \"suited</w>\": 25919,\n  \"suites</w>\": 21523,\n  \"suits</w>\": 9949,\n  \"suk\": 24820,\n  \"suk</w>\": 6886,\n  \"suka</w>\": 44017,\n  \"suke</w>\": 25590,\n  \"sukh\": 46961,\n  \"suki</w>\": 32704,\n  \"sul\": 1767,\n  \"sul</w>\": 19879,\n  \"sula\": 34713,\n  \"sula</w>\": 26143,\n  \"sullivan</w>\": 14477,\n  \"sully</w>\": 37752,\n  \"sulph\": 37234,\n  \"sulphur</w>\": 47659,\n  \"sultan\": 35650,\n  \"sultan</w>\": 17049,\n  \"sum\": 7054,\n  \"sum</w>\": 8257,\n  \"suma</w>\": 47938,\n  \"sumat\": 32640,\n  \"sumatra</w>\": 47346,\n  \"sume</w>\": 45457,\n  \"sumi</w>\": 41248,\n  \"summ\": 1309,\n  \"summar\": 34657,\n  \"summari\": 31993,\n  \"summary</w>\": 13435,\n  \"summed</w>\": 34912,\n  \"summer\": 5500,\n  \"summer</w>\": 1673,\n  \"summers</w>\": 18254,\n  \"summerslam</w>\": 40264,\n  \"summertime</w>\": 19025,\n  \"summit\": 30011,\n  \"summit</w>\": 3768,\n  \"summon\": 27622,\n  \"summon</w>\": 39782,\n  \"sumner</w>\": 46813,\n  \"sumo</w>\": 33734,\n  \"sump\": 34252,\n  \"sumptuous</w>\": 47354,\n  \"sums</w>\": 13325,\n  \"sun\": 968,\n  \"sun</w>\": 2176,\n  \"sunbathing</w>\": 46994,\n  \"sunburn</w>\": 45767,\n  \"sund</w>\": 40735,\n  \"sundae</w>\": 38078,\n  \"sundance</w>\": 24128,\n  \"sundar\": 44936,\n  \"sunday\": 6649,\n  \"sunday</w>\": 1706,\n  \"sundayfunday</w>\": 21565,\n  \"sundaymorning</w>\": 24809,\n  \"sundaymotivation</w>\": 46227,\n  \"sundays</w>\": 15827,\n  \"sundaywith\": 26469,\n  \"sundaywithmarsha</w>\": 26662,\n  \"sunder\": 15097,\n  \"sunderland\": 45727,\n  \"sunderland</w>\": 18851,\n  \"sundown</w>\": 44438,\n  \"sune</w>\": 41096,\n  \"sunflower</w>\": 21559,\n  \"sunflowers</w>\": 39809,\n  \"sung\": 16903,\n  \"sung</w>\": 6047,\n  \"sunglasses</w>\": 12906,\n  \"suni\": 17663,\n  \"suni</w>\": 47010,\n  \"sunil</w>\": 32861,\n  \"sunite</w>\": 21382,\n  \"sunited</w>\": 35276,\n  \"sunk</w>\": 37534,\n  \"sunken</w>\": 43473,\n  \"sunlight</w>\": 17996,\n  \"sunni</w>\": 44315,\n  \"sunny\": 15632,\n  \"sunny</w>\": 5438,\n  \"sunrise</w>\": 5610,\n  \"suns</w>\": 18322,\n  \"sunscreen</w>\": 29355,\n  \"sunset\": 37880,\n  \"sunset</w>\": 3424,\n  \"sunsets</w>\": 17721,\n  \"sunshine\": 32761,\n  \"sunshine</w>\": 5385,\n  \"suny</w>\": 41308,\n  \"sup\": 19078,\n  \"sup</w>\": 8249,\n  \"supdates</w>\": 24177,\n  \"super\": 1642,\n  \"super</w>\": 1994,\n  \"superb</w>\": 8930,\n  \"superbike</w>\": 45709,\n  \"superbowl\": 47461,\n  \"superbowl</w>\": 16467,\n  \"supercar</w>\": 27021,\n  \"supercars</w>\": 32185,\n  \"supercell</w>\": 43227,\n  \"supercharged</w>\": 47479,\n  \"supere\": 46831,\n  \"superfood</w>\": 41715,\n  \"supergirl</w>\": 25771,\n  \"superhero</w>\": 14049,\n  \"superheroes</w>\": 23334,\n  \"superint\": 17615,\n  \"superintendent</w>\": 19020,\n  \"superior</w>\": 13205,\n  \"superjunior</w>\": 40475,\n  \"superleague</w>\": 45539,\n  \"superman</w>\": 11237,\n  \"supermarket</w>\": 19897,\n  \"supermarkets</w>\": 45106,\n  \"supermodel</w>\": 41963,\n  \"supermoon</w>\": 36571,\n  \"supernatural</w>\": 15484,\n  \"supernova</w>\": 39843,\n  \"superrugby</w>\": 48717,\n  \"supersonic</w>\": 42019,\n  \"supersport</w>\": 46319,\n  \"superst\": 38202,\n  \"superstar\": 32551,\n  \"superstar</w>\": 10472,\n  \"superstars</w>\": 25797,\n  \"supervis\": 12709,\n  \"supervised</w>\": 41316,\n  \"supervision</w>\": 36234,\n  \"supervisor</w>\": 20366,\n  \"supervisors</w>\": 37958,\n  \"superyacht</w>\": 42714,\n  \"supp\": 1023,\n  \"supper</w>\": 15727,\n  \"supple\": 31431,\n  \"supplement</w>\": 19924,\n  \"supplements</w>\": 21265,\n  \"supplied</w>\": 24106,\n  \"supplier</w>\": 18043,\n  \"suppliers</w>\": 24196,\n  \"supplies</w>\": 9384,\n  \"supply\": 25074,\n  \"supply</w>\": 6389,\n  \"supplychain</w>\": 31224,\n  \"supplying</w>\": 32739,\n  \"suppo\": 6941,\n  \"suppor\": 2104,\n  \"support\": 12062,\n  \"support</w>\": 1425,\n  \"supported</w>\": 8038,\n  \"supporter</w>\": 12992,\n  \"supporters</w>\": 7403,\n  \"supportindiefilm</w>\": 43976,\n  \"supporting</w>\": 3976,\n  \"supportive</w>\": 18313,\n  \"supportlocal</w>\": 43852,\n  \"supports</w>\": 8336,\n  \"supportsmall\": 30941,\n  \"supportsmallstreamers</w>\": 36097,\n  \"suppose</w>\": 18924,\n  \"supposed</w>\": 9119,\n  \"supposedly</w>\": 32302,\n  \"suppre\": 20542,\n  \"suppression</w>\": 36508,\n  \"supra</w>\": 48485,\n  \"supre\": 5875,\n  \"supremac\": 28643,\n  \"supremacist</w>\": 39005,\n  \"supremacy</w>\": 28913,\n  \"supreme\": 35222,\n  \"supreme</w>\": 7468,\n  \"supt</w>\": 23625,\n  \"sur\": 1090,\n  \"sur</w>\": 7123,\n  \"sura\": 33412,\n  \"sura</w>\": 49125,\n  \"surabaya</w>\": 45227,\n  \"surance</w>\": 22184,\n  \"surat</w>\": 30201,\n  \"sure\": 14320,\n  \"sure</w>\": 1650,\n  \"sured</w>\": 36869,\n  \"surely</w>\": 11409,\n  \"sures</w>\": 12725,\n  \"suresh\": 32118,\n  \"suresh</w>\": 31464,\n  \"sureshpp\": 41924,\n  \"sureshpprabhu</w>\": 42050,\n  \"surf\": 10176,\n  \"surf</w>\": 10322,\n  \"surface</w>\": 7744,\n  \"surfaces</w>\": 20746,\n  \"surfer</w>\": 24925,\n  \"surfers</w>\": 34842,\n  \"surfing</w>\": 15762,\n  \"surg\": 13045,\n  \"surge</w>\": 17457,\n  \"surgeon</w>\": 16039,\n  \"surgeons</w>\": 26000,\n  \"surger\": 5122,\n  \"surgeries</w>\": 34940,\n  \"surgery</w>\": 5344,\n  \"surgical</w>\": 16386,\n  \"suri\": 14130,\n  \"suri</w>\": 33952,\n  \"suring</w>\": 16817,\n  \"suriya</w>\": 17832,\n  \"surpass</w>\": 45494,\n  \"surpassed</w>\": 25648,\n  \"surplus</w>\": 29413,\n  \"surpri\": 3244,\n  \"surprise</w>\": 5099,\n  \"surprised</w>\": 8949,\n  \"surprises</w>\": 16920,\n  \"surprising</w>\": 14964,\n  \"surprisingly</w>\": 17367,\n  \"surreal</w>\": 18408,\n  \"surrealism</w>\": 41773,\n  \"surrender</w>\": 20964,\n  \"surrendered</w>\": 44601,\n  \"surrey\": 26489,\n  \"surrey</w>\": 14315,\n  \"surro\": 47499,\n  \"surroun\": 8250,\n  \"surround\": 26543,\n  \"surround</w>\": 22999,\n  \"surrounded</w>\": 13589,\n  \"surrounding</w>\": 12544,\n  \"surroundings</w>\": 26915,\n  \"surrounds</w>\": 39012,\n  \"suru</w>\": 49240,\n  \"surve\": 8952,\n  \"surveill\": 15408,\n  \"surveillance</w>\": 15578,\n  \"survey\": 45914,\n  \"survey</w>\": 6809,\n  \"surveying</w>\": 33085,\n  \"surveys</w>\": 25096,\n  \"survi\": 3440,\n  \"surviv\": 12922,\n  \"survival</w>\": 10172,\n  \"survive</w>\": 10431,\n  \"survived</w>\": 13483,\n  \"survives</w>\": 30927,\n  \"surviving</w>\": 18609,\n  \"survivor\": 31934,\n  \"survivor</w>\": 10944,\n  \"survivors</w>\": 13711,\n  \"surya</w>\": 37767,\n  \"sus\": 8091,\n  \"sus</w>\": 3036,\n  \"susa</w>\": 20546,\n  \"susan\": 19922,\n  \"susan</w>\": 10168,\n  \"suscep\": 44270,\n  \"sush\": 22298,\n  \"sushi</w>\": 11729,\n  \"sushmaswar\": 48200,\n  \"susie</w>\": 32284,\n  \"susp\": 7971,\n  \"suspec\": 10298,\n  \"suspect</w>\": 9065,\n  \"suspected</w>\": 15579,\n  \"suspects</w>\": 18265,\n  \"suspen\": 10578,\n  \"suspend</w>\": 41007,\n  \"suspended</w>\": 13126,\n  \"suspends</w>\": 39535,\n  \"suspense</w>\": 21556,\n  \"suspension</w>\": 15417,\n  \"suspici\": 25714,\n  \"suspicion</w>\": 34910,\n  \"suspicious</w>\": 19862,\n  \"sussex\": 31244,\n  \"sussex</w>\": 13266,\n  \"sustain\": 4644,\n  \"sustain</w>\": 28156,\n  \"sustainability</w>\": 9635,\n  \"sustainable\": 23645,\n  \"sustainable</w>\": 7078,\n  \"sustained</w>\": 22699,\n  \"sustaining</w>\": 44418,\n  \"sut\": 23984,\n  \"sut</w>\": 28956,\n  \"sutherland</w>\": 27592,\n  \"sutton\": 39359,\n  \"sutton</w>\": 18564,\n  \"suv</w>\": 15985,\n  \"suz\": 9957,\n  \"suzanne</w>\": 24617,\n  \"suzu\": 36289,\n  \"suzuki</w>\": 16892,\n  \"suzy</w>\": 26552,\n  \"sv\": 6508,\n  \"sv</w>\": 17083,\n  \"svc</w>\": 45065,\n  \"sve\": 47637,\n  \"sven\": 37786,\n  \"sven</w>\": 45183,\n  \"sver\": 45923,\n  \"sville\": 44580,\n  \"sville</w>\": 6741,\n  \"svp</w>\": 28465,\n  \"svt</w>\": 42014,\n  \"svu</w>\": 32123,\n  \"sw\": 1220,\n  \"sw</w>\": 4457,\n  \"swa\": 4707,\n  \"swa</w>\": 31916,\n  \"swach\": 20862,\n  \"swachhb\": 31898,\n  \"swachhbharat</w>\": 36927,\n  \"swag\": 8852,\n  \"swag</w>\": 8177,\n  \"swagg</w>\": 47702,\n  \"swagger</w>\": 35797,\n  \"swain</w>\": 43226,\n  \"swal\": 13433,\n  \"swallow</w>\": 28979,\n  \"swallowed</w>\": 46956,\n  \"swallows</w>\": 45124,\n  \"swam</w>\": 42539,\n  \"swami</w>\": 25021,\n  \"swamp\": 41953,\n  \"swamp</w>\": 16595,\n  \"swamy</w>\": 28445,\n  \"swan\": 8215,\n  \"swan</w>\": 12530,\n  \"swana</w>\": 24699,\n  \"swans</w>\": 19516,\n  \"swansea</w>\": 16567,\n  \"swanson</w>\": 34797,\n  \"swap</w>\": 15234,\n  \"swapped</w>\": 39077,\n  \"swapping</w>\": 44702,\n  \"swaps</w>\": 49242,\n  \"swar\": 11680,\n  \"swarm</w>\": 31577,\n  \"swarovski</w>\": 28515,\n  \"swat\": 32547,\n  \"swat</w>\": 26482,\n  \"swatch</w>\": 48053,\n  \"sway\": 26443,\n  \"sway</w>\": 26617,\n  \"swc</w>\": 42231,\n  \"swe\": 2350,\n  \"swe</w>\": 38070,\n  \"swear</w>\": 7406,\n  \"swearing</w>\": 32627,\n  \"sweat\": 10282,\n  \"sweat</w>\": 12663,\n  \"sweater</w>\": 11455,\n  \"sweaters</w>\": 31303,\n  \"sweating</w>\": 33215,\n  \"sweats</w>\": 39321,\n  \"sweatshirt</w>\": 22442,\n  \"sweaty</w>\": 28419,\n  \"sweden</w>\": 8760,\n  \"swedish</w>\": 11585,\n  \"swee\": 1812,\n  \"sweek</w>\": 30017,\n  \"sweeney</w>\": 27286,\n  \"sweep\": 23220,\n  \"sweep</w>\": 13669,\n  \"sweeping</w>\": 25719,\n  \"sweeps</w>\": 26887,\n  \"sweepstakes</w>\": 25992,\n  \"sweet\": 10957,\n  \"sweet</w>\": 2418,\n  \"sweetened</w>\": 45577,\n  \"sweeter</w>\": 32873,\n  \"sweetest</w>\": 15180,\n  \"sweethe\": 16316,\n  \"sweetheart</w>\": 18079,\n  \"sweetie</w>\": 24450,\n  \"sweetness</w>\": 29713,\n  \"sweets</w>\": 18045,\n  \"swel\": 48470,\n  \"swell\": 35538,\n  \"swell</w>\": 21490,\n  \"swelling</w>\": 46578,\n  \"swept</w>\": 23311,\n  \"swer\": 30514,\n  \"swfc</w>\": 30227,\n  \"swfl</w>\": 46607,\n  \"swi\": 3881,\n  \"swi</w>\": 45223,\n  \"swick</w>\": 17159,\n  \"swif\": 28548,\n  \"swift\": 34843,\n  \"swift</w>\": 8229,\n  \"swild\": 33909,\n  \"swild</w>\": 38696,\n  \"swildlife</w>\": 46818,\n  \"swim\": 4928,\n  \"swim</w>\": 7681,\n  \"swimmer</w>\": 25475,\n  \"swimmers</w>\": 27776,\n  \"swimming</w>\": 7411,\n  \"swims</w>\": 46798,\n  \"swimsuit</w>\": 25504,\n  \"swimwear</w>\": 31889,\n  \"swin\": 14554,\n  \"swin</w>\": 40798,\n  \"swindon</w>\": 29540,\n  \"swine</w>\": 31166,\n  \"swing\": 25292,\n  \"swing</w>\": 7429,\n  \"swinging</w>\": 26760,\n  \"swings</w>\": 29141,\n  \"swipe</w>\": 31828,\n  \"swire</w>\": 42753,\n  \"swirl</w>\": 35795,\n  \"swis\": 23611,\n  \"swish</w>\": 38571,\n  \"swiss\": 37917,\n  \"swiss</w>\": 9287,\n  \"swit\": 3726,\n  \"switch\": 22480,\n  \"switch</w>\": 5893,\n  \"switched</w>\": 22869,\n  \"switches</w>\": 33569,\n  \"switching</w>\": 21155,\n  \"swith\": 17299,\n  \"switzer\": 9835,\n  \"switzerland</w>\": 9912,\n  \"swivel</w>\": 48256,\n  \"swo\": 38673,\n  \"swol\": 29575,\n  \"swollen</w>\": 36129,\n  \"swoo\": 29744,\n  \"swood</w>\": 24158,\n  \"swoon</w>\": 37028,\n  \"swoop</w>\": 45661,\n  \"sword\": 33294,\n  \"sword</w>\": 11356,\n  \"swords</w>\": 27181,\n  \"swork</w>\": 42722,\n  \"sworld</w>\": 33305,\n  \"sworn</w>\": 21130,\n  \"sworth</w>\": 13322,\n  \"swt</w>\": 38878,\n  \"swx</w>\": 20597,\n  \"sx\": 9402,\n  \"sx</w>\": 17806,\n  \"sxsw</w>\": 13369,\n  \"sy\": 974,\n  \"sy</w>\": 2126,\n  \"sya</w>\": 35017,\n  \"sycam\": 34911,\n  \"sycamore</w>\": 43086,\n  \"syd\": 4525,\n  \"syd</w>\": 22504,\n  \"sydney\": 15878,\n  \"sydney</w>\": 5278,\n  \"syed</w>\": 27624,\n  \"syfy</w>\": 32047,\n  \"sykes</w>\": 27287,\n  \"syl\": 6452,\n  \"sylla\": 41708,\n  \"sylvania</w>\": 12011,\n  \"sylve\": 28369,\n  \"sylvester</w>\": 37214,\n  \"sylvia</w>\": 25670,\n  \"sym\": 3645,\n  \"sym</w>\": 40327,\n  \"symb\": 22987,\n  \"symbol</w>\": 13085,\n  \"symboli\": 22019,\n  \"symbolic</w>\": 33177,\n  \"symbolism</w>\": 44679,\n  \"symbols</w>\": 25476,\n  \"symmetry</w>\": 31427,\n  \"symp\": 11468,\n  \"sympathi\": 47493,\n  \"sympathy</w>\": 32477,\n  \"symph\": 9544,\n  \"symphonic</w>\": 42639,\n  \"symphony</w>\": 11180,\n  \"sympo\": 9730,\n  \"symposium</w>\": 9971,\n  \"symptom</w>\": 47799,\n  \"symptoms</w>\": 12956,\n  \"syn\": 3758,\n  \"syn</w>\": 36090,\n  \"synago\": 30945,\n  \"synagogue</w>\": 33518,\n  \"sync</w>\": 20081,\n  \"synchron\": 23943,\n  \"syndic\": 21098,\n  \"syndicate</w>\": 28779,\n  \"syndrome</w>\": 10927,\n  \"syner\": 22283,\n  \"synergy</w>\": 32012,\n  \"syno\": 31533,\n  \"synod</w>\": 47712,\n  \"synopsis</w>\": 47018,\n  \"synth\": 33841,\n  \"synth</w>\": 24462,\n  \"synthe\": 22604,\n  \"synthesi\": 33565,\n  \"synthesis</w>\": 21602,\n  \"synthesizer</w>\": 44077,\n  \"synthetic</w>\": 19917,\n  \"syou\": 26742,\n  \"syour\": 21718,\n  \"syrac\": 17279,\n  \"syracuse</w>\": 19640,\n  \"syrah</w>\": 45364,\n  \"syri\": 18917,\n  \"syria</w>\": 5563,\n  \"syrian\": 47562,\n  \"syrian</w>\": 10041,\n  \"syrians</w>\": 41392,\n  \"syrup</w>\": 16611,\n  \"sys</w>\": 26726,\n  \"syste\": 1933,\n  \"system\": 47813,\n  \"system</w>\": 2422,\n  \"systematic</w>\": 28586,\n  \"systemic</w>\": 33807,\n  \"systems</w>\": 4828,\n  \"sz\": 13438,\n  \"sz</w>\": 15879,\n  \"sze\": 44507,\n  \"szn</w>\": 48092,\n  \"sÃ£o</w>\": 45911,\n  \"sÃ©\": 37879,\n  \"t\": 83,\n  \"t</w>\": 339,\n  \"ta\": 648,\n  \"ta</w>\": 1397,\n  \"taa</w>\": 43874,\n  \"tab\": 2648,\n  \"tab</w>\": 14724,\n  \"tabby</w>\": 36145,\n  \"tabern\": 48991,\n  \"tability</w>\": 15770,\n  \"table\": 12108,\n  \"table</w>\": 2175,\n  \"tableau</w>\": 39723,\n  \"tables</w>\": 7822,\n  \"tablet</w>\": 12494,\n  \"tabletop\": 46843,\n  \"tabletop</w>\": 25773,\n  \"tablets</w>\": 20436,\n  \"tably</w>\": 24440,\n  \"taboo</w>\": 38400,\n  \"tabs</w>\": 29163,\n  \"tac\": 3145,\n  \"tac</w>\": 22653,\n  \"tache</w>\": 39239,\n  \"tack\": 6339,\n  \"tack</w>\": 34446,\n  \"tackle</w>\": 10294,\n  \"tackled</w>\": 47218,\n  \"tackles</w>\": 18021,\n  \"tackling</w>\": 19628,\n  \"taco\": 31924,\n  \"taco</w>\": 12436,\n  \"tacoma</w>\": 25397,\n  \"tacos</w>\": 14090,\n  \"tactic</w>\": 40377,\n  \"tactical</w>\": 17137,\n  \"tactics</w>\": 16410,\n  \"tacular</w>\": 48985,\n  \"tad\": 15890,\n  \"tad</w>\": 19860,\n  \"tado</w>\": 40846,\n  \"tae\": 15257,\n  \"tae</w>\": 15580,\n  \"taehyung</w>\": 24642,\n  \"taek\": 30753,\n  \"taekwondo</w>\": 39963,\n  \"taemin</w>\": 30600,\n  \"taeyang</w>\": 45802,\n  \"taeyeon</w>\": 27389,\n  \"taf\": 29660,\n  \"taft</w>\": 42141,\n  \"tag\": 3456,\n  \"tag</w>\": 3640,\n  \"tage</w>\": 2669,\n  \"tages</w>\": 39902,\n  \"tagged</w>\": 12969,\n  \"tagging</w>\": 25138,\n  \"tagne</w>\": 47467,\n  \"tags</w>\": 11606,\n  \"tah\": 14822,\n  \"tah</w>\": 7090,\n  \"tahit\": 45385,\n  \"tahoe</w>\": 26140,\n  \"tai\": 6511,\n  \"tai</w>\": 13040,\n  \"taiji</w>\": 30185,\n  \"tail\": 7156,\n  \"tail</w>\": 4132,\n  \"tailed</w>\": 20626,\n  \"tailgate</w>\": 23168,\n  \"tailgating</w>\": 42625,\n  \"tailo\": 27230,\n  \"tailor</w>\": 29870,\n  \"tailored</w>\": 28275,\n  \"tailoring</w>\": 46357,\n  \"tails</w>\": 16066,\n  \"tain\": 2841,\n  \"tain</w>\": 1908,\n  \"taine\": 21214,\n  \"taine</w>\": 32299,\n  \"tained</w>\": 10212,\n  \"taining</w>\": 7565,\n  \"tainment</w>\": 30063,\n  \"tains</w>\": 3952,\n  \"tainted</w>\": 47211,\n  \"taipei</w>\": 24356,\n  \"tair\": 29143,\n  \"tairp</w>\": 43707,\n  \"tait</w>\": 45325,\n  \"taiwan\": 36319,\n  \"taiwan</w>\": 12626,\n  \"taiwanese</w>\": 41416,\n  \"taj\": 28937,\n  \"taj</w>\": 24805,\n  \"taji\": 46358,\n  \"tak\": 15070,\n  \"tak</w>\": 14458,\n  \"taka\": 24070,\n  \"taka</w>\": 40968,\n  \"take\": 5052,\n  \"take</w>\": 1172,\n  \"takeaway</w>\": 25737,\n  \"takeaways</w>\": 32080,\n  \"takeme\": 41748,\n  \"taken</w>\": 2807,\n  \"takeoff</w>\": 32789,\n  \"takeover</w>\": 11863,\n  \"taker</w>\": 17939,\n  \"takers</w>\": 30775,\n  \"takes</w>\": 2633,\n  \"takin</w>\": 30890,\n  \"taking</w>\": 2019,\n  \"taku</w>\": 48168,\n  \"tal\": 976,\n  \"tal</w>\": 2066,\n  \"tala</w>\": 29845,\n  \"talaga</w>\": 35349,\n  \"talbot</w>\": 30585,\n  \"tale\": 33971,\n  \"tale</w>\": 7798,\n  \"talent\": 30435,\n  \"talent</w>\": 5114,\n  \"talented</w>\": 5331,\n  \"talents</w>\": 16136,\n  \"tales</w>\": 9469,\n  \"tali\": 12122,\n  \"tali</w>\": 45406,\n  \"taliban</w>\": 20788,\n  \"talis\": 36480,\n  \"tality</w>\": 15631,\n  \"talk\": 12462,\n  \"talk</w>\": 1841,\n  \"talked</w>\": 10153,\n  \"talkin</w>\": 26040,\n  \"talking\": 31463,\n  \"talking</w>\": 2578,\n  \"talks</w>\": 3237,\n  \"tall\": 11664,\n  \"tall</w>\": 7771,\n  \"talla\": 21528,\n  \"tallade\": 44220,\n  \"tallahassee</w>\": 37832,\n  \"taller</w>\": 23470,\n  \"tallest</w>\": 19774,\n  \"tallinn</w>\": 45079,\n  \"tally</w>\": 16323,\n  \"talon</w>\": 47897,\n  \"tam\": 2661,\n  \"tam</w>\": 12246,\n  \"tama</w>\": 45424,\n  \"tamanna\": 48055,\n  \"tamar\": 22901,\n  \"tamara</w>\": 35697,\n  \"tame\": 38557,\n  \"tame</w>\": 32778,\n  \"tamed</w>\": 40575,\n  \"tami</w>\": 39429,\n  \"tamil\": 23046,\n  \"tamil</w>\": 14033,\n  \"tamilnadu</w>\": 32371,\n  \"tamine</w>\": 42566,\n  \"tammy</w>\": 28396,\n  \"tampa</w>\": 10906,\n  \"tampab\": 37852,\n  \"tamu</w>\": 34105,\n  \"tan\": 2123,\n  \"tan</w>\": 5039,\n  \"tana</w>\": 21396,\n  \"tand\": 20244,\n  \"tandem</w>\": 33756,\n  \"tane\": 13344,\n  \"tane</w>\": 24923,\n  \"taneous</w>\": 22275,\n  \"taneously</w>\": 24422,\n  \"tang\": 10425,\n  \"tang</w>\": 20794,\n  \"tanger\": 31844,\n  \"tangerine</w>\": 42045,\n  \"tangible</w>\": 44823,\n  \"tangle</w>\": 36568,\n  \"tangled</w>\": 33587,\n  \"tango</w>\": 24089,\n  \"tani\": 31374,\n  \"tani</w>\": 32985,\n  \"tania</w>\": 45369,\n  \"tank\": 29858,\n  \"tank</w>\": 6172,\n  \"tanker</w>\": 25020,\n  \"tanks</w>\": 14223,\n  \"tann\": 19174,\n  \"tanner</w>\": 22001,\n  \"tanning</w>\": 27985,\n  \"tans</w>\": 27332,\n  \"tant\": 41383,\n  \"tant</w>\": 41695,\n  \"tante</w>\": 48262,\n  \"tanto</w>\": 45685,\n  \"tany\": 34410,\n  \"tanya</w>\": 26800,\n  \"tanz\": 47399,\n  \"tanzania</w>\": 15711,\n  \"tao\": 29084,\n  \"tao</w>\": 18923,\n  \"tap\": 17923,\n  \"tap</w>\": 7888,\n  \"tapas</w>\": 27361,\n  \"tape\": 18332,\n  \"tape</w>\": 5749,\n  \"taped</w>\": 33219,\n  \"tapes</w>\": 17903,\n  \"tapestry</w>\": 33525,\n  \"taping</w>\": 24355,\n  \"tapp\": 27644,\n  \"tapp</w>\": 27764,\n  \"tapped</w>\": 26649,\n  \"tapping</w>\": 27882,\n  \"tapro\": 34415,\n  \"taproom</w>\": 40266,\n  \"taps</w>\": 23267,\n  \"tar\": 2002,\n  \"tar</w>\": 6977,\n  \"tara</w>\": 15264,\n  \"tarak</w>\": 37813,\n  \"taran\": 32370,\n  \"tarantino</w>\": 41180,\n  \"tarde</w>\": 48670,\n  \"tardis</w>\": 35410,\n  \"tares</w>\": 34587,\n  \"targe\": 9620,\n  \"target\": 38556,\n  \"target</w>\": 5400,\n  \"targeted</w>\": 14968,\n  \"targeting</w>\": 15818,\n  \"targets</w>\": 12468,\n  \"tari\": 4238,\n  \"tari</w>\": 38012,\n  \"tarian</w>\": 11762,\n  \"tarians</w>\": 42789,\n  \"taries</w>\": 47291,\n  \"tariff</w>\": 40220,\n  \"tariffs</w>\": 28335,\n  \"tariq</w>\": 42526,\n  \"tarmac</w>\": 44294,\n  \"taro</w>\": 26264,\n  \"tarot</w>\": 23702,\n  \"tart\": 16707,\n  \"tart</w>\": 14120,\n  \"tartan</w>\": 35064,\n  \"tarts</w>\": 29799,\n  \"tary\": 31729,\n  \"tary</w>\": 5065,\n  \"tarzan</w>\": 45463,\n  \"tas\": 6538,\n  \"tas</w>\": 10163,\n  \"tash\": 35272,\n  \"tasha</w>\": 44967,\n  \"task\": 39189,\n  \"task</w>\": 10549,\n  \"tasks</w>\": 19453,\n  \"tasmania</w>\": 22429,\n  \"tasmanian</w>\": 45102,\n  \"tassel</w>\": 49276,\n  \"tast\": 10839,\n  \"taste\": 14314,\n  \"taste</w>\": 5219,\n  \"tasted</w>\": 22827,\n  \"tasteof\": 38097,\n  \"taster</w>\": 29743,\n  \"tastes</w>\": 13736,\n  \"tastic</w>\": 21337,\n  \"tasting</w>\": 7656,\n  \"tastings</w>\": 49273,\n  \"tasty\": 43390,\n  \"tasty</w>\": 8568,\n  \"tat\": 2652,\n  \"tat</w>\": 21592,\n  \"tata</w>\": 19300,\n  \"tate\": 44476,\n  \"tate</w>\": 13295,\n  \"tath\": 27566,\n  \"tati\": 31433,\n  \"tatiana</w>\": 48837,\n  \"tation</w>\": 5280,\n  \"tations</w>\": 32324,\n  \"tator</w>\": 18791,\n  \"tators</w>\": 37206,\n  \"tats</w>\": 44557,\n  \"tatt\": 9232,\n  \"tatted</w>\": 41605,\n  \"tattoo\": 15980,\n  \"tattoo</w>\": 6325,\n  \"tattooed</w>\": 28541,\n  \"tattoos</w>\": 14900,\n  \"tatum</w>\": 26103,\n  \"tau\": 6620,\n  \"tau</w>\": 20510,\n  \"taught</w>\": 9306,\n  \"taun\": 23910,\n  \"taunton</w>\": 40681,\n  \"taurus</w>\": 32881,\n  \"taver\": 37776,\n  \"tavern</w>\": 18644,\n  \"taw\": 33868,\n  \"taw</w>\": 40289,\n  \"tawa</w>\": 29035,\n  \"tawards</w>\": 14351,\n  \"tax\": 4581,\n  \"tax</w>\": 3879,\n  \"taxation</w>\": 36847,\n  \"taxes</w>\": 11462,\n  \"taxi\": 25160,\n  \"taxi</w>\": 11380,\n  \"taxider\": 47420,\n  \"taxis</w>\": 34009,\n  \"taxpay\": 17986,\n  \"taxpayer</w>\": 30978,\n  \"taxpayers</w>\": 25503,\n  \"tay\": 6542,\n  \"tay</w>\": 15073,\n  \"taya</w>\": 38484,\n  \"tayl\": 3913,\n  \"taylor\": 9044,\n  \"taylor</w>\": 3961,\n  \"taylorswift</w>\": 18936,\n  \"tayo</w>\": 33941,\n  \"taz\": 41475,\n  \"taz</w>\": 31870,\n  \"tb\": 1990,\n  \"tb</w>\": 7490,\n  \"tba</w>\": 34363,\n  \"tball\": 8390,\n  \"tball</w>\": 1467,\n  \"tbc</w>\": 31807,\n  \"tbd</w>\": 45548,\n  \"tbh</w>\": 13238,\n  \"tbi</w>\": 45868,\n  \"tbl</w>\": 42962,\n  \"tbli\": 43664,\n  \"tblightning</w>\": 44178,\n  \"tbo</w>\": 34255,\n  \"tbr</w>\": 46643,\n  \"tbs</w>\": 37368,\n  \"tbt</w>\": 2950,\n  \"tc\": 6820,\n  \"tc</w>\": 5454,\n  \"tca</w>\": 35116,\n  \"tch\": 10744,\n  \"tch</w>\": 4048,\n  \"tches</w>\": 42001,\n  \"tcm\": 21501,\n  \"tcm</w>\": 26588,\n  \"tcmparty</w>\": 24338,\n  \"tcot</w>\": 8995,\n  \"tcs</w>\": 39107,\n  \"tcu</w>\": 26791,\n  \"td\": 20578,\n  \"td</w>\": 3192,\n  \"tdf</w>\": 21844,\n  \"tdi</w>\": 45621,\n  \"tdp</w>\": 47009,\n  \"tds</w>\": 20238,\n  \"tdsb</w>\": 29836,\n  \"te\": 600,\n  \"te</w>\": 756,\n  \"tea\": 41053,\n  \"tea</w>\": 3274,\n  \"teach\": 2043,\n  \"teach</w>\": 6865,\n  \"teacher\": 18051,\n  \"teacher</w>\": 4008,\n  \"teachers</w>\": 5069,\n  \"teaches</w>\": 17110,\n  \"teaching</w>\": 5141,\n  \"teachings</w>\": 32119,\n  \"teal</w>\": 22821,\n  \"team\": 2085,\n  \"team</w>\": 1027,\n  \"teamcanada</w>\": 46636,\n  \"teamed</w>\": 20590,\n  \"teamgb</w>\": 40971,\n  \"teaming</w>\": 24392,\n  \"teammate</w>\": 17900,\n  \"teammates</w>\": 13921,\n  \"teams</w>\": 3891,\n  \"teamsisd</w>\": 34703,\n  \"teamusa</w>\": 28625,\n  \"teamwork</w>\": 14657,\n  \"teaparty</w>\": 33065,\n  \"teapo\": 35745,\n  \"teapot</w>\": 40749,\n  \"tear\": 15802,\n  \"tear</w>\": 11862,\n  \"tearful</w>\": 46873,\n  \"tearing</w>\": 24785,\n  \"tears</w>\": 7688,\n  \"teas\": 23003,\n  \"teas</w>\": 29314,\n  \"tease</w>\": 25163,\n  \"teased</w>\": 49122,\n  \"teaser</w>\": 8982,\n  \"teasers</w>\": 48990,\n  \"teases</w>\": 28509,\n  \"teasing</w>\": 36507,\n  \"teat\": 26376,\n  \"teatime</w>\": 48948,\n  \"teatro</w>\": 35756,\n  \"teau</w>\": 24931,\n  \"tebow</w>\": 37797,\n  \"tec\": 17381,\n  \"tec</w>\": 11612,\n  \"tech\": 1782,\n  \"tech</w>\": 2061,\n  \"techcrunch</w>\": 42110,\n  \"techn\": 6252,\n  \"technews</w>\": 31787,\n  \"technic\": 16639,\n  \"technic</w>\": 37666,\n  \"technical\": 49231,\n  \"technical</w>\": 7582,\n  \"technically</w>\": 23180,\n  \"technician</w>\": 22540,\n  \"technicians</w>\": 35513,\n  \"techno\": 2599,\n  \"techno</w>\": 17564,\n  \"technological</w>\": 23068,\n  \"technologies</w>\": 10040,\n  \"technology</w>\": 3089,\n  \"techs</w>\": 41353,\n  \"ted\": 4841,\n  \"ted</w>\": 775,\n  \"tedcruz</w>\": 27517,\n  \"teddy\": 25758,\n  \"teddy</w>\": 11798,\n  \"tedly</w>\": 8539,\n  \"tedu</w>\": 42517,\n  \"tedx\": 17950,\n  \"tedx</w>\": 41504,\n  \"tee\": 12676,\n  \"tee</w>\": 3385,\n  \"teed</w>\": 13692,\n  \"teen\": 5398,\n  \"teen</w>\": 4697,\n  \"teenage</w>\": 14069,\n  \"teenager</w>\": 19338,\n  \"teenagers</w>\": 25989,\n  \"teenchoice</w>\": 28203,\n  \"teens</w>\": 12375,\n  \"teenth</w>\": 20249,\n  \"teenwolf</w>\": 40067,\n  \"teeny</w>\": 41622,\n  \"teer</w>\": 48648,\n  \"tees</w>\": 9641,\n  \"teessi\": 43295,\n  \"teeth</w>\": 8225,\n  \"tega</w>\": 29508,\n  \"tegr\": 39801,\n  \"teh\": 18720,\n  \"teh</w>\": 29601,\n  \"tehran</w>\": 26399,\n  \"tein</w>\": 33223,\n  \"tej</w>\": 46724,\n  \"tek\": 17489,\n  \"tek</w>\": 18294,\n  \"tekken</w>\": 29843,\n  \"tel\": 4978,\n  \"tel</w>\": 2226,\n  \"telang\": 23469,\n  \"telangana</w>\": 26386,\n  \"tele\": 3103,\n  \"tele</w>\": 32851,\n  \"telecom</w>\": 21057,\n  \"telecommunications</w>\": 39900,\n  \"telegram</w>\": 26780,\n  \"telegraph</w>\": 14713,\n  \"telephone</w>\": 17243,\n  \"telescope</w>\": 19037,\n  \"telethon</w>\": 49266,\n  \"televised</w>\": 39470,\n  \"television</w>\": 8608,\n  \"telford</w>\": 38323,\n  \"tell\": 16069,\n  \"tell</w>\": 2330,\n  \"teller</w>\": 20415,\n  \"tellers</w>\": 42707,\n  \"telling</w>\": 5507,\n  \"tells</w>\": 5217,\n  \"tellu\": 42511,\n  \"telly</w>\": 31475,\n  \"tels</w>\": 43607,\n  \"telugu</w>\": 22927,\n  \"tely</w>\": 5630,\n  \"tem\": 2404,\n  \"tem</w>\": 17536,\n  \"tema</w>\": 45881,\n  \"teme\": 43378,\n  \"temp\": 2684,\n  \"temp</w>\": 11097,\n  \"tempe</w>\": 36723,\n  \"temper\": 5981,\n  \"temper</w>\": 35521,\n  \"temperature</w>\": 9543,\n  \"temperatures</w>\": 11575,\n  \"tempered</w>\": 40521,\n  \"tempest</w>\": 36053,\n  \"templ\": 16679,\n  \"template</w>\": 18591,\n  \"templates</w>\": 30498,\n  \"temple\": 21841,\n  \"temple</w>\": 5620,\n  \"temples</w>\": 24024,\n  \"tempo</w>\": 19625,\n  \"tempor\": 4858,\n  \"temporal</w>\": 43656,\n  \"temporarily</w>\": 23189,\n  \"temporary</w>\": 6513,\n  \"temps</w>\": 11668,\n  \"tempt</w>\": 28460,\n  \"temptation</w>\": 30118,\n  \"tempted</w>\": 26226,\n  \"tempting</w>\": 34876,\n  \"ten\": 1149,\n  \"ten</w>\": 2581,\n  \"tenant</w>\": 16954,\n  \"tenants</w>\": 26023,\n  \"tenay</w>\": 45384,\n  \"tenberg</w>\": 31329,\n  \"tend\": 17630,\n  \"tend</w>\": 21252,\n  \"tendency</w>\": 47277,\n  \"tender\": 23020,\n  \"tender</w>\": 9838,\n  \"tenderloin</w>\": 42750,\n  \"tenders</w>\": 44741,\n  \"tending</w>\": 35084,\n  \"tendon</w>\": 48459,\n  \"tends</w>\": 39962,\n  \"tene\": 24868,\n  \"tened</w>\": 13682,\n  \"tener</w>\": 29054,\n  \"teneri\": 28000,\n  \"tenerife</w>\": 29401,\n  \"teners</w>\": 41307,\n  \"teness</w>\": 18018,\n  \"teng\": 34016,\n  \"teng</w>\": 28474,\n  \"tennant</w>\": 29310,\n  \"tennes\": 9514,\n  \"tennessee</w>\": 10053,\n  \"tennis\": 31504,\n  \"tennis</w>\": 5298,\n  \"tenor</w>\": 30521,\n  \"tens</w>\": 14062,\n  \"tense</w>\": 23518,\n  \"tension</w>\": 15221,\n  \"tensions</w>\": 24224,\n  \"tenstein</w>\": 49139,\n  \"tent\": 18505,\n  \"tent</w>\": 10782,\n  \"tentative</w>\": 48238,\n  \"tenth</w>\": 27483,\n  \"tention</w>\": 12191,\n  \"tents</w>\": 30730,\n  \"tenure</w>\": 30739,\n  \"teo</w>\": 18665,\n  \"tep</w>\": 31806,\n  \"tequ\": 17502,\n  \"tequila</w>\": 18510,\n  \"ter\": 704,\n  \"ter</w>\": 652,\n  \"tera</w>\": 15155,\n  \"teras</w>\": 44830,\n  \"tere\": 11329,\n  \"tered\": 49272,\n  \"tered</w>\": 4389,\n  \"terence</w>\": 33806,\n  \"teresa</w>\": 19081,\n  \"teri</w>\": 30917,\n  \"teria</w>\": 22685,\n  \"terie</w>\": 42276,\n  \"tering</w>\": 7929,\n  \"term\": 40991,\n  \"term</w>\": 4780,\n  \"termin\": 4766,\n  \"terminal</w>\": 11816,\n  \"terminals</w>\": 44091,\n  \"terminator</w>\": 29609,\n  \"terminology</w>\": 48896,\n  \"terms</w>\": 8663,\n  \"tern\": 41572,\n  \"tern</w>\": 12959,\n  \"terns</w>\": 25251,\n  \"tero\": 20727,\n  \"tero</w>\": 24697,\n  \"terps</w>\": 41471,\n  \"terr\": 3921,\n  \"terra\": 22366,\n  \"terra</w>\": 18816,\n  \"terrac\": 28549,\n  \"terrace</w>\": 13820,\n  \"terraces</w>\": 47508,\n  \"terracotta</w>\": 45123,\n  \"terrain</w>\": 20184,\n  \"terran\": 43726,\n  \"terre\": 33888,\n  \"terre</w>\": 27537,\n  \"terrell</w>\": 39494,\n  \"terrence</w>\": 38746,\n  \"terrestrial</w>\": 46299,\n  \"terri\": 4504,\n  \"terri</w>\": 36722,\n  \"terrible</w>\": 9741,\n  \"terribly</w>\": 34558,\n  \"terrier</w>\": 14455,\n  \"terriers</w>\": 47047,\n  \"terrific</w>\": 13837,\n  \"terrified</w>\": 28204,\n  \"terrifying</w>\": 18526,\n  \"territ\": 10720,\n  \"territorial</w>\": 39163,\n  \"territories</w>\": 32846,\n  \"territory</w>\": 13936,\n  \"terror\": 9596,\n  \"terror</w>\": 9327,\n  \"terrori\": 6836,\n  \"terrorism</w>\": 10583,\n  \"terrorist</w>\": 10575,\n  \"terrorists</w>\": 12835,\n  \"terry\": 19378,\n  \"terry</w>\": 8561,\n  \"ters\": 24102,\n  \"ters</w>\": 1737,\n  \"terti\": 48386,\n  \"tery</w>\": 4184,\n  \"tes\": 8019,\n  \"tes</w>\": 3609,\n  \"tesco</w>\": 15434,\n  \"tese</w>\": 33320,\n  \"tesla</w>\": 12254,\n  \"tess\": 21807,\n  \"tess</w>\": 20840,\n  \"tessa</w>\": 32063,\n  \"test\": 7738,\n  \"test</w>\": 1628,\n  \"testam\": 23477,\n  \"testament</w>\": 24609,\n  \"tested</w>\": 10576,\n  \"tester</w>\": 32707,\n  \"testi\": 18373,\n  \"testic\": 42364,\n  \"testify</w>\": 33088,\n  \"testifying</w>\": 46347,\n  \"testim\": 12553,\n  \"testimonial</w>\": 28834,\n  \"testimony</w>\": 18672,\n  \"testing</w>\": 4967,\n  \"testo\": 42428,\n  \"testosterone</w>\": 45168,\n  \"tests</w>\": 8715,\n  \"tet\": 40468,\n  \"tet</w>\": 13275,\n  \"tetra\": 40902,\n  \"tetris</w>\": 45934,\n  \"teu\": 47152,\n  \"teuk</w>\": 39979,\n  \"teur</w>\": 27120,\n  \"tex\": 2056,\n  \"tex</w>\": 11728,\n  \"texan\": 35287,\n  \"texan</w>\": 38386,\n  \"texans</w>\": 17580,\n  \"texanscheer</w>\": 43717,\n  \"texas\": 15713,\n  \"texas</w>\": 3403,\n  \"texaste\": 46469,\n  \"text\": 18169,\n  \"text</w>\": 4160,\n  \"textbook</w>\": 25952,\n  \"textbooks</w>\": 44041,\n  \"texted</w>\": 29004,\n  \"textile</w>\": 19789,\n  \"textiles</w>\": 24326,\n  \"texting</w>\": 18600,\n  \"texts</w>\": 12767,\n  \"texture</w>\": 16505,\n  \"textured</w>\": 32168,\n  \"textures</w>\": 28063,\n  \"tey</w>\": 32395,\n  \"tez</w>\": 22664,\n  \"tf\": 18828,\n  \"tf</w>\": 5001,\n  \"tfc</w>\": 30186,\n  \"tfl</w>\": 29918,\n  \"tford</w>\": 22493,\n  \"tful</w>\": 17108,\n  \"tfw</w>\": 16741,\n  \"tg\": 7665,\n  \"tg</w>\": 11981,\n  \"tgif</w>\": 14483,\n  \"th\": 513,\n  \"th</w>\": 640,\n  \"tha\": 18470,\n  \"tha</w>\": 4715,\n  \"thab\": 38219,\n  \"thad\": 48339,\n  \"thai\": 28054,\n  \"thai</w>\": 8825,\n  \"thail\": 7258,\n  \"thailand</w>\": 7469,\n  \"thak\": 22801,\n  \"thakur</w>\": 38427,\n  \"thal\": 7967,\n  \"thal</w>\": 12323,\n  \"thala</w>\": 17784,\n  \"thalai\": 25206,\n  \"thalaivar</w>\": 44918,\n  \"thalap\": 39789,\n  \"thalapathy\": 45405,\n  \"thalapathy</w>\": 23324,\n  \"thall</w>\": 36007,\n  \"tham\": 11761,\n  \"tham</w>\": 8896,\n  \"thames\": 43472,\n  \"thames</w>\": 15321,\n  \"than\": 792,\n  \"than</w>\": 1126,\n  \"thand\": 44465,\n  \"thane</w>\": 21463,\n  \"thang</w>\": 24870,\n  \"thani</w>\": 31322,\n  \"thank\": 2790,\n  \"thank</w>\": 1144,\n  \"thanked</w>\": 32079,\n  \"thankful\": 38839,\n  \"thankful</w>\": 6217,\n  \"thankfully</w>\": 22089,\n  \"thanking</w>\": 21989,\n  \"thanks\": 5672,\n  \"thanks</w>\": 1085,\n  \"thanksgiving\": 45732,\n  \"thanksgiving</w>\": 6167,\n  \"thanku</w>\": 45710,\n  \"thankyou\": 18050,\n  \"thankyou</w>\": 9911,\n  \"thanniversary</w>\": 35564,\n  \"thanos</w>\": 36709,\n  \"thanx</w>\": 25095,\n  \"thar\": 14396,\n  \"thar</w>\": 38843,\n  \"thard</w>\": 43474,\n  \"that\": 6303,\n  \"that</w>\": 682,\n  \"thatcher</w>\": 32496,\n  \"thats\": 44636,\n  \"thats</w>\": 9254,\n  \"thaw\": 26081,\n  \"thaw</w>\": 47229,\n  \"thbewithyou</w>\": 41067,\n  \"thc</w>\": 20091,\n  \"thcentury</w>\": 49111,\n  \"thd</w>\": 28219,\n  \"thday</w>\": 37801,\n  \"the\": 599,\n  \"the</w>\": 518,\n  \"thea\": 15935,\n  \"thea</w>\": 25429,\n  \"thead</w>\": 25259,\n  \"theal\": 45728,\n  \"thealth</w>\": 31398,\n  \"thear\": 43283,\n  \"theart\": 44678,\n  \"theast</w>\": 8378,\n  \"theastern</w>\": 17877,\n  \"theat\": 2263,\n  \"theater\": 39438,\n  \"theater</w>\": 6128,\n  \"theaters</w>\": 14689,\n  \"theatre\": 19857,\n  \"theatre</w>\": 3292,\n  \"theatres</w>\": 21680,\n  \"theatrical</w>\": 26833,\n  \"theband</w>\": 27695,\n  \"thebeatles</w>\": 35645,\n  \"thebest\": 40883,\n  \"thebest</w>\": 25856,\n  \"thebig\": 24732,\n  \"theblack\": 47718,\n  \"thec\": 48659,\n  \"thed</w>\": 31405,\n  \"thedaily\": 33550,\n  \"theday</w>\": 4408,\n  \"thedream</w>\": 39417,\n  \"thee\": 44475,\n  \"thee</w>\": 15108,\n  \"theeconomist</w>\": 44518,\n  \"theellenshow</w>\": 35342,\n  \"thefilm</w>\": 31665,\n  \"theflash</w>\": 25434,\n  \"theforce\": 40002,\n  \"theforceawakens</w>\": 48033,\n  \"theft</w>\": 13286,\n  \"thefuture</w>\": 34287,\n  \"thegame</w>\": 24428,\n  \"thegood\": 28594,\n  \"thegreat\": 28721,\n  \"thei\": 44522,\n  \"their</w>\": 911,\n  \"theirs</w>\": 29297,\n  \"thel\": 5403,\n  \"thelast\": 23495,\n  \"thelastjedi</w>\": 47992,\n  \"theless</w>\": 27712,\n  \"theli\": 15277,\n  \"thelittle\": 46872,\n  \"thelo\": 47036,\n  \"thelove\": 40668,\n  \"thelove</w>\": 43200,\n  \"them\": 5435,\n  \"them</w>\": 1180,\n  \"themasters</w>\": 48378,\n  \"theme\": 38524,\n  \"theme</w>\": 5849,\n  \"themed</w>\": 10126,\n  \"themes</w>\": 17849,\n  \"themet</w>\": 48183,\n  \"themovie</w>\": 27062,\n  \"themselves</w>\": 6503,\n  \"then\": 5929,\n  \"then</w>\": 1594,\n  \"thenburg</w>\": 45209,\n  \"thene\": 17012,\n  \"thenew\": 24212,\n  \"thenext\": 47881,\n  \"thenight</w>\": 43336,\n  \"theno\": 37172,\n  \"thenorth</w>\": 34338,\n  \"theo\": 17043,\n  \"theo</w>\": 18084,\n  \"theod\": 26653,\n  \"theodore</w>\": 30743,\n  \"theological</w>\": 41162,\n  \"theology</w>\": 24095,\n  \"theon</w>\": 34653,\n  \"theone</w>\": 46231,\n  \"theopen</w>\": 41438,\n  \"theore\": 22690,\n  \"theoretical</w>\": 35585,\n  \"theori\": 34804,\n  \"theories</w>\": 23937,\n  \"theory</w>\": 7143,\n  \"thepeople</w>\": 33597,\n  \"thepersonal\": 29981,\n  \"thepersonalnetwork</w>\": 30016,\n  \"thephoto\": 18303,\n  \"thephotohour</w>\": 18607,\n  \"ther\": 1160,\n  \"ther</w>\": 743,\n  \"therap\": 4499,\n  \"therapeu\": 19332,\n  \"therapeutic</w>\": 23240,\n  \"therapeutics</w>\": 49101,\n  \"therapies</w>\": 30179,\n  \"therapist</w>\": 20608,\n  \"therapists</w>\": 34763,\n  \"therapper</w>\": 49340,\n  \"therapy</w>\": 5257,\n  \"there\": 5283,\n  \"there</w>\": 997,\n  \"thereal\": 8074,\n  \"thereal</w>\": 41140,\n  \"thereby</w>\": 43308,\n  \"thered</w>\": 10208,\n  \"therefore</w>\": 16865,\n  \"theres</w>\": 18494,\n  \"theresa</w>\": 14126,\n  \"therese</w>\": 47996,\n  \"theresistance</w>\": 22845,\n  \"theri\": 28967,\n  \"theri</w>\": 45297,\n  \"therine\": 26807,\n  \"therine</w>\": 9239,\n  \"thering</w>\": 7891,\n  \"therland</w>\": 25351,\n  \"thermal</w>\": 13689,\n  \"thermo\": 22303,\n  \"thermom\": 31138,\n  \"thermometer</w>\": 38172,\n  \"thermost\": 42391,\n  \"thern\": 10919,\n  \"thern</w>\": 3137,\n  \"thero\": 13165,\n  \"theroad</w>\": 29807,\n  \"therock</w>\": 30036,\n  \"theroy\": 38146,\n  \"thers</w>\": 1959,\n  \"thes\": 40556,\n  \"thes</w>\": 6460,\n  \"thescript</w>\": 47061,\n  \"these\": 40366,\n  \"these</w>\": 1071,\n  \"theses</w>\": 39388,\n  \"thesimpsons</w>\": 45513,\n  \"thesims</w>\": 34192,\n  \"thesis</w>\": 10673,\n  \"thessal\": 41491,\n  \"thessaloni\": 41753,\n  \"thest</w>\": 35343,\n  \"thesun</w>\": 45617,\n  \"theta</w>\": 27694,\n  \"thetic</w>\": 7954,\n  \"thetimes</w>\": 36039,\n  \"thevamp\": 33701,\n  \"thevoice\": 47206,\n  \"thevoice</w>\": 30258,\n  \"thewalkingdead</w>\": 18087,\n  \"thewanted</w>\": 43008,\n  \"theworld\": 44988,\n  \"theworld</w>\": 17475,\n  \"thex\": 35990,\n  \"they\": 15174,\n  \"they</w>\": 889,\n  \"theyre</w>\": 28266,\n  \"thfc</w>\": 17729,\n  \"thi\": 2362,\n  \"thi</w>\": 9111,\n  \"thia</w>\": 17943,\n  \"thiago</w>\": 44537,\n  \"thian</w>\": 23214,\n  \"thians</w>\": 28187,\n  \"thibau\": 48351,\n  \"thic\": 26107,\n  \"thic</w>\": 11794,\n  \"thick\": 18417,\n  \"thick</w>\": 11006,\n  \"thicker</w>\": 43302,\n  \"thickness</w>\": 40754,\n  \"thief</w>\": 18508,\n  \"thier</w>\": 25595,\n  \"thierry</w>\": 32929,\n  \"thieves</w>\": 17899,\n  \"thigh\": 47124,\n  \"thigh</w>\": 22877,\n  \"thighs</w>\": 30847,\n  \"thik</w>\": 20512,\n  \"thika</w>\": 44619,\n  \"thill</w>\": 31266,\n  \"thim\": 42331,\n  \"thin\": 2178,\n  \"thin</w>\": 7847,\n  \"thine</w>\": 47192,\n  \"thing\": 7499,\n  \"thing</w>\": 946,\n  \"things\": 30670,\n  \"things</w>\": 1739,\n  \"thingsto\": 43924,\n  \"thingy</w>\": 36888,\n  \"think\": 9820,\n  \"think</w>\": 1331,\n  \"thinkbig\": 26015,\n  \"thinkbigsundaywithmarsha</w>\": 26666,\n  \"thinker</w>\": 34577,\n  \"thinkers</w>\": 32779,\n  \"thinkin</w>\": 34443,\n  \"thinking</w>\": 3291,\n  \"thinks</w>\": 6109,\n  \"thinner</w>\": 47247,\n  \"thir\": 6030,\n  \"third\": 32102,\n  \"third</w>\": 3981,\n  \"thirds</w>\": 42582,\n  \"thirst</w>\": 23563,\n  \"thirsty\": 39731,\n  \"thirsty</w>\": 17521,\n  \"thirteen</w>\": 34209,\n  \"thirty</w>\": 20813,\n  \"thiru\": 43292,\n  \"this\": 4340,\n  \"this</w>\": 589,\n  \"thisday</w>\": 6532,\n  \"thisdayin\": 33641,\n  \"thisdayinhistory</w>\": 46913,\n  \"thisi\": 7299,\n  \"thisis\": 14887,\n  \"thismorning</w>\": 36245,\n  \"thistle</w>\": 29039,\n  \"thistory</w>\": 28904,\n  \"thium</w>\": 21804,\n  \"thletics</w>\": 17765,\n  \"thm</w>\": 10407,\n  \"thman</w>\": 30079,\n  \"thms</w>\": 19874,\n  \"thn\": 44155,\n  \"thn</w>\": 45587,\n  \"thnx</w>\": 25480,\n  \"tho\": 1325,\n  \"tho</w>\": 5025,\n  \"thof\": 18943,\n  \"thofjuly</w>\": 21613,\n  \"thol\": 29319,\n  \"thole</w>\": 31029,\n  \"tholes</w>\": 42465,\n  \"thology</w>\": 9881,\n  \"thom\": 2585,\n  \"thom</w>\": 24094,\n  \"thomas\": 12574,\n  \"thomas</w>\": 3888,\n  \"thome</w>\": 21289,\n  \"thomp\": 37274,\n  \"thompson\": 42181,\n  \"thompson</w>\": 8535,\n  \"thomson</w>\": 24151,\n  \"thon\": 38776,\n  \"thon</w>\": 8924,\n  \"thong</w>\": 37058,\n  \"thood</w>\": 15623,\n  \"thor\": 4130,\n  \"thor</w>\": 13691,\n  \"thora</w>\": 46866,\n  \"thorn\": 12957,\n  \"thorn</w>\": 18466,\n  \"thorne</w>\": 18025,\n  \"thorns</w>\": 33650,\n  \"thornton</w>\": 23592,\n  \"thorough\": 15294,\n  \"thorough</w>\": 34788,\n  \"thoroughbred</w>\": 43248,\n  \"thoroughly</w>\": 19750,\n  \"thorpe</w>\": 18099,\n  \"thos</w>\": 41965,\n  \"those</w>\": 1753,\n  \"thot</w>\": 33736,\n  \"thou\": 1513,\n  \"thou</w>\": 17781,\n  \"though</w>\": 2846,\n  \"thought\": 23948,\n  \"thought</w>\": 2449,\n  \"thoughtful</w>\": 19592,\n  \"thoughts</w>\": 3618,\n  \"thour</w>\": 27125,\n  \"thousand</w>\": 9344,\n  \"thousands</w>\": 7089,\n  \"thouse\": 40318,\n  \"thouse</w>\": 7819,\n  \"thoven</w>\": 23078,\n  \"thr\": 1111,\n  \"thr</w>\": 19138,\n  \"thra\": 17761,\n  \"thra</w>\": 32797,\n  \"thrash</w>\": 38262,\n  \"thre\": 1607,\n  \"thread\": 31108,\n  \"thread</w>\": 8815,\n  \"threads</w>\": 24957,\n  \"threat\": 7527,\n  \"threat</w>\": 7212,\n  \"threaten</w>\": 26097,\n  \"threatened</w>\": 16391,\n  \"threatening</w>\": 16400,\n  \"threatens</w>\": 20555,\n  \"threats</w>\": 12766,\n  \"three\": 21615,\n  \"three</w>\": 2097,\n  \"thren</w>\": 41776,\n  \"thresh\": 29779,\n  \"threshold</w>\": 33791,\n  \"threw</w>\": 12746,\n  \"thri\": 8713,\n  \"thrift</w>\": 27779,\n  \"thrill</w>\": 21023,\n  \"thrilled</w>\": 7879,\n  \"thriller</w>\": 9653,\n  \"thrilling</w>\": 20101,\n  \"thrills</w>\": 39829,\n  \"thrive</w>\": 17669,\n  \"thriving</w>\": 22677,\n  \"thro\": 2101,\n  \"thro</w>\": 28624,\n  \"throat</w>\": 16371,\n  \"thrombo\": 47585,\n  \"throne</w>\": 15999,\n  \"thrones</w>\": 8072,\n  \"throp</w>\": 34939,\n  \"throttle</w>\": 37139,\n  \"through\": 6091,\n  \"through</w>\": 1417,\n  \"throughout</w>\": 6721,\n  \"throughs</w>\": 48278,\n  \"throw\": 3315,\n  \"throw</w>\": 6293,\n  \"throwback\": 6001,\n  \"throwback</w>\": 5058,\n  \"throwbackthursday</w>\": 6326,\n  \"thrower</w>\": 40199,\n  \"throwing</w>\": 9734,\n  \"thrown</w>\": 15079,\n  \"throws</w>\": 14723,\n  \"thru\": 23856,\n  \"thru</w>\": 6162,\n  \"thrush</w>\": 46133,\n  \"thrust</w>\": 40202,\n  \"ths</w>\": 2079,\n  \"tht</w>\": 23554,\n  \"thu\": 3837,\n  \"thu</w>\": 14153,\n  \"thub</w>\": 25660,\n  \"thug\": 37212,\n  \"thug</w>\": 18137,\n  \"thugs</w>\": 27686,\n  \"thul\": 28368,\n  \"thulhu</w>\": 37560,\n  \"thum\": 14679,\n  \"thumb\": 19514,\n  \"thumb</w>\": 18674,\n  \"thumbnail</w>\": 32365,\n  \"thumbs</w>\": 17599,\n  \"thun\": 32267,\n  \"thunder\": 6161,\n  \"thunder</w>\": 8951,\n  \"thunderbird</w>\": 45131,\n  \"thunderbirds</w>\": 44286,\n  \"thunderbolt</w>\": 43596,\n  \"thunderstorm</w>\": 12005,\n  \"thunderstorms</w>\": 19525,\n  \"thunt</w>\": 46763,\n  \"thur\": 1837,\n  \"thur</w>\": 21704,\n  \"thurman</w>\": 41291,\n  \"thurs</w>\": 9908,\n  \"thursday\": 11218,\n  \"thursday</w>\": 2221,\n  \"thursdaymotivation</w>\": 39375,\n  \"thursdays</w>\": 21444,\n  \"thursdaythoughts</w>\": 14866,\n  \"thurst</w>\": 33970,\n  \"thus</w>\": 12457,\n  \"thusi\": 9488,\n  \"thwaite</w>\": 48469,\n  \"thweeksary</w>\": 30871,\n  \"thx</w>\": 5913,\n  \"thy\": 7804,\n  \"thy</w>\": 3362,\n  \"thyme</w>\": 29805,\n  \"thyro\": 25174,\n  \"thyroid</w>\": 32558,\n  \"ti\": 555,\n  \"ti</w>\": 2605,\n  \"tia</w>\": 6709,\n  \"tial</w>\": 2826,\n  \"tially</w>\": 14503,\n  \"tian\": 23011,\n  \"tian</w>\": 8125,\n  \"tians</w>\": 35182,\n  \"tiara</w>\": 38322,\n  \"tib\": 47868,\n  \"tibet\": 19927,\n  \"tibet</w>\": 22234,\n  \"tibetan</w>\": 24057,\n  \"tible</w>\": 11453,\n  \"tic\": 890,\n  \"tic</w>\": 1550,\n  \"tica</w>\": 9669,\n  \"tical\": 34191,\n  \"tical</w>\": 4342,\n  \"tically</w>\": 13375,\n  \"ticals</w>\": 30861,\n  \"tice</w>\": 3122,\n  \"tich</w>\": 48769,\n  \"tician</w>\": 43358,\n  \"ticism</w>\": 26491,\n  \"tick\": 24640,\n  \"tick</w>\": 15617,\n  \"ticket\": 25740,\n  \"ticket</w>\": 4500,\n  \"ticketing</w>\": 44432,\n  \"tickets</w>\": 2015,\n  \"ticking</w>\": 35842,\n  \"tickle</w>\": 42999,\n  \"ticks</w>\": 40269,\n  \"tico</w>\": 17670,\n  \"ticon</w>\": 45996,\n  \"tics</w>\": 2419,\n  \"ticul\": 15538,\n  \"ticus</w>\": 44277,\n  \"tid\": 26002,\n  \"tid</w>\": 23727,\n  \"tidal</w>\": 21949,\n  \"tide\": 15698,\n  \"tide</w>\": 9105,\n  \"tides</w>\": 25524,\n  \"tidy</w>\": 23858,\n  \"tie\": 14072,\n  \"tie</w>\": 3422,\n  \"tied</w>\": 9889,\n  \"tiem\": 34762,\n  \"tien</w>\": 47538,\n  \"tiene</w>\": 43438,\n  \"tier\": 14390,\n  \"tier</w>\": 6598,\n  \"tierney</w>\": 45693,\n  \"tiers</w>\": 24604,\n  \"ties\": 25556,\n  \"ties</w>\": 2499,\n  \"tiest</w>\": 18300,\n  \"tiesto</w>\": 46367,\n  \"tif</w>\": 23216,\n  \"tiff\": 11112,\n  \"tiff</w>\": 20699,\n  \"tiffany\": 30467,\n  \"tiffany</w>\": 14446,\n  \"tification</w>\": 43923,\n  \"tified</w>\": 40854,\n  \"tiful</w>\": 29123,\n  \"tify</w>\": 6677,\n  \"tig</w>\": 31999,\n  \"tiger\": 11954,\n  \"tiger</w>\": 6531,\n  \"tigers</w>\": 6934,\n  \"tigh\": 31365,\n  \"tight\": 25763,\n  \"tight</w>\": 9123,\n  \"tighten</w>\": 46653,\n  \"tighter</w>\": 48193,\n  \"tightly</w>\": 37568,\n  \"tights</w>\": 29581,\n  \"tijuana</w>\": 45273,\n  \"tik\": 24986,\n  \"tik</w>\": 32403,\n  \"tiki</w>\": 30107,\n  \"til\": 6124,\n  \"til</w>\": 1763,\n  \"tile\": 26217,\n  \"tile</w>\": 8227,\n  \"tiles</w>\": 10607,\n  \"tility</w>\": 38180,\n  \"till\": 17462,\n  \"till</w>\": 4267,\n  \"tilla</w>\": 26063,\n  \"tillerson</w>\": 47738,\n  \"tilly</w>\": 41199,\n  \"tilt</w>\": 23601,\n  \"tim\": 1292,\n  \"tim</w>\": 3863,\n  \"timate</w>\": 4754,\n  \"timb\": 26627,\n  \"timber\": 14441,\n  \"timber</w>\": 16246,\n  \"timberlake</w>\": 28274,\n  \"timbers</w>\": 39911,\n  \"timberwolves</w>\": 41190,\n  \"time\": 3764,\n  \"time</w>\": 788,\n  \"timed</w>\": 32727,\n  \"timehop</w>\": 19944,\n  \"timel\": 23549,\n  \"timelapse</w>\": 48154,\n  \"timeless</w>\": 15558,\n  \"timeline</w>\": 11492,\n  \"timely</w>\": 19250,\n  \"timeout</w>\": 41536,\n  \"timer</w>\": 19725,\n  \"timers</w>\": 44574,\n  \"times\": 26445,\n  \"times</w>\": 1661,\n  \"timesnow</w>\": 45487,\n  \"timesof\": 32522,\n  \"timesofindia</w>\": 44182,\n  \"timetable</w>\": 31971,\n  \"timeto\": 29187,\n  \"timing</w>\": 13624,\n  \"timm\": 22444,\n  \"timmy</w>\": 33252,\n  \"timo\": 13390,\n  \"timo</w>\": 33777,\n  \"timothy\": 42087,\n  \"timothy</w>\": 18560,\n  \"timp\": 42166,\n  \"tin\": 1310,\n  \"tin</w>\": 5420,\n  \"tina</w>\": 9257,\n  \"tinder</w>\": 24287,\n  \"tine</w>\": 22341,\n  \"ting\": 7451,\n  \"ting</w>\": 694,\n  \"tinged</w>\": 44829,\n  \"tings</w>\": 35332,\n  \"tini</w>\": 26839,\n  \"tink\": 39278,\n  \"tinker\": 45272,\n  \"tinker</w>\": 40910,\n  \"tino</w>\": 20538,\n  \"tins</w>\": 37359,\n  \"tint</w>\": 40497,\n  \"tinted</w>\": 42618,\n  \"tiny\": 21716,\n  \"tiny</w>\": 5591,\n  \"tio</w>\": 27562,\n  \"tion\": 2274,\n  \"tion</w>\": 740,\n  \"tional\": 22460,\n  \"tional</w>\": 2986,\n  \"tionality</w>\": 24514,\n  \"tionally</w>\": 12409,\n  \"tionary</w>\": 8381,\n  \"tione\": 44318,\n  \"tioned</w>\": 9083,\n  \"tioning</w>\": 15528,\n  \"tionist</w>\": 25732,\n  \"tions</w>\": 1371,\n  \"tious</w>\": 14255,\n  \"tip\": 15383,\n  \"tip</w>\": 4623,\n  \"tipoff</w>\": 44521,\n  \"tipp\": 32294,\n  \"tipped</w>\": 31878,\n  \"tipper\": 38095,\n  \"tipperary</w>\": 45612,\n  \"tipping</w>\": 27827,\n  \"tips</w>\": 3173,\n  \"tipton</w>\": 48809,\n  \"tiptuesday</w>\": 42112,\n  \"tique</w>\": 37772,\n  \"tir\": 25467,\n  \"tir</w>\": 38462,\n  \"tire\": 29128,\n  \"tire</w>\": 9362,\n  \"tired</w>\": 6533,\n  \"tireless</w>\": 39835,\n  \"tirelessly</w>\": 41548,\n  \"tires</w>\": 15533,\n  \"tiring</w>\": 42630,\n  \"tiru\": 36033,\n  \"tis\": 7839,\n  \"tis</w>\": 7394,\n  \"tise</w>\": 13745,\n  \"tisgarh</w>\": 40538,\n  \"tish\": 45148,\n  \"tish</w>\": 28784,\n  \"tism</w>\": 27113,\n  \"tiss\": 28155,\n  \"tissue</w>\": 15368,\n  \"tissues</w>\": 32172,\n  \"tist</w>\": 7902,\n  \"tista</w>\": 25580,\n  \"tists</w>\": 25944,\n  \"tit\": 1991,\n  \"tit</w>\": 13202,\n  \"tita</w>\": 40936,\n  \"titan\": 13496,\n  \"titan</w>\": 15516,\n  \"titanic</w>\": 20729,\n  \"titanium</w>\": 24409,\n  \"titans</w>\": 13066,\n  \"titi\": 17434,\n  \"titi</w>\": 48504,\n  \"title\": 28033,\n  \"title</w>\": 3644,\n  \"titled</w>\": 9939,\n  \"titles</w>\": 9780,\n  \"tito</w>\": 26838,\n  \"titus</w>\": 36102,\n  \"tium</w>\": 21975,\n  \"tiv\": 1835,\n  \"tiva</w>\": 41886,\n  \"tive\": 14640,\n  \"tive</w>\": 1420,\n  \"tively</w>\": 9883,\n  \"tiveness</w>\": 20955,\n  \"tives</w>\": 7570,\n  \"tivity</w>\": 9859,\n  \"tivo</w>\": 32162,\n  \"tix</w>\": 5835,\n  \"tiz</w>\": 19376,\n  \"tj\": 18890,\n  \"tj</w>\": 18988,\n  \"tk\": 22344,\n  \"tk</w>\": 20676,\n  \"tko</w>\": 37347,\n  \"tks</w>\": 38739,\n  \"tl\": 14325,\n  \"tl</w>\": 8190,\n  \"tland</w>\": 30697,\n  \"tlap</w>\": 41976,\n  \"tlc</w>\": 22047,\n  \"tle\": 39141,\n  \"tle</w>\": 5825,\n  \"tles</w>\": 39363,\n  \"tless</w>\": 17427,\n  \"tlot</w>\": 41080,\n  \"tls</w>\": 47367,\n  \"tly\": 37483,\n  \"tly</w>\": 1646,\n  \"tm\": 9430,\n  \"tm</w>\": 7789,\n  \"tman</w>\": 20796,\n  \"tmc</w>\": 35263,\n  \"tment</w>\": 26485,\n  \"tml\": 39445,\n  \"tmltalk</w>\": 42260,\n  \"tmnt</w>\": 32444,\n  \"tmobile</w>\": 34901,\n  \"tmr</w>\": 35906,\n  \"tmrw</w>\": 16496,\n  \"tms</w>\": 44496,\n  \"tmund</w>\": 23801,\n  \"tmw</w>\": 45827,\n  \"tmz</w>\": 37248,\n  \"tn\": 3827,\n  \"tn</w>\": 7248,\n  \"tna</w>\": 21150,\n  \"tnam</w>\": 8079,\n  \"tner</w>\": 34922,\n  \"tness</w>\": 35212,\n  \"tney</w>\": 9523,\n  \"tng</w>\": 35898,\n  \"tnt</w>\": 20659,\n  \"tnx</w>\": 38220,\n  \"to\": 580,\n  \"to</w>\": 531,\n  \"toa\": 17916,\n  \"toad</w>\": 26096,\n  \"toast\": 24654,\n  \"toast</w>\": 10920,\n  \"toasted</w>\": 23533,\n  \"toaster</w>\": 39061,\n  \"toasty</w>\": 44726,\n  \"tob</w>\": 24260,\n  \"tobac\": 12611,\n  \"tobacco</w>\": 13905,\n  \"tobago</w>\": 39482,\n  \"tobe\": 17534,\n  \"tobe</w>\": 28740,\n  \"tober\": 18162,\n  \"tober</w>\": 2925,\n  \"toberfest</w>\": 26249,\n  \"tobi\": 40335,\n  \"tobi</w>\": 48374,\n  \"tobias</w>\": 32464,\n  \"tobin</w>\": 42466,\n  \"toby\": 29659,\n  \"toby</w>\": 18333,\n  \"toc\": 41907,\n  \"toc</w>\": 30643,\n  \"tock</w>\": 25274,\n  \"tod\": 38239,\n  \"tod</w>\": 33568,\n  \"toda</w>\": 47141,\n  \"todas</w>\": 36150,\n  \"today\": 11800,\n  \"today</w>\": 721,\n  \"todayin\": 32957,\n  \"todays</w>\": 13513,\n  \"todayshow</w>\": 29739,\n  \"todd\": 10398,\n  \"todd</w>\": 9951,\n  \"toddler</w>\": 17772,\n  \"toddlers</w>\": 36719,\n  \"toddy</w>\": 38926,\n  \"todo\": 48857,\n  \"todo</w>\": 23087,\n  \"todos</w>\": 33355,\n  \"toe\": 47756,\n  \"toe</w>\": 11344,\n  \"toes</w>\": 16511,\n  \"tof\": 6659,\n  \"toff</w>\": 27319,\n  \"toffee</w>\": 34880,\n  \"tofficial</w>\": 47953,\n  \"tofthe\": 23678,\n  \"toftheday</w>\": 20566,\n  \"tofu</w>\": 24692,\n  \"tog</w>\": 45715,\n  \"toge\": 1903,\n  \"together\": 17858,\n  \"together</w>\": 1952,\n  \"togo</w>\": 26729,\n  \"tography</w>\": 33968,\n  \"toh</w>\": 26851,\n  \"toi\": 7472,\n  \"toi</w>\": 26941,\n  \"toid</w>\": 49124,\n  \"toile\": 43148,\n  \"toilet</w>\": 11071,\n  \"toilets</w>\": 24027,\n  \"toire</w>\": 39534,\n  \"tok\": 16690,\n  \"tok</w>\": 27010,\n  \"token\": 32634,\n  \"token</w>\": 17134,\n  \"tokens</w>\": 23562,\n  \"tokyo\": 35038,\n  \"tokyo</w>\": 6667,\n  \"tol\": 4678,\n  \"tol</w>\": 32962,\n  \"told</w>\": 3527,\n  \"tole\": 15677,\n  \"toledo</w>\": 19812,\n  \"toler\": 12150,\n  \"tolerance</w>\": 20377,\n  \"tolerant</w>\": 38536,\n  \"tolerate</w>\": 35556,\n  \"tolkien</w>\": 32989,\n  \"toll\": 44090,\n  \"toll</w>\": 14155,\n  \"tollywood</w>\": 42016,\n  \"tology</w>\": 34799,\n  \"tom\": 999,\n  \"tom</w>\": 2435,\n  \"toma\": 42360,\n  \"toma</w>\": 44710,\n  \"tomas\": 35944,\n  \"tomas</w>\": 27178,\n  \"tomat\": 12041,\n  \"tomato</w>\": 9867,\n  \"tomatoes</w>\": 13004,\n  \"tomb\": 37187,\n  \"tomb</w>\": 15582,\n  \"tombs</w>\": 48613,\n  \"tombstone</w>\": 45729,\n  \"tome\": 24137,\n  \"tome</w>\": 24283,\n  \"tomi</w>\": 46290,\n  \"tomlin</w>\": 46649,\n  \"tomlinson</w>\": 17484,\n  \"tommorow</w>\": 42871,\n  \"tommy\": 16573,\n  \"tommy</w>\": 8876,\n  \"tomo\": 31223,\n  \"tomo</w>\": 34434,\n  \"tomor\": 1277,\n  \"tomorrow\": 19728,\n  \"tomorrow</w>\": 1293,\n  \"tomorrowland</w>\": 34951,\n  \"tomorrows</w>\": 32258,\n  \"tomorrowspaper\": 35005,\n  \"tomorrowspaperstoday</w>\": 35190,\n  \"tomp\": 43544,\n  \"tompkins</w>\": 49068,\n  \"toms</w>\": 10545,\n  \"tomy</w>\": 18730,\n  \"ton\": 838,\n  \"ton</w>\": 917,\n  \"tona</w>\": 13459,\n  \"tone\": 32366,\n  \"tone</w>\": 8408,\n  \"toned</w>\": 29426,\n  \"toner</w>\": 40614,\n  \"tones</w>\": 14744,\n  \"tong</w>\": 21510,\n  \"tonga</w>\": 37882,\n  \"tongue\": 44820,\n  \"tongue</w>\": 13626,\n  \"tongues</w>\": 39837,\n  \"toni\": 17766,\n  \"toni</w>\": 17171,\n  \"tonic</w>\": 17808,\n  \"tonics</w>\": 34647,\n  \"tonight</w>\": 1009,\n  \"tonights</w>\": 23312,\n  \"tonite</w>\": 13449,\n  \"tonka</w>\": 42781,\n  \"tonline</w>\": 45867,\n  \"tonne</w>\": 42450,\n  \"tonnes</w>\": 24813,\n  \"tons</w>\": 7555,\n  \"tony\": 9150,\n  \"tony</w>\": 4767,\n  \"tonyawards</w>\": 46068,\n  \"too\": 1843,\n  \"too</w>\": 1256,\n  \"took</w>\": 2280,\n  \"tool\": 13718,\n  \"tool</w>\": 5999,\n  \"toolbox</w>\": 46599,\n  \"toolkit</w>\": 29849,\n  \"tools</w>\": 5771,\n  \"toom\": 27550,\n  \"toon\": 24664,\n  \"toon</w>\": 19701,\n  \"toonami</w>\": 48336,\n  \"toons</w>\": 35345,\n  \"toor\": 42590,\n  \"tooth\": 15316,\n  \"tooth</w>\": 12030,\n  \"toothbrush</w>\": 36841,\n  \"toothpaste</w>\": 37322,\n  \"tooting</w>\": 42969,\n  \"top\": 5534,\n  \"top</w>\": 1253,\n  \"topaz</w>\": 46125,\n  \"tope\": 32149,\n  \"tope</w>\": 42239,\n  \"topeka</w>\": 46884,\n  \"topia</w>\": 29618,\n  \"topic</w>\": 8720,\n  \"topical</w>\": 37464,\n  \"topics</w>\": 11916,\n  \"topless</w>\": 37415,\n  \"topo\": 23008,\n  \"topoli</w>\": 30152,\n  \"topp\": 19529,\n  \"topped</w>\": 12588,\n  \"topper</w>\": 31780,\n  \"toppers</w>\": 41651,\n  \"topping</w>\": 21071,\n  \"toppings</w>\": 47554,\n  \"topps</w>\": 20201,\n  \"tops</w>\": 8154,\n  \"topshop</w>\": 40953,\n  \"topus</w>\": 21495,\n  \"tor\": 937,\n  \"tor</w>\": 1208,\n  \"tora</w>\": 45147,\n  \"torah</w>\": 37945,\n  \"toral</w>\": 45282,\n  \"torch\": 31921,\n  \"torch</w>\": 15820,\n  \"tore\": 38066,\n  \"tore</w>\": 19385,\n  \"tored</w>\": 38046,\n  \"torg</w>\": 33214,\n  \"tori\": 17689,\n  \"tori</w>\": 17539,\n  \"toria</w>\": 23732,\n  \"torial</w>\": 28029,\n  \"torian</w>\": 48399,\n  \"tories</w>\": 14193,\n  \"torino</w>\": 29178,\n  \"torio</w>\": 34235,\n  \"torn\": 8572,\n  \"torn</w>\": 18023,\n  \"tornad\": 24676,\n  \"tornado</w>\": 9062,\n  \"tornadoes</w>\": 28254,\n  \"toro</w>\": 17892,\n  \"toron\": 37407,\n  \"toronto\": 16866,\n  \"toronto</w>\": 4514,\n  \"torpe\": 34093,\n  \"torpedo</w>\": 46582,\n  \"torquay</w>\": 45738,\n  \"torque</w>\": 31940,\n  \"torre\": 39563,\n  \"torre</w>\": 38009,\n  \"torrent</w>\": 42317,\n  \"torrential</w>\": 41158,\n  \"torres</w>\": 16049,\n  \"tors</w>\": 2546,\n  \"tortilla</w>\": 32683,\n  \"torto\": 24170,\n  \"tortoise</w>\": 30178,\n  \"torture</w>\": 16013,\n  \"tortured</w>\": 29900,\n  \"tory\": 29390,\n  \"tory</w>\": 4214,\n  \"tos</w>\": 6094,\n  \"tosc\": 37719,\n  \"tose</w>\": 38154,\n  \"tosh</w>\": 17109,\n  \"toshi\": 31744,\n  \"toss</w>\": 19656,\n  \"tossed</w>\": 31296,\n  \"tot\": 4618,\n  \"tot</w>\": 23659,\n  \"total\": 13507,\n  \"total</w>\": 4445,\n  \"totally</w>\": 5440,\n  \"totals</w>\": 25772,\n  \"tote\": 48145,\n  \"tote</w>\": 19031,\n  \"totem</w>\": 45376,\n  \"totes</w>\": 37199,\n  \"tothe\": 12222,\n  \"toto</w>\": 39823,\n  \"tots</w>\": 24978,\n  \"totten\": 14360,\n  \"tottenham</w>\": 14889,\n  \"tou\": 1879,\n  \"tou</w>\": 29261,\n  \"touch\": 9480,\n  \"touch</w>\": 4526,\n  \"touchdown</w>\": 18664,\n  \"touchdowns</w>\": 37905,\n  \"touched</w>\": 13190,\n  \"touches</w>\": 14832,\n  \"touching</w>\": 14088,\n  \"touchscreen</w>\": 39095,\n  \"tough\": 12063,\n  \"tough</w>\": 5499,\n  \"tougher</w>\": 33722,\n  \"toughest</w>\": 23773,\n  \"toughness</w>\": 45522,\n  \"toulou\": 27145,\n  \"toulouse</w>\": 30267,\n  \"tour\": 2710,\n  \"tour</w>\": 1760,\n  \"tourde\": 39247,\n  \"toured</w>\": 27654,\n  \"touri\": 4224,\n  \"touring</w>\": 11853,\n  \"tourism\": 23661,\n  \"tourism</w>\": 6556,\n  \"tourist</w>\": 12123,\n  \"tourists</w>\": 15546,\n  \"tournament</w>\": 4097,\n  \"tournaments</w>\": 23058,\n  \"tourney</w>\": 12603,\n  \"tours</w>\": 8948,\n  \"tous</w>\": 37424,\n  \"tout</w>\": 22300,\n  \"touts</w>\": 41274,\n  \"tov</w>\": 28970,\n  \"tow\": 11557,\n  \"tow</w>\": 18653,\n  \"toward</w>\": 8508,\n  \"towards</w>\": 4447,\n  \"towed</w>\": 45419,\n  \"towel</w>\": 15953,\n  \"towels</w>\": 26578,\n  \"tower\": 26669,\n  \"tower</w>\": 4730,\n  \"towering</w>\": 39444,\n  \"towers</w>\": 12701,\n  \"towie</w>\": 44613,\n  \"towin</w>\": 45819,\n  \"towing</w>\": 36963,\n  \"town\": 4068,\n  \"town</w>\": 1605,\n  \"townfc</w>\": 33981,\n  \"townhall</w>\": 33408,\n  \"townhouse</w>\": 40178,\n  \"towns</w>\": 14173,\n  \"townsend</w>\": 26826,\n  \"township</w>\": 14622,\n  \"townsville</w>\": 47330,\n  \"towork</w>\": 48233,\n  \"tox\": 7742,\n  \"tox</w>\": 16145,\n  \"toxic\": 27436,\n  \"toxic</w>\": 12348,\n  \"toxicity</w>\": 41234,\n  \"toxin</w>\": 48899,\n  \"toxins</w>\": 36618,\n  \"toy\": 14387,\n  \"toy</w>\": 5988,\n  \"toya</w>\": 37602,\n  \"toyo\": 7644,\n  \"toyota</w>\": 8908,\n  \"toys\": 39508,\n  \"toys</w>\": 7162,\n  \"tp\": 23760,\n  \"tp</w>\": 15188,\n  \"tpp</w>\": 29411,\n  \"tps</w>\": 35246,\n  \"tq</w>\": 43066,\n  \"tr\": 635,\n  \"tr</w>\": 6337,\n  \"tra\": 752,\n  \"tra</w>\": 2483,\n  \"trac\": 2266,\n  \"trace\": 48611,\n  \"trace</w>\": 14767,\n  \"traced</w>\": 47956,\n  \"traces</w>\": 30913,\n  \"tracey</w>\": 25558,\n  \"tracing</w>\": 27897,\n  \"track\": 10887,\n  \"track</w>\": 2700,\n  \"tracked</w>\": 27049,\n  \"tracker</w>\": 18123,\n  \"tracking</w>\": 10428,\n  \"tracklist</w>\": 39777,\n  \"tracks</w>\": 7579,\n  \"tract</w>\": 4690,\n  \"traction</w>\": 10644,\n  \"tractor</w>\": 14607,\n  \"tractors</w>\": 37854,\n  \"tracy\": 32984,\n  \"tracy</w>\": 15508,\n  \"trad\": 48716,\n  \"trad</w>\": 38037,\n  \"trade\": 10457,\n  \"trade</w>\": 3629,\n  \"traded</w>\": 18860,\n  \"trademark</w>\": 25011,\n  \"trader</w>\": 17700,\n  \"traders</w>\": 19112,\n  \"trades</w>\": 18519,\n  \"trading\": 40083,\n  \"trading</w>\": 6520,\n  \"tradio</w>\": 20689,\n  \"tradition\": 20838,\n  \"tradition</w>\": 8784,\n  \"traditional\": 41113,\n  \"traditional</w>\": 5604,\n  \"traditionally</w>\": 35532,\n  \"traditions</w>\": 18016,\n  \"traf\": 3227,\n  \"trafal\": 32461,\n  \"trafalgar</w>\": 36969,\n  \"traff\": 31571,\n  \"traffic\": 12080,\n  \"traffic</w>\": 3399,\n  \"trafficking</w>\": 15983,\n  \"trafford</w>\": 22912,\n  \"trage\": 12430,\n  \"tragedy</w>\": 14082,\n  \"tragic</w>\": 14828,\n  \"tragically</w>\": 39599,\n  \"trail\": 11523,\n  \"trail</w>\": 4921,\n  \"trailblazer</w>\": 41015,\n  \"trailblazers</w>\": 35954,\n  \"trailer</w>\": 4700,\n  \"trailers</w>\": 24862,\n  \"trailing</w>\": 37427,\n  \"trails</w>\": 10633,\n  \"train\": 9122,\n  \"train</w>\": 3231,\n  \"trained</w>\": 10874,\n  \"trainee</w>\": 25795,\n  \"trainees</w>\": 30382,\n  \"trainer</w>\": 9767,\n  \"trainers</w>\": 18871,\n  \"training\": 34508,\n  \"training</w>\": 2199,\n  \"trains</w>\": 9541,\n  \"trait</w>\": 35160,\n  \"traitor</w>\": 31760,\n  \"traitors</w>\": 42633,\n  \"traits</w>\": 25748,\n  \"trajec\": 42042,\n  \"trak</w>\": 24065,\n  \"tral</w>\": 14609,\n  \"tram\": 9800,\n  \"tram</w>\": 17500,\n  \"tramp</w>\": 46289,\n  \"trampol\": 32905,\n  \"trampoline</w>\": 42800,\n  \"tramrahim</w>\": 35220,\n  \"tran\": 1357,\n  \"tran</w>\": 22031,\n  \"trance\": 30584,\n  \"trance</w>\": 18671,\n  \"trancefamily</w>\": 39630,\n  \"trane</w>\": 35779,\n  \"tranqu\": 18912,\n  \"tranquil</w>\": 35764,\n  \"tranquility</w>\": 36688,\n  \"trans\": 1826,\n  \"trans</w>\": 8126,\n  \"transaction</w>\": 24881,\n  \"transactions</w>\": 21653,\n  \"transat\": 37872,\n  \"transatlantic</w>\": 40703,\n  \"transc\": 21073,\n  \"transcend\": 47087,\n  \"transcript</w>\": 39008,\n  \"transcription</w>\": 48765,\n  \"transfer\": 22659,\n  \"transfer</w>\": 7134,\n  \"transferred</w>\": 29700,\n  \"transferring</w>\": 40924,\n  \"transfers</w>\": 21621,\n  \"transform\": 8142,\n  \"transform</w>\": 12288,\n  \"transformation\": 34204,\n  \"transformation</w>\": 7832,\n  \"transformational</w>\": 47135,\n  \"transformationtuesday</w>\": 36511,\n  \"transformative</w>\": 38106,\n  \"transformed</w>\": 17453,\n  \"transformer</w>\": 38235,\n  \"transformers</w>\": 17843,\n  \"transforming\": 44470,\n  \"transforming</w>\": 19251,\n  \"transforms</w>\": 30312,\n  \"transgender</w>\": 17732,\n  \"transi\": 32236,\n  \"transit</w>\": 10174,\n  \"transiti\": 22939,\n  \"transition</w>\": 11391,\n  \"transitional</w>\": 41519,\n  \"transitioning</w>\": 43586,\n  \"transitions</w>\": 39374,\n  \"transl\": 12243,\n  \"translate</w>\": 22655,\n  \"translated</w>\": 20752,\n  \"translates</w>\": 36334,\n  \"translating</w>\": 42156,\n  \"translation</w>\": 12153,\n  \"translations</w>\": 41367,\n  \"translator</w>\": 36230,\n  \"translucent</w>\": 49052,\n  \"transm\": 18861,\n  \"transmission</w>\": 16103,\n  \"transmitted</w>\": 48605,\n  \"transmitter</w>\": 40457,\n  \"transp\": 11726,\n  \"transpa\": 18524,\n  \"transparen\": 16108,\n  \"transparency</w>\": 16828,\n  \"transparent</w>\": 19017,\n  \"transpl\": 16038,\n  \"transplant\": 41871,\n  \"transplant</w>\": 18771,\n  \"transplantation</w>\": 45207,\n  \"transpor\": 19406,\n  \"transport\": 10231,\n  \"transport</w>\": 7362,\n  \"transportation</w>\": 10911,\n  \"transported</w>\": 29089,\n  \"transporter</w>\": 43568,\n  \"transporting</w>\": 42259,\n  \"trap\": 36224,\n  \"trap</w>\": 9677,\n  \"trape\": 42435,\n  \"trapped</w>\": 15592,\n  \"traps</w>\": 28517,\n  \"tras</w>\": 30638,\n  \"trash\": 39215,\n  \"trash</w>\": 9798,\n  \"traum\": 22263,\n  \"trauma</w>\": 13846,\n  \"traumati\": 46613,\n  \"traumatic</w>\": 29958,\n  \"trav\": 7586,\n  \"trav</w>\": 46955,\n  \"trave\": 35357,\n  \"travel\": 2824,\n  \"travel</w>\": 1949,\n  \"travelblog</w>\": 35957,\n  \"travelblogger</w>\": 25494,\n  \"travelchat</w>\": 46455,\n  \"traveled</w>\": 20384,\n  \"traveler</w>\": 17794,\n  \"travelers</w>\": 20644,\n  \"travelgram</w>\": 40069,\n  \"traveling</w>\": 9365,\n  \"travelled</w>\": 23428,\n  \"traveller</w>\": 22546,\n  \"travellers</w>\": 29583,\n  \"travelling</w>\": 11190,\n  \"travelphotography</w>\": 22808,\n  \"travelpics</w>\": 32293,\n  \"travels</w>\": 11472,\n  \"traveltips</w>\": 36260,\n  \"traveltuesday</w>\": 16713,\n  \"traverse</w>\": 35058,\n  \"travi\": 46971,\n  \"travis\": 27441,\n  \"travis</w>\": 12287,\n  \"traw\": 42288,\n  \"trax</w>\": 34421,\n  \"tray\": 38470,\n  \"tray</w>\": 14621,\n  \"trays</w>\": 39798,\n  \"trc</w>\": 41803,\n  \"tre\": 975,\n  \"tre</w>\": 6033,\n  \"treach\": 46005,\n  \"tread\": 26182,\n  \"tread</w>\": 35658,\n  \"treadmill</w>\": 37780,\n  \"treas\": 8591,\n  \"treason</w>\": 28103,\n  \"treasure</w>\": 9922,\n  \"treasured</w>\": 48068,\n  \"treasurer</w>\": 26985,\n  \"treasures</w>\": 16500,\n  \"treasury</w>\": 20956,\n  \"treat\": 3968,\n  \"treat</w>\": 3901,\n  \"treated</w>\": 9772,\n  \"treating</w>\": 13842,\n  \"treatment</w>\": 4869,\n  \"treatments</w>\": 15839,\n  \"treats</w>\": 8878,\n  \"treaty</w>\": 19967,\n  \"treble</w>\": 33194,\n  \"trecht</w>\": 33812,\n  \"tree\": 13354,\n  \"tree</w>\": 2677,\n  \"treehouse</w>\": 42387,\n  \"trees</w>\": 4682,\n  \"trek\": 13236,\n  \"trek</w>\": 8136,\n  \"trekking</w>\": 25293,\n  \"trell</w>\": 35159,\n  \"tremb\": 44043,\n  \"tremend\": 14659,\n  \"tremendous</w>\": 15988,\n  \"tren\": 2579,\n  \"trench</w>\": 23846,\n  \"trenches</w>\": 38723,\n  \"trend\": 19986,\n  \"trend</w>\": 6643,\n  \"trending</w>\": 6087,\n  \"trends</w>\": 7015,\n  \"trendsetter</w>\": 46666,\n  \"trendy</w>\": 23072,\n  \"trent\": 45885,\n  \"trent</w>\": 15548,\n  \"trenton</w>\": 37470,\n  \"tres</w>\": 23569,\n  \"tress</w>\": 4733,\n  \"tresses</w>\": 24273,\n  \"trevor\": 23437,\n  \"trevor</w>\": 13219,\n  \"trex</w>\": 42114,\n  \"trey\": 36670,\n  \"trey</w>\": 16939,\n  \"tri\": 924,\n  \"tri</w>\": 9618,\n  \"triad</w>\": 45602,\n  \"trial</w>\": 5991,\n  \"trials</w>\": 10992,\n  \"triangle</w>\": 14615,\n  \"triathlon</w>\": 18080,\n  \"trib</w>\": 45151,\n  \"tribal</w>\": 16629,\n  \"tribe\": 19943,\n  \"tribe</w>\": 11365,\n  \"tribeca</w>\": 35184,\n  \"tribes</w>\": 26546,\n  \"tribu\": 3028,\n  \"tribun\": 14311,\n  \"tribunal</w>\": 32911,\n  \"tribune</w>\": 18556,\n  \"tribute</w>\": 5493,\n  \"tributes</w>\": 15537,\n  \"tric\": 9511,\n  \"tric</w>\": 4081,\n  \"trich</w>\": 39519,\n  \"trick\": 17177,\n  \"trick</w>\": 8172,\n  \"tricks</w>\": 13177,\n  \"tricky</w>\": 22319,\n  \"trics</w>\": 31437,\n  \"trident</w>\": 35491,\n  \"tridge</w>\": 18722,\n  \"tried</w>\": 4554,\n  \"tries</w>\": 4315,\n  \"trife\": 48962,\n  \"trigge\": 30509,\n  \"trigger</w>\": 16158,\n  \"triggered</w>\": 30924,\n  \"triggers</w>\": 37319,\n  \"tright</w>\": 29915,\n  \"tril\": 40626,\n  \"trill</w>\": 39297,\n  \"trilli\": 39350,\n  \"trillion</w>\": 20160,\n  \"trilo\": 15183,\n  \"trilogy</w>\": 16862,\n  \"trim</w>\": 14182,\n  \"trimmed</w>\": 40657,\n  \"trin\": 6628,\n  \"trinidad</w>\": 26244,\n  \"trinity\": 30744,\n  \"trinity</w>\": 12267,\n  \"trio</w>\": 10263,\n  \"trip\": 23421,\n  \"trip</w>\": 2529,\n  \"tripad\": 37189,\n  \"tripadvisor</w>\": 38708,\n  \"triple\": 16519,\n  \"triple</w>\": 7673,\n  \"triplets</w>\": 48601,\n  \"tripod</w>\": 36141,\n  \"tripoli</w>\": 40095,\n  \"trippin</w>\": 43073,\n  \"tripping</w>\": 35229,\n  \"trippy</w>\": 35137,\n  \"trips</w>\": 12292,\n  \"tris</w>\": 29690,\n  \"trish\": 40511,\n  \"trish</w>\": 37179,\n  \"trisha</w>\": 39152,\n  \"tristan</w>\": 25497,\n  \"trit\": 37087,\n  \"triton</w>\": 45437,\n  \"triu\": 14782,\n  \"trium\": 21065,\n  \"triumph\": 26507,\n  \"triumph</w>\": 15307,\n  \"triumphant</w>\": 41918,\n  \"trivi\": 21228,\n  \"trivia</w>\": 10642,\n  \"triviatuesday</w>\": 45499,\n  \"trix</w>\": 41017,\n  \"tro\": 1046,\n  \"tro</w>\": 3332,\n  \"trock</w>\": 44368,\n  \"trojan</w>\": 30653,\n  \"trojans</w>\": 25310,\n  \"trol\": 10306,\n  \"troll\": 39737,\n  \"troll</w>\": 17103,\n  \"trolley</w>\": 25124,\n  \"trolling</w>\": 28552,\n  \"trolls</w>\": 20890,\n  \"tromb\": 32390,\n  \"trombone</w>\": 44423,\n  \"tron\": 19057,\n  \"tron</w>\": 10684,\n  \"tronic</w>\": 34258,\n  \"tronics</w>\": 34397,\n  \"troom</w>\": 23691,\n  \"troop\": 12492,\n  \"troop</w>\": 24054,\n  \"trooper</w>\": 18327,\n  \"troopers</w>\": 23576,\n  \"troops</w>\": 10109,\n  \"trop</w>\": 31585,\n  \"trope</w>\": 41150,\n  \"trophies</w>\": 20998,\n  \"trophy\": 42676,\n  \"trophy</w>\": 6502,\n  \"tropic\": 21794,\n  \"tropic</w>\": 36736,\n  \"tropical\": 41699,\n  \"tropical</w>\": 8686,\n  \"tropics</w>\": 36940,\n  \"tros</w>\": 40456,\n  \"trose</w>\": 36022,\n  \"trot</w>\": 30453,\n  \"trotter</w>\": 38287,\n  \"trou\": 5181,\n  \"troubad\": 49037,\n  \"trouble\": 25669,\n  \"trouble</w>\": 7848,\n  \"troubled</w>\": 25568,\n  \"troubles</w>\": 27254,\n  \"trough</w>\": 39761,\n  \"troupe</w>\": 34803,\n  \"trous\": 19727,\n  \"trousers</w>\": 23172,\n  \"trout</w>\": 14853,\n  \"trove</w>\": 45350,\n  \"trow</w>\": 46914,\n  \"troy\": 26283,\n  \"troy</w>\": 12819,\n  \"trs</w>\": 24770,\n  \"tru\": 931,\n  \"tru</w>\": 25326,\n  \"truck\": 14781,\n  \"truck</w>\": 4629,\n  \"trucker</w>\": 45918,\n  \"truckers</w>\": 43404,\n  \"trucking</w>\": 26208,\n  \"trucks</w>\": 9569,\n  \"trude</w>\": 39017,\n  \"trudeau</w>\": 15752,\n  \"true\": 13096,\n  \"true</w>\": 2328,\n  \"truec\": 37583,\n  \"truelove</w>\": 45711,\n  \"truffle</w>\": 23064,\n  \"truffles</w>\": 37057,\n  \"truly</w>\": 4545,\n  \"trum\": 11766,\n  \"trum</w>\": 11399,\n  \"truman</w>\": 29414,\n  \"trump\": 9124,\n  \"trump</w>\": 1797,\n  \"trumpet</w>\": 23681,\n  \"trumpp\": 45550,\n  \"trumprussia</w>\": 39135,\n  \"trumps</w>\": 29793,\n  \"trumptrain</w>\": 43595,\n  \"trun\": 16163,\n  \"trun</w>\": 46661,\n  \"trunk</w>\": 18347,\n  \"trunks</w>\": 38531,\n  \"truro</w>\": 43507,\n  \"truss</w>\": 46080,\n  \"trust\": 17691,\n  \"trust</w>\": 3876,\n  \"truste\": 17356,\n  \"trusted</w>\": 16538,\n  \"trustee</w>\": 30803,\n  \"trustees</w>\": 28853,\n  \"trusting</w>\": 33221,\n  \"trusts</w>\": 27507,\n  \"trustworthy</w>\": 46840,\n  \"trusty</w>\": 37955,\n  \"truth\": 21335,\n  \"truth</w>\": 4319,\n  \"truths</w>\": 27179,\n  \"trx</w>\": 31620,\n  \"try\": 4487,\n  \"try</w>\": 1209,\n  \"tryin</w>\": 31085,\n  \"trying</w>\": 2551,\n  \"tryna</w>\": 15702,\n  \"tryout</w>\": 43832,\n  \"tryouts</w>\": 28053,\n  \"ts\": 2290,\n  \"ts</w>\": 590,\n  \"tsa</w>\": 25977,\n  \"tsal</w>\": 20438,\n  \"tsb</w>\": 45015,\n  \"tsc</w>\": 37437,\n  \"tsch</w>\": 38778,\n  \"tsd</w>\": 20611,\n  \"tse\": 49144,\n  \"tsfor\": 42654,\n  \"tsford</w>\": 32823,\n  \"tsh\": 42872,\n  \"tshirt</w>\": 14907,\n  \"tshirts</w>\": 29377,\n  \"tsi\": 40048,\n  \"tsi</w>\": 37867,\n  \"tsk</w>\": 43600,\n  \"tsla</w>\": 35681,\n  \"tsm</w>\": 43452,\n  \"tsman</w>\": 20046,\n  \"tsn\": 44921,\n  \"tsn</w>\": 26896,\n  \"tson\": 42353,\n  \"tson</w>\": 47140,\n  \"tsp</w>\": 34230,\n  \"tsu\": 13950,\n  \"tsu</w>\": 20175,\n  \"tsun\": 19155,\n  \"tsunami</w>\": 24286,\n  \"tsville</w>\": 29080,\n  \"tt\": 971,\n  \"tt</w>\": 1402,\n  \"tta</w>\": 2646,\n  \"ttc</w>\": 27668,\n  \"tte\": 23105,\n  \"tte</w>\": 3070,\n  \"tted</w>\": 15163,\n  \"tten\": 11351,\n  \"tten</w>\": 17479,\n  \"tter\": 18691,\n  \"tter</w>\": 5165,\n  \"tters</w>\": 6318,\n  \"ttes</w>\": 9293,\n  \"tti</w>\": 5237,\n  \"ttin</w>\": 36589,\n  \"tting</w>\": 1188,\n  \"ttino</w>\": 47389,\n  \"ttip</w>\": 46993,\n  \"ttle</w>\": 9253,\n  \"ttm</w>\": 46838,\n  \"tto\": 8759,\n  \"tto</w>\": 8105,\n  \"tton</w>\": 10562,\n  \"ttot</w>\": 12480,\n  \"ttp</w>\": 30828,\n  \"ttr\": 47589,\n  \"tts</w>\": 11570,\n  \"ttt</w>\": 17256,\n  \"tttt</w>\": 33119,\n  \"ttu</w>\": 44006,\n  \"ttv</w>\": 24281,\n  \"tty\": 11457,\n  \"tty</w>\": 1856,\n  \"tu\": 764,\n  \"tu</w>\": 5760,\n  \"tua</w>\": 41344,\n  \"tual</w>\": 4799,\n  \"tuan</w>\": 37297,\n  \"tub\": 34907,\n  \"tub</w>\": 15450,\n  \"tube\": 38229,\n  \"tube</w>\": 3308,\n  \"tuber\": 30371,\n  \"tuberculo\": 42606,\n  \"tuberculosis</w>\": 43129,\n  \"tubes</w>\": 22870,\n  \"tubing</w>\": 40794,\n  \"tubs</w>\": 41705,\n  \"tubular</w>\": 48786,\n  \"tuc\": 14456,\n  \"tuc</w>\": 43871,\n  \"tuck</w>\": 22398,\n  \"tucked</w>\": 26923,\n  \"tucker\": 39703,\n  \"tucker</w>\": 15726,\n  \"tucket</w>\": 32677,\n  \"tucson</w>\": 17250,\n  \"tudor</w>\": 24547,\n  \"tue</w>\": 17515,\n  \"tues\": 2283,\n  \"tues</w>\": 12113,\n  \"tuesday\": 10209,\n  \"tuesday</w>\": 2519,\n  \"tuesdaymotivation</w>\": 25432,\n  \"tuesdays</w>\": 23195,\n  \"tuesdaythoughts</w>\": 17988,\n  \"tuf\": 44510,\n  \"tuff</w>\": 38868,\n  \"tug\": 47032,\n  \"tug</w>\": 27902,\n  \"tuition</w>\": 21129,\n  \"tuk\": 39271,\n  \"tuk</w>\": 14993,\n  \"tul\": 9069,\n  \"tul</w>\": 40837,\n  \"tula</w>\": 36332,\n  \"tulane</w>\": 44893,\n  \"tulip</w>\": 28389,\n  \"tulips</w>\": 30886,\n  \"tulsa</w>\": 18850,\n  \"tum\": 12932,\n  \"tum</w>\": 8843,\n  \"tumb\": 8831,\n  \"tumble</w>\": 38284,\n  \"tumbler</w>\": 48790,\n  \"tumbling</w>\": 46226,\n  \"tumblr</w>\": 11841,\n  \"tummy</w>\": 26053,\n  \"tumor</w>\": 22616,\n  \"tumors</w>\": 39894,\n  \"tumour</w>\": 45129,\n  \"tun\": 1415,\n  \"tun</w>\": 21349,\n  \"tuna</w>\": 15037,\n  \"tundra</w>\": 39899,\n  \"tune\": 11427,\n  \"tune</w>\": 3300,\n  \"tuned</w>\": 5898,\n  \"tunein</w>\": 16809,\n  \"tuner</w>\": 42905,\n  \"tunes\": 31688,\n  \"tunes</w>\": 10810,\n  \"tunesapp</w>\": 32550,\n  \"tung\": 47940,\n  \"tung</w>\": 31092,\n  \"tuni\": 16270,\n  \"tunic</w>\": 43495,\n  \"tuning</w>\": 19585,\n  \"tunisia</w>\": 23346,\n  \"tunnel</w>\": 11096,\n  \"tunnels</w>\": 29814,\n  \"tuous</w>\": 28738,\n  \"tup\": 37956,\n  \"tup</w>\": 4507,\n  \"tupac</w>\": 31506,\n  \"tups</w>\": 44855,\n  \"tur\": 985,\n  \"tur</w>\": 17182,\n  \"tura</w>\": 16127,\n  \"tural\": 45143,\n  \"tural</w>\": 4261,\n  \"turb\": 18973,\n  \"turban</w>\": 48515,\n  \"turbine</w>\": 26880,\n  \"turbines</w>\": 38863,\n  \"turbo\": 23578,\n  \"turbo</w>\": 13668,\n  \"turbul\": 31100,\n  \"turbulent</w>\": 47871,\n  \"ture\": 4321,\n  \"ture</w>\": 941,\n  \"tured</w>\": 3987,\n  \"turer</w>\": 11993,\n  \"turers</w>\": 16956,\n  \"tures</w>\": 2400,\n  \"turf\": 36762,\n  \"turf</w>\": 12510,\n  \"turi\": 11896,\n  \"turin</w>\": 36251,\n  \"turing</w>\": 5812,\n  \"turismo</w>\": 30202,\n  \"turk\": 8254,\n  \"turk</w>\": 32507,\n  \"turkey\": 35977,\n  \"turkey</w>\": 4790,\n  \"turkeys</w>\": 37991,\n  \"turkish\": 48199,\n  \"turkish</w>\": 9278,\n  \"turks</w>\": 34344,\n  \"turmeric</w>\": 34044,\n  \"turmoil</w>\": 37751,\n  \"turn\": 5522,\n  \"turn</w>\": 2105,\n  \"turnaround</w>\": 32719,\n  \"turnbull</w>\": 27863,\n  \"turned</w>\": 3771,\n  \"turner\": 42867,\n  \"turner</w>\": 8777,\n  \"turning</w>\": 4976,\n  \"turno\": 21377,\n  \"turnout</w>\": 11654,\n  \"turnover</w>\": 30794,\n  \"turnpike</w>\": 38301,\n  \"turns</w>\": 3185,\n  \"turnt</w>\": 28887,\n  \"turntable</w>\": 37953,\n  \"turnup</w>\": 30591,\n  \"turo</w>\": 29224,\n  \"turquo\": 19390,\n  \"turquoise</w>\": 19899,\n  \"turt\": 13716,\n  \"turtle\": 35943,\n  \"turtle</w>\": 10912,\n  \"turtles</w>\": 17862,\n  \"tus\": 24828,\n  \"tus</w>\": 7079,\n  \"tusc\": 17909,\n  \"tuscal\": 42638,\n  \"tuscaloosa</w>\": 44375,\n  \"tuscan</w>\": 42865,\n  \"tuscany</w>\": 20885,\n  \"tuss\": 31741,\n  \"tut</w>\": 35121,\n  \"tutor\": 10054,\n  \"tutor</w>\": 27858,\n  \"tutorial</w>\": 12857,\n  \"tutorials</w>\": 30973,\n  \"tutoring</w>\": 37532,\n  \"tutti</w>\": 46880,\n  \"tutu</w>\": 35845,\n  \"tux\": 28720,\n  \"tux</w>\": 49186,\n  \"tuxedo</w>\": 40173,\n  \"tv\": 3197,\n  \"tv</w>\": 1583,\n  \"tvc</w>\": 49190,\n  \"tvd</w>\": 25889,\n  \"tvmiaw</w>\": 38554,\n  \"tvn</w>\": 44232,\n  \"tvs</w>\": 27114,\n  \"tvtime</w>\": 19947,\n  \"tvxq</w>\": 43968,\n  \"tw\": 966,\n  \"tw</w>\": 12842,\n  \"twa</w>\": 46954,\n  \"twain</w>\": 30689,\n  \"twal\": 48126,\n  \"tware</w>\": 5707,\n  \"twc</w>\": 41217,\n  \"twd\": 29440,\n  \"twd</w>\": 19343,\n  \"twdfamily</w>\": 38218,\n  \"twe\": 18365,\n  \"tweak</w>\": 48870,\n  \"tweaks</w>\": 42661,\n  \"twee\": 1330,\n  \"tweed</w>\": 26904,\n  \"tweeps</w>\": 14928,\n  \"tweet\": 11826,\n  \"tweet</w>\": 1842,\n  \"tweeta\": 32024,\n  \"tweetapicture\": 40596,\n  \"tweeted</w>\": 7841,\n  \"tweeter</w>\": 32876,\n  \"tweeters</w>\": 31713,\n  \"tweeting</w>\": 8901,\n  \"tweets</w>\": 3560,\n  \"tweetyour\": 45033,\n  \"twel\": 14476,\n  \"twelf\": 39443,\n  \"twelfth</w>\": 44072,\n  \"twell\": 38722,\n  \"twell</w>\": 30162,\n  \"twelve</w>\": 19694,\n  \"twent\": 27027,\n  \"twenti\": 35167,\n  \"twenty</w>\": 13016,\n  \"twentyon\": 39609,\n  \"twentyonepilots</w>\": 40007,\n  \"twer\": 13923,\n  \"twerk</w>\": 28506,\n  \"twi\": 5537,\n  \"twice</w>\": 6970,\n  \"twick\": 34326,\n  \"twickenham</w>\": 39619,\n  \"twil\": 12804,\n  \"twili\": 35754,\n  \"twilight\": 46366,\n  \"twilight</w>\": 14512,\n  \"twill</w>\": 43703,\n  \"twin\": 9342,\n  \"twin</w>\": 6769,\n  \"twine</w>\": 42775,\n  \"twinkle</w>\": 36545,\n  \"twinning</w>\": 30156,\n  \"twinpeaks</w>\": 32042,\n  \"twins</w>\": 8040,\n  \"twist</w>\": 10589,\n  \"twisted</w>\": 18233,\n  \"twister</w>\": 45933,\n  \"twists</w>\": 34149,\n  \"twit\": 1643,\n  \"twit</w>\": 18704,\n  \"twitart</w>\": 27709,\n  \"twitch\": 13251,\n  \"twitch</w>\": 9153,\n  \"twitter\": 7546,\n  \"twitter</w>\": 1989,\n  \"twitterkurds</w>\": 32722,\n  \"twitterstorians</w>\": 35389,\n  \"two\": 17211,\n  \"two</w>\": 1237,\n  \"twol\": 31964,\n  \"twood\": 40404,\n  \"twood</w>\": 13245,\n  \"twp</w>\": 33283,\n  \"twright</w>\": 46778,\n  \"twt</w>\": 6825,\n  \"twx</w>\": 26830,\n  \"twy\": 45861,\n  \"tx\": 6636,\n  \"tx</w>\": 5200,\n  \"txhsfb</w>\": 34757,\n  \"txlege</w>\": 26995,\n  \"txst</w>\": 40761,\n  \"txt</w>\": 24595,\n  \"txwx</w>\": 22995,\n  \"ty\": 1260,\n  \"ty</w>\": 744,\n  \"tya</w>\": 41273,\n  \"tycoon</w>\": 36803,\n  \"tye</w>\": 43097,\n  \"tyfree</w>\": 41215,\n  \"tyga</w>\": 41952,\n  \"tying</w>\": 22559,\n  \"tyl</w>\": 47537,\n  \"tyler\": 14787,\n  \"tyler</w>\": 7058,\n  \"tym</w>\": 45772,\n  \"tyne\": 27000,\n  \"tyne</w>\": 29729,\n  \"tyour\": 16823,\n  \"type\": 15673,\n  \"type</w>\": 3877,\n  \"typed</w>\": 40753,\n  \"typeface</w>\": 44969,\n  \"types</w>\": 7543,\n  \"typewriter</w>\": 42180,\n  \"typho\": 17486,\n  \"typhoon</w>\": 21110,\n  \"typic\": 21648,\n  \"typical</w>\": 9854,\n  \"typically</w>\": 23175,\n  \"typing</w>\": 20102,\n  \"typo\": 18831,\n  \"typo</w>\": 29076,\n  \"typography</w>\": 24332,\n  \"tyr\": 15590,\n  \"tyran\": 46921,\n  \"tyranny</w>\": 35402,\n  \"tyre\": 38330,\n  \"tyre</w>\": 16864,\n  \"tyres</w>\": 21376,\n  \"tyrone</w>\": 30226,\n  \"tyson</w>\": 16616,\n  \"tz\": 7710,\n  \"tz</w>\": 4983,\n  \"tzer</w>\": 45267,\n  \"tzky</w>\": 47127,\n  \"tzman</w>\": 46032,\n  \"tzu</w>\": 34354,\n  \"tÃ©\": 27208,\n  \"tÃ©</w>\": 39694,\n  \"u\": 84,\n  \"u</w>\": 340,\n  \"ua\": 34075,\n  \"ua</w>\": 8441,\n  \"uaap\": 46753,\n  \"uaap</w>\": 43774,\n  \"uab</w>\": 35587,\n  \"uae</w>\": 9752,\n  \"ual</w>\": 1921,\n  \"ually</w>\": 10767,\n  \"uan</w>\": 33062,\n  \"uas</w>\": 38339,\n  \"uav</w>\": 30303,\n  \"ub\": 18430,\n  \"ub</w>\": 13494,\n  \"uba</w>\": 29768,\n  \"ubc\": 42479,\n  \"ubc</w>\": 29455,\n  \"ube</w>\": 30892,\n  \"uber\": 25896,\n  \"uber</w>\": 10668,\n  \"ubi\": 26758,\n  \"ubio</w>\": 32867,\n  \"ubiquit\": 48129,\n  \"ubis\": 28248,\n  \"ubisoft</w>\": 32051,\n  \"ubs</w>\": 43851,\n  \"ubun\": 28184,\n  \"ubuntu</w>\": 30791,\n  \"uc\": 4903,\n  \"uc</w>\": 12438,\n  \"uca</w>\": 30942,\n  \"ucc\": 44844,\n  \"ucc</w>\": 29138,\n  \"ucci</w>\": 30746,\n  \"uccino</w>\": 30409,\n  \"ucd\": 44746,\n  \"ucd</w>\": 43514,\n  \"ucf</w>\": 24414,\n  \"uch\": 19465,\n  \"uch</w>\": 22394,\n  \"uchi\": 37473,\n  \"uci\": 46354,\n  \"uci</w>\": 28925,\n  \"uck</w>\": 34189,\n  \"ucl\": 12013,\n  \"ucl</w>\": 13647,\n  \"ucla\": 37667,\n  \"ucla</w>\": 17259,\n  \"ucn</w>\": 49036,\n  \"uconn</w>\": 30549,\n  \"ud\": 6560,\n  \"ud</w>\": 5765,\n  \"uda</w>\": 22800,\n  \"udaipur</w>\": 49385,\n  \"uddin</w>\": 43035,\n  \"ude\": 37016,\n  \"ude</w>\": 35194,\n  \"ue\": 16696,\n  \"ue</w>\": 1190,\n  \"uefa</w>\": 19189,\n  \"uel</w>\": 24231,\n  \"uer</w>\": 45951,\n  \"ues</w>\": 2526,\n  \"uf\": 17777,\n  \"uf</w>\": 19230,\n  \"ufc\": 20396,\n  \"ufc</w>\": 6490,\n  \"uff</w>\": 45701,\n  \"ufo</w>\": 19443,\n  \"ufos</w>\": 48234,\n  \"ug\": 3754,\n  \"ug</w>\": 16061,\n  \"uga</w>\": 16056,\n  \"ugand\": 25965,\n  \"uganda</w>\": 11125,\n  \"ugandan</w>\": 44206,\n  \"ugby</w>\": 30658,\n  \"ugh\": 39736,\n  \"ugh</w>\": 12755,\n  \"ugliest</w>\": 43543,\n  \"ugly\": 36070,\n  \"ugly</w>\": 8159,\n  \"ugu</w>\": 18144,\n  \"uh\": 17661,\n  \"uh</w>\": 9219,\n  \"uhc</w>\": 44974,\n  \"uhh</w>\": 35938,\n  \"uhhh</w>\": 45270,\n  \"uhm</w>\": 35614,\n  \"uhur\": 29434,\n  \"uhuru</w>\": 35690,\n  \"ui\": 17326,\n  \"ui</w>\": 11458,\n  \"uil</w>\": 29395,\n  \"uit\": 30696,\n  \"uit</w>\": 47584,\n  \"uj\": 33266,\n  \"uji</w>\": 39672,\n  \"uk\": 2294,\n  \"uk</w>\": 1432,\n  \"uka</w>\": 23294,\n  \"uke\": 48836,\n  \"uke</w>\": 28577,\n  \"uked\": 48987,\n  \"uki\": 37435,\n  \"uki</w>\": 9009,\n  \"ukin\": 34996,\n  \"ukip</w>\": 20360,\n  \"uklabour</w>\": 36902,\n  \"ukmfg</w>\": 38764,\n  \"uko</w>\": 33562,\n  \"ukone</w>\": 24682,\n  \"ukrain\": 15468,\n  \"ukraine</w>\": 7768,\n  \"ukrainian</w>\": 16927,\n  \"ukrunchat</w>\": 34481,\n  \"uku\": 29541,\n  \"uku</w>\": 36082,\n  \"ukulele</w>\": 39094,\n  \"ul\": 914,\n  \"ul</w>\": 6625,\n  \"ula\": 34104,\n  \"ula</w>\": 9506,\n  \"ular</w>\": 4927,\n  \"ulary</w>\": 21701,\n  \"ulate</w>\": 20467,\n  \"ulation</w>\": 32896,\n  \"ule</w>\": 35616,\n  \"ules</w>\": 26274,\n  \"ulf</w>\": 49331,\n  \"uli\": 41841,\n  \"uli</w>\": 22174,\n  \"ull\": 33254,\n  \"ulla</w>\": 30577,\n  \"ullah</w>\": 45310,\n  \"ullivan</w>\": 45252,\n  \"ulls</w>\": 37418,\n  \"ulo\": 46084,\n  \"ulo</w>\": 36738,\n  \"ulous\": 42490,\n  \"ulous</w>\": 4281,\n  \"ulously</w>\": 20167,\n  \"ulster\": 29709,\n  \"ulster</w>\": 24639,\n  \"ult</w>\": 4380,\n  \"ulti\": 11925,\n  \"ulties</w>\": 21884,\n  \"ultimat\": 16522,\n  \"ultimate\": 34684,\n  \"ultimate</w>\": 5377,\n  \"ultimatefan\": 48372,\n  \"ultimatefanlive</w>\": 48644,\n  \"ultimately</w>\": 23023,\n  \"ultr\": 25636,\n  \"ultra\": 11398,\n  \"ultra</w>\": 8118,\n  \"ultram\": 44519,\n  \"ultrasound</w>\": 29717,\n  \"ulture</w>\": 22272,\n  \"ulty</w>\": 8036,\n  \"ulu\": 41815,\n  \"ulu</w>\": 15659,\n  \"ulum</w>\": 17235,\n  \"uly\": 33220,\n  \"ulysses</w>\": 46114,\n  \"um\": 1622,\n  \"um</w>\": 1008,\n  \"uma\": 29982,\n  \"uma</w>\": 9256,\n  \"uman</w>\": 27112,\n  \"umar</w>\": 25656,\n  \"umass</w>\": 39390,\n  \"umatic</w>\": 45006,\n  \"umb\": 7493,\n  \"umber\": 19195,\n  \"umbrel\": 34773,\n  \"umbrella</w>\": 17143,\n  \"umbrellas</w>\": 42782,\n  \"umbria</w>\": 39287,\n  \"umc</w>\": 39491,\n  \"umd</w>\": 42067,\n  \"ume\": 38480,\n  \"umen</w>\": 42832,\n  \"uments</w>\": 25924,\n  \"umer</w>\": 23539,\n  \"umes</w>\": 21403,\n  \"umi\": 48772,\n  \"umi</w>\": 15458,\n  \"umich\": 41294,\n  \"umin</w>\": 31542,\n  \"umm\": 26129,\n  \"umm</w>\": 21215,\n  \"ummer</w>\": 47628,\n  \"ummm</w>\": 33665,\n  \"umni</w>\": 31739,\n  \"ump\": 22224,\n  \"umpire</w>\": 36214,\n  \"ums</w>\": 8643,\n  \"umu</w>\": 39788,\n  \"un\": 569,\n  \"un</w>\": 2271,\n  \"una</w>\": 6385,\n  \"unable</w>\": 17793,\n  \"unacceptable</w>\": 25234,\n  \"unanim\": 20800,\n  \"unanimous</w>\": 33520,\n  \"unanimously</w>\": 31798,\n  \"unanswered</w>\": 43611,\n  \"unarmed</w>\": 41541,\n  \"unas</w>\": 41366,\n  \"unavailable</w>\": 48430,\n  \"unaware</w>\": 33347,\n  \"unbeat\": 37056,\n  \"unbeatable</w>\": 40267,\n  \"unbeaten</w>\": 19228,\n  \"unbeliev\": 11383,\n  \"unbelievable</w>\": 13306,\n  \"unbelievably</w>\": 33781,\n  \"unborn</w>\": 37257,\n  \"unboxing</w>\": 32866,\n  \"unbreakable</w>\": 32956,\n  \"unbroken</w>\": 49271,\n  \"unc\": 24921,\n  \"unc</w>\": 15322,\n  \"uncanny</w>\": 32556,\n  \"uncertain</w>\": 30384,\n  \"uncertainty</w>\": 23956,\n  \"unch</w>\": 1527,\n  \"unchanged</w>\": 34272,\n  \"uncharted</w>\": 34560,\n  \"unci\": 25521,\n  \"unciation</w>\": 34117,\n  \"uncle\": 31537,\n  \"uncle</w>\": 8002,\n  \"unclear</w>\": 32955,\n  \"uncles</w>\": 45335,\n  \"uncomfortable</w>\": 22470,\n  \"uncommon</w>\": 34888,\n  \"uncondition\": 46561,\n  \"unconditional</w>\": 31112,\n  \"unconscious</w>\": 34791,\n  \"unconstitutional</w>\": 43585,\n  \"unconventional</w>\": 39440,\n  \"uncover</w>\": 33031,\n  \"uncovered</w>\": 28234,\n  \"uncture</w>\": 38736,\n  \"uncut</w>\": 41056,\n  \"und\": 9762,\n  \"und</w>\": 9732,\n  \"unda</w>\": 39932,\n  \"undant</w>\": 25377,\n  \"unday</w>\": 29338,\n  \"unde</w>\": 45226,\n  \"undead</w>\": 40105,\n  \"undecided</w>\": 49368,\n  \"undefeated</w>\": 15326,\n  \"undeni\": 38424,\n  \"under\": 1473,\n  \"under</w>\": 1798,\n  \"underage</w>\": 45669,\n  \"underattack</w>\": 35075,\n  \"undercover</w>\": 21595,\n  \"underdog</w>\": 44266,\n  \"undere\": 21675,\n  \"underestim\": 23348,\n  \"underestimate</w>\": 31794,\n  \"undergo</w>\": 31545,\n  \"undergoing</w>\": 26419,\n  \"undergrad</w>\": 38331,\n  \"undergraduate</w>\": 24320,\n  \"underground</w>\": 9396,\n  \"undering</w>\": 30826,\n  \"underlying</w>\": 31812,\n  \"undermine</w>\": 42839,\n  \"underneath</w>\": 20857,\n  \"underrated</w>\": 19494,\n  \"unders</w>\": 20376,\n  \"understand\": 47582,\n  \"understand</w>\": 4600,\n  \"understanding</w>\": 7522,\n  \"understands</w>\": 21607,\n  \"understatement</w>\": 38296,\n  \"understood</w>\": 17303,\n  \"undertaker</w>\": 40144,\n  \"undertaking</w>\": 49067,\n  \"undertale</w>\": 48283,\n  \"underthe\": 41161,\n  \"underwater</w>\": 14760,\n  \"underway</w>\": 6273,\n  \"underwear</w>\": 21154,\n  \"underwood</w>\": 21474,\n  \"underworld</w>\": 34760,\n  \"undi</w>\": 23845,\n  \"undisclosed</w>\": 39334,\n  \"undo</w>\": 35454,\n  \"undocumented</w>\": 35414,\n  \"undoub\": 38836,\n  \"undoubtedly</w>\": 42204,\n  \"undp</w>\": 26691,\n  \"une\": 4522,\n  \"une</w>\": 10966,\n  \"unearth\": 32716,\n  \"unearthed</w>\": 36632,\n  \"unemp\": 15139,\n  \"unemployed</w>\": 32721,\n  \"unemployment</w>\": 19350,\n  \"unes</w>\": 6394,\n  \"unesco</w>\": 16216,\n  \"uneven</w>\": 43204,\n  \"unex\": 9484,\n  \"unexpe\": 10802,\n  \"unexpec\": 31829,\n  \"unexpected</w>\": 12293,\n  \"unexpectedly</w>\": 35622,\n  \"unf\": 29285,\n  \"unfair</w>\": 22193,\n  \"unfinished</w>\": 26526,\n  \"unfit</w>\": 45367,\n  \"unfold</w>\": 38681,\n  \"unfollow</w>\": 38797,\n  \"unfor\": 14010,\n  \"unforgettable</w>\": 16173,\n  \"unfortun\": 10194,\n  \"unfortunate</w>\": 22361,\n  \"unfortunately</w>\": 12863,\n  \"unfpa</w>\": 45048,\n  \"ung\": 10439,\n  \"ung</w>\": 4334,\n  \"unga</w>\": 19151,\n  \"ungsoo</w>\": 25582,\n  \"unh\": 25365,\n  \"unhappy</w>\": 26528,\n  \"unhcr</w>\": 43451,\n  \"unhealthy</w>\": 30994,\n  \"uni\": 1107,\n  \"uni</w>\": 5926,\n  \"unic\": 7648,\n  \"unicef\": 38286,\n  \"unicef</w>\": 19259,\n  \"unicorn</w>\": 15660,\n  \"unicorns</w>\": 35183,\n  \"unidenti\": 33707,\n  \"unidentified</w>\": 35563,\n  \"unification</w>\": 45036,\n  \"unified</w>\": 20876,\n  \"uniform</w>\": 11075,\n  \"uniforms</w>\": 17838,\n  \"unil\": 32388,\n  \"unilever</w>\": 48654,\n  \"uniof\": 21218,\n  \"union\": 14210,\n  \"union</w>\": 3503,\n  \"unions</w>\": 18353,\n  \"unis\": 30482,\n  \"unis</w>\": 39266,\n  \"unisex</w>\": 27609,\n  \"unison</w>\": 46694,\n  \"unit\": 28522,\n  \"unit</w>\": 5695,\n  \"unite\": 15078,\n  \"unite</w>\": 11305,\n  \"uniteblue</w>\": 20935,\n  \"united\": 10898,\n  \"united</w>\": 2690,\n  \"unitedstates</w>\": 39636,\n  \"unitedway\": 47486,\n  \"unites</w>\": 32061,\n  \"uniting</w>\": 31318,\n  \"units</w>\": 10394,\n  \"unity\": 38300,\n  \"unity</w>\": 8581,\n  \"univ\": 36680,\n  \"univ</w>\": 14896,\n  \"univer\": 15574,\n  \"univers\": 5855,\n  \"universal\": 19148,\n  \"universal</w>\": 8754,\n  \"universe</w>\": 6104,\n  \"universi\": 41692,\n  \"universit\": 26019,\n  \"universities</w>\": 16408,\n  \"university\": 40728,\n  \"university</w>\": 2182,\n  \"universityof\": 46158,\n  \"unk</w>\": 5542,\n  \"unknown</w>\": 8685,\n  \"unl</w>\": 43807,\n  \"unlawful</w>\": 42305,\n  \"unle\": 19677,\n  \"unlea\": 23893,\n  \"unleash</w>\": 26706,\n  \"unleashed</w>\": 27955,\n  \"unless</w>\": 10602,\n  \"unlike</w>\": 16694,\n  \"unlikely</w>\": 18904,\n  \"unlimited</w>\": 11015,\n  \"unlock</w>\": 18649,\n  \"unlocked</w>\": 16770,\n  \"unlocking</w>\": 40810,\n  \"unlucky</w>\": 35029,\n  \"unlv</w>\": 42283,\n  \"unmanned</w>\": 36751,\n  \"unmatched</w>\": 46054,\n  \"unn</w>\": 38364,\n  \"unnamed</w>\": 44985,\n  \"unnecessary</w>\": 24100,\n  \"unner</w>\": 31481,\n  \"unning</w>\": 43282,\n  \"unnoticed</w>\": 42807,\n  \"uno\": 32446,\n  \"uno</w>\": 17078,\n  \"unofficial</w>\": 22506,\n  \"unpacking</w>\": 43589,\n  \"unpaid</w>\": 32811,\n  \"unparalleled</w>\": 44396,\n  \"unplugged</w>\": 31724,\n  \"unpopular</w>\": 40232,\n  \"unprece\": 23054,\n  \"unprecedented</w>\": 23344,\n  \"unpredictable</w>\": 38684,\n  \"unra\": 45150,\n  \"unreal\": 46980,\n  \"unreal</w>\": 15636,\n  \"unrelated</w>\": 38644,\n  \"unreleased</w>\": 29654,\n  \"unrest</w>\": 36452,\n  \"uns</w>\": 25908,\n  \"unsafe</w>\": 32071,\n  \"unsc</w>\": 36395,\n  \"unseen</w>\": 19069,\n  \"unsigned</w>\": 39346,\n  \"unsolved</w>\": 40836,\n  \"unsplash</w>\": 46196,\n  \"unstable</w>\": 34730,\n  \"unstopp\": 22105,\n  \"unstoppable</w>\": 23484,\n  \"unsuccessful</w>\": 47478,\n  \"unsung</w>\": 33015,\n  \"unsure</w>\": 26396,\n  \"unt\": 19654,\n  \"unt</w>\": 6537,\n  \"until</w>\": 1942,\n  \"untitled</w>\": 21309,\n  \"unto</w>\": 19801,\n  \"untold</w>\": 32206,\n  \"untouch\": 44509,\n  \"untouched</w>\": 42764,\n  \"unused</w>\": 29636,\n  \"unusual</w>\": 12613,\n  \"unusually</w>\": 36465,\n  \"unve\": 6685,\n  \"unveil</w>\": 20483,\n  \"unveiled</w>\": 13572,\n  \"unveiling</w>\": 20327,\n  \"unveils</w>\": 15057,\n  \"unwanted</w>\": 25285,\n  \"unwind</w>\": 34064,\n  \"unya</w>\": 37142,\n  \"uo\": 30874,\n  \"uo</w>\": 36162,\n  \"uof\": 11155,\n  \"uoft</w>\": 37329,\n  \"uon\": 48144,\n  \"uous</w>\": 40185,\n  \"up\": 1083,\n  \"up</w>\": 705,\n  \"upa</w>\": 31727,\n  \"upbeat</w>\": 39201,\n  \"upcoming</w>\": 4196,\n  \"upcycled</w>\": 46552,\n  \"upd\": 3226,\n  \"update</w>\": 2491,\n  \"updated</w>\": 5974,\n  \"updates</w>\": 4904,\n  \"updating</w>\": 22792,\n  \"uper\": 38082,\n  \"uper</w>\": 33056,\n  \"upfront</w>\": 42064,\n  \"upgrade</w>\": 10365,\n  \"upgraded</w>\": 18577,\n  \"upgrades</w>\": 21253,\n  \"upgrading</w>\": 34368,\n  \"uph\": 14128,\n  \"uphill</w>\": 42767,\n  \"uphol\": 26195,\n  \"uphold</w>\": 43897,\n  \"upholstery</w>\": 44556,\n  \"upl\": 41939,\n  \"uplift</w>\": 45389,\n  \"uplifting</w>\": 29546,\n  \"upload</w>\": 13968,\n  \"uploaded</w>\": 16793,\n  \"uploading</w>\": 30145,\n  \"upon\": 23524,\n  \"upon</w>\": 5067,\n  \"upp\": 19549,\n  \"upp</w>\": 45946,\n  \"upper\": 22465,\n  \"upper</w>\": 7067,\n  \"upri\": 15982,\n  \"upright</w>\": 29818,\n  \"uprising</w>\": 26006,\n  \"upro\": 28922,\n  \"ups</w>\": 6926,\n  \"upscale</w>\": 47501,\n  \"upset</w>\": 11214,\n  \"upsets</w>\": 42637,\n  \"upside</w>\": 15362,\n  \"upstairs</w>\": 21387,\n  \"upstate</w>\": 33335,\n  \"upstream</w>\": 45517,\n  \"upthe\": 31510,\n  \"upto</w>\": 26575,\n  \"upton</w>\": 31910,\n  \"uptown</w>\": 23807,\n  \"upward</w>\": 32526,\n  \"upwards</w>\": 34915,\n  \"uq</w>\": 39591,\n  \"ur\": 565,\n  \"ur</w>\": 1775,\n  \"ura\": 29337,\n  \"ura</w>\": 3544,\n  \"urable</w>\": 40194,\n  \"ural\": 23547,\n  \"ural</w>\": 33948,\n  \"uran</w>\": 16197,\n  \"uranium</w>\": 29850,\n  \"urban\": 7931,\n  \"urban</w>\": 5800,\n  \"urbanart</w>\": 40834,\n  \"urd</w>\": 47880,\n  \"urday</w>\": 19742,\n  \"urdu</w>\": 29976,\n  \"ure\": 5514,\n  \"ure</w>\": 726,\n  \"ured</w>\": 4210,\n  \"urer</w>\": 20864,\n  \"ures</w>\": 2288,\n  \"urg</w>\": 35995,\n  \"urge</w>\": 14852,\n  \"urged</w>\": 23790,\n  \"urgency</w>\": 47612,\n  \"urgent</w>\": 13693,\n  \"urgently</w>\": 34534,\n  \"urges</w>\": 16692,\n  \"urging</w>\": 27748,\n  \"uri\": 11052,\n  \"uri</w>\": 8699,\n  \"urie</w>\": 46429,\n  \"urin\": 45245,\n  \"urine</w>\": 28864,\n  \"uring</w>\": 1351,\n  \"url</w>\": 23464,\n  \"urn</w>\": 38075,\n  \"uro\": 17343,\n  \"uro</w>\": 5925,\n  \"urology</w>\": 48585,\n  \"urope</w>\": 14918,\n  \"urs</w>\": 4794,\n  \"urself</w>\": 31942,\n  \"urst</w>\": 19181,\n  \"urstruly\": 34751,\n  \"urstrulymahesh</w>\": 35314,\n  \"ursula</w>\": 38390,\n  \"urt</w>\": 24309,\n  \"uru\": 16322,\n  \"uru</w>\": 11768,\n  \"uruguay</w>\": 27931,\n  \"urus</w>\": 14246,\n  \"urve\": 24583,\n  \"ury\": 8642,\n  \"ury</w>\": 2106,\n  \"us\": 904,\n  \"us</w>\": 718,\n  \"usa\": 9491,\n  \"usa</w>\": 2547,\n  \"usability</w>\": 46736,\n  \"usable</w>\": 22890,\n  \"usaf</w>\": 25017,\n  \"usage</w>\": 19137,\n  \"usaid</w>\": 34507,\n  \"usair\": 36742,\n  \"usairforce</w>\": 42179,\n  \"usarmy</w>\": 19132,\n  \"usatoday</w>\": 40263,\n  \"usav\": 36056,\n  \"usb</w>\": 10281,\n  \"usc\": 13346,\n  \"usc</w>\": 14995,\n  \"uscg</w>\": 43932,\n  \"usd</w>\": 7485,\n  \"usda</w>\": 25829,\n  \"use\": 4419,\n  \"use</w>\": 1483,\n  \"used\": 32289,\n  \"used</w>\": 2026,\n  \"useful</w>\": 9784,\n  \"useless</w>\": 20154,\n  \"usemb\": 39700,\n  \"user\": 21248,\n  \"user</w>\": 7031,\n  \"username</w>\": 28162,\n  \"users</w>\": 7433,\n  \"uses</w>\": 5282,\n  \"useum</w>\": 45189,\n  \"usf\": 32385,\n  \"usf</w>\": 28942,\n  \"usgs</w>\": 35103,\n  \"ush\": 12001,\n  \"ush</w>\": 18335,\n  \"usher</w>\": 27411,\n  \"ushi</w>\": 47734,\n  \"usi</w>\": 25540,\n  \"usic\": 34909,\n  \"usic</w>\": 16753,\n  \"using</w>\": 1996,\n  \"usky</w>\": 45778,\n  \"usl</w>\": 42113,\n  \"usm</w>\": 40041,\n  \"usmc</w>\": 21678,\n  \"usmnt</w>\": 30662,\n  \"usn</w>\": 40579,\n  \"usnavy</w>\": 24500,\n  \"usnews</w>\": 43752,\n  \"uso</w>\": 21539,\n  \"usopen</w>\": 21782,\n  \"usp\": 26651,\n  \"usps</w>\": 39980,\n  \"usrc</w>\": 33274,\n  \"uss\": 11545,\n  \"uss</w>\": 9260,\n  \"ussia</w>\": 29553,\n  \"ussoccer</w>\": 42828,\n  \"ussr</w>\": 32697,\n  \"ust\": 35501,\n  \"ust</w>\": 24725,\n  \"usu\": 4254,\n  \"usu</w>\": 40434,\n  \"usual</w>\": 6129,\n  \"usually</w>\": 8296,\n  \"usur\": 45582,\n  \"uswnt</w>\": 35255,\n  \"ut\": 1419,\n  \"ut</w>\": 3641,\n  \"uta\": 42706,\n  \"uta</w>\": 25925,\n  \"utah\": 27474,\n  \"utah</w>\": 9312,\n  \"utc</w>\": 18196,\n  \"utd</w>\": 10493,\n  \"ute\": 16856,\n  \"ute</w>\": 3130,\n  \"uten\": 32089,\n  \"uter\": 39197,\n  \"utes</w>\": 2850,\n  \"uth\": 48819,\n  \"uth</w>\": 44750,\n  \"uti</w>\": 24568,\n  \"util\": 28824,\n  \"utili\": 17015,\n  \"utilities</w>\": 27210,\n  \"utility</w>\": 14941,\n  \"utilize</w>\": 36861,\n  \"utilized</w>\": 47604,\n  \"utilizing</w>\": 40212,\n  \"utm</w>\": 47853,\n  \"utmost</w>\": 42352,\n  \"uto\": 18866,\n  \"uto</w>\": 13683,\n  \"utopia</w>\": 34433,\n  \"utpol</w>\": 42605,\n  \"utr\": 48726,\n  \"utrecht</w>\": 37216,\n  \"uts</w>\": 11740,\n  \"utsa</w>\": 37528,\n  \"utt\": 17096,\n  \"uttar</w>\": 40168,\n  \"uttarak\": 33755,\n  \"uttarakhand</w>\": 35655,\n  \"utter\": 18769,\n  \"utter</w>\": 24558,\n  \"utterly</w>\": 21353,\n  \"utto</w>\": 42183,\n  \"utv</w>\": 36351,\n  \"utz</w>\": 45320,\n  \"uu\": 5702,\n  \"uu</w>\": 14553,\n  \"uuu\": 44355,\n  \"uuu</w>\": 27656,\n  \"uuuu\": 16720,\n  \"uuuu</w>\": 40797,\n  \"uv\": 23777,\n  \"uv</w>\": 15977,\n  \"uva</w>\": 23908,\n  \"uw\": 13933,\n  \"uw</w>\": 19166,\n  \"uwe</w>\": 48785,\n  \"uwu</w>\": 35544,\n  \"ux\": 9251,\n  \"ux</w>\": 6213,\n  \"uy\": 31929,\n  \"uy</w>\": 48113,\n  \"uz\": 19398,\n  \"uz</w>\": 36991,\n  \"uzbe\": 43007,\n  \"uzbekistan</w>\": 45024,\n  \"uzzi</w>\": 48210,\n  \"v\": 85,\n  \"v</w>\": 341,\n  \"va\": 4648,\n  \"va</w>\": 1892,\n  \"vaa</w>\": 37488,\n  \"vable</w>\": 23088,\n  \"vac\": 3125,\n  \"vac</w>\": 34085,\n  \"vaca</w>\": 48215,\n  \"vacancies</w>\": 26333,\n  \"vacancy</w>\": 21247,\n  \"vacant</w>\": 25262,\n  \"vacation\": 28336,\n  \"vacation</w>\": 6561,\n  \"vacations</w>\": 29002,\n  \"vacay</w>\": 44716,\n  \"vacc\": 13342,\n  \"vaccin\": 19164,\n  \"vaccinated</w>\": 48134,\n  \"vaccination</w>\": 32518,\n  \"vaccine\": 47780,\n  \"vaccine</w>\": 17493,\n  \"vaccines</w>\": 25860,\n  \"vach\": 46211,\n  \"vacu\": 16058,\n  \"vacuum</w>\": 18420,\n  \"vad\": 11880,\n  \"vada</w>\": 46759,\n  \"vader</w>\": 21908,\n  \"vae</w>\": 39384,\n  \"vag\": 13015,\n  \"vague</w>\": 42154,\n  \"vah</w>\": 26921,\n  \"vai\": 26893,\n  \"vai</w>\": 36802,\n  \"vail</w>\": 21189,\n  \"vain</w>\": 25538,\n  \"vais</w>\": 28719,\n  \"vaj\": 34206,\n  \"vak\": 16288,\n  \"vak</w>\": 41597,\n  \"val\": 1214,\n  \"val</w>\": 1560,\n  \"vala</w>\": 48525,\n  \"valdez</w>\": 40617,\n  \"vale\": 35554,\n  \"vale</w>\": 10820,\n  \"valedic\": 43525,\n  \"valen\": 12630,\n  \"valence</w>\": 30225,\n  \"valenci\": 34183,\n  \"valencia</w>\": 16559,\n  \"valent\": 3655,\n  \"valent</w>\": 15300,\n  \"valentin</w>\": 48631,\n  \"valentina</w>\": 43741,\n  \"valentine\": 11208,\n  \"valentine</w>\": 5876,\n  \"valentines</w>\": 10259,\n  \"valentinesday</w>\": 12369,\n  \"valentino</w>\": 29624,\n  \"valeri\": 31951,\n  \"valerie</w>\": 25592,\n  \"valet</w>\": 45749,\n  \"vali\": 8230,\n  \"valiant</w>\": 33804,\n  \"valid</w>\": 15126,\n  \"validation</w>\": 32536,\n  \"valkyrie</w>\": 42326,\n  \"vall\": 23523,\n  \"vall</w>\": 35295,\n  \"vallarta</w>\": 47874,\n  \"valle\": 24857,\n  \"valle</w>\": 29105,\n  \"valley\": 18354,\n  \"valley</w>\": 3136,\n  \"valleys</w>\": 28649,\n  \"valor</w>\": 30930,\n  \"vals</w>\": 7431,\n  \"valu\": 6291,\n  \"valuable</w>\": 10056,\n  \"valuation</w>\": 25894,\n  \"value\": 41358,\n  \"value</w>\": 4602,\n  \"valued</w>\": 17801,\n  \"values</w>\": 8857,\n  \"valve</w>\": 17001,\n  \"valves</w>\": 33517,\n  \"vam\": 9983,\n  \"vamo\": 46718,\n  \"vamos</w>\": 30346,\n  \"vamp\": 10680,\n  \"vampi\": 47017,\n  \"vampire\": 47576,\n  \"vampire</w>\": 13220,\n  \"vampires</w>\": 30868,\n  \"vamps</w>\": 44810,\n  \"van\": 2446,\n  \"van</w>\": 2451,\n  \"vana</w>\": 20543,\n  \"vanc\": 6320,\n  \"vance</w>\": 31447,\n  \"vancou\": 6750,\n  \"vancouver\": 31904,\n  \"vancouver</w>\": 7208,\n  \"vand\": 11691,\n  \"vandalism</w>\": 45664,\n  \"vander\": 16264,\n  \"vanderbilt</w>\": 33524,\n  \"vandy\": 39268,\n  \"vane</w>\": 43828,\n  \"vaness\": 13328,\n  \"vanessa</w>\": 16836,\n  \"vangogh</w>\": 47849,\n  \"vanguard</w>\": 27916,\n  \"vani\": 15396,\n  \"vani</w>\": 26459,\n  \"vania</w>\": 10998,\n  \"vanilla</w>\": 11974,\n  \"vanished</w>\": 43783,\n  \"vanishing</w>\": 48296,\n  \"vanity\": 48353,\n  \"vanity</w>\": 22938,\n  \"vans</w>\": 11711,\n  \"vant\": 26298,\n  \"vantage</w>\": 31749,\n  \"vanu\": 42892,\n  \"vanuatu</w>\": 48766,\n  \"vap\": 10462,\n  \"vape\": 25423,\n  \"vape</w>\": 20219,\n  \"vaping</w>\": 29403,\n  \"vapor\": 37167,\n  \"vapor</w>\": 30729,\n  \"vapori\": 46183,\n  \"var\": 3187,\n  \"var</w>\": 12998,\n  \"vara</w>\": 47492,\n  \"varan\": 36585,\n  \"varanasi</w>\": 39364,\n  \"vard\": 21866,\n  \"vard</w>\": 8773,\n  \"vardy</w>\": 47371,\n  \"vare\": 38159,\n  \"vares</w>\": 42895,\n  \"vargas</w>\": 32752,\n  \"vari\": 3354,\n  \"variable</w>\": 26416,\n  \"varian</w>\": 34334,\n  \"variant</w>\": 20293,\n  \"variants</w>\": 38312,\n  \"variation</w>\": 26420,\n  \"variations</w>\": 29025,\n  \"varied</w>\": 32334,\n  \"varies</w>\": 32543,\n  \"varieties</w>\": 23805,\n  \"variety</w>\": 8396,\n  \"various</w>\": 7395,\n  \"varsity\": 43716,\n  \"varsity</w>\": 8574,\n  \"varun\": 48120,\n  \"varun</w>\": 22069,\n  \"vary</w>\": 18855,\n  \"varying</w>\": 36456,\n  \"vas\": 5669,\n  \"vas</w>\": 5995,\n  \"vasc</w>\": 40995,\n  \"vascular</w>\": 19218,\n  \"vase</w>\": 20431,\n  \"vasi\": 49092,\n  \"vast\": 24413,\n  \"vast</w>\": 16414,\n  \"vastly</w>\": 48257,\n  \"vat\": 11588,\n  \"vat</w>\": 18363,\n  \"vatican</w>\": 21030,\n  \"vation</w>\": 37884,\n  \"vau\": 6391,\n  \"vaugh\": 25158,\n  \"vaughan</w>\": 21392,\n  \"vaughn</w>\": 29013,\n  \"vaul\": 27469,\n  \"vault</w>\": 15240,\n  \"vaus</w>\": 40217,\n  \"vaux\": 27403,\n  \"vauxhall</w>\": 29173,\n  \"vaw</w>\": 47952,\n  \"vay\": 48000,\n  \"vaz\": 38142,\n  \"vb\": 29365,\n  \"vb</w>\": 8778,\n  \"vball</w>\": 38329,\n  \"vc\": 28670,\n  \"vc</w>\": 7952,\n  \"vcs</w>\": 43528,\n  \"vcu</w>\": 40102,\n  \"vd</w>\": 9515,\n  \"vday</w>\": 42055,\n  \"ve\": 673,\n  \"ve</w>\": 563,\n  \"vea</w>\": 43798,\n  \"veal</w>\": 36616,\n  \"veau</w>\": 24419,\n  \"vec\": 19912,\n  \"vector\": 40453,\n  \"vector</w>\": 21533,\n  \"ved\": 19515,\n  \"ved</w>\": 1102,\n  \"veda</w>\": 44401,\n  \"vedere</w>\": 45660,\n  \"vedi</w>\": 47971,\n  \"vee\": 35708,\n  \"vee</w>\": 17073,\n  \"veen</w>\": 22432,\n  \"veer\": 21243,\n  \"veer</w>\": 22058,\n  \"veg\": 9048,\n  \"veg</w>\": 16460,\n  \"vega</w>\": 22930,\n  \"vegan\": 15705,\n  \"vegan</w>\": 5615,\n  \"vegans</w>\": 48514,\n  \"vegas\": 20288,\n  \"vegas</w>\": 4413,\n  \"vege\": 6219,\n  \"vegetable</w>\": 15725,\n  \"vegetables</w>\": 14119,\n  \"vegetarian</w>\": 14600,\n  \"vegetation</w>\": 33947,\n  \"veggie</w>\": 19401,\n  \"veggies</w>\": 16767,\n  \"vehic\": 3973,\n  \"vehicle</w>\": 5299,\n  \"vehicles</w>\": 8361,\n  \"veil</w>\": 23516,\n  \"vein</w>\": 29169,\n  \"veins</w>\": 28867,\n  \"veit</w>\": 30620,\n  \"vel\": 942,\n  \"vel</w>\": 1287,\n  \"vela</w>\": 34898,\n  \"veld</w>\": 34011,\n  \"veled</w>\": 15370,\n  \"veli</w>\": 49166,\n  \"veling</w>\": 37970,\n  \"vell\": 21173,\n  \"vell</w>\": 32997,\n  \"velo\": 14357,\n  \"velo</w>\": 33850,\n  \"velocity</w>\": 23811,\n  \"vels</w>\": 5109,\n  \"velve\": 37849,\n  \"velvet</w>\": 11063,\n  \"vely</w>\": 1708,\n  \"vember</w>\": 3477,\n  \"vement</w>\": 3129,\n  \"vements</w>\": 11104,\n  \"ven\": 1240,\n  \"ven</w>\": 1638,\n  \"vena</w>\": 47442,\n  \"vend\": 10851,\n  \"vending</w>\": 29202,\n  \"vendor</w>\": 21261,\n  \"vendors</w>\": 20353,\n  \"vene\": 5365,\n  \"veness</w>\": 10516,\n  \"venetian</w>\": 34336,\n  \"venezia</w>\": 34139,\n  \"venezu\": 10939,\n  \"venezuela</w>\": 12839,\n  \"venezuelan</w>\": 34699,\n  \"veng</w>\": 31526,\n  \"venge\": 27757,\n  \"vengeance</w>\": 32057,\n  \"veni</w>\": 31142,\n  \"venice</w>\": 11010,\n  \"vening</w>\": 47532,\n  \"venison</w>\": 40037,\n  \"venom\": 42491,\n  \"venom</w>\": 21588,\n  \"vens</w>\": 20884,\n  \"vent\": 4373,\n  \"vent</w>\": 5687,\n  \"ventil\": 39522,\n  \"ventilation</w>\": 35066,\n  \"venting</w>\": 15731,\n  \"vention</w>\": 4122,\n  \"vents</w>\": 12833,\n  \"ventu\": 48217,\n  \"ventura</w>\": 20921,\n  \"venture\": 37046,\n  \"venture</w>\": 12543,\n  \"ventures</w>\": 20829,\n  \"venue</w>\": 5097,\n  \"venues</w>\": 18120,\n  \"venus</w>\": 14691,\n  \"ver\": 624,\n  \"ver</w>\": 667,\n  \"vera</w>\": 13350,\n  \"verage</w>\": 3725,\n  \"verb</w>\": 34952,\n  \"verbal</w>\": 26522,\n  \"verbally</w>\": 39985,\n  \"verbs</w>\": 45687,\n  \"verde</w>\": 16935,\n  \"verdi</w>\": 42306,\n  \"verdict</w>\": 18030,\n  \"vere\": 11135,\n  \"vere</w>\": 34707,\n  \"vered</w>\": 2868,\n  \"verge</w>\": 23913,\n  \"veri\": 11638,\n  \"verification</w>\": 33521,\n  \"verified</w>\": 22555,\n  \"verify</w>\": 34722,\n  \"vering</w>\": 4630,\n  \"veriz\": 19707,\n  \"verizon</w>\": 21532,\n  \"verma</w>\": 41261,\n  \"vermont</w>\": 19241,\n  \"vern\": 2214,\n  \"vern</w>\": 12586,\n  \"verne</w>\": 45553,\n  \"vernon</w>\": 18348,\n  \"vero\": 45217,\n  \"vero</w>\": 38208,\n  \"verona</w>\": 31819,\n  \"veronic\": 39551,\n  \"veronica</w>\": 24039,\n  \"vers\": 1219,\n  \"vers</w>\": 2094,\n  \"versa</w>\": 35765,\n  \"versace</w>\": 25422,\n  \"versail\": 29857,\n  \"versailles</w>\": 32129,\n  \"versary</w>\": 2940,\n  \"versatile</w>\": 18110,\n  \"versatility</w>\": 41340,\n  \"verse\": 39466,\n  \"verse</w>\": 3131,\n  \"verses</w>\": 30769,\n  \"versi\": 8934,\n  \"version</w>\": 3273,\n  \"versions</w>\": 16190,\n  \"versity</w>\": 1906,\n  \"verst\": 42484,\n  \"verstappen</w>\": 45064,\n  \"versus</w>\": 14548,\n  \"versy</w>\": 18522,\n  \"vert</w>\": 11742,\n  \"verte\": 35158,\n  \"verted</w>\": 48173,\n  \"verti\": 30459,\n  \"vertical</w>\": 14293,\n  \"vertigo</w>\": 42477,\n  \"verton</w>\": 40632,\n  \"verts</w>\": 37265,\n  \"very\": 11698,\n  \"very</w>\": 1070,\n  \"veryday</w>\": 37944,\n  \"verything</w>\": 45174,\n  \"ves\": 9616,\n  \"ves</w>\": 1003,\n  \"vesmatter</w>\": 47636,\n  \"vespa</w>\": 46029,\n  \"vessel</w>\": 16387,\n  \"vessels</w>\": 22822,\n  \"vest\": 31657,\n  \"vest</w>\": 12473,\n  \"vesti\": 40349,\n  \"vests</w>\": 41906,\n  \"vet\": 12294,\n  \"vet</w>\": 5951,\n  \"veter\": 4330,\n  \"veteran\": 20797,\n  \"veteran</w>\": 8814,\n  \"veterans</w>\": 7092,\n  \"veteransday</w>\": 26409,\n  \"veterin\": 43959,\n  \"veterinary</w>\": 25458,\n  \"veto</w>\": 36570,\n  \"vets</w>\": 13113,\n  \"vette</w>\": 17045,\n  \"vettel</w>\": 28700,\n  \"vevo</w>\": 35141,\n  \"vex\": 36187,\n  \"vex</w>\": 43978,\n  \"vey\": 34792,\n  \"vey</w>\": 3884,\n  \"vez\": 35987,\n  \"vez</w>\": 17226,\n  \"vf</w>\": 25966,\n  \"vfl</w>\": 33726,\n  \"vfx</w>\": 30149,\n  \"vg\": 40591,\n  \"vg</w>\": 22346,\n  \"vh\": 46953,\n  \"vh</w>\": 23847,\n  \"vhs</w>\": 21932,\n  \"vi\": 603,\n  \"vi</w>\": 4259,\n  \"via</w>\": 1048,\n  \"viable</w>\": 25752,\n  \"viadu\": 37012,\n  \"viaduct</w>\": 39113,\n  \"vial</w>\": 39951,\n  \"vian\": 40487,\n  \"vian</w>\": 16124,\n  \"vibe\": 37974,\n  \"vibe</w>\": 12813,\n  \"vibes</w>\": 7764,\n  \"vibr\": 9527,\n  \"vibrant</w>\": 14270,\n  \"vibration</w>\": 37456,\n  \"vibrations</w>\": 43660,\n  \"vic\": 1555,\n  \"vic</w>\": 4412,\n  \"vica</w>\": 46168,\n  \"vicar</w>\": 43899,\n  \"vice\": 43572,\n  \"vice</w>\": 6931,\n  \"vicente</w>\": 39411,\n  \"vices</w>\": 8332,\n  \"vich</w>\": 24143,\n  \"vici\": 46670,\n  \"vicious</w>\": 25177,\n  \"vick\": 15116,\n  \"vick</w>\": 29704,\n  \"vickers</w>\": 48452,\n  \"vicki</w>\": 34927,\n  \"vicky\": 37176,\n  \"vicky</w>\": 25788,\n  \"victi\": 6861,\n  \"victim</w>\": 9133,\n  \"victims</w>\": 7131,\n  \"victor\": 2423,\n  \"victor</w>\": 10690,\n  \"victori\": 17555,\n  \"victoria\": 39286,\n  \"victoria</w>\": 6127,\n  \"victorian</w>\": 12350,\n  \"victorias\": 47791,\n  \"victories</w>\": 24577,\n  \"victorious</w>\": 24033,\n  \"victory\": 36668,\n  \"victory</w>\": 4127,\n  \"vid\": 17233,\n  \"vid</w>\": 9284,\n  \"vida</w>\": 19015,\n  \"vidal</w>\": 36678,\n  \"vide\": 1334,\n  \"vide</w>\": 45244,\n  \"video\": 9478,\n  \"video</w>\": 1455,\n  \"videogame</w>\": 35097,\n  \"videogames</w>\": 21149,\n  \"videos</w>\": 6081,\n  \"vids</w>\": 23035,\n  \"vidy\": 29639,\n  \"vidya</w>\": 45264,\n  \"vie\": 922,\n  \"vie</w>\": 8538,\n  \"vien\": 36493,\n  \"vienna</w>\": 12670,\n  \"vier\": 15352,\n  \"vier</w>\": 11987,\n  \"viera</w>\": 21114,\n  \"viernes</w>\": 33826,\n  \"vies</w>\": 22458,\n  \"viest</w>\": 31979,\n  \"viet\": 17558,\n  \"viet</w>\": 13128,\n  \"vietnam\": 19558,\n  \"vietnam</w>\": 8623,\n  \"vietnamese</w>\": 22382,\n  \"view\": 12004,\n  \"view</w>\": 1093,\n  \"viewed</w>\": 7226,\n  \"viewer</w>\": 15061,\n  \"viewers</w>\": 14275,\n  \"viewing</w>\": 7124,\n  \"viewpoint</w>\": 41604,\n  \"views</w>\": 2758,\n  \"vig\": 8549,\n  \"vig</w>\": 45083,\n  \"vigil\": 21538,\n  \"vigil</w>\": 19896,\n  \"vigilant</w>\": 43026,\n  \"vigne\": 40447,\n  \"vigne</w>\": 34581,\n  \"vigo</w>\": 44097,\n  \"vigor\": 26781,\n  \"vii</w>\": 17759,\n  \"viii</w>\": 20414,\n  \"vijay\": 12014,\n  \"vijay</w>\": 10823,\n  \"vijaysethu\": 47966,\n  \"vik\": 10764,\n  \"vik</w>\": 17181,\n  \"vika</w>\": 39562,\n  \"vikas</w>\": 37116,\n  \"viking\": 26663,\n  \"viking</w>\": 15897,\n  \"vikings</w>\": 11713,\n  \"vikram\": 41136,\n  \"vikram</w>\": 24314,\n  \"viktor</w>\": 36101,\n  \"vil\": 1338,\n  \"vil</w>\": 3000,\n  \"vila</w>\": 37505,\n  \"vile</w>\": 27247,\n  \"vill\": 10481,\n  \"vill</w>\": 45698,\n  \"villa\": 3203,\n  \"villa</w>\": 7754,\n  \"village\": 34584,\n  \"village</w>\": 4331,\n  \"villagers</w>\": 34283,\n  \"villages</w>\": 17621,\n  \"villain</w>\": 15425,\n  \"villains</w>\": 25271,\n  \"villanova</w>\": 44025,\n  \"villar\": 35164,\n  \"villas</w>\": 28907,\n  \"ville\": 11110,\n  \"ville</w>\": 1930,\n  \"villen\": 46177,\n  \"villi\": 36907,\n  \"vimeo</w>\": 48720,\n  \"vin\": 1379,\n  \"vin</w>\": 2558,\n  \"vina</w>\": 35682,\n  \"vinai\": 37396,\n  \"vinaigrette</w>\": 39876,\n  \"vinay\": 43952,\n  \"vince\": 32429,\n  \"vince</w>\": 6236,\n  \"vincen\": 33402,\n  \"vincent\": 29069,\n  \"vincent</w>\": 10357,\n  \"vinci</w>\": 30199,\n  \"vind</w>\": 20275,\n  \"vindic\": 39582,\n  \"vine\": 8471,\n  \"vine</w>\": 7721,\n  \"vinegar</w>\": 23834,\n  \"vines</w>\": 21268,\n  \"vineyard</w>\": 16527,\n  \"vineyards</w>\": 23082,\n  \"ving\": 5375,\n  \"ving</w>\": 903,\n  \"vingne</w>\": 42579,\n  \"vings</w>\": 22510,\n  \"vini</w>\": 48119,\n  \"vinnie</w>\": 40885,\n  \"vinny</w>\": 36794,\n  \"vino</w>\": 14509,\n  \"vinod</w>\": 43348,\n  \"vins</w>\": 34820,\n  \"vinson</w>\": 45945,\n  \"vintag\": 10936,\n  \"vintage\": 13654,\n  \"vintage</w>\": 3266,\n  \"viny\": 40990,\n  \"vinyl\": 22835,\n  \"vinyl</w>\": 5754,\n  \"vio\": 11913,\n  \"vio</w>\": 20324,\n  \"viol\": 3164,\n  \"viola</w>\": 27438,\n  \"violate</w>\": 44875,\n  \"violated</w>\": 38192,\n  \"violating</w>\": 37554,\n  \"violation</w>\": 22919,\n  \"violations</w>\": 21969,\n  \"violence</w>\": 5450,\n  \"violent</w>\": 11565,\n  \"violently</w>\": 47758,\n  \"violet</w>\": 16118,\n  \"violets</w>\": 42861,\n  \"violin</w>\": 17058,\n  \"violinist</w>\": 36299,\n  \"vion</w>\": 35496,\n  \"vious</w>\": 6418,\n  \"viously</w>\": 7149,\n  \"vip\": 45714,\n  \"vip</w>\": 7111,\n  \"viper</w>\": 27401,\n  \"vips</w>\": 41149,\n  \"vir\": 1790,\n  \"vir</w>\": 25319,\n  \"vira</w>\": 35910,\n  \"viral</w>\": 11653,\n  \"virat</w>\": 32473,\n  \"virgil</w>\": 39076,\n  \"virgin\": 5651,\n  \"virgin</w>\": 12103,\n  \"virgini\": 43426,\n  \"virginia</w>\": 6728,\n  \"virgo</w>\": 39978,\n  \"viro\": 32301,\n  \"viron\": 38309,\n  \"virtu\": 7977,\n  \"virtual\": 18059,\n  \"virtual</w>\": 7790,\n  \"virtually</w>\": 22475,\n  \"virtualreality</w>\": 32608,\n  \"virtue</w>\": 26860,\n  \"virtues</w>\": 42167,\n  \"virtuoso</w>\": 47027,\n  \"virus</w>\": 11808,\n  \"viruses</w>\": 34830,\n  \"vis\": 1301,\n  \"vis</w>\": 5337,\n  \"visa</w>\": 12802,\n  \"visas</w>\": 41228,\n  \"vise</w>\": 24977,\n  \"vised</w>\": 14810,\n  \"vish\": 12024,\n  \"vish</w>\": 29124,\n  \"vishal</w>\": 33648,\n  \"vishnu</w>\": 37816,\n  \"visi\": 1409,\n  \"visibility</w>\": 15921,\n  \"visible\": 36658,\n  \"visible</w>\": 8626,\n  \"vising</w>\": 37439,\n  \"vision\": 11147,\n  \"vision</w>\": 2515,\n  \"visional</w>\": 24627,\n  \"visionary</w>\": 22959,\n  \"visions</w>\": 13804,\n  \"visit\": 3388,\n  \"visit</w>\": 1600,\n  \"visitation</w>\": 44370,\n  \"visited</w>\": 5580,\n  \"visiting</w>\": 4680,\n  \"visitor</w>\": 13881,\n  \"visitors</w>\": 9160,\n  \"visits</w>\": 8489,\n  \"visitscotland</w>\": 28760,\n  \"visitspain</w>\": 48860,\n  \"vism</w>\": 15514,\n  \"viso</w>\": 46732,\n  \"visor</w>\": 24217,\n  \"vist</w>\": 21436,\n  \"vista</w>\": 13865,\n  \"visu\": 7739,\n  \"visual\": 17004,\n  \"visual</w>\": 7195,\n  \"visualization</w>\": 28500,\n  \"visualize</w>\": 45057,\n  \"visually</w>\": 25743,\n  \"visuals</w>\": 21315,\n  \"viswas\": 36513,\n  \"viswasam</w>\": 47664,\n  \"vit\": 4056,\n  \"vit</w>\": 35580,\n  \"vita</w>\": 15700,\n  \"vital\": 32525,\n  \"vital</w>\": 10585,\n  \"vitality</w>\": 36385,\n  \"vitam\": 9856,\n  \"vitamin</w>\": 13675,\n  \"vitamins</w>\": 22582,\n  \"vito</w>\": 36725,\n  \"vity</w>\": 4893,\n  \"vitz</w>\": 26188,\n  \"vius</w>\": 41571,\n  \"viv\": 21827,\n  \"viv</w>\": 35363,\n  \"viva</w>\": 17399,\n  \"vival\": 35920,\n  \"vive\": 18980,\n  \"vive</w>\": 24004,\n  \"vivek</w>\": 36243,\n  \"vivi\": 11625,\n  \"vivian</w>\": 30129,\n  \"vivid</w>\": 22984,\n  \"vivo\": 28091,\n  \"vivo</w>\": 25888,\n  \"vix\": 28976,\n  \"vix</w>\": 34811,\n  \"vixen</w>\": 38757,\n  \"vixx</w>\": 32106,\n  \"viz\": 28251,\n  \"viz</w>\": 31786,\n  \"vj\": 45439,\n  \"vj</w>\": 30827,\n  \"vk</w>\": 41893,\n  \"vl\": 37580,\n  \"vl</w>\": 36442,\n  \"vla\": 23686,\n  \"vlad</w>\": 41089,\n  \"vladi\": 19320,\n  \"vladimir</w>\": 21702,\n  \"vlive</w>\": 46797,\n  \"vlog</w>\": 18894,\n  \"vm\": 16204,\n  \"vm</w>\": 20269,\n  \"vma</w>\": 35666,\n  \"vmas</w>\": 30236,\n  \"vmware</w>\": 29615,\n  \"vn\": 47098,\n  \"vn</w>\": 25076,\n  \"vo\": 947,\n  \"vo</w>\": 3951,\n  \"voc\": 4105,\n  \"voc</w>\": 20855,\n  \"vocab\": 21346,\n  \"vocabulary</w>\": 23804,\n  \"vocal\": 34037,\n  \"vocal</w>\": 13147,\n  \"vocali\": 19134,\n  \"vocalist</w>\": 22102,\n  \"vocals</w>\": 17666,\n  \"vocation</w>\": 20521,\n  \"vocational</w>\": 33751,\n  \"vod\": 11820,\n  \"vod</w>\": 35854,\n  \"vodaf\": 28436,\n  \"vodafone</w>\": 38695,\n  \"vodka</w>\": 13646,\n  \"vogel</w>\": 44960,\n  \"vogue\": 24418,\n  \"vogue</w>\": 13178,\n  \"voic\": 29185,\n  \"voice\": 13179,\n  \"voice</w>\": 3386,\n  \"voiced</w>\": 34352,\n  \"voiceof\": 44966,\n  \"voiceover</w>\": 41979,\n  \"voices</w>\": 9144,\n  \"void</w>\": 21561,\n  \"voip</w>\": 42762,\n  \"voir</w>\": 16036,\n  \"vol\": 1343,\n  \"vol</w>\": 7945,\n  \"volatile</w>\": 41022,\n  \"volatility</w>\": 32355,\n  \"volcan\": 9916,\n  \"volcanic</w>\": 24072,\n  \"volcano</w>\": 14581,\n  \"volcanoes</w>\": 38055,\n  \"voli</w>\": 40138,\n  \"volk\": 13432,\n  \"volkswag\": 14407,\n  \"volkswagen</w>\": 15342,\n  \"volley\": 7130,\n  \"volley</w>\": 34656,\n  \"volleyball</w>\": 7458,\n  \"volo</w>\": 44791,\n  \"vols</w>\": 20404,\n  \"volt</w>\": 26430,\n  \"volta\": 29879,\n  \"volta</w>\": 33480,\n  \"voltage</w>\": 23118,\n  \"voltron</w>\": 39314,\n  \"volu\": 3563,\n  \"volume</w>\": 8284,\n  \"volumes</w>\": 22651,\n  \"volun\": 3356,\n  \"voluntar\": 48823,\n  \"voluntary</w>\": 23815,\n  \"volunte\": 3556,\n  \"volunteer\": 32331,\n  \"volunteer</w>\": 7114,\n  \"volunteered</w>\": 34000,\n  \"volunteering</w>\": 14902,\n  \"volunteers</w>\": 5939,\n  \"volution</w>\": 24043,\n  \"volved</w>\": 42888,\n  \"volvo\": 39991,\n  \"volvo</w>\": 16906,\n  \"vom\": 24198,\n  \"vomit</w>\": 46485,\n  \"von\": 11269,\n  \"von</w>\": 8497,\n  \"voo\": 19497,\n  \"voodoo</w>\": 26869,\n  \"voor\": 34291,\n  \"voor</w>\": 34464,\n  \"vor\": 8338,\n  \"vor</w>\": 5308,\n  \"vore</w>\": 18215,\n  \"vortex</w>\": 30071,\n  \"vos</w>\": 16863,\n  \"vot</w>\": 48558,\n  \"vote\": 6830,\n  \"vote</w>\": 2187,\n  \"voted</w>\": 6454,\n  \"votel\": 41379,\n  \"voter\": 44474,\n  \"voter</w>\": 14065,\n  \"voters</w>\": 8925,\n  \"votes</w>\": 6693,\n  \"voting</w>\": 5756,\n  \"vou\": 11045,\n  \"voucher</w>\": 18190,\n  \"vouchers</w>\": 23384,\n  \"vous</w>\": 10636,\n  \"vow</w>\": 34787,\n  \"vows</w>\": 21677,\n  \"vox\": 29215,\n  \"vox</w>\": 22692,\n  \"voy\": 10622,\n  \"voy</w>\": 15021,\n  \"voyage</w>\": 16299,\n  \"voyager</w>\": 29669,\n  \"vp\": 32758,\n  \"vp</w>\": 3896,\n  \"vpn</w>\": 38212,\n  \"vr\": 16840,\n  \"vr</w>\": 5921,\n  \"vre\": 44500,\n  \"vre</w>\": 17501,\n  \"vs\": 11385,\n  \"vs</w>\": 1547,\n  \"vsco\": 26752,\n  \"vsco</w>\": 32822,\n  \"vscocam</w>\": 34694,\n  \"vsky</w>\": 37791,\n  \"vss</w>\": 31919,\n  \"vt\": 31732,\n  \"vt</w>\": 10291,\n  \"vu\": 8664,\n  \"vu</w>\": 13230,\n  \"vue\": 43915,\n  \"vue</w>\": 19313,\n  \"vuel\": 31312,\n  \"vuelta</w>\": 43856,\n  \"vuitton</w>\": 26705,\n  \"vul\": 6856,\n  \"vulcan</w>\": 34767,\n  \"vulner\": 11213,\n  \"vulnerability</w>\": 28797,\n  \"vulnerable</w>\": 14332,\n  \"vulture</w>\": 34593,\n  \"vultures</w>\": 47197,\n  \"vv\": 19264,\n  \"vv</w>\": 35686,\n  \"vw\": 28650,\n  \"vw</w>\": 13250,\n  \"vx</w>\": 47644,\n  \"vy\": 11566,\n  \"vy</w>\": 5157,\n  \"w\": 86,\n  \"w</w>\": 342,\n  \"wa\": 869,\n  \"wa</w>\": 2663,\n  \"waa</w>\": 35874,\n  \"wab\": 19893,\n  \"wab</w>\": 36852,\n  \"wac\": 27445,\n  \"wac</w>\": 37947,\n  \"wack\": 22880,\n  \"wack</w>\": 38270,\n  \"wacky</w>\": 34318,\n  \"waco</w>\": 36035,\n  \"wad\": 11133,\n  \"wad</w>\": 30451,\n  \"wada</w>\": 40006,\n  \"wade\": 40237,\n  \"wade</w>\": 14180,\n  \"wadi</w>\": 37253,\n  \"waf\": 17638,\n  \"wafc</w>\": 49086,\n  \"waff\": 13940,\n  \"waffle</w>\": 20375,\n  \"waffles</w>\": 24205,\n  \"wag\": 5764,\n  \"wag</w>\": 19177,\n  \"wage</w>\": 10716,\n  \"wager</w>\": 43430,\n  \"wages</w>\": 19114,\n  \"wagner</w>\": 18081,\n  \"wagon</w>\": 13260,\n  \"wagons</w>\": 47944,\n  \"wags</w>\": 48580,\n  \"wah\": 24812,\n  \"wah</w>\": 18014,\n  \"wahl\": 27500,\n  \"wahlberg</w>\": 35151,\n  \"wahoo</w>\": 47995,\n  \"wai\": 11469,\n  \"wai</w>\": 21569,\n  \"waifu</w>\": 46551,\n  \"waikiki</w>\": 44907,\n  \"wain\": 28358,\n  \"wain</w>\": 20120,\n  \"wainwright</w>\": 45878,\n  \"waist\": 36946,\n  \"waist</w>\": 18459,\n  \"wait\": 10021,\n  \"wait</w>\": 1885,\n  \"waite</w>\": 24272,\n  \"waited</w>\": 18492,\n  \"waiter</w>\": 32946,\n  \"waitin</w>\": 44482,\n  \"waiting</w>\": 2680,\n  \"waitress</w>\": 39760,\n  \"waitrose</w>\": 37164,\n  \"waits</w>\": 21361,\n  \"waiver</w>\": 42866,\n  \"waj</w>\": 49367,\n  \"wak\": 11172,\n  \"wak</w>\": 36015,\n  \"waka</w>\": 42696,\n  \"wake\": 10501,\n  \"wake</w>\": 5731,\n  \"wakefield</w>\": 26358,\n  \"wakes</w>\": 29108,\n  \"wakeup\": 26328,\n  \"wakeup</w>\": 35380,\n  \"wakeupamerica</w>\": 37474,\n  \"waking</w>\": 13025,\n  \"wal\": 1056,\n  \"wal</w>\": 6903,\n  \"wala</w>\": 16468,\n  \"walang</w>\": 49180,\n  \"walcott</w>\": 45744,\n  \"wald\": 46930,\n  \"wald</w>\": 15724,\n  \"walden</w>\": 39311,\n  \"waldo</w>\": 32440,\n  \"waldorf</w>\": 38227,\n  \"wale\": 41247,\n  \"wale</w>\": 20336,\n  \"wales\": 25383,\n  \"wales</w>\": 5110,\n  \"walgreens</w>\": 38490,\n  \"wali\": 37576,\n  \"wali</w>\": 14768,\n  \"walia</w>\": 44455,\n  \"walk\": 8588,\n  \"walk</w>\": 2374,\n  \"walkaway</w>\": 48255,\n  \"walked</w>\": 8667,\n  \"walker\": 24735,\n  \"walker</w>\": 6150,\n  \"walkers</w>\": 23366,\n  \"walkin</w>\": 45792,\n  \"walking\": 12644,\n  \"walking</w>\": 3941,\n  \"walkingdead</w>\": 14948,\n  \"walkout</w>\": 47470,\n  \"walks</w>\": 8192,\n  \"walkway</w>\": 36614,\n  \"wall\": 4316,\n  \"wall</w>\": 2569,\n  \"walla\": 26007,\n  \"walla</w>\": 39982,\n  \"wallabies</w>\": 48926,\n  \"wallace</w>\": 12535,\n  \"wallart</w>\": 36223,\n  \"walled</w>\": 36567,\n  \"waller</w>\": 45340,\n  \"wallet</w>\": 12154,\n  \"wallets</w>\": 38550,\n  \"walleye</w>\": 49099,\n  \"wallis</w>\": 42206,\n  \"wallpaper</w>\": 10560,\n  \"wallpapers</w>\": 29841,\n  \"walls</w>\": 8258,\n  \"wallstreet</w>\": 45341,\n  \"wally</w>\": 26024,\n  \"walmart</w>\": 11972,\n  \"walnut</w>\": 16310,\n  \"walnuts</w>\": 38294,\n  \"walsall</w>\": 42935,\n  \"walsh</w>\": 12856,\n  \"walt\": 23535,\n  \"walt</w>\": 14312,\n  \"waltdisneyworld</w>\": 36505,\n  \"walter\": 31156,\n  \"walter</w>\": 10645,\n  \"walters</w>\": 25532,\n  \"waltham\": 42742,\n  \"waltham</w>\": 45581,\n  \"walton</w>\": 19485,\n  \"waltz</w>\": 35982,\n  \"wam\": 20503,\n  \"wamy</w>\": 46970,\n  \"wan\": 2060,\n  \"wan</w>\": 4557,\n  \"wana</w>\": 30830,\n  \"wand\": 14636,\n  \"wand</w>\": 28559,\n  \"wanda</w>\": 25070,\n  \"wander\": 12985,\n  \"wander</w>\": 24473,\n  \"wandered</w>\": 46593,\n  \"wanderers</w>\": 27540,\n  \"wandering</w>\": 22597,\n  \"wanderlust</w>\": 16129,\n  \"wane</w>\": 27459,\n  \"wang\": 19731,\n  \"wang</w>\": 11900,\n  \"wani</w>\": 21674,\n  \"wankers</w>\": 42189,\n  \"wann\": 23622,\n  \"wanna\": 35940,\n  \"wanna</w>\": 3836,\n  \"wannabe</w>\": 40730,\n  \"wannaone</w>\": 44832,\n  \"want\": 18356,\n  \"want</w>\": 1280,\n  \"wanted</w>\": 3146,\n  \"wanting</w>\": 12801,\n  \"wants</w>\": 3107,\n  \"wap\": 27393,\n  \"wap</w>\": 30368,\n  \"waq\": 47512,\n  \"war\": 984,\n  \"war</w>\": 2238,\n  \"wara</w>\": 21631,\n  \"warbler</w>\": 33891,\n  \"warcraft</w>\": 13660,\n  \"ward\": 7728,\n  \"ward</w>\": 1460,\n  \"warden</w>\": 27798,\n  \"wardly</w>\": 30780,\n  \"wardro\": 14247,\n  \"wardrobe</w>\": 15020,\n  \"wards</w>\": 2593,\n  \"ware\": 7416,\n  \"ware</w>\": 4476,\n  \"wareagle</w>\": 35716,\n  \"warehouse</w>\": 13054,\n  \"wareness\": 41601,\n  \"wareness</w>\": 35870,\n  \"wares</w>\": 30692,\n  \"warfare</w>\": 15739,\n  \"warhammer</w>\": 26832,\n  \"warhol</w>\": 27554,\n  \"wari</w>\": 20977,\n  \"wark\": 46346,\n  \"wark</w>\": 15164,\n  \"warlock</w>\": 42455,\n  \"warm\": 14725,\n  \"warm</w>\": 3616,\n  \"warmed</w>\": 36695,\n  \"warmer</w>\": 14328,\n  \"warmest</w>\": 30910,\n  \"warming</w>\": 8606,\n  \"warmly</w>\": 45322,\n  \"warmongers</w>\": 33205,\n  \"warms</w>\": 32917,\n  \"warmth</w>\": 19636,\n  \"warmup</w>\": 29904,\n  \"warmups</w>\": 44094,\n  \"warn</w>\": 19360,\n  \"warned</w>\": 16409,\n  \"warner\": 28564,\n  \"warner</w>\": 13402,\n  \"warning</w>\": 4994,\n  \"warnings</w>\": 18098,\n  \"warns</w>\": 14086,\n  \"waron\": 38947,\n  \"warp</w>\": 32411,\n  \"warped</w>\": 32125,\n  \"warran\": 17392,\n  \"warrant</w>\": 22554,\n  \"warrants</w>\": 45677,\n  \"warranty</w>\": 23999,\n  \"warren\": 23143,\n  \"warren</w>\": 9234,\n  \"warri\": 4109,\n  \"warrington</w>\": 31203,\n  \"warrior\": 18998,\n  \"warrior</w>\": 8148,\n  \"warriors</w>\": 6421,\n  \"wars</w>\": 3931,\n  \"warsaw</w>\": 21072,\n  \"warship</w>\": 47846,\n  \"wart\": 43535,\n  \"wart</w>\": 7346,\n  \"wartime</w>\": 42998,\n  \"warts</w>\": 21781,\n  \"warwick\": 23081,\n  \"warwick</w>\": 22215,\n  \"warwickshire</w>\": 36766,\n  \"wary</w>\": 36213,\n  \"was\": 3398,\n  \"was</w>\": 739,\n  \"wasabi</w>\": 47334,\n  \"wash\": 3363,\n  \"wash</w>\": 7810,\n  \"washed</w>\": 14092,\n  \"washer</w>\": 24085,\n  \"washes</w>\": 38950,\n  \"washing</w>\": 13029,\n  \"washington\": 16774,\n  \"washington</w>\": 4365,\n  \"washingtondc</w>\": 40225,\n  \"washingtonpost</w>\": 28426,\n  \"wasn</w>\": 5044,\n  \"wasnt</w>\": 29607,\n  \"wasp</w>\": 24889,\n  \"wasps</w>\": 35300,\n  \"wassup</w>\": 45708,\n  \"wast\": 28886,\n  \"waste\": 18157,\n  \"waste</w>\": 6065,\n  \"wasted</w>\": 18278,\n  \"wasteland</w>\": 44035,\n  \"wastewater</w>\": 34463,\n  \"wasting</w>\": 25577,\n  \"wat\": 800,\n  \"wat</w>\": 10621,\n  \"wata</w>\": 42509,\n  \"watch\": 7046,\n  \"watch</w>\": 1239,\n  \"watchdog</w>\": 35303,\n  \"watched</w>\": 5775,\n  \"watcher</w>\": 35971,\n  \"watchers</w>\": 28443,\n  \"watches</w>\": 9521,\n  \"watchin</w>\": 32432,\n  \"watching</w>\": 2113,\n  \"water\": 2505,\n  \"water</w>\": 1573,\n  \"watercolor</w>\": 14211,\n  \"watercolour</w>\": 18377,\n  \"waterfall</w>\": 16403,\n  \"waterfalls</w>\": 26692,\n  \"waterford</w>\": 24448,\n  \"waterfront</w>\": 16605,\n  \"waterhouse</w>\": 45072,\n  \"watering</w>\": 19871,\n  \"waterloo</w>\": 17465,\n  \"watermelon</w>\": 19889,\n  \"waterproof</w>\": 17613,\n  \"waters</w>\": 7753,\n  \"watershed</w>\": 33204,\n  \"waterstones</w>\": 45014,\n  \"waterways</w>\": 37395,\n  \"watford</w>\": 23162,\n  \"watfordfc</w>\": 37328,\n  \"wati</w>\": 27966,\n  \"watkins</w>\": 22539,\n  \"watson\": 35490,\n  \"watson</w>\": 9294,\n  \"watt\": 22899,\n  \"watt</w>\": 15805,\n  \"wattpad</w>\": 32351,\n  \"watts</w>\": 14750,\n  \"wau\": 9479,\n  \"wav\": 6054,\n  \"wave\": 17530,\n  \"wave</w>\": 4535,\n  \"waved</w>\": 44657,\n  \"waver\": 25997,\n  \"waves</w>\": 7882,\n  \"waving</w>\": 26545,\n  \"wavy</w>\": 31941,\n  \"waw\": 22039,\n  \"wawrinka</w>\": 48414,\n  \"wawx</w>\": 47387,\n  \"wax\": 18789,\n  \"wax</w>\": 11910,\n  \"waxing</w>\": 38781,\n  \"way\": 3079,\n  \"way</w>\": 923,\n  \"wayback\": 47822,\n  \"wayne\": 23632,\n  \"wayne</w>\": 7003,\n  \"ways</w>\": 1248,\n  \"waz\": 20889,\n  \"waz</w>\": 48835,\n  \"wb\": 10726,\n  \"wb</w>\": 12377,\n  \"wba</w>\": 22675,\n  \"wbb</w>\": 14482,\n  \"wbc</w>\": 26745,\n  \"wbo</w>\": 49053,\n  \"wbz</w>\": 35471,\n  \"wc\": 4842,\n  \"wc</w>\": 5755,\n  \"wcc\": 47166,\n  \"wcc</w>\": 34926,\n  \"wcpo</w>\": 46624,\n  \"wcs</w>\": 39916,\n  \"wcvb</w>\": 32709,\n  \"wcw</w>\": 9041,\n  \"wd\": 15998,\n  \"wd</w>\": 7494,\n  \"wdw</w>\": 40334,\n  \"we\": 598,\n  \"we</w>\": 649,\n  \"wea\": 37146,\n  \"wea</w>\": 47301,\n  \"weak\": 12128,\n  \"weak</w>\": 10128,\n  \"weaker</w>\": 39735,\n  \"weakness</w>\": 21448,\n  \"weaknesses</w>\": 43487,\n  \"weal\": 14759,\n  \"wealth\": 33150,\n  \"wealth</w>\": 7904,\n  \"wealthy</w>\": 22617,\n  \"weap\": 6156,\n  \"weapon\": 42612,\n  \"weapon</w>\": 10537,\n  \"weapons</w>\": 10007,\n  \"wear\": 12206,\n  \"wear</w>\": 2839,\n  \"wearab\": 22983,\n  \"wearable\": 44943,\n  \"wearable</w>\": 24973,\n  \"wearables</w>\": 30319,\n  \"weare\": 4264,\n  \"weare</w>\": 27867,\n  \"weareall\": 45980,\n  \"wearec\": 43620,\n  \"wearen\": 45635,\n  \"weareone\": 16149,\n  \"weareoneexo</w>\": 16448,\n  \"wearethe\": 40242,\n  \"wearing</w>\": 3309,\n  \"wears</w>\": 11869,\n  \"weary</w>\": 38766,\n  \"weasel</w>\": 44308,\n  \"weather\": 8808,\n  \"weather</w>\": 2237,\n  \"weathercee</w>\": 44980,\n  \"weatherchannel</w>\": 42138,\n  \"weav\": 22260,\n  \"weave</w>\": 22450,\n  \"weaver</w>\": 20297,\n  \"weaving</w>\": 27131,\n  \"web\": 2055,\n  \"web</w>\": 4601,\n  \"webb</w>\": 15708,\n  \"webber</w>\": 34248,\n  \"webcam\": 24211,\n  \"webcam</w>\": 22589,\n  \"webcamtoy</w>\": 27719,\n  \"webcast</w>\": 28256,\n  \"webcomic</w>\": 34286,\n  \"webcomics</w>\": 39811,\n  \"webdesign</w>\": 20470,\n  \"webdev</w>\": 37000,\n  \"webdevelopment</w>\": 47553,\n  \"weber</w>\": 20179,\n  \"webin\": 8460,\n  \"webinar</w>\": 8921,\n  \"webinars</w>\": 47755,\n  \"webpage</w>\": 46964,\n  \"webs</w>\": 32829,\n  \"webseries</w>\": 44819,\n  \"website</w>\": 3364,\n  \"websites</w>\": 19278,\n  \"webster</w>\": 19471,\n  \"websummit</w>\": 48069,\n  \"wec</w>\": 33152,\n  \"wechat</w>\": 46124,\n  \"wed\": 1687,\n  \"wed</w>\": 3478,\n  \"wedd\": 7576,\n  \"wedding\": 11204,\n  \"wedding</w>\": 3101,\n  \"weddings</w>\": 15964,\n  \"wedge</w>\": 21446,\n  \"wedges</w>\": 33179,\n  \"wedne\": 2380,\n  \"wednesday\": 9311,\n  \"wednesday</w>\": 2689,\n  \"wednesdaymotivation</w>\": 37860,\n  \"wednesdays</w>\": 24943,\n  \"wednesdaywisdom</w>\": 11445,\n  \"wedo</w>\": 43432,\n  \"weds</w>\": 19107,\n  \"wee\": 716,\n  \"wee</w>\": 8288,\n  \"weed\": 36935,\n  \"weed</w>\": 8015,\n  \"weeds</w>\": 26326,\n  \"week\": 1286,\n  \"week</w>\": 994,\n  \"weekday</w>\": 29244,\n  \"weekdays</w>\": 44330,\n  \"weekend\": 17205,\n  \"weekend</w>\": 1456,\n  \"weekender</w>\": 36547,\n  \"weekends</w>\": 14564,\n  \"weekly\": 34652,\n  \"weekly</w>\": 5885,\n  \"weeknd</w>\": 29925,\n  \"weeks</w>\": 2898,\n  \"weeksary</w>\": 24628,\n  \"ween\": 17517,\n  \"ween</w>\": 1599,\n  \"weep</w>\": 39270,\n  \"weeping</w>\": 36629,\n  \"weer</w>\": 32491,\n  \"weet</w>\": 17742,\n  \"weets</w>\": 13454,\n  \"wef</w>\": 23313,\n  \"weg\": 47867,\n  \"weg</w>\": 47561,\n  \"wego\": 44784,\n  \"wego</w>\": 28220,\n  \"weh\": 48458,\n  \"weh</w>\": 40313,\n  \"weho</w>\": 47798,\n  \"wei\": 6958,\n  \"wei</w>\": 20952,\n  \"weibo</w>\": 20613,\n  \"weigh\": 10565,\n  \"weigh</w>\": 17346,\n  \"weighed</w>\": 33210,\n  \"weighing</w>\": 24455,\n  \"weighs</w>\": 20481,\n  \"weight\": 12723,\n  \"weight</w>\": 3868,\n  \"weighted</w>\": 43179,\n  \"weightlifting</w>\": 36164,\n  \"weightloss</w>\": 20359,\n  \"weights</w>\": 21374,\n  \"weil</w>\": 43720,\n  \"weiler</w>\": 42203,\n  \"wein\": 29134,\n  \"wein</w>\": 37684,\n  \"weiner</w>\": 38822,\n  \"weinstein</w>\": 34367,\n  \"weir\": 11299,\n  \"weir</w>\": 25517,\n  \"weird\": 27981,\n  \"weird</w>\": 5613,\n  \"weirdest</w>\": 29482,\n  \"weirdo</w>\": 32476,\n  \"weis\": 26251,\n  \"weiser</w>\": 34833,\n  \"weiss</w>\": 24794,\n  \"wel\": 1267,\n  \"wel</w>\": 8042,\n  \"welch</w>\": 25820,\n  \"welcom\": 11578,\n  \"welcome\": 18318,\n  \"welcome</w>\": 1881,\n  \"welcomed</w>\": 12590,\n  \"welcomes</w>\": 9304,\n  \"welcometo\": 47511,\n  \"welcoming</w>\": 8775,\n  \"weld</w>\": 39776,\n  \"welding</w>\": 24956,\n  \"welfare</w>\": 12129,\n  \"well\": 3277,\n  \"well</w>\": 1123,\n  \"wellbeing</w>\": 14273,\n  \"weller</w>\": 40921,\n  \"welling</w>\": 49165,\n  \"wellington</w>\": 15389,\n  \"wellness\": 40574,\n  \"wellness</w>\": 9904,\n  \"wells\": 42705,\n  \"wells</w>\": 9804,\n  \"welove\": 13573,\n  \"welp</w>\": 28391,\n  \"wels</w>\": 20852,\n  \"welsh\": 19173,\n  \"welsh</w>\": 10977,\n  \"welt</w>\": 38595,\n  \"welter\": 37115,\n  \"welterweight</w>\": 39617,\n  \"wemb\": 15213,\n  \"wembley</w>\": 16579,\n  \"wen\": 6590,\n  \"wen</w>\": 11278,\n  \"wend\": 15166,\n  \"wendell</w>\": 42091,\n  \"wendy\": 31616,\n  \"wendy</w>\": 14074,\n  \"wenger</w>\": 21105,\n  \"went\": 18633,\n  \"went</w>\": 2437,\n  \"wentworth</w>\": 36423,\n  \"wentz</w>\": 39179,\n  \"wer\": 6316,\n  \"wer</w>\": 2980,\n  \"were\": 15461,\n  \"were</w>\": 1365,\n  \"wered</w>\": 6605,\n  \"weren</w>\": 13611,\n  \"werewolf</w>\": 32001,\n  \"werk</w>\": 30176,\n  \"werner</w>\": 29917,\n  \"wers</w>\": 7110,\n  \"wes\": 18620,\n  \"wes</w>\": 14738,\n  \"wesle\": 29606,\n  \"wesley</w>\": 17332,\n  \"wesleyan</w>\": 32509,\n  \"wesome</w>\": 33292,\n  \"wess</w>\": 44431,\n  \"west\": 2973,\n  \"west</w>\": 1593,\n  \"westbound</w>\": 29208,\n  \"westbrook</w>\": 26948,\n  \"westchester</w>\": 36675,\n  \"westcoast</w>\": 44610,\n  \"westend</w>\": 44815,\n  \"wester\": 9846,\n  \"western\": 17079,\n  \"western</w>\": 4463,\n  \"westfield</w>\": 32309,\n  \"westh\": 36798,\n  \"westin</w>\": 43232,\n  \"westlake</w>\": 41535,\n  \"westminster</w>\": 15158,\n  \"weston</w>\": 22771,\n  \"westside</w>\": 33762,\n  \"westwood</w>\": 26371,\n  \"westworld</w>\": 42287,\n  \"wet\": 12406,\n  \"wet</w>\": 6682,\n  \"weta</w>\": 40946,\n  \"wethenorth</w>\": 45281,\n  \"wethepeople</w>\": 48030,\n  \"wether\": 33794,\n  \"wether</w>\": 48405,\n  \"wetland</w>\": 37357,\n  \"wetlands</w>\": 26547,\n  \"wett</w>\": 41971,\n  \"wetter</w>\": 43957,\n  \"wewant\": 39280,\n  \"wewill\": 37241,\n  \"wex\": 17234,\n  \"wexford</w>\": 29876,\n  \"wexmondays</w>\": 49042,\n  \"wey\": 30376,\n  \"wey</w>\": 19781,\n  \"weymouth</w>\": 41433,\n  \"wf\": 14576,\n  \"wf</w>\": 22313,\n  \"wfa\": 44606,\n  \"wfc</w>\": 36431,\n  \"wfp</w>\": 35193,\n  \"wftv</w>\": 47075,\n  \"wg\": 21091,\n  \"wg</w>\": 25857,\n  \"wga</w>\": 32354,\n  \"wgn\": 48828,\n  \"wh\": 573,\n  \"wh</w>\": 13844,\n  \"wha\": 18994,\n  \"wha</w>\": 25884,\n  \"whal\": 38967,\n  \"whale\": 37083,\n  \"whale</w>\": 11650,\n  \"whales</w>\": 17722,\n  \"wham\": 42506,\n  \"whar\": 15517,\n  \"wharf</w>\": 22452,\n  \"wharton</w>\": 43320,\n  \"what\": 4268,\n  \"what</w>\": 768,\n  \"whatcha</w>\": 37160,\n  \"whate\": 6695,\n  \"whatever</w>\": 6743,\n  \"whati\": 23500,\n  \"whats\": 9263,\n  \"whats</w>\": 13084,\n  \"whatsapp</w>\": 10119,\n  \"whatsoever</w>\": 39928,\n  \"whatson\": 35632,\n  \"whatyou\": 30508,\n  \"whe\": 2009,\n  \"whead</w>\": 34583,\n  \"wheat\": 20505,\n  \"wheat</w>\": 10303,\n  \"wheaton</w>\": 46933,\n  \"wheel\": 7360,\n  \"wheel</w>\": 6744,\n  \"wheelchair</w>\": 17713,\n  \"wheeler</w>\": 18405,\n  \"wheeling</w>\": 34839,\n  \"wheels</w>\": 8025,\n  \"whel\": 9792,\n  \"whelan</w>\": 40715,\n  \"when\": 8753,\n  \"when</w>\": 827,\n  \"whenever</w>\": 10500,\n  \"where\": 7052,\n  \"where</w>\": 1234,\n  \"whereabouts</w>\": 47808,\n  \"whereas</w>\": 42234,\n  \"wheres\": 46345,\n  \"wherever</w>\": 14103,\n  \"whereyou\": 46837,\n  \"whether</w>\": 5903,\n  \"whew</w>\": 39016,\n  \"whey</w>\": 34556,\n  \"whi\": 4295,\n  \"whi</w>\": 33129,\n  \"which</w>\": 1448,\n  \"whiche\": 48719,\n  \"whichever</w>\": 49138,\n  \"whil\": 8499,\n  \"while</w>\": 1519,\n  \"whilst</w>\": 8596,\n  \"whim\": 27766,\n  \"whimsical</w>\": 42282,\n  \"whip</w>\": 14412,\n  \"whipped</w>\": 22323,\n  \"whipping</w>\": 41567,\n  \"whir\": 20873,\n  \"whirl\": 30962,\n  \"whirlwind</w>\": 47771,\n  \"whis\": 6024,\n  \"whiskey\": 41381,\n  \"whiskey</w>\": 11610,\n  \"whisky\": 37567,\n  \"whisky</w>\": 12599,\n  \"whisp\": 21986,\n  \"whispe\": 30356,\n  \"whisper</w>\": 27616,\n  \"whisperer</w>\": 41368,\n  \"whispering</w>\": 42599,\n  \"whispers</w>\": 29133,\n  \"whist\": 13640,\n  \"whistle\": 23972,\n  \"whistle</w>\": 19746,\n  \"whistleblower</w>\": 40410,\n  \"whistler</w>\": 29633,\n  \"whit\": 4398,\n  \"whit</w>\": 31498,\n  \"whitaker</w>\": 35851,\n  \"whitby</w>\": 30858,\n  \"white\": 4699,\n  \"white</w>\": 1579,\n  \"whiteboard</w>\": 40839,\n  \"whitec\": 24575,\n  \"whitehall</w>\": 42827,\n  \"whitehead</w>\": 43560,\n  \"whitehouse</w>\": 20776,\n  \"whitening</w>\": 35540,\n  \"whitepaper</w>\": 42713,\n  \"whites\": 35886,\n  \"whites</w>\": 18835,\n  \"whitesox</w>\": 28816,\n  \"whitewater</w>\": 49350,\n  \"whitfield</w>\": 48404,\n  \"whitley</w>\": 40564,\n  \"whitman</w>\": 32394,\n  \"whitney\": 43021,\n  \"whitney</w>\": 18048,\n  \"whitt\": 33784,\n  \"whittaker</w>\": 47595,\n  \"whl</w>\": 25801,\n  \"who\": 2969,\n  \"who</w>\": 822,\n  \"whoa</w>\": 16943,\n  \"whoever</w>\": 11137,\n  \"whois\": 41884,\n  \"whole\": 10360,\n  \"whole</w>\": 2954,\n  \"wholefoods</w>\": 42840,\n  \"wholesale</w>\": 18306,\n  \"wholesome</w>\": 35959,\n  \"whom\": 38158,\n  \"whom</w>\": 12873,\n  \"whoo\": 20003,\n  \"whoo</w>\": 49290,\n  \"whoop</w>\": 22060,\n  \"whoops</w>\": 28433,\n  \"whopping</w>\": 34384,\n  \"whore</w>\": 31690,\n  \"whos\": 41460,\n  \"whos</w>\": 27130,\n  \"whose</w>\": 6933,\n  \"whouse</w>\": 45927,\n  \"whs</w>\": 26292,\n  \"wht</w>\": 32470,\n  \"whufc</w>\": 31695,\n  \"whun\": 18272,\n  \"why\": 11040,\n  \"why</w>\": 1182,\n  \"whyte</w>\": 42386,\n  \"wi\": 820,\n  \"wi</w>\": 5585,\n  \"wib</w>\": 45303,\n  \"wic\": 7834,\n  \"wich\": 9759,\n  \"wich</w>\": 5238,\n  \"wichita</w>\": 22566,\n  \"wick\": 6798,\n  \"wick</w>\": 6479,\n  \"wicked\": 32579,\n  \"wicked</w>\": 12825,\n  \"wicker</w>\": 38096,\n  \"wicket</w>\": 19180,\n  \"wickets</w>\": 22110,\n  \"wicklow</w>\": 39039,\n  \"wicz</w>\": 30121,\n  \"wid\": 11886,\n  \"wid</w>\": 20886,\n  \"wide\": 19341,\n  \"wide</w>\": 3184,\n  \"widely</w>\": 16195,\n  \"widening</w>\": 46598,\n  \"wider</w>\": 21263,\n  \"widesp\": 20598,\n  \"widespread</w>\": 21258,\n  \"widget</w>\": 43906,\n  \"wido\": 28068,\n  \"widow</w>\": 19949,\n  \"widows</w>\": 42129,\n  \"width</w>\": 23571,\n  \"wie\": 21378,\n  \"wie</w>\": 9131,\n  \"wielding</w>\": 47272,\n  \"wien</w>\": 38131,\n  \"wiener</w>\": 40567,\n  \"wies\": 42788,\n  \"wif</w>\": 37572,\n  \"wife</w>\": 3607,\n  \"wifey</w>\": 35282,\n  \"wifi</w>\": 11026,\n  \"wig\": 23690,\n  \"wig</w>\": 12216,\n  \"wigan</w>\": 23130,\n  \"wiggins</w>\": 32329,\n  \"wiggle</w>\": 47812,\n  \"wight\": 41278,\n  \"wight</w>\": 15545,\n  \"wigs</w>\": 31207,\n  \"wii</w>\": 8005,\n  \"wiiu</w>\": 40980,\n  \"wiki\": 10373,\n  \"wiki</w>\": 24265,\n  \"wikileaks</w>\": 28731,\n  \"wikipedia</w>\": 15176,\n  \"wil\": 1352,\n  \"wil</w>\": 20581,\n  \"wilbur</w>\": 43069,\n  \"wilcox</w>\": 43231,\n  \"wild\": 2780,\n  \"wild</w>\": 3220,\n  \"wildatlantic\": 35500,\n  \"wildatlanticway</w>\": 35776,\n  \"wildcard</w>\": 37360,\n  \"wildcat\": 49077,\n  \"wildcat</w>\": 25870,\n  \"wildcats</w>\": 15909,\n  \"wilde</w>\": 23498,\n  \"wilder\": 14343,\n  \"wilder</w>\": 23499,\n  \"wilderness</w>\": 16506,\n  \"wildest</w>\": 43028,\n  \"wildfire</w>\": 22788,\n  \"wildfires</w>\": 29184,\n  \"wildflower\": 27628,\n  \"wildflower</w>\": 33181,\n  \"wildflowerhour</w>\": 31302,\n  \"wildflowers</w>\": 29136,\n  \"wildlife\": 13298,\n  \"wildlife</w>\": 5250,\n  \"wildlifephotography</w>\": 32307,\n  \"wildlifewednesday</w>\": 48537,\n  \"wildly</w>\": 35981,\n  \"wildoz</w>\": 40113,\n  \"wiley</w>\": 32747,\n  \"wilhelm</w>\": 39696,\n  \"wilkes</w>\": 39548,\n  \"wilkins</w>\": 36986,\n  \"wilkinson</w>\": 26797,\n  \"will\": 5062,\n  \"will</w>\": 751,\n  \"willam\": 43276,\n  \"willard</w>\": 44920,\n  \"wille\": 48739,\n  \"willem</w>\": 38044,\n  \"willi\": 2256,\n  \"william\": 8420,\n  \"william</w>\": 4705,\n  \"williams\": 38452,\n  \"williams</w>\": 4075,\n  \"williamsburg</w>\": 30683,\n  \"williamson</w>\": 20793,\n  \"willie</w>\": 13907,\n  \"willing\": 34160,\n  \"willing</w>\": 11718,\n  \"willingness</w>\": 40573,\n  \"willis</w>\": 18491,\n  \"willow\": 33887,\n  \"willow</w>\": 15665,\n  \"wills</w>\": 26913,\n  \"willy\": 34502,\n  \"willy</w>\": 19599,\n  \"wilmington</w>\": 28052,\n  \"wilms\": 47879,\n  \"wilshere</w>\": 48359,\n  \"wilson\": 23629,\n  \"wilson</w>\": 5622,\n  \"wilt\": 23394,\n  \"wilt</w>\": 47357,\n  \"wilton</w>\": 46638,\n  \"wiltshire</w>\": 28025,\n  \"wim\": 8662,\n  \"wim</w>\": 27580,\n  \"wimble\": 11752,\n  \"wimbledon</w>\": 12229,\n  \"win\": 831,\n  \"win</w>\": 1225,\n  \"winchester</w>\": 20647,\n  \"wind\": 6812,\n  \"wind</w>\": 3630,\n  \"winder\": 44454,\n  \"winder</w>\": 46245,\n  \"winding</w>\": 22390,\n  \"windmill</w>\": 34084,\n  \"windo\": 3110,\n  \"window\": 26675,\n  \"window</w>\": 4879,\n  \"windows</w>\": 5437,\n  \"winds\": 12668,\n  \"winds</w>\": 7012,\n  \"windshield</w>\": 33002,\n  \"windsor\": 44322,\n  \"windsor</w>\": 12884,\n  \"windy</w>\": 13446,\n  \"wine\": 7375,\n  \"wine</w>\": 2604,\n  \"winelover</w>\": 26357,\n  \"winemaker</w>\": 41588,\n  \"wineoclock</w>\": 43846,\n  \"wineries</w>\": 49349,\n  \"winery</w>\": 15500,\n  \"wines</w>\": 8263,\n  \"winetasting</w>\": 41288,\n  \"winewednesday</w>\": 35447,\n  \"wing\": 8141,\n  \"wing</w>\": 1340,\n  \"winged</w>\": 24993,\n  \"winger</w>\": 22727,\n  \"winget</w>\": 44578,\n  \"wings</w>\": 5178,\n  \"wink\": 34455,\n  \"wink</w>\": 25859,\n  \"winkle</w>\": 36430,\n  \"winn</w>\": 38104,\n  \"winne\": 46273,\n  \"winner\": 32961,\n  \"winner</w>\": 2520,\n  \"winners</w>\": 4320,\n  \"winni\": 13018,\n  \"winnie</w>\": 29022,\n  \"winning\": 42099,\n  \"winning</w>\": 2577,\n  \"winnings</w>\": 46490,\n  \"winnipeg</w>\": 14369,\n  \"winona</w>\": 49202,\n  \"wins\": 46839,\n  \"wins</w>\": 2718,\n  \"winslow</w>\": 39658,\n  \"winston</w>\": 14848,\n  \"winter\": 7340,\n  \"winter</w>\": 2541,\n  \"winters</w>\": 21587,\n  \"wintry</w>\": 39504,\n  \"wip</w>\": 10447,\n  \"wipe</w>\": 26761,\n  \"wiped</w>\": 31822,\n  \"wipes</w>\": 33463,\n  \"wir\": 16849,\n  \"wir</w>\": 44838,\n  \"wire\": 7558,\n  \"wire</w>\": 7794,\n  \"wired</w>\": 18935,\n  \"wireless</w>\": 9103,\n  \"wires</w>\": 24311,\n  \"wiring</w>\": 36434,\n  \"wirral</w>\": 34675,\n  \"wis\": 3392,\n  \"wis</w>\": 20405,\n  \"wiscon\": 9857,\n  \"wisconsin</w>\": 10265,\n  \"wisdom\": 42474,\n  \"wisdom</w>\": 5425,\n  \"wise\": 19116,\n  \"wise</w>\": 5558,\n  \"wisely</w>\": 26173,\n  \"wiser</w>\": 44859,\n  \"wish\": 11328,\n  \"wish</w>\": 2412,\n  \"wished</w>\": 25883,\n  \"wishes</w>\": 6045,\n  \"wishing</w>\": 5307,\n  \"wishlist</w>\": 31969,\n  \"wit\": 584,\n  \"wit</w>\": 8531,\n  \"witch\": 20139,\n  \"witch</w>\": 10083,\n  \"witchcraft</w>\": 35065,\n  \"witcher</w>\": 33684,\n  \"witches</w>\": 21673,\n  \"with\": 1435,\n  \"with</w>\": 593,\n  \"withdra\": 24696,\n  \"withdraw</w>\": 31670,\n  \"withdrawal</w>\": 25765,\n  \"withdrawn</w>\": 46687,\n  \"withdraws</w>\": 48637,\n  \"wither\": 39655,\n  \"witherspoon</w>\": 45409,\n  \"within</w>\": 4154,\n  \"withme</w>\": 44670,\n  \"without\": 32836,\n  \"without</w>\": 2193,\n  \"withstand</w>\": 42236,\n  \"withthe\": 36872,\n  \"withus</w>\": 30572,\n  \"withyou</w>\": 30351,\n  \"witne\": 12096,\n  \"witness</w>\": 8793,\n  \"witnessed</w>\": 20187,\n  \"witnesses</w>\": 22778,\n  \"witnessing</w>\": 33618,\n  \"wits</w>\": 30938,\n  \"witt\": 38194,\n  \"witt</w>\": 17168,\n  \"witter</w>\": 31597,\n  \"witty</w>\": 29970,\n  \"witz\": 44186,\n  \"witz</w>\": 13265,\n  \"wiv</w>\": 48925,\n  \"wives</w>\": 14378,\n  \"wiwx</w>\": 44461,\n  \"wiz\": 7730,\n  \"wiz</w>\": 23178,\n  \"wizar\": 49121,\n  \"wizard\": 30490,\n  \"wizard</w>\": 14295,\n  \"wizards</w>\": 19140,\n  \"wizkid</w>\": 40146,\n  \"wj\": 19739,\n  \"wj</w>\": 35453,\n  \"wk\": 11512,\n  \"wk</w>\": 11528,\n  \"wkend</w>\": 42336,\n  \"wknd</w>\": 20851,\n  \"wks</w>\": 25508,\n  \"wku</w>\": 43377,\n  \"wl\": 13299,\n  \"wl</w>\": 9613,\n  \"wm\": 20268,\n  \"wm</w>\": 15790,\n  \"wn\": 1186,\n  \"wn</w>\": 757,\n  \"wnba</w>\": 32358,\n  \"wned</w>\": 8628,\n  \"wns</w>\": 12950,\n  \"wnt</w>\": 22484,\n  \"wny</w>\": 24833,\n  \"wo\": 1613,\n  \"wo</w>\": 11132,\n  \"woah</w>\": 17751,\n  \"wob\": 35984,\n  \"woc</w>\": 39011,\n  \"wod</w>\": 41522,\n  \"woes</w>\": 27860,\n  \"wof\": 45671,\n  \"woj\": 48931,\n  \"wok</w>\": 28912,\n  \"woke</w>\": 9331,\n  \"woken</w>\": 43697,\n  \"woking</w>\": 43931,\n  \"wol\": 2798,\n  \"wol</w>\": 48622,\n  \"wold</w>\": 42399,\n  \"wolf\": 9453,\n  \"wolf</w>\": 5916,\n  \"wolfe</w>\": 24989,\n  \"wolff</w>\": 34369,\n  \"wolfgang</w>\": 34061,\n  \"wolfpack</w>\": 30887,\n  \"wolve\": 45101,\n  \"wolver\": 14334,\n  \"wolverhampton</w>\": 34518,\n  \"wolverine</w>\": 23353,\n  \"wolverines</w>\": 42003,\n  \"wolves</w>\": 9372,\n  \"wom\": 1087,\n  \"womack</w>\": 48980,\n  \"woman\": 15716,\n  \"woman</w>\": 2308,\n  \"womanc\": 35630,\n  \"womancrush\": 37721,\n  \"womancrushwednesday</w>\": 39714,\n  \"womanin\": 30562,\n  \"womaninbiz</w>\": 36482,\n  \"womb</w>\": 37023,\n  \"women\": 3648,\n  \"women</w>\": 1507,\n  \"womenin\": 13062,\n  \"womeninscience</w>\": 41343,\n  \"womeninstem</w>\": 29380,\n  \"womenintech</w>\": 31470,\n  \"womenof\": 48421,\n  \"womens\": 12822,\n  \"womens</w>\": 14408,\n  \"womensart</w>\": 38548,\n  \"womensday</w>\": 13956,\n  \"womenshi\": 22887,\n  \"womenshistorymonth</w>\": 24982,\n  \"womensmarch</w>\": 30102,\n  \"won\": 1528,\n  \"won</w>\": 1749,\n  \"wonder\": 2070,\n  \"wonder</w>\": 3936,\n  \"wondercon</w>\": 46944,\n  \"wondered</w>\": 15550,\n  \"wonderful</w>\": 2582,\n  \"wonderfully</w>\": 23245,\n  \"wondering</w>\": 8360,\n  \"wonderland</w>\": 13874,\n  \"wonders</w>\": 14048,\n  \"wonderwoman</w>\": 31000,\n  \"wondo</w>\": 38402,\n  \"wondr\": 46771,\n  \"wong</w>\": 17876,\n  \"wonka</w>\": 43463,\n  \"wont\": 43174,\n  \"wont</w>\": 15952,\n  \"woo\": 1867,\n  \"woo</w>\": 9322,\n  \"wood\": 3269,\n  \"wood</w>\": 1704,\n  \"woodbridge</w>\": 49074,\n  \"wooden\": 48226,\n  \"wooden</w>\": 9057,\n  \"woodland\": 44314,\n  \"woodland</w>\": 17447,\n  \"woodlands</w>\": 32430,\n  \"woodley</w>\": 40566,\n  \"woodpecker</w>\": 32684,\n  \"woods</w>\": 6267,\n  \"woodson</w>\": 48967,\n  \"woodstock</w>\": 29486,\n  \"woodward</w>\": 27419,\n  \"woodwork</w>\": 47386,\n  \"woodworking</w>\": 29267,\n  \"woody\": 38627,\n  \"woody</w>\": 17144,\n  \"woof\": 34234,\n  \"woof</w>\": 24028,\n  \"woohoo</w>\": 20172,\n  \"wook</w>\": 29192,\n  \"wool\": 9967,\n  \"wool</w>\": 13283,\n  \"woolf</w>\": 43728,\n  \"woolly</w>\": 47722,\n  \"woon</w>\": 33126,\n  \"wooo</w>\": 43217,\n  \"woop</w>\": 31884,\n  \"woot</w>\": 22466,\n  \"wor\": 641,\n  \"worcester\": 22172,\n  \"worcester</w>\": 19580,\n  \"worcestershire</w>\": 38440,\n  \"worcestershirehour</w>\": 43644,\n  \"word\": 8272,\n  \"word</w>\": 2653,\n  \"wordof\": 33500,\n  \"wordoftheday</w>\": 43594,\n  \"wordpress</w>\": 15193,\n  \"words\": 31007,\n  \"words</w>\": 2709,\n  \"wore</w>\": 8953,\n  \"work\": 1636,\n  \"work</w>\": 951,\n  \"workday</w>\": 29735,\n  \"worked</w>\": 5410,\n  \"worker</w>\": 8098,\n  \"workers</w>\": 4795,\n  \"workflow</w>\": 28502,\n  \"workforce</w>\": 14672,\n  \"workin\": 31825,\n  \"workin</w>\": 26323,\n  \"working\": 20806,\n  \"working</w>\": 1699,\n  \"workinprogress</w>\": 46086,\n  \"workout</w>\": 6773,\n  \"workouts</w>\": 22779,\n  \"workplace</w>\": 11959,\n  \"workplaces</w>\": 47383,\n  \"works</w>\": 2322,\n  \"workshop</w>\": 3832,\n  \"workshops</w>\": 12262,\n  \"workspace</w>\": 34470,\n  \"worl\": 5221,\n  \"world\": 2334,\n  \"world</w>\": 1002,\n  \"worlda\": 46627,\n  \"worldbank</w>\": 36759,\n  \"worldbookday</w>\": 31191,\n  \"worldcup\": 42525,\n  \"worldcup</w>\": 8650,\n  \"worlden\": 44668,\n  \"worldenviron\": 47115,\n  \"worldenvironmentday</w>\": 47522,\n  \"worldly</w>\": 36268,\n  \"worldo\": 41698,\n  \"worldof\": 22636,\n  \"worldre\": 33951,\n  \"worlds</w>\": 7691,\n  \"worldseries</w>\": 26695,\n  \"worldtour</w>\": 23202,\n  \"worldwater\": 41176,\n  \"worldwaterday</w>\": 44520,\n  \"worldwide</w>\": 6214,\n  \"worm\": 33709,\n  \"worm</w>\": 10945,\n  \"worms</w>\": 20231,\n  \"worn</w>\": 9037,\n  \"worried</w>\": 11911,\n  \"worries</w>\": 17684,\n  \"worry</w>\": 7534,\n  \"worrying</w>\": 24058,\n  \"worse</w>\": 8236,\n  \"worsen\": 46344,\n  \"worshi\": 31840,\n  \"worship\": 46399,\n  \"worship</w>\": 9023,\n  \"worst</w>\": 5719,\n  \"wort</w>\": 30209,\n  \"worth\": 10671,\n  \"worth</w>\": 2450,\n  \"worthing</w>\": 39929,\n  \"worthit</w>\": 40830,\n  \"worthless</w>\": 44736,\n  \"worths</w>\": 44633,\n  \"worthwhile</w>\": 36295,\n  \"worthy</w>\": 8881,\n  \"worx</w>\": 44973,\n  \"wot</w>\": 24863,\n  \"wou\": 5279,\n  \"would\": 39873,\n  \"would</w>\": 1311,\n  \"wouldn</w>\": 5878,\n  \"wouldnt</w>\": 41595,\n  \"wound</w>\": 19231,\n  \"wounded</w>\": 14859,\n  \"wounds</w>\": 21290,\n  \"woven</w>\": 19830,\n  \"wow\": 22191,\n  \"wow</w>\": 2781,\n  \"woz\": 44558,\n  \"wozni\": 47782,\n  \"wp\": 15378,\n  \"wp</w>\": 13302,\n  \"wpg</w>\": 35048,\n  \"wps</w>\": 33386,\n  \"wq\": 45195,\n  \"wr\": 1189,\n  \"wr</w>\": 8028,\n  \"wra\": 3852,\n  \"wra</w>\": 46004,\n  \"wral</w>\": 49050,\n  \"wrangler</w>\": 30923,\n  \"wrap</w>\": 7094,\n  \"wrapped</w>\": 9875,\n  \"wrapping</w>\": 15223,\n  \"wraps</w>\": 18236,\n  \"wrath</w>\": 29783,\n  \"wray</w>\": 48943,\n  \"wrc</w>\": 16004,\n  \"wre\": 3168,\n  \"wreath</w>\": 23091,\n  \"wrec\": 20879,\n  \"wreck\": 28775,\n  \"wreck</w>\": 15017,\n  \"wrecked</w>\": 32695,\n  \"wreckem</w>\": 45676,\n  \"wrecking</w>\": 36956,\n  \"wrecks</w>\": 45545,\n  \"wren\": 20191,\n  \"wren</w>\": 31970,\n  \"wrench</w>\": 30980,\n  \"wrest\": 4177,\n  \"wrestle\": 17097,\n  \"wrestle</w>\": 28086,\n  \"wrestlemania</w>\": 18849,\n  \"wrestler</w>\": 19790,\n  \"wrestlers</w>\": 25902,\n  \"wrestling\": 31292,\n  \"wrestling</w>\": 5904,\n  \"wrexham</w>\": 34479,\n  \"wri\": 7667,\n  \"wri</w>\": 42007,\n  \"wright\": 28616,\n  \"wright</w>\": 6991,\n  \"wrights</w>\": 43711,\n  \"wrigley</w>\": 33538,\n  \"wrink\": 22201,\n  \"wrinkle</w>\": 46642,\n  \"wrinkles</w>\": 35525,\n  \"wrist\": 19243,\n  \"wrist</w>\": 16139,\n  \"wristband</w>\": 36890,\n  \"wristbands</w>\": 44864,\n  \"writ\": 2902,\n  \"write\": 28874,\n  \"write</w>\": 4946,\n  \"writer\": 27886,\n  \"writer</w>\": 4422,\n  \"writers\": 18742,\n  \"writers</w>\": 7307,\n  \"writerslife</w>\": 25007,\n  \"writes</w>\": 8023,\n  \"writing\": 16053,\n  \"writing</w>\": 2979,\n  \"writingcommunity</w>\": 39178,\n  \"writings</w>\": 36259,\n  \"written</w>\": 5231,\n  \"wro\": 5447,\n  \"wrong\": 18381,\n  \"wrong</w>\": 3669,\n  \"wrongly</w>\": 45642,\n  \"wrote</w>\": 5796,\n  \"wrought</w>\": 48125,\n  \"wrs</w>\": 45280,\n  \"ws\": 6300,\n  \"ws</w>\": 799,\n  \"wsb\": 30681,\n  \"wsbtv</w>\": 38394,\n  \"wsj</w>\": 19764,\n  \"wski</w>\": 12548,\n  \"wsl</w>\": 43706,\n  \"wsoc</w>\": 40253,\n  \"wson</w>\": 33954,\n  \"wsop</w>\": 41231,\n  \"wsu\": 44674,\n  \"wsu</w>\": 32913,\n  \"wsw</w>\": 43285,\n  \"wt\": 15873,\n  \"wt</w>\": 12255,\n  \"wta</w>\": 25984,\n  \"wtc</w>\": 39718,\n  \"wtf</w>\": 6891,\n  \"wth</w>\": 23021,\n  \"wthr\": 45269,\n  \"wti</w>\": 47345,\n  \"wto</w>\": 36406,\n  \"wts</w>\": 32159,\n  \"wu\": 9710,\n  \"wu</w>\": 9837,\n  \"wud</w>\": 43870,\n  \"wul\": 35154,\n  \"wunder\": 36661,\n  \"wur\": 24040,\n  \"wurst</w>\": 44409,\n  \"wusa</w>\": 40021,\n  \"wut</w>\": 28590,\n  \"wv\": 18920,\n  \"wv</w>\": 14743,\n  \"wvu\": 44878,\n  \"wvu</w>\": 25879,\n  \"ww\": 3181,\n  \"ww</w>\": 4491,\n  \"wwc</w>\": 26505,\n  \"wwdc</w>\": 47441,\n  \"wwe\": 12112,\n  \"wwe</w>\": 5290,\n  \"wwen\": 23308,\n  \"wwenetwork</w>\": 37228,\n  \"wwenxt</w>\": 39898,\n  \"wwer\": 32038,\n  \"wwf</w>\": 23332,\n  \"wwfc</w>\": 42681,\n  \"wwg</w>\": 35322,\n  \"wwi</w>\": 20194,\n  \"wwii</w>\": 10261,\n  \"www\": 26074,\n  \"www</w>\": 9667,\n  \"wwwbigbaldhead</w>\": 30761,\n  \"wwww\": 34224,\n  \"wwww</w>\": 25200,\n  \"wwwww</w>\": 48268,\n  \"wwx</w>\": 47431,\n  \"wx\": 18192,\n  \"wx</w>\": 3561,\n  \"wy\": 4665,\n  \"wy</w>\": 7625,\n  \"wyatt</w>\": 21660,\n  \"wyd</w>\": 33113,\n  \"wye\": 48436,\n  \"wye</w>\": 43751,\n  \"wylie</w>\": 49330,\n  \"wyn\": 11802,\n  \"wyn</w>\": 17504,\n  \"wynn</w>\": 36117,\n  \"wynne</w>\": 35951,\n  \"wynonna\": 41456,\n  \"wynonnaearp</w>\": 43755,\n  \"wyoming</w>\": 18693,\n  \"x\": 87,\n  \"x</w>\": 343,\n  \"xa</w>\": 24831,\n  \"xan\": 45530,\n  \"xander</w>\": 45601,\n  \"xavi\": 36342,\n  \"xavier\": 41044,\n  \"xavier</w>\": 18567,\n  \"xb</w>\": 33678,\n  \"xbox\": 18063,\n  \"xbox</w>\": 7748,\n  \"xboxone</w>\": 27410,\n  \"xc</w>\": 12515,\n  \"xchange</w>\": 49132,\n  \"xd</w>\": 6380,\n  \"xe\": 42886,\n  \"xe</w>\": 19183,\n  \"xen\": 15568,\n  \"xer\": 49005,\n  \"xf</w>\": 35274,\n  \"xfactor</w>\": 25211,\n  \"xfinity</w>\": 35107,\n  \"xford</w>\": 34732,\n  \"xh</w>\": 45771,\n  \"xham</w>\": 25284,\n  \"xi\": 2467,\n  \"xi</w>\": 7376,\n  \"xia\": 19854,\n  \"xia</w>\": 20724,\n  \"xian</w>\": 42570,\n  \"xiao</w>\": 49318,\n  \"xiaomi</w>\": 27477,\n  \"xico</w>\": 38469,\n  \"xide</w>\": 17398,\n  \"xie\": 40122,\n  \"xie</w>\": 15976,\n  \"xii</w>\": 36525,\n  \"xiii</w>\": 28199,\n  \"xim\": 11217,\n  \"xin\": 27053,\n  \"xin</w>\": 41517,\n  \"xing</w>\": 14383,\n  \"xion</w>\": 24164,\n  \"xis</w>\": 35793,\n  \"xit</w>\": 5316,\n  \"xiumin</w>\": 36563,\n  \"xiv</w>\": 16125,\n  \"xj</w>\": 42453,\n  \"xl\": 36529,\n  \"xl</w>\": 8833,\n  \"xley</w>\": 38223,\n  \"xm</w>\": 18626,\n  \"xma\": 48805,\n  \"xmas\": 48848,\n  \"xmas</w>\": 6425,\n  \"xmen</w>\": 28708,\n  \"xn</w>\": 25388,\n  \"xo\": 26936,\n  \"xo</w>\": 9000,\n  \"xon\": 29186,\n  \"xon</w>\": 8482,\n  \"xox\": 11531,\n  \"xox</w>\": 34050,\n  \"xoxo</w>\": 13313,\n  \"xp</w>\": 15651,\n  \"xper\": 32200,\n  \"xperia</w>\": 37615,\n  \"xpo</w>\": 44377,\n  \"xpress</w>\": 31809,\n  \"xq</w>\": 40606,\n  \"xr</w>\": 26276,\n  \"xrp</w>\": 26965,\n  \"xs</w>\": 16397,\n  \"xt</w>\": 1052,\n  \"xtina</w>\": 45520,\n  \"xton\": 32666,\n  \"xton</w>\": 10597,\n  \"xtra</w>\": 26969,\n  \"xtre\": 27025,\n  \"xtreme</w>\": 33483,\n  \"xu\": 42063,\n  \"xu</w>\": 37198,\n  \"xv</w>\": 17768,\n  \"xvi</w>\": 44031,\n  \"xx\": 5675,\n  \"xx</w>\": 3553,\n  \"xxl</w>\": 29777,\n  \"xxx\": 33923,\n  \"xxx</w>\": 8352,\n  \"xxxx\": 32035,\n  \"xxxx</w>\": 22819,\n  \"xxxxx</w>\": 44195,\n  \"xy\": 20023,\n  \"xy</w>\": 11443,\n  \"y\": 88,\n  \"y</w>\": 344,\n  \"ya\": 5018,\n  \"ya</w>\": 1430,\n  \"yaa\": 48847,\n  \"yaa</w>\": 34498,\n  \"yaan</w>\": 34680,\n  \"yab\": 27737,\n  \"yach\": 9039,\n  \"yacht\": 43806,\n  \"yacht</w>\": 12859,\n  \"yachts</w>\": 29260,\n  \"yad\": 13276,\n  \"yad</w>\": 40047,\n  \"yadav</w>\": 26650,\n  \"yaf\": 38019,\n  \"yag\": 35081,\n  \"yah\": 16170,\n  \"yah</w>\": 12381,\n  \"yaho\": 37929,\n  \"yahoo\": 38152,\n  \"yahoo</w>\": 16846,\n  \"yak\": 11014,\n  \"yak</w>\": 29074,\n  \"yaki</w>\": 44677,\n  \"yaku\": 29572,\n  \"yakuza</w>\": 42628,\n  \"yal\": 16198,\n  \"yal</w>\": 13418,\n  \"yale\": 39926,\n  \"yale</w>\": 17157,\n  \"yall</w>\": 9210,\n  \"yam\": 6666,\n  \"yam</w>\": 19318,\n  \"yama</w>\": 23512,\n  \"yamaha</w>\": 18854,\n  \"yan\": 3949,\n  \"yan</w>\": 4788,\n  \"yana</w>\": 18698,\n  \"yand\": 38609,\n  \"yang\": 23818,\n  \"yang</w>\": 12605,\n  \"yani</w>\": 26439,\n  \"yankee</w>\": 21554,\n  \"yankees</w>\": 11889,\n  \"yann\": 40246,\n  \"yann</w>\": 38657,\n  \"yao</w>\": 45231,\n  \"yap\": 48700,\n  \"yap</w>\": 34468,\n  \"yar\": 6786,\n  \"yar</w>\": 23071,\n  \"yard\": 20234,\n  \"yard</w>\": 4313,\n  \"yards</w>\": 7550,\n  \"yarmouth</w>\": 45941,\n  \"yarn</w>\": 19702,\n  \"yarra</w>\": 46824,\n  \"yas\": 8168,\n  \"yas</w>\": 20570,\n  \"yash\": 30216,\n  \"yash</w>\": 37836,\n  \"yasi\": 37700,\n  \"yasss</w>\": 23873,\n  \"yat\": 29443,\n  \"yat</w>\": 34965,\n  \"yates</w>\": 27677,\n  \"yatra</w>\": 38932,\n  \"yav\": 41275,\n  \"yaw\": 31989,\n  \"yawn</w>\": 48643,\n  \"yay\": 20614,\n  \"yay</w>\": 6712,\n  \"yaya</w>\": 37608,\n  \"yaz\": 19348,\n  \"yaz</w>\": 42252,\n  \"yb\": 41785,\n  \"yb</w>\": 27615,\n  \"yc</w>\": 11931,\n  \"ycle</w>\": 38089,\n  \"yd\": 29896,\n  \"yd</w>\": 9534,\n  \"yday</w>\": 15899,\n  \"yds</w>\": 24819,\n  \"ye\": 693,\n  \"ye</w>\": 4582,\n  \"yea</w>\": 13687,\n  \"yeah\": 29405,\n  \"yeah</w>\": 3908,\n  \"year\": 5163,\n  \"year</w>\": 935,\n  \"yearbook</w>\": 21636,\n  \"yearling</w>\": 48392,\n  \"yearly</w>\": 24541,\n  \"yearof\": 31944,\n  \"yearofthe\": 47899,\n  \"years\": 30864,\n  \"years</w>\": 1151,\n  \"yearsof\": 14932,\n  \"yearswith\": 45249,\n  \"yeast</w>\": 25819,\n  \"yeats</w>\": 44903,\n  \"yed\": 28137,\n  \"yed</w>\": 3301,\n  \"yee\": 18114,\n  \"yee</w>\": 23108,\n  \"yeezy</w>\": 24901,\n  \"yeg\": 16854,\n  \"yeg</w>\": 11976,\n  \"yegfood</w>\": 48711,\n  \"yeh</w>\": 21331,\n  \"yel\": 3323,\n  \"yel</w>\": 48164,\n  \"yell</w>\": 30824,\n  \"yelled</w>\": 39199,\n  \"yelling</w>\": 26581,\n  \"yellow\": 12059,\n  \"yellow</w>\": 4481,\n  \"yellowstone</w>\": 29241,\n  \"yelp</w>\": 31674,\n  \"yemen\": 29276,\n  \"yemen</w>\": 12513,\n  \"yemeni</w>\": 44656,\n  \"yemi</w>\": 42267,\n  \"yen\": 29602,\n  \"yen</w>\": 17960,\n  \"yeo\": 32292,\n  \"yeo</w>\": 43830,\n  \"yeol</w>\": 15808,\n  \"yeon</w>\": 16602,\n  \"yep</w>\": 10964,\n  \"yer\": 15491,\n  \"yer</w>\": 2371,\n  \"yers</w>\": 3722,\n  \"yes\": 21620,\n  \"yes</w>\": 1958,\n  \"yess\": 42778,\n  \"yess</w>\": 40189,\n  \"yesss</w>\": 36210,\n  \"yessss</w>\": 45620,\n  \"yester\": 1905,\n  \"yesterday</w>\": 1926,\n  \"yesterdays</w>\": 36238,\n  \"yesung</w>\": 38527,\n  \"yet</w>\": 2296,\n  \"yeti</w>\": 34228,\n  \"yev</w>\": 39855,\n  \"yew</w>\": 34660,\n  \"yey</w>\": 45447,\n  \"yg</w>\": 16396,\n  \"ygk</w>\": 44758,\n  \"ygo\": 46166,\n  \"yh</w>\": 41978,\n  \"yi\": 5826,\n  \"yi</w>\": 14762,\n  \"yield</w>\": 16825,\n  \"yields</w>\": 24856,\n  \"yikes</w>\": 25094,\n  \"yin\": 26476,\n  \"yin</w>\": 23543,\n  \"ying\": 42933,\n  \"ying</w>\": 910,\n  \"yixing</w>\": 32120,\n  \"yk</w>\": 30965,\n  \"yl\": 2656,\n  \"yl</w>\": 4045,\n  \"ylan</w>\": 41875,\n  \"ylde</w>\": 42850,\n  \"yle\": 32305,\n  \"yle</w>\": 10770,\n  \"ylene</w>\": 34239,\n  \"yler</w>\": 48081,\n  \"yles</w>\": 42860,\n  \"ylon</w>\": 22375,\n  \"ylor</w>\": 48468,\n  \"ym\": 1786,\n  \"ym</w>\": 19587,\n  \"yman</w>\": 29077,\n  \"ymc\": 47101,\n  \"ymca</w>\": 22369,\n  \"yment</w>\": 8199,\n  \"ymes</w>\": 39968,\n  \"ymi</w>\": 5271,\n  \"ymm</w>\": 37133,\n  \"ymoun\": 41426,\n  \"ymouth</w>\": 36429,\n  \"yn\": 2823,\n  \"yn</w>\": 4100,\n  \"yne</w>\": 18238,\n  \"ynes</w>\": 18020,\n  \"ynn</w>\": 10499,\n  \"ynna</w>\": 48292,\n  \"ynwa</w>\": 27372,\n  \"yo\": 586,\n  \"yo</w>\": 3497,\n  \"yoda</w>\": 31922,\n  \"yof\": 5966,\n  \"yofficial</w>\": 21818,\n  \"yofthe\": 43983,\n  \"yog\": 34985,\n  \"yog</w>\": 36539,\n  \"yoga\": 25872,\n  \"yoga</w>\": 5523,\n  \"yogh\": 32626,\n  \"yoghurt</w>\": 33491,\n  \"yogi</w>\": 22766,\n  \"yogur\": 16137,\n  \"yogurt</w>\": 16819,\n  \"yoh</w>\": 48880,\n  \"yoke</w>\": 41969,\n  \"yoko\": 25929,\n  \"yoko</w>\": 32256,\n  \"yokohama</w>\": 42409,\n  \"yol\": 19387,\n  \"yol</w>\": 35218,\n  \"yolanda</w>\": 43845,\n  \"yolo</w>\": 20905,\n  \"yom\": 34718,\n  \"yom</w>\": 44527,\n  \"yon\": 10147,\n  \"yon</w>\": 7604,\n  \"yong\": 27960,\n  \"yong</w>\": 20887,\n  \"yonge</w>\": 48592,\n  \"yoo\": 25842,\n  \"yoo</w>\": 20775,\n  \"yoon\": 30863,\n  \"yoon</w>\": 22113,\n  \"yoona</w>\": 32736,\n  \"yoongi</w>\": 24037,\n  \"yor\": 2028,\n  \"yor</w>\": 21132,\n  \"york\": 5318,\n  \"york</w>\": 2705,\n  \"yorker</w>\": 23865,\n  \"yorkers</w>\": 41041,\n  \"yorks</w>\": 39093,\n  \"yorkshi\": 43367,\n  \"yorkshire\": 27007,\n  \"yorkshire</w>\": 8633,\n  \"yoruba</w>\": 46083,\n  \"yos</w>\": 35607,\n  \"yosemite</w>\": 25893,\n  \"yoshi\": 22920,\n  \"yoshi</w>\": 25354,\n  \"yot\": 22875,\n  \"yotes</w>\": 46157,\n  \"yotpo</w>\": 26113,\n  \"you\": 1562,\n  \"you</w>\": 592,\n  \"youare\": 33879,\n  \"youcan\": 32498,\n  \"youknow\": 47919,\n  \"youknow</w>\": 41088,\n  \"youn\": 1596,\n  \"young\": 6939,\n  \"young</w>\": 1888,\n  \"younger</w>\": 10414,\n  \"youngest</w>\": 12316,\n  \"youngjae</w>\": 46426,\n  \"youngster</w>\": 35881,\n  \"youngsters</w>\": 28098,\n  \"younow</w>\": 33831,\n  \"your\": 2130,\n  \"your</w>\": 695,\n  \"youre\": 28344,\n  \"youre</w>\": 19695,\n  \"yourown\": 28583,\n  \"yours</w>\": 3834,\n  \"yourself</w>\": 3053,\n  \"yourselves</w>\": 19747,\n  \"youth\": 10743,\n  \"youth</w>\": 3281,\n  \"youthful</w>\": 37480,\n  \"youths</w>\": 23614,\n  \"youts</w>\": 22737,\n  \"youtu\": 13868,\n  \"youtube\": 31258,\n  \"youtube</w>\": 3895,\n  \"youtuber</w>\": 24720,\n  \"youtubers</w>\": 36822,\n  \"youu</w>\": 35055,\n  \"youuu</w>\": 35324,\n  \"youuuu</w>\": 47123,\n  \"yoy</w>\": 41865,\n  \"yp\": 38370,\n  \"yp</w>\": 34734,\n  \"ypg</w>\": 37386,\n  \"yql</w>\": 46122,\n  \"yqr</w>\": 36881,\n  \"yr\": 18395,\n  \"yr</w>\": 4333,\n  \"yrs</w>\": 4822,\n  \"ys\": 1971,\n  \"ys</w>\": 961,\n  \"yser</w>\": 33121,\n  \"ysis</w>\": 4843,\n  \"ysl</w>\": 45681,\n  \"ysm</w>\": 23842,\n  \"yst\": 40528,\n  \"yt\": 36777,\n  \"yt</w>\": 14779,\n  \"ytd</w>\": 47524,\n  \"yte</w>\": 48172,\n  \"yu\": 3371,\n  \"yu</w>\": 8887,\n  \"yuan</w>\": 26236,\n  \"yuck</w>\": 48282,\n  \"yugo\": 48231,\n  \"yuh</w>\": 42547,\n  \"yui</w>\": 47932,\n  \"yuk\": 17037,\n  \"yuk</w>\": 24063,\n  \"yuki</w>\": 34010,\n  \"yukon</w>\": 27094,\n  \"yul\": 39832,\n  \"yum\": 6869,\n  \"yum</w>\": 7259,\n  \"yuma</w>\": 47566,\n  \"yummy</w>\": 7687,\n  \"yun\": 14976,\n  \"yun</w>\": 18288,\n  \"yung\": 44545,\n  \"yung</w>\": 17676,\n  \"yunho</w>\": 39748,\n  \"yup</w>\": 13231,\n  \"yur\": 42533,\n  \"yuri</w>\": 23823,\n  \"yusuf</w>\": 33222,\n  \"yuv\": 36784,\n  \"yves</w>\": 33698,\n  \"yvon\": 23327,\n  \"yvonne</w>\": 32583,\n  \"yvr</w>\": 29058,\n  \"yw\": 33741,\n  \"yx</w>\": 35624,\n  \"yxe</w>\": 34240,\n  \"yy\": 3433,\n  \"yy</w>\": 8321,\n  \"yya</w>\": 37444,\n  \"yyc\": 27542,\n  \"yyc</w>\": 11741,\n  \"yyj</w>\": 26203,\n  \"yyy</w>\": 11514,\n  \"yyyy\": 38749,\n  \"yyyy</w>\": 16955,\n  \"yyyyy</w>\": 26089,\n  \"yyyyyy</w>\": 47055,\n  \"yz\": 37579,\n  \"yz</w>\": 46451,\n  \"yÃ¼\": 48232,\n  \"z\": 89,\n  \"z</w>\": 345,\n  \"za\": 3710,\n  \"za</w>\": 2186,\n  \"zab\": 22982,\n  \"zable</w>\": 37002,\n  \"zac\": 25501,\n  \"zac</w>\": 19159,\n  \"zach\": 13401,\n  \"zach</w>\": 11815,\n  \"zachary</w>\": 32401,\n  \"zack\": 30567,\n  \"zack</w>\": 19120,\n  \"zad\": 47314,\n  \"zad</w>\": 27838,\n  \"zada</w>\": 34889,\n  \"zaf\": 21837,\n  \"zafar</w>\": 46668,\n  \"zag\": 26091,\n  \"zag</w>\": 29346,\n  \"zagre\": 34107,\n  \"zagreb</w>\": 35355,\n  \"zah\": 23258,\n  \"zah</w>\": 43297,\n  \"zaha</w>\": 44408,\n  \"zai\": 44329,\n  \"zai</w>\": 27065,\n  \"zain\": 34400,\n  \"zain</w>\": 45366,\n  \"zak\": 13050,\n  \"zak</w>\": 20738,\n  \"zaki</w>\": 48091,\n  \"zal\": 20552,\n  \"zal</w>\": 33298,\n  \"zam\": 7218,\n  \"zam</w>\": 41578,\n  \"zambia</w>\": 21671,\n  \"zan\": 7284,\n  \"zan</w>\": 17835,\n  \"zana</w>\": 39643,\n  \"zand\": 37712,\n  \"zane</w>\": 34786,\n  \"zani</w>\": 45373,\n  \"zania</w>\": 15059,\n  \"zano</w>\": 27637,\n  \"zanzi\": 47835,\n  \"zap\": 24134,\n  \"zapp\": 33504,\n  \"zappa</w>\": 46592,\n  \"zar\": 5458,\n  \"zar</w>\": 16392,\n  \"zara</w>\": 24454,\n  \"zardari</w>\": 20174,\n  \"zas</w>\": 48261,\n  \"zation</w>\": 3683,\n  \"zawa</w>\": 49281,\n  \"zay\": 7102,\n  \"zayed</w>\": 36726,\n  \"zayn\": 22292,\n  \"zayn</w>\": 10308,\n  \"zaynmalik</w>\": 25278,\n  \"zazzle</w>\": 47857,\n  \"ze\": 2254,\n  \"ze</w>\": 1298,\n  \"zeal\": 44951,\n  \"zealand</w>\": 7618,\n  \"zeb</w>\": 46518,\n  \"zebra\": 47394,\n  \"zebra</w>\": 22548,\n  \"zed\": 21047,\n  \"zed</w>\": 1993,\n  \"zedd</w>\": 45608,\n  \"zee\": 25468,\n  \"zee</w>\": 14080,\n  \"zeiss</w>\": 47460,\n  \"zeit\": 37898,\n  \"zeit</w>\": 37906,\n  \"zek</w>\": 40829,\n  \"zeke</w>\": 47065,\n  \"zel\": 10389,\n  \"zel</w>\": 12027,\n  \"zelda</w>\": 17138,\n  \"zell</w>\": 39526,\n  \"zen\": 8518,\n  \"zen</w>\": 3928,\n  \"zend\": 33478,\n  \"zendaya</w>\": 35956,\n  \"zenith</w>\": 44740,\n  \"zens</w>\": 15298,\n  \"zeph\": 40726,\n  \"zepp\": 22977,\n  \"zeppelin</w>\": 25408,\n  \"zer\": 6118,\n  \"zer</w>\": 3716,\n  \"zero\": 14867,\n  \"zero</w>\": 5848,\n  \"zers</w>\": 9547,\n  \"zes</w>\": 4073,\n  \"zest</w>\": 37709,\n  \"zet\": 34098,\n  \"zeta</w>\": 30954,\n  \"zetta</w>\": 45993,\n  \"zeus</w>\": 32800,\n  \"zey\": 46647,\n  \"zh\": 33389,\n  \"zh</w>\": 41621,\n  \"zhang</w>\": 21127,\n  \"zhen\": 37374,\n  \"zhen</w>\": 33236,\n  \"zhou</w>\": 17384,\n  \"zhu\": 42049,\n  \"zi\": 2651,\n  \"zi</w>\": 5819,\n  \"zia</w>\": 13764,\n  \"zid\": 30235,\n  \"zidane</w>\": 34643,\n  \"zie\": 29316,\n  \"zie</w>\": 8956,\n  \"zieg\": 40157,\n  \"ziegler</w>\": 46812,\n  \"ziel</w>\": 32151,\n  \"zier</w>\": 15399,\n  \"zies</w>\": 38001,\n  \"ziest</w>\": 28159,\n  \"zig\": 15950,\n  \"zig</w>\": 21345,\n  \"ziggy</w>\": 39274,\n  \"zik</w>\": 30125,\n  \"zika</w>\": 28783,\n  \"zil\": 25039,\n  \"zil</w>\": 33190,\n  \"zilla</w>\": 17879,\n  \"zim\": 8112,\n  \"zim</w>\": 22577,\n  \"zimbab\": 12373,\n  \"zimbabwe\": 45668,\n  \"zimbabwe</w>\": 13583,\n  \"zimmer\": 27452,\n  \"zimmer</w>\": 35211,\n  \"zimmerman</w>\": 38231,\n  \"zin\": 14085,\n  \"zin</w>\": 21278,\n  \"zinc</w>\": 27458,\n  \"zind\": 26206,\n  \"zindabad</w>\": 42208,\n  \"zine</w>\": 16100,\n  \"zing\": 25062,\n  \"zing</w>\": 3152,\n  \"zinger</w>\": 42027,\n  \"zio</w>\": 13906,\n  \"zion\": 31763,\n  \"zion</w>\": 20963,\n  \"zione</w>\": 36161,\n  \"zionist</w>\": 33078,\n  \"zip\": 26479,\n  \"zip</w>\": 16083,\n  \"zipper</w>\": 33670,\n  \"zir\": 31892,\n  \"zl</w>\": 39168,\n  \"zlat\": 32489,\n  \"zlatan</w>\": 37877,\n  \"zm</w>\": 43691,\n  \"zman</w>\": 24248,\n  \"zn</w>\": 18004,\n  \"zo\": 4397,\n  \"zo</w>\": 5056,\n  \"zodi\": 22660,\n  \"zodiac</w>\": 27753,\n  \"zoe\": 43114,\n  \"zoe</w>\": 16662,\n  \"zoey</w>\": 39871,\n  \"zog</w>\": 40680,\n  \"zol\": 25939,\n  \"zola</w>\": 46105,\n  \"zom\": 6623,\n  \"zombi\": 29452,\n  \"zombie</w>\": 11819,\n  \"zombies\": 46702,\n  \"zombies</w>\": 16517,\n  \"zon\": 15109,\n  \"zon</w>\": 14618,\n  \"zona</w>\": 42134,\n  \"zone\": 37197,\n  \"zone</w>\": 4442,\n  \"zones</w>\": 17247,\n  \"zoning</w>\": 36790,\n  \"zoo\": 8182,\n  \"zoo</w>\": 7147,\n  \"zoom\": 32671,\n  \"zoom</w>\": 13909,\n  \"zor\": 17605,\n  \"zou\": 38072,\n  \"zr</w>\": 39275,\n  \"zs</w>\": 35248,\n  \"zshq</w>\": 41442,\n  \"zt</w>\": 42629,\n  \"zu\": 4091,\n  \"zu</w>\": 14184,\n  \"zucchini</w>\": 29873,\n  \"zucker\": 26890,\n  \"zuckerberg</w>\": 30066,\n  \"zul\": 31146,\n  \"zulu</w>\": 32821,\n  \"zum</w>\": 35094,\n  \"zuma</w>\": 23326,\n  \"zumba</w>\": 32976,\n  \"zun\": 42440,\n  \"zur\": 17128,\n  \"zurich</w>\": 21288,\n  \"zw</w>\": 42188,\n  \"zx</w>\": 31604,\n  \"zy\": 6615,\n  \"zy</w>\": 2303,\n  \"zyk</w>\": 39112,\n  \"zyme</w>\": 36472,\n  \"zyn\": 45287,\n  \"zz\": 1544,\n  \"zz</w>\": 4943,\n  \"zza</w>\": 14642,\n  \"zzi</w>\": 13974,\n  \"zzie</w>\": 18635,\n  \"zzle</w>\": 7873,\n  \"zzled</w>\": 39075,\n  \"zzo</w>\": 14036,\n  \"zzy\": 21275,\n  \"zzy</w>\": 8353,\n  \"zzz</w>\": 20055,\n  \"zzzz\": 35742,\n  \"zzzz</w>\": 43103,\n  \"{\": 90,\n  \"{</w>\": 346,\n  \"{}</w>\": 39025,\n  \"|\": 91,\n  \"|#</w>\": 31183,\n  \"|</w>\": 347,\n  \"|@</w>\": 41677,\n  \"||</w>\": 7566,\n  \"}\": 92,\n  \"}</w>\": 348,\n  \"~\": 93,\n  \"~!</w>\": 31181,\n  \"~\\\"</w>\": 48442,\n  \"~</w>\": 349,\n  \"~></w>\": 43291,\n  \"~@</w>\": 44247,\n  \"~~\": 11461,\n  \"~~</w>\": 16671,\n  \"~~~</w>\": 32472,\n  \"~~~~\": 28295,\n  \"¡\": 94,\n  \"¡</w>\": 350,\n  \"¡ï¸ı\": 15113,\n  \"¡ï¸ı</w>\": 4174,\n  \"¡ľ\": 43991,\n  \"¢\": 95,\n  \"¢</w>\": 351,\n  \"£\": 96,\n  \"£</w>\": 352,\n  \"£ï¸ı</w>\": 18446,\n  \"¤\": 97,\n  \"¤</w>\": 353,\n  \"¥\": 98,\n  \"¥</w>\": 354,\n  \"¦\": 99,\n  \"¦</w>\": 355,\n  \"¦Ī</w>\": 47615,\n  \"§\": 100,\n  \"§</w>\": 356,\n  \"¨\": 101,\n  \"¨</w>\": 357,\n  \"©\": 102,\n  \"©</w>\": 358,\n  \"ª\": 103,\n  \"ª</w>\": 359,\n  \"«\": 104,\n  \"«</w>\": 360,\n  \"¬\": 105,\n  \"¬</w>\": 361,\n  \"¬ë\": 31736,\n  \"®\": 106,\n  \"®</w>\": 362,\n  \"¯\": 107,\n  \"¯</w>\": 363,\n  \"°\": 108,\n  \"°:</w>\": 21787,\n  \"°</w>\": 364,\n  \"°ï¸ı</w>\": 34777,\n  \"±\": 109,\n  \"±</w>\": 365,\n  \"±ï¸ı</w>\": 41020,\n  \"²\": 110,\n  \"²</w>\": 366,\n  \"³\": 111,\n  \"³</w>\": 367,\n  \"³ï¸ı\": 22195,\n  \"³ï¸ı</w>\": 24706,\n  \"´\": 112,\n  \"´</w>\": 368,\n  \"µ\": 113,\n  \"µ</w>\": 369,\n  \"µï¸ı</w>\": 27605,\n  \"¶\": 114,\n  \"¶</w>\": 370,\n  \"·\": 115,\n  \"·</w>\": 371,\n  \"¸\": 116,\n  \"¸</w>\": 372,\n  \"¸ë\": 19693,\n  \"¹\": 117,\n  \"¹</w>\": 373,\n  \"º\": 118,\n  \"º</w>\": 374,\n  \"»\": 119,\n  \"»</w>\": 375,\n  \"¼\": 120,\n  \"¼</w>\": 376,\n  \"½\": 121,\n  \"½</w>\": 377,\n  \"½ï¸ı</w>\": 31333,\n  \"¾\": 122,\n  \"¾</w>\": 378,\n  \"¿\": 123,\n  \"¿</w>\": 379,\n  \"À\": 124,\n  \"À</w>\": 380,\n  \"Á\": 125,\n  \"Á</w>\": 381,\n  \"Â\": 126,\n  \"Â</w>\": 382,\n  \"Â¡\": 26868,\n  \"Â¡</w>\": 10830,\n  \"Â¡Â¡</w>\": 45505,\n  \"Â¢</w>\": 41359,\n  \"Â£\": 31117,\n  \"Â£</w>\": 1950,\n  \"Â¥</w>\": 20199,\n  \"Â¨\": 19957,\n  \"Â¨Â¨\": 23089,\n  \"Â¨Â¨Â¨Â¨\": 41223,\n  \"Â©\": 31148,\n  \"Â©</w>\": 5811,\n  \"Â«</w>\": 14434,\n  \"Â®\": 30857,\n  \"Â®</w>\": 8436,\n  \"Â¯\": 38682,\n  \"Â¯</w>\": 43593,\n  \"Â¯\\\\\": 44096,\n  \"Â¯\\\\_(</w>\": 45115,\n  \"Â°\": 21305,\n  \"Â°</w>\": 6858,\n  \"Â²</w>\": 41175,\n  \"Â´\": 30560,\n  \"Â´</w>\": 12559,\n  \"Â·</w>\": 14844,\n  \"Âº</w>\": 28059,\n  \"Â»\": 31642,\n  \"Â»</w>\": 7599,\n  \"Â½</w>\": 33613,\n  \"Â¿\": 44559,\n  \"Â¿</w>\": 17133,\n  \"ÂŃ</w>\": 22618,\n  \"Ã\": 127,\n  \"Ã</w>\": 383,\n  \"Ã¡\": 7261,\n  \"Ã¡</w>\": 22229,\n  \"Ã¡n\": 38340,\n  \"Ã¡n</w>\": 21385,\n  \"Ã¢\": 26170,\n  \"Ã£\": 19339,\n  \"Ã£o</w>\": 21141,\n  \"Ã¤\": 10896,\n  \"Ã¤</w>\": 47276,\n  \"Ã¤n\": 42787,\n  \"Ã¥\": 23176,\n  \"Ã¦\": 42495,\n  \"Ã§\": 10067,\n  \"Ã§a</w>\": 22711,\n  \"Ã¨\": 12138,\n  \"Ã¨</w>\": 37761,\n  \"Ã¨re</w>\": 30272,\n  \"Ã¨s</w>\": 41210,\n  \"Ã©\": 3459,\n  \"Ã©</w>\": 4166,\n  \"Ã©al</w>\": 45251,\n  \"Ã©e</w>\": 13489,\n  \"Ã©s</w>\": 20507,\n  \"Ãª\": 27515,\n  \"Ã«\": 29526,\n  \"Ã«</w>\": 40520,\n  \"Ã®\": 48704,\n  \"Ã¯\": 35689,\n  \"Ã±\": 6445,\n  \"Ã±a</w>\": 17753,\n  \"Ã±o</w>\": 16574,\n  \"Ã±os</w>\": 40104,\n  \"Ã³\": 8891,\n  \"Ã³</w>\": 27733,\n  \"Ã³n</w>\": 13926,\n  \"Ã´\": 26815,\n  \"Ã¶\": 7255,\n  \"Ã¶</w>\": 37423,\n  \"Ã¶r\": 31762,\n  \"Ã¸\": 17483,\n  \"Ã¸</w>\": 45598,\n  \"Ãº\": 17963,\n  \"Ãº</w>\": 36019,\n  \"Ã¼\": 6522,\n  \"Ã¼</w>\": 47177,\n  \"Ã¼r\": 26132,\n  \"ÃĹ</w>\": 16165,\n  \"Ãł\": 36149,\n  \"Ãł</w>\": 21259,\n  \"ÃŃ\": 8366,\n  \"ÃŃ</w>\": 23928,\n  \"ÃŃa</w>\": 16609,\n  \"ÃŃn</w>\": 33623,\n  \"Ä\": 128,\n  \"Ä</w>\": 384,\n  \"Ä±\": 18562,\n  \"Ä±</w>\": 41901,\n  \"Äģ\": 23134,\n  \"Äĩ</w>\": 31719,\n  \"Äį\": 45414,\n  \"ÄŁ\": 26540,\n  \"Å\": 129,\n  \"Å</w>\": 385,\n  \"Å¡\": 35621,\n  \"ÅĤ\": 40419,\n  \"Åį\": 41267,\n  \"ÅŁ\": 21254,\n  \"ÅŁ</w>\": 40706,\n  \"Æ\": 130,\n  \"Æ</w>\": 386,\n  \"Ç\": 131,\n  \"Ç</w>\": 387,\n  \"È\": 132,\n  \"È</w>\": 388,\n  \"É\": 133,\n  \"É</w>\": 389,\n  \"Ê\": 134,\n  \"Ê</w>\": 390,\n  \"Ë\": 135,\n  \"Ë</w>\": 391,\n  \"Ì\": 136,\n  \"Ì</w>\": 392,\n  \"Ìĩ</w>\": 16384,\n  \"Í\": 137,\n  \"Í</w>\": 393,\n  \"Î\": 138,\n  \"Î</w>\": 394,\n  \"Ï\": 139,\n  \"Ï</w>\": 395,\n  \"Ïī</w>\": 38065,\n  \"Ð\": 140,\n  \"Ð</w>\": 396,\n  \"Ð°\": 16912,\n  \"Ð°</w>\": 27080,\n  \"Ð°Ð\": 31090,\n  \"Ð²\": 39813,\n  \"Ðµ\": 22176,\n  \"Ð¸\": 16701,\n  \"Ð¸Ð\": 29503,\n  \"Ðº\": 27152,\n  \"Ð»\": 47611,\n  \"Ð¼\": 38018,\n  \"Ð½\": 22705,\n  \"Ð¾\": 13506,\n  \"Ð¾</w>\": 29386,\n  \"Ð¾Ð\": 20978,\n  \"Ð¾Ð´\": 38416,\n  \"Ð¾ÑĤ\": 28599,\n  \"Ð¿\": 26302,\n  \"Ð¿ÑĢÐ¸\": 46321,\n  \"Ð¿ÑĢÐ¸ÑĢÐ¾Ð´Ð°</w>\": 48150,\n  \"Ñ\": 141,\n  \"Ñ</w>\": 397,\n  \"ÑĢ\": 16370,\n  \"ÑĢÐ¸\": 41092,\n  \"ÑĢÐ¾Ð´\": 47039,\n  \"ÑĢÐ¾Ð´Ð°</w>\": 47929,\n  \"Ñģ\": 23669,\n  \"ÑĤ\": 17875,\n  \"Ñĥ\": 39729,\n  \"ÑĦ\": 27993,\n  \"ÑĦÐ¾ÑĤ\": 35155,\n  \"ÑĦÐ¾ÑĤÐ¾</w>\": 38981,\n  \"Ñĭ\": 45001,\n  \"Ò\": 142,\n  \"Ò</w>\": 398,\n  \"Ó\": 143,\n  \"Ó</w>\": 399,\n  \"Ô\": 144,\n  \"Ô</w>\": 400,\n  \"Õ\": 145,\n  \"Õ</w>\": 401,\n  \"Ö\": 146,\n  \"Ö</w>\": 402,\n  \"×\": 147,\n  \"×</w>\": 403,\n  \"Ø\": 148,\n  \"Ø</w>\": 404,\n  \"Ø§\": 6042,\n  \"Ø§</w>\": 22625,\n  \"Ø§Ø\": 13189,\n  \"Ø§Ø±\": 40137,\n  \"Ø§Ù\": 8453,\n  \"Ø§ÙĦ\": 12973,\n  \"Ø§Ùħ\": 47626,\n  \"Ø§ÙĨ\": 42773,\n  \"Ø§ÙĨ</w>\": 33200,\n  \"Ø¨\": 16378,\n  \"Ø¨</w>\": 35330,\n  \"Ø©</w>\": 20915,\n  \"Øª\": 18197,\n  \"Øª</w>\": 44333,\n  \"Ø¬\": 26375,\n  \"Ø®\": 41495,\n  \"Ø¯\": 19872,\n  \"Ø¯</w>\": 35566,\n  \"Ø±\": 10948,\n  \"Ø±</w>\": 24933,\n  \"Ø±ÙĬ\": 43273,\n  \"Ø²\": 36169,\n  \"Ø³\": 17856,\n  \"Ø´\": 28770,\n  \"Øµ\": 27271,\n  \"Ø·\": 32050,\n  \"Ø¹\": 18843,\n  \"Øº\": 48510,\n  \"ØŃ\": 25722,\n  \"Ù\": 149,\n  \"Ù</w>\": 405,\n  \"Ùģ\": 24112,\n  \"ÙĤ\": 27585,\n  \"Ùĥ\": 33499,\n  \"ÙĦ\": 14251,\n  \"ÙĦ</w>\": 37899,\n  \"Ùħ\": 12986,\n  \"Ùħ</w>\": 29945,\n  \"ÙĨ\": 16655,\n  \"ÙĨ</w>\": 25386,\n  \"Ùĩ\": 34274,\n  \"Ùĩ</w>\": 31343,\n  \"ÙĪ\": 12203,\n  \"ÙĪ</w>\": 38310,\n  \"ÙĪØ±\": 48242,\n  \"ÙĬ\": 12046,\n  \"ÙĬ</w>\": 23853,\n  \"Ú\": 150,\n  \"Ú</w>\": 406,\n  \"Ú©\": 26475,\n  \"Û\": 151,\n  \"Û</w>\": 407,\n  \"Ûģ\": 40480,\n  \"ÛĮ\": 21452,\n  \"ÛĮ</w>\": 32703,\n  \"Ü\": 152,\n  \"Ü</w>\": 408,\n  \"Ý\": 153,\n  \"Ý</w>\": 409,\n  \"Þ\": 154,\n  \"Þ</w>\": 410,\n  \"ß\": 155,\n  \"ß</w>\": 411,\n  \"à\": 156,\n  \"à</w>\": 412,\n  \"à¤\": 3124,\n  \"à¤¤</w>\": 27263,\n  \"à¤¦</w>\": 29552,\n  \"à¤¨</w>\": 26090,\n  \"à¤ª</w>\": 44149,\n  \"à¤¬</w>\": 43599,\n  \"à¤®\": 48254,\n  \"à¤®</w>\": 26774,\n  \"à¤¯</w>\": 37299,\n  \"à¤°\": 39136,\n  \"à¤°</w>\": 19052,\n  \"à¤²</w>\": 30881,\n  \"à¤µ</w>\": 39545,\n  \"à¤¶</w>\": 43181,\n  \"à¤¸</w>\": 28505,\n  \"à¤¹</w>\": 29446,\n  \"à¤¾\": 37973,\n  \"à¤¾</w>\": 13343,\n  \"à¤¿</w>\": 26721,\n  \"à¤Ĥ</w>\": 30833,\n  \"à¤ķ</w>\": 22067,\n  \"à¤Ĺ</w>\": 42598,\n  \"à¤ľ</w>\": 39561,\n  \"à¥\": 7410,\n  \"à¥Ģ\": 45791,\n  \"à¥Ģ</w>\": 25751,\n  \"à¥ģ</w>\": 39653,\n  \"à¥ĩ\": 48612,\n  \"à¥ĩ</w>\": 25130,\n  \"à¥ĭ</w>\": 34452,\n  \"à¥į</w>\": 19389,\n  \"à¦\": 11322,\n  \"à¦¾</w>\": 41532,\n  \"à§\": 26339,\n  \"à¨\": 15741,\n  \"à©\": 32086,\n  \"àª\": 22990,\n  \"à«\": 48347,\n  \"à¬\": 32791,\n  \"à®\": 6022,\n  \"à®¤</w>\": 34691,\n  \"à®©</w>\": 43394,\n  \"à®ª</w>\": 47388,\n  \"à®®</w>\": 35463,\n  \"à®°</w>\": 43270,\n  \"à®²</w>\": 47705,\n  \"à®¾</w>\": 32831,\n  \"à®¿</w>\": 27126,\n  \"à®ķ</w>\": 36168,\n  \"à®Ł</w>\": 45263,\n  \"à¯\": 11259,\n  \"à¯ģ</w>\": 33115,\n  \"à¯į</w>\": 16631,\n  \"à°\": 12100,\n  \"à±\": 23550,\n  \"à±į</w>\": 46098,\n  \"à²\": 9992,\n  \"à²¿</w>\": 47797,\n  \"à³\": 20745,\n  \"à³į</w>\": 36148,\n  \"à´\": 15418,\n  \"àµ\": 27392,\n  \"àµį</w>\": 45266,\n  \"à¶\": 29881,\n  \"à·\": 30766,\n  \"à¸\": 1777,\n  \"à¸¡\": 26137,\n  \"à¸¡</w>\": 29570,\n  \"à¸¢\": 27241,\n  \"à¸¢</w>\": 33091,\n  \"à¸£\": 32225,\n  \"à¸£</w>\": 27331,\n  \"à¸¥\": 34696,\n  \"à¸¥</w>\": 32746,\n  \"à¸§\": 26990,\n  \"à¸§</w>\": 30245,\n  \"à¸ª\": 37883,\n  \"à¸ª</w>\": 35737,\n  \"à¸«\": 33064,\n  \"à¸°\": 43920,\n  \"à¸°</w>\": 49234,\n  \"à¸±</w>\": 14978,\n  \"à¸²\": 11529,\n  \"à¸²</w>\": 38476,\n  \"à¸²à¸\": 12330,\n  \"à¸´</w>\": 17092,\n  \"à¸µ\": 22421,\n  \"à¸µ</w>\": 20278,\n  \"à¸µà¹Ī</w>\": 31511,\n  \"à¸·</w>\": 47991,\n  \"à¸¸</w>\": 30524,\n  \"à¸¹</w>\": 35273,\n  \"à¸ģ</w>\": 30767,\n  \"à¸ģà¸\": 31474,\n  \"à¸Ħ</w>\": 31757,\n  \"à¸Ħà¸\": 39628,\n  \"à¸ĩ\": 24603,\n  \"à¸ĩ</w>\": 33382,\n  \"à¸Ī\": 47608,\n  \"à¸Ĭ</w>\": 46324,\n  \"à¸Ķ\": 31107,\n  \"à¸Ķ</w>\": 38825,\n  \"à¸ķ\": 40273,\n  \"à¸ķ</w>\": 41108,\n  \"à¸Ĺ</w>\": 36171,\n  \"à¸Ļ\": 17474,\n  \"à¸Ļ</w>\": 17639,\n  \"à¸Ļà¸\": 23121,\n  \"à¸ļ\": 33859,\n  \"à¸ļ</w>\": 39616,\n  \"à¸ŀ</w>\": 48171,\n  \"à¸Ń\": 13398,\n  \"à¸Ń</w>\": 32818,\n  \"à¸Ńà¸\": 14649,\n  \"à¸Ńà¸ĩ\": 46622,\n  \"à¹\": 4484,\n  \"à¹Ģ\": 13729,\n  \"à¹Ģà¸\": 14076,\n  \"à¹ģà¸\": 23916,\n  \"à¹Ĥ\": 33118,\n  \"à¹ĥ\": 40962,\n  \"à¹Ħà¸\": 31718,\n  \"à¹ĩ</w>\": 38699,\n  \"à¹Ī</w>\": 11722,\n  \"à¹ī</w>\": 13123,\n  \"à¹Į</w>\": 28353,\n  \"à¼\": 46186,\n  \"à½\": 39219,\n  \"á\": 157,\n  \"á</w>\": 413,\n  \"á´\": 19036,\n  \"áµ\": 17330,\n  \"áĢ\": 45932,\n  \"áĥ\": 24829,\n  \"áĥ¦</w>\": 32193,\n  \"â\": 158,\n  \"â</w>\": 414,\n  \"â¤\": 25087,\n  \"â¤µï¸ı</w>\": 36026,\n  \"â¬\": 7930,\n  \"â¬ħï¸ı</w>\": 42111,\n  \"â¬Ĩ\": 27718,\n  \"â¬Ĩï¸ı</w>\": 32798,\n  \"â¬ĩ\": 10917,\n  \"â¬ĩ</w>\": 39370,\n  \"â¬ĩï¸ı\": 25621,\n  \"â¬ĩï¸ı</w>\": 13984,\n  \"â¬ĩï¸ıâ¬ĩï¸ı\": 40159,\n  \"âĢ\": 728,\n  \"âĢ¢\": 9485,\n  \"âĢ¢</w>\": 2701,\n  \"âĢ¢âĢ¢\": 15006,\n  \"âĢ¢âĢ¢</w>\": 47575,\n  \"âĢ¢âĢ¢âĢ¢âĢ¢\": 27502,\n  \"âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢\": 48630,\n  \"âĢ¦\": 7095,\n  \"âĢ¦\\\"</w>\": 20215,\n  \"âĢ¦..</w>\": 47779,\n  \"âĢ¦.</w>\": 18615,\n  \"âĢ¦/</w>\": 29842,\n  \"âĢ¦</w>\": 959,\n  \"âĢ¦âĢ¦</w>\": 40066,\n  \"âĢ²</w>\": 32633,\n  \"âĢ³</w>\": 25061,\n  \"âĢ¼\": 6578,\n  \"âĢ¼ï¸ı\": 15622,\n  \"âĢ¼ï¸ı</w>\": 8310,\n  \"âĢ¼ï¸ıâĢ¼ï¸ı</w>\": 33218,\n  \"âĢĭ\": 17086,\n  \"âĢĭ</w>\": 9844,\n  \"âĢį\": 4244,\n  \"âĢįâĻ\": 5177,\n  \"âĢįâĻĢï¸ı\": 18897,\n  \"âĢįâĻĢï¸ı</w>\": 9605,\n  \"âĢįâĻĤ\": 8832,\n  \"âĢįâĻĤï¸ı\": 21779,\n  \"âĢįâĻĤï¸ı</w>\": 10613,\n  \"âĢİ</w>\": 31001,\n  \"âĢĲ</w>\": 34512,\n  \"âĢĵ\": 21070,\n  \"âĢĵ</w>\": 1224,\n  \"âĢĶ\": 6718,\n  \"âĢĶ</w>\": 2005,\n  \"âĢĶ></w>\": 26341,\n  \"âĢĶ@</w>\": 28470,\n  \"âĢĶâĢĶ\": 10037,\n  \"âĢĶâĢĶ</w>\": 44800,\n  \"âĢĶâĢĶâĢĶâĢĶ\": 17797,\n  \"âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ\": 34432,\n  \"âĢķ</w>\": 14236,\n  \"âģ\": 1667,\n  \"âģ£\": 31089,\n  \"âģ£</w>\": 16845,\n  \"âģ¦\": 2773,\n  \"âģ¦</w>\": 34855,\n  \"âģ¦@</w>\": 2859,\n  \"âģ¦âģ¦@</w>\": 27783,\n  \"âģ©\": 20097,\n  \"âģ©,</w>\": 48749,\n  \"âģ©.</w>\": 35777,\n  \"âģ©</w>\": 2918,\n  \"âģīï¸ı</w>\": 46534,\n  \"âģł\": 23881,\n  \"âģł</w>\": 13503,\n  \"âģłâģł</w>\": 33488,\n  \"âĤ\": 5227,\n  \"âĤ¬\": 34919,\n  \"âĤ¬</w>\": 6309,\n  \"âĤ¹</w>\": 21777,\n  \"âĥ\": 2805,\n  \"âĥ£\": 11250,\n  \"âĥ£</w>\": 3076,\n  \"âĥ£@</w>\": 48291,\n  \"âĦ\": 8604,\n  \"âĦ¢\": 29438,\n  \"âĦ¢</w>\": 11675,\n  \"âĦ¹</w>\": 45462,\n  \"âĨ\": 6059,\n  \"âĨĴ</w>\": 7481,\n  \"âĨĵ</w>\": 41603,\n  \"âĩ\": 27228,\n  \"âĪ\": 17788,\n  \"âī\": 22684,\n  \"âīĪ</w>\": 45451,\n  \"âĮ\": 17848,\n  \"âĮļ\": 31301,\n  \"âĮļï¸ı</w>\": 35931,\n  \"âı\": 7960,\n  \"âı©</w>\": 40847,\n  \"âı°</w>\": 12714,\n  \"âı±</w>\": 33149,\n  \"âı³</w>\": 47617,\n  \"âĵ\": 27400,\n  \"âĶ\": 13389,\n  \"âĶĢ\": 45139,\n  \"âĶģ\": 42022,\n  \"âķ\": 17027,\n  \"âķĲ\": 48039,\n  \"âĸ\": 4168,\n  \"âĸª\": 21203,\n  \"âĸª</w>\": 36628,\n  \"âĸªï¸ı</w>\": 24974,\n  \"âĸ«\": 39478,\n  \"âĸ¬\": 33798,\n  \"âĸ¬âĸ¬\": 36975,\n  \"âĸ¶\": 12509,\n  \"âĸ¶</w>\": 21126,\n  \"âĸ¶ï¸ı</w>\": 14442,\n  \"âĸº\": 46061,\n  \"âĸº</w>\": 12086,\n  \"âĸ½\": 45634,\n  \"âĸł</w>\": 36791,\n  \"âĹ\": 9323,\n  \"âĹĨ</w>\": 48961,\n  \"âĹı</w>\": 26999,\n  \"âĺ\": 1741,\n  \"âĺ®</w>\": 45851,\n  \"âĺ¹\": 28811,\n  \"âĺ¹ï¸ı</w>\": 39605,\n  \"âĺº\": 5010,\n  \"âĺº</w>\": 8703,\n  \"âĺºâĺº</w>\": 46051,\n  \"âĺºï¸ı\": 11506,\n  \"âĺºï¸ı</w>\": 7779,\n  \"âĺºï¸ıâĺºï¸ı</w>\": 41315,\n  \"âĺ¼</w>\": 38877,\n  \"âĺĢ\": 32146,\n  \"âĺĢ</w>\": 22242,\n  \"âĺĢï¸ı\": 12817,\n  \"âĺĢï¸ı</w>\": 8219,\n  \"âĺĢï¸ıâĺĢï¸ı\": 44550,\n  \"âĺģ\": 25195,\n  \"âĺģï¸ı</w>\": 35197,\n  \"âĺĥ\": 38972,\n  \"âĺħ\": 9339,\n  \"âĺħ</w>\": 10643,\n  \"âĺħâĺħ\": 12681,\n  \"âĺħâĺħ</w>\": 36644,\n  \"âĺħâĺħâĺħâĺħ\": 34431,\n  \"âĺħâĺħâĺħâĺħ</w>\": 44034,\n  \"âĺħâĺħâĺħâĺħâĺħ</w>\": 45984,\n  \"âĺĨ\": 23941,\n  \"âĺĨ</w>\": 13439,\n  \"âĺİ\": 24045,\n  \"âĺİ</w>\": 45493,\n  \"âĺİï¸ı</w>\": 27219,\n  \"âĺĳ\": 20983,\n  \"âĺĳ</w>\": 42300,\n  \"âĺĳï¸ı</w>\": 22291,\n  \"âĺĶï¸ı</w>\": 31238,\n  \"âĺķ\": 11454,\n  \"âĺķ</w>\": 26561,\n  \"âĺķï¸ı\": 25839,\n  \"âĺķï¸ı</w>\": 15499,\n  \"âĺĺ\": 23483,\n  \"âĺĺï¸ı</w>\": 31454,\n  \"âĺĿ\": 21982,\n  \"âĺĿï¸ı</w>\": 38891,\n  \"âĺŀ</w>\": 31255,\n  \"âĺłï¸ı</w>\": 34672,\n  \"âĻ\": 1548,\n  \"âĻ¡\": 11091,\n  \"âĻ¡</w>\": 6251,\n  \"âĻ¡âĻ¡\": 22360,\n  \"âĻ¡âĻ¡</w>\": 34267,\n  \"âĻ¡âĻ¡âĻ¡</w>\": 36611,\n  \"âĻ¤</w>\": 47435,\n  \"âĻ¥\": 4622,\n  \"âĻ¥</w>\": 3405,\n  \"âĻ¥âĻ¥\": 12975,\n  \"âĻ¥âĻ¥</w>\": 19604,\n  \"âĻ¥âĻ¥âĻ¥</w>\": 23255,\n  \"âĻ¥âĻ¥âĻ¥âĻ¥\": 49020,\n  \"âĻ¥ï¸ı\": 17774,\n  \"âĻ¥ï¸ı</w>\": 10561,\n  \"âĻ¥ï¸ıâĻ¥ï¸ı\": 40309,\n  \"âĻ¦\": 32376,\n  \"âĻ¦</w>\": 47547,\n  \"âĻ©\": 30339,\n  \"âĻ©âĻ«</w>\": 31636,\n  \"âĻª\": 27364,\n  \"âĻª</w>\": 12382,\n  \"âĻ«\": 39217,\n  \"âĻ«</w>\": 10814,\n  \"âĻ¬</w>\": 24753,\n  \"âĻ»\": 39611,\n  \"âĻ»ï¸ı</w>\": 46075,\n  \"âļ\": 2234,\n  \"âļ¡\": 40098,\n  \"âļ¡</w>\": 20712,\n  \"âļ¡ï¸ı\": 19500,\n  \"âļ¡ï¸ı</w>\": 11605,\n  \"âļ¡ï¸ıâļ¡ï¸ı</w>\": 45922,\n  \"âļª\": 11922,\n  \"âļª</w>\": 36373,\n  \"âļªï¸ı\": 22251,\n  \"âļªï¸ı</w>\": 17885,\n  \"âļ«\": 15374,\n  \"âļ«ï¸ı\": 26529,\n  \"âļ«ï¸ı</w>\": 24649,\n  \"âļ½\": 4867,\n  \"âļ½</w>\": 13173,\n  \"âļ½âļ½\": 43259,\n  \"âļ½ï¸ı\": 11342,\n  \"âļ½ï¸ı</w>\": 6768,\n  \"âļ½ï¸ıâļ½ï¸ı\": 30358,\n  \"âļ½ï¸ıâļ½ï¸ı</w>\": 44148,\n  \"âļ¾\": 11314,\n  \"âļ¾</w>\": 34717,\n  \"âļ¾ï¸ı\": 24727,\n  \"âļ¾ï¸ı</w>\": 14858,\n  \"âļĵ\": 23522,\n  \"âļĵï¸ı</w>\": 35299,\n  \"âļĶï¸ı</w>\": 29361,\n  \"âļľ\": 47491,\n  \"âļł</w>\": 39203,\n  \"âļłï¸ı\": 40966,\n  \"âļłï¸ı</w>\": 15596,\n  \"âĽ\": 7956,\n  \"âĽ³ï¸ı</w>\": 29204,\n  \"âĽĦ\": 30668,\n  \"âĽĦï¸ı</w>\": 45465,\n  \"âľ\": 1508,\n  \"âľ¨\": 7181,\n  \"âľ¨</w>\": 3531,\n  \"âľ¨âľ¨\": 35174,\n  \"âľ¨âľ¨</w>\": 21985,\n  \"âľ¨âľ¨âľ¨</w>\": 39424,\n  \"âľĤ\": 38602,\n  \"âľħ\": 29544,\n  \"âľħ</w>\": 5564,\n  \"âľĪ\": 10682,\n  \"âľĪ</w>\": 30712,\n  \"âľĪï¸ı\": 26176,\n  \"âľĪï¸ı</w>\": 13413,\n  \"âľĬ\": 12392,\n  \"âľĬ</w>\": 17819,\n  \"âľĬðŁı½</w>\": 48547,\n  \"âľĬðŁı¾</w>\": 41185,\n  \"âľĭ\": 39383,\n  \"âľĭ</w>\": 30239,\n  \"âľĮ\": 6419,\n  \"âľĮ</w>\": 12656,\n  \"âľĮï¸ı\": 21906,\n  \"âľĮï¸ı</w>\": 12239,\n  \"âľĮðŁı»</w>\": 30538,\n  \"âľĮðŁı¼</w>\": 30588,\n  \"âľį\": 20872,\n  \"âľįï¸ı</w>\": 30888,\n  \"âľı\": 32574,\n  \"âľıï¸ı</w>\": 40724,\n  \"âľĵ</w>\": 36700,\n  \"âľĶ\": 47200,\n  \"âľĶ</w>\": 13749,\n  \"âľĶï¸ı\": 40544,\n  \"âľĶï¸ı</w>\": 9191,\n  \"âľĸï¸ı</w>\": 44133,\n  \"âľĿ\": 42220,\n  \"âĿ\": 1045,\n  \"âĿ£\": 37007,\n  \"âĿ£</w>\": 25623,\n  \"âĿ£ï¸ı</w>\": 25240,\n  \"âĿ¤\": 1266,\n  \"âĿ¤</w>\": 2720,\n  \"âĿ¤âĿ¤\": 9033,\n  \"âĿ¤âĿ¤</w>\": 14058,\n  \"âĿ¤âĿ¤âĿ¤</w>\": 16708,\n  \"âĿ¤âĿ¤âĿ¤âĿ¤\": 37918,\n  \"âĿ¤âĿ¤âĿ¤âĿ¤</w>\": 43970,\n  \"âĿ¤ï¸ı\": 2626,\n  \"âĿ¤ï¸ı#</w>\": 30281,\n  \"âĿ¤ï¸ı.</w>\": 45326,\n  \"âĿ¤ï¸ı</w>\": 1752,\n  \"âĿ¤ï¸ı@</w>\": 31187,\n  \"âĿ¤ï¸ıâĿ¤ï¸ı\": 6713,\n  \"âĿ¤ï¸ıâĿ¤ï¸ı</w>\": 10363,\n  \"âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı</w>\": 12282,\n  \"âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı\": 39167,\n  \"âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı</w>\": 29880,\n  \"âĿ¤ï¸ıðŁĴĻ</w>\": 37380,\n  \"âĿ¤ï¸ıðŁĺį</w>\": 37272,\n  \"âĿ¤ï¸ıðŁĺĺ</w>\": 41800,\n  \"âĿ¤ðŁĺį</w>\": 49120,\n  \"âĿ¥</w>\": 36914,\n  \"âĿĦ\": 8501,\n  \"âĿĦ</w>\": 30494,\n  \"âĿĦï¸ı\": 16834,\n  \"âĿĦï¸ı</w>\": 12402,\n  \"âĿĦï¸ıâĿĦï¸ı\": 41626,\n  \"âĿĮ\": 44485,\n  \"âĿĮ</w>\": 17975,\n  \"âĿĵ</w>\": 29791,\n  \"âĿĹ\": 12868,\n  \"âĿĹ</w>\": 29079,\n  \"âĿĹï¸ı\": 28642,\n  \"âĿĹï¸ı</w>\": 17391,\n  \"âĿĿ</w>\": 46951,\n  \"âŀ\": 3257,\n  \"âŀ¡</w>\": 12854,\n  \"âŀ¡ï¸ı\": 31860,\n  \"âŀ¡ï¸ı</w>\": 4956,\n  \"âŀ¤</w>\": 18651,\n  \"âŀķ</w>\": 46526,\n  \"âŀĸ\": 21327,\n  \"âŀĸ</w>\": 34902,\n  \"âŀĸâŀĸ\": 23316,\n  \"âŀĸâŀĸâŀĸâŀĸ\": 40401,\n  \"âŀľ</w>\": 23775,\n  \"âł\": 5689,\n  \"âłĢ\": 9691,\n  \"âłĢ</w>\": 8621,\n  \"âłĢâłĢ\": 11466,\n  \"âłĢâłĢ</w>\": 39092,\n  \"âłĢâłĢâłĢâłĢ\": 20976,\n  \"âłĢâłĢâłĢâłĢâłĢâłĢâłĢâłĢ\": 46063,\n  \"âŃ\": 5527,\n  \"âŃĲ\": 6410,\n  \"âŃĲ</w>\": 19012,\n  \"âŃĲâŃĲ\": 32663,\n  \"âŃĲï¸ı\": 12427,\n  \"âŃĲï¸ı</w>\": 10251,\n  \"âŃĲï¸ıâŃĲï¸ı\": 18640,\n  \"âŃĲï¸ıâŃĲï¸ıâŃĲï¸ı</w>\": 40746,\n  \"ã\": 159,\n  \"ã</w>\": 415,\n  \"ãĢ\": 4092,\n  \"ãĢģ</w>\": 45262,\n  \"ãĢĤ\": 38060,\n  \"ãĢĤ</w>\": 38000,\n  \"ãĢĬ</w>\": 39920,\n  \"ãĢĭ</w>\": 32898,\n  \"ãĢĮ</w>\": 18116,\n  \"ãĢį</w>\": 19149,\n  \"ãĢİ</w>\": 26947,\n  \"ãĢı</w>\": 30293,\n  \"ãĢĲ</w>\": 12534,\n  \"ãĢĳ</w>\": 12990,\n  \"ãĢľ</w>\": 39581,\n  \"ãģ\": 4813,\n  \"ãģ¦\": 48029,\n  \"ãģ¨\": 34671,\n  \"ãģ¨ç¹ĭãģ\": 47310,\n  \"ãģ¨ç¹ĭãģĮãĤĬãģŁãģĦ</w>\": 48290,\n  \"ãģª\": 29104,\n  \"ãģ®\": 21575,\n  \"ãģ·\": 44130,\n  \"ãģĦ\": 33523,\n  \"ãģĦ</w>\": 38850,\n  \"ãģĨ\": 44235,\n  \"ãģį\": 42184,\n  \"ãĤ\": 3909,\n  \"ãĤ¢\": 26560,\n  \"ãĤ¤\": 19319,\n  \"ãĤ¤ãĥ\": 36294,\n  \"ãĤ«\": 37367,\n  \"ãĤ¯\": 31574,\n  \"ãĤ·\": 37665,\n  \"ãĤ¸\": 32234,\n  \"ãĤ¸ãĥ\": 43491,\n  \"ãĤ¹\": 22694,\n  \"ãĤ¹</w>\": 39220,\n  \"ãĤ¹ãĥ\": 32421,\n  \"ãĤ¿\": 34941,\n  \"ãĤĬãģ\": 40500,\n  \"ãĤĮ</w>\": 45211,\n  \"ãĤŃ\": 47121,\n  \"ãĥ\": 2429,\n  \"ãĥ©\": 23007,\n  \"ãĥª\": 32115,\n  \"ãĥ«\": 33257,\n  \"ãĥ¬\": 32965,\n  \"ãĥ³\": 17671,\n  \"ãĥ³</w>\": 26875,\n  \"ãĥ³ãĤ\": 45105,\n  \"ãĥ³ãĥ\": 25914,\n  \"ãĥ»\": 8415,\n  \"ãĥ»</w>\": 11158,\n  \"ãĥ»ãĥ»\": 13949,\n  \"ãĥ»ãĥ»ãĥ»</w>\": 14234,\n  \"ãĥ¼\": 13457,\n  \"ãĥ¼</w>\": 30391,\n  \"ãĥ¼ãĥ\": 18584,\n  \"ãĥĥ\": 28902,\n  \"ãĥĦ</w>\": 32173,\n  \"ãĥĪ\": 42384,\n  \"ãĥİ</w>\": 39967,\n  \"ãĥķãĤ\": 33371,\n  \"ãĥŀ\": 48924,\n  \"ãĥŃ\": 35827,\n  \"ãħ\": 5947,\n  \"ãħ¤\": 21096,\n  \"ãħ¤ãħ¤\": 22583,\n  \"ãħ¤ãħ¤ãħ¤ãħ¤\": 39329,\n  \"ãħĭ\": 13052,\n  \"ãħĭ</w>\": 25108,\n  \"ãħĭãħĭ\": 16604,\n  \"ãħĭãħĭ</w>\": 42581,\n  \"ãħĭãħĭãħĭ</w>\": 46407,\n  \"ãħĭãħĭãħĭãħĭ\": 39362,\n  \"ãħł\": 16089,\n  \"ãħł</w>\": 25781,\n  \"ãħłãħł\": 22021,\n  \"ãħłãħł</w>\": 34398,\n  \"ãħłãħłãħłãħł\": 47028,\n  \"ä\": 160,\n  \"ä</w>\": 416,\n  \"ä¸\": 19759,\n  \"ä¹\": 41854,\n  \"äº\": 21078,\n  \"äºº\": 36839,\n  \"ä»\": 37743,\n  \"ä½\": 47466,\n  \"å\": 161,\n  \"å</w>\": 417,\n  \"å¤\": 23170,\n  \"å¥\": 29290,\n  \"å®\": 27047,\n  \"å°\": 34720,\n  \"å±\": 46096,\n  \"å¸\": 42021,\n  \"å¹\": 38780,\n  \"åħ\": 34314,\n  \"åĨ\": 27972,\n  \"åĨĻ\": 44653,\n  \"åĪ\": 42748,\n  \"åĭ\": 47505,\n  \"åı\": 34517,\n  \"åĲ\": 41673,\n  \"åĽ\": 39027,\n  \"åľ\": 37746,\n  \"åŃ\": 35751,\n  \"æ\": 162,\n  \"æ</w>\": 418,\n  \"æĸ\": 29032,\n  \"æĹ\": 22265,\n  \"æĹ¥\": 39121,\n  \"æĹ¥</w>\": 37156,\n  \"æĺ\": 42891,\n  \"æĻ\": 48132,\n  \"æľ\": 19277,\n  \"æľ¬\": 44353,\n  \"æĿ\": 27667,\n  \"æĿ±\": 48338,\n  \"ç\": 163,\n  \"ç</w>\": 419,\n  \"ç¥\": 26369,\n  \"ç¥Ń</w>\": 42557,\n  \"çµ\": 37810,\n  \"ç¹\": 43431,\n  \"ç¹ĭãģ\": 45930,\n  \"çĶ\": 20211,\n  \"çĶŁ\": 33375,\n  \"çľ\": 33440,\n  \"çľŁ\": 41570,\n  \"è\": 164,\n  \"è</w>\": 420,\n  \"èª\": 34002,\n  \"èªķ\": 41293,\n  \"é\": 165,\n  \"é</w>\": 421,\n  \"éģ\": 44854,\n  \"éĩ\": 38283,\n  \"ê\": 166,\n  \"ê</w>\": 422,\n  \"ê°\": 21122,\n  \"ê°ĵ\": 41076,\n  \"ê°ĵìĦ¸ë¸Ĳ</w>\": 41689,\n  \"ê°ķ\": 45758,\n  \"ê²\": 35555,\n  \"ê³\": 36216,\n  \"êµ\": 31871,\n  \"ê·\": 42680,\n  \"ê¸\": 32495,\n  \"ê¹\": 24531,\n  \"ê¹Ģ\": 25203,\n  \"ë\": 167,\n  \"ë</w>\": 423,\n  \"ë¦\": 24621,\n  \"ë¦¬\": 47649,\n  \"ë§\": 28024,\n  \"ë§Ī\": 40027,\n  \"ëª\": 36311,\n  \"ë¯\": 19528,\n  \"ë¯¼\": 34442,\n  \"ë¯¼</w>\": 44632,\n  \"ë°\": 15810,\n  \"ë°©\": 23273,\n  \"ë°©íĥ\": 25081,\n  \"ë°©íĥĦ\": 25641,\n  \"ë°©íĥĦìĨĮëħĦëĭ\": 26068,\n  \"ë°©íĥĦìĨĮëħĦëĭ¨</w>\": 27129,\n  \"ë°ķ\": 40988,\n  \"ë²\": 48267,\n  \"ë³\": 44693,\n  \"ë¹\": 24193,\n  \"ëĤ\": 27252,\n  \"ëĤĺ\": 48484,\n  \"ëĭ\": 13094,\n  \"ëĭ¤\": 46680,\n  \"ëĭĪ\": 33708,\n  \"ëį\": 45543,\n  \"ëı\": 31972,\n  \"ëĵ\": 30850,\n  \"ëĿ\": 44317,\n  \"ì\": 168,\n  \"ì</w>\": 424,\n  \"ì£\": 39856,\n  \"ì£¼\": 45161,\n  \"ì¤\": 31153,\n  \"ì§\": 16279,\n  \"ì§Ģ\": 28836,\n  \"ì§Ħ</w>\": 38890,\n  \"ì°\": 40742,\n  \"ì¶\": 42476,\n  \"ì¶ķ\": 46403,\n  \"ì¶ķíķĺ\": 47866,\n  \"ì¹\": 45088,\n  \"ìĤ\": 31061,\n  \"ìĥ\": 30587,\n  \"ìĥĿ\": 47858,\n  \"ìĦ\": 15074,\n  \"ìĦ¸ë\": 29254,\n  \"ìĦ¸ë¸\": 29658,\n  \"ìĦ¸ë¸Ĳ</w>\": 41415,\n  \"ìĨ\": 15115,\n  \"ìĨĮë\": 20515,\n  \"ìĨĮëħ\": 21391,\n  \"ìĨĮëħĦëĭ\": 25887,\n  \"ìĪ\": 32757,\n  \"ìĬ\": 12125,\n  \"ìĬ¤\": 20305,\n  \"ìĬ¤</w>\": 23829,\n  \"ìĭ\": 23924,\n  \"ìķ\": 16071,\n  \"ìķĦ\": 23233,\n  \"ìĸ\": 31625,\n  \"ìĹ\": 13252,\n  \"ìĹĲ\": 37622,\n  \"ìĹĳ\": 31036,\n  \"ìĹĳìĨ\": 42763,\n  \"ìĹĳìĨĮ</w>\": 45606,\n  \"ìĺ\": 21144,\n  \"ìĻ\": 39405,\n  \"ìļ\": 18541,\n  \"ìļ°\": 38415,\n  \"ìļ°</w>\": 49344,\n  \"ìĽ\": 22543,\n  \"ìĽĲ</w>\": 36495,\n  \"ìľ\": 20909,\n  \"ìľł\": 42890,\n  \"ìĿ\": 8276,\n  \"ìĿ´\": 12286,\n  \"ìĿ´</w>\": 34746,\n  \"ìĿ´ì\": 37590,\n  \"ìĿ¼\": 43406,\n  \"ìŀ\": 20849,\n  \"ìł\": 20580,\n  \"ìłķ\": 34725,\n  \"í\": 169,\n  \"í</w>\": 425,\n  \"íģ\": 35641,\n  \"íģ¬</w>\": 45832,\n  \"íĤ\": 43565,\n  \"íĥ\": 15012,\n  \"íĥĢ\": 41126,\n  \"íĥľ\": 37663,\n  \"íĬ\": 23215,\n  \"íĬ¸\": 48974,\n  \"íĬ¸</w>\": 39820,\n  \"íĭ\": 34350,\n  \"íĶ\": 29450,\n  \"íķ\": 15197,\n  \"íķ´</w>\": 35286,\n  \"íķĺ\": 33992,\n  \"íĺ\": 15962,\n  \"íĺ¸</w>\": 39657,\n  \"íĺĦ</w>\": 34645,\n  \"íĻ\": 31882,\n  \"î\": 170,\n  \"î</w>\": 426,\n  \"îĢ\": 36288,\n  \"îĦ\": 35368,\n  \"îĮ\": 41006,\n  \"îĲ\": 16929,\n  \"îĲĴ\": 40100,\n  \"ï\": 171,\n  \"ï</w>\": 427,\n  \"ï¸\": 842,\n  \"ï¸İ</w>\": 24029,\n  \"ï¸ı\": 1392,\n  \"ï¸ı#</w>\": 46997,\n  \"ï¸ı:</w>\": 32604,\n  \"ï¸ı</w>\": 1001,\n  \"ï¸ı@</w>\": 34600,\n  \"ï¸ıâĥ£\": 17394,\n  \"ï¸ıâĥ£-</w>\": 40376,\n  \"ï¸ıâĥ£</w>\": 4603,\n  \"ï¿\": 27850,\n  \"ï¿½\": 47356,\n  \"ï¿½</w>\": 39802,\n  \"ð\": 172,\n  \"ð</w>\": 428,\n  \"ðĿ\": 6874,\n  \"ðĿĲ\": 15889,\n  \"ðĿĳ\": 43794,\n  \"ðĿĴ\": 43387,\n  \"ðĿĵ\": 47110,\n  \"ðĿĹ\": 18865,\n  \"ðĿĺ\": 26109,\n  \"ðĿĻ\": 29415,\n  \"ðŁ\": 558,\n  \"ðŁ¤\": 1793,\n  \"ðŁ¤£\": 9665,\n  \"ðŁ¤£</w>\": 9909,\n  \"ðŁ¤£ðŁ¤£\": 16430,\n  \"ðŁ¤£ðŁ¤£</w>\": 31009,\n  \"ðŁ¤£ðŁ¤£ðŁ¤£</w>\": 32262,\n  \"ðŁ¤¤\": 39550,\n  \"ðŁ¤¤</w>\": 26759,\n  \"ðŁ¤¦\": 17186,\n  \"ðŁ¤§</w>\": 40983,\n  \"ðŁ¤©\": 27351,\n  \"ðŁ¤©</w>\": 16074,\n  \"ðŁ¤ª\": 44230,\n  \"ðŁ¤ª</w>\": 24920,\n  \"ðŁ¤«</w>\": 47671,\n  \"ðŁ¤¯</w>\": 37595,\n  \"ðŁ¤·\": 13185,\n  \"ðŁ¤·ðŁı»âĢįâĻĢï¸ı</w>\": 46770,\n  \"ðŁ¤ĳ</w>\": 34801,\n  \"ðŁ¤ĵ\": 36580,\n  \"ðŁ¤ĵ</w>\": 18928,\n  \"ðŁ¤Ķ\": 12706,\n  \"ðŁ¤Ķ</w>\": 6497,\n  \"ðŁ¤ĶðŁ¤Ķ</w>\": 28490,\n  \"ðŁ¤ĶðŁ¤ĶðŁ¤Ķ</w>\": 43361,\n  \"ðŁ¤ĸ</w>\": 46146,\n  \"ðŁ¤Ĺ\": 16646,\n  \"ðŁ¤Ĺ</w>\": 10465,\n  \"ðŁ¤ĹðŁ¤Ĺ</w>\": 44321,\n  \"ðŁ¤ĺ\": 10623,\n  \"ðŁ¤ĺ</w>\": 17288,\n  \"ðŁ¤ĺðŁı»\": 46449,\n  \"ðŁ¤ĺðŁı»</w>\": 30891,\n  \"ðŁ¤ĺðŁı¼</w>\": 31458,\n  \"ðŁ¤ĺðŁı½</w>\": 49362,\n  \"ðŁ¤Ļ\": 23800,\n  \"ðŁ¤Ļ</w>\": 39101,\n  \"ðŁ¤Ŀ</w>\": 35242,\n  \"ðŁ¤ŀ\": 29463,\n  \"ðŁ¤ŀ</w>\": 38597,\n  \"ðŁ¤Ł\": 48509,\n  \"ðŁ¤ł</w>\": 36737,\n  \"ðŁ¤Ń</w>\": 47289,\n  \"ðŁ¥\": 4156,\n  \"ðŁ¥°\": 29246,\n  \"ðŁ¥°</w>\": 17597,\n  \"ðŁ¥³\": 45823,\n  \"ðŁ¥³</w>\": 28055,\n  \"ðŁ¥º\": 43380,\n  \"ðŁ¥º</w>\": 36858,\n  \"ðŁ¥Ĥ\": 43805,\n  \"ðŁ¥Ĥ</w>\": 25212,\n  \"ðŁ¥ĥ</w>\": 47790,\n  \"ðŁ¥ĩ\": 34372,\n  \"ðŁ¥ĩ</w>\": 20069,\n  \"ðŁ¥Ī</w>\": 35858,\n  \"ðŁ¥ī</w>\": 36782,\n  \"ðŁ¥Ĭ</w>\": 29275,\n  \"ðŁ¦\": 6040,\n  \"ðŁ¦ģ\": 36367,\n  \"ðŁ¦ģ</w>\": 26056,\n  \"ðŁ¦ĥ</w>\": 40184,\n  \"ðŁ¦Ħ</w>\": 37659,\n  \"ðŁ¦ħ</w>\": 28800,\n  \"ðŁ¦Ī</w>\": 48984,\n  \"ðŁ¦ĭ\": 49325,\n  \"ðŁ¦ĭ</w>\": 28985,\n  \"ðŁ§\": 8792,\n  \"ðŁ§¡\": 30996,\n  \"ðŁ§¡</w>\": 24578,\n  \"ðŁ§Ĳ</w>\": 33549,\n  \"ðŁħ\": 22010,\n  \"ðŁĨ\": 9536,\n  \"ðŁĨķ</w>\": 34956,\n  \"ðŁĨĺ</w>\": 39868,\n  \"ðŁĨļ</w>\": 16325,\n  \"ðŁĩ\": 1173,\n  \"ðŁĩ¦\": 12469,\n  \"ðŁĩ¦</w>\": 28565,\n  \"ðŁĩ¦ðŁĩ\": 33196,\n  \"ðŁĩ¦ðŁĩ·</w>\": 41629,\n  \"ðŁĩ¦ðŁĩº</w>\": 25192,\n  \"ðŁĩ§\": 14660,\n  \"ðŁĩ§ðŁĩ\": 37342,\n  \"ðŁĩ§ðŁĩª</w>\": 38794,\n  \"ðŁĩ§ðŁĩ·</w>\": 28182,\n  \"ðŁĩ¨\": 8889,\n  \"ðŁĩ¨ðŁĩ\": 8989,\n  \"ðŁĩ¨ðŁĩ¦\": 34324,\n  \"ðŁĩ¨ðŁĩ¦</w>\": 16364,\n  \"ðŁĩ¨ðŁĩ³</w>\": 36819,\n  \"ðŁĩ¨ðŁĩŃ</w>\": 41119,\n  \"ðŁĩ©\": 15222,\n  \"ðŁĩ©ðŁĩ\": 36350,\n  \"ðŁĩ©ðŁĩª</w>\": 21531,\n  \"ðŁĩª\": 11428,\n  \"ðŁĩª</w>\": 12331,\n  \"ðŁĩªðŁĩ\": 13917,\n  \"ðŁĩªðŁĩ¸</w>\": 22177,\n  \"ðŁĩªðŁĩº</w>\": 34655,\n  \"ðŁĩ«\": 12977,\n  \"ðŁĩ«ðŁĩ·\": 39109,\n  \"ðŁĩ«ðŁĩ·</w>\": 16223,\n  \"ðŁĩ¬\": 8129,\n  \"ðŁĩ¬ðŁĩ\": 8354,\n  \"ðŁĩ¬ðŁĩ§\": 23762,\n  \"ðŁĩ¬ðŁĩ§</w>\": 11559,\n  \"ðŁĩ®\": 8268,\n  \"ðŁĩ®ðŁĩ\": 8347,\n  \"ðŁĩ®ðŁĩª</w>\": 34148,\n  \"ðŁĩ®ðŁĩ³\": 47299,\n  \"ðŁĩ®ðŁĩ³</w>\": 23602,\n  \"ðŁĩ®ðŁĩ¹\": 42034,\n  \"ðŁĩ®ðŁĩ¹</w>\": 17070,\n  \"ðŁĩ¯\": 20090,\n  \"ðŁĩ¯ðŁĩ\": 22924,\n  \"ðŁĩ¯ðŁĩµ</w>\": 26527,\n  \"ðŁĩ°\": 28232,\n  \"ðŁĩ±\": 29533,\n  \"ðŁĩ±ðŁĩ\": 40941,\n  \"ðŁĩ²\": 16411,\n  \"ðŁĩ²ðŁĩ\": 17562,\n  \"ðŁĩ²ðŁĩ½</w>\": 32073,\n  \"ðŁĩ³\": 16645,\n  \"ðŁĩ³ðŁĩ\": 17747,\n  \"ðŁĩ³ðŁĩ±</w>\": 36747,\n  \"ðŁĩµ\": 12127,\n  \"ðŁĩµðŁĩ\": 13608,\n  \"ðŁĩµðŁĩ°</w>\": 37764,\n  \"ðŁĩµðŁĩ¹</w>\": 42621,\n  \"ðŁĩµðŁĩŃ</w>\": 42777,\n  \"ðŁĩ·\": 16026,\n  \"ðŁĩ·</w>\": 9869,\n  \"ðŁĩ·ðŁĩº</w>\": 37902,\n  \"ðŁĩ¸\": 19447,\n  \"ðŁĩ¸ðŁĩ\": 33325,\n  \"ðŁĩ¸ðŁĩª</w>\": 39260,\n  \"ðŁĩ¹\": 21810,\n  \"ðŁĩ¹ðŁĩ\": 36250,\n  \"ðŁĩº\": 4054,\n  \"ðŁĩº</w>\": 17467,\n  \"ðŁĩºðŁĩ\": 4131,\n  \"ðŁĩºðŁĩ¸\": 8907,\n  \"ðŁĩºðŁĩ¸</w>\": 5688,\n  \"ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸\": 18739,\n  \"ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸</w>\": 41411,\n  \"ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸</w>\": 43357,\n  \"ðŁĩ¿\": 25520,\n  \"ðŁĩ¿ðŁĩ¦</w>\": 36982,\n  \"ðŁĩŃ\": 30370,\n  \"ðŁĮ\": 1576,\n  \"ðŁĮ±\": 35318,\n  \"ðŁĮ±</w>\": 20665,\n  \"ðŁĮ²\": 34071,\n  \"ðŁĮ²</w>\": 28154,\n  \"ðŁĮ³\": 44265,\n  \"ðŁĮ³</w>\": 28543,\n  \"ðŁĮ´\": 20643,\n  \"ðŁĮ´</w>\": 15968,\n  \"ðŁĮµ</w>\": 40871,\n  \"ðŁĮ·\": 32328,\n  \"ðŁĮ·</w>\": 24259,\n  \"ðŁĮ¸\": 16314,\n  \"ðŁĮ¸</w>\": 10980,\n  \"ðŁĮ¸ðŁĮ¸\": 46210,\n  \"ðŁĮ¹\": 14990,\n  \"ðŁĮ¹</w>\": 10662,\n  \"ðŁĮ¹ðŁĮ¹\": 37933,\n  \"ðŁĮº\": 27608,\n  \"ðŁĮº</w>\": 19829,\n  \"ðŁĮ»\": 27196,\n  \"ðŁĮ»</w>\": 19772,\n  \"ðŁĮ¼\": 36484,\n  \"ðŁĮ¼</w>\": 26312,\n  \"ðŁĮ¾</w>\": 39796,\n  \"ðŁĮ¿\": 27736,\n  \"ðŁĮ¿</w>\": 18588,\n  \"ðŁĮĢ</w>\": 34348,\n  \"ðŁĮħ</w>\": 27547,\n  \"ðŁĮĪ\": 23038,\n  \"ðŁĮĪ</w>\": 13042,\n  \"ðŁĮĬ\": 20465,\n  \"ðŁĮĬ</w>\": 14302,\n  \"ðŁĮĮ</w>\": 43393,\n  \"ðŁĮį\": 34931,\n  \"ðŁĮį</w>\": 18641,\n  \"ðŁĮİ\": 31125,\n  \"ðŁĮİ</w>\": 16969,\n  \"ðŁĮı</w>\": 31527,\n  \"ðŁĮĲ</w>\": 33071,\n  \"ðŁĮĻ\": 42330,\n  \"ðŁĮĻ</w>\": 23283,\n  \"ðŁĮļ\": 49004,\n  \"ðŁĮļ</w>\": 27877,\n  \"ðŁĮŀ\": 21152,\n  \"ðŁĮŀ</w>\": 12980,\n  \"ðŁĮŁ\": 13196,\n  \"ðŁĮŁ</w>\": 8542,\n  \"ðŁĮŁðŁĮŁ\": 26014,\n  \"ðŁį\": 2011,\n  \"ðŁį¦\": 47375,\n  \"ðŁį¦</w>\": 32032,\n  \"ðŁį©</w>\": 38379,\n  \"ðŁįª</w>\": 38958,\n  \"ðŁį«\": 47994,\n  \"ðŁį«</w>\": 33401,\n  \"ðŁį°\": 43732,\n  \"ðŁį°</w>\": 30051,\n  \"ðŁį³</w>\": 37441,\n  \"ðŁį´\": 41531,\n  \"ðŁį´</w>\": 25338,\n  \"ðŁį·\": 24445,\n  \"ðŁį·</w>\": 18072,\n  \"ðŁį¸\": 43058,\n  \"ðŁį¸</w>\": 31217,\n  \"ðŁį¹</w>\": 35598,\n  \"ðŁįº\": 31081,\n  \"ðŁįº</w>\": 21590,\n  \"ðŁį»\": 22793,\n  \"ðŁį»</w>\": 13167,\n  \"ðŁį¾\": 27294,\n  \"ðŁį¾</w>\": 21656,\n  \"ðŁįĢ\": 22865,\n  \"ðŁįĢ</w>\": 15764,\n  \"ðŁįģ\": 29837,\n  \"ðŁįģ</w>\": 23075,\n  \"ðŁįĤ\": 35015,\n  \"ðŁįĤ</w>\": 25721,\n  \"ðŁįĥ\": 27157,\n  \"ðŁįĥ</w>\": 20147,\n  \"ðŁįĩ</w>\": 48697,\n  \"ðŁįĬ\": 35001,\n  \"ðŁįĬ</w>\": 28036,\n  \"ðŁįĭ</w>\": 39543,\n  \"ðŁįĮ</w>\": 44987,\n  \"ðŁįį</w>\": 48946,\n  \"ðŁįİ</w>\": 32069,\n  \"ðŁįĳ</w>\": 32889,\n  \"ðŁįĴ</w>\": 33160,\n  \"ðŁįĵ\": 44739,\n  \"ðŁįĵ</w>\": 33456,\n  \"ðŁįĶ\": 46415,\n  \"ðŁįĶ</w>\": 36031,\n  \"ðŁįķ\": 31469,\n  \"ðŁįķ</w>\": 23904,\n  \"ðŁįŃ</w>\": 42100,\n  \"ðŁİ\": 1165,\n  \"ðŁİ£</w>\": 43158,\n  \"ðŁİ¤\": 23490,\n  \"ðŁİ¤</w>\": 15690,\n  \"ðŁİ¥\": 22186,\n  \"ðŁİ¥:</w>\": 43640,\n  \"ðŁİ¥</w>\": 13233,\n  \"ðŁİ§\": 31254,\n  \"ðŁİ§</w>\": 14266,\n  \"ðŁİ¨\": 31953,\n  \"ðŁİ¨</w>\": 13461,\n  \"ðŁİ©</w>\": 37701,\n  \"ðŁİ«</w>\": 30331,\n  \"ðŁİ¬\": 36020,\n  \"ðŁİ¬</w>\": 18150,\n  \"ðŁİ®</w>\": 29312,\n  \"ðŁİ¯</w>\": 23114,\n  \"ðŁİµ\": 27435,\n  \"ðŁİµ</w>\": 14946,\n  \"ðŁİ¶\": 11755,\n  \"ðŁİ¶</w>\": 6011,\n  \"ðŁİ¶ðŁİ¶</w>\": 36283,\n  \"ðŁİ¸\": 29135,\n  \"ðŁİ¸</w>\": 22122,\n  \"ðŁİ¹</w>\": 43493,\n  \"ðŁİ¼\": 34949,\n  \"ðŁİ¼</w>\": 23757,\n  \"ðŁİ¾\": 41982,\n  \"ðŁİ¾</w>\": 24222,\n  \"ðŁİĢ\": 34347,\n  \"ðŁİĢ</w>\": 20151,\n  \"ðŁİģ\": 18368,\n  \"ðŁİģ</w>\": 13462,\n  \"ðŁİĤ\": 13026,\n  \"ðŁİĤ</w>\": 10392,\n  \"ðŁİĤðŁİĤ\": 39338,\n  \"ðŁİĥ\": 22622,\n  \"ðŁİĥ</w>\": 16780,\n  \"ðŁİĦ\": 12942,\n  \"ðŁİĦ</w>\": 11267,\n  \"ðŁİħ\": 17685,\n  \"ðŁİħ</w>\": 24276,\n  \"ðŁİĨ</w>\": 39222,\n  \"ðŁİĪ\": 16142,\n  \"ðŁİĪ</w>\": 14448,\n  \"ðŁİĪðŁİī</w>\": 48049,\n  \"ðŁİī\": 4310,\n  \"ðŁİī:</w>\": 17310,\n  \"ðŁİī</w>\": 3986,\n  \"ðŁİīðŁİ\": 11473,\n  \"ðŁİīðŁİĪ\": 40499,\n  \"ðŁİīðŁİĪ</w>\": 34008,\n  \"ðŁİīðŁİī\": 25159,\n  \"ðŁİīðŁİī</w>\": 13450,\n  \"ðŁİīðŁİīðŁİī</w>\": 20828,\n  \"ðŁİīðŁİĬ\": 31662,\n  \"ðŁİīðŁİĬ</w>\": 30781,\n  \"ðŁİĬ\": 22763,\n  \"ðŁİĬ</w>\": 22425,\n  \"ðŁİĬðŁİī</w>\": 48801,\n  \"ðŁİĵ\": 28916,\n  \"ðŁİĵ</w>\": 18744,\n  \"ðŁİĻ\": 29001,\n  \"ðŁİĻ</w>\": 29753,\n  \"ðŁİĻï¸ı</w>\": 44205,\n  \"ðŁİŁ\": 19248,\n  \"ðŁİŁ</w>\": 21107,\n  \"ðŁİŁï¸ı</w>\": 30243,\n  \"ðŁİŃ</w>\": 28856,\n  \"ðŁı\": 1109,\n  \"ðŁı¡</w>\": 27318,\n  \"ðŁı³ï¸ı\": 26844,\n  \"ðŁı³ï¸ıâĢį\": 27093,\n  \"ðŁı³ï¸ıâĢįðŁĮĪ</w>\": 32610,\n  \"ðŁı´\": 39690,\n  \"ðŁı´</w>\": 19704,\n  \"ðŁı»\": 5042,\n  \"ðŁı»</w>\": 3702,\n  \"ðŁı»âĢį\": 46250,\n  \"ðŁı»âĢįâĻĢï¸ı\": 48391,\n  \"ðŁı»âĢįâĻĢï¸ı</w>\": 23595,\n  \"ðŁı»âĢįâĻĤï¸ı</w>\": 30984,\n  \"ðŁı¼\": 6193,\n  \"ðŁı¼</w>\": 4027,\n  \"ðŁı¼âĢįâĻĢï¸ı</w>\": 28955,\n  \"ðŁı½\": 8514,\n  \"ðŁı½</w>\": 6114,\n  \"ðŁı½âĢįâĻĢï¸ı</w>\": 37036,\n  \"ðŁı½âĢįâĻĤï¸ı</w>\": 43157,\n  \"ðŁı¾\": 10230,\n  \"ðŁı¾</w>\": 7778,\n  \"ðŁı¾âĢįâĻĤï¸ı</w>\": 47189,\n  \"ðŁı¿\": 29854,\n  \"ðŁı¿</w>\": 21094,\n  \"ðŁıĢ\": 13708,\n  \"ðŁıĢ</w>\": 8813,\n  \"ðŁıĢðŁıĢ\": 43169,\n  \"ðŁıģ\": 29423,\n  \"ðŁıģ</w>\": 17473,\n  \"ðŁıĥ\": 16820,\n  \"ðŁıĥ</w>\": 32751,\n  \"ðŁıħ</w>\": 25500,\n  \"ðŁıĨ\": 9585,\n  \"ðŁıĨ</w>\": 5596,\n  \"ðŁıĨðŁıĨ\": 18946,\n  \"ðŁıĨðŁıĨ</w>\": 38269,\n  \"ðŁıĨðŁıĨðŁıĨ</w>\": 44484,\n  \"ðŁıĩ\": 45789,\n  \"ðŁıĩ</w>\": 40288,\n  \"ðŁıĪ\": 16144,\n  \"ðŁıĪ</w>\": 10477,\n  \"ðŁıī</w>\": 26020,\n  \"ðŁıĬ\": 33061,\n  \"ðŁıĬ</w>\": 47830,\n  \"ðŁıĮ\": 41116,\n  \"ðŁıı</w>\": 32460,\n  \"ðŁıĲ\": 46334,\n  \"ðŁıĲ</w>\": 29433,\n  \"ðŁıĴ</w>\": 37756,\n  \"ðŁıŁ\": 35914,\n  \"ðŁıŁ</w>\": 26472,\n  \"ðŁıŁï¸ı</w>\": 42627,\n  \"ðŁıł</w>\": 33727,\n  \"ðŁĲ\": 2074,\n  \"ðŁĲ¢</w>\": 37049,\n  \"ðŁĲ£</w>\": 39597,\n  \"ðŁĲ¥</w>\": 42981,\n  \"ðŁĲ¦</w>\": 37260,\n  \"ðŁĲ¬</w>\": 44238,\n  \"ðŁĲ¯\": 34825,\n  \"ðŁĲ¯</w>\": 26111,\n  \"ðŁĲ°\": 35378,\n  \"ðŁĲ°</w>\": 25050,\n  \"ðŁĲ±\": 35710,\n  \"ðŁĲ±</w>\": 22979,\n  \"ðŁĲ´</w>\": 33509,\n  \"ðŁĲ¶\": 14466,\n  \"ðŁĲ¶</w>\": 10631,\n  \"ðŁĲ·</w>\": 38408,\n  \"ðŁĲ¸\": 45597,\n  \"ðŁĲ¸</w>\": 40298,\n  \"ðŁĲº\": 44281,\n  \"ðŁĲº</w>\": 31445,\n  \"ðŁĲ»\": 30750,\n  \"ðŁĲ»</w>\": 25322,\n  \"ðŁĲ¼</w>\": 46234,\n  \"ðŁĲ¾\": 16057,\n  \"ðŁĲ¾</w>\": 11317,\n  \"ðŁĲ¾ðŁĲ¾</w>\": 42202,\n  \"ðŁĲī</w>\": 46908,\n  \"ðŁĲĬ</w>\": 43974,\n  \"ðŁĲį\": 48903,\n  \"ðŁĲį</w>\": 30177,\n  \"ðŁĲİ\": 48281,\n  \"ðŁĲİ</w>\": 32726,\n  \"ðŁĲĲ\": 47735,\n  \"ðŁĲĲ</w>\": 27954,\n  \"ðŁĲĳ</w>\": 49389,\n  \"ðŁĲķ</w>\": 41069,\n  \"ðŁĲĺ</w>\": 38733,\n  \"ðŁĲĿ\": 30619,\n  \"ðŁĲĿ</w>\": 20111,\n  \"ðŁĲŁ\": 42084,\n  \"ðŁĲŁ</w>\": 29989,\n  \"ðŁĲł</w>\": 42725,\n  \"ðŁĳ\": 964,\n  \"ðŁĳ£</w>\": 39755,\n  \"ðŁĳ§\": 48938,\n  \"ðŁĳ¨\": 18966,\n  \"ðŁĳ¨âĢį\": 25023,\n  \"ðŁĳ©\": 18800,\n  \"ðŁĳ©âĢį\": 26304,\n  \"ðŁĳ«\": 47106,\n  \"ðŁĳ«</w>\": 35457,\n  \"ðŁĳ®\": 42686,\n  \"ðŁĳ¯\": 25910,\n  \"ðŁĳ¯</w>\": 20582,\n  \"ðŁĳ¶\": 26187,\n  \"ðŁĳ¶</w>\": 33189,\n  \"ðŁĳ¸\": 26268,\n  \"ðŁĳ¸</w>\": 36645,\n  \"ðŁĳ¹</w>\": 46766,\n  \"ðŁĳ»\": 24625,\n  \"ðŁĳ»</w>\": 16243,\n  \"ðŁĳ¼\": 25270,\n  \"ðŁĳ¼</w>\": 31083,\n  \"ðŁĳ½\": 42677,\n  \"ðŁĳ½</w>\": 26257,\n  \"ðŁĳĢ\": 11524,\n  \"ðŁĳĢ</w>\": 5908,\n  \"ðŁĳĢðŁĳĢ</w>\": 31561,\n  \"ðŁĳģ\": 47796,\n  \"ðŁĳģ</w>\": 45705,\n  \"ðŁĳĦ</w>\": 47445,\n  \"ðŁĳħ\": 31833,\n  \"ðŁĳħ</w>\": 24672,\n  \"ðŁĳĨ\": 42975,\n  \"ðŁĳĨ</w>\": 45194,\n  \"ðŁĳĩ\": 7662,\n  \"ðŁĳĩ</w>\": 7475,\n  \"ðŁĳĩðŁı»\": 45811,\n  \"ðŁĳĩðŁı»</w>\": 32813,\n  \"ðŁĳĩðŁı¼</w>\": 37504,\n  \"ðŁĳĩðŁĳĩ\": 17915,\n  \"ðŁĳĩðŁĳĩ</w>\": 31891,\n  \"ðŁĳĩðŁĳĩðŁĳĩ</w>\": 35627,\n  \"ðŁĳĪ\": 32794,\n  \"ðŁĳĪ</w>\": 20832,\n  \"ðŁĳī\": 9477,\n  \"ðŁĳī</w>\": 3988,\n  \"ðŁĳīðŁı»</w>\": 23481,\n  \"ðŁĳīðŁı¼</w>\": 27534,\n  \"ðŁĳīðŁı½</w>\": 38059,\n  \"ðŁĳīðŁĳī</w>\": 41480,\n  \"ðŁĳĬ\": 8897,\n  \"ðŁĳĬ</w>\": 9704,\n  \"ðŁĳĬðŁı»\": 47393,\n  \"ðŁĳĬðŁı»</w>\": 29152,\n  \"ðŁĳĬðŁı¼\": 49000,\n  \"ðŁĳĬðŁı¼</w>\": 30115,\n  \"ðŁĳĬðŁĳĬ</w>\": 46521,\n  \"ðŁĳĭ\": 19351,\n  \"ðŁĳĭ</w>\": 17686,\n  \"ðŁĳĮ\": 4890,\n  \"ðŁĳĮ</w>\": 4494,\n  \"ðŁĳĮðŁı»\": 31818,\n  \"ðŁĳĮðŁı»</w>\": 18606,\n  \"ðŁĳĮðŁı¼\": 37655,\n  \"ðŁĳĮðŁı¼</w>\": 20031,\n  \"ðŁĳĮðŁı½</w>\": 35834,\n  \"ðŁĳĮðŁĳĮ\": 36139,\n  \"ðŁĳĮðŁĳĮ</w>\": 21435,\n  \"ðŁĳĮðŁĳĮðŁĳĮ</w>\": 40876,\n  \"ðŁĳį\": 4686,\n  \"ðŁĳį</w>\": 4201,\n  \"ðŁĳįðŁı»\": 25803,\n  \"ðŁĳįðŁı»</w>\": 15129,\n  \"ðŁĳįðŁı¼\": 37285,\n  \"ðŁĳįðŁı¼</w>\": 19689,\n  \"ðŁĳįðŁı½</w>\": 43722,\n  \"ðŁĳįðŁĳį\": 33012,\n  \"ðŁĳįðŁĳį</w>\": 18997,\n  \"ðŁĳįðŁĳįðŁĳį</w>\": 37284,\n  \"ðŁĳİ\": 39702,\n  \"ðŁĳİ</w>\": 32568,\n  \"ðŁĳı\": 3802,\n  \"ðŁĳı</w>\": 4829,\n  \"ðŁĳıðŁı»\": 19236,\n  \"ðŁĳıðŁı»</w>\": 17029,\n  \"ðŁĳıðŁı»ðŁĳıðŁı»\": 35254,\n  \"ðŁĳıðŁı¼\": 24496,\n  \"ðŁĳıðŁı¼</w>\": 19979,\n  \"ðŁĳıðŁı¼ðŁĳıðŁı¼</w>\": 46712,\n  \"ðŁĳıðŁı½\": 40796,\n  \"ðŁĳıðŁı½</w>\": 33978,\n  \"ðŁĳıðŁı¾</w>\": 45450,\n  \"ðŁĳıðŁĳı\": 10356,\n  \"ðŁĳıðŁĳı</w>\": 16706,\n  \"ðŁĳıðŁĳıðŁĳı</w>\": 17254,\n  \"ðŁĳĲ</w>\": 40877,\n  \"ðŁĳĳ\": 14955,\n  \"ðŁĳĳ</w>\": 8717,\n  \"ðŁĳĳðŁĳĳ\": 48532,\n  \"ðŁĳķ</w>\": 47865,\n  \"ðŁĳŁ</w>\": 41183,\n  \"ðŁĳł</w>\": 41264,\n  \"ðŁĳŃ\": 34175,\n  \"ðŁĳŃ</w>\": 27943,\n  \"ðŁĴ\": 837,\n  \"ðŁĴ¡</w>\": 24081,\n  \"ðŁĴ£\": 36862,\n  \"ðŁĴ£</w>\": 29006,\n  \"ðŁĴ¤\": 34706,\n  \"ðŁĴ¤</w>\": 25632,\n  \"ðŁĴ¥\": 12209,\n  \"ðŁĴ¥</w>\": 7347,\n  \"ðŁĴ¥ðŁĴ¥\": 27396,\n  \"ðŁĴ¥ðŁĴ¥</w>\": 39246,\n  \"ðŁĴ¥ðŁĴ¥ðŁĴ¥</w>\": 48890,\n  \"ðŁĴ¦\": 21180,\n  \"ðŁĴ¦</w>\": 14060,\n  \"ðŁĴ¦ðŁĴ¦</w>\": 44469,\n  \"ðŁĴ§</w>\": 34095,\n  \"ðŁĴ¨\": 27408,\n  \"ðŁĴ¨</w>\": 17891,\n  \"ðŁĴ©\": 48621,\n  \"ðŁĴ©</w>\": 28847,\n  \"ðŁĴª\": 5475,\n  \"ðŁĴª</w>\": 6440,\n  \"ðŁĴªðŁı»\": 31669,\n  \"ðŁĴªðŁı»</w>\": 21903,\n  \"ðŁĴªðŁı¼\": 32041,\n  \"ðŁĴªðŁı¼</w>\": 20759,\n  \"ðŁĴªðŁı½\": 46380,\n  \"ðŁĴªðŁı½</w>\": 31111,\n  \"ðŁĴªðŁı¾</w>\": 39398,\n  \"ðŁĴªðŁĴª</w>\": 24747,\n  \"ðŁĴªðŁĴªðŁĴª</w>\": 39913,\n  \"ðŁĴ«\": 25770,\n  \"ðŁĴ«</w>\": 12526,\n  \"ðŁĴ¬</w>\": 30947,\n  \"ðŁĴ¯\": 10611,\n  \"ðŁĴ¯</w>\": 7018,\n  \"ðŁĴ¯ðŁĴ¯\": 30234,\n  \"ðŁĴ¯ðŁĴ¯</w>\": 44070,\n  \"ðŁĴ°\": 20454,\n  \"ðŁĴ°</w>\": 14078,\n  \"ðŁĴ°ðŁĴ°\": 41747,\n  \"ðŁĴµ\": 47412,\n  \"ðŁĴµ</w>\": 38041,\n  \"ðŁĴ¸\": 37696,\n  \"ðŁĴ¸</w>\": 25957,\n  \"ðŁĴ»\": 33433,\n  \"ðŁĴ»</w>\": 18135,\n  \"ðŁĴ¿</w>\": 39541,\n  \"ðŁĴĢ\": 14888,\n  \"ðŁĴĢ</w>\": 12158,\n  \"ðŁĴĢðŁĴĢ\": 30884,\n  \"ðŁĴģ\": 13997,\n  \"ðŁĴģ</w>\": 14392,\n  \"ðŁĴĥ\": 9947,\n  \"ðŁĴĥ</w>\": 14333,\n  \"ðŁĴĥðŁı»</w>\": 38624,\n  \"ðŁĴĥðŁĴĥ\": 28041,\n  \"ðŁĴĦ\": 46116,\n  \"ðŁĴĦ</w>\": 34571,\n  \"ðŁĴħ\": 27457,\n  \"ðŁĴħ</w>\": 32414,\n  \"ðŁĴī\": 44316,\n  \"ðŁĴī</w>\": 30503,\n  \"ðŁĴĭ\": 12217,\n  \"ðŁĴĭ</w>\": 7417,\n  \"ðŁĴĭðŁĴĭ</w>\": 29214,\n  \"ðŁĴĮ</w>\": 40817,\n  \"ðŁĴį\": 35850,\n  \"ðŁĴį</w>\": 24898,\n  \"ðŁĴİ\": 25938,\n  \"ðŁĴİ</w>\": 15874,\n  \"ðŁĴĲ\": 27375,\n  \"ðŁĴĲ</w>\": 20554,\n  \"ðŁĴĳ</w>\": 49404,\n  \"ðŁĴĵ\": 20628,\n  \"ðŁĴĵ</w>\": 12568,\n  \"ðŁĴĵðŁĴĵ</w>\": 43505,\n  \"ðŁĴĶ\": 18880,\n  \"ðŁĴĶ</w>\": 10704,\n  \"ðŁĴĶðŁĴĶ\": 44673,\n  \"ðŁĴķ\": 5412,\n  \"ðŁĴķ</w>\": 3082,\n  \"ðŁĴķðŁĴķ\": 23106,\n  \"ðŁĴķðŁĴķ</w>\": 14117,\n  \"ðŁĴķðŁĴķðŁĴķ</w>\": 26772,\n  \"ðŁĴĸ\": 8466,\n  \"ðŁĴĸ</w>\": 5582,\n  \"ðŁĴĸðŁĴĸ\": 19562,\n  \"ðŁĴĸðŁĴĸ</w>\": 30595,\n  \"ðŁĴĸðŁĴĸðŁĴĸ</w>\": 33915,\n  \"ðŁĴĹ\": 10148,\n  \"ðŁĴĹ</w>\": 6690,\n  \"ðŁĴĹðŁĴĹ\": 47158,\n  \"ðŁĴĹðŁĴĹ</w>\": 24064,\n  \"ðŁĴĹðŁĴĹðŁĴĹ</w>\": 36990,\n  \"ðŁĴĺ\": 18223,\n  \"ðŁĴĺ</w>\": 10816,\n  \"ðŁĴĺðŁĴĺ</w>\": 40464,\n  \"ðŁĴĻ\": 5305,\n  \"ðŁĴĻ</w>\": 4074,\n  \"ðŁĴĻðŁĴĻ\": 17833,\n  \"ðŁĴĻðŁĴĻ</w>\": 27101,\n  \"ðŁĴĻðŁĴĻðŁĴĻ</w>\": 30698,\n  \"ðŁĴĻðŁĴĽ\": 46804,\n  \"ðŁĴĻðŁĴĽ</w>\": 26230,\n  \"ðŁĴĻðŁĴľ\": 47931,\n  \"ðŁĴĻðŁĴľ</w>\": 42541,\n  \"ðŁĴļ\": 8102,\n  \"ðŁĴļ</w>\": 6521,\n  \"ðŁĴļðŁĴļ\": 27497,\n  \"ðŁĴļðŁĴļ</w>\": 46209,\n  \"ðŁĴļðŁĴļðŁĴļ</w>\": 46182,\n  \"ðŁĴļðŁĴĽ</w>\": 41232,\n  \"ðŁĴĽ\": 8221,\n  \"ðŁĴĽ</w>\": 6233,\n  \"ðŁĴĽðŁĴĻ</w>\": 36337,\n  \"ðŁĴĽðŁĴļ\": 37994,\n  \"ðŁĴĽðŁĴĽ\": 32420,\n  \"ðŁĴľ\": 6832,\n  \"ðŁĴľ</w>\": 4882,\n  \"ðŁĴľðŁĴľ\": 17280,\n  \"ðŁĴľðŁĴľ</w>\": 28211,\n  \"ðŁĴľðŁĴľðŁĴľ</w>\": 31004,\n  \"ðŁĴĿ\": 36761,\n  \"ðŁĴĿ</w>\": 22002,\n  \"ðŁĴŀ\": 14862,\n  \"ðŁĴŀ</w>\": 8988,\n  \"ðŁĴŀðŁĴŀ</w>\": 36448,\n  \"ðŁĴŁ\": 49394,\n  \"ðŁĴŁ</w>\": 28828,\n  \"ðŁĴŃ</w>\": 33848,\n  \"ðŁĵ\": 1497,\n  \"ðŁĵ¢\": 46560,\n  \"ðŁĵ¢</w>\": 20901,\n  \"ðŁĵ£\": 48841,\n  \"ðŁĵ£</w>\": 21282,\n  \"ðŁĵ°:</w>\": 28952,\n  \"ðŁĵ°</w>\": 14985,\n  \"ðŁĵ±\": 36104,\n  \"ðŁĵ±</w>\": 20824,\n  \"ðŁĵ²</w>\": 19363,\n  \"ðŁĵ·\": 6966,\n  \"ðŁĵ·:</w>\": 8294,\n  \"ðŁĵ·</w>\": 5551,\n  \"ðŁĵ·@</w>\": 40032,\n  \"ðŁĵ¸\": 8401,\n  \"ðŁĵ¸:</w>\": 10379,\n  \"ðŁĵ¸</w>\": 6074,\n  \"ðŁĵ¸@</w>\": 39660,\n  \"ðŁĵ¹</w>\": 49251,\n  \"ðŁĵº\": 21792,\n  \"ðŁĵº:</w>\": 29728,\n  \"ðŁĵº</w>\": 10450,\n  \"ðŁĵ»\": 32711,\n  \"ðŁĵ»</w>\": 15882,\n  \"ðŁĵ½</w>\": 45361,\n  \"ðŁĵħ</w>\": 21277,\n  \"ðŁĵĨ</w>\": 23471,\n  \"ðŁĵĪ</w>\": 23359,\n  \"ðŁĵĬ</w>\": 22244,\n  \"ðŁĵĭ</w>\": 46351,\n  \"ðŁĵĮ</w>\": 22289,\n  \"ðŁĵį\": 25043,\n  \"ðŁĵį:</w>\": 36845,\n  \"ðŁĵį</w>\": 8903,\n  \"ðŁĵĸ\": 49003,\n  \"ðŁĵĸ</w>\": 23043,\n  \"ðŁĵļ\": 25433,\n  \"ðŁĵļ</w>\": 15566,\n  \"ðŁĵĿ\": 31888,\n  \"ðŁĵĿ:</w>\": 48398,\n  \"ðŁĵĿ</w>\": 15853,\n  \"ðŁĵŀ</w>\": 24022,\n  \"ðŁĶ\": 1428,\n  \"ðŁĶ¥\": 3191,\n  \"ðŁĶ¥#</w>\": 44354,\n  \"ðŁĶ¥</w>\": 3016,\n  \"ðŁĶ¥ðŁĶ¥\": 5692,\n  \"ðŁĶ¥ðŁĶ¥</w>\": 11771,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\": 11004,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥\": 23408,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\": 30989,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\": 48401,\n  \"ðŁĶ¥ðŁĶĹ</w>\": 35130,\n  \"ðŁĶª\": 47078,\n  \"ðŁĶª</w>\": 34545,\n  \"ðŁĶ«\": 38116,\n  \"ðŁĶ«</w>\": 20583,\n  \"ðŁĶ¬</w>\": 44227,\n  \"ðŁĶ®</w>\": 38077,\n  \"ðŁĶ´\": 12408,\n  \"ðŁĶ´</w>\": 10854,\n  \"ðŁĶ´âļªï¸ı\": 46879,\n  \"ðŁĶ´âļªï¸ı</w>\": 40055,\n  \"ðŁĶµ\": 17531,\n  \"ðŁĶµ</w>\": 17193,\n  \"ðŁĶµâļªï¸ı</w>\": 42412,\n  \"ðŁĶ¶\": 42880,\n  \"ðŁĶ¶</w>\": 36222,\n  \"ðŁĶ·</w>\": 37740,\n  \"ðŁĶ¸</w>\": 24200,\n  \"ðŁĶ¹</w>\": 19995,\n  \"ðŁĶº</w>\": 45561,\n  \"ðŁĶģ</w>\": 41299,\n  \"ðŁĶĬ\": 32580,\n  \"ðŁĶĬ</w>\": 20502,\n  \"ðŁĶİ</w>\": 44935,\n  \"ðŁĶĳ</w>\": 35127,\n  \"ðŁĶĴ</w>\": 44972,\n  \"ðŁĶĶ</w>\": 45753,\n  \"ðŁĶĹ\": 47475,\n  \"ðŁĶĹ</w>\": 14561,\n  \"ðŁĶĺ</w>\": 38995,\n  \"ðŁĶľ</w>\": 36011,\n  \"ðŁĶĿ\": 44387,\n  \"ðŁĶĿ</w>\": 29506,\n  \"ðŁķ\": 7692,\n  \"ðŁķº\": 33958,\n  \"ðŁķĬ\": 42624,\n  \"ðŁķĬ</w>\": 37760,\n  \"ðŁĸ\": 6269,\n  \"ðŁĸ¤\": 17603,\n  \"ðŁĸ¤</w>\": 10860,\n  \"ðŁĸ¥</w>\": 47990,\n  \"ðŁĹ\": 7045,\n  \"ðŁĹ£\": 33232,\n  \"ðŁĹ£</w>\": 18583,\n  \"ðŁĹ£ï¸ı</w>\": 37476,\n  \"ðŁĹĵ\": 34335,\n  \"ðŁĹĵ</w>\": 28773,\n  \"ðŁĹĵï¸ı</w>\": 39847,\n  \"ðŁĺ\": 668,\n  \"ðŁĺ¡\": 21968,\n  \"ðŁĺ¡</w>\": 17452,\n  \"ðŁĺ¡ðŁĺ¡\": 37223,\n  \"ðŁĺ¢\": 14308,\n  \"ðŁĺ¢</w>\": 9925,\n  \"ðŁĺ¢ðŁĺ¢\": 32923,\n  \"ðŁĺ¢ðŁĺ¢</w>\": 47921,\n  \"ðŁĺ£</w>\": 32718,\n  \"ðŁĺ¤\": 26872,\n  \"ðŁĺ¤</w>\": 20740,\n  \"ðŁĺ¥\": 38383,\n  \"ðŁĺ¥</w>\": 23951,\n  \"ðŁĺ¨</w>\": 38080,\n  \"ðŁĺ©\": 9051,\n  \"ðŁĺ©</w>\": 9494,\n  \"ðŁĺ©ðŁĺ©\": 22820,\n  \"ðŁĺ©ðŁĺ©</w>\": 38031,\n  \"ðŁĺ©ðŁĺ©ðŁĺ©</w>\": 49063,\n  \"ðŁĺª\": 38181,\n  \"ðŁĺª</w>\": 22243,\n  \"ðŁĺ«\": 25141,\n  \"ðŁĺ«</w>\": 22340,\n  \"ðŁĺ¬\": 23704,\n  \"ðŁĺ¬</w>\": 14549,\n  \"ðŁĺ®\": 40163,\n  \"ðŁĺ®</w>\": 21616,\n  \"ðŁĺ¯</w>\": 37858,\n  \"ðŁĺ°</w>\": 34728,\n  \"ðŁĺ±\": 10938,\n  \"ðŁĺ±</w>\": 9055,\n  \"ðŁĺ±ðŁĺ±\": 22061,\n  \"ðŁĺ±ðŁĺ±</w>\": 40767,\n  \"ðŁĺ±ðŁĺ±ðŁĺ±</w>\": 40909,\n  \"ðŁĺ²\": 40460,\n  \"ðŁĺ²</w>\": 24620,\n  \"ðŁĺ³\": 12047,\n  \"ðŁĺ³</w>\": 8223,\n  \"ðŁĺ³ðŁĺ³\": 32592,\n  \"ðŁĺ´\": 23527,\n  \"ðŁĺ´</w>\": 16415,\n  \"ðŁĺ´ðŁĺ´</w>\": 49307,\n  \"ðŁĺµ</w>\": 39368,\n  \"ðŁĺ¶</w>\": 35207,\n  \"ðŁĺ·\": 37943,\n  \"ðŁĺ·</w>\": 25759,\n  \"ðŁĺ¸</w>\": 36912,\n  \"ðŁĺ¹\": 26477,\n  \"ðŁĺ¹</w>\": 26573,\n  \"ðŁĺ¹ðŁĺ¹\": 46287,\n  \"ðŁĺº</w>\": 40613,\n  \"ðŁĺ»\": 15453,\n  \"ðŁĺ»</w>\": 12911,\n  \"ðŁĺ»ðŁĺ»\": 34414,\n  \"ðŁĺ¼</w>\": 44245,\n  \"ðŁĺ½</w>\": 45156,\n  \"ðŁĺĢ\": 12832,\n  \"ðŁĺĢ</w>\": 7334,\n  \"ðŁĺĢðŁĺĢ</w>\": 34503,\n  \"ðŁĺģ\": 6967,\n  \"ðŁĺģ</w>\": 4821,\n  \"ðŁĺģðŁĺģ\": 37900,\n  \"ðŁĺģðŁĺģ</w>\": 19213,\n  \"ðŁĺģðŁĺģðŁĺģ</w>\": 29083,\n  \"ðŁĺĤ\": 1424,\n  \"ðŁĺĤ)</w>\": 42643,\n  \"ðŁĺĤ.</w>\": 42550,\n  \"ðŁĺĤ</w>\": 1558,\n  \"ðŁĺĤâĿ¤ï¸ı</w>\": 36412,\n  \"ðŁĺĤðŁĳĮ</w>\": 42000,\n  \"ðŁĺĤðŁĺĤ\": 2286,\n  \"ðŁĺĤðŁĺĤ</w>\": 4112,\n  \"ðŁĺĤðŁĺĤðŁĺĤ\": 22233,\n  \"ðŁĺĤðŁĺĤðŁĺĤ</w>\": 4887,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ\": 9936,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 11522,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 19295,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 33415,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 48973,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ\": 28504,\n  \"ðŁĺĤðŁĺį</w>\": 43128,\n  \"ðŁĺĤðŁĺŃ\": 28965,\n  \"ðŁĺĤðŁĺŃ</w>\": 25802,\n  \"ðŁĺĥ\": 14079,\n  \"ðŁĺĥ</w>\": 8520,\n  \"ðŁĺĥðŁĺĥ</w>\": 38358,\n  \"ðŁĺĦ\": 12141,\n  \"ðŁĺĦ</w>\": 7624,\n  \"ðŁĺĦðŁĺĦ</w>\": 32312,\n  \"ðŁĺħ\": 15245,\n  \"ðŁĺħ</w>\": 9188,\n  \"ðŁĺħðŁĺħ</w>\": 39078,\n  \"ðŁĺĨ\": 16541,\n  \"ðŁĺĨ</w>\": 10943,\n  \"ðŁĺĨðŁĺĨ</w>\": 39503,\n  \"ðŁĺĩ\": 21694,\n  \"ðŁĺĩ</w>\": 13091,\n  \"ðŁĺĪ\": 14377,\n  \"ðŁĺĪ</w>\": 9756,\n  \"ðŁĺĪðŁĺĪ</w>\": 44473,\n  \"ðŁĺī\": 9740,\n  \"ðŁĺī</w>\": 4955,\n  \"ðŁĺīðŁĺī</w>\": 40430,\n  \"ðŁĺĬ\": 4692,\n  \"ðŁĺĬ</w>\": 3020,\n  \"ðŁĺĬâĿ¤ï¸ı</w>\": 43606,\n  \"ðŁĺĬðŁĺĬ\": 12838,\n  \"ðŁĺĬðŁĺĬ</w>\": 20842,\n  \"ðŁĺĬðŁĺĬðŁĺĬ</w>\": 28685,\n  \"ðŁĺĬðŁĺĬðŁĺĬðŁĺĬ\": 35519,\n  \"ðŁĺĭ\": 12391,\n  \"ðŁĺĭ</w>\": 7203,\n  \"ðŁĺĭðŁĺĭ</w>\": 33304,\n  \"ðŁĺĮ\": 19221,\n  \"ðŁĺĮ</w>\": 12163,\n  \"ðŁĺį\": 1796,\n  \"ðŁĺį#</w>\": 42357,\n  \"ðŁĺį.</w>\": 48579,\n  \"ðŁĺį</w>\": 1754,\n  \"ðŁĺįâĿ¤</w>\": 29122,\n  \"ðŁĺįâĿ¤ï¸ı</w>\": 21945,\n  \"ðŁĺįðŁĳĮ</w>\": 41005,\n  \"ðŁĺįðŁĴķ</w>\": 35946,\n  \"ðŁĺįðŁĶ¥</w>\": 46648,\n  \"ðŁĺįðŁĺĤ</w>\": 48715,\n  \"ðŁĺįðŁĺį\": 3663,\n  \"ðŁĺįðŁĺį</w>\": 6471,\n  \"ðŁĺįðŁĺįðŁĺį\": 30614,\n  \"ðŁĺįðŁĺįðŁĺį</w>\": 7703,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺį\": 16603,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺį</w>\": 18925,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺįðŁĺį</w>\": 32078,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺį\": 48683,\n  \"ðŁĺįðŁĺĺ\": 29646,\n  \"ðŁĺįðŁĺĺ</w>\": 19849,\n  \"ðŁĺįðŁĺŃ</w>\": 39555,\n  \"ðŁĺİ\": 7426,\n  \"ðŁĺİ</w>\": 4345,\n  \"ðŁĺİðŁĺİ</w>\": 24048,\n  \"ðŁĺİðŁĺİðŁĺİ</w>\": 39742,\n  \"ðŁĺı\": 11624,\n  \"ðŁĺı</w>\": 6909,\n  \"ðŁĺıðŁĺı</w>\": 38151,\n  \"ðŁĺĲ\": 38586,\n  \"ðŁĺĲ</w>\": 19618,\n  \"ðŁĺĳ\": 32469,\n  \"ðŁĺĳ</w>\": 18937,\n  \"ðŁĺĴ\": 20792,\n  \"ðŁĺĴ</w>\": 11702,\n  \"ðŁĺĵ</w>\": 28733,\n  \"ðŁĺĶ\": 19532,\n  \"ðŁĺĶ</w>\": 11432,\n  \"ðŁĺķ\": 45741,\n  \"ðŁĺķ</w>\": 20602,\n  \"ðŁĺĸ</w>\": 35006,\n  \"ðŁĺĺ\": 4240,\n  \"ðŁĺĺ</w>\": 3352,\n  \"ðŁĺĺâĿ¤</w>\": 48409,\n  \"ðŁĺĺâĿ¤ï¸ı</w>\": 39150,\n  \"ðŁĺĺðŁĺį</w>\": 38176,\n  \"ðŁĺĺðŁĺĺ\": 15663,\n  \"ðŁĺĺðŁĺĺ</w>\": 10507,\n  \"ðŁĺĺðŁĺĺðŁĺĺ</w>\": 20208,\n  \"ðŁĺĺðŁĺĺðŁĺĺðŁĺĺ</w>\": 44892,\n  \"ðŁĺĻ\": 36201,\n  \"ðŁĺĻ</w>\": 29209,\n  \"ðŁĺļ\": 24897,\n  \"ðŁĺļ</w>\": 19102,\n  \"ðŁĺĽ\": 24550,\n  \"ðŁĺĽ</w>\": 15745,\n  \"ðŁĺľ\": 13226,\n  \"ðŁĺľ</w>\": 7830,\n  \"ðŁĺľðŁĺľ</w>\": 43065,\n  \"ðŁĺĿ\": 20064,\n  \"ðŁĺĿ</w>\": 12970,\n  \"ðŁĺŀ\": 40458,\n  \"ðŁĺŀ</w>\": 21103,\n  \"ðŁĺŁ</w>\": 46947,\n  \"ðŁĺł</w>\": 34094,\n  \"ðŁĺŃ\": 2962,\n  \"ðŁĺŃ</w>\": 3915,\n  \"ðŁĺŃâĿ¤ï¸ı</w>\": 29567,\n  \"ðŁĺŃðŁĴķ</w>\": 46306,\n  \"ðŁĺŃðŁĺĤ</w>\": 38505,\n  \"ðŁĺŃðŁĺį</w>\": 36893,\n  \"ðŁĺŃðŁĺŃ\": 5300,\n  \"ðŁĺŃðŁĺŃ</w>\": 11834,\n  \"ðŁĺŃðŁĺŃðŁĺŃ\": 44089,\n  \"ðŁĺŃðŁĺŃðŁĺŃ</w>\": 13116,\n  \"ðŁĺŃðŁĺŃðŁĺŃðŁĺŃ\": 19793,\n  \"ðŁĺŃðŁĺŃðŁĺŃðŁĺŃ</w>\": 27322,\n  \"ðŁĺŃðŁĺŃðŁĺŃðŁĺŃðŁĺŃ</w>\": 43366,\n  \"ðŁĻ\": 1478,\n  \"ðŁĻĢ</w>\": 43092,\n  \"ðŁĻĤ\": 32006,\n  \"ðŁĻĤ</w>\": 14860,\n  \"ðŁĻĥ\": 27222,\n  \"ðŁĻĥ</w>\": 15652,\n  \"ðŁĻĦ\": 20648,\n  \"ðŁĻĦ</w>\": 13049,\n  \"ðŁĻħ\": 42702,\n  \"ðŁĻĨ\": 30050,\n  \"ðŁĻĨ</w>\": 35730,\n  \"ðŁĻĪ\": 12661,\n  \"ðŁĻĪ</w>\": 9516,\n  \"ðŁĻĪðŁĻĪ</w>\": 41796,\n  \"ðŁĻĬ\": 23684,\n  \"ðŁĻĬ</w>\": 16636,\n  \"ðŁĻĭ\": 19193,\n  \"ðŁĻĭ</w>\": 30274,\n  \"ðŁĻĮ\": 4366,\n  \"ðŁĻĮ</w>\": 4855,\n  \"ðŁĻĮðŁı»\": 26756,\n  \"ðŁĻĮðŁı»</w>\": 15799,\n  \"ðŁĻĮðŁı¼\": 26584,\n  \"ðŁĻĮðŁı¼</w>\": 15364,\n  \"ðŁĻĮðŁı½\": 36660,\n  \"ðŁĻĮðŁı½</w>\": 22962,\n  \"ðŁĻĮðŁı¾\": 38023,\n  \"ðŁĻĮðŁı¾</w>\": 26466,\n  \"ðŁĻĮðŁĻĮ\": 21202,\n  \"ðŁĻĮðŁĻĮ</w>\": 30430,\n  \"ðŁĻĮðŁĻĮðŁĻĮ</w>\": 37127,\n  \"ðŁĻı\": 4260,\n  \"ðŁĻı</w>\": 5503,\n  \"ðŁĻıðŁı»\": 25100,\n  \"ðŁĻıðŁı»</w>\": 16650,\n  \"ðŁĻıðŁı¼\": 31163,\n  \"ðŁĻıðŁı¼</w>\": 18952,\n  \"ðŁĻıðŁı½\": 34103,\n  \"ðŁĻıðŁı½</w>\": 21540,\n  \"ðŁĻıðŁı¾\": 34277,\n  \"ðŁĻıðŁı¾</w>\": 21979,\n  \"ðŁĻıðŁĻı\": 18227,\n  \"ðŁĻıðŁĻı</w>\": 26510,\n  \"ðŁĻıðŁĻıðŁĻı</w>\": 31702,\n  \"ðŁļ\": 2730,\n  \"ðŁļ¨\": 12198,\n  \"ðŁļ¨</w>\": 6056,\n  \"ðŁļ¨ðŁļ¨\": 36487,\n  \"ðŁļ¨ðŁļ¨</w>\": 21440,\n  \"ðŁļ¨ðŁļ¨ðŁļ¨</w>\": 41515,\n  \"ðŁļ©</w>\": 44514,\n  \"ðŁļ«</w>\": 35291,\n  \"ðŁļ²</w>\": 37085,\n  \"ðŁļ´\": 30825,\n  \"ðŁļ¶\": 46060,\n  \"ðŁļĢ\": 22400,\n  \"ðŁļĢ</w>\": 13542,\n  \"ðŁļĢðŁļĢ\": 49033,\n  \"ðŁļĤ</w>\": 38949,\n  \"ðŁļĮ</w>\": 46891,\n  \"ðŁļĹ\": 33054,\n  \"ðŁļĹ</w>\": 22783,\n  \"ðŁļĺ</w>\": 35825,\n  \"ðŁļĻ</w>\": 48487,\n  \"ðŁĽ\": 11306,\n  \"ñ\": 173,\n  \"ñ</w>\": 429,\n  \"ò\": 174,\n  \"ò</w>\": 430,\n  \"ó\": 175,\n  \"ó</w>\": 431,\n  \"ô\": 176,\n  \"ô</w>\": 432,\n  \"õ\": 177,\n  \"õ</w>\": 433,\n  \"ö\": 178,\n  \"ö</w>\": 434,\n  \"÷\": 179,\n  \"÷</w>\": 435,\n  \"ø\": 180,\n  \"ø</w>\": 436,\n  \"ù\": 181,\n  \"ù</w>\": 437,\n  \"ú\": 182,\n  \"ú</w>\": 438,\n  \"û\": 183,\n  \"û</w>\": 439,\n  \"ü\": 184,\n  \"ü</w>\": 440,\n  \"ý\": 185,\n  \"ý</w>\": 441,\n  \"þ\": 186,\n  \"þ</w>\": 442,\n  \"ÿ\": 187,\n  \"ÿ</w>\": 443,\n  \"Ā\": 188,\n  \"Ā</w>\": 444,\n  \"ā\": 189,\n  \"ā</w>\": 445,\n  \"Ă\": 190,\n  \"Ă</w>\": 446,\n  \"ă\": 191,\n  \"ă</w>\": 447,\n  \"Ą\": 192,\n  \"Ą</w>\": 448,\n  \"ą\": 193,\n  \"ą</w>\": 449,\n  \"Ć\": 194,\n  \"Ć</w>\": 450,\n  \"ć\": 195,\n  \"ć</w>\": 451,\n  \"Ĉ\": 196,\n  \"Ĉ</w>\": 452,\n  \"ĉ\": 197,\n  \"ĉ</w>\": 453,\n  \"Ċ\": 198,\n  \"Ċ</w>\": 454,\n  \"ċ\": 199,\n  \"ċ</w>\": 455,\n  \"Č\": 200,\n  \"Č</w>\": 456,\n  \"č\": 201,\n  \"č</w>\": 457,\n  \"Ď\": 202,\n  \"Ď</w>\": 458,\n  \"ď\": 203,\n  \"ď</w>\": 459,\n  \"Đ\": 204,\n  \"Đ</w>\": 460,\n  \"đ\": 205,\n  \"đ</w>\": 461,\n  \"Ē\": 206,\n  \"Ē</w>\": 462,\n  \"ē\": 207,\n  \"ē</w>\": 463,\n  \"Ĕ\": 208,\n  \"Ĕ</w>\": 464,\n  \"ĕ\": 209,\n  \"ĕ</w>\": 465,\n  \"Ė\": 210,\n  \"Ė</w>\": 466,\n  \"ė\": 211,\n  \"ė</w>\": 467,\n  \"Ę\": 212,\n  \"Ę</w>\": 468,\n  \"ę\": 213,\n  \"ę</w>\": 469,\n  \"Ě\": 214,\n  \"Ě</w>\": 470,\n  \"ě\": 215,\n  \"ě</w>\": 471,\n  \"Ĝ\": 216,\n  \"Ĝ</w>\": 472,\n  \"ĝ\": 217,\n  \"ĝ</w>\": 473,\n  \"Ğ\": 218,\n  \"Ğ</w>\": 474,\n  \"ğ\": 219,\n  \"ğ</w>\": 475,\n  \"Ġ\": 220,\n  \"Ġ</w>\": 476,\n  \"ġ\": 221,\n  \"ġ</w>\": 477,\n  \"Ģ\": 222,\n  \"Ģ</w>\": 478,\n  \"Ģï¸ı\": 9668,\n  \"Ģï¸ı</w>\": 5511,\n  \"ģ\": 223,\n  \"ģ</w>\": 479,\n  \"ģà¸\": 15016,\n  \"Ĥ\": 224,\n  \"Ĥ</w>\": 480,\n  \"Ĥâĸ\": 29036,\n  \"ĤâĸĤâĸ\": 30832,\n  \"ĥ\": 225,\n  \"ĥ</w>\": 481,\n  \"Ħ\": 226,\n  \"Ħ</w>\": 482,\n  \"Ħà¸\": 20537,\n  \"Ħë\": 34462,\n  \"Ħëĭ\": 25170,\n  \"ħ\": 227,\n  \"ħ</w>\": 483,\n  \"ħï¸ı</w>\": 33950,\n  \"Ĩ\": 228,\n  \"Ĩ</w>\": 484,\n  \"ĩ\": 229,\n  \"ĩ</w>\": 485,\n  \"Ī\": 230,\n  \"Ī</w>\": 486,\n  \"ī\": 231,\n  \"ī</w>\": 487,\n  \"īï¸ı</w>\": 37463,\n  \"Ĭ\": 232,\n  \"Ĭ</w>\": 488,\n  \"Ĭãģ\": 30294,\n  \"ĭ\": 233,\n  \"ĭ</w>\": 489,\n  \"ĭãģ\": 36218,\n  \"ĭãĤ\": 45737,\n  \"Į\": 234,\n  \"Į</w>\": 490,\n  \"ĮãĤĬãģ\": 45969,\n  \"ĮãĤĬãģŁãģĦ</w>\": 47021,\n  \"Įë\": 17003,\n  \"į\": 235,\n  \"į</w>\": 491,\n  \"İ\": 236,\n  \"İ</w>\": 492,\n  \"ı\": 237,\n  \"ı</w>\": 493,\n  \"Ĳ\": 238,\n  \"Ĳ</w>\": 494,\n  \"ĳ\": 239,\n  \"ĳ</w>\": 495,\n  \"Ĵ\": 240,\n  \"Ĵ</w>\": 496,\n  \"ĵ\": 241,\n  \"ĵ</w>\": 497,\n  \"Ķ\": 242,\n  \"Ķ</w>\": 498,\n  \"Ķë\": 37978,\n  \"Ķï¸ı\": 24395,\n  \"Ķï¸ı</w>\": 7443,\n  \"ķ\": 243,\n  \"ķ</w>\": 499,\n  \"ķãĤ\": 26609,\n  \"ķï¸ı</w>\": 44853,\n  \"ĸ\": 244,\n  \"ĸ</w>\": 500,\n  \"ĸï¸ı</w>\": 28877,\n  \"Ĺ\": 245,\n  \"Ĺ</w>\": 501,\n  \"ĺ\": 246,\n  \"ĺ</w>\": 502,\n  \"Ļ\": 247,\n  \"Ļ</w>\": 503,\n  \"ļ\": 248,\n  \"ļ</w>\": 504,\n  \"Ľ\": 249,\n  \"Ľ</w>\": 505,\n  \"ľ\": 250,\n  \"ľ</w>\": 506,\n  \"ľë\": 39810,\n  \"Ŀ\": 251,\n  \"Ŀ</w>\": 507,\n  \"ŀ\": 252,\n  \"ŀ</w>\": 508,\n  \"Ł\": 253,\n  \"Ł</w>\": 509,\n  \"ŁãģĦ</w>\": 46023,\n  \"ł\": 254,\n  \"ł</w>\": 510,\n  \"łï¸ı\": 27899,\n  \"łï¸ı</w>\": 12715,\n  \"łĪ\": 43364,\n  \"Ń\": 255,\n  \"Ń</w>\": 511\n}\n"
  },
  {
    "path": "configs/sd3/tokenizer_2/merges.txt",
    "content": "#version: 0.2\ni n\nt h\na n\nr e\na r\ne r\nth e</w>\nin g</w>\no u\no n\ns t\no r\ne n\no n</w>\na l\na t\ne r</w>\ni t\ni n</w>\nt o</w>\nr o\ni s</w>\nl e\ni c\na t</w>\nan d</w>\ne d</w>\no f</w>\nc h\no r</w>\ne s</w>\ni l\ne l\ns t</w>\na c\no m\na m\nl o\na n</w>\na y</w>\ns h\nr i\nl i\nt i\nf or</w>\nn e\nð Ł\nr a\nh a\nd e\no l\nv e</w>\ns i\nu r\na l</w>\ns e\n' s</w>\nu n\nd i\nb e\nl a\nw h\no o\nd ay</w>\ne n</w>\nm a\nn o\nl e</w>\nt o\nou r</w>\ni r\ng h\nw it\ni t</w>\ny o\na s\ns p\nth is</w>\nt s</w>\nat i\nyo u</w>\nwit h</w>\na d\ni s\na b\nl y</w>\nw e\nth e\nt e\na s</w>\na g\nv i\np p\ns u\nh o\nm y</w>\n. .\nb u\nc om\ns e</w>\ner s</w>\nm e\nm e</w>\nal l</w>\nc on\nm o\nk e</w>\ng e\nou t</w>\nen t</w>\nc o\nf e\nv er\na r</w>\nf ro\na u\np o\nc e</w>\ngh t</w>\nar e</w>\ns s</w>\nfro m</w>\nc h</w>\nt r\nou n\non e</w>\nb y</w>\nd o\nt h</w>\nw or\ner e</w>\nk e\np ro\nf or\nd s</w>\nb o\nt a\nw e</w>\ng o\nh e\nt er</w>\nin g\nd e</w>\nb e</w>\nati on</w>\nm or\na y\ne x\nil l</w>\np e\nk s</w>\ns c\nl u\nf u\nq u\nv er</w>\nðŁ ĺ\nj u\nm u\nat e</w>\nan d\nv e\nk ing</w>\nm ar\no p\nh i\n.. .</w>\np re\na d</w>\nr u\nth at</w>\nj o\no f\nc e\nne w</w>\na m</w>\na p\ng re\ns s\nd u\nno w</w>\ny e\nt ing</w>\ny our</w>\nit y</w>\nn i\nc i\np ar\ng u\nf i\na f\np er\nt er\nu p</w>\ns o</w>\ng i\non s</w>\ng r\ng e</w>\nb r\np l\n' t</w>\nm i\nin e</w>\nwe e\nb i\nu s</w>\nsh o\nha ve</w>\nto day</w>\na v\nm an\nen t\nac k</w>\nur e</w>\nou r\nâ Ģ\nc u\nl d</w>\nlo o\ni m\nic e</w>\ns om\nf in\nre d</w>\nre n\noo d</w>\nw as</w>\nti on</w>\np i\ni r</w>\nth er</w>\nt y</w>\np h\nar d</w>\ne c\n! !</w>\nm on\nmor e</w>\nw ill</w>\nt ra\nc an</w>\nc ol\np u\nt e</w>\nw n</w>\nm b\ns o\nit i\nju st</w>\nn ing</w>\nh ere</w>\nt u\np a\np r\nbu t</w>\nwh at</w>\nal ly</w>\nf ir\nm in\nc a\nan t</w>\ns a\nt ed</w>\ne v\nm ent</w>\nf a\nge t</w>\nam e</w>\nab out</w>\ng ra\nno t</w>\nha pp\nay s</w>\nm an</w>\nh is</w>\nti me</w>\nli ke</w>\ng h</w>\nha s</w>\nth an\nlo ve</w>\nar t</w>\nst e\nd ing</w>\nh e</w>\nc re\nw s</w>\nw at\nd er</w>\nit e</w>\ns er\nac e</w>\nag e</w>\nen d</w>\nst r\na w\nst or\nr e</w>\nc ar\nel l</w>\nal l\np s</w>\nf ri\np ho\np or\nd o</w>\na k\nw i\nf re\nwh o</w>\nsh i\nb oo\ns on</w>\nel l\nwh en</w>\nil l\nho w</w>\ngre at</w>\nw in\ne l</w>\nb l\ns si\nal i\nsom e</w>\nðŁ Ĵ\nt on\nd er\nle s</w>\np la\nï ¸\ne d\ns ch\nh u\non g</w>\nd on</w>\nk i\ns h</w>\nan n\nc or\n. .</w>\noun d</w>\na z\nin e\nar y</w>\nfu l</w>\nst u\nou ld</w>\nst i\ng o</w>\nse e</w>\nab le</w>\nar s</w>\nl l</w>\nm is\nb er\nc k</w>\nw a\nen ts</w>\nn o</w>\nsi g\nf e</w>\nfir st</w>\ne t</w>\nsp e\nac k\ni f</w>\nou s</w>\n' m</w>\nst er</w>\na pp\nan g\nan ce</w>\nan s</w>\ng ood</w>\nb re\ne ver\nthe y</w>\nt ic\ncom e</w>\nof f\nb ack</w>\nas e</w>\ning s</w>\nol d</w>\ni ght</w>\nf o\nh er</w>\nhapp y</w>\np ic\nit s</w>\nv ing</w>\nu s\nm at\nh om\nd y</w>\ne m\ns k\ny ing</w>\nthe ir</w>\nle d</w>\nr y</w>\nu l\nh ar\nc k\nt on</w>\non al</w>\nh el\nr ic\nb ir\nvi e\nw ay</w>\nt ri\nd a\np le\nb ro\nst o\noo l</w>\nni ght</w>\ntr u\nb a\nre ad\nre s</w>\nye ar</w>\nf r\nt or\nal s</w>\nc oun\nc la\nt ure</w>\nv el\nat ed</w>\nle c\nen d\nth ing</w>\nv o\nic i\nbe st</w>\nc an\nwor k</w>\nla st</w>\naf ter</w>\nen ce</w>\np ri\np e</w>\ne s\ni l</w>\nâĢ ¦</w>\nd re\ny s</w>\no ver</w>\ni es</w>\nðŁ ĳ\ncom m\nt w\nin k</w>\ns un\nc l\nli fe</w>\nt t\na ch\nl and</w>\ns y\nt re\nt al\np ol\ns m\ndu c\ns al\nf t</w>\n' re</w>\nch e\nw ar\nt ur\nati ons</w>\nac h</w>\nm s</w>\nil e</w>\np m</w>\nou gh</w>\nat e\nst ar\nwee k</w>\n! !!</w>\nc lu\nth ere</w>\nn er</w>\nt om\ns el\nï¸ ı</w>\nwor ld</w>\nv es</w>\nc am\ngo t</w>\nin ter\nof f</w>\nu m</w>\nton ight</w>\no ther</w>\nh ou\nloo k</w>\nj e\ni d</w>\nsi on</w>\nbe au\nat t\nel i\nor t</w>\nre c\nf f\nst er\nsu pp\ng en\nbe en</w>\nil y</w>\nte am</w>\nm m\ni c</w>\npe op\nit t\nat s</w>\non ly</w>\nmb er</w>\nen g\nb ri\nm p\nk now</w>\nb ur\nb ar\nin s</w>\nlo w</w>\nsh e</w>\nro w</w>\nâ Ŀ\nt ro\npeop le</w>\nvi a</w>\nlo w\nag a\nbe t\nx t</w>\nf ac\nch ar\ne ar\nw al\ns en\nf am\nb le</w>\nn ati\nis h</w>\nn or\ng ame</w>\nli ve</w>\ns co\nle y</w>\nd on\nic k</w>\nb all</w>\nver y</w>\nthe se</w>\np an\ni a</w>\nat ing</w>\nc r\na re\ng ir\nma ke</w>\nst re\nsho w</w>\n. \"</w>\nf l\nu p\nd r\nthan ks</w>\nil li\nw om\nst s</w>\ni g\ns ur\never y\nc ur\nvie w</w>\nle t</w>\nin to</w>\nmo st</w>\nn a\nin di\ng ar\nha d</w>\ns ou\nv ed</w>\nan t\niti on</w>\nma de</w>\nf ol\nun i\nit ed</w>\nðŁ ı\nic al</w>\nth r\nread y</w>\nch ec\nd ra\nk es</w>\nboo k</w>\ne p</w>\nsi c</w>\nmor ning</w>\nne ws</w>\nc au\nc t</w>\nw ell</w>\nan c\npho to</w>\nth an</w>\nor s</w>\nbir th\ng g\nou t\nne xt</w>\nsom e\nen ing</w>\nstor y</w>\nch ri\ndo wn</w>\nhom e</w>\nf fe\nfre e</w>\nd a</w>\nb or\nf il\nci al</w>\nthan k</w>\nsi de</w>\nle ar\nqu e\nl ine</w>\nt en\nat es</w>\nye ars</w>\nm y\npho to\nbeau ti\nri ght</w>\nn u\nfor m\nshi p</w>\nb an\nth er\nd ays</w>\ng am\nas on</w>\ng y</w>\nðŁ İ\nbirth day</w>\nse t</w>\nic k\ne t\nst ill</w>\ncom ing</w>\nta ke</w>\nðŁ ĩ\nb b\ns ol\ns on\nd en\ne p\nmu sic</w>\nthe m</w>\nde n</w>\nwh y</w>\nf oo\nc ra\nam az\nw n\nh ol\nt ting</w>\nw r\nu e</w>\nma g\nc ro\nl an\nc lo\nb ra\na k</w>\ns ing</w>\nc al\nre ad</w>\n' ve</w>\njo h\nb ab\nd ri\nb lo\nbi g</w>\ner ic\nin t</w>\nt or</w>\ntr y</w>\nl a</w>\nle g\nhou se</w>\nm ic\nv al\nbeauti ful</w>\nl itt\nchec k</w>\nne w\nver s\ns w\nar i\npla y\nh er\nâĢ ĵ</w>\nw in</w>\nm a</w>\ncon gr\nsch ool</w>\nf un\n. @</w>\nhe al\nic h</w>\nd el\nwh ere</w>\nl on\nke t</w>\ntw o</w>\nmu ch</w>\nwat ch</w>\nv en\nd ed</w>\na st</w>\nk ed</w>\nb as\ngo ing</w>\nm p</w>\ne ver</w>\nw ays</w>\nro o\nde sig\nl y\ns ed</w>\nto p</w>\nl in\nch an\nto o</w>\nit ing</w>\nd ent</w>\ngh ts</w>\nt y\nsp o\nne ed</w>\nb lu\nin st\nbe ing</w>\nâĿ ¤\nw el\nl s</w>\nhi m</w>\nm ay</w>\nst ing</w>\nn a</w>\nel y</w>\nlitt le</w>\ng a\nn at\ntom or\nm c\nh on\nw ant</w>\na ir\npi c</w>\nam eric\np er</w>\nle ss</w>\nwee k\nve l</w>\na h</w>\nc ap\nch am\ng er\nti m\ntomor row</w>\nne ss</w>\nst ate</w>\nh al\nser v\nz e</w>\no s</w>\np at\nv is\nex c\ns in\nf f</w>\nc ity</w>\nc en\nan y\nb el\nsu mm\nt in\nw ould</w>\nloo king</w>\nk o\nce le\nfam ily</w>\nm er\npo w\nhel p</w>\nbu s\nc o</w>\nc le\nsel f</w>\nen s</w>\nic s</w>\nth o\nan i\nch o\nle ad\nb s</w>\nt wee\nth ink</w>\nfor e</w>\nch il\nvi de\ndi d</w>\nal e</w>\nch i\nv il\nen ds</w>\nw ing</w>\np as\n' ll</w>\nv ol\ns a</w>\ng s</w>\nman y</w>\nj ec\nbe fore</w>\ngra ph\nn y</w>\nur ing</w>\nw il\nd d\nbu il\nf av\nst ed</w>\ntr an\nl ing</w>\nou d</w>\nd ge</w>\nfi el\nnati onal</w>\nst a\nc er\nw ere</w>\nin a</w>\nse ason</w>\nc ou\nn ed</w>\namaz ing</w>\nti ons</w>\ncele br\nn s</w>\na th\nhe ad</w>\ns day</w>\nd ar\nlo c\nv in\nan other</w>\ng oo\ns at\nn y\njo in</w>\npre s\ns es</w>\ns ing\nan a</w>\nin ing</w>\n.. ..</w>\nc our\nï¸ ı\nac t</w>\ncau se</w>\nli ght</w>\nam s</w>\nt a</w>\nb al\nf c</w>\nhi gh</w>\noff ici\nt t</w>\nchri st\nd ic\nd ay\nra l</w>\nh or\n: )</w>\nvi si\nn am\no b\nma s</w>\ngh t\nre ally</w>\nt un\nfin d</w>\nthr ough</w>\npor t</w>\nu t\nti ve</w>\nst y\nn e</w>\nor e</w>\nðŁĺ Ĥ\nsupp ort</w>\nne ver</w>\nev en</w>\nðŁ Ķ\nh a</w>\ny a</w>\nl d\nu k</w>\nr an\nj am\nwi th\nme di\nd es</w>\nne y</w>\nch ing</w>\nal e\nh y\nk in\n! !\nd y\npl ace</w>\nal so</w>\nb le\nwh ich</w>\nbl ack</w>\nb li\ns ay</w>\npar k</w>\npl ay</w>\nir e</w>\nvide o</w>\nweek end</w>\na il\nke y</w>\np t</w>\nw ard</w>\nfri day</w>\nd in\nine ss</w>\ng ro\nb en\nal ways</w>\nt ball</w>\nag o</w>\nm il\nc y\npro duc\ndi sc\nun der\nple ase</w>\nsp or\nfu ll</w>\ne y</w>\nðŁ Ļ\nis e</w>\niti es</w>\nc at\nk no\nu se</w>\nfo re\nk er</w>\nar t\nhi gh\nop en</w>\ns an\ne f\nour s</w>\nsh ed</w>\nst ri\nd ro\naga in</w>\ni m</w>\nðŁ ĵ\nen jo\nfu n</w>\nge tting</w>\np en\ng er</w>\nc li\nan y</w>\never y</w>\ne u\nwom en</w>\nâ ľ\ne st</w>\nc ould</w>\nr y\n\" @</w>\nth ou\nsh a\ncomm un\nb er</w>\nd ents</w>\ndi s\nwh ile</w>\naw ay</w>\ndi o</w>\nh am\ng la\nd ate</w>\nk a</w>\nmis s</w>\nun ch</w>\nw on\nin f\nroo m</w>\ng a</w>\nre al</w>\nex per\ndi rec\nsh ould</w>\nsp r\ng ol\nl ong</w>\nbet ter</w>\nor i\ne y\ni ence</w>\nil s</w>\nz z\nh an\nf ound</w>\nv s</w>\nâ Ļ\npo st</w>\nti c</w>\npar t</w>\nm en\nren ce</w>\nce ss</w>\nv ic\ns il\nsho p</w>\nðŁĺ Ĥ</w>\nf ood</w>\nv al</w>\nsti c</w>\ny ou\ns ays</w>\ne lec\nst ar</w>\no c\nl and\ni d\nc tion</w>\nfiel d</w>\ns of\nst art</w>\nwat er</w>\nfri ends</w>\non es</w>\nðŁ Į\nf la\nf ar\nwh ite</w>\npar ty</w>\nin st</w>\ngr ou\nt v</w>\nevery one</w>\nm ent\nj a\nch a\npr in\nan ts</w>\nd uring</w>\nl at\nl ar\nwe st</w>\nth en</w>\nk a\ny oun\nin sp\nin te\nwe en</w>\nvisi t</w>\naga inst</w>\nre le\nhe ad\nc es</w>\nto wn</w>\nloo ks</w>\nth re\nre gi\nren t</w>\npro jec\ngir l</w>\nse ar\nw o\nm om\nc ar</w>\nh un\npu bli\nd i</w>\np le</w>\nc all</w>\nc ri\nu m\nfor d</w>\nper fe\nfri end</w>\nh ard</w>\nssi on</w>\nte st</w>\npla ying</w>\nar ound</w>\nbe cause</w>\nke ts</w>\nme et</w>\nsat ur\nar ti\nwor k\nj un\nv en</w>\nr un\nme mber</w>\npor t\nsu per\nt wit\ns am\nel s</w>\nt ly</w>\nad v\nati ve</w>\nat h</w>\ns ure</w>\nav ail\nla r</w>\ns qu\nar ds</w>\nev ent</w>\nm en</w>\nl l\no ver\nlo gy</w>\nit al</w>\ntim es</w>\nm al\nb ack\nc oo\nma king</w>\nst ru\nâ ģ\nit u\nsh ar\ng an</w>\nc as\ns n\nsumm er</w>\npic ture</w>\nf an\nh in\nchrist mas</w>\nc y</w>\npr oud</w>\ncham pi\ndesig n</w>\npp ing</w>\nho pe</w>\nc a</w>\navail able</w>\nma y\nwe d\nphoto graph\nspe cial</w>\nsal e</w>\nsto p</w>\ner y</w>\na we\nal ity</w>\nhi story</w>\nam a</w>\npre si\nb ru\nwor king</w>\nd one</w>\nd r</w>\nk en</w>\nfe at\nw ood</w>\nate st</w>\nsun day</w>\nmo vi\nvel y</w>\ns le\nf ace</w>\nsp ec\nstu dents</w>\nb y\nha m</w>\nsp on\nbus iness</w>\nd at\ni e</w>\ni p\nso ci\ng lo\nh and\nre cor\nr s</w>\nme e\nke ep</w>\np ur\nheal th</w>\nsh e\ncom ple\ngo d</w>\nda vi\ncol lec\nli st\nr a</w>\nclu b</w>\nt ers</w>\nin clu\nth ings</w>\npl an\nâ ĺ\njoh n</w>\nsh ing</w>\nat ul\nso on</w>\nblu e</w>\ng or\nsatur day</w>\nw on</w>\ncongr atul\nse e\nâĿ¤ ï¸ı</w>\ntho se</w>\nðŁĺ į</w>\nfin al</w>\nd ou\nit h</w>\no wn</w>\nro ad</w>\nt our</w>\na st\nindi a</w>\nti l</w>\nn d</w>\nf er\nfav or\nsu l\nlear n</w>\nfir e</w>\nju st\ngrou p</w>\na h\nr ac\nbo dy</w>\nu r</w>\nc are</w>\nà ¸\np lo\no h</w>\npo s\ngi ve</w>\nte ch\nsu b\nc ent\ner ing</w>\ny m\nil ity</w>\nf ic\nlon don</w>\nv ir\ngu ys</w>\nb a</w>\nðŁ ¤\nbab y</w>\nsc re\nðŁĺ į\ntru mp</w>\nun der</w>\nchan ge</w>\ni an</w>\ncol le\nss es</w>\nl er</w>\nss ed</w>\nn ice</w>\nann oun\npow er</w>\ns ar\na king</w>\nmin i\ns li\ns wee\nk ar\nfu l\nc ru\nac tion</w>\na ther</w>\n) .</w>\nst and\nde vel\na a\ng an\nle ft</w>\nlo l</w>\nre l\ntran s\nm ents</w>\nin t\ne f</w>\nman ag\ndi g\ngen er\ndo wn\np au\nti v\nk u\nth ur\nk en\nst on</w>\nf ans</w>\ntal k</w>\ntwee t</w>\nt oo\nsty le</w>\npro te\nse con\nfr on\nawe some</w>\ng l\np al\nne t\ns or\nla u\ng on\nsin ce</w>\nt ty</w>\nser ies</w>\nme mor\nb eli\nfil m</w>\ndi d\ndi es</w>\no t\ncongratul ations</w>\np ra\ne ve</w>\nw oo\noffici al</w>\nsu c\nin cre\nb on\npar t\npp ed</w>\ncla ss</w>\nsi ve</w>\nbo y</w>\ncu l\nperfe ct</w>\nt ou\nd am\nwel come</w>\nfoo tball</w>\nh i</w>\np ap\nwa it</w>\nad a</w>\ncongr ats</w>\nyoun g</w>\nexc ited</w>\nre ce\nj an\nv a</w>\nre d\nst ra\nmedi a</w>\n' d</w>\ndo es</w>\nle t\nmu l\nill s</w>\ngre en</w>\nm el\nto ge\nfu ture</w>\nye ster\nvers ity</w>\nfor m</w>\nta in</w>\ni de\nch es</w>\nki ds</w>\nqu i\nha ha\nde ta\nbi g\nfavor ite</w>\ngir ls</w>\ncon tin\ndo m</w>\nsear ch</w>\nu al</w>\na ir</w>\nd ers</w>\nmon th</w>\nc er</w>\nyester day</w>\ncommun ity</w>\nad e</w>\ndo g</w>\nvil le</w>\nic es</w>\nd eli\nsy ste\nru n</w>\nis m</w>\nhe art</w>\nc up</w>\nen ti\nfe w</w>\npresi dent</w>\ne ds</w>\nun til</w>\nfe sti\no k\nf lo\nsa id</w>\nol e</w>\nme d\ntra vel</w>\nÂ £</w>\nph one</w>\ntoge ther</w>\nfa st</w>\nlo t</w>\ngam es</w>\nsh ir\nbet ween</w>\ny es</w>\nth ers</w>\ndo ing</w>\nm ac\nat or</w>\nb and</w>\nfol low\nprojec t</w>\ndevel op\ndi ffe\ncon fe\nspe ci\nca st</w>\ny s\nbo ard</w>\nr d</w>\ni al</w>\nsh oo\nr am\nha ving</w>\nsh are</w>\nfol low</w>\non e\nn ame</w>\nm r</w>\npu t</w>\ndisc u\nor y</w>\nc ame</w>\nou s\ns ite</w>\ntwit ter</w>\nt b\nt it\nfin ally</w>\nz ed</w>\nsu per</w>\ncom pan\nus ing</w>\nall s</w>\nli st</w>\nr is</w>\nsho t</w>\ng al\nt ar\nde l</w>\njoh n\nâĢ Ķ</w>\nsome thing</w>\nra m</w>\ninte re\nwh e\nb it</w>\nðŁ į\nstre et</w>\noun d\na i\ntic kets</w>\nmovi e</w>\nre al\nk y\nta king</w>\no pp\nc c</w>\nl am\nm oun\nin ve\nbl ack\nus ed</w>\non line</w>\ny or\nloc al</w>\ngu e\nc ks</w>\no w\nge st</w>\nbo ys</w>\nilli on</w>\ncon t\nre ci\nin ed</w>\neu ro\nno w\nse en</w>\np h</w>\nte ach\nde f\nsou th</w>\nsu ch</w>\naw ard</w>\nmu st</w>\nis su\nca re\nfe el</w>\np lu\nl atest</w>\nspor ts</w>\nwe b\nte x\ne ment</w>\ns k</w>\nfi c</w>\nw an\nte ch</w>\no t</w>\nbo x</w>\nn er\nfre e\nt al</w>\na sh\nc ase</w>\nho t</w>\nwon der\nmee ting</w>\ner a</w>\nch all\nðŁ Ĳ\njo b</w>\nil i\nc ool</w>\nj our\nth s</w>\nm o</w>\nf el\ndi e</w>\nmic ha\ne le\nte am\nserv ice</w>\nst and</w>\nma kes</w>\np ing</w>\near ly</w>\ncom es</w>\ne k</w>\nho li\nv ers</w>\nag ue</w>\ns au\nthre e</w>\nmon day</w>\nfa shi\nsome one</w>\nth ro\nse a</w>\nb ad</w>\nsupp or\ntur n</w>\nur y</w>\nm ing</w>\nphotograph y</w>\nn ic\nmar k</w>\npre tty</w>\nss ing</w>\nwat ching</w>\nme mb\nar ri\ncoun ty</w>\nbe ach</w>\nfr an\ncen ter</w>\npol ice</w>\nb at\npubli c</w>\nt an\npre ss</w>\ns af\ns y</w>\nge ts</w>\nro y\nn ers</w>\ny our\nbu y</w>\nst ers</w>\nsho w\nas ed</w>\nchil dre\naf ric\nin es</w>\nsp ace</w>\nsc ri\nh all</w>\npa in\nar ing</w>\nhom e\nm ur\nheal th\nch ed</w>\ns and\nrece i\ngu y</w>\ne a\nameric an</w>\nre si\nchildre n</w>\n- -\ni ri\ning ton</w>\ncoun try</w>\nro ss</w>\nle n</w>\nann a</w>\nboo ks</w>\nb c</w>\ne ce</w>\nd om\nlo vely</w>\nk h\npe t\ng y\ng ri\nst age</w>\noff ice</w>\nro ck</w>\nm on</w>\nb ay</w>\nt able</w>\nsu n</w>\nm ed</w>\nth in\nl or\nf low\n( @</w>\nuni versity</w>\nstor e</w>\nfron t</w>\ngoo d\nz a</w>\nvo te</w>\nnor th</w>\nhe y</w>\nan im\nor der</w>\nmi d\nwith out</w>\na de\nre member</w>\nmar ket</w>\n? ?</w>\nmu s\ntra ining</w>\ne duc\nbu t\nco ver</w>\nst an\nsc en\nb la\nbre ak\nl ou\ns ame</w>\ng old</w>\na in</w>\no s\nbo th</w>\nl it\nver n\na i</w>\nal bu\np a</w>\nenjo y</w>\nbe g\nell ing</w>\nthur sday</w>\ninf o</w>\ns an</w>\nameric a</w>\nha ir</w>\nte l</w>\nmar ch</w>\ncon cer\ncolle ge</w>\nconfe rence</w>\nap p</w>\nh our</w>\nch ang\nâ ļ\ns our\nol s</w>\nwe ather</w>\nw ar</w>\np hi\nfesti val</w>\nsecon d</w>\ncu te</w>\npr ac\nen er\nstr y</w>\nle a\npol it\ns av\nse n</w>\no w</w>\nm i</w>\nne ar</w>\nou ght</w>\nz e\nco ffe\nw illi\nd an\nse y</w>\ndavi d</w>\ne se</w>\nf an</w>\nde ci\nthe at\nno v\nati on\ntr ac\nsc i\nre view</w>\nc el\ne m</w>\nu n</w>\nju ly</w>\nor ig\nti on\nd ru\nform er</w>\nst ay</w>\naf ter\nin v\ntoo k</w>\ndat a</w>\nb al</w>\ntu es\nd an</w>\nev ening</w>\nðŁĺĤ ðŁĺĤ\nd ol\nu res</w>\npro vi\nt s\ne st\nsig n</w>\nj ac\nu k\ns ong</w>\nye t</w>\nbo w\nin du\nj ap\nh oo\npo int</w>\nany one</w>\nz y</w>\ni st</w>\nh ur\nit al\nbuil ding</w>\nwom an</w>\nch ur\nj er\nper for\nco ach</w>\nle ague</w>\nce ss\nne t</w>\ni mag\nnati on\nbr it\nqu e</w>\naw ards</w>\nag es</w>\nwor ks</w>\nc ed</w>\nman ce</w>\nl ate</w>\nig n</w>\nmon ey</w>\ntru e</w>\ni i</w>\nt ell</w>\npl ac\np ac\nas y</w>\nwor ld\nbe hin\nim port\nread ing</w>\ngra m</w>\ngi ving</w>\nme t</w>\nh it</w>\nfor ward</w>\nst om\npres ent\njun e</w>\nso cial</w>\nno on</w>\nmar t\nhal f</w>\ns we\ngo vern\nk er\ndeta ils</w>\nli sh</w>\n_ _\nac y</w>\nsi a</w>\nber t</w>\nf all</w>\n! !!!</w>\n) ,</w>\nth i\nd iti\nsp ort</w>\nk ing\nf it\nst af\nc at</w>\nmu se\ncen tr\ny er</w>\ncon tro\nb loo\nwal k</w>\nac tu\ndid n</w>\nli m\nlear ning</w>\nre search</w>\nwed ne\nau th\nh ours</w>\nk y</w>\nf ar</w>\nh en\n.. ..\nit ch\nri l</w>\nstr ong</w>\nsk y</w>\nque sti\njam es</w>\nr on\nd g\nf ur\nc in\ndo es\napp ro\nmar ke\ntu res</w>\nful ly</w>\nch at</w>\nbehin d</w>\nte m\nfin i\nmis sion</w>\nb att\nfe el\nhe av\nevery thing</w>\nb ar</w>\nw ish</w>\npre mi\ni ma\nexper ience</w>\ne ach</w>\nre port</w>\nswee t</w>\ntic s</w>\nspr ing</w>\nre spon\nsyste m</w>\nvic tor\nl in</w>\nsa w</w>\nal ready</w>\ngh ter</w>\nf le\nã ĥ\nbr ing</w>\nalbu m</w>\n- -</w>\nell s</w>\nst an</w>\nto m</w>\ninter national</w>\nw ent</w>\nan ni\nmat ch</w>\npp er</w>\nst one</w>\nsm all</w>\nra in</w>\nfashi on</w>\nare a</w>\nv an\nag ram</w>\nk o</w>\nthou ght</w>\nwor th</w>\nv an</w>\nm er</w>\ncoffe e</w>\nit es</w>\ng n\narti st</w>\nc on</w>\nar ch\nc ir\nse cre\ngr ound</w>\nis o\nh and</w>\nco m</w>\nbri dge</w>\nh s</w>\nx i\nl ink</w>\npu l\nsp l\nr ace</w>\nf li\nri ver</w>\ng as</w>\ndi sco\nd al\nplay er</w>\nf it</w>\nphoto s</w>\nit y\no k</w>\nj or\ntr a</w>\nap ril</w>\nad s</w>\na di\nsol u\nbeau ty</w>\ndo or</w>\nme ss\nup date</w>\nali a</w>\nsch o\nen ed</w>\nmom ent</w>\nsco t\nsc ience</w>\ni or</w>\nti es</w>\nac ross</w>\nous ly</w>\nsh es</w>\ndoes n</w>\np age</w>\nwat er\nm illion</w>\ncla ssi\nl ic\nca st\nform ation</w>\nmicha el</w>\nell o</w>\ns mo\nin ts</w>\nvi sion</w>\nop ening</w>\nld n</w>\nau str\ntues day</w>\nwin ner</w>\npo ssi\nr ound</w>\nshir t</w>\ndi t</w>\nb o</w>\nu es</w>\nil led</w>\nal ong</w>\ntri p</w>\nstar ting</w>\nim pro\nk an\nper son</w>\nno t\nre co\nne eds</w>\nc le</w>\nli e</w>\nre st</w>\nr ing</w>\nwin ter</w>\nsi mp\nmo m</w>\nbe er</w>\nfac e\ntor s</w>\nus a</w>\ncollec tion</w>\nge or\nse ssion</w>\ntr ying</w>\nla s</w>\nla ke</w>\nj en\norig in\nstu dent</w>\nse cur\nv in</w>\npic s</w>\nex pe\ncom p\ngon na</w>\ne qu\nb ad\nle y\na u</w>\nmemb ers</w>\nbre ak</w>\nw all</w>\ngi c</w>\ndin ner</w>\nbu l\ninsp ir\nr i</w>\nmin d</w>\nic a</w>\nwin ning</w>\ntal king</w>\nt ren\ns is</w>\nt en</w>\nwonder ful</w>\ns now</w>\nhe ar</w>\nth om\nno thing</w>\ngu i\nst in\nblo g</w>\nfe st</w>\nb un\nle e</w>\nwar ds</w>\nch ance</w>\ndre ss</w>\nre n</w>\npau l</w>\np es</w>\ntech no\nru ssi\nc ard</w>\ne ast</w>\nmar i\nw ine</w>\nt i</w>\nla w</w>\nstr ic\nk i</w>\nap e</w>\nau gu\npro fe\nas h</w>\ncour se</w>\nma il</w>\nren tly</w>\nd un\nm un\nlo ve\nis land</w>\ndri ve</w>\ns l\nend ed</w>\nma in</w>\nlo st</w>\nnat ure</w>\nâĿ¤ ï¸ı\nch ic\nre por\np in\npr o</w>\nst ation</w>\nce p\nta kes</w>\ncompan y</w>\ngo es</w>\non d</w>\nma ch\nra dio</w>\nd ad</w>\nro ck\nj a</w>\np ay\nchampi on\ne e\nin de\ntt a</w>\nati c</w>\nt ab\nbeli eve</w>\nener gy</w>\nz i\nt at\nwor d</w>\non ce</w>\nre sul\ny l\nand re\nan o</w>\ninst agram</w>\nclo se</w>\nt am\ncu stom\nw a</w>\ncon om\nsho ws</w>\nli fe\nk in</w>\nro b\nt age</w>\nn ation</w>\nal most</w>\nlist en</w>\nsa ve</w>\nre li\nac e\nmar y</w>\ntre e</w>\nfor get</w>\nj ack\nwa iting</w>\ndirec tor</w>\nh ill</w>\nbor n</w>\nte mp\nf l</w>\nst e</w>\non a</w>\nsing le</w>\nwedne sday</w>\nun ited</w>\nin o</w>\n@ _</w>\nne l</w>\ncelebr ate</w>\nen ding</w>\nde al</w>\nj i</w>\ncan ada</w>\nhu ge</w>\ntr ack</w>\nâĢ ¢</w>\nf y</w>\nfan ta\nan g</w>\nyor k</w>\nrele ase</w>\np un\nep iso\nwor ds</w>\nt our\np ack\ni gh\nclassi c</w>\nperfor mance</w>\nke t\nafter noon</w>\nrecor d</w>\nwin s</w>\npro ble\nâĿ ¤</w>\nf our</w>\nb ed</w>\nban k</w>\nd ance</w>\ns la\ncal led</w>\nmi ght</w>\na p</w>\npa st</w>\nðŁ ļ\ndiffe rent</w>\nit e\ngi ft</w>\nssi ve</w>\nchur ch</w>\nc us</w>\npro gram</w>\nho tel</w>\nic e\nma d\nsecur ity</w>\nen ge</w>\nd c</w>\nen ough</w>\nst a</w>\ne ty</w>\nde ad</w>\ng un\nhe ar\nm ir\nhu man</w>\ngre ss</w>\noun ds</w>\npi ece</w>\nbre aking</w>\ngar den</w>\nfi ght</w>\nvie ws</w>\nf ish</w>\nstar ted</w>\nrun ning</w>\ngre en\nser i\ns m</w>\nas k</w>\nd or\nde ath</w>\ne conom\ner i\nir d</w>\ns er</w>\nl unch</w>\nâģ ¦\nbo x\nnat u\nba se\nb an</w>\nf al\nglo bal</w>\nwil d\nwo w</w>\nout side</w>\nmo ve</w>\nle ad</w>\nan al\nmuse um</w>\non g\nha w\npow er\nthan k\nb ac\nchar ac\ncam pa\ndig ital</w>\nr o</w>\nop er\nde v\nw ol\np ati\nf a</w>\nm ale</w>\npap er</w>\nill ing</w>\nc s</w>\nâ ĥ\neduc ation</w>\nta ken</w>\ne ffe\nm ou\ns ad\n\" .</w>\nbas ed</w>\nstaf f</w>\ninclu ding</w>\nli ving</w>\na c</w>\nch ina</w>\nmo b\nstor m</w>\nlu ck</w>\nph il\no o</w>\ny n\ntra vel\nk el\nti al</w>\npr ice</w>\nboo k\nimport ant</w>\nbi o\np ool</w>\nny c</w>\nf ab\nlo ad</w>\n? !</w>\nchall enge</w>\ncr y\nser ve</w>\nwe ar</w>\nbu s</w>\nta in\nnu mber</w>\nro r</w>\nk at\ni z\nth ough</w>\nho sp\nm m</w>\nfa ir</w>\nut es</w>\nho t\npo p</w>\nfi ed</w>\ncam p\ndevelop ment</w>\nli br\nc ali\nem s</w>\nâģ¦ @</w>\nb ol\nis ed</w>\nstand ing</w>\nmo del</w>\nit a</w>\ng le</w>\nbro wn</w>\nima ge</w>\nve red</w>\nfor ce</w>\no il</w>\npar tic\nsh u\nda ily</w>\nla w\nse c\ncla ss\ncam p</w>\nholi day</w>\ncl in\nk ers</w>\npres ent</w>\ngam e\nincre di\ner ship</w>\ninter view</w>\nb ill</w>\ndu e</w>\nand y</w>\nab o\nin nov\nke y\nac ade\np il\nmo der\nst ars</w>\nbr and</w>\nf er</w>\nwee ks</w>\ncon si\npr e</w>\nsa fe\nwr it\ndi um</w>\nla unch</w>\nmarke ting</w>\nann ual</w>\nas si\ncour t</w>\nla dy</w>\nc ted</w>\nand a</w>\nin side</w>\nchil d</w>\nopp or\nsm ith</w>\ncentr e</w>\ngu e</w>\nâģ ©</w>\nf ren\nst y</w>\nfor t</w>\nent ly</w>\nis n</w>\nke ep\nto ber</w>\non y</w>\nbo y\nal d</w>\ncol la\nde mo\nle vel</w>\ncom pet\nad o</w>\nb our\nfanta stic</w>\nm ate</w>\ns u</w>\nsou th\noppor tun\nvers ary</w>\nlat er</w>\nbu d\nface book</w>\nla un\nster n</w>\np it\n! \"</w>\nma j\ngr am\ntb t</w>\nfi re\nhapp y\na ks</w>\nwh ole</w>\nactu ally</w>\nill er</w>\nell a</w>\nlo ts</w>\nal ex\nan ge\nlan ds</w>\nðŁĺ Ń\nen ter\nr ou\nepiso de</w>\np ed</w>\nin ten\nsh ire</w>\nwh o\npl an</w>\nh o</w>\nca ke</w>\nwe st\nmag az\nfre sh</w>\nc c\nn ar\nch ris</w>\nwr iting</w>\nw er</w>\nn om\nl o</w>\nmi dd\ndre am</w>\no l</w>\nti onal</w>\nde b\n> ></w>\nbe come</w>\ns i</w>\ngr and</w>\nall ing</w>\nhi stor\nri de</w>\ni red</w>\nsaf e</w>\nque en</w>\nci l</w>\nin tro\nvi l</w>\nd ani\n.. .\nar tic\nst at\nsh ort</w>\nor ing</w>\nsel fi\nmis si\ndo c\nb it\ng all\nb om\ni re\nse lec\nd ition</w>\nðŁĶ ¥</w>\nfri end\nbe at</w>\ngh ting</w>\nðŁĺ Ĭ</w>\npe ace</w>\nex hi\nant a</w>\nab ility</w>\nil lu\nj on\nqu ality</w>\ntri bu\nm es</w>\nplay ers</w>\nfa ir\ncu t</w>\nc ab\nsuc cess</w>\nb i</w>\nsu s</w>\npro mo\nsch e\nan ge</w>\nic o</w>\ncomm it\ncat ch</w>\nill a</w>\nkin d</w>\nfeel ing</w>\nqu o\ns ay\nanni versary</w>\nspo t</w>\nmo ther</w>\nan e</w>\np end\nyour self</w>\nop s</w>\napp le</w>\nmin utes</w>\np o</w>\ngr and\nri es</w>\nha ha</w>\ncare er</w>\ned ition</w>\nde c\nric k</w>\nam i</w>\nconcer t</w>\niti ve</w>\nge ous</w>\nd ly</w>\nt te</w>\nadv ent\ni g</w>\nli ghts</w>\nak er</w>\nsk y\nâĥ £</w>\nr ay</w>\nfini shed</w>\nw ay\ns d\nac coun\nðŁĴ ķ</w>\nck y</w>\nch el\nlit er\npain ting</w>\nlo s</w>\nst un\ntechno logy</w>\nn as\nma r</w>\nb il\nafric a</w>\nki e</w>\ney es</w>\ngol f</w>\nplu s</w>\nni a</w>\nit ec\nserv ices</w>\nwed ding</w>\nkno wn</w>\nte le\n.. ...</w>\nstar ts</w>\npa ren\nw ants</w>\nati onal</w>\nmon ths</w>\nwin do\nfav our\ner t</w>\nmagaz ine</w>\nex clu\nre ve\nb c\norigin al</w>\ne ss\nn al</w>\nan ti\nst ro\nt ice</w>\nstu dy</w>\nà ¤\nv ac\nnation al\nfi ve</w>\nra in\nve ment</w>\nu te</w>\nver se</w>\nem er\nar my</w>\npossi ble</w>\ngue ss</w>\nval ley</w>\nther n</w>\ncro w\nm r\ncol or</w>\non to</w>\npic k</w>\ncle ar</w>\ndar k</w>\nt ac\nwan ted</w>\nit ting</w>\ncan cer</w>\ngovern ment</w>\ndi e\nri se</w>\nz ing</w>\ncol d</w>\nf oun\nstu dio</w>\nstr ation</w>\nbro ther</w>\na head</w>\nsh el\nmic ro\nic ally</w>\nd au\nsig ned</w>\nvi ol\na x\nas se\ni o\nw re\nspl ay</w>\nch ick\naugu st</w>\npl at\nti ps</w>\nsp i\nhu man\ne asy</w>\nlo gi\nmi ke</w>\ngro w\nag re\nw w\nsh ad\nmo tiv\nwi de</w>\ntur ns</w>\nom g</w>\nv ar\nde fin\nsu g\nj im\nðŁĶ ¥\nt d</w>\ncampa ign</w>\nnam ed</w>\nre tweet</w>\nco p\nt v\nle av\nk is\ndou ble</w>\ns mar\nissu e</w>\nvil la\nin formation</w>\nli es</w>\nsto ck</w>\nn t</w>\ndi stric\nsh or\nmi x\ner o\nse p\nme x\nsee ing</w>\nli ve\nre min\nco de</w>\ng ur\ns c</w>\nwil d</w>\nl un\nh ood</w>\nspo t\nfa ther</w>\nfore ver</w>\nup d\ntra f\nf ly</w>\nne ed\ngra du\ntra in</w>\nma ke\ns ab\nbe y\nsi ze</w>\nlead er</w>\ntal ks</w>\ne u</w>\nlo g\nfo x</w>\ngor geous</w>\nle ss\nle ts</w>\nsur pri\nmy self</w>\nno te</w>\nli ves</w>\nf ru\nlo ved</w>\nse ver\nde m\nj i\nso c\nh old</w>\ndo gs</w>\nn i</w>\nâ ŀ\nlea ve</w>\nair port</w>\nben ef\nex pl\nshi ps</w>\ncomple te</w>\nach i\ngre at\nvin tage</w>\nj ack</w>\nro c\nwoo d\npri v\noff er</w>\ney e</w>\nver sion</w>\nte a</w>\nco ach\noff ic\nw ell\ng en</w>\ns at</w>\nh h\nyou th</w>\no x\n? \"</w>\nm t</w>\nmi x</w>\ng g</w>\nd le</w>\nnatu ral</w>\nbuil d</w>\nbreak fast</w>\nthin king</w>\ntheat re</w>\nmo on</w>\nber g</w>\ngo als</w>\ngeor ge</w>\nen e\nexc ell\nil ing</w>\ntun e</w>\ny ed</w>\ng ate</w>\nm it\nnet work</w>\njo e</w>\nh ello</w>\nf b</w>\ntu be</w>\nwe aring</w>\nath le\nstru c\nhar d\ngla ss</w>\ng ers</w>\nthro w\ng es</w>\nb t\nindu stry</w>\nmanag ement</w>\nali st</w>\ngo al</w>\nstre am</w>\ny el\na vi\nici ous</w>\no thers</w>\ns ki\nchri sti\nbir d</w>\ne sc\nm in</w>\ntr o</w>\nl t</w>\nj an</w>\nim p\nri ghts</w>\nsh a</w>\nor gan\ncent ral</w>\nar a</w>\nro ll</w>\nfavour ite</w>\nche ster</w>\nel se</w>\np ay</w>\ncar s</w>\nm ine</w>\nste p</w>\nprac tice</w>\nmaj or</w>\nh ang\nðŁĺ ĺ</w>\nn on</w>\nv ari\neng ine\nvol un\ndi a</w>\ni led</w>\narch itec\np ink</w>\nd s\nth y</w>\nwa sh\nweb site</w>\nba g</w>\ncontro l</w>\nel li\nf ra\nan sw\nd ence</w>\ny u\nr on</w>\nol a</w>\ng in\ndr in\nli c</w>\ncou ple</w>\nsp ar\ng on</w>\ncre ate</w>\nc t\ncelebr ating</w>\nde ep</w>\ne at</w>\nte e</w>\nvo ice</w>\ndro p</w>\nvis it\nat ors</w>\nsta dium</w>\nf t\nw is\nro l\ngra de</w>\nfam il\npo ints</w>\nre pre\nw as\ntraf fic</w>\njap an</w>\nor g\nhon or</w>\ntex as</w>\nman u\nâĻ ¥</w>\nsafe ty</w>\nre r</w>\nb ag\nem plo\nrele ased</w>\nre gu\nak a</w>\nn av\nro le</w>\nsen ior</w>\nspec t</w>\ncro ss</w>\nlin es</w>\nbe st\np ack</w>\ns in</w>\nti e</w>\nmis sing</w>\nsun set</w>\nli ber\nis ing</w>\nj ay\nsk i</w>\nchampion ship</w>\nac tiv\nla dies</w>\nplay ed</w>\ny y\npu bl\nal o\npri de</w>\ns r\npa ki\nlu x\nsur vi\nck ed</w>\ne ts</w>\ncho col\naustr alia</w>\npar is</w>\nmi les</w>\nh at\nment al</w>\nal a</w>\nme an</w>\nmob ile</w>\nen a</w>\nin si\nf ound\nchi ef</w>\nt ag\nincredi ble</w>\nre turn</w>\nÃ ©\ngoo gle</w>\nfren ch</w>\ncre w</w>\nhal lo\nali an</w>\nj az\nch er</w>\nsil ver</w>\nnor th\neng lish</w>\nbase ball</w>\nc af\nlim ited</w>\nfollow ing</w>\napp reci\near th</w>\nk ir\nve mber</w>\nw ed</w>\np tion</w>\ng ed</w>\noc tober</w>\nfl ori\nc r</w>\nen cy</w>\nga ve</w>\nlor d</w>\nstu ff</w>\nber ry</w>\npo st\nsm ile</w>\nbro ad\nst ate\ngg er</w>\nme ans</w>\nic y</w>\ngu n</w>\ny o</w>\nma ster</w>\nbur g</w>\nhan ds</w>\nni e</w>\n/ /</w>\nuni on</w>\nbrit ish</w>\nbig gest</w>\ndistric t</w>\nam ing</w>\nh il\no ce\nper son\npas s</w>\nen vir\nscho ols</w>\narri ved</w>\nanc es</w>\ninsp ired</w>\nex pla\nbe n</w>\nlibr ary</w>\nbo tt\nam p\nste ph\ncont act</w>\nb ang\nm s\ncali for\nt old</w>\nbatt le</w>\nb b</w>\nchic ago</w>\nâľ ¨</w>\nstr ate\nsh i</w>\nde ce\n- )</w>\nad d</w>\nla b\nj ones</w>\nleg end</w>\ncast le</w>\ning er</w>\nst ance</w>\nbe l</w>\nur a</w>\nre fu\nlead ers</w>\npo t\nse x\nh ic\nartic le</w>\nki d</w>\nfr ance</w>\nx x</w>\nex e\ngui de</w>\nvolun te\npr int</w>\nal i</w>\nce o</w>\ntwee ts</w>\nw x</w>\nscen e</w>\nvol u\nant i</w>\nh an</w>\nas soci\nshar ing</w>\nro se</w>\nmini ster</w>\nsh er\nin ste\ncle an\ndemo cr\npo ster</w>\nsk in</w>\np sy\npro per\ncra zy</w>\ni am\no re\nin i</w>\nany thing</w>\npo d\nmo ving</w>\ncl ick</w>\nex plo\ncom b\ncra ft</w>\nf i</w>\nbloo d</w>\nis ra\npubl ic\nd ent\nol ym\neng land</w>\na si\nch er\nfac t</w>\nenvir on\nhar ry</w>\ng one</w>\nme dic\nenjo ying</w>\njust ice</w>\nj r</w>\nindi an</w>\nwi fe</w>\ns ound</w>\nt es</w>\ndra wing</w>\np al</w>\nide a</w>\ncr it\nju li\nil er</w>\nwar m</w>\ncl ar\nthou ghts</w>\ndef en\ncoun cil</w>\nintro duc\ndi ed</w>\njan u\nan i</w>\ns end</w>\nli er</w>\nm l\nintere sting</w>\ntra de</w>\nwin d</w>\nb ay\ns ac\nanc y</w>\nsour ce</w>\nb es</w>\norg ani\nar ly</w>\nlar ge</w>\nff ici\nta g</w>\nu t</w>\nde sp\no es</w>\ntit le</w>\nsy m\npic tures</w>\nop en\nwom en\nsho wing</w>\nri a</w>\nle ast</w>\nlead ership</w>\ncur rent</w>\nelec tr\nval ent\nlist ening</w>\nc key</w>\ngener al</w>\nde ser\ndu ce</w>\n; )</w>\nc ent</w>\nðŁĺį ðŁĺį\nsco tt</w>\npo or</w>\nselfi e</w>\nev ents</w>\ni on</w>\nwr ong</w>\nde v</w>\nh ill\nsep te\ncul ture</w>\nl ine\nsor ry</w>\ns ent</w>\nsi ster</w>\nce pt</w>\nk ri\nno vember</w>\nar i</w>\nannoun ce</w>\nz ation</w>\nbr an\ng ent\nd u</w>\nl en\nper s\nf m</w>\nmart in</w>\no p</w>\ne mb\nom e\nmidd le</w>\nsuc cess\npe ter</w>\njanu ary</w>\nf lu\nrac ing</w>\nd av\nbi ke</w>\nðŁı »</w>\npe t</w>\nshoo t</w>\nprofe ssi\nfeat uring</w>\nsepte mber</w>\nnow playing</w>\nsta ur\nz a\non ic</w>\nqu ick</w>\nbas ke\nspe aking</w>\nmil it\nz er</w>\nchick en</w>\nb ell</w>\ns ad</w>\nco ast</w>\nlo ving</w>\ny ers</w>\nd j</w>\npan el</w>\nver age</w>\ns wit\nic ks</w>\nb ou\ncalifor nia</w>\ns am</w>\nparen ts</w>\ner o</w>\nk illed</w>\nph ys\njo bs</w>\nmi gr\nan th\ne mo\nhallo ween</w>\nand er\nc m</w>\ncompet ition</w>\ne ag\ns ket\nsp ir\nmay be</w>\nexclu sive</w>\napp e\njour ney</w>\nscre en</w>\nfor d\ni o</w>\nh ate</w>\nu g\nsou l</w>\nher o</w>\nsoci ety</w>\nsy n\ngu it\nn h\nd j\nas es</w>\nim pre\nti me\nsal es</w>\nd d</w>\nf ts</w>\nsumm it</w>\nstun ning</w>\nom s</w>\ntur ned</w>\ncle an</w>\nsof t</w>\nbe at\nre staur\nde red</w>\nen ces</w>\nma gic</w>\ndi o\nsh ine</w>\ngu est</w>\nhealth y</w>\nexhi b\nstor ies</w>\npo pu\nn is</w>\nel a</w>\nbel ow</w>\nfun ny</w>\nresul ts</w>\ns ne\ncur rently</w>\nar d\ndown load</w>\nf light</w>\nm al</w>\nf ine</w>\np ad\nch u\nent ed</w>\nh at</w>\nðŁĳ ı\nste ve</w>\nj o</w>\nmar k\nr at\nb all\np c</w>\np on\nb by</w>\no li\nar ts</w>\nas ure</w>\nbow l</w>\natt ack</w>\nmi c</w>\nde ar</w>\nran ge</w>\nen ter</w>\nchocol ate</w>\nbr illi\nac cess</w>\n, \"</w>\n? ??</w>\nch ap\ncon st\nt n\nmat ter</w>\nblu e\ngall ery</w>\nem p\nwork shop</w>\nlead ing</w>\ny ours</w>\nbaske tball</w>\nw anna</w>\nth u\n_ _</w>\nmar ri\nsle ep</w>\nbi a</w>\nch e</w>\nma d</w>\nimp act</w>\no wn\nsi r</w>\nchan nel</w>\neuro pe</w>\ne sp\nk itch\nhosp ital</w>\nw ra\nroy al</w>\nf s</w>\nne u\nqu ar\nne y\nac ks</w>\nch ase</w>\npp y</w>\nst al\nat ely</w>\nti m</w>\ndece mber</w>\nr are</w>\nper form\ncre am</w>\nwe ight</w>\nch oo\nni ght\nha ven</w>\nfr anc\nkh an</w>\nbuil t</w>\nhel ping</w>\ntru st</w>\nty pe</w>\ngol den</w>\nta x</w>\ns now\ns wi\ndi sa\nquesti ons</w>\nve y</w>\nli ght\nc n\ncl oud</w>\nthom as</w>\nag ed</w>\nsh ou\nte ams</w>\ngr an\nre ason</w>\na a</w>\nyou tube</w>\nv p</w>\npi zz\nmanag er</w>\nbur y</w>\ncre dit</w>\ntre at</w>\nma x</w>\ni k\nma in\ng ing</w>\nde ad\npro bab\nye ah</w>\nã Ĥ\nbr and\nso li\npl ant</w>\nta yl\ngir l\nðŁĺ Ń</w>\nnam ent</w>\nau to\nmess age</w>\nko re\nn ur\nter r\nag u\nma p</w>\nsen ting</w>\nlo ves</w>\ngi ves</w>\ng ab\nz en</w>\nro bert</w>\ncon fir\nw ars</w>\no m</w>\nsta in\ncam era</w>\nand er</w>\nwon der</w>\na b</w>\nca p</w>\ns old</w>\nsu it</w>\nwal king</w>\ncontin ue</w>\neffe c\ndau ghter</w>\nd anc\ncha in</w>\nmul ti\nki d\ny an\nchampi on</w>\nv o</w>\nta ins</w>\nho st</w>\nmin i</w>\nmis sed</w>\nre sc\nly n\nfin ish</w>\ndel icious</w>\ns as\ntayl or</w>\ni b\npro mis\nproduc ts</w>\nmoun tain</w>\nflori da</w>\nregi ster</w>\ntre at\nrec ent</w>\nfe male</w>\nboo th</w>\nmat t</w>\nve hic\ns op\nmo tor\nsuppor ting</w>\nphi c</w>\nex tre\ndr ink</w>\nlan e</w>\nth ird</w>\np s\ncon stru\nce re\nfar m</w>\nðŁİ ī</w>\ntu red</w>\nðŁĳ ī</w>\nc ats</w>\na j\ngi e</w>\nshoo ting</w>\nas ked</w>\npaki stan</w>\nam e\nm b</w>\ng il\nleg al</w>\nsqu are</w>\nin vol\ndra w</w>\noo oo\n!! !!\nopportun ity</w>\np y\ne i\nb ts</w>\nteach er</w>\ncharac ter</w>\njohn son</w>\nbr on\nly wood</w>\nch ine\nc ing</w>\nc ine\nd ge\ngam ing</w>\nrussi a</w>\nci a</w>\nquo te</w>\nric h</w>\ngo v\nflow ers</w>\nsp iri\nst in</w>\ngrow th</w>\nðŁı ¼</w>\ncomm er\nj uni\nmu m</w>\nr an</w>\ns na\na ren\nc b\nac tor</w>\ncol or\nsi t</w>\npa ir</w>\nch i</w>\nbo w</w>\nacade my</w>\nhel d</w>\nr ang\nme tal</w>\ny l</w>\nac tive</w>\nprobab ly</w>\nt ch</w>\nneed ed</w>\nspe e\ncho ice</w>\nital y</w>\nry an</w>\nðŁĩ º\nflow er</w>\nv it\nm n</w>\nfound ation</w>\nb ak\nsi ons</w>\nne igh\nf loo\nhe ard</w>\nre mo\nfre sh\ning ing</w>\nre f\nto wn\ncl ou\nje sus</w>\nspiri t</w>\ncou ldn</w>\nz es</w>\nðŁĴ Ļ</w>\nwilli ams</w>\npro ce\nmoder n</w>\npro cess</w>\nsho es</w>\ncre ated</w>\ntri c</w>\nissu es</w>\nann e</w>\natt en\nde but</w>\nh r</w>\nn it\nsti g\na po\ne ps</w>\nz u\nã Ģ\nsi x</w>\ncar ds</w>\nlan gu\nfam ous</w>\ntour nament</w>\nse l</w>\ne bay</w>\ny n</w>\nst on\nk ick\nannoun ced</w>\nk am\nvo c\nbrilli ant</w>\nhou se\nche ese</w>\nwar ri\nmus ic\nho ckey</w>\nðŁĺĤ ðŁĺĤ</w>\nsk ills</w>\nau tom\nsmar t</w>\nmed ical</w>\nmon y</w>\ne x</w>\ngu ar\ngi ve\npers onal</w>\nven tion</w>\nal li\npre ss\nflo or</w>\nm c</w>\nvictor y</w>\nhi m\nsimp le</w>\nth or\nðŁĩº ðŁĩ\nta il</w>\nlu cky</w>\nale x</w>\nqu ite</w>\nbo t\nssi ons</w>\nchall eng\nc ann\namaz on</w>\nh ell</w>\nb ought</w>\n) :</w>\ned y</w>\nsecre t</w>\nproduc tion</w>\ninde pend\nde fe\nad ded</w>\np r</w>\np ag\nbe d\ngre atest</w>\nwith in</w>\nj ay</w>\nðŁ ¥\nire land</w>\nre ly</w>\ns d</w>\nte xt</w>\ndri ving</w>\npro gram\nspe ed</w>\ncol um\nstr on\nÃ ©</w>\nfore st</w>\nâ ĸ\nmach ine</w>\nco in</w>\nsc ar\noun t</w>\nbi e</w>\n¡ ï¸ı</w>\npor tra\ncomm on</w>\nwre st\nrecei ved</w>\nkno w\ninve st\npl ans</w>\nac cor\nad op\nter y</w>\nre ali\np p</w>\nk al\nart work</w>\nme an\ngo d\ninste ad</w>\nan ci\nmotiv ation</w>\nas ing</w>\ninspir ation</w>\nup coming</w>\npolit ical</w>\neuro pe\nm ers</w>\nheav y</w>\nðŁĳ į</w>\nfe bru\nscot land</w>\nou gh\nb t</w>\nbo ss</w>\nsche du\nspe ak</w>\nn ick\nu red</w>\nin o\ne k\nri sk</w>\ntor y</w>\npres ents</w>\nb on</w>\nru g\nst ates</w>\nexhib ition</w>\nil o\nm ill\nbr ought</w>\n: -)</w>\ntou ri\ncom e\noffici ally</w>\nchampi ons</w>\ndo ors</w>\nre p\npo se</w>\nex tra</w>\nk ings</w>\nsoc cer</w>\nsqu ad</w>\napp lic\nat a</w>\nsome times</w>\nt ari\nexcell ent</w>\nðŁĺ ĺ\nstra ight</w>\ncar ol\nri p</w>\nâĢ į\ngra phic</w>\nm ol\nelec tion</w>\nfebru ary</w>\nas ons</w>\nl i</w>\ndi r\nm t\nn ick</w>\nu su\nm rs</w>\ncom ics</w>\ninst itu\ncor por\nv i</w>\nðŁĻ ı\ntu ral</w>\ndi se\nac ci\nwe are\nam ong</w>\nsho pping</w>\nt ill</w>\nwh at\ncha ir</w>\nsp an\nchine se</w>\ninnov ation</w>\njo y</w>\nk it</w>\ncent ury</w>\nob ama</w>\nph ili\nf c\nre ach</w>\nc iti\nul ous</w>\nn on\nd ang\nhapp ening</w>\nbur n</w>\np el\nor ange</w>\nd v\nk ick</w>\ncla im\ning ham</w>\nph y</w>\nno v</w>\npod cast</w>\nwh i\nni ghts</w>\near lier</w>\nbe ar</w>\nla h</w>\nexc iting</w>\nor a</w>\ngi ven</w>\ns lo\nmemor ies</w>\ncontin ues</w>\nproduc t</w>\ngh o\nc d\nkno ws</w>\nðŁİ ī\npubli shed</w>\ndiscu ss</w>\ny ard</w>\ni phone</w>\ntri es</w>\nw all\nfe b</w>\nare n</w>\ntru th</w>\nwin ners</w>\ntu re\nditi onal</w>\nmilit ary</w>\nproble m</w>\nm and\ndo g\nlo ss</w>\nc ric\ncan adi\nve ter\nvilla ge</w>\n\" ,</w>\ny r</w>\nun g</w>\ndon ald</w>\nag ing</w>\nbir ds</w>\nsci enti\nle s\nth is\nregi on</w>\ntic al</w>\nitt en</w>\nil a</w>\nðŁĺ İ</w>\nd ad\ndi am\nabo ve</w>\nst ren\nli t</w>\np ir\nla b</w>\nfo cus</w>\nbus y</w>\nd ur\napp ly</w>\ns ma\nauth or</w>\nac i\nexe cu\ndom in\nre la\njack son</w>\nat o</w>\nwash ington</w>\nðŁĻ Į\nk ill</w>\npopu lar</w>\nce ment</w>\nro ad\ne ating</w>\nloc ation</w>\nv ent\nar re\nn an\ncu sto\nadvent ure</w>\nor din\nspor t\nul t</w>\nlo ck</w>\nquesti on</w>\ndri ver</w>\nland sc\non i\nk ins</w>\np d\njor dan</w>\nte red</w>\nk k\na f</w>\nchil d\ns p</w>\njust in</w>\nen i\ns elling</w>\nz o\nwh it\nbo ston</w>\npartic ip\nsig ning</w>\nhapp ened</w>\nhe at</w>\nm am\ndre ams</w>\nlo ws</w>\ngra ph</w>\nthe day</w>\nhead ing</w>\nbr o</w>\nble ssed</w>\nvi c</w>\nve gas</w>\nh d</w>\nin ning</w>\nro man\nand ro\nden ti\nu se\nc it\npro gress</w>\nwrit er</w>\nbo b</w>\nff s</w>\ngro wing</w>\nb ly</w>\naw are\nex am\nsp ent</w>\nbe t</w>\nsc ore</w>\nbey ond</w>\ndo cu\nad el\ns f\ncou ra\ncolla bor\nin c</w>\npriv ate</w>\nbo at</w>\n* *</w>\nz one</w>\np ha\nb ill\nto tal</w>\nplan ning</w>\nto wards</w>\nplac es</w>\npre view</w>\ncre ative</w>\ndam n</w>\nide as</w>\nse ems</w>\npo ten\nsay ing</w>\ndi splay</w>\ns w</w>\na qu\nlou is</w>\nby e</w>\nli l</w>\ne mail</w>\nwe stern</w>\nger many</w>\nell er</w>\nre s\nf ant\nment ary</w>\nde als</w>\nric hard</w>\njer sey</w>\nstren g\nra d\npizz a</w>\nmon d</w>\nw are</w>\nl ac\ng i</w>\nar chi\nc d</w>\nyel low</w>\nrec ently</w>\nre ach\nà ¹\nkitch en</w>\ndesig ned</w>\ntr y\ng al</w>\nrestaur ant</w>\nat ure</w>\nw w</w>\nj as\nl ma\nðŁĳ Į</w>\npa in</w>\nav o\nmin ute</w>\nsch ol\nther ap\ntic ket</w>\nd ry</w>\njap an\nditi ons</w>\nter ri\nsel ves</w>\nhapp en</w>\nt up</w>\nma g</w>\ncop y</w>\nsh er</w>\nfree dom</w>\nf ile</w>\nspeci ally</w>\ntor onto</w>\nlo ad\ng ary</w>\nre y</w>\nansw er</w>\nlo y\ncau ght</w>\npri ze</w>\nu ne\nfic ation</w>\nni ger\nsy d\ntou ch</w>\nfeat ure</w>\njaz z</w>\nrecor ds</w>\nhim self</w>\ndi sh</w>\nro ber\nspot ted</w>\nma ster\nwa ve</w>\nfin als</w>\nbu ll\nfor um</w>\nal d\nre comm\nch a</w>\na e</w>\nd oo\ninst ru\ntru ly</w>\nl g\nin k\nbro thers</w>\nde st</w>\nj im</w>\nm it</w>\nclo sed</w>\nis on</w>\ntri ed</w>\ns anta</w>\naf fe\nw an</w>\nhor se</w>\ng row</w>\ncamp us</w>\nrel ation\nnati ve</w>\njour n\ngo v</w>\no ct</w>\nk it\nb ound</w>\npart ner</w>\nre ma\ncrow d</w>\n! )</w>\nc alls</w>\nra il\nqu ali\nsolu tion</w>\ncon test</w>\ncon vers\nsn ap\nb ase</w>\nin iti\nta x\ny e</w>\nent repre\nit or</w>\nconstru ction</w>\nfoo d\npresent ed</w>\nn ings</w>\ncli mate</w>\nk m</w>\nmo del\nb j\nblo ck</w>\npresent ation</w>\ndre am\nfi x\nc alling</w>\nbus ine\ncon gress</w>\nunder stand</w>\nwe b</w>\nval ue</w>\nï¸ı âĥ£</w>\nmex ico</w>\nit ely</w>\nki m</w>\nchar ity</w>\nref lec\nbl an\nfl ying</w>\nanal y\nfamil ies</w>\nb and\nreci pe</w>\ncelebr ation</w>\nac cep\nar y\nto t\ng b</w>\nintere sted</w>\ncap tain</w>\nâĻ ¥\nti p</w>\nab sol\nbra z\ninve stig\no logy</w>\nde c</w>\ntru ck</w>\nver ing</w>\nc lear\ndon t</w>\ngo tta</w>\nad vis\nbeg ins</w>\nma ss\nde scri\nblo ck\nk im\ndavi d\nson gs</w>\nmemor ial</w>\nfeat ures</w>\nsu stain\n' .</w>\ngra b</w>\njo se\nv a\ncon serv\nse ts</w>\nman chester</w>\nfi ghting</w>\nde gre\nag a</w>\nin d</w>\nsle ep\npos ition</w>\nha ir\nsig ns</w>\npol icy</w>\nit o</w>\nal ert</w>\nst am\nsp end</w>\nw y\nabsol ut\nd m</w>\nanim al</w>\nmy ster\nsuccess ful</w>\nproble ms</w>\nro bo\nk ay\ngar den\np d</w>\nmay or</w>\nd ale</w>\nt ol\noff ers</w>\nvis iting</w>\nfriend ly</w>\ntre es</w>\noffic er</w>\naccoun t</w>\nke vin</w>\nðŁĳ į\ngi ant</w>\ncontin u\ncon su\ntr act</w>\nn fl</w>\nðŁĺ Ĭ\nh q</w>\nb ility</w>\na ar\ndis ney</w>\nte en</w>\non ed</w>\nwh ite\ntra iler</w>\nde dic\nal one</w>\nabsolut ely</w>\ndig ital\nwilli am</w>\nin ation</w>\ns wa\ne e</w>\nenti re</w>\nger man</w>\nro ll\nh its</w>\nco st</w>\nst ay\nth a</w>\nali ve</w>\naccor ding</w>\nco t\nliter ally</w>\nher it\nre ti\nhaha ha</w>\nexper i\nli kes</w>\ng t</w>\nste el</w>\n__ __\nch air\nchristi an</w>\nto wer</w>\ndiffe rence</w>\nm d</w>\ntre ss</w>\nmi d</w>\nprin ce</w>\nafric an</w>\nfe der\nfoo t</w>\ncar ri\nser ved</w>\nr ice</w>\nsh all</w>\nfeat ured</w>\nck er</w>\nrec ru\npo e\nsen se</w>\nni fic\ncom edy</w>\ncont ent</w>\nf at\npo sted</w>\ncon tribu\ntim ate</w>\nli ver\nmb le</w>\ninter net</w>\nag e\neurope an</w>\ncl ing</w>\ngla d</w>\nff ic\nsc o</w>\nak es</w>\nel le</w>\nter min\nton y</w>\np ale\ncol our</w>\nseri ous</w>\npat ri\nmovi es</w>\nb m\nprofessi onal</w>\nad o\nal u\nbr inging</w>\nf alls</w>\nisra el</w>\nter m</w>\nlangu age</w>\nbro ok\nman n</w>\ncommun ic\ncan not</w>\nac ti\np he\ny an</w>\nentrepre ne\ntur key</w>\nlog ical</w>\nlon g\nar m</w>\nur s</w>\nwork ers</w>\ning ly</w>\ngg s</w>\nri c</w>\ntu al</w>\nrecei ve</w>\nop ens</w>\nge ar</w>\nsoci al\nfe et</w>\nc king</w>\nad ver\nfin an\nfe els</w>\nsp la\nh r\nea ster</w>\nbra in</w>\nã ģ\nfi g\nle dge</w>\nne arly</w>\nprote ct</w>\nma ssive</w>\ne th\naw a\nðŁĺ ģ</w>\ny rs</w>\naware ness</w>\ndefin itely</w>\nk n\nimag ine</w>\nk u</w>\nsyste ms</w>\nðŁĳ ı</w>\nf as\nli k\nprovi de</w>\nam o\ndisco ver</w>\ninf lu\nma ker</w>\ng az\nfit ness</w>\nstre et\ner s\nte d\nw c\nys is</w>\npos itive</w>\nhel ped</w>\nque st</w>\nandre w</w>\nbra d\nb in\nhang ing</w>\nl ing\nbri ght</w>\nse ction</w>\nma ss</w>\nðŁĻ Į</w>\nfollow ers</w>\nho sting</w>\ntem por\nfla g</w>\na ve</w>\nlet ter</w>\nk ur\nre qui\nof ten</w>\ncry p\nsu ff\nâļ ½\nrussi an</w>\ntreat ment</w>\nal le\nha y\nl an</w>\nkeep ing</w>\nhol y</w>\npower ful</w>\npre dic\nfun d</w>\ne specially</w>\nwindo w</w>\nje wel\nil y\nðŁĴ ľ</w>\ngener ation</w>\napp a\nseri ously</w>\no d\nðŁĺĤðŁĺĤ ðŁĺĤ</w>\ncer ti\niri sh</w>\nðŁĳ Į\nmi ami</w>\nbe th</w>\nv ity</w>\nse cu\nche f</w>\ncri me</w>\ngraph y</w>\nma x\narti sts</w>\nre volu\ngu ard</w>\nspee ch</w>\nu c\nupd ates</w>\nfac es</w>\nst ant</w>\nchang ed</w>\nrepor ts</w>\nlow er</w>\npe ar\nn c</w>\nk il\nloo ked</w>\nspe aker</w>\ns f</w>\nre spect</w>\nok ay</w>\noce an</w>\ns itting</w>\narchitec ture</w>\ntra il</w>\nse at</w>\ni ra\nle g</w>\njapan ese</w>\nd am</w>\nu lar</w>\nsw im\npolit ics</w>\nfinan cial</w>\nol d\nmou th</w>\nat temp\nde stin\nfi shing</w>\natten tion</w>\nme m\nchang es</w>\ndeci ded</w>\nreli gi\ng in</w>\nc av\nz z</w>\nad am</w>\nma c</w>\nwr ite</w>\nbeg in</w>\nsc ul\nal ter\nis s</w>\nath on</w>\nimag es</w>\nm oo\njo ined</w>\nðŁĺ ī</w>\nâŀ ¡ï¸ı</w>\npas sed</w>\nmu sli\nh ir\nlar gest</w>\ncam er\ncom ic</w>\ngh ted</w>\nrug by</w>\nbur gh</w>\ngg ing</w>\nte sting</w>\npre par\nlau gh\nal ed</w>\nimpro ve</w>\nbeli ev\nadv ice</w>\nsha res</w>\nhe art\ntur ning</w>\ns b</w>\nt el\ncaf e</w>\nn es</w>\ndani el</w>\npat ter\nt z</w>\nse tt\npar k\nc and\nst ick</w>\nhapp ens</w>\nbri an</w>\nne west</w>\ne pic</w>\nad or\nki es</w>\nwar ning</w>\nanim als</w>\ncusto m</w>\nar c\ndi an</w>\ngol d\ncor e</w>\nt f</w>\nc ity\npan ts</w>\nre ality</w>\ncon fi\nin ju\nfo x\ngu il\nk new</w>\nâĺ º\ncor rec\nitu de</w>\nd den</w>\n. #</w>\nre duc\npas s\nf on\ny a\now ner</w>\nre turns</w>\nn c\ne ast\nap ol\nin sur\nth o</w>\nsi m\njuni or</w>\nbe e</w>\nang el\natt le</w>\nelec tric</w>\nhor ror</w>\ncra sh</w>\ne ye\npat h</w>\nsou thern</w>\nemplo ye\nge o\nt an</w>\nha z\nr ally</w>\nðŁı »\nproper ty</w>\nwas n</w>\nenjo yed</w>\ngre y</w>\ng as\nbre w\nnor thern</w>\nhol ding</w>\ng p</w>\nta ke\nch art</w>\nly n</w>\ndr ama</w>\nz o</w>\npa id</w>\nthrow back</w>\ncu p\ndiscu ssion</w>\ndown town</w>\nw ill\nle w\nb is\nt ary</w>\nbre ad</w>\nup on</w>\nr ate</w>\nteach ers</w>\nit ation</w>\nanc ed</w>\ncy cle</w>\nchoo se</w>\nd c\nir an</w>\nco w\nda ve</w>\nra ise</w>\nprin cess</w>\nfa ith</w>\n- ></w>\nindu stri\nsp ain</w>\nguit ar</w>\nfac ts</w>\nm n\nsp en\ncour te\ngo tt\nprojec ts</w>\nau di\no sc\npe ter\ns and</w>\nintere st</w>\nhapp iness</w>\nven ue</w>\nsol di\nsurpri se</w>\npoten tial</w>\nper io\ncustom er</w>\ni i\ng ni\nmanu fac\ne co\nbro ken</w>\nsing er</w>\nvel s</w>\nwal es</w>\nhu s\nin j\nf our\ntal ent</w>\nd ying</w>\nmat the\nfil m\njo ining</w>\ns ell</w>\nj ar\nlma o</w>\nsur ger\nbb c\nsour ces</w>\nau stin</w>\nni k\nchar les</w>\nf am</w>\nprin ci\nange l</w>\ncas h</w>\nlo t\no red</w>\npla ys</w>\npl ate</w>\ndon e\nmemor y</w>\nbr ings</w>\nn ba</w>\nsolu tions</w>\nteach ing</w>\ngr ace</w>\ncir cu\nhel ps</w>\nfoun der</w>\nmar y\nexpl ore</w>\nde cor\npar ts</w>\nch o</w>\ninte gr\nha u\nis es</w>\npu tting</w>\nin er</w>\nr it\nv y</w>\nmic hel\nblu es</w>\nevery day</w>\nfor ms</w>\nbi o</w>\nye ar\np in</w>\nt ter</w>\nspr ing\n) )</w>\npo t</w>\nal ing</w>\nperform ing</w>\nsh an\nplan et</w>\nmus ical</w>\nhead s</w>\nit alian</w>\nstru gg\nâĢį âĻ\nw ings</w>\npu mp\nh h</w>\ntr ou\na id</w>\npri me</w>\near th\npa int</w>\nmon t\nam y</w>\nbb c</w>\nfab ulous</w>\nfru it</w>\nandro id</w>\nbour ne</w>\ncere mony</w>\nenti al</w>\n? ?\ndeb ate</w>\non ing</w>\ndra ft</w>\nsol ar</w>\nt x</w>\nj am</w>\ncor n\n!! !!!</w>\nbro o\nmil k</w>\npo sed</w>\no hi\nmo vement</w>\nb ren\npart ner\np g</w>\net te</w>\nar ies</w>\nsh out</w>\nn g</w>\nleav ing</w>\nt ells</w>\nsen s\nta ste</w>\nkel ly</w>\nwor l\ngy m</w>\nric h\ne gy\npi d</w>\nma s\nâ Ĥ\ncourte sy</w>\nfran k</w>\nincre ase</w>\nwr itten</w>\npp ers</w>\nre l</w>\nha i</w>\ns as</w>\ns ound\ntt i</w>\nw ich</w>\nri ver\n.. .\"</w>\na g</w>\nfel low</w>\nro me</w>\nsm all\ngen cy</w>\nic an</w>\nlux ury</w>\npro of</w>\nme t\nwild life</w>\nmom ents</w>\nra ther</w>\ncor ner</w>\ncom pe\ncanadi an</w>\nlik ely</w>\ntherap y</w>\nli am\neconom ic</w>\nindi e\nrou te</w>\nfi ght\nho pe\nse tting</w>\nant ly</w>\ncro ss\nfant asy</w>\nde e\nsket ch</w>\ncomp li\nym i</w>\nru les</w>\nengine ering</w>\nfig ure</w>\nro w\n. ,</w>\nf w</w>\nsyd ney</w>\nw ou\nt ation</w>\ndre w</w>\nus es</w>\nthe re\nsp read</w>\nstruc ture</w>\npat rick</w>\nappa rently</w>\nro s\nh ills</w>\nw we</w>\nann y</w>\ncom mission</w>\ndi v\nf ying</w>\ncon sul\nanal ysis</w>\nex i\nten nis</w>\nvehic le</w>\nðŁĺŃ ðŁĺŃ\nas s</w>\nhigh ly</w>\nop ened</w>\nb ann\nðŁĴ Ļ\nmp h</w>\nwi shing</w>\nv or</w>\nfi f\ngive away</w>\nr r\nra y\nje ss\ng at\nic ymi</w>\nx it</w>\nhigh est</w>\nyor k\npi e</w>\ninvol ved</w>\nhigh er</w>\nri e</w>\nmal ay\nint elli\ndesp ite</w>\nche e\nsar ah</w>\nbe an</w>\nreco gni\nar sen\ntal ented</w>\npas sion</w>\nic h\nab c</w>\nlead s</w>\ndise ase</w>\nv is</w>\nse c</w>\npre senting</w>\nm illi\nhol e</w>\nsho ts</w>\nde part\nsurger y</w>\ngov t</w>\nb in</w>\ndu al</w>\ne vi\nlon ger</w>\nev ol\nscre en\nportra it</w>\net c</w>\nlo se</w>\nch at\np en</w>\np i</w>\nom a</w>\ns ick</w>\ner c\ncompan ies</w>\nen try</w>\nplan e</w>\ngr y</w>\nven e\nliver pool</w>\npremi ere</w>\nsha red</w>\na red</w>\nfil ms</w>\nir a</w>\nholi days</w>\ncric ket</w>\nici an</w>\nv ing\n. )</w>\nul timate</w>\ndi vision</w>\ncon duc\nse pt</w>\nfor ces</w>\nmon t</w>\ns mart\ndisa pp\nsun shine</w>\nin d\nb less</w>\nma de\ncol ors</w>\nfran k\nir on</w>\nbott le</w>\ns go\nm ood</w>\nj ason</w>\ner ic</w>\nbir th</w>\nte en\nrespon se</w>\ntar get</w>\nstate ment</w>\nfe ar</w>\nth el\nal um\nar ab\nbl in</w>\ndirec tion</w>\nste ps</w>\ner ial</w>\nwor ked</w>\nat l\nðŁĴ ķ\nfel t</w>\npol i</w>\nscen es</w>\nhom es</w>\nb ell\ne at\nate ful</w>\nt in</w>\nl ace</w>\nfol ks</w>\np se</w>\nan n</w>\nwis dom</w>\nfa v</w>\nbut ter\ns r</w>\nare as</w>\nsm oo\nbi z</w>\ndg es</w>\napp o\nmo re\nthe m\neffe ct</w>\nwindo ws</w>\nsun ny</w>\ncap ital</w>\ntot ally</w>\nc ities</w>\ngr ant</w>\nmb ers</w>\ns low</w>\nau tu\nil ities</w>\nw ro\nri sing</w>\nst ics</w>\nviol ence</w>\ni gh</w>\nqu ot\nh it\nt c</w>\nherit age</w>\nbu ff\nne s\nz ar\nden tial</w>\nex ac\ned ge</w>\nde ep\naren a</w>\nbe came</w>\nbenef its</w>\nmar ks</w>\nmb er\na z</w>\nam es</w>\npre ci\ndra gon</w>\nre g\nd ings</w>\ndo s</w>\nðŁĴ ª\nn el\ns ity</w>\nme al</w>\ndi st\nleg end\npur chase</w>\npic al</w>\nst ick\nf at</w>\ndu ba\nprofe ss\ncar to\npro f</w>\ncoun tries</w>\nrespon si\nse qu\nfa b</w>\ntribu te</w>\nhon ored</w>\nprac tic\npur ple</w>\nan ton\npa red</w>\nt ough</w>\nsumm er\nenviron ment</w>\ns ons</w>\nðŁĻ ı</w>\nm ps</w>\ngi es</w>\nher oes</w>\nt elling</w>\nhen ry</w>\nf en\nknow ledge</w>\nĢ ï¸ı</w>\nf r</w>\nne g\nu re\nac king</w>\nhear ts</w>\ns oo\nhol lywood</w>\nju mp\nsau ce</w>\nschedu le</w>\ntur n\nyo ga</w>\ncre ating</w>\nc ket</w>\ncre ek</w>\nâ Ń\ncustom ers</w>\nma dri\ngu l\nasse mb\nmoun t</w>\nc ell</w>\nto p\nst al</w>\ndav is</w>\nt wi\nsig n\npremi er</w>\niti ons</w>\nhe aring</w>\nun k</w>\npati ents</w>\napp ear\nheav en</w>\nal ty</w>\ndoc tor</w>\na e\nplat form</w>\nje ff</w>\nðŁĵ ·</w>\nregi onal</w>\nbi d</w>\nbox ing</w>\nex ten\nor ity</w>\na w</w>\nw ise</w>\nil le</w>\nsever al</w>\nbi e\ns itu\nsy ria</w>\nâľ ħ</w>\nremin der</w>\nenter tain\nli on</w>\npart ners</w>\nin n</w>\nph ar\nf au\npl s</w>\nexpe cted</w>\nsug ar</w>\ndeci sion</w>\ns b\nch ron\nassoci ation</w>\nleav es</w>\nvis ited</w>\nsh ap\nðŁĴ ĸ</w>\nfur ther</w>\nh ann\nw i</w>\nrun s</w>\nl er\nfun ding</w>\nfil led</w>\n.. ....</w>\ntin y</w>\nhan g</w>\nor g</w>\nco ol\nse min\nðŁı Ĩ</w>\nspon s\nnav y</w>\nsa int</w>\ndru g</w>\nd al</w>\nr oun\nco vered</w>\ntra ditional</w>\ninvest ment</w>\nde te\nal ism</w>\nf low</w>\nn is\nsun rise</w>\nfe at</w>\nf ted</w>\nwe ird</w>\nje re\nve gan</w>\nmedic ine</w>\nan o\nac cu\ndeli very</w>\ntemp le</w>\nchang ing</w>\nwil son</w>\nphili pp\nre fe\nn d\nis er</w>\ng ay</w>\nr and\nati ves</w>\nt ely</w>\np and\nintelli g\ng are\nam bas\nde mon\ncommit tee</w>\nstrate gy</w>\nrefu ge\nbud get</w>\nprote c\npi er\nex press</w>\nnom in\neconom y</w>\nal low\nic on</w>\ngal ax\no h\nindi vi\ndem and</w>\nvir gin\nlu ke</w>\nali sts</w>\nman i\ns mi\nju dge</w>\nent y</w>\nmic hi\nresul t</w>\nam ed</w>\nspe aks</w>\n' ,</w>\nhou ston</w>\nsh in\nb ing</w>\nfl y\nch em\nau to</w>\nv as\nge t\nar m\nthank s\nd in</w>\ngan g</w>\nx x\nsi on\nloc ated</w>\np l</w>\njo sh</w>\nin fo\njo ins</w>\nadver ti\not d</w>\nel d</w>\nsi e</w>\nre asons</w>\nv ent</w>\nðŁĩºðŁĩ ¸</w>\nâ ł\nconvers ation</w>\nstu di\nðŁĶ¥ ðŁĶ¥\ngo s</w>\ns ounds</w>\nun it</w>\nmu sc\nge l</w>\nack ed</w>\npac i\nco s</w>\nde re\nu u\na o</w>\nla m</w>\ninspir ing</w>\nar ms</w>\ntw are</w>\nmat ters</w>\nad dic\ndu de</w>\nex t\ncri sis</w>\nb ath</w>\nme et\nsing h</w>\nexpe ct</w>\ndel hi</w>\nresc ue</w>\nwor st</w>\nau g</w>\nshi pping</w>\nser ving</w>\nst o</w>\ndar k\nac es</w>\nhistor ic</w>\nlandsc ape</w>\ndesig ner</w>\nb illion</w>\ngr ateful</w>\nwa ke</w>\ne ve\nm iller</w>\nhou sing</w>\ndy nam\nis co</w>\nbe ha\nsh op\npr ou\ne as\na sia</w>\ne ding</w>\nk on\ndepart ment</w>\naw ar\nmar ine</w>\nin ci\nphotograph er</w>\nta pe</w>\nlo go</w>\nr ings</w>\nd it\n-- --\nvin yl</w>\nw c</w>\nvo ting</w>\nse ven</w>\nambas sad\ndal las</w>\nt u</w>\ncom ment</w>\nk ra\nb les</w>\nw ag\nu d</w>\nau dio</w>\nstri ke</w>\noffici al\no ts</w>\nme tho\nto ols</w>\nra di\nal an</w>\nhun t</w>\nwat ched</w>\na ke</w>\nfa ke</w>\ndrin king</w>\nmer ry</w>\nm l</w>\nb day</w>\nri o</w>\nni ke</w>\nc ant</w>\nre pe\nco stu\nmur der</w>\nak ers</w>\nch ers</w>\nou ts</w>\nbeg inning</w>\nso s</w>\nad es</w>\nn in\nnot es</w>\nwro te</w>\nsol o</w>\nc i</w>\nli ghting</w>\nur ban</w>\nbre xit</w>\natt end</w>\nshir ts</w>\npla yo\nac tress</w>\npl ic\nstand ard</w>\nquot es</w>\npar ade</w>\nanci ent</w>\nÂ ©</w>\ntur ing</w>\nre e</w>\npri mary</w>\nfla sh</w>\nciti z\nmat es</w>\nste in</w>\nz i</w>\nclin ton</w>\nsk in\ngen e\nhu m\ng ar</w>\nt le</w>\ny i\nfo cu\nde an</w>\npl ants</w>\ncy ber\nb u</w>\nom e</w>\nho p</w>\nad dress</w>\nti x</w>\ngi fts</w>\nrelation ship</w>\nsub scri\nfe ed</w>\nexac tly</w>\nhaw ks</w>\nex o</w>\nstre ss</w>\ns n</w>\narre sted</w>\nan e\nsof tware</w>\nz ero</w>\nthe me</w>\nmu mb\nim migr\nmi a</w>\nmake up</w>\nple asure</w>\nuni vers\nhar b\neng ine</w>\nap er</w>\nr in\nbr a</w>\ninstitu te</w>\nle ather</w>\nal th</w>\nsing ing</w>\nco s\ngh ty</w>\nme as\nst ic\nsi de\ninsur ance</w>\nco t</w>\npit ch</w>\nmoun tains</w>\ncri min\nsu pre\nvalent ine</w>\nat er</w>\nwou ldn</w>\nsc ale</w>\nrel ated</w>\nre gar\nstar tup</w>\npack ed</w>\nmi ke\nweek ly</w>\np ts</w>\ncoun t</w>\nha r</w>\ngott en</w>\nmin d\nber lin</w>\ncon ditions</w>\nswit ch</w>\ncor n</w>\nsa ve\ng li\nemer gency</w>\ntun ed</w>\nsto ck\ndiscu ssing</w>\nevery body</w>\ns day\nwhe ther</w>\nwrest ling</w>\nec es</w>\ngen der</w>\nch en\nðŁĳ Ģ</w>\nmadri d</w>\nmar athon</w>\ne gg</w>\ni er</w>\nth x</w>\nas king</w>\nkore a</w>\nwol f</w>\nay a</w>\ng m</w>\ng au\nat ory</w>\nv r</w>\ngra ss</w>\nk illing</w>\nb ble</w>\nur o</w>\nun i</w>\ne th</w>\nsh ore</w>\nth en\nre ale\nbot tom</w>\nex erc\nk ar</w>\nor ies</w>\nad ri\nsan ds</w>\nse x</w>\n. '</w>\nvolunte ers</w>\nper form</w>\npar liam\ninclu de</w>\ndeli ghted</w>\nexecu tive</w>\nfu el</w>\nkis s</w>\nã ħ\nchar ge</w>\nh u</w>\nca kes</w>\nve t</w>\ng lu\nagre e</w>\npr ices</w>\nn au\nh l</w>\ng ru\nra j\nstreng th</w>\nb ic\nsp ending</w>\nal es</w>\nav en\nb last</w>\n: (</w>\nyo f\nnor mal</w>\nsi x\nqu ick\nse a\nd aw\nmee ts</w>\nlo vers</w>\nupd ated</w>\npo tat\ncomple ted</w>\ncoo k</w>\nopportun ities</w>\np ure</w>\norgan ic</w>\ntem per\nc am</w>\navo id</w>\npar king</w>\nduba i</w>\nand o</w>\ndi stri\nto y</w>\ncomple tely</w>\ndon ald\ntri al</w>\nbas s</w>\nb oun\nback ground</w>\nv as</w>\nmar vel</w>\nlu m</w>\nru s</w>\nt ool</w>\ncom missi\nthrow back\nfin ding</w>\nis lam\n! ?</w>\nst op\ne vil</w>\nor al</w>\nresi dents</w>\ni denti\no ak\nðŁİ ¶</w>\nl il\nspan ish</w>\nchap ter</w>\nsto pped</w>\ndirec t</w>\nho sted</w>\npic ked</w>\nlab our</w>\nlew is</w>\ndefen se</w>\nà ®\nhealth care</w>\nwh is\nmat h</w>\npe ak</w>\nra ised</w>\nfi x</w>\nbu ll</w>\nth ir\nchel sea</w>\nfol k</w>\ntr e</w>\ncan di\npau l\nei ther</w>\nad am\npoe try</w>\njewel ry</w>\nðŁ ¦\npr ay</w>\nØ §\ng c</w>\no z</w>\nwi shes</w>\nfore ign</w>\nsun g</w>\nlear ned</w>\nen e</w>\nn ing\nmicha el\nillu stration</w>\nlegend ary</w>\nw av\nb au\nðŁļ ¨</w>\ncal end\nstre ets</w>\nâ Ĩ\nmon ster</w>\nbu ck\ng r</w>\nscho ol\nba th\nwa ste</w>\nne ck\nha wa\nbe ach\nre plac\njec t</w>\non er</w>\nfac tory</w>\ncoun t\nðŁĵ ¸</w>\nmor gan</w>\nder ing</w>\nse an</w>\nsteph en</w>\nde p\nno vel</w>\nvide os</w>\nic al\npress ure</w>\narsen al</w>\nex pre\nir s</w>\ntren ding</w>\nss a</w>\nfla sh\nre sear\nthr ough\nprofess or</w>\nscul p\nto s</w>\ngg ed</w>\nmm a</w>\nbe e\na pe\nhun ter</w>\nam i\nhe i\npla stic</w>\nbu cks</w>\nuni verse</w>\nle gen\nniger ia</w>\nple ased</w>\nri s\nthin ks</w>\nautu mn</w>\ni ds</w>\nd is</w>\nanth ony</w>\nðŁı ½</w>\nak ed</w>\ngla sses</w>\nfin ance</w>\nz er\nk as\ncon tract</w>\nnu mbers</w>\nsh aw\npartner ship</w>\nt il\nlaun ched</w>\ns al</w>\nvictor ia</w>\ntheat er</w>\nusu al</w>\nnam es</w>\nperio d</w>\neli za\ni th\nbar cel\nro cks</w>\nbag s</w>\nmat e\ndistri bu\nj on</w>\ndi ffic\nali zed</w>\ncur ren\nsco red</w>\nb ha\ndu blin</w>\nro se\nin ted</w>\nsoli d</w>\nbeha vi\nwal ker</w>\nsimp ly</w>\ngarden s</w>\nhead ed</w>\nin i\nohi o</w>\nwe ap\nf o</w>\ngl en\ne state</w>\nran dom</w>\nth under\nthr u</w>\nk ill\njac ket</w>\nit i</w>\nentertain ment</w>\nthanks giving</w>\nent al</w>\nen coura\nel o\na ther\ntan k</w>\nhigh lights</w>\nf ting</w>\nru le</w>\nmodel s</w>\nbor der</w>\nbj p</w>\nhus band</w>\nin done\nken ya</w>\nbe ars</w>\nal o</w>\nn inten\npi x\nstr o</w>\nor ders</w>\nsal ad</w>\nro ads</w>\nn or</w>\nl ation</w>\nsop hi\nðŁı ¼\npi eces</w>\nb one</w>\nmin s</w>\ninclu des</w>\nnu tr\nphi l</w>\ns ent\nfun dra\nga in</w>\nbor ough</w>\nn ad\nmon day\nactiv ity</w>\nit ems</w>\nbe coming</w>\nken ne\nde tro\ncar di\ngue sts</w>\nu x</w>\nworld wide</w>\nsever e</w>\nnew s\nthank ful</w>\nfic tion</w>\nve ge\nm all</w>\nsi an</w>\ner al</w>\ninj ury</w>\nle e\nmen u</w>\ndanc ing</w>\nscot ti\nexam ple</w>\n( #</w>\nna i\nstudi os</w>\nba i\nðŁĴ Ľ</w>\nj av\ndiam ond</w>\nvin ce</w>\nric k\nprote ction</w>\nlin col\ncham ps</w>\nappro ach</w>\nd ar</w>\nm ile</w>\nclou ds</w>\nje ff\nin fin\nl ers</w>\np les</w>\npe ace\ngo p</w>\nâĻ ¡</w>\ntech n\nstr a</w>\na verage</w>\nef fort</w>\nintroduc ing</w>\ndi versity</w>\naustr alian</w>\nam p</w>\nboo st</w>\ns ke\npati ent</w>\nappreci ate</w>\nici ans</w>\npu r</w>\nf ell</w>\nwoo ds</w>\nillu str\nðŁ ĸ\nag ency</w>\nac tions</w>\nbrit ain</w>\nunder way</w>\nse attle</w>\nel and</w>\nag o\nf ill</w>\nstre aming</w>\npro test</w>\nchalleng es</w>\nky o</w>\net sy</w>\ncoo king</w>\nexper t</w>\nru ss\nrain bow</w>\ncommer cial</w>\nsp in\nbe ats</w>\nc ry</w>\nval u\nel i</w>\nth row</w>\ngr ams</w>\nle vels</w>\nmichi gan</w>\nc ad\nador able</w>\nconst itu\nw s\npu b</w>\nmid night</w>\nth at\nnet fli\nbraz il</w>\ndie go</w>\nregu lar</w>\njo y\nâĤ ¬</w>\nli qu\nea stern</w>\nk ni\nfl at</w>\nn p</w>\nbro wn\nw er\nse y\ntt ers</w>\nac ting</w>\nv anc\ncy cling</w>\nprogram me</w>\nra w</w>\ncomple x</w>\ntat too</w>\nthrowback thursday</w>\nse ssions</w>\nro oms</w>\nsi ght</w>\nspeci es</w>\nbom b</w>\nlau gh</w>\nke eps</w>\nmo on\noffic ers</w>\ncon ver\nt r</w>\nha sh\nt ack\nri ous</w>\nad ap\na j</w>\nreco gn\nex po</w>\nsug ge\nconfir med</w>\nrol ling</w>\ndre ssing</w>\nic t</w>\nfri day\nph ones</w>\nri dge</w>\ncon cept</w>\nro y</w>\nke ys</w>\nef for\nc ate\nk ne\nev en\nl ay</w>\ncommun ities</w>\nmo d\nn az\nevery where</w>\nal ab\nbit coin</w>\nban ks</w>\nout door</w>\nfeder al</w>\nsto res</w>\nh p</w>\nc al</w>\nm ely</w>\nsig nific\nbe ar\nre public\nclo ser</w>\nal lah</w>\npic k\nx d</w>\npal ace</w>\nch ill</w>\nb am\ner ous</w>\nun a</w>\nal len</w>\nout standing</w>\nolym pic</w>\nsupp ly</w>\nfi gu\nv au\nl p</w>\nchar lie</w>\nun es</w>\n> >></w>\nlegen ds</w>\nici al</w>\nco ast\nbenef it</w>\nmul ti</w>\nf its</w>\nfar mers</w>\nam ount</w>\nsi sters</w>\nhar ve\nhon ey</w>\nque en\nb ers</w>\npl ann\nâŃ Ĳ\nm u</w>\nbarcel ona</w>\nal ber\nstat us</w>\nre main</w>\nex tra\nc andy</w>\nvi ous</w>\nâľ Į\no v\nwarri ors</w>\n-- ></w>\nju mp</w>\nam ar\nx mas</w>\nstu dies</w>\ni ors</w>\nk or\ndon ate</w>\npre p\nfi sh\nim a</w>\npain ted</w>\nad mini\nco splay</w>\nspor ts\ndro ps</w>\nfi ghter</w>\nevi dence</w>\nðŁĴ ª</w>\nla ke\nro b</w>\ncine ma</w>\npro file</w>\nÃ ±\nstan ds</w>\nleg acy</w>\nsh ape</w>\nro of</w>\nci vil</w>\ni ans</w>\nsy l\nsh am\nvo ted</w>\nre tail</w>\nph illi\nli sted</w>\ndu ty</w>\nn b\nth es</w>\nf are</w>\nau ction</w>\nffici al</w>\nstor ms</w>\nd p</w>\nl oun\nsh ops</w>\nal y\nani me</w>\nmulti ple</w>\nðŁĺį ðŁĺį</w>\npsy cho\nje an</w>\nap art\ncandi date</w>\ngg y</w>\ncon f</w>\njose ph</w>\nw ick</w>\nme at</w>\nfr ame</w>\nc l</w>\nfor got</w>\nph y\nf ing\nli ed</w>\nre p</w>\nse ed</w>\nf all\nu fc</w>\nnu t</w>\nlin d\nmo de</w>\nfiel ds</w>\nen ce\ns ley</w>\nðŁ¤ Ķ</w>\nch ill\nfollow ed</w>\nannoun ces</w>\ncor ru\ntro phy</w>\nthem selves</w>\nac le</w>\nal du\nk ong</w>\nl on</w>\ns v\nbro ke</w>\nander son</w>\nta i\nstor y\ntempor ary</w>\nactiv ities</w>\nk ati\nari z\ncry stal</w>\nspo ke</w>\nextre mely</w>\ntra ding</w>\nðŁĴ ļ</w>\nÃ ¼\nin ch</w>\ned in\nout fit</w>\nequ ip\nma di\nform ed</w>\nbe ef</w>\npo p\nti ger</w>\nthis day</w>\nti red</w>\nneigh b\nre tro\nis a</w>\nun t</w>\nt as\nkan sas</w>\nde st\nsecon ds</w>\nta y\nhur ric\no u</w>\ngalax y</w>\ndad dy</w>\nbro w\nbur ger</w>\nen ced</w>\nde sk</w>\nac cur\nsecre tary</w>\nel ite</w>\nk ab\nch in\ntouri sm</w>\nbud dy</w>\nici de</w>\ndre ssed</w>\nu d\nvac ation</w>\nche ers</w>\ncom for\ncharac ters</w>\nj et</w>\nbu ying</w>\nl ins</w>\nn ap\nreale state</w>\nli e\naf c</w>\ni ii</w>\nf ame</w>\nn r\nb at</w>\nag ent</w>\nma kers</w>\nâĢ ¼\nsec tor</w>\nop ti\nle on\ndi et</w>\npra yer</w>\nhi p</w>\nmi r</w>\nle x\nbr y\nan a\npas sing</w>\nw en\nreco very</w>\nak i</w>\npo pul\nres ort</w>\nmar ia</w>\nstu ck</w>\nread s</w>\nti er</w>\nperfe c\nnetfli x</w>\np oo\ncham p</w>\no c</w>\nre duce</w>\nwe red</w>\ncomm ents</w>\ncla im</w>\nacci dent</w>\ns ag\nh ack\nsal t</w>\nkin da</w>\nk iller</w>\ni os</w>\nz y\nex change</w>\nlec ture</w>\neng er</w>\nic king</w>\nt au\nreve als</w>\npri son</w>\nz om\ngh an</w>\nu l</w>\njour nal</w>\ni ot</w>\ntr in\njon a\ngovern or</w>\ncap e</w>\nquar ter</w>\nspec tive</w>\nimpre ssive</w>\nbab ies</w>\nt x\nm ill</w>\no y\nhar ri\njo int</w>\nsu e</w>\ncollabor ation</w>\ntren d</w>\nrevolu tion</w>\nre new\nalum ni</w>\nge tt\nsh ell</w>\nsun day\nent u\nni c</w>\ndonald trump</w>\nblock chain</w>\npaci fic</w>\nexpla ins</w>\nsp y</w>\nad voc\npar adi\nto f\nstar ring</w>\np av\nfe ed\nbr ac\nsmo ke</w>\nham p\ny am\nto kyo</w>\nsi mon</w>\nd h\ne ffici\nphys ical</w>\nn j</w>\nell i</w>\ns low\ngradu ate</w>\nameric ans</w>\nti fy</w>\nf red</w>\nap ore</w>\nfin ds</w>\nrob in\nwe t</w>\nnot ice</w>\nse mi</w>\nun ve\nk om\npil ot</w>\nscre ening</w>\nda ily\nðŁĴ Ĺ</w>\nroy al\nsp a</w>\nvo tes</w>\nn ag\nwh ate\natt ending</w>\nexper im\nad dition</w>\nk ate</w>\nsto l</w>\nm ali\nfoo t\nchri st</w>\nch an</w>\nde e</w>\nlic en\nglo bal\nmo ore</w>\nti a</w>\nbri gh\nmyster y</w>\ny ay</w>\nâĿ¤ï¸ı âĿ¤ï¸ı\ncre ati\nme chan\nclo ck</w>\ndi c</w>\nâĢ Ķ\npp er\nal ph\nthrough out</w>\nal low</w>\nre sources</w>\nselec tion</w>\nham il\nbb q</w>\naa aa\nvirgin ia</w>\ndis ney\nen g</w>\nso red</w>\ndrin ks</w>\nf ancy</w>\nconsi der</w>\nend a</w>\njan e</w>\nhand made</w>\ndu l\non tari\ni us</w>\ns ville</w>\ncolor ado</w>\nwhate ver</w>\nwhe el</w>\npromis e</w>\nne ver\ndesig ns</w>\nab ly</w>\nsex ual</w>\nvanc ou\nat i</w>\ncon vention</w>\ncul tural</w>\nsing apore</w>\npro mo</w>\nload ed</w>\ngla sgo\npp l</w>\nn oo\nke e</w>\nste m</w>\nmen tion</w>\ni do\ncru ise</w>\nri ding</w>\nbe comes</w>\nbe y</w>\nâļ½ ï¸ı</w>\ntw in</w>\ndedic ated</w>\nna sh\nde si\nwork out</w>\njen ni\ni v\ngrou ps</w>\nrela x\npho eni\nli ft</w>\nmix ed</w>\nm ck\np c\nmu st\nme tro</w>\nci es</w>\ny ar\na im\nang er</w>\ni e\nrec y\nmarri ed</w>\ndro pped</w>\neng ag\nle st</w>\nambassad or</w>\nop h\nde s\nw ick\nassi stant</w>\nnat ur\nfa il</w>\nl td</w>\nshor t\nk ap\nsha w</w>\nbi gger</w>\nrema ins</w>\ncrit ical</w>\nsur vey</w>\nco verage</w>\ner son</w>\nwin d\nn b</w>\nbil ly</w>\nlet es</w>\nac ts</w>\njim my</w>\nat lan\nal and</w>\nt c\nimport ance</w>\ndam age</w>\nf g</w>\nstor age</w>\ntw t</w>\nbon d</w>\nbal ance</w>\ncr ying</w>\npu ppy</w>\nvo te\npu sh</w>\nðŁĴ ľ\npol y\nme l</w>\nlon don\nterr ori\neffec tive</w>\ncorpor ate</w>\natl anta</w>\njac o\nnas a</w>\ngre ek</w>\nsen ate</w>\ni sh\nev a</w>\nintellig ence</w>\neffor ts</w>\nal co\nk un\nh all\ndi ag\nclaim s</w>\nfir st\nh b\nba e</w>\nv ul\npu ll</w>\nÂ °</w>\nse par\nspe ed\nvic ti\non thisday</w>\naudi ence</w>\nr ates</w>\nte ach</w>\nfil ming</w>\nbu sh</w>\nson g\ny um\nbr un\nra ine</w>\naw a</w>\npar ks</w>\nð Ŀ\nra bb\nra ch\nra id</w>\nreach ed</w>\nra il</w>\nmo ves</w>\nselec ted</w>\nfr i</w>\nra ising</w>\nom y</w>\nst ones</w>\nsu k</w>\nfranc isco</w>\ncas es</w>\ncap it\ncon fu\nw tf</w>\npo ke\nequip ment</w>\ngre g\ness ential</w>\noff ering</w>\nne x\npi es</w>\nbe c\ncre ation</w>\nchair man</w>\ncro wn</w>\nw al</w>\njohn ny</w>\nshi ft</w>\nne ck</w>\nban g</w>\nbir d\nðŁĺ ı</w>\ndu ck</w>\nre serve</w>\nde pu\nma sters</w>\nover all</w>\nno tic\nju ice</w>\nsne ak</w>\nche er</w>\ncla sses</w>\neag les</w>\nn ca\ncar pet</w>\nci vil\ncoach es</w>\nhar ris</w>\nu ps</w>\nb alls</w>\ndec or</w>\nmar tin\nro s</w>\nv ice</w>\nannoun cement</w>\nwho se</w>\nti gers</w>\nste red</w>\nc ts</w>\ndr am\nste el\nyoun g\ninst all\nsupp o\nrecor ding</w>\nde ck</w>\nse ats</w>\nl der</w>\nang le</w>\nbo t</w>\nsty les</w>\nelec tions</w>\nfor tun\nn ab\nbut ter</w>\nari an</w>\nka sh\nin ner</w>\nou red</w>\nbe ast</w>\nwe i\nic onic</w>\nexper ts</w>\nne cess\nb eng\njam es\nli a</w>\ngre ece</w>\nðŁĵ ·\nðŁĺ ģ\ngood bye</w>\nm itch\ntw ice</w>\nmumb ai</w>\nste am</w>\nru sh</w>\nmed al</w>\nne tt</w>\nfashi on\nt ar</w>\nr s\nsav ing</w>\nric ul\nl m\nsleep ing</w>\nbrook lyn</w>\nmis s\nsen ding</w>\ndisco vered</w>\nsp here</w>\nof theday</w>\nk icks</w>\nmissi ons</w>\nw right</w>\ner n\nght ly</w>\ni ous</w>\nmel bourne</w>\nstar tu\nmo ved</w>\ncar ry</w>\nd ak\nag ues</w>\nbel gi\ne ma\nway ne</w>\ndo t</w>\ner ie</w>\npe l</w>\nit unes</w>\nmatthe w</w>\nno body</w>\nest ab\ncal m</w>\nwin ds</w>\nlu c\nprep are</w>\ntren ds</w>\nexerc ise</w>\nadv ant\nðŁĴ ¯</w>\nathle tics</w>\napp s</w>\nc tions</w>\nadv ance</w>\nlaun ches</w>\nlitt le\nreal donaldtrump</w>\neliza beth</w>\ncarol ina</w>\nhu b</w>\nhi dden</w>\nn w</w>\nus er</w>\npol l</w>\ngreat er</w>\nmo st\nf ed</w>\np at</w>\nlife style</w>\ns ati\nsco res</w>\nmarri age</w>\nl r</w>\naven ue</w>\nde serve</w>\nri f\nðŁ Ĺ\nwat ch\nchampion ships</w>\ngr ay</w>\nen ni\ncot ton</w>\ng om\nwhe re\npack age</w>\nsu m\nab solu\nnew ly</w>\nfoo ds</w>\nty ler</w>\nassemb ly</w>\nmusli m</w>\nban k\nre memb\nop tions</w>\nproduc er</w>\nland o</w>\nfun ds</w>\nu pper</w>\nshad ow</w>\npro gre\nco p</w>\ning e</w>\nleg s</w>\ndetro it</w>\nhill ary</w>\njo se</w>\ngi ants</w>\nsou p</w>\nsustain able</w>\nt us</w>\nclo thes</w>\nroc king</w>\nn z</w>\nmin ne\nmat eri\nbru ce</w>\near t\nca sting</w>\nindepend ent</w>\nthou sands</w>\nta h</w>\nde cl\nveter ans</w>\nli ons</w>\nwra p</w>\nâĢ ¦\nde ss\nbl ing</w>\nst ine</w>\ne ggs</w>\no on</w>\nclo sing</w>\nz ay\nat t</w>\nbac on</w>\nfa il\nariz ona</w>\nde pre\ngho st</w>\nnew sp\nw ers</w>\nvi p</w>\nli ked</w>\nid ent\nvolunte er</w>\nad ult</w>\npu pp\ncir cle</w>\nmat erial</w>\ndegre e</w>\ngro wn</w>\nboo m</w>\ncalend ar</w>\nsu r</w>\nvie wing</w>\nath letes</w>\nch and\nre ll</w>\nasi an</w>\nen tr\nvol ley\nvicti ms</w>\nbo dy\nm ama</w>\ntrans fer</w>\nge ek</w>\nin dic\nsav ed</w>\nma i\ng ent</w>\nit s\nloun ge</w>\nk ol\nthe ory</w>\nsitu ation</w>\nis lands</w>\nar th\nz oo</w>\nfloo d</w>\nvi ously</w>\nshow ed</w>\nparliam ent</w>\nch ev\nel ine</w>\nat trac\nab ad</w>\nta il\nh rs</w>\nlu s</w>\npor tu\ngor y</w>\nprovi des</w>\nto ys</w>\nde ath\nin fe\nan ce\ng le\nli am</w>\nlo ver</w>\nhu d\ndv d</w>\nreve aled</w>\ng w\nre ment</w>\nca the\nl ying</w>\nra dio\nder by</w>\nstor s</w>\nche mi\nhosp it\nâľ ¨\n' :</w>\nilo ve\nle mon</w>\nre public</w>\ns ni\nne ss\ndo or\nre action</w>\npre gn\nfla v\nschol ar\nspo tify</w>\nis ation</w>\nvis ual</w>\naw are</w>\nspon sored</w>\njo ke</w>\nless ons</w>\nleg is\nlo ck\nsi mil\nðŁĺ ĭ</w>\nkin d\nla y\nma h\nho ping</w>\nvancou ver</w>\nas er</w>\nclean ing</w>\ngal a</w>\nthre at</w>\nla p\nach e</w>\nro mance</w>\nex pen\nre post</w>\nz am\ne pi\nmir ror</w>\no ak</w>\nad ul\nbat man</w>\ns lu\nl c</w>\nvie wed</w>\nre views</w>\nd ates</w>\nindone sia</w>\nacti vi\noff en\nlea f</w>\ni si\nag ricul\ncostu me</w>\ns ites</w>\nspir itu\nappear ance</w>\nir y</w>\nst air\napplic ation</w>\nspec tac\nic ity</w>\nski es</w>\nhand le</w>\npun k</w>\nparadi se</w>\nt n</w>\nde al\nprovi ding</w>\ndo c</w>\nrecei ving</w>\nbre w</w>\nmicro soft</w>\nÃ ¶\nfer r\nme tro\nth ail\ny um</w>\ncar ter</w>\nÃ ¡\ngent le\nbre aks</w>\ncoo per\nshow case</w>\ncu tting</w>\negy pt</w>\nbab y\nsemin ar</w>\ngl ori\nss on</w>\nfa ve</w>\nre hear\nlo tte</w>\nla dy\nal as\npre p</w>\ndeli vered</w>\nnu clear</w>\nir o</w>\nengag ement</w>\nat ta\ncon ven\nz an\ngl ory</w>\nhol ds</w>\nbusine sses</w>\nstr ange</w>\nsch e</w>\nit self</w>\ngra d</w>\nmar kets</w>\nf alling</w>\nst ats</w>\nge on</w>\nbu dd\nli s\nshe et</w>\nthi si\nco lo\ndeser t</w>\nregi stration</w>\nig n\nexpla in</w>\ninter ior</w>\nla ws</w>\nwrit ers</w>\nspr ings</w>\nk r\nfri ed</w>\nblo om\ninf ra\na o\ncre d\npa st\nline up</w>\nbo o</w>\nbre a\nboo ts</w>\ncelebr ity</w>\natt acks</w>\nbro ok</w>\nev es</w>\nex cu\ncher ry</w>\noo p</w>\nfas cin\nboy friend</w>\nse as\nn ine</w>\neffec ts</w>\npo wered</w>\nk ha\nðŁĺ Ģ</w>\nsh out\ncon dition</w>\ni j\nher o\nenter pri\nwin ter\napplic ations</w>\nsho e</w>\ng el\nbatt le\npro grams</w>\nw art</w>\nðŁĴ ¥</w>\nra p</w>\nho l</w>\ndang erous</w>\ndi a\ncoun ter</w>\nric s</w>\ni or\nk night</w>\nco at</w>\nemo tional</w>\nat ures</w>\nd as</w>\nwhe el\nfore cast</w>\ntran sport</w>\nglasgo w</w>\nking dom</w>\nprepar ing</w>\nim medi\nff in</w>\nawar ded</w>\nprin ting</w>\nro man</w>\nfight ers</w>\nany more</w>\nbel t</w>\np ine</w>\nwin e\nx i</w>\nemploye es</w>\nlogi es</w>\nal led</w>\nde mo</w>\nbirth day\nange les</w>\nlo g</w>\ndri vers</w>\nneck lace</w>\nk ath\ns it\nathle te</w>\nef s</w>\ns burg</w>\npur pose</w>\nresi stance</w>\nrele ases</w>\nt is</w>\nvari ous</w>\ndeli ver</w>\nch al\ns anc\nopp o\ncra w\nneu ro\ndr a</w>\nsuppor ters</w>\nsna p</w>\ndiffic ult</w>\nswe ar</w>\nlogi st</w>\npa th\nattemp t</w>\nà ¥\nswim ming</w>\nste ve\nhur t</w>\ninclu ded</w>\nb ap\nwa re\nðŁĴ ĭ</w>\nend ers</w>\nja ke</w>\nle eds</w>\ncli mb\nl b</w>\nim ple\nli sa</w>\nclo thing</w>\nðŁĺ İ\nd t</w>\ncom pla\nsw ing</w>\nstra w\nv als</w>\nk le</w>\nus ers</w>\nstor m\ncu ts</w>\nontari o</w>\np an</w>\nhand some</w>\ni ow\nar gu\nchec king</w>\nscotti sh</w>\nĶ ï¸ı</w>\nsi er</w>\nem ma</w>\npo d</w>\npatter n</w>\nde sh</w>\nen h\ned ward</w>\nt ing\nk h</w>\nhal f\nlincol n</w>\nmo ther\nal leg\nr c</w>\nvolley ball</w>\nd n</w>\ng ay\nall y\nle ton</w>\ngro ve</w>\nl oud</w>\nadv anced</w>\nre spec\ncli ent</w>\nsupre me</w>\nthail and</w>\nho w\ngi g</w>\nto i\ndo t\ndol lar</w>\nðŁĳ ĩ</w>\np it</w>\nr b</w>\nh n</w>\nproduc ed</w>\ngg ers</w>\nâĨ Ĵ</w>\nml b</w>\ncan vas</w>\nfin eart\nus d</w>\nin the\np son</w>\nactu al</w>\ns l</w>\nt b</w>\nip ad</w>\nen sure</w>\nu mb\nw d</w>\nsk a</w>\nmar s</w>\nk end\nf eli\nth ing\ncount down</w>\nabsolu te</w>\nr out\ndra l</w>\np y</w>\ninju red</w>\nmin t</w>\nhun ting</w>\nmm er</w>\ns age</w>\nli gh\nac ity</w>\nex pan\nmur ray</w>\nar o\nsec ure</w>\nfour th</w>\neag le</w>\nreli ef</w>\nst akes</w>\nindustri al</w>\nclar k</w>\nunder standing</w>\nsee m</w>\npl enty</w>\nsil ver\ncla u\nthre at\nsa il\npro duce</w>\nab str\nis is</w>\nb r</w>\neng ers</w>\nwor ry</w>\nbie ber</w>\ns j\njust in\nreali ze</w>\nky le</w>\nesp n</w>\nfil ter</w>\ns ch</w>\nty pes</w>\ngame dev</w>\nd ing\ntwit ter\nsoldi ers</w>\np om\ncar bon</w>\ny ards</w>\nchild hood</w>\nri ed</w>\nke l</w>\nele ph\nt ons</w>\nkey note</w>\nqui et</w>\nwi re\npo sting</w>\nis sa</w>\nrepre senting</w>\nbac ks</w>\nalex ander</w>\ncelebr ates</w>\nta ining</w>\n| |</w>\nch or\nesc ape</w>\npe ek</w>\nti ves</w>\nfiel d\nssi e</w>\nim pac\nspons or</w>\nr c\nwe dd\ncann ab\nsi des</w>\ntrac ks</w>\ncom par\ncon trac\ntechn ical</w>\nbi ble</w>\nexpl oring</w>\nsh are\ntra v\nn ate</w>\nill o</w>\nsc ru\nm ingham</w>\ngun s</w>\nof the\nsh ame</w>\nse es</w>\nca tho\nac cess\nce l</w>\nrepor ted</w>\nÂ »</w>\nmari o</w>\np ad</w>\nhope fully</w>\nou se</w>\ny on</w>\ndisapp o\nol o</w>\np itt\npa c</w>\nga p</w>\ncru sh</w>\ns g</w>\nk le\nge m</w>\nemp ire</w>\ndir ty</w>\na is\navi ation</w>\nze aland</w>\nfac ing</w>\nhigh way</w>\nd anny</w>\nspi der</w>\not ta\nðŁĺ Ħ</w>\nw y</w>\ncol ours</w>\nin fl\nco sts</w>\nolym pics</w>\nau s</w>\nh m</w>\nho ward</w>\npas ses</w>\nlau ren</w>\nmu sh\nop in\nr ho\ndisc ount</w>\noper ation</w>\nem ily</w>\nmm m</w>\ncham ber</w>\nd il\nto yo\nshi p\nsam u\npic tured</w>\nun ic\npo l</w>\nkeep er</w>\ncarto on</w>\nst en\nig nor\nn ations</w>\nn l</w>\nta sting</w>\ndeta il</w>\noffici als</w>\nmo tor</w>\nfranc is</w>\ned itor</w>\nðŁĳ ĩ\npe ts</w>\nrang ers</w>\nt g\nr n</w>\nw ri\nnic hol\ni se\nspo ts</w>\nani e</w>\nchec k\ntri ple</w>\nku mar</w>\nspe akers</w>\nic ing</w>\npre pared</w>\nab use</w>\nfriend ship</w>\nmon th\nswi m</w>\nair e</w>\nsc ent</w>\nhamil ton</w>\nindi an\nj es\nyum my</w>\nte ars</w>\nda wn</w>\ni zed</w>\nworl ds</w>\nðŁ ķ\nb illi\nst one\nn hs</w>\nba sic</w>\np or</w>\nst le</w>\nir on\nol der</w>\ncle vel\ne ing</w>\nðŁĺįðŁĺį ðŁĺį</w>\nprin ts</w>\nfir m</w>\nair craft</w>\nfin est</w>\ndevel op</w>\naar on</w>\nt z\ngra ham</w>\nown ers</w>\nfo li\nless on</w>\nqu es</w>\nbab e</w>\ncra ft\nph en\nju n</w>\nbir mingham</w>\nv ine</w>\nll er</w>\ni an\nfineart america</w>\nevol u\nst ab\nim per\nwar d\ncom ic\nwi z\ninv ited</w>\ndu ke</w>\nmat ch\npor ts</w>\nro ger</w>\ndiag no\nke pt</w>\nte st\nvis u\nr hy\nso c</w>\nto x\nb aker</w>\nsur face</w>\nco vers</w>\nman s</w>\nb its</w>\nx box</w>\nff le</w>\nn an</w>\ngar d\nh art</w>\nwat ers</w>\nv illa</w>\nre tro</w>\nlight ning</w>\ncatho lic</w>\ndemocr acy</w>\nneigh bor\npen n\ncr an\njona than</w>\nla ura</w>\nvi bes</w>\nsu b</w>\ncoach ing</w>\nclear ly</w>\nuk raine</w>\nbra ve</w>\ncommit ment</w>\nt all</w>\nmar t</w>\nra p\nmo di</w>\nsco tt\nbro s</w>\nshow er</w>\nðŁı ¾</w>\nâĺº ï¸ı</w>\ncou sin</w>\nappro ach\nbr e</w>\ncom pos\nhil ari\nphil ly</w>\ng ad\nquick ly</w>\nri an</w>\nt m</w>\nvir tual</w>\nhou ses</w>\nk t</w>\nphoeni x</w>\nw ire</w>\nff y</w>\nb unch</w>\nanc ing</w>\ntal e</w>\nsnap chat</w>\nstar ter</w>\nh t</w>\nk icking</w>\nap art</w>\nth y\n) !</w>\nblo gger</w>\nit z</w>\ncom fort</w>\nang els</w>\nw ash</w>\n\" :</w>\nar gent\nre quest</w>\nhon est\nmi ghty</w>\nbo bby</w>\nk g</w>\nro l</w>\nthou se</w>\nex po\nh c</w>\ntab les</w>\nmag ical</w>\npo sts</w>\nde m</w>\nn w\nor lando</w>\nab er\n* **</w>\nðŁĺ ľ</w>\nenviron mental</w>\ntrans formation</w>\nmi le\nw ic\nhir ing</w>\nma ine</w>\nbo ar\nr ying</w>\nti s\nnit ure</w>\ntwee ted</w>\nanton io</w>\nopin ion</w>\nfin ale</w>\ndi y</w>\nf is\nth in</w>\ntrou ble</w>\nle go</w>\nfi les</w>\nqu art\nsp a\ncurren cy</w>\ncli mate\nfan art</w>\nrail way</w>\nsp ace\nban ds</w>\ndani el\nmo tion</w>\nl eng\nhol der</w>\noc cu\nmar ie</w>\ncathe dral</w>\nbu zz\nbi es</w>\nnas car</w>\nbm w</w>\nbat tery</w>\nchar lotte</w>\ndoc tor\nzz le</w>\nse ven\nin san\nd dy</w>\nst en</w>\nlab or</w>\nthr illed</w>\nse ren\ndocu mentary</w>\nwav es</w>\ncer tain</w>\ncan did\nallow ed</w>\nninten do</w>\nstar wars</w>\nta p</w>\nhome made</w>\nd les</w>\nther ing</w>\nbre e\nemp ty</w>\npi ano</w>\npos iti\ncoun try\npor k</w>\npu ts</w>\nper ry</w>\nm atic</w>\nspot light</w>\nti st</w>\nor ities</w>\nwe alth</w>\nc p\nbar bar\ncommit ted</w>\nas sau\npro fit</w>\ne ight</w>\nhu l\nfini shing</w>\nrun ner</w>\nss o</w>\ninsp ec\nchar ged</w>\nchrist op\nlo sing</w>\nco al</w>\nho o</w>\nele v\nde le\nmo ham\ndon ation</w>\nc able</w>\nclin ic</w>\nj in\nmanag ed</w>\nter ing</w>\nâ ¬\nur ban\ndepu ty</w>\nbb er</w>\nbur n\nacade mic</w>\no tt</w>\nsta ke</w>\nit er\nsto wn</w>\nack er</w>\nadvent ures</w>\nad ams</w>\ngre g</w>\npro m</w>\nvo l</w>\nac qu\ncon gre\npa int\ncitiz ens</w>\nc all\naf ford\nv c</w>\nas ks</w>\nthe tic</w>\nindepend ence</w>\nâ Ľ\nh itting</w>\nbl on\nfu ture\nâ ı\nin no\ngen e</w>\nbo ards</w>\ndi stance</w>\nse t\nre mem\nth al\npre vent</w>\nl ang\nob jec\nsu sp\nmat t\nin duc\nbor o</w>\npi one\nre di\nvir tu\nprin ted</w>\nsco pe</w>\nshar k</w>\nsuc ce\na stron\nil legal</w>\nj ag\nc ting</w>\nine e</w>\nat o\nrob in</w>\nnutr ition</w>\nb f</w>\ndu tch</w>\nb n</w>\nfur niture</w>\nfor gotten</w>\nat ar</w>\nru p\nhy per\nbran ch</w>\ncommunic ation</w>\ndegre es</w>\non ia</w>\nun cle</w>\npromo te</w>\nor che\nwi i</w>\nj s</w>\nbut ton</w>\nma jor\nc bs</w>\nbri stol</w>\npremi um</w>\nordin ary</w>\ne dit</w>\nm g</w>\nwe ed</w>\nst even</w>\n: '\ngu s</w>\nte s\ncap tured</w>\ndru gs</w>\ndo w\nwr ites</w>\nbi shop</w>\nwhe els</w>\nali zation</w>\ndisco very</w>\nw r</w>\nrach el</w>\nne il</w>\nhy dr\ncu test</w>\nentreprene ur</w>\nkore an</w>\nore gon</w>\nul ty</w>\nperfec tly</w>\nsuppor ted</w>\nhistor ical</w>\nt wins</w>\nell y\nwe l</w>\nde vil</w>\nin come</w>\nscienti sts</w>\nde leg\nh en</w>\non i</w>\nic ed</w>\ngi o</w>\ncur ry</w>\nreve al</w>\ne g\nbuff alo</w>\nn ol\nop era</w>\ncamer on</w>\nhaha haha\nj ab\ngradu ation</w>\ncra ig</w>\nr al\ni f\norgani zation</w>\nle ge</w>\ng ang\nsu d\nedin burgh</w>\nl ack</w>\nfli es</w>\ng ate\nthr ones</w>\nq b</w>\nthe real\ne leg\npp in</w>\nc les</w>\njam ie</w>\ntn am</w>\ncryp to\nou l</w>\np ages</w>\na se\nroo ts</w>\nstu pid</w>\na did\nboo t</w>\nprote in</w>\ns ap\nsi um</w>\nsu s\nend or\nfun ction</w>\ndon t\nen na</w>\nch y</w>\nsqu e</w>\nwor ker</w>\nm tv\ne a</w>\nk an</w>\nðŁĴ ļ\nmu s</w>\nprofessi on\nt to</w>\noper ations</w>\nal lo\nc tor</w>\ninv ite</w>\nsc and\nou th</w>\nz im\nlin ks</w>\ncli ents</w>\nsam sung</w>\ndiscu sses</w>\nn ell</w>\nul tra</w>\nsome where</w>\nste wart</w>\nine t</w>\nde z</w>\nb out</w>\nfac tor</w>\nti an</w>\ntr ans</w>\njere my</w>\nd b</w>\nðŁĩ ¬\nor n</w>\ndevelop ing</w>\nspo l</w>\ncoo per</w>\nma u\nrememb ering</w>\ntre k</w>\nfamil y\nsen iors</w>\nfo ster</w>\natt ended</w>\nw ing\ntrans form\nele mentary</w>\nhor iz\nli sting</w>\nmalay sia</w>\nit ch</w>\nwarri or</w>\nphilipp ines</w>\nruss ell</w>\nm end\niniti ative</w>\ncre ep\nto ps</w>\nbr iti\na ur\nshar p</w>\nadverti sing</w>\nug ly</w>\nachi ev\nmateri als</w>\nbu g</w>\ndev ice</w>\nbon us</w>\nfac ility</w>\ncol e</w>\nnh l</w>\ny as\nplann ed</w>\npol e</w>\nexcell ence</w>\ntr ick</w>\ncon fl\nr p</w>\nachi eve</w>\nlo an</w>\nswa g</w>\njess ica</w>\nho we\np our</w>\nsc u\nz oo\nr ated</w>\ndre sses</w>\nre bel\nmex ican</w>\nco ordin\nme ss</w>\natlan tic</w>\nt l</w>\nosc ar</w>\nwal ks</w>\nphar mac\ninvestig ation</w>\n... #</w>\ncc i</w>\neas ily</w>\nmonday motivation</w>\ny ment</w>\nau ti\nfor ced</w>\nar med</w>\ncolle agues</w>\npap ers</w>\npro per</w>\nsha ke\nbu c\nle an</w>\nexhi bit</w>\ne vement</w>\nco tt\nbi z\nsp er\nk ent</w>\nsw an\n/ @</w>\ngirl friend</w>\nhaw k</w>\nâĺ Ģï¸ı</w>\nmon o\nðŁĴ Ľ\nstat ue</w>\nðŁĺ ³</w>\nra s</w>\nte eth</w>\npreci ous</w>\nt ile</w>\np am\nswi ft</w>\nv ali\nno se</w>\ndr unk</w>\nexperi ences</w>\ncome back</w>\ngen ius</w>\nwor se</w>\nsh ef\nra d</w>\ned it\nhon our</w>\nau spol</w>\nlar ry</w>\nh ire</w>\ngor don</w>\nachi evement</w>\n.... ....\nsu icide</w>\nalter native</w>\nsu p</w>\nsur roun\nsha ke</w>\nke ith</w>\npe pper</w>\ntur k\ncrimin al</w>\nbe ck\nsu m</w>\nw alls</w>\ncn n</w>\nan tic\nof fe\ncol li\nwin es</w>\nhigh light</w>\nhawa ii</w>\nemb ar\nl fc</w>\nðŁĩ ®\nm v</w>\n> >\nat mo\nwor d\ncar l\nshout out</w>\nbre wing</w>\nì Ŀ\ndo f\ns ic\nhot test</w>\ncol on\nhh h</w>\nshu t</w>\nlow ing</w>\nvolu me</w>\napart ment</w>\nagre ement</w>\nde stro\nwe e</w>\nreligi ous</w>\niow a</w>\nro d</w>\nland ing</w>\nre present\nðŁĵ· :</w>\nla s\nusu ally</w>\nh l\nc ac\nsal v\nal ong\nlaugh ing</w>\nbe ans</w>\nremin ds</w>\npha se</w>\nsome body</w>\nma sk</w>\nran ked</w>\ndest roy\nsc i</w>\nâĢ¼ ï¸ı</w>\ngab ri\nle o</w>\nro a\nfa iled</w>\nsi l</w>\nrefuge es</w>\nre vi\nr ing\nber ries</w>\ncoo kies</w>\ny y</w>\nconserv ation</w>\nsh ab\nhuman s</w>\nde termin\na in\nni all</w>\nas su\nmb a</w>\nfro m\nextre me</w>\nvic es</w>\ncommer ce</w>\nght ful</w>\nor dered</w>\nsuppor ts</w>\nre cap</w>\nv or\ndro pping</w>\ncorrec t</w>\npay ing</w>\nmean ing</w>\nn j\nqui z</w>\n\" #</w>\nbusine ss\nðŁĩ® ðŁĩ\nindi gen\ndu st</w>\nbox es</w>\nbl ind</w>\nx xx</w>\nzz y</w>\nðŁĩ¬ ðŁĩ\nss els</w>\ns ant\ndd le</w>\nhilari ous</w>\ndesig n\nwonder ing</w>\nvehic les</w>\nk re\nju d\nrece ption</w>\npar ker</w>\nÃ Ń\npri vi\nhy dro\nsof tball</w>\npol lu\nlo cked</w>\nba h\ne ar</w>\nscri pt</w>\ndi vi\nbr ace\ngeor ge\nthe ast</w>\nbel o\nj al\ntion ary</w>\ndent al</w>\nroc ket</w>\npur ch\nsh ak\nmanufac turing</w>\ne z</w>\nit is</w>\ncon cep\ntb all\nch s</w>\ndirec ted</w>\npra yers</w>\noo k</w>\nphil os\nvari ety</w>\nche ss</w>\nser ver</w>\ng and\nbal ti\nðŁĵ ¸\nsel y</w>\ncru z</w>\nspectac ular</w>\nbur ning</w>\nre present</w>\ni z</w>\nt one</w>\nmer ce\nh ell\nbed room</w>\nestab li\nbo l</w>\ncom mon\nãĥ »\nab or\nkit ty</w>\nhei ghts</w>\nre pair</w>\nwilli am\nqu ake</w>\nalab ama</w>\npopul ation</w>\nre v\nre tt</w>\ni sts</w>\nn ite</w>\nle m</w>\na ha</w>\nclevel and</w>\nr m</w>\npo ver\nob se\nmon tre\nman ia</w>\nÂ ®</w>\ncon ne\ncar ni\nsh ah</w>\nf y\nu a</w>\nsc or\nstrugg le</w>\nbo b\n' '</w>\nappro pri\ndeci de</w>\nff ed</w>\nca ster</w>\ns ort</w>\nhun gry</w>\ndra g\nØ§ Ù\ngr ounds</w>\nd w\nsli ghtly</w>\ncar din\ndead line</w>\nbron ze</w>\nweb in\nbar ry</w>\nsil ence</w>\ne uro</w>\nop tion</w>\near n</w>\nðŁĴ ĸ\nhowe ver</w>\nna ren\nna ils</w>\nbath room</w>\nv ine\nph d</w>\nmin ing</w>\ngar age</w>\n( )</w>\nshou lder</w>\ndefe at</w>\ndi r</w>\no v</w>\nliber ty</w>\nple as\nx on</w>\ncom pre\na v</w>\nj in</w>\nab les</w>\nsil ent</w>\nfam ili\nvis its</w>\ndi pl\nha bit\nmilli ons</w>\nregar ding</w>\ninnov ative</w>\nsen ator</w>\nr ts</w>\nv on</w>\nk l\nwh il\nrequi red</w>\nâĿ Ħ\nlu v</w>\npresi dential</w>\npo cket</w>\nhun dre\nsho wn</w>\nfro zen</w>\nto ward</w>\nfa st\nconfi dence</w>\nr ough</w>\nindivi dual</w>\nqu et</w>\nðŁı ½\ndom e\nfi fa</w>\nengine er</w>\nz en\nre mix</w>\nðŁĺ ĥ</w>\npl ant\nmin or</w>\nrobin son</w>\nas y\npul led</w>\ncer tain\npotat o</w>\n( :</w>\npre s</w>\noc ca\nw it</w>\nit em</w>\nsi e\nd ating</w>\nthom pson</w>\nown ed</w>\nan u\nvi e</w>\nte dly</w>\ngood night</w>\nex cept</w>\nðŁĮ Ł</w>\nira q</w>\nki e\nren ces</w>\nli p</w>\nsimil ar</w>\nsau di</w>\nvi g\narth ur</w>\npic ks</w>\nmil an</w>\nhon da</w>\nma xi\no g</w>\nste st</w>\nar ch</w>\nanaly tics</w>\nba sti\npear l</w>\nter ry</w>\nhor se\nast ro\nac ce\nlaun ching</w>\ninter national\ns no\nta sty</w>\nden ver</w>\nir l</w>\npe te</w>\ntor n\nadvant age</w>\nvar sity</w>\n\" \"</w>\nsol e</w>\ng c\nlan g</w>\ndemon str\nol ds</w>\nun ity</w>\nne ts</w>\ninsp ire</w>\ncre te</w>\nnash ville</w>\nnel son</w>\ne ter\nwal k\nhy un</w>\nm ack\ntre as\nsee king</w>\nra ge</w>\nbru sh</w>\nab and\nwhil st</w>\nco con\nh ong</w>\nshel ter</w>\ni p</w>\npossi bly</w>\nso o</w>\nit ed\nâ Ħ\nrac es</w>\nwar ming</w>\nqu in\ntele vision</w>\nmat ches</w>\nra pi\nment al\npal m</w>\njenni fer</w>\nrol ls</w>\nindi ana</w>\nb ars</w>\ncat ching</w>\nresc u\ncandid ates</w>\nfa re\nâł Ģ</w>\nse o</w>\nvie tnam</w>\nalph a</w>\nmichel le</w>\nvisi ble</w>\nre gre\nwn ed</w>\napp le\nli p\nf fe</w>\nli z\nyork shire</w>\nha il</w>\nse asons</w>\nbe gan</w>\nm d\nk c</w>\nla p</w>\nfascin ating</w>\nhel p\nur y\nu ms</w>\nnu ts</w>\nse m\nalong side</w>\nbri dge\nori al</w>\no ve\nworld cup</w>\nbriti sh\ncomfor table</w>\ni ve</w>\nhot els</w>\nfair s</w>\nhor ri\nso x</w>\nd ining</w>\nstre am\nbar ri\nss y</w>\nw im\nter ms</w>\nv u\npe re\nl ens</w>\nwal ked</w>\nr or\nl ars</w>\nshi eld</w>\ndou bt</w>\npro to\ncro ssing</w>\nme ant</w>\nmedi um</w>\nad ding</w>\ne b</w>\nche ap</w>\nfun c\npap er\nbran ds</w>\nry an\nfeed back</w>\ncol lins</w>\nun known</w>\ntro pical</w>\nsand wich</w>\nfal len</w>\nfor mu\nselec t</w>\nlo ads</w>\nansw ers</w>\nor i</w>\nmag a</w>\nd or</w>\ndu o</w>\nali e</w>\ndru m</w>\nur i</w>\nde er</w>\nsou l\nsh ut\nâĺ º</w>\nsto len</w>\ndon ated</w>\nbu zz</w>\npatri ots</w>\nha l</w>\nna sty</w>\nnomin ated</w>\nmon te\nki a</w>\nth ri\ning u\nte sts</w>\npe tro\nðŁĳ ĳ</w>\nho sts</w>\nne st</w>\nto pic</w>\npat ch</w>\nm my</w>\nhu gh\nab ilities</w>\nma the\ns miles</w>\ng b\nag enda</w>\ninsi ghts</w>\nchi p</w>\nph an\nfail ure</w>\ndg ers</w>\nha i\nsignific ant</w>\nsho ck</w>\nru ral</w>\ngl am\nfigu res</w>\npot us</w>\no ta</w>\nmini stry</w>\nappe ars</w>\nfe ar\nr h\nameric an\nh att\nson y</w>\nfi res</w>\ne di\nn ou\ne qui\nwh en\nunivers al</w>\nmad ness</w>\ni x</w>\nsculp ture</w>\nb ach</w>\nt to\nswe den</w>\net a</w>\nen to</w>\ndevelop ed</w>\nmonth ly</w>\nma ps</w>\nra h</w>\nle d\ndel ta</w>\nsa ints</w>\nis lam</w>\nben ch</w>\nfif th</w>\nv ard</w>\nso cks</w>\nwel coming</w>\nj e</w>\ntur ner</w>\nv b</w>\nad i</w>\nnor way</w>\nad y</w>\nhurric ane</w>\npor sche</w>\ntra dition</w>\nex am</w>\nnewsp aper</w>\nlu ci\na ver\nide al</w>\nd na</w>\nmadi son</w>\nðŁ §\nwit ness</w>\nac ou\ninsi ght</w>\nsi mon\nrobo t</w>\nsna ke</w>\nn bc</w>\nac o</w>\nro ss\nsh ment</w>\nreligi on</w>\nch ann\nin su\ncamp bell</w>\ninst alled</w>\nwe ather\nhor ses</w>\nol i</w>\nrober t\nk az\nðŁı Ģ</w>\nveter an</w>\nth read</w>\nquar ter\nea sier</w>\ncap ture</w>\nhi pho\nlaw rence</w>\nroman tic</w>\npas sion\ncl ay</w>\nox ford</w>\nth ai</w>\nstu dying</w>\nfi a</w>\nelec ted</w>\nmost ly</w>\nc b</w>\ntu mb\nâĢįâĻ Ĥ\nx l</w>\nsh an</w>\nfa ster</w>\nev ans</w>\nsli de</w>\nsh ri\nsee k</w>\nmi es</w>\nchemi stry</w>\npump kin</w>\ntu m</w>\n, ,</w>\nro om\nfi red</w>\nli ps</w>\npres ence</w>\naf f\nbrew ery</w>\narri ve</w>\nsw ag\nphoto graph</w>\npen gu\nchi ps</w>\nat tor\nval ues</w>\naccur ate</w>\ncon temporary</w>\nprinci pal</w>\ncannab is</w>\nari o</w>\nany where</w>\ngi a</w>\ndemocr ats</w>\nbuil dings</w>\nli ved</w>\nap s</w>\nneg ative</w>\nm are</w>\nbal lo\nli on\ndiam on\nloo k\nre form</w>\ntom my</w>\nil la\ntre ats</w>\nhundre ds</w>\nport land</w>\nwor thy</w>\nex cep\nar ia</w>\nido l</w>\nbe er\ncd n\ny u</w>\naw k\nðŁĩ ¨\nc ells</w>\nÃ ³\nident ity</w>\ndra wn</w>\nde vil\nf inger</w>\nth am</w>\nðŁĳ Ĭ\near ned</w>\nfin tech</w>\ndol ph\ntwee ting</w>\nevolu tion</w>\nðŁĵ į</w>\nest im\nm vp</w>\nn one</w>\nðŁĩºðŁĩ ¸\ntoyo ta</w>\nau x</w>\nmar in\nb old</w>\nl bs</w>\nste ak</w>\nmur phy</w>\nit able</w>\nlou is\nsol ve</w>\npi a</w>\nsk ir\nill ino\nwebin ar</w>\nban ana</w>\nlo v\nth on</w>\nvo ters</w>\nafford able</w>\ndefe ated</w>\nlm fa\nair lines</w>\nsuper b</w>\nany way</w>\ndeb t</w>\nbo red</w>\nver si\nme tal\nresponsi ble</w>\nm k</w>\ns se</w>\nf ay\ncau sed</w>\nf p</w>\nrecomm end</w>\npla za</w>\nspor ting</w>\nalli ance</w>\nau stri\nn n\nt ours</w>\nsurpri sed</w>\narti f\nth under</w>\nsur ve\nwor e</w>\nbri ef</w>\nnecess ary</w>\nz ie</w>\nash ley</w>\ndra ke</w>\nr t\nkni fe</w>\nim mun\nchar ges</w>\na the\nbri de</w>\nrep ly</w>\ng av\nbroad cast</w>\npu er\nbrace let</w>\ncap acity</w>\nharve st</w>\nid k</w>\nperfor man\nd ding</w>\nil ers</w>\npar a</w>\njam a\npro vince</w>\nch in</w>\nid ers</w>\nhar i</w>\nte aser</w>\nch en</w>\nre stor\nr at</w>\nfl at\ncol om\nðŁĴ ŀ</w>\nðŁĩ¨ ðŁĩ\nsmoo th</w>\nr t</w>\np itch\nstay ing</w>\nisra eli</w>\nt cot</w>\nper spective</w>\ndo ck</w>\nopen er</w>\nlo vel\nx o</w>\nclass room</w>\nl ington</w>\ngo al\nkenne dy</w>\nsh am</w>\nsp aces</w>\nmitch ell</w>\nhome coming</w>\nuk i</w>\nclaim ed</w>\nrecru it\ning o</w>\nmu fc</w>\nmon it\ng roo\nresi dent</w>\nper cent</w>\nper man\notta wa</w>\nint ment</w>\nan xi\nstand ards</w>\nwor ship</w>\nsche me</w>\nf x</w>\npot ter</w>\nbi an</w>\nathle tic</w>\naf gh\ns se\nsat ell\npar ties</w>\nâĿ¤ âĿ¤\ninfra structure</w>\nrela x</w>\nmo du\nwor n</w>\nsmo king</w>\ny ach\npractic es</w>\nwc w</w>\nam b\ndome stic</w>\ntay lor\nk entu\nprovi ded</w>\nmo di\nve g\n\" ...</w>\nob serv\nðŁĺ ©\nbe ard</w>\nm our\nan gry</w>\nðŁĺ ±</w>\nstartu ps</w>\nwoo den</w>\ndi ve</w>\nna il</w>\nanti que</w>\nro ses</w>\ntorn ado</w>\nm at</w>\n^ ^</w>\nsu spect</w>\nfar m\nde vices</w>\nme ga</w>\ntu l\nscholar ship</w>\nge e</w>\ndisa ster</w>\narri val</w>\npo in\nmar c</w>\nkati e</w>\nbb ed</w>\nfal se</w>\ndeser ves</w>\nric hard\nju ana</w>\nfre y</w>\ntion ed</w>\nhy bri\nr w\nsar ah\nach i</w>\nc ure</w>\no le\nmor ris</w>\nch ic</w>\nbroad way</w>\nla bel</w>\npa k</w>\npover ty</w>\ngol f\ne red</w>\nf u</w>\ner ies</w>\nbe es</w>\nalo gue</w>\nst el\nwire less</w>\nje wish</w>\nti de</w>\nblo cked</w>\nlife time</w>\nb har\nsp lit</w>\nam ster\nth i</w>\njo shu\nbr unch</w>\nha ps</w>\ns for\noo ps</w>\nka poor</w>\nhi king</w>\nsuppo sed</w>\nro of\nre as\ntra in\nti ght</w>\ntru mp\nbas ically</w>\nr r</w>\nea red</w>\nsee ds</w>\nentr ance</w>\nc p</w>\nwi e</w>\nson ic</w>\nvic tim</w>\nhe re\ne h</w>\near rings</w>\nsal mon</w>\narc tic</w>\nan ne\ndou gla\ncorru ption</w>\nhann ah</w>\nha sn</w>\nvo ices</w>\ncon ce\natt a</w>\nfle et</w>\nclin ical</w>\ndemocr atic</w>\nton y\nst ood</w>\nle f\ntwit ch</w>\na il</w>\nhonest ly</w>\nincre ased</w>\ndro me</w>\ndon na</w>\naccep ted</w>\nvisit ors</w>\nap ar\nad or</w>\np ar</w>\njer ry</w>\nra i\nbrand on</w>\nab u\n!! !!!!</w>\nme me</w>\nin gh\nglori ous</w>\nb hu\npu mp</w>\nj ol\nli ke\nfi sher</w>\nma z\nag an</w>\ndestin ation</w>\nplay list</w>\nle tters</w>\ngen u\nbr ace</w>\ncelebr ated</w>\nbann er</w>\nr he\ndra gon\nðŁĺ ħ</w>\nsig nature</w>\ngre y\nâľ Ķï¸ı</w>\nal ice</w>\nbe red</w>\nph er\nber n\nca th\nga thering</w>\nsc oring</w>\ninflu ence</w>\nsm iling</w>\nde pt</w>\nlo cal\na x</w>\nac u\nreti rement</w>\nhon or\nher self</w>\nchem ical</w>\nasse ss\ny all</w>\nfre qu\nappreci ation</w>\nac a</w>\ncho ir</w>\ncu z</w>\nso il</w>\nc il\nrepor ting</w>\nu h</w>\nenterpri se</w>\ngr at\njaco b</w>\nru m\nfe e</w>\nj ak\nsp in</w>\nbi kes</w>\nphi a</w>\nste re\np is\nbloo d\nt att\nra ft</w>\nwar ren</w>\nsh eri\nback stage</w>\nmar sh\nhash tag</w>\nther ine</w>\nre in\ngame day</w>\nguar an\nreci pes</w>\nmin ds</w>\nstron ger</w>\nissu ed</w>\nbic y\nn ak\nment ed</w>\nsc ary</w>\nu x\npre vious</w>\ntt le</w>\nth ats</w>\nac tors</w>\nu ma</w>\ntin a</w>\nbun ny</w>\npromo tion</w>\nu ss</w>\noli ver</w>\nmontre al</w>\nwhat s\nappreci ated</w>\nla kes</w>\nexcu se</w>\nkno wing</w>\npri zes</w>\nmusc le</w>\nshad es</w>\nsco t</w>\ning redi\nelectr onic</w>\nju an</w>\ncomb at</w>\ns ri</w>\ne h\nturk ish</w>\nl om\nstri kes</w>\npri son\nre e\npo pe</w>\nvi d</w>\nol dest</w>\ndol l</w>\nsw iss</w>\ncerti fied</w>\ncli p</w>\nre turning</w>\nlat or</w>\nle igh</w>\ntt es</w>\nwat son</w>\nheal ing</w>\nel im\nper haps</w>\nha ss\nk au\nd der</w>\nmou se</w>\nnew castle</w>\nindigen ous</w>\nwel comes</w>\nco le\ntau ght</w>\nno ise</w>\nappe ar</w>\njo e\ncan on</w>\nwedne sday\nu tah</w>\nc tive</w>\ndri ven</w>\ni v</w>\nc ell\nstri p</w>\nac c</w>\nfocu sed</w>\nar rest</w>\nsto cks</w>\nwo o</w>\nâ Ĺ\nnotic ed</w>\nshad o\ndi spla\nter ror</w>\nbor ne</w>\nsecon d\nque ens</w>\nwo ke</w>\nja il</w>\nno tt\ncam bridge</w>\nhar t\nse af\nfa x</w>\nac cept</w>\nâĺ ħ\ngoo ds</w>\nk at</w>\nt win\nh s\nthou sand</w>\ns ins</w>\nsu ite</w>\namp ton</w>\nar n\nrele v\nric har\nhoo ps</w>\nn bc\nclass ic\np ab\nsoldi er</w>\nde plo\nle ans</w>\ninstall ation</w>\ncla sh</w>\nle ban\nee e</w>\nti re</w>\nbelo ved</w>\nfu sion</w>\ntravel ing</w>\nne i\ncoo kie</w>\nglo be</w>\nphys ics</w>\ns q\nco l</w>\nwol ves</w>\nd l</w>\nex it</w>\n\" -</w>\nfoo tball\nle af\nster ling</w>\nhi de</w>\nminne so\nfresh man</w>\nnatu re\nindi e</w>\nsupp lies</w>\nbri s\niri sh\nink tober</w>\ndoo dle</w>\nic op\nmess ages</w>\nadul ts</w>\nrecor ded</w>\nfix ed</w>\nar do</w>\noffe red</w>\nunder ground</w>\ndr one</w>\np ine\nma inten\nand re</w>\nham mer</w>\ns x\nr ound\nhi ke</w>\nbra d</w>\nro me\nfu ll\non ey</w>\nro ws</w>\ncolum bia</w>\narchi ves</w>\nappro ved</w>\nbat ch</w>\nillino is</w>\nrecogn ition</w>\nshou ldn</w>\nfo g</w>\nnca a</w>\nke vin\nhuman ity</w>\nal though</w>\npow ers</w>\np ou\ns ar</w>\npe st</w>\nalco hol</w>\ncon sci\nphil adel\nen o\nt m\nok la\ncate gory</w>\nparticip ate</w>\naccu sed</w>\nbri ef\npo em</w>\nclu bs</w>\nconsul t\nja b</w>\nbig data</w>\namster dam</w>\nac ing</w>\ncerti fic\nn u</w>\nd at</w>\nimpro ved</w>\nand y\ncampa ig\npale stin\np ace</w>\nmo bi\nfeel ings</w>\nwol f\nbra in\npro pos\ninter active</w>\nprin ce\ninde x</w>\nc is\ncha e\npeace ful</w>\nco vering</w>\nac o\ncour ses</w>\nmon key</w>\nre place</w>\nb l</w>\nbloo dy</w>\ntal es</w>\nbrigh ton</w>\nneighbor hood</w>\ng ates</w>\nspiritu al</w>\naf raid</w>\nbre ast</w>\nb ones</w>\nðŁĳ ī\nvide o\nw au\ntou ch\ninju ries</w>\ncar l</w>\nri x</w>\nune x\nâĢ ¢\nfre d\nconsi dered</w>\nthu si\nan ch\non y\nu sa\ngraph ics</w>\nac re</w>\nðŁĺ ©</w>\ncom memor\ncom mod\ngo ti\nguar dian</w>\nstar bucks</w>\npre vention</w>\nhaha haha</w>\nadmini stration</w>\nportu gal</w>\nfac ulty</w>\nbet a</w>\nul a</w>\nal bert</w>\nbre ath\ner i</w>\nle tting</w>\ntr ic\nment ation</w>\nincredi bly</w>\nten nes\nv d</w>\nðŁĻ Ī</w>\ned die</w>\nbr ick</w>\ngr ill</w>\nbt w</w>\nwat ches</w>\nresear chers</w>\nt ney</w>\nni e\np as</w>\na ster</w>\nvi br\npoke mon</w>\nch rome</w>\ngo at</w>\npitt s\nil ly</w>\nfesti ve</w>\ny d</w>\ncan al</w>\nðŁ Ĩ\nfi es</w>\ncar los</w>\nre que\npartic i\ntra ins</w>\nsam ple</w>\ntemper ature</w>\nsym ph\npic king</w>\nin door</w>\nz ers</w>\nplayo ffs</w>\n____ ____\nap es</w>\nly rics</w>\nislam ic</w>\nperforman ces</w>\nd ick</w>\nspar k\nse as</w>\nhom a</w>\ngr ound\ndisc i\nemploye e</w>\ncom mu\nalas ka</w>\nal an\nfe ast</w>\ndg ing</w>\nban king</w>\nmanu el</w>\nslow ly</w>\ntru cks</w>\nmc car\noo o</w>\nsc rat\norche stra</w>\nindivi du\nm x</w>\nbre ath</w>\nstair s</w>\nequ ality</w>\nbla ke</w>\nloc ations</w>\ncocon ut</w>\nbalti more</w>\naa a</w>\nl c\nðŁı Ĩ\nhar vey</w>\nresi st</w>\nimmigr ation</w>\nadid as</w>\nfil i\nre f</w>\nlg bt</w>\nmo s</w>\npp i</w>\nken ny</w>\nterr or\nban e</w>\napol is</w>\ns g\nsocial media</w>\nka i</w>\nhon est</w>\nas sas\nbol lywood</w>\nâĢįâĻ Ģï¸ı</w>\nferr ari</w>\nhor n</w>\ncryp to</w>\nbo om\nmainten ance</w>\ni di\ns man</w>\nw l</w>\next ended</w>\nin sul\nve s\ngo sp\ntr i</w>\npi g</w>\ntar ge\ncel er\nst ati\nsm h</w>\nri dic\nappe al</w>\n? )</w>\ncon clu\ncos me\nshe ep</w>\nchristop her</w>\nen thusi\npo lish</w>\nme ts</w>\noun ded</w>\nsustain ability</w>\ncreati vity</w>\ncon crete</w>\nra i</w>\nali en</w>\nble ss\nte es</w>\nclu b\nro t</w>\nbo s</w>\nex ist</w>\nperfe ction</w>\nlu ck\nrock y</w>\nexpen sive</w>\nmean while</w>\nhappy birthday\npre t\nthr iller</w>\nca ve</w>\nplayo ff</w>\nsom er\nl u</w>\nle x</w>\ndef ence</w>\nam writing</w>\nhome less</w>\npro phe\nch et</w>\npast or</w>\nðŁ¤ £\nland er</w>\nww w</w>\nĢ ï¸ı\ntic a</w>\n! #</w>\no tic</w>\nrad ar</w>\npo sters</w>\npow der</w>\npo li\nha un\ntra p</w>\nbl in\nassau lt</w>\nshor ts</w>\nre y\nsh y</w>\nsqu ir\nrac ist</w>\ngar lic</w>\nfu r</w>\nremo te</w>\nsm ell</w>\nimpre ssed</w>\nfing ers</w>\nâł Ģ\ndin o\nle ment</w>\ns nu\npromo ting</w>\nstr ing</w>\nproduc tive</w>\nb age</w>\nma son</w>\nra z\ndirec tly</w>\nj k</w>\nev al</w>\nðŁĳ Ĭ</w>\ndoc tors</w>\nco w</w>\nri der</w>\nst v</w>\nre move</w>\nw u\nna than</w>\nro d\nn r</w>\n= ></w>\naffe cted</w>\ninve st</w>\nmp tion</w>\ng inger</w>\no d</w>\nagricul ture</w>\ns que\nmu g</w>\ncoun ting</w>\nke e\nmag nific\ncoo k\nani stan</w>\nroo t</w>\nplac ed</w>\nsym po\ngh ana</w>\nun d</w>\nche er\nthro wing</w>\nsecre ts</w>\nf illing</w>\nopti mi\nbutter fly</w>\nbu bb\nðŁĺ ī\nterri ble</w>\nd g</w>\nsil k</w>\nobse ssed</w>\nlo u</w>\nai de</w>\nsal ute</w>\nmon u\nphiladel phia</w>\nscienti fic</w>\ni st\nu ae</w>\ndess ert</w>\nbott les</w>\ncan yon</w>\nðŁĺ Ī</w>\ncar ib\no ther\nw ich\nre source</w>\nguil ty</w>\nun d\nle on</w>\ne ss</w>\nkan e</w>\nel e</w>\ntra iner</w>\nhe im</w>\nan te</w>\nman age</w>\nroo kie</w>\ntre ated</w>\npo ses</w>\nrs vp</w>\ncau ses</w>\naw ak\nje well\nle tt</w>\non ics</w>\ntit les</w>\ncardi ff</w>\ng aga</w>\nbu mp\nuse ful</w>\n? !\nloo se</w>\nbb ing</w>\n: :</w>\nargent ina</w>\nde bu\ncy cl\nwh el\ndis gu\nj el\nk ills</w>\nbio logy</w>\nex ter\ntra sh</w>\nbo dies</w>\ntr am\ncircu it</w>\nexpe ct\nla ds</w>\nw ells</w>\nsho t\nge e\nnaren dr\nfa stest</w>\nb ent\nb ills</w>\nmar shall</w>\nh ats</w>\nintro duce</w>\nciti zen</w>\nim possible</w>\ngi b\naz z\nnet working</w>\nr ant</w>\nthin k\nin dy\nst ops</w>\nf theday</w>\nbri an\n* *\namo di</w>\ndom e</w>\ncoura ge</w>\npac king</w>\naf fairs</w>\ng n</w>\nsi zed</w>\nent ary</w>\npol and</w>\nswit zer\nafgh anistan</w>\nw u</w>\nten der</w>\nsubscri be</w>\nmo sco\natt end\nrepublic an</w>\nhon ey\nâĢ ĭ</w>\nsi mul\nwe ster\nfoo die</w>\nor o\nmidd le\nab t</w>\nco pies</w>\nma je\nnarendr amodi</w>\nty pical</w>\ninspir ational</w>\nvit am\nwis con\ncu bs</w>\ntiv ity</w>\nh ali\ne ars</w>\nk ay</w>\nd are</w>\nmari juana</w>\ncu rious</w>\nan ia</w>\ntom ato</w>\nre mind</w>\nðŁĩ ·</w>\nsc ared</w>\ncou p\npo et</w>\nland ed</w>\nri d</w>\nwra pped</w>\nmor ri\nclimb ing</w>\ne ws</w>\nfe eding</w>\ncon tra\ntho logy</w>\ngri d</w>\nti vely</w>\nread er</w>\nla ser</w>\ndi ving</w>\ndi g</w>\nlat in</w>\nti ed</w>\nshake spe\no ci\nad m\nshow ers</w>\nchu ck</w>\nmar cus</w>\noo s</w>\nkne e</w>\no live</w>\now l</w>\ndy lan</w>\nan no\ng ym\ndeci sions</w>\nwell ness</w>\narri ves</w>\nsati s\nchri s\nthur s</w>\nðŁ¤ £</w>\ninter views</w>\nthank you</w>\nswitzer land</w>\nover night</w>\njourn alist</w>\nser ves</w>\nvol can\n.... ...</w>\nplo t</w>\nnic ol\ncar rying</w>\nmag ne\ntre asure</w>\nex p\nbe ver\nðŁĺ ¢</w>\nmar ty\nmo le\ndon ations</w>\nrecogni zed</w>\nb h\ndu s</w>\nsh ann\nal do</w>\nsuccess fully</w>\nent e</w>\nðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ\ncab inet</w>\ncu is\ntit led</w>\nd as\nso l</w>\nstrate gies</w>\ndeli vering</w>\nad ds</w>\nani an</w>\nne ther\nðŁĴ ĥ\ncon tain\nsu its</w>\npa irs</w>\nto dd</w>\nrel la</w>\nro pe</w>\nci o</w>\ncro p</w>\npaint ings</w>\nsu z\nre jec\nbu st</w>\nd h</w>\nfra ud</w>\nm h\ncontro l\nje al\ndestroy ed</w>\nal lows</w>\nwo ol\nminneso ta</w>\nom en\nj u</w>\nsympo sium</w>\nd af\nlim it</w>\naccoun ts</w>\nload ing</w>\ninter n\nre solution</w>\nhol land</w>\nqu al\nmeet ings</w>\ngra ve</w>\ncam ping</w>\nv am\nre nov\nliber al</w>\nam ber</w>\ngre e\nhu mb\nfe ver</w>\nel ing</w>\nbroo ks</w>\nà ²\nbe th\nad ed</w>\nal t\nro e</w>\nperform ed</w>\njo sh\nfrank lin</w>\nnic ole</w>\nde ss</w>\nbb s</w>\nm g\nnet works</w>\nmin im\nal t</w>\nweap ons</w>\ngu y\njas on\ng ha\nharb our</w>\nat on</w>\npra ise</w>\nkentu cky</w>\nbel fast</w>\nst icks</w>\nblo ss\nho pes</w>\nan thro\nfamili ar</w>\nwa it\nch ile</w>\ndepre ssion</w>\nla x</w>\nje ts</w>\nle ice\nrecei ves</w>\nsi er\nan k</w>\nde x\ninde ed</w>\nfle xi\nfab ric</w>\nlam b</w>\nhel icop\nam anda</w>\nâĢĶ âĢĶ\ncompe te</w>\nsn ack</w>\ntechno logies</w>\nsy rian</w>\nmom s</w>\nmu ham\ncho sen</w>\nan at\ndev on</w>\nshar ks</w>\nre t</w>\nfundra iser</w>\nselfi es</w>\nst ations</w>\ncommunic ations</w>\ntennes see</w>\ntu tor\nro t\nvalu able</w>\ndynam ic</w>\nnur se</w>\ni ed</w>\nearth quake</w>\ndeser ved</w>\na ve\nsar a</w>\nstre tch</w>\ndougla s</w>\nne pal</w>\nÃ §\nob viously</w>\nd ame</w>\nra pe</w>\nany body</w>\nk w\npat rol</w>\nhol ders</w>\nh anna</w>\ninfo graphic</w>\nec o</w>\nbe ating</w>\nstan ley</w>\nbo ats</w>\nri bb\ne z\nwit ch</w>\ninv a\nac id</w>\nboar ding</w>\n- @</w>\ngi l</w>\nda ve\ncare ers</w>\nopp os\nl loy\nin ter</w>\ndo pe</w>\nre su\nj agu\nsh ade</w>\nin dy</w>\non ist</w>\nrel ations</w>\nag en\nab le\ninci dent</w>\nme ter</w>\nshar ma</w>\nid r</w>\npro ve</w>\nimmedi ately</w>\ntro ops</w>\nam an</w>\ng low</w>\ngaz a</w>\nblo cks</w>\nperson al\nchron ic\nall er\nsi d\nsh r\nwhats app</w>\nlu cy</w>\nar chae\nho u</w>\njourn alism</w>\nour selves</w>\ngo t\nthe med</w>\nshap ed</w>\nwe ak</w>\ncas ual</w>\nleng th</w>\nsla m</w>\nab bey</w>\ne v</w>\ncoun ter\nest a</w>\nreci pi\ncha pel</w>\nexpan sion</w>\nsel f\nsuff ering</w>\nsp ice</w>\nn z\nsp art\ndesp er\nboo king</w>\nquart ers</w>\ny on\nðŁĴ Ĺ\np k\ncontinu ed</w>\n- #</w>\nman hatt\ntal ked</w>\nsh en\ncom bo</w>\nhybri d</w>\nje ans</w>\nliqu id</w>\nse al</w>\nre tweets</w>\nac celer\ncollec tive</w>\nt as</w>\n: ))</w>\nprofession als</w>\nra w\no tt\nsu san</w>\nir ing</w>\nokla homa</w>\nre ven\nsurvi val</w>\ncre ator</w>\ntran sit</w>\nst ac\nsur f\ni k</w>\ned iting</w>\nch illing</w>\nbai ley</w>\nste al</w>\nra ble</w>\npa rent</w>\nhun ger</w>\nsn app\ncollec t</w>\nphilos oph\ndedic ation</w>\nc f\nc m\nle ep</w>\nrepe at</w>\nre ha\nun fortun\na er\na ero\nabstr act</w>\nmon itor</w>\nag ents</w>\nbu l</w>\nsci ence\nharb or</w>\ndrag ons</w>\nfloo ding</w>\nac compli\nd ash</w>\njuli a</w>\nthe red</w>\ntues day\ncy ber</w>\nb low</w>\nta ined</w>\nle m\nrefe rence</w>\npp o</w>\nne goti\nchar le\ncon nor</w>\nau lt</w>\naccess ories</w>\ncommissi oner</w>\nrain y</w>\nre ar</w>\nadvis ory</w>\nluc as</w>\nma id</w>\nco al\nk av\npol o</w>\nðŁı ¾\ntran sport\nmar gare\nstraw berry</w>\nbur ns</w>\ngre ens</w>\nne v\npartici pants</w>\ncol in</w>\nbelgi um</w>\ncol our\nin form\nd ell</w>\nbr on</w>\ncal y\nkick off</w>\nstrate gic</w>\nre union</w>\nhon ors</w>\nli b\negy p\nâŃĲ ï¸ı</w>\nhy po\nsi zes</w>\nregi stered</w>\nbet es</w>\nrelax ing</w>\nbloo m</w>\ninten se</w>\nvalent ines</w>\ninsan e</w>\nw wii</w>\np x</w>\ntri o</w>\nbla de</w>\nwiscon sin</w>\ncon e</w>\nplat in\nali ze</w>\nra ven\nincre asing</w>\nindi ans</w>\nil ian</w>\nbl u</w>\nrabb it</w>\nexten sion</w>\nje f\nau di</w>\nfer ry</w>\ns ell\na day</w>\nus b</w>\nswe at\ncham pag\nmetho d</w>\nmem ph\nassi st</w>\ns by</w>\nca pe\nremo ved</w>\nmag n\nv t</w>\nr ams</w>\nf bi</w>\ntack le</w>\nphe w</w>\nh on</w>\nmotor cycle</w>\nsu spec\neleph ant</w>\nsub ject</w>\nlet te</w>\nda iry</w>\nwhe at</w>\nawk ward</w>\nac t\ntro l\nmit ted</w>\nzay n</w>\nsheri ff</w>\nene my</w>\ncon s</w>\nke tt</w>\nbul ls</w>\nev alu\nbt c</w>\nsatell ite</w>\nho lo\npor ter</w>\ndia betes</w>\nbet ter\nrele asing</w>\nsur f</w>\n: -</w>\nse basti\ncollec ting</w>\nen cing</w>\ne thi\ngo ds</w>\nal ley</w>\nhealth y\nm ills</w>\nsma sh</w>\nco pper</w>\ncr ack</w>\nread ers</w>\nsp ac\nlicen se</w>\nbas ket</w>\nbang la\nen tic</w>\nom i</w>\nm ere</w>\nsi vely</w>\nanim ation</w>\nlan es</w>\ndent ally</w>\nchill in</w>\nfi e</w>\nk aren</w>\ndep th</w>\nli pse</w>\nn g\nri p\nmel o\nsand y</w>\nðŁĳı ðŁĳı\nvin cent</w>\nnu t\nhu g</w>\nwho le\ncre ates</w>\n? ???</w>\nâĿ¤ï¸ı âĿ¤ï¸ı</w>\nbak ed</w>\nup grade</w>\nrober ts</w>\nhar a</w>\ncarib bean</w>\nauth entic</w>\nmb s</w>\nmosco w</w>\nattor ney</w>\nwi ki\nch lo\nhu ll</w>\ncor k</w>\n\" !</w>\nsty lish</w>\nðŁĵ¸ :</w>\ndi ary</w>\nimpro ving</w>\nex pand\nbri ght\npollu tion</w>\nk nights</w>\nperson ality</w>\nchec ked</w>\nfac ilities</w>\nz el\nbow ling</w>\ngu er\nðŁİ Ĥ</w>\non going</w>\nun its</w>\nhoo k</w>\nbe ck</w>\nconfl ict</w>\nto dd\nfar ming</w>\neduc ational</w>\nk ak\ncla y\nstro ke</w>\nbel ly</w>\nexplo re\nmill enni\nth m</w>\nloo p</w>\nsm s</w>\nconsi st\ncir ca</w>\nbr yan</w>\nd ab\nyoun ger</w>\nsoli dar\npp a</w>\nexperi enced</w>\nb ella</w>\nbo ard\nshef field</w>\nsteph en\nconsu mer</w>\nsub mit</w>\nspon sor\nt ang\nag gre\ncomb ined</w>\ntrac king</w>\nsand ers</w>\nb az\nsurvi ve</w>\nfer red</w>\nequ al</w>\nse p</w>\nre ed</w>\nstr ong\npriv acy</w>\nst ap\nun g\nac ry\npa sta</w>\npir ates</w>\nag er</w>\nfair y</w>\ndu p</w>\nintroduc ed</w>\nwi p</w>\nlet s\nspr ay</w>\nðŁĵ º</w>\ngre w</w>\na sts</w>\npitts burgh</w>\nnew york</w>\njo ey</w>\nlau ren\ntra de\nch op\npi pe</w>\ncla ire</w>\nbehavi or</w>\nv ap\ncre ws</w>\nlap top</w>\nðŁ¤ Ĺ</w>\nche ster\ndisci pl\nd f</w>\nout doors</w>\nk s\ngo ver\nsuper star</w>\ncas ino</w>\nfar mer</w>\n; -)</w>\nre turned</w>\nðŁı Ī</w>\nma il\nroa sted</w>\nco sta</w>\nv ill\npe z</w>\ngard ening</w>\ndistribu tion</w>\nsh ining</w>\ninve stors</w>\nra sp\ndec ades</w>\nreali zed</w>\nbar n\np ti</w>\nst able</w>\nut d</w>\npan thers</w>\nm ens</w>\nb n\nca de\nbu cket</w>\nyn n</w>\nwhen ever</w>\nwa ke\nda is\nber nie</w>\nlo dge</w>\nju lie</w>\natmo sphere</w>\nðŁĺĺ ðŁĺĺ</w>\nmajor ity</w>\npar ti\nexc it\ncu t\nme h\nmusli ms</w>\nbe gun</w>\nfli ghts</w>\nvene ss</w>\nce me\npo sing</w>\nso le\ng ou\ndark ness</w>\npe ach\ncel tic</w>\nauth ority</w>\ngrand ma</w>\nful ness</w>\nsmi th\nspeci fic</w>\ngar cia</w>\nco ins</w>\ngood ness</w>\naldu b\nrecru iting</w>\nden nis</w>\ngar y\nsle eve</w>\nweap on</w>\npl z</w>\ndisco ver\nharri son</w>\nrecruit ment</w>\nja i\nch im\ncom pared</w>\ntom s</w>\nmo thers</w>\nam y\narchi ve</w>\nt ask</w>\nben jam\nse g\nlaw yer</w>\nal um</w>\ninve sting</w>\nmi e</w>\nche z</w>\nj p</w>\na ke\nfl am\nwall paper</w>\nâĻ¥ ï¸ı</w>\nt ton</w>\nche st</w>\nfavor ites</w>\nwe igh\ncoo lest</w>\nr ating</w>\nrelev ant</w>\nlo gan</w>\nma ple</w>\nrun ners</w>\npri or</w>\npeop le\nma ur\nterrori st</w>\nte sted</w>\ncarni val</w>\nsu spen\nme asure</w>\nm v\ncyber security</w>\napp ren\nterror ism</w>\no z\nv ital</w>\nni es</w>\ngon z\nfun ded</w>\ntwi st</w>\nassess ment</w>\ndie sel</w>\nen for\ncolum n</w>\nad dressing</w>\nca sts</w>\npay ment</w>\nx ton</w>\nfi er</w>\n, '</w>\nla st\nne e</w>\nun less</w>\nclo se\nsk ill</w>\ncuis ine</w>\nfun eral</w>\nti les</w>\na un\nk ru\nrelation ships</w>\nðŁĴ ¯\nev ent\nâĢįâĻĤ ï¸ı</w>\nkind ness</w>\npro posed</w>\nacou stic</w>\na es\ndefen der</w>\ndan ce\nh tt\nw at</w>\nvo y\nðŁ¤ ĺ\nau s\ncli ff</w>\nsear ching</w>\nbeauti fully</w>\nin qu\nat l</w>\nspeci alist</w>\nðŁĲ ¶</w>\nda i</w>\ntra ils</w>\nclass ics</w>\ninst ant</w>\nv ous</w>\nre venue</w>\nmar ch\nkir k\nfr inge</w>\nfire works</w>\ntri via</w>\nâĺ ħ</w>\ntr action</w>\nwal ter</w>\nmo to\nl ily</w>\natt itude</w>\ncli mb</w>\nsc an\nsav ings</w>\nc w\nfa ith\ncred its</w>\nab led</w>\ngra ff\nauto graph\nhe he</w>\nran ch</w>\nha d\nro gers</w>\nðŁĮ ¹</w>\nf in</w>\nre qu\nfol k\nad ditional</w>\nlyn n</w>\nu ber</w>\ndol lars</w>\nlo gic</w>\nwor th\nso m</w>\nthe sis</w>\np ound</w>\nbi c</w>\nst ur\ncer am\nspen cer</w>\nen tered</w>\nv amp\norgani zed</w>\nâľ Ī\npp s</w>\ntr on</w>\nmerce des</w>\nno ti\ncompet itive</w>\ndo w</w>\nous ness</w>\nvic tor</w>\ngr illed</w>\nna i</w>\npu tin</w>\nab ra\nbl ame</w>\nalex and\nanim al\ndec ent</w>\np ent\ninter ior\n:' )</w>\nbut ler</w>\nbal let</w>\nðŁĴ Ķ</w>\nalbu ms</w>\ndown s</w>\nla d</w>\nsi r\npla in</w>\np ers</w>\nblon de</w>\ndis c</w>\npaki stan\nse ment</w>\nga a</w>\nw age</w>\nch as\nman i</w>\nco ps</w>\nterr it\nlo l\nlau ghter</w>\nri vers</w>\nmagnific ent</w>\nlam p</w>\nw b\nnew sle\nchar ts</w>\nble ssing</w>\np unch</w>\nlon gest</w>\nfl oral</w>\ncu tie</w>\nfare well</w>\nsto pping</w>\nmb b</w>\nbu d</w>\nchee se\nde cla\nsi m</w>\nmc donald</w>\nde ter\nyou th\nt ch\nfre der\nkin dle</w>\nfer n\nat or\nas leep</w>\np ond</w>\nspr int</w>\np ounds</w>\nla zy</w>\ngh e\nfundra ising</w>\ndead ly</w>\ngran de</w>\ndou g</w>\nhe y\nlin da</w>\nconsi dering</w>\ni um</w>\ngol den\nvi k\nauth ors</w>\ndi ss\nu ally</w>\nappropri ate</w>\nmor ning\ny le</w>\nhon oring</w>\nfoli o</w>\nbe c</w>\nre bec\nfin land</w>\nformu la</w>\ncorn wall</w>\nsh ay\ncau sing</w>\nbl end</w>\nsig nal</w>\nt ent</w>\nkash mir</w>\nnation als</w>\nhar mony</w>\nsc out</w>\nacce ssi\nhe ight</w>\nmedi eval</w>\nimpro vement</w>\nke es</w>\nprac tical</w>\ncar d\nde par\nhu n</w>\nom ing</w>\ncal gary</w>\nste l</w>\nbu bble</w>\ngur u</w>\nma h</w>\nunex pe\nn h</w>\ned a</w>\nme at\ni ge</w>\nsi o</w>\ngod dess</w>\nin ches</w>\ntun es</w>\nbr itt\nsti on</w>\nra j</w>\nâĻ «</w>\nmer cy</w>\nðŁĴ ĺ</w>\nsen ds</w>\ni est</w>\npol ici\nval e</w>\nreduc ed</w>\nas ap</w>\nvi jay</w>\ndefen sive</w>\ncelebr ations</w>\nri ders</w>\nmed itation</w>\nhar mon\ng ing\nÂ ¡</w>\nprogram ming</w>\nin au\nsud den\nm h</w>\nreplac ement</w>\nsk u\nj ar</w>\ngra des</w>\nta st\nk itt\nbrand ing</w>\nk aw\nboo t\nf ought</w>\np ays</w>\ng f</w>\niz ation</w>\nho p\nk k</w>\nactivi st</w>\nv end\ncoast al</w>\ncha os</w>\nðŁĶ ´</w>\nse me\nbill board</w>\nli fting</w>\ncu mb\nsc al\nðŁĸ ¤</w>\nstru ck</w>\nl v\nindie dev</w>\nbeat en</w>\njun gle</w>\nal right</w>\ndestin y</w>\nm ing\nk c\nch ances</w>\nom an</w>\nq atar</w>\ncra f\ntra ined</w>\npri x</w>\nchar m</w>\no tive</w>\ns mu\ne c</w>\nand ers</w>\nhand ed</w>\nal ban\ncertain ly</w>\narri ving</w>\ni ze</w>\nsa i</w>\ntr ack\npain ter</w>\nhu mble</w>\nappo intment</w>\nhead line</w>\nmanag ing</w>\nmo d</w>\nas pe\nandre a</w>\nÃ ¤\nethi op\nun ited\nexi st\nbal i</w>\nk ad\nn t\nd red</w>\nre x</w>\nrecogni ze</w>\ntam pa</w>\nbe ers</w>\nati a</w>\nhe els</w>\nno te\ntransport ation</w>\ntur tle</w>\nre de\nhipho p</w>\nsp icy</w>\nsp urs</w>\nâ¬ ĩ\ncor p</w>\nther n\nto ast</w>\nhur ry</w>\nproper ties</w>\nma ge</w>\nmar co</w>\nele ments</w>\nbou ti\nsyn drome</w>\nms g</w>\ndevelop er</w>\ngra ders</w>\nhe im\nre sil\noff ices</w>\ndel ay</w>\ndi men\nvin tag\nbarbar a</w>\nðŁĺ ±\nvene zu\ncu lar</w>\nfac ed</w>\nbar n</w>\nðŁĺ Ĩ</w>\nsurvi vor</w>\nwor m</w>\nconfu sed</w>\npassion ate</w>\nØ ±\nidenti fy</w>\nelectr icity</w>\nsou ls</w>\nbrad ley</w>\nrepor tedly</w>\nlun ch\nshel f</w>\neli a</w>\nswee t\nsmoo th\nemplo yment</w>\nam el</w>\nmanhatt an</w>\nste am\noun ts</w>\nye p</w>\nli ving\nun e</w>\ndescri be</w>\nca res</w>\nman ila</w>\nsha wn</w>\nac ted</w>\nbas h</w>\nst even\nre st\npet ition</w>\ndiv ine</w>\nwel sh</w>\nrac e\nplatin um</w>\nðŁĮ ¸</w>\np b</w>\nextra ordinary</w>\nsolidar ity</w>\nm all\non ion</w>\nschedu led</w>\ngame of\nfer gu\nde ms</w>\nnor m\np k</w>\ntri als</w>\npolici es</w>\npubli shing</w>\nst ole</w>\nfron t\ncharac ter\nvan ia</w>\nex ce\nsti e</w>\nsc a</w>\nresi dential</w>\nsa iling</w>\nðŁĶ¥ðŁĶ¥ ðŁĶ¥</w>\nspons ors</w>\nth ick</w>\nchampag ne</w>\nshe pher\ncontinu ing</w>\nven ice</w>\nper th</w>\nna p</w>\na ster\ny ak\nun limited</w>\ncho ices</w>\nne o</w>\nhi v</w>\nrepor ter</w>\nbru ssels</w>\nf old</w>\ndy s\nse mi\nla wn</w>\nit alia</w>\nwi fi</w>\nas k\nem ed</w>\nfr ame\nmonit oring</w>\nste ad</w>\ni da\ngr in\nis a\nfli p</w>\nre stric\noffen sive</w>\natta ched</w>\ndi sh\nwh y\nphilli ps</w>\ngre et\np als</w>\nmix tape</w>\nv ou\nfiel der</w>\nspar k</w>\nalber ta</w>\ng len</w>\nca sh\ns ri\nu ri\nro dri\nentreprene urs</w>\nclimate change</w>\np sy</w>\nd le\nem ents</w>\nlin ked</w>\nnether lands</w>\nacci dentally</w>\noppos ition</w>\nvel vet</w>\nra ys</w>\nc w</w>\nom o</w>\nm f</w>\nlmfa o</w>\nnewsle tter</w>\n: )\ntoi let</w>\nliter ature</w>\ndi sp\nphili p</w>\nuni form</w>\nsudden ly</w>\nhead er</w>\ncool er</w>\n-- -</w>\nprou d\nbri g\nnis san</w>\nscienti st</w>\nj ah</w>\ncon centr\npac ks</w>\nappo inted</w>\nso ap</w>\neng age</w>\ncho se</w>\nâĻ ¡\nse tup</w>\njeal ous</w>\nhar ry\ng ation</w>\ntun nel</w>\nte mp</w>\nosc ars</w>\ndec ade</w>\nrecomm ended</w>\nchild ren\nab a</w>\nanxi ety</w>\nve ments</w>\nsal on</w>\npho too\norgani z\nmach ines</w>\nab s</w>\nvil le\nhy pe</w>\nti ff\nemer ging</w>\nav geek</w>\n[ #</w>\ncontribu tion</w>\nbra dy</w>\nre sto\ng mail</w>\nfit z\nphoto shoot</w>\nhel met</w>\nh t\neleg ant</w>\nug anda</w>\nnur sing</w>\nor leans</w>\npen n</w>\nna h</w>\nfoo tage</w>\nem a</w>\nw o</w>\nw ad\nconcer ns</w>\nve re\nre mark\nwho ever</w>\nstr ang\np t\nqu it</w>\nsh ang\nhistor y\ns ick\nperman ent</w>\nill ness</w>\ncol d\nvisi on\nhe m</w>\nar row</w>\ncon vic\npin k\noc cup\nbal d\nex hau\nu of\nam o</w>\non t</w>\nãĥ »</w>\nadop t</w>\nla id</w>\nsmo ked</w>\ninter pre\ness enti\nassoci ated</w>\nb d</w>\nbb y\nfi er\ninst all</w>\ndipl om\ncon diti\nc f</w>\nw ak\nany a</w>\ngr aci\nfi sher\ns ss</w>\nap r</w>\nil it\nmus ician</w>\nsymph ony</w>\ncor d</w>\nh ack</w>\nle gi\nl v</w>\nbless ings</w>\nhum or</w>\nsc ra\ne ti\nmin ster</w>\ntrav elling</w>\nbu sh\njewell ery</w>\nli me</w>\n!! !\npregn ant</w>\npe e</w>\nlo b\ncap ital\nip a</w>\npen cil</w>\nla bor\nduc ks</w>\nprou dly</w>\nwedd ing\ndere k</w>\nm w</w>\npe g</w>\nvalent ine\nan gu\nre treat</w>\npro spect</w>\ndang er</w>\nvul ner\nup set</w>\n, #</w>\nsr k</w>\nx im\nthur sday\nn fl\nkis ses</w>\nre ds</w>\ncr ack\nre ward</w>\nc u</w>\nko k</w>\nme te\naband oned</w>\nit t</w>\nme als</w>\nsp ell</w>\nstan bul</w>\ndel ays</w>\nru m</w>\nle op\ngu m</w>\nno va</w>\nsuper man</w>\nch ick</w>\nm is</w>\ndram atic</w>\ninno cent</w>\nr ounds</w>\nre c</w>\nauti sm</w>\nbangla desh</w>\nmor al</w>\nmo vie\nsp oo\nk la\nâĥ £\nou ting</w>\nmess i</w>\nab road</w>\nloo kin</w>\na im</w>\nq i</w>\nst ack</w>\ncolla ge</w>\nà ¯\nhud son</w>\nsc an</w>\nho e</w>\nch au\noc cur\ncomm ander</w>\nho les</w>\nðŁİ Ħ</w>\nbi as</w>\nv on\nstick er</w>\nma k\nresponsi bility</w>\ncolum bus</w>\nsa int\ned mon\nrac ism</w>\nfar ms</w>\nw en</w>\ngul f</w>\nmay o</w>\n!!!! !!!!\ncorpor ation</w>\nba chel\nel a\ninter nal</w>\nje ep</w>\nfol lows</w>\ndi alogue</w>\nde rer</w>\nsmart phone</w>\nhe len</w>\nrich mond</w>\nequ ity</w>\ns land</w>\nb g</w>\nne ar\nav i</w>\nmemph is</w>\nwe ir\ndiscu ssed</w>\nbad ge</w>\np up</w>\nmi stake</w>\nphen omen\nun ite</w>\nðŁ Ľ\nde pic\nri des</w>\nin augu\nn at</w>\nsof twitter</w>\ncomb ination</w>\ngosp el</w>\nâļ ¾\nad mission</w>\nretro gaming</w>\nðŁĲ ¾</w>\nsch u\nmb o</w>\njun ction</w>\nal arm</w>\nà ¦\ngr ac\nkh ali\nk ul\nm ale\ncap tion</w>\nwi sh\nte re\ncor ps</w>\nru bber</w>\nplay station</w>\ner in</w>\neffici ent</w>\nl or</w>\njo kes</w>\nin ary</w>\nnor man</w>\nlu is</w>\ninaugu ral</w>\nch ed\nâļ½ ï¸ı\ndi p</w>\nto e</w>\nstr at\naa c</w>\nam u\npi er</w>\nco tt</w>\ncomm and</w>\ntt en\nsn oo\ncu be</w>\nclo ses</w>\nclass ical</w>\ns word</w>\nexpre ssion</w>\nreach ing</w>\nn app\nco st\naffe ct</w>\nric o</w>\ngi f\nbrea the</w>\ntri be</w>\nor tho\nh ay</w>\nl g</w>\nfri es</w>\nn m</w>\nhi ding</w>\nrichar ds</w>\nen de\nmic ro</w>\ncapit ol</w>\ncop y\nro m\nregi me</w>\nmary land</w>\ntax i</w>\ndi al</w>\nembar ra\nun believ\nch t</w>\nv s\nelim in\no dd</w>\npen ny</w>\nsound track</w>\nl ings</w>\ntrans ition</w>\nrema ining</w>\na is</w>\nmali k</w>\n? !?</w>\nrand om\ndef end</w>\nul tra\ntru m</w>\ndanc er</w>\nst ol\ndri ve\na ver</w>\nro ast</w>\ndefin ition</w>\nse an\nexcit ement</w>\npartic ul\nsu rely</w>\nsh av\nber y</w>\ndi shes</w>\ncom m</w>\nis ol\ni am</w>\nob li\ngho st\nhugh es</w>\nchi efs</w>\nb as</w>\nconserv ative</w>\nspeci al\nfe min\nsh ri</w>\nn ancy</w>\ninte l</w>\ntu ne\nðŁĩ ª\njo el</w>\ngg le</w>\nmo to</w>\nðŁĺ Ķ</w>\nbu ck</w>\nd ag\nantic ip\nmont ana</w>\ngu id\nfro g</w>\nec raft</w>\nop e</w>\ndri ves</w>\nnu mer\nx y</w>\ncolor ful</w>\nwednesday wisdom</w>\nillu min\nbey on\ninau gur\ndeep ly</w>\npre fer</w>\nfor tune</w>\ncoo ked</w>\nti ble</w>\nâĺ ķ\nswe ater</w>\nit ter</w>\ntt y\nu i</w>\ngi e\ncom plic\n~ ~\ntax es</w>\ncu ps</w>\ndi verse</w>\nsam anth\nâłĢ âłĢ\nba king</w>\nsy mp\nwa i\nbe half</w>\nmer cur\ntravel s</w>\nðŁİī ðŁİ\nor ia</w>\neng aged</w>\njump ing</w>\nreti red</w>\nn aked</w>\np uni\nspeed way</w>\nsci ences</w>\nrehear sal</w>\non ym\ndy ou\npl ates</w>\nr ati\nkri sh\njaz z\ncar ol</w>\nra f</w>\npen alty</w>\ntim eline</w>\nru by</w>\nengine ers</w>\nra f\nbel le</w>\ndo se</w>\nche on</w>\nesc ap\nme g\nran k</w>\nor d</w>\nme gan</w>\nmer ch</w>\nec lipse</w>\nâĺº ï¸ı\nple dge</w>\nkir k</w>\nper si\nleice ster</w>\nsa k\nw k\nsaf ely</w>\nyy y</w>\nje t\npromis ed</w>\nj c</w>\nen ne</w>\nno ah</w>\nre no\nre a</w>\nðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ</w>\ntra il\nðŁĳ Ģ\nf d</w>\nsoo o</w>\nri min\nw k</w>\nà¸ ²\ni al\nx ox\nbis cu\nd ale\nfan dom</w>\nparticip ating</w>\nfla g\nprivi lege</w>\npe ach</w>\nmach ine\nbo ston\ngro ss</w>\no g\nmir acle</w>\nadop tion</w>\nu ss\nmon sters</w>\nbe ij\nclar ke</w>\npu shing</w>\npra ying</w>\nar o</w>\nd n\nell is</w>\napol lo</w>\nod ds</w>\nrefuge e</w>\nto w\nb p</w>\nðŁĩ¬ðŁĩ §</w>\nh end\napp eared</w>\nmemb ership</w>\npe an\ndu m</w>\nviol ent</w>\nv y\npotat oes</w>\naw w</w>\ngreet ings</w>\nt ts</w>\nac on</w>\nsh ane</w>\nphotograph ed</w>\ncra b</w>\ntemper atures</w>\ncu ba</w>\nc fc</w>\nwel com\nhe l</w>\nin nings</w>\nm k\nco de\nkno ck</w>\ngra ss\nswe dish</w>\np ta</w>\nick y</w>\nv at\nlin ing</w>\ns q</w>\nsa p</w>\nar c</w>\nannoun cing</w>\nsk ins</w>\ncit yof\nbr ing\nco x</w>\ngam er</w>\nit arian</w>\ni da</w>\nh d\nros se</w>\nsad ly</w>\nge o</w>\nâļ ¡ï¸ı</w>\ntag s</w>\nfa ther\nchan ge\nl ance</w>\nwhis key</w>\nadel aide</w>\nte c</w>\nstick ers</w>\nmarke t\nclass y</w>\nbad ass</w>\nflo rence</w>\nlin er</w>\nfro st</w>\nk ate\nac on\nscand al</w>\nes sex</w>\nðŁĺ ı\nvi vi\ndr ill</w>\nblo ggers</w>\nrecomm end\nd ha\nac res</w>\nro ma</w>\nbu y\ngro cer\ner ia</w>\nma har\nff er</w>\npatter ns</w>\nver i\ncom pu\nst ev\nang a</w>\nment or</w>\ndo o</w>\nit ali\ncdn poli</w>\non ly\nconduc t</w>\nelec tro\nde f</w>\nwh ale</w>\nprepar ation</w>\nbicy cle</w>\nvi ral</w>\nturn out</w>\nbra ss</w>\nqu ad\nhospit ality</w>\npack aging</w>\nden cy</w>\nceme tery</w>\nabo ard</w>\ndre aming</w>\npic ture\nt all\ninv ent\nad mi\no e</w>\ntem ps</w>\nqu an\nfun dam\npro mp\nresi dence</w>\nmu d</w>\nsour i</w>\nâĦ ¢</w>\ngraff iti</w>\ngi f</w>\nd nd</w>\ncom p</w>\ns war\npe eps</w>\npale stine</w>\ndevil s</w>\nsan g</w>\nassi stance</w>\nbi ke\nmissi ssi\ninter viewed</w>\nne phew</w>\ndru ms</w>\nv and\ngentle men</w>\nn sw</w>\ninst a</w>\nleban on</w>\nee ee\noli via</w>\nver y\nrou gh\nindustri es</w>\nm ation</w>\nðŁĺ Ĵ</w>\nbar rel</w>\nn ay\npo ps</w>\nmoder n\nill y\nare st</w>\non ents</w>\nprotec ting</w>\nv ans</w>\ne o</w>\nvi kings</w>\nrestaur ants</w>\nre ck\njac kie</w>\nandre w\nw illing</w>\nhe ath</w>\ncitiz en\ndisc rimin\nà¹ Ī</w>\nstu art</w>\nm ys</w>\nhi p\ntran sp\n\" ?</w>\nte x</w>\nsu shi</w>\nke d\ncro ssed</w>\ndist ur\npe dia</w>\nf ate</w>\nsome how</w>\nmo th</w>\nproce ssing</w>\nis s\nr in</w>\nu ts</w>\nyy c</w>\nver t</w>\nlg bt\nre id</w>\non to\narab ia</w>\nhabit at</w>\n= =\nstre ak</w>\nsimp son</w>\naddic tion</w>\nwim ble\ndeli vers</w>\nchalleng ing</w>\nðŁİ ¶\nfran ch\ne du\ns me\nai ds</w>\nhur st</w>\nth am\ntari an</w>\nremem bered</w>\npalestin ian</w>\nfe es</w>\ntru m\nsket ch\nur u</w>\nfit ting</w>\njes se</w>\nðŁĶ¥ ðŁĶ¥</w>\n---- ----\nba ch\nici a</w>\ncolo red</w>\nda h</w>\nassoci ate</w>\nint el\ns eller</w>\np u</w>\nstu ffed</w>\nac s</w>\nb s\nsh in</w>\ncooper ation</w>\ncertific ate</w>\nab u</w>\ningredi ents</w>\nre v</w>\nin ge\nel der\nchristi an\nbun dle</w>\nth ic</w>\ndir t</w>\nbeij ing</w>\ncomm it</w>\nted dy</w>\ned u</w>\nto day\ns field</w>\nw yn\nconfir ms</w>\nlo o</w>\nj v</w>\nene ss</w>\nal pha\nvir us</w>\nari um</w>\ngr ind</w>\nbri dges</w>\nintroduc tion</w>\npol ls</w>\nbac ter\nz ach</w>\ntermin al</w>\nra iders</w>\nfla vor</w>\nzom bie</w>\nvo d\nsp reading</w>\ngameof thrones</w>\neffici ency</w>\nlat ely</w>\nale m</w>\ntwee t\ncri mes</w>\ncl er\nde y</w>\ndg ed</w>\nhy un\npay ments</w>\ncir cus</w>\nðŁĺŃ ðŁĺŃ</w>\nmis souri</w>\nlu b</w>\nepiso des</w>\nc age</w>\npo s</w>\nmat ching</w>\ntumb lr</w>\nlin ed</w>\nge st\nam bi\nnar r\ning ton\nregu l\nblo wn</w>\nis le</w>\nco co\non don</w>\njoshu a</w>\ntour ing</w>\nsm a</w>\nsau sage</w>\nbest friend</w>\nbo eing</w>\ndesi re</w>\nsav age</w>\nra pper</w>\nde vo\nte ar</w>\ntake over</w>\ncow boys</w>\npo ker</w>\npar ag\npp e</w>\nh int</w>\nwe ars</w>\nse th</w>\nro les</w>\nl anc\nman ga</w>\nform at</w>\nfl yer</w>\nc ay\nmo or</w>\nba ke</w>\nspla sh</w>\nv ad\nker ala</w>\nproce eds</w>\nsil ly</w>\nreflec tion</w>\ndi str\nwi d\nsu it\nci vic</w>\nyan kees</w>\nby n</w>\nmigr ation</w>\ndi stin\nor ch\nfe mini\nquali fying</w>\ntu ri\no be\nhun dred</w>\ncra p</w>\nwan g</w>\nmathe mat\nbu re\nexpo sure</w>\nfergu son</w>\nseme ster</w>\nre serv\npl ym\na hu\nfac ial</w>\nwa x</w>\nwor ried</w>\nca b</w>\nvi o\nas a</w>\nco d</w>\nto pics</w>\np cs</w>\nhal o</w>\nrescu ed</w>\nhoriz on</w>\nar k\nâļ ª\nhol ly</w>\nel f</w>\nul ti\npu p\nquali fied</w>\nattend ance</w>\nati vely</w>\ndestro y</w>\ny c</w>\nfor th</w>\nphotoo ftheday</w>\nc ents</w>\nic eland</w>\nmeas ures</w>\nde sk\nport folio</w>\nartic les</w>\ndirec tors</w>\ndat ab\ne w\ncreep y</w>\noun ding</w>\nhon oured</w>\nmi st</w>\nj it\nmen tioned</w>\nport able</w>\niti c</w>\nd ann\nfriday feeling</w>\nam id</w>\nti ger\nscri p\nhelicop ter</w>\nhard ware</w>\nexpl or\nwork place</w>\naustri a</w>\nbeat les</w>\nber nar\nspi der\ndisc o</w>\ncul t</w>\nlim its</w>\nshor tly</w>\nfin al\nnin ja</w>\nlu ke\nle bron</w>\nwal mart</w>\no il\nvan illa</w>\nshi re\nye g</w>\nak y</w>\nc s\nbl er</w>\ncollec ted</w>\nt g</w>\nrol led</w>\nspeci als</w>\nb ff</w>\npier re</w>\nsh im\nvi er</w>\nflash back</w>\nrestor ation</w>\nindividu als</w>\npro d</w>\nfre aking</w>\ntu rer</w>\no a</w>\nre fre\nmor oc\ngre et</w>\nre yn\ncare ful</w>\nour ing</w>\nu sh\nis d</w>\ng ill</w>\nvie w\nthunder storm</w>\nb led</w>\npic nic</w>\nguar di\npi g\nar k</w>\nsyl vania</w>\nbann ed</w>\nu cl\nvi jay\nori um</w>\nav engers</w>\nbeliev es</w>\neu r</w>\nmonu ment</w>\nconcer ned</w>\nla bs</w>\nber g\na ap\nvi sh\nsing les</w>\ncan cel\nz el</w>\nar ab</w>\nru th</w>\ntoo th</w>\nar ta</w>\nsh af\nchair s</w>\nr ack</w>\ndise ases</w>\ncrow d\ncl y\nfle x</w>\nchrist ma\nartif icial</w>\ntom at\nfin e\ndra ws</w>\nadvoc ate</w>\nfran ce\nÙ Ĭ\nðŁĺ ³\nheav y\ns our</w>\ncompre hen\nno ble</w>\naa p</w>\nhin du</w>\ncor al</w>\ng ars</w>\now en</w>\nn l\nst all</w>\nyel low\nmar ina</w>\nin ver\nsuppor t\ntou gh\npromis es</w>\npi e\nmaster piece</w>\nsco re\nfor ce\nmor tg\ncrypto currency</w>\no x</w>\nr ors</w>\nrock in</w>\npro vin\nho g\nno stal\noak land</w>\npat rick\ninclu sion</w>\ntra ffic\nah med</w>\na ha\nlux ury\ncon secu\nde mon</w>\nâĸ º</w>\nb lowing</w>\nst ag\n: \"</w>\nencoura ge</w>\nben e\nsku ll</w>\ndo dge</w>\nbu ster</w>\nkin son</w>\nwit ne\ner ror</w>\nlo west</w>\nfel low\nà °\nsh re\nbl ur\nvir gin</w>\ncompos er</w>\nsli p</w>\nmor nings</w>\nga ins</w>\ntab le\ngra in</w>\nari st</w>\nbraz ilian</w>\nw we\ntu es</w>\nribb on</w>\nan ag\ndi st</w>\nsac rif\nem brace</w>\nentreprene ur\naf fili\nde o</w>\nt ali\ntouri st</w>\nfat al</w>\nì Ĭ\nautom atic</w>\nðŁĩ µ\nwe ak\nwel fare</w>\nconfir m</w>\nbenjam in</w>\nfi ghts</w>\nalleg ed</w>\nme ad\nstrugg ling</w>\npro secu\nche f\nÃ ¨\npropos al</w>\ner n</w>\nðŁĺ Ħ\ndy k</w>\non gs</w>\nhon g\nm ack</w>\nmel on</w>\non ent</w>\nru sh\nd ap\ntol er\npro pag\nc ze\ntrans lation</w>\nwal let</w>\ncott age</w>\nsa il</w>\nconstitu tion</w>\nðŁĴ Ģ</w>\nmun ici\nfav or</w>\nstorm hour</w>\ni h\nðŁĺ Į</w>\napproach ing</w>\npin ned</w>\nj ed\nniger ian</w>\nn ach\nsh at\nparticul arly</w>\nmc don\ncamer as</w>\nanni e</w>\nadmini str\nhe at\nelectr ical</w>\nchar ming</w>\ngib son</w>\nbouti que</w>\nex posed</w>\nac tor\npil low</w>\nbeach es</w>\ngenu ine</w>\nmargare t</w>\nben nett</w>\nlou isi\npos itions</w>\nel y\nshin y</w>\nten tion</w>\narchitec t</w>\nren tal</w>\nac qui\ngoo gle\nsub way</w>\nmom ent\nðŁļ ¨\nri m</w>\nmetho ds</w>\ncy cli\nnor folk</w>\nÙ Ī\nover whel\nra pid</w>\nwe ar\nhappy birthday</w>\nprogre ssive</w>\nðŁĴ ¥\nco gn\npap a</w>\nf ool</w>\nphilosoph y</w>\npol ar</w>\njim my\nwi g</w>\nðŁĴ ĭ\noper ating</w>\nreduc tion</w>\nph i</w>\nfla gs</w>\nto the\no di\na res</w>\nk oo\nk ang\nar kansas</w>\nash ton</w>\nwimble don</w>\nsci fi</w>\nattrac tive</w>\nmississi ppi</w>\nlogi sts</w>\nral ph</w>\nla bel\ngradu ates</w>\nma ha\nhome town</w>\nâľĮ ï¸ı</w>\nfoun ded</w>\non the\nli z</w>\ntrans l\nmini mum</w>\npre sti\nta m</w>\ngener ations</w>\nre bel</w>\njourn alists</w>\npar am\nmc m</w>\nacry lic</w>\ndeath s</w>\ntes la</w>\nw t</w>\nbry ant</w>\njer us\ni stanbul</w>\nmuham mad</w>\nri ley</w>\nk ris</w>\nwork shops</w>\nis o</w>\ncoun ts</w>\nstre t\nprote cted</w>\ntrin ity</w>\nman ual</w>\nr hin\nr il\npleas ant</w>\nle mon\nner d</w>\nhar der</w>\ndar ren</w>\nbur y\nra h\nbas is</w>\nmi gu\nocca sion</w>\nli sts</w>\nâĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ı</w>\ne b\nde cre\nhamp ton</w>\nìĿ ´\ntra vis</w>\ntrans form</w>\npuer to</w>\nnh l\nav oc\ntri ps</w>\nunexpe cted</w>\nve t\ndi dyou\nbar ber</w>\nst ages</w>\nm son</w>\nre presented</w>\nfor t\nl al\npp le</w>\nnic ely</w>\nignor e</w>\nqu il\nqu inn</w>\nh k</w>\ncarri er</w>\nremin ded</w>\nam ong\npass enger</w>\nel len</w>\ngue z</w>\nsc ape</w>\nmu ral</w>\nyoun gest</w>\nma sh\nd ill\nrout ine</w>\nstain less</w>\njack son\ngand hi</w>\nth al</w>\non ers</w>\nedit orial</w>\nconvers ations</w>\nsd ale</w>\nautom ation</w>\ni ke\nà¸² à¸\nðŁĩ ª</w>\nhau l</w>\nla ying</w>\nmen tions</w>\nam en</w>\nabor tion</w>\ni bi\ncoun ties</w>\nca therine</w>\nman ds</w>\njam e\nroll er</w>\nau t</w>\nn am</w>\no logical</w>\ncep tion</w>\nran king</w>\ntox ic</w>\nsn acks</w>\nvictor ian</w>\nbang kok</w>\npsycho logy</w>\nre g</w>\nang ela</w>\nrespon d</w>\nsty le\nsophi e</w>\ndak ota</w>\nachiev ed</w>\nmar ked</w>\nimper ial</w>\nin as</w>\nglo ves</w>\nsli m</w>\nconfi dent</w>\natt acked</w>\ngg er\nlon ely</w>\nvalentine sday</w>\nre b\ncraft beer</w>\norig in</w>\nzim bab\nce iling</w>\nte ens</w>\nother wise</w>\nw b</w>\nf ers</w>\nday sof\nadvis or</w>\ny ah</w>\nâĻ ª</w>\nen der</w>\nrepublic ans</w>\nav a</w>\nskir t</w>\npi pel\nchi e</w>\njan e\nja x</w>\nðŁĺ ĭ\nâľ Ĭ\nj ays</w>\nbre tt</w>\nbal o\ncru cial</w>\nd har\nas is</w>\nde au</w>\nlloy d</w>\nchat ting</w>\nâĿĦ ï¸ı</w>\nrel ay</w>\nremark able</w>\nn s\nwe t\nbris bane</w>\nðŁĶ ´\ntion ally</w>\nf k</w>\nla yer</w>\nhouse hold</w>\nconsecu tive</w>\nes is</w>\npend ant</w>\nst ir\ncrit ic\nsu gar\nphoto shop</w>\npa res</w>\narti stic</w>\ndo dgers</w>\nc un\ncra fted</w>\nam end\nbo at\nâŃĲ ï¸ı\negyp tian</w>\nsa w\ntra ge\nsmall er</w>\nox y\npa ired</w>\nnex t\ni res</w>\ntac o</w>\no y</w>\nu c</w>\nst i</w>\na erial</w>\n: //</w>\ndr o</w>\ndot com</w>\ngg ins</w>\nr pg</w>\nay e</w>\nle an\nstri ker</w>\nlo bby</w>\nprote sts</w>\npri ority</w>\ncongre ss\nam ate\ninv it\nr ington</w>\nmom my</w>\nth us</w>\nallow ing</w>\npione er</w>\nenfor cement</w>\ng ori\ntal k\ndra g</w>\ndu mb</w>\nbul let</w>\nsan ge\ner y\ntar gets</w>\nðŁĩ ¦\nhe ather</w>\nconsi der\nseaf ood</w>\nve st</w>\nris ks</w>\n% .</w>\np g\nsac red</w>\nhe ating</w>\nkick ed</w>\ntto t</w>\n. -</w>\nchan di\nco ven\npo ol\npul se</w>\ni a\nro ster</w>\nshakespe are</w>\nes a</w>\ncar go</w>\npean ut</w>\ntro op\nac tion\ntab let</w>\nhome work</w>\ncast le\nstru ction</w>\nmus icians</w>\nfree zing</w>\nbu tt\njustin bieber</w>\nj j\nbah rain</w>\nan them</w>\nau dit\ndidyou know</w>\nna vig\nguid ance</w>\nâĸ ¶\ntur f</w>\nn un\nfic ations</w>\nye men</w>\nchar ging</w>\nx c</w>\nbron cos</w>\nsu bur\np ale</w>\nbor ing</w>\namong st</w>\nfor the\nem per\nom fg</w>\np j\nexpe cting</w>\nðŁĴ «</w>\nst l</w>\nad min</w>\nexpect ations</w>\nsw an</w>\nshoo t\noooo o</w>\nmin ent</w>\nãĢ Ĳ</w>\nwall ace</w>\nstan g</w>\nsatur day\nadop ted</w>\ndou bles</w>\nhom ie</w>\nome z</w>\nd han\nvent ure</w>\nsurroun ding</w>\nfi le\nmob ility</w>\nde es</w>\nw ski</w>\nbroo ke</w>\nemb ro\nre members</w>\nkar a</w>\ntest im\nbo tan\nm tv</w>\nsacrif ice</w>\njerus alem</w>\nd l\nÂ ´</w>\nproper ly</w>\nili on</w>\nas i</w>\nleg it</w>\nco pe</w>\nm cla\nrecy cling</w>\nlar ger</w>\nðŁĴ ĵ</w>\npat ric\ngener ous</w>\nja red</w>\np f</w>\nmol ly</w>\nthom as\nju dges</w>\nh b</w>\nsor ts</w>\nbl vd</w>\no ven</w>\nenter ing</w>\nplan es</w>\nbe et\nintegr ation</w>\nboo ked</w>\nfre ed\nver n</w>\nash es</w>\nto pped</w>\nde pot</w>\nwelcom ed</w>\nren a</w>\nm ick</w>\nd and\nsee ks</w>\ngam er\nran kings</w>\nren e</w>\nmu t\nwhis ky</w>\nfire fighters</w>\ngu es</w>\nga ther</w>\ntour ney</w>\nde men\ny ang</w>\nnew ton</w>\nautom otive</w>\nback yard</w>\ndeta iled</w>\nmi st\nto bac\nfi ber</w>\nun usual</w>\ngrat itude</w>\nsp are</w>\nne ys</w>\n: *</w>\nper i\nflo ating</w>\nfin alist</w>\ndon ating</w>\ndre ss\nbro ad</w>\nbe the\neconom ics</w>\ntai wan</w>\ned wards</w>\nplu g</w>\npra iri\nval en\nbab a</w>\nf ad\nan as</w>\nhar per</w>\ndis order</w>\napp lied</w>\np att\nbi kin\nli ver</w>\ncu ri\ncarol ine</w>\nann er</w>\njuli an</w>\nwal king\nmal col\nscreen shot</w>\nco ding</w>\nskin care</w>\nactivi sts</w>\nmyster ious</w>\nex act</w>\nblo cking</w>\nmercur y</w>\nbat ter\ndu mp\nâľ Į</w>\nen se\nli sh\nridic ulous</w>\nprote sters</w>\nðŁĻ Ī\nlu st</w>\nswe at</w>\nas s\nali ke</w>\nco dy</w>\nre ments</w>\nwin ds\nas pir\nvi enna</w>\npra y\n.. .@</w>\nbo i</w>\ncand le</w>\nassi sts</w>\nte e\nder son</w>\np ony</w>\nf ence</w>\ncon spir\nâĺħ âĺħ\noo th</w>\ne pic\nba rely</w>\na unt</w>\nb am</w>\ndiamon ds</w>\nend less</w>\nscre ens</w>\ncan cer\ngr o</w>\np st</w>\npro spec\nmo sque</w>\nhelp ful</w>\nou ri\nbro ther\ngu jar\ncri sti\nine z</w>\nto wers</w>\nad dresses</w>\ngra y\nbur ton</w>\nre tweeted</w>\nðŁ¤ Ķ\nn ity</w>\ndu ck\nsuper vis\njo an</w>\nkin der\nsanc tu\npi ed</w>\nâı °</w>\nł ï¸ı</w>\nm ati\nreven ge</w>\nce ster</w>\neli fe</w>\ndesig ners</w>\nback ed</w>\nbo li\nwei ght\ncou ch</w>\nsu res</w>\ns its</w>\nshri mp</w>\nla gos</w>\nauth orities</w>\nos ity</w>\nhol ly\ncompu ting</w>\nfac tors</w>\nab e</w>\npan els</w>\nram ad\nsent ence</w>\nmissi on\nhol m</w>\nr b\nd ads</w>\nshang hai</w>\nmon ey\nshe ets</w>\nsk ate</w>\nthre w</w>\ncup cakes</w>\ninfin ite</w>\nl is</w>\npractic ing</w>\ness ay</w>\nka i\nas ci\nmo b</w>\nu gh</w>\nhol mes</w>\nre gg\nik h</w>\nmo ck</w>\ncollec tions</w>\npe p\no va</w>\nsal t\nnan dez</w>\nco y\nthre ats</w>\ntex ts</w>\ncin nam\npregn ancy</w>\npen ding</w>\nstam p</w>\nflow er\ng is</w>\nagre ed</w>\npay ne</w>\nro ver</w>\nph ra\nsof t\nf fin\nfa thers</w>\npass engers</w>\naw ays</w>\nal a\nh es</w>\nli van</w>\nin s\nsamu el</w>\ningu i\nh of</w>\nj j</w>\nchen nai</w>\ncat al\nom ic</w>\nhe ath\nni ece</w>\npump ed</w>\nintegr ated</w>\nare l</w>\nno m</w>\nproduc tivity</w>\nwan ting</w>\nvis a</w>\ndi ana</w>\ntw il\nit v</w>\ncam ps</w>\nro wing</w>\nd ley</w>\nblack and\ngu ards</w>\nb ells</w>\nre verse</w>\nvi be</w>\nric ky</w>\nmo ss</w>\nny t</w>\nâĺ Ģï¸ı\nel le\ntro y</w>\ncu dd\nev an\nwomen s\nfo to</w>\nmi stakes</w>\nwick ed</w>\nmi l</w>\nc led</w>\nme mes</w>\nco smo\nschol ar</w>\nren o</w>\nðŁĺ Ģ\nv ents</w>\n# âĢ¦</w>\nterrori sts</w>\nca sey</w>\ncardin als</w>\nðŁĺĬ ðŁĺĬ\nvenezu ela</w>\nbol a</w>\nliter acy</w>\nt w</w>\nen o</w>\ncon tains</w>\nau stin\nfin anci\nev an</w>\nhar vard</w>\norigin ally</w>\nchev ro\nher ald</w>\nnott ingham</w>\nmanag ers</w>\nâŀ ¡</w>\naccep ting</w>\nwal sh</w>\ntutor ial</w>\nentrepreneur ship</w>\nyach t</w>\nrequi rements</w>\nglen n</w>\npe de\nunfortun ately</w>\nach ing</w>\ndais y</w>\ngi an</w>\nnight mare</w>\nâĿ Ĺ\nr ina</w>\nb art</w>\nema ils</w>\noppo site</w>\nwho m</w>\nsa ke</w>\npu zzle</w>\nda shi\npar ty\nblan ket</w>\nbus es</w>\nlo re\nbeau ty\nreas on\npun jab</w>\nwinds or</w>\nfunc tional</w>\nexi sting</w>\nhel lo\ngli mp\ncon vin\nla k\nscre aming</w>\nrebec ca</w>\nbli ss</w>\nnorth west</w>\ninfin ity</w>\ncosme tics</w>\npul ling</w>\ncoffe e\npl ing</w>\nop ho\ncolom bia</w>\ninterior design</w>\n( +</w>\nemo tions</w>\nsa c</w>\nsun glasses</w>\nsav es</w>\nd f\nsix th</w>\nal y</w>\nðŁĺ »</w>\nde en</w>\ndev ast\npolit icians</w>\nlac rosse</w>\ng u</w>\npe i</w>\njav a</w>\ncomb ine</w>\ncoal ition</w>\ner ts</w>\nsurvi v\nch ad</w>\nstri an</w>\nn n</w>\nde vi\ncoun c\nconcer n</w>\ncontro ller</w>\nbre ast\nj ury</w>\ntu m\nintroduc es</w>\nla di\nmobi le\nal z\nste ady</w>\nnur ses</w>\nh acking</w>\non line\noce an\nðŁİ Ħ\na am\nju ven\nic c</w>\nlouisi ana</w>\nar te</w>\nstreet art</w>\nis on\nwn s</w>\nfr m</w>\np anda</w>\nno ir</w>\nmain tain</w>\ndel ay\nsymp toms</w>\nthor n\nge ome\nter n</w>\ncarri ed</w>\np ru\npan or\nas sy</w>\nper u</w>\nclou d\nsp ra\npe di\ne ste\ntag ged</w>\nðŁĺ Ŀ</w>\nshado ws</w>\nnaz i</w>\nØ§Ù Ħ\ncor ri\nâĻ¥ âĻ¥\nj ad\nðŁĩ «\nform al</w>\nspo ken</w>\nðŁĮ ŀ</w>\nenjo y\nlo pez</w>\nout look</w>\nin ho</w>\nw ander\nÙ ħ\nma ya</w>\npe e\nd ine</w>\nãĢ ĳ</w>\nbrief ing</w>\nsuppor ter</w>\nar ily</w>\nght ers</w>\nnatur ally</w>\ndoctor who</w>\nj en</w>\nv ar</w>\nnew year</w>\nre se\nsi mm\nre x\ncon sequ\ntomat oes</w>\nbur st</w>\nbra vo</w>\nbur gers</w>\ncr acking</w>\nnor theast</w>\nbi om\nmush room</w>\nmar que\ndou ble\nni er</w>\nv ag\ntw enty</w>\nkey board</w>\nwin ni\njama ica</w>\npar ish</w>\n: -\nmental health</w>\nali zing</w>\nren der</w>\nwa king</w>\nðŁİ Ĥ\ng ly\nna than\nwa shing</w>\nmel issa</w>\njun g</w>\nloy al</w>\nchil i</w>\nsong writer</w>\nguit arist</w>\nbo wie</w>\nneighb ors</w>\nonym ous</w>\nas set</w>\nta i</w>\nhead quarters</w>\nðŁĮ Ī</w>\ni hear\nci gare\nsur g\n) \"</w>\nre pl\ndar ling</w>\nðŁĻ Ħ</w>\nz ak\nsa re\nãħ ĭ\nmic key</w>\nware house</w>\nmass age</w>\nine es</w>\ndid nt</w>\ni w\nhur ts</w>\neng aging</w>\nmag ic\nwomen in\nk itten</w>\nmor s</w>\nc art</w>\ntit ans</w>\ncolle ague</w>\ncompe ting</w>\ner an</w>\nk hal\nmar ble</w>\ndem and\ndel ight</w>\net ary</w>\nbli zz\nlou ise</w>\nm ls</w>\nfini shes</w>\nexperim ent</w>\nconduc ted</w>\nelectr onics</w>\nitt ers</w>\ncar ing</w>\nwh ats</w>\nsym bol</w>\njun g\ne cu\npi x</w>\ncon text</w>\nchar ger</w>\nðŁĺ ĩ</w>\nre ig\nfra g\në ĭ\nch ad\ntru e\nker ry</w>\ndef ending</w>\na int</w>\nau ton\ncheck out</w>\nbar nes</w>\nless ly</w>\nd t\nm me</w>\nclou dy</w>\nsecond ary</w>\nare z</w>\n_ :</w>\napp a</w>\nconst ant</w>\n\" )</w>\nve ts</w>\njo b\ni ent</w>\nðŁĺŃðŁĺŃ ðŁĺŃ</w>\nm j\nfren ch\ndi ver\ndavi es</w>\nhh hh</w>\ne book</w>\nà¹ ī</w>\nmar iti\nbree ze</w>\nsusp ended</w>\nmat o\nvi et</w>\nra hu\nse i\nbol t</w>\nen ary</w>\nle is\nkar l</w>\nfr amed</w>\nexpla ining</w>\nab c\nde aling</w>\nnat o</w>\nja ke\nexp and</w>\nleon ard</w>\nestabli shed</w>\ndu b</w>\nar men\nel led</w>\nvoc al</w>\nnichol as</w>\nori ent\nk yo\nillustr ated</w>\nah h</w>\ndanc ers</w>\nmilli on\nge ta\npo pp\nas u\nmur dered</w>\ngi ble</w>\nsto ked</w>\ngri ffin</w>\nmaxi mum</w>\nadri an</w>\nen counter</w>\nther o\ndavid son</w>\nðŁį »</w>\nholi day\nev o</w>\nasse ts</w>\ncar son</w>\nmemor able</w>\nâļ ½</w>\nob am\nrepresent ative</w>\ncb d</w>\ntr icks</w>\nvo gue</w>\nvo ice\nmm mm</w>\nsebasti an</w>\ncli f\nath y</w>\npar alle\nðŁ¤ ·\npa k\nev acu\ne ats</w>\nØ§ Ø\ntou ched</w>\norgan ised</w>\nspir its</w>\ncan ad\ngui ded</w>\nframe work</w>\nðŁĮ Ł\npe d\nnatur al\nag ar\nreplac ed</w>\nanch or</w>\nti t</w>\nsha h\norgan is\nsuper ior</w>\nr n\nch ro\neric a</w>\nst ill\ncor on\nchu ck\nloc ks</w>\nor gan</w>\nro sen\nsc am</w>\nben ed\n/ #</w>\nke en</w>\ntre vor</w>\nvamp ire</w>\nsor ted</w>\n! '</w>\naf ford</w>\nin tro</w>\ngr ace\nðŁĺ ľ\nsau r</w>\nkick starter</w>\ninflu en\nv u</w>\ny up</w>\npo c\nðŁİ ¥</w>\na ar</w>\ns ang\ntre k\net sy\ntb h</w>\nscre am</w>\nchevro let</w>\npix el</w>\nshepher d</w>\nan or\ngabri el</w>\ntw ood</w>\nsd cc</w>\nme ters</w>\ndevelop ers</w>\nclo sure</w>\nv w</w>\ntwit ch\nì Ĺ\nse oul</w>\npr ice\nho g</w>\nn ish</w>\nhill ary\nscrat ch</w>\nin cen\nwag on</w>\ndis ability</w>\npan ther</w>\nch ats</w>\ng d\nwit z</w>\nsus sex</w>\nl ate\nden mark</w>\nger ald</w>\ncancel led</w>\nnet te</w>\ni x\nnav al</w>\nbap tist</w>\nte t</w>\ny ad\nma th\nho y</w>\nr andy</w>\npo int\nintel lec\nfru its</w>\nw ool</w>\ngu in\npr on\nthe ft</w>\ncon dem\nmar ry</w>\nn ola</w>\narchitec ts</w>\ncin cin\nroc kets</w>\ngentle man</w>\nex plan\nt ate</w>\ndo e</w>\nra ises</w>\nwild life\nw l\ninsi der</w>\nblan c</w>\nw p</w>\nfor sale</w>\nny c\npo well</w>\nunbeliev able</w>\npen s\ngoo dies</w>\nmu stang</w>\np ens</w>\nst ays</w>\nsqu ash</w>\nxox o</w>\nnear by</w>\never ton</w>\nco co</w>\nle agu\nk han\nstu d</w>\nsouth west</w>\ncon struc\ns worth</w>\ncro atia</w>\nle a</w>\nsu ms</w>\naim s</w>\ne an</w>\nvan ess\niti ous</w>\npa thy</w>\narc ade</w>\nb end</w>\nsugge sts</w>\nsac ram\nroy als</w>\nri er</w>\nem ir\nin cl</w>\nan k\nclar k\nri ght\nvac c\nà¤ ¾</w>\ntan e\nli b</w>\nu sc\nsal es\nhu h</w>\ns ally</w>\nver a</w>\np ga</w>\ngro ws</w>\ndru m\ntre e\neth ics</w>\nsug gest</w>\nis ab\nse aled</w>\npre viously</w>\nanim ated</w>\nab du\nri ses</w>\nglo b\npre dat\nscar f</w>\ndel ic\nom ar</w>\nll i</w>\nsx sw</w>\npy thon</w>\nne bra\nfun k</w>\nreflec t</w>\npav ilion</w>\ntic ally</w>\nch asing</w>\nbak ery</w>\ninva sion</w>\nko h\nbeliev ed</w>\nco hen</w>\ncon qu\ncra fts</w>\nnat i</w>\ncle ver</w>\ngovern ance</w>\nsam ples</w>\nfa ils</w>\nâ Ķ\nti mo\nr itu\nstri king</w>\ninclu sive</w>\nsho cking</w>\ncan t\nrequi res</w>\ndra wings</w>\nà¸ Ń\npurch ased</w>\ndu m\nz ach\nwar ner</w>\ncon sole</w>\nman sion</w>\nfoun tain</w>\ncircu m\ne sh</w>\nis land\nmil k\npro fits</w>\nhali fax</w>\nri val\nâľĪ ï¸ı</w>\njen ny</w>\nsand ra</w>\nny e</w>\nk elly\ny al</w>\nqu ad</w>\nno s</w>\ninste in</w>\nfin alists</w>\nmid fielder</w>\ncu e</w>\nexcep tional</w>\na an</w>\nsa pp\ngett in</w>\nsa a</w>\nf ati\nsl ice</w>\nvol k\ns wal\nla sting</w>\nsum mary</w>\nit as</w>\nsm o</w>\ns z\nâĺ Ĩ</w>\nip l</w>\nfl ames</w>\nene ws</w>\nha v\nhoo die</w>\npitch er</w>\nwin dy</w>\nre vol\ncentr al\nton ite</w>\nðŁİī ðŁİī</w>\nsol ved</w>\nmil wau\norganiz ations</w>\nwee ts</w>\nre fin\ns th\nãĥ ¼\nel in</w>\nton a</w>\ncinnam on</w>\nðŁİ ¨</w>\nðŁİ ģ</w>\nron aldo</w>\npen insu\nome ga</w>\nel ds</w>\ndesig ning</w>\ne igh\nblu et\nben z</w>\nnu g\nash a</w>\nrobo ts</w>\nsu dan</w>\nchoo sing</w>\nen do\nser ge\nclo sely</w>\nhand y</w>\nfing er\nbe ing\nar te\nsurvi ved</w>\nfl ame</w>\nmile stone</w>\ngu t</w>\nd war\nfu tures</w>\nÃ© e</w>\nel o</w>\nfri dge</w>\neli c</w>\nou ch</w>\nu b</w>\np v</w>\ntit an\ncol lar</w>\nst ation\nnev ada</w>\naur ora</w>\nr d\ndun can</w>\nâģ ł</w>\nbri en</w>\nmar sh</w>\nÐ ¾\nto tal\nch ry\ns ers</w>\nsu ffe\nra chel\ncolle ge\nto days</w>\ncour ts</w>\nch it\nre united</w>\ngym na\ngen esis</w>\nbe side</w>\nre presentation</w>\nch ant</w>\ncollec tor</w>\nra k\nath ens</w>\nni gh\nmun ich</w>\nlangu ages</w>\nfl u</w>\nparticip ation</w>\n__ _</w>\nc v\nspec trum</w>\nso da</w>\nco ver\nrefe ren\nab bo\nap a</w>\npublic ation</w>\ned m</w>\nmon ica</w>\nar my\nðŁļ Ģ</w>\ndiv or\ndr y\nstre ams</w>\nrobo tics</w>\nci der</w>\nbull ying</w>\nappro val</w>\nsto ke</w>\nplat forms</w>\nsier ra</w>\nex tin\ni b</w>\nha yes</w>\nsucce ed</w>\nsuff er</w>\nat ically</w>\nda i\nlyn ch</w>\nh ound</w>\ndel ines</w>\nack now\nd ated</w>\nexclu sively</w>\nhe res</w>\nfac ilit\ndam aged</w>\nchar ter</w>\nla kers</w>\nfal con</w>\nunve iled</w>\nwel ove\ne ase</w>\npati ence</w>\nl one</w>\ngent le</w>\ngene tic</w>\nproduc ing</w>\ng our\nshann on</w>\nbil ities</w>\nzimbab we</w>\np int</w>\ndau ghters</w>\nliter ary</w>\nbel le\ncl am\nsurroun ded</w>\nk any\nne il\npir ate</w>\nrang er</w>\nhb d</w>\nnat alie</w>\nbel ong</w>\nolym pi\nemb assy</w>\nsc ol\nen er</w>\nak in</w>\nlo ren\nb h</w>\n: /</w>\ndi va</w>\nden im</w>\nhi pp\nðŁĩµ ðŁĩ\narn old</w>\n? '</w>\nwe ren</w>\nem power\ndis abled</w>\nman or</w>\nrasp berry</w>\nb af\naw ful</w>\ndru mmer</w>\nkar dashi\nn ash</w>\nmachine learning</w>\nch u</w>\nrebel s</w>\ntim ing</w>\nmon roe</w>\nton gue</w>\nran ge\npup ils</w>\nre ss</w>\namaz on\nb z</w>\nhar ley</w>\npal mer</w>\nballo on</w>\ns ings</w>\nic ec\nj b</w>\nc ers</w>\ng ps</w>\nwhi st\nri se\nl t\noo oo</w>\nc attle</w>\nshoo ter</w>\nvod ka</w>\nuc l</w>\nmt g</w>\nle sli\njon as</w>\ndi spo\nat ric</w>\nste in\nvintag e\nfir ms</w>\nflo yd</w>\ncow boy</w>\nsoo oo</w>\nis aac</w>\nwar craft</w>\ndisney land</w>\nbeauti ful\nbe am</w>\nfranch ise</w>\nbu n</w>\nk ag\nan on</w>\ntur bo</w>\nswee p</w>\nmade in\nkar achi</w>\ndete ctive</w>\npenn sylvania</w>\ncontro versi\nvitam in</w>\na side</w>\nchron ic</w>\ndescri bes</w>\nremo val</w>\nha h</w>\nap er\nten ed</w>\nu to</w>\nbad ly</w>\nmir ac\nf ry</w>\nye a</w>\nin jec\nther mal</w>\ncomp act</w>\nth or</w>\nte ed</w>\nur gent</w>\nl ite</w>\ng illi\nsop hom\nic o\nche m</w>\np m\nfor k</w>\nfre ak</w>\nch ak\nrecipi ent</w>\ni y\nni k</w>\nmodel ing</w>\nc ans</w>\nðŁı Ģ\ndel ux\nse am\nsurviv ors</w>\nrad ical</w>\ninvestig ating</w>\nreli able</w>\nf m\ntur t\nligh thouse</w>\nto ol\ngo wn</w>\n) )\nbo ts</w>\nauto graph</w>\na id\nbu ffe\nh mm</w>\nhorri ble</w>\nssi onal</w>\nann i</w>\nà¹ Ģ\nk its</w>\nsch i\neter nal</w>\nhu ss\nsens itive</w>\nr u</w>\ntast es</w>\nchec ks</w>\nim o</w>\npor tion</w>\nsk ate\ne den</w>\nhalf time</w>\nfri ed\nri hanna</w>\nti se</w>\nfl ick\nca in</w>\ns gt</w>\nâľ Ķ</w>\nsh au\nsta ined</w>\nra ffle</w>\ndro ve</w>\nsal man\nprinci ples</w>\nsh o</w>\nar u\nje ss</w>\ngu ine\ngar bage</w>\nmy an\njel ly</w>\ndis ru\nz ia</w>\nq ld</w>\nent ries</w>\nla v\nfle w</w>\nad mit</w>\nobjec ts</w>\ncomp are</w>\nny times</w>\ncann es</w>\np n</w>\nsuff ol\nro c</w>\nd ana</w>\ne gg\nhi st</w>\ncoun sel\n' !</w>\nphy si\nimag ination</w>\nad just\nexplo sion</w>\nplym outh</w>\nhor ror\nelli ott</w>\nbour ne\nde x</w>\nbre ed</w>\nau dio\nlob ster</w>\ndisappo inted</w>\nnation wide</w>\n( (</w>\nincre ases</w>\naustr ali\nce dar</w>\nstar ing</w>\nrac ial</w>\ne is\ng mt</w>\nvisi ons</w>\nstay ed</w>\ndiscu ssions</w>\nde an\ncur tis</w>\nmai den</w>\nstel lar</w>\nhapp iest</w>\nh wy</w>\npre season</w>\ncar av\nmon days</w>\nhospit als</w>\nglimp se</w>\nschol ars</w>\nja i</w>\nter race</w>\nann a\ngoo se</w>\ngra ded</w>\nlot us</w>\nhun g</w>\ngrocer y</w>\nstam ps</w>\nemper or</w>\nsc oop</w>\nin ser\nc as</w>\nexist ence</w>\nhe al</w>\nfal cons</w>\nmar vel\nreduc ing</w>\nterri fic</w>\nmagne tic</w>\nperfor ms</w>\nbar re\np us</w>\ntre ating</w>\nic on\nw h</w>\ndecla red</w>\ntra uma</w>\ndo d\ncome dian</w>\nnik on</w>\nbu gs</w>\nas m</w>\nmont gom\nibi za</w>\ncomprehen sive</w>\nha s\nsan ti\nfellow ship</w>\nda sh\np sal\nlouis ville</w>\nsp y\nfau lt</w>\nd the\nfi led</w>\nvi sta</w>\nde sc\nfe ars</w>\nyou tu\nsp s</w>\nes p</w>\nri g</w>\ncri me\nber ger</w>\nwonder land</w>\nk ent\nin formed</w>\nstev ens</w>\nmy th</w>\nast on</w>\nir i</w>\nvisit or</w>\nat ri\nproduc ers</w>\nal la\nperson ally</w>\nsepar ate</w>\nagen cies</w>\naf ri\nil an\nspo ke\nn ina</w>\nsqu ad\ndi ves</w>\nde pend\nli v\nfier ce</w>\nenter taining</w>\ncha in\nsc at\nbor ders</w>\npal ette</w>\nsp ro\nos is</w>\nder by\ntobac co</w>\nzi o</w>\nwilli e</w>\nju vent\nzoo m</w>\nhol y\nenti rely</w>\naf e</w>\nmart inez</w>\nbe ds</w>\npe a</w>\nbull dogs</w>\nðŁĩª ðŁĩ\nib m</w>\nne on</w>\nethiop ia</w>\nteam mates</w>\nplan ting</w>\ntw er\nany time</w>\nfor bes</w>\nÃ³ n</w>\nrun way</w>\nner vous</w>\nro ger\np ile</w>\nch anc\napo caly\nu w\no i</w>\ndr ought</w>\nterrit ory</w>\nbr ick\ncre atures</w>\ngo in</w>\nw aff\ngre n\nsou theast</w>\nje an\nam bul\ned ited</w>\nstra p</w>\nc v</w>\naar on\nãĥ» ãĥ»\nt su\ndescri ption</w>\nkin dly</w>\nclu tch</w>\nim mer\nen or\nwomen sday</w>\nor ange\nra g\nob vious</w>\nhy der\nchann els</w>\nman go</w>\nme yer</w>\nra ining</w>\nge tty</w>\npil gri\ncoordin ator</w>\nup load</w>\nninten do\ndon uts</w>\nsan chez</w>\napp arel</w>\nj r\nzz i</w>\n, @</w>\njeff erson</w>\naccessi ble</w>\ngreat ly</w>\ne id</w>\niniti al</w>\nbudd ha</w>\npar is\nma scot</w>\nâ¬ĩ ï¸ı</w>\nsch war\nsi ri\nsp inning</w>\nmortg age</w>\ne cho</w>\nend ange\nge dly</w>\nchlo e</w>\nenh ance</w>\nkar nat\nk ry\nexplo res</w>\nðŁĴ ģ\naf fair</w>\nic als</w>\nall a</w>\ndar t\ndolph ins</w>\ndiffe rences</w>\nsquir rel</w>\nau gh</w>\ndr ones</w>\nell en\nre store</w>\npa w\nun for\npi ke</w>\nhil ton</w>\ncolla b</w>\nconsu mers</w>\nco inci\nout comes</w>\npp p</w>\na q\ncoup on</w>\nli est</w>\nsi ms</w>\nk ho\nav es</w>\nspo on</w>\npu dding</w>\ncor byn</w>\nhat ers</w>\nex ams</w>\nsla ve</w>\n. !</w>\np sa</w>\napp les</w>\ntam il</w>\nse d\nco ke</w>\nzz o</w>\nlo sange\ncar bon\ncla ir</w>\n... )</w>\nk hu\ncra ig\nexplor ation</w>\nsanctu ary</w>\nsu e\nal way\ndemen tia</w>\nwon ders</w>\nsuper hero</w>\npakistan i</w>\nbrown s</w>\nbluet ooth</w>\nlo cker</w>\nmar c\nev entu\ndelux e</w>\nrodri guez</w>\nâĿ¤ âĿ¤</w>\nro bb\nðŁĴ ¦</w>\nlin ux</w>\nten s</w>\nintellig ent</w>\nse ed\nvo ter</w>\ns ler</w>\npe aks</w>\ninter n</w>\nteen age</w>\npeninsu la</w>\nhand ling</w>\nti e\ncou sins</w>\nwen dy</w>\nme e</w>\nà¹Ģ à¸\ndin o</w>\nðŁĴ °</w>\nðŁĺ ĥ\nze e</w>\ns bury</w>\ntrage dy</w>\nb k</w>\nbo re\nz in\nwar ns</w>\nidi ot</w>\ntou ching</w>\ncontin ental</w>\ntac os</w>\nsaf ari</w>\nwa shed</w>\npo dium</w>\nmorri son</w>\nfore sts</w>\nc bc\nal on\npartic ular</w>\nbe ads</w>\ninv ented</w>\nlo ch</w>\nli ghter</w>\nwhere ver</w>\ni de</w>\ndocu ments</w>\na we</w>\nk r</w>\nno where</w>\nmin er\nst it\nro x\ncontribu te</w>\nhar dy</w>\ncl an</w>\nob ject</w>\nca it\nðŁĴķ ðŁĴķ</w>\nhapp ier</w>\nvege tables</w>\nt art</w>\ng ag\nnom inee</w>\nheav ily</w>\npan ic</w>\nj d</w>\nthere sa</w>\nat m</w>\nu ph\ns fc</w>\nsu ri\ndrin k\nn al\nre vel\nk l</w>\navoc ado</w>\nnom ination</w>\nma donna</w>\nshar on</w>\nmalcol m</w>\ncontrol led</w>\nsh ers</w>\nrevi val</w>\nlegis lation</w>\nshoo ts</w>\nn in</w>\ncomm entary</w>\npro s</w>\nhuman rights</w>\nstr anger</w>\nmit ch</w>\npipel ine</w>\nleg ally</w>\nth u</w>\ngil bert</w>\ntol l</w>\ngran ted</w>\ngh s</w>\nir anian</w>\nrefre shing</w>\ndu k</w>\nab i</w>\npri me\njose ph\nmo sa\nstati stics</w>\nproduc tions</w>\nmer ry\npat el</w>\nsa x\nhuman itarian</w>\nstruc tures</w>\ne missions</w>\ntown s</w>\nfre el\nster ing</w>\nrat ings</w>\nalle gedly</w>\ncab in</w>\nst l\nw ade</w>\nfl yers</w>\ntri m</w>\npromis ing</w>\nz u</w>\nbal lot</w>\ncompar ison</w>\nfree ze</w>\nou ter</w>\ngreat ness</w>\nas sign\nsnow y</w>\nr ale\ntor ies</w>\nmed iter\nkno ck\nconsult ant</w>\ncincin nati</w>\nanaly st</w>\nsc oo\nje ws</w>\nappro xim\npu re\nportra its</w>\ncy rus</w>\nation al\nlo ans</w>\nacqu is\nel u\naccep table</w>\nuni on\nwater color</w>\nru st</w>\nbatt les</w>\nper fu\nseas onal</w>\nser ial</w>\nmind set</w>\nri ot</w>\nfel d</w>\nenni al</w>\nclo set</w>\npri est</w>\ntan ks</w>\nint l</w>\nscre w</w>\nbu m</w>\nab dul\nou x</w>\nexpla ined</w>\nric a</w>\nimag ing</w>\nlaw yers</w>\nbu ried</w>\nãĥ»ãĥ» ãĥ»</w>\near l</w>\nâĢ ķ</w>\nl ton</w>\nresto red</w>\nstri pes</w>\nfo ss\nde mands</w>\nste aling</w>\nalex is</w>\nmun d</w>\nak er\nur us</w>\nwar dro\nhu gs</w>\ngen re</w>\ne go</w>\nÙ Ħ\nparticip ated</w>\nbab es</w>\nban quet</w>\nti ous</w>\nhe mi\nds b</w>\nlo st\nmilwau kee</w>\njen ner</w>\nge m\nou tra\nlo ses</w>\nid i</w>\nre ps</w>\nðŁİ §</w>\nregu lation</w>\nfla w\nf ang\nvibr ant</w>\nram p</w>\nra ins</w>\nwell being</w>\nso viet</w>\nvie wers</w>\nde po\nlibr aries</w>\nbi go\nser y</w>\ng ill\nde struction</w>\nco z</w>\nc x</w>\nbri dal</w>\nal ds</w>\nplan ted</w>\namate ur</w>\nlu d\nche ering</w>\nshow cas\npro file\ni u\nver tical</w>\npack ers</w>\nwiz ard</w>\nski p</w>\ns light</w>\nbe au</w>\nair ways</w>\nmu ch\nre ra</w>\nðŁĮ Ĭ</w>\nab sor\npati o</w>\npack ages</w>\ns ells</w>\nment ally</w>\nðŁĺ ¢\nreyn olds</w>\nk are\ntri bun\nwal t</w>\nkn it</w>\nta ste\nsur rey</w>\nboun ce</w>\ncre ature</w>\nb are</w>\nbet ting</w>\nsu re\nmi ley</w>\nlaugh s</w>\nal ore</w>\ncy n\nt l\narti st\nann ah</w>\nwar mer</w>\ndynam ics</w>\nlunch time</w>\nmariti me</w>\nvulner able</w>\nðŁĴ ĥ</w>\nwol ver\ndur ham</w>\nconst antly</w>\nam in\nsi bl\n: @</w>\nbul let\nk ach\nangel o</w>\nwil der\ndoo m</w>\ndesk top</w>\nlaw suit</w>\nk ca</w>\nhen derson</w>\ninv iting</w>\nbet ty</w>\nta wards</w>\nra fa\nle aked</w>\nand i</w>\nge ms</w>\naf l</w>\nvel o\nmediter ran\npro be</w>\nto tten\nsteph anie</w>\nsn ation</w>\ncom be</w>\nq s</w>\nover come</w>\nassas sin\nra v\nfil ip\nwinni peg</w>\nsh il\ndetermin ed</w>\nk as</w>\nou tre\nregre t</w>\ngui des</w>\naa a\nðŁĺ Ī\nwi ves</w>\nmani fe\ner ly</w>\nsm y\nsh ima</w>\nx ing</w>\npix el\njac ob\nac commod\nto y\non o</w>\npo o</w>\nti er\nan swe\nðŁĴ ģ</w>\nro sa</w>\nle ase</w>\nbel ongs</w>\nth ar\neventu ally</w>\nnei ther</w>\ngo a</w>\nski ing</w>\nat ra</w>\nag h</w>\nbroad casting</w>\nf ury</w>\npy ram\nd ice</w>\nvolk swag\nwom ens</w>\nprovi der</w>\nbom bs</w>\nmiss ile</w>\nwhi p</w>\nd ick\nnor we\nback up</w>\nel der</w>\nmat ure</w>\nconcer ts</w>\ngi ous</w>\nsque e\ngood morning</w>\nbra ves</w>\n^ _\nau ssie</w>\nlun a</w>\nmal es</w>\nhe ck</w>\nfor tn\nrome o</w>\nsteel ers</w>\np n\npe er</w>\nre presents</w>\nÂ «</w>\nkat y</w>\nmigu el</w>\nrequ ire</w>\ncha ins</w>\nl ur\nimmedi ate</w>\nti mber\nâĸ¶ ï¸ı</w>\nadvoc acy</w>\nex port</w>\nan z\ntiff any</w>\nauth or\nðŁİ Ī</w>\ndu des</w>\nchil ly</w>\nhi d</w>\nhar m</w>\nbu g\nmon ster\nterri er</w>\ntu c\nstory telling</w>\nta k</w>\nin ti\nimmigr ants</w>\nb is</w>\nreach es</w>\ncom passion</w>\njohn ny\ncontribu tions</w>\nðŁĲ ¶\nmechan ical</w>\nimpre ssion</w>\nran ks</w>\nko be</w>\nmen ting</w>\nbloss om</w>\npab lo</w>\nbuil der</w>\nbom bing</w>\ntw el\nsul livan</w>\nom o\npe te\nde mi</w>\nku dos</w>\nw bb</w>\nt gif</w>\nmass ach\nneighb or</w>\nche fs</w>\neng ines</w>\npun e</w>\nga ined</w>\nphan tom</w>\ns days</w>\next end</w>\ngr an</w>\ncent ers</w>\njac qu\ndat asci\nsleep y</w>\nel vis</w>\nanswe red</w>\ns lot</w>\ncon y</w>\nflexi ble</w>\nti ally</w>\nle tics</w>\n% ,</w>\nandre ws</w>\nsi ble</w>\nmom ma</w>\nvin o</w>\ndo x</w>\ninvit ational</w>\ntwil ight</w>\nj ade</w>\nill ery</w>\njoh ns</w>\nf ou\np v\n-- -></w>\nbreak down</w>\nbilli on\nprin ter</w>\nmon d\nc bc</w>\nmag gie</w>\nlegi on</w>\ndu b\nkur t</w>\npo or\nparen ting</w>\nregi ons</w>\nbikin i</w>\nbe ware</w>\nsi onal</w>\nau burn</w>\nkid ding</w>\namp les</w>\nsp an</w>\ncon tempor\nc ic\nha bits</w>\nak o</w>\npre fe\nbud dies</w>\nit z\nem ily\nperson nel</w>\nmoun tain\nver sus</w>\nðŁĺ ¬</w>\near ning</w>\ns ink</w>\ndar i</w>\nu u</w>\ns win\ni ster</w>\nbru tal</w>\nn ac\nkat a</w>\nclo th</w>\nam and\nðŁĶ Ĺ</w>\nne o\nalu min\nweek ends</w>\nnebra ska</w>\nco des</w>\ndelay ed</w>\nbrun o</w>\npro ven</w>\nin c\ni ght\nfl an\nor o</w>\nlam bert</w>\nregu lat\nw f\nmassach use\nkardashi an</w>\nbern ard</w>\nfi esta</w>\nvolcan o</w>\ngrand pa</w>\nanc a</w>\nd re</w>\nst itu\nmean ing\nfo am</w>\nau ck\nat ed\nr l</w>\nhot el\npers ons</w>\ndy nasty</w>\nell or</w>\nma i</w>\nam ne\nsty ling</w>\navi er</w>\ne g</w>\nvege tarian</w>\n, âĢ¦</w>\nfoun ders</w>\nsta in</w>\ng d</w>\ncy cles</w>\nsky line</w>\ntrac tor</w>\nexi sts</w>\ntra l</w>\nkid ney</w>\nmar il\ninst ag\nse tte</w>\naddic t</w>\ntri angle</w>\nflash back\ncontroversi al</w>\nz on</w>\np ins</w>\ni as</w>\ntr ay</w>\ntown ship</w>\ndeleg ates</w>\nsp am</w>\nh ms</w>\ncr ane</w>\npeop les</w>\no lo\nfac tion</w>\nbut es</w>\non ica</w>\ndeleg ation</w>\nnew profile\neli er</w>\nmc a</w>\nw and\ng ely</w>\nlosange les</w>\nber ke\nti ve\ndis rup\nzz a</w>\ncas a</w>\njor dan\nford shire</w>\nga thered</w>\nic hi</w>\natten dees</w>\nà¸Ń à¸\npe ppers</w>\nco in\nbour bon</w>\nern ity</w>\nro tary</w>\nbehavi our</w>\njere my\nteam work</w>\ncompli ance</w>\ntre mend\nðŁĩ §\nbu hari</w>\ncam bo\nbu yers</w>\nha gen</w>\nbu ds</w>\nbay ern</w>\nmon te</w>\nsm ells</w>\nan za</w>\nath lon</w>\ndescri bed</w>\nwork force</w>\ngi ving\nap i</w>\ninvest ments</w>\nda il\nsel ena</w>\ndatab ase</w>\nth um\nmor tal</w>\nstu dent\nbu yer</w>\ndo ver</w>\ngar ten</w>\natt le\nloy alty</w>\ngen oci\nholo cau\ntheat ers</w>\nru ling</w>\nven us</w>\npat ent</w>\nch un\nab by</w>\nawa ke</w>\nmass acre</w>\nbang alore</w>\nbreak ing\nsimm ons</w>\nju sti\nhal e</w>\ned chat</w>\ngg les</w>\nhaw k\nmar king</w>\nhead lines</w>\nstro m</w>\nco ve</w>\nbreath taking</w>\nmed als</w>\nhair cut</w>\nchrist ine</w>\ntele graph</w>\ngujar at</w>\nju ra\ncan e</w>\nsho re\npropag anda</w>\nmu eller</w>\n.... ....</w>\nsa vi\nstom ach</w>\nthro ws</w>\nta b</w>\nwar m\nj ong</w>\nreno wned</w>\nhi r</w>\nra is\nmush rooms</w>\nguaran teed</w>\nbo a</w>\nm j</w>\nrevolu tionary</w>\ncerti fication</w>\nbru ins</w>\njo in\nw es</w>\npas sport</w>\nc g</w>\nsex u\ncap able</w>\nw v</w>\nton es</w>\njac kets</w>\nac compan\nspin ach</w>\nfore ver\nbla ir</w>\nwat ts</w>\ng l</w>\ncou ples</w>\nprairi e</w>\nnewprofile pic</w>\nlogi stics</w>\nmassachuse tts</w>\njagu ar</w>\no id</w>\nwe al\nunder water</w>\nmo z\ny i</w>\nma ths</w>\nmyan mar</w>\npre ps</w>\nsuffe red</w>\ntr ace</w>\nwal i</w>\nah hh</w>\nbor g</w>\nst itch</w>\ncu lin\nreal ise</w>\ninfe ction</w>\ndiscrimin ation</w>\nsh ame\nan kle</w>\nhu mid\ny t</w>\nbrac ket</w>\ntru ck\ntri u\nea ster\ncommun ity\npost card</w>\ninvol ving</w>\nty ler\ncar amel</w>\nover view</w>\nex amples</w>\nintegr ity</w>\nbase ment</w>\ninstru ments</w>\nani um</w>\nat us</w>\ngh er</w>\nlaun dry</w>\nachi eve\ngen eva</w>\npr icing</w>\nhyder abad</w>\nbeli ef</w>\nme ta\nj aw\naccoun ting</w>\nlead er\ncristi ano</w>\ncou ture</w>\ncy p\nvis ed</w>\n, ,,</w>\nk nu\nh ick\nbreak er</w>\nbr am\nra b\nmo or\nham as</w>\ngradu ating</w>\npupp ies</w>\nak h\nta h\nach es</w>\nri e\nop ini\ng ta\nre ign</w>\ntra gic</w>\nre ver\np ill\npine apple</w>\ntou ches</w>\nda re\nle ys</w>\nil o</w>\ninter iors</w>\nsc outs</w>\nbar t\nen zie</w>\ndon o\nbro ck\nchristi ans</w>\nense mble</w>\nÂ ·</w>\ncine mas</w>\nnew port</w>\nair line</w>\nwin ston</w>\nle igh\ncont ents</w>\npre scri\nur ge</w>\ntr out</w>\nfic ally</w>\nil ia</w>\nsub si\nare r</w>\nâļ¾ ï¸ı</w>\nw ounded</w>\nðŁĻ Ĥ</w>\npe pper\nðŁĴ ŀ\nfit ted</w>\naf f</w>\nre sur\nthursday thoughts</w>\nz ero\narchae ology</w>\ndi v</w>\nje e</w>\ni on\nawa iting</w>\nco zy</w>\nbeauti es</w>\nbal d</w>\ndat a\ngri zz\nstal k</w>\nkin ds</w>\ncle ared</w>\njess ic\nregu lar\nali ens</w>\nplac e\nbo s\nbi zar\nthisi s\nðŁĴ Ģ\ntotten ham</w>\nma fia</w>\ns lam\nari ana</w>\ncar roll</w>\nback pack</w>\ncare y</w>\nuni v</w>\nr g</w>\npe p</w>\ndig it\ntatt oos</w>\nag on</w>\nvolunte ering</w>\ndiffe ren\nconsu mption</w>\nka thr\nhead phones</w>\nt shirt</w>\no b</w>\nele ment</w>\nre tail\nsh ru\nal gori\ncontain er</w>\nconsci ous</w>\nfi l</w>\ncom ing\nra sh\nu rope</w>\ndef ine</w>\ngi or\nfemini st</w>\nflow ing</w>\nrout es</w>\ngl aci\nfer t\nsomer set</w>\nant es</w>\ntwee ps</w>\n$ $</w>\nh our\nendange red</w>\nyear sof\nro h\npo pped</w>\nbac king</w>\nba sil</w>\nbra ke</w>\nmon aco</w>\nlgbt q</w>\npra gue</w>\nut ility</w>\ncas si\ngate way</w>\nhaun ted</w>\nsch ul\nðŁİ µ</w>\nshou ld\nwalking dead</w>\ncomple ting</w>\ndann y\nmontgom ery</w>\npengu in</w>\nss i</w>\nmer chandi\nðŁĳ ĳ\nchur ch\nh ates</w>\ncap tain\nbrea thing</w>\nce t</w>\nfair ly</w>\napproach es</w>\ncompan ion</w>\nsurpri sing</w>\nkany e</w>\npe y\nhin di</w>\ntarge ted</w>\nlor ds</w>\nde ut\ndi gging</w>\nger man\nru t\nener gy\nclose st</w>\ny un\napo logi\nà¸ ±</w>\ns ack</w>\nru p</w>\ndd y\nport al</w>\nd ough</w>\nb ats</w>\nðŁĵ °</w>\nat ur\ngraph er</w>\npi res</w>\nmo tors</w>\nðŁĮ ¹\nj c\ndan g</w>\ntu k</w>\nclu e</w>\nus c</w>\npag e\nd less</w>\nbro ws</w>\nju s</w>\nad ing</w>\nre marks</w>\noo m</w>\ncar dio\nste fan\narm strong</w>\nâĢ¢ âĢ¢\nni est</w>\nbelgi an</w>\nbi op\nso y</w>\nlo f\ní ĥ\nq t</w>\nflashback friday</w>\nce e</w>\nģ à¸\nwre ck</w>\nmar ines</w>\namend ment</w>\nwardro be</w>\nvo y</w>\nbur ned</w>\nguit ars</w>\nra inf\nli fel\nssi l</w>\noun ce</w>\nexter nal</w>\nc key\nme sh</w>\nshe ikh</w>\ninv itation</w>\nsugge sti\npop corn</w>\nphenomen al</w>\nan onymous</w>\ntun a</w>\nchic ago\no val</w>\ndel y</w>\nloc als</w>\n( &</w>\npro f\nno vel\nfin der</w>\nspar ks</w>\nla ven\nin fu\nnic ks</w>\nqu ant\nra e</w>\nexe c</w>\ndist ingui\nst ances</w>\nmu tual</w>\nsh al\nunve ils</w>\nedmon ton</w>\nzan ia</w>\na dio</w>\nvie wer</w>\nbrad ford</w>\naudit orium</w>\nqu is\nre act</w>\nhtt p</w>\nl ero\nchee ky</w>\nimpac ts</w>\nta k\ned t</w>\ndesper ate</w>\nt ay</w>\nì Ħ\nsett le</w>\nbar gain</w>\nresu me</w>\nun ite\nthro wn</w>\nke st</w>\nse ys</w>\nmar ching</w>\nam it\ndecl ine</w>\nsch ar\nme tr\nstan ford</w>\nlin ke\nber ra</w>\ndol ls</w>\nrug by\njam i\nb or</w>\nroad trip</w>\ndino saur</w>\nmi k\nsun der\nre m\nb k\nover seas</w>\nnau ghty</w>\nimple mentation</w>\niam srk</w>\nlun cheon</w>\nfir ing</w>\nmi ami\npere z</w>\nthe e</w>\nz on\ngi fted</w>\ncon version</w>\nceram ic</w>\n¡ ï¸ı\npe dro</w>\nì Ĩ\nv ick\n! @</w>\nhe ed</w>\nsi d</w>\nb w</w>\ndocu ment</w>\npl un\ngr ants</w>\nfant asy\npredic tions</w>\nvali d</w>\ncar ved</w>\ngradu ated</w>\nðŁĳį ðŁı»</w>\nnation ally</w>\nch y\naf l\nre sso</w>\nblan k</w>\nri vals</w>\nj ig\ne ties</w>\nom ics</w>\nune mp\nb ound\nsk o\ninspec tion</w>\npar al\nhigh s</w>\ncri sp</w>\nb ans</w>\nob a</w>\n[ @</w>\nco spla\ncostu mes</w>\nrec all</w>\nmou th\nni gel</w>\nb ts\nter a</w>\nko v</w>\ndo cs</w>\nwest minster</w>\ndic t</w>\ngra vity</w>\nkar i</w>\nro gue</w>\nt ted</w>\nwar k</w>\nida ho</w>\nw end\naw i</w>\nqueen sland</w>\nproce sses</w>\ncli ffe</w>\nm ick\ncom pens\nop ol\nthe y\ncl ari\nwiki pedia</w>\nsalman khan</w>\nhaz ard</w>\npre ston</w>\nswee test</w>\npd f</w>\nche es\ntr ilo\nsouth africa</w>\nbur nt</w>\n( $</w>\ncon tain</w>\nt p</w>\nsub mitted</w>\nsound cloud</w>\nat u\nre z</w>\nword press</w>\ncorru pt</w>\nn f\nma ker\ní ķ\npar as\nadv ent</w>\nri al</w>\nca fe\nfo ssil</w>\n!!!! !!!</w>\nco ws</w>\nc j</w>\nsp ur\ninstitu tions</w>\nland mark</w>\nent it\nre ut\nh is\nalz heim\nwe mb\nregg ae</w>\nmo squ\nst at</w>\nidenti fied</w>\ndeal er</w>\nre am</w>\nre land</w>\nten sion</w>\nðŁĩ ©\nwra pping</w>\ndeep er</w>\nfr at\nred dit</w>\nar is</w>\nmoroc co</w>\n.. \"</w>\nb low\nma pping</w>\npri orities</w>\ning a</w>\nswa p</w>\nre wards</w>\nconspir acy</w>\ncreati ve\nc j\ncongre ssional</w>\nvau lt</w>\nple x</w>\nsophom ore</w>\nshad ow\nele ss\nðŁĺ ħ\ndar ts</w>\naldu b</w>\nanno ying</w>\npro ps</w>\nn as</w>\nalumin um</w>\nh bo</w>\noffen se</w>\nj ill</w>\noni ons</w>\nla ur\nta e\nhar dest</w>\nsh ro\nga ining</w>\nmeas ure\ned tech</w>\ncyp rus</w>\ntar a</w>\nang eli\ncar lo</w>\ngo on</w>\nall i</w>\nim plic\nju pit\nresil ience</w>\nha il\nbal anced</w>\n) ...</w>\njoy ce</w>\ngr a</w>\nth eli\ndefin ed</w>\nshi pped</w>\nmain ly</w>\nmin a</w>\nl m</w>\nsac ri\no ber\np im\nclaim ing</w>\nent ers</w>\nco rey</w>\nbo k</w>\ncri ed</w>\ncool ing</w>\ndani elle</w>\npharmac y</w>\nthor ough\nca ke\nk lo\noutre ach</w>\nz ens</w>\ndigital marketing</w>\nval ent</w>\nsn p</w>\nher b</w>\nmr w</w>\ncaf Ã©</w>\ncap tures</w>\nno tre</w>\ntriu mph</w>\npan cakes</w>\ncu mber\nspi ke</w>\nd ation</w>\nbi gg\nsp er</w>\ncrit ical\nam al\ntoo th\nfoun ding</w>\na stro</w>\n' #</w>\nquan tum</w>\nth ames</w>\nun c</w>\npri de\nair bus</w>\nkno cked</w>\nun defeated</w>\nmediterran ean</w>\ncal cu\nclo wn</w>\nsens or</w>\nham mer\nfor give</w>\ncu shi\nber ry\nmaje stic</w>\nelec t</w>\npolit an</w>\ng ta</w>\nk ari\nbur ke</w>\nsea hawks</w>\nvolkswag en</w>\nre i\nlandsc apes</w>\ncas u\ngrand father</w>\nlist ened</w>\n/ /\nstar trek</w>\nrainf all</w>\nfur ry</w>\nvi er\nstar k</w>\nrif le</w>\nff a</w>\nleg es</w>\nhillary clinton</w>\nmin us</w>\ncorrec tly</w>\narchitec tural</w>\npre ce\nup side</w>\nbox er</w>\nðŁĻĮ ðŁı¼</w>\nis ai\nde t</w>\npro vo\ntis sue</w>\nspoo ky</w>\nve led</w>\nre con\nprospec ts</w>\nque bec</w>\nâļ «\nig no\nanat omy</w>\nshap es</w>\nw p\np interest</w>\nhor e</w>\nan es</w>\npick up</w>\nti p\npra desh</w>\nhu gh</w>\nco e</w>\npo k\ngram my</w>\nwell ington</w>\nsti gate</w>\nri gh\nlea p</w>\nking ston</w>\nscen ic</w>\ngo sh</w>\nv ani\nau g\ns ary</w>\nzi er</w>\nbure au</w>\nlin son</w>\ncon te\nfra gr\nall an</w>\ng aw\nlan a</w>\ncolli sion</w>\nsurve ill\nren ais\nar range\ns ali\ndo in</w>\nbr ance</w>\nbren dan</w>\nour se</w>\nin coming</w>\nsuspen sion</w>\nà ´\nl la</w>\neduc ators</w>\nin tri\nda e</w>\nbio graphy</w>\nbul gar\nvilla in</w>\ngo thic</w>\nrw anda</w>\ne w</w>\nmay or\nmeet up</w>\ndemocr at</w>\nmor gan\nsu dden</w>\nte sco</w>\ncar rot</w>\nbom ber</w>\nmck in\nre ne\nfun day</w>\nagricul tural</w>\nhaha h</w>\nshow time</w>\nform ing</w>\ncol a</w>\nscor pi\nquo te\npo ppy</w>\ns life</w>\nd az\ntu b</w>\nne n</w>\nmo t</w>\nðŁĺ »\ns ore</w>\nelder ly</w>\no ve</w>\nskin ny</w>\num i</w>\nanc o</w>\nman ship</w>\nwe re\ng v\nk ah</w>\nfol ding</w>\nne at</w>\nsamanth a</w>\ndan ish</w>\nuk rain\nhumid ity</w>\nnu tri\njak arta</w>\ncand les</w>\noooo oooo\nat ile</w>\nstreng th\ni bra\nbap ti\ncharle ston</w>\nfr ames</w>\ngirl s\nclear ing</w>\nglu ten\n# #</w>\nsuper natural</w>\nju bi\nph one\nhe in\ndr un\nle ak</w>\ninvest or</w>\ny er\ndom ain</w>\nball room</w>\nmi sh\napp li\noff shore</w>\nbla ze</w>\ndor o\nâĺķ ï¸ı</w>\nwin ery</w>\nshar if</w>\nad ore</w>\nn ir\nsaf er</w>\nsi gh</w>\nas cri\nstrong ly</w>\ntrac y</w>\nck er\nol l</w>\nfaith ful</w>\ney ed</w>\ndeli ghtful</w>\nvis m</w>\nkarnat aka</w>\ntit an</w>\nwh ar\njer seys</w>\nre fur\nheav en\ngri p</w>\npan ama</w>\npre li\nglu ten</w>\no dd\ncont ent\npon ti\ntion ing</w>\ne commerce</w>\nfeder ation</w>\nflaw less</w>\nge ar\nti res</w>\nby r\npol ice\ncu ban</w>\ntri butes</w>\ntic ul\nchur ches</w>\nnur sery</w>\ndi aries</w>\nmuse ums</w>\nsnapp ed</w>\ni van\nwi ght</w>\ntouri sts</w>\nramad an</w>\nt rent</w>\nprophe t</w>\nwon dered</w>\nfocu sing</w>\nhi d\nic ons</w>\ni q\nambul ance</w>\npi st\nfun niest</w>\ntime less</w>\nsr ilan\nbu ys</w>\nki ds\ncolour ful</w>\na shi\nch ir\nmu m\nðŁĵ ļ</w>\nlet ter\nx en\nreut ers</w>\npre serve</w>\nin ting</w>\nste p\nfu ji\nuni ver\ni u</w>\nshow down</w>\npo ems</w>\nsurveill ance</w>\nsuspec ted</w>\nta e</w>\nsol ving</w>\ntom b</w>\nmother sday</w>\ncar pen\nrecru it</w>\npil ots</w>\nbro c\nmix ing</w>\nfri days</w>\nty r\nrepresent atives</w>\ntra pped</w>\nabdu l</w>\nfree style</w>\nclu ster</w>\nâļ łï¸ı</w>\nk d</w>\nsk ill\npit t</w>\nex o\ncommer ci\nmuse um\nloc ally</w>\ng ina</w>\nno bel</w>\nimmun e</w>\nfr ac\ncap su\nmain ed\nattemp ts</w>\nbull dog</w>\nbe spoke</w>\nsing ers</w>\nsp elling</w>\nseg ment</w>\nnat ures</w>\ntic k</w>\nlip stick</w>\nclean er</w>\ngett able</w>\npreci sion</w>\nâĢ¼ ï¸ı\nth ood</w>\nre ef</w>\nno pe</w>\nbill y\ndi gi\nmu si\nri val</w>\nfigu red</w>\ntal ity</w>\nsun ny\nber k\naw ww</w>\nawa its</w>\nun real</w>\nco pen\nasy lum</w>\nex otic</w>\nbu en\nmo ck\nen able</w>\narch y</w>\nfr a</w>\npla stic\nal mond</w>\namp li\ndispla ys</w>\nabbo tt</w>\ns me</w>\nx p</w>\nðŁĻ ĥ</w>\ngraph ic\ni ved</w>\nmar a</w>\ncau tion</w>\nlea ks</w>\nen berg</w>\nul u</w>\nunic orn</w>\ncann on</w>\nappren tic\nðŁĺĺ ðŁĺĺ\nb ball</w>\nwil low</w>\nat ics</w>\nam as</w>\nmanufac turer</w>\ncampaig ns</w>\nport ers</w>\nflo ors</w>\nl su</w>\nty pe\nke j\nhonor ary</w>\nit im\nto le\nmin ecraft</w>\nd x</w>\nma sh</w>\nri o\nconsequ ences</w>\nron ald</w>\ngo ssi\nsuffol k</w>\nmu se</w>\nr bi</w>\nlive music</w>\ni van</w>\nðŁİ ¤</w>\nle u\npatri ot</w>\nman it\nlan ca\nhome decor</w>\nde ar\nsig ma</w>\nti de\nstr ings</w>\nv ita</w>\nsequ el</w>\ntry na</w>\ninve stigate</w>\nbor is</w>\nve gan\nbarri er</w>\nmind fulness</w>\nweb b</w>\nhu stle</w>\nin da</w>\ntan zania</w>\nstr ay</w>\ntex as\nc ag\ndiagno sis</w>\nwom an\ng w</w>\nob session</w>\nl ative</w>\nnu fc</w>\nfl ynn</w>\nmoment um</w>\nsof a</w>\nwal d</w>\nvege table</w>\ntu cker</w>\nsupp er</w>\nse ab\nar ro\nse ag\nven ting</w>\ncounc ill\nsp lat\ncal cul\n.. #</w>\ncom fy</w>\nodi sha</w>\nsto pp\nwar fare</w>\nca es\nà ¨\nco y</w>\nprice less</w>\nin sec\nðŁĺ Ľ</w>\ncontro ls</w>\nempower ment</w>\ndatasci ence</w>\nper pe\ngen ic</w>\ne res</w>\ntru deau</w>\nman o\nsla very</w>\nexpand ing</w>\nma he\nfa iling</w>\ns aga</w>\nphotograph s</w>\ncre st</w>\nre on</w>\nsurf ing</w>\nhi e</w>\nðŁį Ģ</w>\nja e</w>\nfel lows</w>\nsouth ampton</w>\nsol om\nce ster\ntab ility</w>\nhor n\nse ct</w>\nhe e</w>\ncole man</w>\nat las</w>\nexplo rer</w>\nconsul tation</w>\ncopy right</w>\norgani zing</w>\nden ied</w>\nmon keys</w>\nnoo dles</w>\nbr is</w>\nfl or\ndou gh\nbon ds</w>\nsho cked</w>\neco system</w>\ncare fully</w>\nw m</w>\napart ments</w>\ncur ve</w>\nsan diego</w>\nmust ard</w>\ncomm en\ncere mon\ne ch\nru th\nðŁĻĮ ðŁı»</w>\nhawa i\nfil med</w>\nte ar\nas ingly</w>\nca ir\nwat t</w>\ninstru ment</w>\nou tta</w>\nye ol</w>\nriver side</w>\në °\n. :</w>\nnor wich</w>\nalo g</w>\nmigr ants</w>\nnew man</w>\nri de\nspr ink\ntarge ting</w>\nbeli eve\ntor ch</w>\nreflec ts</w>\nper mission</w>\nff man</w>\nene mies</w>\nbas ics</w>\nse ized</w>\nsun days</w>\nle i\nhass an</w>\nen do</w>\nh c\nst ad\nle ments</w>\nkk kk\nnan o\nshar k\nman a</w>\non ic\ntreat ments</w>\near ly\ncollabor ative</w>\nshu ttle</w>\nbran ches</w>\nmis ses</w>\nmained cm</w>\nap ers</w>\nky le\ncarri e</w>\nleis ure</w>\nsh et\nbir ding</w>\nadv ances</w>\nðŁĵ Ŀ</w>\npopu lar\ndi ane</w>\na be\nre war\nneigh bour\nk pop</w>\nremem brance</w>\nplay ground</w>\nru b\nkrish na</w>\ne bola</w>\ninqu iry</w>\nep a</w>\nlu min\norgan isation</w>\nabra ham</w>\nnorm ally</w>\npre ten\njan et</w>\nw t\nðŁĴ İ</w>\nencoura ging</w>\na stic</w>\nbu mp</w>\nsyd ney\ns z</w>\nss ss</w>\ngar rett</w>\nðŁĵ »</w>\nconsul ting</w>\nroman ia</w>\nspo tting</w>\nchanc ellor</w>\nar ma\npresti gious</w>\nðĿ Ĳ\nt ad\ncry st\ncompe tit\nrati o</w>\ncat aly\nbro w</w>\nj ur\nvi king</w>\ncommu te</w>\ny day</w>\nla yers</w>\ndu mb\nesc al\ngenoci de</w>\nf ill\ngu pta</w>\nste pping</w>\nse i</w>\nfo to\nwild cats</w>\ncol i</w>\nprojec t\near nings</w>\nst r</w>\nge ons</w>\ncomple tion</w>\nb m</w>\ndecor ated</w>\ncraw ford</w>\naf ghan</w>\nsc are</w>\nvisi bility</w>\nhi b\ndirec tion\nstro ll</w>\nchrist ina</w>\nalter nate</w>\ncl are</w>\nsty list</w>\nbe hold</w>\ns ance</w>\nleop ard</w>\nacqui red</w>\nnarr ative</w>\nash i</w>\nthe a\n?? ??\npe as</w>\nat ch</w>\nsli des</w>\nle en</w>\nrenew able</w>\neng lish\nqu ir\nco aster</w>\nr x</w>\nfo ols</w>\nmatch day</w>\nmis m</w>\namaz ing\nz ig\nke ting</w>\nwon t</w>\nto wel</w>\ndi ab\nsta ke\nn m\nmel t</w>\ne than</w>\ngra pe</w>\npolit ician</w>\nsm en</w>\ní ĺ\nre o\nwedd ings</w>\ncat cher</w>\nor acle</w>\nme mo\nðŁĮ ´</w>\nec k</w>\nrob bie</w>\nnorwe gian</w>\noper ator</w>\nam or</w>\nse wing</w>\nju l</w>\nx ie</w>\nu v</w>\nfif ty</w>\nme ga\ntatt oo\nliber als</w>\nu pri\ntraffic king</w>\nrichard son</w>\nsu v</w>\nki p</w>\nmess y</w>\ntremend ous</w>\ngl ou\ncour tney</w>\nla d\nstere o\nmy ers</w>\ni dio\n^_ ^</w>\nman ning</w>\ndy e</w>\nw d\nthr one</w>\njun k</w>\nas u</w>\nprovin cial</w>\nk ook</w>\nwr c</w>\nfine art</w>\nhamp shire</w>\nrenais sance</w>\nb red</w>\nfall out</w>\ns j</w>\nsn l</w>\nal am</w>\ntor ture</w>\nfy i</w>\nsh ines</w>\npa w</w>\nch ar</w>\nhen ry\nc row</w>\naci ous</w>\ndi an\npa ige</w>\nba re\nstock holm</w>\nscen ery</w>\nðŁĩ ·\njef frey</w>\npu sh\ndecor ation</w>\nne d\ncu te\nbrig ade</w>\nlaven der</w>\ninv ites</w>\ne sports</w>\nvo ir</w>\ndri ed</w>\ntran spl\nsur geon</w>\nno vels</w>\npul ls</w>\nson y\nlun ar</w>\nman e</w>\ni vy</w>\nfru str\ndor set</w>\nsa i\ntor res</w>\nssi on\nshut down</w>\nsuggesti ons</w>\nwrit ing\ne o\nbattle field</w>\nu ga</w>\nðŁĲ ¾\nvac u\nspl ac\ng it\nu g</w>\nhigh land</w>\n% )</w>\nmer maid</w>\nsacram ento</w>\nta ils</w>\np w</w>\nka h\nt ell\nenh anced</w>\nì ķ\nauck land</w>\ncru el\nðŁ¤ ©</w>\nau dre\nsail or</w>\ngram mar</w>\ng love</w>\nde on</w>\ninfl am\nfresh ly</w>\nk ell\nzi p</w>\nchristi e</w>\nmil d</w>\ndi xon</w>\ninstru ctor</w>\ng ence</w>\nãħ ł\nsub jec\nconstitu tional</w>\ncrow ds</w>\nin visible</w>\nru ins</w>\nda k</w>\nsi p</w>\npla que</w>\np ouring</w>\ncomple x\nz ine</w>\nste ad\nf let\ntrans mission</w>\nlo way</w>\nar un\nincre asingly</w>\nau d\ntransp aren\ncro wned</w>\nsc oun\nblizz ard</w>\nlux u\nfi ers</w>\nachieve ments</w>\nhun ters</w>\nrock ed</w>\nbas in</w>\nvio let</w>\npro ves</w>\nachiev ing</w>\npro sper\nse ga</w>\nflo at</w>\nvi an</w>\nxi v</w>\npol ic\ntur a</w>\napproxim ately</w>\nwander lust</w>\nkeep ers</w>\ngeta way</w>\nco d\npol is</w>\nbr yan\ncol ts</w>\ntal ents</w>\nyo gur\ngluten free</w>\nwri st</w>\ngr y\ncze ch</w>\nðŁİ Ī\nev ille</w>\nðŁı Ī\nto x</w>\ndani els</w>\nam er</w>\nbi ds</w>\nweare one\nme tab\ng t\nboy z</w>\npd x</w>\npos session</w>\npu shed</w>\nshr ine</w>\nreali stic</w>\ntri gger</w>\nna vi\nru mors</w>\nn af\njen kins</w>\ntr un\ncomm uni\nÃ Ĺ</w>\ngam ers</w>\narm or</w>\nmoham med</w>\nbal cony</w>\ny ah\nstron gest</w>\nrhy thm</w>\nunfor gettable</w>\nk p\nho bb\ncusto dy</w>\ngreg or</w>\nr ita</w>\naes thetic</w>\nil ation</w>\nsponsor ing</w>\nn ay</w>\nkid napp\nsh s</w>\nra jas\nme g</w>\nsignific antly</w>\nbutt ons</w>\nla c</w>\nver sions</w>\nessenti als</w>\nopini ons</w>\nk ro\nd printing</w>\nwi dely</w>\nd k</w>\nur an</w>\ny al\nreque sted</w>\nc n</w>\ncur ric\nplu m</w>\ngr un\nv m\ndev on\nm yo\nrel ation</w>\njuvent us</w>\nrou ge</w>\nmin ority</w>\nmin es</w>\njupit er</w>\nn ine\noxy gen</w>\nfran kie</w>\nune sco</w>\nfab ric\ndisgu sting</w>\nsal man</w>\ndete ction</w>\nlan ka</w>\nd ac\nðŁĩ« ðŁĩ·</w>\nargu ment</w>\nshel ves</w>\ncel tics</w>\nrober to</w>\npi gs</w>\nhe dge\nfau l\npow ering</w>\nbutter flies</w>\nfi r</w>\nre make</w>\natt i</w>\ncom o</w>\nemp ha\nkend all</w>\npoke mon\nse ating</w>\nd ans</w>\nbald win</w>\nðŁĳ »</w>\nlesli e</w>\none direction</w>\nti mber</w>\nim an</w>\nfon t</w>\ne der</w>\ndi on</w>\nste ph</w>\nfor mat\ngre gory</w>\npro p</w>\nhe x\nru in</w>\nsor y</w>\ninf er\nn aw\nbar ak</w>\nsd gs</w>\nkar ao\nlu sh</w>\nv ander\nend ent</w>\ng is\na fro\nsoc cer\nay an</w>\nt uni\nlun g</w>\nda yof\nalex a</w>\nmar ath\naddic ted</w>\nag ile</w>\nhy gi\nlight weight</w>\nì §\nmand ela</w>\njo ey\nanc y\nhu m</w>\nbi r</w>\nmemor ial\njim in</w>\nging er\nv ak\njav ascri\ncro ps</w>\norig ins</w>\nd ari\npi per</w>\nim port</w>\naggre ssive</w>\npredic tion</w>\nre pairs</w>\ncr acker</w>\nvoy age</w>\nni ke\nmu mmy</w>\nlinke din</w>\ncountry side</w>\nbor der\ngla ss\nper t</w>\ns als</w>\nsho e\nautograph ed</w>\nwal nut</w>\ncolle gi\nsal ary</w>\npa iring</w>\nðŁĮ ¸\ncath ol\nswee the\ndefe ats</w>\nstreng then</w>\nroof top</w>\nimpro vements</w>\nbarri ers</w>\nur u\nt ally</w>\nru led</w>\nðŁĨ ļ</w>\nnai ja</w>\nemo ji</w>\nper cent\ngi o\npro bs</w>\non ce\nadm its</w>\npa ths</w>\nli ar</w>\nday tona</w>\npe ters</w>\ncal i</w>\ncal li\nmu g\no sa\nap h\nab y\nhy de</w>\neth nic</w>\npla ins</w>\nol f</w>\nhaha hahaha</w>\nholi c</w>\n?! ?!</w>\nsu bli\nbl acks</w>\nmo t\ngh ton</w>\nlo vin</w>\nb rent</w>\nbar u</w>\nl ati\nde w</w>\nate au</w>\nq a</w>\npain ful</w>\nbu sters</w>\nst atic</w>\nðŁĩ¨ðŁĩ ¦</w>\nnote book</w>\nout fits</w>\nsi es</w>\nr f</w>\nfloo ds</w>\nÑ Ģ\nthro at</w>\nsu ici\nro vers</w>\nbeng al</w>\npre pares</w>\nblo g\nmini ature</w>\nØ ¨\nam phi\ncom b</w>\nr sp\nin timate</w>\ngreen e</w>\nÌ ĩ</w>\nal tar</w>\nsurg ical</w>\nves sel</w>\n... ?</w>\ngav in</w>\ng ator</w>\nthreat ened</w>\nz ar</w>\nrob bery</w>\ndi er</w>\npromo ted</w>\ny g</w>\nx s</w>\nsu bs</w>\ninter viewing</w>\nthreat ening</w>\ndo zen</w>\nme ado\nwater fall</w>\nnintendo switch</w>\ncal um</w>\nmini sters</w>\ndro p\nunivers ities</w>\nwar ned</w>\ntac tics</w>\nðŁĩ ²\nrefu se</w>\nad ju\nv ast</w>\nðŁĺ ´</w>\nmc fc</w>\nlib ya</w>\nno filter</w>\ndistribu ted</w>\nre ser\nron nie</w>\nde co</w>\njavascri pt</w>\nmon k</w>\nintere sts</w>\nfle x\nmar tha</w>\nsti es</w>\noo d\nðŁ¤£ ðŁ¤£\ne un\nb ali\ng omez</w>\nsti mul\nmoder ate</w>\nd ity</w>\nir is</w>\nstra w</w>\nconsist ent</w>\ndirec tions</w>\nadop t\nsal sa</w>\ncro o\nreco vered</w>\nblack friday</w>\nlan caster</w>\naccep t\nweareone exo</w>\nbuil ds</w>\nfree man</w>\nair plane</w>\nditi on\nbel ong\njam ie\npit ching</w>\nli f\nom in\ncri spy</w>\npre pping</w>\nve g</w>\nchan g</w>\naccompli shed</w>\ngraci as</w>\ndolph in</w>\nelec tor\nculin ary</w>\nsuper bowl</w>\nwal a</w>\npur suit</w>\nblack berry</w>\nbe an\ncardin al</w>\npro ved</w>\nimmigr ant</w>\nstric tly</w>\nholocau st</w>\npass age</w>\nha us</w>\ncou p</w>\npur se</w>\nhar ass\n< <</w>\nle ed\nado be</w>\nst ad</w>\nlegis lat\npar ked</w>\npri yan\nsil va</w>\nkri st\ns the\nfun ky</w>\nig a</w>\nsett lement</w>\nph s</w>\nt mrw</w>\nstre ssed</w>\nhun t\nho ckey\ntreas ures</w>\ncham bers</w>\nol u\nhu t</w>\nmar ley</w>\ntex ture</w>\nwilder ness</w>\nmm ing</w>\npoten tially</w>\nom aha</w>\nju dy</w>\nto es</w>\nspo iler</w>\ndistingui shed</w>\nfeli x</w>\nah u</w>\nrecommend ations</w>\nzom bies</w>\nhit ler</w>\ntri ple\ncolla pse</w>\nmotiv ated</w>\nulti mat\ngg ling</w>\nso y\nci gar</w>\nfo ren\nvine yard</w>\ngl itter</w>\nfin dings</w>\ncolon ial</w>\nhun ter\neri k</w>\nden s</w>\nbeet le</w>\nlot te\nsub tle</w>\ns matter</w>\ntru sted</w>\nexperim ental</w>\nnam ents</w>\nðŁĺ Ĩ\nregi on\nacquis ition</w>\nbre eding</w>\nquarter back</w>\nam reading</w>\noo td</w>\nru de</w>\niniti atives</w>\nst out</w>\nhy ung</w>\nout come</w>\nal fred</w>\nmic s</w>\nexper tise</w>\nbacter ia</w>\npengu ins</w>\njump er</w>\nvalen cia</w>\nbar k</w>\ning day</w>\nsell ers</w>\ncontrac ts</w>\nhou ston\ncommissi oned</w>\nadap tation</w>\nswan sea</w>\nsanti ago</w>\ncommon wealth</w>\nju dging</w>\nsub mission</w>\nsco rer</w>\ntom my\nÃ± o</w>\nex quis\nfil ing</w>\nexplan ation</w>\nalli son</w>\nwemb ley</w>\nri dge\nchev y</w>\nsan tos</w>\nown ership</w>\ncogn itive</w>\nfavour ites</w>\nsh ed\nphil anthro\ndele ted</w>\ngo dd\ns nor\ngui delines</w>\nff ing</w>\nje ep\ncli ps</w>\nsw amp</w>\nan or</w>\nguil d</w>\nbol ton</w>\nspring field</w>\nmunici pal</w>\ngoal keeper</w>\nye on</w>\nðŁĺįðŁĺį ðŁĺįðŁĺį\nãħĭ ãħĭ\nwater front</w>\ngra ve\ncontempor ary\nar ity</w>\nÃŃ a</w>\nsle eps</w>\nsy rup</w>\nal am\npi re\nco yo\nmoto gp</w>\nty son</w>\nkej ri\ncir cul\nsing ly</w>\ncr unch</w>\ncomplic ated</w>\nnostal gia</w>\nk op\nmo ve\nk ale</w>\nmac ro</w>\nmid west</w>\nh ans</w>\ntri bal</w>\nnu de</w>\nà¯ į</w>\nbey once</w>\ncongratul ate</w>\ncat er\nleagu e\nðŁĻ Ĭ</w>\nla dder</w>\ncra shed</w>\ntech nic\nkarao ke</w>\nharass ment</w>\nro ts</w>\nexperi encing</w>\nkri sten</w>\nðŁĩ ³\nðŁ¤ Ĺ\nreflec tions</w>\nguin ness</w>\nillustr ator</w>\nðŁĻı ðŁı»</w>\ncen ter\nnar row</w>\ncomm ons</w>\nregul ations</w>\nÙ Ĩ\nhar m\ncro ft</w>\ncu ssion</w>\nhong kong</w>\nst ical</w>\nintern ship</w>\nzo e</w>\ncho p</w>\nhoo ds</w>\nestim ated</w>\nbatter ies</w>\nberke ley</w>\nsmooth ie</w>\nshau n</w>\ncro s\n~ ~</w>\ncam pe\nhu mp\nb g\nproto type</w>\ncl ick\nshaw n\nre viewed</w>\ntem pl\np f\njed i</w>\nblo gs</w>\nray mond</w>\nas th\nba h</w>\nav ail</w>\nscot ch</w>\nleaf s</w>\nnik ki</w>\nto k\nhol low</w>\nur ges</w>\nof t</w>\nun like</w>\nlat in\nu e\ncat ering</w>\nmil i\nalter nati\nma ver\nÐ ¸\nag le</w>\npre order</w>\nlu x</w>\ncu cu\nðŁĳı ðŁĳı</w>\nt art\nâĿ¤âĿ¤ âĿ¤</w>\narab ic</w>\nrapi dly</w>\nar rang\nall en\ntravel tuesday</w>\npa ws</w>\nflo ws</w>\nst ability</w>\nflu id</w>\nca pp\ncan berra</w>\nuu uu\nsp ani\ndemon stration</w>\nm la</w>\nplac ement</w>\nm w\npresi dents</w>\nawe som\nbever ly</w>\nani st</w>\nne al</w>\nfather sday</w>\nreferen dum</w>\nla hore</w>\no aks</w>\ndeb bie</w>\nhalf way</w>\ngho sts</w>\nde bor\nmatthe ws</w>\nfi at</w>\nt fw</w>\npre sen\nrob i</w>\nde d\nbro ck</w>\nlaugh ed</w>\nam ounts</w>\nbam boo</w>\nkinder garten</w>\neat en</w>\nmtv hottest</w>\nbreak out</w>\nu sic</w>\nfra ser</w>\nlegis lative</w>\np ang\nmodu le</w>\nsam my</w>\ngo ver</w>\near ns</w>\nexpe dition</w>\ngar h</w>\nconcep ts</w>\nchar lie\nla va</w>\nbachel or</w>\nveg gies</w>\ndeter mine</w>\nel lie</w>\nun locked</w>\nfru it\ndal la\ncou pe</w>\nwash ington\ndepo sit</w>\niv ory</w>\npau la</w>\nchic ag\ngu cci</w>\nðŁİ ĥ</w>\ncul tiv\npier ce</w>\nli fted</w>\nstu mb\nre cover</w>\nmusc les</w>\nconduc ting</w>\ncb s\nmcla ren</w>\nsophi a</w>\ncel lu\noce ans</w>\nup loaded</w>\ngame play</w>\nmal dives</w>\nkim ber\navo i\nrac er</w>\nca ine</w>\ncav s</w>\nh ana</w>\nli ga</w>\nra ven</w>\ninter vention</w>\ninaugur ation</w>\noo h</w>\nat traction</w>\nmerchandi se</w>\ntune in</w>\nli king</w>\njuni ors</w>\nint ended</w>\natt acking</w>\naqu arium</w>\ni wd</w>\ncomp onents</w>\nsur ing</w>\ncent u\nyogur t</w>\nðŁı ĥ\nshow room</w>\nop tical</w>\nty our\nju dge\nyi eld</w>\nan to\npl c</w>\ntransparen cy</w>\nrecy cled</w>\nchi ef\nar om\nambassad ors</w>\nplan et\nâĿĦ ï¸ı\nom ed</w>\nvaness a</w>\ncour t\nmar gar\nhal ey</w>\nv r\nreg ina</w>\npd ates</w>\nhi span\nlive stream</w>\nâģ £</w>\nya hoo</w>\ngal la\nsecu red</w>\nw ir\nbene ath</w>\noff l</w>\nn il\nam b</w>\nye g\nout let</w>\nu te\npe ep</w>\nlind say</w>\nbent ley</w>\n... !</w>\nhe el</w>\ntrilo gy</w>\nvo s</w>\nty re</w>\nthere fore</w>\ntor onto\nab i\nsimp li\nja e\nexten sive</w>\neleph ants</w>\ns or</w>\norient ation</w>\nim peach\nre play</w>\nconstru cted</w>\npeter son</w>\npa is\npor ted</w>\ncustom s</w>\ncolla p\nad u\nhigh lands</w>\nsal em</w>\nshel by</w>\nko vic</w>\nstra in</w>\nro sie</w>\nsen ators</w>\nsnap s</w>\nbo bb\nsuz uki</w>\nbla des</w>\nk p</w>\nlo lo\ngener ate</w>\nsi ght\nma e\nstruc tural</w>\npredic t</w>\njump ed</w>\nah mad</w>\nsun g\njust ice\ngla m</w>\nvol vo</w>\njubi lee</w>\nde tention</w>\nlo sses</w>\npu ri\nevery time</w>\nÐ °\nra o</w>\ned ge\nli mer\nrese mb\nhar old</w>\nre tri\nsacri fic\nsurpri ses</w>\nam c</w>\nsrilan ka</w>\nbar bie</w>\nmen s\nfin n</w>\nag s</w>\nukrain ian</w>\nem brac\nî Ĳ\nflav ors</w>\nhom er</w>\nlau re\nou th\npr iced</w>\nver de</w>\nfir m\nah s</w>\ncu b\ntre y</w>\npar anor\npro fit\nin dv\nwho a</w>\nhar sh</w>\nal ot</w>\ncrit ics</w>\nhu bby</w>\nfi gur\ngi ra\nca stro</w>\nchan el</w>\nin put</w>\norigin als</w>\nten ant</w>\nyy yy</w>\nture rs</w>\nlincol n\nco on</w>\nlear n\nch ou\nac are</w>\no les</w>\ndin er</w>\nhy p\nbizar re</w>\nmc r</w>\nlet sgo\ndecor ating</w>\nðŁĮ İ</w>\nal ison</w>\nar vin\nf d\nreha b</w>\nmccar thy</w>\nlot tery</w>\nda h\nminne apolis</w>\neli gible</w>\ndiagno sed</w>\nemer ald</w>\ndestin ations</w>\ns ans</w>\nor y\nbla zers</w>\nn v</w>\nba il</w>\ndigital art</w>\nno c\nmal ta</w>\nsol ar\npi pes</w>\nalleg ations</w>\nno ck</w>\npo pe\nbri d\npremi er\nn x</w>\npresent ations</w>\nef a</w>\nbo ws</w>\nval ve</w>\nopp onent</w>\nĮ ë\nvisu al\ning le</w>\ncate gor\ne ter</w>\npo is\ndan i</w>\nat tract</w>\nneu tral</w>\nth ene\ncra shes</w>\nfred die</w>\nut ili\nc st</w>\nawak ening</w>\nslo ven\nquali fy</w>\npro of\nfair y\nle v\nfre ight</w>\nenjo ys</w>\ncup cake</w>\nflav our</w>\nâ ķ\nprotec tive</w>\nðŁĳı ðŁı»</w>\nis u\nad mir\nh mmm</w>\ncontinu ous</w>\nai res</w>\nrap tors</w>\nshowcas ing</w>\ny uk\npa ste</w>\nfollow er</w>\ninstru ctions</w>\nsp ru\n@ __</w>\nthe o\ndebu ts</w>\nve tte</w>\nsto w</w>\nes of\nach ed</w>\nsul tan</w>\nsand wich\nsom alia</w>\nfranc o</w>\ncar ne\nflu ffy</w>\nal pine</w>\njas mine</w>\nhe ated</w>\nviol in</w>\nple ss</w>\ndivor ce</w>\nper former</w>\nphi es</w>\nport sm\ndar a</w>\nkir by</w>\nlo p</w>\nchill i</w>\nfor th\nsky pe</w>\nðŁĩ®ðŁĩ ¹</w>\ncelebr ities</w>\ned y\nve e</w>\npo ison</w>\ney el\ngra bs</w>\nssi c</w>\nun o</w>\nwester n\nrail road</w>\nam er\nnumer ous</w>\ns v</w>\nfo w\nfi st</w>\nâĢ ĭ\nreque sts</w>\nmar tial</w>\nem my</w>\naccept ance</w>\nlau ra\nà¸ ´</w>\ner up\nhyun dai</w>\nout lander</w>\nu tt\nwrest le\nesp resso</w>\ndemand ing</w>\ng dp</w>\ngeo graphy</w>\nsas kat\ntro ll</w>\nconfe der\nsu es</w>\nse m</w>\nbe ts</w>\nt ful</w>\nto sh</w>\nteach es</w>\ncol oured</w>\ngal way</w>\nmac y</w>\ndis orders</w>\nbb cra\nat em\nfen der</w>\nlit ter</w>\ne sh\nprovi ders</w>\nrenov ation</w>\nnomin ate</w>\nps g</w>\nnomin ations</w>\njen na</w>\nshar p\nsome day</w>\nz ur\nbra ins</w>\nche shire</w>\npre y</w>\nhu go</w>\nÂ ¿</w>\nto ken</w>\nr v\ncar r</w>\ntac tical</w>\nzel da</w>\nkay la</w>\nfern ando</w>\nphotograph ers</w>\nj our</w>\numb rella</w>\nwoo dy</w>\ncongress man</w>\ndu mp</w>\nle vy</w>\nju an\nd azz\nsign als</w>\nla in</w>\nan u</w>\nmic hel</w>\npor ch</w>\nal den\nsibl ings</w>\ny ale</w>\npe el</w>\nsw ick</w>\ngg in</w>\nll c</w>\nk ale\ns con\nil d</w>\npat reon</w>\nre el</w>\nqu in</w>\nwit t</w>\nmar ty</w>\nmoo dy</w>\nton i</w>\nder y</w>\ng ators</w>\nspeci fically</w>\ndd in</w>\nly on</w>\ntr ick\nmeado ws</w>\np j</w>\nbor gh\nvi k</w>\ntu r</w>\nbron x</w>\npu ff</w>\nlan tern</w>\nðŁ¤ ¦\ng ently</w>\nbe stie</w>\nfac t\nrefu sed</w>\nfas ci\nmp y</w>\nðŁĶ µ</w>\ncross over</w>\nmead ow</w>\nindian apolis</w>\nduc ation</w>\nsle y\nloo m</w>\nmix er</w>\nnew music</w>\nfilm maker</w>\nprosper ity</w>\nli m</w>\nweek end\ncre amy</w>\nneu tr\nlu ther</w>\nh v\nnor thern\ntw o\nh ra</w>\ncat ches</w>\nappear ances</w>\nha bit</w>\nkitt ens</w>\nn v\nilla c</w>\ninf an\nregar dless</w>\nliz ard</w>\ndun k</w>\ncur tain</w>\nac om\nin tu\nve z</w>\ne min\nfl ats</w>\ncalend ars</w>\nem power</w>\nru ined</w>\nhun gary</w>\nvi d\nwe x\nu lum</w>\naber deen</w>\no sa</w>\nk t\nma ssi\nse emed</w>\ns den</w>\n' ?</w>\ntele phone</w>\nde fi\ninsp ires</w>\nme ow</w>\nz ones</w>\nbl ind\npl y\ntuc son</w>\nadvent ure\nge d\noy ster</w>\nðŁĳıðŁĳı ðŁĳı</w>\nout put</w>\ntt t</w>\nmetal lic</w>\nsma sh\nucl a</w>\nsco ts</w>\nperfe ct\nlu cy\nregular ly</w>\nsp ic\nrel ative</w>\nath ers</w>\nmis e</w>\nbatt ling</w>\ndeci des</w>\nmat a</w>\noccu pied</w>\nrandom ly</w>\ncat softwitter</w>\ngi an\nball y\nal ties</w>\nal lies</w>\nim men\nsy rac\nðŁĴľ ðŁĴľ\nl lan\nau r</w>\nk ut\nlam ar</w>\naffe cts</w>\nn ra</w>\nstar war\nðŁ¤ ĺ</w>\nsc ram\nen chan\npro cess\nluxu rious</w>\nar ray</w>\nsher lock</w>\ncomp ati\ndor f</w>\nstre ss\nm su</w>\ns with\nsal a</w>\nsof instagram</w>\nfo il</w>\nunder stood</w>\nqu ay</w>\nr p\nc ade</w>\nja w</w>\nen ab\nen coun\nðŁİī :</w>\ndo ck\nsatur n</w>\nmu ll\nlay out</w>\nra rely</w>\nhapp ily</w>\nfix ture</w>\nor ph\nover looking</w>\nher bs</w>\nm itt\npil lar</w>\nnol an</w>\npe tty</w>\nstr y\nu i\nmu k\no res</w>\no vers</w>\ná µ\nre creation</w>\nwe sley</w>\nri t</w>\nkejri wal</w>\nsto cking</w>\ng v</w>\nsubscri bers</w>\nmoo se</w>\nma e</w>\nber t\nopp re\nassign ment</w>\nu ro\nhigh lighting</w>\ncal vin</w>\nwe igh</w>\ncambo dia</w>\nav on</w>\nke m</w>\ndis abilities</w>\nread y\nchar gers</w>\np ads</w>\niz ing</w>\nilli an</w>\ntru ste\ncol leges</w>\nassoci ates</w>\nalban y</w>\nmil ton</w>\ncr on\nbu r</w>\nhar dly</w>\nsi ghts</w>\nanti ques</w>\ne cho\nsurpri singly</w>\nha iti</w>\ncap t</w>\nph p</w>\nop io\nine quality</w>\nequ al\nken y\nsch mid\nautograph s</w>\nren t\nqu er\ncit rus</w>\nchalleng ed</w>\nte c\nepi de\nfe st\nz hou</w>\nli me\ncitizen ship</w>\ncry stal\nconvin ced</w>\nmess enger</w>\ncopen hagen</w>\nâĿĹ ï¸ı</w>\nwar ran\ndevelop ments</w>\nï¸ı âĥ£\nfore x</w>\nhi ro\nsne akers</w>\nxi de</w>\nvi va</w>\nstere o</w>\nbat ting</w>\nss el\nho st\nbeng al\ncritic ism</w>\nq c</w>\ncr un\nattemp ted</w>\nry e</w>\ndetermin ation</w>\ncre ations</w>\nd read\nlabel s</w>\npos se\nanc er</w>\njoh an\nsi ster\npartner ships</w>\nles bian</w>\nk st</w>\nguaran tee</w>\nbar o\nfix ing</w>\nma son\nm ous</w>\nchem icals</w>\nt less</w>\nbio diversity</w>\npar o\nbhar at</w>\nac ol\nrefu ge</w>\nen te\nt iti\ndys sey</w>\nrespon ds</w>\nlef to\nin er\nse vel\nrahu l</w>\nol ine</w>\nfrank fur\ncho reo\nenjoy able</w>\nc to</w>\nstrugg les</w>\nwood land</w>\nheavy weight</w>\ngen s</w>\nrece p\nac cred\nðŁĺ ¡</w>\ntrans formed</w>\nlist en\nat op</w>\nn k</w>\nsur ge</w>\nbe re\ngover nor\nprison ers</w>\nclau de</w>\nt ill\nmu lator</w>\nemo tion</w>\nwater loo</w>\nstar t\nðŁĩ º</w>\nclean ed</w>\ngrand mother</w>\nfear less</w>\nafric an\nastron omy</w>\nðŁı ģ</w>\nà¸ Ļ\nthe world</w>\nsu itable</w>\nanth ony\nk and\ntt en</w>\nmeaning ful</w>\ndisc lo\njaco bs</w>\nÃ ¸\ntom linson</w>\nghe tti</w>\nty pho\nsub stan\nas co</w>\nte k\nnag ar</w>\nmu d\nam on\nvacc ine</w>\nf ty</w>\nfle sh</w>\nno el</w>\ninfl ation</w>\nportu gue\nglam our</w>\ntra m</w>\nv re</w>\nte qu\nroun dup</w>\nw yn</w>\nrejec ted</w>\nmosa ic</w>\nsi ghting</w>\ncal f</w>\no ta\ncom position</w>\ngo pro</w>\ngonz ale\ne ed</w>\nb ard</w>\ntu e</w>\neffec tively</w>\nwe en\nal to</w>\nri bs</w>\nrel ate</w>\nthir sty</w>\nfu rious</w>\ndi m</w>\nch ard</w>\nperfu me</w>\ns ny\nchur chill</w>\nk of\nmaster class</w>\nwa ve\nðŁĶ µ\ner in\nown s</w>\nto be\nsk illed</w>\nte m</w>\ngo f\nen i</w>\ntor i</w>\ncra zy\nl ick</w>\nresi stant</w>\nici al\nag ar</w>\n! :</w>\ng ali\ndel aware</w>\nbl itz</w>\nkoh li</w>\npu ck</w>\navail ability</w>\nhi malay\ninflu ential</w>\ncro chet</w>\nvictor i\nread ing\nho bby</w>\nvie t\nj as</w>\nen gra\nsk ul\nðŁĩ² ðŁĩ\neduc ate</w>\ntech no</w>\ndistric ts</w>\nblu es\nse tt</w>\nseven th</w>\nlear ns</w>\nee ee</w>\napocaly pse</w>\nhang out</w>\ncru el</w>\nmu tu\nbru h</w>\nhel en\nshe er</w>\nc tion\nkle in</w>\ntex ans</w>\nce real</w>\nsh ine\nne red</w>\ngra s</w>\nam bro\nf ella</w>\nhin du\nmatthe w\nli ma</w>\nmir anda</w>\nje wel</w>\nso ho</w>\neuro vision</w>\nneighb ours</w>\nchand ler</w>\nbe sides</w>\nðŁ¥ °</w>\nast ros</w>\nthu mbs</w>\nren ault</w>\nra ve</w>\nhi red</w>\nðŁĸ ¤\nit ary</w>\nz or\nbla zer</w>\nk ine\nea u</w>\nkat y\ndc comics</w>\npe c</w>\nro dgers</w>\nwater proof</w>\nkill ers</w>\nsuper int\npre serv\nas so</w>\nbrew ers</w>\npromo tional</w>\nsc am\nvilla ges</w>\nsket ches</w>\nju icy</w>\nfor life</w>\nau dit</w>\nso lo\nfundam ental</w>\nlen e</w>\nphilipp ine</w>\nt end\nconserv atives</w>\nsponsor ship</w>\ndd le\na ine</w>\nh tc</w>\nos i</w>\nhul k</w>\nw af\nà¸ Ļ</w>\nevalu ation</w>\nant ine</w>\nsle e\nrobert son</w>\nroo sevel\nag i</w>\nsophi stic\nemplo yers</w>\nbubb les</w>\nko wski</w>\ninter action</w>\nsh u</w>\nbou le\nic an\nj are\nhan k</w>\nleg itim\nk nicks</w>\nkar ma</w>\nrecei ver</w>\nper ks</w>\nu h\nsta ir</w>\nsun i\nlabor atory</w>\ngra ves</w>\nvoc als</w>\noo t</w>\nc ture</w>\nthri ve</w>\ntic o</w>\nãĥ ³\nb w\ncarto ons</w>\nmcdon alds</w>\ndra w\ny ung</w>\npl er</w>\nli d</w>\neth ical</w>\ngroo ve</w>\nent a</w>\ninternational womensday</w>\npat ron</w>\nwor ries</w>\nðŁİ ħ\nðŁĳ ĭ</w>\nka therine</w>\ndi az</w>\ntor i\nbach chan</w>\ntru st\nmin eral</w>\nic om\nbuil ders</w>\nbor n\ncol oring</w>\nlat te</w>\nca se\nrevolu tion\ntra der</w>\nox id\nchi pot\ninst antly</w>\nsou thern\nse hun</w>\npro b\nher nandez</w>\nlis bon</w>\nhu awe\np ong</w>\nme a</w>\nro oney</w>\nwheel chair</w>\nke en\nbe tt\ncor in\nregulat ory</w>\ndi splac\nka ren\nsch em\nsun sets</w>\nwh ales</w>\nremin is\nhe p\nhi de\nmar cel\npand ora</w>\ndo yle</w>\nth fc</w>\not to</w>\nno kia</w>\ntrans gender</w>\nko v\nhawai ian</w>\nsha ve</w>\nso vere\nexc er\nnick i</w>\npu g</w>\nst or</w>\nro th\nwee t</w>\nleg al\ndig nity</w>\npo w</w>\nhom age</w>\nðŁĩ³ ðŁĩ\ns re\ncan on\nla x\nwo ah</w>\nquart z</w>\nÃ± a</w>\ngree ting</w>\nflick r</w>\nnai robi</w>\nadvoc ates</w>\nan c</w>\nvi i</w>\neu gene</w>\nth ra\nc re</w>\nel an\npen sion</w>\nth letics</w>\nton i\nre agan</w>\nx v</w>\nsto re\nben ch\nhar lem</w>\ntodd ler</w>\nsent enced</w>\nâĻ¥ ï¸ı\nglob ally</w>\nche aper</w>\nu f\nma m</w>\nnic o</w>\nik u</w>\ntho u</w>\nni st</w>\ndam i\nth ala</w>\nrho des</w>\nsal e\nbow ls</w>\nâ Ī\nlas vegas</w>\nsanc tions</w>\nadm ire</w>\nmat ched</w>\nun able</w>\ntravel er</w>\nele ven</w>\nstraw berries</w>\nâĢĶâĢĶ âĢĶâĢĶ\nstu dio\njac ques</w>\nim s</w>\nvalu ed</w>\ns no</w>\ncheese cake</w>\nn xt</w>\ne os</w>\ns x</w>\nf x\nton ic</w>\nhat ch</w>\nchic ks</w>\ngra ds</w>\nhand ic\nr ory</w>\nas p\nri pped</w>\ndenti st</w>\nn en\nlu fc</w>\nâľ Ĭ</w>\ndi ge\nhop kins</w>\nsher man</w>\nf da</w>\nfor all</w>\nash ley\nstr and</w>\nh y</w>\nliqu or</w>\nbuffe t</w>\ness ence</w>\nphar ma</w>\nsuri ya</w>\nðŁĴĻ ðŁĴĻ\nfesti vals</w>\nz an</w>\nre fresh\npur ple\nuni forms</w>\nkenne th</w>\n= )</w>\nas an</w>\nhel sin\ntransform ers</w>\nk ali\nperson alized</w>\nchal k</w>\nbo bby\nâ Į\nthe mes</w>\ndepar ture</w>\nprin t\nillustr ations</w>\nqui et\nagre es</w>\ngri ff\nØ ³\nm iti\ntoge ther\nconven ience</w>\nab ar\ncar lo\nturt les</w>\ninfo sec</w>\nsome what</w>\nar lington</w>\nscholar ships</w>\nemir ates</w>\nmu ms</w>\nst ella</w>\nauton om\nfe ather</w>\ng ore</w>\nnom inees</w>\nfragr ance</w>\nÑ Ĥ\nw ong</w>\nthea stern</w>\ngr e</w>\nz illa</w>\nis i</w>\nbump er</w>\ngo o</w>\ndo zens</w>\nab duc\nâļª ï¸ı</w>\no ils</w>\ndon ors</w>\nsil icon</w>\ni pod</w>\nfortn ite</w>\nðŁĴ ¨</w>\ntor o</w>\nspark ling</w>\nconsci ousness</w>\npal a</w>\nnu m\nmoun ted</w>\nffin s</w>\nthi eves</w>\nteam mate</w>\npra b\nom er</w>\nta pes</w>\nbo d\nmit su\nste w</w>\ne re\np bs</w>\ntu sc\nlo we</w>\nra de</w>\nparliam entary</w>\nh m\ned gar</w>\nðŁĳĩ ðŁĳĩ\nto a\na gh\nhon i</w>\ns late</w>\nge ek\nap t</w>\nhard t</w>\nta p\nhoriz on\ngrow th\nmake over</w>\nhi l</w>\npaper back</w>\nid an</w>\nreha bil\ngi u\npossi bilities</w>\nlet tu\nfran co\nbo ss\nach er</w>\ndoes nt</w>\nmo e</w>\nta ker</w>\nhuss ain</w>\nml k</w>\ndi l</w>\nth ia</w>\nham a</w>\nreal ised</w>\nraven s</w>\ncurric ulum</w>\nm ith</w>\nk night\nted x\nr v</w>\nisai ah</w>\ncumb ria</w>\nbirth days</w>\nf ing</w>\npre z</w>\nmu barak</w>\nexquis ite</w>\nclear ance</w>\ny en</w>\npar i\nev o\nÃ º\nmodi fied</w>\napp lying</w>\nimple ment</w>\ndisco vering</w>\nchap man</w>\nindie game</w>\ndis k</w>\ncrowd funding</w>\nmach in\nli vel\nsty led</w>\nâĿ Į</w>\nma king\nrehear sals</w>\nnutr iti\nsubscri ption</w>\nand ro</w>\ncre ators</w>\ncar ries</w>\nky lie</w>\ncam den</w>\nappren tice</w>\ntax pay\nc ca</w>\ntuesday thoughts</w>\npis sed</w>\ner man</w>\ndete c\nfreed om\nmer i\n.. !</w>\npsal m</w>\nsun light</w>\nper spec\nbe ings</w>\nbook store</w>\nrock star</w>\nfun ctions</w>\np ence</w>\nfav es</w>\nz n</w>\nobam acare</w>\nsp ill</w>\ncoven try</w>\npi geon</w>\npi vo\nba it</w>\nkol kata</w>\nav al\ndon or</w>\nwa h</w>\nprivi leg\ntra ditions</w>\nrajas than</w>\nten ess</w>\nportugue se</w>\nyn es</w>\ntack les</w>\nde fic\ntor n</w>\npol ling</w>\nthor ne</w>\nin a\nbened ict</w>\nbar ry\ncal ories</w>\nver dict</w>\nsave the\nnor ton</w>\noff ice\nmain stream</w>\nimpro ves</w>\nfr on</w>\nrespon ding</w>\nreal tor</w>\nscotti sh\nde clar\nr l\nshi v\nsupp lier</w>\nre sting</w>\nswee ts</w>\nqu i</w>\n. âĢ¦</w>\nwhit ney</w>\nstartu p\nthank you\nteach er\nh alls</w>\nha ve\nhand made\npro ving</w>\nquar tet</w>\nro chester</w>\nli an</w>\nvirtu al\nmend es</w>\nof icial</w>\nmid lands</w>\nx box\nmeas uring</w>\no vo</w>\naccommod ation</w>\nbri des</w>\ncollegi ate</w>\nintellec tual</w>\nin car\nni ag\nðŁį ·</w>\nsf w</w>\ncoco a</w>\nco ats</w>\ncivil ians</w>\npresi dency</w>\nmat rix</w>\nsweethe art</w>\ntri athlon</w>\nwag ner</w>\nra dic\nplann er</w>\nthe o</w>\nexecu tion</w>\nk um\nthe walkingdead</w>\nsc ar</w>\nro tation</w>\nblo gging</w>\nbom b\nre son\nbb les</w>\nst are</w>\nassi sted</w>\ne do</w>\nbrand ed</w>\nwar nings</w>\nthor pe</w>\nacknow le\nsatis fied</w>\nsho res</w>\nri d\ndor a</w>\nphys ically</w>\nbi gh\nappro ves</w>\nha h\nric al</w>\nvers atile</w>\npret end</w>\nlu m\nab hi\nye e\nsp it\nãĢ Į</w>\ndj s</w>\nash tra</w>\nj t</w>\nven ues</w>\ngram mys</w>\ncy clo\ntr acker</w>\nover watch</w>\nrepl ica</w>\nel yn</w>\nnr l</w>\nlind sey</w>\nhom o\nballo ons</w>\nkitch en\nsi s\nam os</w>\nende av\nðŁĴ »</w>\na rec\nthu g</w>\nhoo ked</w>\nhr c</w>\nnew york\nbur gh\nameric as</w>\npatric ia</w>\nug u</w>\nap athy</w>\nha st\npsy chi\ncor k\npetro l</w>\nðŁİ ¬</w>\nak u\npo pping</w>\npsycho logical</w>\nau x\ng ma</w>\ncad illac</w>\nwa ste\nauth ent\nbri stol\nnam e\nque er</w>\nto ber\njer ry\ncom in</w>\nch ant\nprivileg ed</w>\nop ar\nlo ser</w>\ntex t\nmar ker</w>\nstri es</w>\nequ ally</w>\nak i\nchrist mas\ngare th</w>\nble w</w>\nem ma\nimag in\nse als</w>\nche at</w>\nconditi oning</w>\nj ana</w>\nren s</w>\ndar ies</w>\no asis</w>\ndisc ounts</w>\ncoun cil\ni ka</w>\nshir ley</w>\nvou cher</w>\nal ps</w>\nw x\nq r</w>\ndri ft</w>\nattemp ting</w>\nut c</w>\nØ ª\ngonzale z</w>\nm f\njo ker</w>\nparalle l</w>\npa re\naspe cts</w>\nproce du\nn p\nam a\nrale igh</w>\nbright en</w>\ngu ire</w>\nradi ation</w>\ncre scent</w>\nho b\nil le\nstr and\nv ore</w>\nn ard</w>\nche st\ndi wali</w>\nav atar</w>\nal der\nd ling</w>\npa thetic</w>\nðŁĴ ĺ\nspir it\njor ge</w>\nfilm making</w>\nðŁĻı ðŁĻı\nchalleng er</w>\nb j</w>\ndown town\nht ml</w>\nade qu\ntwi sted</w>\nin ely</w>\n( '</w>\nwra ps</w>\noper ational</w>\ny ne</w>\nn us</w>\nmag net</w>\nmarket place</w>\nhealth ier</w>\nsnap shot</w>\ndam on</w>\ninter ven\nfe derer</w>\now ls</w>\nbiscu its</w>\nj p\nro deo</w>\nblue berry</w>\nlec tion</w>\nfron tier</w>\nsumm ers</w>\nre yes</w>\npede strian</w>\ngo l</w>\ncaf fe\nrefur bi\nbou lder</w>\nme ghan</w>\nspeci alty</w>\nla ss</w>\ne i</w>\nsuspec ts</w>\nappro x</w>\nrr r</w>\nra th\nst im\ncru shed</w>\nhe d\nwh un\nlo af</w>\ncr ore</w>\nriver a</w>\ngene tics</w>\nso ck</w>\nwa sted</w>\nny pd</w>\nansw ering</w>\ndo ve</w>\nbel la\nol in</w>\ndu n</w>\nfi ji</w>\npre tty\nspar kle</w>\ny un</w>\nj d\neuro pa</w>\nli fts</w>\nam ber\nmu r</w>\nte k</w>\nboy d</w>\nroy alty</w>\nin do</w>\nri b</w>\ngo tham</w>\nti est</w>\ninst alling</w>\nke mp\nthe photo\ncos mic</w>\n) ))</w>\nwhole sale</w>\nloy ment</w>\neas y\nsu ing</w>\nsett led</w>\naf p</w>\npro ver\nsuppor tive</w>\nre es</w>\nne ath</w>\ndeli ber\nc Ã©</w>\nwel come\npic oftheday</w>\nnew born</w>\npat ty</w>\nsun s</w>\nsi est</w>\nfl int</w>\ndiffe rently</w>\nspo ilers</w>\ntroop er</w>\ng ins</w>\ncor y</w>\nlook out</w>\nequi pped</w>\nta pe\nto by</w>\nresear cher</w>\nu sh</w>\nke yes</w>\nal ma</w>\ninduc tion</w>\nk w</w>\nk har\nsl ick</w>\nbri de\ne ur\ncra ving</w>\nbook ings</w>\nch es\ntr unk</w>\nvern on</w>\nsp her\ncryst als</w>\nrel atively</w>\npom pe\nuni ons</w>\nval ley\npar a\nw ant\nok c</w>\nde af</w>\nser gio</w>\nlen non</w>\nsh ay</w>\ncr a</w>\nv at</w>\nhe e\nt we\nliqu id\npol y</w>\nðŁİ ģ\nb ent</w>\nbe aring</w>\nmotor sport</w>\nbar be\nte sti\nhan i</w>\nfin ancing</w>\nastron aut</w>\nwater colour</w>\nri sh\ncomic con</w>\ngar t\nwr ong\nber n</w>\nit an</w>\nste pped</w>\nfil ters</w>\nc low\nme x</w>\ndem ons</w>\nall o</w>\nexpand ed</w>\ncomm and\net ers</w>\ngo ats</w>\nsi ri</w>\ny r\npot tery</w>\nmari on</w>\ni le\nel an</w>\nsan to</w>\nperson a</w>\ndu ke\nhom eless\nli ghted</w>\nwheel er</w>\nchang er</w>\ncab bage</w>\nsur real</w>\nham burg</w>\nsma shed</w>\nstr an\nk not</w>\ni art\nob i</w>\nbe dro\ndi al\nth ick\nb ingo</w>\nfu s</w>\nvacu um</w>\ncon ve\nati ve\naccur acy</w>\naccoun t\nre fer\nri z\nspider man</w>\nban a</w>\nr ite</w>\nu b\nab s\nmedic al\nlin k\nsi em\n> >>></w>\nbe tra\ng lowing</w>\nre actions</w>\npupp et</w>\nspa ghetti</w>\nang s</w>\nre medi\npray for\nroy ce</w>\nchar lotte\n£ ï¸ı</w>\ngh et\naffe cting</w>\nro de</w>\nsoci alist</w>\nmo ses</w>\naz i</w>\no it\nre porters</w>\ncd t</w>\nap ing</w>\ns nat\nminim al</w>\nwa ist</w>\nsie ge</w>\n>> >>\nri g\nschmid t</w>\nh are</w>\nec a</w>\nthor n</w>\nhe mp</w>\nes the\ncly de</w>\nth a\ndon ut</w>\nmoham ed</w>\nling erie</w>\nle gg\ncarpen ter</w>\nperform ers</w>\nde a</w>\nimag ined</w>\ncur se</w>\nla sh</w>\nct r</w>\nagu a</w>\nro ar</w>\ngr i</w>\nro le\nj fk</w>\nresur rec\nroosevel t</w>\nmaril yn</w>\nsm alle\nwill is</w>\nwa ited</w>\nchar ities</w>\nthe res</w>\nli k</w>\norigin al\ncar i\nc ough</w>\ncru ci\nla gun\ncontra st</w>\nk ou\narm our</w>\nre moving</w>\nt ent\nmaz da</w>\nbri ghter</w>\nthi ef</w>\ncor ner\ntequ ila</w>\nbuzz ing</w>\nal bi\np am</w>\naz ure</w>\ndisc oun\npixel art</w>\npossi bility</w>\nham ont</w>\ntra des</w>\nbu da\nhi ve</w>\nvers y</w>\nfin ch</w>\ntran spa\nem i</w>\nterri fying</w>\nin qui\ng ba</w>\nsub stitu\ncollec ti\nplac ing</w>\ncin dy</w>\nk ann\npa tho\ndiamon d\nmour inho</w>\nguine a</w>\nanthro po\nair s</w>\npu mps</w>\nì ļ\npas o</w>\ncur ling</w>\nan ita</w>\nresi dency</w>\nne wh\njo on</w>\ncigare tte</w>\nque ue</w>\nex trac\ngam es\nspl en\nex press\npublic ly</w>\nbon nie</w>\ntribun e</w>\nba ek\nreason able</w>\nc or</w>\ntimo thy</w>\nshe eran</w>\nÄ ±\nf dn</w>\nsu tton</w>\nconcentr ation</w>\ncarav an</w>\nx avier</w>\nal ger\ncy lin\nfreder ick</w>\nner ve</w>\npe ak\nlettu ce</w>\nj ail\npre game</w>\nkav an\nup graded</w>\neco logy</w>\nsquad ron</w>\ngra pes</w>\ngoo g\npa stry</w>\nðŁĹ £</w>\nãĥ¼ ãĥ\nmil ano</w>\nawa z</w>\npresen ter</w>\nðŁĮ ¿</w>\nher d</w>\nking s\ntem plate</w>\nfl our</w>\nh v</w>\nk ley</w>\ni ya</w>\nspe c</w>\nat er\nfrankfur t</w>\nco ch\ntex ting</w>\ndel i</w>\ncommuni st</w>\nregi ment</w>\nele anor</w>\nanticip ated</w>\nðŁĳĮ ðŁı»</w>\nthephoto hour</w>\nran o</w>\nsurvi ving</w>\nsimul ation</w>\ndaw son</w>\nar in</w>\naqu a</w>\nm or</w>\nâĢ¦ .</w>\ncin o</w>\nira qi</w>\nsh az\ndun dee</w>\nwe s\ndra u\nhann ah\ns news</w>\noccup ation</w>\nste en</w>\nx m</w>\nang les</w>\nsett ings</w>\ngur u\nkno x\nor ca</w>\nshap ing</w>\nw ent\ndr illing</w>\nzz ie</w>\nbr i</w>\nkis sing</w>\nfin d\nma ine\nâŃĲï¸ı âŃĲï¸ı\nðŁĮ į</w>\nlar ry\nbu sted</w>\nta vern</w>\nacti vely</w>\n- \"</w>\nreplac ing</w>\nno d</w>\nun lock</w>\n. \"\nâŀ ¤</w>\naffili ate</w>\nto w</w>\nl n</w>\nhappy newyear</w>\ndi f\nj m</w>\ngreen wich</w>\ncontro versy</w>\ndaw g</w>\ncon dol\nsav annah</w>\ncompens ation</w>\ntouch down</w>\nte o</w>\namb itious</w>\nembro i\nconvic ted</w>\niart g</w>\nbar ack\ntr ance</w>\ntestim ony</w>\nau dition</w>\nthum b</w>\nmy ths</w>\nbe x\nque z</w>\norch id</w>\nden y</w>\nentit led</w>\nhoo d\ngr ant\nin box</w>\nblue jays</w>\nr illa</w>\nsmalle st</w>\nbur den</w>\nin famous</w>\ndivi ded</w>\nboun daries</w>\nt ter\nel t</w>\nwy oming</w>\nbe verage</w>\nme sm\none ws</w>\nbudd hist</w>\ny ana</w>\nas sad</w>\nis ms</w>\nbar rett</w>\npredic ted</w>\nback to\ntw it</w>\ne there\ncap tains</w>\nescap ed</w>\nay o</w>\nlam borgh\ngard ner</w>\nla ps</w>\nk al</w>\nadverti sement</w>\ninsec ts</w>\nna po\nam en\nac y\nr and</w>\ng k</w>\nte h\nk athle\ntri dge</w>\npan cake</w>\nat ro\npyram id</w>\nbu la</w>\nparal ym\ngau ge</w>\nen cies</w>\ntom y</w>\nbiscu it</w>\nbut cher</w>\nquali fier</w>\ncoun ty\nke i\npo ols</w>\ndar ker</w>\nshould ers</w>\nðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸\nsp re\n( \"</w>\nwrit ers\ng m\nðŁİ ĵ</w>\nk nit\nhu ff\nmt b</w>\nphilli es</w>\no st</w>\nden is</w>\ng art</w>\nlicen sed</w>\ninter face</w>\nex cel</w>\nd well</w>\nfrom the\nco fficial</w>\naz zi</w>\nappear ing</w>\nfore st\nn ana</w>\nke ith\nmanufac turers</w>\nbeck ham</w>\n) ?</w>\ne se\ncol ony</w>\ndelic ate</w>\nut ter\nmc in\ntranspl ant</w>\npre ferred</w>\npar d</w>\nari e</w>\nhu b\npo ds</w>\nperspec tives</w>\npic t</w>\ndel u\napp er</w>\nbe than\np mo\ncrimin als</w>\nfemin ism</w>\nsh ack</w>\ncircum stances</w>\nfel las</w>\nprote sting</w>\nwa x\nsugge sted</w>\nt ator</w>\ndre w\nom ni\nfa ke\nkath y</w>\nre b</w>\ndel ine</w>\nber ni\nmi sty</w>\nðŁĳ ©\ner able</w>\nbreak through</w>\nmen swear</w>\nmillenni als</w>\nchan yeol</w>\nla z\ninser t</w>\nrep lies</w>\nphra se</w>\nn x\nihear tawards</w>\naudre y</w>\ngran ite</w>\nrac ec\nori e</w>\nter ra</w>\ninnov ations</w>\nbritt any</w>\nat eral</w>\npe ar</w>\nbio logical</w>\nsh ments</w>\ninstitu tion</w>\nm sn\nfrequ ency</w>\nd man</w>\nneg lec\nt f\nste fan</w>\nfox news</w>\nty po\ncomm s</w>\nsequ ence</w>\ncar men</w>\nwh ites</w>\neconom ist</w>\nexe ter</w>\nse um</w>\nre sorts</w>\ncas ually</w>\nbun de\ndivi de</w>\nØ ¹\nga g</w>\ncre ed</w>\nreti re</w>\ncau cus</w>\nrapi ds</w>\nwrestle mania</w>\ntul sa</w>\nsunder land</w>\nfundam ent\no di</w>\nyam aha</w>\nv ary</w>\nintri gu\nel se\nbe acon</w>\nan gie</w>\ntra ded</w>\ntran sm\ng ents</w>\nkn itting</w>\ngal ac\nðĿ Ĺ\nu to\nsea side</w>\nhol t</w>\nre rs</w>\nfar go</w>\ntrain ers</w>\nmon soon</w>\nb ale</w>\nsou ght</w>\nmad die</w>\nh w</w>\nco li\nfr an</w>\nfav s</w>\nðŁĴ Ķ\nint ent</w>\nr ally\ns bs</w>\nlemon ade</w>\nbarack obama</w>\nbre ad\nstick y</w>\nexplo sive</w>\nchel ten\nt j\nas soc</w>\nram en</w>\nhom ies</w>\nv log</w>\nmi ster</w>\nlor d\nâĢįâĻ Ģï¸ı\naly ssa</w>\nsketch book</w>\nru mble</w>\ncat ch\nmigr ant</w>\ndiscipl ine</w>\nun likely</w>\nchronic les</w>\nfl ora</w>\nsl ams</w>\nam id\ns boro</w>\ncoo p</w>\nju mps</w>\ntran qu\nmel is\nsof ia</w>\nen ri\ngab e</w>\nsy ri\nnicol as</w>\ncha i</w>\nw v\nbe cky</w>\nfoo ty</w>\nta o</w>\nsuppo se</w>\nðŁĺįðŁĺį ðŁĺįðŁĺį</w>\nplu sh</w>\nri sh</w>\nðŁ¤ ĵ</w>\nk ha</w>\nsatur days</w>\nac cent</w>\nhe c\nlim it\ncarl ton</w>\nwi red</w>\ntaylor swift</w>\nðŁĺ ĳ</w>\nsq l</w>\nhar ro\nrecipi ents</w>\ng at</w>\ngo p\nth of\namaz ed</w>\ngh an\nðŁıĨ ðŁıĨ\npor to</w>\ncla re\ndi stant</w>\nna c</w>\nohi o\nðŁĻı ðŁı¼</w>\nmt n</w>\nanti bio\ndino sa\nme sa</w>\npar tial</w>\nb v\nlear nt</w>\nlov ato</w>\nquesti on\nex tract</w>\ngossi p</w>\ngi bb\nniag ara</w>\nðŁĳ ¨\ndispla yed</w>\nso oner</w>\nste vie</w>\nnug gets</w>\nml n</w>\nbro m\ntur b\ngive aways</w>\nstu pi\nbl ink</w>\nc ili\nconven ient</w>\nmo h\nvi ve\nf ric\ncau se\ncham ber\ncu les</w>\nne arest</w>\nis se</w>\nsmall biz</w>\nt j</w>\ncanadi ans</w>\nsmar ter</w>\nbra sil</w>\nra re\nque tte</w>\nw ha\ncand le\nat omic</w>\nðŁĳį ðŁĳį</w>\nwarri or\nrelax ed</w>\nstri ps</w>\nne ur\nk ka</w>\nr fc</w>\njen sen</w>\nreco vering</w>\nrespon ses</w>\nsal am\northo dox</w>\nacti ve\nell ers</w>\nn it</w>\nâŃ Ĳ</w>\nmetro politan</w>\ncentu ries</w>\nvi da</w>\ngra ding</w>\ntranspa rent</w>\nsim ple\ndo ts</w>\nsuperint endent</w>\nelev ator</w>\nautom ated</w>\nred skins</w>\nima m</w>\nsummer time</w>\njona than\nge aring</w>\nmichel le\nconfl ic\nm ice</w>\nto te</w>\npubli sh</w>\npa x</w>\n) -</w>\nna iled</w>\ná ´\ntele scope</w>\nser bia</w>\nba b</w>\nape u\nst ically</w>\nsen ti\nr ats</w>\nisol ated</w>\ngrou p\nhat red</w>\nparanor mal</w>\nstan ley\nali on</w>\nsafe ty\nl s\nà¤ °</w>\nnex us</w>\nalexand ra</w>\nmas ks</w>\n+ +</w>\ntr on\nau k</w>\nbrother hood</w>\nbrow se</w>\nmix es</w>\nsim one</w>\nmu sk</w>\nappro ve</w>\nlo la</w>\nex p</w>\nper th\nfu turi\nun seen</w>\nd m\nchel se\nsc outing</w>\no we</w>\nportsm outh</w>\nk ram\nmi ze</w>\ndi spen\nsu p\nd lc</w>\nadver t</w>\ntere sa</w>\nis le\ncy cle\nmet all\nshi elds</w>\nmarin ers</w>\nra z</w>\ning en</w>\nfun d\nan go</w>\njon es\no ka</w>\nmad den</w>\nbroc coli</w>\ndomin ic</w>\nsitu ations</w>\nmer o</w>\ncric ke\npuni shment</w>\nd b\nsha king</w>\nðŁĺ ļ</w>\nm q\nari ans</w>\nle h\ncla w</w>\nwe ds</w>\nd ure</w>\nni el\nj elly\ngour met</w>\ntra ders</w>\nle vi</w>\nw ages</w>\nkne es</w>\nwi se\nheaven ly</w>\navi d</w>\nmelo dy</w>\nz ack</w>\nban anas</w>\napprentic e\npro p\nfun ny\no de\nrespec ted</w>\nme gan\nfe wer</w>\ndra fted</w>\nmed it\ngra pe\nus army</w>\ncru sad\nvo cali\nprepar ations</w>\nnon sense</w>\nus age</w>\nth r</w>\nro th</w>\nwiz ards</w>\ninsi de\npromo tions</w>\nmon a</w>\nred sox</w>\nsi g</w>\neleg ance</w>\nch ia</w>\nuniver sal\nãĢ į</w>\nra ja</w>\nun ga</w>\npol lin\nfilip ino</w>\nak a\nt sun\nik on</w>\nbi king</w>\ndecor ations</w>\nz ac</w>\ncade ts</w>\nhum our</w>\nag m</w>\nre ppin</w>\nvac cin\nelo ve</w>\nu w</w>\ndia be\ngalla gher</w>\naz er\ndo l</w>\na while</w>\npro minent</w>\nwel sh\nt ann\n' )</w>\nbi en\nwa g</w>\nin al</w>\nc wc</w>\nwic ket</w>\nur st</w>\nq anon</w>\nx e</w>\nout door\ndun n</w>\nstar r</w>\nco logy</w>\nric ky\nu efa</w>\nreb ounds</w>\ns music</w>\ninf ant</w>\nðŁĻ ĭ\nso p</w>\nu mber\nhand ing</w>\nbeg in\nsor ting</w>\nha sh</w>\nsp ati\nre k</w>\nbuda pest</w>\nblack hawks</w>\ndele te</w>\nro m</w>\ncan did</w>\nauth ori\nde bris</w>\nspe cul\ninter section</w>\nmarri ott</w>\nim ran</w>\nðŁĺģ ðŁĺģ</w>\ncru ises</w>\nram sey</w>\nrafa el</w>\naware ness\nvas cular</w>\nbeyon cÃ©</w>\nru g</w>\nðŁĺ Į\nfesti v\nar am\ns able</w>\nbas il\np ill</w>\nflo oring</w>\nun beaten</w>\nimplic ations</w>\nu f</w>\nw ound</w>\nfor ge</w>\npoin ting</w>\npo ts</w>\npopular ity</w>\nðŁĳı ðŁı»\nmani pul\ns lots</w>\ndeb ates</w>\nabs ence</w>\nver mont</w>\nnever forget</w>\nwri st\ngl oria</w>\nren ce\nhu sk\nmel ting</w>\nðŁİ Ł\nbr aces</w>\ntim ely</w>\ntransform ing</w>\nam ps</w>\nma k</w>\npo e</w>\nah an</w>\ngener ally</w>\nnd p</w>\nale ppo</w>\nunic ef</w>\npro fs</w>\nnor d\nma sk\njackson ville</w>\nv v\nsh ells</w>\nbloom ing</w>\noper ators</w>\nchar coal</w>\nne ville</w>\nma gi\nchi p\nsam a</w>\nir an\nre forms</w>\naccu mul\nru e</w>\næ ľ\nweb sites</w>\nga on</w>\ndevast ating</w>\nsto s</w>\nglaci er</w>\nra pp\nchipot le</w>\npr a</w>\nor ous</w>\nrom ney</w>\nseas on\ndecor ative</w>\nc isco</w>\ndit ch</w>\ncompla in</w>\nll o</w>\nassu me</w>\nðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤ</w>\nn els</w>\ncent ric</w>\nft w</w>\ncar rots</w>\ntat a</w>\ncan ter\nper ience</w>\nli ers</w>\ndemo s</w>\nbl unt</w>\noper ate</w>\nreserv ations</w>\nle ah</w>\nsub stance</w>\ndi son</w>\nan te\nelec tion\nv ue</w>\nsqu are\nnon profit</w>\nca a</w>\nf su</w>\ny am</w>\nãĤ ¤\nv ladi\ncomple tes</w>\nmar i</w>\nphilli p</w>\nne ill</w>\ner as\nka it\nmen do\nmahar ashtra</w>\ng p\ndan e</w>\nprovi dence</w>\nther apeu\njuven ile</w>\nme mo</w>\nin corpor\naa aa</w>\nseven teen</w>\nteen ager</w>\nÃ £\nor ns</w>\nwi de\ncu teness</w>\ntw d</w>\nff les</w>\nbar a</w>\ncom edy\nover time</w>\ny az\nbar on</w>\nunemp loyment</w>\nðŁĳ ĭ\nexter ior</w>\nden se</w>\ncent res</w>\nmatch up</w>\nhistory month</w>\nartif icial\nqu it\ne sk\nwar n</w>\ncr itic</w>\nj af\nðŁĵ ²</w>\ninform ative</w>\nfu els</w>\nrecy cle</w>\nnam ing</w>\nstri pe</w>\nsol ic\nmole cular</w>\ndee pi\ncon vo</w>\ns sel</w>\nna e</w>\nde scent</w>\nti z</w>\naccoun tability</w>\nter ry\nr ito</w>\nsl ay</w>\nem o</w>\ndem ol\nsens ation</w>\nco v\ntor e</w>\nround table</w>\ny ol\nexcu ses</w>\nà¥ į</w>\ntur quo\nhh hh\npod casts</w>\ncele b</w>\nme ssi\nli o</w>\nman n\ncontribu ted</w>\nu z\ngener ator</w>\nele ts</w>\nveg gie</w>\nindu l\nen suring</w>\ndetro it\npun jab\ntran spor\ninstru ction</w>\nad d\npor cel\npan eli\ncir cles</w>\npersi st\nclay ton</w>\nsp n</w>\ndog softwitter</w>\nis nt</w>\nsp r</w>\nretail ers</w>\np w\nhun gar\nel ena</w>\nmon aster\ngu atem\nje ssie</w>\nan z</w>\nra shi\nfle e\ncar ving</w>\nfau x</w>\nl al</w>\nhen ri\nd jo\ndu ll</w>\ns ana</w>\nlar a</w>\nglo be\ncri mson</w>\ncom pass</w>\npau se</w>\nna b</w>\nlion el</w>\nba ths</w>\nu fo</w>\ninvent ory</w>\nsin gh\nsat an</w>\nðŁĩ ¸\nce ments</w>\nin form</w>\ngener ated</w>\nbi den</w>\nav g</w>\ntas ks</w>\nde er\nsa u</w>\nja iled</w>\npa stel</w>\nsc c</w>\nna il\nsteel e</w>\nper is\nlamborgh ini</w>\npur sue</w>\nmar gin\nu ch\nbo sch</w>\ndra in</w>\ncl ara</w>\nbo m</w>\nlat ino</w>\nweb ster</w>\nrose mary</w>\nr ha\ns oun\nbillion aire</w>\nnot ch</w>\npercent age</w>\ncon or</w>\n' \"</w>\nhom es\nearth day</w>\nh ort</w>\nbig gest\ndi sin\nwal ton</w>\nedit ors</w>\nim ma</w>\nom ar\nequi valent</w>\npharmac eu\nah med\ncam eo</w>\nhan ni\nunder rated</w>\nge ment</w>\nmicro bi\nv oo\nhonor able</w>\nobe sity</w>\nâļ ¡ï¸ı\nlimer ick</w>\ninvol vement</w>\nst agram</w>\nboule vard</w>\nbur g\nblackand white</w>\nliber ation</w>\nfi ve\ninter im</w>\nsm m</w>\nrival ry</w>\ncap abilities</w>\nstat ements</w>\nthu mb\nve d\nsw ans</w>\nbar ber\ne que\nseren a</w>\nhel m</w>\nnoo dle</w>\nsam pling</w>\nn awaz</w>\nsing le\nthunder storms</w>\nsh on\nin ev\në ¯\nto pp\norch ard</w>\nbi an\nðŁĺ Ķ\ndoor step</w>\nsalv ation</w>\nmarke ting\nr ons</w>\ncle mson</w>\nra vi</w>\nin take</w>\nstand with\nsin a</w>\nha iku</w>\nple y</w>\nelector al</w>\nph illy\nla ys</w>\nelectr ic\ncap turing</w>\nu pp\ner gy</w>\nbeliev ing</w>\ncul tures</w>\nes day</w>\ninva sive</w>\ned ed</w>\nspee ch\nend ur\nviet nam\nboy cott</w>\npe de</w>\ndeli ver\nðŁĴĸ ðŁĴĸ\nmer chant</w>\nst ir</w>\nden ies</w>\npoc kets</w>\no ti\ncu ddle</w>\nro land</w>\nmm ed</w>\nden ed</w>\nlear ners</w>\nhoo p</w>\nsour cing</w>\nh acked</w>\ndi m\nenviron ments</w>\nben son</w>\njud icial</w>\nwor cester</w>\npear ls</w>\ngovern ments</w>\narri vals</w>\ncor ners</w>\ntun ing</w>\nla bour\ny m</w>\nor dering</w>\nle wi\ni fe</w>\nhygi ene</w>\nthou ghtful</w>\nindone sian</w>\ncampaig ning</w>\nprinci ple</w>\nassau l\nru bb\nat v</w>\nwil ly</w>\nen tre</w>\nil i</w>\nph on\ndu ties</w>\nâĻ¥ âĻ¥</w>\nsn akes</w>\nlo op\nam ar</w>\nconver tible</w>\nbon ding</w>\nment oring</w>\nmax well</w>\nethere um</w>\ndestro ying</w>\nax is</w>\nca iro</w>\nfin nish</w>\nsho ck\nðŁĺ Ĳ</w>\ncal eb</w>\ncom a</w>\npe dal</w>\nco re\ncontin ent</w>\nel son</w>\ntemp o</w>\nhelsin ki</w>\nac p</w>\ntack ling</w>\nst ated</w>\nbl a</w>\ndou b\nsma shing</w>\na ja</w>\ncamer on\ndisru ption</w>\nwarm th</w>\nbeing salmankhan</w>\nbullet in</w>\no de</w>\nsyrac use</w>\nar an</w>\nmc gregor</w>\nbul k</w>\nan ton</w>\nconfir mation</w>\nsp ine</w>\nim ran\ninstru c\njac ks</w>\nchi o</w>\npal m\nstr e</w>\nembarra ssing</w>\nun t\nelimin ate</w>\nto ss</w>\nc ise</w>\na ws</w>\noni sts</w>\nsh inee</w>\njo s</w>\nho se</w>\nli vely</w>\nopp onents</w>\nmo vements</w>\nrecogni zing</w>\nsandwich es</w>\nsh akes</w>\nexerc ises</w>\nse at\nprofe ssion</w>\nmerry christmas</w>\nlu gg\nadopt dont\nmar vin</w>\nbyr ne</w>\nun le\nhe t</w>\nku wait</w>\nrah man</w>\naspe ct</w>\nhumb led</w>\ngen es</w>\nf and\nlong time</w>\n) ;</w>\ncam pu\nan gus</w>\nðŁĳį ðŁı¼</w>\nq uran</w>\nsle eves</w>\ns lic\n¸ ë\ntwel ve</w>\nyour e</w>\ni ke</w>\ngo gh</w>\nb st</w>\ndic tionary</w>\nreflec ting</w>\nto on</w>\nyar n</w>\nem bed\nðŁı ´</w>\nre serves</w>\nfloo ded</w>\nver iz\ndu sk</w>\nestab lish</w>\npro li\nau d</w>\nritu al</w>\nor bit</w>\ndeclar ation</w>\nrecor dings</w>\ncam o</w>\ncas sette</w>\ngood luck</w>\ncu tter</w>\nbo p</w>\nb ho\nche ating</w>\npaci fic\nma res</w>\ntim er</w>\ncol t</w>\ntr ous\ntomor row\nhan sen</w>\nci e</w>\nw ang\nban i</w>\ncircu lar</w>\nac ute</w>\nfar mer\nco ys</w>\np se\nir ving</w>\nw j\nhaw kins</w>\nb ison</w>\nur day</w>\ncru ising</w>\no te</w>\nk ath</w>\nwhi stle</w>\nyour selves</w>\nant is</w>\nsla sh</w>\nthorough ly</w>\nke sh</w>\nser ie</w>\nex em\nen ig\nguil d\nsh red\nho gan</w>\nap o</w>\nä ¸\npu zz\nne tball</w>\nau ssi\npanor ama</w>\nws j</w>\nav is</w>\nar ming</w>\nhum ph\nbrow ser</w>\ncri es</w>\nfo ggy</w>\nmat te</w>\nðŁĮ »</w>\nit er</w>\ntal lest</w>\nby ron</w>\ncap tiv\nje su\nany ways</w>\nflag ship</w>\np ton</w>\nwe y</w>\nfay ette</w>\nfinanci al\nf oul</w>\nsolom on</w>\njenni fer\ncucu mber</w>\nar gue</w>\ntex tile</w>\nwrest ler</w>\njohn ston</w>\npa stor\nðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃ\ncac tus</w>\nedi ble</w>\nre served</w>\nric hie</w>\nmet res</w>\ningredi ent</w>\nh ella</w>\nun to</w>\nch ol\ncele bs</w>\npo ets</w>\ngra ham\nhay den</w>\ncoinci dence</w>\nb aw\ncommunic ate</w>\nflet cher</w>\n/ -</w>\ntole do</w>\necu ador</w>\ncoun sel</w>\ns laughter</w>\nline ar</w>\nat p</w>\nos u</w>\njo el\nev ed</w>\nconqu er</w>\nru stic</w>\nplic ity</w>\nrecogn ise</w>\nroom mate</w>\ncr acked</w>\njas per</w>\nph er</w>\nðŁĮ º</w>\nwo ven</w>\nmo ist\nff c</w>\nste ering</w>\nni sh\nstand ings</w>\nfrequ ent</w>\nar di</w>\nhaz el\nas msg</w>\nbau m</w>\nd art</w>\nsi dd\nnat h</w>\nch ero\ncard board</w>\nc ss</w>\nn sfw</w>\npa ir\nðŁĺį ðŁĺĺ</w>\noccur red</w>\nhomeless ness</w>\nmal one</w>\nph e</w>\nxi a\npad dy</w>\ndecl are</w>\ntheat re\nb f\nper sian</w>\nta d</w>\nax e</w>\nsusp icious</w>\nlam b\nmu cho</w>\nsen ior\nst as</w>\nk ite</w>\nst ing\ngra d\nk af\nwat ering</w>\nØ ¯\nspi ral</w>\nth ms</w>\neduc ator</w>\njer ome</w>\nof c</w>\nclo ck\nsu l</w>\npe mb\n.... .....</w>\npark way</w>\nde aux</w>\nrestric tions</w>\nm ons</w>\nneed le</w>\ne j\nle agues</w>\nwater melon</w>\nam an\npl enary</w>\nmax im\nw ab\ncoming soon</w>\nbry ce</w>\nvi gil</w>\nsuper market</w>\nfortun ate</w>\nturquo ise</w>\npresi dent\nli v</w>\ninter ns</w>\nfeel in</w>\nfix tures</w>\nstun t</w>\nst aged</w>\npremi eres</w>\nlo k\nprac titi\nshor tage</w>\nlog ne</w>\nve c\ncon cor\nroc ke\nli g\ncom posed</w>\nsyn thetic</w>\ndi p\ncam ila</w>\nch is\nj ou\nsu san\neye brows</w>\nsupp lement</w>\nsatis faction</w>\nmoham mad</w>\nti bet\nhouse of\npu n</w>\nas sam</w>\nshado whun\npsy ched\nse duc\nmand atory</w>\nher bert</w>\nsc allo\nstream ers</w>\nproto col</w>\nblock buster</w>\nproduc es</w>\nsch nei\nlau rel</w>\ntri be\ntime hop</w>\npl a</w>\nmod elling</w>\ntv time</w>\nmtv stars</w>\nwi dow</w>\nme tric</w>\nch am</w>\ncon do</w>\nflow ering</w>\nale c</w>\nd ms</w>\ninten sity</w>\nÂ ¨\nmccar tney</w>\nislam abad</w>\nk b</w>\nf fi\nph al\nanal og</w>\nf ond</w>\nh acks</w>\npositi vity</w>\ntreat y</w>\nsub marine</w>\nconne ct</w>\nsel en\ncategor ies</w>\ncu b</w>\norgani ze</w>\nsi k\nquote oftheday</w>\nremin ding</w>\nam or\nloc king</w>\nðŁĳı ðŁı¼</w>\ncomp ound</w>\net te\nb out\nrec ur\nfe rence</w>\nmi zz\ntren d\nhip ster</w>\nfor tress</w>\nforth coming</w>\npreli min\no dyssey</w>\nang p</w>\ndel ici\neven ings</w>\nðŁĶ ¹</w>\ni q</w>\nd w</w>\nda ir\nkathr yn</w>\nchristian ity</w>\nmoon light</w>\nha b</w>\nwh oo\nf bf</w>\nse th\ngenu inely</w>\npa x\nchar ity\ndeplo yed</w>\nb nb</w>\nbu cs</w>\nju dg\ncon ge\nplant ation</w>\nim press</w>\ncar a</w>\nsc lub</w>\nsco py</w>\nland ers</w>\ncompla ints</w>\nb ama</w>\nre build</w>\nx y\nreal ism</w>\nsh our</w>\nle in\nbrac elets</w>\nmer a</w>\nassas sin</w>\nan chor\nðŁĳĮ ðŁı¼</w>\nlin en</w>\ncon fron\nchronic le</w>\ncomm ent\ncat alog</w>\nil les</w>\ngor ge</w>\nme try</w>\njung kook</w>\nlove my\nsent in\nse em\nfit ness\nalli ed</w>\nts man</w>\ndigital transformation</w>\npr an\nlo ft</w>\nmin ton</w>\nalden richards</w>\nen vel\ncher ish</w>\ncertain ty</w>\nzz z</w>\nrhin o</w>\nper kins</w>\nen rich\ncape town</w>\nome ter</w>\nsec tions</w>\nske leton</w>\ndef enders</w>\nðŁĺ Ŀ\npen c\nbri t</w>\nja h\ncapital ism</w>\nðŁ¥ ĩ</w>\nbaz aar</w>\nre me\nex t</w>\nkk k</w>\nconver t</w>\nstor my</w>\nb ye\nkar an\nchry sler</w>\nad os</w>\npre ssed</w>\nsyn c</w>\nation day</w>\ndang er\nbad ges</w>\nrefu ses</w>\nem powering</w>\nly m\nex ports</w>\nadoptdont shop</w>\nðŁĩ ¯\nth c</w>\nawa ited</w>\nfocu ses</w>\nfin ed</w>\no at\nhaha hah</w>\nâģ ©\nn family</w>\nfi ona</w>\nluck ily</w>\nthr illing</w>\nty ping</w>\nout break</w>\ndi es\nhe u\ncraw l</w>\nne sses</w>\no ath</w>\nscri pts</w>\ngee ks</w>\nðŁĲ Ŀ</w>\np b\nmathemat ics</w>\nal is</w>\n________ ________\ngymna stics</w>\nacti vism</w>\nrecommend ation</w>\ngre n</w>\nwa in</w>\ncour ty\nn apol\ncau li\nhor nets</w>\ng als</w>\njo ckey</w>\ndir ty\nat ar\nenor mous</w>\npe st\ngreg ation</w>\nan os</w>\nii ii\ndef ends</w>\nblack historymonth</w>\nat x</w>\nmb c</w>\nlugg age</w>\nwit ch\nco b\nla sts</w>\ncu m\ngg g</w>\nba thing</w>\nn ar</w>\nce bu</w>\nðŁį ĥ</w>\nnavig ation</w>\nmin e\nre jo\nðŁİ Ģ</w>\ngif tide\nre ta\nuse less</w>\npu ll\ndefic it</w>\nal lu\nati me</w>\nit v\ntr illion</w>\npu e\nac ies</w>\nproce dure</w>\nl ori\njen ny\nc ad</w>\nul ously</w>\ndr ac\npromo tes</w>\ning the\ncan u\nwoo hoo</w>\nna omi</w>\nzar dari</w>\nts u</w>\nbe ir\nsd g</w>\nle ver\nwe ber</w>\nab ud\nlun d</w>\ncrow ded</w>\ndeplo yment</w>\nter rain</w>\nken ny\nho f\nwitne ssed</w>\nlo ch\nj k\nbul ly</w>\nw ren\npoe try\ndo ff</w>\nww i</w>\nmo red</w>\ndin i</w>\ncul ture\npromp t</w>\nÂ ¥</w>\nmaur ice</w>\nto pps</w>\nr m\ncor respon\nab out\njewel s</w>\ngi br\neag le\nðŁĺĺ ðŁĺĺðŁĺĺ</w>\nl ending</w>\nsou ven\nç Ķ\ncontemporary art</w>\nestabli shment</w>\nj ong\nâĢ¦ \"</w>\ngat or\npatri otic</w>\nmc coy</w>\nv ape</w>\nhuman e</w>\nfeli z</w>\ncoach ella</w>\nre posting</w>\nste als</w>\nfu ller</w>\nn ering</w>\nat ra\n( -</w>\nbla ke\nhe ather\nwor ms</w>\ndiscipl inary</w>\nrede mption</w>\ny ard\nam in</w>\n\" @_</w>\nd nc</w>\nt ds</w>\nk appa</w>\nne wark</w>\ncomm its</w>\nspe ars</w>\nj ams</w>\nt and\nmsn bc</w>\ninter medi\naim ed</w>\nat ic\nteen th</w>\nobserv ation</w>\nkash mir\nkavan augh</w>\nou l\nsan francisco</w>\nre u\nbel ated</w>\ncho w\npass word</w>\nst ills</w>\ndeta ined</w>\nsar i</w>\nday ton</w>\ndar ren\nitali an\nar th</w>\namu sic</w>\nar bit\nw m\nv m</w>\nhe m\ndou g\nmy r\na sho\npre v\nvin d</w>\nbra h\nsta g</w>\nà¸ µ</w>\npre views</w>\ngu k</w>\ncon taining</w>\nleon ardo</w>\nsad dle</w>\nru shing</w>\nst av\nlon gh\ngam bling</w>\nve gas\nreserv ation</w>\nend ale</w>\nbal a</w>\nfl a</w>\nvari ant</w>\nhe dge</w>\nbulgar ia</w>\nnat ali\nwe aver</w>\nsol st\nencoura ged</w>\nap c</w>\nas parag\nne st\ncycli sts</w>\nfe l</w>\nìĬ ¤\noverwhel ming</w>\npey ton</w>\nj it</w>\na post\nmb le\nble eding</w>\nneighbour hood</w>\na very</w>\nexpre ssions</w>\nmac donald</w>\ngi gs</w>\nmon ds</w>\nillu sion</w>\nn ct</w>\ncam ero\nover head</w>\nmy th\nol y\nvi o</w>\net v</w>\nlau rie</w>\nunve iling</w>\npri or\ncon n</w>\niron man</w>\ndi ff</w>\nday in\ncrit ici\ncon go</w>\nre vision</w>\nwal e</w>\ndirec tor\np ines</w>\nblack pink</w>\ngar ner</w>\ncur ated</w>\nmanit oba</w>\nh ac\ncommon ly</w>\nbar ton</w>\n.... #</w>\nmor tality</w>\nlive smatter</w>\nphilos op\nshor ter</w>\ncon vince</w>\nfre ak\nvend ors</w>\ninsi ghtful</w>\nel ly</w>\nsens ors</w>\ne led</w>\ns berg</w>\nweight loss</w>\nu kip</w>\nsp ur</w>\npriv ate\nqu a</w>\nss c</w>\n, ...</w>\nsupervis or</w>\nadvis er</w>\namaz ingly</w>\nless er</w>\nat es\nmah on</w>\noooo oo</w>\nsar as\npmo india</w>\nwaff le</w>\nun ders</w>\ntoler ance</w>\nsculp tures</w>\nher sh\nkno cking</w>\nsmo ke\ncathol ic\ngri m\ntra veled</w>\nfli p\nge off</w>\ndinosa urs</w>\nsle pt</w>\nscar let</w>\nok i</w>\ncompla int</w>\nob sc\nnam i\nla g</w>\ncross fit</w>\nu fc\nmc cain</w>\nrefe ree</w>\nsad ness</w>\npen ny\nli eu\nmo de\nki er\nvol s</w>\nw is</w>\nel on</w>\nshe a</w>\nba o</w>\nson ia</w>\ncla ire\nem manuel</w>\nmoist ure</w>\ndi gest</w>\nvi ii</w>\nt eller</w>\nch on\naccess ory</w>\nnight club</w>\nfoss il\naw an</w>\nhu sky</w>\nab original</w>\nbrand on\nffici ent</w>\ncou gars</w>\nste d\nad mitted</w>\nigno red</w>\ncontent marketing</w>\nag as\nv ase</w>\nexecu ted</w>\nnegoti ations</w>\nshe ad</w>\nn and\ntab lets</w>\ngo th</w>\nts al</w>\nd fw</w>\non ep\nprotec tor</w>\nsp ho\ngaz ette</w>\nandre as</w>\nss er</w>\ncomp ilation</w>\nha v</w>\ncontain ers</w>\nbro ker</w>\nsoc al</w>\nporcel ain</w>\nhy uk</w>\nair ing</w>\nðŁĴ °\npubli sher</w>\nscen ario</w>\nspart ans</w>\nre viewing</w>\nitu des</w>\ned el\npear son</w>\nba sh\nmau i</w>\na ad\nðŁĮ Ĭ\nli u</w>\nul ate</w>\nprogram mes</w>\nfav our</w>\nweb design</w>\nreal ty</w>\nmotiv ational</w>\ncro sses</w>\n' ...</w>\nbus ch</w>\nadjust able</w>\nar jun</w>\nmist ak\ndimen sion</w>\npi stol</w>\nweigh s</w>\nen y</w>\nunve il</w>\nindy car</w>\ngor don\nf ade</w>\nfran ken\nqual ities</w>\nbet t</w>\nloc ate</w>\nker r</w>\nsp c</w>\nconfu sion</w>\nne e\nluck y\nbas es</w>\ndep ends</w>\nfire fighter</w>\nol a\nre t\nmar oon</w>\nðŁĶ Ĭ</w>\nw am\ndefin ing</w>\nwhe at\nbi l</w>\nÃ© s</w>\nb hai</w>\npsy ch</w>\nta u</w>\nic ans</w>\nthi k</w>\nob ile</w>\ninspec tor</w>\nìĨ Įë\nill on</w>\ngo s\nev angel\nfa i\nsi st</w>\nvoc ation</w>\nbur ge\nchi stan</w>\nrenew ed</w>\nenthusi asm</w>\nen ting</w>\nag ri\nike a</w>\nm sc</w>\naero space</w>\nsens iti\nmemo ir</w>\nhosp ice</w>\nco caine</w>\nder ry</w>\nmechan ics</w>\nĦ à¸\ntin o</w>\nreduc es</w>\ncollec tors</w>\nin justice</w>\nsupp re\nv ana</w>\nab un\nnap a</w>\nsu sa</w>\nos lo</w>\ne ff\nen core</w>\nlic ence</w>\nched dar</w>\nz al\nmoun t\nðŁĴ Ĳ</w>\nthreat ens</w>\n!! \"</w>\narchi e</w>\nfu tsal</w>\nscu ba</w>\njo s\ngn on</w>\nse xi\ns official</w>\ncompar ing</w>\ndomin ant</w>\ntof theday</w>\nfa it</w>\npropos als</w>\ngi ft\ny as</w>\ncn c</w>\nl r\nha b\nreser voir</w>\nbeli efs</w>\ngener al\nmar ti\nt d\nest e</w>\nì ł\nwi l</w>\nðŁĳ ¯</w>\nðŁĶ «</w>\nsp x</w>\net work</w>\nexcer pt</w>\ne instein</w>\nhir o</w>\nsil hou\nteam ed</w>\nper ception</w>\ncorri dor</w>\nmental health\nhin ts</w>\nben ny</w>\ninduc ted</w>\nsw x</w>\nwi desp\nspe ak\ncher yl</w>\ndru g\nðŁĺ ķ</w>\nh f</w>\nasparag us</w>\nmyster ies</w>\nfitz gerald</w>\noff er\ntherap ist</w>\ncare er\ndam aging</w>\nts d</w>\nper u\nwei bo</w>\ny ay\nphoeni x\ndisc re\nmac book</w>\nbar ker</w>\nstig ma</w>\nsp read\nroc kies</w>\nkang ar\nbri dg\npa i\nbi shop\nta iled</w>\ncapsu le</w>\nðŁĴ ĵ\nge of\nroy ale</w>\nshort listed</w>\no ste\nash amed</w>\nch app\nkey e</w>\ncl a</w>\nscreen shot\naustri an</w>\nnati ve\nen ight</w>\njuli et</w>\nmichel e</w>\nðŁĮ ´\ntravel ers</w>\npi l</w>\nfootball er</w>\nwin chester</w>\nðŁĻ Ħ\nazer bai\ngold eng\norganis ations</w>\ninterpre tation</w>\npredat or</w>\nofthe week</w>\nlo gan\npok Ã©\nmari e\ncal la\nt nt</w>\ncin de\nge tic</w>\nfit fam</w>\ngra v\now ens</w>\nðŁĮ ±</w>\nshoot out</w>\nsal is\ncommissi ons</w>\nco he\np tic</w>\nni xon</w>\nhi a</w>\namb ition</w>\nmar ine\ncruel ty</w>\nt k</w>\ncru de</w>\nsal ty</w>\njim a</w>\nmon go\nir ony</w>\non wards</w>\narre sts</w>\nstrang ers</w>\nig er</w>\ncycli st</w>\nra g</w>\nexten ds</w>\ntra dio</w>\nbour g</w>\nmo i\nel la\ne able</w>\nlex us</w>\nau l\nder a</w>\nhistor ian</w>\nmor ton</w>\nti ff</w>\nman ner</w>\nko t</w>\nd k\npo inted</w>\nmar qu\na an\nen ey</w>\ndu blin\non poli</w>\nem ili\nsecre t\nfl o</w>\nâļ ¡</w>\nba j\nste ep</w>\naccompan ied</w>\nrum ours</w>\ndev i</w>\npurch asing</w>\nfi g</w>\npu b\nsch oo\nautonom ous</w>\ngo alie</w>\nx ia</w>\nautom atically</w>\nre vers\nter o\nfu ku\ntitan ic</w>\nshoo k</w>\nsand als</w>\nsee kers</w>\nexc av\nnor dic</w>\nbigo live</w>\nba ke\nr att\nz ak</w>\nne p\nðŁĺ ¤</w>\ncand y\nbilli ons</w>\nbook worm</w>\npp et</w>\nà ³\nsur faces</w>\nsc ars</w>\nphil ip\ndo gg</w>\nci gars</w>\nco te</w>\ntransl ated</w>\ncur ator</w>\nsin dh</w>\nhan gover</w>\nbre wer</w>\non es\nel ton</w>\nðŁĴª ðŁı¼</w>\nmar cu\nelli ot</w>\nrigh te\ndi oce\nru ss</w>\nrail ways</w>\ngrand son</w>\nas cen\napo logy</w>\nawa it</w>\nmob ili\nre spir\nparti san</w>\noli vi\nstri ke\nyo o</w>\nwhite house</w>\nexpre ssed</w>\npu ps</w>\nbed ford</w>\ncul tur\nfro gs</w>\nfly ing\ncav ali\nc ds</w>\nfri ger\nstreet photography</w>\nre solve</w>\ntali ban</w>\nkan g</w>\ncru shing</w>\nju m\nðŁĺ Ĵ\nwilliam son</w>\ntan g</w>\ncur ly</w>\nt man</w>\nveter an\nfa ire</w>\nartificial intelligence</w>\nun anim\npre n\nback drop</w>\nfr ances</w>\noc cer</w>\ndoro thy</w>\nwork ing\nar thr\nconver ted</w>\nday light</w>\nserv ant</w>\npad dle</w>\ncompla ining</w>\nthir ty</w>\nnad al</w>\nak u</w>\nibra him</w>\nad dressed</w>\np iss</w>\ngreen house</w>\nbatt alion</w>\nsi mulator</w>\nout lets</w>\nembroi dery</w>\nðŁĵ ±</w>\nfis cal</w>\nger ard</w>\nsas sy</w>\nðŁİī ðŁİīðŁİī</w>\nvent ures</w>\nmer it</w>\npublic ity</w>\nðŁĳ Ī</w>\nsophistic ated</w>\nc tu\nconven tional</w>\ncondol ences</w>\nisra el\ntra dition\nar an\nte ss</w>\ngla d\nðŁĺĬ ðŁĺĬ</w>\ncorrec tion</w>\nge on\nam d</w>\nor ship</w>\nbe ast\nch ment</w>\nì ŀ\nnic o\nwk nd</w>\nwel s</w>\ncushi on</w>\nbeli e\nvo c</w>\nidio ts</w>\nunder neath</w>\npu ma</w>\ncorn ell</w>\nen ation</w>\nlu l\nswa ch\nab ig\nu rer</w>\nmi e\nform erly</w>\nca f</w>\ner nal</w>\nchor us</w>\njuli us</w>\nsen ator\nâľ į\nwh ir\nsalv ador</w>\nph d\nuni fied</w>\nboo ster</w>\ngraph ical</w>\nw rec\nson ny</w>\nmi z\ndere rs</w>\ns all</w>\nven s</w>\ntusc any</w>\nwi d</w>\ny ong</w>\nkur ds</w>\nw az\ntrol ls</w>\nmac ro\ncat urday</w>\npre ssing</w>\nsa sha</w>\ncent ennial</w>\ngu sts</w>\nem c\nbe fore\nden ise</w>\ncu st\nðŁĵ ¢</w>\nlo oo\nbase l</w>\neng land\ny olo</w>\nar du\nmanife sto</w>\ndo ha</w>\nì ľ\nkni ves</w>\nbourne mouth</w>\nbi bl\nbar b</w>\nal icia</w>\nØ ©</w>\ncom er</w>\ncycl one</w>\ng it</w>\nane ws</w>\ncharacter i\nvent ura</w>\nin tra\nsf giants</w>\nhu t\nbe a</w>\ndar win</w>\nell er\nal v\nre ese</w>\nbl y\nkar an</w>\nconclu sion</w>\nman ny</w>\nfla kes</w>\nunite blue</w>\nnad u</w>\nco pp\ned ges</w>\nlanca shire</w>\ni als</w>\no tta</w>\nphilipp e</w>\nl ent\nche e</w>\nment ors</w>\nfesti val\nan ism</w>\ncompli mentary</w>\nr j</w>\npu g\nd ine\nwe i</w>\ncli ffs</w>\nsar my</w>\nti veness</w>\ntreas ury</w>\nil and</w>\nafter math</w>\nrabb i</w>\nou n</w>\nbou quet</w>\nherit age\nzi on</w>\nsur render</w>\nshen an\nin ks</w>\nkar l\ngh ty\npol icing</w>\nexam ination</w>\nce y</w>\nper su\nmeasure ment</w>\nhydro gen</w>\nlu han</w>\nâłĢâłĢ âłĢâłĢ\nwar i</w>\nÐ¾ Ð\nj y\nfow ler</w>\nmis h</w>\nal fre\nâĺ ĳ\nbb naija</w>\ncat alogue</w>\nrecogn ised</w>\nsa ver</w>\nhu skies</w>\ncol in\nmun do</w>\nsi va</w>\np ng</w>\ndiscoun ted</w>\nman utd</w>\nfre sno</w>\nde vin</w>\nprelimin ary</w>\ntro phies</w>\npla stics</w>\ndu g</w>\npro cu\nindi go</w>\ng ard</w>\ndy lan\npit ches</w>\nground breaking</w>\nin son</w>\nbl ac\nan thology</w>\nf h</w>\nexpl ic\nr ard</w>\nadmi ral</w>\nso chi</w>\nla shes</w>\nsplen did</w>\nen vy</w>\nad v</w>\nsex y\nfestiv ities</w>\nstic king</w>\nbi b</w>\nthr ill</w>\nop p</w>\nari el</w>\nbotan ical</w>\nendur ance</w>\nfe males</w>\nbr icks</w>\nvat ican</w>\nblack pool</w>\nber mu\nbr ough</w>\nroll er\nbi d\nsue de</w>\nsloven ia</w>\nmm ing\nml b\nmed alist</w>\ndi ans</w>\nrehabil itation</w>\nne on\ns go</w>\nli thu\nram os</w>\nz ed\npi anist</w>\ninten sive</w>\nbroad band</w>\nstu dy\npeter sburg</w>\nlu ca</w>\nah hhh</w>\nphys ician</w>\ndill on</w>\ntele com</w>\ngri ef</w>\nmu n</w>\nac ro\nsi ded</w>\ns ly</w>\nblo ws</w>\nclassic cars</w>\ntri um\nar gy\n? :</w>\nh ri\nmarsh mal\nâĢ ĵ\nto pping</w>\nwar saw</w>\ntran sc\npreserv ation</w>\nb av\nre friger\nexperim ents</w>\nä º\ngl it\nsli ga</w>\ng age</w>\nfac tor\nflav ours</w>\nbr ony</w>\nsp o</w>\ncook book</w>\ncarri age</w>\naw ay\nny fw</w>\non ian</w>\nw g\nsimp sons</w>\nro lex</w>\nðŁı ¿</w>\ncro sby</w>\nãħ ¤\ncre di\nsyn dic\npu bs</w>\nali fe</w>\npoor ly</w>\nmac ed\nðŁĺ ŀ</w>\nbehin dthe\nw enger</w>\nn ats</w>\nðŁİ Ł</w>\nrubb ish</w>\nprocedu res</w>\ntypho on</w>\nopho bia</w>\ner do\nfu el\nvi era</w>\nbu mps</w>\nmillenni um</w>\nnew zealand</w>\nlec tures</w>\nit on</w>\nmil ky</w>\nrespon ded</w>\nê °\nlandsc ape\n.. @</w>\nbo ther</w>\nâĸ ¶</w>\nz hang</w>\nhuawe i</w>\ntu ition</w>\ns worn</w>\nin u\ny or</w>\npa olo</w>\nau ditions</w>\nab il\nmalay sian</w>\nho ps</w>\nfe athers</w>\nmp le</w>\nau ts</w>\nÃ£ o</w>\nboun ty</w>\nic he</w>\nì ĺ\nsh q</w>\npin ot</w>\nge ars</w>\ndisapp ear\nvideo games</w>\nt na</w>\nalzheim er</w>\nðŁĮ ŀ\na ji</w>\nunder wear</w>\nswit ching</w>\nsign age</w>\no scar\nec on</w>\ndro w\ncl int</w>\npl ated</w>\ngun dy</w>\nemb lem</w>\nho es</w>\nici st</w>\nnel ly</w>\njuni or\nroad show</w>\nminer als</w>\nat le\nalexand ria</w>\nac claimed</w>\nv ell\nshi va</w>\nad he\nen ne\namne sty</w>\nh ounds</w>\ncouncill or</w>\nðŁĴ ¦\naes the\npart nering</w>\ninflu enced</w>\nmag no\nfl are</w>\nextin ction</w>\ncivil ian</w>\nmaje sty</w>\nva il</w>\nlaw makers</w>\nrac ks</w>\nmc c</w>\nori an</w>\nsp ices</w>\ner rors</w>\nmay er</w>\nco ca</w>\npa i</w>\ns ooooo</w>\nreti ring</w>\nba thro\nðŁĻĮ ðŁĻĮ\nâĸ ª\nsu f\nendor sement</w>\nbuil ding\nbroo ch</w>\npal la\narvin d\nag ent\nkar ate</w>\nr hi\nc tv\nta ine\num m</w>\nba x\nreig ns</w>\nuni of\nenterpri ses</w>\nadel e</w>\nfla ke</w>\nat tire</w>\nbru ce\nba hamas</w>\ngra vy</w>\nsa in\nche ek</w>\ntri vi\nlo v</w>\ne en</w>\nbb lo\nlady gaga</w>\nitt a</w>\n. \"-</w>\ndu stin</w>\nobserv atory</w>\neigh th</w>\nbloom berg</w>\nkh s</w>\nf cc</w>\ngi st</w>\ncommemor ate</w>\nve er\nsexu ality</w>\ned c</w>\nnic ole\nvac ancy</w>\nu ser\nson a</w>\n:' (</w>\ndipl oma</w>\nt end</w>\nup grades</w>\nÅ Ł\njura ssic</w>\ncardi ac</w>\ndr s</w>\nwidesp read</w>\nÃ ł</w>\ndail ies</w>\nvend or</w>\nsim plicity</w>\nwi der</w>\nlen ses</w>\nsupp lements</w>\nde pos\nob served</w>\nvin es</w>\nparti ally</w>\nrenew al</w>\ncollabor ate</w>\nali g\nfin ity</w>\nph u\nzz y\npe tit</w>\nðŁĵ ħ</w>\nz in</w>\ni gu\nsm ack\nfall on</w>\nðŁĵ £</w>\nback wards</w>\ncomp onent</w>\no so</w>\ncompati ble</w>\nbin ding</w>\nzur ich</w>\nthom e</w>\nw ounds</w>\nly ric</w>\nfresh men</w>\nsne aky</w>\nfi bro\ndi et\nemplo yer</w>\nin sect</w>\nh ated</w>\nsch er</w>\nraz or</w>\nn sw\nboo ker</w>\ncalifor ni\nav fc</w>\nÂ °\npreten ding</w>\npep si</w>\nal is\nun titled</w>\nk art</w>\ngrand parents</w>\ne the\no ck</w>\nlux emb\nvisu als</w>\nsmall business</w>\nabdul lah</w>\nmin ho</w>\nsu baru</w>\nh ra\nreve aling</w>\nheart breaking</w>\nclar ity</w>\nam g</w>\nsl r</w>\n** **\nâŀ ĸ\nrecor d\nici ary</w>\nmin ded</w>\nye h</w>\nexce ssive</w>\nknu ck\nicec ream</w>\ntru th\nev ic\nta stic</w>\nant arc\nren dering</w>\n, ,\nmit t</w>\nloren zo</w>\nst patrick\nbound ary</w>\nzi g</w>\nvo cab\nosa ka</w>\nfur n\ntu n</w>\ngu l</w>\ns ounding</w>\nblo gger\nutter ly</w>\ng af\nadv ancing</w>\nl cd</w>\nmar gin</w>\nlifel ong</w>\nsolst ice</w>\nsh ra\nwa its</w>\nple ar\nbre ach</w>\nen ligh\nad er</w>\nitt le</w>\nc ation</w>\nho on</w>\nstu died</w>\n?? ???</w>\nk ash</w>\nev angeli\nps l</w>\nwei ghts</w>\nmet als</w>\nty res</w>\ntur no\nwi e\ncar b</w>\ng ale</w>\nse al\nsun ite</w>\nam ic</w>\npatter son</w>\nÃ¡ n</w>\neu ph\nup stairs</w>\nquali fiers</w>\nkhali fa</w>\napple music</w>\nìĨĮë ħ\nvau ghan</w>\nal ter</w>\ncru iser</w>\nmu a</w>\nt ana</w>\nkat rina</w>\nid ols</w>\nspo iled</w>\nsecre tly</w>\nfi bre</w>\npart nered</w>\num es</w>\ngi ov\ncom et</w>\nscreenshot saturday</w>\nk eller</w>\nfil tr\nfe t\ncon way</w>\npe u\nbad minton</w>\ngi d</w>\nm ound</w>\ndon key</w>\nbu ff</w>\nlea ther\nlar gely</w>\nbro ch\nint ments</w>\nam use\nr k</w>\nsto ve</w>\nimpac ted</w>\ncon t</w>\ncr acks</w>\nprison er</w>\nbar i\ncontrac tor</w>\nori oles</w>\ndomin ate</w>\npol ar\nam elia</w>\ndr c</w>\nðŁĳĮ ðŁĳĮ</w>\nvi st</w>\nsu arez</w>\ninjec tion</w>\nblo oms</w>\nðŁļ¨ ðŁļ¨</w>\nsti ff</w>\npay pal</w>\nsno wing</w>\nthur sdays</w>\ngoo se\nwe dge</w>\neduc ated</w>\nweak ness</w>\nde cker</w>\nabud ha\nbree zy</w>\nÛ Į\nhope ful</w>\no bi\nrai der</w>\ngh am\nde u\nse ve\npar tly</w>\nfu t\ninfu sed</w>\nmer ri\nthan e</w>\nsome time</w>\nhu e</w>\nme in</w>\ncre dit\nsli ding</w>\nran de</w>\ncher ry\ndead pool</w>\nsh ol\nar am</w>\nunder wood</w>\nsky e</w>\ndistur bing</w>\nm nt</w>\npoli shed</w>\nguardi ans</w>\nha dn</w>\npic asso</w>\nari us</w>\nak shay\nir ri\nj h</w>\nhapp en\nla kh</w>\ndal ton</w>\nat the\ns well</w>\nmar sha</w>\nre h\ncour s</w>\nj kt</w>\ntop us</w>\nserv ice\nr ink</w>\nhack ers</w>\ndono van</w>\nhor o\ntc m\nmay hem</w>\ncha se\ndev ops</w>\nken sing\nsc up</w>\nsh ere</w>\nquali fication</w>\nc live</w>\nton g</w>\nn ancy\nmar is\nder dale</w>\nber man</w>\ncinde rella</w>\njol ly</w>\nci c</w>\nloo t</w>\ncollecti bles</w>\nhom icide</w>\ng ge\nepide mic</w>\nsu ites</w>\nmu ddy</w>\ngi mme</w>\ne rec\n- *</w>\ntal la\nlis le</w>\nembro ide\nðŁĩ© ðŁĩª</w>\nveriz on</w>\nve ctor</w>\nbe anie</w>\narti san</w>\nga in\nflo res</w>\nvi gil\nu so</w>\nðŁĻı ðŁı½</w>\ngrin ding</w>\ngh er\nair ports</w>\nrespon sive</w>\nshaf t</w>\ncan cel</w>\nceremon ies</w>\ne me</w>\nat ari</w>\nbru shes</w>\neag er</w>\nbo hemi\nchildren s</w>\nyan kee</w>\nma a</w>\nsuspen se</w>\nmor an</w>\nmac ar\nsun flower</w>\ncre w\nvo id</w>\nke ar\nfashi oned</w>\njen nings</w>\nsunday funday</w>\nsub missions</w>\nme ad</w>\nher man</w>\nwa i</w>\ncrit ically</w>\nle um</w>\nbaek hyun</w>\nfor cing</w>\nco bra</w>\nãģ ®\nacqu ire</w>\nal k</w>\nge ology</w>\npri mar\nimport antly</w>\nire z</w>\nbunde sliga</w>\ncuri osity</w>\nsen a</w>\nstric t</w>\ncon soli\nwin ters</w>\nven om</w>\nchelten ham</w>\nðŁį º</w>\ncen a</w>\nt at</w>\nba in</w>\nglo ver</w>\nunder cover</w>\nas ses</w>\ncar n\nmemorial day</w>\nam eli\ni rene</w>\nch on</w>\nsyn thesis</w>\nspe edy</w>\nmitsu bi\nsla yer</w>\ncompos ite</w>\nunder stands</w>\npe w\ninter rup\nhen ri</w>\nmor row</w>\nan om\nthof july</w>\ng lee</w>\nthre e\nðŁĺ ®</w>\nand hi</w>\nch att\nrenew ables</w>\nye s\ntrans fers</w>\n!!!! !!!!</w>\nbab u</w>\ndu ter\nlo ops</w>\npe ers</w>\no ilers</w>\npau lo</w>\nic ation</w>\nh mu</w>\nwar a</w>\nmer cer</w>\nhom eland</w>\nfu ji</w>\nale y</w>\nyear book</w>\nre m</w>\nre en\nab sur\nbo is</w>\n] :</w>\ncaes ar</w>\nshot gun</w>\nkur dish</w>\no ren\nra e\nanci es</w>\nty pic\nf h\ndef ault</w>\nre plic\nlu k</w>\ntrans actions</w>\nr ys</w>\ninfan try</w>\nðŁį ¾</w>\ncho w</w>\nchick ens</w>\nba gh\nwy att</w>\nay e\ngg i</w>\nbre ws</w>\ned itions</w>\nmi ra\ncommen cement</w>\npre su\nperis cope</w>\nic hi\nguatem ala</w>\nzam bia</w>\npain ts</w>\nwit ches</w>\nwan i</w>\nun dere\ncro y\nvo ws</w>\nus mc</w>\nhear ted</w>\ntheat res</w>\nshu ffle</w>\nle vel\nmul tic\nsquee ze</w>\nfer n</w>\napp et\npost al</w>\nmal t</w>\non board</w>\nld nt</w>\nco o</w>\ns sc\nk ac\nðŁĺ ĩ\nsc rap</w>\nmar cos</w>\ndeal ers</w>\nann u\nmill er\nco ve\nul ary</w>\nvladi mir</w>\nbe ef\nth ur</w>\npick led</w>\nse same</w>\nbengal uru</w>\nmo tt</w>\nkathle en</w>\nhi st\nno tor\ndr ank</w>\ndu chess</w>\nsnow fall</w>\ne ff</w>\ntin y\nj n</w>\nsy our\nspeci alists</w>\nscot us</w>\nbay lor</w>\neve rest</w>\nmali bu</w>\npre m</w>\nharm ful</w>\nl ali\nb ates</w>\ng ye\ndifferen ti\nand ra</w>\ngeome try</w>\nel over</w>\nblack out</w>\n== ==\nko ta</w>\ninter act</w>\nasi an\nla yo\nsamu rai</w>\nfi del\nexhau sted</w>\ngla di\npd t</w>\nspher ic</w>\nanti qu\nguit ar\nstu ri\nho pper</w>\nang le\nf ills</w>\nsla p</w>\nmi th\nrod ney</w>\nong i</w>\nin som\npre venting</w>\ncassi dy</w>\nap ho\nore gon\nlo in</w>\nham mond</w>\ncontribu ting</w>\nf n</w>\ngar ri\nori on</w>\ncomp elling</w>\nescap ing</w>\naim ing</w>\nplu mb\nbi stro</w>\nbe asts</w>\nconcer ning</w>\nbo e</w>\ndo pp\nshop local</w>\nstumb led</w>\nâĤ ¹</w>\nnaz is</w>\nâĢįâĻĤ ï¸ı\ngest ure</w>\nwar ts</w>\nus open</w>\nhi ggins</w>\nchar li\nhang s</w>\nbom bers</w>\n° :</w>\nfe eds</w>\nc ch\nst il\nnic ola</w>\nðŁĵ º\nclam ation</w>\ntro pic\naf ro</w>\nou k</w>\nexpen ses</w>\nder rick</w>\nal ine</w>\nfa w\nreg ard</w>\nim er</w>\nsat in</w>\nthi um</w>\nry der</w>\npear l\nte ss\nmm mmm</w>\nsen ses</w>\nðŁĩ ¹\npositi ve\nexhau st</w>\noccu r</w>\nnor ris</w>\nlil ly</w>\nis les</w>\ndirec ting</w>\nyo fficial</w>\ncount less</w>\nsam ar\non stage</w>\nflo ck</w>\nmir rors</w>\narch er</w>\nmo i</w>\nk d\nvi v\nin os</w>\nsi kh</w>\nle i</w>\nsen sory</w>\nbr its</w>\nkno x</w>\nchest nut</w>\nop y</w>\ncoli seum</w>\nz af\ndi vin\nadap ter</w>\n:) ))</w>\ntem ple\nku n</w>\nhel mets</w>\nt df</w>\ngu ide\nm old</w>\no ids</w>\nlu ther\nhe is\nmonaster y</w>\nsp ree</w>\nk lu\nbrit ney</w>\njagu ars</w>\ngre ats</w>\nc cc</w>\nky rie</w>\nmachin ery</w>\ncric ket\nre ro</w>\nab o</w>\naspir ing</w>\nsemi finals</w>\nale ss\nsig natures</w>\nvar d\nme th\nher bal</w>\nhol den</w>\nking dom\nap or\nreg gie</w>\nore o</w>\npalestin ians</w>\nem mys</w>\nsec tional</w>\nro i</w>\nney mar</w>\nqu el</w>\ncu ll\nl ka</w>\nhaz el</w>\nestim ate</w>\nul ties</w>\ngo w\nbe a\npurch ases</w>\nbel ts</w>\nprotec ts</w>\nm Ã©\ngue ssing</w>\nbb o</w>\nclau dia</w>\nfr acking</w>\njon ny</w>\nel k</w>\ncel tic\nal mighty</w>\nra je\ncourty ard</w>\nig i</w>\ncan es</w>\nðŁĴª ðŁı»</w>\nbank rup\nle thal</w>\nâľĮ ï¸ı\ngraphic design</w>\nvad er</w>\npenc ils</w>\nrough ly</w>\ndan te</w>\nm fg</w>\nconst ell\ncam el</w>\nj b\nbloss oms</w>\nen to\nbalo chistan</w>\ncine mato\nill ard</w>\njer sey\ncon sent</w>\ndent ed</w>\ncon templ\nsch er\nhol i</w>\nlou gh\nst our</w>\na yo\nbegin ners</w>\ncur b</w>\nv hs</w>\na jax</w>\ndu ff</w>\nav eng\ndom est\ncommit ting</w>\nai red</w>\ncha p</w>\nhedge hog</w>\ndisappo inting</w>\nfreel ance</w>\nin land</w>\nchar ms</w>\nðŁĺį âĿ¤ï¸ı</w>\nai sh\nm x\nbuck le</w>\nti dal</w>\nper mit</w>\nbo ating</w>\nra cha\nkend rick</w>\nb ello</w>\nb hi</w>\nple a</w>\nestim ates</w>\nl b\napo logies</w>\njay a</w>\nbb l</w>\nast oni\ninter state</w>\nmain taining</w>\nel bow</w>\nmu p</w>\nep it\nðŁĺ ¡\nviol ations</w>\ndef end\nbe h\nsl c</w>\nam ir</w>\npur i</w>\nti um</w>\nfi fa\nblur ry</w>\nscri m\nðŁĻı ðŁı¾</w>\nma ple\nrel atives</w>\nâĺ Ŀ\ncho c</w>\ncon nor\nâľ¨ âľ¨</w>\nwhi sp\nlist ings</w>\nma ze</w>\nthan king</w>\nri dd\ngrass roots</w>\nshi fting</w>\ndesper ately</w>\ngor illa</w>\nden i\nju les</w>\nstra th\ng ley</w>\nja in</w>\nbu ick</w>\nt anner</w>\nðŁĴ Ŀ</w>\nga e</w>\npri m\nit ors</w>\nn ano</w>\nsepar ation</w>\narmen ia</w>\nbor deaux</w>\nðŁ ħ\npj net</w>\nbu rial</w>\ne bon\nglo ss</w>\nre new</w>\ngri er</w>\nspe eds</w>\ncomic books</w>\nsym boli\npur poses</w>\nãħł ãħł\nspati al</w>\nno table</w>\nci on</w>\nn ps</w>\nho ffman</w>\nnor man\nrt g</w>\ndu sty</w>\nsitu ated</w>\ntr an</w>\nk fc</w>\nem en</w>\nnic kel</w>\nhast ings</w>\nsett ling</w>\ngr it\nl ena</w>\nw aw\nart s\ngu m\nca regi\nle wis\nsapp hire</w>\nrememb er\nembed ded</w>\nt lc</w>\nbl at\nserge ant</w>\nel sa</w>\nboot camp</w>\nbow man</w>\nphoto graphic</w>\npill ars</w>\ndirection ers</w>\nclassi fied</w>\nno is\nve er</w>\nbarre ls</w>\nwh oop</w>\nðŁĺ± ðŁĺ±\nfe male\npetro leum</w>\nmedi a\ne fc</w>\npokÃ© mon</w>\nà¤ ķ</w>\nenthusi astic</w>\nvar un</w>\npro files</w>\npedi atric</w>\nacci dents</w>\ncon rad</w>\njan g</w>\njo jo</w>\nac or\nob server</w>\nl f</w>\nlive stock</w>\nfor gi\nfo s</w>\nel m</w>\nan and</w>\ngo e\nc ere</w>\navoi ding</w>\ngri t</w>\nom an\nthank fully</w>\nscat tered</w>\nnick y</w>\ncylin der</w>\nchees y</w>\ndi ver</w>\nmahe sh</w>\ncav es</w>\near liest</w>\nqu inte\nsubjec ts</w>\nb end\ngul f\nvocali st</w>\nglu e</w>\npat ches</w>\nun stopp\nsny der</w>\ndemonstr ating</w>\npi o</w>\nhor ns</w>\nwic kets</w>\nand the\nr ama</w>\nyo on</w>\nstra ight\nbed time</w>\nor ang\nbul lets</w>\nsa urus</w>\nmin ers</w>\ninci dents</w>\n! ...</w>\nðŁİ ¸</w>\nag ers</w>\nhand les</w>\nstat es\nin ity</w>\nd ons</w>\nincredi ble\nemin em</w>\navi v</w>\nru dy</w>\nmoz art</w>\nfolk lore\nappli ances</w>\nmt l</w>\nfre y\ndi as\nhu a</w>\npage ant</w>\nstri ve</w>\nim prison\nbul lish</w>\nr ana</w>\nal erts</w>\nbb mas</w>\nhy per</w>\nderby shire</w>\nre cre\nre dd\ndebor ah</w>\ncosmo s</w>\nlaw son</w>\nmel anie</w>\npsy cho</w>\nho or\ndoo dles</w>\nsni per</w>\nshad y</w>\nman tle</w>\ncanadi an\nnew year\ninter actions</w>\nsepar ated</w>\ncor ds</w>\nspiritu ality</w>\nap u\nit o\np ct</w>\npel osi</w>\nrebel lion</w>\nse iz\nwor cester\nsec tors</w>\nul i</w>\nsan ta\nÐ µ\nðŁĩªðŁĩ ¸</w>\nbi ased</w>\nclass ical\ngam ma</w>\ndee plear\nemer ge</w>\nback er</w>\nsur ance</w>\nhand crafted</w>\nðŁİ ¥\nfranc is\nmill an</w>\nic i</w>\ncro wn\nwo w\nstri ped</w>\nun fair</w>\nrelax ation</w>\n³ ï¸ı\nembrac ing</w>\nshe alth</w>\npale o</w>\nmartin i</w>\ndist illery</w>\nwr ink\nor k\nna th\nhay ley</w>\ncour thouse</w>\nsi ber\nsa di\nquiet ly</w>\nmel t\nm sm</w>\nme h</w>\nsmart phones</w>\nrel ent\npp ing\nwar wick</w>\nco logne</w>\ngli a</w>\ncot ton\npro g</w>\nlon e\nip sw\nstar ters</w>\nexpan ds</w>\nu mp\nsu ed</w>\nski pper</w>\ninfe ctions</w>\ning le\nÃ ¡</w>\ncler k</w>\ndemonstr ate</w>\nac ar\nðŁĺĤðŁĺĤ ðŁĺĤ\nti bet</w>\nbun s</w>\nalo m</w>\ndemol ition</w>\nssi a</w>\ng st</w>\n[ ]</w>\nso ar</w>\nâĺ Ģ</w>\nðŁĺ ª</w>\nðŁĵ Ĭ</w>\ndee pest</w>\nbeyon d\nare t</w>\natt ends</w>\nactiv ated</w>\ndi mit\nâļª ï¸ı\nhigh lighted</w>\nmagaz ines</w>\nrum or</w>\naz za</w>\nsteph ens</w>\ndol ph</w>\nsho ckey</w>\nmat s</w>\nwe av\nmel an\nserv ers</w>\ntra um\nku sh\næ Ĺ\nbab ys\npa z</w>\na al\nla use</w>\nbreak ers</w>\ncanter bury</w>\nul ture</w>\nmi ri\neuro s</w>\ntane ous</w>\nimpre ssions</w>\ndu tch\nil d\ngh i</w>\npur due</w>\nadequ ate</w>\nl p\nsy ner\nang ler</w>\ndu rable</w>\ngal ore</w>\nro wn\nmg mt</w>\nðŁĵ Į</w>\nlu cia</w>\nâĺĳ ï¸ı</w>\nzay n\nbor row</w>\n. (</w>\nnorth umber\ncru sh\neng a</w>\nsu sh\nextra vag\nt out</w>\nma hal</w>\nali stic</w>\nther mo\ngall eries</w>\nes se</w>\nchi bi</w>\nattrac tions</w>\nlex ington</w>\nlegislat ure</w>\ndocu mented</w>\nresi den\nbrow nies</w>\nw f</w>\nst ool</w>\nplan ets</w>\nsho ppers</w>\nconduc tor</w>\nms p</w>\ntr icky</w>\nfru ity</w>\nend ra</w>\nfeel the\nwhi pped</w>\nhair style</w>\nre fer</w>\noo k\noc topus</w>\naudi ences</w>\nku mar\nafter no\nop tim\nc fl</w>\nni p</w>\ngen i\nalpha bet</w>\nann ab\nlam in\naccep ts</w>\nl ng</w>\nðŁĺ «</w>\nt ine</w>\nac om</w>\ncheer leaders</w>\nt k\ngr on\nv g</w>\nk ung</w>\nja x\ndha bi</w>\nr ss</w>\nmack enzie</w>\nbeir ut</w>\nclean up</w>\ngy psy</w>\nst ell\nbur ger\nhurric anes</w>\neduc ation\nst ina</w>\nâĻ¡ âĻ¡\nunfortun ate</w>\njere mi\nbad ger</w>\nat ers</w>\n: âĢ¦</w>\nter ra\nsubli me</w>\nstu d\ny mca</w>\nmr u</w>\nduter te</w>\nbren nan</w>\nbul b</w>\nmel o</w>\nyl on</w>\nhack er</w>\nc red</w>\ngu d</w>\nas an\npad illa</w>\nembroide red</w>\nvietnam ese</w>\npione ers</w>\nprojec tion</w>\nre boot</w>\nid c</w>\nan ey</w>\npri mer</w>\nsuff ers</w>\nwin ding</w>\np on</w>\nsto day</w>\nmor n</w>\nu ch</w>\nall in</w>\nadid as\neliza beth\ntu ck</w>\no graphy</w>\nðŁļ Ģ\nbe g</w>\nos borne</w>\nghet to</w>\nr h</w>\ncn n\nir ma</w>\nma kin</w>\ncab les</w>\nmur ders</w>\noc ks</w>\ninst a\nal as</w>\nsi k</w>\ncu ff</w>\nla re\nfoo dies</w>\no vic</w>\nat om\ngeome tric</w>\nem pathy</w>\nà¸ µ\ncent enary</w>\nnewsp apers</w>\nadministr ative</w>\nðŁİ Ĭ</w>\nsti ve</w>\ncontrac tors</w>\nle tt\ntas mania</w>\nawesom eness</w>\nden sity</w>\nve en</w>\nprince ton</w>\nfrequ ently</w>\nre ject</w>\ngh i\nmodu lar</w>\nceram ics</w>\nsh ag\nki wi</w>\ncan vas\nsweat shirt</w>\nan j\nti mm\nnapol i</w>\nil er\nappe als</w>\nhamil ton\nma yo\nwe ave</w>\narrang ed</w>\nwhar f</w>\noccu py\nb vb</w>\nas aki</w>\not ter</w>\nnor m</w>\nvi es</w>\nde tox</w>\ntion al\ndere k\nid ad</w>\nad missions</w>\nconstitu ency</w>\nu pper\nwoo t</w>\nallo y</w>\nse ve</w>\nlu b\nun comfortable</w>\ned win</w>\nab re\nd wight</w>\nar che\nvirtu ally</w>\nsp ol\npri e\nai i</w>\ner r\nswit ch\nbar ack</w>\nse ok</w>\ncou l\nwn t</w>\npou l\no live\ncaffe ine</w>\ncardi ff\nnotor ious</w>\nde mp\nex cess</w>\nbar r</w>\nt ford</w>\na jay\nbump ed</w>\nmy thology</w>\nshel ley</w>\nfal con\nshakespe are\nmust angs</w>\nno ted</w>\nbon e\ncivil ization</w>\nsy d</w>\npar sons</w>\nun official</w>\nhy ped</w>\nsp ends</w>\noppo sed</w>\nv ings</w>\nspace x</w>\nnoti fication</w>\ndeci ding</w>\nbio tech</w>\nout si\nsal ah</w>\n! .</w>\nfe d\nss y\nc ms</w>\nbad gers</w>\ncr o</w>\nela ine</w>\nn ba\ndy our\nn ant</w>\nhoney moon</w>\nclimb ed</w>\nconom y</w>\nath a</w>\nm ell\nne bula</w>\nnature photography</w>\njuli e\nbm x</w>\ninve sted</w>\nmon o</w>\nlieu tenant</w>\nwat kins</w>\ntechn ician</w>\no se</w>\nka e\nì Ľ\nmc queen</w>\npre ach</w>\ntrav eller</w>\nflexi bility</w>\nze bra</w>\nreta iler</w>\np ant</w>\nben der</w>\nbrand t</w>\nsqu id</w>\nwar rant</w>\nveri fied</w>\ncas s</w>\npier cing</w>\nhon ours</w>\nt ying</w>\nmor ris\nkis sed</w>\nop rah</w>\npanor amic</w>\nme i\nsplat oon</w>\nwich ita</w>\nari as</w>\ngal li\nindy ref</w>\ngood times</w>\nathe ist</w>\nconfe ssion</w>\now ski</w>\nre pping</w>\nad ditions</w>\nmechan ism</w>\nz im</w>\nj ans</w>\nsu f</w>\ncho pped</w>\nbeg innings</w>\nvitam ins</w>\nãħ¤ ãħ¤\nor th\npo les</w>\nru b</w>\nantarc tica</w>\nindie film</w>\nweb cam</w>\nket ch\nbre tt\ncle ment\nher on</w>\ndefe ating</w>\nhydr o</w>\nbuc ket\nwand ering</w>\nsid ney</w>\nfuture of\nb inge</w>\non ies</w>\nknock out</w>\nadministr ator</w>\nsyn the\nl ent</w>\njan i</w>\nbar ley</w>\npremier league</w>\nner ds</w>\ncr m</w>\nbra s</w>\nbot any</w>\nevol ved</w>\nrot ter\nro wed</w>\ntum or</w>\nweal thy</w>\nÂ Ń</w>\nmon arch</w>\nli shed</w>\nda hl</w>\nðŁİ ĥ\nbu ch\nken yan</w>\nØ §</w>\nred ness</w>\nassemb led</w>\nse mit\nhud der\nshro p\nran i</w>\nlear ning\nmor y</w>\niti a</w>\ngeo graphic</w>\nworl dof\nf b\npho sp\nboo gie</w>\nam ped</w>\n? ...</w>\nche w</w>\ndwar f</w>\nar us</w>\ns sen</w>\nru sty</w>\nrecru its</w>\nh k\ngar de</w>\napp lause</w>\nvol umes</w>\ninvol ves</w>\nta c</w>\nhand bag</w>\ntrans late</w>\nffe l</w>\nse ym\naqu atic</w>\ntrans fer\nzo di\nand r\nacade mia</w>\ncr ater</w>\nte z</w>\nar se</w>\nadap t</w>\ncol oni\nsnow man</w>\nmal i</w>\nhang in</w>\ndi schar\noy sters</w>\npho e\ncolon el</w>\nw ba</w>\nhispan ic</w>\nthri ving</w>\nsh y\nag les</w>\nsales force</w>\ncre me</w>\nso les</w>\nla fayette</w>\nâ ī\nter ia</w>\nach a</w>\nsp erson</w>\ngo go</w>\ncar ly</w>\nthe ore\nam ore</w>\nvo x</w>\naf t</w>\nãĤ ¹\nstap le</w>\nmu ffin</w>\ndi agram</w>\nino x</w>\nsu stained</w>\nav ent\nme ta</w>\narbit r\ndec ay</w>\nado le\nÐ ½\nec ol\nph o</w>\nn k\no cu\ngr anny</w>\nÃ§ a</w>\nluxemb our\nstad t</w>\nalber to</w>\nle vit\nam as\nd x\nor phan\nco bb</w>\nas c\nlo gy\nimmen se</w>\nchan ts</w>\noff line</w>\np ent</w>\nbre x\nw inger</w>\nplan e\ni el</w>\nnichol s</w>\nca thy</w>\nnar uto</w>\nlow ed</w>\n/ //</w>\nignor ance</w>\ncat astro\nyou ts</w>\nsch en\nbuil d\nhaz i</w>\ns ine\ncritical role</w>\ndu g\ndete ct</w>\nlo gs</w>\nen amel</w>\nstpatrick sday</w>\ned die\nco pa</w>\ncigare ttes</w>\nho ff</w>\nkay a</w>\nla goon</w>\nra pha\nair borne</w>\nchoo se\npuer tor\nke v\ngui ding</w>\nfro sty</w>\nbor ough\nmir a</w>\nðŁİ Ĭ\ncade t</w>\nanu sh\nyo gi</w>\ne ger</w>\nfl ing</w>\nslo pe</w>\nnin th</w>\nwe ston</w>\nfoot wear</w>\nf n\nmay weather</w>\na am</w>\npla in\nstair case</w>\nwitne sses</w>\nwork outs</w>\nro bust</w>\ndex ter</w>\nco hort</w>\nðŁļ Ĺ</w>\nsp ell\nha ze</w>\no om\norgan ising</w>\nwild fire</w>\ncont acts</w>\nav on\nmin o</w>\nupd ating</w>\nðŁį »\nli thium</w>\ning ual</w>\nk is</w>\nau ga</w>\nlo com\nde duc\nu da</w>\nth ak\nboy le</w>\nmp er</w>\nhot tie</w>\neri k\nre vised</w>\nis la</w>\ntravel photography</w>\noo za</w>\nen qui\nconfe rences</w>\nclo ver</w>\ng room</w>\ncur ves</w>\nlive on\nper f</w>\ndisplac ed</w>\nbo log\nxx xx</w>\nðŁĺ© ðŁĺ©\nte al</w>\nve ssels</w>\nrain forest</w>\ncal ci\npan ther\ngira ffe</w>\nta sted</w>\nimag ery</w>\npad res</w>\nday time</w>\nbas s\nri pe</w>\nopio id</w>\nnu e\nvin yl\ninvent or</w>\nsen s</w>\nprocess or</w>\nmu t</w>\ngad gets</w>\nbibl ical</w>\nshann on\njacqu eline</w>\ncar y</w>\nthe resistance</w>\nali en\nn vi\nco sy</w>\nbi har</w>\nfo ley</w>\nren d</w>\nmu gs</w>\nfa ken\ncl one</w>\nni allo\ngra bbed</w>\nchi hu\npower house</w>\nn tt</w>\nchero kee</w>\nspon ge\nimple menting</w>\nrh ine\nle one</w>\nðŁį Ģ\npret tiest</w>\ninfra red</w>\nimpro v</w>\nswit ched</w>\ntu bes</w>\ncon tr\nbl k</w>\nprojec ted</w>\nbe aver</w>\nyo t\nbbcra dio</w>\nthi gh</w>\nper secu\napologi ze</w>\nw ack\npo ster\noli ver\naz a</w>\nlou d\n( ?)</w>\nf the\nwomen shi\nspar row</w>\nblu sh</w>\nus able</w>\nsc ales</w>\nit ative</w>\npeu ge\nne eding</w>\nlegg ings</w>\nglam orous</w>\nmat ur\nc z\nwat t\nda b</w>\ntam ar\net sym\nbau er</w>\nheart felt</w>\nh n\nelse where</w>\nbir ch</w>\nalu mini\nhu ck\ne me\nj l</w>\ntraf ford</w>\nd z</w>\npor tions</w>\nana sta\narthr itis</w>\nesp n\nber gen</w>\nviol ation</w>\nyo shi\nc z</w>\nnorthumber land</w>\nclo sures</w>\nðŁĩ¯ ðŁĩ\nsmi ley</w>\nr w</w>\ntel ugu</w>\ninten si\ngre gg</w>\nve ga</w>\ndun geon</w>\nsouth bound</w>\nba il\ndomin ican</w>\nsemi final</w>\nchap ters</w>\nh itch\nvan ity</w>\ntrans iti\nrecomm ends</w>\nsati sf\nbar ca</w>\nqueen s\n( (\nde struc\nstra it</w>\nra vi\ndess erts</w>\nin tru\nhar am</w>\nk os</w>\nfo e</w>\nfat ty</w>\npais ley</w>\nmagn itude</w>\ndri dge</w>\ncom ey</w>\nschem es</w>\nvision ary</w>\nour t</w>\ndown loaded</w>\nðŁĻĮ ðŁı½</w>\ngd pr</w>\nlan i</w>\np wc</w>\ngu ad\nnic est</w>\nstake holders</w>\nre ferred</w>\ngeorge town</w>\narvind kejriwal</w>\nschnei der</w>\nin doors</w>\nall star</w>\nstrand ed</w>\ngen der\nze pp\nma sses</w>\nðŁĲ ±</w>\npati ently</w>\nbl dg</w>\nz ab\nwe arab\nvi vid</w>\nhe ck\nd ella</w>\nsy mb\nje opar\nla ger</w>\nà ª\ncomb ines</w>\nne c</w>\nbr ay</w>\nflo p</w>\ntx wx</w>\njo ys</w>\npon t</w>\npro found</w>\nsur round</w>\nmad hu\nma ble</w>\nay r\nte as\nn sa</w>\nopen ly</w>\ner nest</w>\nãĥ ©\nto po\ng na</w>\nanti oxid\nti an\ne tr\nc ello</w>\nma thi\ngener osity</w>\nb iting</w>\nman ic\nkel sey</w>\nchee ks</w>\nten der\nw th</w>\npron oun\nultimat ely</w>\ngu sta\nari anag\nger ry</w>\nble ed\nred dy</w>\nmic h</w>\nmitsubi shi</w>\noper ated</w>\nsex ually</w>\nma u</w>\ncl lr</w>\nvi ds</w>\nco c\nmel ted</w>\nðŁĮ Ī\nq ld\nite ch</w>\ninstru mental</w>\nend game</w>\nðŁĵ ĸ</w>\nener gi\nbrow nie</w>\ntam il\nat in</w>\ndomin ated</w>\npra ises</w>\nfire place</w>\nsens ational</w>\nmen a</w>\nk arti\nun prece\nru pt</w>\nori ental</w>\nmc cor\ntour naments</w>\nscen ter</w>\nre eves</w>\nprescri ption</w>\nsam e\nfra u\ntru ffle</w>\nem bo\nroman s</w>\nbla sts</w>\ntechno logical</w>\npr at\nb sb</w>\ny ar</w>\ntren dy</w>\nac l</w>\nal ad\nðŁį ģ</w>\no hh</w>\nbankrup t\ntho ven</w>\nregar ds</w>\nis er\nwar wick\nvine yards</w>\nreal m</w>\nniallo fficial</w>\ndo ta</w>\nge mini</w>\nto do</w>\nv able</w>\nÂ¨ Â¨\nla u</w>\nwre ath</w>\nju ve</w>\nnat asha</w>\nle ver</w>\nlor i</w>\nhor ser\ncc tv</w>\nair bnb</w>\nes anders</w>\nsin clair</w>\nema biggest\nhigh school</w>\ncon test\noptimi stic</w>\nt te\nðŁĴķ ðŁĴķ\nss d</w>\nye e</w>\nhel ena</w>\ncon sen\nric ks</w>\njes se\nan ic</w>\nðŁİ ¯</w>\nre acts</w>\nro be</w>\nindepend ence\nvol tage</w>\nm ington</w>\ns ant</w>\nà¸Ļ à¸\n-------- --------\nsentin el</w>\nke tt\nrehear sing</w>\naaaa aaaa\nsof the\nstir ling</w>\nsear ch\nwi gan</w>\nstand out</w>\nsna il</w>\npent agon</w>\nÄ ģ\nch lor\ncru st</w>\nnet any\nchemi st</w>\ndisapp eared</w>\nric ardo</w>\nsp iders</w>\nbo se</w>\nwar ren\nme ssing</w>\nbann ers</w>\ngu el\npar ach\nma id\ncoun ted</w>\nepi le\nbon fire</w>\nspeech less</w>\nse tter</w>\nmeas ured</w>\nrejec ts</w>\nnik ki\nle ster\nforen sic</w>\nfab rics</w>\nalo ha</w>\npre served</w>\nwat ford</w>\ndeta iling</w>\ndar th</w>\nbo u</w>\ncar ly\n... '</w>\ntail gate</w>\nnoti fications</w>\nå ¤\npas sive</w>\ntrous ers</w>\nbalo ch</w>\nro ther\ntypic ally</w>\nÃ ¥\nsp it</w>\nwi z</w>\nsic ily</w>\ntechnic ally</w>\nex pose</w>\nst age\nhu bb\ncre am\ncap s</w>\npo ke</w>\nsle ek</w>\nju ne\ntempor arily</w>\nde z\nawak ens</w>\nl ame</w>\n_ -</w>\nji ha\ntues days</w>\nadvis ed</w>\nadvis ors</w>\nexi sted</w>\ndis agree</w>\nnews room</w>\nlo sers</w>\nworld tour</w>\ndr ying</w>\nal di</w>\nhar ness</w>\nfoot print</w>\nhobb it</w>\np mln</w>\ni ro\nque red</w>\nasse ss</w>\ngaz e</w>\nsa b</w>\nth ian</w>\ní Ĭ\nti f</w>\nob serve</w>\nev il\ndra wer</w>\nswee p\ncor y\nco dy\nkyo to</w>\ncal lum</w>\nn inj\nlau rent</w>\nbe i</w>\nsket ching</w>\ncustom ized</w>\ndu r</w>\nregre ts</w>\nknox ville</w>\nìķ Ħ\nmess aging</w>\ngrac ie</w>\nabun dance</w>\nbi dding</w>\nbre wed</w>\nfl ouri\ntherapeu tic</w>\nalt itude</w>\nho gs</w>\nbur ner</w>\nelec tro</w>\nwonder fully</w>\nhe ater</w>\npost pon\nli very</w>\nr all\nad as</w>\na ac\nsau l</w>\nbrook lyn\nplay house</w>\nâĻ¥âĻ¥ âĻ¥</w>\nchar itable</w>\nin y</w>\nz ah\ncompet itions</w>\nbe av\nplu gged</w>\no is</w>\ndo om\nastron om\nspeci alized</w>\nmax i</w>\nta ps</w>\ncellu lar</w>\ndepre ssed</w>\nfolklore thursday</w>\ncri b</w>\ne mul\në° ©\nfi gh\nru z</w>\ncar lisle</w>\nspe ar\nside walk</w>\nde i</w>\ndepend ent</w>\nlac es</w>\nnh s\nðŁĮ Ļ</w>\nreali zing</w>\nnet work\nric he\nre gin\nre fresh</w>\nst ral</w>\npa thology</w>\npla id</w>\npsyched elic</w>\nhin d</w>\nu ka</w>\nalgori thm</w>\nlin king</w>\nprogre ssi\nfe y</w>\nd ade</w>\nhydr ated</w>\nb ant\nfam ed</w>\ncot sw\nbo ise</w>\nas c</w>\nrac ing\nja vier</w>\nww en\nmar lins</w>\npoo p</w>\nswe pt</w>\ntoni ghts</w>\nwe f</w>\nani me\nslo vak\nâŀĸ âŀĸ\ncla us</w>\nlem me</w>\ncli ppers</w>\nre ls</w>\narianag rande</w>\nr te</w>\nko t\nthal apathy</w>\nhungar ian</w>\nzu ma</w>\ny von\nis u</w>\njour neys</w>\nclin ics</w>\nbe be</w>\nww f</w>\nn ws\nsuper heroes</w>\ner it\nsle ague</w>\nidenti fication</w>\nmo tto</w>\nba i</w>\nsour ced</w>\nill er\nap i\npri se</w>\nunprece dented</w>\ndam as\ntuni sia</w>\ndra in\nundere stim\ne ther\nquarter ly</w>\nrewar ding</w>\nal ham\nwolver ine</w>\ncab ine\nhyp no\nnad ine</w>\nhav ana</w>\nda e\nðŁĵ Ī</w>\ndr on</w>\nread ings</w>\nb ati\npic o</w>\nmer ci\niti an</w>\nwal kers</w>\nel ope</w>\nmi key</w>\ngod zilla</w>\nbur lington</w>\nabu ja</w>\nsocial ism</w>\nat ility</w>\nsh ell\nharry potter</w>\ng no\nab ur\nre leg\nfel ici\nro gen</w>\nneuro science</w>\ninst in\nath am</w>\nvou chers</w>\nj arre\nfu se</w>\ndef ici\nmonte rey</w>\nde port\nmid day</w>\npp ard</w>\nfre ed</w>\name ter</w>\nwil t\nn ingham</w>\npr att</w>\nliber ty\nslo gan</w>\no to</w>\npr i</w>\nco ated</w>\nc pd</w>\nne tt\nil las</w>\nmal awi</w>\nevol ve</w>\naccessi bility</w>\nðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥\nor nament</w>\nb p\nel is\nson line</w>\nchi ro\nfl ick</w>\nib m\nar ak\nen ables</w>\ngar land</w>\nsan e</w>\ncu ties</w>\ntri p\nrotter dam</w>\nn ys</w>\nlam ps</w>\nlu cas\nbo g\nra ils</w>\ntravel led</w>\nhic ks</w>\nen u\nsab ha</w>\nscru b</w>\nhi er\nhart ford</w>\nfo o</w>\nfer nandez</w>\ntre vor\nmat tress</w>\nappo intments</w>\nale j\nfe i\no logist</w>\nsaf ar\noc ta\nsr c</w>\nsha un\nambi ent</w>\ndri c</w>\nbi ker</w>\nshe e\nmust ache</w>\nh ta\nbo one</w>\nher ty</w>\ncar dio</w>\nbra kes</w>\nrec ital</w>\nconsi sts</w>\noverwhel med</w>\ncau l\nrobb ins</w>\nim it\nal th\nur l</w>\nbi bli\non ne</w>\nblack livesmatter</w>\ndiffic ulties</w>\ntel ang\ntall er</w>\nðŁĵ Ĩ</w>\ndeb ating</w>\nbur rito</w>\nmo vember</w>\nstrength ening</w>\nbo e\nte stam\nmirac les</w>\nbase ball\nre nee</w>\nðŁĳī ðŁı»</w>\nal fa</w>\nâĺ ĺ\nunstopp able</w>\nec s</w>\ng mo</w>\ngiftide as</w>\npath way</w>\nfen cing</w>\nðŁİ ¤\nb ham</w>\nra s\nsk o</w>\nd led</w>\nthel ast\nmagn um</w>\nbin ary</w>\nwil de</w>\nwil der</w>\nwh ati\nbarbe cue</w>\nh ism</w>\ncan oe</w>\nkur di\neli ve</w>\nadvant ages</w>\nmad ame</w>\nbi er</w>\nmis sing\nenter tain</w>\nair force</w>\ny ama</w>\nc is</w>\nhash tags</w>\nj is</w>\nve il</w>\ndream y</w>\nten se</w>\nmay ward</w>\nch ateau</w>\nhunt ington</w>\nâļ ĵ\nv all\nup on\nbl ouse</w>\ndun es</w>\nðŁĺ ´\nfert ility</w>\nm ole</w>\ncurren cies</w>\nst u</w>\nber lin\ntoa sted</w>\ndiv as</w>\nwal t\nlar k</w>\npor a</w>\nhit ter</w>\num er</w>\nchil led</w>\nbal ancing</w>\nfa is\ny in</w>\nor tiz</w>\neast enders</w>\nh ate\nur al\nap ril\ntim el\nà ±\nper o</w>\nsto cked</w>\nrespec ts</w>\nth t</w>\nbest friends</w>\ngiving tuesday</w>\nbe ad</w>\ninv ent</w>\nim i</w>\nnap les</w>\ncomb ining</w>\ntok ens</w>\nthir st</w>\nma sc\npar rot</w>\nsp u\ndent on</w>\n* -*</w>\nt res</w>\nsubur ban</w>\nwid th</w>\nsi ve\ncon tender</w>\nsiri us\nlo k</w>\ntroop ers</w>\noutra ge</w>\ntur bo\nfrag ile</w>\nme ssed</w>\ndo h</w>\ndisc ord</w>\nnetany ahu</w>\nre sign</w>\nforgi veness</w>\nmo han</w>\nmun ch\ncam ou\nidenti fying</w>\nenab ling</w>\nhot ter</w>\nthorn ton</w>\njai pur</w>\nar ya</w>\nðŁı» âĢįâĻĢï¸ı</w>\nmu staf\nmaj ors</w>\no ke</w>\ndu ffy</w>\nroh ing\ntil t</w>\nðŁĩ®ðŁĩ ³</w>\nrock star\nshe ep\nhend rix</w>\nra v</w>\nin vention</w>\ndo u</w>\nlagun a</w>\ngru mpy</w>\nsw is\nim pe\n) '</w>\nyou ths</w>\nbun ker</w>\nst ache</w>\noppo se</w>\nindi es</w>\nacceler ate</w>\nml p</w>\ned en\nw ann\nk ail\nakshay kumar</w>\nsu pt</w>\npol ym\nmidd leton</w>\nextra ordin\nwil son\naustrali an\nalumini um</w>\nway ne\nalum nus</w>\nmat ics</w>\ngri m</w>\ner nie</w>\nopp a</w>\ncompetit ors</w>\nrand all</w>\nh ence</w>\ndecla res</w>\npre aching</w>\nsha he\ncan e\nsustain able\nstap les</w>\nle dge\nad ena</w>\ndoctor al</w>\nbur gundy</w>\ndecor ate</w>\nren dered</w>\nri sen</w>\npr ank</w>\ndi or</w>\nbee thoven</w>\nflo or\nac com\nto t</w>\nho dg\ntouri sm\nsay in</w>\nobjec tive</w>\nmar kers</w>\npremi ership</w>\nen abled</w>\ncamou fla\ngi ant\nÑ ģ\nsmo key</w>\nric ket</w>\npan g</w>\nde pending</w>\ns ation</w>\nevol ving</w>\ninter cep\ncen sus</w>\ntof the\nre en</w>\nmendo za</w>\ntrum pet</w>\nmarke ters</w>\nan it\nðŁĻ Ĭ\nnorth western</w>\nv la\nfoto gra\nblackand white\nche wan</w>\nwi g\ntro om</w>\nginger bread</w>\nk n</w>\nro mero</w>\nn fc</w>\nor chi\nfun ko</w>\nsour ce\nf s\nra ped</w>\no st\ntar ot</w>\nann ually</w>\nðŁĺ ¬\nr ill</w>\ndel av\n.. !!</w>\nse s\ncan n</w>\nmedic are</w>\nph el\nape x</w>\nguardi an\nrema ined</w>\nr pm</w>\na Ã±\nstory month</w>\ninstag ood</w>\nneighb our</w>\np ing\nsem ite</w>\nmy stic</w>\nas cot</w>\nmat er</w>\nhand ful</w>\ndang ers</w>\nti d</w>\nana heim</w>\nopol y</w>\nsh allow</w>\nnami bia</w>\ntor ia</w>\nprocu rement</w>\nbig bang</w>\nannoun cements</w>\nprosecu tor</w>\nbeng als</w>\nsal le</w>\nen roll\nga stro\nsugge stion</w>\nba k</w>\nha ul\nbudd hism</w>\nberni esanders</w>\nflu te</w>\nfati gue</w>\ncyn thia</w>\ncho i</w>\nir win</w>\ngu a</w>\nstr ous</w>\nh p\nba p</w>\nsatisf ying</w>\nplay a</w>\nðŁİ ¼</w>\ninst ap\nal ice\nt p\nirri gation</w>\nðŁĩ¬ðŁĩ §\nin tric\nclu es</w>\nple x\nsa x</w>\nhe pat\ndump ed</w>\nsignific ance</w>\nby u</w>\nmedic ation</w>\npro v\ntough est</w>\ncorn ish</w>\nâŀ ľ</w>\nkel ley</w>\nu v\nsi zz\nsi bling</w>\nme st</w>\ndi stor\ndiplom atic</w>\naun tie</w>\nb hat\nson ic\nbren da</w>\npump kins</w>\nro ch\nblack burn</w>\nur ged</w>\nshi a</w>\narrange ments</w>\nfloo d\nsa unders</w>\nlec turer</w>\nnou ri\npopul ations</w>\ndiplom acy</w>\nconsist ently</w>\nðŁ¤ Ļ\nt mund</w>\ncauli flower</w>\nl ily\nvocab ulary</w>\nvari eties</w>\ncoo ker</w>\nup town</w>\nqu ent\nmo sa</w>\nre inde\nvelo city</w>\nspru ce</w>\nsocial medi\ni ber\nvolun tary</w>\nproce ssed</w>\nbal tic</w>\ny ang\nleban ese</w>\nd p\ndol ly</w>\narrange ment</w>\ny uri</w>\ncran berry</w>\nkal yan</w>\nelev ation</w>\ncli ff\npu shes</w>\nìĬ ¤</w>\nsil ic\nco wx</w>\neter nity</w>\nsla ves</w>\nvine gar</w>\nglou cester</w>\ncon tained</w>\nbreaking news</w>\naga inst\nrenov ated</w>\nnorm andy</w>\nhero in</w>\nys m</w>\nmo ds</w>\ngre ek\nun di</w>\ntren ch</w>\nv h</w>\nencoura ges</w>\nhead ache</w>\ngr ange</w>\n: '</w>\never green</w>\nÙ Ĭ</w>\nreck on</w>\nab used</w>\nth ru\ncho ice\nti dy</w>\ncol der</w>\nscho ice</w>\nha in</w>\nbru m\nli ars</w>\nbre it\nyor ker</w>\nsh ack\nhe idi</w>\nmicha els</w>\nsco pic</w>\nfasci st</w>\nplay ful</w>\nca c</w>\nyas ss</w>\nsh ad</w>\n.. ?</w>\nqu en\nram irez</w>\nclif ton</w>\npr s</w>\nbest fan\nâģ ł\ngener ating</w>\nhead set</w>\ndisappo intment</w>\nabstr act\nbo iled</w>\nparen thood</w>\nazerbai jan</w>\nexhib iting</w>\nbom bay</w>\noli vier</w>\nko so\nun lea\nmat ernity</w>\niz er</w>\nsi ves</w>\nr hu\ncol l</w>\nsaskat chewan</w>\nfre akin</w>\nde k</w>\nna g</w>\nstab ili\nðŁį ķ</w>\norgani zer</w>\nbo sses</w>\nar u</w>\nu va</w>\nat able</w>\nta un\nafter wards</w>\nfert ili\nver ge</w>\naz i\nmor ph\nà¹ ģà¸\njer k</w>\ncosme tic</w>\nko w</w>\nstru st</w>\nap ache</w>\npost cards</w>\nfor mul\nì ĭ\nspin al</w>\njack pot</w>\nelec tri\nÃ Ń</w>\nlo y</w>\ngra der</w>\ndiab lo</w>\nar di\nhe sit\nf w\narch ery</w>\npa sh\nthe ories</w>\nrepe al</w>\nre live</w>\nper cy</w>\nâĺ Ĩ\nim in\nsyn chron\nsham poo</w>\ncoup ons</w>\no to\nla i</w>\nthou ght\nluxembour g</w>\nmo v</w>\nðŁĺ ¥</w>\nge mma</w>\nse ated</w>\nm ga</w>\nstrat ford</w>\nun certainty</w>\nshi fts</w>\nest o</w>\nfo ol\nfire arms</w>\ncor rie</w>\nki ki</w>\nappa rent</w>\np ills</w>\nolym pia</w>\nfi d</w>\nelev ated</w>\nde cks</w>\nignor ing</w>\nav alan\nro v</w>\nwhist le\np tsd</w>\nmilit ants</w>\nrobo tic</w>\npac ers</w>\nquil t</w>\nbankrupt cy</w>\nlic h\nper cussion</w>\ncelebr ity\nal s\n( ;</w>\nsu t\npokemon go</w>\nh g\noff s</w>\ngibr altar</w>\nscre ams</w>\nbilli e</w>\ngen ome</w>\nmar in</w>\nbe ams</w>\narch bishop</w>\nem in</w>\nbedro oms</w>\ng ated</w>\nol ly</w>\nwarran ty</w>\nat own</w>\ncudd les</w>\ngun na</w>\nk ic\nvi ve</w>\ncy mru</w>\nnar row\npro b</w>\nle o\nrefe rences</w>\nmanufac tured</w>\ncho pper</w>\nbrun swick</w>\nsem is</w>\ndon ia</w>\nr ye\nman o</w>\nhur ting</w>\n? #</w>\nhol li\ninvestig ations</w>\nc els</w>\nðŁĵ ŀ</w>\nle ster</w>\ntemp les</w>\nsto rey</w>\nmc mahon</w>\ntoi lets</w>\nwo of</w>\nï¸ İ</w>\nle verage</w>\nat om</w>\nnight mares</w>\nvictor ious</w>\nhaun ting</w>\ncustom er\nag i\nyo ongi</w>\nmon ty</w>\nver onica</w>\nw ur\ninti mid\nblan kets</w>\nvolu tion</w>\nj m\nâĺ İ\nam on</w>\njud ith</w>\nðŁĺİ ðŁĺİ</w>\ndistr acted</w>\ndri p</w>\nhurric ane\nand es</w>\nrevel ation</w>\ntro op</w>\nab leg</w>\ncol lin\ntibet an</w>\nwor rying</w>\ninter nationally</w>\neat er</w>\ncamero on</w>\nbrad or</w>\ny uk</w>\nðŁĴĹ ðŁĴĹ</w>\ntra k</w>\nslo pes</w>\nci er\nne a</w>\nol er\nta ka\nalbi on</w>\nvolcan ic</w>\nam n</w>\na fi\nob stac\nface time</w>\nger ing</w>\nn pr</w>\nmetall ica</w>\norgan ic\nðŁĴ ¡</w>\nki dd</w>\nd ances</w>\npemb ro\nwash er</w>\nm its</w>\nom er\nemo tionally</w>\ntan go</w>\nip o</w>\ndo cks</w>\nscan ning</w>\nspec s</w>\ntho m</w>\nthe ology</w>\nemer gen\nom i\ng pa</w>\nselec tions</w>\nun necessary</w>\nima ge\nter s\ninduc ed</w>\ngi gan\nrent als</w>\nsupp lied</w>\nm fa</w>\nshan kar</w>\nlat er\npa jam\ncla ve</w>\nÙ ģ\nma hin\ncarl son</w>\navi an</w>\nano va</w>\nkati e\naj ith</w>\ndesign ated</w>\nchocol ates</w>\ninvestig ators</w>\ngla zed</w>\nprin cess\ner ry</w>\nra gn\nou rable</w>\nhr u</w>\nsun dance</w>\npeuge ot</w>\nsteam punk</w>\ngh lin</w>\ngre ase</w>\nhi res</w>\nz ap\nper ce\nj ill\ntom e\nhe hehe</w>\njoy ful</w>\nmae stro</w>\nni shed</w>\ngene alo\nv ich</w>\np its</w>\nfox es</w>\ngood man</w>\nemer son</w>\nlo bes</w>\ncon verse</w>\no ats</w>\nthom son</w>\nra him</w>\nmal ware</w>\nah i</w>\nman kind</w>\nre sin</w>\nim g</w>\nsw ood</w>\nkin der</w>\nsc roll</w>\nar a\nsak ura</w>\nro bbed</w>\nxi on</w>\nny a</w>\nc ism</w>\nce dar\nbe in</w>\nmour ning</w>\ntor to\nheath row</w>\ndone gal</w>\nbar b\nhydr ation</w>\nk or</w>\nelim ination</w>\nsu pdates</w>\nhill s\nappe ti\nstar red</w>\nko m</w>\ngw en</w>\ndd d</w>\ncra y\nsc anner</w>\npersonal ised</w>\nseren ity</w>\nre design</w>\nmeta ph\nbox ed</w>\njudg ment</w>\nno se\në ¹\ner ad\nac ne</w>\nsupp liers</w>\nener getic</w>\nv om\nas ap\nðŁĶ ¸</w>\nir vine</w>\nhat ch\nla ss\nad ren\nwaff les</w>\naccur ately</w>\nici o</w>\nitt le\nse un\noccup y</w>\nweb cam\nthene w\nent es</w>\nga i\nj w</w>\naccoun table</w>\nvis or</w>\nir rit\nlicen sing</w>\nhudder sfield</w>\ngen ie</w>\nðŁİ ¾</w>\natmo spheric</w>\nten sions</w>\nspart an</w>\nclif ford</w>\nol an</w>\nnorth bound</w>\name en</w>\ncen sor\nu el</w>\nster y</w>\n$ $\nfar rell</w>\nhy ster\ncl t</w>\nse dan</w>\nrep lied</w>\ndescri bing</w>\nmicro wave</w>\nsla b</w>\npro sp\nassi sting</w>\nru bio</w>\ne than\nhh hhh</w>\ngu ay</w>\nz man</w>\nra ise\nroll ing\no e\nn ile</w>\nambro se</w>\nscar borough</w>\nhero ic</w>\ncoo ks</w>\nmor t\nchop ra</w>\nðŁĮ ·</w>\nto b</w>\nshav ing</w>\nstac ey</w>\ndor m</w>\nmotor sports</w>\nwi ki</w>\nfol ds</w>\nsp iced</w>\nstress ful</w>\nliter al</w>\nfu dge</w>\npe ggy</w>\nwa ite</w>\ntre sses</w>\nse sh</w>\npr ic\nðŁİ ħ</w>\nfri ght\nr va</w>\nmumb ai\npo m</w>\ntt v</w>\ncel lar</w>\ntom e</w>\nandro id\ndor is</w>\ntsun ami</w>\ntin der</w>\no ec\nm wc</w>\ndor tmund</w>\nno thin</w>\nl iti\nso u</w>\nbelieve in\nat u</w>\nkno cks</w>\nmag ni\nss sss</w>\nro hit</w>\nine ws</w>\nang i</w>\nm andy</w>\nke ttle</w>\nintermedi ate</w>\nav ant</w>\ncur l</w>\nendor sed</w>\nori o</w>\nur t</w>\nconsider ation</w>\nwi res</w>\nshel ters</w>\nb ino</w>\nvik ram</w>\nimple mented</w>\nly dia</w>\nbu k</w>\nparo dy</w>\nc news</w>\nunder graduate</w>\ncanu cks</w>\nsam i</w>\npolit ically</w>\nro tten</w>\ngh z</w>\ntex tiles</w>\nover load</w>\nmoder ni\nrecre ational</w>\nfli r\nbat on</w>\ntypo graphy</w>\nov ation</w>\nintrigu ing</w>\npilgri mage</w>\nal ge\nad ays</w>\ntcm party</w>\nsp elled</w>\ncur ls</w>\nboo ze</w>\nste m\nann es</w>\nir ls</w>\nspon ge</w>\nsho pper</w>\nsig nation</w>\nbra ss\nmi stress</w>\nle ah\nbeg inner</w>\nlau derdale</w>\naugu st\npre school</w>\nta ping</w>\ntai pei</w>\nexecu tives</w>\nb d\nrhe tor\nesc or\nimmun o\ndeeplear ning</w>\nstat ues</w>\nit us</w>\nmanu script</w>\nly ric\ncor vette</w>\nmol ly\nla ge</w>\nde p</w>\ncn bc</w>\nle st\nje ssi\nfi fe</w>\ngriff ith</w>\noppo sing</w>\nran g</w>\ndr ills</w>\nrespec tful</w>\np ity</w>\nd ell\nhar ding</w>\nplay boy</w>\nblo ke</w>\nshut out</w>\nk ili\no sp\nse attle\nbc poli</w>\nmis es</w>\njourn als</w>\nteam ing</w>\nes ther</w>\nfre ddy</w>\nĶ ï¸ı\nmetr ics</w>\nno tre\ngar ry</w>\nfor ty</w>\nnavi gate</w>\nperio ds</w>\nbened ic\nj id</w>\nda w</w>\nance stors</w>\nrestor ing</w>\ncon g</w>\naller gy</w>\ntit anium</w>\nc ence</w>\nlean ing</w>\nab bas</w>\nv ast\nuc f</w>\nroof ing</w>\ne man\nseve rely</w>\nvo gue\nve au</w>\nin bound</w>\nd z\ntane ously</w>\nstret ching</w>\nman chester\ndr yer</w>\ndav is\nkan th</w>\nthe game</w>\nit ted</w>\nre tain</w>\nel les</w>\nconge stion</w>\nfrat ernity</w>\nol lie</w>\nlo ki</w>\nfre ely</w>\ncho o</w>\npon y\nsc ep\ntab ly</w>\nbal t</w>\nrock n\ndi me</w>\nlo gging</w>\nðŁį ·\nad u</w>\nha voc</w>\nwater ford</w>\nchar is\nswee tie</w>\nrun ning\nner d\nerdo gan</w>\nz ara</w>\nweigh ing</w>\nfif ty\npre cise</w>\nlow ell</w>\nkurdi stan</w>\nr yo\nor th</w>\nsyn th</w>\nlin ers</w>\nphenomen on</w>\nart illery</w>\nil legally</w>\nconstru ct</w>\nnostal gic</w>\ngar th</w>\nal ta\nshel ton</w>\na sean</w>\nw ander</w>\ndur ban</w>\ndi versi\nbon o</w>\ncl on\nle man</w>\nsh un\nobstac les</w>\nappet ite</w>\nfe eder</w>\nrespir atory</w>\ndi xie</w>\nformu la\nan to</w>\nso ber</w>\nextin ct</w>\nau c\ning les</w>\nlegitim ate</w>\n; ;</w>\nmin nie</w>\nipsw ich</w>\ndram atically</w>\nðŁĳı ðŁı¼\ningh am\nmilit ary\nmon et</w>\nus navy</w>\nfor k\ndun no</w>\nplay er\nq otd</w>\nst oo\nex or\nethiop ian</w>\nfilm fest</w>\npe red</w>\nc ate</w>\nsau di\nin ner\nsin cere\ntion ality</w>\nale e</w>\nde eds</w>\ncooper ative</w>\nir onic</w>\ncro cod\nbr ary</w>\npost season</w>\ncam per</w>\ncan ary</w>\ne in</w>\nexten sions</w>\nnb d</w>\nsher wood</w>\nspo kane</w>\nhu mp</w>\njit su</w>\nê ¹\ndar yl</w>\np si</w>\nstab bed</w>\noffer ings</w>\nexpe cts</w>\ncav al\nbody building</w>\nfr aming</w>\nf ca</w>\nye arly</w>\nbom bed</w>\nsk il\nresear ching</w>\njud iciary</w>\ngree ted</w>\ntu dor</w>\nmil o</w>\ninnov ate</w>\nðŁĺ Ľ\nr hs</w>\nru by\ncontribu tor</w>\nfam er</w>\nsoci ally</w>\nm lin</w>\nfi ery</w>\nut ter</w>\nbeau t</w>\nit os</w>\nde voted</w>\nrain bow\nbar ney</w>\npe ren\nar jun\nr na</w>\ngab by</w>\nut i</w>\nhann ity</w>\npick le</w>\nser v</w>\nqu akes</w>\npp e\nfe m\nwh itec\nj n\nvictor ies</w>\nðŁ§ ¡</w>\ngol fer</w>\ncongratul ates</w>\nresul ting</w>\nmechan ic</w>\nur ve\ncen tered</w>\nkie v</w>\nan s\nin cub\n< <\nc mo</w>\nbestfan army</w>\ndap h\nen ham</w>\non cology</w>\nku sh</w>\nt xt</w>\nori ented</w>\nfashion able</w>\nc sr</w>\nsa hara</w>\nr ack\npd p</w>\nhan son</w>\nà¸ ĩ\nti ers</w>\nra r</w>\npan am\nin sky</w>\nsa hi\ntestam ent</w>\nasth ma</w>\nin her\nfisher ies</w>\nor der\nho we</w>\ngall on</w>\nep is\nsuz anne</w>\ndrow ning</w>\npaneli sts</w>\nðŁĺ ²</w>\në ¦\nal ach\ncommemor ative</w>\nat tribu\nðŁĳ »\nmo o</w>\nvisi onal</w>\nweek sary</w>\ngu st</w>\nak in\npoin te</w>\nee e\ndi spar\nni pp\ndent al\nst all\npi an</w>\nbor e</w>\nul ster</w>\ntic k\nir r\ntae hyung</w>\nmicro phone</w>\nbermu da</w>\nga ard</w>\nel er</w>\nplumb ing</w>\nhu gely</w>\nâļ« ï¸ı</w>\nrace way</w>\ncam bridge\nmar cel</w>\nburn ley</w>\nto ast\nholly wood\nfa sting</w>\nme red\nhib ition</w>\nca pped</w>\nbenef icial</w>\now ning</w>\ncont amin\narab ian</w>\nto on\ncap ac\nhul u</w>\nsm ir\nnutri ents</w>\nse in</w>\ngraph s</w>\ncon ditional</w>\nðŁĳ ħ</w>\nor ac\nplay in</w>\nnor the\ntor nad\nmar ian</w>\nju mbo</w>\nlex i</w>\nincredible india</w>\nroad to\nuk one</w>\nconfu sing</w>\nsp h</w>\nshan k</w>\npi ed\nmq m</w>\npositi vely</w>\nsher ry</w>\npath ways</w>\nconsi ders</w>\ntof u</w>\nargu ments</w>\nresil ient</w>\nche tt</w>\nwith dra\nter o</w>\nated ly</w>\nsw ana</w>\nhe b\nfli ght\nhar ley\ndecre ase</w>\nkind le\nbook shop</w>\n³ ï¸ı</w>\nmarty rs</w>\nsm ur\nmc cl\nconcer to</w>\nsti me</w>\nrejo ice</w>\napp lau\ncle ment</w>\nmer kel</w>\njai me</w>\nim mortal</w>\nisle of\nmar co\nyoutu ber</w>\nstal king</w>\nme too</w>\nst ack\nsp ouse</w>\nu st</w>\nlu v\nâļ¾ ï¸ı\neque strian</w>\nev ing</w>\nfl in\nnick name</w>\nthe big\nas ar\nst acks</w>\nwal ker\nbor a</w>\nkidnapp ed</w>\nhur ling</w>\nhumb old\nrec alls</w>\nco pper\nann is</w>\nse o\nmer ger</w>\nmu ir</w>\nad dy</w>\nðŁĴª ðŁĴª</w>\nbe x</w>\ncr acy</w>\ncon an</w>\ncongratul ation</w>\nmid st</w>\nâĻ ¬</w>\nfor bi\nop tic</w>\ncr ate</w>\ncrocod ile</w>\nmad agas\nsecur ing</w>\nast on\no gue</w>\nsavi or</w>\nsalis bury</w>\nlove it</w>\nfuji film</w>\ncast les</w>\nas st</w>\nar rows</w>\nsp acious</w>\ntr s</w>\npoly vore</w>\nprogre ssion</w>\nm ri</w>\nnel son\nbi m</w>\nindic ator</w>\no da</w>\npe pe</w>\nre signation</w>\ngu t\nsne aker</w>\nlog ically</w>\naz y</w>\nare lla</w>\nte aring</w>\njo shi</w>\nssion ism</w>\nq pr</w>\nmari ah</w>\np x\nble ed</w>\nmi an</w>\nmed ley</w>\nwe iss</w>\nker ry\ngat ory</w>\nat al</w>\nmadi son\nav enger</w>\nnab y</w>\npl and</w>\ngi les</w>\nfresh water</w>\nd ington</w>\nta j</w>\ndemonstr ates</w>\nn tv\nbul bs</w>\nsunday morning</w>\npe ake</w>\nsouven ir</w>\nwa h\nton nes</w>\nm kt</w>\ncomplex ity</w>\ncon den\nross i</w>\nb ing\ny ds</w>\nsu k\nn go</w>\nmid land</w>\nol y</w>\nlife is\nri pple</w>\nmo reno</w>\ndd ers</w>\ntu s\ná ĥ\nbou l\nx a</w>\nhol dings</w>\nwn y</w>\nshadowhun ters</w>\nke i</w>\nasp ire</w>\nm ous\now en\nso ak</w>\nskir ts</w>\nmoun taine\nstor ming</w>\nch rome\nri ots</w>\nsar ato\namaz e</w>\nless ness</w>\nnav ar\ncrit eria</w>\nra fa</w>\nindul ge</w>\nay er</w>\npor to\nnam o</w>\n........ ........\nyi elds</w>\nval le\nj h\nmac ron</w>\nsa ins\ndur ant</w>\ntra ilers</w>\nwo t</w>\nconfeder ate</w>\nsh rin\nid ol\nform ally</w>\nten e\nmotor cycles</w>\nthan g</w>\nno de</w>\nbang er</w>\ndal y</w>\np ats</w>\nenroll ment</w>\nau ctions</w>\nat al\nar bor</w>\nlo gos</w>\nde arest</w>\ntrans action</w>\ndom ingo</w>\nfle a</w>\nser mon</w>\nde ck\nsin cere</w>\nquesti oning</w>\njuli o</w>\nwas p</w>\npre tz\narmen ian</w>\nk ham\ninflam mation</w>\npicture sque</w>\nacci dental</w>\nfilm makers</w>\nðŁĺ ļ\nðŁĴ į</w>\nca sey\nso b\nyee zy</w>\ngood will</w>\nparag ra\nss ly</w>\nfe ather\ndy ed</w>\nassassin ation</w>\nna de\nb cs</w>\napp lies</w>\nfemin ine</w>\nfe u\next ent</w>\ndepu ties</w>\nl ack\npsy chic</w>\ngo i</w>\nkill ings</w>\npse u\nðŁ¤ ª</w>\nun c\nmar l\ntan e</w>\nmck enna</w>\nsur fer</w>\ninflu ences</w>\nfree way</w>\nhack ney</w>\nmal aria</w>\nel and\nte au</w>\nrema stered</w>\nØ ±</w>\nraz or\ngg y\ncor ro\nlak sh\nfla ir</w>\nhonest y</w>\nhoor ay</w>\nde pp</w>\nam c\nwedne sdays</w>\nq a\ned its</w>\n- $</w>\nse villa</w>\ndou bled</w>\nhuman ities</w>\nc cot</w>\nsom os</w>\nr ine</w>\naf a</w>\nsi oux</w>\nre construction</w>\nwel ding</w>\nth reads</w>\nam ish</w>\nencoura gement</w>\npo der\nbo ck</w>\nbal m</w>\np tions</w>\nstand up</w>\naccompli shments</w>\nguar ding</w>\nconvic tion</w>\nac ion</w>\nnapo leon</w>\ndepic ting</w>\natt ack\nsu i</w>\nwear able</w>\nâĸª ï¸ı</w>\npot ter\nesc ort</w>\nvis e</w>\nto ts</w>\nbo on\nevent profs</w>\nangu lar</w>\nwomenshi storymonth</w>\nbar row</w>\nsch i</w>\nac comp\nti k\nl end</w>\nkensing ton</w>\nwol fe</w>\nst acked</w>\ncra shing</w>\nexhi bit\nwing ed</w>\nsab rina</w>\nma sa\nk ms</w>\nalway s\net t</w>\npla sma</w>\ncounsel ing</w>\npick les</w>\nnfl draft</w>\nmr s\ninev itable</w>\ncoura geous</w>\nstaf ford</w>\nwriters life</w>\nho s</w>\ne j</w>\ngh yun</w>\ntrade mark</w>\nadri an\ninfluen cer</w>\ncoron ation</w>\nra ging</w>\nexplo red</w>\nusa f</w>\nexcep tion</w>\neu x</w>\ntan ker</w>\nsw ami</w>\npac ket</w>\nðŁĳ¨ âĢį\nf en</w>\nshe en</w>\na ero</w>\nj l\nre gal</w>\nnw t</w>\nau ster\nmeh ta</w>\nchar ge\na ste\nb ate\ninf eld</w>\nracec ourse</w>\ncollap sed</w>\nfle ece</w>\nz il\nal lie</w>\nalternati ves</w>\ngeor ges</w>\nðŁĵ į\nquir ky</w>\nfc b</w>\nnat geo</w>\nphilanthro py</w>\nbra i\nevery day\nðŁĲ °</w>\nach ers</w>\nja an</w>\nfin es</w>\nq i\nfisher man</w>\ndistin ct</w>\ngri mes</w>\nnation alist</w>\ncomm ence</w>\nro wn</w>\nâĢ ³</w>\nz ing\nf ter</w>\nhr w</w>\nbaro que</w>\nbl ender</w>\nkitt y\nhoo ks</w>\nc ited</w>\nw anda</w>\nconsen sus</w>\nreinde er</w>\nan and\nsupp ly\nme ds</w>\nv n</w>\nol ph</w>\nrat chet</w>\nshel don</w>\nsecur ities</w>\në°© íĥ\ncro m\nmosqu ito</w>\nj eric\nim mac\ndimen sions</w>\nâ ¤\ndi ssi\nsponge bob</w>\ndami en</w>\nsteven son</w>\njo anne</w>\ndel ish</w>\nyi kes</w>\nthan x</w>\nsurve ys</w>\npostpon ed</w>\nalco holic</w>\nal ised</w>\nðŁĻı ðŁı»\ndo ch</w>\nsen tim\nmered ith</w>\ncom pares</w>\nb ago</w>\nhappy days</w>\nmo ss\nãħ ĭ</w>\nne c\ngn ment</w>\nfrustr ated</w>\ncomb in\nri v\nec lec\ncol lo\ncompli ment</w>\nactor slife</w>\nct to</w>\nnic ar\nop hon\napar the\nman t\nja de\ntrol ley</w>\noptimi zation</w>\neye on</w>\neco logical</w>\nqui st</w>\nep he\nà¥ ĩ</w>\ncin co</w>\nappo ints</w>\nold school</w>\nc pr</w>\nbehavi oral</w>\nmin aj</w>\n:- (</w>\ntag ging</w>\nev al\njo aqu\nðŁĺ «\nha k\nde me\njama ican</w>\nso s\nhy att</w>\nhand book</w>\nlibr arian</w>\nhanni bal</w>\npump ing</w>\nch om\nf man</w>\nga i</w>\nhu ll\nrespon ders</w>\ngreen ville</w>\nn us\nvau gh\nðŁİī ðŁİī\nta xi\ngold berg</w>\nman tra</w>\nte ase</w>\nforbi dden</w>\nmetho dist</w>\nati vity</w>\n* ***</w>\nec t</w>\nmc gr\nĦ ëĭ\nse b</w>\namid st</w>\ndisapp ear</w>\nthy ro\nphili ps</w>\ner ina</w>\nv icious</w>\nstream er</w>\nmillion aire</w>\nma p\nstr ick\nhack athon</w>\ngh a</w>\ned ic\nmi ka</w>\npe ck\nill i</w>\nanto ine</w>\nar ca\nop tic\nma ure\nðŁĩ¦ ðŁĩº</w>\ncla shes</w>\nman ly</w>\nâĺ ģ\nal var\nand res</w>\nme i</w>\nel m\nww ww</w>\nal tered</w>\nl te</w>\nê¹ Ģ\nmo jo</w>\nfor rest</w>\nthal ai\nnon t</w>\nspee ches</w>\nacknow ledge</w>\nign ite</w>\nx factor</w>\nðŁ¥ Ĥ</w>\nmead ow\ndisru pt</w>\ndebu ted</w>\nscrim mage</w>\npharmaceu tical</w>\nfi dd\nfound ations</w>\nphilosop her</w>\net al</w>\npubli shers</w>\nbo ys\nc ke\nru gged</w>\nopti mism</w>\nre be\nphil harmon\nnar cis\nral lies</w>\nlu is\ngo blue</w>\nfol ded</w>\nun acceptable</w>\noptim al</w>\nli sa\npol aro\n+ .</w>\nen za</w>\nâĿ £ï¸ı</w>\nmon opoly</w>\ngrace ful</w>\ndair y\ndu a</w>\ndiffic ulty</w>\njudge ment</w>\no si\nmer sey\nflu x</w>\nnew found\nter ns</w>\ndimen sional</w>\nin vic\nal ba</w>\nam it</w>\nabudha bi</w>\nalger ia</w>\nautom obile</w>\nthe ad</w>\nlo tion</w>\nacceler ator</w>\nvac ant</w>\niti on\nlu f\nal ic\npl l</w>\nbla zing</w>\nba z</w>\nsen e\nðŁĳ ¼\nvilla ins</w>\ndirec tory</w>\neis en\nto ck</w>\nbroch ure</w>\nri pp\nhb d\nzayn malik</w>\nnic he</w>\nlo lol</w>\ncertific ates</w>\nmor se</w>\nfac up</w>\nx ham</w>\nun wanted</w>\nim ports</w>\ncarne gie</w>\nfan sign</w>\nmo u</w>\nr alph\ndestroy er</w>\nsw ing\ntrek king</w>\ncili ation</w>\npit bull</w>\ng aps</w>\nho well</w>\ndefin itive</w>\nmc le\nf ps</w>\net z</w>\nbol ly\nlyn n\ngan o</w>\nat ure\nfur suit\nco il</w>\nna v</w>\nbut ts</w>\ntro jans</w>\neu re\nen ko</w>\nsch umer</w>\nhorri fic</w>\ninstall ment</w>\nbr b</w>\nsubur bs</w>\na bel</w>\nvi r</w>\nde sh\ncun ningham</w>\nðŁĲ »</w>\nspan n</w>\nsch we\nke mp</w>\ntr u</w>\nste alth</w>\nqu es\nle w</w>\ndeli ghts</w>\nko ch</w>\nhu mili\ncr iti\nil t</w>\nsp ells</w>\nmi ley\ncar ic\nðŁį ´</w>\nlc fc</w>\nsubstitu te</w>\noun g</w>\n? !!</w>\naf fir\npredic table</w>\nclass of</w>\ner r</w>\ncy press</w>\nchand ra</w>\nage ing</w>\n__ __</w>\nther land</w>\ndon caster</w>\nel in\nyo shi</w>\nsail ors</w>\nhar ris\njo anna</w>\nniger ians</w>\nh ers</w>\npla gue</w>\npro cra\nk no</w>\ncan ton</w>\nbusine s\nun h\npra kash</w>\nc in</w>\nbow en</w>\nco ating</w>\nm als</w>\nbe gging</w>\nsmith son\nponti ac</w>\nsp ies</w>\ndam ian</w>\npl ine</w>\nund ant</w>\nal ta</w>\none ss</w>\nshame less</w>\nda q</w>\nbb m</w>\nwal es\nstam pede</w>\nser um</w>\nÙ Ĩ</w>\ncataly st</w>\nx n</w>\nab sc\nfree zer</w>\nch un</w>\nari os</w>\nmc cre\nfore head</w>\nhe ars</w>\ndamas cus</w>\ntac oma</w>\nardu ino</w>\nencoun ters</w>\nstan ton</w>\nlg b\nab as\n\" ..</w>\nke te\ndrac ula</w>\nele m</w>\ng ne</w>\nzepp elin</w>\nla brador</w>\npul p</w>\nop tional</w>\nor n\nrussi ans</w>\nsan itation</w>\nhil ary</w>\netsym ntt</w>\npen alties</w>\nau st</w>\nig ans</w>\nolympi an</w>\nmedic aid</w>\nvers ace</w>\nva pe\nre stra\npe ep\nsexi est</w>\nst alls</w>\ndi le\nthe a</w>\npunjab i</w>\npupp y\ntuesday motivation</w>\nðŁĵ ļ\nthe flash</w>\nroc ket\nmo dest</w>\nchihu ahu\non na\nk sa</w>\nhur dles</w>\nca ve\nfail ures</w>\nsp lit\nbo ho</w>\ngur l</w>\ndisappo int</w>\nho ward\nnug get</w>\nfran z</w>\nstal ert</w>\nkaz akh\nfor getting</w>\nsch ri\nag ate</w>\nam at</w>\neve rett</w>\ndu et</w>\nveter inary</w>\njuli an\nch ills</w>\nbra ve\nghost busters</w>\nlan do\ngre ets</w>\nprofit able</w>\nd Ã©\nti r\nze e\nom en</w>\npd x\ngray son</w>\nhar i\nfix es</w>\nstab bing</w>\nswim mer</w>\nsymb ols</w>\ncompli ments</w>\npo se\nfunc tioning</w>\nth nx</w>\ngi r</w>\ncorpor ations</w>\nbar low</w>\nlo e</w>\noff season</w>\ndistin ctive</w>\nmarvel ous</w>\nnik on\nenri que</w>\nky u</w>\nja ws</w>\namo to</w>\nlom bar\ntravel blogger</w>\nfa h\nouri sm</w>\ntri stan</w>\nso e</w>\nce ase</w>\nðŁı ħ</w>\nz ac\nmck enzie</w>\ntaxpay ers</w>\nswim suit</w>\nbl o</w>\nles ley</w>\nkan sas\nw ks</w>\nki el</w>\nprovo king</w>\nmy les</w>\nstr ing\nkangar oo</w>\ngalac tic</w>\nfif th\ns ke</w>\nwe ir</w>\nll is</w>\nmat ory</w>\nðŁĩ ¿\nun ci\nre productive</w>\nroo ting</w>\nti des</w>\ngad get</w>\n.... ......</w>\nalex ander\nbow ler</w>\nscre w\napo log\neri ka</w>\nwal ters</w>\nshet ty</w>\nlan e\nban ter</w>\nas ant</w>\nme so\nv ain</w>\n\" \"\"</w>\nus i</w>\nfer din\naccomp lish</w>\nman sfield</w>\nbom bar\ncollabor ating</w>\ncla p</w>\nit ure</w>\ns da</w>\nsmo ky</w>\nna k</w>\nim person\ncar la</w>\ncom ra\nbur gl\nlo co</w>\nti es\nin hi\ntrac ey</w>\nse is\ndiss er\nrr rr\ndra y\nprote ct\ncor ona</w>\nhun ger\nck en\nc eli\ntrou bled</w>\npredat ors</w>\nfic tional</w>\nshav ed</w>\nriche st</w>\nmetab oli\nful ham</w>\ngro oming</w>\nmono chrome</w>\nwa sting</w>\nas co\nast e</w>\nti sta</w>\nremedi es</w>\nung soo</w>\nsouth end</w>\nperman ently</w>\nbu mble\nprocra stin\nident ical</w>\npractic ally</w>\nma scul\nsu ke</w>\nassu red</w>\nval erie</w>\ndevi ant\ngrizz lies</w>\nthi er</w>\npur a</w>\nne pal\nnot ts</w>\nbil ateral</w>\nspo il</w>\ncar mel</w>\ncine matic</w>\nph l</w>\nni fty</w>\nma o</w>\nhypo cri\nla ser\npan try</w>\nmathemat ical</w>\nel isa\ncoordin ation</w>\nbel mont</w>\na it\nradi ant</w>\nbo iler</w>\nman g\nf ag\ncr c</w>\nh ams</w>\nbr in\nâ¬ĩ ï¸ı\nfamil ia</w>\nâĿ £</w>\nsab er</w>\nru pert</w>\ngg an</w>\nrit z</w>\nmic h\nsal ford</w>\nle vi\ngra l</w>\nðŁĴ ¤</w>\nn ino</w>\nce d\nbusiness man</w>\nul tr\nsim ply\ncompre ssion</w>\npa ins</w>\nhal t</w>\në°©íĥ Ħ\nlandsc aping</w>\nn f</w>\ncroo ked</w>\ner d</w>\nitt in</w>\nddle ston</w>\nsur passed</w>\nino a</w>\nda g</w>\nbl en\nexten ding</w>\nat ing\nal gae</w>\nball er</w>\nu mar</w>\nsnoo ker</w>\ncol lu\nflo wn</w>\nthu b</w>\nridic ulously</w>\nki sh\nop le</w>\ndi re</w>\nas ser\nari sto\nsc iss\nh ating</w>\ntrou ble\nsyl via</w>\nsuc cul\nplo ts</w>\nsincere ly</w>\nal er\nlaure ate</w>\nbr ack\natt n</w>\nrif les</w>\nme to\ncollec tible</w>\ncu omo</w>\nconte stant</w>\nconsist ency</w>\nant z</w>\nrang es</w>\nabig ail</w>\nde b</w>\nmini ster\ngrow ers</w>\nan oo\nhoo ver</w>\ndream er</w>\nnu cle\nresear ch\nmi y\nsha hid\nma v\nd honi</w>\ncin i</w>\ndo j</w>\nhin dus</w>\npart ying</w>\ndal i</w>\nalon so</w>\ninform al</w>\nclark son</w>\nit ton</w>\nki an</w>\ncit yo\nmor i\nla sted</w>\nas pen</w>\nlibr ary\nsusp ici\nqu at\nden ial</w>\nfol der</w>\nch ori\nswee ping</w>\neni x</w>\nðŁį Ĥ</w>\nØ Ń\nnas car\nhandmade hour</w>\nmou l\nheat wave</w>\nem er</w>\nexam ine</w>\nib n</w>\ngr ind\npo v</w>\ntion ist</w>\nm bo\nshe ila</w>\nintegr ate</w>\nom es</w>\ntake away</w>\ncer v\ncon nie</w>\ntic ket\nce led</w>\nbi en</w>\nvisu ally</w>\nmadagas car</w>\nsor ry\ngu i</w>\npark run</w>\ntra its</w>\nla be\npois oning</w>\nà¥ Ģ</w>\nvi able</w>\nbohemi an</w>\ndenti stry</w>\nbad os</w>\nspr outs</w>\nmask ed</w>\nte ddy\nðŁĺ ·</w>\nsa f</w>\nsa as</w>\nji ang</w>\nti ght\nspe aker\nwithdra wal</w>\nbc n</w>\nas signed</w>\nclass rooms</w>\nfle ming</w>\nðŁĴ «\nsuper girl</w>\ntot als</w>\ntable top</w>\ne books</w>\nhorizon tal</w>\ncra z\nflu sh</w>\nj ard\nc dc</w>\ner son\nãħ ł</w>\ngreen wood</w>\nni h</w>\nco x\nad a\nlit re</w>\ngo ing\nv icky</w>\ncur ved</w>\nlou ie</w>\ngra ins</w>\nhy e</w>\nlon ge\nreme dy</w>\ntra inee</w>\nsan jay</w>\nsuper stars</w>\nma ser\nman u</w>\ns age\nwh l</w>\nðŁĺĤ ðŁĺŃ</w>\nðŁĳį ðŁı»\nm sd\nen z\nrab hu</w>\nj oo\ngh u\nac er</w>\ne po\nresurrec tion</w>\njustice for\nbl ended</w>\nmo da</w>\navalan che</w>\nfrance sco</w>\nre spective</w>\ng s\nye ast</w>\nwel ch</w>\ndevo tion</w>\nge tin\nathe ism</w>\nam ic\ncarol yn</w>\nlo c</w>\nld nont</w>\nave c</w>\nus da</w>\nle gged</w>\nbra very</w>\nb lower</w>\ncow boy\nhe h</w>\nsti ble</w>\nbuff al\nchann el\nrun chat</w>\nâĺķ ï¸ı\nide ology</w>\nbest seller</w>\ny oo\npe anu\nbon ne</w>\nfel ic\nedi son</w>\nfr actu\nnaren dra</w>\npp ets</w>\nseym our</w>\nri viera</w>\nhe ctor</w>\nnecess arily</w>\nbi anca</w>\nsoci eties</w>\nthe best</w>\nw g</w>\nsent ences</w>\nwin k</w>\nvacc ines</w>\npal ooza</w>\njam ming</w>\nas f</w>\nmp us</w>\nagre ements</w>\nec k\nba c</w>\nhon ore\ncom pul\nwild cat</w>\nim posed</w>\nyo ga\nhud son\ncan celed</w>\nl ich</w>\nfu zzy</w>\nes que</w>\nch uk\nw vu</w>\nse k</w>\nfli pping</w>\nr hon\nwi shed</w>\nwh a</w>\ncap ability</w>\nlen ovo</w>\nìĨĮëħ Ħëĭ\nvi vo</w>\ntv d</w>\nnor a</w>\nsil k\npas adena</w>\nyo semite</w>\nvalu ation</w>\nclo cks</w>\nu ber\nmr c</w>\ndar kest</w>\nau bre\nss o\nbell y\nwrest lers</w>\nkill in</w>\nlou der</w>\nbuck ley</w>\nge el\nad on\nun s</w>\nappe aling</w>\nðŁĳ ¯\nsemit ism</w>\nlist ens</w>\nfit z</w>\nãĥ³ ãĥ\nny lon</w>\nar ty</w>\nseem ingly</w>\nhal a</w>\nsu ited</w>\net y\nshe ds</w>\nmu ffins</w>\nap ric\num ents</w>\nu ta</w>\njam mu</w>\nchelse afc</w>\nstar z</w>\nyo ko\nroo t\nclean sing</w>\ndi ar\npione ering</w>\nihear tradio</w>\ndig iti\nfin dyour\ncan o</w>\nðŁĴ İ\nz ol\nspac ecraft</w>\nsix ers</w>\nmoi sturi\nb ile</w>\nti sts</w>\nhor ton</w>\nrang ing</w>\ncolum bi\nmete oro\nsenti ment</w>\nep l</w>\nfoo th\ntext book</w>\ndrain age</w>\nr ly</w>\nsc ue</w>\nimran khan\nðŁĴ ¸</w>\nmargar ita</w>\ned dy</w>\npredic ts</w>\ngamer gate</w>\nadvis e</w>\ngrowth hacking</w>\nlove you</w>\nug and\nv f</w>\nbeng hazi</w>\ns later</w>\nne wor\nch el</w>\nindependence day</w>\np np</w>\ncul len</w>\nhoo dies</w>\nnum bered</w>\nbrit t</w>\nt sa</w>\nkl tu</w>\ns ages</w>\nmom o</w>\nonep lus</w>\ncol l\ngu ts</w>\nw ta</w>\nmesm eri\nenh ancing</w>\nchiro prac\nj is\nteen agers</w>\nm one</w>\nconstell ation</w>\nsweep stakes</w>\ne ze\nslovak ia</w>\nla ye\npear ce</w>\nwa ver\npo gba</w>\nk ron\nsur geons</w>\nmar x</w>\nti d\ngg a</w>\ndesc end\np ours</w>\nupri sing</w>\nwal la\nsab bath</w>\nbachel ore\nmack in\nk am</w>\npeter borough</w>\nhor a</w>\nðŁĮŁ ðŁĮŁ\nthink big\nr j\nhy drau\nsp al\nunivers it\nðŁı ī</w>\nmail online</w>\nleague of\nten ants</w>\nw ally</w>\nlan ce\nheav ens</w>\ndd r</w>\nbol ts</w>\nam ir\ni phone\nci gar\nen du\nre i</w>\nel abor\nr inging</w>\njohn son\ncharacteri stics</w>\nsal oon</w>\nalgori thms</w>\ntal kin</w>\nm tn\ndi ve\nregion als</w>\nff ice</w>\nhat i</w>\ndeviant art</w>\nso tto</w>\nshir o</w>\nl ama</w>\nk we\nf aded</w>\npor ting</w>\ntu mmy</w>\nest ates</w>\nbuen os</w>\nðŁ¦ ģ</w>\nbeli ever</w>\npen etr\ndar n</w>\nsp ite</w>\ncan opy</w>\nfashi oni\nt illa</w>\npet als</w>\neli jah</w>\nbra wl</w>\nmarty r</w>\në°©íĥĦ ìĨĮëħĦëĭ\nmid town</w>\neric h</w>\nd apper</w>\nsm town</w>\nme gam\nww w\nle le</w>\non s\ncat fish</w>\nfir th</w>\nfossil friday</w>\nball park</w>\nth aw\npot ent</w>\nilli e</w>\ncre ep</w>\ncar p</w>\nso ap\ngun dam</w>\ninfe c\nyy yyy</w>\nà¤ ¨</w>\nz ag\nrit t</w>\ncalcu lator</w>\nbo ca</w>\nok o</w>\nto ad</w>\nthreat en</w>\nrefin ed</w>\nolym pic\naccompli shment</w>\nbacter ial</w>\na ji\ntat um</w>\nfeli z\nshe ed</w>\nj at\nth ic\njam al</w>\nðĿ ĺ\nlin a</w>\nðŁĲ ¯</w>\njo king</w>\nyot po</w>\npin ch</w>\nak ron</w>\nher b\nmotiv ation\nli a\nho stage</w>\ncre ek\ngam ble</w>\nruss ell\npatt i</w>\nfo tos</w>\nc pc</w>\nbro ken\nback the\ncla ys</w>\nu mm\nstock ton</w>\nmat ernal</w>\nÃ¼ r\nla kel\ncent ury\nbe k</w>\ninfe cted</w>\nà¸ ¡\nsmack down</w>\nman ned</w>\nta hoe</w>\nsm es</w>\nbas a</w>\nsu la</w>\naugu sta</w>\n. *</w>\nrohing ya</w>\ngre ed</w>\ncounsel or</w>\nsilhou ette</w>\ngra vit\ncla use</w>\n' -</w>\nbo bc\nocca sions</w>\nnow adays</w>\ndic tat\nbe ard\nn ally</w>\nbrigh test</w>\nkab ul</w>\ninc india</w>\ndhan ush\narchae ological</w>\nche ape\nmizz ou</w>\nd hi</w>\nov ski</w>\nbax ter</w>\nasse mble</w>\nÃ ¢\ngi gi</w>\nac am\nwis ely</w>\nhaz ard\nnorth ampton</w>\nâľĪ ï¸ı\nme th</w>\nbla sting</w>\nre unite</w>\nmu lus</w>\nali zes</w>\nt read\nmil a</w>\ned ward\nko va</w>\npe sto</w>\nðŁĳ ¶\nvit z</w>\nhydrau lic</w>\nrefurbi shed</w>\nmo tel</w>\nisab ella</w>\nhom me</w>\nsever ance</w>\nuph ol\nmis erable</w>\nf ari\nlat ter</w>\nef er</w>\ncrack ers</w>\nes l</w>\nac io</w>\nyy j</w>\nin an</w>\nec b</w>\nz ind\npan as\ntru cking</w>\nre ed\nsh aker</w>\nburge ss</w>\nem pire\nag nes</w>\nn ington</w>\nart works</w>\nfr s</w>\nti le\nbi ome\neu n</w>\nch ong</w>\nameric ana</w>\ngod father</w>\ngo blin</w>\ni shi\n! ).</w>\ntemp ted</w>\ngen omics</w>\nmand ate</w>\nck y\nðŁĴĻ ðŁĴĽ</w>\nsom ali</w>\nbr andy</w>\nin ven\nspoke sperson</w>\npc b</w>\nyu an</w>\nh g</w>\nfa z\nstarwar s\nro wan</w>\nblue grass</w>\ndon g\nd day</w>\ntrin idad</w>\ner ton</w>\nban ning</w>\nre tention</w>\ncu red</w>\ntober fest</w>\nre set</w>\nwe is\ndeta ched</w>\nbehindthe scenes</w>\nimmun ity</w>\nph a</w>\nbra y\nðŁĳ ½</w>\nran cho</w>\nram say</w>\nest onia</w>\nnd tv</w>\n] .</w>\ncab aret</w>\ntar o</w>\nd v</w>\nshow cases</w>\nplu m\nðŁĳ ¸\nson oma</w>\npre pa\nmemor ab\ne stu\ndrive way</w>\nu les</w>\nmagn us</w>\nx r</w>\nnn n</w>\nmuch as</w>\nen ge\nstre amed</w>\nfore stry</w>\naudio book</w>\ntro y\nreck less</w>\nkil om\nru ler</w>\nra k</w>\nproce ssion</w>\ni ons</w>\npo ole</w>\nnoc tur\nwh s</w>\nfarm house</w>\nper a</w>\npar me\nhypocri sy</w>\ns ics</w>\nv ant\ncas k</w>\nholi stic</w>\nau st\nÐ ¿\nin do\nðŁĳ© âĢį\ndi so\ndisp atch</w>\nol sen</w>\nmake it\nen nis</w>\ncent re\nar range</w>\nðŁĮ ¼</w>\nsal ted</w>\nea siest</w>\nf ate\nreg atta</w>\nmo zz\nac an</w>\nsin i</w>\ng ically</w>\nch ops</w>\nchick en\nwork in</w>\nha gg\ninvol ve</w>\nwee ds</w>\nbook day</w>\nwake up\nky r\nmichel in</w>\nfu ss</w>\nre juven\nvac ancies</w>\nincar cer\nm st</w>\nsc ents</w>\nsovere ign</w>\nkick er</w>\nà §\nbo d</w>\nâĢĶ ></w>\nsa h</w>\nmob il\nshrop shire</w>\noph one</w>\ndress er</w>\nmis suni\nhep burn</w>\ni mo\nfoli age</w>\ndiagno stic</w>\nas san\ncycl ing\nguil t</w>\nc sa</w>\npuertor ico</w>\nwin elover</w>\nwake field</w>\ndo ggy</w>\nk he\npa pp\nco g\nal lot\ncu ck\npoe tic</w>\nmi o</w>\nre vit\nmag ician</w>\nç ¥\nant enna</w>\nwest wood</w>\nmber g</w>\nlux e</w>\noat meal</w>\nØ ¬\nte at\nffe e</w>\nsear ches</w>\nl ly</w>\nplu to</w>\nel on\nlet tering</w>\ninno cence</w>\nfa i</w>\nann on</w>\ntelang ana</w>\nma it\nneu ral</w>\ncan ni\nar oma</w>\na stor\nfe x</w>\nco cac\nmon etary</w>\nf ent\nun sure</w>\n' @</w>\nindi rec\nteh ran</w>\nisol ation</w>\nli bs</w>\nmake up\nmerce des\nff y\nhe tero\nde o\nsco m</w>\ncur sed</w>\nveteran sday</w>\nfranken stein</w>\nshre ws\nde co\nge ese</w>\nlefto ver</w>\nha did</w>\nvari able</w>\nacade mics</w>\ncarol in\nunder going</w>\nvari ation</w>\nna h\nssi er</w>\ngamer sunite</w>\npur suing</w>\nemer ged</w>\nll ers</w>\ncontrol ling</w>\nro aring</w>\nmete or\nvol t</w>\ndaw gs</w>\nbe aver\nis life</w>\nbathro oms</w>\naci onal</w>\npre vent\nlake district</w>\nin als</w>\ny ani</w>\ngra bbing</w>\nsac ks</w>\nle z</w>\nsw ay\nk ool</w>\ntime s\nklo pp</w>\nla de</w>\ncon cord</w>\nresul ted</w>\nrevi ve</w>\nrecon ciliation</w>\nol and</w>\naz z</w>\ngir o</w>\nmand arin</w>\nde en\nnutriti onal</w>\nis coming</w>\nvan i</w>\naw www</w>\nder ived</w>\nlove your\nstop the\nshou ting</w>\nnov ak</w>\nðŁĻĮ ðŁı¾</w>\nlo af\ndispla ying</w>\nsunday with\nma guire</w>\nch eri\nðŁı Ł</w>\nre match</w>\nqu ic\nÚ ©\ny in\nðŁĺ ¹\nili ve</w>\nz ip\nour ke</w>\ndown loads</w>\nsw at</w>\nmissi ss\ncare rs</w>\nt ment</w>\nproper ty\nhahahaha haha</w>\ngi bbs</w>\nsur rey\nar ise</w>\ntic ism</w>\nsti a</w>\nir ling</w>\nfro g\nco se</w>\nbas sist</w>\nfore ig\nlea u</w>\npil lows</w>\nhol la</w>\neli e</w>\ndisclo sure</w>\npeanu ts</w>\ninte ch</w>\nww c</w>\nplun ge</w>\ntrium ph\ncor i\nsli ppers</w>\nðŁĻı ðŁĻı</w>\nneutr ality</w>\nma re\nhair y</w>\ngang ster</w>\nhu mming\ncust ard</w>\nmer lin</w>\nale a</w>\ns by\ndam p</w>\nmo han\nver bal</w>\nj st</w>\ngu tted</w>\nb jor\nun finished</w>\nðŁĩ¯ðŁĩ µ</w>\nun happy</w>\nâļ« ï¸ı\nby pass</w>\nat su</w>\nfis cher</w>\nsa v</w>\nafric ans</w>\nre use</w>\nmid way</w>\ndemo lished</w>\nger rard</w>\nher cules</w>\nÄ Ł\nmedic ines</w>\ncl icking</w>\nsur round\njo ong</w>\nwav ing</w>\ntri bes</w>\nwet lands</w>\noffici el</w>\nargu ing</w>\nl le\ndo va</w>\nsu zy</w>\nclub house</w>\nne gro</w>\nob tain</w>\nga o</w>\ngl ance</w>\nassi st\nch os</w>\nãĤ ¢\nâĺ ķ</w>\nadri d</w>\noccur s</w>\nst ans</w>\npar don</w>\nlivel i\nemplo yed</w>\nre visit</w>\nff xiv</w>\nbb le\nne aring</w>\nmin er</w>\nðŁĺ ¹</w>\ngiov anni</w>\nup to</w>\nmar vell\nmar se\nto wels</w>\ncb n</w>\nengine ered</w>\ny elling</w>\nspart an\nsi ans</w>\nðŁĻĮ ðŁı¼\nse v\ncoyo te</w>\nsta di\nt cm</w>\napp en</w>\nshenan igans</w>\nopen access</w>\nso aked</w>\nma squ\nle vine</w>\nstro kes</w>\nl k</w>\naparthe id</w>\nhipho p\nchar don\nmay may\nha asan</w>\nstri pped</w>\nfr o</w>\nscri ption</w>\nf ton</w>\nh f\npri sons</w>\nmarsh al</w>\nķ ãĤ\nan cho\ncom promise</w>\nclassi fication</w>\nbuzz feed</w>\nbblo ggers</w>\ndeser ving</w>\n) /</w>\ns way</w>\nob o</w>\ncamp ers</w>\npoder nfamily</w>\np oured</w>\nbri e</w>\nsquir rels</w>\nse ize</w>\n: #</w>\nle k\nti mb\nst acy</w>\nnas daq</w>\nrepe atedly</w>\nbr at</w>\nmi ghty\ncompetit or</w>\nmah one</w>\nde si</w>\no ke\nbm w\nshi e</w>\nf cb\ncheape st</w>\nminim alist</w>\npar amount</w>\nn ate\nhar as\ninsan ity</w>\nlat eral</w>\nment ality</w>\nmo zam\nta pped</w>\nyad av</w>\nu sp\nb way</w>\nthe od\nbil t</w>\nra ids</w>\nem press</w>\nadap ted</w>\npat ron\nnut shell</w>\nag ra\nbe aded</w>\nsundaywith marsha</w>\nvi king\nproce ed\nmain tained</w>\nthinkbig sundaywithmarsha</w>\nsn es</w>\nmus ica</w>\nto wer\nch ab\nbo k\nsm t</w>\ninsul t</w>\nharve sting</w>\nwindo w\nru ther\nbe ige</w>\ndec al</w>\nindic ate</w>\nma iling</w>\nri ft</w>\npo le\nander son\nch oral</w>\nsp ride</w>\nl ili\nev elyn</w>\nimrankhan pti</w>\n.... \"</w>\nke red</w>\nun dp</w>\nwater falls</w>\nse ars</w>\nle mans</w>\nworld series</w>\nri el</w>\nani e\napp ar\nscore rs</w>\nlam p\na than</w>\nphys icians</w>\nqu inoa</w>\nrefu sing</w>\nvu itton</w>\nunle ash</w>\ns la</w>\npat i</w>\nshou ts</w>\ninten tions</w>\nfo amed</w>\neurope an\nneighbor hoods</w>\nme er\nman son</w>\ndu h</w>\nbr at\ncon es</w>\nbow l\nkazakh stan</w>\nà¤ ¿</w>\nin appropriate</w>\ndel hi\nketch up</w>\nful ton</w>\ns ys</w>\nconsul t</w>\ngar field</w>\nto go</w>\nf ml</w>\nf led</w>\nb ds</w>\nfacilit ate</w>\nree bok</w>\nselfi e\nelev ate</w>\nactiv ate</w>\nbi ble\nca wx</w>\nb ys</w>\ncam ille</w>\nsy ou\nsk ool</w>\nher t\nw bc</w>\nple dges</w>\nrecor der</w>\npo sh</w>\nac re\nso aking</w>\nmat il\nv sco\nshoot ings</w>\npla r</w>\ne con\nðŁĻĮ ðŁı»\nrashi d</w>\nu bi\nðŁ¤ ¤</w>\nsw inging</w>\nwi pe</w>\nrap tor</w>\nm su\nmusic video</w>\ndur ham\nat tic</w>\napar ty</w>\nfe tus</w>\nactiv ation</w>\naa z</w>\nmotiv ate</w>\nðŁĴķ ðŁĴķðŁĴķ</w>\nj al</w>\nà¤ ®</w>\nag on\nsche er</w>\nstal ker</w>\nfo ster\naz zo</w>\ntele gram</w>\nvi gor\ns laugh\nscreen shots</w>\nentrepre neu\nkri stin</w>\ninten tion</w>\nch illi\nfr action</w>\ndon a</w>\nge a</w>\ntc u</w>\ns ite\nla k</w>\nem il\nd nt</w>\nbor o\nwil kinson</w>\nre cu\nato day</w>\nt anya</w>\nbl anco</w>\ncd n</w>\nbrilli antly</w>\ng cc</w>\nac c\nevacu ated</w>\nther ine\nden ny</w>\ncait lin</w>\nshe pard</w>\npou ch</w>\nhand held</w>\nsou theastern</w>\nha a</w>\nÃ ´\nre solutions</w>\nled ger</w>\nsr in\nr ar\nshat tered</w>\nchim ney</w>\nim with\nmete or</w>\nhand led</w>\nra ke\ntown send</w>\nen han\nshi py\nduc t</w>\ntw x</w>\ninflam matory</w>\nwar hammer</w>\ntheat rical</w>\ngro s\nsk ar</w>\nsco tty</w>\nni el</w>\ntit o</w>\ntin i</w>\nconne ction</w>\n_ .</w>\ngoldeng lobes</w>\nsha q</w>\nðŁı ³ï¸ı\nhall way</w>\nfron ts</w>\neffec tiveness</w>\ngla ston\nd hs</w>\nex pi\nto h</w>\nc pl</w>\nsc s</w>\nre o</w>\nha g\nresemb lance</w>\nhor an</w>\nabu sive</w>\nqu er</w>\nvirtu e</w>\ncho lester\na q</w>\nshan e\nm ce\ncarri ers</w>\ndi stress</w>\nre wind</w>\nÂ ¡\nvoo doo</w>\nint act</w>\nann o</w>\nðŁĺ ¤\npi led</w>\nadi a</w>\nãĥ ³</w>\nen ow</w>\ndi gs</w>\nlight ly</w>\ngoo fy</w>\nturb ine</w>\ngovernor s</w>\ncon te</w>\nre open</w>\npa h</w>\ni ve\ncra fting</w>\nswee ps</w>\njo di</w>\nan de\nzu cker\nkaw aii</w>\no ko\nv ai\nout line</w>\nkri sti\nts n</w>\ninsp o</w>\nqu int\nfil thy</w>\nlyn ne</w>\nlisten ers</w>\ndepar ting</w>\nor d\nt weed</w>\n, &</w>\nale k\nsel fish</w>\nnor ther\nrecogni zes</w>\ni ps</w>\nbe s\na ed</w>\nw ills</w>\npe at</w>\nsurround ings</w>\nmon uments</w>\nais le</w>\nbe cker</w>\nla v</w>\nquant ity</w>\nv ah</w>\nhelicop ters</w>\ntu cked</w>\nalv arez</w>\nsha pe\no bey</w>\nad diti\nroad side</w>\nm ite</w>\nbl ers</w>\nep age</w>\nj au\nignor ant</w>\nb ins</w>\nlu lu</w>\nx o\nc fo</w>\nee eee</w>\napprentice ship</w>\nshef fiel\nto i</w>\nho k\nfaken ews</w>\ndeplo y</w>\naid an</w>\nhusk ers</w>\nãĢ İ</w>\nwest brook</w>\nmi ster\nconfi gur\ncar r\nfic a</w>\nproceed ings</w>\nha w</w>\nste ak\nmur derer</w>\npay day</w>\na jo</w>\np vc</w>\ndon ates</w>\nbi af\nnom nom</w>\nbe it</w>\nk ali</w>\nx rp</w>\nahmed abad</w>\nse mic\nche y\nx tra</w>\nan twer\nhead lining</w>\nsqu ares</w>\nroun ded</w>\nflu ore\nbol d\ndisa sters</w>\nam oo</w>\ngener ic</w>\ncran es</w>\nbrief ly</w>\ngi g\nauster ity</w>\nanticip ation</w>\nfor ti\ntreas urer</w>\ncann y</w>\nce cil\ndete cted</w>\ncheck list</w>\nà¸ §\npam ela</w>\nbar bados</w>\nan field</w>\nhear ty</w>\ntx lege</w>\nperen ni\narro g\ning ram</w>\nâĹ ı</w>\nty ne\nspo on\nr ation\nam ba</w>\nm be</w>\ncam el\nh hs</w>\nyork shire\nreflec tive</w>\nfre aks</w>\nto k</w>\nju do</w>\npartic les</w>\ndu bs</w>\nban jo</w>\naccred itation</w>\nprover bs</w>\nover dose</w>\ninte gral</w>\ngu ang\nmc s</w>\nsuper car</w>\naf b</w>\nal vin</w>\nail s</w>\nx tre\nst aging</w>\ntw ent\nrabb its</w>\nmar o\ninste m</w>\ndol l\ncr ay</w>\nsant ana</w>\nble ach</w>\nmini ons</w>\nche ap\nman t</w>\ndi vers</w>\ncatal onia</w>\nlo is</w>\nmat ri\ncou gar</w>\nkay ak</w>\ne gre\np so\na ia</w>\nå ®\nchar lton</w>\ntr acked</w>\nsc ari\npe tt\nf wd</w>\nx in\ngra vel</w>\nbr ic\nbigg boss</w>\nar den</w>\nhu gging</w>\npal ms</w>\nst v\nli mb\nthe movie</w>\nhandic ap</w>\nri me</w>\nz ai</w>\nstu b\nindi a\nlithu ania</w>\nrhy th\np ita</w>\nmaced onia</w>\nhigh ered</w>\nbrid get</w>\nschwar z\nske let\nhi kes</w>\nant arctic</w>\nc ps</w>\nmash up</w>\nÐ °</w>\nn ell\nchand ra\nhe ir\nan us</w>\nsher idan</w>\nmi mi</w>\nmuse u\nbec ca</w>\nan ir\nbar rie</w>\ndioce se</w>\ncompar able</w>\nðŁı³ï¸ı âĢį\nyuk on</w>\nme p</w>\nhor mon\nmer ic</w>\nal f</w>\ncon quered</w>\nchrist church</w>\nðŁĴĻ ðŁĴĻ</w>\nhazard ous</w>\npoo h</w>\ncont ing\nretro spective</w>\npar ame\nna ir</w>\ncon sor\nho tra</w>\nastoni shing</w>\ncater pillar</w>\nu man</w>\nti sm</w>\nt vs</w>\nserv ic\ncroy don</w>\nmor ales</w>\nc g\ncu m</w>\nte ur</w>\nscan ada</w>\ns all\nmagno lia</w>\nel ise</w>\nth our</w>\nà® ¿</w>\nag omez</w>\nphel ps</w>\në°©íĥĦìĨĮëħĦëĭ ¨</w>\nwh os</w>\nweav ing</w>\nsi sd</w>\npro poses</w>\ncro ws</w>\npre sale</w>\neconom ies</w>\nbernar do\nsha hid</w>\nair show</w>\nmc cann</w>\nhor ticul\nnr l\ndu el</w>\nmongo lia</w>\ntou lou\nrequi rement</w>\nstruc tured</w>\ned i</w>\no lives</w>\nhe a\ncu ter</w>\nÐ º\nenthusi ast</w>\nharri et</w>\ndomin ion</w>\nsub mer\nðŁį ĥ\nsa ab</w>\nnes burg</w>\nmo ff\ndef ended</w>\nbur t</w>\nrewar ded</w>\ngold man</w>\nop tics</w>\nkhali d</w>\nhouse holds</w>\nbuc kets</w>\nce cil</w>\nche ss\nsubstan tial</w>\nef l</w>\noper ation\nevalu ate</w>\nst n</w>\nrece ssion</w>\nl ll</w>\ntom as</w>\ntru ths</w>\nak bar</w>\ns words</w>\np act</w>\nembarra ss\nha o</w>\nay urve\nscrip ture</w>\nny cc</w>\nop t</w>\ndi ameter</w>\nsc ented</w>\norgani zers</w>\nre lat\nha e</w>\ndream ers</w>\nde se\nðŁĮ »\nrestric ted</w>\nn ale</w>\nr hp</w>\ndol an</w>\nmun ster</w>\nha ired</w>\nconsult ants</w>\njo ints</w>\nhu mil\nd ill</w>\nrelent less</w>\nt Ã©\naf il\nut ilities</w>\njapan ese\ncondem n</w>\npet ite</w>\ncolli de</w>\nq f</w>\npeach es</w>\ncou rier</w>\nl ore</w>\nâĺİ ï¸ı</w>\nreli ability</w>\nch uk</w>\nðŁĻ ĥ\nstu res</w>\nge ther</w>\nho stel</w>\nbi er\n- _-</w>\nâ ĩ\ne ze</w>\nta ilo\ndi ent</w>\nblu ff</w>\nchu ffed</w>\npil ip\nmon arch\ne em</w>\nbu chan\nb ick\nop au\nku ps</w>\nà¸ ¢\npist ons</w>\nsp ins</w>\nm and</w>\nce st</w>\nbur ne</w>\nv ile</w>\ncher ries</w>\nbec kett</w>\nneed les</w>\npan ch\në Ĥ\nhaha h\ntrou bles</w>\ninsi sts</w>\ndo you\ng mc</w>\nmor tar</w>\ndeleg ate</w>\nin n\ng anda</w>\nsin atra</w>\nà¤ ¤</w>\nspee ding</w>\npu pil</w>\npre mises</w>\nali gnment</w>\npi kach\nas us</w>\nj alan</w>\nØ µ\nlime stone</w>\nfol kl\nparme san</w>\nce il\nmo y\nshawn mendes</w>\nac up</w>\nhu st\not es</w>\nmed ina</w>\nma di</w>\ngta v</w>\ncensor ship</w>\nar g</w>\nswe eney</w>\nsy kes</w>\ncol o</w>\nfoot steps</w>\ncann ed</w>\nadv ance\ngta online</w>\nhealthy living</w>\nðŁį ¾\na ig\np ality</w>\noc s</w>\nhe brew</w>\nim minent</w>\nberk shire</w>\njeremi ah</w>\nout going</w>\nbak er\nentr ata</w>\nma ids</w>\ngro ves</w>\nbo c\na del</w>\nm fw</w>\ncon science</w>\narm ys</w>\nnut ella</w>\nconte stalert</w>\nnovel ist</w>\nla h\nban ker</w>\nmarque z</w>\nðŁı ¡</w>\nto ff</w>\nout age</w>\ngr p</w>\nðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃ</w>\nmusc le\ndu dley</w>\nnvi dia</w>\nmi di</w>\nm uni\ness ays</w>\ndat ac\ncar ter\nà¸ £</w>\nt ans</w>\ni ves</w>\npublic ations</w>\nal er</w>\nok wx</w>\nil u\ncu tt\nhar p</w>\nout law</w>\nluther an</w>\nbr ill\nbo lic</w>\ndo well</w>\ngreen land</w>\nbe sties</w>\npath i</w>\npay ton</w>\ngue st\nhar den</w>\nðŁ¤ ©\nann ed</w>\nevacu ation</w>\npo ised</w>\nmc der\nb han\no i\nenvel ope</w>\nci d</w>\nca vi\nta pas</w>\nbook review</w>\ngrey hound</w>\nâĻ ª\nfe ud</w>\nlun gs</w>\nfor te</w>\nrai der\nff er\noni x</w>\ndep end</w>\nyn wa</w>\nrel ating</w>\nde vs</w>\nðŁĴ Ĳ\nacqui res</w>\nd ha</w>\nj yo\npriv ati\ncan ine</w>\nk b\ncra b\nsar din\nimag ining</w>\nk j\nem por\ndown hill</w>\nne z</w>\nta eyeon</w>\nnick imin\ngb p</w>\nà µ\nw ap\nsec co</w>\nma shed</w>\nðŁĴ¥ ðŁĴ¥\naugu stine</w>\ndiss ol\ndic tator</w>\nâ ĵ\nvi per</w>\ned fringe</w>\nvau x\nhard work</w>\nbook let</w>\nno x</w>\nchi ff\nðŁĴ ¨\nobserv ations</w>\nxbox one</w>\nu sher</w>\nke er\nlu p</w>\ndal las\ncal gary\nma dra\ndi ous</w>\nk bs</w>\nwood ward</w>\nhero ine</w>\nlu mber\nsea world</w>\no ws</w>\nmc ke\nmaver ick</w>\ngu la</w>\ncross roads</w>\nfan g</w>\ns ade</w>\nnik ol\nchee tah</w>\nme c</w>\npp g</w>\ner ick\nðŁİ µ\ntox ic\nbj j</w>\nviol a</w>\nsp ire</w>\nch ino</w>\ntra vis\ninstitu tional</w>\nha as</w>\nlow ry</w>\nw ac\nea e</w>\nhu mid</w>\nmp ton</w>\nru ck\nje w</w>\nc ine</w>\nzim mer\nse f</w>\nbhar at\nfre es\naam ir</w>\nðŁĴ ħ\nz inc</w>\nwan e</w>\nmulti player</w>\nroyal wedding</w>\ne el</w>\npreci pit\nqu ery</w>\nkimber ly</w>\nisa bel</w>\nful fill</w>\nig an</w>\nvau l\npan e</w>\nsc y\ndig it</w>\ngun n</w>\nu tah\ndog day</w>\nfi on\nxia omi</w>\nda c</w>\nel ast\ncha vez</w>\nro blo\ng ine\nten th</w>\nab h\nke to\nhur dle</w>\nna dia</w>\nmemorab ilia</w>\nha bs</w>\nqu an</w>\nh w\nhv ac</w>\npix ar</w>\nec cle\nkram er</w>\naccu ses</w>\nðŁĴļ ðŁĴļ\nper se\nmean time</w>\nwa hl\natle tico</w>\nâĢ¢âĢ¢ âĢ¢âĢ¢\nott oman</w>\nno vo\nk us</w>\nconne cted</w>\ntru sts</w>\nd mv</w>\nspen cer\nrahu lg\ndo ve\nsto kes</w>\nbolog na</w>\nenthusi asts</w>\nÃ ª\nrockstar games</w>\nted cruz</w>\ndu ras</w>\ns acked</w>\nlate x</w>\nimmer sive</w>\ncer t</w>\nlu cin\nprinci pals</w>\nfa res</w>\nsa ils</w>\nfar n\nam ent</w>\nsaf fron</w>\nquent in</w>\ncheck point</w>\nfer ris</w>\nex cur\nðŁĳī ðŁı¼</w>\nbai ley\nse h\nter re</w>\nmad am</w>\ns band</w>\nwan derers</w>\ncumber batch</w>\nyy c\ndigit ally</w>\nblackandwhite photography</w>\nroll in</w>\nmoroc can</w>\nðŁĮ ħ</w>\ndin ner\nd well\nto om\nm ye\nez ra</w>\ncp fc</w>\nwar hol</w>\nme er</w>\njon ah</w>\nno aa</w>\ns gate</w>\nso on\nsecu lar</w>\ng ating</w>\nti o</w>\ndri ver\nsi ssy</w>\nassan ge</w>\nta th\ned mund</w>\nbobc ats</w>\nra ji\npo stage</w>\nstu ds</w>\nm gm</w>\nkat o</w>\nedin burgh\nmeet the\nshir t\nfa a</w>\nmens fashion</w>\nsp reads</w>\nwi m</w>\ncar ts</w>\nphoe be</w>\nj ars</w>\nbot swana</w>\nÙ Ĥ\ned war\nsk ar\nri ve\ngu sty</w>\nc tv</w>\nferdin and</w>\nsu therland</w>\nnickimin aj</w>\nk v\nsi us</w>\nbee ch</w>\nre z\ndesi res</w>\non ial</w>\ncamp o</w>\nquar ry</w>\nlor raine</w>\ngil more</w>\nig gy</w>\nµ ï¸ı</w>\nho pping</w>\navi z</w>\nðŁĮ º\nuni sex</w>\ndedic ate</w>\natt itudes</w>\nste er</w>\njun kie</w>\nrail way\ny b</w>\nwhi sper</w>\nkey an</w>\nk us\nju g</w>\ndi x</w>\na ins</w>\nsum mon\nov ich</w>\nsy ed</w>\nher ald\nma ison</w>\nme ded</w>\nwild flower\nmain land</w>\nri sky</w>\nru kh</w>\nover looked</w>\nki c</w>\ndestro ys</w>\nnam an</w>\nki p\nz ano</w>\nchampion sleague</w>\nban dit</w>\nquin cy</w>\nsmi le\ncal vin\nopen ings</w>\nta pp\nol ulu</w>\nspec tro\naccred ited</w>\nap k</w>\npra ised</w>\nbar nett</w>\npol len</w>\npremi ered</w>\nselen agomez</w>\ntou red</w>\nscreen ings</w>\nuu u</w>\nmis o\nen se</w>\nadam lambert</w>\nguel ph</w>\nhar yana</w>\nhu tto\nle ar</w>\nl tc</w>\npo ached</w>\nbrex it\næ Ŀ\ntt c</w>\npa vement</w>\nmon gers</w>\nro e\nad ers</w>\nling ton\nparticip ant</w>\nca red</w>\nga il</w>\ny ates</w>\nlan tic</w>\ndash board</w>\njo o</w>\nfeli pe</w>\nssi onist</w>\nbu m\ns end\na eri\nthu gs</w>\nluci fer</w>\na he\ndete ctor</w>\nfil ly</w>\ngas oline</w>\nham per</w>\nhump day</w>\nthe ta</w>\nthe band</w>\nfore casts</w>\no hhh</w>\nlo bb\nhol l\ncp u</w>\naz u\nad ar\nhai ley</w>\nbu b\ncar t\nquo ted</w>\nan archy</w>\npan cre\ntwit art</w>\nal den</w>\nst ash</w>\nthe less</w>\nor ni\nbelie bers</w>\nmor mon</w>\npartic le</w>\navi ation\nâ¬ Ĩ\nwebcam toy</w>\nsad dened</w>\ncru is\nham let</w>\nn ct\nroll ins</w>\nmarque e</w>\nsaw yer</w>\nreli ance</w>\na ura</w>\ndi ec\nsoo thing</w>\nsig nings</w>\nak is</w>\nÃ ³</w>\nat kins</w>\naer op\nðŁĮ ¿\ny ab\nsh ari\ncon nol\ndu bbed</w>\nmanufac ture</w>\nconvin cing</w>\nfeelthe bern</w>\nra u\npu lit\non ec\ngem stone</w>\nur ging</w>\nbag u\nga h</w>\naci ds</w>\nfi anc\nzodi ac</w>\nsn oop</w>\nher rera</w>\niniti ated</w>\nven ge\nprofess ors</w>\npro di\nstron ger\ne mission</w>\nbb a</w>\nhal le\nta pp</w>\nhaw an</w>\nwh im\ncompe ted</w>\nmyr tle</w>\nir port</w>\ncold play</w>\nach e\nske p\nm son\nss ic\ncalli graphy</w>\nswim mers</w>\nme y</w>\npp c</w>\nthri ft</w>\npo c</w>\nre places</w>\ncommu ter</w>\nâģ¦ âģ¦@</w>\ngo ers</w>\nlo gue</w>\npara dig\nbas kets</w>\nsensiti vity</w>\njoh an</w>\natl antis</w>\n& &</w>\nsuit case</w>\nanxi ous</w>\nl h\nstr i</w>\ngal loway</w>\nstre ad</w>\nwar den</w>\ngr ounded</w>\nffici ency</w>\nli feat\nreli c</w>\ndisgu ise</w>\nisland ers</w>\nf cofficial</w>\nclassical music</w>\nb mc</w>\nen field</w>\nbi que</w>\noak ley</w>\nbat man\nsla ying</w>\nner ves</w>\nmul tit\ncalci um</w>\nprojec tor</w>\nscott sdale</w>\nant ino</w>\ngri ps</w>\nkim mel</w>\ndes mond</w>\nprote stors</w>\nhi atus</w>\nmetaboli sm</w>\nconclu ded</w>\npress er</w>\nti pping</w>\nsli de\ne to\nhun ting\naus open</w>\nri k</w>\npp ery</w>\ninnov ators</w>\npitch ers</w>\nag ger\nfun gi</w>\nz ad</w>\nproli fic</w>\nrockn roll</w>\nbl ames</w>\nct ar</w>\nstam ford</w>\nq ad\nmozz arella</w>\ninsan ely</w>\nden ver\nph ouse</w>\nnom ad</w>\nï ¿\ns ris\npro du\nhen ley</w>\npag an</w>\nam trak</w>\nru bi\nin cl\ntu tor</w>\nsco tia</w>\nwo es</w>\nsing apo\nfun nel</w>\nturn bull</w>\nknow ledge\ngri mm</w>\nreal madrid</w>\nwe are</w>\nmissi les</w>\ncon sol\nemo jis</w>\nsne ak\nsmi ths</w>\nru iz</w>\nbr ou\ni el\nha ver\nðŁĮ ļ</w>\nkin gof\nbasil ica</w>\ncircul ation</w>\nprin ters</w>\nta pping</w>\nri dley</w>\ndra gged</w>\nha j\nwrit er\nfundament als</w>\npersonal ities</w>\nme tre</w>\nstereo types</w>\nbur le\nbest of\nn ffc</w>\nha th\nmini stries</w>\na ali\ntrac ing</w>\npav ed</w>\nł ï¸ı\ng ic\ninsp ire\ntu g</w>\nha re\nrepe ated</w>\nex pon\nlol li\nrho de</w>\npre cin\ninstall ations</w>\ninstag ram\naz ar</w>\ni es\nsole ly</w>\ndu kes</w>\nmission ary</w>\nvan guard</w>\nfursuit friday</w>\non d\npol ari\nma st</w>\nhar an</w>\njos Ã©</w>\njack ed</w>\nec oun\nal ities</w>\nne ph\nra vel</w>\nmoder ated</w>\nsco w\ns fb</w>\nuru guay</w>\nas o</w>\nni g\nau du\np ints</w>\nlat ina</w>\nben z\nm itting</w>\nchar ted</w>\nmat ology</w>\ncit ro\nbiop ic</w>\nðŁĳ Ń</w>\ndjo kovic</w>\nfox y</w>\nagu il\nso to</w>\nan ada</w>\nsin king</w>\nsc rap\nhair s</w>\nbethan y</w>\nfact friday</w>\nðŁĲ Ĳ</w>\nunlea shed</w>\n) (</w>\ncontra dic\nram on</w>\ncoast line</w>\ny ong\nsn sd</w>\nli gan</w>\np ome\nmit age</w>\nge tt</w>\nwat i</w>\nri sk\nso aring</w>\nbru sh\nf pl</w>\nav an\nå Ĩ\nlar son</w>\nsh ear\nmul til\nblu r</w>\nmulti media</w>\nchun ky</w>\npar i</w>\nn ani</w>\nweir d\ncholester ol</w>\nchar les\ndream ed</w>\ntan ning</w>\npuzz les</w>\nfr am\nhand ball</w>\nch ag\nbeli ze</w>\nal u</w>\nbang s</w>\nÑ Ħ\ndetec tives</w>\nmc g</w>\nish q\nbo thered</w>\nsaf c</w>\nmp ing</w>\nten eri\ng ays</w>\nsail or\nan gi\nmul ticul\ngue ssed</w>\nros Ã©</w>\nhigh ways</w>\nbro om</w>\nchatt anoo\n- '</w>\nsee ker</w>\non ed\nat f</w>\nlu c</w>\n> <</w>\nbar i</w>\nper cep\njewel ry\nas ph\nsor row</w>\nsl ing\nmam moth</w>\njac kie\në §\nwilt shire</w>\nsa o</w>\ncan cell\nim paired</w>\ntor ial</w>\nbre ed\nguy en</w>\njud ice</w>\ntit le\npro spective</w>\napplic ants</w>\nðŁį Ĭ</w>\nepis cop\ne id\nb yo\nstock ings</w>\nðŁĴĥ ðŁĴĥ\nll p</w>\nsna g</w>\nkeep it\nl ough</w>\nol son</w>\nmatur ity</w>\n!! !\"</w>\ncop ter</w>\ni sha</w>\nbl i</w>\nwil mington</w>\ntr youts</w>\nth ai\nðŁ¥ ³</w>\npe bble</w>\nkra ft</w>\nf p\nÂ º</w>\nssi vely</w>\nli vin</w>\ncontest ants</w>\ntex tures</w>\njo an\nh dr</w>\nfilm festival</w>\nprov ence</w>\nwi do\nop end\nc si</w>\nsto wn\ncro ati\nad just</w>\nhost ile</w>\nanaly sts</w>\nil an</w>\ncu ppa</w>\nbru m</w>\nnewfound land</w>\ngood win</w>\nme tt</w>\nmall orca</w>\nplu gs</w>\nbu k\nbb hutto\nwrest le</w>\nsa ire</w>\nsho pped</w>\nfor za</w>\nle head</w>\nvi vo\nba st\nro xy</w>\nreg is</w>\nhard working</w>\nhon olulu</w>\ndesp air</w>\nyoung sters</w>\nni g</w>\nimpro mp\nroll tide</w>\nde emed</w>\ntre ason</w>\nru shed</w>\nfor ged</w>\nff f</w>\npikach u</w>\nbri ggs</w>\ndo it</w>\nac cent\nla us</w>\ngla ze</w>\ncompet ent</w>\na ho\nphoto g</w>\nmid field</w>\nle go\nhar vard\nmin orities</w>\nre illy</w>\nslic ed</w>\nonce upon\niniti ally</w>\nfinanci ally</w>\nlandscape photography</w>\nhar dro\nqu o</w>\nmm ers</w>\npar kinson</w>\nsmu gg\nread iness</w>\nbru tally</w>\nglou cester\nmp ed</w>\nbbhutto zardari</w>\nmur der\nye d\ndat aviz</w>\nsr t</w>\ndow ning</w>\nbi ans</w>\nm Ã¼\nfle ck</w>\nfli pped</w>\ns ly\nbrilli ance</w>\nri m\nk um</w>\nbubb a</w>\nko i</w>\nknit ted</w>\nsor g</w>\nma is</w>\nðŁĮ ²</w>\nti ss\nsu stain</w>\nsen su\nak han</w>\nzi est</w>\nexam ines</w>\nchardon nay</w>\nuser name</w>\nshort list</w>\nre bs</w>\non o\ndar ing</w>\nhard wood</w>\nche que</w>\nrighte ous</w>\nlight ening</w>\ndir k</w>\nshra dd\ndu ra\ndown stairs</w>\nsh al</w>\nami gos</w>\nru ff\ns law</w>\nri es\nred nation\nman us</w>\nðŁĩ§ ðŁĩ·</w>\ndistin ction</w>\nu bun\ndur an</w>\nmi gra\nthi ans</w>\nla ver\ndomest ic\nk x\njaz zy</w>\njusti fy</w>\nbelong ing</w>\ninsul ation</w>\ncolor stv</w>\ndrun ken</w>\nchann eling</w>\nqu and</w>\nxi ii</w>\nenligh ten\nkan o</w>\nfati ma</w>\nteen choice</w>\nterri fied</w>\np ba</w>\nas ley</w>\nmet museum</w>\ndun e</w>\npack er</w>\nki o\nðŁĴľ ðŁĴľ</w>\nbo iler\nfas cism</w>\nar mored</w>\nback grounds</w>\nin mates</w>\nembarra ssed</w>\ndefin es</w>\nth d</w>\nwe go</w>\nsilic one</w>\nlo on</w>\nel ding</w>\nbor rowed</w>\nhe mp\nak sh\nkaw asaki</w>\nbr y</w>\nde af\nkill er\ndispo sal</w>\nðŁĩ °\nglaston bury</w>\nun covered</w>\no xide</w>\npo ff</w>\nd ant</w>\nk j</w>\nku ro\ndri zzle</w>\npeop les\nfe e\npro pri\ndd lovato</w>\npi ggy</w>\not is</w>\naller gies</w>\nu bis\npengu in\nser a</w>\nvi z\nprosp erous</w>\nici des</w>\ntornad oes</w>\nsene gal</w>\nweb cast</w>\nsto red</w>\nenchan ted</w>\nbb cone</w>\nbay area</w>\nentrepreneu rial</w>\nrednation rising</w>\nexperim enting</w>\nang an</w>\nlot to</w>\nthey re</w>\npor e</w>\ner p</w>\nseren e</w>\neast wood</w>\nbro kers</w>\nbar ge</w>\nstal lion</w>\ntimber lake</w>\ntailo red</w>\ndy stop\nb ate</w>\nlat ors</w>\ndi xit</w>\nbran son</w>\ndynam o</w>\nky lie\nshame ful</w>\nbt wn</w>\nspring time</w>\nmix ture</w>\ns ounded</w>\nlu ton</w>\ndad es</w>\nmal a</w>\nop ra</w>\nen ic</w>\nrahulg andhi</w>\nse wer</w>\n~~ ~~\nky u\nnor theastern</w>\nca er\nbc u</w>\nnir vana</w>\nkitch ens</w>\nous y</w>\nal m</w>\nriver dale</w>\nhid den\nfl int\nsp d</w>\npat rons</w>\nkaty perry</w>\nau gh\nexhib itions</w>\nsm c</w>\nshu ts</w>\nat ore</w>\nda in</w>\nsome thing\nber th</w>\nbo g</w>\npor ter\ngen to</w>\ncon cussion</w>\nang lic\nro we</w>\ngr illing</w>\nscar lett</w>\nmaster ing</w>\nmor nin</w>\ncomm ented</w>\nsi me\nsi zing</w>\nchrist y</w>\nce os</w>\nst m</w>\nat ry</w>\ntari ffs</w>\nvac ation\npre judice</w>\np su</w>\nparen tal</w>\nfar age</w>\ncan a</w>\ncap com</w>\nkoso vo</w>\nyou re\nmen stru\nstal in</w>\ngrape fruit</w>\nbr an</w>\nche sa\ndav en\nexc el\n!! )</w>\nà¹ Į</w>\ndistribu tor</w>\nce a</w>\nbride sma\nmillenni al</w>\nwa in\nob serving</w>\nmis ery</w>\nplan etary</w>\nexpo sing</w>\nbra ised</w>\ncomp ton</w>\ndon gha\nq l</w>\nspring steen</w>\nth ul\nsyl ve\ncab o</w>\npal ad\nniel sen</w>\ngaz ing</w>\nba ja</w>\nr oud</w>\norchi ds</w>\njohan nesburg</w>\nse man</w>\nd ji</w>\noper ative</w>\naffe ction</w>\neclec tic</w>\nat c</w>\nmut ant</w>\naw x</w>\nnic e\nmel bourne\nindu lg\ntu lip</w>\ndias pora</w>\nwel p</w>\nbig gie</w>\nmississ auga</w>\nretri ever</w>\nor an</w>\ntam my</w>\nc ta</w>\nhipp o\nseas oned</w>\nger mans</w>\neng v\nmarvell ous</w>\nim f</w>\nrela ys</w>\nmon tan\nmaur iti\nme ister</w>\nas surance</w>\nreig ning</w>\nsu fficient</w>\nhan e</w>\nno thing\npos se</w>\nnav y\nin love</w>\nbrigh ton\nen qu\nch ung</w>\nsweat y</w>\nes c</w>\ncal ed\nman s\nnicar agua</w>\nsl ices</w>\nmo cha</w>\nwashington post</w>\nbb n</w>\ndam ned</w>\ngrow ing\nen burg</w>\nlo an\nme s\nwh oops</w>\nbeliev ers</w>\nspi el\nvo daf\nl at</w>\ns led</w>\ncricke ter</w>\nbrown e</w>\ngolf ers</w>\nbar ra\nwat chers</w>\nlu igi</w>\nsw amy</w>\nmom s\npit ched</w>\nsan tor\ncr s</w>\nsi re</w>\nsc amp</w>\nbo de\nste war\njon ny\nent ity</w>\npac qui\nmind ful</w>\nmin india</w>\nbear ded</w>\ntemp t</w>\nscorpi on</w>\neat on</w>\nauthori zed</w>\nar to\ns vp</w>\nop athy</w>\ncch ini</w>\nhouse music</w>\ndisney world</w>\nâĢĶ @</w>\npro pose</w>\ndi y\nexpen se</w>\nten g</w>\npupp ets</w>\nsm el\nd aca</w>\nper ry\nfin n\nboo sting</w>\nlefto vers</w>\ncou gs</w>\nsatell ites</w>\nman y\naz e</w>\ng ong</w>\nfi e\nmetho do\nfer ries</w>\nðŁ¤Ķ ðŁ¤Ķ</w>\nexplore rs</w>\nload er</w>\nattrac ted</w>\nil ton</w>\ngodd amn</w>\npi azza</w>\ndoc tr\nsav ing\nparagra ph</w>\nvisu alization</w>\nmay ors</w>\nwork flow</w>\nack les</w>\nðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ\nà¤ ¸</w>\ntwer k</w>\nclu t\nlo ver\nte ases</w>\nsi an\no te\ndeter ior\naccor d</w>\nl fw</w>\nswar ovski</w>\nnat al</w>\ntra ps</w>\nk ina</w>\nanaly ze</w>\nlaye red</w>\nbever ages</w>\nun it\nran som\npe shaw\ndest ined</w>\nastro logy</w>\nsi pping</w>\nmiley cyrus</w>\ncam ino</w>\nmarshmal low</w>\nbli ss\nout back</w>\nfa q</w>\nint oler\nhumil ity</w>\npo ppin</w>\nhallo ween\nmon tene\nop hy\nnu n</w>\ntattoo ed</w>\na as\nðŁĮ ³</w>\ndale y</w>\nqual ity\ndu sa</w>\nfisher men</w>\nswi f\nter rac\nst au\nle in</w>\ntrol ling</w>\nship ment</w>\ngarden er</w>\nmarch madness</w>\nhead band</w>\ngr t</w>\nbur nett</w>\nw and</w>\n!!!! !!!!!</w>\ngh e</w>\ndu x</w>\nhu d</w>\nwar ner\nðŁĩ ¦</w>\nex ile</w>\nrescu e\nrat a</w>\nd han</w>\nduc ati</w>\ndro wn</w>\nbl ends</w>\nspi e\nalli gator</w>\nsimul taneously</w>\nbroo ke\nu ke</w>\nk har</w>\ncomm union</w>\nri ka</w>\nford fc</w>\nchin atown</w>\nyou rown\nme y\ncan al\nsyste matic</w>\nde pri\nox ford\nan il\nw ut</w>\nequ ation</w>\nbe z\nfle ur</w>\nthe good\nlang ley</w>\nad ity\ned ith</w>\nal fie</w>\nÐ¾ ÑĤ\nen cry\nbr ill</w>\nex emp\nce sar</w>\nmb ling</w>\nab ri\nsc icom\nj ing</w>\nschool ing</w>\nmi ka\nmechan isms</w>\nimpromp tu</w>\nrhe a</w>\nmoo re\ncrime a</w>\nbe sto\nwri ght\nel ders</w>\nro ds</w>\nkam al</w>\nfolkl ore</w>\nbe et</w>\nmini on</w>\nreli eve</w>\nthr o</w>\nteam usa</w>\npas cal</w>\nmade with\nboli via</w>\nitt i</w>\nfree bies</w>\ndesi red</w>\nbest selling</w>\nl iness</w>\nla den</w>\nke ane</w>\nmi sts</w>\nhipp ie</w>\natta chment</w>\n@ /</w>\nse w</w>\nflan agan</w>\nâĿĹ ï¸ı\nsupre mac\nstl cards</w>\nsi as</w>\nq u</w>\nrh ys</w>\nste ep\nval leys</w>\nv w\npav ing</w>\ndisp at\nal ison\npor te</w>\nid u</w>\nnew sc\nsoc ket</w>\nmo s\nco star\nre vo\nprote ins</w>\nstanley cup</w>\nm cal\near ring</w>\nse cs</w>\nmc lean</w>\ncap ric\nnick elo\nad en\nv c\nshou se</w>\nadap tive</w>\nmaxi mize</w>\nentertain er</w>\npro se</w>\ngri ffi\nsix teen</w>\nlam ar\nmi rage</w>\nsaudi arabia</w>\nawe ather</w>\nru st\nin filtr\nfashion week</w>\nðŁĺĬðŁĺĬ ðŁĺĬ</w>\nselec tive</w>\nbubb le\na den</w>\nfen nel</w>\ndeci sive</w>\nm ta</w>\nmock ing\nmb les</w>\nst amp\nmu le</w>\nbernar do</w>\ngr in</w>\npo tt\nj ingle</w>\nvet tel</w>\ncolom bian</w>\ncam o\nmotivation monday</w>\nba han</w>\np ly</w>\ndh ary</w>\nk ami</w>\nx men</w>\nsleep er</w>\ngar a</w>\nmy sti\nconfi dential</w>\nconflic ts</w>\np neu\nce s\ninsur tech</w>\nclean se</w>\nme rely</w>\nva is</w>\ntu x\nthe great\nshar on\nma j</w>\nhol a</w>\neco systems</w>\naj ay</w>\naa j\nhu sh</w>\nhar mon</w>\nbackto school</w>\nwiki leaks</w>\nreflec ted</w>\nðŁĺ ĵ</w>\ncommemor ating</w>\nac et\nbuck ingham</w>\nmessi ah</w>\ntu ous</w>\nhor net</w>\nto be</w>\nd q</w>\nhe ine\nmi g</w>\npl ate\nnichol son</w>\nsp ie</w>\ncumber land</w>\nnor mal\npho bia</w>\nhappy halloween</w>\ncity fc</w>\nmc el\ngilli an</w>\nke to</w>\nlu de</w>\nde mise</w>\nsu ga</w>\nstr ate</w>\nmcgr ath</w>\nvisit scotland</w>\nfoo led</w>\ncb r</w>\ngc se</w>\ncol ori\npo td</w>\nmissuni verse</w>\nfin ances</w>\nma poli</w>\nfor ks</w>\nØ ´\ncann on\nmedic inal</w>\nðŁĹ ĵ</w>\nkh o</w>\nwre ck\npan to</w>\nbag el</w>\ngu ll</w>\nsyndic ate</w>\nic y\npr c</w>\nki en</w>\nzi ka</w>\nti sh</w>\npe ta</w>\nc co</w>\nli za</w>\nch ut\nex traction</w>\nel g\ngl i</w>\nfu eled</w>\npos it\nrespec tively</w>\nleice ster\nbr ink</w>\nvulner ability</w>\nim ported</w>\ne sha</w>\nðŁ¦ ħ</w>\nr ural\nre ll\ngam ing\natlan tic\naband on</w>\nno ah\nre solved</w>\npro state</w>\naller gic</w>\nps d</w>\nâĺ ¹\ndun geon\nfang irl</w>\nillumin ated</w>\nm hs</w>\nwhite sox</w>\nd ently</w>\nck o</w>\nendor se</w>\nover ly</w>\ndazz ling</w>\nprior iti\nnight life</w>\nut il\nbe have</w>\nflam en\neast bound</w>\nðŁĴ Ł</w>\nilove you</w>\ngov uk</w>\nmozam bique</w>\nalle gi\ndr i</w>\ntestim onial</w>\nath s</w>\nì§ Ģ\nmm y\nshab by</w>\npro secco</w>\nfriend ships</w>\ncal am\ndam ages</w>\noff set</w>\njura ssic\njun o</w>\narre ll</w>\nðŁĴ ©</w>\ninterven tions</w>\ndare devil</w>\ncar ver</w>\nrun away</w>\nran e</w>\ntruste es</w>\nha ute</w>\ndep ths</w>\nðŁİ Ń</w>\nme in\nsacrific es</w>\ncon cier\nne sting</w>\ni zzy</w>\nme tam\nilove my\nur ine</w>\ndu lu\nmal hotra</w>\nve ins</w>\nnight ly</w>\nco at\nan di\nhe witt</w>\nlon el\nci ble</w>\nwr ite\njen nie</w>\nsant ac\nĸ ï¸ı</w>\nstr ato\nsingapo re\nsop rano</w>\nkri sten\ncheer ful</w>\nflee twood</w>\nfa iri\nm eli\nwa st\ntur nt</w>\nsfor sale</w>\nsc rolling</w>\nangel ina</w>\nren dition</w>\njeric ho</w>\nnick y\nor b\nfla vo\npatri ot\nash eville</w>\nsick ness</w>\nre fund</w>\naggre ssion</w>\nb pl</w>\nãĥ ĥ\nelu sive</w>\nthi story</w>\nhang er</w>\nbu ffs</w>\nvil las</w>\nat kinson</w>\nsp h\nja it\ndecl ined</w>\nwo k</w>\nsupre macy</w>\noo tball</w>\ney ang</w>\nðŁİ ĵ\ns ford</w>\nath i</w>\nconsu me</w>\nroad ster</w>\ne so</w>\nu pro\nreci pe\nau f</w>\nuc i</w>\nar on</w>\noo oh</w>\ncs go</w>\nre ich</w>\nmc d</w>\nmin ute\nladi es\npun k\nrut gers</w>\nmee k</w>\nariz on\nta j\nland lord</w>\nde gra\nautu mn\nlyn x</w>\nus f</w>\nb hi\nfairy tale</w>\ndongha e</w>\nbet sy</w>\nexplo ded</w>\nchen nai\nop a</w>\npro tag\nbr ant\nðŁĵ °:</w>\ng f\npal li\nðŁı¼ âĢįâĻĢï¸ı</w>\nsu t</w>\nill ini</w>\ncolum nist</w>\nshir tless</w>\nde centr\nsear ched</w>\nec or\nbu ggy</w>\ns ack\nðŁĺĤ ðŁĺŃ\nde t\nther i\nor naments</w>\nbring back\nto v</w>\nquarter finals</w>\nic he\ncon stra\ngi er</w>\nbuchan an</w>\nvi x\nkay aking</w>\nmu stread</w>\nswal low</w>\nmel b</w>\nsc af\nop al</w>\nmay oral</w>\nhar at</w>\nðŁ¦ ĭ</w>\nschedu les</w>\nid f</w>\nha gue</w>\nro z\na ah</w>\nd mc</w>\ndu plic\nca che</w>\norph an</w>\nfrac ture</w>\nrec on</w>\nch av\nbun nies</w>\nal ain</w>\nmustaf a</w>\nðŁİ Ļ\nvac ations</w>\ndynam ite</w>\ntex ted</w>\nbroad caster</w>\nðŁĴ £</w>\nste amed</w>\nrock er</w>\ndi etary</w>\nluxury travel</w>\ninaugur ated</w>\nsa wards</w>\nvaugh n</w>\nlincoln shire</w>\nclick ed</w>\nkra ja</w>\nf anc\nremo ves</w>\nlayo ffs</w>\nmc far\nbre eds</w>\nwin nie</w>\njon ghyun</w>\nincen tive</w>\nvari ations</w>\npat ton</w>\natur day</w>\npersist ent</w>\npr un\npi ers</w>\ndal es</w>\næ ĸ\nbreast feeding</w>\nr ance</w>\nta wa</w>\nĤ âĸ\nmur doch</w>\ncap tive</w>\nthi stle</w>\nnic a</w>\ncommod ity</w>\ncou ldnt</w>\nboard walk</w>\ngraci ous</w>\npractiti oners</w>\nn gc</w>\nscru m</w>\nner o</w>\ncamoufla ge</w>\ncol on</w>\nhe i</w>\nphys icist</w>\nsaturday morning</w>\nten er</w>\nsi won</w>\ncolum ns</w>\nbru ne\ny vr</w>\nba ir\nreti res</w>\nhal am\ncab er\nshaz am</w>\nmin u\ncas cade</w>\nmilk shake</w>\ngri d\nd ren\nvin cent\nso dium</w>\nplat ter</w>\ncheer leader</w>\nchen ko</w>\ny ak</w>\nelimin ated</w>\nty po</w>\ny man</w>\nre think</w>\nâĿ Ĺ</w>\nts ville</w>\nbernardo kath</w>\nex tr\nðŁĺģ ðŁĺģðŁĺģ</w>\nta o\nre per\nmo ths</w>\nem powered</w>\nc iting</w>\ntranspor ted</w>\nmon ks</w>\nsan at\ncle ars</w>\nbachelore tte</w>\ncamp bell\nracha el</w>\nhar le\nhand ler</w>\nclimb s</w>\ninter ference</w>\nrele ase\nsh and\nr bs</w>\nhr h</w>\nãģ ª\nval le</w>\nr Ã©\nsli me</w>\nw akes</w>\nchu bby</w>\nslo an</w>\nel ves</w>\nath en\nattor neys</w>\nmicro scope</w>\nston er</w>\nsc aling</w>\no be</w>\nc out\nse man\nmid week</w>\nbal sam\nðŁĺį âĿ¤</w>\nti ful</w>\nv ish</w>\nlo tta</w>\nri pping</w>\nre mn\nti re\nle ap\nha vent</w>\nla by\nhi mach\nwhisp ers</w>\nwe in\nðŁİ ¸\nwild flowers</w>\nse le\nu cc</w>\nli ability</w>\naz ine</w>\nsw ings</w>\nk ya</w>\nta ir\nre main\ne do\nflo ps</w>\npoc ket\ngrand ad</w>\nexam iner</w>\ngr is</w>\nffe ct</w>\nðŁĳĬ ðŁı»</w>\nstud ded</w>\nheart beat</w>\nde acon</w>\nfirm ly</w>\ninfec tious</w>\nste f\nout lines</w>\nle asing</w>\ncla ws</w>\nsen se\ntab s</w>\nhoo t</w>\nmo sul</w>\nspa wn</w>\nco a</w>\nhog warts</w>\nve in</w>\nalban ia</w>\nmanu el\nb ino\nvaux hall</w>\nscot land\ngo bucks</w>\nmat ty</w>\nphy sio</w>\ntor ino</w>\nconst able</w>\ninvestig ated</w>\ns lower</w>\nmistak en</w>\nbay er</w>\nwild fires</w>\nvo ic\nx on\ntime to\nchas sis</w>\nbar ric\npi on</w>\nbald head</w>\nwoo k</w>\nregi str\ndra fts</w>\nb hs</w>\nli gue</w>\nl ick\nstaf fordshire</w>\nbaf ta</w>\ndar ry\nje anne</w>\nven ding</w>\ncor p\nâĽ ³ï¸ı</w>\nkid dos</w>\nfen way</w>\nca o</w>\nwest bound</w>\nðŁĺ Ļ</w>\ndv r</w>\nquick er</w>\nbla h</w>\ngoo die</w>\nðŁĴĭ ðŁĴĭ</w>\nvo x\nesp er\nfac ade</w>\ncor relation</w>\nred bull</w>\nrou p</w>\ndecl ining</w>\nchi ve</w>\nmc gee</w>\ntur o</w>\nin der</w>\nf eller</w>\nfu g\nil ysm</w>\nmar di</w>\npeshaw ar</w>\nki eran</w>\nine ma</w>\nmeat balls</w>\npe ck</w>\ndepre ssing</w>\nsen sing</w>\ngi z\ndd ington</w>\nspring watch</w>\nro aming</w>\nyellow stone</w>\nhorse shoe</w>\nam man</w>\nweek day</w>\nol or</w>\nðŁ¥ °\nboo sts</w>\nspr int\nscar ves</w>\nje e\nbee tro\ncl an\nall the\nìĦ ¸ë\nenlighten ment</w>\nado be\nre generation</w>\n? @</w>\ncont ag\nyach ts</w>\nto u</w>\nmor a</w>\nen voy</w>\nr ani\ngo li\ndhanush kraja</w>\nwood working</w>\nstreng ths</w>\nse di\ndisc s</w>\nar ina</w>\nsc on</w>\nlit e\nano ther\nðŁ¥ Ĭ</w>\nye men\ngu ern\nsav vy</w>\nlo yed</w>\nbiom ed\nheart break</w>\ncomra des</w>\nmilli e</w>\npat ch\nun f\njar vis</w>\nbl aming</w>\ncommemor ation</w>\nge y</w>\nå ¥\ncardio vascular</w>\nalig ned</w>\ndocu ment\n. ?</w>\naesthe tics</w>\nem u</w>\nthe irs</w>\nle h</w>\nps ic\nsi f</w>\npl ateau</w>\nex pend\ndomin ating</w>\nrob es</w>\nmauriti us</w>\nexcep tionally</w>\nhom er\ndiscover ies</w>\nbra un</w>\nten nant</w>\ninsul in</w>\nðŁİ ®</w>\ncar bs</w>\nte as</w>\n? !\"</w>\nzi e\nfranco is</w>\nbrow sing</w>\nth ol\ncla rence</w>\nhel per</w>\nob tained</w>\ncas sie</w>\nle es\n! ,</w>\npome gran\nhu bs</w>\npresti ge</w>\n] [</w>\nmach er</w>\nbott led</w>\npun ch\npi pe\no ch\ngall ons</w>\ndeliver ies</w>\nu ra\nun day</w>\nmon de</w>\ndepic ts</w>\nre gency</w>\noutra geous</w>\nkhal ed</w>\ncar o</w>\nhe arti\nza g</w>\ndevelop mental</w>\nover coming</w>\nstati stical</w>\nflavo red</w>\nfor ds</w>\ncre atives</w>\nlau rence</w>\ndi as</w>\nsun screen</w>\nin ked</w>\npre acher</w>\nn ul\nimpac ting</w>\nauti stic</w>\nâļ Ķï¸ı</w>\no ss\npel icans</w>\ncele ste</w>\nv b\nru mp</w>\nmc gra\nfair fax</w>\nhu mor\nbbc news</w>\nrow ling</w>\ncal der\nseam less</w>\nag ne\np ti\nmix ed\nt shirts</w>\nmer ci</w>\nb tob</w>\nwomen instem</w>\ngenealo gy</w>\npre ven\nl our\ncra dle</w>\ngi use\nÐ ¾</w>\nchron o\nfair ness</w>\nchocol ate\ntor y\nas da</w>\npre scott</w>\nstret ched</w>\nal man\nu il</w>\nre charge</w>\nin tre\nob st\nhosp ital\nhay ward</w>\nteneri fe</w>\nfried man</w>\nvap ing</w>\nconfe ssions</w>\nye ah\nbal li\nluck now</w>\ncor pse</w>\nsculp tor</w>\namp ton\nt pp</w>\nindic ates</w>\nsur plus</w>\ntru man</w>\nðĿ Ļ\nsin ha</w>\nin vo\nsovere ign\nke v</w>\nestabli shing</w>\nengra ved</w>\nassu ming</w>\nðŁı ģ\nsou za</w>\nfab i\nton ed</w>\noun ge</w>\ndel oit\ndow ney</w>\nno ble\nom or\ncar tridge</w>\nðŁı Ĳ</w>\nu hur\nhol loway</w>\nsucce sses</w>\nr sa</w>\nâĦ ¢\nma zz\ntw d\ndisc ourse</w>\n. <</w>\ny at\nsatis fy</w>\ncom pri\nà¤ ¹</w>\ngraph ite</w>\ndisser tation</w>\nar ter\ní Ķ\nb ally</w>\nzom bi\nly ons</w>\na ic\nu bc</w>\npra da</w>\ne il\nda x</w>\ncla i\ngrand daughter</w>\nextravag anza</w>\nchall enge\nðŁ¤ ŀ\npo ver</w>\nprimar ily</w>\ndad dy\nman a\nbi kers</w>\ninqui ries</w>\nda un\nfel ine</w>\ngener ative</w>\nhe f\nbenef iting</w>\nlind sey\npol ka</w>\ndemonstr ated</w>\nal le</w>\nrand y\no su\nlow key</w>\nweir dest</w>\nred bull\nour y</w>\nn ous</w>\nwood stock</w>\ncre denti\nnic er</w>\ng ado</w>\naly ss\nap h</w>\nprepa redness</w>\nstation ary</w>\nincorpor ated</w>\ndy er</w>\nsarato ga</w>\ncele sti\n: \"\nantibio tics</w>\nor gs</w>\ninde fin\nap ron</w>\nÐ¸ Ð\nfif teen</w>\nno f\nðŁĶ Ŀ</w>\nph x</w>\nte ga</w>\nm z\norganiz ational</w>\non air</w>\nband ung</w>\npleas ures</w>\nmor i</w>\nsecre tari\nrac coon</w>\nca shi\npil ates</w>\nk on</w>\ngeof frey</w>\nla o</w>\nkam p</w>\ndepart ments</w>\nback packing</w>\nan am\nÃ «\ncrack down</w>\naun ty</w>\non do</w>\nli zzie</w>\nph ers</w>\ncu n</w>\nðŁĩ ±\nk pop\npu t\ninten tional</w>\nconnol ly</w>\nbar clays</w>\nhs fb</w>\nswin don</w>\nu ku\ns ally\na int\nâľ ħ\npen ang</w>\nup lifting</w>\nepile psy</w>\ninter ro\nbun gal\ngo ku</w>\nblue berries</w>\nà¤ ¦</w>\nu ssia</w>\nsil ky</w>\nmou red</w>\ni stic</w>\nbri efs</w>\nme ats</w>\ngo b\nch aser</w>\nstate wide</w>\npra sad</w>\ngl itch</w>\nar in\nban ff</w>\nmemb er\nðŁĺŃ âĿ¤ï¸ı</w>\nlo ving\nhall a</w>\nà¸ ¡</w>\nsmo kers</w>\nyak u\nscicom m</w>\nphysi o\nsw ol\nlem ons</w>\ngel ato</w>\nch ool</w>\ncapit als</w>\nki stan</w>\nti ghts</w>\nspi kes</w>\ntrav ellers</w>\nik lan</w>\ncommissi oning</w>\nar ine</w>\nemabiggest fans</w>\nempha sis</w>\nfront line</w>\npad dock</w>\ndestruc tive</w>\nba ha\nl inger</w>\nje wish\nshet land</w>\nmc gin\nmon key\nko z\ns one</w>\nraj ini\nte h</w>\ny en\nc vs</w>\nmasqu er\ngir ly</w>\nwe sle\nwas nt</w>\nbro dy</w>\ntermin ator</w>\ngil le\nmag gi\nbir die</w>\njeopar dy</w>\ncu bic</w>\nvm ware</w>\nintric ate</w>\nan up\nto pia</w>\neast on</w>\nsab res</w>\ninvestig ates</w>\nbu sting</w>\nbil ingual</w>\nvalent ino</w>\nin format\nfer re\nadvent ur\nhydr ate</w>\nfor sy\naz iz</w>\nsan to\ne de\nwhist ler</w>\ncontinu ously</w>\nd ham\nun used</w>\nji had</w>\naddic tive</w>\nvi dy\ndo b\ni do</w>\nfi ed\nni versary</w>\nn one\nfu er\nðŁĺį ðŁĺĺ\ncoven ant</w>\nprin table</w>\nimmac ulate</w>\no em</w>\ncl t\nserv ants</w>\nconsu med</w>\nun released</w>\nsc um</w>\npack aged</w>\nme re\nìĦ¸ë ¸\nto by\nta f\nspo ons</w>\nme al\nf ball</w>\nfair field</w>\njan et\nsilver stone</w>\ndart mouth</w>\nfollow me</w>\nvoy ager</w>\nkom bat</w>\nanni ver\nene w\nmag dal\nho ve</w>\nsa th\ngrizz ly</w>\ncar di</w>\ngart ner</w>\nsand y\nkan ye\npost ure</w>\npo ign\nim pulse</w>\nradio logy</w>\nhoriz ons</w>\nsi am\naish war\n= =></w>\nno che</w>\ntr is</w>\nel yn\ncom me</w>\ndu i</w>\nce c\ncouncill ors</w>\ncudd ling</w>\ncreep ing</w>\nloc ke</w>\nmanag es</w>\ntrans ferred</w>\nne cks</w>\ndi er\ndan o</w>\nv ick</w>\nlun ches</w>\nd he\nen sures</w>\ncri ss</w>\nul ster\nbann on</w>\ncont enders</w>\nsp am\nsweet ness</w>\nmed al\nhon duras</w>\narc tic\nultra sound</w>\nin fr\ndisco vers</w>\nei ffel</w>\nca sters</w>\nru ben</w>\ndu st\nawe ed</w>\natri um</w>\nlest we\nse ared</w>\nðŁĵº :</w>\nty ne</w>\nex changes</w>\nlittle mix</w>\nl le</w>\nastron auts</w>\nhersh ey</w>\nwork day</w>\nkno b</w>\nso v</w>\nre signs</w>\ntoday show</w>\nder man</w>\nan th</w>\naf c\nta ster</w>\nsw oo\nsa eed</w>\nper ing</w>\nnarrow ly</w>\nrn li</w>\nbest buy</w>\npanas onic</w>\nobst acle</w>\nfarmer s\nðŁİ Ļ</w>\npa wan\nki est</w>\nang ers</w>\nabsur d</w>\noh my\nsin o</w>\npist achi\nsp ice\ngiu li\nprime time</w>\nko w\nk ens</w>\nex agger\n! ?!</w>\nu ba</w>\nmidd les\nju dd</w>\ne jec\nslam med</w>\npen sions</w>\nof a</w>\nre create</w>\nb hp</w>\nxx l</w>\nliver pool\nthre sh\npur ity</w>\nni eu\nhol ics</w>\nwr ath</w>\nra do</w>\ngli o</w>\nam ma</w>\ndile mma</w>\ncr u</w>\nlets go</w>\n.... @</w>\nâĿ ĵ</w>\nsugge sting</w>\ntru mps</w>\nhor us</w>\nf v\nic om</w>\nrefer ring</w>\npredic tive</w>\ntar ts</w>\nge tte</w>\nso ck\nglo ssy</w>\npin ky</w>\nal ec\nthy me</w>\nou ra\nthero ad</w>\npe tr\ncr am\np fi\ndv n</w>\nme ier</w>\nincen tives</w>\ntun nels</w>\nmobi l</w>\nrec ap\nextra s</w>\nupri ght</w>\nrev amp</w>\nper severance</w>\n, -</w>\not p</w>\nmir ror\nar wx</w>\nger ry\nma her</w>\ng or</w>\nhom epage</w>\nam is</w>\nag ra</w>\nmade le\nbest friend\nsirius xm</w>\nbun dles</w>\nadmir ing</w>\nt dsb</w>\nðŁį ģ\nch as</w>\nslow ing</w>\nro h</w>\nwall papers</w>\nâĢ¦ /</w>\ntek ken</w>\ngang s</w>\ntal a</w>\nlind say\nshou l\nline backer</w>\ntool kit</w>\nur anium</w>\ncaly p\nab rams</w>\nmat thi\nðŁı ¿\nhon ourable</w>\nda yo\nver sail\ntan k\nst c</w>\nfr itz</w>\nspl end\npat ag\nanno yed</w>\non day</w>\ndevast ated</w>\nchattanoo ga</w>\nnational ism</w>\nmas sey</w>\njen n</w>\ntail or</w>\ndev gn</w>\norg ans</w>\nzu cchini</w>\non fox</w>\nsat ire</w>\nwex ford</w>\ndis grace</w>\nno to\nvol ta\nâĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ıâĿ¤ï¸ı</w>\nà ¶\nhome owners</w>\npoin ter</w>\nm cr\nau sten</w>\nday sto\nmo ons</w>\npal ma</w>\ngra zing</w>\ne so\ninfluen cers</w>\nshahid kapoor</w>\ncompli ant</w>\nmeasure ments</w>\ndevelop s</w>\ny d\npar l</w>\np vt</w>\nrand olph</w>\ntor tured</w>\nger ald\neli as</w>\ndeepi kap\nwar mup</w>\nhick ory</w>\ng ap\nco ffin</w>\nam our</w>\nre neg\nmoun ting</w>\nseven s</w>\nig le\nhi er</w>\ndec ad\ntri ght</w>\nesc apes</w>\nwer ner</w>\nt fl</w>\nful filled</w>\nni ger</w>\nsour dough</w>\nre aper</w>\nchoo ses</w>\nspin ner</w>\nweek nd</w>\nfil tered</w>\nsh uk\nkat i</w>\nold ham</w>\nopen source</w>\nkh anna</w>\nat elier</w>\nconne c\nopho bic</w>\ngla s\ncomplic ations</w>\nar son</w>\ncounc ils</w>\nsm ol\nas sy\nlur king</w>\nling ui\nhan ks</w>\ne in\nÙ ħ</w>\nru gs</w>\nn guyen</w>\nnou veau</w>\nmen ace</w>\nle v</w>\nalad din</w>\nru ining</w>\nround about</w>\nk m\ncon or\nshoo ps</w>\nmay day</w>\ntraum atic</w>\nprab has</w>\nka iser</w>\nk ita</w>\nrou ter</w>\npe dro\nre tar\nstun ner</w>\nspani sh\ndistur bed</w>\nacade my\ne learning</w>\nwit ty</w>\nsen g</w>\nfer al</w>\nav y</w>\nsta b</w>\nke aton</w>\nur du</w>\nko to</w>\nhu i</w>\ncoo ke</w>\nari an\nthe personal\nu ma\nse ap\na sting</w>\nrhetor ic</w>\nhand writing</w>\nmunici pality</w>\nconsor tium</w>\nðŁĲ Ł</w>\nglasgo w\nra ya</w>\neli za</w>\npolym er</w>\nbro th</w>\nprac ti\ncorrespon dent</w>\naddic ts</w>\ngay le</w>\nail ing</w>\no fe\np li\nhear tw\nst itch\nsight ings</w>\nprie sts</w>\nsam o\nslo th</w>\ngood wood</w>\nroc co</w>\nsab c</w>\nsumm it\nl ace\npres ley</w>\nitt en\ncin cy\nthepersonal network</w>\ns week</w>\npe gas\naf con</w>\nregi stry</w>\nci m</w>\nle th\ndic ap\ncand ice</w>\nflu ent</w>\nsm ack</w>\npede stri\nal oud</w>\ncar ac\npriyan kach\np gh</w>\nir ons</w>\ndol ce\nlat via</w>\ndece ased</w>\nthero ck</w>\ncla p\ncen e</w>\nfo am\nmorris sey</w>\ngre t\nessenti ally</w>\ncom cast</w>\nbe agle</w>\nargu es</w>\ning ed</w>\n- âĢ¦</w>\nsa g</w>\nha san</w>\nðŁĻ Ĩ\nðŁį °</w>\nnh ra</w>\nkann ada</w>\nindic ators</w>\non er\nbri xton</w>\nat as</w>\nscreen play</w>\nsor ority</w>\nsha heed</w>\nhe em</w>\nclass mates</w>\ntain ment</w>\nes i</w>\nbreast cancer</w>\nzucker berg</w>\naur or\nen cia</w>\nref ers</w>\nkae per\nvor tex</w>\ncom part\nlym ph\nphotograph ing</w>\nste ff\nrest ling</w>\npar sley</w>\nmom ento</w>\nth man</w>\nlac king</w>\ndu tt</w>\nocu lus</w>\nfin o</w>\nfren zy</w>\nra sc\nder n</w>\ndis missed</w>\nnoo k</w>\nmet gala</w>\nsh ill</w>\nrapha el</w>\nmaver icks</w>\nexhib its</w>\neag erly</w>\nc pa</w>\namen ities</w>\n. âłĢ</w>\nexo dus</w>\nern st</w>\nlit a</w>\ndeal t</w>\nwomens march</w>\ni ain</w>\nscore board</w>\ncampe ones</w>\nc en</w>\nti ki</w>\ngarri son</w>\nfidel ity</w>\nbra g</w>\nroad map</w>\npsy chop\nlo e\nble u</w>\nðŁĳĬ ðŁı¼</w>\nsau vi\nspr inger</w>\ntemp tation</w>\nru dolph</w>\nac ura</w>\nwic z</w>\nparach ute</w>\nstro l\nlen ny</w>\nzi k</w>\ndom s</w>\nnb af\nal pac\nvivi an</w>\nro ve</w>\npre et</w>\nperpe tu\nsna ke\nair soft</w>\ninfl atable</w>\nprin ces</w>\nati e</w>\nffe y</w>\npati ent\nm ire</w>\nchel le</w>\nsl ack</w>\ngroo vy</w>\n# :</w>\nup loading</w>\n!!!!!!!! !!!!!!!!\nsiem ens</w>\nprovi sion</w>\nv fx</w>\nneed y</w>\nf ats</w>\nto poli</w>\nbhu tto</w>\nsa thletics</w>\nalu ms</w>\nt winning</w>\nsouth western</w>\nadop ting</w>\nlast night</w>\nman ne\nla ga</w>\ntw ell</w>\nac ia</w>\n-- --</w>\neye wear</w>\nhur ley</w>\nfle e</w>\nsa ch\npe cker</w>\ncost ly</w>\nis k</w>\ncr ates</w>\npolic y\nero sion</w>\nin go\nwer k</w>\nðŁĲ į</w>\ntorto ise</w>\ntherap ies</w>\ninter net\nchihuahu a</w>\nri ps</w>\nfre i\ned or\ntai ji</w>\nt fc</w>\ndo d</w>\ndemp sey</w>\nchrist in\nchen g</w>\nhi ps</w>\ngra eme</w>\ncom passionate</w>\ncavali ers</w>\nhistor ic\nsoul ful</w>\ncrimin al\nja c</w>\nvin ci</w>\nexpi red</w>\nsur at</w>\nturi smo</w>\nk ona</w>\nse aweed</w>\nber ts</w>\nle ica</w>\nexpre ssing</w>\na al</w>\nwor t</w>\nbreak fast\nher ring</w>\nam used</w>\nrhu barb</w>\nmar tian</w>\ncospla yer</w>\ny ash\nstri al</w>\nra ul</w>\nrefer ral</w>\ndw ts</w>\nj w\nad ler</w>\ncur tains</w>\ngu r</w>\nval ence</w>\ntyr one</w>\nsw fc</w>\ncoach ed</w>\nre born</w>\ndiabe tic</w>\ncho ke</w>\nnor folk\ninvestig ative</w>\nðŁĴ¯ ðŁĴ¯\nz id\nv mas</w>\nphi e</w>\nobjec tives</w>\nâľ ĭ</w>\nover due</w>\ndi vers\nmat su\nðŁİŁ ï¸ı</w>\ncasu alties</w>\nà¸ §</w>\nal k\nstand ardi\nre alist</w>\narti facts</w>\npand or\nke x\nin vin\n( !)</w>\nine y</w>\npar aly\nmr t</w>\nfay e</w>\nthe voice</w>\non ga</w>\nde ed</w>\nskin ner</w>\naz wx</w>\nspeci men</w>\npriyankach opra</w>\nnu evo</w>\nbar kley</w>\ntoulou se</w>\nresu mes</w>\nfootball ers</w>\ncit i</w>\nfe tch</w>\nÃ¨ re</w>\nlestwe forget</w>\nðŁĻ ĭ</w>\nch unk</w>\ndri fting</w>\nmanipul ation</w>\nequ als</w>\npu tt</w>\nky ungsoo</w>\nâĿ¤ï¸ı #</w>\nela stic</w>\npar ano\nfo y</w>\ndo ping</w>\ncin cy</w>\nss ler</w>\ninterrup ted</w>\nal ay\nado res</w>\name thy\ncon voy</w>\nãĢ ı</w>\nĬ ãģ\nblack list</w>\ngener als</w>\nsa chin</w>\nbru shed</w>\noun ces</w>\nnon stop</w>\nilli ams</w>\nbt sarmy</w>\nu av</w>\nru ff</w>\nbur ma</w>\nbi k\ndefen ce\nschul tz</w>\nbo asts</w>\nlonel iness</w>\ngo re\ntrans forms</w>\nalum na</w>\n@ @</w>\nra ppers</w>\nne hru</w>\ncar o\nhimalay an</w>\nwearab les</w>\nge h\npepper mint</w>\nre development</w>\nflam ingo</w>\ncos by</w>\nbig baldhead</w>\nag ri</w>\nbare foot</w>\nsco pes</w>\nre gram</w>\ngh ana\nðŁİ «</w>\ni heart\nsa die</w>\ncarri e\nmicrobi al</w>\nku ala</w>\nsk ater</w>\nquer que</w>\nâĻ ©\ngen res</w>\nreas oning</w>\nch ased</w>\nas o\nsli pped</w>\nen can\nvam os</w>\nker s\nad verse</w>\nmo il</w>\ncommod ities</w>\nwith you</w>\nsil ent\nhy pe\nan de</w>\nam ination</w>\nwhi spe\nlit z</w>\nâļ½ï¸ı âļ½ï¸ı\nri ff</w>\npp y\nlam bs</w>\ngan esh</w>\nab sent</w>\nregu lator</w>\nmarse ille</w>\nen roll</w>\npar cel</w>\nwa p</w>\nby rd</w>\nðŁĩ Ń\ntu ber\ncountry music</w>\npar l\ncontro llers</w>\nresponsi bilities</w>\nwe y\nch ate\nmontene gro</w>\nchic o</w>\nmil an\nl ms</w>\ntra inees</w>\nappropri ately</w>\nun certain</w>\npopp ies</w>\ned sheeran</w>\nnutr itious</w>\ngar o</w>\ndeut sch\nawe some\nãĥ ¼</w>\ncomfor tably</w>\nland marks</w>\net i</w>\nre usable</w>\ndaniel le\nro sal\nco les</w>\njust ic\nc cs</w>\nf anny</w>\nni m\nmc u</w>\nclin ch</w>\nat ene\nmer ge</w>\nim db</w>\nang lo</w>\nuc cino</w>\npan ini</w>\nan not\nbur berry</w>\nfeat ure\npredic ting</w>\nfashioni sta</w>\ns ask</w>\nimag inary</w>\nmm o</w>\nsouth sudan</w>\nspe ar</w>\nhu bble</w>\njo inthe\ncoyo tes</w>\nsli go</w>\nko dak</w>\nsit com</w>\npolaro id</w>\nroo ted</w>\ncorru p\nðŁĻĮ ðŁĻĮ</w>\nbris ban\nat z</w>\nah l</w>\nre my</w>\ntal ent\naval on</w>\nra da</w>\npau line</w>\nlocom otive</w>\ngo ons</w>\nne mo</w>\nmaser ati</w>\nic u</w>\nstu tt\nhistor ically</w>\nsm b</w>\npres by\navo id\nso oners</w>\nrhine stone</w>\nw ad</w>\nri sing\ntro t</w>\nmo des</w>\nreg ent</w>\noptimi ze</w>\nre ece</w>\nsm u</w>\nver ti\nnewyork city</w>\ncor tez</w>\nra c</w>\nin case</w>\nsin c</w>\nfiel ding</w>\ne tta</w>\ntiff any\nal monds</w>\nsad dle\nk rat\nmat ter\ng low\nstar ving</w>\ngl o</w>\ncra ppy</w>\nsl ur\nst d</w>\nmonit ors</w>\nrecei pt</w>\nmaymay entrata</w>\nmc il\nun is\nrain bows</w>\ncal dwell</w>\npacqui ao</w>\nj op\na fe\nhoo k\nes sen</w>\nwiz ard\nmedi an</w>\nfla ws</w>\ncom s</w>\nâĿ Ħ</w>\ning h</w>\nha ynes</w>\nanton io\ntem plates</w>\nou ter\nna w</w>\ncardi gan</w>\nbel grade</w>\nðŁĴ ī</w>\nhom o</w>\na ise</w>\nro pes</w>\nno ve\nwhat you\ntri gge\nconcep tion</w>\nad ukone</w>\nna di\nfri ars</w>\nsw er\nadju sted</w>\nhot line</w>\nsan ity</w>\nkau r</w>\ndown loading</w>\nc gi</w>\nten or</w>\neth nic\napp alach\nà¸ ¸</w>\npa g</w>\ngol ds\non set</w>\ninvestig ator</w>\ncar tel</w>\npeace fully</w>\njarre tt</w>\ncat alan</w>\npoli o</w>\nn um</w>\nfru stration</w>\ndhar ma</w>\nmy life</w>\nâľĮ ðŁı»</w>\naber deen\nmu sa</w>\nbin der</w>\nspark ly</w>\nfle eing</w>\ninstin ct</w>\nco ping</w>\ndomin ance</w>\nill ers</w>\ner a\nu conn</w>\nlo oms</w>\nliving ston</w>\ngal i</w>\nhe s\nc ma\nbel a</w>\nse ley</w>\nmon k\nla ch\nmar x\nÂ ´\nm erica</w>\nwoman in\nes sex\nra ina</w>\njim i</w>\nnep tune</w>\nz ack\nchine se\nmart ins</w>\nchand elier</w>\nher n\nwith us</w>\near l\nasph alt</w>\nmodu les</w>\nst p</w>\nul la</w>\npsychi atric</w>\nmile age</w>\ncaptiv ating</w>\nsi der</w>\nmen to</w>\nmor t</w>\ntran ce\ntal bot</w>\nab by\nì ĥ\nâľĮ ðŁı¼</w>\nj ak</w>\ndaw n\nturn up</w>\nscre wed</w>\nfe ds</w>\nblue print</w>\nðŁĴĸ ðŁĴĸ</w>\nhar sh\ner os</w>\ninsom nia</w>\nban kers</w>\nta emin</w>\nmis conduct</w>\nhu mber\ngi di</w>\nedu ardo</w>\ncon a</w>\nmusc ular</w>\nconsu ming</w>\nra sh</w>\ndon nie</w>\ndi pped</w>\ncol lie</w>\nsamu el\nmelt down</w>\nðŁĺįðŁĺį ðŁĺį\nme z\nexam ining</w>\nschwar tz</w>\npri stine</w>\nðŁĲ Ŀ\nve it</w>\nful filling</w>\nan esthe\ngue sses</w>\ndra ft\nsom me</w>\nsoli d\npati onal</w>\nho ped</w>\nevolu tionary</w>\nall er</w>\nenter tained</w>\nsli ps</w>\nlud wig</w>\nconclu des</w>\nsen sible</w>\nbon net</w>\ncra ze</w>\ntra s</w>\nhaz ards</w>\nconst antine</w>\ned ics</w>\nstar trek\nto c</w>\noccu pational</w>\nin cheon</w>\ndeepikap adukone</w>\npizz as</w>\nnew comer</w>\nde part</w>\noppre ssion</w>\nebon y</w>\nfoss ils</w>\ntro jan</w>\nel en\nste aks</w>\nk hou</w>\npositi oning</w>\nug by</w>\nred cross</w>\nak h</w>\ndol ce</w>\nus mnt</w>\npp en</w>\ndil ig\nma vs</w>\ncall er</w>\ncost ello</w>\nâĽ Ħ\ndy n</w>\nthing s\nrhin os</w>\na xi\nsar kar</w>\ncon vocation</w>\natt ers</w>\nss ss\nfun gus</w>\neu gen\nruss o</w>\nsqu at</w>\nw sb\neli on</w>\nwilliam sburg</w>\ns off</w>\ndefici ency</w>\nbe arer</w>\no kin\nkey stone</w>\nt wain</w>\ncal ming</w>\nbreak able</w>\nwa res</w>\nhorser acing</w>\ncom bs</w>\nbun ting</w>\nu it\nt land</w>\nðŁĴĻðŁĴĻ ðŁĴĻ</w>\nga stron\nsab ot\nick ers</w>\ncommissi oners</w>\nsen ate\nii ot</w>\nath ena</w>\nnit rogen</w>\nan tony</w>\nero tic</w>\ndi alo\nmis sou\nhypo cr\nâľ Ī</w>\nkaeper nick</w>\ncan v\nd roo\nclevel and\no sh\nmon sta</w>\nstefan o</w>\n^ )</w>\nsh ul\npo ison\nha e\ncommerci als</w>\nma ul\nnit ro</w>\nco worker</w>\nalo e</w>\nvap or</w>\nt ents</w>\nrussi an\nqu id</w>\nquestion able</w>\nmid get</w>\npo ker\ngirl friends</w>\nsin the\nerit rea</w>\nten ure</w>\ndepos its</w>\nbuc keyes</w>\nspot ter</w>\ntheod ore</w>\ntrin ity\njoaqu in</w>\nu cci</w>\nfollow the\ncaf c</w>\nmp a</w>\nðŁĲ »\nplo tting</w>\ndom ino</w>\nta ek\nsion ally</w>\ndicap rio</w>\npa p</w>\ncar mel\nig er\nbt cc</w>\nbeth le\nwww bigbaldhead</w>\nfoo die\nbagh dad</w>\nmason ry</w>\noff ended</w>\nà ·\nà¸ ģ</w>\nsc ro\nvers es</w>\nori ent</w>\nar ches</w>\npi yu\nknow your\ngre e</w>\nta kers</w>\ngu ard\ndish on\nbucket list</w>\nbha fc</w>\nwar dly</w>\nðŁİīðŁİ Ĭ</w>\nleigh ton</w>\npe w</w>\nstra y\nassaul ted</w>\nin hal\nly fe</w>\namar keting</w>\nl x</w>\nkat z</w>\nubun tu</w>\nme o</w>\ncarto onist</w>\nturno ver</w>\nmi z</w>\ndis like</w>\nmul len</w>\nmo f\nbl and</w>\nhi des</w>\nemer ges</w>\nchori zo</w>\ntruste e</w>\nma hog\nlan sing</w>\nparalym pic</w>\nfa int</w>\nfa una</w>\nch al</w>\nsn ar\ncat h</w>\nbent on</w>\ncast illo</w>\nsli ppery</w>\napric ot</w>\noec d</w>\nbar o</w>\nl z</w>\nhe ming\nclow ns</w>\nco workers</w>\nperu vian</w>\ncommu ters</w>\ny ell</w>\nðŁļ ´\nunder ing</w>\nv j</w>\ntt p</w>\nfli pk\nw ana</w>\nsoc ent</w>\nĤâĸ Ĥâĸ\nà¤ Ĥ</w>\noo sa</w>\njag ger</w>\ndi sm\ne less</w>\nd ham</w>\ncali f</w>\na official</w>\nec lip\nharro gate</w>\ngra pp\ncom rade</w>\nn tr</w>\nconcentr ate</w>\nthi ghs</w>\nbit coin\nbel arus</w>\në ĵ\nend uring</w>\nnow watching</w>\nindustri al\npi p</w>\nar on\nar at</w>\nÂ ®\nwhit by</w>\noooo ooo</w>\nsa ree</w>\ntic als</w>\nmis leading</w>\nyo on\nyear s\nsle igh</w>\nroman ian</w>\nsciss ors</w>\nvam pires</w>\nac up\nab ba</w>\nth weeksary</w>\ncent ri\nfl ye\nu o\nc bi</w>\nbu ena</w>\nsin d</w>\nmar ino</w>\nbur r</w>\nre building</w>\nà¤ ²</w>\nanniver saire</w>\nac ca</w>\nðŁĴĢ ðŁĴĢ\ngett ing\ntu lips</w>\nwolf pack</w>\nâľį ï¸ı</w>\nmore than\nta kin</w>\nðŁ¤ĺ ðŁı»</w>\nu be</w>\nmon ic\ndou bts</w>\nmo wer</w>\nco balt</w>\ndon ne\nspecul ation</w>\nargu ably</w>\nkak u</w>\nhtt ps</w>\nprosecu tion</w>\ndin ah</w>\nstam atic</w>\ndisclo sed</w>\nbever ly\nfl wx</w>\ncra bs</w>\nextraordin aire</w>\nwar mest</w>\nimper i\no logists</w>\ntrac es</w>\npar c</w>\nlake side</w>\nam r</w>\nter i</w>\nhour ly</w>\ndomin ation</w>\nar row\nshrews bury</w>\nance stry</w>\nwr angler</w>\ntrigge red</w>\npen sac\nroo ster</w>\nsurvi ves</w>\na on\nbo ko</w>\nval or</w>\nlove is\nla g\npe y</w>\nfo cal</w>\nout laws</w>\nbl anc\nartic ho\nwit s</w>\nmarsh all\ndie go\nsupport small\nu ca</w>\nsa h\nje et</w>\nsyn ago\ngover ning</w>\nðŁĴ ¬</w>\nsal ads</w>\ncre ate\nmiri am</w>\ncen sored</w>\nami de</w>\nno u</w>\nz eta</w>\nallegi ance</w>\n* )</w>\nbl m</w>\nric an</w>\npa stors</w>\noly mpus</w>\nblo c</w>\nwhir l\nstar ry</w>\npr one</w>\ny k</w>\np ne\ncongratul ating</w>\nbe v</w>\nso ber\nlove island</w>\nsa ir</w>\nan ing</w>\ntutor ials</w>\nq e</w>\nlun d\nin ist</w>\ncle ver\ntaxpay er</w>\nali z\nwren ch</w>\ndd ling</w>\ncap ri</w>\nh pa</w>\nðŁı» âĢįâĻĤï¸ı</w>\nna j\no j\nfuturi stic</w>\njelly fish</w>\nðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥</w>\ncel ery</w>\nplan k</w>\nfil a</w>\nne me\nun healthy</w>\nlec tions</w>\nðŁ§ ¡\nrit chie</w>\nn ws</w>\nmi kha\nwonder woman</w>\nâĢ İ</w>\nhip stamatic</w>\nka g</w>\nðŁĴľðŁĴľ ðŁĴľ</w>\npoul try</w>\nmo w\nwor ds\nlo ff</w>\nðŁ¤£ ðŁ¤£</w>\nrelat able</w>\nre mixes</w>\nkeny atta</w>\nke m\nre signed</w>\nfo d\nstra igh\nj lo</w>\nhu tch\nbox ers</w>\ncolle en</w>\nmag s</w>\ninstruc tional</w>\nko l</w>\nattrac ts</w>\npra g\naccount ant</w>\ngo ggles</w>\nbr u</w>\nth ole</w>\nmar row</w>\nleu ke\noc to\npon ds</w>\nbubb ly</w>\nhe ist</w>\nìĹ ĳ\nim p</w>\na har\nha unt</w>\nhall mark\npsy ch\nkkkk kkkk\ncol umb\njump suit</w>\ncost co</w>\nsi delines</w>\nag gies</w>\nover turned</w>\nni b</w>\nkey chain</w>\nfu k</w>\nf af\nmi am\nassist ants</w>\ncy cled</w>\nri der\ndam mit</w>\nred wings</w>\nmag es</w>\nkin s\nì Ĥ\nho d\nson t</w>\ncarol ine\n\" '</w>\ncu le</w>\nbra id</w>\nfel ony</w>\nar ities</w>\nruther ford</w>\ndepic tion</w>\nisab elle</w>\nro ach</w>\nk day</w>\nfifth harmony</w>\nem y\nli gam\nbari sta</w>\nalbu querque</w>\ngro ss\nðŁį º\noo ks</w>\nðŁĳ ¼</w>\ndun can\ntry in</w>\njag s</w>\ng ould</w>\nli tho\nâģ £\nÐ° Ð\nsam my\ntun g</w>\ncas ser\napo lo\naaaa a</w>\nman g</w>\nas ics</w>\nsh en</w>\np ye\ntur bul\nss p</w>\nsaint sfc</w>\non lin\nn anny</w>\nhe ster</w>\ndo z</w>\nà¸ Ķ\nth read\nren ts</w>\nkh and</w>\nðŁĴª ðŁı½</w>\nun conditional</w>\nrob son</w>\ncar re\nph on</w>\nsacrific ed</w>\nÂ £\nauto s</w>\npar ker\noc a</w>\nlog in</w>\nkee gan</w>\nhard cover</w>\ndough nuts</w>\nðŁĮ İ\nspit fire</w>\nrefresh ments</w>\nsaskat oon</w>\ncommod ore</w>\nj f\nrub ber\nhalam adrid</w>\nchild care</w>\nstra da</w>\nio m</w>\nri k\ndak ar</w>\nther mom\ncro pped</w>\ngar u</w>\nali k</w>\nven i</w>\ni ft\nsi ka</w>\nritu als</w>\nz ul\ne ch</w>\nÂ ©\nsu dan\nl land\ni me</w>\ndo cker</w>\nì ¤\nfe ared</w>\nfa o</w>\nwal ter\nno g</w>\nmutu als</w>\nl h</w>\nali gn</w>\nmon ia</w>\nconcep tart</w>\nðŁĻı ðŁı¼\nsco e</w>\ncompet ence</w>\nsw ine</w>\nly me</w>\nlaun ch\ngreen er</w>\nabstract art</w>\ninqu is\ngran ada</w>\nga elic</w>\nflu ff</w>\nd backs</w>\ngrave yard</w>\nba be\nacade mic\nadventur ous</w>\njoh ann</w>\n~ !</w>\nbi bi</w>\n| #</w>\npl ings</w>\ngett y\nas b</w>\nâĿ¤ï¸ı @</w>\nstaf f\nreligi ons</w>\nbang or</w>\nworld bookday</w>\nme gh\nde vin\nash ore</w>\nmeri dian</w>\ngi thub</w>\nqui z\nall stars</w>\nbe stest</w>\nir resi\nack er\ndo te</w>\nwar rington</w>\npol ly</w>\nnewor leans</w>\ncr ou\nwi gs</w>\nche y</w>\nsmithson ian</w>\nla sag\nde tour</w>\nbor is\nstra ps</w>\nmari ah\ninten tionally</w>\nko h</w>\nðŁį ¸</w>\nssi an</w>\nmar issa</w>\ncor al\nepiscop al</w>\ncasu alty</w>\ntom o\nsupply chain</w>\nsam p\non go</w>\nro o</w>\ncavi ar</w>\np fw</w>\nclau dio</w>\nbuff alo\ns ations</w>\nmat ty\nsnap back</w>\nl ds</w>\nal arms</w>\nmat te\nâĺ Ķï¸ı</w>\nconditi oner</w>\nd ors</w>\nhe x</w>\nfi zz</w>\na stri\nsus sex\nsecur ity\nqa eda</w>\nall star\ncocac ola</w>\nas one</w>\ncl icks</w>\nsc ans</w>\nmu te</w>\nhe avier</w>\nðŁİ §\nâĺ ŀ</w>\nlv l</w>\nbook boost</w>\nyoutu be\nfla shes</w>\nf jor\nc su</w>\nexplo de</w>\ndo dge\ncair n\ngonz ales</w>\nth ill</w>\npel le\nhart ley</w>\nrenew able\nre tin\ne stre\ncostar ica</w>\nshipy ard</w>\nnc fc</w>\npri ya</w>\na ghan</w>\nan ath</w>\nplu gin</w>\nco rey\nre bound</w>\nor u</w>\nkat rin\nhor mone</w>\ngi m\nmahin dra</w>\ns sus</w>\npark land</w>\nhar per\nfanta stic\ninfer no</w>\nep ilo\nwrest ling\nfe ct</w>\nc it</w>\nac oun\nto ssed</w>\nmonu mental</w>\nchar tered</w>\nbu st\npe tra</w>\nâĮ ļ\nwildflower hour</w>\nsweat ers</w>\n* .</w>\nbl er\nate ch</w>\ngo wan</w>\ndemo graphic</w>\nbra l</w>\nsuici de\nrenov ations</w>\nvu el\nsin ister</w>\nar mani</w>\nmiso gy\nph arrell</w>\nnap s</w>\nun iting</w>\ncrusad ers</w>\ncor gi</w>\ninsu red</w>\nthan i</w>\nno or</w>\ng q</w>\nd ada</w>\nbicy cles</w>\nsnu ggle</w>\nsch an\nten berg</w>\nss al\nfe mme</w>\nbo il</w>\n½ ï¸ı</w>\nre ap</w>\noccur ring</w>\nhus sein</w>\ndivi d\nsto ke\nsh alom</w>\nna ia</w>\no lic</w>\nfrustr ating</w>\nÙ ĩ</w>\nig s</w>\ngro ver</w>\nscen arios</w>\nn ds</w>\nbru tality</w>\nmed alli\nbu on\nsas s</w>\nskate boarding</w>\nony x</w>\nlor ry</w>\nny u</w>\ngau tam</w>\nmm ings</w>\ngu g\nend i</w>\nlo thian</w>\ncomm ando</w>\nchal k\nph ora</w>\nasse ssing</w>\nti gh\ncrun chy</w>\nad ay\nis l</w>\nci ara</w>\npilgri ms</w>\nkam al\np to\nbrit anni\nt ani\nsm c\nl ure</w>\napp store</w>\nab y</w>\ngolf ing</w>\ncl c</w>\nfa u</w>\nan as\nshu tting</w>\nregul ated</w>\ncarn age</w>\nscow boys</w>\nall enge</w>\nc ma</w>\nhumbold t</w>\nrel le</w>\nku mb\nher i</w>\nrefin ery</w>\nsound check</w>\nd wayne</w>\nbos nia</w>\ni sp\nthe alth</w>\nanni v</w>\nrelev ance</w>\nmy a</w>\nbag gage</w>\ndre ad</w>\ns bc</w>\nth ed</w>\nbu h</w>\nhi jab</w>\nlo id</w>\nke w</w>\nc te</w>\nrespec t\nlovel ies</w>\ncu bes</w>\ncelebr ate\ndir t\nsav ers</w>\n_ ,</w>\ngar ment</w>\npulit zer</w>\nmas jid</w>\nbeat port</w>\nal arts</w>\nencry ption</w>\ns ner</w>\nple ads</w>\nfound ry</w>\nsym metry</w>\nru mi</w>\nbirth place</w>\nscallo ps</w>\nsupp le\npivo tal</w>\nt ati\nno de\nso d</w>\npro xim\ntr ics</w>\ncol dest</w>\nbren t\nmand u</w>\ncla ir\ne ach\nand alu\nhi ddleston</w>\nðŁĲ º</w>\nmel ts</w>\nv ance</w>\npin n\nse ments</w>\nscre ened</w>\nsa chs</w>\no bl\nic ha\nâĺĺ ï¸ı</w>\nschool ers</w>\nheal ed</w>\nlo gged</w>\nðŁ¤ĺ ðŁı¼</w>\nic us</w>\nbore dom</w>\nb ish</w>\nb ffs</w>\ntal king\nsure sh</w>\nhoo kem</w>\nde on\nde fl\nei leen</w>\nðŁį ķ\nwomen intech</w>\nri sotto</w>\nrang er\nadverti se</w>\nà¸ ģà¸\ntel ly</w>\nla go</w>\ndart moor</w>\nd ong</w>\nsk ates</w>\nlo go\nun ner</w>\nmail box</w>\nma sala</w>\nlo oooo\namethy st</w>\nche wing</w>\nc bb</w>\naustrali ans</w>\nrc mp</w>\ngame art</w>\n# ...</w>\nkor n</w>\nextre mism</w>\nfruit ful</w>\nanci ent\npu bg</w>\npol ite</w>\nwh it</w>\nmur als</w>\nm gr</w>\nline man</w>\ndav ao</w>\nste ms</w>\nten nis\nav age</w>\ntu pac</w>\ngigan tic</w>\nhs bc</w>\nauto biography</w>\nup the\nà¸µ à¹Ī</w>\nre gal\nfig uring</w>\nku l</w>\nmis sy</w>\nhoo p\ngra s\nfor ums</w>\nback lash</w>\nabduc ted</w>\np nw</w>\nmin ic\nbu tt</w>\nbott oms</w>\nat on\nven g</w>\nðŁĮ ı</w>\ndel aney</w>\nprab hu</w>\nfan club</w>\nover haul</w>\nhealth ye\nsy no\naa f</w>\nren amed</w>\nkim i</w>\nun cle\nman city</w>\nse u</w>\nqu anti\neste em</w>\num in</w>\nen zo</w>\nmel vin</w>\nunder go</w>\nj har\nfar ah</w>\ncoast ers</w>\nhumph rey</w>\nmh z</w>\nchildren s\n^ .\nd hi\ndisrup tive</w>\nintegr ating</w>\nr nb</w>\nover sized</w>\na ide\nne au</w>\ndocu mentation</w>\nðŁĳĢ ðŁĳĢ</w>\npal o</w>\nhear th\nri yad\npun ctu\nabc news</w>\nsecu res</w>\nboy band</w>\nbir ch\nju co</w>\ntra ff\nlegislat ors</w>\nbay a</w>\nãĤ ¯\nno ises</w>\ncollec ts</w>\ns warm</w>\nk ner</w>\nbi shops</w>\nstur geon</w>\nsnapp ing</w>\nmo l</w>\nfre aky</w>\nchair person</w>\ntro p</w>\nlyn ch\ncar cin\nart sy</w>\ne sto\ncha i\nfl ur\ninv ali\nsau sages</w>\nim el\nj or</w>\nfun fact</w>\nwit ter</w>\npuni shed</w>\nac ons</w>\nh ya</w>\nre versi\nem c</w>\ndif fu\nz x</w>\nsp aw\ncla d</w>\nd mit\nhol land\nfre sco</w>\npay roll</w>\nab undant</w>\nstu ffing</w>\nmor o</w>\nc ny</w>\nboy cott\nwend y\nele ven\npro voc\npil ot\ntr x</w>\nbe ad\nclimate action</w>\nri on\nassi e</w>\nì ĸ\no sm\nislam ic\nho ar\ngood reads</w>\nal ici\nafterno ons</w>\nspoke sman</w>\njo lie</w>\nit as\nmasc ara</w>\nâĻ© âĻ«</w>\npre vail</w>\nbeetro ot</w>\nlu jah</w>\nk li\ndod ger</w>\nÂ »\nru le\nl n\nscre am\nho bart</w>\ncol bert</w>\nr tc</w>\ner m</w>\npat ro\nquo ting</w>\ns live</w>\nque st\nnon fiction</w>\nsemin ary</w>\nprosecu tors</w>\nve st\nexpress way</w>\ng ge</w>\nnau tical</w>\net f</w>\nðŁİīðŁİ Ĭ\ndur ation</w>\ncha ired</w>\nthe film</w>\nfab io</w>\nshe h\ncan o\nðŁĴª ðŁı»\nwith draw</w>\n! :)</w>\ncor pus</w>\nphen om\nyel p</w>\nla wn\nent om\nsnapp er</w>\nbut te</w>\npin ball</w>\npro xy</w>\nlibr e</w>\nalle vi\nn ada</w>\ngabri el\nfo wl</w>\neure ka</w>\ndaph ne</w>\ntu nes\npun ched</w>\nwh ore</w>\njo g</w>\nren tial</w>\nman ners</w>\no pe\nwh ufc</w>\ngu th\nrevol t</w>\nsne aker\nphilharmon ic</w>\nho ste\nsovereign ty</w>\nðŁĻıðŁĻı ðŁĻı</w>\nfish ing\nsci art</w>\nfe ta</w>\ni pp\ndump ing</w>\nkel own\ngir i</w>\ndig its</w>\nsal u\nsan jay\ntwee ters</w>\nsp as\ncol chester</w>\nsc ab\nma dd\nà¹ Ħà¸\nÄ ĩ</w>\nged don</w>\nmarch for\ndo p</w>\nmaure en</w>\nun plugged</w>\ndi do</w>\nfashion blogger</w>\nup a</w>\nmex ic\ntar y\npol ye\njame son</w>\nv t\ngrin der</w>\nmad dy</w>\nconsult ancy</w>\n¬ ë\nleagueof legends</w>\nac cents</w>\num ni</w>\njane iro</w>\ntu ss\nh ens</w>\nampli fier</w>\nto shi\npret tier</w>\npre vents</w>\nnew town</w>\nred wood</w>\nvant age</w>\nball ard</w>\nar tof\na she</w>\na sion</w>\nlac ey</w>\nap at\ngro ve\nà¸ Ħ</w>\nrw and\nreal tors</w>\ntra itor</w>\nbed ding</w>\nÃ¶ r\nzi on\nfla shing</w>\ncam pan\nboom er</w>\nsecretari at</w>\nab ol\nliti gation</w>\ncont amination</w>\nse dly</w>\nshred ded</w>\nin for\ndo herty</w>\nbench mark</w>\nro che</w>\nskate board</w>\nsho vel</w>\ni zz\nto pper</w>\no ster\nlaby rin\nautu m\nk ong\nhum mus</w>\nvi z</w>\ntech news</w>\nkla us</w>\nam using</w>\nsocialmedi amarketing</w>\ni des</w>\ncast ell\nste e\nunderestim ate</w>\ncal ab\npa ign</w>\nb illing</w>\nunanim ously</w>\ng mb</w>\nfly fishing</w>\nhath away</w>\ncommerci al\ncolour ing</w>\nskul ls</w>\npivo t</w>\nte p</w>\ntb c</w>\nmotor way</w>\nx press</w>\nconstruc tive</w>\npu k</w>\nunder lying</w>\nkir sten</w>\nmani ac</w>\ncha o</w>\nse ma</w>\nchiff on</w>\nðŁĳĮ ðŁı»\nver ona</w>\nkom o</w>\nstan doff</w>\nwi ped</w>\nc ated</w>\nbla ir\nwor kin\nm sc\nbethle hem</w>\nswi pe</w>\nunexpe c\npe es</w>\npe tri\norig ami</w>\nðŁĳ ħ\nmex ico\nflav or\nru dd</w>\ncannab is\nmar u</w>\nri ddle</w>\nwor shi\nsil on</w>\nsch at</w>\nap se</w>\ntang er\nbi ous</w>\ne er</w>\nquesti oned</w>\no zar\ndan k</w>\nangle sey</w>\nchar an</w>\nbak u</w>\ncompe ten\nre pri\nbat ter</w>\nsa xon</w>\ncal ves</w>\nleng ths</w>\n$ $$</w>\nâŀ ¡ï¸ı\nimmer sion</w>\nga unt\ncar ry\ncy to\nb anda</w>\nshu tt\nexperi ence\nel gin</w>\nmous se</w>\nta z</w>\nê µ\nin correct</w>\nen z</w>\nb ham\nmor on</w>\nso ver</w>\nar un</w>\nti pped</w>\nla ble</w>\nde arly</w>\nbau tista</w>\ní Ļ\nmor tal\nwoo p</w>\ndt la</w>\nsho cks</w>\ndav os</w>\nðŁĵ Ŀ\nswim wear</w>\nher man\nðŁĳĩ ðŁĳĩ</w>\nz ir\nneglec ted</w>\ngrac ed</w>\ncampu ses</w>\nav s</w>\nar ora</w>\nswach hb\nlive pd</w>\nac cra</w>\nenqui ries</w>\nshoo ters</w>\nkur t\nvancou ver\nbrad ley\ngar da</w>\ng Ã¼\nol la</w>\nattrac ting</w>\nup ton</w>\nne win\nlu mia</w>\nfurn ace</w>\nev ers</w>\ne on</w>\nsw a</w>\nroo kies</w>\na oc</w>\nv ss</w>\nbris ket</w>\ntor ch\nyo da</w>\nheart land</w>\ntac o\nph ony</w>\nfood bank</w>\nab bey\nbab ylon</w>\nu y\ngre ate\nexpre sses</w>\nd andy</w>\nsc apes</w>\nsurvi vor\nron d\ne ci\nha vin</w>\nab el\nchil dish</w>\ntor que</w>\nwav y</w>\nur self</w>\nkanye west</w>\nyear of\nale stine</w>\no brien</w>\nal fon\nsk ag\nkore an\nanchor age</w>\nval eri\nde w\nðŁİ ¨\nland slide</w>\ncar ole</w>\nchrist en\ngo phers</w>\naf i</w>\npriyan ka</w>\nq q\npower of\nit te</w>\npc so</w>\ntw ol\npr y\nintellec tu\nguer rero</w>\npi les</w>\nwish list</w>\nw ren</w>\ntime table</w>\në ı\nprodi gy</w>\ngibb ons</w>\n. /</w>\nne ur</w>\nanz ac</w>\nmur ray\nvie st</w>\npla ster</w>\nla ir</w>\nart gallery</w>\ninter continental</w>\ng br</w>\nbell ator</w>\nnam joon</w>\nmam mals</w>\nam el\ny aw\nsaras ota</w>\ncam ar\nbud ding</w>\nsum mari\naco sta</w>\nla sh\ney ou\npost graduate</w>\ninstruc tors</w>\nti g</w>\nconst ant\nwere wolf</w>\nic os</w>\ncla s\nglen n\nbud ge\nðŁĻ Ĥ\ner ta</w>\nsta ins</w>\npersecu tion</w>\ncumb ri\no ch</w>\nsyner gy</w>\nhu ang</w>\nscand in\nmid terms</w>\ncomment ator</w>\nregar ded</w>\nperpe tual</w>\nbo iling</w>\nal p\nlan ge</w>\nsch le\nfac eli\ntwee ta\nri dden</w>\nok toberfest</w>\ncharlotte sville</w>\nik lan\njo u</w>\nch atham</w>\nb sc</w>\nðŁį ¦</w>\nstra uss</w>\nmel low</w>\nxx xx\nhappy hour</w>\nre actor</w>\nww er\ndistr action</w>\nat orial</w>\nðŁĴª ðŁı¼\ntwin peaks</w>\nfay ette\na or\nko k\nbro om\nsy fy</w>\nou se\nam ag\nØ ·\nubis oft</w>\nlu lu\nhall mark</w>\nstu art\nit ya</w>\nsi deline</w>\nvenge ance</w>\nre lu\nsex ism</w>\nboun cing</w>\nun ites</w>\ngu stav\nte ssa</w>\nstu mp</w>\npro clamation</w>\nima x</w>\ndivid end</w>\ncol by</w>\nðŁį İ</w>\nplay wright</w>\nun safe</w>\nco smo</w>\nðŁĩ²ðŁĩ ½</w>\ncup board</w>\nconstitu ents</w>\nang lia</w>\nram page</w>\nðŁĺįðŁĺį ðŁĺįðŁĺįðŁĺį</w>\nthan ked</w>\ntake aways</w>\nshro ff</w>\nde bat\nkh ur\nconduc ts</w>\nformat s</w>\nà ©\nport age</w>\ngraph ers</w>\nu ten\npre m\nmo ines</w>\ncondem ns</w>\ns ous</w>\nl ps</w>\nf cs</w>\ndeal ership</w>\nleuke mia</w>\nbure au\nski d</w>\nguardi ola</w>\nca ster\nthir d\navoi ded</w>\nen cyclo\nc sr\nvi xx</w>\nanaly zing</w>\nshe ar</w>\ndulu th</w>\nshap iro</w>\nchan ting</w>\nstre sses</w>\nas be\nmil itia</w>\nãĥ ª\ncol lin</w>\narsen e</w>\nsure sh\nteach ings</w>\nyi xing</w>\nsh ill\nnu des</w>\nsv u</w>\nclear water</w>\nwar ped</w>\npro life</w>\nartist son\nit u</w>\nversail les</w>\ngalax y\nax el</w>\nspring st</w>\ncal a</w>\nhu hu</w>\nsc u</w>\ncommit ments</w>\nexe ter\npoign ant</w>\nmo tion\nconserv atory</w>\nrow dy</w>\nrec alled</w>\nmu sk\nemb elli\nso the\nâĺ Ģ\nsto pper</w>\nsch ild</w>\nto pe\nel mo</w>\nzi el</w>\nj om\nbarn sley</w>\nsnow den</w>\non tour</w>\njour ney\nhills borough</w>\npar ole</w>\nw ts</w>\nmo ving\nag ility</w>\ntiv o</w>\nff ers</w>\nkindle unlimited</w>\ng wen\nann an</w>\nah mad\ntex tured</w>\nhepat itis</w>\ndra m</w>\ninsi ders</w>\ntis sues</w>\nãĥ Ħ</w>\nfc barcelona</w>\ncr atic</w>\nna acp</w>\npe can</w>\nf gm</w>\ncustom ize</w>\nconcer t\ng sm</w>\npe g\np one</w>\njustin trudeau</w>\nsuper cars</w>\nhappy holidays</w>\nbu lar</w>\nado x</w>\nlap tops</w>\ndigital health</w>\ndestin ation\ngradu ally</w>\náĥ ¦</w>\npopp y\nss l</w>\ninhi bit\nstar light</w>\nof fro\nglo omy</w>\nx per\nhal der</w>\nim plants</w>\nle to</w>\nhass el\na as</w>\nun told</w>\nen ci\nliber ia</w>\nor an\ncon tests</w>\nil ah</w>\nsma g</w>\nsc out\nmari anne</w>\ncr yo\nschedu ling</w>\nlo s\nkan e\nstutt gart</w>\nne se</w>\nlaw rence\nda in\npho tom\ncar ou\nà¸ £\ng wy\nnational dogday</w>\nroa sting</w>\nband camp</w>\nkentu cky\nstret ches</w>\nke rel</w>\nca she\nãĤ ¸\nsta x</w>\ntran si\ndog gie</w>\nat ric\nhal le</w>\nci vic\nbrow ning</w>\nlein ster</w>\ncat day</w>\nhigh land\njoy ous</w>\nin cumb\nor lando\nro mo</w>\ncol ton</w>\ndel ta\ncar ab\nro tc</w>\naster oid</w>\ngoose bumps</w>\nmo logy</w>\nyo ko</w>\nan ds</w>\ntomor rows</w>\nred carpet</w>\nsm p</w>\nca sio</w>\nðŁ¤£ðŁ¤£ ðŁ¤£</w>\nse au</w>\nrejec tion</w>\nrot ating</w>\nbi partisan</w>\nth un\nmat i</w>\nbon i\nol l\nener gye\ndo it\nl j</w>\nmother hood</w>\nlou ise\nneck laces</w>\nel ite\nni x</w>\nl cs</w>\nen v\ngl u</w>\nle sh</w>\ncran k</w>\nsu sie</w>\nm clau\nso tu</w>\ncrow ley</w>\nrat ri</w>\nuse d\nbre ton</w>\nalfre do</w>\nye o\ntravel pics</w>\nti pp\nelli son</w>\nsax ophone</w>\nme red</w>\nheu ghan</w>\nta ine</w>\nf es</w>\nvi ro\nsuppo sedly</w>\ni as\ndige stive</w>\ny le\nli zzy</w>\nwildlife photography</w>\nbri anna</w>\nwest field</w>\nra ined</w>\nam her\nðŁĺĦ ðŁĺĦ</w>\ndistribu te</w>\nbott om\npre serving</w>\noil and\ncraf ty</w>\nde scen\ncol ling\nshakespeare sunday</w>\nr wc</w>\nang led</w>\nci an</w>\nt ations</w>\nmon tage</w>\nme yers</w>\nfrance sca</w>\nðŁĮ ·\nwi ggins</w>\nsan ford</w>\nvolunte er\ncar ra\nbar k\nvari ed</w>\npl in</w>\nam u</w>\nkap il\nrock ers</w>\nqu ind\nbr ane</w>\nin mate</w>\nent al\nimpro vis\nmichi gan\nre tweeting</w>\nprogre ssing</w>\nmercedes benz</w>\nsmo ker</w>\nphysi ology</w>\ndor ado</w>\nwatt pad</w>\nh wa</w>\nsr bachchan</w>\nw ga</w>\nvol atility</w>\nhi re\nac ap\nwn ba</w>\nhein z</w>\nstit ches</w>\nkidnapp ing</w>\nbur ys</w>\nlim b</w>\nf itters</w>\nthumb nail</w>\nton e\nmir and\ndesi rable</w>\nad dison</w>\ntar an\ntamil nadu</w>\nspec tator</w>\nsoci ology</w>\namit shah</w>\nremo tely</w>\nâĻ ¦\nham id</w>\nr ds</w>\ng lee\nsmooth ly</w>\nsch ro\ner c</w>\nlali ga</w>\nhe als</w>\nus f\nni shi\nd hu\nun il\nh le</w>\ntro mb\nbhu tan</w>\npilip inas</w>\nse ung\nwhit man</w>\nte y</w>\nmin ce</w>\nsnow boarding</w>\nre au</w>\nk ker</w>\nav o</w>\nzach ary</w>\nran veer\nti k</w>\ngover n</w>\nqu al</w>\nbeck y\nanthropo logy</w>\natt en</w>\ngrocer ies</w>\nde bit</w>\nwar p</w>\nsil icon\nhawa ii\nðŁĴ ħ</w>\npomegran ate</w>\npe er\norang es</w>\npeople schoice</w>\nend ure</w>\nðŁĴĽ ðŁĴĽ\nãĤ¹ ãĥ\nac ial</w>\na haha</w>\nstu k</w>\nimper ial\nbl ond</w>\npow der\nkno ts</w>\nvin ce\nwood lands</w>\nden a</w>\nwatch in</w>\nmat cha</w>\nma hat\ngalax ies</w>\nmiddles brough</w>\nk Ã¶\nstre e</w>\nresc ues</w>\nwal do</w>\nlero y</w>\ndesp ic\nreal ities</w>\ntm nt</w>\nha q</w>\nun o\npe c\nbolly wood\nblin ds</w>\ndesign thinking</w>\nhe ms\nand hra</w>\nab sen\nfan s\nste ch</w>\nshire hour</w>\nbla ine</w>\nshak ti</w>\npu rely</w>\nðŁı ı</w>\ntra fal\nke ynes</w>\ngr ate\nto bias</w>\nspon taneous</w>\nsatur ated</w>\ncaval ry</w>\npri sc\nðŁĺ ĳ\nwh t</w>\npas si\n~~ ~</w>\nvir at</w>\npatt inson</w>\nla o\nweir do</w>\nsym pathy</w>\nju da\nocca sionally</w>\ncred ited</w>\nstat u\nes co\nhil ly</w>\nesc ape\ndischar ge</w>\nse er</w>\nmay nard</w>\nsud bury</w>\nz lat\nor al\nwe er</w>\nencoun tered</w>\nsm elling</w>\nover sight</w>\nê ¸\nthat cher</w>\nmack ay</w>\nyou can\nfre ep\nfreed oms</w>\nprophe cy</w>\nho e\nishq ba\ndra ke\nqu its</w>\npel led</w>\ntur k</w>\no vi\nwesle yan</w>\nnew music\nleg g</w>\nch eng\nh illi\nay y</w>\npan ties</w>\nad versity</w>\nad jac\nvaccin ation</w>\nju ke\nga c</w>\nexce ed</w>\ntime sof\nsta ining</w>\nep cot</w>\nv ital\nup ward</w>\nbethe sda</w>\napar k</w>\nma hi\ncamp fire</w>\nenchan ting</w>\nrha pso\nh z</w>\nna ver</w>\nfa x\nvali dation</w>\nac ad</w>\nny r</w>\nas ym\ncoordin ated</w>\ndepar ted</w>\nall ery</w>\nvar ies</w>\nspr ite</w>\nchap lin</w>\nss occer</w>\ns wat\nbre t</w>\nrelu ct\ntunes app</w>\nsuper star\nreminis cing</w>\no co</w>\nhome grown</w>\ndough nut</w>\nun canny</w>\nla pd</w>\nthyro id</w>\n! âĿ¤ï¸ı</w>\nbotan ic</w>\nbre s</w>\nsp ade</w>\ni ste</w>\necho es</w>\ndu lil\nbur sting</w>\nqui ero</w>\nðŁĳ İ</w>\nloy ola</w>\namuse ment</w>\nha ils</w>\nsleep y\nburgl ary</w>\nâľ ı\nro gue\ncot land</w>\nmo ors</w>\nlow er\nwic ked\nðŁĶ Ĭ\ncompet iti\nargent ine</w>\nyvon ne</w>\nkarti keyan</w>\nili ary</w>\ngat sby</w>\nprecin ct</w>\nsix ty</w>\nna ji\ncam s</w>\npractiti oner</w>\nðŁĺ³ ðŁĺ³\npu ne\nneg li\njuli en</w>\ninv aded</w>\ncali br\ncla m</w>\nduba i\nmu k</w>\nlan tic\nproduc t\nfe dex</w>\nï¸ı :</w>\neu ra\ndari us</w>\ns ling</w>\nvirtual reality</w>\nhome stead</w>\nðŁı³ï¸ıâĢį ðŁĮĪ</w>\npac ed</w>\nin ha</w>\npul mon\nla zy\npremi ering</w>\nma stered</w>\nin he\ncon gregation</w>\nba jo</w>\nsport ing\nnew jersey</w>\nhor ny</w>\nlma oo</w>\nleng thy</w>\ndu t\nyo gh\nswe aring</w>\nphilosoph ical</w>\npap ua</w>\nin ski</w>\nknow les</w>\ndy ke</w>\nâĢ ²</w>\nto ken\nmc guire</w>\nri ot\nprobab ility</w>\nmc con\ngro s</w>\nsu mat\nc ite</w>\nda a</w>\non da</w>\nmad dow</w>\nche w\nboard games</w>\nspar ked</w>\nre claimed</w>\nad hd</w>\nny se</w>\nimwith her</w>\nequ inox</w>\nboo ths</w>\nbalsam ic</w>\nha zy</w>\ndor chester</w>\nag os</w>\nse aw\nmoder ator</w>\nseri ea</w>\nander sen</w>\npilgri m</w>\nâŃĲ âŃĲ\nitch en</w>\nhal li\nx ton\nnathan iel</w>\nmun ition</w>\ncelesti al</w>\nga f</w>\nzo om\nmark le</w>\npen thouse</w>\ncal e</w>\ns fa</w>\nbar king</w>\ntu cket</w>\nem ery</w>\ncal orie</w>\nli que\nad ar</w>\nmc nam\ntor tilla</w>\nwood pecker</w>\nmo town</w>\nbad ger\nayr shire</w>\nscram ble</w>\ndd ay\ncra ziest</w>\nper rie</w>\ncho co</w>\ncast e</w>\ni ot\nwre cked</w>\nselec ting</w>\nuss r</w>\ngra ft</w>\npun t</w>\nlab ou\nir st</w>\nba ek</w>\nÛ Į</w>\nsu ki</w>\nque u\nach at</w>\nte ster</w>\naug mented</w>\nwc vb</w>\nsin ks</w>\nðŁĵ »\nra ke</w>\ninter ne\nbe cause\nbelle vue</w>\nune arth\nlight en</w>\nðŁĺ £</w>\nturn around</w>\nlabe led</w>\nunemp loyed</w>\ntwitter kurds</w>\nle ia</w>\nh ye\ngreat er\nðŁĲ İ</w>\ntim ed</w>\ni red\ne tt\nlimit ations</w>\ncab e</w>\ns out</w>\nbee ch\nanni hil\nre trac\nyo ona</w>\nang er\nden nis\nsupp lying</w>\ndi z</w>\n\" (</w>\nsc ur\ngun man</w>\nsu ho</w>\nsauvi gnon</w>\nà¸ ¥</w>\nwi ley</w>\nland on</w>\nchoreo graphy</w>\npre historic</w>\nðŁı ĥ</w>\nvar gas</w>\nassess ments</w>\npinn acle</w>\ndi i</w>\nchamber lain</w>\nì Ī\nv p\npresent ers</w>\ndeut sche</w>\nsun shine\nsal utes</w>\nr one</w>\nbu siest</w>\n- .-</w>\nmotor ists</w>\nhemi sphere</w>\nal wx</w>\nps p</w>\now a</w>\nden ying</w>\ncho c\ngu tier\nhan uk\nmus kete\njait ley</w>\nse wage</w>\nt ame</w>\nthin kers</w>\nshi m</w>\nse quo\npap ar\nmiddle east</w>\nk wa\nke g</w>\npatag onia</w>\nno y</w>\nbar Ã§a</w>\ntake off</w>\nhe a</w>\nà ¬\nn sc\ng dc</w>\nðŁĳ Ī\nmou stache</w>\nmel ania</w>\nthr a</w>\nâ¬Ĩ ï¸ı</w>\npier ced</w>\nze us</w>\nfon ts</w>\nber a</w>\nit iner\nq atar\ncontr ary</w>\nire land\ni fy</w>\nou los</w>\ncommun al</w>\nfin s</w>\nun paid</w>\npa a</w>\nðŁĳĩ ðŁı»</w>\nri os</w>\nou p</w>\nf iller</w>\ncafe teria</w>\nà¸ Ń</w>\nkas i</w>\ncali ber</w>\nz ulu</w>\nv sco</w>\nts ford</w>\ndragon fly</w>\nsmo kin</w>\npi st</w>\npsycho logist</w>\ndiplom at</w>\nwe bs</w>\nbuc cane\nà® ¾</w>\nmotiv ational\ndu ne\nba e\nc fs</w>\nwith out\ner on</w>\ni ac\nate e</w>\npen sion\nfra zier</w>\nen sis</w>\nsk is</w>\npar ting</w>\nger y</w>\nterrit ories</w>\nnach os</w>\neni ght\never lasting</w>\nmsd honi</w>\ntel e</w>\nsp un</w>\npo di\nsab ah</w>\nenviron mentally</w>\nce ase\nbeau mont</w>\nmar ta</w>\nkel vin</w>\nho ff\nsun il</w>\nn da</w>\nco b</w>\nsh ale</w>\nree dus</w>\nun boxing</w>\nu bio</w>\nre opened</w>\nn all</w>\ncapsu les</w>\nmar r</w>\nhimalay as</w>\nswee ter</w>\nja z</w>\nf mr</w>\ntwee ter</w>\ndha ka</w>\nna u</w>\nde mi\nd fs</w>\nta urus</w>\nfad ing</w>\nit utes</w>\nci p\nover flow</w>\njef frey\ndon ny</w>\ncar tunesapp</w>\nðŁį ĳ</w>\nprefe cture</w>\ndanc ed</w>\nc pt</w>\nple asing</w>\nital k</w>\nearth quakes</w>\nul ation</w>\nhi o</w>\nãĢ ĭ</w>\nant an\nnutri ent</w>\nde ere</w>\nselec ts</w>\nenrich ment</w>\nr iti\ntram pol\nbl amed</w>\nj ia</w>\ncontribu tors</w>\nchesa peake</w>\npi geons</w>\ntribun al</w>\nmad uro</w>\nw su</w>\nilo ve</w>\neffici ently</w>\ndar cy</w>\nwar ms</w>\nar ra\nec u</w>\nho wer</w>\nstrugg led</w>\nrajini kanth</w>\nðŁĺ¢ ðŁĺ¢\nhou sing\nstr at</w>\neli x\ndisp ro\nraf fic</w>\nthi erry</w>\nna sty\nc fb</w>\nstaf fing</w>\nal ma\nback ers</w>\nhen son</w>\nsky walker</w>\nreale state\nroo s</w>\nness y</w>\nchan ce\ncair ns</w>\nc ci\npe dal\nly ft</w>\ncross word</w>\nwait er</w>\nonly in\nkru ger</w>\nk ir</w>\nalej andro</w>\ncar tier</w>\ncar rera</w>\nre paired</w>\nou at</w>\nun clear</w>\nun breakable</w>\ntoday in\nqu eries</w>\njo dy</w>\ngen ital</w>\nwin ner\nto l</w>\nkelown a</w>\nfascin ated</w>\nãĥ ¬\nsris ri</w>\nsqu ared</w>\nspr ung</w>\nnegoti ate</w>\npriv ately</w>\nav en</w>\n>> >>></w>\ng ical</w>\ngav in\nchester field</w>\nzu mba</w>\nor r</w>\nnat alia</w>\nimpeach ment</w>\nmn l</w>\ncar at</w>\ncriti que</w>\ncredi ble</w>\ntrac y\ntan i</w>\nmusi k</w>\njig saw</w>\ngam bia</w>\ntol kien</w>\nfe u</w>\nas per\nsav ory</w>\nfo xx</w>\nf itt\nmar lon</w>\nl rt</w>\nv ell</w>\np br</w>\nimprison ed</w>\ni om\nchu l</w>\nwind shield</w>\nkay e</w>\nba a</w>\nchor d</w>\ns art</w>\nal gon\nminister ial</w>\nnat geo\nla zio</w>\nnor ms</w>\nðŁĳį ðŁĳį\nlic king</w>\nfut bol</w>\nun sung</w>\ndalla scowboys</w>\nsh red</w>\ndistur b\ndev ine</w>\nbe ards</w>\nch f</w>\nb day\nro sso</w>\nig or</w>\nay i</w>\nsi ren</w>\nk air\nsti les</w>\nro f\nmag nets</w>\nun cover</w>\nmou se\nbang ing</w>\nsi ghted</w>\nspe ople</w>\nimpac t\nrow land</w>\nkir a</w>\nenviron ment\nlove the\np sis</w>\nmish ra</w>\ngl endale</w>\nca jun</w>\no che</w>\nde ception</w>\nsex ist</w>\nstra ws</w>\ns ga</w>\nbuff er</w>\napost le</w>\nsp l</w>\npop up</w>\nðŁļ Ĺ\nr g\nup er</w>\nball in</w>\ni dy\nocca sional</w>\nnational park</w>\nðŁı Ĭ\nu an</w>\ninnov ation\nà¸ «\nte aparty</w>\nre tte</w>\ncounter fe\nb ha</w>\nrec s</w>\nig en</w>\nðŁĮ Ĳ</w>\nhumming bird</w>\ncu r</w>\nha ven\nla zar\npue blo</w>\n: :\nzi onist</w>\nop ath\ninver ness</w>\npromo ter</w>\ncarto on\ncabine ts</w>\nmahog any</w>\nsurve ying</w>\nr ational</w>\nfeel ing\ntesti fy</w>\nso w</w>\noc on</w>\nà¸ ¢</w>\nne el\nmar is</w>\nsol itary</w>\nche mo\nrad cliffe</w>\nsim ons</w>\nros ary</w>\nnew er</w>\njo die</w>\nre tali\npra wn</w>\npad dy\nhen ge</w>\nk ala</w>\nim plant</w>\nat y</w>\nbren twood</w>\npar adox</w>\nene z</w>\nre designed</w>\np our\nwy d</w>\nal de\nà¯ ģ</w>\nsol d\nbiomed ical</w>\nà¹ Ĥ\ntt tt</w>\nmat teo</w>\nys er</w>\nnew ton\nde bun\nner dy</w>\nloo l</w>\nwo on</w>\nelisa beth</w>\nec c</w>\nwh i</w>\nach o</w>\nsalv age</w>\nsal aries</w>\nqu ity</w>\nnavig ating</w>\noph thal\ncon soles</w>\nre built</w>\no pec</w>\nast ers</w>\nsho red\nset list</w>\nkathr yn\nrhy mes</w>\nre visiting</w>\nash ish</w>\nli ft\nre post\nsole il</w>\nâı ±</w>\nweal th\nsa at\nwe c</w>\nking james</w>\nflipk art</w>\nfield work</w>\nse gu\nmo dal</w>\nbu b</w>\nare rs</w>\nðŁį Ĵ</w>\nclo oney</w>\npad dington</w>\nnecess ity</w>\nguth rie</w>\npen te\nli mo</w>\njo sie</w>\nar tin\nen c</w>\nl hs</w>\nbetra yal</w>\ninfo graphics</w>\ni er\nmo a</w>\nhear ings</w>\nbon jour</w>\nsym bolic</w>\nag ro\nwed ges</w>\nkrist ina</w>\nwild flower</w>\nathle tic\nphotograph y\npe sh\nca hill</w>\nchi lean</w>\ngou l\nfi oren\nðŁĳ ¶</w>\nz il</w>\nsk im\nbad oo</w>\ndeli a</w>\ntre ble</w>\nn cc\nðŁĩ¦ ðŁĩ\na house</w>\nbul lock</w>\nsol itude</w>\nØ§Ù Ĩ</w>\ncan cers</w>\nfutureof work</w>\nhu tch</w>\nwater shed</w>\nwar mongers</w>\nsp illed</w>\ncolom bo</w>\nmo th\nassoci ations</w>\nweigh ed</w>\nglobal goals</w>\nnot just\nchrist i</w>\ntor g</w>\nswe ating</w>\nman eu\nclu sters</w>\nâĢ¼ï¸ı âĢ¼ï¸ı</w>\nta ped</w>\nul y\ntru sting</w>\nyu suf</w>\nte in</w>\nra b</w>\n, ,,,</w>\nsin ai</w>\naudi ble</w>\nexplic it</w>\ncro wns</w>\nsch iz\nat least</w>\nðŁĹ £\nde bra</w>\nje suit</w>\nene gger</w>\nz hen</w>\none sie</w>\ni it</w>\nss f</w>\ngur gaon</w>\nchak ra</w>\nbear cats</w>\nk ran\nk awa</w>\nreque sting</w>\nhan over</w>\ng end\nsor os</w>\nmer cy\nlovel y\ndo omed</w>\ntim my</w>\nku z\nul l\nab ram\nsa ison</w>\nãĥ «\nclean ers</w>\nre mo</w>\ncircu its</w>\nbar red</w>\no th\nmo ist</w>\nmadele ine</w>\ngall o</w>\nu j\nper mits</w>\nhea viest</w>\ncar ols</w>\naz te\ngior gio</w>\nflo ats</w>\ndecl aring</w>\nus rc</w>\nmin at</w>\ncraf ts\npri ma</w>\nconven i\nnickelo deon</w>\ndanc ing\nceremon ial</w>\nblo gg\ntw p</w>\nanglic an</w>\nshe k</w>\nk nick\n( ((</w>\nhubb ard</w>\nharve y\nhit man</w>\nfen g</w>\nwe some</w>\nfor za\ns word\nop us</w>\nbro m</w>\ngi bility</w>\nz al</w>\nm unch</w>\ndance hall</w>\ngre edy</w>\nhd mi</w>\nre birth</w>\nðŁĺĭ ðŁĺĭ</w>\ns world</w>\nfigur ine</w>\ncom post</w>\nk f\nengra ving</w>\ngior no</w>\nst ana</w>\nk man</w>\nham ster</w>\ncompos ers</w>\naj e</w>\nfunc tionality</w>\npol k</w>\nis ons</w>\nair planes</w>\nte se</w>\nhor rors</w>\nmusc at</w>\ngi ven\nsp ence</w>\nðŁĩ¸ ðŁĩ\neli ot</w>\nach illes</w>\nfre ck\ncrypto currencies</w>\nsou ther\nhal o\nbor neo</w>\npolit ic\nhahahaha h</w>\nup state</w>\nsi ena</w>\nobsc ure</w>\nhau sen</w>\nlloy d\nhappy friday</w>\nmotor bike</w>\nbon a</w>\nameric as\nhol s</w>\n- (</w>\nspor ty</w>\nun aware</w>\nreven ues</w>\nchristop her\nbank sy</w>\nav an</w>\nev apor\ncom press\neyel iner</w>\nto dos</w>\nbuff y</w>\nrenewable energy</w>\nly rical</w>\nar chan\nrapi st</w>\nfair trade</w>\nlma ooo</w>\nbeat z</w>\npro active</w>\nla pse</w>\nir ical</w>\nrevers al</w>\npo de\nmcin tyre</w>\nmac au</w>\nãĥ ķãĤ\nnash grier</w>\nf sa</w>\ng all</w>\nçĶ Ł\nperpe tr\nil ya</w>\nconfigur ation</w>\n% ;</w>\nstr ange\nrac i\nà¸ ĩ</w>\npic kups</w>\nkov sky</w>\nmam mal</w>\nw ps</w>\ng able</w>\ncompar ative</w>\nz h\nsave our\nda vey</w>\non etsy</w>\nmu ssels</w>\nmis er\ncri stina</w>\nelectr on</w>\ncra ve</w>\nlo ren</w>\nprecipit ation</w>\nm z</w>\nðŁį «</w>\nvin cen\nsnow board</w>\nno ida</w>\nah n</w>\nmarin ated</w>\ng tr</w>\ntown hall</w>\nmin is\nbethe l</w>\nadv an\nsu ra\nshi el\nfur ry\nðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ</w>\nlyn d\nso il\nsc ence</w>\nsen eca</w>\nshar jah</w>\ndick ens</w>\ncredenti als</w>\nav ar\nper k</w>\nrequ iring</w>\npre fer\nj ian</w>\nde ca</w>\nr ach</w>\ning for\ndel e</w>\nbe ep</w>\nðŁĴ »\ncis ely</w>\nhu ddle</w>\ngreen sboro</w>\nhaw king</w>\nho ax</w>\nhang ar</w>\nç ľ\nmis o</w>\nlo vin\ngre ta</w>\nab ad\nlogi e</w>\nat an</w>\nsnow flake</w>\nmahe sh\nfear the\nal kal\nbobb lehead</w>\nba hn</w>\nju dged</w>\nfu tu\nfeli x\nðŁį ĵ</w>\npi ke\nder iv\nnotic es</w>\nau er</w>\ndis super</w>\nor da\nwi pes</w>\nam ino</w>\nstri kers</w>\nfoo tb\ndram as</w>\npun ching</w>\nscore less</w>\nheming way</w>\nbi h</w>\nbal lad</w>\nchat ter\nam mo</w>\nkle in\nfabric ation</w>\nkari m</w>\nz end\nhi sto\nvol ta</w>\nrock y\nmarke ter</w>\nxtre me</w>\nsequ encing</w>\nparadig m</w>\ncle ats</w>\nboom ing</w>\nâģł âģł</w>\nblock ade</w>\npromp ts</w>\nyogh urt</w>\npur pose\nnu r</w>\nregu late</w>\nnois y</w>\ning rid</w>\nbird watching</w>\nbar tender</w>\nÙ ĥ\nwor dof\ncha otic</w>\nshor ty</w>\nel dest</w>\nz app\nonceupon atime</w>\nfl yo\nrit os</w>\nmike quind\nðŁĲ ´</w>\nregi stering</w>\n. ]</w>\nad ol\ngg gg</w>\npur ge</w>\nkid lit</w>\nar bor\nval ves</w>\nsynago gue</w>\no th</w>\nunanim ous</w>\nveri fication</w>\ndar rell</w>\nãģ Ħ\nvander bilt</w>\ntape stry</w>\npro sper</w>\ndid dy</w>\ndra fting</w>\nde cep\nmarqu is</w>\nst int</w>\nmichael jackson</w>\npee led</w>\nmen us</w>\nbb b</w>\nsc are\nema il\nwri gley</w>\nit is\nf ell\nsome thin</w>\nbar ra</w>\ned gar\ndi pping</w>\npu ddle</w>\nsla de</w>\nlear ner</w>\njal en</w>\nðŁ§ Ĳ</w>\nthe daily\nmikequind azzi</w>\nju x\niq bal</w>\nmckin ney</w>\nra iser</w>\nef an\ndr one\ncat o</w>\npic ket</w>\ncro we</w>\nl att\nuk o</w>\ngiuse ppe</w>\nhin i</w>\nsynthe si\nponti fex</w>\nsong writing</w>\nto d</w>\nswit ches</w>\ndin ners</w>\nh q\ngabri elle</w>\npensac ola</w>\ncir cle\nexpo ses</w>\nev s</w>\nriyad h</w>\npro men\no ck\nsa j\ncit ation</w>\nbrew co</w>\njo si\nep aper</w>\ndri f\npoint less</w>\ntang led</w>\ncri pp\nline ups</w>\nfairi es</w>\ndaz e</w>\nmour n</w>\nbla dder</w>\nsal z\nbur undi</w>\nbook mark</w>\nthe people</w>\nsub sequ\nprinci pal\nsk er</w>\ncourt ney\na oki</w>\nrac ers</w>\nad m</w>\nmom a</w>\ncritical role\nhou n</w>\nshed ding</w>\nsa ka</w>\nace ous</w>\nmck ay</w>\nhus bands</w>\nÂ ½</w>\nme da</w>\naccu sations</w>\nro sel\nnc is</w>\nwitne ssing</w>\nor ama</w>\ngo ds\nhil ton\nel man</w>\nÃŃ n</w>\nmeg ap\ncra ven</w>\nannoun cer</w>\ncrit eri\nsheffiel dissuper</w>\nmilit ant</w>\nconsu l</w>\nhoo ded</w>\naby ss</w>\nb x</w>\nma dam\nlo cu\nmary am\nmanic ure</w>\ngrat is</w>\nac tresses</w>\nros ario</w>\nthis dayin\nking ly</w>\ngn ome</w>\ncel ine</w>\nr ous\nhe el\nlil ac</w>\nvish al</w>\nab h</w>\nthor ns</w>\ns ls</w>\nne al\nconstruc ting</w>\nbe ren\ns lang</w>\nma ins</w>\nfar ra\nsar ko\npai ge\ngu iller\nl ala</w>\nice berg</w>\nnou n</w>\nplann ers</w>\nu mmm</w>\nou ses</w>\nill ary</w>\nma an</w>\nbox ing\nzi pper</w>\nsrin agar</w>\nmigu el\no str\nmp o</w>\nresponsi bly</w>\nlan terns</w>\nappli ance</w>\nx b</w>\ngren ade</w>\nneglec t</w>\ndy sle\nham mock</w>\nne ctar</w>\nwit cher</w>\nr gv</w>\ndi ence</w>\nser bian</w>\nseed ed</w>\ncru z\nbi sh\nsp he\ne q</w>\nsky rim</w>\nalge bra</w>\nphil ately</w>\nbungal ow</w>\nge off\ny ves</w>\ndemand ed</w>\nconsider ations</w>\nthe vamp\npawan kalyan</w>\nco ded</w>\ngrit ty</w>\nerup tion</w>\nse infeld</w>\nuni denti\nëĭ Ī\nwor m\nac us</w>\nse ung</w>\ndun g</w>\nro land\nsu d</w>\ndi visions</w>\nab lanc\nshor test</w>\nj f</w>\np oun\nplant based</w>\nbe to</w>\ntough er</w>\nmc o</w>\ndon et\nmark us</w>\nv fl</w>\nðŁı ł</w>\nopen ing\nco ward</w>\ncaber net</w>\no xi\nburle sque</w>\nsand ra\nsu mo</w>\nconsi st</w>\ntho t</w>\ncay man</w>\nmotor ola</w>\ngutier rez</w>\nd slr</w>\ny w\nno bel\nnov ice</w>\nmoms demand</w>\ngrun ge</w>\nsp or</w>\nd cc</w>\npre sses</w>\nsli st</w>\nallot ment</w>\nvoc ational</w>\nft c</w>\npu ja</w>\nlo ven\nutt arak\ntan dem</w>\nsh ep\ncome dians</w>\nanat om\ncant wait</w>\nhealthye ating</w>\nwest side</w>\nmar gins</w>\nchi ang</w>\nasbe stos</w>\nstupi dity</w>\nproble matic</w>\nfit bit</w>\n: $</w>\nceil ings</w>\nshu a</w>\nprotec tions</w>\nbio tic</w>\nbeng ali</w>\nre sts</w>\nbien nale</w>\ntim o</w>\ncul min\ne minent</w>\naffe ction\nunbeliev ably</w>\nindividu ally</w>\ncanvas sing</w>\nwh itt\nnov asco\nchin son</w>\nh pe</w>\ngo w</w>\ngloucester shire</w>\npa o</w>\nthresh old</w>\nchev ron</w>\ns ine</w>\nwe ther\npp ie</w>\naqu ino</w>\nantwer p</w>\nâĸ ¬\npo on\ninst af\nequ ine</w>\ncinemato graphy</w>\nnbaf inals</w>\nvali ant</w>\nkil kenny</w>\nte rence</w>\nsyste mic</w>\nsr l</w>\np ound\nmade ira</w>\npl ough\ntre cht</w>\nmat ed</w>\nmp d</w>\nransom ware</w>\nph in</w>\nli qui\nbb ce\nboom er\ni standwith\ncon ju\nr te\nnar a</w>\nfoo lish</w>\nda shing</w>\nvier nes</w>\nbr ite</w>\nda u</w>\njuni per</w>\nai da</w>\nyou now</w>\nra zer</w>\nde i\nrepe ating</w>\ncomfor ting</w>\nadjac ent</w>\ne to</w>\nca sted</w>\nchat ur\nmu er\nsyn th\nsan itary</w>\nmac le\nindepend ent\nlaw ful</w>\ne erie</w>\nh or</w>\nðŁĴ Ń</w>\nam rit\nvel o</w>\nstation ery</w>\nmu f\nmay may</w>\ncontempl ating</w>\nelabor ate</w>\ngre gor\ndri es</w>\nac col\nà¸ ļ\nschwarz enegger</w>\nill nesses</w>\nday break</w>\nfollow back</w>\ncollu sion</w>\nelectr onic\njo vi</w>\nhiro shima</w>\nta w\nhom ec\nmic ah</w>\nqu itting</w>\nfro sting</w>\nben fica</w>\nhel i\ns ical</w>\npic cad\ncorpor ate\nment orship</w>\nyou are\nsing er\nshi va\nru ne\ning er\nri um</w>\nplay able</w>\ndoo p</w>\nwil low\nter re\nni p\nat d</w>\nwar bler</w>\nprofession ally</w>\ner ase</w>\nproce ed</w>\npedestri ans</w>\nmis chief</w>\nben ding</w>\nalas kan</w>\nc kett</w>\nmo p</w>\ndd les</w>\nshut ter</w>\nge ared</w>\natene o</w>\nma deline</w>\ng ations</w>\no sha</w>\nder ick</w>\nsw ild\nan gry\npat ents</w>\nhun k</w>\ndecre ased</w>\nfr y\nðŁĴĸðŁĴĸ ðŁĴĸ</w>\nsal on\nquant ities</w>\nd ario</w>\nni gel\nku ma</w>\njen n\nhapp ye\nxx x\nrex perience</w>\npro s\nau sch\nrele ssly</w>\nham burger</w>\nfuku shima</w>\ner ne\nstat ec\nren d\nmay field</w>\nj one\nlef ty</w>\nbern stein</w>\nsm il\ngener ates</w>\nfore station</w>\nband its</w>\nta yo</w>\nr ca</w>\nac ci</w>\nrodri go</w>\nkn app</w>\nelo vers</w>\nvege tation</w>\nu ral</w>\nle ft\nħ ï¸ı</w>\nworl dre\nsur i</w>\nembar k</w>\nw son</w>\nba you</w>\nmu ller</w>\nmo vers</w>\nðŁķ º\npresby ter\nl f\ncre e\nbat b</w>\nsal am</w>\ndemonstr ations</w>\nan ec\nn pc</w>\nit ics</w>\nto graphy</w>\nre inst\nthur st</w>\ntal e\noff ences</w>\nsmart city</w>\nbro tha</w>\nofthe year</w>\nin valuable</w>\near n\nðŁĳı ðŁı½</w>\nkre mlin</w>\ngra dy</w>\ntown fc</w>\nguern sey</w>\nma ha</w>\ncontag ious</w>\ndre x\nbe en\n( Â£</w>\nnati vity</w>\nk tm</w>\nsomer halder</w>\ncomp ounds</w>\níķ ĺ\n\" âĢ¦</w>\naf g</w>\nott news</w>\nh ound\nfire fly</w>\ncil an\ndonet sk</w>\nvolunte ered</w>\nak ira</w>\nè ª\nsing ul\nst h</w>\ndro wned</w>\nmand o</w>\nhe ir</w>\nðŁİīðŁİ Ī</w>\ntax is</w>\ny uki</w>\nvel d</w>\nk ans</w>\nel k\nran ts</w>\nhash tag\nt eng\nro g</w>\na at\ngru b</w>\ne ber\nin india</w>\ncolo ssus</w>\nsig ni\nso ever</w>\nmile stones</w>\nder o</w>\ndifferen tial</w>\nphu ket</w>\nmaster mind</w>\nan gh\nmel ani\nbro ker\nactor vijay</w>\nstun ned</w>\ncontinu ity</w>\naf fl\nvo cal\nperenni al</w>\nfianc Ã©</w>\nin complete</w>\nhun ts</w>\nre issue</w>\ndomin ates</w>\ntur meric</w>\nro am</w>\nri on</w>\nbag ged</w>\nnas sau</w>\nfu t</w>\nx ox</w>\nnational trust</w>\njo ye\nsan o</w>\nhearth stone</w>\ndis respect</w>\nle es</w>\nh se</w>\nsiber ian</w>\noffe e</w>\nre stock</w>\nwolf gang</w>\nre gan</w>\nplan o</w>\nun wind</w>\nre par\nmil le</w>\n] ,</w>\nskul l\nfat ally</w>\nconcep tual</w>\nðŁĮ ²\nf Ã©\nber to</w>\nb ms</w>\nu a\nmag na</w>\nnotre dame</w>\nle te</w>\nla undering</w>\nheartw arming</w>\nbuffe tt</w>\ngo at\npe abo\nwind mill</w>\nv ac</w>\ncontinu ally</w>\naz alea</w>\nmem brane</w>\ncan cels</w>\nmake yourown\nathe red</w>\np to</w>\ntor pe\nðŁĺ ł</w>\nðŁĴ §</w>\nsc ares</w>\nle aking</w>\nz et\npix els</w>\nac i</w>\nkh il\nmarath i</w>\nðŁĻı ðŁı½\nu la\ntam u</w>\nchandi garh</w>\nz agre\naa b</w>\npronoun ced</w>\naubre y</w>\nsand er</w>\npun ta</w>\nhar low</w>\nic elan\ncelebr atory</w>\nso t</w>\nunci ation</w>\nstru ly\nmc dowell</w>\ndeepi ka</w>\nremin ders</w>\nmy stical</w>\nct c</w>\nchat ted</w>\ns ica</w>\nbar gains</w>\nch hat\nru bin</w>\nm net</w>\noiland gas</w>\npel ican</w>\no at</w>\nmor ality</w>\nk our\ni h</w>\nnu clear\ngc u</w>\nric her</w>\nvene zia</w>\nm ma\nle ith</w>\nac company</w>\nrich mond\nsports net</w>\nba ahu\nsmu ggling</w>\nmm i</w>\nðŁĩ®ðŁĩ ª</w>\ntwi sts</w>\nsahi b</w>\n.... .\namb itions</w>\nil lo\nhistor ical\nfo rec\nshow biz</w>\npon ies</w>\nchas ers</w>\nremo del\nwill ing\nprince sses</w>\nam ple</w>\ncushi ons</w>\nac les</w>\nlot r</w>\nda ch\nan the\nin corporate</w>\nnew bury</w>\nki ri\nfried rich</w>\nab v</w>\nball ers</w>\nalber t\nðŁĳ Ń\nlet i</w>\nnan op\nci de</w>\nanal o\nn sf</w>\n)) ))</w>\ngriffi ths</w>\nvalen ci\nro ano\nfun run</w>\nbabys itting</w>\nca day</w>\nent re\nu ck</w>\nslu g</w>\ntic al\nthe sims</w>\nro ar\ncar ney</w>\ng am</w>\nsto we</w>\nfi d\nbun ny\nsham rock</w>\npe cu\nmol ina</w>\ngo cougs</w>\ncon tributes</w>\ntransform ation\nmo y</w>\nv aj\nsever y\nantioxid ants</w>\nthir teen</w>\nsight seeing</w>\nl j\nreversi ble</w>\nodd ly</w>\nhoo kah</w>\nnou vel\nhal al</w>\nfe i</w>\nstab les</w>\nmul t\nho pped</w>\nbra ids</w>\ninter change</w>\nghana ian</w>\nww ww\neth no\ncon junction</w>\nago v</w>\nye ti</w>\nearth and\nts p</w>\ncon serve</w>\nheir loom</w>\nmetaph or</w>\nwoo f\ntor io</w>\nself less</w>\nn wa</w>\nem ilia</w>\nyl ene</w>\ny xe</w>\ngi ar\nmoder ating</w>\npro bz</w>\nb fi</w>\nne er\ndu mmy</w>\nhanuk kah</w>\nwe bber</w>\nk v</w>\neye brow</w>\ndag ger</w>\nsu mp\nra ges</w>\nork ney</w>\ntb o</w>\nhal sey</w>\nassign ments</w>\ntr onic</w>\nscri b\nco on\nan war</w>\n# âĢİ</w>\njal ape\nflori da\nqu aid</w>\nhaw keyes</w>\nâĻ¡ âĻ¡</w>\nstreet car</w>\nro g\ndat lantic\ngran ola</w>\nun changed</w>\nexpect ation</w>\nÙ ĩ\nmar lin</w>\ngu mmy</w>\nðŁĻı ðŁı¾\nawareness month</w>\noil painting</w>\nmu th</w>\nper ch</w>\njun to</w>\nvilla gers</w>\nmor g\nche ated</w>\nweb comic</w>\nthe future</w>\nd ps</w>\nla kings</w>\nmen tioning</w>\nvo or\nident ities</w>\naccor d\nmc gu\nl pga</w>\nrum our</w>\nmassi vely</w>\nm pls</w>\nheal y</w>\nd ate\nsp oli</w>\nre visited</w>\non t\nal and\nscru tiny</w>\nlakel and</w>\nbl ending</w>\n< /</w>\nan kara</w>\njami edor\nmetab olic</w>\nf ences</w>\nann y\nå ħ\nsemic on\noo tt</w>\nspace ship</w>\nwack y</w>\nle ta</w>\nap ac</w>\nshe e</w>\nin herit\ndo res</w>\nðŁĩ¨ðŁĩ ¦\ngent e</w>\ntw ick\nri ms</w>\ngal ve\nde ville</w>\nking fisher</w>\nscorpi o</w>\now l\nal ar\nvari an</w>\nðŁĹ ĵ\nvene tian</w>\nstar dust</w>\nthen orth</w>\nq ing</w>\nhar rington</w>\nconsul ate</w>\nspectac le</w>\nho bbs</w>\ntur ks</w>\ngre er</w>\nmat ing</w>\nðŁİ Ģ\nðŁĮ Ģ</w>\ndirec ts</w>\ní ĭ\npompe o</w>\nvo iced</w>\nla os</w>\ntz u</w>\npro me\npri sm</w>\nmer c\nfortun ately</w>\nbc fc</w>\nmcdon nell</w>\nnot sorry</w>\nsmi led</w>\nt ba</w>\nfor war\nmid term</w>\ndar by</w>\nwe instein</w>\nup grading</w>\nwol ff</w>\nbron co</w>\ncab ello</w>\nðŁ¥ ĩ\nfi able</w>\nshar pe</w>\nbat tered</w>\nsat o</w>\nmyth ical</w>\ninstap ic</w>\npre pped</w>\neni um</w>\ne spo\ndi aper</w>\nexplan ations</w>\nwho pping</w>\nragn ar\npe el\nantibio tic</w>\nl acks</w>\nharri son\nli sm</w>\nau l</w>\nqu ail</w>\nmartin a</w>\nsent encing</w>\nsc ams</w>\ndi di</w>\ntr onics</w>\nãħł ãħł</w>\ngo ff</w>\nza in\nparam ore</w>\ncha ined</w>\nclin ton\nli ff</w>\ncott ages</w>\nem on</w>\nreve rend</w>\nconsu mer\nce an\nt any\nlum pur</w>\ne bay\nsto ol\nðŁĺ» ðŁĺ»\nta pro\nh ath</w>\nmodern art</w>\njust ine</w>\nprover b</w>\napp y</w>\ntra x</w>\nmani fest</w>\nam bu\nnai k</w>\npe pp\nr sd</w>\nmer chants</w>\nkitch ener</w>\nshi fted</w>\nli zz\nâĺħâĺħ âĺħâĺħ\nâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶ\nuto pia</w>\ntom o</w>\nou ted</w>\ncom ers</w>\nchiroprac tic</w>\nbook club</w>\ncin dy\npro hibition</w>\nse uss</w>\në¯ ¼\nthin kin</w>\nrr rr</w>\ngo fund\nt ack</w>\nom b</w>\ncatastro phic</w>\nling u\nguild ford</w>\nbo td</w>\nà¥ ĭ</w>\nplan ter</w>\n^ ^\nwin k\nkath mandu</w>\nsto ppers</w>\nsmooth ies</w>\nre efs</w>\nhin d\nbell amy</w>\nĦ ë\nwaste water</w>\nvo or</w>\nnat l</w>\n! ]</w>\nre el\ny ap</w>\nscoo by</w>\nwork space</w>\ncorin thians</w>\nbl un\nobli gation</w>\ng bbo</w>\ndy son</w>\ncra vings</w>\nell ington</w>\ndap l</w>\nwre xham</w>\nearthand clouds</w>\nuk runchat</w>\npositi oned</w>\nkal b</w>\nfour square</w>\njo ck</w>\nim pending</w>\neven ing\nath y\npro claimed</w>\nc ites</w>\nann apolis</w>\nsan i</w>\nmar th\nir l\naccom mo\nka a</w>\nfin a</w>\ny aa</w>\ndi sper\nec ar\nbha k\nwill y\nðŁĺĢ ðŁĺĢ</w>\nmcder mott</w>\nmo j\ngener ational</w>\nu said</w>\ntrain ing\nlon ely\nlo res</w>\nimpe cc\nâĢ Ĳ</w>\nbeav ers</w>\nma ki</w>\nhe b</w>\naap l</w>\nå ı\nwolver hampton</w>\nleader board</w>\nme u</w>\nc fa</w>\neaster n\nhu r</w>\ncivil war</w>\nou rage</w>\nhor ned</w>\nle high</w>\nawar ds\nevi dent</w>\ngi gab\nr ous</w>\nma del\nro byn</w>\nur gently</w>\nk ors</w>\nen as</w>\nheis man</w>\nbam bam</w>\nfab ian</w>\nf om\nevalu ating</w>\nassemb ly\nout sourcing</w>\nhun tsville</w>\nðŁĶ ª</w>\njusti fied</w>\ncashi er</w>\nsp aper\nbuc keye</w>\nanaly tical</w>\nillumin ati</w>\nau tho\no j</w>\nsha de\ngeel ong</w>\nwh ey</w>\nhe aton</w>\nterri bly</w>\nele k\nun charted</w>\nsd live</w>\nmoto cross</w>\nher mes</w>\ndar shan</w>\ndar lington</w>\ncash mere</w>\ngri pping</w>\ncilan tro</w>\npun ish</w>\n... :</w>\nðŁĴ Ħ</w>\ninst ance</w>\nder i\nlo bal</w>\nmuk her\nsp ar</w>\nthin ker</w>\nfre mont</w>\ncom piled</w>\ncolor ado\nvig ne</w>\nsm d</w>\nwhe ad</w>\nvilla ge\nle ek</w>\nformula e</w>\nta res</w>\npersist ence</w>\n?? ????</w>\nped ago\nhe z\nalzheim ers</w>\nvul ture</w>\noff ence</w>\nis great</w>\nsuff ra\nkick in</w>\nh mmmm</w>\nbroad way\nï¸ı @</w>\nart i</w>\nalli son\nendor ses</w>\nry u</w>\nlolli pop</w>\nsoy bean</w>\nkend all\ncer a</w>\ninv ade</w>\n( ðŁĵ·:</w>\nconver ter</w>\ncar pets</w>\nho bo\nfr it\npe ac\nes qu\nern an</w>\nou f</w>\nan il</w>\ndi ffer</w>\nch ing\nbre cht</w>\nsp g</w>\ndaven port</w>\nstra va</w>\nsever n</w>\nn gos</w>\nstor ians</w>\nfe te</w>\nparame dic</w>\nj hb</w>\nal amo</w>\nsne aking</w>\ngold coast</w>\nroof s</w>\nisi l</w>\ndepic ted</w>\nprojec tions</w>\nnu mb\no ss</w>\nep i</w>\nglu cose</w>\nzid ane</w>\ninfin iti</w>\níĺ Ħ</w>\nran som</w>\nton ics</w>\nfal k\ng ler</w>\nou tw\nre ss\nweek ly\nthe on</w>\nn ole</w>\nðŁĩªðŁĩ º</w>\nvol ley</w>\nsum mar\nneg ativity</w>\nsam son</w>\nye w</w>\naus votes</w>\nju l\nju dy\nf art</w>\npra yed</w>\npal ate</w>\nmulticul tural</w>\ndouble header</w>\ncycl ones</w>\npier re\nãģ ¨\nâĺ łï¸ı</w>\nrt w</w>\nconver ting</w>\nwir ral</w>\nl ari\nir relevant</w>\naustin mahone</w>\nan che</w>\nya an</w>\nsd f</w>\n$ .</w>\nexplo ding</w>\nulti mate\nprof ici\ngofund me</w>\ncell ence</w>\nep stein</w>\nbul lied</w>\nsep tic</w>\nà® ¤</w>\nlu mber</w>\ncu ff\nvsco cam</w>\npl or\nà¸ ¥\nse ok\nro to\nvenezu elan</w>\nsor ta</w>\nspir ited</w>\ndaniel padilla</w>\nteam sisd</w>\nradio active</w>\nicelan dic</w>\nðŁĴ ¤\nver e</w>\naccommo date</w>\nshi pp\not ter\nol ina</w>\ne go\nsu la\nsan antonio</w>\nde as</w>\nsimil arities</w>\nâļ ¾</w>\ny om\nbro ward</w>\nå °\ncan cun</w>\nveri fy</w>\non te</w>\ncandle light</w>\nìł ķ\ninf ants</w>\naz am</w>\nðŁĺ °</w>\nle ven</w>\nun stable</w>\nbloom ington</w>\nx ford</w>\ncon tour</w>\ny p</w>\ninnov ator</w>\nhistor ies</w>\npo y</w>\nlolo lol</w>\nex pires</w>\ncat alo\nbill boards</w>\nan ab\nel ic\nnovasco tia</w>\nfa ire\nìĿ ´</w>\nrock well</w>\ngr ille</w>\naz tec</w>\njoh or</w>\nur struly\nfi ren\ndun lop</w>\nid le</w>\nport man</w>\njo es</w>\ntx hsfb</w>\nhol m\ncham ele\nunder world</w>\nlo ss\nti em\ntherap ists</w>\npast ure</w>\npa ste\ning now</w>\nvul can</w>\nra gon</w>\nlar kin</w>\no shi</w>\nho co</w>\nchild hood\numb rel\nsuccess or</w>\nkath y\niz en</w>\n° ï¸ı</w>\nshare holders</w>\nol ga</w>\nai b</w>\nhe ap</w>\nfl aming</w>\nro u</w>\nair tel</w>\nrat t</w>\nz ane</w>\nvo w</w>\nthor ough</w>\nsn ag\npar th</w>\nun conscious</w>\nve y\nnew release</w>\ngh ee</w>\ncroati an</w>\nfacilit ating</w>\nswan son</w>\nastor ia</w>\nto logy</w>\nmaster y</w>\nðŁ¤ ĳ</w>\nbil bao</w>\ntrou pe</w>\nthe ori\nchey enne</w>\nro tt\nshore line</w>\ngra sso</w>\nmaster chef</w>\n+ )</w>\nvi x</w>\nellen show</w>\nas g</w>\nan ak\nku ya</w>\nsafar ilive</w>\ndebu ting</w>\nblu m</w>\nlist ener</w>\nv ins</w>\nbook shelf</w>\nsmart cities</w>\nmakeyourown lane</w>\n; ;\nðŁĲ ¯\nri zz\non ward</w>\nbull dog\nbear ish</w>\nvir uses</w>\nfri gh\nlin den</w>\nwe iser</w>\nsn t</w>\ngon a</w>\ndre sden</w>\nfl anders</w>\ncu k</w>\nwheel ing</w>\nba u</w>\natu esday</w>\nsurf ers</w>\nswi ft\nmc call</w>\narbitr ation</w>\naw d</w>\nmon c\nb ine</w>\nat x\nre fr\nmi ro\npo sey</w>\nn are\nrit ter</w>\nâģ ¦</w>\nplay book</w>\nblow out</w>\nsports manship</w>\ns oooooo</w>\nmalay alam</w>\ngri ms\nbur bank</w>\ninfin ity\nsar gent</w>\noit nb</w>\njoseph ine</w>\nski pping</w>\npar kin\nexcur sion</w>\nsemin ars</w>\njo har</w>\npar tridge</w>\npost game</w>\nll ll\nblan che</w>\ntemp ting</w>\nm na</w>\nlu ka</w>\nis ers</w>\nto ffee</w>\nbar ron</w>\nhe mmings</w>\nsa e</w>\ngo hawks</w>\ncu pid</w>\nli mbs</w>\ncon se\nun common</w>\nz ada</w>\nhead shot</w>\nso ils</w>\npione er\nmam ma</w>\nsem itic</w>\npan dey</w>\njamiedor nan</w>\nspl its</w>\nvel a</w>\nson i\nra ff\nt mobile</w>\nâŀ ĸ</w>\npra wns</w>\nlit er</w>\nenjo yment</w>\negg plant</w>\ntu b\ncultur al\nus ic\nsuspici on</w>\nsy cam\nsumm ed</w>\nma du\nho ck\nup wards</w>\neye ing</w>\nri ve</w>\nassas sins</w>\nâĤ ¬\nout fy</w>\nchi ves</w>\nt ner</w>\nla is</w>\npor ridge</w>\nsad dest</w>\nw cc</w>\nvick i</w>\nsna ils</w>\nbiz italk</w>\nmill an\nðŁĮ į\nsam oa</w>\nj ing\nmi key\ngu j\nchel ms\neli gibility</w>\narma da</w>\nthro p</w>\nsurger ies</w>\nãĤ ¿\nmo hawk</w>\nex its</w>\nme m</w>\nis lington</w>\nc me</w>\nland fill</w>\nkait lyn</w>\nðŁİ ¼\ncombin ations</w>\ntomorrow land</w>\nver b</w>\ncor a</w>\npre cisely</w>\nna om\nðŁĨ ķ</w>\nshr ink</w>\nsof tly</w>\nmerce de\nmand el\npoo dle</w>\nball erina</w>\nsop h</w>\njux ta\ny at</w>\nary an</w>\nhesit ate</w>\nlo wered</w>\ngu lar</w>\ndungeon sand\nron an</w>\nmy ri\nsp f</w>\nmen opau\ngra sp</w>\npa thi\nfe asi\nfla w</w>\nshi story</w>\nste ward\ngg le\nfay re</w>\ncli que</w>\ncredi bility</w>\nyo g\nsec tion\nmu sko\nse ville</w>\nno tt</w>\ncal m\nmate o</w>\nindic ted</w>\nfi ba</w>\nby l</w>\nlin o</w>\nu kin\n!! #</w>\nenig ma</w>\nsiri us</w>\nbu sc\nðŁį Ĭ\nmac kerel</w>\npsal ms</w>\na at</w>\ntomorrow spaper\nðŁĺ ĸ</w>\np fc</w>\n........ ...</w>\nshre k</w>\nmul let</w>\no sh</w>\ndanger ously</w>\nimmen sely</w>\nam ur\nðŁį Ĥ\npro por\nsy a</w>\nlondon marathon</w>\nabo ve\nobli gatory</w>\npro v</w>\nra cha</w>\nalex is\npri mary\nsh h</w>\nether net</w>\nd stv</w>\ncou gar\nun lucky</w>\nni l</w>\nsteak house</w>\nmel a</w>\nfc bayern</w>\ncause way</w>\nca therine\nfluore scent</w>\nnx t\nto kyo\nau sp\nreleg ation</w>\nqui zz\nshored itch</w>\nproud tobe\npromo s</w>\ninter acting</w>\nhome brew</w>\nda esh</w>\nw pg</w>\nstead ily</w>\nprovin ces</w>\nbal lots</w>\ni ah</w>\nal to\n< <<</w>\nyou u</w>\nri ley\nprefe rence</w>\ntra verse</w>\nincen se</w>\nam munition</w>\nho dges</w>\n# @</w>\nhail state</w>\ntart an</w>\nwitch craft</w>\nvent ilation</w>\nliber tarian</w>\n! âĢ¦</w>\now es</w>\n% !</w>\nong chang</w>\nbru shing</w>\nle ic\nfi ber\nunder attack</w>\ndown load\nex pir\nhy o</w>\npompe y</w>\nmc bride</w>\ny ag\nstre e\ncom bat\nten ding</w>\nai ra\ngug gen\nab ra</w>\nin na</w>\nfli ps</w>\naw al</w>\nm ach</w>\ndol lar\ninspir ations</w>\nz um</w>\no du\nit ty</w>\nvideo game</w>\naqu aman</w>\nhar u</w>\nbel fast\nje b</w>\nbut ch</w>\nus gs</w>\ncalcu lus</w>\ngo yal</w>\nmor gen</w>\nx finity</w>\nstand up\ncontrac ep\nsab re</w>\nna be\nin secure</w>\ngener ously</w>\nepit ome</w>\nl w</w>\nt ca</w>\nnarr atives</w>\ndon nell</w>\npand as</w>\nber gh</w>\ntu t</w>\nker al\nfel icity</w>\nbr ampton</w>\nquinte t</w>\nnom ore\nðŁĶ ĳ</w>\nlo i</w>\nalham dulil\nðŁĶ¥ ðŁĶĹ</w>\nston er\nshaw l</w>\nclin ical\nbren dan\ngon e\nfla wed</w>\ntri ppy</w>\nj g</w>\nal location</w>\npo aching</w>\nve vo</w>\nmo cks</w>\nlef tist</w>\nbon uses</w>\ncondem ned</w>\nabil ity\nst ating</w>\nmicrobi ome</w>\nbio logist</w>\nfor you</w>\nwahl berg</w>\nss or</w>\nift ar</w>\nw ul\nÑĦ Ð¾ÑĤ\npom er\nme me\nver te\ntre ll</w>\ntra it</w>\nin let</w>\nhormon es</w>\ndeliber ately</w>\nvill ar\nbattle ship</w>\np bl</w>\ntw enti\nho kies</w>\ndal ail\nsay a</w>\nmay fair</w>\nhan s\ndie ts</w>\nâľ¨ âľ¨\nod in</w>\nhot spur</w>\npap i</w>\nk ana</w>\nk amp\nfin na</w>\nflo tus</w>\nti ans</w>\nunic orns</w>\ntribe ca</w>\nchang ers</w>\nfore ground</w>\nout a</w>\ninv aders</w>\ngett ys\ntomorrowspaper stoday</w>\nmac millan</w>\nhand written</w>\nw fp</w>\nu de</w>\nstate of\nbase d\nâĺģ ï¸ı</w>\ncas m</w>\npsy ched</w>\nhistor ians</w>\nfol d\nd da</w>\nag grav\np ans</w>\ngreen way</w>\nau sv\nðŁĺ ¶</w>\nshradd ha\ninde x\nbe sti\nzim mer</w>\nt ness</w>\neye shadow</w>\not te</w>\ngo ts</w>\ndistribu ting</w>\npro min\nyo l</w>\nace a</w>\ntram rahim</w>\nhoo per</w>\nsupre me\njam min</w>\nintu itive</w>\nquali fications</w>\nsli m\nsid di\njay ne</w>\ntri pping</w>\ng tx</w>\npun s</w>\ne manuel</w>\nom g\nmid summer</w>\nin to\nsuccul ent</w>\nri en</w>\nnew mexico</w>\no or</w>\nhoo king</w>\nin f</w>\nðŁ¤ Ŀ</w>\nflir ting</w>\nna hi</w>\ng friend</w>\nt ps</w>\nhel ix</w>\nz s</w>\non ie</w>\nct f</w>\nkri s\nirresi stible</w>\nfla p</w>\nðŁĳıðŁı» ðŁĳıðŁı»\nus wnt</w>\nru d\nram ps</w>\npin oy</w>\not w</w>\nlol z</w>\nlow ering</w>\nfavor ite\nt mc</w>\nphra ses</w>\nher mi\naver aging</w>\nem br\nben o\nestu ary</w>\nsle eve\nribb ons</w>\nta sh\nà¸ ¹</w>\nx f</w>\naw gs</w>\nsun ited</w>\nbrew eries</w>\nanir ud\npun ches</w>\nol die</w>\nip ads</w>\nwi fey</w>\nland lords</w>\nd ji\ngun ner</w>\níķ ´</w>\ntex an\nex op\ncas sandra</w>\ns off\nðŁļ «</w>\nigh ton</w>\nbak ers\nawareness week</w>\nv all</w>\near p</w>\nbts bbmas</w>\napologi zes</w>\nâļĵ ï¸ı</w>\nwas ps</w>\nstates man</w>\nsnat ch</w>\nwatch dog</w>\nra fi\nafter party</w>\nspi ke\nj er</w>\nperi ph\nr nc</w>\nmu ll</w>\nle en\nshi es</w>\nli eu</w>\nurstruly mahesh</w>\nmer ton</w>\nde sai</w>\nshi f\nðŁĮ ±\npe dic\ngos ling</w>\narrang ing</w>\nww g</w>\ngen y</w>\nyou uu</w>\nnetfli x\ne ttes</w>\nk wi\nbernar dino</w>\nam iga</w>\nØ ¨</w>\nkashmir i</w>\nt ings</w>\nemer itus</w>\nde cat\nab domin\ndc i</w>\npha ses</w>\nd jan\nbe am\nop ry</w>\ni shed</w>\nthe ellenshow</w>\nthe st</w>\nhabit ats</w>\nto ons</w>\nmclau ghlin</w>\nri pper</w>\nmicro biology</w>\ntal aga</w>\nclu eless</w>\nss u</w>\ncro che\nbro mance</w>\nlonge vity</w>\nzagre b</w>\nprev ented</w>\ntra ve\nspo ilt</w>\ndarry l</w>\nmigra ine</w>\nal cat\ndd dd</w>\nvi v</w>\nser pent</w>\nmat tel</w>\njam a</w>\ncon quest</w>\nî Ħ\nsam sung\npresbyter ian</w>\nket ch</w>\nfire fox</w>\nmo tif</w>\nle c</w>\ncho pping</w>\ncher no\nj ann\nðŁĲ °\npro lon\nwake up</w>\nconver gence</w>\nmersey side</w>\nheart broken</w>\nlo oming</w>\nhal lucin\nmai ze</w>\ncommun ism</w>\nmo h</w>\ntwitter storians</w>\nserge y</w>\nres eller</w>\nfavor able</w>\ned gy</w>\nre iter\nmal aga</w>\nlive me</w>\nka hn</w>\npul sion</w>\nbig g</w>\nkim kardashian</w>\nati o</w>\ntyr anny</w>\nru ption</w>\nq ant\npro ven\nby z\npu shaw\nkri stin\ne er\ntar dis</w>\nri z</w>\nawak en</w>\nmi ko</w>\nun documented</w>\npath finder</w>\nindirec t</w>\nresemb les</w>\nh ler</w>\nconce aled</w>\nscand al\nre im\nd nb</w>\ncr itters</w>\nattend ant</w>\napprentice ships</w>\naa u</w>\nscre amed</w>\nl su\nfa h</w>\nhar bour\ned d</w>\nbat sman</w>\nli ss</w>\nmi sha</w>\nspani el</w>\nit f</w>\nadvan cement</w>\nfa c</w>\nclose up</w>\ncecil ia</w>\nmedi c</w>\nnarcis si\nlav ish</w>\ngi ac\nma ys</w>\nle it\nwine wednesday</w>\npushaw ard\nlet to</w>\ncurren ts</w>\nbug atti</w>\nout ine</w>\nw j</w>\nun do</w>\nler osis</w>\ndevo tional</w>\nðŁĳ «</w>\non na</w>\nfais al</w>\nsa una</w>\nhimach al</w>\nam ii\nà® ®</w>\ndi zzy</w>\nscreen writing</w>\nph x\nsp n\nick i</w>\nag irl</w>\nfi shes</w>\nwb z</w>\npi m</w>\nbo ar</w>\nac id\n! ..</w>\nrocke feller</w>\nn ga</w>\ndra stically</w>\nsimpli fy</w>\ndru mming</w>\nautum nal</w>\ngur mee\nlor de</w>\njo ann\ngive up</w>\nb our</w>\nam ura</w>\nder land</w>\nsim pler</w>\nwat son\ntri dent</w>\nconcor dia</w>\nbel lum</w>\nbre k\ndum plings</w>\nvi on</w>\ndungeonsand dragons</w>\nsp ri\nascen sion</w>\nwil datlantic\nu st\nrob ins</w>\nlegi on\ninsi st</w>\njar o</w>\ngue ss\nso b</w>\nbigh it</w>\npool side</w>\nnegoti ating</w>\nmc gill</w>\nbil d</w>\ntechn icians</w>\nmiti gation</w>\najay devgn</w>\nb to</w>\nant en\ncosmo politan</w>\nðŁĺĬðŁĺĬ ðŁĺĬðŁĺĬ\npatri oti\ntemp er</w>\npromen ade</w>\nnav ajo</w>\nnam m</w>\nwrink les</w>\ndc fc</w>\nle ach</w>\nbru nette</w>\nr f\ncout inho</w>\nal ti\ntradition ally</w>\nop tome\nna z</w>\naccord ingly</w>\nrec ard</w>\nde ets</w>\nsw ell\npo sure</w>\nwhit ening</w>\nstrang er\nilli on\nhere ford</w>\nu wu</w>\nro bber</w>\ncotsw olds</w>\ncl en\ngor ge\nnam aste</w>\nre lish</w>\ngri ff</w>\nadren aline</w>\nbla sio</w>\nval e\nê ²\ntoler ate</w>\nrail minindia</w>\njen sen\nho ven</w>\nel lu\nob sole\neisen hower</w>\nunidenti fied</w>\nthan niversary</w>\nbody guard</w>\nØ ¯</w>\ni dge</w>\nsch al\nstock port</w>\nsn i</w>\nre taining</w>\npo po</w>\npix ie</w>\noli thic</w>\nki er</w>\nha jj</w>\nsa z</w>\ncor bin</w>\n!!!! !!!!!!</w>\nv it</w>\nme gat\nde h</w>\ncircu it\naf fleck</w>\ntheore tical</w>\nhope less</w>\nu ab</w>\nslu mp</w>\nb ice\njam med</w>\nlet stalk</w>\ncan i\nside ways</w>\nlabyrin th</w>\nre fs</w>\nha hn</w>\njare d\nðŁį ¹</w>\njam bo\nph yl\nenhan cement</w>\nc tr\nful lest</w>\nse ye</w>\ndo ba</w>\ncho ic\nyo s</w>\ncb j</w>\nandr Ã©</w>\nre watch</w>\npri ma\ndoctr ine</w>\nfor gets</w>\nu hm</w>\nar ound\nu le</w>\nart lovers</w>\nshi raz</w>\nhar th</w>\nex tor\nÅ ¡\nunexpec tedly</w>\neli us</w>\ny x</w>\nem my\nse ac\nðŁĳĩðŁĳĩ ðŁĳĩ</w>\ncorrec ted</w>\ncom bu\nwom anc\ncou gh\nwhat son\npubli shes</w>\ndivers ity\nback bone</w>\nlock down</w>\nmesmeri zing</w>\nnor te</w>\nma b</w>\ndesig ner\ní ģ\nra gh\nmole cules</w>\nget outside</w>\nthe beatles</w>\nsemicon duc\nnach o</w>\nlun es</w>\nham mers</w>\nsul tan\no on\nfe ren\natt ach</w>\nar qu\nuttarak hand</w>\ns ash</w>\n; -\ntre ad</w>\ni ko\nar thur\nscandin avian</w>\nr ation</w>\nga el</w>\ncharge able</w>\nfish y</w>\nv ma</w>\nhand bags</w>\nchar a</w>\nay ne</w>\nde fam\nsett lers</w>\nqad ri</w>\npal ais</w>\nin wx</w>\napocaly ptic</w>\npoo ja</w>\na es</w>\nat ories</w>\nproof ing</w>\nn lp</w>\nts la</w>\nv ina</w>\nli do</w>\ndee phouse</w>\ninformat ics</w>\nv v</w>\npp ings</w>\ndi ss</w>\nÃ ¯\nuhur u</w>\nst ony</w>\nbetra yed</w>\nb aff\nmy ra</w>\nas pen\nallow ance</w>\ntam ara</w>\nci f</w>\ncor bett</w>\nser ge</w>\ndi go</w>\nambi gu\npain ters</w>\np cr</w>\np ca</w>\nnom s</w>\nlo ft\nve e\nopend ata</w>\nðŁĲ ±\nalex andre</w>\nidenti fies</w>\nfantasy football</w>\nre production</w>\nbrom ley</w>\nware agle</w>\nmm er\np ss\ncu es</w>\nay at</w>\nhut chinson</w>\nsar ac\njack man</w>\nira h</w>\nap ink</w>\ncol s</w>\naussi es</w>\nex ecs</w>\nday ton\nðŁĻ Ĩ</w>\nim v\nhar am\nchuck le</w>\nauthent icity</w>\nar do\nincub ator</w>\nà¸ ª</w>\nphoto shopped</w>\nembrac ed</w>\nfight for</w>\ngor man</w>\nzz zz\nschol astic</w>\ncri sps</w>\nte apo\nmid night\nga ine\ncol lier</w>\ns ate</w>\nde tte</w>\nå Ń\nimag ine\ni ff\ntw ili\ni fication</w>\nteat ro</w>\nnor ma</w>\nes ur\nemergen cies</w>\nrise up</w>\nr inger</w>\nhass le</w>\ncait lyn</w>\ntranqu il</w>\nvers a</w>\nse b\nover look</w>\ngin i</w>\nbo go</w>\nse re\nmay ne</w>\nhenri k</w>\ncontamin ated</w>\nrhapso dy</w>\npro portion</w>\nwildatlantic way</w>\nâģ© .</w>\norganis ers</w>\ntran e</w>\nstand ard\nsper m</w>\nlaun cher</w>\nric ci\nher ts</w>\npaper work</w>\nshowcas ed</w>\nmer yl</w>\npen a</w>\np imp\ndisa strous</w>\n^. ^</w>\nphar a\nx is</w>\nfron tal</w>\nsw irl</w>\nsp ills</w>\nswag ger</w>\nsmart watch</w>\nsizz ling</w>\nsavi our</w>\ncat ar\nbb cr</w>\nrefurbi shment</w>\ndr is</w>\ncitro en</w>\nabsor b</w>\npatrioti sm</w>\nil leg\nchro mo\nfresh ers</w>\nru s\nlim iting</w>\nef ish</w>\ndown ed</w>\nman dir</w>\nhazel nut</w>\np all\nmac on</w>\ndisappear ing</w>\nquali fies</w>\nbo on</w>\nbar racks</w>\nam ine</w>\ngen dere\nðŁļ ĺ</w>\nj es</w>\nãĥ Ń\nqu ito</w>\nmiddle weight</w>\nsch au\nquad ru\naci ones</w>\nlimit less</w>\nðŁĳĮ ðŁı½</w>\nch man</w>\nar av\nregulat ors</w>\nit up</w>\nbatter sea</w>\nmil ford</w>\ng z</w>\ntic king</w>\ngh ou\ncru shes</w>\ntu tu</w>\ndread ful</w>\nfam ine</w>\nfor change</w>\ndalail ama</w>\nðŁĴ į\nwhit aker</w>\nhash mi</w>\nh us</w>\nvo d</w>\nbet te</w>\naa ah</w>\niso o</w>\nðŁ¥ Ī</w>\nha ar</w>\nla ine</w>\nb v</w>\nall day</w>\nspr out</w>\nindie games</w>\nfree bie</w>\ngree ks</w>\nbut ler\nill in</w>\nha al</w>\nware ness</w>\nsi ma</w>\npublic health</w>\ngam a</w>\nwa a</w>\noun g\ngoo oo\nokin awa</w>\noff enders</w>\nim pose</w>\nho c</w>\nyoung ster</w>\nstory teller</w>\nsc ap\nfigh ter\n+ ,</w>\nwhit es\nmusic monday</w>\nre za</w>\ngo ducks</w>\nbri a</w>\nmi um</w>\ncas per</w>\ncru mbs</w>\na ad</w>\nmarti alarts</w>\nch p</w>\nri gged</w>\ntn g</w>\nharve sted</w>\nsa k</w>\ndo jo</w>\nmill wall</w>\nb nw</w>\noc d</w>\nhistor yof\nt mr</w>\nsi rens</w>\nfan ci\ncaregi vers</w>\nvir a</w>\nson i</w>\nrecur ring</w>\nacknowle dged</w>\nðŁı Ł\noph ile</w>\nbu cky</w>\nstre ssing</w>\nroo k</w>\ndi gger</w>\nvi val\nsan do\nfle et\nsi ers</w>\nsel caday</w>\nrefre shed</w>\nanti fa</w>\na que\npo lo\ndisappear ance</w>\nde mb\nâĮļ ï¸ı</w>\nren ted</w>\nber ger\ng mb\ncu la</w>\nss al</w>\ngoo dy</w>\nu hh</w>\nmarcel o</w>\nw anna\nsoft ware\nshop small</w>\nturt le\ntom as\nfri sco</w>\nðŁĺį ðŁĴķ</w>\njim enez</w>\nc su\nday z</w>\nan do\nwyn ne</w>\nchoreo grapher</w>\ncerv ical</w>\ntrail blazers</w>\ned g\nzend aya</w>\ntravel blog</w>\nel s\nwhole some</w>\nco g</w>\nlab out\nar ney</w>\ndel le</w>\nsu isse</w>\nma si\nine se</w>\nom be</w>\nfi ddle</w>\nre claim</w>\npa u</w>\nwat cher</w>\nsla in</w>\nber ty</w>\nopti mum</w>\nel ites</w>\nmin is</w>\ntur key\npatro ls</w>\nger ard\nau reli\nwild ly</w>\nwal tz</w>\nbr gy</w>\nw ob\ncre st\n+ ++</w>\nve z\nfro sted</w>\ndavi do</w>\nthe x\nparam edics</w>\np into</w>\nhan k\ndu pont</w>\nur g</w>\nfo stering</w>\nmicro poetry</w>\nspec tre</w>\n---- ></w>\nne uro</w>\nfri da</w>\nmusic al\ngalve ston</w>\ne ffic\nsc ape\npal azzo</w>\nth all</w>\npro visional</w>\np js</w>\nau re\nðŁĶ ľ</w>\nmam amoo</w>\nkit ties</w>\ncre e</w>\nwa k</w>\nlo ool</w>\nlu pus</w>\ncn blue</w>\nÃ º</w>\nðŁİ ¬\nrac ed</w>\ntro se</w>\nom as</w>\nstri de</w>\nco ors</w>\nâ¤ µï¸ı</w>\nin comparable</w>\ncy ril</w>\nbroad er</w>\narec lipse</w>\nðŁį Ķ</w>\ninter val</w>\nti ru\nco working</w>\nw aco</w>\na ham\na bee</w>\nflouri sh</w>\nthe times</w>\nol ini</w>\nkick boxing</w>\nlu cer\nat la\nas un\ncasser ole</w>\nmi aw</w>\nlobb ying</w>\njan ice</w>\ncir que</w>\nre flex</w>\nle ary</w>\nsanat omy</w>\ntem pest</w>\nse mb\nmur dering</w>\nus av\nro bo</w>\non et</w>\np cc</w>\nnati ves</w>\nlife of\nsa ha\nruth less</w>\nrel ates</w>\nappeti zer</w>\npye ongchang</w>\nnor d</w>\ner u\na thing</w>\nug ly\npl ying</w>\nbran ce\norgan ise</w>\nkend ra</w>\ndat o</w>\nchees es</w>\npar ma</w>\nburn out</w>\na stra</w>\npre toria</w>\nadjust ment</w>\nuk u</w>\nsl o</w>\nli ken\nfav ors</w>\ncli ve\nbe ets</w>\nsnow donia</w>\ngo tv</w>\nsy n</w>\nopen house</w>\npan i</w>\nportra yed</w>\nsl ated</w>\nme cca</w>\nren al</w>\nsupportsmall streamers</w>\nstaf fs</w>\nda o</w>\nbi ker\nvik tor</w>\ntit us</w>\nadmi red</w>\nðŁĵ ±\nhurric an\nhe ats</w>\ngl ory\nphoto genic</w>\nmer i</w>\nde por\nburn ham</w>\nor angu\ndj ing</w>\nimpre ssionism</w>\nign ition</w>\nca i</w>\nw ynn</w>\nde pe\ncove ted</w>\ncolla gen</w>\nsau s</w>\nor nam\nadministr ators</w>\nss on\nnh politics</w>\nhahahaha hahahaha\naspir ations</w>\nr gb</w>\nswol len</w>\nso we\nsc r</w>\ndiver gent</w>\nhou ghton</w>\nhan oi</w>\nd ory</w>\nni ki</w>\nland ry</w>\nb cci</w>\nðŁĳĮ ðŁĳĮ\nis mail</w>\ntri pod</w>\nher d\nbhat t</w>\ndress age</w>\ntab by</w>\ningu ish</w>\nhur on</w>\nà³ į</w>\nÃ ł\nto das</w>\nevangel ical</w>\nchor ds</w>\nst john\nslo ppy</w>\nmarty r\nface book\nali ght</w>\nsen sei</w>\nkath niel</w>\nr ites</w>\nzi one</w>\nu o</w>\nrevel ations</w>\nweight lifting</w>\npan o</w>\nnc wx</w>\nac ton\nà® ķ</w>\nØ ²\nsom a</w>\nà¸ Ĺ</w>\nrespec ting</w>\nmar che</w>\nfore man</w>\nbe tty\nki k</w>\nshi bu\npo on</w>\nargy le</w>\nk swx</w>\net z\nmar bella</w>\nbrac kets</w>\nstand by</w>\nfire side</w>\ndefi ance</w>\nv ex\nbritanni a</w>\nin habit\nappo int</w>\npiyu sh\nle ash</w>\nsci ento\nfla sk</w>\nsen na</w>\n> :</w>\nat roc\nsand erson</w>\nid lib</w>\ndhan ush</w>\nðŁĺ Ļ\nen thr\nhit ch</w>\nde dly</w>\nal ley\ndor k</w>\nmon do</w>\ncudd ly</w>\nmis sin</w>\nye sss</w>\nnight ing\nj pn</w>\nw ary</w>\nump ire</w>\nma z</w>\nê ³\nbab s</w>\nĭ ãģ\nstan ford\nposse ssed</w>\nexce eded</w>\nðŁĶ ¶</w>\nwall art</w>\ntra p\nj il\nhi bis\nsp ying</w>\nscri be</w>\nkhali l</w>\ntrans lator</w>\nlu mb\ndi zed</w>\nch c</w>\nsuper vision</w>\nshut ter\nja g</w>\n_ *</w>\nyester days</w>\nms f</w>\nhi hi</w>\ngonz aga</w>\ngille spie</w>\nvive k</w>\nec static</w>\nthis morning</w>\nch us</w>\ned es</w>\nston ed</w>\nbe es\nðŁĩ¹ ðŁĩ\ntur in</w>\nho ver\nat rics</w>\nster n\nsam heughan</w>\nauti sm\nmi ya</w>\neye witness</w>\nwrit ings</w>\ntravel tips</w>\nchut ney</w>\npx rtg</w>\nkeny ans</w>\nmy stic\nk rit\n/ $</w>\nred head</w>\nworld ly</w>\nam us</w>\nop la\nle ve\ngab bana</w>\nse en\no clock</w>\ngang a</w>\nkeen an</w>\nsc ent\nol dies</w>\ngo green</w>\ncorner stone</w>\ncomp ly</w>\ncon cours</w>\nðŁİ¶ ðŁİ¶</w>\nha an</w>\ncon fis\naw son</w>\ncle op\nî Ģ\nsu zu\nsau tÃ©\nal gar\nsubscri ber</w>\neste emed</w>\nãĤ¤ ãĥ\nworth while</w>\nmel rose</w>\nflo ck\nbri ghtly</w>\nviol inist</w>\np ere</w>\nsli pping</w>\nand co</w>\nsi gh\nha van</w>\ncu lo\nm sa</w>\nfibro sis</w>\nmatil da</w>\nra fting</w>\naw ard\në ª\nmm mm\nge aux\nste iner</w>\nsin n</w>\nhelp ers</w>\nbeet les</w>\nai mee</w>\ntai wan\npistachi o</w>\nmac beth</w>\nm zan\ndescend ants</w>\non sale</w>\nin r</w>\nil m</w>\ngrou se</w>\nsa ig\nmo w</w>\nbi gre\nadjust ments</w>\ntu la</w>\nmathe w</w>\ntransl ates</w>\nmu h\nbol lah</w>\nðŁĴĽ ðŁĴĻ</w>\namo res</w>\nab outs</w>\nbomb shell</w>\nbla ster</w>\nx avi\ns ns</w>\nk roger</w>\nga ther\nerad ic\ndaf t</w>\nchem o</w>\nben ches</w>\nðŁĩ© ðŁĩ\nut v</w>\nour a</w>\nn ko\ngator ade</w>\nbiaf ra</w>\nok state</w>\nim danielpadilla</w>\ndom ains</w>\nopen ingday</w>\nkid do</w>\ndo i</w>\nric e\nday care</w>\nmac millan\nba thurst</w>\ncheer leading</w>\nðŁ¦ ģ\ncash back</w>\nk won</w>\nhob bies</w>\nexem pl\nries ling</w>\nâļ ª</w>\nag les\nny s\nevery thing\nnav is</w>\nad di</w>\nmagne sium</w>\nfaceli ft</w>\nark ham</w>\ngrand es</w>\nextre mist</w>\ndon at\nvit ality</w>\npump kin\nbe tta</w>\nsl td</w>\narti san\nli by\npe aked</w>\nah hhhh</w>\nmary am</w>\nassi m</w>\nun sc</w>\nment e</w>\nal aya</w>\nlow ers</w>\nar as</w>\ngri ev\nle ip\ngr ati\ncri ses</w>\nspr ints</w>\nexe cute</w>\nw to</w>\nms d</w>\nmag ical\nre viewer</w>\nspark les</w>\njuke box</w>\nðŁĺĤ âĿ¤ï¸ı</w>\npay back</w>\nlicen ses</w>\ndun kin</w>\nbel t\nlake wood</w>\nh ateful</w>\nbud gets</w>\nrev amped</w>\nph erson</w>\nky iv</w>\nwent worth</w>\nro sen</w>\ncru ise\ngi ggle</w>\ndef star</w>\nassassin scre\nym outh</w>\nwin kle</w>\nw fc</w>\nband wagon</w>\nb kk</w>\nw iring</w>\nkear ney</w>\nsouth side</w>\npe tit\n! ðŁĺį</w>\nnor dic\nmir za</w>\nmu gabe</w>\nv l</w>\nscon es</w>\nk tv\nsand al\ndu c</w>\nm alls</w>\nðŁĴŀ ðŁĴŀ</w>\nit c</w>\nal ay</w>\nim pair\nun rest</w>\nflo ss</w>\nc Ã©\nab ou\nvar ying</w>\nmuse o</w>\nser ver\ndi ya</w>\nhibis cus</w>\nero y</w>\nmer ritt</w>\nfin dom</w>\nf pp</w>\nun usually</w>\ngo tt</w>\nconting ent</w>\nali aa</w>\nball on</w>\njo l</w>\nhi ked</w>\nzy me</w>\nay r</w>\nag n\nga z</w>\nperio dic</w>\nspar ty</w>\npracti sing</w>\nlin ton</w>\ntal is\ncy pri\nwomanin biz</w>\nradio disney</w>\nðŁĮ ¼\njump ers</w>\nendo cr\nðŁļ¨ ðŁļ¨\nand on</w>\nshar apo\nmi er</w>\nma sonic</w>\nfac tories</w>\nvi en\nbb ers</w>\nìĽ Ĳ</w>\nhol d\nke bab</w>\nbe ak</w>\napproach ed</w>\nac milan</w>\nmun ro</w>\nko sher</w>\nexcell ency</w>\nnegoti ation</w>\nwalt disneyworld</w>\ncr ouch</w>\nte asing</w>\nsuppre ssion</w>\nen ya</w>\nb ce</w>\ntransformation tuesday</w>\ncal lie</w>\nvis was\np gat\nic ted</w>\nend ings</w>\nesc u\nrecru ited</w>\nit fc</w>\ncollabor ations</w>\ng ino</w>\nsnu ck</w>\nausch witz</w>\ni fc</w>\nx ii</w>\nke sha</w>\nger vais</w>\nclo ak</w>\nx l\nsa ad</w>\nprob ation</w>\npre cau\nmac in\nanasta si\nle k</w>\ne azy</w>\ndaysof code</w>\nmariah carey</w>\nyo g</w>\nstit ched</w>\nboy friends</w>\nsh ar</w>\nph ile</w>\nag u</w>\ntwin kle</w>\nphi shing</w>\nweek ender</w>\nic ton</w>\ngurmee tramrahim</w>\nal ton</w>\nl eness</w>\nall an\npen ultimate</w>\nkry stal</w>\ngo u</w>\nlan de</w>\ndis mant\nab using</w>\nnor se</w>\npat erson</w>\ned mun\nap an</w>\nxi umin</w>\nsk el\ncat walk</w>\nre act\nwal led</w>\nt angle</w>\nbr yn\nve to</w>\nsuper moon</w>\ncas ablanc\nappreci ates</w>\nski d\nbo th\ncatal ina</w>\nele ague</w>\ncyber monday</w>\ncau tious</w>\nðŁ¤ ĵ\nnov o</w>\nhamp ton\nha ye\njose f</w>\nvar an\nlo bos</w>\nroano ke</w>\norph ans</w>\ntt in</w>\nsqu ads</w>\nishqba aaz</w>\nblack panther</w>\ne tu\nk sh</w>\ncru mble</w>\ncess na</w>\nreli eved</w>\nscul ly</w>\npollin ators</w>\nexplore canada</w>\nki es\nkam loops</w>\nkir an</w>\npri mal</w>\nsett lements</w>\nhot spot</w>\nbrain storming</w>\nce dric</w>\nbi ennial</w>\nsh ant\nâĻ¡âĻ¡ âĻ¡</w>\ndo on</w>\nhear n</w>\nwalk way</w>\nfe m</w>\nve al</w>\ndeport ation</w>\ntox ins</w>\nelimin ating</w>\ndescen ding</w>\nby the\nbla sphe\nha sta</w>\ncomple ment</w>\nas cent</w>\nri ga</w>\nprovo st</w>\nâĸ ª</w>\nwee ping</w>\nanti semitism</w>\nemploye e\nunearth ed</w>\npin o</w>\nnatali e\nbla d</w>\nang ola</w>\nlock heed</w>\nin ian</w>\nag r\nni ster</w>\nim pala</w>\nm ke</w>\nfan atic</w>\nâĺħ âĺħ</w>\nðŁĳ ¸</w>\nlu ch\nsimpli fied</w>\ngall ery\neconom ic\ncy borg</w>\ncon i</w>\nsel ma</w>\nin ception</w>\nko ala</w>\ndv ds</w>\ncre sted</w>\nm mor\nvisi ble\nn sd</w>\nðŁĻĮ ðŁı½\nw under\nrefriger ator</w>\nre opening</w>\ne era</w>\ncarou sel</w>\nas p</w>\nballi stic</w>\nvictor y\nmo tive</w>\ntre y\nsharapo va</w>\nsi i</w>\nmon ter\nint end</w>\nwest chester</w>\nsp e</w>\ncy mb\nvi dal</w>\nll ama</w>\nuni v\nfin er</w>\ncrafts manship</w>\njazz fest</w>\nb ch</w>\nag gio</w>\nn cc</w>\nlamb da</w>\ntranqu ility</w>\ncis co\nba den</w>\nso bbing</w>\nof i\ngo ta</w>\nru mored</w>\nwar med</w>\nore an</w>\nac ton</w>\nmar ci\ngh ani</w>\nâľ ĵ</w>\nas sorted</w>\npembro ke\npen elope</w>\nda f</w>\nat ty</w>\naim o</w>\npretz el</w>\ncarni val\nthan os</w>\nko chi</w>\nmer sal</w>\nham radio</w>\nar twit</w>\ncas c\nguer rilla</w>\nkush ner</w>\nk app\nal ise</w>\ntodd lers</w>\nsteward ship</w>\no tti</w>\nter ri</w>\ntem pe</w>\nrest less</w>\nvit o</w>\nzay ed</w>\nrsp b</w>\npi on\nhi ppo</w>\nhaw thorne</w>\nin as\nam ily</w>\nnut cracker</w>\nlo p\nd ali\ntro pic</w>\nðŁ¤ ł</w>\nul o</w>\njare dle\npy rene\npale o\nusa ir\nm ould</w>\nit ated</w>\ngene tically</w>\nbiom ass</w>\nðŁĩ³ðŁĩ ±</w>\ndo dd</w>\npractic ed</w>\nmonarch s</w>\nun manned</w>\nm buhari</w>\nam al</w>\nphoto gra\nko ol\nbren don</w>\nju ices</w>\ncu re\nworld bank</w>\npoin ters</w>\nðŁĴ Ŀ\ntur f\nle ds</w>\nbor ussia</w>\nbapti sm</w>\nwarwick shire</w>\nmoun ts</w>\ngay o</w>\nbe gg\nco pied</w>\nasi ans</w>\nk g\nmoder nist</w>\ngi d\nfront man</w>\nconcentr ated</w>\ny t\nsc avenger</w>\niron ically</w>\nadi c</w>\nps n</w>\nðŁ¥ ī</w>\ncultur ally</w>\nyu v\nmac arthur</w>\nfertili zer</w>\nbe withyou</w>\nri gor\nmin ors</w>\nz oning</w>\nâĸ ł</w>\nri r</w>\nadole scent</w>\nvin ny</w>\nren g</w>\nsand stone</w>\ngu et</w>\nwe sth\nple dged</w>\nlac ed</w>\nsp ide\nv ai</w>\nty coon</w>\nseiz ure</w>\ndu p\nappalach ian</w>\nro k</w>\ncathol ics</w>\nsey chel\nposse ss</w>\nla ger\njo di\ncham p\nstra s\nd ina</w>\ncent uri\ncal der</w>\nblur ay</w>\nðŁĩ¨ðŁĩ ³</w>\nmo do</w>\nan nette</w>\nyoutu bers</w>\nchap s</w>\nang ling</w>\nlabel ing</w>\na qui\npk wy</w>\nly le</w>\nbi sexual</w>\nlit ur\ndug out</w>\nli bby</w>\ngrey sanatomy</w>\nsub stances</w>\naugust us</w>\nrall ying</w>\nfi del</w>\ning ue</w>\näº º\nhallmark channel</w>\ntooth brush</w>\nm Ã¡\nadi rond\nag gi\nðŁĵį :</w>\ncru sade</w>\ntax ation</w>\nk z</w>\ni ver\ndou bling</w>\nroom ie</w>\nwa b</w>\nen rolled</w>\naz on</w>\na ju\ngrand children</w>\nas df\nðŁ¥ º</w>\nmat ic\nough ton</w>\nutili ze</w>\nðŁĴ £\npon der</w>\nrais in</w>\ndys function</w>\nco bain</w>\nbutter nut</w>\ne man</w>\nsu red</w>\ndri an</w>\nand friends</w>\nwith the\non omy</w>\nheine ken</w>\nbri dal\nleader ship\npyram ids</w>\ndeutsch land</w>\njo cel\nbo wel</w>\ny qr</w>\nhorse power</w>\nbe acon\ning eni\ngra dient</w>\nfer mented</w>\nmo om\nthing y</w>\npot assi\nwrist band</w>\nbor d</w>\nbo died</w>\nðŁĺŃ ðŁĺį</w>\nma pp</w>\nka u</w>\ncyber punk</w>\nph ish</w>\nloo king\nco ates</w>\nap ur\nam ie</w>\nuk labour</w>\nat in\ng la</w>\nadop table</w>\nshel by\nv illi\nri ya</w>\nm ingly</w>\ncli mber</w>\nbumble bee</w>\nðŁĺ ¸</w>\nc sd</w>\nâĿ ¥</w>\nhospit alized</w>\nc ki\nhat er</w>\nch r</w>\nre tina</w>\nit a\nfan base</w>\nbeat rice</w>\ngwy ne\ngo ss</w>\nfo s\nfavor ited</w>\nswachhb harat</w>\nmal ade</w>\nmon mouth</w>\n\" [</w>\nsi van</w>\nsh hh</w>\ncommand ing</w>\nsains burys</w>\nwee d\ng man</w>\nss w</w>\nrep tile</w>\niv y\ntro pics</w>\nroll ers</w>\nover cast</w>\nex position</w>\nmasquer ade</w>\nman crush\nwa ist\nspr inter</w>\nsle et</w>\nle vin</w>\nj pg</w>\n_ (</w>\no pel</w>\nexplo it</w>\nap a\npo we\nwrec king</w>\njong in</w>\nor b</w>\ner ick</w>\nbo sco</w>\npra ising</w>\nber tr\nto wing</w>\nin security</w>\nku t</w>\nresto cked</w>\nrr p</w>\nprescri bed</w>\ntrafal gar</w>\nper t\ng ases</w>\napp rais\ng har</w>\nmusic als</w>\nâĸ¬ âĸ¬\nmc fad\nag ony</w>\nconditi on\nequi p</w>\nshi k</w>\natra vel</w>\nðŁĩ¿ ðŁĩ¦</w>\nke h</w>\nabduc tion</w>\npe oria</w>\nwil kins</w>\ng ms</w>\nas d</w>\nev i</w>\nðŁĴĹ ðŁĴĹðŁĴĹ</w>\nu z</w>\nmo c</w>\nhalle lujah</w>\nguad alu\nlou vre</w>\ndra wing\ngo ve</w>\nph ant\nfri e\nweb dev</w>\nprogram mer</w>\nz able</w>\ngames com</w>\nclari fy</w>\nli th\nkin ky</w>\nâĿ £\nlabour doorstep</w>\nson ata</w>\nju ris\nmai den\nvi adu\nbuch arest</w>\nconditi oned</w>\ncapit alist</w>\nu de\nps b</w>\nsp ca</w>\nlul la\nfooth ills</w>\nkay o</w>\nbon d\nwom b</w>\nroun der</w>\nce sar\nbur sts</w>\nap ra\nsw oon</w>\nsab rin\nfra grant</w>\ncle arer</w>\nku brick</w>\ncli max</w>\njour no</w>\nag le\nðŁı½ âĢįâĻĢï¸ı</w>\npoo ch</w>\nhal e\nsol it\nsal mon\norganis ms</w>\nbron son</w>\nart en</w>\nhodg son</w>\nalo ve</w>\nvent ure\nbb i</w>\nae a</w>\nðŁĲ ¢</w>\nld n\nd nr</w>\no zone</w>\nel las</w>\nman ny\nazz ur\nun beat\ntru ffles</w>\nth ong</w>\nma Ã±\nlas ers</w>\nley e</w>\ngettys burg</w>\nback packs</w>\nor is</w>\nma ison\ncraw ling</w>\nla bra\ncl ing\ndra gging</w>\nste al\ndou bt\nde van\nck ers</w>\nagent sof\nphoto bomb</w>\nelon musk</w>\nabo y</w>\ndist ances</w>\nstory line</w>\nsp i</w>\nnor than\neurope ans</w>\nwh ale\nser pent\nðŁļ ²</w>\nfi or\ntr it\nox o</w>\nawar ding</w>\nclass mate</w>\nsu fc</w>\nsmar test</w>\nrich es</w>\npr k</w>\nbig foot</w>\nar mb\nbi polar</w>\ndw elling</w>\nom ars</w>\nk wan\ngri me</w>\nm eng\nfreder ick\nnavar ro</w>\nsorry notsorry</w>\njaredle to</w>\npa ve</w>\nsl ack\nbarn sley\natt ar</w>\nevic tion</w>\naccumul ation</w>\no ir</w>\ncat chy</w>\nwel ter\nvik as</w>\nhas see</w>\nnik ita</w>\nmo yes</w>\nmathe ws</w>\nshi v</w>\ngat wick</w>\npro filing</w>\ncompan ions</w>\nmar rake\nan tics</w>\nðŁĻĮðŁĻĮ ðŁĻĮ</w>\nse se</w>\nbo i\nbart lett</w>\npoison ous</w>\nab uses</w>\nym m</w>\nkam pala</w>\nguggen heim</w>\nimv kohli</w>\ndol om\nbre e</w>\nthro ttle</w>\ngare th\nfitz patrick</w>\nun ya</w>\npar ad\nmar got</w>\nj nr</w>\nwe a\npotassi um</w>\np nc</w>\ndisgu ised</w>\ncra sh\nren ergy</w>\nill ic\ncoup led</w>\nni els</w>\nci ones</w>\næĹ ¥</w>\nim ent</w>\ndespic able</w>\nd ye\nwhat cha</w>\nconne ctions</w>\nparalym pics</w>\ngaunt let</w>\nwait rose</w>\nsuici dal</w>\nstar ship</w>\nvap or\nst ou\nlaw maker</w>\ncoo led</w>\nsi mo</w>\nthen o\noffro ad</w>\nja den</w>\nbas que</w>\nvick y\nlu kaku</w>\ncentr o</w>\ntri sh</w>\nstrate gist</w>\nmedic ations</w>\nhor st</w>\nb fc</w>\ngra il</w>\nsharp ly</w>\nad itya</w>\ntom b\nkau fman</w>\ntri pad\nsam ba</w>\npastor al</w>\nbrit ney\nsag an</w>\nhill side</w>\nmas ons</w>\nsar a\nz one\nx u</w>\nto tes</w>\nrob bie\napp en\nmon tag\nder o\nshort film</w>\ncharis matic</w>\ntat ors</w>\nki ba\nand ri\nal arming</w>\nsplit ting</w>\nic ar\nth ug\nscari est</w>\nsylve ster</w>\nan an\nu trecht</w>\na difference</w>\nme ade</w>\nbu ster\nair strikes</w>\ncu ffs</w>\naccount ants</w>\nðŁĺ¡ ðŁĺ¡\nnew t</w>\nbo tt</w>\nissu ing</w>\ncl ancy</w>\nwwen etwork</w>\nkyu hyun</w>\nrese mble</w>\npajam as</w>\nsin k\nkin ney</w>\nsul ph\nor k</w>\nli es\nla gh\nor ton</w>\nra hul\nd sc</w>\nwe will\nre am\ncollo qui\nshar ia</w>\nhec tic</w>\nsar casm</w>\nland er\ntm z</w>\nendor f</w>\nro z</w>\nham mered</w>\nfri s\nw adi</w>\npope francis</w>\nhe it</w>\nflash light</w>\nun born</w>\nop es</w>\nhol iness</w>\nðŁĲ ¦</w>\nnach t</w>\nim sa</w>\ngr acing</w>\nbj p\nver ts</w>\nc sc</w>\nhome owner</w>\na que</w>\nbigo try</w>\nanni e\nbag h</w>\nâĿ¤ï¸ı ðŁĺį</w>\ncar i</w>\nthom p\ndispo sable</w>\ncardio logy</w>\npat ented</w>\nhh hhhh</w>\nld r</w>\nstephen son</w>\ncro res</w>\nfan ning</w>\ncli mat\nðŁĳį ðŁĳįðŁĳį</w>\nðŁĳį ðŁı¼\naer on\npiccad illy</w>\nbank rupt</w>\nsil via</w>\nemplo y\ndon ny\ncommen ting</w>\nscreen writer</w>\nio ta</w>\nce an</w>\nanc ers</w>\ntu an</w>\nstreet wear</w>\nà¤ ¯</w>\nsk ine</w>\nesp a\nasi f</w>\nos ce</w>\nshe ppard</w>\nmore cam\nbott le\nder s\norac le\ngoogle play</w>\naver aged</w>\nedmon ton\nsteph an</w>\nsister hood</w>\ncru sted</w>\nstag gering</w>\nmethodo logy</w>\ncongress woman</w>\nc abo\ntri ggers</w>\nmil ky\ngli de</w>\ntooth paste</w>\nroom mates</w>\nnu ff</w>\ngu am</w>\nsprink les</w>\nalternati ve\nwat fordfc</w>\nuof t</w>\nhal ey\ncont acted</w>\nbun dy</w>\npro stitu\ngh ar\npre ston\non site</w>\nhil ar\ng ts</w>\nc att\nhamp stead</w>\n? ?!</w>\nðŁĩ§ ðŁĩ\nbbc qt</w>\naless andro</w>\nresi st\nma idan</w>\nt ko</w>\nshad ing</w>\npin up</w>\ngal lo\nsin u\nat ec\nfun k\nac lu</w>\nstri des</w>\nrhy me</w>\nwet land</w>\nbbc springwatch</w>\nt ins</w>\nwild card</w>\nst our\nflamen co</w>\npau la\nonto logy</w>\ngang sta</w>\nam ade\nãĤ «\nt bs</w>\nskelet al</w>\nrun ner\njard in</w>\nharri er</w>\nhun ted</w>\nz hen\nbelievein film</w>\nde mean\nau diti\nre start</w>\nchon dri\nâĿ¤ï¸ı ðŁĴĻ</w>\nmcla ren\nga b</w>\nsh um\nau sa</w>\nlewi sham\ny pg</w>\nk jv</w>\nfur nished</w>\ndor o</w>\nbon ded</w>\nmor ty</w>\nlat itude</w>\n_ )</w>\nlo va</w>\nwater ways</w>\nvin ai\nshor th\ndrun k\nc ay</w>\nay ana</w>\nkap lan</w>\ncapp uccino</w>\nspr o</w>\nlife boat</w>\nhas bro</w>\nspol ice</w>\ntor on\ndo ing\ndam n\nsh ree</w>\nfoun tains</w>\nent ation</w>\nmar u\nboar der</w>\nto pless</w>\nj ada</w>\nchan ning</w>\nul ls</w>\nen closure</w>\ngib son\nfractu red</w>\nbrit ton</w>\nÃ ¶</w>\nt ous</w>\npor th\ndra f\ntra iling</w>\nmar gate</w>\neli fe\ndown ward</w>\nlin n</w>\ngla des</w>\ngirl power</w>\nak rish\nu ki\nron da</w>\nts c</w>\nappreci ationday</w>\nvis ing</w>\nlo om\nðŁį ³</w>\nmex ican\nar gos</w>\ny ya</w>\njad ine</w>\nsouth port</w>\nd end\nsi sta</w>\nrede em</w>\nmen g</w>\nbra xton</w>\nantioxid ant</w>\ns key</w>\nmp g</w>\nfin ding\nvibr ation</w>\nce u</w>\nkh art</w>\ndi mini\ncl ine</w>\nshel ly</w>\nhin es</w>\nī ï¸ı</w>\nto pical</w>\nno ver</w>\nma xx</w>\nprim itive</w>\nillustr ate</w>\nb ounds</w>\ntren ton</w>\njoin tly</w>\nbreed ers</w>\nu chi\nwakeup america</w>\nb ada</w>\nðŁĹ £ï¸ı</w>\ngu acam\nsp heres</w>\npere gr\nyouth ful</w>\nlo lo</w>\nbir min\nt ly\njeremy corbyn</w>\ndefe cts</w>\nco sm\na rent</w>\nv aa</w>\nbag els</w>\nmedi ac\ncori ander</w>\nic ago</w>\ng haz\nab bas\nre model</w>\nstruc turing</w>\npu m\nout law\nad ani</w>\nr bc</w>\ngul ls</w>\nn li</w>\nconfu se</w>\nðŁĳĩ ðŁı¼</w>\nvil a</w>\nmcnam ara</w>\ncorrec tions</w>\nmug hal</w>\nser i</w>\nre gain</w>\nss b</w>\nlea ve\nhaha hah\ngran de\ndi stressed</w>\nre chargeable</w>\nho a</w>\nhou sed</w>\nsti l</w>\nattribu ted</w>\nopath ic</w>\ndi ps</w>\npri t</w>\nhead phone</w>\nconclu de</w>\npil o\nhe t\nut sa</w>\nnit in</w>\nje m</w>\nsni ppet</w>\ntutor ing</w>\nop er</w>\nsun k</w>\nen sla\ncha u</w>\nac orn</w>\nquinte ss\nran kin</w>\naffili ated</w>\nour lives</w>\ncl int\nse ater</w>\nisa ac\nba shing</w>\nsme ar</w>\nnur se\ndoo dling</w>\n\" ;</w>\nsa ku\natroc ities</w>\nim am\ng fs</w>\nviol ating</w>\ncomm end\nbrad shaw</w>\ner ville</w>\nb illed</w>\nb be</w>\nthul hu</w>\ni phones</w>\nmoo se\ndi os</w>\nre w</w>\nme thane</w>\nstrang ely</w>\nwhis ky\nti ghtly</w>\nspiel berg</w>\nradi us</w>\nnotic ing</w>\nwi f</w>\nig nati\ni fa</w>\nap is</w>\nw ali\nha itian</w>\nbu shes</w>\ny z\nv l\nex ited</w>\nasse l</w>\ntru ec\ndom en\nash er</w>\nin king</w>\nnewyear seve</w>\nhend ricks</w>\nbat i</w>\nìĿ´ ì\nrich ter</w>\nmon santo</w>\ncon line</w>\nagre at\nðŁ¤ ¯</w>\nmaster pieces</w>\nar n</w>\nrough s</w>\ncle ve\nse v</w>\nfashi ons</w>\nto ya</w>\nsh ail\ncop eland</w>\naqu ari\ndec als</w>\nare you\ny aya</w>\na str\nfon t\nml m</w>\nar ca</w>\npp or\npol lock</w>\nxper ia</w>\nconserv ation\nchain saw</w>\nag gie</w>\n?! ?!?</w>\nsi le\nsh on</w>\nìĹ Ĳ\nnote books</w>\nmarque tte</w>\nde us</w>\nbb led</w>\nspic er</w>\nmc cabe</w>\nnor wich\nmodi fication</w>\nboo sted</w>\nstru m</w>\nsales man</w>\nbang le</w>\nnis san\nhez bollah</w>\nbrea sts</w>\na af\nanth us</w>\nsk er\now ed</w>\nher os</w>\ngi fs</w>\nfo sters</w>\neat ers</w>\ndu es</w>\n_ /\nlymph oma</w>\nsf am</w>\nme gal\nafri di</w>\nag ic</w>\np amp\njeal ousy</w>\nðŁĳĮ ðŁı¼\ncalcul ate</w>\nnapp ing</w>\ng ale\nðŁ¦ Ħ</w>\nlub bock</w>\nassu med</w>\nren ting</w>\níĥ ľ\nsubur b</w>\nãĤ ·\ntech nic</w>\nu cla\nin front</w>\ngar net</w>\nster oids</w>\nstri ving</w>\nho war\nmo ver</w>\nle ton\nbull do\nis in</w>\nci ao</w>\nsn z</w>\nfore front</w>\nd ams</w>\nmid wife</w>\nma wards</w>\ncla pton</w>\nwe in</w>\nsubsi dies</w>\nspr oud</w>\nrother ham</w>\nphan tom\nar ach\nspi el</w>\nrac ket</w>\nsel amat</w>\nno on\nl bc</w>\nenti ally</w>\nðŁĴ ¸\nsil ve\nm oud</w>\nkine tic</w>\ny asi\nðŁİ ©</w>\no ol\nmi ku</w>\ni za</w>\nfer a</w>\nflo ren\nbarber shop</w>\ngroo t</w>\nz est</w>\nne ars</w>\nstan is\nz and\npolice man</w>\njuris dic\nform ations</w>\nappar atus</w>\nsp d\narti fact</w>\nto sc\nmotiv ating</w>\nwomanc rush\nre dro\ndiagno stics</w>\nra za</w>\nout fitters</w>\nel xn</w>\ndod gy</w>\nry n</w>\nsh d</w>\northo don\nol de</w>\njay anti</w>\nbal ances</w>\nquic kest</w>\ncan ton\nfriday reads</w>\n! *</w>\nna a</w>\na ak\nðŁĶ ·</w>\nbehavi ors</w>\nrasp berries</w>\nä »\npolit ical\ncam il\nå ľ\ndi k</w>\nast ounding</w>\nlie be</w>\nnovel ty</w>\ntur moil</w>\nsul ly</w>\nspring break</w>\nhon ouring</w>\ncc g</w>\nðŁı Ĵ</w>\nmy little\nky c</w>\npro ms</w>\nðŁķ Ĭ</w>\nÃ ¨</w>\nbi ge\nav ril</w>\nðŁĩµðŁĩ °</w>\nmari on\nas ants</w>\nsur ya</w>\noc tag\nluf than\nac ron\nfayette ville</w>\nti que</w>\nlove s\nen ca</w>\nde kalb</w>\nta ver\nde vote\naux iliary</w>\njoh annes</w>\ntread mill</w>\nay an\nqu r</w>\ndonald son</w>\ncher yl\n\" ....</w>\ns ven\nkir sty</w>\ngun ners</w>\nra dish</w>\no ahu</w>\nv sky</w>\ni ble</w>\ncon course</w>\nb ps</w>\nelo qu\nash ford</w>\nte bow</w>\nroblo x</w>\nma da</w>\ndri ving\nth day</w>\nspro ject</w>\nm ms</w>\nband ed</w>\n. !!</w>\nlibr arians</w>\nflan nel</w>\nintoler ance</w>\nher al\nç µ\nneme sis</w>\nlist a</w>\ntar ak</w>\ncry pt</w>\nstar plus</w>\nvish nu</w>\nsc ale\ncr is</w>\n% ),</w>\nj illian</w>\nregg ae\npegas us</w>\nol in\nip ment</w>\nman ic</w>\nl fc\ngodd ard</w>\nite am</w>\nparl our</w>\nanch ors</w>\nlee minho</w>\ntalla hassee</w>\nant it\nd ho\nkid ney\ny ash</w>\nbatt led</w>\naz ad</w>\ngar is</w>\nfaul kner</w>\nsni ff</w>\npapar azzi</w>\ned m\nphy llis</w>\ncon tested</w>\naa ay</w>\nse ca</w>\nk ton</w>\nvel ve\nrain ier</w>\nfor um\ntam pab\nho sp</w>\ntrac tors</w>\nox fordshire</w>\nno tion</w>\nguang zhou</w>\nðŁĺ ¯</w>\nref ill</w>\nwednesday motivation</w>\nsli der</w>\nmukher jee</w>\npr att\nfon taine</w>\nalph on\naf ar</w>\nts i</w>\npest icides</w>\nfi ends</w>\nmo cking</w>\nbra w\ntran sat\ndo ses</w>\nco res</w>\nhom ophobia</w>\ndocu menting</w>\nzlat an</w>\ncon doms</w>\ns Ã©\nsun set\nkun st</w>\nton ga</w>\nà¸ ª\nv ation</w>\nsp ray\nchow der</w>\nra ps</w>\npalla dium</w>\nnor wood</w>\nmusic history</w>\nhoo ker</w>\nsi si</w>\nosp rey</w>\nph ys</w>\nconce ded</w>\nbob cat</w>\nar mad\nze it\nÙ Ħ</w>\nðŁĺģ ðŁĺģ\nmer idi\nðŁĩ· ðŁĩº</w>\ncorn wall\n! ),</w>\ntouch downs</w>\nze it</w>\nchal et</w>\nmm m\nal che\ngor illa\nfo ss</w>\nati ku</w>\nlumin ous</w>\nivan ka</w>\nbe ek</w>\nsta res</w>\nsw iss\nâĿ¤âĿ¤ âĿ¤âĿ¤\nscru bs</w>\nme ath</w>\ngusta v</w>\njo gging</w>\nconfe tti</w>\nas os</w>\ners fc</w>\nbreit bart</w>\napplic able</w>\nautho red</w>\nya ho\nh in</w>\ndisplac ement</w>\nj v\nðŁĮ¹ ðŁĮ¹\not c</w>\nnon profits</w>\ndiec ast</w>\ngu sto</w>\ninte stin\nc ages</w>\nme en\nlu kas</w>\nmoon ey</w>\nðŁĺ ·\nvery day</w>\ntor ah</w>\nis sion</w>\nwa c</w>\nlever aging</w>\nish able</w>\ncu se</w>\nle wood</w>\nmay an</w>\nturn table</w>\nju ice\ntru sty</w>\ntu p\neti quette</w>\nsupervis ors</w>\nstu n</w>\ngu zman</w>\nconfe ren\nric o\nfe ast\nback ward</w>\npol aris</w>\nmic he\njo g\nh ing\nfield house</w>\nvel ing</w>\nsho cker</w>\nesc ence</w>\nà¤ ¾\nvi be\nanasta sia</w>\nmar ched</w>\nkill ing\nĶ ë\nfe tt</w>\nexop lan\n... (</w>\nsnow day</w>\nlo h</w>\nir ani</w>\nla khs</w>\ndel a</w>\npo caly\nboom ers</w>\ndictat orship</w>\nac er\ntur keys</w>\nquarter final</w>\nmuskete ers</w>\nðŁĴĽ ðŁĴļ\nsf x</w>\nmuseum week</w>\nsc ala</w>\nri sis</w>\n( ðŁĵ·</w>\nãĢ Ĥ</w>\nz ies</w>\nbo eh\nhu es</w>\nlu sci\ndol a</w>\nimpeach trump</w>\nroo d</w>\ndon caster\ntor re</w>\nhero es\nfo yer</w>\ntar i</w>\nblur red</w>\nke w\nfrank ly</w>\ndro id</w>\nap al\nÐ ¼\ny af\nbre t\npar agu\ncac ao</w>\nðŁĻĮ ðŁı¾\nru e\nhead aches</w>\nshaw ty</w>\nchar ley</w>\npal er\ngo wns</w>\ncorrec tional</w>\nðŁĺ© ðŁĺ©</w>\nbreaking bad</w>\nol ing</w>\nda p</w>\nendeav our</w>\ncit adel</w>\ntra d</w>\nincumb ent</w>\nmedit ate</w>\nfoo ted</w>\nðŁĴ µ</w>\nshab bat</w>\ndayof the\nwil lem</w>\ngal way\nto red</w>\nmarri age\nf illion</w>\nsleeve less</w>\naud itor</w>\njin young</w>\ninvin cible</w>\nkad una</w>\na and\nvolcan oes</w>\nmon eti\nindie gogo</w>\nbuccane ers</w>\nðŁĳī ðŁı½</w>\nãĢ Ĥ\nlay ton</w>\ncuck oo</w>\nhu mber</w>\nbuzz er</w>\nÏ ī</w>\nto re\nstra ins</w>\nsto m</w>\npa ine</w>\ns we</w>\ndu ff\nz ou\nsi mi</w>\nli pp\nur n</w>\nse agu\nðŁĶ ®</w>\nsun dae</w>\nhi c</w>\nðŁĺ ¨</w>\nbull pen</w>\nu per\nflyo ver</w>\nal dridge</w>\nglo bes</w>\nali es</w>\nken zie</w>\nge es</w>\ny cle</w>\nsp lin\nmag enta</w>\nj ha</w>\nbal u\ngh orn</w>\nti pper\nwick er</w>\ntaste of\ncon clave</w>\nch ale</w>\ninv asi\ncat er</w>\ndio xide</w>\nme gab\nwin n</w>\nat p\ntransform ative</w>\nnest led</w>\nhi g\nbri dging</w>\nlil ies</w>\nchee red</w>\nbad dest</w>\nsc rolls</w>\nreal is</w>\ndipl o</w>\nðŁĶ «\nconce ssion</w>\nprefe rences</w>\nexplo des</w>\ner gon\nintroduc tory</w>\nine au</w>\nch af\nsom es</w>\nland rover</w>\nspir ation</w>\nsex y</w>\nsco recard</w>\nillustr ates</w>\nsoul mate</w>\nwi en</w>\ninter disciplinary</w>\nfore casting</w>\nent ities</w>\nglu ed</w>\nen lar\ncur t</w>\npercep tions</w>\nboot leg</w>\nmi re\nasho k</w>\nv az\nhor ne</w>\ncal le</w>\nac ulture</w>\nther oy\nnight time</w>\noc al</w>\ncharacter design</w>\nar mist\nðŁĺı ðŁĺı</w>\nyah oo\nac eae</w>\nto se</w>\neven to</w>\nsou t\nnay anth\nwh om\nv are\nri gging</w>\ngen us</w>\nhi ve\ncom mands</w>\nsti e\nday a</w>\nethan ol</w>\nen f\nhi fi</w>\nflu ence</w>\ncle mson\nre invent</w>\nthermom eter</w>\nhumor ous</w>\nemer ging\naci Ã³n</w>\nðŁĺĺ ðŁĺį</w>\ns ity\nhaw ke</w>\naccompan ying</w>\nt ility</w>\nðŁĺ ª\nre cess</w>\nprotag onist</w>\nl ery</w>\ndun dal\nint l\nbritt any\nq bs</w>\noff the\nmarri ages</w>\nhow to\nviol ated</w>\nadel aide\nwit t\nlanc er</w>\npak v\nhu me</w>\nst ade</w>\nbra gging</w>\nou tright</w>\nad c</w>\nsuper st\nreal time</w>\ncu res</w>\ngarden ers</w>\nero ck</w>\ndale jr</w>\nver o</w>\nbar tol\nmo ti\nmc fly</w>\nv pn</w>\nst ink</w>\nover rated</w>\nguer ra</w>\ne tis\nath ome</w>\ntwd family</w>\nth ab\ntn x</w>\nrafa el\nfamily travel</w>\nx ley</w>\nsat anic</w>\nequ ations</w>\nru dy\nwal dorf</w>\nstan i</w>\ntu be\nmeas les</w>\nzimmer man</w>\nobli gations</w>\ni ously</w>\nbow ser</w>\ntrans former</w>\nsho ppe</w>\nshak en</w>\ngh ouse</w>\nto d\nke tball</w>\nshare holder</w>\nmar ca</w>\nkp mg</w>\nak an</w>\ngiven chy</w>\ncoast al\nau th</w>\nroller coaster</w>\nmar ches</w>\ncoordin ate</w>\ncine ma\napprentic es</w>\npar lor</w>\nmit o\nmen on</w>\nconsider able</w>\nbar re</w>\nglo ss\nenh ances</w>\njaz eera</w>\nfal mouth</w>\nthra sh</w>\nstat en</w>\nk zn</w>\neng el\nsamanth ap\nflo ppy</w>\nsal om\nðŁıĨ ðŁıĨ</w>\nw ack</w>\ndeliber ate</w>\nosc ill\nherit ag\ndu sted</w>\norni thology</w>\npad dle\nfer ns</w>\nbar un\ncl ans</w>\nanticip ate</w>\na ay\nmat ically</w>\né ĩ\ntu mble</w>\npost man</w>\nunic ef\ntro tter</w>\nop d</w>\nleaf let</w>\nge ist</w>\ncease fire</w>\nscre ws</w>\ncre ation\nwal nuts</w>\nlongh orns</w>\nunder statement</w>\nab b</w>\nproxim ity</w>\nna x\nun ity\nturn pike</w>\norda ined</w>\ndub step</w>\nchak ra\nme ch</w>\nlove her</w>\nlook alike</w>\ndonne in\nvir on\nÙ Ī</w>\nbang ers</w>\nvari ants</w>\nout dated</w>\nin ta</w>\ncri sto</w>\nsp elt</w>\nfood and\nf on</w>\nstefan i</w>\nmargin al</w>\nhu tton</w>\nti ara</w>\ntel ford</w>\nqu en</w>\nfair grounds</w>\nque tta</w>\nmikha il</w>\nheal er</w>\nv ball</w>\nty re\nunder grad</w>\ngl end\nhom ers</w>\nscri bed</w>\nmain tains</w>\npo che\nmis sal</w>\nmar ko</w>\nu as</w>\nÃ¡ n\nsh p</w>\ncon vey</w>\npad re</w>\nsab a</w>\npu glia</w>\nmadhu ri\npa xton</w>\nchap lain</w>\nn ago\nca si\n... !!!</w>\nfli rt</w>\nsal eh</w>\nk are</w>\ndi re\nstam ped</w>\nextre me\nðŁĺĥ ðŁĺĥ</w>\nho ppy</w>\nguadalu pe</w>\nadvant aged</w>\neu char\np low</w>\nun n</w>\nmac qu\nport land\ncla sh\npe s\nlou bout\ny p\nkeep ing\narca dia</w>\nfran kie\nfi u</w>\nde th</w>\nencyclo pedia</w>\nsi ze\ninve sts</w>\nðŁį ©</w>\ngeo logical</w>\nfran Ã§\ncon front</w>\nðŁĺ ¥\nd ys</w>\naf m</w>\ntex an</w>\ngraph ene</w>\nrepost app</w>\nac f</w>\nur sula</w>\ngaz a\ndd led</w>\nfu m</w>\nwsb tv</w>\nm be\nfron tiers</w>\nchrono graph</w>\nke s\ninter faith</w>\ntab oo</w>\nspar ta</w>\nwon do</w>\nflori st</w>\nem braces</w>\nca w\nno el\narch ers</w>\nðŁĲ ·</w>\nroman o</w>\nban an\nsh akers</w>\nmelo dies</w>\ngeo thermal</w>\nse phora</w>\nìļ °\nÐ¾Ð ´\npro c\nhand shake</w>\npan de\npopul ated</w>\nslow down</w>\nhor tons</w>\nregistr ations</w>\nun deni\nlan ts</w>\npas sover</w>\nthak ur</w>\nli ef</w>\nadhe sive</w>\npe tal\nmicro scopy</w>\nmemph is\nconfir ming</w>\nair drop</w>\nmesm er\nperce ived</w>\nming le</w>\nlifel ine</w>\ngh j\nworcester shire</w>\npas sions</w>\nach er\nel lar</w>\nah o</w>\nfiren ze</w>\nbar ang\nletter man</w>\nhat field</w>\nlu cha</w>\nje ter</w>\ne shop\nwilliam s\nhoro scope</w>\npre de\neast bourne</w>\ndur ga</w>\ndi version</w>\nal trin\nseis mic</w>\npremi osm\nnar co\nti r</w>\nori g</w>\nor m</w>\nland fall</w>\nci ous</w>\nlin do</w>\nmax ine</w>\nx ico</w>\ntra y\nos wald</w>\nc ba</w>\nric otta</w>\nn cr</w>\nmar au\nà¸ ²</w>\ngladi ator</w>\nch ery</w>\nlun g\nu me\npo psic\nlon ging</w>\ncan als</w>\nta ya</w>\ndecentr alized</w>\nsho pp\npres sures</w>\nmahar aj</w>\neti had</w>\nwal greens</w>\nsucce ssion</w>\nsign aling</w>\nli g</w>\nstaf fer</w>\nnorth korea</w>\ndef ying</w>\nas ma</w>\nde g</w>\nperi meter</w>\noak ville</w>\nm sk\nbalti more\nrece ip\nde ple\nðŁĺŃ ðŁĺĤ</w>\njambo ree</w>\n> .<</w>\nrsp b\npuni sher</w>\nconsider ably</w>\nin tothe\npari sian</w>\nacceler ated</w>\npolye ster</w>\nlow es</w>\nfr ying</w>\nsautÃ© ed</w>\nmou ths</w>\nseychel les</w>\nra x</w>\ngo dis\ndak ota\nhouse wives</w>\nthe me\nmat inee</w>\nblack bird</w>\nye sung</w>\npre fers</w>\npelle gr\nin ated</w>\ntrun ks</w>\nstronger together</w>\nre pet\nre pairing</w>\nped als</w>\ntoler ant</w>\nher r</w>\ndun ne</w>\nindic ation</w>\ndecat ur</w>\nb tv</w>\nexhibit ors</w>\nik on\nfriday motivation</w>\nbra gg</w>\nlive tweet</w>\nal ves</w>\nwomens art</w>\nforeig ners</w>\nwal lets</w>\nmin dy</w>\nlan ey</w>\nbb in</w>\ntv miaw</w>\nlif ter</w>\ntar get\ntam e\ndr ou\nastro photography</w>\nmp c</w>\ng pu</w>\nnord strom</w>\nfric tion</w>\nrun off</w>\nlov able</w>\nsp nfamily</w>\next ingui\nbloo dy\nsch el</w>\narti stry</w>\nsw ish</w>\nscar ce</w>\nph ils</w>\nmax im</w>\npos sum</w>\ncom promised</w>\nsty li\nsc fc</w>\nis sa\nbirmin gham\nsket ched</w>\nangel ica</w>\nordin ance</w>\nje ts\nconqu er\nðŁĺ Ĳ\nonline shopping</w>\ns ori\nreason ably</w>\nnue stro</w>\nar turo</w>\nch l</w>\nbenef ici\nspho to</w>\nwel t</w>\nni kk\nðŁ¤ ŀ</w>\ndan ao</w>\nfor mid\nas se</w>\naf irst</w>\nâľ Ĥ\ngil lette</w>\nas sor\nan onym\nsel ca</w>\nfe mi</w>\nbear able</w>\ny and\nar mory</w>\ncre pe</w>\nceltic fc</w>\nbra vo\nin expensive</w>\nde lec\nge cko</w>\nnew market</w>\nsnow flakes</w>\nkab ir</w>\ncon tra</w>\ncan ning</w>\nmor pho\ngar wal</w>\nðŁĴĥ ðŁı»</w>\nfight ing\nmu tation</w>\nwoo dy\nju gg\ngr aces</w>\npremiosm tvmiaw</w>\nkenne dy\ngu p\nsa e\nop ha\noff spring</w>\nfini sher</w>\nbet ts</w>\nspan ning</w>\nmar j\nh one</w>\nsh ing\ncontin ents</w>\nsamanthap rabhu</w>\nun related</w>\nl acy</w>\nexplo sions</w>\nbenjam in\nsophi e\nno ting</w>\nmicro soft\nas sen</w>\na hoy</w>\ni ker</w>\nho fer</w>\nmo e\nah madi\nyan n</w>\nan ak</w>\nma hi</w>\nbe u\naha h</w>\ncreep er</w>\nbaahu bali</w>\nam at\npri ory</w>\nhaw keye</w>\ndeloit te</w>\nsko da</w>\nprint making</w>\nassemb ling</w>\nmirac ulous</w>\nno ch</w>\nsw o\nleg a</w>\noper ates</w>\nborder lands</w>\neli e\nstron gh\nrep tiles</w>\npir ate\nun fold</w>\nÂ ¯\nqual comm</w>\nun predictable</w>\not r</w>\nrose wood</w>\ndirec tional</w>\ncounsel ors</w>\ncorn ell\nliber ated</w>\nj ad</w>\nir regular</w>\nbulgar ian</w>\nhigh ness</w>\nvodaf one</w>\nsw ild</w>\nmini mize</w>\ngra zie</w>\nà¹ ĩ</w>\nr stats</w>\nstre ep</w>\nome tric</w>\nhumb le\nlu mp</w>\nl ille</w>\nb Ã¼\nhome depot</w>\ntripad visor</w>\nki wan\na via</w>\ner z</w>\nex ico</w>\ndu f\nblu men\nmi zing</w>\nar ma</w>\nin im\ncon stan\nsor a</w>\nju al</w>\nau n</w>\ntw ell\ntren ches</w>\nher a</w>\nr k\npo plar</w>\nrecipe oftheday</w>\nll an</w>\nbhu ban\nshort ages</w>\ning don</w>\nbridge water</w>\nðŁĲ ĺ</w>\nfortn ite\ncam den\nun cture</w>\npro w\ncolon ies</w>\nt ks</w>\nn go\nb hm</w>\nlive pd\nspl ace</w>\nsli ke\nhappye aster</w>\nter rence</w>\nrevol ver</w>\nj ed</w>\nyy yy\noffice of\nm ts</w>\nexist ential</w>\nr ourke</w>\nexplore bc</w>\nsse d\npri est\nvix en</w>\nsi ding</w>\nk pa</w>\na har</w>\nju ic\nob struc\nforen sics</w>\nuk mfg</w>\ncancell ation</w>\nwe ary</w>\nab q</w>\nele c</w>\npri zed</w>\ndeb ts</w>\nme zz\nsalv atore</w>\nm dc\ngre tte</w>\nc gc</w>\nth on\nsnow storm</w>\nts ch</w>\ncook ery</w>\nå ¹\nwa xing</w>\nn acional</w>\nmur s</w>\nra ve\ncap es</w>\nger main</w>\ndri pping</w>\nsub mitting</w>\nome lette</w>\niter ation</w>\naj es</w>\nshim mer</w>\nfu eling</w>\nðŁĩ§ ðŁĩª</w>\nli po\nbo bble</w>\nun follow</w>\nislam ist</w>\nhi ber\ncat s\nagentsof shield</w>\nsen si\n____ _</w>\nster ia</w>\ninst al\nausp icious</w>\nhar row</w>\nover land</w>\nfemini sts</w>\ninst ant\nchar iot</w>\nblind ness</w>\nsp ed</w>\nsc arec\nnu it</w>\nmini atures</w>\nho seok</w>\nglo ck</w>\nfifa worldcup</w>\ne te\ndis m</w>\nwe iner</w>\nex foli\near ts</w>\nà¸ Ķ</w>\nmy art</w>\nman il\niss ant</w>\nform a</w>\nin cu\nbuffal ob\nin tim\nmc cul\nanj ali</w>\npo po\nun doub\nhil a</w>\nfun gal</w>\nthank ful\nfu tur\nen dish</w>\nren ds</w>\nth ar</w>\nshe ff\nring o</w>\nnichol ls</w>\nio wa\npo tom\ncl ams</w>\nãģ Ħ</w>\nacon f</w>\nstadi ums</w>\ndi mp\ndi k\nresiden ces</w>\ndo v</w>\ncaric ature</w>\nseagu ll</w>\nkl m</w>\nconfe ss</w>\nsla pped</w>\ncele b\nturb ines</w>\npp v</w>\nnur ture</w>\nel ab</w>\n.... .#</w>\ntu ff</w>\nde press\nal far\namii bo</w>\ndi spon\ne wing</w>\nque er\nfriend s\nfor re\nâĺ ¼</w>\nsw t</w>\naqu arius</w>\nhead liner</w>\ncur d</w>\nfi gs</w>\no tters</w>\nlove fl</w>\nkare em</w>\ngo vegan</w>\nfri yay</w>\nconsol ation</w>\nat ri</w>\nì§ Ħ</w>\nâĺĿ ï¸ı</w>\npoly ne\ngu ed</w>\no ya</w>\nla us\nintestin al</w>\ncam illa</w>\nscal p</w>\npi r</w>\nleed s\nhorri fying</w>\nbore tum</w>\ndand elion</w>\nfer rer</w>\nell ic\nas x</w>\nso ren\nre loaded</w>\nale ague</w>\nnavig ator</w>\nine tte</w>\nadd ams</w>\nal chemist</w>\nak shay</w>\ndystop ian</w>\nawe c</w>\nn aya</w>\nal isa</w>\nai led</w>\nag or\navi ator</w>\nali zer</w>\nsmo bile</w>\nfindyour park</w>\ncop ying</w>\nto ddy</w>\nsh ti</w>\nmon ger</w>\ncal houn</w>\nnap kin</w>\nbreak up</w>\ny atra</w>\nse thu\nric hi\neras mus</w>\nfer ry\nam ore\nprac tise</w>\nbo bo</w>\npower point</w>\noo se</w>\nli ffe</w>\nchin a\nsh ka</w>\nfad navis</w>\ndu ane</w>\nwar on\nfal se\nðŁļ Ĥ</w>\nwa shes</w>\ndisc ip\n==== ====\ng k\nab b\nstub born</w>\nmedi eval\np ci</w>\nðŁį ª</w>\nmaril yn\nh yo\nman di\ncr i</w>\nprede cess\ncontinu ation</w>\nom usic</w>\ns lat\nwh al\nmall ory</w>\nbon n</w>\nshen zhen</w>\nca i\nâĺ ĥ\nsa fest</w>\nfor wards</w>\ndra wers</w>\nbla sted</w>\nsle e</w>\nmor phe\nmb ta</w>\ndumb ass</w>\nÑĦÐ¾ÑĤ Ð¾</w>\nalhamdulil lah</w>\nec lub</w>\nal beit</w>\nheal ey</w>\nayurve da</w>\nadverti sed</w>\ncro cs</w>\nitt les</w>\nbry son</w>\nbe i\nnj pw</w>\nhonore e</w>\nfu sed</w>\nðŁĶ ĺ</w>\nmul tin\nn aga</w>\nde parts</w>\nko p</w>\nkin o</w>\njhar khand</w>\ned na</w>\nax le</w>\nmil ton\nsupremac ist</w>\nmarrake ch</w>\ndomin ic\ntran script</w>\n] [#</w>\n: ).</w>\nwo c</w>\nsur rounds</w>\no gil\nleaf lets</w>\nco well</w>\nwhe w</w>\ntru de</w>\nproli fer\nsucce s\nsports man</w>\ncon dom</w>\npo che</w>\nk up\nimprison ment</w>\n{ }</w>\nscram bled</w>\nå Ľ\nka ine</w>\ncell phone</w>\nmetam or\ncon i\nremn ants</w>\nee z</w>\ndown pour</w>\nafterno on\nexerc ising</w>\nber ser\narchitec ture\nwick low</w>\nm ns</w>\nis p</w>\nbo c</w>\nn iss</w>\nmn wild</w>\nstu mble</w>\nr si</w>\nlu ffy</w>\nsil en\ndd ad</w>\nbul lies</w>\nhaw ker</w>\nbb cc\nscu ba\ne pp\nque ts</w>\nfor aging</w>\npal let</w>\nha di</w>\ncinemato grapher</w>\ncat chers</w>\nto aster</w>\nk hi\nlite coin</w>\nkid lit\namher st</w>\nmaur icio</w>\nip ad\nmar malade</w>\nfe y\ndon nelly</w>\ng to</w>\nest as</w>\ncere bral</w>\nant grasso</w>\nzz led</w>\nvir gil</w>\nswa pped</w>\nðŁĺħ ðŁĺħ</w>\nno dapl</w>\ngreate st\nnhl bruins</w>\nfra ser\nb mo</w>\nane w\n. âĿ¤ï¸ı</w>\nse gregation</w>\nremark ably</w>\nmccor mick</w>\nlo gger</w>\ner as</w>\ncontrac ting</w>\nâłĢ âłĢ</w>\nyor ks</w>\nuku lele</w>\ntouch screen</w>\nde cked</w>\nben n</w>\nsouth wark</w>\nra vin\nnu mis\nðŁ¤ Ļ</w>\nru t</w>\ngre co</w>\neth ic</w>\nred neck</w>\nar r\nt cs</w>\nih ri\nðŁĩ« ðŁĩ·\nl k\ninher ited</w>\nzy k</w>\nviadu ct</w>\nmarty red</w>\nhi gu\nss n</w>\nbe in\nstreet style</w>\nfer gie</w>\nbank of\næĹ ¥\nstake holder</w>\nexempl ary</w>\ncre ss</w>\ness a</w>\nero tica</w>\nintre pid</w>\ngom es</w>\nbra un\nbethan y\nbang tan</w>\npulmon ary</w>\nm illing</w>\ndoctor ate</w>\ntrump russia</w>\nà¤ °\ns ani\nbl att</w>\npla u\ndepri ved</w>\nt le\nful ly\nbour n</w>\nst ak\nlufthan sa</w>\nkio sk</w>\nfar oo\ndef y</w>\nbad an</w>\nðŁĺĺ âĿ¤ï¸ı</w>\nrit z\ntri sha</w>\nran ds</w>\nmiddle sex</w>\narab s</w>\npro j</w>\nsport scenter</w>\nrepe ats</w>\niv f</w>\nbleed blue</w>\nas sure</w>\no bs</w>\nterrit orial</w>\nele n</w>\nbever ley</w>\nann ah\nâĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ıâĿ¤ï¸ı\nz l</w>\nfor good</w>\nscience fiction</w>\ngla u\nson ya</w>\npri th\nst weets</w>\nmix ers</w>\nmari o\nant elope</w>\nwriting community</w>\nwent z</w>\nden ham</w>\nbe di</w>\nsf o</w>\nharley davidson</w>\nlook book</w>\nimmuno therapy</w>\nor phe\nes ville</w>\ned ged</w>\ntas k\nsb ball</w>\ncorro sion</w>\nkilom eters</w>\nco sting</w>\nplay back</w>\nke ke</w>\ndi visi\nu ter\nre location</w>\nyel led</w>\npen g</w>\nup beat</w>\nser ve\nâļ ł</w>\nhal en</w>\nstir ring</w>\nreh man</w>\nen v</w>\nschu macher</w>\nfrag ment</w>\nalkal ine</w>\nsb k</w>\nresil i\nshare point</w>\nrol lover</w>\ntra sh\ncounter part</w>\nâĻ «\nob itu\nà ½\nãĤ ¹</w>\nmul berry</w>\nðŁİ Ĩ</w>\nauton omy</w>\nspra ying</w>\nnat l\nlove you\nfran ki\nnu k</w>\nesc ar\ncan teen</w>\nali baba</w>\nde plor\nmole cule</w>\npu d\nfort night</w>\nblon die</w>\nsp hin\nportra yal</w>\nta che</w>\nbu te</w>\nconsi sting</w>\nfreep alestine</w>\nc sp</w>\nim mort\nd ns</w>\nðŁĴ¥ ðŁĴ¥</w>\ntour de\ncoo king\narchi val</w>\nga thers</w>\nbit t</w>\nb anc\npre mature</w>\nsnow ball</w>\npoetry day</w>\nlou dly</w>\nfug itive</w>\ned ay\nem ra\nðŁĩ¸ ðŁĩª</w>\nsci en\nnode js</w>\njur gen</w>\nje ong</w>\nband ana</w>\nun is</w>\nfox sports</w>\nv andy\npro visions</w>\nwee p</w>\ntu k\ni ko</w>\nh oun\nzig gy</w>\nz r</w>\nfil let</w>\nbat a</w>\ntin k\ncon e\nwe want\nk ilo\nhor ace</w>\nsl t</w>\nsc t</w>\nstay tuned</w>\nvictor ia\numb ria</w>\natt acker</w>\ningham shire</w>\nfright ening</w>\nno ir\nfr at</w>\ncon tempt</w>\nlia ison</w>\nho i\nbr ink\ntr ill</w>\nni agar\nkick ass</w>\ndun das</w>\nnot my\nrho de\nbu mble</w>\nno xi\nfa g</w>\nspec tators</w>\nmancrush monday</w>\njin ping</w>\ndistr act</w>\ndais y\nwal den</w>\nportra it\nar thistory</w>\nvol tron</w>\nev el\nis c</w>\nac m</w>\nr ite\nna o</w>\nde ported</w>\nswe ats</w>\nru fus</w>\nlo bo</w>\nlabor day</w>\ngam o</w>\nihri thik</w>\nbl it\nabdomin al</w>\nãħ¤ãħ¤ ãħ¤ãħ¤\ni it\ne q\nbu sy\nallu arjun</w>\nun disclosed</w>\nde ton\npro create</w>\nki l</w>\nðŁİĤ ðŁİĤ\nmitch ell\nki i</w>\ninherit ance</w>\nal p</w>\njo burg</w>\npat rolling</w>\ncompul sory</w>\nun signed</w>\nni am\nl ga</w>\neshop suk</w>\ntr illi\nma w\nappreci ating</w>\nrock ab\nmaÃ± ana</w>\nan tal\nmal vern</w>\nroy o</w>\ngrand prix</w>\nsut ton\ngo ftheday</w>\ndig i</w>\nãħĭãħĭ ãħĭãħĭ\nt les</w>\nvaran asi</w>\nerec ted</w>\ndiscip les</w>\ncont act\nðŁĺ µ</w>\nli d\nâ¬ ĩ</w>\nscen tre</w>\nradi ator</w>\ning tips</w>\ntrans itions</w>\nthursday motivation</w>\nchem ical\nsepar ati\nsal is</w>\nmi m</w>\ngeo graphical</w>\nbook fest</w>\n/ .</w>\nâľ ĭ\nv ae</w>\ncur rie</w>\nag garwal</w>\nacceler ation</w>\nthe ses</w>\nlg m</w>\nu mass</w>\npro portions</w>\nnat a</w>\nani ans</w>\nku ch</w>\nbe acons</w>\nap r\n@ #</w>\nðŁĴª ðŁı¾</w>\nnu ke</w>\nsher aton</w>\nki o</w>\nma kati</w>\npolit ico</w>\nmor ale</w>\nì Ļ\neconom ically</w>\ngg ly</w>\nss en\npa stries</w>\nintern ships</w>\nvic ente</w>\nfanta ken</w>\naveng ers\naccu se</w>\nslee pover</w>\nindic ated</w>\nthe dream</w>\nster one</w>\nren ders</w>\nfro st\nou i</w>\ngre gg\nd ore</w>\nâľ¨ âľ¨âľ¨</w>\npu gs</w>\nsat y\nnu mb</w>\nhems worth</w>\ntam i</w>\nla ssic</w>\nschi ff</w>\nigle sias</w>\nag awa</w>\n] \"</w>\nre shi</w>\ngame stop</w>\ndivor ced</w>\ntheat er\nclau di\nun conventional</w>\nprophe ts</w>\nac in\ntwel f\ntow ering</w>\nt ml\nsc lerosis</w>\nk wan</w>\nge ts\ndistur b</w>\nna ira</w>\nener g\npir acy</w>\npru itt</w>\nnoti fied</w>\nhen na</w>\nbra m</w>\nground water</w>\nbl s</w>\nopti mis\n$ )</w>\nluci e</w>\nbiz hour</w>\nfang irling</w>\ngr ills</w>\nor l</w>\nver se\nc ina</w>\nlaw less</w>\nartistson twitter</w>\ntele vised</w>\nmarshmal lows</w>\nradio head</w>\nbar r\nm fc</w>\nbre vi\nmmor pg</w>\ng aya</w>\nâĸ «\nsub titles</w>\nj t\ndisney land\nto bago</w>\nnh m</w>\ngroo ve\nfi awec</w>\n\" /</w>\nba o\nscra bble</w>\nom ni</w>\nff l</w>\num c</w>\nsi mba</w>\nali er</w>\nter rell</w>\nplu me</w>\nmi di\ndig nit\nco c</w>\nbru t</w>\nad ata</w>\nalche my</w>\nd sm</w>\nðŁĺĨ ðŁĺĨ</w>\nwin try</w>\nspa res</w>\ncu er\nconclu sions</w>\nto ys\nod or</w>\nfl ann\ngar vey</w>\nscrip tions</w>\ninspec tions</w>\ncat ap\nang lo\nst louis</w>\nheim er</w>\nat ay\ntr ich</w>\nen yc</w>\nchil ds</w>\nvent il\nmont p\nguiller mo</w>\ncircu lare\nz ell</w>\nmode led</w>\ncraf tsman</w>\nal ina</w>\nstimul ation</w>\ncashe w</w>\nju das</w>\nbest of</w>\nto ire</w>\nsusp ends</w>\nscol lege</w>\nreal ising</w>\nby tes</w>\nbloo ds</w>\nas si</w>\nðŁĴ ¿</w>\no hs</w>\nðŁį ĭ</w>\nscallo p</w>\nà¤ µ</w>\ngi fting</w>\ncamo gie</w>\nwil kes</w>\no zzy</w>\nðŁ¤ ¤\nver onic\nsav oy</w>\ndeme tri\nbaby girl</w>\nðŁĺį ðŁĺŃ</w>\nso x\ncly de\ninduc tee</w>\ncount down\nself care</w>\nà¤ ľ</w>\nvi ka</w>\ntor re\nphd chat</w>\npe ars</w>\naw h</w>\nsuff rage</w>\nle sn\nadmir ation</w>\nmp p</w>\nshark week</w>\nschul z</w>\nsantor ini</w>\nclo ver\n( *</w>\nstras bourg</w>\nex iting</w>\nso yu\nfinger print</w>\nche a</w>\nãĢ ľ</w>\nvin dic\nsong writers</w>\nso a</w>\nprou der</w>\nnam a</w>\n= ))</w>\nsimple st</w>\ndelici ously</w>\ngil les</w>\nu q</w>\nmn wx</w>\nep p</w>\nsh un</w>\nken nel</w>\nfall on\nðŁĲ £</w>\nsin d\ntra gically</w>\nout es</w>\nmodern ism</w>\nco ke\ngy n</w>\nspi on\nâĺ¹ ï¸ı</w>\nle am\ncompress or</w>\napolog ise</w>\ntwent yon\nfan atics</w>\nâĻ »\nsco tsman</w>\nsa wa</w>\nko u</w>\nas er\nà¸ ļ</w>\nwelter weight</w>\nphen om</w>\ntwick enham</w>\nstri a</w>\np out</w>\nka z</w>\ngi am\ncd p</w>\nho y\nemplo y</w>\nred mond</w>\nà¸ Ħà¸\nsm ere</w>\ntrance family</w>\nproto cols</w>\npie ce\nlu iz</w>\niter acy</w>\ncarl s\nunited states</w>\nhar med</w>\nphd life</w>\nch aw\nfoot prints</w>\nl Ã©\ncho ker</w>\nz ana</w>\nsli pper</w>\neric sson</w>\ninsul ting</w>\narticho ke</w>\nadvis ing</w>\nacquis itions</w>\nop or\nmut ations</w>\nre ar\nà¥ ģ</w>\npod cast\nwi ther\nkun g\níĺ ¸</w>\nwin slow</w>\ndi apers</w>\nðŁĵ¸ @</w>\nec ker\ncol lar\nhu ey</w>\ngi ro\nmono gram</w>\nkas ich</w>\nsi veness</w>\nmalay si\narom atic</w>\ngre s</w>\ngali leo</w>\nu ji</w>\nrob b</w>\ndr m</w>\nnone theless</w>\nas a\n: ></w>\nlo a</w>\nl np</w>\nat work</w>\nag t</w>\nlaksh mi</w>\npipel ines</w>\nid al</w>\nstre l</w>\nre all\nchain z</w>\nstone wall</w>\nsan sk\nðŁı ´\npied mont</w>\nhoste ss</w>\nci u\nt Ã©</w>\nanaly ses</w>\nwil helm</w>\nscott y\nrw by</w>\nmosqu it\nuse mb\nqu ins</w>\nðŁĳ İ\ntu cker\ns conf</w>\nspeci fications</w>\npsychi atry</w>\nbroo kes</w>\ns ils</w>\nol af</w>\nde to\nco di\ncli p\nfil th</w>\nwomancrush wednesday</w>\ngo to\nang erous</w>\nbe ale</w>\nw tc</w>\npaneli st</w>\nne x</w>\nlar sen</w>\nemili o</w>\ntab leau</w>\nh itters</w>\nconce ived</w>\nameric ani\nor tega</w>\nmar di\nÑ ĥ\npain tball</w>\nthir sty\nnew yorker</w>\netis ation</w>\ngo ss\nwe aker</w>\nu gh\ntro ll\nhar ga</w>\ndu al\nght ning</w>\nat ine</w>\nðŁĺİ ðŁĺİðŁĺİ</w>\ncook out</w>\npyrene es</w>\npo ss</w>\nauthent ication</w>\nsports wear</w>\nyun ho</w>\nkir o</w>\narchi pel\nshen ko</w>\nren der\nnov ation</w>\ndivin ity</w>\nðŁĳ £</w>\nsu fi</w>\nhumb ling</w>\nge opol\ndevote es</w>\nwait ress</w>\ntr ough</w>\npy ro\ni ba</w>\nbl ing\ngra f</w>\nepilo ts</w>\nbt r</w>\nof tball</w>\nbas king</w>\ndomin os</w>\nso om\nr ath</w>\nsher yl</w>\nqu el\nastronom ical</w>\nwel d</w>\ntrack list</w>\nsig nee</w>\nslee pless</w>\ncom man\nch ron</w>\nsumm on</w>\npure michigan</w>\ncri spr</w>\nsli p\nla gi</w>\nra q\num u</w>\nthal ap\nchar med</w>\nscru mp\nquad copter</w>\nski p\npeter sen</w>\nmun i</w>\nðŁĮ ¾</w>\nmon aghan</w>\ntra ys</w>\nick ed</w>\ncanad aday</w>\nte gr\nï¿ ½</w>\nhot ness</w>\nheavy metal</w>\nab ar</w>\ngop debate</w>\naz ul</w>\nspider man\nsun flowers</w>\nľ ë\nweb comics</w>\nbar d\nÐ ²\nnichol as\nslu sh</w>\nram an</w>\nmark ham</w>\nffici al\nff ler</w>\níĬ ¸</w>\nple ss\nanush ka</w>\nto to</w>\nsk aters</w>\npro wrestling</w>\ncompet es</w>\nay ala</w>\nmyster y\nthr ills</w>\nmp g\nindepend ently</w>\ny ul\nimper ative</w>\nformid able</w>\ntire less</w>\nst acking</w>\nton gues</w>\nmal tese</w>\npot ts</w>\nmat ti\nchar ting</w>\nchill out</w>\nsuper nova</w>\nome o</w>\nsky sports\nnu tty</w>\nðŁĹĵ ï¸ı</w>\nro han</w>\ninsp ired\nconcier ge</w>\nser ra</w>\nma kk\ngal at\nchi pp\nye v</w>\nì £\nreim bur\nop ul\nkimber ley</w>\ni eee</w>\nbre men</w>\nch itec\nor in</w>\nnak u\nbon kers</w>\nfoo ty\nemer gence</w>\nðŁĨ ĺ</w>\nsti p\nserge i</w>\nzo ey</w>\nai me</w>\nwou ld\ndy es</w>\ndestin y\nvinai grette</w>\ndri er</w>\ncirculare conomy</w>\nan archi\nss r</w>\nsch el\ncin er\ngro om\ndetermin ing</w>\ngar min</w>\ncal ais</w>\nincarcer ation</w>\nbu kit</w>\nno i</w>\nchelms ford</w>\nmckin ley</w>\nchi pped</w>\nbelong ed</w>\ntu mors</w>\nstr oud</w>\nmi i</w>\ninfluen za</w>\nwwen xt</w>\ntun dra</w>\ntele communications</w>\ncat sofinstagram</w>\nt ages</w>\nbeat ty</w>\no du</w>\nml kday</w>\noo per</w>\ndang le</w>\nak ley</w>\ncru mb</w>\nanti gua</w>\nti mbers</w>\nrou hani</w>\nðŁĴª ðŁĴªðŁĴª</w>\nha fi\n... !!</w>\nw cs</w>\ncoo p\nsn c</w>\nlit res</w>\nãĢ Ĭ</w>\nha z</w>\nco z\nk ant\ngreen field</w>\ncur ti\ny ale\nflye agles\nwhat soever</w>\nwor thing</w>\nrou lette</w>\nflyeagles fly</w>\nun da</w>\na inted</w>\nstand ing\nlusci ous</w>\nh pc</w>\neffic acy</w>\nash land</w>\nme ghan\nky wx</w>\nn pr\nbath tub</w>\nac os</w>\nh ani\nmar cor\nman tis</w>\nda isi\nbo ba</w>\nab bie</w>\nmu til\nvi al</w>\nspy der</w>\npo z\ng ti</w>\nel fie</w>\nnigh tw\nmetro id</w>\nanton i\nmad die\ndh ry</w>\ndar lings</w>\nten ds</w>\ntaek wondo</w>\natlan ta\nme ow\nchlo e\nãĥ İ</w>\nym es</w>\nsiber ia</w>\nk con</w>\ngu es\nmar iner</w>\nfac il\nazz le</w>\n[ ...\nhan nover</w>\nbav aria</w>\nvir go</w>\nte uk</w>\nu sps</w>\n) #</w>\nwall a</w>\nsam pson</w>\nneed less</w>\nver bally</w>\nhay ley\nbow led</w>\npi us</w>\nlam pard</w>\nham string</w>\nvol vo\nroad safety</w>\ncho king</w>\nsor bet</w>\na hem</w>\nhealthy food</w>\nbrai ded</w>\nhorticul ture</w>\ncr ative</w>\nche ek\nad do</w>\nthe force\nko ko</w>\nschiz oph\nj ie</w>\nw ada</w>\ntwentyon epilots</w>\nh bcu</w>\npro ton</w>\npau ls</w>\nlou isa</w>\nlat am</w>\nkyr gy\ncom pac\nsd k</w>\nsap i\n?? ?\nliber alism</w>\nep silon</w>\nai den</w>\nw usa</w>\nspra yed</w>\nbaske tball\nkim ono</w>\nblue wave</w>\nali as</w>\në§ Ī\nmug shot</w>\nce c</w>\ndo gre\nad ora</w>\nðŁĵ· @</w>\nkra kow</w>\nintrigu ed</w>\nexhau sting</w>\nastron omer</w>\nven ison</w>\nlady bug</w>\nci v\nbra e</w>\nus m</w>\nbri be</w>\nacup uncture</w>\npembro ke</w>\nke ating</w>\nchi e\ny ad</w>\nt si\nsm i</w>\nsee ding</w>\ngate shead</w>\nlis boa</w>\ngy p\ncanv ass</w>\nðŁĶ´ âļªï¸ı</w>\nop i\nni r</w>\nsoci etal</w>\nly te</w>\nati es</w>\nc sm</w>\nar tery</w>\nal in</w>\naka poor</w>\nabstr acts</w>\nâĢ¦ âĢ¦</w>\nteen wolf</w>\nne we\ntravel gram</w>\nsentim ental</w>\nper ched</w>\nhan del</w>\nho ek</w>\nf ay</w>\ncoordin ating</w>\nanim ate</w>\nman ian</w>\neffor t\njer ky</w>\nf ck\nadri enne</w>\nma bly</w>\ntra ding\nmy el\nspi ro\nsol a</w>\nstor ing</w>\nover drive</w>\nmonday morning</w>\ndream team</w>\npul se\nbon di</w>\nber nie\npgat our</w>\ntri poli</w>\nson am\nplat t</w>\nâļ ¡\nag roup</w>\nîĲ Ĵ\ninv ading</w>\nv cu</w>\nk ell</w>\nÃ± os</w>\nun dead</w>\npod casting</w>\nmercede sam\nmana fort</w>\ncor tex</w>\nque so</w>\nimpecc able</w>\npal mer\nwil doz</w>\nsport sc\nguacam ole</w>\ndispen ser</w>\ncate gori\nstun ts</w>\nper il\ninvit ations</w>\ndune din</w>\nxi e\nachi eves</w>\nsaf er\npre ds</w>\nph an</w>\nknuck les</w>\nk ak</w>\nigno res</w>\nlovemy job</w>\naru ba</w>\nound ation</w>\ndatac enter</w>\nco vert</w>\ngr ing</w>\ncou ple\nØ§ Ø±\nvol i</w>\nmc cle\narti sans</w>\nlu do\nkal am</w>\narom a\nunder taker</w>\nhu la</w>\nwiz kid</w>\ngu mb\ngod frey</w>\nbakers field</w>\nker n</w>\nengine er\ncar ve</w>\npal in</w>\nguaran tees</w>\npe bbles</w>\nb ays</w>\nzi eg\nfin k</w>\nâ¬ĩï¸ı â¬ĩï¸ı\ndown pours</w>\nro chelle</w>\nrasp berry\nðŁĺ ®\ngra phies</w>\nstom p</w>\ncaf es</w>\nari zed</w>\nutt ar</w>\ncal vary</w>\ndri e</w>\ncrusad er</w>\nbus an</w>\ntux edo</w>\nsi u</w>\nseam us</w>\ncul tured</w>\nblan chard</w>\ntown house</w>\nge red</w>\nbutter milk</w>\nflu ctu\nroger federer</w>\nhel i</w>\nðŁ¦ ĥ</w>\nu ous</w>\nram esh</w>\nmu ppets</w>\nemail marketing</w>\nye ss</w>\nbr ice</w>\nri zio</w>\npel o\ndonnein arte</w>\nu rable</w>\ninve stin\nbump ing</w>\nraji v</w>\nsav a</w>\nthro wer</w>\nfore x\no hhhh</w>\nth rust</w>\npull man</w>\nr fid</w>\nsep sis</w>\nle ed</w>\nfri ght</w>\nroun ding</w>\nne b\nph ins</w>\nai sha</w>\nutili zing</w>\nsqu ats</w>\ngold smith</w>\nj ic</w>\nbo ks</w>\nvau s</w>\ni po\nexclu sion</w>\ntari ff</w>\npo kes</w>\nmin al</w>\nland s\nen force</w>\nwashington dc</w>\nor char\ng x</w>\nmar ys</w>\ney our\naussi e\nbak ers</w>\nun popular</w>\nlatin os</w>\nlar ge\npu tnam</w>\nbol o</w>\nwa de\npel o</w>\ndi zz\nob struction</w>\nfla ppy</w>\nweare the\ndepend ence</w>\npajam a</w>\ne te</w>\ny ann\ne wan</w>\ndisc la\na ay</w>\nkar ina</w>\ne ic\nan trim</w>\nw soc</w>\nneg atively</w>\nkai do</w>\nfotogra fia</w>\ndh ru\ncolo ssal</w>\nmcle od</w>\nk wang</w>\nmani pu\nex hilar\nus atoday</w>\nsummer slam</w>\nco les\ntapro om</w>\nunbeat able</w>\nde ma\ntic ks</w>\nk ling\nfil s</w>\ncampaig ners</w>\nà¸ ķ\nbrew ster</w>\naudu bon</w>\nqu ay\nch s\nki gali</w>\nd ler</w>\nstrength ens</w>\nsom al\nsign ingday</w>\ngol ds</w>\npig ment</w>\norche stral</w>\ng q\nlin kin\nðŁı ĩ</w>\nta w</w>\nalgar ve</w>\nho v</w>\near le</w>\ngold fish</w>\nam ig\nex er\nben in</w>\ndru id</w>\nðŁĲ ¸</w>\nshe m</w>\nquat tro</w>\nmer cen\nmen te\nincorpor ating</w>\nbon anza</w>\nstate fair</w>\nen de</w>\nconcep tions</w>\ne es</w>\nâĻ¥ï¸ı âĻ¥ï¸ı\nd son</w>\nfire arm</w>\norb ital</w>\nwe h</w>\nmulti p\nfo b</w>\nrequi em</w>\np light</w>\nthou se\nsa id\noc re</w>\nremem brance\nn old</w>\nchi pping</w>\nbe v\ner t\nca thy\nsy m</w>\nri ggs</w>\nm ley</w>\ndialo gues</w>\nsl ender</w>\nhow l</w>\ngau teng</w>\nwd w</w>\nto bi\nsmo kes</w>\nim plo\nb pm</w>\nad n</w>\nmom basa</w>\ncap sul\nbloom field</w>\nartic ul\ncle o</w>\ngoog led</w>\nflu ffy\nl ard</w>\nen zyme</w>\nve sti\nibra hi\nfl ame\ne mea</w>\nout ages</w>\ndispro por\nble ak</w>\nan sel\nick er</w>\nst louis\nstock market</w>\ngood friday</w>\nsau lt</w>\nstal led</w>\npro m\nep som</w>\nb Ã©\nthe se\nsau ces</w>\nme w</w>\nlit fest</w>\npre d\nre u</w>\nkar ak\nsi enna</w>\nell in</w>\nbio technology</w>\nï¸ıâĥ£ -</w>\ntac tic</w>\nsa in</w>\npor k\nmon za</w>\nka j</w>\nlu sh\ncompart ment</w>\nchang ing\nshraddha kapoor</w>\nfo al</w>\nar tem\ncu ando</w>\ncan ola</w>\nori ente\nme sse</w>\nd ited</w>\nbr c</w>\nbox er\nbbc two</w>\ns st</w>\nment day</w>\nem ing</w>\nde wey</w>\nkof i</w>\nâŀĸâŀĸ âŀĸâŀĸ\nreali zation</w>\nsmo l</w>\ntw ood\nsan je\nflag staff</w>\nber wick</w>\ncor set</w>\ncan ary\nwhistle blower</w>\net ched</w>\ncom posing</w>\nsquee zed</w>\nbow er</w>\nauto desk</w>\nne h\nmathi eu</w>\nba ja\nÅ Ĥ\nhy dra</w>\nda im\nam eri\ninsi sted</w>\nmer lot</w>\ngar ros</w>\nheart news</w>\ngaine sville</w>\ncut ler</w>\nbo de</w>\nðŁĺī ðŁĺī</w>\nlew es</w>\nscoun try</w>\ng sa</w>\nus u</w>\ncc m</w>\ngod awgs</w>\nphara oh</w>\ncra e</w>\nmor ley</w>\nhyp noti\nf ades</w>\nneur ons</w>\nfu zz</w>\ning co</w>\nhigh landers</w>\nstar k\nvig ne\npac kets</w>\namar illo</w>\nreu ben</w>\ninsul ts</w>\nbas ic\nvec tor\nn me</w>\nac ruz</w>\ntro s</w>\ntransm itter</w>\nðŁĺ ŀ\ninterpre t</w>\nðŁĺ ²\npre quel</w>\nmc gowan</w>\ndis semin\nðŁĴĺ ðŁĴĺ</w>\nmascul inity</w>\nindie gamedev</w>\nali ve\nte t\npe tal</w>\nema iled</w>\nar med\nko o</w>\nhe er</w>\nba ird</w>\nsuper junior</w>\nmetro polis</w>\ndelav in\ndecl ines</w>\nstit utes</w>\nÛ ģ\np tbo</w>\ng lan\ncho res</w>\ne aling</w>\nchri ssy</w>\nste mc\nvi an\nassassin ated</w>\npron ounce</w>\nilleg als</w>\ndiscover y\ncav ill</w>\nfri fotos</w>\nf al</w>\nso i</w>\nsabot age</w>\nt int</w>\np dc</w>\nðŁİīðŁİ Ī\nãĤ Ĭãģ\nji o</w>\nendeav or</w>\nin sig\ncommit tees</w>\nshe arer</w>\nme tz</w>\nmar rying</w>\nh dd</w>\ng by</w>\nfre t</w>\ntri sh\npu l</w>\nscrip ted</w>\nsa ki</w>\nl w\nke ye\nshim i</w>\nnan aimo</w>\nca h</w>\nÃ «</w>\ntem pered</w>\nici an\ndu gg\ndish washer</w>\nair field</w>\ns rugby</w>\ngr inch</w>\ny st\nr ms</w>\nmahat ma</w>\nlan kan</w>\ndisc ar\ndige stion</w>\nno des</w>\nl ls</w>\nom ic\ngu tter</w>\ntis garh</w>\nfeder ico</w>\nelection day</w>\nbo he\nmaster card</w>\nfire ball</w>\nâľ Ķï¸ı\noy ster\np ong\ndo k\nen route</w>\nm vc</w>\nbeat the\nali stair</w>\nshu b</w>\nsh aming</w>\ncherno byl</w>\nghi bli</w>\nthe s\npin ion</w>\nd bs</w>\nsal ts</w>\nic tion</w>\nepi ph\nnc pol</w>\nin convenience</w>\nwhit ley</w>\ninspec ting</w>\nwood ley</w>\nwi ener</w>\nskil let</w>\nno les</w>\nm ca\nh ina</w>\na sha\nwilling ness</w>\nwell ness\ntam ed</w>\nshow time\ndis advantaged</w>\nber nat\nus n</w>\nmission aries</w>\ncoun selling</w>\narrog ant</w>\nquant itative</w>\nleg alization</w>\nho dge</w>\nenergye fficiency</w>\ncameron dallas</w>\npos sessions</w>\np bb</w>\nharris burg</w>\nv g\nhindu ism</w>\nhappy thanksgiving</w>\nfi b</w>\nre acting</w>\ntweeta picture\npol iti\nmu ppet</w>\nhur rah</w>\npac e\ncoast guard</w>\nguar ded</w>\nas am\npar ry</w>\nfore very\nx q</w>\noom f</w>\nke anu</w>\nj ind\nri st</w>\ncustomer service</w>\nsac red\nðŁĺ º</w>\nton er</w>\noccur rence</w>\nmat u\nval dez</w>\nred d</w>\nis ak\npower rangers</w>\npe asant</w>\nraj ini</w>\nabra ham\ne mil</w>\ncar do</w>\ntr il\nhair styles</w>\nobsole te</w>\nsam pler</w>\ndirec tive</w>\ndelavin kisses</w>\nver ton</w>\nglo s</w>\nsp ay\npaler mo</w>\ncom ets</w>\nman ziel</w>\nchicag of\nski pped</w>\npic torial</w>\nh ant\nb mi</w>\na ol</w>\nre opens</w>\npad dling</w>\ndevo s</w>\nfra ud\nbas eline</w>\nque ues</w>\nsp ired</w>\nsn are</w>\neu ve</w>\ndescri ptions</w>\ndaisi es</w>\nca ching</w>\ngall eria</w>\ntri mmed</w>\nstin o</w>\nrecy cla\nic ular</w>\nbir ken\nraw lings</w>\nfli x</w>\nchic as</w>\nb gt</w>\nlik eli\nargy ll</w>\nthel ove\nga ston</w>\nbl anca</w>\nha k</w>\nf one</w>\nsailor moon</w>\nh aci\nima c</w>\nfl yn\nde can\nbel les</w>\nap ic\nzo g</w>\ntaun ton</w>\ncon stance</w>\nlasag na</w>\nker nel</w>\nin ka</w>\nhar bor\ncollec tively</w>\ncalcul ated</w>\nav ille</w>\nshil pa</w>\npur du\ngi mm\nfun er\na est</w>\npembroke shire</w>\nnighting ale</w>\nn unes</w>\nhyper tension</w>\nhu bert</w>\nsli ders</w>\ninfer tility</w>\ncomm ended</w>\ntransat lantic</w>\nmetr ical</w>\n!! @</w>\nÅ Ł</w>\nss g</w>\nbac ca</w>\ninver ted</w>\nfun factfriday</w>\nit ans</w>\nalbu m\nacqu ainted</w>\nri er\nwhel an</w>\nsar ab\nmu e</w>\nsnoo ze</w>\npi ff</w>\nagre eing</w>\nsp itting</w>\njer maine</w>\nn ye\nâľı ï¸ı</w>\nam bush</w>\nze ph\ncon greg\nunivers ity\ns app</w>\nwann abe</w>\npat rice</w>\nib d</w>\ndo glo\nfri dges</w>\nsun d</w>\nking ston\nar gon\nkam en</w>\nhardro ck</w>\nds ley</w>\ndo lores</w>\nì °\nota ku</w>\npi ping</w>\nbe having</w>\nâŃĲï¸ıâŃĲï¸ı âŃĲï¸ı</w>\nblue bird</w>\nan sari</w>\nteapo t</w>\nfire work</w>\ncro p\nlog ans</w>\nty ped</w>\nthick ness</w>\nig ers\nc fp</w>\ndys functional</w>\ncontra sting</w>\net ty</w>\naston martin</w>\ntx st</w>\ndra grace</w>\nat tributes</w>\nmarath on\nmanu scripts</w>\njohn stone</w>\nðŁĺ± ðŁĺ±</w>\nbo er</w>\nay u</w>\naru gula</w>\npoo rest</w>\ncon du\nassu mption</w>\nanag h</w>\nno h</w>\ndelav in</w>\nsit ter</w>\ng Ã¶\nmor ow</w>\nkick start</w>\ncom i\ngl acial</w>\nghe ad</w>\nba in\nker shaw</w>\nen dof\nfre ud</w>\nom at\ni af</w>\nhu g\nsign up</w>\neach other</w>\ndefin ite</w>\ntu bing</w>\nshak ira</w>\nðŁĳı ðŁı½\nuu uu</w>\nsw in</w>\nsham bles</w>\nol as</w>\nsk ell</w>\nbrit ain\nkn w</w>\nclu tter</w>\nom y\nj ens</w>\nhang ed</w>\ncity scape</w>\nscra ps</w>\nun locking</w>\ndead liest</w>\ner no</w>\nbreast cancer\na it</w>\ninspec t</w>\nfu ri\nðŁĴ Į</w>\nku d\nju le\nor ah</w>\nmi ds</w>\nm dt</w>\nbur gring</w>\nr attle\npu sa</w>\nstal k\ncle ans</w>\niss ance</w>\nz ek</w>\nworth it</w>\nnam eis\nmusko ka</w>\ncouncil man</w>\nurban art</w>\nbar rac\nun solved</w>\ntu l</w>\ng ita</w>\nwhite board</w>\nsoy beans</w>\nem ent\ncont i</w>\nsaturday motivation</w>\nconveni ently</w>\ndoc king</w>\nt ado</w>\nâı ©</w>\nsp ino\npuppy love</w>\npo f\nfabric ated</w>\nrobb ers</w>\nadop ts</w>\nti fied</w>\nkk r</w>\nindulg ence</w>\nnotic eable</w>\nmacqu arie</w>\nchap el\nsensu al</w>\nki ko</w>\nmelan oma</w>\nlore tta</w>\nli ance</w>\nab en\nsp lus</w>\nga al</w>\nac ele\nlib dems</w>\ncompar isons</w>\nðŁĮ µ</w>\nrhy thms</w>\nmer y</w>\nen capsul\nnap ier</w>\nðŁĳĮ ðŁĳĮðŁĳĮ</w>\nðŁĳ Ĳ</w>\nplat z</w>\nfre sno\nre formed</w>\nran bir</w>\nel it\nthe best\nbhu shan</w>\nvin nie</w>\nimpro vised</w>\ns ittin</w>\nre created</w>\ne ba</w>\nec ker</w>\nac rob\npon te</w>\ncor d\ngi ddy</w>\neur usd</w>\nfe ver\nintu ition</w>\ngar i\ndum mies</w>\nbud weiser</w>\namend ments</w>\nte tra\nsch nit\nay as</w>\nmar ys\nci st</w>\nk ani\nker mit</w>\nðŁĺ±ðŁĺ± ðŁĺ±</w>\ntin ker</w>\nstrol ling</w>\ndi visional</w>\nniger i\nomin ous</w>\nmenstru al</w>\nkar ab\nk hy\nbw fc</w>\npan handle</w>\nl illi\nwell er</w>\nstra pped</w>\nson the\ntransfer ring</w>\nethe real</w>\nsne aks</w>\nru dol\ngab les</w>\njac king</w>\ncin code\nfor tune\ncanadi ens</w>\ncon for\nab normal</w>\nfrank lin\ntit a</w>\nmu la</w>\npersi st</w>\ncu ties\nki el\nðŁĩ± ðŁĩ\nher mann</w>\naw k</w>\nfi asco</w>\nko to\nwe ta</w>\nhi ker</w>\nbudd y\npreven tive</w>\nmcgra w</w>\ngame boy</w>\nforsy th</w>\ntop shop</w>\nsi ob\nsad h\nin tram\nfollow art</w>\nso aps</w>\ndragon ball\nou x\nmorri son\nà¹ ĥ\nlu bric\nadul thood</w>\nmorri sons</w>\nâļ łï¸ı\nher mo\nta ka</w>\nstall one</w>\nmis use</w>\nteam gb</w>\nra gha\ncon fined</w>\nat y\nhom ophobic</w>\nnw o</w>\nsky news</w>\nho ya</w>\nac rosse</w>\nwi iu</w>\npur Ã©e</w>\njed dah</w>\nðŁ¤ §</w>\nadvis ers</w>\nph ine</w>\nan is\nscrump tious</w>\në° ķ\nc ke</w>\nvin y\nter m\ns dc</w>\no do</w>\nhome school</w>\nvas c</w>\nleop ards</w>\ndebor ah\nillic it</w>\ncur ran</w>\nas roma</w>\nnau ght</w>\nmar ig\nbrand i</w>\nem p</w>\nðŁĺį ðŁĳĮ</w>\nî Į\nsu spend</w>\nlu z</w>\niniti ation</w>\nsch aft</w>\njensen ackles</w>\ncraw ler</w>\npost doc</w>\ndes ks</w>\ntrail blazer</w>\nden omin\ntri x</w>\nno ise\npo et\n± ï¸ı</w>\ns mug</w>\nvol atile</w>\nproof s</w>\npharmac ist</w>\nsardin ia</w>\nmash able</w>\nkim chi</w>\nco ed</w>\nschal ke</w>\ndoo dled</w>\nc sw</w>\nsh ur\nro x</w>\ndo k</w>\nchris brown</w>\nmathemat ician</w>\nab ound</w>\nang elic</w>\nrock ford</w>\nd ole</w>\nyor kers</w>\nms n</w>\ng man\nxavi er\nbor rowing</w>\nmark ings</w>\nlongh orn</w>\nk ja\ndiver ted</w>\nmm it</w>\neuph oria</w>\nay yy</w>\nte a\npa h\nck i</w>\nun cut</w>\nli ven\nky ung</w>\nfan art\nmer ing</w>\nred ding</w>\namo vie</w>\ngri di\nc thulhu</w>\nschol arly</w>\nju dah</w>\nth bewithyou</w>\neu calyp\nðŁĲ ķ</w>\nhert fordshire</w>\ncour troom</w>\nby u\nauc tioned</w>\nple ase\nmar cia</w>\nê° ĵ\nsucce eded</w>\nel as</w>\narvin d</w>\nt lot</w>\nsaig on</w>\nre tt\nra kesh</w>\nfd ny</w>\nas en\nse bring</w>\ngladi ators</w>\nyou know</w>\nv lad</w>\ngol a</w>\npar ap\nÑĢ Ð¸\nsab cnews</w>\none team</w>\noh l</w>\nsun e</w>\nri j\ncd c\nstar gate</w>\nrun down</w>\nplat o</w>\nph c</w>\nchat ter</w>\nra viol\nmn f</w>\nmand ala</w>\nli et</w>\nà¸ ķ</w>\nmari a\nhun gover</w>\nconsoli dation</w>\nfer rell</w>\ntradition al\nilove art</w>\ngal ap\nðŁı Į\nque zon</w>\nespa Ã±a</w>\nðŁĩ¨ðŁĩ Ń</w>\nho bby\nsteam boat</w>\nmali gn\nguil lau\npro hi\nits me\níĥ Ģ\nin scription</w>\nal z</w>\nmari an\nk ade</w>\nmm on</w>\nadju sting</w>\nne sts</w>\nintern ally</w>\nci r</w>\nvik ram\nmal ala</w>\nk ph</w>\nfel icia</w>\nthe real</w>\ncap tivity</w>\nat is</w>\nmarcor ubio</w>\nkale ido\nche v</w>\nmano j</w>\nle more</w>\ngent ri\nvi ps</w>\ntro pe</w>\n\" âĢĶ</w>\npair ings</w>\nmal nutrition</w>\nfr ay</w>\ndesig nation</w>\nbrun omars</w>\naz e\ntor rential</w>\npan zer</w>\nga il\nunder the\nthe ological</w>\nschizoph re\ndazz le</w>\nfreder ic</w>\nmo par</w>\nad illa</w>\nso ggy</w>\nra un\nmedi ocre</w>\ncolo rec\ni fe\np inst\nblu ef\nÂ ²</w>\nworld water\ngir oud</w>\nclar inet</w>\nad olf</w>\ntar antino</w>\nreceip ts</w>\nassu mp\nðŁĳ Ł</w>\ncoffe es</w>\nâľĬ ðŁı¾</w>\ndu plex</w>\ns of</w>\nr x\nlin o\ntimber wolves</w>\npan dit</w>\nmo tm</w>\ne ga</w>\nay ama</w>\nach s</w>\noutsi der</w>\nll en\nco er\ntil ly</w>\ncheese burger</w>\nma ds</w>\nple dis</w>\nemp ty\nnational parks</w>\naz iz\np mi</w>\njun kies</w>\nf ener\nsq n</w>\nÃ¨ s</w>\ngener ation\ncleop atra</w>\nbhuban es\nmosqu es</w>\nty free</w>\npopp ins</w>\ntw c</w>\nor well</w>\nn age</w>\nka whi</w>\nhol low\ndal ai</w>\nÂ¨Â¨ Â¨Â¨\nou ro\nm health</w>\ngi on</w>\naz o</w>\nvis as</w>\nreneg ade</w>\nre ic\nw sop</w>\nðŁĴļ ðŁĴĽ</w>\ne chel\ntox icity</w>\nmÃ¼ n\nbun k</w>\nstimul ating</w>\nasth our</w>\n\\ '</w>\nep h</w>\nende mic</w>\ncn bc\nshrin king</w>\npeabo dy</w>\nmichel angelo</w>\ncan yon\nwal e\nsu mi</w>\nsi ders</w>\ninu it</w>\n? .</w>\nprofession alism</w>\ndr acing</w>\nplat oon</w>\np ons</w>\nout bound</w>\nmaple leafs</w>\nde sol\ncen cy</w>\na than\nver ma</w>\nru bbing</w>\nok an\nðŁĳ ł</w>\nmull ins</w>\nauthent ic\nÅ į\nalman ac</w>\nga ia</w>\nbb q\non imo</w>\nke h\nty a</w>\ntou ts</w>\ny av\nre posit\n, .</w>\nwi ght\nse eyou\ncal lof\ndone sia</w>\nbar gaining</w>\ngr anth\nsd su</w>\namphi theater</w>\np su\nre watching</w>\nwine tasting</w>\npeak district</w>\ndete cting</w>\nthur man</w>\nphe e</w>\nèª ķ\nu mich\nre r\nsculp ted</w>\ngo le\nname sake</w>\nðŁĶ ģ</w>\nserv icing</w>\nbau gh</w>\npu gh</w>\npen cil\ndar th\nmunch kin</w>\nat orium</w>\nten ers</w>\nsun y</w>\nrolling stones</w>\nmag ing</w>\nstar rer</w>\ni dris</w>\nfe instein</w>\nag ron\nâĺºï¸ı âĺºï¸ı</w>\nsupervis ed</w>\nchamele on</w>\naggre gate</w>\nsucce ssive</w>\nmo gul</w>\ninst yle</w>\npol dark</w>\ncustom e\nohio state</w>\nha ya</w>\nci des</w>\nbroker age</w>\nangel ou</w>\nfifa wwc</w>\nde forestation</w>\nal ton\npam ph\nhu gged</w>\nho bo</w>\nchange able</w>\nku ber\nbur roughs</w>\ndemon etisation</w>\ncape cod</w>\nvers atility</w>\nor ice</w>\nle ila</w>\nwomenin science</w>\ntu a</w>\nhe dges</w>\nembarrass ment</w>\nali fe\nso ars</w>\nni ghter</w>\nhy mn</w>\ngi pp\nchas u\ntech s</w>\nni all\nk illa</w>\nhi ka</w>\ncam els</w>\nvalu e\nÂ ¢</w>\nsc oops</w>\nmah moud</w>\nclu sive</w>\nadri ana</w>\npac o</w>\noz il</w>\nun as</w>\ntransl ations</w>\nwhispe rer</w>\ns bi</w>\nbu xton</w>\nbio tics</w>\nindi ffe\nken ney</w>\nk lar\net ching</w>\nbarra best</w>\ninst ability</w>\nse ine</w>\nvo tel\nblo gged</w>\nwhis key\nmy space</w>\nt ant\nlan dia</w>\ngive back</w>\nillu s</w>\naw ak</w>\nac ab\nf bloggers</w>\ncloud computing</w>\nblat ant</w>\nsyri ans</w>\nband ra</w>\nsty n</w>\nan em\nke ted</w>\nkar thik</w>\nbarun sob\npin ot\ngu bernat\ngay e</w>\narti ste</w>\ni fied</w>\nconven tions</w>\nhu an</w>\ngeni uses</w>\neeee ee</w>\nfol ly</w>\nsomer ville</w>\npride month</w>\nðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸</w>\nchemo therapy</w>\npaul s\nbak ar</w>\nìĦ¸ë¸ Ĳ</w>\ntaiwan ese</w>\nfol lo\nc ss\nre ign\nnn nn</w>\nfla un\ncatastro phe</w>\niti es\nfrag ments</w>\nextre mists</w>\nym oun\ncar men\neze kiel</w>\nconne cting</w>\nse h</w>\nman ta</w>\nremodel ing</w>\nwe ymouth</w>\nat oms</w>\nce m</w>\nne well</w>\nlu mi\nthe open</w>\nmo c\nmili band</w>\ng land</w>\nz shq</w>\nmag gie\nmani acs</w>\nm sp\nad y\ncre ams</w>\nle anne</w>\ne sta\npy g\naf finity</w>\npray er\ndun bar</w>\nligh troom</w>\nac adi\nwyn onna\nroman tic\nstate dept</w>\nsick le</w>\nwh os\nlam o\net our</w>\nfin ity\nshru b</w>\nshar pen\npun dit</w>\ned on</w>\naf ore\nmar s\njeff ery</w>\nter ps</w>\nmedal list</w>\nkath arine</w>\naccu sing</w>\nta z\nroy d</w>\nfrom home</w>\nconfron tation</w>\nalle gh\nðŁĳī ðŁĳī</w>\nrefresh er</w>\nran veer</w>\nnever land</w>\njo jo\nlu crative</w>\nen am\nca ver\npa edi\nman jaro</w>\nflu ids</w>\nthe ssal\noppre ssed</w>\nmu ss\njoh anna</w>\nØ ®\ncn g</w>\nbuil dthe\nsett les</w>\ns ith</w>\nfu ego</w>\ncl amp</w>\nar ag\npay er</w>\nted x</w>\nmand y\ninter stellar</w>\nfr c</w>\nch and</w>\nb cc</w>\nmo lo\nlen til</w>\njohan sson</w>\ngrims by</w>\nnature lovers</w>\nðŁļ¨ ðŁļ¨ðŁļ¨</w>\nshin de</w>\nx in</w>\ninternational dayof\ntransiti onal</w>\nsat a</w>\ncad dy</w>\nwo d</w>\nif u</w>\nha ys</w>\nholl yo\nj ang\nir c</w>\nco im\ngrad able</w>\n\" \"\nðŁį ´\nà¦ ¾</w>\na el\nn yo\nwest lake</w>\ntime out</w>\nsof i\nphenom ena</w>\ncultiv ation</w>\nag no\nun armed</w>\nso t\ncon j\ngen o\nroyal navy</w>\nnutriti on\nfair mont</w>\nti relessly</w>\nsn g</w>\nre ty</w>\nmic a</w>\nlu cent</w>\nslo ane</w>\ndroo l</w>\nriz al</w>\nod ell</w>\ncritici zed</w>\n. '\"</w>\nla ze</w>\ndeser ted</w>\nco der</w>\npra s</w>\nl illian</w>\nitiner ary</w>\ndav y</w>\nan ap\nwhi pping</w>\nhobo ken</w>\nkare ena</w>\nçľ Ł\nvi us</w>\nter n\nnan tucket</w>\nmis understood</w>\nbu laga</w>\nst ant\nchin ook</w>\nz am</w>\nreli es</w>\nd ss</w>\ned mond</w>\nsket chy</w>\nm ell</w>\nfe x\nrec tor</w>\ndist ill\nday dream</w>\nwine maker</w>\nri pley</w>\nbillion aires</w>\nhel ene</w>\nati f</w>\ncul prit</w>\nbertr and</w>\nwou ldnt</w>\nma pped</w>\nv ak</w>\ngla dly</w>\nparliam ent\nkidlit art</w>\nware ness\ngoli ath</w>\nâĨ ĵ</w>\nview point</w>\ntat ted</w>\nfu ls</w>\ndor sey</w>\nang lers</w>\nli ds</w>\nki ya</w>\nbow les</w>\nbe h</w>\nb ite</w>\ncompati bility</w>\nance stral</w>\npro x\nbeha ved</w>\ngubernat orial</w>\nch field</w>\nsab an</w>\nz h</w>\nteen y</w>\nshibu ya</w>\nholli day</w>\npan cy</w>\nâĿĦï¸ı âĿĦï¸ı\nseun gri</w>\n? ,</w>\nðŁĩ¦ ðŁĩ·</w>\nim itation</w>\nimpac tful</w>\nany i</w>\ngene vie\naÃ± os</w>\nbate man</w>\ngli der</w>\naf ar\nra sheed</w>\neffor tless</w>\nsh war</w>\ndach sh\ner un</w>\nat os</w>\nkin i</w>\nch d</w>\nkha ki</w>\nk lin</w>\nfelici dades</w>\nbel o</w>\nas l</w>\nto ppers</w>\nfin ley</w>\nstac ey\nrigor ous</w>\nkar ting</w>\nle ppard</w>\ncar michael</w>\nbe ret</w>\nc se</w>\nak hi\nmer ingue</w>\nab an\nha ke\nger i\ner jee</w>\nre sto</w>\ncomm anders</w>\npr it\nfl or</w>\nad ven\nex termin\nremain der</w>\nå Ĳ\nes g</w>\nmartin o</w>\nlulla by</w>\n| @</w>\nmi gn\nin store</w>\nbig bang\ncor di\ncau ley</w>\nante bellum</w>\ndg ate</w>\ncro ck\nspan dex</w>\nscaf folding</w>\nore os</w>\nê°ĵ ìĦ¸ë¸Ĳ</w>\npom ona</w>\nma uro</w>\nuni versi\nre mi</w>\naf ootball</w>\nt ant</w>\nsm alls</w>\nne h</w>\nworl do\ntropic al\nmor ph</w>\njav elin</w>\ngla r</w>\narqu itec\nreminis cent</w>\ntu bs</w>\nspide y</w>\nmake u\nsyl la\nprogressi ves</w>\nblo t</w>\nshor ten</w>\nkeep in</w>\nch ak</w>\nang st</w>\nsuper food</w>\ndecad ent</w>\nston y\nneuro logical</w>\nar boretum</w>\nann ak\nfe ma</w>\nper cu\ndis respectful</w>\nsmall biz\nlo x</w>\nco om\nc sc\nbs bi\npre valence</w>\nhim ss</w>\nesp an\nmo ga\nfr ampton</w>\nsky map</w>\nmas se\nlevi athan</w>\n( ).</w>\nnoctur nal</w>\ncar ameli\nang or</w>\namne sia</w>\noutsi ders</w>\nshe alth\nrhin o\nant ag\nag io</w>\nðŁĴ° ðŁĴ°\ntake me\nkab addi</w>\nc si\nm sh\ncoch rane</w>\nthessal oni\nsil a</w>\nha us\ndu sting</w>\nobe se</w>\nmack lemore</w>\nmani sh\nlen in</w>\nm dc</w>\ngro wn\nshef field\ns rs</w>\nke le\ncar son\nch um</w>\ndah lia</w>\ncan tore</w>\nopp o</w>\nhow ling</w>\ncyber crime</w>\nsur realism</w>\nsc ran\nfa iz\nthre n</w>\nrac ists</w>\nr out</w>\npk not</w>\nse mana</w>\nsin i\nmc cull\nma chi\nalfon so</w>\ny b\nsar dar</w>\nkend rick\nden g</w>\nreci pro\non f</w>\ndoom sday</w>\nbri bery</w>\ncustom iz\nart is</w>\nc pi</w>\nðŁĻĪ ðŁĻĪ</w>\nsla va</w>\nlet te\nen s\nâĿ¤ï¸ı ðŁĺĺ</w>\ncra yon</w>\nad an</w>\ntr c</w>\nmigr ate</w>\nsimp son\nrow ers</w>\nking sley</w>\nfarmers market</w>\nshee han</w>\nne phe\nbor non\ncar ton</w>\nmic key\nall ure</w>\nu lu\nsli pknot</w>\nheb do</w>\ngui do</w>\ndog celebration</w>\nonline marketing</w>\nacceler ating</w>\n) ..</w>\norigin ated</w>\nmacar oni</w>\ned tech\nout field</w>\nmit z\ndisc us</w>\nadverti ser</w>\nman or\nha shi</w>\ndescri p\ncap ita</w>\nful bright</w>\nrecep tor</w>\ncon n\ncon ey</w>\nspion age</w>\nr attle</w>\npre st\nu li\nblog post</w>\nacker ay</w>\n) âĢ¦</w>\nred velvet</w>\nmat th\ninspir ing\nb sd</w>\nker ri\npo con\nmil lar</w>\nre pur\naccent ure</w>\nä ¹\nram bo</w>\nragnar ok</w>\ndele ting</w>\nbritish museum</w>\npat ory</w>\nleip zig</w>\nflori an</w>\nsci fi\nin ers</w>\nbr ate</w>\nyo y</w>\nmelis sa\nab er</w>\nma sa</w>\npo te</w>\nmosquit oes</w>\ntranspl ant\nr pa</w>\n; ))</w>\nbast ille</w>\nyl an</w>\njoye ux</w>\nmelo dic</w>\ncap tions</w>\natri st</w>\nroch dale</w>\ngott i</w>\npew die\ncuties aturday</w>\nwho is\naqu aculture</w>\ntiv a</w>\nsp el\nhe ss</w>\nha ji</w>\nfred die\nco per\nbrand o</w>\nv k</w>\nphoto book</w>\n* ,</w>\nmy dayin\nmicha ela</w>\nbrune i</w>\nsr ini\nin te</w>\nÄ ±</w>\nde ol</w>\nd fc</w>\nsepar ately</w>\nbun d</w>\nve sts</w>\nto c\nme ck\nrein forced</w>\nconstra ints</w>\ncar roll\nsq ft</w>\nre ver</w>\ncam per\nbird man</w>\nin action</w>\ngener ators</w>\ntriumph ant</w>\npe sts</w>\no vo\ngy pt</w>\nal amo\nsc aled</w>\nsuresh pp\nsd n</w>\nis mo</w>\ngi os</w>\n) @</w>\njustic eleague</w>\nrestaur ant\ngab i</w>\nden gue</w>\nnext gen</w>\nexemp li\nap ex\ninspir ational\ndown side</w>\nkid z</w>\nu pl\net na</w>\nalvar o</w>\nfel dman</w>\nbar net</w>\nm ha</w>\nes ch</w>\nbloo ded</w>\n>>>> >>>>\nkan i</w>\nho fficial</w>\ncasablanc a</w>\nbir ds\nty ga</w>\nsw amp\no day</w>\nnew castle\nnb ap\nci sion</w>\ncho ols</w>\naf lo\nne p</w>\nmon ton</w>\nak b</w>\nsuper model</w>\ndown time</w>\nth os</w>\nsc wx</w>\nsnoo py</w>\nag greg\nyo ke</w>\nnor cal</w>\nwe tt</w>\nprolon ged</w>\nme tast\nbeat er</w>\nf ta</w>\nt lap</w>\ndisgu sted</w>\ny h</w>\nvoice over</w>\nitch y</w>\nip c</w>\nðŁİ ¾\nphe asant</w>\nstra its</w>\nram pant</w>\nj g\nfer til\nassu res</w>\nfortun es</w>\nsal inas</w>\nliz ards</w>\nkett le\ni bs</w>\ncyn thi\nhe g\nmc cr\nsoccer oos</w>\nhappen ings</w>\ncor den</w>\nðŁĺĤ ðŁĳĮ</w>\nt ches</w>\negre t</w>\nwolver ines</w>\ncongratul ated</w>\nho gg</w>\nbott ling</w>\nwr i</w>\nfer ri\nbo sch\naf ire</w>\nog den</w>\ns jo\nj dm</w>\nsv t</w>\ncon tex\ntol lywood</w>\nmin k</w>\nme se</w>\nsuper sonic</w>\nop oulos</w>\nå ¸\nâĶ ģ\nknuck le</w>\ngu ise</w>\ngam i</w>\nchu cky</w>\nz inger</w>\nradi al</w>\ncompla ined</w>\nbo da</w>\nfe tal</w>\ndiscipl ines</w>\ncor ro</w>\nðŁĩ®ðŁĩ ¹\nop ted</w>\nfiltr ation</w>\nad nan</w>\nem cee</w>\nmi stre\ninsom ni\nfer gus</w>\ntra jec\non don\nmed tech</w>\ntanger ine</w>\nmadra s</w>\ngru e\ncab s</w>\nz hu\nsureshpp rabhu</w>\ninsul ated</w>\nday swild</w>\npp m</w>\nband ai</w>\nv day</w>\ns ff</w>\nsqu id\nlo thing</w>\nnot dead</w>\nexpre ssive</w>\ncu ll</w>\nala stair</w>\nx u\nup front</w>\nfish ers</w>\nen es</w>\num d</w>\ndis missal</w>\nsti er</w>\nsel s</w>\nlu st\nre active</w>\nprote ster</w>\neyel ashes</w>\nal im\ngoo de</w>\ngre eng\nda ir</w>\ncom pen\nanush ka\nproto typing</w>\nma pu\nbear ings</w>\nðŁĲ Ł\nfor me</w>\nbsbi botany</w>\ntimo thy\nout skirts</w>\nam bed\nare tha</w>\nwend ell</w>\nstre aks</w>\nni m</w>\nk pk</w>\nsne e\nfit ter</w>\nquo ta</w>\np ate</w>\nwin ning\nðŁį Ń</w>\nsho pping\nma inst\ncul ver</w>\nste vie\nmcfad den</w>\ncounter parts</w>\ngren fell</w>\nfol som</w>\ndor set\ntech crunch</w>\nâ¬ ħï¸ı</w>\ntip tuesday</w>\nus l</w>\ntre x</w>\ngeor gie</w>\nranveer official</w>\nlic ks</w>\nse wn</w>\nk f</w>\n' âĢ¦</w>\njap s</w>\np ate\north op\nfe sta</w>\nstra s</w>\nmon tal\nhammer smith</w>\nfore most</w>\nwido ws</w>\nmad re</w>\nite z</w>\nmito chondri\nlig ans</w>\nz ona</w>\ncari bou</w>\nm ss\nandre i</w>\nweather channel</w>\ngh c</w>\n: ...</w>\nta ft</w>\nawe ather\nal isation</w>\nbru tal\nbliss ful</w>\nnik ola</w>\nmal icious</w>\nq m</w>\nmpg vip</w>\nbro die</w>\nbl itz\napplau d</w>\ndri bb\nv ague</w>\ndog go</w>\ntransl ating</w>\ninterpre ted</w>\nhat ched</w>\nge tyour\nbenefici aries</w>\nspar ring</w>\ncaes ars</w>\naw illiams</w>\nla hat</w>\nbro ke\nti mp\nvirtu es</w>\nrel ying</w>\npie tro</w>\nk tn\nici sts</w>\npab lo\nlou i\na ag\npn pp\ncha st\npul ses</w>\nfini sh\nusair force</w>\ntype writer</w>\nthomp son\ndog s\nut to</w>\nãģ į\nsand al</w>\nnew ly\ndo ge</w>\nz w</w>\nwan kers</w>\nne gr\nmu cha</w>\ndetermin es</w>\nblack fish</w>\nsk unk</w>\nmu ps</w>\ninstru ment\nphy to\ndaysto go</w>\nskin ned</w>\nhai der</w>\ncon ten\nðŁĲ¾ ðŁĲ¾</w>\nwe iler</w>\nundoub tedly</w>\nchair ing</w>\nwall is</w>\nsh ard</w>\nzind abad</w>\nadul t\nabsor ption</w>\npre sto</w>\ndeplo ying</w>\ndrum mond</w>\nbattle front</w>\nseag ulls</w>\nhow dy</w>\njuda ism</w>\ndes de</w>\npart ition</w>\nâľ Ŀ\nno logy</w>\nnational bestfriend\nlesn ar</w>\nfilm fare</w>\nco asts</w>\nchristen sen</w>\nac an\nmb u</w>\nco pped</w>\nru bble</w>\nsw c</w>\nfun nier</w>\nfar ther</w>\nwhere as</w>\nnano technology</w>\nwith stand</w>\npil low\nbow ers</w>\nto pe</w>\nit ly</w>\ncon fit</w>\nma kar\ncomfor ts</w>\nbo sh</w>\ncli pper</w>\nbal la\nsti k</w>\nmil b</w>\nsafe guard</w>\nmusi que</w>\neas port\nya z</w>\npad ded</w>\nbad er</w>\nfore ign\nchop in</w>\narchi ve\no ka\ntran sporting</w>\ntml talk</w>\naj it</w>\nconsequ ence</w>\nsc roo\nff o</w>\ncollabor ated</w>\npug chat</w>\nye mi</w>\njav ed</w>\nau burn\no of</w>\nma w</w>\nsau cer</w>\nmiti gate</w>\ni les</w>\nevangeli st</w>\nter ie</w>\nre cl\nindic tment</w>\ncat a</w>\nbright ness</w>\nmay the</w>\nwhim sical</w>\nun lv</w>\nkey word</w>\ncu min</w>\nmed way</w>\nwest world</w>\ntra w\nim posing</w>\nform ity</w>\ncoul ter</w>\nab z</w>\nny pd\ngrass i</w>\nkel sey\nqld pol</w>\nclock work</w>\nf dr</w>\ndi anne</w>\nâĺ ĳ</w>\nad h</w>\np ann\nbra vely</w>\nae ge\nun lawful</w>\nver di</w>\npocaly pse</w>\nphar o\nkar la</w>\nreson ance</w>\nma stiff</w>\nla dak\nbu u\nma iled</w>\nhi i</w>\ncraw ley</w>\ntor rent</w>\nmach ado</w>\nliby an</w>\neffort lessly</w>\nfal sely</w>\nq vist</w>\nke ef</w>\ncraf thour</w>\ncheri shed</w>\nval kyrie</w>\ns ari\nkal amaz\nbe he\nðŁĮ Ļ\nth im\nro ddy</w>\ncol trane</w>\nbut chers</w>\nach im</w>\nwk end</w>\nawk ward\ncab rera</w>\n:) )))</w>\nfran c</w>\ndecl an</w>\ncon dos</w>\na ja\npandor amusic</w>\nchar ter\nph ill\nmon trose</w>\nhatch back</w>\nhandic app\ngre aves</w>\neucalyp tus</w>\nut most</w>\nt son\nbur ton\nmid wives</w>\nin cur\nðŁĺį #</w>\nmoo d\ncompre ssed</w>\ntom a\nmust ang\nmo g</w>\nas ana</w>\nte stic\nsho tel</w>\nin sol\ncor sair</w>\nnh q</w>\nben ny\nsm ma</w>\nkap ur</w>\nin con\njon as\nener gies</w>\ndon al\nas ad</w>\nse z</w>\nn pa</w>\narchi ved</w>\nstimul ate</w>\ndo p\nhy d</w>\ngri eving</w>\nãĥ Ī\nron a</w>\nwhy te</w>\ntree house</w>\nss ell</w>\nsand ro</w>\nko bo</w>\nther most\nse clu\nhi ya</w>\nge ez</w>\nmam as</w>\nprisc illa</w>\nflav oured</w>\nfas s\nw old</w>\nmaker space</w>\ncospla y\np tv</w>\nhappy valentinesday</w>\nsequo ia</w>\nlove craft</w>\ngu an</w>\nd tm</w>\nci i</w>\nyoko hama</w>\npos thum\nre q</w>\nðŁĶµ âļªï¸ı</w>\ngalat asar\ndol by</w>\nhamp tons</w>\ndisturb ance</w>\nstone henge</w>\nok c\ndisrup ting</w>\nmonth sary</w>\njun gle\nhead lights</w>\ndu stin\nmicro sof\nhappy mothersday</w>\nko ko\ngra zi\nte sto\nna idu</w>\nmal ay</w>\nari al</w>\nru mb\nab oo</w>\nhar man</w>\ntra pe\nspo ils</w>\nje ho\ngo dly</w>\nlock screen</w>\nz un\npi ous</w>\nma gento</w>\nl enders</w>\nprob able</w>\ncorpor al</w>\nm our</w>\naw al\nsu a</w>\ncall me\nton ne</w>\ngo vin\ndevast ation</w>\nx j</w>\ngear box</w>\nwar lock</w>\nper me\nit ate</w>\ngaza underattack</w>\ndu val</w>\nparas ite</w>\nclement e</w>\nle th</w>\ni va</w>\nfro zen\ntho les</w>\nto bin</w>\ncair n</w>\ns ill\nluc kiest</w>\nconver ts</w>\nst ale</w>\npan cra\neuro pale\nwis dom\nsch ur\nì ¶\nverti go</w>\nbi j\nu bc\nnu re\nrighte ousness</w>\nmt c</w>\nfactor y\nver st\nrevers ed</w>\nhur i</w>\nhee chul</w>\nfab er</w>\nar r</w>\nul ous\nven om\nph at</w>\ngreen ery</w>\nbra dy\nÃ ¦\n: ((</w>\nnever giveup</w>\ndi sha</w>\nmo ta</w>\nhealth care\ndun ham</w>\ndex po</w>\nden zel</w>\nbb ins</w>\nf ics</w>\nwh am\nmc g\neli an</w>\nwat a</w>\nstr alia</w>\ntel lu\npe sky</w>\nspin off</w>\nar moured</w>\nre acted</w>\ndo fficial</w>\nte du</w>\nsag ar</w>\nmor ally</w>\nparalle led</w>\nfi os</w>\ndow ner</w>\ndau gh\nre do</w>\nworld cup\ntari q</w>\nbar ne\nglaci ers</w>\noc cult</w>\nbarbar ian</w>\nher mosa</w>\n!! !)</w>\ny ur\ninter nation\np ss</w>\nsit u</w>\np int\namerican air</w>\nsw am</w>\ndopp ler</w>\nðŁĴĻ ðŁĴľ</w>\ncincode mayo</w>\nle van\nhell enic</w>\nmc ne\nju di\nyu h</w>\nst x</w>\nqu are</w>\nðŁĺĤ .</w>\nsti g</w>\ng els</w>\nmot ley</w>\nhard work\neuro zone</w>\ne ad\nç¥ Ń</w>\nseab ir\nci us</w>\nla id\nalpac a</w>\npresu mably</w>\npewdie pie</w>\nboo ted</w>\nam ari\ntam ine</w>\nsol ace</w>\nbar row\nacade mies</w>\nx ian</w>\nom ination</w>\ndun geons</w>\nb ma</w>\nde ity</w>\nai k</w>\nstab il\nhir a</w>\naffection ate</w>\nving ne</w>\nnew port\nãħĭ ãħĭ</w>\nthir ds</w>\nre tains</w>\naroma therapy</w>\nski er</w>\nni ma</w>\ndo pe\ncr inge</w>\ncon domin\nto or\nanim ator</w>\nsar aj\nseas cape</w>\nminim alism</w>\nlake shore</w>\ncalla way</w>\nberg man</w>\nà¤ Ĺ</w>\nwhisp ering</w>\nstupi d\nri ghtful</w>\nrequ is\nir n</w>\nse va</w>\nut pol</w>\ntuber culo\nsqu ish\nde but\ngovern mental</w>\nchrist ine\nall man</w>\nweap on\ns ito</w>\nbur i</w>\nlo lita</w>\nleaf y</w>\nfu ch\ntin ted</w>\nmck en\na hahaha</w>\nðŁĩµðŁĩ ¹</w>\nrepe al\nne gan</w>\nðŁķ Ĭ\ntail gating</w>\ngame insight</w>\nðŁıŁ ï¸ı</w>\nyaku za</w>\nz t</w>\nti ring</w>\npro posing</w>\nbow lers</w>\ntra itors</w>\nak shi</w>\ncler gy</w>\ncit o</w>\nup sets</w>\ntu scal\nsymph onic</w>\nsil ently</w>\nshu ff\nblack well</w>\nðŁĺĤ )</w>\nko be\nrober to\nri dg\ndc u</w>\nmer ino</w>\nft p</w>\neast side</w>\n. ~</w>\nnb l</w>\nmn leg</w>\nts for\nfrau dul\nca pping</w>\nin my\ngymna st</w>\nston es\nss in</w>\ntwe aks</w>\nshag gy</w>\noak land\ndem sin\nsang ria</w>\nmm va</w>\nhen nessy</w>\ndown ton</w>\nri ghtly</w>\nin it</w>\naga ve</w>\nob last</w>\nnorthe ast\nfriend ship\ndal a</w>\ntro phy\nðŁĳ ½\nmag in\nmargar itas</w>\nê ·\nww fc</w>\nfa sh\ndi ke</w>\ncu d\nchar t\nðŁĳ ®\nrefuge es\njop lin</w>\nn cs</w>\nimp y</w>\nfirm ware</w>\npas cu\nflam in\nhealth tech</w>\nbell letstalk</w>\nw aka</w>\nol ls</w>\nla go\nco wan</w>\nbombar dier</w>\nsh ome</w>\nðŁĻ ħ\nmc master</w>\nna ve\nwell s\nu ta\ntell ers</w>\nmis fits</w>\nkap il</w>\nface off</w>\naf firm\na pro\nwhit epaper</w>\nsuper yacht</w>\nspeci mens</w>\nal located</w>\n... ,</w>\n- __\nka w</w>\ndachsh und</w>\ndjo ker\ns work</w>\nqui ere</w>\nor um</w>\nðŁĲ ł</w>\nsom m\nc mt</w>\ningh our</w>\nskin ny\nlgb ti</w>\ngi ggles</w>\nbreak away</w>\nresear ched</w>\npar ity</w>\nmy al\nms l</w>\nre tained</w>\nsi vity</w>\nmake inindia</w>\nsol ves</w>\ndefam ation</w>\nwal tham\nsri racha</w>\nroad way</w>\nconcep tu\nal in\niw ant\nå Ī\ndel ft</w>\ntender loin</w>\nga ins\nfaul ts</w>\nsw ire</w>\nst ellen\npol lo</w>\ndy ne</w>\nbornon thisday</w>\nasdf ghj\nsq l\nsali m</w>\nadvis es</w>\nvo ip</w>\nìĹĳ ìĨ\nun touched</w>\nshe il\nontari o\nuph ill</w>\nso bre</w>\nde shi</w>\nnov ella</w>\ndu tton</w>\ncraw fish</w>\nØ§Ù Ĩ\nma a\ntw ine</w>\nkal in\nðŁĩµðŁĩ Ń</w>\nye ss\nbrook s\nhoo siers</w>\nton ka</w>\numbrel las</w>\nay ers</w>\nate am</w>\nacqu iring</w>\nsu ction</w>\nÃ¤ n\nwi es\ntari ans</w>\nsoci o</w>\nmat tb\nshepher ds</w>\no so\ncharity tuesday</w>\ns logans</w>\nninj as</w>\nal bat\nby te</w>\nbash ir</w>\ntrampol ine</w>\nmydayin la</w>\ni ja</w>\nbas el\nror y\ngol die</w>\nfi rec\nun noticed</w>\npecu liar</w>\nsch a\nker son</w>\nmour ns</w>\nliquid ity</w>\nqu ipment</w>\nhi bs</w>\nar s\naeron au\nslide show</w>\nsla bs</w>\ndelici ousness</w>\nsk itchen</w>\nhta fc</w>\nfull erton</w>\ncre ighton</w>\naer ob\nprocrastin ation</w>\naz ores</w>\nwhite hall</w>\nuss occer</w>\nmedi ation</w>\ndjoker nole</w>\nand me</w>\num en</w>\nnoxi ous</w>\njo ss</w>\nili fe</w>\nanni vers\nsudan ese</w>\net res</w>\nunder mine</w>\nwhole foods</w>\ndiso be\nkor i</w>\nade le\neli z\ncan ti\nal on</w>\ngymna sium</w>\nsarko die</w>\nmeteoro logist</w>\nyl de</w>\nste en\nstamp collecting</w>\nnas al</w>\nlo tt</w>\nfran ks</w>\nex ol</w>\nack i</w>\ngood year</w>\nanimal rights</w>\ny les</w>\nvio lets</w>\nmm es</w>\ns thel\nra pping</w>\ntu scan</w>\nwai ver</w>\ntur ner\neat local</w>\nnorthe asthour</w>\nanim ations</w>\ntom morow</w>\nt sh\nff ame</w>\nbra e\npe tron\nglam our\nbr yn</w>\nd cs</w>\nbal es</w>\nðŁĶ ¶\nbro v\nbre v</w>\nb ons</w>\nphysi que</w>\ncar ne</w>\nx e\nelix ir</w>\nvol ved</w>\nl oma</w>\nìľ ł\næ ĺ\nvan u\nri gs</w>\nbal ance\nva res</w>\nbon ita</w>\nsprink le</w>\nperfec to</w>\ndi on\nle ak\ncalcu tta</w>\no ba\nd ma</w>\nc mon</w>\ntun er</w>\npneu monia</w>\nbo gus</w>\napolo ge\ncl ough</w>\nbor ne\n)) ))\nrevi ved</w>\no varian</w>\nner f</w>\nc legg</w>\nfan fest</w>\ncho u</w>\nreali zes</w>\nmc n\nli gu\nleg alize</w>\njust saying</w>\nfor ster</w>\nbo sni\nk hi</w>\nin dom\nhei del\nen cryp\nsi ss\ned di\nmar bles</w>\nbrisban e\ny ing\npre paid</w>\nwal sall</w>\ncooper ate</w>\norche str\nmar isa</w>\nho wie</w>\nche wy</w>\nbren ner</w>\nandro meda</w>\ne gan</w>\nsto cki\ncav endish</w>\nag an\nban o</w>\nde ir\ngo g</w>\nbl k\nre thinking</w>\nch ig\nrhe u\nsni p</w>\np eng\nsemin ole</w>\nm swx</w>\nan nex\nlyn da</w>\nlewisham ilton</w>\ncu mul\ntb l</w>\ndolph in\nagu ero</w>\n........ ....</w>\npre lude</w>\nat our</w>\ngr anger</w>\ntoo ting</w>\nro tun\ndis ar\nhome items</w>\nda res</w>\n**** ****\nðŁĳ Ĩ\ncompre h\njin x</w>\nas well</w>\niri e</w>\ncircul ating</w>\nðŁĲ ¥</w>\nover board</w>\ncultiv ate</w>\nrhe tt</w>\noriente ering</w>\nca k</w>\nbal kans</w>\ns itt\njas min\nbritney spears</w>\nro tor</w>\nse aling</w>\ng bc</w>\noc ci\nf as</w>\neman cip\ncom er\nwar time</w>\ntic kle</w>\nson ny\npac es</w>\nlog g</w>\nat rix</w>\nsr p</w>\ng win\ndo bbs</w>\nuz be\nthe wanted</w>\ndru sh</w>\nex tru\nm icky</w>\nhonore es</w>\ndar win\nre dux</w>\nmm j</w>\nram i</w>\njalape Ã±o</w>\nio c</w>\ndo ver\nju ju</w>\nwhit ney\ns eng\nen ly</w>\nau ch</w>\narchipel ago</w>\nvigil ant</w>\nman gal\nwil dest</w>\nparano id</w>\nhal i</w>\nbb ly</w>\nsanc tioned</w>\nreal ms</w>\ncon co\nu ddin</w>\nc sk</w>\nplay time</w>\nlibr a</w>\nsav ag\noc tane</w>\nrec tan\nre turn\npar rish</w>\nmor rha\ncc p</w>\nc mu</w>\nsa iled</w>\nse vent\nro sie\npil ing</w>\nhe w</w>\nboar ded</w>\nseg ments</w>\nneph ro\n( .</w>\ncr ats</w>\nbak es</w>\nðŁį ¸\nback tothe\nsibl ing\nkirk land</w>\nke o\ngu wa\nbre ads</w>\nðŁĺľ ðŁĺľ</w>\nt q</w>\nharas sed</w>\nga u</w>\nwil bur</w>\nj isoo</w>\nep er</w>\nli sam\ntri ppin</w>\nsh ino\nru kh\nbeast mode</w>\ncho a</w>\ninst aweather\nrich land</w>\ngar i</w>\nfe z</w>\ncowboy snation</w>\nfur suit</w>\nk run\na en\nsycam ore</w>\nse gun\nent ennial</w>\ndi h</w>\no ax\ndemsin philly</w>\nðŁĻ Ģ</w>\nsn hl</w>\npen nies</w>\npass words</w>\nma kin\nty e</w>\nd eng\nkni gh\njeep life</w>\nhel pline</w>\na for\nzz zz</w>\nste amy</w>\npic ker</w>\niter ate</w>\nhappen ingnow</w>\nki b\nbloom berg\nmartyr dom</w>\nbul ly\nassor tment</w>\na hora</w>\nzo e\nno i\nillu stri\nagar wal</w>\np sc</w>\nelectr onica</w>\nrecruit er</w>\ngar diner</w>\nrad ha</w>\nnaf ta</w>\ndot net</w>\npi ero</w>\ngeor g</w>\nbel s</w>\nðŁĺĤ ðŁĺį</w>\ntuberculo sis</w>\nrun nin</w>\nmor is\nhaul ing</w>\nev oc\nbre thren</w>\nsha ir</w>\nframe works</w>\na stu\nri gid</w>\nku ma\nkre me</w>\njin nah</w>\ninsu rers</w>\nny u\nf ere</w>\nnol lywood</w>\ngood vibes</w>\n- ...</w>\ntoi le\nsk ril\ninstaweather pro</w>\ncze ch\npa vel</w>\none piece</w>\nnike plus</w>\nfi let</w>\ncav ity</w>\nðŁı½ âĢįâĻĤï¸ı</w>\nðŁİ £</w>\ndra stic</w>\ndail ys\nsiam ese</w>\nre bu\noste o\nlar k\nf re</w>\nsh elling</w>\np Ã©\nglad ys</w>\nðŁıĢ ðŁıĢ\ngusta ve</w>\nsubmer ged</w>\ngrand stand</w>\natt u</w>\nwon t\nf pv</w>\nb ley</w>\njon i</w>\nang ames</w>\nweigh ted</w>\nal ou\nà¤ ¶</w>\nles bians</w>\nf j\nanni es</w>\nam l</w>\ndor ia</w>\ndav in\nbe ta\ncan c\nmadewith unity</w>\nha j</w>\nbad lands</w>\nmu l</w>\nblu ec\npa wn</w>\ncov ington</w>\nneuro logy</w>\nhtt weets</w>\ndysle xia</w>\nthel ove</w>\nne at\nfork lift</w>\nautom ate</w>\nune ven</w>\nmonte ss\nhe in</w>\nha g</w>\nrel ics</w>\ncompetiti veness</w>\ncan elo</w>\nmar tens</w>\nbullet proof</w>\nsk ittles</w>\ng ya</w>\npri mo</w>\nameric afirst</w>\nwoo o</w>\nabor tions</w>\n?? !!</w>\nma che\nld ers</w>\nrl ly</w>\npreli ms</w>\ndirec t\ncour se\nswa in</w>\nsuper cell</w>\nec centric</w>\nsting ray</w>\nple ts</w>\nwil cox</w>\nwest in</w>\nokan agan</w>\nkir an\ncar bo\nbomb ings</w>\nra rest</w>\nbo h\ngaw d</w>\ndi gg\nmo ana</w>\nenti rety</w>\nen closed</w>\ndodge ball</w>\npar ton</w>\nmilky way</w>\nat r</w>\nthorough bred</w>\nre ally\nqant as</w>\nepiph any</w>\nine e\naero smith</w>\nspi eth</w>\nar thro\nell ini</w>\ndu bu\nbra ving</w>\nâļ½ âļ½\nre structuring</w>\nillumin ate</w>\nequ ili\nmp i</w>\nash ton\npony tail</w>\nma scots</w>\nflat tering</w>\ncru m\nast a</w>\nà® °</w>\nstranger things</w>\nbar nab\nØ± ÙĬ\nmake shift</w>\ngot cha</w>\nwill am\ncho irs</w>\nkilom etres</w>\ngho sh</w>\neu than\ndol ly\nun ning</w>\nthe ar\ncre we</w>\nw sw</w>\nj ace</w>\ndis miss</w>\nke an\nho ta</w>\nkh at\n~ ></w>\nthir u\nren dez\nhart man</w>\ntee ssi\ncas ca\nz ah</w>\nhydr ange\nfo d</w>\naw p</w>\nmzan si</w>\nthick er</w>\nnago ya</w>\nne va</w>\nsti que</w>\ncast el\ndam ian\nthere by</w>\nji ang\nale k</w>\nmusic islife</w>\nra q</w>\ncalla han</w>\ngou ache</w>\nsomal iland</w>\nsean hannity</w>\nra heem</w>\nlo se\nelo ve\nwhar ton</w>\nrectan gular</w>\nillustr ating</w>\nhar ne\nauti sma\nscra pped</w>\nell and</w>\ndecre e</w>\nnag pur</w>\nki pp\nso re\nn md</w>\nma as\ngun a</w>\ngart ner\nbel li\nthen ight</w>\nje on</w>\ngendere quality</w>\ngi ver</w>\na el</w>\ngar ments</w>\nne u</w>\nmardi gras</w>\nmar sden</w>\nro wer</w>\npollu ted</w>\ncamer aman</w>\nvin od</w>\nbe asley</w>\ncro c</w>\nji u\nhollyo aks</w>\nanesthe sia</w>\nal les</w>\nste ward</w>\nlati mes</w>\nðŁĩºðŁĩ¸ðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸</w>\ntic ian</w>\ngor ia</w>\ncome dic</w>\nðŁ¤Ķ ðŁ¤ĶðŁ¤Ķ</w>\nnai ve</w>\nsli ons</w>\nł Ī\nbur glar</w>\nðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃðŁĺŃ</w>\nyork shi\nse Ã±\nfan boy</w>\nlau rel\ninci dence</w>\npotom ac</w>\nrober ta</w>\npresi den\npr yor</w>\nos bourne</w>\nw ku</w>\nte me\npal ae\nðŁ¥ º\nre boun\nitu de\nred dish</w>\nk hand\ncoloni alism</w>\nnorth carolina</w>\nðĿ Ĵ\nmanne quin</w>\nlady bird</w>\nta sty\nknowledge able</w>\ng shore</w>\nðŁĮ Į</w>\nà® ©</w>\nqu aker</w>\nsalz burg</w>\nmed alists</w>\nchy na</w>\nbridesma id</w>\nma ori</w>\nro p</w>\noutra ged</w>\nin adequate</w>\ntruck ers</w>\nal ana</w>\nìĿ ¼\nri x\noooo oooo</w>\ncommand ments</w>\nlam beth</w>\naa j</w>\neco friendly</w>\nbla z\nmorecam be</w>\nboun cy</w>\nrou x</w>\nrai ded</w>\nmi zed</w>\nsh c</w>\ngaw x</w>\nlabor atories</w>\nru bs</w>\nrest room</w>\nconsult ations</w>\nca jun\nvirgin i\nso ir</w>\nrev ue</w>\nple in</w>\nwag er</w>\nç ¹\nwe do</w>\ngrowing up\n! ðŁĺĬ</w>\nface ted</w>\nsin ners</w>\nho vering</w>\nti ene</w>\nseas oning</w>\nan ja</w>\nleg go</w>\nil is</w>\nfla x</w>\ndev o</w>\nash ram</w>\nmati sse</w>\nker i</w>\ngo wer</w>\nbo tox</w>\nmar shes</w>\nunh cr</w>\nts m</w>\nopti mus</w>\ndun i</w>\nstu ffs</w>\nso k</w>\norder ly</w>\nn bad\nislam ophobia</w>\nraviol i</w>\nfab er\ncre ds</w>\nwon ka</w>\nin fusion</w>\nover weight</w>\ndaily news</w>\nassi mil\nacol lege</w>\nmedalli on</w>\nkili manjaro</w>\nsti ff\ntham es\nsun ken</w>\nth ard</w>\nmy dubai</w>\nhilari ously</w>\nhan nel</w>\nplu mber</w>\nfair view</w>\nsepar ating</w>\nrasc al</w>\nqui en</w>\nnecess ities</w>\nconfeder ation</w>\nll ll</w>\n: ]</w>\nweak nesses</w>\nbron co\nra ffles</w>\nel ot</w>\nãĤ¸ ãĥ\nadvent calendar</w>\nðŁİ ¹</w>\nstra vel</w>\ntun ic</w>\nk su</w>\nim peach</w>\ne spionage</w>\n! -</w>\ndi ment</w>\ncur rant</w>\nbio de\ncommu ting</w>\nby ron\nðŁĴĵ ðŁĴĵ</w>\nshad ed</w>\ntr uro</w>\ncray ons</w>\nar ne</w>\nh sc</w>\nfre aked</w>\ndram ati\nfle ek</w>\nu cd</w>\nmarl borough</w>\n^ -\ncross ings</w>\nmal o</w>\nblack ops</w>\nbin ance</w>\ncho ked</w>\nchen ey</w>\npl o</w>\nge stures</w>\nval edic\nryan air</w>\nrem ington</w>\nv cs</w>\nmc kee</w>\nec z\nbe gs</w>\nnail art</w>\nmayor of\nhappy fathersday</w>\nwar t\npet itions</w>\nn ingly</w>\nclean energy</w>\nbro x</w>\nsl alom</w>\nexist ent</w>\nab ay</w>\nug liest</w>\ntom p\nstom a</w>\nsel by</w>\ngoal scorer</w>\nben ji</w>\noverwhel mingly</w>\nlan s\nsemiconduc tor</w>\nsouth korea</w>\nre scheduled</w>\nsk yl\nen listed</w>\ndow ski</w>\nsi del\nrosen berg</w>\nnas ser</w>\nwhite head</w>\npri us</w>\nhar are</w>\nen n</w>\nry der\ní Ĥ\nmon g</w>\nclas ico</w>\ntranspor ter</w>\npo tty</w>\nis me</w>\n** ***</w>\nvic e\nsk it</w>\node ssa</w>\nl mp</w>\nher n</w>\nraci ally</w>\npin oy\nparagu ay</w>\nobitu ary</w>\ngo es\nbu cha</w>\nside walks</w>\nangu lar\nun constitutional</w>\ntransiti oning</w>\ni bu\ngu ys\nun packing</w>\noooo oo\nblack girl\nber gs</w>\nÂ ¯</w>\nwordof theday</w>\ntrump train</w>\nthunder bolt</w>\nm si\nfasci sts</w>\nà¤ ¬</w>\nt sk</w>\ncollap ses</w>\nraje sh</w>\nloveis love</w>\nmigr ating</w>\nset back</w>\nðŁĺĬ âĿ¤ï¸ı</w>\nt els</w>\nsafety first</w>\nnar rated</w>\njae joong</w>\nun answered</w>\nlique ur</w>\nen nes</w>\ndal go</w>\nbill ings</w>\nsalt water</w>\nmer maids</w>\nlon gs</w>\nclap ham</w>\nwe arec\npic collage</w>\nn ach</w>\nh ace</w>\npois oned</w>\nlo th</w>\nag na</w>\nadel rey</w>\nguar dia</w>\npoli shing</w>\npeace keeping</w>\nd all</w>\np isa</w>\nla pland</w>\nprocess ors</w>\nde andre</w>\nso bs</w>\np once</w>\ndra ins</w>\nc be</w>\nðŁİ¥ :</w>\nspla sh\nmeat ball</w>\nfon tana</w>\nworcester shirehour</w>\nne v</w>\nbri sk</w>\nb int\nac r</w>\npo x</w>\ncay enne</w>\nskril lex</w>\nj fc</w>\nhahahaha hahaha</w>\ngla s</w>\nen gul\ntempor al</w>\noni zed</w>\ncon cre\ncom pose</w>\nvibr ations</w>\nplant ers</w>\nfer t</w>\ncriticalrole fanart</w>\nt bli\nsch allenge</w>\nhuck abee</w>\nmunici pal\niam bic\nradi os</w>\nne vis</w>\ndura bility</w>\nmc cla\nhorse back</w>\ninst itutes</w>\nful fill\natta ch\nate ur</w>\nak an\nresi sting</w>\nillumin ation</w>\nhand le\nhair care</w>\nom ent</w>\nmacle od</w>\nka iser\ng no</w>\nbear down</w>\nly f</w>\ngl omer\ndistor tion</w>\nz m</w>\nsan k</w>\nroo sters</w>\nis now</w>\nas ports</w>\nag en</w>\nwo ken</w>\nst george\nro mper</w>\nmy le\neconom ists</w>\nru to</w>\nt will</w>\nhealth and\nd ito</w>\nws l</w>\ntair p</w>\npra kash\nmic heal</w>\nh ts</w>\nw rights</w>\nkat su</w>\nfioren tina</w>\ndefen seman</w>\nd itch\nvar sity\ntexan scheer</w>\nba ham\nsc anned</w>\nwe il</w>\nseduc tive</w>\nðŁĳį ðŁı½</w>\nfu e</w>\ner win</w>\ndav ison</w>\nter ran\nmoo ds</w>\nwool f</w>\nre source\n@ .</w>\ncu sh\nðŁį °\nregre ssion</w>\ncur led</w>\nla zer</w>\njo anne\nab bott\nmo z</w>\ndown ers</w>\nmm mmmm</w>\nvalent ina</w>\nk hair\ndream t</w>\ncro ok</w>\nche k</w>\nste aming</w>\nnephe ws</w>\ncl eric</w>\nas ober\nindefin itely</w>\nw ye</w>\nus news</w>\njoy ce\nflu shing</w>\nwynonna earp</w>\nron do</w>\nkis s\nhot dog</w>\nbar ns</w>\nsax ophon\nfar ley</w>\ngas p</w>\ndecre asing</w>\nal way</w>\npe x</w>\nl sd</w>\nshi ft\np outine</w>\nra zz\nrescu ing</w>\nni ko</w>\nho ch\ncc l</w>\nu aap</w>\nn ts</w>\nm car\nil wx</w>\nconqu ering</w>\nket tering</w>\nstur dy</w>\ndelay ing</w>\nsto k</w>\nvani shed</w>\ncath ar\nbin gham\nin v</w>\nic hiro</w>\nhe mo\nbudge ting</w>\n[... ]</w>\nbe ss</w>\nsebasti an\nslow ed</w>\nðĿ ĳ\nmusli m\nstun s</w>\nacton climate</w>\nve a</w>\nse ton</w>\nrose tta</w>\noun t\nhard in</w>\nflu id\nca w</w>\nðŁ¥ Ĥ\nyach t\nun l</w>\nsp hy\nprovoc ative</w>\nor ic</w>\nis back</w>\n__ _\nnicol as\ngy an</w>\nloo se\nfl in</w>\nreb ate</w>\n: ::</w>\n! \"@</w>\ncom icon</w>\nshe ff</w>\ndown stream</w>\nchic hester</w>\nbeach life</w>\nmom life</w>\ndiabe te\nar ra</w>\nvan e</w>\nok u</w>\nye o</w>\nman go\ntry out</w>\napp ell\nhe irs</w>\narjun a</w>\ndd u</w>\nna veen</w>\nmovi c</w>\nsoci alists</w>\ns back</w>\ncriteri on</w>\nsoyu z</w>\nk her</w>\nda z</w>\nyol anda</w>\nwine oclock</w>\nre ina</w>\none w</w>\nleon ard\nen dez</w>\nu bs</w>\nsupport local</w>\nfacilit ated</w>\ncarameli zed</w>\nb pa</w>\nvuel ta</w>\nmy tho\nm ami</w>\nspe are</w>\nnbap layoffs</w>\nfe vre</w>\nnick jonas</w>\nim print</w>\nc so</w>\ncraig slist</w>\nla salle</w>\ngi deon</w>\nha doop</w>\ndis regard</w>\nw ud</w>\ntu c</w>\nma gee</w>\nacou stics</w>\nta a</w>\nqui e\npol a</w>\ncr t</w>\ndw yer</w>\ndis sec\ncapit ol\nmen tion\nkn oll</w>\nhe igh\nfin ders</w>\nplac ements</w>\nl se</w>\nindi ra</w>\ngur i</w>\nmadhuri dixit</w>\nkingdom s</w>\niambic pent</w>\ngeor gina</w>\nje ky\nconflic ting</w>\nbay an</w>\naga tha</w>\nuph old</w>\ndr on\nvic ar</w>\nex pat</w>\nperiph eral</w>\npe ssi\nfa f</w>\nance stor</w>\n? ..</w>\nwid get</w>\npun c\ncomm enced</w>\nbeav s</w>\nair waves</w>\nad dis</w>\npo a</w>\nde sses</w>\nco den\nvu e\nru pee</w>\nkar in</w>\nspo ck</w>\nm sy</w>\nà¸ °\npr ick\nfill more</w>\nti fication</w>\nthing sto\nsar de\nem ile</w>\npere ira</w>\nn ad</w>\nbright ening</w>\narre sting</w>\nwo king</w>\nusc g</w>\nsp ill\nraspberry pi</w>\nhu go\nite c</w>\nis ma\ncuff links</w>\noptimi zed</w>\noc c</w>\nmi wx</w>\nen ka</w>\nel ited\nafford able\nsa kh</w>\ncoron ado</w>\nho h</w>\nat ul</w>\nai oli</w>\njim cantore</w>\naccoun ted</w>\nvin ay\nher mit</w>\ngroo ves</w>\nran ch\nr illa\nwe tter</w>\nou tof\nveter in\nni kov</w>\nki an\nfair banks</w>\nram apho\nn iti\nk ko</w>\nru sty\nne stle</w>\ntv xq</w>\nshahe er</w>\nâĿ¤âĿ¤ âĿ¤âĿ¤</w>\npenn ant</w>\ngem stones</w>\ndem debate</w>\nðŁĲ Ĭ</w>\nauton ews</w>\nsupport indiefilm</w>\nmach o</w>\nve x</w>\nnew sat</w>\nne ti\nconce ssions</w>\ncan died</w>\nyof the\nmac au\nden ds</w>\ncricke ters</w>\nsan iti\nmari ano</w>\ngh at</w>\nar toftheday</w>\n¡ ľ\ne gos</w>\ngen oa</w>\nchat bots</w>\nbri er</w>\nal labout\nmon ty\nspi ed</w>\nr tr</w>\ncomfor t\nsni ppets</w>\nreal time\ngra in\nexam ined</w>\nen lightening</w>\ntt u</w>\ngod bless</w>\nrelease the\nsing ular</w>\nki ans</w>\nha ka</w>\nsor ren\ndefe ct</w>\nmar g</w>\nequ ities</w>\nd orian</w>\nsu ka</w>\nper l\naishwar ya</w>\npul lover</w>\npreci sion\nfair way</w>\nne ve</w>\nrive ting</w>\nvill anova</w>\nen com\nak o\npassion ately</w>\neuropale ague</w>\nsiem pre</w>\nx vi</w>\nenligh tened</w>\nc fr</w>\nâĺħâĺħ âĺħâĺħ</w>\nwast eland</w>\nis f</w>\nnew comers</w>\nemergen cy\namphi theatre</w>\n- .</w>\ntext books</w>\nfigur ative</w>\ntre mb\npe sc\nab hin\nab bot</w>\nac acia</w>\nhar ds</w>\npor sche\nkau ai</w>\nel isa</w>\ncar rick</w>\nabo u</w>\nelli er</w>\nbe ch\nneu tron</w>\ngalap agos</w>\nru ben\nin nis\nhow to</w>\nnun s</w>\nsab ine</w>\ni ac</w>\nclin ched</w>\nno tori\nfi ves</w>\ncairn gor\nper i</w>\ngr c</w>\nðŁĴ¯ ðŁĴ¯</w>\nmal m\ntwelf th</w>\ndi ff\nrout ines</w>\nmarty n</w>\nlin den\nsynthesi zer</w>\nnu mber\ngame cube</w>\nfal kirk</w>\nbyz antine</w>\nqueu ing</w>\ngr ill\nscal able</w>\nchar red</w>\nrou ting</w>\nher bali\ngri zz</w>\nðŁĺŃðŁĺŃ ðŁĺŃ\ntol l\ntermin als</w>\nl pc</w>\nab d</w>\nwar mups</w>\nremo vable</w>\nÂ¯ \\\nvi go</w>\npap aya</w>\nne ve\nlov ingly</w>\njo kers</w>\nib les</w>\nsse tt</w>\npoten ti\npel e</w>\ngi gi\nsadi q</w>\nleg acy\nson o</w>\nru pees</w>\nretar ded</w>\nele e</w>\npar r</w>\nfi ance</w>\ney re</w>\nsay ers</w>\npend ants</w>\nmak nae</w>\nal bans</w>\nadap ting</w>\np ff</w>\npu berty</w>\nji u</w>\ning rad</w>\nhypocr ite</w>\ndiplom ats</w>\nphys ical\nrob by</w>\nbon sai</w>\nãģ ·\nf att\ncatal unya</w>\nâľ ĸï¸ı</w>\nro ma\nmore land</w>\nso e\nconver sions</w>\nstl blues</w>\nshol m</w>\ngra ssy</w>\npra do</w>\non u\nassaul ting</w>\n> _\nsett es</w>\ndis graceful</w>\naph ra\nâļ½ï¸ı âļ½ï¸ı</w>\nà¤ ª</w>\nkil n</w>\ngoal tender</w>\ns ru\nphilanthro pist</w>\nb als</w>\nth n\nstu den\nsando val</w>\ndogre scue</w>\neli ons</w>\nasse ssed</w>\nlar go</w>\nhec tares</w>\nsh rm</w>\nsa if</w>\ncle avage</w>\nno ches</w>\nn ene</w>\nfat alities</w>\ncur ing</w>\nclean ser</w>\nal es\np vp</w>\nsouth bank</w>\npizz eria</w>\nmarsh als</w>\nkni fe\nan dover</w>\ntbli ghtning</w>\nsr sly</w>\nou te</w>\ndigi mon</w>\ntimesof india</w>\nprome the\nle bo\nf su\nwit z\nrever e</w>\nman as\nmam ba</w>\nch ica</w>\ngu an\nexhibit or</w>\ncsr racing</w>\nd ere</w>\nxx xxx</w>\ngu sta</w>\nstory time</w>\nston ey</w>\norgan ics</w>\nand u\nse am</w>\nmin ogue</w>\nanushka sharma</w>\nab a\nðŁİĻ ï¸ı</w>\nugand an</w>\nchro matic</w>\nas sn</w>\ndocument aries</w>\nsh t</w>\nru paul</w>\nloy d</w>\nk ats</w>\ne us</w>\nite ch\nme dusa</w>\npan ty\nkel logg</w>\net to</w>\ntalla de\nsha a</w>\ndo st</w>\np ms</w>\nmari ana</w>\nje ster</w>\ncroo ks</w>\nðŁĶ ¬</w>\nmin danao</w>\nind hoven</w>\nðŁ¤ ª\nle xi\ntv n</w>\njan is</w>\nco te\nãģ Ĩ\nser rano</w>\niw m</w>\nðŁĲ ¬</w>\nk ke</w>\ndistribu tors</w>\ncap u\ncounterfe it</w>\ncamp site</w>\nag gie\nðŁĺ ¼</w>\nchhat tisgarh</w>\n~ @</w>\nstate u</w>\nsan di\nprevent able</w>\ncl s</w>\ncan ne\nmm c</w>\ni ver</w>\nsa haran</w>\npal is\nnight out</w>\ndo s\nap ia</w>\nabsc bn\nmanag erial</w>\naro se</w>\nmo wx</w>\naro sa</w>\nðŁĮ ³\nunder dog</w>\nremo ver</w>\nastronom ers</w>\nlent ils</w>\nsu scep\nsmoo ther</w>\npend leton</w>\nfau cet</w>\ne mory</w>\ndal mati\naf cb</w>\ntic us</w>\nexem pt</w>\nen rol\nd heim</w>\nðŁĲ º\nrestric tion</w>\nstar fish</w>\nsto w\nsnor kel\nthunder birds</w>\nshe ad\nhomo sexual</w>\ndy n\nas li</w>\nandre tti</w>\ndou che</w>\ndom o</w>\ntar mac</w>\nslu mber</w>\npr onto</w>\nfirst dayof\nmini ature\nmari achi</w>\nargu s</w>\nrecomm ending</w>\nmobi les</w>\nin ce</w>\nillustri ous</w>\nor c</w>\nadver ts</w>\ngr its</w>\nwea sel</w>\npag oda</w>\nover pass</w>\ngre ys</w>\nmaxi mus</w>\narma gh</w>\nwood land\nsun ni</w>\nðŁĴ ī\në Ŀ\nti one\nsoci o\nho s\nðŁ¤Ĺ ðŁ¤Ĺ</w>\nwind sor\nsubsequ ent</w>\nmunch ies</w>\nid h</w>\nexclu ding</w>\ne mi\ncu th\nz ai\nweek days</w>\nlaw suits</w>\nbarn ard</w>\nØ ª</w>\npe tting</w>\nnet es</w>\nmul ligan</w>\npharmac ists</w>\nra quel</w>\ne ton</w>\ncran ston</w>\ngil ded</w>\ncle ary</w>\nce ph\nra a</w>\npam per</w>\nlombar di</w>\nas in</w>\nsher ry\npro d\nfor te\nari anism</w>\nbuffalob ills</w>\næľ ¬\nðŁĶ¥ #</w>\nuu u\njust ices</w>\ncar ina</w>\nnat in</w>\nmas low</w>\ndro oling</w>\ncog nac</w>\ncam ber\nel ong\nr dr</w>\nin en</w>\nconvic tions</w>\nam use</w>\ntro ck</w>\nharm less</w>\nvisit ation</w>\ngen omic</w>\nbl and\nbeno it</w>\nchim p</w>\ntuscal oosa</w>\ngre asy</w>\nx po</w>\ngil t</w>\nse q</w>\nper mitted</w>\nchristma seve</w>\nbook s\nmu e\nold school\nhuman right\nbe ati\nðŁĶ Ŀ\nsh at</w>\nsculp ting</w>\nh wan</w>\nfern andes</w>\nsci utto</w>\nfu entes</w>\nendeav ors</w>\nmaid stone</w>\nun paralleled</w>\nshou ted</w>\nqueen of\nmer c</w>\nband ic\nve da</w>\nsel angor</w>\npi le\nja han\nintimid ating</w>\ndisapp ears</w>\ncl ich\nza ha</w>\nw urst</w>\nhi v\nfod ils</w>\ncor dless</w>\naaaa aa</w>\nhy dra\nbel inda</w>\ne els</w>\nbu f\nsu staining</w>\nrugby league</w>\nno c</w>\nbrig itte</w>\n( ðŁĵ¸:</w>\ntromb one</w>\nsoo the</w>\nsmo g</w>\nad p</w>\nstab le\ning ley</w>\ndiagno se</w>\nms g\nwe ss</w>\ntic keting</w>\none e</w>\nnsw pol</w>\ne up\nauto psy</w>\nadity anath</w>\nsun down</w>\nriver front</w>\nsi ya</w>\np is</w>\nhier archy</w>\ndur ango</w>\ndi jk</w>\nren shaw</w>\nhe aps</w>\nepide mi\ndavid bowie</w>\ninterne tof\ndd i</w>\nnation ality</w>\nmb ar\nair y</w>\nwin der\nw alia</w>\nelli ott\nc x\nbav arian</w>\npl att\nan tw\nwi wx</w>\nsof ter</w>\nne ha</w>\nh eller</w>\nth and\ndani ela</w>\nbo ast</w>\ndegra dation</w>\nðŁĴ¦ ðŁĴ¦</w>\ntransform ing\nman e\nav ut</w>\nðŁĺĪ ðŁĺĪ</w>\nvo ter\nthe e\nt ate\npu ff\nin door\nsop roud</w>\nboy ce</w>\nboris johnson</w>\nwait in</w>\nimmun ology</w>\nðŁıĨðŁıĨ ðŁıĨ</w>\nâĿ Į\nstreet food</w>\nliz asober\ncavali er</w>\nc elia</w>\nneed le\nmotor ing</w>\ng ato</w>\n, )</w>\nra de\nharve st\nt ms</w>\njar pad</w>\non ey\nair men</w>\nv re\nimpair ment</w>\nabhi shek</w>\nsnoo p\nl ant</w>\nfam ously</w>\nbl ou\ns ze\ng ander</w>\nun touch\ntu f\ndee jay</w>\ncol lateral</w>\nb ind</w>\nðŁļ ©</w>\npin ning</w>\nic n</w>\n' ;</w>\nthe economist</w>\nul tram\nworldwater day</w>\nti poff</w>\nthe i\nfeed ers</w>\ncampa ign\nsc umb\nday weekend</w>\nyo m</w>\npe dic</w>\nh ough</w>\nps v</w>\npl in\non de</w>\nboston marathon</w>\naz zy</w>\n* _*</w>\ncon ley</w>\nthi ago</w>\nhoo o</w>\ngal erie</w>\nluci d</w>\nje tt</w>\ngl itz</w>\nfinal fantasy</w>\nachiev ers</w>\ny ung\nperegr ine</w>\nop hi\ndam es</w>\nbiom ar\nâĺĢï¸ı âĺĢï¸ı\nsk c</w>\nl ics</w>\nfl ank</w>\nar rahman</w>\nho of</w>\nuphol stery</w>\nt ats</w>\nwo z\nÂ ¿\nsnor ing</w>\nra er</w>\nl ju\nap d</w>\npl ating</w>\nkan u</w>\nim ation</w>\nfragr ances</w>\nm ra\nmor ay</w>\nmo tt\nim muni\nhearti es</w>\nbho pal</w>\ntim ers</w>\ng ata</w>\ncolor way</w>\ncar nation</w>\nwin get</w>\nsi ghs</w>\ns ville\noptimi st</w>\nchate au\nolympi ans</w>\nci o\nsinger songwriter</w>\nny o</w>\nfi bers</w>\nbur ch</w>\nag ro</w>\nmil ne</w>\nig bo</w>\ncr amer</w>\nation als</w>\ndan ube</w>\npad ma\nnor mani</w>\nen forced</w>\nbre ck\nboeh ner</w>\nar den\nsur rendered</w>\npros thetic</w>\nom a\nha iled</w>\ncalcul ations</w>\nw fa\nbi b\nfcb live</w>\nfon da</w>\nwest coast</w>\nque sts</w>\nfriend ly\nto wie</w>\nfit ch</w>\nbal ot\nstar dom</w>\nscrat ching</w>\nho sa</w>\nthi ka</w>\no ven\nstro ke\nout post</w>\npharmaceu ticals</w>\nhi kari</w>\nmu y</w>\naf d</w>\nfallon tonight</w>\nsqu at\nor u\ndra ined</w>\nchocol at</w>\në¯ ¼</w>\nwor ths</w>\nri b\nmu j\nthat s\nresiden te\nit el</w>\nboo st\nmi gos</w>\nmul led</w>\nla a</w>\netsy shop</w>\ndon keys</w>\nme k</w>\np tc</w>\nflin ders</w>\ne hs</w>\nro hit\nmu ir\ng ad</w>\ncompos itions</w>\nåĨ Ļ\ncombu stion</w>\ni kh\nyemen i</w>\nwav ed</w>\ngar ci\nak os</w>\noo ds</w>\nfu sion\nse que\ns lan\npl ur\nkic chasu\nshenan do\ns ams</w>\nworl den\nhoro witz</w>\nwith me</w>\nmic robes</w>\nk ki</w>\nðŁĴĶ ðŁĴĶ\nw su\npatch work</w>\nfre er\ny aki</w>\nthe art\nsymboli sm</w>\nmil er</w>\nbt n</w>\nma bu\nside kick</w>\nmotiv ates</w>\nsag itt\nnatur als</w>\nserv iced</w>\nps ori\npa ola</w>\nqu ig\ni badan</w>\ngi ggs</w>\në ³\nsciento logy</w>\nsi oux\nsalam at</w>\nd res</w>\ncad bury</w>\nd hawan</w>\nci Ã³n</w>\n_ '</w>\nswa pping</w>\nmaris ka</w>\njames bond</w>\nexplo sives</w>\nay les\naf er\ns agu\ncen sor</w>\ntom a</w>\njeff erson\nring ed</w>\npar tist</w>\nir responsible</w>\naguil ar</w>\nvac ay</w>\nequ itable</w>\naltrin cham</w>\nac ur\nman ish</w>\nger min\nschoo led</w>\npu tter</w>\ned ad</w>\nnav al\ntoast y</w>\nsol areclipse</w>\ndish u</w>\ncoy ne</w>\nac co</w>\nmu ck\nmar an\nel os</w>\nlen der</w>\ncro ix</w>\nworth less</w>\nha ber\ngun men</w>\nðŁį ĵ\nzen ith</w>\nt enders</w>\nhur st\nhol tz</w>\nitali ans</w>\ncar low</w>\nu cd\ncharacteri stic</w>\nbun g</w>\nav l\nu th</w>\nsa sia</w>\nrs l</w>\nred man</w>\nneighbor ing</w>\ngreen peace</w>\nsti ps</w>\nfollow party</w>\ny gk</w>\nen os</w>\nomni bus</w>\nna issance</w>\nchri ssy\nsecu re\ncall back</w>\nji hoon</w>\nmemor y\nblock er</w>\nl anta</w>\ndaf fodils</w>\nbil t\nffer ty</w>\nfau st</w>\nie c</w>\nnipp les</w>\nso g</w>\nm nd</w>\njagu ar\nbol dly</w>\nab poli</w>\npro position</w>\ngun sense</w>\nevan sville</w>\ncu tters</w>\nwe go\ndou n</w>\ndo x\nstal lions</w>\nka j\nshi ppers</w>\nj awa\nvol o</w>\nle ven\npap rika</w>\nkov ich</w>\njor di</w>\ninduc tees</w>\napp alling</w>\ndial ysis</w>\nallevi ate</w>\nâĢĶ âĢĶ</w>\npie ter</w>\nmid wi\nq tr</w>\njuli ette</w>\ninter mission</w>\nhaw ks\nact ment</w>\none ill</w>\nk lin\nvam ps</w>\nfam ous\ncou ld\nautom obi\nda an</w>\nwest end</w>\nelli p\nnh c</w>\nmel anch\nweb series</w>\nton gue\nsnat ched</w>\nsmy th</w>\ntan gible</w>\nsl i</w>\ne asing</w>\nbar stool\nover lay</w>\nafford ability</w>\nting ed</w>\nter as</w>\nay ush\nwanna one</w>\nrh ine</w>\ndan a\nsh ana</w>\nkend al</w>\nfer tile</w>\nw ir</w>\nrepl eni\nlar vae</w>\nis ro</w>\ncon vos</w>\nab brevi\nu cc\nhun gry\nbur rows</w>\nag er\nnav i</w>\nmat in</w>\ndu per</w>\ncer n</w>\nma don\nķ ï¸ı</w>\né ģ\ntu ps</w>\nhy att\nsh ep</w>\nfriday night\nwis er</w>\nhei di\nhat ton</w>\np gh\nfoun tain\nwrist bands</w>\nahmadi yya</w>\naeri al\nsubscri bed</w>\nso los</w>\nm ace</w>\nsla yed</w>\nfor fe\ndul ce</w>\nchrist mass\narun jaitley</w>\nviol ate</w>\nob stru\nni eces</w>\nw vu\nidy l\nfa ze</w>\npre serves</w>\ninfr inge\npremi ers</w>\ninter vals</w>\nagen cy\n( Â©</w>\nstand alone</w>\ndi mes</w>\nbo er\nparam eters</w>\nge tit\nðŁĺĺðŁĺĺ ðŁĺĺðŁĺĺ</w>\ntu lane</w>\nfor given</w>\nscol l</w>\nmb ps</w>\nsmash bros</w>\nrob bi\nprima vera</w>\nali st\nghost ly</w>\nay at\nye ats</w>\nimpre ssionist</w>\near phones</w>\ncaul field</w>\nwai kiki</w>\nsal ute\nsc ou\nmu ay\nlouis vuitton</w>\nbak hta\nado g</w>\ninven tions</w>\nhur d</w>\nforec lo\nstream line</w>\nthalai var</w>\nch snews</w>\nwill ard</w>\nt sn\neuro parl</w>\ncru sher</w>\nmy sore</w>\ngro wer</w>\nra ping</w>\npat ti\ng den</w>\nsm w</w>\nmuf ti</w>\nkid man</w>\nab r\nsoun ders</w>\nskep tical</w>\nðŁĶ İ</w>\nsun dar\ni me\nfer g</w>\nfeather weight</w>\nar lington\npas qu\nag azine</w>\nwearab le\nnati c</w>\nmccl ure</w>\ninter mitt\nhor de</w>\nsix ties</w>\ncar te</w>\nbha v\nze al\nexperi ential</w>\nador ned</w>\nsom mer</w>\neno te</w>\nhypo thesis</w>\nstin ky</w>\npro to</w>\ndead lines</w>\nvo gel</w>\nmus ings</w>\nmonc ton</w>\ngu ter\nf le</w>\naci on\nvoice of\nta sha</w>\ninhabit ants</w>\ntype face</w>\ns ba</w>\nbts x\nðŁĶ Ĵ</w>\nwor x</w>\nu hc</w>\njo ko\ncell ars</w>\ngor o</w>\ncontinu um</w>\n... &</w>\nweather cee</w>\nha p\nsr k\nris ers</w>\nlonely planet</w>\nun named</w>\nco eur</w>\nðŁį Į</w>\nthe world\nili ke\nfa sten\nami go</w>\nri ba</w>\nramapho sa</w>\nstaf fers</w>\nhad ley</w>\n? ?\"</w>\nfi ore</w>\nsal ut\nhu ff</w>\nbez os</w>\nÑ ĭ\nra der</w>\nkam ala</w>\nin line</w>\nfill ers</w>\num atic</w>\nall in\nshat ter</w>\nre in</w>\no ku\nch ases</w>\nfla gged</w>\nbaby metal</w>\nwater stones</w>\nts b</w>\ncut out</w>\nop hel\naam a\nrockab illy</w>\nsto lic</w>\njet blue</w>\nich ick</w>\ndown ton\nuzbe kistan</w>\npat na</w>\nla q</w>\ngr ange\n) _/\nsubsi di\nsc p</w>\nnewsc ast</w>\nit sa\ntwee tyour\ne mor\narchae ologists</w>\nuni fication</w>\npor ta</w>\nq x</w>\nprotec tors</w>\npro hib\ncharis ma</w>\ncar tag\nren fre\nscul pt</w>\nguwa hati</w>\nde ma</w>\nboo p</w>\nunf pa</w>\ndex ter\nlay la</w>\nalleg es</w>\nsou ps</w>\nnever again</w>\nl ys</w>\ncal c</w>\nbar oness</w>\nvisu alize</w>\nger ber</w>\nabsor bed</w>\ni ers</w>\na han\nfon tein</w>\ndetec tors</w>\nverst appen</w>\nsv c</w>\nformul ated</w>\nac dc</w>\nli x</w>\nin competent</w>\nbh k</w>\nlour des</w>\nwater house</w>\nsnow ed</w>\nappreci ative</w>\nsig ma\nlizasober ano</w>\npen ned</w>\npay check</w>\ntall inn</w>\nfanc afe</w>\npar isi\nav alley</w>\nvi g</w>\nru fc</w>\nhard ship</w>\nso cute</w>\npo ise</w>\nì ¹\nroth schild</w>\nk ly</w>\n???? ????\nl hp</w>\nil ay\nf hs</w>\nam ad\nide als</w>\nbrad bury</w>\nbal boa</w>\nnic ot\nkid nap</w>\nwol ve\ntas manian</w>\nop t\nmatthi as</w>\nãĥ³ ãĤ\nsuper markets</w>\nmylittle pony</w>\nme lee</w>\nli ster</w>\ngr oun\nfe dora</w>\nkind ness\nen en</w>\nbra hms</w>\nÂ¯\\ _(</w>\nros well</w>\nmar lene</w>\nic u\nre formation</w>\nor ail</w>\nhe brides</w>\ndispar ities</w>\nterrac otta</w>\nswal lows</w>\nre id\ninflu encing</w>\nflu or\nden e</w>\ntum our</w>\nblon des</w>\nthunder bird</w>\nsh eva</w>\nmoga dishu</w>\nka b</w>\ncre eps</w>\ni ving</w>\nene ed\nanno y</w>\nâĶ Ģ\nintri gue</w>\nenqu iry</w>\nar aj</w>\ntur al\nkuber netes</w>\nend lessly</w>\ndivi dends</w>\ntor a</w>\nti sh\ncommemor ates</w>\nun ra\ntri b</w>\npon ty\nne m</w>\ndiss ent</w>\nbrew ingco</w>\nðŁĺ ½</w>\nnor mali\nbi of\n( ...</w>\nchil len</w>\nì£ ¼\nmell on</w>\nav is\nmccor mack</w>\ning ra\nenrich ed</w>\ncustome rexperience</w>\ntesto sterone</w>\nsnu g</w>\nsett i</w>\nger onimo</w>\ninqui rer</w>\nbre aches</w>\nvery thing</w>\nbloom ing\nmu ra\ndispo s\nbi de</w>\nde va</w>\nshade sof\nin trin\nsh ev\ns ven</w>\nnayanth ara</w>\ngan esha</w>\nc ws</w>\nber ta</w>\nlabel led</w>\nuse um</w>\nnick named</w>\nma han\ncar uso</w>\nap ur</w>\nðŁĳ Ĩ</w>\nw q\norphan age</w>\ndiscar ded</w>\nmag nu\nlu e</w>\nje on\nbridge port</w>\npac ing</w>\nmercur y\n( ðŁĵ¸</w>\nmarx ist</w>\namphi bious</w>\ntransplant ation</w>\nstit ching</w>\nthen burg</w>\ngradu al</w>\nãĤ Į</w>\nro ft</w>\nma ils</w>\nine c</w>\nguy ana</w>\ndopp elg\nver o\nre write</w>\nhead less</w>\nharb augh</w>\ngate way\ncar sforsale</w>\nsw i</w>\nst is</w>\nmach t</w>\nun de</w>\nsura baya</w>\nstap leton</w>\nnur turing</w>\nmil ner</w>\nya o</w>\nlma oooo</w>\nko sh</w>\narsen al\nk ame\ner ry\nar royo</w>\ndis misses</w>\nru bbed</w>\nrc b</w>\nlew d</w>\ndil u\nand or\nvi de</w>\nur in\ninter sec\nha ar\nal b\nyear swith\napp leton</w>\nÃ© al</w>\nul livan</w>\nsuc cu\nmonter rey</w>\nd mx</w>\nartem is</w>\nron nie\nfarm land</w>\ns football</w>\ngro tto</w>\nanth i</w>\nãĢ ģ</w>\nà® Ł</w>\nvid ya</w>\njimmy fallon</w>\nàµ į</w>\nt zer</w>\ngravit ational</w>\nw thr\nu hhh</w>\ne hr\ntin ker\nti juana</w>\nscran ton</w>\nram charan</w>\nbar clay</w>\nre van</w>\nm si</w>\nka p</w>\nwr s</w>\nwe thenorth</w>\ntor al</w>\nsat u</w>\ngro m</w>\nfac ep\nerick son</w>\nz yn\nse dge</w>\noo dle</w>\nspur sofficial</w>\nds p</w>\nsic ilian</w>\nsoli hull</w>\nrecei vers</w>\nladak h</w>\nhend rick</w>\nther i</w>\npresi ding</w>\nmc guinness</w>\nlitt ers</w>\ngun nar</w>\ngh oul</w>\nwi b</w>\nn tv</w>\nkar o</w>\nfro ck</w>\nb lau\nampli fy</w>\nall is</w>\nul lah</w>\nmemo irs</w>\nkh loe</w>\nintercep tions</w>\npet day</w>\nlo oney</w>\ncon fin\nch ay\npiyush goyal</w>\nfrequ encies</w>\nut z</w>\nevent ual</w>\nwarm ly</w>\nobli vion</w>\nan ka</w>\nta it</w>\nâĿ¤ï¸ı .</w>\ndirector ial</w>\nru lers</w>\nprince s\nmu ck</w>\nstur ridge</w>\ndeu ce</w>\nabri dged</w>\nbagu ette</w>\nun cles</w>\npen du\nmin ding</w>\nforre ster</w>\nav ila</w>\nwall er</w>\nwall street</w>\nment or\nhin o</w>\nhigh way\ncrom well</w>\nfanart friday</w>\nmb i</w>\nco yle</w>\na hi\ntro ve</w>\nspie gel</w>\npay tm</w>\nmcin tosh</w>\njan sen</w>\nnit i</w>\nnash ville\nlen o</w>\nleicester shire</w>\nle gos</w>\ndic t\nðŁĵ ½</w>\nsp ad\nbeverly hills</w>\nsy rah</w>\nsepar ates</w>\nz ain</w>\nun fit</w>\ndra gs</w>\ntan ia</w>\nover flowing</w>\nhri thik</w>\nhaw thorn</w>\nz ani</w>\nmac far\nfi de</w>\nto tem</w>\npe ds</w>\nfundament ally</w>\ncal ico</w>\nsin ner</w>\nj Ã¤\nhil de\nds d</w>\nten ay</w>\nta hit\nmil f</w>\nlie b</w>\ninform ing</w>\nup lift</w>\nra el</w>\nmortg ages</w>\nlec t</w>\nii ii</w>\nguillau me</w>\ncompos ites</w>\nold smobile</w>\nl end\ngar th\ncom mish</w>\nbapti zed</w>\nscorpi ons</w>\nru cker</w>\nbringback our\nalli ance\nthalap athy\ntal i</w>\nsp ans</w>\neri dge</w>\nwither spoon</w>\nlin da\nsky lar</w>\nkor n\nhom s</w>\nÄ į\nsil enced</w>\ncaf fe</w>\nar ty\ndist inguish</w>\nto wed</w>\npun g</w>\njessic a\near nest</w>\nbeau fort</w>\nt ama</w>\nstudy abroad</w>\nsi khs</w>\nnew bie</w>\nnav ratri</w>\nmar ble\nloun ging</w>\nlit ter\ndal it</w>\nso sa</w>\niz es</w>\ngra de\ncom promising</w>\ntr iton</w>\nde tta</w>\nv j\nchau ffe\nspec tral</w>\npowe red\nmontess ori</w>\nartic ulate</w>\nhal ton</w>\nal co</w>\nye y</w>\nmn twins</w>\nacoun ty</w>\nðŁĳı ðŁı¾</w>\nâī Ī</w>\nmad men</w>\nkal a\ngru m\nchi k</w>\nati s\nsu me</w>\nakh tar</w>\njob search</w>\nhigh lighter</w>\nbo ath\nâĦ ¹</w>\ntar zan</w>\nlam bo</w>\nâĽĦ ï¸ı</w>\nox fam</w>\ndump ster</w>\npretz els</w>\nmac os</w>\nincl ined</w>\nfac tual</w>\nadverti sers</w>\nshu i</w>\npu ree</w>\nml pfi\nanti dote</w>\ncap o</w>\npa str\nmerc ado</w>\nbut ton\nar min\nag g</w>\nlol la\nhorri bly</w>\ner rands</w>\nchristop he</w>\ntime snow</w>\nmonday motiv\nli ss\nscand als</w>\nmc i</w>\ndispropor tion\nâĺ İ</w>\nsur pass</w>\nsamar itan</w>\nso tho</w>\npu rest</w>\nfl att\ntrivi atuesday</w>\ndelec table</w>\nleop old</w>\nhermi one</w>\nchou dhary</w>\nen rich</w>\nÂ¡ Â¡</w>\nsubsi diary</w>\nine qualities</w>\nbachel or\nauto immune</w>\nla kota</w>\ni hop</w>\nad jec\nthe simpsons</w>\nsh es\nse k\ngret chen</w>\nup stream</w>\nhin akhan</w>\ncoper nic\nx tina</w>\nlu g</w>\ntough ness</w>\ne ad</w>\ncli pped</w>\nbi us</w>\nsl v</w>\nfah ren\ndee pak</w>\nca u</w>\nx an\nim mature</w>\ndig ni\nbo bs</w>\nshred ding</w>\nbut tery</w>\naccommod ations</w>\nde ven\nchun ks</w>\nsuper league</w>\nsky bet\nkil dare</w>\nje et\në į\nce k</w>\nwrec ks</w>\npro pane</w>\noh l\ntb d</w>\nquo i</w>\ntrum pp\nmi mo\nreluct ant</w>\nver ne</w>\no ic</w>\nma gh\nar nau\nse ver</w>\nli dge</w>\nstair way</w>\nkicchasu deep</w>\nðŁĶ º</w>\nmach ining</w>\naama admi\not i</w>\nc da</w>\nal it\npan y</w>\ninst alls</w>\nac ct</w>\ne shop</w>\ndi em</w>\nhard well</w>\nfulfill ment</w>\nsc afe</w>\nqu ack</w>\nextrac ts</w>\nswee tened</w>\nfi ghton</w>\nf di</w>\nd inger</w>\nwal tham</w>\nus ur\nrefe rees</w>\nseok jin</w>\ngran n</w>\naf rin</w>\nth n</w>\nsch af\npar cels</w>\nbet is</w>\namar ine</w>\nnom an\nkh tar</w>\nmor itz</w>\ncou pling</w>\nbar ons</w>\nðŁĲ ¸\nÃ ¸</w>\nsl p</w>\nsad ler</w>\nx ander</w>\ntri ad</w>\nmc millan</w>\nkh z</w>\ndivi ding</w>\nìĹĳìĨ Į</w>\ndar yl\nzed d</w>\nle ys\npla ques</w>\nflu ori\ntipper ary</w>\non nell</w>\ndi dier</w>\nlang ford</w>\nim c</w>\nthe sun</w>\nbir dies</w>\nar cha\nye ssss</w>\nt di</w>\ndar ia</w>\ncand ace</w>\nal tam\npal aces</w>\nch it</w>\nsant am\nevent ful</w>\nbook of\nad b</w>\nmon stax</w>\ncre ole</w>\nco el\nâĸ ½\nwe aren\nsten nis</w>\nshe ath</w>\nati sm</w>\ngron ingen</w>\nmlpfi m</w>\nle pre\nwrong ly</w>\nrsp ca</w>\nrendez vous</w>\nacknowle dging</w>\npel vic</w>\nsolic itor</w>\nsla ys</w>\nnue stra</w>\nlo d\nis lander</w>\nfer oci\nfashion show</w>\nra ss</w>\ndge on</w>\nadole scents</w>\nsma shes</w>\nnegli gence</w>\ngrate ful\nved ere</w>\nsw oop</w>\ning l\napol ice</w>\nvand alism</w>\ngan n</w>\njo ao</w>\ndi supdates</w>\nzimbab we\nunder age</w>\nradi ance</w>\nw of\nbour geo\npla s\ncr ani\ngh ue</w>\nwrec kem</w>\nwarran ts</w>\nre form\njim mie</w>\nat wood</w>\nys l</w>\nneil himself</w>\nl bj</w>\ni man\ntan to</w>\nnois se\nver bs</w>\nequip o</w>\nal together</w>\nmam ent</w>\nl ice</w>\ndou glass</w>\ntier ney</w>\npri med</w>\nj hal\nfurn itu\nbraz ili\nv ill</w>\npast els</w>\nn ison</w>\nu ff</w>\nparal ysis</w>\njay e</w>\nim po\nðŁĳ ģ</w>\nstrate gically</w>\npakistan is</w>\nwas sup</w>\nsuper bike</w>\nthank u</w>\ntru elove</w>\nsha ikh</w>\nisrael is</w>\nvi p\nto g</w>\nli en</w>\nla ker\ngrey hounds</w>\ncul ars</w>\nbian chi</w>\nbalot elli</w>\nar ran</w>\nloo s</w>\nstr ates</w>\nhe bron</w>\nar vo</w>\nsunder land\nthe al\ntomb stone</w>\nsand man</w>\nc pac</w>\nthanks giving\nlove him</w>\nlat ino\nan in</w>\naka if</w>\nĭ ãĤ\ntor quay</w>\ndi est</w>\nalli anz</w>\nðŁĺ ķ\ngolf club</w>\ncl lr\nwal cott</w>\nsch nau\npromp ted</w>\nnomin ating</w>\nlen nox</w>\nval et</w>\nmon ro\nmay ward\ne ph\nðŁĶ Ķ</w>\ninter oper\nr da</w>\nre flex\narm chair</w>\nê° ķ\nstri pper</w>\npor ti\nph arm</w>\nham za</w>\nni reland</w>\nne ue</w>\nh pv</w>\nport foli\nsun burn</w>\nfris bee</w>\nbe al</w>\nbapti ste</w>\nx h</w>\nty m</w>\npr ati\no vers\nhaz rat</w>\ndeser t\nder ry\nus ky</w>\nem mett</w>\nach arya</w>\n)_/ Â¯</w>\nshu d</w>\nmay a\nham ill\nra im\nnr c</w>\nfitt ings</w>\ncur vy</w>\nðŁı ĩ\nster ling\nà¥ Ģ\nwal kin</w>\nshort cuts</w>\nmil ly</w>\nast ur\nalpha be\npl i</w>\npe z\nmiss you</w>\nrad ford</w>\nml g</w>\nta eyang</w>\nnotjust lakes</w>\ndu mps</w>\nseren dip\nle ur</w>\nra ving</w>\ne ster</w>\nde priv\nabsc bn</w>\nðŁĳĩ ðŁı»\nscar city</w>\no cr\nmean ings</w>\ncap t\nda hl\nfer mentation</w>\nbri oche</w>\nto win</w>\nout lander\nmassi mo</w>\nen cro\nðŁ¥ ³\nbuil t\npo tam\nkir i</w>\ntm w</w>\nmonit ored</w>\nk ites</w>\npeoples vote</w>\ngray son\níģ ¬</w>\nafri ka</w>\na dies</w>\ni vote\ngy ne\ng annon</w>\ndi x\nc mc</w>\nou ral</w>\nfox andfriends</w>\nbel i</w>\nig ne</w>\ngl an</w>\nkatrin akaif</w>\nco politics</w>\nqual itative</w>\np si\nlu cci</w>\ndisc oura\nâĺ ®</w>\nkel li\ngau tam\ncarac as</w>\nreale st</w>\npu la\nin us</w>\nhill top</w>\nmake aw\natten borough</w>\ntw y\nr arity</w>\npeck ham</w>\nma hon\ncorn elius</w>\nclin icians</w>\nton line</w>\ntb i</w>\nparadi se\nka si\ninev it\nfresh ness</w>\ncolling wood</w>\nlun atic</w>\ndefen se\ncop d</w>\nin fra</w>\nwain wright</w>\nsains bury</w>\nalab am\nte ma</w>\nlac o\nchec ker</w>\nreleg ated</w>\ntren t\nstal ks</w>\nhuff post\nbhubanes war</w>\nast ral</w>\nshare your\nprim rose</w>\nhi me</w>\ncat an</w>\nend ment</w>\nen dow\ncle mens</w>\nmal oney</w>\nhil ary\ngame time</w>\nden ise\ncollabor ators</w>\nb wo\nradic als</w>\ngue tta</w>\nici on\nau a</w>\nsnap matic</w>\nsat chel</w>\nexcav ation</w>\nbase man</w>\ns Ã£o</w>\ngn ation</w>\nfel d\nsurve y\nshah zad</w>\nma st\nanirud hofficial</w>\ntru cker</w>\not ago</w>\ngeo graph\nethe l</w>\nâļ¡ï¸ı âļ¡ï¸ı</w>\ns ver\nmu tt</w>\ninternetof things</w>\nancho red</w>\nwh ouse</w>\nbang la</w>\nbal main</w>\nç¹ ĭãģ\nbreak fa\ná Ģ\ntwi ster</w>\nte tris</w>\nca v</w>\nstag s</w>\ng z\nau b</w>\nstor med</w>\nhel ens</w>\nyar mouth</w>\nst asy</w>\ngustav o</w>\nco sc\nvin son</w>\nup p</w>\nsc ricket</w>\nassump tions</w>\napp e</w>\nnu h</w>\nu er</w>\npre mise</w>\nn aga\ne amon\ncoron ary</w>\nna f</w>\nnorth side</w>\nel mer</w>\nro tar\nout lining</w>\nel f\nre surg\nkat elyn</w>\nin can\nhyster ia</w>\nce e\nam bani</w>\npro lly</w>\nĮ ãĤĬãģ\nax es</w>\nsan jose</w>\nrem brandt</w>\nmag pie</w>\neven ly</w>\nscor sese</w>\nqu aint</w>\nf g\nb buk</w>\nindian football</w>\nweare all\nspd wy</w>\npis ces</w>\nec g</w>\nâĺħâĺħâĺħâĺħ âĺħ</w>\npre orders</w>\n: |</w>\nni pple</w>\nsal azar</w>\nju me\njail break</w>\nmin n\nbas sett</w>\nze tta</w>\njef free\nad jun\ntic on</w>\nsan diego\ndrink local</w>\nchol era</w>\nsolic itors</w>\no bo\ncom post\nni an</w>\nwr a</w>\ntre ach\nic ic\nprofession al\ndel ve</w>\nleg ate</w>\nhistor ia</w>\ncro issant</w>\ncon noisse\nnam o\npalli ative</w>\nchem trails</w>\ni ority</w>\nglobal warming</w>\ncomic art</w>\nbehavi oural</w>\nre sted</w>\nli as</w>\ncli mates</w>\nŁ ãģĦ</w>\nrut land</w>\nnou rish</w>\nmenopau se</w>\nhot ties</w>\ndemen ti\nve spa</w>\nmel ville</w>\nanal ogue</w>\ntz man</w>\nstr ung</w>\nim perfect</w>\ngl are</w>\ncir cling</w>\nros berg</w>\nrec o</w>\noc ity\nlo ire</w>\nem be\ndo ssier</w>\nne el</w>\nnan do\nme a\ngal vani\nfin esse</w>\nag p</w>\nberke ley\nasi m</w>\nâĺº âĺº</w>\nquil ted</w>\nish ere</w>\nun matched</w>\npo tion</w>\nfor z\nat re\nselfi es\njuli ana</w>\nðŁļ ¶\nâĸ º\nmel ton</w>\nâłĢâłĢâłĢâłĢ âłĢâłĢâłĢâłĢ\nspin rilla</w>\npur cell</w>\ned p</w>\nat leti</w>\ntony awards</w>\nra ja\npro gno\nmol ten</w>\nstu ff\np ally</w>\nnobel prize</w>\nâĻ» ï¸ı</w>\nspiritu al\nspe ake\nsa sha\nbri um</w>\ntru ss</w>\ncritici ze</w>\nassassinscre ed</w>\nyor uba</w>\nu lo\nfire man</w>\nworkin progress</w>\nef cc</w>\nfla res</w>\nro bot\nhi kers</w>\ncl l\nshado wing</w>\npat sy</w>\nleh man</w>\nc ns</w>\nå ±\nguad al\nà± į</w>\nra pe\nr honda</w>\nparalle ls</w>\nson ja</w>\nlangu age\nland ings</w>\nz ola</w>\ncr amps</w>\nbur ning\napprais al</w>\njol la</w>\nham m</w>\nkas a</w>\ngul ly</w>\nf go</w>\nuly sses</w>\nri be\nðŁĴ Ħ\nib u</w>\neti enne</w>\nbri ar</w>\nfin ely</w>\ncomb ating</w>\ny ql</w>\ngo tham\nwe chat</w>\nto paz</w>\nprimar ies</w>\nl se\niz z</w>\nhel e</w>\ndispon ible</w>\ncy stic</w>\nbel ichick</w>\nth rush</w>\nkansas city</w>\nge om\nsoli di\nred bubble</w>\nby stand\ncambridge shire</w>\npar fait</w>\nast le</w>\now o</w>\nind ore</w>\nstom ping</w>\nsm elly</w>\nðŁ¤ ĸ</w>\nlocom o\nadm itting</w>\nhol me</w>\nclock wise</w>\nmin sk</w>\nmc co\nfor get\nev p</w>\ncam ra</w>\nab ella</w>\nyo tes</w>\nuniversit yof\nmÃ© xico</w>\nsilver ado</w>\nric ket\ncrom bie</w>\npu j\neradic ate</w>\ndeli ght\ny go\nglam ping</w>\nvic a</w>\ndu ggan</w>\ncoun ters</w>\ncf d</w>\nsc our\nreact js</w>\npu ram</w>\nparas ites</w>\nin ki\nvill en\nstel la\nli mbo</w>\nang as</w>\nk cr\nðŁĴļðŁĴļ ðŁĴļ</w>\nvap ori\nmum ford</w>\noli gar\nà ¼\nal oo</w>\nboo ties</w>\nad r</w>\nk elli</w>\ndru mmers</w>\nav ici\nnature uk</w>\nron al\nin trac\nun splash</w>\nle che</w>\ng oma</w>\nel ine\nenvir o</w>\nbi onic</w>\nbu eno</w>\nmi k</w>\nav in\nstar ling</w>\nem powers</w>\ncake day</w>\nboy cot\nðŁĴļ ðŁĴļ</w>\nðŁĮ¸ ðŁĮ¸\nv ach\nm ci\nfractu res</w>\nger i</w>\nsk ing\nexclu ded</w>\nlu ce</w>\nja ve\nig gy\nevi den\naki stan</w>\na wn</w>\nmor als</w>\nluci fer\nha ban\ntumb ling</w>\nsunday motivation</w>\nmo sley</w>\ncaptain america</w>\nsch icago</w>\nthe one</w>\nmo td</w>\nd ts</w>\nðŁĲ ¼</w>\nrep ell\nii i\nlocu st</w>\ngeo spatial</w>\nmer sey</w>\nimmer se</w>\ndesc end</w>\nber nade\nj s\nboat sales</w>\nwin der</w>\ncran k\nsing leton</w>\ncandid acy</w>\nben a</w>\nðŁı» âĢį\nhigh lander</w>\nol t</w>\nk prs</w>\nhealthy lifestyle</w>\nfour teen</w>\nend the\nith aca</w>\ncircul ated</w>\nr ans</w>\npre valent</w>\nha vas\nsplend or</w>\nroo ster\nkalamaz oo</w>\njewell ers</w>\nenne dy</w>\nrou sey</w>\nes y\ncann ons</w>\nornam ental</w>\n// //\nren don</w>\nwin ne\nmol ding</w>\neid mubarak</w>\ncoun tess</w>\nsimon a</w>\nha wa</w>\nfo es</w>\ndu ster</w>\nsb u</w>\npor tray</w>\nmar ries</w>\ngoo dday\ncho co\nachi ever</w>\nðŁĺ¹ ðŁĺ¹\npre neur</w>\ntr amp</w>\ntom i</w>\nn bat\ngarden chat</w>\nfarra khan</w>\never glades</w>\nab ru\nsou sa</w>\nse ce\nhomes wee\nterre strial</w>\nbar it\nsri devi</w>\nol u</w>\nmel inda</w>\nf rick</w>\ncan dies</w>\nðŁĺŃ ðŁĴķ</w>\nqu reshi</w>\nfamily fun</w>\nexor cist</w>\ncardin al\nny t\ndies el\ncu mulus</w>\ncapric orn</w>\nsi ology</w>\nlor na</w>\ndou gie</w>\nan die</w>\nsuper sport</w>\nc fl\nÐ¿ ÑĢÐ¸\nsay ang</w>\npe ek\nà¸ Ĭ</w>\nlo be</w>\nj em\ning lis</w>\ngg led</w>\nc sn</w>\namne sty\nchu ps</w>\nba es</w>\nsau er\nðŁı Ĳ\nmongo lian</w>\nen et</w>\nback street\ndr illed</w>\nacce ssing</w>\nce o\nb se</w>\nai ken</w>\npur r</w>\nwor sen\nwhe res\nwar k\ntesti fying</w>\nbu ri\nbla st\naw g</w>\nðŁĵ ĭ</w>\nre defining</w>\nhear ing\nu ci\nc mp\nbon i</w>\ntail oring</w>\nta ji\nnoc chi</w>\nem t</w>\nstephen king</w>\nne et</w>\ncompla ins</w>\ncampaig ner</w>\nluci ano</w>\ntwili ght\nti esto</w>\npas sports</w>\nflo yd\ncathe dr\nna ked\ncaregi ver</w>\nb coz</w>\nade cides</w>\nku ri\nly k</w>\nbr aries</w>\ndren ched</w>\ndisc lose</w>\nðŁĴª ðŁı½\nle blanc</w>\nje tty</w>\ngar ty</w>\nchip mun\nb su</w>\nrhyth mic</w>\nic z</w>\nfri d</w>\nanne x</w>\name x</w>\nsolo ist</w>\nlanc ers</w>\narro whead</w>\nspeci fication</w>\nsimul ated</w>\nna is\ninver te\nbo wing</w>\nwor ship\nf z</w>\nabo ss</w>\nsha q\nì¶ ķ\nchalleng ers</w>\nan arch\naamaadmi party</w>\nãħĭãħĭ ãħĭ</w>\nsuffol k\nso corro</w>\nsn ell</w>\ncla dding</w>\nabsor bing</w>\nshaw a</w>\nparticip ates</w>\nðŁį Ķ\nbook stores</w>\nbak u\nseap ort</w>\nko jima</w>\ngab y</w>\npack ard</w>\nelectr ician</w>\nlet it\nmo wing</w>\nfa wad\nyoung jae</w>\nhot mail</w>\nmen ing\nu rie</w>\nintim acy</w>\ncon ti\n: \")</w>\nlifeis good</w>\nin ciner\ni dri\ncraz iness</w>\njour nos</w>\nfran chi\nbott len\nal da</w>\nff es</w>\nk x</w>\nsouth we\nair a</w>\nclay ton\nsco ti\nf j</w>\nbri ga\nðŁ¤ĺ ðŁı»\ndemonstr ators</w>\ny z</w>\nstor k</w>\nna q\ncasc ades</w>\ntravel chat</w>\nplat a</w>\npad ma</w>\nfran ci\nat tain</w>\nbat girl</w>\nlom bard</w>\nhoo s</w>\nd dos</w>\nneon atal</w>\ndiscla imer</w>\nr ss\nr ant\ndi sen\ntex aste\nso cal\nfrac tal</w>\ncam ry</w>\nstri fe</w>\nsn acking</w>\nmu h</w>\nsant ander</w>\nmor ons</w>\ngra f\npar ades</w>\nhu ston</w>\ndru pal</w>\nmi ento</w>\nkir stel</w>\nhy de\nvom it</w>\nforti fied</w>\nsphin x</w>\nda v</w>\nbir yani</w>\nwin nings</w>\ns baseball</w>\nmer ged</w>\nlovel ondon</w>\nling ering</w>\ndream big</w>\ncar leton</w>\nliveli hood</w>\ndjan go</w>\nastri d</w>\ngri ds</w>\ndown e</w>\nbru ised</w>\ns ne</w>\nscarec row</w>\nhel ium</w>\nf nc</w>\nbi ggs</w>\nan ter\nrestor ative</w>\nem pires</w>\nab del\nlife style\nkiwan is</w>\ncolloqui um</w>\nme en</w>\npr ick</w>\nanti que\nze b</w>\nmi mic</w>\nedmon ds</w>\nðŁĳĬ ðŁĳĬ</w>\nq ing\npp el</w>\nmc gill\ninterpre ting</w>\nâŀ ķ</w>\nrash ad</w>\ndo ka</w>\nnarr ator</w>\nelectro magnetic</w>\nash by</w>\nsau ra\niran deal</w>\nâģ īï¸ı</w>\nkrish nan</w>\nin di</w>\nff en</w>\nbre a</w>\nos man</w>\nmultin ational</w>\nchi ppe\nrecruit ers</w>\naus biz</w>\np ounding</w>\nre gen\ncur sor</w>\nrefu sal</w>\nmac s</w>\nin ak\nax ial</w>\nwa ifu</w>\nup cycled</w>\nhindu stan</w>\ncas sini</w>\ncarly le</w>\nscrat ches</w>\nre ef\nman atee</w>\neat ery</w>\nðŁĵ ¢\nun condition\nsen pai</w>\non ther\ncomic book</w>\npro sciutto</w>\nde mar</w>\nmi se\nma ge\nfre ec\naye sha</w>\nal der</w>\nandroid games</w>\nley ton</w>\nho ck</w>\ndoor way</w>\nchicagof ire</w>\naali yah</w>\nsw elling</w>\nbi x\n. ðŁĺĤ</w>\nevan kirstel</w>\ntorpe do</w>\nkon stant\ngenevie ve</w>\nma ia</w>\nha user</w>\ndo torg</w>\nhide ous</w>\nfi k</w>\nsp raw\ne ek</w>\nz appa</w>\nwan dered</w>\n' '\nra jan</w>\nbam bi</w>\n( $)</w>\nwid ening</w>\ntool box</w>\nsa ir\nillumin ating</w>\npra ys</w>\nout patient</w>\ni w</w>\nday o</w>\nlo b</w>\nsw fl</w>\nsha des\ngu ms</w>\ncoo kin</w>\nko di\ngri ffin\ntraum ati\nste a</w>\nslaugh tered</w>\ngod bless\nair time</w>\npseu do</w>\nb sa</w>\nhau led</w>\nar if</w>\nà¸Ńà¸ ĩ\nle l</w>\nwc po</w>\nmil iti\nchar ters</w>\nworl da\nru k</w>\nk gs</w>\ndigital india</w>\nis able</w>\nidyl lic</w>\nesp ino\nmarie tta</w>\ne bo</w>\nteam canada</w>\nab our</w>\nwil ton</w>\nrock stars</w>\nfav ored</w>\nphys ic\nwrink le</w>\ntb r</w>\nd print</w>\nball arat</w>\nad al\nz ey\nðŁĺį ðŁĶ¥</w>\ntom lin</w>\nmt r</w>\npal sy</w>\nfener bah\ntight en</w>\nphil ia</w>\nir oning</w>\nry u\nb ant</w>\nenqu ire</w>\nca ir</w>\nabur ger</w>\ntru n</w>\ngreen berg</w>\nchau han</w>\nir ina</w>\nsh ani\ntrend setter</w>\npre tt\nzaf ar</w>\nalo ve\nv ici\npan ic\nno o</w>\nlu stre</w>\ndisrup ted</w>\nbal lis\nson sof\nmon si\ninst ac\nake st</w>\nëĭ ¤\nkw ame</w>\nhorror movies</w>\ndistric t\nsau cy</w>\nmb an</w>\nar mies</w>\nwith drawn</w>\nmed ics</w>\nloft us</w>\ner oom</w>\nbe kind</w>\nar ns</w>\nall on</w>\nun ison</w>\ndavi ds</w>\ncr at</w>\nnicot ine</w>\nso or\nsm x</w>\non co\ncospla ying</w>\nzombi es\nhar ms</w>\ne ger\nro sy</w>\nmoon shine</w>\nfe in\nce tt</w>\ndu brov\nreg ents</w>\nben itez</w>\nðŁĳıðŁı¼ ðŁĳıðŁı¼</w>\nste c</w>\nm alia</w>\nprioriti ze</w>\nic eland\nft se</w>\nv amo\nlam ont</w>\nhomo sexuality</w>\nbre es</w>\nregu i</w>\ncb p</w>\nte j</w>\nsky sports</w>\ndeter gent</w>\nsha sta</w>\nde rel\nconserv ancy</w>\ncolori zed</w>\naccol ades</w>\nvis o</w>\nshow your\nnan ow\nbice ps</w>\nus ability</w>\nbi m\ndailys ketch</w>\npearl jam</w>\nstran gest</w>\nmega deth</w>\nbroad casts</w>\nbar ren</w>\nar ton</w>\nchri ss\nconfi gu\nlu res</w>\nis the\ne ul\nrailway ana</w>\nglobal health</w>\ngi anni</w>\nu aap\ns lum</w>\nconsci ously</w>\nab re</w>\nn up\nbud get\nv ada</w>\ne sch\nreal ness</w>\ner ased</w>\nth unt</w>\nbe z</w>\narmist ice</w>\nðŁĳ ¹</w>\nsh run\no led</w>\ndriver less</w>\nðŁ¤· ðŁı»âĢįâĻĢï¸ı</w>\nwon dr\nsk an\nsal aam</w>\nmother land</w>\nh wang</w>\ngen o</w>\ngang nam</w>\ntw right</w>\nendor sing</w>\nen ic\nador ation</w>\npau sed</w>\npatric ks</w>\ndo cked</w>\nplat te</w>\nff xv</w>\nethnic ity</w>\nauto show</w>\nside show</w>\nafter life</w>\nre located</w>\norphan ed</w>\nfood network</w>\ndare to\nand ra\nsla ps</w>\nv live</w>\nswim s</w>\nre imagined</w>\nmist le\nre vise</w>\nreal ity\nbhar ti</w>\nðŁĴĻ ðŁĴĽ\nlate st\nprou dest</w>\ngra sses</w>\nlan yard</w>\nfresh est</w>\ncarcin oma</w>\nanom aly</w>\nzieg ler</w>\nsum ner</w>\nly rix</w>\ngor g</w>\nis d\nav el\nswild life</w>\nme squ\njohn cena</w>\neuro league</w>\nsab er\nmaster ful</w>\nyar ra</w>\ncogn ition</w>\njacob son</w>\nabo lic</w>\nsir loin</w>\nshuk la</w>\nmoj ito</w>\nsu pere\nst weet</w>\nme z</w>\ne sa\nrudol f</w>\ngur a</w>\nwhere you\ntt m</w>\nwin s\ntrust worthy</w>\nny k</w>\nbra den</w>\ntable top\ngood food</w>\nes on\nbe k\nlingui stic</w>\ngra ys</w>\nch ath\nh cs</w>\nmon i\nde ans</w>\ncu ssions</w>\nch ell</w>\nslo ws</w>\nhe mi</w>\nd app\nshar pie</w>\nboo sters</w>\na os</w>\nstr ack</w>\nse dona</w>\nmu eller\nhard wick</w>\nor nate</w>\nthor a</w>\nsal ud</w>\no twol\nch um\nmi ho</w>\nfor age</w>\nthel ittle\ntear ful</w>\nones elf</w>\nmin dy\nsm g</w>\ngmb h</w>\nemer ald\nðŁĶ´ âļªï¸ı\ntu tti</w>\nrecep tions</w>\nre vising</w>\ni brox</w>\ntope ka</w>\nsal ami</w>\nexpan se</w>\ni books</w>\ndob son</w>\ncli o</w>\nat s\nðŁļ Į</w>\nmo ha\nis ance</w>\nshu tters</w>\nmoo t</w>\njan ine</w>\nmarvel comics</w>\njor dani\npos er</w>\nkenne th\nhy ung\nde ja</w>\nase ball</w>\nspeci ality</w>\neu ston</w>\nclassic car</w>\nhad ith</w>\nðŁĲ ī</w>\nchas ing\niz o</w>\ngros ven\nag lia</w>\nthisdayin history</w>\nt row</w>\nom ile</w>\nhu ar\nby n\nsal ine</w>\ndiv ine\ndemon ic</w>\nty ran\nhan dover</w>\nrevit alization</w>\npa ella</w>\ncryp tic</w>\nse dg\nm end</w>\ndun kirk</w>\nbre d\nwal d\nsport scar</w>\na ard\nwhe aton</w>\nda ener\nk lan</w>\nbr t</w>\nbakhta war\nspi res</w>\nschu bert</w>\nro ti</w>\npoli sh\no se\nag ame</w>\nwonder con</w>\nprote stant</w>\nbo sa</w>\nðŁĺ Ł</w>\nd Ã¼\njoy ride</w>\nger trude</w>\nâĿ Ŀ</w>\ngil a</w>\nv h\ntw a</w>\ntra v</w>\nswal lowed</w>\nstar ve</w>\nla in\nent ren\nrei ki</w>\nsu kh\ncra ic</w>\naz u</w>\nweb page</w>\nkee fe</w>\nhypo the\nhir sch</w>\nhel le</w>\ncamp ground</w>\nw amy</w>\ntra vi\nsha hi</w>\nsan deep</w>\nru i</w>\nhan uman</w>\ndw p</w>\nreposit ory</w>\nno or\nno ff</w>\nun real\np ell</w>\nblack history</w>\nhar vick</w>\nma scar\npay ee</w>\npa sha</w>\ngastron omy</w>\nd ÃŃ\nai g</w>\nrosen thal</w>\nopen day</w>\nembelli shed</w>\nt tip</w>\nsun bathing</w>\ngo pack\nend ome\nï¸ı #</w>\ninvali d</w>\nfinal four</w>\nst fu</w>\nsquish y</w>\nra sta</w>\nmo sch\njam esc\ndie trich</w>\nsel a</w>\nmel b\nel vi\nt dp</w>\nsun i</w>\nsli t</w>\nj ha\nbi za</w>\nspi ked</w>\nl li\nl illard</w>\nvam pi\nsyno psis</w>\naz har</w>\nkendrick lamar</w>\nĮãĤĬãģ ŁãģĦ</w>\nheart less</w>\ncountry file</w>\nair play</w>\narrog ance</w>\npre e</w>\nvirtu oso</w>\nãħłãħł ãħłãħł\nraj u</w>\nle bu\nfor ward\ntu g\ndro s</w>\nmondaymotiv aton</w>\nconcep cion</w>\nthel o\npad i</w>\nlooo ol</w>\nÑĢ Ð¾Ð´\nit ss\neth ical\nend uro</w>\n__ :</w>\nexpend iture</w>\nmon ste\nmas king</w>\nterri ers</w>\nib is</w>\ne mber</w>\ncu mple</w>\npunctu ation</w>\npi per\nir vin</w>\nade e</w>\nyy yyyy</w>\nflash backs</w>\ncel sius</w>\ndon nie\nbo gota</w>\nben evol\nthe script</w>\nshil pa\npro se\nfin dia</w>\nze ke</w>\nne ko</w>\ndo ves</w>\nblues lyrix</w>\nfro sh</w>\nsowe to</w>\nmp lo\nal ai</w>\nsab i</w>\nraq qa</w>\nwf tv</w>\nstro ller</w>\nian somerhalder</w>\nðŁĶ ª\nan on\nmo seley</w>\n! ?!?</w>\nsta king</w>\nmol y</w>\ncar tri\nc sg</w>\nast or</w>\ntransc end\nma er\nde ux</w>\ncow girl</w>\nsas k\npun ter</w>\nma ken\no ates</w>\nlove tt</w>\ngrow ler</w>\nsag in\nv n\nssi ble</w>\nofficeof rg</w>\ny mc\nsab ar\nfaul ty</w>\nap ha</w>\nak on</w>\nðŁĳ «\nsnow don</w>\nae w</w>\nraise the\nðĿ ĵ\ngrue some</w>\nclement ine</w>\nsp ing</w>\nlat a</w>\nworlden viron\nmi mic\ncan aria</w>\nbakhtawar bz</w>\nao a</w>\nfal a\nãĤ Ń\navi va</w>\nyou uuu</w>\nthi gh\nla dders</w>\ngu mbo</w>\ntz ky</w>\nfu zz\nplastic pollution</w>\nest ate\nstrength ened</w>\nk ant</w>\ndr in</w>\ncal vert</w>\ntransform ational</w>\nfrigh tened</w>\nmac lean</w>\nelited angerous</w>\near thy</w>\nt son</w>\nto da</w>\nj nu</w>\n.. ,</w>\nmic hal\ni ban\nje ong\nis real</w>\nsim coe</w>\nexclu sives</w>\nblue bells</w>\nben e</w>\nte u\npil sner</w>\npens ke</w>\nathe ists</w>\nm pu\ncartag ena</w>\nðŁĴĹ ðŁĴĹ\nmillion aires</w>\nkk kk</w>\nit ar</w>\nsubscri ptions</w>\nremo te\nma fi\nhin ton</w>\nw cc\nho k</w>\nds b\nab leton</w>\nsevent y</w>\npun ks</w>\ne indhoven</w>\nsh one</w>\nmcfar lane</w>\nlim popo</w>\nempha si\nÃ ¼</w>\nsin fo</w>\npe tre\nman grove</w>\nch ino\nber tie</w>\nplay lists</w>\npush awards\np af\ndeb bie\nc do</w>\nr ino</w>\nðŁı¾ âĢįâĻĤï¸ı</w>\nfol ke\nbon nar\nth ine</w>\nsl an</w>\nhal ter</w>\nevi e</w>\naw some</w>\nvul tures</w>\nspar ky</w>\nseiz ures</w>\nâľ Ķ\nram one</w>\nine ffe\nal n\npro ctor</w>\nast ra\nthe voice\ngro te\nsci on</w>\ndead line\nam aya</w>\ntain ted</w>\npatter ned</w>\nexce eding</w>\ncross fit\nkay lee</w>\ndrop box</w>\nru shes</w>\ntack led</w>\nmo by</w>\nretro gamer</w>\nn cbd</w>\nbenef itting</w>\nshay kh</w>\nguild hall</w>\ngen try</w>\ndream cast</w>\ndread ed</w>\nbun dled</w>\nth aw</w>\nrevol ving</w>\nn pt</w>\nkylie jenner</w>\nimagin ative</w>\nron i</w>\nover came</w>\nfamily time</w>\nds burg</w>\ncar naval</w>\nrelation ship\nrecogni zable</w>\ncor oner</w>\nho le\nfan fic</w>\nemir ates\nbur ritos</w>\nanaly se</w>\nthin ner</w>\nne es</w>\ngalli poli</w>\nbl r</w>\ncat woman</w>\n-- >></w>\nau lt\nada ily</w>\nnau ghty\nili o</w>\nsolit aire</w>\nmtv br\njocel yn</w>\narun ach\nrep ent\nsouth gate</w>\nhy acin\nessenti al\nfent on</w>\nand um</w>\nit or\ngo pal</w>\nsl inger</w>\npo sei\naw il\nwi elding</w>\nra ila</w>\neli as\na sto\nÃ ¤</w>\ntend ency</w>\nstr ata</w>\nker t</w>\n< -</w>\nim acele\nda es\nsti mulus</w>\nhan ley</w>\nfit nes\nec stasy</w>\nlim ous\nha iling</w>\nðŁ¤ Ń</w>\nchis wick</w>\ntar ies</w>\nsla v</w>\npul i</w>\nmoderni zation</w>\nblack mail</w>\nb ingham</w>\nh fx\n+ +\nðŁĩ®ðŁĩ ³\nni v</w>\nwe a</w>\nprofess or\nk off</w>\nbol ster</w>\nsu ave</w>\nsequ ences</w>\npepper oni</w>\nnot te</w>\ndre n</w>\nãģ¨ ç¹ĭãģ\nhs v</w>\no ga</w>\nap tly</w>\nz ad\nexcel si\nrin ka</w>\nmol dova</w>\nmin n</w>\nma bel</w>\nconferen cing</w>\nbas ing\nof er\nob si\nhamill himself</w>\ncare less</w>\nbrief ed</w>\ninhe rent</w>\npar ish\ndub nation</w>\ntown sville</w>\nsar awak</w>\ngee ky</w>\ndoncaster isgreat</w>\nwas abi</w>\ngu p</w>\nphen o\ndra inthe\ncarrie underwood</w>\nble eds</w>\nbbc world</w>\nane w</w>\nalta f</w>\ndul wich</w>\nani ston</w>\nw ti</w>\nsumat ra</w>\ngra fton</w>\nbl n</w>\nme ster</w>\nbode ga</w>\nre go</w>\nes q</w>\nan jo</w>\nsump tuous</w>\nmai sie</w>\nï¿ ½\nwil t</w>\njak ob</w>\nel vis\nse pul\nmu ster</w>\nair pollution</w>\npresident e</w>\nhappy monday</w>\nexten sively</w>\nfl ondon</w>\nt ls</w>\nplay ing\npe ed</w>\ndin ho</w>\nvar dy</w>\npi ka</w>\nn iro</w>\nau cus</w>\nðŁį ¦\nnu ll</w>\nel ondon</w>\njuvent us\nimag ines</w>\ndis ab\nlit o</w>\nd ura</w>\nwork places</w>\npromo te\nmc caf\nwood work</w>\nwaw x</w>\nà® ª</w>\ntt ino</w>\nshar i</w>\nsem per\nbetter together</w>\nðŁĳĬ ðŁı»\nze bra\npon dering</w>\nen chil\nho m</w>\ncosm ic\ntan z\nmo cked</w>\nec cc</w>\nath ed</w>\nabo lish</w>\nprop eller</w>\nparis agreement</w>\nassemb lies</w>\nindu stry\nfraudul ent</w>\npe sa</w>\nchang min</w>\nax x\nðŁĴ µ\nirr ational</w>\ncu sa</w>\nramad han</w>\nocta via</w>\non elove</w>\njac ki\nbar ak\ntaxi der\nseri ous\nnathan fillion</w>\nmc en\nch k</w>\npo part</w>\ngrav ity\ncopp ola</w>\nreading fc</w>\nillu sions</w>\nj ig</w>\nww x</w>\nre sh</w>\nex porting</w>\nbuzz ard</w>\nâĻ ¤</w>\np cm</w>\nlan apar\nko s\narom as</w>\nantal ya</w>\nww dc</w>\nven a</w>\nphil a</w>\nball in\nðŁĳ Ħ</w>\nquin ta</w>\nma o\nf ery</w>\neigh ty</w>\nsentim ents</w>\nsafe guarding</w>\nr wa</w>\npu ffs</w>\nluc ille</w>\nde cath\nsl u</w>\nnu gent</w>\nde ter</w>\nbraz il\nze iss</w>\nsuper bowl\nsubsi dy</w>\nalter n\nhi dalgo</w>\nenz ymes</w>\nä ½\ntag ne</w>\nhair dresser</w>\nadri en</w>\nwalk out</w>\noppo ses</w>\ncan tina</w>\nbed side</w>\naf an\nðŁĶ Ĺ\nprophe tic</w>\ndan es</w>\nun successful</w>\nsuper charged</w>\npk k</w>\nexem ption</w>\nhart le\nsecu lar\ncli pping</w>\nbr s</w>\nunited way\nc net</w>\npat chy</w>\nha gan</w>\ne en\nâļ ľ\nvar a</w>\nsym pathi\nnever trump</w>\naffir mation</w>\nom f</w>\nny cfc</w>\nma ja</w>\nsur ro\nkeer th\nup scale</w>\nsandal wood</w>\nmon archy</w>\nkno bs</w>\nå ĭ\npo tholes</w>\nhunger games</w>\nter races</w>\nna sir</w>\ncoun sell\nwelcome to\nwa q\nse aman</w>\nm ita</w>\nstun ningly</w>\non theroad</w>\nin ability</w>\n) !!</w>\nbon go</w>\nant v</w>\nsp ut\nworldenviron mentday</w>\nresu sc\ny td</w>\nfi m</w>\neun hyuk</w>\nsa chin\nrose anne</w>\ncler mont</w>\nape c</w>\nam ina</w>\nv ening</w>\nn antes</w>\nal most\nsin us</w>\nex as</w>\nty l</w>\nti en</w>\nple ad</w>\nlanc s</w>\nbur naby</w>\nre k\njo om\nobserv ers</w>\ndisco graphy</w>\ncl g</w>\nâĻ ¦</w>\nsn ack\nr ti</w>\no ily</w>\ncrystal li\nbru te</w>\nweb development</w>\ntopp ings</w>\nla f\nan is</w>\nad der</w>\nreli ving</w>\ncar lin</w>\nbattle of\nwe g</w>\nsyri an\npon t\nn dc</w>\nlagh ate\nyu ma</w>\nsp p</w>\np iti\nro bbing</w>\nmart ing\nrey kja\nraj put</w>\nnc ds</w>\nkie wicz</w>\nâĢ¢ âĢ¢</w>\nvam pire\nsubstan tially</w>\nopio ids</w>\nnepal i</w>\nk line</w>\nar oo</w>\nunder stand\nlit t</w>\nu it</w>\nthro mbo\nsar ies</w>\nqu ot</w>\nb alling</w>\nt tr\ns gh</w>\nphilip p</w>\nbr ant</w>\nac l\nm ello</w>\nwhit taker</w>\n. ;</w>\ndefi ant</w>\nb gc</w>\nrepl ying</w>\nmir ren</w>\nmetamor pho\nsch wab</w>\nbul ge</w>\nutili zed</w>\npick ering</w>\npar don\nd sa</w>\nà¸ Ī\ndoo ley</w>\ncumul ative</w>\nÐ »\nur gency</w>\ne mir</w>\n+ /-</w>\n¦ Ī</w>\not as</w>\nâı ³</w>\nstation ed</w>\ngrape vine</w>\nar ac\nkaran johar</w>\nf ancy\nsau l\ncoo gs</w>\nlgbt q\nØ§Ù ħ\njav i</w>\nu mmer</w>\npl l\nden is\ndai pur</w>\npu ffin</w>\nlewi sham</w>\nfand om\nco pe\nves matter</w>\ns ve\nhel pless</w>\ndeo dor\nostr ich</w>\nkaz an</w>\nfriday the</w>\ncon dor</w>\nv x</w>\nsophom ores</w>\nrob les</w>\ncu tt</w>\ncli mbers</w>\në¦ ¬\nsle g</w>\nsn f</w>\nmac ys</w>\nhydr ating</w>\ngrou pe</w>\npo yn\nmou lin</w>\nhg tv</w>\nlmfa ooo</w>\nsulph ur</w>\nasdfghj kl</w>\nannab elle</w>\nhump back</w>\nbra ved</w>\nviswas am</w>\nmulti purpose</w>\nhu midi\nescor ted</w>\nbarb ican</w>\nf ad</w>\ncor sa</w>\nðŁ¤ «</w>\npi ppa</w>\nhere to\ncan y\nser gi\nor cas</w>\no vie\ned ou\ns any\nglob alization</w>\nman cini</w>\nfood truck</w>\nf is</w>\ndefi brill\nsch re\nsma fia</w>\nlove wins</w>\nla ut\nk aka</w>\nhol lande</w>\ngame on</w>\nresurg ence</w>\nout side\nolympi ad</w>\nint an\nabstr action</w>\nrapi d\npal om\ncal le\njas min</w>\nattack ers</w>\nswag g</w>\nmit ra</w>\nky lo</w>\nà® ²</w>\nher mitage</w>\ngor do</w>\ne ira</w>\nso sfam</w>\nroll out</w>\nexc ite</w>\nsy nod</w>\nmer rill</w>\nc als</w>\nas sa</w>\nliveli hoods</w>\nju ve\nthe black\ngopack go</w>\nant lers</w>\nalban ian</w>\nwool ly</w>\nqu iche</w>\npuri fication</w>\nare th</w>\nsmar thome</w>\nne k</w>\nall blacks</w>\nmex icans</w>\nis m\nger ms</w>\ncomple xion</w>\nmar ck</w>\nu shi</w>\nðŁĲ Ĳ\nchar l\nca stic</w>\ntill erson</w>\ngiuli ani</w>\nbiode gradable</w>\nmal bec</w>\nbo is\nju bil\nim es</w>\nr ame</w>\ngene tic\nesp nu</w>\nch ley</w>\nso ho\ngo pher\ng sc</w>\nbuu ren</w>\ncu be\nbridesma ids</w>\nwebin ars</w>\nto e\nmani pur</w>\nviol ently</w>\nnotic ias</w>\nex changing</w>\nchi ev\nreplac eable</w>\nmuay thai</w>\nbu ss</w>\nsp il\ninstal ment</w>\ndiv ya</w>\ncait lin\no lim\nfil tering</w>\nwhirl wind</w>\nsta red</w>\nprior it\npr am\npompe ii</w>\nmono logue</w>\nk ite\nbu ka</w>\nâĢ¦ ..</w>\nvac cine\nbre ro</w>\nwoz ni\nsol ent</w>\nre ferr\nmy rt\ngridi ron</w>\ngalatasar ay</w>\nfro ze</w>\nclare mont</w>\nðŁ¥ ĥ</w>\nvictori as\nssel dorf</w>\npa stures</w>\nnet neutrality</w>\nch or</w>\nðŁĳ ģ\nà² ¿</w>\nwe ho</w>\nsymp tom</w>\njo sel\nin ous</w>\ndragon con</w>\npower ball</w>\np te</w>\nfour thofjuly</w>\nec la\near buds</w>\nwhere abouts</w>\nsalt life</w>\ndepriv ation</w>\nch ter</w>\nwi ggle</w>\nsyste m\nps st</w>\nch az\nd any</w>\nri mo</w>\noax aca</w>\nlanapar rilla</w>\nbarcel on\nmelanch oly</w>\nway back\nho tro\nn si\nl illy\nkur o</w>\nja han</w>\nintellec t</w>\nboard game</w>\nðŁı Ĭ</w>\nsneak peek</w>\nk prc</w>\njail s</w>\ncand el\nzan zi\nmor timer</w>\nstar ch</w>\nra gs</w>\np fa</w>\nlong live\nk art\ngir ona</w>\ncro cker</w>\nchristop h</w>\nprecau tions</w>\nwar ship</w>\nper m</w>\nparen t\nvan gogh</w>\ngif ford</w>\nallegh eny</w>\nra yn\nut m</w>\nsten cil</w>\nrec alling</w>\npen ney</w>\nz azzle</w>\nìĥ Ŀ\nhin ds</w>\naren as</w>\nnu ev\nlaw ler</w>\ngu in</w>\ndo this</w>\nðŁĳ ķ</w>\nì¶ķ íķĺ\nwe g\nti b\nri din</w>\ncomplex es</w>\nturbul ent</w>\npe sos</w>\nde marcus</w>\nvall arta</w>\nsam sun\nkis ses\nhein rich</w>\ndeport es</w>\nwil ms\nur d</w>\nthen ext\ninki gayo</w>\nho wi\nfir sts</w>\ncarri age\nclean liness</w>\nmas war\nis ch</w>\nax el\nsi zzle</w>\nroad house</w>\nfr ans</w>\nent ourage</w>\nco bble\nboo th\nbenedic t\ntal on</w>\nfc u</w>\nyear ofthe\nray on</w>\nraider nation</w>\nfo yle</w>\nko val\npi anos</w>\nl pg</w>\nbur mese</w>\nman ure</w>\ngeo caching</w>\ncosc ino</w>\nb np</w>\nfer ra\nstro phy</w>\nmar ais</w>\nce es</w>\nlegen dof\nkat niss</w>\neno ch</w>\nav ed</w>\nyou know\nd prk</w>\nðŁĺ¢ ðŁĺ¢</w>\nsp un\npro st</w>\nsor rows</w>\ncent red</w>\nke a</w>\ngal icia</w>\n? ðŁ¤Ķ</w>\nÑĢÐ¾Ð´ Ð°</w>\nbou chard</w>\nðŁĴĻ ðŁĴľ\nyu i</w>\nseed lings</w>\njon ah\nreco vers</w>\nny rd</w>\nboard room</w>\nsu ma</w>\nmy japs</w>\ntun g\nsha i</w>\nir gc</w>\neli o</w>\nwag ons</w>\nka shi\npolic emen</w>\njohn nie</w>\nale coscino</w>\nshop ify</w>\ndot ted</w>\nde tri\nva w</w>\nto fficial</w>\nin your\nchal mers</w>\ntrac ed</w>\nno vi\nby es</w>\nari el\nnipp on</w>\nla pel</w>\ngri ez\nb gs</w>\nfool ing</w>\nd ita</w>\nvijay sethu\nnm wx</w>\nas ot</w>\nkr anti</w>\nhel m\nve di</w>\nsic kest</w>\nmo chi</w>\nk abo\nshru bs</w>\nhe red\nb sp</w>\nsq m</w>\nham r</w>\ndul kar</w>\nanth a</w>\nnr f</w>\navoid ance</w>\nat en</w>\npubli x</w>\nbe arers</w>\nnas i</w>\nha p</w>\nh ells</w>\nðŁĸ ¥</w>\nà¸ ·</w>\nthelast jedi</w>\noh wx</w>\nðŁį «\nwa hoo</w>\nthere se</w>\nrec aps</w>\nss nhq</w>\nbird photography</w>\nv ay\npet ti\npau lo\nbel vedere</w>\n( *\ngr l</w>\ndu vet</w>\nc pec</w>\nsa it\npor sch\nmeas urable</w>\navi ators</w>\nfre mantle</w>\nbre en</w>\non om\nme and\nlife saving</w>\neu ref</w>\nen don</w>\nembar as\naira sia</w>\nel is</w>\ndun kin\nstar magic\ns ill</w>\nporto bello</w>\nki efer</w>\nex e</w>\nmu ted</w>\nãģ ¦\nwe thepeople</w>\nlogi a</w>\nliber al\ntheforce awakens</w>\nmin ed</w>\nhaun ts</w>\nfreck les</w>\ncare taker</w>\ns india</w>\nâķ Ĳ\ndev lin</w>\nlist on</w>\ndirection er</w>\noh n</w>\nfi garo</w>\nem manuel\ndu bois</w>\ncl ones</w>\nbru ise</w>\nðŁİĪ ðŁİī</w>\ndisin fe\nder matology</w>\nas r</w>\ns watch</w>\ndis comfort</w>\ntam anna\npi day</w>\nmack en\nk atic</w>\ndelu sional</w>\nshaw nee</w>\ngu d\nal bino</w>\np ali\ndin gh\ncucu mbers</w>\ncoffe y</w>\nanticip ating</w>\ntreas ured</w>\nweb summit</w>\nshel tered</w>\nsav or</w>\npedago gy</w>\nm gs</w>\nsh ma</w>\ns bu\nden ali</w>\ncam pos</w>\nbubble gum</w>\no ir\nle aps</w>\ny ler</w>\nr one\nsansk rit</w>\nmin t\nmeat less\nfuturi st</w>\ndu de\na vel</w>\nprote sted</w>\nsqu ire</w>\nz aki</w>\nsz n</w>\nhar court</w>\ncycl one\nbour dain</w>\ngather ings</w>\nd ant\nadvent urer</w>\nparag on</w>\nalt man</w>\ndd ing\nban erjee</w>\nsnorkel ing</w>\nmother well</w>\nmis sy\nen der\nglo ws</w>\nki wis</w>\nchick pea</w>\npor o\ne fron</w>\napp t</w>\nu y</w>\nspeci fied</w>\ngab by\ne strada</w>\ncom bos</w>\nbour bon\nvin i</w>\nvar un\nsteph ani\nkey words</w>\ncar vings</w>\namit abh</w>\nwr ought</w>\ntw al\nre els</w>\nclu bbing</w>\nubi quit\ncri t</w>\nambed kar</w>\næ Ļ\nprun ing</w>\nvaccin ated</w>\nboe ing\ns ks</w>\nlo ona</w>\nhypno sis</w>\nedel man</w>\npho l</w>\nhe w\ncolo sse\nmckin sey</w>\nu on\nto te\nsacrific ing</w>\nox i</w>\nn ang\ne mu\nÐ¿ÑĢÐ¸ ÑĢÐ¾Ð´Ð°</w>\nm th</w>\nkers wednesday</w>\nargu ed</w>\ntimel apse</w>\nris king</w>\nregul ating</w>\nni gh</w>\nlikeli hood</w>\ncu bic\nau ction\nrein for\npi stor\nno ses</w>\nye l</w>\nsnu ggles</w>\npe i\njean ette</w>\nta ku</w>\nri th\nguy z</w>\nà¸ ŀ</w>\ny te</w>\nver ted</w>\npay soff</w>\njau regui</w>\nhoo ligans</w>\nprocedu ral</w>\nmi b</w>\nhar dy\nel eng\nchec kers</w>\nall ine</w>\nthe met</w>\nprou dof\nkeerth yofficial</w>\ncollabor ator</w>\nni u</w>\ninfl icted</w>\nadv ani</w>\nre twee\nmemor iam</w>\nf icial</w>\nti ghter</w>\nsal em\nre viewers</w>\nbr ics</w>\nben digo</w>\nam ell</w>\ntur kish\nsush maswar\npaul son</w>\npal awan</w>\nmol lie</w>\nstitch er</w>\ns burgh</w>\nir u</w>\nhay dn</w>\nen ers</w>\naro a</w>\nu zzi</w>\nsaraj evo</w>\nhel a</w>\napol lo\nnine ty</w>\nvac a</w>\nsp on</w>\nvent u\njel ena</w>\nhei fer</w>\navo ids</w>\nsp ine\npri ze\nmar ist</w>\nre creating</w>\nme de</w>\nwoo den\nfind lay</w>\nro fl</w>\nn di</w>\ncompreh end</w>\nyu go\ny Ã¼\nto work</w>\nu fos</w>\nson ar</w>\npi ston</w>\nrecor ding\ntent ative</w>\nart forsale</w>\npel lets</w>\nfre do</w>\nÙĪ Ø±\nmu ses</w>\ncustom ization</w>\npro found\nis ner</w>\nide ally</w>\nsi am</w>\nplan kton</w>\ncm dr</w>\nman ger</w>\nfran ken</w>\ncustomiz able</w>\nà¤ ®\nwalk away</w>\nswi vel</w>\nvast ly</w>\nno ton\nlex a</w>\nex moor</w>\nz as</w>\ntan te</w>\nreduc tions</w>\nlol ly</w>\nhip sters</w>\nbenef ited</w>\në ²\nww www</w>\nmascul ine</w>\nfi ji\ndre y\nph ill</w>\nane ous</w>\nnic ol</w>\nmen dez</w>\ndisapp ro\nch ner</w>\nthrough s</w>\nshen mue</w>\neast man</w>\nðŁĲ İ\nyu ck</w>\nunder tale</w>\nre ys</w>\ngo beavs</w>\neng en</w>\nc na</w>\nmer r\nbir k\nãģ¨ç¹ĭãģ ĮãĤĬãģŁãģĦ</w>\nâĥ£ @</w>\nyn na</w>\nste ed</w>\noffen der</w>\nat um</w>\nvani shing</w>\npresi denti\nlove them</w>\ng nocchi</w>\nfri ggin</w>\nper il</w>\nmad hya</w>\nag ne</w>\ndee jay\nmar nock</w>\nm tb\nfold able</w>\n@ ___</w>\nstand re\nbron x\nbow ski</w>\nfin ite</w>\ncro ckett</w>\nb sf</w>\nge tit</w>\nseren awilliams</w>\nmir o</w>\nignati us</w>\nsla y\nrin se</w>\nfon due</w>\nsel dom</w>\ns more</w>\ngan i</w>\ndy ce</w>\ndmit ry</w>\ncru mb\nlate post</w>\npri mark</w>\noh ana</w>\nflor als</w>\ndo a</w>\nremembrance day</w>\nd ds</w>\nazi one</w>\ntoon ami</w>\nair port\næĿ ±\nth ad\nfi st\ndine sh</w>\ndr who</w>\nad words</w>\nadmi rer</w>\npro je\nkyrgy z\nà «\nmanife station</w>\nle wan\nj ic\nthi bau\nle ased</w>\nvan ity\nnouri shed</w>\nnever theless</w>\naug mente\nfu elled</w>\nche ad\nwil shere</w>\nru di\np z</w>\nmy co\nmor ro</w>\nherbali fe</w>\nhardro ck\nde man</w>\ndre ality</w>\nsp ades</w>\nce vic\nbha i\nbar on\nultimat efan\nhou news</w>\nto bi</w>\nstru t</w>\nke el</w>\naffili ation</w>\nthe masters</w>\nsm al\nhu e\neste ban</w>\ncon v</w>\nom nic\ndatab ases</w>\nco v</w>\nter ti\nst g</w>\nsnoop dogg</w>\nmetab ol\nleth bridge</w>\nðŁı» âĢįâĻĢï¸ı\nyear ling</w>\nresidente vil</w>\nnws l</w>\niy aki</w>\ngriez mann</w>\nc ous</w>\nðŁĵĿ :</w>\ntor ian</w>\nsam i\nðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\ng are</w>\nalli ances</w>\nwhit field</w>\nwe ther</w>\nrefin ing</w>\ncoy i</w>\nkra ken</w>\nðŁĺĺ âĿ¤</w>\nsingul arity</w>\nlil i</w>\nh ns</w>\nbol dand\nwaw rinka</w>\nmisogy ny</w>\nlo vers\nc q</w>\nb dg</w>\nad ona</w>\ngar ter</w>\nwomen of\nsc d</w>\nrecogn ising</w>\nmun a</w>\nstr ou\nsign alling</w>\nlare do</w>\nhell boy</w>\nalek sand\nun available</w>\npedi atric\nas in\nmer ia</w>\nri shi\nfuturi sm</w>\nw ye\npolari zed</w>\ne we</w>\npro pel</w>\nin forms</w>\ncre ase</w>\n~ \"</w>\narti ston\nlike for\nheidel berg</w>\ner ra</w>\nlife in\nlen ny\ninter rupt</w>\ncohe rent</w>\nca z\nvick ers</w>\nle veled</w>\nf bs</w>\ncab ins</w>\nbu mmed</w>\napost les</w>\nwe h\nten don</w>\nsouven irs</w>\ninfu ri\npier ce\nasse t\nm las</w>\ngo th\ndi ggin</w>\nann as\nyl or</w>\nth waite</w>\nsw el\npan era</w>\nmur derers</w>\ncroo ked\nbs go</w>\nac u</w>\na on</w>\nre an</w>\none of\nko hl</w>\nbloo dh\npest icide</w>\nlost dog</w>\nfle xing</w>\nëĤ ĺ\nsu pra</w>\neter nally</w>\nðŁļ Ļ</w>\npa olo\nol an\nmom o\nis elle</w>\ncaptain marvel</w>\ns lou\nmistak enly</w>\nakhi lesh</w>\nmer t</w>\nil inan</w>\nbu on</w>\nbal kan</w>\nmir ro\nmill en\nder ail\ndam on\ntit i</w>\nbi os</w>\nre don\npic ard</w>\npar te</w>\nðŁ¤ Ł\nØ º\nson ics</w>\nfir sth\ndd c</w>\nveg ans</w>\ntur ban</w>\nni gan</w>\nlot tie</w>\nlyn don</w>\nstar buck\npink floyd</w>\nlife styles</w>\nam ara</w>\na she\nr sc</w>\nval a</w>\nsm er\ncw gc</w>\ncli ent\nbuen as</w>\njag an</w>\ncoo ps</w>\nðŁĳĳ ðŁĳĳ\nspeci alizes</w>\nsnag ged</w>\ng lar\nben net</w>\nwildlife wednesday</w>\nbow den</w>\npi k</w>\nart in</w>\nempor ium</w>\nar l</w>\nre ba</w>\npas ser</w>\ndisappo ints</w>\nadditi ve</w>\nâľĬ ðŁı½</w>\nbay er\nmissou la</w>\nha skell</w>\ncomm ences</w>\nni x\nne man</w>\nexplo ited</w>\nplastic surgery</w>\ncc d</w>\naso cial</w>\nvo t</w>\nsie gel</w>\nfro ome</w>\nkap am\nfar a</w>\ne ha</w>\npro bes</w>\nmw f</w>\nmeet ing\np bb\nak ins</w>\nmistle toe</w>\nkingdom hearts</w>\nfor kids</w>\nec r</w>\nbal e\nescor ts</w>\nadidas originals</w>\nk wa</w>\nk ts</w>\nhallo ffame</w>\nðŁĺį .</w>\nwag s</w>\npot ted</w>\no wing</w>\nhoney comb</w>\nhe fty</w>\nuro logy</w>\nmer le</w>\nb pd</w>\nstri pping</w>\nre ich\nk state\ngu ay\nyon ge</w>\nshak ti\ng loom</w>\nbat t</w>\nson om\nn ery</w>\nel ba</w>\nblan ks</w>\nhel le\ntriple ts</w>\nbom bay\nak arta</w>\nab ia</w>\ntransm itted</w>\nrol f</w>\nja is\nangular js</w>\nfi erc\nm ss</w>\ntrac e\nà¥ ĩ\ntom bs</w>\nold man</w>\nkom bucha</w>\nfo l</w>\ne health</w>\ncere als</w>\nare lli</w>\nin ari</w>\nðŁĴ ©\nwo l</w>\nliber ties</w>\nfa wn</w>\naf firm</w>\nnun avut</w>\nhyster ical</w>\nk drama</w>\nart es</w>\nâĢ¢âĢ¢âĢ¢âĢ¢ âĢ¢âĢ¢âĢ¢âĢ¢\nvalent in</w>\nman slaughter</w>\ngal es</w>\neo in</w>\nenergi zed</w>\ndel s</w>\nwith draws</w>\nst les</w>\nsar castic</w>\nram esh\nincredi bles</w>\nlock hart</w>\nya wn</w>\nultimatefan live</w>\noooooooo oooooooo\nmu en\nguru dev</w>\nte er</w>\npe eling</w>\nnew snow</w>\nlingui stics</w>\ndirec tv</w>\nag end\nuni lever</w>\nru ger</w>\nhan dedly</w>\nero se</w>\nli mel\nthe c\nroyal ties</w>\nfini shers</w>\nnr g</w>\nm gt</w>\nfid get</w>\ncom ps</w>\nbac on\naggre ssively</w>\nab it</w>\nch Ã¢\ntar de</w>\nslu gger</w>\nq anda</w>\ngre ening</w>\nd ats</w>\nensla ved</w>\nspec tor</w>\no ye\nfre ef\nb hand\nstop brexit</w>\nmis conceptions</w>\ncav a</w>\nðŁĺįðŁĺįðŁĺįðŁĺį ðŁĺįðŁĺįðŁĺįðŁĺį\nmultit asking</w>\nhou sel\nferre ira</w>\ncen time\nank les</w>\njo dh\nhel ly</w>\nfro me</w>\nout tuesday</w>\nnar nia</w>\nbal aji</w>\nl bloggers</w>\njyo ti</w>\nðŁį ĩ</w>\nlan cia</w>\ncap ri\ny ap\nnat ash\ndown fall</w>\n.\" âĢĶ</w>\nÃ ®\nligam ent</w>\ncoat ings</w>\nai ded</w>\nhi ko</w>\nfall ing\nencryp ted</w>\nyeg food</w>\ninfringe ment</w>\ncu di</w>\nce p</w>\nðŁĺį ðŁĺĤ</w>\ntra d\nsuper rugby</w>\ned win\nwh iche\nvi meo</w>\nlay ne</w>\nin vigor\nhe he\ndubrov nik</w>\nbie ber\nu tr\nsham an</w>\nop ers</w>\nham ill</w>\nen ig</w>\ndi f</w>\nar um</w>\nscrap book</w>\nmin h</w>\ndiver gence</w>\nmckin non</w>\nlife time\nguter res</w>\nwil le\nple as</w>\npatt y\nmic ron\nk z\ndom aine</w>\nru sher</w>\nm ds</w>\nches ney</w>\nscrew driver</w>\nâģ© ,</w>\nsle dge</w>\nhau er</w>\nchan a</w>\nstam ina</w>\nsprink ler</w>\npl n</w>\nhe ff\nbol ton\nom on\ncar rington</w>\naccor dion</w>\njor ge\ninter ception</w>\nin puts</w>\ngu ll\ntran scription</w>\nvanu atu</w>\nit ical</w>\neth os</w>\ntic h</w>\nspac ey</w>\npee king</w>\nu mi\nha ger\npsycho tic</w>\nilli an\nilli a</w>\nbonnar oo</w>\nan ese</w>\npu c\nlaghate parth</w>\nen hall</w>\neconom ical</w>\ndre dge</w>\n% -</w>\nu we</w>\ntu bular</w>\nscoun cil</w>\npe asants</w>\nfl er</w>\ntumb ler</w>\nhe p</w>\nford ham</w>\nrow ley</w>\niniti als</w>\nev asion</w>\ner nation</w>\nplu gins</w>\ncoch ran</w>\nc attle\nacid ity</w>\nðŁİĬ ðŁİī</w>\nre grann</w>\njump man</w>\nef ace</w>\nx ma\npatri archy</w>\nesco bar</w>\ncristi an</w>\ntip ton</w>\nnu eva</w>\nhack ney\nback seat</w>\nkill arney</w>\naid an\nsta dion</w>\nsimul taneous</w>\nida ho\na je\nu th\nfigu re\nclo s</w>\nbur k\nvolun tar\nrec ite</w>\nmacfar lane</w>\ncur few</w>\nbou do\nw gn\nsti x</w>\nsla p\nscrat ched</w>\nphilli p\njour ne\nex pelled</w>\nwa z</w>\nu ke\ntati ana</w>\nou e</w>\nho pp\ndimit ri</w>\nðŁĵ £\nmato logist</w>\nelectri fying</w>\nblu ffs</w>\nbill smafia</w>\naz cardinals</w>\ny aa\nx mas\nshar a</w>\nr ith</w>\ng ills</w>\ndre s\nbar ton\nauthori zation</w>\nimperi alism</w>\nhome of\nto do\nfoot path</w>\nband width</w>\nvisit spain</w>\nmoh sin</w>\nerup ted</w>\nmi ki</w>\ninsig nia</w>\nmike l</w>\nss h</w>\nger a</w>\nbank holiday\naw an\nt weak</w>\nstar craft</w>\ne al\nconstruc tion\nskelet ons</w>\nle ep\nine m</w>\nbar clay\nship wreck</w>\nmonsi eur</w>\nyo h</w>\nron t</w>\nform ative</w>\nser o\nle p\nhorse man</w>\nhoo sier</w>\nhaz mat</w>\ncylin ders</w>\ncen ti\nðŁĴ¥ðŁĴ¥ ðŁĴ¥</w>\nre em</w>\nna ire</w>\nmus ically</w>\ngras shopper</w>\nest onian</w>\ntermin ology</w>\nro main</w>\nblogger rt</w>\ntox in</w>\nstan ce\ncultiv ated</w>\nan ast\nðŁĲ į\nshi mano</w>\ngo pher</w>\nene i</w>\nrecycla ble</w>\ngam ification</w>\nfight for\nc q\navoc ados</w>\nke ys\neli ke\ngly cer\nshak ur</w>\nmobili zation</w>\ngal ley</w>\nexpla in\nex changed</w>\npe th</w>\nobe dience</w>\nilla ge</w>\nen nis\nãĥ ŀ\nwi v</w>\nwalla bies</w>\nma ar</w>\nig ers</w>\nfin tech\nfin alized</w>\nwo j\nmeaning less</w>\nin field</w>\nonna ise</w>\ne et</w>\nbron te</w>\npass ages</w>\nðŁĳ §\nstrick land</w>\nnorthern lights</w>\nlom ond</w>\nh tc\nwr ay</w>\nshi fter</w>\ndi alog</w>\nðŁį į</w>\n>> >>>></w>\nte atime</w>\nste ch\nsic huan</w>\nqu ill</w>\nfran ca\ncomple mentary</w>\nbar rington</w>\nmarcu s\nmal am</w>\ngoo oo</w>\nfor sa\nelec tra</w>\naf s</w>\nâĹ Ĩ</w>\ntri fe\nsn azzy</w>\nfo lia</w>\nand olan</w>\nafter dark</w>\nwood son</w>\nstra de</w>\nlitt lest</w>\no gun\ncon wy</w>\nco wards</w>\nðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤ</w>\níĬ ¸\nse ul\nmur phy\ndun ks</w>\nkapil shar\njo achim</w>\nwom ack</w>\nequal ity\naver ages</w>\na ine\nðŁ¦ Ī</w>\ntac ular</w>\ndis ability\nu ked\nmid century</w>\nbar thol\nteas ers</w>\ntab ern\nnj caa</w>\nsp out</w>\nop i</w>\nku bball</w>\nbl om\nso ar\npopu lism</w>\nmeth yl\nðŁĳĬ ðŁı¼\no spre\nalo ils</w>\nðŁĵ ĸ\nðŁĮ ļ\nx er\nsp illing</w>\npubl ica</w>\ncar dam\nadi sh</w>\nsa cha</w>\np kg</w>\nbu da</w>\nlyric ist</w>\ni bc</w>\ngru mp\nho ver</w>\nhal ep</w>\nanti body</w>\nanem one</w>\nâĻ¥âĻ¥ âĻ¥âĻ¥\nm cl\nlitho graph</w>\ncc u</w>\ns fest</w>\npath ic</w>\ncalli ster</w>\notta wa\ngun sn\nrut ger\nhali but</w>\nen vision</w>\ndifferenti ate</w>\nðŁļĢ ðŁļĢ\npir an\nlat el\nuc n</w>\ntrou bad\nra ine\nfierc ely</w>\nlearn english</w>\nlea se\nwex mondays</w>\nem it</w>\ndray ton</w>\nbur rell</w>\nscuba diving</w>\nhol ler</w>\ndr u</w>\nclo cked</w>\nw ral</w>\nap ro</w>\ntrans lucent</w>\nw bo</w>\npatri arch</w>\nmo ja\nlan nister</w>\nfish ery</w>\nne derland</w>\nmil dly</w>\nmi rai</w>\nma ko</w>\nja p</w>\nðŁĺ©ðŁĺ© ðŁĺ©</w>\npro statec\np anna</w>\nar ama</w>\nunder taking</w>\ntomp kins</w>\nne op\nsoli ds</w>\nsav oury</w>\ne ames</w>\ncut lery</w>\nwood bridge</w>\nsteam er</w>\nri zzo</w>\nwild cat\nrat na</w>\nlamin ated</w>\nkin eni</w>\njal ap\nai des</w>\nacknowle dges</w>\n?! ?!?!</w>\n! ðŁİī</w>\nw afc</w>\nmag gio</w>\nha ves</w>\ndar je\nof i</w>\ngr il\nv asi\nbru x\nmo hd</w>\nfake speare</w>\narn old\nr mb</w>\nfor be\nwal leye</w>\nro di\ntherapeu tics</w>\nstrate gi\nob ste\nmu dder</w>\ndownload able</w>\ndd ings</w>\nd ca</w>\nasi angames</w>\ncampe on\nappropri ation</w>\nth century</w>\nram atta</w>\ndra ped</w>\nbul lion</w>\nmu c</w>\none x</w>\nse greg\nophel ia</w>\nbod ily</w>\nâĿ¤ ðŁĺį</w>\nwi zar\nte ased</w>\nade my</w>\nto id</w>\nsur a</w>\nlazar us</w>\nsn ickers</w>\nma se\nlo h\nbow ed</w>\nbibli o\nx change</w>\nhar lan</w>\ngho shal</w>\nflavor ful</w>\nbha gat</w>\nalle z</w>\nwhiche ver</w>\nten stein</w>\ndisc er\norgan iser</w>\nmt g\ndream liner</w>\nt se\nhok kaido</w>\nmo k\nindulg ent</w>\nhick man</w>\nblin ded</w>\nal yn\naaa ah</w>\nsp ool</w>\nlough borough</w>\ninter pret\net v\naristo tle</w>\noptimi zing</w>\navici i</w>\nmadu rai</w>\nju li</w>\nnaw az\nmat chups</w>\nab ide</w>\npaint ing\nw elling</w>\nvel i</w>\noctag on</w>\nin scribed</w>\npo king</w>\nplac er</w>\nlife cycle</w>\nkili g</w>\ng sp</w>\neli ves</w>\ncle ments</w>\nna sheed</w>\nme sut</w>\nincarcer ated</w>\ndist illed</w>\nwal ang</w>\ndelic acy</w>\ndel gado</w>\nche z\nch ita</w>\nad ero</w>\ntu x</w>\npati l</w>\no do\nabh cosmetics</w>\ntv c</w>\np bc</w>\nin accurate</w>\nhardwork paysoff</w>\nball er\nquot ation</w>\nmerchandi sing</w>\nga stri\ndefen ses</w>\ndro gba</w>\nbex hill</w>\nban kno\nwin ona</w>\nsi eg\np gs</w>\nhahah ha</w>\nagu chi</w>\nsu bram\nmirac le\nde sch\nli bre\nba cher</w>\nent ine</w>\nbbcra di\nlou dest</w>\nr ps</w>\npi erc\nfr yer</w>\nstorm trooper</w>\nrafael nadal</w>\npas co</w>\nexhau stion</w>\nepic onetsy</w>\nrc tid</w>\nkel lie</w>\nga ines</w>\nd bz</w>\nsm riti\ns bridge</w>\nlim ited\ncla w\ntechnic al\nbio graphical</w>\nado red</w>\nà¸ °</w>\nexclu de</w>\nac adia</w>\nkey boards</w>\nfur man</w>\nso ca</w>\nsur u</w>\nni ps</w>\nsw aps</w>\nserver less</w>\nrun e</w>\npu ffy</w>\nnorth ampton\nnish ings</w>\nhen der\ncartri dges</w>\ngun shot</w>\nðŁĵ ¹</w>\nfil ament</w>\nrespon dents</w>\npey ton\nmountaine er</w>\nmer ging</w>\nlife span</w>\nintimid ation</w>\np afc</w>\nnl wx</w>\nexpan sive</w>\npur r\nf ck</w>\nca e</w>\nat ti\ntele thon</w>\nso hn</w>\nmend el\nlo pes</w>\ndor i</w>\nun broken</w>\nte red\ntast ings</w>\nin active</w>\ndisin tegr\nt assel</w>\nshare the\npi ano\nis lay</w>\nair space</w>\nz awa</w>\nricci ardo</w>\nming ton\nfresh er</w>\ncur ry\nre vs</w>\npharo ah</w>\nh mv</w>\nexhilar ating</w>\nwh oo</w>\nlin kin</w>\nkri spy</w>\ncompeten cy</w>\nste wards</w>\nne bu\nkat su\nad mins</w>\nbaz ar</w>\nas ar</w>\ngiving back</w>\ns summit</w>\nsong z</w>\nlin us</w>\nraj kumar</w>\nfarm ington</w>\nfanta sia</w>\nðŁĺ´ ðŁĺ´</w>\nso bri\nlis se</w>\nbarry more</w>\npri sm\nblo b</w>\nsen ew\nmono xide</w>\nexp ire</w>\neigh teen</w>\ndi pper</w>\nxi ao</w>\nkil t</w>\nhin ch\nbbc sport</w>\nbam boo\np ter\nex al\nðŁ¦ ĭ\nham lin</w>\nexpe ditions</w>\nstar gazing</w>\nfood security</w>\nwy lie</w>\nul f</w>\nst ingly</w>\non storm</w>\nlo eb</w>\nbro ome</w>\nbn ha</w>\npancre atic</w>\neli ve\n!!!!!!!! !!!</w>\nther apper</w>\northo pedic</w>\navengers endgame</w>\nantit rust</w>\nìļ °</w>\ngo te</w>\nom d</w>\noff side</w>\ngy llen\nwin eries</w>\nwhite water</w>\nad l</w>\nlu pita</w>\nexce eds</w>\nconsi sted</w>\nchew bacca</w>\nash leigh</w>\nnhl jets</w>\nis san\nsh ld</w>\nhay at</w>\ncran berries</w>\nðŁ¤ĺ ðŁı½</w>\nrock the\nspring training</w>\nfall out\ndairy free</w>\nwa j</w>\nun decided</w>\nso wn</w>\nrc n</w>\nnorth wales</w>\nhtt r</w>\nfu mble</w>\nd its</w>\ncomp elled</w>\npopu list</w>\nmin ted</w>\nblan chett</w>\n. ''</w>\npro pulsion</w>\nm illa</w>\nau berg\nher tz</w>\nh ta</w>\nu daipur</w>\nserendip ity</w>\nazte cs</w>\nals ace</w>\nðŁĲ ĳ</w>\nlu n</w>\nsho es\nchar li</w>\ngar za</w>\nðŁĴ Ł\npro biotics</w>\nfox tv</w>\nol is</w>\nmi ff\nloc alized</w>\ndiffu ser</w>\nsi gue</w>\nfun ko\nrend ous</w>\nðŁĴ ĳ</w>\njeky ll</w>\n"
  },
  {
    "path": "configs/sd3/tokenizer_2/special_tokens_map.json",
    "content": "{\n  \"bos_token\": {\n    \"content\": \"<|startoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": true,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"eos_token\": {\n    \"content\": \"<|endoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": false,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"pad_token\": {\n    \"content\": \"!\",\n    \"lstrip\": false,\n    \"normalized\": false,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"unk_token\": {\n    \"content\": \"<|endoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": false,\n    \"rstrip\": false,\n    \"single_word\": false\n  }\n}\n"
  },
  {
    "path": "configs/sd3/tokenizer_2/tokenizer_config.json",
    "content": "{\n  \"add_prefix_space\": false,\n  \"added_tokens_decoder\": {\n    \"0\": {\n      \"content\": \"!\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"49406\": {\n      \"content\": \"<|startoftext|>\",\n      \"lstrip\": false,\n      \"normalized\": true,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"49407\": {\n      \"content\": \"<|endoftext|>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    }\n  },\n  \"bos_token\": \"<|startoftext|>\",\n  \"clean_up_tokenization_spaces\": true,\n  \"do_lower_case\": true,\n  \"eos_token\": \"<|endoftext|>\",\n  \"errors\": \"replace\",\n  \"model_max_length\": 77,\n  \"pad_token\": \"!\",\n  \"tokenizer_class\": \"CLIPTokenizer\",\n  \"unk_token\": \"<|endoftext|>\"\n}\n"
  },
  {
    "path": "configs/sd3/tokenizer_2/vocab.json",
    "content": "{\n  \"!\": 0,\n  \"!!\": 1443,\n  \"!!!\": 11194,\n  \"!!!!\": 4003,\n  \"!!!!!!!!\": 11281,\n  \"!!!!!!!!!!!!!!!!\": 30146,\n  \"!!!!!!!!!!!</w>\": 49339,\n  \"!!!!!!!!!!</w>\": 35579,\n  \"!!!!!!!!!</w>\": 28560,\n  \"!!!!!!!!</w>\": 21622,\n  \"!!!!!!!</w>\": 15203,\n  \"!!!!!!</w>\": 9168,\n  \"!!!!!</w>\": 5203,\n  \"!!!!</w>\": 2360,\n  \"!!!\\\"</w>\": 28048,\n  \"!!!)</w>\": 42532,\n  \"!!!</w>\": 995,\n  \"!!\\\"</w>\": 20556,\n  \"!!#</w>\": 34997,\n  \"!!)</w>\": 28352,\n  \"!!</w>\": 748,\n  \"!!@</w>\": 40705,\n  \"!\\\"</w>\": 2947,\n  \"!\\\"@</w>\": 43819,\n  \"!#</w>\": 9670,\n  \"!'</w>\": 13222,\n  \"!),</w>\": 37904,\n  \"!).</w>\": 26225,\n  \"!)</w>\": 4571,\n  \"!*</w>\": 37737,\n  \"!,</w>\": 29325,\n  \"!-</w>\": 43499,\n  \"!...</w>\": 22121,\n  \"!..</w>\": 35475,\n  \"!.</w>\": 22517,\n  \"!:)</w>\": 31671,\n  \"!:</w>\": 17545,\n  \"!</w>\": 256,\n  \"!?!</w>\": 29767,\n  \"!?!?</w>\": 47081,\n  \"!?</w>\": 6004,\n  \"!@</w>\": 15117,\n  \"!]</w>\": 34466,\n  \"!âĢ¦</w>\": 35068,\n  \"!âĿ¤ï¸ı</w>\": 32559,\n  \"!ðŁİī</w>\": 49085,\n  \"!ðŁĺĬ</w>\": 43434,\n  \"!ðŁĺį</w>\": 36438,\n  \"\\\"\": 1,\n  \"\\\"!</w>\": 10377,\n  \"\\\"\\\"\": 41530,\n  \"\\\"\\\"\\\"</w>\": 25539,\n  \"\\\"\\\"</w>\": 8575,\n  \"\\\"#</w>\": 8345,\n  \"\\\"'</w>\": 31065,\n  \"\\\"(</w>\": 32741,\n  \"\\\")</w>\": 13112,\n  \"\\\",</w>\": 4332,\n  \"\\\"-</w>\": 9375,\n  \"\\\"....</w>\": 37785,\n  \"\\\"...</w>\": 9049,\n  \"\\\"..</w>\": 25403,\n  \"\\\".</w>\": 2811,\n  \"\\\"/</w>\": 39486,\n  \"\\\":</w>\": 7811,\n  \"\\\";</w>\": 37549,\n  \"\\\"</w>\": 257,\n  \"\\\"?</w>\": 11727,\n  \"\\\"@</w>\": 1512,\n  \"\\\"@_</w>\": 20236,\n  \"\\\"[</w>\": 36930,\n  \"\\\"âĢ¦</w>\": 33993,\n  \"\\\"âĢĶ</w>\": 41151,\n  \"#\": 2,\n  \"##</w>\": 15483,\n  \"#...</w>\": 31491,\n  \"#:</w>\": 30144,\n  \"#</w>\": 258,\n  \"#@</w>\": 35062,\n  \"#âĢ¦</w>\": 12834,\n  \"#âĢİ</w>\": 34262,\n  \"$\": 3,\n  \"$$\": 24233,\n  \"$$$</w>\": 31859,\n  \"$$</w>\": 14929,\n  \"$)</w>\": 39460,\n  \"$.</w>\": 34682,\n  \"$</w>\": 259,\n  \"%\": 4,\n  \"%!</w>\": 35070,\n  \"%),</w>\": 37819,\n  \"%)</w>\": 16063,\n  \"%,</w>\": 14505,\n  \"%-</w>\": 48784,\n  \"%.</w>\": 12475,\n  \"%;</w>\": 33379,\n  \"%</w>\": 260,\n  \"&\": 5,\n  \"&&</w>\": 27791,\n  \"&</w>\": 261,\n  \"'\": 6,\n  \"'!</w>\": 13781,\n  \"'\\\"</w>\": 19479,\n  \"'#</w>\": 15319,\n  \"''\": 46594,\n  \"''</w>\": 8445,\n  \"')</w>\": 19175,\n  \"',</w>\": 5662,\n  \"'-</w>\": 26152,\n  \"'...</w>\": 20474,\n  \"'.</w>\": 4645,\n  \"':</w>\": 7182,\n  \"';</w>\": 44517,\n  \"'</w>\": 262,\n  \"'?</w>\": 17242,\n  \"'@</w>\": 26397,\n  \"'d</w>\": 1896,\n  \"'ll</w>\": 1342,\n  \"'m</w>\": 880,\n  \"'re</w>\": 982,\n  \"'s</w>\": 568,\n  \"'t</w>\": 713,\n  \"'ve</w>\": 1200,\n  \"'âĢ¦</w>\": 42120,\n  \"(\": 7,\n  \"(!)</w>\": 30253,\n  \"(\\\"</w>\": 18741,\n  \"(#</w>\": 6229,\n  \"($)</w>\": 46597,\n  \"($</w>\": 15186,\n  \"(&</w>\": 15042,\n  \"('</w>\": 18235,\n  \"((\": 22944,\n  \"(((</w>\": 33287,\n  \"((</w>\": 13796,\n  \"().</w>\": 41737,\n  \"()</w>\": 8475,\n  \"(*\": 48004,\n  \"(*</w>\": 39575,\n  \"(+</w>\": 12903,\n  \"(-</w>\": 20228,\n  \"(...</w>\": 45159,\n  \"(.</w>\": 43055,\n  \"(:</w>\": 8528,\n  \"(;</w>\": 23983,\n  \"(</w>\": 263,\n  \"(?)</w>\": 22885,\n  \"(@</w>\": 2181,\n  \"(Â£</w>\": 33987,\n  \"(Â©</w>\": 44886,\n  \"(ðŁĵ·:</w>\": 34610,\n  \"(ðŁĵ·</w>\": 37999,\n  \"(ðŁĵ¸:</w>\": 44422,\n  \"(ðŁĵ¸</w>\": 45204,\n  \")\": 8,\n  \")!!</w>\": 47518,\n  \")!</w>\": 7805,\n  \")\\\"</w>\": 13046,\n  \")#</w>\": 39981,\n  \")'</w>\": 23613,\n  \")(</w>\": 27956,\n  \"))\": 13720,\n  \"))))\": 42911,\n  \"))))</w>\": 34181,\n  \")))</w>\": 18305,\n  \"))</w>\": 5167,\n  \"),</w>\": 2361,\n  \")-</w>\": 19034,\n  \")...</w>\": 15274,\n  \")..</w>\": 41822,\n  \").</w>\": 1818,\n  \")/</w>\": 26616,\n  \"):</w>\": 4143,\n  \");</w>\": 19686,\n  \")</w>\": 264,\n  \")?</w>\": 18765,\n  \")@</w>\": 41928,\n  \")_/\": 45028,\n  \")_/Â¯</w>\": 45781,\n  \")âĢ¦</w>\": 41844,\n  \"*\": 9,\n  \"*)</w>\": 30956,\n  \"**\": 9825,\n  \"****\": 21326,\n  \"********\": 42974,\n  \"*****</w>\": 43571,\n  \"****</w>\": 25167,\n  \"***</w>\": 7829,\n  \"**</w>\": 4441,\n  \"*,</w>\": 41895,\n  \"*-*</w>\": 23568,\n  \"*.</w>\": 31304,\n  \"*</w>\": 265,\n  \"*_*</w>\": 44535,\n  \"+\": 10,\n  \"+)</w>\": 34810,\n  \"++\": 47298,\n  \"+++</w>\": 35986,\n  \"++</w>\": 19056,\n  \"+,</w>\": 35885,\n  \"+.</w>\": 25238,\n  \"+/-</w>\": 47614,\n  \"+</w>\": 266,\n  \",\": 11,\n  \",\\\"</w>\": 3823,\n  \",#</w>\": 11215,\n  \",&</w>\": 26905,\n  \",'</w>\": 10599,\n  \",)</w>\": 44493,\n  \",,\": 21340,\n  \",,,,</w>\": 33225,\n  \",,,</w>\": 14811,\n  \",,</w>\": 8844,\n  \",-</w>\": 29821,\n  \",...</w>\": 20365,\n  \",.</w>\": 41277,\n  \",</w>\": 267,\n  \",@</w>\": 13975,\n  \",âĢ¦</w>\": 14601,\n  \"-\": 12,\n  \"-\\\"</w>\": 18646,\n  \"-#</w>\": 10151,\n  \"-$</w>\": 24946,\n  \"-'</w>\": 28010,\n  \"-(</w>\": 33345,\n  \"-)</w>\": 3535,\n  \"-*</w>\": 21527,\n  \"--\": 2154,\n  \"----\": 5753,\n  \"--------\": 11772,\n  \"----------------\": 23122,\n  \"----</w>\": 30164,\n  \"----></w>\": 35999,\n  \"---</w>\": 11079,\n  \"---></w>\": 14518,\n  \"--</w>\": 2432,\n  \"--></w>\": 6422,\n  \"-->></w>\": 47252,\n  \"-.-</w>\": 32765,\n  \"-...</w>\": 43147,\n  \"-.</w>\": 44040,\n  \"-</w>\": 268,\n  \"-></w>\": 5081,\n  \"-@</w>\": 10087,\n  \"-_-</w>\": 27227,\n  \"-__\": 42718,\n  \"-âĢ¦</w>\": 30047,\n  \".\": 13,\n  \".!!</w>\": 37805,\n  \".!</w>\": 14030,\n  \".\\\"\": 18650,\n  \".\\\"-</w>\": 21234,\n  \".\\\"</w>\": 1081,\n  \".\\\"âĢĶ</w>\": 48703,\n  \".#</w>\": 5014,\n  \".'\\\"</w>\": 41558,\n  \".''</w>\": 49379,\n  \".'</w>\": 5938,\n  \".(</w>\": 22294,\n  \".)</w>\": 5376,\n  \".*</w>\": 26145,\n  \".,</w>\": 5276,\n  \".-</w>\": 12481,\n  \"..\": 608,\n  \"..!!</w>\": 23707,\n  \"..!</w>\": 17994,\n  \"..\\\"</w>\": 15229,\n  \"..#</w>\": 15735,\n  \"..,</w>\": 47143,\n  \"...\": 3002,\n  \"...!!!</w>\": 38351,\n  \"...!!</w>\": 39915,\n  \"...!</w>\": 16860,\n  \"...\\\"</w>\": 5240,\n  \"...#</w>\": 8195,\n  \"...&</w>\": 44979,\n  \"...'</w>\": 23167,\n  \"...(</w>\": 37981,\n  \"...)</w>\": 14040,\n  \"...,</w>\": 42717,\n  \"....\": 2386,\n  \"....\\\"</w>\": 26689,\n  \"....#</w>\": 20346,\n  \".....\": 34151,\n  \".....#</w>\": 38867,\n  \"........\": 8246,\n  \"................\": 24855,\n  \"............</w>\": 42965,\n  \"...........</w>\": 35008,\n  \"..........</w>\": 25526,\n  \".........</w>\": 19881,\n  \"........</w>\": 14720,\n  \".......</w>\": 9917,\n  \"......</w>\": 5590,\n  \".....</w>\": 3104,\n  \"....</w>\": 1390,\n  \"....@</w>\": 29790,\n  \"...:</w>\": 34570,\n  \"...</w>\": 678,\n  \"...?</w>\": 16388,\n  \"...@</w>\": 12672,\n  \"..</w>\": 852,\n  \"..?</w>\": 23875,\n  \"..@</w>\": 21124,\n  \"./</w>\": 31975,\n  \".:</w>\": 15811,\n  \".;</w>\": 47596,\n  \".</w>\": 269,\n  \".<</w>\": 29442,\n  \".?</w>\": 29294,\n  \".@</w>\": 1230,\n  \".]</w>\": 33511,\n  \".~</w>\": 42651,\n  \".âĢ¦</w>\": 18047,\n  \".âĿ¤ï¸ı</w>\": 39085,\n  \".âłĢ</w>\": 30097,\n  \".ðŁĺĤ</w>\": 46580,\n  \"/\": 14,\n  \"/#</w>\": 13217,\n  \"/$</w>\": 36266,\n  \"/-</w>\": 19811,\n  \"/.</w>\": 39382,\n  \"//\": 15348,\n  \"////\": 46271,\n  \"///</w>\": 22734,\n  \"//</w>\": 3502,\n  \"/</w>\": 270,\n  \"/@</w>\": 8216,\n  \"0\": 15,\n  \"0</w>\": 271,\n  \"1\": 16,\n  \"1</w>\": 272,\n  \"2\": 17,\n  \"2</w>\": 273,\n  \"3\": 18,\n  \"3</w>\": 274,\n  \"4\": 19,\n  \"4</w>\": 275,\n  \"5\": 20,\n  \"5</w>\": 276,\n  \"6\": 21,\n  \"6</w>\": 277,\n  \"7\": 22,\n  \"7</w>\": 278,\n  \"8\": 23,\n  \"8</w>\": 279,\n  \"9\": 24,\n  \"9</w>\": 280,\n  \":\": 25,\n  \":\\\"\": 29498,\n  \":\\\")</w>\": 46432,\n  \":\\\"</w>\": 12089,\n  \":#</w>\": 26625,\n  \":$</w>\": 33769,\n  \":'\": 8017,\n  \":'(</w>\": 21250,\n  \":')</w>\": 10701,\n  \":'</w>\": 23851,\n  \":((</w>\": 42496,\n  \":(</w>\": 5965,\n  \":)\": 11070,\n  \":))))</w>\": 42339,\n  \":)))</w>\": 21840,\n  \":))</w>\": 10164,\n  \":).</w>\": 39010,\n  \":)</w>\": 1408,\n  \":*</w>\": 12617,\n  \":-\": 13021,\n  \":-(</w>\": 25137,\n  \":-)</w>\": 4223,\n  \":-</w>\": 10323,\n  \":...</w>\": 42140,\n  \"://</w>\": 12441,\n  \":/</w>\": 13604,\n  \"::\": 33077,\n  \":::</w>\": 43818,\n  \"::</w>\": 9788,\n  \":</w>\": 281,\n  \":></w>\": 39677,\n  \":@</w>\": 14339,\n  \":]</w>\": 43486,\n  \":|</w>\": 45986,\n  \":âĢ¦</w>\": 22365,\n  \";\": 26,\n  \";))</w>\": 41873,\n  \";)</w>\": 3661,\n  \";-\": 35657,\n  \";-)</w>\": 10475,\n  \";;\": 34824,\n  \";;</w>\": 24492,\n  \";</w>\": 282,\n  \"<\": 27,\n  \"<-</w>\": 47280,\n  \"</</w>\": 34308,\n  \"<<\": 24588,\n  \"<</w>\": 283,\n  \"<<</w>\": 16482,\n  \"<<<</w>\": 35054,\n  \"<|endoftext|>\": 49407,\n  \"<|startoftext|>\": 49406,\n  \"=\": 28,\n  \"=))</w>\": 39587,\n  \"=)</w>\": 17840,\n  \"=</w>\": 284,\n  \"==\": 11748,\n  \"====\": 21734,\n  \"========\": 38952,\n  \"==></w>\": 29688,\n  \"=></w>\": 9714,\n  \">\": 29,\n  \">.<</w>\": 38507,\n  \">:</w>\": 36196,\n  \"></w>\": 285,\n  \"><</w>\": 28015,\n  \">>\": 8270,\n  \">></w>\": 2988,\n  \">>></w>\": 6395,\n  \">>>>\": 18461,\n  \">>>></w>\": 18435,\n  \">>>>></w>\": 32972,\n  \">>>>>></w>\": 48947,\n  \">>>>>>>>\": 41947,\n  \">_\": 44144,\n  \"?\": 30,\n  \"?!\": 9785,\n  \"?!!</w>\": 25342,\n  \"?!\\\"</w>\": 29315,\n  \"?!</w>\": 2835,\n  \"?!?!</w>\": 16349,\n  \"?!?!?!</w>\": 49084,\n  \"?!?!?</w>\": 37619,\n  \"?!?</w>\": 11395,\n  \"?\\\"</w>\": 3283,\n  \"?#</w>\": 24018,\n  \"?'</w>\": 13610,\n  \"?)</w>\": 9626,\n  \"?,</w>\": 41628,\n  \"?...</w>\": 22641,\n  \"?..</w>\": 43905,\n  \"?.</w>\": 41251,\n  \"?:</w>\": 21067,\n  \"?</w>\": 286,\n  \"??\": 5195,\n  \"??!!</w>\": 43219,\n  \"??!</w>\": 37341,\n  \"??\\\"</w>\": 44996,\n  \"??</w>\": 2197,\n  \"???\": 40017,\n  \"???</w>\": 3824,\n  \"????\": 15936,\n  \"????</w>\": 10362,\n  \"?????</w>\": 21370,\n  \"??????</w>\": 34589,\n  \"????????\": 45091,\n  \"?@</w>\": 29258,\n  \"?ðŁ¤Ķ</w>\": 47928,\n  \"@\": 31,\n  \"@#</w>\": 39397,\n  \"@.</w>\": 43730,\n  \"@/</w>\": 28639,\n  \"@</w>\": 287,\n  \"@@</w>\": 30314,\n  \"@_</w>\": 2692,\n  \"@__</w>\": 17042,\n  \"@___</w>\": 48308,\n  \"A\": 32,\n  \"A</w>\": 288,\n  \"B\": 33,\n  \"B</w>\": 289,\n  \"C\": 34,\n  \"C</w>\": 290,\n  \"D\": 35,\n  \"D</w>\": 291,\n  \"E\": 36,\n  \"E</w>\": 292,\n  \"F\": 37,\n  \"F</w>\": 293,\n  \"G\": 38,\n  \"G</w>\": 294,\n  \"H\": 39,\n  \"H</w>\": 295,\n  \"I\": 40,\n  \"I</w>\": 296,\n  \"J\": 41,\n  \"J</w>\": 297,\n  \"K\": 42,\n  \"K</w>\": 298,\n  \"L\": 43,\n  \"L</w>\": 299,\n  \"M\": 44,\n  \"M</w>\": 300,\n  \"N\": 45,\n  \"N</w>\": 301,\n  \"O\": 46,\n  \"O</w>\": 302,\n  \"P\": 47,\n  \"P</w>\": 303,\n  \"Q\": 48,\n  \"Q</w>\": 304,\n  \"R\": 49,\n  \"R</w>\": 305,\n  \"S\": 50,\n  \"S</w>\": 306,\n  \"T\": 51,\n  \"T</w>\": 307,\n  \"U\": 52,\n  \"U</w>\": 308,\n  \"V\": 53,\n  \"V</w>\": 309,\n  \"W\": 54,\n  \"W</w>\": 310,\n  \"X\": 55,\n  \"X</w>\": 311,\n  \"Y\": 56,\n  \"Y</w>\": 312,\n  \"Z\": 57,\n  \"Z</w>\": 313,\n  \"[\": 58,\n  \"[#</w>\": 11115,\n  \"[...\": 39975,\n  \"[...]</w>\": 43790,\n  \"[</w>\": 314,\n  \"[@</w>\": 15148,\n  \"[]</w>\": 22240,\n  \"\\\\\": 59,\n  \"\\\\'</w>\": 41239,\n  \"\\\\</w>\": 315,\n  \"]\": 60,\n  \"]\\\"</w>\": 39434,\n  \"],</w>\": 34067,\n  \"].</w>\": 26262,\n  \"]:</w>\": 21641,\n  \"]</w>\": 316,\n  \"][#</w>\": 39009,\n  \"][</w>\": 29329,\n  \"^\": 61,\n  \"^)</w>\": 30720,\n  \"^-\": 43516,\n  \"^.\": 31552,\n  \"^.^</w>\": 35791,\n  \"^</w>\": 317,\n  \"^^\": 34454,\n  \"^^</w>\": 9064,\n  \"^_\": 14423,\n  \"^_^</w>\": 15995,\n  \"_\": 62,\n  \"_'</w>\": 44701,\n  \"_(</w>\": 36951,\n  \"_)</w>\": 37393,\n  \"_*</w>\": 36237,\n  \"_,</w>\": 31417,\n  \"_-</w>\": 23193,\n  \"_.</w>\": 26841,\n  \"_/\": 37647,\n  \"_:</w>\": 13109,\n  \"_</w>\": 318,\n  \"__\": 2355,\n  \"__:</w>\": 47043,\n  \"__</w>\": 3838,\n  \"___\": 43812,\n  \"___</w>\": 13530,\n  \"____\": 4727,\n  \"____</w>\": 25350,\n  \"_____</w>\": 38803,\n  \"________\": 9549,\n  \"________________\": 20115,\n  \"`\": 63,\n  \"`</w>\": 319,\n  \"a\": 64,\n  \"a</w>\": 320,\n  \"aa\": 1821,\n  \"aa</w>\": 3894,\n  \"aaa\": 14376,\n  \"aaa</w>\": 9583,\n  \"aaaa\": 6727,\n  \"aaaa</w>\": 19336,\n  \"aaaaa</w>\": 31095,\n  \"aaaaaa</w>\": 44413,\n  \"aaaaaaaa\": 23126,\n  \"aaaah</w>\": 49151,\n  \"aaah</w>\": 35856,\n  \"aaay</w>\": 37846,\n  \"aab</w>\": 34108,\n  \"aac\": 23251,\n  \"aac</w>\": 11346,\n  \"aad\": 20464,\n  \"aad</w>\": 35894,\n  \"aaf\": 37638,\n  \"aaf</w>\": 31534,\n  \"aag\": 42174,\n  \"aah</w>\": 28990,\n  \"aaj\": 28727,\n  \"aaj</w>\": 43411,\n  \"aak\": 37739,\n  \"aal\": 22268,\n  \"aal</w>\": 30208,\n  \"aali\": 27896,\n  \"aaliyah</w>\": 46577,\n  \"aam\": 12943,\n  \"aam</w>\": 22775,\n  \"aama\": 45018,\n  \"aamaadmi\": 45563,\n  \"aamaadmiparty</w>\": 46406,\n  \"aamir</w>\": 27456,\n  \"aan\": 20705,\n  \"aan</w>\": 13426,\n  \"aand\": 38054,\n  \"aap\": 12023,\n  \"aap</w>\": 12052,\n  \"aapl</w>\": 34516,\n  \"aar\": 4695,\n  \"aar</w>\": 13234,\n  \"aard\": 46932,\n  \"aaron\": 13948,\n  \"aaron</w>\": 7709,\n  \"aas\": 28542,\n  \"aas</w>\": 32205,\n  \"aat\": 34018,\n  \"aat</w>\": 35004,\n  \"aau</w>\": 35426,\n  \"aay\": 38281,\n  \"aay</w>\": 40249,\n  \"aaz</w>\": 26770,\n  \"ab\": 596,\n  \"ab</w>\": 3937,\n  \"aba\": 44204,\n  \"aba</w>\": 11102,\n  \"abad\": 33444,\n  \"abad</w>\": 7155,\n  \"aban\": 41662,\n  \"aband\": 8595,\n  \"abandon</w>\": 28805,\n  \"abandoned</w>\": 11227,\n  \"abar\": 17860,\n  \"abar</w>\": 39805,\n  \"abas\": 25402,\n  \"abay</w>\": 43542,\n  \"abb\": 38954,\n  \"abb</w>\": 38297,\n  \"abba</w>\": 30870,\n  \"abbas\": 37494,\n  \"abbas</w>\": 24412,\n  \"abbey\": 31927,\n  \"abbey</w>\": 10132,\n  \"abbie</w>\": 39949,\n  \"abbo\": 13536,\n  \"abbot</w>\": 44046,\n  \"abbott\": 43737,\n  \"abbott</w>\": 15649,\n  \"abbrevi\": 44843,\n  \"abby\": 30586,\n  \"abby</w>\": 14694,\n  \"abc\": 13137,\n  \"abc</w>\": 5334,\n  \"abcnews</w>\": 31566,\n  \"abd</w>\": 44093,\n  \"abdel\": 46511,\n  \"abdomin\": 35335,\n  \"abdominal</w>\": 39328,\n  \"abdu\": 13361,\n  \"abduc\": 17884,\n  \"abducted</w>\": 31520,\n  \"abduction</w>\": 36984,\n  \"abdul\": 14227,\n  \"abdul</w>\": 15593,\n  \"abdullah</w>\": 21317,\n  \"abe\": 15856,\n  \"abe</w>\": 12734,\n  \"abee</w>\": 36037,\n  \"abel\": 31938,\n  \"abel</w>\": 25318,\n  \"abella</w>\": 46156,\n  \"aben\": 40865,\n  \"aber\": 7828,\n  \"aber</w>\": 41867,\n  \"aberdeen\": 30539,\n  \"aberdeen</w>\": 17236,\n  \"abh\": 27484,\n  \"abh</w>\": 33649,\n  \"abhcosmetics</w>\": 49189,\n  \"abhi\": 18113,\n  \"abhin\": 44045,\n  \"abhishek</w>\": 44502,\n  \"abi\": 16867,\n  \"abi</w>\": 14161,\n  \"abia</w>\": 48604,\n  \"abide</w>\": 49163,\n  \"abig\": 20863,\n  \"abigail</w>\": 25686,\n  \"abil\": 21135,\n  \"abilities</w>\": 8724,\n  \"ability\": 35146,\n  \"ability</w>\": 3024,\n  \"abit</w>\": 48668,\n  \"ablanc\": 33716,\n  \"able\": 10102,\n  \"able</w>\": 863,\n  \"abled</w>\": 10655,\n  \"ableg</w>\": 24055,\n  \"ables</w>\": 8486,\n  \"ableton</w>\": 47169,\n  \"ably</w>\": 6748,\n  \"abnormal</w>\": 40934,\n  \"abo\": 2889,\n  \"abo</w>\": 21861,\n  \"aboard</w>\": 11661,\n  \"abol\": 31768,\n  \"abolic</w>\": 46827,\n  \"abolish</w>\": 47403,\n  \"aboo</w>\": 42433,\n  \"abor\": 8416,\n  \"aboriginal</w>\": 20422,\n  \"abortion</w>\": 12336,\n  \"abortions</w>\": 43218,\n  \"aboss</w>\": 46401,\n  \"abou\": 36455,\n  \"abou</w>\": 44053,\n  \"abound</w>\": 41037,\n  \"abour</w>\": 46637,\n  \"about\": 20204,\n  \"about</w>\": 781,\n  \"abouts</w>\": 36339,\n  \"above\": 35019,\n  \"above</w>\": 4348,\n  \"aboy</w>\": 37077,\n  \"abpoli</w>\": 44779,\n  \"abq</w>\": 38767,\n  \"abr\": 44932,\n  \"abra\": 10694,\n  \"abra</w>\": 35087,\n  \"abraham\": 40623,\n  \"abraham</w>\": 15869,\n  \"abram\": 33255,\n  \"abrams</w>\": 29852,\n  \"abre\": 22472,\n  \"abre</w>\": 46756,\n  \"abri\": 28605,\n  \"abridged</w>\": 45333,\n  \"abroad</w>\": 11253,\n  \"abru\": 46295,\n  \"abs\": 18431,\n  \"abs</w>\": 11109,\n  \"absc\": 25389,\n  \"abscbn\": 44260,\n  \"abscbn</w>\": 45810,\n  \"absen\": 32453,\n  \"absence</w>\": 19240,\n  \"absent</w>\": 30363,\n  \"absol\": 4624,\n  \"absolu\": 7055,\n  \"absolut\": 4666,\n  \"absolute</w>\": 7501,\n  \"absolutely</w>\": 4703,\n  \"absor\": 14303,\n  \"absorb</w>\": 35806,\n  \"absorbed</w>\": 45059,\n  \"absorbing</w>\": 46412,\n  \"absorption</w>\": 42210,\n  \"abstr\": 7530,\n  \"abstract\": 23885,\n  \"abstract</w>\": 10197,\n  \"abstractart</w>\": 31170,\n  \"abstraction</w>\": 47696,\n  \"abstracts</w>\": 40065,\n  \"absur\": 21639,\n  \"absurd</w>\": 29757,\n  \"abt</w>\": 9850,\n  \"abu\": 9167,\n  \"abu</w>\": 11787,\n  \"abud\": 20180,\n  \"abudha\": 21450,\n  \"abudhabi</w>\": 25256,\n  \"abuja</w>\": 23371,\n  \"abun\": 20544,\n  \"abundance</w>\": 23236,\n  \"abundant</w>\": 31611,\n  \"abur\": 23377,\n  \"aburger</w>\": 46660,\n  \"abuse</w>\": 7678,\n  \"abused</w>\": 23855,\n  \"abuses</w>\": 37132,\n  \"abusing</w>\": 36558,\n  \"abusive</w>\": 26858,\n  \"abv</w>\": 34172,\n  \"aby\": 16342,\n  \"aby</w>\": 31378,\n  \"abyss</w>\": 33632,\n  \"abz</w>\": 42292,\n  \"ac\": 546,\n  \"ac</w>\": 2816,\n  \"aca</w>\": 9213,\n  \"acab\": 41388,\n  \"acacia</w>\": 44047,\n  \"acad</w>\": 32537,\n  \"acade\": 2892,\n  \"academia</w>\": 22662,\n  \"academic\": 31178,\n  \"academic</w>\": 7935,\n  \"academics</w>\": 26417,\n  \"academies</w>\": 42569,\n  \"academy\": 29968,\n  \"academy</w>\": 4041,\n  \"acadi\": 41455,\n  \"acadia</w>\": 49236,\n  \"acam\": 26172,\n  \"acan\": 42227,\n  \"acan</w>\": 26318,\n  \"acap\": 32357,\n  \"acar\": 22232,\n  \"acare</w>\": 16961,\n  \"acc\": 26805,\n  \"acc</w>\": 9318,\n  \"acca</w>\": 30883,\n  \"acce\": 8564,\n  \"acceler\": 10161,\n  \"accelerate</w>\": 23619,\n  \"accelerated</w>\": 38513,\n  \"accelerating</w>\": 41821,\n  \"acceleration</w>\": 39387,\n  \"accelerator</w>\": 25261,\n  \"accent\": 28110,\n  \"accent</w>\": 18931,\n  \"accents</w>\": 31738,\n  \"accenture</w>\": 41853,\n  \"accep\": 4616,\n  \"accept\": 16447,\n  \"accept</w>\": 9338,\n  \"acceptable</w>\": 14209,\n  \"acceptance</w>\": 17090,\n  \"accepted</w>\": 9159,\n  \"accepting</w>\": 12855,\n  \"accepts</w>\": 22338,\n  \"access\": 7596,\n  \"access</w>\": 3822,\n  \"accessi\": 10787,\n  \"accessibility</w>\": 23407,\n  \"accessible</w>\": 13977,\n  \"accessing</w>\": 46339,\n  \"accessories</w>\": 10220,\n  \"accessory</w>\": 20417,\n  \"acci\": 4263,\n  \"acci</w>\": 33943,\n  \"accident</w>\": 6608,\n  \"accidental</w>\": 24895,\n  \"accidentally</w>\": 11061,\n  \"accidents</w>\": 22072,\n  \"acclaimed</w>\": 21172,\n  \"acco</w>\": 44730,\n  \"accol\": 33858,\n  \"accolades</w>\": 46731,\n  \"accom\": 23658,\n  \"accommo\": 34495,\n  \"accommod\": 14386,\n  \"accommodate</w>\": 34708,\n  \"accommodation</w>\": 18066,\n  \"accommodations</w>\": 45536,\n  \"accomp\": 24985,\n  \"accompan\": 14746,\n  \"accompanied</w>\": 20715,\n  \"accompany</w>\": 34142,\n  \"accompanying</w>\": 38179,\n  \"accompli\": 10205,\n  \"accomplish</w>\": 25542,\n  \"accomplished</w>\": 16462,\n  \"accomplishment</w>\": 26100,\n  \"accomplishments</w>\": 24965,\n  \"accor\": 4182,\n  \"accord\": 34293,\n  \"accord</w>\": 28513,\n  \"according</w>\": 4717,\n  \"accordingly</w>\": 35535,\n  \"accordion</w>\": 48760,\n  \"accoun\": 3081,\n  \"account\": 18424,\n  \"account</w>\": 4684,\n  \"accountability</w>\": 19377,\n  \"accountable</w>\": 24216,\n  \"accountant</w>\": 31026,\n  \"accountants</w>\": 37222,\n  \"accounted</w>\": 43951,\n  \"accounting</w>\": 14805,\n  \"accounts</w>\": 9974,\n  \"accra</w>\": 31900,\n  \"accred\": 17451,\n  \"accreditation</w>\": 27015,\n  \"accredited</w>\": 27647,\n  \"acct</w>\": 45569,\n  \"accu\": 5618,\n  \"accumul\": 19275,\n  \"accumulation</w>\": 37112,\n  \"accur\": 6551,\n  \"accuracy</w>\": 18423,\n  \"accurate</w>\": 8858,\n  \"accurately</w>\": 24206,\n  \"accusations</w>\": 33615,\n  \"accuse</w>\": 39414,\n  \"accused</w>\": 9434,\n  \"accuses</w>\": 27496,\n  \"accusing</w>\": 41474,\n  \"acdc</w>\": 45067,\n  \"ace\": 2675,\n  \"ace</w>\": 804,\n  \"acea</w>\": 35219,\n  \"aceae</w>\": 38153,\n  \"acele\": 40868,\n  \"aceous</w>\": 33610,\n  \"acer\": 37990,\n  \"acer</w>\": 25809,\n  \"aces</w>\": 5725,\n  \"acet\": 28735,\n  \"acf</w>\": 38389,\n  \"ach\": 972,\n  \"ach</w>\": 987,\n  \"acha</w>\": 22686,\n  \"acharya</w>\": 45780,\n  \"achat</w>\": 32706,\n  \"ache\": 27771,\n  \"ache</w>\": 7214,\n  \"ached</w>\": 17048,\n  \"acher\": 38442,\n  \"acher</w>\": 17936,\n  \"achers</w>\": 25051,\n  \"aches</w>\": 14823,\n  \"achi\": 3264,\n  \"achi</w>\": 9087,\n  \"achiev\": 8160,\n  \"achieve\": 14798,\n  \"achieve</w>\": 8175,\n  \"achieved</w>\": 12359,\n  \"achievement</w>\": 8245,\n  \"achievements</w>\": 16114,\n  \"achiever</w>\": 46286,\n  \"achievers</w>\": 44544,\n  \"achieves</w>\": 40123,\n  \"achieving</w>\": 16120,\n  \"achilles</w>\": 33327,\n  \"achim</w>\": 42335,\n  \"aching</w>\": 12864,\n  \"acho</w>\": 33130,\n  \"achs</w>\": 41195,\n  \"aci\": 4359,\n  \"aci</w>\": 34100,\n  \"acia</w>\": 30163,\n  \"acial</w>\": 32422,\n  \"acid\": 35474,\n  \"acid</w>\": 10085,\n  \"acidity</w>\": 48800,\n  \"acids</w>\": 27751,\n  \"acies</w>\": 20162,\n  \"acin\": 39442,\n  \"acing</w>\": 9442,\n  \"acio</w>\": 26202,\n  \"acion\": 44965,\n  \"acion</w>\": 24968,\n  \"acional</w>\": 26435,\n  \"aciones</w>\": 35832,\n  \"acious</w>\": 16020,\n  \"acity</w>\": 7511,\n  \"aciÃ³n</w>\": 38175,\n  \"ack\": 877,\n  \"ack</w>\": 725,\n  \"acked</w>\": 5698,\n  \"acker\": 31201,\n  \"acker</w>\": 7940,\n  \"ackeray</w>\": 41843,\n  \"acki</w>\": 42857,\n  \"acking</w>\": 5515,\n  \"ackles</w>\": 28503,\n  \"acknow\": 13563,\n  \"acknowle\": 18100,\n  \"acknowledge</w>\": 25209,\n  \"acknowledged</w>\": 35913,\n  \"acknowledges</w>\": 49083,\n  \"acknowledging</w>\": 45645,\n  \"acks</w>\": 3858,\n  \"acl\": 47593,\n  \"acl</w>\": 23073,\n  \"acle</w>\": 6504,\n  \"acles</w>\": 34164,\n  \"aclu</w>\": 37354,\n  \"acm</w>\": 39317,\n  \"acmilan</w>\": 36500,\n  \"acne</w>\": 24195,\n  \"aco\": 9463,\n  \"aco</w>\": 8800,\n  \"acol\": 17431,\n  \"acollege</w>\": 43468,\n  \"acom\": 17224,\n  \"acom</w>\": 22342,\n  \"acon\": 11621,\n  \"acon</w>\": 11571,\n  \"aconf</w>\": 38851,\n  \"acons</w>\": 31599,\n  \"acor\": 22076,\n  \"acorn</w>\": 37537,\n  \"acos</w>\": 39943,\n  \"acosta</w>\": 31994,\n  \"acou\": 8794,\n  \"acoun\": 31295,\n  \"acounty</w>\": 45449,\n  \"acoustic</w>\": 10616,\n  \"acoustics</w>\": 43873,\n  \"acp</w>\": 19627,\n  \"acqu\": 7946,\n  \"acquainted</w>\": 40713,\n  \"acqui\": 12194,\n  \"acquire</w>\": 21576,\n  \"acquired</w>\": 15932,\n  \"acquires</w>\": 27376,\n  \"acquiring</w>\": 42785,\n  \"acquis\": 14207,\n  \"acquisition</w>\": 16543,\n  \"acquisitions</w>\": 39649,\n  \"acr</w>\": 43648,\n  \"acre\": 26749,\n  \"acre</w>\": 9493,\n  \"acres</w>\": 11630,\n  \"acro\": 21060,\n  \"acrob\": 40891,\n  \"acron\": 37770,\n  \"across</w>\": 2500,\n  \"acrosse</w>\": 40979,\n  \"acruz</w>\": 40455,\n  \"acry\": 10440,\n  \"acrylic</w>\": 12252,\n  \"acs</w>\": 11782,\n  \"act\": 10305,\n  \"act</w>\": 1393,\n  \"acted</w>\": 10971,\n  \"acti\": 4786,\n  \"acting</w>\": 6319,\n  \"action\": 12493,\n  \"action</w>\": 1816,\n  \"actions</w>\": 6271,\n  \"activ\": 3430,\n  \"activate</w>\": 26737,\n  \"activated</w>\": 22249,\n  \"activation</w>\": 26769,\n  \"active\": 19009,\n  \"active</w>\": 4046,\n  \"actively</w>\": 18645,\n  \"activi\": 7230,\n  \"activism</w>\": 20117,\n  \"activist</w>\": 10850,\n  \"activists</w>\": 12649,\n  \"activities</w>\": 6514,\n  \"activity</w>\": 6206,\n  \"actment</w>\": 44807,\n  \"acton\": 36167,\n  \"acton</w>\": 36697,\n  \"actonclimate</w>\": 43797,\n  \"actor\": 12181,\n  \"actor</w>\": 4035,\n  \"actors</w>\": 9255,\n  \"actorslife</w>\": 25117,\n  \"actorvijay</w>\": 34033,\n  \"actress</w>\": 5805,\n  \"actresses</w>\": 33639,\n  \"acts</w>\": 6816,\n  \"actu\": 2375,\n  \"actual</w>\": 7488,\n  \"actually</w>\": 2955,\n  \"acu\": 9204,\n  \"acu</w>\": 48475,\n  \"aculture</w>\": 38145,\n  \"acup\": 30869,\n  \"acup</w>\": 27278,\n  \"acupuncture</w>\": 40043,\n  \"acur\": 44719,\n  \"acura</w>\": 30120,\n  \"acus</w>\": 33710,\n  \"acute</w>\": 19734,\n  \"acy\": 18717,\n  \"acy</w>\": 2356,\n  \"ad\": 594,\n  \"ad</w>\": 680,\n  \"ada\": 25785,\n  \"ada</w>\": 1886,\n  \"adaily</w>\": 47254,\n  \"adal\": 46646,\n  \"adam\": 6037,\n  \"adam</w>\": 4944,\n  \"adamlambert</w>\": 27659,\n  \"adams</w>\": 7942,\n  \"adan</w>\": 41802,\n  \"adani</w>\": 37499,\n  \"adap\": 6341,\n  \"adapt</w>\": 22666,\n  \"adaptation</w>\": 16566,\n  \"adapted</w>\": 26657,\n  \"adapter</w>\": 21839,\n  \"adapting</w>\": 44120,\n  \"adaptive</w>\": 28672,\n  \"adar\": 27702,\n  \"adar</w>\": 32681,\n  \"adas</w>\": 23250,\n  \"adata</w>\": 39500,\n  \"aday\": 31367,\n  \"aday</w>\": 10280,\n  \"adays</w>\": 24337,\n  \"adb</w>\": 45630,\n  \"adc</w>\": 38201,\n  \"add\": 19408,\n  \"add</w>\": 3536,\n  \"addams</w>\": 38912,\n  \"added</w>\": 4149,\n  \"adder</w>\": 47557,\n  \"addi</w>\": 36378,\n  \"addic\": 5709,\n  \"addict</w>\": 14614,\n  \"addicted</w>\": 16275,\n  \"addiction</w>\": 11751,\n  \"addictive</w>\": 29638,\n  \"addicts</w>\": 29997,\n  \"adding</w>\": 8676,\n  \"addis</w>\": 43911,\n  \"addison</w>\": 32369,\n  \"additi\": 26927,\n  \"addition</w>\": 6698,\n  \"additional</w>\": 10666,\n  \"additions</w>\": 22575,\n  \"additive</w>\": 48546,\n  \"addo</w>\": 40001,\n  \"address</w>\": 5834,\n  \"addressed</w>\": 20817,\n  \"addresses</w>\": 12702,\n  \"addressing</w>\": 10594,\n  \"adds</w>\": 9944,\n  \"addy</w>\": 24746,\n  \"ade\": 2194,\n  \"ade</w>\": 1928,\n  \"adecides</w>\": 46374,\n  \"aded</w>\": 9994,\n  \"adee</w>\": 47054,\n  \"adel\": 4434,\n  \"adel</w>\": 27308,\n  \"adelaide\": 38193,\n  \"adelaide</w>\": 11611,\n  \"adele\": 42843,\n  \"adele</w>\": 21220,\n  \"adelrey</w>\": 43627,\n  \"ademy</w>\": 49123,\n  \"aden\": 28669,\n  \"aden</w>\": 28688,\n  \"adena</w>\": 23648,\n  \"adequ\": 18232,\n  \"adequate</w>\": 22281,\n  \"ader</w>\": 21365,\n  \"adero</w>\": 49185,\n  \"aders</w>\": 27672,\n  \"ades</w>\": 5793,\n  \"adh</w>\": 42301,\n  \"adhd</w>\": 32649,\n  \"adhe\": 21175,\n  \"adhesive</w>\": 38429,\n  \"adi\": 2486,\n  \"adi</w>\": 8779,\n  \"adia</w>\": 26874,\n  \"adic</w>\": 36780,\n  \"adid\": 8086,\n  \"adidas\": 22396,\n  \"adidas</w>\": 9589,\n  \"adidasoriginals</w>\": 48575,\n  \"adies</w>\": 45834,\n  \"adifference</w>\": 37217,\n  \"adilla</w>\": 41167,\n  \"ading</w>\": 15000,\n  \"adio</w>\": 15060,\n  \"adirond\": 36843,\n  \"adish</w>\": 49009,\n  \"adity\": 28596,\n  \"aditya</w>\": 37186,\n  \"adityanath</w>\": 44437,\n  \"adjac\": 32517,\n  \"adjacent</w>\": 33836,\n  \"adjec\": 45512,\n  \"adju\": 16413,\n  \"adjun\": 45995,\n  \"adjust\": 13784,\n  \"adjust</w>\": 28073,\n  \"adjustable</w>\": 20476,\n  \"adjusted</w>\": 30515,\n  \"adjusting</w>\": 41132,\n  \"adjustment</w>\": 36081,\n  \"adjustments</w>\": 36331,\n  \"adl</w>\": 49351,\n  \"adler</w>\": 30222,\n  \"adm\": 9892,\n  \"adm</w>\": 33604,\n  \"admi\": 11666,\n  \"admin</w>\": 12528,\n  \"admini\": 6434,\n  \"administr\": 12174,\n  \"administration</w>\": 9502,\n  \"administrative</w>\": 22424,\n  \"administrator</w>\": 22603,\n  \"administrators</w>\": 36123,\n  \"admins</w>\": 49297,\n  \"admir\": 17031,\n  \"admiral</w>\": 21013,\n  \"admiration</w>\": 39569,\n  \"admire</w>\": 17791,\n  \"admired</w>\": 36103,\n  \"admirer</w>\": 48344,\n  \"admiring</w>\": 29835,\n  \"admission</w>\": 11315,\n  \"admissions</w>\": 22463,\n  \"admit</w>\": 13769,\n  \"admits</w>\": 16332,\n  \"admitted</w>\": 20427,\n  \"admitting</w>\": 46148,\n  \"adn</w>\": 40339,\n  \"adnan</w>\": 42037,\n  \"ado\": 4775,\n  \"ado</w>\": 2933,\n  \"adobe\": 29256,\n  \"adobe</w>\": 16484,\n  \"adog</w>\": 44913,\n  \"adol\": 33512,\n  \"adole\": 22704,\n  \"adolescent</w>\": 36793,\n  \"adolescents</w>\": 45656,\n  \"adolf</w>\": 41179,\n  \"adon\": 25907,\n  \"adona</w>\": 48419,\n  \"adop\": 4183,\n  \"adopt\": 16441,\n  \"adopt</w>\": 11159,\n  \"adoptable</w>\": 36905,\n  \"adoptdont\": 19674,\n  \"adoptdontshop</w>\": 20089,\n  \"adopted</w>\": 12538,\n  \"adopting</w>\": 30158,\n  \"adoption</w>\": 11544,\n  \"adopts</w>\": 40853,\n  \"ador\": 4992,\n  \"ador</w>\": 9162,\n  \"adora</w>\": 40031,\n  \"adorable</w>\": 6298,\n  \"adoration</w>\": 46781,\n  \"adore</w>\": 15502,\n  \"adored</w>\": 49233,\n  \"adores</w>\": 30290,\n  \"adorned</w>\": 44953,\n  \"ados</w>\": 20079,\n  \"adox</w>\": 32188,\n  \"adp</w>\": 44426,\n  \"adr</w>\": 46189,\n  \"adren\": 24204,\n  \"adrenaline</w>\": 35552,\n  \"adri\": 5935,\n  \"adrian\": 25012,\n  \"adrian</w>\": 13163,\n  \"adriana</w>\": 41363,\n  \"adrid</w>\": 26562,\n  \"adrien</w>\": 47469,\n  \"adrienne</w>\": 40081,\n  \"ads</w>\": 2485,\n  \"adu\": 16882,\n  \"adu</w>\": 24446,\n  \"adukone</w>\": 30511,\n  \"adul\": 7222,\n  \"adult\": 42209,\n  \"adult</w>\": 7115,\n  \"adulthood</w>\": 40964,\n  \"adults</w>\": 9391,\n  \"adv\": 1647,\n  \"adv</w>\": 21018,\n  \"advan\": 33411,\n  \"advance\": 27291,\n  \"advance</w>\": 7022,\n  \"advanced</w>\": 7465,\n  \"advancement</w>\": 35437,\n  \"advances</w>\": 15852,\n  \"advancing</w>\": 21355,\n  \"advani</w>\": 48189,\n  \"advant\": 7017,\n  \"advantage</w>\": 8573,\n  \"advantaged</w>\": 38361,\n  \"advantages</w>\": 23506,\n  \"adven\": 41670,\n  \"advent\": 3071,\n  \"advent</w>\": 15199,\n  \"adventcalendar</w>\": 43492,\n  \"adventur\": 29627,\n  \"adventure\": 17251,\n  \"adventure</w>\": 4377,\n  \"adventurer</w>\": 48098,\n  \"adventures</w>\": 7941,\n  \"adventurous</w>\": 31179,\n  \"adver\": 4806,\n  \"adverse</w>\": 30348,\n  \"adversity</w>\": 32516,\n  \"advert</w>\": 19080,\n  \"adverti\": 5682,\n  \"advertise</w>\": 31473,\n  \"advertised</w>\": 38987,\n  \"advertisement</w>\": 18713,\n  \"advertiser</w>\": 41829,\n  \"advertisers</w>\": 45472,\n  \"advertising</w>\": 8158,\n  \"adverts</w>\": 44306,\n  \"advice</w>\": 4973,\n  \"advis\": 4634,\n  \"advise</w>\": 25962,\n  \"advised</w>\": 23196,\n  \"adviser</w>\": 20367,\n  \"advisers</w>\": 40984,\n  \"advises</w>\": 42761,\n  \"advising</w>\": 39648,\n  \"advisor</w>\": 12380,\n  \"advisors</w>\": 23197,\n  \"advisory</w>\": 10224,\n  \"advoc\": 6657,\n  \"advocacy</w>\": 14443,\n  \"advocate</w>\": 12044,\n  \"advocates</w>\": 17757,\n  \"adwords</w>\": 48343,\n  \"ady\": 41446,\n  \"ady</w>\": 8781,\n  \"ae\": 5548,\n  \"ae</w>\": 4542,\n  \"aea</w>\": 37048,\n  \"aed</w>\": 26912,\n  \"aege\": 42304,\n  \"ael\": 41533,\n  \"ael</w>\": 43340,\n  \"aen\": 43085,\n  \"aer\": 10195,\n  \"aeri\": 27685,\n  \"aerial\": 44866,\n  \"aerial</w>\": 12440,\n  \"aero\": 10196,\n  \"aero</w>\": 25026,\n  \"aerob\": 42824,\n  \"aeron\": 37286,\n  \"aeronau\": 42816,\n  \"aerop\": 27735,\n  \"aerosmith</w>\": 43253,\n  \"aerospace</w>\": 20530,\n  \"aes\": 10617,\n  \"aes</w>\": 35677,\n  \"aest</w>\": 40694,\n  \"aesthe\": 21181,\n  \"aesthetic</w>\": 16179,\n  \"aesthetics</w>\": 29295,\n  \"aew</w>\": 47108,\n  \"af\": 702,\n  \"af</w>\": 4391,\n  \"afa</w>\": 24953,\n  \"afan\": 47474,\n  \"afar\": 41637,\n  \"afar</w>\": 37866,\n  \"afb</w>\": 27022,\n  \"afc\": 29742,\n  \"afc</w>\": 6571,\n  \"afcb</w>\": 44276,\n  \"afcon</w>\": 30019,\n  \"afd</w>\": 44626,\n  \"afe\": 30487,\n  \"afe</w>\": 13912,\n  \"afer\": 44707,\n  \"aff\": 8849,\n  \"aff</w>\": 14864,\n  \"affair</w>\": 13998,\n  \"affairs</w>\": 9830,\n  \"affe\": 4556,\n  \"affect</w>\": 11361,\n  \"affected</w>\": 9715,\n  \"affecting</w>\": 18448,\n  \"affection\": 33780,\n  \"affection</w>\": 28381,\n  \"affectionate</w>\": 42578,\n  \"affects</w>\": 17285,\n  \"affili\": 12120,\n  \"affiliate</w>\": 18652,\n  \"affiliated</w>\": 37540,\n  \"affiliation</w>\": 48377,\n  \"affinity</w>\": 41451,\n  \"affir\": 25343,\n  \"affirm\": 42711,\n  \"affirm</w>\": 48625,\n  \"affirmation</w>\": 47495,\n  \"affl\": 34036,\n  \"affleck</w>\": 35584,\n  \"afford\": 7951,\n  \"afford</w>\": 13223,\n  \"affordability</w>\": 44828,\n  \"affordable\": 43944,\n  \"affordable</w>\": 8926,\n  \"afg</w>\": 33994,\n  \"afgh\": 9029,\n  \"afghan</w>\": 15919,\n  \"afghanistan</w>\": 9836,\n  \"afi\": 24074,\n  \"afi</w>\": 31958,\n  \"afil\": 27209,\n  \"afire</w>\": 42010,\n  \"afirst</w>\": 38601,\n  \"afl\": 15132,\n  \"afl</w>\": 14356,\n  \"aflo\": 41959,\n  \"afm</w>\": 38385,\n  \"afootball</w>\": 41694,\n  \"afor\": 43102,\n  \"afore\": 41468,\n  \"afp</w>\": 18311,\n  \"afraid</w>\": 9474,\n  \"afri\": 13888,\n  \"afric\": 2136,\n  \"africa</w>\": 3093,\n  \"african\": 17471,\n  \"african</w>\": 4736,\n  \"africans</w>\": 26534,\n  \"afridi</w>\": 37651,\n  \"afrika</w>\": 45833,\n  \"afrin</w>\": 45586,\n  \"afro\": 16267,\n  \"afro</w>\": 21795,\n  \"afs</w>\": 48960,\n  \"aft</w>\": 22693,\n  \"after\": 2278,\n  \"after</w>\": 953,\n  \"afterdark</w>\": 48966,\n  \"afterlife</w>\": 46790,\n  \"aftermath</w>\": 20958,\n  \"afterno\": 22330,\n  \"afternoon\": 39035,\n  \"afternoon</w>\": 2716,\n  \"afternoons</w>\": 31631,\n  \"afterparty</w>\": 35305,\n  \"afterwards</w>\": 23911,\n  \"ag\": 602,\n  \"ag</w>\": 5241,\n  \"aga\": 1050,\n  \"aga</w>\": 4654,\n  \"again</w>\": 1495,\n  \"against\": 23838,\n  \"against</w>\": 1601,\n  \"agame</w>\": 46943,\n  \"agan\": 42946,\n  \"agan</w>\": 9178,\n  \"agar\": 13199,\n  \"agar</w>\": 17544,\n  \"agarwal</w>\": 43117,\n  \"agas\": 20430,\n  \"agate</w>\": 25454,\n  \"agatha</w>\": 43896,\n  \"agave</w>\": 42671,\n  \"agawa</w>\": 39433,\n  \"agazine</w>\": 44942,\n  \"age\": 4758,\n  \"age</w>\": 805,\n  \"aged</w>\": 3889,\n  \"ageing</w>\": 25349,\n  \"agen\": 10101,\n  \"agen</w>\": 43696,\n  \"agencies</w>\": 13887,\n  \"agency\": 44885,\n  \"agency</w>\": 6270,\n  \"agend\": 48653,\n  \"agenda</w>\": 8728,\n  \"agent\": 21210,\n  \"agent</w>\": 6576,\n  \"agents</w>\": 10199,\n  \"agentsof\": 37074,\n  \"agentsofshield</w>\": 38801,\n  \"ager\": 44847,\n  \"ager</w>\": 10443,\n  \"agers</w>\": 22123,\n  \"ages</w>\": 2321,\n  \"agg</w>\": 45482,\n  \"aggarwal</w>\": 39386,\n  \"agger\": 27836,\n  \"aggi\": 36844,\n  \"aggie\": 44244,\n  \"aggie</w>\": 37618,\n  \"aggies</w>\": 31047,\n  \"aggio</w>\": 36685,\n  \"aggrav\": 35203,\n  \"aggre\": 10426,\n  \"aggreg\": 41968,\n  \"aggregate</w>\": 41318,\n  \"aggression</w>\": 28900,\n  \"aggressive</w>\": 16295,\n  \"aggressively</w>\": 48667,\n  \"agh\": 17917,\n  \"agh</w>\": 14402,\n  \"aghan</w>\": 31276,\n  \"agi\": 24036,\n  \"agi</w>\": 17645,\n  \"agic</w>\": 37652,\n  \"agile</w>\": 16276,\n  \"agility</w>\": 32161,\n  \"aging</w>\": 4336,\n  \"agio</w>\": 41746,\n  \"agirl</w>\": 35469,\n  \"agle\": 37035,\n  \"agle</w>\": 16702,\n  \"agles\": 36374,\n  \"agles</w>\": 22679,\n  \"aglia</w>\": 46912,\n  \"agm</w>\": 19162,\n  \"agn\": 36474,\n  \"agna</w>\": 43626,\n  \"agne\": 29374,\n  \"agne</w>\": 48303,\n  \"agnes</w>\": 26213,\n  \"agno\": 41540,\n  \"ago\": 6276,\n  \"ago</w>\": 1468,\n  \"agomez</w>\": 27127,\n  \"agon\": 26775,\n  \"agon</w>\": 14901,\n  \"agony</w>\": 36977,\n  \"agor\": 38920,\n  \"agos</w>\": 32657,\n  \"agov</w>\": 34227,\n  \"agp</w>\": 46048,\n  \"agr\": 36639,\n  \"agra\": 26660,\n  \"agra</w>\": 29830,\n  \"agram</w>\": 2447,\n  \"agre\": 3180,\n  \"agreat\": 37594,\n  \"agree</w>\": 5953,\n  \"agreed</w>\": 12774,\n  \"agreeing</w>\": 40720,\n  \"agreement</w>\": 8286,\n  \"agreements</w>\": 25865,\n  \"agrees</w>\": 17854,\n  \"agri\": 20527,\n  \"agri</w>\": 30326,\n  \"agricul\": 7234,\n  \"agricultural</w>\": 15440,\n  \"agriculture</w>\": 9720,\n  \"agro\": 33178,\n  \"agro</w>\": 44589,\n  \"agron\": 41314,\n  \"agroup</w>\": 40099,\n  \"ags</w>\": 16926,\n  \"agt</w>\": 39681,\n  \"agu\": 3922,\n  \"agu</w>\": 36544,\n  \"agua</w>\": 18482,\n  \"aguchi</w>\": 49206,\n  \"ague</w>\": 2095,\n  \"aguero</w>\": 42964,\n  \"agues</w>\": 7000,\n  \"aguil\": 27946,\n  \"aguilar</w>\": 44715,\n  \"ah\": 1772,\n  \"ah</w>\": 1288,\n  \"aha\": 12082,\n  \"aha</w>\": 8429,\n  \"ahah</w>\": 38661,\n  \"ahaha</w>\": 32423,\n  \"ahahaha</w>\": 42620,\n  \"aham\": 36036,\n  \"ahan\": 45061,\n  \"ahan</w>\": 19255,\n  \"ahar\": 31038,\n  \"ahar</w>\": 38760,\n  \"ahe\": 27688,\n  \"ahead</w>\": 3158,\n  \"ahem</w>\": 39995,\n  \"ahh</w>\": 13152,\n  \"ahhh</w>\": 14769,\n  \"ahhhh</w>\": 21054,\n  \"ahhhhh</w>\": 36392,\n  \"ahi\": 45349,\n  \"ahi</w>\": 24154,\n  \"ahl</w>\": 30433,\n  \"ahmad\": 32167,\n  \"ahmad</w>\": 16902,\n  \"ahmadi\": 38656,\n  \"ahmadiyya</w>\": 44865,\n  \"ahmed\": 19491,\n  \"ahmed</w>\": 12081,\n  \"ahmedabad</w>\": 26966,\n  \"ahn</w>\": 33405,\n  \"aho\": 28114,\n  \"aho</w>\": 38444,\n  \"ahora</w>\": 43113,\n  \"ahouse</w>\": 33197,\n  \"ahoy</w>\": 38652,\n  \"ahs</w>\": 16937,\n  \"ahu\": 11908,\n  \"ahu</w>\": 16515,\n  \"ai\": 2014,\n  \"ai</w>\": 2215,\n  \"aia</w>\": 27046,\n  \"aib</w>\": 34780,\n  \"aic\": 29454,\n  \"aid\": 13723,\n  \"aid</w>\": 5182,\n  \"aida</w>\": 33830,\n  \"aidan\": 48814,\n  \"aidan</w>\": 26945,\n  \"aide\": 31558,\n  \"aide</w>\": 9746,\n  \"aided</w>\": 48707,\n  \"aiden</w>\": 40020,\n  \"aides</w>\": 49082,\n  \"aids</w>\": 11759,\n  \"aig\": 27295,\n  \"aig</w>\": 46989,\n  \"aii</w>\": 22478,\n  \"aik</w>\": 42575,\n  \"aiken</w>\": 46342,\n  \"ail\": 1457,\n  \"ail</w>\": 9154,\n  \"ailed</w>\": 38919,\n  \"ailing</w>\": 29999,\n  \"ails</w>\": 27024,\n  \"aim\": 6787,\n  \"aim</w>\": 11255,\n  \"aime</w>\": 39872,\n  \"aimed</w>\": 20247,\n  \"aimee</w>\": 36318,\n  \"aiming</w>\": 21768,\n  \"aimo</w>\": 36706,\n  \"aims</w>\": 13326,\n  \"ain\": 8326,\n  \"ain</w>\": 2210,\n  \"aine\": 48983,\n  \"aine</w>\": 17634,\n  \"ains</w>\": 27621,\n  \"aint\": 29543,\n  \"aint</w>\": 13099,\n  \"ainted</w>\": 39933,\n  \"aioli</w>\": 43949,\n  \"air\": 1281,\n  \"air</w>\": 1922,\n  \"aira\": 35085,\n  \"aira</w>\": 46444,\n  \"airasia</w>\": 48020,\n  \"airbnb</w>\": 23098,\n  \"airborne</w>\": 22755,\n  \"airbus</w>\": 15324,\n  \"aircraft</w>\": 7706,\n  \"airdrop</w>\": 38434,\n  \"aire</w>\": 7682,\n  \"aired</w>\": 21938,\n  \"aires</w>\": 17034,\n  \"airfield</w>\": 40525,\n  \"airforce</w>\": 23511,\n  \"airing</w>\": 20453,\n  \"airline</w>\": 14847,\n  \"airlines</w>\": 8929,\n  \"airmen</w>\": 44499,\n  \"airplane</w>\": 16451,\n  \"airplanes</w>\": 33319,\n  \"airplay</w>\": 47024,\n  \"airpollution</w>\": 47362,\n  \"airport\": 48337,\n  \"airport</w>\": 3259,\n  \"airports</w>\": 21543,\n  \"airs</w>\": 18539,\n  \"airshow</w>\": 27139,\n  \"airsoft</w>\": 30134,\n  \"airspace</w>\": 49280,\n  \"airstrikes</w>\": 37220,\n  \"airtel</w>\": 34784,\n  \"airtime</w>\": 46617,\n  \"airwaves</w>\": 43910,\n  \"airways</w>\": 14299,\n  \"airy</w>\": 44453,\n  \"ais\": 7616,\n  \"ais</w>\": 11393,\n  \"aise</w>\": 30505,\n  \"aish\": 21946,\n  \"aisha</w>\": 40211,\n  \"aishwar\": 29687,\n  \"aishwarya</w>\": 44019,\n  \"aisle</w>\": 26917,\n  \"ait\": 25613,\n  \"ait</w>\": 40814,\n  \"aj\": 3990,\n  \"aj</w>\": 6342,\n  \"aja\": 42343,\n  \"aja</w>\": 19633,\n  \"ajax</w>\": 21933,\n  \"ajay\": 22494,\n  \"ajay</w>\": 28726,\n  \"ajaydevgn</w>\": 35515,\n  \"aje\": 48818,\n  \"aje</w>\": 33315,\n  \"ajes</w>\": 38791,\n  \"aji\": 26102,\n  \"aji</w>\": 21153,\n  \"ajit</w>\": 42261,\n  \"ajith</w>\": 24118,\n  \"ajo</w>\": 26958,\n  \"aju\": 36855,\n  \"ak\": 819,\n  \"ak</w>\": 1196,\n  \"aka\": 19154,\n  \"aka</w>\": 3412,\n  \"akaif</w>\": 45736,\n  \"akan\": 43678,\n  \"akan</w>\": 38244,\n  \"akapoor</w>\": 40064,\n  \"akarta</w>\": 48603,\n  \"akb</w>\": 41962,\n  \"akbar</w>\": 27180,\n  \"ake\": 10558,\n  \"ake</w>\": 5776,\n  \"aked</w>\": 6115,\n  \"aker\": 14245,\n  \"aker</w>\": 3074,\n  \"akers</w>\": 5788,\n  \"akes</w>\": 4764,\n  \"akest</w>\": 46679,\n  \"akh\": 14821,\n  \"akh</w>\": 30660,\n  \"akhan</w>\": 28158,\n  \"akhi\": 41660,\n  \"akhilesh</w>\": 48495,\n  \"akhtar</w>\": 45458,\n  \"aki\": 18173,\n  \"aki</w>\": 6592,\n  \"akin\": 24630,\n  \"akin</w>\": 13601,\n  \"aking</w>\": 1809,\n  \"akins</w>\": 48568,\n  \"akira</w>\": 34001,\n  \"akis</w>\": 27732,\n  \"akistan</w>\": 46221,\n  \"akley</w>\": 39908,\n  \"ako\": 44027,\n  \"ako</w>\": 14541,\n  \"akon</w>\": 47105,\n  \"akos</w>\": 44659,\n  \"akrish\": 37434,\n  \"akron</w>\": 26115,\n  \"aks</w>\": 2953,\n  \"aksh\": 28226,\n  \"akshay\": 21483,\n  \"akshay</w>\": 38914,\n  \"akshaykumar</w>\": 23624,\n  \"akshi</w>\": 42634,\n  \"aku\": 18151,\n  \"aku</w>\": 20815,\n  \"aky</w>\": 11977,\n  \"al\": 526,\n  \"al</w>\": 566,\n  \"ala\": 12783,\n  \"ala</w>\": 3449,\n  \"alab\": 6365,\n  \"alabam\": 45880,\n  \"alabama</w>\": 8422,\n  \"alach\": 24622,\n  \"alad\": 23074,\n  \"aladdin</w>\": 29951,\n  \"alai</w>\": 47072,\n  \"alain</w>\": 28999,\n  \"alam\": 16612,\n  \"alam</w>\": 16012,\n  \"alamo\": 41922,\n  \"alamo</w>\": 34632,\n  \"alan\": 9563,\n  \"alan</w>\": 5773,\n  \"alana</w>\": 43405,\n  \"aland\": 34304,\n  \"aland</w>\": 6819,\n  \"alar\": 34333,\n  \"alarm</w>\": 11321,\n  \"alarming</w>\": 37209,\n  \"alarms</w>\": 31236,\n  \"alarts</w>\": 31422,\n  \"alas\": 7276,\n  \"alas</w>\": 22412,\n  \"alaska</w>\": 9562,\n  \"alaskan</w>\": 33898,\n  \"alastair</w>\": 42062,\n  \"alay\": 30289,\n  \"alay</w>\": 36450,\n  \"alaya</w>\": 36397,\n  \"alb\": 45248,\n  \"alba</w>\": 25254,\n  \"alban\": 10882,\n  \"albania</w>\": 29170,\n  \"albanian</w>\": 47721,\n  \"albans</w>\": 44119,\n  \"albany</w>\": 17359,\n  \"albat\": 42797,\n  \"albeit</w>\": 38984,\n  \"alber\": 6413,\n  \"albert\": 34174,\n  \"albert</w>\": 9507,\n  \"alberta</w>\": 11048,\n  \"alberto</w>\": 22714,\n  \"albi\": 18512,\n  \"albino</w>\": 48062,\n  \"albion</w>\": 24071,\n  \"albu\": 2216,\n  \"album\": 40712,\n  \"album</w>\": 2431,\n  \"albums</w>\": 10705,\n  \"albuquerque</w>\": 31079,\n  \"alcat\": 35361,\n  \"alche\": 37909,\n  \"alchemist</w>\": 38913,\n  \"alchemy</w>\": 39501,\n  \"alco\": 6848,\n  \"alco</w>\": 45446,\n  \"alcohol</w>\": 9426,\n  \"alcoholic</w>\": 25098,\n  \"ald\": 4539,\n  \"ald</w>\": 2928,\n  \"alda</w>\": 46440,\n  \"alde\": 33114,\n  \"alden\": 17155,\n  \"alden</w>\": 27710,\n  \"aldenrichards</w>\": 20051,\n  \"alder\": 18220,\n  \"alder</w>\": 46571,\n  \"aldi</w>\": 23204,\n  \"aldo</w>\": 9933,\n  \"aldridge</w>\": 38084,\n  \"alds</w>\": 14285,\n  \"aldu\": 6505,\n  \"aldub\": 10532,\n  \"aldub</w>\": 15247,\n  \"ale\": 1440,\n  \"ale</w>\": 1336,\n  \"alea</w>\": 26518,\n  \"aleague</w>\": 38909,\n  \"alec\": 29804,\n  \"alec</w>\": 19954,\n  \"alecoscino</w>\": 47948,\n  \"aled</w>\": 4970,\n  \"alee</w>\": 24515,\n  \"alej\": 23440,\n  \"alejandro</w>\": 32950,\n  \"alek\": 26906,\n  \"alek</w>\": 43310,\n  \"aleksand\": 48429,\n  \"alem</w>\": 11825,\n  \"aleppo</w>\": 19258,\n  \"aler\": 25674,\n  \"aler</w>\": 27335,\n  \"alert</w>\": 4662,\n  \"alerts</w>\": 22144,\n  \"ales\": 44171,\n  \"ales</w>\": 5962,\n  \"aless\": 21864,\n  \"alessandro</w>\": 37344,\n  \"alestine</w>\": 31945,\n  \"alex\": 2959,\n  \"alex</w>\": 4134,\n  \"alexa</w>\": 16273,\n  \"alexand\": 10696,\n  \"alexander\": 25527,\n  \"alexander</w>\": 7563,\n  \"alexandra</w>\": 19054,\n  \"alexandre</w>\": 35711,\n  \"alexandria</w>\": 21171,\n  \"alexis\": 35023,\n  \"alexis</w>\": 14243,\n  \"aley</w>\": 21635,\n  \"alf</w>\": 27098,\n  \"alfa</w>\": 23482,\n  \"alfar\": 38870,\n  \"alfie</w>\": 28598,\n  \"alfon\": 31947,\n  \"alfonso</w>\": 41784,\n  \"alfre\": 20982,\n  \"alfred</w>\": 16553,\n  \"alfredo</w>\": 32291,\n  \"algae</w>\": 25654,\n  \"algar\": 36291,\n  \"algarve</w>\": 40290,\n  \"alge\": 24336,\n  \"algebra</w>\": 33694,\n  \"alger\": 18568,\n  \"algeria</w>\": 25257,\n  \"algon\": 33007,\n  \"algori\": 14912,\n  \"algorithm</w>\": 23295,\n  \"algorithms</w>\": 26039,\n  \"alham\": 23352,\n  \"alhamdulil\": 35129,\n  \"alhamdulillah</w>\": 38982,\n  \"ali\": 835,\n  \"ali</w>\": 3558,\n  \"alia</w>\": 2492,\n  \"aliaa</w>\": 36468,\n  \"alian</w>\": 3464,\n  \"alias</w>\": 40026,\n  \"alibaba</w>\": 39231,\n  \"alic\": 25265,\n  \"alice\": 23759,\n  \"alice</w>\": 9192,\n  \"alici\": 31630,\n  \"alicia</w>\": 20914,\n  \"alie</w>\": 8697,\n  \"alien\": 22846,\n  \"alien</w>\": 9639,\n  \"aliens</w>\": 14883,\n  \"alier</w>\": 39493,\n  \"alies</w>\": 38086,\n  \"alife\": 41347,\n  \"alife</w>\": 21100,\n  \"alig\": 21272,\n  \"alight</w>\": 36157,\n  \"align</w>\": 31160,\n  \"aligned</w>\": 29292,\n  \"alignment</w>\": 27267,\n  \"alik</w>\": 31141,\n  \"alike</w>\": 12665,\n  \"alim\": 42075,\n  \"alin\": 42746,\n  \"alin</w>\": 40063,\n  \"alina</w>\": 39529,\n  \"aline</w>\": 21799,\n  \"aling</w>\": 5169,\n  \"alion</w>\": 19049,\n  \"alis\": 21308,\n  \"alis</w>\": 20114,\n  \"alisa</w>\": 38918,\n  \"alisation</w>\": 42143,\n  \"alise</w>\": 36718,\n  \"alised</w>\": 25099,\n  \"alism</w>\": 5607,\n  \"alison\": 28653,\n  \"alison</w>\": 16970,\n  \"alist\": 44900,\n  \"alist</w>\": 3320,\n  \"alistair</w>\": 40551,\n  \"alistic</w>\": 22302,\n  \"alists</w>\": 5653,\n  \"alit\": 45566,\n  \"alities</w>\": 27925,\n  \"ality</w>\": 1694,\n  \"alive\": 40467,\n  \"alive</w>\": 4716,\n  \"aliz\": 30979,\n  \"alization</w>\": 8026,\n  \"alize</w>\": 10268,\n  \"alized</w>\": 6141,\n  \"alizer</w>\": 38922,\n  \"alizes</w>\": 26181,\n  \"alizing</w>\": 13023,\n  \"alk\": 30246,\n  \"alk</w>\": 21577,\n  \"alkal\": 33450,\n  \"alkaline</w>\": 39210,\n  \"all\": 813,\n  \"all</w>\": 615,\n  \"alla\": 13884,\n  \"alla</w>\": 14000,\n  \"allabout\": 43996,\n  \"allah</w>\": 6378,\n  \"allan\": 36552,\n  \"allan</w>\": 15404,\n  \"allblacks</w>\": 47728,\n  \"allday</w>\": 35862,\n  \"alle\": 4870,\n  \"alle</w>\": 29478,\n  \"alled</w>\": 7379,\n  \"alleg\": 7456,\n  \"allegations</w>\": 16992,\n  \"alleged</w>\": 12133,\n  \"allegedly</w>\": 14177,\n  \"alleges</w>\": 45051,\n  \"allegh\": 41479,\n  \"allegheny</w>\": 47851,\n  \"allegi\": 28832,\n  \"allegiance</w>\": 30955,\n  \"allen\": 16712,\n  \"allen</w>\": 6386,\n  \"allenge</w>\": 31387,\n  \"aller\": 10116,\n  \"aller</w>\": 30630,\n  \"allergic</w>\": 28809,\n  \"allergies</w>\": 28247,\n  \"allergy</w>\": 24408,\n  \"allery</w>\": 32542,\n  \"alles</w>\": 43354,\n  \"allevi\": 31682,\n  \"alleviate</w>\": 44799,\n  \"alley\": 36205,\n  \"alley</w>\": 10329,\n  \"allez</w>\": 49137,\n  \"alli\": 4123,\n  \"alli</w>\": 15268,\n  \"alliance\": 45404,\n  \"alliance</w>\": 8945,\n  \"alliances</w>\": 48403,\n  \"allianz</w>\": 45740,\n  \"allie</w>\": 25040,\n  \"allied</w>\": 20045,\n  \"allies</w>\": 17277,\n  \"alligator</w>\": 28574,\n  \"allin\": 45007,\n  \"allin</w>\": 22395,\n  \"alline</w>\": 48182,\n  \"alling</w>\": 2992,\n  \"allis</w>\": 45309,\n  \"allison\": 34602,\n  \"allison</w>\": 16578,\n  \"allman</w>\": 42611,\n  \"allo\": 8107,\n  \"allo</w>\": 18389,\n  \"allocated</w>\": 42716,\n  \"allocation</w>\": 35139,\n  \"allon</w>\": 46693,\n  \"allot\": 26363,\n  \"allotment</w>\": 33750,\n  \"allow\": 5645,\n  \"allow</w>\": 6722,\n  \"allowance</w>\": 35696,\n  \"allowed</w>\": 7885,\n  \"allowing</w>\": 12458,\n  \"allows</w>\": 9966,\n  \"alloy</w>\": 22467,\n  \"alls</w>\": 1997,\n  \"allstar\": 31247,\n  \"allstar</w>\": 22974,\n  \"allstars</w>\": 31198,\n  \"allthe\": 29253,\n  \"allu\": 20157,\n  \"alluarjun</w>\": 39333,\n  \"allure</w>\": 41814,\n  \"ally\": 7461,\n  \"ally</w>\": 769,\n  \"alm</w>\": 28303,\n  \"alma\": 32933,\n  \"alma</w>\": 18337,\n  \"alman\": 29394,\n  \"almanac</w>\": 41268,\n  \"almighty</w>\": 21898,\n  \"almond</w>\": 15646,\n  \"almonds</w>\": 30468,\n  \"almost\": 47534,\n  \"almost</w>\": 2671,\n  \"aln\": 47203,\n  \"alo\": 3435,\n  \"alo</w>\": 6183,\n  \"aloe</w>\": 30728,\n  \"alog</w>\": 15813,\n  \"alogue</w>\": 9101,\n  \"aloha</w>\": 23160,\n  \"aloils</w>\": 49002,\n  \"alom</w>\": 22236,\n  \"alon\": 14097,\n  \"alon</w>\": 42846,\n  \"alone</w>\": 4702,\n  \"along\": 8300,\n  \"along</w>\": 2528,\n  \"alongside</w>\": 8646,\n  \"alonso</w>\": 25704,\n  \"aloo</w>\": 46187,\n  \"alore</w>\": 14323,\n  \"alot</w>\": 16945,\n  \"alou\": 43180,\n  \"aloud</w>\": 30028,\n  \"alove\": 46669,\n  \"alove</w>\": 37045,\n  \"alp\": 32020,\n  \"alp</w>\": 39342,\n  \"alpac\": 30128,\n  \"alpaca</w>\": 42561,\n  \"alph\": 6720,\n  \"alpha\": 11807,\n  \"alpha</w>\": 8624,\n  \"alphabe\": 45796,\n  \"alphabet</w>\": 22335,\n  \"alphon\": 37865,\n  \"alpine</w>\": 17055,\n  \"alps</w>\": 18191,\n  \"already</w>\": 2426,\n  \"alright</w>\": 10866,\n  \"als\": 23982,\n  \"als</w>\": 938,\n  \"alsace</w>\": 49388,\n  \"also</w>\": 1446,\n  \"alt\": 9995,\n  \"alt</w>\": 10006,\n  \"alta\": 24470,\n  \"alta</w>\": 25378,\n  \"altaf</w>\": 47342,\n  \"altam\": 45624,\n  \"altar</w>\": 16385,\n  \"alter\": 4949,\n  \"alter</w>\": 21393,\n  \"altered</w>\": 25201,\n  \"altern\": 47463,\n  \"alternate</w>\": 15926,\n  \"alternati\": 16699,\n  \"alternative\": 37327,\n  \"alternative</w>\": 8248,\n  \"alternatives</w>\": 25041,\n  \"alth\": 23463,\n  \"alth</w>\": 5863,\n  \"although</w>\": 9421,\n  \"alti\": 35531,\n  \"alties</w>\": 17276,\n  \"altitude</w>\": 23241,\n  \"altman</w>\": 48100,\n  \"alto\": 35053,\n  \"alto</w>\": 17518,\n  \"altogether</w>\": 45689,\n  \"alton\": 41331,\n  \"alton</w>\": 36550,\n  \"altrin\": 38458,\n  \"altrincham</w>\": 44718,\n  \"alty</w>\": 5546,\n  \"alu\": 4776,\n  \"alu</w>\": 27991,\n  \"alum\": 5404,\n  \"alum</w>\": 10553,\n  \"alumin\": 14563,\n  \"alumini\": 22908,\n  \"aluminium</w>\": 23631,\n  \"aluminum</w>\": 15251,\n  \"alumna</w>\": 30313,\n  \"alumni</w>\": 6646,\n  \"alumnus</w>\": 23633,\n  \"alums</w>\": 30155,\n  \"alv\": 20928,\n  \"alvar\": 25196,\n  \"alvarez</w>\": 26924,\n  \"alvaro</w>\": 41941,\n  \"alves</w>\": 38547,\n  \"alvin</w>\": 27023,\n  \"alway\": 14046,\n  \"alway</w>\": 43764,\n  \"always\": 24997,\n  \"always</w>\": 1466,\n  \"alwx</w>\": 32768,\n  \"aly\": 6468,\n  \"aly</w>\": 12910,\n  \"alyn\": 49150,\n  \"alyss\": 29490,\n  \"alyssa</w>\": 18898,\n  \"alz\": 12936,\n  \"alz</w>\": 41128,\n  \"alzheim\": 15212,\n  \"alzheimer</w>\": 21151,\n  \"alzheimers</w>\": 34592,\n  \"am\": 548,\n  \"am</w>\": 687,\n  \"ama\": 18206,\n  \"ama</w>\": 1696,\n  \"amad\": 45095,\n  \"amade\": 37366,\n  \"amag\": 32049,\n  \"amal\": 15315,\n  \"amal</w>\": 36753,\n  \"aman\": 19890,\n  \"aman</w>\": 10110,\n  \"amand\": 14560,\n  \"amanda</w>\": 10036,\n  \"amar\": 6424,\n  \"amar</w>\": 19607,\n  \"amara</w>\": 48522,\n  \"amari\": 42565,\n  \"amarillo</w>\": 40449,\n  \"amarine</w>\": 45591,\n  \"amarketing</w>\": 30788,\n  \"amas\": 22716,\n  \"amas</w>\": 15667,\n  \"amat\": 38664,\n  \"amat</w>\": 25455,\n  \"amate\": 12453,\n  \"amateur</w>\": 14287,\n  \"amaya</w>\": 47210,\n  \"amaz\": 1185,\n  \"amaze</w>\": 24846,\n  \"amazed</w>\": 18944,\n  \"amazing\": 15949,\n  \"amazing</w>\": 1370,\n  \"amazingly</w>\": 20368,\n  \"amazon\": 13630,\n  \"amazon</w>\": 4140,\n  \"amb\": 9042,\n  \"amb</w>\": 16853,\n  \"amba</w>\": 27003,\n  \"ambani</w>\": 45967,\n  \"ambas\": 5634,\n  \"ambassad\": 5758,\n  \"ambassador</w>\": 6795,\n  \"ambassadors</w>\": 16832,\n  \"ambed\": 42089,\n  \"ambedkar</w>\": 48131,\n  \"amber\": 18292,\n  \"amber</w>\": 9986,\n  \"ambi\": 11844,\n  \"ambient</w>\": 23447,\n  \"ambigu\": 35702,\n  \"ambition</w>\": 20673,\n  \"ambitions</w>\": 34152,\n  \"ambitious</w>\": 18666,\n  \"ambro\": 17585,\n  \"ambrose</w>\": 24253,\n  \"ambu\": 34423,\n  \"ambul\": 13944,\n  \"ambulance</w>\": 15555,\n  \"ambush</w>\": 40725,\n  \"amc\": 24942,\n  \"amc</w>\": 16921,\n  \"amd</w>\": 20845,\n  \"ame\": 3995,\n  \"ame</w>\": 780,\n  \"amed</w>\": 5660,\n  \"ameen</w>\": 24229,\n  \"amel\": 31988,\n  \"amel</w>\": 10960,\n  \"ameli\": 21599,\n  \"amelia</w>\": 21433,\n  \"amell</w>\": 48198,\n  \"amen\": 18716,\n  \"amen</w>\": 12335,\n  \"amend\": 12425,\n  \"amendment</w>\": 15019,\n  \"amendments</w>\": 40901,\n  \"amenities</w>\": 30096,\n  \"ament</w>\": 27528,\n  \"amer\": 17081,\n  \"amer</w>\": 16147,\n  \"ameri\": 40422,\n  \"americ\": 1283,\n  \"america</w>\": 2224,\n  \"americafirst</w>\": 43216,\n  \"american\": 8746,\n  \"american</w>\": 2151,\n  \"americana</w>\": 26221,\n  \"americanair</w>\": 42538,\n  \"americani\": 39726,\n  \"americans</w>\": 6676,\n  \"americas\": 33343,\n  \"americas</w>\": 18142,\n  \"ames</w>\": 5469,\n  \"ameter</w>\": 23393,\n  \"amethy\": 30291,\n  \"amethyst</w>\": 31485,\n  \"amex</w>\": 46390,\n  \"amg</w>\": 21324,\n  \"amher\": 32311,\n  \"amherst</w>\": 39065,\n  \"ami\": 6100,\n  \"ami</w>\": 3065,\n  \"amic\": 25824,\n  \"amic</w>\": 21383,\n  \"amid\": 18908,\n  \"amid</w>\": 11953,\n  \"amide</w>\": 30952,\n  \"amidst</w>\": 25172,\n  \"amie</w>\": 36901,\n  \"amig\": 40294,\n  \"amiga</w>\": 35329,\n  \"amigo</w>\": 44991,\n  \"amigos</w>\": 28176,\n  \"amii\": 35462,\n  \"amiibo</w>\": 38871,\n  \"amily</w>\": 36732,\n  \"amin\": 14337,\n  \"amin</w>\": 20235,\n  \"amina</w>\": 47531,\n  \"amination</w>\": 30355,\n  \"amine</w>\": 35823,\n  \"aming</w>\": 3507,\n  \"amino</w>\": 33464,\n  \"amir\": 26029,\n  \"amir</w>\": 21973,\n  \"amis</w>\": 29829,\n  \"amish</w>\": 24958,\n  \"amit\": 15083,\n  \"amit</w>\": 25255,\n  \"amitabh</w>\": 48124,\n  \"amitshah</w>\": 32374,\n  \"aml</w>\": 43185,\n  \"amma</w>\": 29786,\n  \"amman</w>\": 29243,\n  \"ammo</w>\": 33474,\n  \"ammunition</w>\": 35060,\n  \"amn</w>\": 24073,\n  \"amne\": 14596,\n  \"amnesia</w>\": 41741,\n  \"amnesty\": 46330,\n  \"amnesty</w>\": 21177,\n  \"amo\": 4833,\n  \"amo</w>\": 11156,\n  \"amodi</w>\": 9826,\n  \"amon\": 17492,\n  \"amon</w>\": 24046,\n  \"among\": 12310,\n  \"among</w>\": 4265,\n  \"amongst</w>\": 12520,\n  \"amoo</w>\": 26977,\n  \"amor\": 19977,\n  \"amor</w>\": 15973,\n  \"amore\": 38937,\n  \"amore</w>\": 22691,\n  \"amores</w>\": 36338,\n  \"amos</w>\": 18133,\n  \"amoto</w>\": 25492,\n  \"amount</w>\": 6403,\n  \"amounts</w>\": 16747,\n  \"amour</w>\": 29908,\n  \"amovie</w>\": 41062,\n  \"amp\": 3521,\n  \"amp</w>\": 6259,\n  \"amped</w>\": 22640,\n  \"amphi\": 16379,\n  \"amphibious</w>\": 45206,\n  \"amphitheater</w>\": 41285,\n  \"amphitheatre</w>\": 44039,\n  \"ample</w>\": 34162,\n  \"amples</w>\": 14536,\n  \"ampli\": 15647,\n  \"amplifier</w>\": 31743,\n  \"amplify</w>\": 45308,\n  \"amps</w>\": 19252,\n  \"ampton\": 29410,\n  \"ampton</w>\": 9347,\n  \"amr</w>\": 30916,\n  \"amreading</w>\": 16546,\n  \"amrit\": 33849,\n  \"ams</w>\": 1396,\n  \"amster\": 9110,\n  \"amsterdam</w>\": 9441,\n  \"amtrak</w>\": 27855,\n  \"amu\": 11347,\n  \"amu</w>\": 32336,\n  \"amur\": 35014,\n  \"amura</w>\": 35487,\n  \"amus</w>\": 36269,\n  \"amuse\": 21421,\n  \"amuse</w>\": 44367,\n  \"amused</w>\": 30212,\n  \"amusement</w>\": 32570,\n  \"amusic</w>\": 20266,\n  \"amusing</w>\": 31789,\n  \"amwriting</w>\": 9660,\n  \"amy\": 10547,\n  \"amy</w>\": 5187,\n  \"an\": 514,\n  \"an</w>\": 550,\n  \"ana\": 6588,\n  \"ana</w>\": 1388,\n  \"anab\": 34742,\n  \"anada</w>\": 27948,\n  \"anag\": 12115,\n  \"anagh</w>\": 40774,\n  \"anaheim</w>\": 23728,\n  \"anak\": 34814,\n  \"anak</w>\": 38658,\n  \"anal\": 2785,\n  \"analo\": 34179,\n  \"analog</w>\": 19963,\n  \"analogue</w>\": 46031,\n  \"analy\": 4611,\n  \"analyse</w>\": 47246,\n  \"analyses</w>\": 39695,\n  \"analysis</w>\": 5296,\n  \"analyst</w>\": 14198,\n  \"analysts</w>\": 28075,\n  \"analytical</w>\": 34550,\n  \"analytics</w>\": 8558,\n  \"analyze</w>\": 28519,\n  \"analyzing</w>\": 32107,\n  \"anam\": 29525,\n  \"anan\": 37215,\n  \"anand\": 25073,\n  \"anand</w>\": 22083,\n  \"anap\": 41566,\n  \"anarch\": 46405,\n  \"anarchi\": 39879,\n  \"anarchy</w>\": 27707,\n  \"anas\": 31382,\n  \"anas</w>\": 12633,\n  \"anast\": 48902,\n  \"anasta\": 22915,\n  \"anastasi\": 36534,\n  \"anastasia</w>\": 37975,\n  \"anat\": 10045,\n  \"anath</w>\": 31277,\n  \"anatom\": 33759,\n  \"anatomy</w>\": 15376,\n  \"anc\": 1124,\n  \"anc</w>\": 17758,\n  \"anca</w>\": 14583,\n  \"ance\": 7165,\n  \"ance</w>\": 884,\n  \"anced</w>\": 5071,\n  \"ancer</w>\": 17415,\n  \"ancers</w>\": 37296,\n  \"ances</w>\": 3515,\n  \"ancestor</w>\": 43904,\n  \"ancestors</w>\": 24405,\n  \"ancestral</w>\": 41615,\n  \"ancestry</w>\": 30922,\n  \"anch\": 9489,\n  \"anche</w>\": 34679,\n  \"ancho\": 26610,\n  \"anchor\": 20030,\n  \"anchor</w>\": 13201,\n  \"anchorage</w>\": 31950,\n  \"anchored</w>\": 45926,\n  \"anchors</w>\": 37830,\n  \"anci\": 4192,\n  \"ancient\": 31495,\n  \"ancient</w>\": 5810,\n  \"ancies</w>\": 21647,\n  \"ancing</w>\": 7797,\n  \"anco</w>\": 15459,\n  \"ancy\": 16282,\n  \"ancy</w>\": 3633,\n  \"and\": 672,\n  \"and</w>\": 537,\n  \"anda</w>\": 2911,\n  \"andalu\": 31443,\n  \"andco</w>\": 36302,\n  \"ande\": 26889,\n  \"ande</w>\": 30354,\n  \"ander\": 3740,\n  \"ander</w>\": 3935,\n  \"anders</w>\": 10880,\n  \"andersen</w>\": 32661,\n  \"anderson\": 26683,\n  \"anderson</w>\": 6510,\n  \"andes</w>\": 24052,\n  \"andfriends</w>\": 36871,\n  \"andhi</w>\": 21617,\n  \"andhra</w>\": 32452,\n  \"andi\": 28870,\n  \"andi</w>\": 14354,\n  \"andie</w>\": 46318,\n  \"andme</w>\": 42831,\n  \"ando\": 35950,\n  \"ando</w>\": 5986,\n  \"andolan</w>\": 48965,\n  \"andon</w>\": 36488,\n  \"andor\": 45243,\n  \"andover</w>\": 44177,\n  \"andr\": 22661,\n  \"andra\": 46795,\n  \"andra</w>\": 21730,\n  \"andre\": 2657,\n  \"andre</w>\": 9400,\n  \"andrea</w>\": 10895,\n  \"andreas</w>\": 20444,\n  \"andrei</w>\": 42137,\n  \"andres</w>\": 25197,\n  \"andretti</w>\": 44291,\n  \"andrew\": 11717,\n  \"andrew</w>\": 4847,\n  \"andrews</w>\": 14506,\n  \"andri\": 37208,\n  \"andro\": 4417,\n  \"andro</w>\": 17980,\n  \"android\": 24284,\n  \"android</w>\": 5191,\n  \"androidgames</w>\": 46572,\n  \"andromeda</w>\": 42942,\n  \"andrÃ©</w>\": 35609,\n  \"ands</w>\": 32257,\n  \"andthe\": 22111,\n  \"andu\": 44200,\n  \"andum</w>\": 47266,\n  \"andy\": 9447,\n  \"andy</w>\": 2888,\n  \"ane\": 5846,\n  \"ane</w>\": 3051,\n  \"anec\": 33965,\n  \"anem\": 41395,\n  \"anemone</w>\": 49019,\n  \"aneous</w>\": 48273,\n  \"anes</w>\": 15381,\n  \"anese</w>\": 48778,\n  \"anesthe\": 30622,\n  \"anesthesia</w>\": 43353,\n  \"anew\": 39084,\n  \"anew</w>\": 47341,\n  \"anews</w>\": 20919,\n  \"aney</w>\": 22387,\n  \"anfield</w>\": 26993,\n  \"ang\": 883,\n  \"ang</w>\": 2704,\n  \"anga</w>\": 11641,\n  \"angames</w>\": 43178,\n  \"angan</w>\": 28264,\n  \"angas</w>\": 46180,\n  \"ange\": 2960,\n  \"ange</w>\": 3039,\n  \"angel\": 5029,\n  \"angel</w>\": 5130,\n  \"angela</w>\": 12354,\n  \"angeles</w>\": 7382,\n  \"angeli\": 15265,\n  \"angelic</w>\": 41038,\n  \"angelica</w>\": 38582,\n  \"angelina</w>\": 28890,\n  \"angelo</w>\": 14342,\n  \"angelou</w>\": 41328,\n  \"angels</w>\": 7809,\n  \"anger\": 32737,\n  \"anger</w>\": 6788,\n  \"angerous</w>\": 39716,\n  \"angers</w>\": 29756,\n  \"angh\": 34030,\n  \"angi\": 28003,\n  \"angi</w>\": 24301,\n  \"angie</w>\": 18859,\n  \"angle\": 21749,\n  \"angle</w>\": 6946,\n  \"angled</w>\": 32322,\n  \"angler</w>\": 22284,\n  \"anglers</w>\": 41608,\n  \"angles</w>\": 18627,\n  \"anglesey</w>\": 31850,\n  \"anglia</w>\": 32076,\n  \"anglic\": 28322,\n  \"anglican</w>\": 33284,\n  \"angling</w>\": 36824,\n  \"anglo\": 39515,\n  \"anglo</w>\": 30408,\n  \"ango</w>\": 19090,\n  \"angola</w>\": 36636,\n  \"angor</w>\": 41740,\n  \"angp</w>\": 19992,\n  \"angry\": 33910,\n  \"angry</w>\": 9054,\n  \"angs</w>\": 18441,\n  \"angst</w>\": 41714,\n  \"angu\": 11209,\n  \"angular\": 43584,\n  \"angular</w>\": 24981,\n  \"angularjs</w>\": 48608,\n  \"angus</w>\": 19688,\n  \"ani\": 1326,\n  \"ani</w>\": 3624,\n  \"ania</w>\": 9866,\n  \"anian</w>\": 9945,\n  \"anians</w>\": 39393,\n  \"anic</w>\": 23113,\n  \"anie\": 26697,\n  \"anie</w>\": 7671,\n  \"anil\": 28589,\n  \"anil</w>\": 34619,\n  \"anim\": 2190,\n  \"animal\": 10697,\n  \"animal</w>\": 4668,\n  \"animalrights</w>\": 42859,\n  \"animals</w>\": 4995,\n  \"animate</w>\": 40076,\n  \"animated</w>\": 13360,\n  \"animation</w>\": 10344,\n  \"animations</w>\": 42870,\n  \"animator</w>\": 42591,\n  \"anime\": 23314,\n  \"anime</w>\": 6469,\n  \"anin</w>\": 45735,\n  \"aning</w>\": 30972,\n  \"anir\": 27089,\n  \"anirud\": 35278,\n  \"anirudhofficial</w>\": 45917,\n  \"anis\": 40986,\n  \"anis</w>\": 47556,\n  \"anism</w>\": 20947,\n  \"anist</w>\": 16729,\n  \"anistan</w>\": 9727,\n  \"aniston</w>\": 47344,\n  \"anit\": 23683,\n  \"anita</w>\": 18544,\n  \"anium</w>\": 14794,\n  \"anj\": 22443,\n  \"anja</w>\": 43440,\n  \"anjali</w>\": 38834,\n  \"anjo</w>\": 47353,\n  \"ank\": 13339,\n  \"ank</w>\": 10029,\n  \"anka</w>\": 45324,\n  \"ankara</w>\": 34309,\n  \"ankle</w>\": 14777,\n  \"ankles</w>\": 48688,\n  \"ann\": 850,\n  \"ann</w>\": 5424,\n  \"anna\": 13821,\n  \"anna</w>\": 2160,\n  \"annab\": 22336,\n  \"annabelle</w>\": 47661,\n  \"annah\": 39166,\n  \"annah</w>\": 14327,\n  \"annak\": 41720,\n  \"annan</w>\": 32166,\n  \"annapolis</w>\": 34491,\n  \"annas\": 48467,\n  \"anne\": 9139,\n  \"anne</w>\": 4083,\n  \"anned</w>\": 27352,\n  \"anner</w>\": 12642,\n  \"annes</w>\": 24343,\n  \"annette</w>\": 36821,\n  \"annex\": 42958,\n  \"annex</w>\": 46389,\n  \"anni\": 2438,\n  \"anni</w>\": 13728,\n  \"annie\": 37270,\n  \"annie</w>\": 12173,\n  \"annies</w>\": 43184,\n  \"annihil\": 32734,\n  \"annis</w>\": 24742,\n  \"anniv</w>\": 31399,\n  \"anniver\": 29671,\n  \"annivers\": 42836,\n  \"anniversaire</w>\": 30882,\n  \"anniversary</w>\": 3048,\n  \"anno\": 9901,\n  \"anno</w>\": 26871,\n  \"annon</w>\": 26385,\n  \"annot\": 30411,\n  \"announ\": 1806,\n  \"announce</w>\": 3682,\n  \"announced</w>\": 4103,\n  \"announcement</w>\": 6932,\n  \"announcements</w>\": 23735,\n  \"announcer</w>\": 33626,\n  \"announces</w>\": 6500,\n  \"announcing</w>\": 11593,\n  \"annoy</w>\": 45138,\n  \"annoyed</w>\": 29863,\n  \"annoying</w>\": 15248,\n  \"annu\": 21698,\n  \"annual</w>\": 2906,\n  \"annually</w>\": 23703,\n  \"anny\": 34313,\n  \"anny</w>\": 5291,\n  \"ano\": 5617,\n  \"ano</w>\": 2658,\n  \"anom\": 21612,\n  \"anomaly</w>\": 46811,\n  \"anon\": 47079,\n  \"anon</w>\": 13667,\n  \"anonym\": 38605,\n  \"anonymous</w>\": 15036,\n  \"anoo\": 25690,\n  \"anor\": 13243,\n  \"anor</w>\": 16596,\n  \"anos</w>\": 20132,\n  \"another\": 29274,\n  \"another</w>\": 1380,\n  \"anova</w>\": 24116,\n  \"ans\": 24586,\n  \"ans</w>\": 885,\n  \"ansari</w>\": 40748,\n  \"ansel\": 40356,\n  \"answ\": 3369,\n  \"answe\": 14391,\n  \"answer</w>\": 4518,\n  \"answered</w>\": 14499,\n  \"answering</w>\": 18280,\n  \"answers</w>\": 8692,\n  \"ant\": 1103,\n  \"ant</w>\": 773,\n  \"anta</w>\": 3023,\n  \"antag\": 41745,\n  \"antal\": 39355,\n  \"antalya</w>\": 47440,\n  \"antan\": 32899,\n  \"antarc\": 21338,\n  \"antarctic</w>\": 27077,\n  \"antarctica</w>\": 22587,\n  \"ante\": 19311,\n  \"ante</w>\": 9769,\n  \"antebellum</w>\": 41683,\n  \"antelope</w>\": 39177,\n  \"anten\": 35517,\n  \"antenna</w>\": 26370,\n  \"anter\": 46508,\n  \"antes</w>\": 14927,\n  \"antgrasso</w>\": 39074,\n  \"anth\": 3737,\n  \"anth</w>\": 29741,\n  \"antha</w>\": 47981,\n  \"anthe\": 34167,\n  \"anthem</w>\": 12504,\n  \"anthi</w>\": 45261,\n  \"anthology</w>\": 21009,\n  \"anthony\": 17477,\n  \"anthony</w>\": 6113,\n  \"anthro\": 10019,\n  \"anthropo\": 18538,\n  \"anthropology</w>\": 32407,\n  \"anthus</w>\": 37639,\n  \"anti\": 3120,\n  \"anti</w>\": 3564,\n  \"antibio\": 18954,\n  \"antibiotic</w>\": 34387,\n  \"antibiotics</w>\": 29499,\n  \"antibody</w>\": 49018,\n  \"antic\": 8260,\n  \"anticip\": 11435,\n  \"anticipate</w>\": 38280,\n  \"anticipated</w>\": 18605,\n  \"anticipating</w>\": 48067,\n  \"anticipation</w>\": 26983,\n  \"antics</w>\": 37126,\n  \"antidote</w>\": 45476,\n  \"antifa</w>\": 35926,\n  \"antigua</w>\": 39910,\n  \"antine</w>\": 17641,\n  \"antino</w>\": 27818,\n  \"antioxid\": 23010,\n  \"antioxidant</w>\": 37452,\n  \"antioxidants</w>\": 34208,\n  \"antiqu\": 21745,\n  \"antique\": 46517,\n  \"antique</w>\": 9060,\n  \"antiques</w>\": 17365,\n  \"antis</w>\": 19748,\n  \"antisemitism</w>\": 36630,\n  \"antit\": 37833,\n  \"antitrust</w>\": 49343,\n  \"antlers</w>\": 47720,\n  \"antly</w>\": 5265,\n  \"anto\": 16826,\n  \"anto</w>\": 24486,\n  \"antoine</w>\": 25188,\n  \"anton\": 5497,\n  \"anton</w>\": 19644,\n  \"antoni\": 39958,\n  \"antonio\": 30497,\n  \"antonio</w>\": 7842,\n  \"antony</w>\": 30707,\n  \"antrim</w>\": 40252,\n  \"ants</w>\": 1589,\n  \"antv</w>\": 47520,\n  \"antw\": 44460,\n  \"antwer\": 26970,\n  \"antwerp</w>\": 33797,\n  \"antz</w>\": 25684,\n  \"anu\": 8537,\n  \"anu</w>\": 17152,\n  \"anup\": 29617,\n  \"anus</w>\": 27084,\n  \"anush\": 22765,\n  \"anushka\": 42080,\n  \"anushka</w>\": 39822,\n  \"anushkasharma</w>\": 44203,\n  \"anwar</w>\": 34261,\n  \"anxi\": 9021,\n  \"anxiety</w>\": 11103,\n  \"anxious</w>\": 27793,\n  \"any\": 1307,\n  \"any</w>\": 1504,\n  \"anya</w>\": 11173,\n  \"anybody</w>\": 10071,\n  \"anyi</w>\": 41632,\n  \"anymore</w>\": 7372,\n  \"anyone</w>\": 2302,\n  \"anything</w>\": 3582,\n  \"anytime</w>\": 13924,\n  \"anyway</w>\": 8931,\n  \"anyways</w>\": 19778,\n  \"anywhere</w>\": 8863,\n  \"anz\": 14445,\n  \"anz</w>\": 19425,\n  \"anza</w>\": 14669,\n  \"anzac</w>\": 31977,\n  \"ao\": 7313,\n  \"ao</w>\": 5703,\n  \"aoa</w>\": 47119,\n  \"aoc</w>\": 31918,\n  \"aofficial</w>\": 30840,\n  \"aoki</w>\": 33602,\n  \"aol</w>\": 40643,\n  \"aon\": 30928,\n  \"aon</w>\": 48476,\n  \"aor\": 32044,\n  \"aos</w>\": 46860,\n  \"ap\": 688,\n  \"ap</w>\": 2728,\n  \"apa\": 36954,\n  \"apa</w>\": 13537,\n  \"apac</w>\": 34320,\n  \"apache</w>\": 23921,\n  \"apal\": 38017,\n  \"apan</w>\": 36562,\n  \"apar\": 9161,\n  \"apark</w>\": 32528,\n  \"apart\": 6474,\n  \"apart</w>\": 7803,\n  \"aparthe\": 25121,\n  \"apartheid</w>\": 26597,\n  \"apartment</w>\": 8285,\n  \"apartments</w>\": 15791,\n  \"aparty</w>\": 26767,\n  \"apat\": 31755,\n  \"apathy</w>\": 18145,\n  \"apc</w>\": 20300,\n  \"apd</w>\": 44563,\n  \"ape\": 6098,\n  \"ape</w>\": 2609,\n  \"apec</w>\": 47530,\n  \"aper\": 13681,\n  \"aper</w>\": 5858,\n  \"apers</w>\": 15846,\n  \"apes</w>\": 9550,\n  \"apeu\": 19040,\n  \"apex\": 41935,\n  \"apex</w>\": 23712,\n  \"aph\": 16341,\n  \"aph</w>\": 29491,\n  \"apha</w>\": 47104,\n  \"apho\": 21758,\n  \"aphra\": 44147,\n  \"api\": 23342,\n  \"api</w>\": 14674,\n  \"apia</w>\": 44259,\n  \"apic\": 40679,\n  \"aping</w>\": 18456,\n  \"apink</w>\": 35725,\n  \"apis</w>\": 37575,\n  \"apk</w>\": 27648,\n  \"apo\": 4089,\n  \"apo</w>\": 19758,\n  \"apocaly\": 13932,\n  \"apocalypse</w>\": 17571,\n  \"apocalyptic</w>\": 35675,\n  \"apol\": 5023,\n  \"apolice</w>\": 45663,\n  \"apolis</w>\": 9598,\n  \"apollo\": 48213,\n  \"apollo</w>\": 11554,\n  \"apolo\": 31094,\n  \"apolog\": 25530,\n  \"apologe\": 42908,\n  \"apologi\": 14977,\n  \"apologies</w>\": 21959,\n  \"apologise</w>\": 39608,\n  \"apologize</w>\": 22879,\n  \"apologizes</w>\": 35298,\n  \"apology</w>\": 20768,\n  \"apor\": 21871,\n  \"apore</w>\": 6679,\n  \"apost\": 20309,\n  \"apostle</w>\": 33051,\n  \"apostles</w>\": 48457,\n  \"app\": 882,\n  \"app</w>\": 2231,\n  \"appa\": 4884,\n  \"appa</w>\": 13110,\n  \"appalach\": 30523,\n  \"appalachian</w>\": 36806,\n  \"appalling</w>\": 44797,\n  \"appar\": 26698,\n  \"apparatus</w>\": 37716,\n  \"apparel</w>\": 13972,\n  \"apparent</w>\": 23963,\n  \"apparently</w>\": 5287,\n  \"appe\": 3748,\n  \"appe</w>\": 45949,\n  \"appeal</w>\": 9625,\n  \"appealing</w>\": 25909,\n  \"appeals</w>\": 22447,\n  \"appear\": 5544,\n  \"appear</w>\": 9308,\n  \"appearance</w>\": 7238,\n  \"appearances</w>\": 17214,\n  \"appeared</w>\": 11561,\n  \"appearing</w>\": 18759,\n  \"appears</w>\": 8743,\n  \"appell\": 43833,\n  \"appen\": 37201,\n  \"appen</w>\": 26589,\n  \"apper</w>\": 18780,\n  \"appet\": 21686,\n  \"appeti\": 24179,\n  \"appetite</w>\": 24481,\n  \"appetizer</w>\": 36065,\n  \"applau\": 24713,\n  \"applaud</w>\": 42152,\n  \"applause</w>\": 22650,\n  \"apple\": 8629,\n  \"apple</w>\": 3055,\n  \"applemusic</w>\": 21390,\n  \"apples</w>\": 14032,\n  \"appleton</w>\": 45250,\n  \"appli\": 15495,\n  \"appliance</w>\": 33677,\n  \"appliances</w>\": 22134,\n  \"applic\": 4235,\n  \"applicable</w>\": 37927,\n  \"applicants</w>\": 28035,\n  \"application</w>\": 7241,\n  \"applications</w>\": 7341,\n  \"applied</w>\": 12636,\n  \"applies</w>\": 24910,\n  \"apply</w>\": 4356,\n  \"applying</w>\": 17965,\n  \"appo\": 5433,\n  \"appoint</w>\": 36190,\n  \"appointed</w>\": 11087,\n  \"appointment</w>\": 10890,\n  \"appointments</w>\": 23439,\n  \"appoints</w>\": 25132,\n  \"apprais\": 36972,\n  \"appraisal</w>\": 46108,\n  \"appreci\": 3474,\n  \"appreciate</w>\": 6263,\n  \"appreciated</w>\": 9264,\n  \"appreciates</w>\": 36573,\n  \"appreciating</w>\": 39352,\n  \"appreciation</w>\": 9212,\n  \"appreciationday</w>\": 37438,\n  \"appreciative</w>\": 45074,\n  \"appren\": 10582,\n  \"apprentic\": 15662,\n  \"apprentice\": 19122,\n  \"apprentice</w>\": 17985,\n  \"apprentices</w>\": 38252,\n  \"apprenticeship</w>\": 26939,\n  \"apprenticeships</w>\": 35425,\n  \"appro\": 2398,\n  \"approach\": 7781,\n  \"approach</w>\": 6241,\n  \"approached</w>\": 36499,\n  \"approaches</w>\": 14962,\n  \"approaching</w>\": 12164,\n  \"appropri\": 8446,\n  \"appropriate</w>\": 10768,\n  \"appropriately</w>\": 30383,\n  \"appropriation</w>\": 49110,\n  \"approval</w>\": 13549,\n  \"approve</w>\": 19064,\n  \"approved</w>\": 9412,\n  \"approves</w>\": 18107,\n  \"approx</w>\": 18266,\n  \"approxim\": 14201,\n  \"approximately</w>\": 16128,\n  \"apps</w>\": 7020,\n  \"appstore</w>\": 31377,\n  \"appt</w>\": 48112,\n  \"appy</w>\": 34420,\n  \"apr\": 39396,\n  \"apr</w>\": 11177,\n  \"apra\": 37027,\n  \"apric\": 25923,\n  \"apricot</w>\": 30815,\n  \"april\": 23548,\n  \"april</w>\": 2484,\n  \"apro\": 42712,\n  \"apro</w>\": 49051,\n  \"apron</w>\": 29502,\n  \"aps</w>\": 8868,\n  \"apse</w>\": 31843,\n  \"apt</w>\": 17921,\n  \"aptly</w>\": 47313,\n  \"apu\": 22166,\n  \"apur\": 36900,\n  \"apur</w>\": 45193,\n  \"aq\": 14018,\n  \"aq</w>\": 26862,\n  \"aqu\": 4458,\n  \"aqua</w>\": 18613,\n  \"aquaculture</w>\": 41885,\n  \"aquaman</w>\": 35098,\n  \"aquari\": 37605,\n  \"aquarium</w>\": 16814,\n  \"aquarius</w>\": 38879,\n  \"aquatic</w>\": 22658,\n  \"aque\": 35927,\n  \"aque</w>\": 37268,\n  \"aqui\": 36826,\n  \"aquino</w>\": 33796,\n  \"ar\": 516,\n  \"ar</w>\": 625,\n  \"ara\": 24161,\n  \"ara</w>\": 3340,\n  \"arab\": 5405,\n  \"arab</w>\": 12028,\n  \"arabia</w>\": 11746,\n  \"arabian</w>\": 24663,\n  \"arabic</w>\": 16709,\n  \"arabs</w>\": 39155,\n  \"arac\": 47620,\n  \"arach\": 37689,\n  \"arag\": 41502,\n  \"araj</w>\": 45142,\n  \"arak\": 23416,\n  \"aram\": 19223,\n  \"aram</w>\": 21473,\n  \"arama</w>\": 49066,\n  \"aran\": 20839,\n  \"aran</w>\": 19641,\n  \"aras</w>\": 36399,\n  \"arat</w>\": 30856,\n  \"arav\": 35836,\n  \"arbit\": 20267,\n  \"arbitr\": 22702,\n  \"arbitration</w>\": 34845,\n  \"arbor\": 33516,\n  \"arbor</w>\": 24878,\n  \"arboretum</w>\": 41719,\n  \"arc\": 4997,\n  \"arc</w>\": 11592,\n  \"arca\": 25189,\n  \"arca</w>\": 37612,\n  \"arcade</w>\": 13331,\n  \"arcadia</w>\": 38372,\n  \"arch\": 2458,\n  \"arch</w>\": 8557,\n  \"archa\": 45619,\n  \"archae\": 10121,\n  \"archaeological</w>\": 26163,\n  \"archaeologists</w>\": 45035,\n  \"archaeology</w>\": 14868,\n  \"archan\": 33359,\n  \"archbishop</w>\": 23994,\n  \"arche\": 22474,\n  \"archer</w>\": 21824,\n  \"archers</w>\": 38407,\n  \"archery</w>\": 23935,\n  \"arches</w>\": 30771,\n  \"archi\": 4479,\n  \"archie</w>\": 20557,\n  \"archipel\": 39750,\n  \"archipelago</w>\": 43025,\n  \"architec\": 3359,\n  \"architect</w>\": 12192,\n  \"architects</w>\": 13290,\n  \"architectural</w>\": 15360,\n  \"architecture\": 39038,\n  \"architecture</w>\": 4920,\n  \"archival</w>\": 39249,\n  \"archive\": 42257,\n  \"archive</w>\": 10548,\n  \"archived</w>\": 42379,\n  \"archives</w>\": 9411,\n  \"archy</w>\": 15643,\n  \"arctic\": 29716,\n  \"arctic</w>\": 9138,\n  \"ard\": 3793,\n  \"ard</w>\": 746,\n  \"arden\": 44600,\n  \"arden</w>\": 27057,\n  \"ardi\": 23932,\n  \"ardi</w>\": 19837,\n  \"ardo\": 35735,\n  \"ardo</w>\": 9394,\n  \"ards</w>\": 1654,\n  \"ardu\": 20906,\n  \"arduino</w>\": 25398,\n  \"are\": 1076,\n  \"are</w>\": 631,\n  \"area</w>\": 2445,\n  \"areas</w>\": 5429,\n  \"arec\": 18136,\n  \"areclipse</w>\": 36030,\n  \"ared</w>\": 5369,\n  \"arel</w>\": 12798,\n  \"arella</w>\": 24784,\n  \"arelli</w>\": 48619,\n  \"aren\": 4033,\n  \"aren</w>\": 4318,\n  \"arena</w>\": 5463,\n  \"arenas</w>\": 47860,\n  \"arent</w>\": 37487,\n  \"arer</w>\": 14857,\n  \"arers</w>\": 33159,\n  \"ares</w>\": 12224,\n  \"arest</w>\": 11708,\n  \"aret</w>\": 22247,\n  \"areth</w>\": 47725,\n  \"aretha</w>\": 42090,\n  \"areyou\": 37607,\n  \"arez</w>\": 13108,\n  \"arg</w>\": 27285,\n  \"argent\": 7812,\n  \"argentina</w>\": 9789,\n  \"argentine</w>\": 32582,\n  \"argon\": 40737,\n  \"argos</w>\": 37443,\n  \"argu\": 7440,\n  \"arguably</w>\": 30899,\n  \"argue</w>\": 19788,\n  \"argued</w>\": 48153,\n  \"argues</w>\": 30045,\n  \"arguing</w>\": 26549,\n  \"argument</w>\": 16224,\n  \"arguments</w>\": 24693,\n  \"argus</w>\": 44300,\n  \"argy\": 21066,\n  \"argyle</w>\": 36179,\n  \"argyll</w>\": 40667,\n  \"ari\": 1221,\n  \"ari</w>\": 3681,\n  \"aria</w>\": 8883,\n  \"arial</w>\": 42431,\n  \"arian\": 29980,\n  \"arian</w>\": 6953,\n  \"ariana</w>\": 14892,\n  \"arianag\": 23025,\n  \"arianagrande</w>\": 23321,\n  \"arianism</w>\": 44351,\n  \"arians</w>\": 19104,\n  \"arias</w>\": 22567,\n  \"arie</w>\": 18774,\n  \"ariel\": 47959,\n  \"ariel</w>\": 21025,\n  \"aries</w>\": 5213,\n  \"arif</w>\": 46621,\n  \"arily</w>\": 12993,\n  \"arin\": 29564,\n  \"arin</w>\": 18612,\n  \"arina</w>\": 29271,\n  \"arine</w>\": 29586,\n  \"aring</w>\": 2142,\n  \"ario</w>\": 8862,\n  \"arios</w>\": 25392,\n  \"aris</w>\": 15227,\n  \"arise</w>\": 26490,\n  \"arist</w>\": 12110,\n  \"aristo\": 25666,\n  \"aristotle</w>\": 49156,\n  \"arities</w>\": 31069,\n  \"arity</w>\": 16608,\n  \"arium</w>\": 11809,\n  \"arius</w>\": 21482,\n  \"ariz\": 6516,\n  \"arized</w>\": 40167,\n  \"arizon\": 28936,\n  \"arizona</w>\": 7106,\n  \"arjun\": 24565,\n  \"arjun</w>\": 20477,\n  \"arjuna</w>\": 43835,\n  \"ark\": 11921,\n  \"ark</w>\": 12010,\n  \"arkansas</w>\": 12227,\n  \"arkham</w>\": 36381,\n  \"arl</w>\": 48542,\n  \"arlington\": 44940,\n  \"arlington</w>\": 17865,\n  \"arly</w>\": 3637,\n  \"arm\": 5671,\n  \"arm</w>\": 4793,\n  \"arma\": 15887,\n  \"arma</w>\": 38716,\n  \"armad\": 37897,\n  \"armada</w>\": 34938,\n  \"armagh</w>\": 44313,\n  \"armani</w>\": 31314,\n  \"armb\": 37096,\n  \"armchair</w>\": 45757,\n  \"armed\": 40471,\n  \"armed</w>\": 8202,\n  \"armen\": 13145,\n  \"armenia</w>\": 22008,\n  \"armenian</w>\": 24891,\n  \"armies</w>\": 46686,\n  \"armin\": 45481,\n  \"arming</w>\": 19766,\n  \"armist\": 38150,\n  \"armistice</w>\": 46765,\n  \"armor</w>\": 16167,\n  \"armored</w>\": 28214,\n  \"armory</w>\": 38610,\n  \"armour</w>\": 18503,\n  \"armoured</w>\": 42514,\n  \"arms</w>\": 5706,\n  \"armstrong</w>\": 15005,\n  \"army\": 13541,\n  \"army</w>\": 3133,\n  \"armys</w>\": 27311,\n  \"arn\": 9348,\n  \"arn</w>\": 37597,\n  \"arnau\": 45556,\n  \"arne</w>\": 43509,\n  \"arney</w>\": 35962,\n  \"arnold\": 49096,\n  \"arnold</w>\": 13609,\n  \"arns</w>\": 46692,\n  \"aro\": 7514,\n  \"aro</w>\": 11551,\n  \"aroa</w>\": 48209,\n  \"arom\": 16831,\n  \"aroma\": 40143,\n  \"aroma</w>\": 26390,\n  \"aromas</w>\": 47439,\n  \"aromatherapy</w>\": 42584,\n  \"aromatic</w>\": 39669,\n  \"aron\": 30855,\n  \"aron</w>\": 28926,\n  \"aroo</w>\": 47581,\n  \"arora</w>\": 31897,\n  \"arosa</w>\": 44264,\n  \"arose</w>\": 44262,\n  \"around\": 35615,\n  \"around</w>\": 1630,\n  \"arqu\": 35654,\n  \"arquitec\": 41703,\n  \"arr\": 39106,\n  \"arr</w>\": 42489,\n  \"arra\": 32918,\n  \"arra</w>\": 43827,\n  \"arrahman</w>\": 44554,\n  \"arran</w>\": 45722,\n  \"arrang\": 16711,\n  \"arrange\": 15410,\n  \"arrange</w>\": 26311,\n  \"arranged</w>\": 22451,\n  \"arrangement</w>\": 23822,\n  \"arrangements</w>\": 23792,\n  \"arranging</w>\": 35321,\n  \"array</w>\": 17293,\n  \"arre\": 4374,\n  \"arrell</w>\": 28846,\n  \"arrest</w>\": 9320,\n  \"arrested</w>\": 5845,\n  \"arresting</w>\": 43930,\n  \"arrests</w>\": 20683,\n  \"arri\": 2115,\n  \"arrival</w>\": 9073,\n  \"arrivals</w>\": 19583,\n  \"arrive</w>\": 8851,\n  \"arrived</w>\": 3514,\n  \"arrives</w>\": 9905,\n  \"arriving</w>\": 10884,\n  \"arro\": 15729,\n  \"arrog\": 26997,\n  \"arrogance</w>\": 47025,\n  \"arrogant</w>\": 40582,\n  \"arrow\": 30920,\n  \"arrow</w>\": 11149,\n  \"arrowhead</w>\": 46393,\n  \"arrows</w>\": 24768,\n  \"arroyo</w>\": 45237,\n  \"ars\": 42815,\n  \"ars</w>\": 864,\n  \"arse</w>\": 22665,\n  \"arsen\": 5330,\n  \"arsenal\": 45234,\n  \"arsenal</w>\": 6084,\n  \"arsene</w>\": 32117,\n  \"arson</w>\": 29937,\n  \"art\": 1486,\n  \"art</w>\": 794,\n  \"arta</w>\": 12031,\n  \"arte\": 13482,\n  \"arte</w>\": 12947,\n  \"artem\": 40387,\n  \"artemis</w>\": 45256,\n  \"arten</w>\": 37043,\n  \"arter\": 29449,\n  \"artery</w>\": 40062,\n  \"artes</w>\": 48629,\n  \"artforsale</w>\": 48239,\n  \"artgallery</w>\": 31982,\n  \"arth\": 7146,\n  \"arth</w>\": 20265,\n  \"arthistory</w>\": 39313,\n  \"arthr\": 20807,\n  \"arthritis</w>\": 22916,\n  \"arthro\": 43255,\n  \"arthur\": 35660,\n  \"arthur</w>\": 8550,\n  \"arti\": 1635,\n  \"arti</w>\": 34601,\n  \"artic\": 3003,\n  \"articho\": 30937,\n  \"artichoke</w>\": 39647,\n  \"article</w>\": 3550,\n  \"articles</w>\": 11939,\n  \"articul\": 40343,\n  \"articulate</w>\": 45444,\n  \"artif\": 8950,\n  \"artifact</w>\": 37718,\n  \"artifacts</w>\": 30249,\n  \"artificial\": 19357,\n  \"artificial</w>\": 12040,\n  \"artificialintelligence</w>\": 20799,\n  \"artillery</w>\": 24465,\n  \"artin\": 33168,\n  \"artin</w>\": 48540,\n  \"artis</w>\": 41794,\n  \"artisan\": 36389,\n  \"artisan</w>\": 21535,\n  \"artisans</w>\": 40140,\n  \"artist\": 14326,\n  \"artist</w>\": 2456,\n  \"artiste</w>\": 41402,\n  \"artistic</w>\": 12421,\n  \"artiston\": 48443,\n  \"artistry</w>\": 38570,\n  \"artists</w>\": 4899,\n  \"artistson\": 32127,\n  \"artistsontwitter</w>\": 39469,\n  \"artlovers</w>\": 35617,\n  \"arto\": 28464,\n  \"artof\": 31751,\n  \"artoftheday</w>\": 43990,\n  \"arton</w>\": 46744,\n  \"arts\": 22040,\n  \"arts</w>\": 3812,\n  \"artsy</w>\": 31588,\n  \"arturo</w>\": 38591,\n  \"artwit</w>\": 36713,\n  \"artwork</w>\": 4188,\n  \"artworks</w>\": 26215,\n  \"arty\": 45417,\n  \"arty</w>\": 25916,\n  \"aru\": 13757,\n  \"aru</w>\": 23907,\n  \"aruba</w>\": 40131,\n  \"arugula</w>\": 40770,\n  \"arum</w>\": 48732,\n  \"arun\": 16105,\n  \"arun</w>\": 31877,\n  \"arunach\": 47260,\n  \"arunjaitley</w>\": 44874,\n  \"arus</w>\": 22644,\n  \"arvin\": 16971,\n  \"arvind\": 21209,\n  \"arvind</w>\": 41079,\n  \"arvindkejriwal</w>\": 22971,\n  \"arvo</w>\": 45726,\n  \"arwx</w>\": 29824,\n  \"ary\": 4617,\n  \"ary</w>\": 856,\n  \"arya</w>\": 23594,\n  \"aryan</w>\": 34966,\n  \"as\": 587,\n  \"as</w>\": 601,\n  \"asa\": 39676,\n  \"asa</w>\": 11914,\n  \"asad</w>\": 42376,\n  \"asaki</w>\": 22455,\n  \"asam\": 40603,\n  \"asan\": 22379,\n  \"asan</w>\": 17841,\n  \"asana</w>\": 42363,\n  \"asant</w>\": 25536,\n  \"asants</w>\": 37766,\n  \"asap\": 24199,\n  \"asap</w>\": 10822,\n  \"asar\": 24733,\n  \"asar</w>\": 49299,\n  \"asb</w>\": 31186,\n  \"asbe\": 32113,\n  \"asbestos</w>\": 33765,\n  \"asc\": 22720,\n  \"asc</w>\": 23305,\n  \"ascen\": 20767,\n  \"ascension</w>\": 35499,\n  \"ascent</w>\": 36625,\n  \"asci\": 12753,\n  \"asco\": 25578,\n  \"asco</w>\": 17488,\n  \"ascot</w>\": 23723,\n  \"ascri\": 15506,\n  \"asd</w>\": 36988,\n  \"asda</w>\": 29391,\n  \"asdf\": 36857,\n  \"asdfghj\": 42758,\n  \"asdfghjkl</w>\": 47660,\n  \"ase\": 8083,\n  \"ase</w>\": 894,\n  \"asean</w>\": 24472,\n  \"aseball</w>\": 46903,\n  \"ased</w>\": 2134,\n  \"asen\": 41085,\n  \"aser\": 39615,\n  \"aser</w>\": 7209,\n  \"ases</w>\": 3762,\n  \"asf</w>\": 25863,\n  \"asg</w>\": 34813,\n  \"ash\": 2067,\n  \"ash</w>\": 2612,\n  \"asha\": 40572,\n  \"asha</w>\": 13472,\n  \"ashamed</w>\": 20633,\n  \"ashby</w>\": 46531,\n  \"ashe\": 48523,\n  \"ashe</w>\": 31752,\n  \"asher</w>\": 37585,\n  \"ashes</w>\": 12587,\n  \"asheville</w>\": 28897,\n  \"ashford</w>\": 37796,\n  \"ashi\": 15563,\n  \"ashi</w>\": 15934,\n  \"ashish</w>\": 33145,\n  \"ashland</w>\": 39938,\n  \"ashleigh</w>\": 49356,\n  \"ashley\": 17825,\n  \"ashley</w>\": 8957,\n  \"asho\": 20273,\n  \"ashok</w>\": 38141,\n  \"ashore</w>\": 31194,\n  \"ashram</w>\": 43445,\n  \"ashton\": 43264,\n  \"ashton</w>\": 12228,\n  \"ashtra</w>\": 18118,\n  \"asi\": 3596,\n  \"asi</w>\": 12562,\n  \"asia</w>\": 5741,\n  \"asian\": 21737,\n  \"asian</w>\": 7128,\n  \"asiangames</w>\": 49108,\n  \"asians</w>\": 36771,\n  \"asics</w>\": 31097,\n  \"aside</w>\": 13676,\n  \"asif</w>\": 37302,\n  \"asim</w>\": 46050,\n  \"asin\": 48432,\n  \"asin</w>\": 44347,\n  \"asing</w>\": 4194,\n  \"asingly</w>\": 15803,\n  \"asion</w>\": 31753,\n  \"asis</w>\": 12398,\n  \"ask\": 11027,\n  \"ask</w>\": 2765,\n  \"asked</w>\": 3993,\n  \"asking</w>\": 5914,\n  \"asks</w>\": 7953,\n  \"asl</w>\": 41650,\n  \"asleep</w>\": 10749,\n  \"asley</w>\": 28206,\n  \"asli</w>\": 44290,\n  \"asm</w>\": 13851,\n  \"asma</w>\": 38497,\n  \"asmsg</w>\": 19839,\n  \"aso\": 30343,\n  \"aso</w>\": 27932,\n  \"asober\": 43749,\n  \"asocial</w>\": 48557,\n  \"ason</w>\": 1163,\n  \"asone</w>\": 31249,\n  \"asons</w>\": 4249,\n  \"asos</w>\": 37924,\n  \"asot</w>\": 47968,\n  \"asp\": 17814,\n  \"asp</w>\": 36666,\n  \"asparag\": 20301,\n  \"asparagus</w>\": 20604,\n  \"aspe\": 10894,\n  \"aspect</w>\": 19681,\n  \"aspects</w>\": 18203,\n  \"aspen\": 35695,\n  \"aspen</w>\": 25712,\n  \"asper\": 32991,\n  \"asph\": 28019,\n  \"asphalt</w>\": 30574,\n  \"aspir\": 12669,\n  \"aspirations</w>\": 36127,\n  \"aspire</w>\": 24836,\n  \"aspiring</w>\": 21862,\n  \"asports</w>\": 43695,\n  \"asr</w>\": 48052,\n  \"asroma</w>\": 41000,\n  \"ass\": 12664,\n  \"ass</w>\": 5301,\n  \"assa</w>\": 47715,\n  \"assad</w>\": 18699,\n  \"assam</w>\": 19930,\n  \"assan\": 26352,\n  \"assange</w>\": 27565,\n  \"assas\": 9603,\n  \"assassin\": 14366,\n  \"assassin</w>\": 20029,\n  \"assassinated</w>\": 40488,\n  \"assassination</w>\": 24907,\n  \"assassins</w>\": 34918,\n  \"assassinscre\": 36428,\n  \"assassinscreed</w>\": 46082,\n  \"assau\": 7908,\n  \"assaul\": 19596,\n  \"assault</w>\": 9679,\n  \"assaulted</w>\": 30785,\n  \"assaulting</w>\": 44143,\n  \"asse\": 3166,\n  \"asse</w>\": 38600,\n  \"assel</w>\": 37582,\n  \"assemb\": 5531,\n  \"assemble</w>\": 26169,\n  \"assembled</w>\": 22627,\n  \"assemblies</w>\": 47406,\n  \"assembling</w>\": 38670,\n  \"assembly\": 34542,\n  \"assembly</w>\": 7059,\n  \"assen</w>\": 38651,\n  \"asser\": 25665,\n  \"asses</w>\": 21596,\n  \"assess\": 9209,\n  \"assess</w>\": 23211,\n  \"assessed</w>\": 44160,\n  \"assessing</w>\": 31364,\n  \"assessment</w>\": 10590,\n  \"assessments</w>\": 32753,\n  \"asset\": 48463,\n  \"asset</w>\": 13039,\n  \"assets</w>\": 13170,\n  \"assi\": 2907,\n  \"assi</w>\": 39540,\n  \"assie</w>\": 31624,\n  \"assign\": 14190,\n  \"assigned</w>\": 25767,\n  \"assignment</w>\": 17342,\n  \"assignments</w>\": 34257,\n  \"assim</w>\": 36394,\n  \"assimil\": 43467,\n  \"assist\": 26558,\n  \"assist</w>\": 10286,\n  \"assistance</w>\": 11685,\n  \"assistant</w>\": 6799,\n  \"assistants</w>\": 31054,\n  \"assisted</w>\": 18095,\n  \"assisting</w>\": 24243,\n  \"assists</w>\": 12675,\n  \"assn</w>\": 44208,\n  \"asso</w>\": 17617,\n  \"assoc</w>\": 18891,\n  \"associ\": 3566,\n  \"associate</w>\": 11777,\n  \"associated</w>\": 11164,\n  \"associates</w>\": 17358,\n  \"association</w>\": 5578,\n  \"associations</w>\": 33209,\n  \"assor\": 38604,\n  \"assorted</w>\": 36701,\n  \"assortment</w>\": 43112,\n  \"asst</w>\": 24767,\n  \"assu\": 8328,\n  \"assume</w>\": 19294,\n  \"assumed</w>\": 37661,\n  \"assuming</w>\": 29422,\n  \"assump\": 41182,\n  \"assumption</w>\": 40773,\n  \"assumptions</w>\": 45948,\n  \"assurance</w>\": 28408,\n  \"assure</w>\": 39161,\n  \"assured</w>\": 25591,\n  \"assures</w>\": 41988,\n  \"assy\": 29940,\n  \"assy</w>\": 12963,\n  \"ast\": 1761,\n  \"ast</w>\": 1242,\n  \"asta</w>\": 43269,\n  \"aste\": 25033,\n  \"aste</w>\": 25579,\n  \"aster\": 11013,\n  \"aster</w>\": 9526,\n  \"asteroid</w>\": 32253,\n  \"asters</w>\": 33139,\n  \"asth\": 16684,\n  \"asthma</w>\": 24610,\n  \"asthour</w>\": 41238,\n  \"astic</w>\": 15876,\n  \"asting</w>\": 29984,\n  \"astle</w>\": 46141,\n  \"asto\": 47275,\n  \"aston\": 24760,\n  \"aston</w>\": 13879,\n  \"astoni\": 21962,\n  \"astonishing</w>\": 27110,\n  \"astonmartin</w>\": 40760,\n  \"astor\": 26391,\n  \"astor</w>\": 47086,\n  \"astoria</w>\": 34798,\n  \"astounding</w>\": 37748,\n  \"astr\": 37609,\n  \"astra\": 47205,\n  \"astra</w>\": 36079,\n  \"astral</w>\": 45889,\n  \"astri\": 31243,\n  \"astrid</w>\": 46499,\n  \"astro\": 8563,\n  \"astro</w>\": 15318,\n  \"astrology</w>\": 28526,\n  \"astron\": 7982,\n  \"astronaut</w>\": 18376,\n  \"astronauts</w>\": 29733,\n  \"astronom\": 23264,\n  \"astronomer</w>\": 40036,\n  \"astronomers</w>\": 44268,\n  \"astronomical</w>\": 39775,\n  \"astronomy</w>\": 17472,\n  \"astrophotography</w>\": 38559,\n  \"astros</w>\": 17598,\n  \"asts</w>\": 10452,\n  \"astu\": 43137,\n  \"astur\": 45795,\n  \"asu\": 13157,\n  \"asu</w>\": 16001,\n  \"asun\": 36044,\n  \"asure</w>\": 3813,\n  \"asus</w>\": 27269,\n  \"aswell</w>\": 42978,\n  \"asx</w>\": 38906,\n  \"asy\": 8524,\n  \"asy</w>\": 2333,\n  \"asylum</w>\": 15638,\n  \"asym\": 32539,\n  \"at\": 527,\n  \"at</w>\": 536,\n  \"ata</w>\": 4236,\n  \"atable</w>\": 23909,\n  \"atal\": 24877,\n  \"atal</w>\": 24797,\n  \"atan</w>\": 33446,\n  \"atar\": 20128,\n  \"atar</w>\": 7995,\n  \"atari</w>\": 21549,\n  \"atas</w>\": 30057,\n  \"atay\": 39518,\n  \"atc</w>\": 28383,\n  \"atch</w>\": 15938,\n  \"atd</w>\": 33890,\n  \"ate\": 992,\n  \"ate</w>\": 671,\n  \"ateam</w>\": 42784,\n  \"ateau</w>\": 16359,\n  \"atec\": 37352,\n  \"atech</w>\": 31306,\n  \"ated\": 14589,\n  \"ated</w>\": 943,\n  \"atedly</w>\": 24698,\n  \"atee</w>\": 32839,\n  \"ateful</w>\": 5419,\n  \"atelier</w>\": 29932,\n  \"ately</w>\": 3862,\n  \"atem\": 17116,\n  \"aten</w>\": 47984,\n  \"atene\": 30405,\n  \"ateneo</w>\": 33904,\n  \"ater\": 18597,\n  \"ater</w>\": 5877,\n  \"ateral</w>\": 18819,\n  \"aters</w>\": 22364,\n  \"ates\": 20370,\n  \"ates</w>\": 1150,\n  \"atest</w>\": 1705,\n  \"ateur</w>\": 43677,\n  \"atf</w>\": 28013,\n  \"ath\": 1374,\n  \"ath</w>\": 1649,\n  \"atha</w>\": 22530,\n  \"atham</w>\": 23383,\n  \"athan\": 41260,\n  \"athan</w>\": 26701,\n  \"athe\": 8963,\n  \"athed</w>\": 47402,\n  \"atheism</w>\": 25823,\n  \"atheist</w>\": 22571,\n  \"atheists</w>\": 47155,\n  \"athen\": 29112,\n  \"athena</w>\": 30705,\n  \"athens</w>\": 13524,\n  \"ather\": 6171,\n  \"ather</w>\": 1817,\n  \"athered</w>\": 34091,\n  \"athers</w>\": 17266,\n  \"athi</w>\": 28918,\n  \"athing</w>\": 36069,\n  \"athle\": 3310,\n  \"athlete</w>\": 7388,\n  \"athletes</w>\": 7125,\n  \"athletic\": 33182,\n  \"athletic</w>\": 9028,\n  \"athletics</w>\": 7019,\n  \"athlon</w>\": 14670,\n  \"athome</w>\": 38217,\n  \"athon</w>\": 4951,\n  \"aths</w>\": 28835,\n  \"athy\": 34488,\n  \"athy</w>\": 13183,\n  \"ati\": 591,\n  \"ati</w>\": 6751,\n  \"atia</w>\": 10908,\n  \"atic\": 20248,\n  \"atic</w>\": 2647,\n  \"atically</w>\": 13558,\n  \"atics</w>\": 15666,\n  \"atie</w>\": 30137,\n  \"aties</w>\": 40060,\n  \"atif</w>\": 41592,\n  \"atiku</w>\": 37912,\n  \"atile</w>\": 15474,\n  \"atility</w>\": 23373,\n  \"atime</w>\": 20158,\n  \"atin\": 36903,\n  \"atin</w>\": 23047,\n  \"atine</w>\": 39741,\n  \"ating\": 25653,\n  \"ating</w>\": 1074,\n  \"atio</w>\": 35401,\n  \"ation\": 2265,\n  \"ation</w>\": 656,\n  \"ational\": 14205,\n  \"ational</w>\": 3108,\n  \"ationals</w>\": 44593,\n  \"ationday</w>\": 20082,\n  \"ations</w>\": 986,\n  \"atis\": 45456,\n  \"atis</w>\": 41142,\n  \"atism</w>\": 45638,\n  \"ative\": 18422,\n  \"ative</w>\": 1648,\n  \"atively</w>\": 11929,\n  \"atives</w>\": 5629,\n  \"ativity</w>\": 25166,\n  \"atkins</w>\": 27734,\n  \"atkinson</w>\": 28908,\n  \"atl\": 5411,\n  \"atl</w>\": 10629,\n  \"atla\": 36043,\n  \"atlan\": 6818,\n  \"atlanta\": 39964,\n  \"atlanta</w>\": 6839,\n  \"atlantic\": 28804,\n  \"atlantic</w>\": 8189,\n  \"atlantis</w>\": 27790,\n  \"atlas</w>\": 15775,\n  \"atle\": 21170,\n  \"atleast</w>\": 33231,\n  \"atleti</w>\": 46067,\n  \"atletico</w>\": 27501,\n  \"atm</w>\": 14127,\n  \"atmo\": 8271,\n  \"atmosphere</w>\": 10506,\n  \"atmospheric</w>\": 24223,\n  \"ato\": 7987,\n  \"ato</w>\": 4364,\n  \"atoday</w>\": 26799,\n  \"atom\": 22418,\n  \"atom</w>\": 24031,\n  \"atomic</w>\": 18996,\n  \"atoms</w>\": 41434,\n  \"aton\": 31525,\n  \"aton</w>\": 10012,\n  \"atop</w>\": 17455,\n  \"ator\": 10748,\n  \"ator</w>\": 1962,\n  \"atore</w>\": 28314,\n  \"atorial</w>\": 32040,\n  \"atories</w>\": 35678,\n  \"atorium</w>\": 41306,\n  \"ators</w>\": 3389,\n  \"atory</w>\": 5920,\n  \"atos</w>\": 41643,\n  \"atour</w>\": 42967,\n  \"atown</w>\": 24000,\n  \"atp\": 38105,\n  \"atp</w>\": 19817,\n  \"atr</w>\": 43247,\n  \"atra\": 20227,\n  \"atra</w>\": 14401,\n  \"atravel</w>\": 36981,\n  \"atre\": 46057,\n  \"atri\": 13882,\n  \"atri</w>\": 38889,\n  \"atric\": 32238,\n  \"atric</w>\": 13652,\n  \"atrics</w>\": 36253,\n  \"atrist</w>\": 41879,\n  \"atrium</w>\": 29725,\n  \"atrix</w>\": 43003,\n  \"atro\": 18724,\n  \"atroc\": 36197,\n  \"atrocities</w>\": 37551,\n  \"atry</w>\": 28334,\n  \"ats\": 46890,\n  \"ats</w>\": 1032,\n  \"atsu</w>\": 26531,\n  \"att\": 1017,\n  \"att</w>\": 7103,\n  \"atta\": 7282,\n  \"atta</w>\": 9146,\n  \"attach\": 43676,\n  \"attach</w>\": 35653,\n  \"attached</w>\": 11038,\n  \"attachment</w>\": 28638,\n  \"attack\": 24971,\n  \"attack</w>\": 3815,\n  \"attacked</w>\": 12366,\n  \"attacker</w>\": 39288,\n  \"attackers</w>\": 47701,\n  \"attacking</w>\": 16813,\n  \"attacks</w>\": 7321,\n  \"attain</w>\": 46459,\n  \"attar</w>\": 37110,\n  \"attemp\": 4933,\n  \"attempt</w>\": 7409,\n  \"attempted</w>\": 17408,\n  \"attempting</w>\": 18195,\n  \"attempts</w>\": 15610,\n  \"atten\": 4084,\n  \"atten</w>\": 32408,\n  \"attenborough</w>\": 45860,\n  \"attend\": 9841,\n  \"attend</w>\": 5802,\n  \"attendance</w>\": 11928,\n  \"attendant</w>\": 35424,\n  \"attended</w>\": 8140,\n  \"attendees</w>\": 14648,\n  \"attending</w>\": 6696,\n  \"attends</w>\": 22248,\n  \"attention</w>\": 4936,\n  \"atters</w>\": 30675,\n  \"atthe\": 21489,\n  \"atti\": 49265,\n  \"atti</w>\": 16235,\n  \"attic</w>\": 26766,\n  \"attire</w>\": 21222,\n  \"attitude</w>\": 10648,\n  \"attitudes</w>\": 27611,\n  \"attle\": 14685,\n  \"attle</w>\": 5030,\n  \"attn</w>\": 25677,\n  \"attor\": 8856,\n  \"attorney</w>\": 10372,\n  \"attorneys</w>\": 29113,\n  \"attrac\": 7154,\n  \"attract</w>\": 17010,\n  \"attracted</w>\": 28493,\n  \"attracting</w>\": 31909,\n  \"attraction</w>\": 16807,\n  \"attractions</w>\": 22307,\n  \"attractive</w>\": 12231,\n  \"attracts</w>\": 31024,\n  \"attribu\": 24624,\n  \"attributed</w>\": 37520,\n  \"attributes</w>\": 40763,\n  \"attu</w>\": 43173,\n  \"atty</w>\": 36705,\n  \"atu\": 15191,\n  \"atu</w>\": 24295,\n  \"atuesday</w>\": 34841,\n  \"atul\": 1744,\n  \"atul</w>\": 43948,\n  \"atum</w>\": 48295,\n  \"atur\": 14986,\n  \"aturday</w>\": 29027,\n  \"ature\": 25305,\n  \"ature</w>\": 4490,\n  \"atures</w>\": 7358,\n  \"atus</w>\": 14795,\n  \"atv</w>\": 19598,\n  \"atwood</w>\": 45680,\n  \"atwork</w>\": 39680,\n  \"atx\": 34849,\n  \"atx</w>\": 20136,\n  \"aty\": 40974,\n  \"aty</w>\": 33107,\n  \"atz</w>\": 30432,\n  \"au\": 627,\n  \"au</w>\": 2566,\n  \"aua</w>\": 45906,\n  \"aub</w>\": 45938,\n  \"auberg\": 49382,\n  \"aubre\": 25899,\n  \"aubrey</w>\": 34110,\n  \"auburn\": 42269,\n  \"auburn</w>\": 14534,\n  \"auc\": 24489,\n  \"auch</w>\": 43024,\n  \"auck\": 14588,\n  \"auckland</w>\": 16072,\n  \"auction\": 48160,\n  \"auction</w>\": 6462,\n  \"auctioned</w>\": 41073,\n  \"auctions</w>\": 24876,\n  \"aucus</w>\": 47374,\n  \"aud\": 16107,\n  \"aud</w>\": 19711,\n  \"audi\": 5091,\n  \"audi</w>\": 10277,\n  \"audible</w>\": 33227,\n  \"audience</w>\": 6863,\n  \"audiences</w>\": 22328,\n  \"audio\": 13792,\n  \"audio</w>\": 5766,\n  \"audiobook</w>\": 26282,\n  \"audit\": 12505,\n  \"audit</w>\": 17625,\n  \"auditi\": 37377,\n  \"audition</w>\": 18673,\n  \"auditions</w>\": 21134,\n  \"auditor</w>\": 38050,\n  \"auditorium</w>\": 15063,\n  \"audre\": 16075,\n  \"audrey</w>\": 18812,\n  \"audu\": 27934,\n  \"audubon</w>\": 40275,\n  \"auer</w>\": 33460,\n  \"auf</w>\": 28924,\n  \"aug\": 15397,\n  \"aug</w>\": 5720,\n  \"auga</w>\": 22797,\n  \"augh\": 28310,\n  \"augh</w>\": 14005,\n  \"augmente\": 48356,\n  \"augmented</w>\": 32708,\n  \"augu\": 2610,\n  \"august\": 24353,\n  \"august</w>\": 3171,\n  \"augusta</w>\": 26144,\n  \"augustine</w>\": 27397,\n  \"augustus</w>\": 36835,\n  \"auk</w>\": 19058,\n  \"aul\": 20695,\n  \"aul</w>\": 34391,\n  \"ault\": 47253,\n  \"ault</w>\": 10219,\n  \"aun\": 10608,\n  \"aun</w>\": 38721,\n  \"aunt</w>\": 12685,\n  \"auntie</w>\": 23783,\n  \"aunty</w>\": 29528,\n  \"aur\": 8156,\n  \"aur</w>\": 17282,\n  \"aura</w>\": 27728,\n  \"aure\": 36010,\n  \"aureli\": 35980,\n  \"auror\": 30067,\n  \"aurora</w>\": 13500,\n  \"aus\": 10624,\n  \"aus</w>\": 7630,\n  \"ausa</w>\": 37384,\n  \"ausbiz</w>\": 46543,\n  \"ausch\": 33926,\n  \"auschwitz</w>\": 36523,\n  \"ausopen</w>\": 27831,\n  \"ausp\": 35039,\n  \"auspicious</w>\": 38806,\n  \"auspol</w>\": 8241,\n  \"aussi\": 19762,\n  \"aussie\": 40230,\n  \"aussie</w>\": 14424,\n  \"aussies</w>\": 35727,\n  \"aust\": 26301,\n  \"aust</w>\": 25418,\n  \"austen</w>\": 29885,\n  \"auster\": 25030,\n  \"austerity</w>\": 26982,\n  \"austin\": 12845,\n  \"austin</w>\": 5125,\n  \"austinmahone</w>\": 34678,\n  \"austr\": 2518,\n  \"australi\": 13798,\n  \"australia</w>\": 3444,\n  \"australian\": 23630,\n  \"australian</w>\": 6258,\n  \"australians</w>\": 31488,\n  \"austri\": 8946,\n  \"austria</w>\": 11960,\n  \"austrian</w>\": 20638,\n  \"ausv\": 35206,\n  \"ausvotes</w>\": 34661,\n  \"aut</w>\": 12343,\n  \"auth\": 2381,\n  \"auth</w>\": 38247,\n  \"authent\": 18158,\n  \"authentic\": 41266,\n  \"authentic</w>\": 10369,\n  \"authentication</w>\": 39746,\n  \"authenticity</w>\": 35734,\n  \"autho\": 34552,\n  \"author\": 14447,\n  \"author</w>\": 4358,\n  \"authored</w>\": 37928,\n  \"authori\": 19207,\n  \"authorities</w>\": 12729,\n  \"authority</w>\": 10524,\n  \"authorization</w>\": 48854,\n  \"authorized</w>\": 28463,\n  \"authors</w>\": 10765,\n  \"auti\": 8200,\n  \"autism\": 36256,\n  \"autism</w>\": 11244,\n  \"autisma\": 43324,\n  \"autistic</w>\": 29360,\n  \"auto\": 3917,\n  \"auto</w>\": 5668,\n  \"autobiography</w>\": 31509,\n  \"autodesk</w>\": 40415,\n  \"autograph\": 10657,\n  \"autograph</w>\": 13722,\n  \"autographed</w>\": 16309,\n  \"autographs</w>\": 17376,\n  \"autoimmune</w>\": 45509,\n  \"autom\": 4114,\n  \"automate</w>\": 43203,\n  \"automated</w>\": 19022,\n  \"automatic</w>\": 12126,\n  \"automatically</w>\": 20725,\n  \"automation</w>\": 12328,\n  \"automobi\": 44813,\n  \"automobile</w>\": 25258,\n  \"automotive</w>\": 12607,\n  \"auton\": 13100,\n  \"autonews</w>\": 43975,\n  \"autonom\": 17870,\n  \"autonomous</w>\": 20722,\n  \"autonomy</w>\": 39223,\n  \"autopsy</w>\": 44436,\n  \"autos</w>\": 31118,\n  \"autoshow</w>\": 46788,\n  \"auts</w>\": 21140,\n  \"autu\": 5445,\n  \"autum\": 31783,\n  \"autumn\": 28940,\n  \"autumn</w>\": 6110,\n  \"autumnal</w>\": 35481,\n  \"aux\": 18154,\n  \"aux</w>\": 8909,\n  \"auxiliary</w>\": 37778,\n  \"av\": 722,\n  \"av</w>\": 8484,\n  \"ava</w>\": 12385,\n  \"avage</w>\": 31505,\n  \"avail\": 1651,\n  \"avail</w>\": 16686,\n  \"availability</w>\": 17551,\n  \"available</w>\": 1685,\n  \"aval\": 18012,\n  \"avalan\": 23970,\n  \"avalanche</w>\": 25815,\n  \"avalley</w>\": 45082,\n  \"avalon</w>\": 30436,\n  \"avan\": 27971,\n  \"avan</w>\": 33351,\n  \"avant</w>\": 24305,\n  \"avar\": 33423,\n  \"avatar</w>\": 18219,\n  \"ave\": 10062,\n  \"ave</w>\": 4860,\n  \"avec</w>\": 25828,\n  \"aved</w>\": 47918,\n  \"avel\": 46817,\n  \"avel</w>\": 48088,\n  \"aven\": 5963,\n  \"aven</w>\": 32971,\n  \"aveng\": 21935,\n  \"avenger</w>\": 24799,\n  \"avengers\": 39413,\n  \"avengers</w>\": 12016,\n  \"avengersendgame</w>\": 49342,\n  \"avent\": 22700,\n  \"avenue</w>\": 7042,\n  \"aver\": 8788,\n  \"aver</w>\": 11403,\n  \"average</w>\": 6254,\n  \"averaged</w>\": 37310,\n  \"averages</w>\": 48982,\n  \"averaging</w>\": 35266,\n  \"avery</w>\": 20313,\n  \"aves</w>\": 14023,\n  \"avfc</w>\": 21304,\n  \"avg</w>\": 19452,\n  \"avgeek</w>\": 11114,\n  \"avi\": 3324,\n  \"avi</w>\": 11297,\n  \"avia</w>\": 38710,\n  \"avian</w>\": 24115,\n  \"aviation\": 27717,\n  \"aviation</w>\": 7617,\n  \"aviator</w>\": 38921,\n  \"aviators</w>\": 48011,\n  \"avici\": 46192,\n  \"avicii</w>\": 49158,\n  \"avid</w>\": 19118,\n  \"avier</w>\": 14598,\n  \"avila</w>\": 45339,\n  \"aville</w>\": 40689,\n  \"avin\": 46204,\n  \"avis\": 45163,\n  \"avis</w>\": 19765,\n  \"aviv</w>\": 22130,\n  \"aviva</w>\": 47122,\n  \"aviz</w>\": 27607,\n  \"avl\": 44749,\n  \"avo\": 4496,\n  \"avo</w>\": 32400,\n  \"avoc\": 12291,\n  \"avocado</w>\": 14135,\n  \"avocados</w>\": 48911,\n  \"avoi\": 16797,\n  \"avoid\": 30448,\n  \"avoid</w>\": 5983,\n  \"avoidance</w>\": 47983,\n  \"avoided</w>\": 32103,\n  \"avoiding</w>\": 22086,\n  \"avoids</w>\": 48220,\n  \"avon\": 22790,\n  \"avon</w>\": 17348,\n  \"avril</w>\": 37763,\n  \"avs</w>\": 31896,\n  \"avut</w>\": 44472,\n  \"avy</w>\": 29973,\n  \"aw\": 808,\n  \"aw</w>\": 5557,\n  \"awa\": 4820,\n  \"awa</w>\": 6872,\n  \"await</w>\": 20769,\n  \"awaited</w>\": 20092,\n  \"awaiting</w>\": 14872,\n  \"awaits</w>\": 15635,\n  \"awak\": 9776,\n  \"awak</w>\": 41387,\n  \"awake</w>\": 14695,\n  \"awaken</w>\": 35412,\n  \"awakening</w>\": 17017,\n  \"awakens</w>\": 23191,\n  \"awal\": 42447,\n  \"awal</w>\": 35090,\n  \"awan\": 48869,\n  \"awan</w>\": 20420,\n  \"awar\": 5745,\n  \"award\": 36310,\n  \"award</w>\": 2047,\n  \"awarded</w>\": 7368,\n  \"awarding</w>\": 37089,\n  \"awards\": 34528,\n  \"awards</w>\": 2320,\n  \"aware\": 4427,\n  \"aware</w>\": 7196,\n  \"awareness\": 19217,\n  \"awareness</w>\": 4823,\n  \"awarenessmonth</w>\": 34278,\n  \"awarenessweek</w>\": 35294,\n  \"away\": 21088,\n  \"away</w>\": 1520,\n  \"aways</w>\": 12782,\n  \"awaz</w>\": 18586,\n  \"awd</w>\": 34846,\n  \"awe\": 1693,\n  \"awe</w>\": 14106,\n  \"aweather\": 42142,\n  \"aweather</w>\": 28681,\n  \"awec</w>\": 38916,\n  \"aweed</w>\": 29724,\n  \"awesom\": 16727,\n  \"awesome\": 30390,\n  \"awesome</w>\": 1848,\n  \"awesomeness</w>\": 22430,\n  \"awful</w>\": 13617,\n  \"awg</w>\": 46350,\n  \"awgs</w>\": 35275,\n  \"awh</w>\": 39566,\n  \"awhile</w>\": 19171,\n  \"awi</w>\": 15167,\n  \"awil\": 47271,\n  \"awilliams</w>\": 42163,\n  \"awk\": 8888,\n  \"awk</w>\": 40943,\n  \"awkward\": 42337,\n  \"awkward</w>\": 10304,\n  \"awn</w>\": 46222,\n  \"awp</w>\": 43300,\n  \"aws</w>\": 19658,\n  \"awsome</w>\": 47196,\n  \"awson</w>\": 36286,\n  \"aww</w>\": 11568,\n  \"awww</w>\": 15634,\n  \"awwww</w>\": 26460,\n  \"awx</w>\": 28385,\n  \"ax\": 3165,\n  \"ax</w>\": 9203,\n  \"axe</w>\": 19861,\n  \"axel\": 47889,\n  \"axel</w>\": 32131,\n  \"axes</w>\": 45970,\n  \"axi\": 30672,\n  \"axial</w>\": 46550,\n  \"axis</w>\": 19614,\n  \"axle</w>\": 39003,\n  \"axx\": 47411,\n  \"ay\": 658,\n  \"ay</w>\": 551,\n  \"aya</w>\": 5917,\n  \"ayala</w>\": 39827,\n  \"ayama</w>\": 41194,\n  \"ayan\": 37781,\n  \"ayan</w>\": 16269,\n  \"ayana</w>\": 37400,\n  \"ayas</w>\": 40904,\n  \"ayat\": 44902,\n  \"ayat</w>\": 35720,\n  \"aye\": 21661,\n  \"aye</w>\": 12446,\n  \"ayer</w>\": 24852,\n  \"ayers</w>\": 42783,\n  \"ayesha</w>\": 46570,\n  \"ayi</w>\": 33025,\n  \"ayles\": 44706,\n  \"ayne</w>\": 35669,\n  \"ayo\": 21929,\n  \"ayo</w>\": 18708,\n  \"ayr\": 23002,\n  \"ayr</w>\": 36473,\n  \"ayrshire</w>\": 32687,\n  \"ays</w>\": 785,\n  \"ayu</w>\": 40769,\n  \"ayurve\": 27185,\n  \"ayurveda</w>\": 38986,\n  \"ayush\": 44831,\n  \"ayy</w>\": 32514,\n  \"ayyy</w>\": 41052,\n  \"az\": 854,\n  \"az</w>\": 5468,\n  \"aza</w>\": 22883,\n  \"azad</w>\": 37838,\n  \"azalea</w>\": 34087,\n  \"azam</w>\": 34727,\n  \"azar</w>\": 27911,\n  \"azcardinals</w>\": 48846,\n  \"aze\": 41157,\n  \"aze</w>\": 28485,\n  \"azer\": 19169,\n  \"azerbai\": 20649,\n  \"azerbaijan</w>\": 23888,\n  \"azhar</w>\": 47019,\n  \"azi\": 23914,\n  \"azi</w>\": 18452,\n  \"azine</w>\": 29140,\n  \"azione</w>\": 48335,\n  \"aziz\": 41205,\n  \"aziz</w>\": 29630,\n  \"azo</w>\": 41227,\n  \"azon</w>\": 36854,\n  \"azores</w>\": 42826,\n  \"azte\": 33270,\n  \"aztec</w>\": 34749,\n  \"aztecs</w>\": 49387,\n  \"azu\": 27701,\n  \"azu</w>\": 46963,\n  \"azul</w>\": 39807,\n  \"azure</w>\": 18514,\n  \"azwx</w>\": 30262,\n  \"azy</w>\": 24783,\n  \"azz\": 9817,\n  \"azz</w>\": 26453,\n  \"azza</w>\": 22255,\n  \"azzi</w>\": 18758,\n  \"azzle</w>\": 39974,\n  \"azzo</w>\": 26779,\n  \"azzur\": 37055,\n  \"azzy</w>\": 44534,\n  \"aÃ±\": 23716,\n  \"aÃ±os</w>\": 41634,\n  \"b\": 65,\n  \"b</w>\": 321,\n  \"ba\": 932,\n  \"ba</w>\": 1792,\n  \"baa</w>\": 33004,\n  \"baahu\": 34145,\n  \"baahubali</w>\": 38663,\n  \"bab\": 1202,\n  \"bab</w>\": 19039,\n  \"baba</w>\": 12631,\n  \"babe\": 31177,\n  \"babe</w>\": 7716,\n  \"babes</w>\": 14253,\n  \"babies</w>\": 6635,\n  \"babs</w>\": 36217,\n  \"babu</w>\": 21623,\n  \"baby\": 7268,\n  \"baby</w>\": 1794,\n  \"babygirl</w>\": 39554,\n  \"babylon</w>\": 31928,\n  \"babymetal</w>\": 45013,\n  \"babys\": 22266,\n  \"babysitting</w>\": 34186,\n  \"bac\": 2791,\n  \"bac</w>\": 25867,\n  \"bacca</w>\": 40708,\n  \"bach\": 11773,\n  \"bach</w>\": 8758,\n  \"bachchan</w>\": 17690,\n  \"bachel\": 11283,\n  \"bachelor\": 45508,\n  \"bachelor</w>\": 16766,\n  \"bachelore\": 26009,\n  \"bachelorette</w>\": 29093,\n  \"bacher</w>\": 49211,\n  \"back\": 1663,\n  \"back</w>\": 893,\n  \"backbone</w>\": 35635,\n  \"backdrop</w>\": 20802,\n  \"backed</w>\": 12721,\n  \"backer</w>\": 22183,\n  \"backers</w>\": 32934,\n  \"background</w>\": 5994,\n  \"backgrounds</w>\": 28215,\n  \"backing</w>\": 14935,\n  \"backlash</w>\": 31519,\n  \"backpack</w>\": 14894,\n  \"backpacking</w>\": 29524,\n  \"backpacks</w>\": 37063,\n  \"backs</w>\": 7562,\n  \"backseat</w>\": 48812,\n  \"backstage</w>\": 9236,\n  \"backstreet\": 46337,\n  \"backthe\": 26127,\n  \"backto\": 18703,\n  \"backtoschool</w>\": 28730,\n  \"backtothe\": 43059,\n  \"backup</w>\": 14415,\n  \"backward</w>\": 37964,\n  \"backwards</w>\": 21283,\n  \"backyard</w>\": 12608,\n  \"bacon\": 48666,\n  \"bacon</w>\": 7104,\n  \"bacter\": 11814,\n  \"bacteria</w>\": 16556,\n  \"bacterial</w>\": 26101,\n  \"bad\": 2564,\n  \"bad</w>\": 2103,\n  \"bada</w>\": 37475,\n  \"badan</w>\": 39149,\n  \"badass</w>\": 11616,\n  \"baddest</w>\": 38112,\n  \"baden</w>\": 36690,\n  \"bader</w>\": 42254,\n  \"badge</w>\": 11301,\n  \"badger\": 32686,\n  \"badger</w>\": 22363,\n  \"badgers</w>\": 22521,\n  \"badges</w>\": 20084,\n  \"badlands</w>\": 43192,\n  \"badly</w>\": 13684,\n  \"badminton</w>\": 21412,\n  \"badoo</w>\": 33192,\n  \"bados</w>\": 25755,\n  \"bae\": 32834,\n  \"bae</w>\": 6855,\n  \"baek\": 18557,\n  \"baek</w>\": 32702,\n  \"baekhyun</w>\": 21572,\n  \"baes</w>\": 46332,\n  \"baf\": 13616,\n  \"baff\": 35693,\n  \"bafta</w>\": 29199,\n  \"bag\": 3408,\n  \"bag</w>\": 3365,\n  \"bage</w>\": 9698,\n  \"bagel</w>\": 28777,\n  \"bagels</w>\": 37489,\n  \"baggage</w>\": 31402,\n  \"bagged</w>\": 34047,\n  \"bagh\": 21659,\n  \"bagh</w>\": 37271,\n  \"baghdad</w>\": 30763,\n  \"bago</w>\": 25105,\n  \"bags</w>\": 6136,\n  \"bagu\": 27749,\n  \"baguette</w>\": 45334,\n  \"bah\": 8372,\n  \"bah</w>\": 16685,\n  \"baha\": 29592,\n  \"baham\": 43718,\n  \"bahamas</w>\": 21224,\n  \"bahan</w>\": 28704,\n  \"bahn</w>\": 33452,\n  \"bahrain</w>\": 12503,\n  \"bai\": 6232,\n  \"bai</w>\": 23339,\n  \"bail\": 22933,\n  \"bail</w>\": 16986,\n  \"bailey\": 27535,\n  \"bailey</w>\": 10180,\n  \"bain\": 40784,\n  \"bain</w>\": 21593,\n  \"bair\": 29059,\n  \"baird</w>\": 40474,\n  \"bait</w>\": 18010,\n  \"baj\": 20713,\n  \"baja\": 40418,\n  \"baja</w>\": 28374,\n  \"bajo</w>\": 32619,\n  \"bak\": 4059,\n  \"bak</w>\": 23742,\n  \"bakar</w>\": 41414,\n  \"bake\": 20736,\n  \"bake</w>\": 11878,\n  \"baked</w>\": 10364,\n  \"baker\": 27303,\n  \"baker</w>\": 7743,\n  \"bakers\": 35293,\n  \"bakers</w>\": 40231,\n  \"bakersfield</w>\": 40149,\n  \"bakery</w>\": 13377,\n  \"bakes</w>\": 43057,\n  \"bakhta\": 44912,\n  \"bakhtawar\": 46937,\n  \"bakhtawarbz</w>\": 47118,\n  \"baking</w>\": 11467,\n  \"baku\": 46417,\n  \"baku</w>\": 31852,\n  \"bal\": 1398,\n  \"bal</w>\": 2282,\n  \"bala</w>\": 20291,\n  \"balaji</w>\": 48694,\n  \"balance\": 42894,\n  \"balance</w>\": 6827,\n  \"balanced</w>\": 15273,\n  \"balances</w>\": 37733,\n  \"balancing</w>\": 23541,\n  \"balboa</w>\": 45098,\n  \"balcony</w>\": 16169,\n  \"bald\": 11153,\n  \"bald</w>\": 14875,\n  \"baldhead</w>\": 29191,\n  \"baldwin</w>\": 16242,\n  \"bale\": 48573,\n  \"bale</w>\": 18873,\n  \"bales</w>\": 42879,\n  \"bali\": 16432,\n  \"bali</w>\": 10900,\n  \"balkan</w>\": 48499,\n  \"balkans</w>\": 42987,\n  \"ball\": 3807,\n  \"ball</w>\": 1069,\n  \"balla\": 42246,\n  \"ballad</w>\": 33472,\n  \"ballarat</w>\": 46645,\n  \"ballard</w>\": 31750,\n  \"baller\": 49194,\n  \"baller</w>\": 25655,\n  \"ballerina</w>\": 34962,\n  \"ballers</w>\": 34173,\n  \"ballet</w>\": 10703,\n  \"balli\": 29406,\n  \"ballin\": 47444,\n  \"ballin</w>\": 33057,\n  \"balling</w>\": 47588,\n  \"ballis\": 46675,\n  \"ballistic</w>\": 36667,\n  \"ballo\": 8871,\n  \"ballon</w>\": 36469,\n  \"balloon</w>\": 13634,\n  \"balloons</w>\": 18130,\n  \"ballot</w>\": 14185,\n  \"ballots</w>\": 35051,\n  \"ballpark</w>\": 26080,\n  \"ballroom</w>\": 15493,\n  \"balls</w>\": 6927,\n  \"bally\": 17275,\n  \"bally</w>\": 29451,\n  \"balm</w>\": 24962,\n  \"balmain</w>\": 45929,\n  \"balo\": 12395,\n  \"baloch</w>\": 23173,\n  \"balochistan</w>\": 21918,\n  \"balot\": 44615,\n  \"balotelli</w>\": 45721,\n  \"bals</w>\": 44154,\n  \"balsam\": 29121,\n  \"balsamic</w>\": 32654,\n  \"balt</w>\": 24441,\n  \"balti\": 8400,\n  \"baltic</w>\": 23817,\n  \"baltimore\": 38502,\n  \"baltimore</w>\": 9582,\n  \"balu\": 38093,\n  \"bam\": 6383,\n  \"bam</w>\": 12686,\n  \"bama</w>\": 20021,\n  \"bambam</w>\": 34538,\n  \"bambi</w>\": 46596,\n  \"bamboo\": 49322,\n  \"bamboo</w>\": 16748,\n  \"ban\": 1159,\n  \"ban</w>\": 2777,\n  \"bana</w>\": 18428,\n  \"banan\": 38410,\n  \"banana</w>\": 8922,\n  \"bananas</w>\": 19121,\n  \"banc\": 39252,\n  \"band\": 4613,\n  \"band</w>\": 1963,\n  \"banda</w>\": 31865,\n  \"bandai</w>\": 42054,\n  \"bandana</w>\": 39265,\n  \"bandcamp</w>\": 32229,\n  \"banded</w>\": 37804,\n  \"bandic\": 44400,\n  \"bandit</w>\": 27639,\n  \"bandits</w>\": 33940,\n  \"bandra</w>\": 41393,\n  \"bands</w>\": 7858,\n  \"bandung</w>\": 29512,\n  \"bandwagon</w>\": 36432,\n  \"bandwidth</w>\": 48859,\n  \"bane</w>\": 9597,\n  \"banerjee</w>\": 48102,\n  \"banff</w>\": 29565,\n  \"bang\": 3524,\n  \"bang</w>\": 6907,\n  \"bangalore</w>\": 14697,\n  \"banger</w>\": 24872,\n  \"bangers</w>\": 38311,\n  \"banging</w>\": 33033,\n  \"bangkok</w>\": 12351,\n  \"bangla\": 10339,\n  \"bangla</w>\": 45928,\n  \"bangladesh</w>\": 11245,\n  \"bangle</w>\": 37634,\n  \"bangor</w>\": 31190,\n  \"bangs</w>\": 27992,\n  \"bangtan</w>\": 39131,\n  \"bani</w>\": 19732,\n  \"banjo</w>\": 27014,\n  \"bank\": 7061,\n  \"bank</w>\": 2723,\n  \"banker</w>\": 27316,\n  \"bankers</w>\": 30599,\n  \"bankholiday\": 48868,\n  \"banking</w>\": 9566,\n  \"bankno\": 49201,\n  \"bankof\": 39120,\n  \"bankrup\": 21904,\n  \"bankrupt\": 23077,\n  \"bankrupt</w>\": 37288,\n  \"bankruptcy</w>\": 23978,\n  \"banks</w>\": 6367,\n  \"banksy</w>\": 33350,\n  \"bann\": 5304,\n  \"banned</w>\": 12012,\n  \"banner</w>\": 9185,\n  \"banners</w>\": 23145,\n  \"banning</w>\": 26246,\n  \"bannon</w>\": 29710,\n  \"bano</w>\": 42947,\n  \"banquet</w>\": 14254,\n  \"bans</w>\": 15146,\n  \"bant\": 23301,\n  \"bant</w>\": 46657,\n  \"banter</w>\": 25535,\n  \"bao\": 39487,\n  \"bao</w>\": 20408,\n  \"bap\": 7415,\n  \"bap</w>\": 23754,\n  \"bapti\": 15477,\n  \"baptism</w>\": 36765,\n  \"baptist</w>\": 13274,\n  \"baptiste</w>\": 45770,\n  \"baptized</w>\": 45400,\n  \"bar\": 1040,\n  \"bar</w>\": 2411,\n  \"bara</w>\": 19345,\n  \"barack\": 18670,\n  \"barack</w>\": 22481,\n  \"barackobama</w>\": 18885,\n  \"barak\": 47419,\n  \"barak</w>\": 16260,\n  \"barang\": 38446,\n  \"barb\": 24173,\n  \"barb</w>\": 20913,\n  \"barbados</w>\": 26992,\n  \"barbar\": 7906,\n  \"barbara</w>\": 10937,\n  \"barbarian</w>\": 42530,\n  \"barbe\": 18372,\n  \"barbecue</w>\": 23501,\n  \"barber\": 19517,\n  \"barber</w>\": 12296,\n  \"barbershop</w>\": 37707,\n  \"barbican</w>\": 47668,\n  \"barbie</w>\": 16923,\n  \"barca</w>\": 22942,\n  \"barcel\": 6134,\n  \"barcelon\": 47820,\n  \"barcelona</w>\": 6412,\n  \"barclay\": 48877,\n  \"barclay</w>\": 45276,\n  \"barclays</w>\": 29538,\n  \"bard\": 39812,\n  \"bard</w>\": 17514,\n  \"bare\": 16023,\n  \"bare</w>\": 14318,\n  \"barefoot</w>\": 30327,\n  \"barely</w>\": 12684,\n  \"bargain</w>\": 15076,\n  \"bargaining</w>\": 41282,\n  \"bargains</w>\": 34126,\n  \"barge</w>\": 28272,\n  \"bari\": 21428,\n  \"bari</w>\": 28016,\n  \"barista</w>\": 31078,\n  \"barit\": 46300,\n  \"bark\": 32333,\n  \"bark</w>\": 16560,\n  \"barker</w>\": 20618,\n  \"barking</w>\": 32676,\n  \"barkley</w>\": 30266,\n  \"barley</w>\": 22607,\n  \"barlow</w>\": 25483,\n  \"barn\": 10490,\n  \"barn</w>\": 10942,\n  \"barnab\": 43272,\n  \"barnard</w>\": 44332,\n  \"barne\": 42527,\n  \"barnes</w>\": 13102,\n  \"barnet</w>\": 41943,\n  \"barnett</w>\": 27650,\n  \"barney</w>\": 24563,\n  \"barns</w>\": 43759,\n  \"barnsley\": 37109,\n  \"barnsley</w>\": 32153,\n  \"baro\": 17422,\n  \"baro</w>\": 30817,\n  \"baron\": 48371,\n  \"baron</w>\": 19349,\n  \"baroness</w>\": 45056,\n  \"barons</w>\": 45596,\n  \"baroque</w>\": 25065,\n  \"barr\": 39473,\n  \"barr</w>\": 22492,\n  \"barra\": 28442,\n  \"barra</w>\": 33542,\n  \"barrabest</w>\": 41376,\n  \"barrac\": 40835,\n  \"barracks</w>\": 35822,\n  \"barre\": 13840,\n  \"barre</w>\": 38257,\n  \"barred</w>\": 33261,\n  \"barrel</w>\": 11703,\n  \"barrels</w>\": 22059,\n  \"barren</w>\": 46743,\n  \"barrett</w>\": 18701,\n  \"barri\": 8660,\n  \"barric\": 29189,\n  \"barrie</w>\": 27090,\n  \"barrier</w>\": 15706,\n  \"barriers</w>\": 16321,\n  \"barrington</w>\": 48954,\n  \"barron</w>\": 34881,\n  \"barrow\": 42568,\n  \"barrow</w>\": 24983,\n  \"barry\": 18028,\n  \"barry</w>\": 8461,\n  \"barrymore</w>\": 49310,\n  \"bars</w>\": 8616,\n  \"barstool\": 44826,\n  \"bart\": 14838,\n  \"bart</w>\": 12870,\n  \"bartender</w>\": 33498,\n  \"barthol\": 48989,\n  \"bartlett</w>\": 37130,\n  \"bartol\": 38209,\n  \"barton\": 48853,\n  \"barton</w>\": 20345,\n  \"baru</w>\": 16356,\n  \"barun\": 38278,\n  \"barunsob\": 41398,\n  \"barÃ§a</w>\": 32788,\n  \"bas\": 1244,\n  \"bas</w>\": 11420,\n  \"basa</w>\": 26142,\n  \"base\": 2776,\n  \"base</w>\": 4579,\n  \"baseball\": 23479,\n  \"baseball</w>\": 3470,\n  \"based\": 35196,\n  \"based</w>\": 2812,\n  \"basel\": 42803,\n  \"basel</w>\": 20903,\n  \"baseline</w>\": 40648,\n  \"baseman</w>\": 45910,\n  \"basement</w>\": 14792,\n  \"bases</w>\": 20496,\n  \"bash\": 20462,\n  \"bash</w>\": 10972,\n  \"bashing</w>\": 37545,\n  \"bashir</w>\": 42799,\n  \"basic\": 40452,\n  \"basic</w>\": 7696,\n  \"basically</w>\": 9125,\n  \"basics</w>\": 15825,\n  \"basil\": 19225,\n  \"basil</w>\": 14936,\n  \"basilica</w>\": 27879,\n  \"basin</w>\": 16117,\n  \"basing\": 47321,\n  \"basis</w>\": 12278,\n  \"baske\": 3713,\n  \"basket</w>\": 10338,\n  \"basketball\": 40023,\n  \"basketball</w>\": 3835,\n  \"baskets</w>\": 27787,\n  \"basking</w>\": 39769,\n  \"basque</w>\": 37175,\n  \"bass\": 22831,\n  \"bass</w>\": 5992,\n  \"bassett</w>\": 45992,\n  \"bassist</w>\": 26496,\n  \"bast\": 28092,\n  \"basti\": 8559,\n  \"bastille</w>\": 41874,\n  \"bat\": 2121,\n  \"bat</w>\": 6575,\n  \"bata</w>\": 39277,\n  \"batb</w>\": 33962,\n  \"batch</w>\": 9413,\n  \"bate\": 25034,\n  \"bate</w>\": 28277,\n  \"bateman</w>\": 41635,\n  \"bates</w>\": 21727,\n  \"batgirl</w>\": 46460,\n  \"bath\": 6064,\n  \"bath</w>\": 5713,\n  \"bathing</w>\": 20144,\n  \"bathro\": 21201,\n  \"bathroom</w>\": 8470,\n  \"bathrooms</w>\": 26434,\n  \"baths</w>\": 19442,\n  \"bathtub</w>\": 39942,\n  \"bathurst</w>\": 36365,\n  \"bati\": 23362,\n  \"bati</w>\": 37589,\n  \"batman\": 27811,\n  \"batman</w>\": 7223,\n  \"baton</w>\": 24331,\n  \"bats</w>\": 14984,\n  \"batsman</w>\": 35432,\n  \"batt\": 2407,\n  \"batt</w>\": 48595,\n  \"battalion</w>\": 20820,\n  \"batter\": 12654,\n  \"batter</w>\": 31855,\n  \"battered</w>\": 34375,\n  \"batteries</w>\": 16666,\n  \"battersea</w>\": 35839,\n  \"battery</w>\": 7870,\n  \"batting</w>\": 17401,\n  \"battle\": 7344,\n  \"battle</w>\": 3528,\n  \"battled</w>\": 37837,\n  \"battlefield</w>\": 16055,\n  \"battlefront</w>\": 42214,\n  \"battleof\": 47560,\n  \"battles</w>\": 14213,\n  \"battleship</w>\": 35165,\n  \"battling</w>\": 17268,\n  \"bau\": 6055,\n  \"bau</w>\": 34840,\n  \"bauer</w>\": 22903,\n  \"baugh</w>\": 41301,\n  \"baum</w>\": 19840,\n  \"bautista</w>\": 31881,\n  \"bav\": 21075,\n  \"bavaria</w>\": 39977,\n  \"bavarian</w>\": 44458,\n  \"baw\": 19808,\n  \"bax\": 21216,\n  \"baxter</w>\": 26168,\n  \"bay\": 3631,\n  \"bay</w>\": 2174,\n  \"baya</w>\": 31573,\n  \"bayan</w>\": 43895,\n  \"bayarea</w>\": 28260,\n  \"bayer\": 48548,\n  \"bayer</w>\": 29183,\n  \"bayern</w>\": 14666,\n  \"baylor</w>\": 21721,\n  \"bayou</w>\": 33955,\n  \"bays</w>\": 40156,\n  \"baz\": 10430,\n  \"baz</w>\": 25268,\n  \"bazaar</w>\": 20070,\n  \"bazar</w>\": 49298,\n  \"bb\": 1174,\n  \"bb</w>\": 3529,\n  \"bba</w>\": 27762,\n  \"bball</w>\": 15664,\n  \"bbb</w>\": 33535,\n  \"bbc\": 5123,\n  \"bbc</w>\": 5188,\n  \"bbcc\": 39052,\n  \"bbce\": 33818,\n  \"bbcnews</w>\": 29370,\n  \"bbcone</w>\": 28259,\n  \"bbcqt</w>\": 37343,\n  \"bbcr</w>\": 35802,\n  \"bbcra\": 17115,\n  \"bbcradi\": 49213,\n  \"bbcradio</w>\": 22876,\n  \"bbcsport</w>\": 49321,\n  \"bbcspringwatch</w>\": 37358,\n  \"bbctwo</w>\": 40395,\n  \"bbcworld</w>\": 47340,\n  \"bbe</w>\": 37559,\n  \"bbed</w>\": 9077,\n  \"bber</w>\": 7933,\n  \"bbers</w>\": 36494,\n  \"bbhutto\": 28085,\n  \"bbhuttozardari</w>\": 28135,\n  \"bbi</w>\": 37047,\n  \"bbin</w>\": 38553,\n  \"bbing</w>\": 9787,\n  \"bbins</w>\": 42504,\n  \"bbl</w>\": 21961,\n  \"bble\": 26570,\n  \"bble</w>\": 5924,\n  \"bbled</w>\": 37626,\n  \"bbles</w>\": 18093,\n  \"bblo\": 21231,\n  \"bbloggers</w>\": 26614,\n  \"bbly</w>\": 43031,\n  \"bbm</w>\": 25382,\n  \"bbmas</w>\": 22145,\n  \"bbn</w>\": 28427,\n  \"bbnaija</w>\": 20984,\n  \"bbo</w>\": 21892,\n  \"bbq\": 41270,\n  \"bbq</w>\": 6726,\n  \"bbs</w>\": 10002,\n  \"bbuk</w>\": 45978,\n  \"bby\": 11166,\n  \"bby</w>\": 3810,\n  \"bc\": 3116,\n  \"bc</w>\": 2162,\n  \"bcc</w>\": 41509,\n  \"bcci</w>\": 36138,\n  \"bce</w>\": 36510,\n  \"bcfc</w>\": 34359,\n  \"bch</w>\": 36684,\n  \"bcn</w>\": 25766,\n  \"bcoz</w>\": 46373,\n  \"bcpoli</w>\": 24389,\n  \"bcs</w>\": 24909,\n  \"bcu</w>\": 28299,\n  \"bd\": 24358,\n  \"bd</w>\": 11165,\n  \"bday\": 33022,\n  \"bday</w>\": 5781,\n  \"bdg</w>\": 48418,\n  \"bds</w>\": 26732,\n  \"be\": 571,\n  \"be</w>\": 655,\n  \"bea\": 21886,\n  \"bea</w>\": 20925,\n  \"beach\": 6068,\n  \"beach</w>\": 2117,\n  \"beaches</w>\": 12183,\n  \"beachlife</w>\": 43824,\n  \"beacon\": 36883,\n  \"beacon</w>\": 18858,\n  \"beacons</w>\": 39395,\n  \"bead\": 31621,\n  \"bead</w>\": 23557,\n  \"beaded</w>\": 26661,\n  \"beads</w>\": 14099,\n  \"beagle</w>\": 30044,\n  \"beak</w>\": 36498,\n  \"beal</w>\": 45769,\n  \"beale</w>\": 39717,\n  \"beam\": 35339,\n  \"beam</w>\": 13663,\n  \"beams</w>\": 23993,\n  \"bean\": 16471,\n  \"bean</w>\": 5328,\n  \"beanie</w>\": 21534,\n  \"beans</w>\": 8302,\n  \"bear\": 6375,\n  \"bear</w>\": 4298,\n  \"bearable</w>\": 38608,\n  \"bearcats</w>\": 33242,\n  \"beard\": 26157,\n  \"beard</w>\": 9052,\n  \"bearded</w>\": 28459,\n  \"beardown</w>\": 43687,\n  \"beards</w>\": 33020,\n  \"bearer</w>\": 30686,\n  \"bearers</w>\": 47986,\n  \"bearing</w>\": 18370,\n  \"bearings</w>\": 42083,\n  \"bearish</w>\": 34829,\n  \"bears</w>\": 6182,\n  \"beasley</w>\": 43349,\n  \"beast\": 20847,\n  \"beast</w>\": 6957,\n  \"beastmode</w>\": 43076,\n  \"beasts</w>\": 21771,\n  \"beat\": 3774,\n  \"beat</w>\": 3018,\n  \"beaten</w>\": 10864,\n  \"beater</w>\": 41974,\n  \"beati\": 44386,\n  \"beating</w>\": 10078,\n  \"beatles</w>\": 11961,\n  \"beatport</w>\": 31421,\n  \"beatrice</w>\": 36922,\n  \"beats</w>\": 6289,\n  \"beatthe\": 40550,\n  \"beatty</w>\": 39903,\n  \"beatz</w>\": 33363,\n  \"beau\": 1016,\n  \"beau</w>\": 14298,\n  \"beaufort</w>\": 45423,\n  \"beaumont</w>\": 32857,\n  \"beaut</w>\": 24559,\n  \"beauti\": 1154,\n  \"beauties</w>\": 14874,\n  \"beautiful\": 13662,\n  \"beautiful</w>\": 1215,\n  \"beautifully</w>\": 10627,\n  \"beauty\": 12881,\n  \"beauty</w>\": 2488,\n  \"beav\": 23260,\n  \"beaver\": 26432,\n  \"beaver</w>\": 22874,\n  \"beavers</w>\": 34513,\n  \"beavs</w>\": 43909,\n  \"bebe</w>\": 23331,\n  \"bec\": 6899,\n  \"bec</w>\": 10773,\n  \"became</w>\": 5464,\n  \"because\": 32714,\n  \"because</w>\": 1631,\n  \"becca</w>\": 27088,\n  \"bech\": 44055,\n  \"beck\": 8256,\n  \"beck</w>\": 10396,\n  \"becker</w>\": 26918,\n  \"beckett</w>\": 27249,\n  \"beckham</w>\": 18764,\n  \"becky\": 32406,\n  \"becky</w>\": 18921,\n  \"become</w>\": 2989,\n  \"becomes</w>\": 6766,\n  \"becoming</w>\": 6208,\n  \"bed\": 4152,\n  \"bed</w>\": 2722,\n  \"bedding</w>\": 31761,\n  \"bedford</w>\": 20779,\n  \"bedi</w>\": 39181,\n  \"bedro\": 18415,\n  \"bedroom</w>\": 8411,\n  \"bedrooms</w>\": 23996,\n  \"beds</w>\": 13914,\n  \"bedside</w>\": 47473,\n  \"bedtime</w>\": 22115,\n  \"bee\": 6097,\n  \"bee</w>\": 5028,\n  \"beech\": 32733,\n  \"beech</w>\": 27596,\n  \"beef\": 21703,\n  \"beef</w>\": 6529,\n  \"beek</w>\": 37915,\n  \"been\": 33986,\n  \"been</w>\": 1025,\n  \"beep</w>\": 33432,\n  \"beer\": 8885,\n  \"beer</w>\": 2544,\n  \"beers</w>\": 10907,\n  \"bees\": 36249,\n  \"bees</w>\": 9100,\n  \"beet\": 12582,\n  \"beet</w>\": 28621,\n  \"beethoven</w>\": 23656,\n  \"beetle</w>\": 16534,\n  \"beetles</w>\": 36317,\n  \"beetro\": 29251,\n  \"beetroot</w>\": 31638,\n  \"beets</w>\": 36087,\n  \"before\": 20898,\n  \"before</w>\": 1348,\n  \"beg\": 2219,\n  \"beg</w>\": 22401,\n  \"began</w>\": 8636,\n  \"begg\": 36769,\n  \"begging</w>\": 25371,\n  \"begin\": 19197,\n  \"begin</w>\": 4947,\n  \"beginner</w>\": 24351,\n  \"beginners</w>\": 21930,\n  \"beginning</w>\": 5791,\n  \"beginnings</w>\": 22581,\n  \"begins</w>\": 4635,\n  \"begs</w>\": 43531,\n  \"begun</w>\": 10514,\n  \"beh\": 21971,\n  \"beh</w>\": 41612,\n  \"beha\": 5737,\n  \"behalf</w>\": 11470,\n  \"behave</w>\": 28825,\n  \"behaved</w>\": 41617,\n  \"behavi\": 6149,\n  \"behaving</w>\": 40745,\n  \"behavior</w>\": 10461,\n  \"behavioral</w>\": 25135,\n  \"behaviors</w>\": 37741,\n  \"behaviour</w>\": 14655,\n  \"behavioural</w>\": 46019,\n  \"behe\": 42329,\n  \"behin\": 2335,\n  \"behind</w>\": 2403,\n  \"behindthe\": 21104,\n  \"behindthescenes</w>\": 26253,\n  \"behold</w>\": 15929,\n  \"bei\": 38991,\n  \"bei</w>\": 23227,\n  \"beige</w>\": 26677,\n  \"beij\": 11547,\n  \"beijing</w>\": 11796,\n  \"bein\": 39117,\n  \"bein</w>\": 24168,\n  \"being\": 13481,\n  \"being</w>\": 1265,\n  \"beings</w>\": 17998,\n  \"beingsalmankhan</w>\": 19637,\n  \"beir\": 20176,\n  \"beirut</w>\": 22352,\n  \"beit</w>\": 26963,\n  \"bek\": 46846,\n  \"bek</w>\": 26135,\n  \"bekind</w>\": 46691,\n  \"bel\": 1308,\n  \"bel</w>\": 3543,\n  \"bela</w>\": 30555,\n  \"belarus</w>\": 30849,\n  \"belated</w>\": 20256,\n  \"belfast\": 35100,\n  \"belfast</w>\": 10015,\n  \"belgi\": 7001,\n  \"belgian</w>\": 15008,\n  \"belgium</w>\": 10239,\n  \"belgrade</w>\": 30502,\n  \"beli\": 1859,\n  \"beli</w>\": 45842,\n  \"belichick</w>\": 46132,\n  \"belie\": 20854,\n  \"beliebers</w>\": 27714,\n  \"belief</w>\": 14802,\n  \"beliefs</w>\": 20575,\n  \"believ\": 4972,\n  \"believe\": 15819,\n  \"believe</w>\": 2649,\n  \"believed</w>\": 13380,\n  \"believein\": 24294,\n  \"believeinfilm</w>\": 37375,\n  \"believer</w>\": 26057,\n  \"believers</w>\": 28434,\n  \"believes</w>\": 12017,\n  \"believing</w>\": 19551,\n  \"belinda</w>\": 44415,\n  \"belize</w>\": 27990,\n  \"bell\": 5417,\n  \"bell</w>\": 3718,\n  \"bella\": 18282,\n  \"bella</w>\": 10418,\n  \"bellamy</w>\": 34461,\n  \"bellator</w>\": 31985,\n  \"belle\": 13587,\n  \"belle</w>\": 11496,\n  \"belles</w>\": 40678,\n  \"bellevue</w>\": 32715,\n  \"belli\": 43335,\n  \"bellletstalk</w>\": 42695,\n  \"bello</w>\": 21954,\n  \"bells</w>\": 12811,\n  \"bellum</w>\": 35493,\n  \"belly\": 25901,\n  \"belly</w>\": 10404,\n  \"belmont</w>\": 25612,\n  \"belo\": 8379,\n  \"belo</w>\": 41649,\n  \"belong\": 16453,\n  \"belong</w>\": 13596,\n  \"belonged</w>\": 39893,\n  \"belonging</w>\": 28193,\n  \"belongs</w>\": 14395,\n  \"beloved</w>\": 9363,\n  \"below</w>\": 3788,\n  \"bels</w>\": 43127,\n  \"belt\": 36416,\n  \"belt</w>\": 7373,\n  \"belts</w>\": 21888,\n  \"belvedere</w>\": 48003,\n  \"ben\": 1465,\n  \"ben</w>\": 3518,\n  \"bena</w>\": 46249,\n  \"bench\": 17770,\n  \"bench</w>\": 8771,\n  \"benches</w>\": 36349,\n  \"benchmark</w>\": 31775,\n  \"bend\": 22100,\n  \"bend</w>\": 13332,\n  \"bender</w>\": 22551,\n  \"bendigo</w>\": 48197,\n  \"bending</w>\": 33897,\n  \"bene\": 12091,\n  \"bene</w>\": 47151,\n  \"beneath</w>\": 16850,\n  \"bened\": 13216,\n  \"benedic\": 24402,\n  \"benedict\": 47896,\n  \"benedict</w>\": 18027,\n  \"benef\": 3260,\n  \"benefici\": 38593,\n  \"beneficial</w>\": 24660,\n  \"beneficiaries</w>\": 42160,\n  \"benefit</w>\": 6399,\n  \"benefited</w>\": 48266,\n  \"benefiting</w>\": 29474,\n  \"benefits</w>\": 5465,\n  \"benefitting</w>\": 47222,\n  \"benevol\": 47060,\n  \"benfica</w>\": 33873,\n  \"beng\": 6962,\n  \"bengal\": 17404,\n  \"bengal</w>\": 16374,\n  \"bengali</w>\": 33774,\n  \"bengals</w>\": 23737,\n  \"bengaluru</w>\": 21707,\n  \"benghazi</w>\": 25967,\n  \"benin</w>\": 40296,\n  \"benitez</w>\": 46711,\n  \"benjam\": 10550,\n  \"benjamin\": 38647,\n  \"benjamin</w>\": 12131,\n  \"benji</w>\": 43548,\n  \"benn</w>\": 39097,\n  \"bennet</w>\": 48536,\n  \"bennett</w>\": 12186,\n  \"benny\": 42369,\n  \"benny</w>\": 20595,\n  \"beno\": 35268,\n  \"benoit</w>\": 44373,\n  \"benson</w>\": 19578,\n  \"bent\": 9809,\n  \"bent</w>\": 18369,\n  \"bentley</w>\": 16859,\n  \"benton</w>\": 30812,\n  \"benz\": 27937,\n  \"benz</w>\": 13470,\n  \"ber\": 867,\n  \"ber</w>\": 1516,\n  \"bera</w>\": 32802,\n  \"bere\": 17458,\n  \"bered</w>\": 9193,\n  \"beren\": 33654,\n  \"beret</w>\": 41658,\n  \"berg\": 12022,\n  \"berg</w>\": 3294,\n  \"bergen</w>\": 22918,\n  \"berger\": 35933,\n  \"berger</w>\": 13873,\n  \"bergh</w>\": 35120,\n  \"bergman</w>\": 42597,\n  \"bergs</w>\": 43592,\n  \"berk\": 15633,\n  \"berke\": 14639,\n  \"berkeley\": 46049,\n  \"berkeley</w>\": 16667,\n  \"berkshire</w>\": 27300,\n  \"berlin\": 23532,\n  \"berlin</w>\": 5891,\n  \"berman</w>\": 21514,\n  \"bermu\": 21032,\n  \"bermuda</w>\": 24644,\n  \"bern\": 9195,\n  \"bern</w>\": 18382,\n  \"bernade\": 46242,\n  \"bernar\": 11962,\n  \"bernard</w>\": 14579,\n  \"bernardino</w>\": 35328,\n  \"bernardo\": 27137,\n  \"bernardo</w>\": 28696,\n  \"bernardokath</w>\": 29081,\n  \"bernat\": 40578,\n  \"berni\": 18798,\n  \"bernie\": 40093,\n  \"bernie</w>\": 10503,\n  \"berniesanders</w>\": 23745,\n  \"bernstein</w>\": 33936,\n  \"berra</w>\": 15089,\n  \"berries</w>\": 8319,\n  \"berry\": 15334,\n  \"berry</w>\": 3488,\n  \"bers</w>\": 6408,\n  \"berser\": 39037,\n  \"bert\": 17340,\n  \"bert</w>\": 2358,\n  \"berta</w>\": 45187,\n  \"berth</w>\": 28317,\n  \"bertie</w>\": 47182,\n  \"berto</w>\": 34073,\n  \"bertr\": 36962,\n  \"bertrand</w>\": 41594,\n  \"berts</w>\": 30205,\n  \"berty</w>\": 35973,\n  \"berwick</w>\": 40407,\n  \"bery</w>\": 11411,\n  \"bes\": 26911,\n  \"bes</w>\": 3635,\n  \"beside</w>\": 13519,\n  \"besides</w>\": 17596,\n  \"bespoke</w>\": 15612,\n  \"bess</w>\": 43791,\n  \"best\": 3419,\n  \"best</w>\": 949,\n  \"bestbuy</w>\": 29749,\n  \"bestest</w>\": 31199,\n  \"bestfan\": 23880,\n  \"bestfanarmy</w>\": 24590,\n  \"bestfriend\": 29832,\n  \"bestfriend</w>\": 11856,\n  \"bestfriends</w>\": 23555,\n  \"besti\": 35210,\n  \"bestie</w>\": 17188,\n  \"besties</w>\": 27346,\n  \"besto\": 28615,\n  \"bestof\": 27892,\n  \"bestof</w>\": 39533,\n  \"bestseller</w>\": 25841,\n  \"bestselling</w>\": 28632,\n  \"bet\": 1051,\n  \"bet</w>\": 4430,\n  \"beta\": 43188,\n  \"beta</w>\": 9505,\n  \"betes</w>\": 10255,\n  \"beth\": 9993,\n  \"beth</w>\": 4892,\n  \"bethan\": 18781,\n  \"bethany\": 39130,\n  \"bethany</w>\": 27952,\n  \"bethe\": 12624,\n  \"bethel</w>\": 33410,\n  \"bethesda</w>\": 32527,\n  \"bethle\": 30760,\n  \"bethlehem</w>\": 31827,\n  \"betis</w>\": 45590,\n  \"beto</w>\": 33721,\n  \"betra\": 18436,\n  \"betrayal</w>\": 33171,\n  \"betrayed</w>\": 35692,\n  \"bets</w>\": 17107,\n  \"betsy</w>\": 28946,\n  \"bett\": 17715,\n  \"bett</w>\": 20489,\n  \"betta</w>\": 36387,\n  \"bette</w>\": 35855,\n  \"better\": 10320,\n  \"better</w>\": 1539,\n  \"bettertogether</w>\": 47392,\n  \"betting</w>\": 14319,\n  \"betts</w>\": 38637,\n  \"betty\": 36175,\n  \"betty</w>\": 14350,\n  \"between</w>\": 1957,\n  \"beu\": 38660,\n  \"bev\": 40324,\n  \"bev</w>\": 30968,\n  \"bever\": 9924,\n  \"beverage</w>\": 18694,\n  \"beverages</w>\": 28521,\n  \"beverley</w>\": 39165,\n  \"beverly\": 30906,\n  \"beverly</w>\": 16728,\n  \"beverlyhills</w>\": 45363,\n  \"beware</w>\": 14532,\n  \"bewithyou</w>\": 36787,\n  \"bex\": 18676,\n  \"bex</w>\": 24748,\n  \"bexhill</w>\": 49200,\n  \"bey\": 3234,\n  \"bey</w>\": 6767,\n  \"beyon\": 11447,\n  \"beyonce</w>\": 16632,\n  \"beyoncÃ©</w>\": 19219,\n  \"beyond\": 22246,\n  \"beyond</w>\": 4432,\n  \"bez\": 28592,\n  \"bez</w>\": 46764,\n  \"bezos</w>\": 45000,\n  \"bf\": 19858,\n  \"bf</w>\": 7990,\n  \"bfc</w>\": 37183,\n  \"bff</w>\": 11984,\n  \"bffs</w>\": 31462,\n  \"bfi</w>\": 34244,\n  \"bg\": 16674,\n  \"bg</w>\": 11295,\n  \"bgc</w>\": 47598,\n  \"bgs</w>\": 47963,\n  \"bgt</w>\": 40665,\n  \"bh\": 9930,\n  \"bh</w>\": 13603,\n  \"bha\": 6144,\n  \"bha</w>\": 33068,\n  \"bhafc</w>\": 30779,\n  \"bhagat</w>\": 49136,\n  \"bhai\": 48370,\n  \"bhai</w>\": 20508,\n  \"bhak\": 34501,\n  \"bham\": 31874,\n  \"bham</w>\": 23491,\n  \"bhan\": 27356,\n  \"bhand\": 48679,\n  \"bhar\": 9108,\n  \"bharat\": 27454,\n  \"bharat</w>\": 17430,\n  \"bharti</w>\": 46803,\n  \"bhat\": 23784,\n  \"bhatt</w>\": 36143,\n  \"bhav\": 44950,\n  \"bhi\": 28943,\n  \"bhi</w>\": 21955,\n  \"bhk</w>\": 45070,\n  \"bhm</w>\": 38741,\n  \"bho\": 19721,\n  \"bhopal</w>\": 44573,\n  \"bhp</w>\": 29776,\n  \"bhs</w>\": 29195,\n  \"bhu\": 9172,\n  \"bhuban\": 38729,\n  \"bhubanes\": 41213,\n  \"bhubaneswar</w>\": 45888,\n  \"bhushan</w>\": 40884,\n  \"bhutan</w>\": 32391,\n  \"bhutto</w>\": 30153,\n  \"bi\": 717,\n  \"bi</w>\": 3035,\n  \"bia</w>\": 3841,\n  \"biaf\": 26961,\n  \"biafra</w>\": 36355,\n  \"bian\": 19531,\n  \"bian</w>\": 9027,\n  \"bianca</w>\": 25854,\n  \"bianchi</w>\": 45720,\n  \"bians</w>\": 28141,\n  \"bias</w>\": 11268,\n  \"biased</w>\": 22178,\n  \"bib\": 44607,\n  \"bib</w>\": 21022,\n  \"bibi</w>\": 31182,\n  \"bibl\": 20912,\n  \"bible\": 26738,\n  \"bible</w>\": 7583,\n  \"bibli\": 23465,\n  \"biblical</w>\": 22841,\n  \"biblio\": 49131,\n  \"bic\": 5960,\n  \"bic</w>\": 10675,\n  \"bice\": 35589,\n  \"biceps</w>\": 46735,\n  \"bick\": 27238,\n  \"bicy\": 9247,\n  \"bicycle</w>\": 11652,\n  \"bicycles</w>\": 31326,\n  \"bid\": 21035,\n  \"bid</w>\": 5553,\n  \"bidding</w>\": 23237,\n  \"bide</w>\": 45178,\n  \"biden</w>\": 19451,\n  \"bids</w>\": 16148,\n  \"bie\": 5561,\n  \"bie</w>\": 4173,\n  \"bieber\": 48725,\n  \"bieber</w>\": 7535,\n  \"bien\": 19176,\n  \"bien</w>\": 25742,\n  \"biennale</w>\": 33776,\n  \"biennial</w>\": 36609,\n  \"bier\": 27226,\n  \"bier</w>\": 23508,\n  \"bies</w>\": 7867,\n  \"big\": 1915,\n  \"big</w>\": 1205,\n  \"bigbaldhead</w>\": 30325,\n  \"bigbang\": 41680,\n  \"bigbang</w>\": 23734,\n  \"bigdata</w>\": 9440,\n  \"bige\": 37762,\n  \"bigfoot</w>\": 37095,\n  \"bigg\": 15312,\n  \"bigg</w>\": 35399,\n  \"biggboss</w>\": 27056,\n  \"bigger</w>\": 6806,\n  \"biggest\": 19483,\n  \"biggest</w>\": 3505,\n  \"biggie</w>\": 28392,\n  \"biggs</w>\": 46507,\n  \"bigh\": 18106,\n  \"bighit</w>\": 35508,\n  \"bigo\": 14278,\n  \"bigolive</w>\": 20735,\n  \"bigotry</w>\": 37269,\n  \"bigre\": 36330,\n  \"bih</w>\": 33471,\n  \"bihar</w>\": 22849,\n  \"bij\": 42478,\n  \"bik\": 30306,\n  \"bike\": 11686,\n  \"bike</w>\": 3701,\n  \"biker\": 36100,\n  \"biker</w>\": 23449,\n  \"bikers</w>\": 29468,\n  \"bikes</w>\": 9227,\n  \"bikin\": 12638,\n  \"biking</w>\": 19157,\n  \"bikini</w>\": 14531,\n  \"bil\": 3092,\n  \"bil</w>\": 20506,\n  \"bilateral</w>\": 25599,\n  \"bilbao</w>\": 34802,\n  \"bild</w>\": 35512,\n  \"bile</w>\": 25943,\n  \"bilingual</w>\": 29623,\n  \"bilities</w>\": 13582,\n  \"bility</w>\": 4694,\n  \"bill\": 4444,\n  \"bill</w>\": 2886,\n  \"billboard</w>\": 10856,\n  \"billboards</w>\": 34741,\n  \"billed</w>\": 37558,\n  \"billi\": 7693,\n  \"billie</w>\": 23990,\n  \"billing</w>\": 31797,\n  \"billings</w>\": 43615,\n  \"billion\": 14520,\n  \"billion</w>\": 5729,\n  \"billionaire</w>\": 19475,\n  \"billionaires</w>\": 41590,\n  \"billions</w>\": 20742,\n  \"bills</w>\": 9810,\n  \"billsmafia</w>\": 48845,\n  \"billy\": 15626,\n  \"billy</w>\": 6814,\n  \"bilt\": 44770,\n  \"bilt</w>\": 26654,\n  \"bim\": 46737,\n  \"bim</w>\": 24775,\n  \"bin\": 4849,\n  \"bin</w>\": 5346,\n  \"binance</w>\": 43520,\n  \"binary</w>\": 23497,\n  \"bind</w>\": 44513,\n  \"binder</w>\": 30541,\n  \"binding</w>\": 21287,\n  \"bine</w>\": 34848,\n  \"bing\": 24818,\n  \"bing</w>\": 5665,\n  \"binge</w>\": 22600,\n  \"bingham\": 43785,\n  \"bingham</w>\": 47296,\n  \"bingo</w>\": 18418,\n  \"bino\": 29172,\n  \"bino</w>\": 24313,\n  \"bins</w>\": 26934,\n  \"bint\": 43647,\n  \"bio\": 2830,\n  \"bio</w>\": 5162,\n  \"biode\": 43502,\n  \"biodegradable</w>\": 47740,\n  \"biodiversity</w>\": 17428,\n  \"biof\": 45158,\n  \"biographical</w>\": 49232,\n  \"biography</w>\": 15423,\n  \"biological</w>\": 18821,\n  \"biologist</w>\": 35149,\n  \"biology</w>\": 9796,\n  \"biom\": 13010,\n  \"biomar\": 44549,\n  \"biomass</w>\": 36746,\n  \"biome\": 26218,\n  \"biomed\": 29280,\n  \"biomedical</w>\": 33117,\n  \"bionic</w>\": 46201,\n  \"biop\": 15009,\n  \"biopic</w>\": 27942,\n  \"bios</w>\": 48505,\n  \"biotech</w>\": 22514,\n  \"biotechnology</w>\": 40375,\n  \"biotic</w>\": 33773,\n  \"biotics</w>\": 41371,\n  \"bious</w>\": 31845,\n  \"bipartisan</w>\": 32266,\n  \"bipolar</w>\": 37097,\n  \"bique</w>\": 27809,\n  \"bir\": 921,\n  \"bir</w>\": 16284,\n  \"birch\": 31569,\n  \"birch</w>\": 22907,\n  \"bird\": 6908,\n  \"bird</w>\": 3329,\n  \"birdie</w>\": 29612,\n  \"birdies</w>\": 45618,\n  \"birding</w>\": 15851,\n  \"birdman</w>\": 41915,\n  \"birdphotography</w>\": 47999,\n  \"birds\": 41951,\n  \"birds</w>\": 4337,\n  \"birdwatching</w>\": 33497,\n  \"birk\": 48289,\n  \"birken\": 40661,\n  \"birmin\": 37482,\n  \"birmingham\": 38580,\n  \"birmingham</w>\": 7720,\n  \"birth\": 1128,\n  \"birth</w>\": 5397,\n  \"birthday\": 7381,\n  \"birthday</w>\": 1166,\n  \"birthdays</w>\": 17954,\n  \"birthplace</w>\": 31429,\n  \"biryani</w>\": 46489,\n  \"bis\": 5064,\n  \"bis</w>\": 14461,\n  \"biscu\": 11532,\n  \"biscuit</w>\": 18731,\n  \"biscuits</w>\": 18248,\n  \"bisexual</w>\": 36829,\n  \"bish\": 33690,\n  \"bish</w>\": 31461,\n  \"bishop\": 20625,\n  \"bishop</w>\": 8024,\n  \"bishops</w>\": 31579,\n  \"bison</w>\": 19741,\n  \"bistro</w>\": 21770,\n  \"bit\": 3010,\n  \"bit</w>\": 2010,\n  \"bitcoin\": 30848,\n  \"bitcoin</w>\": 6366,\n  \"bite</w>\": 41613,\n  \"biting</w>\": 23016,\n  \"bits</w>\": 7747,\n  \"bitt</w>\": 39251,\n  \"bius</w>\": 45525,\n  \"bix\": 46579,\n  \"biz\": 8212,\n  \"biz</w>\": 5431,\n  \"biza</w>\": 47013,\n  \"bizar\": 14886,\n  \"bizarre</w>\": 16965,\n  \"bizhour</w>\": 39462,\n  \"bizitalk</w>\": 34929,\n  \"bj\": 4592,\n  \"bj</w>\": 18229,\n  \"bjj</w>\": 27437,\n  \"bjor\": 26525,\n  \"bjp\": 37264,\n  \"bjp</w>\": 6178,\n  \"bk\": 15099,\n  \"bk</w>\": 14083,\n  \"bkk</w>\": 36433,\n  \"bl\": 833,\n  \"bl</w>\": 9467,\n  \"bla\": 2205,\n  \"bla</w>\": 19630,\n  \"blac\": 21008,\n  \"black\": 2025,\n  \"black</w>\": 1449,\n  \"blackand\": 12809,\n  \"blackandwhite\": 23688,\n  \"blackandwhite</w>\": 19506,\n  \"blackandwhitephotography</w>\": 27544,\n  \"blackberry</w>\": 16470,\n  \"blackbird</w>\": 38526,\n  \"blackburn</w>\": 23789,\n  \"blackfish</w>\": 42193,\n  \"blackfriday</w>\": 16445,\n  \"blackgirl\": 43591,\n  \"blackhawks</w>\": 19203,\n  \"blackhistory</w>\": 46982,\n  \"blackhistorymonth</w>\": 20135,\n  \"blacklist</w>\": 30295,\n  \"blacklivesmatter</w>\": 23467,\n  \"blackmail</w>\": 47295,\n  \"blackops</w>\": 43519,\n  \"blackout</w>\": 21733,\n  \"blackpanther</w>\": 36592,\n  \"blackpink</w>\": 20339,\n  \"blackpool</w>\": 21031,\n  \"blacks</w>\": 16351,\n  \"blackwell</w>\": 42642,\n  \"blad</w>\": 36635,\n  \"bladder</w>\": 33593,\n  \"blade</w>\": 10264,\n  \"blades</w>\": 16893,\n  \"blah</w>\": 29212,\n  \"blaine</w>\": 32457,\n  \"blair\": 31824,\n  \"blair</w>\": 14749,\n  \"blake\": 20229,\n  \"blake</w>\": 9579,\n  \"blame</w>\": 10695,\n  \"blamed</w>\": 32906,\n  \"blames</w>\": 27841,\n  \"blaming</w>\": 29287,\n  \"blan\": 4609,\n  \"blanc\": 30936,\n  \"blanc</w>\": 13301,\n  \"blanca</w>\": 40670,\n  \"blanchard</w>\": 40177,\n  \"blanche</w>\": 34875,\n  \"blanchett</w>\": 49378,\n  \"blanco</w>\": 26801,\n  \"bland\": 44372,\n  \"bland</w>\": 30799,\n  \"blank</w>\": 15134,\n  \"blanket</w>\": 12878,\n  \"blankets</w>\": 24042,\n  \"blanks</w>\": 48599,\n  \"blasio</w>\": 35553,\n  \"blasphe\": 36622,\n  \"blast\": 46349,\n  \"blast</w>\": 5964,\n  \"blasted</w>\": 38976,\n  \"blaster</w>\": 36341,\n  \"blasting</w>\": 26178,\n  \"blasts</w>\": 23067,\n  \"blat\": 22048,\n  \"blatant</w>\": 41391,\n  \"blatt</w>\": 39138,\n  \"blau\": 45307,\n  \"blaz\": 43413,\n  \"blaze</w>\": 15497,\n  \"blazer</w>\": 17606,\n  \"blazers</w>\": 16984,\n  \"blazing</w>\": 25267,\n  \"bldg</w>\": 22981,\n  \"ble\": 1447,\n  \"ble</w>\": 1059,\n  \"bleach</w>\": 27034,\n  \"bleak</w>\": 40355,\n  \"bled</w>\": 12006,\n  \"bleed\": 23027,\n  \"bleed</w>\": 24791,\n  \"bleedblue</w>\": 39160,\n  \"bleeding</w>\": 20311,\n  \"bleeds</w>\": 47339,\n  \"blen\": 25651,\n  \"blend</w>\": 10780,\n  \"blended</w>\": 25813,\n  \"blender</w>\": 25066,\n  \"blending</w>\": 34307,\n  \"blends</w>\": 28572,\n  \"bler\": 31305,\n  \"bler</w>\": 11979,\n  \"blers</w>\": 26930,\n  \"bles</w>\": 5763,\n  \"bless\": 9640,\n  \"bless</w>\": 5387,\n  \"blessed</w>\": 4411,\n  \"blessing</w>\": 10729,\n  \"blessings</w>\": 11185,\n  \"bleu</w>\": 30114,\n  \"blew</w>\": 18176,\n  \"bley</w>\": 43176,\n  \"bli\": 1450,\n  \"bli</w>\": 28051,\n  \"blin\": 9678,\n  \"blin</w>\": 5406,\n  \"blind\": 17248,\n  \"blind</w>\": 8351,\n  \"blinded</w>\": 49149,\n  \"blindness</w>\": 38812,\n  \"blinds</w>\": 32449,\n  \"bling\": 39764,\n  \"bling</w>\": 7097,\n  \"blink</w>\": 18976,\n  \"bliss\": 28531,\n  \"bliss</w>\": 12893,\n  \"blissful</w>\": 42145,\n  \"blit\": 39327,\n  \"blitz\": 42151,\n  \"blitz</w>\": 17548,\n  \"blizz\": 13075,\n  \"blizzard</w>\": 16111,\n  \"blk\": 42950,\n  \"blk</w>\": 22872,\n  \"blm</w>\": 30957,\n  \"bln</w>\": 47348,\n  \"blo\": 1204,\n  \"blo</w>\": 25505,\n  \"blob</w>\": 49312,\n  \"bloc</w>\": 30961,\n  \"block\": 4638,\n  \"block</w>\": 4593,\n  \"blockade</w>\": 33489,\n  \"blockbuster</w>\": 19939,\n  \"blockchain</w>\": 6653,\n  \"blocked</w>\": 9106,\n  \"blocker</w>\": 44767,\n  \"blocking</w>\": 12652,\n  \"blocks</w>\": 10113,\n  \"blog\": 16376,\n  \"blog</w>\": 2589,\n  \"blogg\": 33282,\n  \"blogged</w>\": 41380,\n  \"blogger\": 21352,\n  \"blogger</w>\": 7806,\n  \"bloggerrt</w>\": 48898,\n  \"bloggers</w>\": 11627,\n  \"blogging</w>\": 18090,\n  \"blogpost</w>\": 41842,\n  \"blogs</w>\": 16682,\n  \"bloke</w>\": 24384,\n  \"blom\": 48996,\n  \"blon\": 7958,\n  \"blond</w>\": 32426,\n  \"blonde</w>\": 10711,\n  \"blondes</w>\": 45130,\n  \"blondie</w>\": 39236,\n  \"bloo\": 2373,\n  \"blood\": 9231,\n  \"blood</w>\": 3590,\n  \"blooded</w>\": 41946,\n  \"bloodh\": 48480,\n  \"bloods</w>\": 39539,\n  \"bloody\": 38568,\n  \"bloody</w>\": 9468,\n  \"bloom\": 7311,\n  \"bloom</w>\": 10257,\n  \"bloomberg\": 43109,\n  \"bloomberg</w>\": 21238,\n  \"bloomfield</w>\": 40342,\n  \"blooming\": 45175,\n  \"blooming</w>\": 19266,\n  \"bloomington</w>\": 34731,\n  \"blooms</w>\": 21439,\n  \"bloss\": 10017,\n  \"blossom</w>\": 14472,\n  \"blossoms</w>\": 21916,\n  \"blot</w>\": 41710,\n  \"blou\": 44506,\n  \"blouse</w>\": 23525,\n  \"blow\": 15230,\n  \"blow</w>\": 10211,\n  \"blower</w>\": 25832,\n  \"blowing</w>\": 12087,\n  \"blown</w>\": 11848,\n  \"blowout</w>\": 34857,\n  \"blows</w>\": 21063,\n  \"blr</w>\": 47250,\n  \"bls</w>\": 39458,\n  \"blu\": 1263,\n  \"blu</w>\": 10273,\n  \"blue\": 3829,\n  \"blue</w>\": 1746,\n  \"bluebells</w>\": 47150,\n  \"blueberries</w>\": 29551,\n  \"blueberry</w>\": 18251,\n  \"bluebird</w>\": 40747,\n  \"bluec\": 43194,\n  \"bluef\": 41174,\n  \"bluegrass</w>\": 26241,\n  \"bluejays</w>\": 18684,\n  \"blueprint</w>\": 30594,\n  \"blues\": 17566,\n  \"blues</w>\": 5159,\n  \"blueslyrix</w>\": 47068,\n  \"bluet\": 13469,\n  \"bluetooth</w>\": 14052,\n  \"bluewave</w>\": 40025,\n  \"bluff</w>\": 27232,\n  \"bluffs</w>\": 48844,\n  \"blum</w>\": 34818,\n  \"blumen\": 38714,\n  \"blun\": 34472,\n  \"blunt</w>\": 19305,\n  \"blur\": 12102,\n  \"blur</w>\": 27976,\n  \"bluray</w>\": 36818,\n  \"blurred</w>\": 38013,\n  \"blurry</w>\": 21977,\n  \"blush</w>\": 22889,\n  \"blvd</w>\": 12578,\n  \"bly\": 20930,\n  \"bly</w>\": 4426,\n  \"bm\": 4773,\n  \"bm</w>\": 15916,\n  \"bma</w>\": 42573,\n  \"bmc</w>\": 27807,\n  \"bmi</w>\": 40642,\n  \"bmo</w>\": 39083,\n  \"bms</w>\": 34074,\n  \"bmw\": 26637,\n  \"bmw</w>\": 7869,\n  \"bmx</w>\": 22535,\n  \"bn\": 10496,\n  \"bn</w>\": 7992,\n  \"bnb</w>\": 20010,\n  \"bnha</w>\": 49336,\n  \"bnp</w>\": 47910,\n  \"bnw</w>\": 35903,\n  \"bo\": 647,\n  \"bo</w>\": 2525,\n  \"boa</w>\": 14732,\n  \"boar\": 7837,\n  \"boar</w>\": 35473,\n  \"board\": 10419,\n  \"board</w>\": 1972,\n  \"boarded</w>\": 43052,\n  \"boarder</w>\": 37414,\n  \"boardgame</w>\": 47829,\n  \"boardgames</w>\": 32646,\n  \"boarding</w>\": 10086,\n  \"boardroom</w>\": 47937,\n  \"boards</w>\": 7963,\n  \"boardwalk</w>\": 29043,\n  \"boast</w>\": 44467,\n  \"boasts</w>\": 30309,\n  \"boat\": 12426,\n  \"boat</w>\": 4440,\n  \"boath\": 45461,\n  \"boating</w>\": 21951,\n  \"boats</w>\": 10080,\n  \"boatsales</w>\": 46244,\n  \"bob\": 8444,\n  \"bob</w>\": 4423,\n  \"boba</w>\": 39948,\n  \"bobb\": 16891,\n  \"bobble</w>\": 38796,\n  \"bobblehead</w>\": 33451,\n  \"bobby\": 17847,\n  \"bobby</w>\": 7816,\n  \"bobc\": 26153,\n  \"bobcat</w>\": 37896,\n  \"bobcats</w>\": 27568,\n  \"bobo</w>\": 38939,\n  \"bobs</w>\": 45533,\n  \"boc\": 27307,\n  \"boc</w>\": 39042,\n  \"boca</w>\": 26094,\n  \"bock</w>\": 24961,\n  \"bod\": 17904,\n  \"bod</w>\": 26340,\n  \"boda</w>\": 42030,\n  \"bode\": 28452,\n  \"bode</w>\": 40429,\n  \"bodega</w>\": 47350,\n  \"bodied</w>\": 36892,\n  \"bodies</w>\": 9799,\n  \"bodily</w>\": 49119,\n  \"body\": 7132,\n  \"body</w>\": 1774,\n  \"bodybuilding</w>\": 24538,\n  \"bodyguard</w>\": 35565,\n  \"boe\": 23476,\n  \"boe</w>\": 21773,\n  \"boeh\": 38002,\n  \"boehner</w>\": 44599,\n  \"boeing\": 48135,\n  \"boeing</w>\": 11857,\n  \"boer\": 44889,\n  \"boer</w>\": 40768,\n  \"bog\": 23426,\n  \"bog</w>\": 28318,\n  \"bogo</w>\": 35769,\n  \"bogota</w>\": 47059,\n  \"bogus</w>\": 42907,\n  \"boh\": 43238,\n  \"bohe\": 40541,\n  \"bohemi\": 21552,\n  \"bohemian</w>\": 25753,\n  \"boho</w>\": 25444,\n  \"boi\": 37129,\n  \"boi</w>\": 12673,\n  \"boil</w>\": 31332,\n  \"boiled</w>\": 23886,\n  \"boiler\": 28212,\n  \"boiler</w>\": 25615,\n  \"boiling</w>\": 32019,\n  \"bois\": 47742,\n  \"bois</w>\": 21640,\n  \"boise</w>\": 23304,\n  \"bok\": 26671,\n  \"bok</w>\": 15289,\n  \"boko</w>\": 30929,\n  \"boks</w>\": 40216,\n  \"bol\": 2860,\n  \"bol</w>\": 8413,\n  \"bola</w>\": 12840,\n  \"bold\": 26975,\n  \"bold</w>\": 8911,\n  \"boldand\": 48413,\n  \"boldly</w>\": 44778,\n  \"boli\": 12722,\n  \"bolic</w>\": 27343,\n  \"bolivia</w>\": 28628,\n  \"bollah</w>\": 36336,\n  \"bolly\": 25302,\n  \"bollywood\": 32448,\n  \"bollywood</w>\": 9604,\n  \"bolo</w>\": 40236,\n  \"bolog\": 22818,\n  \"bologna</w>\": 27513,\n  \"bolster</w>\": 47304,\n  \"bolt</w>\": 13131,\n  \"bolton\": 48757,\n  \"bolton</w>\": 16598,\n  \"bolts</w>\": 26028,\n  \"bom\": 3012,\n  \"bom</w>\": 19469,\n  \"bomb\": 18091,\n  \"bomb</w>\": 6331,\n  \"bombar\": 25544,\n  \"bombardier</w>\": 42700,\n  \"bombay\": 48602,\n  \"bombay</w>\": 23890,\n  \"bombed</w>\": 24542,\n  \"bomber</w>\": 15436,\n  \"bombers</w>\": 21786,\n  \"bombing</w>\": 14475,\n  \"bombings</w>\": 43236,\n  \"bombs</w>\": 14410,\n  \"bombshell</w>\": 36340,\n  \"bon\": 1871,\n  \"bon</w>\": 4216,\n  \"bona</w>\": 33342,\n  \"bonanza</w>\": 40304,\n  \"bond\": 37022,\n  \"bond</w>\": 6826,\n  \"bonded</w>\": 37390,\n  \"bondi</w>\": 40092,\n  \"bonding</w>\": 19609,\n  \"bonds</w>\": 15786,\n  \"bone\": 22502,\n  \"bone</w>\": 6195,\n  \"bones</w>\": 9476,\n  \"bonfire</w>\": 23151,\n  \"bongo</w>\": 47519,\n  \"boni\": 32269,\n  \"boni</w>\": 46356,\n  \"bonita</w>\": 42896,\n  \"bonjour</w>\": 33176,\n  \"bonkers</w>\": 39865,\n  \"bonn</w>\": 38969,\n  \"bonnar\": 47191,\n  \"bonnaroo</w>\": 48777,\n  \"bonne</w>\": 25844,\n  \"bonnet</w>\": 30636,\n  \"bonnie</w>\": 18555,\n  \"bono</w>\": 24476,\n  \"bons</w>\": 42883,\n  \"bonsai</w>\": 44129,\n  \"bonus</w>\": 8164,\n  \"bonuses</w>\": 35144,\n  \"boo\": 824,\n  \"boo</w>\": 7317,\n  \"boogie</w>\": 22639,\n  \"book\": 2828,\n  \"book</w>\": 1116,\n  \"bookboost</w>\": 31257,\n  \"bookclub</w>\": 34438,\n  \"bookday</w>\": 26327,\n  \"booked</w>\": 12584,\n  \"booker</w>\": 21302,\n  \"bookfest</w>\": 39381,\n  \"booking</w>\": 10145,\n  \"bookings</w>\": 18345,\n  \"booklet</w>\": 27405,\n  \"bookmark</w>\": 33596,\n  \"bookof\": 45629,\n  \"bookreview</w>\": 27362,\n  \"books\": 44382,\n  \"books</w>\": 2161,\n  \"bookshelf</w>\": 34821,\n  \"bookshop</w>\": 24705,\n  \"bookstore</w>\": 17999,\n  \"bookstores</w>\": 46416,\n  \"bookworm</w>\": 20743,\n  \"boom\": 9609,\n  \"boom</w>\": 7121,\n  \"boomer\": 33819,\n  \"boomer</w>\": 31766,\n  \"boomers</w>\": 37988,\n  \"booming</w>\": 33487,\n  \"boon\": 24979,\n  \"boon</w>\": 35821,\n  \"boone</w>\": 23453,\n  \"boop</w>\": 45047,\n  \"boost\": 44639,\n  \"boost</w>\": 6260,\n  \"boosted</w>\": 37631,\n  \"booster</w>\": 20877,\n  \"boosters</w>\": 46859,\n  \"boosting</w>\": 28480,\n  \"boosts</w>\": 29247,\n  \"boot\": 10843,\n  \"boot</w>\": 8087,\n  \"bootcamp</w>\": 22051,\n  \"booted</w>\": 42564,\n  \"booth\": 47895,\n  \"booth</w>\": 3971,\n  \"booths</w>\": 32653,\n  \"booties</w>\": 46188,\n  \"bootleg</w>\": 38139,\n  \"boots</w>\": 7319,\n  \"booze</w>\": 24341,\n  \"bop</w>\": 19720,\n  \"bor\": 1141,\n  \"bor</w>\": 15093,\n  \"bora</w>\": 24736,\n  \"bord</w>\": 36891,\n  \"bordeaux</w>\": 22009,\n  \"border\": 16304,\n  \"border</w>\": 6177,\n  \"borderlands</w>\": 38676,\n  \"borders</w>\": 13900,\n  \"bore\": 14084,\n  \"bore</w>\": 24638,\n  \"bored</w>\": 8933,\n  \"boredom</w>\": 31460,\n  \"boretum</w>\": 38902,\n  \"borg</w>\": 14770,\n  \"borgh\": 17180,\n  \"boring</w>\": 12519,\n  \"boris\": 31212,\n  \"boris</w>\": 15704,\n  \"borisjohnson</w>\": 44481,\n  \"born\": 17695,\n  \"born</w>\": 2683,\n  \"borne\": 42910,\n  \"borne</w>\": 9328,\n  \"borneo</w>\": 33332,\n  \"bornon\": 41811,\n  \"bornonthisday</w>\": 42757,\n  \"boro\": 26796,\n  \"boro</w>\": 7974,\n  \"borough\": 22761,\n  \"borough</w>\": 6203,\n  \"borrow</w>\": 22293,\n  \"borrowed</w>\": 28224,\n  \"borrowing</w>\": 41045,\n  \"borussia</w>\": 36764,\n  \"bos\": 14885,\n  \"bos</w>\": 9644,\n  \"bosa</w>\": 46946,\n  \"bosch\": 42009,\n  \"bosch</w>\": 19466,\n  \"bosco</w>\": 36960,\n  \"bose</w>\": 23142,\n  \"bosh</w>\": 42244,\n  \"bosni\": 42924,\n  \"bosnia</w>\": 31396,\n  \"boss\": 17935,\n  \"boss</w>\": 4206,\n  \"bosses</w>\": 23906,\n  \"boston\": 11540,\n  \"boston</w>\": 4399,\n  \"bostonmarathon</w>\": 44533,\n  \"bot\": 4136,\n  \"bot</w>\": 6947,\n  \"botan\": 12554,\n  \"botanic</w>\": 32560,\n  \"botanical</w>\": 21026,\n  \"botany</w>\": 22612,\n  \"botd</w>\": 34451,\n  \"both\": 36575,\n  \"both</w>\": 2212,\n  \"bother</w>\": 21125,\n  \"bothered</w>\": 27997,\n  \"botox</w>\": 43449,\n  \"bots</w>\": 13721,\n  \"botswana</w>\": 27584,\n  \"bott\": 3520,\n  \"bott</w>\": 37225,\n  \"bottle\": 37306,\n  \"bottle</w>\": 5392,\n  \"bottled</w>\": 29331,\n  \"bottlen\": 46439,\n  \"bottles</w>\": 9754,\n  \"bottling</w>\": 42006,\n  \"bottom\": 32314,\n  \"bottom</w>\": 5931,\n  \"bottoms</w>\": 31524,\n  \"bou\": 3728,\n  \"bou</w>\": 23165,\n  \"bouchard</w>\": 47930,\n  \"boudo\": 48827,\n  \"bought</w>\": 4142,\n  \"boul\": 24830,\n  \"boulder</w>\": 18260,\n  \"boule\": 17652,\n  \"boulevard</w>\": 19504,\n  \"boun\": 5993,\n  \"bounce</w>\": 14316,\n  \"bouncing</w>\": 32060,\n  \"bouncy</w>\": 43415,\n  \"bound\": 15140,\n  \"bound</w>\": 4567,\n  \"boundaries</w>\": 18690,\n  \"boundary</w>\": 21344,\n  \"bounds</w>\": 37469,\n  \"bounty</w>\": 21142,\n  \"bouquet</w>\": 20961,\n  \"bour\": 2934,\n  \"bour</w>\": 35486,\n  \"bourbon\": 48118,\n  \"bourbon</w>\": 14652,\n  \"bourdain</w>\": 48095,\n  \"bourg</w>\": 20690,\n  \"bourgeo\": 45672,\n  \"bourn</w>\": 39143,\n  \"bourne\": 13789,\n  \"bourne</w>\": 5192,\n  \"bournemouth</w>\": 20911,\n  \"bout\": 19982,\n  \"bout</w>\": 8123,\n  \"bouti\": 10926,\n  \"boutique</w>\": 12179,\n  \"bow\": 2297,\n  \"bow</w>\": 4040,\n  \"bowden</w>\": 48538,\n  \"bowed</w>\": 49130,\n  \"bowel</w>\": 36880,\n  \"bowen</w>\": 25368,\n  \"bower</w>\": 40414,\n  \"bowers</w>\": 42238,\n  \"bowie</w>\": 13036,\n  \"bowing</w>\": 46398,\n  \"bowl\": 26719,\n  \"bowl</w>\": 3814,\n  \"bowled</w>\": 39987,\n  \"bowler</w>\": 25528,\n  \"bowlers</w>\": 42632,\n  \"bowles</w>\": 41611,\n  \"bowling</w>\": 10390,\n  \"bowls</w>\": 17787,\n  \"bowman</w>\": 22052,\n  \"bows</w>\": 17000,\n  \"bowser</w>\": 38234,\n  \"bowski</w>\": 48311,\n  \"box\": 2774,\n  \"box</w>\": 2063,\n  \"boxed</w>\": 24190,\n  \"boxer\": 40394,\n  \"boxer</w>\": 15363,\n  \"boxers</w>\": 31019,\n  \"boxes</w>\": 8350,\n  \"boxing\": 33669,\n  \"boxing</w>\": 5554,\n  \"boy\": 2927,\n  \"boy</w>\": 1876,\n  \"boyband</w>\": 31568,\n  \"boyce</w>\": 44480,\n  \"boycot\": 46208,\n  \"boycott\": 31615,\n  \"boycott</w>\": 19559,\n  \"boyd</w>\": 18295,\n  \"boyfriend</w>\": 7328,\n  \"boyfriends</w>\": 36541,\n  \"boyle</w>\": 22802,\n  \"boys\": 25223,\n  \"boys</w>\": 2034,\n  \"boyz</w>\": 16152,\n  \"bp\": 23410,\n  \"bp</w>\": 11558,\n  \"bpa</w>\": 43855,\n  \"bpd</w>\": 48587,\n  \"bpl</w>\": 28901,\n  \"bpm</w>\": 40338,\n  \"bps</w>\": 37794,\n  \"br\": 711,\n  \"br</w>\": 7532,\n  \"bra\": 1195,\n  \"bra</w>\": 5860,\n  \"brac\": 6663,\n  \"brace\": 8376,\n  \"brace</w>\": 9183,\n  \"bracelet</w>\": 8969,\n  \"bracelets</w>\": 20027,\n  \"braces</w>\": 19249,\n  \"brack\": 25676,\n  \"bracket</w>\": 14780,\n  \"brackets</w>\": 36183,\n  \"brad\": 4848,\n  \"brad</w>\": 9405,\n  \"bradbury</w>\": 45097,\n  \"braden</w>\": 46842,\n  \"bradford</w>\": 15062,\n  \"bradley\": 31905,\n  \"bradley</w>\": 10952,\n  \"brador</w>\": 24062,\n  \"bradshaw</w>\": 37556,\n  \"brady\": 42494,\n  \"brady</w>\": 11117,\n  \"brae\": 42874,\n  \"brae</w>\": 40040,\n  \"brag</w>\": 30110,\n  \"bragg</w>\": 38545,\n  \"bragging</w>\": 38199,\n  \"brah\": 20276,\n  \"brahms</w>\": 45114,\n  \"brai\": 25048,\n  \"braid</w>\": 31067,\n  \"braided</w>\": 39997,\n  \"braids</w>\": 34221,\n  \"brain\": 9454,\n  \"brain</w>\": 4812,\n  \"brains</w>\": 17129,\n  \"brainstorming</w>\": 36607,\n  \"braised</w>\": 28363,\n  \"brake</w>\": 14937,\n  \"brakes</w>\": 23456,\n  \"bral</w>\": 31309,\n  \"bram\": 14815,\n  \"bram</w>\": 39456,\n  \"brampton</w>\": 35124,\n  \"bran\": 3684,\n  \"bran</w>\": 28348,\n  \"brance\": 36072,\n  \"brance</w>\": 15413,\n  \"branch</w>\": 7998,\n  \"branches</w>\": 15843,\n  \"brand\": 3910,\n  \"brand</w>\": 2896,\n  \"branded</w>\": 18097,\n  \"brandi</w>\": 41003,\n  \"branding</w>\": 10841,\n  \"brando</w>\": 41892,\n  \"brandon\": 20423,\n  \"brandon</w>\": 9166,\n  \"brands</w>\": 8681,\n  \"brandt</w>\": 22552,\n  \"brandy</w>\": 26232,\n  \"brane</w>\": 32340,\n  \"branson</w>\": 28280,\n  \"brant\": 28951,\n  \"brant</w>\": 47592,\n  \"braries</w>\": 46377,\n  \"brary</w>\": 24520,\n  \"bras</w>\": 22611,\n  \"brasil</w>\": 18991,\n  \"brass\": 24348,\n  \"brass</w>\": 11655,\n  \"brat\": 26717,\n  \"brat</w>\": 26631,\n  \"brate</w>\": 41864,\n  \"braun\": 39129,\n  \"braun</w>\": 29309,\n  \"brave\": 25461,\n  \"brave</w>\": 7769,\n  \"braved</w>\": 47663,\n  \"bravely</w>\": 42303,\n  \"bravery</w>\": 25831,\n  \"braves</w>\": 14422,\n  \"braving</w>\": 43258,\n  \"bravo\": 38613,\n  \"bravo</w>\": 13006,\n  \"braw\": 37871,\n  \"brawl</w>\": 26066,\n  \"braxton</w>\": 37451,\n  \"bray\": 26256,\n  \"bray</w>\": 22993,\n  \"braz\": 4625,\n  \"brazil\": 47459,\n  \"brazil</w>\": 6305,\n  \"brazili\": 45697,\n  \"brazilian</w>\": 12111,\n  \"brb</w>\": 25316,\n  \"brc</w>\": 40393,\n  \"bre\": 887,\n  \"bre</w>\": 7782,\n  \"brea\": 7318,\n  \"brea</w>\": 46538,\n  \"breach</w>\": 21363,\n  \"breaches</w>\": 45173,\n  \"bread\": 18886,\n  \"bread</w>\": 5066,\n  \"breads</w>\": 43064,\n  \"break\": 2206,\n  \"break</w>\": 2568,\n  \"breakable</w>\": 30691,\n  \"breakaway</w>\": 42732,\n  \"breakdown</w>\": 14519,\n  \"breaker</w>\": 14814,\n  \"breakers</w>\": 22270,\n  \"breakfa\": 45931,\n  \"breakfast\": 30210,\n  \"breakfast</w>\": 3290,\n  \"breaking\": 14698,\n  \"breaking</w>\": 2755,\n  \"breakingbad</w>\": 38032,\n  \"breakingnews</w>\": 23837,\n  \"breakout</w>\": 16752,\n  \"breaks</w>\": 7263,\n  \"breakthrough</w>\": 18802,\n  \"breakup</w>\": 38931,\n  \"breast\": 12930,\n  \"breast</w>\": 9475,\n  \"breastcancer\": 40813,\n  \"breastcancer</w>\": 30065,\n  \"breastfeeding</w>\": 29033,\n  \"breasts</w>\": 37637,\n  \"breath\": 9508,\n  \"breath</w>\": 9576,\n  \"breathe</w>\": 11364,\n  \"breathing</w>\": 14959,\n  \"breathtaking</w>\": 14709,\n  \"brecht</w>\": 34622,\n  \"breck\": 44598,\n  \"bred\": 46929,\n  \"bred</w>\": 16008,\n  \"bree\": 7892,\n  \"bree</w>\": 37138,\n  \"breed\": 28030,\n  \"breed</w>\": 13791,\n  \"breeders</w>\": 37472,\n  \"breeding</w>\": 16544,\n  \"breeds</w>\": 29021,\n  \"breen</w>\": 48013,\n  \"brees</w>\": 46721,\n  \"breeze</w>\": 13125,\n  \"breezy</w>\": 21451,\n  \"breit\": 23864,\n  \"breitbart</w>\": 37926,\n  \"brek\": 35494,\n  \"bremen</w>\": 39861,\n  \"bren\": 5209,\n  \"brenda</w>\": 23786,\n  \"brendan\": 35134,\n  \"brendan</w>\": 15414,\n  \"brendon</w>\": 36756,\n  \"brennan</w>\": 22372,\n  \"brenner</w>\": 42941,\n  \"brent\": 31439,\n  \"brent</w>\": 16355,\n  \"brentwood</w>\": 33108,\n  \"brero</w>\": 47781,\n  \"bres</w>\": 32561,\n  \"bret\": 38020,\n  \"bret</w>\": 32548,\n  \"brethren</w>\": 43134,\n  \"breton</w>\": 32290,\n  \"brett\": 22591,\n  \"brett</w>\": 12394,\n  \"brev</w>\": 42882,\n  \"brevi\": 39475,\n  \"brew\": 5048,\n  \"brew</w>\": 7253,\n  \"brewco</w>\": 33582,\n  \"brewed</w>\": 23238,\n  \"brewer</w>\": 20756,\n  \"breweries</w>\": 35277,\n  \"brewers</w>\": 17618,\n  \"brewery</w>\": 8850,\n  \"brewing</w>\": 8275,\n  \"brewingco</w>\": 45155,\n  \"brews</w>\": 21663,\n  \"brewster</w>\": 40274,\n  \"brex\": 22726,\n  \"brexit\": 27666,\n  \"brexit</w>\": 5801,\n  \"brgy</w>\": 35983,\n  \"bri\": 1036,\n  \"bri</w>\": 18636,\n  \"bria</w>\": 35890,\n  \"brian\": 9824,\n  \"brian</w>\": 4989,\n  \"brianna</w>\": 32308,\n  \"briar</w>\": 46119,\n  \"bribe</w>\": 40042,\n  \"bribery</w>\": 41792,\n  \"bric\": 27055,\n  \"brice</w>\": 40190,\n  \"brick\": 13937,\n  \"brick</w>\": 9518,\n  \"bricks</w>\": 21029,\n  \"brics</w>\": 48196,\n  \"brid\": 16995,\n  \"bridal\": 36875,\n  \"bridal</w>\": 14284,\n  \"bride\": 18342,\n  \"bride</w>\": 8964,\n  \"brides</w>\": 18067,\n  \"bridesma\": 28356,\n  \"bridesmaid</w>\": 43399,\n  \"bridesmaids</w>\": 47754,\n  \"bridg\": 20623,\n  \"bridge\": 8647,\n  \"bridge</w>\": 2465,\n  \"bridgeport</w>\": 45201,\n  \"bridges</w>\": 11811,\n  \"bridget</w>\": 27073,\n  \"bridgewater</w>\": 38732,\n  \"bridging</w>\": 38109,\n  \"brie</w>\": 26622,\n  \"brief\": 9435,\n  \"brief</w>\": 8954,\n  \"briefed</w>\": 47326,\n  \"briefing</w>\": 12991,\n  \"briefly</w>\": 26980,\n  \"briefs</w>\": 29557,\n  \"brien</w>\": 13504,\n  \"brier</w>\": 43995,\n  \"brig\": 11081,\n  \"briga\": 46448,\n  \"brigade</w>\": 16032,\n  \"briggs</w>\": 28108,\n  \"brigh\": 6710,\n  \"bright\": 10383,\n  \"bright</w>\": 4852,\n  \"brighten</w>\": 18208,\n  \"brightening</w>\": 43929,\n  \"brighter</w>\": 18507,\n  \"brightest</w>\": 26159,\n  \"brightly</w>\": 36298,\n  \"brightness</w>\": 42280,\n  \"brighton\": 28416,\n  \"brighton</w>\": 9470,\n  \"brigitte</w>\": 44421,\n  \"brill\": 27342,\n  \"brill</w>\": 28601,\n  \"brilli\": 3821,\n  \"brilliance</w>\": 28146,\n  \"brilliant</w>\": 4106,\n  \"brilliantly</w>\": 26803,\n  \"brin\": 25620,\n  \"bring\": 11596,\n  \"bring</w>\": 2430,\n  \"bringback\": 28969,\n  \"bringbackour\": 45403,\n  \"bringing</w>\": 4777,\n  \"brings</w>\": 5138,\n  \"brink\": 39296,\n  \"brink</w>\": 28796,\n  \"brioche</w>\": 45818,\n  \"bris\": 9385,\n  \"bris</w>\": 15783,\n  \"brisban\": 30431,\n  \"brisbane\": 42932,\n  \"brisbane</w>\": 12407,\n  \"brisk</w>\": 43646,\n  \"brisket</w>\": 31920,\n  \"bristol\": 18159,\n  \"bristol</w>\": 8010,\n  \"brit\": 2318,\n  \"brit</w>\": 20066,\n  \"britain\": 40802,\n  \"britain</w>\": 6272,\n  \"britanni\": 31373,\n  \"britannia</w>\": 36188,\n  \"brite</w>\": 33827,\n  \"briti\": 8155,\n  \"british\": 8651,\n  \"british</w>\": 3504,\n  \"britishmuseum</w>\": 41858,\n  \"britney\": 37192,\n  \"britney</w>\": 21853,\n  \"britneyspears</w>\": 42990,\n  \"brits</w>\": 21832,\n  \"britt\": 10811,\n  \"britt</w>\": 25976,\n  \"brittany\": 38187,\n  \"brittany</w>\": 18818,\n  \"britton</w>\": 37422,\n  \"brium</w>\": 46079,\n  \"brixton</w>\": 30056,\n  \"bro\": 927,\n  \"bro</w>\": 4410,\n  \"broad\": 3491,\n  \"broad</w>\": 12623,\n  \"broadband</w>\": 21050,\n  \"broadcast</w>\": 8967,\n  \"broadcaster</w>\": 29005,\n  \"broadcasting</w>\": 14403,\n  \"broadcasts</w>\": 46742,\n  \"broader</w>\": 36029,\n  \"broadway\": 34599,\n  \"broadway</w>\": 9092,\n  \"broc\": 15587,\n  \"broccoli</w>\": 19094,\n  \"broch\": 21419,\n  \"brochure</w>\": 25275,\n  \"brock\": 14841,\n  \"brock</w>\": 16745,\n  \"brodie</w>\": 42150,\n  \"brody</w>\": 29608,\n  \"broke\": 42165,\n  \"broke</w>\": 6509,\n  \"broken\": 26126,\n  \"broken</w>\": 5107,\n  \"broker\": 34032,\n  \"broker</w>\": 20449,\n  \"brokerage</w>\": 41327,\n  \"brokers</w>\": 28271,\n  \"brom\": 18972,\n  \"brom</w>\": 33296,\n  \"bromance</w>\": 35353,\n  \"bromley</w>\": 35715,\n  \"bron\": 4011,\n  \"bron</w>\": 10243,\n  \"bronco\": 43488,\n  \"bronco</w>\": 34370,\n  \"broncos</w>\": 12516,\n  \"bronson</w>\": 37042,\n  \"bronte</w>\": 48936,\n  \"bronx\": 48310,\n  \"bronx</w>\": 17183,\n  \"brony</w>\": 21084,\n  \"bronze</w>\": 8459,\n  \"broo\": 5204,\n  \"brooch</w>\": 21207,\n  \"brook\": 4782,\n  \"brook</w>\": 7322,\n  \"brooke\": 28576,\n  \"brooke</w>\": 12549,\n  \"brookes</w>\": 39707,\n  \"brooklyn\": 23253,\n  \"brooklyn</w>\": 6983,\n  \"brooks\": 42779,\n  \"brooks</w>\": 9991,\n  \"broom\": 32046,\n  \"broom</w>\": 28008,\n  \"broome</w>\": 49335,\n  \"bros</w>\": 7776,\n  \"broth</w>\": 29994,\n  \"brotha</w>\": 33974,\n  \"brother\": 12697,\n  \"brother</w>\": 3157,\n  \"brotherhood</w>\": 19059,\n  \"brothers</w>\": 4548,\n  \"brou\": 27874,\n  \"brough</w>\": 21033,\n  \"brought</w>\": 4222,\n  \"brov\": 42881,\n  \"brow\": 6547,\n  \"brow</w>\": 15895,\n  \"broward</w>\": 34719,\n  \"brown\": 6315,\n  \"brown</w>\": 2866,\n  \"browne</w>\": 28440,\n  \"brownie</w>\": 23045,\n  \"brownies</w>\": 22312,\n  \"browning</w>\": 32241,\n  \"browns</w>\": 14051,\n  \"brows</w>\": 14998,\n  \"browse</w>\": 19060,\n  \"browser</w>\": 19768,\n  \"browsing</w>\": 29318,\n  \"brox</w>\": 43539,\n  \"brs</w>\": 47485,\n  \"brt</w>\": 46936,\n  \"bru\": 1698,\n  \"bru</w>\": 31028,\n  \"bruce\": 21223,\n  \"bruce</w>\": 7085,\n  \"bruh</w>\": 17575,\n  \"bruins</w>\": 14736,\n  \"bruise</w>\": 48048,\n  \"bruised</w>\": 46502,\n  \"brum\": 23862,\n  \"brum</w>\": 28078,\n  \"brun\": 6870,\n  \"brunch</w>\": 9113,\n  \"brune\": 29057,\n  \"brunei</w>\": 41898,\n  \"brunette</w>\": 35528,\n  \"bruno</w>\": 14568,\n  \"brunomars</w>\": 41156,\n  \"brunswick</w>\": 24012,\n  \"brush\": 27969,\n  \"brush</w>\": 8594,\n  \"brushed</w>\": 30298,\n  \"brushes</w>\": 21550,\n  \"brushing</w>\": 35072,\n  \"brussels</w>\": 11020,\n  \"brut</w>\": 39499,\n  \"brutal\": 42144,\n  \"brutal</w>\": 14556,\n  \"brutality</w>\": 31348,\n  \"brutally</w>\": 28132,\n  \"brute</w>\": 47552,\n  \"brux\": 49093,\n  \"bry\": 6587,\n  \"bry</w>\": 28228,\n  \"bryan\": 16134,\n  \"bryan</w>\": 10412,\n  \"bryant</w>\": 12256,\n  \"bryce</w>\": 19895,\n  \"bryn\": 36569,\n  \"bryn</w>\": 42877,\n  \"bryson</w>\": 38990,\n  \"bs\": 11783,\n  \"bs</w>\": 1329,\n  \"bsa</w>\": 46619,\n  \"bsb</w>\": 23070,\n  \"bsbi\": 41728,\n  \"bsbibotany</w>\": 42086,\n  \"bsc</w>\": 32031,\n  \"bsd</w>\": 41848,\n  \"bse</w>\": 46341,\n  \"bsf</w>\": 48314,\n  \"bsgo</w>\": 48474,\n  \"bsp</w>\": 47977,\n  \"bst</w>\": 19698,\n  \"bsu</w>\": 46385,\n  \"bt\": 3317,\n  \"bt</w>\": 4205,\n  \"btc</w>\": 10315,\n  \"btcc</w>\": 30759,\n  \"btn</w>\": 44681,\n  \"bto</w>\": 35516,\n  \"btob</w>\": 29379,\n  \"btr</w>\": 39767,\n  \"bts\": 15154,\n  \"bts</w>\": 4007,\n  \"btsarmy</w>\": 30302,\n  \"btsbbmas</w>\": 35297,\n  \"btsx\": 44971,\n  \"btv</w>\": 38541,\n  \"btw</w>\": 9520,\n  \"btwn</w>\": 28284,\n  \"bu\": 609,\n  \"bu</w>\": 5831,\n  \"bub\": 27704,\n  \"bub</w>\": 33158,\n  \"bubb\": 9739,\n  \"bubba</w>\": 28149,\n  \"bubble\": 28687,\n  \"bubble</w>\": 10799,\n  \"bubblegum</w>\": 48078,\n  \"bubbles</w>\": 17648,\n  \"bubbly</w>\": 31034,\n  \"buc\": 8207,\n  \"buccane\": 32830,\n  \"buccaneers</w>\": 38058,\n  \"buch\": 22623,\n  \"bucha</w>\": 43582,\n  \"buchan\": 27237,\n  \"buchanan</w>\": 28975,\n  \"bucharest</w>\": 37013,\n  \"buck\": 6061,\n  \"buck</w>\": 11433,\n  \"bucket\": 22596,\n  \"bucket</w>\": 10498,\n  \"bucketlist</w>\": 30778,\n  \"buckets</w>\": 27168,\n  \"buckeye</w>\": 34549,\n  \"buckeyes</w>\": 30741,\n  \"buckingham</w>\": 28736,\n  \"buckle</w>\": 21948,\n  \"buckley</w>\": 25905,\n  \"bucks</w>\": 6103,\n  \"bucky</w>\": 35916,\n  \"bucs</w>\": 20011,\n  \"bud\": 2942,\n  \"bud</w>\": 10737,\n  \"buda\": 18520,\n  \"buda</w>\": 49012,\n  \"budapest</w>\": 19202,\n  \"budd\": 7296,\n  \"buddha</w>\": 13981,\n  \"buddhism</w>\": 23744,\n  \"buddhist</w>\": 18697,\n  \"buddies</w>\": 14543,\n  \"budding</w>\": 31992,\n  \"buddy\": 40948,\n  \"buddy</w>\": 6557,\n  \"budge\": 32005,\n  \"budget\": 46758,\n  \"budget</w>\": 5639,\n  \"budgeting</w>\": 43789,\n  \"budgets</w>\": 36419,\n  \"buds</w>\": 14665,\n  \"budweiser</w>\": 40900,\n  \"buen\": 15640,\n  \"buena</w>\": 30876,\n  \"buenas</w>\": 48529,\n  \"bueno</w>\": 46202,\n  \"buenos</w>\": 26055,\n  \"buf\": 44417,\n  \"buff\": 5456,\n  \"buff</w>\": 21416,\n  \"buffal\": 25836,\n  \"buffalo\": 31231,\n  \"buffalo</w>\": 8054,\n  \"buffalob\": 38831,\n  \"buffalobills</w>\": 44352,\n  \"buffe\": 13724,\n  \"buffer</w>\": 33050,\n  \"buffet</w>\": 17829,\n  \"buffett</w>\": 34081,\n  \"buffs</w>\": 28906,\n  \"buffy</w>\": 33356,\n  \"bug\": 14453,\n  \"bug</w>\": 8162,\n  \"bugatti</w>\": 35451,\n  \"buggy</w>\": 28963,\n  \"bugs</w>\": 13850,\n  \"buh</w>\": 31406,\n  \"buhari</w>\": 14661,\n  \"buick</w>\": 22000,\n  \"buil\": 1354,\n  \"build\": 22739,\n  \"build</w>\": 3289,\n  \"builder</w>\": 14474,\n  \"builders</w>\": 17694,\n  \"building\": 21206,\n  \"building</w>\": 2307,\n  \"buildings</w>\": 8866,\n  \"builds</w>\": 16449,\n  \"buildthe\": 41497,\n  \"built\": 45824,\n  \"built</w>\": 3874,\n  \"buk\": 28084,\n  \"buk</w>\": 24317,\n  \"buka</w>\": 47778,\n  \"bukit</w>\": 39888,\n  \"bul\": 2572,\n  \"bul</w>\": 10200,\n  \"bula</w>\": 18726,\n  \"bulaga</w>\": 41575,\n  \"bular</w>\": 32187,\n  \"bulb</w>\": 22373,\n  \"bulbs</w>\": 24808,\n  \"bulgar\": 15424,\n  \"bulgaria</w>\": 20295,\n  \"bulgarian</w>\": 38693,\n  \"bulge</w>\": 47603,\n  \"bulk</w>\": 19643,\n  \"bull\": 4537,\n  \"bull</w>\": 6029,\n  \"bulldo\": 37675,\n  \"bulldog\": 34828,\n  \"bulldog</w>\": 15611,\n  \"bulldogs</w>\": 13916,\n  \"bullet\": 14340,\n  \"bullet</w>\": 12465,\n  \"bulletin</w>\": 19638,\n  \"bulletproof</w>\": 43212,\n  \"bullets</w>\": 22117,\n  \"bullied</w>\": 34689,\n  \"bullies</w>\": 39050,\n  \"bullion</w>\": 49114,\n  \"bullish</w>\": 22142,\n  \"bullock</w>\": 33198,\n  \"bullpen</w>\": 38081,\n  \"bulls</w>\": 10313,\n  \"bully\": 43111,\n  \"bully</w>\": 20190,\n  \"bullying</w>\": 13548,\n  \"bum\": 27683,\n  \"bum</w>\": 14226,\n  \"bumble\": 25585,\n  \"bumble</w>\": 39303,\n  \"bumblebee</w>\": 36911,\n  \"bummed</w>\": 48456,\n  \"bump\": 9783,\n  \"bump</w>\": 15877,\n  \"bumped</w>\": 22495,\n  \"bumper</w>\": 17881,\n  \"bumping</w>\": 40196,\n  \"bumps</w>\": 21115,\n  \"bun\": 2591,\n  \"bun</w>\": 13665,\n  \"bunch</w>\": 7796,\n  \"bund</w>\": 41905,\n  \"bunde\": 18841,\n  \"bundesliga</w>\": 21582,\n  \"bundle</w>\": 11793,\n  \"bundled</w>\": 47228,\n  \"bundles</w>\": 29834,\n  \"bundy</w>\": 37332,\n  \"bung</w>\": 44748,\n  \"bungal\": 29549,\n  \"bungalow</w>\": 33696,\n  \"bunk</w>\": 41236,\n  \"bunker</w>\": 23615,\n  \"bunnies</w>\": 28998,\n  \"bunny\": 34198,\n  \"bunny</w>\": 9258,\n  \"buns</w>\": 22235,\n  \"bunting</w>\": 30695,\n  \"buon\": 31350,\n  \"buon</w>\": 48498,\n  \"bur\": 1039,\n  \"bur</w>\": 17362,\n  \"burbank</w>\": 34862,\n  \"burberry</w>\": 30412,\n  \"burch</w>\": 44588,\n  \"burden</w>\": 18687,\n  \"bure\": 11902,\n  \"bureau\": 32098,\n  \"bureau</w>\": 15400,\n  \"burg\": 19505,\n  \"burg</w>\": 3499,\n  \"burge\": 20522,\n  \"burger\": 22356,\n  \"burger</w>\": 6548,\n  \"burgers</w>\": 13007,\n  \"burgess</w>\": 26211,\n  \"burgh\": 18141,\n  \"burgh</w>\": 4965,\n  \"burgl\": 25554,\n  \"burglar</w>\": 43365,\n  \"burglary</w>\": 32573,\n  \"burgring</w>\": 40823,\n  \"burgundy</w>\": 23650,\n  \"buri\": 46348,\n  \"buri</w>\": 42614,\n  \"burial</w>\": 22012,\n  \"buried</w>\": 14233,\n  \"burk\": 48822,\n  \"burke</w>\": 15340,\n  \"burle\": 27891,\n  \"burlesque</w>\": 33732,\n  \"burlington</w>\": 23370,\n  \"burma</w>\": 30305,\n  \"burmese</w>\": 47906,\n  \"burn\": 7934,\n  \"burn</w>\": 4285,\n  \"burnaby</w>\": 47541,\n  \"burne</w>\": 27246,\n  \"burned</w>\": 15022,\n  \"burner</w>\": 23243,\n  \"burnett</w>\": 28558,\n  \"burnham</w>\": 36111,\n  \"burning\": 46107,\n  \"burning</w>\": 8405,\n  \"burnley</w>\": 24653,\n  \"burnout</w>\": 36078,\n  \"burns</w>\": 10234,\n  \"burnt</w>\": 15185,\n  \"burr</w>\": 30879,\n  \"burrell</w>\": 49045,\n  \"burrito</w>\": 23473,\n  \"burritos</w>\": 47245,\n  \"burroughs</w>\": 41337,\n  \"burrows</w>\": 44846,\n  \"burst</w>\": 13005,\n  \"bursting</w>\": 32566,\n  \"bursts</w>\": 37026,\n  \"burt</w>\": 27162,\n  \"burton\": 42354,\n  \"burton</w>\": 12704,\n  \"burundi</w>\": 33595,\n  \"bury\": 12276,\n  \"bury</w>\": 3899,\n  \"burys</w>\": 32362,\n  \"bus\": 1319,\n  \"bus</w>\": 2840,\n  \"busan</w>\": 40172,\n  \"busc\": 35000,\n  \"busch</w>\": 20475,\n  \"buses</w>\": 12879,\n  \"bush\": 11191,\n  \"bush</w>\": 6867,\n  \"bushes</w>\": 37578,\n  \"busiest</w>\": 32764,\n  \"busine\": 4598,\n  \"busines\": 25364,\n  \"business\": 8346,\n  \"business</w>\": 1716,\n  \"businesses</w>\": 7287,\n  \"businessman</w>\": 25635,\n  \"buss</w>\": 47764,\n  \"bust\": 31299,\n  \"bust</w>\": 9959,\n  \"busted</w>\": 18643,\n  \"buster\": 37219,\n  \"buster</w>\": 12094,\n  \"busters</w>\": 16362,\n  \"busting</w>\": 29622,\n  \"busy\": 39332,\n  \"busy</w>\": 4354,\n  \"but\": 2201,\n  \"but</w>\": 767,\n  \"butch</w>\": 35102,\n  \"butcher</w>\": 18732,\n  \"butchers</w>\": 42334,\n  \"bute</w>\": 39240,\n  \"butes</w>\": 14630,\n  \"butler\": 35867,\n  \"butler</w>\": 10702,\n  \"butt\": 12500,\n  \"butt</w>\": 31523,\n  \"butte</w>\": 31678,\n  \"butter\": 5427,\n  \"butter</w>\": 6952,\n  \"butterflies</w>\": 16232,\n  \"butterfly</w>\": 9738,\n  \"buttermilk</w>\": 40180,\n  \"butternut</w>\": 36867,\n  \"buttery</w>\": 45535,\n  \"button\": 45480,\n  \"button</w>\": 8007,\n  \"buttons</w>\": 16188,\n  \"butts</w>\": 25309,\n  \"buu\": 42313,\n  \"buuren</w>\": 47752,\n  \"buxton</w>\": 41370,\n  \"buy\": 11632,\n  \"buy</w>\": 2131,\n  \"buyer</w>\": 14682,\n  \"buyers</w>\": 14663,\n  \"buying</w>\": 6566,\n  \"buys</w>\": 15560,\n  \"buzz\": 7866,\n  \"buzz</w>\": 8706,\n  \"buzzard</w>\": 47434,\n  \"buzzer</w>\": 38064,\n  \"buzzfeed</w>\": 26613,\n  \"buzzing</w>\": 18511,\n  \"bv\": 18958,\n  \"bv</w>\": 35861,\n  \"bvb</w>\": 22454,\n  \"bw\": 17672,\n  \"bw</w>\": 15120,\n  \"bway</w>\": 26652,\n  \"bwfc</w>\": 40918,\n  \"bwo\": 45902,\n  \"bx</w>\": 33633,\n  \"by\": 1713,\n  \"by</w>\": 638,\n  \"bye\": 20076,\n  \"bye</w>\": 4460,\n  \"byes</w>\": 47958,\n  \"byl</w>\": 34994,\n  \"byn\": 46917,\n  \"byn</w>\": 11890,\n  \"byo\": 28039,\n  \"bypass</w>\": 26530,\n  \"byr\": 15534,\n  \"byrd</w>\": 30369,\n  \"byrne</w>\": 19676,\n  \"byron\": 43504,\n  \"byron</w>\": 19775,\n  \"bys</w>\": 26740,\n  \"bystand\": 46138,\n  \"byte</w>\": 42798,\n  \"bytes</w>\": 39538,\n  \"bythe\": 36621,\n  \"byu\": 41072,\n  \"byu</w>\": 23770,\n  \"byz\": 35406,\n  \"byzantine</w>\": 44081,\n  \"bz</w>\": 13631,\n  \"bÃ©\": 40365,\n  \"bÃ¼\": 38706,\n  \"c\": 66,\n  \"c</w>\": 322,\n  \"ca\": 772,\n  \"ca</w>\": 1684,\n  \"caa</w>\": 19316,\n  \"cab\": 3033,\n  \"cab</w>\": 11912,\n  \"cabaret</w>\": 26263,\n  \"cabbage</w>\": 18407,\n  \"cabe</w>\": 32731,\n  \"cabello</w>\": 34371,\n  \"caber\": 29062,\n  \"cabernet</w>\": 33730,\n  \"cabin</w>\": 14178,\n  \"cabine\": 23354,\n  \"cabinet</w>\": 9937,\n  \"cabinets</w>\": 33083,\n  \"cabins</w>\": 48455,\n  \"cable</w>\": 7925,\n  \"cables</w>\": 22408,\n  \"cabo\": 37318,\n  \"cabo</w>\": 28370,\n  \"cabrera</w>\": 42338,\n  \"cabs</w>\": 42048,\n  \"cac\": 8298,\n  \"cac</w>\": 23872,\n  \"cacao</w>\": 38022,\n  \"cache</w>\": 28993,\n  \"caching</w>\": 40655,\n  \"cactus</w>\": 19794,\n  \"cad\": 6297,\n  \"cad</w>\": 20166,\n  \"caday</w>\": 34187,\n  \"cadbury</w>\": 44698,\n  \"caddy</w>\": 41521,\n  \"cade\": 10497,\n  \"cade</w>\": 17306,\n  \"cadet</w>\": 22764,\n  \"cadets</w>\": 19160,\n  \"cadillac</w>\": 18156,\n  \"cae</w>\": 49264,\n  \"caer\": 28298,\n  \"caes\": 15740,\n  \"caesar</w>\": 21642,\n  \"caesars</w>\": 42162,\n  \"caf\": 3471,\n  \"caf</w>\": 20867,\n  \"cafc</w>\": 30748,\n  \"cafe\": 15201,\n  \"cafe</w>\": 4979,\n  \"cafes</w>\": 40166,\n  \"cafeteria</w>\": 32817,\n  \"caffe\": 18258,\n  \"caffe</w>\": 45416,\n  \"caffeine</w>\": 22487,\n  \"cafÃ©</w>\": 15304,\n  \"cag\": 15714,\n  \"cage</w>\": 11838,\n  \"cages</w>\": 37939,\n  \"cah</w>\": 40519,\n  \"cahill</w>\": 33185,\n  \"cai\": 38971,\n  \"cai</w>\": 36116,\n  \"cain</w>\": 13747,\n  \"caine</w>\": 16799,\n  \"cair\": 15804,\n  \"cair</w>\": 46659,\n  \"cairn\": 31264,\n  \"cairn</w>\": 42467,\n  \"cairngor\": 44067,\n  \"cairns</w>\": 32941,\n  \"cairo</w>\": 19615,\n  \"cait\": 14116,\n  \"caitlin\": 47768,\n  \"caitlin</w>\": 26809,\n  \"caitlyn</w>\": 35763,\n  \"cajun\": 43425,\n  \"cajun</w>\": 33044,\n  \"cak</w>\": 42986,\n  \"cake\": 15295,\n  \"cake</w>\": 2972,\n  \"cakeday</w>\": 46207,\n  \"cakes</w>\": 5950,\n  \"cal\": 1198,\n  \"cal</w>\": 6372,\n  \"cala</w>\": 32133,\n  \"calab\": 31795,\n  \"calais</w>\": 39886,\n  \"calam\": 28841,\n  \"calc</w>\": 45055,\n  \"calci\": 22824,\n  \"calcium</w>\": 27815,\n  \"calcu\": 15328,\n  \"calcul\": 15734,\n  \"calculate</w>\": 37656,\n  \"calculated</w>\": 40688,\n  \"calculations</w>\": 44605,\n  \"calculator</w>\": 26093,\n  \"calculus</w>\": 35104,\n  \"calcutta</w>\": 42901,\n  \"calder\": 29372,\n  \"calder</w>\": 36817,\n  \"caldwell</w>\": 30484,\n  \"cale</w>\": 32674,\n  \"caleb</w>\": 19619,\n  \"caled\": 28421,\n  \"calend\": 6057,\n  \"calendar</w>\": 7122,\n  \"calendars</w>\": 17229,\n  \"calf</w>\": 17508,\n  \"calgary\": 27415,\n  \"calgary</w>\": 10797,\n  \"calhoun</w>\": 38929,\n  \"cali\": 2857,\n  \"cali</w>\": 16337,\n  \"caliber</w>\": 32820,\n  \"calibr\": 32597,\n  \"calico</w>\": 45379,\n  \"calif</w>\": 30839,\n  \"califor\": 3526,\n  \"californi\": 21303,\n  \"california</w>\": 3729,\n  \"call\": 7950,\n  \"call</w>\": 1620,\n  \"calla\": 20658,\n  \"callahan</w>\": 43313,\n  \"callaway</w>\": 42596,\n  \"callback</w>\": 44764,\n  \"calle\": 47699,\n  \"calle</w>\": 38144,\n  \"called</w>\": 2726,\n  \"caller</w>\": 30666,\n  \"calli\": 16338,\n  \"callie</w>\": 36512,\n  \"calligraphy</w>\": 27775,\n  \"calling</w>\": 4597,\n  \"callister</w>\": 49026,\n  \"callme\": 42449,\n  \"callof\": 41280,\n  \"calls</w>\": 4572,\n  \"callum</w>\": 23224,\n  \"calm\": 34990,\n  \"calm</w>\": 7011,\n  \"calming</w>\": 30690,\n  \"calorie</w>\": 32679,\n  \"calories</w>\": 18029,\n  \"cals</w>\": 47714,\n  \"calum</w>\": 16405,\n  \"calvary</w>\": 40169,\n  \"calvert</w>\": 47134,\n  \"calves</w>\": 31857,\n  \"calvin\": 27642,\n  \"calvin</w>\": 17345,\n  \"caly\": 10244,\n  \"calyp\": 29851,\n  \"cam\": 1004,\n  \"cam</w>\": 5982,\n  \"camar\": 31991,\n  \"camber\": 44362,\n  \"cambo\": 14662,\n  \"cambodia</w>\": 17347,\n  \"cambridge\": 24651,\n  \"cambridge</w>\": 9334,\n  \"cambridgeshire</w>\": 46139,\n  \"camden\": 38735,\n  \"camden</w>\": 17984,\n  \"came</w>\": 1986,\n  \"camel\": 27005,\n  \"camel</w>\": 21914,\n  \"camels</w>\": 41357,\n  \"cameo</w>\": 19492,\n  \"camer\": 4961,\n  \"camera</w>\": 3934,\n  \"cameraman</w>\": 43347,\n  \"cameras</w>\": 12172,\n  \"camero\": 20320,\n  \"cameron\": 19634,\n  \"cameron</w>\": 8057,\n  \"camerondallas</w>\": 40587,\n  \"cameroon</w>\": 24061,\n  \"camil\": 37745,\n  \"camila</w>\": 19919,\n  \"camilla</w>\": 38897,\n  \"camille</w>\": 26741,\n  \"camino</w>\": 28529,\n  \"camo\": 28702,\n  \"camo</w>\": 19716,\n  \"camogie</w>\": 39547,\n  \"camou\": 23588,\n  \"camoufla\": 23667,\n  \"camouflage</w>\": 29049,\n  \"camp\": 2854,\n  \"camp</w>\": 2877,\n  \"campa\": 2793,\n  \"campaig\": 9448,\n  \"campaign\": 44524,\n  \"campaign</w>\": 3193,\n  \"campaigner</w>\": 46364,\n  \"campaigners</w>\": 40272,\n  \"campaigning</w>\": 19594,\n  \"campaigns</w>\": 15669,\n  \"campan\": 31765,\n  \"campbell\": 29094,\n  \"campbell</w>\": 8806,\n  \"campe\": 16672,\n  \"campeon\": 49109,\n  \"campeones</w>\": 30105,\n  \"camper\": 41914,\n  \"camper</w>\": 24522,\n  \"campers</w>\": 26619,\n  \"campfire</w>\": 32530,\n  \"campground</w>\": 46969,\n  \"camping</w>\": 9982,\n  \"campo</w>\": 27600,\n  \"campos</w>\": 48077,\n  \"camps</w>\": 12806,\n  \"campsite</w>\": 44243,\n  \"campu\": 19687,\n  \"campus</w>\": 4560,\n  \"campuses</w>\": 31895,\n  \"camra</w>\": 46155,\n  \"camry</w>\": 46472,\n  \"cams</w>\": 32590,\n  \"can\": 950,\n  \"can</w>\": 753,\n  \"cana</w>\": 28341,\n  \"canad\": 13193,\n  \"canada</w>\": 2698,\n  \"canadaday</w>\": 39800,\n  \"canadi\": 4329,\n  \"canadian\": 22160,\n  \"canadian</w>\": 5255,\n  \"canadians</w>\": 18989,\n  \"canadiens</w>\": 40932,\n  \"canal\": 28585,\n  \"canal</w>\": 9535,\n  \"canals</w>\": 38483,\n  \"canaria</w>\": 47117,\n  \"canary\": 40409,\n  \"canary</w>\": 24523,\n  \"canberra</w>\": 16719,\n  \"canc\": 43189,\n  \"cancel\": 12026,\n  \"cancel</w>\": 21546,\n  \"canceled</w>\": 25874,\n  \"cancell\": 28027,\n  \"cancellation</w>\": 38765,\n  \"cancelled</w>\": 13270,\n  \"cancels</w>\": 34089,\n  \"cancer\": 12690,\n  \"cancer</w>\": 3148,\n  \"cancers</w>\": 33201,\n  \"cancun</w>\": 34721,\n  \"cand\": 4986,\n  \"candace</w>\": 45623,\n  \"candel\": 47834,\n  \"candi\": 6034,\n  \"candice</w>\": 30024,\n  \"candid\": 7884,\n  \"candid</w>\": 19206,\n  \"candidacy</w>\": 46248,\n  \"candidate</w>\": 6475,\n  \"candidates</w>\": 8619,\n  \"candied</w>\": 43982,\n  \"candies</w>\": 46305,\n  \"candle\": 18995,\n  \"candle</w>\": 12674,\n  \"candlelight</w>\": 34724,\n  \"candles</w>\": 15472,\n  \"candy\": 20741,\n  \"candy</w>\": 6417,\n  \"cane\": 23644,\n  \"cane</w>\": 14716,\n  \"canelo</w>\": 43210,\n  \"canes</w>\": 21902,\n  \"cani\": 35592,\n  \"canine</w>\": 27380,\n  \"cann\": 4139,\n  \"cann</w>\": 23709,\n  \"cannab\": 7577,\n  \"cannabis\": 31837,\n  \"cannabis</w>\": 8861,\n  \"canne\": 44252,\n  \"canned</w>\": 27290,\n  \"cannes</w>\": 13773,\n  \"canni\": 26389,\n  \"canning</w>\": 38621,\n  \"cannon\": 28771,\n  \"cannon</w>\": 15661,\n  \"cannons</w>\": 46269,\n  \"cannot</w>\": 4785,\n  \"canny</w>\": 26986,\n  \"cano\": 31668,\n  \"cano</w>\": 25937,\n  \"canoe</w>\": 23503,\n  \"canola</w>\": 40389,\n  \"canon\": 17749,\n  \"canon</w>\": 9310,\n  \"canopy</w>\": 26061,\n  \"cans</w>\": 13707,\n  \"cant\": 13395,\n  \"cant</w>\": 5784,\n  \"canteen</w>\": 39230,\n  \"canter\": 19301,\n  \"canterbury</w>\": 22271,\n  \"canti\": 42845,\n  \"cantina</w>\": 47472,\n  \"canton\": 37735,\n  \"canton</w>\": 25363,\n  \"cantore</w>\": 41769,\n  \"cantwait</w>\": 33760,\n  \"canu\": 20171,\n  \"canucks</w>\": 24321,\n  \"canv\": 30714,\n  \"canvas\": 22441,\n  \"canvas</w>\": 7483,\n  \"canvass</w>\": 40054,\n  \"canvassing</w>\": 33783,\n  \"cany\": 47674,\n  \"canyon\": 41246,\n  \"canyon</w>\": 9755,\n  \"cao</w>\": 29207,\n  \"cap\": 1289,\n  \"cap</w>\": 3938,\n  \"capabilities</w>\": 19512,\n  \"capability</w>\": 25885,\n  \"capable</w>\": 14742,\n  \"capac\": 24665,\n  \"capacity</w>\": 8970,\n  \"capcom</w>\": 28342,\n  \"cape\": 10288,\n  \"cape</w>\": 6631,\n  \"capecod</w>\": 41339,\n  \"capes</w>\": 38785,\n  \"capetown</w>\": 20059,\n  \"capit\": 6889,\n  \"capita</w>\": 41833,\n  \"capital\": 11198,\n  \"capital</w>\": 5439,\n  \"capitalism</w>\": 20068,\n  \"capitalist</w>\": 37015,\n  \"capitals</w>\": 29579,\n  \"capitol\": 43880,\n  \"capitol</w>\": 11375,\n  \"capo</w>\": 45477,\n  \"capp\": 16718,\n  \"capped</w>\": 24659,\n  \"capping</w>\": 42656,\n  \"cappuccino</w>\": 37402,\n  \"capri\": 48699,\n  \"capri</w>\": 30982,\n  \"capric\": 28667,\n  \"capricorn</w>\": 46314,\n  \"caps</w>\": 23185,\n  \"capsu\": 15608,\n  \"capsul\": 40341,\n  \"capsule</w>\": 20627,\n  \"capsules</w>\": 32870,\n  \"capt\": 45815,\n  \"capt</w>\": 17369,\n  \"captain\": 14958,\n  \"captain</w>\": 4621,\n  \"captainamerica</w>\": 46229,\n  \"captainmarvel</w>\": 48492,\n  \"captains</w>\": 18706,\n  \"caption</w>\": 11327,\n  \"captions</w>\": 41878,\n  \"captiv\": 19776,\n  \"captivating</w>\": 30580,\n  \"captive</w>\": 29038,\n  \"captivity</w>\": 41141,\n  \"capture</w>\": 8818,\n  \"captured</w>\": 8020,\n  \"captures</w>\": 15305,\n  \"capturing</w>\": 19548,\n  \"capu\": 44241,\n  \"car\": 811,\n  \"car</w>\": 1615,\n  \"cara</w>\": 20016,\n  \"carab\": 32251,\n  \"carac\": 30029,\n  \"caracas</w>\": 45854,\n  \"caramel</w>\": 14788,\n  \"carameli\": 41739,\n  \"caramelized</w>\": 43854,\n  \"carat</w>\": 32981,\n  \"carav\": 13814,\n  \"caravan</w>\": 18566,\n  \"carb</w>\": 21379,\n  \"carbo\": 43235,\n  \"carbon\": 14038,\n  \"carbon</w>\": 7549,\n  \"carbs</w>\": 29313,\n  \"carcin\": 31587,\n  \"carcinoma</w>\": 46810,\n  \"card\": 10793,\n  \"card</w>\": 2601,\n  \"cardam\": 49008,\n  \"cardboard</w>\": 19845,\n  \"cardi\": 6211,\n  \"cardi</w>\": 29677,\n  \"cardiac</w>\": 21256,\n  \"cardiff\": 22488,\n  \"cardiff</w>\": 9781,\n  \"cardigan</w>\": 30501,\n  \"cardin\": 8457,\n  \"cardinal\": 46310,\n  \"cardinal</w>\": 16472,\n  \"cardinals</w>\": 12837,\n  \"cardio\": 15003,\n  \"cardio</w>\": 23455,\n  \"cardiology</w>\": 37276,\n  \"cardiovascular</w>\": 29291,\n  \"cardo</w>\": 40625,\n  \"cards</w>\": 4094,\n  \"care\": 2050,\n  \"care</w>\": 1776,\n  \"cared</w>\": 27675,\n  \"career\": 20609,\n  \"career</w>\": 3061,\n  \"careers</w>\": 10090,\n  \"careful</w>\": 11999,\n  \"carefully</w>\": 15789,\n  \"caregi\": 22042,\n  \"caregiver</w>\": 46372,\n  \"caregivers</w>\": 35909,\n  \"careless</w>\": 47325,\n  \"carers</w>\": 26484,\n  \"cares</w>\": 10968,\n  \"caretaker</w>\": 48037,\n  \"carey</w>\": 14895,\n  \"cargo</w>\": 12490,\n  \"cari\": 18497,\n  \"cari</w>\": 37273,\n  \"carib\": 9757,\n  \"caribbean</w>\": 10368,\n  \"caribou</w>\": 42135,\n  \"caric\": 25337,\n  \"caricature</w>\": 38857,\n  \"carina</w>\": 44357,\n  \"caring</w>\": 13083,\n  \"carl\": 8273,\n  \"carl</w>\": 9482,\n  \"carla</w>\": 25552,\n  \"carleton</w>\": 46496,\n  \"carlin</w>\": 47559,\n  \"carlisle</w>\": 23276,\n  \"carlo\": 17861,\n  \"carlo</w>\": 15266,\n  \"carlos</w>\": 9538,\n  \"carlow</w>\": 44745,\n  \"carls\": 39635,\n  \"carlson</w>\": 24114,\n  \"carlton</w>\": 18934,\n  \"carly\": 23166,\n  \"carly</w>\": 22689,\n  \"carlyle</w>\": 46555,\n  \"carmel\": 30757,\n  \"carmel</w>\": 25601,\n  \"carmen\": 41427,\n  \"carmen</w>\": 18834,\n  \"carmichael</w>\": 41657,\n  \"carn\": 21597,\n  \"carnage</w>\": 31385,\n  \"carnation</w>\": 44577,\n  \"carnaval</w>\": 47238,\n  \"carne\": 17053,\n  \"carne</w>\": 42885,\n  \"carnegie</w>\": 25287,\n  \"carney</w>\": 34194,\n  \"carni\": 8438,\n  \"carnival\": 36708,\n  \"carnival</w>\": 10577,\n  \"caro\": 30317,\n  \"caro</w>\": 29344,\n  \"carol\": 4242,\n  \"carol</w>\": 11489,\n  \"carole</w>\": 31955,\n  \"carolin\": 26418,\n  \"carolina</w>\": 7027,\n  \"caroline\": 31064,\n  \"caroline</w>\": 12641,\n  \"carols</w>\": 33269,\n  \"carolyn</w>\": 25825,\n  \"carou\": 32224,\n  \"carousel</w>\": 36665,\n  \"carp</w>\": 26085,\n  \"carpen\": 15584,\n  \"carpenter</w>\": 18475,\n  \"carpet</w>\": 6922,\n  \"carpets</w>\": 34612,\n  \"carr\": 26951,\n  \"carr</w>\": 17136,\n  \"carra\": 32332,\n  \"carre\": 31114,\n  \"carrera</w>\": 32952,\n  \"carri\": 4739,\n  \"carriage\": 47885,\n  \"carriage</w>\": 21087,\n  \"carrick</w>\": 44052,\n  \"carrie\": 30334,\n  \"carrie</w>\": 15848,\n  \"carried</w>\": 12960,\n  \"carrier</w>\": 12308,\n  \"carriers</w>\": 26865,\n  \"carries</w>\": 17982,\n  \"carrieunderwood</w>\": 47338,\n  \"carrington</w>\": 48759,\n  \"carroll\": 41911,\n  \"carroll</w>\": 14893,\n  \"carrot</w>\": 15435,\n  \"carrots</w>\": 19299,\n  \"carry\": 31863,\n  \"carry</w>\": 6998,\n  \"carrying</w>\": 9920,\n  \"cars</w>\": 3346,\n  \"carsforsale</w>\": 45222,\n  \"carson\": 41766,\n  \"carson</w>\": 13171,\n  \"cart\": 27705,\n  \"cart</w>\": 13065,\n  \"cartag\": 45042,\n  \"cartagena</w>\": 47157,\n  \"carte</w>\": 44949,\n  \"cartel</w>\": 30529,\n  \"carter\": 27330,\n  \"carter</w>\": 7260,\n  \"cartier</w>\": 32951,\n  \"carto\": 5487,\n  \"carton</w>\": 41812,\n  \"cartoon\": 33082,\n  \"cartoon</w>\": 7651,\n  \"cartoonist</w>\": 30793,\n  \"cartoons</w>\": 17673,\n  \"cartri\": 47084,\n  \"cartridge</w>\": 29432,\n  \"cartridges</w>\": 49249,\n  \"carts</w>\": 27581,\n  \"cartunesapp</w>\": 32888,\n  \"caruso</w>\": 45192,\n  \"carve</w>\": 40152,\n  \"carved</w>\": 15127,\n  \"carver</w>\": 28850,\n  \"carving</w>\": 19428,\n  \"carvings</w>\": 48123,\n  \"cary</w>\": 22844,\n  \"cas\": 1671,\n  \"cas</w>\": 13831,\n  \"casa</w>\": 14643,\n  \"casablanc\": 36572,\n  \"casablanca</w>\": 41950,\n  \"casc\": 36714,\n  \"casca\": 43296,\n  \"cascade</w>\": 29065,\n  \"cascades</w>\": 46454,\n  \"case\": 17698,\n  \"case</w>\": 2068,\n  \"cases</w>\": 6888,\n  \"casey\": 24899,\n  \"casey</w>\": 12836,\n  \"cash\": 11050,\n  \"cash</w>\": 5131,\n  \"cashback</w>\": 36368,\n  \"cashe\": 32233,\n  \"cashew</w>\": 39531,\n  \"cashi\": 29517,\n  \"cashier</w>\": 34547,\n  \"cashmere</w>\": 34566,\n  \"casi\": 38350,\n  \"casino</w>\": 10473,\n  \"casio</w>\": 32261,\n  \"cask</w>\": 26299,\n  \"casm</w>\": 35198,\n  \"casper</w>\": 35892,\n  \"cass</w>\": 22556,\n  \"cassandra</w>\": 35289,\n  \"casser\": 31093,\n  \"casserole</w>\": 36045,\n  \"cassette</w>\": 19717,\n  \"cassi\": 14942,\n  \"cassidy</w>\": 21757,\n  \"cassie</w>\": 29323,\n  \"cassini</w>\": 46554,\n  \"cast\": 2509,\n  \"cast</w>\": 1970,\n  \"caste</w>\": 32693,\n  \"casted</w>\": 33838,\n  \"castel\": 43306,\n  \"castell\": 31792,\n  \"caster\": 32101,\n  \"caster</w>\": 8449,\n  \"casters</w>\": 29721,\n  \"castic</w>\": 47737,\n  \"castillo</w>\": 30813,\n  \"casting</w>\": 7087,\n  \"castle\": 12496,\n  \"castle</w>\": 3540,\n  \"castles</w>\": 24766,\n  \"castro</w>\": 16950,\n  \"casts</w>\": 10595,\n  \"casu\": 15345,\n  \"casual</w>\": 10129,\n  \"casually</w>\": 18840,\n  \"casualties</w>\": 30244,\n  \"casualty</w>\": 31222,\n  \"cat\": 1481,\n  \"cat</w>\": 2368,\n  \"cata</w>\": 42279,\n  \"catal\": 12792,\n  \"catalan</w>\": 30532,\n  \"catalina</w>\": 36576,\n  \"catalo\": 34740,\n  \"catalog</w>\": 20036,\n  \"catalogue</w>\": 20985,\n  \"catalonia</w>\": 27039,\n  \"catalunya</w>\": 44132,\n  \"cataly\": 15894,\n  \"catalyst</w>\": 25387,\n  \"catan</w>\": 45893,\n  \"catap\": 39514,\n  \"catar\": 35801,\n  \"catastro\": 22736,\n  \"catastrophe</w>\": 41422,\n  \"catastrophic</w>\": 34448,\n  \"catch\": 18901,\n  \"catch</w>\": 3042,\n  \"catcher</w>\": 15965,\n  \"catchers</w>\": 39060,\n  \"catches</w>\": 17213,\n  \"catching</w>\": 8617,\n  \"catchy</w>\": 37114,\n  \"catday</w>\": 32243,\n  \"cate\": 6357,\n  \"cate</w>\": 24510,\n  \"cated</w>\": 31823,\n  \"categor\": 17006,\n  \"categori\": 40117,\n  \"categories</w>\": 19971,\n  \"category</w>\": 9432,\n  \"cater\": 16634,\n  \"cater</w>\": 38101,\n  \"catering</w>\": 16697,\n  \"caterpillar</w>\": 27111,\n  \"catfish</w>\": 26077,\n  \"cath\": 9196,\n  \"cath</w>\": 30811,\n  \"cathar\": 43784,\n  \"cathe\": 7174,\n  \"cathedr\": 46370,\n  \"cathedral</w>\": 7865,\n  \"catherine\": 35035,\n  \"catherine</w>\": 12339,\n  \"catho\": 7595,\n  \"cathol\": 16315,\n  \"catholic\": 20382,\n  \"catholic</w>\": 7757,\n  \"catholics</w>\": 36808,\n  \"cathy\": 40326,\n  \"cathy</w>\": 22731,\n  \"cation</w>\": 21367,\n  \"cato</w>\": 33558,\n  \"cats\": 38800,\n  \"cats</w>\": 3989,\n  \"catsofinstagram</w>\": 39901,\n  \"catsoftwitter</w>\": 17273,\n  \"catt\": 37339,\n  \"cattle\": 48799,\n  \"cattle</w>\": 13644,\n  \"caturday</w>\": 20892,\n  \"catwalk</w>\": 36565,\n  \"catwoman</w>\": 47251,\n  \"cau\": 1121,\n  \"cau</w>\": 45529,\n  \"caucus</w>\": 18847,\n  \"caught</w>\": 4520,\n  \"caul\": 23460,\n  \"cauley</w>\": 41682,\n  \"caulfield</w>\": 44906,\n  \"cauli\": 20123,\n  \"cauliflower</w>\": 23802,\n  \"cause\": 18982,\n  \"cause</w>\": 1394,\n  \"caused</w>\": 8940,\n  \"causes</w>\": 9775,\n  \"causeway</w>\": 35034,\n  \"causing</w>\": 10779,\n  \"caution</w>\": 15656,\n  \"cautious</w>\": 36579,\n  \"cav\": 4942,\n  \"cav</w>\": 45935,\n  \"cava</w>\": 48682,\n  \"caval\": 24537,\n  \"cavali\": 20783,\n  \"cavalier</w>\": 44488,\n  \"cavaliers</w>\": 30194,\n  \"cavalry</w>\": 32467,\n  \"cave\": 25441,\n  \"cave</w>\": 9654,\n  \"cavendish</w>\": 42945,\n  \"caver\": 41487,\n  \"caves</w>\": 22096,\n  \"cavi\": 27360,\n  \"caviar</w>\": 31228,\n  \"cavill</w>\": 40492,\n  \"cavity</w>\": 43156,\n  \"cavs</w>\": 16800,\n  \"caw\": 38405,\n  \"caw</w>\": 43804,\n  \"cawx</w>\": 26739,\n  \"cay\": 11876,\n  \"cay</w>\": 37399,\n  \"cayenne</w>\": 43650,\n  \"cayman</w>\": 33737,\n  \"caz\": 48451,\n  \"cb\": 4034,\n  \"cb</w>\": 8830,\n  \"cba</w>\": 38472,\n  \"cbb</w>\": 31487,\n  \"cbc\": 14096,\n  \"cbc</w>\": 14523,\n  \"cbd</w>\": 13176,\n  \"cbe</w>\": 43639,\n  \"cbi</w>\": 30875,\n  \"cbj</w>\": 35608,\n  \"cbn</w>\": 26579,\n  \"cbp</w>\": 46723,\n  \"cbr</w>\": 28762,\n  \"cbs\": 16788,\n  \"cbs</w>\": 8009,\n  \"cc\": 2976,\n  \"cc</w>\": 2021,\n  \"cca</w>\": 17987,\n  \"ccc</w>\": 21856,\n  \"ccd</w>\": 48556,\n  \"ccg</w>\": 37755,\n  \"cch\": 21789,\n  \"cchini</w>\": 28467,\n  \"cci\": 32942,\n  \"cci</w>\": 8196,\n  \"ccl</w>\": 43773,\n  \"ccm</w>\": 40435,\n  \"cco</w>\": 28786,\n  \"ccot</w>\": 24950,\n  \"ccp</w>\": 43045,\n  \"ccs</w>\": 30400,\n  \"cctv</w>\": 23097,\n  \"ccu</w>\": 49023,\n  \"cd\": 4308,\n  \"cd</w>\": 4480,\n  \"cda</w>\": 45565,\n  \"cdc\": 41098,\n  \"cdc</w>\": 25779,\n  \"cdn\": 8886,\n  \"cdn</w>\": 26802,\n  \"cdnpoli</w>\": 11645,\n  \"cdo</w>\": 47187,\n  \"cdp</w>\": 39624,\n  \"cds</w>\": 20784,\n  \"cdt</w>\": 18455,\n  \"ce\": 685,\n  \"ce</w>\": 629,\n  \"cea</w>\": 28355,\n  \"cean\": 34409,\n  \"cean</w>\": 37295,\n  \"cease\": 32856,\n  \"cease</w>\": 25499,\n  \"ceasefire</w>\": 38291,\n  \"cebu</w>\": 20146,\n  \"cec\": 29694,\n  \"cec</w>\": 40029,\n  \"cecil\": 26987,\n  \"cecil</w>\": 27169,\n  \"cecilia</w>\": 35440,\n  \"ced\": 25634,\n  \"ced</w>\": 2323,\n  \"cedar\": 24167,\n  \"cedar</w>\": 13799,\n  \"cedric</w>\": 36608,\n  \"cee\": 45966,\n  \"cee</w>\": 15015,\n  \"cees</w>\": 47914,\n  \"ceil\": 27275,\n  \"ceiling</w>\": 12374,\n  \"ceilings</w>\": 33770,\n  \"cek</w>\": 45544,\n  \"cel\": 2269,\n  \"cel</w>\": 7597,\n  \"cele\": 1314,\n  \"celeb\": 38862,\n  \"celeb</w>\": 19393,\n  \"celebr\": 1372,\n  \"celebrate\": 31414,\n  \"celebrate</w>\": 2694,\n  \"celebrated</w>\": 9184,\n  \"celebrates</w>\": 7564,\n  \"celebrating</w>\": 3382,\n  \"celebration</w>\": 4615,\n  \"celebrations</w>\": 10825,\n  \"celebratory</w>\": 34115,\n  \"celebrities</w>\": 17071,\n  \"celebrity\": 23981,\n  \"celebrity</w>\": 7320,\n  \"celebs</w>\": 19803,\n  \"celed</w>\": 25741,\n  \"celer\": 9621,\n  \"celery</w>\": 30990,\n  \"celeste</w>\": 29364,\n  \"celesti\": 29497,\n  \"celestial</w>\": 32669,\n  \"celi\": 25567,\n  \"celia</w>\": 44489,\n  \"celine</w>\": 33644,\n  \"cell\": 9316,\n  \"cell</w>\": 5533,\n  \"cellar</w>\": 24282,\n  \"cellars</w>\": 44976,\n  \"cellence</w>\": 34687,\n  \"cello</w>\": 23013,\n  \"cellphone</w>\": 39029,\n  \"cells</w>\": 8890,\n  \"cellu\": 16791,\n  \"cellular</w>\": 23268,\n  \"cels</w>\": 24021,\n  \"celsius</w>\": 47057,\n  \"celtic\": 21897,\n  \"celtic</w>\": 10523,\n  \"celticfc</w>\": 38612,\n  \"celtics</w>\": 16226,\n  \"cem</w>\": 41435,\n  \"ceme\": 10517,\n  \"cement</w>\": 4369,\n  \"cements</w>\": 19448,\n  \"cemetery</w>\": 11660,\n  \"cen\": 1306,\n  \"cen</w>\": 30106,\n  \"cena</w>\": 21591,\n  \"cence</w>\": 24410,\n  \"cency</w>\": 41259,\n  \"cene</w>\": 30038,\n  \"censor\": 24230,\n  \"censor</w>\": 44709,\n  \"censored</w>\": 30951,\n  \"censorship</w>\": 27284,\n  \"census</w>\": 23677,\n  \"cent\": 1784,\n  \"cent</w>\": 3662,\n  \"centenary</w>\": 22422,\n  \"centennial</w>\": 20895,\n  \"center\": 16651,\n  \"center</w>\": 2119,\n  \"centered</w>\": 24584,\n  \"centers</w>\": 14494,\n  \"centi\": 48889,\n  \"centime\": 48687,\n  \"centr\": 2370,\n  \"central\": 13448,\n  \"central</w>\": 3339,\n  \"centre\": 26310,\n  \"centre</w>\": 2916,\n  \"centred</w>\": 47925,\n  \"centres</w>\": 19354,\n  \"centri\": 30872,\n  \"centric</w>\": 19297,\n  \"centro</w>\": 37178,\n  \"cents</w>\": 11934,\n  \"centu\": 16818,\n  \"centuri\": 36816,\n  \"centuries</w>\": 19014,\n  \"century\": 26134,\n  \"century</w>\": 4275,\n  \"ceo\": 46340,\n  \"ceo</w>\": 3559,\n  \"ceos</w>\": 28332,\n  \"cep\": 2632,\n  \"cep</w>\": 48714,\n  \"ceph\": 44343,\n  \"cept</w>\": 3678,\n  \"ception</w>\": 12346,\n  \"cer\": 1364,\n  \"cer</w>\": 1925,\n  \"cera</w>\": 34608,\n  \"ceram\": 10677,\n  \"ceramic</w>\": 15112,\n  \"ceramics</w>\": 22438,\n  \"cere\": 3984,\n  \"cere</w>\": 22085,\n  \"cereal</w>\": 17581,\n  \"cereals</w>\": 48618,\n  \"cerebral</w>\": 39073,\n  \"ceremon\": 15796,\n  \"ceremonial</w>\": 33281,\n  \"ceremonies</w>\": 21547,\n  \"ceremony</w>\": 5193,\n  \"cern</w>\": 44851,\n  \"cers</w>\": 13638,\n  \"cert</w>\": 27522,\n  \"certain\": 8526,\n  \"certain</w>\": 7883,\n  \"certainly</w>\": 10883,\n  \"certainty</w>\": 20054,\n  \"certi\": 4888,\n  \"certific\": 9443,\n  \"certificate</w>\": 11786,\n  \"certificates</w>\": 25281,\n  \"certification</w>\": 14735,\n  \"certified</w>\": 9288,\n  \"cerv\": 25738,\n  \"cervical</w>\": 35953,\n  \"ces\": 28715,\n  \"ces</w>\": 1604,\n  \"cesar\": 37025,\n  \"cesar</w>\": 28603,\n  \"cess\": 2314,\n  \"cess</w>\": 1554,\n  \"cessna</w>\": 36596,\n  \"cest</w>\": 27245,\n  \"cester\": 15769,\n  \"cester</w>\": 12718,\n  \"cet</w>\": 14960,\n  \"cett</w>\": 46708,\n  \"ceu</w>\": 37457,\n  \"cevic\": 48369,\n  \"cey</w>\": 20971,\n  \"cf\": 10189,\n  \"cf</w>\": 11171,\n  \"cfa</w>\": 34521,\n  \"cfb</w>\": 32931,\n  \"cfc</w>\": 11577,\n  \"cfd</w>\": 46171,\n  \"cfl\": 46320,\n  \"cfl</w>\": 22332,\n  \"cfo</w>\": 26937,\n  \"cfp</w>\": 40756,\n  \"cfr</w>\": 44033,\n  \"cfs</w>\": 32835,\n  \"cg\": 27118,\n  \"cg</w>\": 14740,\n  \"cgc</w>\": 38775,\n  \"cgi</w>\": 30520,\n  \"ch\": 540,\n  \"ch</w>\": 634,\n  \"cha\": 1587,\n  \"cha</w>\": 4541,\n  \"chab\": 26670,\n  \"chad\": 13095,\n  \"chad</w>\": 12923,\n  \"chae\": 9460,\n  \"chaf\": 38123,\n  \"chag\": 27989,\n  \"chai\": 31590,\n  \"chai</w>\": 18919,\n  \"chain\": 13898,\n  \"chain</w>\": 3946,\n  \"chained</w>\": 34402,\n  \"chains</w>\": 14438,\n  \"chainsaw</w>\": 37617,\n  \"chainz</w>\": 39687,\n  \"chair\": 4728,\n  \"chair</w>\": 4269,\n  \"chaired</w>\": 31664,\n  \"chairing</w>\": 42205,\n  \"chairman</w>\": 6901,\n  \"chairperson</w>\": 31584,\n  \"chairs</w>\": 12033,\n  \"chak\": 13702,\n  \"chak</w>\": 41713,\n  \"chakra\": 38304,\n  \"chakra</w>\": 33241,\n  \"chal\": 7397,\n  \"chal</w>\": 30809,\n  \"chale</w>\": 38099,\n  \"chalet</w>\": 37907,\n  \"chalk\": 31362,\n  \"chalk</w>\": 17846,\n  \"chall\": 2073,\n  \"challeng\": 4138,\n  \"challenge\": 29462,\n  \"challenge</w>\": 2836,\n  \"challenged</w>\": 17380,\n  \"challenger</w>\": 18228,\n  \"challengers</w>\": 46404,\n  \"challenges</w>\": 6280,\n  \"challenging</w>\": 11754,\n  \"chalmers</w>\": 47955,\n  \"cham\": 1290,\n  \"cham</w>\": 19951,\n  \"chamber\": 18983,\n  \"chamber</w>\": 7642,\n  \"chamberlain</w>\": 32756,\n  \"chambers</w>\": 16501,\n  \"chamele\": 34759,\n  \"chameleon</w>\": 41317,\n  \"champ\": 36813,\n  \"champ</w>\": 6602,\n  \"champag\": 10283,\n  \"champagne</w>\": 11007,\n  \"champi\": 1680,\n  \"champion\": 2643,\n  \"champion</w>\": 3950,\n  \"champions</w>\": 4227,\n  \"championship</w>\": 3429,\n  \"championships</w>\": 7047,\n  \"championsleague</w>\": 27638,\n  \"champs</w>\": 6240,\n  \"chan\": 1255,\n  \"chan</w>\": 6704,\n  \"chana</w>\": 48752,\n  \"chanc\": 13931,\n  \"chance\": 32940,\n  \"chance</w>\": 2594,\n  \"chancellor</w>\": 15886,\n  \"chances</w>\": 10870,\n  \"chand\": 7126,\n  \"chand</w>\": 41508,\n  \"chandelier</w>\": 30570,\n  \"chandi\": 12482,\n  \"chandigarh</w>\": 34106,\n  \"chandler</w>\": 17595,\n  \"chandra\": 27082,\n  \"chandra</w>\": 25348,\n  \"chanel</w>\": 16951,\n  \"chang\": 2233,\n  \"chang</w>\": 16461,\n  \"change\": 11608,\n  \"change</w>\": 1799,\n  \"changeable</w>\": 41335,\n  \"changed</w>\": 4907,\n  \"changer</w>\": 18406,\n  \"changers</w>\": 35185,\n  \"changes</w>\": 4938,\n  \"changing\": 40384,\n  \"changing</w>\": 5621,\n  \"changmin</w>\": 47410,\n  \"chann\": 8804,\n  \"channel\": 25837,\n  \"channel</w>\": 3847,\n  \"channeling</w>\": 28197,\n  \"channels</w>\": 13961,\n  \"channing</w>\": 37417,\n  \"chant\": 18165,\n  \"chant</w>\": 13521,\n  \"chanting</w>\": 32111,\n  \"chants</w>\": 22723,\n  \"chanyeol</w>\": 18805,\n  \"chao</w>\": 31815,\n  \"chaos</w>\": 10853,\n  \"chaotic</w>\": 33501,\n  \"chap\": 3825,\n  \"chap</w>\": 21939,\n  \"chapel\": 40859,\n  \"chapel</w>\": 10137,\n  \"chaplain</w>\": 38348,\n  \"chaplin</w>\": 32545,\n  \"chapman</w>\": 17968,\n  \"chapp\": 20634,\n  \"chaps</w>\": 36823,\n  \"chapter</w>\": 6014,\n  \"chapters</w>\": 22936,\n  \"char\": 1054,\n  \"char</w>\": 16017,\n  \"chara</w>\": 35668,\n  \"charac\": 2792,\n  \"character\": 10997,\n  \"character</w>\": 4009,\n  \"characterdesign</w>\": 38149,\n  \"characteri\": 20920,\n  \"characteristic</w>\": 44747,\n  \"characteristics</w>\": 26037,\n  \"characters</w>\": 6564,\n  \"charan</w>\": 31851,\n  \"charcoal</w>\": 19268,\n  \"chard</w>\": 17524,\n  \"chardon\": 26599,\n  \"chardonnay</w>\": 28161,\n  \"charge\": 25032,\n  \"charge</w>\": 5948,\n  \"chargeable</w>\": 35664,\n  \"charged</w>\": 7916,\n  \"charger</w>\": 13090,\n  \"chargers</w>\": 17352,\n  \"charges</w>\": 8962,\n  \"charging</w>\": 12514,\n  \"chariot</w>\": 38811,\n  \"charis\": 24449,\n  \"charisma</w>\": 45041,\n  \"charismatic</w>\": 37205,\n  \"charitable</w>\": 23256,\n  \"charities</w>\": 18493,\n  \"charity\": 20008,\n  \"charity</w>\": 4607,\n  \"charitytuesday</w>\": 42794,\n  \"charl\": 47736,\n  \"charle\": 10217,\n  \"charles\": 27983,\n  \"charles</w>\": 5127,\n  \"charleston</w>\": 15478,\n  \"charley</w>\": 38027,\n  \"charli\": 21784,\n  \"charli</w>\": 49392,\n  \"charlie\": 16764,\n  \"charlie</w>\": 6393,\n  \"charlotte\": 18445,\n  \"charlotte</w>\": 7871,\n  \"charlottesville</w>\": 32027,\n  \"charlton</w>\": 27048,\n  \"charm</w>\": 10876,\n  \"charmed</w>\": 39790,\n  \"charming</w>\": 12177,\n  \"charms</w>\": 21944,\n  \"charred</w>\": 44085,\n  \"chart\": 42685,\n  \"chart</w>\": 5053,\n  \"charted</w>\": 27939,\n  \"charter\": 42345,\n  \"charter</w>\": 13569,\n  \"chartered</w>\": 31298,\n  \"charters</w>\": 46626,\n  \"charting</w>\": 39841,\n  \"charts</w>\": 10728,\n  \"chas\": 10717,\n  \"chas</w>\": 29838,\n  \"chase\": 21503,\n  \"chase</w>\": 3859,\n  \"chased</w>\": 30342,\n  \"chaser</w>\": 29560,\n  \"chasers</w>\": 34158,\n  \"chases</w>\": 45011,\n  \"chasing\": 46909,\n  \"chasing</w>\": 13376,\n  \"chassis</w>\": 29188,\n  \"chast\": 42176,\n  \"chasu\": 41352,\n  \"chat\": 5355,\n  \"chat</w>\": 2402,\n  \"chatbots</w>\": 43994,\n  \"chate\": 30377,\n  \"chateau\": 44582,\n  \"chateau</w>\": 23520,\n  \"chath\": 46849,\n  \"chatham</w>\": 32030,\n  \"chats</w>\": 13263,\n  \"chatt\": 21618,\n  \"chattanoo\": 28009,\n  \"chattanooga</w>\": 29866,\n  \"chatted</w>\": 34124,\n  \"chatter\": 33473,\n  \"chatter</w>\": 41103,\n  \"chatting</w>\": 12401,\n  \"chatur\": 33839,\n  \"chau\": 11263,\n  \"chau</w>\": 37536,\n  \"chauffe\": 45440,\n  \"chauhan</w>\": 46663,\n  \"chav\": 28997,\n  \"chavez</w>\": 27480,\n  \"chaw\": 39639,\n  \"chay\": 45317,\n  \"chaz\": 47815,\n  \"chc</w>\": 36233,\n  \"chd</w>\": 41645,\n  \"che\": 983,\n  \"che</w>\": 3842,\n  \"chea</w>\": 39580,\n  \"chead\": 48358,\n  \"cheap\": 27036,\n  \"cheap</w>\": 8678,\n  \"cheape\": 26164,\n  \"cheaper</w>\": 17776,\n  \"cheapest</w>\": 26640,\n  \"cheat</w>\": 18180,\n  \"cheated</w>\": 34285,\n  \"cheating</w>\": 19722,\n  \"chec\": 1113,\n  \"check\": 7672,\n  \"check</w>\": 1217,\n  \"checked</w>\": 10387,\n  \"checker</w>\": 45883,\n  \"checkers</w>\": 48181,\n  \"checking</w>\": 7441,\n  \"checklist</w>\": 26989,\n  \"checkout</w>\": 13101,\n  \"checkpoint</w>\": 27531,\n  \"checks</w>\": 13737,\n  \"ched\": 11341,\n  \"ched</w>\": 2146,\n  \"cheddar</w>\": 20551,\n  \"chee\": 5326,\n  \"chee</w>\": 20944,\n  \"cheek\": 40000,\n  \"cheek</w>\": 21227,\n  \"cheeks</w>\": 23019,\n  \"cheeky</w>\": 15068,\n  \"cheer\": 9733,\n  \"cheer</w>\": 6918,\n  \"cheered</w>\": 38111,\n  \"cheerful</w>\": 28882,\n  \"cheering</w>\": 14289,\n  \"cheerleader</w>\": 29072,\n  \"cheerleaders</w>\": 22343,\n  \"cheerleading</w>\": 36366,\n  \"cheers</w>\": 6562,\n  \"chees\": 15182,\n  \"cheese\": 10738,\n  \"cheese</w>\": 4108,\n  \"cheeseburger</w>\": 41200,\n  \"cheesecake</w>\": 17803,\n  \"cheeses</w>\": 36076,\n  \"cheesy</w>\": 22093,\n  \"cheetah</w>\": 27431,\n  \"chef\": 12137,\n  \"chef</w>\": 4895,\n  \"chefs</w>\": 14486,\n  \"chek</w>\": 43745,\n  \"chel\": 3084,\n  \"chel</w>\": 25970,\n  \"chell</w>\": 46854,\n  \"chelle</w>\": 30141,\n  \"chelms\": 34936,\n  \"chelmsford</w>\": 39890,\n  \"chelse\": 19071,\n  \"chelsea</w>\": 6031,\n  \"chelseafc</w>\": 25927,\n  \"chelten\": 18889,\n  \"cheltenham</w>\": 21589,\n  \"chem\": 5667,\n  \"chem</w>\": 13698,\n  \"chemi\": 7179,\n  \"chemical\": 39376,\n  \"chemical</w>\": 9208,\n  \"chemicals</w>\": 17426,\n  \"chemist</w>\": 23138,\n  \"chemistry</w>\": 8841,\n  \"chemo\": 33095,\n  \"chemo</w>\": 36348,\n  \"chemotherapy</w>\": 41412,\n  \"chemtrails</w>\": 46015,\n  \"chen\": 5907,\n  \"chen</w>\": 8983,\n  \"cheney</w>\": 43522,\n  \"cheng\": 32512,\n  \"cheng</w>\": 30190,\n  \"chenko</w>\": 29073,\n  \"chennai\": 28948,\n  \"chennai</w>\": 12791,\n  \"cheon</w>\": 11498,\n  \"cheque</w>\": 28168,\n  \"cher\": 3597,\n  \"cher</w>\": 3466,\n  \"cheri\": 26471,\n  \"cherish</w>\": 20053,\n  \"cherished</w>\": 42325,\n  \"cherno\": 35376,\n  \"chernobyl</w>\": 40554,\n  \"chero\": 19844,\n  \"cherokee</w>\": 22860,\n  \"cherries</w>\": 27248,\n  \"cherry\": 21470,\n  \"cherry</w>\": 7325,\n  \"chers</w>\": 5789,\n  \"chery</w>\": 38478,\n  \"cheryl\": 37784,\n  \"cheryl</w>\": 20600,\n  \"ches\": 18346,\n  \"ches</w>\": 1910,\n  \"chesa\": 28349,\n  \"chesapeake</w>\": 32909,\n  \"cheshire</w>\": 17130,\n  \"chesney</w>\": 48747,\n  \"chess\": 27170,\n  \"chess</w>\": 8397,\n  \"chest\": 18217,\n  \"chest</w>\": 10563,\n  \"chester\": 10466,\n  \"chester</w>\": 3343,\n  \"chesterfield</w>\": 32975,\n  \"chestnut</w>\": 21834,\n  \"chet</w>\": 9663,\n  \"chett</w>\": 24695,\n  \"chev\": 7152,\n  \"chev</w>\": 41145,\n  \"chevro\": 12850,\n  \"chevrolet</w>\": 13240,\n  \"chevron</w>\": 33792,\n  \"chevy</w>\": 16581,\n  \"chew\": 32645,\n  \"chew</w>\": 22642,\n  \"chewan</w>\": 23689,\n  \"chewbacca</w>\": 49355,\n  \"chewing</w>\": 31486,\n  \"chewy</w>\": 42940,\n  \"chey\": 26968,\n  \"chey</w>\": 31208,\n  \"cheyenne</w>\": 34805,\n  \"chez\": 49183,\n  \"chez</w>\": 10556,\n  \"chf</w>\": 33021,\n  \"chfield</w>\": 41619,\n  \"chhat\": 34127,\n  \"chhattisgarh</w>\": 44246,\n  \"chi\": 1337,\n  \"chi</w>\": 4039,\n  \"chia</w>\": 19147,\n  \"chiang</w>\": 33764,\n  \"chibi</w>\": 22306,\n  \"chic\": 2627,\n  \"chic</w>\": 9091,\n  \"chica</w>\": 44190,\n  \"chicag\": 16778,\n  \"chicago\": 15038,\n  \"chicago</w>\": 3530,\n  \"chicagof\": 40638,\n  \"chicagofire</w>\": 46576,\n  \"chicas</w>\": 40664,\n  \"chichester</w>\": 43823,\n  \"chick\": 3170,\n  \"chick</w>\": 11238,\n  \"chicken\": 26322,\n  \"chicken</w>\": 3717,\n  \"chickens</w>\": 21658,\n  \"chickpea</w>\": 48109,\n  \"chicks</w>\": 17810,\n  \"chico</w>\": 30379,\n  \"chie\": 40046,\n  \"chie</w>\": 12388,\n  \"chief\": 16830,\n  \"chief</w>\": 3455,\n  \"chiefs</w>\": 11419,\n  \"chiev\": 47761,\n  \"chiff\": 27407,\n  \"chiffon</w>\": 31817,\n  \"chig\": 42952,\n  \"chihu\": 22857,\n  \"chihuahu\": 25437,\n  \"chihuahua</w>\": 30181,\n  \"chik</w>\": 45455,\n  \"chil\": 1333,\n  \"child\": 4392,\n  \"child</w>\": 2913,\n  \"childcare</w>\": 31133,\n  \"childhood\": 34772,\n  \"childhood</w>\": 7551,\n  \"childish</w>\": 31939,\n  \"childre\": 2135,\n  \"children\": 11101,\n  \"children</w>\": 2153,\n  \"childrens\": 31551,\n  \"childrens</w>\": 21553,\n  \"childs</w>\": 39521,\n  \"chile</w>\": 10022,\n  \"chilean</w>\": 33186,\n  \"chili</w>\": 13033,\n  \"chill\": 6498,\n  \"chill</w>\": 6382,\n  \"chilled</w>\": 23540,\n  \"chillen</w>\": 45160,\n  \"chilli\": 26787,\n  \"chilli</w>\": 17067,\n  \"chillin</w>\": 10347,\n  \"chilling</w>\": 10179,\n  \"chillout</w>\": 39842,\n  \"chills</w>\": 25460,\n  \"chilly</w>\": 14450,\n  \"chim\": 10543,\n  \"chimney</w>\": 26821,\n  \"chimp</w>\": 44374,\n  \"chin\": 6555,\n  \"chin</w>\": 8979,\n  \"china\": 38943,\n  \"china</w>\": 2817,\n  \"chinatown</w>\": 28582,\n  \"chine\": 4013,\n  \"chinese\": 30568,\n  \"chinese</w>\": 4271,\n  \"ching\": 34621,\n  \"ching</w>\": 1439,\n  \"chino\": 47181,\n  \"chino</w>\": 27440,\n  \"chinook</w>\": 41577,\n  \"chinson</w>\": 33786,\n  \"chio</w>\": 19650,\n  \"chip\": 19271,\n  \"chip</w>\": 8730,\n  \"chipmun\": 46384,\n  \"chipot\": 17702,\n  \"chipotle</w>\": 19284,\n  \"chipp\": 39854,\n  \"chippe\": 46541,\n  \"chipped</w>\": 39892,\n  \"chipping</w>\": 40323,\n  \"chips</w>\": 8855,\n  \"chir\": 15564,\n  \"chiro\": 23413,\n  \"chiroprac\": 25987,\n  \"chiropractic</w>\": 34437,\n  \"chis\": 19920,\n  \"chistan</w>\": 20523,\n  \"chiswick</w>\": 47290,\n  \"chit\": 13515,\n  \"chit</w>\": 45626,\n  \"chita</w>\": 49184,\n  \"chitec\": 39862,\n  \"chive</w>\": 29222,\n  \"chives</w>\": 34921,\n  \"chk</w>\": 47424,\n  \"chl</w>\": 38592,\n  \"chley</w>\": 47748,\n  \"chlo\": 10374,\n  \"chloe\": 39966,\n  \"chloe</w>\": 13992,\n  \"chlor\": 23135,\n  \"chman</w>\": 35835,\n  \"chment</w>\": 20848,\n  \"chner</w>\": 48277,\n  \"cho\": 1327,\n  \"cho</w>\": 5150,\n  \"choa</w>\": 43077,\n  \"choc\": 32772,\n  \"choc</w>\": 21983,\n  \"choco\": 46285,\n  \"choco</w>\": 32692,\n  \"chocol\": 3443,\n  \"chocolat</w>\": 44631,\n  \"chocolate\": 29389,\n  \"chocolate</w>\": 3820,\n  \"chocolates</w>\": 24120,\n  \"choi</w>\": 23749,\n  \"choic\": 35606,\n  \"choice\": 23857,\n  \"choice</w>\": 4051,\n  \"choices</w>\": 11016,\n  \"choir</w>\": 9214,\n  \"choirs</w>\": 43277,\n  \"choke</w>\": 30231,\n  \"choked</w>\": 43521,\n  \"choker</w>\": 39642,\n  \"choking</w>\": 39993,\n  \"chol\": 19802,\n  \"cholera</w>\": 45999,\n  \"cholester\": 26861,\n  \"cholesterol</w>\": 27982,\n  \"chom\": 25151,\n  \"chon\": 20416,\n  \"chon</w>\": 21601,\n  \"chondri\": 37379,\n  \"chong</w>\": 26220,\n  \"choo\": 3869,\n  \"choo</w>\": 24437,\n  \"chool</w>\": 29578,\n  \"chools</w>\": 41958,\n  \"choose\": 22756,\n  \"choose</w>\": 5073,\n  \"chooses</w>\": 29923,\n  \"choosing</w>\": 13475,\n  \"chop\": 10458,\n  \"chop</w>\": 16663,\n  \"chopin</w>\": 42256,\n  \"chopped</w>\": 22580,\n  \"chopper</w>\": 24011,\n  \"chopping</w>\": 35375,\n  \"chopra</w>\": 24258,\n  \"chops</w>\": 26321,\n  \"chor\": 7567,\n  \"chor</w>\": 47795,\n  \"choral</w>\": 26684,\n  \"chord</w>\": 33005,\n  \"chords</w>\": 36152,\n  \"choreo\": 17443,\n  \"choreographer</w>\": 35952,\n  \"choreography</w>\": 32749,\n  \"chores</w>\": 40483,\n  \"chori\": 25718,\n  \"chorizo</w>\": 30802,\n  \"chorus</w>\": 20869,\n  \"chos</w>\": 26559,\n  \"chose</w>\": 11090,\n  \"chosen</w>\": 10044,\n  \"chou\": 16960,\n  \"chou</w>\": 42917,\n  \"choudhary</w>\": 45503,\n  \"chow\": 20257,\n  \"chow</w>\": 21657,\n  \"chowder</w>\": 37886,\n  \"chp</w>\": 35896,\n  \"chr</w>\": 36918,\n  \"chri\": 1135,\n  \"chris\": 9907,\n  \"chris</w>\": 2978,\n  \"chrisbrown</w>\": 41035,\n  \"chriss\": 46745,\n  \"chrissy\": 44762,\n  \"chrissy</w>\": 40485,\n  \"christ\": 1403,\n  \"christ</w>\": 6703,\n  \"christchurch</w>\": 27100,\n  \"christen\": 31956,\n  \"christensen</w>\": 42226,\n  \"christi\": 3328,\n  \"christi</w>\": 33213,\n  \"christian\": 11792,\n  \"christian</w>\": 4729,\n  \"christianity</w>\": 20000,\n  \"christians</w>\": 14842,\n  \"christie</w>\": 16084,\n  \"christin\": 30189,\n  \"christina</w>\": 15925,\n  \"christine\": 42610,\n  \"christine</w>\": 14712,\n  \"christma\": 12039,\n  \"christmas\": 18174,\n  \"christmas</w>\": 1677,\n  \"christmaseve</w>\": 44381,\n  \"christmass\": 44873,\n  \"christop\": 7917,\n  \"christoph</w>\": 47844,\n  \"christophe</w>\": 45486,\n  \"christopher\": 33349,\n  \"christopher</w>\": 9630,\n  \"christy</w>\": 28331,\n  \"chro\": 13207,\n  \"chromatic</w>\": 44207,\n  \"chrome\": 24843,\n  \"chrome</w>\": 9529,\n  \"chromo\": 35809,\n  \"chron\": 5577,\n  \"chron</w>\": 39781,\n  \"chronic\": 10115,\n  \"chronic</w>\": 13677,\n  \"chronicle</w>\": 20034,\n  \"chronicles</w>\": 18905,\n  \"chrono\": 29387,\n  \"chronograph</w>\": 38397,\n  \"chry\": 13508,\n  \"chrysler</w>\": 20078,\n  \"chs\": 40277,\n  \"chs</w>\": 8391,\n  \"chsnews</w>\": 44919,\n  \"cht</w>\": 11384,\n  \"chter</w>\": 47811,\n  \"chu\": 3799,\n  \"chu</w>\": 13622,\n  \"chubby</w>\": 29109,\n  \"chuck\": 13211,\n  \"chuck</w>\": 9894,\n  \"chuckle</w>\": 35733,\n  \"chucky</w>\": 42026,\n  \"chuffed</w>\": 27233,\n  \"chuk\": 25878,\n  \"chuk</w>\": 27221,\n  \"chul</w>\": 33001,\n  \"chum\": 46869,\n  \"chum</w>\": 41767,\n  \"chun\": 14693,\n  \"chun</w>\": 25391,\n  \"chung</w>\": 28418,\n  \"chunk</w>\": 30275,\n  \"chunks</w>\": 45538,\n  \"chunky</w>\": 27978,\n  \"chups</w>\": 46331,\n  \"chur\": 2309,\n  \"church\": 14956,\n  \"church</w>\": 2735,\n  \"churches</w>\": 15539,\n  \"churchill</w>\": 17527,\n  \"chus</w>\": 36246,\n  \"chut\": 28788,\n  \"chutney</w>\": 36261,\n  \"chy\": 15131,\n  \"chy</w>\": 8096,\n  \"chyna</w>\": 43398,\n  \"chÃ¢\": 48669,\n  \"ci\": 698,\n  \"ci</w>\": 5798,\n  \"cia</w>\": 4019,\n  \"cial</w>\": 1143,\n  \"cian</w>\": 32323,\n  \"ciao</w>\": 37677,\n  \"ciara</w>\": 31369,\n  \"cible</w>\": 28873,\n  \"cic\": 14539,\n  \"cic</w>\": 21517,\n  \"cid</w>\": 27359,\n  \"cide</w>\": 34178,\n  \"cider</w>\": 13547,\n  \"cides</w>\": 41326,\n  \"cie</w>\": 19730,\n  \"cier\": 24067,\n  \"cies</w>\": 6785,\n  \"cif</w>\": 35698,\n  \"cigar\": 26031,\n  \"cigar</w>\": 16525,\n  \"cigare\": 13044,\n  \"cigarette</w>\": 18548,\n  \"cigarettes</w>\": 22750,\n  \"cigars</w>\": 20750,\n  \"cii</w>\": 42408,\n  \"cil\": 9217,\n  \"cil</w>\": 2998,\n  \"cilan\": 33998,\n  \"cilantro</w>\": 34568,\n  \"cili\": 18977,\n  \"ciliation</w>\": 25294,\n  \"cim</w>\": 30021,\n  \"cin\": 2396,\n  \"cin</w>\": 25367,\n  \"cina</w>\": 39467,\n  \"cincin\": 13291,\n  \"cincinnati</w>\": 14197,\n  \"cinco</w>\": 25131,\n  \"cincode\": 40930,\n  \"cincodemayo</w>\": 42542,\n  \"cincy\": 30015,\n  \"cincy</w>\": 30286,\n  \"cinde\": 20660,\n  \"cinderella</w>\": 21515,\n  \"cindy\": 34439,\n  \"cindy</w>\": 18532,\n  \"cine\": 4015,\n  \"cine</w>\": 27451,\n  \"cinema\": 38251,\n  \"cinema</w>\": 6443,\n  \"cinemas</w>\": 14845,\n  \"cinematic</w>\": 25602,\n  \"cinemato\": 21919,\n  \"cinematographer</w>\": 39059,\n  \"cinematography</w>\": 33802,\n  \"ciner\": 39882,\n  \"cing</w>\": 4014,\n  \"cini</w>\": 25699,\n  \"cinnam\": 12768,\n  \"cinnamon</w>\": 13460,\n  \"cino</w>\": 18616,\n  \"cio\": 44584,\n  \"cio</w>\": 9954,\n  \"cion</w>\": 22024,\n  \"ciones</w>\": 37155,\n  \"cious</w>\": 38466,\n  \"cip\": 32884,\n  \"cir\": 2459,\n  \"cir</w>\": 41135,\n  \"circa</w>\": 10411,\n  \"circle\": 33574,\n  \"circle</w>\": 7117,\n  \"circles</w>\": 19411,\n  \"circling</w>\": 46036,\n  \"circu\": 5143,\n  \"circuit\": 35583,\n  \"circuit</w>\": 9801,\n  \"circuits</w>\": 33260,\n  \"circul\": 16618,\n  \"circular</w>\": 19733,\n  \"circulare\": 39525,\n  \"circulareconomy</w>\": 39878,\n  \"circulated</w>\": 46258,\n  \"circulating</w>\": 42980,\n  \"circulation</w>\": 27880,\n  \"circum\": 13406,\n  \"circumstances</w>\": 18786,\n  \"circus</w>\": 11833,\n  \"cirque</w>\": 36049,\n  \"cis\": 9459,\n  \"cis</w>\": 23513,\n  \"cisco\": 36689,\n  \"cisco</w>\": 19290,\n  \"cise</w>\": 19657,\n  \"cisely</w>\": 33434,\n  \"cision</w>\": 41957,\n  \"cism</w>\": 24166,\n  \"cist</w>\": 40906,\n  \"cit\": 4420,\n  \"cit</w>\": 31294,\n  \"citadel</w>\": 38036,\n  \"citation</w>\": 33581,\n  \"cite</w>\": 32641,\n  \"cited</w>\": 25069,\n  \"cites</w>\": 34490,\n  \"citi\": 4280,\n  \"citi</w>\": 30270,\n  \"cities</w>\": 5441,\n  \"citing</w>\": 29088,\n  \"citiz\": 5816,\n  \"citizen\": 11720,\n  \"citizen</w>\": 9814,\n  \"citizens</w>\": 7949,\n  \"citizenship</w>\": 17386,\n  \"cito</w>\": 42636,\n  \"citro\": 27941,\n  \"citroen</w>\": 35805,\n  \"citrus</w>\": 17379,\n  \"city\": 5002,\n  \"city</w>\": 1305,\n  \"cityfc</w>\": 28751,\n  \"cityo\": 25709,\n  \"cityof\": 11595,\n  \"cityscape</w>\": 40808,\n  \"ciu\": 39693,\n  \"cius</w>\": 42559,\n  \"civ\": 40039,\n  \"civic\": 32240,\n  \"civic</w>\": 11888,\n  \"civil\": 6923,\n  \"civil</w>\": 6450,\n  \"civilian</w>\": 21187,\n  \"civilians</w>\": 18076,\n  \"civilization</w>\": 22503,\n  \"civilwar</w>\": 34524,\n  \"ciÃ³n</w>\": 44700,\n  \"cj\": 15238,\n  \"cj</w>\": 15205,\n  \"ck\": 916,\n  \"ck</w>\": 868,\n  \"cke\": 25224,\n  \"cke</w>\": 40989,\n  \"cked</w>\": 3441,\n  \"cken\": 25566,\n  \"cker\": 15509,\n  \"cker</w>\": 4744,\n  \"ckers</w>\": 37073,\n  \"cket</w>\": 5525,\n  \"ckett</w>\": 33899,\n  \"ckey\": 15029,\n  \"ckey</w>\": 3657,\n  \"cki\": 36916,\n  \"cki</w>\": 41055,\n  \"cking</w>\": 4805,\n  \"cko</w>\": 28818,\n  \"cks</w>\": 2031,\n  \"cky\": 26229,\n  \"cky</w>\": 3083,\n  \"cl\": 969,\n  \"cl</w>\": 6482,\n  \"cla\": 940,\n  \"cla</w>\": 20636,\n  \"clad</w>\": 31606,\n  \"cladding</w>\": 46411,\n  \"clai\": 29459,\n  \"claim\": 4290,\n  \"claim</w>\": 6607,\n  \"claimed</w>\": 9010,\n  \"claiming</w>\": 15286,\n  \"claims</w>\": 6852,\n  \"clair\": 31441,\n  \"clair</w>\": 14039,\n  \"claire\": 20410,\n  \"claire</w>\": 10460,\n  \"clam\": 13588,\n  \"clam</w>\": 32598,\n  \"clamation</w>\": 21793,\n  \"clamp</w>\": 41501,\n  \"clams</w>\": 38849,\n  \"clan\": 29252,\n  \"clan</w>\": 14114,\n  \"clancy</w>\": 37227,\n  \"clans</w>\": 38279,\n  \"clap\": 30037,\n  \"clap</w>\": 25546,\n  \"clapham</w>\": 43619,\n  \"clapton</w>\": 37683,\n  \"clar\": 3617,\n  \"clara</w>\": 19468,\n  \"clare\": 18948,\n  \"clare</w>\": 15927,\n  \"claremont</w>\": 47789,\n  \"clarence</w>\": 29320,\n  \"clari\": 15175,\n  \"clarify</w>\": 37004,\n  \"clarinet</w>\": 41178,\n  \"clarity</w>\": 21323,\n  \"clark\": 13340,\n  \"clark</w>\": 7521,\n  \"clarke</w>\": 11548,\n  \"clarkson</w>\": 25706,\n  \"clas\": 32003,\n  \"clash\": 38367,\n  \"clash</w>\": 9359,\n  \"clashes</w>\": 25193,\n  \"clasico</w>\": 43567,\n  \"class\": 2876,\n  \"class</w>\": 1874,\n  \"classes</w>\": 6919,\n  \"classi\": 2507,\n  \"classic\": 9353,\n  \"classic</w>\": 2713,\n  \"classical\": 22179,\n  \"classical</w>\": 11355,\n  \"classicalmusic</w>\": 27806,\n  \"classiccar</w>\": 46906,\n  \"classiccars</w>\": 21064,\n  \"classics</w>\": 10634,\n  \"classification</w>\": 26612,\n  \"classified</w>\": 22056,\n  \"classmate</w>\": 37090,\n  \"classmates</w>\": 30062,\n  \"classof</w>\": 25345,\n  \"classroom</w>\": 9001,\n  \"classrooms</w>\": 25768,\n  \"classy</w>\": 11615,\n  \"clau\": 7526,\n  \"claude</w>\": 17461,\n  \"claudi\": 39439,\n  \"claudia</w>\": 21893,\n  \"claudio</w>\": 31230,\n  \"claus</w>\": 23317,\n  \"clause</w>\": 26151,\n  \"clave</w>\": 24111,\n  \"claw\": 49230,\n  \"claw</w>\": 19106,\n  \"claws</w>\": 29161,\n  \"clay\": 10402,\n  \"clay</w>\": 8823,\n  \"clays</w>\": 26128,\n  \"clayton\": 46445,\n  \"clayton</w>\": 19413,\n  \"clc</w>\": 31380,\n  \"cle\": 1321,\n  \"cle</w>\": 2537,\n  \"clean\": 3572,\n  \"clean</w>\": 3772,\n  \"cleaned</w>\": 17468,\n  \"cleanenergy</w>\": 43538,\n  \"cleaner</w>\": 15619,\n  \"cleaners</w>\": 33258,\n  \"cleaning</w>\": 7210,\n  \"cleanliness</w>\": 47886,\n  \"cleans</w>\": 40827,\n  \"cleanse</w>\": 28717,\n  \"cleanser</w>\": 44170,\n  \"cleansing</w>\": 25931,\n  \"cleanup</w>\": 22353,\n  \"clear\": 4631,\n  \"clear</w>\": 3143,\n  \"clearance</w>\": 17959,\n  \"cleared</w>\": 14880,\n  \"clearer</w>\": 37031,\n  \"clearing</w>\": 15481,\n  \"clearly</w>\": 7767,\n  \"clears</w>\": 29092,\n  \"clearwater</w>\": 32124,\n  \"cleary</w>\": 44342,\n  \"cleats</w>\": 33486,\n  \"cleavage</w>\": 44165,\n  \"cled</w>\": 12827,\n  \"clegg</w>\": 42915,\n  \"clemens</w>\": 45896,\n  \"clement\": 22592,\n  \"clement</w>\": 24714,\n  \"clemente</w>\": 42461,\n  \"clementine</w>\": 47112,\n  \"clements</w>\": 49175,\n  \"clemson\": 38170,\n  \"clemson</w>\": 19537,\n  \"clen\": 35547,\n  \"cleo</w>\": 40344,\n  \"cleop\": 36287,\n  \"cleopatra</w>\": 41212,\n  \"cler\": 11828,\n  \"clergy</w>\": 42635,\n  \"cleric</w>\": 43748,\n  \"clerk</w>\": 22230,\n  \"clermont</w>\": 47529,\n  \"cles</w>\": 8077,\n  \"cleve\": 37599,\n  \"clevel\": 7701,\n  \"cleveland\": 30716,\n  \"cleveland</w>\": 8430,\n  \"clever\": 30977,\n  \"clever</w>\": 13385,\n  \"clg</w>\": 47546,\n  \"cli\": 1503,\n  \"clich\": 44407,\n  \"click\": 16676,\n  \"click</w>\": 3585,\n  \"clicked</w>\": 29015,\n  \"clicking</w>\": 26542,\n  \"clicks</w>\": 31250,\n  \"client\": 48528,\n  \"client</w>\": 7467,\n  \"clients</w>\": 8114,\n  \"clif\": 13182,\n  \"cliff\": 23827,\n  \"cliff</w>\": 10625,\n  \"cliffe</w>\": 15170,\n  \"clifford</w>\": 24226,\n  \"cliffs</w>\": 20953,\n  \"clifton</w>\": 23878,\n  \"climat\": 37283,\n  \"climate\": 7854,\n  \"climate</w>\": 4589,\n  \"climateaction</w>\": 31622,\n  \"climatechange</w>\": 11055,\n  \"climates</w>\": 46022,\n  \"climax</w>\": 37033,\n  \"climb\": 7421,\n  \"climb</w>\": 10649,\n  \"climbed</w>\": 22528,\n  \"climber</w>\": 36910,\n  \"climbers</w>\": 47648,\n  \"climbing</w>\": 9877,\n  \"climbs</w>\": 29098,\n  \"clin\": 2879,\n  \"clinch</w>\": 30404,\n  \"clinched</w>\": 44064,\n  \"cline</w>\": 37460,\n  \"cling\": 37068,\n  \"cling</w>\": 4760,\n  \"clinic</w>\": 7926,\n  \"clinical\": 35133,\n  \"clinical</w>\": 9148,\n  \"clinicians</w>\": 45866,\n  \"clinics</w>\": 23330,\n  \"clint\": 37542,\n  \"clint</w>\": 21160,\n  \"clinton\": 34403,\n  \"clinton</w>\": 5820,\n  \"clio</w>\": 46889,\n  \"clip\": 39712,\n  \"clip</w>\": 9289,\n  \"clipped</w>\": 45524,\n  \"clipper</w>\": 42245,\n  \"clippers</w>\": 23319,\n  \"clipping</w>\": 47484,\n  \"clips</w>\": 16594,\n  \"clique</w>\": 34983,\n  \"clive\": 36086,\n  \"clive</w>\": 21509,\n  \"cll\": 46091,\n  \"cllr\": 45743,\n  \"cllr</w>\": 23034,\n  \"clo\": 1194,\n  \"cloak</w>\": 36528,\n  \"clock\": 19878,\n  \"clock</w>\": 6716,\n  \"clocked</w>\": 49049,\n  \"clocks</w>\": 25895,\n  \"clockwise</w>\": 46150,\n  \"clockwork</w>\": 42297,\n  \"clon\": 24477,\n  \"clone</w>\": 22854,\n  \"clones</w>\": 48047,\n  \"clooney</w>\": 33161,\n  \"clos</w>\": 48821,\n  \"close\": 10603,\n  \"close</w>\": 2660,\n  \"closed</w>\": 4552,\n  \"closely</w>\": 13478,\n  \"closer</w>\": 6377,\n  \"closes</w>\": 11354,\n  \"closest</w>\": 14975,\n  \"closet</w>\": 14221,\n  \"closeup</w>\": 35439,\n  \"closing</w>\": 7101,\n  \"closure</w>\": 13249,\n  \"closures</w>\": 22923,\n  \"cloth</w>\": 14559,\n  \"clothes</w>\": 7080,\n  \"clothing</w>\": 7425,\n  \"clou\": 4069,\n  \"cloud\": 12965,\n  \"cloud</w>\": 3887,\n  \"cloudcomputing</w>\": 41390,\n  \"clouds</w>\": 6244,\n  \"cloudy</w>\": 13106,\n  \"clough</w>\": 42909,\n  \"clover\": 39574,\n  \"clover</w>\": 22812,\n  \"clow\": 18386,\n  \"clown</w>\": 15329,\n  \"clowns</w>\": 30820,\n  \"cls</w>\": 44251,\n  \"clt\": 29651,\n  \"clt</w>\": 24236,\n  \"clu\": 996,\n  \"club\": 9642,\n  \"club</w>\": 1736,\n  \"clubbing</w>\": 48128,\n  \"clubhouse</w>\": 26553,\n  \"clubs</w>\": 9437,\n  \"clue</w>\": 14994,\n  \"clueless</w>\": 35350,\n  \"clues</w>\": 23764,\n  \"clusive</w>\": 41362,\n  \"cluster</w>\": 15595,\n  \"clusters</w>\": 33217,\n  \"clut\": 28507,\n  \"clutch</w>\": 13953,\n  \"clutter</w>\": 40804,\n  \"cly\": 12037,\n  \"clyde\": 39557,\n  \"clyde</w>\": 18469,\n  \"cm\": 10190,\n  \"cm</w>\": 3741,\n  \"cma\": 30554,\n  \"cma</w>\": 31388,\n  \"cmc</w>\": 45839,\n  \"cmdr</w>\": 48250,\n  \"cme</w>\": 34946,\n  \"cmo</w>\": 24589,\n  \"cmon</w>\": 42904,\n  \"cmp\": 46355,\n  \"cms</w>\": 22520,\n  \"cmt</w>\": 42727,\n  \"cmu</w>\": 43046,\n  \"cn\": 3886,\n  \"cn</w>\": 16200,\n  \"cna</w>\": 48287,\n  \"cnbc\": 41242,\n  \"cnbc</w>\": 24371,\n  \"cnblue</w>\": 36018,\n  \"cnc</w>\": 20571,\n  \"cnet</w>\": 47487,\n  \"cnews</w>\": 24319,\n  \"cng</w>\": 41496,\n  \"cnn\": 22405,\n  \"cnn</w>\": 8259,\n  \"cns</w>\": 46095,\n  \"cny</w>\": 31614,\n  \"co\": 622,\n  \"co</w>\": 1320,\n  \"coa</w>\": 29167,\n  \"coach\": 3275,\n  \"coach</w>\": 2312,\n  \"coached</w>\": 30228,\n  \"coachella</w>\": 20222,\n  \"coaches</w>\": 6924,\n  \"coaching</w>\": 7766,\n  \"coal\": 10227,\n  \"coal</w>\": 7919,\n  \"coalition</w>\": 12920,\n  \"coast\": 6398,\n  \"coast</w>\": 3720,\n  \"coastal\": 38246,\n  \"coastal</w>\": 10852,\n  \"coaster</w>\": 15944,\n  \"coasters</w>\": 31548,\n  \"coastguard</w>\": 40601,\n  \"coastline</w>\": 27959,\n  \"coasts</w>\": 42225,\n  \"coat\": 28869,\n  \"coat</w>\": 7356,\n  \"coated</w>\": 23401,\n  \"coates</w>\": 36899,\n  \"coating</w>\": 25369,\n  \"coatings</w>\": 48706,\n  \"coats</w>\": 18075,\n  \"cob\": 20140,\n  \"cob</w>\": 32863,\n  \"cobain</w>\": 36866,\n  \"cobalt</w>\": 30896,\n  \"cobb</w>\": 22719,\n  \"cobble\": 47894,\n  \"cobra</w>\": 21574,\n  \"coc\": 23036,\n  \"coc</w>\": 39498,\n  \"coca</w>\": 21197,\n  \"cocac\": 26393,\n  \"cocacola</w>\": 31248,\n  \"cocaine</w>\": 20534,\n  \"coch\": 18599,\n  \"cochran</w>\": 48798,\n  \"cochrane</w>\": 41752,\n  \"coco\": 11850,\n  \"coco</w>\": 13316,\n  \"cocoa</w>\": 18074,\n  \"cocon\": 8597,\n  \"coconut</w>\": 9581,\n  \"cod\": 16132,\n  \"cod</w>\": 11915,\n  \"code\": 11582,\n  \"code</w>\": 3217,\n  \"coded</w>\": 33703,\n  \"coden\": 43914,\n  \"coder</w>\": 41561,\n  \"codes</w>\": 14566,\n  \"codi\": 39711,\n  \"coding</w>\": 12647,\n  \"cody\": 23222,\n  \"cody</w>\": 12666,\n  \"coe</w>\": 15386,\n  \"coed</w>\": 41028,\n  \"coel\": 45633,\n  \"coer\": 41198,\n  \"coeur</w>\": 44986,\n  \"coffe\": 2255,\n  \"coffee\": 12898,\n  \"coffee</w>\": 2453,\n  \"coffees</w>\": 41184,\n  \"coffey</w>\": 48066,\n  \"cofficial</w>\": 18757,\n  \"coffin</w>\": 29907,\n  \"cog\": 26362,\n  \"cog</w>\": 35960,\n  \"cogn\": 12210,\n  \"cognac</w>\": 44361,\n  \"cognition</w>\": 46825,\n  \"cognitive</w>\": 16584,\n  \"cohe\": 20669,\n  \"cohen</w>\": 13381,\n  \"coherent</w>\": 48450,\n  \"cohort</w>\": 22782,\n  \"coil</w>\": 25307,\n  \"coim\": 41528,\n  \"coin\": 14651,\n  \"coin</w>\": 4170,\n  \"coinci\": 14015,\n  \"coincidence</w>\": 19807,\n  \"coins</w>\": 10530,\n  \"coke\": 39602,\n  \"coke</w>\": 14035,\n  \"col\": 754,\n  \"col</w>\": 9371,\n  \"cola</w>\": 15444,\n  \"colbert</w>\": 31647,\n  \"colby</w>\": 32068,\n  \"colchester</w>\": 31715,\n  \"cold\": 11146,\n  \"cold</w>\": 3153,\n  \"colder</w>\": 23859,\n  \"coldest</w>\": 31438,\n  \"coldplay</w>\": 27770,\n  \"cole\": 9305,\n  \"cole</w>\": 8166,\n  \"coleman</w>\": 15774,\n  \"coles\": 40265,\n  \"coles</w>\": 30398,\n  \"coli\": 18877,\n  \"coli</w>\": 15910,\n  \"colin\": 20989,\n  \"colin</w>\": 10238,\n  \"coliseum</w>\": 21836,\n  \"coll\": 25982,\n  \"coll</w>\": 23898,\n  \"colla\": 2929,\n  \"collab</w>\": 14013,\n  \"collabor\": 4437,\n  \"collaborate</w>\": 21271,\n  \"collaborated</w>\": 42265,\n  \"collaborating</w>\": 25545,\n  \"collaboration</w>\": 6642,\n  \"collaborations</w>\": 36520,\n  \"collaborative</w>\": 15841,\n  \"collaborator</w>\": 48186,\n  \"collaborators</w>\": 45901,\n  \"collage</w>\": 11258,\n  \"collagen</w>\": 36120,\n  \"collap\": 16881,\n  \"collapse</w>\": 16520,\n  \"collapsed</w>\": 25037,\n  \"collapses</w>\": 43601,\n  \"collar\": 39662,\n  \"collar</w>\": 13497,\n  \"collateral</w>\": 44512,\n  \"colle\": 1801,\n  \"colleague</w>\": 13067,\n  \"colleagues</w>\": 8203,\n  \"collec\": 1733,\n  \"collect</w>\": 10186,\n  \"collected</w>\": 11980,\n  \"collecti\": 18530,\n  \"collectible</w>\": 25680,\n  \"collectibles</w>\": 21519,\n  \"collecting</w>\": 10325,\n  \"collection</w>\": 2548,\n  \"collections</w>\": 12760,\n  \"collective</w>\": 10162,\n  \"collectively</w>\": 40687,\n  \"collector</w>\": 13522,\n  \"collectors</w>\": 20540,\n  \"collects</w>\": 31576,\n  \"colleen</w>\": 31020,\n  \"college\": 13512,\n  \"college</w>\": 2229,\n  \"colleges</w>\": 17357,\n  \"collegi\": 16311,\n  \"collegiate</w>\": 18068,\n  \"colli\": 8262,\n  \"collide</w>\": 27214,\n  \"collie</w>\": 30611,\n  \"collier</w>\": 35748,\n  \"collin\": 24056,\n  \"collin</w>\": 32116,\n  \"colling\": 32319,\n  \"collingwood</w>\": 45873,\n  \"collins</w>\": 8684,\n  \"collision</w>\": 15407,\n  \"collo\": 25115,\n  \"colloqui\": 37243,\n  \"colloquium</w>\": 46514,\n  \"collu\": 25658,\n  \"collusion</w>\": 33864,\n  \"colo\": 7300,\n  \"colo</w>\": 27288,\n  \"cologne</w>\": 22216,\n  \"cology</w>\": 19187,\n  \"colom\": 8987,\n  \"colombia</w>\": 12901,\n  \"colombian</w>\": 28701,\n  \"colombo</w>\": 33207,\n  \"colon\": 8280,\n  \"colon</w>\": 29050,\n  \"colonel</w>\": 22674,\n  \"coloni\": 22667,\n  \"colonial</w>\": 16530,\n  \"colonialism</w>\": 43385,\n  \"colonies</w>\": 38738,\n  \"colony</w>\": 18767,\n  \"color\": 4036,\n  \"color</w>\": 3140,\n  \"colorado\": 34580,\n  \"colorado</w>\": 6742,\n  \"colorec\": 41171,\n  \"colored</w>\": 11775,\n  \"colorful</w>\": 11444,\n  \"colori\": 28764,\n  \"coloring</w>\": 17696,\n  \"colorized</w>\": 46730,\n  \"colors</w>\": 5389,\n  \"colorstv</w>\": 28195,\n  \"colorway</w>\": 44576,\n  \"colossal</w>\": 40258,\n  \"colosse\": 48142,\n  \"colossus</w>\": 34022,\n  \"colour\": 10240,\n  \"colour</w>\": 4769,\n  \"coloured</w>\": 17111,\n  \"colourful</w>\": 15562,\n  \"colouring</w>\": 31803,\n  \"colours</w>\": 7626,\n  \"cols</w>\": 35726,\n  \"colt</w>\": 19726,\n  \"colton</w>\": 32249,\n  \"coltrane</w>\": 42333,\n  \"colts</w>\": 16135,\n  \"colum\": 4164,\n  \"columb\": 31043,\n  \"columbi\": 25947,\n  \"columbia</w>\": 9410,\n  \"columbus</w>\": 11273,\n  \"column</w>\": 10593,\n  \"columnist</w>\": 28958,\n  \"columns</w>\": 29056,\n  \"com\": 610,\n  \"com</w>\": 2464,\n  \"coma</w>\": 19620,\n  \"comb\": 3587,\n  \"comb</w>\": 16380,\n  \"combat\": 35083,\n  \"combat</w>\": 9275,\n  \"combating</w>\": 46121,\n  \"combe</w>\": 14363,\n  \"combin\": 25112,\n  \"combination</w>\": 11312,\n  \"combinations</w>\": 34950,\n  \"combine</w>\": 12919,\n  \"combined</w>\": 10427,\n  \"combines</w>\": 22991,\n  \"combining</w>\": 23561,\n  \"combo</w>\": 10155,\n  \"combos</w>\": 48117,\n  \"combs</w>\": 30694,\n  \"combu\": 35629,\n  \"combustion</w>\": 44654,\n  \"comcast</w>\": 30043,\n  \"come\": 4225,\n  \"come</w>\": 891,\n  \"comeback</w>\": 8234,\n  \"comedian</w>\": 13848,\n  \"comedians</w>\": 33758,\n  \"comedic</w>\": 43360,\n  \"comedy\": 19346,\n  \"comedy</w>\": 4749,\n  \"comer\": 42997,\n  \"comer</w>\": 20916,\n  \"comers</w>\": 34436,\n  \"comes</w>\": 2091,\n  \"comet</w>\": 21405,\n  \"comets</w>\": 40636,\n  \"comey</w>\": 22957,\n  \"comfor\": 6563,\n  \"comfort\": 44000,\n  \"comfort</w>\": 7808,\n  \"comfortable</w>\": 8652,\n  \"comfortably</w>\": 30392,\n  \"comforting</w>\": 33835,\n  \"comforts</w>\": 42243,\n  \"comfy</w>\": 15736,\n  \"comi\": 40781,\n  \"comic\": 7729,\n  \"comic</w>\": 4962,\n  \"comicart</w>\": 46018,\n  \"comicbook</w>\": 46564,\n  \"comicbooks</w>\": 22018,\n  \"comiccon</w>\": 18379,\n  \"comicon</w>\": 43820,\n  \"comics</w>\": 4256,\n  \"comin</w>\": 18164,\n  \"coming\": 14916,\n  \"coming</w>\": 1171,\n  \"comingsoon</w>\": 19894,\n  \"comm\": 965,\n  \"comm</w>\": 11413,\n  \"comman\": 39780,\n  \"command\": 18391,\n  \"command</w>\": 11350,\n  \"commander</w>\": 11265,\n  \"commanders</w>\": 41667,\n  \"commanding</w>\": 36933,\n  \"commandments</w>\": 43409,\n  \"commando</w>\": 31361,\n  \"commands</w>\": 38163,\n  \"comme</w>\": 29692,\n  \"commemor\": 9495,\n  \"commemorate</w>\": 21242,\n  \"commemorates</w>\": 45149,\n  \"commemorating</w>\": 28734,\n  \"commemoration</w>\": 29288,\n  \"commemorative</w>\": 24623,\n  \"commen\": 15795,\n  \"commence</w>\": 25059,\n  \"commenced</w>\": 43908,\n  \"commencement</w>\": 21666,\n  \"commences</w>\": 48551,\n  \"commend\": 37555,\n  \"commended</w>\": 40702,\n  \"comment\": 20035,\n  \"comment</w>\": 5761,\n  \"commentary</w>\": 14146,\n  \"commentator</w>\": 32016,\n  \"commented</w>\": 28328,\n  \"commenting</w>\": 37292,\n  \"comments</w>\": 6606,\n  \"commer\": 4028,\n  \"commerce</w>\": 8333,\n  \"commerci\": 15601,\n  \"commercial\": 31802,\n  \"commercial</w>\": 6287,\n  \"commercials</w>\": 30724,\n  \"commish</w>\": 45399,\n  \"commissi\": 6000,\n  \"commission</w>\": 5292,\n  \"commissioned</w>\": 16565,\n  \"commissioner</w>\": 10221,\n  \"commissioners</w>\": 30702,\n  \"commissioning</w>\": 29585,\n  \"commissions</w>\": 20668,\n  \"commit\": 3041,\n  \"commit</w>\": 11797,\n  \"commitment</w>\": 7770,\n  \"commitments</w>\": 32136,\n  \"commits</w>\": 20241,\n  \"committed</w>\": 7907,\n  \"committee</w>\": 5636,\n  \"committees</w>\": 40504,\n  \"committing</w>\": 21937,\n  \"commod\": 9496,\n  \"commodities</w>\": 30350,\n  \"commodity</w>\": 29041,\n  \"commodore</w>\": 31129,\n  \"common\": 8414,\n  \"common</w>\": 4176,\n  \"commonly</w>\": 20344,\n  \"commons</w>\": 16653,\n  \"commonwealth</w>\": 16569,\n  \"comms</w>\": 18832,\n  \"commu\": 9561,\n  \"commun\": 1515,\n  \"communal</w>\": 32809,\n  \"communi\": 16164,\n  \"communic\": 4784,\n  \"communicate</w>\": 19809,\n  \"communication</w>\": 7999,\n  \"communications</w>\": 10052,\n  \"communion</w>\": 28579,\n  \"communism</w>\": 35387,\n  \"communist</w>\": 18602,\n  \"communities</w>\": 6361,\n  \"community\": 14784,\n  \"community</w>\": 1927,\n  \"commute</w>\": 15898,\n  \"commuter</w>\": 27782,\n  \"commuters</w>\": 30823,\n  \"commuting</w>\": 43503,\n  \"como</w>\": 16236,\n  \"comp\": 2561,\n  \"comp</w>\": 11679,\n  \"compac\": 40014,\n  \"compact</w>\": 13690,\n  \"compan\": 1995,\n  \"companies</w>\": 5361,\n  \"companion</w>\": 14963,\n  \"companions</w>\": 37124,\n  \"company</w>\": 2634,\n  \"compar\": 7580,\n  \"comparable</w>\": 27092,\n  \"comparative</w>\": 33388,\n  \"compare</w>\": 13771,\n  \"compared</w>\": 10544,\n  \"compares</w>\": 25104,\n  \"comparing</w>\": 20564,\n  \"comparison</w>\": 14186,\n  \"comparisons</w>\": 40870,\n  \"compart\": 30072,\n  \"compartment</w>\": 40383,\n  \"compass</w>\": 19438,\n  \"compassion</w>\": 14463,\n  \"compassionate</w>\": 30193,\n  \"compati\": 17295,\n  \"compatibility</w>\": 41614,\n  \"compatible</w>\": 21286,\n  \"compe\": 5254,\n  \"compelled</w>\": 49375,\n  \"compelling</w>\": 21766,\n  \"compen\": 42079,\n  \"compens\": 15172,\n  \"compensation</w>\": 18663,\n  \"compet\": 2932,\n  \"compete</w>\": 10038,\n  \"competed</w>\": 27767,\n  \"competen\": 31853,\n  \"competence</w>\": 31165,\n  \"competency</w>\": 49293,\n  \"competent</w>\": 28113,\n  \"competes</w>\": 39826,\n  \"competing</w>\": 13068,\n  \"competit\": 15892,\n  \"competiti\": 32581,\n  \"competition</w>\": 3742,\n  \"competitions</w>\": 23259,\n  \"competitive</w>\": 10687,\n  \"competitiveness</w>\": 43209,\n  \"competitor</w>\": 26633,\n  \"competitors</w>\": 23638,\n  \"compilation</w>\": 20446,\n  \"compiled</w>\": 34579,\n  \"compla\": 7428,\n  \"complain</w>\": 19292,\n  \"complained</w>\": 42029,\n  \"complaining</w>\": 20812,\n  \"complains</w>\": 46363,\n  \"complaint</w>\": 20391,\n  \"complaints</w>\": 20020,\n  \"comple\": 1730,\n  \"complement</w>\": 36624,\n  \"complementary</w>\": 48953,\n  \"complete</w>\": 3263,\n  \"completed</w>\": 5976,\n  \"completely</w>\": 5989,\n  \"completes</w>\": 19321,\n  \"completing</w>\": 14949,\n  \"completion</w>\": 15915,\n  \"complex\": 16099,\n  \"complex</w>\": 6324,\n  \"complexes</w>\": 47870,\n  \"complexion</w>\": 47732,\n  \"complexity</w>\": 24815,\n  \"compli\": 5270,\n  \"compliance</w>\": 14658,\n  \"compliant</w>\": 29893,\n  \"complic\": 11460,\n  \"complicated</w>\": 16621,\n  \"complications</w>\": 29936,\n  \"compliment</w>\": 25116,\n  \"complimentary</w>\": 20948,\n  \"compliments</w>\": 25477,\n  \"comply</w>\": 36281,\n  \"component</w>\": 21284,\n  \"components</w>\": 16816,\n  \"compos\": 7783,\n  \"compose</w>\": 43659,\n  \"composed</w>\": 19916,\n  \"composer</w>\": 12104,\n  \"composers</w>\": 33314,\n  \"composing</w>\": 40412,\n  \"composite</w>\": 21606,\n  \"composites</w>\": 45395,\n  \"composition</w>\": 17510,\n  \"compositions</w>\": 44652,\n  \"compost\": 46002,\n  \"compost</w>\": 33307,\n  \"compound</w>\": 19980,\n  \"compounds</w>\": 33991,\n  \"compre\": 8483,\n  \"compreh\": 42976,\n  \"comprehen\": 12050,\n  \"comprehend</w>\": 48230,\n  \"comprehensive</w>\": 13854,\n  \"compress\": 33353,\n  \"compressed</w>\": 42359,\n  \"compression</w>\": 25638,\n  \"compressor</w>\": 39607,\n  \"compri\": 29445,\n  \"compromise</w>\": 26611,\n  \"compromised</w>\": 38576,\n  \"compromising</w>\": 45436,\n  \"comps</w>\": 48665,\n  \"compton</w>\": 28364,\n  \"compu\": 11639,\n  \"compul\": 25869,\n  \"compulsory</w>\": 39345,\n  \"computing</w>\": 12732,\n  \"comra\": 25553,\n  \"comrade</w>\": 30844,\n  \"comrades</w>\": 29282,\n  \"coms</w>\": 30493,\n  \"con\": 616,\n  \"con</w>\": 2457,\n  \"cona</w>\": 30605,\n  \"conan</w>\": 24750,\n  \"conce\": 9145,\n  \"concealed</w>\": 35419,\n  \"conceded</w>\": 37895,\n  \"conceived</w>\": 39725,\n  \"concentr\": 11085,\n  \"concentrate</w>\": 30846,\n  \"concentrated</w>\": 36776,\n  \"concentration</w>\": 18565,\n  \"concep\": 8389,\n  \"concepcion</w>\": 47035,\n  \"concept</w>\": 6353,\n  \"conceptart</w>\": 31162,\n  \"conception</w>\": 30510,\n  \"conceptions</w>\": 40307,\n  \"concepts</w>\": 16763,\n  \"conceptu\": 42745,\n  \"conceptual</w>\": 34070,\n  \"concer\": 2228,\n  \"concern</w>\": 12928,\n  \"concerned</w>\": 12020,\n  \"concerning</w>\": 21772,\n  \"concerns</w>\": 11134,\n  \"concert\": 32180,\n  \"concert</w>\": 3066,\n  \"concerto</w>\": 24710,\n  \"concerts</w>\": 14418,\n  \"concession</w>\": 38117,\n  \"concessions</w>\": 43981,\n  \"concier\": 28859,\n  \"concierge</w>\": 39850,\n  \"conclave</w>\": 38098,\n  \"conclu\": 9627,\n  \"conclude</w>\": 37525,\n  \"concluded</w>\": 27825,\n  \"concludes</w>\": 30634,\n  \"conclusion</w>\": 20932,\n  \"conclusions</w>\": 39507,\n  \"conco\": 43034,\n  \"concor\": 19913,\n  \"concord</w>\": 26448,\n  \"concordia</w>\": 35492,\n  \"concours</w>\": 36282,\n  \"concourse</w>\": 37793,\n  \"concre\": 43658,\n  \"concrete</w>\": 9637,\n  \"concussion</w>\": 28321,\n  \"condem\": 13287,\n  \"condemn</w>\": 27212,\n  \"condemned</w>\": 35145,\n  \"condemns</w>\": 32092,\n  \"conden\": 24816,\n  \"conditi\": 11170,\n  \"condition\": 36978,\n  \"condition</w>\": 7336,\n  \"conditional</w>\": 24671,\n  \"conditioned</w>\": 37014,\n  \"conditioner</w>\": 31239,\n  \"conditioning</w>\": 18181,\n  \"conditions</w>\": 5892,\n  \"condo</w>\": 19952,\n  \"condol\": 18661,\n  \"condolences</w>\": 20836,\n  \"condom</w>\": 39021,\n  \"condomin\": 42589,\n  \"condoms</w>\": 37878,\n  \"condor</w>\": 47643,\n  \"condos</w>\": 42342,\n  \"condu\": 40772,\n  \"conduc\": 5379,\n  \"conduct</w>\": 11647,\n  \"conducted</w>\": 13080,\n  \"conducting</w>\": 16787,\n  \"conductor</w>\": 22317,\n  \"conducts</w>\": 32084,\n  \"cone\": 39279,\n  \"cone</w>\": 10266,\n  \"cones</w>\": 26718,\n  \"coney</w>\": 41837,\n  \"conf</w>\": 6477,\n  \"confe\": 1968,\n  \"confeder\": 17104,\n  \"confederate</w>\": 24864,\n  \"confederation</w>\": 43484,\n  \"conferen\": 37961,\n  \"conference</w>\": 2230,\n  \"conferences</w>\": 22811,\n  \"conferencing</w>\": 47320,\n  \"confess</w>\": 38860,\n  \"confession</w>\": 22572,\n  \"confessions</w>\": 29404,\n  \"confetti</w>\": 37923,\n  \"confi\": 5005,\n  \"confidence</w>\": 8510,\n  \"confident</w>\": 12365,\n  \"confidential</w>\": 28712,\n  \"configu\": 46746,\n  \"configur\": 26950,\n  \"configuration</w>\": 33378,\n  \"confin\": 45316,\n  \"confined</w>\": 40973,\n  \"confir\": 3930,\n  \"confirm</w>\": 12130,\n  \"confirmation</w>\": 19645,\n  \"confirmed</w>\": 6346,\n  \"confirming</w>\": 38433,\n  \"confirms</w>\": 11803,\n  \"confis\": 36285,\n  \"confit</w>\": 42241,\n  \"confl\": 8173,\n  \"conflic\": 19029,\n  \"conflict</w>\": 10397,\n  \"conflicting</w>\": 43894,\n  \"conflicts</w>\": 28713,\n  \"confor\": 40933,\n  \"confron\": 20033,\n  \"confront</w>\": 38382,\n  \"confrontation</w>\": 41478,\n  \"confu\": 6890,\n  \"confuse</w>\": 37503,\n  \"confused</w>\": 10946,\n  \"confusing</w>\": 24683,\n  \"confusion</w>\": 20493,\n  \"cong</w>\": 24407,\n  \"conge\": 20013,\n  \"congestion</w>\": 24432,\n  \"congo</w>\": 20334,\n  \"congr\": 1227,\n  \"congrats</w>\": 1887,\n  \"congratul\": 1750,\n  \"congratulate</w>\": 16633,\n  \"congratulated</w>\": 42004,\n  \"congratulates</w>\": 24580,\n  \"congratulating</w>\": 30967,\n  \"congratulation</w>\": 24751,\n  \"congratulations</w>\": 1864,\n  \"congre\": 7947,\n  \"congreg\": 40727,\n  \"congregation</w>\": 32618,\n  \"congress\": 12452,\n  \"congress</w>\": 4599,\n  \"congressional</w>\": 15239,\n  \"congressman</w>\": 17145,\n  \"congresswoman</w>\": 37317,\n  \"coni\": 39031,\n  \"coni</w>\": 36651,\n  \"conj\": 41543,\n  \"conju\": 33821,\n  \"conjunction</w>\": 34226,\n  \"conley</w>\": 44536,\n  \"conline</w>\": 37593,\n  \"conn\": 41836,\n  \"conn</w>\": 20329,\n  \"conne\": 8437,\n  \"connec\": 29933,\n  \"connect</w>\": 19969,\n  \"connected</w>\": 27506,\n  \"connecting</w>\": 41429,\n  \"connection</w>\": 26840,\n  \"connections</w>\": 37161,\n  \"connie</w>\": 25739,\n  \"connoisse\": 46012,\n  \"connol\": 27739,\n  \"connolly</w>\": 29537,\n  \"connor\": 21984,\n  \"connor</w>\": 10218,\n  \"conom\": 2664,\n  \"conomy</w>\": 22529,\n  \"conor\": 29955,\n  \"conor</w>\": 19478,\n  \"conqu\": 13382,\n  \"conquer\": 38585,\n  \"conquer</w>\": 19821,\n  \"conquered</w>\": 27099,\n  \"conquering</w>\": 43778,\n  \"conquest</w>\": 35367,\n  \"conrad</w>\": 22073,\n  \"cons</w>\": 10311,\n  \"consci\": 9427,\n  \"conscience</w>\": 27310,\n  \"conscious</w>\": 14914,\n  \"consciously</w>\": 46755,\n  \"consciousness</w>\": 17894,\n  \"conse\": 34887,\n  \"consecu\": 12084,\n  \"consecutive</w>\": 12413,\n  \"consen\": 23110,\n  \"consensus</w>\": 25071,\n  \"consent</w>\": 21922,\n  \"consequ\": 13003,\n  \"consequence</w>\": 42262,\n  \"consequences</w>\": 15682,\n  \"conserv\": 4649,\n  \"conservancy</w>\": 46729,\n  \"conservation\": 37616,\n  \"conservation</w>\": 8322,\n  \"conservative</w>\": 11421,\n  \"conservatives</w>\": 17631,\n  \"conservatory</w>\": 32140,\n  \"conserve</w>\": 34231,\n  \"consi\": 2899,\n  \"consider\": 12471,\n  \"consider</w>\": 6734,\n  \"considerable</w>\": 38256,\n  \"considerably</w>\": 38510,\n  \"consideration</w>\": 24310,\n  \"considerations</w>\": 33700,\n  \"considered</w>\": 9487,\n  \"considering</w>\": 10761,\n  \"considers</w>\": 24691,\n  \"consist\": 10410,\n  \"consist</w>\": 33735,\n  \"consisted</w>\": 49354,\n  \"consistency</w>\": 25683,\n  \"consistent</w>\": 16439,\n  \"consistently</w>\": 23799,\n  \"consisting</w>\": 39241,\n  \"consists</w>\": 23458,\n  \"consol\": 27869,\n  \"consolation</w>\": 38888,\n  \"console</w>\": 13403,\n  \"consoles</w>\": 33136,\n  \"consoli\": 21586,\n  \"consolidation</w>\": 41111,\n  \"consor\": 27108,\n  \"consortium</w>\": 29988,\n  \"conspir\": 12680,\n  \"conspiracy</w>\": 15236,\n  \"const\": 3826,\n  \"constable</w>\": 29179,\n  \"constan\": 38718,\n  \"constance</w>\": 40682,\n  \"constant\": 32000,\n  \"constant</w>\": 13111,\n  \"constantine</w>\": 30640,\n  \"constantly</w>\": 14336,\n  \"constell\": 21913,\n  \"constellation</w>\": 25991,\n  \"constitu\": 6299,\n  \"constituency</w>\": 22464,\n  \"constituents</w>\": 32075,\n  \"constitution</w>\": 12157,\n  \"constitutional</w>\": 16091,\n  \"constra\": 28973,\n  \"constraints</w>\": 41910,\n  \"constru\": 3983,\n  \"construc\": 13321,\n  \"construct</w>\": 24467,\n  \"constructed</w>\": 16876,\n  \"constructing</w>\": 33653,\n  \"construction\": 48873,\n  \"construction</w>\": 4585,\n  \"constructive</w>\": 31810,\n  \"consu\": 4689,\n  \"consul\": 5295,\n  \"consul</w>\": 33630,\n  \"consulate</w>\": 34341,\n  \"consult\": 9438,\n  \"consult</w>\": 26727,\n  \"consultancy</w>\": 31735,\n  \"consultant</w>\": 14196,\n  \"consultants</w>\": 27203,\n  \"consultation</w>\": 15777,\n  \"consultations</w>\": 43424,\n  \"consulting</w>\": 15883,\n  \"consume</w>\": 28919,\n  \"consumed</w>\": 29653,\n  \"consumer\": 34408,\n  \"consumer</w>\": 10422,\n  \"consumers</w>\": 14014,\n  \"consuming</w>\": 30607,\n  \"consumption</w>\": 14904,\n  \"cont\": 2036,\n  \"cont</w>\": 21425,\n  \"contact\": 39367,\n  \"contact</w>\": 3523,\n  \"contacted</w>\": 37331,\n  \"contacts</w>\": 22789,\n  \"contag\": 29259,\n  \"contagious</w>\": 33984,\n  \"contain\": 9948,\n  \"contain</w>\": 15187,\n  \"contained</w>\": 23836,\n  \"container</w>\": 14913,\n  \"containers</w>\": 20448,\n  \"containing</w>\": 20281,\n  \"contains</w>\": 12844,\n  \"contamin\": 24662,\n  \"contaminated</w>\": 35773,\n  \"contamination</w>\": 31770,\n  \"conte\": 15402,\n  \"conte</w>\": 26882,\n  \"contempl\": 21924,\n  \"contemplating</w>\": 33854,\n  \"contempor\": 14538,\n  \"contemporary\": 16607,\n  \"contemporary</w>\": 8859,\n  \"contemporaryart</w>\": 20212,\n  \"contempt</w>\": 39293,\n  \"conten\": 42201,\n  \"contender</w>\": 23573,\n  \"contenders</w>\": 29711,\n  \"content\": 15526,\n  \"content</w>\": 4750,\n  \"contentmarketing</w>\": 20429,\n  \"contents</w>\": 14850,\n  \"contest\": 23103,\n  \"contest</w>\": 4576,\n  \"contestalert</w>\": 27313,\n  \"contestant</w>\": 25682,\n  \"contestants</w>\": 28062,\n  \"contested</w>\": 37845,\n  \"contests</w>\": 32210,\n  \"contex\": 42015,\n  \"context</w>\": 13089,\n  \"conti\": 46431,\n  \"conti</w>\": 40842,\n  \"contin\": 1918,\n  \"continent</w>\": 19623,\n  \"continental</w>\": 14089,\n  \"continents</w>\": 38642,\n  \"conting\": 27104,\n  \"contingent</w>\": 36467,\n  \"continu\": 4688,\n  \"continually</w>\": 34086,\n  \"continuation</w>\": 38964,\n  \"continue</w>\": 3942,\n  \"continued</w>\": 10150,\n  \"continues</w>\": 4305,\n  \"continuing</w>\": 11009,\n  \"continuity</w>\": 34035,\n  \"continuous</w>\": 17033,\n  \"continuously</w>\": 29634,\n  \"continuum</w>\": 44978,\n  \"contour</w>\": 34733,\n  \"contr\": 22871,\n  \"contra\": 9880,\n  \"contra</w>\": 38620,\n  \"contrac\": 7581,\n  \"contracep\": 35109,\n  \"contract</w>\": 6120,\n  \"contracting</w>\": 39091,\n  \"contractor</w>\": 21429,\n  \"contractors</w>\": 22427,\n  \"contracts</w>\": 16563,\n  \"contradic\": 27957,\n  \"contrary</w>\": 32805,\n  \"contrast</w>\": 18501,\n  \"contrasting</w>\": 40758,\n  \"contribu\": 4753,\n  \"contribute</w>\": 14112,\n  \"contributed</w>\": 19397,\n  \"contributes</w>\": 34203,\n  \"contributing</w>\": 21762,\n  \"contribution</w>\": 11116,\n  \"contributions</w>\": 14465,\n  \"contributor</w>\": 24553,\n  \"contributors</w>\": 32908,\n  \"contro\": 2372,\n  \"control\": 9963,\n  \"control</w>\": 3366,\n  \"controlled</w>\": 14140,\n  \"controller</w>\": 12929,\n  \"controllers</w>\": 30374,\n  \"controlling</w>\": 26427,\n  \"controls</w>\": 15746,\n  \"controversi\": 13674,\n  \"controversial</w>\": 14617,\n  \"controversy</w>\": 18659,\n  \"conv</w>\": 48382,\n  \"conve\": 18421,\n  \"conven\": 7283,\n  \"conveni\": 33278,\n  \"convenience</w>\": 17859,\n  \"convenient</w>\": 18978,\n  \"conveniently</w>\": 40844,\n  \"convention</w>\": 6752,\n  \"conventional</w>\": 20835,\n  \"conventions</w>\": 41404,\n  \"conver\": 6336,\n  \"convergence</w>\": 35381,\n  \"convers\": 4577,\n  \"conversation</w>\": 5690,\n  \"conversations</w>\": 12326,\n  \"converse</w>\": 24149,\n  \"conversion</w>\": 15111,\n  \"conversions</w>\": 44137,\n  \"convert</w>\": 20074,\n  \"converted</w>\": 20808,\n  \"converter</w>\": 34611,\n  \"convertible</w>\": 19608,\n  \"converting</w>\": 34674,\n  \"converts</w>\": 42470,\n  \"convey</w>\": 38342,\n  \"convic\": 11150,\n  \"convicted</w>\": 18668,\n  \"conviction</w>\": 24967,\n  \"convictions</w>\": 44366,\n  \"convin\": 12889,\n  \"convince</w>\": 20351,\n  \"convinced</w>\": 17388,\n  \"convincing</w>\": 27742,\n  \"convo</w>\": 19372,\n  \"convocation</w>\": 30674,\n  \"convos</w>\": 44842,\n  \"convoy</w>\": 30292,\n  \"conway</w>\": 21410,\n  \"conwy</w>\": 48971,\n  \"cony</w>\": 14501,\n  \"coo\": 1664,\n  \"coo</w>\": 21691,\n  \"coogs</w>\": 47624,\n  \"cook\": 9726,\n  \"cook</w>\": 5977,\n  \"cookbook</w>\": 21086,\n  \"cooke</w>\": 29979,\n  \"cooked</w>\": 11452,\n  \"cooker</w>\": 23806,\n  \"cookery</w>\": 38779,\n  \"cookie</w>\": 9367,\n  \"cookies</w>\": 8320,\n  \"cookin</w>\": 46610,\n  \"cooking\": 39248,\n  \"cooking</w>\": 6283,\n  \"cookout</w>\": 39743,\n  \"cooks</w>\": 24256,\n  \"cool\": 5594,\n  \"cool</w>\": 2077,\n  \"cooled</w>\": 37170,\n  \"cooler</w>\": 11078,\n  \"coolest</w>\": 10566,\n  \"cooling</w>\": 15291,\n  \"coom\": 41726,\n  \"coon\": 34260,\n  \"coon</w>\": 16958,\n  \"coop\": 39917,\n  \"coop</w>\": 18910,\n  \"cooper\": 7264,\n  \"cooper</w>\": 8133,\n  \"cooperate</w>\": 42936,\n  \"cooperation</w>\": 11785,\n  \"cooperative</w>\": 24517,\n  \"coops</w>\": 48531,\n  \"coordin\": 8187,\n  \"coordinate</w>\": 38250,\n  \"coordinated</w>\": 32540,\n  \"coordinating</w>\": 40075,\n  \"coordination</w>\": 25611,\n  \"coordinator</w>\": 13967,\n  \"coors</w>\": 36025,\n  \"cop\": 3196,\n  \"cop</w>\": 7070,\n  \"copa</w>\": 22749,\n  \"copd</w>\": 45876,\n  \"cope\": 47635,\n  \"cope</w>\": 12564,\n  \"copeland</w>\": 37604,\n  \"copen\": 15637,\n  \"copenhagen</w>\": 17390,\n  \"coper\": 41891,\n  \"copernic\": 45519,\n  \"copied</w>\": 36770,\n  \"copies</w>\": 9851,\n  \"coping</w>\": 30545,\n  \"copolitics</w>\": 45846,\n  \"copp\": 20937,\n  \"copped</w>\": 42229,\n  \"copper\": 24741,\n  \"copper</w>\": 10333,\n  \"coppola</w>\": 47427,\n  \"cops</w>\": 10719,\n  \"copter</w>\": 28049,\n  \"copy\": 11376,\n  \"copy</w>\": 4509,\n  \"copying</w>\": 38925,\n  \"copyright</w>\": 15778,\n  \"cor\": 851,\n  \"cor</w>\": 18559,\n  \"cora</w>\": 34953,\n  \"coral\": 31220,\n  \"coral</w>\": 12054,\n  \"corbett</w>\": 35699,\n  \"corbin</w>\": 35578,\n  \"corbyn</w>\": 14026,\n  \"cord\": 40893,\n  \"cord</w>\": 11181,\n  \"corden</w>\": 41999,\n  \"cordi\": 41681,\n  \"cordless</w>\": 44412,\n  \"cords</w>\": 22164,\n  \"core\": 19622,\n  \"core</w>\": 5000,\n  \"cores</w>\": 37874,\n  \"corey\": 31279,\n  \"corey</w>\": 15288,\n  \"corgi</w>\": 31320,\n  \"cori\": 26508,\n  \"coriander</w>\": 37491,\n  \"corin\": 17716,\n  \"corinthians</w>\": 34471,\n  \"cork\": 18148,\n  \"cork</w>\": 10376,\n  \"corn\": 5202,\n  \"corn</w>\": 5894,\n  \"cornelius</w>\": 45865,\n  \"cornell\": 38689,\n  \"cornell</w>\": 20859,\n  \"corner\": 18509,\n  \"corner</w>\": 5253,\n  \"corners</w>\": 19584,\n  \"cornerstone</w>\": 36280,\n  \"cornish</w>\": 23774,\n  \"cornwall\": 37903,\n  \"cornwall</w>\": 10777,\n  \"coron\": 13210,\n  \"corona</w>\": 25564,\n  \"coronado</w>\": 43946,\n  \"coronary</w>\": 45955,\n  \"coronation</w>\": 25014,\n  \"coroner</w>\": 47241,\n  \"corp\": 29203,\n  \"corp</w>\": 10918,\n  \"corpor\": 4258,\n  \"corporal</w>\": 42445,\n  \"corporate\": 33877,\n  \"corporate</w>\": 6838,\n  \"corporation</w>\": 11282,\n  \"corporations</w>\": 25482,\n  \"corps</w>\": 11330,\n  \"corpse</w>\": 29408,\n  \"corpus</w>\": 31672,\n  \"correc\": 5011,\n  \"correct</w>\": 8340,\n  \"corrected</w>\": 35628,\n  \"correction</w>\": 20843,\n  \"correctional</w>\": 38030,\n  \"corrections</w>\": 37507,\n  \"correctly</w>\": 15359,\n  \"correlation</w>\": 29218,\n  \"correspon\": 20203,\n  \"correspondent</w>\": 29996,\n  \"corri\": 12974,\n  \"corridor</w>\": 20592,\n  \"corrie</w>\": 23961,\n  \"corro\": 24936,\n  \"corro</w>\": 42033,\n  \"corrosion</w>\": 39191,\n  \"corru\": 6501,\n  \"corrup\": 30429,\n  \"corrupt</w>\": 15194,\n  \"corruption</w>\": 9141,\n  \"corsa</w>\": 47670,\n  \"corsair</w>\": 42367,\n  \"corset</w>\": 40408,\n  \"cortex</w>\": 40109,\n  \"cortez</w>\": 30461,\n  \"corvette</w>\": 24367,\n  \"cory\": 23221,\n  \"cory</w>\": 18329,\n  \"cos\": 5865,\n  \"cos</w>\": 5700,\n  \"cosby</w>\": 30324,\n  \"cosc\": 45944,\n  \"coscino</w>\": 47909,\n  \"cose</w>\": 26495,\n  \"cosm\": 37486,\n  \"cosme\": 9628,\n  \"cosmetic</w>\": 23918,\n  \"cosmetics</w>\": 12896,\n  \"cosmic\": 47398,\n  \"cosmic</w>\": 18304,\n  \"cosmo\": 12829,\n  \"cosmo</w>\": 32072,\n  \"cosmopolitan</w>\": 35518,\n  \"cosmos</w>\": 22151,\n  \"cospla\": 15149,\n  \"cosplay\": 42401,\n  \"cosplay</w>\": 6435,\n  \"cosplayer</w>\": 30215,\n  \"cosplaying</w>\": 46701,\n  \"cost\": 11360,\n  \"cost</w>\": 4713,\n  \"costa</w>\": 10480,\n  \"costar\": 28659,\n  \"costarica</w>\": 31272,\n  \"costco</w>\": 31045,\n  \"costello</w>\": 30667,\n  \"costing</w>\": 39193,\n  \"costly</w>\": 30170,\n  \"costs</w>\": 7628,\n  \"costu\": 5786,\n  \"costume</w>\": 7235,\n  \"costumes</w>\": 15150,\n  \"cosy</w>\": 22848,\n  \"cot\": 4718,\n  \"cot</w>\": 5871,\n  \"cote\": 44234,\n  \"cote</w>\": 20751,\n  \"cotland</w>\": 32576,\n  \"cotsw\": 23303,\n  \"cotswolds</w>\": 35546,\n  \"cott\": 8211,\n  \"cott</w>\": 11349,\n  \"cottage</w>\": 12155,\n  \"cottages</w>\": 34405,\n  \"cotton\": 22218,\n  \"cotton</w>\": 7050,\n  \"cou\": 1368,\n  \"couch</w>\": 12724,\n  \"cougar\": 35028,\n  \"cougar</w>\": 27042,\n  \"cougars</w>\": 20425,\n  \"cough\": 35631,\n  \"cough</w>\": 18498,\n  \"cougs</w>\": 28482,\n  \"coul\": 22483,\n  \"could\": 44812,\n  \"could</w>\": 1510,\n  \"couldn</w>\": 4072,\n  \"couldnt</w>\": 29042,\n  \"coulter</w>\": 42291,\n  \"coun\": 939,\n  \"counc\": 12927,\n  \"council\": 18187,\n  \"council</w>\": 3620,\n  \"councill\": 15732,\n  \"councillor</w>\": 21179,\n  \"councillors</w>\": 29695,\n  \"councilman</w>\": 40833,\n  \"councils</w>\": 29938,\n  \"counsel\": 13780,\n  \"counsel</w>\": 19814,\n  \"counseling</w>\": 25000,\n  \"counsell\": 47510,\n  \"counselling</w>\": 40581,\n  \"counselor</w>\": 26148,\n  \"counselors</w>\": 38688,\n  \"count\": 6073,\n  \"count</w>\": 5887,\n  \"countdown\": 39559,\n  \"countdown</w>\": 7500,\n  \"counted</w>\": 23149,\n  \"counter\": 10134,\n  \"counter</w>\": 7352,\n  \"counterfe\": 33067,\n  \"counterfeit</w>\": 44242,\n  \"counterpart</w>\": 39216,\n  \"counterparts</w>\": 42106,\n  \"counters</w>\": 46170,\n  \"countess</w>\": 46276,\n  \"counties</w>\": 12338,\n  \"counting</w>\": 9723,\n  \"countless</w>\": 21819,\n  \"countries</w>\": 5489,\n  \"country\": 7896,\n  \"country</w>\": 2157,\n  \"countryfile</w>\": 47023,\n  \"countrymusic</w>\": 30372,\n  \"countryside</w>\": 16303,\n  \"counts</w>\": 12264,\n  \"county\": 18734,\n  \"county</w>\": 2116,\n  \"coup\": 9871,\n  \"coup</w>\": 16479,\n  \"coupe</w>\": 16773,\n  \"couple\": 40136,\n  \"couple</w>\": 3377,\n  \"coupled</w>\": 37153,\n  \"couples</w>\": 14752,\n  \"coupling</w>\": 45595,\n  \"coupon</w>\": 14019,\n  \"coupons</w>\": 23945,\n  \"cour\": 1391,\n  \"coura\": 4436,\n  \"courage</w>\": 9828,\n  \"courageous</w>\": 25005,\n  \"courier</w>\": 27217,\n  \"cours</w>\": 21493,\n  \"course\": 43225,\n  \"course</w>\": 2613,\n  \"courses</w>\": 9464,\n  \"court\": 16837,\n  \"court</w>\": 2908,\n  \"courte\": 5088,\n  \"courtesy</w>\": 5228,\n  \"courthouse</w>\": 22205,\n  \"courtney\": 33601,\n  \"courtney</w>\": 15990,\n  \"courtroom</w>\": 41071,\n  \"courts</w>\": 13514,\n  \"courty\": 20121,\n  \"courtyard</w>\": 21900,\n  \"cous</w>\": 48397,\n  \"cousin</w>\": 7780,\n  \"cousins</w>\": 14073,\n  \"cout\": 29118,\n  \"coutinho</w>\": 35530,\n  \"couture</w>\": 14808,\n  \"cov\": 19384,\n  \"cov</w>\": 48385,\n  \"cove\": 21700,\n  \"cove</w>\": 14708,\n  \"coven\": 12483,\n  \"covenant</w>\": 29647,\n  \"coventry</w>\": 18007,\n  \"cover\": 13534,\n  \"cover</w>\": 2202,\n  \"coverage</w>\": 6810,\n  \"covered</w>\": 5603,\n  \"covering</w>\": 9462,\n  \"covers</w>\": 7745,\n  \"covert</w>\": 40134,\n  \"coveted</w>\": 36119,\n  \"covington</w>\": 43196,\n  \"cow\": 5076,\n  \"cow</w>\": 9706,\n  \"cowan</w>\": 42699,\n  \"coward</w>\": 33729,\n  \"cowards</w>\": 48972,\n  \"cowboy\": 25833,\n  \"cowboy</w>\": 13657,\n  \"cowboys</w>\": 11864,\n  \"cowboysnation</w>\": 43082,\n  \"cowell</w>\": 39015,\n  \"cowgirl</w>\": 47090,\n  \"coworker</w>\": 30727,\n  \"coworkers</w>\": 30821,\n  \"coworking</w>\": 36034,\n  \"cows</w>\": 15204,\n  \"cowx</w>\": 23831,\n  \"cox\": 25784,\n  \"cox</w>\": 11597,\n  \"coy\": 12765,\n  \"coy</w>\": 15742,\n  \"coyi</w>\": 48407,\n  \"coyle</w>\": 45348,\n  \"coyne</w>\": 44729,\n  \"coyo\": 16614,\n  \"coyote</w>\": 26586,\n  \"coyotes</w>\": 30423,\n  \"coys</w>\": 19736,\n  \"coz\": 39922,\n  \"coz</w>\": 14282,\n  \"cozy</w>\": 14873,\n  \"cp\": 7905,\n  \"cp</w>\": 9130,\n  \"cpa</w>\": 30095,\n  \"cpac</w>\": 45731,\n  \"cpc</w>\": 26125,\n  \"cpd</w>\": 23402,\n  \"cpec</w>\": 48007,\n  \"cpfc</w>\": 27553,\n  \"cpi</w>\": 41795,\n  \"cpl</w>\": 26852,\n  \"cpr</w>\": 25134,\n  \"cps</w>\": 27078,\n  \"cpt</w>\": 32892,\n  \"cpu</w>\": 27700,\n  \"cq\": 48910,\n  \"cq</w>\": 48417,\n  \"cr\": 1075,\n  \"cr</w>\": 3483,\n  \"cra\": 1184,\n  \"cra</w>\": 18362,\n  \"crab\": 27382,\n  \"crab</w>\": 11574,\n  \"crabs</w>\": 30908,\n  \"crack\": 11222,\n  \"crack</w>\": 10334,\n  \"crackdown</w>\": 29527,\n  \"cracked</w>\": 19826,\n  \"cracker</w>\": 16298,\n  \"crackers</w>\": 26200,\n  \"cracking</w>\": 13008,\n  \"cracks</w>\": 21426,\n  \"cracy</w>\": 24749,\n  \"cradle</w>\": 29384,\n  \"crae</w>\": 40438,\n  \"craf\": 10873,\n  \"craft\": 7717,\n  \"craft</w>\": 3588,\n  \"craftbeer</w>\": 12371,\n  \"crafted</w>\": 12424,\n  \"crafthour</w>\": 42324,\n  \"crafting</w>\": 26886,\n  \"crafts\": 33276,\n  \"crafts</w>\": 13383,\n  \"craftsman</w>\": 39528,\n  \"craftsmanship</w>\": 36682,\n  \"crafty</w>\": 32317,\n  \"craic</w>\": 46962,\n  \"craig\": 14042,\n  \"craig</w>\": 8061,\n  \"craigslist</w>\": 43865,\n  \"cram\": 29809,\n  \"cramer</w>\": 44592,\n  \"cramps</w>\": 46106,\n  \"cran\": 7761,\n  \"cranberries</w>\": 49361,\n  \"cranberry</w>\": 23824,\n  \"crane</w>\": 14626,\n  \"cranes</w>\": 26979,\n  \"crani\": 45674,\n  \"crank\": 46246,\n  \"crank</w>\": 32283,\n  \"cranston</w>\": 44340,\n  \"crap</w>\": 11899,\n  \"crappy</w>\": 30475,\n  \"crash\": 37150,\n  \"crash</w>\": 5033,\n  \"crashed</w>\": 16638,\n  \"crashes</w>\": 17013,\n  \"crashing</w>\": 24991,\n  \"crat</w>\": 46696,\n  \"crate</w>\": 24756,\n  \"crater</w>\": 22663,\n  \"crates</w>\": 30172,\n  \"cratic</w>\": 32175,\n  \"crative</w>\": 39999,\n  \"crats</w>\": 43056,\n  \"crave</w>\": 33397,\n  \"craven</w>\": 33625,\n  \"craving</w>\": 18344,\n  \"cravings</w>\": 34476,\n  \"craw\": 7400,\n  \"crawfish</w>\": 42772,\n  \"crawford</w>\": 15918,\n  \"crawl</w>\": 20106,\n  \"crawler</w>\": 41012,\n  \"crawley</w>\": 42316,\n  \"crawling</w>\": 37066,\n  \"cray\": 24184,\n  \"cray</w>\": 27032,\n  \"crayon</w>\": 41801,\n  \"crayons</w>\": 43508,\n  \"craz\": 25776,\n  \"craze</w>\": 30637,\n  \"craziest</w>\": 32690,\n  \"craziness</w>\": 46436,\n  \"crazy\": 17540,\n  \"crazy</w>\": 3578,\n  \"crc</w>\": 25618,\n  \"cre\": 798,\n  \"cre</w>\": 17762,\n  \"cream\": 23184,\n  \"cream</w>\": 3867,\n  \"creams</w>\": 41447,\n  \"creamy</w>\": 17206,\n  \"crease</w>\": 48441,\n  \"create\": 30949,\n  \"create</w>\": 3380,\n  \"created</w>\": 4080,\n  \"creates</w>\": 10361,\n  \"creati\": 6714,\n  \"creating</w>\": 5524,\n  \"creation\": 38293,\n  \"creation</w>\": 6900,\n  \"creations</w>\": 17411,\n  \"creative\": 15237,\n  \"creative</w>\": 4450,\n  \"creatives</w>\": 29352,\n  \"creativity</w>\": 9636,\n  \"creator</w>\": 10173,\n  \"creators</w>\": 17981,\n  \"creature</w>\": 14317,\n  \"creatures</w>\": 13938,\n  \"cred\": 7314,\n  \"cred</w>\": 22377,\n  \"credenti\": 29487,\n  \"credentials</w>\": 33422,\n  \"credi\": 21097,\n  \"credibility</w>\": 34984,\n  \"credible</w>\": 32983,\n  \"credit\": 21467,\n  \"credit</w>\": 3900,\n  \"credited</w>\": 32480,\n  \"credits</w>\": 10654,\n  \"creds</w>\": 43462,\n  \"cree\": 33961,\n  \"cree</w>\": 36014,\n  \"creed</w>\": 18845,\n  \"creek\": 26120,\n  \"creek</w>\": 5526,\n  \"creep\": 8153,\n  \"creep</w>\": 26084,\n  \"creeper</w>\": 38662,\n  \"creeping</w>\": 29697,\n  \"creeps</w>\": 45135,\n  \"creepy</w>\": 11943,\n  \"creighton</w>\": 42823,\n  \"creme</w>\": 22681,\n  \"creole</w>\": 45632,\n  \"crepe</w>\": 38611,\n  \"crescent</w>\": 18211,\n  \"cress</w>\": 39124,\n  \"crest\": 35985,\n  \"crest</w>\": 15760,\n  \"crested</w>\": 36656,\n  \"crete</w>\": 8584,\n  \"crew\": 21560,\n  \"crew</w>\": 3462,\n  \"crewe</w>\": 43284,\n  \"crews</w>\": 10463,\n  \"cri\": 1621,\n  \"cri</w>\": 38962,\n  \"crib</w>\": 23271,\n  \"cric\": 4328,\n  \"cricke\": 19098,\n  \"cricket\": 21859,\n  \"cricket</w>\": 5373,\n  \"cricketer</w>\": 28439,\n  \"cricketers</w>\": 43986,\n  \"cried</w>\": 15290,\n  \"cries</w>\": 19769,\n  \"crime\": 13872,\n  \"crime</w>\": 4896,\n  \"crimea</w>\": 28614,\n  \"crimes</w>\": 11827,\n  \"crimin\": 5874,\n  \"criminal\": 30197,\n  \"criminal</w>\": 8255,\n  \"criminals</w>\": 18783,\n  \"crimson</w>\": 19437,\n  \"cringe</w>\": 42588,\n  \"cripp\": 33588,\n  \"cris</w>\": 37818,\n  \"crises</w>\": 36403,\n  \"crisis</w>\": 5712,\n  \"crisp</w>\": 15145,\n  \"crispr</w>\": 39784,\n  \"crisps</w>\": 35744,\n  \"crispy</w>\": 16458,\n  \"criss</w>\": 29708,\n  \"cristi\": 12699,\n  \"cristian</w>\": 48808,\n  \"cristiano</w>\": 14807,\n  \"cristina</w>\": 33395,\n  \"cristo</w>\": 38315,\n  \"crit\": 3613,\n  \"crit</w>\": 48130,\n  \"criteri\": 33627,\n  \"criteria</w>\": 24849,\n  \"criterion</w>\": 43841,\n  \"criti\": 25333,\n  \"critic\": 12417,\n  \"critic</w>\": 19361,\n  \"critical\": 15314,\n  \"critical</w>\": 6808,\n  \"critically</w>\": 21570,\n  \"criticalrole\": 33606,\n  \"criticalrole</w>\": 22742,\n  \"criticalrolefanart</w>\": 43663,\n  \"critici\": 20333,\n  \"criticism</w>\": 17405,\n  \"criticize</w>\": 46081,\n  \"criticized</w>\": 41557,\n  \"critics</w>\": 16946,\n  \"critique</w>\": 32982,\n  \"critters</w>\": 35423,\n  \"crm</w>\": 22610,\n  \"cro\": 1192,\n  \"cro</w>\": 22522,\n  \"croati\": 28072,\n  \"croatia</w>\": 13323,\n  \"croatian</w>\": 34795,\n  \"croc</w>\": 43350,\n  \"croche\": 35352,\n  \"crochet</w>\": 17554,\n  \"crock\": 41685,\n  \"crocker</w>\": 47843,\n  \"crockett</w>\": 48313,\n  \"crocod\": 24519,\n  \"crocodile</w>\": 24757,\n  \"crocs</w>\": 38988,\n  \"croft</w>\": 16657,\n  \"croissant</w>\": 46011,\n  \"croix</w>\": 44735,\n  \"crom\": 25082,\n  \"crombie</w>\": 46162,\n  \"cromwell</w>\": 45345,\n  \"cron\": 17361,\n  \"croo\": 16443,\n  \"crook</w>\": 43744,\n  \"crooked\": 48473,\n  \"crooked</w>\": 25644,\n  \"crooks</w>\": 44226,\n  \"crop\": 40751,\n  \"crop</w>\": 9955,\n  \"cropped</w>\": 31139,\n  \"crops</w>\": 16290,\n  \"crore</w>\": 18274,\n  \"crores</w>\": 37281,\n  \"cros\": 16670,\n  \"crosby</w>\": 21095,\n  \"cross\": 5266,\n  \"cross</w>\": 3417,\n  \"crossed</w>\": 11731,\n  \"crosses</w>\": 20473,\n  \"crossfit\": 47214,\n  \"crossfit</w>\": 20395,\n  \"crossing</w>\": 8673,\n  \"crossings</w>\": 43517,\n  \"crossover</w>\": 17194,\n  \"crossroads</w>\": 27427,\n  \"crossword</w>\": 32945,\n  \"crou\": 31206,\n  \"crouch</w>\": 36506,\n  \"crow\": 3138,\n  \"crow</w>\": 16019,\n  \"crowd\": 12036,\n  \"crowd</w>\": 4570,\n  \"crowded</w>\": 20182,\n  \"crowdfunding</w>\": 17971,\n  \"crowds</w>\": 16092,\n  \"crowe</w>\": 33560,\n  \"crowley</w>\": 32287,\n  \"crown\": 22190,\n  \"crown</w>\": 6902,\n  \"crowned</w>\": 16109,\n  \"crowns</w>\": 33229,\n  \"crows</w>\": 27134,\n  \"croy\": 21676,\n  \"croydon</w>\": 27116,\n  \"crs</w>\": 28449,\n  \"crt</w>\": 43877,\n  \"cru\": 1815,\n  \"cru</w>\": 29788,\n  \"cruci\": 18499,\n  \"crucial</w>\": 12396,\n  \"crude</w>\": 20677,\n  \"cruel\": 16073,\n  \"cruel</w>\": 17573,\n  \"cruelty</w>\": 20675,\n  \"cruis\": 27721,\n  \"cruise\": 36425,\n  \"cruise</w>\": 6764,\n  \"cruiser</w>\": 21394,\n  \"cruises</w>\": 19214,\n  \"cruising</w>\": 19743,\n  \"crum\": 43268,\n  \"crumb\": 48327,\n  \"crumb</w>\": 39909,\n  \"crumble</w>\": 36595,\n  \"crumbs</w>\": 35893,\n  \"crun\": 17407,\n  \"crunch</w>\": 16620,\n  \"crunchy</w>\": 31366,\n  \"crusad\": 19133,\n  \"crusade</w>\": 36846,\n  \"crusader</w>\": 40171,\n  \"crusaders</w>\": 31319,\n  \"crush\": 22296,\n  \"crush</w>\": 7610,\n  \"crushed</w>\": 18270,\n  \"crusher</w>\": 44923,\n  \"crushes</w>\": 35844,\n  \"crushing</w>\": 20790,\n  \"crust</w>\": 23136,\n  \"crusted</w>\": 37314,\n  \"cruz\": 33689,\n  \"cruz</w>\": 8403,\n  \"cry\": 2837,\n  \"cry</w>\": 6290,\n  \"crying</w>\": 6828,\n  \"cryo\": 32215,\n  \"cryp\": 4865,\n  \"crypt</w>\": 37814,\n  \"cryptic</w>\": 46925,\n  \"crypto\": 8080,\n  \"crypto</w>\": 9608,\n  \"cryptocurrencies</w>\": 33329,\n  \"cryptocurrency</w>\": 12070,\n  \"cryst\": 15891,\n  \"crystal\": 17387,\n  \"crystal</w>\": 6517,\n  \"crystalli\": 47551,\n  \"crystals</w>\": 18350,\n  \"cs\": 11978,\n  \"cs</w>\": 2804,\n  \"csa</w>\": 26355,\n  \"csc\": 41727,\n  \"csc</w>\": 37266,\n  \"csd</w>\": 36913,\n  \"cse</w>\": 41659,\n  \"csg</w>\": 47085,\n  \"csgo</w>\": 28928,\n  \"csi\": 41750,\n  \"csi</w>\": 28070,\n  \"csk</w>\": 43036,\n  \"csm</w>\": 40061,\n  \"csn</w>\": 46329,\n  \"cso</w>\": 43864,\n  \"csp</w>\": 39243,\n  \"csr\": 32105,\n  \"csr</w>\": 24598,\n  \"csrracing</w>\": 44193,\n  \"css\": 41418,\n  \"css</w>\": 19846,\n  \"cst</w>\": 17016,\n  \"csu\": 35948,\n  \"csu</w>\": 31261,\n  \"csw</w>\": 41031,\n  \"ct\": 3381,\n  \"ct</w>\": 1122,\n  \"cta</w>\": 28397,\n  \"ctar</w>\": 27842,\n  \"ctc</w>\": 34123,\n  \"cte</w>\": 31410,\n  \"cted</w>\": 2910,\n  \"ctf</w>\": 35250,\n  \"cthulhu</w>\": 41064,\n  \"cting</w>\": 7985,\n  \"ction\": 17578,\n  \"ction</w>\": 1569,\n  \"ctions</w>\": 7021,\n  \"ctive</w>\": 9313,\n  \"cto</w>\": 17445,\n  \"ctor</w>\": 8108,\n  \"ctr\": 35602,\n  \"ctr</w>\": 18481,\n  \"cts</w>\": 6936,\n  \"ctto</w>\": 25118,\n  \"ctu\": 20834,\n  \"cture</w>\": 17668,\n  \"ctv\": 21213,\n  \"ctv</w>\": 27590,\n  \"cu\": 729,\n  \"cu</w>\": 11224,\n  \"cuando</w>\": 40388,\n  \"cub\": 16938,\n  \"cub</w>\": 19972,\n  \"cuba</w>\": 11576,\n  \"cuban</w>\": 15536,\n  \"cube\": 47753,\n  \"cube</w>\": 11353,\n  \"cubes</w>\": 31413,\n  \"cubic\": 48159,\n  \"cubic</w>\": 29614,\n  \"cubs</w>\": 9858,\n  \"cuck\": 26364,\n  \"cuckoo</w>\": 38062,\n  \"cucu\": 16705,\n  \"cucumber</w>\": 19787,\n  \"cucumbers</w>\": 48065,\n  \"cud\": 42684,\n  \"cudd\": 12820,\n  \"cuddle</w>\": 19568,\n  \"cuddles</w>\": 24001,\n  \"cuddling</w>\": 29696,\n  \"cuddly</w>\": 36208,\n  \"cudi</w>\": 48713,\n  \"cue</w>\": 13424,\n  \"cuer\": 39506,\n  \"cues</w>\": 35719,\n  \"cuff\": 34693,\n  \"cuff</w>\": 22414,\n  \"cufflinks</w>\": 43938,\n  \"cuffs</w>\": 37221,\n  \"cuis\": 9938,\n  \"cuisine</w>\": 10605,\n  \"cuk</w>\": 34838,\n  \"cul\": 1877,\n  \"cula</w>\": 35935,\n  \"cular</w>\": 10940,\n  \"culars</w>\": 45719,\n  \"cule</w>\": 31066,\n  \"cules</w>\": 18984,\n  \"culin\": 14772,\n  \"culinary</w>\": 16466,\n  \"cull\": 21880,\n  \"cull</w>\": 42061,\n  \"cullen</w>\": 25973,\n  \"culmin\": 33778,\n  \"culo\": 36305,\n  \"culprit</w>\": 41593,\n  \"cult</w>\": 11965,\n  \"cultiv\": 16781,\n  \"cultivate</w>\": 42983,\n  \"cultivated</w>\": 48901,\n  \"cultivation</w>\": 41539,\n  \"cultur\": 20780,\n  \"cultural\": 34908,\n  \"cultural</w>\": 6753,\n  \"culturally</w>\": 36783,\n  \"culture\": 20197,\n  \"culture</w>\": 3673,\n  \"cultured</w>\": 40176,\n  \"cultures</w>\": 19552,\n  \"culver</w>\": 42103,\n  \"cum\": 20142,\n  \"cum</w>\": 27119,\n  \"cumb\": 10858,\n  \"cumber\": 15309,\n  \"cumberbatch</w>\": 27541,\n  \"cumberland</w>\": 28747,\n  \"cumbri\": 32010,\n  \"cumbria</w>\": 17953,\n  \"cumin</w>\": 42285,\n  \"cumple</w>\": 47050,\n  \"cumul\": 42961,\n  \"cumulative</w>\": 47610,\n  \"cumulus</w>\": 46313,\n  \"cun\": 12423,\n  \"cun</w>\": 29532,\n  \"cunningham</w>\": 25321,\n  \"cuomo</w>\": 25681,\n  \"cup\": 5059,\n  \"cup</w>\": 1937,\n  \"cupboard</w>\": 32074,\n  \"cupcake</w>\": 17025,\n  \"cupcakes</w>\": 12747,\n  \"cupid</w>\": 34885,\n  \"cuppa</w>\": 28077,\n  \"cups</w>\": 11463,\n  \"cur\": 1092,\n  \"cur</w>\": 33073,\n  \"curated</w>\": 20341,\n  \"curator</w>\": 20753,\n  \"curb</w>\": 21931,\n  \"curd</w>\": 38881,\n  \"cure\": 36758,\n  \"cure</w>\": 9088,\n  \"cured</w>\": 26248,\n  \"cures</w>\": 38204,\n  \"curfew</w>\": 48826,\n  \"curi\": 12640,\n  \"curing</w>\": 44169,\n  \"curiosity</w>\": 21583,\n  \"curious</w>\": 9865,\n  \"curl</w>\": 24306,\n  \"curled</w>\": 43734,\n  \"curling</w>\": 18543,\n  \"curls</w>\": 24340,\n  \"curly</w>\": 20795,\n  \"curran</w>\": 40999,\n  \"currant</w>\": 43501,\n  \"curren\": 6142,\n  \"currencies</w>\": 23530,\n  \"currency</w>\": 7853,\n  \"current</w>\": 3653,\n  \"currently</w>\": 3792,\n  \"currents</w>\": 35450,\n  \"curric\": 16201,\n  \"curriculum</w>\": 17947,\n  \"currie</w>\": 39385,\n  \"curry\": 49285,\n  \"curry</w>\": 8051,\n  \"curse</w>\": 18479,\n  \"cursed</w>\": 26408,\n  \"cursor</w>\": 46546,\n  \"curt</w>\": 38137,\n  \"curtain</w>\": 17223,\n  \"curtains</w>\": 30223,\n  \"curti\": 39925,\n  \"curtis</w>\": 13808,\n  \"curve</w>\": 15792,\n  \"curved</w>\": 25789,\n  \"curves</w>\": 22814,\n  \"curvy</w>\": 45788,\n  \"cus</w>\": 2736,\n  \"cusa</w>\": 47414,\n  \"cuse</w>\": 37950,\n  \"cush\": 43731,\n  \"cushi\": 15333,\n  \"cushion</w>\": 20853,\n  \"cushions</w>\": 34163,\n  \"cussion</w>\": 16658,\n  \"cussions</w>\": 46853,\n  \"cust\": 20900,\n  \"custard</w>\": 26516,\n  \"custo\": 4376,\n  \"custody</w>\": 16176,\n  \"custom\": 2662,\n  \"custom</w>\": 4996,\n  \"custome\": 41323,\n  \"customer\": 24035,\n  \"customer</w>\": 5102,\n  \"customerexperience</w>\": 45167,\n  \"customers</w>\": 5528,\n  \"customerservice</w>\": 40611,\n  \"customiz\": 41793,\n  \"customizable</w>\": 48253,\n  \"customization</w>\": 48244,\n  \"customize</w>\": 32179,\n  \"customized</w>\": 23229,\n  \"customs</w>\": 16880,\n  \"cut\": 10511,\n  \"cut</w>\": 3032,\n  \"cute\": 16031,\n  \"cute</w>\": 2242,\n  \"cuteness</w>\": 19342,\n  \"cuter</w>\": 27151,\n  \"cutest</w>\": 8032,\n  \"cuth\": 44328,\n  \"cutie</w>\": 10733,\n  \"cuties\": 40939,\n  \"cuties</w>\": 23420,\n  \"cutiesaturday</w>\": 41883,\n  \"cutler</w>\": 40428,\n  \"cutlery</w>\": 49073,\n  \"cutout</w>\": 45016,\n  \"cuts</w>\": 7435,\n  \"cutt\": 27338,\n  \"cutt</w>\": 47647,\n  \"cutter</w>\": 19719,\n  \"cutters</w>\": 44783,\n  \"cutting</w>\": 7266,\n  \"cuz</w>\": 9215,\n  \"cv\": 13531,\n  \"cv</w>\": 13947,\n  \"cvs</w>\": 29603,\n  \"cw\": 10652,\n  \"cw</w>\": 11065,\n  \"cwc</w>\": 19179,\n  \"cwgc</w>\": 48527,\n  \"cws</w>\": 45186,\n  \"cx\": 44457,\n  \"cx</w>\": 14283,\n  \"cy\": 1470,\n  \"cy</w>\": 1678,\n  \"cyber\": 5830,\n  \"cyber</w>\": 10210,\n  \"cybercrime</w>\": 41772,\n  \"cybermonday</w>\": 36578,\n  \"cyberpunk</w>\": 36896,\n  \"cybersecurity</w>\": 10581,\n  \"cyborg</w>\": 36650,\n  \"cycl\": 9791,\n  \"cycle\": 19083,\n  \"cycle</w>\": 5072,\n  \"cycled</w>\": 31055,\n  \"cycles</w>\": 14605,\n  \"cycli\": 12201,\n  \"cycling\": 26353,\n  \"cycling</w>\": 6321,\n  \"cyclist</w>\": 20686,\n  \"cyclists</w>\": 20303,\n  \"cyclo\": 18122,\n  \"cyclone\": 48094,\n  \"cyclone</w>\": 20917,\n  \"cyclones</w>\": 34669,\n  \"cylin\": 18569,\n  \"cylinder</w>\": 22092,\n  \"cylinders</w>\": 48888,\n  \"cymb\": 36677,\n  \"cymru</w>\": 24005,\n  \"cyn\": 14324,\n  \"cynthi\": 41994,\n  \"cynthia</w>\": 23748,\n  \"cyp\": 14809,\n  \"cypress</w>\": 25347,\n  \"cypri\": 36481,\n  \"cyprus</w>\": 15263,\n  \"cyril</w>\": 36028,\n  \"cyrus</w>\": 14204,\n  \"cystic</w>\": 46131,\n  \"cyto\": 31864,\n  \"cz\": 22898,\n  \"cz</w>\": 22921,\n  \"cze\": 12152,\n  \"czech\": 43151,\n  \"czech</w>\": 16141,\n  \"cÃ©\": 36454,\n  \"cÃ©</w>\": 18317,\n  \"d\": 67,\n  \"d</w>\": 323,\n  \"da\": 925,\n  \"da</w>\": 1140,\n  \"daa</w>\": 32642,\n  \"daan</w>\": 44814,\n  \"dab\": 10413,\n  \"dab</w>\": 22900,\n  \"dac\": 16222,\n  \"dac</w>\": 27478,\n  \"daca</w>\": 28477,\n  \"dach\": 34166,\n  \"dachsh\": 41641,\n  \"dachshund</w>\": 42720,\n  \"dad\": 4346,\n  \"dad</w>\": 2639,\n  \"dada</w>\": 31325,\n  \"daddy\": 29466,\n  \"daddy</w>\": 6546,\n  \"dade</w>\": 23299,\n  \"dades</w>\": 28289,\n  \"dads</w>\": 12741,\n  \"dae\": 23358,\n  \"dae</w>\": 15422,\n  \"daener\": 46934,\n  \"daes\": 47282,\n  \"daesh</w>\": 35047,\n  \"daf\": 9972,\n  \"daf</w>\": 36704,\n  \"daffodils</w>\": 44769,\n  \"daft</w>\": 36347,\n  \"dag\": 11434,\n  \"dag</w>\": 25650,\n  \"dagger</w>\": 34251,\n  \"dah\": 16976,\n  \"dah</w>\": 11776,\n  \"dahl\": 45816,\n  \"dahl</w>\": 22621,\n  \"dahlia</w>\": 41768,\n  \"dai\": 13559,\n  \"dai</w>\": 10632,\n  \"dail\": 14676,\n  \"dailies</w>\": 21260,\n  \"daily\": 6689,\n  \"daily</w>\": 2873,\n  \"dailynews</w>\": 43466,\n  \"dailys\": 43160,\n  \"dailysketch</w>\": 46738,\n  \"daim\": 40421,\n  \"dain\": 32222,\n  \"dain</w>\": 28315,\n  \"daipur</w>\": 47631,\n  \"dair\": 19998,\n  \"dair</w>\": 42078,\n  \"dairy\": 25243,\n  \"dairy</w>\": 10302,\n  \"dairyfree</w>\": 49366,\n  \"dais\": 10502,\n  \"daisi\": 39947,\n  \"daisies</w>\": 40654,\n  \"daisy\": 39310,\n  \"daisy</w>\": 12865,\n  \"dak\": 6999,\n  \"dak</w>\": 16095,\n  \"dakar</w>\": 31137,\n  \"dakota\": 38522,\n  \"dakota</w>\": 12358,\n  \"dal\": 2476,\n  \"dal</w>\": 5601,\n  \"dala</w>\": 42675,\n  \"dalai</w>\": 41222,\n  \"dalail\": 35169,\n  \"dalailama</w>\": 35849,\n  \"dale\": 11533,\n  \"dale</w>\": 4677,\n  \"dalejr</w>\": 38207,\n  \"dales</w>\": 29031,\n  \"daley</w>\": 28544,\n  \"dalgo</w>\": 43614,\n  \"dali\": 36735,\n  \"dali</w>\": 25703,\n  \"dalit</w>\": 45432,\n  \"dall</w>\": 43631,\n  \"dalla\": 16772,\n  \"dallas\": 27414,\n  \"dallas</w>\": 5759,\n  \"dallascowboys</w>\": 33016,\n  \"dalmati\": 44275,\n  \"dalton</w>\": 21488,\n  \"daly</w>\": 24873,\n  \"dam\": 1880,\n  \"dam</w>\": 4926,\n  \"damage</w>\": 6822,\n  \"damaged</w>\": 13568,\n  \"damages</w>\": 28842,\n  \"damaging</w>\": 20610,\n  \"damas\": 23345,\n  \"damascus</w>\": 25396,\n  \"dame</w>\": 10069,\n  \"dames</w>\": 44548,\n  \"dami\": 17783,\n  \"damian\": 43307,\n  \"damian</w>\": 25375,\n  \"damien</w>\": 25090,\n  \"dammit</w>\": 31057,\n  \"damn\": 37409,\n  \"damn</w>\": 4451,\n  \"damned</w>\": 28428,\n  \"damon\": 48503,\n  \"damon</w>\": 18244,\n  \"damp</w>\": 26520,\n  \"dams</w>\": 37680,\n  \"dan\": 2257,\n  \"dan</w>\": 2284,\n  \"dana\": 44834,\n  \"dana</w>\": 13777,\n  \"danao</w>\": 38598,\n  \"danc\": 3945,\n  \"dance\": 10619,\n  \"dance</w>\": 2724,\n  \"danced</w>\": 32891,\n  \"dancehall</w>\": 33300,\n  \"dancer</w>\": 11400,\n  \"dancers</w>\": 13153,\n  \"dances</w>\": 24083,\n  \"dancing\": 33280,\n  \"dancing</w>\": 6226,\n  \"dand\": 12593,\n  \"dandelion</w>\": 38903,\n  \"dandy</w>\": 31932,\n  \"dane</w>\": 19330,\n  \"danes</w>\": 47477,\n  \"dang\": 4283,\n  \"dang</w>\": 14992,\n  \"danger\": 20083,\n  \"danger</w>\": 11212,\n  \"dangerous</w>\": 7350,\n  \"dangerously</w>\": 35012,\n  \"dangers</w>\": 23726,\n  \"dangle</w>\": 39907,\n  \"dani\": 3001,\n  \"dani</w>\": 17009,\n  \"daniel\": 7859,\n  \"daniel</w>\": 4981,\n  \"daniela</w>\": 44466,\n  \"danielle\": 30396,\n  \"danielle</w>\": 15292,\n  \"danielpadilla</w>\": 34702,\n  \"daniels</w>\": 16146,\n  \"danish</w>\": 15467,\n  \"dank</w>\": 31849,\n  \"dann\": 11951,\n  \"danny\": 14950,\n  \"danny</w>\": 7621,\n  \"dano</w>\": 29703,\n  \"dans</w>\": 16241,\n  \"dant\": 48097,\n  \"dant</w>\": 28237,\n  \"dante</w>\": 21911,\n  \"danube</w>\": 44594,\n  \"dany</w>\": 47816,\n  \"dao</w>\": 36099,\n  \"dap\": 12149,\n  \"dap</w>\": 38034,\n  \"daph\": 24591,\n  \"daphne</w>\": 31687,\n  \"dapl</w>\": 34478,\n  \"dapp\": 46857,\n  \"dapper</w>\": 26071,\n  \"daq</w>\": 25381,\n  \"dar\": 1377,\n  \"dar</w>\": 6242,\n  \"dara</w>\": 17064,\n  \"darby</w>\": 34366,\n  \"darcy</w>\": 32916,\n  \"dare\": 14833,\n  \"dare</w>\": 9863,\n  \"daredevil</w>\": 28849,\n  \"dares</w>\": 42973,\n  \"dareto\": 46794,\n  \"dari\": 16292,\n  \"dari</w>\": 14552,\n  \"daria</w>\": 45622,\n  \"daries</w>\": 18184,\n  \"daring</w>\": 28166,\n  \"dario</w>\": 33918,\n  \"darius</w>\": 32606,\n  \"darje\": 49089,\n  \"dark\": 5724,\n  \"dark</w>\": 3144,\n  \"darker</w>\": 18737,\n  \"darkest</w>\": 25898,\n  \"darkness</w>\": 10521,\n  \"darling</w>\": 13048,\n  \"darlings</w>\": 39961,\n  \"darlington</w>\": 34565,\n  \"darn</w>\": 26059,\n  \"darrell</w>\": 33522,\n  \"darren\": 20263,\n  \"darren</w>\": 12275,\n  \"darry\": 29200,\n  \"darryl</w>\": 35359,\n  \"darshan</w>\": 34564,\n  \"dart\": 14001,\n  \"dart</w>\": 19841,\n  \"darth\": 41304,\n  \"darth</w>\": 23164,\n  \"dartmoor</w>\": 31477,\n  \"dartmouth</w>\": 29667,\n  \"darts</w>\": 15246,\n  \"darwin\": 43013,\n  \"darwin</w>\": 20926,\n  \"daryl\": 45607,\n  \"daryl</w>\": 24532,\n  \"das\": 9940,\n  \"das</w>\": 7359,\n  \"dash\": 13858,\n  \"dash</w>\": 10206,\n  \"dashboard</w>\": 27679,\n  \"dashi\": 12876,\n  \"dashing</w>\": 33825,\n  \"dat\": 1717,\n  \"dat</w>\": 9445,\n  \"data\": 14876,\n  \"data</w>\": 2281,\n  \"datab\": 11941,\n  \"database</w>\": 14678,\n  \"databases</w>\": 48384,\n  \"datac\": 27329,\n  \"datacenter</w>\": 40133,\n  \"datasci\": 14496,\n  \"datascience</w>\": 15748,\n  \"dataviz</w>\": 28138,\n  \"date\": 34300,\n  \"date</w>\": 1524,\n  \"dated</w>\": 13564,\n  \"dates</w>\": 7228,\n  \"dating</w>\": 8534,\n  \"dation</w>\": 15311,\n  \"datlantic\": 34270,\n  \"dato</w>\": 36075,\n  \"dats</w>\": 48674,\n  \"dau\": 3162,\n  \"dau</w>\": 33828,\n  \"daugh\": 42523,\n  \"daughter</w>\": 3944,\n  \"daughters</w>\": 13585,\n  \"daun\": 29470,\n  \"dav\": 3700,\n  \"dav</w>\": 46488,\n  \"davao</w>\": 31502,\n  \"dave\": 10089,\n  \"dave</w>\": 5077,\n  \"daven\": 28350,\n  \"davenport</w>\": 34624,\n  \"davey</w>\": 33391,\n  \"davi\": 1732,\n  \"david\": 4640,\n  \"david</w>\": 2259,\n  \"davidbowie</w>\": 44448,\n  \"davido</w>\": 35989,\n  \"davids</w>\": 46695,\n  \"davidson</w>\": 13166,\n  \"davies</w>\": 13120,\n  \"davin\": 43187,\n  \"davis\": 24426,\n  \"davis</w>\": 5536,\n  \"davison</w>\": 43725,\n  \"davos</w>\": 31887,\n  \"davy</w>\": 41565,\n  \"daw\": 5971,\n  \"daw</w>\": 24404,\n  \"dawg</w>\": 18660,\n  \"dawgs</w>\": 26431,\n  \"dawn\": 30590,\n  \"dawn</w>\": 7689,\n  \"dawson</w>\": 18611,\n  \"dax</w>\": 29458,\n  \"day\": 1405,\n  \"day</w>\": 575,\n  \"daya</w>\": 38165,\n  \"daybreak</w>\": 33862,\n  \"daycare</w>\": 36363,\n  \"daydream</w>\": 41587,\n  \"dayin\": 20332,\n  \"daylight</w>\": 20809,\n  \"dayo\": 29856,\n  \"dayo</w>\": 46605,\n  \"dayof\": 16272,\n  \"dayofthe\": 38043,\n  \"days</w>\": 1161,\n  \"daysof\": 12379,\n  \"daysofcode</w>\": 36537,\n  \"daysto\": 29886,\n  \"daystogo</w>\": 42198,\n  \"dayswild</w>\": 42052,\n  \"daytime</w>\": 22830,\n  \"dayton\": 35729,\n  \"dayton</w>\": 20262,\n  \"daytona</w>\": 16335,\n  \"dayweekend</w>\": 44526,\n  \"dayz</w>\": 35949,\n  \"daz\": 15449,\n  \"daz</w>\": 43844,\n  \"daze</w>\": 33591,\n  \"dazz\": 17149,\n  \"dazzle</w>\": 41164,\n  \"dazzling</w>\": 28821,\n  \"db\": 19100,\n  \"db</w>\": 8128,\n  \"dbacks</w>\": 31175,\n  \"dbs</w>\": 40558,\n  \"dbz</w>\": 49226,\n  \"dc\": 5074,\n  \"dc</w>\": 2743,\n  \"dca</w>\": 49107,\n  \"dcc</w>\": 33747,\n  \"dccomics</w>\": 17610,\n  \"dcfc</w>\": 35526,\n  \"dci</w>\": 35336,\n  \"dcs</w>\": 42878,\n  \"dcu</w>\": 42647,\n  \"dd\": 1353,\n  \"dd</w>\": 3766,\n  \"dda</w>\": 35202,\n  \"ddad</w>\": 39049,\n  \"dday\": 32689,\n  \"dday</w>\": 26243,\n  \"ddc</w>\": 48513,\n  \"ddd</w>\": 24183,\n  \"dddd</w>\": 35362,\n  \"dden</w>\": 5013,\n  \"dder</w>\": 9300,\n  \"dders</w>\": 24827,\n  \"ddi</w>\": 44450,\n  \"ddin</w>\": 17175,\n  \"dding\": 48101,\n  \"dding</w>\": 8974,\n  \"ddings</w>\": 49106,\n  \"ddington</w>\": 29238,\n  \"ddle\": 17633,\n  \"ddle</w>\": 8357,\n  \"ddled</w>\": 38392,\n  \"ddles</w>\": 33901,\n  \"ddleston</w>\": 25647,\n  \"ddling</w>\": 30981,\n  \"ddlovato</w>\": 28244,\n  \"ddos</w>\": 46463,\n  \"ddr</w>\": 26027,\n  \"dds</w>\": 48334,\n  \"ddu</w>\": 43836,\n  \"ddy\": 14981,\n  \"ddy</w>\": 7876,\n  \"de\": 561,\n  \"de</w>\": 654,\n  \"dea</w>\": 18477,\n  \"deacon</w>\": 29155,\n  \"dead\": 3906,\n  \"dead</w>\": 2747,\n  \"deadliest</w>\": 40811,\n  \"deadline\": 47209,\n  \"deadline</w>\": 8458,\n  \"deadlines</w>\": 44959,\n  \"deadly</w>\": 10756,\n  \"deadpool</w>\": 21471,\n  \"deaf\": 28229,\n  \"deaf</w>\": 18358,\n  \"deal\": 7249,\n  \"deal</w>\": 2696,\n  \"dealer</w>\": 15218,\n  \"dealers</w>\": 21697,\n  \"dealership</w>\": 32096,\n  \"dealing</w>\": 13138,\n  \"deals</w>\": 4469,\n  \"dealt</w>\": 30101,\n  \"dean\": 13807,\n  \"dean</w>\": 5828,\n  \"deandre</w>\": 43635,\n  \"deans</w>\": 46852,\n  \"dear\": 15696,\n  \"dear</w>\": 3817,\n  \"dearest</w>\": 24880,\n  \"dearly</w>\": 31880,\n  \"deas</w>\": 34715,\n  \"death\": 7163,\n  \"death</w>\": 2767,\n  \"deaths</w>\": 12253,\n  \"deau</w>\": 12399,\n  \"deaux</w>\": 19883,\n  \"deb\": 2987,\n  \"deb</w>\": 25687,\n  \"debat\": 32082,\n  \"debate</w>\": 5196,\n  \"debates</w>\": 19239,\n  \"debating</w>\": 23472,\n  \"debbie\": 47186,\n  \"debbie</w>\": 16735,\n  \"debit</w>\": 32410,\n  \"debor\": 16738,\n  \"deborah\": 40997,\n  \"deborah</w>\": 22150,\n  \"debra</w>\": 33233,\n  \"debris</w>\": 19208,\n  \"debt</w>\": 8932,\n  \"debts</w>\": 38770,\n  \"debu\": 9790,\n  \"debun\": 33123,\n  \"debut\": 42608,\n  \"debut</w>\": 4085,\n  \"debuted</w>\": 25215,\n  \"debuting</w>\": 34817,\n  \"debuts</w>\": 17044,\n  \"dec\": 3063,\n  \"dec</w>\": 4628,\n  \"deca</w>\": 33428,\n  \"decad\": 29914,\n  \"decade</w>\": 11099,\n  \"decadent</w>\": 41716,\n  \"decades</w>\": 10488,\n  \"decal</w>\": 26678,\n  \"decals</w>\": 37606,\n  \"decan\": 40677,\n  \"decat\": 35334,\n  \"decath\": 47455,\n  \"decatur</w>\": 38540,\n  \"decay</w>\": 22703,\n  \"dece\": 3534,\n  \"deceased</w>\": 30035,\n  \"december</w>\": 3864,\n  \"decent</w>\": 10698,\n  \"decentr\": 28960,\n  \"decentralized</w>\": 38485,\n  \"decep\": 33529,\n  \"deception</w>\": 33046,\n  \"deci\": 2262,\n  \"decide</w>\": 8447,\n  \"decided</w>\": 4939,\n  \"decides</w>\": 17269,\n  \"deciding</w>\": 22513,\n  \"decision</w>\": 5575,\n  \"decisions</w>\": 9903,\n  \"decisive</w>\": 28690,\n  \"deck\": 24885,\n  \"deck</w>\": 6943,\n  \"decked</w>\": 39096,\n  \"decker</w>\": 21449,\n  \"decks</w>\": 23968,\n  \"decl\": 7091,\n  \"decla\": 10739,\n  \"declan</w>\": 42341,\n  \"declar\": 18040,\n  \"declaration</w>\": 19714,\n  \"declare</w>\": 19856,\n  \"declared</w>\": 13845,\n  \"declares</w>\": 23641,\n  \"declaring</w>\": 33273,\n  \"decline</w>\": 15084,\n  \"declined</w>\": 28911,\n  \"declines</w>\": 40478,\n  \"declining</w>\": 29221,\n  \"deco\": 26412,\n  \"deco</w>\": 16422,\n  \"decor\": 5148,\n  \"decor</w>\": 6928,\n  \"decorate</w>\": 23651,\n  \"decorated</w>\": 15917,\n  \"decorating</w>\": 16968,\n  \"decoration</w>\": 16029,\n  \"decorations</w>\": 19158,\n  \"decorative</w>\": 19289,\n  \"decre\": 12284,\n  \"decrease</w>\": 24703,\n  \"decreased</w>\": 33913,\n  \"decreasing</w>\": 43763,\n  \"decree</w>\": 43327,\n  \"ded\": 16744,\n  \"ded</w>\": 1241,\n  \"dedic\": 4701,\n  \"dedicate</w>\": 27610,\n  \"dedicated</w>\": 6770,\n  \"dedication</w>\": 10188,\n  \"dedly</w>\": 36204,\n  \"deduc\": 22799,\n  \"dee\": 5268,\n  \"dee</w>\": 6705,\n  \"deed</w>\": 30260,\n  \"deeds</w>\": 24516,\n  \"deejay\": 48304,\n  \"deejay</w>\": 44511,\n  \"deemed</w>\": 28102,\n  \"deen\": 26456,\n  \"deen</w>\": 12912,\n  \"deep\": 5462,\n  \"deep</w>\": 3383,\n  \"deepak</w>\": 45528,\n  \"deeper</w>\": 15224,\n  \"deepest</w>\": 22245,\n  \"deephouse</w>\": 35684,\n  \"deepi\": 19371,\n  \"deepika</w>\": 34120,\n  \"deepikap\": 29903,\n  \"deepikapadukone</w>\": 30646,\n  \"deeplear\": 22181,\n  \"deeplearning</w>\": 24362,\n  \"deeply</w>\": 11449,\n  \"deer\": 19454,\n  \"deer</w>\": 8700,\n  \"deere</w>\": 32901,\n  \"dees</w>\": 12547,\n  \"deets</w>\": 35537,\n  \"def\": 2044,\n  \"def</w>\": 11649,\n  \"defam\": 35670,\n  \"defamation</w>\": 42741,\n  \"default</w>\": 21650,\n  \"defe\": 4148,\n  \"defeat</w>\": 8477,\n  \"defeated</w>\": 8927,\n  \"defeating</w>\": 22594,\n  \"defeats</w>\": 16317,\n  \"defect</w>\": 44013,\n  \"defects</w>\": 37485,\n  \"defen\": 3619,\n  \"defence\": 30307,\n  \"defence</w>\": 9659,\n  \"defend\": 21970,\n  \"defend</w>\": 11397,\n  \"defended</w>\": 27161,\n  \"defender</w>\": 10618,\n  \"defenders</w>\": 20063,\n  \"defending</w>\": 13098,\n  \"defends</w>\": 20134,\n  \"defense\": 45875,\n  \"defense</w>\": 6021,\n  \"defenseman</w>\": 43714,\n  \"defenses</w>\": 49198,\n  \"defensive</w>\": 10824,\n  \"defi\": 17244,\n  \"defiance</w>\": 36186,\n  \"defiant</w>\": 47597,\n  \"defibrill\": 47684,\n  \"defic\": 18022,\n  \"defici\": 23387,\n  \"deficiency</w>\": 30685,\n  \"deficit</w>\": 20156,\n  \"defin\": 3188,\n  \"define</w>\": 14919,\n  \"defined</w>\": 15278,\n  \"defines</w>\": 28218,\n  \"defining</w>\": 20504,\n  \"definite</w>\": 40793,\n  \"definitely</w>\": 4824,\n  \"definition</w>\": 11405,\n  \"definitive</w>\": 25298,\n  \"defl\": 31467,\n  \"deforestation</w>\": 41330,\n  \"defstar</w>\": 36427,\n  \"defy</w>\": 39148,\n  \"defying</w>\": 38496,\n  \"deg</w>\": 38498,\n  \"degra\": 28939,\n  \"degradation</w>\": 44468,\n  \"degre\": 4653,\n  \"degree</w>\": 7119,\n  \"degrees</w>\": 8000,\n  \"deh</w>\": 35582,\n  \"dei\": 33833,\n  \"dei</w>\": 23279,\n  \"deir\": 42948,\n  \"deity</w>\": 42574,\n  \"deja</w>\": 46902,\n  \"dek</w>\": 23901,\n  \"dekalb</w>\": 37775,\n  \"del\": 1233,\n  \"del</w>\": 2003,\n  \"dela</w>\": 37986,\n  \"delaney</w>\": 31528,\n  \"delav\": 23706,\n  \"delavin\": 40477,\n  \"delavin</w>\": 40776,\n  \"delavinkisses</w>\": 40631,\n  \"delaware</w>\": 17547,\n  \"delay\": 12955,\n  \"delay</w>\": 10934,\n  \"delayed</w>\": 14567,\n  \"delaying</w>\": 43781,\n  \"delays</w>\": 11232,\n  \"dele\": 7922,\n  \"dele</w>\": 33431,\n  \"delec\": 38615,\n  \"delectable</w>\": 45500,\n  \"deleg\": 8046,\n  \"delegate</w>\": 27259,\n  \"delegates</w>\": 14623,\n  \"delegation</w>\": 14632,\n  \"delete</w>\": 19204,\n  \"deleted</w>\": 16588,\n  \"deleting</w>\": 41857,\n  \"delft</w>\": 42749,\n  \"delgado</w>\": 49182,\n  \"delhi\": 26723,\n  \"delhi</w>\": 5717,\n  \"deli\": 1932,\n  \"deli</w>\": 18601,\n  \"delia</w>\": 33193,\n  \"deliber\": 18316,\n  \"deliberate</w>\": 38271,\n  \"deliberately</w>\": 35163,\n  \"delic\": 13366,\n  \"delicacy</w>\": 49181,\n  \"delicate</w>\": 18768,\n  \"delici\": 19993,\n  \"delicious</w>\": 3959,\n  \"deliciously</w>\": 39589,\n  \"deliciousness</w>\": 42819,\n  \"delight\": 46165,\n  \"delight</w>\": 13073,\n  \"delighted</w>\": 5943,\n  \"delightful</w>\": 15513,\n  \"delights</w>\": 25330,\n  \"deline</w>\": 18797,\n  \"delines</w>\": 13562,\n  \"delish</w>\": 25093,\n  \"deliver\": 19561,\n  \"deliver</w>\": 7396,\n  \"delivered</w>\": 7278,\n  \"deliveries</w>\": 29336,\n  \"delivering</w>\": 9943,\n  \"delivers</w>\": 11753,\n  \"delivery</w>\": 5619,\n  \"dell\": 24381,\n  \"dell</w>\": 10242,\n  \"della</w>\": 22986,\n  \"delle</w>\": 35963,\n  \"deloit\": 29428,\n  \"deloitte</w>\": 38667,\n  \"dels</w>\": 48636,\n  \"delta\": 32250,\n  \"delta</w>\": 8768,\n  \"delu\": 18779,\n  \"delusional</w>\": 48059,\n  \"delux\": 13709,\n  \"deluxe</w>\": 14056,\n  \"delve</w>\": 46008,\n  \"dely</w>\": 15040,\n  \"dem\": 3251,\n  \"dem</w>\": 7825,\n  \"dema\": 40268,\n  \"dema</w>\": 45046,\n  \"deman</w>\": 48366,\n  \"demand\": 13072,\n  \"demand</w>\": 5650,\n  \"demanded</w>\": 33699,\n  \"demanding</w>\": 17099,\n  \"demands</w>\": 14241,\n  \"demar</w>\": 46566,\n  \"demarcus</w>\": 47873,\n  \"demb\": 35930,\n  \"demdebate</w>\": 43973,\n  \"deme\": 25143,\n  \"demean\": 37376,\n  \"demen\": 12604,\n  \"dementi\": 46028,\n  \"dementia</w>\": 14047,\n  \"demetri\": 39553,\n  \"demi\": 32879,\n  \"demi</w>\": 14480,\n  \"demise</w>\": 28756,\n  \"demo\": 2930,\n  \"demo</w>\": 7380,\n  \"democr\": 3573,\n  \"democracy</w>\": 7758,\n  \"democrat</w>\": 15431,\n  \"democratic</w>\": 9149,\n  \"democrats</w>\": 8865,\n  \"demographic</w>\": 31308,\n  \"demol\": 19382,\n  \"demolished</w>\": 26537,\n  \"demolition</w>\": 22237,\n  \"demon\": 5635,\n  \"demon</w>\": 12085,\n  \"demonetisation</w>\": 41338,\n  \"demonic</w>\": 46920,\n  \"demons</w>\": 18388,\n  \"demonstr\": 8579,\n  \"demonstrate</w>\": 22231,\n  \"demonstrated</w>\": 29477,\n  \"demonstrates</w>\": 24806,\n  \"demonstrating</w>\": 22107,\n  \"demonstration</w>\": 16722,\n  \"demonstrations</w>\": 33964,\n  \"demonstrators</w>\": 46450,\n  \"demos</w>\": 19304,\n  \"demp\": 22490,\n  \"dempsey</w>\": 30188,\n  \"dems</w>\": 10989,\n  \"demsin\": 42664,\n  \"demsinphilly</w>\": 43091,\n  \"den\": 1177,\n  \"den</w>\": 1181,\n  \"dena</w>\": 32431,\n  \"denali</w>\": 48076,\n  \"dence</w>\": 3370,\n  \"dency</w>\": 11659,\n  \"dend\": 37447,\n  \"dends</w>\": 43985,\n  \"dene</w>\": 45128,\n  \"dened</w>\": 19571,\n  \"deng\": 43098,\n  \"deng</w>\": 41788,\n  \"dengue</w>\": 41932,\n  \"denham</w>\": 39180,\n  \"deni\": 21995,\n  \"denial</w>\": 25716,\n  \"denied</w>\": 15780,\n  \"denies</w>\": 19565,\n  \"denim</w>\": 13606,\n  \"denis\": 47630,\n  \"denis</w>\": 18750,\n  \"denise\": 45900,\n  \"denise</w>\": 20899,\n  \"denmark</w>\": 13268,\n  \"dennis\": 32738,\n  \"dennis</w>\": 10534,\n  \"denny</w>\": 26808,\n  \"denomin\": 41016,\n  \"dens</w>\": 16533,\n  \"dense</w>\": 19353,\n  \"density</w>\": 22431,\n  \"dent\": 3593,\n  \"dent</w>\": 1258,\n  \"dental\": 24635,\n  \"dental</w>\": 8382,\n  \"dentally</w>\": 10346,\n  \"dented</w>\": 21923,\n  \"denti\": 4418,\n  \"dential</w>\": 5459,\n  \"dentist</w>\": 17816,\n  \"dentistry</w>\": 25754,\n  \"dently</w>\": 28817,\n  \"denton</w>\": 23567,\n  \"dents</w>\": 1517,\n  \"denver\": 27847,\n  \"denver</w>\": 8569,\n  \"deny</w>\": 18679,\n  \"denying</w>\": 32771,\n  \"denzel</w>\": 42503,\n  \"deo\": 26406,\n  \"deo</w>\": 12121,\n  \"deodor\": 47639,\n  \"deol</w>\": 41902,\n  \"deon\": 31466,\n  \"deon</w>\": 16079,\n  \"dep\": 6079,\n  \"dep</w>\": 24370,\n  \"depar\": 10794,\n  \"depart\": 5343,\n  \"depart</w>\": 30649,\n  \"departed</w>\": 32541,\n  \"departing</w>\": 26902,\n  \"department</w>\": 5744,\n  \"departments</w>\": 29523,\n  \"departs</w>\": 38998,\n  \"departure</w>\": 17850,\n  \"depe\": 36118,\n  \"depend\": 13894,\n  \"depend</w>\": 27371,\n  \"dependence</w>\": 40243,\n  \"dependent</w>\": 23280,\n  \"depending</w>\": 23673,\n  \"depends</w>\": 20497,\n  \"depic\": 11307,\n  \"depicted</w>\": 34637,\n  \"depicting</w>\": 24970,\n  \"depiction</w>\": 31071,\n  \"depicts</w>\": 29340,\n  \"deple\": 38504,\n  \"deplo\": 9356,\n  \"deplor\": 39232,\n  \"deploy</w>\": 26944,\n  \"deployed</w>\": 20009,\n  \"deploying</w>\": 42212,\n  \"deployment</w>\": 20183,\n  \"depo\": 14276,\n  \"depor\": 36110,\n  \"deport\": 23389,\n  \"deportation</w>\": 36617,\n  \"deported</w>\": 39320,\n  \"deportes</w>\": 47878,\n  \"depos\": 21266,\n  \"deposit</w>\": 16775,\n  \"deposits</w>\": 30740,\n  \"depot</w>\": 12589,\n  \"depp</w>\": 24941,\n  \"depre\": 7107,\n  \"depress\": 38869,\n  \"depressed</w>\": 23269,\n  \"depressing</w>\": 29235,\n  \"depression</w>\": 10023,\n  \"depri\": 28587,\n  \"depriv\": 45809,\n  \"deprivation</w>\": 47810,\n  \"deprived</w>\": 39140,\n  \"dept</w>\": 9201,\n  \"depth</w>\": 10350,\n  \"depths</w>\": 28855,\n  \"depu\": 6912,\n  \"deputies</w>\": 24914,\n  \"deputy</w>\": 7932,\n  \"der\": 839,\n  \"der</w>\": 801,\n  \"dera</w>\": 20696,\n  \"derail\": 48502,\n  \"derby\": 13904,\n  \"derby</w>\": 7177,\n  \"derbyshire</w>\": 22147,\n  \"derdale</w>\": 21513,\n  \"dere\": 5701,\n  \"dere</w>\": 44194,\n  \"dered</w>\": 3776,\n  \"derek\": 22461,\n  \"derek</w>\": 11205,\n  \"derel\": 46728,\n  \"derer</w>\": 11289,\n  \"derers</w>\": 20882,\n  \"deri\": 34573,\n  \"derick</w>\": 33908,\n  \"dering</w>\": 6076,\n  \"deriv\": 33458,\n  \"derived</w>\": 26461,\n  \"derland</w>\": 35488,\n  \"derman</w>\": 29740,\n  \"dermatology</w>\": 48051,\n  \"dern</w>\": 30086,\n  \"dero\": 37203,\n  \"dero</w>\": 34026,\n  \"derrick</w>\": 21798,\n  \"derry\": 45777,\n  \"derry</w>\": 20535,\n  \"ders\": 37307,\n  \"ders</w>\": 1923,\n  \"derson</w>\": 12677,\n  \"dery</w>\": 17172,\n  \"des\": 6797,\n  \"des</w>\": 1437,\n  \"desai</w>\": 35316,\n  \"desc\": 13866,\n  \"descen\": 32318,\n  \"descend\": 26004,\n  \"descend</w>\": 46241,\n  \"descendants</w>\": 36323,\n  \"descending</w>\": 36620,\n  \"descent</w>\": 19375,\n  \"desch\": 49209,\n  \"descri\": 4637,\n  \"describe</w>\": 10967,\n  \"described</w>\": 14671,\n  \"describes</w>\": 13678,\n  \"describing</w>\": 24239,\n  \"descrip\": 41832,\n  \"description</w>\": 13951,\n  \"descriptions</w>\": 40653,\n  \"desde</w>\": 42218,\n  \"dese\": 27195,\n  \"deser\": 3659,\n  \"desert\": 45776,\n  \"desert</w>\": 7301,\n  \"deserted</w>\": 41560,\n  \"deserve</w>\": 7043,\n  \"deserved</w>\": 10061,\n  \"deserves</w>\": 9079,\n  \"deserving</w>\": 26615,\n  \"desh\": 25320,\n  \"desh</w>\": 7448,\n  \"deshi</w>\": 42769,\n  \"desi\": 6772,\n  \"desi</w>\": 26635,\n  \"desig\": 1250,\n  \"design\": 8359,\n  \"design</w>\": 1681,\n  \"designated</w>\": 24119,\n  \"designation</w>\": 41155,\n  \"designed</w>\": 4486,\n  \"designer\": 35640,\n  \"designer</w>\": 5728,\n  \"designers</w>\": 12720,\n  \"designing</w>\": 13467,\n  \"designs</w>\": 6747,\n  \"designthinking</w>\": 32450,\n  \"desirable</w>\": 32368,\n  \"desire</w>\": 11858,\n  \"desired</w>\": 28631,\n  \"desires</w>\": 27598,\n  \"desk\": 11937,\n  \"desk</w>\": 6550,\n  \"desks</w>\": 41014,\n  \"desktop</w>\": 14345,\n  \"desmond</w>\": 27821,\n  \"desol\": 41258,\n  \"desp\": 3642,\n  \"despair</w>\": 28097,\n  \"desper\": 10144,\n  \"desperate</w>\": 15072,\n  \"desperately</w>\": 21993,\n  \"despic\": 32442,\n  \"despicable</w>\": 37158,\n  \"despite</w>\": 5325,\n  \"dess\": 7096,\n  \"dess</w>\": 10001,\n  \"dessert</w>\": 9753,\n  \"desserts</w>\": 22948,\n  \"desses</w>\": 43913,\n  \"dest\": 6540,\n  \"dest</w>\": 4549,\n  \"destin\": 4934,\n  \"destination\": 32191,\n  \"destination</w>\": 9179,\n  \"destinations</w>\": 16981,\n  \"destined</w>\": 28525,\n  \"destiny\": 39875,\n  \"destiny</w>\": 10867,\n  \"destro\": 8287,\n  \"destroy\": 8308,\n  \"destroy</w>\": 11930,\n  \"destroyed</w>\": 9965,\n  \"destroyer</w>\": 25291,\n  \"destroying</w>\": 19613,\n  \"destroys</w>\": 27634,\n  \"destruc\": 22945,\n  \"destruction</w>\": 14281,\n  \"destructive</w>\": 29591,\n  \"det\": 28966,\n  \"det</w>\": 15366,\n  \"deta\": 1914,\n  \"detached</w>\": 26252,\n  \"detail</w>\": 7657,\n  \"detailed</w>\": 12609,\n  \"detailing</w>\": 23163,\n  \"details</w>\": 2353,\n  \"detained</w>\": 20260,\n  \"dete\": 5606,\n  \"detec\": 17991,\n  \"detect</w>\": 22744,\n  \"detected</w>\": 26988,\n  \"detecting</w>\": 41290,\n  \"detection</w>\": 16220,\n  \"detective</w>\": 13672,\n  \"detectives</w>\": 27994,\n  \"detector</w>\": 27689,\n  \"detectors</w>\": 45063,\n  \"detention</w>\": 16908,\n  \"deter\": 10742,\n  \"deter</w>\": 47458,\n  \"detergent</w>\": 46726,\n  \"deterior\": 28512,\n  \"determin\": 8325,\n  \"determination</w>\": 17410,\n  \"determine</w>\": 16768,\n  \"determined</w>\": 14371,\n  \"determines</w>\": 42192,\n  \"determining</w>\": 39884,\n  \"deth</w>\": 38375,\n  \"deto\": 39710,\n  \"deton\": 39335,\n  \"detour</w>\": 31211,\n  \"detox</w>\": 22459,\n  \"detri\": 47951,\n  \"detro\": 6210,\n  \"detroit\": 19404,\n  \"detroit</w>\": 7073,\n  \"detta</w>\": 45438,\n  \"dette</w>\": 35750,\n  \"deu\": 21457,\n  \"deuce</w>\": 45332,\n  \"deus</w>\": 37625,\n  \"deut\": 14970,\n  \"deutsch\": 30389,\n  \"deutsche</w>\": 32760,\n  \"deutschland</w>\": 36878,\n  \"deux</w>\": 47089,\n  \"dev\": 2797,\n  \"dev</w>\": 3670,\n  \"deva</w>\": 45179,\n  \"devan\": 37072,\n  \"devast\": 12913,\n  \"devastated</w>\": 29865,\n  \"devastating</w>\": 19280,\n  \"devastation</w>\": 42452,\n  \"devel\": 1820,\n  \"develop\": 1966,\n  \"develop</w>\": 7708,\n  \"developed</w>\": 8763,\n  \"developer</w>\": 10929,\n  \"developers</w>\": 13248,\n  \"developing</w>\": 8131,\n  \"development</w>\": 2855,\n  \"developmental</w>\": 29347,\n  \"developments</w>\": 17393,\n  \"develops</w>\": 29895,\n  \"deven\": 45537,\n  \"devgn</w>\": 29871,\n  \"devi\": 12926,\n  \"devi</w>\": 20717,\n  \"deviant\": 25593,\n  \"deviantart</w>\": 26046,\n  \"device</w>\": 8163,\n  \"devices</w>\": 9067,\n  \"devil\": 8894,\n  \"devil</w>\": 8043,\n  \"deville</w>\": 34329,\n  \"devils</w>\": 11683,\n  \"devin\": 31193,\n  \"devin</w>\": 20996,\n  \"devine</w>\": 33019,\n  \"devlin</w>\": 48040,\n  \"devo\": 11861,\n  \"devo</w>\": 43444,\n  \"devon\": 16205,\n  \"devon</w>\": 10046,\n  \"devops</w>\": 21504,\n  \"devos</w>\": 40646,\n  \"devote\": 37777,\n  \"devoted</w>\": 24561,\n  \"devotees</w>\": 39759,\n  \"devotion</w>\": 25821,\n  \"devotional</w>\": 35456,\n  \"devs</w>\": 27374,\n  \"dew\": 31952,\n  \"dew</w>\": 16358,\n  \"dewey</w>\": 40399,\n  \"dex\": 10030,\n  \"dex</w>\": 13790,\n  \"dexpo</w>\": 42502,\n  \"dexter\": 45049,\n  \"dexter</w>\": 22781,\n  \"dey</w>\": 11829,\n  \"dez\": 23190,\n  \"dez</w>\": 8122,\n  \"df\": 12908,\n  \"df</w>\": 10468,\n  \"dfc</w>\": 41903,\n  \"dfs</w>\": 32880,\n  \"dfw</w>\": 20439,\n  \"dg\": 2394,\n  \"dg</w>\": 9742,\n  \"dgate</w>\": 41684,\n  \"dge\": 4016,\n  \"dge</w>\": 1360,\n  \"dged</w>\": 11830,\n  \"dgeon</w>\": 45655,\n  \"dgers</w>\": 8733,\n  \"dges</w>\": 5432,\n  \"dging</w>\": 9565,\n  \"dh\": 6669,\n  \"dh</w>\": 9960,\n  \"dha\": 11629,\n  \"dha</w>\": 27377,\n  \"dhabi</w>\": 22349,\n  \"dhaka</w>\": 32877,\n  \"dham\": 29635,\n  \"dham</w>\": 30838,\n  \"dhan\": 12542,\n  \"dhan</w>\": 28569,\n  \"dhanush\": 26162,\n  \"dhanush</w>\": 36200,\n  \"dhanushkraja</w>\": 29266,\n  \"dhar\": 12397,\n  \"dharma</w>\": 30536,\n  \"dhary</w>\": 28706,\n  \"dhawan</w>\": 44699,\n  \"dhe\": 29706,\n  \"dheim</w>\": 44280,\n  \"dhi\": 31553,\n  \"dhi</w>\": 26166,\n  \"dho\": 37834,\n  \"dhoni</w>\": 25698,\n  \"dhru\": 40257,\n  \"dhry</w>\": 39960,\n  \"dhs</w>\": 26849,\n  \"dhu\": 32387,\n  \"di\": 570,\n  \"di</w>\": 1618,\n  \"dia\": 7351,\n  \"dia</w>\": 3357,\n  \"diab\": 15954,\n  \"diabe\": 19167,\n  \"diabete\": 43826,\n  \"diabetes</w>\": 10319,\n  \"diabetic</w>\": 30230,\n  \"diablo</w>\": 23931,\n  \"diag\": 6851,\n  \"diagno\": 7736,\n  \"diagnose</w>\": 44429,\n  \"diagnosed</w>\": 16979,\n  \"diagnosis</w>\": 15715,\n  \"diagnostic</w>\": 26351,\n  \"diagnostics</w>\": 37723,\n  \"diagram</w>\": 22697,\n  \"dial\": 18416,\n  \"dial</w>\": 11381,\n  \"dialo\": 30709,\n  \"dialog</w>\": 48945,\n  \"dialogue</w>\": 11288,\n  \"dialogues</w>\": 40330,\n  \"dialysis</w>\": 44798,\n  \"diam\": 4347,\n  \"diameter</w>\": 27189,\n  \"diamon\": 8873,\n  \"diamond\": 18535,\n  \"diamond</w>\": 6235,\n  \"diamonds</w>\": 12687,\n  \"dian\": 16021,\n  \"dian</w>\": 4998,\n  \"diana</w>\": 12803,\n  \"diane</w>\": 15855,\n  \"dianne</w>\": 42299,\n  \"dians</w>\": 21041,\n  \"diaper</w>\": 34382,\n  \"diapers</w>\": 39659,\n  \"diar\": 25932,\n  \"diaries</w>\": 15541,\n  \"diary</w>\": 10380,\n  \"dias\": 22137,\n  \"dias</w>\": 29354,\n  \"diaspora</w>\": 28390,\n  \"diaz</w>\": 17688,\n  \"dic\": 1404,\n  \"dic</w>\": 6717,\n  \"dicap\": 30023,\n  \"dicaprio</w>\": 30755,\n  \"dice</w>\": 14406,\n  \"dick\": 14413,\n  \"dick</w>\": 9554,\n  \"dickens</w>\": 33421,\n  \"dict\": 45360,\n  \"dict</w>\": 15159,\n  \"dictat\": 26156,\n  \"dictator</w>\": 27399,\n  \"dictatorship</w>\": 37989,\n  \"dictionary</w>\": 19699,\n  \"did\": 1861,\n  \"did</w>\": 1335,\n  \"diddy</w>\": 33527,\n  \"didi</w>\": 34396,\n  \"didier</w>\": 45614,\n  \"didn</w>\": 2376,\n  \"didnt</w>\": 13057,\n  \"dido</w>\": 31725,\n  \"didyou\": 12295,\n  \"didyouknow</w>\": 12506,\n  \"die\": 3150,\n  \"die</w>\": 2082,\n  \"diec\": 27729,\n  \"diecast</w>\": 37936,\n  \"died</w>\": 3622,\n  \"diego\": 30940,\n  \"diego</w>\": 6306,\n  \"diem</w>\": 45571,\n  \"dience</w>\": 33686,\n  \"dient</w>\": 27231,\n  \"dier\": 29702,\n  \"dier</w>\": 16394,\n  \"dies\": 20104,\n  \"dies</w>\": 1862,\n  \"diesel\": 46312,\n  \"diesel</w>\": 10591,\n  \"diest</w>\": 45739,\n  \"diet\": 21295,\n  \"diet</w>\": 6582,\n  \"dietary</w>\": 29009,\n  \"dietrich</w>\": 47005,\n  \"diets</w>\": 35173,\n  \"dif\": 18656,\n  \"dif</w>\": 48731,\n  \"diff\": 44073,\n  \"diff</w>\": 20331,\n  \"diffe\": 1967,\n  \"differ</w>\": 34620,\n  \"differen\": 14903,\n  \"difference</w>\": 4731,\n  \"differences</w>\": 14003,\n  \"different</w>\": 2731,\n  \"differenti\": 21729,\n  \"differential</w>\": 34027,\n  \"differentiate</w>\": 49032,\n  \"differently</w>\": 18325,\n  \"diffic\": 6140,\n  \"difficult</w>\": 7405,\n  \"difficulties</w>\": 23468,\n  \"difficulty</w>\": 25245,\n  \"diffu\": 31603,\n  \"diffuser</w>\": 49400,\n  \"dig\": 1831,\n  \"dig</w>\": 9887,\n  \"dige\": 17820,\n  \"digest</w>\": 20413,\n  \"digestion</w>\": 40533,\n  \"digestive</w>\": 32304,\n  \"digg\": 43240,\n  \"digger</w>\": 35919,\n  \"diggin</w>\": 48466,\n  \"digging</w>\": 14971,\n  \"digi\": 15627,\n  \"digi</w>\": 39361,\n  \"digimon</w>\": 44181,\n  \"digit\": 14899,\n  \"digit</w>\": 27472,\n  \"digital\": 4704,\n  \"digital</w>\": 2794,\n  \"digitalart</w>\": 16987,\n  \"digitalhealth</w>\": 32190,\n  \"digitalindia</w>\": 46630,\n  \"digitally</w>\": 27543,\n  \"digitalmarketing</w>\": 15299,\n  \"digitaltransformation</w>\": 20047,\n  \"digiti\": 25935,\n  \"digits</w>\": 31710,\n  \"digni\": 45532,\n  \"dignit\": 39497,\n  \"dignity</w>\": 17744,\n  \"digo</w>\": 35701,\n  \"digs</w>\": 26877,\n  \"dih</w>\": 43089,\n  \"dii</w>\": 32755,\n  \"dijk</w>\": 44444,\n  \"dik\": 38854,\n  \"dik</w>\": 37747,\n  \"dike</w>\": 42683,\n  \"dil\": 7643,\n  \"dil</w>\": 17942,\n  \"dile\": 25428,\n  \"dilemma</w>\": 29787,\n  \"dilig\": 30664,\n  \"dill\": 12318,\n  \"dill</w>\": 27206,\n  \"dillon</w>\": 21056,\n  \"dilu\": 45242,\n  \"dim\": 19576,\n  \"dim</w>\": 17523,\n  \"dime</w>\": 24443,\n  \"dimen\": 10935,\n  \"dimension</w>\": 20479,\n  \"dimensional</w>\": 25252,\n  \"dimensions</w>\": 25086,\n  \"diment</w>\": 43500,\n  \"dimes</w>\": 44888,\n  \"dimini\": 37459,\n  \"dimit\": 22250,\n  \"dimitri</w>\": 48840,\n  \"dimp\": 38853,\n  \"din\": 1462,\n  \"din</w>\": 5673,\n  \"dina</w>\": 36815,\n  \"dinah</w>\": 30903,\n  \"dine\": 20951,\n  \"dine</w>\": 12989,\n  \"diner</w>\": 16963,\n  \"dinesh</w>\": 48341,\n  \"ding\": 7545,\n  \"ding</w>\": 796,\n  \"dinger</w>\": 45580,\n  \"dingh\": 48064,\n  \"dings</w>\": 5473,\n  \"dington</w>\": 24804,\n  \"dinho</w>\": 47370,\n  \"dini</w>\": 20196,\n  \"dining</w>\": 8658,\n  \"dinner\": 27548,\n  \"dinner</w>\": 2571,\n  \"dinners</w>\": 33570,\n  \"dino\": 9692,\n  \"dino</w>\": 14077,\n  \"dinosa\": 18955,\n  \"dinosaur</w>\": 15095,\n  \"dinosaurs</w>\": 20387,\n  \"dio\": 3779,\n  \"dio</w>\": 1521,\n  \"dioce\": 20763,\n  \"diocese</w>\": 27091,\n  \"dion\": 42899,\n  \"dion</w>\": 16250,\n  \"dior</w>\": 23655,\n  \"dios</w>\": 37563,\n  \"dious</w>\": 27417,\n  \"dioxide</w>\": 38102,\n  \"dip\": 19918,\n  \"dip</w>\": 11343,\n  \"dipl\": 8490,\n  \"diplo</w>\": 38115,\n  \"diplom\": 11169,\n  \"diploma</w>\": 21251,\n  \"diplomacy</w>\": 23798,\n  \"diplomat</w>\": 32828,\n  \"diplomatic</w>\": 23782,\n  \"diplomats</w>\": 44126,\n  \"dipped</w>\": 30610,\n  \"dipper</w>\": 49317,\n  \"dipping</w>\": 33544,\n  \"dips</w>\": 37522,\n  \"dir\": 4251,\n  \"dir</w>\": 8478,\n  \"dire\": 38355,\n  \"dire</w>\": 25664,\n  \"direc\": 1534,\n  \"direct\": 43224,\n  \"direct</w>\": 6016,\n  \"directed</w>\": 8392,\n  \"directing</w>\": 21817,\n  \"direction\": 15923,\n  \"direction</w>\": 5407,\n  \"directional</w>\": 38687,\n  \"directioner</w>\": 48042,\n  \"directioners</w>\": 22055,\n  \"directions</w>\": 16440,\n  \"directive</w>\": 40630,\n  \"directly</w>\": 9701,\n  \"director\": 20337,\n  \"director</w>\": 2681,\n  \"directorial</w>\": 45327,\n  \"directors</w>\": 11940,\n  \"directory</w>\": 25272,\n  \"directs</w>\": 34349,\n  \"directv</w>\": 48652,\n  \"dirk</w>\": 28171,\n  \"dirt\": 31415,\n  \"dirt</w>\": 11795,\n  \"dirty\": 20127,\n  \"dirty</w>\": 7615,\n  \"dis\": 1518,\n  \"dis</w>\": 6112,\n  \"disa\": 3882,\n  \"disab\": 47380,\n  \"disabilities</w>\": 17350,\n  \"disability\": 48986,\n  \"disability</w>\": 13261,\n  \"disabled</w>\": 13613,\n  \"disadvantaged</w>\": 40577,\n  \"disagree</w>\": 23199,\n  \"disapp\": 5384,\n  \"disappear\": 21148,\n  \"disappear</w>\": 25173,\n  \"disappearance</w>\": 35929,\n  \"disappeared</w>\": 23139,\n  \"disappearing</w>\": 35819,\n  \"disappears</w>\": 44406,\n  \"disappo\": 7605,\n  \"disappoint</w>\": 25446,\n  \"disappointed</w>\": 13794,\n  \"disappointing</w>\": 21941,\n  \"disappointment</w>\": 23884,\n  \"disappoints</w>\": 48545,\n  \"disappro\": 48276,\n  \"disar\": 42971,\n  \"disaster</w>\": 9072,\n  \"disasters</w>\": 26976,\n  \"disastrous</w>\": 35790,\n  \"disc\": 1472,\n  \"disc</w>\": 10712,\n  \"discar\": 40532,\n  \"discarded</w>\": 45197,\n  \"discer\": 49140,\n  \"dischar\": 22671,\n  \"discharge</w>\": 32485,\n  \"disci\": 9559,\n  \"discip\": 38951,\n  \"discipl\": 10467,\n  \"disciples</w>\": 39366,\n  \"disciplinary</w>\": 20232,\n  \"discipline</w>\": 18903,\n  \"disciplines</w>\": 42032,\n  \"discla\": 40248,\n  \"disclaimer</w>\": 46465,\n  \"disclo\": 17481,\n  \"disclose</w>\": 46379,\n  \"disclosed</w>\": 30905,\n  \"disclosure</w>\": 26502,\n  \"disco\": 2475,\n  \"disco</w>\": 11964,\n  \"discography</w>\": 47545,\n  \"discomfort</w>\": 48054,\n  \"discord</w>\": 23582,\n  \"discoun\": 18515,\n  \"discount</w>\": 7638,\n  \"discounted</w>\": 20993,\n  \"discounts</w>\": 18186,\n  \"discoura\": 45850,\n  \"discourse</w>\": 29441,\n  \"discover\": 10539,\n  \"discover</w>\": 4834,\n  \"discovered</w>\": 6986,\n  \"discoveries</w>\": 29308,\n  \"discovering</w>\": 17967,\n  \"discovers</w>\": 29719,\n  \"discovery\": 40491,\n  \"discovery</w>\": 8027,\n  \"discre\": 20616,\n  \"discrimin\": 11721,\n  \"discrimination</w>\": 14775,\n  \"discs</w>\": 29270,\n  \"discu\": 1984,\n  \"discus</w>\": 41828,\n  \"discuss</w>\": 4312,\n  \"discussed</w>\": 11300,\n  \"discusses</w>\": 8116,\n  \"discussing</w>\": 5900,\n  \"discussion</w>\": 5060,\n  \"discussions</w>\": 13806,\n  \"dise\": 4262,\n  \"disease</w>\": 5336,\n  \"diseases</w>\": 12035,\n  \"disen\": 46468,\n  \"disgrace</w>\": 29877,\n  \"disgraceful</w>\": 44146,\n  \"disgu\": 9793,\n  \"disguise</w>\": 27803,\n  \"disguised</w>\": 37149,\n  \"disgusted</w>\": 41977,\n  \"disgusting</w>\": 16218,\n  \"dish\": 11039,\n  \"dish</w>\": 4531,\n  \"disha</w>\": 42498,\n  \"dishes</w>\": 11412,\n  \"dishon\": 30777,\n  \"dishu</w>\": 44728,\n  \"dishwasher</w>\": 40524,\n  \"disin\": 19484,\n  \"disinfe\": 48050,\n  \"disintegr\": 49275,\n  \"disk</w>\": 17970,\n  \"dislike</w>\": 30796,\n  \"dism\": 30836,\n  \"dism</w>\": 38821,\n  \"dismant\": 36557,\n  \"dismiss</w>\": 43287,\n  \"dismissal</w>\": 42068,\n  \"dismissed</w>\": 30087,\n  \"dismisses</w>\": 45238,\n  \"disney\": 6729,\n  \"disney</w>\": 4696,\n  \"disneyland\": 39481,\n  \"disneyland</w>\": 13661,\n  \"disneyworld</w>\": 28469,\n  \"diso\": 26305,\n  \"disobe\": 42841,\n  \"dison</w>\": 19310,\n  \"disorder</w>\": 12635,\n  \"disorders</w>\": 17114,\n  \"disp\": 11073,\n  \"dispar\": 24633,\n  \"disparities</w>\": 45122,\n  \"dispat\": 28652,\n  \"dispatch</w>\": 26306,\n  \"dispen\": 19077,\n  \"dispenser</w>\": 40116,\n  \"disper\": 34499,\n  \"displa\": 9326,\n  \"displac\": 17718,\n  \"displaced</w>\": 22817,\n  \"displacement</w>\": 37931,\n  \"display</w>\": 4456,\n  \"displayed</w>\": 18967,\n  \"displaying</w>\": 26468,\n  \"displays</w>\": 15648,\n  \"dispo\": 13651,\n  \"dispon\": 38872,\n  \"disponible</w>\": 46130,\n  \"dispos\": 45177,\n  \"disposable</w>\": 37275,\n  \"disposal</w>\": 28231,\n  \"dispro\": 32927,\n  \"dispropor\": 40354,\n  \"disproportion\": 45492,\n  \"disregard</w>\": 43869,\n  \"disrespect</w>\": 34055,\n  \"disrespectful</w>\": 41723,\n  \"disru\": 13763,\n  \"disrup\": 14641,\n  \"disrupt</w>\": 25214,\n  \"disrupted</w>\": 46674,\n  \"disrupting</w>\": 42419,\n  \"disruption</w>\": 19635,\n  \"disruptive</w>\": 31554,\n  \"diss\": 10766,\n  \"diss</w>\": 35688,\n  \"dissec\": 43879,\n  \"dissemin\": 40463,\n  \"dissent</w>\": 45154,\n  \"disser\": 25560,\n  \"dissertation</w>\": 29448,\n  \"dissi\": 25088,\n  \"dissol\": 27398,\n  \"dissuper</w>\": 33461,\n  \"dist\": 5479,\n  \"dist</w>\": 12116,\n  \"distance</w>\": 7964,\n  \"distances</w>\": 37078,\n  \"distant</w>\": 18949,\n  \"distill\": 41586,\n  \"distilled</w>\": 49179,\n  \"distillery</w>\": 22200,\n  \"distin\": 11892,\n  \"distinct</w>\": 25056,\n  \"distinction</w>\": 28183,\n  \"distinctive</w>\": 25486,\n  \"distingui\": 15053,\n  \"distinguish</w>\": 45418,\n  \"distinguished</w>\": 16513,\n  \"distor\": 23781,\n  \"distortion</w>\": 43690,\n  \"distr\": 11885,\n  \"distract</w>\": 39309,\n  \"distracted</w>\": 24049,\n  \"distraction</w>\": 32039,\n  \"distress</w>\": 26866,\n  \"distressed</w>\": 37515,\n  \"distri\": 5987,\n  \"distribu\": 6138,\n  \"distribute</w>\": 32313,\n  \"distributed</w>\": 16419,\n  \"distributing</w>\": 35216,\n  \"distribution</w>\": 10484,\n  \"distributor</w>\": 28354,\n  \"distributors</w>\": 44240,\n  \"distric\": 3208,\n  \"district\": 46683,\n  \"district</w>\": 3506,\n  \"districts</w>\": 17565,\n  \"distur\": 11732,\n  \"disturb\": 33018,\n  \"disturb</w>\": 39449,\n  \"disturbance</w>\": 42416,\n  \"disturbed</w>\": 29967,\n  \"disturbing</w>\": 21476,\n  \"disupdates</w>\": 45667,\n  \"dit\": 5752,\n  \"dit</w>\": 2524,\n  \"dita</w>\": 47965,\n  \"ditch\": 43715,\n  \"ditch</w>\": 19291,\n  \"dited</w>\": 40392,\n  \"diti\": 2363,\n  \"dition\": 16452,\n  \"dition</w>\": 3015,\n  \"ditional</w>\": 4322,\n  \"ditions</w>\": 4503,\n  \"dito</w>\": 43705,\n  \"dits</w>\": 49374,\n  \"dity</w>\": 16436,\n  \"dium</w>\": 2903,\n  \"div\": 5293,\n  \"div</w>\": 14869,\n  \"diva</w>\": 13605,\n  \"divas</w>\": 23534,\n  \"dive\": 26042,\n  \"dive</w>\": 9058,\n  \"diver\": 13119,\n  \"diver</w>\": 22094,\n  \"divergence</w>\": 48735,\n  \"divergent</w>\": 36132,\n  \"divers\": 30241,\n  \"divers</w>\": 27038,\n  \"diverse</w>\": 11464,\n  \"diversi\": 24475,\n  \"diversion</w>\": 38457,\n  \"diversity\": 35634,\n  \"diversity</w>\": 6257,\n  \"diverted</w>\": 41049,\n  \"dives</w>\": 13893,\n  \"divi\": 8375,\n  \"divid\": 31337,\n  \"divide</w>\": 18842,\n  \"divided</w>\": 18689,\n  \"dividend</w>\": 32067,\n  \"dividends</w>\": 45146,\n  \"dividing</w>\": 45605,\n  \"divin\": 21838,\n  \"divine\": 46919,\n  \"divine</w>\": 10976,\n  \"diving</w>\": 9886,\n  \"divinity</w>\": 39754,\n  \"divisi\": 39196,\n  \"division</w>\": 5378,\n  \"divisional</w>\": 40912,\n  \"divisions</w>\": 33715,\n  \"divor\": 13543,\n  \"divorce</w>\": 17060,\n  \"divorced</w>\": 39437,\n  \"divya</w>\": 47767,\n  \"diwali</w>\": 18218,\n  \"dix\": 45838,\n  \"dix</w>\": 27620,\n  \"dixie</w>\": 24484,\n  \"dixit</w>\": 28279,\n  \"dixon</w>\": 16086,\n  \"diy\": 28472,\n  \"diy</w>\": 7845,\n  \"diya</w>\": 36459,\n  \"diz</w>\": 32740,\n  \"dized</w>\": 36232,\n  \"dizz\": 40239,\n  \"dizzy</w>\": 35464,\n  \"dj\": 3761,\n  \"dj</w>\": 3723,\n  \"djan\": 35338,\n  \"django</w>\": 46498,\n  \"dji\": 35284,\n  \"dji</w>\": 28379,\n  \"djing</w>\": 36113,\n  \"djo\": 19432,\n  \"djoker\": 42721,\n  \"djokernole</w>\": 42830,\n  \"djokovic</w>\": 27944,\n  \"djs</w>\": 18117,\n  \"dk\": 20702,\n  \"dk</w>\": 16196,\n  \"dl\": 12558,\n  \"dl</w>\": 9373,\n  \"dlc</w>\": 19079,\n  \"dle\": 11057,\n  \"dle</w>\": 3287,\n  \"dled</w>\": 23494,\n  \"dler</w>\": 40279,\n  \"dles</w>\": 7890,\n  \"dless</w>\": 14997,\n  \"dley</w>\": 12808,\n  \"dling</w>\": 18221,\n  \"dly</w>\": 3069,\n  \"dm\": 19070,\n  \"dm</w>\": 4667,\n  \"dma</w>\": 42903,\n  \"dman</w>\": 18826,\n  \"dmc</w>\": 28991,\n  \"dmit\": 31607,\n  \"dmitry</w>\": 48326,\n  \"dms</w>\": 19955,\n  \"dmv</w>\": 27508,\n  \"dmx</w>\": 45255,\n  \"dn\": 11552,\n  \"dn</w>\": 7459,\n  \"dna</w>\": 8790,\n  \"dnb</w>\": 35422,\n  \"dnc</w>\": 20237,\n  \"dnd</w>\": 11678,\n  \"dnr</w>\": 37051,\n  \"dns</w>\": 39245,\n  \"dnt</w>\": 26795,\n  \"do\": 639,\n  \"do</w>\": 818,\n  \"doa</w>\": 48332,\n  \"dob\": 29640,\n  \"doba</w>\": 35605,\n  \"dobbs</w>\": 43006,\n  \"dobson</w>\": 46888,\n  \"doc\": 3009,\n  \"doc</w>\": 7251,\n  \"doch</w>\": 25101,\n  \"dock\": 17311,\n  \"dock</w>\": 8997,\n  \"docked</w>\": 46784,\n  \"docker</w>\": 31152,\n  \"docking</w>\": 40845,\n  \"docks</w>\": 24091,\n  \"docs</w>\": 15157,\n  \"doctor\": 7872,\n  \"doctor</w>\": 5547,\n  \"doctoral</w>\": 23649,\n  \"doctorate</w>\": 39134,\n  \"doctors</w>\": 9705,\n  \"doctorwho</w>\": 12996,\n  \"doctr\": 28497,\n  \"doctrine</w>\": 35612,\n  \"docu\": 4433,\n  \"document\": 29293,\n  \"document</w>\": 15121,\n  \"documentaries</w>\": 44209,\n  \"documentary</w>\": 7881,\n  \"documentation</w>\": 31560,\n  \"documented</w>\": 22310,\n  \"documenting</w>\": 37876,\n  \"documents</w>\": 14105,\n  \"dod\": 13847,\n  \"dod</w>\": 30187,\n  \"dodd</w>\": 36748,\n  \"dodge\": 31263,\n  \"dodge</w>\": 12093,\n  \"dodgeball</w>\": 43244,\n  \"dodger</w>\": 31641,\n  \"dodgers</w>\": 12422,\n  \"dodgy</w>\": 37727,\n  \"doe</w>\": 13296,\n  \"does\": 2397,\n  \"does</w>\": 1897,\n  \"doesn</w>\": 2503,\n  \"doesnt</w>\": 17937,\n  \"dof\": 8277,\n  \"doff</w>\": 20193,\n  \"dofficial</w>\": 42516,\n  \"dog\": 4326,\n  \"dog</w>\": 1929,\n  \"dogcelebration</w>\": 41819,\n  \"dogday</w>\": 27475,\n  \"doge</w>\": 42187,\n  \"dogg</w>\": 20749,\n  \"doggie</w>\": 32237,\n  \"doggo</w>\": 42155,\n  \"doggy</w>\": 26359,\n  \"doglo\": 40733,\n  \"dogre\": 40030,\n  \"dogrescue</w>\": 44158,\n  \"dogs\": 42182,\n  \"dogs</w>\": 3255,\n  \"dogsoftwitter</w>\": 19415,\n  \"doh</w>\": 23581,\n  \"doha</w>\": 20908,\n  \"doherty</w>\": 31774,\n  \"doi</w>\": 36361,\n  \"doin</w>\": 15412,\n  \"doing\": 37408,\n  \"doing</w>\": 1960,\n  \"doit\": 32272,\n  \"doit</w>\": 28109,\n  \"doj</w>\": 25700,\n  \"dojo</w>\": 35901,\n  \"dok\": 40547,\n  \"dok</w>\": 41034,\n  \"doka</w>\": 46528,\n  \"dol\": 2287,\n  \"dol</w>\": 19170,\n  \"dola</w>\": 38005,\n  \"dolan</w>\": 27200,\n  \"dolby</w>\": 42414,\n  \"dolce\": 30033,\n  \"dolce</w>\": 30661,\n  \"dole</w>\": 41040,\n  \"doll\": 27031,\n  \"doll</w>\": 9286,\n  \"dollar\": 35092,\n  \"dollar</w>\": 7474,\n  \"dollars</w>\": 10669,\n  \"dolls</w>\": 15090,\n  \"dolly\": 43281,\n  \"dolly</w>\": 23821,\n  \"dolom\": 37137,\n  \"dolores</w>\": 40741,\n  \"dolph\": 8900,\n  \"dolph</w>\": 22257,\n  \"dolphin\": 42963,\n  \"dolphin</w>\": 16464,\n  \"dolphins</w>\": 14002,\n  \"dom\": 2164,\n  \"dom</w>\": 1919,\n  \"domain</w>\": 15492,\n  \"domaine</w>\": 48744,\n  \"domains</w>\": 36358,\n  \"dome\": 8515,\n  \"dome</w>\": 9827,\n  \"domen\": 37584,\n  \"domest\": 21936,\n  \"domestic\": 28189,\n  \"domestic</w>\": 9043,\n  \"domin\": 4361,\n  \"dominance</w>\": 30546,\n  \"dominant</w>\": 20565,\n  \"dominate</w>\": 21431,\n  \"dominated</w>\": 23048,\n  \"dominates</w>\": 34043,\n  \"dominating</w>\": 29303,\n  \"domination</w>\": 30919,\n  \"domingo</w>\": 24882,\n  \"dominic\": 39007,\n  \"dominic</w>\": 19095,\n  \"dominican</w>\": 22934,\n  \"dominion</w>\": 27155,\n  \"domino</w>\": 30752,\n  \"dominos</w>\": 39770,\n  \"domo</w>\": 44293,\n  \"doms</w>\": 30126,\n  \"don\": 1067,\n  \"don</w>\": 847,\n  \"dona</w>\": 26789,\n  \"donal\": 42375,\n  \"donald\": 5990,\n  \"donald</w>\": 4335,\n  \"donaldson</w>\": 37783,\n  \"donaldtrump</w>\": 6652,\n  \"donat\": 36384,\n  \"donate</w>\": 6429,\n  \"donated</w>\": 8705,\n  \"donates</w>\": 26960,\n  \"donating</w>\": 12621,\n  \"donation</w>\": 7924,\n  \"donations</w>\": 9928,\n  \"doncaster\": 38008,\n  \"doncaster</w>\": 25352,\n  \"doncasterisgreat</w>\": 47333,\n  \"done\": 5136,\n  \"done</w>\": 1700,\n  \"donegal</w>\": 24172,\n  \"donesia</w>\": 41281,\n  \"donet\": 33724,\n  \"donetsk</w>\": 33999,\n  \"dong\": 26242,\n  \"dong</w>\": 31478,\n  \"dongha\": 28365,\n  \"donghae</w>\": 28945,\n  \"donia</w>\": 24014,\n  \"donkey</w>\": 21415,\n  \"donkeys</w>\": 44644,\n  \"donna</w>\": 9158,\n  \"donne\": 30897,\n  \"donnein\": 38308,\n  \"donneinarte</w>\": 40193,\n  \"donnell</w>\": 35118,\n  \"donnelly</w>\": 39070,\n  \"donnie\": 47058,\n  \"donnie</w>\": 30609,\n  \"donny\": 37291,\n  \"donny</w>\": 32887,\n  \"dono\": 14840,\n  \"donor</w>\": 18013,\n  \"donors</w>\": 17887,\n  \"donovan</w>\": 21499,\n  \"dons</w>\": 22127,\n  \"dont\": 8094,\n  \"dont</w>\": 4632,\n  \"donut</w>\": 18471,\n  \"donuts</w>\": 13970,\n  \"doo\": 4543,\n  \"doo</w>\": 11643,\n  \"doodle</w>\": 9388,\n  \"doodled</w>\": 41030,\n  \"doodles</w>\": 22156,\n  \"doodling</w>\": 37548,\n  \"dooley</w>\": 47609,\n  \"doom\": 23263,\n  \"doom</w>\": 14344,\n  \"doomed</w>\": 33251,\n  \"doomsday</w>\": 41791,\n  \"doon</w>\": 36612,\n  \"doop</w>\": 33886,\n  \"door\": 7188,\n  \"door</w>\": 2489,\n  \"doors</w>\": 4228,\n  \"doorstep</w>\": 19533,\n  \"doorway</w>\": 46575,\n  \"dop\": 42381,\n  \"dop</w>\": 31722,\n  \"dope\": 42587,\n  \"dope</w>\": 10094,\n  \"doping</w>\": 30285,\n  \"dopp\": 21774,\n  \"doppelg\": 45216,\n  \"doppler</w>\": 42540,\n  \"dor\": 2766,\n  \"dor</w>\": 8695,\n  \"dora</w>\": 18104,\n  \"dorado</w>\": 32350,\n  \"dorchester</w>\": 32656,\n  \"dore</w>\": 39423,\n  \"dores</w>\": 34323,\n  \"dorf</w>\": 17296,\n  \"dori</w>\": 49270,\n  \"doria</w>\": 43186,\n  \"dorian</w>\": 44016,\n  \"doris</w>\": 24285,\n  \"dork</w>\": 36206,\n  \"dorm</w>\": 24263,\n  \"doro\": 15498,\n  \"doro</w>\": 37389,\n  \"dorothy</w>\": 20805,\n  \"dors</w>\": 31240,\n  \"dorset\": 42109,\n  \"dorset</w>\": 16047,\n  \"dorsey</w>\": 41607,\n  \"dortmund</w>\": 24290,\n  \"dory</w>\": 36135,\n  \"dos\": 44258,\n  \"dos</w>\": 5474,\n  \"dose</w>\": 11497,\n  \"doses</w>\": 37873,\n  \"dossier</w>\": 46042,\n  \"dost</w>\": 44222,\n  \"dot\": 7473,\n  \"dot</w>\": 7004,\n  \"dota</w>\": 23085,\n  \"dotcom</w>\": 12443,\n  \"dote</w>\": 31202,\n  \"dothis</w>\": 47864,\n  \"dotnet</w>\": 43124,\n  \"dotorg</w>\": 46587,\n  \"dots</w>\": 19019,\n  \"dotted</w>\": 47950,\n  \"dou\": 1756,\n  \"dou</w>\": 23608,\n  \"doub\": 19631,\n  \"double\": 13013,\n  \"double</w>\": 3200,\n  \"doubled</w>\": 24948,\n  \"doubleheader</w>\": 34668,\n  \"doubles</w>\": 12539,\n  \"doubling</w>\": 36850,\n  \"doubt\": 37071,\n  \"doubt</w>\": 8671,\n  \"doubts</w>\": 30894,\n  \"douche</w>\": 44292,\n  \"doug\": 20271,\n  \"doug</w>\": 10758,\n  \"dough\": 15785,\n  \"dough</w>\": 14983,\n  \"doughnut</w>\": 32555,\n  \"doughnuts</w>\": 31124,\n  \"dougie</w>\": 46317,\n  \"dougla\": 9140,\n  \"douglas</w>\": 10065,\n  \"douglass</w>\": 45692,\n  \"doun</w>\": 44785,\n  \"dov</w>\": 38856,\n  \"dova</w>\": 26551,\n  \"dove\": 27511,\n  \"dove</w>\": 18281,\n  \"dover\": 43019,\n  \"dover</w>\": 14683,\n  \"doves</w>\": 47067,\n  \"dow\": 8022,\n  \"dow</w>\": 10688,\n  \"dowell</w>\": 27344,\n  \"down\": 1833,\n  \"down</w>\": 1136,\n  \"downe</w>\": 46501,\n  \"downed</w>\": 35814,\n  \"downer</w>\": 42522,\n  \"downers</w>\": 43739,\n  \"downey</w>\": 29429,\n  \"downfall</w>\": 48702,\n  \"downhill</w>\": 27387,\n  \"downing</w>\": 28140,\n  \"download\": 35076,\n  \"download</w>\": 3794,\n  \"downloadable</w>\": 49105,\n  \"downloaded</w>\": 22961,\n  \"downloading</w>\": 30519,\n  \"downloads</w>\": 26481,\n  \"downpour</w>\": 39034,\n  \"downpours</w>\": 40160,\n  \"downs</w>\": 10706,\n  \"downside</w>\": 41937,\n  \"downstairs</w>\": 28174,\n  \"downstream</w>\": 43822,\n  \"downtime</w>\": 41964,\n  \"downton\": 45023,\n  \"downton</w>\": 42668,\n  \"downtown\": 18230,\n  \"downtown</w>\": 5061,\n  \"downward</w>\": 37430,\n  \"dowski</w>\": 43556,\n  \"dox\": 44786,\n  \"dox</w>\": 14510,\n  \"doyle</w>\": 17728,\n  \"doyou\": 27256,\n  \"doz</w>\": 31106,\n  \"dozen</w>\": 16401,\n  \"dozens</w>\": 17883,\n  \"dp\": 23820,\n  \"dp</w>\": 6465,\n  \"dprint</w>\": 46644,\n  \"dprinting</w>\": 16194,\n  \"dprk</w>\": 47920,\n  \"dps</w>\": 34288,\n  \"dq</w>\": 28741,\n  \"dr\": 1084,\n  \"dr</w>\": 1701,\n  \"dra\": 1114,\n  \"dra</w>\": 7402,\n  \"drac\": 20168,\n  \"dracing</w>\": 41253,\n  \"dracula</w>\": 25405,\n  \"draf\": 37426,\n  \"draft\": 30624,\n  \"draft</w>\": 5198,\n  \"drafted</w>\": 19129,\n  \"drafting</w>\": 33528,\n  \"drafts</w>\": 29194,\n  \"drag\": 8452,\n  \"drag</w>\": 12463,\n  \"dragged</w>\": 27884,\n  \"dragging</w>\": 37069,\n  \"dragon\": 9187,\n  \"dragon</w>\": 5471,\n  \"dragonball\": 40959,\n  \"dragoncon</w>\": 47802,\n  \"dragonfly</w>\": 32824,\n  \"dragons</w>\": 10203,\n  \"dragrace</w>\": 40762,\n  \"drags</w>\": 45368,\n  \"drain\": 23347,\n  \"drain</w>\": 19467,\n  \"drainage</w>\": 25953,\n  \"drained</w>\": 44630,\n  \"drains</w>\": 43638,\n  \"drainthe\": 47337,\n  \"drake\": 32504,\n  \"drake</w>\": 8958,\n  \"dral</w>\": 7503,\n  \"dram\": 6937,\n  \"dram</w>\": 32170,\n  \"drama</w>\": 5055,\n  \"dramas</w>\": 33467,\n  \"dramati\": 43512,\n  \"dramatic</w>\": 11240,\n  \"dramatically</w>\": 24495,\n  \"drank</w>\": 21712,\n  \"draped</w>\": 49113,\n  \"drastic</w>\": 43159,\n  \"drastically</w>\": 35478,\n  \"drau\": 18621,\n  \"draw\": 17675,\n  \"draw</w>\": 4001,\n  \"drawer</w>\": 23219,\n  \"drawers</w>\": 38975,\n  \"drawing\": 36996,\n  \"drawing</w>\": 3610,\n  \"drawings</w>\": 13397,\n  \"drawn</w>\": 8893,\n  \"draws</w>\": 12043,\n  \"dray\": 25562,\n  \"drayton</w>\": 49044,\n  \"drc</w>\": 21434,\n  \"dre\": 960,\n  \"dre</w>\": 14584,\n  \"dread\": 17412,\n  \"dread</w>\": 31403,\n  \"dreaded</w>\": 47227,\n  \"dreadful</w>\": 35846,\n  \"dreality</w>\": 48367,\n  \"dream\": 4595,\n  \"dream</w>\": 2984,\n  \"dreambig</w>\": 46495,\n  \"dreamcast</w>\": 47226,\n  \"dreamed</w>\": 27984,\n  \"dreamer</w>\": 25692,\n  \"dreamers</w>\": 27194,\n  \"dreaming</w>\": 11662,\n  \"dreamliner</w>\": 49143,\n  \"dreams</w>\": 4405,\n  \"dreamt</w>\": 43743,\n  \"dreamteam</w>\": 40090,\n  \"dreamy</w>\": 23517,\n  \"dred</w>\": 10903,\n  \"dredge</w>\": 48783,\n  \"dren\": 29068,\n  \"dren</w>\": 47309,\n  \"drenched</w>\": 46378,\n  \"dres\": 48852,\n  \"dres</w>\": 44697,\n  \"dresden</w>\": 34836,\n  \"dress\": 12622,\n  \"dress</w>\": 2595,\n  \"dressage</w>\": 36144,\n  \"dressed</w>\": 6559,\n  \"dresser</w>\": 26346,\n  \"dresses</w>\": 8184,\n  \"dressing</w>\": 6348,\n  \"drew\": 18792,\n  \"drew</w>\": 5281,\n  \"drex\": 33985,\n  \"drey\": 48271,\n  \"dri\": 1203,\n  \"dri</w>\": 28833,\n  \"drian</w>\": 36870,\n  \"dribb\": 42153,\n  \"dric</w>\": 23448,\n  \"dridge</w>\": 22956,\n  \"drie</w>\": 40170,\n  \"dried</w>\": 16037,\n  \"drier</w>\": 39877,\n  \"dries</w>\": 33857,\n  \"drif\": 33585,\n  \"drift</w>\": 18194,\n  \"drifting</w>\": 30276,\n  \"drill</w>\": 11626,\n  \"drilled</w>\": 46338,\n  \"drilling</w>\": 18634,\n  \"drills</w>\": 24378,\n  \"drin\": 3375,\n  \"drin</w>\": 47133,\n  \"drink\": 14131,\n  \"drink</w>\": 3979,\n  \"drinking</w>\": 5778,\n  \"drinklocal</w>\": 45998,\n  \"drinks</w>\": 6732,\n  \"drip</w>\": 24050,\n  \"dripping</w>\": 38787,\n  \"dris</w>\": 35804,\n  \"drive\": 11402,\n  \"drive</w>\": 2620,\n  \"driven</w>\": 9314,\n  \"driver\": 27563,\n  \"driver</w>\": 4383,\n  \"driverless</w>\": 46769,\n  \"drivers</w>\": 7384,\n  \"drives</w>\": 11441,\n  \"driveway</w>\": 26273,\n  \"driving\": 37800,\n  \"driving</w>\": 4161,\n  \"drizzle</w>\": 28240,\n  \"drm</w>\": 39674,\n  \"dro\": 1494,\n  \"dro</w>\": 12442,\n  \"drogba</w>\": 49199,\n  \"droid</w>\": 38016,\n  \"drome</w>\": 9157,\n  \"dron\": 43898,\n  \"dron</w>\": 23360,\n  \"drone\": 33557,\n  \"drone</w>\": 9397,\n  \"drones</w>\": 14006,\n  \"droo\": 30715,\n  \"drool</w>\": 41554,\n  \"drooling</w>\": 44360,\n  \"drop\": 16407,\n  \"drop</w>\": 3387,\n  \"dropbox</w>\": 47216,\n  \"dropped</w>\": 6792,\n  \"dropping</w>\": 8339,\n  \"drops</w>\": 6437,\n  \"dros</w>\": 47033,\n  \"drou\": 38558,\n  \"drought</w>\": 13935,\n  \"drove</w>\": 13753,\n  \"drow\": 21159,\n  \"drown</w>\": 28571,\n  \"drowned</w>\": 34005,\n  \"drowning</w>\": 24618,\n  \"drs</w>\": 21257,\n  \"dru\": 2275,\n  \"dru</w>\": 49048,\n  \"drug\": 20601,\n  \"drug</w>\": 5600,\n  \"drugs</w>\": 8021,\n  \"druid</w>\": 40297,\n  \"drum\": 13353,\n  \"drum</w>\": 8698,\n  \"drummer</w>\": 13618,\n  \"drummers</w>\": 46191,\n  \"drumming</w>\": 35480,\n  \"drummond</w>\": 42213,\n  \"drums</w>\": 11690,\n  \"drun\": 15488,\n  \"drunk\": 37398,\n  \"drunk</w>\": 8232,\n  \"drunken</w>\": 28196,\n  \"drupal</w>\": 46481,\n  \"drush</w>\": 43009,\n  \"drwho</w>\": 48342,\n  \"dry\": 13544,\n  \"dry</w>\": 4501,\n  \"dryer</w>\": 24425,\n  \"drying</w>\": 23203,\n  \"ds\": 3361,\n  \"ds</w>\": 646,\n  \"dsa</w>\": 47607,\n  \"dsb\": 47168,\n  \"dsb</w>\": 14257,\n  \"dsburg</w>\": 47237,\n  \"dsc</w>\": 37240,\n  \"dsd</w>\": 45383,\n  \"dsley</w>\": 40740,\n  \"dslr</w>\": 33740,\n  \"dsm</w>\": 39502,\n  \"dson</w>\": 40310,\n  \"dsp</w>\": 45291,\n  \"dss</w>\": 41580,\n  \"dstv</w>\": 35027,\n  \"dt\": 13104,\n  \"dt</w>\": 7427,\n  \"dthe\": 13863,\n  \"dtla</w>\": 31885,\n  \"dtm</w>\": 42407,\n  \"dts</w>\": 46233,\n  \"du\": 691,\n  \"du</w>\": 3686,\n  \"dua</w>\": 25244,\n  \"dual\": 39739,\n  \"dual</w>\": 5347,\n  \"duane</w>\": 38946,\n  \"dub\": 14526,\n  \"dub</w>\": 13144,\n  \"duba\": 5485,\n  \"dubai\": 32599,\n  \"dubai</w>\": 5985,\n  \"dubbed</w>\": 27740,\n  \"dublin\": 20707,\n  \"dublin</w>\": 6145,\n  \"dubnation</w>\": 47329,\n  \"dubois</w>\": 48046,\n  \"dubrov\": 46709,\n  \"dubrovnik</w>\": 48724,\n  \"dubs</w>\": 27013,\n  \"dubstep</w>\": 38303,\n  \"dubu\": 43257,\n  \"duc\": 979,\n  \"duc</w>\": 36446,\n  \"ducati</w>\": 28570,\n  \"ducation</w>\": 17197,\n  \"duce</w>\": 3660,\n  \"duchess</w>\": 21713,\n  \"duck\": 12708,\n  \"duck</w>\": 6910,\n  \"ducks</w>\": 11202,\n  \"duct</w>\": 26829,\n  \"dude\": 48087,\n  \"dude</w>\": 5710,\n  \"dudes</w>\": 14449,\n  \"dudley</w>\": 27324,\n  \"due</w>\": 2887,\n  \"duel</w>\": 27143,\n  \"dues</w>\": 37646,\n  \"duet</w>\": 25457,\n  \"duf\": 38713,\n  \"duff\": 38071,\n  \"duff</w>\": 21934,\n  \"duffy</w>\": 23599,\n  \"dug\": 22743,\n  \"dug</w>\": 21000,\n  \"dugg\": 40523,\n  \"duggan</w>\": 46169,\n  \"dugout</w>\": 36831,\n  \"duh</w>\": 26716,\n  \"dui</w>\": 29693,\n  \"duk</w>\": 14160,\n  \"duke\": 18402,\n  \"duke</w>\": 7732,\n  \"dukes</w>\": 27914,\n  \"dul\": 6738,\n  \"dulce</w>\": 44872,\n  \"dulil\": 32565,\n  \"dulkar</w>\": 47980,\n  \"dull</w>\": 19433,\n  \"dulu\": 28865,\n  \"duluth</w>\": 32109,\n  \"dulwich</w>\": 47343,\n  \"dum\": 13400,\n  \"dum</w>\": 11564,\n  \"dumb\": 15901,\n  \"dumb</w>\": 12464,\n  \"dumbass</w>\": 38980,\n  \"dummies</w>\": 40899,\n  \"dummy</w>\": 34246,\n  \"dump\": 12655,\n  \"dump</w>\": 17146,\n  \"dumped</w>\": 23768,\n  \"dumping</w>\": 31707,\n  \"dumplings</w>\": 35495,\n  \"dumps</w>\": 45804,\n  \"dumpster</w>\": 45467,\n  \"dun\": 2616,\n  \"dun</w>\": 18284,\n  \"dunbar</w>\": 41453,\n  \"duncan\": 31084,\n  \"duncan</w>\": 13502,\n  \"dundal\": 38185,\n  \"dundas</w>\": 39300,\n  \"dundee</w>\": 18619,\n  \"dune\": 32833,\n  \"dune</w>\": 28208,\n  \"dunedin</w>\": 40121,\n  \"dunes</w>\": 23526,\n  \"dung</w>\": 33712,\n  \"dungeon\": 28812,\n  \"dungeon</w>\": 22931,\n  \"dungeons</w>\": 42572,\n  \"dungeonsand\": 34970,\n  \"dungeonsanddragons</w>\": 35497,\n  \"dunham</w>\": 42501,\n  \"duni</w>\": 43454,\n  \"dunk</w>\": 17222,\n  \"dunkin\": 48022,\n  \"dunkin</w>\": 36415,\n  \"dunkirk</w>\": 46928,\n  \"dunks</w>\": 48977,\n  \"dunlop</w>\": 34753,\n  \"dunn</w>\": 19185,\n  \"dunne</w>\": 38538,\n  \"dunno</w>\": 24502,\n  \"duo</w>\": 8696,\n  \"dup\": 36805,\n  \"dup</w>\": 10445,\n  \"duper</w>\": 44850,\n  \"duplex</w>\": 41186,\n  \"duplic\": 28992,\n  \"dupont</w>\": 35994,\n  \"dur\": 4355,\n  \"dur</w>\": 23230,\n  \"dura\": 28173,\n  \"dura</w>\": 47382,\n  \"durability</w>\": 43671,\n  \"durable</w>\": 22285,\n  \"duran</w>\": 28185,\n  \"durango</w>\": 44443,\n  \"durant</w>\": 24861,\n  \"duras</w>\": 27518,\n  \"duration</w>\": 31663,\n  \"durban</w>\": 24474,\n  \"dure</w>\": 19108,\n  \"durga</w>\": 38456,\n  \"durham\": 26765,\n  \"durham</w>\": 14335,\n  \"during</w>\": 1590,\n  \"dus</w>\": 9931,\n  \"dusa</w>\": 28546,\n  \"dusk</w>\": 19708,\n  \"dust\": 29723,\n  \"dust</w>\": 8349,\n  \"dusted</w>\": 38274,\n  \"duster</w>\": 46280,\n  \"dustin\": 42423,\n  \"dustin</w>\": 21235,\n  \"dusting</w>\": 41756,\n  \"dusty</w>\": 22029,\n  \"dut\": 32625,\n  \"dutch\": 22277,\n  \"dutch</w>\": 7991,\n  \"duter\": 21624,\n  \"duterte</w>\": 22371,\n  \"duties</w>\": 19603,\n  \"dutt</w>\": 30081,\n  \"dutton</w>\": 42771,\n  \"duty</w>\": 6458,\n  \"duval</w>\": 42459,\n  \"duvet</w>\": 48006,\n  \"dux</w>\": 28562,\n  \"dv\": 4288,\n  \"dv</w>\": 26265,\n  \"dvd</w>\": 7170,\n  \"dvds</w>\": 36655,\n  \"dvn</w>\": 29811,\n  \"dvr</w>\": 29210,\n  \"dw\": 8455,\n  \"dw</w>\": 19997,\n  \"dwar\": 13487,\n  \"dwarf</w>\": 22643,\n  \"dwayne</w>\": 31395,\n  \"dwell\": 27549,\n  \"dwell</w>\": 18755,\n  \"dwelling</w>\": 37098,\n  \"dwight</w>\": 22473,\n  \"dwp</w>\": 46976,\n  \"dwts</w>\": 30220,\n  \"dwyer</w>\": 43878,\n  \"dx\": 22717,\n  \"dx</w>\": 15679,\n  \"dy\": 1444,\n  \"dy</w>\": 907,\n  \"dyce</w>\": 48325,\n  \"dye\": 37159,\n  \"dye</w>\": 15997,\n  \"dyed</w>\": 24906,\n  \"dyer</w>\": 29495,\n  \"dyes</w>\": 39874,\n  \"dying</w>\": 5115,\n  \"dyk</w>\": 12142,\n  \"dyke</w>\": 32632,\n  \"dylan\": 21004,\n  \"dylan</w>\": 9900,\n  \"dyn\": 44289,\n  \"dyn</w>\": 30669,\n  \"dynam\": 5735,\n  \"dynamic</w>\": 10057,\n  \"dynamics</w>\": 14329,\n  \"dynamite</w>\": 29003,\n  \"dynamo</w>\": 28281,\n  \"dynasty</w>\": 14593,\n  \"dyne</w>\": 42756,\n  \"dyou\": 11484,\n  \"dyour\": 22525,\n  \"dys\": 11022,\n  \"dys</w>\": 38384,\n  \"dysfunction</w>\": 36865,\n  \"dysfunctional</w>\": 40757,\n  \"dysle\": 33681,\n  \"dyslexia</w>\": 43199,\n  \"dyson</w>\": 34475,\n  \"dyssey</w>\": 17435,\n  \"dystop\": 28276,\n  \"dystopian</w>\": 38915,\n  \"dz\": 24421,\n  \"dz</w>\": 22913,\n  \"dÃ©\": 25466,\n  \"dÃ¼\": 46948,\n  \"dÃŃ\": 46988,\n  \"e\": 68,\n  \"e</w>\": 324,\n  \"ea\": 2150,\n  \"ea</w>\": 8100,\n  \"eable</w>\": 20693,\n  \"each\": 31442,\n  \"each</w>\": 2416,\n  \"eachother</w>\": 40792,\n  \"ead\": 42556,\n  \"ead</w>\": 45523,\n  \"eae</w>\": 27446,\n  \"eag\": 3743,\n  \"eager</w>\": 21551,\n  \"eagerly</w>\": 30094,\n  \"eagle\": 20207,\n  \"eagle</w>\": 7517,\n  \"eagles</w>\": 6920,\n  \"eal\": 48872,\n  \"ealing</w>\": 40484,\n  \"eames</w>\": 49072,\n  \"eamon\": 45954,\n  \"ean</w>\": 13327,\n  \"ear\": 1055,\n  \"ear</w>\": 8373,\n  \"earbuds</w>\": 47807,\n  \"eared</w>\": 9127,\n  \"earl\": 30573,\n  \"earl</w>\": 14235,\n  \"earle</w>\": 40292,\n  \"earlier</w>\": 4297,\n  \"earliest</w>\": 22097,\n  \"early\": 15840,\n  \"early</w>\": 2090,\n  \"earn\": 33977,\n  \"earn</w>\": 8465,\n  \"earned</w>\": 8898,\n  \"earnest</w>\": 45422,\n  \"earning</w>\": 14550,\n  \"earnings</w>\": 15912,\n  \"earns</w>\": 16760,\n  \"earp</w>\": 35296,\n  \"earphones</w>\": 44905,\n  \"earring</w>\": 28664,\n  \"earrings</w>\": 9136,\n  \"ears</w>\": 9861,\n  \"eart\": 7086,\n  \"earth\": 5184,\n  \"earth</w>\": 3475,\n  \"earthand\": 34229,\n  \"earthandclouds</w>\": 34480,\n  \"earthday</w>\": 19481,\n  \"earthquake</w>\": 10060,\n  \"earthquakes</w>\": 32895,\n  \"earthy</w>\": 47139,\n  \"earts</w>\": 38824,\n  \"eas\": 5740,\n  \"ease</w>\": 13574,\n  \"easier</w>\": 8817,\n  \"easiest</w>\": 26314,\n  \"easily</w>\": 8197,\n  \"easing</w>\": 44825,\n  \"easport\": 42251,\n  \"east\": 5022,\n  \"east</w>\": 2602,\n  \"eastbound</w>\": 28827,\n  \"eastbourne</w>\": 38455,\n  \"eastenders</w>\": 23545,\n  \"easter\": 14783,\n  \"easter</w>\": 4811,\n  \"eastern\": 34522,\n  \"eastern</w>\": 6311,\n  \"eastman</w>\": 48280,\n  \"easton</w>\": 29619,\n  \"eastside</w>\": 42650,\n  \"eastwood</w>\": 28270,\n  \"easy\": 18308,\n  \"easy</w>\": 3176,\n  \"eat\": 5418,\n  \"eat</w>\": 3384,\n  \"eaten</w>\": 16750,\n  \"eater</w>\": 24060,\n  \"eaters</w>\": 37645,\n  \"eatery</w>\": 46559,\n  \"eating</w>\": 4371,\n  \"eatlocal</w>\": 42868,\n  \"eaton</w>\": 28462,\n  \"eats</w>\": 13188,\n  \"eau</w>\": 17608,\n  \"eazy</w>\": 36536,\n  \"eb\": 12283,\n  \"eb</w>\": 8677,\n  \"eba</w>\": 40889,\n  \"ebay\": 34412,\n  \"ebay</w>\": 4099,\n  \"eber\": 34020,\n  \"ebo</w>\": 46635,\n  \"ebola</w>\": 15864,\n  \"ebon\": 22013,\n  \"ebony</w>\": 30651,\n  \"ebook</w>\": 13122,\n  \"ebooks</w>\": 25774,\n  \"ec\": 747,\n  \"ec</w>\": 10879,\n  \"eca</w>\": 18465,\n  \"ecar\": 34500,\n  \"ecb</w>\": 26205,\n  \"ecc</w>\": 33128,\n  \"eccc</w>\": 47401,\n  \"eccentric</w>\": 43228,\n  \"eccle\": 27494,\n  \"ece</w>\": 2163,\n  \"eces</w>\": 5905,\n  \"ecg</w>\": 45983,\n  \"ech\": 15797,\n  \"ech</w>\": 31147,\n  \"echel\": 41233,\n  \"echo\": 17366,\n  \"echo</w>\": 13989,\n  \"echoes</w>\": 32564,\n  \"eci\": 31936,\n  \"eck\": 25866,\n  \"eck</w>\": 15969,\n  \"ecker\": 39661,\n  \"ecker</w>\": 40890,\n  \"ecla\": 47806,\n  \"eclec\": 25114,\n  \"eclectic</w>\": 28382,\n  \"eclip\": 30841,\n  \"eclipse</w>\": 11505,\n  \"eclub</w>\": 38983,\n  \"eco\": 5106,\n  \"eco</w>\": 10077,\n  \"ecofriendly</w>\": 43412,\n  \"ecol\": 22706,\n  \"ecological</w>\": 25127,\n  \"ecology</w>\": 18578,\n  \"ecommerce</w>\": 15529,\n  \"econ\": 26755,\n  \"econ</w>\": 21158,\n  \"econom\": 2768,\n  \"economic\": 36649,\n  \"economic</w>\": 5259,\n  \"economical</w>\": 48782,\n  \"economically</w>\": 39406,\n  \"economics</w>\": 12625,\n  \"economies</w>\": 27136,\n  \"economist</w>\": 18836,\n  \"economists</w>\": 43701,\n  \"economy</w>\": 5644,\n  \"ecor\": 28962,\n  \"ecosystem</w>\": 15788,\n  \"ecosystems</w>\": 28725,\n  \"ecoun\": 27924,\n  \"ecr</w>\": 48572,\n  \"ecraft</w>\": 11439,\n  \"ecs</w>\": 23485,\n  \"ecstasy</w>\": 47286,\n  \"ecstatic</w>\": 36244,\n  \"ect</w>\": 25168,\n  \"ecu\": 13087,\n  \"ecu</w>\": 32919,\n  \"ecuador</w>\": 19813,\n  \"ecz\": 43530,\n  \"ed\": 843,\n  \"ed</w>\": 538,\n  \"eda</w>\": 10804,\n  \"edad</w>\": 44724,\n  \"eday\": 39258,\n  \"edc</w>\": 21245,\n  \"edchat</w>\": 14702,\n  \"edd</w>\": 35431,\n  \"eddi\": 42930,\n  \"eddie\": 22748,\n  \"eddie</w>\": 9517,\n  \"eddy</w>\": 25959,\n  \"ede\": 29632,\n  \"eded</w>\": 19555,\n  \"edel\": 20460,\n  \"edelman</w>\": 48139,\n  \"eden\": 23621,\n  \"eden</w>\": 13741,\n  \"eder</w>\": 16249,\n  \"edes</w>\": 36247,\n  \"edfringe</w>\": 27402,\n  \"edg\": 35955,\n  \"edgar\": 33543,\n  \"edgar</w>\": 17914,\n  \"edge\": 16914,\n  \"edge</w>\": 5461,\n  \"edged</w>\": 39188,\n  \"edges</w>\": 20938,\n  \"edgy</w>\": 35393,\n  \"edi\": 8750,\n  \"edi</w>\": 27148,\n  \"edible</w>\": 19795,\n  \"edic\": 25184,\n  \"edics</w>\": 30641,\n  \"edin\": 6524,\n  \"edinburgh\": 27574,\n  \"edinburgh</w>\": 8068,\n  \"eding</w>\": 5742,\n  \"edison</w>\": 25846,\n  \"edit\": 8239,\n  \"edit</w>\": 8013,\n  \"edited</w>\": 13945,\n  \"edith</w>\": 28597,\n  \"editing</w>\": 10178,\n  \"edition</w>\": 3062,\n  \"editions</w>\": 21664,\n  \"editor</w>\": 7661,\n  \"editorial</w>\": 12325,\n  \"editors</w>\": 19486,\n  \"edits</w>\": 24945,\n  \"edm\": 37843,\n  \"edm</w>\": 13539,\n  \"edmon\": 11275,\n  \"edmond</w>\": 41581,\n  \"edmonds</w>\": 46520,\n  \"edmonton\": 37311,\n  \"edmonton</w>\": 15058,\n  \"edmun\": 36561,\n  \"edmund</w>\": 27567,\n  \"edna</w>\": 39002,\n  \"edo\": 29145,\n  \"edo</w>\": 18096,\n  \"edon</w>\": 41467,\n  \"edor\": 30184,\n  \"edou\": 47678,\n  \"edp</w>\": 46066,\n  \"eds</w>\": 1941,\n  \"edsheeran</w>\": 30386,\n  \"edt</w>\": 15071,\n  \"edtech\": 41825,\n  \"edtech</w>\": 15262,\n  \"edu\": 11757,\n  \"edu</w>\": 11799,\n  \"eduardo</w>\": 30604,\n  \"educ\": 2200,\n  \"educate</w>\": 17563,\n  \"educated</w>\": 21447,\n  \"education\": 22358,\n  \"education</w>\": 2806,\n  \"educational</w>\": 10400,\n  \"educator</w>\": 19875,\n  \"educators</w>\": 15420,\n  \"edwar\": 27586,\n  \"edward\": 26184,\n  \"edward</w>\": 7450,\n  \"edwards</w>\": 12627,\n  \"edwin\": 48718,\n  \"edwin</w>\": 22471,\n  \"edy\": 17072,\n  \"edy</w>\": 4144,\n  \"ee\": 2644,\n  \"ee</w>\": 4708,\n  \"eed</w>\": 17513,\n  \"eee\": 24632,\n  \"eee</w>\": 9361,\n  \"eeee\": 11696,\n  \"eeee</w>\": 17570,\n  \"eeeee</w>\": 26938,\n  \"eeeeee</w>\": 41407,\n  \"eek</w>\": 46591,\n  \"eel</w>\": 27462,\n  \"eels</w>\": 44416,\n  \"eem</w>\": 27236,\n  \"een\": 47490,\n  \"een</w>\": 21230,\n  \"eer\": 35409,\n  \"eer</w>\": 31846,\n  \"eera</w>\": 36664,\n  \"eerie</w>\": 33846,\n  \"ees</w>\": 40308,\n  \"eet</w>\": 48935,\n  \"eez</w>\": 39033,\n  \"ef\": 1490,\n  \"ef</w>\": 1829,\n  \"efa</w>\": 16999,\n  \"eface</w>\": 48804,\n  \"efan\": 33556,\n  \"efc</w>\": 22065,\n  \"efcc</w>\": 46087,\n  \"efer</w>\": 26199,\n  \"eff\": 20548,\n  \"eff</w>\": 21715,\n  \"effe\": 2808,\n  \"effec\": 3943,\n  \"effect</w>\": 5436,\n  \"effective</w>\": 6837,\n  \"effectively</w>\": 17516,\n  \"effectiveness</w>\": 26847,\n  \"effects</w>\": 7331,\n  \"effic\": 36004,\n  \"efficacy</w>\": 39937,\n  \"effici\": 6670,\n  \"efficiency</w>\": 11823,\n  \"efficient</w>\": 11334,\n  \"efficiently</w>\": 32915,\n  \"effor\": 6356,\n  \"effort\": 40078,\n  \"effort</w>\": 6255,\n  \"effortless</w>\": 41639,\n  \"effortlessly</w>\": 42320,\n  \"efforts</w>\": 6847,\n  \"efish</w>\": 35813,\n  \"efl</w>\": 27172,\n  \"efron</w>\": 48111,\n  \"efs</w>\": 7389,\n  \"eg\": 8053,\n  \"eg</w>\": 14599,\n  \"ega</w>\": 41193,\n  \"egan</w>\": 42943,\n  \"eger\": 46704,\n  \"eger</w>\": 22767,\n  \"egg\": 13778,\n  \"egg</w>\": 5911,\n  \"eggplant</w>\": 34906,\n  \"eggs</w>\": 7099,\n  \"ego\": 34712,\n  \"ego</w>\": 14250,\n  \"egos</w>\": 43992,\n  \"egre\": 27044,\n  \"egret</w>\": 42002,\n  \"egy\": 5224,\n  \"egyp\": 10250,\n  \"egypt</w>\": 7267,\n  \"egyptian</w>\": 12428,\n  \"eh\": 9277,\n  \"eh</w>\": 9135,\n  \"eha</w>\": 48563,\n  \"ehealth</w>\": 48617,\n  \"ehr\": 45271,\n  \"ehs</w>\": 44648,\n  \"ei\": 4006,\n  \"ei</w>\": 18264,\n  \"eic\": 40251,\n  \"eid\": 28038,\n  \"eid</w>\": 13979,\n  \"eidmubarak</w>\": 46275,\n  \"eiffel</w>\": 29720,\n  \"eigh\": 13468,\n  \"eight</w>\": 7910,\n  \"eighteen</w>\": 49316,\n  \"eighth</w>\": 21237,\n  \"eighty</w>\": 47449,\n  \"eil\": 29457,\n  \"eileen</w>\": 31468,\n  \"ein\": 29944,\n  \"ein</w>\": 24524,\n  \"eindhoven</w>\": 47172,\n  \"eing</w>\": 7702,\n  \"einstein</w>\": 20587,\n  \"eira</w>\": 47708,\n  \"eis\": 13802,\n  \"eisen\": 25273,\n  \"eisenhower</w>\": 35562,\n  \"either</w>\": 6036,\n  \"ej\": 19887,\n  \"ej</w>\": 25009,\n  \"ejec\": 29771,\n  \"ek\": 4212,\n  \"ek</w>\": 2092,\n  \"el\": 544,\n  \"el</w>\": 832,\n  \"ela\": 11284,\n  \"ela</w>\": 3787,\n  \"elab</w>\": 38866,\n  \"elabor\": 26034,\n  \"elaborate</w>\": 33855,\n  \"elaine</w>\": 22523,\n  \"elan\": 17763,\n  \"elan</w>\": 18399,\n  \"eland\": 24930,\n  \"eland</w>\": 6275,\n  \"elas</w>\": 41078,\n  \"elast\": 27479,\n  \"elastic</w>\": 30282,\n  \"elba</w>\": 48598,\n  \"elbow</w>\": 21965,\n  \"eld</w>\": 5684,\n  \"elder\": 11791,\n  \"elder</w>\": 14416,\n  \"elderly</w>\": 15455,\n  \"elders</w>\": 28617,\n  \"eldest</w>\": 33503,\n  \"elding</w>\": 28223,\n  \"elds</w>\": 13466,\n  \"ele\": 2084,\n  \"ele</w>\": 9766,\n  \"eleague</w>\": 36577,\n  \"eleanor</w>\": 18604,\n  \"elearning</w>\": 29969,\n  \"elec\": 1564,\n  \"elec</w>\": 38768,\n  \"elect</w>\": 15336,\n  \"elected</w>\": 8828,\n  \"election\": 19312,\n  \"election</w>\": 4247,\n  \"electionday</w>\": 40540,\n  \"elections</w>\": 6949,\n  \"elector\": 16465,\n  \"electoral</w>\": 19544,\n  \"electr\": 3654,\n  \"electra</w>\": 48959,\n  \"electri\": 23927,\n  \"electric\": 19547,\n  \"electric</w>\": 5031,\n  \"electrical</w>\": 12176,\n  \"electrician</w>\": 46422,\n  \"electricity</w>\": 10950,\n  \"electrifying</w>\": 48843,\n  \"electro\": 11648,\n  \"electro</w>\": 23244,\n  \"electromagnetic</w>\": 46530,\n  \"electron</w>\": 33396,\n  \"electronic\": 33865,\n  \"electronic</w>\": 9273,\n  \"electronica</w>\": 43119,\n  \"electronics</w>\": 13081,\n  \"eled</w>\": 20357,\n  \"elee</w>\": 44112,\n  \"eleg\": 8075,\n  \"elegance</w>\": 19146,\n  \"elegant</w>\": 11124,\n  \"elek\": 34559,\n  \"elem</w>\": 25406,\n  \"element</w>\": 14909,\n  \"elementary</w>\": 8143,\n  \"elements</w>\": 10925,\n  \"elen\": 30654,\n  \"elen</w>\": 39164,\n  \"elena</w>\": 19421,\n  \"eleng\": 48180,\n  \"eleph\": 7554,\n  \"elephant</w>\": 10299,\n  \"elephants</w>\": 16871,\n  \"eler</w>\": 24646,\n  \"eless\": 15244,\n  \"eless</w>\": 30837,\n  \"elets</w>\": 19400,\n  \"elev\": 7921,\n  \"elevate</w>\": 26736,\n  \"elevated</w>\": 23967,\n  \"elevation</w>\": 23826,\n  \"elevator</w>\": 19021,\n  \"eleven\": 31617,\n  \"eleven</w>\": 17795,\n  \"elf\": 45961,\n  \"elf</w>\": 11924,\n  \"elfie</w>\": 39955,\n  \"elg\": 28790,\n  \"elgin</w>\": 31868,\n  \"eli\": 1018,\n  \"eli</w>\": 6292,\n  \"elia</w>\": 10956,\n  \"elian</w>\": 42508,\n  \"elias\": 47274,\n  \"elias</w>\": 29902,\n  \"elic\": 34743,\n  \"elic</w>\": 13492,\n  \"elie\": 38677,\n  \"elie</w>\": 26501,\n  \"elier</w>\": 14634,\n  \"elife\": 37429,\n  \"elife</w>\": 12719,\n  \"eligibility</w>\": 34937,\n  \"eligible</w>\": 16978,\n  \"elijah</w>\": 26065,\n  \"elike\": 48913,\n  \"elim\": 9296,\n  \"elimin\": 11386,\n  \"eliminate</w>\": 19655,\n  \"eliminated</w>\": 29075,\n  \"eliminating</w>\": 36619,\n  \"elimination</w>\": 24176,\n  \"elin\": 25353,\n  \"elin</w>\": 13458,\n  \"eline\": 46199,\n  \"eline</w>\": 7153,\n  \"eling</w>\": 9990,\n  \"elio</w>\": 47943,\n  \"elion</w>\": 30682,\n  \"elions</w>\": 44159,\n  \"eliot</w>\": 33326,\n  \"elis\": 23411,\n  \"elis</w>\": 48021,\n  \"elisa\": 25610,\n  \"elisa</w>\": 44051,\n  \"elisabeth</w>\": 33127,\n  \"elise</w>\": 27124,\n  \"elit\": 40882,\n  \"elite\": 32277,\n  \"elite</w>\": 6553,\n  \"elited\": 43943,\n  \"elitedangerous</w>\": 47138,\n  \"elites</w>\": 35975,\n  \"elius</w>\": 35623,\n  \"elive\": 49338,\n  \"elive</w>\": 23505,\n  \"elives</w>\": 49174,\n  \"elix\": 32926,\n  \"elixir</w>\": 42887,\n  \"eliz\": 42844,\n  \"eliza\": 6132,\n  \"eliza</w>\": 29992,\n  \"elizabeth\": 22397,\n  \"elizabeth</w>\": 7026,\n  \"elk\": 34013,\n  \"elk</w>\": 21896,\n  \"ell\": 826,\n  \"ell</w>\": 812,\n  \"ella\": 20692,\n  \"ella</w>\": 2957,\n  \"elland</w>\": 43326,\n  \"ellar</w>\": 38443,\n  \"ellas</w>\": 37053,\n  \"elle\": 12818,\n  \"elle</w>\": 4765,\n  \"elled</w>\": 13146,\n  \"ellen\": 14007,\n  \"ellen</w>\": 12312,\n  \"ellenshow</w>\": 34812,\n  \"eller\": 20927,\n  \"eller</w>\": 4465,\n  \"ellers</w>\": 19010,\n  \"elles</w>\": 24431,\n  \"elli\": 3367,\n  \"elli</w>\": 6673,\n  \"ellic\": 38905,\n  \"ellie</w>\": 16769,\n  \"ellier</w>\": 44054,\n  \"ellin</w>\": 40374,\n  \"elling</w>\": 2220,\n  \"ellington</w>\": 34477,\n  \"ellini</w>\": 43256,\n  \"elliot</w>\": 20761,\n  \"elliott\": 44456,\n  \"elliott</w>\": 13788,\n  \"ellip\": 44816,\n  \"ellis</w>\": 11553,\n  \"ellison</w>\": 32295,\n  \"ello</w>\": 2512,\n  \"ellor</w>\": 14594,\n  \"ells</w>\": 2433,\n  \"ellu\": 35560,\n  \"elly\": 8041,\n  \"elly</w>\": 20355,\n  \"elm\": 25199,\n  \"elm</w>\": 22082,\n  \"elman</w>\": 33622,\n  \"elmer</w>\": 45958,\n  \"elmo</w>\": 32150,\n  \"elo\": 6170,\n  \"elo</w>\": 13490,\n  \"elon\": 26381,\n  \"elon</w>\": 20406,\n  \"elondon</w>\": 47377,\n  \"elong\": 44363,\n  \"elonmusk</w>\": 37076,\n  \"elope</w>\": 23367,\n  \"eloqu\": 37795,\n  \"elos</w>\": 44733,\n  \"elot</w>\": 43490,\n  \"elove\": 43319,\n  \"elove</w>\": 19165,\n  \"elover</w>\": 21732,\n  \"elovers</w>\": 33946,\n  \"els\": 35958,\n  \"els</w>\": 1645,\n  \"elsa</w>\": 22050,\n  \"else\": 18857,\n  \"else</w>\": 3344,\n  \"elsewhere</w>\": 22906,\n  \"elson</w>\": 19624,\n  \"elt</w>\": 18692,\n  \"elton</w>\": 20758,\n  \"elu\": 14208,\n  \"elusive</w>\": 28903,\n  \"elves</w>\": 29111,\n  \"elvi\": 47008,\n  \"elvis\": 47359,\n  \"elvis</w>\": 14498,\n  \"elxn</w>\": 37726,\n  \"ely\": 12189,\n  \"ely</w>\": 1273,\n  \"elyn\": 29691,\n  \"elyn</w>\": 18126,\n  \"em\": 908,\n  \"em</w>\": 2270,\n  \"ema\": 7002,\n  \"ema</w>\": 11131,\n  \"emabiggest\": 23101,\n  \"emabiggestfans</w>\": 29587,\n  \"email\": 33537,\n  \"email</w>\": 4462,\n  \"emailed</w>\": 40470,\n  \"emailmarketing</w>\": 40188,\n  \"emails</w>\": 12871,\n  \"eman\": 24416,\n  \"eman</w>\": 36868,\n  \"emancip\": 42996,\n  \"emanuel</w>\": 35232,\n  \"emb\": 3692,\n  \"embar\": 8266,\n  \"embaras\": 48019,\n  \"embark</w>\": 33953,\n  \"embarra\": 11382,\n  \"embarrass\": 27183,\n  \"embarrassed</w>\": 28217,\n  \"embarrassing</w>\": 19653,\n  \"embarrassment</w>\": 41346,\n  \"embassy</w>\": 13598,\n  \"embe\": 46041,\n  \"embed\": 19703,\n  \"embedded</w>\": 22046,\n  \"embelli\": 32144,\n  \"embellished</w>\": 46992,\n  \"ember</w>\": 47049,\n  \"emblem</w>\": 21163,\n  \"embo\": 23065,\n  \"embr\": 35267,\n  \"embrac\": 16928,\n  \"embrace</w>\": 12118,\n  \"embraced</w>\": 35739,\n  \"embraces</w>\": 38404,\n  \"embracing</w>\": 22196,\n  \"embro\": 12550,\n  \"embroi\": 18667,\n  \"embroide\": 21530,\n  \"embroidered</w>\": 22381,\n  \"embroidery</w>\": 20823,\n  \"emc\": 20897,\n  \"emc</w>\": 31602,\n  \"emcee</w>\": 42038,\n  \"eme\": 22910,\n  \"eme</w>\": 21548,\n  \"emea</w>\": 40352,\n  \"emed</w>\": 11028,\n  \"emen</w>\": 22033,\n  \"ement\": 40841,\n  \"ement</w>\": 2057,\n  \"ements</w>\": 11058,\n  \"emer\": 3132,\n  \"emer</w>\": 25727,\n  \"emerald\": 46878,\n  \"emerald</w>\": 16980,\n  \"emerge</w>\": 22182,\n  \"emerged</w>\": 26425,\n  \"emergen\": 24096,\n  \"emergence</w>\": 39867,\n  \"emergencies</w>\": 35759,\n  \"emergency\": 44038,\n  \"emergency</w>\": 5897,\n  \"emerges</w>\": 30801,\n  \"emerging\": 38174,\n  \"emerging</w>\": 11113,\n  \"emeritus</w>\": 35333,\n  \"emerson</w>\": 24147,\n  \"emery</w>\": 32678,\n  \"emi\": 44327,\n  \"emi</w>\": 18525,\n  \"emil\": 26794,\n  \"emil</w>\": 40624,\n  \"emile</w>\": 43926,\n  \"emili\": 20709,\n  \"emilia</w>\": 34238,\n  \"emilio</w>\": 39722,\n  \"emily\": 14545,\n  \"emily</w>\": 7640,\n  \"emin\": 17227,\n  \"emin</w>\": 23995,\n  \"eminem</w>\": 22129,\n  \"eminent</w>\": 33779,\n  \"eming</w>\": 40398,\n  \"emir\": 13337,\n  \"emir</w>\": 47613,\n  \"emirates\": 47244,\n  \"emirates</w>\": 17867,\n  \"emission</w>\": 27761,\n  \"emissions</w>\": 14172,\n  \"emit</w>\": 49043,\n  \"emma\": 18177,\n  \"emma</w>\": 7445,\n  \"emmanuel\": 48045,\n  \"emmanuel</w>\": 20411,\n  \"emmett</w>\": 45779,\n  \"emmy\": 35625,\n  \"emmy</w>\": 17089,\n  \"emmys</w>\": 21875,\n  \"emo\": 3738,\n  \"emo</w>\": 19381,\n  \"emoji</w>\": 16327,\n  \"emojis</w>\": 27870,\n  \"emon</w>\": 34406,\n  \"emor\": 45034,\n  \"emory</w>\": 44274,\n  \"emotion</w>\": 17464,\n  \"emotional</w>\": 7357,\n  \"emotionally</w>\": 24088,\n  \"emotions</w>\": 12904,\n  \"emp\": 3831,\n  \"emp</w>\": 41004,\n  \"empathy</w>\": 22420,\n  \"emper\": 12522,\n  \"emperor</w>\": 13828,\n  \"empha\": 16237,\n  \"emphasi\": 47176,\n  \"emphasis</w>\": 29588,\n  \"empire\": 26212,\n  \"empire</w>\": 7614,\n  \"empires</w>\": 46510,\n  \"emplo\": 3409,\n  \"employ\": 37290,\n  \"employ</w>\": 39626,\n  \"employe\": 5037,\n  \"employed</w>\": 26567,\n  \"employee\": 36631,\n  \"employee</w>\": 9560,\n  \"employees</w>\": 7377,\n  \"employer</w>\": 21296,\n  \"employers</w>\": 17647,\n  \"employment</w>\": 10959,\n  \"empor\": 27386,\n  \"emporium</w>\": 48541,\n  \"empower\": 13612,\n  \"empower</w>\": 17230,\n  \"empowered</w>\": 29087,\n  \"empowering</w>\": 20086,\n  \"empowerment</w>\": 15747,\n  \"empowers</w>\": 46206,\n  \"empress</w>\": 26656,\n  \"empty\": 41203,\n  \"empty</w>\": 7893,\n  \"emra\": 39259,\n  \"ems</w>\": 2858,\n  \"emt</w>\": 46360,\n  \"emu\": 48149,\n  \"emu</w>\": 29296,\n  \"emul\": 23272,\n  \"emy\": 31076,\n  \"en\": 524,\n  \"en</w>\": 576,\n  \"ena</w>\": 3452,\n  \"enab\": 17308,\n  \"enable</w>\": 15642,\n  \"enabled</w>\": 23666,\n  \"enables</w>\": 23417,\n  \"enabling</w>\": 23590,\n  \"enam\": 41486,\n  \"enamel</w>\": 22746,\n  \"enary</w>\": 13132,\n  \"enas</w>\": 34536,\n  \"enation</w>\": 20860,\n  \"enberg</w>\": 15658,\n  \"enburg</w>\": 28430,\n  \"enc</w>\": 33169,\n  \"enca</w>\": 37774,\n  \"encan\": 30345,\n  \"encapsul\": 40874,\n  \"ence\": 6495,\n  \"ence</w>\": 954,\n  \"enced</w>\": 6549,\n  \"ences</w>\": 3777,\n  \"enchan\": 17290,\n  \"enchanted</w>\": 28258,\n  \"enchanting</w>\": 32531,\n  \"enchil\": 47396,\n  \"enci\": 32207,\n  \"encia</w>\": 30068,\n  \"encies</w>\": 18729,\n  \"encing</w>\": 10326,\n  \"enclosed</w>\": 43243,\n  \"enclosure</w>\": 37419,\n  \"encom\": 44026,\n  \"encore</w>\": 20549,\n  \"encoun\": 17309,\n  \"encounter</w>\": 13164,\n  \"encountered</w>\": 32492,\n  \"encounters</w>\": 25399,\n  \"encoura\": 6169,\n  \"encourage</w>\": 12090,\n  \"encouraged</w>\": 20299,\n  \"encouragement</w>\": 24959,\n  \"encourages</w>\": 23848,\n  \"encouraging</w>\": 15875,\n  \"encro\": 45822,\n  \"encry\": 28600,\n  \"encryp\": 42928,\n  \"encrypted</w>\": 48710,\n  \"encryption</w>\": 31423,\n  \"ency</w>\": 3484,\n  \"encyclo\": 32104,\n  \"encyclopedia</w>\": 38376,\n  \"end\": 945,\n  \"end</w>\": 806,\n  \"enda</w>\": 6735,\n  \"endale</w>\": 20290,\n  \"endange\": 13990,\n  \"endangered</w>\": 14931,\n  \"ende\": 11373,\n  \"ende</w>\": 40306,\n  \"endeav\": 18134,\n  \"endeavor</w>\": 40502,\n  \"endeavors</w>\": 44394,\n  \"endeavour</w>\": 38035,\n  \"ended</w>\": 2622,\n  \"endemic</w>\": 41241,\n  \"endent</w>\": 16265,\n  \"ender\": 48106,\n  \"ender</w>\": 12383,\n  \"enders</w>\": 7418,\n  \"endez</w>\": 43850,\n  \"endgame</w>\": 23042,\n  \"endi</w>\": 31359,\n  \"ending</w>\": 2695,\n  \"endings</w>\": 36516,\n  \"endish</w>\": 38841,\n  \"endless</w>\": 12688,\n  \"endlessly</w>\": 45145,\n  \"endment</w>\": 45894,\n  \"endo\": 13476,\n  \"endo</w>\": 15830,\n  \"endocr\": 36486,\n  \"endof\": 40786,\n  \"endome\": 46996,\n  \"endon</w>\": 48018,\n  \"endor\": 8092,\n  \"endorf</w>\": 37249,\n  \"endorse</w>\": 28819,\n  \"endorsed</w>\": 24307,\n  \"endorsement</w>\": 21205,\n  \"endorses</w>\": 34603,\n  \"endorsing</w>\": 46779,\n  \"endow\": 45895,\n  \"endra</w>\": 22321,\n  \"ends</w>\": 1339,\n  \"endthe\": 46256,\n  \"endu\": 26032,\n  \"endur\": 19557,\n  \"endurance</w>\": 21027,\n  \"endure</w>\": 32419,\n  \"enduring</w>\": 30851,\n  \"enduro</w>\": 47042,\n  \"ene\": 3297,\n  \"ene</w>\": 6049,\n  \"ened</w>\": 2494,\n  \"eneed\": 45137,\n  \"enegger</w>\": 33235,\n  \"enei</w>\": 48906,\n  \"enemies</w>\": 15824,\n  \"enemy</w>\": 10310,\n  \"enen</w>\": 45113,\n  \"ener\": 2244,\n  \"ener</w>\": 13600,\n  \"energ\": 39451,\n  \"energetic</w>\": 24197,\n  \"energi\": 23044,\n  \"energies</w>\": 42374,\n  \"energized</w>\": 48635,\n  \"energy\": 14974,\n  \"energy</w>\": 2650,\n  \"energye\": 32271,\n  \"energyefficiency</w>\": 40586,\n  \"eners</w>\": 48208,\n  \"enes</w>\": 42066,\n  \"eness</w>\": 11806,\n  \"enet</w>\": 46336,\n  \"enew\": 29672,\n  \"enews</w>\": 13442,\n  \"eney</w>\": 20706,\n  \"enez</w>\": 33110,\n  \"enf\": 38167,\n  \"enfield</w>\": 27808,\n  \"enfor\": 10592,\n  \"enforce</w>\": 40224,\n  \"enforced</w>\": 44597,\n  \"enforcement</w>\": 12460,\n  \"eng\": 1035,\n  \"eng</w>\": 6730,\n  \"enga</w>\": 22297,\n  \"engag\": 6793,\n  \"engage</w>\": 11089,\n  \"engaged</w>\": 11475,\n  \"engagement</w>\": 7281,\n  \"engaging</w>\": 13060,\n  \"enge\": 26279,\n  \"enge</w>\": 2742,\n  \"engel\": 38265,\n  \"engen</w>\": 48286,\n  \"enger</w>\": 6618,\n  \"engers</w>\": 7533,\n  \"engine\": 3355,\n  \"engine</w>\": 5857,\n  \"engineer\": 40151,\n  \"engineer</w>\": 8517,\n  \"engineered</w>\": 26580,\n  \"engineering</w>\": 5273,\n  \"engineers</w>\": 11494,\n  \"engines</w>\": 14487,\n  \"england\": 20904,\n  \"england</w>\": 3595,\n  \"english\": 15942,\n  \"english</w>\": 3469,\n  \"engra\": 17560,\n  \"engraved</w>\": 29421,\n  \"engraving</w>\": 33309,\n  \"engul\": 43655,\n  \"engv\": 28401,\n  \"enh\": 7449,\n  \"enhall</w>\": 48781,\n  \"enham</w>\": 24592,\n  \"enhan\": 26827,\n  \"enhance</w>\": 13993,\n  \"enhanced</w>\": 16070,\n  \"enhancement</w>\": 35601,\n  \"enhances</w>\": 38259,\n  \"enhancing</w>\": 25986,\n  \"eni\": 4395,\n  \"eni</w>\": 17538,\n  \"enic\": 46780,\n  \"enic</w>\": 28292,\n  \"enig\": 19754,\n  \"enig</w>\": 48730,\n  \"enight\": 32848,\n  \"enight</w>\": 20640,\n  \"enigma</w>\": 34998,\n  \"ening</w>\": 1133,\n  \"enium</w>\": 34380,\n  \"enix</w>\": 25720,\n  \"enjo\": 1498,\n  \"enjoy\": 12981,\n  \"enjoy</w>\": 2218,\n  \"enjoyable</w>\": 17444,\n  \"enjoyed</w>\": 5045,\n  \"enjoying</w>\": 3603,\n  \"enjoyment</w>\": 34905,\n  \"enjoys</w>\": 17024,\n  \"enka</w>\": 43942,\n  \"enko</w>\": 25312,\n  \"enlar\": 38136,\n  \"enligh\": 21364,\n  \"enlighten\": 28200,\n  \"enlightened</w>\": 44032,\n  \"enlightening</w>\": 44005,\n  \"enlightenment</w>\": 29255,\n  \"enlisted</w>\": 43555,\n  \"enly</w>\": 43023,\n  \"enn</w>\": 43563,\n  \"enna</w>\": 8095,\n  \"enne\": 21176,\n  \"enne</w>\": 11518,\n  \"ennedy</w>\": 46266,\n  \"ennes</w>\": 43613,\n  \"enni\": 7049,\n  \"ennial</w>\": 14220,\n  \"ennis\": 48923,\n  \"ennis</w>\": 26309,\n  \"eno\": 9429,\n  \"eno</w>\": 12843,\n  \"enoch</w>\": 47917,\n  \"enor\": 13955,\n  \"enormous</w>\": 20129,\n  \"enos</w>\": 44759,\n  \"enote</w>\": 44955,\n  \"enough</w>\": 2744,\n  \"enow</w>\": 26876,\n  \"enqu\": 28417,\n  \"enqui\": 22810,\n  \"enquire</w>\": 46658,\n  \"enquiries</w>\": 31901,\n  \"enquiry</w>\": 45141,\n  \"enri\": 18915,\n  \"enrich\": 20058,\n  \"enrich</w>\": 45504,\n  \"enriched</w>\": 45166,\n  \"enrichment</w>\": 32903,\n  \"enrique</w>\": 25489,\n  \"enrol\": 44279,\n  \"enroll\": 23739,\n  \"enroll</w>\": 30366,\n  \"enrolled</w>\": 36853,\n  \"enrollment</w>\": 24875,\n  \"enroute</w>\": 40548,\n  \"ens\": 41799,\n  \"ens</w>\": 1323,\n  \"ense\": 12657,\n  \"ense</w>\": 27658,\n  \"ensemble</w>\": 14843,\n  \"ensis</w>\": 32842,\n  \"ensla\": 37535,\n  \"enslaved</w>\": 48675,\n  \"ensure</w>\": 7492,\n  \"ensures</w>\": 29707,\n  \"ensuring</w>\": 19403,\n  \"ent\": 724,\n  \"ent</w>\": 621,\n  \"enta</w>\": 17681,\n  \"ental\": 32342,\n  \"ental</w>\": 6168,\n  \"entary</w>\": 9833,\n  \"entation</w>\": 37412,\n  \"ente\": 17433,\n  \"ente</w>\": 9935,\n  \"ented</w>\": 3800,\n  \"entennial</w>\": 43088,\n  \"enter\": 2963,\n  \"enter</w>\": 3819,\n  \"entered</w>\": 10679,\n  \"entering</w>\": 12580,\n  \"enterpri\": 7339,\n  \"enterprise</w>\": 9220,\n  \"enterprises</w>\": 21219,\n  \"enters</w>\": 15287,\n  \"entertain\": 5566,\n  \"entertain</w>\": 23510,\n  \"entertained</w>\": 30631,\n  \"entertainer</w>\": 28674,\n  \"entertaining</w>\": 13897,\n  \"entertainment</w>\": 6166,\n  \"entes</w>\": 24213,\n  \"enthr\": 36202,\n  \"enthusi\": 9631,\n  \"enthusiasm</w>\": 20525,\n  \"enthusiast</w>\": 27153,\n  \"enthusiastic</w>\": 22068,\n  \"enthusiasts</w>\": 27514,\n  \"enti\": 1938,\n  \"ential</w>\": 5194,\n  \"entially</w>\": 37695,\n  \"entic</w>\": 10340,\n  \"entine</w>\": 49212,\n  \"enting</w>\": 20526,\n  \"entire</w>\": 4709,\n  \"entirely</w>\": 13911,\n  \"entirety</w>\": 43242,\n  \"entit\": 15209,\n  \"entities</w>\": 38134,\n  \"entitled</w>\": 18680,\n  \"entity</w>\": 28455,\n  \"ently</w>\": 2922,\n  \"ento\": 21917,\n  \"ento</w>\": 8762,\n  \"entom\": 31676,\n  \"entourage</w>\": 47893,\n  \"entr\": 7129,\n  \"entrance</w>\": 9129,\n  \"entrata</w>\": 27304,\n  \"entre\": 34188,\n  \"entre</w>\": 19600,\n  \"entren\": 46959,\n  \"entrepre\": 4583,\n  \"entreprene\": 4789,\n  \"entrepreneu\": 26784,\n  \"entrepreneur\": 12119,\n  \"entrepreneur</w>\": 8033,\n  \"entrepreneurial</w>\": 28261,\n  \"entrepreneurs</w>\": 11054,\n  \"entrepreneurship</w>\": 12858,\n  \"entries</w>\": 13766,\n  \"entry</w>\": 5362,\n  \"ents</w>\": 870,\n  \"entu\": 6650,\n  \"enty</w>\": 5657,\n  \"enu\": 23430,\n  \"env\": 32280,\n  \"env</w>\": 39207,\n  \"envel\": 20052,\n  \"envelope</w>\": 27358,\n  \"envir\": 3512,\n  \"enviro</w>\": 46200,\n  \"environ\": 3599,\n  \"environment\": 33039,\n  \"environment</w>\": 5501,\n  \"environmental</w>\": 7831,\n  \"environmentally</w>\": 32855,\n  \"environments</w>\": 19577,\n  \"envision</w>\": 49031,\n  \"envoy</w>\": 29263,\n  \"envy</w>\": 21017,\n  \"eny</w>\": 20482,\n  \"enya</w>\": 36509,\n  \"enyc</w>\": 39520,\n  \"enz\": 25805,\n  \"enz</w>\": 31873,\n  \"enza</w>\": 25239,\n  \"enzie</w>\": 14839,\n  \"enzo</w>\": 31543,\n  \"enzyme</w>\": 40348,\n  \"enzymes</w>\": 47465,\n  \"eo\": 16054,\n  \"eo</w>\": 11712,\n  \"eoin</w>\": 48634,\n  \"eon</w>\": 31915,\n  \"eos</w>\": 17805,\n  \"ep\": 1178,\n  \"ep</w>\": 1117,\n  \"epa</w>\": 15866,\n  \"epage</w>\": 26931,\n  \"epaper</w>\": 33584,\n  \"epcot</w>\": 32524,\n  \"eper</w>\": 43071,\n  \"eph\": 45752,\n  \"eph</w>\": 41240,\n  \"ephe\": 25129,\n  \"epi\": 7219,\n  \"epi</w>\": 34641,\n  \"epic\": 12683,\n  \"epic</w>\": 4991,\n  \"epiconetsy</w>\": 49222,\n  \"epide\": 17382,\n  \"epidemi\": 44447,\n  \"epidemic</w>\": 21522,\n  \"epile\": 23150,\n  \"epilepsy</w>\": 29547,\n  \"epilo\": 31291,\n  \"epilots</w>\": 39766,\n  \"epiph\": 40561,\n  \"epiphany</w>\": 43251,\n  \"epis\": 24616,\n  \"episcop\": 28037,\n  \"episcopal</w>\": 31221,\n  \"episo\": 2708,\n  \"episode</w>\": 2965,\n  \"episodes</w>\": 11837,\n  \"epit\": 21967,\n  \"epitome</w>\": 35114,\n  \"epl</w>\": 25950,\n  \"epo\": 25810,\n  \"epp\": 39054,\n  \"epp</w>\": 39593,\n  \"eps</w>\": 4090,\n  \"epsilon</w>\": 40019,\n  \"epsom</w>\": 40364,\n  \"epstein</w>\": 34688,\n  \"eq\": 39331,\n  \"eq</w>\": 33692,\n  \"equ\": 2563,\n  \"equal\": 17373,\n  \"equal</w>\": 10433,\n  \"equality\": 48981,\n  \"equality</w>\": 9578,\n  \"equally</w>\": 18172,\n  \"equals</w>\": 30278,\n  \"equation</w>\": 28591,\n  \"equations</w>\": 38225,\n  \"eque\": 19518,\n  \"equestrian</w>\": 24728,\n  \"equi\": 8752,\n  \"equili\": 43262,\n  \"equine</w>\": 33801,\n  \"equinox</w>\": 32652,\n  \"equip\": 6526,\n  \"equip</w>\": 36979,\n  \"equipment</w>\": 6893,\n  \"equipo</w>\": 45688,\n  \"equipped</w>\": 18331,\n  \"equitable</w>\": 44717,\n  \"equities</w>\": 44015,\n  \"equity</w>\": 11293,\n  \"equivalent</w>\": 19489,\n  \"er\": 517,\n  \"er</w>\": 528,\n  \"era\": 30548,\n  \"era</w>\": 2072,\n  \"erable</w>\": 18801,\n  \"erad\": 24194,\n  \"eradic\": 36346,\n  \"eradicate</w>\": 46164,\n  \"eral</w>\": 6222,\n  \"eran</w>\": 13069,\n  \"eras\": 19325,\n  \"eras</w>\": 39090,\n  \"erase</w>\": 33893,\n  \"erased</w>\": 46762,\n  \"erasmus</w>\": 38935,\n  \"erc\": 5360,\n  \"erc</w>\": 32382,\n  \"erd</w>\": 25645,\n  \"erdo\": 21112,\n  \"erdogan</w>\": 24453,\n  \"ere\": 17907,\n  \"ere</w>\": 642,\n  \"erec\": 21526,\n  \"erected</w>\": 39365,\n  \"ered</w>\": 9097,\n  \"eres</w>\": 15751,\n  \"ergon\": 38120,\n  \"ergy</w>\": 19550,\n  \"eri\": 2769,\n  \"eri</w>\": 9509,\n  \"eria</w>\": 11634,\n  \"erial</w>\": 5409,\n  \"eric\": 1206,\n  \"eric</w>\": 5396,\n  \"erica</w>\": 13208,\n  \"erich</w>\": 26070,\n  \"erick\": 27434,\n  \"erick</w>\": 36959,\n  \"erickson</w>\": 45286,\n  \"ericsson</w>\": 39645,\n  \"eridge</w>\": 45408,\n  \"erie</w>\": 7005,\n  \"eries</w>\": 9099,\n  \"erik\": 22805,\n  \"erik</w>\": 16532,\n  \"erika</w>\": 25531,\n  \"erin\": 17532,\n  \"erin</w>\": 11333,\n  \"erina</w>\": 25176,\n  \"ering</w>\": 1785,\n  \"erit\": 23335,\n  \"eritrea</w>\": 30738,\n  \"erjee</w>\": 41665,\n  \"erly</w>\": 14380,\n  \"erm</w>\": 31649,\n  \"erman</w>\": 17990,\n  \"ern\": 6992,\n  \"ern</w>\": 12140,\n  \"ernal</w>\": 20868,\n  \"ernan</w>\": 34617,\n  \"ernation</w>\": 48796,\n  \"erne\": 33930,\n  \"ernest</w>\": 23006,\n  \"ernie</w>\": 23636,\n  \"ernity</w>\": 14653,\n  \"erno</w>\": 40812,\n  \"ernst</w>\": 30099,\n  \"ero\": 3211,\n  \"ero</w>\": 3732,\n  \"erock</w>\": 38206,\n  \"eron</w>\": 32837,\n  \"eroom</w>\": 46690,\n  \"eros</w>\": 30597,\n  \"erose</w>\": 48657,\n  \"erosion</w>\": 30174,\n  \"erotic</w>\": 30708,\n  \"erotica</w>\": 39126,\n  \"erous</w>\": 6384,\n  \"eroy</w>\": 36461,\n  \"erp</w>\": 28268,\n  \"err\": 22479,\n  \"err</w>\": 25346,\n  \"erra</w>\": 48446,\n  \"errands</w>\": 45485,\n  \"error</w>\": 12097,\n  \"errors</w>\": 21195,\n  \"erry\": 45236,\n  \"erry</w>\": 24124,\n  \"ers\": 4840,\n  \"ers</w>\": 612,\n  \"ersfc</w>\": 37925,\n  \"ership</w>\": 2884,\n  \"erson\": 25780,\n  \"erson</w>\": 6811,\n  \"ert\": 40325,\n  \"ert</w>\": 3112,\n  \"erta</w>\": 32007,\n  \"erton</w>\": 26245,\n  \"erts</w>\": 12921,\n  \"eru\": 36068,\n  \"erun</w>\": 41642,\n  \"erup\": 17093,\n  \"erupted</w>\": 48862,\n  \"eruption</w>\": 33705,\n  \"erville</w>\": 37557,\n  \"erwin</w>\": 43724,\n  \"ery\": 12467,\n  \"ery</w>\": 1692,\n  \"erz</w>\": 38711,\n  \"es\": 957,\n  \"es</w>\": 542,\n  \"esa\": 46834,\n  \"esa</w>\": 12489,\n  \"esanders</w>\": 23099,\n  \"esc\": 3330,\n  \"esc</w>\": 28420,\n  \"escal\": 15902,\n  \"escap\": 11499,\n  \"escape\": 32484,\n  \"escape</w>\": 7568,\n  \"escaped</w>\": 18707,\n  \"escapes</w>\": 29916,\n  \"escaping</w>\": 21767,\n  \"escar\": 39229,\n  \"escence</w>\": 37972,\n  \"esch\": 46760,\n  \"esch</w>\": 41945,\n  \"esco\": 32482,\n  \"escobar</w>\": 48807,\n  \"escor\": 24360,\n  \"escort</w>\": 24976,\n  \"escorted</w>\": 47667,\n  \"escorts</w>\": 48574,\n  \"escu\": 36517,\n  \"esday</w>\": 19553,\n  \"ese\": 18766,\n  \"ese</w>\": 2260,\n  \"esg</w>\": 41674,\n  \"esh\": 17119,\n  \"esh</w>\": 13407,\n  \"esha</w>\": 28799,\n  \"eshop\": 38451,\n  \"eshop</w>\": 45570,\n  \"eshopsuk</w>\": 39349,\n  \"esi</w>\": 30064,\n  \"esis</w>\": 12414,\n  \"esk\": 19359,\n  \"esl</w>\": 26201,\n  \"eso\": 29890,\n  \"eso</w>\": 28921,\n  \"esof\": 17047,\n  \"eson\": 46845,\n  \"esp\": 3849,\n  \"esp</w>\": 13870,\n  \"espa\": 37301,\n  \"espan\": 41731,\n  \"espaÃ±a</w>\": 41118,\n  \"especially</w>\": 4878,\n  \"esper\": 29216,\n  \"espino\": 46633,\n  \"espionage</w>\": 43498,\n  \"espn\": 22917,\n  \"espn</w>\": 7540,\n  \"espnu</w>\": 47747,\n  \"espo\": 34381,\n  \"esports</w>\": 16035,\n  \"espresso</w>\": 17098,\n  \"esq</w>\": 47352,\n  \"esqu\": 34616,\n  \"esque</w>\": 25877,\n  \"ess\": 3118,\n  \"ess</w>\": 9764,\n  \"essa</w>\": 39125,\n  \"essay</w>\": 12751,\n  \"essays</w>\": 27328,\n  \"esse</w>\": 22305,\n  \"essen</w>\": 30489,\n  \"essence</w>\": 17830,\n  \"essenti\": 11163,\n  \"essential\": 47264,\n  \"essential</w>\": 6895,\n  \"essentially</w>\": 30042,\n  \"essentials</w>\": 16191,\n  \"essex\": 30563,\n  \"essex</w>\": 11623,\n  \"est\": 2291,\n  \"est</w>\": 1509,\n  \"esta\": 41449,\n  \"esta</w>\": 10135,\n  \"estab\": 7010,\n  \"establi\": 8412,\n  \"establish</w>\": 19709,\n  \"established</w>\": 13143,\n  \"establishing</w>\": 29420,\n  \"establishment</w>\": 20213,\n  \"estas</w>\": 39072,\n  \"estate\": 47130,\n  \"estate</w>\": 6159,\n  \"estates</w>\": 26054,\n  \"este\": 12968,\n  \"este</w>\": 20579,\n  \"esteban</w>\": 48381,\n  \"esteem</w>\": 31541,\n  \"esteemed</w>\": 36293,\n  \"ester</w>\": 45808,\n  \"esthe\": 18468,\n  \"esther</w>\": 24393,\n  \"estim\": 8904,\n  \"estimate</w>\": 21883,\n  \"estimated</w>\": 16665,\n  \"estimates</w>\": 21957,\n  \"esto\": 31589,\n  \"esto</w>\": 23958,\n  \"estonia</w>\": 26260,\n  \"estonian</w>\": 48895,\n  \"estrada</w>\": 48116,\n  \"estre\": 31271,\n  \"estu\": 26272,\n  \"estuary</w>\": 35269,\n  \"esur\": 35758,\n  \"esville</w>\": 39187,\n  \"esy\": 46268,\n  \"et\": 1169,\n  \"et</w>\": 875,\n  \"eta</w>\": 8761,\n  \"etal</w>\": 25221,\n  \"etary</w>\": 13074,\n  \"etc</w>\": 5353,\n  \"etched</w>\": 40411,\n  \"etching</w>\": 41375,\n  \"ete\": 38820,\n  \"ete</w>\": 40245,\n  \"eter\": 8587,\n  \"eter</w>\": 17007,\n  \"eternal</w>\": 13732,\n  \"eternally</w>\": 48486,\n  \"eternity</w>\": 23832,\n  \"eters</w>\": 18392,\n  \"etf</w>\": 31661,\n  \"eth\": 4819,\n  \"eth</w>\": 5927,\n  \"ethan\": 24245,\n  \"ethan</w>\": 15958,\n  \"ethanol</w>\": 38166,\n  \"ethe\": 21312,\n  \"ethel</w>\": 45921,\n  \"ether\": 23349,\n  \"ethere\": 18705,\n  \"ethereal</w>\": 40925,\n  \"ethereum</w>\": 19612,\n  \"ethernet</w>\": 35026,\n  \"ethi\": 10327,\n  \"ethic</w>\": 39104,\n  \"ethical\": 47041,\n  \"ethical</w>\": 17679,\n  \"ethics</w>\": 13355,\n  \"ethiop\": 10897,\n  \"ethiopia</w>\": 13920,\n  \"ethiopian</w>\": 24507,\n  \"ethnic\": 30522,\n  \"ethnic</w>\": 16344,\n  \"ethnicity</w>\": 46787,\n  \"ethno\": 34225,\n  \"ethos</w>\": 48768,\n  \"eti\": 11188,\n  \"eti</w>\": 30394,\n  \"etienne</w>\": 46118,\n  \"eties</w>\": 15137,\n  \"etihad</w>\": 38489,\n  \"etiquette</w>\": 37957,\n  \"etis\": 38216,\n  \"etisation</w>\": 39733,\n  \"etna</w>\": 41940,\n  \"eto\": 27829,\n  \"eto</w>\": 33837,\n  \"eton</w>\": 44339,\n  \"etour</w>\": 41462,\n  \"etr\": 23012,\n  \"etres</w>\": 42838,\n  \"ets</w>\": 3442,\n  \"etsy\": 13237,\n  \"etsy</w>\": 6282,\n  \"etsym\": 22902,\n  \"etsymntt</w>\": 25416,\n  \"etsyshop</w>\": 44643,\n  \"ett\": 32729,\n  \"ett</w>\": 24998,\n  \"etta</w>\": 30466,\n  \"ette\": 19981,\n  \"ette</w>\": 5212,\n  \"ettes</w>\": 35326,\n  \"etto</w>\": 44219,\n  \"etty</w>\": 40759,\n  \"etu\": 36593,\n  \"etv\": 49155,\n  \"etv</w>\": 20325,\n  \"etwork</w>\": 20585,\n  \"ety\": 25920,\n  \"ety</w>\": 2746,\n  \"etz\": 36181,\n  \"etz</w>\": 25301,\n  \"eu\": 1506,\n  \"eu</w>\": 3238,\n  \"eucalyp\": 41068,\n  \"eucalyptus</w>\": 42351,\n  \"euchar\": 38362,\n  \"eugen\": 30678,\n  \"eugene</w>\": 17760,\n  \"eul\": 46749,\n  \"eun\": 16431,\n  \"eun</w>\": 26219,\n  \"eunhyuk</w>\": 47526,\n  \"eup\": 44435,\n  \"euph\": 21386,\n  \"euphoria</w>\": 41051,\n  \"eur\": 18343,\n  \"eur</w>\": 12018,\n  \"eura\": 32605,\n  \"eure\": 25311,\n  \"euref</w>\": 48017,\n  \"eureka</w>\": 31686,\n  \"euro\": 2039,\n  \"euro</w>\": 8463,\n  \"euroleague</w>\": 46821,\n  \"europa</w>\": 18290,\n  \"europale\": 42473,\n  \"europaleague</w>\": 44029,\n  \"europarl</w>\": 44922,\n  \"europe\": 4198,\n  \"europe</w>\": 3848,\n  \"european\": 26712,\n  \"european</w>\": 4759,\n  \"europeans</w>\": 37082,\n  \"euros</w>\": 22274,\n  \"eurovision</w>\": 17593,\n  \"eurozone</w>\": 42555,\n  \"eurusd</w>\": 40895,\n  \"eus</w>\": 44214,\n  \"euston</w>\": 46905,\n  \"euthan\": 43280,\n  \"euve</w>\": 40652,\n  \"eux</w>\": 25019,\n  \"ev\": 776,\n  \"ev</w>\": 10133,\n  \"eva</w>\": 6845,\n  \"evacu\": 13187,\n  \"evacuated</w>\": 26806,\n  \"evacuation</w>\": 27353,\n  \"eval\": 25139,\n  \"eval</w>\": 9703,\n  \"evalu\": 10314,\n  \"evaluate</w>\": 27174,\n  \"evaluating</w>\": 34541,\n  \"evaluation</w>\": 17640,\n  \"evan\": 12821,\n  \"evan</w>\": 12847,\n  \"evangel\": 20518,\n  \"evangeli\": 21372,\n  \"evangelical</w>\": 36151,\n  \"evangelist</w>\": 42275,\n  \"evankirstel</w>\": 46581,\n  \"evans</w>\": 8836,\n  \"evansville</w>\": 44782,\n  \"evapor\": 33352,\n  \"evasion</w>\": 48795,\n  \"eve\": 5732,\n  \"eve</w>\": 1866,\n  \"eved</w>\": 19820,\n  \"evel\": 39315,\n  \"evelyn</w>\": 26687,\n  \"evement</w>\": 8210,\n  \"even\": 6359,\n  \"even</w>\": 1427,\n  \"evening\": 34487,\n  \"evening</w>\": 2285,\n  \"evenings</w>\": 19994,\n  \"evenly</w>\": 45974,\n  \"event\": 10612,\n  \"event</w>\": 1655,\n  \"eventful</w>\": 45628,\n  \"evento</w>\": 38155,\n  \"eventprofs</w>\": 24980,\n  \"events</w>\": 3667,\n  \"eventu\": 14055,\n  \"eventual</w>\": 45321,\n  \"eventually</w>\": 14397,\n  \"ever\": 888,\n  \"ever</w>\": 1247,\n  \"everest</w>\": 21722,\n  \"everett</w>\": 25456,\n  \"everglades</w>\": 46294,\n  \"evergreen</w>\": 23852,\n  \"everlasting</w>\": 32849,\n  \"evers</w>\": 31914,\n  \"everton</w>\": 13315,\n  \"every\": 1091,\n  \"every</w>\": 1505,\n  \"everybody</w>\": 5901,\n  \"everyday\": 25049,\n  \"everyday</w>\": 5160,\n  \"everyone</w>\": 1584,\n  \"everything\": 36376,\n  \"everything</w>\": 2410,\n  \"everytime</w>\": 16911,\n  \"everywhere</w>\": 6364,\n  \"eves</w>\": 7323,\n  \"evi\": 5348,\n  \"evi</w>\": 36989,\n  \"evic\": 21336,\n  \"eviction</w>\": 37111,\n  \"eviden\": 46220,\n  \"evidence</w>\": 6439,\n  \"evident</w>\": 34529,\n  \"evie</w>\": 47195,\n  \"evil\": 23218,\n  \"evil</w>\": 6006,\n  \"eville</w>\": 16143,\n  \"eving</w>\": 24729,\n  \"evo\": 17962,\n  \"evo</w>\": 13169,\n  \"evoc\": 43133,\n  \"evol\": 5350,\n  \"evolu\": 7725,\n  \"evolution</w>\": 8902,\n  \"evolutionary</w>\": 30629,\n  \"evolve</w>\": 23406,\n  \"evolved</w>\": 22613,\n  \"evolving</w>\": 23675,\n  \"evp</w>\": 46154,\n  \"evs</w>\": 33576,\n  \"ew\": 11942,\n  \"ew</w>\": 15428,\n  \"ewan</w>\": 40247,\n  \"ewe</w>\": 48438,\n  \"ewing</w>\": 38873,\n  \"ews</w>\": 9878,\n  \"ex\": 659,\n  \"ex</w>\": 4118,\n  \"exac\": 5460,\n  \"exact</w>\": 12651,\n  \"exactly</w>\": 5840,\n  \"exagger\": 29766,\n  \"exal\": 49324,\n  \"exam\": 4428,\n  \"exam</w>\": 8785,\n  \"examination</w>\": 20970,\n  \"examine</w>\": 25728,\n  \"examined</w>\": 44004,\n  \"examiner</w>\": 29149,\n  \"examines</w>\": 28160,\n  \"examining</w>\": 30616,\n  \"example</w>\": 6228,\n  \"examples</w>\": 14790,\n  \"exams</w>\": 14028,\n  \"exas</w>\": 47536,\n  \"exc\": 1302,\n  \"excav\": 20733,\n  \"excavation</w>\": 45909,\n  \"exce\": 10999,\n  \"exceed</w>\": 32521,\n  \"exceeded</w>\": 36221,\n  \"exceeding</w>\": 47213,\n  \"exceeds</w>\": 49353,\n  \"excel\": 28351,\n  \"excel</w>\": 18754,\n  \"excell\": 3298,\n  \"excellence</w>\": 8171,\n  \"excellency</w>\": 36503,\n  \"excellent</w>\": 4239,\n  \"excelsi\": 47315,\n  \"excep\": 8882,\n  \"except</w>\": 8541,\n  \"exception</w>\": 25018,\n  \"exceptional</w>\": 13425,\n  \"exceptionally</w>\": 29306,\n  \"excer\": 17737,\n  \"excerpt</w>\": 20586,\n  \"excess</w>\": 22491,\n  \"excessive</w>\": 21332,\n  \"exchange</w>\": 6616,\n  \"exchanged</w>\": 48919,\n  \"exchanges</w>\": 29730,\n  \"exchanging</w>\": 47760,\n  \"excit\": 10510,\n  \"excite</w>\": 47711,\n  \"excited</w>\": 1889,\n  \"excitement</w>\": 11407,\n  \"exciting</w>\": 4300,\n  \"exclu\": 3114,\n  \"exclude</w>\": 49235,\n  \"excluded</w>\": 46216,\n  \"excluding</w>\": 44326,\n  \"exclusion</w>\": 40219,\n  \"exclusive</w>\": 3747,\n  \"exclusively</w>\": 13565,\n  \"exclusives</w>\": 47149,\n  \"excu\": 7324,\n  \"excur\": 27533,\n  \"excursion</w>\": 34869,\n  \"excuse</w>\": 9266,\n  \"excuses</w>\": 19388,\n  \"exe\": 3554,\n  \"exe</w>\": 48027,\n  \"exec</w>\": 15052,\n  \"execs</w>\": 35728,\n  \"execu\": 4360,\n  \"execute</w>\": 36405,\n  \"executed</w>\": 20432,\n  \"execution</w>\": 18085,\n  \"executive</w>\": 5944,\n  \"executives</w>\": 24357,\n  \"exem\": 19753,\n  \"exemp\": 28602,\n  \"exempl\": 36371,\n  \"exemplary</w>\": 39123,\n  \"exempli\": 41934,\n  \"exempt</w>\": 44278,\n  \"exemption</w>\": 47481,\n  \"exer\": 40295,\n  \"exerc\": 5932,\n  \"exercise</w>\": 7016,\n  \"exercises</w>\": 19669,\n  \"exercising</w>\": 39036,\n  \"exeter\": 32137,\n  \"exeter</w>\": 18837,\n  \"exfoli\": 38823,\n  \"exhau\": 11154,\n  \"exhaust</w>\": 21812,\n  \"exhausted</w>\": 21741,\n  \"exhausting</w>\": 40035,\n  \"exhaustion</w>\": 49221,\n  \"exhi\": 3022,\n  \"exhib\": 3783,\n  \"exhibit\": 24992,\n  \"exhibit</w>\": 8209,\n  \"exhibiting</w>\": 23889,\n  \"exhibition</w>\": 4219,\n  \"exhibitions</w>\": 28311,\n  \"exhibitor</w>\": 44192,\n  \"exhibitors</w>\": 38542,\n  \"exhibits</w>\": 30093,\n  \"exhilar\": 40262,\n  \"exhilarating</w>\": 49289,\n  \"exi\": 5297,\n  \"exico</w>\": 38712,\n  \"exile</w>\": 28566,\n  \"exist\": 10899,\n  \"exist</w>\": 9645,\n  \"existed</w>\": 23198,\n  \"existence</w>\": 13832,\n  \"existent</w>\": 43541,\n  \"existential</w>\": 38752,\n  \"existing</w>\": 12886,\n  \"exists</w>\": 14608,\n  \"exit</w>\": 9374,\n  \"exited</w>\": 37581,\n  \"exiting</w>\": 39577,\n  \"exits</w>\": 34943,\n  \"exmoor</w>\": 48260,\n  \"exo\": 15600,\n  \"exo</w>\": 5842,\n  \"exodus</w>\": 30098,\n  \"exol</w>\": 42856,\n  \"exop\": 35288,\n  \"exoplan\": 37980,\n  \"exor\": 24506,\n  \"exorcist</w>\": 46309,\n  \"exotic</w>\": 15639,\n  \"exp\": 9923,\n  \"exp</w>\": 19066,\n  \"expan\": 7512,\n  \"expand\": 10382,\n  \"expand</w>\": 13141,\n  \"expanded</w>\": 18390,\n  \"expanding</w>\": 15755,\n  \"expands</w>\": 22223,\n  \"expanse</w>\": 46886,\n  \"expansion</w>\": 10138,\n  \"expansive</w>\": 49261,\n  \"expat</w>\": 43900,\n  \"expe\": 2560,\n  \"expect\": 9802,\n  \"expect</w>\": 5716,\n  \"expectation</w>\": 34273,\n  \"expectations</w>\": 12529,\n  \"expected</w>\": 5573,\n  \"expecting</w>\": 12525,\n  \"expects</w>\": 24536,\n  \"expedition</w>\": 16761,\n  \"expeditions</w>\": 49327,\n  \"expelled</w>\": 48834,\n  \"expen\": 7216,\n  \"expend\": 29302,\n  \"expenditure</w>\": 47044,\n  \"expense</w>\": 28473,\n  \"expenses</w>\": 21797,\n  \"expensive</w>\": 9649,\n  \"exper\": 1533,\n  \"experi\": 4723,\n  \"experience\": 31867,\n  \"experience</w>\": 2415,\n  \"experienced</w>\": 10417,\n  \"experiences</w>\": 8233,\n  \"experiencing</w>\": 16643,\n  \"experiential</w>\": 44952,\n  \"experim\": 6697,\n  \"experiment</w>\": 13079,\n  \"experimental</w>\": 16539,\n  \"experimenting</w>\": 28263,\n  \"experiments</w>\": 21077,\n  \"expert</w>\": 6284,\n  \"expertise</w>\": 16555,\n  \"experts</w>\": 6960,\n  \"expi\": 26850,\n  \"expir\": 35077,\n  \"expire</w>\": 49315,\n  \"expired</w>\": 30200,\n  \"expires</w>\": 34739,\n  \"expl\": 3261,\n  \"expla\": 3517,\n  \"explain\": 48918,\n  \"explain</w>\": 7304,\n  \"explained</w>\": 14229,\n  \"explaining</w>\": 13136,\n  \"explains</w>\": 6655,\n  \"explan\": 13294,\n  \"explanation</w>\": 16577,\n  \"explanations</w>\": 34383,\n  \"explic\": 21011,\n  \"explicit</w>\": 33228,\n  \"explo\": 3586,\n  \"explode</w>\": 31262,\n  \"exploded</w>\": 28947,\n  \"explodes</w>\": 38119,\n  \"exploding</w>\": 34683,\n  \"exploit</w>\": 36953,\n  \"exploited</w>\": 48554,\n  \"explor\": 11958,\n  \"exploration</w>\": 14043,\n  \"explore\": 10405,\n  \"explore</w>\": 5147,\n  \"explorebc</w>\": 38754,\n  \"explorecanada</w>\": 36600,\n  \"explored</w>\": 25016,\n  \"explorer</w>\": 15776,\n  \"explorers</w>\": 28491,\n  \"explores</w>\": 13996,\n  \"exploring</w>\": 7584,\n  \"explosion</w>\": 13785,\n  \"explosions</w>\": 38646,\n  \"explosive</w>\": 18888,\n  \"explosives</w>\": 44705,\n  \"expo\": 7820,\n  \"expo</w>\": 6344,\n  \"expon\": 27905,\n  \"export</w>\": 14444,\n  \"exporting</w>\": 47433,\n  \"exports</w>\": 20088,\n  \"expose</w>\": 23181,\n  \"exposed</w>\": 12180,\n  \"exposes</w>\": 33575,\n  \"exposing</w>\": 28362,\n  \"exposition</w>\": 36943,\n  \"exposure</w>\": 11903,\n  \"expre\": 6085,\n  \"express\": 18553,\n  \"express</w>\": 5642,\n  \"expressed</w>\": 20777,\n  \"expresses</w>\": 31931,\n  \"expressing</w>\": 30207,\n  \"expression</w>\": 11357,\n  \"expressions</w>\": 20314,\n  \"expressive</w>\": 42060,\n  \"expressway</w>\": 31658,\n  \"exquis\": 16575,\n  \"exquisite</w>\": 17958,\n  \"ext\": 5711,\n  \"ext</w>\": 20072,\n  \"exten\": 5555,\n  \"extend</w>\": 14492,\n  \"extended</w>\": 9614,\n  \"extending</w>\": 25652,\n  \"extends</w>\": 20688,\n  \"extension</w>\": 10275,\n  \"extensions</w>\": 24525,\n  \"extensive</w>\": 16870,\n  \"extensively</w>\": 47365,\n  \"extent</w>\": 24913,\n  \"exter\": 9797,\n  \"exterior</w>\": 19352,\n  \"extermin\": 41671,\n  \"external</w>\": 15028,\n  \"extin\": 13553,\n  \"extinct</w>\": 24488,\n  \"extinction</w>\": 21186,\n  \"extingui\": 38567,\n  \"extor\": 35620,\n  \"extr\": 29082,\n  \"extra\": 6416,\n  \"extra</w>\": 4231,\n  \"extrac\": 18550,\n  \"extract</w>\": 18962,\n  \"extraction</w>\": 28789,\n  \"extracts</w>\": 45576,\n  \"extraordin\": 23628,\n  \"extraordinaire</w>\": 30909,\n  \"extraordinary</w>\": 10982,\n  \"extras</w>\": 29817,\n  \"extravag\": 22299,\n  \"extravaganza</w>\": 29461,\n  \"extre\": 3978,\n  \"extreme\": 38357,\n  \"extreme</w>\": 8331,\n  \"extremely</w>\": 6519,\n  \"extremism</w>\": 31493,\n  \"extremist</w>\": 36383,\n  \"extremists</w>\": 41425,\n  \"extru\": 43010,\n  \"ey\": 1541,\n  \"ey</w>\": 1477,\n  \"eyang</w>\": 28915,\n  \"eye\": 5034,\n  \"eye</w>\": 3272,\n  \"eyebrow</w>\": 34250,\n  \"eyebrows</w>\": 19923,\n  \"eyed</w>\": 15512,\n  \"eyeing</w>\": 34916,\n  \"eyel\": 17075,\n  \"eyelashes</w>\": 42074,\n  \"eyeliner</w>\": 33354,\n  \"eyeon</w>\": 25126,\n  \"eyes</w>\": 3095,\n  \"eyeshadow</w>\": 35213,\n  \"eyewear</w>\": 30165,\n  \"eyewitness</w>\": 36258,\n  \"eyou\": 31996,\n  \"eyour\": 40229,\n  \"eyre</w>\": 44115,\n  \"ez\": 10082,\n  \"ez</w>\": 8387,\n  \"eze\": 25993,\n  \"eze</w>\": 27229,\n  \"ezekiel</w>\": 41428,\n  \"ezra</w>\": 27552,\n  \"f\": 69,\n  \"f</w>\": 325,\n  \"fa\": 778,\n  \"fa</w>\": 2800,\n  \"faa</w>\": 27577,\n  \"fab\": 2833,\n  \"fab</w>\": 5492,\n  \"faber\": 43461,\n  \"faber</w>\": 42488,\n  \"fabi\": 29425,\n  \"fabian</w>\": 34539,\n  \"fabio</w>\": 31666,\n  \"fabric\": 16217,\n  \"fabric</w>\": 10033,\n  \"fabricated</w>\": 40851,\n  \"fabrication</w>\": 33476,\n  \"fabrics</w>\": 23159,\n  \"fabulous</w>\": 5189,\n  \"fac\": 1053,\n  \"fac</w>\": 35438,\n  \"facade</w>\": 29217,\n  \"face\": 2545,\n  \"face</w>\": 1710,\n  \"facebook\": 36156,\n  \"facebook</w>\": 2943,\n  \"faced</w>\": 10941,\n  \"faceli\": 32023,\n  \"facelift</w>\": 36380,\n  \"faceoff</w>\": 42710,\n  \"facep\": 45285,\n  \"faces</w>\": 4905,\n  \"faceted</w>\": 43435,\n  \"facetime</w>\": 24076,\n  \"facial</w>\": 11909,\n  \"facil\": 39973,\n  \"facilit\": 13567,\n  \"facilitate</w>\": 26733,\n  \"facilitated</w>\": 43853,\n  \"facilitating</w>\": 34796,\n  \"facilities</w>\": 10388,\n  \"facility</w>\": 8165,\n  \"facing</w>\": 7619,\n  \"fact\": 17189,\n  \"fact</w>\": 3598,\n  \"factfriday</w>\": 27953,\n  \"faction</w>\": 14629,\n  \"factor\": 21082,\n  \"factor</w>\": 8124,\n  \"factories</w>\": 36492,\n  \"factors</w>\": 12733,\n  \"factory\": 42483,\n  \"factory</w>\": 6072,\n  \"facts</w>\": 5085,\n  \"factual</w>\": 45471,\n  \"faculty</w>\": 9504,\n  \"facup</w>\": 25283,\n  \"fad\": 12632,\n  \"fad</w>\": 47669,\n  \"fade</w>\": 20486,\n  \"faded</w>\": 26051,\n  \"fades</w>\": 40441,\n  \"fading</w>\": 32882,\n  \"fadnavis</w>\": 38945,\n  \"faf\": 31052,\n  \"faf</w>\": 43903,\n  \"fag\": 25617,\n  \"fag</w>\": 39305,\n  \"fah\": 25495,\n  \"fah</w>\": 35429,\n  \"fahren\": 45527,\n  \"fai\": 20519,\n  \"fai</w>\": 26384,\n  \"fail\": 7105,\n  \"fail</w>\": 6801,\n  \"failed</w>\": 8314,\n  \"failing</w>\": 15757,\n  \"fails</w>\": 13388,\n  \"failure</w>\": 8732,\n  \"failures</w>\": 25442,\n  \"faint</w>\": 30807,\n  \"fair\": 3031,\n  \"fair</w>\": 2849,\n  \"fairbanks</w>\": 43962,\n  \"faire\": 34745,\n  \"faire</w>\": 20798,\n  \"fairfax</w>\": 29368,\n  \"fairfield</w>\": 29664,\n  \"fairgrounds</w>\": 38325,\n  \"fairi\": 28884,\n  \"fairies</w>\": 33590,\n  \"fairly</w>\": 14961,\n  \"fairmont</w>\": 41547,\n  \"fairness</w>\": 29388,\n  \"fairs</w>\": 8655,\n  \"fairtrade</w>\": 33361,\n  \"fairview</w>\": 43479,\n  \"fairway</w>\": 44022,\n  \"fairy\": 17021,\n  \"fairy</w>\": 10444,\n  \"fairytale</w>\": 28944,\n  \"fais\": 23542,\n  \"faisal</w>\": 35459,\n  \"fait</w>\": 20567,\n  \"faith\": 10653,\n  \"faith</w>\": 5080,\n  \"faithful</w>\": 15511,\n  \"faiz\": 41775,\n  \"fake\": 18794,\n  \"fake</w>\": 5777,\n  \"faken\": 22853,\n  \"fakenews</w>\": 26943,\n  \"fakespeare</w>\": 49095,\n  \"fal\": 2778,\n  \"fal</w>\": 40494,\n  \"fala\": 47120,\n  \"falcon\": 22498,\n  \"falcon</w>\": 13571,\n  \"falcons</w>\": 13834,\n  \"falk\": 34648,\n  \"falkirk</w>\": 44080,\n  \"fall\": 6489,\n  \"fall</w>\": 2359,\n  \"fallen</w>\": 8688,\n  \"falling\": 48709,\n  \"falling</w>\": 7293,\n  \"fallon\": 39596,\n  \"fallon</w>\": 21281,\n  \"fallontonight</w>\": 44627,\n  \"fallout\": 49365,\n  \"fallout</w>\": 16009,\n  \"falls</w>\": 4778,\n  \"falmouth</w>\": 38261,\n  \"false\": 38948,\n  \"false</w>\": 9078,\n  \"falsely</w>\": 42321,\n  \"fam\": 1058,\n  \"fam</w>\": 5128,\n  \"fame</w>\": 6573,\n  \"famed</w>\": 23302,\n  \"famer</w>\": 24554,\n  \"famil\": 3395,\n  \"famili\": 8488,\n  \"familia</w>\": 25622,\n  \"familiar</w>\": 10020,\n  \"families</w>\": 4612,\n  \"family\": 8137,\n  \"family</w>\": 1315,\n  \"familyfun</w>\": 46308,\n  \"familytime</w>\": 47236,\n  \"familytravel</w>\": 38222,\n  \"famine</w>\": 35847,\n  \"famous\": 44811,\n  \"famous</w>\": 4096,\n  \"famously</w>\": 44505,\n  \"fan\": 1675,\n  \"fan</w>\": 2261,\n  \"fanart\": 41059,\n  \"fanart</w>\": 7855,\n  \"fanartfriday</w>\": 45346,\n  \"fanatic</w>\": 36643,\n  \"fanatics</w>\": 39610,\n  \"fanbase</w>\": 36921,\n  \"fanboy</w>\": 43369,\n  \"fanc\": 29017,\n  \"fancafe</w>\": 45080,\n  \"fanci\": 35908,\n  \"fanclub</w>\": 31530,\n  \"fancy\": 47622,\n  \"fancy</w>\": 6733,\n  \"fand\": 19684,\n  \"fandom\": 47634,\n  \"fandom</w>\": 11534,\n  \"fanfest</w>\": 42916,\n  \"fanfic</w>\": 47243,\n  \"fang\": 14269,\n  \"fang</w>\": 27428,\n  \"fangirl</w>\": 28813,\n  \"fangirling</w>\": 39463,\n  \"fanning</w>\": 37282,\n  \"fanny</w>\": 30401,\n  \"fans\": 32454,\n  \"fans</w>\": 1840,\n  \"fansign</w>\": 25288,\n  \"fant\": 4467,\n  \"fanta\": 2703,\n  \"fantaken</w>\": 39412,\n  \"fantasia</w>\": 49306,\n  \"fantastic\": 31289,\n  \"fantastic</w>\": 2935,\n  \"fantasy\": 15124,\n  \"fantasy</w>\": 5267,\n  \"fantasyfootball</w>\": 35713,\n  \"fao</w>\": 31155,\n  \"faq</w>\": 28533,\n  \"far\": 1578,\n  \"far</w>\": 2384,\n  \"fara</w>\": 48562,\n  \"farage</w>\": 28340,\n  \"farah</w>\": 31547,\n  \"fare\": 8620,\n  \"fare</w>\": 6461,\n  \"fares</w>\": 27525,\n  \"farewell</w>\": 10734,\n  \"fargo</w>\": 18870,\n  \"fari\": 26197,\n  \"farley</w>\": 43761,\n  \"farm\": 9066,\n  \"farm</w>\": 3985,\n  \"farmer\": 19735,\n  \"farmer</w>\": 10474,\n  \"farmers\": 29752,\n  \"farmers</w>\": 6402,\n  \"farmersmarket</w>\": 41808,\n  \"farmhouse</w>\": 26293,\n  \"farming</w>\": 10399,\n  \"farmington</w>\": 49305,\n  \"farmland</w>\": 45258,\n  \"farms</w>\": 11277,\n  \"farn\": 27527,\n  \"faroo\": 39147,\n  \"farra\": 33657,\n  \"farrakhan</w>\": 46293,\n  \"farrell</w>\": 24234,\n  \"fart</w>\": 34664,\n  \"farther</w>\": 42233,\n  \"fas\": 4830,\n  \"fas</w>\": 42995,\n  \"fasci\": 17191,\n  \"fascin\": 7327,\n  \"fascinated</w>\": 32964,\n  \"fascinating</w>\": 8640,\n  \"fascism</w>\": 28213,\n  \"fascist</w>\": 23870,\n  \"fascists</w>\": 43598,\n  \"fash\": 42682,\n  \"fashi\": 2099,\n  \"fashion\": 6976,\n  \"fashion</w>\": 2444,\n  \"fashionable</w>\": 24597,\n  \"fashionblogger</w>\": 31726,\n  \"fashioned</w>\": 21563,\n  \"fashioni\": 26062,\n  \"fashionista</w>\": 30415,\n  \"fashions</w>\": 37601,\n  \"fashionshow</w>\": 45653,\n  \"fashionweek</w>\": 28684,\n  \"fass\": 42398,\n  \"fast\": 8509,\n  \"fast</w>\": 1953,\n  \"fasten\": 44990,\n  \"faster</w>\": 8835,\n  \"fastest</w>\": 9808,\n  \"fasting</w>\": 24656,\n  \"fat\": 4751,\n  \"fat</w>\": 5484,\n  \"fatal</w>\": 12124,\n  \"fatalities</w>\": 44168,\n  \"fatally</w>\": 34069,\n  \"fate\": 26315,\n  \"fate</w>\": 11734,\n  \"father\": 11607,\n  \"father</w>\": 3224,\n  \"fathers</w>\": 12780,\n  \"fathersday</w>\": 16731,\n  \"fati\": 13430,\n  \"fatigue</w>\": 23747,\n  \"fatima</w>\": 28202,\n  \"fats</w>\": 30151,\n  \"fatt\": 44131,\n  \"fatty</w>\": 22953,\n  \"fau\": 5571,\n  \"fau</w>\": 31381,\n  \"faucet</w>\": 44273,\n  \"faul\": 16230,\n  \"faulkner</w>\": 37840,\n  \"fault</w>\": 13862,\n  \"faults</w>\": 42752,\n  \"faulty</w>\": 47103,\n  \"fauna</w>\": 30808,\n  \"faust</w>\": 44772,\n  \"faux</w>\": 19429,\n  \"fav\": 1355,\n  \"fav</w>\": 5426,\n  \"fave</w>\": 7272,\n  \"faves</w>\": 18003,\n  \"favor\": 1766,\n  \"favor</w>\": 12160,\n  \"favorable</w>\": 35392,\n  \"favored</w>\": 46640,\n  \"favorite\": 35262,\n  \"favorite</w>\": 1916,\n  \"favorited</w>\": 36926,\n  \"favorites</w>\": 10564,\n  \"favors</w>\": 36085,\n  \"favour\": 3111,\n  \"favour</w>\": 20469,\n  \"favourite</w>\": 3342,\n  \"favourites</w>\": 16585,\n  \"favs</w>\": 18879,\n  \"faw\": 21800,\n  \"fawad\": 46425,\n  \"fawn</w>\": 48624,\n  \"fax\": 32535,\n  \"fax</w>\": 9337,\n  \"fay\": 8939,\n  \"fay</w>\": 40074,\n  \"faye</w>\": 30257,\n  \"fayette\": 32043,\n  \"fayette</w>\": 19782,\n  \"fayetteville</w>\": 37771,\n  \"fayre</w>\": 34982,\n  \"faz\": 26238,\n  \"faze</w>\": 44880,\n  \"fb\": 22637,\n  \"fb</w>\": 3307,\n  \"fball</w>\": 29663,\n  \"fbf</w>\": 20004,\n  \"fbi</w>\": 10293,\n  \"fbloggers</w>\": 41389,\n  \"fbs</w>\": 48454,\n  \"fc\": 4278,\n  \"fc</w>\": 1399,\n  \"fca</w>\": 24540,\n  \"fcb\": 26639,\n  \"fcb</w>\": 25045,\n  \"fcbarcelona</w>\": 32174,\n  \"fcbayern</w>\": 35033,\n  \"fcblive</w>\": 44608,\n  \"fcc</w>\": 21240,\n  \"fck\": 40080,\n  \"fck</w>\": 49263,\n  \"fcofficial</w>\": 27805,\n  \"fcs</w>\": 32095,\n  \"fcu</w>\": 47898,\n  \"fd\": 16972,\n  \"fd</w>\": 11525,\n  \"fda</w>\": 17823,\n  \"fdi</w>\": 45579,\n  \"fdn</w>\": 18563,\n  \"fdny</w>\": 41084,\n  \"fdr</w>\": 42298,\n  \"fe\": 623,\n  \"fe</w>\": 873,\n  \"fear\": 8744,\n  \"fear</w>\": 5402,\n  \"feared</w>\": 31154,\n  \"fearless</w>\": 17470,\n  \"fears</w>\": 13867,\n  \"fearthe\": 33449,\n  \"feasi\": 34977,\n  \"feast\": 37963,\n  \"feast</w>\": 9564,\n  \"feat\": 1703,\n  \"feat</w>\": 5611,\n  \"feather\": 24905,\n  \"feather</w>\": 17871,\n  \"feathers</w>\": 21138,\n  \"featherweight</w>\": 44939,\n  \"feature\": 30413,\n  \"feature</w>\": 4527,\n  \"featured</w>\": 4743,\n  \"features</w>\": 4643,\n  \"featuring</w>\": 3706,\n  \"feb</w>\": 4317,\n  \"febru\": 4202,\n  \"february</w>\": 4248,\n  \"fect</w>\": 31293,\n  \"fed\": 22518,\n  \"fed</w>\": 7035,\n  \"feder\": 4737,\n  \"federal</w>\": 6369,\n  \"federation</w>\": 15530,\n  \"federer</w>\": 18246,\n  \"federico</w>\": 40539,\n  \"fedex</w>\": 32603,\n  \"fedora</w>\": 45111,\n  \"feds</w>\": 30593,\n  \"fee\": 28242,\n  \"fee</w>\": 9224,\n  \"feed\": 6662,\n  \"feed</w>\": 5839,\n  \"feedback</w>\": 8683,\n  \"feeder</w>\": 24482,\n  \"feeders</w>\": 44523,\n  \"feeding</w>\": 9879,\n  \"feeds</w>\": 21788,\n  \"feel\": 2408,\n  \"feel</w>\": 2051,\n  \"feelin</w>\": 19903,\n  \"feeling\": 33087,\n  \"feeling</w>\": 3045,\n  \"feelings</w>\": 9452,\n  \"feels</w>\": 4808,\n  \"feelthe\": 22322,\n  \"feelthebern</w>\": 27743,\n  \"fees</w>\": 11765,\n  \"feet</w>\": 4804,\n  \"fei\": 23441,\n  \"fei</w>\": 34217,\n  \"fein\": 46707,\n  \"feinstein</w>\": 41313,\n  \"fel\": 2081,\n  \"fel</w>\": 20304,\n  \"feld\": 45913,\n  \"feld</w>\": 14219,\n  \"feldman</w>\": 41942,\n  \"feli\": 7498,\n  \"felic\": 25845,\n  \"felici\": 23379,\n  \"felicia</w>\": 41139,\n  \"felicidades</w>\": 41648,\n  \"felicity</w>\": 35123,\n  \"feline</w>\": 29471,\n  \"felipe</w>\": 27681,\n  \"felix\": 33455,\n  \"felix</w>\": 16514,\n  \"feliz\": 26104,\n  \"feliz</w>\": 20221,\n  \"fell\": 33540,\n  \"fell</w>\": 6266,\n  \"fella</w>\": 17586,\n  \"fellas</w>\": 18787,\n  \"feller</w>\": 29226,\n  \"fellow\": 12099,\n  \"fellow</w>\": 5242,\n  \"fellows</w>\": 15766,\n  \"fellowship</w>\": 13857,\n  \"felony</w>\": 31068,\n  \"felt</w>\": 5413,\n  \"fem\": 24574,\n  \"fem</w>\": 36615,\n  \"fema</w>\": 41721,\n  \"female\": 22062,\n  \"female</w>\": 3970,\n  \"females</w>\": 21028,\n  \"femi</w>\": 38607,\n  \"femin\": 11423,\n  \"femini\": 11894,\n  \"feminine</w>\": 24911,\n  \"feminism</w>\": 18784,\n  \"feminist</w>\": 14921,\n  \"feminists</w>\": 38809,\n  \"femme</w>\": 31331,\n  \"fen\": 5509,\n  \"fen</w>\": 25024,\n  \"fence</w>\": 12679,\n  \"fences</w>\": 34312,\n  \"fencing</w>\": 23489,\n  \"fender</w>\": 17117,\n  \"fener\": 41208,\n  \"fenerbah\": 46652,\n  \"feng</w>\": 33291,\n  \"fennel</w>\": 28689,\n  \"fent\": 26395,\n  \"fenton</w>\": 47265,\n  \"fenway</w>\": 29206,\n  \"fer\": 1765,\n  \"fer</w>\": 2897,\n  \"fera</w>\": 37705,\n  \"feral</w>\": 29972,\n  \"ferdin\": 25541,\n  \"ferdinand</w>\": 27591,\n  \"fere</w>\": 43144,\n  \"feren\": 35652,\n  \"ference</w>\": 19984,\n  \"ferg</w>\": 44938,\n  \"fergie</w>\": 39119,\n  \"fergu\": 10988,\n  \"fergus</w>\": 42041,\n  \"ferguson</w>\": 11904,\n  \"fermentation</w>\": 45817,\n  \"fermented</w>\": 36886,\n  \"fern\": 10747,\n  \"fern</w>\": 21685,\n  \"fernandes</w>\": 44391,\n  \"fernandez</w>\": 23436,\n  \"fernando</w>\": 17140,\n  \"ferns</w>\": 38277,\n  \"feroci\": 45652,\n  \"ferr\": 7256,\n  \"ferra\": 47911,\n  \"ferrari</w>\": 9606,\n  \"ferre\": 29626,\n  \"ferred</w>\": 10432,\n  \"ferreira</w>\": 48686,\n  \"ferrell</w>\": 41112,\n  \"ferrer</w>\": 38904,\n  \"ferri\": 42008,\n  \"ferries</w>\": 28489,\n  \"ferris</w>\": 27532,\n  \"ferry\": 38936,\n  \"ferry</w>\": 10278,\n  \"fers</w>\": 12378,\n  \"fert\": 14925,\n  \"fert</w>\": 43662,\n  \"fertil\": 41987,\n  \"fertile</w>\": 44837,\n  \"fertili\": 23912,\n  \"fertility</w>\": 23528,\n  \"fertilizer</w>\": 36786,\n  \"fery</w>\": 47448,\n  \"fes</w>\": 32300,\n  \"fest\": 17383,\n  \"fest</w>\": 2590,\n  \"festa</w>\": 42124,\n  \"festi\": 1943,\n  \"festiv\": 19222,\n  \"festival\": 20946,\n  \"festival</w>\": 2240,\n  \"festivals</w>\": 17834,\n  \"festive</w>\": 9533,\n  \"festivities</w>\": 21020,\n  \"fet\": 21409,\n  \"feta</w>\": 31705,\n  \"fetal</w>\": 42031,\n  \"fetch</w>\": 30271,\n  \"fete</w>\": 34629,\n  \"fett</w>\": 37979,\n  \"fetus</w>\": 26768,\n  \"feu\": 24912,\n  \"feu</w>\": 32990,\n  \"feud</w>\": 27365,\n  \"fever\": 40896,\n  \"fever</w>\": 9989,\n  \"fevre</w>\": 43861,\n  \"few</w>\": 1939,\n  \"fewer</w>\": 19128,\n  \"fex\": 41584,\n  \"fex</w>\": 26392,\n  \"fey\": 39069,\n  \"fey</w>\": 23298,\n  \"fez</w>\": 43081,\n  \"ff\": 1021,\n  \"ff</w>\": 1304,\n  \"ffa</w>\": 15355,\n  \"ffame</w>\": 42873,\n  \"ffc</w>\": 19832,\n  \"ffe\": 1138,\n  \"ffe</w>\": 8631,\n  \"ffect</w>\": 29151,\n  \"ffed</w>\": 8448,\n  \"ffee</w>\": 26377,\n  \"ffel</w>\": 22656,\n  \"ffen</w>\": 46537,\n  \"ffer\": 27369,\n  \"ffer</w>\": 11636,\n  \"ffers</w>\": 32163,\n  \"fferty</w>\": 44771,\n  \"ffes</w>\": 46441,\n  \"ffey</w>\": 30138,\n  \"fff</w>\": 28106,\n  \"ffi\": 19961,\n  \"ffic\": 4762,\n  \"ffice</w>\": 26044,\n  \"ffici\": 3639,\n  \"fficial\": 39818,\n  \"fficial</w>\": 6463,\n  \"fficiency</w>\": 27800,\n  \"fficient</w>\": 20424,\n  \"ffin\": 12779,\n  \"ffin</w>\": 7367,\n  \"ffing</w>\": 16592,\n  \"ffins</w>\": 17898,\n  \"ffl</w>\": 39490,\n  \"ffle</w>\": 7749,\n  \"ffler</w>\": 39819,\n  \"ffles</w>\": 19344,\n  \"ffman</w>\": 15823,\n  \"ffo</w>\": 42264,\n  \"ffs</w>\": 4424,\n  \"ffxiv</w>\": 26569,\n  \"ffxv</w>\": 46786,\n  \"ffy\": 26404,\n  \"ffy</w>\": 7795,\n  \"fg\": 45977,\n  \"fg</w>\": 6823,\n  \"fgm</w>\": 32178,\n  \"fgo</w>\": 46113,\n  \"fh\": 21649,\n  \"fh</w>\": 21010,\n  \"fhs</w>\": 45094,\n  \"fi\": 701,\n  \"fi</w>\": 3589,\n  \"fia</w>\": 8827,\n  \"fiable</w>\": 34373,\n  \"fianc\": 27752,\n  \"fiance</w>\": 44114,\n  \"fiancÃ©</w>\": 34039,\n  \"fiasco</w>\": 40944,\n  \"fiat</w>\": 16740,\n  \"fiawec</w>\": 39485,\n  \"fib</w>\": 40594,\n  \"fiba</w>\": 34993,\n  \"fiber\": 35074,\n  \"fiber</w>\": 12612,\n  \"fibers</w>\": 44587,\n  \"fibre</w>\": 21401,\n  \"fibro\": 21294,\n  \"fibrosis</w>\": 36307,\n  \"fic\": 1788,\n  \"fic</w>\": 2059,\n  \"fica</w>\": 26952,\n  \"fically</w>\": 14854,\n  \"fication</w>\": 4523,\n  \"fications</w>\": 12512,\n  \"ficial</w>\": 48192,\n  \"fics</w>\": 42505,\n  \"fiction</w>\": 6218,\n  \"fictional</w>\": 25570,\n  \"fid\": 34197,\n  \"fid</w>\": 23966,\n  \"fidd\": 25218,\n  \"fiddle</w>\": 35968,\n  \"fide</w>\": 45375,\n  \"fidel\": 21740,\n  \"fidel</w>\": 36837,\n  \"fidelity</w>\": 30109,\n  \"fidget</w>\": 48664,\n  \"fie\": 28487,\n  \"fie</w>\": 10348,\n  \"fied\": 29642,\n  \"fied</w>\": 2853,\n  \"fiel\": 1361,\n  \"field\": 7571,\n  \"field</w>\": 1570,\n  \"fielder</w>\": 11046,\n  \"fieldhouse</w>\": 37969,\n  \"fielding</w>\": 30465,\n  \"fields</w>\": 6494,\n  \"fieldwork</w>\": 33155,\n  \"fiends</w>\": 37869,\n  \"fier\": 11167,\n  \"fier</w>\": 10598,\n  \"fierc\": 48609,\n  \"fierce</w>\": 13896,\n  \"fiercely</w>\": 49039,\n  \"fiers</w>\": 16113,\n  \"fiery</w>\": 24557,\n  \"fies</w>\": 9537,\n  \"fiesta</w>\": 14580,\n  \"fif\": 5309,\n  \"fifa\": 21976,\n  \"fifa</w>\": 8516,\n  \"fifaworldcup</w>\": 38819,\n  \"fifawwc</w>\": 41329,\n  \"fife</w>\": 24374,\n  \"fifteen</w>\": 29504,\n  \"fifth\": 25515,\n  \"fifth</w>\": 8772,\n  \"fifthharmony</w>\": 31075,\n  \"fifty\": 24456,\n  \"fifty</w>\": 15978,\n  \"fig\": 4814,\n  \"fig</w>\": 20719,\n  \"figaro</w>\": 48044,\n  \"figh\": 23274,\n  \"fight\": 5262,\n  \"fight</w>\": 2757,\n  \"fighter\": 35884,\n  \"fighter</w>\": 6438,\n  \"fighters</w>\": 7371,\n  \"fightfor\": 48909,\n  \"fightfor</w>\": 35740,\n  \"fighting\": 38625,\n  \"fighting</w>\": 4652,\n  \"fighton</w>\": 45578,\n  \"fights</w>\": 12132,\n  \"figs</w>\": 38882,\n  \"figu\": 6390,\n  \"figur\": 16948,\n  \"figurative</w>\": 44042,\n  \"figure\": 48820,\n  \"figure</w>\": 5274,\n  \"figured</w>\": 15630,\n  \"figures</w>\": 8739,\n  \"figurine</w>\": 33306,\n  \"figuring</w>\": 31513,\n  \"fiji\": 48270,\n  \"fiji</w>\": 18285,\n  \"fik</w>\": 46589,\n  \"fil\": 1142,\n  \"fil</w>\": 14915,\n  \"fila</w>\": 30992,\n  \"filament</w>\": 49252,\n  \"file\": 12545,\n  \"file</w>\": 4512,\n  \"filed</w>\": 13864,\n  \"files</w>\": 7850,\n  \"filet</w>\": 43155,\n  \"fili\": 9590,\n  \"filing</w>\": 16576,\n  \"filip\": 14368,\n  \"filipino</w>\": 19153,\n  \"fill\": 15904,\n  \"fill</w>\": 6277,\n  \"filled</w>\": 5589,\n  \"filler</w>\": 32816,\n  \"fillers</w>\": 45005,\n  \"fillet</w>\": 39276,\n  \"filling</w>\": 9736,\n  \"fillion</w>\": 38048,\n  \"fillmore</w>\": 43922,\n  \"fills</w>\": 21750,\n  \"filly</w>\": 27690,\n  \"film\": 5117,\n  \"film</w>\": 1860,\n  \"filmed</w>\": 15801,\n  \"filmfare</w>\": 42224,\n  \"filmfest</w>\": 24508,\n  \"filmfestival</w>\": 28066,\n  \"filming</w>\": 6866,\n  \"filmmaker</w>\": 17202,\n  \"filmmakers</w>\": 24896,\n  \"filmmaking</w>\": 18226,\n  \"films</w>\": 5370,\n  \"fils</w>\": 40271,\n  \"filter</w>\": 7541,\n  \"filtered</w>\": 29926,\n  \"filtering</w>\": 47770,\n  \"filters</w>\": 18385,\n  \"filth</w>\": 39713,\n  \"filthy</w>\": 26899,\n  \"filtr\": 21408,\n  \"filtration</w>\": 42036,\n  \"fim</w>\": 47525,\n  \"fin\": 735,\n  \"fin</w>\": 10663,\n  \"fina</w>\": 34497,\n  \"final\": 11968,\n  \"final</w>\": 1755,\n  \"finale</w>\": 7844,\n  \"finalfantasy</w>\": 44543,\n  \"finalfour</w>\": 46999,\n  \"finalist</w>\": 12620,\n  \"finalists</w>\": 13422,\n  \"finalized</w>\": 48930,\n  \"finally</w>\": 1992,\n  \"finals</w>\": 4536,\n  \"finan\": 4807,\n  \"finance</w>\": 6117,\n  \"finances</w>\": 28767,\n  \"financi\": 12846,\n  \"financial\": 19783,\n  \"financial</w>\": 4930,\n  \"financially</w>\": 28124,\n  \"financing</w>\": 18375,\n  \"finch</w>\": 18523,\n  \"find\": 18638,\n  \"find</w>\": 1416,\n  \"finder</w>\": 15045,\n  \"finders</w>\": 43884,\n  \"findia</w>\": 47064,\n  \"finding\": 37455,\n  \"finding</w>\": 6002,\n  \"findings</w>\": 16529,\n  \"findlay</w>\": 48227,\n  \"findom</w>\": 36463,\n  \"finds</w>\": 6680,\n  \"findyour\": 25936,\n  \"findyourpark</w>\": 38924,\n  \"fine\": 12042,\n  \"fine</w>\": 3797,\n  \"fineart\": 7484,\n  \"fineart</w>\": 16005,\n  \"fineartamerica</w>\": 7724,\n  \"fined</w>\": 20094,\n  \"finely</w>\": 46120,\n  \"finer</w>\": 36681,\n  \"fines</w>\": 25053,\n  \"finesse</w>\": 46047,\n  \"finest</w>\": 7707,\n  \"fing\": 6485,\n  \"fing</w>\": 17955,\n  \"finger\": 13480,\n  \"finger</w>\": 8895,\n  \"fingerprint</w>\": 39579,\n  \"fingers</w>\": 9690,\n  \"fini\": 2405,\n  \"finish\": 42178,\n  \"finish</w>\": 3958,\n  \"finished</w>\": 3078,\n  \"finisher</w>\": 38636,\n  \"finishers</w>\": 48661,\n  \"finishes</w>\": 13078,\n  \"finishing</w>\": 7912,\n  \"finite</w>\": 48312,\n  \"finity\": 41463,\n  \"finity</w>\": 21273,\n  \"fink</w>\": 40158,\n  \"finland</w>\": 10775,\n  \"finley</w>\": 41652,\n  \"finn\": 28479,\n  \"finn</w>\": 16925,\n  \"finna</w>\": 35180,\n  \"finnish</w>\": 19616,\n  \"fino</w>\": 30083,\n  \"fins</w>\": 32810,\n  \"fintech\": 48929,\n  \"fintech</w>\": 8899,\n  \"fion\": 27476,\n  \"fiona</w>\": 20099,\n  \"fior\": 37086,\n  \"fiore</w>\": 44997,\n  \"fioren\": 33188,\n  \"fiorentina</w>\": 43713,\n  \"fios</w>\": 42521,\n  \"fir\": 770,\n  \"fir</w>\": 16233,\n  \"fire\": 2951,\n  \"fire</w>\": 1769,\n  \"firearm</w>\": 40311,\n  \"firearms</w>\": 23960,\n  \"fireball</w>\": 40543,\n  \"firec\": 42806,\n  \"fired</w>\": 8846,\n  \"firefighter</w>\": 20498,\n  \"firefighters</w>\": 12600,\n  \"firefly</w>\": 33997,\n  \"firefox</w>\": 35372,\n  \"fireman</w>\": 46085,\n  \"firen\": 34752,\n  \"firenze</w>\": 38445,\n  \"fireplace</w>\": 23050,\n  \"fires</w>\": 8749,\n  \"fireside</w>\": 36185,\n  \"firework</w>\": 40750,\n  \"fireworks</w>\": 10641,\n  \"firing</w>\": 15105,\n  \"firm\": 16936,\n  \"firm</w>\": 7705,\n  \"firmly</w>\": 29156,\n  \"firms</w>\": 13655,\n  \"firmware</w>\": 42691,\n  \"first\": 6853,\n  \"first</w>\": 874,\n  \"firstdayof\": 44297,\n  \"firsth\": 48512,\n  \"firsts</w>\": 47884,\n  \"firth</w>\": 26078,\n  \"fis\": 7846,\n  \"fis</w>\": 47683,\n  \"fiscal</w>\": 20825,\n  \"fischer</w>\": 26532,\n  \"fish\": 6431,\n  \"fish</w>\": 2759,\n  \"fisher\": 11175,\n  \"fisher</w>\": 9176,\n  \"fisheries</w>\": 24612,\n  \"fisherman</w>\": 25055,\n  \"fishermen</w>\": 28547,\n  \"fishers</w>\": 42065,\n  \"fishery</w>\": 49057,\n  \"fishes</w>\": 35470,\n  \"fishing\": 31703,\n  \"fishing</w>\": 4935,\n  \"fishy</w>\": 35665,\n  \"fist\": 48340,\n  \"fist</w>\": 17085,\n  \"fit\": 2366,\n  \"fit</w>\": 2478,\n  \"fitbit</w>\": 33768,\n  \"fitch</w>\": 44614,\n  \"fitfam</w>\": 20662,\n  \"fitnes\": 47285,\n  \"fitness\": 20044,\n  \"fitness</w>\": 4838,\n  \"fits</w>\": 6401,\n  \"fitt\": 32994,\n  \"fitted</w>\": 14863,\n  \"fitter</w>\": 42096,\n  \"fitters</w>\": 32364,\n  \"fitting</w>\": 11769,\n  \"fittings</w>\": 45787,\n  \"fitz\": 11120,\n  \"fitz</w>\": 25913,\n  \"fitzgerald</w>\": 20606,\n  \"fitzpatrick</w>\": 37141,\n  \"fiu</w>\": 38374,\n  \"five\": 19508,\n  \"five</w>\": 3127,\n  \"fives</w>\": 44066,\n  \"fix\": 4596,\n  \"fix</w>\": 6028,\n  \"fixed</w>\": 9393,\n  \"fixes</w>\": 25473,\n  \"fixing</w>\": 17423,\n  \"fixture</w>\": 17317,\n  \"fixtures</w>\": 19904,\n  \"fizz</w>\": 31242,\n  \"fj\": 43183,\n  \"fj</w>\": 46447,\n  \"fjor\": 31260,\n  \"fk</w>\": 12410,\n  \"fl\": 1082,\n  \"fl</w>\": 2685,\n  \"fla\": 1577,\n  \"fla</w>\": 20292,\n  \"flag\": 11536,\n  \"flag</w>\": 4859,\n  \"flagged</w>\": 45012,\n  \"flags</w>\": 12221,\n  \"flagship</w>\": 19779,\n  \"flagstaff</w>\": 40406,\n  \"flair</w>\": 24938,\n  \"flake</w>\": 21221,\n  \"flakes</w>\": 20934,\n  \"flam\": 10559,\n  \"flame\": 40351,\n  \"flame</w>\": 13484,\n  \"flamen\": 28826,\n  \"flamenco</w>\": 37362,\n  \"flames</w>\": 13441,\n  \"flamin\": 42693,\n  \"flaming</w>\": 34782,\n  \"flamingo</w>\": 30323,\n  \"flan\": 14572,\n  \"flanagan</w>\": 28641,\n  \"flanders</w>\": 34837,\n  \"flank</w>\": 44553,\n  \"flann\": 39510,\n  \"flannel</w>\": 37807,\n  \"flap</w>\": 35253,\n  \"flappy</w>\": 40241,\n  \"flare</w>\": 21185,\n  \"flares</w>\": 46088,\n  \"flash\": 6089,\n  \"flash</w>\": 5815,\n  \"flashback\": 14616,\n  \"flashback</w>\": 11988,\n  \"flashbackfriday</w>\": 15014,\n  \"flashbacks</w>\": 47056,\n  \"flashes</w>\": 31259,\n  \"flashing</w>\": 31764,\n  \"flashlight</w>\": 37256,\n  \"flask</w>\": 36194,\n  \"flat\": 8986,\n  \"flat</w>\": 6313,\n  \"flats</w>\": 17228,\n  \"flatt\": 45498,\n  \"flattering</w>\": 43267,\n  \"flaun\": 41421,\n  \"flav\": 7191,\n  \"flavo\": 28895,\n  \"flavor\": 31835,\n  \"flavor</w>\": 11818,\n  \"flavored</w>\": 29350,\n  \"flavorful</w>\": 49135,\n  \"flavors</w>\": 16930,\n  \"flavour</w>\": 17026,\n  \"flavoured</w>\": 42397,\n  \"flavours</w>\": 21083,\n  \"flaw\": 14268,\n  \"flaw</w>\": 34978,\n  \"flawed</w>\": 35136,\n  \"flawless</w>\": 15531,\n  \"flaws</w>\": 30492,\n  \"flax</w>\": 43443,\n  \"fle\": 2428,\n  \"fle</w>\": 44964,\n  \"flea</w>\": 24883,\n  \"fleck</w>\": 28143,\n  \"fled</w>\": 26731,\n  \"flee\": 19427,\n  \"flee</w>\": 30167,\n  \"fleece</w>\": 25038,\n  \"fleeing</w>\": 30543,\n  \"fleek</w>\": 43513,\n  \"fleet\": 35922,\n  \"fleet</w>\": 9147,\n  \"fleetwood</w>\": 28883,\n  \"fleming</w>\": 25769,\n  \"fler</w>\": 48789,\n  \"flesh</w>\": 17495,\n  \"flet\": 16102,\n  \"fletcher</w>\": 19810,\n  \"fleur</w>\": 28593,\n  \"flew</w>\": 13768,\n  \"flex\": 16426,\n  \"flex</w>\": 12038,\n  \"flexi\": 10032,\n  \"flexibility</w>\": 22547,\n  \"flexible</w>\": 14502,\n  \"flexing</w>\": 48483,\n  \"fli\": 2472,\n  \"flick\": 13746,\n  \"flick</w>\": 23414,\n  \"flickr</w>\": 17755,\n  \"flies</w>\": 8070,\n  \"flight\": 24701,\n  \"flight</w>\": 3795,\n  \"flights</w>\": 10515,\n  \"flin\": 24730,\n  \"flin</w>\": 43816,\n  \"flinders</w>\": 44647,\n  \"fling</w>\": 22768,\n  \"flint\": 28306,\n  \"flint</w>\": 18324,\n  \"flip\": 20385,\n  \"flip</w>\": 11035,\n  \"flipk\": 30829,\n  \"flipkart</w>\": 33154,\n  \"flipped</w>\": 28144,\n  \"flipping</w>\": 25881,\n  \"flips</w>\": 35089,\n  \"flir\": 24330,\n  \"flirt</w>\": 38352,\n  \"flirting</w>\": 35243,\n  \"flix</w>\": 40663,\n  \"flo\": 1945,\n  \"flo</w>\": 20711,\n  \"float</w>\": 16123,\n  \"floating</w>\": 12619,\n  \"floats</w>\": 33272,\n  \"flock\": 36297,\n  \"flock</w>\": 21822,\n  \"flondon</w>\": 47366,\n  \"floo\": 4062,\n  \"flood\": 23793,\n  \"flood</w>\": 7148,\n  \"flooded</w>\": 19706,\n  \"flooding</w>\": 10204,\n  \"floods</w>\": 16369,\n  \"floor\": 23657,\n  \"floor</w>\": 4125,\n  \"flooring</w>\": 19227,\n  \"floors</w>\": 15671,\n  \"flop</w>\": 22994,\n  \"floppy</w>\": 38267,\n  \"flops</w>\": 29146,\n  \"flor\": 15784,\n  \"flor</w>\": 41669,\n  \"flora</w>\": 18906,\n  \"floral</w>\": 10732,\n  \"florals</w>\": 48331,\n  \"floren\": 37706,\n  \"florence</w>\": 11617,\n  \"flores</w>\": 21537,\n  \"flori\": 3482,\n  \"florian</w>\": 41861,\n  \"florida\": 34264,\n  \"florida</w>\": 3966,\n  \"florist</w>\": 38403,\n  \"floss</w>\": 36453,\n  \"flotus</w>\": 35181,\n  \"flour</w>\": 18592,\n  \"flouri\": 23239,\n  \"flourish</w>\": 36038,\n  \"flow\": 2180,\n  \"flow</w>\": 5608,\n  \"flower\": 12772,\n  \"flower</w>\": 4055,\n  \"flowering</w>\": 19953,\n  \"flowers</w>\": 4023,\n  \"flowing</w>\": 14922,\n  \"flown</w>\": 25659,\n  \"flows</w>\": 16715,\n  \"floyd\": 46369,\n  \"floyd</w>\": 13656,\n  \"flu\": 3698,\n  \"flu</w>\": 13528,\n  \"fluctu\": 40181,\n  \"fluence</w>\": 38169,\n  \"fluent</w>\": 30025,\n  \"fluff</w>\": 31174,\n  \"fluffy\": 40346,\n  \"fluffy</w>\": 17054,\n  \"fluid\": 43803,\n  \"fluid</w>\": 16717,\n  \"fluids</w>\": 41490,\n  \"fluor\": 45127,\n  \"fluore\": 26974,\n  \"fluorescent</w>\": 35036,\n  \"fluori\": 45611,\n  \"flur\": 31591,\n  \"flush</w>\": 25777,\n  \"flushing</w>\": 43754,\n  \"flute</w>\": 23746,\n  \"flux</w>\": 25249,\n  \"flwx</w>\": 30907,\n  \"fly\": 5666,\n  \"fly</w>\": 3228,\n  \"flye\": 30873,\n  \"flyeagles\": 39927,\n  \"flyeaglesfly</w>\": 39931,\n  \"flyer</w>\": 11875,\n  \"flyers</w>\": 14181,\n  \"flyfishing</w>\": 31800,\n  \"flying\": 20782,\n  \"flying</w>\": 4610,\n  \"flyn\": 40676,\n  \"flynn</w>\": 15721,\n  \"flyo\": 33506,\n  \"flyover</w>\": 38083,\n  \"fm\": 13715,\n  \"fm</w>\": 3689,\n  \"fman</w>\": 25152,\n  \"fml</w>\": 26730,\n  \"fmr</w>\": 32875,\n  \"fn\": 22773,\n  \"fn</w>\": 21763,\n  \"fnc</w>\": 46506,\n  \"fo\": 898,\n  \"fo</w>\": 6157,\n  \"foal</w>\": 40386,\n  \"foam\": 30039,\n  \"foam</w>\": 14587,\n  \"foamed</w>\": 26711,\n  \"fob</w>\": 40315,\n  \"focal</w>\": 30934,\n  \"focu\": 5827,\n  \"focus</w>\": 4353,\n  \"focused</w>\": 9319,\n  \"focuses</w>\": 20093,\n  \"focusing</w>\": 15551,\n  \"fod\": 31015,\n  \"fod</w>\": 43299,\n  \"fodils</w>\": 44411,\n  \"foe</w>\": 22952,\n  \"foes</w>\": 46279,\n  \"fog</w>\": 9417,\n  \"foggy</w>\": 19770,\n  \"foil</w>\": 17302,\n  \"fol\": 1106,\n  \"fol</w>\": 48616,\n  \"fold\": 35201,\n  \"fold</w>\": 11021,\n  \"foldable</w>\": 48307,\n  \"folded</w>\": 25233,\n  \"folder</w>\": 25717,\n  \"folding</w>\": 15464,\n  \"folds</w>\": 24266,\n  \"foley</w>\": 22850,\n  \"foli\": 7713,\n  \"folia</w>\": 48964,\n  \"foliage</w>\": 26350,\n  \"folio</w>\": 10772,\n  \"folk\": 10665,\n  \"folk</w>\": 6032,\n  \"folke\": 47190,\n  \"folkl\": 27273,\n  \"folklore\": 22133,\n  \"folklore</w>\": 28620,\n  \"folklorethursday</w>\": 23270,\n  \"folks</w>\": 5422,\n  \"follo\": 41417,\n  \"follow\": 1964,\n  \"follow</w>\": 1979,\n  \"followart</w>\": 40957,\n  \"followback</w>\": 33863,\n  \"followed</w>\": 6499,\n  \"follower</w>\": 17039,\n  \"followers</w>\": 4856,\n  \"following</w>\": 3473,\n  \"followme</w>\": 29668,\n  \"followparty</w>\": 44757,\n  \"follows</w>\": 11287,\n  \"followthe\": 30747,\n  \"folly</w>\": 41408,\n  \"folsom</w>\": 42108,\n  \"fom\": 34540,\n  \"fon\": 5017,\n  \"fon</w>\": 38318,\n  \"fond</w>\": 19964,\n  \"fonda</w>\": 44609,\n  \"fondue</w>\": 48321,\n  \"fone</w>\": 40672,\n  \"font\": 37610,\n  \"font</w>\": 16248,\n  \"fontaine</w>\": 37864,\n  \"fontana</w>\": 43643,\n  \"fontein</w>\": 45062,\n  \"fonts</w>\": 32801,\n  \"foo\": 1183,\n  \"foo</w>\": 23435,\n  \"food\": 4586,\n  \"food</w>\": 1559,\n  \"foodand\": 38317,\n  \"foodbank</w>\": 31926,\n  \"foodie\": 30762,\n  \"foodie</w>\": 9847,\n  \"foodies</w>\": 22416,\n  \"foodnetwork</w>\": 46793,\n  \"foods</w>\": 7057,\n  \"foodsecurity</w>\": 49329,\n  \"foodtruck</w>\": 47682,\n  \"fool\": 23959,\n  \"fool</w>\": 12212,\n  \"fooled</w>\": 28761,\n  \"fooling</w>\": 47964,\n  \"foolish</w>\": 33824,\n  \"fools</w>\": 15946,\n  \"foot\": 6702,\n  \"foot</w>\": 4738,\n  \"footage</w>\": 11130,\n  \"footb\": 33466,\n  \"football\": 9376,\n  \"football</w>\": 1882,\n  \"footballer</w>\": 20646,\n  \"footballers</w>\": 30269,\n  \"footed</w>\": 38040,\n  \"footh\": 25951,\n  \"foothills</w>\": 37020,\n  \"footpath</w>\": 48858,\n  \"footprint</w>\": 23206,\n  \"footprints</w>\": 39640,\n  \"footsteps</w>\": 27289,\n  \"footwear</w>\": 22772,\n  \"footy\": 39866,\n  \"footy</w>\": 18922,\n  \"for\": 645,\n  \"for</w>\": 556,\n  \"forage</w>\": 46871,\n  \"foraging</w>\": 39056,\n  \"forall</w>\": 17824,\n  \"forbe\": 49098,\n  \"forbes</w>\": 13925,\n  \"forbi\": 24754,\n  \"forbidden</w>\": 25164,\n  \"force\": 12068,\n  \"force</w>\": 2869,\n  \"forced</w>\": 8201,\n  \"forces</w>\": 5381,\n  \"forchange</w>\": 35848,\n  \"forcing</w>\": 21573,\n  \"ford\": 3751,\n  \"ford</w>\": 1623,\n  \"fordfc</w>\": 28581,\n  \"fordham</w>\": 48792,\n  \"fords</w>\": 29351,\n  \"fordshire</w>\": 14645,\n  \"fore\": 1484,\n  \"fore</w>\": 1332,\n  \"forec\": 34155,\n  \"forecast</w>\": 7361,\n  \"forecasting</w>\": 38133,\n  \"forecasts</w>\": 27696,\n  \"foreclo\": 44916,\n  \"forefront</w>\": 37679,\n  \"foreground</w>\": 35186,\n  \"forehead</w>\": 25394,\n  \"foreig\": 26497,\n  \"foreign\": 42255,\n  \"foreign</w>\": 6046,\n  \"foreigners</w>\": 38549,\n  \"foreman</w>\": 36174,\n  \"foremost</w>\": 42128,\n  \"foren\": 16526,\n  \"forensic</w>\": 23158,\n  \"forensics</w>\": 38763,\n  \"forest\": 18760,\n  \"forest</w>\": 4167,\n  \"forestation</w>\": 33939,\n  \"forestry</w>\": 26281,\n  \"forests</w>\": 14095,\n  \"forever\": 14748,\n  \"forever</w>\": 3225,\n  \"forevery\": 40605,\n  \"forex\": 40200,\n  \"forex</w>\": 17395,\n  \"forfe\": 44871,\n  \"forge</w>\": 19232,\n  \"forged</w>\": 28105,\n  \"forget\": 46153,\n  \"forget</w>\": 2678,\n  \"forgets</w>\": 35613,\n  \"forgetting</w>\": 25452,\n  \"forgi\": 22080,\n  \"forgive</w>\": 15332,\n  \"forgiven</w>\": 44894,\n  \"forgiveness</w>\": 23585,\n  \"forgood</w>\": 39169,\n  \"forgot</w>\": 6483,\n  \"forgotten</w>\": 7994,\n  \"fork\": 24501,\n  \"fork</w>\": 13700,\n  \"forkids</w>\": 48571,\n  \"forklift</w>\": 43202,\n  \"forks</w>\": 28769,\n  \"forlife</w>\": 17624,\n  \"form\": 1157,\n  \"form</w>\": 1907,\n  \"forma</w>\": 38829,\n  \"formal</w>\": 12978,\n  \"formally</w>\": 24867,\n  \"format\": 16252,\n  \"format</w>\": 11874,\n  \"formation</w>\": 2510,\n  \"formations</w>\": 37715,\n  \"formative</w>\": 48882,\n  \"formats</w>\": 32085,\n  \"forme</w>\": 42085,\n  \"formed</w>\": 6528,\n  \"former</w>\": 2276,\n  \"formerly</w>\": 20866,\n  \"formid\": 38599,\n  \"formidable</w>\": 39834,\n  \"forming</w>\": 15443,\n  \"formity</w>\": 42290,\n  \"forms</w>\": 5161,\n  \"formu\": 8689,\n  \"formul\": 23923,\n  \"formula\": 24485,\n  \"formula</w>\": 10776,\n  \"formulae</w>\": 34586,\n  \"formulated</w>\": 45066,\n  \"forre\": 38876,\n  \"forrest</w>\": 25205,\n  \"forrester</w>\": 45338,\n  \"forsa\": 48958,\n  \"forsale</w>\": 13303,\n  \"forster</w>\": 42923,\n  \"forsy\": 29629,\n  \"forsyth</w>\": 40952,\n  \"fort\": 12300,\n  \"fort</w>\": 2921,\n  \"forte\": 44350,\n  \"forte</w>\": 27367,\n  \"forth\": 17068,\n  \"forth</w>\": 11932,\n  \"forthcoming</w>\": 19989,\n  \"forthe\": 12521,\n  \"forti\": 26984,\n  \"fortified</w>\": 46486,\n  \"fortn\": 14428,\n  \"fortnight</w>\": 39235,\n  \"fortnite\": 38734,\n  \"fortnite</w>\": 17890,\n  \"fortress</w>\": 19988,\n  \"fortun\": 6950,\n  \"fortunate</w>\": 19898,\n  \"fortunately</w>\": 34358,\n  \"fortune\": 40931,\n  \"fortune</w>\": 11451,\n  \"fortunes</w>\": 41989,\n  \"forty</w>\": 24399,\n  \"forum\": 37851,\n  \"forum</w>\": 4538,\n  \"forums</w>\": 31518,\n  \"forwar\": 34364,\n  \"forward\": 47031,\n  \"forward</w>\": 2342,\n  \"forwards</w>\": 38974,\n  \"foryou</w>\": 35150,\n  \"forz\": 46056,\n  \"forza\": 33293,\n  \"forza</w>\": 28089,\n  \"fos\": 36925,\n  \"fos</w>\": 22081,\n  \"foss\": 14240,\n  \"foss</w>\": 37911,\n  \"fossil\": 20419,\n  \"fossil</w>\": 15202,\n  \"fossilfriday</w>\": 26079,\n  \"fossils</w>\": 30652,\n  \"foster\": 26778,\n  \"foster</w>\": 8139,\n  \"fostering</w>\": 35996,\n  \"fosters</w>\": 37644,\n  \"foto\": 15908,\n  \"foto</w>\": 12823,\n  \"fotogra\": 23687,\n  \"fotografia</w>\": 40256,\n  \"fotos</w>\": 26124,\n  \"fou\": 14516,\n  \"fought</w>\": 10844,\n  \"foul</w>\": 19784,\n  \"foun\": 3154,\n  \"found\": 3454,\n  \"found</w>\": 1546,\n  \"foundation</w>\": 4058,\n  \"foundations</w>\": 25219,\n  \"founded</w>\": 12240,\n  \"founder</w>\": 5145,\n  \"founders</w>\": 14602,\n  \"founding</w>\": 15317,\n  \"foundry</w>\": 31426,\n  \"fountain\": 44863,\n  \"fountain</w>\": 13405,\n  \"fountains</w>\": 37411,\n  \"four\": 5113,\n  \"four</w>\": 2721,\n  \"foursquare</w>\": 34484,\n  \"fourteen</w>\": 46255,\n  \"fourth</w>\": 7516,\n  \"fourthofjuly</w>\": 47805,\n  \"fow\": 17084,\n  \"fowl</w>\": 31685,\n  \"fowler</w>\": 20980,\n  \"fox\": 5007,\n  \"fox</w>\": 3240,\n  \"foxandfriends</w>\": 45841,\n  \"foxes</w>\": 24145,\n  \"foxnews</w>\": 18830,\n  \"foxsports</w>\": 39267,\n  \"foxtv</w>\": 49396,\n  \"foxx</w>\": 32993,\n  \"foxy</w>\": 27945,\n  \"foy</w>\": 30284,\n  \"foyer</w>\": 38011,\n  \"foyle</w>\": 47902,\n  \"fp\": 28058,\n  \"fp</w>\": 8941,\n  \"fpl</w>\": 27970,\n  \"fpp</w>\": 36464,\n  \"fps</w>\": 25300,\n  \"fpv</w>\": 43175,\n  \"fr\": 936,\n  \"fr</w>\": 5512,\n  \"fra\": 3368,\n  \"fra</w>\": 15644,\n  \"frac\": 15607,\n  \"fracking</w>\": 21894,\n  \"fractal</w>\": 46471,\n  \"fraction</w>\": 26788,\n  \"fractu\": 25847,\n  \"fracture</w>\": 28995,\n  \"fractured</w>\": 37421,\n  \"fractures</w>\": 46213,\n  \"frag\": 13093,\n  \"fragile</w>\": 23579,\n  \"fragment</w>\": 39209,\n  \"fragments</w>\": 41424,\n  \"fragr\": 15403,\n  \"fragrance</w>\": 17874,\n  \"fragrances</w>\": 44567,\n  \"fragrant</w>\": 37030,\n  \"fram\": 27987,\n  \"frame\": 11029,\n  \"frame</w>\": 6481,\n  \"framed</w>\": 13135,\n  \"frames</w>\": 15479,\n  \"framework</w>\": 13195,\n  \"frameworks</w>\": 43136,\n  \"framing</w>\": 24539,\n  \"frampton</w>\": 41733,\n  \"fran\": 2118,\n  \"fran</w>\": 18878,\n  \"franc\": 3872,\n  \"franc</w>\": 42340,\n  \"franca\": 48952,\n  \"france\": 12045,\n  \"france</w>\": 3552,\n  \"frances</w>\": 20803,\n  \"francesca</w>\": 32327,\n  \"francesco</w>\": 25816,\n  \"franch\": 11756,\n  \"franchi\": 46438,\n  \"franchise</w>\": 13664,\n  \"franci\": 46458,\n  \"francis\": 22187,\n  \"francis</w>\": 7660,\n  \"francisco</w>\": 6887,\n  \"franco\": 17934,\n  \"franco</w>\": 17052,\n  \"francois</w>\": 29317,\n  \"frank\": 5390,\n  \"frank</w>\": 5229,\n  \"franken\": 20487,\n  \"franken</w>\": 48252,\n  \"frankenstein</w>\": 26410,\n  \"frankfur\": 17442,\n  \"frankfurt</w>\": 18598,\n  \"franki\": 39227,\n  \"frankie\": 38373,\n  \"frankie</w>\": 16215,\n  \"franklin\": 40935,\n  \"franklin</w>\": 9999,\n  \"frankly</w>\": 38015,\n  \"franks</w>\": 42855,\n  \"frans</w>\": 47892,\n  \"franz</w>\": 25449,\n  \"franÃ§\": 38381,\n  \"fraser\": 39082,\n  \"fraser</w>\": 16754,\n  \"frat\": 15225,\n  \"frat</w>\": 39292,\n  \"fraternity</w>\": 24433,\n  \"frau\": 23063,\n  \"fraud\": 40647,\n  \"fraud</w>\": 9961,\n  \"fraudul\": 42655,\n  \"fraudulent</w>\": 47408,\n  \"fray</w>\": 41154,\n  \"frazier</w>\": 32841,\n  \"frc</w>\": 41507,\n  \"fre\": 821,\n  \"fre</w>\": 43165,\n  \"freak\": 20352,\n  \"freak</w>\": 13701,\n  \"freaked</w>\": 43511,\n  \"freakin</w>\": 23900,\n  \"freaking</w>\": 11992,\n  \"freaks</w>\": 27009,\n  \"freaky</w>\": 31583,\n  \"freck\": 33328,\n  \"freckles</w>\": 48036,\n  \"fred\": 9486,\n  \"fred</w>\": 6678,\n  \"freddie\": 41890,\n  \"freddie</w>\": 17014,\n  \"freddy</w>\": 24394,\n  \"freder\": 10745,\n  \"frederic</w>\": 41165,\n  \"frederick\": 37103,\n  \"frederick</w>\": 18570,\n  \"fredo</w>\": 48241,\n  \"free\": 2065,\n  \"free</w>\": 1139,\n  \"freebie</w>\": 35865,\n  \"freebies</w>\": 28630,\n  \"freec\": 46569,\n  \"freed\": 12585,\n  \"freed</w>\": 23392,\n  \"freedom\": 17992,\n  \"freedom</w>\": 4511,\n  \"freedoms</w>\": 32500,\n  \"freef\": 48678,\n  \"freel\": 14174,\n  \"freelance</w>\": 21942,\n  \"freely</w>\": 24436,\n  \"freeman</w>\": 16450,\n  \"freep\": 32499,\n  \"freepalestine</w>\": 39242,\n  \"freer\": 44676,\n  \"frees\": 27455,\n  \"freestyle</w>\": 15594,\n  \"freeway</w>\": 24927,\n  \"freeze</w>\": 14187,\n  \"freezer</w>\": 25390,\n  \"freezing</w>\": 12499,\n  \"frei\": 30183,\n  \"freight</w>\": 17023,\n  \"fremantle</w>\": 48012,\n  \"fremont</w>\": 34578,\n  \"fren\": 2919,\n  \"french\": 13118,\n  \"french</w>\": 3461,\n  \"frenzy</w>\": 30084,\n  \"frequ\": 9211,\n  \"frequencies</w>\": 45319,\n  \"frequency</w>\": 18825,\n  \"frequent</w>\": 19836,\n  \"frequently</w>\": 22434,\n  \"fresco</w>\": 31609,\n  \"fresh\": 4065,\n  \"fresh</w>\": 2975,\n  \"fresher</w>\": 49284,\n  \"freshers</w>\": 35810,\n  \"freshest</w>\": 46809,\n  \"freshly</w>\": 16081,\n  \"freshman</w>\": 9381,\n  \"freshmen</w>\": 21292,\n  \"freshness</w>\": 45872,\n  \"freshwater</w>\": 24803,\n  \"fresno\": 40879,\n  \"fresno</w>\": 20995,\n  \"fret</w>\": 40510,\n  \"freud</w>\": 40787,\n  \"frey\": 22136,\n  \"frey</w>\": 9082,\n  \"fri\": 815,\n  \"fri</w>\": 6882,\n  \"friars</w>\": 30513,\n  \"fric\": 18981,\n  \"frick</w>\": 46304,\n  \"friction</w>\": 38563,\n  \"frid</w>\": 46388,\n  \"frida</w>\": 36001,\n  \"friday\": 6350,\n  \"friday</w>\": 1461,\n  \"fridayfeeling</w>\": 11952,\n  \"fridaymotivation</w>\": 38544,\n  \"fridaynight\": 44858,\n  \"fridayreads</w>\": 37736,\n  \"fridays</w>\": 15589,\n  \"fridaythe</w>\": 47642,\n  \"fridge</w>\": 13491,\n  \"fridges</w>\": 40734,\n  \"frie\": 36999,\n  \"fried\": 13743,\n  \"fried</w>\": 7310,\n  \"friedman</w>\": 29402,\n  \"friedrich</w>\": 34171,\n  \"friend\": 3017,\n  \"friend</w>\": 1625,\n  \"friendly\": 44612,\n  \"friendly</w>\": 4681,\n  \"friends\": 38875,\n  \"friends</w>\": 1574,\n  \"friendship\": 42674,\n  \"friendship</w>\": 7679,\n  \"friendships</w>\": 28840,\n  \"fries</w>\": 11369,\n  \"frifotos</w>\": 40493,\n  \"friger\": 20785,\n  \"friggin</w>\": 48300,\n  \"frigh\": 34831,\n  \"fright\": 24277,\n  \"fright</w>\": 40207,\n  \"frightened</w>\": 47136,\n  \"frightening</w>\": 39290,\n  \"fringe</w>\": 10640,\n  \"fris\": 37252,\n  \"frisbee</w>\": 45768,\n  \"frisco</w>\": 35945,\n  \"frit\": 34614,\n  \"fritz</w>\": 29860,\n  \"friyay</w>\": 38887,\n  \"frm</w>\": 12951,\n  \"fro\": 626,\n  \"fro</w>\": 26603,\n  \"frock</w>\": 45306,\n  \"frog\": 26494,\n  \"frog</w>\": 11438,\n  \"frogs</w>\": 20781,\n  \"from\": 8330,\n  \"from</w>\": 633,\n  \"frome</w>\": 48691,\n  \"fromhome</w>\": 41477,\n  \"fromthe\": 18756,\n  \"fron\": 1847,\n  \"fron</w>\": 18036,\n  \"front\": 10996,\n  \"front</w>\": 2184,\n  \"frontal</w>\": 35794,\n  \"frontier</w>\": 18253,\n  \"frontiers</w>\": 38396,\n  \"frontline</w>\": 29589,\n  \"frontman</w>\": 36775,\n  \"fronts</w>\": 26846,\n  \"froome</w>\": 48560,\n  \"frosh</w>\": 47069,\n  \"frost\": 39420,\n  \"frost</w>\": 11619,\n  \"frosted</w>\": 35988,\n  \"frosting</w>\": 33872,\n  \"frosty</w>\": 22760,\n  \"froze</w>\": 47788,\n  \"frozen\": 42464,\n  \"frozen</w>\": 8507,\n  \"frs</w>\": 26216,\n  \"fru\": 3248,\n  \"fruit\": 16771,\n  \"fruit</w>\": 5190,\n  \"fruitful</w>\": 31494,\n  \"fruits</w>\": 13282,\n  \"fruity</w>\": 22320,\n  \"frustr\": 16046,\n  \"frustrated</w>\": 25111,\n  \"frustrating</w>\": 31342,\n  \"frustration</w>\": 30535,\n  \"fry\": 33914,\n  \"fry</w>\": 13686,\n  \"fryer</w>\": 49217,\n  \"frying</w>\": 38516,\n  \"fs\": 23699,\n  \"fs</w>\": 3854,\n  \"fsa</w>\": 33373,\n  \"fsu\": 44185,\n  \"fsu</w>\": 19317,\n  \"ft\": 3391,\n  \"ft</w>\": 981,\n  \"fta</w>\": 41975,\n  \"ftc</w>\": 33752,\n  \"fted</w>\": 5612,\n  \"fter</w>\": 25063,\n  \"fthe\": 22886,\n  \"ftheday</w>\": 9823,\n  \"fting</w>\": 6174,\n  \"fton</w>\": 26605,\n  \"ftp</w>\": 42649,\n  \"fts</w>\": 3767,\n  \"ftse</w>\": 46717,\n  \"ftw</w>\": 19298,\n  \"fty</w>\": 17494,\n  \"fu\": 665,\n  \"fu</w>\": 9098,\n  \"fuch\": 42617,\n  \"fudge</w>\": 24270,\n  \"fue</w>\": 43723,\n  \"fuego</w>\": 41500,\n  \"fuel\": 21113,\n  \"fuel</w>\": 5945,\n  \"fueled</w>\": 28792,\n  \"fueling</w>\": 38793,\n  \"fuelled</w>\": 48357,\n  \"fuels</w>\": 19365,\n  \"fuentes</w>\": 44393,\n  \"fuer\": 29645,\n  \"fug\": 29227,\n  \"fugitive</w>\": 39257,\n  \"fuji\": 15573,\n  \"fuji</w>\": 21634,\n  \"fujifilm</w>\": 24765,\n  \"fuk</w>\": 31051,\n  \"fuku\": 20728,\n  \"fukushima</w>\": 33929,\n  \"ful\": 1814,\n  \"ful</w>\": 857,\n  \"fulbright</w>\": 41834,\n  \"fulfill\": 43675,\n  \"fulfill</w>\": 27467,\n  \"fulfilled</w>\": 29919,\n  \"fulfilling</w>\": 30621,\n  \"fulfillment</w>\": 45573,\n  \"fulham</w>\": 25574,\n  \"full\": 9407,\n  \"full</w>\": 1476,\n  \"fuller</w>\": 20225,\n  \"fullerton</w>\": 42822,\n  \"fullest</w>\": 35603,\n  \"fully\": 39142,\n  \"fully</w>\": 2401,\n  \"fulness</w>\": 10526,\n  \"fuls</w>\": 41606,\n  \"fulton</w>\": 26725,\n  \"fum</w>\": 38393,\n  \"fumble</w>\": 49373,\n  \"fun\": 1229,\n  \"fun</w>\": 1499,\n  \"func\": 8679,\n  \"function</w>\": 8093,\n  \"functional</w>\": 12885,\n  \"functionality</w>\": 33316,\n  \"functioning</w>\": 25479,\n  \"functions</w>\": 18001,\n  \"fund\": 19089,\n  \"fund</w>\": 4877,\n  \"fundam\": 11670,\n  \"fundament\": 18852,\n  \"fundamental</w>\": 17627,\n  \"fundamentally</w>\": 45378,\n  \"fundamentals</w>\": 27887,\n  \"funday</w>\": 15439,\n  \"funded</w>\": 10588,\n  \"funding</w>\": 5588,\n  \"fundra\": 6201,\n  \"fundraiser</w>\": 10049,\n  \"fundraising</w>\": 10755,\n  \"funds</w>\": 7066,\n  \"funer\": 40693,\n  \"funeral</w>\": 10606,\n  \"funfact</w>\": 31596,\n  \"funfactfriday</w>\": 40710,\n  \"fungal</w>\": 38838,\n  \"fungi</w>\": 27837,\n  \"fungus</w>\": 30677,\n  \"funk\": 37353,\n  \"funk</w>\": 13372,\n  \"funko\": 49402,\n  \"funko</w>\": 23697,\n  \"funky</w>\": 16492,\n  \"funnel</w>\": 27862,\n  \"funnier</w>\": 42232,\n  \"funniest</w>\": 15557,\n  \"funny\": 19124,\n  \"funny</w>\": 3789,\n  \"funrun</w>\": 34185,\n  \"fur\": 2395,\n  \"fur</w>\": 9686,\n  \"furi\": 40816,\n  \"furious</w>\": 17522,\n  \"furman</w>\": 49238,\n  \"furn\": 21348,\n  \"furnace</w>\": 31913,\n  \"furnished</w>\": 37388,\n  \"furnitu\": 45696,\n  \"furniture</w>\": 7993,\n  \"furry\": 33414,\n  \"furry</w>\": 15351,\n  \"fursuit\": 25306,\n  \"fursuit</w>\": 43083,\n  \"fursuitfriday</w>\": 27917,\n  \"further</w>\": 5583,\n  \"fury</w>\": 14404,\n  \"fus</w>\": 18419,\n  \"fuse</w>\": 23386,\n  \"fused</w>\": 38994,\n  \"fusion\": 44661,\n  \"fusion</w>\": 9364,\n  \"fuss</w>\": 26331,\n  \"fut\": 21460,\n  \"fut</w>\": 34049,\n  \"futbol</w>\": 33014,\n  \"futsal</w>\": 20558,\n  \"futu\": 33454,\n  \"futur\": 38840,\n  \"future\": 7959,\n  \"future</w>\": 1904,\n  \"futureof\": 22599,\n  \"futureofwork</w>\": 33202,\n  \"futures</w>\": 13488,\n  \"futuri\": 19068,\n  \"futurism</w>\": 48435,\n  \"futurist</w>\": 48086,\n  \"futuristic</w>\": 30987,\n  \"fuzz\": 47128,\n  \"fuzz</w>\": 40443,\n  \"fuzzy</w>\": 25876,\n  \"fv\": 29795,\n  \"fw\": 23934,\n  \"fw</w>\": 5277,\n  \"fwd</w>\": 27052,\n  \"fx\": 17807,\n  \"fx</w>\": 9025,\n  \"fy\": 8440,\n  \"fy</w>\": 2702,\n  \"fyi</w>\": 16014,\n  \"fying</w>\": 5294,\n  \"fz</w>\": 46400,\n  \"fÃ©\": 34072,\n  \"g\": 70,\n  \"g</w>\": 326,\n  \"ga\": 1275,\n  \"ga</w>\": 1531,\n  \"gaa</w>\": 10715,\n  \"gaal</w>\": 40867,\n  \"gaard</w>\": 24645,\n  \"gab\": 3927,\n  \"gab</w>\": 37382,\n  \"gabbana</w>\": 36272,\n  \"gabby\": 48115,\n  \"gabby</w>\": 24567,\n  \"gabe</w>\": 18916,\n  \"gabi</w>\": 41931,\n  \"gable</w>\": 33387,\n  \"gables</w>\": 40928,\n  \"gabri\": 8311,\n  \"gabriel\": 31684,\n  \"gabriel</w>\": 13244,\n  \"gabrielle</w>\": 33572,\n  \"gaby</w>\": 46420,\n  \"gac</w>\": 32520,\n  \"gad\": 7786,\n  \"gad</w>\": 44651,\n  \"gadget</w>\": 25525,\n  \"gadgets</w>\": 22840,\n  \"gado</w>\": 29489,\n  \"gae</w>\": 22003,\n  \"gael</w>\": 35663,\n  \"gaelic</w>\": 31173,\n  \"gaf\": 21354,\n  \"gaf</w>\": 32670,\n  \"gag\": 14121,\n  \"gag</w>\": 18844,\n  \"gaga</w>\": 9782,\n  \"gage</w>\": 21081,\n  \"gah</w>\": 27750,\n  \"gai\": 24214,\n  \"gai</w>\": 25153,\n  \"gaia</w>\": 41269,\n  \"gail\": 41160,\n  \"gail</w>\": 27676,\n  \"gain\": 21536,\n  \"gain</w>\": 6202,\n  \"gaine\": 35747,\n  \"gained</w>\": 14489,\n  \"gaines</w>\": 49225,\n  \"gainesville</w>\": 40427,\n  \"gaining</w>\": 15260,\n  \"gains\": 42751,\n  \"gains</w>\": 12107,\n  \"gal\": 2001,\n  \"gal</w>\": 4488,\n  \"gala</w>\": 7211,\n  \"galac\": 18864,\n  \"galactic</w>\": 25514,\n  \"galap\": 41115,\n  \"galapagos</w>\": 44057,\n  \"galat\": 39853,\n  \"galatasar\": 42413,\n  \"galatasaray</w>\": 47787,\n  \"galax\": 5647,\n  \"galaxies</w>\": 32435,\n  \"galaxy\": 32130,\n  \"galaxy</w>\": 6545,\n  \"gale\": 37658,\n  \"gale</w>\": 21380,\n  \"galerie</w>\": 44539,\n  \"gales</w>\": 48633,\n  \"gali\": 17546,\n  \"gali</w>\": 30552,\n  \"galicia</w>\": 47927,\n  \"galileo</w>\": 39671,\n  \"gall\": 3011,\n  \"gall</w>\": 33374,\n  \"galla\": 16847,\n  \"gallagher</w>\": 19168,\n  \"galleria</w>\": 40656,\n  \"galleries</w>\": 22304,\n  \"gallery\": 36648,\n  \"gallery</w>\": 3830,\n  \"galley</w>\": 48917,\n  \"galli\": 22568,\n  \"gallipoli</w>\": 47249,\n  \"gallo\": 37350,\n  \"gallo</w>\": 33265,\n  \"gallon</w>\": 24615,\n  \"gallons</w>\": 29335,\n  \"galloway</w>\": 27796,\n  \"galore</w>\": 22286,\n  \"gals</w>\": 20125,\n  \"galvani\": 46046,\n  \"galve\": 34328,\n  \"galveston</w>\": 36003,\n  \"galway\": 38045,\n  \"galway</w>\": 17112,\n  \"gam\": 1162,\n  \"gam</w>\": 34195,\n  \"gama</w>\": 35873,\n  \"gambia</w>\": 32988,\n  \"gamble</w>\": 26121,\n  \"gambling</w>\": 20287,\n  \"game\": 2882,\n  \"game</w>\": 1063,\n  \"gameart</w>\": 31490,\n  \"gameboy</w>\": 40951,\n  \"gamecube</w>\": 44079,\n  \"gameday</w>\": 9241,\n  \"gamedev</w>\": 7544,\n  \"gameinsight</w>\": 42626,\n  \"gameof\": 10987,\n  \"gameofthrones</w>\": 11822,\n  \"gameon</w>\": 47691,\n  \"gameplay</w>\": 16794,\n  \"gamer\": 12595,\n  \"gamer</w>\": 11598,\n  \"gamergate</w>\": 25961,\n  \"gamers</w>\": 16166,\n  \"gamersunite</w>\": 26423,\n  \"games\": 18551,\n  \"games</w>\": 1955,\n  \"gamescom</w>\": 37003,\n  \"gamestop</w>\": 39436,\n  \"gametime</w>\": 45899,\n  \"gami</w>\": 42025,\n  \"gamification</w>\": 48908,\n  \"gaming\": 28803,\n  \"gaming</w>\": 4017,\n  \"gamma</w>\": 22180,\n  \"gamo</w>\": 39325,\n  \"gan\": 1822,\n  \"gan</w>\": 1670,\n  \"gand\": 8399,\n  \"ganda</w>\": 27261,\n  \"gander</w>\": 44508,\n  \"gandhi</w>\": 12322,\n  \"ganesh</w>\": 30362,\n  \"ganesha</w>\": 45185,\n  \"gang\": 8066,\n  \"gang</w>\": 5674,\n  \"ganga</w>\": 36275,\n  \"gangnam</w>\": 46777,\n  \"gangs</w>\": 29844,\n  \"gangsta</w>\": 37365,\n  \"gangster</w>\": 26514,\n  \"gani</w>\": 48324,\n  \"gann</w>\": 45665,\n  \"gannon</w>\": 45837,\n  \"gano</w>\": 25304,\n  \"gao</w>\": 26556,\n  \"gaon</w>\": 19279,\n  \"gap\": 29906,\n  \"gap</w>\": 7609,\n  \"gaps</w>\": 25296,\n  \"gar\": 1099,\n  \"gar</w>\": 5824,\n  \"gara</w>\": 28710,\n  \"garage</w>\": 8474,\n  \"garbage</w>\": 13760,\n  \"garci\": 44658,\n  \"garcia</w>\": 10529,\n  \"gard\": 7751,\n  \"gard</w>\": 21003,\n  \"garda</w>\": 31906,\n  \"garde</w>\": 22649,\n  \"garden\": 4674,\n  \"garden</w>\": 2756,\n  \"gardenchat</w>\": 46292,\n  \"gardener</w>\": 28554,\n  \"gardeners</w>\": 38205,\n  \"gardening</w>\": 10483,\n  \"gardens</w>\": 6152,\n  \"gardiner</w>\": 43121,\n  \"gardner</w>\": 18710,\n  \"gare\": 5633,\n  \"gare</w>\": 48402,\n  \"gareth\": 37140,\n  \"gareth</w>\": 18175,\n  \"garfield</w>\": 26728,\n  \"garh</w>\": 16762,\n  \"gari\": 40898,\n  \"gari</w>\": 43080,\n  \"garis</w>\": 37839,\n  \"garland</w>\": 23418,\n  \"garlic</w>\": 9685,\n  \"garment</w>\": 31418,\n  \"garments</w>\": 43341,\n  \"garmin</w>\": 39885,\n  \"garner</w>\": 20340,\n  \"garnet</w>\": 37669,\n  \"garo</w>\": 30388,\n  \"garrett</w>\": 15881,\n  \"garri\": 21764,\n  \"garrison</w>\": 30108,\n  \"garros</w>\": 40425,\n  \"garry</w>\": 24398,\n  \"gars</w>\": 12055,\n  \"gart\": 18380,\n  \"gart</w>\": 18751,\n  \"garten</w>\": 14684,\n  \"garter</w>\": 48420,\n  \"garth\": 45398,\n  \"garth</w>\": 24469,\n  \"gartner\": 43334,\n  \"gartner</w>\": 29678,\n  \"garty</w>\": 46383,\n  \"garu</w>\": 31140,\n  \"garvey</w>\": 39511,\n  \"garwal</w>\": 38623,\n  \"gary\": 10535,\n  \"gary</w>\": 4516,\n  \"garza</w>\": 49393,\n  \"gas\": 5047,\n  \"gas</w>\": 2474,\n  \"gases</w>\": 36971,\n  \"gasoline</w>\": 27691,\n  \"gasp</w>\": 43762,\n  \"gaston</w>\": 40669,\n  \"gastri\": 49197,\n  \"gastro\": 23740,\n  \"gastron\": 30699,\n  \"gastronomy</w>\": 46987,\n  \"gat\": 5314,\n  \"gat</w>\": 18941,\n  \"gata</w>\": 44575,\n  \"gate\": 8071,\n  \"gate</w>\": 3302,\n  \"gated</w>\": 23997,\n  \"gates</w>\": 9472,\n  \"gateshead</w>\": 40051,\n  \"gateway\": 45221,\n  \"gateway</w>\": 14943,\n  \"gather\": 36345,\n  \"gather</w>\": 12602,\n  \"gathered</w>\": 14646,\n  \"gathering</w>\": 9197,\n  \"gatherings</w>\": 48096,\n  \"gathers</w>\": 39250,\n  \"gating</w>\": 27561,\n  \"gation</w>\": 11095,\n  \"gations</w>\": 33906,\n  \"gato</w>\": 44492,\n  \"gator\": 20216,\n  \"gator</w>\": 16390,\n  \"gatorade</w>\": 36354,\n  \"gators</w>\": 17173,\n  \"gatory</w>\": 24796,\n  \"gatsby</w>\": 32586,\n  \"gatwick</w>\": 37122,\n  \"gau\": 5919,\n  \"gau</w>\": 43068,\n  \"gauge</w>\": 18728,\n  \"gaunt\": 31862,\n  \"gauntlet</w>\": 37163,\n  \"gautam\": 45853,\n  \"gautam</w>\": 31356,\n  \"gauteng</w>\": 40333,\n  \"gav\": 8966,\n  \"gave</w>\": 3485,\n  \"gavin\": 32974,\n  \"gavin</w>\": 16389,\n  \"gaw\": 15405,\n  \"gawd</w>\": 43239,\n  \"gawx</w>\": 43420,\n  \"gay\": 7460,\n  \"gay</w>\": 5627,\n  \"gaya</w>\": 39477,\n  \"gaye</w>\": 41401,\n  \"gayle</w>\": 29998,\n  \"gayo</w>\": 36768,\n  \"gays</w>\": 28001,\n  \"gaz\": 4837,\n  \"gaz</w>\": 36475,\n  \"gaza\": 38391,\n  \"gaza</w>\": 10112,\n  \"gazaunderattack</w>\": 42458,\n  \"gaze</w>\": 23212,\n  \"gazette</w>\": 20443,\n  \"gazing</w>\": 28373,\n  \"gb\": 8727,\n  \"gb</w>\": 4619,\n  \"gba</w>\": 18528,\n  \"gbbo</w>\": 34474,\n  \"gbc</w>\": 42993,\n  \"gbp</w>\": 27391,\n  \"gbr</w>\": 31984,\n  \"gby</w>\": 40509,\n  \"gc\": 8577,\n  \"gc</w>\": 6043,\n  \"gcc</w>\": 26804,\n  \"gcse</w>\": 28763,\n  \"gcu</w>\": 34137,\n  \"gd\": 13264,\n  \"gd</w>\": 14604,\n  \"gdc</w>\": 32793,\n  \"gden</w>\": 44928,\n  \"gdp</w>\": 17100,\n  \"gdpr</w>\": 22963,\n  \"ge\": 619,\n  \"ge</w>\": 710,\n  \"gea</w>\": 26790,\n  \"gear\": 15532,\n  \"gear</w>\": 4802,\n  \"gearbox</w>\": 42454,\n  \"geared</w>\": 33903,\n  \"gearing</w>\": 19027,\n  \"gears</w>\": 21147,\n  \"geaux\": 36313,\n  \"gecko</w>\": 38616,\n  \"ged\": 17252,\n  \"ged</w>\": 3480,\n  \"geddon</w>\": 31720,\n  \"gedly</w>\": 13991,\n  \"gee\": 9806,\n  \"gee</w>\": 9071,\n  \"geek\": 17920,\n  \"geek</w>\": 7135,\n  \"geeks</w>\": 20110,\n  \"geeky</w>\": 47332,\n  \"geel\": 25906,\n  \"geelong</w>\": 34555,\n  \"gees</w>\": 38088,\n  \"geese</w>\": 26413,\n  \"geez</w>\": 42394,\n  \"geh\": 30320,\n  \"geist</w>\": 38290,\n  \"gel\": 7343,\n  \"gel</w>\": 5697,\n  \"gelato</w>\": 29577,\n  \"gels</w>\": 42552,\n  \"gely</w>\": 14637,\n  \"gem\": 14261,\n  \"gem</w>\": 7613,\n  \"gement</w>\": 19495,\n  \"gemini</w>\": 23086,\n  \"gemma</w>\": 23952,\n  \"gems</w>\": 14355,\n  \"gemstone</w>\": 27747,\n  \"gemstones</w>\": 43972,\n  \"gen\": 1024,\n  \"gen</w>\": 3278,\n  \"gence</w>\": 16088,\n  \"gency</w>\": 5245,\n  \"gend\": 33247,\n  \"gender\": 22976,\n  \"gender</w>\": 5906,\n  \"gendere\": 35824,\n  \"genderequality</w>\": 43338,\n  \"gene\": 5822,\n  \"gene</w>\": 7962,\n  \"genealo\": 24142,\n  \"genealogy</w>\": 29381,\n  \"gener\": 1832,\n  \"general\": 20576,\n  \"general</w>\": 3658,\n  \"generally</w>\": 19256,\n  \"generals</w>\": 30296,\n  \"generate</w>\": 16896,\n  \"generated</w>\": 19450,\n  \"generates</w>\": 33938,\n  \"generating</w>\": 23882,\n  \"generation\": 41211,\n  \"generation</w>\": 4883,\n  \"generational</w>\": 34506,\n  \"generations</w>\": 12247,\n  \"generative</w>\": 29472,\n  \"generator</w>\": 19399,\n  \"generators</w>\": 41917,\n  \"generic</w>\": 26978,\n  \"generosity</w>\": 23015,\n  \"generous</w>\": 12570,\n  \"generously</w>\": 35113,\n  \"genes</w>\": 19683,\n  \"genesis</w>\": 13518,\n  \"genetic\": 47746,\n  \"genetic</w>\": 13578,\n  \"genetically</w>\": 36745,\n  \"genetics</w>\": 18276,\n  \"geneva</w>\": 14799,\n  \"genevie\": 41633,\n  \"genevieve</w>\": 46584,\n  \"geni\": 22334,\n  \"genic</w>\": 15750,\n  \"genie</w>\": 24221,\n  \"genital</w>\": 32960,\n  \"genius</w>\": 8235,\n  \"geniuses</w>\": 41406,\n  \"geno\": 41544,\n  \"geno</w>\": 46776,\n  \"genoa</w>\": 43993,\n  \"genoci\": 14687,\n  \"genocide</w>\": 15903,\n  \"genome</w>\": 23991,\n  \"genomic</w>\": 44371,\n  \"genomics</w>\": 26227,\n  \"genre</w>\": 14249,\n  \"genres</w>\": 30340,\n  \"gens</w>\": 17449,\n  \"gent\": 3685,\n  \"gent</w>\": 7139,\n  \"gente</w>\": 34325,\n  \"gentle\": 7262,\n  \"gentle</w>\": 13577,\n  \"gentleman</w>\": 13293,\n  \"gentlemen</w>\": 11692,\n  \"gently</w>\": 17187,\n  \"gento</w>\": 28320,\n  \"gentri\": 41148,\n  \"gentry</w>\": 47225,\n  \"gents</w>\": 18862,\n  \"genu\": 9182,\n  \"genuine</w>\": 12184,\n  \"genuinely</w>\": 20006,\n  \"genus</w>\": 38161,\n  \"geny</w>\": 35323,\n  \"geo\": 5038,\n  \"geo</w>\": 11604,\n  \"geocaching</w>\": 47908,\n  \"geof\": 20629,\n  \"geoff\": 33697,\n  \"geoff</w>\": 20386,\n  \"geoffrey</w>\": 29520,\n  \"geograph\": 45920,\n  \"geographic</w>\": 22635,\n  \"geographical</w>\": 39380,\n  \"geography</w>\": 17101,\n  \"geological</w>\": 38380,\n  \"geology</w>\": 21578,\n  \"geom\": 46135,\n  \"geome\": 12958,\n  \"geometric</w>\": 22419,\n  \"geometry</w>\": 21731,\n  \"geon\": 20844,\n  \"geon</w>\": 7295,\n  \"geons</w>\": 15914,\n  \"geopol\": 39758,\n  \"geor\": 2549,\n  \"georg</w>\": 43126,\n  \"george\": 8377,\n  \"george</w>\": 3296,\n  \"georges</w>\": 25042,\n  \"georgetown</w>\": 22970,\n  \"georgie</w>\": 42115,\n  \"georgina</w>\": 43892,\n  \"geospatial</w>\": 46238,\n  \"geothermal</w>\": 38413,\n  \"geous</w>\": 3068,\n  \"ger\": 1291,\n  \"ger</w>\": 1502,\n  \"gera</w>\": 48867,\n  \"gerald\": 29901,\n  \"gerald</w>\": 13269,\n  \"gerard\": 35979,\n  \"gerard</w>\": 20826,\n  \"gerber</w>\": 45058,\n  \"gered</w>\": 40179,\n  \"geri\": 41664,\n  \"geri</w>\": 46214,\n  \"gering</w>\": 24077,\n  \"germain</w>\": 38786,\n  \"german\": 14972,\n  \"german</w>\": 4710,\n  \"germans</w>\": 28400,\n  \"germany</w>\": 4464,\n  \"germin\": 44721,\n  \"germs</w>\": 47731,\n  \"geronimo</w>\": 45171,\n  \"gerrard</w>\": 26538,\n  \"gerry\": 29825,\n  \"gerry</w>\": 23026,\n  \"gers</w>\": 3314,\n  \"gertrude</w>\": 46950,\n  \"gervais</w>\": 36527,\n  \"gery</w>\": 32845,\n  \"ges</w>\": 3316,\n  \"gest\": 11843,\n  \"gest</w>\": 2033,\n  \"gesture</w>\": 21780,\n  \"gestures</w>\": 43524,\n  \"get\": 5670,\n  \"get</w>\": 779,\n  \"geta\": 13155,\n  \"getaway</w>\": 16131,\n  \"gether</w>\": 27224,\n  \"getic</w>\": 20661,\n  \"getin\": 25822,\n  \"getit\": 44891,\n  \"getit</w>\": 48315,\n  \"getoutside</w>\": 35644,\n  \"gets\": 39448,\n  \"gets</w>\": 2127,\n  \"gett\": 6647,\n  \"gett</w>\": 27965,\n  \"gettable</w>\": 15620,\n  \"gette</w>\": 29800,\n  \"gettin</w>\": 13428,\n  \"getting\": 30885,\n  \"getting</w>\": 1500,\n  \"getty\": 31185,\n  \"getty</w>\": 13965,\n  \"gettys\": 35189,\n  \"gettysburg</w>\": 37062,\n  \"getyour\": 42159,\n  \"gey</w>\": 29289,\n  \"gf\": 28953,\n  \"gf</w>\": 10846,\n  \"gfriend</w>\": 35245,\n  \"gfs</w>\": 37553,\n  \"gg\": 1129,\n  \"gg</w>\": 3286,\n  \"gga</w>\": 26003,\n  \"ggan</w>\": 25626,\n  \"gge\": 21521,\n  \"gge</w>\": 31659,\n  \"gged</w>\": 6095,\n  \"gger\": 12367,\n  \"gger</w>\": 3493,\n  \"ggers</w>\": 7480,\n  \"ggg</w>\": 20143,\n  \"gggg</w>\": 33513,\n  \"ggi</w>\": 21662,\n  \"ggin</w>\": 17160,\n  \"gging</w>\": 4966,\n  \"ggins</w>\": 12444,\n  \"ggle\": 34981,\n  \"ggle</w>\": 11430,\n  \"ggled</w>\": 46328,\n  \"ggles</w>\": 14703,\n  \"ggling</w>\": 16523,\n  \"ggly</w>\": 39407,\n  \"ggs</w>\": 4797,\n  \"ggy\": 24935,\n  \"ggy</w>\": 6476,\n  \"gh\": 583,\n  \"gh</w>\": 790,\n  \"gha\": 10010,\n  \"gha</w>\": 25183,\n  \"gham\": 21456,\n  \"ghan\": 18945,\n  \"ghan</w>\": 6624,\n  \"ghana\": 30330,\n  \"ghana</w>\": 9731,\n  \"ghanaian</w>\": 34223,\n  \"ghani</w>\": 36699,\n  \"ghar\": 37334,\n  \"ghar</w>\": 36973,\n  \"ghat</w>\": 43989,\n  \"ghaz\": 37493,\n  \"ghc</w>\": 42139,\n  \"ghe\": 10754,\n  \"ghe</w>\": 28561,\n  \"ghead</w>\": 40783,\n  \"ghee</w>\": 34794,\n  \"gher\": 21542,\n  \"gher</w>\": 14796,\n  \"ghet\": 18447,\n  \"ghetti</w>\": 17485,\n  \"ghetto</w>\": 22403,\n  \"ghi\": 22436,\n  \"ghi</w>\": 22279,\n  \"ghibli</w>\": 40555,\n  \"ghj\": 38439,\n  \"ghlin</w>\": 24131,\n  \"gho\": 4307,\n  \"ghorn</w>\": 38094,\n  \"ghosh</w>\": 43279,\n  \"ghoshal</w>\": 49134,\n  \"ghost\": 11417,\n  \"ghost</w>\": 7108,\n  \"ghostbusters</w>\": 25462,\n  \"ghostly</w>\": 44901,\n  \"ghosts</w>\": 16737,\n  \"ghou\": 35843,\n  \"ghoul</w>\": 45302,\n  \"ghouse</w>\": 38238,\n  \"ghs</w>\": 14157,\n  \"ght\": 1413,\n  \"ght</w>\": 630,\n  \"ghted</w>\": 4963,\n  \"ghter</w>\": 2427,\n  \"ghters</w>\": 12994,\n  \"ghtful</w>\": 8334,\n  \"ghting</w>\": 3019,\n  \"ghtly</w>\": 6993,\n  \"ghtning</w>\": 39740,\n  \"ghton</w>\": 16353,\n  \"ghts</w>\": 1259,\n  \"ghty\": 20968,\n  \"ghty</w>\": 5866,\n  \"ghu\": 25808,\n  \"ghue</w>\": 45675,\n  \"ghyun</w>\": 25010,\n  \"ghz</w>\": 24325,\n  \"gi\": 707,\n  \"gi</w>\": 4478,\n  \"gia</w>\": 8864,\n  \"giac\": 35444,\n  \"giam\": 39623,\n  \"gian\": 17274,\n  \"gian</w>\": 12866,\n  \"gianni</w>\": 46752,\n  \"giant\": 23668,\n  \"giant</w>\": 4687,\n  \"giants</w>\": 7076,\n  \"giar\": 34241,\n  \"gib\": 9816,\n  \"gibb\": 18964,\n  \"gibbons</w>\": 31974,\n  \"gibbs</w>\": 26488,\n  \"gibility</w>\": 33297,\n  \"gible</w>\": 13159,\n  \"gibr\": 20206,\n  \"gibraltar</w>\": 23988,\n  \"gibson\": 37420,\n  \"gibson</w>\": 12178,\n  \"gic\": 27900,\n  \"gic</w>\": 2570,\n  \"gical</w>\": 32973,\n  \"gically</w>\": 26320,\n  \"gid\": 36774,\n  \"gid</w>\": 21413,\n  \"giddy</w>\": 40894,\n  \"gideon</w>\": 43867,\n  \"gidi</w>\": 30603,\n  \"gie\": 11459,\n  \"gie</w>\": 3991,\n  \"gier</w>\": 28974,\n  \"gies</w>\": 5505,\n  \"gif\": 11363,\n  \"gif</w>\": 11677,\n  \"gifford</w>\": 47850,\n  \"gifs</w>\": 37643,\n  \"gift\": 20569,\n  \"gift</w>\": 2733,\n  \"gifted</w>\": 15110,\n  \"giftide\": 20152,\n  \"giftideas</w>\": 23487,\n  \"gifting</w>\": 39546,\n  \"gifts</w>\": 5836,\n  \"gig\": 26981,\n  \"gig</w>\": 7471,\n  \"gigab\": 34530,\n  \"gigan\": 24104,\n  \"gigantic</w>\": 31507,\n  \"giggle</w>\": 36426,\n  \"giggles</w>\": 42731,\n  \"giggs</w>\": 44692,\n  \"gigi\": 44106,\n  \"gigi</w>\": 26171,\n  \"gigs</w>\": 20316,\n  \"gil\": 3997,\n  \"gil</w>\": 10088,\n  \"gila</w>\": 46952,\n  \"gilbert</w>\": 14154,\n  \"gilded</w>\": 44341,\n  \"giles</w>\": 24802,\n  \"gill\": 14280,\n  \"gill</w>\": 12003,\n  \"gille\": 29610,\n  \"gilles</w>\": 39590,\n  \"gillespie</w>\": 36242,\n  \"gillette</w>\": 38603,\n  \"gilli\": 13695,\n  \"gillian</w>\": 28753,\n  \"gills</w>\": 48851,\n  \"gilmore</w>\": 27603,\n  \"gilt</w>\": 44378,\n  \"gim\": 31284,\n  \"gimm\": 40692,\n  \"gimme</w>\": 21525,\n  \"gin\": 3374,\n  \"gin</w>\": 4941,\n  \"gina</w>\": 15604,\n  \"gine\": 27482,\n  \"ging\": 10829,\n  \"ging</w>\": 3905,\n  \"ginger\": 16287,\n  \"ginger</w>\": 9718,\n  \"gingerbread</w>\": 23692,\n  \"gini</w>\": 35768,\n  \"gino</w>\": 36521,\n  \"gins</w>\": 18328,\n  \"gio\": 16329,\n  \"gio</w>\": 8050,\n  \"gion</w>\": 41226,\n  \"gior\": 14920,\n  \"giorgio</w>\": 33271,\n  \"giorno</w>\": 33310,\n  \"gios</w>\": 41927,\n  \"gious</w>\": 14419,\n  \"giov\": 21404,\n  \"giovanni</w>\": 26574,\n  \"gipp\": 41351,\n  \"gir\": 1077,\n  \"gir</w>\": 25481,\n  \"gira\": 16949,\n  \"giraffe</w>\": 22826,\n  \"giri</w>\": 31709,\n  \"girl\": 3914,\n  \"girl</w>\": 1611,\n  \"girlfriend</w>\": 8217,\n  \"girlfriends</w>\": 30736,\n  \"girlpower</w>\": 37433,\n  \"girls\": 15480,\n  \"girls</w>\": 1917,\n  \"girly</w>\": 29605,\n  \"giro\": 39664,\n  \"giro</w>\": 26454,\n  \"girona</w>\": 47842,\n  \"giroud</w>\": 41177,\n  \"gis\": 16266,\n  \"gis</w>\": 12773,\n  \"gist</w>\": 21241,\n  \"git\": 16060,\n  \"git</w>\": 20918,\n  \"gita</w>\": 40838,\n  \"github</w>\": 31196,\n  \"giu\": 17931,\n  \"giuli\": 29762,\n  \"giuliani</w>\": 47739,\n  \"giuse\": 29385,\n  \"giuseppe</w>\": 33563,\n  \"give\": 4120,\n  \"give</w>\": 1781,\n  \"giveaway</w>\": 5310,\n  \"giveaways</w>\": 18974,\n  \"giveback</w>\": 41385,\n  \"given\": 33323,\n  \"given</w>\": 4302,\n  \"givenchy</w>\": 38245,\n  \"giver</w>\": 43339,\n  \"gives</w>\": 3926,\n  \"giveup</w>\": 35485,\n  \"giving\": 14673,\n  \"giving</w>\": 2339,\n  \"givingback</w>\": 49300,\n  \"givingtuesday</w>\": 23556,\n  \"giz\": 29237,\n  \"gk\": 38953,\n  \"gk</w>\": 18719,\n  \"gl\": 1849,\n  \"gl</w>\": 14751,\n  \"gla\": 1523,\n  \"gla</w>\": 36904,\n  \"glaci\": 14924,\n  \"glacial</w>\": 40782,\n  \"glacier</w>\": 19282,\n  \"glaciers</w>\": 42528,\n  \"glad\": 20841,\n  \"glad</w>\": 4761,\n  \"glades</w>\": 37432,\n  \"gladi\": 21742,\n  \"gladiator</w>\": 38477,\n  \"gladiators</w>\": 41087,\n  \"gladly</w>\": 41598,\n  \"gladys</w>\": 43168,\n  \"glam\": 8738,\n  \"glam</w>\": 16905,\n  \"glamorous</w>\": 22896,\n  \"glamour\": 42876,\n  \"glamour</w>\": 17499,\n  \"glamping</w>\": 46167,\n  \"glan\": 40482,\n  \"glan</w>\": 45844,\n  \"glance</w>\": 26557,\n  \"gland</w>\": 41441,\n  \"glar\": 48535,\n  \"glar</w>\": 41702,\n  \"glare</w>\": 46035,\n  \"glas\": 29935,\n  \"glas</w>\": 43654,\n  \"glasgo\": 6757,\n  \"glasgow\": 29990,\n  \"glasgow</w>\": 7363,\n  \"glass\": 16305,\n  \"glass</w>\": 3313,\n  \"glasses</w>\": 6116,\n  \"glaston\": 26848,\n  \"glastonbury</w>\": 28233,\n  \"glau\": 39171,\n  \"glaze</w>\": 28112,\n  \"glazed</w>\": 24122,\n  \"gle\": 7166,\n  \"gle</w>\": 2865,\n  \"glee\": 32379,\n  \"glee</w>\": 21614,\n  \"glen\": 6158,\n  \"glen</w>\": 11049,\n  \"glend\": 38332,\n  \"glendale</w>\": 33043,\n  \"glenn\": 32004,\n  \"glenn</w>\": 12861,\n  \"gler</w>\": 34649,\n  \"gley</w>\": 21998,\n  \"gli\": 5896,\n  \"gli</w>\": 28791,\n  \"glia</w>\": 22217,\n  \"glide</w>\": 37321,\n  \"glider</w>\": 41636,\n  \"glimp\": 12888,\n  \"glimpse</w>\": 13817,\n  \"glio</w>\": 29785,\n  \"glit\": 21079,\n  \"glitch</w>\": 29563,\n  \"glitter</w>\": 16528,\n  \"glitz</w>\": 44542,\n  \"glo\": 1721,\n  \"glo</w>\": 30474,\n  \"glob\": 13363,\n  \"global\": 6707,\n  \"global</w>\": 2779,\n  \"globalgoals</w>\": 33211,\n  \"globalhealth</w>\": 46751,\n  \"globalization</w>\": 47680,\n  \"globally</w>\": 17775,\n  \"globalwarming</w>\": 46017,\n  \"globe\": 19436,\n  \"globe</w>\": 9368,\n  \"globes</w>\": 38085,\n  \"glock</w>\": 38818,\n  \"glomer\": 43689,\n  \"gloom</w>\": 48594,\n  \"gloomy</w>\": 32199,\n  \"glori\": 7270,\n  \"gloria</w>\": 19244,\n  \"glorious</w>\": 9171,\n  \"glory\": 36107,\n  \"glory</w>\": 7285,\n  \"glos</w>\": 40633,\n  \"gloss\": 38258,\n  \"gloss</w>\": 22014,\n  \"glossy</w>\": 29802,\n  \"glou\": 15989,\n  \"gloucester\": 28133,\n  \"gloucester</w>\": 23835,\n  \"gloucestershire</w>\": 33789,\n  \"glove</w>\": 16078,\n  \"glover</w>\": 21594,\n  \"gloves</w>\": 12363,\n  \"glow\": 30472,\n  \"glow</w>\": 10111,\n  \"glowing</w>\": 18437,\n  \"glows</w>\": 48107,\n  \"glu\": 5952,\n  \"glu</w>\": 32281,\n  \"glucose</w>\": 34642,\n  \"glue</w>\": 22103,\n  \"glued</w>\": 38135,\n  \"gluten\": 15482,\n  \"gluten</w>\": 15524,\n  \"glutenfree</w>\": 16138,\n  \"gly\": 13027,\n  \"glycer\": 48914,\n  \"gm\": 18743,\n  \"gm</w>\": 5918,\n  \"gma</w>\": 18155,\n  \"gmail</w>\": 11119,\n  \"gman\": 41043,\n  \"gman</w>\": 36936,\n  \"gmb\": 35934,\n  \"gmb</w>\": 31799,\n  \"gmbh</w>\": 46877,\n  \"gmc</w>\": 27257,\n  \"gmo</w>\": 23486,\n  \"gms</w>\": 36987,\n  \"gmt</w>\": 13803,\n  \"gn\": 2455,\n  \"gn</w>\": 9831,\n  \"gna</w>\": 23009,\n  \"gnation</w>\": 45912,\n  \"gne</w>\": 25407,\n  \"gni\": 5104,\n  \"gnment</w>\": 25110,\n  \"gno\": 23376,\n  \"gno</w>\": 43686,\n  \"gnocchi</w>\": 48299,\n  \"gnome</w>\": 33643,\n  \"gnon</w>\": 20561,\n  \"go\": 650,\n  \"go</w>\": 861,\n  \"goa</w>\": 14399,\n  \"goal\": 9003,\n  \"goal</w>\": 3321,\n  \"goalie</w>\": 20723,\n  \"goalkeeper</w>\": 16601,\n  \"goals</w>\": 3295,\n  \"goalscorer</w>\": 43547,\n  \"goaltender</w>\": 44151,\n  \"goat\": 34082,\n  \"goat</w>\": 9530,\n  \"goats</w>\": 18393,\n  \"gob\": 29559,\n  \"gobeavs</w>\": 48285,\n  \"goblin</w>\": 26223,\n  \"goblue</w>\": 25232,\n  \"gobucks</w>\": 29175,\n  \"gocougs</w>\": 34202,\n  \"god\": 4190,\n  \"god</w>\": 1731,\n  \"godawgs</w>\": 40436,\n  \"godbless\": 46616,\n  \"godbless</w>\": 44007,\n  \"godd\": 16589,\n  \"goddamn</w>\": 28495,\n  \"goddard</w>\": 37827,\n  \"goddess</w>\": 10808,\n  \"godfather</w>\": 26222,\n  \"godfrey</w>\": 40148,\n  \"godis\": 38521,\n  \"godly</w>\": 42438,\n  \"gods\": 33620,\n  \"gods</w>\": 10328,\n  \"goducks</w>\": 35889,\n  \"godzilla</w>\": 23369,\n  \"goe\": 22084,\n  \"goers</w>\": 27784,\n  \"goes\": 43581,\n  \"goes</w>\": 2635,\n  \"gof\": 17537,\n  \"goff</w>\": 34399,\n  \"goftheday</w>\": 39360,\n  \"gofund\": 34445,\n  \"gofundme</w>\": 34686,\n  \"gog</w>\": 42949,\n  \"goggles</w>\": 31027,\n  \"gogh</w>\": 19697,\n  \"gogo</w>\": 22688,\n  \"gogreen</w>\": 36279,\n  \"gohawks</w>\": 34884,\n  \"goi</w>\": 24917,\n  \"goin</w>\": 13939,\n  \"going\": 25787,\n  \"going</w>\": 1245,\n  \"goku</w>\": 29550,\n  \"gol\": 1537,\n  \"gol</w>\": 18257,\n  \"gola</w>\": 41090,\n  \"gold\": 4999,\n  \"gold</w>\": 2209,\n  \"goldberg</w>\": 25161,\n  \"goldcoast</w>\": 34634,\n  \"golden\": 10763,\n  \"golden</w>\": 3878,\n  \"goldeng\": 20650,\n  \"goldenglobes</w>\": 26842,\n  \"goldfish</w>\": 40293,\n  \"goldie</w>\": 42805,\n  \"goldman</w>\": 27164,\n  \"golds\": 30526,\n  \"golds</w>\": 40283,\n  \"goldsmith</w>\": 40214,\n  \"gole\": 41297,\n  \"golf\": 9096,\n  \"golf</w>\": 3096,\n  \"golfclub</w>\": 45742,\n  \"golfer</w>\": 24579,\n  \"golfers</w>\": 28441,\n  \"golfing</w>\": 31379,\n  \"goli\": 29265,\n  \"goliath</w>\": 41602,\n  \"gom\": 7051,\n  \"goma</w>\": 46198,\n  \"gomes</w>\": 39128,\n  \"gomez</w>\": 16433,\n  \"gon\": 1854,\n  \"gon</w>\": 3379,\n  \"gona</w>\": 34835,\n  \"gone\": 35135,\n  \"gone</w>\": 3601,\n  \"gong</w>\": 28486,\n  \"gonna</w>\": 2562,\n  \"gonz\": 10587,\n  \"gonzaga</w>\": 36241,\n  \"gonzale\": 17512,\n  \"gonzales</w>\": 31265,\n  \"gonzalez</w>\": 18198,\n  \"goo\": 1381,\n  \"goo</w>\": 17882,\n  \"good\": 2185,\n  \"good</w>\": 886,\n  \"goodbye</w>\": 6968,\n  \"goodday\": 46284,\n  \"goode</w>\": 42076,\n  \"goodfood</w>\": 46844,\n  \"goodfriday</w>\": 40360,\n  \"goodie</w>\": 29213,\n  \"goodies</w>\": 13308,\n  \"goodluck</w>\": 19718,\n  \"goodman</w>\": 24146,\n  \"goodmorning</w>\": 14421,\n  \"goodness</w>\": 10531,\n  \"goodnight</w>\": 8540,\n  \"goodreads</w>\": 31629,\n  \"goods</w>\": 9340,\n  \"goodtimes</w>\": 22570,\n  \"goodvibes</w>\": 43146,\n  \"goodwill</w>\": 24902,\n  \"goodwin</w>\": 28080,\n  \"goodwood</w>\": 30008,\n  \"goody</w>\": 35937,\n  \"goodyear</w>\": 42858,\n  \"goofy</w>\": 26879,\n  \"goog\": 18581,\n  \"google\": 12195,\n  \"google</w>\": 3460,\n  \"googled</w>\": 40345,\n  \"googleplay</w>\": 37309,\n  \"goon</w>\": 15267,\n  \"goons</w>\": 30440,\n  \"goooo\": 35876,\n  \"goooo</w>\": 48957,\n  \"goose\": 21445,\n  \"goose</w>\": 13822,\n  \"goosebumps</w>\": 32254,\n  \"gop\": 18942,\n  \"gop</w>\": 6250,\n  \"gopack\": 46995,\n  \"gopackgo</w>\": 47719,\n  \"gopal</w>\": 47268,\n  \"gopdebate</w>\": 39806,\n  \"gopher\": 47750,\n  \"gopher</w>\": 48905,\n  \"gophers</w>\": 31957,\n  \"gopro</w>\": 17511,\n  \"gor\": 1747,\n  \"gor</w>\": 29827,\n  \"gordo</w>\": 47707,\n  \"gordon\": 20485,\n  \"gordon</w>\": 8244,\n  \"gore\": 30311,\n  \"gore</w>\": 17872,\n  \"gorg</w>\": 46815,\n  \"gorge\": 35548,\n  \"gorge</w>\": 20038,\n  \"gorgeous</w>\": 3241,\n  \"gori\": 12461,\n  \"goria</w>\": 43359,\n  \"gorilla\": 37910,\n  \"gorilla</w>\": 21994,\n  \"gorman</w>\": 35741,\n  \"goro</w>\": 44977,\n  \"gory</w>\": 7160,\n  \"gos\": 20517,\n  \"gos</w>\": 5693,\n  \"gosh</w>\": 15395,\n  \"gosling</w>\": 35320,\n  \"gosp\": 9617,\n  \"gospel</w>\": 11313,\n  \"goss\": 39734,\n  \"goss</w>\": 36924,\n  \"gossi\": 15684,\n  \"gossip</w>\": 18963,\n  \"got\": 10125,\n  \"got</w>\": 1005,\n  \"gota</w>\": 36693,\n  \"gotcha</w>\": 43275,\n  \"gote</w>\": 49345,\n  \"goth\": 48465,\n  \"goth</w>\": 20437,\n  \"gotham\": 46123,\n  \"gotham</w>\": 18299,\n  \"gothic</w>\": 15426,\n  \"goti\": 9497,\n  \"goto\": 39715,\n  \"gots</w>\": 35215,\n  \"gott\": 5089,\n  \"gott</w>\": 36466,\n  \"gotta</w>\": 4633,\n  \"gotten</w>\": 5889,\n  \"gotti</w>\": 41881,\n  \"gotv</w>\": 36089,\n  \"gou\": 10520,\n  \"gou</w>\": 36555,\n  \"gouache</w>\": 43314,\n  \"goul\": 33187,\n  \"gould</w>\": 31087,\n  \"gour\": 13580,\n  \"gourmet</w>\": 19111,\n  \"gov\": 4022,\n  \"gov</w>\": 4564,\n  \"gove</w>\": 36997,\n  \"govegan</w>\": 38886,\n  \"gover\": 10471,\n  \"gover</w>\": 16759,\n  \"govern\": 2351,\n  \"govern</w>\": 32404,\n  \"governance</w>\": 13386,\n  \"governing</w>\": 30946,\n  \"government</w>\": 3149,\n  \"governmental</w>\": 42609,\n  \"governments</w>\": 19582,\n  \"governor\": 17459,\n  \"governor</w>\": 6630,\n  \"governors</w>\": 26881,\n  \"govin\": 42451,\n  \"govt</w>\": 5345,\n  \"govuk</w>\": 28830,\n  \"gow\": 21885,\n  \"gow</w>\": 33788,\n  \"gowan</w>\": 31307,\n  \"gower</w>\": 43448,\n  \"gown</w>\": 13719,\n  \"gowns</w>\": 38029,\n  \"goyal</w>\": 35105,\n  \"gp\": 19329,\n  \"gp</w>\": 5051,\n  \"gpa</w>\": 24098,\n  \"gps</w>\": 13639,\n  \"gpu</w>\": 38561,\n  \"gq\": 40286,\n  \"gq</w>\": 31324,\n  \"gr\": 709,\n  \"gr</w>\": 6062,\n  \"gra\": 782,\n  \"gra</w>\": 15276,\n  \"grab</w>\": 4646,\n  \"grabbed</w>\": 22856,\n  \"grabbing</w>\": 26440,\n  \"grabs</w>\": 17076,\n  \"grac\": 11323,\n  \"grace\": 13225,\n  \"grace</w>\": 5142,\n  \"graced</w>\": 31894,\n  \"graceful</w>\": 25242,\n  \"graces</w>\": 38629,\n  \"graci\": 11174,\n  \"gracias</w>\": 16463,\n  \"gracie</w>\": 23235,\n  \"gracing</w>\": 37263,\n  \"gracious</w>\": 29044,\n  \"grad\": 19869,\n  \"grad</w>\": 7291,\n  \"gradable</w>\": 41529,\n  \"grade\": 45435,\n  \"grade</w>\": 3394,\n  \"graded</w>\": 13823,\n  \"grader</w>\": 23930,\n  \"graders</w>\": 10930,\n  \"grades</w>\": 10838,\n  \"gradient</w>\": 36885,\n  \"grading</w>\": 19016,\n  \"grads</w>\": 17811,\n  \"gradu\": 3230,\n  \"gradual</w>\": 45210,\n  \"gradually</w>\": 32192,\n  \"graduate</w>\": 6675,\n  \"graduated</w>\": 15128,\n  \"graduates</w>\": 12236,\n  \"graduating</w>\": 14819,\n  \"graduation</w>\": 8060,\n  \"grady</w>\": 33980,\n  \"graeme</w>\": 30192,\n  \"graf\": 46478,\n  \"graf</w>\": 39765,\n  \"graff\": 10656,\n  \"graffiti</w>\": 11676,\n  \"graft</w>\": 32698,\n  \"grafton</w>\": 47347,\n  \"graham\": 19805,\n  \"graham</w>\": 7711,\n  \"grail</w>\": 37184,\n  \"grain\": 44003,\n  \"grain</w>\": 12109,\n  \"grains</w>\": 25791,\n  \"gral</w>\": 25631,\n  \"gram\": 2949,\n  \"gram</w>\": 2338,\n  \"grammar</w>\": 16077,\n  \"grammy</w>\": 15388,\n  \"grammys</w>\": 18121,\n  \"grams</w>\": 6294,\n  \"gran\": 3892,\n  \"gran</w>\": 14493,\n  \"granada</w>\": 31172,\n  \"grand\": 3058,\n  \"grand</w>\": 2991,\n  \"grandad</w>\": 29148,\n  \"grandchildren</w>\": 36856,\n  \"granddaughter</w>\": 29460,\n  \"grande\": 37514,\n  \"grande</w>\": 10757,\n  \"grandes</w>\": 36382,\n  \"grandfather</w>\": 15346,\n  \"grandma</w>\": 10525,\n  \"grandmother</w>\": 17469,\n  \"grandpa</w>\": 14582,\n  \"grandparents</w>\": 21311,\n  \"grandprix</w>\": 39358,\n  \"grandson</w>\": 20766,\n  \"grandstand</w>\": 43172,\n  \"grange\": 45027,\n  \"grange</w>\": 23850,\n  \"granger</w>\": 42968,\n  \"granite</w>\": 18813,\n  \"grann</w>\": 45585,\n  \"granny</w>\": 22710,\n  \"granola</w>\": 34271,\n  \"grant\": 18682,\n  \"grant</w>\": 5442,\n  \"granted</w>\": 14156,\n  \"granth\": 41283,\n  \"grants</w>\": 15123,\n  \"grape\": 19131,\n  \"grape</w>\": 15959,\n  \"grapefruit</w>\": 28347,\n  \"grapes</w>\": 18580,\n  \"grapevine</w>\": 47619,\n  \"graph\": 1349,\n  \"graph</w>\": 4407,\n  \"graphene</w>\": 38387,\n  \"grapher</w>\": 14987,\n  \"graphers</w>\": 32088,\n  \"graphic\": 15653,\n  \"graphic</w>\": 4245,\n  \"graphical</w>\": 20878,\n  \"graphicdesign</w>\": 21907,\n  \"graphics</w>\": 9492,\n  \"graphies</w>\": 40164,\n  \"graphite</w>\": 29447,\n  \"graphs</w>\": 24670,\n  \"graphy</w>\": 4897,\n  \"grapp\": 30843,\n  \"gras\": 31517,\n  \"gras</w>\": 17584,\n  \"grasp</w>\": 34975,\n  \"grass\": 11584,\n  \"grass</w>\": 5922,\n  \"grasses</w>\": 46807,\n  \"grasshopper</w>\": 48894,\n  \"grassi</w>\": 42294,\n  \"grasso</w>\": 34808,\n  \"grassroots</w>\": 21991,\n  \"grassy</w>\": 44140,\n  \"grat\": 9221,\n  \"grate\": 32463,\n  \"grateful\": 45659,\n  \"grateful</w>\": 5730,\n  \"grati\": 36402,\n  \"gratis</w>\": 33638,\n  \"gratitude</w>\": 12614,\n  \"grav\": 20663,\n  \"grave\": 16606,\n  \"grave</w>\": 9981,\n  \"gravel</w>\": 27054,\n  \"graves</w>\": 17665,\n  \"graveyard</w>\": 31176,\n  \"gravit\": 26150,\n  \"gravitational</w>\": 45268,\n  \"gravity\": 47426,\n  \"gravity</w>\": 15160,\n  \"gravy</w>\": 21225,\n  \"gray\": 12703,\n  \"gray</w>\": 7048,\n  \"grays</w>\": 46848,\n  \"grayson\": 45831,\n  \"grayson</w>\": 25471,\n  \"grazi\": 42427,\n  \"grazie</w>\": 38698,\n  \"grazing</w>\": 29889,\n  \"grc</w>\": 44069,\n  \"gre\": 689,\n  \"gre</w>\": 17878,\n  \"grease</w>\": 24132,\n  \"greasy</w>\": 44376,\n  \"great\": 3265,\n  \"great</w>\": 830,\n  \"greate\": 31930,\n  \"greater\": 32725,\n  \"greater</w>\": 7033,\n  \"greatest\": 39080,\n  \"greatest</w>\": 4153,\n  \"greatly</w>\": 13978,\n  \"greatness</w>\": 14189,\n  \"greats</w>\": 21855,\n  \"greaves</w>\": 42350,\n  \"greco</w>\": 39103,\n  \"gree\": 9987,\n  \"gree</w>\": 30774,\n  \"greece</w>\": 6965,\n  \"greed</w>\": 26147,\n  \"greedy</w>\": 33301,\n  \"greek\": 23844,\n  \"greek</w>\": 6842,\n  \"greeks</w>\": 35866,\n  \"green\": 2762,\n  \"green</w>\": 1901,\n  \"greenberg</w>\": 46662,\n  \"greene</w>\": 16383,\n  \"greener</w>\": 31169,\n  \"greenery</w>\": 42493,\n  \"greenfield</w>\": 39924,\n  \"greeng\": 42077,\n  \"greenhouse</w>\": 20819,\n  \"greening</w>\": 48673,\n  \"greenland</w>\": 27345,\n  \"greenpeace</w>\": 44755,\n  \"greens</w>\": 10235,\n  \"greensboro</w>\": 33436,\n  \"greenville</w>\": 25156,\n  \"greenway</w>\": 35205,\n  \"greenwich</w>\": 18658,\n  \"greenwood</w>\": 25782,\n  \"greer</w>\": 34345,\n  \"greet\": 11042,\n  \"greet</w>\": 11997,\n  \"greeted</w>\": 24546,\n  \"greeting</w>\": 17754,\n  \"greetings</w>\": 11569,\n  \"greets</w>\": 25464,\n  \"greg\": 6894,\n  \"greg</w>\": 7943,\n  \"gregation</w>\": 20131,\n  \"gregg\": 39422,\n  \"gregg</w>\": 22929,\n  \"gregor\": 33856,\n  \"gregor</w>\": 16177,\n  \"gregory</w>\": 16253,\n  \"gren\": 13941,\n  \"gren</w>\": 20119,\n  \"grenade</w>\": 33679,\n  \"grenfell</w>\": 42107,\n  \"gres</w>\": 39670,\n  \"gress</w>\": 2752,\n  \"gret\": 30041,\n  \"greta</w>\": 33443,\n  \"gretchen</w>\": 45516,\n  \"grette</w>\": 38774,\n  \"grew</w>\": 10451,\n  \"grey\": 9190,\n  \"grey</w>\": 5046,\n  \"greyhound</w>\": 27363,\n  \"greyhounds</w>\": 45718,\n  \"greys</w>\": 44311,\n  \"greysanatomy</w>\": 36833,\n  \"gri\": 2169,\n  \"gri</w>\": 18484,\n  \"grid\": 29067,\n  \"grid</w>\": 9882,\n  \"gridi\": 41063,\n  \"gridiron</w>\": 47786,\n  \"grids</w>\": 46500,\n  \"grief</w>\": 21058,\n  \"grier</w>\": 22016,\n  \"griev\": 36400,\n  \"grieving</w>\": 42383,\n  \"griez\": 47962,\n  \"griezmann</w>\": 48396,\n  \"griff\": 17855,\n  \"griff</w>\": 35551,\n  \"griffi\": 28676,\n  \"griffin\": 46612,\n  \"griffin</w>\": 13161,\n  \"griffith</w>\": 24375,\n  \"griffiths</w>\": 34182,\n  \"gril\": 49091,\n  \"grill\": 44083,\n  \"grill</w>\": 9519,\n  \"grille</w>\": 34748,\n  \"grilled</w>\": 10691,\n  \"grilling</w>\": 28324,\n  \"grills</w>\": 39464,\n  \"grim\": 20383,\n  \"grim</w>\": 23635,\n  \"grime</w>\": 37101,\n  \"grimes</w>\": 25057,\n  \"grimm</w>\": 27865,\n  \"grims\": 34861,\n  \"grimsby</w>\": 41513,\n  \"grin\": 11033,\n  \"grin</w>\": 28697,\n  \"grinch</w>\": 40527,\n  \"grind\": 25730,\n  \"grind</w>\": 11810,\n  \"grinder</w>\": 31733,\n  \"grinding</w>\": 21541,\n  \"gring</w>\": 40135,\n  \"grip</w>\": 15521,\n  \"gripping</w>\": 34567,\n  \"grips</w>\": 27819,\n  \"gris</w>\": 29150,\n  \"grit\": 22037,\n  \"grit</w>\": 22087,\n  \"grits</w>\": 44307,\n  \"gritty</w>\": 33704,\n  \"grizz\": 14877,\n  \"grizz</w>\": 44088,\n  \"grizzlies</w>\": 25594,\n  \"grizzly</w>\": 29676,\n  \"grl</w>\": 48005,\n  \"gro\": 1464,\n  \"gro</w>\": 12691,\n  \"grocer\": 11633,\n  \"groceries</w>\": 32409,\n  \"grocery</w>\": 13826,\n  \"grom</w>\": 45284,\n  \"gron\": 22345,\n  \"groningen</w>\": 45639,\n  \"groo\": 9015,\n  \"groom\": 39883,\n  \"groom</w>\": 22813,\n  \"grooming</w>\": 25575,\n  \"groot</w>\": 37708,\n  \"groove\": 39484,\n  \"groove</w>\": 17680,\n  \"grooves</w>\": 43954,\n  \"groovy</w>\": 30143,\n  \"gros\": 26834,\n  \"gros</w>\": 32639,\n  \"gross\": 31080,\n  \"gross</w>\": 11541,\n  \"grosven\": 46911,\n  \"grote\": 47207,\n  \"grotto</w>\": 45260,\n  \"grou\": 1582,\n  \"groun\": 45110,\n  \"ground\": 9558,\n  \"ground</w>\": 2461,\n  \"groundbreaking</w>\": 21006,\n  \"grounded</w>\": 27799,\n  \"grounds</w>\": 8454,\n  \"groundwater</w>\": 39457,\n  \"group\": 19045,\n  \"group</w>\": 1771,\n  \"groupe</w>\": 47654,\n  \"groups</w>\": 6776,\n  \"grouse</w>\": 36327,\n  \"grove\": 31756,\n  \"grove</w>\": 7463,\n  \"grover</w>\": 31345,\n  \"groves</w>\": 27306,\n  \"grow\": 3179,\n  \"grow</w>\": 4559,\n  \"grower</w>\": 44925,\n  \"growers</w>\": 25689,\n  \"growing\": 28429,\n  \"growing</w>\": 4425,\n  \"growingup\": 43433,\n  \"growler</w>\": 47096,\n  \"grown\": 41762,\n  \"grown</w>\": 7120,\n  \"grows</w>\": 13352,\n  \"growth\": 17925,\n  \"growth</w>\": 4026,\n  \"growthhacking</w>\": 25963,\n  \"grp</w>\": 27321,\n  \"grt</w>\": 28557,\n  \"gru\": 5957,\n  \"grub</w>\": 34019,\n  \"grue\": 42047,\n  \"gruesome</w>\": 47111,\n  \"grum\": 45454,\n  \"grump\": 49015,\n  \"grumpy</w>\": 23610,\n  \"grun\": 16203,\n  \"grunge</w>\": 33745,\n  \"gry\": 16140,\n  \"gry</w>\": 5364,\n  \"gs\": 25818,\n  \"gs</w>\": 1345,\n  \"gsa</w>\": 40433,\n  \"gsc</w>\": 47751,\n  \"gshore</w>\": 43392,\n  \"gsm</w>\": 32181,\n  \"gsp</w>\": 49173,\n  \"gst</w>\": 22239,\n  \"gt\": 16151,\n  \"gt</w>\": 4725,\n  \"gta\": 14826,\n  \"gta</w>\": 15338,\n  \"gtaonline</w>\": 27292,\n  \"gtav</w>\": 27283,\n  \"gti</w>\": 39954,\n  \"gto</w>\": 39071,\n  \"gtr</w>\": 33407,\n  \"gts</w>\": 37338,\n  \"gtx</w>\": 35230,\n  \"gu\": 700,\n  \"gu</w>\": 12916,\n  \"gua</w>\": 23751,\n  \"guacam\": 37477,\n  \"guacamole</w>\": 40115,\n  \"guad\": 22966,\n  \"guadal\": 46097,\n  \"guadalu\": 36994,\n  \"guadalupe</w>\": 38360,\n  \"guam</w>\": 37325,\n  \"guan\": 44191,\n  \"guan</w>\": 42406,\n  \"guang\": 27019,\n  \"guangzhou</w>\": 37857,\n  \"guar\": 4119,\n  \"guaran\": 9242,\n  \"guarantee</w>\": 17421,\n  \"guaranteed</w>\": 14731,\n  \"guarantees</w>\": 40154,\n  \"guard\": 30776,\n  \"guard</w>\": 4901,\n  \"guarded</w>\": 40602,\n  \"guardi\": 12008,\n  \"guardia</w>\": 43628,\n  \"guardian\": 23713,\n  \"guardian</w>\": 9498,\n  \"guardians</w>\": 21479,\n  \"guarding</w>\": 24966,\n  \"guardiola</w>\": 32100,\n  \"guards</w>\": 12810,\n  \"guatem\": 19423,\n  \"guatemala</w>\": 21670,\n  \"guay\": 48591,\n  \"guay</w>\": 24247,\n  \"gubernat\": 41400,\n  \"gubernatorial</w>\": 41618,\n  \"gucci</w>\": 16779,\n  \"gud\": 48061,\n  \"gud</w>\": 22378,\n  \"gue\": 2030,\n  \"gue</w>\": 2917,\n  \"gued</w>\": 38893,\n  \"guel\": 23146,\n  \"guelph</w>\": 27660,\n  \"guer\": 10391,\n  \"guern\": 29277,\n  \"guernsey</w>\": 33982,\n  \"guerra</w>\": 38215,\n  \"guerrero</w>\": 31967,\n  \"guerrilla</w>\": 36715,\n  \"gues\": 39971,\n  \"gues</w>\": 12601,\n  \"guess\": 35506,\n  \"guess</w>\": 3135,\n  \"guessed</w>\": 28005,\n  \"guesses</w>\": 30623,\n  \"guessing</w>\": 21891,\n  \"guest\": 27349,\n  \"guest</w>\": 3781,\n  \"guests</w>\": 6212,\n  \"guet</w>\": 36797,\n  \"guetta</w>\": 45904,\n  \"guez</w>\": 12313,\n  \"gug\": 31358,\n  \"guggen\": 35086,\n  \"guggenheim</w>\": 37135,\n  \"gui\": 2587,\n  \"gui</w>\": 25746,\n  \"guid\": 11437,\n  \"guidance</w>\": 12508,\n  \"guide\": 21845,\n  \"guide</w>\": 3555,\n  \"guided</w>\": 13194,\n  \"guidelines</w>\": 16591,\n  \"guides</w>\": 14375,\n  \"guiding</w>\": 22759,\n  \"guido</w>\": 41818,\n  \"guil\": 5008,\n  \"guild\": 19755,\n  \"guild</w>\": 16597,\n  \"guildford</w>\": 34450,\n  \"guildhall</w>\": 47224,\n  \"guillau\": 41123,\n  \"guillaume</w>\": 45394,\n  \"guiller\": 33660,\n  \"guillermo</w>\": 39524,\n  \"guilt</w>\": 26354,\n  \"guilty</w>\": 9761,\n  \"guin\": 13284,\n  \"guin</w>\": 47863,\n  \"guine\": 13759,\n  \"guinea</w>\": 18537,\n  \"guinness</w>\": 16648,\n  \"guire</w>\": 18209,\n  \"guise</w>\": 42024,\n  \"guit\": 3759,\n  \"guitar\": 21746,\n  \"guitar</w>\": 5084,\n  \"guitarist</w>\": 13035,\n  \"guitars</w>\": 15023,\n  \"guj\": 34935,\n  \"gujar\": 12698,\n  \"gujarat</w>\": 14714,\n  \"guk</w>\": 20280,\n  \"gul\": 5530,\n  \"gul</w>\": 21350,\n  \"gula</w>\": 27426,\n  \"gular</w>\": 34969,\n  \"gulf\": 22101,\n  \"gulf</w>\": 11279,\n  \"gull\": 48764,\n  \"gull</w>\": 28778,\n  \"gulls</w>\": 37501,\n  \"gully</w>\": 46112,\n  \"gum\": 22041,\n  \"gum</w>\": 11235,\n  \"gumb\": 40147,\n  \"gumbo</w>\": 47126,\n  \"gummy</w>\": 34276,\n  \"gums</w>\": 46609,\n  \"gun\": 2748,\n  \"gun</w>\": 3496,\n  \"guna</w>\": 43333,\n  \"gundam</w>\": 26087,\n  \"gundy</w>\": 21162,\n  \"gunman</w>\": 32743,\n  \"gunmen</w>\": 44738,\n  \"gunn</w>\": 27473,\n  \"gunna</w>\": 24002,\n  \"gunnar</w>\": 45301,\n  \"gunner</w>\": 35285,\n  \"gunners</w>\": 37788,\n  \"guns</w>\": 7591,\n  \"gunsense</w>\": 44781,\n  \"gunshot</w>\": 49250,\n  \"gunsn\": 49028,\n  \"gup\": 38632,\n  \"gup</w>\": 47335,\n  \"gupta</w>\": 15905,\n  \"gur\": 3218,\n  \"gur</w>\": 30224,\n  \"gura</w>\": 46836,\n  \"gurgaon</w>\": 33240,\n  \"guri</w>\": 43888,\n  \"gurl</w>\": 25445,\n  \"gurmee\": 35482,\n  \"gurmeetramrahim</w>\": 36549,\n  \"guru\": 18629,\n  \"guru</w>\": 10800,\n  \"gurudev</w>\": 48647,\n  \"gus</w>\": 8018,\n  \"gust</w>\": 24629,\n  \"gusta\": 23024,\n  \"gusta</w>\": 44196,\n  \"gustav\": 32062,\n  \"gustav</w>\": 37921,\n  \"gustave</w>\": 43170,\n  \"gustavo</w>\": 45943,\n  \"gusto</w>\": 37937,\n  \"gusts</w>\": 20896,\n  \"gusty</w>\": 27589,\n  \"gut\": 24780,\n  \"gut</w>\": 13486,\n  \"guter\": 44963,\n  \"guterres</w>\": 48738,\n  \"guth\": 31696,\n  \"guthrie</w>\": 33164,\n  \"gutier\": 32773,\n  \"gutierrez</w>\": 33739,\n  \"guts</w>\": 25983,\n  \"gutted</w>\": 26524,\n  \"gutter</w>\": 40537,\n  \"guwa\": 43063,\n  \"guwahati</w>\": 45045,\n  \"guy\": 10008,\n  \"guy</w>\": 2149,\n  \"guyana</w>\": 45215,\n  \"guyen</w>\": 28031,\n  \"guys\": 43588,\n  \"guys</w>\": 1791,\n  \"guyz</w>\": 48170,\n  \"guzman</w>\": 37960,\n  \"gv\": 15462,\n  \"gv</w>\": 17336,\n  \"gw\": 7172,\n  \"gw</w>\": 15717,\n  \"gwen\": 32165,\n  \"gwen</w>\": 24182,\n  \"gwin\": 43005,\n  \"gwy\": 32226,\n  \"gwyne\": 36923,\n  \"gx</w>\": 40227,\n  \"gy\": 2168,\n  \"gy</w>\": 1164,\n  \"gya</w>\": 43214,\n  \"gyan</w>\": 43814,\n  \"gye\": 21728,\n  \"gyllen\": 49348,\n  \"gym\": 9902,\n  \"gym</w>\": 5222,\n  \"gymna\": 13517,\n  \"gymnasium</w>\": 42847,\n  \"gymnast</w>\": 42658,\n  \"gymnastics</w>\": 20116,\n  \"gyn</w>\": 39603,\n  \"gyne\": 45836,\n  \"gyp\": 40053,\n  \"gypsy</w>\": 22354,\n  \"gypt</w>\": 41921,\n  \"gz\": 45937,\n  \"gz</w>\": 35841,\n  \"gÃ¶\": 40778,\n  \"gÃ¼\": 31907,\n  \"h\": 71,\n  \"h</w>\": 327,\n  \"ha\": 560,\n  \"ha</w>\": 1429,\n  \"haa</w>\": 26814,\n  \"haal</w>\": 35869,\n  \"haan</w>\": 36284,\n  \"haar\": 45247,\n  \"haar</w>\": 35859,\n  \"haas</w>\": 27443,\n  \"haasan</w>\": 26601,\n  \"hab\": 20573,\n  \"hab</w>\": 20002,\n  \"haban\": 46225,\n  \"haber\": 44737,\n  \"habit\": 8491,\n  \"habit</w>\": 17215,\n  \"habitat</w>\": 11747,\n  \"habitats</w>\": 35344,\n  \"habits</w>\": 14540,\n  \"habs</w>\": 27489,\n  \"hac\": 20343,\n  \"hace</w>\": 43623,\n  \"haci\": 40674,\n  \"hack\": 6610,\n  \"hack</w>\": 11182,\n  \"hackathon</w>\": 25182,\n  \"hacked</w>\": 19575,\n  \"hacker</w>\": 22376,\n  \"hackers</w>\": 21498,\n  \"hacking</w>\": 12939,\n  \"hackney\": 48811,\n  \"hackney</w>\": 24928,\n  \"hacks</w>\": 19965,\n  \"had\": 10660,\n  \"had</w>\": 1100,\n  \"hadi</w>\": 39058,\n  \"hadid</w>\": 26415,\n  \"hadith</w>\": 46907,\n  \"hadley</w>\": 44995,\n  \"hadn</w>\": 21480,\n  \"hadoop</w>\": 43868,\n  \"hae\": 30723,\n  \"hae</w>\": 27193,\n  \"hafi\": 39914,\n  \"hag\": 26855,\n  \"hag</w>\": 43207,\n  \"hagan</w>\": 47489,\n  \"hagen</w>\": 14664,\n  \"hager\": 48773,\n  \"hagg\": 26324,\n  \"hague</w>\": 28988,\n  \"hah\": 18108,\n  \"hah</w>\": 13680,\n  \"haha\": 1913,\n  \"haha</w>\": 3060,\n  \"hahah\": 27253,\n  \"hahah</w>\": 15441,\n  \"hahaha</w>\": 4722,\n  \"hahahah\": 37513,\n  \"hahahah</w>\": 20096,\n  \"hahahaha\": 8058,\n  \"hahahaha</w>\": 9501,\n  \"hahahahah</w>\": 33334,\n  \"hahahahaha</w>\": 16347,\n  \"hahahahahaha</w>\": 26487,\n  \"hahahahahahaha</w>\": 43653,\n  \"hahahahahahahaha\": 36126,\n  \"hahahha</w>\": 49205,\n  \"hahn</w>\": 35596,\n  \"hai\": 8734,\n  \"hai</w>\": 5234,\n  \"haider</w>\": 42200,\n  \"haiku</w>\": 19542,\n  \"hail\": 15272,\n  \"hail</w>\": 8634,\n  \"hailed</w>\": 44604,\n  \"hailey</w>\": 27703,\n  \"hailing</w>\": 47288,\n  \"hails</w>\": 32571,\n  \"hailstate</w>\": 35063,\n  \"hain</w>\": 23861,\n  \"hair\": 4658,\n  \"hair</w>\": 2225,\n  \"haircare</w>\": 43682,\n  \"haircut</w>\": 14711,\n  \"hairdresser</w>\": 47468,\n  \"haired</w>\": 27202,\n  \"hairs</w>\": 27951,\n  \"hairstyle</w>\": 22324,\n  \"hairstyles</w>\": 40627,\n  \"hairy</w>\": 26513,\n  \"haiti</w>\": 17368,\n  \"haitian</w>\": 37577,\n  \"haj\": 27885,\n  \"haj</w>\": 43191,\n  \"haji</w>\": 41889,\n  \"hajj</w>\": 35576,\n  \"hak\": 25142,\n  \"hak</w>\": 40671,\n  \"haka</w>\": 44011,\n  \"hake\": 41663,\n  \"hal\": 1296,\n  \"hal</w>\": 8708,\n  \"hala</w>\": 25918,\n  \"halal</w>\": 34216,\n  \"halam\": 29061,\n  \"halamadrid</w>\": 31132,\n  \"halder</w>\": 32201,\n  \"hale\": 37038,\n  \"hale</w>\": 14701,\n  \"halen</w>\": 39204,\n  \"halep</w>\": 49017,\n  \"haley\": 37330,\n  \"haley</w>\": 16839,\n  \"half\": 7453,\n  \"half</w>\": 2349,\n  \"halftime</w>\": 13742,\n  \"halfway</w>\": 16736,\n  \"hali\": 9860,\n  \"hali</w>\": 43030,\n  \"halibut</w>\": 49030,\n  \"halifax</w>\": 13411,\n  \"hall\": 6850,\n  \"hall</w>\": 2140,\n  \"halla</w>\": 29569,\n  \"halle\": 27763,\n  \"halle</w>\": 32239,\n  \"hallelujah</w>\": 36993,\n  \"halli\": 32665,\n  \"hallmark\": 31040,\n  \"hallmark</w>\": 32053,\n  \"hallmarkchannel</w>\": 36840,\n  \"hallo\": 3463,\n  \"halloffame</w>\": 48578,\n  \"halloween\": 28537,\n  \"halloween</w>\": 3739,\n  \"halls</w>\": 18052,\n  \"hallucin\": 35385,\n  \"hallway</w>\": 26845,\n  \"halo\": 33331,\n  \"halo</w>\": 11918,\n  \"halsey</w>\": 34256,\n  \"halt</w>\": 25640,\n  \"halter</w>\": 47194,\n  \"halton</w>\": 45445,\n  \"ham\": 1522,\n  \"ham</w>\": 1714,\n  \"hama</w>\": 17944,\n  \"hamas</w>\": 14818,\n  \"hamburg</w>\": 18409,\n  \"hamburger</w>\": 33928,\n  \"hamid</w>\": 32377,\n  \"hamil\": 6725,\n  \"hamill\": 45784,\n  \"hamill</w>\": 48729,\n  \"hamillhimself</w>\": 47324,\n  \"hamilton\": 22448,\n  \"hamilton</w>\": 7684,\n  \"hamlet</w>\": 27722,\n  \"hamlin</w>\": 49326,\n  \"hamm</w>\": 46110,\n  \"hammer\": 15331,\n  \"hammer</w>\": 9401,\n  \"hammered</w>\": 37251,\n  \"hammers</w>\": 35649,\n  \"hammersmith</w>\": 42127,\n  \"hammock</w>\": 33682,\n  \"hammond</w>\": 21761,\n  \"hamont</w>\": 18518,\n  \"hamp\": 6665,\n  \"hamper</w>\": 27692,\n  \"hampshire</w>\": 16006,\n  \"hampstead</w>\": 37340,\n  \"hampton\": 36582,\n  \"hampton</w>\": 12285,\n  \"hamptons</w>\": 42415,\n  \"hamr</w>\": 47979,\n  \"hamradio</w>\": 36712,\n  \"hams</w>\": 25619,\n  \"hamster</w>\": 33313,\n  \"hamstring</w>\": 39990,\n  \"hamza</w>\": 45762,\n  \"han\": 1545,\n  \"han</w>\": 3565,\n  \"hana</w>\": 16801,\n  \"hand\": 1722,\n  \"hand</w>\": 2463,\n  \"handbag</w>\": 22654,\n  \"handbags</w>\": 35667,\n  \"handball</w>\": 27988,\n  \"handbook</w>\": 25147,\n  \"handcrafted</w>\": 22185,\n  \"handed</w>\": 10881,\n  \"handedly</w>\": 48656,\n  \"handel</w>\": 40072,\n  \"handful</w>\": 23725,\n  \"handheld</w>\": 26812,\n  \"handic\": 17812,\n  \"handicap</w>\": 27063,\n  \"handicapp\": 42349,\n  \"handing</w>\": 19196,\n  \"handle\": 43681,\n  \"handle</w>\": 7245,\n  \"handled</w>\": 26824,\n  \"handler</w>\": 29097,\n  \"handles</w>\": 22124,\n  \"handling</w>\": 14071,\n  \"handmade\": 18054,\n  \"handmade</w>\": 6737,\n  \"handmadehour</w>\": 25724,\n  \"handover</w>\": 46922,\n  \"hands</w>\": 3500,\n  \"handshake</w>\": 38418,\n  \"handsome</w>\": 7438,\n  \"handwriting</w>\": 29986,\n  \"handwritten</w>\": 35192,\n  \"handy</w>\": 13479,\n  \"hane</w>\": 28411,\n  \"hang\": 3351,\n  \"hang</w>\": 5592,\n  \"hangar</w>\": 33439,\n  \"hanged</w>\": 40807,\n  \"hanger</w>\": 28905,\n  \"hangin</w>\": 22670,\n  \"hanging</w>\": 4850,\n  \"hangout</w>\": 17572,\n  \"hangover</w>\": 20755,\n  \"hangs</w>\": 21785,\n  \"hani\": 39944,\n  \"hani</w>\": 18374,\n  \"hank\": 35993,\n  \"hank</w>\": 17655,\n  \"hanks</w>\": 29943,\n  \"hanley</w>\": 47284,\n  \"hann\": 5584,\n  \"hanna</w>\": 10075,\n  \"hannah\": 18622,\n  \"hannah</w>\": 9142,\n  \"hannel</w>\": 43477,\n  \"hanni\": 19493,\n  \"hannibal</w>\": 25149,\n  \"hannity</w>\": 24569,\n  \"hannover</w>\": 39976,\n  \"hanoi</w>\": 36134,\n  \"hanover</w>\": 33246,\n  \"hans\": 35172,\n  \"hans</w>\": 16628,\n  \"hansen</w>\": 19729,\n  \"hanson</w>\": 24602,\n  \"hant\": 40641,\n  \"hanuk\": 32774,\n  \"hanukkah</w>\": 34247,\n  \"hanuman</w>\": 46975,\n  \"hao</w>\": 27184,\n  \"hap\": 44981,\n  \"hap</w>\": 47988,\n  \"happ\": 784,\n  \"happen\": 21486,\n  \"happen</w>\": 4506,\n  \"happened</w>\": 4402,\n  \"happening</w>\": 4284,\n  \"happeningnow</w>\": 43107,\n  \"happenings</w>\": 41998,\n  \"happens</w>\": 4988,\n  \"happier</w>\": 14118,\n  \"happiest</w>\": 13811,\n  \"happily</w>\": 17316,\n  \"happiness</w>\": 5096,\n  \"happy\": 2952,\n  \"happy</w>\": 900,\n  \"happybirthday\": 9651,\n  \"happybirthday</w>\": 12207,\n  \"happydays</w>\": 25106,\n  \"happye\": 33922,\n  \"happyeaster</w>\": 38745,\n  \"happyfathersday</w>\": 43534,\n  \"happyfriday</w>\": 33340,\n  \"happyhalloween</w>\": 28750,\n  \"happyholidays</w>\": 32186,\n  \"happyhour</w>\": 32036,\n  \"happymonday</w>\": 47364,\n  \"happymothersday</w>\": 42425,\n  \"happynewyear</w>\": 18655,\n  \"happythanksgiving</w>\": 40593,\n  \"happyvalentinesday</w>\": 42403,\n  \"haps</w>\": 9114,\n  \"haq</w>\": 32445,\n  \"har\": 915,\n  \"har</w>\": 5888,\n  \"hara</w>\": 10367,\n  \"haram\": 35732,\n  \"haram</w>\": 22950,\n  \"haran</w>\": 27921,\n  \"harare</w>\": 43562,\n  \"haras\": 26644,\n  \"harass\": 16481,\n  \"harassed</w>\": 43067,\n  \"harassment</w>\": 16641,\n  \"harat</w>\": 28984,\n  \"harb\": 5856,\n  \"harbaugh</w>\": 45220,\n  \"harbor\": 40686,\n  \"harbor</w>\": 10202,\n  \"harbour\": 35430,\n  \"harbour</w>\": 10011,\n  \"harcourt</w>\": 48093,\n  \"hard\": 3312,\n  \"hard</w>\": 1626,\n  \"hardcover</w>\": 31123,\n  \"harden</w>\": 27350,\n  \"harder</w>\": 12274,\n  \"hardest</w>\": 15258,\n  \"hardin</w>\": 43802,\n  \"harding</w>\": 24382,\n  \"hardly</w>\": 17363,\n  \"hardro\": 28126,\n  \"hardrock\": 48365,\n  \"hardrock</w>\": 40739,\n  \"hards</w>\": 44048,\n  \"hardship</w>\": 45085,\n  \"hardt</w>\": 17922,\n  \"hardware</w>\": 11957,\n  \"hardwell</w>\": 45572,\n  \"hardwick</w>\": 46864,\n  \"hardwood</w>\": 28167,\n  \"hardwork\": 42554,\n  \"hardwork</w>\": 27404,\n  \"hardworking</w>\": 28095,\n  \"hardworkpaysoff</w>\": 49193,\n  \"hardy\": 48179,\n  \"hardy</w>\": 14113,\n  \"hare\": 27903,\n  \"hare</w>\": 18464,\n  \"harga</w>\": 39738,\n  \"hari\": 25472,\n  \"hari</w>\": 8981,\n  \"harlan</w>\": 49133,\n  \"harle\": 29096,\n  \"harlem</w>\": 17771,\n  \"harley\": 24702,\n  \"harley</w>\": 13632,\n  \"harleydavidson</w>\": 39183,\n  \"harlow</w>\": 34113,\n  \"harm\": 16656,\n  \"harm</w>\": 14452,\n  \"harman</w>\": 42434,\n  \"harmed</w>\": 39637,\n  \"harmful</w>\": 21725,\n  \"harmless</w>\": 44369,\n  \"harmon\": 10828,\n  \"harmon</w>\": 28729,\n  \"harmony</w>\": 10785,\n  \"harms</w>\": 46703,\n  \"harne\": 43323,\n  \"harness</w>\": 23205,\n  \"harold</w>\": 16917,\n  \"harp</w>\": 27339,\n  \"harper\": 31288,\n  \"harper</w>\": 12634,\n  \"harri\": 6639,\n  \"harrier</w>\": 37372,\n  \"harriet</w>\": 27154,\n  \"harrington</w>\": 34340,\n  \"harris\": 25356,\n  \"harris</w>\": 6925,\n  \"harrisburg</w>\": 40590,\n  \"harrison\": 34389,\n  \"harrison</w>\": 10540,\n  \"harro\": 18939,\n  \"harrogate</w>\": 30842,\n  \"harrow</w>\": 38807,\n  \"harry\": 11094,\n  \"harry</w>\": 3600,\n  \"harrypotter</w>\": 23375,\n  \"harsh\": 30596,\n  \"harsh</w>\": 16944,\n  \"hart\": 9335,\n  \"hart</w>\": 7752,\n  \"hartford</w>\": 23434,\n  \"harth</w>\": 35619,\n  \"hartle\": 47482,\n  \"hartley</w>\": 31268,\n  \"hartman</w>\": 43294,\n  \"haru</w>\": 35099,\n  \"harvard\": 28118,\n  \"harvard</w>\": 12848,\n  \"harve\": 6405,\n  \"harvest\": 44495,\n  \"harvest</w>\": 8971,\n  \"harvested</w>\": 35899,\n  \"harvesting</w>\": 26674,\n  \"harvey\": 33289,\n  \"harvey</w>\": 9586,\n  \"harvick</w>\": 46983,\n  \"haryana</w>\": 27661,\n  \"has\": 13855,\n  \"has</w>\": 791,\n  \"hasan</w>\": 30049,\n  \"hasbro</w>\": 37405,\n  \"hash\": 6338,\n  \"hash</w>\": 19199,\n  \"hashi</w>\": 41831,\n  \"hashmi</w>\": 35852,\n  \"hashtag\": 34015,\n  \"hashtag</w>\": 9238,\n  \"hashtags</w>\": 23514,\n  \"haskell</w>\": 48550,\n  \"hasn</w>\": 9143,\n  \"hass\": 9298,\n  \"hassan</w>\": 15829,\n  \"hassee</w>\": 37117,\n  \"hassel\": 32204,\n  \"hassle</w>\": 35762,\n  \"hast\": 18146,\n  \"hasta</w>\": 36623,\n  \"hastings</w>\": 22035,\n  \"hat\": 3447,\n  \"hat</w>\": 3801,\n  \"hatch\": 24202,\n  \"hatch</w>\": 17809,\n  \"hatchback</w>\": 42348,\n  \"hatched</w>\": 42158,\n  \"hate\": 23546,\n  \"hate</w>\": 3753,\n  \"hated</w>\": 21298,\n  \"hateful</w>\": 36418,\n  \"hater</w>\": 36917,\n  \"haters</w>\": 14027,\n  \"hates</w>\": 14957,\n  \"hatfield</w>\": 38448,\n  \"hath\": 27894,\n  \"hath</w>\": 34416,\n  \"hathaway</w>\": 31801,\n  \"hati</w>\": 26045,\n  \"hating</w>\": 25668,\n  \"hatred</w>\": 19046,\n  \"hats</w>\": 9812,\n  \"hatt\": 8747,\n  \"hatton</w>\": 44861,\n  \"hau\": 5152,\n  \"hauer</w>\": 48751,\n  \"haul\": 23743,\n  \"haul</w>\": 12332,\n  \"hauled</w>\": 46620,\n  \"hauling</w>\": 43132,\n  \"haun\": 9676,\n  \"haunt</w>\": 31039,\n  \"haunted</w>\": 14944,\n  \"haunting</w>\": 24034,\n  \"haunts</w>\": 48035,\n  \"haus\": 41755,\n  \"haus</w>\": 16478,\n  \"hausen</w>\": 33338,\n  \"hauser</w>\": 46586,\n  \"haute</w>\": 28854,\n  \"hav\": 13443,\n  \"hav</w>\": 20447,\n  \"havan</w>\": 36304,\n  \"havana</w>\": 23357,\n  \"havas\": 46261,\n  \"have\": 18053,\n  \"have</w>\": 720,\n  \"haven\": 33074,\n  \"haven</w>\": 3871,\n  \"havent</w>\": 29130,\n  \"haver\": 27876,\n  \"haves</w>\": 49088,\n  \"havin</w>\": 31937,\n  \"having</w>\": 1977,\n  \"havoc</w>\": 24447,\n  \"haw\": 2788,\n  \"haw</w>\": 26954,\n  \"hawa\": 6067,\n  \"hawa</w>\": 46278,\n  \"hawai\": 15800,\n  \"hawaii\": 32413,\n  \"hawaii</w>\": 8265,\n  \"hawaiian</w>\": 17734,\n  \"hawan</w>\": 27765,\n  \"hawk\": 14704,\n  \"hawk</w>\": 8218,\n  \"hawke</w>\": 38178,\n  \"hawker</w>\": 39051,\n  \"hawkeye</w>\": 38666,\n  \"hawkeyes</w>\": 34266,\n  \"hawking</w>\": 33437,\n  \"hawkins</w>\": 19740,\n  \"hawks\": 44806,\n  \"hawks</w>\": 5841,\n  \"hawthorn</w>\": 45372,\n  \"hawthorne</w>\": 36730,\n  \"hay\": 4871,\n  \"hay</w>\": 11367,\n  \"haya</w>\": 41325,\n  \"hayat</w>\": 49360,\n  \"hayden</w>\": 19806,\n  \"haydn</w>\": 48207,\n  \"haye\": 36583,\n  \"hayes</w>\": 13555,\n  \"hayley\": 39986,\n  \"hayley</w>\": 22204,\n  \"haynes</w>\": 30496,\n  \"hays</w>\": 41524,\n  \"hayward</w>\": 29400,\n  \"haz\": 5040,\n  \"haz</w>\": 39921,\n  \"hazard\": 26174,\n  \"hazard</w>\": 15178,\n  \"hazardous</w>\": 27102,\n  \"hazards</w>\": 30639,\n  \"haze</w>\": 22785,\n  \"hazel\": 19838,\n  \"hazel</w>\": 21882,\n  \"hazelnut</w>\": 35816,\n  \"hazi</w>\": 22740,\n  \"hazmat</w>\": 48887,\n  \"hazrat</w>\": 45775,\n  \"hazy</w>\": 32655,\n  \"hb\": 6854,\n  \"hb</w>\": 12576,\n  \"hbcu</w>\": 40008,\n  \"hbd\": 25277,\n  \"hbd</w>\": 13594,\n  \"hbo</w>\": 15252,\n  \"hc\": 15831,\n  \"hc</w>\": 7821,\n  \"hcs</w>\": 46850,\n  \"hd\": 11601,\n  \"hd</w>\": 4414,\n  \"hdd</w>\": 40508,\n  \"hdmi</w>\": 33302,\n  \"hdr</w>\": 28065,\n  \"he\": 651,\n  \"he</w>\": 797,\n  \"hea\": 27150,\n  \"hea</w>\": 32790,\n  \"head\": 1603,\n  \"head</w>\": 1375,\n  \"headache</w>\": 23849,\n  \"headaches</w>\": 38025,\n  \"headband</w>\": 28556,\n  \"headed</w>\": 6153,\n  \"header</w>\": 11077,\n  \"heading</w>\": 4409,\n  \"headless</w>\": 45219,\n  \"headlights</w>\": 42422,\n  \"headline</w>\": 10891,\n  \"headliner</w>\": 38880,\n  \"headlines</w>\": 14706,\n  \"headlining</w>\": 26971,\n  \"headphone</w>\": 37524,\n  \"headphones</w>\": 14906,\n  \"headquarters</w>\": 13041,\n  \"heads</w>\": 5174,\n  \"headset</w>\": 23883,\n  \"headshot</w>\": 34890,\n  \"heal\": 1231,\n  \"heal</w>\": 13833,\n  \"healed</w>\": 31456,\n  \"healer</w>\": 38328,\n  \"healey</w>\": 38985,\n  \"healing</w>\": 9295,\n  \"heals</w>\": 32384,\n  \"health\": 2145,\n  \"health</w>\": 1728,\n  \"healthand\": 43704,\n  \"healthcare\": 42500,\n  \"healthcare</w>\": 6023,\n  \"healthier</w>\": 18242,\n  \"healthtech</w>\": 42694,\n  \"healthy\": 10330,\n  \"healthy</w>\": 3782,\n  \"healthye\": 31532,\n  \"healthyeating</w>\": 33761,\n  \"healthyfood</w>\": 39996,\n  \"healthylifestyle</w>\": 46254,\n  \"healthyliving</w>\": 27293,\n  \"healy</w>\": 34299,\n  \"heap</w>\": 34781,\n  \"heaps</w>\": 44446,\n  \"hear\": 2749,\n  \"hear</w>\": 2584,\n  \"heard</w>\": 4063,\n  \"hearing\": 46353,\n  \"hearing</w>\": 5541,\n  \"hearings</w>\": 33175,\n  \"hearn</w>\": 36613,\n  \"hears</w>\": 25395,\n  \"heart\": 4975,\n  \"heart</w>\": 1936,\n  \"heartbeat</w>\": 29154,\n  \"heartbreak</w>\": 29281,\n  \"heartbreaking</w>\": 21322,\n  \"heartbroken</w>\": 35383,\n  \"hearted</w>\": 21679,\n  \"heartfelt</w>\": 22904,\n  \"hearth\": 31563,\n  \"hearthstone</w>\": 34054,\n  \"hearti\": 29345,\n  \"hearties</w>\": 44572,\n  \"heartland</w>\": 31923,\n  \"heartless</w>\": 47022,\n  \"heartnews</w>\": 40426,\n  \"hearts</w>\": 5516,\n  \"heartw\": 30002,\n  \"heartwarming</w>\": 34080,\n  \"hearty</w>\": 26994,\n  \"heat\": 12175,\n  \"heat</w>\": 4403,\n  \"heated</w>\": 17057,\n  \"heater</w>\": 23246,\n  \"heath\": 12794,\n  \"heath</w>\": 11719,\n  \"heather\": 20230,\n  \"heather</w>\": 12470,\n  \"heathrow</w>\": 24171,\n  \"heating</w>\": 12478,\n  \"heaton</w>\": 34557,\n  \"heats</w>\": 36106,\n  \"heatwave</w>\": 25726,\n  \"heav\": 2409,\n  \"heaven\": 15520,\n  \"heaven</w>\": 5545,\n  \"heavenly</w>\": 19117,\n  \"heavens</w>\": 26026,\n  \"heavier</w>\": 31253,\n  \"heaviest</w>\": 33268,\n  \"heavily</w>\": 14123,\n  \"heavy\": 12048,\n  \"heavy</w>\": 4200,\n  \"heavymetal</w>\": 39804,\n  \"heavyweight</w>\": 17448,\n  \"heb\": 24700,\n  \"heb</w>\": 34515,\n  \"hebdo</w>\": 41817,\n  \"hebrew</w>\": 27298,\n  \"hebrides</w>\": 45121,\n  \"hebron</w>\": 45725,\n  \"hec\": 18932,\n  \"heck\": 22985,\n  \"heck</w>\": 14427,\n  \"hectares</w>\": 44162,\n  \"hectic</w>\": 37245,\n  \"hector</w>\": 25852,\n  \"hed\": 18271,\n  \"hedge\": 16229,\n  \"hedge</w>\": 20294,\n  \"hedgehog</w>\": 21940,\n  \"hedges</w>\": 41345,\n  \"hee\": 18364,\n  \"hee</w>\": 15773,\n  \"heechul</w>\": 42487,\n  \"heed</w>\": 15118,\n  \"heel\": 33646,\n  \"heel</w>\": 16861,\n  \"heels</w>\": 10909,\n  \"heem</w>\": 30061,\n  \"heer</w>\": 40473,\n  \"hef\": 29473,\n  \"heff\": 48756,\n  \"hefty</w>\": 48584,\n  \"heg\": 41995,\n  \"heh</w>\": 25834,\n  \"hehe\": 48723,\n  \"hehe</w>\": 10658,\n  \"hehehe</w>\": 24138,\n  \"hei\": 6101,\n  \"hei</w>\": 29051,\n  \"heidel\": 42927,\n  \"heidelberg</w>\": 48445,\n  \"heidi\": 44860,\n  \"heidi</w>\": 23867,\n  \"heifer</w>\": 48219,\n  \"heigh\": 43883,\n  \"height</w>\": 10788,\n  \"heights</w>\": 8418,\n  \"heim\": 10931,\n  \"heim</w>\": 9768,\n  \"heimer</w>\": 39517,\n  \"hein\": 15487,\n  \"hein</w>\": 43206,\n  \"heine\": 28742,\n  \"heineken</w>\": 36874,\n  \"heinrich</w>\": 47877,\n  \"heinz</w>\": 32359,\n  \"heir\": 27083,\n  \"heir</w>\": 34007,\n  \"heirloom</w>\": 34232,\n  \"heirs</w>\": 43834,\n  \"heis\": 21849,\n  \"heisman</w>\": 34537,\n  \"heist</w>\": 31035,\n  \"heit</w>\": 37255,\n  \"hel\": 919,\n  \"hel</w>\": 11579,\n  \"hela</w>\": 48212,\n  \"held</w>\": 4042,\n  \"hele</w>\": 46129,\n  \"helen\": 17576,\n  \"helen</w>\": 11291,\n  \"helena</w>\": 23109,\n  \"helene</w>\": 41591,\n  \"helens</w>\": 45940,\n  \"heli\": 33874,\n  \"heli</w>\": 40183,\n  \"helicop\": 10035,\n  \"helicopter</w>\": 11956,\n  \"helicopters</w>\": 26922,\n  \"helium</w>\": 46505,\n  \"helix</w>\": 35247,\n  \"hell\": 8410,\n  \"hell</w>\": 4141,\n  \"hella</w>\": 19800,\n  \"hellboy</w>\": 48428,\n  \"helle\": 48600,\n  \"helle</w>\": 46968,\n  \"hellenic</w>\": 42544,\n  \"heller</w>\": 44464,\n  \"hello\": 12887,\n  \"hello</w>\": 3306,\n  \"hells</w>\": 47989,\n  \"helly</w>\": 48690,\n  \"helm\": 47970,\n  \"helm</w>\": 19520,\n  \"helmet</w>\": 11122,\n  \"helmets</w>\": 21843,\n  \"help\": 8641,\n  \"help</w>\": 1318,\n  \"helped</w>\": 4845,\n  \"helper</w>\": 29321,\n  \"helpers</w>\": 36316,\n  \"helpful</w>\": 12695,\n  \"helping</w>\": 3875,\n  \"helpless</w>\": 47638,\n  \"helpline</w>\": 43101,\n  \"helps</w>\": 5144,\n  \"helsin\": 17842,\n  \"helsinki</w>\": 19626,\n  \"hem\": 20270,\n  \"hem</w>\": 11148,\n  \"hemi\": 14256,\n  \"hemi</w>\": 46856,\n  \"heming\": 30819,\n  \"hemingway</w>\": 33470,\n  \"hemisphere</w>\": 32767,\n  \"hemmings</w>\": 34882,\n  \"hemo\": 43788,\n  \"hemp\": 28225,\n  \"hemp</w>\": 18467,\n  \"hems\": 32451,\n  \"hemsworth</w>\": 39428,\n  \"hen\": 2385,\n  \"hen</w>\": 8047,\n  \"hence</w>\": 23640,\n  \"hend\": 11560,\n  \"hender\": 49248,\n  \"henderson</w>\": 14348,\n  \"hendrick</w>\": 45296,\n  \"hendricks</w>\": 37588,\n  \"hendrix</w>\": 23605,\n  \"henge</w>\": 33104,\n  \"henley</w>\": 27853,\n  \"henna</w>\": 39455,\n  \"hennessy</w>\": 42667,\n  \"henri\": 19431,\n  \"henri</w>\": 21610,\n  \"henrik</w>\": 35772,\n  \"henry\": 16018,\n  \"henry</w>\": 5508,\n  \"hens</w>\": 31742,\n  \"henson</w>\": 32935,\n  \"hep\": 17724,\n  \"hep</w>\": 48791,\n  \"hepat\": 23767,\n  \"hepatitis</w>\": 32169,\n  \"hepburn</w>\": 26348,\n  \"her\": 1223,\n  \"her</w>\": 899,\n  \"hera</w>\": 38724,\n  \"heral\": 37809,\n  \"herald\": 27625,\n  \"herald</w>\": 12851,\n  \"herb\": 26116,\n  \"herb</w>\": 15302,\n  \"herbal</w>\": 21868,\n  \"herbali\": 44087,\n  \"herbalife</w>\": 48364,\n  \"herbert</w>\": 19935,\n  \"herbs</w>\": 17320,\n  \"hercules</w>\": 26539,\n  \"herd\": 36142,\n  \"herd</w>\": 18589,\n  \"here\": 9134,\n  \"here</w>\": 763,\n  \"hered\": 47976,\n  \"hereford</w>\": 35543,\n  \"heres</w>\": 13566,\n  \"hereto\": 47673,\n  \"heri</w>\": 31392,\n  \"herit\": 4720,\n  \"heritag\": 38273,\n  \"heritage\": 20962,\n  \"heritage</w>\": 5455,\n  \"herman\": 31890,\n  \"herman</w>\": 21568,\n  \"hermann</w>\": 40942,\n  \"hermes</w>\": 34563,\n  \"hermi\": 35265,\n  \"hermione</w>\": 45502,\n  \"hermit</w>\": 43953,\n  \"hermitage</w>\": 47706,\n  \"hermo\": 40967,\n  \"hermosa</w>\": 42531,\n  \"hern\": 30571,\n  \"hern</w>\": 43576,\n  \"hernandez</w>\": 17707,\n  \"hero\": 7338,\n  \"hero</w>\": 3756,\n  \"heroes\": 38010,\n  \"heroes</w>\": 5506,\n  \"heroic</w>\": 24255,\n  \"heroin</w>\": 23841,\n  \"heroine</w>\": 27420,\n  \"heron</w>\": 22593,\n  \"heros</w>\": 37642,\n  \"herr</w>\": 38537,\n  \"herrera</w>\": 27755,\n  \"herring</w>\": 30211,\n  \"hers</w>\": 25359,\n  \"herself</w>\": 9207,\n  \"hersh\": 20379,\n  \"hershey</w>\": 29734,\n  \"hert\": 26744,\n  \"hertfordshire</w>\": 41070,\n  \"herts</w>\": 35784,\n  \"herty</w>\": 23454,\n  \"hertz</w>\": 49383,\n  \"hes\": 30553,\n  \"hes</w>\": 12784,\n  \"hesit\": 23933,\n  \"hesitate</w>\": 34967,\n  \"hess</w>\": 41888,\n  \"hester</w>\": 31105,\n  \"het\": 37527,\n  \"het</w>\": 19678,\n  \"hetero\": 26405,\n  \"heu\": 20105,\n  \"heughan</w>\": 32298,\n  \"hew\": 48141,\n  \"hew</w>\": 43051,\n  \"hewitt</w>\": 28871,\n  \"hex\": 16255,\n  \"hex</w>\": 31241,\n  \"hey\": 10759,\n  \"hey</w>\": 2189,\n  \"hez\": 34591,\n  \"hezbollah</w>\": 37636,\n  \"hf\": 26606,\n  \"hf</w>\": 20603,\n  \"hfx\": 47297,\n  \"hg\": 23986,\n  \"hg</w>\": 26237,\n  \"hgtv</w>\": 47657,\n  \"hh\": 3280,\n  \"hh</w>\": 5180,\n  \"hhh</w>\": 8281,\n  \"hhhh\": 19391,\n  \"hhhh</w>\": 13121,\n  \"hhhhh</w>\": 24246,\n  \"hhhhhh</w>\": 37278,\n  \"hhs</w>\": 27006,\n  \"hi\": 677,\n  \"hi</w>\": 1883,\n  \"hia</w>\": 20672,\n  \"hiatus</w>\": 27823,\n  \"hib\": 15922,\n  \"hiber\": 38799,\n  \"hibis\": 36226,\n  \"hibiscus</w>\": 36460,\n  \"hibition</w>\": 24658,\n  \"hibs</w>\": 42814,\n  \"hic\": 3549,\n  \"hic</w>\": 38079,\n  \"hick\": 14813,\n  \"hickman</w>\": 49148,\n  \"hickory</w>\": 29905,\n  \"hicks</w>\": 23429,\n  \"hid\": 15552,\n  \"hid</w>\": 14451,\n  \"hidalgo</w>\": 47464,\n  \"hidden\": 28305,\n  \"hidden</w>\": 7029,\n  \"hiddleston</w>\": 31444,\n  \"hide\": 17725,\n  \"hide</w>\": 9379,\n  \"hideous</w>\": 46588,\n  \"hides</w>\": 30800,\n  \"hiding</w>\": 11371,\n  \"hie</w>\": 15763,\n  \"hier\": 23433,\n  \"hier</w>\": 29913,\n  \"hierarchy</w>\": 44442,\n  \"hifi</w>\": 38168,\n  \"hig\": 38108,\n  \"higgins</w>\": 21783,\n  \"high\": 1487,\n  \"high</w>\": 1400,\n  \"higher</w>\": 5321,\n  \"highered</w>\": 27072,\n  \"highest</w>\": 5317,\n  \"highland\": 32244,\n  \"highland</w>\": 16062,\n  \"highlander</w>\": 46251,\n  \"highlanders</w>\": 40445,\n  \"highlands</w>\": 16883,\n  \"highlight</w>\": 8264,\n  \"highlighted</w>\": 22252,\n  \"highlighter</w>\": 45460,\n  \"highlighting</w>\": 17344,\n  \"highlights</w>\": 6173,\n  \"highly</w>\": 5302,\n  \"highness</w>\": 38694,\n  \"highs</w>\": 15144,\n  \"highschool</w>\": 23102,\n  \"highway\": 45344,\n  \"highway</w>\": 7620,\n  \"highways</w>\": 28007,\n  \"higu\": 39115,\n  \"hihi</w>\": 36240,\n  \"hii</w>\": 42315,\n  \"hijab</w>\": 31407,\n  \"hika</w>\": 41356,\n  \"hikari</w>\": 44624,\n  \"hike</w>\": 9404,\n  \"hiked</w>\": 36471,\n  \"hiker</w>\": 40947,\n  \"hikers</w>\": 46090,\n  \"hikes</w>\": 27076,\n  \"hiking</w>\": 9118,\n  \"hiko</w>\": 48708,\n  \"hil\": 3508,\n  \"hil</w>\": 17927,\n  \"hila</w>\": 38837,\n  \"hilar\": 37337,\n  \"hilari\": 7784,\n  \"hilarious</w>\": 8358,\n  \"hilariously</w>\": 43476,\n  \"hilary\": 45898,\n  \"hilary</w>\": 25415,\n  \"hilde\": 45382,\n  \"hill\": 3671,\n  \"hill</w>\": 2682,\n  \"hillary\": 13257,\n  \"hillary</w>\": 7074,\n  \"hillaryclinton</w>\": 15357,\n  \"hilli\": 32513,\n  \"hills\": 24178,\n  \"hills</w>\": 5289,\n  \"hillsborough</w>\": 32157,\n  \"hillside</w>\": 37194,\n  \"hilltop</w>\": 45858,\n  \"hilly</w>\": 32483,\n  \"hilton\": 33621,\n  \"hilton</w>\": 14012,\n  \"him\": 4128,\n  \"him</w>\": 1269,\n  \"himach\": 29132,\n  \"himachal</w>\": 35461,\n  \"himalay\": 17552,\n  \"himalayan</w>\": 30318,\n  \"himalayas</w>\": 32872,\n  \"hime</w>\": 45892,\n  \"himself</w>\": 4530,\n  \"himss</w>\": 41730,\n  \"hin\": 1676,\n  \"hin</w>\": 37930,\n  \"hina</w>\": 40571,\n  \"hinakhan</w>\": 45518,\n  \"hinch\": 49320,\n  \"hind\": 34460,\n  \"hind</w>\": 23293,\n  \"hindi</w>\": 14967,\n  \"hinds</w>\": 47859,\n  \"hindu\": 17587,\n  \"hindu</w>\": 12053,\n  \"hinduism</w>\": 40592,\n  \"hindus</w>\": 25701,\n  \"hindustan</w>\": 46553,\n  \"hines</w>\": 37462,\n  \"hing\": 37968,\n  \"hini</w>\": 33564,\n  \"hino</w>\": 45343,\n  \"hint</w>\": 11868,\n  \"hinton</w>\": 47165,\n  \"hints</w>\": 20594,\n  \"hio</w>\": 32897,\n  \"hip\": 11725,\n  \"hip</w>\": 6584,\n  \"hipho\": 8819,\n  \"hiphop\": 26598,\n  \"hiphop</w>\": 10914,\n  \"hipp\": 13607,\n  \"hippie</w>\": 28637,\n  \"hippo\": 28398,\n  \"hippo</w>\": 36729,\n  \"hips</w>\": 30191,\n  \"hipstamatic</w>\": 31002,\n  \"hipster</w>\": 19987,\n  \"hipsters</w>\": 48265,\n  \"hir\": 4959,\n  \"hir</w>\": 14728,\n  \"hira</w>\": 42577,\n  \"hire\": 32356,\n  \"hire</w>\": 8243,\n  \"hired</w>\": 17602,\n  \"hires</w>\": 24133,\n  \"hiring</w>\": 7835,\n  \"hiro\": 17396,\n  \"hiro</w>\": 20588,\n  \"hiroshima</w>\": 33867,\n  \"hirsch</w>\": 46967,\n  \"his\": 15211,\n  \"his</w>\": 787,\n  \"hism</w>\": 23502,\n  \"hispan\": 16843,\n  \"hispanic</w>\": 22676,\n  \"hist\": 21710,\n  \"hist</w>\": 13779,\n  \"histo\": 33479,\n  \"histor\": 2993,\n  \"historia</w>\": 46010,\n  \"historian</w>\": 20697,\n  \"historians</w>\": 35200,\n  \"historic\": 30195,\n  \"historic</w>\": 5726,\n  \"historical\": 34154,\n  \"historical</w>\": 8039,\n  \"historically</w>\": 30445,\n  \"histories</w>\": 34736,\n  \"history\": 11142,\n  \"history</w>\": 1695,\n  \"historymonth</w>\": 19356,\n  \"historyof\": 35905,\n  \"hit\": 5453,\n  \"hit</w>\": 2341,\n  \"hitch\": 22937,\n  \"hitch</w>\": 36203,\n  \"hitler</w>\": 16518,\n  \"hitman</w>\": 33290,\n  \"hits</w>\": 4712,\n  \"hitter</w>\": 23538,\n  \"hitters</w>\": 39724,\n  \"hitting</w>\": 7957,\n  \"hiv\": 44410,\n  \"hiv</w>\": 11018,\n  \"hive\": 38162,\n  \"hive</w>\": 18521,\n  \"hiya</w>\": 42393,\n  \"hk\": 22648,\n  \"hk</w>\": 12307,\n  \"hl\": 8297,\n  \"hl</w>\": 5956,\n  \"hle</w>\": 32389,\n  \"hler</w>\": 35418,\n  \"hm\": 17913,\n  \"hm</w>\": 7631,\n  \"hmm</w>\": 13725,\n  \"hmmm</w>\": 17032,\n  \"hmmmm</w>\": 34598,\n  \"hms</w>\": 14625,\n  \"hmu</w>\": 21630,\n  \"hmv</w>\": 49288,\n  \"hn\": 22905,\n  \"hn</w>\": 7478,\n  \"hns</w>\": 48412,\n  \"ho\": 606,\n  \"ho</w>\": 2971,\n  \"hoa</w>\": 37517,\n  \"hoar\": 31628,\n  \"hoax</w>\": 33438,\n  \"hob\": 18212,\n  \"hobart</w>\": 31646,\n  \"hobb\": 16175,\n  \"hobbies</w>\": 36370,\n  \"hobbit</w>\": 23207,\n  \"hobbs</w>\": 34343,\n  \"hobby\": 41120,\n  \"hobby</w>\": 17557,\n  \"hobo\": 34613,\n  \"hobo</w>\": 41334,\n  \"hoboken</w>\": 41568,\n  \"hoc</w>\": 35880,\n  \"hoch\": 43772,\n  \"hock\": 34914,\n  \"hock</w>\": 46574,\n  \"hockey\": 16499,\n  \"hockey</w>\": 4111,\n  \"hoco</w>\": 34771,\n  \"hod\": 31062,\n  \"hodg\": 23660,\n  \"hodge</w>\": 40585,\n  \"hodges</w>\": 35061,\n  \"hodgson</w>\": 37044,\n  \"hoe\": 32502,\n  \"hoe</w>\": 11262,\n  \"hoek</w>\": 40073,\n  \"hoes</w>\": 21164,\n  \"hof\": 20186,\n  \"hof</w>\": 12789,\n  \"hofer</w>\": 38654,\n  \"hoff\": 32860,\n  \"hoff</w>\": 22751,\n  \"hofficial</w>\": 41949,\n  \"hoffman</w>\": 22026,\n  \"hog\": 12075,\n  \"hog</w>\": 13255,\n  \"hogan</w>\": 19757,\n  \"hogg</w>\": 42005,\n  \"hogs</w>\": 23242,\n  \"hogwarts</w>\": 29168,\n  \"hoh</w>\": 43947,\n  \"hoi\": 39295,\n  \"hok\": 26942,\n  \"hok</w>\": 47167,\n  \"hokies</w>\": 35168,\n  \"hokkaido</w>\": 49145,\n  \"hol\": 1187,\n  \"hol</w>\": 7349,\n  \"hola</w>\": 28724,\n  \"hold\": 36496,\n  \"hold</w>\": 3254,\n  \"holden</w>\": 21869,\n  \"holder</w>\": 7862,\n  \"holders</w>\": 10074,\n  \"holding</w>\": 5050,\n  \"holdings</w>\": 24832,\n  \"holds</w>\": 7286,\n  \"hole\": 47242,\n  \"hole</w>\": 5341,\n  \"holes</w>\": 11266,\n  \"holi\": 2093,\n  \"holi</w>\": 21926,\n  \"holic</w>\": 16348,\n  \"holics</w>\": 29782,\n  \"holiday\": 13168,\n  \"holiday</w>\": 2878,\n  \"holidays</w>\": 5372,\n  \"holiness</w>\": 37259,\n  \"holistic</w>\": 26300,\n  \"holl\": 27699,\n  \"holla</w>\": 26500,\n  \"holland\": 31608,\n  \"holland</w>\": 9978,\n  \"hollande</w>\": 47690,\n  \"holler</w>\": 49047,\n  \"holli\": 24019,\n  \"holliday</w>\": 41624,\n  \"hollow\": 41221,\n  \"hollow</w>\": 16691,\n  \"holloway</w>\": 29435,\n  \"holly\": 12731,\n  \"holly</w>\": 11923,\n  \"hollyo\": 41525,\n  \"hollyoaks</w>\": 43352,\n  \"hollywood\": 24655,\n  \"hollywood</w>\": 5518,\n  \"holm\": 34758,\n  \"holm</w>\": 12739,\n  \"holme</w>\": 46149,\n  \"holmes</w>\": 12756,\n  \"holo\": 10317,\n  \"holocau\": 14688,\n  \"holocaust</w>\": 16476,\n  \"hols</w>\": 33344,\n  \"holt</w>\": 18868,\n  \"holtz</w>\": 44743,\n  \"holy\": 13910,\n  \"holy</w>\": 4874,\n  \"hom\": 906,\n  \"hom</w>\": 47397,\n  \"homa</w>\": 9557,\n  \"homage</w>\": 17746,\n  \"home\": 2143,\n  \"home</w>\": 1137,\n  \"homebrew</w>\": 35046,\n  \"homec\": 33869,\n  \"homecoming</w>\": 9008,\n  \"homedecor</w>\": 15695,\n  \"homedepot</w>\": 38707,\n  \"homegrown</w>\": 32554,\n  \"homeitems</w>\": 42972,\n  \"homeland</w>\": 21633,\n  \"homeless\": 18403,\n  \"homeless</w>\": 9661,\n  \"homelessness</w>\": 19851,\n  \"homemade</w>\": 7889,\n  \"homeof\": 48856,\n  \"homeowner</w>\": 37267,\n  \"homeowners</w>\": 29882,\n  \"homepage</w>\": 29828,\n  \"homer\": 29307,\n  \"homer</w>\": 16931,\n  \"homers</w>\": 38333,\n  \"homes\": 19480,\n  \"homes</w>\": 5416,\n  \"homeschool</w>\": 40994,\n  \"homestead</w>\": 32609,\n  \"homeswee\": 46298,\n  \"hometown</w>\": 12238,\n  \"homework</w>\": 12495,\n  \"homicide</w>\": 21520,\n  \"homie</w>\": 12540,\n  \"homies</w>\": 18893,\n  \"homme</w>\": 26193,\n  \"homo\": 18129,\n  \"homo</w>\": 30504,\n  \"homophobia</w>\": 37875,\n  \"homophobic</w>\": 40975,\n  \"homosexual</w>\": 44288,\n  \"homosexuality</w>\": 46720,\n  \"homs</w>\": 45413,\n  \"hon\": 1279,\n  \"hon</w>\": 10296,\n  \"honda</w>\": 8553,\n  \"honduras</w>\": 29715,\n  \"hone</w>\": 38640,\n  \"honest\": 7814,\n  \"honest</w>\": 9602,\n  \"honestly</w>\": 9155,\n  \"honesty</w>\": 24939,\n  \"honey\": 9843,\n  \"honey</w>\": 6406,\n  \"honeycomb</w>\": 48583,\n  \"honeymoon</w>\": 22527,\n  \"hong\": 12144,\n  \"hong</w>\": 8598,\n  \"hongkong</w>\": 16659,\n  \"honi</w>\": 17918,\n  \"honolulu</w>\": 28096,\n  \"honor\": 9206,\n  \"honor</w>\": 3402,\n  \"honorable</w>\": 19498,\n  \"honorary</w>\": 15675,\n  \"honore\": 25868,\n  \"honored</w>\": 5494,\n  \"honoree</w>\": 38993,\n  \"honorees</w>\": 43012,\n  \"honoring</w>\": 10771,\n  \"honors</w>\": 10248,\n  \"honour</w>\": 8240,\n  \"honourable</w>\": 29855,\n  \"honoured</w>\": 11945,\n  \"honouring</w>\": 37754,\n  \"honours</w>\": 22558,\n  \"hoo\": 2300,\n  \"hoo</w>\": 7920,\n  \"hood\": 18681,\n  \"hood</w>\": 3222,\n  \"hooded</w>\": 33631,\n  \"hoodie</w>\": 13444,\n  \"hoodies</w>\": 25974,\n  \"hoods</w>\": 16664,\n  \"hoof</w>\": 44555,\n  \"hook\": 30488,\n  \"hook</w>\": 10395,\n  \"hookah</w>\": 34214,\n  \"hooked</w>\": 18138,\n  \"hookem</w>\": 31465,\n  \"hooker</w>\": 37891,\n  \"hooking</w>\": 35240,\n  \"hooks</w>\": 25068,\n  \"hooligans</w>\": 48176,\n  \"hoon</w>\": 21368,\n  \"hooo</w>\": 44538,\n  \"hoop\": 31516,\n  \"hoop</w>\": 19573,\n  \"hooper</w>\": 35221,\n  \"hoops</w>\": 9351,\n  \"hoor\": 22155,\n  \"hooray</w>\": 24940,\n  \"hoos</w>\": 46462,\n  \"hoosier</w>\": 48886,\n  \"hoosiers</w>\": 42780,\n  \"hoot</w>\": 29164,\n  \"hoover</w>\": 25691,\n  \"hop\": 10848,\n  \"hop</w>\": 5833,\n  \"hope\": 5263,\n  \"hope</w>\": 1683,\n  \"hoped</w>\": 30628,\n  \"hopeful</w>\": 21453,\n  \"hopefully</w>\": 7602,\n  \"hopeless</w>\": 35586,\n  \"hopes</w>\": 10018,\n  \"hoping</w>\": 7207,\n  \"hopkins</w>\": 17821,\n  \"hopp\": 48839,\n  \"hopped</w>\": 34220,\n  \"hopper</w>\": 21748,\n  \"hopping</w>\": 27606,\n  \"hoppy</w>\": 38359,\n  \"hops</w>\": 21137,\n  \"hor\": 1407,\n  \"hor</w>\": 33847,\n  \"hora</w>\": 26013,\n  \"horace</w>\": 39282,\n  \"horan</w>\": 26857,\n  \"horde</w>\": 44947,\n  \"hore</w>\": 15380,\n  \"horiz\": 8144,\n  \"horizon\": 17924,\n  \"horizon</w>\": 11920,\n  \"horizons</w>\": 29685,\n  \"horizontal</w>\": 25775,\n  \"hormon\": 27096,\n  \"hormone</w>\": 31283,\n  \"hormones</w>\": 35162,\n  \"horn\": 15771,\n  \"horn</w>\": 9607,\n  \"horne</w>\": 38143,\n  \"horned</w>\": 34526,\n  \"hornet</w>\": 28739,\n  \"hornets</w>\": 20124,\n  \"horns</w>\": 22109,\n  \"horny</w>\": 32622,\n  \"horo\": 21500,\n  \"horoscope</w>\": 38453,\n  \"horowitz</w>\": 44669,\n  \"horri\": 8656,\n  \"horrible</w>\": 13726,\n  \"horribly</w>\": 45484,\n  \"horrific</w>\": 25314,\n  \"horrifying</w>\": 38901,\n  \"horror\": 13787,\n  \"horror</w>\": 5032,\n  \"horrormovies</w>\": 46682,\n  \"horrors</w>\": 33321,\n  \"horse\": 8562,\n  \"horse</w>\": 4558,\n  \"horseback</w>\": 43673,\n  \"horseman</w>\": 48885,\n  \"horsepower</w>\": 36882,\n  \"horser\": 23096,\n  \"horseracing</w>\": 30693,\n  \"horses</w>\": 8809,\n  \"horseshoe</w>\": 29242,\n  \"horst</w>\": 37182,\n  \"hort</w>\": 19482,\n  \"horticul\": 27141,\n  \"horticulture</w>\": 39998,\n  \"horton</w>\": 25945,\n  \"hortons</w>\": 38422,\n  \"horus</w>\": 29794,\n  \"hos\": 44320,\n  \"hos</w>\": 25008,\n  \"hosa</w>\": 44618,\n  \"hose</w>\": 19662,\n  \"hoseok</w>\": 38817,\n  \"hosp\": 2847,\n  \"hosp</w>\": 37853,\n  \"hospice</w>\": 20533,\n  \"hospit\": 7180,\n  \"hospital\": 29399,\n  \"hospital</w>\": 3851,\n  \"hospitality</w>\": 11657,\n  \"hospitalized</w>\": 36915,\n  \"hospitals</w>\": 13816,\n  \"host\": 17403,\n  \"host</w>\": 3953,\n  \"hostage</w>\": 26119,\n  \"hoste\": 31700,\n  \"hosted</w>\": 6017,\n  \"hostel</w>\": 27225,\n  \"hostess</w>\": 39692,\n  \"hostile</w>\": 28074,\n  \"hosting</w>\": 4857,\n  \"hosts</w>\": 8718,\n  \"hot\": 2851,\n  \"hot</w>\": 2069,\n  \"hota</w>\": 43289,\n  \"hotdog</w>\": 43758,\n  \"hotel\": 14591,\n  \"hotel</w>\": 2738,\n  \"hotels</w>\": 8654,\n  \"hotline</w>\": 30516,\n  \"hotmail</w>\": 46427,\n  \"hotness</w>\": 39803,\n  \"hotra</w>\": 27109,\n  \"hotro\": 47823,\n  \"hotspot</w>\": 36606,\n  \"hotspur</w>\": 35176,\n  \"hotter</w>\": 23591,\n  \"hottest</w>\": 8279,\n  \"hottie</w>\": 22804,\n  \"hotties</w>\": 46027,\n  \"hou\": 1011,\n  \"hou</w>\": 10122,\n  \"hough</w>\": 44529,\n  \"houghton</w>\": 36133,\n  \"houn\": 39273,\n  \"houn</w>\": 33607,\n  \"hound\": 33996,\n  \"hound</w>\": 13561,\n  \"hounds</w>\": 21178,\n  \"hounews</w>\": 48373,\n  \"hour\": 14930,\n  \"hour</w>\": 2232,\n  \"hourly</w>\": 30918,\n  \"hours</w>\": 2382,\n  \"house\": 4107,\n  \"house</w>\": 1212,\n  \"housed</w>\": 37518,\n  \"household</w>\": 12412,\n  \"households</w>\": 27167,\n  \"housel\": 48685,\n  \"housemusic</w>\": 28468,\n  \"houseof\": 19928,\n  \"houses</w>\": 7791,\n  \"housewives</w>\": 38523,\n  \"housing\": 32924,\n  \"housing</w>\": 5734,\n  \"houston\": 16564,\n  \"houston</w>\": 5663,\n  \"hov</w>\": 40291,\n  \"hove</w>\": 29674,\n  \"hoven</w>\": 35559,\n  \"hover\": 36252,\n  \"hover</w>\": 49016,\n  \"hovering</w>\": 43437,\n  \"how\": 7470,\n  \"how</w>\": 829,\n  \"howar\": 37672,\n  \"howard\": 25447,\n  \"howard</w>\": 7632,\n  \"howdy</w>\": 42216,\n  \"howe\": 8179,\n  \"howe</w>\": 24614,\n  \"howell</w>\": 25297,\n  \"hower</w>\": 32920,\n  \"however</w>\": 8467,\n  \"howi\": 47883,\n  \"howie</w>\": 42939,\n  \"howl</w>\": 40332,\n  \"howling</w>\": 41771,\n  \"howto\": 38191,\n  \"howto</w>\": 44060,\n  \"hoy\": 39625,\n  \"hoy</w>\": 13278,\n  \"hoya</w>\": 40978,\n  \"hp\": 23753,\n  \"hp</w>\": 6371,\n  \"hpa</w>\": 30983,\n  \"hpc</w>\": 39936,\n  \"hpe</w>\": 33787,\n  \"hpv</w>\": 45765,\n  \"hq\": 33571,\n  \"hq</w>\": 4693,\n  \"hr\": 4810,\n  \"hr</w>\": 4086,\n  \"hra\": 21320,\n  \"hra</w>\": 17212,\n  \"hrc</w>\": 18139,\n  \"hrh</w>\": 29103,\n  \"hri\": 21068,\n  \"hrithik</w>\": 45371,\n  \"hrs</w>\": 7157,\n  \"hru</w>\": 24127,\n  \"hrw</w>\": 25064,\n  \"hs\": 9343,\n  \"hs</w>\": 2466,\n  \"hsbc</w>\": 31508,\n  \"hsc</w>\": 43510,\n  \"hse</w>\": 34057,\n  \"hsfb</w>\": 29539,\n  \"hsv</w>\": 47311,\n  \"ht\": 11123,\n  \"ht</w>\": 7801,\n  \"hta\": 23452,\n  \"hta</w>\": 49384,\n  \"htafc</w>\": 42821,\n  \"htc\": 48942,\n  \"htc</w>\": 17635,\n  \"html</w>\": 18231,\n  \"hts</w>\": 43710,\n  \"htt\": 10620,\n  \"http</w>\": 15066,\n  \"https</w>\": 30901,\n  \"httr</w>\": 49372,\n  \"httweets</w>\": 43198,\n  \"hu\": 845,\n  \"hu</w>\": 5949,\n  \"hua</w>\": 22138,\n  \"huan</w>\": 41405,\n  \"huang</w>\": 32013,\n  \"huar\": 46916,\n  \"huawe\": 17709,\n  \"huawei</w>\": 21128,\n  \"hub\": 18775,\n  \"hub</w>\": 7028,\n  \"hubb\": 23183,\n  \"hubbard</w>\": 33288,\n  \"hubble</w>\": 30421,\n  \"hubby</w>\": 16947,\n  \"hubert</w>\": 40699,\n  \"hubs</w>\": 29327,\n  \"huck\": 22909,\n  \"huckabee</w>\": 43666,\n  \"hud\": 7169,\n  \"hud</w>\": 28563,\n  \"hudder\": 22629,\n  \"huddersfield</w>\": 24220,\n  \"huddle</w>\": 33435,\n  \"hudson\": 25873,\n  \"hudson</w>\": 11260,\n  \"hue\": 48380,\n  \"hue</w>\": 21465,\n  \"hues</w>\": 38003,\n  \"huey</w>\": 39663,\n  \"huff\": 18746,\n  \"huff</w>\": 44999,\n  \"huffpost\": 45887,\n  \"hug\": 40790,\n  \"hug</w>\": 10359,\n  \"huge</w>\": 2699,\n  \"hugely</w>\": 24648,\n  \"hugged</w>\": 41333,\n  \"hugging</w>\": 27058,\n  \"hugh\": 8723,\n  \"hugh</w>\": 15385,\n  \"hughes</w>\": 11418,\n  \"hugo\": 43935,\n  \"hugo</w>\": 17132,\n  \"hugs</w>\": 14248,\n  \"huh</w>\": 13348,\n  \"huhu</w>\": 32134,\n  \"hui</w>\": 29978,\n  \"hul\": 7911,\n  \"hula</w>\": 40145,\n  \"hulk</w>\": 17637,\n  \"hull\": 25154,\n  \"hull</w>\": 10375,\n  \"hulu</w>\": 24666,\n  \"hum\": 5823,\n  \"hum</w>\": 16283,\n  \"human\": 3175,\n  \"human</w>\": 2751,\n  \"humane</w>\": 20220,\n  \"humanitarian</w>\": 14170,\n  \"humanities</w>\": 24949,\n  \"humanity</w>\": 9420,\n  \"humanright\": 44385,\n  \"humanrights</w>\": 14148,\n  \"humans</w>\": 8324,\n  \"humb\": 9988,\n  \"humber\": 30602,\n  \"humber</w>\": 38063,\n  \"humble\": 38703,\n  \"humble</w>\": 10889,\n  \"humbled</w>\": 19682,\n  \"humbling</w>\": 39757,\n  \"humbold\": 24739,\n  \"humboldt</w>\": 31389,\n  \"hume</w>\": 38197,\n  \"humid\": 14778,\n  \"humid</w>\": 27447,\n  \"humidi\": 47666,\n  \"humidity</w>\": 15469,\n  \"humil\": 27205,\n  \"humili\": 25332,\n  \"humility</w>\": 28535,\n  \"humming\": 26515,\n  \"hummingbird</w>\": 33072,\n  \"hummus</w>\": 31785,\n  \"humor\": 29369,\n  \"humor</w>\": 11186,\n  \"humorous</w>\": 38173,\n  \"humour</w>\": 19161,\n  \"hump\": 16673,\n  \"hump</w>\": 24529,\n  \"humpback</w>\": 47662,\n  \"humpday</w>\": 27693,\n  \"humph\": 19767,\n  \"humphrey</w>\": 31549,\n  \"hun\": 1616,\n  \"hun</w>\": 10795,\n  \"hundre\": 8505,\n  \"hundred</w>\": 11898,\n  \"hundreds</w>\": 8879,\n  \"hung</w>\": 13825,\n  \"hungar\": 19420,\n  \"hungarian</w>\": 23325,\n  \"hungary</w>\": 17232,\n  \"hunger\": 25565,\n  \"hunger</w>\": 10184,\n  \"hungergames</w>\": 47507,\n  \"hungover</w>\": 41110,\n  \"hungry\": 44845,\n  \"hungry</w>\": 8451,\n  \"hunk</w>\": 33912,\n  \"hunt\": 16498,\n  \"hunt</w>\": 5774,\n  \"hunted</w>\": 37373,\n  \"hunter\": 16531,\n  \"hunter</w>\": 6099,\n  \"hunters</w>\": 16115,\n  \"hunting\": 27830,\n  \"hunting</w>\": 7507,\n  \"huntington</w>\": 23521,\n  \"hunts</w>\": 34041,\n  \"huntsville</w>\": 34544,\n  \"hur\": 2305,\n  \"hur</w>\": 34523,\n  \"hurd</w>\": 44915,\n  \"hurdle</w>\": 27486,\n  \"hurdles</w>\": 25440,\n  \"huri</w>\": 42486,\n  \"hurley</w>\": 30166,\n  \"hurling</w>\": 24738,\n  \"huron</w>\": 36147,\n  \"hurrah</w>\": 40599,\n  \"hurric\": 6543,\n  \"hurrican\": 36105,\n  \"hurricane\": 24051,\n  \"hurricane</w>\": 8782,\n  \"hurricanes</w>\": 22357,\n  \"hurry</w>\": 10921,\n  \"hurst\": 44742,\n  \"hurst</w>\": 11760,\n  \"hurt</w>\": 7413,\n  \"hurting</w>\": 24017,\n  \"hurts</w>\": 13059,\n  \"hus\": 5111,\n  \"hus</w>\": 35853,\n  \"husband</w>\": 6179,\n  \"husbands</w>\": 33612,\n  \"hush</w>\": 28728,\n  \"husk\": 19246,\n  \"huskers</w>\": 26946,\n  \"huskies</w>\": 20988,\n  \"husky</w>\": 20421,\n  \"huss\": 13733,\n  \"hussain</w>\": 17940,\n  \"hussein</w>\": 31336,\n  \"hust\": 27279,\n  \"hustle</w>\": 15709,\n  \"huston</w>\": 46480,\n  \"hut\": 20924,\n  \"hut</w>\": 16503,\n  \"hutch\": 31018,\n  \"hutch</w>\": 33203,\n  \"hutchinson</w>\": 35721,\n  \"hutto\": 27662,\n  \"hutton</w>\": 38321,\n  \"hv\": 17209,\n  \"hv</w>\": 18593,\n  \"hvac</w>\": 27492,\n  \"hw\": 27491,\n  \"hw</w>\": 18876,\n  \"hwa</w>\": 32352,\n  \"hwan</w>\": 44390,\n  \"hwang</w>\": 46775,\n  \"hwy</w>\": 13812,\n  \"hy\": 1441,\n  \"hy</w>\": 17827,\n  \"hya</w>\": 31600,\n  \"hyacin\": 47263,\n  \"hyatt\": 44856,\n  \"hyatt</w>\": 25146,\n  \"hybri\": 9084,\n  \"hybrid</w>\": 10156,\n  \"hyd</w>\": 42382,\n  \"hyde\": 46484,\n  \"hyde</w>\": 16343,\n  \"hyder\": 13960,\n  \"hyderabad</w>\": 14801,\n  \"hydr\": 8031,\n  \"hydra\": 44414,\n  \"hydra</w>\": 40420,\n  \"hydrange\": 43298,\n  \"hydrate</w>\": 29628,\n  \"hydrated</w>\": 23300,\n  \"hydrating</w>\": 47653,\n  \"hydration</w>\": 24174,\n  \"hydrau\": 26017,\n  \"hydraulic</w>\": 26189,\n  \"hydro\": 8368,\n  \"hydro</w>\": 22595,\n  \"hydrogen</w>\": 20974,\n  \"hye\": 32724,\n  \"hye</w>\": 25792,\n  \"hygi\": 16277,\n  \"hygiene</w>\": 19591,\n  \"hymn</w>\": 41350,\n  \"hyo\": 38960,\n  \"hyo</w>\": 35078,\n  \"hyp\": 16964,\n  \"hype\": 30353,\n  \"hype</w>\": 11111,\n  \"hyped</w>\": 22507,\n  \"hyper\": 7997,\n  \"hyper</w>\": 22146,\n  \"hypertension</w>\": 40698,\n  \"hypno\": 23355,\n  \"hypnosis</w>\": 48138,\n  \"hypnoti\": 40440,\n  \"hypo\": 10252,\n  \"hypocr\": 30711,\n  \"hypocri\": 25606,\n  \"hypocrisy</w>\": 26296,\n  \"hypocrite</w>\": 44125,\n  \"hypothe\": 46966,\n  \"hypothesis</w>\": 44956,\n  \"hyster\": 24235,\n  \"hysteria</w>\": 45965,\n  \"hysterical</w>\": 48627,\n  \"hyuk</w>\": 20452,\n  \"hyun\": 11831,\n  \"hyun</w>\": 8589,\n  \"hyundai</w>\": 17094,\n  \"hyung\": 46901,\n  \"hyung</w>\": 16551,\n  \"hz</w>\": 32533,\n  \"i\": 72,\n  \"i</w>\": 328,\n  \"ia\": 12486,\n  \"ia</w>\": 1073,\n  \"iac\": 32838,\n  \"iac</w>\": 44063,\n  \"iaf</w>\": 40789,\n  \"iah</w>\": 35052,\n  \"iain</w>\": 30103,\n  \"ial\": 11530,\n  \"ial</w>\": 1974,\n  \"ials</w>\": 20940,\n  \"iam\": 3579,\n  \"iam</w>\": 11415,\n  \"iambic\": 43668,\n  \"iambicpent</w>\": 43891,\n  \"iamsrk</w>\": 15103,\n  \"ian\": 7723,\n  \"ian</w>\": 1800,\n  \"ians</w>\": 6451,\n  \"iansomerhalder</w>\": 47077,\n  \"iart\": 18413,\n  \"iartg</w>\": 18669,\n  \"ias\": 32303,\n  \"ias</w>\": 14620,\n  \"ib\": 3962,\n  \"ib</w>\": 13554,\n  \"iba</w>\": 39763,\n  \"ibadan</w>\": 44691,\n  \"iban\": 47145,\n  \"ibc</w>\": 49014,\n  \"ibd</w>\": 40732,\n  \"iber\": 23814,\n  \"ibi\": 12337,\n  \"ibis</w>\": 47048,\n  \"ibiza</w>\": 13853,\n  \"ible</w>\": 37792,\n  \"ibles</w>\": 44102,\n  \"ibm\": 23415,\n  \"ibm</w>\": 13918,\n  \"ibn</w>\": 25729,\n  \"ibooks</w>\": 46887,\n  \"ibra\": 15476,\n  \"ibrahi\": 40350,\n  \"ibrahim</w>\": 20816,\n  \"ibrox</w>\": 46883,\n  \"ibs</w>\": 41993,\n  \"ibu\": 43587,\n  \"ibu</w>\": 46117,\n  \"ic\": 535,\n  \"ic</w>\": 1029,\n  \"ica</w>\": 2576,\n  \"icago</w>\": 37492,\n  \"ical\": 6082,\n  \"ical</w>\": 1110,\n  \"ically</w>\": 3161,\n  \"icals</w>\": 13999,\n  \"ican\": 17653,\n  \"ican</w>\": 5246,\n  \"icans</w>\": 20511,\n  \"icar\": 37211,\n  \"ication</w>\": 21629,\n  \"icc</w>\": 12945,\n  \"ice\": 2739,\n  \"ice</w>\": 733,\n  \"iceberg</w>\": 33662,\n  \"icec\": 13636,\n  \"icecream</w>\": 21334,\n  \"iced</w>\": 8049,\n  \"icelan\": 34114,\n  \"iceland\": 46716,\n  \"iceland</w>\": 11935,\n  \"icelandic</w>\": 34705,\n  \"ices</w>\": 1931,\n  \"ich\": 5333,\n  \"ich</w>\": 1232,\n  \"icha\": 31453,\n  \"iche\": 28972,\n  \"iche</w>\": 21143,\n  \"ichi\": 21669,\n  \"ichi</w>\": 14647,\n  \"ichick</w>\": 45022,\n  \"ichiro</w>\": 43787,\n  \"ici\": 948,\n  \"ici</w>\": 22189,\n  \"icia</w>\": 11774,\n  \"icial\": 17543,\n  \"icial</w>\": 6397,\n  \"ician\": 40522,\n  \"ician</w>\": 5374,\n  \"icians</w>\": 6264,\n  \"iciary</w>\": 21329,\n  \"icic\": 46006,\n  \"icide</w>\": 6558,\n  \"icides</w>\": 28253,\n  \"icing</w>\": 7676,\n  \"icio</w>\": 24207,\n  \"icion\": 45905,\n  \"icious</w>\": 3325,\n  \"icist</w>\": 21165,\n  \"icists</w>\": 42171,\n  \"icity</w>\": 7243,\n  \"ick\": 1168,\n  \"ick</w>\": 1068,\n  \"icked</w>\": 39799,\n  \"icker</w>\": 40357,\n  \"ickers</w>\": 30701,\n  \"icki</w>\": 35468,\n  \"icking</w>\": 6619,\n  \"icks</w>\": 3727,\n  \"icky</w>\": 11587,\n  \"icn</w>\": 44516,\n  \"ico\": 13697,\n  \"ico</w>\": 3040,\n  \"icom\": 17693,\n  \"icom</w>\": 29796,\n  \"icon\": 13843,\n  \"icon</w>\": 5646,\n  \"iconic</w>\": 6959,\n  \"icons</w>\": 15553,\n  \"icop\": 9389,\n  \"icos</w>\": 32002,\n  \"ics</w>\": 1324,\n  \"ict</w>\": 6349,\n  \"icted</w>\": 36515,\n  \"iction</w>\": 40560,\n  \"icton</w>\": 36548,\n  \"icu\": 45118,\n  \"icu</w>\": 30443,\n  \"icular</w>\": 40660,\n  \"icus</w>\": 31459,\n  \"icy\": 28780,\n  \"icy</w>\": 3495,\n  \"icymi</w>\": 5315,\n  \"icz</w>\": 46387,\n  \"id\": 1568,\n  \"id</w>\": 1014,\n  \"ida\": 11032,\n  \"ida</w>\": 11600,\n  \"idad</w>\": 22462,\n  \"idaho\": 48817,\n  \"idaho</w>\": 15165,\n  \"idal</w>\": 39684,\n  \"idan</w>\": 17929,\n  \"idc</w>\": 22386,\n  \"ide\": 1909,\n  \"ide</w>\": 14104,\n  \"idea</w>\": 3612,\n  \"ideal</w>\": 8789,\n  \"ideally</w>\": 48247,\n  \"ideals</w>\": 45096,\n  \"ideas</w>\": 4452,\n  \"ident\": 7113,\n  \"identi\": 6009,\n  \"identical</w>\": 25587,\n  \"identification</w>\": 23337,\n  \"identified</w>\": 15217,\n  \"identifies</w>\": 35712,\n  \"identify</w>\": 10949,\n  \"identifying</w>\": 23589,\n  \"identities</w>\": 34292,\n  \"identity</w>\": 8892,\n  \"ideology</w>\": 25840,\n  \"iders</w>\": 8980,\n  \"ides</w>\": 31791,\n  \"idf</w>\": 28987,\n  \"idge</w>\": 35567,\n  \"idh</w>\": 44325,\n  \"idi\": 9611,\n  \"idi</w>\": 14264,\n  \"idio\": 15994,\n  \"idiot</w>\": 14087,\n  \"idiots</w>\": 20856,\n  \"idk</w>\": 8972,\n  \"idle</w>\": 34754,\n  \"idlib</w>\": 36199,\n  \"ido\": 6763,\n  \"ido</w>\": 29641,\n  \"idol\": 24866,\n  \"idol</w>\": 8884,\n  \"idols</w>\": 21398,\n  \"idr</w>\": 10106,\n  \"idri\": 46435,\n  \"idris</w>\": 41312,\n  \"ids</w>\": 6111,\n  \"idu</w>\": 28655,\n  \"idy\": 33058,\n  \"idyl\": 44879,\n  \"idyllic</w>\": 46632,\n  \"ie\": 6789,\n  \"ie</w>\": 1718,\n  \"iec</w>\": 44773,\n  \"ied</w>\": 10059,\n  \"ieee</w>\": 39860,\n  \"iel\": 27875,\n  \"iel</w>\": 22729,\n  \"ience</w>\": 1542,\n  \"ient</w>\": 13115,\n  \"ier\": 33173,\n  \"ier</w>\": 5912,\n  \"iers</w>\": 45060,\n  \"ies\": 27912,\n  \"ies</w>\": 963,\n  \"iest</w>\": 10818,\n  \"if\": 8063,\n  \"if</w>\": 878,\n  \"ifa</w>\": 37574,\n  \"ifc</w>\": 36524,\n  \"ife\": 41172,\n  \"ife</w>\": 19590,\n  \"iff\": 35753,\n  \"ification</w>\": 35755,\n  \"ified</w>\": 41403,\n  \"ift\": 31143,\n  \"iftar</w>\": 35153,\n  \"ifu</w>\": 41523,\n  \"ify</w>\": 32807,\n  \"ig\": 1089,\n  \"ig</w>\": 3072,\n  \"iga</w>\": 16493,\n  \"igan</w>\": 27468,\n  \"igans</w>\": 25419,\n  \"igbo</w>\": 44591,\n  \"ige</w>\": 10806,\n  \"igen</w>\": 33070,\n  \"iger\": 30758,\n  \"iger</w>\": 20685,\n  \"igers\": 40755,\n  \"igers</w>\": 48928,\n  \"iggy\": 46219,\n  \"iggy</w>\": 27604,\n  \"igh\": 2712,\n  \"igh</w>\": 5451,\n  \"ight\": 14571,\n  \"ight</w>\": 897,\n  \"ighton</w>\": 35292,\n  \"igi</w>\": 21901,\n  \"igle\": 29912,\n  \"iglesias</w>\": 39432,\n  \"ign\": 7303,\n  \"ign</w>\": 2326,\n  \"ignati\": 37573,\n  \"ignatius</w>\": 48318,\n  \"igne</w>\": 45843,\n  \"ignite</w>\": 25210,\n  \"ignition</w>\": 36115,\n  \"igno\": 15375,\n  \"ignor\": 7653,\n  \"ignorance</w>\": 22735,\n  \"ignorant</w>\": 26933,\n  \"ignore</w>\": 12304,\n  \"ignored</w>\": 20428,\n  \"ignores</w>\": 40129,\n  \"ignoring</w>\": 23969,\n  \"igor</w>\": 33024,\n  \"igs</w>\": 31344,\n  \"igu\": 21279,\n  \"ih\": 12162,\n  \"ih</w>\": 34135,\n  \"ihear\": 13043,\n  \"iheart\": 30332,\n  \"iheartawards</w>\": 18811,\n  \"iheartradio</w>\": 25934,\n  \"ihop</w>\": 45511,\n  \"ihri\": 39108,\n  \"ihrithik</w>\": 39326,\n  \"ii\": 5103,\n  \"ii</w>\": 2329,\n  \"iii\": 46236,\n  \"iii</w>\": 6572,\n  \"iiii\": 20133,\n  \"iiii</w>\": 45393,\n  \"iiot</w>\": 30704,\n  \"iit\": 39330,\n  \"iit</w>\": 33238,\n  \"ij\": 7337,\n  \"ija</w>\": 42802,\n  \"ik\": 3903,\n  \"ik</w>\": 10177,\n  \"ika</w>\": 18188,\n  \"ike\": 12329,\n  \"ike</w>\": 19696,\n  \"ikea</w>\": 20528,\n  \"iker</w>\": 38653,\n  \"ikh\": 44655,\n  \"ikh</w>\": 12758,\n  \"iklan\": 32028,\n  \"iklan</w>\": 29584,\n  \"iko\": 35659,\n  \"iko</w>\": 39272,\n  \"ikon\": 38543,\n  \"ikon</w>\": 19156,\n  \"iku</w>\": 17780,\n  \"il\": 543,\n  \"il</w>\": 958,\n  \"ila</w>\": 4344,\n  \"ilah</w>\": 32211,\n  \"ilan\": 13889,\n  \"ilan</w>\": 28076,\n  \"iland</w>\": 20957,\n  \"ilation</w>\": 16180,\n  \"ilay\": 45093,\n  \"ild\": 22278,\n  \"ild</w>\": 17164,\n  \"ile\": 18398,\n  \"ile</w>\": 989,\n  \"iled</w>\": 3358,\n  \"iler\": 22446,\n  \"iler</w>\": 3615,\n  \"ilers</w>\": 8975,\n  \"iles</w>\": 42274,\n  \"ili\": 2076,\n  \"ili</w>\": 19601,\n  \"ilia</w>\": 14855,\n  \"ilian</w>\": 10272,\n  \"iliary</w>\": 32585,\n  \"ilife</w>\": 42835,\n  \"ilike\": 44989,\n  \"ilinan</w>\": 48497,\n  \"iling</w>\": 3299,\n  \"ilio</w>\": 47256,\n  \"ilion</w>\": 12561,\n  \"ilis</w>\": 43442,\n  \"ilit\": 11178,\n  \"ilities</w>\": 5446,\n  \"ility</w>\": 1787,\n  \"ilive</w>\": 26478,\n  \"ill\": 828,\n  \"ill</w>\": 660,\n  \"illa\": 8877,\n  \"illa</w>\": 3043,\n  \"illac</w>\": 17218,\n  \"illage</w>\": 48922,\n  \"illard</w>\": 21920,\n  \"illary</w>\": 33667,\n  \"illas</w>\": 23404,\n  \"ille\": 18213,\n  \"ille</w>\": 5559,\n  \"illed</w>\": 2527,\n  \"illeg\": 35808,\n  \"illegal</w>\": 7983,\n  \"illegally</w>\": 24466,\n  \"illegals</w>\": 40490,\n  \"iller\": 23341,\n  \"iller</w>\": 2956,\n  \"illers</w>\": 30547,\n  \"illery</w>\": 14514,\n  \"illes</w>\": 20037,\n  \"illi\": 1086,\n  \"illi</w>\": 25187,\n  \"illia</w>\": 48776,\n  \"illiams</w>\": 30301,\n  \"illian\": 48775,\n  \"illian</w>\": 17355,\n  \"illic\": 37152,\n  \"illicit</w>\": 40998,\n  \"illie</w>\": 26083,\n  \"illin</w>\": 35868,\n  \"illing</w>\": 2803,\n  \"illini</w>\": 28957,\n  \"illino\": 8920,\n  \"illinois</w>\": 9414,\n  \"illion\": 35542,\n  \"illion</w>\": 2035,\n  \"illness</w>\": 11145,\n  \"illnesses</w>\": 33861,\n  \"illo\": 34153,\n  \"illo</w>\": 7588,\n  \"illon</w>\": 20516,\n  \"ills</w>\": 1900,\n  \"illu\": 3025,\n  \"illumin\": 11446,\n  \"illuminate</w>\": 43261,\n  \"illuminated</w>\": 28814,\n  \"illuminati</w>\": 34551,\n  \"illuminating</w>\": 46601,\n  \"illumination</w>\": 43680,\n  \"illus</w>\": 41386,\n  \"illusion</w>\": 20318,\n  \"illusions</w>\": 47429,\n  \"illustr\": 6268,\n  \"illustrate</w>\": 37468,\n  \"illustrated</w>\": 13151,\n  \"illustrates</w>\": 38129,\n  \"illustrating</w>\": 43322,\n  \"illustration</w>\": 6052,\n  \"illustrations</w>\": 17852,\n  \"illustrator</w>\": 16649,\n  \"illustri\": 43116,\n  \"illustrious</w>\": 44304,\n  \"illy\": 11707,\n  \"illy</w>\": 9532,\n  \"ilm</w>\": 36326,\n  \"ilo\": 4220,\n  \"ilo</w>\": 14835,\n  \"ilove\": 7183,\n  \"ilove</w>\": 32914,\n  \"iloveart</w>\": 41114,\n  \"ilovemy\": 28863,\n  \"iloveyou</w>\": 28829,\n  \"ils</w>\": 1543,\n  \"ilt</w>\": 25334,\n  \"ilton</w>\": 28494,\n  \"ilu\": 27337,\n  \"ilwx</w>\": 43777,\n  \"ily\": 4881,\n  \"ily</w>\": 1026,\n  \"ilya</w>\": 33377,\n  \"ilysm</w>\": 29228,\n  \"im\": 732,\n  \"im</w>\": 1496,\n  \"ima\": 2414,\n  \"ima</w>\": 6432,\n  \"imac</w>\": 40675,\n  \"imacele\": 47281,\n  \"imag\": 2316,\n  \"image\": 24101,\n  \"image</w>\": 2867,\n  \"imagery</w>\": 22828,\n  \"images</w>\": 4952,\n  \"imagin\": 18178,\n  \"imaginary</w>\": 30417,\n  \"imagination</w>\": 13783,\n  \"imaginative</w>\": 47233,\n  \"imagine\": 35752,\n  \"imagine</w>\": 4826,\n  \"imagined</w>\": 18478,\n  \"imagines</w>\": 47379,\n  \"imaging</w>\": 14231,\n  \"imagining</w>\": 27384,\n  \"imam\": 37552,\n  \"imam</w>\": 19024,\n  \"iman\": 45684,\n  \"iman</w>\": 16247,\n  \"imation</w>\": 44566,\n  \"imax</w>\": 32066,\n  \"imc</w>\": 45616,\n  \"imdanielpadilla</w>\": 36357,\n  \"imdb</w>\": 30407,\n  \"ime\": 44937,\n  \"ime</w>\": 31151,\n  \"imel\": 31594,\n  \"iment</w>\": 37157,\n  \"imer</w>\": 21802,\n  \"imes</w>\": 47744,\n  \"imf</w>\": 28403,\n  \"img</w>\": 24157,\n  \"imi</w>\": 23559,\n  \"imin\": 23942,\n  \"imit\": 23462,\n  \"imitation</w>\": 41630,\n  \"imma</w>\": 19487,\n  \"immac\": 25085,\n  \"immaculate</w>\": 29649,\n  \"immature</w>\": 45531,\n  \"immedi\": 7366,\n  \"immediate</w>\": 14440,\n  \"immediately</w>\": 10108,\n  \"immen\": 17278,\n  \"immense</w>\": 22722,\n  \"immensely</w>\": 35013,\n  \"immer\": 13954,\n  \"immerse</w>\": 46240,\n  \"immersion</w>\": 31861,\n  \"immersive</w>\": 27521,\n  \"immigr\": 5851,\n  \"immigrant</w>\": 16474,\n  \"immigrants</w>\": 14460,\n  \"immigration</w>\": 9588,\n  \"imminent</w>\": 27299,\n  \"immort\": 39244,\n  \"immortal</w>\": 24717,\n  \"immun\": 8961,\n  \"immune</w>\": 15606,\n  \"immuni\": 44571,\n  \"immunity</w>\": 26254,\n  \"immuno\": 24361,\n  \"immunology</w>\": 44483,\n  \"immunotherapy</w>\": 39185,\n  \"imo\": 26349,\n  \"imo</w>\": 13738,\n  \"imp\": 3335,\n  \"imp</w>\": 31037,\n  \"impac\": 7573,\n  \"impact\": 33036,\n  \"impact</w>\": 3844,\n  \"impacted</w>\": 21424,\n  \"impactful</w>\": 41631,\n  \"impacting</w>\": 29359,\n  \"impacts</w>\": 15069,\n  \"impair\": 36451,\n  \"impaired</w>\": 28028,\n  \"impairment</w>\": 44501,\n  \"impala</w>\": 36641,\n  \"impe\": 23612,\n  \"impeach\": 16874,\n  \"impeach</w>\": 43497,\n  \"impeachment</w>\": 32979,\n  \"impeachtrump</w>\": 38006,\n  \"impecc\": 34511,\n  \"impeccable</w>\": 40111,\n  \"impending</w>\": 34486,\n  \"imper\": 7727,\n  \"imperative</w>\": 39833,\n  \"imperfect</w>\": 46034,\n  \"imperi\": 30911,\n  \"imperial\": 32425,\n  \"imperial</w>\": 12361,\n  \"imperialism</w>\": 48855,\n  \"imperson\": 25551,\n  \"implant</w>\": 33106,\n  \"implants</w>\": 32202,\n  \"imple\": 7423,\n  \"implement</w>\": 17966,\n  \"implementation</w>\": 15102,\n  \"implemented</w>\": 24315,\n  \"implementing</w>\": 22862,\n  \"implic\": 15269,\n  \"implications</w>\": 19229,\n  \"implo\": 40337,\n  \"impo\": 45704,\n  \"import\": 2336,\n  \"import</w>\": 16294,\n  \"importance</w>\": 6821,\n  \"important</w>\": 2829,\n  \"importantly</w>\": 21580,\n  \"imported</w>\": 28798,\n  \"imports</w>\": 25286,\n  \"impose</w>\": 35879,\n  \"imposed</w>\": 25871,\n  \"imposing</w>\": 42289,\n  \"impossible</w>\": 9815,\n  \"impre\": 3763,\n  \"impress</w>\": 20015,\n  \"impressed</w>\": 9689,\n  \"impression</w>\": 14468,\n  \"impressionism</w>\": 36114,\n  \"impressionist</w>\": 44904,\n  \"impressions</w>\": 22276,\n  \"impressive</w>\": 6634,\n  \"imprint</w>\": 43863,\n  \"imprison\": 22141,\n  \"imprisoned</w>\": 32999,\n  \"imprisonment</w>\": 39024,\n  \"impro\": 2531,\n  \"impromp\": 28100,\n  \"impromptu</w>\": 28611,\n  \"improv</w>\": 22868,\n  \"improve</w>\": 4971,\n  \"improved</w>\": 9446,\n  \"improvement</w>\": 10790,\n  \"improvements</w>\": 16320,\n  \"improves</w>\": 18035,\n  \"improving</w>\": 10381,\n  \"improvis\": 32343,\n  \"improvised</w>\": 40886,\n  \"impulse</w>\": 29683,\n  \"impy</w>\": 42690,\n  \"imran\": 19647,\n  \"imran</w>\": 19212,\n  \"imrankhan\": 25956,\n  \"imrankhanpti</w>\": 26688,\n  \"ims</w>\": 17800,\n  \"imsa</w>\": 37262,\n  \"imv\": 35731,\n  \"imvkohli</w>\": 37136,\n  \"imwith\": 26822,\n  \"imwithher</w>\": 32651,\n  \"in\": 512,\n  \"in</w>\": 530,\n  \"ina\": 18026,\n  \"ina</w>\": 1366,\n  \"inability</w>\": 47517,\n  \"inaccurate</w>\": 49192,\n  \"inaction</w>\": 41916,\n  \"inactive</w>\": 49274,\n  \"inadequate</w>\": 43403,\n  \"inak\": 46549,\n  \"inal</w>\": 19178,\n  \"inals</w>\": 26438,\n  \"inan</w>\": 26204,\n  \"inappropriate</w>\": 26722,\n  \"inari</w>\": 48620,\n  \"inary</w>\": 11337,\n  \"inas\": 36731,\n  \"inas</w>\": 12362,\n  \"inated</w>\": 38530,\n  \"ination</w>\": 4706,\n  \"inau\": 10832,\n  \"inaugu\": 11309,\n  \"inaugur\": 11448,\n  \"inaugural</w>\": 11340,\n  \"inaugurated</w>\": 29011,\n  \"inauguration</w>\": 16805,\n  \"inbound</w>\": 24420,\n  \"inbox</w>\": 18683,\n  \"inc\": 14570,\n  \"inc</w>\": 4438,\n  \"incan\": 45964,\n  \"incar\": 18070,\n  \"incarcer\": 26334,\n  \"incarcerated</w>\": 49178,\n  \"incarceration</w>\": 39887,\n  \"incase</w>\": 30463,\n  \"ince</w>\": 44303,\n  \"incen\": 13259,\n  \"incense</w>\": 35059,\n  \"incentive</w>\": 29024,\n  \"incentives</w>\": 29813,\n  \"inception</w>\": 36653,\n  \"inch</w>\": 6523,\n  \"incheon</w>\": 30645,\n  \"inches</w>\": 10809,\n  \"inci\": 5747,\n  \"incidence</w>\": 43371,\n  \"incident</w>\": 10103,\n  \"incidents</w>\": 22120,\n  \"incindia</w>\": 26161,\n  \"inciner\": 46434,\n  \"incl\": 27857,\n  \"incl</w>\": 13338,\n  \"inclined</w>\": 45470,\n  \"inclu\": 1738,\n  \"include</w>\": 5942,\n  \"included</w>\": 7414,\n  \"includes</w>\": 6197,\n  \"including</w>\": 2814,\n  \"inclusion</w>\": 12079,\n  \"inclusive</w>\": 13393,\n  \"income</w>\": 8044,\n  \"incoming</w>\": 15416,\n  \"incomparable</w>\": 36027,\n  \"incompetent</w>\": 45069,\n  \"incomplete</w>\": 34040,\n  \"incon\": 42372,\n  \"inconvenience</w>\": 40563,\n  \"incorpor\": 19335,\n  \"incorporate</w>\": 34168,\n  \"incorporated</w>\": 29494,\n  \"incorporating</w>\": 40303,\n  \"incorrect</w>\": 31872,\n  \"incre\": 1870,\n  \"increase</w>\": 5230,\n  \"increased</w>\": 9156,\n  \"increases</w>\": 13797,\n  \"increasing</w>\": 10270,\n  \"increasingly</w>\": 16106,\n  \"incredi\": 2883,\n  \"incredible\": 22128,\n  \"incredible</w>\": 3457,\n  \"incredibleindia</w>\": 24680,\n  \"incredibles</w>\": 48641,\n  \"incredibly</w>\": 9513,\n  \"incu\": 38830,\n  \"incub\": 24587,\n  \"incubator</w>\": 35736,\n  \"incumb\": 32246,\n  \"incumbent</w>\": 38038,\n  \"incur\": 42356,\n  \"ind\": 5386,\n  \"ind</w>\": 4655,\n  \"inda</w>\": 15710,\n  \"inde\": 2645,\n  \"indeed</w>\": 10031,\n  \"indefin\": 29501,\n  \"indefinitely</w>\": 43750,\n  \"independ\": 4147,\n  \"independence\": 23117,\n  \"independence</w>\": 7955,\n  \"independenceday</w>\": 25971,\n  \"independent\": 33844,\n  \"independent</w>\": 7088,\n  \"independently</w>\": 39831,\n  \"inder</w>\": 29225,\n  \"index\": 35209,\n  \"index</w>\": 9458,\n  \"indhoven</w>\": 44229,\n  \"indi\": 1098,\n  \"indi</w>\": 46536,\n  \"india\": 27067,\n  \"india</w>\": 1762,\n  \"indian\": 7685,\n  \"indian</w>\": 3606,\n  \"indiana</w>\": 8615,\n  \"indianapolis</w>\": 17196,\n  \"indianfootball</w>\": 45979,\n  \"indians</w>\": 10271,\n  \"indic\": 7136,\n  \"indicate</w>\": 26679,\n  \"indicated</w>\": 39416,\n  \"indicates</w>\": 29412,\n  \"indication</w>\": 38539,\n  \"indicator</w>\": 24776,\n  \"indicators</w>\": 30054,\n  \"indicted</w>\": 34992,\n  \"indictment</w>\": 42278,\n  \"indie\": 5260,\n  \"indie</w>\": 9383,\n  \"indiedev</w>\": 10863,\n  \"indiefilm</w>\": 22588,\n  \"indiegame</w>\": 17969,\n  \"indiegamedev</w>\": 40466,\n  \"indiegames</w>\": 35864,\n  \"indiegogo</w>\": 38057,\n  \"indies</w>\": 23618,\n  \"indiffe\": 41372,\n  \"indigen\": 8348,\n  \"indigenous</w>\": 9303,\n  \"indigo</w>\": 21002,\n  \"indira</w>\": 43887,\n  \"indirec\": 26398,\n  \"indirect</w>\": 35416,\n  \"indivi\": 5649,\n  \"individu\": 9574,\n  \"individual</w>\": 8512,\n  \"individually</w>\": 33782,\n  \"individuals</w>\": 11990,\n  \"indo\": 26303,\n  \"indo</w>\": 18297,\n  \"indom\": 42926,\n  \"indone\": 6180,\n  \"indonesia</w>\": 7229,\n  \"indonesian</w>\": 19593,\n  \"indoor\": 44478,\n  \"indoor</w>\": 9546,\n  \"indoors</w>\": 22973,\n  \"indore</w>\": 46143,\n  \"indu\": 2298,\n  \"induc\": 7973,\n  \"induced</w>\": 24103,\n  \"inducted</w>\": 20596,\n  \"inductee</w>\": 39558,\n  \"inductees</w>\": 44796,\n  \"induction</w>\": 18338,\n  \"indul\": 19402,\n  \"indulg\": 28388,\n  \"indulge</w>\": 24851,\n  \"indulgence</w>\": 40856,\n  \"indulgent</w>\": 49147,\n  \"industri\": 5082,\n  \"industrial\": 30853,\n  \"industrial</w>\": 7520,\n  \"industries</w>\": 11700,\n  \"industry\": 47407,\n  \"industry</w>\": 3318,\n  \"indv\": 16942,\n  \"indy\": 9821,\n  \"indy</w>\": 10098,\n  \"indycar</w>\": 20484,\n  \"indyref</w>\": 22569,\n  \"ine\": 855,\n  \"ine</w>\": 715,\n  \"ineau</w>\": 38122,\n  \"inec</w>\": 45214,\n  \"ined</w>\": 2038,\n  \"inee\": 43252,\n  \"inee</w>\": 7986,\n  \"inees</w>\": 13056,\n  \"ineffe\": 47202,\n  \"inely</w>\": 18234,\n  \"inem</w>\": 48876,\n  \"inema</w>\": 29232,\n  \"inen</w>\": 44365,\n  \"inequalities</w>\": 45507,\n  \"inequality</w>\": 17372,\n  \"iner\": 17438,\n  \"iner</w>\": 5155,\n  \"iners</w>\": 41863,\n  \"ines</w>\": 2137,\n  \"inese</w>\": 35966,\n  \"iness</w>\": 1463,\n  \"inet</w>\": 8121,\n  \"inette</w>\": 38911,\n  \"inev\": 19527,\n  \"inevit\": 45871,\n  \"inevitable</w>\": 25004,\n  \"inews</w>\": 24300,\n  \"inexpensive</w>\": 38614,\n  \"iney</w>\": 30254,\n  \"inez</w>\": 12700,\n  \"inf\": 1529,\n  \"inf</w>\": 35241,\n  \"infamous</w>\": 18688,\n  \"infan\": 17219,\n  \"infant</w>\": 19192,\n  \"infantry</w>\": 21655,\n  \"infants</w>\": 34726,\n  \"infe\": 7164,\n  \"infec\": 26088,\n  \"infected</w>\": 26136,\n  \"infection</w>\": 14774,\n  \"infections</w>\": 22227,\n  \"infectious</w>\": 29157,\n  \"infeld</w>\": 25035,\n  \"infer\": 16258,\n  \"inferno</w>\": 31290,\n  \"infertility</w>\": 40701,\n  \"infield</w>\": 48933,\n  \"infiltr\": 28683,\n  \"infin\": 6246,\n  \"infinite</w>\": 12748,\n  \"infiniti</w>\": 34644,\n  \"infinity\": 34863,\n  \"infinity</w>\": 12895,\n  \"infl\": 7627,\n  \"inflam\": 16080,\n  \"inflammation</w>\": 24893,\n  \"inflammatory</w>\": 26831,\n  \"inflatable</w>\": 30135,\n  \"inflation</w>\": 17497,\n  \"inflicted</w>\": 48188,\n  \"influ\": 4835,\n  \"influen\": 13229,\n  \"influence</w>\": 9199,\n  \"influenced</w>\": 21183,\n  \"influencer</w>\": 25013,\n  \"influencers</w>\": 29891,\n  \"influences</w>\": 24926,\n  \"influencing</w>\": 45126,\n  \"influential</w>\": 17553,\n  \"influenza</w>\": 39897,\n  \"info\": 5680,\n  \"info</w>\": 2222,\n  \"infographic</w>\": 10076,\n  \"infographics</w>\": 33172,\n  \"infor\": 31773,\n  \"inform\": 10241,\n  \"inform</w>\": 19449,\n  \"informal</w>\": 25705,\n  \"informat\": 29625,\n  \"informatics</w>\": 35685,\n  \"information</w>\": 3204,\n  \"informative</w>\": 19364,\n  \"informed</w>\": 13876,\n  \"informing</w>\": 45388,\n  \"informs</w>\": 48440,\n  \"infosec</w>\": 17863,\n  \"infr\": 29718,\n  \"infra\": 7312,\n  \"infra</w>\": 45877,\n  \"infrared</w>\": 22867,\n  \"infrastructure</w>\": 9034,\n  \"infringe\": 44882,\n  \"infringement</w>\": 48712,\n  \"infront</w>\": 37668,\n  \"infu\": 15048,\n  \"infuri\": 48461,\n  \"infused</w>\": 21461,\n  \"infusion</w>\": 43464,\n  \"ing\": 653,\n  \"ing</w>\": 519,\n  \"inga</w>\": 15233,\n  \"ingco</w>\": 40444,\n  \"ingday</w>\": 16561,\n  \"ingdon</w>\": 38731,\n  \"inge\": 11790,\n  \"inge</w>\": 7071,\n  \"inged</w>\": 30046,\n  \"ingen</w>\": 19088,\n  \"ingeni\": 36884,\n  \"inger\": 33883,\n  \"inger</w>\": 3541,\n  \"ingfor\": 33430,\n  \"ingh\": 9170,\n  \"ingh</w>\": 30495,\n  \"ingham\": 24497,\n  \"ingham</w>\": 4291,\n  \"inghamshire</w>\": 39289,\n  \"inghour</w>\": 42728,\n  \"inging</w>\": 4066,\n  \"ingl\": 45662,\n  \"ingle\": 22228,\n  \"ingle</w>\": 17005,\n  \"ingles</w>\": 24490,\n  \"ingley</w>\": 44428,\n  \"inglis</w>\": 46327,\n  \"ingly</w>\": 4796,\n  \"ingnow</w>\": 34766,\n  \"ingo\": 30175,\n  \"ingo</w>\": 9012,\n  \"ingra\": 45165,\n  \"ingrad</w>\": 44124,\n  \"ingram</w>\": 26998,\n  \"ingredi\": 9272,\n  \"ingredient</w>\": 19799,\n  \"ingredients</w>\": 11788,\n  \"ingrid</w>\": 33496,\n  \"ings</w>\": 895,\n  \"ingthe\": 20170,\n  \"ingtips</w>\": 39373,\n  \"ington\": 11846,\n  \"ington</w>\": 2156,\n  \"ingu\": 8714,\n  \"ingual</w>\": 22795,\n  \"ingue</w>\": 36838,\n  \"ingui\": 12788,\n  \"inguish</w>\": 36146,\n  \"inha</w>\": 32612,\n  \"inhabit\": 36189,\n  \"inhabitants</w>\": 44968,\n  \"inhal\": 30786,\n  \"inhe\": 32617,\n  \"inher\": 24611,\n  \"inherent</w>\": 47327,\n  \"inherit\": 34322,\n  \"inheritance</w>\": 39341,\n  \"inherited</w>\": 39111,\n  \"inhi\": 25557,\n  \"inhibit\": 32196,\n  \"inho</w>\": 12984,\n  \"ini\": 6154,\n  \"ini</w>\": 3581,\n  \"inian</w>\": 36638,\n  \"inim\": 38717,\n  \"inindia</w>\": 34021,\n  \"ining</w>\": 1389,\n  \"inist</w>\": 30976,\n  \"init</w>\": 42670,\n  \"initi\": 4580,\n  \"initial</w>\": 13980,\n  \"initially</w>\": 28123,\n  \"initials</w>\": 48794,\n  \"initiated</w>\": 27756,\n  \"initiation</w>\": 41009,\n  \"initiative</w>\": 8152,\n  \"initiatives</w>\": 16549,\n  \"inity</w>\": 22126,\n  \"inj\": 5112,\n  \"injec\": 13688,\n  \"injection</w>\": 21438,\n  \"inju\": 5006,\n  \"injured</w>\": 7505,\n  \"injuries</w>\": 9481,\n  \"injury</w>\": 6223,\n  \"injustice</w>\": 20541,\n  \"ink\": 4547,\n  \"ink</w>\": 967,\n  \"inka</w>\": 40685,\n  \"inked</w>\": 29356,\n  \"inki\": 46176,\n  \"inkigayo</w>\": 47882,\n  \"inking</w>\": 37586,\n  \"inks</w>\": 20966,\n  \"inktober</w>\": 9387,\n  \"inland</w>\": 21943,\n  \"inlet</w>\": 35161,\n  \"inline</w>\": 45004,\n  \"inlove</w>\": 28415,\n  \"inmate</w>\": 32341,\n  \"inmates</w>\": 28216,\n  \"inmy\": 42657,\n  \"inn\": 27260,\n  \"inn</w>\": 5569,\n  \"inna</w>\": 35088,\n  \"inner\": 24512,\n  \"inner</w>\": 6955,\n  \"inning</w>\": 4415,\n  \"innings</w>\": 11580,\n  \"innis\": 44059,\n  \"inno\": 7961,\n  \"innocence</w>\": 26383,\n  \"innocent</w>\": 11241,\n  \"innov\": 2890,\n  \"innovate</w>\": 24549,\n  \"innovation\": 33063,\n  \"innovation</w>\": 4272,\n  \"innovations</w>\": 18817,\n  \"innovative</w>\": 8494,\n  \"innovator</w>\": 34735,\n  \"innovators</w>\": 27834,\n  \"ino\": 4211,\n  \"ino</w>\": 2691,\n  \"inoa</w>\": 25649,\n  \"inos</w>\": 21828,\n  \"inous</w>\": 47801,\n  \"inox</w>\": 22698,\n  \"input</w>\": 16952,\n  \"inputs</w>\": 48763,\n  \"inqu\": 10628,\n  \"inqui\": 18527,\n  \"inquirer</w>\": 45172,\n  \"inquiries</w>\": 29469,\n  \"inquiry</w>\": 15865,\n  \"inquis\": 31171,\n  \"inr</w>\": 36325,\n  \"ins\": 12786,\n  \"ins</w>\": 1041,\n  \"insan\": 7875,\n  \"insane</w>\": 10260,\n  \"insanely</w>\": 27846,\n  \"insanity</w>\": 26645,\n  \"inscribed</w>\": 49168,\n  \"inscription</w>\": 41127,\n  \"insec\": 15744,\n  \"insect</w>\": 21297,\n  \"insects</w>\": 18714,\n  \"insecure</w>\": 35112,\n  \"insecurity</w>\": 36964,\n  \"inser\": 13830,\n  \"insert</w>\": 18807,\n  \"insi\": 3453,\n  \"inside\": 19141,\n  \"inside</w>\": 2912,\n  \"insider</w>\": 13300,\n  \"insiders</w>\": 32171,\n  \"insig\": 40503,\n  \"insight</w>\": 8795,\n  \"insightful</w>\": 20354,\n  \"insights</w>\": 8729,\n  \"insignia</w>\": 48864,\n  \"insist</w>\": 35504,\n  \"insisted</w>\": 40423,\n  \"insists</w>\": 27255,\n  \"inski</w>\": 32630,\n  \"insky</w>\": 24607,\n  \"insol\": 42366,\n  \"insom\": 21755,\n  \"insomni\": 42040,\n  \"insomnia</w>\": 30598,\n  \"inson</w>\": 21007,\n  \"insp\": 1597,\n  \"inspec\": 7915,\n  \"inspect</w>\": 40815,\n  \"inspecting</w>\": 40565,\n  \"inspection</w>\": 15142,\n  \"inspections</w>\": 39513,\n  \"inspector</w>\": 20514,\n  \"inspir\": 2573,\n  \"inspiration</w>\": 4195,\n  \"inspirational\": 41936,\n  \"inspirational</w>\": 9855,\n  \"inspirations</w>\": 35093,\n  \"inspire\": 27901,\n  \"inspire</w>\": 8583,\n  \"inspired\": 39849,\n  \"inspired</w>\": 3516,\n  \"inspires</w>\": 17245,\n  \"inspiring\": 41847,\n  \"inspiring</w>\": 5705,\n  \"inspo</w>\": 26897,\n  \"inst\": 1264,\n  \"inst</w>\": 1581,\n  \"insta\": 22411,\n  \"insta</w>\": 11694,\n  \"instability</w>\": 41377,\n  \"instac\": 46678,\n  \"instaf\": 33800,\n  \"instag\": 14612,\n  \"instagood</w>\": 23718,\n  \"instagram\": 27910,\n  \"instagram</w>\": 2659,\n  \"instal\": 38805,\n  \"install\": 6940,\n  \"install</w>\": 11168,\n  \"installation</w>\": 9358,\n  \"installations</w>\": 27909,\n  \"installed</w>\": 8807,\n  \"installing</w>\": 18301,\n  \"installment</w>\": 25315,\n  \"installs</w>\": 45568,\n  \"instalment</w>\": 47766,\n  \"instance</w>\": 34572,\n  \"instant\": 38810,\n  \"instant</w>\": 10635,\n  \"instantly</w>\": 17703,\n  \"instap\": 23758,\n  \"instapic</w>\": 34378,\n  \"instaweather\": 43078,\n  \"instaweatherpro</w>\": 43150,\n  \"inste\": 3571,\n  \"instead</w>\": 4191,\n  \"instein</w>\": 13421,\n  \"instem</w>\": 27030,\n  \"instin\": 23382,\n  \"instinct</w>\": 30544,\n  \"institu\": 4257,\n  \"institute</w>\": 5861,\n  \"institutes</w>\": 43674,\n  \"institution</w>\": 18823,\n  \"institutional</w>\": 27442,\n  \"institutions</w>\": 15207,\n  \"instore</w>\": 41679,\n  \"instru\": 4544,\n  \"instruc\": 19648,\n  \"instruction</w>\": 19407,\n  \"instructional</w>\": 31022,\n  \"instructions</w>\": 17040,\n  \"instructor</w>\": 16087,\n  \"instructors</w>\": 31998,\n  \"instrument\": 42196,\n  \"instrument</w>\": 15806,\n  \"instrumental</w>\": 23041,\n  \"instruments</w>\": 14793,\n  \"instyle</w>\": 41321,\n  \"insu\": 8805,\n  \"insul\": 9615,\n  \"insulated</w>\": 42051,\n  \"insulation</w>\": 28194,\n  \"insulin</w>\": 29311,\n  \"insult</w>\": 26673,\n  \"insulting</w>\": 39646,\n  \"insults</w>\": 40451,\n  \"insur\": 5024,\n  \"insurance</w>\": 5870,\n  \"insured</w>\": 31321,\n  \"insurers</w>\": 43142,\n  \"insurtech</w>\": 28716,\n  \"int\": 1828,\n  \"int</w>\": 1207,\n  \"inta</w>\": 38314,\n  \"intact</w>\": 26870,\n  \"intake</w>\": 19539,\n  \"intan\": 47695,\n  \"inte\": 1598,\n  \"inte</w>\": 41900,\n  \"intech</w>\": 26504,\n  \"inted</w>\": 6147,\n  \"integr\": 5151,\n  \"integral</w>\": 27018,\n  \"integrate</w>\": 25735,\n  \"integrated</w>\": 12797,\n  \"integrating</w>\": 31555,\n  \"integration</w>\": 12583,\n  \"integrity</w>\": 14791,\n  \"intel\": 11778,\n  \"intel</w>\": 11426,\n  \"intellec\": 13281,\n  \"intellect</w>\": 47828,\n  \"intellectu\": 31966,\n  \"intellectual</w>\": 18069,\n  \"intelli\": 5324,\n  \"intellig\": 5632,\n  \"intelligence</w>\": 6846,\n  \"intelligent</w>\": 14063,\n  \"inten\": 2967,\n  \"intend</w>\": 36674,\n  \"intended</w>\": 16812,\n  \"intense</w>\": 10258,\n  \"intensi\": 22928,\n  \"intensity</w>\": 19956,\n  \"intensive</w>\": 21049,\n  \"intent</w>\": 18881,\n  \"intention</w>\": 26786,\n  \"intentional</w>\": 29536,\n  \"intentionally</w>\": 31215,\n  \"intentions</w>\": 26710,\n  \"inter\": 1006,\n  \"inter</w>\": 10093,\n  \"interact</w>\": 21736,\n  \"interacting</w>\": 35045,\n  \"interaction</w>\": 17650,\n  \"interactions</w>\": 22162,\n  \"interactive</w>\": 9456,\n  \"intercep\": 23676,\n  \"interception</w>\": 48762,\n  \"interceptions</w>\": 45313,\n  \"interchange</w>\": 34222,\n  \"intercontinental</w>\": 31983,\n  \"interdisciplinary</w>\": 38132,\n  \"intere\": 2008,\n  \"interest</w>\": 5095,\n  \"interested</w>\": 4620,\n  \"interesting</w>\": 3628,\n  \"interests</w>\": 16425,\n  \"interface</w>\": 18753,\n  \"interfaith</w>\": 38399,\n  \"interference</w>\": 29099,\n  \"interim</w>\": 19509,\n  \"interior\": 10700,\n  \"interior</w>\": 7305,\n  \"interiordesign</w>\": 12902,\n  \"interiors</w>\": 14836,\n  \"intermedi\": 20246,\n  \"intermediate</w>\": 24304,\n  \"intermission</w>\": 44805,\n  \"intermitt\": 44946,\n  \"intern\": 9976,\n  \"intern</w>\": 14068,\n  \"internal</w>\": 11285,\n  \"internally</w>\": 41134,\n  \"internation\": 42534,\n  \"international\": 8566,\n  \"international</w>\": 2436,\n  \"internationaldayof\": 41518,\n  \"internationally</w>\": 24059,\n  \"internationalwomensday</w>\": 17682,\n  \"interne\": 32713,\n  \"internet\": 30180,\n  \"internet</w>\": 4757,\n  \"internetof\": 44449,\n  \"internetofthings</w>\": 45925,\n  \"interns</w>\": 19902,\n  \"internship</w>\": 16661,\n  \"internships</w>\": 39410,\n  \"interoper\": 45754,\n  \"interpre\": 11162,\n  \"interpret\": 49154,\n  \"interpret</w>\": 40459,\n  \"interpretation</w>\": 20652,\n  \"interpreted</w>\": 42157,\n  \"interpreting</w>\": 46525,\n  \"interro\": 29548,\n  \"interrup\": 21609,\n  \"interrupt</w>\": 48449,\n  \"interrupted</w>\": 30288,\n  \"intersec\": 45246,\n  \"intersection</w>\": 19210,\n  \"interstate</w>\": 21963,\n  \"interstellar</w>\": 41506,\n  \"interval</w>\": 36032,\n  \"intervals</w>\": 44884,\n  \"interven\": 18245,\n  \"intervention</w>\": 16804,\n  \"interventions</w>\": 28848,\n  \"interview</w>\": 2885,\n  \"interviewed</w>\": 11688,\n  \"interviewing</w>\": 16399,\n  \"interviews</w>\": 9910,\n  \"intestin\": 37938,\n  \"intestinal</w>\": 38896,\n  \"inthe\": 7486,\n  \"inti\": 14459,\n  \"intim\": 38832,\n  \"intimacy</w>\": 46430,\n  \"intimate</w>\": 16382,\n  \"intimid\": 24041,\n  \"intimidating</w>\": 44405,\n  \"intimidation</w>\": 49258,\n  \"inting</w>\": 15571,\n  \"intl\": 38186,\n  \"intl</w>\": 14224,\n  \"intment</w>\": 9020,\n  \"intments</w>\": 21420,\n  \"into\": 35235,\n  \"into</w>\": 1095,\n  \"intoler\": 28534,\n  \"intolerance</w>\": 37808,\n  \"intothe\": 38511,\n  \"intra\": 20922,\n  \"intrac\": 46195,\n  \"intram\": 40956,\n  \"intre\": 29397,\n  \"intrepid</w>\": 39127,\n  \"intri\": 15421,\n  \"intric\": 23763,\n  \"intricate</w>\": 29616,\n  \"intrigu\": 18856,\n  \"intrigue</w>\": 45140,\n  \"intrigued</w>\": 40034,\n  \"intriguing</w>\": 24334,\n  \"intrin\": 45181,\n  \"intro\": 2999,\n  \"intro</w>\": 13224,\n  \"introduc\": 3621,\n  \"introduce</w>\": 9813,\n  \"introduced</w>\": 10446,\n  \"introduces</w>\": 12933,\n  \"introducing</w>\": 6256,\n  \"introduction</w>\": 11812,\n  \"introductory</w>\": 38121,\n  \"intru\": 22949,\n  \"ints</w>\": 2514,\n  \"intu\": 17225,\n  \"intuition</w>\": 40897,\n  \"intuitive</w>\": 35224,\n  \"inu\": 21131,\n  \"inuit</w>\": 41250,\n  \"inus</w>\": 45857,\n  \"inv\": 2279,\n  \"inv</w>\": 43786,\n  \"inva\": 10084,\n  \"invade</w>\": 34609,\n  \"invaded</w>\": 32596,\n  \"invaders</w>\": 35188,\n  \"invading</w>\": 40101,\n  \"invali\": 31592,\n  \"invalid</w>\": 46998,\n  \"invaluable</w>\": 33976,\n  \"invasi\": 38100,\n  \"invasion</w>\": 13378,\n  \"invasive</w>\": 19554,\n  \"inve\": 2024,\n  \"inven\": 26233,\n  \"invent\": 11665,\n  \"invent</w>\": 23558,\n  \"invented</w>\": 14100,\n  \"invention</w>\": 23607,\n  \"inventions</w>\": 44914,\n  \"inventor</w>\": 22836,\n  \"inventory</w>\": 19444,\n  \"inver\": 12061,\n  \"inverness</w>\": 33080,\n  \"inverte\": 46397,\n  \"inverted</w>\": 40709,\n  \"invest\": 4180,\n  \"invest</w>\": 9716,\n  \"invested</w>\": 22536,\n  \"investig\": 4626,\n  \"investigate</w>\": 15703,\n  \"investigated</w>\": 29180,\n  \"investigates</w>\": 29621,\n  \"investigating</w>\": 13713,\n  \"investigation</w>\": 8194,\n  \"investigations</w>\": 24020,\n  \"investigative</w>\": 30233,\n  \"investigator</w>\": 30528,\n  \"investigators</w>\": 24121,\n  \"investin\": 40195,\n  \"investing</w>\": 10554,\n  \"investment</w>\": 5605,\n  \"investments</w>\": 14675,\n  \"investor</w>\": 15490,\n  \"investors</w>\": 10486,\n  \"invests</w>\": 38378,\n  \"invic\": 25253,\n  \"invigor\": 48722,\n  \"invin\": 30252,\n  \"invincible</w>\": 38052,\n  \"invisible</w>\": 16093,\n  \"invit\": 12454,\n  \"invitation</w>\": 15032,\n  \"invitational</w>\": 14511,\n  \"invitations</w>\": 40120,\n  \"invite</w>\": 8109,\n  \"invited</w>\": 7731,\n  \"invites</w>\": 16034,\n  \"inviting</w>\": 14349,\n  \"invo\": 29417,\n  \"invol\": 4000,\n  \"involve</w>\": 26325,\n  \"involved</w>\": 5320,\n  \"involvement</w>\": 19502,\n  \"involves</w>\": 22652,\n  \"involving</w>\": 14786,\n  \"inwx</w>\": 35674,\n  \"iny</w>\": 23257,\n  \"inyour\": 47954,\n  \"io\": 3167,\n  \"io</w>\": 3752,\n  \"ioc</w>\": 43018,\n  \"iom\": 33000,\n  \"iom</w>\": 31135,\n  \"ion\": 14871,\n  \"ion</w>\": 3668,\n  \"ions</w>\": 26289,\n  \"ior\": 7354,\n  \"ior</w>\": 2498,\n  \"iority</w>\": 46016,\n  \"iors</w>\": 6427,\n  \"ios</w>\": 6614,\n  \"iot\": 32694,\n  \"iot</w>\": 6627,\n  \"iota</w>\": 37294,\n  \"ious</w>\": 6994,\n  \"iously</w>\": 38233,\n  \"iow\": 7439,\n  \"iowa\": 38847,\n  \"iowa</w>\": 8290,\n  \"ip\": 1719,\n  \"ip</w>\": 8600,\n  \"ipa</w>\": 11199,\n  \"ipad\": 39067,\n  \"ipad</w>\": 7491,\n  \"ipads</w>\": 35281,\n  \"ipc</w>\": 41981,\n  \"iphone\": 26030,\n  \"iphone</w>\": 4314,\n  \"iphones</w>\": 37561,\n  \"ipl</w>\": 13440,\n  \"ipment</w>\": 37824,\n  \"ipo\": 40218,\n  \"ipo</w>\": 24090,\n  \"ipod</w>\": 17889,\n  \"ipp\": 31706,\n  \"ips</w>\": 26910,\n  \"ipsw\": 22221,\n  \"ipswich</w>\": 24494,\n  \"iq\": 15554,\n  \"iq</w>\": 19996,\n  \"iqbal</w>\": 33553,\n  \"ir\": 582,\n  \"ir</w>\": 742,\n  \"ira\": 4923,\n  \"ira</w>\": 5371,\n  \"irah</w>\": 35724,\n  \"iran\": 19273,\n  \"iran</w>\": 5075,\n  \"irandeal</w>\": 46533,\n  \"irani</w>\": 37984,\n  \"iranian</w>\": 14158,\n  \"iraq</w>\": 8543,\n  \"iraqi</w>\": 18617,\n  \"irc</w>\": 41527,\n  \"ird</w>\": 2770,\n  \"ire\": 3013,\n  \"ire</w>\": 1454,\n  \"ired\": 32728,\n  \"ired</w>\": 2995,\n  \"ireland\": 32806,\n  \"ireland</w>\": 4157,\n  \"irene</w>\": 21600,\n  \"ires</w>\": 12435,\n  \"irez</w>\": 21581,\n  \"irgc</w>\": 47942,\n  \"iri\": 2155,\n  \"iri</w>\": 13880,\n  \"irical</w>\": 33366,\n  \"irie</w>\": 42979,\n  \"irina</w>\": 46664,\n  \"iring</w>\": 10169,\n  \"iris</w>\": 16437,\n  \"irish\": 9386,\n  \"irish</w>\": 4889,\n  \"irl\": 34494,\n  \"irl</w>\": 8570,\n  \"irling</w>\": 26493,\n  \"irls</w>\": 24344,\n  \"irma</w>\": 22406,\n  \"irn</w>\": 42603,\n  \"iro\": 23209,\n  \"iro</w>\": 7280,\n  \"iron\": 7699,\n  \"iron</w>\": 5391,\n  \"ironic</w>\": 24518,\n  \"ironically</w>\": 36779,\n  \"ironing</w>\": 46655,\n  \"ironman</w>\": 20330,\n  \"irons</w>\": 30032,\n  \"irony</w>\": 20681,\n  \"irport</w>\": 27769,\n  \"irr\": 24641,\n  \"irrational</w>\": 47413,\n  \"irregular</w>\": 38692,\n  \"irrelevant</w>\": 34677,\n  \"irresi\": 31200,\n  \"irresistible</w>\": 35252,\n  \"irresponsible</w>\": 44714,\n  \"irri\": 21484,\n  \"irrigation</w>\": 23761,\n  \"irrit\": 24218,\n  \"irs</w>\": 6086,\n  \"irst</w>\": 32701,\n  \"iru</w>\": 48206,\n  \"irvin</w>\": 47053,\n  \"irvine</w>\": 24201,\n  \"irving</w>\": 19738,\n  \"irwin</w>\": 23750,\n  \"iry</w>\": 7239,\n  \"is\": 595,\n  \"is</w>\": 533,\n  \"isa\": 11034,\n  \"isa</w>\": 6536,\n  \"isaac\": 37544,\n  \"isaac</w>\": 13659,\n  \"isab\": 13357,\n  \"isabel</w>\": 27466,\n  \"isabella</w>\": 26192,\n  \"isabelle</w>\": 31072,\n  \"isable</w>\": 46631,\n  \"isai\": 15365,\n  \"isaiah</w>\": 17952,\n  \"isak\": 40619,\n  \"isance</w>\": 46893,\n  \"isation</w>\": 7194,\n  \"isback</w>\": 43811,\n  \"isc</w>\": 39316,\n  \"isch</w>\": 47888,\n  \"isco</w>\": 5736,\n  \"iscoming</w>\": 26458,\n  \"isd\": 46816,\n  \"isd</w>\": 12002,\n  \"ise\": 7669,\n  \"ise</w>\": 1479,\n  \"ised</w>\": 2861,\n  \"iselle</w>\": 48491,\n  \"iser\": 23080,\n  \"iser</w>\": 5626,\n  \"isers</w>\": 34879,\n  \"ises</w>\": 5153,\n  \"isf</w>\": 44036,\n  \"isgreat</w>\": 34595,\n  \"ish\": 6844,\n  \"ish</w>\": 1061,\n  \"isha</w>\": 28050,\n  \"ishable</w>\": 37949,\n  \"ished</w>\": 35341,\n  \"ishere</w>\": 46053,\n  \"ishi\": 26224,\n  \"ishq\": 27996,\n  \"ishqba\": 32503,\n  \"ishqbaaaz</w>\": 36591,\n  \"isi\": 7233,\n  \"isi</w>\": 17880,\n  \"isil</w>\": 34636,\n  \"isin</w>\": 37676,\n  \"ising</w>\": 3426,\n  \"isis</w>\": 7531,\n  \"isk</w>\": 30171,\n  \"isl</w>\": 31368,\n  \"isla</w>\": 22807,\n  \"islam\": 6003,\n  \"islam</w>\": 8770,\n  \"islamabad</w>\": 19959,\n  \"islamic\": 31627,\n  \"islamic</w>\": 9552,\n  \"islamist</w>\": 38798,\n  \"islamophobia</w>\": 43459,\n  \"island\": 13408,\n  \"island</w>\": 2619,\n  \"islander</w>\": 45651,\n  \"islanders</w>\": 27804,\n  \"islands</w>\": 7145,\n  \"islay</w>\": 49279,\n  \"isle\": 19082,\n  \"isle</w>\": 11849,\n  \"isleof\": 24718,\n  \"isles</w>\": 21816,\n  \"islife</w>\": 26433,\n  \"islington</w>\": 34945,\n  \"ism\": 47730,\n  \"ism</w>\": 1935,\n  \"isma\": 43937,\n  \"ismail</w>\": 36140,\n  \"isme</w>\": 43570,\n  \"ismo</w>\": 41926,\n  \"isms</w>\": 18700,\n  \"isn</w>\": 2923,\n  \"isner</w>\": 48246,\n  \"isnow</w>\": 43694,\n  \"isnt</w>\": 19416,\n  \"iso\": 2462,\n  \"iso</w>\": 12263,\n  \"isol\": 11414,\n  \"isolated</w>\": 19044,\n  \"isolation</w>\": 26400,\n  \"ison\": 12949,\n  \"ison</w>\": 4553,\n  \"isons</w>\": 33318,\n  \"isoo</w>\": 35857,\n  \"isp\": 31397,\n  \"isp</w>\": 39041,\n  \"isra\": 3591,\n  \"israel\": 20837,\n  \"israel</w>\": 4779,\n  \"israeli</w>\": 8994,\n  \"israelis</w>\": 45713,\n  \"isreal</w>\": 47147,\n  \"isro</w>\": 44841,\n  \"iss\": 11738,\n  \"iss</w>\": 4950,\n  \"issa\": 38579,\n  \"issa</w>\": 7560,\n  \"issan\": 49358,\n  \"issance</w>\": 40828,\n  \"issant</w>\": 38828,\n  \"isse</w>\": 18986,\n  \"ission</w>\": 37946,\n  \"issu\": 2049,\n  \"issue</w>\": 3202,\n  \"issued</w>\": 9246,\n  \"issues</w>\": 4082,\n  \"issuing</w>\": 37226,\n  \"ist\": 9751,\n  \"ist</w>\": 2304,\n  \"istanbul</w>\": 12258,\n  \"istandwith\": 33820,\n  \"iste</w>\": 32563,\n  \"ister</w>\": 14555,\n  \"isthe\": 46748,\n  \"istic</w>\": 29556,\n  \"ists</w>\": 8426,\n  \"isu\": 17030,\n  \"isu</w>\": 23328,\n  \"it\": 529,\n  \"it</w>\": 585,\n  \"ita\": 36920,\n  \"ita</w>\": 2864,\n  \"itable</w>\": 8915,\n  \"ital\": 2306,\n  \"ital</w>\": 1660,\n  \"itali\": 11644,\n  \"italia</w>\": 11025,\n  \"italian\": 20264,\n  \"italian</w>\": 5175,\n  \"italians</w>\": 44744,\n  \"italk</w>\": 32894,\n  \"italy</w>\": 4052,\n  \"itan</w>\": 18383,\n  \"itans</w>\": 40711,\n  \"itar</w>\": 47161,\n  \"itarian</w>\": 11599,\n  \"itary</w>\": 17604,\n  \"itas\": 31634,\n  \"itas</w>\": 13436,\n  \"itate</w>\": 42457,\n  \"itated</w>\": 36744,\n  \"itation</w>\": 5070,\n  \"itative</w>\": 22892,\n  \"itc</w>\": 36449,\n  \"itch\": 2387,\n  \"itch</w>\": 8147,\n  \"itchen</w>\": 32664,\n  \"itchy</w>\": 41980,\n  \"ite\": 2732,\n  \"ite</w>\": 802,\n  \"iteam</w>\": 37828,\n  \"itec\": 3099,\n  \"itec</w>\": 43936,\n  \"itech\": 44215,\n  \"itech</w>\": 23040,\n  \"ited\": 8603,\n  \"ited</w>\": 1108,\n  \"itel</w>\": 44638,\n  \"itely</w>\": 4605,\n  \"item</w>\": 8532,\n  \"items</w>\": 6207,\n  \"iter\": 7938,\n  \"iter</w>\": 19773,\n  \"iteracy</w>\": 39634,\n  \"iterate</w>\": 43106,\n  \"iteration</w>\": 38790,\n  \"ites</w>\": 2454,\n  \"itez</w>\": 42131,\n  \"itf</w>\": 35436,\n  \"itfc</w>\": 36519,\n  \"ith\": 6133,\n  \"ith</w>\": 1757,\n  \"ithaca</w>\": 46257,\n  \"iti\": 760,\n  \"iti</w>\": 6165,\n  \"itia</w>\": 22634,\n  \"itian</w>\": 23365,\n  \"itic</w>\": 11950,\n  \"itical</w>\": 48767,\n  \"itics</w>\": 33967,\n  \"ities\": 41423,\n  \"ities</w>\": 1480,\n  \"itim\": 15676,\n  \"itiner\": 32803,\n  \"itinerary</w>\": 41564,\n  \"iting</w>\": 1257,\n  \"ition\": 25263,\n  \"ition</w>\": 1104,\n  \"itions</w>\": 5540,\n  \"itious</w>\": 13329,\n  \"itis\": 33539,\n  \"itis</w>\": 8388,\n  \"itive</w>\": 3067,\n  \"itly</w>\": 42240,\n  \"ito\": 22167,\n  \"ito</w>\": 4661,\n  \"iton</w>\": 21119,\n  \"itor\": 47267,\n  \"itor</w>\": 4584,\n  \"itors</w>\": 22005,\n  \"itos</w>\": 24560,\n  \"its\": 7140,\n  \"its</w>\": 902,\n  \"itsa\": 45032,\n  \"itself</w>\": 7290,\n  \"itsme\": 41125,\n  \"itss\": 47040,\n  \"itt\": 1031,\n  \"itt</w>\": 11228,\n  \"itta</w>\": 21233,\n  \"itte</w>\": 31962,\n  \"itted</w>\": 24429,\n  \"itten\": 30014,\n  \"itten</w>\": 4343,\n  \"itter</w>\": 11456,\n  \"itters</w>\": 13082,\n  \"itti</w>\": 28629,\n  \"ittin</w>\": 25646,\n  \"itting</w>\": 3147,\n  \"ittle\": 24208,\n  \"ittle</w>\": 21366,\n  \"ittles</w>\": 38989,\n  \"itton</w>\": 25707,\n  \"itty</w>\": 35096,\n  \"itu\": 1668,\n  \"itu</w>\": 32128,\n  \"itude\": 43382,\n  \"itude</w>\": 5012,\n  \"itudes</w>\": 20459,\n  \"itunes</w>\": 7007,\n  \"itup</w>\": 35838,\n  \"iture</w>\": 25547,\n  \"itus</w>\": 24364,\n  \"itutes</w>\": 32883,\n  \"itv\": 20159,\n  \"itv</w>\": 12805,\n  \"ity\": 2480,\n  \"ity</w>\": 696,\n  \"itya</w>\": 32055,\n  \"itz\": 14544,\n  \"itz</w>\": 7807,\n  \"iu\": 14292,\n  \"iu</w>\": 15575,\n  \"ium</w>\": 10762,\n  \"ius</w>\": 6740,\n  \"iv\": 6775,\n  \"iv</w>\": 9315,\n  \"iva</w>\": 42463,\n  \"ivan\": 15544,\n  \"ivan</w>\": 15689,\n  \"ivanka</w>\": 37914,\n  \"ive\": 26885,\n  \"ive</w>\": 8653,\n  \"ived</w>\": 15654,\n  \"iver\": 36849,\n  \"iver</w>\": 44254,\n  \"ives</w>\": 27333,\n  \"ivf</w>\": 39159,\n  \"iving</w>\": 45136,\n  \"ivory</w>\": 16776,\n  \"ivote\": 45835,\n  \"ivy\": 36939,\n  \"ivy</w>\": 16045,\n  \"iw\": 13058,\n  \"iw</w>\": 46604,\n  \"iwant\": 42747,\n  \"iwd</w>\": 16815,\n  \"iwm</w>\": 44237,\n  \"ix\": 13272,\n  \"ix</w>\": 8756,\n  \"iy\": 13704,\n  \"iya</w>\": 18595,\n  \"iyaki</w>\": 48395,\n  \"iz\": 2845,\n  \"iz</w>\": 8407,\n  \"iza</w>\": 37704,\n  \"ization</w>\": 10847,\n  \"ize</w>\": 10885,\n  \"ized</w>\": 7690,\n  \"izen</w>\": 34776,\n  \"izer</w>\": 23895,\n  \"izes</w>\": 45434,\n  \"izing</w>\": 17354,\n  \"izo</w>\": 46910,\n  \"izz\": 31779,\n  \"izz</w>\": 46128,\n  \"izzy</w>\": 28861,\n  \"j\": 73,\n  \"j</w>\": 329,\n  \"ja\": 1586,\n  \"ja</w>\": 2641,\n  \"jaan</w>\": 25052,\n  \"jab\": 8059,\n  \"jab</w>\": 9439,\n  \"jac\": 2293,\n  \"jac</w>\": 30198,\n  \"jace</w>\": 43286,\n  \"jack\": 2679,\n  \"jack</w>\": 3267,\n  \"jacked</w>\": 27923,\n  \"jacket</w>\": 6164,\n  \"jackets</w>\": 14745,\n  \"jacki\": 47418,\n  \"jackie\": 28023,\n  \"jackie</w>\": 11716,\n  \"jacking</w>\": 40929,\n  \"jackman</w>\": 35723,\n  \"jackpot</w>\": 23926,\n  \"jacks</w>\": 19649,\n  \"jackson\": 12321,\n  \"jackson</w>\": 4363,\n  \"jacksonville</w>\": 19263,\n  \"jaco\": 6840,\n  \"jacob\": 14385,\n  \"jacob</w>\": 9222,\n  \"jacobs</w>\": 17482,\n  \"jacobson</w>\": 46826,\n  \"jacqu\": 14495,\n  \"jacqueline</w>\": 22843,\n  \"jacques</w>\": 17799,\n  \"jad\": 12976,\n  \"jad</w>\": 38691,\n  \"jada</w>\": 37416,\n  \"jade\": 25123,\n  \"jade</w>\": 14513,\n  \"jaden</w>\": 37174,\n  \"jadine</w>\": 37445,\n  \"jae\": 16869,\n  \"jae</w>\": 15765,\n  \"jaejoong</w>\": 43610,\n  \"jaf\": 19362,\n  \"jag\": 7984,\n  \"jag</w>\": 36236,\n  \"jagan</w>\": 48530,\n  \"jagger</w>\": 30835,\n  \"jags</w>\": 31086,\n  \"jagu\": 10096,\n  \"jaguar\": 44777,\n  \"jaguar</w>\": 14757,\n  \"jaguars</w>\": 21854,\n  \"jah\": 20067,\n  \"jah</w>\": 11084,\n  \"jahan\": 44404,\n  \"jahan</w>\": 47827,\n  \"jai\": 10542,\n  \"jai</w>\": 13819,\n  \"jail\": 18574,\n  \"jail</w>\": 9332,\n  \"jailbreak</w>\": 45990,\n  \"jailed</w>\": 19456,\n  \"jails</w>\": 47833,\n  \"jaime</w>\": 24716,\n  \"jain</w>\": 21999,\n  \"jaipur</w>\": 23593,\n  \"jais\": 48607,\n  \"jait\": 28910,\n  \"jaitley</w>\": 32776,\n  \"jak\": 9225,\n  \"jak</w>\": 30589,\n  \"jakarta</w>\": 15471,\n  \"jake\": 13140,\n  \"jake</w>\": 7419,\n  \"jakob</w>\": 47358,\n  \"jal\": 8380,\n  \"jal</w>\": 26773,\n  \"jalan</w>\": 27270,\n  \"jalap\": 49081,\n  \"jalape\": 34263,\n  \"jalapeÃ±o</w>\": 43017,\n  \"jalen</w>\": 33548,\n  \"jam\": 1434,\n  \"jam</w>\": 5201,\n  \"jama\": 8977,\n  \"jama</w>\": 35366,\n  \"jamaica</w>\": 13019,\n  \"jamaican</w>\": 25144,\n  \"jamal</w>\": 26108,\n  \"jambo\": 35599,\n  \"jamboree</w>\": 38506,\n  \"jame\": 12341,\n  \"james\": 6963,\n  \"james</w>\": 2392,\n  \"jamesbond</w>\": 44704,\n  \"jamesc\": 47004,\n  \"jameson</w>\": 31731,\n  \"jami\": 15092,\n  \"jamie\": 16454,\n  \"jamie</w>\": 8078,\n  \"jamiedor\": 34310,\n  \"jamiedornan</w>\": 34896,\n  \"jammed</w>\": 35590,\n  \"jammin</w>\": 35223,\n  \"jamming</w>\": 25862,\n  \"jammu</w>\": 25926,\n  \"jams</w>\": 20243,\n  \"jan\": 1891,\n  \"jan</w>\": 3334,\n  \"jana</w>\": 18182,\n  \"jane\": 12389,\n  \"jane</w>\": 6736,\n  \"janeiro</w>\": 31740,\n  \"janet\": 29665,\n  \"janet</w>\": 15872,\n  \"jang\": 41526,\n  \"jang</w>\": 22074,\n  \"jani</w>\": 22606,\n  \"janice</w>\": 36048,\n  \"janine</w>\": 46896,\n  \"janis</w>\": 44233,\n  \"jann\": 35377,\n  \"jans</w>\": 22578,\n  \"jansen</w>\": 45354,\n  \"janu\": 3623,\n  \"january</w>\": 3697,\n  \"jap\": 2299,\n  \"jap</w>\": 49062,\n  \"japan\": 4502,\n  \"japan</w>\": 3400,\n  \"japanese\": 27211,\n  \"japanese</w>\": 4925,\n  \"japs</w>\": 42121,\n  \"jar\": 5120,\n  \"jar</w>\": 10837,\n  \"jard\": 25778,\n  \"jardin</w>\": 37371,\n  \"jare\": 17654,\n  \"jared\": 35597,\n  \"jared</w>\": 12571,\n  \"jaredle\": 36739,\n  \"jaredleto</w>\": 37106,\n  \"jaro</w>\": 35505,\n  \"jarpad</w>\": 44497,\n  \"jarre\": 23385,\n  \"jarrett</w>\": 30531,\n  \"jars</w>\": 27583,\n  \"jarvis</w>\": 29286,\n  \"jas\": 4492,\n  \"jas</w>\": 17559,\n  \"jasmin\": 42989,\n  \"jasmin</w>\": 47700,\n  \"jasmine</w>\": 17056,\n  \"jason\": 10009,\n  \"jason</w>\": 5395,\n  \"jasper</w>\": 19827,\n  \"jat\": 26106,\n  \"jau\": 26932,\n  \"jauregui</w>\": 48175,\n  \"jav\": 6234,\n  \"java</w>\": 12918,\n  \"javascri\": 16289,\n  \"javascript</w>\": 16423,\n  \"jave\": 46218,\n  \"javed</w>\": 42268,\n  \"javelin</w>\": 41701,\n  \"javi</w>\": 47627,\n  \"javier</w>\": 23307,\n  \"jaw\": 14804,\n  \"jaw</w>\": 17307,\n  \"jawa\": 44790,\n  \"jaws</w>\": 25491,\n  \"jax\": 22348,\n  \"jax</w>\": 12390,\n  \"jay\": 3427,\n  \"jay</w>\": 4155,\n  \"jaya</w>\": 21960,\n  \"jayanti</w>\": 37732,\n  \"jaye</w>\": 45703,\n  \"jayne</w>\": 35228,\n  \"jays</w>\": 12393,\n  \"jaz\": 3465,\n  \"jaz</w>\": 32874,\n  \"jazeera</w>\": 38260,\n  \"jazz\": 11488,\n  \"jazz</w>\": 4528,\n  \"jazzfest</w>\": 36683,\n  \"jazzy</w>\": 28191,\n  \"jb\": 21915,\n  \"jb</w>\": 13637,\n  \"jc\": 14991,\n  \"jc</w>\": 11517,\n  \"jd\": 18289,\n  \"jd</w>\": 14125,\n  \"jdm</w>\": 42013,\n  \"je\": 1013,\n  \"je</w>\": 8776,\n  \"jeal\": 9964,\n  \"jealous</w>\": 11093,\n  \"jealousy</w>\": 37654,\n  \"jean\": 13943,\n  \"jean</w>\": 6473,\n  \"jeanette</w>\": 48167,\n  \"jeanne</w>\": 29201,\n  \"jeans</w>\": 10157,\n  \"jeb</w>\": 35101,\n  \"jec\": 1347,\n  \"ject</w>\": 6070,\n  \"jed\": 12166,\n  \"jed</w>\": 38748,\n  \"jeddah</w>\": 40982,\n  \"jedi</w>\": 16681,\n  \"jee\": 29250,\n  \"jee</w>\": 14870,\n  \"jeep\": 16593,\n  \"jeep</w>\": 11286,\n  \"jeeplife</w>\": 43100,\n  \"jeet\": 45542,\n  \"jeet</w>\": 30944,\n  \"jef\": 10276,\n  \"jeff\": 6245,\n  \"jeff</w>\": 5550,\n  \"jefferson\": 44711,\n  \"jefferson</w>\": 13976,\n  \"jeffery</w>\": 41470,\n  \"jeffree\": 45994,\n  \"jeffrey\": 32886,\n  \"jeffrey</w>\": 16027,\n  \"jeho\": 42437,\n  \"jeky\": 43893,\n  \"jekyll</w>\": 49405,\n  \"jel\": 9794,\n  \"jelena</w>\": 48218,\n  \"jelly\": 19110,\n  \"jelly</w>\": 13762,\n  \"jellyfish</w>\": 30988,\n  \"jem\": 46326,\n  \"jem</w>\": 37530,\n  \"jen\": 2554,\n  \"jen</w>\": 12997,\n  \"jenkins</w>\": 16162,\n  \"jenn\": 33921,\n  \"jenn</w>\": 29869,\n  \"jenna</w>\": 17125,\n  \"jenner</w>\": 14260,\n  \"jenni\": 6774,\n  \"jennie</w>\": 28875,\n  \"jennifer\": 19786,\n  \"jennifer</w>\": 8613,\n  \"jennings</w>\": 21564,\n  \"jenny\": 20165,\n  \"jenny</w>\": 13414,\n  \"jens</w>\": 40806,\n  \"jensen\": 35558,\n  \"jensen</w>\": 19004,\n  \"jensenackles</w>\": 41011,\n  \"jeon\": 45200,\n  \"jeon</w>\": 43337,\n  \"jeong\": 47146,\n  \"jeong</w>\": 39264,\n  \"jeopar\": 22988,\n  \"jeopardy</w>\": 29613,\n  \"jer\": 2310,\n  \"jer</w>\": 35307,\n  \"jere\": 5614,\n  \"jeremi\": 22362,\n  \"jeremiah</w>\": 27301,\n  \"jeremy\": 14656,\n  \"jeremy</w>\": 8127,\n  \"jeremycorbyn</w>\": 37484,\n  \"jeric\": 25084,\n  \"jericho</w>\": 28892,\n  \"jerk</w>\": 23917,\n  \"jerky</w>\": 40079,\n  \"jermaine</w>\": 40722,\n  \"jerome</w>\": 19876,\n  \"jerry\": 18163,\n  \"jerry</w>\": 9164,\n  \"jersey\": 21921,\n  \"jersey</w>\": 4471,\n  \"jerseys</w>\": 15518,\n  \"jerus\": 12257,\n  \"jerusalem</w>\": 12557,\n  \"jes\": 7686,\n  \"jes</w>\": 35826,\n  \"jess\": 5313,\n  \"jess</w>\": 13758,\n  \"jesse\": 23112,\n  \"jesse</w>\": 11770,\n  \"jessi\": 24373,\n  \"jessic\": 14881,\n  \"jessica\": 45421,\n  \"jessica</w>\": 8178,\n  \"jessie</w>\": 19424,\n  \"jester</w>\": 44225,\n  \"jesu\": 19777,\n  \"jesuit</w>\": 33234,\n  \"jesus</w>\": 4070,\n  \"jet\": 11515,\n  \"jet</w>\": 6565,\n  \"jetblue</w>\": 45021,\n  \"jeter</w>\": 38450,\n  \"jets\": 38584,\n  \"jets</w>\": 10025,\n  \"jett</w>\": 44541,\n  \"jetty</w>\": 46382,\n  \"jew</w>\": 27450,\n  \"jewel\": 4880,\n  \"jewel</w>\": 17591,\n  \"jewell\": 9777,\n  \"jewellers</w>\": 46265,\n  \"jewellery</w>\": 11192,\n  \"jewelry\": 28018,\n  \"jewelry</w>\": 6039,\n  \"jewels</w>\": 20205,\n  \"jewish\": 29594,\n  \"jewish</w>\": 9104,\n  \"jews</w>\": 14200,\n  \"jf\": 31130,\n  \"jf</w>\": 33718,\n  \"jfc</w>\": 43652,\n  \"jfk</w>\": 18486,\n  \"jg\": 41986,\n  \"jg</w>\": 35138,\n  \"jh\": 24858,\n  \"jh</w>\": 21485,\n  \"jha\": 47012,\n  \"jha</w>\": 38092,\n  \"jhal\": 45695,\n  \"jhar\": 31546,\n  \"jharkhand</w>\": 39001,\n  \"jhb</w>\": 34631,\n  \"ji\": 3252,\n  \"ji</w>\": 2697,\n  \"jia</w>\": 32907,\n  \"jian</w>\": 33427,\n  \"jiang\": 43309,\n  \"jiang</w>\": 25762,\n  \"jic\": 48350,\n  \"jic</w>\": 40215,\n  \"jid</w>\": 24403,\n  \"jie</w>\": 40005,\n  \"jig\": 15136,\n  \"jig</w>\": 47430,\n  \"jigsaw</w>\": 32987,\n  \"jiha\": 23194,\n  \"jihad</w>\": 29637,\n  \"jihoon</w>\": 44765,\n  \"jil\": 36225,\n  \"jill\": 24136,\n  \"jill</w>\": 15254,\n  \"jillian</w>\": 37820,\n  \"jim\": 3190,\n  \"jim</w>\": 4550,\n  \"jima</w>\": 20679,\n  \"jimcantore</w>\": 43950,\n  \"jimenez</w>\": 35947,\n  \"jimi</w>\": 30565,\n  \"jimin</w>\": 16286,\n  \"jimmie</w>\": 45679,\n  \"jimmy\": 12215,\n  \"jimmy</w>\": 6817,\n  \"jimmyfallon</w>\": 45265,\n  \"jin\": 7927,\n  \"jin</w>\": 8485,\n  \"jind\": 40609,\n  \"jing\": 34933,\n  \"jing</w>\": 28607,\n  \"jingle</w>\": 28699,\n  \"jinnah</w>\": 43141,\n  \"jinping</w>\": 39308,\n  \"jinx</w>\": 42977,\n  \"jinyoung</w>\": 38051,\n  \"jio</w>\": 40501,\n  \"jis\": 25988,\n  \"jis</w>\": 23515,\n  \"jisoo</w>\": 43070,\n  \"jit\": 11947,\n  \"jit</w>\": 20308,\n  \"jitsu</w>\": 24530,\n  \"jiu\": 43351,\n  \"jiu</w>\": 44123,\n  \"jj\": 12502,\n  \"jj</w>\": 12790,\n  \"jk\": 20189,\n  \"jk</w>\": 9702,\n  \"jkt</w>\": 21494,\n  \"jl\": 25027,\n  \"jl</w>\": 22911,\n  \"jlo</w>\": 31017,\n  \"jm\": 24044,\n  \"jm</w>\": 18657,\n  \"jn\": 24576,\n  \"jn</w>\": 21717,\n  \"jnr</w>\": 37145,\n  \"jnu</w>\": 47142,\n  \"jo\": 683,\n  \"jo</w>\": 3804,\n  \"joachim</w>\": 48979,\n  \"joan\": 28064,\n  \"joan</w>\": 12710,\n  \"joann\": 35484,\n  \"joanna</w>\": 25357,\n  \"joanne\": 43736,\n  \"joanne</w>\": 25092,\n  \"joao</w>\": 45666,\n  \"joaqu\": 25140,\n  \"joaquin</w>\": 30745,\n  \"job\": 13114,\n  \"job</w>\": 2075,\n  \"jobs</w>\": 3735,\n  \"jobsearch</w>\": 45459,\n  \"joburg</w>\": 39343,\n  \"jocel\": 36879,\n  \"jocelyn</w>\": 47259,\n  \"jock</w>\": 34485,\n  \"jockey</w>\": 20126,\n  \"jodh\": 48689,\n  \"jodi\": 36812,\n  \"jodi</w>\": 26888,\n  \"jodie</w>\": 33100,\n  \"jody</w>\": 32959,\n  \"joe\": 9309,\n  \"joe</w>\": 3305,\n  \"joel\": 19819,\n  \"joel</w>\": 11429,\n  \"joes</w>\": 34756,\n  \"joey\": 16281,\n  \"joey</w>\": 10455,\n  \"jog\": 37967,\n  \"jog</w>\": 31691,\n  \"jogging</w>\": 37922,\n  \"joh\": 1201,\n  \"johan\": 17416,\n  \"johan</w>\": 27789,\n  \"johann</w>\": 31180,\n  \"johanna</w>\": 41494,\n  \"johannes</w>\": 37779,\n  \"johannesburg</w>\": 28377,\n  \"johansson</w>\": 41512,\n  \"johar</w>\": 34871,\n  \"john\": 2004,\n  \"john</w>\": 1742,\n  \"johncena</w>\": 46820,\n  \"johnnie</w>\": 47947,\n  \"johnny\": 14464,\n  \"johnny</w>\": 6904,\n  \"johns</w>\": 14515,\n  \"johnson\": 26036,\n  \"johnson</w>\": 4010,\n  \"johnston</w>\": 19791,\n  \"johnstone</w>\": 40766,\n  \"johor</w>\": 34750,\n  \"join\": 14737,\n  \"join</w>\": 1384,\n  \"joined</w>\": 4954,\n  \"joining</w>\": 5118,\n  \"joins</w>\": 5681,\n  \"joint</w>\": 6640,\n  \"jointhe\": 30422,\n  \"jointly</w>\": 37471,\n  \"joints</w>\": 27204,\n  \"jojo\": 41484,\n  \"jojo</w>\": 22075,\n  \"joke</w>\": 7198,\n  \"joker</w>\": 18200,\n  \"jokers</w>\": 44101,\n  \"jokes</w>\": 11336,\n  \"joking</w>\": 26112,\n  \"joko\": 44975,\n  \"jol\": 9174,\n  \"jol</w>\": 36470,\n  \"jolie</w>\": 31633,\n  \"jolla</w>\": 46109,\n  \"jolly</w>\": 21516,\n  \"jom\": 32152,\n  \"jon\": 3026,\n  \"jon</w>\": 6139,\n  \"jona\": 6629,\n  \"jonah\": 47934,\n  \"jonah</w>\": 27556,\n  \"jonas\": 42373,\n  \"jonas</w>\": 13650,\n  \"jonathan\": 19026,\n  \"jonathan</w>\": 7762,\n  \"jone\": 33934,\n  \"jones\": 19091,\n  \"jones</w>\": 3538,\n  \"jong\": 20214,\n  \"jong</w>\": 14726,\n  \"jonghyun</w>\": 29023,\n  \"jongin</w>\": 36957,\n  \"joni</w>\": 43177,\n  \"jonny\": 28454,\n  \"jonny</w>\": 21895,\n  \"joo\": 25807,\n  \"joo</w>\": 27680,\n  \"joom\": 47543,\n  \"joon</w>\": 18547,\n  \"joong</w>\": 26544,\n  \"jop\": 30486,\n  \"joplin</w>\": 42688,\n  \"jor\": 2482,\n  \"jor</w>\": 31595,\n  \"jordan\": 14644,\n  \"jordan</w>\": 4388,\n  \"jordani\": 46898,\n  \"jordi</w>\": 44795,\n  \"jorge\": 48761,\n  \"jorge</w>\": 18225,\n  \"jos\": 20560,\n  \"jos</w>\": 19661,\n  \"jose\": 4647,\n  \"jose</w>\": 7075,\n  \"josef</w>\": 36584,\n  \"josel\": 47800,\n  \"joseph\": 14163,\n  \"joseph</w>\": 6478,\n  \"josephine</w>\": 34866,\n  \"josh\": 9998,\n  \"josh</w>\": 5679,\n  \"joshi</w>\": 24786,\n  \"joshu\": 9112,\n  \"joshua</w>\": 11852,\n  \"josi\": 33583,\n  \"josie</w>\": 33167,\n  \"joss</w>\": 42834,\n  \"josÃ©</w>\": 27922,\n  \"jou\": 19921,\n  \"jou</w>\": 32029,\n  \"jour\": 2078,\n  \"jour</w>\": 17142,\n  \"journ\": 4563,\n  \"journal</w>\": 6626,\n  \"journalism</w>\": 10123,\n  \"journalist</w>\": 9914,\n  \"journalists</w>\": 12249,\n  \"journals</w>\": 24391,\n  \"journe\": 48833,\n  \"journey\": 32156,\n  \"journey</w>\": 3749,\n  \"journeys</w>\": 23329,\n  \"journo</w>\": 37034,\n  \"journos</w>\": 46437,\n  \"jovi</w>\": 33866,\n  \"joy\": 6308,\n  \"joy</w>\": 4273,\n  \"joyce\": 43753,\n  \"joyce</w>\": 15275,\n  \"joye\": 34052,\n  \"joyeux</w>\": 41876,\n  \"joyful</w>\": 24139,\n  \"joyous</w>\": 32245,\n  \"joyride</w>\": 46949,\n  \"joys</w>\": 22996,\n  \"jp\": 18249,\n  \"jp</w>\": 10557,\n  \"jpg</w>\": 36950,\n  \"jpn</w>\": 36212,\n  \"jr\": 13973,\n  \"jr</w>\": 3605,\n  \"js\": 46243,\n  \"js</w>\": 8006,\n  \"jst</w>\": 26523,\n  \"jt\": 39480,\n  \"jt</w>\": 18119,\n  \"ju\": 669,\n  \"ju</w>\": 9970,\n  \"jual</w>\": 38720,\n  \"juan\": 17148,\n  \"juan</w>\": 9274,\n  \"juana</w>\": 9081,\n  \"jubi\": 15485,\n  \"jubil\": 47743,\n  \"jubilee</w>\": 16907,\n  \"juco</w>\": 31570,\n  \"jud\": 8363,\n  \"juda\": 32478,\n  \"judah</w>\": 41066,\n  \"judaism</w>\": 42217,\n  \"judas</w>\": 39532,\n  \"judd</w>\": 29770,\n  \"judg\": 20012,\n  \"judge\": 16824,\n  \"judge</w>\": 5656,\n  \"judged</w>\": 33453,\n  \"judgement</w>\": 25246,\n  \"judges</w>\": 12575,\n  \"judging</w>\": 16570,\n  \"judgment</w>\": 24191,\n  \"judi\": 42546,\n  \"judice</w>\": 28032,\n  \"judicial</w>\": 19579,\n  \"judiciary</w>\": 24545,\n  \"judith</w>\": 24047,\n  \"judo</w>\": 27011,\n  \"judy\": 34663,\n  \"judy</w>\": 16510,\n  \"jug</w>\": 27619,\n  \"jugg\": 38628,\n  \"juic\": 38761,\n  \"juice\": 37954,\n  \"juice</w>\": 6916,\n  \"juices</w>\": 36757,\n  \"juicy</w>\": 17623,\n  \"juju</w>\": 43020,\n  \"juke\": 32519,\n  \"jukebox</w>\": 36411,\n  \"jul\": 34662,\n  \"jul</w>\": 15975,\n  \"jule\": 40819,\n  \"jules</w>\": 21996,\n  \"juli\": 3614,\n  \"juli</w>\": 49160,\n  \"julia</w>\": 10207,\n  \"julian\": 25459,\n  \"julian</w>\": 12643,\n  \"juliana</w>\": 46059,\n  \"julie\": 22534,\n  \"julie</w>\": 10505,\n  \"julien</w>\": 32595,\n  \"juliet</w>\": 20641,\n  \"juliette</w>\": 44804,\n  \"julio</w>\": 24888,\n  \"julius</w>\": 20870,\n  \"july</w>\": 2272,\n  \"jum\": 20791,\n  \"jumbo</w>\": 24678,\n  \"jume\": 45989,\n  \"jump\": 5519,\n  \"jump</w>\": 6423,\n  \"jumped</w>\": 16901,\n  \"jumper</w>\": 16558,\n  \"jumpers</w>\": 36485,\n  \"jumping</w>\": 11476,\n  \"jumpman</w>\": 48803,\n  \"jumps</w>\": 18911,\n  \"jumpsuit</w>\": 31044,\n  \"jun\": 1637,\n  \"jun</w>\": 7719,\n  \"junction</w>\": 11320,\n  \"june\": 23188,\n  \"june</w>\": 2345,\n  \"jung\": 13086,\n  \"jung</w>\": 13031,\n  \"jungkook</w>\": 20040,\n  \"jungle\": 42421,\n  \"jungle</w>\": 10865,\n  \"juni\": 4029,\n  \"junior\": 21167,\n  \"junior</w>\": 5027,\n  \"juniors</w>\": 16811,\n  \"juniper</w>\": 33829,\n  \"junk</w>\": 16000,\n  \"junkie</w>\": 27613,\n  \"junkies</w>\": 41207,\n  \"juno</w>\": 28845,\n  \"junto</w>\": 34282,\n  \"jupit\": 15270,\n  \"jupiter</w>\": 16212,\n  \"jur\": 15896,\n  \"jura\": 14715,\n  \"jurassic\": 28844,\n  \"jurassic</w>\": 21255,\n  \"jurgen</w>\": 39263,\n  \"juris\": 37010,\n  \"jurisdic\": 37714,\n  \"jury</w>\": 12931,\n  \"jus</w>\": 14999,\n  \"just\": 1770,\n  \"just</w>\": 761,\n  \"justi\": 14700,\n  \"justic\": 30399,\n  \"justice\": 16904,\n  \"justice</w>\": 3604,\n  \"justicefor\": 25812,\n  \"justiceleague</w>\": 41929,\n  \"justices</w>\": 44356,\n  \"justified</w>\": 34546,\n  \"justify</w>\": 28192,\n  \"justin\": 7537,\n  \"justin</w>\": 4394,\n  \"justinbieber</w>\": 12501,\n  \"justine</w>\": 34418,\n  \"justintrudeau</w>\": 32184,\n  \"justsaying</w>\": 42922,\n  \"juve\": 47717,\n  \"juve</w>\": 23092,\n  \"juven\": 12944,\n  \"juvenile</w>\": 19333,\n  \"juvent\": 13908,\n  \"juventus\": 47378,\n  \"juventus</w>\": 16208,\n  \"jux\": 33552,\n  \"juxta\": 34964,\n  \"jv\": 37932,\n  \"jv</w>\": 11805,\n  \"jw\": 30221,\n  \"jw</w>\": 24215,\n  \"jy\": 20979,\n  \"jyo\": 27378,\n  \"jyoti</w>\": 48696,\n  \"jÃ¤\": 45381,\n  \"k\": 74,\n  \"k</w>\": 330,\n  \"ka\": 1595,\n  \"ka</w>\": 1525,\n  \"kaa</w>\": 34496,\n  \"kab\": 6554,\n  \"kab</w>\": 45134,\n  \"kabaddi</w>\": 41749,\n  \"kabir</w>\": 38619,\n  \"kabo\": 47974,\n  \"kabul</w>\": 26160,\n  \"kac\": 21693,\n  \"kach\": 14341,\n  \"kad\": 10901,\n  \"kade</w>\": 41130,\n  \"kaduna</w>\": 38053,\n  \"kae\": 22542,\n  \"kaeper\": 30070,\n  \"kaepernick</w>\": 30713,\n  \"kaf\": 19870,\n  \"kag\": 13666,\n  \"kag</w>\": 31003,\n  \"kah\": 16068,\n  \"kah</w>\": 15463,\n  \"kahn</w>\": 35397,\n  \"kai\": 12752,\n  \"kai</w>\": 9601,\n  \"kaido</w>\": 40255,\n  \"kail\": 23623,\n  \"kaine</w>\": 39028,\n  \"kair\": 33027,\n  \"kaiser\": 43685,\n  \"kaiser</w>\": 29960,\n  \"kait\": 19326,\n  \"kaitlyn</w>\": 34948,\n  \"kaj\": 44788,\n  \"kaj</w>\": 40381,\n  \"kak\": 10401,\n  \"kak</w>\": 40128,\n  \"kaka</w>\": 47689,\n  \"kaku</w>\": 30900,\n  \"kal\": 4187,\n  \"kal</w>\": 18712,\n  \"kala\": 45453,\n  \"kala</w>\": 33105,\n  \"kalam</w>\": 40142,\n  \"kalamaz\": 42328,\n  \"kalamazoo</w>\": 46264,\n  \"kalb</w>\": 34483,\n  \"kale\": 17162,\n  \"kale</w>\": 16625,\n  \"kaleido\": 41144,\n  \"kali\": 17844,\n  \"kali</w>\": 26964,\n  \"kalin\": 42776,\n  \"kalyan</w>\": 23825,\n  \"kam\": 4104,\n  \"kam</w>\": 26011,\n  \"kamal\": 31371,\n  \"kamal</w>\": 28619,\n  \"kamala</w>\": 45003,\n  \"kame\": 45235,\n  \"kamen</w>\": 40738,\n  \"kami</w>\": 28707,\n  \"kamloops</w>\": 36602,\n  \"kamp\": 35179,\n  \"kamp</w>\": 29522,\n  \"kampala</w>\": 37134,\n  \"kan\": 2532,\n  \"kan</w>\": 8101,\n  \"kana</w>\": 35178,\n  \"kand\": 17478,\n  \"kane\": 32218,\n  \"kane</w>\": 9765,\n  \"kang\": 12226,\n  \"kang</w>\": 20789,\n  \"kangar\": 20622,\n  \"kangaroo</w>\": 25513,\n  \"kani\": 40907,\n  \"kani</w>\": 41948,\n  \"kann\": 18533,\n  \"kannada</w>\": 30053,\n  \"kano</w>\": 28201,\n  \"kans</w>\": 34012,\n  \"kansas\": 25507,\n  \"kansas</w>\": 6539,\n  \"kansascity</w>\": 46134,\n  \"kant\": 39923,\n  \"kant</w>\": 47132,\n  \"kanth</w>\": 24427,\n  \"kanu</w>\": 44565,\n  \"kany\": 13590,\n  \"kanye\": 29680,\n  \"kanye</w>\": 14965,\n  \"kanyewest</w>\": 31943,\n  \"kap\": 6804,\n  \"kap</w>\": 45279,\n  \"kapam\": 48561,\n  \"kapil\": 32337,\n  \"kapil</w>\": 42709,\n  \"kapilshar\": 48978,\n  \"kaplan</w>\": 37401,\n  \"kapoor</w>\": 9117,\n  \"kapp\": 36717,\n  \"kappa</w>\": 20239,\n  \"kapur</w>\": 42371,\n  \"kar\": 1813,\n  \"kar</w>\": 5933,\n  \"kara</w>\": 12552,\n  \"karab\": 40916,\n  \"karachi</w>\": 13671,\n  \"karak\": 40372,\n  \"karan\": 20077,\n  \"karan</w>\": 20931,\n  \"karanjohar</w>\": 47621,\n  \"karao\": 16262,\n  \"karaoke</w>\": 16640,\n  \"karate</w>\": 21211,\n  \"kardashi\": 13619,\n  \"kardashian</w>\": 14578,\n  \"kare\": 14310,\n  \"kare</w>\": 38354,\n  \"kareem</w>\": 38885,\n  \"kareena</w>\": 41569,\n  \"karen\": 17719,\n  \"karen</w>\": 10349,\n  \"kari\": 15339,\n  \"kari</w>\": 15161,\n  \"karim</w>\": 33477,\n  \"karin</w>\": 43917,\n  \"karina</w>\": 40250,\n  \"karl\": 20967,\n  \"karl</w>\": 13134,\n  \"karla</w>\": 42309,\n  \"karma</w>\": 17658,\n  \"karnat\": 13994,\n  \"karnataka</w>\": 15515,\n  \"karo</w>\": 45305,\n  \"kart\": 47841,\n  \"kart</w>\": 21310,\n  \"karthik</w>\": 41397,\n  \"karti\": 23053,\n  \"kartikeyan</w>\": 32584,\n  \"karting</w>\": 41655,\n  \"kas\": 6119,\n  \"kas</w>\": 14372,\n  \"kasa</w>\": 46111,\n  \"kash\": 6954,\n  \"kash</w>\": 21371,\n  \"kashi\": 47945,\n  \"kashmir\": 20251,\n  \"kashmir</w>\": 10783,\n  \"kashmiri</w>\": 35331,\n  \"kasi\": 45870,\n  \"kasi</w>\": 32819,\n  \"kasich</w>\": 39666,\n  \"kat\": 2844,\n  \"kat</w>\": 9341,\n  \"kata</w>\": 14558,\n  \"kate\": 11620,\n  \"kate</w>\": 6699,\n  \"katelyn</w>\": 45963,\n  \"kath\": 7386,\n  \"kath</w>\": 19745,\n  \"katharine</w>\": 41473,\n  \"katherine</w>\": 17687,\n  \"kathle\": 18721,\n  \"kathleen</w>\": 21709,\n  \"kathmandu</w>\": 34456,\n  \"kathniel</w>\": 36159,\n  \"kathr\": 14905,\n  \"kathryn\": 33142,\n  \"kathryn</w>\": 19999,\n  \"kathy\": 34775,\n  \"kathy</w>\": 18795,\n  \"kati\": 6515,\n  \"kati</w>\": 29928,\n  \"katic</w>\": 48058,\n  \"katie\": 24117,\n  \"katie</w>\": 9076,\n  \"katniss</w>\": 47916,\n  \"kato</w>\": 27573,\n  \"katrin\": 31282,\n  \"katrina</w>\": 21397,\n  \"katrinakaif</w>\": 45845,\n  \"kats</w>\": 44213,\n  \"katsu\": 49296,\n  \"katsu</w>\": 43712,\n  \"katy\": 17609,\n  \"katy</w>\": 14435,\n  \"katyperry</w>\": 28309,\n  \"katz</w>\": 30790,\n  \"kau\": 9299,\n  \"kau</w>\": 36895,\n  \"kauai</w>\": 44050,\n  \"kaufman</w>\": 37188,\n  \"kaur</w>\": 30518,\n  \"kav\": 10228,\n  \"kavan\": 18576,\n  \"kavanaugh</w>\": 20252,\n  \"kaw\": 10842,\n  \"kaw</w>\": 42719,\n  \"kawa</w>\": 33244,\n  \"kawaii</w>\": 26891,\n  \"kawasaki</w>\": 28227,\n  \"kawhi</w>\": 41220,\n  \"kay\": 4673,\n  \"kay</w>\": 9862,\n  \"kaya</w>\": 22752,\n  \"kayak</w>\": 27043,\n  \"kayaking</w>\": 28977,\n  \"kaye</w>\": 33003,\n  \"kayla</w>\": 17139,\n  \"kaylee</w>\": 47215,\n  \"kayo</w>\": 37021,\n  \"kaz\": 8812,\n  \"kaz</w>\": 39622,\n  \"kazakh\": 25451,\n  \"kazakhstan</w>\": 26720,\n  \"kazan</w>\": 47641,\n  \"kb\": 27381,\n  \"kb</w>\": 19960,\n  \"kbs</w>\": 27418,\n  \"kc\": 10869,\n  \"kc</w>\": 8638,\n  \"kca</w>\": 14347,\n  \"kcon</w>\": 39970,\n  \"kcr\": 46181,\n  \"kd\": 21826,\n  \"kd</w>\": 15597,\n  \"kday</w>\": 31074,\n  \"kdrama</w>\": 48628,\n  \"ke\": 643,\n  \"ke</w>\": 618,\n  \"kea</w>\": 47926,\n  \"kean\": 43288,\n  \"keane</w>\": 28635,\n  \"keanu</w>\": 40608,\n  \"kear\": 21562,\n  \"kearney</w>\": 36435,\n  \"keating</w>\": 40045,\n  \"keaton</w>\": 29975,\n  \"kebab</w>\": 36497,\n  \"ked\": 11730,\n  \"ked</w>\": 1243,\n  \"kee\": 9724,\n  \"kee</w>\": 6760,\n  \"keef</w>\": 42323,\n  \"keefe</w>\": 46965,\n  \"keegan</w>\": 31122,\n  \"keel</w>\": 48376,\n  \"keen\": 17714,\n  \"keen</w>\": 13218,\n  \"keenan</w>\": 36276,\n  \"keep\": 2924,\n  \"keep</w>\": 1726,\n  \"keeper</w>\": 7650,\n  \"keepers</w>\": 16130,\n  \"keepin</w>\": 41712,\n  \"keeping\": 38371,\n  \"keeping</w>\": 4873,\n  \"keepit\": 28044,\n  \"keeps</w>\": 6333,\n  \"keer\": 27412,\n  \"keerth\": 47500,\n  \"keerthyofficial</w>\": 48185,\n  \"kees</w>\": 10791,\n  \"keg</w>\": 32785,\n  \"keh\": 41272,\n  \"keh</w>\": 36983,\n  \"kei\": 18735,\n  \"kei</w>\": 24835,\n  \"keith\": 18762,\n  \"keith</w>\": 8252,\n  \"kej\": 15674,\n  \"kejri\": 16617,\n  \"kejriwal</w>\": 17334,\n  \"keke</w>\": 39195,\n  \"kel\": 2825,\n  \"kel</w>\": 7553,\n  \"kele\": 41765,\n  \"kell\": 16082,\n  \"kell</w>\": 40103,\n  \"keller</w>\": 21407,\n  \"kelley</w>\": 23776,\n  \"kelli\": 45852,\n  \"kelli</w>\": 46190,\n  \"kellie</w>\": 49224,\n  \"kellogg</w>\": 44218,\n  \"kelly\": 13417,\n  \"kelly</w>\": 5220,\n  \"kelown\": 31708,\n  \"kelowna</w>\": 32963,\n  \"kelsey\": 42295,\n  \"kelsey</w>\": 23018,\n  \"kelvin</w>\": 32859,\n  \"kem\": 31013,\n  \"kem</w>\": 17349,\n  \"kemp\": 18302,\n  \"kemp</w>\": 25325,\n  \"ken\": 1838,\n  \"ken</w>\": 1702,\n  \"kend\": 7497,\n  \"kendal</w>\": 44836,\n  \"kendall\": 34607,\n  \"kendall</w>\": 16238,\n  \"kendra</w>\": 36074,\n  \"kendrick\": 41787,\n  \"kendrick</w>\": 21953,\n  \"kendricklamar</w>\": 47020,\n  \"kenne\": 6209,\n  \"kennedy\": 38631,\n  \"kennedy</w>\": 9004,\n  \"kennel</w>\": 39595,\n  \"kenneth\": 46900,\n  \"kenneth</w>\": 17839,\n  \"kenney</w>\": 41373,\n  \"kenny\": 20185,\n  \"kenny</w>\": 9595,\n  \"kens</w>\": 29765,\n  \"kensing\": 21505,\n  \"kensington</w>\": 24988,\n  \"kent\": 13875,\n  \"kent</w>\": 8214,\n  \"kentu\": 9045,\n  \"kentucky\": 32230,\n  \"kentucky</w>\": 10014,\n  \"keny\": 17374,\n  \"kenya</w>\": 6181,\n  \"kenyan</w>\": 22624,\n  \"kenyans</w>\": 36263,\n  \"kenyatta</w>\": 31012,\n  \"kenzie</w>\": 38087,\n  \"keo\": 43062,\n  \"kept</w>\": 7737,\n  \"ker\": 2352,\n  \"ker</w>\": 1485,\n  \"keral\": 35122,\n  \"kerala</w>\": 11881,\n  \"kered</w>\": 26690,\n  \"kerel</w>\": 32232,\n  \"keri</w>\": 43447,\n  \"kermit</w>\": 40908,\n  \"kern</w>\": 40150,\n  \"kernel</w>\": 40684,\n  \"kerr</w>\": 20491,\n  \"kerri\": 41849,\n  \"kerry\": 24795,\n  \"kerry</w>\": 13097,\n  \"kers\": 30347,\n  \"kers</w>\": 2880,\n  \"kershaw</w>\": 40785,\n  \"kerson</w>\": 42810,\n  \"kerswednesday</w>\": 48152,\n  \"kert</w>\": 47279,\n  \"kes\": 38398,\n  \"kes</w>\": 1115,\n  \"kesh</w>\": 19751,\n  \"kesha</w>\": 36526,\n  \"kest</w>\": 15080,\n  \"ket\": 2715,\n  \"ket</w>\": 1236,\n  \"ketball</w>\": 38240,\n  \"ketch\": 22590,\n  \"ketch</w>\": 35371,\n  \"ketchup</w>\": 26724,\n  \"kete\": 25404,\n  \"keted</w>\": 41396,\n  \"keting</w>\": 15951,\n  \"keto\": 27485,\n  \"keto</w>\": 28754,\n  \"kets</w>\": 1632,\n  \"kett\": 23124,\n  \"kett</w>\": 10312,\n  \"kettering</w>\": 43779,\n  \"kettle\": 41992,\n  \"kettle</w>\": 24303,\n  \"kev\": 22758,\n  \"kev</w>\": 29419,\n  \"kevin\": 9419,\n  \"kevin</w>\": 4685,\n  \"kew\": 38014,\n  \"kew</w>\": 31409,\n  \"kex\": 30251,\n  \"key\": 2891,\n  \"key</w>\": 1458,\n  \"keyan</w>\": 27617,\n  \"keyboard</w>\": 13017,\n  \"keyboards</w>\": 49237,\n  \"keychain</w>\": 31050,\n  \"keye\": 40516,\n  \"keye</w>\": 20635,\n  \"keyes</w>\": 18336,\n  \"keynes</w>\": 32462,\n  \"keynote</w>\": 7556,\n  \"keys\": 48912,\n  \"keys</w>\": 6355,\n  \"keystone</w>\": 30688,\n  \"keyword</w>\": 42284,\n  \"keywords</w>\": 48122,\n  \"kf\": 33308,\n  \"kf</w>\": 42119,\n  \"kfc</w>\": 22032,\n  \"kg\": 36772,\n  \"kg</w>\": 7817,\n  \"kgs</w>\": 46629,\n  \"kh\": 2166,\n  \"kh</w>\": 7452,\n  \"kha\": 7333,\n  \"kha</w>\": 18929,\n  \"khair\": 43742,\n  \"khaki</w>\": 41646,\n  \"khal\": 13070,\n  \"khaled</w>\": 29343,\n  \"khali\": 11324,\n  \"khalid</w>\": 27166,\n  \"khalifa</w>\": 21389,\n  \"khalil</w>\": 36229,\n  \"kham\": 24892,\n  \"khan\": 13318,\n  \"khan</w>\": 3873,\n  \"khand\": 43384,\n  \"khand</w>\": 31110,\n  \"khanna</w>\": 29931,\n  \"khar\": 18340,\n  \"khar</w>\": 28578,\n  \"khart</w>\": 37458,\n  \"khat\": 43290,\n  \"khe\": 26360,\n  \"kher</w>\": 43843,\n  \"khi\": 39062,\n  \"khi</w>\": 42925,\n  \"khil\": 34101,\n  \"khloe</w>\": 45312,\n  \"kho\": 14022,\n  \"kho</w>\": 28774,\n  \"khou</w>\": 30656,\n  \"khs</w>\": 21239,\n  \"khtar</w>\": 45593,\n  \"khu\": 14041,\n  \"khur\": 32083,\n  \"khy\": 40917,\n  \"khz</w>\": 45604,\n  \"ki\": 848,\n  \"ki</w>\": 2608,\n  \"kia</w>\": 8712,\n  \"kian\": 43961,\n  \"kian</w>\": 25708,\n  \"kians</w>\": 44010,\n  \"kib\": 43108,\n  \"kiba\": 37207,\n  \"kic\": 24003,\n  \"kic</w>\": 27633,\n  \"kicchasu\": 44665,\n  \"kicchasudeep</w>\": 45560,\n  \"kick\": 4102,\n  \"kick</w>\": 4289,\n  \"kickass</w>\": 39299,\n  \"kickboxing</w>\": 36041,\n  \"kicked</w>\": 12479,\n  \"kicker</w>\": 26338,\n  \"kickin</w>\": 34597,\n  \"kicking</w>\": 7802,\n  \"kickoff</w>\": 10245,\n  \"kicks</w>\": 6989,\n  \"kickstart</w>\": 40780,\n  \"kickstarter</w>\": 13228,\n  \"kid\": 3948,\n  \"kid</w>\": 3551,\n  \"kidd</w>\": 24082,\n  \"kidding</w>\": 14535,\n  \"kiddo</w>\": 36360,\n  \"kiddos</w>\": 29205,\n  \"kidlit\": 39064,\n  \"kidlit</w>\": 33515,\n  \"kidlitart</w>\": 41600,\n  \"kidman</w>\": 44931,\n  \"kidnap</w>\": 45100,\n  \"kidnapp\": 16183,\n  \"kidnapped</w>\": 24737,\n  \"kidnapping</w>\": 32361,\n  \"kidney\": 37835,\n  \"kidney</w>\": 14610,\n  \"kids\": 15561,\n  \"kids</w>\": 1911,\n  \"kidz</w>\": 41938,\n  \"kie\": 8544,\n  \"kie</w>\": 3094,\n  \"kiefer</w>\": 48026,\n  \"kiel\": 40940,\n  \"kiel</w>\": 25509,\n  \"kien</w>\": 28782,\n  \"kier\": 20403,\n  \"kier</w>\": 35575,\n  \"kieran</w>\": 29231,\n  \"kies\": 36601,\n  \"kies</w>\": 4993,\n  \"kiest</w>\": 29755,\n  \"kiev</w>\": 24585,\n  \"kiewicz</w>\": 47574,\n  \"kigali</w>\": 40278,\n  \"kii</w>\": 39340,\n  \"kik</w>\": 36176,\n  \"kiki</w>\": 23962,\n  \"kiko</w>\": 40861,\n  \"kil\": 4912,\n  \"kil</w>\": 39337,\n  \"kildare</w>\": 45541,\n  \"kili\": 24386,\n  \"kilig</w>\": 49172,\n  \"kilimanjaro</w>\": 43470,\n  \"kilkenny</w>\": 33805,\n  \"kill\": 6163,\n  \"kill</w>\": 4367,\n  \"killa</w>\": 41355,\n  \"killarney</w>\": 48813,\n  \"killed</w>\": 3733,\n  \"killer\": 28230,\n  \"killer</w>\": 6613,\n  \"killers</w>\": 17614,\n  \"killin</w>\": 25903,\n  \"killing\": 37977,\n  \"killing</w>\": 5923,\n  \"killings</w>\": 24918,\n  \"kills</w>\": 9795,\n  \"kiln</w>\": 44150,\n  \"kilo\": 39281,\n  \"kilom\": 26285,\n  \"kilometers</w>\": 39192,\n  \"kilometres</w>\": 43278,\n  \"kilt</w>\": 49319,\n  \"kim\": 4639,\n  \"kim</w>\": 4606,\n  \"kimber\": 16796,\n  \"kimberley</w>\": 39859,\n  \"kimberly</w>\": 27465,\n  \"kimchi</w>\": 41027,\n  \"kimi</w>\": 31536,\n  \"kimkardashian</w>\": 35400,\n  \"kimmel</w>\": 27820,\n  \"kimono</w>\": 40024,\n  \"kin\": 1442,\n  \"kin</w>\": 2667,\n  \"kina</w>\": 28518,\n  \"kind\": 7204,\n  \"kind</w>\": 3044,\n  \"kinda</w>\": 6612,\n  \"kinder\": 12711,\n  \"kinder</w>\": 24159,\n  \"kindergarten</w>\": 16749,\n  \"kindle\": 24704,\n  \"kindle</w>\": 10746,\n  \"kindleunlimited</w>\": 32164,\n  \"kindly</w>\": 13952,\n  \"kindness\": 45112,\n  \"kindness</w>\": 10614,\n  \"kinds</w>\": 14879,\n  \"kine\": 17607,\n  \"kineni</w>\": 49080,\n  \"kinetic</w>\": 37699,\n  \"king\": 2365,\n  \"king</w>\": 674,\n  \"kingdom\": 21870,\n  \"kingdom</w>\": 7364,\n  \"kingdomhearts</w>\": 48570,\n  \"kingdoms</w>\": 43890,\n  \"kingfisher</w>\": 34330,\n  \"kingjames</w>\": 33153,\n  \"kingly</w>\": 33642,\n  \"kingof\": 27878,\n  \"kings\": 18590,\n  \"kings</w>\": 4232,\n  \"kingsley</w>\": 41807,\n  \"kingston\": 40736,\n  \"kingston</w>\": 15393,\n  \"kini</w>\": 41644,\n  \"kinky</w>\": 37006,\n  \"kinney</w>\": 37233,\n  \"kino</w>\": 39000,\n  \"kins\": 31060,\n  \"kins</w>\": 4386,\n  \"kinson</w>\": 12095,\n  \"kio\": 28210,\n  \"kio</w>\": 39401,\n  \"kiosk</w>\": 39146,\n  \"kip\": 27636,\n  \"kip</w>\": 15986,\n  \"kipp\": 43329,\n  \"kir\": 3476,\n  \"kir</w>\": 32949,\n  \"kira</w>\": 33038,\n  \"kiran\": 43234,\n  \"kiran</w>\": 36603,\n  \"kirby</w>\": 17065,\n  \"kiri\": 34170,\n  \"kiri</w>\": 45826,\n  \"kirk\": 10639,\n  \"kirk</w>\": 11508,\n  \"kirkland</w>\": 43061,\n  \"kiro</w>\": 39749,\n  \"kirstel</w>\": 46483,\n  \"kirsten</w>\": 31813,\n  \"kirsty</w>\": 37787,\n  \"kis\": 3199,\n  \"kis</w>\": 22796,\n  \"kish\": 25662,\n  \"kiss\": 43757,\n  \"kiss</w>\": 5946,\n  \"kissed</w>\": 22561,\n  \"kisses\": 47876,\n  \"kisses</w>\": 11220,\n  \"kissing</w>\": 18637,\n  \"kistan</w>\": 29580,\n  \"kit\": 4566,\n  \"kit</w>\": 4274,\n  \"kita</w>\": 29961,\n  \"kitch\": 3850,\n  \"kitchen\": 18131,\n  \"kitchen</w>\": 4485,\n  \"kitchener</w>\": 34428,\n  \"kitchens</w>\": 28301,\n  \"kite\": 47777,\n  \"kite</w>\": 19867,\n  \"kites</w>\": 45829,\n  \"kits</w>\": 13730,\n  \"kitt\": 10840,\n  \"kitten</w>\": 13063,\n  \"kittens</w>\": 17216,\n  \"kitties</w>\": 36013,\n  \"kitty\": 25067,\n  \"kitty</w>\": 8417,\n  \"kiwan\": 38709,\n  \"kiwanis</w>\": 46513,\n  \"kiwi</w>\": 22440,\n  \"kiwis</w>\": 48108,\n  \"kiya</w>\": 41610,\n  \"kj\": 27385,\n  \"kj</w>\": 28238,\n  \"kja\": 41048,\n  \"kjv</w>\": 37387,\n  \"kk\": 4390,\n  \"kk</w>\": 10849,\n  \"kka</w>\": 19002,\n  \"kke</w>\": 44239,\n  \"kker</w>\": 32399,\n  \"kki</w>\": 44672,\n  \"kkk</w>\": 20073,\n  \"kkkk\": 15834,\n  \"kkkk</w>\": 47160,\n  \"kkkkkkkk\": 31042,\n  \"kko</w>\": 43965,\n  \"kkr</w>\": 40855,\n  \"kl\": 8498,\n  \"kl</w>\": 14134,\n  \"kla\": 11249,\n  \"klan</w>\": 46935,\n  \"klar\": 41374,\n  \"klaus</w>\": 31788,\n  \"kle\": 7612,\n  \"kle</w>\": 7432,\n  \"klein\": 33475,\n  \"klein</w>\": 17579,\n  \"kley</w>\": 18594,\n  \"kli\": 31640,\n  \"klin\": 44809,\n  \"klin</w>\": 41647,\n  \"kline</w>\": 47580,\n  \"kling\": 40270,\n  \"klm</w>\": 38859,\n  \"klo\": 15296,\n  \"klopp</w>\": 26446,\n  \"kltu</w>\": 25978,\n  \"klu\": 21852,\n  \"kly</w>\": 45090,\n  \"km\": 29954,\n  \"km</w>\": 4590,\n  \"kman</w>\": 33312,\n  \"kms</w>\": 24996,\n  \"kn\": 4825,\n  \"kn</w>\": 23693,\n  \"knapp</w>\": 33945,\n  \"kne\": 6358,\n  \"knee</w>\": 9897,\n  \"knees</w>\": 19115,\n  \"kner</w>\": 31578,\n  \"knew</w>\": 5009,\n  \"kni\": 6312,\n  \"knick\": 33286,\n  \"knicks</w>\": 17657,\n  \"knife\": 44176,\n  \"knife</w>\": 8960,\n  \"knigh\": 43099,\n  \"knight\": 17949,\n  \"knight</w>\": 7355,\n  \"knights</w>\": 10385,\n  \"knit\": 18745,\n  \"knit</w>\": 14313,\n  \"knitted</w>\": 28151,\n  \"knitting</w>\": 18863,\n  \"knives</w>\": 20910,\n  \"kno\": 1482,\n  \"kno</w>\": 25362,\n  \"knob</w>\": 29736,\n  \"knobs</w>\": 47504,\n  \"knock\": 14195,\n  \"knock</w>\": 11583,\n  \"knocked</w>\": 15325,\n  \"knocking</w>\": 20380,\n  \"knockout</w>\": 22602,\n  \"knocks</w>\": 24296,\n  \"knoll</w>\": 43882,\n  \"knot</w>\": 18412,\n  \"knots</w>\": 32428,\n  \"know\": 4179,\n  \"know</w>\": 1038,\n  \"knowing</w>\": 9267,\n  \"knowledge\": 27864,\n  \"knowledge</w>\": 5510,\n  \"knowledgeable</w>\": 43391,\n  \"knowles</w>\": 32631,\n  \"known</w>\": 3102,\n  \"knows</w>\": 4309,\n  \"knowyour\": 30773,\n  \"knox\": 18630,\n  \"knox</w>\": 21833,\n  \"knoxville</w>\": 23232,\n  \"knu\": 14812,\n  \"knuck\": 21333,\n  \"knuckle</w>\": 42023,\n  \"knuckles</w>\": 40127,\n  \"knw</w>\": 40803,\n  \"ko\": 1313,\n  \"ko</w>\": 2448,\n  \"koala</w>\": 36654,\n  \"kobe\": 42644,\n  \"kobe</w>\": 14470,\n  \"kobo</w>\": 42390,\n  \"koch</w>\": 25331,\n  \"kochi</w>\": 36710,\n  \"kodak</w>\": 30425,\n  \"kodi\": 46611,\n  \"kof\": 17528,\n  \"koff</w>\": 47303,\n  \"kofi</w>\": 40400,\n  \"koh\": 13379,\n  \"koh</w>\": 31216,\n  \"kohl</w>\": 48479,\n  \"kohli</w>\": 17549,\n  \"koi</w>\": 28150,\n  \"kojima</w>\": 46419,\n  \"kok\": 32045,\n  \"kok</w>\": 11225,\n  \"koko\": 42426,\n  \"koko</w>\": 40003,\n  \"kol\": 7142,\n  \"kol</w>\": 31023,\n  \"kolkata</w>\": 18011,\n  \"kom\": 6686,\n  \"kom</w>\": 24181,\n  \"kombat</w>\": 29670,\n  \"kombucha</w>\": 48615,\n  \"komo</w>\": 31820,\n  \"kon\": 5743,\n  \"kon</w>\": 29519,\n  \"kona</w>\": 30203,\n  \"kong\": 31784,\n  \"kong</w>\": 6506,\n  \"konstant\": 46583,\n  \"koo\": 12225,\n  \"koo</w>\": 40472,\n  \"kook</w>\": 16003,\n  \"kool\": 36755,\n  \"kool</w>\": 26444,\n  \"kop\": 16623,\n  \"kop</w>\": 38999,\n  \"kor\": 6428,\n  \"kor</w>\": 24175,\n  \"kore\": 3919,\n  \"korea</w>\": 5915,\n  \"korean\": 31949,\n  \"korean</w>\": 8034,\n  \"kori</w>\": 42842,\n  \"korn\": 45412,\n  \"korn</w>\": 31492,\n  \"kors</w>\": 34535,\n  \"kos\": 47438,\n  \"kos</w>\": 22951,\n  \"kosh</w>\": 45233,\n  \"kosher</w>\": 36502,\n  \"koso\": 23892,\n  \"kosovo</w>\": 28343,\n  \"kot\": 23323,\n  \"kot</w>\": 20701,\n  \"kota</w>\": 21735,\n  \"koto\": 40945,\n  \"koto</w>\": 29977,\n  \"kou\": 18502,\n  \"kou</w>\": 39614,\n  \"kour\": 34134,\n  \"kov\": 17733,\n  \"kov</w>\": 15156,\n  \"kova</w>\": 26185,\n  \"koval\": 47903,\n  \"kovic</w>\": 16886,\n  \"kovich</w>\": 44794,\n  \"kovsky</w>\": 33384,\n  \"kow\": 29764,\n  \"kow</w>\": 23919,\n  \"kowski</w>\": 17649,\n  \"koz\": 29598,\n  \"kp\": 16174,\n  \"kp</w>\": 16894,\n  \"kpa</w>\": 38759,\n  \"kph</w>\": 41138,\n  \"kpk</w>\": 42094,\n  \"kpmg</w>\": 38243,\n  \"kpop\": 29534,\n  \"kpop</w>\": 15859,\n  \"kprc</w>\": 47832,\n  \"kprs</w>\": 46253,\n  \"kr\": 7309,\n  \"kr</w>\": 14107,\n  \"kra\": 5762,\n  \"kraft</w>\": 28057,\n  \"kraja</w>\": 29016,\n  \"kraken</w>\": 48408,\n  \"krakow</w>\": 40033,\n  \"kram\": 19075,\n  \"kramer</w>\": 27495,\n  \"kran\": 33243,\n  \"kranti</w>\": 47969,\n  \"krat\": 30470,\n  \"kre\": 8362,\n  \"kreme</w>\": 43140,\n  \"kremlin</w>\": 33979,\n  \"kri\": 3679,\n  \"kris\": 35251,\n  \"kris</w>\": 12261,\n  \"krish\": 11487,\n  \"krishna</w>\": 15863,\n  \"krishnan</w>\": 46535,\n  \"krispy</w>\": 49292,\n  \"krist\": 16490,\n  \"kristen\": 28881,\n  \"kristen</w>\": 16644,\n  \"kristi\": 26895,\n  \"kristin\": 35408,\n  \"kristin</w>\": 26785,\n  \"kristina</w>\": 33180,\n  \"krit\": 36265,\n  \"kro\": 16193,\n  \"kroger</w>\": 36344,\n  \"kron\": 25999,\n  \"kru\": 10609,\n  \"kruger</w>\": 32948,\n  \"krun\": 43084,\n  \"kry\": 13995,\n  \"krystal</w>\": 36554,\n  \"ks\": 10470,\n  \"ks</w>\": 662,\n  \"ksa</w>\": 25439,\n  \"ksh</w>\": 36594,\n  \"kst</w>\": 17420,\n  \"kstate\": 48590,\n  \"ksu</w>\": 43496,\n  \"kswx</w>\": 36180,\n  \"kt\": 17238,\n  \"kt</w>\": 7792,\n  \"ktm</w>\": 33989,\n  \"ktn\": 42170,\n  \"kton</w>\": 37848,\n  \"kts</w>\": 48577,\n  \"ktv\": 36444,\n  \"ku\": 1836,\n  \"ku</w>\": 4827,\n  \"kuala</w>\": 30336,\n  \"kubball</w>\": 48995,\n  \"kuber\": 41336,\n  \"kubernetes</w>\": 45144,\n  \"kubrick</w>\": 37032,\n  \"kuch</w>\": 39394,\n  \"kud\": 40818,\n  \"kudos</w>\": 14481,\n  \"kul\": 11325,\n  \"kul</w>\": 31514,\n  \"kum\": 18086,\n  \"kum</w>\": 28148,\n  \"kuma\": 43139,\n  \"kuma</w>\": 33920,\n  \"kumar\": 22329,\n  \"kumar</w>\": 7674,\n  \"kumb\": 31391,\n  \"kun\": 6849,\n  \"kun</w>\": 21842,\n  \"kung\": 39656,\n  \"kung</w>\": 22347,\n  \"kunst</w>\": 37881,\n  \"kup\": 39023,\n  \"kups</w>\": 27240,\n  \"kur\": 4862,\n  \"kurdi\": 23504,\n  \"kurdish</w>\": 21644,\n  \"kurdistan</w>\": 24459,\n  \"kurds</w>\": 20888,\n  \"kuri\": 46375,\n  \"kuro\": 28239,\n  \"kuro</w>\": 47826,\n  \"kurt\": 31903,\n  \"kurt</w>\": 14527,\n  \"kus\": 27618,\n  \"kus</w>\": 27505,\n  \"kush\": 22264,\n  \"kush</w>\": 24594,\n  \"kushner</w>\": 36716,\n  \"kut\": 17283,\n  \"kut</w>\": 36965,\n  \"kuwait</w>\": 19679,\n  \"kuya</w>\": 34815,\n  \"kuz\": 33253,\n  \"kv\": 27594,\n  \"kv</w>\": 34249,\n  \"kw\": 10072,\n  \"kw</w>\": 18339,\n  \"kwa\": 32784,\n  \"kwa</w>\": 48576,\n  \"kwame</w>\": 46681,\n  \"kwan\": 37100,\n  \"kwan</w>\": 39447,\n  \"kwang</w>\": 40260,\n  \"kwe\": 26050,\n  \"kwi\": 35327,\n  \"kwon</w>\": 36369,\n  \"kx\": 28190,\n  \"kx</w>\": 46442,\n  \"ky\": 2018,\n  \"ky</w>\": 2383,\n  \"kya</w>\": 29142,\n  \"kyc</w>\": 37758,\n  \"kyiv</w>\": 36422,\n  \"kyle\": 15847,\n  \"kyle</w>\": 7539,\n  \"kylie\": 28282,\n  \"kylie</w>\": 17983,\n  \"kyliejenner</w>\": 47232,\n  \"kylo</w>\": 47704,\n  \"kyo\": 13150,\n  \"kyo</w>\": 6281,\n  \"kyoto</w>\": 23223,\n  \"kyr\": 26329,\n  \"kyrgy\": 40013,\n  \"kyrgyz\": 48346,\n  \"kyrie</w>\": 21857,\n  \"kyu\": 28296,\n  \"kyu</w>\": 25490,\n  \"kyuhyun</w>\": 37229,\n  \"kyung</w>\": 41058,\n  \"kyungsoo</w>\": 30280,\n  \"kywx</w>\": 39940,\n  \"kz\": 48743,\n  \"kz</w>\": 36848,\n  \"kzn</w>\": 38264,\n  \"kÃ¶\": 32437,\n  \"l\": 75,\n  \"l</w>\": 331,\n  \"la\": 572,\n  \"la</w>\": 1210,\n  \"laa</w>\": 44642,\n  \"lab\": 3537,\n  \"lab</w>\": 4352,\n  \"labe\": 25749,\n  \"label\": 12235,\n  \"label</w>\": 9093,\n  \"labeled</w>\": 32720,\n  \"labeling</w>\": 36825,\n  \"labelled</w>\": 45188,\n  \"labels</w>\": 17413,\n  \"lable</w>\": 31879,\n  \"labor\": 11201,\n  \"labor</w>\": 7878,\n  \"laboratories</w>\": 43421,\n  \"laboratory</w>\": 17664,\n  \"laborday</w>\": 39324,\n  \"labou\": 32700,\n  \"labour\": 19586,\n  \"labour</w>\": 6019,\n  \"labourdoorstep</w>\": 37008,\n  \"labout\": 35961,\n  \"labra\": 37067,\n  \"labrador</w>\": 25409,\n  \"labs</w>\": 12021,\n  \"laby\": 29131,\n  \"labyrin\": 31782,\n  \"labyrinth</w>\": 35594,\n  \"lac\": 4477,\n  \"lac</w>\": 16189,\n  \"lace\": 30012,\n  \"lace</w>\": 5421,\n  \"laced</w>\": 36800,\n  \"laces</w>\": 23281,\n  \"lacey</w>\": 31754,\n  \"lach\": 30558,\n  \"lack\": 24915,\n  \"lack</w>\": 8069,\n  \"lacking</w>\": 30080,\n  \"lacks</w>\": 34388,\n  \"laco\": 45882,\n  \"lacrosse</w>\": 12915,\n  \"lacy</w>\": 38645,\n  \"lad\": 15991,\n  \"lad</w>\": 10707,\n  \"ladak\": 42312,\n  \"ladakh</w>\": 45295,\n  \"ladder</w>\": 16637,\n  \"ladders</w>\": 47125,\n  \"lade</w>\": 26447,\n  \"laden</w>\": 28634,\n  \"ladi\": 12934,\n  \"ladies\": 28932,\n  \"ladies</w>\": 3431,\n  \"lads</w>\": 9803,\n  \"lady\": 7275,\n  \"lady</w>\": 2909,\n  \"ladybird</w>\": 43389,\n  \"ladybug</w>\": 40038,\n  \"ladygaga</w>\": 21232,\n  \"laf\": 47555,\n  \"lafayette</w>\": 22683,\n  \"lag\": 30932,\n  \"lag</w>\": 20394,\n  \"laga</w>\": 30161,\n  \"lage</w>\": 24369,\n  \"lager\": 36811,\n  \"lager</w>\": 22989,\n  \"lagh\": 37237,\n  \"laghate\": 47565,\n  \"laghateparth</w>\": 48780,\n  \"lagi</w>\": 39786,\n  \"lago\": 42698,\n  \"lago</w>\": 31476,\n  \"lagoon</w>\": 22753,\n  \"lagos</w>\": 12728,\n  \"lagun\": 18500,\n  \"laguna</w>\": 23609,\n  \"lah\": 27315,\n  \"lah</w>\": 4299,\n  \"lahat</w>\": 42164,\n  \"lahore</w>\": 16733,\n  \"lai</w>\": 23947,\n  \"laid\": 42560,\n  \"laid</w>\": 11160,\n  \"lain\": 46958,\n  \"lain</w>\": 17151,\n  \"laine</w>\": 35860,\n  \"lair</w>\": 31981,\n  \"lais</w>\": 34923,\n  \"lak\": 12890,\n  \"lak</w>\": 26793,\n  \"lake\": 6441,\n  \"lake</w>\": 2553,\n  \"lakedistrict</w>\": 26437,\n  \"lakel\": 26133,\n  \"lakeland</w>\": 34306,\n  \"laker\": 45717,\n  \"lakers</w>\": 13570,\n  \"lakes</w>\": 9265,\n  \"lakeshore</w>\": 42595,\n  \"lakeside</w>\": 30915,\n  \"lakewood</w>\": 36417,\n  \"lakh</w>\": 21487,\n  \"lakhs</w>\": 37985,\n  \"lakings</w>\": 34289,\n  \"lakota</w>\": 45510,\n  \"laksh\": 24937,\n  \"lakshmi</w>\": 39682,\n  \"lal\": 12301,\n  \"lal</w>\": 19430,\n  \"lala</w>\": 33661,\n  \"lali\": 21726,\n  \"laliga</w>\": 32383,\n  \"lam\": 2022,\n  \"lam</w>\": 5704,\n  \"lama</w>\": 26049,\n  \"lamar\": 28678,\n  \"lamar</w>\": 17284,\n  \"lamb\": 19863,\n  \"lamb</w>\": 10034,\n  \"lambda</w>\": 36687,\n  \"lambert</w>\": 14574,\n  \"lambeth</w>\": 43410,\n  \"lambo</w>\": 45464,\n  \"lamborgh\": 18709,\n  \"lamborghini</w>\": 19462,\n  \"lambs</w>\": 30361,\n  \"lame</w>\": 23192,\n  \"lamin\": 22337,\n  \"laminated</w>\": 49079,\n  \"lamo\": 41461,\n  \"lamont</w>\": 46719,\n  \"lamp\": 26700,\n  \"lamp</w>\": 10725,\n  \"lampard</w>\": 39989,\n  \"lamps</w>\": 23424,\n  \"lan\": 1193,\n  \"lan</w>\": 4872,\n  \"lana</w>\": 15406,\n  \"lanapar\": 47437,\n  \"lanaparrilla</w>\": 47819,\n  \"lanc\": 11872,\n  \"lanca\": 15694,\n  \"lancashire</w>\": 20939,\n  \"lancaster</w>\": 16446,\n  \"lance\": 26025,\n  \"lance</w>\": 11609,\n  \"lancer</w>\": 38195,\n  \"lancers</w>\": 46392,\n  \"lancia</w>\": 48698,\n  \"lancs</w>\": 47540,\n  \"land\": 1567,\n  \"land</w>\": 973,\n  \"lande</w>\": 36556,\n  \"landed</w>\": 9873,\n  \"lander\": 37247,\n  \"lander</w>\": 9666,\n  \"landers</w>\": 20019,\n  \"landfall</w>\": 38465,\n  \"landfill</w>\": 34947,\n  \"landia</w>\": 41384,\n  \"landing</w>\": 8292,\n  \"landings</w>\": 46104,\n  \"landlord</w>\": 28938,\n  \"landlords</w>\": 35283,\n  \"landmark</w>\": 15208,\n  \"landmarks</w>\": 30393,\n  \"lando\": 25463,\n  \"lando</w>\": 7065,\n  \"landon</w>\": 32748,\n  \"landrover</w>\": 38125,\n  \"landry</w>\": 36137,\n  \"lands\": 40223,\n  \"lands</w>\": 2961,\n  \"landsc\": 4384,\n  \"landscape\": 21123,\n  \"landscape</w>\": 5727,\n  \"landscapephotography</w>\": 28125,\n  \"landscapes</w>\": 15344,\n  \"landscaping</w>\": 25642,\n  \"landslide</w>\": 31954,\n  \"lane\": 25534,\n  \"lane</w>\": 3980,\n  \"lanes</w>\": 10345,\n  \"laney</w>\": 38552,\n  \"lang\": 7969,\n  \"lang</w>\": 8578,\n  \"lange</w>\": 32021,\n  \"langford</w>\": 45615,\n  \"langley</w>\": 28595,\n  \"langu\": 4095,\n  \"language\": 46103,\n  \"language</w>\": 4781,\n  \"languages</w>\": 13527,\n  \"lani</w>\": 22964,\n  \"lanka</w>\": 16221,\n  \"lankan</w>\": 40531,\n  \"lannister</w>\": 49056,\n  \"lans\": 43550,\n  \"lansing</w>\": 30805,\n  \"lant</w>\": 44504,\n  \"lanta</w>\": 44768,\n  \"lantern</w>\": 17185,\n  \"lanterns</w>\": 33676,\n  \"lantic\": 32601,\n  \"lantic</w>\": 27678,\n  \"lants</w>\": 38425,\n  \"lanyard</w>\": 46808,\n  \"lao\": 32475,\n  \"lao</w>\": 29521,\n  \"laos</w>\": 34353,\n  \"lap\": 7213,\n  \"lap</w>\": 8639,\n  \"lapd</w>\": 32557,\n  \"lapel</w>\": 47961,\n  \"lapland</w>\": 43633,\n  \"laps</w>\": 18711,\n  \"lapse</w>\": 33365,\n  \"laptop</w>\": 10464,\n  \"laptops</w>\": 32189,\n  \"laq</w>\": 45026,\n  \"lar\": 1592,\n  \"lar</w>\": 1652,\n  \"lara</w>\": 19435,\n  \"lard</w>\": 40347,\n  \"lare\": 22415,\n  \"laredo</w>\": 48427,\n  \"large\": 40234,\n  \"large</w>\": 3638,\n  \"largely</w>\": 21418,\n  \"larger</w>\": 12567,\n  \"largest</w>\": 4960,\n  \"largo</w>\": 44161,\n  \"lari\": 34676,\n  \"lark\": 43164,\n  \"lark</w>\": 23536,\n  \"larkin</w>\": 34769,\n  \"larry\": 18642,\n  \"larry</w>\": 8242,\n  \"lars</w>\": 8669,\n  \"larsen</w>\": 39721,\n  \"larson</w>\": 27973,\n  \"larvae</w>\": 44840,\n  \"las\": 8295,\n  \"las</w>\": 2552,\n  \"lasag\": 31210,\n  \"lasagna</w>\": 40683,\n  \"lasalle</w>\": 43866,\n  \"laser\": 25607,\n  \"laser</w>\": 9885,\n  \"lasers</w>\": 37060,\n  \"lash\": 31995,\n  \"lash</w>\": 18480,\n  \"lashes</w>\": 21015,\n  \"lass\": 24203,\n  \"lass</w>\": 18263,\n  \"lassic</w>\": 39430,\n  \"last\": 10600,\n  \"last</w>\": 952,\n  \"lasted</w>\": 25711,\n  \"lasting</w>\": 13434,\n  \"lastnight</w>\": 30159,\n  \"lasts</w>\": 20141,\n  \"lasvegas</w>\": 17789,\n  \"lat\": 1591,\n  \"lat</w>\": 28437,\n  \"lata</w>\": 47114,\n  \"latam</w>\": 40012,\n  \"late\": 13267,\n  \"late</w>\": 2325,\n  \"latel\": 49035,\n  \"lately</w>\": 11824,\n  \"latepost</w>\": 48328,\n  \"later\": 24109,\n  \"later</w>\": 2941,\n  \"lateral</w>\": 26646,\n  \"latest\": 46805,\n  \"latest</w>\": 2053,\n  \"latex</w>\": 27520,\n  \"lati\": 16357,\n  \"latimes</w>\": 43356,\n  \"latin\": 16695,\n  \"latin</w>\": 9888,\n  \"latina</w>\": 27936,\n  \"latino\": 45734,\n  \"latino</w>\": 19470,\n  \"latinos</w>\": 40233,\n  \"lation</w>\": 6191,\n  \"latitude</w>\": 37392,\n  \"lative</w>\": 15719,\n  \"lator</w>\": 9291,\n  \"lators</w>\": 28278,\n  \"latt\": 33561,\n  \"latte</w>\": 17697,\n  \"latter</w>\": 26198,\n  \"latvia</w>\": 30034,\n  \"lau\": 1853,\n  \"lau</w>\": 23090,\n  \"lauderdale</w>\": 24352,\n  \"laugh\": 4969,\n  \"laugh</w>\": 6332,\n  \"laughed</w>\": 16746,\n  \"laughing</w>\": 8301,\n  \"laughs</w>\": 14322,\n  \"laughter</w>\": 10722,\n  \"laun\": 2944,\n  \"launch\": 31168,\n  \"launch</w>\": 2904,\n  \"launched</w>\": 6125,\n  \"launcher</w>\": 35782,\n  \"launches</w>\": 7023,\n  \"launching</w>\": 8565,\n  \"laundering</w>\": 34079,\n  \"laundry</w>\": 14797,\n  \"laur\": 15256,\n  \"laura\": 17091,\n  \"laura</w>\": 7763,\n  \"laure\": 16932,\n  \"laureate</w>\": 25675,\n  \"laurel\": 43370,\n  \"laurel</w>\": 19942,\n  \"lauren\": 10456,\n  \"lauren</w>\": 7634,\n  \"laurence</w>\": 29353,\n  \"laurent</w>\": 23226,\n  \"laurie</w>\": 20326,\n  \"laus\": 38895,\n  \"laus</w>\": 28111,\n  \"lause</w>\": 22269,\n  \"laut\": 47688,\n  \"lav\": 13767,\n  \"lav</w>\": 26919,\n  \"lava</w>\": 16765,\n  \"laven\": 15047,\n  \"lavender</w>\": 16033,\n  \"laver\": 28188,\n  \"lavish</w>\": 35443,\n  \"law\": 2874,\n  \"law</w>\": 2606,\n  \"lawful</w>\": 33845,\n  \"lawler</w>\": 47862,\n  \"lawless</w>\": 39468,\n  \"lawmaker</w>\": 37169,\n  \"lawmakers</w>\": 21190,\n  \"lawn\": 31675,\n  \"lawn</w>\": 11024,\n  \"lawrence\": 32221,\n  \"lawrence</w>\": 8820,\n  \"laws</w>\": 7306,\n  \"lawson</w>\": 22152,\n  \"lawsuit</w>\": 14346,\n  \"lawsuits</w>\": 44331,\n  \"lawyer</w>\": 10552,\n  \"lawyers</w>\": 14232,\n  \"lax\": 17750,\n  \"lax</w>\": 10024,\n  \"lay\": 7205,\n  \"lay</w>\": 6360,\n  \"laye\": 25995,\n  \"layer</w>\": 12411,\n  \"layered</w>\": 28520,\n  \"layers</w>\": 15900,\n  \"laying</w>\": 12333,\n  \"layla</w>\": 45050,\n  \"layne</w>\": 48721,\n  \"layo\": 21738,\n  \"layoffs</w>\": 29019,\n  \"layout</w>\": 17314,\n  \"lays</w>\": 19546,\n  \"layton</w>\": 38061,\n  \"laz\": 18806,\n  \"lazar\": 33075,\n  \"lazarus</w>\": 49126,\n  \"laze</w>\": 41559,\n  \"lazer</w>\": 43735,\n  \"lazio</w>\": 33010,\n  \"lazy\": 32614,\n  \"lazy</w>\": 10753,\n  \"lb\": 21958,\n  \"lb</w>\": 7422,\n  \"lbc</w>\": 37694,\n  \"lbj</w>\": 45683,\n  \"lbloggers</w>\": 48695,\n  \"lbs</w>\": 8912,\n  \"lc\": 9584,\n  \"lc</w>\": 7225,\n  \"lcd</w>\": 21356,\n  \"lcfc</w>\": 25339,\n  \"lcs</w>\": 32279,\n  \"ld\": 1431,\n  \"ld</w>\": 730,\n  \"lder</w>\": 6945,\n  \"lders</w>\": 43221,\n  \"ldn\": 37050,\n  \"ldn</w>\": 2517,\n  \"ldnont</w>\": 25827,\n  \"ldnt</w>\": 21690,\n  \"ldr</w>\": 37279,\n  \"lds</w>\": 31235,\n  \"le\": 534,\n  \"le</w>\": 579,\n  \"lea\": 2246,\n  \"lea</w>\": 13324,\n  \"leach</w>\": 35527,\n  \"lead\": 1328,\n  \"lead</w>\": 2784,\n  \"leader\": 14806,\n  \"leader</w>\": 3236,\n  \"leaderboard</w>\": 34519,\n  \"leaders</w>\": 3546,\n  \"leadership\": 36876,\n  \"leadership</w>\": 3652,\n  \"leading</w>\": 3833,\n  \"leads</w>\": 5335,\n  \"leaf\": 9377,\n  \"leaf</w>\": 7232,\n  \"leaflet</w>\": 38289,\n  \"leaflets</w>\": 39014,\n  \"leafs</w>\": 16688,\n  \"leafy</w>\": 42616,\n  \"leagu\": 13317,\n  \"league\": 16635,\n  \"league</w>\": 2313,\n  \"leagueof\": 26022,\n  \"leagueoflegends</w>\": 31737,\n  \"leagues</w>\": 19888,\n  \"leah\": 24350,\n  \"leah</w>\": 19308,\n  \"leak\": 42900,\n  \"leak</w>\": 15489,\n  \"leaked</w>\": 14353,\n  \"leaking</w>\": 34097,\n  \"leaks</w>\": 15657,\n  \"leam\": 39606,\n  \"lean\": 12447,\n  \"lean</w>\": 8208,\n  \"leaning</w>\": 24411,\n  \"leanne</w>\": 41448,\n  \"leans</w>\": 9357,\n  \"leap\": 29129,\n  \"leap</w>\": 15392,\n  \"leaps</w>\": 48080,\n  \"lear\": 1146,\n  \"lear</w>\": 27663,\n  \"learn\": 16959,\n  \"learn</w>\": 1768,\n  \"learned</w>\": 6048,\n  \"learnenglish</w>\": 49040,\n  \"learner</w>\": 33547,\n  \"learners</w>\": 19572,\n  \"learning\": 22632,\n  \"learning</w>\": 2378,\n  \"learns</w>\": 17569,\n  \"learnt</w>\": 18959,\n  \"leary</w>\": 36051,\n  \"lease\": 49041,\n  \"lease</w>\": 14394,\n  \"leased</w>\": 48352,\n  \"leash</w>\": 36192,\n  \"leasing</w>\": 29160,\n  \"least</w>\": 3651,\n  \"leather\": 21417,\n  \"leather</w>\": 5862,\n  \"leau</w>\": 26498,\n  \"leav\": 3198,\n  \"leave\": 37512,\n  \"leave</w>\": 3258,\n  \"leaves</w>\": 5579,\n  \"leaving</w>\": 5216,\n  \"leban\": 9360,\n  \"lebanese</w>\": 23819,\n  \"lebanon</w>\": 11695,\n  \"leblanc</w>\": 46381,\n  \"lebo\": 44184,\n  \"lebron</w>\": 11971,\n  \"lebu\": 47030,\n  \"lec\": 944,\n  \"lec</w>\": 35374,\n  \"leche</w>\": 46197,\n  \"lect</w>\": 45392,\n  \"lection</w>\": 18252,\n  \"lections</w>\": 30995,\n  \"lecture</w>\": 6617,\n  \"lecturer</w>\": 23795,\n  \"lectures</w>\": 21118,\n  \"led\": 8767,\n  \"led</w>\": 912,\n  \"ledge\": 23647,\n  \"ledge</w>\": 4815,\n  \"ledger</w>\": 26817,\n  \"leds</w>\": 36763,\n  \"lee\": 6224,\n  \"lee</w>\": 2592,\n  \"leed\": 16483,\n  \"leed</w>\": 40206,\n  \"leeds\": 38900,\n  \"leeds</w>\": 7420,\n  \"leek</w>\": 34585,\n  \"leeminho</w>\": 37831,\n  \"leen\": 35311,\n  \"leen</w>\": 15940,\n  \"leep\": 48875,\n  \"leep</w>\": 10191,\n  \"lees\": 29324,\n  \"lees</w>\": 34056,\n  \"lef\": 9152,\n  \"left\": 33949,\n  \"left</w>\": 1823,\n  \"leftist</w>\": 35143,\n  \"lefto\": 17437,\n  \"leftover</w>\": 26414,\n  \"leftovers</w>\": 28481,\n  \"lefty</w>\": 33935,\n  \"leg\": 1211,\n  \"leg</w>\": 4924,\n  \"lega</w>\": 38674,\n  \"legacy\": 44108,\n  \"legacy</w>\": 6447,\n  \"legal\": 17743,\n  \"legal</w>\": 3998,\n  \"legalization</w>\": 40584,\n  \"legalize</w>\": 42921,\n  \"legally</w>\": 14152,\n  \"legate</w>\": 46009,\n  \"lege</w>\": 8065,\n  \"legen\": 6105,\n  \"legend\": 5480,\n  \"legend</w>\": 3539,\n  \"legendary</w>\": 6053,\n  \"legendof\": 47915,\n  \"legends</w>\": 6396,\n  \"leges</w>\": 15356,\n  \"legg\": 18474,\n  \"legg</w>\": 32511,\n  \"legged</w>\": 25830,\n  \"leggings</w>\": 22895,\n  \"leggo</w>\": 43441,\n  \"legi\": 11183,\n  \"legion\": 35503,\n  \"legion</w>\": 14525,\n  \"legis\": 7200,\n  \"legislat\": 16486,\n  \"legislation</w>\": 14143,\n  \"legislative</w>\": 16755,\n  \"legislators</w>\": 31572,\n  \"legislature</w>\": 22309,\n  \"legit</w>\": 12563,\n  \"legitim\": 17656,\n  \"legitimate</w>\": 24491,\n  \"lego\": 28117,\n  \"lego</w>\": 7849,\n  \"legos</w>\": 45359,\n  \"legs</w>\": 7072,\n  \"leh\": 19105,\n  \"leh</w>\": 29298,\n  \"lehead</w>\": 28090,\n  \"lehigh</w>\": 34527,\n  \"lehman</w>\": 46094,\n  \"lei\": 15828,\n  \"lei</w>\": 21830,\n  \"leia</w>\": 32723,\n  \"leic\": 35073,\n  \"leica</w>\": 30206,\n  \"leice\": 10026,\n  \"leicester\": 28795,\n  \"leicester</w>\": 11510,\n  \"leicestershire</w>\": 45358,\n  \"leigh\": 14849,\n  \"leigh</w>\": 9292,\n  \"leighton</w>\": 30782,\n  \"leila</w>\": 41342,\n  \"lein\": 20026,\n  \"lein</w>\": 28551,\n  \"leinster</w>\": 32242,\n  \"leip\": 36401,\n  \"leipzig</w>\": 41860,\n  \"leis\": 13133,\n  \"leisure</w>\": 15849,\n  \"leit\": 35446,\n  \"leith</w>\": 34141,\n  \"lek\": 26626,\n  \"lek</w>\": 36535,\n  \"lel</w>\": 46623,\n  \"lele</w>\": 26075,\n  \"lem\": 10213,\n  \"lem</w>\": 8428,\n  \"leman</w>\": 24478,\n  \"lemans</w>\": 26694,\n  \"lement</w>\": 9693,\n  \"lements</w>\": 15833,\n  \"lemme</w>\": 23318,\n  \"lemon\": 12272,\n  \"lemon</w>\": 7184,\n  \"lemonade</w>\": 18884,\n  \"lemons</w>\": 29576,\n  \"lemore</w>\": 41147,\n  \"len\": 3687,\n  \"len</w>\": 2159,\n  \"lena</w>\": 22038,\n  \"lend\": 45397,\n  \"lend</w>\": 24987,\n  \"lender</w>\": 44734,\n  \"lenders</w>\": 42443,\n  \"lending</w>\": 20209,\n  \"lene</w>\": 17628,\n  \"leness</w>\": 36551,\n  \"leng\": 7861,\n  \"length</w>\": 10130,\n  \"lengths</w>\": 31858,\n  \"lengthy</w>\": 32624,\n  \"lenin</w>\": 41760,\n  \"lennon</w>\": 18360,\n  \"lennox</w>\": 45748,\n  \"lenny\": 48448,\n  \"lenny</w>\": 30124,\n  \"leno</w>\": 45357,\n  \"lenovo</w>\": 25886,\n  \"lens</w>\": 8666,\n  \"lenses</w>\": 21264,\n  \"lent\": 20943,\n  \"lent</w>\": 22605,\n  \"lentil</w>\": 41511,\n  \"lentils</w>\": 44269,\n  \"leo\": 24008,\n  \"leo</w>\": 8312,\n  \"leon\": 6581,\n  \"leon</w>\": 9763,\n  \"leonard\": 43849,\n  \"leonard</w>\": 13142,\n  \"leonardo</w>\": 20282,\n  \"leone</w>\": 22864,\n  \"leop\": 11234,\n  \"leopard</w>\": 15931,\n  \"leopards</w>\": 40996,\n  \"leopold</w>\": 45501,\n  \"lep\": 48884,\n  \"leppard</w>\": 41656,\n  \"lepre\": 45641,\n  \"ler\": 5587,\n  \"ler</w>\": 1803,\n  \"lero\": 15067,\n  \"lerosis</w>\": 35455,\n  \"leroy</w>\": 32441,\n  \"lers</w>\": 6247,\n  \"lery</w>\": 38184,\n  \"les\": 4339,\n  \"les</w>\": 840,\n  \"lesbian</w>\": 17419,\n  \"lesbians</w>\": 43182,\n  \"lesh</w>\": 32282,\n  \"lesley</w>\": 25506,\n  \"lesli\": 13649,\n  \"leslie</w>\": 16244,\n  \"lesn\": 39568,\n  \"lesnar</w>\": 42223,\n  \"less\": 3242,\n  \"less</w>\": 1285,\n  \"lesser</w>\": 20369,\n  \"lessly</w>\": 13103,\n  \"lessness</w>\": 24847,\n  \"lesson</w>\": 7714,\n  \"lessons</w>\": 7199,\n  \"lest\": 24372,\n  \"lest</w>\": 6794,\n  \"lester\": 23157,\n  \"lester</w>\": 24023,\n  \"lestwe\": 29726,\n  \"lestweforget</w>\": 30273,\n  \"let\": 1898,\n  \"let</w>\": 1094,\n  \"leta</w>\": 34319,\n  \"lete</w>\": 34078,\n  \"letes</w>\": 6815,\n  \"leth\": 30022,\n  \"leth</w>\": 42462,\n  \"lethal</w>\": 21905,\n  \"lethbridge</w>\": 48390,\n  \"leti</w>\": 34176,\n  \"letics</w>\": 14504,\n  \"letit\": 46423,\n  \"leto</w>\": 32203,\n  \"leton\": 37674,\n  \"leton</w>\": 7462,\n  \"lets\": 10448,\n  \"lets</w>\": 3243,\n  \"letsgo\": 16967,\n  \"letsgo</w>\": 29789,\n  \"letstalk</w>\": 35591,\n  \"lett\": 22428,\n  \"lett</w>\": 9778,\n  \"lette\": 41798,\n  \"lette</w>\": 10301,\n  \"letter\": 15567,\n  \"letter</w>\": 4861,\n  \"lettering</w>\": 26382,\n  \"letterman</w>\": 38447,\n  \"letters</w>\": 9181,\n  \"letting</w>\": 9510,\n  \"letto</w>\": 35449,\n  \"lettu\": 17933,\n  \"lettuce</w>\": 18573,\n  \"leu\": 15691,\n  \"leuke\": 31031,\n  \"leukemia</w>\": 32097,\n  \"leum</w>\": 21571,\n  \"leur</w>\": 45806,\n  \"lev\": 17022,\n  \"lev</w>\": 29950,\n  \"levan\": 42543,\n  \"leve\": 36271,\n  \"level\": 21682,\n  \"level</w>\": 2931,\n  \"leveled</w>\": 48453,\n  \"levels</w>\": 6295,\n  \"leven\": 44792,\n  \"leven</w>\": 34729,\n  \"lever\": 20178,\n  \"lever</w>\": 23094,\n  \"leverage</w>\": 24030,\n  \"leveraging</w>\": 37948,\n  \"levi\": 25630,\n  \"levi</w>\": 19113,\n  \"leviathan</w>\": 41736,\n  \"levin</w>\": 36949,\n  \"levine</w>\": 26594,\n  \"levit\": 22715,\n  \"levy</w>\": 17147,\n  \"lew\": 5063,\n  \"lew</w>\": 25329,\n  \"lewan\": 48349,\n  \"lewd</w>\": 45241,\n  \"lewes</w>\": 40431,\n  \"lewi\": 19589,\n  \"lewis\": 22043,\n  \"lewis</w>\": 6020,\n  \"lewisham\": 37385,\n  \"lewisham</w>\": 47633,\n  \"lewishamilton</w>\": 42960,\n  \"lewood</w>\": 37951,\n  \"lex\": 6586,\n  \"lex</w>\": 9658,\n  \"lexa</w>\": 48259,\n  \"lexi\": 44231,\n  \"lexi</w>\": 24679,\n  \"lexington</w>\": 22308,\n  \"lexus</w>\": 20694,\n  \"ley\": 2565,\n  \"ley</w>\": 1066,\n  \"leye</w>\": 37061,\n  \"leys\": 45609,\n  \"leys</w>\": 14834,\n  \"leyton</w>\": 46573,\n  \"lez</w>\": 26442,\n  \"lf\": 33960,\n  \"lf</w>\": 22078,\n  \"lfc\": 37826,\n  \"lfc</w>\": 8267,\n  \"lfw</w>\": 28514,\n  \"lg\": 4546,\n  \"lg</w>\": 11368,\n  \"lga</w>\": 39348,\n  \"lgb\": 25401,\n  \"lgbt\": 11743,\n  \"lgbt</w>\": 9592,\n  \"lgbti</w>\": 42730,\n  \"lgbtq\": 47625,\n  \"lgbtq</w>\": 14939,\n  \"lgm</w>\": 39389,\n  \"lh\": 27794,\n  \"lh</w>\": 31159,\n  \"lhp</w>\": 45092,\n  \"lhs</w>\": 33170,\n  \"li\": 554,\n  \"li</w>\": 4250,\n  \"lia\": 26118,\n  \"lia</w>\": 6964,\n  \"liability</w>\": 29139,\n  \"liaison</w>\": 39294,\n  \"liam\": 5258,\n  \"liam</w>\": 7167,\n  \"lian</w>\": 18058,\n  \"liance</w>\": 40864,\n  \"liar</w>\": 16334,\n  \"liars</w>\": 23863,\n  \"lias</w>\": 46021,\n  \"lib\": 10249,\n  \"lib</w>\": 13345,\n  \"libby</w>\": 36832,\n  \"libdems</w>\": 40869,\n  \"liber\": 3425,\n  \"liberal\": 48032,\n  \"liberal</w>\": 9985,\n  \"liberalism</w>\": 40018,\n  \"liberals</w>\": 15981,\n  \"liberated</w>\": 38690,\n  \"liberation</w>\": 19507,\n  \"liberia</w>\": 32208,\n  \"libertarian</w>\": 35067,\n  \"liberties</w>\": 48623,\n  \"liberty\": 23397,\n  \"liberty</w>\": 8480,\n  \"libr\": 2856,\n  \"libra</w>\": 43038,\n  \"librarian</w>\": 25148,\n  \"librarians</w>\": 37806,\n  \"libraries</w>\": 14277,\n  \"library\": 25713,\n  \"library</w>\": 3519,\n  \"libre\": 49210,\n  \"libre</w>\": 31681,\n  \"libs</w>\": 26401,\n  \"liby\": 36390,\n  \"libya</w>\": 16417,\n  \"libyan</w>\": 42319,\n  \"lic\": 2508,\n  \"lic</w>\": 3376,\n  \"lice</w>\": 45691,\n  \"licen\": 6706,\n  \"licence</w>\": 20550,\n  \"license</w>\": 10337,\n  \"licensed</w>\": 18752,\n  \"licenses</w>\": 36414,\n  \"licensing</w>\": 24219,\n  \"lich\": 23979,\n  \"lich</w>\": 25875,\n  \"lick\": 29197,\n  \"lick</w>\": 17541,\n  \"licking</w>\": 33013,\n  \"licks</w>\": 42117,\n  \"lics</w>\": 44552,\n  \"lid\": 39369,\n  \"lid</w>\": 17678,\n  \"lidge</w>\": 45558,\n  \"lido</w>\": 35683,\n  \"lids</w>\": 41609,\n  \"lie\": 6570,\n  \"lie</w>\": 2538,\n  \"lieb</w>\": 45387,\n  \"liebe</w>\": 37749,\n  \"lied</w>\": 6486,\n  \"lief</w>\": 38428,\n  \"lien</w>\": 45716,\n  \"lier</w>\": 3626,\n  \"liers</w>\": 19303,\n  \"lies\": 37236,\n  \"lies</w>\": 3205,\n  \"liest</w>\": 14020,\n  \"liet</w>\": 41107,\n  \"lieu\": 20401,\n  \"lieu</w>\": 35313,\n  \"lieutenant</w>\": 22538,\n  \"lif\": 16456,\n  \"life\": 2666,\n  \"life</w>\": 970,\n  \"lifeat\": 27801,\n  \"lifeboat</w>\": 37404,\n  \"lifecycle</w>\": 49171,\n  \"lifein\": 48447,\n  \"lifeis\": 24824,\n  \"lifeisgood</w>\": 46433,\n  \"lifel\": 15025,\n  \"lifeline</w>\": 38438,\n  \"lifelong</w>\": 21358,\n  \"lifeof\": 36061,\n  \"lifesaving</w>\": 48016,\n  \"lifespan</w>\": 49257,\n  \"lifestyle\": 46512,\n  \"lifestyle</w>\": 7037,\n  \"lifestyles</w>\": 48521,\n  \"lifetime\": 48737,\n  \"lifetime</w>\": 9107,\n  \"liff</w>\": 34404,\n  \"liffe</w>\": 38942,\n  \"lift\": 33146,\n  \"lift</w>\": 6779,\n  \"lifted</w>\": 16783,\n  \"lifter</w>\": 38555,\n  \"lifting</w>\": 10857,\n  \"lifts</w>\": 18291,\n  \"lig\": 19915,\n  \"lig</w>\": 38493,\n  \"liga</w>\": 16802,\n  \"ligam\": 31077,\n  \"ligament</w>\": 48705,\n  \"ligan</w>\": 27962,\n  \"ligans</w>\": 42133,\n  \"ligh\": 7510,\n  \"light\": 3885,\n  \"light</w>\": 1395,\n  \"lighted</w>\": 18404,\n  \"lighten</w>\": 32717,\n  \"lightening</w>\": 28170,\n  \"lighter</w>\": 14102,\n  \"lighthouse</w>\": 13717,\n  \"lighting</w>\": 5799,\n  \"lightly</w>\": 26878,\n  \"lightning</w>\": 7756,\n  \"lightroom</w>\": 41454,\n  \"lights</w>\": 3073,\n  \"lightweight</w>\": 16278,\n  \"ligu\": 42920,\n  \"ligue</w>\": 29196,\n  \"lik\": 4831,\n  \"lik</w>\": 18495,\n  \"like\": 9175,\n  \"like</w>\": 789,\n  \"liked</w>\": 7112,\n  \"likefor\": 48444,\n  \"likeli\": 40666,\n  \"likelihood</w>\": 48158,\n  \"likely</w>\": 5256,\n  \"liken\": 36084,\n  \"likes</w>\": 4724,\n  \"liking</w>\": 16810,\n  \"lil\": 6012,\n  \"lil</w>\": 4461,\n  \"lilac</w>\": 33647,\n  \"lili\": 26686,\n  \"lili</w>\": 48411,\n  \"lilies</w>\": 38110,\n  \"lillard</w>\": 47016,\n  \"lille</w>\": 38705,\n  \"lilli\": 40920,\n  \"lillian</w>\": 41563,\n  \"lilly\": 47825,\n  \"lilly</w>\": 21815,\n  \"lily\": 23803,\n  \"lily</w>\": 10647,\n  \"lim\": 2377,\n  \"lim</w>\": 17204,\n  \"lima</w>\": 17589,\n  \"limb\": 27061,\n  \"limb</w>\": 32363,\n  \"limbo</w>\": 46179,\n  \"limbs</w>\": 34886,\n  \"lime\": 17385,\n  \"lime</w>\": 11193,\n  \"limel\": 48658,\n  \"limer\": 16915,\n  \"limerick</w>\": 19501,\n  \"limestone</w>\": 27272,\n  \"limit\": 18933,\n  \"limit</w>\": 9973,\n  \"limitations</w>\": 32730,\n  \"limited\": 49229,\n  \"limited</w>\": 3472,\n  \"limiting</w>\": 35812,\n  \"limitless</w>\": 35833,\n  \"limits</w>\": 11966,\n  \"limo</w>\": 33166,\n  \"limous\": 47287,\n  \"limpopo</w>\": 47175,\n  \"lin\": 1254,\n  \"lin</w>\": 2424,\n  \"lina</w>\": 26110,\n  \"lincol\": 6239,\n  \"lincoln\": 16957,\n  \"lincoln</w>\": 7454,\n  \"lincolnshire</w>\": 29014,\n  \"lind\": 6492,\n  \"linda\": 45410,\n  \"linda</w>\": 10760,\n  \"linden\": 44076,\n  \"linden</w>\": 34832,\n  \"lindo</w>\": 38467,\n  \"lindsay\": 29846,\n  \"lindsay</w>\": 16858,\n  \"lindsey\": 29475,\n  \"lindsey</w>\": 18128,\n  \"line\": 3674,\n  \"line</w>\": 1148,\n  \"linear</w>\": 19816,\n  \"linebacker</w>\": 29848,\n  \"lined</w>\": 11842,\n  \"lineman</w>\": 31501,\n  \"linen</w>\": 20032,\n  \"liner</w>\": 11618,\n  \"liners</w>\": 24463,\n  \"lines</w>\": 3418,\n  \"liness</w>\": 28633,\n  \"lineup</w>\": 7316,\n  \"lineups</w>\": 33589,\n  \"ling\": 4851,\n  \"ling</w>\": 1358,\n  \"linger</w>\": 29593,\n  \"lingerie</w>\": 18473,\n  \"lingering</w>\": 46494,\n  \"lings</w>\": 11390,\n  \"lington\": 27673,\n  \"lington</w>\": 9002,\n  \"lingu\": 34449,\n  \"lingui\": 29942,\n  \"linguistic</w>\": 46847,\n  \"linguistics</w>\": 48651,\n  \"lining</w>\": 11589,\n  \"link\": 18433,\n  \"link</w>\": 2468,\n  \"linke\": 15088,\n  \"linked</w>\": 11059,\n  \"linkedin</w>\": 16302,\n  \"linkin\": 40287,\n  \"linkin</w>\": 49291,\n  \"linking</w>\": 23296,\n  \"links</w>\": 8113,\n  \"linn</w>\": 37431,\n  \"lino\": 41189,\n  \"lino</w>\": 34995,\n  \"lins</w>\": 6567,\n  \"linson</w>\": 15401,\n  \"linton</w>\": 36479,\n  \"linus</w>\": 49303,\n  \"linux</w>\": 14061,\n  \"lio</w>\": 19395,\n  \"lion\": 8872,\n  \"lion</w>\": 5567,\n  \"lionel</w>\": 19441,\n  \"lions</w>\": 7093,\n  \"lip\": 8630,\n  \"lip</w>\": 8546,\n  \"lipo\": 38795,\n  \"lipp\": 38074,\n  \"lips</w>\": 8847,\n  \"lipse</w>\": 10351,\n  \"lipstick</w>\": 15618,\n  \"liqu\": 6310,\n  \"lique\": 32680,\n  \"liqueur</w>\": 43612,\n  \"liqui\": 33817,\n  \"liquid\": 18366,\n  \"liquid</w>\": 10158,\n  \"liquidity</w>\": 42812,\n  \"liquor</w>\": 17828,\n  \"lis\": 7297,\n  \"lis</w>\": 12749,\n  \"lisa\": 25236,\n  \"lisa</w>\": 7424,\n  \"lisam\": 43072,\n  \"lisboa</w>\": 40052,\n  \"lisbon</w>\": 17708,\n  \"lish\": 12658,\n  \"lish</w>\": 2354,\n  \"lished</w>\": 22620,\n  \"lisle</w>\": 21529,\n  \"lism</w>\": 34390,\n  \"liss\": 45489,\n  \"liss</w>\": 35433,\n  \"lisse</w>\": 49309,\n  \"list\": 1734,\n  \"list</w>\": 1998,\n  \"lista</w>\": 37812,\n  \"listed</w>\": 6457,\n  \"listen\": 17454,\n  \"listen</w>\": 2672,\n  \"listened</w>\": 15347,\n  \"listener</w>\": 34819,\n  \"listeners</w>\": 26901,\n  \"listening</w>\": 3656,\n  \"listens</w>\": 25912,\n  \"lister</w>\": 45109,\n  \"listing</w>\": 8145,\n  \"listings</w>\": 21987,\n  \"liston</w>\": 48041,\n  \"lists</w>\": 12281,\n  \"lit\": 2213,\n  \"lit</w>\": 4350,\n  \"lita</w>\": 30100,\n  \"lite\": 29273,\n  \"lite</w>\": 13694,\n  \"litecoin</w>\": 39063,\n  \"liter\": 3085,\n  \"liter</w>\": 34904,\n  \"literacy</w>\": 12841,\n  \"literal</w>\": 24269,\n  \"literally</w>\": 4719,\n  \"literary</w>\": 13586,\n  \"literature</w>\": 11072,\n  \"litfest</w>\": 40369,\n  \"lith\": 37005,\n  \"lithium</w>\": 22794,\n  \"litho\": 31088,\n  \"lithograph</w>\": 49022,\n  \"lithu\": 21045,\n  \"lithuania</w>\": 27068,\n  \"liti\": 24292,\n  \"litigation</w>\": 31769,\n  \"lito</w>\": 47381,\n  \"litre</w>\": 25786,\n  \"litres</w>\": 39919,\n  \"litt\": 1216,\n  \"litt</w>\": 47583,\n  \"litter\": 45431,\n  \"litter</w>\": 17118,\n  \"litters</w>\": 45300,\n  \"little\": 7024,\n  \"little</w>\": 1274,\n  \"littlemix</w>\": 29731,\n  \"littlest</w>\": 48969,\n  \"litur\": 36830,\n  \"litz</w>\": 30357,\n  \"liu</w>\": 20466,\n  \"liv\": 13895,\n  \"liv</w>\": 19901,\n  \"livan</w>\": 12785,\n  \"live\": 3215,\n  \"live</w>\": 1064,\n  \"lived</w>\": 8867,\n  \"livel\": 17973,\n  \"liveli\": 26566,\n  \"livelihood</w>\": 46497,\n  \"livelihoods</w>\": 47716,\n  \"lively</w>\": 19663,\n  \"liveme</w>\": 35396,\n  \"livemusic</w>\": 15688,\n  \"liven\": 41057,\n  \"liveon\": 22815,\n  \"livepd\": 38742,\n  \"livepd</w>\": 31899,\n  \"liver\": 4755,\n  \"liver</w>\": 12639,\n  \"liverpool\": 29778,\n  \"liverpool</w>\": 5366,\n  \"livery</w>\": 23248,\n  \"lives</w>\": 3247,\n  \"livesmatter</w>\": 20348,\n  \"livestock</w>\": 22079,\n  \"livestream</w>\": 16844,\n  \"livetweet</w>\": 38546,\n  \"livin</w>\": 28061,\n  \"living\": 10965,\n  \"living</w>\": 2815,\n  \"livingston</w>\": 30551,\n  \"lix</w>\": 45068,\n  \"liz\": 8632,\n  \"liz</w>\": 12242,\n  \"liza</w>\": 28787,\n  \"lizard</w>\": 17221,\n  \"lizards</w>\": 41991,\n  \"lizasober\": 44487,\n  \"lizasoberano</w>\": 45076,\n  \"lizz\": 34430,\n  \"lizzie</w>\": 29530,\n  \"lizzy</w>\": 32306,\n  \"lj\": 34211,\n  \"lj</w>\": 32273,\n  \"lju\": 44562,\n  \"lk\": 39110,\n  \"lk</w>\": 26596,\n  \"lka</w>\": 21881,\n  \"ll\": 1657,\n  \"ll</w>\": 865,\n  \"lla</w>\": 15419,\n  \"llama</w>\": 36679,\n  \"llan\": 17281,\n  \"llan</w>\": 38728,\n  \"lland\": 31150,\n  \"llc</w>\": 17161,\n  \"lle\": 26550,\n  \"lle</w>\": 29732,\n  \"llen\": 41197,\n  \"ller</w>\": 7722,\n  \"llers</w>\": 26426,\n  \"lli\": 47015,\n  \"lli</w>\": 13368,\n  \"llis</w>\": 25518,\n  \"lll</w>\": 27177,\n  \"llll\": 34874,\n  \"llll</w>\": 43485,\n  \"llo</w>\": 19293,\n  \"lloy\": 10092,\n  \"lloyd\": 33339,\n  \"lloyd</w>\": 12400,\n  \"llp</w>\": 28042,\n  \"lls</w>\": 40535,\n  \"lly</w>\": 26379,\n  \"lm\": 6981,\n  \"lm</w>\": 15282,\n  \"lma\": 4493,\n  \"lmao</w>\": 5121,\n  \"lmaoo</w>\": 32623,\n  \"lmaooo</w>\": 33362,\n  \"lmaoooo</w>\": 45232,\n  \"lmfa\": 8928,\n  \"lmfao</w>\": 11068,\n  \"lmfaooo</w>\": 47658,\n  \"lmp</w>\": 43575,\n  \"lms</w>\": 30381,\n  \"ln\": 31644,\n  \"ln</w>\": 18654,\n  \"lng</w>\": 22339,\n  \"lnp</w>\": 39679,\n  \"lo\": 549,\n  \"lo</w>\": 2982,\n  \"loa</w>\": 39678,\n  \"load\": 4515,\n  \"load</w>\": 2834,\n  \"loaded</w>\": 6756,\n  \"loader</w>\": 28492,\n  \"loading</w>\": 9975,\n  \"loads</w>\": 8691,\n  \"loaf\": 26467,\n  \"loaf</w>\": 18273,\n  \"loan\": 28431,\n  \"loan</w>\": 8176,\n  \"loans</w>\": 14206,\n  \"lob\": 11197,\n  \"lob</w>\": 46606,\n  \"lobal</w>\": 34574,\n  \"lobb\": 27698,\n  \"lobby</w>\": 12449,\n  \"lobbying</w>\": 36047,\n  \"lobe</w>\": 46325,\n  \"lobes</w>\": 24148,\n  \"lobo</w>\": 39323,\n  \"lobos</w>\": 36586,\n  \"lobster</w>\": 13793,\n  \"loc\": 1378,\n  \"loc</w>\": 25826,\n  \"local\": 9202,\n  \"local</w>\": 2029,\n  \"localized</w>\": 49399,\n  \"locally</w>\": 15603,\n  \"locals</w>\": 15041,\n  \"locate</w>\": 20490,\n  \"located</w>\": 5677,\n  \"location</w>\": 4372,\n  \"locations</w>\": 9580,\n  \"loch\": 20188,\n  \"loch</w>\": 14101,\n  \"lock\": 7201,\n  \"lock</w>\": 4381,\n  \"lockdown</w>\": 35636,\n  \"locke</w>\": 29698,\n  \"locked</w>\": 8371,\n  \"locker</w>\": 14053,\n  \"lockhart</w>\": 48642,\n  \"lockheed</w>\": 36637,\n  \"locking</w>\": 19978,\n  \"locks</w>\": 13212,\n  \"lockscreen</w>\": 42439,\n  \"loco</w>\": 25555,\n  \"locom\": 22798,\n  \"locomo\": 46147,\n  \"locomotive</w>\": 30439,\n  \"locu\": 33635,\n  \"locust</w>\": 46237,\n  \"lod\": 45650,\n  \"lodge</w>\": 10504,\n  \"loe\": 30113,\n  \"loe</w>\": 25484,\n  \"loeb</w>\": 49334,\n  \"lof\": 15011,\n  \"loff</w>\": 31008,\n  \"loft\": 35707,\n  \"loft</w>\": 20049,\n  \"loftus</w>\": 46689,\n  \"log\": 3239,\n  \"log</w>\": 7383,\n  \"logan\": 20655,\n  \"logan</w>\": 10569,\n  \"logans</w>\": 40752,\n  \"logg</w>\": 43002,\n  \"logged</w>\": 31457,\n  \"logger</w>\": 39089,\n  \"logging</w>\": 24444,\n  \"logi\": 3177,\n  \"logia</w>\": 48031,\n  \"logic</w>\": 10670,\n  \"logical</w>\": 4791,\n  \"logically</w>\": 24782,\n  \"logie</w>\": 33445,\n  \"logies</w>\": 7378,\n  \"login</w>\": 31121,\n  \"logist</w>\": 7407,\n  \"logistics</w>\": 14755,\n  \"logists</w>\": 12233,\n  \"logne</w>\": 19911,\n  \"logo\": 31480,\n  \"logo</w>\": 5750,\n  \"logos</w>\": 24879,\n  \"logs</w>\": 22745,\n  \"logue</w>\": 27785,\n  \"logy\": 22721,\n  \"logy</w>\": 1659,\n  \"loh\": 49129,\n  \"loh</w>\": 37983,\n  \"loi</w>\": 35128,\n  \"loid</w>\": 31408,\n  \"loin</w>\": 21760,\n  \"loire</w>\": 46040,\n  \"lois</w>\": 27040,\n  \"lok\": 19908,\n  \"lok</w>\": 23575,\n  \"loki</w>\": 24435,\n  \"lol\": 10721,\n  \"lol</w>\": 1824,\n  \"lola</w>\": 19065,\n  \"lolita</w>\": 42615,\n  \"lolla\": 45483,\n  \"lolli\": 27906,\n  \"lollipop</w>\": 34605,\n  \"lolly</w>\": 48264,\n  \"lolo\": 16895,\n  \"lolo</w>\": 37481,\n  \"lolol</w>\": 25280,\n  \"lololol</w>\": 34738,\n  \"lolz</w>\": 35260,\n  \"lom\": 9279,\n  \"loma</w>\": 42889,\n  \"lombar\": 25493,\n  \"lombard</w>\": 46461,\n  \"lombardi</w>\": 44346,\n  \"lomond</w>\": 48941,\n  \"lon\": 1235,\n  \"lon</w>\": 6507,\n  \"london\": 6835,\n  \"london</w>\": 1789,\n  \"londonmarathon</w>\": 35018,\n  \"lone\": 22220,\n  \"lone</w>\": 13576,\n  \"lonel\": 28872,\n  \"loneliness</w>\": 30310,\n  \"lonely\": 34509,\n  \"lonely</w>\": 12368,\n  \"lonelyplanet</w>\": 44984,\n  \"long\": 4792,\n  \"long</w>\": 1538,\n  \"longe\": 25793,\n  \"longer</w>\": 5349,\n  \"longest</w>\": 10731,\n  \"longevity</w>\": 35354,\n  \"longh\": 20286,\n  \"longhorn</w>\": 41047,\n  \"longhorns</w>\": 38295,\n  \"longing</w>\": 38482,\n  \"longlive\": 47840,\n  \"longs</w>\": 43618,\n  \"longtime</w>\": 19685,\n  \"loo\": 731,\n  \"loo</w>\": 11804,\n  \"look\": 8874,\n  \"look</w>\": 1012,\n  \"lookalike</w>\": 38307,\n  \"lookbook</w>\": 39184,\n  \"looked</w>\": 4913,\n  \"lookin</w>\": 11254,\n  \"looking\": 36898,\n  \"looking</w>\": 1312,\n  \"lookout</w>\": 18330,\n  \"looks</w>\": 1606,\n  \"lool</w>\": 33125,\n  \"loom\": 37440,\n  \"loom</w>\": 17199,\n  \"looming</w>\": 35384,\n  \"looms</w>\": 30550,\n  \"loon</w>\": 28222,\n  \"loona</w>\": 48137,\n  \"looney</w>\": 45315,\n  \"looo\": 20902,\n  \"loool</w>\": 36016,\n  \"looool</w>\": 47038,\n  \"looooo\": 31484,\n  \"loop\": 19606,\n  \"loop</w>\": 10408,\n  \"loops</w>\": 21625,\n  \"loos</w>\": 45723,\n  \"loose\": 43815,\n  \"loose</w>\": 9786,\n  \"loot</w>\": 21518,\n  \"lop\": 36734,\n  \"lop</w>\": 17066,\n  \"lopes</w>\": 49269,\n  \"lopez</w>\": 12982,\n  \"lor\": 2179,\n  \"lor</w>\": 11335,\n  \"lord\": 18896,\n  \"lord</w>\": 3486,\n  \"lorde</w>\": 35483,\n  \"lords</w>\": 14969,\n  \"lore\": 12880,\n  \"lore</w>\": 27218,\n  \"loren\": 13602,\n  \"loren</w>\": 33398,\n  \"lorenzo</w>\": 21342,\n  \"lores</w>\": 34510,\n  \"loretta</w>\": 40863,\n  \"lori\": 20164,\n  \"lori</w>\": 23095,\n  \"lorna</w>\": 46316,\n  \"lorraine</w>\": 27602,\n  \"lorry</w>\": 31354,\n  \"los\": 32217,\n  \"los</w>\": 3087,\n  \"losange\": 14037,\n  \"losangeles</w>\": 14638,\n  \"lose\": 43318,\n  \"lose</w>\": 5354,\n  \"loser</w>\": 18168,\n  \"losers</w>\": 23201,\n  \"loses</w>\": 14263,\n  \"losing</w>\": 7918,\n  \"loss\": 34761,\n  \"loss</w>\": 4327,\n  \"losses</w>\": 16909,\n  \"lost\": 14258,\n  \"lost</w>\": 2624,\n  \"lostdog</w>\": 48482,\n  \"lot\": 5132,\n  \"lot</w>\": 1954,\n  \"loth</w>\": 43625,\n  \"lothian</w>\": 31360,\n  \"lothing</w>\": 42058,\n  \"lotion</w>\": 25260,\n  \"lotr</w>\": 34165,\n  \"lots</w>\": 2958,\n  \"lott</w>\": 42854,\n  \"lotta</w>\": 29125,\n  \"lotte\": 16535,\n  \"lotte</w>\": 7274,\n  \"lottery</w>\": 16975,\n  \"lottie</w>\": 48517,\n  \"lotto</w>\": 28265,\n  \"lotus</w>\": 13824,\n  \"lou\": 2207,\n  \"lou</w>\": 9745,\n  \"loubout\": 38369,\n  \"loud\": 22884,\n  \"loud</w>\": 7464,\n  \"louder</w>\": 25904,\n  \"loudest</w>\": 49214,\n  \"loudly</w>\": 39256,\n  \"lough\": 21927,\n  \"lough</w>\": 28045,\n  \"loughborough</w>\": 49153,\n  \"loui\": 42173,\n  \"louie</w>\": 25790,\n  \"louis\": 8916,\n  \"louis</w>\": 4459,\n  \"louisa</w>\": 40011,\n  \"louise\": 32275,\n  \"louise</w>\": 13076,\n  \"louisi\": 12187,\n  \"louisiana</w>\": 12946,\n  \"louisville</w>\": 13860,\n  \"louisvuitton</w>\": 44911,\n  \"loun\": 6466,\n  \"lounge</w>\": 7141,\n  \"lounging</w>\": 45430,\n  \"lour\": 29383,\n  \"lourdes</w>\": 45071,\n  \"louvre</w>\": 36995,\n  \"lov\": 8923,\n  \"lov</w>\": 21229,\n  \"lova</w>\": 37394,\n  \"lovable</w>\": 38565,\n  \"lovato</w>\": 18960,\n  \"love\": 2618,\n  \"love</w>\": 793,\n  \"lovecraft</w>\": 42405,\n  \"loved</w>\": 3249,\n  \"lovefl</w>\": 38884,\n  \"loveher</w>\": 38306,\n  \"lovehim</w>\": 45733,\n  \"loveis\": 30931,\n  \"loveisland</w>\": 30970,\n  \"loveislove</w>\": 43603,\n  \"loveit</w>\": 24764,\n  \"lovel\": 8999,\n  \"lovelies</w>\": 31412,\n  \"lovelondon</w>\": 46493,\n  \"lovely\": 33250,\n  \"lovely</w>\": 2165,\n  \"lovemy\": 20041,\n  \"lovemyjob</w>\": 40130,\n  \"loven\": 33754,\n  \"lover\": 28508,\n  \"lover</w>\": 7168,\n  \"lovers\": 48416,\n  \"lovers</w>\": 5973,\n  \"loves\": 37773,\n  \"loves</w>\": 3925,\n  \"lovethe\": 33040,\n  \"lovethem</w>\": 48298,\n  \"lovett</w>\": 47095,\n  \"lovewins</w>\": 47687,\n  \"loveyou\": 39226,\n  \"loveyou</w>\": 25964,\n  \"loveyour\": 26462,\n  \"lovin\": 33442,\n  \"lovin</w>\": 16354,\n  \"loving\": 29568,\n  \"loving</w>\": 3721,\n  \"lovingly</w>\": 44100,\n  \"low\": 1049,\n  \"low</w>\": 1042,\n  \"loway</w>\": 16104,\n  \"lowe</w>\": 17910,\n  \"lowed</w>\": 22733,\n  \"lowell</w>\": 24458,\n  \"lower\": 32578,\n  \"lower</w>\": 4909,\n  \"lowered</w>\": 34968,\n  \"lowering</w>\": 35261,\n  \"lowers</w>\": 36398,\n  \"lowes</w>\": 38515,\n  \"lowest</w>\": 12098,\n  \"lowing</w>\": 8283,\n  \"lowkey</w>\": 29481,\n  \"lowry</w>\": 27444,\n  \"lows</w>\": 4406,\n  \"lox</w>\": 41725,\n  \"loy\": 4519,\n  \"loy</w>\": 23929,\n  \"loyal</w>\": 13032,\n  \"loyalty</w>\": 14686,\n  \"loyd</w>\": 44212,\n  \"loyed</w>\": 29279,\n  \"loyment</w>\": 18307,\n  \"loyola</w>\": 32569,\n  \"lp\": 22282,\n  \"lp</w>\": 6392,\n  \"lpc</w>\": 44092,\n  \"lpg</w>\": 47905,\n  \"lpga</w>\": 34295,\n  \"lps</w>\": 32094,\n  \"lr\": 20572,\n  \"lr</w>\": 7041,\n  \"lrt</w>\": 32996,\n  \"ls\": 19051,\n  \"ls</w>\": 1268,\n  \"lsd</w>\": 43766,\n  \"lse\": 46127,\n  \"lse</w>\": 43886,\n  \"lsu\": 35428,\n  \"lsu</w>\": 15672,\n  \"lt\": 13642,\n  \"lt</w>\": 3333,\n  \"ltc</w>\": 27664,\n  \"ltd</w>\": 6802,\n  \"lte</w>\": 25202,\n  \"lton</w>\": 14237,\n  \"lu\": 664,\n  \"lu</w>\": 9657,\n  \"lub\": 22469,\n  \"lub</w>\": 11836,\n  \"lubbock</w>\": 37660,\n  \"lubric\": 40963,\n  \"luc\": 7013,\n  \"luc</w>\": 28014,\n  \"luca</w>\": 21053,\n  \"lucas\": 23425,\n  \"lucas</w>\": 10225,\n  \"lucci</w>\": 45849,\n  \"luce</w>\": 46217,\n  \"lucent</w>\": 41552,\n  \"lucer\": 36042,\n  \"luch\": 36646,\n  \"lucha</w>\": 38449,\n  \"luci\": 8787,\n  \"lucia</w>\": 22290,\n  \"luciano</w>\": 46365,\n  \"lucid</w>\": 44540,\n  \"lucie</w>\": 39461,\n  \"lucifer\": 46224,\n  \"lucifer</w>\": 27687,\n  \"lucille</w>\": 47454,\n  \"lucin\": 27523,\n  \"luck\": 9647,\n  \"luck</w>\": 2820,\n  \"luckiest</w>\": 42469,\n  \"luckily</w>\": 20100,\n  \"lucknow</w>\": 29407,\n  \"lucky\": 20495,\n  \"lucky</w>\": 4133,\n  \"lucrative</w>\": 41485,\n  \"lucy\": 17262,\n  \"lucy</w>\": 10120,\n  \"lud\": 14288,\n  \"lude</w>\": 28755,\n  \"ludo\": 40141,\n  \"ludwig</w>\": 30633,\n  \"lue</w>\": 45199,\n  \"luf\": 25264,\n  \"lufc</w>\": 17818,\n  \"luffy</w>\": 39047,\n  \"lufthan\": 37769,\n  \"lufthansa</w>\": 39145,\n  \"lug</w>\": 45521,\n  \"lugg\": 19673,\n  \"luggage</w>\": 20138,\n  \"luhan</w>\": 20975,\n  \"luigi</w>\": 28444,\n  \"luis\": 25231,\n  \"luis</w>\": 11339,\n  \"luiz</w>\": 39633,\n  \"lujah</w>\": 31639,\n  \"luk</w>\": 21652,\n  \"luka</w>\": 34878,\n  \"lukaku</w>\": 37177,\n  \"lukas</w>\": 37941,\n  \"luke\": 11970,\n  \"luke</w>\": 5652,\n  \"lul\": 20861,\n  \"lulla\": 37019,\n  \"lullaby</w>\": 41676,\n  \"lulu\": 32052,\n  \"lulu</w>\": 26935,\n  \"lum\": 18112,\n  \"lum</w>\": 5997,\n  \"lumb\": 36231,\n  \"lumber\": 27421,\n  \"lumber</w>\": 34692,\n  \"lumi\": 41437,\n  \"lumia</w>\": 31912,\n  \"lumin\": 15867,\n  \"luminous</w>\": 37913,\n  \"lump</w>\": 38704,\n  \"lumpur</w>\": 34411,\n  \"lun\": 3221,\n  \"lun</w>\": 49390,\n  \"luna</w>\": 14425,\n  \"lunar</w>\": 16043,\n  \"lunatic</w>\": 45874,\n  \"lunch\": 10954,\n  \"lunch</w>\": 2772,\n  \"luncheon</w>\": 15104,\n  \"lunches</w>\": 29705,\n  \"lunchtime</w>\": 14330,\n  \"lund\": 30975,\n  \"lund</w>\": 20181,\n  \"lunes</w>\": 35648,\n  \"lung\": 38479,\n  \"lung</w>\": 16271,\n  \"lungs</w>\": 27366,\n  \"lup</w>\": 27413,\n  \"lupita</w>\": 49352,\n  \"lupus</w>\": 36017,\n  \"lur\": 14439,\n  \"lure</w>\": 31376,\n  \"lures</w>\": 46747,\n  \"lurking</w>\": 29941,\n  \"lus</w>\": 7158,\n  \"lusci\": 38004,\n  \"luscious</w>\": 39935,\n  \"lush\": 40382,\n  \"lush</w>\": 16263,\n  \"lust\": 42071,\n  \"lust</w>\": 12662,\n  \"lustre</w>\": 46673,\n  \"luther\": 21848,\n  \"luther</w>\": 17208,\n  \"lutheran</w>\": 27341,\n  \"luton</w>\": 28288,\n  \"luv\": 24726,\n  \"luv</w>\": 8502,\n  \"lux\": 3439,\n  \"lux</w>\": 16704,\n  \"luxe</w>\": 26373,\n  \"luxemb\": 21314,\n  \"luxembour\": 22712,\n  \"luxembourg</w>\": 23949,\n  \"luxu\": 16112,\n  \"luxurious</w>\": 17292,\n  \"luxury\": 12083,\n  \"luxury</w>\": 5247,\n  \"luxurytravel</w>\": 29010,\n  \"luz</w>\": 41008,\n  \"lv\": 10862,\n  \"lv</w>\": 11184,\n  \"lvl</w>\": 31256,\n  \"lw\": 40515,\n  \"lw</w>\": 35115,\n  \"lx</w>\": 30789,\n  \"ly\": 1251,\n  \"ly</w>\": 597,\n  \"lydia</w>\": 24316,\n  \"lyf</w>\": 43688,\n  \"lyfe</w>\": 30787,\n  \"lyft</w>\": 32944,\n  \"lying</w>\": 7175,\n  \"lyk</w>\": 46376,\n  \"lyle</w>\": 36828,\n  \"lym\": 20087,\n  \"lyme</w>\": 31167,\n  \"lymph\": 30073,\n  \"lymphoma</w>\": 37648,\n  \"lyn\": 3957,\n  \"lyn</w>\": 5054,\n  \"lynch\": 31586,\n  \"lynch</w>\": 13560,\n  \"lynd\": 33416,\n  \"lynda</w>\": 42959,\n  \"lyndon</w>\": 48518,\n  \"lynn\": 25303,\n  \"lynn</w>\": 10667,\n  \"lynne</w>\": 26900,\n  \"lynx</w>\": 28941,\n  \"lyon</w>\": 17176,\n  \"lyons</w>\": 29453,\n  \"lyric\": 24366,\n  \"lyric</w>\": 21291,\n  \"lyrical</w>\": 33358,\n  \"lyricist</w>\": 49013,\n  \"lyrics</w>\": 9551,\n  \"lyrix</w>\": 46814,\n  \"lys</w>\": 45054,\n  \"lyte</w>\": 40059,\n  \"lywood</w>\": 4012,\n  \"lz</w>\": 30818,\n  \"lÃ©\": 39641,\n  \"m\": 76,\n  \"m</w>\": 332,\n  \"ma\": 577,\n  \"ma</w>\": 1226,\n  \"maa\": 42774,\n  \"maa</w>\": 21555,\n  \"maan</w>\": 33668,\n  \"maar</w>\": 48927,\n  \"maas\": 43332,\n  \"mab</w>\": 35639,\n  \"mabel</w>\": 47319,\n  \"mable</w>\": 23001,\n  \"mably</w>\": 40082,\n  \"mabu\": 44682,\n  \"mac\": 1961,\n  \"mac</w>\": 4945,\n  \"macar\": 21558,\n  \"macaroni</w>\": 41824,\n  \"macarthur</w>\": 36785,\n  \"macau\": 43984,\n  \"macau</w>\": 33370,\n  \"macbeth</w>\": 36321,\n  \"macbook</w>\": 20617,\n  \"macdonald</w>\": 20315,\n  \"mace</w>\": 44869,\n  \"maced\": 21102,\n  \"macedonia</w>\": 27071,\n  \"macfar\": 45374,\n  \"macfarlane</w>\": 48825,\n  \"mach\": 2637,\n  \"mach</w>\": 35091,\n  \"machado</w>\": 42318,\n  \"mache\": 43220,\n  \"macher</w>\": 29330,\n  \"machi\": 41783,\n  \"machin\": 17972,\n  \"machine\": 11539,\n  \"machine</w>\": 4169,\n  \"machinelearning</w>\": 13621,\n  \"machinery</w>\": 21858,\n  \"machines</w>\": 11108,\n  \"machining</w>\": 45562,\n  \"macho</w>\": 43977,\n  \"macht</w>\": 45225,\n  \"macin\": 36533,\n  \"mack\": 8590,\n  \"mack</w>\": 12145,\n  \"mackay</w>\": 32497,\n  \"macken\": 48057,\n  \"mackenzie</w>\": 22351,\n  \"mackerel</w>\": 35002,\n  \"mackin\": 26010,\n  \"macklemore</w>\": 41758,\n  \"macle\": 33843,\n  \"maclean</w>\": 47137,\n  \"macleod</w>\": 43684,\n  \"macmillan\": 36364,\n  \"macmillan</w>\": 35191,\n  \"macon</w>\": 35818,\n  \"macos</w>\": 45469,\n  \"macqu\": 38365,\n  \"macquarie</w>\": 40858,\n  \"macro\": 20891,\n  \"macro</w>\": 16626,\n  \"macron</w>\": 24859,\n  \"macs</w>\": 46548,\n  \"macy</w>\": 17113,\n  \"macys</w>\": 47652,\n  \"mad\": 2740,\n  \"mad</w>\": 3843,\n  \"mada</w>\": 37799,\n  \"madagas\": 24758,\n  \"madagascar</w>\": 25744,\n  \"madam\": 33634,\n  \"madam</w>\": 27538,\n  \"madame</w>\": 23507,\n  \"madd\": 31717,\n  \"madden</w>\": 19093,\n  \"maddie\": 39959,\n  \"maddie</w>\": 18875,\n  \"maddow</w>\": 32644,\n  \"maddy</w>\": 31734,\n  \"made\": 5388,\n  \"made</w>\": 1105,\n  \"madein\": 13670,\n  \"madeira</w>\": 33810,\n  \"madel\": 34532,\n  \"madele\": 29831,\n  \"madeleine</w>\": 33264,\n  \"madeline</w>\": 33905,\n  \"madewith\": 28627,\n  \"madewithunity</w>\": 43190,\n  \"madhu\": 23000,\n  \"madhuri\": 38346,\n  \"madhuridixit</w>\": 43889,\n  \"madhya</w>\": 48302,\n  \"madi\": 6527,\n  \"madi</w>\": 27282,\n  \"madison\": 24798,\n  \"madison</w>\": 8791,\n  \"madmen</w>\": 45452,\n  \"madness</w>\": 8755,\n  \"madon\": 44852,\n  \"madonna</w>\": 14137,\n  \"madra\": 27416,\n  \"madras</w>\": 42046,\n  \"madre</w>\": 42130,\n  \"madri\": 5529,\n  \"madrid</w>\": 5909,\n  \"mads</w>\": 41201,\n  \"madu\": 34913,\n  \"madurai</w>\": 49159,\n  \"maduro</w>\": 32912,\n  \"mae\": 16898,\n  \"mae</w>\": 17339,\n  \"maer\": 47088,\n  \"maestro</w>\": 24140,\n  \"mafi\": 47164,\n  \"mafia</w>\": 14890,\n  \"mag\": 1191,\n  \"mag</w>\": 4508,\n  \"maga</w>\": 8694,\n  \"magaz\": 2974,\n  \"magazine</w>\": 3113,\n  \"magazines</w>\": 22253,\n  \"magdal\": 29673,\n  \"mage\": 46568,\n  \"mage</w>\": 10923,\n  \"magee</w>\": 43872,\n  \"magenta</w>\": 38091,\n  \"magento</w>\": 42442,\n  \"mages</w>\": 31059,\n  \"maggi\": 29611,\n  \"maggie\": 41443,\n  \"maggie</w>\": 14524,\n  \"maggio</w>\": 49087,\n  \"magh\": 45555,\n  \"magi\": 19270,\n  \"magic\": 13061,\n  \"magic</w>\": 3778,\n  \"magical\": 36408,\n  \"magical</w>\": 7823,\n  \"magician</w>\": 26368,\n  \"magin\": 42678,\n  \"maging</w>\": 41310,\n  \"magn\": 10290,\n  \"magna</w>\": 34076,\n  \"magne\": 9921,\n  \"magnesium</w>\": 36379,\n  \"magnet</w>\": 18240,\n  \"magnetic</w>\": 13838,\n  \"magnets</w>\": 33030,\n  \"magni\": 24297,\n  \"magnific\": 9725,\n  \"magnificent</w>\": 10724,\n  \"magnitude</w>\": 22955,\n  \"magno\": 21184,\n  \"magnolia</w>\": 27123,\n  \"magnu\": 45198,\n  \"magnum</w>\": 23496,\n  \"magnus</w>\": 26275,\n  \"magpie</w>\": 45973,\n  \"mags</w>\": 31021,\n  \"maguire</w>\": 26470,\n  \"mah\": 7206,\n  \"mah</w>\": 10801,\n  \"maha\": 12237,\n  \"maha</w>\": 33983,\n  \"mahal</w>\": 22301,\n  \"mahan\": 45191,\n  \"mahar\": 11635,\n  \"maharaj</w>\": 38488,\n  \"maharashtra</w>\": 19328,\n  \"mahat\": 32434,\n  \"mahatma</w>\": 40530,\n  \"mahe\": 15756,\n  \"maher</w>\": 29826,\n  \"mahesh\": 33448,\n  \"mahesh</w>\": 22095,\n  \"mahi\": 32529,\n  \"mahi</w>\": 38659,\n  \"mahin\": 24113,\n  \"mahindra</w>\": 31285,\n  \"mahmoud</w>\": 41361,\n  \"mahog\": 30804,\n  \"mahogany</w>\": 33084,\n  \"mahon\": 45864,\n  \"mahon</w>\": 20371,\n  \"mahone</w>\": 26634,\n  \"mai\": 7138,\n  \"mai</w>\": 14595,\n  \"maia</w>\": 46585,\n  \"maid\": 23148,\n  \"maid</w>\": 10226,\n  \"maidan</w>\": 37346,\n  \"maiden\": 37011,\n  \"maiden</w>\": 13809,\n  \"maids</w>\": 27305,\n  \"maidstone</w>\": 44395,\n  \"mail\": 10478,\n  \"mail</w>\": 2614,\n  \"mailbox</w>\": 31482,\n  \"mailed</w>\": 42314,\n  \"mailing</w>\": 26680,\n  \"mailonline</w>\": 26021,\n  \"mails</w>\": 45213,\n  \"main\": 3904,\n  \"main</w>\": 2623,\n  \"maine\": 18639,\n  \"maine</w>\": 7836,\n  \"mained\": 15609,\n  \"mainedcm</w>\": 15845,\n  \"mainland</w>\": 27629,\n  \"mainly</w>\": 15280,\n  \"mains</w>\": 33656,\n  \"mainst\": 42102,\n  \"mainstream</w>\": 18034,\n  \"maintain</w>\": 12954,\n  \"maintained</w>\": 26665,\n  \"maintaining</w>\": 21964,\n  \"maintains</w>\": 38335,\n  \"mainten\": 9399,\n  \"maintenance</w>\": 9610,\n  \"mais</w>\": 28153,\n  \"maisie</w>\": 47355,\n  \"maison\": 37065,\n  \"maison</w>\": 27626,\n  \"mait\": 26387,\n  \"maize</w>\": 35386,\n  \"maj\": 2948,\n  \"maj</w>\": 28723,\n  \"maja</w>\": 47498,\n  \"maje\": 9852,\n  \"majestic</w>\": 15335,\n  \"majesty</w>\": 21188,\n  \"major\": 8008,\n  \"major</w>\": 3350,\n  \"majority</w>\": 10508,\n  \"majors</w>\": 23597,\n  \"mak\": 11271,\n  \"mak</w>\": 19253,\n  \"makar\": 42242,\n  \"makati</w>\": 39402,\n  \"make\": 3232,\n  \"make</w>\": 1078,\n  \"makeaw\": 45859,\n  \"makeinindia</w>\": 42739,\n  \"makeit\": 26308,\n  \"maken\": 47093,\n  \"makeover</w>\": 17926,\n  \"maker\": 15196,\n  \"maker</w>\": 4836,\n  \"makers</w>\": 6577,\n  \"makerspace</w>\": 42400,\n  \"makes</w>\": 2088,\n  \"makeshift</w>\": 43274,\n  \"makeu\": 41707,\n  \"makeup\": 26402,\n  \"makeup</w>\": 5853,\n  \"makeyourown\": 34090,\n  \"makeyourownlane</w>\": 34823,\n  \"maki</w>\": 34514,\n  \"makin\": 43096,\n  \"makin</w>\": 22407,\n  \"making\": 17976,\n  \"making</w>\": 1665,\n  \"makk\": 39852,\n  \"maknae</w>\": 44118,\n  \"mako</w>\": 49061,\n  \"mal\": 1662,\n  \"mal</w>\": 3796,\n  \"mala</w>\": 28290,\n  \"malade</w>\": 36928,\n  \"malaga</w>\": 35395,\n  \"malala</w>\": 41137,\n  \"malam</w>\": 48956,\n  \"malaria</w>\": 24929,\n  \"malawi</w>\": 23405,\n  \"malay\": 5323,\n  \"malay</w>\": 42430,\n  \"malayalam</w>\": 34860,\n  \"malaysi\": 39668,\n  \"malaysia</w>\": 8146,\n  \"malaysian</w>\": 21136,\n  \"malbec</w>\": 47741,\n  \"malcol\": 12645,\n  \"malcolm</w>\": 14139,\n  \"maldives</w>\": 16795,\n  \"male\": 11326,\n  \"male</w>\": 2801,\n  \"males</w>\": 14426,\n  \"malhotra</w>\": 28866,\n  \"mali\": 6701,\n  \"mali</w>\": 22669,\n  \"malia</w>\": 46714,\n  \"malibu</w>\": 21723,\n  \"malicious</w>\": 42147,\n  \"malign\": 41122,\n  \"malik</w>\": 11394,\n  \"mall\": 10984,\n  \"mall</w>\": 6220,\n  \"mallorca</w>\": 28082,\n  \"mallory</w>\": 38968,\n  \"malls</w>\": 36447,\n  \"malm\": 44071,\n  \"malnutrition</w>\": 41153,\n  \"malo</w>\": 43518,\n  \"malone</w>\": 19852,\n  \"maloney</w>\": 45897,\n  \"mals</w>\": 25370,\n  \"malt</w>\": 21688,\n  \"malta</w>\": 16989,\n  \"maltese</w>\": 39838,\n  \"malvern</w>\": 39356,\n  \"malware</w>\": 24153,\n  \"mam\": 4404,\n  \"mam</w>\": 17778,\n  \"mama</w>\": 7133,\n  \"mamamoo</w>\": 36012,\n  \"mamas</w>\": 42395,\n  \"mamba</w>\": 44189,\n  \"mament</w>\": 45690,\n  \"mami</w>\": 43858,\n  \"mamma</w>\": 34893,\n  \"mammal</w>\": 33385,\n  \"mammals</w>\": 31987,\n  \"mammoth</w>\": 28022,\n  \"man\": 723,\n  \"man</w>\": 786,\n  \"mana\": 29467,\n  \"mana</w>\": 15837,\n  \"manafort</w>\": 40108,\n  \"manag\": 1830,\n  \"manage</w>\": 9770,\n  \"managed</w>\": 7928,\n  \"management</w>\": 3319,\n  \"manager</w>\": 3898,\n  \"managerial</w>\": 44261,\n  \"managers</w>\": 12853,\n  \"manages</w>\": 29699,\n  \"managing</w>\": 10892,\n  \"manas\": 44188,\n  \"manatee</w>\": 46558,\n  \"mance</w>\": 2324,\n  \"manchester\": 24424,\n  \"manchester</w>\": 4651,\n  \"mancini</w>\": 47681,\n  \"mancity</w>\": 31538,\n  \"mancrush\": 36945,\n  \"mancrushmonday</w>\": 39307,\n  \"mand\": 4325,\n  \"mand</w>\": 27244,\n  \"mandala</w>\": 41106,\n  \"mandarin</w>\": 26455,\n  \"mandate</w>\": 26228,\n  \"mandatory</w>\": 19934,\n  \"mandel\": 34960,\n  \"mandela</w>\": 16280,\n  \"mandi\": 38961,\n  \"mandir</w>\": 35815,\n  \"mando</w>\": 34006,\n  \"mands</w>\": 12340,\n  \"mandu</w>\": 31440,\n  \"mandy\": 41505,\n  \"mandy</w>\": 24302,\n  \"mane\": 44471,\n  \"mane</w>\": 16044,\n  \"maneu\": 33216,\n  \"mang\": 25616,\n  \"mang</w>\": 31096,\n  \"manga</w>\": 11873,\n  \"mangal\": 43027,\n  \"manger</w>\": 48251,\n  \"mango\": 43831,\n  \"mango</w>\": 13962,\n  \"mangrove</w>\": 47180,\n  \"manhatt\": 10152,\n  \"manhattan</w>\": 10961,\n  \"mani\": 5654,\n  \"mani</w>\": 10718,\n  \"mania</w>\": 8435,\n  \"maniac</w>\": 31814,\n  \"maniacs</w>\": 41444,\n  \"manian</w>\": 40077,\n  \"manic\": 23017,\n  \"manic</w>\": 37825,\n  \"manicure</w>\": 33637,\n  \"manife\": 14379,\n  \"manifest</w>\": 34422,\n  \"manifestation</w>\": 48348,\n  \"manifesto</w>\": 20907,\n  \"manil\": 38827,\n  \"manila</w>\": 10969,\n  \"manipu\": 40261,\n  \"manipul\": 19237,\n  \"manipulation</w>\": 30277,\n  \"manipur</w>\": 47757,\n  \"manish\": 41759,\n  \"manish</w>\": 44720,\n  \"manit\": 15693,\n  \"manitoba</w>\": 20342,\n  \"manjaro</w>\": 41489,\n  \"mankind</w>\": 24155,\n  \"manly</w>\": 25194,\n  \"mann\": 19396,\n  \"mann</w>\": 4783,\n  \"manne\": 30160,\n  \"manned</w>\": 26139,\n  \"mannequin</w>\": 43388,\n  \"manner</w>\": 20700,\n  \"manners</w>\": 31693,\n  \"manning</w>\": 15996,\n  \"manny\": 37054,\n  \"manny</w>\": 20933,\n  \"mano\": 15753,\n  \"mano</w>\": 24016,\n  \"manoj</w>\": 41146,\n  \"manor\": 41830,\n  \"manor</w>\": 13614,\n  \"mans\": 28422,\n  \"mans</w>\": 7746,\n  \"mansfield</w>\": 25543,\n  \"manship</w>\": 15460,\n  \"mansion</w>\": 13404,\n  \"manslaughter</w>\": 48632,\n  \"manson</w>\": 26715,\n  \"mant\": 25122,\n  \"mant</w>\": 27037,\n  \"manta</w>\": 41431,\n  \"mantis</w>\": 39946,\n  \"mantle</w>\": 22159,\n  \"mantra</w>\": 25162,\n  \"manu\": 3404,\n  \"manu</w>\": 25799,\n  \"manual</w>\": 12268,\n  \"manuel\": 29171,\n  \"manuel</w>\": 9567,\n  \"manufac\": 5105,\n  \"manufacture</w>\": 27741,\n  \"manufactured</w>\": 24010,\n  \"manufacturer</w>\": 15668,\n  \"manufacturers</w>\": 18763,\n  \"manufacturing</w>\": 8386,\n  \"manure</w>\": 47907,\n  \"manus</w>\": 28181,\n  \"manuscript</w>\": 24365,\n  \"manuscripts</w>\": 40765,\n  \"manutd</w>\": 20994,\n  \"many\": 28484,\n  \"many</w>\": 1346,\n  \"manziel</w>\": 40637,\n  \"mao\": 47447,\n  \"mao</w>\": 25605,\n  \"maori</w>\": 43400,\n  \"map\": 25180,\n  \"map</w>\": 3923,\n  \"maple\": 21980,\n  \"maple</w>\": 10570,\n  \"mapleleafs</w>\": 41257,\n  \"mapoli</w>\": 28768,\n  \"mapp</w>\": 36894,\n  \"mapped</w>\": 41596,\n  \"mapping</w>\": 15231,\n  \"maps</w>\": 8765,\n  \"mapu\": 42082,\n  \"mar\": 675,\n  \"mar</w>\": 3091,\n  \"mara</w>\": 15655,\n  \"marais</w>\": 47913,\n  \"maran\": 44732,\n  \"marath\": 16274,\n  \"marathi</w>\": 34102,\n  \"marathon\": 40764,\n  \"marathon</w>\": 5910,\n  \"marau\": 38475,\n  \"marbella</w>\": 36182,\n  \"marble\": 45429,\n  \"marble</w>\": 13071,\n  \"marbles</w>\": 42931,\n  \"marc\": 14054,\n  \"marc</w>\": 9075,\n  \"marca</w>\": 38242,\n  \"marcel\": 17726,\n  \"marcel</w>\": 24652,\n  \"marcelo</w>\": 35939,\n  \"march\": 10638,\n  \"march</w>\": 2227,\n  \"marche</w>\": 36173,\n  \"marched</w>\": 37976,\n  \"marches</w>\": 38249,\n  \"marchfor\": 31721,\n  \"marching</w>\": 15082,\n  \"marchmadness</w>\": 28555,\n  \"marci\": 36698,\n  \"marcia</w>\": 41075,\n  \"marck</w>\": 47733,\n  \"marco\": 24719,\n  \"marco</w>\": 10924,\n  \"marcor\": 39945,\n  \"marcorubio</w>\": 41143,\n  \"marcos</w>\": 21696,\n  \"marcu\": 20760,\n  \"marcus\": 48955,\n  \"marcus</w>\": 9895,\n  \"mardi\": 39728,\n  \"mardi</w>\": 29229,\n  \"mardigras</w>\": 43343,\n  \"mare\": 26512,\n  \"mare</w>\": 8870,\n  \"mares</w>\": 19724,\n  \"marg</w>\": 44014,\n  \"margar\": 16838,\n  \"margare\": 10232,\n  \"margaret</w>\": 12185,\n  \"margarita</w>\": 25958,\n  \"margaritas</w>\": 42679,\n  \"margate</w>\": 37428,\n  \"margin\": 19464,\n  \"margin</w>\": 21357,\n  \"marginal</w>\": 38320,\n  \"margins</w>\": 33763,\n  \"margot</w>\": 37144,\n  \"mari\": 2603,\n  \"mari</w>\": 19322,\n  \"maria\": 41109,\n  \"maria</w>\": 6595,\n  \"mariachi</w>\": 44299,\n  \"mariah\": 31214,\n  \"mariah</w>\": 24789,\n  \"mariahcarey</w>\": 36538,\n  \"marian\": 41129,\n  \"marian</w>\": 24677,\n  \"mariana</w>\": 44224,\n  \"marianne</w>\": 32214,\n  \"mariano</w>\": 43988,\n  \"marie\": 20657,\n  \"marie</w>\": 7864,\n  \"marietta</w>\": 46634,\n  \"marig\": 41002,\n  \"marijuana</w>\": 9864,\n  \"maril\": 14611,\n  \"marilyn\": 38959,\n  \"marilyn</w>\": 18489,\n  \"marin\": 8910,\n  \"marin</w>\": 23992,\n  \"marina</w>\": 12060,\n  \"marinated</w>\": 33406,\n  \"marine\": 20674,\n  \"marine</w>\": 5746,\n  \"mariner</w>\": 39972,\n  \"mariners</w>\": 19086,\n  \"marines</w>\": 15018,\n  \"marino</w>\": 30878,\n  \"mario\": 39176,\n  \"mario</w>\": 7600,\n  \"marion\": 37765,\n  \"marion</w>\": 18397,\n  \"maris\": 21512,\n  \"maris</w>\": 33093,\n  \"marisa</w>\": 42938,\n  \"mariska</w>\": 44703,\n  \"marissa</w>\": 31219,\n  \"marist</w>\": 48223,\n  \"mariti\": 13124,\n  \"maritime</w>\": 14331,\n  \"marj\": 38639,\n  \"mark\": 3805,\n  \"mark</w>\": 2110,\n  \"marke\": 2399,\n  \"marked</w>\": 12360,\n  \"marker</w>\": 18170,\n  \"markers</w>\": 23664,\n  \"market\": 11614,\n  \"market</w>\": 2196,\n  \"marketer</w>\": 33482,\n  \"marketers</w>\": 23682,\n  \"marketing\": 19535,\n  \"marketing</w>\": 2905,\n  \"marketplace</w>\": 18241,\n  \"markets</w>\": 7292,\n  \"markham</w>\": 39817,\n  \"marking</w>\": 14705,\n  \"markings</w>\": 41046,\n  \"markle</w>\": 32672,\n  \"marko</w>\": 38338,\n  \"marks</w>\": 5466,\n  \"markus</w>\": 33725,\n  \"marl\": 24922,\n  \"marlborough</w>\": 43515,\n  \"marlene</w>\": 45117,\n  \"marley</w>\": 16504,\n  \"marlin</w>\": 34275,\n  \"marlins</w>\": 23309,\n  \"marlon</w>\": 32995,\n  \"marmalade</w>\": 39068,\n  \"marnock</w>\": 48305,\n  \"maro\": 27029,\n  \"maroon</w>\": 20501,\n  \"marqu\": 20704,\n  \"marque\": 13012,\n  \"marquee</w>\": 27725,\n  \"marquette</w>\": 37624,\n  \"marquez</w>\": 27317,\n  \"marquis</w>\": 33530,\n  \"marr</w>\": 32871,\n  \"marrake\": 37125,\n  \"marrakech</w>\": 39006,\n  \"marri\": 3839,\n  \"marriage\": 38047,\n  \"marriage</w>\": 7040,\n  \"marriages</w>\": 38190,\n  \"married</w>\": 6791,\n  \"marries</w>\": 46283,\n  \"marriott</w>\": 19211,\n  \"marrow</w>\": 31030,\n  \"marry</w>\": 13288,\n  \"marrying</w>\": 40507,\n  \"mars\": 41469,\n  \"mars</w>\": 7496,\n  \"marsden</w>\": 43344,\n  \"marse\": 26577,\n  \"marseille</w>\": 30365,\n  \"marsh\": 9237,\n  \"marsh</w>\": 13505,\n  \"marsha</w>\": 21491,\n  \"marshal</w>\": 26608,\n  \"marshall\": 30939,\n  \"marshall</w>\": 9811,\n  \"marshals</w>\": 44175,\n  \"marshes</w>\": 43450,\n  \"marshmal\": 21069,\n  \"marshmallow</w>\": 28530,\n  \"marshmallows</w>\": 39471,\n  \"mart\": 2348,\n  \"mart</w>\": 7772,\n  \"marta</w>\": 32858,\n  \"martens</w>\": 43211,\n  \"marth\": 34493,\n  \"martha</w>\": 16427,\n  \"marti\": 20577,\n  \"martial</w>\": 17088,\n  \"martialarts</w>\": 35895,\n  \"martian</w>\": 30214,\n  \"martin\": 6929,\n  \"martin</w>\": 3690,\n  \"martina</w>\": 34393,\n  \"martinez</w>\": 13913,\n  \"marting\": 47570,\n  \"martini</w>\": 22199,\n  \"martino</w>\": 41675,\n  \"martins</w>\": 30569,\n  \"marty\": 9926,\n  \"marty</w>\": 17169,\n  \"martyn</w>\": 44075,\n  \"martyr\": 36155,\n  \"martyr</w>\": 26067,\n  \"martyrdom</w>\": 43110,\n  \"martyred</w>\": 39114,\n  \"martyrs</w>\": 24707,\n  \"maru\": 37413,\n  \"maru</w>\": 31838,\n  \"marvel\": 13835,\n  \"marvel</w>\": 5996,\n  \"marvelcomics</w>\": 46897,\n  \"marvell\": 26576,\n  \"marvellous</w>\": 28402,\n  \"marvelous</w>\": 25487,\n  \"marvin</w>\": 19675,\n  \"marx\": 30559,\n  \"marx</w>\": 26001,\n  \"marxist</w>\": 45205,\n  \"mary\": 5146,\n  \"mary</w>\": 2676,\n  \"maryam\": 33636,\n  \"maryam</w>\": 36393,\n  \"maryland</w>\": 11379,\n  \"marys\": 40905,\n  \"marys</w>\": 40228,\n  \"mas\": 5226,\n  \"mas</w>\": 1412,\n  \"masa\": 24995,\n  \"masa</w>\": 41868,\n  \"masala</w>\": 31483,\n  \"masc\": 23564,\n  \"mascar\": 46984,\n  \"mascara</w>\": 31635,\n  \"mascot</w>\": 13983,\n  \"mascots</w>\": 43266,\n  \"mascul\": 25589,\n  \"masculine</w>\": 48269,\n  \"masculinity</w>\": 40465,\n  \"mase\": 49128,\n  \"maser\": 25798,\n  \"maserati</w>\": 30442,\n  \"mash\": 12317,\n  \"mash</w>\": 15680,\n  \"mashable</w>\": 41026,\n  \"mashed</w>\": 27395,\n  \"mashup</w>\": 27079,\n  \"masi\": 35965,\n  \"masjid</w>\": 31420,\n  \"mask\": 19262,\n  \"mask</w>\": 8306,\n  \"masked</w>\": 25757,\n  \"masking</w>\": 47046,\n  \"masks</w>\": 19055,\n  \"maslow</w>\": 44359,\n  \"mason\": 17424,\n  \"mason</w>\": 9699,\n  \"masonic</w>\": 36491,\n  \"masonry</w>\": 30764,\n  \"masons</w>\": 37195,\n  \"masqu\": 26593,\n  \"masquer\": 29604,\n  \"masquerade</w>\": 36944,\n  \"mass\": 4636,\n  \"mass</w>\": 4854,\n  \"massach\": 14484,\n  \"massachuse\": 14577,\n  \"massachusetts</w>\": 14756,\n  \"massacre</w>\": 14696,\n  \"massage</w>\": 13055,\n  \"masse\": 41735,\n  \"masses</w>\": 22978,\n  \"massey</w>\": 29868,\n  \"massi\": 17239,\n  \"massimo</w>\": 45821,\n  \"massive</w>\": 4818,\n  \"massively</w>\": 34297,\n  \"mast\": 45916,\n  \"mast</w>\": 27920,\n  \"master\": 4534,\n  \"master</w>\": 3498,\n  \"mastercard</w>\": 40542,\n  \"masterchef</w>\": 34809,\n  \"masterclass</w>\": 17529,\n  \"mastered</w>\": 32616,\n  \"masterful</w>\": 46823,\n  \"mastering</w>\": 28326,\n  \"mastermind</w>\": 34029,\n  \"masterpiece</w>\": 12066,\n  \"masterpieces</w>\": 37596,\n  \"masters</w>\": 6913,\n  \"mastery</w>\": 34800,\n  \"mastiff</w>\": 42311,\n  \"maswar\": 47887,\n  \"mat\": 905,\n  \"mat</w>\": 9063,\n  \"mata</w>\": 17270,\n  \"match\": 7733,\n  \"match</w>\": 2439,\n  \"matcha</w>\": 32433,\n  \"matchday</w>\": 15947,\n  \"matched</w>\": 17792,\n  \"matches</w>\": 8609,\n  \"matching</w>\": 11840,\n  \"matchup</w>\": 19355,\n  \"matchups</w>\": 49162,\n  \"mate\": 6137,\n  \"mate</w>\": 2936,\n  \"mated</w>\": 33813,\n  \"mateo</w>\": 34991,\n  \"mater</w>\": 23724,\n  \"materi\": 7084,\n  \"material</w>\": 7118,\n  \"materials</w>\": 8161,\n  \"maternal</w>\": 26131,\n  \"maternity</w>\": 23894,\n  \"mates</w>\": 5817,\n  \"math\": 13277,\n  \"math</w>\": 6025,\n  \"mathe\": 8725,\n  \"mathemat\": 11901,\n  \"mathematical</w>\": 25609,\n  \"mathematician</w>\": 41036,\n  \"mathematics</w>\": 20113,\n  \"mathew</w>\": 36333,\n  \"mathews</w>\": 37120,\n  \"mathi\": 23014,\n  \"mathieu</w>\": 40417,\n  \"maths</w>\": 14763,\n  \"mati\": 12716,\n  \"mati</w>\": 32268,\n  \"matic\": 36859,\n  \"matic</w>\": 7900,\n  \"matically</w>\": 38282,\n  \"matics</w>\": 23634,\n  \"matil\": 26751,\n  \"matilda</w>\": 36308,\n  \"matin</w>\": 44849,\n  \"matinee</w>\": 38525,\n  \"mating</w>\": 34346,\n  \"mation</w>\": 11701,\n  \"matisse</w>\": 43446,\n  \"mato\": 13127,\n  \"matologist</w>\": 48842,\n  \"matology</w>\": 27940,\n  \"matory</w>\": 25519,\n  \"matri\": 27041,\n  \"matrix</w>\": 18078,\n  \"mats</w>\": 22259,\n  \"matsu\": 30242,\n  \"matt\": 7972,\n  \"matt</w>\": 3972,\n  \"mattb\": 42791,\n  \"matte\": 31237,\n  \"matte</w>\": 19771,\n  \"mattel</w>\": 35365,\n  \"matteo</w>\": 33120,\n  \"matter\": 30471,\n  \"matter</w>\": 3828,\n  \"matters</w>\": 5708,\n  \"matth\": 41846,\n  \"matthe\": 5116,\n  \"matthew\": 17588,\n  \"matthew</w>\": 7008,\n  \"matthews</w>\": 16739,\n  \"matthi\": 29853,\n  \"matthias</w>\": 45104,\n  \"matti\": 39840,\n  \"mattress</w>\": 23438,\n  \"matty\": 31233,\n  \"matty</w>\": 29176,\n  \"matu\": 40616,\n  \"matur\": 22897,\n  \"mature</w>\": 14417,\n  \"maturity</w>\": 28047,\n  \"mau\": 8134,\n  \"mau</w>\": 23033,\n  \"maui</w>\": 20463,\n  \"maul\": 30725,\n  \"maur\": 10574,\n  \"maure\": 25191,\n  \"maureen</w>\": 31723,\n  \"maurice</w>\": 20200,\n  \"mauricio</w>\": 39066,\n  \"mauriti\": 28406,\n  \"mauritius</w>\": 29305,\n  \"mauro</w>\": 41691,\n  \"mav\": 25697,\n  \"maver\": 16700,\n  \"maverick</w>\": 27425,\n  \"mavericks</w>\": 30092,\n  \"mavs</w>\": 30665,\n  \"maw\": 39351,\n  \"maw</w>\": 42271,\n  \"mawards</w>\": 37682,\n  \"max\": 4898,\n  \"max</w>\": 3902,\n  \"maxi\": 8554,\n  \"maxi</w>\": 23266,\n  \"maxim\": 19892,\n  \"maxim</w>\": 38574,\n  \"maximize</w>\": 28673,\n  \"maximum</w>\": 13162,\n  \"maximus</w>\": 44312,\n  \"maxine</w>\": 38468,\n  \"maxwell</w>\": 19611,\n  \"maxx</w>\": 37466,\n  \"may\": 1686,\n  \"may</w>\": 1270,\n  \"maya\": 45783,\n  \"maya</w>\": 12987,\n  \"mayan</w>\": 37952,\n  \"maybe</w>\": 3746,\n  \"mayday</w>\": 29957,\n  \"mayer</w>\": 21196,\n  \"mayfair</w>\": 35171,\n  \"mayfield</w>\": 33933,\n  \"mayhem</w>\": 21502,\n  \"maymay\": 26600,\n  \"maymay</w>\": 33853,\n  \"maymayentrata</w>\": 30480,\n  \"maynard</w>\": 32487,\n  \"mayne</w>\": 35771,\n  \"mayo\": 22449,\n  \"mayo</w>\": 11280,\n  \"mayor\": 15429,\n  \"mayor</w>\": 4676,\n  \"mayoral</w>\": 28983,\n  \"mayorof\": 43533,\n  \"mayors</w>\": 28501,\n  \"mays</w>\": 35445,\n  \"maythe</w>\": 42281,\n  \"mayward\": 45751,\n  \"mayward</w>\": 23519,\n  \"mayweather</w>\": 22774,\n  \"maz\": 9177,\n  \"maz</w>\": 36215,\n  \"mazda</w>\": 18506,\n  \"maze</w>\": 21988,\n  \"mazz\": 29439,\n  \"maÃ±\": 37059,\n  \"maÃ±ana</w>\": 39354,\n  \"mb\": 758,\n  \"mb</w>\": 3996,\n  \"mba</w>\": 8329,\n  \"mban</w>\": 46685,\n  \"mbar\": 44452,\n  \"mbb</w>\": 10736,\n  \"mbc</w>\": 20137,\n  \"mbe\": 38395,\n  \"mbe</w>\": 27004,\n  \"mber\": 5467,\n  \"mber</w>\": 1034,\n  \"mberg</w>\": 26372,\n  \"mbers</w>\": 5443,\n  \"mbi</w>\": 45347,\n  \"mble\": 20310,\n  \"mble</w>\": 4756,\n  \"mbles</w>\": 28693,\n  \"mbling</w>\": 28604,\n  \"mbo\": 25733,\n  \"mbo</w>\": 11319,\n  \"mbps</w>\": 44896,\n  \"mbs</w>\": 10370,\n  \"mbta</w>\": 38979,\n  \"mbu</w>\": 42228,\n  \"mbuhari</w>\": 36752,\n  \"mc\": 1278,\n  \"mc</w>\": 4126,\n  \"mca\": 40570,\n  \"mca</w>\": 14635,\n  \"mcal\": 28663,\n  \"mcar\": 43776,\n  \"mcbride</w>\": 35080,\n  \"mcc</w>\": 21192,\n  \"mccabe</w>\": 37628,\n  \"mccaf\": 47385,\n  \"mccain</w>\": 20397,\n  \"mccall</w>\": 34844,\n  \"mccann</w>\": 27140,\n  \"mccar\": 9570,\n  \"mccarthy</w>\": 16974,\n  \"mccartney</w>\": 19958,\n  \"mccl\": 24709,\n  \"mccla\": 43672,\n  \"mccle\": 40139,\n  \"mcclure</w>\": 44945,\n  \"mcco\": 46152,\n  \"mccon\": 32638,\n  \"mccor\": 23057,\n  \"mccormack</w>\": 45164,\n  \"mccormick</w>\": 39088,\n  \"mccoy</w>\": 20218,\n  \"mccr\": 41996,\n  \"mccre\": 25393,\n  \"mccul\": 38833,\n  \"mccull\": 41782,\n  \"mcd</w>\": 28930,\n  \"mcder\": 27355,\n  \"mcdermott</w>\": 34504,\n  \"mcdon\": 12171,\n  \"mcdonald</w>\": 10741,\n  \"mcdonalds</w>\": 17674,\n  \"mcdonnell</w>\": 34360,\n  \"mcdowell</w>\": 34119,\n  \"mce\": 26864,\n  \"mcel\": 28752,\n  \"mcen\": 47423,\n  \"mcfad\": 36976,\n  \"mcfadden</w>\": 42105,\n  \"mcfar\": 29020,\n  \"mcfarlane</w>\": 47174,\n  \"mcfc</w>\": 16416,\n  \"mcfly</w>\": 38211,\n  \"mcg\": 42507,\n  \"mcg</w>\": 27995,\n  \"mcgee</w>\": 29223,\n  \"mcgill\": 46524,\n  \"mcgill</w>\": 35511,\n  \"mcgin\": 29596,\n  \"mcgowan</w>\": 40462,\n  \"mcgr\": 25169,\n  \"mcgra\": 29367,\n  \"mcgrath</w>\": 28759,\n  \"mcgraw</w>\": 40950,\n  \"mcgregor</w>\": 19642,\n  \"mcgu\": 34294,\n  \"mcguinness</w>\": 45299,\n  \"mcguire</w>\": 32635,\n  \"mci\": 46212,\n  \"mci</w>\": 45491,\n  \"mcil\": 30481,\n  \"mcin\": 18770,\n  \"mcintosh</w>\": 45353,\n  \"mcintyre</w>\": 33369,\n  \"mck\": 6781,\n  \"mckay</w>\": 33611,\n  \"mcke\": 27424,\n  \"mckee</w>\": 43529,\n  \"mcken\": 42619,\n  \"mckenna</w>\": 24924,\n  \"mckenzie</w>\": 25502,\n  \"mckin\": 15437,\n  \"mckinley</w>\": 39891,\n  \"mckinney</w>\": 33554,\n  \"mckinnon</w>\": 48736,\n  \"mckinsey</w>\": 48143,\n  \"mcl\": 49021,\n  \"mcla\": 12565,\n  \"mclaren\": 37381,\n  \"mclaren</w>\": 16789,\n  \"mclau\": 32285,\n  \"mclaughlin</w>\": 35346,\n  \"mcle\": 25299,\n  \"mclean</w>\": 28666,\n  \"mcleod</w>\": 40259,\n  \"mcm</w>\": 12251,\n  \"mcmahon</w>\": 24026,\n  \"mcmaster</w>\": 42703,\n  \"mcmillan</w>\": 45603,\n  \"mcn\": 42919,\n  \"mcnam\": 32682,\n  \"mcnamara</w>\": 37506,\n  \"mcne\": 42545,\n  \"mco</w>\": 33723,\n  \"mcqueen</w>\": 22544,\n  \"mcr\": 29884,\n  \"mcr</w>\": 16966,\n  \"mcs</w>\": 27020,\n  \"mcu</w>\": 30403,\n  \"md\": 8637,\n  \"md</w>\": 4732,\n  \"mdc\": 38773,\n  \"mdc</w>\": 41761,\n  \"mds</w>\": 48746,\n  \"mdt</w>\": 40822,\n  \"me\": 613,\n  \"me</w>\": 614,\n  \"mea\": 46045,\n  \"mea</w>\": 17711,\n  \"mead\": 12134,\n  \"mead</w>\": 21567,\n  \"meade</w>\": 37218,\n  \"meado\": 16402,\n  \"meadow\": 25213,\n  \"meadow</w>\": 17195,\n  \"meadows</w>\": 17178,\n  \"meal\": 29662,\n  \"meal</w>\": 5478,\n  \"meals</w>\": 11229,\n  \"mean\": 4189,\n  \"mean</w>\": 3450,\n  \"meand\": 48015,\n  \"meaning\": 14586,\n  \"meaning</w>\": 8342,\n  \"meaningful</w>\": 17480,\n  \"meaningless</w>\": 48932,\n  \"meanings</w>\": 45814,\n  \"means</w>\": 3494,\n  \"meant</w>\": 8674,\n  \"meantime</w>\": 27499,\n  \"meanwhile</w>\": 9650,\n  \"meas\": 5867,\n  \"measles</w>\": 38230,\n  \"measurable</w>\": 48010,\n  \"measure\": 15261,\n  \"measure</w>\": 10579,\n  \"measured</w>\": 23154,\n  \"measurement</w>\": 20973,\n  \"measurements</w>\": 29894,\n  \"measures</w>\": 11936,\n  \"measuring</w>\": 18064,\n  \"meat\": 10805,\n  \"meat</w>\": 6480,\n  \"meatball</w>\": 43642,\n  \"meatballs</w>\": 29233,\n  \"meath</w>\": 37920,\n  \"meatless\": 48085,\n  \"meats</w>\": 29558,\n  \"mec</w>\": 27432,\n  \"mecca</w>\": 36095,\n  \"mech</w>\": 38305,\n  \"mechan\": 6715,\n  \"mechanic</w>\": 24582,\n  \"mechanical</w>\": 14467,\n  \"mechanics</w>\": 20536,\n  \"mechanism</w>\": 22576,\n  \"mechanisms</w>\": 28610,\n  \"meck\": 41908,\n  \"med\": 1948,\n  \"med</w>\": 2177,\n  \"meda</w>\": 33614,\n  \"medal\": 29714,\n  \"medal</w>\": 6974,\n  \"medalist</w>\": 21040,\n  \"medalists</w>\": 43397,\n  \"medalli\": 31349,\n  \"medallion</w>\": 43469,\n  \"medallist</w>\": 41472,\n  \"medals</w>\": 14710,\n  \"mede</w>\": 48225,\n  \"meded</w>\": 27627,\n  \"medi\": 1436,\n  \"media\": 22064,\n  \"media</w>\": 1895,\n  \"mediac\": 37490,\n  \"median</w>\": 30491,\n  \"mediation</w>\": 42829,\n  \"medic\": 3602,\n  \"medic</w>\": 35441,\n  \"medicaid</w>\": 25421,\n  \"medical\": 18432,\n  \"medical</w>\": 4116,\n  \"medicare</w>\": 23710,\n  \"medication</w>\": 23771,\n  \"medications</w>\": 37181,\n  \"medicinal</w>\": 28772,\n  \"medicine</w>\": 5616,\n  \"medicines</w>\": 26541,\n  \"medics</w>\": 46688,\n  \"medieval\": 38956,\n  \"medieval</w>\": 10789,\n  \"medina</w>\": 27281,\n  \"mediocre</w>\": 41170,\n  \"medit\": 19130,\n  \"meditate</w>\": 38039,\n  \"meditation</w>\": 10827,\n  \"mediter\": 14194,\n  \"mediterran\": 14358,\n  \"mediterranean</w>\": 15327,\n  \"medium</w>\": 8675,\n  \"medley</w>\": 24793,\n  \"meds</w>\": 25075,\n  \"medtech</w>\": 42044,\n  \"medusa</w>\": 44216,\n  \"medway</w>\": 42286,\n  \"mee\": 1725,\n  \"mee</w>\": 14075,\n  \"meek</w>\": 28935,\n  \"meen\": 37940,\n  \"meen</w>\": 46515,\n  \"meer\": 26714,\n  \"meer</w>\": 27555,\n  \"meet\": 5714,\n  \"meet</w>\": 1633,\n  \"meeting\": 48566,\n  \"meeting</w>\": 2071,\n  \"meetings</w>\": 9980,\n  \"meets</w>\": 5972,\n  \"meetthe\": 27575,\n  \"meetup</w>\": 15430,\n  \"meg\": 11500,\n  \"meg</w>\": 16186,\n  \"mega\": 15979,\n  \"mega</w>\": 9068,\n  \"megab\": 38103,\n  \"megadeth</w>\": 46741,\n  \"megal\": 37650,\n  \"megam\": 26073,\n  \"megan\": 19127,\n  \"megan</w>\": 11503,\n  \"megap\": 33624,\n  \"megat\": 35581,\n  \"megh\": 31192,\n  \"meghan\": 39939,\n  \"meghan</w>\": 18261,\n  \"meh\": 10512,\n  \"meh</w>\": 22211,\n  \"mehta</w>\": 25031,\n  \"mei\": 22564,\n  \"mei</w>\": 25198,\n  \"meier</w>\": 29812,\n  \"mein\": 28857,\n  \"mein</w>\": 21466,\n  \"meister</w>\": 28407,\n  \"mek</w>\": 44645,\n  \"mel\": 1902,\n  \"mel</w>\": 6834,\n  \"mela</w>\": 35032,\n  \"melan\": 22261,\n  \"melanch\": 44818,\n  \"melancholy</w>\": 47821,\n  \"melani\": 34031,\n  \"melania</w>\": 32796,\n  \"melanie</w>\": 22153,\n  \"melanoma</w>\": 40862,\n  \"melb\": 47007,\n  \"melb</w>\": 28980,\n  \"melbourne\": 28387,\n  \"melbourne</w>\": 6995,\n  \"melee</w>\": 45108,\n  \"meli\": 28885,\n  \"melinda</w>\": 46303,\n  \"melis\": 18913,\n  \"melissa\": 41866,\n  \"melissa</w>\": 13030,\n  \"mell\": 22531,\n  \"mell</w>\": 41583,\n  \"mello</w>\": 47594,\n  \"mellon</w>\": 45162,\n  \"mellow</w>\": 32034,\n  \"melo\": 10354,\n  \"melo</w>\": 22374,\n  \"melodic</w>\": 41877,\n  \"melodies</w>\": 38412,\n  \"melody</w>\": 19119,\n  \"melon</w>\": 12146,\n  \"melrose</w>\": 36296,\n  \"melt\": 22209,\n  \"melt</w>\": 15957,\n  \"meltdown</w>\": 30613,\n  \"melted</w>\": 23037,\n  \"melting</w>\": 19247,\n  \"melton</w>\": 46062,\n  \"melts</w>\": 31446,\n  \"melville</w>\": 46030,\n  \"melvin</w>\": 31544,\n  \"mely</w>\": 6373,\n  \"mem\": 4937,\n  \"mem</w>\": 34944,\n  \"memb\": 2114,\n  \"member\": 29566,\n  \"member</w>\": 1640,\n  \"members</w>\": 2567,\n  \"membership</w>\": 11562,\n  \"membrane</w>\": 34088,\n  \"meme\": 35157,\n  \"meme</w>\": 9169,\n  \"memes</w>\": 12828,\n  \"memo\": 15967,\n  \"memo</w>\": 19334,\n  \"memoir</w>\": 20532,\n  \"memoirs</w>\": 45311,\n  \"memor\": 1858,\n  \"memorab\": 26271,\n  \"memorabilia</w>\": 27488,\n  \"memorable</w>\": 13172,\n  \"memorial\": 16285,\n  \"memorial</w>\": 4642,\n  \"memorialday</w>\": 21598,\n  \"memoriam</w>\": 48191,\n  \"memories</w>\": 4304,\n  \"memory\": 44766,\n  \"memory</w>\": 5137,\n  \"memph\": 10285,\n  \"memphis\": 38432,\n  \"memphis</w>\": 11298,\n  \"men\": 1552,\n  \"men</w>\": 1656,\n  \"mena</w>\": 23052,\n  \"menace</w>\": 29949,\n  \"mend\": 8151,\n  \"mend</w>\": 46927,\n  \"mendel\": 49268,\n  \"mendes</w>\": 18060,\n  \"mendez</w>\": 48275,\n  \"mendo\": 19327,\n  \"mendoza</w>\": 23680,\n  \"meng\": 37102,\n  \"meng</w>\": 37450,\n  \"mening\": 46428,\n  \"menon</w>\": 38255,\n  \"menopau\": 34974,\n  \"menopause</w>\": 46026,\n  \"mens\": 16924,\n  \"mens</w>\": 10495,\n  \"mensfashion</w>\": 27578,\n  \"menstru\": 28345,\n  \"menstrual</w>\": 40915,\n  \"menswear</w>\": 18803,\n  \"ment\": 1585,\n  \"ment</w>\": 777,\n  \"mental\": 8611,\n  \"mental</w>\": 3448,\n  \"mentalhealth\": 20593,\n  \"mentalhealth</w>\": 13022,\n  \"mentality</w>\": 26647,\n  \"mentally</w>\": 14307,\n  \"mentary</w>\": 4468,\n  \"mentation</w>\": 9512,\n  \"mentday</w>\": 40397,\n  \"mente\": 40302,\n  \"mente</w>\": 36396,\n  \"mented</w>\": 9249,\n  \"menting</w>\": 14471,\n  \"mention\": 43881,\n  \"mention</w>\": 6762,\n  \"mentioned</w>\": 11948,\n  \"mentioning</w>\": 34290,\n  \"mentions</w>\": 12334,\n  \"mento</w>\": 30582,\n  \"mentor\": 45342,\n  \"mentor</w>\": 11642,\n  \"mentoring</w>\": 19610,\n  \"mentors</w>\": 20945,\n  \"mentorship</w>\": 33878,\n  \"ments</w>\": 1827,\n  \"menu</w>\": 6225,\n  \"menus</w>\": 33534,\n  \"meo</w>\": 30792,\n  \"meow\": 39965,\n  \"meow</w>\": 17246,\n  \"mep</w>\": 27095,\n  \"mer\": 1316,\n  \"mer</w>\": 2452,\n  \"mera</w>\": 20028,\n  \"merc\": 34357,\n  \"merc</w>\": 44399,\n  \"mercado</w>\": 45479,\n  \"merce\": 8409,\n  \"mercede\": 34959,\n  \"mercedes\": 26403,\n  \"mercedes</w>\": 10685,\n  \"mercedesam\": 40107,\n  \"mercedesbenz</w>\": 32347,\n  \"mercen\": 40301,\n  \"mercer</w>\": 21632,\n  \"merch</w>\": 11504,\n  \"merchandi\": 14954,\n  \"merchandise</w>\": 16808,\n  \"merchandising</w>\": 49196,\n  \"merchant</w>\": 19563,\n  \"merchants</w>\": 34427,\n  \"merci\": 23364,\n  \"merci</w>\": 29378,\n  \"mercur\": 11471,\n  \"mercury\": 45203,\n  \"mercury</w>\": 12653,\n  \"mercy\": 33249,\n  \"mercy</w>\": 10815,\n  \"mere\": 29657,\n  \"mere</w>\": 10342,\n  \"mered\": 24657,\n  \"mered</w>\": 32297,\n  \"meredith</w>\": 25103,\n  \"merely</w>\": 28718,\n  \"merge</w>\": 30406,\n  \"merged</w>\": 46492,\n  \"merger</w>\": 24744,\n  \"merging</w>\": 49256,\n  \"meri\": 17993,\n  \"meri</w>\": 36109,\n  \"meria</w>\": 48433,\n  \"meric</w>\": 27097,\n  \"merica</w>\": 30561,\n  \"meridi\": 37901,\n  \"meridian</w>\": 31195,\n  \"mering</w>\": 41060,\n  \"meringue</w>\": 41661,\n  \"merino</w>\": 42648,\n  \"merit</w>\": 20830,\n  \"merkel</w>\": 24715,\n  \"merle</w>\": 48586,\n  \"merlin</w>\": 26517,\n  \"merlot</w>\": 40424,\n  \"mermaid</w>\": 16064,\n  \"mermaids</w>\": 43617,\n  \"mero</w>\": 19097,\n  \"merr\": 48288,\n  \"merri\": 21462,\n  \"merrill</w>\": 47713,\n  \"merritt</w>\": 36462,\n  \"merry\": 14167,\n  \"merry</w>\": 5779,\n  \"merrychristmas</w>\": 19672,\n  \"mers</w>\": 4199,\n  \"mersal</w>\": 36711,\n  \"mersey\": 25248,\n  \"mersey</w>\": 46239,\n  \"merseyside</w>\": 35382,\n  \"mert</w>\": 48496,\n  \"merton</w>\": 35315,\n  \"mery</w>\": 40873,\n  \"meryl</w>\": 35787,\n  \"mes\": 28432,\n  \"mes</w>\": 3029,\n  \"mesa</w>\": 18956,\n  \"mese</w>\": 42018,\n  \"mesh</w>\": 15030,\n  \"mesm\": 18695,\n  \"mesmer\": 38435,\n  \"mesmeri\": 25985,\n  \"mesmerizing</w>\": 35637,\n  \"meso\": 25537,\n  \"mesqu\": 46819,\n  \"mess\": 2490,\n  \"mess</w>\": 8188,\n  \"message</w>\": 3918,\n  \"messages</w>\": 9390,\n  \"messaging</w>\": 23234,\n  \"messe</w>\": 40391,\n  \"messed</w>\": 23580,\n  \"messenger</w>\": 17389,\n  \"messi\": 19394,\n  \"messi</w>\": 11252,\n  \"messiah</w>\": 28737,\n  \"messing</w>\": 23144,\n  \"messy</w>\": 15987,\n  \"mest</w>\": 23780,\n  \"mester</w>\": 47349,\n  \"mesut</w>\": 49177,\n  \"met\": 5249,\n  \"met</w>\": 2340,\n  \"meta\": 14803,\n  \"meta</w>\": 22701,\n  \"metab\": 16150,\n  \"metabol\": 48389,\n  \"metaboli\": 25573,\n  \"metabolic</w>\": 34311,\n  \"metabolism</w>\": 27824,\n  \"metal\": 8935,\n  \"metal</w>\": 4044,\n  \"metall\": 19084,\n  \"metallic</w>\": 17257,\n  \"metallica</w>\": 24079,\n  \"metals</w>\": 21375,\n  \"metam\": 28862,\n  \"metamor\": 39030,\n  \"metamorpho\": 47601,\n  \"metaph\": 24189,\n  \"metaphor</w>\": 34233,\n  \"metast\": 41973,\n  \"mete\": 11226,\n  \"meteor\": 26429,\n  \"meteor</w>\": 26823,\n  \"meteoro\": 25948,\n  \"meteorologist</w>\": 42849,\n  \"meter</w>\": 10104,\n  \"meters</w>\": 13247,\n  \"metgala</w>\": 30089,\n  \"meth\": 21867,\n  \"meth</w>\": 26177,\n  \"methane</w>\": 37565,\n  \"metho\": 5770,\n  \"method</w>\": 10284,\n  \"methodist</w>\": 25165,\n  \"methodo\": 28488,\n  \"methodology</w>\": 37316,\n  \"methods</w>\": 12200,\n  \"methyl\": 48999,\n  \"metmuseum</w>\": 28207,\n  \"meto\": 25679,\n  \"metoo</w>\": 24722,\n  \"metr\": 15086,\n  \"metre</w>\": 27889,\n  \"metres</w>\": 19798,\n  \"metric</w>\": 19950,\n  \"metrical</w>\": 40704,\n  \"metrics</w>\": 24396,\n  \"metro\": 7257,\n  \"metro</w>\": 6784,\n  \"metroid</w>\": 39957,\n  \"metropolis</w>\": 40476,\n  \"metropolitan</w>\": 19013,\n  \"metry</w>\": 20039,\n  \"mets</w>\": 9633,\n  \"mett</w>\": 28081,\n  \"metz</w>\": 40506,\n  \"meu</w>\": 34520,\n  \"mew</w>\": 40368,\n  \"mex\": 3213,\n  \"mex</w>\": 18387,\n  \"mexic\": 31728,\n  \"mexican\": 37442,\n  \"mexican</w>\": 8186,\n  \"mexicans</w>\": 47729,\n  \"mexico\": 31834,\n  \"mexico</w>\": 4604,\n  \"mey\": 28584,\n  \"mey</w>\": 27777,\n  \"meyer</w>\": 13963,\n  \"meyers</w>\": 32326,\n  \"mez\": 30615,\n  \"mez</w>\": 46833,\n  \"mezz\": 38771,\n  \"mf\": 18199,\n  \"mf</w>\": 11067,\n  \"mfa</w>\": 24107,\n  \"mfc</w>\": 39474,\n  \"mfg</w>\": 21912,\n  \"mfw</w>\": 27309,\n  \"mg\": 10003,\n  \"mg</w>\": 8014,\n  \"mga</w>\": 23954,\n  \"mgm</w>\": 27572,\n  \"mgmt</w>\": 22288,\n  \"mgr</w>\": 31500,\n  \"mgs</w>\": 48073,\n  \"mgt</w>\": 48663,\n  \"mh\": 9962,\n  \"mh</w>\": 10834,\n  \"mha</w>\": 41944,\n  \"mhealth</w>\": 41225,\n  \"mhs</w>\": 28815,\n  \"mhz</w>\": 31550,\n  \"mi\": 714,\n  \"mi</w>\": 2251,\n  \"mia</w>\": 5852,\n  \"miam\": 31053,\n  \"miami\": 15106,\n  \"miami</w>\": 4891,\n  \"mian</w>\": 24792,\n  \"miaw</w>\": 36046,\n  \"mib</w>\": 48178,\n  \"mic\": 1213,\n  \"mic</w>\": 3816,\n  \"mica</w>\": 41551,\n  \"micah</w>\": 33870,\n  \"mice</w>\": 19030,\n  \"mich\": 25628,\n  \"mich</w>\": 23029,\n  \"micha\": 2083,\n  \"michael\": 6051,\n  \"michael</w>\": 2511,\n  \"michaela</w>\": 41897,\n  \"michaeljackson</w>\": 33532,\n  \"michaels</w>\": 23868,\n  \"michal\": 47144,\n  \"miche\": 37966,\n  \"micheal</w>\": 43709,\n  \"michel\": 5158,\n  \"michel</w>\": 17153,\n  \"michelangelo</w>\": 41245,\n  \"michele</w>\": 20642,\n  \"michelin</w>\": 26330,\n  \"michelle\": 19028,\n  \"michelle</w>\": 8625,\n  \"michi\": 5658,\n  \"michigan\": 32344,\n  \"michigan</w>\": 6296,\n  \"mick\": 15171,\n  \"mick</w>\": 12592,\n  \"mickey\": 41813,\n  \"mickey</w>\": 13053,\n  \"micky</w>\": 43011,\n  \"micro\": 3160,\n  \"micro</w>\": 11374,\n  \"microbes</w>\": 44671,\n  \"microbi\": 19496,\n  \"microbial</w>\": 30335,\n  \"microbiology</w>\": 35348,\n  \"microbiome</w>\": 35148,\n  \"micron\": 48742,\n  \"microphone</w>\": 24643,\n  \"micropoetry</w>\": 35997,\n  \"microscope</w>\": 29114,\n  \"microscopy</w>\": 38431,\n  \"microsof\": 42424,\n  \"microsoft\": 38650,\n  \"microsoft</w>\": 7254,\n  \"microwave</w>\": 24240,\n  \"mics</w>\": 16554,\n  \"mid\": 2192,\n  \"mid</w>\": 4734,\n  \"midcentury</w>\": 48988,\n  \"midd\": 2983,\n  \"midday</w>\": 23390,\n  \"middle\": 9849,\n  \"middle</w>\": 3694,\n  \"middleeast</w>\": 32783,\n  \"middles\": 29769,\n  \"middlesbrough</w>\": 32436,\n  \"middlesex</w>\": 39154,\n  \"middleton</w>\": 23627,\n  \"middleweight</w>\": 35829,\n  \"midfield</w>\": 28116,\n  \"midfielder</w>\": 13423,\n  \"midget</w>\": 30734,\n  \"midi\": 39496,\n  \"midi</w>\": 27326,\n  \"midland</w>\": 24822,\n  \"midlands</w>\": 18062,\n  \"midnight\": 35746,\n  \"midnight</w>\": 6302,\n  \"mids</w>\": 40821,\n  \"midst</w>\": 24752,\n  \"midsummer</w>\": 35234,\n  \"midterm</w>\": 34365,\n  \"midterms</w>\": 32015,\n  \"midtown</w>\": 26069,\n  \"midway</w>\": 26536,\n  \"midweek</w>\": 29120,\n  \"midwest</w>\": 16627,\n  \"midwi\": 44802,\n  \"midwife</w>\": 37681,\n  \"midwives</w>\": 42355,\n  \"mie\": 20865,\n  \"mie</w>\": 10555,\n  \"miento</w>\": 46482,\n  \"mier</w>\": 36490,\n  \"mies</w>\": 8840,\n  \"miff\": 49398,\n  \"mig</w>\": 28743,\n  \"might</w>\": 2727,\n  \"mighty\": 26632,\n  \"mighty</w>\": 7815,\n  \"mign\": 41678,\n  \"migos</w>\": 44640,\n  \"migr\": 3736,\n  \"migra\": 28186,\n  \"migraine</w>\": 35360,\n  \"migrant</w>\": 18902,\n  \"migrants</w>\": 15814,\n  \"migrate</w>\": 41804,\n  \"migrating</w>\": 43604,\n  \"migration</w>\": 11891,\n  \"migu\": 12279,\n  \"miguel\": 33672,\n  \"miguel</w>\": 14436,\n  \"miho</w>\": 46870,\n  \"mii</w>\": 39896,\n  \"mik\": 15096,\n  \"mik</w>\": 46203,\n  \"mika\": 28609,\n  \"mika</w>\": 25185,\n  \"mike\": 5884,\n  \"mike</w>\": 3178,\n  \"mikel</w>\": 48865,\n  \"mikequind\": 33508,\n  \"mikequindazzi</w>\": 33551,\n  \"mikey\": 34934,\n  \"mikey</w>\": 23368,\n  \"mikha\": 30999,\n  \"mikhail</w>\": 38327,\n  \"miki</w>\": 48863,\n  \"miko</w>\": 35413,\n  \"miku</w>\": 37703,\n  \"mil\": 1469,\n  \"mil</w>\": 12826,\n  \"mila</w>\": 26183,\n  \"milan\": 30380,\n  \"milan</w>\": 8552,\n  \"milano</w>\": 18585,\n  \"milb</w>\": 42248,\n  \"mild</w>\": 16085,\n  \"mildly</w>\": 49059,\n  \"mile\": 7833,\n  \"mile</w>\": 6243,\n  \"mileage</w>\": 30579,\n  \"miler</w>\": 44680,\n  \"miles</w>\": 3446,\n  \"milestone</w>\": 13485,\n  \"milestones</w>\": 34025,\n  \"miley\": 25336,\n  \"miley</w>\": 14321,\n  \"mileycyrus</w>\": 28528,\n  \"milf</w>\": 45386,\n  \"milford</w>\": 35840,\n  \"mili\": 16698,\n  \"miliband</w>\": 41440,\n  \"milit\": 3715,\n  \"militant</w>\": 33629,\n  \"militants</w>\": 23974,\n  \"military\": 24498,\n  \"military</w>\": 4323,\n  \"militi\": 46625,\n  \"militia</w>\": 32114,\n  \"milk\": 13409,\n  \"milk</w>\": 5205,\n  \"milkshake</w>\": 29066,\n  \"milky\": 37320,\n  \"milky</w>\": 21120,\n  \"milkyway</w>\": 43246,\n  \"mill\": 4221,\n  \"mill</w>\": 6637,\n  \"milla</w>\": 49381,\n  \"millan\": 34930,\n  \"millan</w>\": 22188,\n  \"millar</w>\": 41851,\n  \"mille</w>\": 34066,\n  \"millen\": 48501,\n  \"millenni\": 10406,\n  \"millennial</w>\": 28357,\n  \"millennials</w>\": 18804,\n  \"millennium</w>\": 21116,\n  \"miller\": 21699,\n  \"miller</w>\": 5733,\n  \"milli\": 5340,\n  \"millie</w>\": 29283,\n  \"milling</w>\": 39133,\n  \"million\": 13154,\n  \"million</w>\": 2506,\n  \"millionaire</w>\": 25179,\n  \"millionaires</w>\": 47159,\n  \"millions</w>\": 8492,\n  \"mills</w>\": 10331,\n  \"millwall</w>\": 35902,\n  \"milly</w>\": 45794,\n  \"milne</w>\": 44590,\n  \"milner</w>\": 45230,\n  \"milo</w>\": 24548,\n  \"milton\": 39004,\n  \"milton</w>\": 17360,\n  \"milwau\": 13452,\n  \"milwaukee</w>\": 14259,\n  \"mim</w>\": 39379,\n  \"mimi</w>\": 27086,\n  \"mimic\": 47116,\n  \"mimic</w>\": 46519,\n  \"mimo\": 45551,\n  \"min\": 771,\n  \"min</w>\": 3331,\n  \"mina</w>\": 15281,\n  \"minaj</w>\": 25136,\n  \"minal</w>\": 40222,\n  \"minat</w>\": 33275,\n  \"mince</w>\": 32396,\n  \"mind\": 5890,\n  \"mind</w>\": 2575,\n  \"mindanao</w>\": 44228,\n  \"minded</w>\": 21330,\n  \"mindful</w>\": 28457,\n  \"mindfulness</w>\": 15707,\n  \"minding</w>\": 45337,\n  \"minds</w>\": 9244,\n  \"mindset</w>\": 14217,\n  \"mindy\": 46875,\n  \"mindy</w>\": 38551,\n  \"mine\": 20149,\n  \"mine</w>\": 3347,\n  \"minecraft</w>\": 15678,\n  \"mined</w>\": 48034,\n  \"minent</w>\": 12533,\n  \"miner\": 14109,\n  \"miner</w>\": 26572,\n  \"mineral</w>\": 17692,\n  \"minerals</w>\": 21169,\n  \"miners</w>\": 22119,\n  \"mines</w>\": 16211,\n  \"ming\": 10868,\n  \"ming</w>\": 2107,\n  \"mingham</w>\": 7590,\n  \"mingle</w>\": 38437,\n  \"mingly</w>\": 36909,\n  \"mington\": 49283,\n  \"mington</w>\": 23119,\n  \"minh</w>\": 48734,\n  \"minho</w>\": 21318,\n  \"mini\": 1810,\n  \"mini</w>\": 3954,\n  \"miniature\": 44298,\n  \"miniature</w>\": 16377,\n  \"miniatures</w>\": 38816,\n  \"minic\": 31522,\n  \"minim\": 10005,\n  \"minimal</w>\": 18458,\n  \"minimalism</w>\": 42594,\n  \"minimalist</w>\": 26641,\n  \"minimize</w>\": 38697,\n  \"minimum</w>\": 12244,\n  \"minindia</w>\": 28458,\n  \"mining</w>\": 8473,\n  \"minion</w>\": 28622,\n  \"minions</w>\": 27035,\n  \"minis\": 33409,\n  \"minis</w>\": 35976,\n  \"minister\": 25688,\n  \"minister</w>\": 3569,\n  \"ministerial</w>\": 33008,\n  \"ministers</w>\": 16406,\n  \"ministries</w>\": 27895,\n  \"ministry</w>\": 8742,\n  \"mink</w>\": 42017,\n  \"minn\": 45991,\n  \"minn</w>\": 47318,\n  \"minne\": 7083,\n  \"minneapolis</w>\": 16977,\n  \"minneso\": 9380,\n  \"minnesota</w>\": 9968,\n  \"minnie</w>\": 24493,\n  \"mino</w>\": 22791,\n  \"minogue</w>\": 44202,\n  \"minor</w>\": 8522,\n  \"minorities</w>\": 28119,\n  \"minority</w>\": 16210,\n  \"minors</w>\": 36789,\n  \"mins</w>\": 6196,\n  \"minsk</w>\": 46151,\n  \"minster</w>\": 11189,\n  \"mint\": 48084,\n  \"mint</w>\": 7506,\n  \"minted</w>\": 49377,\n  \"minton</w>\": 20050,\n  \"minu\": 29064,\n  \"minus</w>\": 15358,\n  \"minute\": 28931,\n  \"minute</w>\": 4497,\n  \"minutes</w>\": 3056,\n  \"mio</w>\": 26366,\n  \"mir\": 2750,\n  \"mir</w>\": 6585,\n  \"mira\": 21665,\n  \"mira</w>\": 22762,\n  \"mirac\": 13685,\n  \"miracle\": 49208,\n  \"miracle</w>\": 11543,\n  \"miracles</w>\": 23478,\n  \"miraculous</w>\": 38671,\n  \"mirage</w>\": 28679,\n  \"mirai</w>\": 49060,\n  \"mirand\": 32367,\n  \"miranda</w>\": 17590,\n  \"mire\": 38140,\n  \"mire</w>\": 30140,\n  \"miri\": 22273,\n  \"miriam</w>\": 30950,\n  \"miro\": 34851,\n  \"miro</w>\": 48317,\n  \"mirren</w>\": 47600,\n  \"mirro\": 48500,\n  \"mirror\": 29823,\n  \"mirror</w>\": 7220,\n  \"mirrors</w>\": 21823,\n  \"mirza</w>\": 36440,\n  \"mis\": 866,\n  \"mis</w>\": 11239,\n  \"mischief</w>\": 33896,\n  \"misconceptions</w>\": 48681,\n  \"misconduct</w>\": 30601,\n  \"mise\": 46567,\n  \"mise</w>\": 17267,\n  \"miser\": 33394,\n  \"miserable</w>\": 26196,\n  \"misery</w>\": 28360,\n  \"mises</w>\": 24390,\n  \"misfits</w>\": 42708,\n  \"mish\": 15494,\n  \"mish</w>\": 20981,\n  \"misha</w>\": 35434,\n  \"mishra</w>\": 33042,\n  \"misleading</w>\": 30862,\n  \"mism</w>\": 15948,\n  \"miso\": 27657,\n  \"miso</w>\": 33441,\n  \"misogy\": 31315,\n  \"misogyny</w>\": 48415,\n  \"miss\": 6984,\n  \"miss</w>\": 1526,\n  \"missal</w>\": 38337,\n  \"missed</w>\": 3955,\n  \"misses</w>\": 15844,\n  \"missi\": 3008,\n  \"missile</w>\": 14411,\n  \"missiles</w>\": 27868,\n  \"missin</w>\": 36209,\n  \"missing\": 23509,\n  \"missing</w>\": 3423,\n  \"mission\": 12738,\n  \"mission</w>\": 2406,\n  \"missionaries</w>\": 40580,\n  \"missionary</w>\": 27915,\n  \"missions</w>\": 6990,\n  \"mississ\": 26483,\n  \"mississauga</w>\": 28393,\n  \"mississi\": 11687,\n  \"mississippi</w>\": 12232,\n  \"missou\": 30710,\n  \"missoula</w>\": 48549,\n  \"missouri</w>\": 11835,\n  \"missuni\": 26347,\n  \"missuniverse</w>\": 28766,\n  \"missy\": 48105,\n  \"missy</w>\": 31515,\n  \"missyou</w>\": 45799,\n  \"mist\": 12610,\n  \"mist</w>\": 11946,\n  \"mistak\": 20478,\n  \"mistake</w>\": 11303,\n  \"mistaken</w>\": 29182,\n  \"mistakenly</w>\": 48494,\n  \"mistakes</w>\": 12824,\n  \"mister\": 26949,\n  \"mister</w>\": 18895,\n  \"mistle\": 46800,\n  \"mistletoe</w>\": 48569,\n  \"mistre\": 42039,\n  \"mistress</w>\": 24349,\n  \"mists</w>\": 28636,\n  \"misty</w>\": 18799,\n  \"misunderstood</w>\": 41574,\n  \"misuse</w>\": 40970,\n  \"mit\": 3303,\n  \"mit</w>\": 4551,\n  \"mita</w>\": 47514,\n  \"mitage</w>\": 27964,\n  \"mitch\": 6969,\n  \"mitch</w>\": 14150,\n  \"mitchell\": 39339,\n  \"mitchell</w>\": 9007,\n  \"mite</w>\": 26929,\n  \"mith\": 21752,\n  \"mith</w>\": 17948,\n  \"miti\": 17857,\n  \"mitigate</w>\": 42273,\n  \"mitigation</w>\": 35514,\n  \"mito\": 38254,\n  \"mitochondri\": 42132,\n  \"mitra</w>\": 47703,\n  \"mits</w>\": 24086,\n  \"mitsu\": 17905,\n  \"mitsubi\": 21604,\n  \"mitsubishi</w>\": 23030,\n  \"mitt\": 17321,\n  \"mitt</w>\": 21341,\n  \"mitted</w>\": 10307,\n  \"mitting</w>\": 27938,\n  \"mitz\": 41827,\n  \"mium</w>\": 35891,\n  \"miwx</w>\": 43941,\n  \"mix\": 3210,\n  \"mix</w>\": 3285,\n  \"mixed\": 29376,\n  \"mixed</w>\": 6780,\n  \"mixer</w>\": 17200,\n  \"mixers</w>\": 39175,\n  \"mixes</w>\": 19061,\n  \"mixing</w>\": 15588,\n  \"mixtape</w>\": 11044,\n  \"mixture</w>\": 28286,\n  \"miy\": 25695,\n  \"miya</w>\": 36257,\n  \"miz\": 20881,\n  \"miz</w>\": 30795,\n  \"mize</w>\": 19076,\n  \"mized</w>\": 43418,\n  \"mizing</w>\": 38715,\n  \"mizz\": 19985,\n  \"mizzou</w>\": 26165,\n  \"mj\": 13117,\n  \"mj</w>\": 14733,\n  \"mk\": 11581,\n  \"mk</w>\": 8937,\n  \"mke</w>\": 36642,\n  \"mkt</w>\": 24814,\n  \"ml\": 3627,\n  \"ml</w>\": 5780,\n  \"mla</w>\": 16723,\n  \"mlas</w>\": 48464,\n  \"mlb\": 21039,\n  \"mlb</w>\": 7482,\n  \"mley</w>\": 40329,\n  \"mlg</w>\": 45801,\n  \"mlin</w>\": 24556,\n  \"mlk</w>\": 17941,\n  \"mlkday</w>\": 39905,\n  \"mlm</w>\": 37611,\n  \"mln</w>\": 18971,\n  \"mlp</w>\": 23620,\n  \"mlpfi\": 45475,\n  \"mlpfim</w>\": 45640,\n  \"mls</w>\": 13077,\n  \"mm\": 1028,\n  \"mm</w>\": 2848,\n  \"mma\": 34140,\n  \"mma</w>\": 6096,\n  \"mmc</w>\": 44253,\n  \"mme</w>\": 13105,\n  \"mmed</w>\": 19570,\n  \"mmer\": 35717,\n  \"mmer</w>\": 7508,\n  \"mmers</w>\": 28128,\n  \"mmes</w>\": 42862,\n  \"mmi</w>\": 34147,\n  \"mming\": 21038,\n  \"mming</w>\": 16507,\n  \"mmings</w>\": 31357,\n  \"mmit</w>\": 41050,\n  \"mmj</w>\": 43015,\n  \"mmm\": 37908,\n  \"mmm</w>\": 7641,\n  \"mmmm\": 36312,\n  \"mmmm</w>\": 13180,\n  \"mmmmm</w>\": 21808,\n  \"mmmmmm</w>\": 43740,\n  \"mmo</w>\": 30418,\n  \"mmon</w>\": 41131,\n  \"mmor\": 36657,\n  \"mmorpg</w>\": 39476,\n  \"mms</w>\": 37803,\n  \"mmva</w>\": 42666,\n  \"mmy\": 28837,\n  \"mmy</w>\": 8722,\n  \"mn\": 5086,\n  \"mn</w>\": 4057,\n  \"mna</w>\": 34877,\n  \"mnd</w>\": 44776,\n  \"mnet</w>\": 34129,\n  \"mnf</w>\": 41105,\n  \"mnl</w>\": 32980,\n  \"mnleg</w>\": 42653,\n  \"mns</w>\": 39040,\n  \"mnt</w>\": 21477,\n  \"mntwins</w>\": 45448,\n  \"mnwild</w>\": 39044,\n  \"mnwx</w>\": 39592,\n  \"mo\": 617,\n  \"mo</w>\": 2080,\n  \"moa</w>\": 33174,\n  \"moana</w>\": 43241,\n  \"mob\": 2818,\n  \"mob</w>\": 12754,\n  \"mobi\": 9451,\n  \"mobil\": 26343,\n  \"mobil</w>\": 29815,\n  \"mobile\": 12935,\n  \"mobile</w>\": 3451,\n  \"mobiles</w>\": 44302,\n  \"mobili\": 20770,\n  \"mobility</w>\": 12546,\n  \"mobilization</w>\": 48916,\n  \"moby</w>\": 47219,\n  \"moc\": 41439,\n  \"moc</w>\": 36992,\n  \"mocha</w>\": 28425,\n  \"mochi</w>\": 47973,\n  \"mock\": 15641,\n  \"mock</w>\": 12759,\n  \"mocked</w>\": 47400,\n  \"mocking\": 28692,\n  \"mocking</w>\": 37870,\n  \"mocks</w>\": 35142,\n  \"mod\": 6362,\n  \"mod</w>\": 10893,\n  \"moda</w>\": 25814,\n  \"modal</w>\": 33157,\n  \"mode\": 20402,\n  \"mode</w>\": 6493,\n  \"model\": 4591,\n  \"model</w>\": 2863,\n  \"modeled</w>\": 39527,\n  \"modeling</w>\": 13706,\n  \"modelling</w>\": 19946,\n  \"models</w>\": 6176,\n  \"moder\": 2894,\n  \"moderate</w>\": 16435,\n  \"moderated</w>\": 27928,\n  \"moderating</w>\": 34242,\n  \"moderator</w>\": 32659,\n  \"modern\": 11706,\n  \"modern</w>\": 4077,\n  \"modernart</w>\": 34417,\n  \"moderni\": 24328,\n  \"modernism</w>\": 39601,\n  \"modernist</w>\": 36773,\n  \"modernization</w>\": 47294,\n  \"modes</w>\": 30454,\n  \"modest</w>\": 25436,\n  \"modi\": 9047,\n  \"modi</w>\": 7774,\n  \"modification</w>\": 37630,\n  \"modified</w>\": 17964,\n  \"modo</w>\": 36820,\n  \"mods</w>\": 23843,\n  \"modu\": 9036,\n  \"modular</w>\": 22437,\n  \"module</w>\": 16757,\n  \"modules</w>\": 30575,\n  \"moe\": 38655,\n  \"moe</w>\": 17938,\n  \"mof\": 30798,\n  \"moff\": 27160,\n  \"mog</w>\": 42362,\n  \"moga\": 41732,\n  \"mogadishu</w>\": 45133,\n  \"mogul</w>\": 41320,\n  \"moh\": 18979,\n  \"moh</w>\": 35388,\n  \"moha\": 46892,\n  \"moham\": 7923,\n  \"mohamed</w>\": 18472,\n  \"mohammad</w>\": 19926,\n  \"mohammed</w>\": 16168,\n  \"mohan\": 26521,\n  \"mohan</w>\": 23586,\n  \"mohawk</w>\": 34942,\n  \"mohd</w>\": 49094,\n  \"mohsin</w>\": 48861,\n  \"moi\": 20691,\n  \"moi</w>\": 21825,\n  \"moil</w>\": 30349,\n  \"moines</w>\": 32091,\n  \"moist\": 19831,\n  \"moist</w>\": 33263,\n  \"moisture</w>\": 20412,\n  \"moisturi\": 25942,\n  \"moj\": 34505,\n  \"moja\": 49055,\n  \"mojito</w>\": 46830,\n  \"mojo</w>\": 25204,\n  \"mok\": 49146,\n  \"mol\": 4246,\n  \"mol</w>\": 31582,\n  \"mold</w>\": 21846,\n  \"molding</w>\": 46274,\n  \"moldova</w>\": 47317,\n  \"mole\": 9927,\n  \"mole</w>\": 23529,\n  \"molecular</w>\": 19370,\n  \"molecule</w>\": 39233,\n  \"molecules</w>\": 35643,\n  \"molina</w>\": 34201,\n  \"mollie</w>\": 48203,\n  \"molly\": 24368,\n  \"molly</w>\": 12573,\n  \"molo\": 41510,\n  \"mology</w>\": 32255,\n  \"molten</w>\": 46071,\n  \"moly</w>\": 47083,\n  \"mom\": 1614,\n  \"mom</w>\": 2543,\n  \"moma</w>\": 33605,\n  \"mombasa</w>\": 40340,\n  \"moment\": 12197,\n  \"moment</w>\": 2495,\n  \"momento</w>\": 30078,\n  \"moments</w>\": 5251,\n  \"momentum</w>\": 15722,\n  \"momlife</w>\": 43825,\n  \"momma</w>\": 14508,\n  \"mommy</w>\": 12456,\n  \"momo\": 48490,\n  \"momo</w>\": 25980,\n  \"moms\": 28446,\n  \"moms</w>\": 10042,\n  \"momsdemand</w>\": 33744,\n  \"mon\": 749,\n  \"mon</w>\": 2173,\n  \"mona</w>\": 19143,\n  \"monaco</w>\": 14938,\n  \"monaghan</w>\": 39797,\n  \"monarch\": 27235,\n  \"monarch</w>\": 22619,\n  \"monarchs</w>\": 36750,\n  \"monarchy</w>\": 47503,\n  \"monaster\": 19422,\n  \"monastery</w>\": 21850,\n  \"monc\": 34847,\n  \"moncton</w>\": 44962,\n  \"mond\": 14522,\n  \"mond</w>\": 4475,\n  \"monday\": 6205,\n  \"monday</w>\": 2098,\n  \"mondaymorning</w>\": 40089,\n  \"mondaymotiv\": 45488,\n  \"mondaymotivation</w>\": 8198,\n  \"mondaymotivaton</w>\": 47034,\n  \"mondays</w>\": 13815,\n  \"monde</w>\": 29339,\n  \"mondo</w>\": 36207,\n  \"monds</w>\": 20317,\n  \"mone</w>\": 25990,\n  \"monet</w>\": 24499,\n  \"monetary</w>\": 26394,\n  \"moneti\": 38056,\n  \"money\": 12743,\n  \"money</w>\": 2327,\n  \"mong</w>\": 43566,\n  \"monger</w>\": 38928,\n  \"mongers</w>\": 27670,\n  \"mongo\": 20680,\n  \"mongolia</w>\": 27144,\n  \"mongolian</w>\": 46335,\n  \"moni\": 46851,\n  \"monia</w>\": 31161,\n  \"monic\": 30893,\n  \"monica</w>\": 13540,\n  \"monit\": 9014,\n  \"monitor</w>\": 10198,\n  \"monitored</w>\": 45828,\n  \"monitoring</w>\": 11030,\n  \"monitors</w>\": 30478,\n  \"monk\": 30557,\n  \"monk</w>\": 16424,\n  \"monkey\": 29597,\n  \"monkey</w>\": 9465,\n  \"monkeys</w>\": 15781,\n  \"monks</w>\": 29090,\n  \"monmouth</w>\": 36929,\n  \"mono\": 8220,\n  \"mono</w>\": 22537,\n  \"monochrome</w>\": 25576,\n  \"monogram</w>\": 39665,\n  \"monologue</w>\": 47776,\n  \"monopoly</w>\": 25241,\n  \"monoxide</w>\": 49314,\n  \"monro\": 45750,\n  \"monroe</w>\": 13625,\n  \"mons</w>\": 19885,\n  \"monsanto</w>\": 37592,\n  \"monsi\": 46677,\n  \"monsieur</w>\": 48879,\n  \"monsoon</w>\": 18872,\n  \"monsta</w>\": 30718,\n  \"monstax</w>\": 45631,\n  \"monste\": 47045,\n  \"monster\": 14454,\n  \"monster</w>\": 6060,\n  \"monsters</w>\": 11546,\n  \"mont\": 5186,\n  \"mont</w>\": 5382,\n  \"montag\": 37202,\n  \"montage</w>\": 32325,\n  \"montal\": 42126,\n  \"montan\": 28405,\n  \"montana</w>\": 11436,\n  \"monte\": 8711,\n  \"monte</w>\": 14667,\n  \"montene\": 28538,\n  \"montenegro</w>\": 30378,\n  \"monter\": 36673,\n  \"monterey</w>\": 23388,\n  \"monterrey</w>\": 45254,\n  \"montess\": 43205,\n  \"montessori</w>\": 45443,\n  \"montgom\": 13852,\n  \"montgomery</w>\": 14951,\n  \"month\": 7680,\n  \"month</w>\": 1924,\n  \"monthly</w>\": 8764,\n  \"months</w>\": 3109,\n  \"monthsary</w>\": 42420,\n  \"monton</w>\": 41961,\n  \"montp\": 39523,\n  \"montre\": 8434,\n  \"montreal</w>\": 9262,\n  \"montrose</w>\": 42347,\n  \"monty\": 43997,\n  \"monty</w>\": 24038,\n  \"monu\": 9748,\n  \"monument</w>\": 12019,\n  \"monumental</w>\": 31297,\n  \"monuments</w>\": 26916,\n  \"mony</w>\": 4117,\n  \"monza</w>\": 40380,\n  \"moo\": 4953,\n  \"moo</w>\": 24626,\n  \"mood\": 42358,\n  \"mood</w>\": 5394,\n  \"moods</w>\": 43727,\n  \"moody</w>\": 17170,\n  \"moom\": 36887,\n  \"moon\": 6334,\n  \"moon</w>\": 3293,\n  \"mooney</w>\": 37942,\n  \"moonlight</w>\": 20001,\n  \"moons</w>\": 29887,\n  \"moonshine</w>\": 46706,\n  \"moor\": 14817,\n  \"moor</w>\": 11877,\n  \"moore\": 28613,\n  \"moore</w>\": 6708,\n  \"moors</w>\": 32577,\n  \"moose\": 37562,\n  \"moose</w>\": 17338,\n  \"moot</w>\": 46895,\n  \"mop</w>\": 33900,\n  \"mopar</w>\": 41166,\n  \"mor\": 657,\n  \"mor</w>\": 18614,\n  \"mora</w>\": 29262,\n  \"moral</w>\": 11246,\n  \"morale</w>\": 39404,\n  \"morales</w>\": 27117,\n  \"morality</w>\": 34133,\n  \"morally</w>\": 42519,\n  \"morals</w>\": 46223,\n  \"moran</w>\": 21557,\n  \"moray</w>\": 44569,\n  \"more\": 5434,\n  \"more</w>\": 750,\n  \"morecam\": 37305,\n  \"morecambe</w>\": 43414,\n  \"mored</w>\": 20195,\n  \"moreland</w>\": 44135,\n  \"moreno</w>\": 24826,\n  \"morethan\": 30889,\n  \"morg\": 34284,\n  \"morgan\": 15432,\n  \"morgan</w>\": 6075,\n  \"morgen</w>\": 35106,\n  \"mori\": 25710,\n  \"mori</w>\": 29514,\n  \"moris\": 43131,\n  \"moritz</w>\": 45594,\n  \"morley</w>\": 40439,\n  \"mormon</w>\": 27715,\n  \"morn</w>\": 22393,\n  \"mornin</w>\": 28327,\n  \"morning\": 10769,\n  \"morning</w>\": 1119,\n  \"mornings</w>\": 12106,\n  \"moro</w>\": 31613,\n  \"moroc\": 11996,\n  \"moroccan</w>\": 27546,\n  \"morocco</w>\": 15228,\n  \"moron</w>\": 31875,\n  \"morons</w>\": 46477,\n  \"morow</w>\": 40779,\n  \"morph\": 23915,\n  \"morph</w>\": 41700,\n  \"morphe\": 38978,\n  \"morpho\": 38622,\n  \"morrha\": 43044,\n  \"morri\": 9876,\n  \"morris\": 22560,\n  \"morris</w>\": 9090,\n  \"morrison\": 40961,\n  \"morrison</w>\": 14094,\n  \"morrisons</w>\": 40965,\n  \"morrissey</w>\": 30040,\n  \"morro</w>\": 48363,\n  \"morrow</w>\": 21611,\n  \"mors</w>\": 13064,\n  \"morse</w>\": 25282,\n  \"mort\": 24257,\n  \"mort</w>\": 30583,\n  \"mortal\": 31883,\n  \"mortal</w>\": 14680,\n  \"mortality</w>\": 20347,\n  \"mortar</w>\": 27258,\n  \"mortg\": 12069,\n  \"mortgage</w>\": 13988,\n  \"mortgages</w>\": 45391,\n  \"mortimer</w>\": 47836,\n  \"morton</w>\": 20698,\n  \"morty</w>\": 37391,\n  \"mory</w>\": 22633,\n  \"mos\": 28658,\n  \"mos</w>\": 9593,\n  \"mosa\": 14164,\n  \"mosa</w>\": 23809,\n  \"mosaic</w>\": 17506,\n  \"mosch\": 47003,\n  \"mosco\": 9840,\n  \"moscow</w>\": 10371,\n  \"moseley</w>\": 47080,\n  \"moses</w>\": 18451,\n  \"mosley</w>\": 46228,\n  \"mosqu\": 15215,\n  \"mosque</w>\": 12694,\n  \"mosques</w>\": 41214,\n  \"mosquit\": 39699,\n  \"mosquito</w>\": 25083,\n  \"mosquitoes</w>\": 41870,\n  \"moss\": 25107,\n  \"moss</w>\": 12815,\n  \"most\": 7034,\n  \"most</w>\": 1096,\n  \"mostly</w>\": 8829,\n  \"mosul</w>\": 29165,\n  \"mot\": 16352,\n  \"mot</w>\": 15452,\n  \"mota</w>\": 42499,\n  \"motd</w>\": 46232,\n  \"motel</w>\": 26191,\n  \"moth\": 33208,\n  \"moth</w>\": 11736,\n  \"mother\": 7455,\n  \"mother</w>\": 3050,\n  \"motherhood</w>\": 32274,\n  \"motherland</w>\": 46774,\n  \"mothers</w>\": 10546,\n  \"mothersday</w>\": 15583,\n  \"motherwell</w>\": 48104,\n  \"moths</w>\": 29086,\n  \"moti\": 38210,\n  \"motif</w>\": 35373,\n  \"motion\": 32139,\n  \"motion</w>\": 7860,\n  \"motiv\": 3183,\n  \"motivate</w>\": 26771,\n  \"motivated</w>\": 16521,\n  \"motivates</w>\": 44684,\n  \"motivating</w>\": 37720,\n  \"motivation\": 26117,\n  \"motivation</w>\": 4193,\n  \"motivational\": 32832,\n  \"motivational</w>\": 20472,\n  \"motivationmonday</w>\": 28703,\n  \"motive</w>\": 36669,\n  \"motley</w>\": 42553,\n  \"motm</w>\": 41192,\n  \"moto\": 10646,\n  \"moto</w>\": 11431,\n  \"motocross</w>\": 34562,\n  \"motogp</w>\": 16615,\n  \"motor\": 3975,\n  \"motor</w>\": 7659,\n  \"motorbike</w>\": 33341,\n  \"motorcycle</w>\": 10297,\n  \"motorcycles</w>\": 24869,\n  \"motoring</w>\": 44491,\n  \"motorists</w>\": 32766,\n  \"motorola</w>\": 33738,\n  \"motors</w>\": 14989,\n  \"motorsport</w>\": 18371,\n  \"motorsports</w>\": 24264,\n  \"motorway</w>\": 31808,\n  \"motown</w>\": 32685,\n  \"mott\": 44570,\n  \"mott</w>\": 21708,\n  \"motto</w>\": 23338,\n  \"mou\": 2809,\n  \"mou</w>\": 25289,\n  \"moud</w>\": 37698,\n  \"moul\": 25725,\n  \"mould</w>\": 36743,\n  \"moulin</w>\": 47656,\n  \"moun\": 2023,\n  \"mound</w>\": 21414,\n  \"mount\": 20553,\n  \"mount</w>\": 5532,\n  \"mountain\": 14547,\n  \"mountain</w>\": 3965,\n  \"mountaine\": 24841,\n  \"mountaineer</w>\": 49255,\n  \"mountains</w>\": 5873,\n  \"mounted</w>\": 17897,\n  \"mounting</w>\": 29910,\n  \"mounts</w>\": 36767,\n  \"mour\": 9053,\n  \"mour</w>\": 42446,\n  \"moured</w>\": 29555,\n  \"mourinho</w>\": 18536,\n  \"mourn</w>\": 33592,\n  \"mourning</w>\": 24169,\n  \"mourns</w>\": 42811,\n  \"mous\": 24837,\n  \"mous</w>\": 17425,\n  \"mouse\": 33032,\n  \"mouse</w>\": 9301,\n  \"mousse</w>\": 31869,\n  \"moustache</w>\": 32795,\n  \"mouth\": 15152,\n  \"mouth</w>\": 4932,\n  \"mouths</w>\": 38518,\n  \"mov</w>\": 23950,\n  \"move\": 16624,\n  \"move</w>\": 2783,\n  \"moved</w>\": 6997,\n  \"movember</w>\": 23474,\n  \"movement</w>\": 5208,\n  \"movements</w>\": 19665,\n  \"mover</w>\": 37673,\n  \"movers</w>\": 33957,\n  \"moves</w>\": 6880,\n  \"movi\": 1707,\n  \"movic</w>\": 43838,\n  \"movie\": 11247,\n  \"movie</w>\": 2016,\n  \"movies</w>\": 4772,\n  \"moving\": 32160,\n  \"moving</w>\": 3584,\n  \"mow\": 31006,\n  \"mow</w>\": 36329,\n  \"mower</w>\": 30895,\n  \"mowing</w>\": 46424,\n  \"mowx</w>\": 44263,\n  \"moy\": 27276,\n  \"moy</w>\": 34205,\n  \"moyes</w>\": 37119,\n  \"moz\": 14761,\n  \"moz</w>\": 43738,\n  \"mozam\": 26648,\n  \"mozambique</w>\": 28831,\n  \"mozart</w>\": 22132,\n  \"mozz\": 26317,\n  \"mozzarella</w>\": 27845,\n  \"mp\": 1037,\n  \"mp</w>\": 1246,\n  \"mpa</w>\": 30749,\n  \"mpc</w>\": 38560,\n  \"mpd</w>\": 33814,\n  \"mped</w>\": 28134,\n  \"mper</w>\": 22803,\n  \"mpg\": 39830,\n  \"mpg</w>\": 37454,\n  \"mpgvip</w>\": 42149,\n  \"mph</w>\": 5306,\n  \"mpi</w>\": 43263,\n  \"mping</w>\": 27999,\n  \"mple</w>\": 21139,\n  \"mplo\": 47071,\n  \"mpls</w>\": 34298,\n  \"mpo</w>\": 33674,\n  \"mpp</w>\": 39570,\n  \"mps</w>\": 5504,\n  \"mption</w>\": 9717,\n  \"mpton</w>\": 27448,\n  \"mpu\": 47156,\n  \"mpus</w>\": 25864,\n  \"mpy</w>\": 17192,\n  \"mq\": 19103,\n  \"mqm</w>\": 24687,\n  \"mr\": 3139,\n  \"mr</w>\": 1982,\n  \"mra\": 44568,\n  \"mrc</w>\": 25897,\n  \"mri</w>\": 24773,\n  \"mrs\": 25003,\n  \"mrs</w>\": 4255,\n  \"mrt</w>\": 30256,\n  \"mru</w>\": 22370,\n  \"mrw</w>\": 15303,\n  \"ms\": 3525,\n  \"ms</w>\": 988,\n  \"msa</w>\": 36306,\n  \"msc\": 31826,\n  \"msc</w>\": 20529,\n  \"msd\": 25804,\n  \"msd</w>\": 36407,\n  \"msdhoni</w>\": 32850,\n  \"msf</w>\": 36239,\n  \"msg\": 44430,\n  \"msg</w>\": 10928,\n  \"msh\": 41751,\n  \"msi\": 43597,\n  \"msi</w>\": 45278,\n  \"msk\": 38501,\n  \"msl</w>\": 42736,\n  \"msm</w>\": 22210,\n  \"msn\": 18824,\n  \"msn</w>\": 41042,\n  \"msnbc</w>\": 20245,\n  \"mson\": 27773,\n  \"mson</w>\": 12298,\n  \"msp\": 41445,\n  \"msp</w>\": 22318,\n  \"mss\": 42136,\n  \"mss</w>\": 48610,\n  \"mst</w>\": 26335,\n  \"msu\": 26763,\n  \"msu</w>\": 17298,\n  \"mswx</w>\": 42957,\n  \"msy</w>\": 43919,\n  \"mt\": 4252,\n  \"mt</w>\": 3284,\n  \"mta</w>\": 28691,\n  \"mtb\": 48306,\n  \"mtb</w>\": 18747,\n  \"mtc</w>\": 42482,\n  \"mtg\": 49142,\n  \"mtg</w>\": 13648,\n  \"mth</w>\": 48151,\n  \"mtl</w>\": 22135,\n  \"mtn\": 26041,\n  \"mtn</w>\": 18953,\n  \"mtr</w>\": 46650,\n  \"mts</w>\": 38751,\n  \"mtv\": 8099,\n  \"mtv</w>\": 12555,\n  \"mtvbr\": 47258,\n  \"mtvhottest</w>\": 16751,\n  \"mtvstars</w>\": 19948,\n  \"mu\": 670,\n  \"mu</w>\": 6411,\n  \"mua</w>\": 21395,\n  \"muay\": 44910,\n  \"muaythai</w>\": 47763,\n  \"mubarak</w>\": 17957,\n  \"muc</w>\": 49115,\n  \"much\": 14300,\n  \"much</w>\": 1238,\n  \"mucha</w>\": 42191,\n  \"muchas</w>\": 26278,\n  \"mucho</w>\": 19864,\n  \"muck\": 44731,\n  \"muck</w>\": 45330,\n  \"mud\": 17491,\n  \"mud</w>\": 11673,\n  \"mudder</w>\": 49104,\n  \"muddy</w>\": 21524,\n  \"mue\": 44383,\n  \"mue</w>\": 40717,\n  \"mueller\": 46863,\n  \"mueller</w>\": 14719,\n  \"muen\": 48646,\n  \"muer\": 33840,\n  \"muf\": 33852,\n  \"mufc</w>\": 9013,\n  \"muffin</w>\": 22696,\n  \"muffins</w>\": 25922,\n  \"mufti</w>\": 44930,\n  \"mug\": 16339,\n  \"mug</w>\": 9722,\n  \"mugabe</w>\": 36441,\n  \"mughal</w>\": 37508,\n  \"mugs</w>\": 22852,\n  \"mugshot</w>\": 40028,\n  \"muh\": 36335,\n  \"muh</w>\": 46475,\n  \"muham\": 10043,\n  \"muhammad</w>\": 12259,\n  \"muir\": 44650,\n  \"muir</w>\": 24745,\n  \"muj\": 44635,\n  \"muk\": 17327,\n  \"muk</w>\": 32600,\n  \"mukher\": 34575,\n  \"mukherjee</w>\": 37862,\n  \"mul\": 1899,\n  \"mul</w>\": 43193,\n  \"mula</w>\": 40937,\n  \"mulator</w>\": 17463,\n  \"mulberry</w>\": 39221,\n  \"mule</w>\": 28695,\n  \"mull\": 17313,\n  \"mull</w>\": 35310,\n  \"mulled</w>\": 44641,\n  \"mullen</w>\": 30797,\n  \"muller</w>\": 33956,\n  \"mullet</w>\": 35010,\n  \"mulligan</w>\": 44336,\n  \"mullins</w>\": 41265,\n  \"mult\": 34219,\n  \"multi\": 3947,\n  \"multi</w>\": 6400,\n  \"multic\": 21683,\n  \"multicul\": 28004,\n  \"multicultural</w>\": 34667,\n  \"multil\": 27975,\n  \"multimedia</w>\": 27977,\n  \"multin\": 38996,\n  \"multinational</w>\": 46540,\n  \"multip\": 40314,\n  \"multiplayer</w>\": 27460,\n  \"multiple</w>\": 6470,\n  \"multipurpose</w>\": 47665,\n  \"multit\": 27814,\n  \"multitasking</w>\": 48684,\n  \"mulus</w>\": 26180,\n  \"mum\": 15565,\n  \"mum</w>\": 4030,\n  \"mumb\": 5850,\n  \"mumbai\": 24279,\n  \"mumbai</w>\": 6971,\n  \"mumford</w>\": 46184,\n  \"mummy</w>\": 16301,\n  \"mums</w>\": 17868,\n  \"mun\": 2617,\n  \"mun</w>\": 21059,\n  \"muna</w>\": 48424,\n  \"munch\": 23587,\n  \"munch</w>\": 33299,\n  \"munchies</w>\": 44324,\n  \"munchkin</w>\": 41305,\n  \"mund</w>\": 14244,\n  \"mundo</w>\": 20990,\n  \"muni\": 27327,\n  \"muni</w>\": 39795,\n  \"munich</w>\": 13526,\n  \"munici\": 12159,\n  \"municipal\": 43667,\n  \"municipal</w>\": 16600,\n  \"municipality</w>\": 29987,\n  \"munition</w>\": 32668,\n  \"munro</w>\": 36501,\n  \"munster</w>\": 27201,\n  \"mup</w>\": 21966,\n  \"muppet</w>\": 40598,\n  \"muppets</w>\": 40187,\n  \"mups</w>\": 42195,\n  \"mur\": 2144,\n  \"mur</w>\": 18293,\n  \"mura\": 45176,\n  \"mural</w>\": 12315,\n  \"murals</w>\": 31499,\n  \"murder\": 28136,\n  \"murder</w>\": 5787,\n  \"murdered</w>\": 13158,\n  \"murderer</w>\": 26956,\n  \"murderers</w>\": 48472,\n  \"murdering</w>\": 36055,\n  \"murders</w>\": 22409,\n  \"murdoch</w>\": 29037,\n  \"murphy\": 48976,\n  \"murphy</w>\": 8914,\n  \"murray\": 31978,\n  \"murray</w>\": 7513,\n  \"murs</w>\": 38783,\n  \"mus\": 2198,\n  \"mus</w>\": 8103,\n  \"musa</w>\": 30540,\n  \"musc\": 5696,\n  \"muscat</w>\": 33322,\n  \"muscle\": 27323,\n  \"muscle</w>\": 9269,\n  \"muscles</w>\": 16786,\n  \"muscular</w>\": 30606,\n  \"muse\": 2369,\n  \"muse</w>\": 15686,\n  \"museo</w>\": 36457,\n  \"muses</w>\": 48243,\n  \"museu\": 27087,\n  \"museum\": 15602,\n  \"museum</w>\": 2786,\n  \"museums</w>\": 15542,\n  \"museumweek</w>\": 37996,\n  \"mush\": 7635,\n  \"mushroom</w>\": 13011,\n  \"mushrooms</w>\": 14730,\n  \"musi\": 15628,\n  \"music\": 4110,\n  \"music</w>\": 1179,\n  \"musica</w>\": 26668,\n  \"musical\": 36002,\n  \"musical</w>\": 5173,\n  \"musically</w>\": 48893,\n  \"musicals</w>\": 36974,\n  \"musichistory</w>\": 37890,\n  \"musician</w>\": 11179,\n  \"musicians</w>\": 12498,\n  \"musicislife</w>\": 43311,\n  \"musicmonday</w>\": 35887,\n  \"musicvideo</w>\": 26764,\n  \"musik</w>\": 32986,\n  \"musings</w>\": 44961,\n  \"musique</w>\": 42250,\n  \"musk\": 32143,\n  \"musk</w>\": 19063,\n  \"muskete\": 32775,\n  \"musketeers</w>\": 37993,\n  \"musko\": 34987,\n  \"muskoka</w>\": 40832,\n  \"musli\": 4958,\n  \"muslim\": 43795,\n  \"muslim</w>\": 7060,\n  \"muslims</w>\": 10513,\n  \"muss\": 41493,\n  \"mussels</w>\": 33393,\n  \"must\": 6783,\n  \"must</w>\": 2048,\n  \"mustache</w>\": 23451,\n  \"mustaf\": 23596,\n  \"mustafa</w>\": 29000,\n  \"mustang\": 42361,\n  \"mustang</w>\": 13309,\n  \"mustangs</w>\": 22500,\n  \"mustard</w>\": 15794,\n  \"muster</w>\": 47361,\n  \"mustread</w>\": 28978,\n  \"mut\": 12598,\n  \"mut</w>\": 22839,\n  \"mutant</w>\": 28384,\n  \"mutation</w>\": 38626,\n  \"mutations</w>\": 39651,\n  \"mute</w>\": 31252,\n  \"muted</w>\": 48028,\n  \"muth</w>\": 34280,\n  \"mutil\": 39950,\n  \"mutt</w>\": 45924,\n  \"mutu\": 17574,\n  \"mutual</w>\": 15055,\n  \"mutuals</w>\": 31158,\n  \"muy</w>\": 44625,\n  \"mv\": 10580,\n  \"mv</w>\": 8269,\n  \"mvc</w>\": 40549,\n  \"mvp</w>\": 8905,\n  \"mw\": 16725,\n  \"mw</w>\": 11206,\n  \"mwc</w>\": 24289,\n  \"mwf</w>\": 48565,\n  \"mx\": 21947,\n  \"mx</w>\": 9575,\n  \"my\": 1152,\n  \"my</w>\": 607,\n  \"mya</w>\": 31401,\n  \"myal\": 42735,\n  \"myan\": 13761,\n  \"myanmar</w>\": 14764,\n  \"myart</w>\": 38826,\n  \"myco\": 48362,\n  \"mydayin\": 41896,\n  \"mydayinla</w>\": 42801,\n  \"mydubai</w>\": 43475,\n  \"mye\": 27551,\n  \"myel\": 40084,\n  \"myers</w>\": 15993,\n  \"myjaps</w>\": 47939,\n  \"myle\": 43700,\n  \"myles</w>\": 25511,\n  \"mylife</w>\": 30537,\n  \"mylittle\": 37757,\n  \"mylittlepony</w>\": 45107,\n  \"myo\": 16206,\n  \"myr\": 20272,\n  \"myra</w>\": 35694,\n  \"myri\": 34972,\n  \"myrt\": 47785,\n  \"myrtle</w>\": 27768,\n  \"mys</w>\": 11724,\n  \"myself</w>\": 3245,\n  \"mysore</w>\": 44924,\n  \"myspace</w>\": 41382,\n  \"myster\": 4669,\n  \"mysteries</w>\": 20605,\n  \"mysterious</w>\": 12650,\n  \"mystery\": 39828,\n  \"mystery</w>\": 6711,\n  \"mysti\": 28711,\n  \"mystic\": 36264,\n  \"mystic</w>\": 23722,\n  \"mystical</w>\": 34122,\n  \"myth\": 20322,\n  \"myth</w>\": 13878,\n  \"mythical</w>\": 34377,\n  \"mytho\": 43857,\n  \"mythology</w>\": 22496,\n  \"myths</w>\": 18675,\n  \"mz\": 29509,\n  \"mz</w>\": 33400,\n  \"mzan\": 36322,\n  \"mzansi</w>\": 43301,\n  \"mÃ¡\": 36842,\n  \"mÃ©\": 21890,\n  \"mÃ©xico</w>\": 46159,\n  \"mÃ¼\": 28142,\n  \"mÃ¼n\": 41235,\n  \"n\": 77,\n  \"n</w>\": 333,\n  \"na\": 1097,\n  \"na</w>\": 1272,\n  \"naa</w>\": 37738,\n  \"naacp</w>\": 32176,\n  \"nab\": 6951,\n  \"nab</w>\": 19440,\n  \"nabe\": 35111,\n  \"naby</w>\": 24800,\n  \"nac\": 14557,\n  \"nac</w>\": 18950,\n  \"nach\": 12168,\n  \"nach</w>\": 43622,\n  \"nacho</w>\": 35647,\n  \"nachos</w>\": 32847,\n  \"nacht</w>\": 37261,\n  \"nacional</w>\": 38782,\n  \"nad\": 6204,\n  \"nad</w>\": 43928,\n  \"nada</w>\": 31683,\n  \"nadal</w>\": 20814,\n  \"nade\": 24908,\n  \"nadi\": 30512,\n  \"nadia</w>\": 27487,\n  \"nadine</w>\": 23356,\n  \"nadu</w>\": 20936,\n  \"nae</w>\": 19374,\n  \"naf\": 16161,\n  \"naf</w>\": 45956,\n  \"nafta</w>\": 43123,\n  \"nag\": 6694,\n  \"nag</w>\": 23902,\n  \"naga\": 45953,\n  \"naga</w>\": 38997,\n  \"nagar</w>\": 17490,\n  \"nage</w>\": 41219,\n  \"nago\": 38349,\n  \"nagoya</w>\": 43303,\n  \"nagpur</w>\": 43328,\n  \"nah\": 26421,\n  \"nah</w>\": 11129,\n  \"nahi</w>\": 35244,\n  \"nai\": 6230,\n  \"nai</w>\": 10692,\n  \"naia</w>\": 31340,\n  \"naidu</w>\": 42429,\n  \"naija</w>\": 16326,\n  \"naik</w>\": 34424,\n  \"nail\": 19459,\n  \"nail</w>\": 9059,\n  \"nailart</w>\": 43532,\n  \"nailed</w>\": 19035,\n  \"nails</w>\": 8469,\n  \"nair</w>\": 27107,\n  \"naira</w>\": 39450,\n  \"naire</w>\": 48892,\n  \"nairobi</w>\": 17756,\n  \"nais\": 46396,\n  \"naissance</w>\": 44761,\n  \"naive</w>\": 43362,\n  \"naj\": 30985,\n  \"naji\": 32589,\n  \"nak\": 9248,\n  \"nak</w>\": 25550,\n  \"naked\": 46371,\n  \"naked</w>\": 11478,\n  \"naku\": 39864,\n  \"nal\": 14132,\n  \"nal</w>\": 3119,\n  \"nale</w>\": 27198,\n  \"nall</w>\": 32869,\n  \"nally</w>\": 26158,\n  \"nam\": 1410,\n  \"nam</w>\": 12344,\n  \"nama</w>\": 39586,\n  \"naman</w>\": 27635,\n  \"namaste</w>\": 35549,\n  \"name\": 18160,\n  \"name</w>\": 1981,\n  \"named</w>\": 3194,\n  \"nameis\": 40831,\n  \"nament</w>\": 3916,\n  \"naments</w>\": 16540,\n  \"names</w>\": 6130,\n  \"namesake</w>\": 41298,\n  \"nami\": 20393,\n  \"namibia</w>\": 23731,\n  \"naming</w>\": 19367,\n  \"namjoon</w>\": 31986,\n  \"namm</w>\": 35524,\n  \"namo\": 46013,\n  \"namo</w>\": 24854,\n  \"nan\": 4375,\n  \"nan</w>\": 7750,\n  \"nana</w>\": 18761,\n  \"nanaimo</w>\": 40518,\n  \"nancy\": 21511,\n  \"nancy</w>\": 11425,\n  \"nand\": 20435,\n  \"nandez</w>\": 12764,\n  \"nando\": 46044,\n  \"nang\": 48148,\n  \"nani</w>\": 27980,\n  \"nanny</w>\": 31104,\n  \"nano\": 15835,\n  \"nano</w>\": 22006,\n  \"nanop\": 34177,\n  \"nanotechnology</w>\": 42235,\n  \"nanow\": 46734,\n  \"nant</w>\": 22526,\n  \"nantes</w>\": 47533,\n  \"nantucket</w>\": 41573,\n  \"nao</w>\": 39319,\n  \"naom\": 34955,\n  \"naomi</w>\": 20173,\n  \"nap\": 6568,\n  \"nap</w>\": 11012,\n  \"napa</w>\": 20545,\n  \"napier</w>\": 40875,\n  \"napkin</w>\": 38930,\n  \"naples</w>\": 23560,\n  \"napo\": 18715,\n  \"napol\": 20122,\n  \"napoleon</w>\": 24969,\n  \"napoli</w>\": 22445,\n  \"napp\": 11359,\n  \"napping</w>\": 37657,\n  \"naps</w>\": 31317,\n  \"naq\": 46453,\n  \"nar\": 2977,\n  \"nar</w>\": 20145,\n  \"nara</w>\": 33823,\n  \"narcis\": 25229,\n  \"narcissi\": 35442,\n  \"narco\": 38461,\n  \"nard</w>\": 18216,\n  \"nare\": 34853,\n  \"naren\": 8468,\n  \"narendr\": 9807,\n  \"narendra</w>\": 25848,\n  \"narendramodi</w>\": 9853,\n  \"narnia</w>\": 48693,\n  \"narr\": 11845,\n  \"narrated</w>\": 43609,\n  \"narrative</w>\": 15933,\n  \"narratives</w>\": 35117,\n  \"narrator</w>\": 46529,\n  \"narrow\": 24006,\n  \"narrow</w>\": 16652,\n  \"narrowly</w>\": 29747,\n  \"naruto</w>\": 22732,\n  \"nas\": 3090,\n  \"nas</w>\": 15250,\n  \"nasa</w>\": 6841,\n  \"nasal</w>\": 42853,\n  \"nascar\": 25723,\n  \"nascar</w>\": 7868,\n  \"nasdaq</w>\": 26629,\n  \"nash\": 6771,\n  \"nash</w>\": 13620,\n  \"nasheed</w>\": 49176,\n  \"nashgrier</w>\": 33372,\n  \"nashville\": 45356,\n  \"nashville</w>\": 8585,\n  \"nasi</w>\": 47987,\n  \"nasir</w>\": 47509,\n  \"nassau</w>\": 34048,\n  \"nasser</w>\": 43559,\n  \"nasty\": 32930,\n  \"nasty</w>\": 8709,\n  \"nat\": 1276,\n  \"nat</w>\": 11310,\n  \"nata</w>\": 39392,\n  \"natal</w>\": 28516,\n  \"natali\": 20296,\n  \"natalia</w>\": 32978,\n  \"natalie\": 36634,\n  \"natalie</w>\": 13595,\n  \"natash\": 48701,\n  \"natasha</w>\": 23093,\n  \"nate\": 26643,\n  \"nate</w>\": 7587,\n  \"natgeo\": 33009,\n  \"natgeo</w>\": 25046,\n  \"nath\": 22203,\n  \"nath</w>\": 19843,\n  \"nathan\": 13028,\n  \"nathan</w>\": 9711,\n  \"nathanfillion</w>\": 47422,\n  \"nathaniel</w>\": 32667,\n  \"nati\": 1060,\n  \"nati</w>\": 13384,\n  \"natic</w>\": 44944,\n  \"natin</w>\": 44358,\n  \"nation\": 2317,\n  \"nation</w>\": 2670,\n  \"national\": 3126,\n  \"national</w>\": 1362,\n  \"nationalbestfriend\": 42222,\n  \"nationaldogday</w>\": 32227,\n  \"nationalism</w>\": 29867,\n  \"nationalist</w>\": 25058,\n  \"nationality</w>\": 44451,\n  \"nationally</w>\": 15130,\n  \"nationalpark</w>\": 33060,\n  \"nationalparks</w>\": 41204,\n  \"nationals</w>\": 10784,\n  \"nationaltrust</w>\": 34051,\n  \"nations</w>\": 7654,\n  \"nationwide</w>\": 13795,\n  \"native\": 20639,\n  \"native</w>\": 4562,\n  \"natives</w>\": 36060,\n  \"nativity</w>\": 33988,\n  \"natl\": 39225,\n  \"natl</w>\": 34465,\n  \"nato</w>\": 13139,\n  \"nats</w>\": 21106,\n  \"natu\": 2775,\n  \"natur\": 6800,\n  \"natural\": 13198,\n  \"natural</w>\": 3288,\n  \"naturally</w>\": 12995,\n  \"naturals</w>\": 44686,\n  \"nature\": 9382,\n  \"nature</w>\": 2625,\n  \"naturelovers</w>\": 41514,\n  \"naturephotography</w>\": 22533,\n  \"natures</w>\": 15616,\n  \"natureuk</w>\": 46193,\n  \"nau\": 5955,\n  \"nau</w>\": 32878,\n  \"naught</w>\": 41001,\n  \"naughty\": 47255,\n  \"naughty</w>\": 15101,\n  \"nautical</w>\": 31660,\n  \"nav\": 3413,\n  \"nav</w>\": 25308,\n  \"navajo</w>\": 35523,\n  \"naval\": 44725,\n  \"naval</w>\": 13273,\n  \"navar\": 24848,\n  \"navarro</w>\": 37104,\n  \"nave\": 42704,\n  \"naveen</w>\": 43837,\n  \"naver</w>\": 32534,\n  \"navi\": 16159,\n  \"navi</w>\": 44848,\n  \"navig\": 12507,\n  \"navigate</w>\": 24400,\n  \"navigating</w>\": 33134,\n  \"navigation</w>\": 20148,\n  \"navigator</w>\": 38910,\n  \"navis</w>\": 36377,\n  \"navratri</w>\": 45428,\n  \"navy\": 28414,\n  \"navy</w>\": 5598,\n  \"naw\": 16259,\n  \"naw</w>\": 30500,\n  \"nawaz\": 49161,\n  \"nawaz</w>\": 19523,\n  \"nax\": 38299,\n  \"nay\": 11704,\n  \"nay</w>\": 16182,\n  \"naya</w>\": 38917,\n  \"nayanth\": 38157,\n  \"nayanthara</w>\": 45184,\n  \"naz\": 6363,\n  \"naz</w>\": 35534,\n  \"nazi</w>\": 12972,\n  \"nazis</w>\": 21778,\n  \"nb\": 6459,\n  \"nb</w>\": 6813,\n  \"nba\": 22524,\n  \"nba</w>\": 5139,\n  \"nbad\": 43458,\n  \"nbaf\": 30127,\n  \"nbafinals</w>\": 33803,\n  \"nbap\": 41956,\n  \"nbaplayoffs</w>\": 43860,\n  \"nbat\": 46291,\n  \"nbc\": 9352,\n  \"nbc</w>\": 8799,\n  \"nbd</w>\": 24526,\n  \"nbl</w>\": 42652,\n  \"nc\": 5021,\n  \"nc</w>\": 4911,\n  \"nca\": 6921,\n  \"ncaa</w>\": 9418,\n  \"ncbd</w>\": 47221,\n  \"ncc\": 33195,\n  \"ncc</w>\": 36686,\n  \"ncds</w>\": 47573,\n  \"ncfc</w>\": 31274,\n  \"ncis</w>\": 33617,\n  \"ncpol</w>\": 40562,\n  \"ncr</w>\": 38474,\n  \"ncs</w>\": 42689,\n  \"nct\": 27723,\n  \"nct</w>\": 20319,\n  \"ncwx</w>\": 36166,\n  \"nd\": 5625,\n  \"nd</w>\": 1764,\n  \"nda</w>\": 32862,\n  \"ndc</w>\": 47564,\n  \"ndi</w>\": 48229,\n  \"ndp</w>\": 19257,\n  \"nds</w>\": 31347,\n  \"ndtv</w>\": 26261,\n  \"ne\": 557,\n  \"ne</w>\": 1422,\n  \"nea</w>\": 24068,\n  \"neal\": 33652,\n  \"neal</w>\": 16730,\n  \"near\": 11296,\n  \"near</w>\": 2252,\n  \"nearby</w>\": 13314,\n  \"nearest</w>\": 18985,\n  \"nearing</w>\": 26571,\n  \"nearly</w>\": 4816,\n  \"nears</w>\": 37710,\n  \"neat\": 43201,\n  \"neat</w>\": 15465,\n  \"neath</w>\": 18315,\n  \"neau</w>\": 31559,\n  \"neb\": 40209,\n  \"nebra\": 13371,\n  \"nebraska</w>\": 14565,\n  \"nebu\": 49295,\n  \"nebula</w>\": 22532,\n  \"nec\": 25109,\n  \"nec</w>\": 22992,\n  \"necess\": 6961,\n  \"necessarily</w>\": 25853,\n  \"necessary</w>\": 8955,\n  \"necessities</w>\": 43483,\n  \"necessity</w>\": 33163,\n  \"neck\": 6066,\n  \"neck</w>\": 6906,\n  \"necklace</w>\": 7385,\n  \"necklaces</w>\": 32276,\n  \"necks</w>\": 29701,\n  \"nectar</w>\": 33683,\n  \"ned\": 16030,\n  \"ned</w>\": 1369,\n  \"nederland</w>\": 49058,\n  \"nee\": 20494,\n  \"nee</w>\": 10601,\n  \"need\": 3229,\n  \"need</w>\": 1262,\n  \"needed</w>\": 4049,\n  \"needing</w>\": 22894,\n  \"needle\": 44490,\n  \"needle</w>\": 19886,\n  \"needles</w>\": 27250,\n  \"needless</w>\": 39984,\n  \"needs</w>\": 2536,\n  \"needy</w>\": 30150,\n  \"neel\": 33092,\n  \"neel</w>\": 46043,\n  \"neer\": 34245,\n  \"nees</w>\": 47248,\n  \"neet</w>\": 46362,\n  \"neg\": 5513,\n  \"negan</w>\": 42623,\n  \"negative</w>\": 8869,\n  \"negatively</w>\": 40254,\n  \"negativity</w>\": 34658,\n  \"neglec\": 18827,\n  \"neglect</w>\": 33680,\n  \"neglected</w>\": 31893,\n  \"negli\": 32594,\n  \"negligence</w>\": 45658,\n  \"negoti\": 10216,\n  \"negotiate</w>\": 32969,\n  \"negotiating</w>\": 35510,\n  \"negotiation</w>\": 36504,\n  \"negotiations</w>\": 20433,\n  \"negr\": 42190,\n  \"negro</w>\": 26554,\n  \"neh\": 40416,\n  \"neh</w>\": 41697,\n  \"neha</w>\": 44463,\n  \"nehru</w>\": 30316,\n  \"nei\": 9366,\n  \"neigh\": 4061,\n  \"neighb\": 6534,\n  \"neighbor\": 7759,\n  \"neighbor</w>\": 14485,\n  \"neighborhood</w>\": 9471,\n  \"neighborhoods</w>\": 26713,\n  \"neighboring</w>\": 44754,\n  \"neighbors</w>\": 13037,\n  \"neighbour\": 15858,\n  \"neighbour</w>\": 23719,\n  \"neighbourhood</w>\": 20312,\n  \"neighbours</w>\": 17594,\n  \"neil\": 13591,\n  \"neil</w>\": 8030,\n  \"neilhimself</w>\": 45682,\n  \"neill</w>\": 19324,\n  \"neither</w>\": 14398,\n  \"nek</w>\": 47727,\n  \"neko</w>\": 47066,\n  \"nel\": 5476,\n  \"nel</w>\": 2693,\n  \"nell\": 27081,\n  \"nell</w>\": 8117,\n  \"nelly</w>\": 21166,\n  \"nels</w>\": 19296,\n  \"nelson\": 24774,\n  \"nelson</w>\": 8586,\n  \"nem</w>\": 45153,\n  \"neman</w>\": 48553,\n  \"neme\": 30993,\n  \"nemesis</w>\": 37811,\n  \"nemo</w>\": 30441,\n  \"nen\": 17817,\n  \"nen</w>\": 15451,\n  \"nene</w>\": 44167,\n  \"neo\": 14562,\n  \"neo</w>\": 11017,\n  \"neon\": 21043,\n  \"neon</w>\": 13919,\n  \"neonatal</w>\": 46464,\n  \"neop\": 49069,\n  \"nep\": 20739,\n  \"nep</w>\": 41960,\n  \"nepal\": 25597,\n  \"nepal</w>\": 10066,\n  \"nepali</w>\": 47579,\n  \"neph\": 27926,\n  \"nephe\": 41810,\n  \"nephew</w>\": 11689,\n  \"nephews</w>\": 43747,\n  \"nephro\": 43054,\n  \"neptune</w>\": 30566,\n  \"ner\": 2064,\n  \"ner</w>\": 998,\n  \"nerd\": 24452,\n  \"nerd</w>\": 12273,\n  \"nerds</w>\": 22609,\n  \"nerdy</w>\": 33124,\n  \"nered</w>\": 17583,\n  \"nerf</w>\": 42914,\n  \"nering</w>\": 20226,\n  \"nero</w>\": 29048,\n  \"ners</w>\": 2129,\n  \"nerve</w>\": 18571,\n  \"nerves</w>\": 27813,\n  \"nervous</w>\": 13928,\n  \"nery</w>\": 48597,\n  \"nes\": 5457,\n  \"nes</w>\": 4980,\n  \"nesburg</w>\": 27159,\n  \"nese</w>\": 32220,\n  \"ness\": 7187,\n  \"ness</w>\": 1294,\n  \"nesses</w>\": 20107,\n  \"nessy</w>\": 32939,\n  \"nest\": 20302,\n  \"nest</w>\": 8719,\n  \"nesting</w>\": 28860,\n  \"nestle</w>\": 43967,\n  \"nestled</w>\": 38107,\n  \"nests</w>\": 41133,\n  \"net\": 1851,\n  \"net</w>\": 2315,\n  \"netany\": 23137,\n  \"netanyahu</w>\": 23583,\n  \"netball</w>\": 19761,\n  \"netes</w>\": 44335,\n  \"netfli\": 6304,\n  \"netflix\": 35325,\n  \"netflix</w>\": 6600,\n  \"nether\": 9946,\n  \"netherlands</w>\": 11060,\n  \"neti\": 43980,\n  \"netneutrality</w>\": 47794,\n  \"nets</w>\": 8582,\n  \"nett\": 23403,\n  \"nett</w>\": 6975,\n  \"nette</w>\": 13271,\n  \"network\": 23285,\n  \"network</w>\": 3304,\n  \"networking</w>\": 9818,\n  \"networks</w>\": 10004,\n  \"neu\": 3855,\n  \"neu</w>\": 43342,\n  \"neue</w>\": 45764,\n  \"neur\": 19001,\n  \"neur</w>\": 31976,\n  \"neural</w>\": 26388,\n  \"neuro\": 7401,\n  \"neuro</w>\": 36000,\n  \"neurological</w>\": 41718,\n  \"neurology</w>\": 43197,\n  \"neurons</w>\": 40442,\n  \"neuroscience</w>\": 23381,\n  \"neutr\": 17207,\n  \"neutral</w>\": 17011,\n  \"neutrality</w>\": 26511,\n  \"neutron</w>\": 44056,\n  \"nev\": 10236,\n  \"nev</w>\": 43645,\n  \"neva</w>\": 43304,\n  \"nevada</w>\": 13499,\n  \"neve\": 44099,\n  \"neve</w>\": 44023,\n  \"never\": 6746,\n  \"never</w>\": 1426,\n  \"neveragain</w>\": 45053,\n  \"neverforget</w>\": 19242,\n  \"nevergiveup</w>\": 42497,\n  \"neverland</w>\": 41483,\n  \"nevertheless</w>\": 48355,\n  \"nevertrump</w>\": 47494,\n  \"neville</w>\": 19269,\n  \"nevis</w>\": 43670,\n  \"new\": 1218,\n  \"new</w>\": 686,\n  \"newark</w>\": 20240,\n  \"newbie</w>\": 45427,\n  \"newborn</w>\": 18320,\n  \"newbury</w>\": 34169,\n  \"newcastle\": 41955,\n  \"newcastle</w>\": 9302,\n  \"newcomer</w>\": 30648,\n  \"newcomers</w>\": 44037,\n  \"newe\": 40068,\n  \"newell</w>\": 41436,\n  \"newer</w>\": 33099,\n  \"newest</w>\": 4990,\n  \"newfound\": 25250,\n  \"newfoundland</w>\": 28079,\n  \"newh\": 18546,\n  \"newin\": 31911,\n  \"newjersey</w>\": 32621,\n  \"newly\": 42186,\n  \"newly</w>\": 7056,\n  \"newman</w>\": 15815,\n  \"newmarket</w>\": 38617,\n  \"newmexico</w>\": 35238,\n  \"newmusic\": 32510,\n  \"newmusic</w>\": 17201,\n  \"newor\": 25969,\n  \"neworleans</w>\": 31205,\n  \"newport\": 42580,\n  \"newport</w>\": 14846,\n  \"newprofile\": 14633,\n  \"newprofilepic</w>\": 14754,\n  \"newrelease</w>\": 34793,\n  \"news\": 6216,\n  \"news</w>\": 1120,\n  \"newsat</w>\": 43979,\n  \"newsc\": 28656,\n  \"newscast</w>\": 45031,\n  \"newsle\": 10727,\n  \"newsletter</w>\": 11069,\n  \"newsnow</w>\": 48650,\n  \"newsp\": 7109,\n  \"newspaper</w>\": 8786,\n  \"newspapers</w>\": 22423,\n  \"newsroom</w>\": 23200,\n  \"newt</w>\": 37224,\n  \"newton\": 33122,\n  \"newton</w>\": 12606,\n  \"newtown</w>\": 31747,\n  \"newyear\": 22161,\n  \"newyear</w>\": 12999,\n  \"newyearseve</w>\": 37587,\n  \"newyork\": 18140,\n  \"newyork</w>\": 10454,\n  \"newyorkcity</w>\": 30460,\n  \"newyorker</w>\": 39732,\n  \"newzealand</w>\": 21117,\n  \"nex\": 6897,\n  \"nex</w>\": 39720,\n  \"next\": 12434,\n  \"next</w>\": 1131,\n  \"nextgen</w>\": 41933,\n  \"nexus</w>\": 19053,\n  \"ney\": 3857,\n  \"ney</w>\": 1438,\n  \"neymar</w>\": 21878,\n  \"neys</w>\": 12616,\n  \"nez</w>\": 27388,\n  \"nf\": 15195,\n  \"nf</w>\": 25643,\n  \"nfamily</w>\": 20098,\n  \"nfc</w>\": 23695,\n  \"nffc</w>\": 27893,\n  \"nfl\": 11219,\n  \"nfl</w>\": 4691,\n  \"nfldraft</w>\": 25002,\n  \"ng\": 10352,\n  \"ng</w>\": 5215,\n  \"nga</w>\": 35477,\n  \"ngc</w>\": 29046,\n  \"ngo\": 38740,\n  \"ngo</w>\": 24821,\n  \"ngos</w>\": 34627,\n  \"nguyen</w>\": 29947,\n  \"nh\": 3760,\n  \"nh</w>\": 10803,\n  \"nhc</w>\": 44817,\n  \"nhl\": 12290,\n  \"nhl</w>\": 8167,\n  \"nhlbruins</w>\": 39081,\n  \"nhljets</w>\": 49357,\n  \"nhm</w>\": 39483,\n  \"nhpolitics</w>\": 36125,\n  \"nhq</w>\": 42368,\n  \"nhra</w>\": 30052,\n  \"nhs\": 23282,\n  \"nhs</w>\": 7695,\n  \"ni\": 697,\n  \"ni</w>\": 3256,\n  \"nia</w>\": 3098,\n  \"niag\": 18071,\n  \"niagar\": 39298,\n  \"niagara</w>\": 18965,\n  \"niall\": 41354,\n  \"niall</w>\": 8327,\n  \"niallo\": 22855,\n  \"niallofficial</w>\": 23084,\n  \"niam\": 39347,\n  \"nian</w>\": 46003,\n  \"nib</w>\": 31049,\n  \"nic\": 2109,\n  \"nic</w>\": 6651,\n  \"nica</w>\": 29040,\n  \"nicar\": 25119,\n  \"nicaragua</w>\": 28423,\n  \"nice\": 28386,\n  \"nice</w>\": 1805,\n  \"nicely</w>\": 12303,\n  \"nicer</w>\": 29488,\n  \"nicest</w>\": 22967,\n  \"niche</w>\": 25279,\n  \"nichol\": 7668,\n  \"nicholas\": 39814,\n  \"nicholas</w>\": 13148,\n  \"nicholls</w>\": 38846,\n  \"nichols</w>\": 22730,\n  \"nicholson</w>\": 28745,\n  \"nick\": 4209,\n  \"nick</w>\": 4253,\n  \"nickel</w>\": 22034,\n  \"nickelo\": 28668,\n  \"nickelodeon</w>\": 33279,\n  \"nicki</w>\": 17738,\n  \"nickimin\": 27390,\n  \"nickiminaj</w>\": 27593,\n  \"nickjonas</w>\": 43862,\n  \"nickname</w>\": 24731,\n  \"nicknamed</w>\": 45190,\n  \"nicks</w>\": 15049,\n  \"nicky\": 28893,\n  \"nicky</w>\": 22091,\n  \"nico\": 20850,\n  \"nico</w>\": 17779,\n  \"nicol\": 9919,\n  \"nicol</w>\": 48274,\n  \"nicola</w>\": 21791,\n  \"nicolas\": 43813,\n  \"nicolas</w>\": 18918,\n  \"nicole\": 21246,\n  \"nicole</w>\": 10000,\n  \"nicot\": 45099,\n  \"nicotine</w>\": 46697,\n  \"nie\": 9524,\n  \"nie</w>\": 3501,\n  \"niece</w>\": 12795,\n  \"nieces</w>\": 44877,\n  \"niel\": 19109,\n  \"niel</w>\": 26837,\n  \"niels</w>\": 37154,\n  \"nielsen</w>\": 28372,\n  \"nier</w>\": 13014,\n  \"nies</w>\": 10586,\n  \"niest</w>\": 15007,\n  \"nieu\": 29781,\n  \"nific\": 4748,\n  \"nifty</w>\": 25604,\n  \"nig\": 27933,\n  \"nig</w>\": 28099,\n  \"nigan</w>\": 48516,\n  \"nigel\": 33919,\n  \"nigel</w>\": 15153,\n  \"niger\": 4524,\n  \"niger</w>\": 29920,\n  \"nigeri\": 40913,\n  \"nigeria</w>\": 6106,\n  \"nigerian</w>\": 12167,\n  \"nigerians</w>\": 25358,\n  \"nigh\": 13525,\n  \"nigh</w>\": 48157,\n  \"night\": 3870,\n  \"night</w>\": 930,\n  \"nightclub</w>\": 20418,\n  \"nighter</w>\": 41349,\n  \"nighting\": 36211,\n  \"nightingale</w>\": 40696,\n  \"nightlife</w>\": 28823,\n  \"nightly</w>\": 28868,\n  \"nightmare</w>\": 12867,\n  \"nightmares</w>\": 24032,\n  \"nightout</w>\": 44257,\n  \"nights</w>\": 4296,\n  \"nighttime</w>\": 38147,\n  \"nightw\": 39956,\n  \"nih</w>\": 25783,\n  \"nik\": 5126,\n  \"nik</w>\": 13705,\n  \"nike\": 16300,\n  \"nike</w>\": 5783,\n  \"nikeplus</w>\": 43154,\n  \"niki</w>\": 36136,\n  \"nikita</w>\": 37118,\n  \"nikk\": 38596,\n  \"nikki\": 23156,\n  \"nikki</w>\": 16689,\n  \"niko</w>\": 43771,\n  \"nikol\": 27430,\n  \"nikola</w>\": 42146,\n  \"nikon\": 25488,\n  \"nikon</w>\": 13849,\n  \"nikov</w>\": 43960,\n  \"nil\": 16852,\n  \"nil</w>\": 35030,\n  \"nile</w>\": 24252,\n  \"nim\": 30402,\n  \"nim</w>\": 42093,\n  \"nima</w>\": 42586,\n  \"nin\": 5794,\n  \"nin</w>\": 14145,\n  \"nina</w>\": 13891,\n  \"nine\": 16213,\n  \"nine</w>\": 7330,\n  \"ninety</w>\": 48214,\n  \"ning\": 6050,\n  \"ning</w>\": 762,\n  \"ningham</w>\": 23395,\n  \"ningly</w>\": 43537,\n  \"nings</w>\": 4588,\n  \"nington</w>\": 26214,\n  \"ninj\": 23225,\n  \"ninja</w>\": 11969,\n  \"ninjas</w>\": 42796,\n  \"nino</w>\": 25633,\n  \"ninten\": 6184,\n  \"nintendo\": 13969,\n  \"nintendo</w>\": 7886,\n  \"nintendoswitch</w>\": 16404,\n  \"ninth</w>\": 22770,\n  \"nip\": 33889,\n  \"nip</w>\": 22333,\n  \"nipp\": 24634,\n  \"nipple</w>\": 45987,\n  \"nipples</w>\": 44774,\n  \"nippon</w>\": 47960,\n  \"nips</w>\": 49241,\n  \"nir\": 15503,\n  \"nir</w>\": 40057,\n  \"nireland</w>\": 45763,\n  \"niro</w>\": 47373,\n  \"nirvana</w>\": 28300,\n  \"nis\": 5609,\n  \"nis</w>\": 3786,\n  \"nish\": 19834,\n  \"nish</w>\": 13256,\n  \"nished</w>\": 24141,\n  \"nishi\": 32386,\n  \"nishings</w>\": 49247,\n  \"nison</w>\": 45700,\n  \"niss</w>\": 39043,\n  \"nissan\": 37635,\n  \"nissan</w>\": 11082,\n  \"nist</w>\": 17782,\n  \"nister</w>\": 36640,\n  \"nit\": 4087,\n  \"nit</w>\": 19011,\n  \"nite</w>\": 8427,\n  \"niti\": 43964,\n  \"niti</w>\": 45355,\n  \"nitin</w>\": 37529,\n  \"nitro</w>\": 30726,\n  \"nitrogen</w>\": 30706,\n  \"niture</w>\": 7840,\n  \"nity</w>\": 12707,\n  \"niu</w>\": 48187,\n  \"niv</w>\": 47300,\n  \"niversary</w>\": 29643,\n  \"nix\": 48552,\n  \"nix</w>\": 32278,\n  \"nixon</w>\": 20671,\n  \"nj\": 8343,\n  \"nj</w>\": 6672,\n  \"njcaa</w>\": 48992,\n  \"njpw</w>\": 38992,\n  \"nk\": 22708,\n  \"nk</w>\": 17456,\n  \"nko\": 36353,\n  \"nl\": 12057,\n  \"nl</w>\": 7655,\n  \"nli</w>\": 37502,\n  \"nlp</w>\": 35680,\n  \"nlwx</w>\": 49260,\n  \"nm\": 15956,\n  \"nm</w>\": 11370,\n  \"nmd</w>\": 43331,\n  \"nme</w>\": 40454,\n  \"nmwx</w>\": 47967,\n  \"nn\": 8947,\n  \"nn</w>\": 12925,\n  \"nnn</w>\": 26277,\n  \"nnnn</w>\": 41420,\n  \"no\": 578,\n  \"no</w>\": 871,\n  \"noaa</w>\": 27557,\n  \"noah\": 28806,\n  \"noah</w>\": 11519,\n  \"nobel\": 33742,\n  \"nobel</w>\": 15605,\n  \"nobelprize</w>\": 46074,\n  \"noble\": 29430,\n  \"noble</w>\": 12051,\n  \"nobody</w>\": 7009,\n  \"noc\": 16988,\n  \"noc</w>\": 44420,\n  \"nocchi</w>\": 46359,\n  \"noch</w>\": 38672,\n  \"noche</w>\": 29689,\n  \"noches</w>\": 44166,\n  \"nock</w>\": 16993,\n  \"noctur\": 26291,\n  \"nocturnal</w>\": 41738,\n  \"nod</w>\": 18648,\n  \"nodapl</w>\": 39079,\n  \"node\": 31434,\n  \"node</w>\": 24871,\n  \"nodejs</w>\": 39262,\n  \"nodes</w>\": 40534,\n  \"noel\": 38406,\n  \"noel</w>\": 17496,\n  \"nof\": 29505,\n  \"noff</w>\": 46979,\n  \"nofilter</w>\": 16418,\n  \"nog</w>\": 31157,\n  \"noh</w>\": 40775,\n  \"noi\": 43115,\n  \"noi</w>\": 39889,\n  \"noida</w>\": 33404,\n  \"noir\": 39291,\n  \"noir</w>\": 12953,\n  \"nois\": 22057,\n  \"noise\": 41018,\n  \"noise</w>\": 9307,\n  \"noises</w>\": 31575,\n  \"noisse\": 45686,\n  \"noisy</w>\": 33495,\n  \"nokia</w>\": 17731,\n  \"nol\": 8055,\n  \"nola</w>\": 13289,\n  \"nolan</w>\": 17323,\n  \"nold</w>\": 40322,\n  \"nole</w>\": 34654,\n  \"noles</w>\": 40569,\n  \"nollywood</w>\": 43145,\n  \"nology</w>\": 42221,\n  \"nom\": 2981,\n  \"nom</w>\": 12799,\n  \"nomad</w>\": 27849,\n  \"noman\": 45592,\n  \"nomin\": 5643,\n  \"nominate</w>\": 17122,\n  \"nominated</w>\": 8710,\n  \"nominating</w>\": 45747,\n  \"nomination</w>\": 14136,\n  \"nominations</w>\": 17124,\n  \"nominee</w>\": 14122,\n  \"nominees</w>\": 17873,\n  \"nomnom</w>\": 26962,\n  \"nomore\": 35126,\n  \"noms</w>\": 35706,\n  \"non\": 4282,\n  \"non</w>\": 3353,\n  \"none\": 29644,\n  \"none</w>\": 8906,\n  \"nonetheless</w>\": 39675,\n  \"nonfiction</w>\": 31654,\n  \"nonprofit</w>\": 19315,\n  \"nonprofits</w>\": 37935,\n  \"nonsense</w>\": 19136,\n  \"nonstop</w>\": 30300,\n  \"nont</w>\": 25207,\n  \"noo\": 6759,\n  \"noo</w>\": 46672,\n  \"noodle</w>\": 19521,\n  \"noodles</w>\": 15782,\n  \"nook</w>\": 30088,\n  \"noon\": 37693,\n  \"noon</w>\": 2347,\n  \"noor\": 46978,\n  \"noor</w>\": 31323,\n  \"nope</w>\": 15625,\n  \"nor\": 1062,\n  \"nor</w>\": 6190,\n  \"nora</w>\": 25890,\n  \"norcal</w>\": 41970,\n  \"nord\": 19261,\n  \"nord</w>\": 36067,\n  \"nordic\": 36439,\n  \"nordic</w>\": 20734,\n  \"nordstrom</w>\": 38562,\n  \"norfolk\": 30232,\n  \"norfolk</w>\": 12202,\n  \"norm\": 10990,\n  \"norm</w>\": 22457,\n  \"norma</w>\": 35757,\n  \"normal\": 28748,\n  \"normal</w>\": 5967,\n  \"normali\": 45157,\n  \"normally</w>\": 15870,\n  \"norman\": 22027,\n  \"norman</w>\": 11338,\n  \"normandy</w>\": 23840,\n  \"normani</w>\": 44596,\n  \"norms</w>\": 33011,\n  \"norris</w>\": 21814,\n  \"norse</w>\": 36559,\n  \"norte</w>\": 35638,\n  \"north\": 3468,\n  \"north</w>\": 2188,\n  \"northampton\": 49246,\n  \"northampton</w>\": 26175,\n  \"northan\": 37081,\n  \"northbound</w>\": 24228,\n  \"northcarolina</w>\": 43386,\n  \"northe\": 24675,\n  \"northeast\": 42673,\n  \"northeast</w>\": 13009,\n  \"northeastern</w>\": 28297,\n  \"northeasthour</w>\": 42869,\n  \"norther\": 26908,\n  \"northern\": 17210,\n  \"northern</w>\": 5049,\n  \"northernlights</w>\": 48940,\n  \"northkorea</w>\": 38495,\n  \"northside</w>\": 45957,\n  \"northumber\": 22295,\n  \"northumberland</w>\": 22922,\n  \"northwales</w>\": 49371,\n  \"northwest</w>\": 12894,\n  \"northwestern</w>\": 23685,\n  \"norton</w>\": 18032,\n  \"norway</w>\": 8780,\n  \"norwe\": 14414,\n  \"norwegian</w>\": 15971,\n  \"norwich\": 37629,\n  \"norwich</w>\": 15812,\n  \"norwood</w>\": 37889,\n  \"nos</w>\": 13420,\n  \"nose\": 24192,\n  \"nose</w>\": 8231,\n  \"noses</w>\": 48163,\n  \"nostal\": 12076,\n  \"nostalgia</w>\": 16622,\n  \"nostalgic</w>\": 24468,\n  \"not\": 2534,\n  \"not</w>\": 783,\n  \"notable</w>\": 22023,\n  \"notch</w>\": 19476,\n  \"notdead</w>\": 42059,\n  \"note\": 10910,\n  \"note</w>\": 3246,\n  \"notebook</w>\": 16365,\n  \"notebooks</w>\": 37623,\n  \"noted</w>\": 22501,\n  \"notes</w>\": 5795,\n  \"nothin</w>\": 24291,\n  \"nothing\": 28412,\n  \"nothing</w>\": 2586,\n  \"noti\": 10686,\n  \"notic\": 6915,\n  \"notice</w>\": 6683,\n  \"noticeable</w>\": 40857,\n  \"noticed</w>\": 9324,\n  \"notices</w>\": 33459,\n  \"noticias</w>\": 47759,\n  \"noticing</w>\": 37571,\n  \"notification</w>\": 22512,\n  \"notifications</w>\": 23169,\n  \"notified</w>\": 39454,\n  \"noting</w>\": 38649,\n  \"notion</w>\": 37856,\n  \"notjust\": 33212,\n  \"notjustlakes</w>\": 45803,\n  \"notmy\": 39301,\n  \"noto\": 29878,\n  \"noton\": 48258,\n  \"notor\": 21711,\n  \"notori\": 44065,\n  \"notorious</w>\": 22489,\n  \"notre\": 24397,\n  \"notre</w>\": 15306,\n  \"notredame</w>\": 34077,\n  \"notsorry</w>\": 34361,\n  \"nott\": 9333,\n  \"nott</w>\": 34989,\n  \"notte</w>\": 47308,\n  \"nottingham</w>\": 12852,\n  \"notts</w>\": 25598,\n  \"nou\": 8751,\n  \"nou</w>\": 30953,\n  \"noun</w>\": 33663,\n  \"nouri\": 23796,\n  \"nourish</w>\": 46025,\n  \"nourished</w>\": 48354,\n  \"nous</w>\": 29485,\n  \"nouveau</w>\": 29948,\n  \"nouvel\": 34215,\n  \"nov\": 2264,\n  \"nov</w>\": 4293,\n  \"nova</w>\": 11236,\n  \"novak</w>\": 26465,\n  \"novasco\": 33785,\n  \"novascotia</w>\": 34744,\n  \"novation</w>\": 39753,\n  \"nove\": 30507,\n  \"novel\": 15044,\n  \"novel</w>\": 6080,\n  \"novelist</w>\": 27314,\n  \"novella</w>\": 42770,\n  \"novels</w>\": 16040,\n  \"novelty</w>\": 37750,\n  \"november</w>\": 3680,\n  \"nover</w>\": 37465,\n  \"novi\": 47957,\n  \"novice</w>\": 33743,\n  \"novo\": 27504,\n  \"novo</w>\": 36581,\n  \"now\": 2040,\n  \"now</w>\": 692,\n  \"nowadays</w>\": 26155,\n  \"nowhere</w>\": 14108,\n  \"nowplaying</w>\": 3708,\n  \"nowwatching</w>\": 30852,\n  \"nox</w>\": 27406,\n  \"noxi\": 39304,\n  \"noxious</w>\": 42833,\n  \"noy</w>\": 32787,\n  \"np\": 18205,\n  \"np</w>\": 6314,\n  \"npa</w>\": 42378,\n  \"npc</w>\": 33966,\n  \"npr\": 39941,\n  \"npr</w>\": 24078,\n  \"nps</w>\": 22025,\n  \"npt</w>\": 47231,\n  \"nr\": 6574,\n  \"nr</w>\": 9713,\n  \"nra</w>\": 17286,\n  \"nrc</w>\": 45786,\n  \"nrf</w>\": 47982,\n  \"nrg</w>\": 48662,\n  \"nrl\": 27142,\n  \"nrl</w>\": 18127,\n  \"ns\": 12405,\n  \"ns</w>\": 1373,\n  \"nsa</w>\": 23004,\n  \"nsc\": 32792,\n  \"nsd</w>\": 36659,\n  \"nsf</w>\": 34180,\n  \"nsfw</w>\": 19847,\n  \"nsi\": 47824,\n  \"nsw\": 21301,\n  \"nsw</w>\": 11693,\n  \"nswpol</w>\": 44434,\n  \"nt\": 10902,\n  \"nt</w>\": 3207,\n  \"ntr</w>\": 30845,\n  \"nts</w>\": 43775,\n  \"ntt</w>\": 22859,\n  \"ntv\": 24807,\n  \"ntv</w>\": 45304,\n  \"nu\": 1156,\n  \"nu</w>\": 9444,\n  \"nucle\": 25693,\n  \"nuclear\": 34136,\n  \"nuclear</w>\": 7279,\n  \"nude</w>\": 16630,\n  \"nudes</w>\": 32122,\n  \"nue\": 22834,\n  \"nuestra</w>\": 45649,\n  \"nuestro</w>\": 38590,\n  \"nuev\": 47861,\n  \"nueva</w>\": 48810,\n  \"nuevo</w>\": 30265,\n  \"nufc</w>\": 15720,\n  \"nuff</w>\": 37324,\n  \"nug\": 13471,\n  \"nugent</w>\": 47457,\n  \"nugget</w>\": 25448,\n  \"nuggets</w>\": 18970,\n  \"nuh</w>\": 45950,\n  \"nuit</w>\": 38815,\n  \"nuk</w>\": 39228,\n  \"nuke</w>\": 39399,\n  \"nul\": 29358,\n  \"null</w>\": 47376,\n  \"num\": 17896,\n  \"num</w>\": 30534,\n  \"numb\": 34639,\n  \"numb</w>\": 39427,\n  \"number\": 44078,\n  \"number</w>\": 2842,\n  \"numbered</w>\": 25975,\n  \"numbers</w>\": 6121,\n  \"numer\": 11442,\n  \"numerous</w>\": 17082,\n  \"numis\": 39100,\n  \"nun\": 12511,\n  \"nun</w>\": 28540,\n  \"nunavut</w>\": 48626,\n  \"nunes</w>\": 40697,\n  \"nuns</w>\": 44061,\n  \"nup\": 46757,\n  \"nur\": 3920,\n  \"nur</w>\": 33493,\n  \"nure\": 42480,\n  \"nurse\": 37547,\n  \"nurse</w>\": 10058,\n  \"nursery</w>\": 15540,\n  \"nurses</w>\": 12938,\n  \"nursing</w>\": 11126,\n  \"nurture</w>\": 38865,\n  \"nurturing</w>\": 45229,\n  \"nus\": 25157,\n  \"nus</w>\": 18239,\n  \"nut\": 10358,\n  \"nut</w>\": 6491,\n  \"nutcracker</w>\": 36733,\n  \"nutella</w>\": 27312,\n  \"nutr\": 6198,\n  \"nutri\": 15470,\n  \"nutrient</w>\": 32900,\n  \"nutrients</w>\": 24668,\n  \"nutriti\": 17978,\n  \"nutrition\": 41546,\n  \"nutrition</w>\": 7989,\n  \"nutritional</w>\": 26457,\n  \"nutritious</w>\": 30387,\n  \"nuts</w>\": 8644,\n  \"nutshell</w>\": 26659,\n  \"nutty</w>\": 39846,\n  \"nv\": 17217,\n  \"nv</w>\": 16985,\n  \"nvi\": 22847,\n  \"nvidia</w>\": 27325,\n  \"nw\": 7826,\n  \"nw</w>\": 7030,\n  \"nwa</w>\": 34237,\n  \"nwo</w>\": 40976,\n  \"nws\": 23333,\n  \"nws</w>\": 30998,\n  \"nwsl</w>\": 48394,\n  \"nwt</w>\": 25029,\n  \"nx\": 18810,\n  \"nx</w>\": 16997,\n  \"nxt\": 35037,\n  \"nxt</w>\": 17804,\n  \"ny\": 1383,\n  \"ny</w>\": 1350,\n  \"nya</w>\": 24165,\n  \"nyc\": 13304,\n  \"nyc</w>\": 2832,\n  \"nycc</w>\": 27187,\n  \"nycfc</w>\": 47497,\n  \"nye\": 40723,\n  \"nye</w>\": 13416,\n  \"nyfw</w>\": 21089,\n  \"nyk</w>\": 46841,\n  \"nylon</w>\": 25915,\n  \"nyo\": 41534,\n  \"nyo</w>\": 44586,\n  \"nypd\": 42293,\n  \"nypd</w>\": 18279,\n  \"nyr</w>\": 32538,\n  \"nyrd</w>\": 47936,\n  \"nys\": 36375,\n  \"nys</w>\": 23423,\n  \"nyse</w>\": 32650,\n  \"nyt\": 46311,\n  \"nyt</w>\": 12816,\n  \"nytimes</w>\": 13772,\n  \"nyu\": 43143,\n  \"nyu</w>\": 31355,\n  \"nz\": 10142,\n  \"nz</w>\": 7082,\n  \"o\": 78,\n  \"o</w>\": 334,\n  \"oa</w>\": 11994,\n  \"oahu</w>\": 37790,\n  \"oak\": 6010,\n  \"oak</w>\": 7221,\n  \"oakland\": 42663,\n  \"oakland</w>\": 12077,\n  \"oakley</w>\": 27810,\n  \"oaks</w>\": 16734,\n  \"oakville</w>\": 38500,\n  \"oasis</w>\": 18185,\n  \"oat\": 20095,\n  \"oat</w>\": 34132,\n  \"oates</w>\": 47094,\n  \"oath</w>\": 20108,\n  \"oatmeal</w>\": 26374,\n  \"oats</w>\": 24150,\n  \"oax\": 43090,\n  \"oaxaca</w>\": 47818,\n  \"ob\": 1411,\n  \"ob</w>\": 14908,\n  \"oba\": 42902,\n  \"oba</w>\": 15147,\n  \"obam\": 13174,\n  \"obama</w>\": 4276,\n  \"obamacare</w>\": 18005,\n  \"obe\": 11897,\n  \"obe</w>\": 29117,\n  \"obedience</w>\": 48921,\n  \"ober\": 15284,\n  \"obese</w>\": 41757,\n  \"obesity</w>\": 19499,\n  \"obey</w>\": 26926,\n  \"obi\": 21454,\n  \"obi</w>\": 18414,\n  \"obile</w>\": 20513,\n  \"obitu\": 39218,\n  \"obituary</w>\": 43580,\n  \"objec\": 7970,\n  \"object</w>\": 14115,\n  \"objective</w>\": 23663,\n  \"objectives</w>\": 30238,\n  \"objects</w>\": 13770,\n  \"obl\": 31452,\n  \"oblast</w>\": 42672,\n  \"obli\": 11416,\n  \"obligation</w>\": 34473,\n  \"obligations</w>\": 38232,\n  \"obligatory</w>\": 35020,\n  \"oblivion</w>\": 45323,\n  \"obo\": 46001,\n  \"obo</w>\": 26618,\n  \"obrien</w>\": 31946,\n  \"obs</w>\": 39162,\n  \"obsc\": 20392,\n  \"obscure</w>\": 33337,\n  \"obse\": 8433,\n  \"observ\": 9050,\n  \"observation</w>\": 20250,\n  \"observations</w>\": 27409,\n  \"observatory</w>\": 21236,\n  \"observe</w>\": 23217,\n  \"observed</w>\": 21267,\n  \"observer</w>\": 22077,\n  \"observers</w>\": 47544,\n  \"observing</w>\": 28359,\n  \"obsessed</w>\": 9744,\n  \"obsession</w>\": 15718,\n  \"obsi\": 47323,\n  \"obsole\": 35561,\n  \"obsolete</w>\": 40628,\n  \"obst\": 29398,\n  \"obstac\": 24075,\n  \"obstacle</w>\": 29751,\n  \"obstacles</w>\": 24480,\n  \"obste\": 49103,\n  \"obstru\": 44876,\n  \"obstruc\": 38762,\n  \"obstruction</w>\": 40240,\n  \"obtain</w>\": 26555,\n  \"obtained</w>\": 29322,\n  \"obvious</w>\": 13959,\n  \"obviously</w>\": 10068,\n  \"oc\": 1566,\n  \"oc</w>\": 6603,\n  \"oca</w>\": 31120,\n  \"ocal</w>\": 38148,\n  \"occ</w>\": 43940,\n  \"occa\": 8530,\n  \"occasion</w>\": 12280,\n  \"occasional</w>\": 33059,\n  \"occasionally</w>\": 32479,\n  \"occasions</w>\": 26154,\n  \"occer</w>\": 20804,\n  \"occi\": 42994,\n  \"occu\": 7863,\n  \"occult</w>\": 42529,\n  \"occup\": 11152,\n  \"occupation</w>\": 18624,\n  \"occupational</w>\": 30644,\n  \"occupied</w>\": 17271,\n  \"occupy\": 22453,\n  \"occupy</w>\": 24210,\n  \"occur\": 11264,\n  \"occur</w>\": 21813,\n  \"occurred</w>\": 19850,\n  \"occurrence</w>\": 40615,\n  \"occurring</w>\": 31335,\n  \"occurs</w>\": 26563,\n  \"ocd</w>\": 35904,\n  \"oce\": 3509,\n  \"ocean\": 12941,\n  \"ocean</w>\": 4918,\n  \"oceans</w>\": 16792,\n  \"och\": 29334,\n  \"och</w>\": 32011,\n  \"oche</w>\": 33045,\n  \"oci\": 9891,\n  \"ocity\": 46039,\n  \"ock\": 33579,\n  \"ock</w>\": 21313,\n  \"ocks</w>\": 22410,\n  \"oclock</w>\": 36274,\n  \"oco</w>\": 32553,\n  \"ocon</w>\": 33090,\n  \"ocr\": 45813,\n  \"ocre</w>\": 40320,\n  \"ocs</w>\": 27297,\n  \"oct</w>\": 4565,\n  \"octa\": 23444,\n  \"octag\": 37768,\n  \"octagon</w>\": 49167,\n  \"octane</w>\": 43040,\n  \"octavia</w>\": 47416,\n  \"octo\": 31032,\n  \"october</w>\": 3481,\n  \"octopus</w>\": 22327,\n  \"ocu\": 22709,\n  \"oculus</w>\": 30082,\n  \"od\": 4886,\n  \"od</w>\": 9719,\n  \"oda</w>\": 24777,\n  \"oday</w>\": 41954,\n  \"odd\": 15525,\n  \"odd</w>\": 11387,\n  \"oddly</w>\": 34213,\n  \"odds</w>\": 11555,\n  \"ode\": 19125,\n  \"ode</w>\": 19639,\n  \"odell</w>\": 41556,\n  \"odessa</w>\": 43574,\n  \"odi\": 12223,\n  \"odi</w>\": 18853,\n  \"odin</w>\": 35175,\n  \"odisha</w>\": 15737,\n  \"odo\": 49188,\n  \"odo</w>\": 40993,\n  \"odor</w>\": 39509,\n  \"odu\": 35095,\n  \"odu</w>\": 39904,\n  \"odyssey</w>\": 19991,\n  \"oe\": 24251,\n  \"oe</w>\": 11667,\n  \"oec\": 24288,\n  \"oecd</w>\": 30816,\n  \"oem</w>\": 29650,\n  \"oes</w>\": 3643,\n  \"of\": 684,\n  \"of</w>\": 539,\n  \"ofa</w>\": 29774,\n  \"ofc</w>\": 19877,\n  \"ofe\": 30000,\n  \"ofer\": 47322,\n  \"off\": 892,\n  \"off</w>\": 1007,\n  \"offe\": 8261,\n  \"offee</w>\": 34059,\n  \"offen\": 7231,\n  \"offence</w>\": 34594,\n  \"offences</w>\": 33972,\n  \"offended</w>\": 30765,\n  \"offender</w>\": 48294,\n  \"offenders</w>\": 35878,\n  \"offense</w>\": 15253,\n  \"offensive</w>\": 11037,\n  \"offer\": 20607,\n  \"offer</w>\": 3271,\n  \"offered</w>\": 9395,\n  \"offering</w>\": 6896,\n  \"offerings</w>\": 24535,\n  \"offers</w>\": 4679,\n  \"offic\": 3276,\n  \"office\": 18033,\n  \"office</w>\": 2171,\n  \"officeof\": 38750,\n  \"officeofrg</w>\": 47100,\n  \"officer</w>\": 4683,\n  \"officers</w>\": 6335,\n  \"offices</w>\": 10933,\n  \"offici\": 1401,\n  \"official\": 5768,\n  \"official</w>\": 1868,\n  \"officially</w>\": 4226,\n  \"officials</w>\": 7658,\n  \"officiel</w>\": 26548,\n  \"offl</w>\": 16851,\n  \"offline</w>\": 22724,\n  \"offro\": 32198,\n  \"offroad</w>\": 37173,\n  \"offs</w>\": 23987,\n  \"offseason</w>\": 25485,\n  \"offset</w>\": 28843,\n  \"offshore</w>\": 15496,\n  \"offside</w>\": 49347,\n  \"offspring</w>\": 38635,\n  \"offthe\": 38189,\n  \"ofi\": 36692,\n  \"ofi</w>\": 49090,\n  \"oficial</w>\": 18061,\n  \"oft</w>\": 16693,\n  \"oftball</w>\": 39768,\n  \"often</w>\": 4864,\n  \"ofthe\": 7592,\n  \"oftheday</w>\": 6988,\n  \"oftheweek</w>\": 20654,\n  \"oftheyear</w>\": 33975,\n  \"og\": 11542,\n  \"og</w>\": 8555,\n  \"oga</w>\": 47312,\n  \"ogden</w>\": 42011,\n  \"ogil\": 39013,\n  \"ography</w>\": 22399,\n  \"ogue</w>\": 24761,\n  \"ogun\": 48970,\n  \"oh\": 5648,\n  \"oh</w>\": 1779,\n  \"ohana</w>\": 48330,\n  \"ohh</w>\": 23076,\n  \"ohhh</w>\": 27697,\n  \"ohhhh</w>\": 40201,\n  \"ohi\": 5207,\n  \"ohio\": 18951,\n  \"ohio</w>\": 6155,\n  \"ohiostate</w>\": 41324,\n  \"ohl\": 45547,\n  \"ohl</w>\": 41095,\n  \"ohmy\": 29758,\n  \"ohn</w>\": 48043,\n  \"ohs</w>\": 39542,\n  \"ohwx</w>\": 47993,\n  \"oi\": 27357,\n  \"oi</w>\": 13934,\n  \"oic</w>\": 45554,\n  \"oid</w>\": 14758,\n  \"oids</w>\": 21847,\n  \"oil\": 11973,\n  \"oil</w>\": 2870,\n  \"oiland\": 32316,\n  \"oilandgas</w>\": 34130,\n  \"oilers</w>\": 21627,\n  \"oilpainting</w>\": 34279,\n  \"oils</w>\": 17886,\n  \"oily</w>\": 47550,\n  \"oir\": 48079,\n  \"oir</w>\": 37113,\n  \"ois</w>\": 23262,\n  \"oit\": 18453,\n  \"oitnb</w>\": 34865,\n  \"oj\": 30986,\n  \"oj</w>\": 34553,\n  \"ok\": 1944,\n  \"ok</w>\": 2481,\n  \"oka\": 42258,\n  \"oka</w>\": 19092,\n  \"okan\": 41263,\n  \"okanagan</w>\": 43233,\n  \"okay</w>\": 4917,\n  \"okc\": 42418,\n  \"okc</w>\": 18357,\n  \"oke\": 26636,\n  \"oke</w>\": 23598,\n  \"oki</w>\": 20390,\n  \"okin\": 30687,\n  \"okinawa</w>\": 35877,\n  \"okla\": 9431,\n  \"oklahoma</w>\": 10170,\n  \"oko\": 26892,\n  \"oko</w>\": 26095,\n  \"okstate</w>\": 36356,\n  \"oktoberfest</w>\": 32026,\n  \"oku\": 45010,\n  \"oku</w>\": 43829,\n  \"okwx</w>\": 27336,\n  \"ol\": 562,\n  \"ol</w>\": 2985,\n  \"ola\": 20499,\n  \"ola</w>\": 3373,\n  \"olaf</w>\": 39709,\n  \"olan\": 48489,\n  \"olan</w>\": 24227,\n  \"oland</w>\": 26452,\n  \"olas</w>\": 40800,\n  \"old\": 4931,\n  \"old</w>\": 896,\n  \"olde</w>\": 37731,\n  \"older</w>\": 7700,\n  \"oldest</w>\": 9285,\n  \"oldham</w>\": 29929,\n  \"oldie</w>\": 35280,\n  \"oldies</w>\": 36278,\n  \"oldman</w>\": 48614,\n  \"olds</w>\": 8580,\n  \"oldschool\": 44384,\n  \"oldschool</w>\": 25133,\n  \"oldsmobile</w>\": 45396,\n  \"ole\": 9089,\n  \"ole</w>\": 1947,\n  \"oled</w>\": 46768,\n  \"oler\": 24069,\n  \"oles</w>\": 16962,\n  \"olf</w>\": 16346,\n  \"olga</w>\": 34779,\n  \"oli\": 3811,\n  \"oli</w>\": 8810,\n  \"olic</w>\": 31341,\n  \"oligar\": 46185,\n  \"olim\": 47769,\n  \"olin\": 37823,\n  \"olin</w>\": 18283,\n  \"olina</w>\": 34711,\n  \"oline</w>\": 17441,\n  \"oling</w>\": 38033,\n  \"olini</w>\": 36040,\n  \"olis</w>\": 49397,\n  \"olithic</w>\": 35574,\n  \"olive\": 22486,\n  \"olive</w>\": 9898,\n  \"oliver\": 22882,\n  \"oliver</w>\": 9261,\n  \"olives</w>\": 27149,\n  \"olivi\": 20773,\n  \"olivia</w>\": 11697,\n  \"olivier</w>\": 23891,\n  \"oll\": 32270,\n  \"oll</w>\": 15510,\n  \"olla</w>\": 31908,\n  \"ollie</w>\": 24434,\n  \"olls</w>\": 42697,\n  \"olly</w>\": 23998,\n  \"olo\": 14628,\n  \"olo</w>\": 7606,\n  \"ological</w>\": 12345,\n  \"ologist</w>\": 23442,\n  \"ologists</w>\": 30912,\n  \"ology</w>\": 4627,\n  \"olor</w>\": 29245,\n  \"olph</w>\": 25077,\n  \"ols</w>\": 2236,\n  \"olsen</w>\": 26307,\n  \"olson</w>\": 28046,\n  \"olt</w>\": 46252,\n  \"olu\": 16502,\n  \"olu</w>\": 46302,\n  \"olulu</w>\": 27645,\n  \"oly\": 20323,\n  \"oly</w>\": 24823,\n  \"olym\": 3594,\n  \"olympi\": 13597,\n  \"olympia</w>\": 23965,\n  \"olympiad</w>\": 47694,\n  \"olympian</w>\": 25420,\n  \"olympians</w>\": 44583,\n  \"olympic\": 26099,\n  \"olympic</w>\": 6388,\n  \"olympics</w>\": 7629,\n  \"olympus</w>\": 30960,\n  \"om\": 547,\n  \"om</w>\": 3932,\n  \"oma\": 44603,\n  \"oma</w>\": 5358,\n  \"omaha</w>\": 16509,\n  \"oman\": 22088,\n  \"oman</w>\": 10871,\n  \"omar\": 19488,\n  \"omar</w>\": 13367,\n  \"omars</w>\": 37099,\n  \"omas</w>\": 36023,\n  \"omat\": 40788,\n  \"omb</w>\": 34447,\n  \"ombe</w>\": 35967,\n  \"omd</w>\": 49346,\n  \"ome\": 3693,\n  \"ome</w>\": 5832,\n  \"omed</w>\": 16835,\n  \"omega</w>\": 13465,\n  \"omelette</w>\": 38789,\n  \"omen\": 9969,\n  \"omen</w>\": 25469,\n  \"oment</w>\": 43683,\n  \"omeo</w>\": 39844,\n  \"omer\": 24087,\n  \"omer</w>\": 17902,\n  \"omes</w>\": 25736,\n  \"ometer</w>\": 20060,\n  \"ometric</w>\": 38702,\n  \"omez</w>\": 12541,\n  \"omf</w>\": 47496,\n  \"omfg</w>\": 12523,\n  \"omg\": 35233,\n  \"omg</w>\": 3186,\n  \"omi\": 24097,\n  \"omi</w>\": 10341,\n  \"omic\": 40536,\n  \"omic</w>\": 12793,\n  \"omics</w>\": 15138,\n  \"omile</w>\": 46915,\n  \"omin\": 16457,\n  \"omination</w>\": 42571,\n  \"oming</w>\": 10796,\n  \"ominous</w>\": 40914,\n  \"omni\": 18793,\n  \"omni</w>\": 39489,\n  \"omnibus</w>\": 44760,\n  \"omnic\": 48383,\n  \"omo\": 14478,\n  \"omo</w>\": 11066,\n  \"omon\": 48758,\n  \"omor\": 29431,\n  \"oms</w>\": 3770,\n  \"omusic</w>\": 38965,\n  \"omy\": 40805,\n  \"omy</w>\": 6884,\n  \"on\": 521,\n  \"on</w>\": 525,\n  \"ona</w>\": 2687,\n  \"onair</w>\": 29511,\n  \"onal</w>\": 918,\n  \"onboard</w>\": 21689,\n  \"once\": 16331,\n  \"once</w>\": 2654,\n  \"onceupon\": 28122,\n  \"onceuponatime</w>\": 33505,\n  \"onco\": 46700,\n  \"oncology</w>\": 24593,\n  \"ond\": 27918,\n  \"ond</w>\": 2636,\n  \"onda</w>\": 32643,\n  \"onday</w>\": 29864,\n  \"onde</w>\": 44532,\n  \"ondo</w>\": 29529,\n  \"ondon\": 42043,\n  \"ondon</w>\": 11851,\n  \"one\": 1980,\n  \"one</w>\": 637,\n  \"onec\": 27746,\n  \"oned\": 28012,\n  \"oned</w>\": 4698,\n  \"onedirection</w>\": 16245,\n  \"onee</w>\": 44433,\n  \"oneill</w>\": 44808,\n  \"onelove</w>\": 47417,\n  \"onent</w>\": 12147,\n  \"onents</w>\": 11709,\n  \"oneof\": 48478,\n  \"onep\": 20440,\n  \"onepiece</w>\": 43153,\n  \"oneplus</w>\": 25981,\n  \"oner\": 30055,\n  \"oner</w>\": 6071,\n  \"oners</w>\": 12324,\n  \"ones\": 20757,\n  \"ones</w>\": 1575,\n  \"oneself</w>\": 46874,\n  \"onesie</w>\": 33237,\n  \"oness</w>\": 25379,\n  \"onet</w>\": 36058,\n  \"oneteam</w>\": 41094,\n  \"onetsy</w>\": 33392,\n  \"onew</w>\": 43848,\n  \"onews</w>\": 18696,\n  \"onex</w>\": 49116,\n  \"oney\": 44498,\n  \"oney</w>\": 9408,\n  \"onf</w>\": 41790,\n  \"onfox</w>\": 29874,\n  \"ong\": 2787,\n  \"ong</w>\": 846,\n  \"onga</w>\": 30259,\n  \"ongchang</w>\": 35071,\n  \"ongi</w>\": 21754,\n  \"ongo</w>\": 31226,\n  \"ongoing</w>\": 10393,\n  \"ongs</w>\": 12143,\n  \"oni\": 4385,\n  \"oni</w>\": 8048,\n  \"onia</w>\": 8001,\n  \"onial</w>\": 27599,\n  \"onian</w>\": 21090,\n  \"onic\": 15838,\n  \"onic</w>\": 3711,\n  \"onica</w>\": 14631,\n  \"onics</w>\": 9779,\n  \"onie</w>\": 35249,\n  \"onies</w>\": 22601,\n  \"onimo</w>\": 41271,\n  \"oning</w>\": 5197,\n  \"onion</w>\": 10985,\n  \"onions</w>\": 15255,\n  \"onist</w>\": 10099,\n  \"onists</w>\": 19659,\n  \"onix</w>\": 27370,\n  \"onized</w>\": 43657,\n  \"onlin\": 31103,\n  \"online\": 12940,\n  \"online</w>\": 2027,\n  \"onlinemarketing</w>\": 41820,\n  \"onlineshopping</w>\": 38587,\n  \"only\": 11646,\n  \"only</w>\": 1033,\n  \"onlyin\": 32947,\n  \"onna\": 25438,\n  \"onna</w>\": 35458,\n  \"onnaise</w>\": 48934,\n  \"onne</w>\": 23466,\n  \"onnell</w>\": 45613,\n  \"ono\": 28165,\n  \"ono</w>\": 14388,\n  \"onom\": 48014,\n  \"onomy</w>\": 36873,\n  \"onpoli</w>\": 20708,\n  \"ons\": 26076,\n  \"ons</w>\": 708,\n  \"onsale</w>\": 36324,\n  \"onset</w>\": 30527,\n  \"onsite</w>\": 37336,\n  \"onstage</w>\": 21821,\n  \"onstorm</w>\": 49333,\n  \"ont\": 34303,\n  \"ont</w>\": 11157,\n  \"ontari\": 6739,\n  \"ontario\": 42766,\n  \"ontario</w>\": 7436,\n  \"onte</w>\": 34723,\n  \"onthe\": 12241,\n  \"onther\": 46563,\n  \"ontheroad</w>\": 47516,\n  \"onthisday</w>\": 6862,\n  \"onto\": 11745,\n  \"onto</w>\": 3141,\n  \"ontology</w>\": 37364,\n  \"ontour</w>\": 32155,\n  \"onu\": 44142,\n  \"onward</w>\": 34827,\n  \"onwards</w>\": 20682,\n  \"ony\": 9490,\n  \"ony</w>\": 2926,\n  \"onym\": 11483,\n  \"onymous</w>\": 13038,\n  \"onyx</w>\": 31353,\n  \"oo\": 574,\n  \"oo</w>\": 2822,\n  \"ood\": 16429,\n  \"ood</w>\": 738,\n  \"oodle</w>\": 45289,\n  \"oods</w>\": 44660,\n  \"oof</w>\": 42270,\n  \"ooh</w>\": 16806,\n  \"ook\": 22326,\n  \"ook</w>\": 8394,\n  \"ooks</w>\": 31082,\n  \"ool\": 37702,\n  \"ool</w>\": 929,\n  \"oom\": 22786,\n  \"oom</w>\": 15002,\n  \"oomf</w>\": 40607,\n  \"oon\": 35651,\n  \"oon</w>\": 7100,\n  \"ooo</w>\": 9571,\n  \"oooh</w>\": 28927,\n  \"oooo\": 4002,\n  \"oooo</w>\": 13643,\n  \"ooooo</w>\": 12532,\n  \"oooooo\": 43590,\n  \"oooooo</w>\": 20372,\n  \"ooooooo</w>\": 30859,\n  \"oooooooo\": 15473,\n  \"oooooooo</w>\": 43408,\n  \"oooooooooooooooo\": 48645,\n  \"oop</w>\": 7326,\n  \"ooper</w>\": 39906,\n  \"oops</w>\": 9116,\n  \"oor</w>\": 35239,\n  \"oos</w>\": 9896,\n  \"oosa</w>\": 30834,\n  \"oose</w>\": 38941,\n  \"oot</w>\": 17667,\n  \"ootball</w>\": 28914,\n  \"ootd</w>\": 16547,\n  \"ooth</w>\": 12682,\n  \"oott</w>\": 34316,\n  \"ooza</w>\": 22809,\n  \"op\": 676,\n  \"op</w>\": 3691,\n  \"opa</w>\": 28949,\n  \"opal</w>\": 28982,\n  \"opar\": 18167,\n  \"opath\": 33079,\n  \"opathic</w>\": 37521,\n  \"opathy</w>\": 28466,\n  \"opau\": 27239,\n  \"opd</w>\": 38288,\n  \"ope\": 31694,\n  \"ope</w>\": 11440,\n  \"opec</w>\": 33138,\n  \"opel</w>\": 36952,\n  \"open\": 3647,\n  \"open</w>\": 1488,\n  \"openaccess</w>\": 26591,\n  \"opend\": 28069,\n  \"opendata</w>\": 35709,\n  \"openday</w>\": 46991,\n  \"opened</w>\": 5303,\n  \"opener</w>\": 8998,\n  \"openhouse</w>\": 36091,\n  \"opening\": 33728,\n  \"opening</w>\": 2516,\n  \"openingday</w>\": 36359,\n  \"openings</w>\": 27643,\n  \"openly</w>\": 23005,\n  \"opens</w>\": 4801,\n  \"opensource</w>\": 29930,\n  \"oper\": 2796,\n  \"oper</w>\": 37533,\n  \"opera</w>\": 8056,\n  \"operate</w>\": 19306,\n  \"operated</w>\": 23031,\n  \"operates</w>\": 38675,\n  \"operating</w>\": 12218,\n  \"operation\": 27173,\n  \"operation</w>\": 7639,\n  \"operational</w>\": 18237,\n  \"operations</w>\": 8106,\n  \"operative</w>\": 28380,\n  \"operator</w>\": 15972,\n  \"operators</w>\": 19267,\n  \"opers</w>\": 48728,\n  \"opes</w>\": 37258,\n  \"oph\": 6796,\n  \"opha\": 38634,\n  \"ophel\": 45017,\n  \"ophelia</w>\": 49118,\n  \"ophi\": 44547,\n  \"ophile</w>\": 35915,\n  \"opho\": 12900,\n  \"ophobia</w>\": 21111,\n  \"ophobic</w>\": 29934,\n  \"ophon\": 25120,\n  \"ophone</w>\": 26345,\n  \"ophthal\": 33135,\n  \"ophy\": 28539,\n  \"opi\": 40056,\n  \"opi</w>\": 48994,\n  \"opin\": 7636,\n  \"opini\": 14825,\n  \"opinion</w>\": 7843,\n  \"opinions</w>\": 16192,\n  \"opio\": 17371,\n  \"opioid</w>\": 22833,\n  \"opioids</w>\": 47578,\n  \"opla\": 36270,\n  \"ople</w>\": 25663,\n  \"opol\": 15173,\n  \"opoly</w>\": 23729,\n  \"opor\": 39650,\n  \"opoulos</w>\": 42020,\n  \"opp\": 2020,\n  \"opp</w>\": 21024,\n  \"oppa</w>\": 23637,\n  \"oppo\": 7399,\n  \"oppo</w>\": 41770,\n  \"opponent</w>\": 17002,\n  \"opponents</w>\": 19664,\n  \"oppor\": 2914,\n  \"opportun\": 2939,\n  \"opportunities</w>\": 5978,\n  \"opportunity</w>\": 4004,\n  \"oppos\": 10091,\n  \"oppose</w>\": 23617,\n  \"opposed</w>\": 22509,\n  \"opposes</w>\": 47471,\n  \"opposing</w>\": 24376,\n  \"opposite</w>\": 12872,\n  \"opposition</w>\": 11062,\n  \"oppre\": 17341,\n  \"oppressed</w>\": 41492,\n  \"oppression</w>\": 30650,\n  \"opra</w>\": 28291,\n  \"oprah</w>\": 22562,\n  \"opry</w>\": 35340,\n  \"ops</w>\": 3054,\n  \"opt\": 45103,\n  \"opt</w>\": 27188,\n  \"opted</w>\": 42035,\n  \"opti\": 6580,\n  \"optic\": 25190,\n  \"optic</w>\": 24755,\n  \"optical</w>\": 16822,\n  \"optics</w>\": 27165,\n  \"optim\": 22331,\n  \"optimal</w>\": 25235,\n  \"optimi\": 9737,\n  \"optimis\": 39459,\n  \"optimism</w>\": 25226,\n  \"optimist</w>\": 44581,\n  \"optimistic</w>\": 23104,\n  \"optimization</w>\": 25125,\n  \"optimize</w>\": 30456,\n  \"optimized</w>\": 43939,\n  \"optimizing</w>\": 49157,\n  \"optimum</w>\": 35974,\n  \"optimus</w>\": 43453,\n  \"option</w>\": 8464,\n  \"optional</w>\": 25411,\n  \"options</w>\": 7063,\n  \"optome\": 35533,\n  \"opul\": 39858,\n  \"opus</w>\": 33295,\n  \"opy</w>\": 21835,\n  \"or\": 523,\n  \"or</w>\": 541,\n  \"ora</w>\": 4301,\n  \"orac\": 24673,\n  \"oracle\": 37308,\n  \"oracle</w>\": 15966,\n  \"orah</w>\": 40820,\n  \"orail</w>\": 45120,\n  \"oral\": 32490,\n  \"oral</w>\": 6007,\n  \"orama</w>\": 33619,\n  \"oran\": 32209,\n  \"oran</w>\": 28395,\n  \"orang\": 22116,\n  \"orange\": 13957,\n  \"orange</w>\": 4287,\n  \"oranges</w>\": 32417,\n  \"orangu\": 36112,\n  \"orb\": 28894,\n  \"orb</w>\": 36958,\n  \"orbit</w>\": 19713,\n  \"orbital</w>\": 40312,\n  \"orc</w>\": 44305,\n  \"orca</w>\": 18631,\n  \"orcas</w>\": 47676,\n  \"orch\": 11893,\n  \"orchar\": 40226,\n  \"orchard</w>\": 19530,\n  \"orche\": 8004,\n  \"orchestr\": 42937,\n  \"orchestra</w>\": 9573,\n  \"orchestral</w>\": 40285,\n  \"orchi\": 23696,\n  \"orchid</w>\": 18678,\n  \"orchids</w>\": 28376,\n  \"ord\": 26903,\n  \"ord</w>\": 11502,\n  \"orda\": 33462,\n  \"ordained</w>\": 38302,\n  \"order\": 24613,\n  \"order</w>\": 2191,\n  \"ordered</w>\": 8335,\n  \"ordering</w>\": 19588,\n  \"orderly</w>\": 43457,\n  \"orders</w>\": 6187,\n  \"ordin\": 4378,\n  \"ordinance</w>\": 38583,\n  \"ordinary</w>\": 8012,\n  \"ore\": 3580,\n  \"ore</w>\": 1423,\n  \"orean</w>\": 36696,\n  \"ored</w>\": 5133,\n  \"oregon\": 21759,\n  \"oregon</w>\": 8035,\n  \"oren\": 21645,\n  \"oreo</w>\": 21873,\n  \"oreos</w>\": 41688,\n  \"ores</w>\": 17328,\n  \"org\": 3401,\n  \"org</w>\": 5593,\n  \"organ\": 3338,\n  \"organ</w>\": 13213,\n  \"organi\": 3636,\n  \"organic\": 24080,\n  \"organic</w>\": 5980,\n  \"organics</w>\": 44199,\n  \"organis\": 13204,\n  \"organisation</w>\": 15868,\n  \"organisations</w>\": 20651,\n  \"organise</w>\": 36073,\n  \"organised</w>\": 13191,\n  \"organiser</w>\": 49141,\n  \"organisers</w>\": 35778,\n  \"organising</w>\": 22787,\n  \"organisms</w>\": 37041,\n  \"organiz\": 11107,\n  \"organization</w>\": 8064,\n  \"organizational</w>\": 29510,\n  \"organizations</w>\": 13453,\n  \"organize</w>\": 19973,\n  \"organized</w>\": 10681,\n  \"organizer</w>\": 23905,\n  \"organizers</w>\": 27191,\n  \"organizing</w>\": 15779,\n  \"organs</w>\": 29872,\n  \"orgs</w>\": 29500,\n  \"ori\": 1540,\n  \"ori</w>\": 8693,\n  \"oria</w>\": 11474,\n  \"orial</w>\": 8648,\n  \"orian</w>\": 21193,\n  \"oric</w>\": 43810,\n  \"orice</w>\": 41341,\n  \"orie</w>\": 18815,\n  \"orient\": 13149,\n  \"orient</w>\": 30770,\n  \"oriental</w>\": 23056,\n  \"orientation</w>\": 16873,\n  \"oriente\": 40390,\n  \"oriented</w>\": 24596,\n  \"orienteering</w>\": 42985,\n  \"ories</w>\": 5934,\n  \"orig\": 2273,\n  \"orig</w>\": 38463,\n  \"origami</w>\": 31832,\n  \"origin\": 2555,\n  \"origin</w>\": 12372,\n  \"original\": 18496,\n  \"original</w>\": 3117,\n  \"originally</w>\": 12849,\n  \"originals</w>\": 16953,\n  \"originated</w>\": 41823,\n  \"origins</w>\": 16291,\n  \"orin</w>\": 39863,\n  \"oring</w>\": 3006,\n  \"orio</w>\": 24308,\n  \"orioles</w>\": 21430,\n  \"orion</w>\": 21765,\n  \"oris</w>\": 37064,\n  \"orities</w>\": 7903,\n  \"ority</w>\": 5556,\n  \"orium</w>\": 12015,\n  \"ork\": 22202,\n  \"ork</w>\": 37235,\n  \"orkney</w>\": 34254,\n  \"orl</w>\": 39465,\n  \"orlando\": 32247,\n  \"orlando</w>\": 7827,\n  \"orleans</w>\": 11127,\n  \"orm</w>\": 38464,\n  \"orn\": 25412,\n  \"orn</w>\": 8130,\n  \"ornam\": 36122,\n  \"ornament</w>\": 23409,\n  \"ornamental</w>\": 46270,\n  \"ornaments</w>\": 28968,\n  \"ornate</w>\": 46865,\n  \"orni\": 27713,\n  \"ornithology</w>\": 38275,\n  \"orns</w>\": 19340,\n  \"oro\": 9848,\n  \"oro</w>\": 14573,\n  \"orous</w>\": 19286,\n  \"orph\": 17318,\n  \"orphan\": 22718,\n  \"orphan</w>\": 28994,\n  \"orphanage</w>\": 45196,\n  \"orphaned</w>\": 46792,\n  \"orphans</w>\": 36588,\n  \"orphe\": 39186,\n  \"orr</w>\": 32977,\n  \"ors</w>\": 1127,\n  \"orship</w>\": 20846,\n  \"ort</w>\": 1019,\n  \"ortega</w>\": 39727,\n  \"orth\": 22584,\n  \"orth</w>\": 24461,\n  \"ortho\": 11366,\n  \"orthodon\": 37730,\n  \"orthodox</w>\": 19008,\n  \"orthop\": 42123,\n  \"orthopedic</w>\": 49341,\n  \"ortiz</w>\": 23544,\n  \"orton</w>\": 37238,\n  \"oru\": 44629,\n  \"oru</w>\": 31281,\n  \"orum</w>\": 42724,\n  \"orwell</w>\": 41218,\n  \"ory\": 16983,\n  \"ory</w>\": 1985,\n  \"os\": 2211,\n  \"os</w>\": 1299,\n  \"osa\": 16340,\n  \"osa</w>\": 17237,\n  \"osaka</w>\": 21347,\n  \"osborne</w>\": 22402,\n  \"osbourne</w>\": 43376,\n  \"osc\": 5092,\n  \"oscar\": 21157,\n  \"oscar</w>\": 8191,\n  \"oscars</w>\": 11098,\n  \"osce</w>\": 37303,\n  \"oscill\": 38272,\n  \"ose\": 46942,\n  \"ose</w>\": 22541,\n  \"osh\": 30717,\n  \"osh</w>\": 35011,\n  \"osha</w>\": 33907,\n  \"oshi</w>\": 34770,\n  \"osi\": 25247,\n  \"osi</w>\": 17636,\n  \"osis</w>\": 13903,\n  \"osity</w>\": 12730,\n  \"oslo</w>\": 20547,\n  \"osm\": 31626,\n  \"osman</w>\": 46539,\n  \"oso\": 42793,\n  \"oso</w>\": 21285,\n  \"osp\": 24387,\n  \"ospre\": 49001,\n  \"osprey</w>\": 37893,\n  \"oss\": 29362,\n  \"oss</w>\": 34640,\n  \"ost\": 23701,\n  \"ost</w>\": 18749,\n  \"oste\": 20632,\n  \"osteo\": 43163,\n  \"oster\": 31781,\n  \"ostr\": 33673,\n  \"ostrich</w>\": 47640,\n  \"osu\": 29480,\n  \"osu</w>\": 19818,\n  \"oswald</w>\": 38471,\n  \"ot\": 1863,\n  \"ot</w>\": 2062,\n  \"ota\": 17509,\n  \"ota</w>\": 8741,\n  \"otago</w>\": 45919,\n  \"otaku</w>\": 40743,\n  \"otas</w>\": 47616,\n  \"otc</w>\": 37934,\n  \"otd</w>\": 5683,\n  \"ote\": 28511,\n  \"ote</w>\": 19744,\n  \"otes</w>\": 27280,\n  \"oth\": 33262,\n  \"oth</w>\": 33519,\n  \"other\": 9758,\n  \"other</w>\": 1010,\n  \"others</w>\": 3326,\n  \"otherwise</w>\": 12376,\n  \"oti\": 19567,\n  \"oti</w>\": 45564,\n  \"otic</w>\": 9671,\n  \"otis</w>\": 28246,\n  \"otive</w>\": 10877,\n  \"oto\": 23946,\n  \"oto</w>\": 23399,\n  \"otp</w>\": 29822,\n  \"otr</w>\": 38685,\n  \"ots</w>\": 5769,\n  \"ott\": 10167,\n  \"ott</w>\": 7936,\n  \"otta\": 7623,\n  \"otta</w>\": 20941,\n  \"ottawa\": 49027,\n  \"ottawa</w>\": 9019,\n  \"otte</w>\": 35214,\n  \"otter\": 34710,\n  \"otter</w>\": 22456,\n  \"otters</w>\": 38883,\n  \"otti</w>\": 36721,\n  \"ottnews</w>\": 33995,\n  \"otto</w>\": 17730,\n  \"ottoman</w>\": 27503,\n  \"otw</w>\": 35259,\n  \"otwol\": 46868,\n  \"ou\": 520,\n  \"ou</w>\": 6544,\n  \"ouat</w>\": 32954,\n  \"ouch</w>\": 13493,\n  \"oud</w>\": 1359,\n  \"oue</w>\": 48838,\n  \"ouf</w>\": 34618,\n  \"ough\": 4204,\n  \"ough</w>\": 991,\n  \"ought</w>\": 2253,\n  \"oughton</w>\": 36860,\n  \"oui</w>\": 39421,\n  \"ouk</w>\": 21796,\n  \"oul\": 20253,\n  \"oul</w>\": 8081,\n  \"ould</w>\": 859,\n  \"oulos</w>\": 32808,\n  \"oun\": 636,\n  \"oun</w>\": 20960,\n  \"ounce</w>\": 15027,\n  \"ounces</w>\": 30299,\n  \"ound\": 2013,\n  \"ound</w>\": 853,\n  \"oundation</w>\": 40132,\n  \"ounded</w>\": 9634,\n  \"ounding</w>\": 11944,\n  \"ounds</w>\": 2753,\n  \"oung\": 35875,\n  \"oung</w>\": 25341,\n  \"ounge</w>\": 29427,\n  \"ount\": 43801,\n  \"ount</w>\": 4172,\n  \"ounts</w>\": 10963,\n  \"oup</w>\": 32815,\n  \"our\": 727,\n  \"our</w>\": 581,\n  \"oura\": 29806,\n  \"oura</w>\": 36352,\n  \"ourable</w>\": 24126,\n  \"ourage</w>\": 34525,\n  \"oural</w>\": 45840,\n  \"oured</w>\": 6956,\n  \"ouri\": 12696,\n  \"ouring</w>\": 12000,\n  \"ourism</w>\": 25496,\n  \"ourke</w>\": 26480,\n  \"ourlives</w>\": 37541,\n  \"ouro\": 41224,\n  \"ours</w>\": 1491,\n  \"ourse</w>\": 15415,\n  \"ourselves</w>\": 10124,\n  \"ourt</w>\": 22960,\n  \"oury</w>\": 29484,\n  \"ous\": 1987,\n  \"ous</w>\": 879,\n  \"ouse\": 32048,\n  \"ouse</w>\": 7603,\n  \"ouses</w>\": 33666,\n  \"ously</w>\": 2501,\n  \"ousness</w>\": 10689,\n  \"ousy</w>\": 28302,\n  \"out\": 1130,\n  \"out</w>\": 620,\n  \"outa</w>\": 35187,\n  \"outage</w>\": 27320,\n  \"outages</w>\": 40353,\n  \"outback</w>\": 28532,\n  \"outbound</w>\": 41256,\n  \"outbreak</w>\": 20103,\n  \"outcome</w>\": 16552,\n  \"outcomes</w>\": 14016,\n  \"outdated</w>\": 38313,\n  \"outdoor\": 19184,\n  \"outdoor</w>\": 6368,\n  \"outdoors</w>\": 10469,\n  \"oute</w>\": 44180,\n  \"outed</w>\": 34435,\n  \"outer\": 30499,\n  \"outer</w>\": 14188,\n  \"outes</w>\": 39600,\n  \"outfield</w>\": 41826,\n  \"outfit</w>\": 6525,\n  \"outfits</w>\": 16366,\n  \"outfitters</w>\": 37725,\n  \"outfy</w>\": 34920,\n  \"outgoing</w>\": 27302,\n  \"outh\": 16933,\n  \"outh</w>\": 8111,\n  \"outine</w>\": 35452,\n  \"outing</w>\": 11251,\n  \"outlander\": 45820,\n  \"outlander</w>\": 17095,\n  \"outlaw\": 37498,\n  \"outlaw</w>\": 27340,\n  \"outlaws</w>\": 30935,\n  \"outlet</w>\": 16855,\n  \"outlets</w>\": 20822,\n  \"outline</w>\": 26894,\n  \"outlines</w>\": 29159,\n  \"outlining</w>\": 45960,\n  \"outlook</w>\": 12983,\n  \"outof\": 43958,\n  \"outpatient</w>\": 46603,\n  \"outpost</w>\": 44622,\n  \"output</w>\": 17255,\n  \"outra\": 14262,\n  \"outrage</w>\": 23577,\n  \"outraged</w>\": 43402,\n  \"outrageous</w>\": 29342,\n  \"outre\": 14373,\n  \"outreach</w>\": 15297,\n  \"outright</w>\": 38200,\n  \"outs</w>\": 5790,\n  \"outsi\": 22515,\n  \"outside\": 47693,\n  \"outside</w>\": 2782,\n  \"outsider</w>\": 41196,\n  \"outsiders</w>\": 41742,\n  \"outskirts</w>\": 42088,\n  \"outsourcing</w>\": 34543,\n  \"outstanding</w>\": 6387,\n  \"outta</w>\": 15807,\n  \"outtuesday</w>\": 48692,\n  \"outw\": 34650,\n  \"oux\": 40960,\n  \"oux</w>\": 14228,\n  \"ov\": 6420,\n  \"ov</w>\": 8479,\n  \"ova</w>\": 12762,\n  \"oval</w>\": 15039,\n  \"ovarian</w>\": 42913,\n  \"ovation</w>\": 24333,\n  \"ove\": 8649,\n  \"ove</w>\": 15456,\n  \"oven\": 44620,\n  \"oven</w>\": 12579,\n  \"over\": 1658,\n  \"over</w>\": 962,\n  \"overall</w>\": 6914,\n  \"overboard</w>\": 42982,\n  \"overcame</w>\": 47235,\n  \"overcast</w>\": 36942,\n  \"overcome</w>\": 14365,\n  \"overcoming</w>\": 29348,\n  \"overdose</w>\": 27017,\n  \"overdrive</w>\": 40088,\n  \"overdue</w>\": 30240,\n  \"overflow</w>\": 32885,\n  \"overflowing</w>\": 45370,\n  \"overhaul</w>\": 31531,\n  \"overhead</w>\": 20321,\n  \"overland</w>\": 38808,\n  \"overlay</w>\": 44827,\n  \"overload</w>\": 24327,\n  \"overlook</w>\": 35767,\n  \"overlooked</w>\": 27632,\n  \"overlooking</w>\": 17319,\n  \"overly</w>\": 28820,\n  \"overnight</w>\": 9913,\n  \"overpass</w>\": 44310,\n  \"overrated</w>\": 38214,\n  \"overs\": 45774,\n  \"overs</w>\": 17329,\n  \"overseas</w>\": 15100,\n  \"oversight</w>\": 32494,\n  \"oversized</w>\": 31557,\n  \"overtime</w>\": 19347,\n  \"overturned</w>\": 31048,\n  \"overview</w>\": 14789,\n  \"overwatch</w>\": 18124,\n  \"overweight</w>\": 43465,\n  \"overwhel\": 12204,\n  \"overwhelmed</w>\": 23459,\n  \"overwhelming</w>\": 20306,\n  \"overwhelmingly</w>\": 43549,\n  \"ovi\": 32508,\n  \"ovic</w>\": 22417,\n  \"ovich</w>\": 27623,\n  \"ovie\": 47677,\n  \"ovo\": 41920,\n  \"ovo</w>\": 18065,\n  \"ovski</w>\": 26167,\n  \"ow\": 2032,\n  \"ow</w>\": 2250,\n  \"owa</w>\": 32770,\n  \"owe</w>\": 19073,\n  \"owed</w>\": 37641,\n  \"owen\": 24838,\n  \"owen</w>\": 12056,\n  \"owens</w>\": 20664,\n  \"owes</w>\": 35069,\n  \"owing</w>\": 48582,\n  \"owl\": 34332,\n  \"owl</w>\": 9899,\n  \"owls</w>\": 18247,\n  \"own\": 3845,\n  \"own</w>\": 1758,\n  \"owned</w>\": 8536,\n  \"owner</w>\": 5019,\n  \"owners</w>\": 7712,\n  \"ownership</w>\": 16583,\n  \"owning</w>\": 24661,\n  \"owns</w>\": 17533,\n  \"owo</w>\": 46142,\n  \"ows</w>\": 27423,\n  \"owski</w>\": 22573,\n  \"ox\": 3282,\n  \"ox</w>\": 12071,\n  \"oxfam</w>\": 45466,\n  \"oxford\": 28588,\n  \"oxford</w>\": 8824,\n  \"oxfordshire</w>\": 37855,\n  \"oxi\": 33731,\n  \"oxi</w>\": 48147,\n  \"oxid\": 17701,\n  \"oxide</w>\": 28235,\n  \"oxo</w>\": 37088,\n  \"oxy\": 12432,\n  \"oxygen</w>\": 16214,\n  \"oy\": 6638,\n  \"oy</w>\": 12437,\n  \"oya</w>\": 38894,\n  \"oye\": 48677,\n  \"oyster\": 40545,\n  \"oyster</w>\": 17253,\n  \"oysters</w>\": 22672,\n  \"oz\": 10584,\n  \"oz</w>\": 6044,\n  \"ozar\": 31848,\n  \"ozil</w>\": 41365,\n  \"ozone</w>\": 37052,\n  \"ozzy</w>\": 39549,\n  \"p\": 79,\n  \"p</w>\": 335,\n  \"pa\": 765,\n  \"pa</w>\": 2217,\n  \"paa</w>\": 32812,\n  \"pab\": 9354,\n  \"pablo\": 42172,\n  \"pablo</w>\": 14473,\n  \"pac\": 2332,\n  \"pac</w>\": 7608,\n  \"pace\": 40600,\n  \"pace</w>\": 9450,\n  \"paced</w>\": 32611,\n  \"pacers</w>\": 23976,\n  \"paces</w>\": 43001,\n  \"paci\": 5699,\n  \"pacific\": 19723,\n  \"pacific</w>\": 6654,\n  \"pacing</w>\": 45202,\n  \"pack\": 2711,\n  \"pack</w>\": 3420,\n  \"package</w>\": 7053,\n  \"packaged</w>\": 29656,\n  \"packages</w>\": 14305,\n  \"packaging</w>\": 11658,\n  \"packard</w>\": 46421,\n  \"packed</w>\": 5883,\n  \"packer</w>\": 28209,\n  \"packers</w>\": 14294,\n  \"packet</w>\": 25022,\n  \"packets</w>\": 40448,\n  \"packing</w>\": 9829,\n  \"packs</w>\": 11086,\n  \"paco</w>\": 41364,\n  \"pacqui\": 28456,\n  \"pacquiao</w>\": 30485,\n  \"pact</w>\": 27182,\n  \"pad\": 3798,\n  \"pad</w>\": 7601,\n  \"padded</w>\": 42253,\n  \"paddington</w>\": 33162,\n  \"paddle\": 38276,\n  \"paddle</w>\": 20811,\n  \"paddling</w>\": 40645,\n  \"paddock</w>\": 29590,\n  \"paddy\": 33103,\n  \"paddy</w>\": 19855,\n  \"padi</w>\": 47037,\n  \"padilla</w>\": 22380,\n  \"padma\": 44595,\n  \"padma</w>\": 46457,\n  \"padre</w>\": 38343,\n  \"padres</w>\": 22829,\n  \"pads</w>\": 17353,\n  \"paedi\": 41488,\n  \"paella</w>\": 46924,\n  \"paf\": 47185,\n  \"pafc</w>\": 49259,\n  \"pag\": 4151,\n  \"pag</w>\": 30525,\n  \"pagan</w>\": 27854,\n  \"page\": 14996,\n  \"page</w>\": 2504,\n  \"pageant</w>\": 22139,\n  \"pages</w>\": 8082,\n  \"pagoda</w>\": 44309,\n  \"pah\": 41054,\n  \"pah</w>\": 26884,\n  \"pai\": 20624,\n  \"pai</w>\": 21198,\n  \"paid</w>\": 5057,\n  \"paige\": 33659,\n  \"paige</w>\": 16022,\n  \"paign</w>\": 31796,\n  \"pain\": 2141,\n  \"pain</w>\": 4495,\n  \"paine</w>\": 38069,\n  \"painful</w>\": 16361,\n  \"pains</w>\": 25639,\n  \"paint\": 7948,\n  \"paint</w>\": 5185,\n  \"paintball</w>\": 39730,\n  \"painted</w>\": 6433,\n  \"painter</w>\": 10888,\n  \"painters</w>\": 35703,\n  \"painting\": 49164,\n  \"painting</w>\": 3086,\n  \"paintings</w>\": 9956,\n  \"paints</w>\": 21672,\n  \"pair\": 19848,\n  \"pair</w>\": 4038,\n  \"paired</w>\": 12433,\n  \"pairing</w>\": 16313,\n  \"pairings</w>\": 41152,\n  \"pairs</w>\": 9950,\n  \"pais\": 16878,\n  \"paisley</w>\": 22954,\n  \"pajam\": 24110,\n  \"pajama</w>\": 40244,\n  \"pajamas</w>\": 37231,\n  \"pak\": 13186,\n  \"pak</w>\": 9094,\n  \"paki\": 3438,\n  \"pakistan\": 10713,\n  \"pakistan</w>\": 3994,\n  \"pakistani</w>\": 14050,\n  \"pakistanis</w>\": 45707,\n  \"pakv\": 38196,\n  \"pal\": 1850,\n  \"pal</w>\": 3611,\n  \"pala</w>\": 17895,\n  \"palace</w>\": 6381,\n  \"palaces</w>\": 45625,\n  \"palad\": 28371,\n  \"palae\": 43379,\n  \"palais</w>\": 35673,\n  \"palate</w>\": 34666,\n  \"palawan</w>\": 48202,\n  \"palazzo</w>\": 36006,\n  \"pale\": 4768,\n  \"pale</w>\": 12518,\n  \"paleo\": 36741,\n  \"paleo</w>\": 22198,\n  \"paler\": 38028,\n  \"palermo</w>\": 40635,\n  \"palestin\": 9449,\n  \"palestine</w>\": 11682,\n  \"palestinian</w>\": 11764,\n  \"palestinians</w>\": 21874,\n  \"palette</w>\": 13901,\n  \"pali\": 48063,\n  \"palin</w>\": 40153,\n  \"palis\": 44256,\n  \"pality</w>\": 27296,\n  \"pall\": 35817,\n  \"palla\": 21208,\n  \"palladium</w>\": 37888,\n  \"pallet</w>\": 39057,\n  \"palli\": 28954,\n  \"palliative</w>\": 46014,\n  \"pally</w>\": 46073,\n  \"palm\": 19651,\n  \"palm</w>\": 8612,\n  \"palma</w>\": 29888,\n  \"palmer\": 40112,\n  \"palmer</w>\": 13633,\n  \"palms</w>\": 27059,\n  \"palo</w>\": 31562,\n  \"palom\": 47698,\n  \"palooza</w>\": 25861,\n  \"pals</w>\": 11043,\n  \"palsy</w>\": 46651,\n  \"pam\": 8228,\n  \"pam</w>\": 18513,\n  \"pamela</w>\": 26991,\n  \"pamp\": 37653,\n  \"pamper</w>\": 44345,\n  \"pamph\": 41332,\n  \"pan\": 1072,\n  \"pan</w>\": 7437,\n  \"panam\": 24606,\n  \"panama</w>\": 15522,\n  \"panas\": 26207,\n  \"panasonic</w>\": 29750,\n  \"pancake</w>\": 18723,\n  \"pancakes</w>\": 15308,\n  \"panch\": 27251,\n  \"pancra\": 42472,\n  \"pancre\": 27708,\n  \"pancreatic</w>\": 49337,\n  \"pancy</w>\": 41625,\n  \"pand\": 5631,\n  \"panda</w>\": 12952,\n  \"pandas</w>\": 35119,\n  \"pande\": 38419,\n  \"pandey</w>\": 34895,\n  \"pandit</w>\": 41191,\n  \"pandor\": 30250,\n  \"pandora</w>\": 17727,\n  \"pandoramusic</w>\": 42344,\n  \"pane</w>\": 27470,\n  \"panel</w>\": 3724,\n  \"paneli\": 19410,\n  \"panelist</w>\": 39719,\n  \"panelists</w>\": 24619,\n  \"panels</w>\": 12735,\n  \"panera</w>\": 48471,\n  \"pang\": 16756,\n  \"pang</w>\": 23672,\n  \"panhandle</w>\": 40919,\n  \"pani</w>\": 36092,\n  \"panic\": 46671,\n  \"panic</w>\": 14124,\n  \"panini</w>\": 30410,\n  \"pann\": 42302,\n  \"panna</w>\": 49065,\n  \"pano</w>\": 36165,\n  \"panor\": 12962,\n  \"panorama</w>\": 19763,\n  \"panoramic</w>\": 22563,\n  \"pans</w>\": 35204,\n  \"pant</w>\": 22550,\n  \"panther\": 22825,\n  \"panther</w>\": 13262,\n  \"panthers</w>\": 10494,\n  \"panties</w>\": 32515,\n  \"panto</w>\": 28776,\n  \"pantry</w>\": 25608,\n  \"pants</w>\": 5003,\n  \"panty\": 44217,\n  \"pany</w>\": 45567,\n  \"panzer</w>\": 41159,\n  \"pao</w>\": 33790,\n  \"paola</w>\": 44689,\n  \"paolo\": 48488,\n  \"paolo</w>\": 21133,\n  \"pap\": 1884,\n  \"pap</w>\": 30756,\n  \"papa</w>\": 12211,\n  \"papar\": 32782,\n  \"paparazzi</w>\": 37842,\n  \"papaya</w>\": 44098,\n  \"paper\": 8680,\n  \"paper</w>\": 2802,\n  \"paperback</w>\": 17928,\n  \"papers</w>\": 8204,\n  \"paperwork</w>\": 35785,\n  \"papi</w>\": 35177,\n  \"papp\": 26361,\n  \"paprika</w>\": 44793,\n  \"papua</w>\": 32629,\n  \"par\": 699,\n  \"par</w>\": 9163,\n  \"para\": 18355,\n  \"para</w>\": 8976,\n  \"parach\": 23147,\n  \"parachute</w>\": 30122,\n  \"parad\": 37143,\n  \"parade</w>\": 5809,\n  \"parades</w>\": 46479,\n  \"paradi\": 6658,\n  \"paradig\": 27786,\n  \"paradigm</w>\": 33485,\n  \"paradise\": 45869,\n  \"paradise</w>\": 7247,\n  \"paradox</w>\": 33109,\n  \"parag\": 11866,\n  \"paragon</w>\": 48099,\n  \"paragra\": 24903,\n  \"paragraph</w>\": 28499,\n  \"paragu\": 38021,\n  \"paraguay</w>\": 43579,\n  \"paral\": 15143,\n  \"paralle\": 13184,\n  \"parallel</w>\": 18201,\n  \"paralleled</w>\": 42520,\n  \"parallels</w>\": 46101,\n  \"paraly\": 30255,\n  \"paralym\": 18727,\n  \"paralympic</w>\": 30806,\n  \"paralympics</w>\": 37162,\n  \"paralysis</w>\": 45702,\n  \"param\": 12250,\n  \"parame\": 27106,\n  \"paramedic</w>\": 34630,\n  \"paramedics</w>\": 35991,\n  \"parameters</w>\": 44890,\n  \"paramore</w>\": 34401,\n  \"paramount</w>\": 26642,\n  \"parano\": 30283,\n  \"paranoid</w>\": 43029,\n  \"paranor\": 16940,\n  \"paranormal</w>\": 19047,\n  \"parap\": 41091,\n  \"paras\": 15198,\n  \"parasite</w>\": 42460,\n  \"parasites</w>\": 46175,\n  \"parc</w>\": 30914,\n  \"parcel</w>\": 30367,\n  \"parcels</w>\": 45589,\n  \"pard</w>\": 18773,\n  \"pardon\": 47606,\n  \"pardon</w>\": 26565,\n  \"pare\": 18202,\n  \"pared</w>\": 5498,\n  \"paren\": 3106,\n  \"parent\": 47848,\n  \"parent</w>\": 10183,\n  \"parental</w>\": 28339,\n  \"parenthood</w>\": 23887,\n  \"parenting</w>\": 14529,\n  \"parents</w>\": 3731,\n  \"pares</w>\": 12420,\n  \"parfait</w>\": 46140,\n  \"pari\": 17961,\n  \"pari</w>\": 27979,\n  \"paris\": 13982,\n  \"paris</w>\": 3445,\n  \"parisagreement</w>\": 47405,\n  \"parish\": 47328,\n  \"parish</w>\": 13020,\n  \"parisi\": 45081,\n  \"parisian</w>\": 38512,\n  \"parity</w>\": 42734,\n  \"park\": 4985,\n  \"park</w>\": 1452,\n  \"parked</w>\": 16487,\n  \"parker\": 31119,\n  \"parker</w>\": 8365,\n  \"parkin\": 34868,\n  \"parking</w>\": 5984,\n  \"parkinson</w>\": 28129,\n  \"parkland</w>\": 31287,\n  \"parkrun</w>\": 25747,\n  \"parks</w>\": 6873,\n  \"parkway</w>\": 19882,\n  \"parl\": 30373,\n  \"parl</w>\": 29897,\n  \"parliam\": 5941,\n  \"parliament\": 41599,\n  \"parliament</w>\": 7151,\n  \"parliamentary</w>\": 17912,\n  \"parlor</w>\": 38253,\n  \"parlour</w>\": 37829,\n  \"parma</w>\": 36077,\n  \"parme\": 26295,\n  \"parmesan</w>\": 27274,\n  \"paro\": 17429,\n  \"parody</w>\": 24318,\n  \"parole</w>\": 32158,\n  \"parr</w>\": 44113,\n  \"parrish</w>\": 43043,\n  \"parrot</w>\": 23565,\n  \"parry</w>\": 40604,\n  \"parsley</w>\": 30077,\n  \"parsons</w>\": 22505,\n  \"part\": 1872,\n  \"part</w>\": 1551,\n  \"parte</w>\": 48508,\n  \"parth</w>\": 34790,\n  \"parti\": 10509,\n  \"partial</w>\": 18957,\n  \"partially</w>\": 21269,\n  \"partic\": 2871,\n  \"partici\": 9540,\n  \"particip\": 4400,\n  \"participant</w>\": 27674,\n  \"participants</w>\": 10237,\n  \"participate</w>\": 9433,\n  \"participated</w>\": 14252,\n  \"participates</w>\": 46414,\n  \"participating</w>\": 11535,\n  \"participation</w>\": 13529,\n  \"particle</w>\": 27716,\n  \"particles</w>\": 27012,\n  \"particul\": 11408,\n  \"particular</w>\": 14098,\n  \"particularly</w>\": 12170,\n  \"parties</w>\": 9032,\n  \"parting</w>\": 32844,\n  \"partisan</w>\": 20772,\n  \"partist</w>\": 44713,\n  \"partition</w>\": 42219,\n  \"partly</w>\": 21459,\n  \"partner\": 5210,\n  \"partner</w>\": 4568,\n  \"partnered</w>\": 21402,\n  \"partnering</w>\": 21182,\n  \"partners</w>\": 5568,\n  \"partnership</w>\": 6123,\n  \"partnerships</w>\": 17418,\n  \"parton</w>\": 43245,\n  \"partridge</w>\": 34872,\n  \"parts</w>\": 5149,\n  \"party\": 12877,\n  \"party</w>\": 1580,\n  \"partying</w>\": 25702,\n  \"pas\": 1341,\n  \"pas</w>\": 9525,\n  \"pasadena</w>\": 25892,\n  \"pascal</w>\": 28626,\n  \"pasco</w>\": 49220,\n  \"pascu\": 42692,\n  \"pash\": 23936,\n  \"pasha</w>\": 46986,\n  \"paso</w>\": 18542,\n  \"pasqu\": 44941,\n  \"pass\": 5016,\n  \"pass</w>\": 3511,\n  \"passage</w>\": 16477,\n  \"passages</w>\": 48937,\n  \"passed</w>\": 4957,\n  \"passenger</w>\": 12311,\n  \"passengers</w>\": 12781,\n  \"passer</w>\": 48544,\n  \"passes</w>\": 7633,\n  \"passi\": 32471,\n  \"passing</w>\": 6589,\n  \"passion\": 8822,\n  \"passion</w>\": 5332,\n  \"passionate</w>\": 10947,\n  \"passionately</w>\": 44028,\n  \"passions</w>\": 38441,\n  \"passive</w>\": 23171,\n  \"passover</w>\": 38426,\n  \"passport</w>\": 14739,\n  \"passports</w>\": 46368,\n  \"password</w>\": 20258,\n  \"passwords</w>\": 43095,\n  \"past\": 7315,\n  \"past</w>\": 2729,\n  \"pasta</w>\": 10441,\n  \"paste\": 34765,\n  \"paste</w>\": 17038,\n  \"pastel</w>\": 19457,\n  \"pastels</w>\": 45699,\n  \"pastor\": 19792,\n  \"pastor</w>\": 9664,\n  \"pastoral</w>\": 37191,\n  \"pastors</w>\": 30959,\n  \"pastr\": 45478,\n  \"pastries</w>\": 39409,\n  \"pastry</w>\": 18582,\n  \"pasture</w>\": 34764,\n  \"pastures</w>\": 47793,\n  \"pat\": 1300,\n  \"pat</w>\": 7036,\n  \"patag\": 29862,\n  \"patagonia</w>\": 32786,\n  \"patch\": 29284,\n  \"patch</w>\": 8721,\n  \"patches</w>\": 22104,\n  \"patchwork</w>\": 44675,\n  \"patchy</w>\": 47488,\n  \"pate\": 42122,\n  \"pate</w>\": 42098,\n  \"patel</w>\": 14168,\n  \"patent</w>\": 14692,\n  \"patented</w>\": 37277,\n  \"patents</w>\": 33911,\n  \"paterson</w>\": 36560,\n  \"path\": 7408,\n  \"path</w>\": 5035,\n  \"pathetic</w>\": 18222,\n  \"pathfinder</w>\": 35415,\n  \"pathi\": 34976,\n  \"pathi</w>\": 27347,\n  \"pathic</w>\": 49025,\n  \"patho\": 18534,\n  \"pathology</w>\": 23290,\n  \"paths</w>\": 16333,\n  \"pathway</w>\": 23488,\n  \"pathways</w>\": 24690,\n  \"pathy</w>\": 13330,\n  \"pati\": 2799,\n  \"pati</w>\": 26708,\n  \"patience</w>\": 13575,\n  \"patient\": 30139,\n  \"patient</w>\": 6262,\n  \"patiently</w>\": 22980,\n  \"patients</w>\": 5543,\n  \"patil</w>\": 49187,\n  \"patio</w>\": 14304,\n  \"pational</w>\": 30627,\n  \"patna</w>\": 45025,\n  \"patory</w>\": 41859,\n  \"patreon</w>\": 17165,\n  \"patri\": 4771,\n  \"patriarch</w>\": 49054,\n  \"patriarchy</w>\": 48806,\n  \"patric\": 12569,\n  \"patrice</w>\": 40731,\n  \"patricia</w>\": 18143,\n  \"patrick\": 12078,\n  \"patrick</w>\": 5286,\n  \"patricks</w>\": 46783,\n  \"patriot\": 28896,\n  \"patriot</w>\": 15692,\n  \"patrioti\": 35520,\n  \"patriotic</w>\": 20217,\n  \"patriotism</w>\": 35807,\n  \"patriots</w>\": 8707,\n  \"patro\": 31650,\n  \"patrol</w>\": 10073,\n  \"patrolling</w>\": 39344,\n  \"patrols</w>\": 35978,\n  \"patron\": 26658,\n  \"patron</w>\": 17683,\n  \"patrons</w>\": 28308,\n  \"pats</w>\": 24874,\n  \"patsy</w>\": 46093,\n  \"patt\": 12637,\n  \"patter\": 4982,\n  \"pattern</w>\": 7447,\n  \"patterned</w>\": 47212,\n  \"patterns</w>\": 11637,\n  \"patterson</w>\": 21384,\n  \"patti\": 44927,\n  \"patti</w>\": 26123,\n  \"pattinson</w>\": 32474,\n  \"patton</w>\": 29026,\n  \"patty\": 48741,\n  \"patty</w>\": 18321,\n  \"pau\": 1834,\n  \"pau</w>\": 35970,\n  \"paul\": 6035,\n  \"paul</w>\": 2597,\n  \"paula\": 37363,\n  \"paula</w>\": 16777,\n  \"pauline</w>\": 30438,\n  \"paulo\": 48002,\n  \"paulo</w>\": 21628,\n  \"pauls\": 41413,\n  \"pauls</w>\": 40010,\n  \"paulson</w>\": 48201,\n  \"pause</w>\": 19439,\n  \"paused</w>\": 46782,\n  \"pav\": 6661,\n  \"pave</w>\": 37107,\n  \"paved</w>\": 27898,\n  \"pavel</w>\": 43152,\n  \"pavement</w>\": 27669,\n  \"pavilion</w>\": 13374,\n  \"paving</w>\": 28651,\n  \"paw\": 14009,\n  \"paw</w>\": 16016,\n  \"pawan\": 29754,\n  \"pawankalyan</w>\": 33702,\n  \"pawn</w>\": 43195,\n  \"paws</w>\": 16714,\n  \"pax\": 20007,\n  \"pax</w>\": 19033,\n  \"paxton</w>\": 38347,\n  \"pay\": 2642,\n  \"pay</w>\": 3345,\n  \"payback</w>\": 36413,\n  \"paycheck</w>\": 45078,\n  \"payday</w>\": 26957,\n  \"payee</w>\": 46985,\n  \"payer</w>\": 41503,\n  \"paying</w>\": 8341,\n  \"payment</w>\": 10596,\n  \"payments</w>\": 11832,\n  \"payne</w>\": 12775,\n  \"paypal</w>\": 21442,\n  \"payroll</w>\": 31610,\n  \"pays</w>\": 10845,\n  \"paysoff</w>\": 48174,\n  \"paytm</w>\": 45352,\n  \"payton</w>\": 27348,\n  \"paz</w>\": 22267,\n  \"pb\": 20112,\n  \"pb</w>\": 10981,\n  \"pba</w>\": 28205,\n  \"pbb\": 48567,\n  \"pbb</w>\": 40589,\n  \"pbc</w>\": 49191,\n  \"pbl</w>\": 35166,\n  \"pbr</w>\": 32998,\n  \"pbs</w>\": 17908,\n  \"pc\": 6782,\n  \"pc</w>\": 3808,\n  \"pca</w>\": 35705,\n  \"pcb</w>\": 26235,\n  \"pcc</w>\": 36059,\n  \"pci</w>\": 38957,\n  \"pcm</w>\": 47436,\n  \"pcr</w>\": 35704,\n  \"pcs</w>\": 11917,\n  \"pcso</w>\": 31963,\n  \"pct</w>\": 22168,\n  \"pd\": 4387,\n  \"pd</w>\": 4675,\n  \"pdates</w>\": 16842,\n  \"pdc</w>\": 40498,\n  \"pdf</w>\": 15181,\n  \"pdp</w>\": 24601,\n  \"pdt</w>\": 21743,\n  \"pdx\": 25470,\n  \"pdx</w>\": 16153,\n  \"pe\": 661,\n  \"pe</w>\": 956,\n  \"pea</w>\": 13915,\n  \"peabo\": 34083,\n  \"peabody</w>\": 41244,\n  \"peac\": 34615,\n  \"peace\": 6249,\n  \"peace</w>\": 3021,\n  \"peaceful</w>\": 9461,\n  \"peacefully</w>\": 30530,\n  \"peacekeeping</w>\": 43630,\n  \"peach\": 10522,\n  \"peach</w>\": 11538,\n  \"peaches</w>\": 27216,\n  \"peak\": 18572,\n  \"peak</w>\": 6026,\n  \"peakdistrict</w>\": 41289,\n  \"peake</w>\": 24810,\n  \"peaked</w>\": 36391,\n  \"peaks</w>\": 14067,\n  \"pean\": 11563,\n  \"peanu\": 25843,\n  \"peanut</w>\": 12491,\n  \"peanuts</w>\": 26503,\n  \"pear\": 4910,\n  \"pear</w>\": 18820,\n  \"pearce</w>\": 25996,\n  \"pearl\": 21806,\n  \"pearl</w>\": 8560,\n  \"pearljam</w>\": 46739,\n  \"pearls</w>\": 19581,\n  \"pears</w>\": 39565,\n  \"pearson</w>\": 20461,\n  \"peas</w>\": 15937,\n  \"peasant</w>\": 40621,\n  \"peasants</w>\": 48788,\n  \"peat</w>\": 26914,\n  \"pebble</w>\": 28056,\n  \"pebbles</w>\": 40155,\n  \"pec\": 32447,\n  \"pec</w>\": 17611,\n  \"pecan</w>\": 32177,\n  \"peck\": 25186,\n  \"peck</w>\": 29234,\n  \"pecker</w>\": 30169,\n  \"peckham</w>\": 45863,\n  \"pecu\": 34200,\n  \"peculiar</w>\": 42808,\n  \"ped\": 13197,\n  \"ped</w>\": 2966,\n  \"pedago\": 34590,\n  \"pedagogy</w>\": 48072,\n  \"pedal\": 32943,\n  \"pedal</w>\": 19621,\n  \"pedals</w>\": 38535,\n  \"pede\": 12862,\n  \"pede</w>\": 19560,\n  \"pedestri\": 30027,\n  \"pedestrian</w>\": 18256,\n  \"pedestrians</w>\": 33895,\n  \"pedi\": 12967,\n  \"pedia</w>\": 11733,\n  \"pediatric\": 48431,\n  \"pediatric</w>\": 22071,\n  \"pedic\": 35319,\n  \"pedic</w>\": 44528,\n  \"pedro\": 29963,\n  \"pedro</w>\": 15114,\n  \"peds</w>\": 45377,\n  \"pee\": 12988,\n  \"pee</w>\": 11196,\n  \"peed</w>\": 47369,\n  \"peek\": 46323,\n  \"peek</w>\": 7569,\n  \"peeking</w>\": 48771,\n  \"peel\": 34386,\n  \"peel</w>\": 17158,\n  \"peeled</w>\": 33533,\n  \"peeling</w>\": 48649,\n  \"peep\": 25425,\n  \"peep</w>\": 16857,\n  \"peeps</w>\": 11681,\n  \"peer\": 32416,\n  \"peer</w>\": 14432,\n  \"peers</w>\": 21626,\n  \"pees</w>\": 31830,\n  \"peg\": 32182,\n  \"peg</w>\": 11207,\n  \"pegas\": 30018,\n  \"pegasus</w>\": 37822,\n  \"peggy</w>\": 24271,\n  \"pei\": 48166,\n  \"pei</w>\": 12917,\n  \"pel\": 4286,\n  \"pel</w>\": 7006,\n  \"pele</w>\": 44105,\n  \"pelican</w>\": 34131,\n  \"pelicans</w>\": 29363,\n  \"pell</w>\": 46981,\n  \"pelle\": 31267,\n  \"pelled</w>\": 32506,\n  \"pellegr\": 38529,\n  \"pellets</w>\": 48240,\n  \"pelo\": 40192,\n  \"pelo</w>\": 40238,\n  \"pelosi</w>\": 22169,\n  \"pelvic</w>\": 45646,\n  \"pemb\": 19880,\n  \"pembro\": 24084,\n  \"pembroke\": 36702,\n  \"pembroke</w>\": 40044,\n  \"pembrokeshire</w>\": 40695,\n  \"pen\": 1501,\n  \"pen</w>\": 5356,\n  \"pena</w>\": 35788,\n  \"penalties</w>\": 25417,\n  \"penalty</w>\": 11491,\n  \"penang</w>\": 29545,\n  \"penc\": 20065,\n  \"pence</w>\": 18002,\n  \"pencil\": 41303,\n  \"pencil</w>\": 11200,\n  \"pencils</w>\": 21909,\n  \"pend\": 3052,\n  \"pendant</w>\": 12415,\n  \"pendants</w>\": 44117,\n  \"pending</w>\": 12770,\n  \"pendleton</w>\": 44272,\n  \"pendu\": 45336,\n  \"penelope</w>\": 36703,\n  \"penetr\": 26058,\n  \"peng\": 42955,\n  \"peng</w>\": 39200,\n  \"pengu\": 8854,\n  \"penguin\": 28249,\n  \"penguin</w>\": 14952,\n  \"penguins</w>\": 16557,\n  \"peninsu\": 13464,\n  \"peninsula</w>\": 14070,\n  \"penn\": 7760,\n  \"penn</w>\": 11128,\n  \"pennant</w>\": 43971,\n  \"penned</w>\": 45077,\n  \"penney</w>\": 47856,\n  \"pennies</w>\": 43094,\n  \"pennsylvania</w>\": 13673,\n  \"penny\": 20400,\n  \"penny</w>\": 11388,\n  \"pens\": 13307,\n  \"pens</w>\": 13310,\n  \"pensac\": 30925,\n  \"pensacola</w>\": 33573,\n  \"pension\": 32840,\n  \"pension</w>\": 17764,\n  \"pensions</w>\": 29773,\n  \"penske</w>\": 47154,\n  \"pent\": 10699,\n  \"pent</w>\": 22725,\n  \"pentagon</w>\": 23133,\n  \"pente\": 33165,\n  \"penthouse</w>\": 32673,\n  \"penultimate</w>\": 36553,\n  \"peop\": 1030,\n  \"people\": 10573,\n  \"people</w>\": 1047,\n  \"peoples\": 28241,\n  \"peoples</w>\": 14627,\n  \"peopleschoice</w>\": 32418,\n  \"peoplesvote</w>\": 45830,\n  \"peoria</w>\": 36985,\n  \"pep\": 12761,\n  \"pep</w>\": 14898,\n  \"pepe</w>\": 24778,\n  \"pepp\": 34425,\n  \"pepper\": 14861,\n  \"pepper</w>\": 8253,\n  \"peppermint</w>\": 30321,\n  \"pepperoni</w>\": 47307,\n  \"peppers</w>\": 14650,\n  \"pepsi</w>\": 21307,\n  \"per\": 703,\n  \"per</w>\": 1284,\n  \"pera</w>\": 26294,\n  \"perce\": 24135,\n  \"perceived</w>\": 38436,\n  \"percent\": 16328,\n  \"percent</w>\": 9017,\n  \"percentage</w>\": 19477,\n  \"percep\": 28017,\n  \"perception</w>\": 20591,\n  \"perceptions</w>\": 38138,\n  \"perch</w>\": 34281,\n  \"perched</w>\": 40071,\n  \"percu\": 41722,\n  \"percussion</w>\": 23980,\n  \"percy</w>\": 23940,\n  \"pere\": 8665,\n  \"pere</w>\": 36300,\n  \"pered</w>\": 24509,\n  \"peregr\": 37479,\n  \"peregrine</w>\": 44546,\n  \"pereira</w>\": 43927,\n  \"peren\": 24564,\n  \"perenni\": 26996,\n  \"perennial</w>\": 34038,\n  \"perez</w>\": 15107,\n  \"perf</w>\": 22816,\n  \"perfe\": 1624,\n  \"perfec\": 6599,\n  \"perfect\": 17261,\n  \"perfect</w>\": 1878,\n  \"perfection</w>\": 9646,\n  \"perfectly</w>\": 8037,\n  \"perfecto</w>\": 42898,\n  \"perfor\": 2311,\n  \"perform\": 3866,\n  \"perform</w>\": 5940,\n  \"performan\": 8973,\n  \"performance</w>\": 2714,\n  \"performances</w>\": 9553,\n  \"performed</w>\": 9997,\n  \"performer</w>\": 17061,\n  \"performers</w>\": 18476,\n  \"performing</w>\": 5170,\n  \"performs</w>\": 13839,\n  \"perfu\": 14214,\n  \"perfume</w>\": 17525,\n  \"perhaps</w>\": 9297,\n  \"peri\": 12618,\n  \"peri</w>\": 44068,\n  \"perience</w>\": 19302,\n  \"peril\": 40119,\n  \"peril</w>\": 48301,\n  \"perimeter</w>\": 38499,\n  \"pering</w>\": 29746,\n  \"perio\": 5101,\n  \"period</w>\": 6131,\n  \"periodic</w>\": 36476,\n  \"periods</w>\": 24401,\n  \"periph\": 35308,\n  \"peripheral</w>\": 43901,\n  \"peris\": 19461,\n  \"periscope</w>\": 21668,\n  \"perk</w>\": 33424,\n  \"perkins</w>\": 20057,\n  \"perks</w>\": 17660,\n  \"perl\": 44018,\n  \"perm</w>\": 47847,\n  \"perman\": 9018,\n  \"permanent</w>\": 11144,\n  \"permanently</w>\": 25584,\n  \"perme\": 42456,\n  \"permission</w>\": 15822,\n  \"permit</w>\": 21950,\n  \"permits</w>\": 33267,\n  \"permitted</w>\": 44380,\n  \"pero</w>\": 23551,\n  \"perpe\": 15749,\n  \"perpetr\": 33376,\n  \"perpetu\": 30132,\n  \"perpetual</w>\": 32018,\n  \"perrie</w>\": 32691,\n  \"perry\": 28478,\n  \"perry</w>\": 7899,\n  \"pers\": 3688,\n  \"pers</w>\": 10710,\n  \"perse\": 27498,\n  \"persecu\": 22878,\n  \"persecution</w>\": 32009,\n  \"perseverance</w>\": 29820,\n  \"persi\": 11509,\n  \"persian</w>\": 19859,\n  \"persist\": 19412,\n  \"persist</w>\": 40938,\n  \"persistence</w>\": 34588,\n  \"persistent</w>\": 29028,\n  \"person\": 3510,\n  \"person</w>\": 2533,\n  \"persona</w>\": 18401,\n  \"personal\": 10114,\n  \"personal</w>\": 4121,\n  \"personalised</w>\": 24186,\n  \"personalities</w>\": 27888,\n  \"personality</w>\": 10386,\n  \"personalized</w>\": 17845,\n  \"personally</w>\": 13885,\n  \"personnel</w>\": 14546,\n  \"persons</w>\": 14592,\n  \"perspec\": 17997,\n  \"perspective</w>\": 8996,\n  \"perspectives</w>\": 18777,\n  \"persu\": 20972,\n  \"pert\": 36970,\n  \"pert</w>\": 16306,\n  \"perth\": 19067,\n  \"perth</w>\": 11011,\n  \"peru\": 20612,\n  \"peru</w>\": 12964,\n  \"peruvian</w>\": 30822,\n  \"pes\": 38368,\n  \"pes</w>\": 2598,\n  \"pesa</w>\": 47409,\n  \"pesc\": 44044,\n  \"pesh\": 33184,\n  \"peshaw\": 28524,\n  \"peshawar</w>\": 29230,\n  \"pesky</w>\": 42512,\n  \"pesos</w>\": 47872,\n  \"pessi\": 43902,\n  \"pest\": 20130,\n  \"pest</w>\": 9425,\n  \"pesticide</w>\": 48481,\n  \"pesticides</w>\": 37868,\n  \"pesto</w>\": 26186,\n  \"pests</w>\": 41919,\n  \"pet\": 2167,\n  \"pet</w>\": 3703,\n  \"peta</w>\": 28785,\n  \"petal\": 38430,\n  \"petal</w>\": 40469,\n  \"petals</w>\": 26064,\n  \"petday</w>\": 45314,\n  \"pete\": 14479,\n  \"pete</w>\": 8571,\n  \"peter\": 5093,\n  \"peter</w>\": 3696,\n  \"peterborough</w>\": 26012,\n  \"peters</w>\": 16336,\n  \"petersburg</w>\": 21052,\n  \"petersen</w>\": 39794,\n  \"peterson</w>\": 16877,\n  \"peth</w>\": 48920,\n  \"petit\": 36437,\n  \"petit</w>\": 21276,\n  \"petite</w>\": 27213,\n  \"petition</w>\": 10975,\n  \"petitions</w>\": 43536,\n  \"petr\": 29808,\n  \"petra</w>\": 31300,\n  \"petre\": 47179,\n  \"petri\": 31831,\n  \"petro\": 8716,\n  \"petrol</w>\": 18149,\n  \"petroleum</w>\": 22063,\n  \"petron\": 42875,\n  \"pets</w>\": 7663,\n  \"pett\": 27051,\n  \"petti\": 48001,\n  \"petting</w>\": 44334,\n  \"petty</w>\": 17324,\n  \"peu\": 21411,\n  \"peuge\": 22893,\n  \"peugeot</w>\": 24129,\n  \"pew\": 21608,\n  \"pew</w>\": 30783,\n  \"pewdie\": 41882,\n  \"pewdiepie</w>\": 42563,\n  \"pex</w>\": 43765,\n  \"pey\": 14966,\n  \"pey</w>\": 30933,\n  \"peyton\": 49254,\n  \"peyton</w>\": 20307,\n  \"pez\": 45798,\n  \"pez</w>\": 10482,\n  \"pf\": 16680,\n  \"pf</w>\": 12572,\n  \"pfa</w>\": 47839,\n  \"pfc</w>\": 35007,\n  \"pff</w>\": 44121,\n  \"pfi\": 29810,\n  \"pfw</w>\": 31229,\n  \"pg\": 12476,\n  \"pg</w>\": 5211,\n  \"pga</w>\": 13351,\n  \"pgat\": 36514,\n  \"pgatour</w>\": 40094,\n  \"pgh\": 44862,\n  \"pgh</w>\": 30031,\n  \"pgs</w>\": 49204,\n  \"ph\": 745,\n  \"ph</w>\": 2042,\n  \"pha\": 4443,\n  \"pha</w>\": 26255,\n  \"phal\": 19962,\n  \"phan\": 8731,\n  \"phan</w>\": 40126,\n  \"phant\": 36998,\n  \"phantom\": 37688,\n  \"phantom</w>\": 14490,\n  \"phar\": 5570,\n  \"phara\": 35792,\n  \"pharaoh</w>\": 40437,\n  \"pharm</w>\": 45761,\n  \"pharma</w>\": 17831,\n  \"pharmac\": 8193,\n  \"pharmaceu\": 19490,\n  \"pharmaceutical</w>\": 25217,\n  \"pharmaceuticals</w>\": 44623,\n  \"pharmacist</w>\": 41024,\n  \"pharmacists</w>\": 44337,\n  \"pharmacy</w>\": 15293,\n  \"pharo\": 42308,\n  \"pharoah</w>\": 49287,\n  \"pharrell</w>\": 31316,\n  \"phase</w>\": 8304,\n  \"phases</w>\": 35337,\n  \"phat</w>\": 42492,\n  \"phc</w>\": 41102,\n  \"phd\": 20875,\n  \"phd</w>\": 8472,\n  \"phdchat</w>\": 39564,\n  \"phdlife</w>\": 39638,\n  \"phe\": 4787,\n  \"phe</w>\": 19853,\n  \"pheasant</w>\": 41983,\n  \"phee</w>\": 41292,\n  \"phel\": 23711,\n  \"phelps</w>\": 27128,\n  \"phen\": 7718,\n  \"pheno\": 47336,\n  \"phenom\": 31673,\n  \"phenom</w>\": 39618,\n  \"phenomen\": 11304,\n  \"phenomena</w>\": 41538,\n  \"phenomenal</w>\": 15035,\n  \"phenomenon</w>\": 24464,\n  \"pher\": 9194,\n  \"pher</w>\": 19828,\n  \"phers</w>\": 29531,\n  \"pherson</w>\": 36421,\n  \"phew</w>\": 10295,\n  \"phi\": 2239,\n  \"phi</w>\": 12220,\n  \"phia</w>\": 9228,\n  \"phic</w>\": 3977,\n  \"phie</w>\": 30237,\n  \"phies</w>\": 17062,\n  \"phil\": 2821,\n  \"phil</w>\": 6199,\n  \"phila</w>\": 47443,\n  \"philadel\": 9428,\n  \"philadelphia</w>\": 9749,\n  \"philanthro\": 16587,\n  \"philanthropist</w>\": 44153,\n  \"philanthropy</w>\": 25047,\n  \"philately</w>\": 33695,\n  \"phile</w>\": 36543,\n  \"philharmon\": 25228,\n  \"philharmonic</w>\": 31699,\n  \"phili\": 4277,\n  \"philia</w>\": 46654,\n  \"philip\": 20748,\n  \"philip</w>\": 11074,\n  \"philipp\": 5623,\n  \"philipp</w>\": 47591,\n  \"philippe</w>\": 20942,\n  \"philippine</w>\": 17629,\n  \"philippines</w>\": 8149,\n  \"philips</w>\": 25175,\n  \"phill\": 42346,\n  \"phill</w>\": 48272,\n  \"philli\": 6456,\n  \"phillies</w>\": 18748,\n  \"phillip\": 48832,\n  \"phillip</w>\": 19323,\n  \"phillips</w>\": 11041,\n  \"philly\": 19545,\n  \"philly</w>\": 7785,\n  \"philos\": 8395,\n  \"philosop\": 20349,\n  \"philosoph\": 10187,\n  \"philosopher</w>\": 25220,\n  \"philosophical</w>\": 32628,\n  \"philosophy</w>\": 12213,\n  \"phils</w>\": 38573,\n  \"phin</w>\": 33816,\n  \"phine</w>\": 40985,\n  \"phins</w>\": 40210,\n  \"phish</w>\": 36897,\n  \"phishing</w>\": 36546,\n  \"phl</w>\": 25603,\n  \"pho\": 816,\n  \"pho</w>\": 22707,\n  \"phobia</w>\": 28749,\n  \"phoe\": 22673,\n  \"phoebe</w>\": 27582,\n  \"phoeni\": 6778,\n  \"phoenix\": 20615,\n  \"phoenix</w>\": 7793,\n  \"phol</w>\": 48140,\n  \"phon\": 19602,\n  \"phon</w>\": 31115,\n  \"phone\": 15486,\n  \"phone</w>\": 1951,\n  \"phones</w>\": 6351,\n  \"phony</w>\": 31925,\n  \"phora</w>\": 31363,\n  \"phosp\": 22638,\n  \"photo\": 1153,\n  \"photo</w>\": 1125,\n  \"photobomb</w>\": 37075,\n  \"photobook</w>\": 41894,\n  \"photog</w>\": 28115,\n  \"photogenic</w>\": 36108,\n  \"photogra\": 36754,\n  \"photograph\": 1688,\n  \"photograph</w>\": 8853,\n  \"photographed</w>\": 11573,\n  \"photographer</w>\": 5748,\n  \"photographers</w>\": 17141,\n  \"photographic</w>\": 22053,\n  \"photographing</w>\": 30074,\n  \"photographs</w>\": 15759,\n  \"photography\": 33183,\n  \"photography</w>\": 2108,\n  \"photom\": 32223,\n  \"photoo\": 11106,\n  \"photooftheday</w>\": 11933,\n  \"photos</w>\": 2479,\n  \"photoshoot</w>\": 11121,\n  \"photoshop</w>\": 12419,\n  \"photoshopped</w>\": 35738,\n  \"phouse</w>\": 27848,\n  \"php</w>\": 17370,\n  \"phra\": 12777,\n  \"phrase</w>\": 18809,\n  \"phrases</w>\": 35264,\n  \"phs</w>\": 16495,\n  \"phu\": 21274,\n  \"phuket</w>\": 34028,\n  \"phx\": 35466,\n  \"phx</w>\": 29507,\n  \"phy\": 6484,\n  \"phy</w>\": 4292,\n  \"phyl\": 35600,\n  \"phyllis</w>\": 37844,\n  \"phys\": 3734,\n  \"phys</w>\": 37894,\n  \"physi\": 13782,\n  \"physic\": 46641,\n  \"physical\": 44127,\n  \"physical</w>\": 6671,\n  \"physically</w>\": 18105,\n  \"physician</w>\": 21055,\n  \"physicians</w>\": 26702,\n  \"physicist</w>\": 29052,\n  \"physics</w>\": 9369,\n  \"physio\": 29574,\n  \"physio</w>\": 29177,\n  \"physiology</w>\": 32349,\n  \"physique</w>\": 42884,\n  \"phyto\": 42197,\n  \"pi\": 741,\n  \"pi</w>\": 5357,\n  \"pia</w>\": 8918,\n  \"pian</w>\": 24637,\n  \"pianist</w>\": 21048,\n  \"piano\": 49278,\n  \"piano</w>\": 7894,\n  \"pianos</w>\": 47904,\n  \"piazza</w>\": 28496,\n  \"pic\": 901,\n  \"pic</w>\": 1282,\n  \"pical</w>\": 5482,\n  \"picard</w>\": 48507,\n  \"picasso</w>\": 21481,\n  \"piccad\": 33876,\n  \"piccadilly</w>\": 37287,\n  \"piccollage</w>\": 43621,\n  \"pick\": 6379,\n  \"pick</w>\": 3142,\n  \"picked</w>\": 6018,\n  \"picker</w>\": 43105,\n  \"pickering</w>\": 47605,\n  \"picket</w>\": 33559,\n  \"picking</w>\": 9545,\n  \"pickle</w>\": 24570,\n  \"pickled</w>\": 21705,\n  \"pickles</w>\": 25001,\n  \"picks</w>\": 8551,\n  \"pickup</w>\": 15382,\n  \"pickups</w>\": 33383,\n  \"picnic</w>\": 12007,\n  \"pico</w>\": 23363,\n  \"picoftheday</w>\": 18319,\n  \"pics</w>\": 2559,\n  \"pict</w>\": 18778,\n  \"pictorial</w>\": 40640,\n  \"picture\": 11663,\n  \"picture</w>\": 1674,\n  \"pictured</w>\": 7647,\n  \"pictures</w>\": 3646,\n  \"picturesque</w>\": 24894,\n  \"pid</w>\": 5225,\n  \"piday</w>\": 48056,\n  \"pie\": 12065,\n  \"pie</w>\": 5319,\n  \"piece\": 39632,\n  \"piece</w>\": 2754,\n  \"pieces</w>\": 6194,\n  \"pied\": 24686,\n  \"pied</w>\": 12713,\n  \"piedmont</w>\": 39691,\n  \"pier\": 5641,\n  \"pier</w>\": 11348,\n  \"pierc\": 49216,\n  \"pierce\": 48462,\n  \"pierce</w>\": 16782,\n  \"pierced</w>\": 32799,\n  \"piercing</w>\": 22557,\n  \"piero</w>\": 43125,\n  \"pierre\": 34670,\n  \"pierre</w>\": 11985,\n  \"piers</w>\": 29030,\n  \"pies</w>\": 6898,\n  \"pieter</w>\": 44801,\n  \"pietro</w>\": 42169,\n  \"piff</w>\": 40719,\n  \"pig\": 12009,\n  \"pig</w>\": 9619,\n  \"pigeon</w>\": 18008,\n  \"pigeons</w>\": 32910,\n  \"piggy</w>\": 28245,\n  \"pigment</w>\": 40284,\n  \"pigs</w>\": 16228,\n  \"pik</w>\": 48539,\n  \"pika</w>\": 47372,\n  \"pikach\": 27268,\n  \"pikachu</w>\": 28107,\n  \"pike\": 33457,\n  \"pike</w>\": 14011,\n  \"pil\": 2893,\n  \"pil</w>\": 20645,\n  \"pilates</w>\": 29518,\n  \"pile\": 44403,\n  \"pile</w>\": 13930,\n  \"piled</w>\": 26873,\n  \"piles</w>\": 31968,\n  \"pilgri\": 13966,\n  \"pilgrim</w>\": 32662,\n  \"pilgrimage</w>\": 24335,\n  \"pilgrims</w>\": 31370,\n  \"piling</w>\": 43050,\n  \"pilip\": 27234,\n  \"pilipinas</w>\": 32392,\n  \"pill\": 14830,\n  \"pill</w>\": 19226,\n  \"pillar</w>\": 17322,\n  \"pillars</w>\": 22054,\n  \"pillow\": 42237,\n  \"pillow</w>\": 12182,\n  \"pillows</w>\": 26499,\n  \"pills</w>\": 23964,\n  \"pilo\": 37526,\n  \"pilot\": 31619,\n  \"pilot</w>\": 6687,\n  \"pilots</w>\": 15586,\n  \"pilsner</w>\": 47153,\n  \"pim\": 15285,\n  \"pim</w>\": 35472,\n  \"pimp\": 35789,\n  \"pin\": 2629,\n  \"pin</w>\": 5164,\n  \"pinball</w>\": 31679,\n  \"pinch</w>\": 26114,\n  \"pine\": 9398,\n  \"pine</w>\": 7374,\n  \"pineapple</w>\": 14831,\n  \"pines</w>\": 20338,\n  \"ping\": 23720,\n  \"ping</w>\": 2089,\n  \"pinion</w>\": 40557,\n  \"pink\": 11151,\n  \"pink</w>\": 3360,\n  \"pinkfloyd</w>\": 48520,\n  \"pinky</w>\": 29803,\n  \"pinn\": 31448,\n  \"pinnacle</w>\": 32754,\n  \"pinned</w>\": 12165,\n  \"pinning</w>\": 44515,\n  \"pino</w>\": 36633,\n  \"pinot\": 41399,\n  \"pinot</w>\": 21146,\n  \"pinoy\": 43578,\n  \"pinoy</w>\": 35258,\n  \"pins</w>\": 14619,\n  \"pinst\": 41173,\n  \"pint\": 42537,\n  \"pint</w>\": 13584,\n  \"pinterest</w>\": 15379,\n  \"pinto</w>\": 35992,\n  \"pints</w>\": 27935,\n  \"pinup</w>\": 37349,\n  \"pio</w>\": 22108,\n  \"pion\": 36728,\n  \"pion</w>\": 29190,\n  \"pione\": 7975,\n  \"pioneer\": 34892,\n  \"pioneer</w>\": 12459,\n  \"pioneering</w>\": 25933,\n  \"pioneers</w>\": 22383,\n  \"pious</w>\": 42441,\n  \"pip</w>\": 30854,\n  \"pipe\": 29333,\n  \"pipe</w>\": 10459,\n  \"pipel\": 12387,\n  \"pipeline</w>\": 14151,\n  \"pipelines</w>\": 39683,\n  \"piper\": 47052,\n  \"piper</w>\": 16293,\n  \"pipes</w>\": 16991,\n  \"piping</w>\": 40744,\n  \"pippa</w>\": 47672,\n  \"pir\": 4351,\n  \"pir</w>\": 38899,\n  \"piracy</w>\": 39452,\n  \"piran\": 49034,\n  \"pirate\": 38680,\n  \"pirate</w>\": 13592,\n  \"pirates</w>\": 10442,\n  \"pire\": 16613,\n  \"pires</w>\": 14988,\n  \"pis\": 9230,\n  \"pis</w>\": 44441,\n  \"pisa</w>\": 43632,\n  \"pisces</w>\": 45982,\n  \"piss</w>\": 20818,\n  \"pissed</w>\": 17989,\n  \"pist\": 15556,\n  \"pist</w>\": 32826,\n  \"pistachi\": 29760,\n  \"pistachio</w>\": 36320,\n  \"pistol</w>\": 20480,\n  \"piston</w>\": 48236,\n  \"pistons</w>\": 27242,\n  \"pistor\": 48162,\n  \"pit\": 2946,\n  \"pit</w>\": 7476,\n  \"pita</w>\": 27070,\n  \"pitbull</w>\": 25295,\n  \"pitch\": 8992,\n  \"pitch</w>\": 5872,\n  \"pitched</w>\": 28447,\n  \"pitcher</w>\": 13445,\n  \"pitchers</w>\": 27835,\n  \"pitches</w>\": 21005,\n  \"pitching</w>\": 16455,\n  \"piti\": 47568,\n  \"pits</w>\": 24144,\n  \"pitt\": 7607,\n  \"pitt</w>\": 15599,\n  \"pitts\": 9531,\n  \"pittsburgh</w>\": 10453,\n  \"pity</w>\": 24380,\n  \"pius</w>\": 39988,\n  \"pivo\": 18009,\n  \"pivot</w>\": 31805,\n  \"pivotal</w>\": 31432,\n  \"pix\": 6185,\n  \"pix</w>\": 13088,\n  \"pixar</w>\": 27493,\n  \"pixel\": 14384,\n  \"pixel</w>\": 13241,\n  \"pixelart</w>\": 18516,\n  \"pixels</w>\": 34099,\n  \"pixie</w>\": 35573,\n  \"piyu\": 30772,\n  \"piyush\": 36191,\n  \"piyushgoyal</w>\": 45318,\n  \"pizz\": 3897,\n  \"pizza</w>\": 4474,\n  \"pizzas</w>\": 30647,\n  \"pizzeria</w>\": 44174,\n  \"pj\": 12524,\n  \"pj</w>\": 17179,\n  \"pjnet</w>\": 22011,\n  \"pjs</w>\": 36009,\n  \"pk\": 10149,\n  \"pk</w>\": 10991,\n  \"pkg</w>\": 49011,\n  \"pkk</w>\": 47480,\n  \"pknot</w>\": 41779,\n  \"pkwy</w>\": 36827,\n  \"pl\": 712,\n  \"pl</w>\": 5678,\n  \"pla\": 841,\n  \"pla</w>\": 19945,\n  \"plac\": 2331,\n  \"place\": 14884,\n  \"place</w>\": 1445,\n  \"placed</w>\": 9729,\n  \"placement</w>\": 16724,\n  \"placements</w>\": 43885,\n  \"placer</w>\": 49170,\n  \"places</w>\": 4448,\n  \"placing</w>\": 18531,\n  \"plague</w>\": 25360,\n  \"plaid</w>\": 23291,\n  \"plain\": 22776,\n  \"plain</w>\": 10709,\n  \"plains</w>\": 16345,\n  \"plan\": 1740,\n  \"plan</w>\": 2970,\n  \"pland</w>\": 24801,\n  \"plane\": 22728,\n  \"plane</w>\": 5363,\n  \"planes</w>\": 12581,\n  \"planet\": 16833,\n  \"planet</w>\": 5172,\n  \"planetary</w>\": 28361,\n  \"planets</w>\": 22315,\n  \"plank</w>\": 30991,\n  \"plankton</w>\": 48249,\n  \"plann\": 6409,\n  \"planned</w>\": 8169,\n  \"planner</w>\": 18083,\n  \"planners</w>\": 33664,\n  \"planning</w>\": 4446,\n  \"plano</w>\": 34063,\n  \"plans</w>\": 4181,\n  \"plant\": 8521,\n  \"plant</w>\": 3912,\n  \"plantation</w>\": 20014,\n  \"plantbased</w>\": 33720,\n  \"planted</w>\": 14286,\n  \"planter</w>\": 34453,\n  \"planters</w>\": 43661,\n  \"planting</w>\": 13922,\n  \"plants</w>\": 5829,\n  \"plaque</w>\": 16097,\n  \"plaques</w>\": 45610,\n  \"plar</w>\": 26754,\n  \"plas\": 45673,\n  \"plasma</w>\": 24999,\n  \"plaster</w>\": 31980,\n  \"plastic\": 15645,\n  \"plastic</w>\": 6102,\n  \"plasticpollution</w>\": 47129,\n  \"plastics</w>\": 20999,\n  \"plasticsurgery</w>\": 48555,\n  \"plat\": 3172,\n  \"plata</w>\": 46456,\n  \"plate\": 28744,\n  \"plate</w>\": 5135,\n  \"plateau</w>\": 29301,\n  \"plated</w>\": 21161,\n  \"plates</w>\": 11485,\n  \"platform</w>\": 5549,\n  \"platforms</w>\": 13551,\n  \"platin\": 10267,\n  \"plating</w>\": 44564,\n  \"platinum</w>\": 10979,\n  \"plato</w>\": 41101,\n  \"platoon</w>\": 41254,\n  \"platt\": 44459,\n  \"platt</w>\": 40097,\n  \"platte</w>\": 46785,\n  \"platter</w>\": 29071,\n  \"platz</w>\": 40878,\n  \"plau\": 39139,\n  \"play\": 1222,\n  \"play</w>\": 1453,\n  \"playa</w>\": 23756,\n  \"playable</w>\": 33885,\n  \"playback</w>\": 39194,\n  \"playbook</w>\": 34856,\n  \"playboy</w>\": 24383,\n  \"played</w>\": 3432,\n  \"player\": 24503,\n  \"player</w>\": 2477,\n  \"players</w>\": 3030,\n  \"playful</w>\": 23871,\n  \"playground</w>\": 15861,\n  \"playhouse</w>\": 23254,\n  \"playin</w>\": 24674,\n  \"playing\": 47368,\n  \"playing</w>\": 1629,\n  \"playlist</w>\": 9180,\n  \"playlists</w>\": 47183,\n  \"playo\": 5804,\n  \"playoff</w>\": 9655,\n  \"playoffs</w>\": 9548,\n  \"plays</w>\": 5134,\n  \"playstation</w>\": 11332,\n  \"playtime</w>\": 43037,\n  \"playwright</w>\": 32070,\n  \"plaza</w>\": 8943,\n  \"plc</w>\": 16827,\n  \"ple\": 926,\n  \"ple</w>\": 1619,\n  \"plea</w>\": 21956,\n  \"plead</w>\": 47539,\n  \"pleads</w>\": 31425,\n  \"plear\": 21362,\n  \"pleas\": 8481,\n  \"pleas</w>\": 48740,\n  \"pleasant</w>\": 12271,\n  \"please\": 41074,\n  \"please</w>\": 1474,\n  \"pleased</w>\": 6107,\n  \"pleasing</w>\": 32893,\n  \"pleasure</w>\": 5854,\n  \"pleasures</w>\": 29513,\n  \"pledge</w>\": 11507,\n  \"pledged</w>\": 36799,\n  \"pledges</w>\": 26746,\n  \"pledis</w>\": 41202,\n  \"plein</w>\": 43429,\n  \"plenary</w>\": 19891,\n  \"plenty</w>\": 7524,\n  \"pler</w>\": 17677,\n  \"ples</w>\": 6248,\n  \"pless\": 39821,\n  \"pless</w>\": 17059,\n  \"plets</w>\": 43230,\n  \"plex\": 23765,\n  \"plex</w>\": 15241,\n  \"pley</w>\": 19543,\n  \"pli\": 30001,\n  \"pli</w>\": 45797,\n  \"plic\": 5806,\n  \"plicity</w>\": 19823,\n  \"plight</w>\": 40317,\n  \"plin\": 44531,\n  \"plin</w>\": 32335,\n  \"pline</w>\": 25376,\n  \"pling</w>\": 12899,\n  \"plings</w>\": 31184,\n  \"pll\": 47629,\n  \"pll</w>\": 25266,\n  \"pln</w>\": 48755,\n  \"plo\": 1778,\n  \"plo</w>\": 43523,\n  \"plor\": 34695,\n  \"plot</w>\": 9918,\n  \"plots</w>\": 25672,\n  \"plotting</w>\": 30751,\n  \"plough\": 33811,\n  \"plow</w>\": 38363,\n  \"pls</w>\": 5572,\n  \"plu\": 2052,\n  \"plug</w>\": 12628,\n  \"plugged</w>\": 23261,\n  \"plugin</w>\": 31278,\n  \"plugins</w>\": 48797,\n  \"plugs</w>\": 28083,\n  \"plum\": 26267,\n  \"plum</w>\": 16202,\n  \"plumb\": 21769,\n  \"plumber</w>\": 43478,\n  \"plumbing</w>\": 24647,\n  \"plume</w>\": 39495,\n  \"plun\": 15122,\n  \"plunge</w>\": 26506,\n  \"plur\": 44664,\n  \"plus</w>\": 3097,\n  \"plush</w>\": 18926,\n  \"pluto</w>\": 26380,\n  \"ply\": 17249,\n  \"ply</w>\": 28705,\n  \"plying</w>\": 36071,\n  \"plym\": 11907,\n  \"plymouth</w>\": 13786,\n  \"plz</w>\": 10538,\n  \"pm\": 13699,\n  \"pm</w>\": 990,\n  \"pmi</w>\": 41206,\n  \"pmln</w>\": 23208,\n  \"pmo\": 18782,\n  \"pmoindia</w>\": 20374,\n  \"pms</w>\": 44223,\n  \"pn\": 14431,\n  \"pn</w>\": 13774,\n  \"pnc</w>\": 37148,\n  \"pne\": 30966,\n  \"pneu\": 28714,\n  \"pneumonia</w>\": 42906,\n  \"png</w>\": 20992,\n  \"pnp</w>\": 25972,\n  \"pnpp\": 42175,\n  \"pnw</w>\": 31521,\n  \"po\": 628,\n  \"po</w>\": 3057,\n  \"poa</w>\": 43912,\n  \"poached</w>\": 27665,\n  \"poaching</w>\": 35140,\n  \"poc\": 13232,\n  \"poc</w>\": 27780,\n  \"pocaly\": 37987,\n  \"pocalypse</w>\": 42307,\n  \"poche\": 38336,\n  \"poche</w>\": 39022,\n  \"pocket\": 29147,\n  \"pocket</w>\": 8504,\n  \"pockets</w>\": 19566,\n  \"pocon\": 41850,\n  \"pod\": 3583,\n  \"pod</w>\": 7446,\n  \"podcast\": 39654,\n  \"podcast</w>\": 4294,\n  \"podcasting</w>\": 40106,\n  \"podcasts</w>\": 19392,\n  \"pode\": 33368,\n  \"poder\": 24960,\n  \"podernfamily</w>\": 26620,\n  \"podi\": 32853,\n  \"podium</w>\": 14093,\n  \"pods</w>\": 18776,\n  \"poe\": 4746,\n  \"poe</w>\": 19254,\n  \"poem</w>\": 9436,\n  \"poems</w>\": 15577,\n  \"poet\": 41019,\n  \"poet</w>\": 9872,\n  \"poetic</w>\": 26365,\n  \"poetry\": 20192,\n  \"poetry</w>\": 6038,\n  \"poetryday</w>\": 39255,\n  \"poets</w>\": 19804,\n  \"pof\": 40850,\n  \"poff</w>\": 28236,\n  \"pogba</w>\": 25998,\n  \"poign\": 29682,\n  \"poignant</w>\": 32138,\n  \"poin\": 9074,\n  \"point\": 13280,\n  \"point</w>\": 2301,\n  \"pointe</w>\": 24631,\n  \"pointed</w>\": 20703,\n  \"pointer</w>\": 29883,\n  \"pointers</w>\": 36760,\n  \"pointing</w>\": 19233,\n  \"pointless</w>\": 33586,\n  \"points</w>\": 3396,\n  \"pois\": 17008,\n  \"poise</w>\": 45087,\n  \"poised</w>\": 27354,\n  \"poison\": 30722,\n  \"poison</w>\": 17074,\n  \"poisoned</w>\": 43624,\n  \"poisoning</w>\": 25750,\n  \"poisonous</w>\": 37131,\n  \"pok\": 15387,\n  \"poke\": 6892,\n  \"poke</w>\": 23186,\n  \"pokemon\": 16239,\n  \"pokemon</w>\": 9528,\n  \"pokemongo</w>\": 23985,\n  \"poker\": 30735,\n  \"poker</w>\": 11865,\n  \"pokes</w>\": 40221,\n  \"poking</w>\": 49169,\n  \"pokÃ©\": 20656,\n  \"pokÃ©mon</w>\": 22066,\n  \"pol\": 977,\n  \"pol</w>\": 7649,\n  \"pola</w>\": 43876,\n  \"poland</w>\": 9834,\n  \"polar\": 21432,\n  \"polar</w>\": 12214,\n  \"polari\": 27919,\n  \"polaris</w>\": 37965,\n  \"polarized</w>\": 48437,\n  \"polaro\": 25237,\n  \"polaroid</w>\": 30427,\n  \"poldark</w>\": 41322,\n  \"pole\": 26682,\n  \"pole</w>\": 8170,\n  \"poles</w>\": 22585,\n  \"poli\": 9675,\n  \"poli</w>\": 5414,\n  \"polic\": 16126,\n  \"police\": 15535,\n  \"police</w>\": 2120,\n  \"policeman</w>\": 37713,\n  \"policemen</w>\": 47946,\n  \"polici\": 10819,\n  \"policies</w>\": 10993,\n  \"policing</w>\": 20969,\n  \"policy\": 30173,\n  \"policy</w>\": 4660,\n  \"polio</w>\": 30533,\n  \"polis</w>\": 16133,\n  \"polish\": 46941,\n  \"polish</w>\": 9632,\n  \"polished</w>\": 21478,\n  \"polishing</w>\": 43629,\n  \"polit\": 2247,\n  \"politan</w>\": 15337,\n  \"polite</w>\": 31497,\n  \"politi\": 40597,\n  \"politic\": 33333,\n  \"political\": 37744,\n  \"political</w>\": 4197,\n  \"politically</w>\": 24323,\n  \"politician</w>\": 15960,\n  \"politicians</w>\": 12914,\n  \"politico</w>\": 39403,\n  \"politics</w>\": 4929,\n  \"polk</w>\": 33317,\n  \"polka</w>\": 29476,\n  \"poll</w>\": 7032,\n  \"pollen</w>\": 27651,\n  \"pollin\": 19152,\n  \"pollinators</w>\": 36599,\n  \"polling</w>\": 18024,\n  \"pollo</w>\": 42755,\n  \"pollock</w>\": 37614,\n  \"polls</w>\": 11813,\n  \"pollu\": 8370,\n  \"polluted</w>\": 43346,\n  \"pollution</w>\": 10384,\n  \"polly</w>\": 31204,\n  \"polo\": 35928,\n  \"polo</w>\": 10229,\n  \"poly\": 6833,\n  \"poly</w>\": 18367,\n  \"polye\": 31730,\n  \"polyester</w>\": 38514,\n  \"polym\": 23626,\n  \"polymer</w>\": 29993,\n  \"polyne\": 38892,\n  \"polyvore</w>\": 24771,\n  \"pom\": 7548,\n  \"pom</w>\": 24280,\n  \"pome\": 27963,\n  \"pomegran\": 29326,\n  \"pomegranate</w>\": 32415,\n  \"pomer\": 35156,\n  \"pomona</w>\": 41690,\n  \"pompe\": 18352,\n  \"pompeii</w>\": 47775,\n  \"pompeo</w>\": 34351,\n  \"pompey</w>\": 35079,\n  \"pon\": 3809,\n  \"pon</w>\": 22391,\n  \"ponce</w>\": 43637,\n  \"pond</w>\": 10750,\n  \"ponder</w>\": 36863,\n  \"pondering</w>\": 47395,\n  \"ponds</w>\": 31033,\n  \"pone</w>\": 32183,\n  \"pong\": 40546,\n  \"pong</w>\": 17710,\n  \"ponies</w>\": 34157,\n  \"pons</w>\": 41255,\n  \"pont\": 47563,\n  \"pont</w>\": 22997,\n  \"ponte</w>\": 40892,\n  \"ponti\": 15527,\n  \"pontiac</w>\": 25373,\n  \"pontifex</w>\": 33566,\n  \"ponty\": 45152,\n  \"pony\": 24438,\n  \"pony</w>\": 12678,\n  \"ponytail</w>\": 43265,\n  \"poo\": 6601,\n  \"poo</w>\": 14389,\n  \"pooch</w>\": 37037,\n  \"poodle</w>\": 34961,\n  \"pooh</w>\": 27103,\n  \"pooja</w>\": 35676,\n  \"pool\": 12484,\n  \"pool</w>\": 2831,\n  \"poole</w>\": 26290,\n  \"pools</w>\": 18736,\n  \"poolside</w>\": 35509,\n  \"poon\": 33799,\n  \"poon</w>\": 36178,\n  \"poop</w>\": 23310,\n  \"poor\": 14528,\n  \"poor</w>\": 3665,\n  \"poorest</w>\": 40771,\n  \"poorly</w>\": 21101,\n  \"pop\": 6530,\n  \"pop</w>\": 2852,\n  \"popart</w>\": 47425,\n  \"popcorn</w>\": 15034,\n  \"pope\": 16994,\n  \"pope</w>\": 9283,\n  \"popefrancis</w>\": 37254,\n  \"poplar</w>\": 38726,\n  \"popo\": 38835,\n  \"popo</w>\": 35572,\n  \"popp\": 13156,\n  \"popped</w>\": 14934,\n  \"poppies</w>\": 30385,\n  \"poppin</w>\": 28536,\n  \"popping</w>\": 18152,\n  \"poppins</w>\": 41216,\n  \"poppy\": 32194,\n  \"poppy</w>\": 15447,\n  \"pops</w>\": 11705,\n  \"popsic\": 38481,\n  \"popu\": 3785,\n  \"popul\": 6593,\n  \"popular\": 15854,\n  \"popular</w>\": 4368,\n  \"popularity</w>\": 19235,\n  \"populated</w>\": 38420,\n  \"population</w>\": 8423,\n  \"populations</w>\": 23797,\n  \"populism</w>\": 48998,\n  \"populist</w>\": 49376,\n  \"popup</w>\": 33053,\n  \"por\": 817,\n  \"por</w>\": 7697,\n  \"pora</w>\": 23537,\n  \"porcel\": 19409,\n  \"porcelain</w>\": 20451,\n  \"porch</w>\": 17154,\n  \"pore</w>\": 28267,\n  \"pork\": 40379,\n  \"pork</w>\": 7897,\n  \"poro\": 48110,\n  \"porridge</w>\": 34924,\n  \"porsch\": 48009,\n  \"porsche\": 44049,\n  \"porsche</w>\": 8783,\n  \"port\": 1641,\n  \"port</w>\": 1418,\n  \"porta</w>\": 45037,\n  \"portable</w>\": 11949,\n  \"portage</w>\": 32087,\n  \"portal</w>\": 14982,\n  \"porte</w>\": 28654,\n  \"ported</w>\": 16879,\n  \"porter\": 28319,\n  \"porter</w>\": 10318,\n  \"porters</w>\": 15670,\n  \"portfoli\": 45766,\n  \"portfolio</w>\": 11938,\n  \"porth\": 37425,\n  \"porti\": 45760,\n  \"porting</w>\": 26052,\n  \"portion</w>\": 13739,\n  \"portions</w>\": 22914,\n  \"portland\": 38366,\n  \"portland</w>\": 8880,\n  \"portman</w>\": 34755,\n  \"porto\": 24853,\n  \"porto</w>\": 18947,\n  \"portobello</w>\": 48025,\n  \"portra\": 4175,\n  \"portrait\": 39312,\n  \"portrait</w>\": 5352,\n  \"portraits</w>\": 14203,\n  \"portray</w>\": 46282,\n  \"portrayal</w>\": 39238,\n  \"portrayed</w>\": 36093,\n  \"ports</w>\": 7734,\n  \"portsm\": 17063,\n  \"portsmouth</w>\": 19074,\n  \"portu\": 7159,\n  \"portugal</w>\": 9503,\n  \"portugue\": 17498,\n  \"portuguese</w>\": 18019,\n  \"pos\": 1780,\n  \"pos</w>\": 11839,\n  \"pose\": 25478,\n  \"pose</w>\": 4230,\n  \"posed</w>\": 5206,\n  \"posei\": 47270,\n  \"poser</w>\": 46899,\n  \"poses</w>\": 9773,\n  \"posey</w>\": 34852,\n  \"posh</w>\": 26748,\n  \"posing</w>\": 10518,\n  \"posit\": 28793,\n  \"positi\": 7895,\n  \"position</w>\": 4657,\n  \"positioned</w>\": 34482,\n  \"positioning</w>\": 30657,\n  \"positions</w>\": 12188,\n  \"positive\": 21811,\n  \"positive</w>\": 4844,\n  \"positively</w>\": 24688,\n  \"positivity</w>\": 19966,\n  \"poss</w>\": 39745,\n  \"posse\": 17414,\n  \"posse</w>\": 28413,\n  \"possess</w>\": 36810,\n  \"possessed</w>\": 36220,\n  \"possession</w>\": 16154,\n  \"possessions</w>\": 40588,\n  \"possi\": 2521,\n  \"possibilities</w>\": 17932,\n  \"possibility</w>\": 18517,\n  \"possible</w>\": 3134,\n  \"possibly</w>\": 8601,\n  \"possum</w>\": 38575,\n  \"post\": 3489,\n  \"post</w>\": 1549,\n  \"postage</w>\": 27570,\n  \"postal</w>\": 21687,\n  \"postcard</w>\": 14785,\n  \"postcards</w>\": 23922,\n  \"postdoc</w>\": 41013,\n  \"posted</w>\": 4752,\n  \"poster\": 22881,\n  \"poster</w>\": 3574,\n  \"posters</w>\": 9673,\n  \"postgame</w>\": 34873,\n  \"postgraduate</w>\": 31997,\n  \"posthum\": 42410,\n  \"posting</w>\": 7559,\n  \"postman</w>\": 38285,\n  \"postpon\": 23247,\n  \"postponed</w>\": 25097,\n  \"posts</w>\": 7824,\n  \"postseason</w>\": 24521,\n  \"posture</w>\": 29681,\n  \"posure</w>\": 35539,\n  \"pot\": 3547,\n  \"pot</w>\": 5168,\n  \"potam\": 45825,\n  \"potassi\": 36889,\n  \"potassium</w>\": 37147,\n  \"potat\": 5975,\n  \"potato</w>\": 8527,\n  \"potatoes</w>\": 11567,\n  \"potd</w>\": 28765,\n  \"pote</w>\": 41869,\n  \"poten\": 4454,\n  \"potent</w>\": 26082,\n  \"potenti\": 44104,\n  \"potential</w>\": 5100,\n  \"potentially</w>\": 16508,\n  \"potholes</w>\": 47506,\n  \"potion</w>\": 46055,\n  \"potom\": 38848,\n  \"potomac</w>\": 43372,\n  \"pots</w>\": 19234,\n  \"pott\": 28698,\n  \"potted</w>\": 48581,\n  \"potter\": 24975,\n  \"potter</w>\": 9026,\n  \"pottery</w>\": 18396,\n  \"potts</w>\": 39839,\n  \"potty</w>\": 43569,\n  \"potus</w>\": 8740,\n  \"pou\": 9423,\n  \"pouch</w>\": 26811,\n  \"poul\": 22485,\n  \"poultry</w>\": 31005,\n  \"poun\": 33719,\n  \"pound\": 33809,\n  \"pound</w>\": 10674,\n  \"pounding</w>\": 46544,\n  \"pounds</w>\": 10752,\n  \"pour\": 33112,\n  \"pour</w>\": 8180,\n  \"poured</w>\": 26621,\n  \"pouring</w>\": 16098,\n  \"pours</w>\": 26005,\n  \"pout</w>\": 39621,\n  \"poutine</w>\": 43768,\n  \"pov</w>\": 25731,\n  \"pover\": 8432,\n  \"pover</w>\": 29464,\n  \"poverty</w>\": 9095,\n  \"pow\": 1317,\n  \"pow</w>\": 17745,\n  \"powder\": 32427,\n  \"powder</w>\": 9674,\n  \"powe\": 36955,\n  \"powell</w>\": 13305,\n  \"power\": 2789,\n  \"power</w>\": 1807,\n  \"powerball</w>\": 47803,\n  \"powered\": 45442,\n  \"powered</w>\": 7332,\n  \"powerful</w>\": 4875,\n  \"powerhouse</w>\": 22858,\n  \"powering</w>\": 16231,\n  \"powerof\": 31961,\n  \"powerpoint</w>\": 38940,\n  \"powerrangers</w>\": 40620,\n  \"powers</w>\": 9422,\n  \"pox</w>\": 43649,\n  \"poy</w>\": 34737,\n  \"poyn\": 47655,\n  \"poz\": 39953,\n  \"pp\": 604,\n  \"pp</w>\": 4186,\n  \"ppa</w>\": 10416,\n  \"ppard</w>\": 23391,\n  \"ppc</w>\": 27778,\n  \"ppe\": 24573,\n  \"ppe</w>\": 11867,\n  \"pped</w>\": 1873,\n  \"ppel</w>\": 46523,\n  \"ppen</w>\": 30663,\n  \"pper\": 6719,\n  \"pper</w>\": 2440,\n  \"ppers</w>\": 5232,\n  \"ppery</w>\": 27833,\n  \"ppet</w>\": 20744,\n  \"ppets</w>\": 25849,\n  \"ppg</w>\": 27433,\n  \"ppi</w>\": 9594,\n  \"ppie</w>\": 33795,\n  \"ppin</w>\": 8076,\n  \"pping\": 22214,\n  \"pping</w>\": 1682,\n  \"ppings</w>\": 35687,\n  \"ppl</w>\": 6758,\n  \"pple</w>\": 12302,\n  \"ppm</w>\": 42053,\n  \"ppo</w>\": 10215,\n  \"ppor\": 37613,\n  \"ppp</w>\": 14017,\n  \"pps</w>\": 10683,\n  \"ppv</w>\": 38864,\n  \"ppy\": 30360,\n  \"ppy</w>\": 3860,\n  \"pr\": 766,\n  \"pr</w>\": 4150,\n  \"pra\": 1865,\n  \"pra</w>\": 19285,\n  \"prab\": 17901,\n  \"prabhas</w>\": 29959,\n  \"prabhu</w>\": 31529,\n  \"prac\": 2243,\n  \"practi\": 29995,\n  \"practic\": 5495,\n  \"practical</w>\": 10792,\n  \"practically</w>\": 25588,\n  \"practice</w>\": 3349,\n  \"practiced</w>\": 36749,\n  \"practices</w>\": 9040,\n  \"practicing</w>\": 12750,\n  \"practise</w>\": 38938,\n  \"practising</w>\": 36478,\n  \"practiti\": 19909,\n  \"practitioner</w>\": 32591,\n  \"practitioners</w>\": 29045,\n  \"prada</w>\": 29456,\n  \"pradesh</w>\": 15384,\n  \"prado</w>\": 44141,\n  \"prag\": 31025,\n  \"prague</w>\": 14940,\n  \"prairi\": 12629,\n  \"prairie</w>\": 14753,\n  \"praise</w>\": 10013,\n  \"praised</w>\": 27649,\n  \"praises</w>\": 23049,\n  \"praising</w>\": 36961,\n  \"prakash\": 43708,\n  \"prakash</w>\": 25366,\n  \"pram\": 47774,\n  \"pran\": 20048,\n  \"prank</w>\": 23654,\n  \"pras</w>\": 41562,\n  \"prasad</w>\": 29562,\n  \"prat\": 23069,\n  \"prati\": 45773,\n  \"pratt\": 37863,\n  \"pratt</w>\": 23396,\n  \"prawn</w>\": 33102,\n  \"prawns</w>\": 34903,\n  \"pray\": 12671,\n  \"pray</w>\": 6041,\n  \"prayed</w>\": 34665,\n  \"prayer\": 41452,\n  \"prayer</w>\": 6583,\n  \"prayers</w>\": 8393,\n  \"prayfor\": 18443,\n  \"praying</w>\": 11550,\n  \"prays</w>\": 46602,\n  \"prc</w>\": 28781,\n  \"pre\": 679,\n  \"pre</w>\": 2900,\n  \"preach</w>\": 22545,\n  \"preacher</w>\": 29357,\n  \"preaching</w>\": 23642,\n  \"precau\": 36532,\n  \"precautions</w>\": 47845,\n  \"prece\": 15361,\n  \"preci\": 5470,\n  \"precin\": 27908,\n  \"precinct</w>\": 32587,\n  \"precious</w>\": 8226,\n  \"precipit\": 27463,\n  \"precipitation</w>\": 33399,\n  \"precise</w>\": 24457,\n  \"precisely</w>\": 34954,\n  \"precision\": 44021,\n  \"precision</w>\": 15621,\n  \"pred\": 40370,\n  \"predat\": 13364,\n  \"predator</w>\": 20653,\n  \"predators</w>\": 25569,\n  \"prede\": 38454,\n  \"predecess\": 38963,\n  \"predic\": 4876,\n  \"predict</w>\": 16900,\n  \"predictable</w>\": 25344,\n  \"predicted</w>\": 18702,\n  \"predicting</w>\": 30414,\n  \"prediction</w>\": 16296,\n  \"predictions</w>\": 15125,\n  \"predictive</w>\": 29798,\n  \"predicts</w>\": 25960,\n  \"preds</w>\": 40125,\n  \"pree</w>\": 47026,\n  \"preet</w>\": 30131,\n  \"prefe\": 14542,\n  \"prefecture</w>\": 32890,\n  \"prefer\": 33426,\n  \"prefer</w>\": 11450,\n  \"preference</w>\": 35057,\n  \"preferences</w>\": 38118,\n  \"preferred</w>\": 18772,\n  \"prefers</w>\": 38528,\n  \"pregame</w>\": 18575,\n  \"pregn\": 7190,\n  \"pregnancy</w>\": 12769,\n  \"pregnant</w>\": 11195,\n  \"prehistoric</w>\": 32750,\n  \"prejudice</w>\": 28337,\n  \"preli\": 15523,\n  \"prelimin\": 19990,\n  \"preliminary</w>\": 20997,\n  \"prelims</w>\": 43223,\n  \"prelude</w>\": 42966,\n  \"prem\": 32090,\n  \"prem</w>\": 21724,\n  \"premature</w>\": 39253,\n  \"premi\": 2413,\n  \"premier\": 16996,\n  \"premier</w>\": 5539,\n  \"premiere</w>\": 5367,\n  \"premiered</w>\": 27652,\n  \"premieres</w>\": 19907,\n  \"premiering</w>\": 32615,\n  \"premierleague</w>\": 22608,\n  \"premiers</w>\": 44883,\n  \"premiership</w>\": 23665,\n  \"premiosm\": 38460,\n  \"premiosmtvmiaw</w>\": 38630,\n  \"premise</w>\": 45952,\n  \"premises</w>\": 27266,\n  \"premium</w>\": 8011,\n  \"pren\": 20801,\n  \"preneur</w>\": 46288,\n  \"preorder</w>\": 16703,\n  \"preorders</w>\": 45985,\n  \"prep\": 6430,\n  \"prep</w>\": 7277,\n  \"prepa\": 26270,\n  \"prepaid</w>\": 42934,\n  \"prepar\": 4968,\n  \"preparation</w>\": 11651,\n  \"preparations</w>\": 19135,\n  \"prepare</w>\": 7014,\n  \"prepared</w>\": 7677,\n  \"preparedness</w>\": 29492,\n  \"prepares</w>\": 16375,\n  \"preparing</w>\": 7365,\n  \"prepped</w>\": 34379,\n  \"prepping</w>\": 16459,\n  \"preps</w>\": 14765,\n  \"prequel</w>\": 40461,\n  \"pres\": 1385,\n  \"pres</w>\": 8529,\n  \"presale</w>\": 27135,\n  \"presby\": 30447,\n  \"presbyter\": 33959,\n  \"presbyterian</w>\": 35370,\n  \"preschool</w>\": 24354,\n  \"prescott</w>\": 29392,\n  \"prescri\": 14851,\n  \"prescribed</w>\": 36968,\n  \"prescription</w>\": 23061,\n  \"preseason</w>\": 13813,\n  \"presen\": 16742,\n  \"presence</w>\": 8848,\n  \"present\": 2344,\n  \"present</w>\": 2881,\n  \"presentation</w>\": 4594,\n  \"presentations</w>\": 16998,\n  \"presented</w>\": 4587,\n  \"presenter</w>\": 18587,\n  \"presenters</w>\": 32759,\n  \"presenting</w>\": 5339,\n  \"presents</w>\": 4215,\n  \"preserv\": 17616,\n  \"preservation</w>\": 21074,\n  \"preserve</w>\": 15570,\n  \"preserved</w>\": 23161,\n  \"preserves</w>\": 44881,\n  \"preserving</w>\": 32315,\n  \"presi\": 1697,\n  \"presiden\": 43374,\n  \"presidency</w>\": 18077,\n  \"president\": 19900,\n  \"president</w>\": 1940,\n  \"presidente</w>\": 47363,\n  \"presidenti\": 48297,\n  \"presidential</w>\": 8503,\n  \"presidents</w>\": 16726,\n  \"presiding</w>\": 45298,\n  \"presley</w>\": 30013,\n  \"press\": 4124,\n  \"press</w>\": 2124,\n  \"pressed</w>\": 20080,\n  \"presser</w>\": 27826,\n  \"presses</w>\": 33748,\n  \"pressing</w>\": 20893,\n  \"pressure</w>\": 6083,\n  \"pressures</w>\": 38487,\n  \"prest\": 41840,\n  \"presti\": 12245,\n  \"prestige</w>\": 29328,\n  \"prestigious</w>\": 15888,\n  \"presto</w>\": 42211,\n  \"preston\": 37335,\n  \"preston</w>\": 15179,\n  \"presu\": 21667,\n  \"presumably</w>\": 42562,\n  \"pret\": 9652,\n  \"preten\": 15871,\n  \"pretend</w>\": 18111,\n  \"pretending</w>\": 21306,\n  \"pretoria</w>\": 36080,\n  \"prett\": 46667,\n  \"prettier</w>\": 31745,\n  \"prettiest</w>\": 22866,\n  \"pretty\": 18286,\n  \"pretty</w>\": 2111,\n  \"pretz\": 24890,\n  \"pretzel</w>\": 36707,\n  \"pretzels</w>\": 45468,\n  \"prev\": 20274,\n  \"prevail</w>\": 31637,\n  \"prevalence</w>\": 41729,\n  \"prevalent</w>\": 46260,\n  \"preven\": 29382,\n  \"prevent\": 26436,\n  \"prevent</w>\": 7968,\n  \"preventable</w>\": 44250,\n  \"prevented</w>\": 35356,\n  \"preventing</w>\": 21756,\n  \"prevention</w>\": 9500,\n  \"preventive</w>\": 40949,\n  \"prevents</w>\": 31746,\n  \"preview</w>\": 4449,\n  \"previews</w>\": 20279,\n  \"previous</w>\": 9252,\n  \"previously</w>\": 13359,\n  \"prey</w>\": 17131,\n  \"prez</w>\": 17956,\n  \"pri\": 955,\n  \"pri</w>\": 23400,\n  \"pric\": 24275,\n  \"price\": 13254,\n  \"price</w>\": 2827,\n  \"priced</w>\": 16934,\n  \"priceless</w>\": 15743,\n  \"prices</w>\": 5954,\n  \"pricing</w>\": 14800,\n  \"prick\": 43921,\n  \"prick</w>\": 46516,\n  \"pride\": 15323,\n  \"pride</w>\": 3436,\n  \"pridemonth</w>\": 41410,\n  \"prie\": 22477,\n  \"priest\": 38756,\n  \"priest</w>\": 14222,\n  \"priests</w>\": 30005,\n  \"prim\": 22004,\n  \"prima\": 35611,\n  \"prima</w>\": 33277,\n  \"primal</w>\": 36604,\n  \"primar\": 21579,\n  \"primaries</w>\": 46126,\n  \"primarily</w>\": 29465,\n  \"primark</w>\": 48329,\n  \"primary\": 35024,\n  \"primary</w>\": 5814,\n  \"primavera</w>\": 44899,\n  \"prime\": 14162,\n  \"prime</w>\": 5183,\n  \"primed</w>\": 45694,\n  \"primer</w>\": 22388,\n  \"primetime</w>\": 29763,\n  \"primitive</w>\": 37467,\n  \"primo</w>\": 43215,\n  \"primrose</w>\": 45891,\n  \"prin\": 1588,\n  \"prince\": 9457,\n  \"prince</w>\": 4735,\n  \"princes\": 45329,\n  \"princes</w>\": 30136,\n  \"princess\": 24123,\n  \"princess</w>\": 5079,\n  \"princesses</w>\": 34161,\n  \"princeton</w>\": 22433,\n  \"princi\": 5129,\n  \"principal\": 33599,\n  \"principal</w>\": 8860,\n  \"principals</w>\": 27524,\n  \"principle</w>\": 19595,\n  \"principles</w>\": 13755,\n  \"print\": 17851,\n  \"print</w>\": 3557,\n  \"printable</w>\": 29648,\n  \"printed</w>\": 7978,\n  \"printer</w>\": 14521,\n  \"printers</w>\": 27881,\n  \"printing</w>\": 7369,\n  \"printmaking</w>\": 38669,\n  \"prints</w>\": 7704,\n  \"prior\": 20328,\n  \"prior</w>\": 10572,\n  \"priorit\": 47773,\n  \"prioriti\": 28822,\n  \"priorities</w>\": 15232,\n  \"prioritize</w>\": 46715,\n  \"priority</w>\": 12451,\n  \"priory</w>\": 38665,\n  \"prisc\": 32468,\n  \"priscilla</w>\": 42396,\n  \"prise</w>\": 23343,\n  \"prism\": 49311,\n  \"prism</w>\": 34356,\n  \"prison\": 9281,\n  \"prison</w>\": 6622,\n  \"prisoner</w>\": 21427,\n  \"prisoners</w>\": 17460,\n  \"prisons</w>\": 26607,\n  \"pristine</w>\": 30618,\n  \"prit\": 41668,\n  \"prit</w>\": 37523,\n  \"prith\": 39173,\n  \"prius</w>\": 43561,\n  \"priv\": 3270,\n  \"privacy</w>\": 10437,\n  \"private\": 20362,\n  \"private</w>\": 4439,\n  \"privately</w>\": 32970,\n  \"privati\": 27379,\n  \"privi\": 8367,\n  \"privileg\": 18015,\n  \"privilege</w>\": 11537,\n  \"privileged</w>\": 18166,\n  \"prix</w>\": 10875,\n  \"priya</w>\": 31275,\n  \"priyan\": 16488,\n  \"priyanka</w>\": 31959,\n  \"priyankach\": 30030,\n  \"priyankachopra</w>\": 30264,\n  \"prize\": 48222,\n  \"prize</w>\": 4521,\n  \"prized</w>\": 38769,\n  \"prizes</w>\": 9268,\n  \"prk</w>\": 37094,\n  \"pro\": 644,\n  \"pro</w>\": 2630,\n  \"proactive</w>\": 33364,\n  \"prob\": 17706,\n  \"prob</w>\": 24007,\n  \"probab\": 3907,\n  \"probability</w>\": 32637,\n  \"probable</w>\": 42444,\n  \"probably</w>\": 4047,\n  \"probation</w>\": 36531,\n  \"probe</w>\": 14359,\n  \"probes</w>\": 48564,\n  \"probiotics</w>\": 49395,\n  \"proble\": 2719,\n  \"problem</w>\": 4324,\n  \"problematic</w>\": 33767,\n  \"problems</w>\": 4671,\n  \"probs</w>\": 16330,\n  \"probz</w>\": 34243,\n  \"proc\": 38417,\n  \"proce\": 4076,\n  \"procedu\": 18204,\n  \"procedural</w>\": 48177,\n  \"procedure</w>\": 20163,\n  \"procedures</w>\": 21109,\n  \"proceed\": 26664,\n  \"proceed</w>\": 33894,\n  \"proceedings</w>\": 26953,\n  \"proceeds</w>\": 11882,\n  \"process\": 17291,\n  \"process</w>\": 4078,\n  \"processed</w>\": 23816,\n  \"processes</w>\": 15169,\n  \"processing</w>\": 11737,\n  \"procession</w>\": 26288,\n  \"processor</w>\": 22838,\n  \"processors</w>\": 43634,\n  \"proclaimed</w>\": 34489,\n  \"proclamation</w>\": 32065,\n  \"procra\": 25361,\n  \"procrastin\": 25586,\n  \"procrastination</w>\": 42825,\n  \"procreate</w>\": 39336,\n  \"proctor</w>\": 47204,\n  \"procu\": 21001,\n  \"procurement</w>\": 23733,\n  \"prod\": 44349,\n  \"prod</w>\": 11991,\n  \"prodi\": 27759,\n  \"prodigy</w>\": 31973,\n  \"produ\": 27852,\n  \"produc\": 1471,\n  \"produce</w>\": 7529,\n  \"produced</w>\": 7479,\n  \"producer</w>\": 7064,\n  \"producers</w>\": 13883,\n  \"produces</w>\": 19940,\n  \"producing</w>\": 13579,\n  \"product\": 32602,\n  \"product</w>\": 4306,\n  \"production</w>\": 4146,\n  \"productions</w>\": 14166,\n  \"productive</w>\": 9697,\n  \"productivity</w>\": 12800,\n  \"products</w>\": 3964,\n  \"prof\": 15043,\n  \"prof</w>\": 5488,\n  \"profe\": 2611,\n  \"profess\": 5486,\n  \"professi\": 3705,\n  \"profession\": 8104,\n  \"profession</w>\": 19671,\n  \"professional\": 46007,\n  \"professional</w>\": 4774,\n  \"professionalism</w>\": 41252,\n  \"professionally</w>\": 33892,\n  \"professionals</w>\": 10165,\n  \"professor\": 47302,\n  \"professor</w>\": 6092,\n  \"professors</w>\": 27758,\n  \"profici\": 34685,\n  \"profile\": 14291,\n  \"profile</w>\": 6444,\n  \"profiles</w>\": 22070,\n  \"profiling</w>\": 37123,\n  \"profit\": 16941,\n  \"profit</w>\": 7909,\n  \"profitable</w>\": 25465,\n  \"profits</w>\": 13410,\n  \"profound\": 48245,\n  \"profound</w>\": 22998,\n  \"profs</w>\": 19260,\n  \"prog</w>\": 22219,\n  \"progno\": 46070,\n  \"program\": 4162,\n  \"program</w>\": 2737,\n  \"programme</w>\": 6322,\n  \"programmer</w>\": 37001,\n  \"programmes</w>\": 20468,\n  \"programming</w>\": 10831,\n  \"programs</w>\": 7345,\n  \"progre\": 7069,\n  \"progress</w>\": 4421,\n  \"progressi\": 23297,\n  \"progressing</w>\": 32346,\n  \"progression</w>\": 24772,\n  \"progressive</w>\": 12208,\n  \"progressives</w>\": 41709,\n  \"prohi\": 41124,\n  \"prohib\": 45040,\n  \"prohibition</w>\": 34440,\n  \"proj</w>\": 39156,\n  \"proje\": 48345,\n  \"projec\": 1610,\n  \"project\": 15911,\n  \"project</w>\": 1965,\n  \"projected</w>\": 22873,\n  \"projection</w>\": 22384,\n  \"projections</w>\": 34638,\n  \"projector</w>\": 27816,\n  \"projects</w>\": 5090,\n  \"proli\": 19710,\n  \"prolife</w>\": 32126,\n  \"prolifer\": 39018,\n  \"prolific</w>\": 27839,\n  \"prolly</w>\": 45968,\n  \"prolon\": 35379,\n  \"prolonged</w>\": 41972,\n  \"prom\": 40363,\n  \"prom</w>\": 7944,\n  \"prome\": 34355,\n  \"promen\": 33578,\n  \"promenade</w>\": 35522,\n  \"promethe\": 44183,\n  \"promin\": 35217,\n  \"prominent</w>\": 19172,\n  \"promis\": 3963,\n  \"promise</w>\": 6745,\n  \"promised</w>\": 11516,\n  \"promises</w>\": 12064,\n  \"promising</w>\": 14183,\n  \"promo\": 3037,\n  \"promo</w>\": 6755,\n  \"promos</w>\": 35044,\n  \"promote\": 47384,\n  \"promote</w>\": 8003,\n  \"promoted</w>\": 16395,\n  \"promoter</w>\": 33081,\n  \"promotes</w>\": 20169,\n  \"promoting</w>\": 9695,\n  \"promotion</w>\": 9259,\n  \"promotional</w>\": 17619,\n  \"promotions</w>\": 19142,\n  \"promp\": 11671,\n  \"prompt</w>\": 20198,\n  \"prompted</w>\": 45746,\n  \"prompts</w>\": 33490,\n  \"proms</w>\": 37759,\n  \"pron\": 13285,\n  \"prone</w>\": 30964,\n  \"pronoun\": 23022,\n  \"pronounce</w>\": 40489,\n  \"pronounced</w>\": 34109,\n  \"pronto</w>\": 44296,\n  \"proof\": 17020,\n  \"proof</w>\": 5248,\n  \"proofing</w>\": 35679,\n  \"proofs</w>\": 41023,\n  \"prop\": 19123,\n  \"prop</w>\": 16254,\n  \"propag\": 12151,\n  \"propaganda</w>\": 14718,\n  \"propane</w>\": 45546,\n  \"propel</w>\": 48439,\n  \"propeller</w>\": 47404,\n  \"proper\": 3577,\n  \"proper</w>\": 8205,\n  \"properly</w>\": 12560,\n  \"properties</w>\": 10922,\n  \"property\": 26486,\n  \"property</w>\": 5043,\n  \"prophe\": 9662,\n  \"prophecy</w>\": 32501,\n  \"prophet</w>\": 15549,\n  \"prophetic</w>\": 47476,\n  \"prophets</w>\": 39441,\n  \"propor\": 35016,\n  \"proportion</w>\": 35775,\n  \"proportions</w>\": 39391,\n  \"propos\": 9455,\n  \"proposal</w>\": 12139,\n  \"proposals</w>\": 20568,\n  \"propose</w>\": 28471,\n  \"proposed</w>\": 10615,\n  \"proposes</w>\": 27133,\n  \"proposing</w>\": 42631,\n  \"proposition</w>\": 44780,\n  \"propri\": 28243,\n  \"props</w>\": 15249,\n  \"propulsion</w>\": 49380,\n  \"pros\": 33925,\n  \"pros</w>\": 14147,\n  \"prosciutto</w>\": 46565,\n  \"prose\": 47063,\n  \"prose</w>\": 28675,\n  \"prosecco</w>\": 28839,\n  \"prosecu\": 12136,\n  \"prosecution</w>\": 30902,\n  \"prosecutor</w>\": 23736,\n  \"prosecutors</w>\": 31656,\n  \"prosp\": 24242,\n  \"prospec\": 12693,\n  \"prospect</w>\": 11211,\n  \"prospective</w>\": 28034,\n  \"prospects</w>\": 15372,\n  \"prosper\": 16121,\n  \"prosper</w>\": 33526,\n  \"prosperity</w>\": 17203,\n  \"prosperous</w>\": 28252,\n  \"prost</w>\": 47923,\n  \"prostate</w>\": 28808,\n  \"prostatec\": 49064,\n  \"prosthetic</w>\": 44602,\n  \"prostitu\": 37333,\n  \"protag\": 28950,\n  \"protagonist</w>\": 38183,\n  \"prote\": 1845,\n  \"protec\": 5640,\n  \"protect\": 25563,\n  \"protect</w>\": 4817,\n  \"protected</w>\": 12266,\n  \"protecting</w>\": 11710,\n  \"protection</w>\": 6238,\n  \"protections</w>\": 33772,\n  \"protective</w>\": 17028,\n  \"protector</w>\": 20441,\n  \"protectors</w>\": 45039,\n  \"protects</w>\": 21889,\n  \"protein</w>\": 8088,\n  \"proteins</w>\": 28661,\n  \"protest</w>\": 6279,\n  \"protestant</w>\": 46945,\n  \"protested</w>\": 48089,\n  \"protester</w>\": 42073,\n  \"protesters</w>\": 12660,\n  \"protesting</w>\": 18788,\n  \"protestors</w>\": 27822,\n  \"protests</w>\": 12450,\n  \"proto\": 8672,\n  \"proto</w>\": 44958,\n  \"protocol</w>\": 19938,\n  \"protocols</w>\": 39631,\n  \"proton</w>\": 40009,\n  \"prototype</w>\": 16675,\n  \"prototyping</w>\": 42081,\n  \"prou\": 5739,\n  \"proud\": 11080,\n  \"proud</w>\": 1679,\n  \"prouder</w>\": 39585,\n  \"proudest</w>\": 46806,\n  \"proudly</w>\": 11203,\n  \"proudof\": 48184,\n  \"proudtobe\": 35043,\n  \"prov\": 23772,\n  \"prov</w>\": 35021,\n  \"prove</w>\": 10107,\n  \"proved</w>\": 16473,\n  \"proven\": 35405,\n  \"proven</w>\": 14569,\n  \"provence</w>\": 28067,\n  \"prover\": 18312,\n  \"proverb</w>\": 34419,\n  \"proverbs</w>\": 27016,\n  \"proves</w>\": 16119,\n  \"provi\": 2289,\n  \"provide</w>\": 4832,\n  \"provided</w>\": 9046,\n  \"providence</w>\": 19331,\n  \"provider</w>\": 14409,\n  \"providers</w>\": 17120,\n  \"provides</w>\": 7161,\n  \"providing</w>\": 7250,\n  \"provin\": 12074,\n  \"province</w>\": 8978,\n  \"provinces</w>\": 35050,\n  \"provincial</w>\": 16002,\n  \"proving</w>\": 18055,\n  \"provision</w>\": 30148,\n  \"provisional</w>\": 36008,\n  \"provisions</w>\": 39269,\n  \"provo\": 15367,\n  \"provoc\": 31618,\n  \"provocative</w>\": 43809,\n  \"provoking</w>\": 25510,\n  \"provost</w>\": 36627,\n  \"prow\": 38737,\n  \"prowrestling</w>\": 39825,\n  \"prox\": 41616,\n  \"proxim\": 31436,\n  \"proximity</w>\": 38298,\n  \"proxy</w>\": 31680,\n  \"prs</w>\": 23879,\n  \"pru\": 12961,\n  \"pruitt</w>\": 39453,\n  \"prun\": 29029,\n  \"pruning</w>\": 48133,\n  \"pry\": 31965,\n  \"pryor</w>\": 43375,\n  \"ps\": 3982,\n  \"ps</w>\": 814,\n  \"psa</w>\": 14031,\n  \"psal\": 13859,\n  \"psalm</w>\": 17995,\n  \"psalms</w>\": 35003,\n  \"psb</w>\": 37017,\n  \"psc</w>\": 43118,\n  \"psd</w>\": 28810,\n  \"pse\": 19737,\n  \"pse</w>\": 5423,\n  \"pseu\": 24919,\n  \"pseudo</w>\": 46618,\n  \"psg</w>\": 17123,\n  \"psi\": 45848,\n  \"psi</w>\": 24533,\n  \"psic\": 29299,\n  \"psis</w>\": 33041,\n  \"psl</w>\": 21373,\n  \"psn</w>\": 36781,\n  \"pso\": 27045,\n  \"pson</w>\": 7487,\n  \"psori\": 44688,\n  \"psp</w>\": 32769,\n  \"pss\": 35718,\n  \"pss</w>\": 42535,\n  \"psst</w>\": 47814,\n  \"pst</w>\": 12692,\n  \"psu\": 41286,\n  \"psu</w>\": 28338,\n  \"psv</w>\": 44530,\n  \"psy\": 3576,\n  \"psy</w>\": 11056,\n  \"psych\": 31041,\n  \"psych</w>\": 20509,\n  \"psyched\": 19932,\n  \"psyched</w>\": 35199,\n  \"psychedelic</w>\": 23292,\n  \"psychi\": 18147,\n  \"psychiatric</w>\": 30578,\n  \"psychiatry</w>\": 39706,\n  \"psychic</w>\": 24916,\n  \"psycho\": 6472,\n  \"psycho</w>\": 22154,\n  \"psychological</w>\": 18153,\n  \"psychologist</w>\": 32827,\n  \"psychology</w>\": 12352,\n  \"psychop\": 30112,\n  \"psychotic</w>\": 48774,\n  \"pt\": 11139,\n  \"pt</w>\": 1459,\n  \"pta</w>\": 11586,\n  \"ptbo</w>\": 40481,\n  \"ptc</w>\": 44646,\n  \"pte</w>\": 47804,\n  \"pter\": 49323,\n  \"pti\": 29375,\n  \"pti</w>\": 10491,\n  \"ptic</w>\": 20670,\n  \"ption</w>\": 3479,\n  \"ptions</w>\": 24963,\n  \"pto\": 31372,\n  \"pto</w>\": 34092,\n  \"pton</w>\": 19780,\n  \"pts</w>\": 5886,\n  \"ptsd</w>\": 23973,\n  \"ptv</w>\": 42402,\n  \"pu\": 755,\n  \"pu</w>\": 11780,\n  \"pub\": 20720,\n  \"pub</w>\": 6301,\n  \"puberty</w>\": 44122,\n  \"pubg</w>\": 31496,\n  \"publ\": 3434,\n  \"publi\": 1617,\n  \"public\": 3592,\n  \"public</w>\": 2122,\n  \"publica</w>\": 49007,\n  \"publication</w>\": 13538,\n  \"publications</w>\": 27334,\n  \"publichealth</w>\": 35872,\n  \"publicity</w>\": 20831,\n  \"publicly</w>\": 18554,\n  \"publish</w>\": 19032,\n  \"published</w>\": 4311,\n  \"publisher</w>\": 20455,\n  \"publishers</w>\": 25222,\n  \"publishes</w>\": 35633,\n  \"publishing</w>\": 10994,\n  \"publix</w>\": 47985,\n  \"pubs</w>\": 21099,\n  \"puc\": 48779,\n  \"puck</w>\": 17550,\n  \"pud\": 39234,\n  \"pudding</w>\": 14025,\n  \"puddle</w>\": 33545,\n  \"pue\": 20161,\n  \"pueblo</w>\": 33076,\n  \"puer\": 8968,\n  \"puerto</w>\": 12289,\n  \"puertor\": 22757,\n  \"puertorico</w>\": 26356,\n  \"puff\": 44477,\n  \"puff</w>\": 17184,\n  \"puffin</w>\": 47632,\n  \"puffs</w>\": 47453,\n  \"puffy</w>\": 49245,\n  \"pug\": 20950,\n  \"pug</w>\": 17739,\n  \"pugchat</w>\": 42266,\n  \"pugh</w>\": 41302,\n  \"puglia</w>\": 38345,\n  \"pugs</w>\": 39425,\n  \"puj\": 46163,\n  \"puja</w>\": 33753,\n  \"puk</w>\": 31811,\n  \"pul\": 2469,\n  \"pul</w>\": 40512,\n  \"pula\": 45856,\n  \"puli</w>\": 47293,\n  \"pulit\": 27745,\n  \"pulitzer</w>\": 31419,\n  \"pull\": 20155,\n  \"pull</w>\": 6857,\n  \"pulled</w>\": 8525,\n  \"pulling</w>\": 12897,\n  \"pullman</w>\": 40203,\n  \"pullover</w>\": 44020,\n  \"pulls</w>\": 16041,\n  \"pulmon\": 32613,\n  \"pulmonary</w>\": 39132,\n  \"pulp</w>\": 25410,\n  \"pulse\": 40091,\n  \"pulse</w>\": 12485,\n  \"pulses</w>\": 42177,\n  \"pulsion</w>\": 35398,\n  \"pum\": 37497,\n  \"puma</w>\": 20858,\n  \"pump\": 5179,\n  \"pump</w>\": 9173,\n  \"pumped</w>\": 12796,\n  \"pumping</w>\": 25150,\n  \"pumpkin\": 36386,\n  \"pumpkin</w>\": 8842,\n  \"pumpkins</w>\": 23787,\n  \"pumps</w>\": 18540,\n  \"pun\": 2707,\n  \"pun</w>\": 19929,\n  \"punc\": 43907,\n  \"punch\": 29332,\n  \"punch</w>\": 10730,\n  \"punched</w>\": 31689,\n  \"punches</w>\": 35279,\n  \"punching</w>\": 33468,\n  \"punctu\": 31565,\n  \"punctuation</w>\": 47051,\n  \"pundit</w>\": 41466,\n  \"pune\": 32593,\n  \"pune</w>\": 14488,\n  \"pung</w>\": 45420,\n  \"puni\": 11479,\n  \"punish</w>\": 34569,\n  \"punished</w>\": 31598,\n  \"punisher</w>\": 38509,\n  \"punishment</w>\": 19099,\n  \"punjab\": 19405,\n  \"punjab</w>\": 12883,\n  \"punjabi</w>\": 25430,\n  \"punk\": 28933,\n  \"punk</w>\": 7246,\n  \"punks</w>\": 47171,\n  \"puns</w>\": 35231,\n  \"punt</w>\": 32699,\n  \"punta</w>\": 34112,\n  \"punter</w>\": 47092,\n  \"pup\": 11926,\n  \"pup</w>\": 11302,\n  \"pupil</w>\": 27265,\n  \"pupils</w>\": 13628,\n  \"pupp\": 7116,\n  \"puppet</w>\": 18439,\n  \"puppets</w>\": 28475,\n  \"puppies</w>\": 14820,\n  \"puppy\": 25431,\n  \"puppy</w>\": 6829,\n  \"puppylove</w>\": 40849,\n  \"pups</w>\": 20778,\n  \"pur\": 1727,\n  \"pur</w>\": 6265,\n  \"pura</w>\": 25596,\n  \"puram</w>\": 46174,\n  \"purcell</w>\": 46065,\n  \"purch\": 8384,\n  \"purchase</w>\": 5481,\n  \"purchased</w>\": 13399,\n  \"purchases</w>\": 21887,\n  \"purchasing</w>\": 20718,\n  \"purdu\": 40691,\n  \"purdue</w>\": 22280,\n  \"pure\": 14202,\n  \"pure</w>\": 5979,\n  \"puree</w>\": 45474,\n  \"purely</w>\": 32459,\n  \"puremichigan</w>\": 39783,\n  \"purest</w>\": 45497,\n  \"purge</w>\": 33514,\n  \"puri\": 16910,\n  \"puri</w>\": 21974,\n  \"purification</w>\": 47724,\n  \"purity</w>\": 29780,\n  \"purple\": 17837,\n  \"purple</w>\": 5496,\n  \"purpose\": 33492,\n  \"purpose</w>\": 7391,\n  \"purposes</w>\": 22020,\n  \"purr\": 49262,\n  \"purr</w>\": 46343,\n  \"purse</w>\": 16480,\n  \"pursue</w>\": 19463,\n  \"pursuing</w>\": 26424,\n  \"pursuit</w>\": 16469,\n  \"purÃ©e</w>\": 40981,\n  \"pus</w>\": 13841,\n  \"pusa</w>\": 40825,\n  \"push\": 16028,\n  \"push</w>\": 6831,\n  \"pushaw\": 35407,\n  \"pushaward\": 35448,\n  \"pushawards\": 47184,\n  \"pushed</w>\": 16155,\n  \"pushes</w>\": 23828,\n  \"pushing</w>\": 11549,\n  \"put\": 29535,\n  \"put</w>\": 1983,\n  \"putin</w>\": 10693,\n  \"putnam</w>\": 40235,\n  \"puts</w>\": 7898,\n  \"putt</w>\": 30279,\n  \"putter</w>\": 44723,\n  \"putting</w>\": 5154,\n  \"puzz\": 19760,\n  \"puzzle</w>\": 12875,\n  \"puzzles</w>\": 27986,\n  \"pv\": 14517,\n  \"pv</w>\": 13495,\n  \"pvc</w>\": 26959,\n  \"pvp</w>\": 44172,\n  \"pvt</w>\": 29898,\n  \"pw\": 19419,\n  \"pw</w>\": 16067,\n  \"pwc</w>\": 22965,\n  \"px\": 24790,\n  \"px</w>\": 10262,\n  \"pxrtg</w>\": 36262,\n  \"py\": 4005,\n  \"py</w>\": 7504,\n  \"pye\": 31099,\n  \"pyeongchang</w>\": 36066,\n  \"pyg\": 41450,\n  \"pyram\": 14405,\n  \"pyramid</w>\": 18725,\n  \"pyramids</w>\": 36877,\n  \"pyrene\": 36740,\n  \"pyrenees</w>\": 39744,\n  \"pyro\": 39762,\n  \"python</w>\": 13370,\n  \"pz</w>\": 48361,\n  \"pÃ©\": 43167,\n  \"q\": 80,\n  \"q</w>\": 336,\n  \"qa\": 24944,\n  \"qa</w>\": 16360,\n  \"qad\": 27844,\n  \"qadri</w>\": 35672,\n  \"qaeda</w>\": 31246,\n  \"qanda</w>\": 48672,\n  \"qanon</w>\": 19182,\n  \"qant\": 35404,\n  \"qantas</w>\": 43250,\n  \"qatar\": 32804,\n  \"qatar</w>\": 10872,\n  \"qb</w>\": 8073,\n  \"qbs</w>\": 38188,\n  \"qc</w>\": 17406,\n  \"qe</w>\": 30974,\n  \"qf</w>\": 27215,\n  \"qi\": 25054,\n  \"qi</w>\": 11256,\n  \"qing\": 46522,\n  \"qing</w>\": 34339,\n  \"ql</w>\": 28366,\n  \"qld\": 23039,\n  \"qld</w>\": 13765,\n  \"qldpol</w>\": 42296,\n  \"qm</w>\": 42148,\n  \"qotd</w>\": 24504,\n  \"qpr</w>\": 24788,\n  \"qq\": 31960,\n  \"qr</w>\": 18193,\n  \"qs</w>\": 14364,\n  \"qt</w>\": 15013,\n  \"qtr</w>\": 44803,\n  \"qu\": 666,\n  \"qu</w>\": 28646,\n  \"qua</w>\": 20363,\n  \"quack</w>\": 45575,\n  \"quad\": 11656,\n  \"quad</w>\": 13419,\n  \"quadcopter</w>\": 39792,\n  \"quadru\": 35831,\n  \"quaid</w>\": 34265,\n  \"quail</w>\": 34392,\n  \"quaint</w>\": 45976,\n  \"quake</w>\": 8421,\n  \"quaker</w>\": 43395,\n  \"quakes</w>\": 24572,\n  \"qual\": 9979,\n  \"qual</w>\": 32405,\n  \"qualcomm</w>\": 38683,\n  \"quali\": 4574,\n  \"qualification</w>\": 21508,\n  \"qualifications</w>\": 35225,\n  \"qualified</w>\": 11927,\n  \"qualifier</w>\": 18733,\n  \"qualifiers</w>\": 21388,\n  \"qualifies</w>\": 35820,\n  \"qualify</w>\": 17019,\n  \"qualifying</w>\": 11895,\n  \"qualitative</w>\": 45847,\n  \"qualities</w>\": 20488,\n  \"quality\": 28545,\n  \"quality</w>\": 3027,\n  \"quan\": 11669,\n  \"quan</w>\": 27490,\n  \"quand</w>\": 28198,\n  \"quant\": 15050,\n  \"quanti\": 31540,\n  \"quantitative</w>\": 40583,\n  \"quantities</w>\": 33917,\n  \"quantity</w>\": 26920,\n  \"quantum</w>\": 15320,\n  \"quar\": 3856,\n  \"quare</w>\": 42549,\n  \"quarry</w>\": 27601,\n  \"quart\": 7851,\n  \"quarter\": 8816,\n  \"quarter</w>\": 6632,\n  \"quarterback</w>\": 16545,\n  \"quarterfinal</w>\": 37992,\n  \"quarterfinals</w>\": 28971,\n  \"quarterly</w>\": 23350,\n  \"quarters</w>\": 10146,\n  \"quartet</w>\": 18056,\n  \"quartz</w>\": 17752,\n  \"quat\": 25715,\n  \"quattro</w>\": 40300,\n  \"quay\": 40276,\n  \"quay</w>\": 17304,\n  \"que\": 1147,\n  \"que</w>\": 2319,\n  \"quebec</w>\": 15373,\n  \"queen\": 6407,\n  \"queen</w>\": 2997,\n  \"queenof\": 44398,\n  \"queens\": 22943,\n  \"queens</w>\": 9330,\n  \"queensland</w>\": 15168,\n  \"queer\": 38874,\n  \"queer</w>\": 18161,\n  \"quel\": 39774,\n  \"quel</w>\": 21879,\n  \"quen\": 23876,\n  \"quen</w>\": 38324,\n  \"quent\": 23808,\n  \"quentin</w>\": 27530,\n  \"quer\": 17378,\n  \"quer</w>\": 26859,\n  \"quered</w>\": 23210,\n  \"queries</w>\": 32958,\n  \"querque</w>\": 30338,\n  \"query</w>\": 27464,\n  \"ques\": 25328,\n  \"ques</w>\": 7715,\n  \"queso</w>\": 40110,\n  \"quest\": 31653,\n  \"quest</w>\": 4846,\n  \"questi\": 2391,\n  \"question\": 18961,\n  \"question</w>\": 4382,\n  \"questionable</w>\": 30733,\n  \"questioned</w>\": 31847,\n  \"questioning</w>\": 24887,\n  \"questions</w>\": 3883,\n  \"quests</w>\": 44611,\n  \"quet</w>\": 8513,\n  \"quets</w>\": 39055,\n  \"quetta</w>\": 38326,\n  \"quette</w>\": 18993,\n  \"queu\": 32705,\n  \"queue</w>\": 18549,\n  \"queues</w>\": 40649,\n  \"queuing</w>\": 44082,\n  \"quez</w>\": 18677,\n  \"quezon</w>\": 41117,\n  \"qui\": 1912,\n  \"qui</w>\": 18046,\n  \"quic\": 26474,\n  \"quiche</w>\": 47723,\n  \"quick\": 5969,\n  \"quick</w>\": 3712,\n  \"quicker</w>\": 29211,\n  \"quickest</w>\": 37734,\n  \"quickly</w>\": 7787,\n  \"quid</w>\": 30732,\n  \"quie\": 43875,\n  \"quien</w>\": 43482,\n  \"quiere</w>\": 42723,\n  \"quiero</w>\": 32567,\n  \"quiet\": 17853,\n  \"quiet</w>\": 7557,\n  \"quietly</w>\": 22208,\n  \"quig\": 44690,\n  \"quil\": 12305,\n  \"quill</w>\": 48951,\n  \"quilt</w>\": 23977,\n  \"quilted</w>\": 46052,\n  \"quin\": 8607,\n  \"quin</w>\": 17167,\n  \"quincy</w>\": 27640,\n  \"quind\": 32339,\n  \"quinn</w>\": 12306,\n  \"quinoa</w>\": 26703,\n  \"quins</w>\": 39701,\n  \"quint\": 26898,\n  \"quinta</w>\": 47446,\n  \"quinte\": 22098,\n  \"quintess\": 37538,\n  \"quintet</w>\": 35125,\n  \"quipment</w>\": 42813,\n  \"quir\": 15943,\n  \"quirky</w>\": 25044,\n  \"quis\": 15064,\n  \"quist</w>\": 25128,\n  \"quit\": 19358,\n  \"quit</w>\": 11140,\n  \"quite</w>\": 4135,\n  \"quito</w>\": 35828,\n  \"quits</w>\": 32505,\n  \"quitting</w>\": 33871,\n  \"quity</w>\": 33133,\n  \"quiz\": 31197,\n  \"quiz</w>\": 8344,\n  \"quizz\": 35041,\n  \"quo\": 3046,\n  \"quo</w>\": 28127,\n  \"quoi</w>\": 45549,\n  \"quot\": 5452,\n  \"quot</w>\": 47587,\n  \"quota</w>\": 42097,\n  \"quotation</w>\": 49195,\n  \"quote\": 15446,\n  \"quote</w>\": 4020,\n  \"quoted</w>\": 27706,\n  \"quoteoftheday</w>\": 19975,\n  \"quotes</w>\": 5808,\n  \"quoting</w>\": 31651,\n  \"qur</w>\": 37782,\n  \"quran</w>\": 19690,\n  \"qureshi</w>\": 46307,\n  \"qvist</w>\": 42322,\n  \"qx</w>\": 45038,\n  \"r\": 81,\n  \"r</w>\": 337,\n  \"ra\": 559,\n  \"ra</w>\": 1735,\n  \"raa</w>\": 44344,\n  \"rab\": 14816,\n  \"rab</w>\": 33224,\n  \"rabb\": 6875,\n  \"rabbi</w>\": 20959,\n  \"rabbit</w>\": 10274,\n  \"rabbits</w>\": 27028,\n  \"rabhu</w>\": 25806,\n  \"rable</w>\": 10182,\n  \"rac\": 1773,\n  \"rac</w>\": 30462,\n  \"raccoon</w>\": 29516,\n  \"race\": 10978,\n  \"race</w>\": 2471,\n  \"racec\": 18814,\n  \"racecourse</w>\": 25036,\n  \"raced</w>\": 36021,\n  \"racer</w>\": 16798,\n  \"racers</w>\": 33603,\n  \"races</w>\": 8605,\n  \"raceway</w>\": 24650,\n  \"rach\": 6876,\n  \"rach</w>\": 33429,\n  \"racha\": 21952,\n  \"racha</w>\": 35022,\n  \"rachael</w>\": 29095,\n  \"rachel\": 13511,\n  \"rachel</w>\": 8029,\n  \"raci\": 33381,\n  \"racial</w>\": 13801,\n  \"racially</w>\": 43577,\n  \"racing\": 23306,\n  \"racing</w>\": 3699,\n  \"racism</w>\": 11276,\n  \"racist</w>\": 9684,\n  \"racists</w>\": 41777,\n  \"rack\": 24600,\n  \"rack</w>\": 12034,\n  \"racket</w>\": 37691,\n  \"racks</w>\": 21191,\n  \"rad\": 4473,\n  \"rad</w>\": 8238,\n  \"rada</w>\": 30437,\n  \"radar</w>\": 9672,\n  \"radcliffe</w>\": 33096,\n  \"rade\": 44494,\n  \"rade</w>\": 17911,\n  \"rader</w>\": 45002,\n  \"radford</w>\": 45800,\n  \"radha</w>\": 43122,\n  \"radi\": 5772,\n  \"radial</w>\": 42028,\n  \"radiance</w>\": 45670,\n  \"radiant</w>\": 25614,\n  \"radiation</w>\": 18210,\n  \"radiator</w>\": 39372,\n  \"radic\": 18082,\n  \"radical</w>\": 13712,\n  \"radicals</w>\": 45903,\n  \"radio\": 7176,\n  \"radio</w>\": 2638,\n  \"radioactive</w>\": 34704,\n  \"radiodisney</w>\": 36483,\n  \"radiohead</w>\": 39472,\n  \"radiology</w>\": 29684,\n  \"radios</w>\": 43669,\n  \"radish</w>\": 37789,\n  \"radius</w>\": 37570,\n  \"rado</w>\": 29784,\n  \"rae\": 21646,\n  \"rae</w>\": 15051,\n  \"rael</w>\": 45390,\n  \"raer</w>\": 44561,\n  \"raf\": 11495,\n  \"raf</w>\": 11490,\n  \"rafa\": 14352,\n  \"rafa</w>\": 24850,\n  \"rafael\": 38221,\n  \"rafael</w>\": 19216,\n  \"rafaelnadal</w>\": 49219,\n  \"raff\": 34900,\n  \"raffic</w>\": 32928,\n  \"raffle</w>\": 13752,\n  \"raffles</w>\": 43489,\n  \"rafi\": 35304,\n  \"raft</w>\": 9233,\n  \"rafting</w>\": 36309,\n  \"rag\": 13958,\n  \"rag</w>\": 20687,\n  \"rage</w>\": 8593,\n  \"rages</w>\": 34253,\n  \"ragh\": 35642,\n  \"ragha\": 40972,\n  \"raging</w>\": 25015,\n  \"ragn\": 24125,\n  \"ragnar\": 34385,\n  \"ragnarok</w>\": 41856,\n  \"ragon</w>\": 34768,\n  \"rags</w>\": 47838,\n  \"rah\": 12277,\n  \"rah</w>\": 8766,\n  \"raheem</w>\": 43317,\n  \"rahim</w>\": 24152,\n  \"rahman</w>\": 19680,\n  \"rahu\": 13129,\n  \"rahul\": 37239,\n  \"rahul</w>\": 17440,\n  \"rahulg\": 27510,\n  \"rahulgandhi</w>\": 28293,\n  \"rai\": 9165,\n  \"rai</w>\": 9638,\n  \"raid</w>\": 6877,\n  \"raided</w>\": 43417,\n  \"raider\": 27368,\n  \"raider</w>\": 21455,\n  \"raidernation</w>\": 47901,\n  \"raiders</w>\": 11817,\n  \"raids</w>\": 26655,\n  \"rail\": 4573,\n  \"rail</w>\": 6879,\n  \"raila</w>\": 47273,\n  \"railminindia</w>\": 35557,\n  \"railroad</w>\": 17080,\n  \"rails</w>\": 23427,\n  \"railway\": 27614,\n  \"railway</w>\": 7856,\n  \"railwayana</w>\": 46750,\n  \"railways</w>\": 20765,\n  \"raim\": 45785,\n  \"rain\": 3128,\n  \"rain</w>\": 2443,\n  \"raina</w>\": 30564,\n  \"rainbow\": 24562,\n  \"rainbow</w>\": 6286,\n  \"rainbows</w>\": 30483,\n  \"raine\": 49038,\n  \"raine</w>\": 6871,\n  \"rained</w>\": 32310,\n  \"rainf\": 15024,\n  \"rainfall</w>\": 15350,\n  \"rainforest</w>\": 22823,\n  \"rainier</w>\": 37850,\n  \"raining</w>\": 13964,\n  \"rains</w>\": 14272,\n  \"rainy</w>\": 10222,\n  \"rais\": 14729,\n  \"raise\": 24249,\n  \"raise</w>\": 5078,\n  \"raised</w>\": 6027,\n  \"raiser</w>\": 33555,\n  \"raises</w>\": 13297,\n  \"raisethe\": 47109,\n  \"raisin</w>\": 36864,\n  \"raising</w>\": 6883,\n  \"raj\": 5958,\n  \"raj</w>\": 10813,\n  \"raja\": 46069,\n  \"raja</w>\": 19150,\n  \"rajan</w>\": 46595,\n  \"rajas\": 16185,\n  \"rajasthan</w>\": 18017,\n  \"raje\": 21899,\n  \"rajesh</w>\": 43602,\n  \"raji\": 27569,\n  \"rajini\": 29600,\n  \"rajini</w>\": 40622,\n  \"rajinikanth</w>\": 32922,\n  \"rajiv</w>\": 40197,\n  \"rajkumar</w>\": 49304,\n  \"rajput</w>\": 47572,\n  \"raju</w>\": 47029,\n  \"rak\": 13523,\n  \"rak</w>\": 26287,\n  \"rake\": 26825,\n  \"rake</w>\": 32712,\n  \"rakesh</w>\": 41083,\n  \"ral\": 8062,\n  \"ral</w>\": 1406,\n  \"rale\": 14192,\n  \"raleigh</w>\": 18207,\n  \"rall\": 23249,\n  \"rallies</w>\": 25230,\n  \"rally\": 18882,\n  \"rally</w>\": 5041,\n  \"rallying</w>\": 36836,\n  \"ralph\": 25290,\n  \"ralph</w>\": 12234,\n  \"ram\": 1976,\n  \"ram</w>\": 2007,\n  \"rama</w>\": 22112,\n  \"ramad\": 12736,\n  \"ramadan</w>\": 15547,\n  \"ramadhan</w>\": 47415,\n  \"raman</w>\": 39816,\n  \"ramapho\": 43963,\n  \"ramaphosa</w>\": 44993,\n  \"ramatta</w>\": 49112,\n  \"rambo</w>\": 41855,\n  \"ramcharan</w>\": 45275,\n  \"rame</w>\": 47745,\n  \"ramen</w>\": 18892,\n  \"ramesh\": 48640,\n  \"ramesh</w>\": 40186,\n  \"rami</w>\": 43016,\n  \"ramirez</w>\": 23877,\n  \"ramon</w>\": 27958,\n  \"ramone</w>\": 47201,\n  \"ramos</w>\": 21046,\n  \"ramp</w>\": 14271,\n  \"rampage</w>\": 32077,\n  \"rampant</w>\": 41985,\n  \"ramps</w>\": 35257,\n  \"rams</w>\": 10292,\n  \"ramsay</w>\": 26259,\n  \"ramsey</w>\": 19215,\n  \"ran\": 1433,\n  \"ran</w>\": 4031,\n  \"rana</w>\": 22143,\n  \"ranbir</w>\": 40881,\n  \"rance</w>\": 29034,\n  \"ranch\": 43955,\n  \"ranch</w>\": 10659,\n  \"rancho</w>\": 26258,\n  \"rand\": 5628,\n  \"rand</w>\": 18718,\n  \"randall</w>\": 23639,\n  \"rande</w>\": 21469,\n  \"randolph</w>\": 29899,\n  \"random\": 11396,\n  \"random</w>\": 6160,\n  \"randomly</w>\": 17272,\n  \"rands</w>\": 39153,\n  \"randy\": 29479,\n  \"randy</w>\": 13279,\n  \"rane</w>\": 28852,\n  \"rang\": 4043,\n  \"rang</w>\": 24377,\n  \"range\": 13627,\n  \"range</w>\": 3818,\n  \"ranger\": 31472,\n  \"ranger</w>\": 13593,\n  \"rangers</w>\": 7664,\n  \"ranges</w>\": 25685,\n  \"ranging</w>\": 25946,\n  \"rani\": 29264,\n  \"rani</w>\": 22631,\n  \"rank</w>\": 11501,\n  \"ranked</w>\": 8307,\n  \"rankin</w>\": 37539,\n  \"ranking</w>\": 12347,\n  \"rankings</w>\": 12596,\n  \"ranks</w>\": 14469,\n  \"rano</w>\": 18608,\n  \"rans</w>\": 46259,\n  \"ransom\": 28523,\n  \"ransom</w>\": 34646,\n  \"ransomware</w>\": 33815,\n  \"rant\": 46467,\n  \"rant</w>\": 9819,\n  \"rants</w>\": 34014,\n  \"ranveer\": 32402,\n  \"ranveer</w>\": 41482,\n  \"ranveerofficial</w>\": 42116,\n  \"rao</w>\": 16913,\n  \"rap\": 7773,\n  \"rap</w>\": 7348,\n  \"rape\": 46099,\n  \"rape</w>\": 10070,\n  \"raped</w>\": 23700,\n  \"rapha\": 22754,\n  \"raphael</w>\": 30091,\n  \"rapi\": 8610,\n  \"rapid\": 47697,\n  \"rapid</w>\": 12205,\n  \"rapidly</w>\": 16710,\n  \"rapids</w>\": 18848,\n  \"raping</w>\": 44926,\n  \"rapist</w>\": 33360,\n  \"rapp\": 19283,\n  \"rapper</w>\": 11860,\n  \"rappers</w>\": 30315,\n  \"rapping</w>\": 42864,\n  \"raps</w>\": 37887,\n  \"raptor</w>\": 26762,\n  \"raptors</w>\": 17035,\n  \"raq\": 39787,\n  \"raq</w>\": 43312,\n  \"raqqa</w>\": 47074,\n  \"raquel</w>\": 44338,\n  \"rar\": 26819,\n  \"rar</w>\": 24605,\n  \"rard</w>\": 21012,\n  \"rare\": 18992,\n  \"rare</w>\": 3865,\n  \"rarely</w>\": 17315,\n  \"rarest</w>\": 43237,\n  \"rarity</w>\": 45862,\n  \"ras\": 23492,\n  \"ras</w>\": 8224,\n  \"rasc\": 30085,\n  \"rascal</w>\": 43481,\n  \"rash\": 14917,\n  \"rash</w>\": 30608,\n  \"rashad</w>\": 46527,\n  \"rasheed</w>\": 41638,\n  \"rashi\": 19426,\n  \"rashid</w>\": 26757,\n  \"rasp\": 10487,\n  \"raspberries</w>\": 37742,\n  \"raspberry\": 40162,\n  \"raspberry</w>\": 13615,\n  \"raspberrypi</w>\": 43934,\n  \"rass</w>\": 45654,\n  \"rasta</w>\": 47002,\n  \"rat\": 3806,\n  \"rat</w>\": 8985,\n  \"rata</w>\": 28568,\n  \"ratchet</w>\": 25078,\n  \"rate</w>\": 5068,\n  \"rated</w>\": 8183,\n  \"rates</w>\": 6864,\n  \"rath\": 18268,\n  \"rath</w>\": 39772,\n  \"rather</w>\": 5252,\n  \"rati\": 11486,\n  \"rating</w>\": 10567,\n  \"ratings</w>\": 14176,\n  \"ratio</w>\": 15893,\n  \"ration\": 27002,\n  \"ration</w>\": 35662,\n  \"rational</w>\": 33086,\n  \"ratna</w>\": 49078,\n  \"ratri</w>\": 32288,\n  \"rats</w>\": 19043,\n  \"ratt\": 20737,\n  \"ratt</w>\": 34785,\n  \"rattle\": 40824,\n  \"rattle</w>\": 41839,\n  \"rau\": 27744,\n  \"raul</w>\": 30218,\n  \"raun\": 41169,\n  \"rav\": 14367,\n  \"rav</w>\": 23606,\n  \"rave\": 38784,\n  \"rave</w>\": 17601,\n  \"ravel</w>\": 27927,\n  \"raven\": 10269,\n  \"raven</w>\": 16803,\n  \"ravens</w>\": 17946,\n  \"ravi\": 22947,\n  \"ravi</w>\": 19538,\n  \"ravin\": 39099,\n  \"raving</w>\": 45807,\n  \"raviol\": 41104,\n  \"ravioli</w>\": 43460,\n  \"raw\": 10166,\n  \"raw</w>\": 6323,\n  \"rawlings</w>\": 40662,\n  \"rax</w>\": 38520,\n  \"ray\": 5312,\n  \"ray</w>\": 3077,\n  \"raya</w>\": 29991,\n  \"raymond</w>\": 16683,\n  \"rayn\": 47852,\n  \"rayon</w>\": 47900,\n  \"rays</w>\": 11064,\n  \"raz\": 9700,\n  \"raz</w>\": 19087,\n  \"raza</w>\": 37724,\n  \"razer</w>\": 33832,\n  \"razor\": 24934,\n  \"razor</w>\": 21300,\n  \"razz\": 43769,\n  \"rb\": 12740,\n  \"rb</w>\": 7477,\n  \"rbc</w>\": 37500,\n  \"rbi</w>\": 15687,\n  \"rbs</w>\": 29102,\n  \"rc\": 7575,\n  \"rc</w>\": 7457,\n  \"rca</w>\": 33942,\n  \"rcb</w>\": 45240,\n  \"rcmp</w>\": 31489,\n  \"rcn</w>\": 49370,\n  \"rctid</w>\": 49223,\n  \"rd\": 13501,\n  \"rd</w>\": 1973,\n  \"rda</w>\": 45755,\n  \"rdr</w>\": 44364,\n  \"rds</w>\": 32378,\n  \"re\": 515,\n  \"re</w>\": 810,\n  \"rea</w>\": 11521,\n  \"reach\": 4483,\n  \"reach</w>\": 4279,\n  \"reached</w>\": 6878,\n  \"reaches</w>\": 14462,\n  \"reaching</w>\": 11358,\n  \"react\": 36566,\n  \"react</w>\": 15065,\n  \"reacted</w>\": 42515,\n  \"reacting</w>\": 40595,\n  \"reaction</w>\": 7189,\n  \"reactions</w>\": 18438,\n  \"reactive</w>\": 42072,\n  \"reactjs</w>\": 46173,\n  \"reactor</w>\": 32037,\n  \"reacts</w>\": 23115,\n  \"read\": 933,\n  \"read</w>\": 1199,\n  \"reader</w>\": 9884,\n  \"readers</w>\": 10335,\n  \"readiness</w>\": 28131,\n  \"reading\": 17556,\n  \"reading</w>\": 2337,\n  \"readingfc</w>\": 47428,\n  \"readings</w>\": 23361,\n  \"reads</w>\": 6597,\n  \"ready\": 17351,\n  \"ready</w>\": 1112,\n  \"reagan</w>\": 17767,\n  \"real\": 2017,\n  \"real</w>\": 1532,\n  \"realdonaldtrump</w>\": 7025,\n  \"reale\": 5930,\n  \"realest</w>\": 45855,\n  \"realestate\": 32937,\n  \"realestate</w>\": 6569,\n  \"reali\": 4185,\n  \"realis</w>\": 38114,\n  \"realise</w>\": 14773,\n  \"realised</w>\": 17945,\n  \"realising</w>\": 39537,\n  \"realism</w>\": 20024,\n  \"realist</w>\": 30248,\n  \"realistic</w>\": 16157,\n  \"realities</w>\": 32443,\n  \"reality\": 46802,\n  \"reality</w>\": 5004,\n  \"realization</w>\": 40402,\n  \"realize</w>\": 7538,\n  \"realized</w>\": 10489,\n  \"realizes</w>\": 42918,\n  \"realizing</w>\": 23284,\n  \"reall\": 39686,\n  \"really\": 43249,\n  \"really</w>\": 1414,\n  \"realm</w>\": 23083,\n  \"realmadrid</w>\": 27866,\n  \"realms</w>\": 43033,\n  \"realness</w>\": 46761,\n  \"realtime\": 44002,\n  \"realtime</w>\": 38203,\n  \"realtor</w>\": 18038,\n  \"realtors</w>\": 31759,\n  \"realty</w>\": 20471,\n  \"ream\": 37242,\n  \"ream</w>\": 15219,\n  \"rean</w>\": 48477,\n  \"reap</w>\": 31334,\n  \"reaper</w>\": 29922,\n  \"rear\": 39652,\n  \"rear</w>\": 10223,\n  \"reas\": 9121,\n  \"reason\": 12882,\n  \"reason</w>\": 3893,\n  \"reasonable</w>\": 18558,\n  \"reasonably</w>\": 38589,\n  \"reasoning</w>\": 30341,\n  \"reasons</w>\": 5686,\n  \"reau</w>\": 32398,\n  \"reb\": 12370,\n  \"reb</w>\": 18796,\n  \"reba</w>\": 48543,\n  \"rebate</w>\": 43817,\n  \"rebe\": 25227,\n  \"rebec\": 10774,\n  \"rebecca</w>\": 12892,\n  \"rebel\": 8185,\n  \"rebel</w>\": 12248,\n  \"rebellion</w>\": 22170,\n  \"rebels</w>\": 13623,\n  \"rebirth</w>\": 33303,\n  \"reboot</w>\": 22385,\n  \"reborn</w>\": 30229,\n  \"reboun\": 43381,\n  \"rebound</w>\": 31280,\n  \"rebounds</w>\": 19190,\n  \"rebs</w>\": 28164,\n  \"rebu\": 43162,\n  \"rebuild</w>\": 20022,\n  \"rebuilding</w>\": 30880,\n  \"rebuilt</w>\": 33137,\n  \"rec\": 1020,\n  \"rec</w>\": 11243,\n  \"recall</w>\": 15151,\n  \"recalled</w>\": 32142,\n  \"recalling</w>\": 47855,\n  \"recalls</w>\": 24740,\n  \"recap\": 29816,\n  \"recap</w>\": 8337,\n  \"recaps</w>\": 47997,\n  \"recard</w>\": 35536,\n  \"rece\": 1890,\n  \"recei\": 2148,\n  \"receip\": 38503,\n  \"receipt</w>\": 30479,\n  \"receipts</w>\": 41181,\n  \"receive</w>\": 4800,\n  \"received</w>\": 4178,\n  \"receiver</w>\": 17659,\n  \"receivers</w>\": 45294,\n  \"receives</w>\": 10027,\n  \"receiving</w>\": 7252,\n  \"recent</w>\": 3969,\n  \"recently</w>\": 4482,\n  \"recep\": 17450,\n  \"reception</w>\": 8364,\n  \"receptions</w>\": 46881,\n  \"receptor</w>\": 41835,\n  \"recess</w>\": 38182,\n  \"recession</w>\": 27176,\n  \"recharge</w>\": 29396,\n  \"rechargeable</w>\": 37516,\n  \"reci\": 2037,\n  \"recipe\": 28923,\n  \"recipe</w>\": 4614,\n  \"recipeoftheday</w>\": 38727,\n  \"recipes</w>\": 9243,\n  \"recipi\": 10136,\n  \"recipient</w>\": 13703,\n  \"recipients</w>\": 18940,\n  \"recipro\": 41789,\n  \"recital</w>\": 23457,\n  \"recite</w>\": 48824,\n  \"reck\": 11715,\n  \"reckless</w>\": 26284,\n  \"reckon</w>\": 23854,\n  \"recl\": 42277,\n  \"reclaim</w>\": 35969,\n  \"reclaimed</w>\": 32648,\n  \"reco\": 2535,\n  \"reco</w>\": 46038,\n  \"recogn\": 6343,\n  \"recogni\": 5329,\n  \"recognise</w>\": 19824,\n  \"recognised</w>\": 20986,\n  \"recognising</w>\": 48423,\n  \"recognition</w>\": 9415,\n  \"recognizable</w>\": 47240,\n  \"recognize</w>\": 10905,\n  \"recognized</w>\": 9929,\n  \"recognizes</w>\": 26909,\n  \"recognizing</w>\": 19666,\n  \"recomm\": 4540,\n  \"recommend\": 11628,\n  \"recommend</w>\": 8942,\n  \"recommendation</w>\": 20118,\n  \"recommendations</w>\": 16516,\n  \"recommended</w>\": 11100,\n  \"recommending</w>\": 44301,\n  \"recommends</w>\": 22940,\n  \"recon\": 15371,\n  \"recon</w>\": 28996,\n  \"reconciliation</w>\": 26451,\n  \"reconstruction</w>\": 24955,\n  \"recor\": 1723,\n  \"record\": 21328,\n  \"record</w>\": 2717,\n  \"recorded</w>\": 9392,\n  \"recorder</w>\": 26747,\n  \"recording\": 48237,\n  \"recording</w>\": 6942,\n  \"recordings</w>\": 19715,\n  \"records</w>\": 4529,\n  \"recover</w>\": 16785,\n  \"recovered</w>\": 16444,\n  \"recovering</w>\": 19005,\n  \"recovers</w>\": 47935,\n  \"recovery</w>\": 6591,\n  \"recre\": 22148,\n  \"recreate</w>\": 29775,\n  \"recreated</w>\": 40888,\n  \"recreating</w>\": 48224,\n  \"recreation</w>\": 17331,\n  \"recreational</w>\": 24329,\n  \"recru\": 4745,\n  \"recruit\": 9011,\n  \"recruit</w>\": 15585,\n  \"recruited</w>\": 36518,\n  \"recruiter</w>\": 43120,\n  \"recruiters</w>\": 46542,\n  \"recruiting</w>\": 10533,\n  \"recruitment</w>\": 10541,\n  \"recruits</w>\": 22647,\n  \"recs</w>\": 33069,\n  \"rectan\": 43041,\n  \"rectangular</w>\": 43321,\n  \"rector</w>\": 41585,\n  \"recu\": 26798,\n  \"recur\": 19983,\n  \"recurring</w>\": 35912,\n  \"recy\": 6790,\n  \"recycla\": 40659,\n  \"recyclable</w>\": 48907,\n  \"recycle</w>\": 19366,\n  \"recycled</w>\": 16829,\n  \"recycling</w>\": 12566,\n  \"red\": 1893,\n  \"red</w>\": 736,\n  \"redbubble</w>\": 46137,\n  \"redbull\": 29483,\n  \"redbull</w>\": 29219,\n  \"redcarpet</w>\": 32259,\n  \"redcross</w>\": 30659,\n  \"redd\": 22149,\n  \"redd</w>\": 40618,\n  \"redding</w>\": 41061,\n  \"reddish</w>\": 43383,\n  \"reddit</w>\": 15226,\n  \"reddy</w>\": 23028,\n  \"rede\": 10913,\n  \"redeem</w>\": 37449,\n  \"redefining</w>\": 46352,\n  \"redemption</w>\": 20233,\n  \"redesign</w>\": 24188,\n  \"redesigned</w>\": 33111,\n  \"redevelopment</w>\": 30322,\n  \"redhead</w>\": 36267,\n  \"redi\": 7976,\n  \"redman</w>\": 44753,\n  \"redmond</w>\": 39627,\n  \"rednation\": 28180,\n  \"rednationrising</w>\": 28262,\n  \"redneck</w>\": 39105,\n  \"redness</w>\": 22626,\n  \"redo</w>\": 42524,\n  \"redon\": 48506,\n  \"redro\": 37722,\n  \"reds</w>\": 11221,\n  \"redskins</w>\": 19023,\n  \"redsox</w>\": 19144,\n  \"reduc\": 5015,\n  \"reduce</w>\": 6604,\n  \"reduced</w>\": 10821,\n  \"reduces</w>\": 20539,\n  \"reducing</w>\": 13836,\n  \"reduction</w>\": 12219,\n  \"reductions</w>\": 48263,\n  \"redux</w>\": 43014,\n  \"redvelvet</w>\": 41845,\n  \"redwings</w>\": 31058,\n  \"redwood</w>\": 31748,\n  \"ree\": 9282,\n  \"ree</w>\": 5813,\n  \"reebok</w>\": 26734,\n  \"reece</w>\": 30457,\n  \"reed\": 26209,\n  \"reed</w>\": 10435,\n  \"reedus</w>\": 32865,\n  \"reef\": 46557,\n  \"reef</w>\": 15624,\n  \"reefs</w>\": 34459,\n  \"reel\": 34467,\n  \"reel</w>\": 17166,\n  \"reels</w>\": 48127,\n  \"reem</w>\": 48891,\n  \"reen\": 21638,\n  \"reen</w>\": 23679,\n  \"rees</w>\": 18314,\n  \"reese</w>\": 20929,\n  \"reeves</w>\": 23060,\n  \"ref\": 4067,\n  \"ref</w>\": 9591,\n  \"refe\": 5624,\n  \"refer\": 18425,\n  \"refer</w>\": 22325,\n  \"referee</w>\": 20398,\n  \"referees</w>\": 45583,\n  \"referen\": 13535,\n  \"reference</w>\": 10214,\n  \"references</w>\": 24009,\n  \"referendum</w>\": 16732,\n  \"referr\": 47784,\n  \"referral</w>\": 30219,\n  \"referred</w>\": 22969,\n  \"referring</w>\": 29797,\n  \"refers</w>\": 30069,\n  \"refill</w>\": 37859,\n  \"refin\": 13455,\n  \"refined</w>\": 26098,\n  \"refinery</w>\": 31393,\n  \"refining</w>\": 48406,\n  \"reflec\": 4608,\n  \"reflect</w>\": 13373,\n  \"reflected</w>\": 28732,\n  \"reflecting</w>\": 19700,\n  \"reflection</w>\": 11884,\n  \"reflections</w>\": 16647,\n  \"reflective</w>\": 27008,\n  \"reflects</w>\": 15821,\n  \"reflex\": 45756,\n  \"reflex</w>\": 36050,\n  \"reform\": 45678,\n  \"reform</w>\": 8875,\n  \"reformation</w>\": 45119,\n  \"reformed</w>\": 40880,\n  \"reforms</w>\": 19274,\n  \"refr\": 34850,\n  \"refre\": 11995,\n  \"refresh\": 17836,\n  \"refresh</w>\": 23288,\n  \"refreshed</w>\": 35925,\n  \"refresher</w>\": 41481,\n  \"refreshing</w>\": 14159,\n  \"refreshments</w>\": 31127,\n  \"refriger\": 21076,\n  \"refrigerator</w>\": 36662,\n  \"refs</w>\": 35595,\n  \"refu\": 3545,\n  \"refuge\": 5638,\n  \"refuge</w>\": 17432,\n  \"refugee</w>\": 11556,\n  \"refugees\": 42687,\n  \"refugees</w>\": 8316,\n  \"refund</w>\": 28899,\n  \"refur\": 15519,\n  \"refurbi\": 18259,\n  \"refurbished</w>\": 26190,\n  \"refurbishment</w>\": 35803,\n  \"refusal</w>\": 46547,\n  \"refuse</w>\": 16412,\n  \"refused</w>\": 17190,\n  \"refuses</w>\": 20085,\n  \"refusing</w>\": 26704,\n  \"reg\": 5472,\n  \"reg</w>\": 12353,\n  \"regain</w>\": 37510,\n  \"regal\": 31512,\n  \"regal</w>\": 25028,\n  \"regan</w>\": 34062,\n  \"regar\": 5881,\n  \"regard</w>\": 21801,\n  \"regarded</w>\": 32017,\n  \"regarding</w>\": 8493,\n  \"regardless</w>\": 17220,\n  \"regards</w>\": 23079,\n  \"regatta</w>\": 26316,\n  \"regen\": 46545,\n  \"regency</w>\": 29341,\n  \"regeneration</w>\": 29257,\n  \"regent</w>\": 30455,\n  \"regents</w>\": 46710,\n  \"regg\": 12757,\n  \"reggae\": 37821,\n  \"reggae</w>\": 15214,\n  \"reggie</w>\": 21872,\n  \"regi\": 1608,\n  \"regime</w>\": 11378,\n  \"regiment</w>\": 18603,\n  \"regin\": 23287,\n  \"regina</w>\": 16841,\n  \"region\": 16542,\n  \"region</w>\": 4341,\n  \"regional</w>\": 5552,\n  \"regionals</w>\": 26043,\n  \"regions</w>\": 14530,\n  \"regis</w>\": 28094,\n  \"register</w>\": 3967,\n  \"registered</w>\": 10254,\n  \"registering</w>\": 33510,\n  \"registr\": 29193,\n  \"registration</w>\": 7302,\n  \"registrations</w>\": 38423,\n  \"registry</w>\": 30020,\n  \"rego</w>\": 47351,\n  \"regram</w>\": 30329,\n  \"regrann</w>\": 48802,\n  \"regre\": 8627,\n  \"regression</w>\": 43733,\n  \"regret</w>\": 14374,\n  \"regrets</w>\": 23231,\n  \"regu\": 3411,\n  \"regui</w>\": 46722,\n  \"regul\": 11847,\n  \"regular\": 14882,\n  \"regular</w>\": 6307,\n  \"regularly</w>\": 17263,\n  \"regulat\": 14575,\n  \"regulate</w>\": 33494,\n  \"regulated</w>\": 31384,\n  \"regulating</w>\": 48156,\n  \"regulation</w>\": 14267,\n  \"regulations</w>\": 16654,\n  \"regulator</w>\": 30364,\n  \"regulators</w>\": 35837,\n  \"regulatory</w>\": 17717,\n  \"reh\": 21492,\n  \"reha\": 10193,\n  \"rehab</w>\": 16973,\n  \"rehabil\": 17930,\n  \"rehabilitation</w>\": 21042,\n  \"rehear\": 7273,\n  \"rehearsal</w>\": 11482,\n  \"rehearsals</w>\": 17977,\n  \"rehearsing</w>\": 23125,\n  \"rehman</w>\": 39206,\n  \"rei\": 15343,\n  \"rei</w>\": 26033,\n  \"reic\": 41230,\n  \"reich\": 48589,\n  \"reich</w>\": 28929,\n  \"reid\": 45125,\n  \"reid</w>\": 11744,\n  \"reig\": 13092,\n  \"reign\": 41419,\n  \"reign</w>\": 14827,\n  \"reigning</w>\": 28409,\n  \"reigns</w>\": 21217,\n  \"reiki</w>\": 46960,\n  \"reilly</w>\": 28120,\n  \"reim\": 35421,\n  \"reimagined</w>\": 46799,\n  \"reimbur\": 39857,\n  \"rein\": 9240,\n  \"rein</w>\": 45009,\n  \"reina</w>\": 43847,\n  \"reinde\": 23810,\n  \"reindeer</w>\": 25072,\n  \"reinfor\": 48161,\n  \"reinforced</w>\": 41909,\n  \"reinst\": 33969,\n  \"reinvent</w>\": 38171,\n  \"reissue</w>\": 34042,\n  \"reiter\": 35394,\n  \"rejec\": 9958,\n  \"reject</w>\": 22435,\n  \"rejected</w>\": 17505,\n  \"rejection</w>\": 32264,\n  \"rejects</w>\": 23155,\n  \"rejo\": 20150,\n  \"rejoice</w>\": 24712,\n  \"rejuven\": 26332,\n  \"rek\": 47542,\n  \"rek</w>\": 19201,\n  \"rel\": 1825,\n  \"rel</w>\": 5233,\n  \"rela\": 4362,\n  \"reland</w>\": 15220,\n  \"relat\": 27192,\n  \"relatable</w>\": 31010,\n  \"relate</w>\": 17520,\n  \"related</w>\": 5880,\n  \"relates</w>\": 36064,\n  \"relating</w>\": 27373,\n  \"relation\": 4561,\n  \"relation</w>\": 16207,\n  \"relations</w>\": 10100,\n  \"relationship\": 47239,\n  \"relationship</w>\": 5837,\n  \"relationships</w>\": 10610,\n  \"relative</w>\": 17265,\n  \"relatively</w>\": 18351,\n  \"relatives</w>\": 21981,\n  \"relax\": 6777,\n  \"relax</w>\": 9035,\n  \"relaxation</w>\": 22194,\n  \"relaxed</w>\": 18999,\n  \"relaxing</w>\": 10256,\n  \"relay</w>\": 12403,\n  \"relays</w>\": 28404,\n  \"rele\": 1602,\n  \"release\": 29100,\n  \"release</w>\": 2706,\n  \"released</w>\": 3410,\n  \"releases</w>\": 7393,\n  \"releasethe\": 44008,\n  \"releasing</w>\": 10321,\n  \"releg\": 23378,\n  \"relegated</w>\": 45884,\n  \"relegation</w>\": 35040,\n  \"relent\": 22213,\n  \"relentless</w>\": 27207,\n  \"relessly</w>\": 33927,\n  \"relev\": 9349,\n  \"relevance</w>\": 31400,\n  \"relevant</w>\": 10568,\n  \"reli\": 2674,\n  \"reliability</w>\": 27220,\n  \"reliable</w>\": 13714,\n  \"reliance</w>\": 27727,\n  \"relic</w>\": 27802,\n  \"relics</w>\": 43208,\n  \"relief</w>\": 7518,\n  \"relies</w>\": 41579,\n  \"relieve</w>\": 28623,\n  \"relieved</w>\": 36597,\n  \"religi\": 4940,\n  \"religion</w>\": 8803,\n  \"religions</w>\": 31189,\n  \"religious</w>\": 8289,\n  \"relish</w>\": 35550,\n  \"relive</w>\": 23939,\n  \"reliving</w>\": 47558,\n  \"rell\": 28802,\n  \"rell</w>\": 7127,\n  \"rella</w>\": 9952,\n  \"relle</w>\": 31390,\n  \"reloaded</w>\": 38908,\n  \"relocated</w>\": 46791,\n  \"relocation</w>\": 39198,\n  \"rels</w>\": 23320,\n  \"relu\": 32058,\n  \"reluct\": 32549,\n  \"reluctant</w>\": 45552,\n  \"rely</w>\": 4158,\n  \"relying</w>\": 42168,\n  \"rem\": 15098,\n  \"rem</w>\": 21637,\n  \"rema\": 4569,\n  \"remain\": 29144,\n  \"remain</w>\": 6415,\n  \"remainder</w>\": 41672,\n  \"remained</w>\": 23714,\n  \"remaining</w>\": 11392,\n  \"remains</w>\": 6807,\n  \"remake</w>\": 16234,\n  \"remark\": 11136,\n  \"remarkable</w>\": 12404,\n  \"remarkably</w>\": 39087,\n  \"remarks</w>\": 15001,\n  \"remastered</w>\": 24932,\n  \"rematch</w>\": 26473,\n  \"rembrandt</w>\": 45972,\n  \"reme\": 20071,\n  \"remedi\": 18442,\n  \"remedies</w>\": 25581,\n  \"remedy</w>\": 25794,\n  \"remem\": 7966,\n  \"rememb\": 7062,\n  \"remember\": 22045,\n  \"remember</w>\": 2195,\n  \"remembered</w>\": 11763,\n  \"remembering</w>\": 8135,\n  \"remembers</w>\": 12551,\n  \"remembrance\": 40321,\n  \"remembrance</w>\": 15860,\n  \"remembranceday</w>\": 48333,\n  \"rement</w>\": 7173,\n  \"rements</w>\": 12667,\n  \"remi</w>\": 41693,\n  \"remin\": 3216,\n  \"remind</w>\": 9868,\n  \"reminded</w>\": 12309,\n  \"reminder</w>\": 5565,\n  \"reminders</w>\": 34121,\n  \"reminding</w>\": 19976,\n  \"reminds</w>\": 8303,\n  \"remington</w>\": 43527,\n  \"reminis\": 17723,\n  \"reminiscent</w>\": 41704,\n  \"reminiscing</w>\": 32552,\n  \"remix</w>\": 8519,\n  \"remixes</w>\": 31011,\n  \"remn\": 29127,\n  \"remnants</w>\": 39032,\n  \"remo\": 4064,\n  \"remo</w>\": 33259,\n  \"remodel\": 34159,\n  \"remodel</w>\": 37495,\n  \"remodeling</w>\": 41432,\n  \"remote\": 47163,\n  \"remote</w>\": 9687,\n  \"remotely</w>\": 32375,\n  \"removable</w>\": 44095,\n  \"removal</w>\": 13679,\n  \"remove</w>\": 9709,\n  \"removed</w>\": 10289,\n  \"remover</w>\": 44267,\n  \"removes</w>\": 29018,\n  \"removing</w>\": 18504,\n  \"remy</w>\": 30434,\n  \"ren\": 737,\n  \"ren</w>\": 2596,\n  \"rena</w>\": 12591,\n  \"renais\": 15409,\n  \"renaissance</w>\": 16007,\n  \"renal</w>\": 36096,\n  \"renamed</w>\": 31535,\n  \"renault</w>\": 17600,\n  \"rence\": 19245,\n  \"rence</w>\": 1553,\n  \"rences</w>\": 8545,\n  \"rend\": 33932,\n  \"rend</w>\": 22851,\n  \"render\": 39752,\n  \"render</w>\": 13024,\n  \"rendered</w>\": 23652,\n  \"rendering</w>\": 21339,\n  \"renders</w>\": 39419,\n  \"rendez\": 43293,\n  \"rendezvous</w>\": 45644,\n  \"rendition</w>\": 28891,\n  \"rendon</w>\": 46272,\n  \"rendous</w>\": 49403,\n  \"rends</w>\": 38842,\n  \"rene\": 15438,\n  \"rene</w>\": 12597,\n  \"renee</w>\": 23480,\n  \"reneg\": 29909,\n  \"renegade</w>\": 41229,\n  \"renergy</w>\": 37151,\n  \"renew\": 6645,\n  \"renew</w>\": 22015,\n  \"renewable\": 31269,\n  \"renewable</w>\": 15941,\n  \"renewableenergy</w>\": 33357,\n  \"renewables</w>\": 21619,\n  \"renewal</w>\": 21270,\n  \"renewed</w>\": 20524,\n  \"renfre\": 45043,\n  \"reng</w>\": 36795,\n  \"reno\": 11520,\n  \"reno</w>\": 12831,\n  \"renov\": 9984,\n  \"renovated</w>\": 23839,\n  \"renovation</w>\": 17121,\n  \"renovations</w>\": 31311,\n  \"renowned</w>\": 14727,\n  \"rens</w>\": 18183,\n  \"renshaw</w>\": 44445,\n  \"rent\": 17377,\n  \"rent</w>\": 1609,\n  \"rental</w>\": 12193,\n  \"rentals</w>\": 24105,\n  \"rented</w>\": 35932,\n  \"rential</w>\": 31692,\n  \"renting</w>\": 37662,\n  \"rently</w>\": 2615,\n  \"rents</w>\": 31109,\n  \"reo\": 15963,\n  \"reo</w>\": 26854,\n  \"reon</w>\": 15761,\n  \"reopen</w>\": 26883,\n  \"reopened</w>\": 32868,\n  \"reopening</w>\": 36663,\n  \"reopens</w>\": 40644,\n  \"rep\": 4229,\n  \"rep</w>\": 6487,\n  \"repair</w>\": 8419,\n  \"repaired</w>\": 32953,\n  \"repairing</w>\": 38534,\n  \"repairs</w>\": 16297,\n  \"repar\": 34065,\n  \"repe\": 5785,\n  \"repeal\": 42622,\n  \"repeal</w>\": 23938,\n  \"repeat</w>\": 10192,\n  \"repeated</w>\": 27904,\n  \"repeatedly</w>\": 26630,\n  \"repeating</w>\": 33834,\n  \"repeats</w>\": 39158,\n  \"repell\": 46235,\n  \"repent\": 47261,\n  \"reper\": 29085,\n  \"repet\": 38533,\n  \"repl\": 13047,\n  \"replac\": 6069,\n  \"replace</w>\": 9466,\n  \"replaceable</w>\": 47762,\n  \"replaced</w>\": 13200,\n  \"replacement</w>\": 10835,\n  \"replaces</w>\": 27781,\n  \"replacing</w>\": 18647,\n  \"replay</w>\": 16875,\n  \"repleni\": 44839,\n  \"replic\": 21651,\n  \"replica</w>\": 18125,\n  \"replied</w>\": 24238,\n  \"replies</w>\": 18808,\n  \"reply</w>\": 8965,\n  \"replying</w>\": 47599,\n  \"repor\": 2628,\n  \"report</w>\": 2417,\n  \"reported</w>\": 7598,\n  \"reportedly</w>\": 10953,\n  \"reporter</w>\": 11019,\n  \"reporters</w>\": 18454,\n  \"reporting</w>\": 9218,\n  \"reports</w>\": 4908,\n  \"reposit\": 41276,\n  \"repository</w>\": 46977,\n  \"repost\": 33147,\n  \"repost</w>\": 7217,\n  \"repostapp</w>\": 38388,\n  \"reposting</w>\": 20223,\n  \"reppin</w>\": 19163,\n  \"repping</w>\": 22574,\n  \"repre\": 3397,\n  \"represent\": 8293,\n  \"represent</w>\": 8406,\n  \"representation</w>\": 13520,\n  \"representative</w>\": 13175,\n  \"representatives</w>\": 15591,\n  \"represented</w>\": 12299,\n  \"representing</w>\": 7561,\n  \"represents</w>\": 14433,\n  \"repri\": 31854,\n  \"reproduction</w>\": 35714,\n  \"reproductive</w>\": 25522,\n  \"reps</w>\": 14265,\n  \"reptile</w>\": 36938,\n  \"reptiles</w>\": 38679,\n  \"republic\": 6376,\n  \"republic</w>\": 7185,\n  \"republican</w>\": 9842,\n  \"republicans</w>\": 12384,\n  \"repur\": 41852,\n  \"req</w>\": 42411,\n  \"requ\": 10664,\n  \"reque\": 9539,\n  \"request</w>\": 7813,\n  \"requested</w>\": 16199,\n  \"requesting</w>\": 33245,\n  \"requests</w>\": 17087,\n  \"requi\": 4863,\n  \"requiem</w>\": 40316,\n  \"require</w>\": 14437,\n  \"required</w>\": 8500,\n  \"requirement</w>\": 27146,\n  \"requirements</w>\": 12860,\n  \"requires</w>\": 13396,\n  \"requiring</w>\": 33425,\n  \"requis\": 42602,\n  \"rer\": 41295,\n  \"rer</w>\": 3407,\n  \"rera</w>\": 14301,\n  \"rero</w>\": 21860,\n  \"rers</w>\": 18869,\n  \"res\": 4466,\n  \"res</w>\": 934,\n  \"resc\": 3956,\n  \"rescheduled</w>\": 43553,\n  \"rescu\": 8618,\n  \"rescue\": 28567,\n  \"rescue</w>\": 5718,\n  \"rescued</w>\": 11919,\n  \"rescues</w>\": 32439,\n  \"rescuing</w>\": 43770,\n  \"rese\": 13000,\n  \"resear\": 6090,\n  \"research\": 25694,\n  \"research</w>\": 2379,\n  \"researched</w>\": 42733,\n  \"researcher</w>\": 18334,\n  \"researchers</w>\": 9522,\n  \"researching</w>\": 24544,\n  \"reseller</w>\": 35391,\n  \"resemb\": 16916,\n  \"resemblance</w>\": 26856,\n  \"resemble</w>\": 37230,\n  \"resembles</w>\": 35417,\n  \"reser\": 16420,\n  \"reserv\": 11906,\n  \"reservation</w>\": 20289,\n  \"reservations</w>\": 19307,\n  \"reserve</w>\": 6911,\n  \"reserved</w>\": 19796,\n  \"reserves</w>\": 19705,\n  \"reservoir</w>\": 20574,\n  \"reset</w>\": 26250,\n  \"resh</w>\": 47432,\n  \"reshi</w>\": 39435,\n  \"resi\": 2152,\n  \"residen\": 22311,\n  \"residence</w>\": 11672,\n  \"residences</w>\": 38855,\n  \"residency</w>\": 18545,\n  \"resident</w>\": 9016,\n  \"residente\": 44637,\n  \"residentevil</w>\": 48393,\n  \"residential</w>\": 11002,\n  \"residents</w>\": 6008,\n  \"resign</w>\": 23584,\n  \"resignation</w>\": 24779,\n  \"resigned</w>\": 31014,\n  \"resigns</w>\": 29738,\n  \"resil\": 10932,\n  \"resili\": 39212,\n  \"resilience</w>\": 15271,\n  \"resilient</w>\": 24694,\n  \"resin</w>\": 24156,\n  \"resist\": 37345,\n  \"resist</w>\": 9587,\n  \"resistance</w>\": 7392,\n  \"resistant</w>\": 17542,\n  \"resisting</w>\": 43679,\n  \"resolution</w>\": 9977,\n  \"resolutions</w>\": 26816,\n  \"resolve</w>\": 20787,\n  \"resolved</w>\": 28807,\n  \"reson\": 18092,\n  \"resonance</w>\": 42310,\n  \"resort</w>\": 6594,\n  \"resorts</w>\": 18839,\n  \"resource\": 43729,\n  \"resource</w>\": 9760,\n  \"resources</w>\": 6723,\n  \"respec\": 7466,\n  \"respect\": 31411,\n  \"respect</w>\": 4916,\n  \"respected</w>\": 19126,\n  \"respectful</w>\": 24379,\n  \"respecting</w>\": 36172,\n  \"respective</w>\": 25817,\n  \"respectively</w>\": 28794,\n  \"respects</w>\": 23553,\n  \"respir\": 20771,\n  \"respiratory</w>\": 24483,\n  \"respon\": 2421,\n  \"respond</w>\": 12355,\n  \"responded</w>\": 21121,\n  \"respondents</w>\": 49253,\n  \"responders</w>\": 25155,\n  \"responding</w>\": 18037,\n  \"responds</w>\": 17436,\n  \"response</w>\": 5399,\n  \"responses</w>\": 19006,\n  \"responsi\": 5490,\n  \"responsibilities</w>\": 30375,\n  \"responsibility</w>\": 11272,\n  \"responsible</w>\": 8936,\n  \"responsibly</w>\": 33675,\n  \"responsive</w>\": 21544,\n  \"ress\": 34651,\n  \"ress</w>\": 13629,\n  \"resso</w>\": 15133,\n  \"rest\": 10974,\n  \"rest</w>\": 2539,\n  \"restart</w>\": 37378,\n  \"restaur\": 3775,\n  \"restaurant\": 41930,\n  \"restaurant</w>\": 4489,\n  \"restaurants</w>\": 11714,\n  \"rested</w>\": 46020,\n  \"resting</w>\": 18044,\n  \"restless</w>\": 36724,\n  \"restling</w>\": 30076,\n  \"resto\": 11118,\n  \"resto</w>\": 41666,\n  \"restock</w>\": 34060,\n  \"restocked</w>\": 36966,\n  \"restor\": 8984,\n  \"restoration</w>\": 11989,\n  \"restorative</w>\": 46509,\n  \"restore</w>\": 14008,\n  \"restored</w>\": 14238,\n  \"restoring</w>\": 24406,\n  \"restra\": 25424,\n  \"restric\": 11036,\n  \"restricted</w>\": 27197,\n  \"restriction</w>\": 44282,\n  \"restrictions</w>\": 19884,\n  \"restroom</w>\": 43423,\n  \"restructuring</w>\": 43260,\n  \"rests</w>\": 33775,\n  \"resu\": 10095,\n  \"resul\": 2655,\n  \"result</w>\": 5659,\n  \"resulted</w>\": 26449,\n  \"resulting</w>\": 24581,\n  \"results</w>\": 3790,\n  \"resume</w>\": 15077,\n  \"resumes</w>\": 30268,\n  \"resur\": 14865,\n  \"resurg\": 45962,\n  \"resurgence</w>\": 47692,\n  \"resurrec\": 18487,\n  \"resurrection</w>\": 25811,\n  \"resusc\": 47523,\n  \"ret\": 20500,\n  \"ret</w>\": 10048,\n  \"reta\": 20153,\n  \"retail\": 14910,\n  \"retail</w>\": 6455,\n  \"retailer</w>\": 22549,\n  \"retailers</w>\": 19418,\n  \"retain</w>\": 24430,\n  \"retained</w>\": 42737,\n  \"retaining</w>\": 35571,\n  \"retains</w>\": 42583,\n  \"retali\": 33101,\n  \"retar\": 29964,\n  \"retarded</w>\": 44111,\n  \"retention</w>\": 26247,\n  \"rethink</w>\": 29078,\n  \"rethinking</w>\": 42951,\n  \"reti\": 4721,\n  \"retin\": 31270,\n  \"retina</w>\": 36919,\n  \"retire</w>\": 18846,\n  \"retired</w>\": 11477,\n  \"retirement</w>\": 9205,\n  \"retires</w>\": 29060,\n  \"retiring</w>\": 21200,\n  \"retrac\": 32735,\n  \"retreat</w>\": 11210,\n  \"retri\": 16918,\n  \"retriever</w>\": 28394,\n  \"retro\": 6535,\n  \"retro</w>\": 7755,\n  \"retrogamer</w>\": 47220,\n  \"retrogaming</w>\": 11316,\n  \"retrospective</w>\": 27105,\n  \"rett\": 41082,\n  \"rett</w>\": 8425,\n  \"rette</w>\": 33066,\n  \"return\": 43042,\n  \"return</w>\": 3458,\n  \"returned</w>\": 10476,\n  \"returning</w>\": 9290,\n  \"returns</w>\": 5020,\n  \"retwee\": 48190,\n  \"retweet</w>\": 3195,\n  \"retweeted</w>\": 12705,\n  \"retweeting</w>\": 32345,\n  \"retweets</w>\": 10160,\n  \"rety</w>\": 41550,\n  \"reu\": 20255,\n  \"reu</w>\": 40371,\n  \"reuben</w>\": 40450,\n  \"reunion</w>\": 10247,\n  \"reunite</w>\": 26179,\n  \"reunited</w>\": 13516,\n  \"reusable</w>\": 30395,\n  \"reuse</w>\": 26535,\n  \"reut\": 15210,\n  \"reuters</w>\": 15569,\n  \"rev\": 8424,\n  \"rev</w>\": 11789,\n  \"revamp</w>\": 29819,\n  \"revamped</w>\": 36420,\n  \"revan</w>\": 45277,\n  \"reve\": 3115,\n  \"reveal</w>\": 8052,\n  \"revealed</w>\": 7171,\n  \"revealing</w>\": 21321,\n  \"reveals</w>\": 6621,\n  \"revel\": 14133,\n  \"revelation</w>\": 24053,\n  \"revelations</w>\": 36163,\n  \"reven\": 10171,\n  \"revenge</w>\": 12717,\n  \"revenue</w>\": 10637,\n  \"revenues</w>\": 33348,\n  \"rever\": 14829,\n  \"rever</w>\": 41913,\n  \"revere</w>\": 44187,\n  \"reverend</w>\": 34407,\n  \"revers\": 20726,\n  \"reversal</w>\": 33367,\n  \"reverse</w>\": 12812,\n  \"reversed</w>\": 42485,\n  \"reversi\": 31601,\n  \"reversible</w>\": 34212,\n  \"revi\": 8317,\n  \"review</w>\": 2268,\n  \"reviewed</w>\": 16678,\n  \"reviewer</w>\": 36409,\n  \"reviewers</w>\": 48195,\n  \"reviewing</w>\": 20458,\n  \"reviews</w>\": 7227,\n  \"revise</w>\": 46801,\n  \"revised</w>\": 22806,\n  \"revising</w>\": 46882,\n  \"revision</w>\": 20335,\n  \"revisit</w>\": 26568,\n  \"revisited</w>\": 34302,\n  \"revisiting</w>\": 33144,\n  \"revit\": 26367,\n  \"revitalization</w>\": 46923,\n  \"revival</w>\": 14142,\n  \"revive</w>\": 26450,\n  \"revived</w>\": 42912,\n  \"revo\": 28660,\n  \"revol\": 13447,\n  \"revolt</w>\": 31697,\n  \"revolu\": 4900,\n  \"revolution\": 17699,\n  \"revolution</w>\": 6644,\n  \"revolutionary</w>\": 14734,\n  \"revolver</w>\": 38747,\n  \"revolving</w>\": 47230,\n  \"revs</w>\": 49286,\n  \"revue</w>\": 43428,\n  \"rew</w>\": 37564,\n  \"rewar\": 15857,\n  \"reward</w>\": 11223,\n  \"rewarded</w>\": 27163,\n  \"rewarding</w>\": 23351,\n  \"rewards</w>\": 15235,\n  \"rewatch</w>\": 35610,\n  \"rewatching</w>\": 41287,\n  \"rewind</w>\": 26867,\n  \"rewrite</w>\": 45218,\n  \"rex\": 13002,\n  \"rex</w>\": 10904,\n  \"rexperience</w>\": 33924,\n  \"rey\": 9681,\n  \"rey</w>\": 4517,\n  \"reyes</w>\": 18255,\n  \"reykja\": 47571,\n  \"reyn\": 11998,\n  \"reynolds</w>\": 14309,\n  \"reys</w>\": 48284,\n  \"rez\": 27597,\n  \"rez</w>\": 15192,\n  \"reza</w>\": 35888,\n  \"rf\": 35529,\n  \"rf</w>\": 16368,\n  \"rfc</w>\": 19003,\n  \"rfid</w>\": 40204,\n  \"rg\": 33055,\n  \"rg</w>\": 14897,\n  \"rgb</w>\": 36128,\n  \"rgv</w>\": 33685,\n  \"rh\": 8745,\n  \"rh</w>\": 22404,\n  \"rha\": 19473,\n  \"rhapso\": 32532,\n  \"rhapsody</w>\": 35774,\n  \"rhe\": 9186,\n  \"rhea</w>\": 28612,\n  \"rhetor\": 24359,\n  \"rhetoric</w>\": 29985,\n  \"rhett</w>\": 42984,\n  \"rheu\": 42953,\n  \"rhi\": 21212,\n  \"rhin\": 12269,\n  \"rhine\": 22863,\n  \"rhine</w>\": 44833,\n  \"rhinestone</w>\": 30450,\n  \"rhino\": 41744,\n  \"rhino</w>\": 20056,\n  \"rhinos</w>\": 30671,\n  \"rho\": 7637,\n  \"rhode\": 39302,\n  \"rhode</w>\": 27907,\n  \"rhodes</w>\": 17785,\n  \"rhon\": 25882,\n  \"rhonda</w>\": 46100,\n  \"rhp</w>\": 27199,\n  \"rhs</w>\": 24551,\n  \"rhu\": 23897,\n  \"rhubarb</w>\": 30213,\n  \"rhy\": 7740,\n  \"rhyme</w>\": 37356,\n  \"rhymes</w>\": 33143,\n  \"rhys</w>\": 28647,\n  \"rhyth\": 27069,\n  \"rhythm</w>\": 16172,\n  \"rhythmic</w>\": 46386,\n  \"rhythms</w>\": 40872,\n  \"ri\": 553,\n  \"ri</w>\": 2574,\n  \"ria</w>\": 3650,\n  \"rial</w>\": 15200,\n  \"rian</w>\": 7788,\n  \"rib\": 44634,\n  \"rib</w>\": 18298,\n  \"riba</w>\": 44992,\n  \"ribb\": 10081,\n  \"ribbon</w>\": 12114,\n  \"ribbons</w>\": 35271,\n  \"ribe\": 46115,\n  \"ribs</w>\": 17519,\n  \"ric\": 920,\n  \"ric</w>\": 4798,\n  \"rica</w>\": 14230,\n  \"rical</w>\": 18109,\n  \"rican</w>\": 30958,\n  \"ricardo</w>\": 23140,\n  \"ricci\": 35783,\n  \"ricciardo</w>\": 49282,\n  \"rice\": 36362,\n  \"rice</w>\": 4741,\n  \"rich\": 5223,\n  \"rich</w>\": 4021,\n  \"richar\": 9350,\n  \"richard\": 9080,\n  \"richard</w>\": 4470,\n  \"richards</w>\": 11372,\n  \"richardson</w>\": 15984,\n  \"riche\": 23286,\n  \"richer</w>\": 34138,\n  \"riches</w>\": 37093,\n  \"richest</w>\": 25572,\n  \"richi\": 38934,\n  \"richie</w>\": 19797,\n  \"richland</w>\": 43079,\n  \"richmond\": 34143,\n  \"richmond</w>\": 11292,\n  \"richter</w>\": 37591,\n  \"rick\": 6237,\n  \"rick</w>\": 3064,\n  \"ricket\": 46161,\n  \"ricket</w>\": 23671,\n  \"ricks</w>\": 23111,\n  \"ricky\": 19188,\n  \"ricky</w>\": 12814,\n  \"rico\": 37962,\n  \"rico</w>\": 11362,\n  \"ricotta</w>\": 38473,\n  \"rics</w>\": 7353,\n  \"ricul\": 6980,\n  \"rid\": 18103,\n  \"rid</w>\": 9874,\n  \"ridd\": 21990,\n  \"ridden</w>\": 32025,\n  \"riddle</w>\": 31839,\n  \"ride\": 15816,\n  \"ride</w>\": 2994,\n  \"rider\": 31056,\n  \"rider</w>\": 9707,\n  \"riders</w>\": 10826,\n  \"rides</w>\": 11308,\n  \"ridg\": 42646,\n  \"ridge\": 16580,\n  \"ridge</w>\": 6352,\n  \"ridic\": 9624,\n  \"ridiculous</w>\": 12659,\n  \"ridiculously</w>\": 25661,\n  \"ridin</w>\": 47869,\n  \"riding</w>\": 6765,\n  \"ridley</w>\": 27883,\n  \"rie\": 14824,\n  \"rie</w>\": 5322,\n  \"ried</w>\": 7552,\n  \"riel</w>\": 26696,\n  \"rien</w>\": 35237,\n  \"rier\": 40714,\n  \"rier</w>\": 13336,\n  \"ries\": 28179,\n  \"ries</w>\": 3059,\n  \"riesling</w>\": 36372,\n  \"rif\": 7044,\n  \"riff</w>\": 30359,\n  \"rifle</w>\": 15354,\n  \"rifles</w>\": 25678,\n  \"rift</w>\": 26681,\n  \"rig\": 18462,\n  \"rig</w>\": 13871,\n  \"riga</w>\": 36626,\n  \"rigged</w>\": 35897,\n  \"rigging</w>\": 38160,\n  \"riggs</w>\": 40328,\n  \"righ\": 15391,\n  \"right\": 13341,\n  \"right</w>\": 1155,\n  \"righte\": 20762,\n  \"righteous</w>\": 28169,\n  \"righteousness</w>\": 42481,\n  \"rightful</w>\": 42601,\n  \"rightly</w>\": 42669,\n  \"rights</w>\": 3336,\n  \"rigid</w>\": 43138,\n  \"rigor\": 36788,\n  \"rigorous</w>\": 41654,\n  \"rigs</w>\": 42893,\n  \"rihanna</w>\": 13744,\n  \"rij\": 41097,\n  \"rik\": 31136,\n  \"rik</w>\": 27832,\n  \"rika</w>\": 28580,\n  \"ril\": 12270,\n  \"ril</w>\": 2388,\n  \"riley\": 35056,\n  \"riley</w>\": 12260,\n  \"rill</w>\": 23705,\n  \"rilla\": 43956,\n  \"rilla</w>\": 18685,\n  \"rim\": 28147,\n  \"rim</w>\": 12199,\n  \"rime</w>\": 27064,\n  \"rimin\": 11527,\n  \"rimo</w>\": 47817,\n  \"rims</w>\": 34327,\n  \"rin\": 5859,\n  \"rin</w>\": 11739,\n  \"rina</w>\": 12869,\n  \"rine</w>\": 24952,\n  \"ring\": 8318,\n  \"ring</w>\": 2540,\n  \"ringed</w>\": 44712,\n  \"ringer</w>\": 35761,\n  \"ringing</w>\": 26035,\n  \"ringo</w>\": 38845,\n  \"rings</w>\": 5751,\n  \"rington</w>\": 12455,\n  \"rink</w>\": 21497,\n  \"rinka</w>\": 47316,\n  \"rino</w>\": 47188,\n  \"rinse</w>\": 48320,\n  \"rio\": 15681,\n  \"rio</w>\": 5782,\n  \"rion\": 31623,\n  \"rion</w>\": 34046,\n  \"rios</w>\": 32814,\n  \"riot\": 32636,\n  \"riot</w>\": 14218,\n  \"riots</w>\": 24844,\n  \"rious</w>\": 6340,\n  \"rip\": 10353,\n  \"rip</w>\": 4243,\n  \"ripe</w>\": 22832,\n  \"ripley</w>\": 41589,\n  \"ripp\": 25276,\n  \"ripped</w>\": 17815,\n  \"ripper</w>\": 35347,\n  \"ripping</w>\": 29126,\n  \"ripple</w>\": 24825,\n  \"rips</w>\": 30182,\n  \"rir</w>\": 36792,\n  \"ris\": 6108,\n  \"ris</w>\": 1999,\n  \"rise\": 13641,\n  \"rise</w>\": 3151,\n  \"risen</w>\": 23653,\n  \"risers</w>\": 44983,\n  \"rises</w>\": 13362,\n  \"riseup</w>\": 35760,\n  \"rish\": 18378,\n  \"rish</w>\": 18927,\n  \"rishi\": 48434,\n  \"rising\": 30452,\n  \"rising</w>\": 5448,\n  \"risis</w>\": 37998,\n  \"risk\": 27967,\n  \"risk</w>\": 4213,\n  \"risking</w>\": 48155,\n  \"risks</w>\": 12474,\n  \"risky</w>\": 27630,\n  \"risotto</w>\": 31471,\n  \"rist</w>\": 40610,\n  \"rit\": 5156,\n  \"rit</w>\": 17333,\n  \"rita</w>\": 16178,\n  \"ritchie</w>\": 30997,\n  \"rite\": 39318,\n  \"rite</w>\": 18429,\n  \"rites</w>\": 36160,\n  \"rith\": 48169,\n  \"rith</w>\": 48850,\n  \"riti\": 32904,\n  \"rito</w>\": 19379,\n  \"ritos</w>\": 33507,\n  \"ritt</w>\": 26092,\n  \"ritter</w>\": 34854,\n  \"ritu\": 13391,\n  \"ritual</w>\": 19712,\n  \"rituals</w>\": 31145,\n  \"ritz\": 39151,\n  \"ritz</w>\": 25627,\n  \"rium</w>\": 33884,\n  \"riv\": 25113,\n  \"rival\": 13412,\n  \"rival</w>\": 15629,\n  \"rivalry</w>\": 19511,\n  \"rivals</w>\": 15135,\n  \"rive\": 27588,\n  \"rive</w>\": 34917,\n  \"river\": 5239,\n  \"river</w>\": 2473,\n  \"rivera</w>\": 18275,\n  \"riverdale</w>\": 28304,\n  \"riverfront</w>\": 44439,\n  \"rivers</w>\": 10723,\n  \"riverside</w>\": 15809,\n  \"riveting</w>\": 44024,\n  \"riviera</w>\": 25851,\n  \"rix\": 43407,\n  \"rix</w>\": 9483,\n  \"riya</w>\": 36908,\n  \"riyad\": 31564,\n  \"riyadh</w>\": 33577,\n  \"riz\": 18426,\n  \"riz</w>\": 35411,\n  \"rizal</w>\": 41555,\n  \"rizio</w>\": 40191,\n  \"rizz\": 34826,\n  \"rizzo</w>\": 49076,\n  \"rj\": 26016,\n  \"rj</w>\": 20949,\n  \"rk\": 38725,\n  \"rk</w>\": 21422,\n  \"rl\": 18041,\n  \"rl</w>\": 14590,\n  \"rlly</w>\": 43222,\n  \"rly</w>\": 25954,\n  \"rm\": 20202,\n  \"rm</w>\": 8431,\n  \"rmb</w>\": 49097,\n  \"rms</w>\": 40529,\n  \"rn\": 13206,\n  \"rn</w>\": 7666,\n  \"rna</w>\": 24566,\n  \"rnb</w>\": 31556,\n  \"rnc</w>\": 35309,\n  \"rnli</w>\": 29748,\n  \"ro\": 532,\n  \"ro</w>\": 2795,\n  \"roa\": 8313,\n  \"roach</w>\": 31073,\n  \"road\": 4370,\n  \"road</w>\": 1759,\n  \"roadhouse</w>\": 47891,\n  \"roadmap</w>\": 30111,\n  \"roads</w>\": 6189,\n  \"roadsafety</w>\": 39992,\n  \"roadshow</w>\": 21168,\n  \"roadside</w>\": 26928,\n  \"roadster</w>\": 28920,\n  \"roadto\": 24681,\n  \"roadtrip</w>\": 15094,\n  \"roadway</w>\": 42744,\n  \"roam</w>\": 34045,\n  \"roaming</w>\": 29240,\n  \"roano\": 34184,\n  \"roanoke</w>\": 36587,\n  \"roar\": 34193,\n  \"roar</w>\": 18483,\n  \"roaring</w>\": 26428,\n  \"roast</w>\": 11404,\n  \"roasted</w>\": 10479,\n  \"roasting</w>\": 32228,\n  \"rob\": 2668,\n  \"rob</w>\": 6442,\n  \"robb\": 14059,\n  \"robb</w>\": 39673,\n  \"robbed</w>\": 24163,\n  \"robber</w>\": 35545,\n  \"robbers</w>\": 40852,\n  \"robbery</w>\": 16393,\n  \"robbi\": 44898,\n  \"robbie\": 37200,\n  \"robbie</w>\": 15970,\n  \"robbing</w>\": 47569,\n  \"robbins</w>\": 23461,\n  \"robby</w>\": 44128,\n  \"robe</w>\": 23116,\n  \"rober\": 4532,\n  \"robert\": 8811,\n  \"robert</w>\": 3929,\n  \"roberta</w>\": 43373,\n  \"roberto\": 42645,\n  \"roberto</w>\": 16227,\n  \"roberts</w>\": 10366,\n  \"robertson</w>\": 17643,\n  \"robes</w>\": 29304,\n  \"robi</w>\": 16743,\n  \"robin\": 6681,\n  \"robin</w>\": 7988,\n  \"robins</w>\": 35502,\n  \"robinson</w>\": 8523,\n  \"robles</w>\": 47646,\n  \"roblo\": 27481,\n  \"roblox</w>\": 37798,\n  \"robo\": 4672,\n  \"robo</w>\": 36057,\n  \"robot\": 46089,\n  \"robot</w>\": 8797,\n  \"robotic</w>\": 23975,\n  \"robotics</w>\": 13546,\n  \"robots</w>\": 13473,\n  \"robson</w>\": 31113,\n  \"robust</w>\": 22780,\n  \"robyn</w>\": 34533,\n  \"roc\": 3268,\n  \"roc</w>\": 13776,\n  \"rocco</w>\": 30009,\n  \"roch\": 23788,\n  \"rochdale</w>\": 41880,\n  \"roche</w>\": 31776,\n  \"rochelle</w>\": 40161,\n  \"rochester</w>\": 18057,\n  \"rock\": 2640,\n  \"rock</w>\": 2172,\n  \"rockab\": 39353,\n  \"rockabilly</w>\": 45019,\n  \"rocke\": 19914,\n  \"rocked</w>\": 16116,\n  \"rockefeller</w>\": 35476,\n  \"rocker</w>\": 29008,\n  \"rockers</w>\": 32338,\n  \"rocket\": 25435,\n  \"rocket</w>\": 8383,\n  \"rockets</w>\": 13292,\n  \"rockford</w>\": 41039,\n  \"rockies</w>\": 20621,\n  \"rockin</w>\": 12073,\n  \"rocking</w>\": 7081,\n  \"rockn\": 24442,\n  \"rocknroll</w>\": 27840,\n  \"rocks</w>\": 6135,\n  \"rockstar\": 23603,\n  \"rockstar</w>\": 18000,\n  \"rockstargames</w>\": 27516,\n  \"rockstars</w>\": 46639,\n  \"rockthe\": 49363,\n  \"rockwell</w>\": 34747,\n  \"rocky\": 33481,\n  \"rocky</w>\": 9648,\n  \"rod\": 9712,\n  \"rod</w>\": 8291,\n  \"roddy</w>\": 42332,\n  \"rode</w>\": 18449,\n  \"rodeo</w>\": 18250,\n  \"rodgers</w>\": 17612,\n  \"rodi\": 49100,\n  \"rodney</w>\": 21753,\n  \"rodri\": 11053,\n  \"rodrigo</w>\": 33944,\n  \"rodriguez</w>\": 14057,\n  \"rods</w>\": 28618,\n  \"roe\": 27671,\n  \"roe</w>\": 9996,\n  \"rof\": 33029,\n  \"rofl</w>\": 48228,\n  \"roft</w>\": 45212,\n  \"rog\": 34269,\n  \"rog</w>\": 34017,\n  \"rogen</w>\": 23380,\n  \"roger\": 13929,\n  \"roger</w>\": 7735,\n  \"rogerfederer</w>\": 40182,\n  \"rogers</w>\": 10661,\n  \"rogue\": 32575,\n  \"rogue</w>\": 15162,\n  \"roh\": 14933,\n  \"roh</w>\": 29840,\n  \"rohan</w>\": 39848,\n  \"rohing\": 23600,\n  \"rohingya</w>\": 26146,\n  \"rohit\": 44649,\n  \"rohit</w>\": 24299,\n  \"roi</w>\": 21877,\n  \"rok</w>\": 36807,\n  \"rol\": 3393,\n  \"rol</w>\": 7818,\n  \"roland\": 33713,\n  \"roland</w>\": 19569,\n  \"role\": 18485,\n  \"role</w>\": 3414,\n  \"roles</w>\": 11871,\n  \"rolex</w>\": 21093,\n  \"rolf</w>\": 48606,\n  \"roll\": 4711,\n  \"roll</w>\": 3341,\n  \"rolled</w>\": 11982,\n  \"roller\": 21034,\n  \"roller</w>\": 12342,\n  \"rollercoaster</w>\": 38248,\n  \"rollers</w>\": 36941,\n  \"rollin</w>\": 27545,\n  \"rolling\": 24250,\n  \"rolling</w>\": 6347,\n  \"rollingstones</w>\": 41309,\n  \"rollins</w>\": 27724,\n  \"rollout</w>\": 47710,\n  \"rollover</w>\": 39214,\n  \"rolls</w>\": 8614,\n  \"rolltide</w>\": 28101,\n  \"rom\": 11377,\n  \"rom</w>\": 19205,\n  \"roma\": 44134,\n  \"roma</w>\": 11631,\n  \"romain</w>\": 48897,\n  \"roman\": 4416,\n  \"roman</w>\": 7370,\n  \"romance</w>\": 7215,\n  \"romania</w>\": 15884,\n  \"romanian</w>\": 30866,\n  \"romano</w>\": 38409,\n  \"romans</w>\": 23066,\n  \"romantic\": 41457,\n  \"romantic</w>\": 8821,\n  \"rome\": 9406,\n  \"rome</w>\": 5243,\n  \"romeo</w>\": 14429,\n  \"romero</w>\": 23694,\n  \"romney</w>\": 19287,\n  \"romo</w>\": 32248,\n  \"romper</w>\": 43699,\n  \"ron\": 2393,\n  \"ron</w>\": 3372,\n  \"rona</w>\": 42385,\n  \"ronal\": 46194,\n  \"ronald</w>\": 15683,\n  \"ronaldo</w>\": 13463,\n  \"ronan</w>\": 34971,\n  \"rond\": 31935,\n  \"ronda</w>\": 37436,\n  \"rondo</w>\": 43756,\n  \"rone\": 48082,\n  \"rone</w>\": 32763,\n  \"roni</w>\": 47234,\n  \"ronnie\": 45257,\n  \"ronnie</w>\": 16421,\n  \"rons</w>\": 19536,\n  \"ront</w>\": 48881,\n  \"roo\": 1249,\n  \"roo</w>\": 31227,\n  \"rood</w>\": 38007,\n  \"roof\": 9120,\n  \"roof</w>\": 6449,\n  \"roofing</w>\": 24415,\n  \"roofs</w>\": 34635,\n  \"rooftop</w>\": 16319,\n  \"rook</w>\": 35918,\n  \"rookie</w>\": 9771,\n  \"rookies</w>\": 31917,\n  \"room\": 8845,\n  \"room</w>\": 1530,\n  \"roomie</w>\": 36851,\n  \"roommate</w>\": 19825,\n  \"roommates</w>\": 37323,\n  \"rooms</w>\": 6328,\n  \"rooney</w>\": 17712,\n  \"roos</w>\": 32938,\n  \"roosevel\": 17644,\n  \"roosevelt</w>\": 18488,\n  \"rooster\": 46263,\n  \"rooster</w>\": 30926,\n  \"roosters</w>\": 43693,\n  \"root\": 25930,\n  \"root</w>\": 9728,\n  \"rooted</w>\": 30428,\n  \"rooting</w>\": 25523,\n  \"roots</w>\": 8084,\n  \"rop</w>\": 43401,\n  \"rope</w>\": 9953,\n  \"ropes</w>\": 30506,\n  \"ror\": 8668,\n  \"ror</w>\": 2843,\n  \"rors</w>\": 12072,\n  \"rory\": 42804,\n  \"rory</w>\": 17813,\n  \"ros\": 5288,\n  \"ros</w>\": 6930,\n  \"rosa</w>\": 14393,\n  \"rosal\": 30397,\n  \"rosario</w>\": 33640,\n  \"rosary</w>\": 33098,\n  \"rosberg</w>\": 46037,\n  \"rose\": 6146,\n  \"rose</w>\": 3568,\n  \"roseanne</w>\": 47528,\n  \"rosel\": 33616,\n  \"rosemary</w>\": 19472,\n  \"rosen\": 13214,\n  \"rosen</w>\": 36424,\n  \"rosenberg</w>\": 43558,\n  \"rosenthal</w>\": 46990,\n  \"roses</w>\": 9061,\n  \"rosetta</w>\": 43800,\n  \"rosewood</w>\": 38686,\n  \"rosie\": 43049,\n  \"rosie</w>\": 16888,\n  \"ross\": 8801,\n  \"ross</w>\": 2158,\n  \"rosse</w>\": 11602,\n  \"rossi</w>\": 24817,\n  \"rosso</w>\": 33023,\n  \"roster</w>\": 12487,\n  \"roswell</w>\": 45116,\n  \"rosy</w>\": 46705,\n  \"rosÃ©</w>\": 28006,\n  \"rot\": 10055,\n  \"rot</w>\": 9643,\n  \"rotar\": 45959,\n  \"rotary</w>\": 14654,\n  \"rotating</w>\": 32265,\n  \"rotation</w>\": 18089,\n  \"rotc</w>\": 32252,\n  \"roth\": 17741,\n  \"roth</w>\": 19139,\n  \"rother\": 23174,\n  \"rotherham</w>\": 37687,\n  \"rothschild</w>\": 45089,\n  \"roti</w>\": 46940,\n  \"roto\": 34698,\n  \"rotor</w>\": 42991,\n  \"rots</w>\": 16642,\n  \"rott\": 34806,\n  \"rotten</w>\": 24324,\n  \"rotter\": 22614,\n  \"rotterdam</w>\": 23422,\n  \"rotun\": 42970,\n  \"rou\": 2964,\n  \"rou</w>\": 34783,\n  \"roud</w>\": 28375,\n  \"rouge</w>\": 16209,\n  \"rough\": 11699,\n  \"rough</w>\": 8511,\n  \"roughly</w>\": 21910,\n  \"roughs</w>\": 37598,\n  \"rouhani</w>\": 39912,\n  \"roulette</w>\": 39930,\n  \"roun\": 5602,\n  \"round\": 9403,\n  \"round</w>\": 2522,\n  \"roundabout</w>\": 29953,\n  \"rounded</w>\": 26973,\n  \"rounder</w>\": 37024,\n  \"rounding</w>\": 40208,\n  \"rounds</w>\": 11242,\n  \"roundtable</w>\": 19386,\n  \"roundup</w>\": 17503,\n  \"roup</w>\": 29220,\n  \"rourke</w>\": 38753,\n  \"rous\": 33645,\n  \"rous</w>\": 34531,\n  \"rousey</w>\": 46267,\n  \"rout\": 7502,\n  \"rout</w>\": 41778,\n  \"route</w>\": 5261,\n  \"router</w>\": 29962,\n  \"routes</w>\": 14923,\n  \"routine</w>\": 12319,\n  \"routines</w>\": 44074,\n  \"routing</w>\": 44086,\n  \"roux</w>\": 43416,\n  \"rov</w>\": 23971,\n  \"rove</w>\": 30130,\n  \"rover</w>\": 12776,\n  \"rovers</w>\": 16373,\n  \"row\": 5275,\n  \"row</w>\": 1044,\n  \"rowan</w>\": 26240,\n  \"rowdy</w>\": 32141,\n  \"rowe</w>\": 28323,\n  \"rowed</w>\": 22615,\n  \"rower</w>\": 43345,\n  \"rowers</w>\": 41806,\n  \"rowing</w>\": 12807,\n  \"rowland</w>\": 33037,\n  \"rowley</w>\": 48793,\n  \"rowling</w>\": 29371,\n  \"rown\": 22287,\n  \"rown</w>\": 25060,\n  \"rows</w>\": 9409,\n  \"rox\": 14111,\n  \"rox</w>\": 41033,\n  \"roxy</w>\": 28093,\n  \"roy\": 2128,\n  \"roy</w>\": 6354,\n  \"royal\": 6691,\n  \"royal</w>\": 3853,\n  \"royale</w>\": 20630,\n  \"royalnavy</w>\": 41545,\n  \"royals</w>\": 13335,\n  \"royalties</w>\": 48660,\n  \"royalty</w>\": 18296,\n  \"royalwedding</w>\": 27461,\n  \"royce</w>\": 18444,\n  \"royd</w>\": 41476,\n  \"royo</w>\": 39357,\n  \"roz\": 28989,\n  \"roz</w>\": 37250,\n  \"rp\": 17305,\n  \"rp</w>\": 8174,\n  \"rpa</w>\": 41872,\n  \"rpg</w>\": 12445,\n  \"rpm</w>\": 23715,\n  \"rps</w>\": 49215,\n  \"rr\": 5311,\n  \"rr</w>\": 9126,\n  \"rrp</w>\": 36967,\n  \"rrr</w>\": 18267,\n  \"rrrr\": 25561,\n  \"rrrr</w>\": 34444,\n  \"rs\": 6978,\n  \"rs</w>\": 1724,\n  \"rsa</w>\": 29437,\n  \"rsc</w>\": 48524,\n  \"rsd</w>\": 34426,\n  \"rsi</w>\": 39046,\n  \"rsl</w>\": 44752,\n  \"rsp\": 16381,\n  \"rspb\": 38508,\n  \"rspb</w>\": 36727,\n  \"rspca</w>\": 45643,\n  \"rss\": 46466,\n  \"rss</w>\": 22350,\n  \"rstats</w>\": 38700,\n  \"rsvp</w>\": 9774,\n  \"rt\": 8959,\n  \"rt</w>\": 8991,\n  \"rtc</w>\": 31648,\n  \"rte\": 33822,\n  \"rte</w>\": 23322,\n  \"rtg</w>\": 22028,\n  \"rti</w>\": 47549,\n  \"rtr</w>\": 43999,\n  \"rts</w>\": 8496,\n  \"rtw</w>\": 34673,\n  \"ru\": 681,\n  \"ru</w>\": 13735,\n  \"rub\": 15862,\n  \"rub</w>\": 22586,\n  \"rubb\": 19597,\n  \"rubbed</w>\": 45239,\n  \"rubber\": 31131,\n  \"rubber</w>\": 11331,\n  \"rubbing</w>\": 41262,\n  \"rubbish</w>\": 21108,\n  \"rubble</w>\": 42230,\n  \"ruben\": 44058,\n  \"ruben</w>\": 29722,\n  \"rubi\": 27856,\n  \"rubin</w>\": 34128,\n  \"rubio</w>\": 24244,\n  \"rubs</w>\": 43422,\n  \"ruby\": 24552,\n  \"ruby</w>\": 11493,\n  \"ruck\": 27449,\n  \"rucker</w>\": 45402,\n  \"rud\": 35256,\n  \"rudd</w>\": 31836,\n  \"rude</w>\": 16548,\n  \"rudi\": 48360,\n  \"rudol\": 40927,\n  \"rudolf</w>\": 46835,\n  \"rudolph</w>\": 30119,\n  \"rudy\": 38226,\n  \"rudy</w>\": 22131,\n  \"rue\": 38024,\n  \"rue</w>\": 19276,\n  \"rufc</w>\": 45084,\n  \"ruff\": 28177,\n  \"ruff</w>\": 30304,\n  \"rufus</w>\": 39322,\n  \"rug\": 4217,\n  \"rug</w>\": 19220,\n  \"rugby\": 15091,\n  \"rugby</w>\": 4964,\n  \"rugbyleague</w>\": 44419,\n  \"ruger</w>\": 48655,\n  \"rugged</w>\": 25225,\n  \"rugs</w>\": 29946,\n  \"rui</w>\": 46974,\n  \"ruin</w>\": 16256,\n  \"ruined</w>\": 17231,\n  \"ruining</w>\": 29952,\n  \"ruins</w>\": 16094,\n  \"ruiz</w>\": 27873,\n  \"ruk</w>\": 46628,\n  \"rukh\": 43075,\n  \"rukh</w>\": 27631,\n  \"rule\": 31643,\n  \"rule</w>\": 6175,\n  \"ruled</w>\": 16324,\n  \"ruler</w>\": 26286,\n  \"rulers</w>\": 45328,\n  \"rules</w>\": 5272,\n  \"ruling</w>\": 14690,\n  \"rum\": 9223,\n  \"rum</w>\": 11233,\n  \"rumb\": 42432,\n  \"rumble</w>\": 18900,\n  \"rumi</w>\": 31428,\n  \"rumor</w>\": 22254,\n  \"rumored</w>\": 36694,\n  \"rumors</w>\": 16160,\n  \"rumour</w>\": 34296,\n  \"rumours</w>\": 20716,\n  \"rump</w>\": 29366,\n  \"run\": 1639,\n  \"run</w>\": 1934,\n  \"runaway</w>\": 28851,\n  \"runchat</w>\": 25838,\n  \"rundown</w>\": 41100,\n  \"rune\": 33882,\n  \"rune</w>\": 49244,\n  \"runner\": 37370,\n  \"runner</w>\": 7913,\n  \"runners</w>\": 10571,\n  \"runnin</w>\": 43130,\n  \"running\": 24451,\n  \"running</w>\": 2761,\n  \"runoff</w>\": 38564,\n  \"runs</w>\": 5586,\n  \"runway</w>\": 13927,\n  \"rup\": 7996,\n  \"rup</w>\": 14980,\n  \"rupaul</w>\": 44211,\n  \"rupee</w>\": 43916,\n  \"rupees</w>\": 44110,\n  \"rupert</w>\": 25625,\n  \"rupt</w>\": 23055,\n  \"ruption</w>\": 35403,\n  \"rural\": 28801,\n  \"rural</w>\": 8737,\n  \"rus\": 35811,\n  \"rus</w>\": 5998,\n  \"rush\": 12148,\n  \"rush</w>\": 6973,\n  \"rushed</w>\": 28104,\n  \"rusher</w>\": 48745,\n  \"rushes</w>\": 47217,\n  \"rushing</w>\": 20284,\n  \"russ\": 6285,\n  \"russ</w>\": 20764,\n  \"russell\": 26122,\n  \"russell</w>\": 8150,\n  \"russi\": 2600,\n  \"russia</w>\": 4018,\n  \"russian\": 30731,\n  \"russian</w>\": 4868,\n  \"russians</w>\": 25413,\n  \"russo</w>\": 30679,\n  \"rust\": 28682,\n  \"rust</w>\": 14212,\n  \"rustic</w>\": 19822,\n  \"rusty\": 43966,\n  \"rusty</w>\": 22646,\n  \"rut\": 14973,\n  \"rut</w>\": 39102,\n  \"rutger\": 49029,\n  \"rutgers</w>\": 28934,\n  \"ruth\": 15798,\n  \"ruth</w>\": 12029,\n  \"ruther\": 26676,\n  \"rutherford</w>\": 31070,\n  \"ruthless</w>\": 36063,\n  \"rutland</w>\": 46024,\n  \"ruto</w>\": 43702,\n  \"ruz</w>\": 23275,\n  \"rv\": 17135,\n  \"rv</w>\": 17951,\n  \"rva</w>\": 24278,\n  \"rw\": 9085,\n  \"rw</w>\": 22926,\n  \"rwa</w>\": 47452,\n  \"rwand\": 31758,\n  \"rwanda</w>\": 15427,\n  \"rwby</w>\": 39698,\n  \"rwc</w>\": 32321,\n  \"rx\": 41188,\n  \"rx</w>\": 15945,\n  \"ry\": 1511,\n  \"ry</w>\": 913,\n  \"ryan\": 8682,\n  \"ryan</w>\": 4053,\n  \"ryanair</w>\": 43526,\n  \"ryder\": 43564,\n  \"ryder</w>\": 21805,\n  \"rye\": 24015,\n  \"rye</w>\": 17409,\n  \"rying</w>\": 7838,\n  \"ryn</w>\": 37728,\n  \"ryo\": 24460,\n  \"rys</w>\": 21654,\n  \"ryu\": 46656,\n  \"ryu</w>\": 34604,\n  \"rÃ©\": 29106,\n  \"s\": 82,\n  \"s</w>\": 338,\n  \"sa\": 774,\n  \"sa</w>\": 1344,\n  \"saa</w>\": 13429,\n  \"saab</w>\": 27158,\n  \"saad</w>\": 36530,\n  \"saas</w>\": 25761,\n  \"saat\": 33151,\n  \"sab\": 3233,\n  \"sab</w>\": 23213,\n  \"saba</w>\": 38344,\n  \"sabah</w>\": 32854,\n  \"saban</w>\": 41620,\n  \"sabar\": 47102,\n  \"sabbath</w>\": 26008,\n  \"sabc</w>\": 30010,\n  \"sabcnews</w>\": 41093,\n  \"saber\": 46822,\n  \"saber</w>\": 25624,\n  \"sabha</w>\": 23431,\n  \"sabi</w>\": 47073,\n  \"sabine</w>\": 44062,\n  \"sable</w>\": 19224,\n  \"sabot\": 30700,\n  \"sabotage</w>\": 40496,\n  \"sabre</w>\": 35110,\n  \"sabres</w>\": 29620,\n  \"sabrin\": 37029,\n  \"sabrina</w>\": 24994,\n  \"sac\": 3632,\n  \"sac</w>\": 12905,\n  \"sach\": 30168,\n  \"sacha</w>\": 49010,\n  \"sachin\": 47527,\n  \"sachin</w>\": 30297,\n  \"sachs</w>\": 31451,\n  \"sack\": 28964,\n  \"sack</w>\": 14979,\n  \"sacked</w>\": 27519,\n  \"sacks</w>\": 26441,\n  \"sacram\": 13334,\n  \"sacramento</w>\": 16065,\n  \"sacred\": 40612,\n  \"sacred</w>\": 12477,\n  \"sacri\": 15283,\n  \"sacrif\": 12117,\n  \"sacrific\": 16919,\n  \"sacrifice</w>\": 12556,\n  \"sacrificed</w>\": 31116,\n  \"sacrifices</w>\": 28858,\n  \"sacrificing</w>\": 48146,\n  \"sad\": 2810,\n  \"sad</w>\": 3719,\n  \"saddened</w>\": 27720,\n  \"saddest</w>\": 34925,\n  \"saddle\": 30469,\n  \"saddle</w>\": 20283,\n  \"sade</w>\": 27429,\n  \"sadh\": 40955,\n  \"sadi\": 22207,\n  \"sadie</w>\": 30333,\n  \"sadiq</w>\": 44107,\n  \"sadler</w>\": 45600,\n  \"sadly</w>\": 11603,\n  \"sadness</w>\": 20399,\n  \"sae\": 38633,\n  \"sae</w>\": 34883,\n  \"saeed</w>\": 29745,\n  \"saf\": 2125,\n  \"saf</w>\": 25760,\n  \"safar\": 23443,\n  \"safari</w>\": 14091,\n  \"safarilive</w>\": 34816,\n  \"safc</w>\": 27998,\n  \"safe\": 2901,\n  \"safe</w>\": 2996,\n  \"safeguard</w>\": 42249,\n  \"safeguarding</w>\": 47451,\n  \"safely</w>\": 11513,\n  \"safer\": 40124,\n  \"safer</w>\": 15504,\n  \"safest</w>\": 38973,\n  \"safety\": 19050,\n  \"safety</w>\": 3406,\n  \"safetyfirst</w>\": 43608,\n  \"saffron</w>\": 27529,\n  \"sag\": 6609,\n  \"sag</w>\": 30048,\n  \"saga</w>\": 15758,\n  \"sagan</w>\": 37193,\n  \"sagar</w>\": 42518,\n  \"sage\": 25800,\n  \"sage</w>\": 7509,\n  \"sages</w>\": 25979,\n  \"sagin\": 47097,\n  \"sagitt\": 44685,\n  \"sagu\": 44708,\n  \"sah\": 30943,\n  \"sah</w>\": 26342,\n  \"saha\": 36062,\n  \"sahara</w>\": 24599,\n  \"saharan</w>\": 44255,\n  \"sahi\": 24608,\n  \"sahib</w>\": 34150,\n  \"sai\": 16048,\n  \"sai</w>\": 10886,\n  \"said\": 40319,\n  \"said</w>\": 1946,\n  \"saif</w>\": 44164,\n  \"saig\": 36328,\n  \"saigon</w>\": 41081,\n  \"sail\": 7528,\n  \"sail</w>\": 12156,\n  \"sailed</w>\": 43047,\n  \"sailing</w>\": 11003,\n  \"sailor\": 28002,\n  \"sailor</w>\": 16076,\n  \"sailormoon</w>\": 40673,\n  \"sailors</w>\": 25355,\n  \"sails</w>\": 27526,\n  \"sain\": 21226,\n  \"sain</w>\": 40378,\n  \"sains\": 24860,\n  \"sainsbury</w>\": 45879,\n  \"sainsburys</w>\": 36934,\n  \"saint\": 11274,\n  \"saint</w>\": 5599,\n  \"saints</w>\": 8769,\n  \"saintsfc</w>\": 31102,\n  \"sair\": 46600,\n  \"sair</w>\": 30971,\n  \"saire</w>\": 28087,\n  \"saison</w>\": 33256,\n  \"sait\": 48008,\n  \"saj\": 33580,\n  \"sak\": 11511,\n  \"sak</w>\": 35900,\n  \"saka</w>\": 33609,\n  \"sake</w>\": 12874,\n  \"sakh</w>\": 43945,\n  \"saki</w>\": 40514,\n  \"saku\": 37550,\n  \"sakura</w>\": 24162,\n  \"sal\": 980,\n  \"sal</w>\": 6126,\n  \"sala</w>\": 17300,\n  \"salaam</w>\": 46773,\n  \"salad</w>\": 6188,\n  \"salads</w>\": 30948,\n  \"salah</w>\": 22516,\n  \"salam\": 19007,\n  \"salam</w>\": 33963,\n  \"salamat</w>\": 44696,\n  \"salami</w>\": 46885,\n  \"salaries</w>\": 33132,\n  \"salary</w>\": 16312,\n  \"salazar</w>\": 45988,\n  \"sale\": 17786,\n  \"sale</w>\": 1690,\n  \"saleh</w>\": 38353,\n  \"salem\": 48194,\n  \"salem</w>\": 16884,\n  \"sales\": 13347,\n  \"sales</w>\": 3765,\n  \"salesforce</w>\": 22680,\n  \"salesman</w>\": 37633,\n  \"salford</w>\": 25629,\n  \"sali\": 15411,\n  \"salim</w>\": 42760,\n  \"salinas</w>\": 41990,\n  \"saline</w>\": 46918,\n  \"salis\": 20667,\n  \"salis</w>\": 39378,\n  \"salisbury</w>\": 24763,\n  \"sall\": 27122,\n  \"sall</w>\": 20883,\n  \"salle</w>\": 23738,\n  \"sally\": 29542,\n  \"sally</w>\": 13349,\n  \"salman\": 13754,\n  \"salman</w>\": 16219,\n  \"salmankhan</w>\": 15177,\n  \"salmon\": 37040,\n  \"salmon</w>\": 9137,\n  \"salom\": 38268,\n  \"salon\": 33916,\n  \"salon</w>\": 11105,\n  \"saloon</w>\": 26038,\n  \"sals</w>\": 16307,\n  \"salsa</w>\": 16442,\n  \"salt\": 12763,\n  \"salt</w>\": 6611,\n  \"salted</w>\": 26313,\n  \"saltlife</w>\": 47809,\n  \"salts</w>\": 40559,\n  \"saltwater</w>\": 43616,\n  \"salty</w>\": 20678,\n  \"salu\": 31711,\n  \"salud</w>\": 46867,\n  \"salut\": 44998,\n  \"salute\": 44908,\n  \"salute</w>\": 9747,\n  \"salutes</w>\": 32762,\n  \"salv\": 8299,\n  \"salvador</w>\": 20874,\n  \"salvage</w>\": 33131,\n  \"salvation</w>\": 19534,\n  \"salvatore</w>\": 38772,\n  \"salz\": 33594,\n  \"salzburg</w>\": 43396,\n  \"sam\": 1644,\n  \"sam</w>\": 3730,\n  \"sama</w>\": 19272,\n  \"samanth\": 11465,\n  \"samantha</w>\": 15466,\n  \"samanthap\": 38266,\n  \"samanthaprabhu</w>\": 38643,\n  \"samar\": 21820,\n  \"samaritan</w>\": 45495,\n  \"samba</w>\": 37190,\n  \"same\": 23062,\n  \"same</w>\": 2208,\n  \"samheughan</w>\": 36255,\n  \"sami\": 48400,\n  \"sami</w>\": 24322,\n  \"sammy\": 31091,\n  \"sammy</w>\": 16758,\n  \"samo\": 30006,\n  \"samoa</w>\": 34932,\n  \"samp\": 31225,\n  \"sample</w>\": 9542,\n  \"sampler</w>\": 40629,\n  \"samples</w>\": 13387,\n  \"sampling</w>\": 19522,\n  \"sampson</w>\": 39983,\n  \"sams</w>\": 44667,\n  \"samson</w>\": 34659,\n  \"samsun\": 47875,\n  \"samsung\": 35369,\n  \"samsung</w>\": 8115,\n  \"samu\": 7646,\n  \"samuel\": 30612,\n  \"samuel</w>\": 12787,\n  \"samurai</w>\": 21739,\n  \"san\": 1489,\n  \"san</w>\": 2223,\n  \"sana</w>\": 19434,\n  \"sanantonio</w>\": 34714,\n  \"sanat\": 29091,\n  \"sanatomy</w>\": 36052,\n  \"sanc\": 7398,\n  \"sance</w>\": 15930,\n  \"sanchez</w>\": 13971,\n  \"sanctioned</w>\": 43032,\n  \"sanctions</w>\": 17790,\n  \"sanctu\": 12712,\n  \"sanctuary</w>\": 14044,\n  \"sand\": 2147,\n  \"sand</w>\": 5094,\n  \"sandal\": 36445,\n  \"sandal</w>\": 42185,\n  \"sandals</w>\": 20731,\n  \"sandalwood</w>\": 47502,\n  \"sandeep</w>\": 46973,\n  \"sander</w>\": 34111,\n  \"sanders</w>\": 10429,\n  \"sanderson</w>\": 36198,\n  \"sandi\": 44249,\n  \"sandiego\": 45997,\n  \"sandiego</w>\": 15793,\n  \"sandman</w>\": 45730,\n  \"sando\": 35921,\n  \"sandoval</w>\": 44157,\n  \"sandra\": 33733,\n  \"sandra</w>\": 13415,\n  \"sandro</w>\": 42389,\n  \"sands</w>\": 5936,\n  \"sandstone</w>\": 36796,\n  \"sandwich\": 17050,\n  \"sandwich</w>\": 8687,\n  \"sandwiches</w>\": 19667,\n  \"sandy\": 29679,\n  \"sandy</w>\": 10355,\n  \"sane</w>\": 23419,\n  \"sanford</w>\": 32330,\n  \"sanfrancisco</w>\": 20254,\n  \"sang\": 13235,\n  \"sang</w>\": 11684,\n  \"sange\": 12466,\n  \"sangria</w>\": 42665,\n  \"sani\": 39137,\n  \"sani</w>\": 34492,\n  \"sanitary</w>\": 33842,\n  \"sanitation</w>\": 25414,\n  \"saniti\": 43987,\n  \"sanity</w>\": 30517,\n  \"sanjay\": 31712,\n  \"sanjay</w>\": 25796,\n  \"sanje\": 40405,\n  \"sanjose</w>\": 45971,\n  \"sank</w>\": 43692,\n  \"sano</w>\": 34053,\n  \"sans</w>\": 16982,\n  \"sansk\": 39689,\n  \"sanskrit</w>\": 48083,\n  \"sant\": 8356,\n  \"sant</w>\": 23120,\n  \"santa\": 22175,\n  \"santa</w>\": 4555,\n  \"santac\": 28876,\n  \"santam\": 45627,\n  \"santana</w>\": 27033,\n  \"santander</w>\": 46476,\n  \"santi\": 13856,\n  \"santiago</w>\": 16568,\n  \"santo\": 29631,\n  \"santo</w>\": 18400,\n  \"santor\": 28448,\n  \"santorini</w>\": 39573,\n  \"santos</w>\": 16582,\n  \"sany\": 47679,\n  \"sao</w>\": 28026,\n  \"sap\": 8089,\n  \"sap</w>\": 11591,\n  \"sapi\": 40016,\n  \"sapp\": 13427,\n  \"sapp</w>\": 40729,\n  \"sapphire</w>\": 22044,\n  \"sar\": 1808,\n  \"sar</w>\": 9424,\n  \"sara\": 37196,\n  \"sara</w>\": 10063,\n  \"sarab\": 40716,\n  \"sarac\": 35722,\n  \"sarah\": 9086,\n  \"sarah</w>\": 5327,\n  \"saraj\": 42592,\n  \"sarajevo</w>\": 48211,\n  \"saras\": 20373,\n  \"sarasota</w>\": 31990,\n  \"sarato\": 24845,\n  \"saratoga</w>\": 29496,\n  \"sarawak</w>\": 47331,\n  \"sarcasm</w>\": 37246,\n  \"sarcastic</w>\": 48639,\n  \"sardar</w>\": 41786,\n  \"sarde\": 43925,\n  \"sardin\": 27383,\n  \"sardinia</w>\": 41025,\n  \"sare\": 13051,\n  \"saree</w>\": 30860,\n  \"sargent</w>\": 34864,\n  \"sari\": 42327,\n  \"sari</w>\": 20261,\n  \"saries</w>\": 47586,\n  \"sarkar</w>\": 30673,\n  \"sarko\": 33658,\n  \"sarkodie</w>\": 42848,\n  \"sarmy</w>\": 20954,\n  \"sart</w>\": 33006,\n  \"sary</w>\": 15398,\n  \"sas\": 3960,\n  \"sas</w>\": 5235,\n  \"sash</w>\": 35656,\n  \"sasha\": 46078,\n  \"sasha</w>\": 20894,\n  \"sasia</w>\": 44751,\n  \"sask\": 47091,\n  \"sask</w>\": 30416,\n  \"saskat\": 17102,\n  \"saskatchewan</w>\": 23899,\n  \"saskatoon</w>\": 31128,\n  \"sass</w>\": 31351,\n  \"sassy</w>\": 20827,\n  \"sat\": 1382,\n  \"sat</w>\": 3279,\n  \"sata</w>\": 41520,\n  \"satan</w>\": 19446,\n  \"satanic</w>\": 38224,\n  \"satchel</w>\": 45908,\n  \"sate</w>\": 35749,\n  \"satell\": 9031,\n  \"satellite</w>\": 10316,\n  \"satellites</w>\": 28483,\n  \"sath\": 29675,\n  \"sathletics</w>\": 30154,\n  \"sati\": 7038,\n  \"satin</w>\": 21803,\n  \"sation</w>\": 23674,\n  \"sations</w>\": 31232,\n  \"satire</w>\": 29875,\n  \"satis\": 9906,\n  \"satisf\": 22941,\n  \"satisfaction</w>\": 19925,\n  \"satisfied</w>\": 18101,\n  \"satisfy</w>\": 29444,\n  \"satisfying</w>\": 23755,\n  \"sato</w>\": 34376,\n  \"satu</w>\": 45283,\n  \"satur\": 1634,\n  \"saturated</w>\": 32466,\n  \"saturday\": 12537,\n  \"saturday</w>\": 1748,\n  \"saturdaymorning</w>\": 29053,\n  \"saturdaymotivation</w>\": 40843,\n  \"saturdays</w>\": 18930,\n  \"saturn</w>\": 17312,\n  \"saty\": 39426,\n  \"sau\": 2096,\n  \"sau</w>\": 19455,\n  \"sauce</w>\": 5520,\n  \"saucer</w>\": 42272,\n  \"sauces</w>\": 40367,\n  \"saucy</w>\": 46684,\n  \"saudi\": 24511,\n  \"saudi</w>\": 8548,\n  \"saudiarabia</w>\": 28680,\n  \"sauer\": 46333,\n  \"saul\": 47623,\n  \"saul</w>\": 23252,\n  \"sault</w>\": 40361,\n  \"sauna</w>\": 35460,\n  \"saunders</w>\": 23794,\n  \"saur</w>\": 13227,\n  \"saura\": 46532,\n  \"saurus</w>\": 22118,\n  \"saus</w>\": 36121,\n  \"sausage</w>\": 11855,\n  \"sausages</w>\": 31593,\n  \"sautÃ©\": 36290,\n  \"sautÃ©ed</w>\": 38517,\n  \"sauvi\": 30116,\n  \"sauvignon</w>\": 32745,\n  \"sav\": 2248,\n  \"sav</w>\": 26533,\n  \"sava</w>\": 40198,\n  \"savag\": 43039,\n  \"savage</w>\": 11859,\n  \"savannah</w>\": 18662,\n  \"save\": 5895,\n  \"save</w>\": 2673,\n  \"saved</w>\": 7137,\n  \"saveour\": 33390,\n  \"saver</w>\": 20987,\n  \"savers</w>\": 31416,\n  \"saves</w>\": 12907,\n  \"savethe\": 18031,\n  \"savi\": 14721,\n  \"saving\": 28498,\n  \"saving</w>\": 6979,\n  \"savings</w>\": 10651,\n  \"savior</w>\": 24762,\n  \"saviour</w>\": 35800,\n  \"savor</w>\": 48071,\n  \"savory</w>\": 32992,\n  \"savoury</w>\": 49071,\n  \"savoy</w>\": 39552,\n  \"savvy</w>\": 29278,\n  \"saw\": 12429,\n  \"saw</w>\": 2425,\n  \"sawa</w>\": 39613,\n  \"sawards</w>\": 29012,\n  \"sawyer</w>\": 27726,\n  \"sax\": 14169,\n  \"sax</w>\": 23766,\n  \"saxon</w>\": 31856,\n  \"saxophon\": 43760,\n  \"saxophone</w>\": 32296,\n  \"say\": 3047,\n  \"say</w>\": 1451,\n  \"saya</w>\": 35170,\n  \"sayang</w>\": 46322,\n  \"sayers</w>\": 44116,\n  \"sayin</w>\": 23662,\n  \"saying</w>\": 4455,\n  \"says</w>\": 1563,\n  \"saz</w>\": 35577,\n  \"sb\": 5576,\n  \"sb</w>\": 4977,\n  \"sba</w>\": 44970,\n  \"sback</w>\": 43840,\n  \"sband</w>\": 27539,\n  \"sbaseball</w>\": 46491,\n  \"sbball</w>\": 39190,\n  \"sbc</w>\": 31404,\n  \"sberg</w>\": 20358,\n  \"sbi</w>\": 41369,\n  \"sbk</w>\": 39211,\n  \"sboro</w>\": 18909,\n  \"sbridge</w>\": 49228,\n  \"sbs</w>\": 18883,\n  \"sbu\": 48075,\n  \"sbu</w>\": 46281,\n  \"sburg</w>\": 7390,\n  \"sburgh</w>\": 48205,\n  \"sbury</w>\": 14081,\n  \"sby\": 26519,\n  \"sby</w>\": 10287,\n  \"sc\": 663,\n  \"sc</w>\": 3219,\n  \"sca</w>\": 11001,\n  \"scab\": 31716,\n  \"scaf\": 28981,\n  \"scafe</w>\": 45574,\n  \"scaffolding</w>\": 41687,\n  \"scal\": 10859,\n  \"scala</w>\": 37997,\n  \"scalable</w>\": 44084,\n  \"scale\": 37817,\n  \"scale</w>\": 5879,\n  \"scaled</w>\": 41923,\n  \"scales</w>\": 22891,\n  \"scaling</w>\": 29116,\n  \"scallo\": 19936,\n  \"scallop</w>\": 39544,\n  \"scallops</w>\": 31430,\n  \"scalp</w>\": 38898,\n  \"scam\": 17620,\n  \"scam</w>\": 13215,\n  \"scamp</w>\": 28451,\n  \"scams</w>\": 34395,\n  \"scan\": 10650,\n  \"scan</w>\": 11261,\n  \"scanada</w>\": 27121,\n  \"scand\": 8110,\n  \"scandal\": 35420,\n  \"scandal</w>\": 11622,\n  \"scandals</w>\": 45490,\n  \"scandin\": 32014,\n  \"scandinavian</w>\": 35661,\n  \"scanned</w>\": 43719,\n  \"scanner</w>\": 24185,\n  \"scanning</w>\": 24092,\n  \"scans</w>\": 31251,\n  \"scap\": 35883,\n  \"scape\": 36005,\n  \"scape</w>\": 12314,\n  \"scapes</w>\": 31933,\n  \"scar\": 4171,\n  \"scar</w>\": 18088,\n  \"scarborough</w>\": 24254,\n  \"scarce</w>\": 38572,\n  \"scarcity</w>\": 45812,\n  \"scare\": 33536,\n  \"scare</w>\": 15920,\n  \"scarec\": 38814,\n  \"scarecrow</w>\": 46504,\n  \"scared</w>\": 9870,\n  \"scares</w>\": 34096,\n  \"scarf</w>\": 13365,\n  \"scari\": 27050,\n  \"scariest</w>\": 37213,\n  \"scarlet</w>\": 20389,\n  \"scarlett</w>\": 28325,\n  \"scars</w>\": 20747,\n  \"scarves</w>\": 29249,\n  \"scary</w>\": 9250,\n  \"scat\": 13899,\n  \"scattered</w>\": 22090,\n  \"scavenger</w>\": 36778,\n  \"scc</w>\": 19458,\n  \"scd</w>\": 48422,\n  \"scen\": 2204,\n  \"scenario</w>\": 20456,\n  \"scenarios</w>\": 31346,\n  \"scence</w>\": 33418,\n  \"scene</w>\": 3562,\n  \"scenery</w>\": 16025,\n  \"scenes</w>\": 5415,\n  \"scenic</w>\": 15394,\n  \"scent\": 36277,\n  \"scent</w>\": 7683,\n  \"scented</w>\": 27190,\n  \"scenter</w>\": 23059,\n  \"scentre</w>\": 39371,\n  \"scents</w>\": 26336,\n  \"scep\": 24439,\n  \"scfc</w>\": 38578,\n  \"sch\": 844,\n  \"sch</w>\": 7542,\n  \"scha\": 42809,\n  \"schaf\": 45588,\n  \"schaft</w>\": 41010,\n  \"schal\": 35568,\n  \"schalke</w>\": 41029,\n  \"schallenge</w>\": 43665,\n  \"schan\": 31328,\n  \"schar\": 15085,\n  \"schat</w>\": 31842,\n  \"schau\": 35830,\n  \"sche\": 3038,\n  \"sche</w>\": 7289,\n  \"schedu\": 4207,\n  \"schedule</w>\": 5521,\n  \"scheduled</w>\": 10986,\n  \"schedules</w>\": 28986,\n  \"scheduling</w>\": 32216,\n  \"scheer</w>\": 26776,\n  \"schel\": 39881,\n  \"schel</w>\": 38569,\n  \"schem\": 17720,\n  \"scheme</w>\": 9024,\n  \"schemes</w>\": 22958,\n  \"schen\": 22738,\n  \"scher\": 21925,\n  \"scher</w>\": 21299,\n  \"schi\": 13731,\n  \"schi</w>\": 24984,\n  \"schicago</w>\": 46230,\n  \"schiff</w>\": 39431,\n  \"schild</w>\": 32148,\n  \"schiz\": 33230,\n  \"schizoph\": 40004,\n  \"schizophre\": 41163,\n  \"schle\": 32022,\n  \"schmid\": 17375,\n  \"schmidt</w>\": 18463,\n  \"schnau\": 45745,\n  \"schnei\": 19941,\n  \"schneider</w>\": 22972,\n  \"schnit\": 40903,\n  \"scho\": 2493,\n  \"schoice</w>\": 23860,\n  \"schol\": 4498,\n  \"scholar\": 7192,\n  \"scholar</w>\": 12830,\n  \"scholarly</w>\": 41065,\n  \"scholars</w>\": 13818,\n  \"scholarship</w>\": 9070,\n  \"scholarships</w>\": 17866,\n  \"scholastic</w>\": 35743,\n  \"schoo\": 20721,\n  \"school\": 6063,\n  \"school</w>\": 1228,\n  \"schooled</w>\": 44722,\n  \"schoolers</w>\": 31455,\n  \"schooling</w>\": 28608,\n  \"schools</w>\": 3513,\n  \"schre\": 47685,\n  \"schri\": 25453,\n  \"schro\": 32381,\n  \"schu\": 11318,\n  \"schubert</w>\": 46939,\n  \"schul\": 14945,\n  \"schultz</w>\": 30308,\n  \"schulz</w>\": 39572,\n  \"schumacher</w>\": 39208,\n  \"schumer</w>\": 25313,\n  \"schur\": 42475,\n  \"schwab</w>\": 47602,\n  \"schwar\": 13985,\n  \"schwartz</w>\": 30617,\n  \"schwarz\": 27074,\n  \"schwarzenegger</w>\": 33860,\n  \"schwe\": 25324,\n  \"sci\": 2267,\n  \"sci</w>\": 8309,\n  \"sciart</w>\": 31704,\n  \"scicom\": 28606,\n  \"scicomm</w>\": 29573,\n  \"scien\": 39261,\n  \"science\": 10201,\n  \"science</w>\": 2497,\n  \"sciencefiction</w>\": 39170,\n  \"sciences</w>\": 11481,\n  \"scienti\": 4338,\n  \"scientific</w>\": 9750,\n  \"scientist</w>\": 11083,\n  \"scientists</w>\": 8045,\n  \"sciento\": 36193,\n  \"scientology</w>\": 44694,\n  \"scifi\": 41862,\n  \"scifi</w>\": 12230,\n  \"scion</w>\": 47208,\n  \"sciss\": 25667,\n  \"scissors</w>\": 30867,\n  \"sciutto</w>\": 44392,\n  \"sclerosis</w>\": 39446,\n  \"sclub</w>\": 20017,\n  \"sco\": 1065,\n  \"sco</w>\": 4763,\n  \"scoe</w>\": 31164,\n  \"scol\": 13599,\n  \"scoll</w>\": 44895,\n  \"scollege</w>\": 39536,\n  \"scom</w>\": 26407,\n  \"scon\": 17163,\n  \"scon</w>\": 29272,\n  \"scones</w>\": 36443,\n  \"sconf</w>\": 39704,\n  \"scoo\": 14199,\n  \"scooby</w>\": 34469,\n  \"scoop</w>\": 13829,\n  \"scoops</w>\": 41360,\n  \"scope</w>\": 7979,\n  \"scopes</w>\": 30328,\n  \"scopic</w>\": 23869,\n  \"scopy</w>\": 20018,\n  \"scor\": 8442,\n  \"score\": 12067,\n  \"score</w>\": 4431,\n  \"scoreboard</w>\": 30104,\n  \"scorecard</w>\": 38128,\n  \"scored</w>\": 6143,\n  \"scoreless</w>\": 33469,\n  \"scorer</w>\": 16572,\n  \"scorers</w>\": 26699,\n  \"scores</w>\": 7039,\n  \"scoring</w>\": 9198,\n  \"scorpi\": 15445,\n  \"scorpio</w>\": 34331,\n  \"scorpion</w>\": 28461,\n  \"scorpions</w>\": 45401,\n  \"scorsese</w>\": 45975,\n  \"scot\": 2496,\n  \"scot</w>\": 9271,\n  \"scotch</w>\": 16687,\n  \"scoti\": 46446,\n  \"scotia</w>\": 27859,\n  \"scotland\": 29174,\n  \"scotland</w>\": 4203,\n  \"scots</w>\": 17260,\n  \"scotsman</w>\": 39612,\n  \"scott\": 7775,\n  \"scott</w>\": 3664,\n  \"scotti\": 6227,\n  \"scottish\": 18039,\n  \"scottish</w>\": 7442,\n  \"scottsdale</w>\": 27817,\n  \"scotty\": 39697,\n  \"scotty</w>\": 26836,\n  \"scotus</w>\": 21720,\n  \"scou\": 44909,\n  \"scoun\": 16110,\n  \"scouncil</w>\": 48787,\n  \"scountry</w>\": 40432,\n  \"scour\": 46172,\n  \"scout\": 32213,\n  \"scout</w>\": 10786,\n  \"scouting</w>\": 19072,\n  \"scouts</w>\": 14837,\n  \"scow\": 27929,\n  \"scowboys</w>\": 31386,\n  \"scp</w>\": 45030,\n  \"scr</w>\": 36131,\n  \"scra\": 11187,\n  \"scrabble</w>\": 39488,\n  \"scram\": 17289,\n  \"scramble</w>\": 32688,\n  \"scrambled</w>\": 39026,\n  \"scran\": 41774,\n  \"scranton</w>\": 45274,\n  \"scrap\": 27950,\n  \"scrap</w>\": 21695,\n  \"scrapbook</w>\": 48733,\n  \"scrapped</w>\": 43325,\n  \"scraps</w>\": 40809,\n  \"scrat\": 9572,\n  \"scratch</w>\": 13258,\n  \"scratched</w>\": 48831,\n  \"scratches</w>\": 46556,\n  \"scratching</w>\": 44617,\n  \"scre\": 1795,\n  \"scream\": 31645,\n  \"scream</w>\": 13239,\n  \"screamed</w>\": 35427,\n  \"screaming</w>\": 12891,\n  \"screams</w>\": 23989,\n  \"screen\": 5351,\n  \"screen</w>\": 3750,\n  \"screened</w>\": 31450,\n  \"screening</w>\": 6688,\n  \"screenings</w>\": 27655,\n  \"screenplay</w>\": 30058,\n  \"screens</w>\": 12689,\n  \"screenshot\": 20637,\n  \"screenshot</w>\": 12646,\n  \"screenshots</w>\": 26783,\n  \"screenshotsaturday</w>\": 21406,\n  \"screenwriter</w>\": 37293,\n  \"screenwriting</w>\": 35465,\n  \"screw\": 25529,\n  \"screw</w>\": 14225,\n  \"screwdriver</w>\": 48748,\n  \"screwed</w>\": 30592,\n  \"screws</w>\": 38292,\n  \"scri\": 2139,\n  \"scrib\": 34259,\n  \"scribe</w>\": 36228,\n  \"scribed</w>\": 38334,\n  \"scricket</w>\": 45947,\n  \"scrim\": 21978,\n  \"scrimmage</w>\": 25216,\n  \"scrip\": 11955,\n  \"script</w>\": 8374,\n  \"scripted</w>\": 40513,\n  \"scription</w>\": 26604,\n  \"scriptions</w>\": 39512,\n  \"scripts</w>\": 20109,\n  \"scripture</w>\": 27186,\n  \"scro\": 30768,\n  \"scroll</w>\": 24160,\n  \"scrolling</w>\": 28889,\n  \"scrolls</w>\": 38113,\n  \"scroo\": 42263,\n  \"scru\": 7589,\n  \"scrub</w>\": 23432,\n  \"scrubs</w>\": 37919,\n  \"scrum</w>\": 29047,\n  \"scrump\": 39791,\n  \"scrumptious</w>\": 40987,\n  \"scrutiny</w>\": 34305,\n  \"scs</w>\": 26853,\n  \"sct</w>\": 39284,\n  \"scu\": 8181,\n  \"scu</w>\": 32135,\n  \"scuba\": 39053,\n  \"scuba</w>\": 20559,\n  \"scubadiving</w>\": 49046,\n  \"scue</w>\": 25955,\n  \"scul\": 4948,\n  \"scully</w>\": 36598,\n  \"sculp\": 6093,\n  \"sculpt</w>\": 45044,\n  \"sculpted</w>\": 41296,\n  \"sculpting</w>\": 44389,\n  \"sculptor</w>\": 29409,\n  \"sculpture</w>\": 8757,\n  \"sculptures</w>\": 20378,\n  \"scum</w>\": 29655,\n  \"scumb\": 44525,\n  \"scup</w>\": 21506,\n  \"scur\": 32742,\n  \"scwx</w>\": 41966,\n  \"scy\": 27471,\n  \"sd\": 3080,\n  \"sd</w>\": 4159,\n  \"sda</w>\": 25548,\n  \"sdale</w>\": 12327,\n  \"sday\": 5902,\n  \"sday</w>\": 1376,\n  \"sdays</w>\": 14491,\n  \"sdc</w>\": 40992,\n  \"sdcc</w>\": 13246,\n  \"sden</w>\": 17241,\n  \"sdf</w>\": 34681,\n  \"sdg</w>\": 20177,\n  \"sdgs</w>\": 16261,\n  \"sdk</w>\": 40015,\n  \"sdlive</w>\": 34561,\n  \"sdn</w>\": 41925,\n  \"sdsu</w>\": 41284,\n  \"se\": 567,\n  \"se</w>\": 611,\n  \"sea\": 5970,\n  \"sea</w>\": 2102,\n  \"seab\": 15728,\n  \"seabir\": 42558,\n  \"seac\": 35626,\n  \"seaf\": 9336,\n  \"seafood</w>\": 12472,\n  \"seag\": 15730,\n  \"seagu\": 38076,\n  \"seagull</w>\": 38858,\n  \"seagulls</w>\": 42215,\n  \"seahawks</w>\": 15341,\n  \"seal\": 21381,\n  \"seal</w>\": 10159,\n  \"sealed</w>\": 13358,\n  \"sealing</w>\": 42992,\n  \"seals</w>\": 18179,\n  \"seam\": 13710,\n  \"seam</w>\": 44201,\n  \"seaman</w>\": 47513,\n  \"seamless</w>\": 29373,\n  \"seamus</w>\": 40175,\n  \"sean\": 11406,\n  \"sean</w>\": 6077,\n  \"seanhannity</w>\": 43316,\n  \"seap\": 29983,\n  \"seaport</w>\": 46418,\n  \"sear\": 1612,\n  \"search\": 23129,\n  \"search</w>\": 1920,\n  \"searched</w>\": 28961,\n  \"searches</w>\": 26378,\n  \"searching</w>\": 10626,\n  \"seared</w>\": 29727,\n  \"sears</w>\": 26693,\n  \"seas\": 7329,\n  \"seas</w>\": 9556,\n  \"seascape</w>\": 42593,\n  \"seaside</w>\": 18867,\n  \"season\": 19288,\n  \"season</w>\": 1367,\n  \"seasonal</w>\": 14215,\n  \"seasoned</w>\": 28399,\n  \"seasoning</w>\": 43439,\n  \"seasons</w>\": 8635,\n  \"seat\": 19670,\n  \"seat</w>\": 4922,\n  \"seated</w>\": 23953,\n  \"seater</w>\": 37543,\n  \"seating</w>\": 16240,\n  \"seats</w>\": 6944,\n  \"seattle\": 24388,\n  \"seattle</w>\": 6274,\n  \"seau</w>\": 32263,\n  \"seaw\": 32658,\n  \"seaweed</w>\": 30204,\n  \"seaworld</w>\": 27422,\n  \"seb\": 35766,\n  \"seb</w>\": 25171,\n  \"sebasti\": 10324,\n  \"sebastian\": 43792,\n  \"sebastian</w>\": 13181,\n  \"sebring</w>\": 41086,\n  \"sec\": 2875,\n  \"sec</w>\": 5338,\n  \"seca</w>\": 37847,\n  \"secco</w>\": 27394,\n  \"sece\": 46297,\n  \"seclu\": 42392,\n  \"secon\": 1846,\n  \"second\": 9329,\n  \"second</w>\": 2241,\n  \"secondary</w>\": 13107,\n  \"seconds</w>\": 6541,\n  \"secre\": 2460,\n  \"secret\": 20710,\n  \"secret</w>\": 4145,\n  \"secretari\": 29515,\n  \"secretariat</w>\": 31767,\n  \"secretary</w>\": 6552,\n  \"secretly</w>\": 21400,\n  \"secrets</w>\": 9735,\n  \"secs</w>\": 28665,\n  \"sect</w>\": 15772,\n  \"section\": 34986,\n  \"section</w>\": 4853,\n  \"sectional</w>\": 21876,\n  \"sections</w>\": 20061,\n  \"sector</w>\": 6579,\n  \"sectors</w>\": 22173,\n  \"secu\": 4894,\n  \"secular\": 47483,\n  \"secular</w>\": 27560,\n  \"secur\": 2557,\n  \"secure\": 44763,\n  \"secure</w>\": 7515,\n  \"secured</w>\": 16848,\n  \"secures</w>\": 31567,\n  \"securing</w>\": 24759,\n  \"securities</w>\": 25080,\n  \"security\": 31245,\n  \"security</w>\": 2741,\n  \"sed\": 14034,\n  \"sed</w>\": 1252,\n  \"sedan</w>\": 24237,\n  \"sedg\": 46926,\n  \"sedge</w>\": 45288,\n  \"sedi\": 29269,\n  \"sedly</w>\": 31771,\n  \"sedona</w>\": 46862,\n  \"seduc\": 19933,\n  \"seductive</w>\": 43721,\n  \"see\": 1751,\n  \"see</w>\": 862,\n  \"seed\": 14064,\n  \"seed</w>\": 6488,\n  \"seeded</w>\": 33688,\n  \"seeding</w>\": 40050,\n  \"seedlings</w>\": 47933,\n  \"seeds</w>\": 9128,\n  \"seeing</w>\": 3214,\n  \"seek</w>\": 8839,\n  \"seeker</w>\": 28011,\n  \"seekers</w>\": 20732,\n  \"seeking</w>\": 8592,\n  \"seeks</w>\": 12594,\n  \"seem\": 20043,\n  \"seem</w>\": 7523,\n  \"seemed</w>\": 17240,\n  \"seemingly</w>\": 25917,\n  \"seems</w>\": 4453,\n  \"seen\": 36273,\n  \"seen</w>\": 2041,\n  \"seer</w>\": 32486,\n  \"sees</w>\": 7594,\n  \"seeyou\": 41279,\n  \"sef</w>\": 27453,\n  \"seg\": 10551,\n  \"sega</w>\": 16122,\n  \"segment</w>\": 15615,\n  \"segments</w>\": 43053,\n  \"segreg\": 49117,\n  \"segregation</w>\": 39086,\n  \"segu\": 33156,\n  \"segun\": 43087,\n  \"seh\": 27536,\n  \"seh</w>\": 41430,\n  \"sehun</w>\": 17705,\n  \"sei\": 13130,\n  \"sei</w>\": 15907,\n  \"sein</w>\": 24669,\n  \"seine</w>\": 41378,\n  \"seinfeld</w>\": 33706,\n  \"seis\": 25559,\n  \"seismic</w>\": 38459,\n  \"seiz\": 22171,\n  \"seize</w>\": 26624,\n  \"seized</w>\": 15826,\n  \"seizure</w>\": 36804,\n  \"seizures</w>\": 47199,\n  \"sek\": 45515,\n  \"sek</w>\": 25880,\n  \"sel\": 1000,\n  \"sel</w>\": 4098,\n  \"sela</w>\": 47006,\n  \"selamat</w>\": 37692,\n  \"selangor</w>\": 44402,\n  \"selby</w>\": 43546,\n  \"selca</w>\": 38606,\n  \"selcaday</w>\": 35924,\n  \"seldom</w>\": 48322,\n  \"sele\": 29137,\n  \"selec\": 3014,\n  \"select</w>\": 8690,\n  \"selected</w>\": 6881,\n  \"selecting</w>\": 32696,\n  \"selection</w>\": 6724,\n  \"selections</w>\": 24099,\n  \"selective</w>\": 28686,\n  \"selects</w>\": 32902,\n  \"selen\": 19970,\n  \"selena</w>\": 14677,\n  \"selenagomez</w>\": 27653,\n  \"seley</w>\": 30556,\n  \"self\": 10139,\n  \"self</w>\": 1322,\n  \"selfcare</w>\": 39560,\n  \"selfi\": 3007,\n  \"selfie\": 26735,\n  \"selfie</w>\": 3666,\n  \"selfies\": 46058,\n  \"selfies</w>\": 10050,\n  \"selfish</w>\": 26907,\n  \"selfless</w>\": 34236,\n  \"sell\": 10279,\n  \"sell</w>\": 5119,\n  \"seller</w>\": 11779,\n  \"sellers</w>\": 16562,\n  \"selling</w>\": 4396,\n  \"sells</w>\": 14306,\n  \"selma</w>\": 36652,\n  \"sels</w>\": 42070,\n  \"selves</w>\": 4505,\n  \"sely</w>\": 8402,\n  \"sem\": 8645,\n  \"sem</w>\": 17106,\n  \"sema</w>\": 31816,\n  \"seman\": 29119,\n  \"seman</w>\": 28378,\n  \"semana</w>\": 41780,\n  \"semb\": 36054,\n  \"seme\": 10855,\n  \"sement</w>\": 10714,\n  \"sements</w>\": 31449,\n  \"semester</w>\": 11905,\n  \"semi\": 11023,\n  \"semi</w>\": 6684,\n  \"semic\": 26967,\n  \"semicon\": 34315,\n  \"semiconduc\": 35646,\n  \"semiconductor</w>\": 43551,\n  \"semifinal</w>\": 22935,\n  \"semifinals</w>\": 21863,\n  \"semin\": 5595,\n  \"seminar</w>\": 7269,\n  \"seminars</w>\": 34870,\n  \"seminary</w>\": 31655,\n  \"seminole</w>\": 42956,\n  \"semis</w>\": 24013,\n  \"semit\": 22628,\n  \"semite</w>\": 23721,\n  \"semitic</w>\": 34894,\n  \"semitism</w>\": 25911,\n  \"semper\": 47391,\n  \"sen\": 1057,\n  \"sen</w>\": 2249,\n  \"sena</w>\": 21584,\n  \"senate\": 30703,\n  \"senate</w>\": 6843,\n  \"senator\": 20871,\n  \"senator</w>\": 8495,\n  \"senators</w>\": 16889,\n  \"send\": 27684,\n  \"send</w>\": 3625,\n  \"sending</w>\": 6985,\n  \"sends</w>\": 10817,\n  \"sene\": 25269,\n  \"seneca</w>\": 33419,\n  \"senegal</w>\": 28255,\n  \"senew\": 49313,\n  \"seng\": 43022,\n  \"seng</w>\": 29971,\n  \"senior\": 19865,\n  \"senior</w>\": 3415,\n  \"seniors</w>\": 8138,\n  \"senna</w>\": 36195,\n  \"senpai</w>\": 46562,\n  \"sens\": 5218,\n  \"sens</w>\": 22837,\n  \"sensation</w>\": 19383,\n  \"sensational</w>\": 23051,\n  \"sense\": 29162,\n  \"sense</w>\": 4747,\n  \"sensei</w>\": 36158,\n  \"senses</w>\": 21809,\n  \"sensi\": 38802,\n  \"sensible</w>\": 30635,\n  \"sensing</w>\": 29236,\n  \"sensiti\": 20531,\n  \"sensitive</w>\": 13734,\n  \"sensitivity</w>\": 27788,\n  \"sensor</w>\": 15330,\n  \"sensors</w>\": 20356,\n  \"sensory</w>\": 21831,\n  \"sensu\": 28157,\n  \"sensual</w>\": 40860,\n  \"sent\": 6200,\n  \"sent</w>\": 3676,\n  \"sentence</w>\": 12737,\n  \"sentenced</w>\": 17773,\n  \"sentences</w>\": 25858,\n  \"sentencing</w>\": 34394,\n  \"senti\": 19042,\n  \"sentim\": 25102,\n  \"sentiment</w>\": 25949,\n  \"sentimental</w>\": 40070,\n  \"sentiments</w>\": 47450,\n  \"sentin\": 20042,\n  \"sentinel</w>\": 23123,\n  \"senting</w>\": 3924,\n  \"seo\": 24743,\n  \"seo</w>\": 8622,\n  \"seok\": 34697,\n  \"seok</w>\": 22482,\n  \"seokjin</w>\": 45584,\n  \"seoul</w>\": 13253,\n  \"sep\": 3212,\n  \"sep</w>\": 10434,\n  \"separ\": 6859,\n  \"separate</w>\": 13886,\n  \"separated</w>\": 22163,\n  \"separately</w>\": 41904,\n  \"separates</w>\": 45365,\n  \"separati\": 39377,\n  \"separating</w>\": 43480,\n  \"separation</w>\": 22007,\n  \"sephora</w>\": 38414,\n  \"sepsis</w>\": 40205,\n  \"sept</w>\": 5380,\n  \"septe\": 3672,\n  \"september</w>\": 3707,\n  \"septic</w>\": 34690,\n  \"sepul\": 47360,\n  \"seq</w>\": 44379,\n  \"sequ\": 5491,\n  \"seque\": 44662,\n  \"sequel</w>\": 15701,\n  \"sequence</w>\": 18833,\n  \"sequences</w>\": 47306,\n  \"sequencing</w>\": 33484,\n  \"sequo\": 32781,\n  \"sequoia</w>\": 42404,\n  \"ser\": 803,\n  \"ser</w>\": 2771,\n  \"sera</w>\": 28250,\n  \"serbia</w>\": 19038,\n  \"serbian</w>\": 33687,\n  \"sere\": 35770,\n  \"seren\": 7880,\n  \"serena</w>\": 19519,\n  \"serenawilliams</w>\": 48316,\n  \"serendip\": 45805,\n  \"serendipity</w>\": 49386,\n  \"serene</w>\": 28269,\n  \"serenity</w>\": 24187,\n  \"serge\": 13477,\n  \"serge</w>\": 35700,\n  \"sergeant</w>\": 22049,\n  \"sergei</w>\": 39870,\n  \"sergey</w>\": 35390,\n  \"sergi\": 47675,\n  \"sergio</w>\": 18359,\n  \"seri\": 2763,\n  \"seri</w>\": 37509,\n  \"serial</w>\": 14216,\n  \"serie</w>\": 19752,\n  \"seriea</w>\": 32660,\n  \"series</w>\": 1857,\n  \"serious\": 47421,\n  \"serious</w>\": 4770,\n  \"seriously</w>\": 4885,\n  \"sermon</w>\": 24884,\n  \"sero\": 48883,\n  \"serpent\": 37084,\n  \"serpent</w>\": 35364,\n  \"serra</w>\": 39851,\n  \"serrano</w>\": 44236,\n  \"sers</w>\": 13509,\n  \"serum</w>\": 25385,\n  \"serv\": 1297,\n  \"serv</w>\": 24571,\n  \"servant</w>\": 20810,\n  \"servants</w>\": 29652,\n  \"serve\": 39202,\n  \"serve</w>\": 2838,\n  \"served</w>\": 4740,\n  \"server\": 36458,\n  \"server</w>\": 8398,\n  \"serverless</w>\": 49243,\n  \"servers</w>\": 22262,\n  \"serves</w>\": 9915,\n  \"servic\": 27115,\n  \"service\": 21496,\n  \"service</w>\": 2086,\n  \"serviced</w>\": 44687,\n  \"services</w>\": 3100,\n  \"servicing</w>\": 41300,\n  \"serving</w>\": 5722,\n  \"sery</w>\": 14279,\n  \"ses\": 23708,\n  \"ses</w>\": 1386,\n  \"sesame</w>\": 21706,\n  \"sese</w>\": 37128,\n  \"sesh</w>\": 24274,\n  \"session</w>\": 2550,\n  \"sessions</w>\": 6327,\n  \"set\": 7965,\n  \"set</w>\": 1167,\n  \"setback</w>\": 43605,\n  \"seth\": 20005,\n  \"seth</w>\": 11870,\n  \"sethu\": 38933,\n  \"setlist</w>\": 33141,\n  \"seton</w>\": 43799,\n  \"sets</w>\": 4650,\n  \"sett\": 4984,\n  \"sett</w>\": 17567,\n  \"sette</w>\": 14613,\n  \"setter</w>\": 23153,\n  \"settes</w>\": 44145,\n  \"setti</w>\": 45170,\n  \"setting</w>\": 5264,\n  \"settings</w>\": 18628,\n  \"settle</w>\": 15075,\n  \"settled</w>\": 18310,\n  \"settlement</w>\": 16494,\n  \"settlements</w>\": 36605,\n  \"settlers</w>\": 35671,\n  \"settles</w>\": 41498,\n  \"settling</w>\": 22036,\n  \"setup</w>\": 11092,\n  \"seu</w>\": 31539,\n  \"seul\": 48975,\n  \"seum</w>\": 18838,\n  \"seun\": 24209,\n  \"seung\": 32393,\n  \"seung</w>\": 33711,\n  \"seungri</w>\": 41627,\n  \"seuss</w>\": 34441,\n  \"sev\": 26585,\n  \"sev</w>\": 37600,\n  \"seva</w>\": 42604,\n  \"seve\": 21458,\n  \"seve</w>\": 22468,\n  \"sevel\": 17439,\n  \"seven\": 7874,\n  \"seven</w>\": 5757,\n  \"sevens</w>\": 29911,\n  \"sevent\": 43048,\n  \"seventeen</w>\": 19337,\n  \"seventh</w>\": 17568,\n  \"seventy</w>\": 47170,\n  \"sever\": 3250,\n  \"sever</w>\": 45557,\n  \"several</w>\": 5560,\n  \"severance</w>\": 26194,\n  \"severe</w>\": 6215,\n  \"severely</w>\": 24417,\n  \"severn</w>\": 34626,\n  \"severy\": 34207,\n  \"sevilla</w>\": 24947,\n  \"seville</w>\": 34988,\n  \"sew</w>\": 28640,\n  \"sewage</w>\": 32777,\n  \"sewer</w>\": 28294,\n  \"sewing</w>\": 15974,\n  \"sewn</w>\": 42118,\n  \"sex\": 3548,\n  \"sex</w>\": 5937,\n  \"sexi\": 20562,\n  \"sexiest</w>\": 25426,\n  \"sexism</w>\": 32059,\n  \"sexist</w>\": 33047,\n  \"sexu\": 14741,\n  \"sexual</w>\": 6749,\n  \"sexuality</w>\": 21244,\n  \"sexually</w>\": 23032,\n  \"sexy\": 21019,\n  \"sexy</w>\": 38127,\n  \"sey\": 6317,\n  \"sey</w>\": 2258,\n  \"seychel\": 36809,\n  \"seychelles</w>\": 38519,\n  \"seye</w>\": 35604,\n  \"seym\": 22657,\n  \"seymour</w>\": 25850,\n  \"seys</w>\": 15081,\n  \"sez</w>\": 42377,\n  \"seÃ±\": 43368,\n  \"sf\": 4435,\n  \"sf</w>\": 4915,\n  \"sfa</w>\": 32675,\n  \"sfam</w>\": 37649,\n  \"sfb</w>\": 27930,\n  \"sfc</w>\": 14129,\n  \"sfest</w>\": 49024,\n  \"sff</w>\": 42056,\n  \"sfgiants</w>\": 20923,\n  \"sfield</w>\": 11801,\n  \"sfo</w>\": 39182,\n  \"sfootball</w>\": 45259,\n  \"sfor\": 9115,\n  \"sford</w>\": 28917,\n  \"sforsale</w>\": 28888,\n  \"sfw</w>\": 18073,\n  \"sfx</w>\": 37995,\n  \"sg\": 9599,\n  \"sg</w>\": 7611,\n  \"sga</w>\": 33049,\n  \"sgate</w>\": 27558,\n  \"sgh</w>\": 47590,\n  \"sgo\": 5393,\n  \"sgo</w>\": 21044,\n  \"sgt</w>\": 13748,\n  \"sh\": 552,\n  \"sh</w>\": 849,\n  \"sha\": 1514,\n  \"sha</w>\": 3337,\n  \"shaa</w>\": 44221,\n  \"shab\": 8323,\n  \"shabbat</w>\": 38042,\n  \"shabby</w>\": 28838,\n  \"shack\": 23866,\n  \"shack</w>\": 18785,\n  \"shad\": 3182,\n  \"shad</w>\": 23874,\n  \"shade\": 34554,\n  \"shade</w>\": 10097,\n  \"shaded</w>\": 43506,\n  \"shades\": 46608,\n  \"shades</w>\": 9270,\n  \"shadesof\": 45180,\n  \"shading</w>\": 37348,\n  \"shado\": 9325,\n  \"shadow\": 15243,\n  \"shadow</w>\": 7068,\n  \"shadowhun\": 19931,\n  \"shadowhunters</w>\": 24834,\n  \"shadowing</w>\": 46092,\n  \"shadows</w>\": 12971,\n  \"shady</w>\": 22158,\n  \"shaf\": 12032,\n  \"shaft</w>\": 21545,\n  \"shag\": 22439,\n  \"shaggy</w>\": 42662,\n  \"shah\": 13203,\n  \"shah</w>\": 8439,\n  \"shahe\": 23643,\n  \"shaheed</w>\": 30060,\n  \"shaheer</w>\": 43969,\n  \"shahi</w>\": 46972,\n  \"shahid\": 25696,\n  \"shahid</w>\": 27138,\n  \"shahidkapoor</w>\": 29892,\n  \"shahzad</w>\": 45915,\n  \"shai</w>\": 47941,\n  \"shaikh</w>\": 45712,\n  \"shail\": 37603,\n  \"shair</w>\": 43135,\n  \"shak\": 8385,\n  \"shake\": 8206,\n  \"shake</w>\": 8251,\n  \"shaken</w>\": 38237,\n  \"shaker</w>\": 26210,\n  \"shakers</w>\": 38411,\n  \"shakes</w>\": 19668,\n  \"shakespe\": 9890,\n  \"shakespeare\": 22499,\n  \"shakespeare</w>\": 12488,\n  \"shakespearesunday</w>\": 32320,\n  \"shaking</w>\": 19101,\n  \"shakira</w>\": 40795,\n  \"shakti\": 48593,\n  \"shakti</w>\": 32458,\n  \"shakur</w>\": 48915,\n  \"shal\": 15056,\n  \"shal</w>\": 28175,\n  \"shale</w>\": 32864,\n  \"shall</w>\": 4742,\n  \"shallow</w>\": 23730,\n  \"shalom</w>\": 31339,\n  \"sham\": 6453,\n  \"sham</w>\": 9005,\n  \"shaman</w>\": 48727,\n  \"shambles</w>\": 40799,\n  \"shame\": 14776,\n  \"shame</w>\": 7593,\n  \"shameful</w>\": 28283,\n  \"shameless</w>\": 25380,\n  \"shaming</w>\": 40553,\n  \"shampoo</w>\": 23944,\n  \"shamrock</w>\": 34199,\n  \"shan\": 5171,\n  \"shan</w>\": 8834,\n  \"shana</w>\": 44835,\n  \"shand\": 29101,\n  \"shane\": 26863,\n  \"shane</w>\": 11572,\n  \"shang\": 11141,\n  \"shanghai</w>\": 12742,\n  \"shani\": 46665,\n  \"shank</w>\": 24685,\n  \"shankar</w>\": 24108,\n  \"shann\": 9932,\n  \"shannon\": 22842,\n  \"shannon</w>\": 13581,\n  \"shant\": 36610,\n  \"shap\": 5581,\n  \"shape\": 26925,\n  \"shape</w>\": 6448,\n  \"shaped</w>\": 10127,\n  \"shapes</w>\": 15377,\n  \"shaping</w>\": 18632,\n  \"shapiro</w>\": 32110,\n  \"shaq\": 46402,\n  \"shaq</w>\": 26843,\n  \"shar\": 1669,\n  \"shar</w>\": 36542,\n  \"shara</w>\": 48849,\n  \"sharapo\": 36489,\n  \"sharapova</w>\": 36671,\n  \"shard</w>\": 42207,\n  \"share\": 7585,\n  \"share</w>\": 1978,\n  \"shared</w>\": 5368,\n  \"shareholder</w>\": 38241,\n  \"shareholders</w>\": 34778,\n  \"sharepoint</w>\": 39213,\n  \"shares</w>\": 4974,\n  \"sharethe\": 49277,\n  \"shareyour\": 45890,\n  \"shari\": 27738,\n  \"shari</w>\": 47390,\n  \"sharia</w>\": 37244,\n  \"sharif</w>\": 15501,\n  \"sharing</w>\": 3567,\n  \"sharjah</w>\": 33420,\n  \"shark\": 15836,\n  \"shark</w>\": 7980,\n  \"sharks</w>\": 10047,\n  \"sharkweek</w>\": 39571,\n  \"sharma</w>\": 10105,\n  \"sharon\": 28722,\n  \"sharon</w>\": 14138,\n  \"sharp\": 17126,\n  \"sharp</w>\": 8157,\n  \"sharpe</w>\": 34374,\n  \"sharpen\": 41465,\n  \"sharpie</w>\": 46858,\n  \"sharply</w>\": 37185,\n  \"shasta</w>\": 46727,\n  \"shat\": 12169,\n  \"shat</w>\": 44388,\n  \"shatter</w>\": 45008,\n  \"shattered</w>\": 26820,\n  \"shau\": 13750,\n  \"shaun\": 23446,\n  \"shaun</w>\": 16669,\n  \"shav\": 11410,\n  \"shave</w>\": 17735,\n  \"shaved</w>\": 25571,\n  \"shaving</w>\": 24261,\n  \"shaw\": 6122,\n  \"shaw</w>\": 6805,\n  \"shawa</w>\": 46413,\n  \"shawl</w>\": 35132,\n  \"shawn\": 16677,\n  \"shawn</w>\": 10970,\n  \"shawnee</w>\": 48060,\n  \"shawnmendes</w>\": 27277,\n  \"shawty</w>\": 38026,\n  \"shay\": 10778,\n  \"shay</w>\": 18361,\n  \"shaykh</w>\": 47223,\n  \"shaz\": 18618,\n  \"shazam</w>\": 29063,\n  \"shc</w>\": 43419,\n  \"shd</w>\": 37729,\n  \"she\": 1729,\n  \"she</w>\": 1043,\n  \"shea</w>\": 20407,\n  \"shead\": 44287,\n  \"shead</w>\": 20434,\n  \"shealth\": 41743,\n  \"shealth</w>\": 22197,\n  \"shear\": 27974,\n  \"shear</w>\": 32108,\n  \"shearer</w>\": 40505,\n  \"sheath</w>\": 45637,\n  \"shed\": 16586,\n  \"shed</w>\": 1492,\n  \"shedding</w>\": 33608,\n  \"sheds</w>\": 25921,\n  \"shee\": 23450,\n  \"shee</w>\": 34321,\n  \"sheed</w>\": 26105,\n  \"sheehan</w>\": 41809,\n  \"sheen</w>\": 25025,\n  \"sheep\": 23604,\n  \"sheep</w>\": 9629,\n  \"sheer</w>\": 17577,\n  \"sheeran</w>\": 18561,\n  \"sheet</w>\": 7298,\n  \"sheets</w>\": 12744,\n  \"shef\": 8237,\n  \"sheff\": 38844,\n  \"sheff</w>\": 43821,\n  \"sheffiel\": 26940,\n  \"sheffield\": 41763,\n  \"sheffield</w>\": 10420,\n  \"sheffieldissuper</w>\": 33628,\n  \"sheh\": 31667,\n  \"sheikh</w>\": 15031,\n  \"sheil\": 42765,\n  \"sheila</w>\": 25734,\n  \"shek</w>\": 33285,\n  \"shel\": 3159,\n  \"shelby\": 36906,\n  \"shelby</w>\": 16885,\n  \"sheldon</w>\": 25079,\n  \"shelf</w>\": 10955,\n  \"shell\": 23374,\n  \"shell</w>\": 6648,\n  \"shelley</w>\": 22497,\n  \"shelling</w>\": 43166,\n  \"shells</w>\": 19265,\n  \"shelly</w>\": 37461,\n  \"shelter</w>\": 8599,\n  \"sheltered</w>\": 48070,\n  \"shelters</w>\": 24312,\n  \"shelton</w>\": 24471,\n  \"shelves</w>\": 16225,\n  \"shem</w>\": 40299,\n  \"shen\": 10154,\n  \"shen</w>\": 31098,\n  \"shenan\": 20965,\n  \"shenando\": 44666,\n  \"shenanigans</w>\": 26590,\n  \"shenko</w>\": 39751,\n  \"shenmue</w>\": 48279,\n  \"shenzhen</w>\": 38970,\n  \"shep\": 33757,\n  \"shep</w>\": 44857,\n  \"shepard</w>\": 26810,\n  \"shepher\": 11008,\n  \"shepherd</w>\": 13242,\n  \"shepherds</w>\": 42792,\n  \"sheppard</w>\": 37304,\n  \"sher\": 3570,\n  \"sher</w>\": 4510,\n  \"sheraton</w>\": 39400,\n  \"shere</w>\": 21507,\n  \"sheri\": 9235,\n  \"sheridan</w>\": 27085,\n  \"sheriff</w>\": 10309,\n  \"sherlock</w>\": 17294,\n  \"sherman</w>\": 17822,\n  \"sherry\": 44348,\n  \"sherry</w>\": 24689,\n  \"shers</w>\": 14141,\n  \"sherwood</w>\": 24527,\n  \"sheryl</w>\": 39773,\n  \"shes\": 45514,\n  \"shes</w>\": 2502,\n  \"shet\": 15850,\n  \"shetland</w>\": 29595,\n  \"shetty</w>\": 25533,\n  \"shev\": 45182,\n  \"sheva</w>\": 45132,\n  \"shh</w>\": 35025,\n  \"shhh</w>\": 36932,\n  \"shi\": 823,\n  \"shi</w>\": 3533,\n  \"shia</w>\": 23791,\n  \"shibu\": 36177,\n  \"shibuya</w>\": 41623,\n  \"shie</w>\": 26638,\n  \"shiel\": 33413,\n  \"shield</w>\": 8670,\n  \"shields</w>\": 19085,\n  \"shies</w>\": 35312,\n  \"shif\": 35317,\n  \"shift\": 43767,\n  \"shift</w>\": 6905,\n  \"shifted</w>\": 34429,\n  \"shifter</w>\": 48944,\n  \"shifting</w>\": 21992,\n  \"shifts</w>\": 23957,\n  \"shik</w>\": 36980,\n  \"shil\": 14370,\n  \"shill\": 32121,\n  \"shill</w>\": 30090,\n  \"shilpa\": 47062,\n  \"shilpa</w>\": 40690,\n  \"shim\": 11986,\n  \"shim</w>\": 32780,\n  \"shima</w>\": 14382,\n  \"shimano</w>\": 48904,\n  \"shimi</w>\": 40517,\n  \"shimmer</w>\": 38792,\n  \"shin\": 5664,\n  \"shin</w>\": 11784,\n  \"shinde</w>\": 41516,\n  \"shine\": 17582,\n  \"shine</w>\": 3780,\n  \"shinee</w>\": 19660,\n  \"shines</w>\": 16015,\n  \"shing\": 38641,\n  \"shing</w>\": 1743,\n  \"shining</w>\": 10485,\n  \"shino\": 43074,\n  \"shiny</w>\": 12190,\n  \"ship\": 7645,\n  \"ship</w>\": 1158,\n  \"shipment</w>\": 28553,\n  \"shipp\": 34709,\n  \"shipped</w>\": 15279,\n  \"shippers</w>\": 44789,\n  \"shipping</w>\": 5721,\n  \"ships</w>\": 3262,\n  \"shipwreck</w>\": 48878,\n  \"shipy\": 26828,\n  \"shipyard</w>\": 31273,\n  \"shir\": 1956,\n  \"shiraz</w>\": 35618,\n  \"shire\": 11975,\n  \"shire</w>\": 2968,\n  \"shirehour</w>\": 32456,\n  \"shirley</w>\": 18189,\n  \"shiro</w>\": 26048,\n  \"shirt\": 27576,\n  \"shirt</w>\": 2523,\n  \"shirtless</w>\": 28959,\n  \"shirts</w>\": 5803,\n  \"shistory</w>\": 34979,\n  \"shiv\": 18042,\n  \"shiv</w>\": 37121,\n  \"shiva\": 33881,\n  \"shiva</w>\": 21174,\n  \"shka</w>\": 38944,\n  \"shld</w>\": 49359,\n  \"shma</w>\": 48074,\n  \"shment</w>\": 8802,\n  \"shments</w>\": 18822,\n  \"sho\": 719,\n  \"sho</w>\": 13756,\n  \"shock\": 19617,\n  \"shock</w>\": 8736,\n  \"shocked</w>\": 15787,\n  \"shocker</w>\": 37971,\n  \"shockey</w>\": 22258,\n  \"shocking</w>\": 13394,\n  \"shocks</w>\": 31886,\n  \"shoe\": 16308,\n  \"shoe</w>\": 7342,\n  \"shoes\": 49391,\n  \"shoes</w>\": 4079,\n  \"shol\": 21472,\n  \"sholm</w>\": 44139,\n  \"shome</w>\": 42701,\n  \"shon\": 19526,\n  \"shon</w>\": 37621,\n  \"shone</w>\": 47173,\n  \"shoo\": 1975,\n  \"shook</w>\": 20730,\n  \"shoops</w>\": 29956,\n  \"shoot\": 12531,\n  \"shoot</w>\": 3704,\n  \"shooter</w>\": 13645,\n  \"shooters</w>\": 31902,\n  \"shooting</w>\": 3992,\n  \"shootings</w>\": 26753,\n  \"shootout</w>\": 20666,\n  \"shoots</w>\": 14144,\n  \"shop\": 5738,\n  \"shop</w>\": 1557,\n  \"shopify</w>\": 47949,\n  \"shoplocal</w>\": 21775,\n  \"shopp\": 38486,\n  \"shoppe</w>\": 38236,\n  \"shopped</w>\": 28088,\n  \"shopper</w>\": 24346,\n  \"shoppers</w>\": 22316,\n  \"shopping\": 42101,\n  \"shopping</w>\": 4266,\n  \"shops</w>\": 6467,\n  \"shopsmall</w>\": 35942,\n  \"shor\": 3209,\n  \"shore\": 14717,\n  \"shore</w>\": 5928,\n  \"shored\": 33140,\n  \"shoreditch</w>\": 35042,\n  \"shoreline</w>\": 34807,\n  \"shores</w>\": 18102,\n  \"short\": 6803,\n  \"short</w>\": 3005,\n  \"shortage</w>\": 19910,\n  \"shortages</w>\": 38730,\n  \"shortcuts</w>\": 45793,\n  \"shorten</w>\": 41711,\n  \"shorter</w>\": 20350,\n  \"shortest</w>\": 33717,\n  \"shortfilm</w>\": 37204,\n  \"shorth\": 37397,\n  \"shortlist</w>\": 28163,\n  \"shortlisted</w>\": 20631,\n  \"shortly</w>\": 11967,\n  \"shorts</w>\": 9680,\n  \"shorty</w>\": 33502,\n  \"shot\": 9805,\n  \"shot</w>\": 2000,\n  \"shotel</w>\": 42365,\n  \"shotgun</w>\": 21643,\n  \"shots</w>\": 5342,\n  \"shou\": 3890,\n  \"shoul\": 29847,\n  \"should\": 14947,\n  \"should</w>\": 1535,\n  \"shoulder</w>\": 8476,\n  \"shoulders</w>\": 18738,\n  \"shouldn</w>\": 9416,\n  \"shour</w>\": 20025,\n  \"shouse</w>\": 28671,\n  \"shout\": 7335,\n  \"shout</w>\": 5214,\n  \"shouted</w>\": 44397,\n  \"shouting</w>\": 26464,\n  \"shoutout</w>\": 8274,\n  \"shouts</w>\": 26709,\n  \"shovel</w>\": 31778,\n  \"show\": 2133,\n  \"show</w>\": 1080,\n  \"showbiz</w>\": 34156,\n  \"showcas\": 14290,\n  \"showcase</w>\": 7265,\n  \"showcased</w>\": 35786,\n  \"showcases</w>\": 26266,\n  \"showcasing</w>\": 17036,\n  \"showdown</w>\": 15576,\n  \"showed</w>\": 7150,\n  \"shower</w>\": 7777,\n  \"showers</w>\": 9893,\n  \"showing</w>\": 3649,\n  \"shown</w>\": 8506,\n  \"showroom</w>\": 16821,\n  \"shows</w>\": 2665,\n  \"showtime\": 40576,\n  \"showtime</w>\": 15442,\n  \"showyour\": 46733,\n  \"shp</w>\": 38341,\n  \"shq</w>\": 21145,\n  \"shr\": 10118,\n  \"shra\": 21360,\n  \"shradd\": 28172,\n  \"shraddha\": 35208,\n  \"shraddhakapoor</w>\": 40385,\n  \"shre\": 12101,\n  \"shred\": 19756,\n  \"shred</w>\": 33017,\n  \"shredded</w>\": 31772,\n  \"shredding</w>\": 45534,\n  \"shree</w>\": 37410,\n  \"shrek</w>\": 35009,\n  \"shrews\": 26411,\n  \"shrewsbury</w>\": 30921,\n  \"shri\": 8838,\n  \"shri</w>\": 11424,\n  \"shrimp</w>\": 12727,\n  \"shrin\": 24865,\n  \"shrine</w>\": 16156,\n  \"shrink</w>\": 34957,\n  \"shrinking</w>\": 41243,\n  \"shrm</w>\": 44163,\n  \"shro\": 15259,\n  \"shroff</w>\": 32081,\n  \"shrop\": 22630,\n  \"shropshire</w>\": 26344,\n  \"shru\": 14911,\n  \"shrub</w>\": 41464,\n  \"shrubs</w>\": 47975,\n  \"shrun\": 46767,\n  \"shs</w>\": 16184,\n  \"sht</w>\": 44210,\n  \"shti</w>\": 38927,\n  \"shu\": 2872,\n  \"shu</w>\": 17651,\n  \"shua</w>\": 33771,\n  \"shub</w>\": 40552,\n  \"shud</w>\": 45782,\n  \"shuff\": 42641,\n  \"shuffle</w>\": 21681,\n  \"shui</w>\": 45473,\n  \"shuk\": 29927,\n  \"shukla</w>\": 46829,\n  \"shul\": 30721,\n  \"shum\": 37383,\n  \"shun\": 24479,\n  \"shun</w>\": 39594,\n  \"shur\": 41032,\n  \"shut\": 8702,\n  \"shut</w>\": 8282,\n  \"shutdown</w>\": 16051,\n  \"shutout</w>\": 24385,\n  \"shuts</w>\": 28313,\n  \"shutt\": 31866,\n  \"shutter\": 36235,\n  \"shutter</w>\": 33902,\n  \"shutters</w>\": 46894,\n  \"shutting</w>\": 31383,\n  \"shuttle</w>\": 15842,\n  \"shwar</w>\": 41640,\n  \"shy\": 22678,\n  \"shy</w>\": 9682,\n  \"si\": 564,\n  \"si</w>\": 2990,\n  \"sia</w>\": 2357,\n  \"siam\": 29686,\n  \"siam</w>\": 48248,\n  \"siamese</w>\": 43161,\n  \"sian\": 28510,\n  \"sian</w>\": 6221,\n  \"sians</w>\": 26583,\n  \"sias</w>\": 28645,\n  \"siber\": 22206,\n  \"siberia</w>\": 39969,\n  \"siberian</w>\": 34058,\n  \"sibl\": 14338,\n  \"sible</w>\": 14507,\n  \"sibling\": 43060,\n  \"sibling</w>\": 23779,\n  \"siblings</w>\": 17156,\n  \"sic\": 8278,\n  \"sic</w>\": 1118,\n  \"sica</w>\": 34125,\n  \"sical</w>\": 33875,\n  \"sichuan</w>\": 48950,\n  \"sicilian</w>\": 45292,\n  \"sicily</w>\": 23179,\n  \"sick\": 11143,\n  \"sick</w>\": 5359,\n  \"sickest</w>\": 47972,\n  \"sickle</w>\": 41459,\n  \"sickness</w>\": 28898,\n  \"sics</w>\": 26297,\n  \"sid\": 10117,\n  \"sid</w>\": 15119,\n  \"sidd\": 19842,\n  \"siddi\": 35227,\n  \"side\": 5869,\n  \"side</w>\": 1145,\n  \"sided</w>\": 21061,\n  \"sidekick</w>\": 44683,\n  \"sidel\": 43557,\n  \"sideline</w>\": 32056,\n  \"sidelines</w>\": 31046,\n  \"sider</w>\": 30581,\n  \"siders</w>\": 41249,\n  \"sides</w>\": 7578,\n  \"sideshow</w>\": 46789,\n  \"sidewalk</w>\": 23278,\n  \"sidewalks</w>\": 43583,\n  \"sideways</w>\": 35593,\n  \"siding</w>\": 38758,\n  \"sidney</w>\": 22598,\n  \"sie\": 8533,\n  \"sie</w>\": 5685,\n  \"sieg\": 49203,\n  \"siege</w>\": 18460,\n  \"siegel</w>\": 48559,\n  \"siem\": 18434,\n  \"siemens</w>\": 30147,\n  \"siempre</w>\": 44030,\n  \"siena</w>\": 33336,\n  \"sienna</w>\": 40373,\n  \"sier\": 10028,\n  \"sier</w>\": 7444,\n  \"sierra</w>\": 13552,\n  \"siers</w>\": 35923,\n  \"sies</w>\": 16367,\n  \"siest</w>\": 18323,\n  \"sif</w>\": 29300,\n  \"sig\": 872,\n  \"sig</w>\": 19145,\n  \"sigh\": 36303,\n  \"sigh</w>\": 15505,\n  \"sighs</w>\": 44579,\n  \"sight\": 16897,\n  \"sight</w>\": 6329,\n  \"sighted</w>\": 33034,\n  \"sighting</w>\": 17507,\n  \"sightings</w>\": 30004,\n  \"sights</w>\": 17364,\n  \"sightseeing</w>\": 34210,\n  \"sigma\": 45075,\n  \"sigma</w>\": 15697,\n  \"sign\": 5538,\n  \"sign</w>\": 2292,\n  \"signage</w>\": 21156,\n  \"signal</w>\": 10781,\n  \"signaling</w>\": 38492,\n  \"signalling</w>\": 48426,\n  \"signals</w>\": 17150,\n  \"signation</w>\": 24347,\n  \"signature</w>\": 9189,\n  \"signatures</w>\": 21865,\n  \"signed</w>\": 3163,\n  \"signee</w>\": 39778,\n  \"signi\": 34023,\n  \"signific\": 6374,\n  \"significance</w>\": 23769,\n  \"significant</w>\": 8735,\n  \"significantly</w>\": 16187,\n  \"signing</w>\": 4401,\n  \"signingday</w>\": 40282,\n  \"signings</w>\": 27731,\n  \"signs</w>\": 4659,\n  \"signup</w>\": 40791,\n  \"sigue</w>\": 49401,\n  \"sii</w>\": 36672,\n  \"sik\": 19974,\n  \"sik</w>\": 22413,\n  \"sika</w>\": 31144,\n  \"sikh</w>\": 21829,\n  \"sikhs</w>\": 45426,\n  \"sil\": 1556,\n  \"sil</w>\": 8315,\n  \"sila</w>\": 41754,\n  \"sile\": 37620,\n  \"silen\": 39048,\n  \"silence</w>\": 8462,\n  \"silenced</w>\": 45415,\n  \"silent\": 30352,\n  \"silent</w>\": 8487,\n  \"silently</w>\": 42640,\n  \"silhou\": 20589,\n  \"silhouette</w>\": 26149,\n  \"silic\": 23830,\n  \"silicon\": 32412,\n  \"silicon</w>\": 17888,\n  \"silicone</w>\": 28221,\n  \"silk\": 25891,\n  \"silk</w>\": 9743,\n  \"silky</w>\": 29554,\n  \"sill\": 42468,\n  \"sill</w>\": 48024,\n  \"silly</w>\": 11883,\n  \"silon</w>\": 31841,\n  \"sils</w>\": 39708,\n  \"silva</w>\": 16489,\n  \"silve\": 37697,\n  \"silver\": 7525,\n  \"silver</w>\": 3467,\n  \"silverado</w>\": 46160,\n  \"silverstone</w>\": 29666,\n  \"silvia</w>\": 37289,\n  \"sim\": 5026,\n  \"sim</w>\": 10740,\n  \"sima</w>\": 35871,\n  \"simba</w>\": 39492,\n  \"simcoe</w>\": 47148,\n  \"sime\": 28329,\n  \"simi</w>\": 38073,\n  \"simil\": 7202,\n  \"similar</w>\": 8547,\n  \"similarities</w>\": 34716,\n  \"simm\": 13001,\n  \"simmons</w>\": 14699,\n  \"simo</w>\": 37171,\n  \"simon\": 8796,\n  \"simon</w>\": 6668,\n  \"simona</w>\": 46277,\n  \"simone</w>\": 19062,\n  \"simons</w>\": 33097,\n  \"simp\": 2542,\n  \"simple\": 19018,\n  \"simple</w>\": 4129,\n  \"simpler</w>\": 35489,\n  \"simplest</w>\": 39588,\n  \"simpli\": 16868,\n  \"simplicity</w>\": 21262,\n  \"simplified</w>\": 36647,\n  \"simplify</w>\": 35479,\n  \"simply\": 25637,\n  \"simply</w>\": 6151,\n  \"simpson\": 41805,\n  \"simpson</w>\": 11750,\n  \"simpsons</w>\": 21092,\n  \"sims</w>\": 14021,\n  \"simul\": 9845,\n  \"simulated</w>\": 46395,\n  \"simulation</w>\": 18610,\n  \"simulator</w>\": 20821,\n  \"simultaneous</w>\": 48816,\n  \"simultaneously</w>\": 28575,\n  \"sin\": 1303,\n  \"sin</w>\": 3421,\n  \"sina</w>\": 19541,\n  \"sinai</w>\": 33226,\n  \"sinatra</w>\": 27262,\n  \"sinc</w>\": 30464,\n  \"since</w>\": 1855,\n  \"sincere\": 24513,\n  \"sincere</w>\": 24886,\n  \"sincerely</w>\": 25673,\n  \"sinclair</w>\": 23100,\n  \"sind\": 39598,\n  \"sind</w>\": 30877,\n  \"sindh</w>\": 20754,\n  \"sindia</w>\": 48038,\n  \"sine\": 22741,\n  \"sine</w>\": 33793,\n  \"sinfo</w>\": 47178,\n  \"sing\": 1387,\n  \"sing</w>\": 1197,\n  \"singapo\": 27861,\n  \"singapore\": 28879,\n  \"singapore</w>\": 6754,\n  \"singer\": 33880,\n  \"singer</w>\": 5108,\n  \"singers</w>\": 15613,\n  \"singersongwriter</w>\": 44585,\n  \"singh\": 19445,\n  \"singh</w>\": 5715,\n  \"singing</w>\": 5864,\n  \"single\": 19524,\n  \"single</w>\": 2688,\n  \"singles</w>\": 12025,\n  \"singleton</w>\": 46247,\n  \"singly</w>\": 16619,\n  \"sings</w>\": 13635,\n  \"singul\": 34003,\n  \"singular</w>\": 44009,\n  \"singularity</w>\": 48410,\n  \"sinha</w>\": 29416,\n  \"sini\": 41781,\n  \"sini</w>\": 26319,\n  \"sinister</w>\": 31313,\n  \"sink\": 37232,\n  \"sink</w>\": 14551,\n  \"sinking</w>\": 27949,\n  \"sinks</w>\": 32710,\n  \"sinn</w>\": 36315,\n  \"sinner</w>\": 45380,\n  \"sinners</w>\": 43436,\n  \"sino</w>\": 29759,\n  \"sins</w>\": 9345,\n  \"sinthe\": 30737,\n  \"sinu\": 37351,\n  \"sinus</w>\": 47535,\n  \"sio</w>\": 10807,\n  \"siob\": 40954,\n  \"siology</w>\": 46315,\n  \"sion\": 5676,\n  \"sion</w>\": 1015,\n  \"sional</w>\": 14533,\n  \"sionally</w>\": 30754,\n  \"sions</w>\": 4060,\n  \"sioux\": 44695,\n  \"sioux</w>\": 24954,\n  \"sip</w>\": 16096,\n  \"sipping</w>\": 28527,\n  \"sir\": 10708,\n  \"sir</w>\": 3846,\n  \"sire</w>\": 28450,\n  \"siren</w>\": 33026,\n  \"sirens</w>\": 35907,\n  \"siri\": 13986,\n  \"siri</w>\": 18394,\n  \"sirius\": 23574,\n  \"sirius</w>\": 34999,\n  \"siriusxm</w>\": 29833,\n  \"sirloin</w>\": 46828,\n  \"sis\": 18132,\n  \"sis</w>\": 2580,\n  \"sisd</w>\": 27132,\n  \"sisi</w>\": 37892,\n  \"siss\": 42929,\n  \"sissy</w>\": 27564,\n  \"sist</w>\": 20520,\n  \"sista</w>\": 37448,\n  \"sister\": 17417,\n  \"sister</w>\": 3677,\n  \"sisterhood</w>\": 37313,\n  \"sisters</w>\": 6404,\n  \"sit\": 7387,\n  \"sit</w>\": 4037,\n  \"sitcom</w>\": 30426,\n  \"site\": 26792,\n  \"site</w>\": 1988,\n  \"sites</w>\": 7236,\n  \"sith</w>\": 41499,\n  \"sito</w>\": 42613,\n  \"sits</w>\": 12726,\n  \"sitt\": 42988,\n  \"sitter</w>\": 40777,\n  \"sittin</w>\": 40887,\n  \"sitting</w>\": 4919,\n  \"situ\": 5562,\n  \"situ</w>\": 42536,\n  \"situated</w>\": 22030,\n  \"situation</w>\": 7144,\n  \"situations</w>\": 19096,\n  \"sity\": 38177,\n  \"sity</w>\": 5477,\n  \"siu</w>\": 40174,\n  \"sium</w>\": 8090,\n  \"sius</w>\": 27595,\n  \"siva</w>\": 20991,\n  \"sivan</w>\": 36931,\n  \"sive\": 23572,\n  \"sive</w>\": 1875,\n  \"sively</w>\": 10343,\n  \"siveness</w>\": 39667,\n  \"sives</w>\": 23896,\n  \"sivity</w>\": 42738,\n  \"siwon</w>\": 29055,\n  \"six\": 5968,\n  \"six</w>\": 4093,\n  \"sixers</w>\": 25941,\n  \"sixteen</w>\": 28677,\n  \"sixth</w>\": 12909,\n  \"sixties</w>\": 44948,\n  \"sixty</w>\": 32588,\n  \"siya</w>\": 44440,\n  \"size\": 38377,\n  \"size</w>\": 3235,\n  \"sized</w>\": 9832,\n  \"sizes</w>\": 10253,\n  \"sizing</w>\": 28330,\n  \"sizz\": 23778,\n  \"sizzle</w>\": 47890,\n  \"sizzling</w>\": 35799,\n  \"sj\": 7536,\n  \"sj</w>\": 16010,\n  \"sjo\": 42012,\n  \"sk\": 909,\n  \"sk</w>\": 2058,\n  \"ska</w>\": 7495,\n  \"skag\": 31948,\n  \"skan\": 46772,\n  \"skar\": 27587,\n  \"skar</w>\": 26835,\n  \"skate\": 13740,\n  \"skate</w>\": 12745,\n  \"skateboard</w>\": 31777,\n  \"skateboarding</w>\": 31352,\n  \"skater</w>\": 30337,\n  \"skaters</w>\": 39824,\n  \"skates</w>\": 31479,\n  \"skc</w>\": 44551,\n  \"ske\": 6261,\n  \"ske</w>\": 25516,\n  \"skel\": 36564,\n  \"skelet\": 27075,\n  \"skeletal</w>\": 37369,\n  \"skeleton</w>\": 20062,\n  \"skeletons</w>\": 48874,\n  \"skell</w>\": 40801,\n  \"skep\": 27772,\n  \"skeptical</w>\": 44934,\n  \"sker\": 37640,\n  \"sker</w>\": 33600,\n  \"sket\": 3744,\n  \"sketch\": 11767,\n  \"sketch</w>\": 5269,\n  \"sketchbook</w>\": 18899,\n  \"sketched</w>\": 38581,\n  \"sketches</w>\": 17622,\n  \"sketching</w>\": 23228,\n  \"sketchy</w>\": 41582,\n  \"skey</w>\": 37453,\n  \"ski\": 3327,\n  \"ski</w>\": 3428,\n  \"skid\": 36574,\n  \"skid</w>\": 32099,\n  \"skier</w>\": 42585,\n  \"skies</w>\": 7244,\n  \"skiing</w>\": 14400,\n  \"skil\": 24543,\n  \"skill\": 15598,\n  \"skill</w>\": 10604,\n  \"skilled</w>\": 17535,\n  \"skillet</w>\": 40568,\n  \"skills</w>\": 4113,\n  \"skim\": 33191,\n  \"skin\": 5821,\n  \"skin</w>\": 3575,\n  \"skincare</w>\": 12648,\n  \"skine</w>\": 37300,\n  \"sking\": 46215,\n  \"skinned</w>\": 42199,\n  \"skinner</w>\": 30261,\n  \"skinny\": 42729,\n  \"skinny</w>\": 15457,\n  \"skins</w>\": 11594,\n  \"skip\": 39793,\n  \"skip</w>\": 14296,\n  \"skipped</w>\": 40639,\n  \"skipper</w>\": 22226,\n  \"skipping</w>\": 34867,\n  \"skir\": 8919,\n  \"skirt</w>\": 12386,\n  \"skirts</w>\": 24840,\n  \"skis</w>\": 32843,\n  \"skit</w>\": 43573,\n  \"skitchen</w>\": 42820,\n  \"skittles</w>\": 43213,\n  \"sko\": 15141,\n  \"sko</w>\": 23493,\n  \"skoda</w>\": 38668,\n  \"skool</w>\": 26743,\n  \"skril\": 43149,\n  \"skrillex</w>\": 43651,\n  \"sks</w>\": 48136,\n  \"sku\": 10836,\n  \"skul\": 17561,\n  \"skull\": 34068,\n  \"skull</w>\": 12092,\n  \"skulls</w>\": 31804,\n  \"skunk</w>\": 42194,\n  \"sky\": 3075,\n  \"sky</w>\": 2390,\n  \"skybet\": 45540,\n  \"skye</w>\": 21475,\n  \"skyl\": 43554,\n  \"skylar</w>\": 45411,\n  \"skyline</w>\": 14606,\n  \"skymap</w>\": 41734,\n  \"skynews</w>\": 40977,\n  \"skype</w>\": 17069,\n  \"skyrim</w>\": 33693,\n  \"skysports\": 39845,\n  \"skysports</w>\": 46725,\n  \"skywalker</w>\": 32936,\n  \"sl\": 2621,\n  \"sl</w>\": 7489,\n  \"sla\": 2725,\n  \"sla</w>\": 26707,\n  \"slab</w>\": 24241,\n  \"slabs</w>\": 42818,\n  \"slack\": 37108,\n  \"slack</w>\": 30142,\n  \"slade</w>\": 33546,\n  \"slain</w>\": 35972,\n  \"slalom</w>\": 43540,\n  \"slam\": 14891,\n  \"slam</w>\": 10131,\n  \"slammed</w>\": 29772,\n  \"slams</w>\": 18907,\n  \"slan\": 44663,\n  \"slan</w>\": 47193,\n  \"sland</w>\": 11294,\n  \"slang</w>\": 33655,\n  \"slap\": 48830,\n  \"slap</w>\": 21751,\n  \"slapped</w>\": 38861,\n  \"slaps</w>\": 46796,\n  \"slash</w>\": 19749,\n  \"slat\": 38966,\n  \"slate</w>\": 17919,\n  \"slated</w>\": 36094,\n  \"slater</w>\": 25968,\n  \"slaugh\": 26782,\n  \"slaughter</w>\": 19815,\n  \"slaughtered</w>\": 46615,\n  \"slav</w>\": 47292,\n  \"slava</w>\": 41797,\n  \"slave</w>\": 14029,\n  \"slavery</w>\": 15754,\n  \"slaves</w>\": 23833,\n  \"slaw</w>\": 28178,\n  \"slay\": 48319,\n  \"slay</w>\": 19380,\n  \"slayed</w>\": 44870,\n  \"slayer</w>\": 21605,\n  \"slaying</w>\": 27812,\n  \"slays</w>\": 45648,\n  \"slc</w>\": 21972,\n  \"sle\": 1709,\n  \"sleague</w>\": 23336,\n  \"sled</w>\": 28438,\n  \"sledge</w>\": 48750,\n  \"slee\": 17642,\n  \"slee</w>\": 38977,\n  \"sleek</w>\": 23187,\n  \"sleep\": 4656,\n  \"sleep</w>\": 3840,\n  \"sleeper</w>\": 28709,\n  \"sleeping</w>\": 6982,\n  \"sleepless</w>\": 39779,\n  \"sleepover</w>\": 39415,\n  \"sleeps</w>\": 16610,\n  \"sleepy\": 32572,\n  \"sleepy</w>\": 14497,\n  \"sleet</w>\": 36948,\n  \"sleeve\": 35270,\n  \"sleeve</w>\": 10536,\n  \"sleeveless</w>\": 38049,\n  \"sleeves</w>\": 19691,\n  \"sleg</w>\": 47650,\n  \"sleigh</w>\": 30865,\n  \"slender</w>\": 40331,\n  \"slept</w>\": 20388,\n  \"sler</w>\": 14066,\n  \"sley\": 17198,\n  \"sley</w>\": 6496,\n  \"sli\": 1811,\n  \"sli</w>\": 44824,\n  \"slic\": 19692,\n  \"slice</w>\": 13431,\n  \"sliced</w>\": 28121,\n  \"slices</w>\": 28424,\n  \"slick</w>\": 18341,\n  \"slide\": 27828,\n  \"slide</w>\": 8837,\n  \"slider</w>\": 37861,\n  \"sliders</w>\": 40700,\n  \"slides</w>\": 15939,\n  \"slideshow</w>\": 42817,\n  \"sliding</w>\": 21468,\n  \"slife</w>\": 15448,\n  \"sliga</w>\": 21080,\n  \"slight</w>\": 14297,\n  \"slightly</w>\": 8456,\n  \"sligo</w>\": 30424,\n  \"slike\": 38744,\n  \"slim\": 35226,\n  \"slim</w>\": 12364,\n  \"slime</w>\": 29107,\n  \"sling\": 28021,\n  \"sling</w>\": 32607,\n  \"slinger</w>\": 47269,\n  \"slions</w>\": 43363,\n  \"slip\": 39785,\n  \"slip</w>\": 12105,\n  \"slipknot</w>\": 41816,\n  \"slipped</w>\": 30344,\n  \"slipper</w>\": 39644,\n  \"slippers</w>\": 26509,\n  \"slippery</w>\": 30814,\n  \"slipping</w>\": 36301,\n  \"slips</w>\": 30632,\n  \"slist</w>\": 33749,\n  \"slit</w>\": 47011,\n  \"slive</w>\": 31652,\n  \"slo\": 4303,\n  \"slo</w>\": 36083,\n  \"sloan</w>\": 29110,\n  \"sloane</w>\": 41553,\n  \"slogan</w>\": 23398,\n  \"slogans</w>\": 42795,\n  \"slope</w>\": 22769,\n  \"slopes</w>\": 24066,\n  \"sloppy</w>\": 36154,\n  \"slot</w>\": 14500,\n  \"sloth</w>\": 30007,\n  \"slots</w>\": 19238,\n  \"slou\": 48493,\n  \"slovak\": 23315,\n  \"slovakia</w>\": 25994,\n  \"sloven\": 17018,\n  \"slovenia</w>\": 21037,\n  \"slow\": 6674,\n  \"slow</w>\": 5444,\n  \"slowdown</w>\": 38421,\n  \"slowed</w>\": 43793,\n  \"slower</w>\": 29181,\n  \"slowing</w>\": 29839,\n  \"slowly</w>\": 9568,\n  \"slows</w>\": 46855,\n  \"slp</w>\": 45599,\n  \"slr</w>\": 21325,\n  \"sls</w>\": 33651,\n  \"slt</w>\": 39283,\n  \"sltd</w>\": 36388,\n  \"slu\": 7224,\n  \"slu</w>\": 47456,\n  \"slug</w>\": 34190,\n  \"slugger</w>\": 48671,\n  \"slum</w>\": 46754,\n  \"slumber</w>\": 44295,\n  \"slump</w>\": 35588,\n  \"slur\": 30476,\n  \"slush</w>\": 39815,\n  \"slv</w>\": 45526,\n  \"sly\": 28145,\n  \"sly</w>\": 21062,\n  \"sm\": 978,\n  \"sm</w>\": 2764,\n  \"sma\": 4357,\n  \"sma</w>\": 11854,\n  \"smack\": 21280,\n  \"smack</w>\": 30026,\n  \"smackdown</w>\": 26138,\n  \"smafia</w>\": 47686,\n  \"smag</w>\": 32212,\n  \"smal\": 48379,\n  \"small\": 5244,\n  \"small</w>\": 2442,\n  \"smallbiz\": 41724,\n  \"smallbiz</w>\": 18987,\n  \"smallbusiness</w>\": 21316,\n  \"smalle\": 18490,\n  \"smaller</w>\": 12431,\n  \"smallest</w>\": 18686,\n  \"smalls</w>\": 41696,\n  \"sman</w>\": 9612,\n  \"smar\": 3201,\n  \"smart\": 5383,\n  \"smart</w>\": 4115,\n  \"smartcities</w>\": 34822,\n  \"smartcity</w>\": 33973,\n  \"smarter</w>\": 18990,\n  \"smartest</w>\": 37092,\n  \"smarthome</w>\": 47726,\n  \"smartphone</w>\": 11290,\n  \"smartphones</w>\": 22212,\n  \"smartwatch</w>\": 35798,\n  \"smash\": 17258,\n  \"smash</w>\": 10332,\n  \"smashbros</w>\": 44897,\n  \"smashed</w>\": 18410,\n  \"smashes</w>\": 45657,\n  \"smashing</w>\": 19632,\n  \"smatter</w>\": 16537,\n  \"smb</w>\": 30446,\n  \"smc\": 31375,\n  \"smc</w>\": 28312,\n  \"smd</w>\": 34582,\n  \"sme\": 11758,\n  \"sme</w>\": 15650,\n  \"smear</w>\": 37546,\n  \"smel\": 28476,\n  \"smell</w>\": 9688,\n  \"smelling</w>\": 32493,\n  \"smells</w>\": 14668,\n  \"smelly</w>\": 46145,\n  \"smen</w>\": 15961,\n  \"smer\": 48526,\n  \"smere</w>\": 39629,\n  \"smes</w>\": 26141,\n  \"smg</w>\": 46876,\n  \"smh</w>\": 9623,\n  \"smi\": 5655,\n  \"smi</w>\": 40049,\n  \"smil\": 33937,\n  \"smile\": 27641,\n  \"smile</w>\": 3490,\n  \"smiled</w>\": 34362,\n  \"smiles</w>\": 8726,\n  \"smiley</w>\": 22925,\n  \"smiling</w>\": 9200,\n  \"smir\": 24667,\n  \"smith\": 10527,\n  \"smith</w>\": 2915,\n  \"smiths</w>\": 27872,\n  \"smithson\": 25372,\n  \"smithsonian</w>\": 31209,\n  \"smm</w>\": 19510,\n  \"smma</w>\": 42370,\n  \"smo\": 2513,\n  \"smo</w>\": 13437,\n  \"smobile</w>\": 38923,\n  \"smog</w>\": 44425,\n  \"smoke\": 20381,\n  \"smoke</w>\": 6664,\n  \"smoked</w>\": 11161,\n  \"smoker</w>\": 32348,\n  \"smokers</w>\": 29571,\n  \"smokes</w>\": 40336,\n  \"smokey</w>\": 23670,\n  \"smokin</w>\": 32825,\n  \"smoking</w>\": 9038,\n  \"smoky</w>\": 25549,\n  \"smol\": 29939,\n  \"smol</w>\": 40403,\n  \"smoo\": 5430,\n  \"smooth\": 10958,\n  \"smooth</w>\": 8990,\n  \"smoother</w>\": 44271,\n  \"smoothie</w>\": 16668,\n  \"smoothies</w>\": 34458,\n  \"smoothly</w>\": 32380,\n  \"smore</w>\": 48323,\n  \"smp</w>\": 32260,\n  \"smriti\": 49227,\n  \"sms</w>\": 10409,\n  \"smt</w>\": 26672,\n  \"smtown</w>\": 26072,\n  \"smu\": 10878,\n  \"smu</w>\": 30458,\n  \"smug</w>\": 41021,\n  \"smugg\": 28130,\n  \"smuggling</w>\": 34146,\n  \"smur\": 24708,\n  \"smusic</w>\": 19191,\n  \"smw</w>\": 44929,\n  \"smx</w>\": 46699,\n  \"smy\": 14381,\n  \"smyth</w>\": 44822,\n  \"sn\": 1672,\n  \"sn</w>\": 5844,\n  \"sna\": 4032,\n  \"snack\": 47548,\n  \"snack</w>\": 10039,\n  \"snacking</w>\": 46474,\n  \"snacks</w>\": 12349,\n  \"snag\": 34789,\n  \"snag</w>\": 28043,\n  \"snagged</w>\": 48534,\n  \"snail</w>\": 23132,\n  \"snails</w>\": 34928,\n  \"snake\": 30133,\n  \"snake</w>\": 8798,\n  \"snakes</w>\": 19605,\n  \"snap\": 4578,\n  \"snap</w>\": 7404,\n  \"snapback</w>\": 31234,\n  \"snapchat</w>\": 7799,\n  \"snapmatic</w>\": 45907,\n  \"snapp\": 10185,\n  \"snapped</w>\": 15543,\n  \"snapper</w>\": 31677,\n  \"snapping</w>\": 31581,\n  \"snaps</w>\": 16890,\n  \"snapshot</w>\": 18243,\n  \"snar\": 30810,\n  \"snare</w>\": 40651,\n  \"snat\": 18457,\n  \"snatch</w>\": 35302,\n  \"snatched</w>\": 44821,\n  \"snation</w>\": 14362,\n  \"snazzy</w>\": 48963,\n  \"snc</w>\": 39918,\n  \"sne\": 3791,\n  \"sne</w>\": 46503,\n  \"sneak\": 27871,\n  \"sneak</w>\": 6917,\n  \"sneaker\": 31698,\n  \"sneaker</w>\": 24781,\n  \"sneakers</w>\": 17397,\n  \"sneaking</w>\": 34633,\n  \"sneakpeek</w>\": 47831,\n  \"sneaks</w>\": 40926,\n  \"sneaky</w>\": 21293,\n  \"snee\": 42095,\n  \"snell</w>\": 46410,\n  \"sner</w>\": 31424,\n  \"snes</w>\": 26667,\n  \"snews</w>\": 18623,\n  \"snf</w>\": 47651,\n  \"sng</w>\": 41549,\n  \"snhl</w>\": 43093,\n  \"sni\": 7186,\n  \"sni</w>\": 35570,\n  \"snickers</w>\": 49127,\n  \"sniff</w>\": 37841,\n  \"snip</w>\": 42954,\n  \"sniper</w>\": 22157,\n  \"snippet</w>\": 37531,\n  \"snippets</w>\": 44001,\n  \"snl</w>\": 16011,\n  \"sno\": 8567,\n  \"sno</w>\": 17802,\n  \"snoo\": 11352,\n  \"snooker</w>\": 25657,\n  \"snoop\": 44503,\n  \"snoop</w>\": 27754,\n  \"snoopdogg</w>\": 48388,\n  \"snoopy</w>\": 41967,\n  \"snooze</w>\": 40718,\n  \"snor\": 16590,\n  \"snoring</w>\": 44560,\n  \"snorkel\": 44285,\n  \"snorkeling</w>\": 48103,\n  \"snow\": 3880,\n  \"snow</w>\": 2583,\n  \"snowball</w>\": 39254,\n  \"snowboard</w>\": 33403,\n  \"snowboarding</w>\": 32397,\n  \"snowday</w>\": 37982,\n  \"snowden</w>\": 32154,\n  \"snowdon</w>\": 47107,\n  \"snowdonia</w>\": 36088,\n  \"snowed</w>\": 45073,\n  \"snowfall</w>\": 21714,\n  \"snowflake</w>\": 33447,\n  \"snowflakes</w>\": 38618,\n  \"snowing</w>\": 21443,\n  \"snowman</w>\": 22668,\n  \"snowstorm</w>\": 38777,\n  \"snowy</w>\": 14191,\n  \"snp</w>\": 15301,\n  \"sns</w>\": 36343,\n  \"snsd</w>\": 27961,\n  \"snt</w>\": 34834,\n  \"snu\": 9694,\n  \"snuck</w>\": 36522,\n  \"snug</w>\": 45169,\n  \"snuggle</w>\": 31327,\n  \"snuggles</w>\": 48165,\n  \"sny\": 17526,\n  \"snyder</w>\": 22106,\n  \"snz</w>\": 37678,\n  \"so\": 759,\n  \"so</w>\": 706,\n  \"soa</w>\": 39584,\n  \"soak</w>\": 24839,\n  \"soaked</w>\": 26592,\n  \"soaking</w>\": 26750,\n  \"soap\": 26086,\n  \"soap</w>\": 11088,\n  \"soaps</w>\": 40958,\n  \"soar\": 48997,\n  \"soar</w>\": 22241,\n  \"soaring</w>\": 27968,\n  \"soars</w>\": 41348,\n  \"sob\": 24900,\n  \"sob</w>\": 35507,\n  \"sobbing</w>\": 36691,\n  \"sober\": 30969,\n  \"sober</w>\": 24487,\n  \"sobre</w>\": 42768,\n  \"sobri\": 49308,\n  \"sobs</w>\": 43636,\n  \"soc\": 3253,\n  \"soc</w>\": 7741,\n  \"soca</w>\": 49239,\n  \"socal\": 46470,\n  \"socal</w>\": 20450,\n  \"soccer\": 16268,\n  \"soccer</w>\": 4233,\n  \"socceroos</w>\": 41997,\n  \"socent</w>\": 30831,\n  \"sochi</w>\": 21014,\n  \"soci\": 1720,\n  \"social\": 4803,\n  \"social</w>\": 2346,\n  \"socialism</w>\": 23372,\n  \"socialist</w>\": 18450,\n  \"socialists</w>\": 43839,\n  \"socially</w>\": 24555,\n  \"socialmedi\": 23813,\n  \"socialmedia</w>\": 9600,\n  \"socialmediamarketing</w>\": 31790,\n  \"societal</w>\": 40058,\n  \"societies</w>\": 25855,\n  \"society</w>\": 3757,\n  \"socio\": 44319,\n  \"socio</w>\": 42790,\n  \"sociology</w>\": 32373,\n  \"sock\": 29801,\n  \"sock</w>\": 18277,\n  \"socket</w>\": 28657,\n  \"socks</w>\": 8774,\n  \"socorro</w>\": 46409,\n  \"socute</w>\": 45086,\n  \"sod</w>\": 31435,\n  \"soda</w>\": 13533,\n  \"sodium</w>\": 29070,\n  \"soe\": 44136,\n  \"soe</w>\": 25498,\n  \"soever</w>\": 34024,\n  \"sof\": 1571,\n  \"sof</w>\": 41187,\n  \"sofa</w>\": 15723,\n  \"soff\": 35290,\n  \"soff</w>\": 30684,\n  \"sofficial</w>\": 20563,\n  \"sofi\": 41537,\n  \"sofia</w>\": 18914,\n  \"sofinstagram</w>\": 17301,\n  \"soft\": 12778,\n  \"soft</w>\": 3773,\n  \"softball</w>\": 8369,\n  \"softer</w>\": 44462,\n  \"softhe\": 23127,\n  \"softly</w>\": 34958,\n  \"software\": 35941,\n  \"software</w>\": 5847,\n  \"softwitter</w>\": 11311,\n  \"sog</w>\": 44775,\n  \"soggy</w>\": 41168,\n  \"sohn</w>\": 49267,\n  \"soho\": 47749,\n  \"soho</w>\": 17592,\n  \"soi</w>\": 40495,\n  \"soil\": 33417,\n  \"soil</w>\": 9216,\n  \"soils</w>\": 34891,\n  \"soir</w>\": 43427,\n  \"sok</w>\": 43456,\n  \"sol\": 1175,\n  \"sol</w>\": 9941,\n  \"sola</w>\": 40086,\n  \"solace</w>\": 42567,\n  \"solar\": 16990,\n  \"solar</w>\": 5199,\n  \"solareclipse</w>\": 44727,\n  \"sold\": 33116,\n  \"sold</w>\": 3939,\n  \"soldi\": 5098,\n  \"soldier</w>\": 9355,\n  \"soldiers</w>\": 7547,\n  \"sole\": 10519,\n  \"sole</w>\": 8576,\n  \"soleil</w>\": 33148,\n  \"solely</w>\": 27913,\n  \"solent</w>\": 47783,\n  \"soles</w>\": 22682,\n  \"soli\": 3911,\n  \"solic\": 19369,\n  \"solicitor</w>\": 45647,\n  \"solicitors</w>\": 46000,\n  \"solid\": 30626,\n  \"solid</w>\": 6148,\n  \"solidar\": 10415,\n  \"solidarity</w>\": 10983,\n  \"solidi\": 46136,\n  \"solids</w>\": 49070,\n  \"solihull</w>\": 45293,\n  \"solit\": 37039,\n  \"solitaire</w>\": 47257,\n  \"solitary</w>\": 33094,\n  \"solitude</w>\": 33199,\n  \"solo\": 17626,\n  \"solo</w>\": 5797,\n  \"soloist</w>\": 46391,\n  \"solom\": 15768,\n  \"solomon</w>\": 19785,\n  \"solos</w>\": 44868,\n  \"solst\": 20298,\n  \"solstice</w>\": 21359,\n  \"solu\": 2487,\n  \"solution</w>\": 4575,\n  \"solutions</w>\": 5140,\n  \"solve</w>\": 8917,\n  \"solved</w>\": 13451,\n  \"solves</w>\": 42740,\n  \"solving</w>\": 15581,\n  \"som\": 734,\n  \"som</w>\": 10672,\n  \"soma</w>\": 36170,\n  \"somal\": 40281,\n  \"somali</w>\": 26231,\n  \"somalia</w>\": 17051,\n  \"somaliland</w>\": 43315,\n  \"some\": 1132,\n  \"some</w>\": 836,\n  \"somebody</w>\": 8305,\n  \"someday</w>\": 17127,\n  \"somehow</w>\": 11735,\n  \"someone</w>\": 2100,\n  \"somer\": 9656,\n  \"somerhalder</w>\": 33990,\n  \"somerset</w>\": 14926,\n  \"somerville</w>\": 41409,\n  \"somes</w>\": 38124,\n  \"somethin</w>\": 33541,\n  \"something\": 28316,\n  \"something</w>\": 2006,\n  \"sometime</w>\": 21464,\n  \"sometimes</w>\": 4237,\n  \"somewhat</w>\": 17864,\n  \"somewhere</w>\": 8119,\n  \"somm\": 42726,\n  \"somme</w>\": 30625,\n  \"sommer</w>\": 44954,\n  \"somos</w>\": 24951,\n  \"son\": 1176,\n  \"son</w>\": 825,\n  \"sona</w>\": 21249,\n  \"sonam\": 40096,\n  \"sonar</w>\": 48235,\n  \"sonata</w>\": 37009,\n  \"sone</w>\": 29599,\n  \"song\": 6868,\n  \"song</w>\": 2295,\n  \"songs</w>\": 4641,\n  \"songwriter</w>\": 13034,\n  \"songwriters</w>\": 39583,\n  \"songwriting</w>\": 33567,\n  \"songz</w>\": 49302,\n  \"soni\": 34899,\n  \"soni</w>\": 35911,\n  \"sonia</w>\": 20409,\n  \"sonic\": 23785,\n  \"sonic</w>\": 9132,\n  \"sonics</w>\": 48511,\n  \"sonja</w>\": 46102,\n  \"sonline</w>\": 23412,\n  \"sonny\": 43000,\n  \"sonny</w>\": 20880,\n  \"sono</w>\": 44109,\n  \"sonom\": 48596,\n  \"sonoma</w>\": 26269,\n  \"sons</w>\": 5502,\n  \"sonsof\": 46676,\n  \"sont</w>\": 31063,\n  \"sonthe\": 40923,\n  \"sony\": 16042,\n  \"sony</w>\": 8748,\n  \"sonya</w>\": 39172,\n  \"soo\": 5517,\n  \"soo</w>\": 8602,\n  \"soom\": 39771,\n  \"soon\": 27559,\n  \"soon</w>\": 1745,\n  \"sooner</w>\": 18968,\n  \"sooners</w>\": 30449,\n  \"sooo</w>\": 11526,\n  \"soooo</w>\": 13658,\n  \"sooooo</w>\": 21199,\n  \"soooooo</w>\": 34859,\n  \"soor\": 46698,\n  \"soothe</w>\": 44424,\n  \"soothing</w>\": 27730,\n  \"sop\": 3974,\n  \"sop</w>\": 19194,\n  \"soph</w>\": 34963,\n  \"sophi\": 6192,\n  \"sophia</w>\": 16790,\n  \"sophie\": 38648,\n  \"sophie</w>\": 12357,\n  \"sophistic\": 17646,\n  \"sophisticated</w>\": 20833,\n  \"sophom\": 13696,\n  \"sophomore</w>\": 15242,\n  \"sophomores</w>\": 47645,\n  \"soprano</w>\": 28880,\n  \"soproud</w>\": 44479,\n  \"sor\": 1852,\n  \"sor</w>\": 16872,\n  \"sora</w>\": 38719,\n  \"sorbet</w>\": 39994,\n  \"sore\": 43330,\n  \"sore</w>\": 15454,\n  \"sored</w>\": 6731,\n  \"soren\": 38907,\n  \"sorg</w>\": 28152,\n  \"sori\": 38588,\n  \"sorority</w>\": 30059,\n  \"soros</w>\": 33248,\n  \"sorren\": 44012,\n  \"sorrow</w>\": 28020,\n  \"sorrows</w>\": 47924,\n  \"sorry\": 25745,\n  \"sorry</w>\": 3675,\n  \"sorrynotsorry</w>\": 37105,\n  \"sort</w>\": 8450,\n  \"sorta</w>\": 34700,\n  \"sorted</w>\": 13221,\n  \"sorting</w>\": 19198,\n  \"sorts</w>\": 12577,\n  \"sory</w>\": 16257,\n  \"sos\": 25145,\n  \"sos</w>\": 5792,\n  \"sosa</w>\": 45433,\n  \"sosfam</w>\": 47709,\n  \"sot\": 41542,\n  \"sot</w>\": 34116,\n  \"sothe\": 32145,\n  \"sotho</w>\": 45496,\n  \"soto</w>\": 27947,\n  \"sotto</w>\": 26047,\n  \"sotu</w>\": 32286,\n  \"sou\": 1101,\n  \"sou</w>\": 24293,\n  \"sought</w>\": 18874,\n  \"soul\": 8701,\n  \"soul</w>\": 3755,\n  \"soulful</w>\": 30196,\n  \"soulmate</w>\": 38130,\n  \"souls</w>\": 10951,\n  \"soun\": 19474,\n  \"sound\": 5236,\n  \"sound</w>\": 3608,\n  \"soundcheck</w>\": 31394,\n  \"soundcloud</w>\": 15190,\n  \"sounded</w>\": 28287,\n  \"sounders</w>\": 44933,\n  \"sounding</w>\": 21351,\n  \"sounds</w>\": 5694,\n  \"soundtrack</w>\": 11389,\n  \"soup</w>\": 7077,\n  \"soups</w>\": 45052,\n  \"sour\": 2235,\n  \"sour</w>\": 12049,\n  \"source\": 23698,\n  \"source</w>\": 3634,\n  \"sourced</w>\": 23340,\n  \"sources</w>\": 5124,\n  \"sourcing</w>\": 19574,\n  \"sourdough</w>\": 29921,\n  \"souri</w>\": 11674,\n  \"sous</w>\": 32093,\n  \"sousa</w>\": 46296,\n  \"sout\": 38156,\n  \"sout</w>\": 32732,\n  \"south\": 2938,\n  \"south</w>\": 2045,\n  \"southafrica</w>\": 15184,\n  \"southampton</w>\": 15767,\n  \"southbank</w>\": 44173,\n  \"southbound</w>\": 22932,\n  \"southeast</w>\": 13942,\n  \"southeastern</w>\": 26813,\n  \"southend</w>\": 25583,\n  \"souther\": 33330,\n  \"southern\": 17704,\n  \"southern</w>\": 5036,\n  \"southgate</w>\": 47262,\n  \"southkorea</w>\": 43552,\n  \"southport</w>\": 37446,\n  \"southside</w>\": 36436,\n  \"southsudan</w>\": 30419,\n  \"southwark</w>\": 39098,\n  \"southwe\": 46443,\n  \"southwest</w>\": 13320,\n  \"southwestern</w>\": 30157,\n  \"souven\": 20210,\n  \"souvenir</w>\": 24811,\n  \"souvenirs</w>\": 48460,\n  \"souza</w>\": 29424,\n  \"sov</w>\": 29737,\n  \"sover</w>\": 31876,\n  \"sovere\": 17736,\n  \"sovereign\": 29418,\n  \"sovereign</w>\": 26337,\n  \"sovereignty</w>\": 31701,\n  \"soviet</w>\": 14274,\n  \"sow</w>\": 33089,\n  \"sowe\": 36130,\n  \"soweto</w>\": 47070,\n  \"sown</w>\": 49369,\n  \"sox\": 39556,\n  \"sox</w>\": 8657,\n  \"soy\": 16524,\n  \"soy</w>\": 15010,\n  \"soybean</w>\": 34606,\n  \"soybeans</w>\": 40840,\n  \"soyu\": 39578,\n  \"soyuz</w>\": 43842,\n  \"sp\": 588,\n  \"sp</w>\": 4393,\n  \"spa\": 7852,\n  \"spa</w>\": 6692,\n  \"spac\": 10336,\n  \"space\": 7857,\n  \"space</w>\": 2138,\n  \"spacecraft</w>\": 25940,\n  \"spaces</w>\": 9006,\n  \"spaceship</w>\": 34317,\n  \"spacex</w>\": 22511,\n  \"spacey</w>\": 48770,\n  \"spacious</w>\": 24769,\n  \"spad\": 45362,\n  \"spade</w>\": 32562,\n  \"spades</w>\": 48368,\n  \"spaghetti</w>\": 18440,\n  \"spain</w>\": 5083,\n  \"spal\": 26018,\n  \"spam\": 29712,\n  \"spam</w>\": 14624,\n  \"span\": 4270,\n  \"span</w>\": 14537,\n  \"spandex</w>\": 41686,\n  \"spani\": 16721,\n  \"spaniel</w>\": 35435,\n  \"spanish\": 29966,\n  \"spanish</w>\": 6013,\n  \"spann</w>\": 25323,\n  \"spanning</w>\": 38638,\n  \"spans</w>\": 45407,\n  \"spaper\": 34548,\n  \"spar\": 3378,\n  \"spar</w>\": 34576,\n  \"spare</w>\": 12615,\n  \"spares</w>\": 39505,\n  \"spark\": 9555,\n  \"spark</w>\": 11047,\n  \"sparked</w>\": 32647,\n  \"sparkle</w>\": 18287,\n  \"sparkles</w>\": 36410,\n  \"sparkling</w>\": 17893,\n  \"sparkly</w>\": 30542,\n  \"sparks</w>\": 15046,\n  \"sparky</w>\": 47198,\n  \"sparring</w>\": 42161,\n  \"sparrow</w>\": 22888,\n  \"spart\": 10143,\n  \"sparta</w>\": 38401,\n  \"spartan\": 26582,\n  \"spartan</w>\": 24225,\n  \"spartans</w>\": 20457,\n  \"sparty</w>\": 36477,\n  \"spas\": 31714,\n  \"spati\": 19200,\n  \"spatial</w>\": 22022,\n  \"spaw\": 31605,\n  \"spawn</w>\": 29166,\n  \"spay\": 40634,\n  \"spc</w>\": 20492,\n  \"spca</w>\": 37018,\n  \"spd\": 37717,\n  \"spd</w>\": 28307,\n  \"spdwy</w>\": 45981,\n  \"spe\": 876,\n  \"spe</w>\": 36676,\n  \"speak\": 20599,\n  \"speak</w>\": 4208,\n  \"speake\": 46077,\n  \"speaker\": 25764,\n  \"speaker</w>\": 4914,\n  \"speakers</w>\": 7675,\n  \"speaking</w>\": 3714,\n  \"speaks</w>\": 5661,\n  \"spear\": 23277,\n  \"spear</w>\": 30420,\n  \"speare</w>\": 43859,\n  \"spears</w>\": 20242,\n  \"spec\": 1711,\n  \"spec</w>\": 18596,\n  \"speci\": 1969,\n  \"special\": 11422,\n  \"special</w>\": 1689,\n  \"specialist</w>\": 10630,\n  \"specialists</w>\": 21719,\n  \"speciality</w>\": 46904,\n  \"specialized</w>\": 23265,\n  \"specializes</w>\": 48533,\n  \"specially</w>\": 4513,\n  \"specials</w>\": 11983,\n  \"specialty</w>\": 18262,\n  \"species</w>\": 6330,\n  \"specific</w>\": 10528,\n  \"specifically</w>\": 17174,\n  \"specification</w>\": 46394,\n  \"specifications</w>\": 39705,\n  \"specified</w>\": 48114,\n  \"specimen</w>\": 30263,\n  \"specimens</w>\": 42715,\n  \"specs</w>\": 24093,\n  \"spect</w>\": 3416,\n  \"spectac\": 7242,\n  \"spectacle</w>\": 34342,\n  \"spectacular</w>\": 8404,\n  \"spectator</w>\": 32372,\n  \"spectators</w>\": 39306,\n  \"spective</w>\": 6633,\n  \"spector</w>\": 48676,\n  \"spectral</w>\": 45441,\n  \"spectre</w>\": 35998,\n  \"spectro\": 27646,\n  \"spectrum</w>\": 13532,\n  \"specul\": 19209,\n  \"speculation</w>\": 30898,\n  \"sped</w>\": 38813,\n  \"spee\": 4050,\n  \"speech\": 19556,\n  \"speech</w>\": 4902,\n  \"speeches</w>\": 25208,\n  \"speechless</w>\": 23152,\n  \"speed\": 6860,\n  \"speed</w>\": 4163,\n  \"speeding</w>\": 27264,\n  \"speeds</w>\": 22017,\n  \"speedway</w>\": 11480,\n  \"speedy</w>\": 21603,\n  \"spel\": 41887,\n  \"spell\": 22784,\n  \"spell</w>\": 11230,\n  \"spelled</w>\": 24339,\n  \"spelling</w>\": 15614,\n  \"spells</w>\": 25335,\n  \"spelt</w>\": 38316,\n  \"spen\": 5087,\n  \"spence</w>\": 33324,\n  \"spencer\": 27509,\n  \"spencer</w>\": 10678,\n  \"spend</w>\": 4664,\n  \"spending</w>\": 5961,\n  \"spends</w>\": 22508,\n  \"spent</w>\": 4429,\n  \"speople</w>\": 33035,\n  \"sper\": 8213,\n  \"sper</w>\": 15313,\n  \"sperm</w>\": 35781,\n  \"sperson</w>\": 22687,\n  \"spf</w>\": 34973,\n  \"spg</w>\": 34623,\n  \"sph\": 28909,\n  \"sph</w>\": 24684,\n  \"sphe\": 33691,\n  \"spher\": 18349,\n  \"sphere</w>\": 6987,\n  \"spheres</w>\": 37478,\n  \"spheric</w>\": 21744,\n  \"sphin\": 39237,\n  \"sphinx</w>\": 46487,\n  \"spho\": 20442,\n  \"sphoto</w>\": 38594,\n  \"sphy\": 43808,\n  \"spi\": 3174,\n  \"spi</w>\": 37080,\n  \"spic\": 17264,\n  \"spice\": 29761,\n  \"spice</w>\": 10141,\n  \"spiced</w>\": 24267,\n  \"spicer</w>\": 37627,\n  \"spices</w>\": 21194,\n  \"spicy</w>\": 10915,\n  \"spide\": 36801,\n  \"spider\": 11963,\n  \"spider</w>\": 7622,\n  \"spiderman\": 39808,\n  \"spiderman</w>\": 18427,\n  \"spiders</w>\": 23141,\n  \"spidey</w>\": 41706,\n  \"spie\": 28573,\n  \"spie</w>\": 28746,\n  \"spied</w>\": 43998,\n  \"spiegel</w>\": 45351,\n  \"spiel\": 28435,\n  \"spiel</w>\": 37690,\n  \"spielberg</w>\": 37569,\n  \"spies</w>\": 25374,\n  \"spieth</w>\": 43254,\n  \"spike\": 35306,\n  \"spike</w>\": 15310,\n  \"spiked</w>\": 47014,\n  \"spikes</w>\": 29582,\n  \"spil\": 47765,\n  \"spill\": 43933,\n  \"spill</w>\": 18006,\n  \"spilled</w>\": 33206,\n  \"spilling</w>\": 49006,\n  \"spills</w>\": 35796,\n  \"spin\": 6288,\n  \"spin</w>\": 9226,\n  \"spinach</w>\": 14747,\n  \"spinal</w>\": 23925,\n  \"spine\": 48221,\n  \"spine</w>\": 19646,\n  \"sping</w>\": 47113,\n  \"spinner</w>\": 29924,\n  \"spinning</w>\": 13987,\n  \"spino\": 40848,\n  \"spinoff</w>\": 42513,\n  \"spinrilla</w>\": 46064,\n  \"spins</w>\": 27243,\n  \"spion\": 39604,\n  \"spionage</w>\": 41838,\n  \"spir\": 3745,\n  \"spiral</w>\": 19873,\n  \"spiration</w>\": 38126,\n  \"spire</w>\": 27439,\n  \"spired</w>\": 40650,\n  \"spires</w>\": 46938,\n  \"spiri\": 4024,\n  \"spirit\": 18224,\n  \"spirit</w>\": 4071,\n  \"spirited</w>\": 34701,\n  \"spirits</w>\": 13192,\n  \"spiritu\": 7237,\n  \"spiritual\": 46076,\n  \"spiritual</w>\": 9473,\n  \"spirituality</w>\": 22165,\n  \"spiro\": 40085,\n  \"spit\": 18115,\n  \"spit</w>\": 23177,\n  \"spite</w>\": 26060,\n  \"spitfire</w>\": 31126,\n  \"spitting</w>\": 40721,\n  \"spl\": 2470,\n  \"spl</w>\": 33052,\n  \"spla\": 4809,\n  \"splac\": 16059,\n  \"splace</w>\": 38743,\n  \"splash\": 43641,\n  \"splash</w>\": 11879,\n  \"splat\": 15733,\n  \"splatoon</w>\": 22565,\n  \"splay</w>\": 3169,\n  \"splen\": 18552,\n  \"splend\": 29861,\n  \"splendid</w>\": 21016,\n  \"splendor</w>\": 46262,\n  \"splin\": 38090,\n  \"split\": 25443,\n  \"split</w>\": 9109,\n  \"splits</w>\": 34897,\n  \"splitting</w>\": 37210,\n  \"splus</w>\": 40866,\n  \"spn\": 35467,\n  \"spn</w>\": 19414,\n  \"spnfamily</w>\": 38566,\n  \"spo\": 1261,\n  \"spo</w>\": 21085,\n  \"spock</w>\": 43918,\n  \"spoil</w>\": 25600,\n  \"spoiled</w>\": 21399,\n  \"spoiler</w>\": 16512,\n  \"spoilers</w>\": 18326,\n  \"spoils</w>\": 42436,\n  \"spoilt</w>\": 35358,\n  \"spokane</w>\": 24528,\n  \"spoke\": 13890,\n  \"spoke</w>\": 6518,\n  \"spoken</w>\": 12979,\n  \"spokesman</w>\": 31632,\n  \"spokesperson</w>\": 26234,\n  \"spol\": 22476,\n  \"spol</w>\": 8132,\n  \"spoli</w>\": 34301,\n  \"spolice</w>\": 37406,\n  \"spon\": 1715,\n  \"spon</w>\": 48216,\n  \"sponge\": 22861,\n  \"sponge</w>\": 24345,\n  \"spongebob</w>\": 25089,\n  \"spons\": 5597,\n  \"sponsor\": 10424,\n  \"sponsor</w>\": 7574,\n  \"sponsored</w>\": 7197,\n  \"sponsoring</w>\": 16181,\n  \"sponsors</w>\": 11005,\n  \"sponsorship</w>\": 17632,\n  \"spontaneous</w>\": 32465,\n  \"spoo\": 11248,\n  \"spooky</w>\": 15369,\n  \"spool</w>\": 49152,\n  \"spoon\": 27001,\n  \"spoon</w>\": 14024,\n  \"spoons</w>\": 29661,\n  \"spor\": 1475,\n  \"spor</w>\": 33746,\n  \"sport\": 4379,\n  \"sport</w>\": 2364,\n  \"sporting\": 32620,\n  \"sporting</w>\": 8944,\n  \"sports\": 6436,\n  \"sports</w>\": 2054,\n  \"sportsc\": 40114,\n  \"sportscar</w>\": 46931,\n  \"sportscenter</w>\": 39157,\n  \"sportsman</w>\": 39020,\n  \"sportsmanship</w>\": 34858,\n  \"sportsnet</w>\": 34144,\n  \"sportswear</w>\": 39747,\n  \"sporty</w>\": 33346,\n  \"spot\": 3223,\n  \"spot</w>\": 3049,\n  \"spotify</w>\": 7193,\n  \"spotlight</w>\": 7901,\n  \"spots</w>\": 7670,\n  \"spotted</w>\": 4533,\n  \"spotter</w>\": 30742,\n  \"spotting</w>\": 15885,\n  \"spouse</w>\": 24724,\n  \"spout</w>\": 48993,\n  \"spp</w>\": 47567,\n  \"spr\": 1536,\n  \"spr</w>\": 19417,\n  \"spra\": 12966,\n  \"spraw\": 46590,\n  \"spray\": 37885,\n  \"spray</w>\": 10449,\n  \"sprayed</w>\": 40022,\n  \"spraying</w>\": 39224,\n  \"spre\": 18740,\n  \"spread\": 20620,\n  \"spread</w>\": 5284,\n  \"spreading</w>\": 11821,\n  \"spreads</w>\": 27579,\n  \"spree</w>\": 21851,\n  \"spri\": 35498,\n  \"spride</w>\": 26685,\n  \"spring\": 5166,\n  \"spring</w>\": 2420,\n  \"springbreak</w>\": 37753,\n  \"springer</w>\": 30117,\n  \"springfield</w>\": 16599,\n  \"springs</w>\": 7308,\n  \"springst</w>\": 32132,\n  \"springsteen</w>\": 28367,\n  \"springtime</w>\": 28285,\n  \"springtraining</w>\": 49364,\n  \"springwatch</w>\": 29239,\n  \"sprink\": 15817,\n  \"sprinkle</w>\": 42897,\n  \"sprinkler</w>\": 48754,\n  \"sprinkles</w>\": 37326,\n  \"sprint\": 29248,\n  \"sprint</w>\": 10751,\n  \"sprinter</w>\": 36947,\n  \"sprints</w>\": 36404,\n  \"sprite</w>\": 32544,\n  \"spro\": 13902,\n  \"spro</w>\": 37403,\n  \"sproject</w>\": 37802,\n  \"sproud</w>\": 37686,\n  \"sprout</w>\": 35863,\n  \"sprouts</w>\": 25756,\n  \"spru\": 17041,\n  \"spruce</w>\": 23812,\n  \"sprung</w>\": 32968,\n  \"sps</w>\": 13869,\n  \"spu\": 23566,\n  \"spun\": 47922,\n  \"spun</w>\": 32852,\n  \"spur\": 15206,\n  \"spur</w>\": 20361,\n  \"spurs</w>\": 10916,\n  \"spursofficial</w>\": 45290,\n  \"sput\": 47521,\n  \"spx</w>\": 20584,\n  \"spy\": 13861,\n  \"spy</w>\": 6656,\n  \"spyder</w>\": 39952,\n  \"spying</w>\": 36227,\n  \"sq\": 9370,\n  \"sq</w>\": 11590,\n  \"sqft</w>\": 41912,\n  \"sql\": 42759,\n  \"sql</w>\": 18938,\n  \"sqm</w>\": 47978,\n  \"sqn</w>\": 41209,\n  \"squ\": 1653,\n  \"squad\": 13892,\n  \"squad</w>\": 4234,\n  \"squadron</w>\": 18579,\n  \"squads</w>\": 36590,\n  \"square\": 19314,\n  \"square</w>\": 3999,\n  \"squared</w>\": 32967,\n  \"squares</w>\": 26972,\n  \"squash</w>\": 13312,\n  \"squat\": 44628,\n  \"squat</w>\": 30680,\n  \"squats</w>\": 40213,\n  \"sque\": 9721,\n  \"sque</w>\": 8097,\n  \"squee\": 14420,\n  \"squeeze</w>\": 21684,\n  \"squeezed</w>\": 40413,\n  \"squid\": 42057,\n  \"squid</w>\": 22553,\n  \"squir\": 9683,\n  \"squire</w>\": 48090,\n  \"squirrel</w>\": 14004,\n  \"squirrels</w>\": 26623,\n  \"squish\": 42607,\n  \"squishy</w>\": 47001,\n  \"sr\": 3437,\n  \"sr</w>\": 5428,\n  \"srbachchan</w>\": 32353,\n  \"src</w>\": 23445,\n  \"sre\": 17748,\n  \"sri\": 11051,\n  \"sri</w>\": 9276,\n  \"sridevi</w>\": 46301,\n  \"srilan\": 15559,\n  \"srilanka</w>\": 16922,\n  \"srin\": 26818,\n  \"srinagar</w>\": 33671,\n  \"srini\": 41899,\n  \"sriracha</w>\": 42743,\n  \"sris\": 27851,\n  \"srisri</w>\": 32966,\n  \"srk\": 44982,\n  \"srk</w>\": 11216,\n  \"srl</w>\": 33808,\n  \"srp</w>\": 43004,\n  \"srs</w>\": 41764,\n  \"srsly</w>\": 44179,\n  \"srt</w>\": 28139,\n  \"sru\": 44152,\n  \"srugby</w>\": 40526,\n  \"ss\": 690,\n  \"ss</w>\": 632,\n  \"ssa</w>\": 6088,\n  \"ssal\": 31330,\n  \"ssal</w>\": 35936,\n  \"ssb</w>\": 37511,\n  \"ssc\": 21692,\n  \"ssc</w>\": 20364,\n  \"ssd</w>\": 23107,\n  \"sse\": 9030,\n  \"sse</w>\": 8938,\n  \"ssed\": 38755,\n  \"ssed</w>\": 1804,\n  \"ssel\": 17402,\n  \"ssel</w>\": 19373,\n  \"sseldorf</w>\": 47792,\n  \"ssell</w>\": 42388,\n  \"ssels</w>\": 8355,\n  \"ssen\": 39408,\n  \"ssen</w>\": 22645,\n  \"sser</w>\": 20445,\n  \"sses</w>\": 1802,\n  \"ssett</w>\": 44103,\n  \"ssf</w>\": 33239,\n  \"ssg</w>\": 40707,\n  \"ssh</w>\": 48866,\n  \"ssi\": 834,\n  \"ssi</w>\": 14953,\n  \"ssia</w>\": 22238,\n  \"ssian</w>\": 31218,\n  \"ssible</w>\": 47099,\n  \"ssic\": 27774,\n  \"ssic</w>\": 17077,\n  \"ssie</w>\": 7572,\n  \"ssier</w>\": 26422,\n  \"ssil</w>\": 15026,\n  \"ssin</w>\": 42660,\n  \"ssing</w>\": 2112,\n  \"ssion\": 16050,\n  \"ssion</w>\": 1627,\n  \"ssional</w>\": 13727,\n  \"ssionism</w>\": 24787,\n  \"ssionist</w>\": 27682,\n  \"ssions</w>\": 4137,\n  \"ssive</w>\": 2734,\n  \"ssively</w>\": 28060,\n  \"ssl</w>\": 32195,\n  \"ssler</w>\": 30287,\n  \"ssly</w>\": 24904,\n  \"ssn</w>\": 39116,\n  \"ssnhq</w>\": 47998,\n  \"sso\": 25900,\n  \"sso</w>\": 7914,\n  \"ssoccer</w>\": 32546,\n  \"sson\": 36124,\n  \"sson</w>\": 7271,\n  \"ssor</w>\": 35152,\n  \"ssp</w>\": 31101,\n  \"ssr</w>\": 39880,\n  \"sss</w>\": 11176,\n  \"ssss\": 30676,\n  \"ssss</w>\": 15880,\n  \"sssss</w>\": 24298,\n  \"sst</w>\": 40396,\n  \"ssu</w>\": 35351,\n  \"ssummit</w>\": 49301,\n  \"ssus</w>\": 31286,\n  \"ssw</w>\": 36937,\n  \"ssy\": 22519,\n  \"ssy</w>\": 8661,\n  \"st\": 522,\n  \"st</w>\": 545,\n  \"sta\": 1363,\n  \"sta</w>\": 2745,\n  \"stab\": 7726,\n  \"stab</w>\": 29974,\n  \"stabbed</w>\": 24534,\n  \"stabbing</w>\": 25474,\n  \"stabil\": 42576,\n  \"stabili\": 23903,\n  \"stability</w>\": 16716,\n  \"stable\": 44427,\n  \"stable</w>\": 10492,\n  \"stables</w>\": 34218,\n  \"stac\": 10175,\n  \"stacey\": 41653,\n  \"stacey</w>\": 24262,\n  \"stache</w>\": 23616,\n  \"stack\": 24723,\n  \"stack</w>\": 11257,\n  \"stacked</w>\": 24990,\n  \"stacking</w>\": 39836,\n  \"stacks</w>\": 24734,\n  \"stacy</w>\": 26628,\n  \"stad\": 15832,\n  \"stad</w>\": 16485,\n  \"stade</w>\": 38198,\n  \"stadi\": 26587,\n  \"stadion</w>\": 48815,\n  \"stadium</w>\": 3390,\n  \"stadiums</w>\": 38852,\n  \"stadt</w>\": 22713,\n  \"staf\": 2367,\n  \"staff\": 31188,\n  \"staff</w>\": 2813,\n  \"staffer</w>\": 38494,\n  \"staffers</w>\": 44994,\n  \"staffing</w>\": 32932,\n  \"stafford</w>\": 25006,\n  \"staffordshire</w>\": 29198,\n  \"staffs</w>\": 36098,\n  \"stag\": 12088,\n  \"stag</w>\": 20277,\n  \"stage\": 23182,\n  \"stage</w>\": 2170,\n  \"staged</w>\": 19906,\n  \"stages</w>\": 12297,\n  \"staggering</w>\": 37315,\n  \"staging</w>\": 27026,\n  \"stagram</w>\": 19503,\n  \"stags</w>\": 45936,\n  \"stain\": 3933,\n  \"stain</w>\": 14603,\n  \"stained</w>\": 13751,\n  \"staining</w>\": 32523,\n  \"stainless</w>\": 12320,\n  \"stains</w>\": 32008,\n  \"stair\": 7240,\n  \"stair</w>\": 17662,\n  \"staircase</w>\": 22777,\n  \"stairs</w>\": 9577,\n  \"stairway</w>\": 45559,\n  \"stak\": 39144,\n  \"stake\": 15955,\n  \"stake</w>\": 7937,\n  \"stakeholder</w>\": 39122,\n  \"stakeholders</w>\": 22968,\n  \"stakes</w>\": 7519,\n  \"staking</w>\": 47082,\n  \"stal\": 3861,\n  \"stal</w>\": 5535,\n  \"stale</w>\": 42471,\n  \"stalert</w>\": 25450,\n  \"stalin</w>\": 28346,\n  \"stalk\": 40826,\n  \"stalk</w>\": 14878,\n  \"stalker</w>\": 26777,\n  \"stalking</w>\": 24721,\n  \"stalks</w>\": 45886,\n  \"stall\": 24636,\n  \"stall</w>\": 12058,\n  \"stalled</w>\": 40362,\n  \"stallion</w>\": 28273,\n  \"stallions</w>\": 44787,\n  \"stallone</w>\": 40969,\n  \"stalls</w>\": 25427,\n  \"stam\": 4663,\n  \"stamatic</w>\": 30904,\n  \"stamford</w>\": 27843,\n  \"stamina</w>\": 48753,\n  \"stamp\": 28694,\n  \"stamp</w>\": 12771,\n  \"stampcollecting</w>\": 42852,\n  \"stamped</w>\": 38356,\n  \"stampede</w>\": 25384,\n  \"stamps</w>\": 13827,\n  \"stan\": 2203,\n  \"stan</w>\": 2434,\n  \"stana</w>\": 33311,\n  \"stanbul</w>\": 11231,\n  \"stance\": 48900,\n  \"stance</w>\": 3542,\n  \"stances</w>\": 15054,\n  \"stand\": 1819,\n  \"stand</w>\": 2087,\n  \"standalone</w>\": 44887,\n  \"standard\": 35780,\n  \"standard</w>\": 5807,\n  \"standardi\": 30247,\n  \"standards</w>\": 9022,\n  \"standby</w>\": 36184,\n  \"standing\": 39934,\n  \"standing</w>\": 2862,\n  \"standings</w>\": 19835,\n  \"standoff</w>\": 31821,\n  \"standout</w>\": 23131,\n  \"standre\": 48309,\n  \"stands</w>\": 6446,\n  \"standup\": 35108,\n  \"standup</w>\": 24964,\n  \"standwith\": 19540,\n  \"stanford\": 36219,\n  \"stanford</w>\": 15087,\n  \"stang</w>\": 12536,\n  \"stani</w>\": 38228,\n  \"stanis\": 37711,\n  \"stanley\": 19048,\n  \"stanley</w>\": 10079,\n  \"stanleycup</w>\": 28662,\n  \"stans</w>\": 26564,\n  \"stant\": 41576,\n  \"stant</w>\": 4906,\n  \"stanton</w>\": 25400,\n  \"stap\": 10438,\n  \"staple</w>\": 22695,\n  \"staples</w>\": 23646,\n  \"stapleton</w>\": 45228,\n  \"star\": 993,\n  \"star</w>\": 1565,\n  \"starbuck\": 48519,\n  \"starbucks</w>\": 9499,\n  \"starch</w>\": 47837,\n  \"starcraft</w>\": 48871,\n  \"stardom</w>\": 44616,\n  \"stardust</w>\": 34337,\n  \"stare</w>\": 18094,\n  \"stared</w>\": 47772,\n  \"stares</w>\": 37916,\n  \"starfish</w>\": 44283,\n  \"stargate</w>\": 41099,\n  \"stargazing</w>\": 49328,\n  \"staring</w>\": 13800,\n  \"stark\": 40446,\n  \"stark</w>\": 15353,\n  \"starlight</w>\": 32197,\n  \"starling</w>\": 46205,\n  \"starmagic\": 48023,\n  \"starplus</w>\": 37815,\n  \"starr</w>\": 19186,\n  \"starred</w>\": 24180,\n  \"starrer</w>\": 41311,\n  \"starring</w>\": 6660,\n  \"starry</w>\": 30963,\n  \"stars</w>\": 2895,\n  \"starship</w>\": 37166,\n  \"start\": 17466,\n  \"start</w>\": 1572,\n  \"started</w>\": 2760,\n  \"starter</w>\": 7800,\n  \"starters</w>\": 22222,\n  \"starting</w>\": 2530,\n  \"startrek\": 30642,\n  \"startrek</w>\": 15349,\n  \"starts</w>\": 3105,\n  \"startu\": 6996,\n  \"startup\": 18049,\n  \"startup</w>\": 5882,\n  \"startups</w>\": 9056,\n  \"starve</w>\": 46957,\n  \"starving</w>\": 30473,\n  \"starwar\": 17287,\n  \"starwars\": 26239,\n  \"starwars</w>\": 7887,\n  \"starz</w>\": 25928,\n  \"stas</w>\": 19866,\n  \"stash</w>\": 27711,\n  \"stasy</w>\": 45942,\n  \"stat\": 3004,\n  \"stat</w>\": 15216,\n  \"state\": 3492,\n  \"state</w>\": 1295,\n  \"statec\": 33931,\n  \"stated</w>\": 19629,\n  \"statedept</w>\": 41458,\n  \"statefair</w>\": 40305,\n  \"statement</w>\": 5401,\n  \"statements</w>\": 19513,\n  \"staten</w>\": 38263,\n  \"stateof\": 35195,\n  \"states\": 22125,\n  \"states</w>\": 4218,\n  \"statesman</w>\": 35301,\n  \"stateu</w>\": 44248,\n  \"statewide</w>\": 29561,\n  \"stati\": 9622,\n  \"static</w>\": 16363,\n  \"stating</w>\": 35147,\n  \"station\": 13498,\n  \"station</w>\": 2631,\n  \"stationary</w>\": 29493,\n  \"stationed</w>\": 47618,\n  \"stationery</w>\": 33851,\n  \"stations</w>\": 10051,\n  \"statistical</w>\": 29349,\n  \"statistics</w>\": 14165,\n  \"stats</w>\": 7294,\n  \"statu\": 32481,\n  \"statue</w>\": 8222,\n  \"statues</w>\": 24363,\n  \"status</w>\": 6414,\n  \"stau\": 28550,\n  \"staur\": 3709,\n  \"stav\": 20285,\n  \"stax</w>\": 32235,\n  \"stay\": 4714,\n  \"stay</w>\": 2277,\n  \"stayed</w>\": 13805,\n  \"staying</w>\": 8993,\n  \"stays</w>\": 13311,\n  \"staytuned</w>\": 39285,\n  \"stc</w>\": 29859,\n  \"std</w>\": 30477,\n  \"ste\": 795,\n  \"ste</w>\": 2686,\n  \"stea</w>\": 46614,\n  \"stead\": 16101,\n  \"stead</w>\": 11031,\n  \"steadily</w>\": 35049,\n  \"steady</w>\": 12937,\n  \"steak\": 26955,\n  \"steak</w>\": 8913,\n  \"steakhouse</w>\": 35031,\n  \"steaks</w>\": 30655,\n  \"steal\": 37070,\n  \"steal</w>\": 10181,\n  \"stealing</w>\": 14242,\n  \"steals</w>\": 20224,\n  \"stealth</w>\": 25327,\n  \"steam\": 10962,\n  \"steam</w>\": 6972,\n  \"steamboat</w>\": 41121,\n  \"steamed</w>\": 29007,\n  \"steamer</w>\": 49075,\n  \"steaming</w>\": 43746,\n  \"steampunk</w>\": 24130,\n  \"steamy</w>\": 43104,\n  \"stec</w>\": 46713,\n  \"stech\": 48949,\n  \"stech</w>\": 32455,\n  \"sted\": 20426,\n  \"sted</w>\": 1356,\n  \"stee\": 31793,\n  \"steed</w>\": 48293,\n  \"steel\": 6938,\n  \"steel</w>\": 4726,\n  \"steele</w>\": 19460,\n  \"steelers</w>\": 14430,\n  \"steen\": 42851,\n  \"steen</w>\": 18625,\n  \"steep\": 28648,\n  \"steep</w>\": 20714,\n  \"steer</w>\": 27612,\n  \"steering</w>\": 19833,\n  \"stef\": 29158,\n  \"stefan\": 15004,\n  \"stefan</w>\": 18829,\n  \"stefani</w>\": 38319,\n  \"stefano</w>\": 30719,\n  \"steff\": 30075,\n  \"stein\": 13653,\n  \"stein</w>\": 5818,\n  \"steiner</w>\": 36314,\n  \"stel\": 9102,\n  \"stel</w>\": 10798,\n  \"stell\": 22355,\n  \"stella\": 46178,\n  \"stella</w>\": 17869,\n  \"stellar</w>\": 13810,\n  \"stellen\": 42754,\n  \"stem\": 24342,\n  \"stem</w>\": 6761,\n  \"stemc\": 40486,\n  \"stems</w>\": 31503,\n  \"sten\": 7652,\n  \"sten</w>\": 7877,\n  \"stencil</w>\": 47854,\n  \"stennis</w>\": 45636,\n  \"step\": 15572,\n  \"step</w>\": 3348,\n  \"steph\": 3522,\n  \"steph</w>\": 16251,\n  \"stephan</w>\": 37312,\n  \"stephani\": 48121,\n  \"stephanie</w>\": 14361,\n  \"stephen\": 10421,\n  \"stephen</w>\": 6078,\n  \"stephenking</w>\": 46361,\n  \"stephens</w>\": 22256,\n  \"stephenson</w>\": 37280,\n  \"stepped</w>\": 18384,\n  \"stepping</w>\": 15906,\n  \"steps</w>\": 5408,\n  \"ster\": 1022,\n  \"ster</w>\": 881,\n  \"stere\": 9229,\n  \"stered</w>\": 6935,\n  \"stereo\": 15992,\n  \"stereo</w>\": 17400,\n  \"stereotypes</w>\": 27890,\n  \"steria</w>\": 38804,\n  \"stering</w>\": 14175,\n  \"sterling\": 45790,\n  \"sterling</w>\": 9378,\n  \"stern\": 36254,\n  \"stern</w>\": 2945,\n  \"steroids</w>\": 37670,\n  \"sterone</w>\": 39418,\n  \"sters</w>\": 2132,\n  \"stery</w>\": 24232,\n  \"stest</w>\": 8556,\n  \"stev\": 11640,\n  \"steve\": 7412,\n  \"steve</w>\": 3803,\n  \"steven\": 10973,\n  \"steven</w>\": 8016,\n  \"stevens</w>\": 13877,\n  \"stevenson</w>\": 25091,\n  \"stevie\": 42104,\n  \"stevie</w>\": 18969,\n  \"stew</w>\": 17906,\n  \"stewar\": 28453,\n  \"steward\": 34980,\n  \"steward</w>\": 43355,\n  \"stewards</w>\": 49294,\n  \"stewardship</w>\": 36720,\n  \"stewart</w>\": 8120,\n  \"stfu</w>\": 47000,\n  \"stg</w>\": 48387,\n  \"stgeorge\": 43698,\n  \"sth\": 13456,\n  \"sth</w>\": 34004,\n  \"sthe\": 16491,\n  \"sthel\": 42863,\n  \"sti\": 860,\n  \"sti</w>\": 12439,\n  \"stia</w>\": 26492,\n  \"stible</w>\": 25835,\n  \"stic\": 5868,\n  \"stic</w>\": 1561,\n  \"stical</w>\": 16660,\n  \"stically</w>\": 19041,\n  \"stick\": 5483,\n  \"stick</w>\": 4987,\n  \"sticker</w>\": 11270,\n  \"stickers</w>\": 11613,\n  \"sticking</w>\": 21021,\n  \"sticks</w>\": 10016,\n  \"sticky</w>\": 18887,\n  \"stics</w>\": 5449,\n  \"stie\": 38164,\n  \"stie</w>\": 11000,\n  \"stier</w>\": 42069,\n  \"sties</w>\": 16428,\n  \"stiff\": 43471,\n  \"stiff</w>\": 21441,\n  \"stig\": 4088,\n  \"stig</w>\": 42551,\n  \"stigate</w>\": 15390,\n  \"stigma</w>\": 20619,\n  \"stik</w>\": 42247,\n  \"stil\": 21790,\n  \"stil</w>\": 37519,\n  \"stiles</w>\": 33028,\n  \"still\": 13209,\n  \"still</w>\": 1170,\n  \"stills</w>\": 20259,\n  \"stim\": 18269,\n  \"stime</w>\": 24711,\n  \"stimul\": 16434,\n  \"stimulate</w>\": 42380,\n  \"stimulating</w>\": 41237,\n  \"stimulation</w>\": 39530,\n  \"stimulus</w>\": 47283,\n  \"stin\": 2588,\n  \"stin</w>\": 4025,\n  \"stina</w>\": 22359,\n  \"stine</w>\": 7098,\n  \"sting\": 19868,\n  \"sting</w>\": 1271,\n  \"stingly</w>\": 49332,\n  \"stingray</w>\": 43229,\n  \"stink</w>\": 38213,\n  \"stinky</w>\": 44957,\n  \"stino</w>\": 40658,\n  \"stint</w>\": 33531,\n  \"stion</w>\": 10812,\n  \"stip\": 39869,\n  \"stips</w>\": 44756,\n  \"stique</w>\": 43305,\n  \"stir\": 12416,\n  \"stir</w>\": 19564,\n  \"stirling</w>\": 23128,\n  \"stirring</w>\": 39205,\n  \"stis</w>\": 45224,\n  \"stit\": 14110,\n  \"stitch\": 30003,\n  \"stitch</w>\": 14771,\n  \"stitched</w>\": 36540,\n  \"stitcher</w>\": 48204,\n  \"stitches</w>\": 32360,\n  \"stitching</w>\": 45208,\n  \"stitu\": 14585,\n  \"stitutes</w>\": 40479,\n  \"stive</w>\": 22426,\n  \"stix</w>\": 48829,\n  \"stjohn\": 36153,\n  \"stl\": 14179,\n  \"stl</w>\": 12527,\n  \"stlblues</w>\": 44138,\n  \"stlcards</w>\": 28644,\n  \"stle</w>\": 7698,\n  \"stles</w>\": 48638,\n  \"stlouis\": 40358,\n  \"stlouis</w>\": 39516,\n  \"stm</w>\": 28333,\n  \"stn</w>\": 27175,\n  \"sto\": 928,\n  \"sto</w>\": 5723,\n  \"stock\": 5899,\n  \"stock</w>\": 3206,\n  \"stocked</w>\": 23552,\n  \"stockholm</w>\": 16024,\n  \"stocki\": 42944,\n  \"stocking</w>\": 17335,\n  \"stockings</w>\": 28040,\n  \"stockmarket</w>\": 40359,\n  \"stockport</w>\": 35569,\n  \"stocks</w>\": 9321,\n  \"stockton</w>\": 26130,\n  \"stoday</w>\": 22392,\n  \"stok</w>\": 43782,\n  \"stoke\": 31338,\n  \"stoke</w>\": 13550,\n  \"stoked</w>\": 13160,\n  \"stokes</w>\": 27512,\n  \"stol\": 11401,\n  \"stol</w>\": 6700,\n  \"stole</w>\": 10995,\n  \"stolen</w>\": 8704,\n  \"stolic</w>\": 45020,\n  \"stom\": 2343,\n  \"stom</w>\": 38068,\n  \"stoma</w>\": 43545,\n  \"stomach</w>\": 14722,\n  \"stomp</w>\": 40165,\n  \"stomping</w>\": 46144,\n  \"ston\": 4101,\n  \"ston</w>\": 1839,\n  \"stone\": 7694,\n  \"stone</w>\": 2441,\n  \"stoned</w>\": 36248,\n  \"stonehenge</w>\": 42417,\n  \"stoner\": 35131,\n  \"stoner</w>\": 29115,\n  \"stones\": 42659,\n  \"stones</w>\": 6885,\n  \"stonewall</w>\": 39688,\n  \"stoney</w>\": 44198,\n  \"stony\": 41717,\n  \"stony</w>\": 35691,\n  \"stoo\": 24505,\n  \"stood</w>\": 9151,\n  \"stool\": 34413,\n  \"stool</w>\": 22314,\n  \"stop\": 6005,\n  \"stop</w>\": 1691,\n  \"stopbrexit</w>\": 48680,\n  \"stopp\": 15738,\n  \"stopped</w>\": 6015,\n  \"stopper</w>\": 32147,\n  \"stoppers</w>\": 34457,\n  \"stopping</w>\": 10735,\n  \"stops</w>\": 9822,\n  \"stopthe\": 26463,\n  \"stor\": 809,\n  \"stor</w>\": 17740,\n  \"storage</w>\": 6824,\n  \"store\": 17769,\n  \"store</w>\": 2183,\n  \"stored</w>\": 28257,\n  \"stores</w>\": 6370,\n  \"storey</w>\": 24025,\n  \"storians</w>\": 34628,\n  \"stories</w>\": 3784,\n  \"storing</w>\": 40087,\n  \"stork</w>\": 46452,\n  \"storm\": 7434,\n  \"storm</w>\": 2819,\n  \"stormed</w>\": 45939,\n  \"stormhour</w>\": 12161,\n  \"storming</w>\": 24842,\n  \"storms</w>\": 6464,\n  \"stormtrooper</w>\": 49218,\n  \"stormy</w>\": 20075,\n  \"stors</w>\": 7178,\n  \"story\": 6512,\n  \"story</w>\": 1134,\n  \"storyline</w>\": 37079,\n  \"storymonth</w>\": 23717,\n  \"storyteller</w>\": 35882,\n  \"storytelling</w>\": 14457,\n  \"storytime</w>\": 44197,\n  \"stos</w>\": 19281,\n  \"stou\": 37168,\n  \"stour\": 37361,\n  \"stour</w>\": 21928,\n  \"stout</w>\": 16550,\n  \"stove</w>\": 21423,\n  \"stow\": 44284,\n  \"stow</w>\": 17046,\n  \"stowe</w>\": 34196,\n  \"stown\": 28071,\n  \"stown</w>\": 7939,\n  \"stp</w>\": 30576,\n  \"stpatrick\": 21343,\n  \"stpatricksday</w>\": 22747,\n  \"str\": 807,\n  \"str</w>\": 15913,\n  \"stra\": 1894,\n  \"stra</w>\": 6253,\n  \"strack</w>\": 46861,\n  \"strada</w>\": 31134,\n  \"strade</w>\": 48968,\n  \"straigh\": 31016,\n  \"straight\": 22114,\n  \"straight</w>\": 4241,\n  \"strain</w>\": 16887,\n  \"strains</w>\": 38067,\n  \"strait</w>\": 22946,\n  \"straits</w>\": 41984,\n  \"stral</w>\": 23289,\n  \"stralia</w>\": 42510,\n  \"stran\": 18411,\n  \"strand\": 18214,\n  \"strand</w>\": 17826,\n  \"stranded</w>\": 22975,\n  \"strang\": 11138,\n  \"strange\": 33380,\n  \"strange</w>\": 7288,\n  \"strangely</w>\": 37566,\n  \"stranger\": 35541,\n  \"stranger</w>\": 14149,\n  \"strangers</w>\": 20684,\n  \"strangerthings</w>\": 43271,\n  \"strangest</w>\": 46740,\n  \"strap</w>\": 13946,\n  \"strapped</w>\": 40922,\n  \"straps</w>\": 31213,\n  \"stras\": 36814,\n  \"stras</w>\": 42125,\n  \"strasbourg</w>\": 39576,\n  \"strat\": 11345,\n  \"strat</w>\": 32925,\n  \"strata</w>\": 47278,\n  \"strate\": 3532,\n  \"strate</w>\": 28758,\n  \"strategi\": 49102,\n  \"strategic</w>\": 10246,\n  \"strategically</w>\": 45706,\n  \"strategies</w>\": 9942,\n  \"strategist</w>\": 37180,\n  \"strategy</w>\": 5637,\n  \"strates</w>\": 45724,\n  \"stratford</w>\": 23955,\n  \"strath\": 21997,\n  \"stration</w>\": 3156,\n  \"strato\": 28878,\n  \"strauss</w>\": 32033,\n  \"strava</w>\": 34625,\n  \"stravel</w>\": 43494,\n  \"straw\": 7430,\n  \"straw</w>\": 16438,\n  \"strawberries</w>\": 17796,\n  \"strawberry</w>\": 10233,\n  \"straws</w>\": 33048,\n  \"stray\": 30784,\n  \"stray</w>\": 15712,\n  \"stre\": 1079,\n  \"stre</w>\": 19652,\n  \"stread</w>\": 27797,\n  \"streak</w>\": 11749,\n  \"streaks</w>\": 42092,\n  \"stream\": 8659,\n  \"stream</w>\": 3322,\n  \"streamed</w>\": 26280,\n  \"streamer</w>\": 25178,\n  \"streamers</w>\": 19937,\n  \"streaming</w>\": 6278,\n  \"streamline</w>\": 44917,\n  \"streams</w>\": 13545,\n  \"stree\": 35082,\n  \"stree</w>\": 32438,\n  \"streep</w>\": 38701,\n  \"street\": 4839,\n  \"street</w>\": 2012,\n  \"streetart</w>\": 12948,\n  \"streetcar</w>\": 34268,\n  \"streetfood</w>\": 44486,\n  \"streetphotography</w>\": 20786,\n  \"streets</w>\": 6058,\n  \"streetstyle</w>\": 39118,\n  \"streetwear</w>\": 37298,\n  \"strel</w>\": 39685,\n  \"stren\": 4349,\n  \"streng\": 4472,\n  \"strength\": 15475,\n  \"strength</w>\": 5959,\n  \"strengthen</w>\": 16318,\n  \"strengthened</w>\": 47131,\n  \"strengthening</w>\": 23475,\n  \"strengthens</w>\": 40280,\n  \"strengths</w>\": 29268,\n  \"stress\": 17297,\n  \"stress</w>\": 5843,\n  \"stressed</w>\": 16497,\n  \"stresses</w>\": 32112,\n  \"stressful</w>\": 24268,\n  \"stressing</w>\": 35917,\n  \"stret\": 12265,\n  \"stretch</w>\": 10064,\n  \"stretched</w>\": 29393,\n  \"stretches</w>\": 32231,\n  \"stretching</w>\": 24423,\n  \"stri\": 1493,\n  \"stri</w>\": 27795,\n  \"stria</w>\": 39620,\n  \"strial</w>\": 30217,\n  \"strian</w>\": 12924,\n  \"stric\": 2607,\n  \"strick\": 25181,\n  \"strickland</w>\": 48939,\n  \"strict</w>\": 21585,\n  \"strictly</w>\": 16475,\n  \"stride</w>\": 36024,\n  \"strides</w>\": 37355,\n  \"stries</w>\": 18171,\n  \"strife</w>\": 46473,\n  \"strike\": 20774,\n  \"strike</w>\": 5767,\n  \"striker</w>\": 12448,\n  \"strikers</w>\": 33465,\n  \"strikes</w>\": 9280,\n  \"striking</w>\": 13392,\n  \"string\": 25512,\n  \"string</w>\": 9696,\n  \"strings</w>\": 15699,\n  \"strip</w>\": 9317,\n  \"stripe</w>\": 19368,\n  \"striped</w>\": 22192,\n  \"stripes</w>\": 14239,\n  \"stripped</w>\": 26602,\n  \"stripper</w>\": 45759,\n  \"stripping</w>\": 48588,\n  \"strips</w>\": 19000,\n  \"strive</w>\": 22140,\n  \"striving</w>\": 37671,\n  \"stro\": 3121,\n  \"stro</w>\": 6186,\n  \"stroke\": 44621,\n  \"stroke</w>\": 10403,\n  \"strokes</w>\": 26595,\n  \"strol\": 30123,\n  \"stroll</w>\": 15924,\n  \"stroller</w>\": 47076,\n  \"strolling</w>\": 40911,\n  \"strom</w>\": 14707,\n  \"stron\": 4165,\n  \"strong\": 10436,\n  \"strong</w>\": 2389,\n  \"stronger\": 27760,\n  \"stronger</w>\": 9245,\n  \"strongertogether</w>\": 38532,\n  \"strongest</w>\": 16171,\n  \"strongh\": 38678,\n  \"strongly</w>\": 15507,\n  \"strophy</w>\": 47912,\n  \"strou\": 48425,\n  \"stroud</w>\": 39895,\n  \"strous</w>\": 23752,\n  \"stru\": 1666,\n  \"struc\": 3311,\n  \"struck</w>\": 10861,\n  \"struction</w>\": 12497,\n  \"structural</w>\": 16899,\n  \"structure</w>\": 5285,\n  \"structured</w>\": 27147,\n  \"structures</w>\": 14171,\n  \"structuring</w>\": 37496,\n  \"strugg\": 5176,\n  \"struggle</w>\": 8443,\n  \"struggled</w>\": 32921,\n  \"struggles</w>\": 17446,\n  \"struggling</w>\": 12135,\n  \"struly\": 34118,\n  \"strum</w>\": 37632,\n  \"strung</w>\": 46033,\n  \"strust</w>\": 23920,\n  \"strut</w>\": 48375,\n  \"stry\": 17325,\n  \"stry</w>\": 2245,\n  \"sts</w>\": 1088,\n  \"stu\": 858,\n  \"stu</w>\": 23531,\n  \"stuart\": 32054,\n  \"stuart</w>\": 11723,\n  \"stub\": 27066,\n  \"stubborn</w>\": 38955,\n  \"stuck</w>\": 6596,\n  \"stud\": 22368,\n  \"stud</w>\": 13319,\n  \"studded</w>\": 29153,\n  \"studen\": 44156,\n  \"student\": 14681,\n  \"student</w>\": 2556,\n  \"students</w>\": 1712,\n  \"studi\": 5691,\n  \"studied</w>\": 21369,\n  \"studies</w>\": 6426,\n  \"studio\": 17798,\n  \"studio</w>\": 3155,\n  \"studios</w>\": 6231,\n  \"studs</w>\": 27571,\n  \"study\": 21051,\n  \"study</w>\": 3123,\n  \"studyabroad</w>\": 45425,\n  \"studying</w>\": 8826,\n  \"stuff\": 46072,\n  \"stuff</w>\": 3487,\n  \"stuffed</w>\": 11781,\n  \"stuffing</w>\": 31612,\n  \"stuffs</w>\": 43455,\n  \"stuk</w>\": 32424,\n  \"stumb\": 16784,\n  \"stumble</w>\": 39045,\n  \"stumbled</w>\": 21776,\n  \"stump</w>\": 32064,\n  \"stun\": 3088,\n  \"stun</w>\": 37959,\n  \"stunned</w>\": 34034,\n  \"stunner</w>\": 29965,\n  \"stunning</w>\": 3769,\n  \"stunningly</w>\": 47515,\n  \"stuns</w>\": 43796,\n  \"stunt</w>\": 19905,\n  \"stunts</w>\": 40118,\n  \"stupi\": 18975,\n  \"stupid\": 42600,\n  \"stupid</w>\": 8085,\n  \"stupidity</w>\": 33766,\n  \"stur\": 10676,\n  \"sturdy</w>\": 43780,\n  \"stures</w>\": 27223,\n  \"sturgeon</w>\": 31580,\n  \"sturi\": 21747,\n  \"sturridge</w>\": 45331,\n  \"stutt\": 30444,\n  \"stuttgart</w>\": 32219,\n  \"stv\": 27060,\n  \"stv</w>\": 9708,\n  \"stweet</w>\": 46832,\n  \"stweets</w>\": 39174,\n  \"stx</w>\": 42548,\n  \"sty\": 1421,\n  \"sty</w>\": 2920,\n  \"style\": 12356,\n  \"style</w>\": 1844,\n  \"styled</w>\": 17974,\n  \"styles</w>\": 6948,\n  \"styli\": 38577,\n  \"styling</w>\": 14597,\n  \"stylish</w>\": 10378,\n  \"stylist</w>\": 15928,\n  \"styn</w>\": 41394,\n  \"su\": 605,\n  \"su</w>\": 2937,\n  \"sua</w>\": 42448,\n  \"suarez</w>\": 21437,\n  \"suave</w>\": 47305,\n  \"sub\": 1783,\n  \"sub</w>\": 7765,\n  \"subaru</w>\": 21319,\n  \"subjec\": 16090,\n  \"subject</w>\": 10300,\n  \"subjects</w>\": 22099,\n  \"subli\": 16350,\n  \"sublime</w>\": 22367,\n  \"submarine</w>\": 19968,\n  \"submer\": 27156,\n  \"submerged</w>\": 43171,\n  \"submission</w>\": 16571,\n  \"submissions</w>\": 21566,\n  \"submit</w>\": 10423,\n  \"submitted</w>\": 15189,\n  \"submitting</w>\": 38788,\n  \"subram\": 49207,\n  \"subs</w>\": 16398,\n  \"subscri\": 5838,\n  \"subscribe</w>\": 9839,\n  \"subscribed</w>\": 44867,\n  \"subscriber</w>\": 36292,\n  \"subscribers</w>\": 17337,\n  \"subscription</w>\": 17979,\n  \"subscriptions</w>\": 47162,\n  \"subsequ\": 33598,\n  \"subsequent</w>\": 44323,\n  \"subsi\": 14856,\n  \"subsidi\": 45029,\n  \"subsidiary</w>\": 45506,\n  \"subsidies</w>\": 37685,\n  \"subsidy</w>\": 47462,\n  \"substan\": 17487,\n  \"substance</w>\": 19309,\n  \"substances</w>\": 36834,\n  \"substantial</w>\": 27171,\n  \"substantially</w>\": 47577,\n  \"substitu\": 18529,\n  \"substitute</w>\": 25340,\n  \"subtitles</w>\": 39479,\n  \"subtle</w>\": 16536,\n  \"subur\": 12517,\n  \"suburb</w>\": 37664,\n  \"suburban</w>\": 23570,\n  \"suburbs</w>\": 25317,\n  \"subway</w>\": 12196,\n  \"suc\": 1869,\n  \"succe\": 7981,\n  \"succeed</w>\": 13556,\n  \"succeeded</w>\": 41077,\n  \"succes\": 39019,\n  \"success\": 3695,\n  \"success</w>\": 3034,\n  \"successes</w>\": 29436,\n  \"successful</w>\": 4670,\n  \"successfully</w>\": 9934,\n  \"succession</w>\": 38491,\n  \"successive</w>\": 41319,\n  \"successor</w>\": 34774,\n  \"succu\": 45253,\n  \"succul\": 25671,\n  \"succulent</w>\": 35236,\n  \"such</w>\": 2046,\n  \"suction</w>\": 42786,\n  \"sud\": 8067,\n  \"sud</w>\": 33714,\n  \"sudan\": 31149,\n  \"sudan</w>\": 13474,\n  \"sudanese</w>\": 42837,\n  \"sudbury</w>\": 32488,\n  \"sudden\": 10833,\n  \"sudden</w>\": 15433,\n  \"suddenly</w>\": 11076,\n  \"sue\": 14045,\n  \"sue</w>\": 6641,\n  \"sued</w>\": 22225,\n  \"suede</w>\": 21036,\n  \"sues</w>\": 17105,\n  \"suf\": 21204,\n  \"suf</w>\": 22579,\n  \"sufc</w>\": 37091,\n  \"suff\": 4866,\n  \"suffe\": 13510,\n  \"suffer</w>\": 13557,\n  \"suffered</w>\": 14766,\n  \"suffering</w>\": 10140,\n  \"suffers</w>\": 22389,\n  \"sufficient</w>\": 28410,\n  \"suffol\": 13775,\n  \"suffolk\": 46408,\n  \"suffolk</w>\": 15685,\n  \"suffra\": 34596,\n  \"suffrage</w>\": 39567,\n  \"sufi</w>\": 39756,\n  \"sug\": 3189,\n  \"suga</w>\": 28757,\n  \"sugar\": 12418,\n  \"sugar</w>\": 5574,\n  \"sugge\": 6345,\n  \"suggest</w>\": 13356,\n  \"suggested</w>\": 18790,\n  \"suggesti\": 15033,\n  \"suggesting</w>\": 29792,\n  \"suggestion</w>\": 23741,\n  \"suggestions</w>\": 16052,\n  \"suggests</w>\": 13333,\n  \"suho</w>\": 32744,\n  \"sui</w>\": 24972,\n  \"suici\": 16372,\n  \"suicidal</w>\": 37165,\n  \"suicide\": 31310,\n  \"suicide</w>\": 8247,\n  \"suing</w>\": 18309,\n  \"suisse</w>\": 35964,\n  \"suit\": 11887,\n  \"suit</w>\": 3940,\n  \"suitable</w>\": 17476,\n  \"suitcase</w>\": 27792,\n  \"suite</w>\": 9346,\n  \"suited</w>\": 25919,\n  \"suites</w>\": 21523,\n  \"suits</w>\": 9949,\n  \"suk\": 24820,\n  \"suk</w>\": 6886,\n  \"suka</w>\": 44017,\n  \"suke</w>\": 25590,\n  \"sukh\": 46961,\n  \"suki</w>\": 32704,\n  \"sul\": 1767,\n  \"sul</w>\": 19879,\n  \"sula\": 34713,\n  \"sula</w>\": 26143,\n  \"sullivan</w>\": 14477,\n  \"sully</w>\": 37752,\n  \"sulph\": 37234,\n  \"sulphur</w>\": 47659,\n  \"sultan\": 35650,\n  \"sultan</w>\": 17049,\n  \"sum\": 7054,\n  \"sum</w>\": 8257,\n  \"suma</w>\": 47938,\n  \"sumat\": 32640,\n  \"sumatra</w>\": 47346,\n  \"sume</w>\": 45457,\n  \"sumi</w>\": 41248,\n  \"summ\": 1309,\n  \"summar\": 34657,\n  \"summari\": 31993,\n  \"summary</w>\": 13435,\n  \"summed</w>\": 34912,\n  \"summer\": 5500,\n  \"summer</w>\": 1673,\n  \"summers</w>\": 18254,\n  \"summerslam</w>\": 40264,\n  \"summertime</w>\": 19025,\n  \"summit\": 30011,\n  \"summit</w>\": 3768,\n  \"summon\": 27622,\n  \"summon</w>\": 39782,\n  \"sumner</w>\": 46813,\n  \"sumo</w>\": 33734,\n  \"sump\": 34252,\n  \"sumptuous</w>\": 47354,\n  \"sums</w>\": 13325,\n  \"sun\": 968,\n  \"sun</w>\": 2176,\n  \"sunbathing</w>\": 46994,\n  \"sunburn</w>\": 45767,\n  \"sund</w>\": 40735,\n  \"sundae</w>\": 38078,\n  \"sundance</w>\": 24128,\n  \"sundar\": 44936,\n  \"sunday\": 6649,\n  \"sunday</w>\": 1706,\n  \"sundayfunday</w>\": 21565,\n  \"sundaymorning</w>\": 24809,\n  \"sundaymotivation</w>\": 46227,\n  \"sundays</w>\": 15827,\n  \"sundaywith\": 26469,\n  \"sundaywithmarsha</w>\": 26662,\n  \"sunder\": 15097,\n  \"sunderland\": 45727,\n  \"sunderland</w>\": 18851,\n  \"sundown</w>\": 44438,\n  \"sune</w>\": 41096,\n  \"sunflower</w>\": 21559,\n  \"sunflowers</w>\": 39809,\n  \"sung\": 16903,\n  \"sung</w>\": 6047,\n  \"sunglasses</w>\": 12906,\n  \"suni\": 17663,\n  \"suni</w>\": 47010,\n  \"sunil</w>\": 32861,\n  \"sunite</w>\": 21382,\n  \"sunited</w>\": 35276,\n  \"sunk</w>\": 37534,\n  \"sunken</w>\": 43473,\n  \"sunlight</w>\": 17996,\n  \"sunni</w>\": 44315,\n  \"sunny\": 15632,\n  \"sunny</w>\": 5438,\n  \"sunrise</w>\": 5610,\n  \"suns</w>\": 18322,\n  \"sunscreen</w>\": 29355,\n  \"sunset\": 37880,\n  \"sunset</w>\": 3424,\n  \"sunsets</w>\": 17721,\n  \"sunshine\": 32761,\n  \"sunshine</w>\": 5385,\n  \"suny</w>\": 41308,\n  \"sup\": 19078,\n  \"sup</w>\": 8249,\n  \"supdates</w>\": 24177,\n  \"super\": 1642,\n  \"super</w>\": 1994,\n  \"superb</w>\": 8930,\n  \"superbike</w>\": 45709,\n  \"superbowl\": 47461,\n  \"superbowl</w>\": 16467,\n  \"supercar</w>\": 27021,\n  \"supercars</w>\": 32185,\n  \"supercell</w>\": 43227,\n  \"supercharged</w>\": 47479,\n  \"supere\": 46831,\n  \"superfood</w>\": 41715,\n  \"supergirl</w>\": 25771,\n  \"superhero</w>\": 14049,\n  \"superheroes</w>\": 23334,\n  \"superint\": 17615,\n  \"superintendent</w>\": 19020,\n  \"superior</w>\": 13205,\n  \"superjunior</w>\": 40475,\n  \"superleague</w>\": 45539,\n  \"superman</w>\": 11237,\n  \"supermarket</w>\": 19897,\n  \"supermarkets</w>\": 45106,\n  \"supermodel</w>\": 41963,\n  \"supermoon</w>\": 36571,\n  \"supernatural</w>\": 15484,\n  \"supernova</w>\": 39843,\n  \"superrugby</w>\": 48717,\n  \"supersonic</w>\": 42019,\n  \"supersport</w>\": 46319,\n  \"superst\": 38202,\n  \"superstar\": 32551,\n  \"superstar</w>\": 10472,\n  \"superstars</w>\": 25797,\n  \"supervis\": 12709,\n  \"supervised</w>\": 41316,\n  \"supervision</w>\": 36234,\n  \"supervisor</w>\": 20366,\n  \"supervisors</w>\": 37958,\n  \"superyacht</w>\": 42714,\n  \"supp\": 1023,\n  \"supper</w>\": 15727,\n  \"supple\": 31431,\n  \"supplement</w>\": 19924,\n  \"supplements</w>\": 21265,\n  \"supplied</w>\": 24106,\n  \"supplier</w>\": 18043,\n  \"suppliers</w>\": 24196,\n  \"supplies</w>\": 9384,\n  \"supply\": 25074,\n  \"supply</w>\": 6389,\n  \"supplychain</w>\": 31224,\n  \"supplying</w>\": 32739,\n  \"suppo\": 6941,\n  \"suppor\": 2104,\n  \"support\": 12062,\n  \"support</w>\": 1425,\n  \"supported</w>\": 8038,\n  \"supporter</w>\": 12992,\n  \"supporters</w>\": 7403,\n  \"supportindiefilm</w>\": 43976,\n  \"supporting</w>\": 3976,\n  \"supportive</w>\": 18313,\n  \"supportlocal</w>\": 43852,\n  \"supports</w>\": 8336,\n  \"supportsmall\": 30941,\n  \"supportsmallstreamers</w>\": 36097,\n  \"suppose</w>\": 18924,\n  \"supposed</w>\": 9119,\n  \"supposedly</w>\": 32302,\n  \"suppre\": 20542,\n  \"suppression</w>\": 36508,\n  \"supra</w>\": 48485,\n  \"supre\": 5875,\n  \"supremac\": 28643,\n  \"supremacist</w>\": 39005,\n  \"supremacy</w>\": 28913,\n  \"supreme\": 35222,\n  \"supreme</w>\": 7468,\n  \"supt</w>\": 23625,\n  \"sur\": 1090,\n  \"sur</w>\": 7123,\n  \"sura\": 33412,\n  \"sura</w>\": 49125,\n  \"surabaya</w>\": 45227,\n  \"surance</w>\": 22184,\n  \"surat</w>\": 30201,\n  \"sure\": 14320,\n  \"sure</w>\": 1650,\n  \"sured</w>\": 36869,\n  \"surely</w>\": 11409,\n  \"sures</w>\": 12725,\n  \"suresh\": 32118,\n  \"suresh</w>\": 31464,\n  \"sureshpp\": 41924,\n  \"sureshpprabhu</w>\": 42050,\n  \"surf\": 10176,\n  \"surf</w>\": 10322,\n  \"surface</w>\": 7744,\n  \"surfaces</w>\": 20746,\n  \"surfer</w>\": 24925,\n  \"surfers</w>\": 34842,\n  \"surfing</w>\": 15762,\n  \"surg\": 13045,\n  \"surge</w>\": 17457,\n  \"surgeon</w>\": 16039,\n  \"surgeons</w>\": 26000,\n  \"surger\": 5122,\n  \"surgeries</w>\": 34940,\n  \"surgery</w>\": 5344,\n  \"surgical</w>\": 16386,\n  \"suri\": 14130,\n  \"suri</w>\": 33952,\n  \"suring</w>\": 16817,\n  \"suriya</w>\": 17832,\n  \"surpass</w>\": 45494,\n  \"surpassed</w>\": 25648,\n  \"surplus</w>\": 29413,\n  \"surpri\": 3244,\n  \"surprise</w>\": 5099,\n  \"surprised</w>\": 8949,\n  \"surprises</w>\": 16920,\n  \"surprising</w>\": 14964,\n  \"surprisingly</w>\": 17367,\n  \"surreal</w>\": 18408,\n  \"surrealism</w>\": 41773,\n  \"surrender</w>\": 20964,\n  \"surrendered</w>\": 44601,\n  \"surrey\": 26489,\n  \"surrey</w>\": 14315,\n  \"surro\": 47499,\n  \"surroun\": 8250,\n  \"surround\": 26543,\n  \"surround</w>\": 22999,\n  \"surrounded</w>\": 13589,\n  \"surrounding</w>\": 12544,\n  \"surroundings</w>\": 26915,\n  \"surrounds</w>\": 39012,\n  \"suru</w>\": 49240,\n  \"surve\": 8952,\n  \"surveill\": 15408,\n  \"surveillance</w>\": 15578,\n  \"survey\": 45914,\n  \"survey</w>\": 6809,\n  \"surveying</w>\": 33085,\n  \"surveys</w>\": 25096,\n  \"survi\": 3440,\n  \"surviv\": 12922,\n  \"survival</w>\": 10172,\n  \"survive</w>\": 10431,\n  \"survived</w>\": 13483,\n  \"survives</w>\": 30927,\n  \"surviving</w>\": 18609,\n  \"survivor\": 31934,\n  \"survivor</w>\": 10944,\n  \"survivors</w>\": 13711,\n  \"surya</w>\": 37767,\n  \"sus\": 8091,\n  \"sus</w>\": 3036,\n  \"susa</w>\": 20546,\n  \"susan\": 19922,\n  \"susan</w>\": 10168,\n  \"suscep\": 44270,\n  \"sush\": 22298,\n  \"sushi</w>\": 11729,\n  \"sushmaswar\": 48200,\n  \"susie</w>\": 32284,\n  \"susp\": 7971,\n  \"suspec\": 10298,\n  \"suspect</w>\": 9065,\n  \"suspected</w>\": 15579,\n  \"suspects</w>\": 18265,\n  \"suspen\": 10578,\n  \"suspend</w>\": 41007,\n  \"suspended</w>\": 13126,\n  \"suspends</w>\": 39535,\n  \"suspense</w>\": 21556,\n  \"suspension</w>\": 15417,\n  \"suspici\": 25714,\n  \"suspicion</w>\": 34910,\n  \"suspicious</w>\": 19862,\n  \"sussex\": 31244,\n  \"sussex</w>\": 13266,\n  \"sustain\": 4644,\n  \"sustain</w>\": 28156,\n  \"sustainability</w>\": 9635,\n  \"sustainable\": 23645,\n  \"sustainable</w>\": 7078,\n  \"sustained</w>\": 22699,\n  \"sustaining</w>\": 44418,\n  \"sut\": 23984,\n  \"sut</w>\": 28956,\n  \"sutherland</w>\": 27592,\n  \"sutton\": 39359,\n  \"sutton</w>\": 18564,\n  \"suv</w>\": 15985,\n  \"suz\": 9957,\n  \"suzanne</w>\": 24617,\n  \"suzu\": 36289,\n  \"suzuki</w>\": 16892,\n  \"suzy</w>\": 26552,\n  \"sv\": 6508,\n  \"sv</w>\": 17083,\n  \"svc</w>\": 45065,\n  \"sve\": 47637,\n  \"sven\": 37786,\n  \"sven</w>\": 45183,\n  \"sver\": 45923,\n  \"sville\": 44580,\n  \"sville</w>\": 6741,\n  \"svp</w>\": 28465,\n  \"svt</w>\": 42014,\n  \"svu</w>\": 32123,\n  \"sw\": 1220,\n  \"sw</w>\": 4457,\n  \"swa\": 4707,\n  \"swa</w>\": 31916,\n  \"swach\": 20862,\n  \"swachhb\": 31898,\n  \"swachhbharat</w>\": 36927,\n  \"swag\": 8852,\n  \"swag</w>\": 8177,\n  \"swagg</w>\": 47702,\n  \"swagger</w>\": 35797,\n  \"swain</w>\": 43226,\n  \"swal\": 13433,\n  \"swallow</w>\": 28979,\n  \"swallowed</w>\": 46956,\n  \"swallows</w>\": 45124,\n  \"swam</w>\": 42539,\n  \"swami</w>\": 25021,\n  \"swamp\": 41953,\n  \"swamp</w>\": 16595,\n  \"swamy</w>\": 28445,\n  \"swan\": 8215,\n  \"swan</w>\": 12530,\n  \"swana</w>\": 24699,\n  \"swans</w>\": 19516,\n  \"swansea</w>\": 16567,\n  \"swanson</w>\": 34797,\n  \"swap</w>\": 15234,\n  \"swapped</w>\": 39077,\n  \"swapping</w>\": 44702,\n  \"swaps</w>\": 49242,\n  \"swar\": 11680,\n  \"swarm</w>\": 31577,\n  \"swarovski</w>\": 28515,\n  \"swat\": 32547,\n  \"swat</w>\": 26482,\n  \"swatch</w>\": 48053,\n  \"sway\": 26443,\n  \"sway</w>\": 26617,\n  \"swc</w>\": 42231,\n  \"swe\": 2350,\n  \"swe</w>\": 38070,\n  \"swear</w>\": 7406,\n  \"swearing</w>\": 32627,\n  \"sweat\": 10282,\n  \"sweat</w>\": 12663,\n  \"sweater</w>\": 11455,\n  \"sweaters</w>\": 31303,\n  \"sweating</w>\": 33215,\n  \"sweats</w>\": 39321,\n  \"sweatshirt</w>\": 22442,\n  \"sweaty</w>\": 28419,\n  \"sweden</w>\": 8760,\n  \"swedish</w>\": 11585,\n  \"swee\": 1812,\n  \"sweek</w>\": 30017,\n  \"sweeney</w>\": 27286,\n  \"sweep\": 23220,\n  \"sweep</w>\": 13669,\n  \"sweeping</w>\": 25719,\n  \"sweeps</w>\": 26887,\n  \"sweepstakes</w>\": 25992,\n  \"sweet\": 10957,\n  \"sweet</w>\": 2418,\n  \"sweetened</w>\": 45577,\n  \"sweeter</w>\": 32873,\n  \"sweetest</w>\": 15180,\n  \"sweethe\": 16316,\n  \"sweetheart</w>\": 18079,\n  \"sweetie</w>\": 24450,\n  \"sweetness</w>\": 29713,\n  \"sweets</w>\": 18045,\n  \"swel\": 48470,\n  \"swell\": 35538,\n  \"swell</w>\": 21490,\n  \"swelling</w>\": 46578,\n  \"swept</w>\": 23311,\n  \"swer\": 30514,\n  \"swfc</w>\": 30227,\n  \"swfl</w>\": 46607,\n  \"swi\": 3881,\n  \"swi</w>\": 45223,\n  \"swick</w>\": 17159,\n  \"swif\": 28548,\n  \"swift\": 34843,\n  \"swift</w>\": 8229,\n  \"swild\": 33909,\n  \"swild</w>\": 38696,\n  \"swildlife</w>\": 46818,\n  \"swim\": 4928,\n  \"swim</w>\": 7681,\n  \"swimmer</w>\": 25475,\n  \"swimmers</w>\": 27776,\n  \"swimming</w>\": 7411,\n  \"swims</w>\": 46798,\n  \"swimsuit</w>\": 25504,\n  \"swimwear</w>\": 31889,\n  \"swin\": 14554,\n  \"swin</w>\": 40798,\n  \"swindon</w>\": 29540,\n  \"swine</w>\": 31166,\n  \"swing\": 25292,\n  \"swing</w>\": 7429,\n  \"swinging</w>\": 26760,\n  \"swings</w>\": 29141,\n  \"swipe</w>\": 31828,\n  \"swire</w>\": 42753,\n  \"swirl</w>\": 35795,\n  \"swis\": 23611,\n  \"swish</w>\": 38571,\n  \"swiss\": 37917,\n  \"swiss</w>\": 9287,\n  \"swit\": 3726,\n  \"switch\": 22480,\n  \"switch</w>\": 5893,\n  \"switched</w>\": 22869,\n  \"switches</w>\": 33569,\n  \"switching</w>\": 21155,\n  \"swith\": 17299,\n  \"switzer\": 9835,\n  \"switzerland</w>\": 9912,\n  \"swivel</w>\": 48256,\n  \"swo\": 38673,\n  \"swol\": 29575,\n  \"swollen</w>\": 36129,\n  \"swoo\": 29744,\n  \"swood</w>\": 24158,\n  \"swoon</w>\": 37028,\n  \"swoop</w>\": 45661,\n  \"sword\": 33294,\n  \"sword</w>\": 11356,\n  \"swords</w>\": 27181,\n  \"swork</w>\": 42722,\n  \"sworld</w>\": 33305,\n  \"sworn</w>\": 21130,\n  \"sworth</w>\": 13322,\n  \"swt</w>\": 38878,\n  \"swx</w>\": 20597,\n  \"sx\": 9402,\n  \"sx</w>\": 17806,\n  \"sxsw</w>\": 13369,\n  \"sy\": 974,\n  \"sy</w>\": 2126,\n  \"sya</w>\": 35017,\n  \"sycam\": 34911,\n  \"sycamore</w>\": 43086,\n  \"syd\": 4525,\n  \"syd</w>\": 22504,\n  \"sydney\": 15878,\n  \"sydney</w>\": 5278,\n  \"syed</w>\": 27624,\n  \"syfy</w>\": 32047,\n  \"sykes</w>\": 27287,\n  \"syl\": 6452,\n  \"sylla\": 41708,\n  \"sylvania</w>\": 12011,\n  \"sylve\": 28369,\n  \"sylvester</w>\": 37214,\n  \"sylvia</w>\": 25670,\n  \"sym\": 3645,\n  \"sym</w>\": 40327,\n  \"symb\": 22987,\n  \"symbol</w>\": 13085,\n  \"symboli\": 22019,\n  \"symbolic</w>\": 33177,\n  \"symbolism</w>\": 44679,\n  \"symbols</w>\": 25476,\n  \"symmetry</w>\": 31427,\n  \"symp\": 11468,\n  \"sympathi\": 47493,\n  \"sympathy</w>\": 32477,\n  \"symph\": 9544,\n  \"symphonic</w>\": 42639,\n  \"symphony</w>\": 11180,\n  \"sympo\": 9730,\n  \"symposium</w>\": 9971,\n  \"symptom</w>\": 47799,\n  \"symptoms</w>\": 12956,\n  \"syn\": 3758,\n  \"syn</w>\": 36090,\n  \"synago\": 30945,\n  \"synagogue</w>\": 33518,\n  \"sync</w>\": 20081,\n  \"synchron\": 23943,\n  \"syndic\": 21098,\n  \"syndicate</w>\": 28779,\n  \"syndrome</w>\": 10927,\n  \"syner\": 22283,\n  \"synergy</w>\": 32012,\n  \"syno\": 31533,\n  \"synod</w>\": 47712,\n  \"synopsis</w>\": 47018,\n  \"synth\": 33841,\n  \"synth</w>\": 24462,\n  \"synthe\": 22604,\n  \"synthesi\": 33565,\n  \"synthesis</w>\": 21602,\n  \"synthesizer</w>\": 44077,\n  \"synthetic</w>\": 19917,\n  \"syou\": 26742,\n  \"syour\": 21718,\n  \"syrac\": 17279,\n  \"syracuse</w>\": 19640,\n  \"syrah</w>\": 45364,\n  \"syri\": 18917,\n  \"syria</w>\": 5563,\n  \"syrian\": 47562,\n  \"syrian</w>\": 10041,\n  \"syrians</w>\": 41392,\n  \"syrup</w>\": 16611,\n  \"sys</w>\": 26726,\n  \"syste\": 1933,\n  \"system\": 47813,\n  \"system</w>\": 2422,\n  \"systematic</w>\": 28586,\n  \"systemic</w>\": 33807,\n  \"systems</w>\": 4828,\n  \"sz\": 13438,\n  \"sz</w>\": 15879,\n  \"sze\": 44507,\n  \"szn</w>\": 48092,\n  \"sÃ£o</w>\": 45911,\n  \"sÃ©\": 37879,\n  \"t\": 83,\n  \"t</w>\": 339,\n  \"ta\": 648,\n  \"ta</w>\": 1397,\n  \"taa</w>\": 43874,\n  \"tab\": 2648,\n  \"tab</w>\": 14724,\n  \"tabby</w>\": 36145,\n  \"tabern\": 48991,\n  \"tability</w>\": 15770,\n  \"table\": 12108,\n  \"table</w>\": 2175,\n  \"tableau</w>\": 39723,\n  \"tables</w>\": 7822,\n  \"tablet</w>\": 12494,\n  \"tabletop\": 46843,\n  \"tabletop</w>\": 25773,\n  \"tablets</w>\": 20436,\n  \"tably</w>\": 24440,\n  \"taboo</w>\": 38400,\n  \"tabs</w>\": 29163,\n  \"tac\": 3145,\n  \"tac</w>\": 22653,\n  \"tache</w>\": 39239,\n  \"tack\": 6339,\n  \"tack</w>\": 34446,\n  \"tackle</w>\": 10294,\n  \"tackled</w>\": 47218,\n  \"tackles</w>\": 18021,\n  \"tackling</w>\": 19628,\n  \"taco\": 31924,\n  \"taco</w>\": 12436,\n  \"tacoma</w>\": 25397,\n  \"tacos</w>\": 14090,\n  \"tactic</w>\": 40377,\n  \"tactical</w>\": 17137,\n  \"tactics</w>\": 16410,\n  \"tacular</w>\": 48985,\n  \"tad\": 15890,\n  \"tad</w>\": 19860,\n  \"tado</w>\": 40846,\n  \"tae\": 15257,\n  \"tae</w>\": 15580,\n  \"taehyung</w>\": 24642,\n  \"taek\": 30753,\n  \"taekwondo</w>\": 39963,\n  \"taemin</w>\": 30600,\n  \"taeyang</w>\": 45802,\n  \"taeyeon</w>\": 27389,\n  \"taf\": 29660,\n  \"taft</w>\": 42141,\n  \"tag\": 3456,\n  \"tag</w>\": 3640,\n  \"tage</w>\": 2669,\n  \"tages</w>\": 39902,\n  \"tagged</w>\": 12969,\n  \"tagging</w>\": 25138,\n  \"tagne</w>\": 47467,\n  \"tags</w>\": 11606,\n  \"tah\": 14822,\n  \"tah</w>\": 7090,\n  \"tahit\": 45385,\n  \"tahoe</w>\": 26140,\n  \"tai\": 6511,\n  \"tai</w>\": 13040,\n  \"taiji</w>\": 30185,\n  \"tail\": 7156,\n  \"tail</w>\": 4132,\n  \"tailed</w>\": 20626,\n  \"tailgate</w>\": 23168,\n  \"tailgating</w>\": 42625,\n  \"tailo\": 27230,\n  \"tailor</w>\": 29870,\n  \"tailored</w>\": 28275,\n  \"tailoring</w>\": 46357,\n  \"tails</w>\": 16066,\n  \"tain\": 2841,\n  \"tain</w>\": 1908,\n  \"taine\": 21214,\n  \"taine</w>\": 32299,\n  \"tained</w>\": 10212,\n  \"taining</w>\": 7565,\n  \"tainment</w>\": 30063,\n  \"tains</w>\": 3952,\n  \"tainted</w>\": 47211,\n  \"taipei</w>\": 24356,\n  \"tair\": 29143,\n  \"tairp</w>\": 43707,\n  \"tait</w>\": 45325,\n  \"taiwan\": 36319,\n  \"taiwan</w>\": 12626,\n  \"taiwanese</w>\": 41416,\n  \"taj\": 28937,\n  \"taj</w>\": 24805,\n  \"taji\": 46358,\n  \"tak\": 15070,\n  \"tak</w>\": 14458,\n  \"taka\": 24070,\n  \"taka</w>\": 40968,\n  \"take\": 5052,\n  \"take</w>\": 1172,\n  \"takeaway</w>\": 25737,\n  \"takeaways</w>\": 32080,\n  \"takeme\": 41748,\n  \"taken</w>\": 2807,\n  \"takeoff</w>\": 32789,\n  \"takeover</w>\": 11863,\n  \"taker</w>\": 17939,\n  \"takers</w>\": 30775,\n  \"takes</w>\": 2633,\n  \"takin</w>\": 30890,\n  \"taking</w>\": 2019,\n  \"taku</w>\": 48168,\n  \"tal\": 976,\n  \"tal</w>\": 2066,\n  \"tala</w>\": 29845,\n  \"talaga</w>\": 35349,\n  \"talbot</w>\": 30585,\n  \"tale\": 33971,\n  \"tale</w>\": 7798,\n  \"talent\": 30435,\n  \"talent</w>\": 5114,\n  \"talented</w>\": 5331,\n  \"talents</w>\": 16136,\n  \"tales</w>\": 9469,\n  \"tali\": 12122,\n  \"tali</w>\": 45406,\n  \"taliban</w>\": 20788,\n  \"talis\": 36480,\n  \"tality</w>\": 15631,\n  \"talk\": 12462,\n  \"talk</w>\": 1841,\n  \"talked</w>\": 10153,\n  \"talkin</w>\": 26040,\n  \"talking\": 31463,\n  \"talking</w>\": 2578,\n  \"talks</w>\": 3237,\n  \"tall\": 11664,\n  \"tall</w>\": 7771,\n  \"talla\": 21528,\n  \"tallade\": 44220,\n  \"tallahassee</w>\": 37832,\n  \"taller</w>\": 23470,\n  \"tallest</w>\": 19774,\n  \"tallinn</w>\": 45079,\n  \"tally</w>\": 16323,\n  \"talon</w>\": 47897,\n  \"tam\": 2661,\n  \"tam</w>\": 12246,\n  \"tama</w>\": 45424,\n  \"tamanna\": 48055,\n  \"tamar\": 22901,\n  \"tamara</w>\": 35697,\n  \"tame\": 38557,\n  \"tame</w>\": 32778,\n  \"tamed</w>\": 40575,\n  \"tami</w>\": 39429,\n  \"tamil\": 23046,\n  \"tamil</w>\": 14033,\n  \"tamilnadu</w>\": 32371,\n  \"tamine</w>\": 42566,\n  \"tammy</w>\": 28396,\n  \"tampa</w>\": 10906,\n  \"tampab\": 37852,\n  \"tamu</w>\": 34105,\n  \"tan\": 2123,\n  \"tan</w>\": 5039,\n  \"tana</w>\": 21396,\n  \"tand\": 20244,\n  \"tandem</w>\": 33756,\n  \"tane\": 13344,\n  \"tane</w>\": 24923,\n  \"taneous</w>\": 22275,\n  \"taneously</w>\": 24422,\n  \"tang\": 10425,\n  \"tang</w>\": 20794,\n  \"tanger\": 31844,\n  \"tangerine</w>\": 42045,\n  \"tangible</w>\": 44823,\n  \"tangle</w>\": 36568,\n  \"tangled</w>\": 33587,\n  \"tango</w>\": 24089,\n  \"tani\": 31374,\n  \"tani</w>\": 32985,\n  \"tania</w>\": 45369,\n  \"tank\": 29858,\n  \"tank</w>\": 6172,\n  \"tanker</w>\": 25020,\n  \"tanks</w>\": 14223,\n  \"tann\": 19174,\n  \"tanner</w>\": 22001,\n  \"tanning</w>\": 27985,\n  \"tans</w>\": 27332,\n  \"tant\": 41383,\n  \"tant</w>\": 41695,\n  \"tante</w>\": 48262,\n  \"tanto</w>\": 45685,\n  \"tany\": 34410,\n  \"tanya</w>\": 26800,\n  \"tanz\": 47399,\n  \"tanzania</w>\": 15711,\n  \"tao\": 29084,\n  \"tao</w>\": 18923,\n  \"tap\": 17923,\n  \"tap</w>\": 7888,\n  \"tapas</w>\": 27361,\n  \"tape\": 18332,\n  \"tape</w>\": 5749,\n  \"taped</w>\": 33219,\n  \"tapes</w>\": 17903,\n  \"tapestry</w>\": 33525,\n  \"taping</w>\": 24355,\n  \"tapp\": 27644,\n  \"tapp</w>\": 27764,\n  \"tapped</w>\": 26649,\n  \"tapping</w>\": 27882,\n  \"tapro\": 34415,\n  \"taproom</w>\": 40266,\n  \"taps</w>\": 23267,\n  \"tar\": 2002,\n  \"tar</w>\": 6977,\n  \"tara</w>\": 15264,\n  \"tarak</w>\": 37813,\n  \"taran\": 32370,\n  \"tarantino</w>\": 41180,\n  \"tarde</w>\": 48670,\n  \"tardis</w>\": 35410,\n  \"tares</w>\": 34587,\n  \"targe\": 9620,\n  \"target\": 38556,\n  \"target</w>\": 5400,\n  \"targeted</w>\": 14968,\n  \"targeting</w>\": 15818,\n  \"targets</w>\": 12468,\n  \"tari\": 4238,\n  \"tari</w>\": 38012,\n  \"tarian</w>\": 11762,\n  \"tarians</w>\": 42789,\n  \"taries</w>\": 47291,\n  \"tariff</w>\": 40220,\n  \"tariffs</w>\": 28335,\n  \"tariq</w>\": 42526,\n  \"tarmac</w>\": 44294,\n  \"taro</w>\": 26264,\n  \"tarot</w>\": 23702,\n  \"tart\": 16707,\n  \"tart</w>\": 14120,\n  \"tartan</w>\": 35064,\n  \"tarts</w>\": 29799,\n  \"tary\": 31729,\n  \"tary</w>\": 5065,\n  \"tarzan</w>\": 45463,\n  \"tas\": 6538,\n  \"tas</w>\": 10163,\n  \"tash\": 35272,\n  \"tasha</w>\": 44967,\n  \"task\": 39189,\n  \"task</w>\": 10549,\n  \"tasks</w>\": 19453,\n  \"tasmania</w>\": 22429,\n  \"tasmanian</w>\": 45102,\n  \"tassel</w>\": 49276,\n  \"tast\": 10839,\n  \"taste\": 14314,\n  \"taste</w>\": 5219,\n  \"tasted</w>\": 22827,\n  \"tasteof\": 38097,\n  \"taster</w>\": 29743,\n  \"tastes</w>\": 13736,\n  \"tastic</w>\": 21337,\n  \"tasting</w>\": 7656,\n  \"tastings</w>\": 49273,\n  \"tasty\": 43390,\n  \"tasty</w>\": 8568,\n  \"tat\": 2652,\n  \"tat</w>\": 21592,\n  \"tata</w>\": 19300,\n  \"tate\": 44476,\n  \"tate</w>\": 13295,\n  \"tath\": 27566,\n  \"tati\": 31433,\n  \"tatiana</w>\": 48837,\n  \"tation</w>\": 5280,\n  \"tations</w>\": 32324,\n  \"tator</w>\": 18791,\n  \"tators</w>\": 37206,\n  \"tats</w>\": 44557,\n  \"tatt\": 9232,\n  \"tatted</w>\": 41605,\n  \"tattoo\": 15980,\n  \"tattoo</w>\": 6325,\n  \"tattooed</w>\": 28541,\n  \"tattoos</w>\": 14900,\n  \"tatum</w>\": 26103,\n  \"tau\": 6620,\n  \"tau</w>\": 20510,\n  \"taught</w>\": 9306,\n  \"taun\": 23910,\n  \"taunton</w>\": 40681,\n  \"taurus</w>\": 32881,\n  \"taver\": 37776,\n  \"tavern</w>\": 18644,\n  \"taw\": 33868,\n  \"taw</w>\": 40289,\n  \"tawa</w>\": 29035,\n  \"tawards</w>\": 14351,\n  \"tax\": 4581,\n  \"tax</w>\": 3879,\n  \"taxation</w>\": 36847,\n  \"taxes</w>\": 11462,\n  \"taxi\": 25160,\n  \"taxi</w>\": 11380,\n  \"taxider\": 47420,\n  \"taxis</w>\": 34009,\n  \"taxpay\": 17986,\n  \"taxpayer</w>\": 30978,\n  \"taxpayers</w>\": 25503,\n  \"tay\": 6542,\n  \"tay</w>\": 15073,\n  \"taya</w>\": 38484,\n  \"tayl\": 3913,\n  \"taylor\": 9044,\n  \"taylor</w>\": 3961,\n  \"taylorswift</w>\": 18936,\n  \"tayo</w>\": 33941,\n  \"taz\": 41475,\n  \"taz</w>\": 31870,\n  \"tb\": 1990,\n  \"tb</w>\": 7490,\n  \"tba</w>\": 34363,\n  \"tball\": 8390,\n  \"tball</w>\": 1467,\n  \"tbc</w>\": 31807,\n  \"tbd</w>\": 45548,\n  \"tbh</w>\": 13238,\n  \"tbi</w>\": 45868,\n  \"tbl</w>\": 42962,\n  \"tbli\": 43664,\n  \"tblightning</w>\": 44178,\n  \"tbo</w>\": 34255,\n  \"tbr</w>\": 46643,\n  \"tbs</w>\": 37368,\n  \"tbt</w>\": 2950,\n  \"tc\": 6820,\n  \"tc</w>\": 5454,\n  \"tca</w>\": 35116,\n  \"tch\": 10744,\n  \"tch</w>\": 4048,\n  \"tches</w>\": 42001,\n  \"tcm\": 21501,\n  \"tcm</w>\": 26588,\n  \"tcmparty</w>\": 24338,\n  \"tcot</w>\": 8995,\n  \"tcs</w>\": 39107,\n  \"tcu</w>\": 26791,\n  \"td\": 20578,\n  \"td</w>\": 3192,\n  \"tdf</w>\": 21844,\n  \"tdi</w>\": 45621,\n  \"tdp</w>\": 47009,\n  \"tds</w>\": 20238,\n  \"tdsb</w>\": 29836,\n  \"te\": 600,\n  \"te</w>\": 756,\n  \"tea\": 41053,\n  \"tea</w>\": 3274,\n  \"teach\": 2043,\n  \"teach</w>\": 6865,\n  \"teacher\": 18051,\n  \"teacher</w>\": 4008,\n  \"teachers</w>\": 5069,\n  \"teaches</w>\": 17110,\n  \"teaching</w>\": 5141,\n  \"teachings</w>\": 32119,\n  \"teal</w>\": 22821,\n  \"team\": 2085,\n  \"team</w>\": 1027,\n  \"teamcanada</w>\": 46636,\n  \"teamed</w>\": 20590,\n  \"teamgb</w>\": 40971,\n  \"teaming</w>\": 24392,\n  \"teammate</w>\": 17900,\n  \"teammates</w>\": 13921,\n  \"teams</w>\": 3891,\n  \"teamsisd</w>\": 34703,\n  \"teamusa</w>\": 28625,\n  \"teamwork</w>\": 14657,\n  \"teaparty</w>\": 33065,\n  \"teapo\": 35745,\n  \"teapot</w>\": 40749,\n  \"tear\": 15802,\n  \"tear</w>\": 11862,\n  \"tearful</w>\": 46873,\n  \"tearing</w>\": 24785,\n  \"tears</w>\": 7688,\n  \"teas\": 23003,\n  \"teas</w>\": 29314,\n  \"tease</w>\": 25163,\n  \"teased</w>\": 49122,\n  \"teaser</w>\": 8982,\n  \"teasers</w>\": 48990,\n  \"teases</w>\": 28509,\n  \"teasing</w>\": 36507,\n  \"teat\": 26376,\n  \"teatime</w>\": 48948,\n  \"teatro</w>\": 35756,\n  \"teau</w>\": 24931,\n  \"tebow</w>\": 37797,\n  \"tec\": 17381,\n  \"tec</w>\": 11612,\n  \"tech\": 1782,\n  \"tech</w>\": 2061,\n  \"techcrunch</w>\": 42110,\n  \"techn\": 6252,\n  \"technews</w>\": 31787,\n  \"technic\": 16639,\n  \"technic</w>\": 37666,\n  \"technical\": 49231,\n  \"technical</w>\": 7582,\n  \"technically</w>\": 23180,\n  \"technician</w>\": 22540,\n  \"technicians</w>\": 35513,\n  \"techno\": 2599,\n  \"techno</w>\": 17564,\n  \"technological</w>\": 23068,\n  \"technologies</w>\": 10040,\n  \"technology</w>\": 3089,\n  \"techs</w>\": 41353,\n  \"ted\": 4841,\n  \"ted</w>\": 775,\n  \"tedcruz</w>\": 27517,\n  \"teddy\": 25758,\n  \"teddy</w>\": 11798,\n  \"tedly</w>\": 8539,\n  \"tedu</w>\": 42517,\n  \"tedx\": 17950,\n  \"tedx</w>\": 41504,\n  \"tee\": 12676,\n  \"tee</w>\": 3385,\n  \"teed</w>\": 13692,\n  \"teen\": 5398,\n  \"teen</w>\": 4697,\n  \"teenage</w>\": 14069,\n  \"teenager</w>\": 19338,\n  \"teenagers</w>\": 25989,\n  \"teenchoice</w>\": 28203,\n  \"teens</w>\": 12375,\n  \"teenth</w>\": 20249,\n  \"teenwolf</w>\": 40067,\n  \"teeny</w>\": 41622,\n  \"teer</w>\": 48648,\n  \"tees</w>\": 9641,\n  \"teessi\": 43295,\n  \"teeth</w>\": 8225,\n  \"tega</w>\": 29508,\n  \"tegr\": 39801,\n  \"teh\": 18720,\n  \"teh</w>\": 29601,\n  \"tehran</w>\": 26399,\n  \"tein</w>\": 33223,\n  \"tej</w>\": 46724,\n  \"tek\": 17489,\n  \"tek</w>\": 18294,\n  \"tekken</w>\": 29843,\n  \"tel\": 4978,\n  \"tel</w>\": 2226,\n  \"telang\": 23469,\n  \"telangana</w>\": 26386,\n  \"tele\": 3103,\n  \"tele</w>\": 32851,\n  \"telecom</w>\": 21057,\n  \"telecommunications</w>\": 39900,\n  \"telegram</w>\": 26780,\n  \"telegraph</w>\": 14713,\n  \"telephone</w>\": 17243,\n  \"telescope</w>\": 19037,\n  \"telethon</w>\": 49266,\n  \"televised</w>\": 39470,\n  \"television</w>\": 8608,\n  \"telford</w>\": 38323,\n  \"tell\": 16069,\n  \"tell</w>\": 2330,\n  \"teller</w>\": 20415,\n  \"tellers</w>\": 42707,\n  \"telling</w>\": 5507,\n  \"tells</w>\": 5217,\n  \"tellu\": 42511,\n  \"telly</w>\": 31475,\n  \"tels</w>\": 43607,\n  \"telugu</w>\": 22927,\n  \"tely</w>\": 5630,\n  \"tem\": 2404,\n  \"tem</w>\": 17536,\n  \"tema</w>\": 45881,\n  \"teme\": 43378,\n  \"temp\": 2684,\n  \"temp</w>\": 11097,\n  \"tempe</w>\": 36723,\n  \"temper\": 5981,\n  \"temper</w>\": 35521,\n  \"temperature</w>\": 9543,\n  \"temperatures</w>\": 11575,\n  \"tempered</w>\": 40521,\n  \"tempest</w>\": 36053,\n  \"templ\": 16679,\n  \"template</w>\": 18591,\n  \"templates</w>\": 30498,\n  \"temple\": 21841,\n  \"temple</w>\": 5620,\n  \"temples</w>\": 24024,\n  \"tempo</w>\": 19625,\n  \"tempor\": 4858,\n  \"temporal</w>\": 43656,\n  \"temporarily</w>\": 23189,\n  \"temporary</w>\": 6513,\n  \"temps</w>\": 11668,\n  \"tempt</w>\": 28460,\n  \"temptation</w>\": 30118,\n  \"tempted</w>\": 26226,\n  \"tempting</w>\": 34876,\n  \"ten\": 1149,\n  \"ten</w>\": 2581,\n  \"tenant</w>\": 16954,\n  \"tenants</w>\": 26023,\n  \"tenay</w>\": 45384,\n  \"tenberg</w>\": 31329,\n  \"tend\": 17630,\n  \"tend</w>\": 21252,\n  \"tendency</w>\": 47277,\n  \"tender\": 23020,\n  \"tender</w>\": 9838,\n  \"tenderloin</w>\": 42750,\n  \"tenders</w>\": 44741,\n  \"tending</w>\": 35084,\n  \"tendon</w>\": 48459,\n  \"tends</w>\": 39962,\n  \"tene\": 24868,\n  \"tened</w>\": 13682,\n  \"tener</w>\": 29054,\n  \"teneri\": 28000,\n  \"tenerife</w>\": 29401,\n  \"teners</w>\": 41307,\n  \"teness</w>\": 18018,\n  \"teng\": 34016,\n  \"teng</w>\": 28474,\n  \"tennant</w>\": 29310,\n  \"tennes\": 9514,\n  \"tennessee</w>\": 10053,\n  \"tennis\": 31504,\n  \"tennis</w>\": 5298,\n  \"tenor</w>\": 30521,\n  \"tens</w>\": 14062,\n  \"tense</w>\": 23518,\n  \"tension</w>\": 15221,\n  \"tensions</w>\": 24224,\n  \"tenstein</w>\": 49139,\n  \"tent\": 18505,\n  \"tent</w>\": 10782,\n  \"tentative</w>\": 48238,\n  \"tenth</w>\": 27483,\n  \"tention</w>\": 12191,\n  \"tents</w>\": 30730,\n  \"tenure</w>\": 30739,\n  \"teo</w>\": 18665,\n  \"tep</w>\": 31806,\n  \"tequ\": 17502,\n  \"tequila</w>\": 18510,\n  \"ter\": 704,\n  \"ter</w>\": 652,\n  \"tera</w>\": 15155,\n  \"teras</w>\": 44830,\n  \"tere\": 11329,\n  \"tered\": 49272,\n  \"tered</w>\": 4389,\n  \"terence</w>\": 33806,\n  \"teresa</w>\": 19081,\n  \"teri</w>\": 30917,\n  \"teria</w>\": 22685,\n  \"terie</w>\": 42276,\n  \"tering</w>\": 7929,\n  \"term\": 40991,\n  \"term</w>\": 4780,\n  \"termin\": 4766,\n  \"terminal</w>\": 11816,\n  \"terminals</w>\": 44091,\n  \"terminator</w>\": 29609,\n  \"terminology</w>\": 48896,\n  \"terms</w>\": 8663,\n  \"tern\": 41572,\n  \"tern</w>\": 12959,\n  \"terns</w>\": 25251,\n  \"tero\": 20727,\n  \"tero</w>\": 24697,\n  \"terps</w>\": 41471,\n  \"terr\": 3921,\n  \"terra\": 22366,\n  \"terra</w>\": 18816,\n  \"terrac\": 28549,\n  \"terrace</w>\": 13820,\n  \"terraces</w>\": 47508,\n  \"terracotta</w>\": 45123,\n  \"terrain</w>\": 20184,\n  \"terran\": 43726,\n  \"terre\": 33888,\n  \"terre</w>\": 27537,\n  \"terrell</w>\": 39494,\n  \"terrence</w>\": 38746,\n  \"terrestrial</w>\": 46299,\n  \"terri\": 4504,\n  \"terri</w>\": 36722,\n  \"terrible</w>\": 9741,\n  \"terribly</w>\": 34558,\n  \"terrier</w>\": 14455,\n  \"terriers</w>\": 47047,\n  \"terrific</w>\": 13837,\n  \"terrified</w>\": 28204,\n  \"terrifying</w>\": 18526,\n  \"territ\": 10720,\n  \"territorial</w>\": 39163,\n  \"territories</w>\": 32846,\n  \"territory</w>\": 13936,\n  \"terror\": 9596,\n  \"terror</w>\": 9327,\n  \"terrori\": 6836,\n  \"terrorism</w>\": 10583,\n  \"terrorist</w>\": 10575,\n  \"terrorists</w>\": 12835,\n  \"terry\": 19378,\n  \"terry</w>\": 8561,\n  \"ters\": 24102,\n  \"ters</w>\": 1737,\n  \"terti\": 48386,\n  \"tery</w>\": 4184,\n  \"tes\": 8019,\n  \"tes</w>\": 3609,\n  \"tesco</w>\": 15434,\n  \"tese</w>\": 33320,\n  \"tesla</w>\": 12254,\n  \"tess\": 21807,\n  \"tess</w>\": 20840,\n  \"tessa</w>\": 32063,\n  \"test\": 7738,\n  \"test</w>\": 1628,\n  \"testam\": 23477,\n  \"testament</w>\": 24609,\n  \"tested</w>\": 10576,\n  \"tester</w>\": 32707,\n  \"testi\": 18373,\n  \"testic\": 42364,\n  \"testify</w>\": 33088,\n  \"testifying</w>\": 46347,\n  \"testim\": 12553,\n  \"testimonial</w>\": 28834,\n  \"testimony</w>\": 18672,\n  \"testing</w>\": 4967,\n  \"testo\": 42428,\n  \"testosterone</w>\": 45168,\n  \"tests</w>\": 8715,\n  \"tet\": 40468,\n  \"tet</w>\": 13275,\n  \"tetra\": 40902,\n  \"tetris</w>\": 45934,\n  \"teu\": 47152,\n  \"teuk</w>\": 39979,\n  \"teur</w>\": 27120,\n  \"tex\": 2056,\n  \"tex</w>\": 11728,\n  \"texan\": 35287,\n  \"texan</w>\": 38386,\n  \"texans</w>\": 17580,\n  \"texanscheer</w>\": 43717,\n  \"texas\": 15713,\n  \"texas</w>\": 3403,\n  \"texaste\": 46469,\n  \"text\": 18169,\n  \"text</w>\": 4160,\n  \"textbook</w>\": 25952,\n  \"textbooks</w>\": 44041,\n  \"texted</w>\": 29004,\n  \"textile</w>\": 19789,\n  \"textiles</w>\": 24326,\n  \"texting</w>\": 18600,\n  \"texts</w>\": 12767,\n  \"texture</w>\": 16505,\n  \"textured</w>\": 32168,\n  \"textures</w>\": 28063,\n  \"tey</w>\": 32395,\n  \"tez</w>\": 22664,\n  \"tf\": 18828,\n  \"tf</w>\": 5001,\n  \"tfc</w>\": 30186,\n  \"tfl</w>\": 29918,\n  \"tford</w>\": 22493,\n  \"tful</w>\": 17108,\n  \"tfw</w>\": 16741,\n  \"tg\": 7665,\n  \"tg</w>\": 11981,\n  \"tgif</w>\": 14483,\n  \"th\": 513,\n  \"th</w>\": 640,\n  \"tha\": 18470,\n  \"tha</w>\": 4715,\n  \"thab\": 38219,\n  \"thad\": 48339,\n  \"thai\": 28054,\n  \"thai</w>\": 8825,\n  \"thail\": 7258,\n  \"thailand</w>\": 7469,\n  \"thak\": 22801,\n  \"thakur</w>\": 38427,\n  \"thal\": 7967,\n  \"thal</w>\": 12323,\n  \"thala</w>\": 17784,\n  \"thalai\": 25206,\n  \"thalaivar</w>\": 44918,\n  \"thalap\": 39789,\n  \"thalapathy\": 45405,\n  \"thalapathy</w>\": 23324,\n  \"thall</w>\": 36007,\n  \"tham\": 11761,\n  \"tham</w>\": 8896,\n  \"thames\": 43472,\n  \"thames</w>\": 15321,\n  \"than\": 792,\n  \"than</w>\": 1126,\n  \"thand\": 44465,\n  \"thane</w>\": 21463,\n  \"thang</w>\": 24870,\n  \"thani</w>\": 31322,\n  \"thank\": 2790,\n  \"thank</w>\": 1144,\n  \"thanked</w>\": 32079,\n  \"thankful\": 38839,\n  \"thankful</w>\": 6217,\n  \"thankfully</w>\": 22089,\n  \"thanking</w>\": 21989,\n  \"thanks\": 5672,\n  \"thanks</w>\": 1085,\n  \"thanksgiving\": 45732,\n  \"thanksgiving</w>\": 6167,\n  \"thanku</w>\": 45710,\n  \"thankyou\": 18050,\n  \"thankyou</w>\": 9911,\n  \"thanniversary</w>\": 35564,\n  \"thanos</w>\": 36709,\n  \"thanx</w>\": 25095,\n  \"thar\": 14396,\n  \"thar</w>\": 38843,\n  \"thard</w>\": 43474,\n  \"that\": 6303,\n  \"that</w>\": 682,\n  \"thatcher</w>\": 32496,\n  \"thats\": 44636,\n  \"thats</w>\": 9254,\n  \"thaw\": 26081,\n  \"thaw</w>\": 47229,\n  \"thbewithyou</w>\": 41067,\n  \"thc</w>\": 20091,\n  \"thcentury</w>\": 49111,\n  \"thd</w>\": 28219,\n  \"thday</w>\": 37801,\n  \"the\": 599,\n  \"the</w>\": 518,\n  \"thea\": 15935,\n  \"thea</w>\": 25429,\n  \"thead</w>\": 25259,\n  \"theal\": 45728,\n  \"thealth</w>\": 31398,\n  \"thear\": 43283,\n  \"theart\": 44678,\n  \"theast</w>\": 8378,\n  \"theastern</w>\": 17877,\n  \"theat\": 2263,\n  \"theater\": 39438,\n  \"theater</w>\": 6128,\n  \"theaters</w>\": 14689,\n  \"theatre\": 19857,\n  \"theatre</w>\": 3292,\n  \"theatres</w>\": 21680,\n  \"theatrical</w>\": 26833,\n  \"theband</w>\": 27695,\n  \"thebeatles</w>\": 35645,\n  \"thebest\": 40883,\n  \"thebest</w>\": 25856,\n  \"thebig\": 24732,\n  \"theblack\": 47718,\n  \"thec\": 48659,\n  \"thed</w>\": 31405,\n  \"thedaily\": 33550,\n  \"theday</w>\": 4408,\n  \"thedream</w>\": 39417,\n  \"thee\": 44475,\n  \"thee</w>\": 15108,\n  \"theeconomist</w>\": 44518,\n  \"theellenshow</w>\": 35342,\n  \"thefilm</w>\": 31665,\n  \"theflash</w>\": 25434,\n  \"theforce\": 40002,\n  \"theforceawakens</w>\": 48033,\n  \"theft</w>\": 13286,\n  \"thefuture</w>\": 34287,\n  \"thegame</w>\": 24428,\n  \"thegood\": 28594,\n  \"thegreat\": 28721,\n  \"thei\": 44522,\n  \"their</w>\": 911,\n  \"theirs</w>\": 29297,\n  \"thel\": 5403,\n  \"thelast\": 23495,\n  \"thelastjedi</w>\": 47992,\n  \"theless</w>\": 27712,\n  \"theli\": 15277,\n  \"thelittle\": 46872,\n  \"thelo\": 47036,\n  \"thelove\": 40668,\n  \"thelove</w>\": 43200,\n  \"them\": 5435,\n  \"them</w>\": 1180,\n  \"themasters</w>\": 48378,\n  \"theme\": 38524,\n  \"theme</w>\": 5849,\n  \"themed</w>\": 10126,\n  \"themes</w>\": 17849,\n  \"themet</w>\": 48183,\n  \"themovie</w>\": 27062,\n  \"themselves</w>\": 6503,\n  \"then\": 5929,\n  \"then</w>\": 1594,\n  \"thenburg</w>\": 45209,\n  \"thene\": 17012,\n  \"thenew\": 24212,\n  \"thenext\": 47881,\n  \"thenight</w>\": 43336,\n  \"theno\": 37172,\n  \"thenorth</w>\": 34338,\n  \"theo\": 17043,\n  \"theo</w>\": 18084,\n  \"theod\": 26653,\n  \"theodore</w>\": 30743,\n  \"theological</w>\": 41162,\n  \"theology</w>\": 24095,\n  \"theon</w>\": 34653,\n  \"theone</w>\": 46231,\n  \"theopen</w>\": 41438,\n  \"theore\": 22690,\n  \"theoretical</w>\": 35585,\n  \"theori\": 34804,\n  \"theories</w>\": 23937,\n  \"theory</w>\": 7143,\n  \"thepeople</w>\": 33597,\n  \"thepersonal\": 29981,\n  \"thepersonalnetwork</w>\": 30016,\n  \"thephoto\": 18303,\n  \"thephotohour</w>\": 18607,\n  \"ther\": 1160,\n  \"ther</w>\": 743,\n  \"therap\": 4499,\n  \"therapeu\": 19332,\n  \"therapeutic</w>\": 23240,\n  \"therapeutics</w>\": 49101,\n  \"therapies</w>\": 30179,\n  \"therapist</w>\": 20608,\n  \"therapists</w>\": 34763,\n  \"therapper</w>\": 49340,\n  \"therapy</w>\": 5257,\n  \"there\": 5283,\n  \"there</w>\": 997,\n  \"thereal\": 8074,\n  \"thereal</w>\": 41140,\n  \"thereby</w>\": 43308,\n  \"thered</w>\": 10208,\n  \"therefore</w>\": 16865,\n  \"theres</w>\": 18494,\n  \"theresa</w>\": 14126,\n  \"therese</w>\": 47996,\n  \"theresistance</w>\": 22845,\n  \"theri\": 28967,\n  \"theri</w>\": 45297,\n  \"therine\": 26807,\n  \"therine</w>\": 9239,\n  \"thering</w>\": 7891,\n  \"therland</w>\": 25351,\n  \"thermal</w>\": 13689,\n  \"thermo\": 22303,\n  \"thermom\": 31138,\n  \"thermometer</w>\": 38172,\n  \"thermost\": 42391,\n  \"thern\": 10919,\n  \"thern</w>\": 3137,\n  \"thero\": 13165,\n  \"theroad</w>\": 29807,\n  \"therock</w>\": 30036,\n  \"theroy\": 38146,\n  \"thers</w>\": 1959,\n  \"thes\": 40556,\n  \"thes</w>\": 6460,\n  \"thescript</w>\": 47061,\n  \"these\": 40366,\n  \"these</w>\": 1071,\n  \"theses</w>\": 39388,\n  \"thesimpsons</w>\": 45513,\n  \"thesims</w>\": 34192,\n  \"thesis</w>\": 10673,\n  \"thessal\": 41491,\n  \"thessaloni\": 41753,\n  \"thest</w>\": 35343,\n  \"thesun</w>\": 45617,\n  \"theta</w>\": 27694,\n  \"thetic</w>\": 7954,\n  \"thetimes</w>\": 36039,\n  \"thevamp\": 33701,\n  \"thevoice\": 47206,\n  \"thevoice</w>\": 30258,\n  \"thewalkingdead</w>\": 18087,\n  \"thewanted</w>\": 43008,\n  \"theworld\": 44988,\n  \"theworld</w>\": 17475,\n  \"thex\": 35990,\n  \"they\": 15174,\n  \"they</w>\": 889,\n  \"theyre</w>\": 28266,\n  \"thfc</w>\": 17729,\n  \"thi\": 2362,\n  \"thi</w>\": 9111,\n  \"thia</w>\": 17943,\n  \"thiago</w>\": 44537,\n  \"thian</w>\": 23214,\n  \"thians</w>\": 28187,\n  \"thibau\": 48351,\n  \"thic\": 26107,\n  \"thic</w>\": 11794,\n  \"thick\": 18417,\n  \"thick</w>\": 11006,\n  \"thicker</w>\": 43302,\n  \"thickness</w>\": 40754,\n  \"thief</w>\": 18508,\n  \"thier</w>\": 25595,\n  \"thierry</w>\": 32929,\n  \"thieves</w>\": 17899,\n  \"thigh\": 47124,\n  \"thigh</w>\": 22877,\n  \"thighs</w>\": 30847,\n  \"thik</w>\": 20512,\n  \"thika</w>\": 44619,\n  \"thill</w>\": 31266,\n  \"thim\": 42331,\n  \"thin\": 2178,\n  \"thin</w>\": 7847,\n  \"thine</w>\": 47192,\n  \"thing\": 7499,\n  \"thing</w>\": 946,\n  \"things\": 30670,\n  \"things</w>\": 1739,\n  \"thingsto\": 43924,\n  \"thingy</w>\": 36888,\n  \"think\": 9820,\n  \"think</w>\": 1331,\n  \"thinkbig\": 26015,\n  \"thinkbigsundaywithmarsha</w>\": 26666,\n  \"thinker</w>\": 34577,\n  \"thinkers</w>\": 32779,\n  \"thinkin</w>\": 34443,\n  \"thinking</w>\": 3291,\n  \"thinks</w>\": 6109,\n  \"thinner</w>\": 47247,\n  \"thir\": 6030,\n  \"third\": 32102,\n  \"third</w>\": 3981,\n  \"thirds</w>\": 42582,\n  \"thirst</w>\": 23563,\n  \"thirsty\": 39731,\n  \"thirsty</w>\": 17521,\n  \"thirteen</w>\": 34209,\n  \"thirty</w>\": 20813,\n  \"thiru\": 43292,\n  \"this\": 4340,\n  \"this</w>\": 589,\n  \"thisday</w>\": 6532,\n  \"thisdayin\": 33641,\n  \"thisdayinhistory</w>\": 46913,\n  \"thisi\": 7299,\n  \"thisis\": 14887,\n  \"thismorning</w>\": 36245,\n  \"thistle</w>\": 29039,\n  \"thistory</w>\": 28904,\n  \"thium</w>\": 21804,\n  \"thletics</w>\": 17765,\n  \"thm</w>\": 10407,\n  \"thman</w>\": 30079,\n  \"thms</w>\": 19874,\n  \"thn\": 44155,\n  \"thn</w>\": 45587,\n  \"thnx</w>\": 25480,\n  \"tho\": 1325,\n  \"tho</w>\": 5025,\n  \"thof\": 18943,\n  \"thofjuly</w>\": 21613,\n  \"thol\": 29319,\n  \"thole</w>\": 31029,\n  \"tholes</w>\": 42465,\n  \"thology</w>\": 9881,\n  \"thom\": 2585,\n  \"thom</w>\": 24094,\n  \"thomas\": 12574,\n  \"thomas</w>\": 3888,\n  \"thome</w>\": 21289,\n  \"thomp\": 37274,\n  \"thompson\": 42181,\n  \"thompson</w>\": 8535,\n  \"thomson</w>\": 24151,\n  \"thon\": 38776,\n  \"thon</w>\": 8924,\n  \"thong</w>\": 37058,\n  \"thood</w>\": 15623,\n  \"thor\": 4130,\n  \"thor</w>\": 13691,\n  \"thora</w>\": 46866,\n  \"thorn\": 12957,\n  \"thorn</w>\": 18466,\n  \"thorne</w>\": 18025,\n  \"thorns</w>\": 33650,\n  \"thornton</w>\": 23592,\n  \"thorough\": 15294,\n  \"thorough</w>\": 34788,\n  \"thoroughbred</w>\": 43248,\n  \"thoroughly</w>\": 19750,\n  \"thorpe</w>\": 18099,\n  \"thos</w>\": 41965,\n  \"those</w>\": 1753,\n  \"thot</w>\": 33736,\n  \"thou\": 1513,\n  \"thou</w>\": 17781,\n  \"though</w>\": 2846,\n  \"thought\": 23948,\n  \"thought</w>\": 2449,\n  \"thoughtful</w>\": 19592,\n  \"thoughts</w>\": 3618,\n  \"thour</w>\": 27125,\n  \"thousand</w>\": 9344,\n  \"thousands</w>\": 7089,\n  \"thouse\": 40318,\n  \"thouse</w>\": 7819,\n  \"thoven</w>\": 23078,\n  \"thr\": 1111,\n  \"thr</w>\": 19138,\n  \"thra\": 17761,\n  \"thra</w>\": 32797,\n  \"thrash</w>\": 38262,\n  \"thre\": 1607,\n  \"thread\": 31108,\n  \"thread</w>\": 8815,\n  \"threads</w>\": 24957,\n  \"threat\": 7527,\n  \"threat</w>\": 7212,\n  \"threaten</w>\": 26097,\n  \"threatened</w>\": 16391,\n  \"threatening</w>\": 16400,\n  \"threatens</w>\": 20555,\n  \"threats</w>\": 12766,\n  \"three\": 21615,\n  \"three</w>\": 2097,\n  \"thren</w>\": 41776,\n  \"thresh\": 29779,\n  \"threshold</w>\": 33791,\n  \"threw</w>\": 12746,\n  \"thri\": 8713,\n  \"thrift</w>\": 27779,\n  \"thrill</w>\": 21023,\n  \"thrilled</w>\": 7879,\n  \"thriller</w>\": 9653,\n  \"thrilling</w>\": 20101,\n  \"thrills</w>\": 39829,\n  \"thrive</w>\": 17669,\n  \"thriving</w>\": 22677,\n  \"thro\": 2101,\n  \"thro</w>\": 28624,\n  \"throat</w>\": 16371,\n  \"thrombo\": 47585,\n  \"throne</w>\": 15999,\n  \"thrones</w>\": 8072,\n  \"throp</w>\": 34939,\n  \"throttle</w>\": 37139,\n  \"through\": 6091,\n  \"through</w>\": 1417,\n  \"throughout</w>\": 6721,\n  \"throughs</w>\": 48278,\n  \"throw\": 3315,\n  \"throw</w>\": 6293,\n  \"throwback\": 6001,\n  \"throwback</w>\": 5058,\n  \"throwbackthursday</w>\": 6326,\n  \"thrower</w>\": 40199,\n  \"throwing</w>\": 9734,\n  \"thrown</w>\": 15079,\n  \"throws</w>\": 14723,\n  \"thru\": 23856,\n  \"thru</w>\": 6162,\n  \"thrush</w>\": 46133,\n  \"thrust</w>\": 40202,\n  \"ths</w>\": 2079,\n  \"tht</w>\": 23554,\n  \"thu\": 3837,\n  \"thu</w>\": 14153,\n  \"thub</w>\": 25660,\n  \"thug\": 37212,\n  \"thug</w>\": 18137,\n  \"thugs</w>\": 27686,\n  \"thul\": 28368,\n  \"thulhu</w>\": 37560,\n  \"thum\": 14679,\n  \"thumb\": 19514,\n  \"thumb</w>\": 18674,\n  \"thumbnail</w>\": 32365,\n  \"thumbs</w>\": 17599,\n  \"thun\": 32267,\n  \"thunder\": 6161,\n  \"thunder</w>\": 8951,\n  \"thunderbird</w>\": 45131,\n  \"thunderbirds</w>\": 44286,\n  \"thunderbolt</w>\": 43596,\n  \"thunderstorm</w>\": 12005,\n  \"thunderstorms</w>\": 19525,\n  \"thunt</w>\": 46763,\n  \"thur\": 1837,\n  \"thur</w>\": 21704,\n  \"thurman</w>\": 41291,\n  \"thurs</w>\": 9908,\n  \"thursday\": 11218,\n  \"thursday</w>\": 2221,\n  \"thursdaymotivation</w>\": 39375,\n  \"thursdays</w>\": 21444,\n  \"thursdaythoughts</w>\": 14866,\n  \"thurst</w>\": 33970,\n  \"thus</w>\": 12457,\n  \"thusi\": 9488,\n  \"thwaite</w>\": 48469,\n  \"thweeksary</w>\": 30871,\n  \"thx</w>\": 5913,\n  \"thy\": 7804,\n  \"thy</w>\": 3362,\n  \"thyme</w>\": 29805,\n  \"thyro\": 25174,\n  \"thyroid</w>\": 32558,\n  \"ti\": 555,\n  \"ti</w>\": 2605,\n  \"tia</w>\": 6709,\n  \"tial</w>\": 2826,\n  \"tially</w>\": 14503,\n  \"tian\": 23011,\n  \"tian</w>\": 8125,\n  \"tians</w>\": 35182,\n  \"tiara</w>\": 38322,\n  \"tib\": 47868,\n  \"tibet\": 19927,\n  \"tibet</w>\": 22234,\n  \"tibetan</w>\": 24057,\n  \"tible</w>\": 11453,\n  \"tic\": 890,\n  \"tic</w>\": 1550,\n  \"tica</w>\": 9669,\n  \"tical\": 34191,\n  \"tical</w>\": 4342,\n  \"tically</w>\": 13375,\n  \"ticals</w>\": 30861,\n  \"tice</w>\": 3122,\n  \"tich</w>\": 48769,\n  \"tician</w>\": 43358,\n  \"ticism</w>\": 26491,\n  \"tick\": 24640,\n  \"tick</w>\": 15617,\n  \"ticket\": 25740,\n  \"ticket</w>\": 4500,\n  \"ticketing</w>\": 44432,\n  \"tickets</w>\": 2015,\n  \"ticking</w>\": 35842,\n  \"tickle</w>\": 42999,\n  \"ticks</w>\": 40269,\n  \"tico</w>\": 17670,\n  \"ticon</w>\": 45996,\n  \"tics</w>\": 2419,\n  \"ticul\": 15538,\n  \"ticus</w>\": 44277,\n  \"tid\": 26002,\n  \"tid</w>\": 23727,\n  \"tidal</w>\": 21949,\n  \"tide\": 15698,\n  \"tide</w>\": 9105,\n  \"tides</w>\": 25524,\n  \"tidy</w>\": 23858,\n  \"tie\": 14072,\n  \"tie</w>\": 3422,\n  \"tied</w>\": 9889,\n  \"tiem\": 34762,\n  \"tien</w>\": 47538,\n  \"tiene</w>\": 43438,\n  \"tier\": 14390,\n  \"tier</w>\": 6598,\n  \"tierney</w>\": 45693,\n  \"tiers</w>\": 24604,\n  \"ties\": 25556,\n  \"ties</w>\": 2499,\n  \"tiest</w>\": 18300,\n  \"tiesto</w>\": 46367,\n  \"tif</w>\": 23216,\n  \"tiff\": 11112,\n  \"tiff</w>\": 20699,\n  \"tiffany\": 30467,\n  \"tiffany</w>\": 14446,\n  \"tification</w>\": 43923,\n  \"tified</w>\": 40854,\n  \"tiful</w>\": 29123,\n  \"tify</w>\": 6677,\n  \"tig</w>\": 31999,\n  \"tiger\": 11954,\n  \"tiger</w>\": 6531,\n  \"tigers</w>\": 6934,\n  \"tigh\": 31365,\n  \"tight\": 25763,\n  \"tight</w>\": 9123,\n  \"tighten</w>\": 46653,\n  \"tighter</w>\": 48193,\n  \"tightly</w>\": 37568,\n  \"tights</w>\": 29581,\n  \"tijuana</w>\": 45273,\n  \"tik\": 24986,\n  \"tik</w>\": 32403,\n  \"tiki</w>\": 30107,\n  \"til\": 6124,\n  \"til</w>\": 1763,\n  \"tile\": 26217,\n  \"tile</w>\": 8227,\n  \"tiles</w>\": 10607,\n  \"tility</w>\": 38180,\n  \"till\": 17462,\n  \"till</w>\": 4267,\n  \"tilla</w>\": 26063,\n  \"tillerson</w>\": 47738,\n  \"tilly</w>\": 41199,\n  \"tilt</w>\": 23601,\n  \"tim\": 1292,\n  \"tim</w>\": 3863,\n  \"timate</w>\": 4754,\n  \"timb\": 26627,\n  \"timber\": 14441,\n  \"timber</w>\": 16246,\n  \"timberlake</w>\": 28274,\n  \"timbers</w>\": 39911,\n  \"timberwolves</w>\": 41190,\n  \"time\": 3764,\n  \"time</w>\": 788,\n  \"timed</w>\": 32727,\n  \"timehop</w>\": 19944,\n  \"timel\": 23549,\n  \"timelapse</w>\": 48154,\n  \"timeless</w>\": 15558,\n  \"timeline</w>\": 11492,\n  \"timely</w>\": 19250,\n  \"timeout</w>\": 41536,\n  \"timer</w>\": 19725,\n  \"timers</w>\": 44574,\n  \"times\": 26445,\n  \"times</w>\": 1661,\n  \"timesnow</w>\": 45487,\n  \"timesof\": 32522,\n  \"timesofindia</w>\": 44182,\n  \"timetable</w>\": 31971,\n  \"timeto\": 29187,\n  \"timing</w>\": 13624,\n  \"timm\": 22444,\n  \"timmy</w>\": 33252,\n  \"timo\": 13390,\n  \"timo</w>\": 33777,\n  \"timothy\": 42087,\n  \"timothy</w>\": 18560,\n  \"timp\": 42166,\n  \"tin\": 1310,\n  \"tin</w>\": 5420,\n  \"tina</w>\": 9257,\n  \"tinder</w>\": 24287,\n  \"tine</w>\": 22341,\n  \"ting\": 7451,\n  \"ting</w>\": 694,\n  \"tinged</w>\": 44829,\n  \"tings</w>\": 35332,\n  \"tini</w>\": 26839,\n  \"tink\": 39278,\n  \"tinker\": 45272,\n  \"tinker</w>\": 40910,\n  \"tino</w>\": 20538,\n  \"tins</w>\": 37359,\n  \"tint</w>\": 40497,\n  \"tinted</w>\": 42618,\n  \"tiny\": 21716,\n  \"tiny</w>\": 5591,\n  \"tio</w>\": 27562,\n  \"tion\": 2274,\n  \"tion</w>\": 740,\n  \"tional\": 22460,\n  \"tional</w>\": 2986,\n  \"tionality</w>\": 24514,\n  \"tionally</w>\": 12409,\n  \"tionary</w>\": 8381,\n  \"tione\": 44318,\n  \"tioned</w>\": 9083,\n  \"tioning</w>\": 15528,\n  \"tionist</w>\": 25732,\n  \"tions</w>\": 1371,\n  \"tious</w>\": 14255,\n  \"tip\": 15383,\n  \"tip</w>\": 4623,\n  \"tipoff</w>\": 44521,\n  \"tipp\": 32294,\n  \"tipped</w>\": 31878,\n  \"tipper\": 38095,\n  \"tipperary</w>\": 45612,\n  \"tipping</w>\": 27827,\n  \"tips</w>\": 3173,\n  \"tipton</w>\": 48809,\n  \"tiptuesday</w>\": 42112,\n  \"tique</w>\": 37772,\n  \"tir\": 25467,\n  \"tir</w>\": 38462,\n  \"tire\": 29128,\n  \"tire</w>\": 9362,\n  \"tired</w>\": 6533,\n  \"tireless</w>\": 39835,\n  \"tirelessly</w>\": 41548,\n  \"tires</w>\": 15533,\n  \"tiring</w>\": 42630,\n  \"tiru\": 36033,\n  \"tis\": 7839,\n  \"tis</w>\": 7394,\n  \"tise</w>\": 13745,\n  \"tisgarh</w>\": 40538,\n  \"tish\": 45148,\n  \"tish</w>\": 28784,\n  \"tism</w>\": 27113,\n  \"tiss\": 28155,\n  \"tissue</w>\": 15368,\n  \"tissues</w>\": 32172,\n  \"tist</w>\": 7902,\n  \"tista</w>\": 25580,\n  \"tists</w>\": 25944,\n  \"tit\": 1991,\n  \"tit</w>\": 13202,\n  \"tita</w>\": 40936,\n  \"titan\": 13496,\n  \"titan</w>\": 15516,\n  \"titanic</w>\": 20729,\n  \"titanium</w>\": 24409,\n  \"titans</w>\": 13066,\n  \"titi\": 17434,\n  \"titi</w>\": 48504,\n  \"title\": 28033,\n  \"title</w>\": 3644,\n  \"titled</w>\": 9939,\n  \"titles</w>\": 9780,\n  \"tito</w>\": 26838,\n  \"titus</w>\": 36102,\n  \"tium</w>\": 21975,\n  \"tiv\": 1835,\n  \"tiva</w>\": 41886,\n  \"tive\": 14640,\n  \"tive</w>\": 1420,\n  \"tively</w>\": 9883,\n  \"tiveness</w>\": 20955,\n  \"tives</w>\": 7570,\n  \"tivity</w>\": 9859,\n  \"tivo</w>\": 32162,\n  \"tix</w>\": 5835,\n  \"tiz</w>\": 19376,\n  \"tj\": 18890,\n  \"tj</w>\": 18988,\n  \"tk\": 22344,\n  \"tk</w>\": 20676,\n  \"tko</w>\": 37347,\n  \"tks</w>\": 38739,\n  \"tl\": 14325,\n  \"tl</w>\": 8190,\n  \"tland</w>\": 30697,\n  \"tlap</w>\": 41976,\n  \"tlc</w>\": 22047,\n  \"tle\": 39141,\n  \"tle</w>\": 5825,\n  \"tles</w>\": 39363,\n  \"tless</w>\": 17427,\n  \"tlot</w>\": 41080,\n  \"tls</w>\": 47367,\n  \"tly\": 37483,\n  \"tly</w>\": 1646,\n  \"tm\": 9430,\n  \"tm</w>\": 7789,\n  \"tman</w>\": 20796,\n  \"tmc</w>\": 35263,\n  \"tment</w>\": 26485,\n  \"tml\": 39445,\n  \"tmltalk</w>\": 42260,\n  \"tmnt</w>\": 32444,\n  \"tmobile</w>\": 34901,\n  \"tmr</w>\": 35906,\n  \"tmrw</w>\": 16496,\n  \"tms</w>\": 44496,\n  \"tmund</w>\": 23801,\n  \"tmw</w>\": 45827,\n  \"tmz</w>\": 37248,\n  \"tn\": 3827,\n  \"tn</w>\": 7248,\n  \"tna</w>\": 21150,\n  \"tnam</w>\": 8079,\n  \"tner</w>\": 34922,\n  \"tness</w>\": 35212,\n  \"tney</w>\": 9523,\n  \"tng</w>\": 35898,\n  \"tnt</w>\": 20659,\n  \"tnx</w>\": 38220,\n  \"to\": 580,\n  \"to</w>\": 531,\n  \"toa\": 17916,\n  \"toad</w>\": 26096,\n  \"toast\": 24654,\n  \"toast</w>\": 10920,\n  \"toasted</w>\": 23533,\n  \"toaster</w>\": 39061,\n  \"toasty</w>\": 44726,\n  \"tob</w>\": 24260,\n  \"tobac\": 12611,\n  \"tobacco</w>\": 13905,\n  \"tobago</w>\": 39482,\n  \"tobe\": 17534,\n  \"tobe</w>\": 28740,\n  \"tober\": 18162,\n  \"tober</w>\": 2925,\n  \"toberfest</w>\": 26249,\n  \"tobi\": 40335,\n  \"tobi</w>\": 48374,\n  \"tobias</w>\": 32464,\n  \"tobin</w>\": 42466,\n  \"toby\": 29659,\n  \"toby</w>\": 18333,\n  \"toc\": 41907,\n  \"toc</w>\": 30643,\n  \"tock</w>\": 25274,\n  \"tod\": 38239,\n  \"tod</w>\": 33568,\n  \"toda</w>\": 47141,\n  \"todas</w>\": 36150,\n  \"today\": 11800,\n  \"today</w>\": 721,\n  \"todayin\": 32957,\n  \"todays</w>\": 13513,\n  \"todayshow</w>\": 29739,\n  \"todd\": 10398,\n  \"todd</w>\": 9951,\n  \"toddler</w>\": 17772,\n  \"toddlers</w>\": 36719,\n  \"toddy</w>\": 38926,\n  \"todo\": 48857,\n  \"todo</w>\": 23087,\n  \"todos</w>\": 33355,\n  \"toe\": 47756,\n  \"toe</w>\": 11344,\n  \"toes</w>\": 16511,\n  \"tof\": 6659,\n  \"toff</w>\": 27319,\n  \"toffee</w>\": 34880,\n  \"tofficial</w>\": 47953,\n  \"tofthe\": 23678,\n  \"toftheday</w>\": 20566,\n  \"tofu</w>\": 24692,\n  \"tog</w>\": 45715,\n  \"toge\": 1903,\n  \"together\": 17858,\n  \"together</w>\": 1952,\n  \"togo</w>\": 26729,\n  \"tography</w>\": 33968,\n  \"toh</w>\": 26851,\n  \"toi\": 7472,\n  \"toi</w>\": 26941,\n  \"toid</w>\": 49124,\n  \"toile\": 43148,\n  \"toilet</w>\": 11071,\n  \"toilets</w>\": 24027,\n  \"toire</w>\": 39534,\n  \"tok\": 16690,\n  \"tok</w>\": 27010,\n  \"token\": 32634,\n  \"token</w>\": 17134,\n  \"tokens</w>\": 23562,\n  \"tokyo\": 35038,\n  \"tokyo</w>\": 6667,\n  \"tol\": 4678,\n  \"tol</w>\": 32962,\n  \"told</w>\": 3527,\n  \"tole\": 15677,\n  \"toledo</w>\": 19812,\n  \"toler\": 12150,\n  \"tolerance</w>\": 20377,\n  \"tolerant</w>\": 38536,\n  \"tolerate</w>\": 35556,\n  \"tolkien</w>\": 32989,\n  \"toll\": 44090,\n  \"toll</w>\": 14155,\n  \"tollywood</w>\": 42016,\n  \"tology</w>\": 34799,\n  \"tom\": 999,\n  \"tom</w>\": 2435,\n  \"toma\": 42360,\n  \"toma</w>\": 44710,\n  \"tomas\": 35944,\n  \"tomas</w>\": 27178,\n  \"tomat\": 12041,\n  \"tomato</w>\": 9867,\n  \"tomatoes</w>\": 13004,\n  \"tomb\": 37187,\n  \"tomb</w>\": 15582,\n  \"tombs</w>\": 48613,\n  \"tombstone</w>\": 45729,\n  \"tome\": 24137,\n  \"tome</w>\": 24283,\n  \"tomi</w>\": 46290,\n  \"tomlin</w>\": 46649,\n  \"tomlinson</w>\": 17484,\n  \"tommorow</w>\": 42871,\n  \"tommy\": 16573,\n  \"tommy</w>\": 8876,\n  \"tomo\": 31223,\n  \"tomo</w>\": 34434,\n  \"tomor\": 1277,\n  \"tomorrow\": 19728,\n  \"tomorrow</w>\": 1293,\n  \"tomorrowland</w>\": 34951,\n  \"tomorrows</w>\": 32258,\n  \"tomorrowspaper\": 35005,\n  \"tomorrowspaperstoday</w>\": 35190,\n  \"tomp\": 43544,\n  \"tompkins</w>\": 49068,\n  \"toms</w>\": 10545,\n  \"tomy</w>\": 18730,\n  \"ton\": 838,\n  \"ton</w>\": 917,\n  \"tona</w>\": 13459,\n  \"tone\": 32366,\n  \"tone</w>\": 8408,\n  \"toned</w>\": 29426,\n  \"toner</w>\": 40614,\n  \"tones</w>\": 14744,\n  \"tong</w>\": 21510,\n  \"tonga</w>\": 37882,\n  \"tongue\": 44820,\n  \"tongue</w>\": 13626,\n  \"tongues</w>\": 39837,\n  \"toni\": 17766,\n  \"toni</w>\": 17171,\n  \"tonic</w>\": 17808,\n  \"tonics</w>\": 34647,\n  \"tonight</w>\": 1009,\n  \"tonights</w>\": 23312,\n  \"tonite</w>\": 13449,\n  \"tonka</w>\": 42781,\n  \"tonline</w>\": 45867,\n  \"tonne</w>\": 42450,\n  \"tonnes</w>\": 24813,\n  \"tons</w>\": 7555,\n  \"tony\": 9150,\n  \"tony</w>\": 4767,\n  \"tonyawards</w>\": 46068,\n  \"too\": 1843,\n  \"too</w>\": 1256,\n  \"took</w>\": 2280,\n  \"tool\": 13718,\n  \"tool</w>\": 5999,\n  \"toolbox</w>\": 46599,\n  \"toolkit</w>\": 29849,\n  \"tools</w>\": 5771,\n  \"toom\": 27550,\n  \"toon\": 24664,\n  \"toon</w>\": 19701,\n  \"toonami</w>\": 48336,\n  \"toons</w>\": 35345,\n  \"toor\": 42590,\n  \"tooth\": 15316,\n  \"tooth</w>\": 12030,\n  \"toothbrush</w>\": 36841,\n  \"toothpaste</w>\": 37322,\n  \"tooting</w>\": 42969,\n  \"top\": 5534,\n  \"top</w>\": 1253,\n  \"topaz</w>\": 46125,\n  \"tope\": 32149,\n  \"tope</w>\": 42239,\n  \"topeka</w>\": 46884,\n  \"topia</w>\": 29618,\n  \"topic</w>\": 8720,\n  \"topical</w>\": 37464,\n  \"topics</w>\": 11916,\n  \"topless</w>\": 37415,\n  \"topo\": 23008,\n  \"topoli</w>\": 30152,\n  \"topp\": 19529,\n  \"topped</w>\": 12588,\n  \"topper</w>\": 31780,\n  \"toppers</w>\": 41651,\n  \"topping</w>\": 21071,\n  \"toppings</w>\": 47554,\n  \"topps</w>\": 20201,\n  \"tops</w>\": 8154,\n  \"topshop</w>\": 40953,\n  \"topus</w>\": 21495,\n  \"tor\": 937,\n  \"tor</w>\": 1208,\n  \"tora</w>\": 45147,\n  \"torah</w>\": 37945,\n  \"toral</w>\": 45282,\n  \"torch\": 31921,\n  \"torch</w>\": 15820,\n  \"tore\": 38066,\n  \"tore</w>\": 19385,\n  \"tored</w>\": 38046,\n  \"torg</w>\": 33214,\n  \"tori\": 17689,\n  \"tori</w>\": 17539,\n  \"toria</w>\": 23732,\n  \"torial</w>\": 28029,\n  \"torian</w>\": 48399,\n  \"tories</w>\": 14193,\n  \"torino</w>\": 29178,\n  \"torio</w>\": 34235,\n  \"torn\": 8572,\n  \"torn</w>\": 18023,\n  \"tornad\": 24676,\n  \"tornado</w>\": 9062,\n  \"tornadoes</w>\": 28254,\n  \"toro</w>\": 17892,\n  \"toron\": 37407,\n  \"toronto\": 16866,\n  \"toronto</w>\": 4514,\n  \"torpe\": 34093,\n  \"torpedo</w>\": 46582,\n  \"torquay</w>\": 45738,\n  \"torque</w>\": 31940,\n  \"torre\": 39563,\n  \"torre</w>\": 38009,\n  \"torrent</w>\": 42317,\n  \"torrential</w>\": 41158,\n  \"torres</w>\": 16049,\n  \"tors</w>\": 2546,\n  \"tortilla</w>\": 32683,\n  \"torto\": 24170,\n  \"tortoise</w>\": 30178,\n  \"torture</w>\": 16013,\n  \"tortured</w>\": 29900,\n  \"tory\": 29390,\n  \"tory</w>\": 4214,\n  \"tos</w>\": 6094,\n  \"tosc\": 37719,\n  \"tose</w>\": 38154,\n  \"tosh</w>\": 17109,\n  \"toshi\": 31744,\n  \"toss</w>\": 19656,\n  \"tossed</w>\": 31296,\n  \"tot\": 4618,\n  \"tot</w>\": 23659,\n  \"total\": 13507,\n  \"total</w>\": 4445,\n  \"totally</w>\": 5440,\n  \"totals</w>\": 25772,\n  \"tote\": 48145,\n  \"tote</w>\": 19031,\n  \"totem</w>\": 45376,\n  \"totes</w>\": 37199,\n  \"tothe\": 12222,\n  \"toto</w>\": 39823,\n  \"tots</w>\": 24978,\n  \"totten\": 14360,\n  \"tottenham</w>\": 14889,\n  \"tou\": 1879,\n  \"tou</w>\": 29261,\n  \"touch\": 9480,\n  \"touch</w>\": 4526,\n  \"touchdown</w>\": 18664,\n  \"touchdowns</w>\": 37905,\n  \"touched</w>\": 13190,\n  \"touches</w>\": 14832,\n  \"touching</w>\": 14088,\n  \"touchscreen</w>\": 39095,\n  \"tough\": 12063,\n  \"tough</w>\": 5499,\n  \"tougher</w>\": 33722,\n  \"toughest</w>\": 23773,\n  \"toughness</w>\": 45522,\n  \"toulou\": 27145,\n  \"toulouse</w>\": 30267,\n  \"tour\": 2710,\n  \"tour</w>\": 1760,\n  \"tourde\": 39247,\n  \"toured</w>\": 27654,\n  \"touri\": 4224,\n  \"touring</w>\": 11853,\n  \"tourism\": 23661,\n  \"tourism</w>\": 6556,\n  \"tourist</w>\": 12123,\n  \"tourists</w>\": 15546,\n  \"tournament</w>\": 4097,\n  \"tournaments</w>\": 23058,\n  \"tourney</w>\": 12603,\n  \"tours</w>\": 8948,\n  \"tous</w>\": 37424,\n  \"tout</w>\": 22300,\n  \"touts</w>\": 41274,\n  \"tov</w>\": 28970,\n  \"tow\": 11557,\n  \"tow</w>\": 18653,\n  \"toward</w>\": 8508,\n  \"towards</w>\": 4447,\n  \"towed</w>\": 45419,\n  \"towel</w>\": 15953,\n  \"towels</w>\": 26578,\n  \"tower\": 26669,\n  \"tower</w>\": 4730,\n  \"towering</w>\": 39444,\n  \"towers</w>\": 12701,\n  \"towie</w>\": 44613,\n  \"towin</w>\": 45819,\n  \"towing</w>\": 36963,\n  \"town\": 4068,\n  \"town</w>\": 1605,\n  \"townfc</w>\": 33981,\n  \"townhall</w>\": 33408,\n  \"townhouse</w>\": 40178,\n  \"towns</w>\": 14173,\n  \"townsend</w>\": 26826,\n  \"township</w>\": 14622,\n  \"townsville</w>\": 47330,\n  \"towork</w>\": 48233,\n  \"tox\": 7742,\n  \"tox</w>\": 16145,\n  \"toxic\": 27436,\n  \"toxic</w>\": 12348,\n  \"toxicity</w>\": 41234,\n  \"toxin</w>\": 48899,\n  \"toxins</w>\": 36618,\n  \"toy\": 14387,\n  \"toy</w>\": 5988,\n  \"toya</w>\": 37602,\n  \"toyo\": 7644,\n  \"toyota</w>\": 8908,\n  \"toys\": 39508,\n  \"toys</w>\": 7162,\n  \"tp\": 23760,\n  \"tp</w>\": 15188,\n  \"tpp</w>\": 29411,\n  \"tps</w>\": 35246,\n  \"tq</w>\": 43066,\n  \"tr\": 635,\n  \"tr</w>\": 6337,\n  \"tra\": 752,\n  \"tra</w>\": 2483,\n  \"trac\": 2266,\n  \"trace\": 48611,\n  \"trace</w>\": 14767,\n  \"traced</w>\": 47956,\n  \"traces</w>\": 30913,\n  \"tracey</w>\": 25558,\n  \"tracing</w>\": 27897,\n  \"track\": 10887,\n  \"track</w>\": 2700,\n  \"tracked</w>\": 27049,\n  \"tracker</w>\": 18123,\n  \"tracking</w>\": 10428,\n  \"tracklist</w>\": 39777,\n  \"tracks</w>\": 7579,\n  \"tract</w>\": 4690,\n  \"traction</w>\": 10644,\n  \"tractor</w>\": 14607,\n  \"tractors</w>\": 37854,\n  \"tracy\": 32984,\n  \"tracy</w>\": 15508,\n  \"trad\": 48716,\n  \"trad</w>\": 38037,\n  \"trade\": 10457,\n  \"trade</w>\": 3629,\n  \"traded</w>\": 18860,\n  \"trademark</w>\": 25011,\n  \"trader</w>\": 17700,\n  \"traders</w>\": 19112,\n  \"trades</w>\": 18519,\n  \"trading\": 40083,\n  \"trading</w>\": 6520,\n  \"tradio</w>\": 20689,\n  \"tradition\": 20838,\n  \"tradition</w>\": 8784,\n  \"traditional\": 41113,\n  \"traditional</w>\": 5604,\n  \"traditionally</w>\": 35532,\n  \"traditions</w>\": 18016,\n  \"traf\": 3227,\n  \"trafal\": 32461,\n  \"trafalgar</w>\": 36969,\n  \"traff\": 31571,\n  \"traffic\": 12080,\n  \"traffic</w>\": 3399,\n  \"trafficking</w>\": 15983,\n  \"trafford</w>\": 22912,\n  \"trage\": 12430,\n  \"tragedy</w>\": 14082,\n  \"tragic</w>\": 14828,\n  \"tragically</w>\": 39599,\n  \"trail\": 11523,\n  \"trail</w>\": 4921,\n  \"trailblazer</w>\": 41015,\n  \"trailblazers</w>\": 35954,\n  \"trailer</w>\": 4700,\n  \"trailers</w>\": 24862,\n  \"trailing</w>\": 37427,\n  \"trails</w>\": 10633,\n  \"train\": 9122,\n  \"train</w>\": 3231,\n  \"trained</w>\": 10874,\n  \"trainee</w>\": 25795,\n  \"trainees</w>\": 30382,\n  \"trainer</w>\": 9767,\n  \"trainers</w>\": 18871,\n  \"training\": 34508,\n  \"training</w>\": 2199,\n  \"trains</w>\": 9541,\n  \"trait</w>\": 35160,\n  \"traitor</w>\": 31760,\n  \"traitors</w>\": 42633,\n  \"traits</w>\": 25748,\n  \"trajec\": 42042,\n  \"trak</w>\": 24065,\n  \"tral</w>\": 14609,\n  \"tram\": 9800,\n  \"tram</w>\": 17500,\n  \"tramp</w>\": 46289,\n  \"trampol\": 32905,\n  \"trampoline</w>\": 42800,\n  \"tramrahim</w>\": 35220,\n  \"tran\": 1357,\n  \"tran</w>\": 22031,\n  \"trance\": 30584,\n  \"trance</w>\": 18671,\n  \"trancefamily</w>\": 39630,\n  \"trane</w>\": 35779,\n  \"tranqu\": 18912,\n  \"tranquil</w>\": 35764,\n  \"tranquility</w>\": 36688,\n  \"trans\": 1826,\n  \"trans</w>\": 8126,\n  \"transaction</w>\": 24881,\n  \"transactions</w>\": 21653,\n  \"transat\": 37872,\n  \"transatlantic</w>\": 40703,\n  \"transc\": 21073,\n  \"transcend\": 47087,\n  \"transcript</w>\": 39008,\n  \"transcription</w>\": 48765,\n  \"transfer\": 22659,\n  \"transfer</w>\": 7134,\n  \"transferred</w>\": 29700,\n  \"transferring</w>\": 40924,\n  \"transfers</w>\": 21621,\n  \"transform\": 8142,\n  \"transform</w>\": 12288,\n  \"transformation\": 34204,\n  \"transformation</w>\": 7832,\n  \"transformational</w>\": 47135,\n  \"transformationtuesday</w>\": 36511,\n  \"transformative</w>\": 38106,\n  \"transformed</w>\": 17453,\n  \"transformer</w>\": 38235,\n  \"transformers</w>\": 17843,\n  \"transforming\": 44470,\n  \"transforming</w>\": 19251,\n  \"transforms</w>\": 30312,\n  \"transgender</w>\": 17732,\n  \"transi\": 32236,\n  \"transit</w>\": 10174,\n  \"transiti\": 22939,\n  \"transition</w>\": 11391,\n  \"transitional</w>\": 41519,\n  \"transitioning</w>\": 43586,\n  \"transitions</w>\": 39374,\n  \"transl\": 12243,\n  \"translate</w>\": 22655,\n  \"translated</w>\": 20752,\n  \"translates</w>\": 36334,\n  \"translating</w>\": 42156,\n  \"translation</w>\": 12153,\n  \"translations</w>\": 41367,\n  \"translator</w>\": 36230,\n  \"translucent</w>\": 49052,\n  \"transm\": 18861,\n  \"transmission</w>\": 16103,\n  \"transmitted</w>\": 48605,\n  \"transmitter</w>\": 40457,\n  \"transp\": 11726,\n  \"transpa\": 18524,\n  \"transparen\": 16108,\n  \"transparency</w>\": 16828,\n  \"transparent</w>\": 19017,\n  \"transpl\": 16038,\n  \"transplant\": 41871,\n  \"transplant</w>\": 18771,\n  \"transplantation</w>\": 45207,\n  \"transpor\": 19406,\n  \"transport\": 10231,\n  \"transport</w>\": 7362,\n  \"transportation</w>\": 10911,\n  \"transported</w>\": 29089,\n  \"transporter</w>\": 43568,\n  \"transporting</w>\": 42259,\n  \"trap\": 36224,\n  \"trap</w>\": 9677,\n  \"trape\": 42435,\n  \"trapped</w>\": 15592,\n  \"traps</w>\": 28517,\n  \"tras</w>\": 30638,\n  \"trash\": 39215,\n  \"trash</w>\": 9798,\n  \"traum\": 22263,\n  \"trauma</w>\": 13846,\n  \"traumati\": 46613,\n  \"traumatic</w>\": 29958,\n  \"trav\": 7586,\n  \"trav</w>\": 46955,\n  \"trave\": 35357,\n  \"travel\": 2824,\n  \"travel</w>\": 1949,\n  \"travelblog</w>\": 35957,\n  \"travelblogger</w>\": 25494,\n  \"travelchat</w>\": 46455,\n  \"traveled</w>\": 20384,\n  \"traveler</w>\": 17794,\n  \"travelers</w>\": 20644,\n  \"travelgram</w>\": 40069,\n  \"traveling</w>\": 9365,\n  \"travelled</w>\": 23428,\n  \"traveller</w>\": 22546,\n  \"travellers</w>\": 29583,\n  \"travelling</w>\": 11190,\n  \"travelphotography</w>\": 22808,\n  \"travelpics</w>\": 32293,\n  \"travels</w>\": 11472,\n  \"traveltips</w>\": 36260,\n  \"traveltuesday</w>\": 16713,\n  \"traverse</w>\": 35058,\n  \"travi\": 46971,\n  \"travis\": 27441,\n  \"travis</w>\": 12287,\n  \"traw\": 42288,\n  \"trax</w>\": 34421,\n  \"tray\": 38470,\n  \"tray</w>\": 14621,\n  \"trays</w>\": 39798,\n  \"trc</w>\": 41803,\n  \"tre\": 975,\n  \"tre</w>\": 6033,\n  \"treach\": 46005,\n  \"tread\": 26182,\n  \"tread</w>\": 35658,\n  \"treadmill</w>\": 37780,\n  \"treas\": 8591,\n  \"treason</w>\": 28103,\n  \"treasure</w>\": 9922,\n  \"treasured</w>\": 48068,\n  \"treasurer</w>\": 26985,\n  \"treasures</w>\": 16500,\n  \"treasury</w>\": 20956,\n  \"treat\": 3968,\n  \"treat</w>\": 3901,\n  \"treated</w>\": 9772,\n  \"treating</w>\": 13842,\n  \"treatment</w>\": 4869,\n  \"treatments</w>\": 15839,\n  \"treats</w>\": 8878,\n  \"treaty</w>\": 19967,\n  \"treble</w>\": 33194,\n  \"trecht</w>\": 33812,\n  \"tree\": 13354,\n  \"tree</w>\": 2677,\n  \"treehouse</w>\": 42387,\n  \"trees</w>\": 4682,\n  \"trek\": 13236,\n  \"trek</w>\": 8136,\n  \"trekking</w>\": 25293,\n  \"trell</w>\": 35159,\n  \"tremb\": 44043,\n  \"tremend\": 14659,\n  \"tremendous</w>\": 15988,\n  \"tren\": 2579,\n  \"trench</w>\": 23846,\n  \"trenches</w>\": 38723,\n  \"trend\": 19986,\n  \"trend</w>\": 6643,\n  \"trending</w>\": 6087,\n  \"trends</w>\": 7015,\n  \"trendsetter</w>\": 46666,\n  \"trendy</w>\": 23072,\n  \"trent\": 45885,\n  \"trent</w>\": 15548,\n  \"trenton</w>\": 37470,\n  \"tres</w>\": 23569,\n  \"tress</w>\": 4733,\n  \"tresses</w>\": 24273,\n  \"trevor\": 23437,\n  \"trevor</w>\": 13219,\n  \"trex</w>\": 42114,\n  \"trey\": 36670,\n  \"trey</w>\": 16939,\n  \"tri\": 924,\n  \"tri</w>\": 9618,\n  \"triad</w>\": 45602,\n  \"trial</w>\": 5991,\n  \"trials</w>\": 10992,\n  \"triangle</w>\": 14615,\n  \"triathlon</w>\": 18080,\n  \"trib</w>\": 45151,\n  \"tribal</w>\": 16629,\n  \"tribe\": 19943,\n  \"tribe</w>\": 11365,\n  \"tribeca</w>\": 35184,\n  \"tribes</w>\": 26546,\n  \"tribu\": 3028,\n  \"tribun\": 14311,\n  \"tribunal</w>\": 32911,\n  \"tribune</w>\": 18556,\n  \"tribute</w>\": 5493,\n  \"tributes</w>\": 15537,\n  \"tric\": 9511,\n  \"tric</w>\": 4081,\n  \"trich</w>\": 39519,\n  \"trick\": 17177,\n  \"trick</w>\": 8172,\n  \"tricks</w>\": 13177,\n  \"tricky</w>\": 22319,\n  \"trics</w>\": 31437,\n  \"trident</w>\": 35491,\n  \"tridge</w>\": 18722,\n  \"tried</w>\": 4554,\n  \"tries</w>\": 4315,\n  \"trife\": 48962,\n  \"trigge\": 30509,\n  \"trigger</w>\": 16158,\n  \"triggered</w>\": 30924,\n  \"triggers</w>\": 37319,\n  \"tright</w>\": 29915,\n  \"tril\": 40626,\n  \"trill</w>\": 39297,\n  \"trilli\": 39350,\n  \"trillion</w>\": 20160,\n  \"trilo\": 15183,\n  \"trilogy</w>\": 16862,\n  \"trim</w>\": 14182,\n  \"trimmed</w>\": 40657,\n  \"trin\": 6628,\n  \"trinidad</w>\": 26244,\n  \"trinity\": 30744,\n  \"trinity</w>\": 12267,\n  \"trio</w>\": 10263,\n  \"trip\": 23421,\n  \"trip</w>\": 2529,\n  \"tripad\": 37189,\n  \"tripadvisor</w>\": 38708,\n  \"triple\": 16519,\n  \"triple</w>\": 7673,\n  \"triplets</w>\": 48601,\n  \"tripod</w>\": 36141,\n  \"tripoli</w>\": 40095,\n  \"trippin</w>\": 43073,\n  \"tripping</w>\": 35229,\n  \"trippy</w>\": 35137,\n  \"trips</w>\": 12292,\n  \"tris</w>\": 29690,\n  \"trish\": 40511,\n  \"trish</w>\": 37179,\n  \"trisha</w>\": 39152,\n  \"tristan</w>\": 25497,\n  \"trit\": 37087,\n  \"triton</w>\": 45437,\n  \"triu\": 14782,\n  \"trium\": 21065,\n  \"triumph\": 26507,\n  \"triumph</w>\": 15307,\n  \"triumphant</w>\": 41918,\n  \"trivi\": 21228,\n  \"trivia</w>\": 10642,\n  \"triviatuesday</w>\": 45499,\n  \"trix</w>\": 41017,\n  \"tro\": 1046,\n  \"tro</w>\": 3332,\n  \"trock</w>\": 44368,\n  \"trojan</w>\": 30653,\n  \"trojans</w>\": 25310,\n  \"trol\": 10306,\n  \"troll\": 39737,\n  \"troll</w>\": 17103,\n  \"trolley</w>\": 25124,\n  \"trolling</w>\": 28552,\n  \"trolls</w>\": 20890,\n  \"tromb\": 32390,\n  \"trombone</w>\": 44423,\n  \"tron\": 19057,\n  \"tron</w>\": 10684,\n  \"tronic</w>\": 34258,\n  \"tronics</w>\": 34397,\n  \"troom</w>\": 23691,\n  \"troop\": 12492,\n  \"troop</w>\": 24054,\n  \"trooper</w>\": 18327,\n  \"troopers</w>\": 23576,\n  \"troops</w>\": 10109,\n  \"trop</w>\": 31585,\n  \"trope</w>\": 41150,\n  \"trophies</w>\": 20998,\n  \"trophy\": 42676,\n  \"trophy</w>\": 6502,\n  \"tropic\": 21794,\n  \"tropic</w>\": 36736,\n  \"tropical\": 41699,\n  \"tropical</w>\": 8686,\n  \"tropics</w>\": 36940,\n  \"tros</w>\": 40456,\n  \"trose</w>\": 36022,\n  \"trot</w>\": 30453,\n  \"trotter</w>\": 38287,\n  \"trou\": 5181,\n  \"troubad\": 49037,\n  \"trouble\": 25669,\n  \"trouble</w>\": 7848,\n  \"troubled</w>\": 25568,\n  \"troubles</w>\": 27254,\n  \"trough</w>\": 39761,\n  \"troupe</w>\": 34803,\n  \"trous\": 19727,\n  \"trousers</w>\": 23172,\n  \"trout</w>\": 14853,\n  \"trove</w>\": 45350,\n  \"trow</w>\": 46914,\n  \"troy\": 26283,\n  \"troy</w>\": 12819,\n  \"trs</w>\": 24770,\n  \"tru\": 931,\n  \"tru</w>\": 25326,\n  \"truck\": 14781,\n  \"truck</w>\": 4629,\n  \"trucker</w>\": 45918,\n  \"truckers</w>\": 43404,\n  \"trucking</w>\": 26208,\n  \"trucks</w>\": 9569,\n  \"trude</w>\": 39017,\n  \"trudeau</w>\": 15752,\n  \"true\": 13096,\n  \"true</w>\": 2328,\n  \"truec\": 37583,\n  \"truelove</w>\": 45711,\n  \"truffle</w>\": 23064,\n  \"truffles</w>\": 37057,\n  \"truly</w>\": 4545,\n  \"trum\": 11766,\n  \"trum</w>\": 11399,\n  \"truman</w>\": 29414,\n  \"trump\": 9124,\n  \"trump</w>\": 1797,\n  \"trumpet</w>\": 23681,\n  \"trumpp\": 45550,\n  \"trumprussia</w>\": 39135,\n  \"trumps</w>\": 29793,\n  \"trumptrain</w>\": 43595,\n  \"trun\": 16163,\n  \"trun</w>\": 46661,\n  \"trunk</w>\": 18347,\n  \"trunks</w>\": 38531,\n  \"truro</w>\": 43507,\n  \"truss</w>\": 46080,\n  \"trust\": 17691,\n  \"trust</w>\": 3876,\n  \"truste\": 17356,\n  \"trusted</w>\": 16538,\n  \"trustee</w>\": 30803,\n  \"trustees</w>\": 28853,\n  \"trusting</w>\": 33221,\n  \"trusts</w>\": 27507,\n  \"trustworthy</w>\": 46840,\n  \"trusty</w>\": 37955,\n  \"truth\": 21335,\n  \"truth</w>\": 4319,\n  \"truths</w>\": 27179,\n  \"trx</w>\": 31620,\n  \"try\": 4487,\n  \"try</w>\": 1209,\n  \"tryin</w>\": 31085,\n  \"trying</w>\": 2551,\n  \"tryna</w>\": 15702,\n  \"tryout</w>\": 43832,\n  \"tryouts</w>\": 28053,\n  \"ts\": 2290,\n  \"ts</w>\": 590,\n  \"tsa</w>\": 25977,\n  \"tsal</w>\": 20438,\n  \"tsb</w>\": 45015,\n  \"tsc</w>\": 37437,\n  \"tsch</w>\": 38778,\n  \"tsd</w>\": 20611,\n  \"tse\": 49144,\n  \"tsfor\": 42654,\n  \"tsford</w>\": 32823,\n  \"tsh\": 42872,\n  \"tshirt</w>\": 14907,\n  \"tshirts</w>\": 29377,\n  \"tsi\": 40048,\n  \"tsi</w>\": 37867,\n  \"tsk</w>\": 43600,\n  \"tsla</w>\": 35681,\n  \"tsm</w>\": 43452,\n  \"tsman</w>\": 20046,\n  \"tsn\": 44921,\n  \"tsn</w>\": 26896,\n  \"tson\": 42353,\n  \"tson</w>\": 47140,\n  \"tsp</w>\": 34230,\n  \"tsu\": 13950,\n  \"tsu</w>\": 20175,\n  \"tsun\": 19155,\n  \"tsunami</w>\": 24286,\n  \"tsville</w>\": 29080,\n  \"tt\": 971,\n  \"tt</w>\": 1402,\n  \"tta</w>\": 2646,\n  \"ttc</w>\": 27668,\n  \"tte\": 23105,\n  \"tte</w>\": 3070,\n  \"tted</w>\": 15163,\n  \"tten\": 11351,\n  \"tten</w>\": 17479,\n  \"tter\": 18691,\n  \"tter</w>\": 5165,\n  \"tters</w>\": 6318,\n  \"ttes</w>\": 9293,\n  \"tti</w>\": 5237,\n  \"ttin</w>\": 36589,\n  \"tting</w>\": 1188,\n  \"ttino</w>\": 47389,\n  \"ttip</w>\": 46993,\n  \"ttle</w>\": 9253,\n  \"ttm</w>\": 46838,\n  \"tto\": 8759,\n  \"tto</w>\": 8105,\n  \"tton</w>\": 10562,\n  \"ttot</w>\": 12480,\n  \"ttp</w>\": 30828,\n  \"ttr\": 47589,\n  \"tts</w>\": 11570,\n  \"ttt</w>\": 17256,\n  \"tttt</w>\": 33119,\n  \"ttu</w>\": 44006,\n  \"ttv</w>\": 24281,\n  \"tty\": 11457,\n  \"tty</w>\": 1856,\n  \"tu\": 764,\n  \"tu</w>\": 5760,\n  \"tua</w>\": 41344,\n  \"tual</w>\": 4799,\n  \"tuan</w>\": 37297,\n  \"tub\": 34907,\n  \"tub</w>\": 15450,\n  \"tube\": 38229,\n  \"tube</w>\": 3308,\n  \"tuber\": 30371,\n  \"tuberculo\": 42606,\n  \"tuberculosis</w>\": 43129,\n  \"tubes</w>\": 22870,\n  \"tubing</w>\": 40794,\n  \"tubs</w>\": 41705,\n  \"tubular</w>\": 48786,\n  \"tuc\": 14456,\n  \"tuc</w>\": 43871,\n  \"tuck</w>\": 22398,\n  \"tucked</w>\": 26923,\n  \"tucker\": 39703,\n  \"tucker</w>\": 15726,\n  \"tucket</w>\": 32677,\n  \"tucson</w>\": 17250,\n  \"tudor</w>\": 24547,\n  \"tue</w>\": 17515,\n  \"tues\": 2283,\n  \"tues</w>\": 12113,\n  \"tuesday\": 10209,\n  \"tuesday</w>\": 2519,\n  \"tuesdaymotivation</w>\": 25432,\n  \"tuesdays</w>\": 23195,\n  \"tuesdaythoughts</w>\": 17988,\n  \"tuf\": 44510,\n  \"tuff</w>\": 38868,\n  \"tug\": 47032,\n  \"tug</w>\": 27902,\n  \"tuition</w>\": 21129,\n  \"tuk\": 39271,\n  \"tuk</w>\": 14993,\n  \"tul\": 9069,\n  \"tul</w>\": 40837,\n  \"tula</w>\": 36332,\n  \"tulane</w>\": 44893,\n  \"tulip</w>\": 28389,\n  \"tulips</w>\": 30886,\n  \"tulsa</w>\": 18850,\n  \"tum\": 12932,\n  \"tum</w>\": 8843,\n  \"tumb\": 8831,\n  \"tumble</w>\": 38284,\n  \"tumbler</w>\": 48790,\n  \"tumbling</w>\": 46226,\n  \"tumblr</w>\": 11841,\n  \"tummy</w>\": 26053,\n  \"tumor</w>\": 22616,\n  \"tumors</w>\": 39894,\n  \"tumour</w>\": 45129,\n  \"tun\": 1415,\n  \"tun</w>\": 21349,\n  \"tuna</w>\": 15037,\n  \"tundra</w>\": 39899,\n  \"tune\": 11427,\n  \"tune</w>\": 3300,\n  \"tuned</w>\": 5898,\n  \"tunein</w>\": 16809,\n  \"tuner</w>\": 42905,\n  \"tunes\": 31688,\n  \"tunes</w>\": 10810,\n  \"tunesapp</w>\": 32550,\n  \"tung\": 47940,\n  \"tung</w>\": 31092,\n  \"tuni\": 16270,\n  \"tunic</w>\": 43495,\n  \"tuning</w>\": 19585,\n  \"tunisia</w>\": 23346,\n  \"tunnel</w>\": 11096,\n  \"tunnels</w>\": 29814,\n  \"tuous</w>\": 28738,\n  \"tup\": 37956,\n  \"tup</w>\": 4507,\n  \"tupac</w>\": 31506,\n  \"tups</w>\": 44855,\n  \"tur\": 985,\n  \"tur</w>\": 17182,\n  \"tura</w>\": 16127,\n  \"tural\": 45143,\n  \"tural</w>\": 4261,\n  \"turb\": 18973,\n  \"turban</w>\": 48515,\n  \"turbine</w>\": 26880,\n  \"turbines</w>\": 38863,\n  \"turbo\": 23578,\n  \"turbo</w>\": 13668,\n  \"turbul\": 31100,\n  \"turbulent</w>\": 47871,\n  \"ture\": 4321,\n  \"ture</w>\": 941,\n  \"tured</w>\": 3987,\n  \"turer</w>\": 11993,\n  \"turers</w>\": 16956,\n  \"tures</w>\": 2400,\n  \"turf\": 36762,\n  \"turf</w>\": 12510,\n  \"turi\": 11896,\n  \"turin</w>\": 36251,\n  \"turing</w>\": 5812,\n  \"turismo</w>\": 30202,\n  \"turk\": 8254,\n  \"turk</w>\": 32507,\n  \"turkey\": 35977,\n  \"turkey</w>\": 4790,\n  \"turkeys</w>\": 37991,\n  \"turkish\": 48199,\n  \"turkish</w>\": 9278,\n  \"turks</w>\": 34344,\n  \"turmeric</w>\": 34044,\n  \"turmoil</w>\": 37751,\n  \"turn\": 5522,\n  \"turn</w>\": 2105,\n  \"turnaround</w>\": 32719,\n  \"turnbull</w>\": 27863,\n  \"turned</w>\": 3771,\n  \"turner\": 42867,\n  \"turner</w>\": 8777,\n  \"turning</w>\": 4976,\n  \"turno\": 21377,\n  \"turnout</w>\": 11654,\n  \"turnover</w>\": 30794,\n  \"turnpike</w>\": 38301,\n  \"turns</w>\": 3185,\n  \"turnt</w>\": 28887,\n  \"turntable</w>\": 37953,\n  \"turnup</w>\": 30591,\n  \"turo</w>\": 29224,\n  \"turquo\": 19390,\n  \"turquoise</w>\": 19899,\n  \"turt\": 13716,\n  \"turtle\": 35943,\n  \"turtle</w>\": 10912,\n  \"turtles</w>\": 17862,\n  \"tus\": 24828,\n  \"tus</w>\": 7079,\n  \"tusc\": 17909,\n  \"tuscal\": 42638,\n  \"tuscaloosa</w>\": 44375,\n  \"tuscan</w>\": 42865,\n  \"tuscany</w>\": 20885,\n  \"tuss\": 31741,\n  \"tut</w>\": 35121,\n  \"tutor\": 10054,\n  \"tutor</w>\": 27858,\n  \"tutorial</w>\": 12857,\n  \"tutorials</w>\": 30973,\n  \"tutoring</w>\": 37532,\n  \"tutti</w>\": 46880,\n  \"tutu</w>\": 35845,\n  \"tux\": 28720,\n  \"tux</w>\": 49186,\n  \"tuxedo</w>\": 40173,\n  \"tv\": 3197,\n  \"tv</w>\": 1583,\n  \"tvc</w>\": 49190,\n  \"tvd</w>\": 25889,\n  \"tvmiaw</w>\": 38554,\n  \"tvn</w>\": 44232,\n  \"tvs</w>\": 27114,\n  \"tvtime</w>\": 19947,\n  \"tvxq</w>\": 43968,\n  \"tw\": 966,\n  \"tw</w>\": 12842,\n  \"twa</w>\": 46954,\n  \"twain</w>\": 30689,\n  \"twal\": 48126,\n  \"tware</w>\": 5707,\n  \"twc</w>\": 41217,\n  \"twd\": 29440,\n  \"twd</w>\": 19343,\n  \"twdfamily</w>\": 38218,\n  \"twe\": 18365,\n  \"tweak</w>\": 48870,\n  \"tweaks</w>\": 42661,\n  \"twee\": 1330,\n  \"tweed</w>\": 26904,\n  \"tweeps</w>\": 14928,\n  \"tweet\": 11826,\n  \"tweet</w>\": 1842,\n  \"tweeta\": 32024,\n  \"tweetapicture\": 40596,\n  \"tweeted</w>\": 7841,\n  \"tweeter</w>\": 32876,\n  \"tweeters</w>\": 31713,\n  \"tweeting</w>\": 8901,\n  \"tweets</w>\": 3560,\n  \"tweetyour\": 45033,\n  \"twel\": 14476,\n  \"twelf\": 39443,\n  \"twelfth</w>\": 44072,\n  \"twell\": 38722,\n  \"twell</w>\": 30162,\n  \"twelve</w>\": 19694,\n  \"twent\": 27027,\n  \"twenti\": 35167,\n  \"twenty</w>\": 13016,\n  \"twentyon\": 39609,\n  \"twentyonepilots</w>\": 40007,\n  \"twer\": 13923,\n  \"twerk</w>\": 28506,\n  \"twi\": 5537,\n  \"twice</w>\": 6970,\n  \"twick\": 34326,\n  \"twickenham</w>\": 39619,\n  \"twil\": 12804,\n  \"twili\": 35754,\n  \"twilight\": 46366,\n  \"twilight</w>\": 14512,\n  \"twill</w>\": 43703,\n  \"twin\": 9342,\n  \"twin</w>\": 6769,\n  \"twine</w>\": 42775,\n  \"twinkle</w>\": 36545,\n  \"twinning</w>\": 30156,\n  \"twinpeaks</w>\": 32042,\n  \"twins</w>\": 8040,\n  \"twist</w>\": 10589,\n  \"twisted</w>\": 18233,\n  \"twister</w>\": 45933,\n  \"twists</w>\": 34149,\n  \"twit\": 1643,\n  \"twit</w>\": 18704,\n  \"twitart</w>\": 27709,\n  \"twitch\": 13251,\n  \"twitch</w>\": 9153,\n  \"twitter\": 7546,\n  \"twitter</w>\": 1989,\n  \"twitterkurds</w>\": 32722,\n  \"twitterstorians</w>\": 35389,\n  \"two\": 17211,\n  \"two</w>\": 1237,\n  \"twol\": 31964,\n  \"twood\": 40404,\n  \"twood</w>\": 13245,\n  \"twp</w>\": 33283,\n  \"twright</w>\": 46778,\n  \"twt</w>\": 6825,\n  \"twx</w>\": 26830,\n  \"twy\": 45861,\n  \"tx\": 6636,\n  \"tx</w>\": 5200,\n  \"txhsfb</w>\": 34757,\n  \"txlege</w>\": 26995,\n  \"txst</w>\": 40761,\n  \"txt</w>\": 24595,\n  \"txwx</w>\": 22995,\n  \"ty\": 1260,\n  \"ty</w>\": 744,\n  \"tya</w>\": 41273,\n  \"tycoon</w>\": 36803,\n  \"tye</w>\": 43097,\n  \"tyfree</w>\": 41215,\n  \"tyga</w>\": 41952,\n  \"tying</w>\": 22559,\n  \"tyl</w>\": 47537,\n  \"tyler\": 14787,\n  \"tyler</w>\": 7058,\n  \"tym</w>\": 45772,\n  \"tyne\": 27000,\n  \"tyne</w>\": 29729,\n  \"tyour\": 16823,\n  \"type\": 15673,\n  \"type</w>\": 3877,\n  \"typed</w>\": 40753,\n  \"typeface</w>\": 44969,\n  \"types</w>\": 7543,\n  \"typewriter</w>\": 42180,\n  \"typho\": 17486,\n  \"typhoon</w>\": 21110,\n  \"typic\": 21648,\n  \"typical</w>\": 9854,\n  \"typically</w>\": 23175,\n  \"typing</w>\": 20102,\n  \"typo\": 18831,\n  \"typo</w>\": 29076,\n  \"typography</w>\": 24332,\n  \"tyr\": 15590,\n  \"tyran\": 46921,\n  \"tyranny</w>\": 35402,\n  \"tyre\": 38330,\n  \"tyre</w>\": 16864,\n  \"tyres</w>\": 21376,\n  \"tyrone</w>\": 30226,\n  \"tyson</w>\": 16616,\n  \"tz\": 7710,\n  \"tz</w>\": 4983,\n  \"tzer</w>\": 45267,\n  \"tzky</w>\": 47127,\n  \"tzman</w>\": 46032,\n  \"tzu</w>\": 34354,\n  \"tÃ©\": 27208,\n  \"tÃ©</w>\": 39694,\n  \"u\": 84,\n  \"u</w>\": 340,\n  \"ua\": 34075,\n  \"ua</w>\": 8441,\n  \"uaap\": 46753,\n  \"uaap</w>\": 43774,\n  \"uab</w>\": 35587,\n  \"uae</w>\": 9752,\n  \"ual</w>\": 1921,\n  \"ually</w>\": 10767,\n  \"uan</w>\": 33062,\n  \"uas</w>\": 38339,\n  \"uav</w>\": 30303,\n  \"ub\": 18430,\n  \"ub</w>\": 13494,\n  \"uba</w>\": 29768,\n  \"ubc\": 42479,\n  \"ubc</w>\": 29455,\n  \"ube</w>\": 30892,\n  \"uber\": 25896,\n  \"uber</w>\": 10668,\n  \"ubi\": 26758,\n  \"ubio</w>\": 32867,\n  \"ubiquit\": 48129,\n  \"ubis\": 28248,\n  \"ubisoft</w>\": 32051,\n  \"ubs</w>\": 43851,\n  \"ubun\": 28184,\n  \"ubuntu</w>\": 30791,\n  \"uc\": 4903,\n  \"uc</w>\": 12438,\n  \"uca</w>\": 30942,\n  \"ucc\": 44844,\n  \"ucc</w>\": 29138,\n  \"ucci</w>\": 30746,\n  \"uccino</w>\": 30409,\n  \"ucd\": 44746,\n  \"ucd</w>\": 43514,\n  \"ucf</w>\": 24414,\n  \"uch\": 19465,\n  \"uch</w>\": 22394,\n  \"uchi\": 37473,\n  \"uci\": 46354,\n  \"uci</w>\": 28925,\n  \"uck</w>\": 34189,\n  \"ucl\": 12013,\n  \"ucl</w>\": 13647,\n  \"ucla\": 37667,\n  \"ucla</w>\": 17259,\n  \"ucn</w>\": 49036,\n  \"uconn</w>\": 30549,\n  \"ud\": 6560,\n  \"ud</w>\": 5765,\n  \"uda</w>\": 22800,\n  \"udaipur</w>\": 49385,\n  \"uddin</w>\": 43035,\n  \"ude\": 37016,\n  \"ude</w>\": 35194,\n  \"ue\": 16696,\n  \"ue</w>\": 1190,\n  \"uefa</w>\": 19189,\n  \"uel</w>\": 24231,\n  \"uer</w>\": 45951,\n  \"ues</w>\": 2526,\n  \"uf\": 17777,\n  \"uf</w>\": 19230,\n  \"ufc\": 20396,\n  \"ufc</w>\": 6490,\n  \"uff</w>\": 45701,\n  \"ufo</w>\": 19443,\n  \"ufos</w>\": 48234,\n  \"ug\": 3754,\n  \"ug</w>\": 16061,\n  \"uga</w>\": 16056,\n  \"ugand\": 25965,\n  \"uganda</w>\": 11125,\n  \"ugandan</w>\": 44206,\n  \"ugby</w>\": 30658,\n  \"ugh\": 39736,\n  \"ugh</w>\": 12755,\n  \"ugliest</w>\": 43543,\n  \"ugly\": 36070,\n  \"ugly</w>\": 8159,\n  \"ugu</w>\": 18144,\n  \"uh\": 17661,\n  \"uh</w>\": 9219,\n  \"uhc</w>\": 44974,\n  \"uhh</w>\": 35938,\n  \"uhhh</w>\": 45270,\n  \"uhm</w>\": 35614,\n  \"uhur\": 29434,\n  \"uhuru</w>\": 35690,\n  \"ui\": 17326,\n  \"ui</w>\": 11458,\n  \"uil</w>\": 29395,\n  \"uit\": 30696,\n  \"uit</w>\": 47584,\n  \"uj\": 33266,\n  \"uji</w>\": 39672,\n  \"uk\": 2294,\n  \"uk</w>\": 1432,\n  \"uka</w>\": 23294,\n  \"uke\": 48836,\n  \"uke</w>\": 28577,\n  \"uked\": 48987,\n  \"uki\": 37435,\n  \"uki</w>\": 9009,\n  \"ukin\": 34996,\n  \"ukip</w>\": 20360,\n  \"uklabour</w>\": 36902,\n  \"ukmfg</w>\": 38764,\n  \"uko</w>\": 33562,\n  \"ukone</w>\": 24682,\n  \"ukrain\": 15468,\n  \"ukraine</w>\": 7768,\n  \"ukrainian</w>\": 16927,\n  \"ukrunchat</w>\": 34481,\n  \"uku\": 29541,\n  \"uku</w>\": 36082,\n  \"ukulele</w>\": 39094,\n  \"ul\": 914,\n  \"ul</w>\": 6625,\n  \"ula\": 34104,\n  \"ula</w>\": 9506,\n  \"ular</w>\": 4927,\n  \"ulary</w>\": 21701,\n  \"ulate</w>\": 20467,\n  \"ulation</w>\": 32896,\n  \"ule</w>\": 35616,\n  \"ules</w>\": 26274,\n  \"ulf</w>\": 49331,\n  \"uli\": 41841,\n  \"uli</w>\": 22174,\n  \"ull\": 33254,\n  \"ulla</w>\": 30577,\n  \"ullah</w>\": 45310,\n  \"ullivan</w>\": 45252,\n  \"ulls</w>\": 37418,\n  \"ulo\": 46084,\n  \"ulo</w>\": 36738,\n  \"ulous\": 42490,\n  \"ulous</w>\": 4281,\n  \"ulously</w>\": 20167,\n  \"ulster\": 29709,\n  \"ulster</w>\": 24639,\n  \"ult</w>\": 4380,\n  \"ulti\": 11925,\n  \"ulties</w>\": 21884,\n  \"ultimat\": 16522,\n  \"ultimate\": 34684,\n  \"ultimate</w>\": 5377,\n  \"ultimatefan\": 48372,\n  \"ultimatefanlive</w>\": 48644,\n  \"ultimately</w>\": 23023,\n  \"ultr\": 25636,\n  \"ultra\": 11398,\n  \"ultra</w>\": 8118,\n  \"ultram\": 44519,\n  \"ultrasound</w>\": 29717,\n  \"ulture</w>\": 22272,\n  \"ulty</w>\": 8036,\n  \"ulu\": 41815,\n  \"ulu</w>\": 15659,\n  \"ulum</w>\": 17235,\n  \"uly\": 33220,\n  \"ulysses</w>\": 46114,\n  \"um\": 1622,\n  \"um</w>\": 1008,\n  \"uma\": 29982,\n  \"uma</w>\": 9256,\n  \"uman</w>\": 27112,\n  \"umar</w>\": 25656,\n  \"umass</w>\": 39390,\n  \"umatic</w>\": 45006,\n  \"umb\": 7493,\n  \"umber\": 19195,\n  \"umbrel\": 34773,\n  \"umbrella</w>\": 17143,\n  \"umbrellas</w>\": 42782,\n  \"umbria</w>\": 39287,\n  \"umc</w>\": 39491,\n  \"umd</w>\": 42067,\n  \"ume\": 38480,\n  \"umen</w>\": 42832,\n  \"uments</w>\": 25924,\n  \"umer</w>\": 23539,\n  \"umes</w>\": 21403,\n  \"umi\": 48772,\n  \"umi</w>\": 15458,\n  \"umich\": 41294,\n  \"umin</w>\": 31542,\n  \"umm\": 26129,\n  \"umm</w>\": 21215,\n  \"ummer</w>\": 47628,\n  \"ummm</w>\": 33665,\n  \"umni</w>\": 31739,\n  \"ump\": 22224,\n  \"umpire</w>\": 36214,\n  \"ums</w>\": 8643,\n  \"umu</w>\": 39788,\n  \"un\": 569,\n  \"un</w>\": 2271,\n  \"una</w>\": 6385,\n  \"unable</w>\": 17793,\n  \"unacceptable</w>\": 25234,\n  \"unanim\": 20800,\n  \"unanimous</w>\": 33520,\n  \"unanimously</w>\": 31798,\n  \"unanswered</w>\": 43611,\n  \"unarmed</w>\": 41541,\n  \"unas</w>\": 41366,\n  \"unavailable</w>\": 48430,\n  \"unaware</w>\": 33347,\n  \"unbeat\": 37056,\n  \"unbeatable</w>\": 40267,\n  \"unbeaten</w>\": 19228,\n  \"unbeliev\": 11383,\n  \"unbelievable</w>\": 13306,\n  \"unbelievably</w>\": 33781,\n  \"unborn</w>\": 37257,\n  \"unboxing</w>\": 32866,\n  \"unbreakable</w>\": 32956,\n  \"unbroken</w>\": 49271,\n  \"unc\": 24921,\n  \"unc</w>\": 15322,\n  \"uncanny</w>\": 32556,\n  \"uncertain</w>\": 30384,\n  \"uncertainty</w>\": 23956,\n  \"unch</w>\": 1527,\n  \"unchanged</w>\": 34272,\n  \"uncharted</w>\": 34560,\n  \"unci\": 25521,\n  \"unciation</w>\": 34117,\n  \"uncle\": 31537,\n  \"uncle</w>\": 8002,\n  \"unclear</w>\": 32955,\n  \"uncles</w>\": 45335,\n  \"uncomfortable</w>\": 22470,\n  \"uncommon</w>\": 34888,\n  \"uncondition\": 46561,\n  \"unconditional</w>\": 31112,\n  \"unconscious</w>\": 34791,\n  \"unconstitutional</w>\": 43585,\n  \"unconventional</w>\": 39440,\n  \"uncover</w>\": 33031,\n  \"uncovered</w>\": 28234,\n  \"uncture</w>\": 38736,\n  \"uncut</w>\": 41056,\n  \"und\": 9762,\n  \"und</w>\": 9732,\n  \"unda</w>\": 39932,\n  \"undant</w>\": 25377,\n  \"unday</w>\": 29338,\n  \"unde</w>\": 45226,\n  \"undead</w>\": 40105,\n  \"undecided</w>\": 49368,\n  \"undefeated</w>\": 15326,\n  \"undeni\": 38424,\n  \"under\": 1473,\n  \"under</w>\": 1798,\n  \"underage</w>\": 45669,\n  \"underattack</w>\": 35075,\n  \"undercover</w>\": 21595,\n  \"underdog</w>\": 44266,\n  \"undere\": 21675,\n  \"underestim\": 23348,\n  \"underestimate</w>\": 31794,\n  \"undergo</w>\": 31545,\n  \"undergoing</w>\": 26419,\n  \"undergrad</w>\": 38331,\n  \"undergraduate</w>\": 24320,\n  \"underground</w>\": 9396,\n  \"undering</w>\": 30826,\n  \"underlying</w>\": 31812,\n  \"undermine</w>\": 42839,\n  \"underneath</w>\": 20857,\n  \"underrated</w>\": 19494,\n  \"unders</w>\": 20376,\n  \"understand\": 47582,\n  \"understand</w>\": 4600,\n  \"understanding</w>\": 7522,\n  \"understands</w>\": 21607,\n  \"understatement</w>\": 38296,\n  \"understood</w>\": 17303,\n  \"undertaker</w>\": 40144,\n  \"undertaking</w>\": 49067,\n  \"undertale</w>\": 48283,\n  \"underthe\": 41161,\n  \"underwater</w>\": 14760,\n  \"underway</w>\": 6273,\n  \"underwear</w>\": 21154,\n  \"underwood</w>\": 21474,\n  \"underworld</w>\": 34760,\n  \"undi</w>\": 23845,\n  \"undisclosed</w>\": 39334,\n  \"undo</w>\": 35454,\n  \"undocumented</w>\": 35414,\n  \"undoub\": 38836,\n  \"undoubtedly</w>\": 42204,\n  \"undp</w>\": 26691,\n  \"une\": 4522,\n  \"une</w>\": 10966,\n  \"unearth\": 32716,\n  \"unearthed</w>\": 36632,\n  \"unemp\": 15139,\n  \"unemployed</w>\": 32721,\n  \"unemployment</w>\": 19350,\n  \"unes</w>\": 6394,\n  \"unesco</w>\": 16216,\n  \"uneven</w>\": 43204,\n  \"unex\": 9484,\n  \"unexpe\": 10802,\n  \"unexpec\": 31829,\n  \"unexpected</w>\": 12293,\n  \"unexpectedly</w>\": 35622,\n  \"unf\": 29285,\n  \"unfair</w>\": 22193,\n  \"unfinished</w>\": 26526,\n  \"unfit</w>\": 45367,\n  \"unfold</w>\": 38681,\n  \"unfollow</w>\": 38797,\n  \"unfor\": 14010,\n  \"unforgettable</w>\": 16173,\n  \"unfortun\": 10194,\n  \"unfortunate</w>\": 22361,\n  \"unfortunately</w>\": 12863,\n  \"unfpa</w>\": 45048,\n  \"ung\": 10439,\n  \"ung</w>\": 4334,\n  \"unga</w>\": 19151,\n  \"ungsoo</w>\": 25582,\n  \"unh\": 25365,\n  \"unhappy</w>\": 26528,\n  \"unhcr</w>\": 43451,\n  \"unhealthy</w>\": 30994,\n  \"uni\": 1107,\n  \"uni</w>\": 5926,\n  \"unic\": 7648,\n  \"unicef\": 38286,\n  \"unicef</w>\": 19259,\n  \"unicorn</w>\": 15660,\n  \"unicorns</w>\": 35183,\n  \"unidenti\": 33707,\n  \"unidentified</w>\": 35563,\n  \"unification</w>\": 45036,\n  \"unified</w>\": 20876,\n  \"uniform</w>\": 11075,\n  \"uniforms</w>\": 17838,\n  \"unil\": 32388,\n  \"unilever</w>\": 48654,\n  \"uniof\": 21218,\n  \"union\": 14210,\n  \"union</w>\": 3503,\n  \"unions</w>\": 18353,\n  \"unis\": 30482,\n  \"unis</w>\": 39266,\n  \"unisex</w>\": 27609,\n  \"unison</w>\": 46694,\n  \"unit\": 28522,\n  \"unit</w>\": 5695,\n  \"unite\": 15078,\n  \"unite</w>\": 11305,\n  \"uniteblue</w>\": 20935,\n  \"united\": 10898,\n  \"united</w>\": 2690,\n  \"unitedstates</w>\": 39636,\n  \"unitedway\": 47486,\n  \"unites</w>\": 32061,\n  \"uniting</w>\": 31318,\n  \"units</w>\": 10394,\n  \"unity\": 38300,\n  \"unity</w>\": 8581,\n  \"univ\": 36680,\n  \"univ</w>\": 14896,\n  \"univer\": 15574,\n  \"univers\": 5855,\n  \"universal\": 19148,\n  \"universal</w>\": 8754,\n  \"universe</w>\": 6104,\n  \"universi\": 41692,\n  \"universit\": 26019,\n  \"universities</w>\": 16408,\n  \"university\": 40728,\n  \"university</w>\": 2182,\n  \"universityof\": 46158,\n  \"unk</w>\": 5542,\n  \"unknown</w>\": 8685,\n  \"unl</w>\": 43807,\n  \"unlawful</w>\": 42305,\n  \"unle\": 19677,\n  \"unlea\": 23893,\n  \"unleash</w>\": 26706,\n  \"unleashed</w>\": 27955,\n  \"unless</w>\": 10602,\n  \"unlike</w>\": 16694,\n  \"unlikely</w>\": 18904,\n  \"unlimited</w>\": 11015,\n  \"unlock</w>\": 18649,\n  \"unlocked</w>\": 16770,\n  \"unlocking</w>\": 40810,\n  \"unlucky</w>\": 35029,\n  \"unlv</w>\": 42283,\n  \"unmanned</w>\": 36751,\n  \"unmatched</w>\": 46054,\n  \"unn</w>\": 38364,\n  \"unnamed</w>\": 44985,\n  \"unnecessary</w>\": 24100,\n  \"unner</w>\": 31481,\n  \"unning</w>\": 43282,\n  \"unnoticed</w>\": 42807,\n  \"uno\": 32446,\n  \"uno</w>\": 17078,\n  \"unofficial</w>\": 22506,\n  \"unpacking</w>\": 43589,\n  \"unpaid</w>\": 32811,\n  \"unparalleled</w>\": 44396,\n  \"unplugged</w>\": 31724,\n  \"unpopular</w>\": 40232,\n  \"unprece\": 23054,\n  \"unprecedented</w>\": 23344,\n  \"unpredictable</w>\": 38684,\n  \"unra\": 45150,\n  \"unreal\": 46980,\n  \"unreal</w>\": 15636,\n  \"unrelated</w>\": 38644,\n  \"unreleased</w>\": 29654,\n  \"unrest</w>\": 36452,\n  \"uns</w>\": 25908,\n  \"unsafe</w>\": 32071,\n  \"unsc</w>\": 36395,\n  \"unseen</w>\": 19069,\n  \"unsigned</w>\": 39346,\n  \"unsolved</w>\": 40836,\n  \"unsplash</w>\": 46196,\n  \"unstable</w>\": 34730,\n  \"unstopp\": 22105,\n  \"unstoppable</w>\": 23484,\n  \"unsuccessful</w>\": 47478,\n  \"unsung</w>\": 33015,\n  \"unsure</w>\": 26396,\n  \"unt\": 19654,\n  \"unt</w>\": 6537,\n  \"until</w>\": 1942,\n  \"untitled</w>\": 21309,\n  \"unto</w>\": 19801,\n  \"untold</w>\": 32206,\n  \"untouch\": 44509,\n  \"untouched</w>\": 42764,\n  \"unused</w>\": 29636,\n  \"unusual</w>\": 12613,\n  \"unusually</w>\": 36465,\n  \"unve\": 6685,\n  \"unveil</w>\": 20483,\n  \"unveiled</w>\": 13572,\n  \"unveiling</w>\": 20327,\n  \"unveils</w>\": 15057,\n  \"unwanted</w>\": 25285,\n  \"unwind</w>\": 34064,\n  \"unya</w>\": 37142,\n  \"uo\": 30874,\n  \"uo</w>\": 36162,\n  \"uof\": 11155,\n  \"uoft</w>\": 37329,\n  \"uon\": 48144,\n  \"uous</w>\": 40185,\n  \"up\": 1083,\n  \"up</w>\": 705,\n  \"upa</w>\": 31727,\n  \"upbeat</w>\": 39201,\n  \"upcoming</w>\": 4196,\n  \"upcycled</w>\": 46552,\n  \"upd\": 3226,\n  \"update</w>\": 2491,\n  \"updated</w>\": 5974,\n  \"updates</w>\": 4904,\n  \"updating</w>\": 22792,\n  \"uper\": 38082,\n  \"uper</w>\": 33056,\n  \"upfront</w>\": 42064,\n  \"upgrade</w>\": 10365,\n  \"upgraded</w>\": 18577,\n  \"upgrades</w>\": 21253,\n  \"upgrading</w>\": 34368,\n  \"uph\": 14128,\n  \"uphill</w>\": 42767,\n  \"uphol\": 26195,\n  \"uphold</w>\": 43897,\n  \"upholstery</w>\": 44556,\n  \"upl\": 41939,\n  \"uplift</w>\": 45389,\n  \"uplifting</w>\": 29546,\n  \"upload</w>\": 13968,\n  \"uploaded</w>\": 16793,\n  \"uploading</w>\": 30145,\n  \"upon\": 23524,\n  \"upon</w>\": 5067,\n  \"upp\": 19549,\n  \"upp</w>\": 45946,\n  \"upper\": 22465,\n  \"upper</w>\": 7067,\n  \"upri\": 15982,\n  \"upright</w>\": 29818,\n  \"uprising</w>\": 26006,\n  \"upro\": 28922,\n  \"ups</w>\": 6926,\n  \"upscale</w>\": 47501,\n  \"upset</w>\": 11214,\n  \"upsets</w>\": 42637,\n  \"upside</w>\": 15362,\n  \"upstairs</w>\": 21387,\n  \"upstate</w>\": 33335,\n  \"upstream</w>\": 45517,\n  \"upthe\": 31510,\n  \"upto</w>\": 26575,\n  \"upton</w>\": 31910,\n  \"uptown</w>\": 23807,\n  \"upward</w>\": 32526,\n  \"upwards</w>\": 34915,\n  \"uq</w>\": 39591,\n  \"ur\": 565,\n  \"ur</w>\": 1775,\n  \"ura\": 29337,\n  \"ura</w>\": 3544,\n  \"urable</w>\": 40194,\n  \"ural\": 23547,\n  \"ural</w>\": 33948,\n  \"uran</w>\": 16197,\n  \"uranium</w>\": 29850,\n  \"urban\": 7931,\n  \"urban</w>\": 5800,\n  \"urbanart</w>\": 40834,\n  \"urd</w>\": 47880,\n  \"urday</w>\": 19742,\n  \"urdu</w>\": 29976,\n  \"ure\": 5514,\n  \"ure</w>\": 726,\n  \"ured</w>\": 4210,\n  \"urer</w>\": 20864,\n  \"ures</w>\": 2288,\n  \"urg</w>\": 35995,\n  \"urge</w>\": 14852,\n  \"urged</w>\": 23790,\n  \"urgency</w>\": 47612,\n  \"urgent</w>\": 13693,\n  \"urgently</w>\": 34534,\n  \"urges</w>\": 16692,\n  \"urging</w>\": 27748,\n  \"uri\": 11052,\n  \"uri</w>\": 8699,\n  \"urie</w>\": 46429,\n  \"urin\": 45245,\n  \"urine</w>\": 28864,\n  \"uring</w>\": 1351,\n  \"url</w>\": 23464,\n  \"urn</w>\": 38075,\n  \"uro\": 17343,\n  \"uro</w>\": 5925,\n  \"urology</w>\": 48585,\n  \"urope</w>\": 14918,\n  \"urs</w>\": 4794,\n  \"urself</w>\": 31942,\n  \"urst</w>\": 19181,\n  \"urstruly\": 34751,\n  \"urstrulymahesh</w>\": 35314,\n  \"ursula</w>\": 38390,\n  \"urt</w>\": 24309,\n  \"uru\": 16322,\n  \"uru</w>\": 11768,\n  \"uruguay</w>\": 27931,\n  \"urus</w>\": 14246,\n  \"urve\": 24583,\n  \"ury\": 8642,\n  \"ury</w>\": 2106,\n  \"us\": 904,\n  \"us</w>\": 718,\n  \"usa\": 9491,\n  \"usa</w>\": 2547,\n  \"usability</w>\": 46736,\n  \"usable</w>\": 22890,\n  \"usaf</w>\": 25017,\n  \"usage</w>\": 19137,\n  \"usaid</w>\": 34507,\n  \"usair\": 36742,\n  \"usairforce</w>\": 42179,\n  \"usarmy</w>\": 19132,\n  \"usatoday</w>\": 40263,\n  \"usav\": 36056,\n  \"usb</w>\": 10281,\n  \"usc\": 13346,\n  \"usc</w>\": 14995,\n  \"uscg</w>\": 43932,\n  \"usd</w>\": 7485,\n  \"usda</w>\": 25829,\n  \"use\": 4419,\n  \"use</w>\": 1483,\n  \"used\": 32289,\n  \"used</w>\": 2026,\n  \"useful</w>\": 9784,\n  \"useless</w>\": 20154,\n  \"usemb\": 39700,\n  \"user\": 21248,\n  \"user</w>\": 7031,\n  \"username</w>\": 28162,\n  \"users</w>\": 7433,\n  \"uses</w>\": 5282,\n  \"useum</w>\": 45189,\n  \"usf\": 32385,\n  \"usf</w>\": 28942,\n  \"usgs</w>\": 35103,\n  \"ush\": 12001,\n  \"ush</w>\": 18335,\n  \"usher</w>\": 27411,\n  \"ushi</w>\": 47734,\n  \"usi</w>\": 25540,\n  \"usic\": 34909,\n  \"usic</w>\": 16753,\n  \"using</w>\": 1996,\n  \"usky</w>\": 45778,\n  \"usl</w>\": 42113,\n  \"usm</w>\": 40041,\n  \"usmc</w>\": 21678,\n  \"usmnt</w>\": 30662,\n  \"usn</w>\": 40579,\n  \"usnavy</w>\": 24500,\n  \"usnews</w>\": 43752,\n  \"uso</w>\": 21539,\n  \"usopen</w>\": 21782,\n  \"usp\": 26651,\n  \"usps</w>\": 39980,\n  \"usrc</w>\": 33274,\n  \"uss\": 11545,\n  \"uss</w>\": 9260,\n  \"ussia</w>\": 29553,\n  \"ussoccer</w>\": 42828,\n  \"ussr</w>\": 32697,\n  \"ust\": 35501,\n  \"ust</w>\": 24725,\n  \"usu\": 4254,\n  \"usu</w>\": 40434,\n  \"usual</w>\": 6129,\n  \"usually</w>\": 8296,\n  \"usur\": 45582,\n  \"uswnt</w>\": 35255,\n  \"ut\": 1419,\n  \"ut</w>\": 3641,\n  \"uta\": 42706,\n  \"uta</w>\": 25925,\n  \"utah\": 27474,\n  \"utah</w>\": 9312,\n  \"utc</w>\": 18196,\n  \"utd</w>\": 10493,\n  \"ute\": 16856,\n  \"ute</w>\": 3130,\n  \"uten\": 32089,\n  \"uter\": 39197,\n  \"utes</w>\": 2850,\n  \"uth\": 48819,\n  \"uth</w>\": 44750,\n  \"uti</w>\": 24568,\n  \"util\": 28824,\n  \"utili\": 17015,\n  \"utilities</w>\": 27210,\n  \"utility</w>\": 14941,\n  \"utilize</w>\": 36861,\n  \"utilized</w>\": 47604,\n  \"utilizing</w>\": 40212,\n  \"utm</w>\": 47853,\n  \"utmost</w>\": 42352,\n  \"uto\": 18866,\n  \"uto</w>\": 13683,\n  \"utopia</w>\": 34433,\n  \"utpol</w>\": 42605,\n  \"utr\": 48726,\n  \"utrecht</w>\": 37216,\n  \"uts</w>\": 11740,\n  \"utsa</w>\": 37528,\n  \"utt\": 17096,\n  \"uttar</w>\": 40168,\n  \"uttarak\": 33755,\n  \"uttarakhand</w>\": 35655,\n  \"utter\": 18769,\n  \"utter</w>\": 24558,\n  \"utterly</w>\": 21353,\n  \"utto</w>\": 42183,\n  \"utv</w>\": 36351,\n  \"utz</w>\": 45320,\n  \"uu\": 5702,\n  \"uu</w>\": 14553,\n  \"uuu\": 44355,\n  \"uuu</w>\": 27656,\n  \"uuuu\": 16720,\n  \"uuuu</w>\": 40797,\n  \"uv\": 23777,\n  \"uv</w>\": 15977,\n  \"uva</w>\": 23908,\n  \"uw\": 13933,\n  \"uw</w>\": 19166,\n  \"uwe</w>\": 48785,\n  \"uwu</w>\": 35544,\n  \"ux\": 9251,\n  \"ux</w>\": 6213,\n  \"uy\": 31929,\n  \"uy</w>\": 48113,\n  \"uz\": 19398,\n  \"uz</w>\": 36991,\n  \"uzbe\": 43007,\n  \"uzbekistan</w>\": 45024,\n  \"uzzi</w>\": 48210,\n  \"v\": 85,\n  \"v</w>\": 341,\n  \"va\": 4648,\n  \"va</w>\": 1892,\n  \"vaa</w>\": 37488,\n  \"vable</w>\": 23088,\n  \"vac\": 3125,\n  \"vac</w>\": 34085,\n  \"vaca</w>\": 48215,\n  \"vacancies</w>\": 26333,\n  \"vacancy</w>\": 21247,\n  \"vacant</w>\": 25262,\n  \"vacation\": 28336,\n  \"vacation</w>\": 6561,\n  \"vacations</w>\": 29002,\n  \"vacay</w>\": 44716,\n  \"vacc\": 13342,\n  \"vaccin\": 19164,\n  \"vaccinated</w>\": 48134,\n  \"vaccination</w>\": 32518,\n  \"vaccine\": 47780,\n  \"vaccine</w>\": 17493,\n  \"vaccines</w>\": 25860,\n  \"vach\": 46211,\n  \"vacu\": 16058,\n  \"vacuum</w>\": 18420,\n  \"vad\": 11880,\n  \"vada</w>\": 46759,\n  \"vader</w>\": 21908,\n  \"vae</w>\": 39384,\n  \"vag\": 13015,\n  \"vague</w>\": 42154,\n  \"vah</w>\": 26921,\n  \"vai\": 26893,\n  \"vai</w>\": 36802,\n  \"vail</w>\": 21189,\n  \"vain</w>\": 25538,\n  \"vais</w>\": 28719,\n  \"vaj\": 34206,\n  \"vak\": 16288,\n  \"vak</w>\": 41597,\n  \"val\": 1214,\n  \"val</w>\": 1560,\n  \"vala</w>\": 48525,\n  \"valdez</w>\": 40617,\n  \"vale\": 35554,\n  \"vale</w>\": 10820,\n  \"valedic\": 43525,\n  \"valen\": 12630,\n  \"valence</w>\": 30225,\n  \"valenci\": 34183,\n  \"valencia</w>\": 16559,\n  \"valent\": 3655,\n  \"valent</w>\": 15300,\n  \"valentin</w>\": 48631,\n  \"valentina</w>\": 43741,\n  \"valentine\": 11208,\n  \"valentine</w>\": 5876,\n  \"valentines</w>\": 10259,\n  \"valentinesday</w>\": 12369,\n  \"valentino</w>\": 29624,\n  \"valeri\": 31951,\n  \"valerie</w>\": 25592,\n  \"valet</w>\": 45749,\n  \"vali\": 8230,\n  \"valiant</w>\": 33804,\n  \"valid</w>\": 15126,\n  \"validation</w>\": 32536,\n  \"valkyrie</w>\": 42326,\n  \"vall\": 23523,\n  \"vall</w>\": 35295,\n  \"vallarta</w>\": 47874,\n  \"valle\": 24857,\n  \"valle</w>\": 29105,\n  \"valley\": 18354,\n  \"valley</w>\": 3136,\n  \"valleys</w>\": 28649,\n  \"valor</w>\": 30930,\n  \"vals</w>\": 7431,\n  \"valu\": 6291,\n  \"valuable</w>\": 10056,\n  \"valuation</w>\": 25894,\n  \"value\": 41358,\n  \"value</w>\": 4602,\n  \"valued</w>\": 17801,\n  \"values</w>\": 8857,\n  \"valve</w>\": 17001,\n  \"valves</w>\": 33517,\n  \"vam\": 9983,\n  \"vamo\": 46718,\n  \"vamos</w>\": 30346,\n  \"vamp\": 10680,\n  \"vampi\": 47017,\n  \"vampire\": 47576,\n  \"vampire</w>\": 13220,\n  \"vampires</w>\": 30868,\n  \"vamps</w>\": 44810,\n  \"van\": 2446,\n  \"van</w>\": 2451,\n  \"vana</w>\": 20543,\n  \"vanc\": 6320,\n  \"vance</w>\": 31447,\n  \"vancou\": 6750,\n  \"vancouver\": 31904,\n  \"vancouver</w>\": 7208,\n  \"vand\": 11691,\n  \"vandalism</w>\": 45664,\n  \"vander\": 16264,\n  \"vanderbilt</w>\": 33524,\n  \"vandy\": 39268,\n  \"vane</w>\": 43828,\n  \"vaness\": 13328,\n  \"vanessa</w>\": 16836,\n  \"vangogh</w>\": 47849,\n  \"vanguard</w>\": 27916,\n  \"vani\": 15396,\n  \"vani</w>\": 26459,\n  \"vania</w>\": 10998,\n  \"vanilla</w>\": 11974,\n  \"vanished</w>\": 43783,\n  \"vanishing</w>\": 48296,\n  \"vanity\": 48353,\n  \"vanity</w>\": 22938,\n  \"vans</w>\": 11711,\n  \"vant\": 26298,\n  \"vantage</w>\": 31749,\n  \"vanu\": 42892,\n  \"vanuatu</w>\": 48766,\n  \"vap\": 10462,\n  \"vape\": 25423,\n  \"vape</w>\": 20219,\n  \"vaping</w>\": 29403,\n  \"vapor\": 37167,\n  \"vapor</w>\": 30729,\n  \"vapori\": 46183,\n  \"var\": 3187,\n  \"var</w>\": 12998,\n  \"vara</w>\": 47492,\n  \"varan\": 36585,\n  \"varanasi</w>\": 39364,\n  \"vard\": 21866,\n  \"vard</w>\": 8773,\n  \"vardy</w>\": 47371,\n  \"vare\": 38159,\n  \"vares</w>\": 42895,\n  \"vargas</w>\": 32752,\n  \"vari\": 3354,\n  \"variable</w>\": 26416,\n  \"varian</w>\": 34334,\n  \"variant</w>\": 20293,\n  \"variants</w>\": 38312,\n  \"variation</w>\": 26420,\n  \"variations</w>\": 29025,\n  \"varied</w>\": 32334,\n  \"varies</w>\": 32543,\n  \"varieties</w>\": 23805,\n  \"variety</w>\": 8396,\n  \"various</w>\": 7395,\n  \"varsity\": 43716,\n  \"varsity</w>\": 8574,\n  \"varun\": 48120,\n  \"varun</w>\": 22069,\n  \"vary</w>\": 18855,\n  \"varying</w>\": 36456,\n  \"vas\": 5669,\n  \"vas</w>\": 5995,\n  \"vasc</w>\": 40995,\n  \"vascular</w>\": 19218,\n  \"vase</w>\": 20431,\n  \"vasi\": 49092,\n  \"vast\": 24413,\n  \"vast</w>\": 16414,\n  \"vastly</w>\": 48257,\n  \"vat\": 11588,\n  \"vat</w>\": 18363,\n  \"vatican</w>\": 21030,\n  \"vation</w>\": 37884,\n  \"vau\": 6391,\n  \"vaugh\": 25158,\n  \"vaughan</w>\": 21392,\n  \"vaughn</w>\": 29013,\n  \"vaul\": 27469,\n  \"vault</w>\": 15240,\n  \"vaus</w>\": 40217,\n  \"vaux\": 27403,\n  \"vauxhall</w>\": 29173,\n  \"vaw</w>\": 47952,\n  \"vay\": 48000,\n  \"vaz\": 38142,\n  \"vb\": 29365,\n  \"vb</w>\": 8778,\n  \"vball</w>\": 38329,\n  \"vc\": 28670,\n  \"vc</w>\": 7952,\n  \"vcs</w>\": 43528,\n  \"vcu</w>\": 40102,\n  \"vd</w>\": 9515,\n  \"vday</w>\": 42055,\n  \"ve\": 673,\n  \"ve</w>\": 563,\n  \"vea</w>\": 43798,\n  \"veal</w>\": 36616,\n  \"veau</w>\": 24419,\n  \"vec\": 19912,\n  \"vector\": 40453,\n  \"vector</w>\": 21533,\n  \"ved\": 19515,\n  \"ved</w>\": 1102,\n  \"veda</w>\": 44401,\n  \"vedere</w>\": 45660,\n  \"vedi</w>\": 47971,\n  \"vee\": 35708,\n  \"vee</w>\": 17073,\n  \"veen</w>\": 22432,\n  \"veer\": 21243,\n  \"veer</w>\": 22058,\n  \"veg\": 9048,\n  \"veg</w>\": 16460,\n  \"vega</w>\": 22930,\n  \"vegan\": 15705,\n  \"vegan</w>\": 5615,\n  \"vegans</w>\": 48514,\n  \"vegas\": 20288,\n  \"vegas</w>\": 4413,\n  \"vege\": 6219,\n  \"vegetable</w>\": 15725,\n  \"vegetables</w>\": 14119,\n  \"vegetarian</w>\": 14600,\n  \"vegetation</w>\": 33947,\n  \"veggie</w>\": 19401,\n  \"veggies</w>\": 16767,\n  \"vehic\": 3973,\n  \"vehicle</w>\": 5299,\n  \"vehicles</w>\": 8361,\n  \"veil</w>\": 23516,\n  \"vein</w>\": 29169,\n  \"veins</w>\": 28867,\n  \"veit</w>\": 30620,\n  \"vel\": 942,\n  \"vel</w>\": 1287,\n  \"vela</w>\": 34898,\n  \"veld</w>\": 34011,\n  \"veled</w>\": 15370,\n  \"veli</w>\": 49166,\n  \"veling</w>\": 37970,\n  \"vell\": 21173,\n  \"vell</w>\": 32997,\n  \"velo\": 14357,\n  \"velo</w>\": 33850,\n  \"velocity</w>\": 23811,\n  \"vels</w>\": 5109,\n  \"velve\": 37849,\n  \"velvet</w>\": 11063,\n  \"vely</w>\": 1708,\n  \"vember</w>\": 3477,\n  \"vement</w>\": 3129,\n  \"vements</w>\": 11104,\n  \"ven\": 1240,\n  \"ven</w>\": 1638,\n  \"vena</w>\": 47442,\n  \"vend\": 10851,\n  \"vending</w>\": 29202,\n  \"vendor</w>\": 21261,\n  \"vendors</w>\": 20353,\n  \"vene\": 5365,\n  \"veness</w>\": 10516,\n  \"venetian</w>\": 34336,\n  \"venezia</w>\": 34139,\n  \"venezu\": 10939,\n  \"venezuela</w>\": 12839,\n  \"venezuelan</w>\": 34699,\n  \"veng</w>\": 31526,\n  \"venge\": 27757,\n  \"vengeance</w>\": 32057,\n  \"veni</w>\": 31142,\n  \"venice</w>\": 11010,\n  \"vening</w>\": 47532,\n  \"venison</w>\": 40037,\n  \"venom\": 42491,\n  \"venom</w>\": 21588,\n  \"vens</w>\": 20884,\n  \"vent\": 4373,\n  \"vent</w>\": 5687,\n  \"ventil\": 39522,\n  \"ventilation</w>\": 35066,\n  \"venting</w>\": 15731,\n  \"vention</w>\": 4122,\n  \"vents</w>\": 12833,\n  \"ventu\": 48217,\n  \"ventura</w>\": 20921,\n  \"venture\": 37046,\n  \"venture</w>\": 12543,\n  \"ventures</w>\": 20829,\n  \"venue</w>\": 5097,\n  \"venues</w>\": 18120,\n  \"venus</w>\": 14691,\n  \"ver\": 624,\n  \"ver</w>\": 667,\n  \"vera</w>\": 13350,\n  \"verage</w>\": 3725,\n  \"verb</w>\": 34952,\n  \"verbal</w>\": 26522,\n  \"verbally</w>\": 39985,\n  \"verbs</w>\": 45687,\n  \"verde</w>\": 16935,\n  \"verdi</w>\": 42306,\n  \"verdict</w>\": 18030,\n  \"vere\": 11135,\n  \"vere</w>\": 34707,\n  \"vered</w>\": 2868,\n  \"verge</w>\": 23913,\n  \"veri\": 11638,\n  \"verification</w>\": 33521,\n  \"verified</w>\": 22555,\n  \"verify</w>\": 34722,\n  \"vering</w>\": 4630,\n  \"veriz\": 19707,\n  \"verizon</w>\": 21532,\n  \"verma</w>\": 41261,\n  \"vermont</w>\": 19241,\n  \"vern\": 2214,\n  \"vern</w>\": 12586,\n  \"verne</w>\": 45553,\n  \"vernon</w>\": 18348,\n  \"vero\": 45217,\n  \"vero</w>\": 38208,\n  \"verona</w>\": 31819,\n  \"veronic\": 39551,\n  \"veronica</w>\": 24039,\n  \"vers\": 1219,\n  \"vers</w>\": 2094,\n  \"versa</w>\": 35765,\n  \"versace</w>\": 25422,\n  \"versail\": 29857,\n  \"versailles</w>\": 32129,\n  \"versary</w>\": 2940,\n  \"versatile</w>\": 18110,\n  \"versatility</w>\": 41340,\n  \"verse\": 39466,\n  \"verse</w>\": 3131,\n  \"verses</w>\": 30769,\n  \"versi\": 8934,\n  \"version</w>\": 3273,\n  \"versions</w>\": 16190,\n  \"versity</w>\": 1906,\n  \"verst\": 42484,\n  \"verstappen</w>\": 45064,\n  \"versus</w>\": 14548,\n  \"versy</w>\": 18522,\n  \"vert</w>\": 11742,\n  \"verte\": 35158,\n  \"verted</w>\": 48173,\n  \"verti\": 30459,\n  \"vertical</w>\": 14293,\n  \"vertigo</w>\": 42477,\n  \"verton</w>\": 40632,\n  \"verts</w>\": 37265,\n  \"very\": 11698,\n  \"very</w>\": 1070,\n  \"veryday</w>\": 37944,\n  \"verything</w>\": 45174,\n  \"ves\": 9616,\n  \"ves</w>\": 1003,\n  \"vesmatter</w>\": 47636,\n  \"vespa</w>\": 46029,\n  \"vessel</w>\": 16387,\n  \"vessels</w>\": 22822,\n  \"vest\": 31657,\n  \"vest</w>\": 12473,\n  \"vesti\": 40349,\n  \"vests</w>\": 41906,\n  \"vet\": 12294,\n  \"vet</w>\": 5951,\n  \"veter\": 4330,\n  \"veteran\": 20797,\n  \"veteran</w>\": 8814,\n  \"veterans</w>\": 7092,\n  \"veteransday</w>\": 26409,\n  \"veterin\": 43959,\n  \"veterinary</w>\": 25458,\n  \"veto</w>\": 36570,\n  \"vets</w>\": 13113,\n  \"vette</w>\": 17045,\n  \"vettel</w>\": 28700,\n  \"vevo</w>\": 35141,\n  \"vex\": 36187,\n  \"vex</w>\": 43978,\n  \"vey\": 34792,\n  \"vey</w>\": 3884,\n  \"vez\": 35987,\n  \"vez</w>\": 17226,\n  \"vf</w>\": 25966,\n  \"vfl</w>\": 33726,\n  \"vfx</w>\": 30149,\n  \"vg\": 40591,\n  \"vg</w>\": 22346,\n  \"vh\": 46953,\n  \"vh</w>\": 23847,\n  \"vhs</w>\": 21932,\n  \"vi\": 603,\n  \"vi</w>\": 4259,\n  \"via</w>\": 1048,\n  \"viable</w>\": 25752,\n  \"viadu\": 37012,\n  \"viaduct</w>\": 39113,\n  \"vial</w>\": 39951,\n  \"vian\": 40487,\n  \"vian</w>\": 16124,\n  \"vibe\": 37974,\n  \"vibe</w>\": 12813,\n  \"vibes</w>\": 7764,\n  \"vibr\": 9527,\n  \"vibrant</w>\": 14270,\n  \"vibration</w>\": 37456,\n  \"vibrations</w>\": 43660,\n  \"vic\": 1555,\n  \"vic</w>\": 4412,\n  \"vica</w>\": 46168,\n  \"vicar</w>\": 43899,\n  \"vice\": 43572,\n  \"vice</w>\": 6931,\n  \"vicente</w>\": 39411,\n  \"vices</w>\": 8332,\n  \"vich</w>\": 24143,\n  \"vici\": 46670,\n  \"vicious</w>\": 25177,\n  \"vick\": 15116,\n  \"vick</w>\": 29704,\n  \"vickers</w>\": 48452,\n  \"vicki</w>\": 34927,\n  \"vicky\": 37176,\n  \"vicky</w>\": 25788,\n  \"victi\": 6861,\n  \"victim</w>\": 9133,\n  \"victims</w>\": 7131,\n  \"victor\": 2423,\n  \"victor</w>\": 10690,\n  \"victori\": 17555,\n  \"victoria\": 39286,\n  \"victoria</w>\": 6127,\n  \"victorian</w>\": 12350,\n  \"victorias\": 47791,\n  \"victories</w>\": 24577,\n  \"victorious</w>\": 24033,\n  \"victory\": 36668,\n  \"victory</w>\": 4127,\n  \"vid\": 17233,\n  \"vid</w>\": 9284,\n  \"vida</w>\": 19015,\n  \"vidal</w>\": 36678,\n  \"vide\": 1334,\n  \"vide</w>\": 45244,\n  \"video\": 9478,\n  \"video</w>\": 1455,\n  \"videogame</w>\": 35097,\n  \"videogames</w>\": 21149,\n  \"videos</w>\": 6081,\n  \"vids</w>\": 23035,\n  \"vidy\": 29639,\n  \"vidya</w>\": 45264,\n  \"vie\": 922,\n  \"vie</w>\": 8538,\n  \"vien\": 36493,\n  \"vienna</w>\": 12670,\n  \"vier\": 15352,\n  \"vier</w>\": 11987,\n  \"viera</w>\": 21114,\n  \"viernes</w>\": 33826,\n  \"vies</w>\": 22458,\n  \"viest</w>\": 31979,\n  \"viet\": 17558,\n  \"viet</w>\": 13128,\n  \"vietnam\": 19558,\n  \"vietnam</w>\": 8623,\n  \"vietnamese</w>\": 22382,\n  \"view\": 12004,\n  \"view</w>\": 1093,\n  \"viewed</w>\": 7226,\n  \"viewer</w>\": 15061,\n  \"viewers</w>\": 14275,\n  \"viewing</w>\": 7124,\n  \"viewpoint</w>\": 41604,\n  \"views</w>\": 2758,\n  \"vig\": 8549,\n  \"vig</w>\": 45083,\n  \"vigil\": 21538,\n  \"vigil</w>\": 19896,\n  \"vigilant</w>\": 43026,\n  \"vigne\": 40447,\n  \"vigne</w>\": 34581,\n  \"vigo</w>\": 44097,\n  \"vigor\": 26781,\n  \"vii</w>\": 17759,\n  \"viii</w>\": 20414,\n  \"vijay\": 12014,\n  \"vijay</w>\": 10823,\n  \"vijaysethu\": 47966,\n  \"vik\": 10764,\n  \"vik</w>\": 17181,\n  \"vika</w>\": 39562,\n  \"vikas</w>\": 37116,\n  \"viking\": 26663,\n  \"viking</w>\": 15897,\n  \"vikings</w>\": 11713,\n  \"vikram\": 41136,\n  \"vikram</w>\": 24314,\n  \"viktor</w>\": 36101,\n  \"vil\": 1338,\n  \"vil</w>\": 3000,\n  \"vila</w>\": 37505,\n  \"vile</w>\": 27247,\n  \"vill\": 10481,\n  \"vill</w>\": 45698,\n  \"villa\": 3203,\n  \"villa</w>\": 7754,\n  \"village\": 34584,\n  \"village</w>\": 4331,\n  \"villagers</w>\": 34283,\n  \"villages</w>\": 17621,\n  \"villain</w>\": 15425,\n  \"villains</w>\": 25271,\n  \"villanova</w>\": 44025,\n  \"villar\": 35164,\n  \"villas</w>\": 28907,\n  \"ville\": 11110,\n  \"ville</w>\": 1930,\n  \"villen\": 46177,\n  \"villi\": 36907,\n  \"vimeo</w>\": 48720,\n  \"vin\": 1379,\n  \"vin</w>\": 2558,\n  \"vina</w>\": 35682,\n  \"vinai\": 37396,\n  \"vinaigrette</w>\": 39876,\n  \"vinay\": 43952,\n  \"vince\": 32429,\n  \"vince</w>\": 6236,\n  \"vincen\": 33402,\n  \"vincent\": 29069,\n  \"vincent</w>\": 10357,\n  \"vinci</w>\": 30199,\n  \"vind</w>\": 20275,\n  \"vindic\": 39582,\n  \"vine\": 8471,\n  \"vine</w>\": 7721,\n  \"vinegar</w>\": 23834,\n  \"vines</w>\": 21268,\n  \"vineyard</w>\": 16527,\n  \"vineyards</w>\": 23082,\n  \"ving\": 5375,\n  \"ving</w>\": 903,\n  \"vingne</w>\": 42579,\n  \"vings</w>\": 22510,\n  \"vini</w>\": 48119,\n  \"vinnie</w>\": 40885,\n  \"vinny</w>\": 36794,\n  \"vino</w>\": 14509,\n  \"vinod</w>\": 43348,\n  \"vins</w>\": 34820,\n  \"vinson</w>\": 45945,\n  \"vintag\": 10936,\n  \"vintage\": 13654,\n  \"vintage</w>\": 3266,\n  \"viny\": 40990,\n  \"vinyl\": 22835,\n  \"vinyl</w>\": 5754,\n  \"vio\": 11913,\n  \"vio</w>\": 20324,\n  \"viol\": 3164,\n  \"viola</w>\": 27438,\n  \"violate</w>\": 44875,\n  \"violated</w>\": 38192,\n  \"violating</w>\": 37554,\n  \"violation</w>\": 22919,\n  \"violations</w>\": 21969,\n  \"violence</w>\": 5450,\n  \"violent</w>\": 11565,\n  \"violently</w>\": 47758,\n  \"violet</w>\": 16118,\n  \"violets</w>\": 42861,\n  \"violin</w>\": 17058,\n  \"violinist</w>\": 36299,\n  \"vion</w>\": 35496,\n  \"vious</w>\": 6418,\n  \"viously</w>\": 7149,\n  \"vip\": 45714,\n  \"vip</w>\": 7111,\n  \"viper</w>\": 27401,\n  \"vips</w>\": 41149,\n  \"vir\": 1790,\n  \"vir</w>\": 25319,\n  \"vira</w>\": 35910,\n  \"viral</w>\": 11653,\n  \"virat</w>\": 32473,\n  \"virgil</w>\": 39076,\n  \"virgin\": 5651,\n  \"virgin</w>\": 12103,\n  \"virgini\": 43426,\n  \"virginia</w>\": 6728,\n  \"virgo</w>\": 39978,\n  \"viro\": 32301,\n  \"viron\": 38309,\n  \"virtu\": 7977,\n  \"virtual\": 18059,\n  \"virtual</w>\": 7790,\n  \"virtually</w>\": 22475,\n  \"virtualreality</w>\": 32608,\n  \"virtue</w>\": 26860,\n  \"virtues</w>\": 42167,\n  \"virtuoso</w>\": 47027,\n  \"virus</w>\": 11808,\n  \"viruses</w>\": 34830,\n  \"vis\": 1301,\n  \"vis</w>\": 5337,\n  \"visa</w>\": 12802,\n  \"visas</w>\": 41228,\n  \"vise</w>\": 24977,\n  \"vised</w>\": 14810,\n  \"vish\": 12024,\n  \"vish</w>\": 29124,\n  \"vishal</w>\": 33648,\n  \"vishnu</w>\": 37816,\n  \"visi\": 1409,\n  \"visibility</w>\": 15921,\n  \"visible\": 36658,\n  \"visible</w>\": 8626,\n  \"vising</w>\": 37439,\n  \"vision\": 11147,\n  \"vision</w>\": 2515,\n  \"visional</w>\": 24627,\n  \"visionary</w>\": 22959,\n  \"visions</w>\": 13804,\n  \"visit\": 3388,\n  \"visit</w>\": 1600,\n  \"visitation</w>\": 44370,\n  \"visited</w>\": 5580,\n  \"visiting</w>\": 4680,\n  \"visitor</w>\": 13881,\n  \"visitors</w>\": 9160,\n  \"visits</w>\": 8489,\n  \"visitscotland</w>\": 28760,\n  \"visitspain</w>\": 48860,\n  \"vism</w>\": 15514,\n  \"viso</w>\": 46732,\n  \"visor</w>\": 24217,\n  \"vist</w>\": 21436,\n  \"vista</w>\": 13865,\n  \"visu\": 7739,\n  \"visual\": 17004,\n  \"visual</w>\": 7195,\n  \"visualization</w>\": 28500,\n  \"visualize</w>\": 45057,\n  \"visually</w>\": 25743,\n  \"visuals</w>\": 21315,\n  \"viswas\": 36513,\n  \"viswasam</w>\": 47664,\n  \"vit\": 4056,\n  \"vit</w>\": 35580,\n  \"vita</w>\": 15700,\n  \"vital\": 32525,\n  \"vital</w>\": 10585,\n  \"vitality</w>\": 36385,\n  \"vitam\": 9856,\n  \"vitamin</w>\": 13675,\n  \"vitamins</w>\": 22582,\n  \"vito</w>\": 36725,\n  \"vity</w>\": 4893,\n  \"vitz</w>\": 26188,\n  \"vius</w>\": 41571,\n  \"viv\": 21827,\n  \"viv</w>\": 35363,\n  \"viva</w>\": 17399,\n  \"vival\": 35920,\n  \"vive\": 18980,\n  \"vive</w>\": 24004,\n  \"vivek</w>\": 36243,\n  \"vivi\": 11625,\n  \"vivian</w>\": 30129,\n  \"vivid</w>\": 22984,\n  \"vivo\": 28091,\n  \"vivo</w>\": 25888,\n  \"vix\": 28976,\n  \"vix</w>\": 34811,\n  \"vixen</w>\": 38757,\n  \"vixx</w>\": 32106,\n  \"viz\": 28251,\n  \"viz</w>\": 31786,\n  \"vj\": 45439,\n  \"vj</w>\": 30827,\n  \"vk</w>\": 41893,\n  \"vl\": 37580,\n  \"vl</w>\": 36442,\n  \"vla\": 23686,\n  \"vlad</w>\": 41089,\n  \"vladi\": 19320,\n  \"vladimir</w>\": 21702,\n  \"vlive</w>\": 46797,\n  \"vlog</w>\": 18894,\n  \"vm\": 16204,\n  \"vm</w>\": 20269,\n  \"vma</w>\": 35666,\n  \"vmas</w>\": 30236,\n  \"vmware</w>\": 29615,\n  \"vn\": 47098,\n  \"vn</w>\": 25076,\n  \"vo\": 947,\n  \"vo</w>\": 3951,\n  \"voc\": 4105,\n  \"voc</w>\": 20855,\n  \"vocab\": 21346,\n  \"vocabulary</w>\": 23804,\n  \"vocal\": 34037,\n  \"vocal</w>\": 13147,\n  \"vocali\": 19134,\n  \"vocalist</w>\": 22102,\n  \"vocals</w>\": 17666,\n  \"vocation</w>\": 20521,\n  \"vocational</w>\": 33751,\n  \"vod\": 11820,\n  \"vod</w>\": 35854,\n  \"vodaf\": 28436,\n  \"vodafone</w>\": 38695,\n  \"vodka</w>\": 13646,\n  \"vogel</w>\": 44960,\n  \"vogue\": 24418,\n  \"vogue</w>\": 13178,\n  \"voic\": 29185,\n  \"voice\": 13179,\n  \"voice</w>\": 3386,\n  \"voiced</w>\": 34352,\n  \"voiceof\": 44966,\n  \"voiceover</w>\": 41979,\n  \"voices</w>\": 9144,\n  \"void</w>\": 21561,\n  \"voip</w>\": 42762,\n  \"voir</w>\": 16036,\n  \"vol\": 1343,\n  \"vol</w>\": 7945,\n  \"volatile</w>\": 41022,\n  \"volatility</w>\": 32355,\n  \"volcan\": 9916,\n  \"volcanic</w>\": 24072,\n  \"volcano</w>\": 14581,\n  \"volcanoes</w>\": 38055,\n  \"voli</w>\": 40138,\n  \"volk\": 13432,\n  \"volkswag\": 14407,\n  \"volkswagen</w>\": 15342,\n  \"volley\": 7130,\n  \"volley</w>\": 34656,\n  \"volleyball</w>\": 7458,\n  \"volo</w>\": 44791,\n  \"vols</w>\": 20404,\n  \"volt</w>\": 26430,\n  \"volta\": 29879,\n  \"volta</w>\": 33480,\n  \"voltage</w>\": 23118,\n  \"voltron</w>\": 39314,\n  \"volu\": 3563,\n  \"volume</w>\": 8284,\n  \"volumes</w>\": 22651,\n  \"volun\": 3356,\n  \"voluntar\": 48823,\n  \"voluntary</w>\": 23815,\n  \"volunte\": 3556,\n  \"volunteer\": 32331,\n  \"volunteer</w>\": 7114,\n  \"volunteered</w>\": 34000,\n  \"volunteering</w>\": 14902,\n  \"volunteers</w>\": 5939,\n  \"volution</w>\": 24043,\n  \"volved</w>\": 42888,\n  \"volvo\": 39991,\n  \"volvo</w>\": 16906,\n  \"vom\": 24198,\n  \"vomit</w>\": 46485,\n  \"von\": 11269,\n  \"von</w>\": 8497,\n  \"voo\": 19497,\n  \"voodoo</w>\": 26869,\n  \"voor\": 34291,\n  \"voor</w>\": 34464,\n  \"vor\": 8338,\n  \"vor</w>\": 5308,\n  \"vore</w>\": 18215,\n  \"vortex</w>\": 30071,\n  \"vos</w>\": 16863,\n  \"vot</w>\": 48558,\n  \"vote\": 6830,\n  \"vote</w>\": 2187,\n  \"voted</w>\": 6454,\n  \"votel\": 41379,\n  \"voter\": 44474,\n  \"voter</w>\": 14065,\n  \"voters</w>\": 8925,\n  \"votes</w>\": 6693,\n  \"voting</w>\": 5756,\n  \"vou\": 11045,\n  \"voucher</w>\": 18190,\n  \"vouchers</w>\": 23384,\n  \"vous</w>\": 10636,\n  \"vow</w>\": 34787,\n  \"vows</w>\": 21677,\n  \"vox\": 29215,\n  \"vox</w>\": 22692,\n  \"voy\": 10622,\n  \"voy</w>\": 15021,\n  \"voyage</w>\": 16299,\n  \"voyager</w>\": 29669,\n  \"vp\": 32758,\n  \"vp</w>\": 3896,\n  \"vpn</w>\": 38212,\n  \"vr\": 16840,\n  \"vr</w>\": 5921,\n  \"vre\": 44500,\n  \"vre</w>\": 17501,\n  \"vs\": 11385,\n  \"vs</w>\": 1547,\n  \"vsco\": 26752,\n  \"vsco</w>\": 32822,\n  \"vscocam</w>\": 34694,\n  \"vsky</w>\": 37791,\n  \"vss</w>\": 31919,\n  \"vt\": 31732,\n  \"vt</w>\": 10291,\n  \"vu\": 8664,\n  \"vu</w>\": 13230,\n  \"vue\": 43915,\n  \"vue</w>\": 19313,\n  \"vuel\": 31312,\n  \"vuelta</w>\": 43856,\n  \"vuitton</w>\": 26705,\n  \"vul\": 6856,\n  \"vulcan</w>\": 34767,\n  \"vulner\": 11213,\n  \"vulnerability</w>\": 28797,\n  \"vulnerable</w>\": 14332,\n  \"vulture</w>\": 34593,\n  \"vultures</w>\": 47197,\n  \"vv\": 19264,\n  \"vv</w>\": 35686,\n  \"vw\": 28650,\n  \"vw</w>\": 13250,\n  \"vx</w>\": 47644,\n  \"vy\": 11566,\n  \"vy</w>\": 5157,\n  \"w\": 86,\n  \"w</w>\": 342,\n  \"wa\": 869,\n  \"wa</w>\": 2663,\n  \"waa</w>\": 35874,\n  \"wab\": 19893,\n  \"wab</w>\": 36852,\n  \"wac\": 27445,\n  \"wac</w>\": 37947,\n  \"wack\": 22880,\n  \"wack</w>\": 38270,\n  \"wacky</w>\": 34318,\n  \"waco</w>\": 36035,\n  \"wad\": 11133,\n  \"wad</w>\": 30451,\n  \"wada</w>\": 40006,\n  \"wade\": 40237,\n  \"wade</w>\": 14180,\n  \"wadi</w>\": 37253,\n  \"waf\": 17638,\n  \"wafc</w>\": 49086,\n  \"waff\": 13940,\n  \"waffle</w>\": 20375,\n  \"waffles</w>\": 24205,\n  \"wag\": 5764,\n  \"wag</w>\": 19177,\n  \"wage</w>\": 10716,\n  \"wager</w>\": 43430,\n  \"wages</w>\": 19114,\n  \"wagner</w>\": 18081,\n  \"wagon</w>\": 13260,\n  \"wagons</w>\": 47944,\n  \"wags</w>\": 48580,\n  \"wah\": 24812,\n  \"wah</w>\": 18014,\n  \"wahl\": 27500,\n  \"wahlberg</w>\": 35151,\n  \"wahoo</w>\": 47995,\n  \"wai\": 11469,\n  \"wai</w>\": 21569,\n  \"waifu</w>\": 46551,\n  \"waikiki</w>\": 44907,\n  \"wain\": 28358,\n  \"wain</w>\": 20120,\n  \"wainwright</w>\": 45878,\n  \"waist\": 36946,\n  \"waist</w>\": 18459,\n  \"wait\": 10021,\n  \"wait</w>\": 1885,\n  \"waite</w>\": 24272,\n  \"waited</w>\": 18492,\n  \"waiter</w>\": 32946,\n  \"waitin</w>\": 44482,\n  \"waiting</w>\": 2680,\n  \"waitress</w>\": 39760,\n  \"waitrose</w>\": 37164,\n  \"waits</w>\": 21361,\n  \"waiver</w>\": 42866,\n  \"waj</w>\": 49367,\n  \"wak\": 11172,\n  \"wak</w>\": 36015,\n  \"waka</w>\": 42696,\n  \"wake\": 10501,\n  \"wake</w>\": 5731,\n  \"wakefield</w>\": 26358,\n  \"wakes</w>\": 29108,\n  \"wakeup\": 26328,\n  \"wakeup</w>\": 35380,\n  \"wakeupamerica</w>\": 37474,\n  \"waking</w>\": 13025,\n  \"wal\": 1056,\n  \"wal</w>\": 6903,\n  \"wala</w>\": 16468,\n  \"walang</w>\": 49180,\n  \"walcott</w>\": 45744,\n  \"wald\": 46930,\n  \"wald</w>\": 15724,\n  \"walden</w>\": 39311,\n  \"waldo</w>\": 32440,\n  \"waldorf</w>\": 38227,\n  \"wale\": 41247,\n  \"wale</w>\": 20336,\n  \"wales\": 25383,\n  \"wales</w>\": 5110,\n  \"walgreens</w>\": 38490,\n  \"wali\": 37576,\n  \"wali</w>\": 14768,\n  \"walia</w>\": 44455,\n  \"walk\": 8588,\n  \"walk</w>\": 2374,\n  \"walkaway</w>\": 48255,\n  \"walked</w>\": 8667,\n  \"walker\": 24735,\n  \"walker</w>\": 6150,\n  \"walkers</w>\": 23366,\n  \"walkin</w>\": 45792,\n  \"walking\": 12644,\n  \"walking</w>\": 3941,\n  \"walkingdead</w>\": 14948,\n  \"walkout</w>\": 47470,\n  \"walks</w>\": 8192,\n  \"walkway</w>\": 36614,\n  \"wall\": 4316,\n  \"wall</w>\": 2569,\n  \"walla\": 26007,\n  \"walla</w>\": 39982,\n  \"wallabies</w>\": 48926,\n  \"wallace</w>\": 12535,\n  \"wallart</w>\": 36223,\n  \"walled</w>\": 36567,\n  \"waller</w>\": 45340,\n  \"wallet</w>\": 12154,\n  \"wallets</w>\": 38550,\n  \"walleye</w>\": 49099,\n  \"wallis</w>\": 42206,\n  \"wallpaper</w>\": 10560,\n  \"wallpapers</w>\": 29841,\n  \"walls</w>\": 8258,\n  \"wallstreet</w>\": 45341,\n  \"wally</w>\": 26024,\n  \"walmart</w>\": 11972,\n  \"walnut</w>\": 16310,\n  \"walnuts</w>\": 38294,\n  \"walsall</w>\": 42935,\n  \"walsh</w>\": 12856,\n  \"walt\": 23535,\n  \"walt</w>\": 14312,\n  \"waltdisneyworld</w>\": 36505,\n  \"walter\": 31156,\n  \"walter</w>\": 10645,\n  \"walters</w>\": 25532,\n  \"waltham\": 42742,\n  \"waltham</w>\": 45581,\n  \"walton</w>\": 19485,\n  \"waltz</w>\": 35982,\n  \"wam\": 20503,\n  \"wamy</w>\": 46970,\n  \"wan\": 2060,\n  \"wan</w>\": 4557,\n  \"wana</w>\": 30830,\n  \"wand\": 14636,\n  \"wand</w>\": 28559,\n  \"wanda</w>\": 25070,\n  \"wander\": 12985,\n  \"wander</w>\": 24473,\n  \"wandered</w>\": 46593,\n  \"wanderers</w>\": 27540,\n  \"wandering</w>\": 22597,\n  \"wanderlust</w>\": 16129,\n  \"wane</w>\": 27459,\n  \"wang\": 19731,\n  \"wang</w>\": 11900,\n  \"wani</w>\": 21674,\n  \"wankers</w>\": 42189,\n  \"wann\": 23622,\n  \"wanna\": 35940,\n  \"wanna</w>\": 3836,\n  \"wannabe</w>\": 40730,\n  \"wannaone</w>\": 44832,\n  \"want\": 18356,\n  \"want</w>\": 1280,\n  \"wanted</w>\": 3146,\n  \"wanting</w>\": 12801,\n  \"wants</w>\": 3107,\n  \"wap\": 27393,\n  \"wap</w>\": 30368,\n  \"waq\": 47512,\n  \"war\": 984,\n  \"war</w>\": 2238,\n  \"wara</w>\": 21631,\n  \"warbler</w>\": 33891,\n  \"warcraft</w>\": 13660,\n  \"ward\": 7728,\n  \"ward</w>\": 1460,\n  \"warden</w>\": 27798,\n  \"wardly</w>\": 30780,\n  \"wardro\": 14247,\n  \"wardrobe</w>\": 15020,\n  \"wards</w>\": 2593,\n  \"ware\": 7416,\n  \"ware</w>\": 4476,\n  \"wareagle</w>\": 35716,\n  \"warehouse</w>\": 13054,\n  \"wareness\": 41601,\n  \"wareness</w>\": 35870,\n  \"wares</w>\": 30692,\n  \"warfare</w>\": 15739,\n  \"warhammer</w>\": 26832,\n  \"warhol</w>\": 27554,\n  \"wari</w>\": 20977,\n  \"wark\": 46346,\n  \"wark</w>\": 15164,\n  \"warlock</w>\": 42455,\n  \"warm\": 14725,\n  \"warm</w>\": 3616,\n  \"warmed</w>\": 36695,\n  \"warmer</w>\": 14328,\n  \"warmest</w>\": 30910,\n  \"warming</w>\": 8606,\n  \"warmly</w>\": 45322,\n  \"warmongers</w>\": 33205,\n  \"warms</w>\": 32917,\n  \"warmth</w>\": 19636,\n  \"warmup</w>\": 29904,\n  \"warmups</w>\": 44094,\n  \"warn</w>\": 19360,\n  \"warned</w>\": 16409,\n  \"warner\": 28564,\n  \"warner</w>\": 13402,\n  \"warning</w>\": 4994,\n  \"warnings</w>\": 18098,\n  \"warns</w>\": 14086,\n  \"waron\": 38947,\n  \"warp</w>\": 32411,\n  \"warped</w>\": 32125,\n  \"warran\": 17392,\n  \"warrant</w>\": 22554,\n  \"warrants</w>\": 45677,\n  \"warranty</w>\": 23999,\n  \"warren\": 23143,\n  \"warren</w>\": 9234,\n  \"warri\": 4109,\n  \"warrington</w>\": 31203,\n  \"warrior\": 18998,\n  \"warrior</w>\": 8148,\n  \"warriors</w>\": 6421,\n  \"wars</w>\": 3931,\n  \"warsaw</w>\": 21072,\n  \"warship</w>\": 47846,\n  \"wart\": 43535,\n  \"wart</w>\": 7346,\n  \"wartime</w>\": 42998,\n  \"warts</w>\": 21781,\n  \"warwick\": 23081,\n  \"warwick</w>\": 22215,\n  \"warwickshire</w>\": 36766,\n  \"wary</w>\": 36213,\n  \"was\": 3398,\n  \"was</w>\": 739,\n  \"wasabi</w>\": 47334,\n  \"wash\": 3363,\n  \"wash</w>\": 7810,\n  \"washed</w>\": 14092,\n  \"washer</w>\": 24085,\n  \"washes</w>\": 38950,\n  \"washing</w>\": 13029,\n  \"washington\": 16774,\n  \"washington</w>\": 4365,\n  \"washingtondc</w>\": 40225,\n  \"washingtonpost</w>\": 28426,\n  \"wasn</w>\": 5044,\n  \"wasnt</w>\": 29607,\n  \"wasp</w>\": 24889,\n  \"wasps</w>\": 35300,\n  \"wassup</w>\": 45708,\n  \"wast\": 28886,\n  \"waste\": 18157,\n  \"waste</w>\": 6065,\n  \"wasted</w>\": 18278,\n  \"wasteland</w>\": 44035,\n  \"wastewater</w>\": 34463,\n  \"wasting</w>\": 25577,\n  \"wat\": 800,\n  \"wat</w>\": 10621,\n  \"wata</w>\": 42509,\n  \"watch\": 7046,\n  \"watch</w>\": 1239,\n  \"watchdog</w>\": 35303,\n  \"watched</w>\": 5775,\n  \"watcher</w>\": 35971,\n  \"watchers</w>\": 28443,\n  \"watches</w>\": 9521,\n  \"watchin</w>\": 32432,\n  \"watching</w>\": 2113,\n  \"water\": 2505,\n  \"water</w>\": 1573,\n  \"watercolor</w>\": 14211,\n  \"watercolour</w>\": 18377,\n  \"waterfall</w>\": 16403,\n  \"waterfalls</w>\": 26692,\n  \"waterford</w>\": 24448,\n  \"waterfront</w>\": 16605,\n  \"waterhouse</w>\": 45072,\n  \"watering</w>\": 19871,\n  \"waterloo</w>\": 17465,\n  \"watermelon</w>\": 19889,\n  \"waterproof</w>\": 17613,\n  \"waters</w>\": 7753,\n  \"watershed</w>\": 33204,\n  \"waterstones</w>\": 45014,\n  \"waterways</w>\": 37395,\n  \"watford</w>\": 23162,\n  \"watfordfc</w>\": 37328,\n  \"wati</w>\": 27966,\n  \"watkins</w>\": 22539,\n  \"watson\": 35490,\n  \"watson</w>\": 9294,\n  \"watt\": 22899,\n  \"watt</w>\": 15805,\n  \"wattpad</w>\": 32351,\n  \"watts</w>\": 14750,\n  \"wau\": 9479,\n  \"wav\": 6054,\n  \"wave\": 17530,\n  \"wave</w>\": 4535,\n  \"waved</w>\": 44657,\n  \"waver\": 25997,\n  \"waves</w>\": 7882,\n  \"waving</w>\": 26545,\n  \"wavy</w>\": 31941,\n  \"waw\": 22039,\n  \"wawrinka</w>\": 48414,\n  \"wawx</w>\": 47387,\n  \"wax\": 18789,\n  \"wax</w>\": 11910,\n  \"waxing</w>\": 38781,\n  \"way\": 3079,\n  \"way</w>\": 923,\n  \"wayback\": 47822,\n  \"wayne\": 23632,\n  \"wayne</w>\": 7003,\n  \"ways</w>\": 1248,\n  \"waz\": 20889,\n  \"waz</w>\": 48835,\n  \"wb\": 10726,\n  \"wb</w>\": 12377,\n  \"wba</w>\": 22675,\n  \"wbb</w>\": 14482,\n  \"wbc</w>\": 26745,\n  \"wbo</w>\": 49053,\n  \"wbz</w>\": 35471,\n  \"wc\": 4842,\n  \"wc</w>\": 5755,\n  \"wcc\": 47166,\n  \"wcc</w>\": 34926,\n  \"wcpo</w>\": 46624,\n  \"wcs</w>\": 39916,\n  \"wcvb</w>\": 32709,\n  \"wcw</w>\": 9041,\n  \"wd\": 15998,\n  \"wd</w>\": 7494,\n  \"wdw</w>\": 40334,\n  \"we\": 598,\n  \"we</w>\": 649,\n  \"wea\": 37146,\n  \"wea</w>\": 47301,\n  \"weak\": 12128,\n  \"weak</w>\": 10128,\n  \"weaker</w>\": 39735,\n  \"weakness</w>\": 21448,\n  \"weaknesses</w>\": 43487,\n  \"weal\": 14759,\n  \"wealth\": 33150,\n  \"wealth</w>\": 7904,\n  \"wealthy</w>\": 22617,\n  \"weap\": 6156,\n  \"weapon\": 42612,\n  \"weapon</w>\": 10537,\n  \"weapons</w>\": 10007,\n  \"wear\": 12206,\n  \"wear</w>\": 2839,\n  \"wearab\": 22983,\n  \"wearable\": 44943,\n  \"wearable</w>\": 24973,\n  \"wearables</w>\": 30319,\n  \"weare\": 4264,\n  \"weare</w>\": 27867,\n  \"weareall\": 45980,\n  \"wearec\": 43620,\n  \"wearen\": 45635,\n  \"weareone\": 16149,\n  \"weareoneexo</w>\": 16448,\n  \"wearethe\": 40242,\n  \"wearing</w>\": 3309,\n  \"wears</w>\": 11869,\n  \"weary</w>\": 38766,\n  \"weasel</w>\": 44308,\n  \"weather\": 8808,\n  \"weather</w>\": 2237,\n  \"weathercee</w>\": 44980,\n  \"weatherchannel</w>\": 42138,\n  \"weav\": 22260,\n  \"weave</w>\": 22450,\n  \"weaver</w>\": 20297,\n  \"weaving</w>\": 27131,\n  \"web\": 2055,\n  \"web</w>\": 4601,\n  \"webb</w>\": 15708,\n  \"webber</w>\": 34248,\n  \"webcam\": 24211,\n  \"webcam</w>\": 22589,\n  \"webcamtoy</w>\": 27719,\n  \"webcast</w>\": 28256,\n  \"webcomic</w>\": 34286,\n  \"webcomics</w>\": 39811,\n  \"webdesign</w>\": 20470,\n  \"webdev</w>\": 37000,\n  \"webdevelopment</w>\": 47553,\n  \"weber</w>\": 20179,\n  \"webin\": 8460,\n  \"webinar</w>\": 8921,\n  \"webinars</w>\": 47755,\n  \"webpage</w>\": 46964,\n  \"webs</w>\": 32829,\n  \"webseries</w>\": 44819,\n  \"website</w>\": 3364,\n  \"websites</w>\": 19278,\n  \"webster</w>\": 19471,\n  \"websummit</w>\": 48069,\n  \"wec</w>\": 33152,\n  \"wechat</w>\": 46124,\n  \"wed\": 1687,\n  \"wed</w>\": 3478,\n  \"wedd\": 7576,\n  \"wedding\": 11204,\n  \"wedding</w>\": 3101,\n  \"weddings</w>\": 15964,\n  \"wedge</w>\": 21446,\n  \"wedges</w>\": 33179,\n  \"wedne\": 2380,\n  \"wednesday\": 9311,\n  \"wednesday</w>\": 2689,\n  \"wednesdaymotivation</w>\": 37860,\n  \"wednesdays</w>\": 24943,\n  \"wednesdaywisdom</w>\": 11445,\n  \"wedo</w>\": 43432,\n  \"weds</w>\": 19107,\n  \"wee\": 716,\n  \"wee</w>\": 8288,\n  \"weed\": 36935,\n  \"weed</w>\": 8015,\n  \"weeds</w>\": 26326,\n  \"week\": 1286,\n  \"week</w>\": 994,\n  \"weekday</w>\": 29244,\n  \"weekdays</w>\": 44330,\n  \"weekend\": 17205,\n  \"weekend</w>\": 1456,\n  \"weekender</w>\": 36547,\n  \"weekends</w>\": 14564,\n  \"weekly\": 34652,\n  \"weekly</w>\": 5885,\n  \"weeknd</w>\": 29925,\n  \"weeks</w>\": 2898,\n  \"weeksary</w>\": 24628,\n  \"ween\": 17517,\n  \"ween</w>\": 1599,\n  \"weep</w>\": 39270,\n  \"weeping</w>\": 36629,\n  \"weer</w>\": 32491,\n  \"weet</w>\": 17742,\n  \"weets</w>\": 13454,\n  \"wef</w>\": 23313,\n  \"weg\": 47867,\n  \"weg</w>\": 47561,\n  \"wego\": 44784,\n  \"wego</w>\": 28220,\n  \"weh\": 48458,\n  \"weh</w>\": 40313,\n  \"weho</w>\": 47798,\n  \"wei\": 6958,\n  \"wei</w>\": 20952,\n  \"weibo</w>\": 20613,\n  \"weigh\": 10565,\n  \"weigh</w>\": 17346,\n  \"weighed</w>\": 33210,\n  \"weighing</w>\": 24455,\n  \"weighs</w>\": 20481,\n  \"weight\": 12723,\n  \"weight</w>\": 3868,\n  \"weighted</w>\": 43179,\n  \"weightlifting</w>\": 36164,\n  \"weightloss</w>\": 20359,\n  \"weights</w>\": 21374,\n  \"weil</w>\": 43720,\n  \"weiler</w>\": 42203,\n  \"wein\": 29134,\n  \"wein</w>\": 37684,\n  \"weiner</w>\": 38822,\n  \"weinstein</w>\": 34367,\n  \"weir\": 11299,\n  \"weir</w>\": 25517,\n  \"weird\": 27981,\n  \"weird</w>\": 5613,\n  \"weirdest</w>\": 29482,\n  \"weirdo</w>\": 32476,\n  \"weis\": 26251,\n  \"weiser</w>\": 34833,\n  \"weiss</w>\": 24794,\n  \"wel\": 1267,\n  \"wel</w>\": 8042,\n  \"welch</w>\": 25820,\n  \"welcom\": 11578,\n  \"welcome\": 18318,\n  \"welcome</w>\": 1881,\n  \"welcomed</w>\": 12590,\n  \"welcomes</w>\": 9304,\n  \"welcometo\": 47511,\n  \"welcoming</w>\": 8775,\n  \"weld</w>\": 39776,\n  \"welding</w>\": 24956,\n  \"welfare</w>\": 12129,\n  \"well\": 3277,\n  \"well</w>\": 1123,\n  \"wellbeing</w>\": 14273,\n  \"weller</w>\": 40921,\n  \"welling</w>\": 49165,\n  \"wellington</w>\": 15389,\n  \"wellness\": 40574,\n  \"wellness</w>\": 9904,\n  \"wells\": 42705,\n  \"wells</w>\": 9804,\n  \"welove\": 13573,\n  \"welp</w>\": 28391,\n  \"wels</w>\": 20852,\n  \"welsh\": 19173,\n  \"welsh</w>\": 10977,\n  \"welt</w>\": 38595,\n  \"welter\": 37115,\n  \"welterweight</w>\": 39617,\n  \"wemb\": 15213,\n  \"wembley</w>\": 16579,\n  \"wen\": 6590,\n  \"wen</w>\": 11278,\n  \"wend\": 15166,\n  \"wendell</w>\": 42091,\n  \"wendy\": 31616,\n  \"wendy</w>\": 14074,\n  \"wenger</w>\": 21105,\n  \"went\": 18633,\n  \"went</w>\": 2437,\n  \"wentworth</w>\": 36423,\n  \"wentz</w>\": 39179,\n  \"wer\": 6316,\n  \"wer</w>\": 2980,\n  \"were\": 15461,\n  \"were</w>\": 1365,\n  \"wered</w>\": 6605,\n  \"weren</w>\": 13611,\n  \"werewolf</w>\": 32001,\n  \"werk</w>\": 30176,\n  \"werner</w>\": 29917,\n  \"wers</w>\": 7110,\n  \"wes\": 18620,\n  \"wes</w>\": 14738,\n  \"wesle\": 29606,\n  \"wesley</w>\": 17332,\n  \"wesleyan</w>\": 32509,\n  \"wesome</w>\": 33292,\n  \"wess</w>\": 44431,\n  \"west\": 2973,\n  \"west</w>\": 1593,\n  \"westbound</w>\": 29208,\n  \"westbrook</w>\": 26948,\n  \"westchester</w>\": 36675,\n  \"westcoast</w>\": 44610,\n  \"westend</w>\": 44815,\n  \"wester\": 9846,\n  \"western\": 17079,\n  \"western</w>\": 4463,\n  \"westfield</w>\": 32309,\n  \"westh\": 36798,\n  \"westin</w>\": 43232,\n  \"westlake</w>\": 41535,\n  \"westminster</w>\": 15158,\n  \"weston</w>\": 22771,\n  \"westside</w>\": 33762,\n  \"westwood</w>\": 26371,\n  \"westworld</w>\": 42287,\n  \"wet\": 12406,\n  \"wet</w>\": 6682,\n  \"weta</w>\": 40946,\n  \"wethenorth</w>\": 45281,\n  \"wethepeople</w>\": 48030,\n  \"wether\": 33794,\n  \"wether</w>\": 48405,\n  \"wetland</w>\": 37357,\n  \"wetlands</w>\": 26547,\n  \"wett</w>\": 41971,\n  \"wetter</w>\": 43957,\n  \"wewant\": 39280,\n  \"wewill\": 37241,\n  \"wex\": 17234,\n  \"wexford</w>\": 29876,\n  \"wexmondays</w>\": 49042,\n  \"wey\": 30376,\n  \"wey</w>\": 19781,\n  \"weymouth</w>\": 41433,\n  \"wf\": 14576,\n  \"wf</w>\": 22313,\n  \"wfa\": 44606,\n  \"wfc</w>\": 36431,\n  \"wfp</w>\": 35193,\n  \"wftv</w>\": 47075,\n  \"wg\": 21091,\n  \"wg</w>\": 25857,\n  \"wga</w>\": 32354,\n  \"wgn\": 48828,\n  \"wh\": 573,\n  \"wh</w>\": 13844,\n  \"wha\": 18994,\n  \"wha</w>\": 25884,\n  \"whal\": 38967,\n  \"whale\": 37083,\n  \"whale</w>\": 11650,\n  \"whales</w>\": 17722,\n  \"wham\": 42506,\n  \"whar\": 15517,\n  \"wharf</w>\": 22452,\n  \"wharton</w>\": 43320,\n  \"what\": 4268,\n  \"what</w>\": 768,\n  \"whatcha</w>\": 37160,\n  \"whate\": 6695,\n  \"whatever</w>\": 6743,\n  \"whati\": 23500,\n  \"whats\": 9263,\n  \"whats</w>\": 13084,\n  \"whatsapp</w>\": 10119,\n  \"whatsoever</w>\": 39928,\n  \"whatson\": 35632,\n  \"whatyou\": 30508,\n  \"whe\": 2009,\n  \"whead</w>\": 34583,\n  \"wheat\": 20505,\n  \"wheat</w>\": 10303,\n  \"wheaton</w>\": 46933,\n  \"wheel\": 7360,\n  \"wheel</w>\": 6744,\n  \"wheelchair</w>\": 17713,\n  \"wheeler</w>\": 18405,\n  \"wheeling</w>\": 34839,\n  \"wheels</w>\": 8025,\n  \"whel\": 9792,\n  \"whelan</w>\": 40715,\n  \"when\": 8753,\n  \"when</w>\": 827,\n  \"whenever</w>\": 10500,\n  \"where\": 7052,\n  \"where</w>\": 1234,\n  \"whereabouts</w>\": 47808,\n  \"whereas</w>\": 42234,\n  \"wheres\": 46345,\n  \"wherever</w>\": 14103,\n  \"whereyou\": 46837,\n  \"whether</w>\": 5903,\n  \"whew</w>\": 39016,\n  \"whey</w>\": 34556,\n  \"whi\": 4295,\n  \"whi</w>\": 33129,\n  \"which</w>\": 1448,\n  \"whiche\": 48719,\n  \"whichever</w>\": 49138,\n  \"whil\": 8499,\n  \"while</w>\": 1519,\n  \"whilst</w>\": 8596,\n  \"whim\": 27766,\n  \"whimsical</w>\": 42282,\n  \"whip</w>\": 14412,\n  \"whipped</w>\": 22323,\n  \"whipping</w>\": 41567,\n  \"whir\": 20873,\n  \"whirl\": 30962,\n  \"whirlwind</w>\": 47771,\n  \"whis\": 6024,\n  \"whiskey\": 41381,\n  \"whiskey</w>\": 11610,\n  \"whisky\": 37567,\n  \"whisky</w>\": 12599,\n  \"whisp\": 21986,\n  \"whispe\": 30356,\n  \"whisper</w>\": 27616,\n  \"whisperer</w>\": 41368,\n  \"whispering</w>\": 42599,\n  \"whispers</w>\": 29133,\n  \"whist\": 13640,\n  \"whistle\": 23972,\n  \"whistle</w>\": 19746,\n  \"whistleblower</w>\": 40410,\n  \"whistler</w>\": 29633,\n  \"whit\": 4398,\n  \"whit</w>\": 31498,\n  \"whitaker</w>\": 35851,\n  \"whitby</w>\": 30858,\n  \"white\": 4699,\n  \"white</w>\": 1579,\n  \"whiteboard</w>\": 40839,\n  \"whitec\": 24575,\n  \"whitehall</w>\": 42827,\n  \"whitehead</w>\": 43560,\n  \"whitehouse</w>\": 20776,\n  \"whitening</w>\": 35540,\n  \"whitepaper</w>\": 42713,\n  \"whites\": 35886,\n  \"whites</w>\": 18835,\n  \"whitesox</w>\": 28816,\n  \"whitewater</w>\": 49350,\n  \"whitfield</w>\": 48404,\n  \"whitley</w>\": 40564,\n  \"whitman</w>\": 32394,\n  \"whitney\": 43021,\n  \"whitney</w>\": 18048,\n  \"whitt\": 33784,\n  \"whittaker</w>\": 47595,\n  \"whl</w>\": 25801,\n  \"who\": 2969,\n  \"who</w>\": 822,\n  \"whoa</w>\": 16943,\n  \"whoever</w>\": 11137,\n  \"whois\": 41884,\n  \"whole\": 10360,\n  \"whole</w>\": 2954,\n  \"wholefoods</w>\": 42840,\n  \"wholesale</w>\": 18306,\n  \"wholesome</w>\": 35959,\n  \"whom\": 38158,\n  \"whom</w>\": 12873,\n  \"whoo\": 20003,\n  \"whoo</w>\": 49290,\n  \"whoop</w>\": 22060,\n  \"whoops</w>\": 28433,\n  \"whopping</w>\": 34384,\n  \"whore</w>\": 31690,\n  \"whos\": 41460,\n  \"whos</w>\": 27130,\n  \"whose</w>\": 6933,\n  \"whouse</w>\": 45927,\n  \"whs</w>\": 26292,\n  \"wht</w>\": 32470,\n  \"whufc</w>\": 31695,\n  \"whun\": 18272,\n  \"why\": 11040,\n  \"why</w>\": 1182,\n  \"whyte</w>\": 42386,\n  \"wi\": 820,\n  \"wi</w>\": 5585,\n  \"wib</w>\": 45303,\n  \"wic\": 7834,\n  \"wich\": 9759,\n  \"wich</w>\": 5238,\n  \"wichita</w>\": 22566,\n  \"wick\": 6798,\n  \"wick</w>\": 6479,\n  \"wicked\": 32579,\n  \"wicked</w>\": 12825,\n  \"wicker</w>\": 38096,\n  \"wicket</w>\": 19180,\n  \"wickets</w>\": 22110,\n  \"wicklow</w>\": 39039,\n  \"wicz</w>\": 30121,\n  \"wid\": 11886,\n  \"wid</w>\": 20886,\n  \"wide\": 19341,\n  \"wide</w>\": 3184,\n  \"widely</w>\": 16195,\n  \"widening</w>\": 46598,\n  \"wider</w>\": 21263,\n  \"widesp\": 20598,\n  \"widespread</w>\": 21258,\n  \"widget</w>\": 43906,\n  \"wido\": 28068,\n  \"widow</w>\": 19949,\n  \"widows</w>\": 42129,\n  \"width</w>\": 23571,\n  \"wie\": 21378,\n  \"wie</w>\": 9131,\n  \"wielding</w>\": 47272,\n  \"wien</w>\": 38131,\n  \"wiener</w>\": 40567,\n  \"wies\": 42788,\n  \"wif</w>\": 37572,\n  \"wife</w>\": 3607,\n  \"wifey</w>\": 35282,\n  \"wifi</w>\": 11026,\n  \"wig\": 23690,\n  \"wig</w>\": 12216,\n  \"wigan</w>\": 23130,\n  \"wiggins</w>\": 32329,\n  \"wiggle</w>\": 47812,\n  \"wight\": 41278,\n  \"wight</w>\": 15545,\n  \"wigs</w>\": 31207,\n  \"wii</w>\": 8005,\n  \"wiiu</w>\": 40980,\n  \"wiki\": 10373,\n  \"wiki</w>\": 24265,\n  \"wikileaks</w>\": 28731,\n  \"wikipedia</w>\": 15176,\n  \"wil\": 1352,\n  \"wil</w>\": 20581,\n  \"wilbur</w>\": 43069,\n  \"wilcox</w>\": 43231,\n  \"wild\": 2780,\n  \"wild</w>\": 3220,\n  \"wildatlantic\": 35500,\n  \"wildatlanticway</w>\": 35776,\n  \"wildcard</w>\": 37360,\n  \"wildcat\": 49077,\n  \"wildcat</w>\": 25870,\n  \"wildcats</w>\": 15909,\n  \"wilde</w>\": 23498,\n  \"wilder\": 14343,\n  \"wilder</w>\": 23499,\n  \"wilderness</w>\": 16506,\n  \"wildest</w>\": 43028,\n  \"wildfire</w>\": 22788,\n  \"wildfires</w>\": 29184,\n  \"wildflower\": 27628,\n  \"wildflower</w>\": 33181,\n  \"wildflowerhour</w>\": 31302,\n  \"wildflowers</w>\": 29136,\n  \"wildlife\": 13298,\n  \"wildlife</w>\": 5250,\n  \"wildlifephotography</w>\": 32307,\n  \"wildlifewednesday</w>\": 48537,\n  \"wildly</w>\": 35981,\n  \"wildoz</w>\": 40113,\n  \"wiley</w>\": 32747,\n  \"wilhelm</w>\": 39696,\n  \"wilkes</w>\": 39548,\n  \"wilkins</w>\": 36986,\n  \"wilkinson</w>\": 26797,\n  \"will\": 5062,\n  \"will</w>\": 751,\n  \"willam\": 43276,\n  \"willard</w>\": 44920,\n  \"wille\": 48739,\n  \"willem</w>\": 38044,\n  \"willi\": 2256,\n  \"william\": 8420,\n  \"william</w>\": 4705,\n  \"williams\": 38452,\n  \"williams</w>\": 4075,\n  \"williamsburg</w>\": 30683,\n  \"williamson</w>\": 20793,\n  \"willie</w>\": 13907,\n  \"willing\": 34160,\n  \"willing</w>\": 11718,\n  \"willingness</w>\": 40573,\n  \"willis</w>\": 18491,\n  \"willow\": 33887,\n  \"willow</w>\": 15665,\n  \"wills</w>\": 26913,\n  \"willy\": 34502,\n  \"willy</w>\": 19599,\n  \"wilmington</w>\": 28052,\n  \"wilms\": 47879,\n  \"wilshere</w>\": 48359,\n  \"wilson\": 23629,\n  \"wilson</w>\": 5622,\n  \"wilt\": 23394,\n  \"wilt</w>\": 47357,\n  \"wilton</w>\": 46638,\n  \"wiltshire</w>\": 28025,\n  \"wim\": 8662,\n  \"wim</w>\": 27580,\n  \"wimble\": 11752,\n  \"wimbledon</w>\": 12229,\n  \"win\": 831,\n  \"win</w>\": 1225,\n  \"winchester</w>\": 20647,\n  \"wind\": 6812,\n  \"wind</w>\": 3630,\n  \"winder\": 44454,\n  \"winder</w>\": 46245,\n  \"winding</w>\": 22390,\n  \"windmill</w>\": 34084,\n  \"windo\": 3110,\n  \"window\": 26675,\n  \"window</w>\": 4879,\n  \"windows</w>\": 5437,\n  \"winds\": 12668,\n  \"winds</w>\": 7012,\n  \"windshield</w>\": 33002,\n  \"windsor\": 44322,\n  \"windsor</w>\": 12884,\n  \"windy</w>\": 13446,\n  \"wine\": 7375,\n  \"wine</w>\": 2604,\n  \"winelover</w>\": 26357,\n  \"winemaker</w>\": 41588,\n  \"wineoclock</w>\": 43846,\n  \"wineries</w>\": 49349,\n  \"winery</w>\": 15500,\n  \"wines</w>\": 8263,\n  \"winetasting</w>\": 41288,\n  \"winewednesday</w>\": 35447,\n  \"wing\": 8141,\n  \"wing</w>\": 1340,\n  \"winged</w>\": 24993,\n  \"winger</w>\": 22727,\n  \"winget</w>\": 44578,\n  \"wings</w>\": 5178,\n  \"wink\": 34455,\n  \"wink</w>\": 25859,\n  \"winkle</w>\": 36430,\n  \"winn</w>\": 38104,\n  \"winne\": 46273,\n  \"winner\": 32961,\n  \"winner</w>\": 2520,\n  \"winners</w>\": 4320,\n  \"winni\": 13018,\n  \"winnie</w>\": 29022,\n  \"winning\": 42099,\n  \"winning</w>\": 2577,\n  \"winnings</w>\": 46490,\n  \"winnipeg</w>\": 14369,\n  \"winona</w>\": 49202,\n  \"wins\": 46839,\n  \"wins</w>\": 2718,\n  \"winslow</w>\": 39658,\n  \"winston</w>\": 14848,\n  \"winter\": 7340,\n  \"winter</w>\": 2541,\n  \"winters</w>\": 21587,\n  \"wintry</w>\": 39504,\n  \"wip</w>\": 10447,\n  \"wipe</w>\": 26761,\n  \"wiped</w>\": 31822,\n  \"wipes</w>\": 33463,\n  \"wir\": 16849,\n  \"wir</w>\": 44838,\n  \"wire\": 7558,\n  \"wire</w>\": 7794,\n  \"wired</w>\": 18935,\n  \"wireless</w>\": 9103,\n  \"wires</w>\": 24311,\n  \"wiring</w>\": 36434,\n  \"wirral</w>\": 34675,\n  \"wis\": 3392,\n  \"wis</w>\": 20405,\n  \"wiscon\": 9857,\n  \"wisconsin</w>\": 10265,\n  \"wisdom\": 42474,\n  \"wisdom</w>\": 5425,\n  \"wise\": 19116,\n  \"wise</w>\": 5558,\n  \"wisely</w>\": 26173,\n  \"wiser</w>\": 44859,\n  \"wish\": 11328,\n  \"wish</w>\": 2412,\n  \"wished</w>\": 25883,\n  \"wishes</w>\": 6045,\n  \"wishing</w>\": 5307,\n  \"wishlist</w>\": 31969,\n  \"wit\": 584,\n  \"wit</w>\": 8531,\n  \"witch\": 20139,\n  \"witch</w>\": 10083,\n  \"witchcraft</w>\": 35065,\n  \"witcher</w>\": 33684,\n  \"witches</w>\": 21673,\n  \"with\": 1435,\n  \"with</w>\": 593,\n  \"withdra\": 24696,\n  \"withdraw</w>\": 31670,\n  \"withdrawal</w>\": 25765,\n  \"withdrawn</w>\": 46687,\n  \"withdraws</w>\": 48637,\n  \"wither\": 39655,\n  \"witherspoon</w>\": 45409,\n  \"within</w>\": 4154,\n  \"withme</w>\": 44670,\n  \"without\": 32836,\n  \"without</w>\": 2193,\n  \"withstand</w>\": 42236,\n  \"withthe\": 36872,\n  \"withus</w>\": 30572,\n  \"withyou</w>\": 30351,\n  \"witne\": 12096,\n  \"witness</w>\": 8793,\n  \"witnessed</w>\": 20187,\n  \"witnesses</w>\": 22778,\n  \"witnessing</w>\": 33618,\n  \"wits</w>\": 30938,\n  \"witt\": 38194,\n  \"witt</w>\": 17168,\n  \"witter</w>\": 31597,\n  \"witty</w>\": 29970,\n  \"witz\": 44186,\n  \"witz</w>\": 13265,\n  \"wiv</w>\": 48925,\n  \"wives</w>\": 14378,\n  \"wiwx</w>\": 44461,\n  \"wiz\": 7730,\n  \"wiz</w>\": 23178,\n  \"wizar\": 49121,\n  \"wizard\": 30490,\n  \"wizard</w>\": 14295,\n  \"wizards</w>\": 19140,\n  \"wizkid</w>\": 40146,\n  \"wj\": 19739,\n  \"wj</w>\": 35453,\n  \"wk\": 11512,\n  \"wk</w>\": 11528,\n  \"wkend</w>\": 42336,\n  \"wknd</w>\": 20851,\n  \"wks</w>\": 25508,\n  \"wku</w>\": 43377,\n  \"wl\": 13299,\n  \"wl</w>\": 9613,\n  \"wm\": 20268,\n  \"wm</w>\": 15790,\n  \"wn\": 1186,\n  \"wn</w>\": 757,\n  \"wnba</w>\": 32358,\n  \"wned</w>\": 8628,\n  \"wns</w>\": 12950,\n  \"wnt</w>\": 22484,\n  \"wny</w>\": 24833,\n  \"wo\": 1613,\n  \"wo</w>\": 11132,\n  \"woah</w>\": 17751,\n  \"wob\": 35984,\n  \"woc</w>\": 39011,\n  \"wod</w>\": 41522,\n  \"woes</w>\": 27860,\n  \"wof\": 45671,\n  \"woj\": 48931,\n  \"wok</w>\": 28912,\n  \"woke</w>\": 9331,\n  \"woken</w>\": 43697,\n  \"woking</w>\": 43931,\n  \"wol\": 2798,\n  \"wol</w>\": 48622,\n  \"wold</w>\": 42399,\n  \"wolf\": 9453,\n  \"wolf</w>\": 5916,\n  \"wolfe</w>\": 24989,\n  \"wolff</w>\": 34369,\n  \"wolfgang</w>\": 34061,\n  \"wolfpack</w>\": 30887,\n  \"wolve\": 45101,\n  \"wolver\": 14334,\n  \"wolverhampton</w>\": 34518,\n  \"wolverine</w>\": 23353,\n  \"wolverines</w>\": 42003,\n  \"wolves</w>\": 9372,\n  \"wom\": 1087,\n  \"womack</w>\": 48980,\n  \"woman\": 15716,\n  \"woman</w>\": 2308,\n  \"womanc\": 35630,\n  \"womancrush\": 37721,\n  \"womancrushwednesday</w>\": 39714,\n  \"womanin\": 30562,\n  \"womaninbiz</w>\": 36482,\n  \"womb</w>\": 37023,\n  \"women\": 3648,\n  \"women</w>\": 1507,\n  \"womenin\": 13062,\n  \"womeninscience</w>\": 41343,\n  \"womeninstem</w>\": 29380,\n  \"womenintech</w>\": 31470,\n  \"womenof\": 48421,\n  \"womens\": 12822,\n  \"womens</w>\": 14408,\n  \"womensart</w>\": 38548,\n  \"womensday</w>\": 13956,\n  \"womenshi\": 22887,\n  \"womenshistorymonth</w>\": 24982,\n  \"womensmarch</w>\": 30102,\n  \"won\": 1528,\n  \"won</w>\": 1749,\n  \"wonder\": 2070,\n  \"wonder</w>\": 3936,\n  \"wondercon</w>\": 46944,\n  \"wondered</w>\": 15550,\n  \"wonderful</w>\": 2582,\n  \"wonderfully</w>\": 23245,\n  \"wondering</w>\": 8360,\n  \"wonderland</w>\": 13874,\n  \"wonders</w>\": 14048,\n  \"wonderwoman</w>\": 31000,\n  \"wondo</w>\": 38402,\n  \"wondr\": 46771,\n  \"wong</w>\": 17876,\n  \"wonka</w>\": 43463,\n  \"wont\": 43174,\n  \"wont</w>\": 15952,\n  \"woo\": 1867,\n  \"woo</w>\": 9322,\n  \"wood\": 3269,\n  \"wood</w>\": 1704,\n  \"woodbridge</w>\": 49074,\n  \"wooden\": 48226,\n  \"wooden</w>\": 9057,\n  \"woodland\": 44314,\n  \"woodland</w>\": 17447,\n  \"woodlands</w>\": 32430,\n  \"woodley</w>\": 40566,\n  \"woodpecker</w>\": 32684,\n  \"woods</w>\": 6267,\n  \"woodson</w>\": 48967,\n  \"woodstock</w>\": 29486,\n  \"woodward</w>\": 27419,\n  \"woodwork</w>\": 47386,\n  \"woodworking</w>\": 29267,\n  \"woody\": 38627,\n  \"woody</w>\": 17144,\n  \"woof\": 34234,\n  \"woof</w>\": 24028,\n  \"woohoo</w>\": 20172,\n  \"wook</w>\": 29192,\n  \"wool\": 9967,\n  \"wool</w>\": 13283,\n  \"woolf</w>\": 43728,\n  \"woolly</w>\": 47722,\n  \"woon</w>\": 33126,\n  \"wooo</w>\": 43217,\n  \"woop</w>\": 31884,\n  \"woot</w>\": 22466,\n  \"wor\": 641,\n  \"worcester\": 22172,\n  \"worcester</w>\": 19580,\n  \"worcestershire</w>\": 38440,\n  \"worcestershirehour</w>\": 43644,\n  \"word\": 8272,\n  \"word</w>\": 2653,\n  \"wordof\": 33500,\n  \"wordoftheday</w>\": 43594,\n  \"wordpress</w>\": 15193,\n  \"words\": 31007,\n  \"words</w>\": 2709,\n  \"wore</w>\": 8953,\n  \"work\": 1636,\n  \"work</w>\": 951,\n  \"workday</w>\": 29735,\n  \"worked</w>\": 5410,\n  \"worker</w>\": 8098,\n  \"workers</w>\": 4795,\n  \"workflow</w>\": 28502,\n  \"workforce</w>\": 14672,\n  \"workin\": 31825,\n  \"workin</w>\": 26323,\n  \"working\": 20806,\n  \"working</w>\": 1699,\n  \"workinprogress</w>\": 46086,\n  \"workout</w>\": 6773,\n  \"workouts</w>\": 22779,\n  \"workplace</w>\": 11959,\n  \"workplaces</w>\": 47383,\n  \"works</w>\": 2322,\n  \"workshop</w>\": 3832,\n  \"workshops</w>\": 12262,\n  \"workspace</w>\": 34470,\n  \"worl\": 5221,\n  \"world\": 2334,\n  \"world</w>\": 1002,\n  \"worlda\": 46627,\n  \"worldbank</w>\": 36759,\n  \"worldbookday</w>\": 31191,\n  \"worldcup\": 42525,\n  \"worldcup</w>\": 8650,\n  \"worlden\": 44668,\n  \"worldenviron\": 47115,\n  \"worldenvironmentday</w>\": 47522,\n  \"worldly</w>\": 36268,\n  \"worldo\": 41698,\n  \"worldof\": 22636,\n  \"worldre\": 33951,\n  \"worlds</w>\": 7691,\n  \"worldseries</w>\": 26695,\n  \"worldtour</w>\": 23202,\n  \"worldwater\": 41176,\n  \"worldwaterday</w>\": 44520,\n  \"worldwide</w>\": 6214,\n  \"worm\": 33709,\n  \"worm</w>\": 10945,\n  \"worms</w>\": 20231,\n  \"worn</w>\": 9037,\n  \"worried</w>\": 11911,\n  \"worries</w>\": 17684,\n  \"worry</w>\": 7534,\n  \"worrying</w>\": 24058,\n  \"worse</w>\": 8236,\n  \"worsen\": 46344,\n  \"worshi\": 31840,\n  \"worship\": 46399,\n  \"worship</w>\": 9023,\n  \"worst</w>\": 5719,\n  \"wort</w>\": 30209,\n  \"worth\": 10671,\n  \"worth</w>\": 2450,\n  \"worthing</w>\": 39929,\n  \"worthit</w>\": 40830,\n  \"worthless</w>\": 44736,\n  \"worths</w>\": 44633,\n  \"worthwhile</w>\": 36295,\n  \"worthy</w>\": 8881,\n  \"worx</w>\": 44973,\n  \"wot</w>\": 24863,\n  \"wou\": 5279,\n  \"would\": 39873,\n  \"would</w>\": 1311,\n  \"wouldn</w>\": 5878,\n  \"wouldnt</w>\": 41595,\n  \"wound</w>\": 19231,\n  \"wounded</w>\": 14859,\n  \"wounds</w>\": 21290,\n  \"woven</w>\": 19830,\n  \"wow\": 22191,\n  \"wow</w>\": 2781,\n  \"woz\": 44558,\n  \"wozni\": 47782,\n  \"wp\": 15378,\n  \"wp</w>\": 13302,\n  \"wpg</w>\": 35048,\n  \"wps</w>\": 33386,\n  \"wq\": 45195,\n  \"wr\": 1189,\n  \"wr</w>\": 8028,\n  \"wra\": 3852,\n  \"wra</w>\": 46004,\n  \"wral</w>\": 49050,\n  \"wrangler</w>\": 30923,\n  \"wrap</w>\": 7094,\n  \"wrapped</w>\": 9875,\n  \"wrapping</w>\": 15223,\n  \"wraps</w>\": 18236,\n  \"wrath</w>\": 29783,\n  \"wray</w>\": 48943,\n  \"wrc</w>\": 16004,\n  \"wre\": 3168,\n  \"wreath</w>\": 23091,\n  \"wrec\": 20879,\n  \"wreck\": 28775,\n  \"wreck</w>\": 15017,\n  \"wrecked</w>\": 32695,\n  \"wreckem</w>\": 45676,\n  \"wrecking</w>\": 36956,\n  \"wrecks</w>\": 45545,\n  \"wren\": 20191,\n  \"wren</w>\": 31970,\n  \"wrench</w>\": 30980,\n  \"wrest\": 4177,\n  \"wrestle\": 17097,\n  \"wrestle</w>\": 28086,\n  \"wrestlemania</w>\": 18849,\n  \"wrestler</w>\": 19790,\n  \"wrestlers</w>\": 25902,\n  \"wrestling\": 31292,\n  \"wrestling</w>\": 5904,\n  \"wrexham</w>\": 34479,\n  \"wri\": 7667,\n  \"wri</w>\": 42007,\n  \"wright\": 28616,\n  \"wright</w>\": 6991,\n  \"wrights</w>\": 43711,\n  \"wrigley</w>\": 33538,\n  \"wrink\": 22201,\n  \"wrinkle</w>\": 46642,\n  \"wrinkles</w>\": 35525,\n  \"wrist\": 19243,\n  \"wrist</w>\": 16139,\n  \"wristband</w>\": 36890,\n  \"wristbands</w>\": 44864,\n  \"writ\": 2902,\n  \"write\": 28874,\n  \"write</w>\": 4946,\n  \"writer\": 27886,\n  \"writer</w>\": 4422,\n  \"writers\": 18742,\n  \"writers</w>\": 7307,\n  \"writerslife</w>\": 25007,\n  \"writes</w>\": 8023,\n  \"writing\": 16053,\n  \"writing</w>\": 2979,\n  \"writingcommunity</w>\": 39178,\n  \"writings</w>\": 36259,\n  \"written</w>\": 5231,\n  \"wro\": 5447,\n  \"wrong\": 18381,\n  \"wrong</w>\": 3669,\n  \"wrongly</w>\": 45642,\n  \"wrote</w>\": 5796,\n  \"wrought</w>\": 48125,\n  \"wrs</w>\": 45280,\n  \"ws\": 6300,\n  \"ws</w>\": 799,\n  \"wsb\": 30681,\n  \"wsbtv</w>\": 38394,\n  \"wsj</w>\": 19764,\n  \"wski</w>\": 12548,\n  \"wsl</w>\": 43706,\n  \"wsoc</w>\": 40253,\n  \"wson</w>\": 33954,\n  \"wsop</w>\": 41231,\n  \"wsu\": 44674,\n  \"wsu</w>\": 32913,\n  \"wsw</w>\": 43285,\n  \"wt\": 15873,\n  \"wt</w>\": 12255,\n  \"wta</w>\": 25984,\n  \"wtc</w>\": 39718,\n  \"wtf</w>\": 6891,\n  \"wth</w>\": 23021,\n  \"wthr\": 45269,\n  \"wti</w>\": 47345,\n  \"wto</w>\": 36406,\n  \"wts</w>\": 32159,\n  \"wu\": 9710,\n  \"wu</w>\": 9837,\n  \"wud</w>\": 43870,\n  \"wul\": 35154,\n  \"wunder\": 36661,\n  \"wur\": 24040,\n  \"wurst</w>\": 44409,\n  \"wusa</w>\": 40021,\n  \"wut</w>\": 28590,\n  \"wv\": 18920,\n  \"wv</w>\": 14743,\n  \"wvu\": 44878,\n  \"wvu</w>\": 25879,\n  \"ww\": 3181,\n  \"ww</w>\": 4491,\n  \"wwc</w>\": 26505,\n  \"wwdc</w>\": 47441,\n  \"wwe\": 12112,\n  \"wwe</w>\": 5290,\n  \"wwen\": 23308,\n  \"wwenetwork</w>\": 37228,\n  \"wwenxt</w>\": 39898,\n  \"wwer\": 32038,\n  \"wwf</w>\": 23332,\n  \"wwfc</w>\": 42681,\n  \"wwg</w>\": 35322,\n  \"wwi</w>\": 20194,\n  \"wwii</w>\": 10261,\n  \"www\": 26074,\n  \"www</w>\": 9667,\n  \"wwwbigbaldhead</w>\": 30761,\n  \"wwww\": 34224,\n  \"wwww</w>\": 25200,\n  \"wwwww</w>\": 48268,\n  \"wwx</w>\": 47431,\n  \"wx\": 18192,\n  \"wx</w>\": 3561,\n  \"wy\": 4665,\n  \"wy</w>\": 7625,\n  \"wyatt</w>\": 21660,\n  \"wyd</w>\": 33113,\n  \"wye\": 48436,\n  \"wye</w>\": 43751,\n  \"wylie</w>\": 49330,\n  \"wyn\": 11802,\n  \"wyn</w>\": 17504,\n  \"wynn</w>\": 36117,\n  \"wynne</w>\": 35951,\n  \"wynonna\": 41456,\n  \"wynonnaearp</w>\": 43755,\n  \"wyoming</w>\": 18693,\n  \"x\": 87,\n  \"x</w>\": 343,\n  \"xa</w>\": 24831,\n  \"xan\": 45530,\n  \"xander</w>\": 45601,\n  \"xavi\": 36342,\n  \"xavier\": 41044,\n  \"xavier</w>\": 18567,\n  \"xb</w>\": 33678,\n  \"xbox\": 18063,\n  \"xbox</w>\": 7748,\n  \"xboxone</w>\": 27410,\n  \"xc</w>\": 12515,\n  \"xchange</w>\": 49132,\n  \"xd</w>\": 6380,\n  \"xe\": 42886,\n  \"xe</w>\": 19183,\n  \"xen\": 15568,\n  \"xer\": 49005,\n  \"xf</w>\": 35274,\n  \"xfactor</w>\": 25211,\n  \"xfinity</w>\": 35107,\n  \"xford</w>\": 34732,\n  \"xh</w>\": 45771,\n  \"xham</w>\": 25284,\n  \"xi\": 2467,\n  \"xi</w>\": 7376,\n  \"xia\": 19854,\n  \"xia</w>\": 20724,\n  \"xian</w>\": 42570,\n  \"xiao</w>\": 49318,\n  \"xiaomi</w>\": 27477,\n  \"xico</w>\": 38469,\n  \"xide</w>\": 17398,\n  \"xie\": 40122,\n  \"xie</w>\": 15976,\n  \"xii</w>\": 36525,\n  \"xiii</w>\": 28199,\n  \"xim\": 11217,\n  \"xin\": 27053,\n  \"xin</w>\": 41517,\n  \"xing</w>\": 14383,\n  \"xion</w>\": 24164,\n  \"xis</w>\": 35793,\n  \"xit</w>\": 5316,\n  \"xiumin</w>\": 36563,\n  \"xiv</w>\": 16125,\n  \"xj</w>\": 42453,\n  \"xl\": 36529,\n  \"xl</w>\": 8833,\n  \"xley</w>\": 38223,\n  \"xm</w>\": 18626,\n  \"xma\": 48805,\n  \"xmas\": 48848,\n  \"xmas</w>\": 6425,\n  \"xmen</w>\": 28708,\n  \"xn</w>\": 25388,\n  \"xo\": 26936,\n  \"xo</w>\": 9000,\n  \"xon\": 29186,\n  \"xon</w>\": 8482,\n  \"xox\": 11531,\n  \"xox</w>\": 34050,\n  \"xoxo</w>\": 13313,\n  \"xp</w>\": 15651,\n  \"xper\": 32200,\n  \"xperia</w>\": 37615,\n  \"xpo</w>\": 44377,\n  \"xpress</w>\": 31809,\n  \"xq</w>\": 40606,\n  \"xr</w>\": 26276,\n  \"xrp</w>\": 26965,\n  \"xs</w>\": 16397,\n  \"xt</w>\": 1052,\n  \"xtina</w>\": 45520,\n  \"xton\": 32666,\n  \"xton</w>\": 10597,\n  \"xtra</w>\": 26969,\n  \"xtre\": 27025,\n  \"xtreme</w>\": 33483,\n  \"xu\": 42063,\n  \"xu</w>\": 37198,\n  \"xv</w>\": 17768,\n  \"xvi</w>\": 44031,\n  \"xx\": 5675,\n  \"xx</w>\": 3553,\n  \"xxl</w>\": 29777,\n  \"xxx\": 33923,\n  \"xxx</w>\": 8352,\n  \"xxxx\": 32035,\n  \"xxxx</w>\": 22819,\n  \"xxxxx</w>\": 44195,\n  \"xy\": 20023,\n  \"xy</w>\": 11443,\n  \"y\": 88,\n  \"y</w>\": 344,\n  \"ya\": 5018,\n  \"ya</w>\": 1430,\n  \"yaa\": 48847,\n  \"yaa</w>\": 34498,\n  \"yaan</w>\": 34680,\n  \"yab\": 27737,\n  \"yach\": 9039,\n  \"yacht\": 43806,\n  \"yacht</w>\": 12859,\n  \"yachts</w>\": 29260,\n  \"yad\": 13276,\n  \"yad</w>\": 40047,\n  \"yadav</w>\": 26650,\n  \"yaf\": 38019,\n  \"yag\": 35081,\n  \"yah\": 16170,\n  \"yah</w>\": 12381,\n  \"yaho\": 37929,\n  \"yahoo\": 38152,\n  \"yahoo</w>\": 16846,\n  \"yak\": 11014,\n  \"yak</w>\": 29074,\n  \"yaki</w>\": 44677,\n  \"yaku\": 29572,\n  \"yakuza</w>\": 42628,\n  \"yal\": 16198,\n  \"yal</w>\": 13418,\n  \"yale\": 39926,\n  \"yale</w>\": 17157,\n  \"yall</w>\": 9210,\n  \"yam\": 6666,\n  \"yam</w>\": 19318,\n  \"yama</w>\": 23512,\n  \"yamaha</w>\": 18854,\n  \"yan\": 3949,\n  \"yan</w>\": 4788,\n  \"yana</w>\": 18698,\n  \"yand\": 38609,\n  \"yang\": 23818,\n  \"yang</w>\": 12605,\n  \"yani</w>\": 26439,\n  \"yankee</w>\": 21554,\n  \"yankees</w>\": 11889,\n  \"yann\": 40246,\n  \"yann</w>\": 38657,\n  \"yao</w>\": 45231,\n  \"yap\": 48700,\n  \"yap</w>\": 34468,\n  \"yar\": 6786,\n  \"yar</w>\": 23071,\n  \"yard\": 20234,\n  \"yard</w>\": 4313,\n  \"yards</w>\": 7550,\n  \"yarmouth</w>\": 45941,\n  \"yarn</w>\": 19702,\n  \"yarra</w>\": 46824,\n  \"yas\": 8168,\n  \"yas</w>\": 20570,\n  \"yash\": 30216,\n  \"yash</w>\": 37836,\n  \"yasi\": 37700,\n  \"yasss</w>\": 23873,\n  \"yat\": 29443,\n  \"yat</w>\": 34965,\n  \"yates</w>\": 27677,\n  \"yatra</w>\": 38932,\n  \"yav\": 41275,\n  \"yaw\": 31989,\n  \"yawn</w>\": 48643,\n  \"yay\": 20614,\n  \"yay</w>\": 6712,\n  \"yaya</w>\": 37608,\n  \"yaz\": 19348,\n  \"yaz</w>\": 42252,\n  \"yb\": 41785,\n  \"yb</w>\": 27615,\n  \"yc</w>\": 11931,\n  \"ycle</w>\": 38089,\n  \"yd\": 29896,\n  \"yd</w>\": 9534,\n  \"yday</w>\": 15899,\n  \"yds</w>\": 24819,\n  \"ye\": 693,\n  \"ye</w>\": 4582,\n  \"yea</w>\": 13687,\n  \"yeah\": 29405,\n  \"yeah</w>\": 3908,\n  \"year\": 5163,\n  \"year</w>\": 935,\n  \"yearbook</w>\": 21636,\n  \"yearling</w>\": 48392,\n  \"yearly</w>\": 24541,\n  \"yearof\": 31944,\n  \"yearofthe\": 47899,\n  \"years\": 30864,\n  \"years</w>\": 1151,\n  \"yearsof\": 14932,\n  \"yearswith\": 45249,\n  \"yeast</w>\": 25819,\n  \"yeats</w>\": 44903,\n  \"yed\": 28137,\n  \"yed</w>\": 3301,\n  \"yee\": 18114,\n  \"yee</w>\": 23108,\n  \"yeezy</w>\": 24901,\n  \"yeg\": 16854,\n  \"yeg</w>\": 11976,\n  \"yegfood</w>\": 48711,\n  \"yeh</w>\": 21331,\n  \"yel\": 3323,\n  \"yel</w>\": 48164,\n  \"yell</w>\": 30824,\n  \"yelled</w>\": 39199,\n  \"yelling</w>\": 26581,\n  \"yellow\": 12059,\n  \"yellow</w>\": 4481,\n  \"yellowstone</w>\": 29241,\n  \"yelp</w>\": 31674,\n  \"yemen\": 29276,\n  \"yemen</w>\": 12513,\n  \"yemeni</w>\": 44656,\n  \"yemi</w>\": 42267,\n  \"yen\": 29602,\n  \"yen</w>\": 17960,\n  \"yeo\": 32292,\n  \"yeo</w>\": 43830,\n  \"yeol</w>\": 15808,\n  \"yeon</w>\": 16602,\n  \"yep</w>\": 10964,\n  \"yer\": 15491,\n  \"yer</w>\": 2371,\n  \"yers</w>\": 3722,\n  \"yes\": 21620,\n  \"yes</w>\": 1958,\n  \"yess\": 42778,\n  \"yess</w>\": 40189,\n  \"yesss</w>\": 36210,\n  \"yessss</w>\": 45620,\n  \"yester\": 1905,\n  \"yesterday</w>\": 1926,\n  \"yesterdays</w>\": 36238,\n  \"yesung</w>\": 38527,\n  \"yet</w>\": 2296,\n  \"yeti</w>\": 34228,\n  \"yev</w>\": 39855,\n  \"yew</w>\": 34660,\n  \"yey</w>\": 45447,\n  \"yg</w>\": 16396,\n  \"ygk</w>\": 44758,\n  \"ygo\": 46166,\n  \"yh</w>\": 41978,\n  \"yi\": 5826,\n  \"yi</w>\": 14762,\n  \"yield</w>\": 16825,\n  \"yields</w>\": 24856,\n  \"yikes</w>\": 25094,\n  \"yin\": 26476,\n  \"yin</w>\": 23543,\n  \"ying\": 42933,\n  \"ying</w>\": 910,\n  \"yixing</w>\": 32120,\n  \"yk</w>\": 30965,\n  \"yl\": 2656,\n  \"yl</w>\": 4045,\n  \"ylan</w>\": 41875,\n  \"ylde</w>\": 42850,\n  \"yle\": 32305,\n  \"yle</w>\": 10770,\n  \"ylene</w>\": 34239,\n  \"yler</w>\": 48081,\n  \"yles</w>\": 42860,\n  \"ylon</w>\": 22375,\n  \"ylor</w>\": 48468,\n  \"ym\": 1786,\n  \"ym</w>\": 19587,\n  \"yman</w>\": 29077,\n  \"ymc\": 47101,\n  \"ymca</w>\": 22369,\n  \"yment</w>\": 8199,\n  \"ymes</w>\": 39968,\n  \"ymi</w>\": 5271,\n  \"ymm</w>\": 37133,\n  \"ymoun\": 41426,\n  \"ymouth</w>\": 36429,\n  \"yn\": 2823,\n  \"yn</w>\": 4100,\n  \"yne</w>\": 18238,\n  \"ynes</w>\": 18020,\n  \"ynn</w>\": 10499,\n  \"ynna</w>\": 48292,\n  \"ynwa</w>\": 27372,\n  \"yo\": 586,\n  \"yo</w>\": 3497,\n  \"yoda</w>\": 31922,\n  \"yof\": 5966,\n  \"yofficial</w>\": 21818,\n  \"yofthe\": 43983,\n  \"yog\": 34985,\n  \"yog</w>\": 36539,\n  \"yoga\": 25872,\n  \"yoga</w>\": 5523,\n  \"yogh\": 32626,\n  \"yoghurt</w>\": 33491,\n  \"yogi</w>\": 22766,\n  \"yogur\": 16137,\n  \"yogurt</w>\": 16819,\n  \"yoh</w>\": 48880,\n  \"yoke</w>\": 41969,\n  \"yoko\": 25929,\n  \"yoko</w>\": 32256,\n  \"yokohama</w>\": 42409,\n  \"yol\": 19387,\n  \"yol</w>\": 35218,\n  \"yolanda</w>\": 43845,\n  \"yolo</w>\": 20905,\n  \"yom\": 34718,\n  \"yom</w>\": 44527,\n  \"yon\": 10147,\n  \"yon</w>\": 7604,\n  \"yong\": 27960,\n  \"yong</w>\": 20887,\n  \"yonge</w>\": 48592,\n  \"yoo\": 25842,\n  \"yoo</w>\": 20775,\n  \"yoon\": 30863,\n  \"yoon</w>\": 22113,\n  \"yoona</w>\": 32736,\n  \"yoongi</w>\": 24037,\n  \"yor\": 2028,\n  \"yor</w>\": 21132,\n  \"york\": 5318,\n  \"york</w>\": 2705,\n  \"yorker</w>\": 23865,\n  \"yorkers</w>\": 41041,\n  \"yorks</w>\": 39093,\n  \"yorkshi\": 43367,\n  \"yorkshire\": 27007,\n  \"yorkshire</w>\": 8633,\n  \"yoruba</w>\": 46083,\n  \"yos</w>\": 35607,\n  \"yosemite</w>\": 25893,\n  \"yoshi\": 22920,\n  \"yoshi</w>\": 25354,\n  \"yot\": 22875,\n  \"yotes</w>\": 46157,\n  \"yotpo</w>\": 26113,\n  \"you\": 1562,\n  \"you</w>\": 592,\n  \"youare\": 33879,\n  \"youcan\": 32498,\n  \"youknow\": 47919,\n  \"youknow</w>\": 41088,\n  \"youn\": 1596,\n  \"young\": 6939,\n  \"young</w>\": 1888,\n  \"younger</w>\": 10414,\n  \"youngest</w>\": 12316,\n  \"youngjae</w>\": 46426,\n  \"youngster</w>\": 35881,\n  \"youngsters</w>\": 28098,\n  \"younow</w>\": 33831,\n  \"your\": 2130,\n  \"your</w>\": 695,\n  \"youre\": 28344,\n  \"youre</w>\": 19695,\n  \"yourown\": 28583,\n  \"yours</w>\": 3834,\n  \"yourself</w>\": 3053,\n  \"yourselves</w>\": 19747,\n  \"youth\": 10743,\n  \"youth</w>\": 3281,\n  \"youthful</w>\": 37480,\n  \"youths</w>\": 23614,\n  \"youts</w>\": 22737,\n  \"youtu\": 13868,\n  \"youtube\": 31258,\n  \"youtube</w>\": 3895,\n  \"youtuber</w>\": 24720,\n  \"youtubers</w>\": 36822,\n  \"youu</w>\": 35055,\n  \"youuu</w>\": 35324,\n  \"youuuu</w>\": 47123,\n  \"yoy</w>\": 41865,\n  \"yp\": 38370,\n  \"yp</w>\": 34734,\n  \"ypg</w>\": 37386,\n  \"yql</w>\": 46122,\n  \"yqr</w>\": 36881,\n  \"yr\": 18395,\n  \"yr</w>\": 4333,\n  \"yrs</w>\": 4822,\n  \"ys\": 1971,\n  \"ys</w>\": 961,\n  \"yser</w>\": 33121,\n  \"ysis</w>\": 4843,\n  \"ysl</w>\": 45681,\n  \"ysm</w>\": 23842,\n  \"yst\": 40528,\n  \"yt\": 36777,\n  \"yt</w>\": 14779,\n  \"ytd</w>\": 47524,\n  \"yte</w>\": 48172,\n  \"yu\": 3371,\n  \"yu</w>\": 8887,\n  \"yuan</w>\": 26236,\n  \"yuck</w>\": 48282,\n  \"yugo\": 48231,\n  \"yuh</w>\": 42547,\n  \"yui</w>\": 47932,\n  \"yuk\": 17037,\n  \"yuk</w>\": 24063,\n  \"yuki</w>\": 34010,\n  \"yukon</w>\": 27094,\n  \"yul\": 39832,\n  \"yum\": 6869,\n  \"yum</w>\": 7259,\n  \"yuma</w>\": 47566,\n  \"yummy</w>\": 7687,\n  \"yun\": 14976,\n  \"yun</w>\": 18288,\n  \"yung\": 44545,\n  \"yung</w>\": 17676,\n  \"yunho</w>\": 39748,\n  \"yup</w>\": 13231,\n  \"yur\": 42533,\n  \"yuri</w>\": 23823,\n  \"yusuf</w>\": 33222,\n  \"yuv\": 36784,\n  \"yves</w>\": 33698,\n  \"yvon\": 23327,\n  \"yvonne</w>\": 32583,\n  \"yvr</w>\": 29058,\n  \"yw\": 33741,\n  \"yx</w>\": 35624,\n  \"yxe</w>\": 34240,\n  \"yy\": 3433,\n  \"yy</w>\": 8321,\n  \"yya</w>\": 37444,\n  \"yyc\": 27542,\n  \"yyc</w>\": 11741,\n  \"yyj</w>\": 26203,\n  \"yyy</w>\": 11514,\n  \"yyyy\": 38749,\n  \"yyyy</w>\": 16955,\n  \"yyyyy</w>\": 26089,\n  \"yyyyyy</w>\": 47055,\n  \"yz\": 37579,\n  \"yz</w>\": 46451,\n  \"yÃ¼\": 48232,\n  \"z\": 89,\n  \"z</w>\": 345,\n  \"za\": 3710,\n  \"za</w>\": 2186,\n  \"zab\": 22982,\n  \"zable</w>\": 37002,\n  \"zac\": 25501,\n  \"zac</w>\": 19159,\n  \"zach\": 13401,\n  \"zach</w>\": 11815,\n  \"zachary</w>\": 32401,\n  \"zack\": 30567,\n  \"zack</w>\": 19120,\n  \"zad\": 47314,\n  \"zad</w>\": 27838,\n  \"zada</w>\": 34889,\n  \"zaf\": 21837,\n  \"zafar</w>\": 46668,\n  \"zag\": 26091,\n  \"zag</w>\": 29346,\n  \"zagre\": 34107,\n  \"zagreb</w>\": 35355,\n  \"zah\": 23258,\n  \"zah</w>\": 43297,\n  \"zaha</w>\": 44408,\n  \"zai\": 44329,\n  \"zai</w>\": 27065,\n  \"zain\": 34400,\n  \"zain</w>\": 45366,\n  \"zak\": 13050,\n  \"zak</w>\": 20738,\n  \"zaki</w>\": 48091,\n  \"zal\": 20552,\n  \"zal</w>\": 33298,\n  \"zam\": 7218,\n  \"zam</w>\": 41578,\n  \"zambia</w>\": 21671,\n  \"zan\": 7284,\n  \"zan</w>\": 17835,\n  \"zana</w>\": 39643,\n  \"zand\": 37712,\n  \"zane</w>\": 34786,\n  \"zani</w>\": 45373,\n  \"zania</w>\": 15059,\n  \"zano</w>\": 27637,\n  \"zanzi\": 47835,\n  \"zap\": 24134,\n  \"zapp\": 33504,\n  \"zappa</w>\": 46592,\n  \"zar\": 5458,\n  \"zar</w>\": 16392,\n  \"zara</w>\": 24454,\n  \"zardari</w>\": 20174,\n  \"zas</w>\": 48261,\n  \"zation</w>\": 3683,\n  \"zawa</w>\": 49281,\n  \"zay\": 7102,\n  \"zayed</w>\": 36726,\n  \"zayn\": 22292,\n  \"zayn</w>\": 10308,\n  \"zaynmalik</w>\": 25278,\n  \"zazzle</w>\": 47857,\n  \"ze\": 2254,\n  \"ze</w>\": 1298,\n  \"zeal\": 44951,\n  \"zealand</w>\": 7618,\n  \"zeb</w>\": 46518,\n  \"zebra\": 47394,\n  \"zebra</w>\": 22548,\n  \"zed\": 21047,\n  \"zed</w>\": 1993,\n  \"zedd</w>\": 45608,\n  \"zee\": 25468,\n  \"zee</w>\": 14080,\n  \"zeiss</w>\": 47460,\n  \"zeit\": 37898,\n  \"zeit</w>\": 37906,\n  \"zek</w>\": 40829,\n  \"zeke</w>\": 47065,\n  \"zel\": 10389,\n  \"zel</w>\": 12027,\n  \"zelda</w>\": 17138,\n  \"zell</w>\": 39526,\n  \"zen\": 8518,\n  \"zen</w>\": 3928,\n  \"zend\": 33478,\n  \"zendaya</w>\": 35956,\n  \"zenith</w>\": 44740,\n  \"zens</w>\": 15298,\n  \"zeph\": 40726,\n  \"zepp\": 22977,\n  \"zeppelin</w>\": 25408,\n  \"zer\": 6118,\n  \"zer</w>\": 3716,\n  \"zero\": 14867,\n  \"zero</w>\": 5848,\n  \"zers</w>\": 9547,\n  \"zes</w>\": 4073,\n  \"zest</w>\": 37709,\n  \"zet\": 34098,\n  \"zeta</w>\": 30954,\n  \"zetta</w>\": 45993,\n  \"zeus</w>\": 32800,\n  \"zey\": 46647,\n  \"zh\": 33389,\n  \"zh</w>\": 41621,\n  \"zhang</w>\": 21127,\n  \"zhen\": 37374,\n  \"zhen</w>\": 33236,\n  \"zhou</w>\": 17384,\n  \"zhu\": 42049,\n  \"zi\": 2651,\n  \"zi</w>\": 5819,\n  \"zia</w>\": 13764,\n  \"zid\": 30235,\n  \"zidane</w>\": 34643,\n  \"zie\": 29316,\n  \"zie</w>\": 8956,\n  \"zieg\": 40157,\n  \"ziegler</w>\": 46812,\n  \"ziel</w>\": 32151,\n  \"zier</w>\": 15399,\n  \"zies</w>\": 38001,\n  \"ziest</w>\": 28159,\n  \"zig\": 15950,\n  \"zig</w>\": 21345,\n  \"ziggy</w>\": 39274,\n  \"zik</w>\": 30125,\n  \"zika</w>\": 28783,\n  \"zil\": 25039,\n  \"zil</w>\": 33190,\n  \"zilla</w>\": 17879,\n  \"zim\": 8112,\n  \"zim</w>\": 22577,\n  \"zimbab\": 12373,\n  \"zimbabwe\": 45668,\n  \"zimbabwe</w>\": 13583,\n  \"zimmer\": 27452,\n  \"zimmer</w>\": 35211,\n  \"zimmerman</w>\": 38231,\n  \"zin\": 14085,\n  \"zin</w>\": 21278,\n  \"zinc</w>\": 27458,\n  \"zind\": 26206,\n  \"zindabad</w>\": 42208,\n  \"zine</w>\": 16100,\n  \"zing\": 25062,\n  \"zing</w>\": 3152,\n  \"zinger</w>\": 42027,\n  \"zio</w>\": 13906,\n  \"zion\": 31763,\n  \"zion</w>\": 20963,\n  \"zione</w>\": 36161,\n  \"zionist</w>\": 33078,\n  \"zip\": 26479,\n  \"zip</w>\": 16083,\n  \"zipper</w>\": 33670,\n  \"zir\": 31892,\n  \"zl</w>\": 39168,\n  \"zlat\": 32489,\n  \"zlatan</w>\": 37877,\n  \"zm</w>\": 43691,\n  \"zman</w>\": 24248,\n  \"zn</w>\": 18004,\n  \"zo\": 4397,\n  \"zo</w>\": 5056,\n  \"zodi\": 22660,\n  \"zodiac</w>\": 27753,\n  \"zoe\": 43114,\n  \"zoe</w>\": 16662,\n  \"zoey</w>\": 39871,\n  \"zog</w>\": 40680,\n  \"zol\": 25939,\n  \"zola</w>\": 46105,\n  \"zom\": 6623,\n  \"zombi\": 29452,\n  \"zombie</w>\": 11819,\n  \"zombies\": 46702,\n  \"zombies</w>\": 16517,\n  \"zon\": 15109,\n  \"zon</w>\": 14618,\n  \"zona</w>\": 42134,\n  \"zone\": 37197,\n  \"zone</w>\": 4442,\n  \"zones</w>\": 17247,\n  \"zoning</w>\": 36790,\n  \"zoo\": 8182,\n  \"zoo</w>\": 7147,\n  \"zoom\": 32671,\n  \"zoom</w>\": 13909,\n  \"zor\": 17605,\n  \"zou\": 38072,\n  \"zr</w>\": 39275,\n  \"zs</w>\": 35248,\n  \"zshq</w>\": 41442,\n  \"zt</w>\": 42629,\n  \"zu\": 4091,\n  \"zu</w>\": 14184,\n  \"zucchini</w>\": 29873,\n  \"zucker\": 26890,\n  \"zuckerberg</w>\": 30066,\n  \"zul\": 31146,\n  \"zulu</w>\": 32821,\n  \"zum</w>\": 35094,\n  \"zuma</w>\": 23326,\n  \"zumba</w>\": 32976,\n  \"zun\": 42440,\n  \"zur\": 17128,\n  \"zurich</w>\": 21288,\n  \"zw</w>\": 42188,\n  \"zx</w>\": 31604,\n  \"zy\": 6615,\n  \"zy</w>\": 2303,\n  \"zyk</w>\": 39112,\n  \"zyme</w>\": 36472,\n  \"zyn\": 45287,\n  \"zz\": 1544,\n  \"zz</w>\": 4943,\n  \"zza</w>\": 14642,\n  \"zzi</w>\": 13974,\n  \"zzie</w>\": 18635,\n  \"zzle</w>\": 7873,\n  \"zzled</w>\": 39075,\n  \"zzo</w>\": 14036,\n  \"zzy\": 21275,\n  \"zzy</w>\": 8353,\n  \"zzz</w>\": 20055,\n  \"zzzz\": 35742,\n  \"zzzz</w>\": 43103,\n  \"{\": 90,\n  \"{</w>\": 346,\n  \"{}</w>\": 39025,\n  \"|\": 91,\n  \"|#</w>\": 31183,\n  \"|</w>\": 347,\n  \"|@</w>\": 41677,\n  \"||</w>\": 7566,\n  \"}\": 92,\n  \"}</w>\": 348,\n  \"~\": 93,\n  \"~!</w>\": 31181,\n  \"~\\\"</w>\": 48442,\n  \"~</w>\": 349,\n  \"~></w>\": 43291,\n  \"~@</w>\": 44247,\n  \"~~\": 11461,\n  \"~~</w>\": 16671,\n  \"~~~</w>\": 32472,\n  \"~~~~\": 28295,\n  \"¡\": 94,\n  \"¡</w>\": 350,\n  \"¡ï¸ı\": 15113,\n  \"¡ï¸ı</w>\": 4174,\n  \"¡ľ\": 43991,\n  \"¢\": 95,\n  \"¢</w>\": 351,\n  \"£\": 96,\n  \"£</w>\": 352,\n  \"£ï¸ı</w>\": 18446,\n  \"¤\": 97,\n  \"¤</w>\": 353,\n  \"¥\": 98,\n  \"¥</w>\": 354,\n  \"¦\": 99,\n  \"¦</w>\": 355,\n  \"¦Ī</w>\": 47615,\n  \"§\": 100,\n  \"§</w>\": 356,\n  \"¨\": 101,\n  \"¨</w>\": 357,\n  \"©\": 102,\n  \"©</w>\": 358,\n  \"ª\": 103,\n  \"ª</w>\": 359,\n  \"«\": 104,\n  \"«</w>\": 360,\n  \"¬\": 105,\n  \"¬</w>\": 361,\n  \"¬ë\": 31736,\n  \"®\": 106,\n  \"®</w>\": 362,\n  \"¯\": 107,\n  \"¯</w>\": 363,\n  \"°\": 108,\n  \"°:</w>\": 21787,\n  \"°</w>\": 364,\n  \"°ï¸ı</w>\": 34777,\n  \"±\": 109,\n  \"±</w>\": 365,\n  \"±ï¸ı</w>\": 41020,\n  \"²\": 110,\n  \"²</w>\": 366,\n  \"³\": 111,\n  \"³</w>\": 367,\n  \"³ï¸ı\": 22195,\n  \"³ï¸ı</w>\": 24706,\n  \"´\": 112,\n  \"´</w>\": 368,\n  \"µ\": 113,\n  \"µ</w>\": 369,\n  \"µï¸ı</w>\": 27605,\n  \"¶\": 114,\n  \"¶</w>\": 370,\n  \"·\": 115,\n  \"·</w>\": 371,\n  \"¸\": 116,\n  \"¸</w>\": 372,\n  \"¸ë\": 19693,\n  \"¹\": 117,\n  \"¹</w>\": 373,\n  \"º\": 118,\n  \"º</w>\": 374,\n  \"»\": 119,\n  \"»</w>\": 375,\n  \"¼\": 120,\n  \"¼</w>\": 376,\n  \"½\": 121,\n  \"½</w>\": 377,\n  \"½ï¸ı</w>\": 31333,\n  \"¾\": 122,\n  \"¾</w>\": 378,\n  \"¿\": 123,\n  \"¿</w>\": 379,\n  \"À\": 124,\n  \"À</w>\": 380,\n  \"Á\": 125,\n  \"Á</w>\": 381,\n  \"Â\": 126,\n  \"Â</w>\": 382,\n  \"Â¡\": 26868,\n  \"Â¡</w>\": 10830,\n  \"Â¡Â¡</w>\": 45505,\n  \"Â¢</w>\": 41359,\n  \"Â£\": 31117,\n  \"Â£</w>\": 1950,\n  \"Â¥</w>\": 20199,\n  \"Â¨\": 19957,\n  \"Â¨Â¨\": 23089,\n  \"Â¨Â¨Â¨Â¨\": 41223,\n  \"Â©\": 31148,\n  \"Â©</w>\": 5811,\n  \"Â«</w>\": 14434,\n  \"Â®\": 30857,\n  \"Â®</w>\": 8436,\n  \"Â¯\": 38682,\n  \"Â¯</w>\": 43593,\n  \"Â¯\\\\\": 44096,\n  \"Â¯\\\\_(</w>\": 45115,\n  \"Â°\": 21305,\n  \"Â°</w>\": 6858,\n  \"Â²</w>\": 41175,\n  \"Â´\": 30560,\n  \"Â´</w>\": 12559,\n  \"Â·</w>\": 14844,\n  \"Âº</w>\": 28059,\n  \"Â»\": 31642,\n  \"Â»</w>\": 7599,\n  \"Â½</w>\": 33613,\n  \"Â¿\": 44559,\n  \"Â¿</w>\": 17133,\n  \"ÂŃ</w>\": 22618,\n  \"Ã\": 127,\n  \"Ã</w>\": 383,\n  \"Ã¡\": 7261,\n  \"Ã¡</w>\": 22229,\n  \"Ã¡n\": 38340,\n  \"Ã¡n</w>\": 21385,\n  \"Ã¢\": 26170,\n  \"Ã£\": 19339,\n  \"Ã£o</w>\": 21141,\n  \"Ã¤\": 10896,\n  \"Ã¤</w>\": 47276,\n  \"Ã¤n\": 42787,\n  \"Ã¥\": 23176,\n  \"Ã¦\": 42495,\n  \"Ã§\": 10067,\n  \"Ã§a</w>\": 22711,\n  \"Ã¨\": 12138,\n  \"Ã¨</w>\": 37761,\n  \"Ã¨re</w>\": 30272,\n  \"Ã¨s</w>\": 41210,\n  \"Ã©\": 3459,\n  \"Ã©</w>\": 4166,\n  \"Ã©al</w>\": 45251,\n  \"Ã©e</w>\": 13489,\n  \"Ã©s</w>\": 20507,\n  \"Ãª\": 27515,\n  \"Ã«\": 29526,\n  \"Ã«</w>\": 40520,\n  \"Ã®\": 48704,\n  \"Ã¯\": 35689,\n  \"Ã±\": 6445,\n  \"Ã±a</w>\": 17753,\n  \"Ã±o</w>\": 16574,\n  \"Ã±os</w>\": 40104,\n  \"Ã³\": 8891,\n  \"Ã³</w>\": 27733,\n  \"Ã³n</w>\": 13926,\n  \"Ã´\": 26815,\n  \"Ã¶\": 7255,\n  \"Ã¶</w>\": 37423,\n  \"Ã¶r\": 31762,\n  \"Ã¸\": 17483,\n  \"Ã¸</w>\": 45598,\n  \"Ãº\": 17963,\n  \"Ãº</w>\": 36019,\n  \"Ã¼\": 6522,\n  \"Ã¼</w>\": 47177,\n  \"Ã¼r\": 26132,\n  \"ÃĹ</w>\": 16165,\n  \"Ãł\": 36149,\n  \"Ãł</w>\": 21259,\n  \"ÃŃ\": 8366,\n  \"ÃŃ</w>\": 23928,\n  \"ÃŃa</w>\": 16609,\n  \"ÃŃn</w>\": 33623,\n  \"Ä\": 128,\n  \"Ä</w>\": 384,\n  \"Ä±\": 18562,\n  \"Ä±</w>\": 41901,\n  \"Äģ\": 23134,\n  \"Äĩ</w>\": 31719,\n  \"Äį\": 45414,\n  \"ÄŁ\": 26540,\n  \"Å\": 129,\n  \"Å</w>\": 385,\n  \"Å¡\": 35621,\n  \"ÅĤ\": 40419,\n  \"Åį\": 41267,\n  \"ÅŁ\": 21254,\n  \"ÅŁ</w>\": 40706,\n  \"Æ\": 130,\n  \"Æ</w>\": 386,\n  \"Ç\": 131,\n  \"Ç</w>\": 387,\n  \"È\": 132,\n  \"È</w>\": 388,\n  \"É\": 133,\n  \"É</w>\": 389,\n  \"Ê\": 134,\n  \"Ê</w>\": 390,\n  \"Ë\": 135,\n  \"Ë</w>\": 391,\n  \"Ì\": 136,\n  \"Ì</w>\": 392,\n  \"Ìĩ</w>\": 16384,\n  \"Í\": 137,\n  \"Í</w>\": 393,\n  \"Î\": 138,\n  \"Î</w>\": 394,\n  \"Ï\": 139,\n  \"Ï</w>\": 395,\n  \"Ïī</w>\": 38065,\n  \"Ð\": 140,\n  \"Ð</w>\": 396,\n  \"Ð°\": 16912,\n  \"Ð°</w>\": 27080,\n  \"Ð°Ð\": 31090,\n  \"Ð²\": 39813,\n  \"Ðµ\": 22176,\n  \"Ð¸\": 16701,\n  \"Ð¸Ð\": 29503,\n  \"Ðº\": 27152,\n  \"Ð»\": 47611,\n  \"Ð¼\": 38018,\n  \"Ð½\": 22705,\n  \"Ð¾\": 13506,\n  \"Ð¾</w>\": 29386,\n  \"Ð¾Ð\": 20978,\n  \"Ð¾Ð´\": 38416,\n  \"Ð¾ÑĤ\": 28599,\n  \"Ð¿\": 26302,\n  \"Ð¿ÑĢÐ¸\": 46321,\n  \"Ð¿ÑĢÐ¸ÑĢÐ¾Ð´Ð°</w>\": 48150,\n  \"Ñ\": 141,\n  \"Ñ</w>\": 397,\n  \"ÑĢ\": 16370,\n  \"ÑĢÐ¸\": 41092,\n  \"ÑĢÐ¾Ð´\": 47039,\n  \"ÑĢÐ¾Ð´Ð°</w>\": 47929,\n  \"Ñģ\": 23669,\n  \"ÑĤ\": 17875,\n  \"Ñĥ\": 39729,\n  \"ÑĦ\": 27993,\n  \"ÑĦÐ¾ÑĤ\": 35155,\n  \"ÑĦÐ¾ÑĤÐ¾</w>\": 38981,\n  \"Ñĭ\": 45001,\n  \"Ò\": 142,\n  \"Ò</w>\": 398,\n  \"Ó\": 143,\n  \"Ó</w>\": 399,\n  \"Ô\": 144,\n  \"Ô</w>\": 400,\n  \"Õ\": 145,\n  \"Õ</w>\": 401,\n  \"Ö\": 146,\n  \"Ö</w>\": 402,\n  \"×\": 147,\n  \"×</w>\": 403,\n  \"Ø\": 148,\n  \"Ø</w>\": 404,\n  \"Ø§\": 6042,\n  \"Ø§</w>\": 22625,\n  \"Ø§Ø\": 13189,\n  \"Ø§Ø±\": 40137,\n  \"Ø§Ù\": 8453,\n  \"Ø§ÙĦ\": 12973,\n  \"Ø§Ùħ\": 47626,\n  \"Ø§ÙĨ\": 42773,\n  \"Ø§ÙĨ</w>\": 33200,\n  \"Ø¨\": 16378,\n  \"Ø¨</w>\": 35330,\n  \"Ø©</w>\": 20915,\n  \"Øª\": 18197,\n  \"Øª</w>\": 44333,\n  \"Ø¬\": 26375,\n  \"Ø®\": 41495,\n  \"Ø¯\": 19872,\n  \"Ø¯</w>\": 35566,\n  \"Ø±\": 10948,\n  \"Ø±</w>\": 24933,\n  \"Ø±ÙĬ\": 43273,\n  \"Ø²\": 36169,\n  \"Ø³\": 17856,\n  \"Ø´\": 28770,\n  \"Øµ\": 27271,\n  \"Ø·\": 32050,\n  \"Ø¹\": 18843,\n  \"Øº\": 48510,\n  \"ØŃ\": 25722,\n  \"Ù\": 149,\n  \"Ù</w>\": 405,\n  \"Ùģ\": 24112,\n  \"ÙĤ\": 27585,\n  \"Ùĥ\": 33499,\n  \"ÙĦ\": 14251,\n  \"ÙĦ</w>\": 37899,\n  \"Ùħ\": 12986,\n  \"Ùħ</w>\": 29945,\n  \"ÙĨ\": 16655,\n  \"ÙĨ</w>\": 25386,\n  \"Ùĩ\": 34274,\n  \"Ùĩ</w>\": 31343,\n  \"ÙĪ\": 12203,\n  \"ÙĪ</w>\": 38310,\n  \"ÙĪØ±\": 48242,\n  \"ÙĬ\": 12046,\n  \"ÙĬ</w>\": 23853,\n  \"Ú\": 150,\n  \"Ú</w>\": 406,\n  \"Ú©\": 26475,\n  \"Û\": 151,\n  \"Û</w>\": 407,\n  \"Ûģ\": 40480,\n  \"ÛĮ\": 21452,\n  \"ÛĮ</w>\": 32703,\n  \"Ü\": 152,\n  \"Ü</w>\": 408,\n  \"Ý\": 153,\n  \"Ý</w>\": 409,\n  \"Þ\": 154,\n  \"Þ</w>\": 410,\n  \"ß\": 155,\n  \"ß</w>\": 411,\n  \"à\": 156,\n  \"à</w>\": 412,\n  \"à¤\": 3124,\n  \"à¤¤</w>\": 27263,\n  \"à¤¦</w>\": 29552,\n  \"à¤¨</w>\": 26090,\n  \"à¤ª</w>\": 44149,\n  \"à¤¬</w>\": 43599,\n  \"à¤®\": 48254,\n  \"à¤®</w>\": 26774,\n  \"à¤¯</w>\": 37299,\n  \"à¤°\": 39136,\n  \"à¤°</w>\": 19052,\n  \"à¤²</w>\": 30881,\n  \"à¤µ</w>\": 39545,\n  \"à¤¶</w>\": 43181,\n  \"à¤¸</w>\": 28505,\n  \"à¤¹</w>\": 29446,\n  \"à¤¾\": 37973,\n  \"à¤¾</w>\": 13343,\n  \"à¤¿</w>\": 26721,\n  \"à¤Ĥ</w>\": 30833,\n  \"à¤ķ</w>\": 22067,\n  \"à¤Ĺ</w>\": 42598,\n  \"à¤ľ</w>\": 39561,\n  \"à¥\": 7410,\n  \"à¥Ģ\": 45791,\n  \"à¥Ģ</w>\": 25751,\n  \"à¥ģ</w>\": 39653,\n  \"à¥ĩ\": 48612,\n  \"à¥ĩ</w>\": 25130,\n  \"à¥ĭ</w>\": 34452,\n  \"à¥į</w>\": 19389,\n  \"à¦\": 11322,\n  \"à¦¾</w>\": 41532,\n  \"à§\": 26339,\n  \"à¨\": 15741,\n  \"à©\": 32086,\n  \"àª\": 22990,\n  \"à«\": 48347,\n  \"à¬\": 32791,\n  \"à®\": 6022,\n  \"à®¤</w>\": 34691,\n  \"à®©</w>\": 43394,\n  \"à®ª</w>\": 47388,\n  \"à®®</w>\": 35463,\n  \"à®°</w>\": 43270,\n  \"à®²</w>\": 47705,\n  \"à®¾</w>\": 32831,\n  \"à®¿</w>\": 27126,\n  \"à®ķ</w>\": 36168,\n  \"à®Ł</w>\": 45263,\n  \"à¯\": 11259,\n  \"à¯ģ</w>\": 33115,\n  \"à¯į</w>\": 16631,\n  \"à°\": 12100,\n  \"à±\": 23550,\n  \"à±į</w>\": 46098,\n  \"à²\": 9992,\n  \"à²¿</w>\": 47797,\n  \"à³\": 20745,\n  \"à³į</w>\": 36148,\n  \"à´\": 15418,\n  \"àµ\": 27392,\n  \"àµį</w>\": 45266,\n  \"à¶\": 29881,\n  \"à·\": 30766,\n  \"à¸\": 1777,\n  \"à¸¡\": 26137,\n  \"à¸¡</w>\": 29570,\n  \"à¸¢\": 27241,\n  \"à¸¢</w>\": 33091,\n  \"à¸£\": 32225,\n  \"à¸£</w>\": 27331,\n  \"à¸¥\": 34696,\n  \"à¸¥</w>\": 32746,\n  \"à¸§\": 26990,\n  \"à¸§</w>\": 30245,\n  \"à¸ª\": 37883,\n  \"à¸ª</w>\": 35737,\n  \"à¸«\": 33064,\n  \"à¸°\": 43920,\n  \"à¸°</w>\": 49234,\n  \"à¸±</w>\": 14978,\n  \"à¸²\": 11529,\n  \"à¸²</w>\": 38476,\n  \"à¸²à¸\": 12330,\n  \"à¸´</w>\": 17092,\n  \"à¸µ\": 22421,\n  \"à¸µ</w>\": 20278,\n  \"à¸µà¹Ī</w>\": 31511,\n  \"à¸·</w>\": 47991,\n  \"à¸¸</w>\": 30524,\n  \"à¸¹</w>\": 35273,\n  \"à¸ģ</w>\": 30767,\n  \"à¸ģà¸\": 31474,\n  \"à¸Ħ</w>\": 31757,\n  \"à¸Ħà¸\": 39628,\n  \"à¸ĩ\": 24603,\n  \"à¸ĩ</w>\": 33382,\n  \"à¸Ī\": 47608,\n  \"à¸Ĭ</w>\": 46324,\n  \"à¸Ķ\": 31107,\n  \"à¸Ķ</w>\": 38825,\n  \"à¸ķ\": 40273,\n  \"à¸ķ</w>\": 41108,\n  \"à¸Ĺ</w>\": 36171,\n  \"à¸Ļ\": 17474,\n  \"à¸Ļ</w>\": 17639,\n  \"à¸Ļà¸\": 23121,\n  \"à¸ļ\": 33859,\n  \"à¸ļ</w>\": 39616,\n  \"à¸ŀ</w>\": 48171,\n  \"à¸Ń\": 13398,\n  \"à¸Ń</w>\": 32818,\n  \"à¸Ńà¸\": 14649,\n  \"à¸Ńà¸ĩ\": 46622,\n  \"à¹\": 4484,\n  \"à¹Ģ\": 13729,\n  \"à¹Ģà¸\": 14076,\n  \"à¹ģà¸\": 23916,\n  \"à¹Ĥ\": 33118,\n  \"à¹ĥ\": 40962,\n  \"à¹Ħà¸\": 31718,\n  \"à¹ĩ</w>\": 38699,\n  \"à¹Ī</w>\": 11722,\n  \"à¹ī</w>\": 13123,\n  \"à¹Į</w>\": 28353,\n  \"à¼\": 46186,\n  \"à½\": 39219,\n  \"á\": 157,\n  \"á</w>\": 413,\n  \"á´\": 19036,\n  \"áµ\": 17330,\n  \"áĢ\": 45932,\n  \"áĥ\": 24829,\n  \"áĥ¦</w>\": 32193,\n  \"â\": 158,\n  \"â</w>\": 414,\n  \"â¤\": 25087,\n  \"â¤µï¸ı</w>\": 36026,\n  \"â¬\": 7930,\n  \"â¬ħï¸ı</w>\": 42111,\n  \"â¬Ĩ\": 27718,\n  \"â¬Ĩï¸ı</w>\": 32798,\n  \"â¬ĩ\": 10917,\n  \"â¬ĩ</w>\": 39370,\n  \"â¬ĩï¸ı\": 25621,\n  \"â¬ĩï¸ı</w>\": 13984,\n  \"â¬ĩï¸ıâ¬ĩï¸ı\": 40159,\n  \"âĢ\": 728,\n  \"âĢ¢\": 9485,\n  \"âĢ¢</w>\": 2701,\n  \"âĢ¢âĢ¢\": 15006,\n  \"âĢ¢âĢ¢</w>\": 47575,\n  \"âĢ¢âĢ¢âĢ¢âĢ¢\": 27502,\n  \"âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢\": 48630,\n  \"âĢ¦\": 7095,\n  \"âĢ¦\\\"</w>\": 20215,\n  \"âĢ¦..</w>\": 47779,\n  \"âĢ¦.</w>\": 18615,\n  \"âĢ¦/</w>\": 29842,\n  \"âĢ¦</w>\": 959,\n  \"âĢ¦âĢ¦</w>\": 40066,\n  \"âĢ²</w>\": 32633,\n  \"âĢ³</w>\": 25061,\n  \"âĢ¼\": 6578,\n  \"âĢ¼ï¸ı\": 15622,\n  \"âĢ¼ï¸ı</w>\": 8310,\n  \"âĢ¼ï¸ıâĢ¼ï¸ı</w>\": 33218,\n  \"âĢĭ\": 17086,\n  \"âĢĭ</w>\": 9844,\n  \"âĢį\": 4244,\n  \"âĢįâĻ\": 5177,\n  \"âĢįâĻĢï¸ı\": 18897,\n  \"âĢįâĻĢï¸ı</w>\": 9605,\n  \"âĢįâĻĤ\": 8832,\n  \"âĢįâĻĤï¸ı\": 21779,\n  \"âĢįâĻĤï¸ı</w>\": 10613,\n  \"âĢİ</w>\": 31001,\n  \"âĢĲ</w>\": 34512,\n  \"âĢĵ\": 21070,\n  \"âĢĵ</w>\": 1224,\n  \"âĢĶ\": 6718,\n  \"âĢĶ</w>\": 2005,\n  \"âĢĶ></w>\": 26341,\n  \"âĢĶ@</w>\": 28470,\n  \"âĢĶâĢĶ\": 10037,\n  \"âĢĶâĢĶ</w>\": 44800,\n  \"âĢĶâĢĶâĢĶâĢĶ\": 17797,\n  \"âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ\": 34432,\n  \"âĢķ</w>\": 14236,\n  \"âģ\": 1667,\n  \"âģ£\": 31089,\n  \"âģ£</w>\": 16845,\n  \"âģ¦\": 2773,\n  \"âģ¦</w>\": 34855,\n  \"âģ¦@</w>\": 2859,\n  \"âģ¦âģ¦@</w>\": 27783,\n  \"âģ©\": 20097,\n  \"âģ©,</w>\": 48749,\n  \"âģ©.</w>\": 35777,\n  \"âģ©</w>\": 2918,\n  \"âģīï¸ı</w>\": 46534,\n  \"âģł\": 23881,\n  \"âģł</w>\": 13503,\n  \"âģłâģł</w>\": 33488,\n  \"âĤ\": 5227,\n  \"âĤ¬\": 34919,\n  \"âĤ¬</w>\": 6309,\n  \"âĤ¹</w>\": 21777,\n  \"âĥ\": 2805,\n  \"âĥ£\": 11250,\n  \"âĥ£</w>\": 3076,\n  \"âĥ£@</w>\": 48291,\n  \"âĦ\": 8604,\n  \"âĦ¢\": 29438,\n  \"âĦ¢</w>\": 11675,\n  \"âĦ¹</w>\": 45462,\n  \"âĨ\": 6059,\n  \"âĨĴ</w>\": 7481,\n  \"âĨĵ</w>\": 41603,\n  \"âĩ\": 27228,\n  \"âĪ\": 17788,\n  \"âī\": 22684,\n  \"âīĪ</w>\": 45451,\n  \"âĮ\": 17848,\n  \"âĮļ\": 31301,\n  \"âĮļï¸ı</w>\": 35931,\n  \"âı\": 7960,\n  \"âı©</w>\": 40847,\n  \"âı°</w>\": 12714,\n  \"âı±</w>\": 33149,\n  \"âı³</w>\": 47617,\n  \"âĵ\": 27400,\n  \"âĶ\": 13389,\n  \"âĶĢ\": 45139,\n  \"âĶģ\": 42022,\n  \"âķ\": 17027,\n  \"âķĲ\": 48039,\n  \"âĸ\": 4168,\n  \"âĸª\": 21203,\n  \"âĸª</w>\": 36628,\n  \"âĸªï¸ı</w>\": 24974,\n  \"âĸ«\": 39478,\n  \"âĸ¬\": 33798,\n  \"âĸ¬âĸ¬\": 36975,\n  \"âĸ¶\": 12509,\n  \"âĸ¶</w>\": 21126,\n  \"âĸ¶ï¸ı</w>\": 14442,\n  \"âĸº\": 46061,\n  \"âĸº</w>\": 12086,\n  \"âĸ½\": 45634,\n  \"âĸł</w>\": 36791,\n  \"âĹ\": 9323,\n  \"âĹĨ</w>\": 48961,\n  \"âĹı</w>\": 26999,\n  \"âĺ\": 1741,\n  \"âĺ®</w>\": 45851,\n  \"âĺ¹\": 28811,\n  \"âĺ¹ï¸ı</w>\": 39605,\n  \"âĺº\": 5010,\n  \"âĺº</w>\": 8703,\n  \"âĺºâĺº</w>\": 46051,\n  \"âĺºï¸ı\": 11506,\n  \"âĺºï¸ı</w>\": 7779,\n  \"âĺºï¸ıâĺºï¸ı</w>\": 41315,\n  \"âĺ¼</w>\": 38877,\n  \"âĺĢ\": 32146,\n  \"âĺĢ</w>\": 22242,\n  \"âĺĢï¸ı\": 12817,\n  \"âĺĢï¸ı</w>\": 8219,\n  \"âĺĢï¸ıâĺĢï¸ı\": 44550,\n  \"âĺģ\": 25195,\n  \"âĺģï¸ı</w>\": 35197,\n  \"âĺĥ\": 38972,\n  \"âĺħ\": 9339,\n  \"âĺħ</w>\": 10643,\n  \"âĺħâĺħ\": 12681,\n  \"âĺħâĺħ</w>\": 36644,\n  \"âĺħâĺħâĺħâĺħ\": 34431,\n  \"âĺħâĺħâĺħâĺħ</w>\": 44034,\n  \"âĺħâĺħâĺħâĺħâĺħ</w>\": 45984,\n  \"âĺĨ\": 23941,\n  \"âĺĨ</w>\": 13439,\n  \"âĺİ\": 24045,\n  \"âĺİ</w>\": 45493,\n  \"âĺİï¸ı</w>\": 27219,\n  \"âĺĳ\": 20983,\n  \"âĺĳ</w>\": 42300,\n  \"âĺĳï¸ı</w>\": 22291,\n  \"âĺĶï¸ı</w>\": 31238,\n  \"âĺķ\": 11454,\n  \"âĺķ</w>\": 26561,\n  \"âĺķï¸ı\": 25839,\n  \"âĺķï¸ı</w>\": 15499,\n  \"âĺĺ\": 23483,\n  \"âĺĺï¸ı</w>\": 31454,\n  \"âĺĿ\": 21982,\n  \"âĺĿï¸ı</w>\": 38891,\n  \"âĺŀ</w>\": 31255,\n  \"âĺłï¸ı</w>\": 34672,\n  \"âĻ\": 1548,\n  \"âĻ¡\": 11091,\n  \"âĻ¡</w>\": 6251,\n  \"âĻ¡âĻ¡\": 22360,\n  \"âĻ¡âĻ¡</w>\": 34267,\n  \"âĻ¡âĻ¡âĻ¡</w>\": 36611,\n  \"âĻ¤</w>\": 47435,\n  \"âĻ¥\": 4622,\n  \"âĻ¥</w>\": 3405,\n  \"âĻ¥âĻ¥\": 12975,\n  \"âĻ¥âĻ¥</w>\": 19604,\n  \"âĻ¥âĻ¥âĻ¥</w>\": 23255,\n  \"âĻ¥âĻ¥âĻ¥âĻ¥\": 49020,\n  \"âĻ¥ï¸ı\": 17774,\n  \"âĻ¥ï¸ı</w>\": 10561,\n  \"âĻ¥ï¸ıâĻ¥ï¸ı\": 40309,\n  \"âĻ¦\": 32376,\n  \"âĻ¦</w>\": 47547,\n  \"âĻ©\": 30339,\n  \"âĻ©âĻ«</w>\": 31636,\n  \"âĻª\": 27364,\n  \"âĻª</w>\": 12382,\n  \"âĻ«\": 39217,\n  \"âĻ«</w>\": 10814,\n  \"âĻ¬</w>\": 24753,\n  \"âĻ»\": 39611,\n  \"âĻ»ï¸ı</w>\": 46075,\n  \"âļ\": 2234,\n  \"âļ¡\": 40098,\n  \"âļ¡</w>\": 20712,\n  \"âļ¡ï¸ı\": 19500,\n  \"âļ¡ï¸ı</w>\": 11605,\n  \"âļ¡ï¸ıâļ¡ï¸ı</w>\": 45922,\n  \"âļª\": 11922,\n  \"âļª</w>\": 36373,\n  \"âļªï¸ı\": 22251,\n  \"âļªï¸ı</w>\": 17885,\n  \"âļ«\": 15374,\n  \"âļ«ï¸ı\": 26529,\n  \"âļ«ï¸ı</w>\": 24649,\n  \"âļ½\": 4867,\n  \"âļ½</w>\": 13173,\n  \"âļ½âļ½\": 43259,\n  \"âļ½ï¸ı\": 11342,\n  \"âļ½ï¸ı</w>\": 6768,\n  \"âļ½ï¸ıâļ½ï¸ı\": 30358,\n  \"âļ½ï¸ıâļ½ï¸ı</w>\": 44148,\n  \"âļ¾\": 11314,\n  \"âļ¾</w>\": 34717,\n  \"âļ¾ï¸ı\": 24727,\n  \"âļ¾ï¸ı</w>\": 14858,\n  \"âļĵ\": 23522,\n  \"âļĵï¸ı</w>\": 35299,\n  \"âļĶï¸ı</w>\": 29361,\n  \"âļľ\": 47491,\n  \"âļł</w>\": 39203,\n  \"âļłï¸ı\": 40966,\n  \"âļłï¸ı</w>\": 15596,\n  \"âĽ\": 7956,\n  \"âĽ³ï¸ı</w>\": 29204,\n  \"âĽĦ\": 30668,\n  \"âĽĦï¸ı</w>\": 45465,\n  \"âľ\": 1508,\n  \"âľ¨\": 7181,\n  \"âľ¨</w>\": 3531,\n  \"âľ¨âľ¨\": 35174,\n  \"âľ¨âľ¨</w>\": 21985,\n  \"âľ¨âľ¨âľ¨</w>\": 39424,\n  \"âľĤ\": 38602,\n  \"âľħ\": 29544,\n  \"âľħ</w>\": 5564,\n  \"âľĪ\": 10682,\n  \"âľĪ</w>\": 30712,\n  \"âľĪï¸ı\": 26176,\n  \"âľĪï¸ı</w>\": 13413,\n  \"âľĬ\": 12392,\n  \"âľĬ</w>\": 17819,\n  \"âľĬðŁı½</w>\": 48547,\n  \"âľĬðŁı¾</w>\": 41185,\n  \"âľĭ\": 39383,\n  \"âľĭ</w>\": 30239,\n  \"âľĮ\": 6419,\n  \"âľĮ</w>\": 12656,\n  \"âľĮï¸ı\": 21906,\n  \"âľĮï¸ı</w>\": 12239,\n  \"âľĮðŁı»</w>\": 30538,\n  \"âľĮðŁı¼</w>\": 30588,\n  \"âľį\": 20872,\n  \"âľįï¸ı</w>\": 30888,\n  \"âľı\": 32574,\n  \"âľıï¸ı</w>\": 40724,\n  \"âľĵ</w>\": 36700,\n  \"âľĶ\": 47200,\n  \"âľĶ</w>\": 13749,\n  \"âľĶï¸ı\": 40544,\n  \"âľĶï¸ı</w>\": 9191,\n  \"âľĸï¸ı</w>\": 44133,\n  \"âľĿ\": 42220,\n  \"âĿ\": 1045,\n  \"âĿ£\": 37007,\n  \"âĿ£</w>\": 25623,\n  \"âĿ£ï¸ı</w>\": 25240,\n  \"âĿ¤\": 1266,\n  \"âĿ¤</w>\": 2720,\n  \"âĿ¤âĿ¤\": 9033,\n  \"âĿ¤âĿ¤</w>\": 14058,\n  \"âĿ¤âĿ¤âĿ¤</w>\": 16708,\n  \"âĿ¤âĿ¤âĿ¤âĿ¤\": 37918,\n  \"âĿ¤âĿ¤âĿ¤âĿ¤</w>\": 43970,\n  \"âĿ¤ï¸ı\": 2626,\n  \"âĿ¤ï¸ı#</w>\": 30281,\n  \"âĿ¤ï¸ı.</w>\": 45326,\n  \"âĿ¤ï¸ı</w>\": 1752,\n  \"âĿ¤ï¸ı@</w>\": 31187,\n  \"âĿ¤ï¸ıâĿ¤ï¸ı\": 6713,\n  \"âĿ¤ï¸ıâĿ¤ï¸ı</w>\": 10363,\n  \"âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı</w>\": 12282,\n  \"âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı\": 39167,\n  \"âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı</w>\": 29880,\n  \"âĿ¤ï¸ıðŁĴĻ</w>\": 37380,\n  \"âĿ¤ï¸ıðŁĺį</w>\": 37272,\n  \"âĿ¤ï¸ıðŁĺĺ</w>\": 41800,\n  \"âĿ¤ðŁĺį</w>\": 49120,\n  \"âĿ¥</w>\": 36914,\n  \"âĿĦ\": 8501,\n  \"âĿĦ</w>\": 30494,\n  \"âĿĦï¸ı\": 16834,\n  \"âĿĦï¸ı</w>\": 12402,\n  \"âĿĦï¸ıâĿĦï¸ı\": 41626,\n  \"âĿĮ\": 44485,\n  \"âĿĮ</w>\": 17975,\n  \"âĿĵ</w>\": 29791,\n  \"âĿĹ\": 12868,\n  \"âĿĹ</w>\": 29079,\n  \"âĿĹï¸ı\": 28642,\n  \"âĿĹï¸ı</w>\": 17391,\n  \"âĿĿ</w>\": 46951,\n  \"âŀ\": 3257,\n  \"âŀ¡</w>\": 12854,\n  \"âŀ¡ï¸ı\": 31860,\n  \"âŀ¡ï¸ı</w>\": 4956,\n  \"âŀ¤</w>\": 18651,\n  \"âŀķ</w>\": 46526,\n  \"âŀĸ\": 21327,\n  \"âŀĸ</w>\": 34902,\n  \"âŀĸâŀĸ\": 23316,\n  \"âŀĸâŀĸâŀĸâŀĸ\": 40401,\n  \"âŀľ</w>\": 23775,\n  \"âł\": 5689,\n  \"âłĢ\": 9691,\n  \"âłĢ</w>\": 8621,\n  \"âłĢâłĢ\": 11466,\n  \"âłĢâłĢ</w>\": 39092,\n  \"âłĢâłĢâłĢâłĢ\": 20976,\n  \"âłĢâłĢâłĢâłĢâłĢâłĢâłĢâłĢ\": 46063,\n  \"âŃ\": 5527,\n  \"âŃĲ\": 6410,\n  \"âŃĲ</w>\": 19012,\n  \"âŃĲâŃĲ\": 32663,\n  \"âŃĲï¸ı\": 12427,\n  \"âŃĲï¸ı</w>\": 10251,\n  \"âŃĲï¸ıâŃĲï¸ı\": 18640,\n  \"âŃĲï¸ıâŃĲï¸ıâŃĲï¸ı</w>\": 40746,\n  \"ã\": 159,\n  \"ã</w>\": 415,\n  \"ãĢ\": 4092,\n  \"ãĢģ</w>\": 45262,\n  \"ãĢĤ\": 38060,\n  \"ãĢĤ</w>\": 38000,\n  \"ãĢĬ</w>\": 39920,\n  \"ãĢĭ</w>\": 32898,\n  \"ãĢĮ</w>\": 18116,\n  \"ãĢį</w>\": 19149,\n  \"ãĢİ</w>\": 26947,\n  \"ãĢı</w>\": 30293,\n  \"ãĢĲ</w>\": 12534,\n  \"ãĢĳ</w>\": 12990,\n  \"ãĢľ</w>\": 39581,\n  \"ãģ\": 4813,\n  \"ãģ¦\": 48029,\n  \"ãģ¨\": 34671,\n  \"ãģ¨ç¹ĭãģ\": 47310,\n  \"ãģ¨ç¹ĭãģĮãĤĬãģŁãģĦ</w>\": 48290,\n  \"ãģª\": 29104,\n  \"ãģ®\": 21575,\n  \"ãģ·\": 44130,\n  \"ãģĦ\": 33523,\n  \"ãģĦ</w>\": 38850,\n  \"ãģĨ\": 44235,\n  \"ãģį\": 42184,\n  \"ãĤ\": 3909,\n  \"ãĤ¢\": 26560,\n  \"ãĤ¤\": 19319,\n  \"ãĤ¤ãĥ\": 36294,\n  \"ãĤ«\": 37367,\n  \"ãĤ¯\": 31574,\n  \"ãĤ·\": 37665,\n  \"ãĤ¸\": 32234,\n  \"ãĤ¸ãĥ\": 43491,\n  \"ãĤ¹\": 22694,\n  \"ãĤ¹</w>\": 39220,\n  \"ãĤ¹ãĥ\": 32421,\n  \"ãĤ¿\": 34941,\n  \"ãĤĬãģ\": 40500,\n  \"ãĤĮ</w>\": 45211,\n  \"ãĤŃ\": 47121,\n  \"ãĥ\": 2429,\n  \"ãĥ©\": 23007,\n  \"ãĥª\": 32115,\n  \"ãĥ«\": 33257,\n  \"ãĥ¬\": 32965,\n  \"ãĥ³\": 17671,\n  \"ãĥ³</w>\": 26875,\n  \"ãĥ³ãĤ\": 45105,\n  \"ãĥ³ãĥ\": 25914,\n  \"ãĥ»\": 8415,\n  \"ãĥ»</w>\": 11158,\n  \"ãĥ»ãĥ»\": 13949,\n  \"ãĥ»ãĥ»ãĥ»</w>\": 14234,\n  \"ãĥ¼\": 13457,\n  \"ãĥ¼</w>\": 30391,\n  \"ãĥ¼ãĥ\": 18584,\n  \"ãĥĥ\": 28902,\n  \"ãĥĦ</w>\": 32173,\n  \"ãĥĪ\": 42384,\n  \"ãĥİ</w>\": 39967,\n  \"ãĥķãĤ\": 33371,\n  \"ãĥŀ\": 48924,\n  \"ãĥŃ\": 35827,\n  \"ãħ\": 5947,\n  \"ãħ¤\": 21096,\n  \"ãħ¤ãħ¤\": 22583,\n  \"ãħ¤ãħ¤ãħ¤ãħ¤\": 39329,\n  \"ãħĭ\": 13052,\n  \"ãħĭ</w>\": 25108,\n  \"ãħĭãħĭ\": 16604,\n  \"ãħĭãħĭ</w>\": 42581,\n  \"ãħĭãħĭãħĭ</w>\": 46407,\n  \"ãħĭãħĭãħĭãħĭ\": 39362,\n  \"ãħł\": 16089,\n  \"ãħł</w>\": 25781,\n  \"ãħłãħł\": 22021,\n  \"ãħłãħł</w>\": 34398,\n  \"ãħłãħłãħłãħł\": 47028,\n  \"ä\": 160,\n  \"ä</w>\": 416,\n  \"ä¸\": 19759,\n  \"ä¹\": 41854,\n  \"äº\": 21078,\n  \"äºº\": 36839,\n  \"ä»\": 37743,\n  \"ä½\": 47466,\n  \"å\": 161,\n  \"å</w>\": 417,\n  \"å¤\": 23170,\n  \"å¥\": 29290,\n  \"å®\": 27047,\n  \"å°\": 34720,\n  \"å±\": 46096,\n  \"å¸\": 42021,\n  \"å¹\": 38780,\n  \"åħ\": 34314,\n  \"åĨ\": 27972,\n  \"åĨĻ\": 44653,\n  \"åĪ\": 42748,\n  \"åĭ\": 47505,\n  \"åı\": 34517,\n  \"åĲ\": 41673,\n  \"åĽ\": 39027,\n  \"åľ\": 37746,\n  \"åŃ\": 35751,\n  \"æ\": 162,\n  \"æ</w>\": 418,\n  \"æĸ\": 29032,\n  \"æĹ\": 22265,\n  \"æĹ¥\": 39121,\n  \"æĹ¥</w>\": 37156,\n  \"æĺ\": 42891,\n  \"æĻ\": 48132,\n  \"æľ\": 19277,\n  \"æľ¬\": 44353,\n  \"æĿ\": 27667,\n  \"æĿ±\": 48338,\n  \"ç\": 163,\n  \"ç</w>\": 419,\n  \"ç¥\": 26369,\n  \"ç¥Ń</w>\": 42557,\n  \"çµ\": 37810,\n  \"ç¹\": 43431,\n  \"ç¹ĭãģ\": 45930,\n  \"çĶ\": 20211,\n  \"çĶŁ\": 33375,\n  \"çľ\": 33440,\n  \"çľŁ\": 41570,\n  \"è\": 164,\n  \"è</w>\": 420,\n  \"èª\": 34002,\n  \"èªķ\": 41293,\n  \"é\": 165,\n  \"é</w>\": 421,\n  \"éģ\": 44854,\n  \"éĩ\": 38283,\n  \"ê\": 166,\n  \"ê</w>\": 422,\n  \"ê°\": 21122,\n  \"ê°ĵ\": 41076,\n  \"ê°ĵìĦ¸ë¸Ĳ</w>\": 41689,\n  \"ê°ķ\": 45758,\n  \"ê²\": 35555,\n  \"ê³\": 36216,\n  \"êµ\": 31871,\n  \"ê·\": 42680,\n  \"ê¸\": 32495,\n  \"ê¹\": 24531,\n  \"ê¹Ģ\": 25203,\n  \"ë\": 167,\n  \"ë</w>\": 423,\n  \"ë¦\": 24621,\n  \"ë¦¬\": 47649,\n  \"ë§\": 28024,\n  \"ë§Ī\": 40027,\n  \"ëª\": 36311,\n  \"ë¯\": 19528,\n  \"ë¯¼\": 34442,\n  \"ë¯¼</w>\": 44632,\n  \"ë°\": 15810,\n  \"ë°©\": 23273,\n  \"ë°©íĥ\": 25081,\n  \"ë°©íĥĦ\": 25641,\n  \"ë°©íĥĦìĨĮëħĦëĭ\": 26068,\n  \"ë°©íĥĦìĨĮëħĦëĭ¨</w>\": 27129,\n  \"ë°ķ\": 40988,\n  \"ë²\": 48267,\n  \"ë³\": 44693,\n  \"ë¹\": 24193,\n  \"ëĤ\": 27252,\n  \"ëĤĺ\": 48484,\n  \"ëĭ\": 13094,\n  \"ëĭ¤\": 46680,\n  \"ëĭĪ\": 33708,\n  \"ëį\": 45543,\n  \"ëı\": 31972,\n  \"ëĵ\": 30850,\n  \"ëĿ\": 44317,\n  \"ì\": 168,\n  \"ì</w>\": 424,\n  \"ì£\": 39856,\n  \"ì£¼\": 45161,\n  \"ì¤\": 31153,\n  \"ì§\": 16279,\n  \"ì§Ģ\": 28836,\n  \"ì§Ħ</w>\": 38890,\n  \"ì°\": 40742,\n  \"ì¶\": 42476,\n  \"ì¶ķ\": 46403,\n  \"ì¶ķíķĺ\": 47866,\n  \"ì¹\": 45088,\n  \"ìĤ\": 31061,\n  \"ìĥ\": 30587,\n  \"ìĥĿ\": 47858,\n  \"ìĦ\": 15074,\n  \"ìĦ¸ë\": 29254,\n  \"ìĦ¸ë¸\": 29658,\n  \"ìĦ¸ë¸Ĳ</w>\": 41415,\n  \"ìĨ\": 15115,\n  \"ìĨĮë\": 20515,\n  \"ìĨĮëħ\": 21391,\n  \"ìĨĮëħĦëĭ\": 25887,\n  \"ìĪ\": 32757,\n  \"ìĬ\": 12125,\n  \"ìĬ¤\": 20305,\n  \"ìĬ¤</w>\": 23829,\n  \"ìĭ\": 23924,\n  \"ìķ\": 16071,\n  \"ìķĦ\": 23233,\n  \"ìĸ\": 31625,\n  \"ìĹ\": 13252,\n  \"ìĹĲ\": 37622,\n  \"ìĹĳ\": 31036,\n  \"ìĹĳìĨ\": 42763,\n  \"ìĹĳìĨĮ</w>\": 45606,\n  \"ìĺ\": 21144,\n  \"ìĻ\": 39405,\n  \"ìļ\": 18541,\n  \"ìļ°\": 38415,\n  \"ìļ°</w>\": 49344,\n  \"ìĽ\": 22543,\n  \"ìĽĲ</w>\": 36495,\n  \"ìľ\": 20909,\n  \"ìľł\": 42890,\n  \"ìĿ\": 8276,\n  \"ìĿ´\": 12286,\n  \"ìĿ´</w>\": 34746,\n  \"ìĿ´ì\": 37590,\n  \"ìĿ¼\": 43406,\n  \"ìŀ\": 20849,\n  \"ìł\": 20580,\n  \"ìłķ\": 34725,\n  \"í\": 169,\n  \"í</w>\": 425,\n  \"íģ\": 35641,\n  \"íģ¬</w>\": 45832,\n  \"íĤ\": 43565,\n  \"íĥ\": 15012,\n  \"íĥĢ\": 41126,\n  \"íĥľ\": 37663,\n  \"íĬ\": 23215,\n  \"íĬ¸\": 48974,\n  \"íĬ¸</w>\": 39820,\n  \"íĭ\": 34350,\n  \"íĶ\": 29450,\n  \"íķ\": 15197,\n  \"íķ´</w>\": 35286,\n  \"íķĺ\": 33992,\n  \"íĺ\": 15962,\n  \"íĺ¸</w>\": 39657,\n  \"íĺĦ</w>\": 34645,\n  \"íĻ\": 31882,\n  \"î\": 170,\n  \"î</w>\": 426,\n  \"îĢ\": 36288,\n  \"îĦ\": 35368,\n  \"îĮ\": 41006,\n  \"îĲ\": 16929,\n  \"îĲĴ\": 40100,\n  \"ï\": 171,\n  \"ï</w>\": 427,\n  \"ï¸\": 842,\n  \"ï¸İ</w>\": 24029,\n  \"ï¸ı\": 1392,\n  \"ï¸ı#</w>\": 46997,\n  \"ï¸ı:</w>\": 32604,\n  \"ï¸ı</w>\": 1001,\n  \"ï¸ı@</w>\": 34600,\n  \"ï¸ıâĥ£\": 17394,\n  \"ï¸ıâĥ£-</w>\": 40376,\n  \"ï¸ıâĥ£</w>\": 4603,\n  \"ï¿\": 27850,\n  \"ï¿½\": 47356,\n  \"ï¿½</w>\": 39802,\n  \"ð\": 172,\n  \"ð</w>\": 428,\n  \"ðĿ\": 6874,\n  \"ðĿĲ\": 15889,\n  \"ðĿĳ\": 43794,\n  \"ðĿĴ\": 43387,\n  \"ðĿĵ\": 47110,\n  \"ðĿĹ\": 18865,\n  \"ðĿĺ\": 26109,\n  \"ðĿĻ\": 29415,\n  \"ðŁ\": 558,\n  \"ðŁ¤\": 1793,\n  \"ðŁ¤£\": 9665,\n  \"ðŁ¤£</w>\": 9909,\n  \"ðŁ¤£ðŁ¤£\": 16430,\n  \"ðŁ¤£ðŁ¤£</w>\": 31009,\n  \"ðŁ¤£ðŁ¤£ðŁ¤£</w>\": 32262,\n  \"ðŁ¤¤\": 39550,\n  \"ðŁ¤¤</w>\": 26759,\n  \"ðŁ¤¦\": 17186,\n  \"ðŁ¤§</w>\": 40983,\n  \"ðŁ¤©\": 27351,\n  \"ðŁ¤©</w>\": 16074,\n  \"ðŁ¤ª\": 44230,\n  \"ðŁ¤ª</w>\": 24920,\n  \"ðŁ¤«</w>\": 47671,\n  \"ðŁ¤¯</w>\": 37595,\n  \"ðŁ¤·\": 13185,\n  \"ðŁ¤·ðŁı»âĢįâĻĢï¸ı</w>\": 46770,\n  \"ðŁ¤ĳ</w>\": 34801,\n  \"ðŁ¤ĵ\": 36580,\n  \"ðŁ¤ĵ</w>\": 18928,\n  \"ðŁ¤Ķ\": 12706,\n  \"ðŁ¤Ķ</w>\": 6497,\n  \"ðŁ¤ĶðŁ¤Ķ</w>\": 28490,\n  \"ðŁ¤ĶðŁ¤ĶðŁ¤Ķ</w>\": 43361,\n  \"ðŁ¤ĸ</w>\": 46146,\n  \"ðŁ¤Ĺ\": 16646,\n  \"ðŁ¤Ĺ</w>\": 10465,\n  \"ðŁ¤ĹðŁ¤Ĺ</w>\": 44321,\n  \"ðŁ¤ĺ\": 10623,\n  \"ðŁ¤ĺ</w>\": 17288,\n  \"ðŁ¤ĺðŁı»\": 46449,\n  \"ðŁ¤ĺðŁı»</w>\": 30891,\n  \"ðŁ¤ĺðŁı¼</w>\": 31458,\n  \"ðŁ¤ĺðŁı½</w>\": 49362,\n  \"ðŁ¤Ļ\": 23800,\n  \"ðŁ¤Ļ</w>\": 39101,\n  \"ðŁ¤Ŀ</w>\": 35242,\n  \"ðŁ¤ŀ\": 29463,\n  \"ðŁ¤ŀ</w>\": 38597,\n  \"ðŁ¤Ł\": 48509,\n  \"ðŁ¤ł</w>\": 36737,\n  \"ðŁ¤Ń</w>\": 47289,\n  \"ðŁ¥\": 4156,\n  \"ðŁ¥°\": 29246,\n  \"ðŁ¥°</w>\": 17597,\n  \"ðŁ¥³\": 45823,\n  \"ðŁ¥³</w>\": 28055,\n  \"ðŁ¥º\": 43380,\n  \"ðŁ¥º</w>\": 36858,\n  \"ðŁ¥Ĥ\": 43805,\n  \"ðŁ¥Ĥ</w>\": 25212,\n  \"ðŁ¥ĥ</w>\": 47790,\n  \"ðŁ¥ĩ\": 34372,\n  \"ðŁ¥ĩ</w>\": 20069,\n  \"ðŁ¥Ī</w>\": 35858,\n  \"ðŁ¥ī</w>\": 36782,\n  \"ðŁ¥Ĭ</w>\": 29275,\n  \"ðŁ¦\": 6040,\n  \"ðŁ¦ģ\": 36367,\n  \"ðŁ¦ģ</w>\": 26056,\n  \"ðŁ¦ĥ</w>\": 40184,\n  \"ðŁ¦Ħ</w>\": 37659,\n  \"ðŁ¦ħ</w>\": 28800,\n  \"ðŁ¦Ī</w>\": 48984,\n  \"ðŁ¦ĭ\": 49325,\n  \"ðŁ¦ĭ</w>\": 28985,\n  \"ðŁ§\": 8792,\n  \"ðŁ§¡\": 30996,\n  \"ðŁ§¡</w>\": 24578,\n  \"ðŁ§Ĳ</w>\": 33549,\n  \"ðŁħ\": 22010,\n  \"ðŁĨ\": 9536,\n  \"ðŁĨķ</w>\": 34956,\n  \"ðŁĨĺ</w>\": 39868,\n  \"ðŁĨļ</w>\": 16325,\n  \"ðŁĩ\": 1173,\n  \"ðŁĩ¦\": 12469,\n  \"ðŁĩ¦</w>\": 28565,\n  \"ðŁĩ¦ðŁĩ\": 33196,\n  \"ðŁĩ¦ðŁĩ·</w>\": 41629,\n  \"ðŁĩ¦ðŁĩº</w>\": 25192,\n  \"ðŁĩ§\": 14660,\n  \"ðŁĩ§ðŁĩ\": 37342,\n  \"ðŁĩ§ðŁĩª</w>\": 38794,\n  \"ðŁĩ§ðŁĩ·</w>\": 28182,\n  \"ðŁĩ¨\": 8889,\n  \"ðŁĩ¨ðŁĩ\": 8989,\n  \"ðŁĩ¨ðŁĩ¦\": 34324,\n  \"ðŁĩ¨ðŁĩ¦</w>\": 16364,\n  \"ðŁĩ¨ðŁĩ³</w>\": 36819,\n  \"ðŁĩ¨ðŁĩŃ</w>\": 41119,\n  \"ðŁĩ©\": 15222,\n  \"ðŁĩ©ðŁĩ\": 36350,\n  \"ðŁĩ©ðŁĩª</w>\": 21531,\n  \"ðŁĩª\": 11428,\n  \"ðŁĩª</w>\": 12331,\n  \"ðŁĩªðŁĩ\": 13917,\n  \"ðŁĩªðŁĩ¸</w>\": 22177,\n  \"ðŁĩªðŁĩº</w>\": 34655,\n  \"ðŁĩ«\": 12977,\n  \"ðŁĩ«ðŁĩ·\": 39109,\n  \"ðŁĩ«ðŁĩ·</w>\": 16223,\n  \"ðŁĩ¬\": 8129,\n  \"ðŁĩ¬ðŁĩ\": 8354,\n  \"ðŁĩ¬ðŁĩ§\": 23762,\n  \"ðŁĩ¬ðŁĩ§</w>\": 11559,\n  \"ðŁĩ®\": 8268,\n  \"ðŁĩ®ðŁĩ\": 8347,\n  \"ðŁĩ®ðŁĩª</w>\": 34148,\n  \"ðŁĩ®ðŁĩ³\": 47299,\n  \"ðŁĩ®ðŁĩ³</w>\": 23602,\n  \"ðŁĩ®ðŁĩ¹\": 42034,\n  \"ðŁĩ®ðŁĩ¹</w>\": 17070,\n  \"ðŁĩ¯\": 20090,\n  \"ðŁĩ¯ðŁĩ\": 22924,\n  \"ðŁĩ¯ðŁĩµ</w>\": 26527,\n  \"ðŁĩ°\": 28232,\n  \"ðŁĩ±\": 29533,\n  \"ðŁĩ±ðŁĩ\": 40941,\n  \"ðŁĩ²\": 16411,\n  \"ðŁĩ²ðŁĩ\": 17562,\n  \"ðŁĩ²ðŁĩ½</w>\": 32073,\n  \"ðŁĩ³\": 16645,\n  \"ðŁĩ³ðŁĩ\": 17747,\n  \"ðŁĩ³ðŁĩ±</w>\": 36747,\n  \"ðŁĩµ\": 12127,\n  \"ðŁĩµðŁĩ\": 13608,\n  \"ðŁĩµðŁĩ°</w>\": 37764,\n  \"ðŁĩµðŁĩ¹</w>\": 42621,\n  \"ðŁĩµðŁĩŃ</w>\": 42777,\n  \"ðŁĩ·\": 16026,\n  \"ðŁĩ·</w>\": 9869,\n  \"ðŁĩ·ðŁĩº</w>\": 37902,\n  \"ðŁĩ¸\": 19447,\n  \"ðŁĩ¸ðŁĩ\": 33325,\n  \"ðŁĩ¸ðŁĩª</w>\": 39260,\n  \"ðŁĩ¹\": 21810,\n  \"ðŁĩ¹ðŁĩ\": 36250,\n  \"ðŁĩº\": 4054,\n  \"ðŁĩº</w>\": 17467,\n  \"ðŁĩºðŁĩ\": 4131,\n  \"ðŁĩºðŁĩ¸\": 8907,\n  \"ðŁĩºðŁĩ¸</w>\": 5688,\n  \"ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸\": 18739,\n  \"ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸</w>\": 41411,\n  \"ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸</w>\": 43357,\n  \"ðŁĩ¿\": 25520,\n  \"ðŁĩ¿ðŁĩ¦</w>\": 36982,\n  \"ðŁĩŃ\": 30370,\n  \"ðŁĮ\": 1576,\n  \"ðŁĮ±\": 35318,\n  \"ðŁĮ±</w>\": 20665,\n  \"ðŁĮ²\": 34071,\n  \"ðŁĮ²</w>\": 28154,\n  \"ðŁĮ³\": 44265,\n  \"ðŁĮ³</w>\": 28543,\n  \"ðŁĮ´\": 20643,\n  \"ðŁĮ´</w>\": 15968,\n  \"ðŁĮµ</w>\": 40871,\n  \"ðŁĮ·\": 32328,\n  \"ðŁĮ·</w>\": 24259,\n  \"ðŁĮ¸\": 16314,\n  \"ðŁĮ¸</w>\": 10980,\n  \"ðŁĮ¸ðŁĮ¸\": 46210,\n  \"ðŁĮ¹\": 14990,\n  \"ðŁĮ¹</w>\": 10662,\n  \"ðŁĮ¹ðŁĮ¹\": 37933,\n  \"ðŁĮº\": 27608,\n  \"ðŁĮº</w>\": 19829,\n  \"ðŁĮ»\": 27196,\n  \"ðŁĮ»</w>\": 19772,\n  \"ðŁĮ¼\": 36484,\n  \"ðŁĮ¼</w>\": 26312,\n  \"ðŁĮ¾</w>\": 39796,\n  \"ðŁĮ¿\": 27736,\n  \"ðŁĮ¿</w>\": 18588,\n  \"ðŁĮĢ</w>\": 34348,\n  \"ðŁĮħ</w>\": 27547,\n  \"ðŁĮĪ\": 23038,\n  \"ðŁĮĪ</w>\": 13042,\n  \"ðŁĮĬ\": 20465,\n  \"ðŁĮĬ</w>\": 14302,\n  \"ðŁĮĮ</w>\": 43393,\n  \"ðŁĮį\": 34931,\n  \"ðŁĮį</w>\": 18641,\n  \"ðŁĮİ\": 31125,\n  \"ðŁĮİ</w>\": 16969,\n  \"ðŁĮı</w>\": 31527,\n  \"ðŁĮĲ</w>\": 33071,\n  \"ðŁĮĻ\": 42330,\n  \"ðŁĮĻ</w>\": 23283,\n  \"ðŁĮļ\": 49004,\n  \"ðŁĮļ</w>\": 27877,\n  \"ðŁĮŀ\": 21152,\n  \"ðŁĮŀ</w>\": 12980,\n  \"ðŁĮŁ\": 13196,\n  \"ðŁĮŁ</w>\": 8542,\n  \"ðŁĮŁðŁĮŁ\": 26014,\n  \"ðŁį\": 2011,\n  \"ðŁį¦\": 47375,\n  \"ðŁį¦</w>\": 32032,\n  \"ðŁį©</w>\": 38379,\n  \"ðŁįª</w>\": 38958,\n  \"ðŁį«\": 47994,\n  \"ðŁį«</w>\": 33401,\n  \"ðŁį°\": 43732,\n  \"ðŁį°</w>\": 30051,\n  \"ðŁį³</w>\": 37441,\n  \"ðŁį´\": 41531,\n  \"ðŁį´</w>\": 25338,\n  \"ðŁį·\": 24445,\n  \"ðŁį·</w>\": 18072,\n  \"ðŁį¸\": 43058,\n  \"ðŁį¸</w>\": 31217,\n  \"ðŁį¹</w>\": 35598,\n  \"ðŁįº\": 31081,\n  \"ðŁįº</w>\": 21590,\n  \"ðŁį»\": 22793,\n  \"ðŁį»</w>\": 13167,\n  \"ðŁį¾\": 27294,\n  \"ðŁį¾</w>\": 21656,\n  \"ðŁįĢ\": 22865,\n  \"ðŁįĢ</w>\": 15764,\n  \"ðŁįģ\": 29837,\n  \"ðŁįģ</w>\": 23075,\n  \"ðŁįĤ\": 35015,\n  \"ðŁįĤ</w>\": 25721,\n  \"ðŁįĥ\": 27157,\n  \"ðŁįĥ</w>\": 20147,\n  \"ðŁįĩ</w>\": 48697,\n  \"ðŁįĬ\": 35001,\n  \"ðŁįĬ</w>\": 28036,\n  \"ðŁįĭ</w>\": 39543,\n  \"ðŁįĮ</w>\": 44987,\n  \"ðŁįį</w>\": 48946,\n  \"ðŁįİ</w>\": 32069,\n  \"ðŁįĳ</w>\": 32889,\n  \"ðŁįĴ</w>\": 33160,\n  \"ðŁįĵ\": 44739,\n  \"ðŁįĵ</w>\": 33456,\n  \"ðŁįĶ\": 46415,\n  \"ðŁįĶ</w>\": 36031,\n  \"ðŁįķ\": 31469,\n  \"ðŁįķ</w>\": 23904,\n  \"ðŁįŃ</w>\": 42100,\n  \"ðŁİ\": 1165,\n  \"ðŁİ£</w>\": 43158,\n  \"ðŁİ¤\": 23490,\n  \"ðŁİ¤</w>\": 15690,\n  \"ðŁİ¥\": 22186,\n  \"ðŁİ¥:</w>\": 43640,\n  \"ðŁİ¥</w>\": 13233,\n  \"ðŁİ§\": 31254,\n  \"ðŁİ§</w>\": 14266,\n  \"ðŁİ¨\": 31953,\n  \"ðŁİ¨</w>\": 13461,\n  \"ðŁİ©</w>\": 37701,\n  \"ðŁİ«</w>\": 30331,\n  \"ðŁİ¬\": 36020,\n  \"ðŁİ¬</w>\": 18150,\n  \"ðŁİ®</w>\": 29312,\n  \"ðŁİ¯</w>\": 23114,\n  \"ðŁİµ\": 27435,\n  \"ðŁİµ</w>\": 14946,\n  \"ðŁİ¶\": 11755,\n  \"ðŁİ¶</w>\": 6011,\n  \"ðŁİ¶ðŁİ¶</w>\": 36283,\n  \"ðŁİ¸\": 29135,\n  \"ðŁİ¸</w>\": 22122,\n  \"ðŁİ¹</w>\": 43493,\n  \"ðŁİ¼\": 34949,\n  \"ðŁİ¼</w>\": 23757,\n  \"ðŁİ¾\": 41982,\n  \"ðŁİ¾</w>\": 24222,\n  \"ðŁİĢ\": 34347,\n  \"ðŁİĢ</w>\": 20151,\n  \"ðŁİģ\": 18368,\n  \"ðŁİģ</w>\": 13462,\n  \"ðŁİĤ\": 13026,\n  \"ðŁİĤ</w>\": 10392,\n  \"ðŁİĤðŁİĤ\": 39338,\n  \"ðŁİĥ\": 22622,\n  \"ðŁİĥ</w>\": 16780,\n  \"ðŁİĦ\": 12942,\n  \"ðŁİĦ</w>\": 11267,\n  \"ðŁİħ\": 17685,\n  \"ðŁİħ</w>\": 24276,\n  \"ðŁİĨ</w>\": 39222,\n  \"ðŁİĪ\": 16142,\n  \"ðŁİĪ</w>\": 14448,\n  \"ðŁİĪðŁİī</w>\": 48049,\n  \"ðŁİī\": 4310,\n  \"ðŁİī:</w>\": 17310,\n  \"ðŁİī</w>\": 3986,\n  \"ðŁİīðŁİ\": 11473,\n  \"ðŁİīðŁİĪ\": 40499,\n  \"ðŁİīðŁİĪ</w>\": 34008,\n  \"ðŁİīðŁİī\": 25159,\n  \"ðŁİīðŁİī</w>\": 13450,\n  \"ðŁİīðŁİīðŁİī</w>\": 20828,\n  \"ðŁİīðŁİĬ\": 31662,\n  \"ðŁİīðŁİĬ</w>\": 30781,\n  \"ðŁİĬ\": 22763,\n  \"ðŁİĬ</w>\": 22425,\n  \"ðŁİĬðŁİī</w>\": 48801,\n  \"ðŁİĵ\": 28916,\n  \"ðŁİĵ</w>\": 18744,\n  \"ðŁİĻ\": 29001,\n  \"ðŁİĻ</w>\": 29753,\n  \"ðŁİĻï¸ı</w>\": 44205,\n  \"ðŁİŁ\": 19248,\n  \"ðŁİŁ</w>\": 21107,\n  \"ðŁİŁï¸ı</w>\": 30243,\n  \"ðŁİŃ</w>\": 28856,\n  \"ðŁı\": 1109,\n  \"ðŁı¡</w>\": 27318,\n  \"ðŁı³ï¸ı\": 26844,\n  \"ðŁı³ï¸ıâĢį\": 27093,\n  \"ðŁı³ï¸ıâĢįðŁĮĪ</w>\": 32610,\n  \"ðŁı´\": 39690,\n  \"ðŁı´</w>\": 19704,\n  \"ðŁı»\": 5042,\n  \"ðŁı»</w>\": 3702,\n  \"ðŁı»âĢį\": 46250,\n  \"ðŁı»âĢįâĻĢï¸ı\": 48391,\n  \"ðŁı»âĢįâĻĢï¸ı</w>\": 23595,\n  \"ðŁı»âĢįâĻĤï¸ı</w>\": 30984,\n  \"ðŁı¼\": 6193,\n  \"ðŁı¼</w>\": 4027,\n  \"ðŁı¼âĢįâĻĢï¸ı</w>\": 28955,\n  \"ðŁı½\": 8514,\n  \"ðŁı½</w>\": 6114,\n  \"ðŁı½âĢįâĻĢï¸ı</w>\": 37036,\n  \"ðŁı½âĢįâĻĤï¸ı</w>\": 43157,\n  \"ðŁı¾\": 10230,\n  \"ðŁı¾</w>\": 7778,\n  \"ðŁı¾âĢįâĻĤï¸ı</w>\": 47189,\n  \"ðŁı¿\": 29854,\n  \"ðŁı¿</w>\": 21094,\n  \"ðŁıĢ\": 13708,\n  \"ðŁıĢ</w>\": 8813,\n  \"ðŁıĢðŁıĢ\": 43169,\n  \"ðŁıģ\": 29423,\n  \"ðŁıģ</w>\": 17473,\n  \"ðŁıĥ\": 16820,\n  \"ðŁıĥ</w>\": 32751,\n  \"ðŁıħ</w>\": 25500,\n  \"ðŁıĨ\": 9585,\n  \"ðŁıĨ</w>\": 5596,\n  \"ðŁıĨðŁıĨ\": 18946,\n  \"ðŁıĨðŁıĨ</w>\": 38269,\n  \"ðŁıĨðŁıĨðŁıĨ</w>\": 44484,\n  \"ðŁıĩ\": 45789,\n  \"ðŁıĩ</w>\": 40288,\n  \"ðŁıĪ\": 16144,\n  \"ðŁıĪ</w>\": 10477,\n  \"ðŁıī</w>\": 26020,\n  \"ðŁıĬ\": 33061,\n  \"ðŁıĬ</w>\": 47830,\n  \"ðŁıĮ\": 41116,\n  \"ðŁıı</w>\": 32460,\n  \"ðŁıĲ\": 46334,\n  \"ðŁıĲ</w>\": 29433,\n  \"ðŁıĴ</w>\": 37756,\n  \"ðŁıŁ\": 35914,\n  \"ðŁıŁ</w>\": 26472,\n  \"ðŁıŁï¸ı</w>\": 42627,\n  \"ðŁıł</w>\": 33727,\n  \"ðŁĲ\": 2074,\n  \"ðŁĲ¢</w>\": 37049,\n  \"ðŁĲ£</w>\": 39597,\n  \"ðŁĲ¥</w>\": 42981,\n  \"ðŁĲ¦</w>\": 37260,\n  \"ðŁĲ¬</w>\": 44238,\n  \"ðŁĲ¯\": 34825,\n  \"ðŁĲ¯</w>\": 26111,\n  \"ðŁĲ°\": 35378,\n  \"ðŁĲ°</w>\": 25050,\n  \"ðŁĲ±\": 35710,\n  \"ðŁĲ±</w>\": 22979,\n  \"ðŁĲ´</w>\": 33509,\n  \"ðŁĲ¶\": 14466,\n  \"ðŁĲ¶</w>\": 10631,\n  \"ðŁĲ·</w>\": 38408,\n  \"ðŁĲ¸\": 45597,\n  \"ðŁĲ¸</w>\": 40298,\n  \"ðŁĲº\": 44281,\n  \"ðŁĲº</w>\": 31445,\n  \"ðŁĲ»\": 30750,\n  \"ðŁĲ»</w>\": 25322,\n  \"ðŁĲ¼</w>\": 46234,\n  \"ðŁĲ¾\": 16057,\n  \"ðŁĲ¾</w>\": 11317,\n  \"ðŁĲ¾ðŁĲ¾</w>\": 42202,\n  \"ðŁĲī</w>\": 46908,\n  \"ðŁĲĬ</w>\": 43974,\n  \"ðŁĲį\": 48903,\n  \"ðŁĲį</w>\": 30177,\n  \"ðŁĲİ\": 48281,\n  \"ðŁĲİ</w>\": 32726,\n  \"ðŁĲĲ\": 47735,\n  \"ðŁĲĲ</w>\": 27954,\n  \"ðŁĲĳ</w>\": 49389,\n  \"ðŁĲķ</w>\": 41069,\n  \"ðŁĲĺ</w>\": 38733,\n  \"ðŁĲĿ\": 30619,\n  \"ðŁĲĿ</w>\": 20111,\n  \"ðŁĲŁ\": 42084,\n  \"ðŁĲŁ</w>\": 29989,\n  \"ðŁĲł</w>\": 42725,\n  \"ðŁĳ\": 964,\n  \"ðŁĳ£</w>\": 39755,\n  \"ðŁĳ§\": 48938,\n  \"ðŁĳ¨\": 18966,\n  \"ðŁĳ¨âĢį\": 25023,\n  \"ðŁĳ©\": 18800,\n  \"ðŁĳ©âĢį\": 26304,\n  \"ðŁĳ«\": 47106,\n  \"ðŁĳ«</w>\": 35457,\n  \"ðŁĳ®\": 42686,\n  \"ðŁĳ¯\": 25910,\n  \"ðŁĳ¯</w>\": 20582,\n  \"ðŁĳ¶\": 26187,\n  \"ðŁĳ¶</w>\": 33189,\n  \"ðŁĳ¸\": 26268,\n  \"ðŁĳ¸</w>\": 36645,\n  \"ðŁĳ¹</w>\": 46766,\n  \"ðŁĳ»\": 24625,\n  \"ðŁĳ»</w>\": 16243,\n  \"ðŁĳ¼\": 25270,\n  \"ðŁĳ¼</w>\": 31083,\n  \"ðŁĳ½\": 42677,\n  \"ðŁĳ½</w>\": 26257,\n  \"ðŁĳĢ\": 11524,\n  \"ðŁĳĢ</w>\": 5908,\n  \"ðŁĳĢðŁĳĢ</w>\": 31561,\n  \"ðŁĳģ\": 47796,\n  \"ðŁĳģ</w>\": 45705,\n  \"ðŁĳĦ</w>\": 47445,\n  \"ðŁĳħ\": 31833,\n  \"ðŁĳħ</w>\": 24672,\n  \"ðŁĳĨ\": 42975,\n  \"ðŁĳĨ</w>\": 45194,\n  \"ðŁĳĩ\": 7662,\n  \"ðŁĳĩ</w>\": 7475,\n  \"ðŁĳĩðŁı»\": 45811,\n  \"ðŁĳĩðŁı»</w>\": 32813,\n  \"ðŁĳĩðŁı¼</w>\": 37504,\n  \"ðŁĳĩðŁĳĩ\": 17915,\n  \"ðŁĳĩðŁĳĩ</w>\": 31891,\n  \"ðŁĳĩðŁĳĩðŁĳĩ</w>\": 35627,\n  \"ðŁĳĪ\": 32794,\n  \"ðŁĳĪ</w>\": 20832,\n  \"ðŁĳī\": 9477,\n  \"ðŁĳī</w>\": 3988,\n  \"ðŁĳīðŁı»</w>\": 23481,\n  \"ðŁĳīðŁı¼</w>\": 27534,\n  \"ðŁĳīðŁı½</w>\": 38059,\n  \"ðŁĳīðŁĳī</w>\": 41480,\n  \"ðŁĳĬ\": 8897,\n  \"ðŁĳĬ</w>\": 9704,\n  \"ðŁĳĬðŁı»\": 47393,\n  \"ðŁĳĬðŁı»</w>\": 29152,\n  \"ðŁĳĬðŁı¼\": 49000,\n  \"ðŁĳĬðŁı¼</w>\": 30115,\n  \"ðŁĳĬðŁĳĬ</w>\": 46521,\n  \"ðŁĳĭ\": 19351,\n  \"ðŁĳĭ</w>\": 17686,\n  \"ðŁĳĮ\": 4890,\n  \"ðŁĳĮ</w>\": 4494,\n  \"ðŁĳĮðŁı»\": 31818,\n  \"ðŁĳĮðŁı»</w>\": 18606,\n  \"ðŁĳĮðŁı¼\": 37655,\n  \"ðŁĳĮðŁı¼</w>\": 20031,\n  \"ðŁĳĮðŁı½</w>\": 35834,\n  \"ðŁĳĮðŁĳĮ\": 36139,\n  \"ðŁĳĮðŁĳĮ</w>\": 21435,\n  \"ðŁĳĮðŁĳĮðŁĳĮ</w>\": 40876,\n  \"ðŁĳį\": 4686,\n  \"ðŁĳį</w>\": 4201,\n  \"ðŁĳįðŁı»\": 25803,\n  \"ðŁĳįðŁı»</w>\": 15129,\n  \"ðŁĳįðŁı¼\": 37285,\n  \"ðŁĳįðŁı¼</w>\": 19689,\n  \"ðŁĳįðŁı½</w>\": 43722,\n  \"ðŁĳįðŁĳį\": 33012,\n  \"ðŁĳįðŁĳį</w>\": 18997,\n  \"ðŁĳįðŁĳįðŁĳį</w>\": 37284,\n  \"ðŁĳİ\": 39702,\n  \"ðŁĳİ</w>\": 32568,\n  \"ðŁĳı\": 3802,\n  \"ðŁĳı</w>\": 4829,\n  \"ðŁĳıðŁı»\": 19236,\n  \"ðŁĳıðŁı»</w>\": 17029,\n  \"ðŁĳıðŁı»ðŁĳıðŁı»\": 35254,\n  \"ðŁĳıðŁı¼\": 24496,\n  \"ðŁĳıðŁı¼</w>\": 19979,\n  \"ðŁĳıðŁı¼ðŁĳıðŁı¼</w>\": 46712,\n  \"ðŁĳıðŁı½\": 40796,\n  \"ðŁĳıðŁı½</w>\": 33978,\n  \"ðŁĳıðŁı¾</w>\": 45450,\n  \"ðŁĳıðŁĳı\": 10356,\n  \"ðŁĳıðŁĳı</w>\": 16706,\n  \"ðŁĳıðŁĳıðŁĳı</w>\": 17254,\n  \"ðŁĳĲ</w>\": 40877,\n  \"ðŁĳĳ\": 14955,\n  \"ðŁĳĳ</w>\": 8717,\n  \"ðŁĳĳðŁĳĳ\": 48532,\n  \"ðŁĳķ</w>\": 47865,\n  \"ðŁĳŁ</w>\": 41183,\n  \"ðŁĳł</w>\": 41264,\n  \"ðŁĳŃ\": 34175,\n  \"ðŁĳŃ</w>\": 27943,\n  \"ðŁĴ\": 837,\n  \"ðŁĴ¡</w>\": 24081,\n  \"ðŁĴ£\": 36862,\n  \"ðŁĴ£</w>\": 29006,\n  \"ðŁĴ¤\": 34706,\n  \"ðŁĴ¤</w>\": 25632,\n  \"ðŁĴ¥\": 12209,\n  \"ðŁĴ¥</w>\": 7347,\n  \"ðŁĴ¥ðŁĴ¥\": 27396,\n  \"ðŁĴ¥ðŁĴ¥</w>\": 39246,\n  \"ðŁĴ¥ðŁĴ¥ðŁĴ¥</w>\": 48890,\n  \"ðŁĴ¦\": 21180,\n  \"ðŁĴ¦</w>\": 14060,\n  \"ðŁĴ¦ðŁĴ¦</w>\": 44469,\n  \"ðŁĴ§</w>\": 34095,\n  \"ðŁĴ¨\": 27408,\n  \"ðŁĴ¨</w>\": 17891,\n  \"ðŁĴ©\": 48621,\n  \"ðŁĴ©</w>\": 28847,\n  \"ðŁĴª\": 5475,\n  \"ðŁĴª</w>\": 6440,\n  \"ðŁĴªðŁı»\": 31669,\n  \"ðŁĴªðŁı»</w>\": 21903,\n  \"ðŁĴªðŁı¼\": 32041,\n  \"ðŁĴªðŁı¼</w>\": 20759,\n  \"ðŁĴªðŁı½\": 46380,\n  \"ðŁĴªðŁı½</w>\": 31111,\n  \"ðŁĴªðŁı¾</w>\": 39398,\n  \"ðŁĴªðŁĴª</w>\": 24747,\n  \"ðŁĴªðŁĴªðŁĴª</w>\": 39913,\n  \"ðŁĴ«\": 25770,\n  \"ðŁĴ«</w>\": 12526,\n  \"ðŁĴ¬</w>\": 30947,\n  \"ðŁĴ¯\": 10611,\n  \"ðŁĴ¯</w>\": 7018,\n  \"ðŁĴ¯ðŁĴ¯\": 30234,\n  \"ðŁĴ¯ðŁĴ¯</w>\": 44070,\n  \"ðŁĴ°\": 20454,\n  \"ðŁĴ°</w>\": 14078,\n  \"ðŁĴ°ðŁĴ°\": 41747,\n  \"ðŁĴµ\": 47412,\n  \"ðŁĴµ</w>\": 38041,\n  \"ðŁĴ¸\": 37696,\n  \"ðŁĴ¸</w>\": 25957,\n  \"ðŁĴ»\": 33433,\n  \"ðŁĴ»</w>\": 18135,\n  \"ðŁĴ¿</w>\": 39541,\n  \"ðŁĴĢ\": 14888,\n  \"ðŁĴĢ</w>\": 12158,\n  \"ðŁĴĢðŁĴĢ\": 30884,\n  \"ðŁĴģ\": 13997,\n  \"ðŁĴģ</w>\": 14392,\n  \"ðŁĴĥ\": 9947,\n  \"ðŁĴĥ</w>\": 14333,\n  \"ðŁĴĥðŁı»</w>\": 38624,\n  \"ðŁĴĥðŁĴĥ\": 28041,\n  \"ðŁĴĦ\": 46116,\n  \"ðŁĴĦ</w>\": 34571,\n  \"ðŁĴħ\": 27457,\n  \"ðŁĴħ</w>\": 32414,\n  \"ðŁĴī\": 44316,\n  \"ðŁĴī</w>\": 30503,\n  \"ðŁĴĭ\": 12217,\n  \"ðŁĴĭ</w>\": 7417,\n  \"ðŁĴĭðŁĴĭ</w>\": 29214,\n  \"ðŁĴĮ</w>\": 40817,\n  \"ðŁĴį\": 35850,\n  \"ðŁĴį</w>\": 24898,\n  \"ðŁĴİ\": 25938,\n  \"ðŁĴİ</w>\": 15874,\n  \"ðŁĴĲ\": 27375,\n  \"ðŁĴĲ</w>\": 20554,\n  \"ðŁĴĳ</w>\": 49404,\n  \"ðŁĴĵ\": 20628,\n  \"ðŁĴĵ</w>\": 12568,\n  \"ðŁĴĵðŁĴĵ</w>\": 43505,\n  \"ðŁĴĶ\": 18880,\n  \"ðŁĴĶ</w>\": 10704,\n  \"ðŁĴĶðŁĴĶ\": 44673,\n  \"ðŁĴķ\": 5412,\n  \"ðŁĴķ</w>\": 3082,\n  \"ðŁĴķðŁĴķ\": 23106,\n  \"ðŁĴķðŁĴķ</w>\": 14117,\n  \"ðŁĴķðŁĴķðŁĴķ</w>\": 26772,\n  \"ðŁĴĸ\": 8466,\n  \"ðŁĴĸ</w>\": 5582,\n  \"ðŁĴĸðŁĴĸ\": 19562,\n  \"ðŁĴĸðŁĴĸ</w>\": 30595,\n  \"ðŁĴĸðŁĴĸðŁĴĸ</w>\": 33915,\n  \"ðŁĴĹ\": 10148,\n  \"ðŁĴĹ</w>\": 6690,\n  \"ðŁĴĹðŁĴĹ\": 47158,\n  \"ðŁĴĹðŁĴĹ</w>\": 24064,\n  \"ðŁĴĹðŁĴĹðŁĴĹ</w>\": 36990,\n  \"ðŁĴĺ\": 18223,\n  \"ðŁĴĺ</w>\": 10816,\n  \"ðŁĴĺðŁĴĺ</w>\": 40464,\n  \"ðŁĴĻ\": 5305,\n  \"ðŁĴĻ</w>\": 4074,\n  \"ðŁĴĻðŁĴĻ\": 17833,\n  \"ðŁĴĻðŁĴĻ</w>\": 27101,\n  \"ðŁĴĻðŁĴĻðŁĴĻ</w>\": 30698,\n  \"ðŁĴĻðŁĴĽ\": 46804,\n  \"ðŁĴĻðŁĴĽ</w>\": 26230,\n  \"ðŁĴĻðŁĴľ\": 47931,\n  \"ðŁĴĻðŁĴľ</w>\": 42541,\n  \"ðŁĴļ\": 8102,\n  \"ðŁĴļ</w>\": 6521,\n  \"ðŁĴļðŁĴļ\": 27497,\n  \"ðŁĴļðŁĴļ</w>\": 46209,\n  \"ðŁĴļðŁĴļðŁĴļ</w>\": 46182,\n  \"ðŁĴļðŁĴĽ</w>\": 41232,\n  \"ðŁĴĽ\": 8221,\n  \"ðŁĴĽ</w>\": 6233,\n  \"ðŁĴĽðŁĴĻ</w>\": 36337,\n  \"ðŁĴĽðŁĴļ\": 37994,\n  \"ðŁĴĽðŁĴĽ\": 32420,\n  \"ðŁĴľ\": 6832,\n  \"ðŁĴľ</w>\": 4882,\n  \"ðŁĴľðŁĴľ\": 17280,\n  \"ðŁĴľðŁĴľ</w>\": 28211,\n  \"ðŁĴľðŁĴľðŁĴľ</w>\": 31004,\n  \"ðŁĴĿ\": 36761,\n  \"ðŁĴĿ</w>\": 22002,\n  \"ðŁĴŀ\": 14862,\n  \"ðŁĴŀ</w>\": 8988,\n  \"ðŁĴŀðŁĴŀ</w>\": 36448,\n  \"ðŁĴŁ\": 49394,\n  \"ðŁĴŁ</w>\": 28828,\n  \"ðŁĴŃ</w>\": 33848,\n  \"ðŁĵ\": 1497,\n  \"ðŁĵ¢\": 46560,\n  \"ðŁĵ¢</w>\": 20901,\n  \"ðŁĵ£\": 48841,\n  \"ðŁĵ£</w>\": 21282,\n  \"ðŁĵ°:</w>\": 28952,\n  \"ðŁĵ°</w>\": 14985,\n  \"ðŁĵ±\": 36104,\n  \"ðŁĵ±</w>\": 20824,\n  \"ðŁĵ²</w>\": 19363,\n  \"ðŁĵ·\": 6966,\n  \"ðŁĵ·:</w>\": 8294,\n  \"ðŁĵ·</w>\": 5551,\n  \"ðŁĵ·@</w>\": 40032,\n  \"ðŁĵ¸\": 8401,\n  \"ðŁĵ¸:</w>\": 10379,\n  \"ðŁĵ¸</w>\": 6074,\n  \"ðŁĵ¸@</w>\": 39660,\n  \"ðŁĵ¹</w>\": 49251,\n  \"ðŁĵº\": 21792,\n  \"ðŁĵº:</w>\": 29728,\n  \"ðŁĵº</w>\": 10450,\n  \"ðŁĵ»\": 32711,\n  \"ðŁĵ»</w>\": 15882,\n  \"ðŁĵ½</w>\": 45361,\n  \"ðŁĵħ</w>\": 21277,\n  \"ðŁĵĨ</w>\": 23471,\n  \"ðŁĵĪ</w>\": 23359,\n  \"ðŁĵĬ</w>\": 22244,\n  \"ðŁĵĭ</w>\": 46351,\n  \"ðŁĵĮ</w>\": 22289,\n  \"ðŁĵį\": 25043,\n  \"ðŁĵį:</w>\": 36845,\n  \"ðŁĵį</w>\": 8903,\n  \"ðŁĵĸ\": 49003,\n  \"ðŁĵĸ</w>\": 23043,\n  \"ðŁĵļ\": 25433,\n  \"ðŁĵļ</w>\": 15566,\n  \"ðŁĵĿ\": 31888,\n  \"ðŁĵĿ:</w>\": 48398,\n  \"ðŁĵĿ</w>\": 15853,\n  \"ðŁĵŀ</w>\": 24022,\n  \"ðŁĶ\": 1428,\n  \"ðŁĶ¥\": 3191,\n  \"ðŁĶ¥#</w>\": 44354,\n  \"ðŁĶ¥</w>\": 3016,\n  \"ðŁĶ¥ðŁĶ¥\": 5692,\n  \"ðŁĶ¥ðŁĶ¥</w>\": 11771,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\": 11004,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥\": 23408,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\": 30989,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\": 48401,\n  \"ðŁĶ¥ðŁĶĹ</w>\": 35130,\n  \"ðŁĶª\": 47078,\n  \"ðŁĶª</w>\": 34545,\n  \"ðŁĶ«\": 38116,\n  \"ðŁĶ«</w>\": 20583,\n  \"ðŁĶ¬</w>\": 44227,\n  \"ðŁĶ®</w>\": 38077,\n  \"ðŁĶ´\": 12408,\n  \"ðŁĶ´</w>\": 10854,\n  \"ðŁĶ´âļªï¸ı\": 46879,\n  \"ðŁĶ´âļªï¸ı</w>\": 40055,\n  \"ðŁĶµ\": 17531,\n  \"ðŁĶµ</w>\": 17193,\n  \"ðŁĶµâļªï¸ı</w>\": 42412,\n  \"ðŁĶ¶\": 42880,\n  \"ðŁĶ¶</w>\": 36222,\n  \"ðŁĶ·</w>\": 37740,\n  \"ðŁĶ¸</w>\": 24200,\n  \"ðŁĶ¹</w>\": 19995,\n  \"ðŁĶº</w>\": 45561,\n  \"ðŁĶģ</w>\": 41299,\n  \"ðŁĶĬ\": 32580,\n  \"ðŁĶĬ</w>\": 20502,\n  \"ðŁĶİ</w>\": 44935,\n  \"ðŁĶĳ</w>\": 35127,\n  \"ðŁĶĴ</w>\": 44972,\n  \"ðŁĶĶ</w>\": 45753,\n  \"ðŁĶĹ\": 47475,\n  \"ðŁĶĹ</w>\": 14561,\n  \"ðŁĶĺ</w>\": 38995,\n  \"ðŁĶľ</w>\": 36011,\n  \"ðŁĶĿ\": 44387,\n  \"ðŁĶĿ</w>\": 29506,\n  \"ðŁķ\": 7692,\n  \"ðŁķº\": 33958,\n  \"ðŁķĬ\": 42624,\n  \"ðŁķĬ</w>\": 37760,\n  \"ðŁĸ\": 6269,\n  \"ðŁĸ¤\": 17603,\n  \"ðŁĸ¤</w>\": 10860,\n  \"ðŁĸ¥</w>\": 47990,\n  \"ðŁĹ\": 7045,\n  \"ðŁĹ£\": 33232,\n  \"ðŁĹ£</w>\": 18583,\n  \"ðŁĹ£ï¸ı</w>\": 37476,\n  \"ðŁĹĵ\": 34335,\n  \"ðŁĹĵ</w>\": 28773,\n  \"ðŁĹĵï¸ı</w>\": 39847,\n  \"ðŁĺ\": 668,\n  \"ðŁĺ¡\": 21968,\n  \"ðŁĺ¡</w>\": 17452,\n  \"ðŁĺ¡ðŁĺ¡\": 37223,\n  \"ðŁĺ¢\": 14308,\n  \"ðŁĺ¢</w>\": 9925,\n  \"ðŁĺ¢ðŁĺ¢\": 32923,\n  \"ðŁĺ¢ðŁĺ¢</w>\": 47921,\n  \"ðŁĺ£</w>\": 32718,\n  \"ðŁĺ¤\": 26872,\n  \"ðŁĺ¤</w>\": 20740,\n  \"ðŁĺ¥\": 38383,\n  \"ðŁĺ¥</w>\": 23951,\n  \"ðŁĺ¨</w>\": 38080,\n  \"ðŁĺ©\": 9051,\n  \"ðŁĺ©</w>\": 9494,\n  \"ðŁĺ©ðŁĺ©\": 22820,\n  \"ðŁĺ©ðŁĺ©</w>\": 38031,\n  \"ðŁĺ©ðŁĺ©ðŁĺ©</w>\": 49063,\n  \"ðŁĺª\": 38181,\n  \"ðŁĺª</w>\": 22243,\n  \"ðŁĺ«\": 25141,\n  \"ðŁĺ«</w>\": 22340,\n  \"ðŁĺ¬\": 23704,\n  \"ðŁĺ¬</w>\": 14549,\n  \"ðŁĺ®\": 40163,\n  \"ðŁĺ®</w>\": 21616,\n  \"ðŁĺ¯</w>\": 37858,\n  \"ðŁĺ°</w>\": 34728,\n  \"ðŁĺ±\": 10938,\n  \"ðŁĺ±</w>\": 9055,\n  \"ðŁĺ±ðŁĺ±\": 22061,\n  \"ðŁĺ±ðŁĺ±</w>\": 40767,\n  \"ðŁĺ±ðŁĺ±ðŁĺ±</w>\": 40909,\n  \"ðŁĺ²\": 40460,\n  \"ðŁĺ²</w>\": 24620,\n  \"ðŁĺ³\": 12047,\n  \"ðŁĺ³</w>\": 8223,\n  \"ðŁĺ³ðŁĺ³\": 32592,\n  \"ðŁĺ´\": 23527,\n  \"ðŁĺ´</w>\": 16415,\n  \"ðŁĺ´ðŁĺ´</w>\": 49307,\n  \"ðŁĺµ</w>\": 39368,\n  \"ðŁĺ¶</w>\": 35207,\n  \"ðŁĺ·\": 37943,\n  \"ðŁĺ·</w>\": 25759,\n  \"ðŁĺ¸</w>\": 36912,\n  \"ðŁĺ¹\": 26477,\n  \"ðŁĺ¹</w>\": 26573,\n  \"ðŁĺ¹ðŁĺ¹\": 46287,\n  \"ðŁĺº</w>\": 40613,\n  \"ðŁĺ»\": 15453,\n  \"ðŁĺ»</w>\": 12911,\n  \"ðŁĺ»ðŁĺ»\": 34414,\n  \"ðŁĺ¼</w>\": 44245,\n  \"ðŁĺ½</w>\": 45156,\n  \"ðŁĺĢ\": 12832,\n  \"ðŁĺĢ</w>\": 7334,\n  \"ðŁĺĢðŁĺĢ</w>\": 34503,\n  \"ðŁĺģ\": 6967,\n  \"ðŁĺģ</w>\": 4821,\n  \"ðŁĺģðŁĺģ\": 37900,\n  \"ðŁĺģðŁĺģ</w>\": 19213,\n  \"ðŁĺģðŁĺģðŁĺģ</w>\": 29083,\n  \"ðŁĺĤ\": 1424,\n  \"ðŁĺĤ)</w>\": 42643,\n  \"ðŁĺĤ.</w>\": 42550,\n  \"ðŁĺĤ</w>\": 1558,\n  \"ðŁĺĤâĿ¤ï¸ı</w>\": 36412,\n  \"ðŁĺĤðŁĳĮ</w>\": 42000,\n  \"ðŁĺĤðŁĺĤ\": 2286,\n  \"ðŁĺĤðŁĺĤ</w>\": 4112,\n  \"ðŁĺĤðŁĺĤðŁĺĤ\": 22233,\n  \"ðŁĺĤðŁĺĤðŁĺĤ</w>\": 4887,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ\": 9936,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 11522,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 19295,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 33415,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 48973,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ\": 28504,\n  \"ðŁĺĤðŁĺį</w>\": 43128,\n  \"ðŁĺĤðŁĺŃ\": 28965,\n  \"ðŁĺĤðŁĺŃ</w>\": 25802,\n  \"ðŁĺĥ\": 14079,\n  \"ðŁĺĥ</w>\": 8520,\n  \"ðŁĺĥðŁĺĥ</w>\": 38358,\n  \"ðŁĺĦ\": 12141,\n  \"ðŁĺĦ</w>\": 7624,\n  \"ðŁĺĦðŁĺĦ</w>\": 32312,\n  \"ðŁĺħ\": 15245,\n  \"ðŁĺħ</w>\": 9188,\n  \"ðŁĺħðŁĺħ</w>\": 39078,\n  \"ðŁĺĨ\": 16541,\n  \"ðŁĺĨ</w>\": 10943,\n  \"ðŁĺĨðŁĺĨ</w>\": 39503,\n  \"ðŁĺĩ\": 21694,\n  \"ðŁĺĩ</w>\": 13091,\n  \"ðŁĺĪ\": 14377,\n  \"ðŁĺĪ</w>\": 9756,\n  \"ðŁĺĪðŁĺĪ</w>\": 44473,\n  \"ðŁĺī\": 9740,\n  \"ðŁĺī</w>\": 4955,\n  \"ðŁĺīðŁĺī</w>\": 40430,\n  \"ðŁĺĬ\": 4692,\n  \"ðŁĺĬ</w>\": 3020,\n  \"ðŁĺĬâĿ¤ï¸ı</w>\": 43606,\n  \"ðŁĺĬðŁĺĬ\": 12838,\n  \"ðŁĺĬðŁĺĬ</w>\": 20842,\n  \"ðŁĺĬðŁĺĬðŁĺĬ</w>\": 28685,\n  \"ðŁĺĬðŁĺĬðŁĺĬðŁĺĬ\": 35519,\n  \"ðŁĺĭ\": 12391,\n  \"ðŁĺĭ</w>\": 7203,\n  \"ðŁĺĭðŁĺĭ</w>\": 33304,\n  \"ðŁĺĮ\": 19221,\n  \"ðŁĺĮ</w>\": 12163,\n  \"ðŁĺį\": 1796,\n  \"ðŁĺį#</w>\": 42357,\n  \"ðŁĺį.</w>\": 48579,\n  \"ðŁĺį</w>\": 1754,\n  \"ðŁĺįâĿ¤</w>\": 29122,\n  \"ðŁĺįâĿ¤ï¸ı</w>\": 21945,\n  \"ðŁĺįðŁĳĮ</w>\": 41005,\n  \"ðŁĺįðŁĴķ</w>\": 35946,\n  \"ðŁĺįðŁĶ¥</w>\": 46648,\n  \"ðŁĺįðŁĺĤ</w>\": 48715,\n  \"ðŁĺįðŁĺį\": 3663,\n  \"ðŁĺįðŁĺį</w>\": 6471,\n  \"ðŁĺįðŁĺįðŁĺį\": 30614,\n  \"ðŁĺįðŁĺįðŁĺį</w>\": 7703,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺį\": 16603,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺį</w>\": 18925,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺįðŁĺį</w>\": 32078,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺį\": 48683,\n  \"ðŁĺįðŁĺĺ\": 29646,\n  \"ðŁĺįðŁĺĺ</w>\": 19849,\n  \"ðŁĺįðŁĺŃ</w>\": 39555,\n  \"ðŁĺİ\": 7426,\n  \"ðŁĺİ</w>\": 4345,\n  \"ðŁĺİðŁĺİ</w>\": 24048,\n  \"ðŁĺİðŁĺİðŁĺİ</w>\": 39742,\n  \"ðŁĺı\": 11624,\n  \"ðŁĺı</w>\": 6909,\n  \"ðŁĺıðŁĺı</w>\": 38151,\n  \"ðŁĺĲ\": 38586,\n  \"ðŁĺĲ</w>\": 19618,\n  \"ðŁĺĳ\": 32469,\n  \"ðŁĺĳ</w>\": 18937,\n  \"ðŁĺĴ\": 20792,\n  \"ðŁĺĴ</w>\": 11702,\n  \"ðŁĺĵ</w>\": 28733,\n  \"ðŁĺĶ\": 19532,\n  \"ðŁĺĶ</w>\": 11432,\n  \"ðŁĺķ\": 45741,\n  \"ðŁĺķ</w>\": 20602,\n  \"ðŁĺĸ</w>\": 35006,\n  \"ðŁĺĺ\": 4240,\n  \"ðŁĺĺ</w>\": 3352,\n  \"ðŁĺĺâĿ¤</w>\": 48409,\n  \"ðŁĺĺâĿ¤ï¸ı</w>\": 39150,\n  \"ðŁĺĺðŁĺį</w>\": 38176,\n  \"ðŁĺĺðŁĺĺ\": 15663,\n  \"ðŁĺĺðŁĺĺ</w>\": 10507,\n  \"ðŁĺĺðŁĺĺðŁĺĺ</w>\": 20208,\n  \"ðŁĺĺðŁĺĺðŁĺĺðŁĺĺ</w>\": 44892,\n  \"ðŁĺĻ\": 36201,\n  \"ðŁĺĻ</w>\": 29209,\n  \"ðŁĺļ\": 24897,\n  \"ðŁĺļ</w>\": 19102,\n  \"ðŁĺĽ\": 24550,\n  \"ðŁĺĽ</w>\": 15745,\n  \"ðŁĺľ\": 13226,\n  \"ðŁĺľ</w>\": 7830,\n  \"ðŁĺľðŁĺľ</w>\": 43065,\n  \"ðŁĺĿ\": 20064,\n  \"ðŁĺĿ</w>\": 12970,\n  \"ðŁĺŀ\": 40458,\n  \"ðŁĺŀ</w>\": 21103,\n  \"ðŁĺŁ</w>\": 46947,\n  \"ðŁĺł</w>\": 34094,\n  \"ðŁĺŃ\": 2962,\n  \"ðŁĺŃ</w>\": 3915,\n  \"ðŁĺŃâĿ¤ï¸ı</w>\": 29567,\n  \"ðŁĺŃðŁĴķ</w>\": 46306,\n  \"ðŁĺŃðŁĺĤ</w>\": 38505,\n  \"ðŁĺŃðŁĺį</w>\": 36893,\n  \"ðŁĺŃðŁĺŃ\": 5300,\n  \"ðŁĺŃðŁĺŃ</w>\": 11834,\n  \"ðŁĺŃðŁĺŃðŁĺŃ\": 44089,\n  \"ðŁĺŃðŁĺŃðŁĺŃ</w>\": 13116,\n  \"ðŁĺŃðŁĺŃðŁĺŃðŁĺŃ\": 19793,\n  \"ðŁĺŃðŁĺŃðŁĺŃðŁĺŃ</w>\": 27322,\n  \"ðŁĺŃðŁĺŃðŁĺŃðŁĺŃðŁĺŃ</w>\": 43366,\n  \"ðŁĻ\": 1478,\n  \"ðŁĻĢ</w>\": 43092,\n  \"ðŁĻĤ\": 32006,\n  \"ðŁĻĤ</w>\": 14860,\n  \"ðŁĻĥ\": 27222,\n  \"ðŁĻĥ</w>\": 15652,\n  \"ðŁĻĦ\": 20648,\n  \"ðŁĻĦ</w>\": 13049,\n  \"ðŁĻħ\": 42702,\n  \"ðŁĻĨ\": 30050,\n  \"ðŁĻĨ</w>\": 35730,\n  \"ðŁĻĪ\": 12661,\n  \"ðŁĻĪ</w>\": 9516,\n  \"ðŁĻĪðŁĻĪ</w>\": 41796,\n  \"ðŁĻĬ\": 23684,\n  \"ðŁĻĬ</w>\": 16636,\n  \"ðŁĻĭ\": 19193,\n  \"ðŁĻĭ</w>\": 30274,\n  \"ðŁĻĮ\": 4366,\n  \"ðŁĻĮ</w>\": 4855,\n  \"ðŁĻĮðŁı»\": 26756,\n  \"ðŁĻĮðŁı»</w>\": 15799,\n  \"ðŁĻĮðŁı¼\": 26584,\n  \"ðŁĻĮðŁı¼</w>\": 15364,\n  \"ðŁĻĮðŁı½\": 36660,\n  \"ðŁĻĮðŁı½</w>\": 22962,\n  \"ðŁĻĮðŁı¾\": 38023,\n  \"ðŁĻĮðŁı¾</w>\": 26466,\n  \"ðŁĻĮðŁĻĮ\": 21202,\n  \"ðŁĻĮðŁĻĮ</w>\": 30430,\n  \"ðŁĻĮðŁĻĮðŁĻĮ</w>\": 37127,\n  \"ðŁĻı\": 4260,\n  \"ðŁĻı</w>\": 5503,\n  \"ðŁĻıðŁı»\": 25100,\n  \"ðŁĻıðŁı»</w>\": 16650,\n  \"ðŁĻıðŁı¼\": 31163,\n  \"ðŁĻıðŁı¼</w>\": 18952,\n  \"ðŁĻıðŁı½\": 34103,\n  \"ðŁĻıðŁı½</w>\": 21540,\n  \"ðŁĻıðŁı¾\": 34277,\n  \"ðŁĻıðŁı¾</w>\": 21979,\n  \"ðŁĻıðŁĻı\": 18227,\n  \"ðŁĻıðŁĻı</w>\": 26510,\n  \"ðŁĻıðŁĻıðŁĻı</w>\": 31702,\n  \"ðŁļ\": 2730,\n  \"ðŁļ¨\": 12198,\n  \"ðŁļ¨</w>\": 6056,\n  \"ðŁļ¨ðŁļ¨\": 36487,\n  \"ðŁļ¨ðŁļ¨</w>\": 21440,\n  \"ðŁļ¨ðŁļ¨ðŁļ¨</w>\": 41515,\n  \"ðŁļ©</w>\": 44514,\n  \"ðŁļ«</w>\": 35291,\n  \"ðŁļ²</w>\": 37085,\n  \"ðŁļ´\": 30825,\n  \"ðŁļ¶\": 46060,\n  \"ðŁļĢ\": 22400,\n  \"ðŁļĢ</w>\": 13542,\n  \"ðŁļĢðŁļĢ\": 49033,\n  \"ðŁļĤ</w>\": 38949,\n  \"ðŁļĮ</w>\": 46891,\n  \"ðŁļĹ\": 33054,\n  \"ðŁļĹ</w>\": 22783,\n  \"ðŁļĺ</w>\": 35825,\n  \"ðŁļĻ</w>\": 48487,\n  \"ðŁĽ\": 11306,\n  \"ñ\": 173,\n  \"ñ</w>\": 429,\n  \"ò\": 174,\n  \"ò</w>\": 430,\n  \"ó\": 175,\n  \"ó</w>\": 431,\n  \"ô\": 176,\n  \"ô</w>\": 432,\n  \"õ\": 177,\n  \"õ</w>\": 433,\n  \"ö\": 178,\n  \"ö</w>\": 434,\n  \"÷\": 179,\n  \"÷</w>\": 435,\n  \"ø\": 180,\n  \"ø</w>\": 436,\n  \"ù\": 181,\n  \"ù</w>\": 437,\n  \"ú\": 182,\n  \"ú</w>\": 438,\n  \"û\": 183,\n  \"û</w>\": 439,\n  \"ü\": 184,\n  \"ü</w>\": 440,\n  \"ý\": 185,\n  \"ý</w>\": 441,\n  \"þ\": 186,\n  \"þ</w>\": 442,\n  \"ÿ\": 187,\n  \"ÿ</w>\": 443,\n  \"Ā\": 188,\n  \"Ā</w>\": 444,\n  \"ā\": 189,\n  \"ā</w>\": 445,\n  \"Ă\": 190,\n  \"Ă</w>\": 446,\n  \"ă\": 191,\n  \"ă</w>\": 447,\n  \"Ą\": 192,\n  \"Ą</w>\": 448,\n  \"ą\": 193,\n  \"ą</w>\": 449,\n  \"Ć\": 194,\n  \"Ć</w>\": 450,\n  \"ć\": 195,\n  \"ć</w>\": 451,\n  \"Ĉ\": 196,\n  \"Ĉ</w>\": 452,\n  \"ĉ\": 197,\n  \"ĉ</w>\": 453,\n  \"Ċ\": 198,\n  \"Ċ</w>\": 454,\n  \"ċ\": 199,\n  \"ċ</w>\": 455,\n  \"Č\": 200,\n  \"Č</w>\": 456,\n  \"č\": 201,\n  \"č</w>\": 457,\n  \"Ď\": 202,\n  \"Ď</w>\": 458,\n  \"ď\": 203,\n  \"ď</w>\": 459,\n  \"Đ\": 204,\n  \"Đ</w>\": 460,\n  \"đ\": 205,\n  \"đ</w>\": 461,\n  \"Ē\": 206,\n  \"Ē</w>\": 462,\n  \"ē\": 207,\n  \"ē</w>\": 463,\n  \"Ĕ\": 208,\n  \"Ĕ</w>\": 464,\n  \"ĕ\": 209,\n  \"ĕ</w>\": 465,\n  \"Ė\": 210,\n  \"Ė</w>\": 466,\n  \"ė\": 211,\n  \"ė</w>\": 467,\n  \"Ę\": 212,\n  \"Ę</w>\": 468,\n  \"ę\": 213,\n  \"ę</w>\": 469,\n  \"Ě\": 214,\n  \"Ě</w>\": 470,\n  \"ě\": 215,\n  \"ě</w>\": 471,\n  \"Ĝ\": 216,\n  \"Ĝ</w>\": 472,\n  \"ĝ\": 217,\n  \"ĝ</w>\": 473,\n  \"Ğ\": 218,\n  \"Ğ</w>\": 474,\n  \"ğ\": 219,\n  \"ğ</w>\": 475,\n  \"Ġ\": 220,\n  \"Ġ</w>\": 476,\n  \"ġ\": 221,\n  \"ġ</w>\": 477,\n  \"Ģ\": 222,\n  \"Ģ</w>\": 478,\n  \"Ģï¸ı\": 9668,\n  \"Ģï¸ı</w>\": 5511,\n  \"ģ\": 223,\n  \"ģ</w>\": 479,\n  \"ģà¸\": 15016,\n  \"Ĥ\": 224,\n  \"Ĥ</w>\": 480,\n  \"Ĥâĸ\": 29036,\n  \"ĤâĸĤâĸ\": 30832,\n  \"ĥ\": 225,\n  \"ĥ</w>\": 481,\n  \"Ħ\": 226,\n  \"Ħ</w>\": 482,\n  \"Ħà¸\": 20537,\n  \"Ħë\": 34462,\n  \"Ħëĭ\": 25170,\n  \"ħ\": 227,\n  \"ħ</w>\": 483,\n  \"ħï¸ı</w>\": 33950,\n  \"Ĩ\": 228,\n  \"Ĩ</w>\": 484,\n  \"ĩ\": 229,\n  \"ĩ</w>\": 485,\n  \"Ī\": 230,\n  \"Ī</w>\": 486,\n  \"ī\": 231,\n  \"ī</w>\": 487,\n  \"īï¸ı</w>\": 37463,\n  \"Ĭ\": 232,\n  \"Ĭ</w>\": 488,\n  \"Ĭãģ\": 30294,\n  \"ĭ\": 233,\n  \"ĭ</w>\": 489,\n  \"ĭãģ\": 36218,\n  \"ĭãĤ\": 45737,\n  \"Į\": 234,\n  \"Į</w>\": 490,\n  \"ĮãĤĬãģ\": 45969,\n  \"ĮãĤĬãģŁãģĦ</w>\": 47021,\n  \"Įë\": 17003,\n  \"į\": 235,\n  \"į</w>\": 491,\n  \"İ\": 236,\n  \"İ</w>\": 492,\n  \"ı\": 237,\n  \"ı</w>\": 493,\n  \"Ĳ\": 238,\n  \"Ĳ</w>\": 494,\n  \"ĳ\": 239,\n  \"ĳ</w>\": 495,\n  \"Ĵ\": 240,\n  \"Ĵ</w>\": 496,\n  \"ĵ\": 241,\n  \"ĵ</w>\": 497,\n  \"Ķ\": 242,\n  \"Ķ</w>\": 498,\n  \"Ķë\": 37978,\n  \"Ķï¸ı\": 24395,\n  \"Ķï¸ı</w>\": 7443,\n  \"ķ\": 243,\n  \"ķ</w>\": 499,\n  \"ķãĤ\": 26609,\n  \"ķï¸ı</w>\": 44853,\n  \"ĸ\": 244,\n  \"ĸ</w>\": 500,\n  \"ĸï¸ı</w>\": 28877,\n  \"Ĺ\": 245,\n  \"Ĺ</w>\": 501,\n  \"ĺ\": 246,\n  \"ĺ</w>\": 502,\n  \"Ļ\": 247,\n  \"Ļ</w>\": 503,\n  \"ļ\": 248,\n  \"ļ</w>\": 504,\n  \"Ľ\": 249,\n  \"Ľ</w>\": 505,\n  \"ľ\": 250,\n  \"ľ</w>\": 506,\n  \"ľë\": 39810,\n  \"Ŀ\": 251,\n  \"Ŀ</w>\": 507,\n  \"ŀ\": 252,\n  \"ŀ</w>\": 508,\n  \"Ł\": 253,\n  \"Ł</w>\": 509,\n  \"ŁãģĦ</w>\": 46023,\n  \"ł\": 254,\n  \"ł</w>\": 510,\n  \"łï¸ı\": 27899,\n  \"łï¸ı</w>\": 12715,\n  \"łĪ\": 43364,\n  \"Ń\": 255,\n  \"Ń</w>\": 511\n}\n"
  },
  {
    "path": "configs/sd3/tokenizer_3/special_tokens_map.json",
    "content": "{\n  \"additional_special_tokens\": [\n    \"<extra_id_0>\",\n    \"<extra_id_1>\",\n    \"<extra_id_2>\",\n    \"<extra_id_3>\",\n    \"<extra_id_4>\",\n    \"<extra_id_5>\",\n    \"<extra_id_6>\",\n    \"<extra_id_7>\",\n    \"<extra_id_8>\",\n    \"<extra_id_9>\",\n    \"<extra_id_10>\",\n    \"<extra_id_11>\",\n    \"<extra_id_12>\",\n    \"<extra_id_13>\",\n    \"<extra_id_14>\",\n    \"<extra_id_15>\",\n    \"<extra_id_16>\",\n    \"<extra_id_17>\",\n    \"<extra_id_18>\",\n    \"<extra_id_19>\",\n    \"<extra_id_20>\",\n    \"<extra_id_21>\",\n    \"<extra_id_22>\",\n    \"<extra_id_23>\",\n    \"<extra_id_24>\",\n    \"<extra_id_25>\",\n    \"<extra_id_26>\",\n    \"<extra_id_27>\",\n    \"<extra_id_28>\",\n    \"<extra_id_29>\",\n    \"<extra_id_30>\",\n    \"<extra_id_31>\",\n    \"<extra_id_32>\",\n    \"<extra_id_33>\",\n    \"<extra_id_34>\",\n    \"<extra_id_35>\",\n    \"<extra_id_36>\",\n    \"<extra_id_37>\",\n    \"<extra_id_38>\",\n    \"<extra_id_39>\",\n    \"<extra_id_40>\",\n    \"<extra_id_41>\",\n    \"<extra_id_42>\",\n    \"<extra_id_43>\",\n    \"<extra_id_44>\",\n    \"<extra_id_45>\",\n    \"<extra_id_46>\",\n    \"<extra_id_47>\",\n    \"<extra_id_48>\",\n    \"<extra_id_49>\",\n    \"<extra_id_50>\",\n    \"<extra_id_51>\",\n    \"<extra_id_52>\",\n    \"<extra_id_53>\",\n    \"<extra_id_54>\",\n    \"<extra_id_55>\",\n    \"<extra_id_56>\",\n    \"<extra_id_57>\",\n    \"<extra_id_58>\",\n    \"<extra_id_59>\",\n    \"<extra_id_60>\",\n    \"<extra_id_61>\",\n    \"<extra_id_62>\",\n    \"<extra_id_63>\",\n    \"<extra_id_64>\",\n    \"<extra_id_65>\",\n    \"<extra_id_66>\",\n    \"<extra_id_67>\",\n    \"<extra_id_68>\",\n    \"<extra_id_69>\",\n    \"<extra_id_70>\",\n    \"<extra_id_71>\",\n    \"<extra_id_72>\",\n    \"<extra_id_73>\",\n    \"<extra_id_74>\",\n    \"<extra_id_75>\",\n    \"<extra_id_76>\",\n    \"<extra_id_77>\",\n    \"<extra_id_78>\",\n    \"<extra_id_79>\",\n    \"<extra_id_80>\",\n    \"<extra_id_81>\",\n    \"<extra_id_82>\",\n    \"<extra_id_83>\",\n    \"<extra_id_84>\",\n    \"<extra_id_85>\",\n    \"<extra_id_86>\",\n    \"<extra_id_87>\",\n    \"<extra_id_88>\",\n    \"<extra_id_89>\",\n    \"<extra_id_90>\",\n    \"<extra_id_91>\",\n    \"<extra_id_92>\",\n    \"<extra_id_93>\",\n    \"<extra_id_94>\",\n    \"<extra_id_95>\",\n    \"<extra_id_96>\",\n    \"<extra_id_97>\",\n    \"<extra_id_98>\",\n    \"<extra_id_99>\"\n  ],\n  \"eos_token\": {\n    \"content\": \"</s>\",\n    \"lstrip\": false,\n    \"normalized\": false,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"pad_token\": {\n    \"content\": \"<pad>\",\n    \"lstrip\": false,\n    \"normalized\": false,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"unk_token\": {\n    \"content\": \"<unk>\",\n    \"lstrip\": false,\n    \"normalized\": false,\n    \"rstrip\": false,\n    \"single_word\": false\n  }\n}\n"
  },
  {
    "path": "configs/sd3/tokenizer_3/tokenizer.json",
    "content": "{\n  \"version\": \"1.0\",\n  \"truncation\": null,\n  \"padding\": null,\n  \"added_tokens\": [\n    {\n      \"id\": 0,\n      \"content\": \"<pad>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 1,\n      \"content\": \"</s>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 2,\n      \"content\": \"<unk>\",\n      \"single_word\": false,\n      \"lstrip\": false,\n      \"rstrip\": false,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32000,\n      \"content\": \"<extra_id_99>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32001,\n      \"content\": \"<extra_id_98>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32002,\n      \"content\": \"<extra_id_97>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32003,\n      \"content\": \"<extra_id_96>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32004,\n      \"content\": \"<extra_id_95>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32005,\n      \"content\": \"<extra_id_94>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32006,\n      \"content\": \"<extra_id_93>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32007,\n      \"content\": \"<extra_id_92>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32008,\n      \"content\": \"<extra_id_91>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32009,\n      \"content\": \"<extra_id_90>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32010,\n      \"content\": \"<extra_id_89>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32011,\n      \"content\": \"<extra_id_88>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32012,\n      \"content\": \"<extra_id_87>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32013,\n      \"content\": \"<extra_id_86>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32014,\n      \"content\": \"<extra_id_85>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32015,\n      \"content\": \"<extra_id_84>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32016,\n      \"content\": \"<extra_id_83>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32017,\n      \"content\": \"<extra_id_82>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32018,\n      \"content\": \"<extra_id_81>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32019,\n      \"content\": \"<extra_id_80>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32020,\n      \"content\": \"<extra_id_79>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32021,\n      \"content\": \"<extra_id_78>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32022,\n      \"content\": \"<extra_id_77>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32023,\n      \"content\": \"<extra_id_76>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32024,\n      \"content\": \"<extra_id_75>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32025,\n      \"content\": \"<extra_id_74>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32026,\n      \"content\": \"<extra_id_73>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32027,\n      \"content\": \"<extra_id_72>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32028,\n      \"content\": \"<extra_id_71>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32029,\n      \"content\": \"<extra_id_70>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32030,\n      \"content\": \"<extra_id_69>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32031,\n      \"content\": \"<extra_id_68>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32032,\n      \"content\": \"<extra_id_67>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32033,\n      \"content\": \"<extra_id_66>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32034,\n      \"content\": \"<extra_id_65>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32035,\n      \"content\": \"<extra_id_64>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32036,\n      \"content\": \"<extra_id_63>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32037,\n      \"content\": \"<extra_id_62>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32038,\n      \"content\": \"<extra_id_61>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32039,\n      \"content\": \"<extra_id_60>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32040,\n      \"content\": \"<extra_id_59>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32041,\n      \"content\": \"<extra_id_58>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32042,\n      \"content\": \"<extra_id_57>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32043,\n      \"content\": \"<extra_id_56>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32044,\n      \"content\": \"<extra_id_55>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32045,\n      \"content\": \"<extra_id_54>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32046,\n      \"content\": \"<extra_id_53>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32047,\n      \"content\": \"<extra_id_52>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32048,\n      \"content\": \"<extra_id_51>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32049,\n      \"content\": \"<extra_id_50>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32050,\n      \"content\": \"<extra_id_49>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32051,\n      \"content\": \"<extra_id_48>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32052,\n      \"content\": \"<extra_id_47>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32053,\n      \"content\": \"<extra_id_46>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32054,\n      \"content\": \"<extra_id_45>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32055,\n      \"content\": \"<extra_id_44>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32056,\n      \"content\": \"<extra_id_43>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32057,\n      \"content\": \"<extra_id_42>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32058,\n      \"content\": \"<extra_id_41>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32059,\n      \"content\": \"<extra_id_40>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32060,\n      \"content\": \"<extra_id_39>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32061,\n      \"content\": \"<extra_id_38>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32062,\n      \"content\": \"<extra_id_37>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32063,\n      \"content\": \"<extra_id_36>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32064,\n      \"content\": \"<extra_id_35>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32065,\n      \"content\": \"<extra_id_34>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32066,\n      \"content\": \"<extra_id_33>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32067,\n      \"content\": \"<extra_id_32>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32068,\n      \"content\": \"<extra_id_31>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32069,\n      \"content\": \"<extra_id_30>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32070,\n      \"content\": \"<extra_id_29>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32071,\n      \"content\": \"<extra_id_28>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32072,\n      \"content\": \"<extra_id_27>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32073,\n      \"content\": \"<extra_id_26>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32074,\n      \"content\": \"<extra_id_25>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32075,\n      \"content\": \"<extra_id_24>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32076,\n      \"content\": \"<extra_id_23>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32077,\n      \"content\": \"<extra_id_22>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32078,\n      \"content\": \"<extra_id_21>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32079,\n      \"content\": \"<extra_id_20>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32080,\n      \"content\": \"<extra_id_19>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32081,\n      \"content\": \"<extra_id_18>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32082,\n      \"content\": \"<extra_id_17>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32083,\n      \"content\": \"<extra_id_16>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32084,\n      \"content\": \"<extra_id_15>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32085,\n      \"content\": \"<extra_id_14>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32086,\n      \"content\": \"<extra_id_13>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32087,\n      \"content\": \"<extra_id_12>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32088,\n      \"content\": \"<extra_id_11>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32089,\n      \"content\": \"<extra_id_10>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32090,\n      \"content\": \"<extra_id_9>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32091,\n      \"content\": \"<extra_id_8>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32092,\n      \"content\": \"<extra_id_7>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32093,\n      \"content\": \"<extra_id_6>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32094,\n      \"content\": \"<extra_id_5>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32095,\n      \"content\": \"<extra_id_4>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32096,\n      \"content\": \"<extra_id_3>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32097,\n      \"content\": \"<extra_id_2>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32098,\n      \"content\": \"<extra_id_1>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    },\n    {\n      \"id\": 32099,\n      \"content\": \"<extra_id_0>\",\n      \"single_word\": false,\n      \"lstrip\": true,\n      \"rstrip\": true,\n      \"normalized\": false,\n      \"special\": true\n    }\n  ],\n  \"normalizer\": {\n    \"type\": \"Sequence\",\n    \"normalizers\": [\n      {\n        \"type\": \"Precompiled\",\n        \"precompiled_charsmap\": \"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gAkAAIRlAAD9GwCAzNAHAMzwBwAFHACAkYkAAMxMBgDNBAYAzHAGAM10BgDMQAcAmy0PAMyoBwDNrAcAhg0AAIdVDwCEQQ8ACQsAgIIBDACDVQ8AgDUBAIHZAQCkDACAj+kAAIztAACSDACA3R0AgIv1AACIbQ8AiQ0AAA8LAIC0CwCAgiUAAE0MAICBQQAAUwwAgBUeAIANHgCAJR4AgB0eAIAtHgCABR4AgIApAACBKQAA/AsAgA0cAICEeQAAFRwAgIFNAQCAoQEAGAsAgKP9DwDMOAIAzUgDAB0cAICBWQAAzXwCAMykDQAkCwCAWQwAgKjJDwCHOQAA1wkAgImhDwADCwCAkREAAJ4MAIDaCQCAmQsAgF8MAICAuQ8AgbkPANUdAICDjQ8A9gsAgCUcAICEBQAALRwAgB4LAIA1HACAKgsAgIGdDwCHIQAAh7UPAMyoAgDN6AIAzLQMAM3cDACmzQAAp8UAAE0cAICPgQ8AjIkPAKPlAAAwCwCAPRwAgDwLAICxyQAAhwUAAFUcAIBFHACAhz0AAF0cAIBxDACANgsAgKMFDwCB+QAAzKgDAGUcAIBICwCAjEkAAKPxAABtHACAdwwAgEILAICnlQAAfRwAgHUcAIDMrAMAzcgAAN0JAICHaQAA4AkAgIG9AACCeQAA4wkAgIe5AQBOCwCAkaUAAIEdAACdHACAVAsAgIgFAAClHACAm5EAAFoLAIDmCQCAjJEBANILAIDGCwCAwAsAgMwLAICDRQAAgrkBAIG5AQCApQEAPR4AgIZxAABgCwCAhEkAAIsVAACKPQAAiTkAAIhFAACP+QAAZgsAgLoLAICMBQAAp1EBAKZJAQBlDACAsHkAAKNZAQCMqQAAgKkAAIGpAACBlQAAgJUAAK1xAQBrDACAogsAgISNAABNHgCARR4AgKMhAABdHgCAVR4AgGUeAICBbQAAgG0AALEFAQCkOQAANR4AgIUcAIBsCwCAqAUAAJUcAICNHACArQkAAMywAQCBvQMAgL0DAIPNAwCtHACAtRwAgL0cAIDMvAEAzYQBAInpAwDMHAEAgdkCAIDFAgDNOAEAzDwBAMxoAgDNRAIAg00AAMUcAICH2QAAhy0AAIBFAACBEQAAggUAAHILAIDVHACAzRwAgN0cAIDMOAIAiBUAAIjhAACAbQAAgTkAAMyEAgDNUAEA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vBkBAL0ZAQC+fQEAv3UBAKPtAQCeOwCAojsAgKY7AICqOwCApu0BAKXtAQCuOwCAq3kBAKpxAQCyOwCAtjsAgK85AQCuMQEArVUBAKxVAQC6OwCAvjsAgMI7AIDGOwCAyjsAgOGsAQDOOwCA42AGANI7AIDWOwCA2jsAgO9UBgDeOwCA4jsAgL60GgDmOwCA6jsAgO47AICGaBwAh4wDAPI7AID2OwCA+jsAgP47AICAOQAAgTkAAIIFAAACPACACjwAgA48AIASPACAFjwAgKgdAwCpQQMAqkEDAKtBAwCsQQMArUkDAK5xAwCvcQMAhCAdABo8AIAePACAIjwAgCY8AIAqPACALjwAgDI8AIC46QAAufUAALr9AAC78QAAvJEAAL2RAAC+iQAAv4kAALDhAACx4QAAsuEAALPhAAC04QAAte0AALbZAAC32QAA4wwHAOEgBwDhMAEA4wgHADY8AIA6PACAPjwAgEI8AIBGPACASjwAgE48AIBSPACA75gHAFY8AIBaPACA74gHALOJAgBePACAYjwAgL6AGgBmPACAtokCALWJAgBqPACAu2UBALplAQBuPACAcjwAgL9pAQC+ZQEAvXUBALx1AQC3PQYAtj0GALU9BgC0IQYAszUGALI1BgCxAQYAsAkGAL9ZBgC+UQYAvVkGALxNBgC7bQYAunkGALlxBgC4eQYAgJ0AAIGtAACCpQAAejwAgH48AICCPACAhjwAgIo8AICvcQYArmkGAK1tBgCsbQYAq4EGAKqZBgCpkQYAqJkGAAY8AIB2PACAjjwAgKPFHQCSPACApcUdAKbFHQCWPACAhgADAIdkAwCqKR4AqykeAKw5HgCtOR4ArikeAK8lHgCzOR4AmjwAgJ48AICiPACApjwAgLb9HgC1/R4AqjwAgLvZHgC60R4ArjwAgLI8AIC/aR8AvmEfAL1pHwC8wR4AqPEeAKnxHgCq8R4Aq/EeAKw1HgCtPR4ArjUeAK8tHgC2PACAujwAgL48AIDCPACAxjwAgMo8AIDOPACA0jwAgLjlHwC57R8AuuUfALv5HwC86R8AvZEfAL6RHwC/jR8AsFUeALFdHgCyVR4As/0fALTlHwC17R8AtuUfALfdHwCjeR8A1jwAgNo8AIDePACA4jwAgKa9HwClvR8A5jwAgKuZHwCqkR8AhogAAIdMAQCvKR4AriEeAK0pHgCsgR8AgEkAAIFJAACCWQAAs5keAOo8AIC1iR4AtlEBAO48AIDyPACA9jwAgLotAQC7JQEAvD0BAL0lAQC+JQEAvxUBAKhNHgCpVR4Aql0eAKtVHgCsTR4ArZ0BAK6JAQCvgQEAhKwBAPo8AID+PACAAj0AgAY9AIAKPQCADj0AgBI9AIC4ZQEAuW0BALplAQC7fQEAvGUBAL1tAQC+ZQEAv9kAALClAQCxrQEAsqUBALO9AQC0rQEAtZ0BALaVAQC3XQEAo9UdABY9AIAaPQCAHj0AgCI9AICmHQIApcUdACY9AICraQIAqmECACo9AIAuPQCAr1kCAK5pAgCtaQIArHECADI9AIA2PQCAOj0AgD49AIBCPQCARj0AgEo9AIBOPQCAgDkAAIE5AACCBQAAUj0AgFo9AIBePQCAh0ADAIZcBACETAQAYj0AgGY9AICEBAUA4yABAGo9AIDhqAEAbj0AgO+UGgByPQCAdj0AgHo9AIB+PQCAgj0AgIY9AICKPQCAs6EDAI49AICSPQCAlj0AgJo9AIC2fQMAtX0DAJ49AIC7WQMAulEDAKI9AICmPQCAv/0AAL79AAC9/QAAvEEDAKhRAgCpWQIAqmkCAKtpAgCstQIArb0CAK61AgCvrQIAhKgHAKo9AICuPQCAsj0AgIKpAAC2PQCAgKkAAIGpAAC4aQEAuWkBALoJAQC7CQEAvBkBAL0ZAQC+CQEAvwkBALDVAgCx3QIAstUCALNpAQC0eQEAtXkBALZpAQC3YQEA4bgBAOHUHwDjOB8A4wwbALo9AIC+PQCAwj0AgMo9AIDOPQCA0j0AgNY9AIDaPQCAvjwJAN49AIDvhBsA74QbAKOhAgDiPQCAhugEAIe8BQDmPQCApn0CAKV9AgDqPQCAq1kCAKpRAgDuPQCA8j0AgK/9AQCu/QEArf0BAKxBAgCzhQYAxj0AgPY9AID6PQCA/j0AgLaJBgC1jQYAAj4AgLuRBgC6iQYABj4AgAo+AIC/9QYAvokGAL2BBgC8iQYADj4AgBI+AIAWPgCAGj4AgB4+AIAiPgCAJj4AgO+EHQAqPgCA4QAEAC4+AIDj/AQAgBEAAIEdAACCBQAAMj4AgKjxBgCp8QYAqg0GAKsFBgCsBQYArQkGAK49BgCvNQYANj4AgDo+AICGiAAAhxADAD4+AIBCPgCA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GkUAgB5FAIAiRQCAJkUAgIANAACBFQAAgh0AACpFAIAuRQCAMkUAgIR4AQC+FAAA4xQPADpFAIDh4A0AhAADAIawBACHFAMAPkUAgEJFAIBGRQCASkUAgE5FAIBSRQCA78APAFZFAIBaRQCAXkUAgGJFAIBmRQCAakUAgLNtAwBuRQCAtX0DALZ1AwByRQCAdkUAgHpFAIC6UQMAu1EDALz1AwC9/QMAvukDAL/hAwB+RQCAgkUAgIZFAICKRQCAjkUAgJJFAICWRQCAmkUAgKhxAgCpeQIAqokDAKuJAwCsmQMArZkDAK6JAwCviQMAsPkDALH5AwCyTQMAs0UDALRBAwC1SQMAtnEDALdxAwC4IQMAuSEDALohAwC7IQMAvCEDAL0hAwC+IQMAvyEDAICdAQCBEQAAghEAAIQEBQDvFAAAnkUAgKJFAIC+EAUA48gAAKpFAIDh0AEArkUAgLJFAIC2RQCAukUAgL5FAICqeQIAq3kCAIboBACHYAUArsECAK/JAgCs3QIArdUCAMJFAICjRQIAxkUAgMpFAICmXQIAzkUAgNJFAIClVQIA1kUAgNpFAIDeRQCA4kUAgOZFAIDqRQCA7kUAgO+EDgC+rAQA4dAOAPJFAIDjFAEA9kUAgPpFAID+RQCAAkYAgLPdAQAGRgCACkYAgA5GAIASRgCAtv0BALX9AQAaRgCAu90BALrdAQCE4AQAHkYAgL+hAQC+vQEAvb0BALy9AQCoBQYAqR0GAKoVBgCrLQYArDUGAK09BgCuNQYArykGAKZFAICC9QcAgeUHAIDlBwAWRgCAIkYAgIYcAACHsAMAuCUGALnFBgC6zQYAu8UGALzdBgC9xQYAvs0GAL/FBgCwWQYAsVkGALIpBgCzKQYAtDkGALUlBgC2JQYAtx0GAKOdBgAmRgCAKkYAgC5GAIAyRgCApr0GAKW9BgA2RgCAq50GAKqdBgA6RgCAPkYAgK/hBgCu/QYArf0GAKz9BgBCRgCAs/UHAEZGAIBKRgCAtu0HAE5GAIBSRgCAteUHALqNBwC7kQcAVkYAgFpGAIC+dQcAv30HALyBBwC9fQcAqCUGAKkpBgCqOQYAqzkGAKwpBgCtKQYArnkGAK91BgBeRgCAYkYAgGZGAIBqRgCAbkYAgHJGAIB2RgCAekYAgLjVBgC53QYAuuEGALv9BgC85QYAve0GAL7lBgC/mQYAsA0GALERBgCyEQYAs+0GALT1BgC1/QYAtvUGALftBgCjsQYAgi0AAIEVAACAsQAANkUAgKapBgCloQYAfkYAgKvVBgCqyQYAgkYAgL5oAQCvOQYArjEGAK05BgCsxQYAikYAgLPxAQCGaAAAh3wBALZdAQCORgCAkkYAgLVVAQC6SQEAu0kBAJZGAICaRgCAvj0BAL8hAQC8OQEAvTUBAJ5GAICiRgCAhAQDAL6AHACmRgCA4RwGAKpGAIDjAAYAvwguAK5GAICyRgCA78gHALZGAIC6RgCAvkYAgMJGAIDGRgCAykYAgKN9AgDORgCApdkCANJGAIDWRgCAptECANpGAIDeRgCAq8UCAKrFAgCtuQIArLUCAK+tAgCusQIAqW0FAKhZBQCrDQIAqrkCAK0dAgCsHQIArwUCAK4NAgC+aB0A4kYAgOZGAIDqRgCAgB0AAIEJAACCmQEA7kYAgLnhAwC4KQIAu+EDALrpAwC94QMAvPkDAL/hAwC+6QMAsU0CALBNAgCzIQIAsi0CALUlAgC0OQIAtxECALYlAgCowQIAqdECAKrRAgCr5QIArP0CAK0VAQCuHQEArw0BAPJGAID6RgCA/kYAgAJHAIAGRwCACkcAgA5HAIASRwCAuAUBALkJAQC6HQEAuxUBALwxAQC9MQEAvv0BAL/1AQCweQEAsUEBALJBAQCzXQEAtEUBALVNAQC2RQEAtz0BAIagHQCHxB0AFkcAgO/YAAAaRwCAHkcAgCJHAIDvxAYAhGwcAOH0BgAmRwCA47AGACpHAIDhlAEALkcAgONEBgCzGQIAMkcAgDZHAIA6RwCAhewsALbVAQC1NQIAPkcAgLvFAQC6/QEAQkcAgEZHAIC/yQEAvsEBAL3JAQC81QEAo9kdAPZGAIBKRwCATkcAgFJHAICmFR4ApfUdAFZHAICrBR4Aqj0eAFpHAIBeRwCArwkeAK4BHgCtCR4ArBUeAIBpAACBaQAAggUAAGJHAIBmRwCAakcAgIcQAwCGfAMAbkcAgHJHAIB2RwCAekcAgH5HAICCRwCAhkcAgIpHAICopR8Aqa0fAKqlHwCrvR8ArKUfAK2tHwCupR8ArxUfAI5HAICSRwCAlkcAgJpHAICeRwCAokcAgKZHAICqRwCAuA0fALkZHwC6IR8AuyEfALzZAAC92QAAvskAAL/BAACwcR8AsXEfALJxHwCzRR8AtEEfALVNHwC2PR8AtzUfALMtHgCuRwCAskcAgLZHAIC6RwCAti0eALUtHgC+RwCAu7UeALq1HgDCRwCAxkcAgL+JHgC+hR4AvZEeALylHgCCKQAAo2keAIAdAACBFQAApmkeAMpHAIDORwCApWkeAKrxHgCr8R4A0kcAgITgAQCuwR4Ar80eAKzhHgCt1R4AqNUBAKnlAQCq7QEAq+UBAKz9AQCt5QEAru0BAK/lAQC+oAEAhkYAgNZHAIDaRwCAhhAAAId0AQDeRwCA4kcAgLh9AQC5wQAAusEAALvBAAC8wQAAvckAAL7xAAC/8QAAsJ0BALFFAQCyTQEAs0UBALRdAQC1RQEAtk0BALdFAQDmRwCA6kcAgO5HAIDyRwCA9kcAgO80AgDv7B4A+kcAgOHwHQDj4AIA4zAeAOGEAQD+RwCAAkgAgAZIAIAKSACAsyUCAJQAAAAOSACAEkgAgBZIAIC2JQIAtTUCABpIAIC7wQIAuhkCAB5IAIAiSACAv8ECAL7ZAgC90QIAvNkCACZIAIAqSACALkgAgKPpAgAySACApfkCAKbpAgA2SACAOkgAgD5IAICq1QIAqw0CAKwVAgCtHQIArhUCAK8NAgCAYQAAgWEAAIIFAABCSACASkgAgIQABAC+FAQATkgAgIbABACHUAMAUkgAgFZIAIBaSACAXkgAgGJIAIBmSACAqK0CAKm9AgCqtQIAqw0BAKwVAQCtHQEArhUBAK8NAQCE7AQAakgAgG5IAIBySACAdkgAgHpIAIB+SACAgkgAgLgdAQC5LQEAuiUBALvNAQC81QEAvd0BAL7JAQC/wQEAsH0BALFVAQCyXQEAs1UBALRNAQC1PQEAtjUBALctAQDhGB4AhkgAgOM4HgCKSACAjkgAgJJIAICWSACAmkgAgJ5IAICiSACAvmAEAKZIAICBdQAAgHUAAO/gHwCCbQAAqkgAgK5IAICG6AQAh3wFALJIAIDhkAEAukgAgOOgAAC+SACAwkgAgMZIAIDvtAAAykgAgM5IAIDSSACA1kgAgLUFBgBGSACAtkgAgLYFBgDaSACA3kgAgLOlBQDiSACAvRkGALwRBgC/YQYAvhEGAOZIAIDqSACAuwkGALohBgCj/QUA7kgAgPJIAID2SACA+kgAgKZdBgClXQYA/kgAgKtRBgCqeQYAAkkAgAZJAICvOQYArkkGAK1BBgCsSQYAqFEGAKlZBgCqYQYAq2EGAKxhBgCtYQYArmEGAK9hBgAKSQCADkkAgBJJAIAWSQCAgA0AAIGxAQCCsQEAGkkAgLhNBwC5VQcAul0HALtVBwC8TQcAvXUHAL59BwC/cQcAsMUHALHNBwCyxQcAs90HALTFBwC1zQcAtsUHALd5BwCz6QcAHkkAgCJJAICEwAEAvtgBALbhBwC16QcAJkkAgLsJBgC6AQYAhogAAIesAQC/CQYAvgEGAL0JBgC8EQYAKkkAgKOtBwAuSQCAMkkAgKalBwA2SQCAOkkAgKWtBwCqRQYAq00GAD5JAIBCSQCArkUGAK9NBgCsVQYArU0GAKhZBgCpZQYAqm0GAKtlBgCsYQYArWEGAK5hBgCvYQYAhKwBAEZJAIBKSQCATkkAgFJJAIBWSQCAWkkAgF5JAIC4kQEAuZkBALqhAQC7oQEAvHEBAL1xAQC+cQEAv3EBALDxAQCx8QEAsvUBALPdAQC0xQEAtbEBALaxAQC3sQEAs+UFAGJJAIBmSQCAakkAgG5JAIC24QUAtekFAHJJAIC7NQIAujUCAHZJAIB6SQCAv3UCAL4BAgC9CQIAvCECAH5JAICjoQUAgkkAgIZJAICmpQUAikkAgI5JAIClrQUAqnECAKtxAgCSSQCAvigDAK5FAgCvMQIArGUCAK1NAgCA1QAAgd0AAILhAACaSQCA4yABAJ5JAIDhqAEAokkAgO80AgCmSQCAhggMAIdoAwCsAAAAqkkAgK5JAICySQCAs40DALZJAIC6SQCAhIAMAL5JAIC2vQMAtYEDAMJJAIC7TQMAuk0DAMZJAIDKSQCAv00DAL5NAwC9TQMAvE0DAKhBAgCpTQIAqkUCAKtZAgCsSQIArX0CAK51AgCvuQIAvmgNAM5JAIDSSQCA1kkAgIRsDADaSQCA3kkAgOJJAIC4TQEAuVUBALpVAQC7ZQEAvH0BAL0VAQC+EQEAvxEBALDJAgCxyQIAstkCALPZAgC0yQIAtckCALZ9AQC3dQEA4XgHAOOYAADjuAYA4VwGAOZJAIDqSQCA7kkAgPJJAID2SQCA+kkAgP5JAIACSgCA7AAAAO9cAADv6AYACkoAgIFpAACAYQAAo4UCAIJhAACliQIADkoAgBJKAICmtQIAhkAMAIfEDACrRQIAqkUCAK1FAgCsRQIAr0UCAK5FAgCojQ4AqZEOAKqVDgCrqQ4ArKUOAK2tDgCupQ4Ar9kOAAZKAIAWSgCAGkoAgB5KAIAiSgCAJkoAgCpKAIAuSgCAuHUPALl9DwC6dQ8Au90PALzFDwC9zQ8AvsUPAL/9DwCwqQ4AsbUOALK1DgCzhQ4AtJ0OALVRDwC2UQ8At1EPALMdDgAySgCANkoAgDpKAIA+SgCAti0OALUtDgBCSgCAu3EOALptDgBGSgCASkoAgL+VDwC+WQ4AvVEOALxhDgBOSgCAo1kOAFJKAIBWSgCApmkOAFpKAIBeSgCApWkOAKopDgCrNQ4AYkoAgGZKAICuHQ4Ar9EPAKwlDgCtFQ4AqL0OAKnRDgCq0Q4AqykBAKw5AQCtOQEArikBAK8pAQCADQAAgRUAAIIdAABqSgCAbkoAgHJKAIC+dAIAdkoAgLjtAQC5hQEAuoEBALuBAQC8hQEAvY0BAL6xAQC/sQEAsFkBALFZAQCy7QEAs+UBALT9AQC15QEAtuUBALfVAQB6SgCAtqkBALWhAQB+SgCAs0kOAIJKAICGOAAAh9wBAL8xAQC+KQEAvSEBALwpAQC7jQEAuo0BAJZJAICGSgCAoxkOAIpKAICOSgCAkkoAgJZKAICm+QEApfEBAJpKAICr3QEAqt0BAJ5KAICiSgCAr2EBAK55AQCtcQEArHkBAKZKAIDv3A8AqkoAgK5KAICySgCAtkoAgLpKAIC+SgCAwkoAgMZKAIDKSgCAzkoAgNJKAIDj6A4A1koAgOGMDgCAEQAAgREAAIIRAACEQAIA2koAgN5KAIDiSgCAvhADAIbABACHRAMA6koAgO5KAIDySgCA9koAgPpKAID+SgCA7yQCAAJLAIAGSwCACksAgA5LAIASSwCAFksAgBpLAICE7AQAHksAgCJLAIAmSwCA4+wCACpLAIDhOAEALksAgLNVAwAySwCANksAgDpLAIA+SwCAth0DALUdAwBCSwCAuwkDALo5AwBGSwCASksAgL/9AAC+/QAAvfkAALwRAwCogQIAqYkCAKqdAgCrsQIArNUCAK3dAgCu1QIAr80CAIDNAQCBCQAAghkAAE5LAIBSSwCAWksAgL5wBQBeSwCAuFkBALlZAQC6aQEAu2kBALx5AQC9eQEAvmkBAL9lAQCwvQIAsY0CALKFAgCzbQEAtHkBALV5AQC2aQEAt2kBAIYgBACHCAUAYksAgGZLAIBqSwCAbksAgHJLAIDvXAAAhOwEAOFcDgB2SwCA44wOAHpLAIB+SwCAgksAgIZLAICjVQIAiksAgI5LAICSSwCAlksAgKYdAgClHQIAmksAgKsJAgCqOQIAnksAgKJLAICv/QEArv0BAK35AQCsEQIAqGkGAKlpBgCqeQYAq3kGAKxpBgCtaQYArp0GAK+VBgBWSwCApksAgKpLAICuSwCAsksAgLZLAIC6SwCAvksAgLj1BgC5+QYAuo0GALuFBgC8nQYAvYUGAL6FBgC/tQYAsO0GALH1BgCy/QYAs/UGALTtBgC10QYAttEGALfRBgCz8QYAghUAAIG1AACAtQAAwksAgLbpBgC14QYAvtQDALsxBgC6KQYAxksAgMpLAIC/FQYAvikGAL0hBgC8KQYAzksAgKO1BgCGyAAAh8gAAKatBgDSSwCA1ksAgKWlBgCqbQYAq3UGANpLAIDeSwCArm0GAK9RBgCsbQYArWUGAKg1BgCpOQYAqoEGAKuBBgCsgQYArYEGAK6BBgCvtQYA4ksAgOZLAIDqSwCA7ksAgPJLAID2SwCA+ksAgP5LAIC4nQYAua0GALqlBgC7aQEAvHkBAL15AQC+aQEAv2kBALDRBgCx0QYAstEGALPRBgC0tQYAtb0GALa1BgC3rQYAswkGAAJMAIAGTACACkwAgA5MAIC2AQYAtQkGABJMAIC7FQYAuhUGABZMAIAaTACAv3kGAL5xBgC9BQYAvAUGAB5MAICjTQYAIkwAgOZKAICmRQYAJkwAgCpMAIClTQYAqlEGAKtRBgAuTACAMkwAgK41BgCvPQYArEEGAK1BBgCB6QMAgN0DAISIAwCC4QMAhrA8AIeIAgC+VAMAOkwAgD5MAIBCTACARkwAgEpMAIBOTACAUkwAgFZMAIBaTACA4/AGAF5MAIDhMAYAhAA8AGJMAIBmTACAakwAgG5MAIByTACAhTQ9AHZMAIB6TACA77AHAH5MAICCTACAhkwAgIpMAICOTACAkkwAgL7EPACWTACAgp0BAIGdAQCAnQEAqA0CAKllAgCqfQIAq3UCAKxZAgCtWQIArpkDAK+ZAwCw6QMAsekDALL5AwCz+QMAtOkDALXpAwC2XQMAt1UDALhtAwC5dQMA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t/0eALO5HgBeUgCAYlIAgGZSAIBqUgCAtsUeALXVHgBuUgCAu8EeALr5HgByUgCAdlIAgL/FHgC+2R4AvdEeALzZHgB6UgCAo/0eAH5SAICCUgCApoEeAIZSAICKUgCApZEeAKq9HgCrhR4AjlIAgJJSAICunR4Ar4EeAKydHgCtlR4AqCkeAKkpHgCqVR4Aq20eAKx1HgCtfR4ArnUeAK9pHgCWUgCAmlIAgJ5SAICiUgCAplIAgKpSAICuUgCAslIAgLjpHgC59R4Auv0eALv1HgC87R4AvZEeAL6RHgC/kR4AsB0eALHlHgCy7R4As+UeALT9HgC15R4Atu0eALflHgCz3R4AtlIAgLpSAIC+UgCAwlIAgLb9HgC1/R4AhFgBALshHgC62R4AvigAAMpSAIC/IR4AvjkeAL0xHgC8OR4AgU0AAIBNAACjlR4Agl0AAKW1HgDGUgCAzlIAgKa1HgB2UQCA0lIAgKtpHgCqkR4ArXkeAKxxHgCvaR4ArnEeAIYABACHRAMAs4ECANZSAIC1gQIA2lIAgN5SAIC2gQIAiAAAAOJSAIC74QIAuu0CAL3lAgC8+QIAv9ECAL7lAgDmUgCA6lIAgIREAwC+jAMA4UgCAO5SAIDjAAIA7/wfAPJSAIDhPB4A79wCAONgHwD2UgCA+lIAgP5SAIACUwCAqQUCAKixAgCrBQIAqgUCAK0NAgCsBQIArzUCAK41AgCEbAUABlMAgApTAIAOUwCAElMAgBZTAIAaUwCAHlMAgLnpAwC44QMAu/kDALrhAwC96QMAvOEDAL9dAwC+4QMAsSkCALAlAgCzPQIAsiECALUZAgC0LQIAt9kDALYRAgAiUwCAJlMAgCpTAICjhQMALlMAgKWFAwCmhQMAMlMAgDpTAIA+UwCAqukDAKvlAwCs/QMAreEDAK7hAwCv1QMAgEkAAIFVAACCVQAAo6kCAL6YBAClQQEApkEBAEJTAICG4AUAh+AFAKotAQCrOQEArBEBAK0FAQCuDQEArwUBAEZTAIBKUwCATlMAgO/cAABSUwCAVlMAgFpTAIDviB4AhCwHAOHsHgBeUwCA4xweAGJTAIDhlAEAZlMAgOMwAACzJQIAhWDmAGpTAIBuUwCAclMAgLbNAQC1zQEAdlMAgLu1AQC6oQEAelMAgH5TAIC/iQEAvoEBAL2JAQC8nQEA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qoECAKuBAgCsgQIArYECAK6FAgCvHQEAAlYAgAZWAIAKVgCADlYAgBJWAIAWVgCAGlYAgIS4BQC4dQEAuX0BALp1AQC7CQEAvBkBAL0ZAQC+CQEAvwEBALBlAQCxbQEAsmUBALN9AQC0aQEAtV0BALZVAQC3TQEAHlYAgCJWAIAmVgCAKlYAgC5WAIAyVgCA7zQAAO/ADgDhXA4A4UwPAOOUAADjnA4ANlYAgIJlAACBfQAAgH0AADpWAIA+VgCAvsQHALNFAgBCVgCAtUUCALZNAgBKVgCAhkAGAIeQBAC67QEAu+UBALz9AQC95QEAvuEBAL/VAQCflQgAngUIAJ3dDQCcPQwAmzEMAJr1DQCZ7RAAmD0QAJfVEQCWsRUAlQUUAJTlFQCTtRkAkjEYAJE5GACQDRwAj2EcANZVAICz1QYATlYAgLX9BgBGVgCAUlYAgLaRBgBWVgCAWlYAgLuVBgC6lQYAvVUHALxVBwC/VQcAvlUHAF5WAIBiVgCAqo0GAKuFBgCsnQYArYUGAK6BBgCvtQYAhKgAAGZWAIBqVgCAoyUFAG5WAIClJQUApi0FAHJWAIB2VgCAelYAgH5WAICCVgCAhlYAgIpWAICOVgCAklYAgJZWAICaVgCAnlYAgKJWAICjqQUAotEEAKHZBACgZQUAgiEdAIM1HQCmVgCAqlYAgIaVGACH3RQAhBkZAIUZGQCKDRUAi7EUAK5WAICyVgCAjsURAI/VDACMzRAAjR0RAJJhDQCTdQ0AvkwAALpWAICWxQkAl80EAJSNDACVXQkAmkEFAJtBBQCGyP8Ah0wAAIFZAACAeQAAnCEEAIJRAAChxQEAvlYAgKMB/ACi2QEApRX9AKS1/QCnufkApgH4AKkJ+AColfkAqwX1AKqt9QCtsfEArAHwAK8d8ACurfEAseHtALAB7ACzAegAsv3sALVd6QC09ekAwlYAgMZWAIDKVgCAzlYAgNJWAIDWVgCA2lYAgN5WAIDiVgCA5lYAgKiNBACplQQAqpUEAKulBACsvQQArdkEAK75BACv8QQAhGz8AOpWAIDuVgCA8lYAgPZWAID6VgCA/lYAgAJXAIC4eQUAucUFALrNBQC7xQUAvN0FAL3FBQC+zQUAv+0FALCZBACxmQQAskkFALNJBQC0WQUAtVkFALZJBQC3SQUAox0EAL7M/AAGVwCAClcAgA5XAICmWQQApTUEABJXAICrXQQAql0EABZXAIAaVwCAr50FAK6dBQCtnQUArJ0FAB5XAICznQIAIlcAgCpXAIC2UQIALlcAgDJXAIC1uQIAukkCALtVAgCGSP0Ah8D8AL41AgC/PQIAvEUCAL09AgCo3QQAqUkDAKpRAwCrbQMArHUDAK2VAwCunQMAr7kDAICNAQCB5QEAguEBADZXAIA6VwCAPlcAgEJXAIBGVwCAuJUDALmdAwC6lQMAu60DALy1AwC9vQMAvrUDAL9VAgCwyQMAsdUDALLVAwCzrQMAtLUDALW9AwC2tQMAt60DAEpXAIBOVwCAo9EDAFJXAICl9QMAVlcAgFpXAICmHQMAXlcAgGJXAICrGQMAqgUDAK1xAwCsCQMAr3EDAK55AwDhKAcAZlcAgOPkBgBqVwCA4SgGAG5XAIDjaAEAclcAgHZXAIB6VwCA71gAAH5XAICCVwCAhlcAgO/IBgCKVwCAqE39AKmB/QCq0f0Aq9H9AKzx/QCt8f0ArvH9AK/x/QAmVwCAghEAAIEZAACA0f8AjlcAgJJXAICEdAMAvnQDALh1/gC5ff4AunX+ALvF/gC83f4AvcX+AL7F/gC/9f4AsJH9ALGR/QCykf0As5H9ALRV/gC1Xf4AtlX+ALdN/gCzWf0AllcAgIasAACHRAMAmlcAgLZx/QC1ef0AnlcAgLtV/QC6Vf0AolcAgKZXAIC/mf4AvpH+AL1F/QC8Rf0AqlcAgKMd/QCuVwCAslcAgKY1/QC2VwCAulcAgKU9/QCqEf0AqxH9AL5XAIDCVwCArtX+AK/d/gCsAf0ArQH9AKjN/wCp0f8AqtH/AKsh/gCsIf4ArSH+AK4h/gCvIf4AxlcAgMpXAIDOVwCA0lcAgNZXAIDaVwCA3lcAgOJXAIC4jf4AuZH+ALqV/gC7rf4AvLX+AL25/gC+qf4Av6n+ALDh/gCx4f4AsuX+ALP5/gC06f4AtdX+ALbd/gC3uf4As1n/AOZXAIC2VgCA6lcAgO5XAIC2of4Atan+APJXAIC7Jf4AuiX+APZXAID6VwCAvxH+AL4t/gC9Lf4AvDH+AIIZAACjHf8AgGUAAIEZAACm5f4A/lcAgAJYAICl7f4AqmH+AKth/gCEZAEAviAAAK5p/gCvVf4ArHX+AK1p/gAKWACA4zT+AA5YAIDhfP0AhrAEAIcIAwASWACAFlgAgBpYAIAeWACAhCQDAIQkBAAiWACA70j+ACZYAIAqWACAs+kCAC5YAIC+RAQAvkAFADJYAIC2nQIAtZkCADZYAIC7iQIAur0CADpYAIA+WACAv1kDAL5RAwC9WQMAvJECAKkdAgCoFQIAqyUCAKolAgCtWQIArFUCAK9NAgCuUQIAvmQGAEJYAIBGWACASlgAgE5YAIBSWACAVlgAgFpYAIC5+QMAuPEDALtNAwC68QMAvUEDALxZAwC/cQMAvkEDALEJAgCwPQIAs8kDALIBAgC12QMAtNEDALfJAwC20QMA4ZABAF5YAIDj8AAAYlgAgGZYAICCPQAAgT0AAIA9AABqWACAblgAgHJYAIB6WACAflgAgIJYAIDvLAAAhlgAgKPpAwCKWACAhugEAIdgBQCOWACApp0DAKWZAwCSWACAq4kDAKq9AwCWWACAmlgAgK9ZAgCuUQIArVkCAKyRAwCeWACAolgAgKZYAICqWACArlgAgLJYAIC2WACA71gBAISgBADhVP8AulgAgOOEAQC+WACAwlgAgMZYAIDKWACAs9kBAM5YAICFzBkA0lgAgNZYAIC28QEAtfkBANpYAIC7pQEAutkBAN5YAIDiWACAv50BAL6dAQC9pQEAvK0BAKgBBgCpDQYAqhEGAKsRBgCsMQYArTEGAK4pBgCvJQYAdlgAgILJBwCBwQcAgPEHAOZYAIDqWACAhhwAAIf8AwC47QYAufUGALr9BgC79QYAvO0GAL1RBwC+VQcAv00HALBdBgCxIQYAsjkGALMxBgC0GQYAtRkGALbdBgC31QYAo5kGAO5YAIDyWACA9lgAgPpYAICmsQYApbkGAP5YAICr5QYAqpkGAAJZAIAGWQCAr90GAK7dBgCt5QYArO0GAApZAICz8QcADlkAgBJZAIC2gQcAFlkAgBpZAIC1mQcAuo0HALtlBwAeWQCAIlkAgL59BwC/ZQcAvH0HAL11BwCoLQYAqTUGAKo9BgCrMQYArFUGAK1FBgCuRQYAr3UGACZZAIAqWQCALlkAgDJZAIA2WQCAOlkAgD5ZAIBCWQCAuOkGALn1BgC6/QYAu/UGALztBgC9kQYAvpUGAL+NBgCwDQYAseUGALLtBgCz5QYAtP0GALXlBgC27QYAt+UGAKO1BgBGWQCASlkAgE5ZAIBSWQCA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nlsAgLshBwC6yQcAolsAgKZbAIC/KQcAviEHAL0pBwC8NQcAqlsAgKOBBwCuWwCAslsAgKaBBwC2WwCAulsAgKWRBwCqjQcAq2UHAL5bAIDCWwCArmUHAK9tBwCscQcArW0HAKgVAQCpgQEAqoEBAKuBAQCsgQEArYkBAK6xAQCvsQEAxlsAgMpbAIDOWwCA0lsAgNZbAIDaWwCA3lsAgOJbAIC4ZQAAuW0AALplAAC7fQAAvGUAAL1tAAC+ZQAAv90AALChAQCxrQEAsqUBALO5AQC0qQEAtZ0BALaVAQC3XQAA5lsAgIIdAACBHQAAgB0AAOpbAIDuWwCA8lsAgL5YAQCErAIA9lsAgIcIAQCGjAEA+lsAgKZaAID+WwCAAlwAgLNJAQAGXACAClwAgA5cAIASXACAtkkBALVJAQAWXACAuykBALolAQAaXACAHlwAgL8ZAQC+LQEAvS0BALwxAQC+2AMAIlwAgO/4BgAmXACAKlwAgC5cAIDv4AIAMlwAgOGUAQA2XACA43QCADpcAIDhmAUAPlwAgOMMBwBCXACARlwAgEpcAICjwQIAhIwDAKXBAgBOXACAUlwAgKbBAgBWXACAWlwAgKuhAgCqrQIAraUCAKy5AgCvkQIArqUCAKgxAwCpPQMAqjUDAKtJAwCsWQMArVkDAK5JAwCvQQMAgMUAAIEJAACCGQAAXlwAgGJcAIBqXACAh2wDAIYcHAC47QAAufEAALr1AAC7jQAAvJUAAL2BAAC+gQAAv70AALAJAwCxCQMAsu0AALPhAAC04QAAteEAALblAAC32QAAblwAgHJcAIB2XACAs7ECAHpcAIC13QIAttUCAH5cAICCXACAhlwAgLrBAgC7wQIAvDUBAL05AQC+KQEAvykBAKaNAgCKXACAjlwAgKWFAgCSXACAo+kCAJZcAICaXACArnEBAK9xAQCsbQEArWEBAKqZAgCrmQIAnlwAgKJcAICmXACA4YQGAKpcAIDjJAYArlwAgOGUAQCyXACA4ywAAL7oHQC2XACAulwAgO/IAACE/B0AvvAcAL5cAIDvSAcAwlwAgMZcAIDKXACAzlwAgIEdAACAHQAA0lwAgIIFAACGQBwAh8QcANpcAIDeXACA4lwAgOZcAIDqXACA7lwAgKi1HgCpBR8Aqg0fAKsFHwCsAR8ArQkfAK45HwCvOR8A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rmU+AK1xPgCsAT4A0mIAgNZiAIDaYgCA3mIAgOJiAIDmYgCA6mIAgO5iAICAOQAAgTkAAIIFAADyYgCAvrgBAIS4AQD6YgCA/mIAgKitAgCp1QIAqtUCAKstAwCsNQMArT0DAK41AwCvLQMAAmMAgAZjAIAKYwCADmMAgBJjAIAWYwCAGmMAgB5jAIC46QMAuekDALqJAwC7iQMAvJkDAL2ZAwC+iQMAv4kDALBVAwCxXQMAslUDALPpAwC0+QMAtfkDALbpAwC34QMAs10CACJjAICGKAQAh8wDACZjAIC2vQMAtb0DACpjAIC7mQMAupEDAC5jAIAyYwCAvz0DAL49AwC9PQMAvIEDAIUAFACjGQIANmMAgDpjAICm+QMAPmMAgEJjAICl+QMAqtUDAKvdAwBGYwCASmMAgK55AwCveQMArMUDAK15AwDjVD4A4dw/AOHQPgDjPD4ATmMAgO8cAABSYwCAVmMAgFpjAIDjwAAAXmMAgOHUAQDvYD4AYmMAgGpjAIDvRD8AgGEAAIFtAACCfQAAhAAFAIbwBACHnAUAvhAFAG5jAIByYwCAdmMAgHpjAIB+YwCAgmMAgIZjAICKYwCAjmMAgLiJPQC5iT0Aupk9ALuRPQC8uT0Avbk9AL7RPQC/0T0AsAU+ALENPgCyBT4Asx0+ALQFPgC1DT4AtgU+ALe5PQConT4Aqa0+AKqlPgCrvT4ArKU+AK2tPgCupT4Ar30+AISsBAC+rAQAkmMAgJZjAICaYwCAnmMAgKJjAICmYwCAqPkFAKn5BQCqKQYAqykGAKw5BgCtOQYArikGAK8pBgBmYwCAqmMAgK5jAICyYwCAtmMAgLpjAIC+YwCAwmMAgLiNBgC5kQYAupEGALulBgC8vQYAvUUHAL5BBwC/QQcAsFkGALFZBgCy7QYAs/0GALTtBgC13QYAttUGALe1BgCzoQYAxmMAgMpjAIDOYwCA0mMAgLa5BgC1sQYA2mMAgLudBgC6nQYA1mMAgPZiAIC/GQYAvikGAL0pBgC8OQYAglEAAKPlBgCAQQAAgUEAAKb9BgDeYwCA4mMAgKX1BgCq2QYAq9kGAIZIAACHbAAArm0GAK9dBgCsfQYArW0GAKg5BgCpWQYAqmkGAKtpBgCseQYArXkGAK5pBgCvaQYA5mMAgOpjAIDuYwCA8mMAgPZjAID6YwCA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uNEGALnZBgC64QYAu+EGALyRBgC9nQYAvpUGAL+JBgCwSQYAsUkGALJdBgCzVQYAtE0GALXxBgC28QYAt/EGALDhBwCx4QcAsgkHALMJBwC0GQcAtRkHALYJBwC3CQcAuDkHALkNBwC6GQcAuxkHALwJBwC9CQcAvn0HAL9xBwCCZgCAlmUAgIZmAICKZgCAjmYAgJJmAICWZgCAmmYAgKjxBwCpxQcAqsEHAKvdBwCsyQcArb0HAK6pBwCvoQcAsykGAJ5mAICiZgCApmYAgKpmAIC2XQYAtSEGAK5mAIC7RQYAukUGALJmAIC2ZgCAv70GAL69BgC9vQYAvL0GALpmAICjbQYAvmYAgMJmAICmGQYAxmYAgMpmAIClZQYAqgEGAKsBBgDOZgCA0mYAgK75BgCv+QYArPkGAK35BgCobQYAqbEBAKpJAQCrRQEArF0BAK1FAQCuTQEAr0UBANZmAICCHQAAgR0AAIAdAADaZgCA3mYAgOJmAIC+VAEAuIEAALmNAAC6hQAAu5kAALyJAAC9vQAAvrUAAL99AACwPQEAseEAALLhAACz4QAAtOEAALXpAAC20QAAt9EAALsFAwC62QIAhiwCAIcsAwC/DQMAvgUDAL0VAwC8FQMAs+ECAOpmAIDuZgCAhCwDAPJmAIC25QIAtfUCAPZmAICqnQIAq0EDAPpmAID+ZgCArkEDAK9JAwCsUQMArVEDAAJnAICjpQIABmcAgApnAICmoQIADmcAgBJnAIClsQIAqakAAKihAACrtQAAqr0AAK3dAACs3QAAr/EAAK79AAC+LBwAFmcAgBpnAIAeZwCAImcAgCZnAIAqZwCALmcAgLl9AAC4fQAAu80BALrNAQC93QEAvN0BAL/NAQC+zQEAsZUAALCJAACzTQAAspUAALVdAAC0XQAAt00AALZNAAAyZwCANmcAgDpnAIA+ZwCAQmcAgEZnAIBKZwCATmcAgIA5AACBOQAAggUAAFJnAIBaZwCAXmcAgIf4AgCGfB0A4bgEAL7IHADjQAYAYmcAgGZnAIBqZwCAbmcAgHJnAIB2ZwCAemcAgH5nAICCZwCAhmcAgIpnAIDvsAcAjmcAgJJnAICWZwCAmmcAgO/IAACeZwCAomcAgKZnAIDvQAYAqmcAgOH8BgCuZwCA4xwGALJnAIDhlAEAtmcAgONkBgCAEQAAgRkAAIIpAACz/QEAumcAgLWdAQC2lQEAvmcAgMJnAICEbB0AuoUBALuZAQC8iQEAvVEBAL5RAQC/UQEAozEeAFZnAIDGZwCAymcAgM5nAICmWR4ApVEeANJnAICrVR4AqkkeAIYIAwCHbAMAr50eAK6dHgCtnR4ArEUeANZnAICzCR8A2mcAgN5nAIC2CR8A4mcAgOZnAIC1CR8AugUfALsNHwDqZwCA7mcAgL4FHwC/CR8AvBUfAL0NHwCw5R8Ase0fALLlHwCz/R8AtOUfALXpHwC2GR8AtxkfALgpHwC5NR8Auj0fALs1HwC8ER8AvR0fAL4JHwC/BR8A8mcAgPZnAIDmZgCA+mcAgP5nAIACaACABmgAgApoAICo0R8AqdEfAKqlHwCrvR8ArKUfAK2tHwCupR8Ar50fAKNNHgAOaACAEmgAgBZoAIAaaACApk0eAKVNHgAeaACAq0keAKpBHgAiaACAJmgAgK9NHgCuQR4ArUkeAKxRHgCADQAAgRUAAIIdAAAqaACALmgAgDJoAICEtAEAvrQBAL/oAQA6aACAhkgHAIc0AACEvAYAPmgAgEJoAIC+tAYAqI0BAKmVAQCqlQEAq80BAKzZAQCt2QEArs0BAK/FAQBGaACASmgAgE5oAIBSaACAVmgAgFpoAIBeaACAYmgAgLgdAQC5wQAAusEAALvBAAC8wQAAvckAAL7xAAC/8QAAsIkBALGJAQCyKQEAsykBALQ9AQC1JQEAti0BALclAQC7bQIAum0CAGZoAIBqaACAv8ECAL7ZAgC93QIAvN0CALM9AgBuaACAcmgAgHZoAICE/AYAtnkCALVxAgB6aACAqikCAKspAgB+aACAgmgAgK6dAgCvhQIArJkCAK2ZAgCGaACAo3kCAIpoAICOaACApj0CAJJoAICWaACApTUCAIJtJwCDjSoAhqgFAIdsAwCGmS4Ah80vAIQRLgCFmS4AiiESAIspEgCaaACAnmgAgI6RFgCPHRYAjBESAI0RFgCScRoAk+UaAKJoAIDvlHYAlvEeAJflHgCUSRoAlRkeAJopAgCb4QIAqmgAgK5oAICyaACA4SASAJzxAgDjIBYAnyEfAJ7BHwCdmRsAnC0bAJuhGwCavRcAmTkXAJixFwCXiRMAlqkTAJWpEwCUdS4AkzkvAJIxLwCRsS8AkDUrAI+tJgDjeB8A0gAAAOFcHwCCmQEAtmgAgIDxAQCB8QEAvqgHALpoAIC+aACAwmgAgIS8BgDvLB8AxmgAgMpoAIDhpB4A48wAAON8HgDhvAEAzmgAgNJoAIDWaACAhJwGANpoAIC+bAYA3mgAgOJoAIDmaACA7xAAAO8EHgDqaACA7mgAgPJoAID2aACA+mgAgP5oAIACaQCABmkAgAppAICAPQAAgQkAAILJBwAOaQCAo/kDAKLxAwChMQMAoM0fALBJcQCxAXwAsgl8ALMhfQC0AXgAtRV4ADZoAICmaACAEmkAgL4oDgCGDAAAh4wDABZpAIAaaQCAHmkAgCJpAIAmaQCAoV0AAKJVAACjfQAApAEMAKUVDACm9QwApwEIAKghCACpxQgAqgF0AKsJdACsAXQArR11AK55cACveXAAqOUFAKnxBQCq8QUAqy0FAKw1BQCtPQUArjUFAK8tBQAqaQCALmkAgDJpAIA2aQCAOmkAgD5pAIBCaQCARmkAgLj9BgC5jQYAuoUGALutBgC8uQYAvbkGAL6tBgC/pQYAsFUFALFdBQCyVQUAs+UGALT9BgC10QYAttEGALfRBgCzeQQASmkAgE5pAIBSaQCAVmkAgLa9BAC1vQQAWmkAgLuZBAC6kQQAXmkAgGJpAIC/FQcAvjkHAL0xBwC8gQQAZmkAgKM9BABqaQCAbmkAgKb5BAByaQCAdmkAgKX5BACq1QQAq90EAHppAIB+aQCArn0HAK9RBwCsxQQArXUHAKhpBwCpaQcAqnkHAKvZBgCs9QYArf0GAK71BgCv5QYAgMkAAIHJAACCBQAAgmkAgIZwDwCHNAAAimkAgI5pAIC4fQYAuQUGALoNBgC7BQYAvB0GAL0FBgC+DQYAvwUGALCdBgCxdQYAsn0GALN1BgC0UQYAtV0GALZVBgC3TQYAs/EEAJJpAICWaQCAmmkAgJ5pAIC2fQUAtX0FAKJpAIC7sQUAulkFAKZpAICqaQCAv5kFAL6VBQC9oQUAvKkFAK5pAICjtQQAsmkAgLZpAICmOQUAumkAgL5pAIClOQUAqh0FAKv1BQDCaQCAxmkAgK7RBQCv3QUArO0FAK3lBQCpuQIAqLECAKvJAgCqsQIArTUCAKw1AgCvNQIArjUCAMppAIDOaQCA0mkAgNZpAIDaaQCA3mkAgOJpAIDmaQCAuekDALjZAwC7iQMA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teEBALbhAQC3zQEAo60NAKp1AICudQCAsnUAgLZ1AICm1Q0ApaENALp1AICr/Q0AqvUNAL51AIDCdQCAryUCAK4lAgCt3Q0ArN0NAIBdAACBbQAAgmUAALNRAwC+nAMAtXkDALYZAwDKdQCAhOACAM51AIC6PQMAuzUDALwZAwC9GQMAvtkDAL/ZAwCohQMAqZUDAKqVAwCrpQMArL0DAK3VAwCu0QMAr9EDAIYABACHNAMAv6AzANJ1AIDWdQCA2nUAgN51AIDidQCAuHEDALlxAwC6cQMAu3EDALzVAAC93QAAvtUAAL/NAACwtQMAsb0DALKBAwCzgQMAtFEDALVRAwC2UQMAt1EDAO+oAwDmdQCA6nUAgO51AICEHAIA8nUAgPZ1AID6dQCAviwFAP51AIACdgCABnYAgONAAwAKdgCA4SgAAA52AICjXQIAEnYAgBZ2AIAadgCAHnYAgKYVAgCldQIAInYAgKs5AgCqMQIAJnYAgCp2AICv1QIArtUCAK0VAgCsFQIA4ygBAOEADwDhCA4A4wgOAID9AACBCQAAgjkAAC52AIAydgCAOnYAgD52AIBCdgCA7+gOAEZ2AIBKdgCA72QOALNtAQBOdgCAhugEAIcMBQBSdgCAtm0BALVtAQBWdgCAu+0AALrtAABadgCAXnYAgL/VAAC+6QAAveEAALzpAACoXQYAqWEGAKqlBgCrvQYArKUGAK2tBgCupQYArxkHADZ2AIBidgCAZnYAgGp2AIBudgCAcnYAgHZ2AIB6dgCAuHUHALl5BwC6DQcAuwUHALwdBwC9BQcAvgUHAL81BwCwaQcAsWkHALJ9BwCzdQcAtG0HALVRBwC2UQcAt1EHAKMtBgB+dgCAgnYAgIZ2AICKdgCApi0GAKUtBgCOdgCAq60HAKqtBwCSdgCAlnYAgK+VBwCuqQcAraEHAKypBwCADQAAgRUAAIIdAACadgCAnnYAgKJ2AICEVAMAvlwAAKZ2AICqdgCAhugAAIdMAwCudgCAsnYAgLZ2AIC6dgCAvnYAgOMEBADCdgCA4bQFAMZ2AIDKdgCAznYAgNJ2AIDWdgCA2nYAgN52AIDidgCA5nYAgO/sBADqdgCA7nYAgLPtBgDydgCA9nYAgPp2AID+dgCAtpEGALXhBgACdwCAu40GALqNBgAGdwCACncAgL9BAQC+WQEAvVEBALxZAQCoJQYAqS0GAKolBgCrOQYArCkGAK1RBgCuSQYAr0EGAIDNAACBCQAAghkAAA53AIASdwCAhCwBAL40AAAadwCAuP0BALlBAQC6QQEAu0EBALxBAQC9SQEAvnEBAL9xAQCwCQYAsQkGALLNAQCzxQEAtN0BALXFAQC2zQEAt8UBAIagPACHRAMAHncAgKOhBQAidwCApa0FAKbdBQAmdwCAKncAgL4oPACqwQUAq8EFAKwVAgCtHQIArhUCAK8NAgC2QQMALncAgDJ3AIC1sQIANncAgLOhAgA6dwCAPncAgL5FAwC/TQMAvHUDAL1NAwC6ZQMAu20DAEJ3AIBGdwCASncAgE53AIDGdQCAUncAgFZ3AIBadwCAXncAgGJ3AICoRQIAqVUCAKpdAgCrVQIArE0CAK21AwCusQMAr60DALDVAwCx3QMAstUDALPtAwC09QMAtf0DALb1AwC37QMAuNkDALnZAwC6rQMAu6UDALy9AwC9pQMAvqUDAL+VAwCj9QMAZncAgGp3AIBudwCAcncAgKYVAgCl5QMAdncAgKs5AgCqMQIAencAgH53AICvGQIArhECAK0ZAgCsIQIAgGkAAIFpAACCBQAAgncAgIp3AICOdwCAkncAgO8cAACEbAIA4ZQBAJZ3AIDjyAAAmncAgJ53AICGWDwAh1A9AKJ3AICmdwCAqncAgISEPQCudwCAsncAgLZ3AIDvuAEAvmw8AOF0BgC6dwCA42QBAL53AIDCdwCAxncAgMp3AICz0QEAzncAgNJ3AIDWdwCA2ncAgLaRAQC1+QEA3ncAgLu9AQC6vQEA4ncAgOZ3AIC/dQEAvnUBAL2FAQC8hQEAqL09AKkNPgCqGT4AqxE+AKwxPgCtUT4ArlE+AK9NPgCGdwCAgh0AAIEdAACAHQAA6ncAgO53AIDydwCA9ncAgLjVPgC53T4AutU+ALtJPwC8WT8AvVk/AL5JPwC/QT8AsDk+ALE5PgCyET4AsxE+ALTxPgC18T4AtvU+ALftPgCjkT4A+ncAgIYoAACHwAMA/ncAgKbRPgCluT4AAngAgKv9PgCq/T4ABngAgAp4AICvNT4ArjU+AK3FPgCsxT4ADngAgLOdPwASeACAFngAgLalPwAaeACAHngAgLWtPwC6aT8Au3U/ACJ4AIAmeACAvlk/AL9FPwC8bT8AvWU/ACp4AIAueACAMngAgDZ4AIDjYDwAOngAgOEAPQA+eACA7/w9AEJ4AIBGeACASngAgE54AIBSeACAVngAgFp4AICjGT4AghkAAIEZAACAcQAAXngAgKYhPgClKT4AYngAgKvxPgCq7T4AhCQBAL4kAQCvwT4Art0+AK3hPgCs6T4AqNE+AKnRPgCq0T4Aq+U+AKzhPgCt4T4Arhk+AK8ZPgCGAAAAh4QAAGp4AIBueACAcngAgHZ4AIB6eACAfngAgLh9PgC5AT4AugE+ALsBPgC8AT4AvQk+AL4xPgC/MT4AsGk+ALF1PgCyfT4As3U+ALRZPgC1RT4Atk0+ALdFPgCohQIAqZUCAKqVAgCrpQIArL0CAK3VAgCu0QIAr9ECAIJ4AICGeACAingAgL8k5gGOeACAkngAgJZ4AICaeACAuFUDALlZAwC6bQMAu2UDALx9AwC9ZQMAvm0DAL9lAwCwtQIAsb0CALKBAgCzgQIAtHEDALVxAwC2cQMAt3EDALMdAgCeeACAongAgKZ4AICEiAMAtlUCALU1AgAWdwCAu3kCALpxAgCqeACArngAgL+1AwC+tQMAvVUCALxVAgCyeACAo1kCALZ4AIC6eACAphECAL54AIDCeACApXECAKo1AgCrPQIAxngAgMp4AICu8QMAr/EDAKwRAgCtEQIAqKkCAKmpAgCquQIAq7kCAKypAgCtqQIArjkBAK85AQCAzQEAgQkAAIIZAADOeACA0ngAgL64BQDaeACA3ngAgLjpAQC56QEAuokBALuFAQC8nQEAvYEBAL6BAQC/tQEAsEkBALFVAQCyXQEAs1UBALRNAQC18QEAtvEBALfxAQDvFAAA4ngAgIaoBQCH3AUA5ngAgIRYBADqeACA78Q+AO54AIDhxD4A8ngAgOMwPgDjyAAA9ngAgOEoAQD6eACAtn0CAP54AIACeQCAtXUCAAZ5AICzZQIACnkAgA55AIC+3QEAv2EBALzdAQC91QEAutkBALvFAQASeQCAFnkAgKOxBQDWeACAGnkAgB55AIAieQCApqkFAKWhBQAmeQCAqxEGAKoNBgAqeQCALnkAgK+1BgCuCQYArQEGAKwJBgAyeQCANnkAgDp5AIA+eQCAgBkAAIEZAACCBQAAQnkAgL5sAwBGeQCAhsgAAIccAwBKeQCATnkAgFJ5AIBWeQCAqLkHAKm5BwCqDQcAqx0HAKwJBwCtNQcArjEHAK8pBwCEqAMAWnkAgF55AIBieQCAZnkAgGp5AIBueQCAcnkAgLjJAAC5yQAAutkAALvRAAC8+QAAvfkAAL6ZAAC/mQAAsF0HALEhBwCyIQcAsz0HALQpBwC1KQcAtgEHALcBBwCzhQYAdnkAgHp5AIB+eQCAgnkAgLa1BgC1gQYAhnkAgLvlBgC6mQYAinkAgI55AIC/7QYAvu0GAL3pBgC89QYAknkAgJZ5AICaeQCAnnkAgKJ5AICmeQCAqnkAgO+QBACueQCA4dwGALJ5AIDj7AUAgCkAAIEVAACCEQAAvnwBAKMFBgC6eQCAhigAAIdMAQC+eQCApjUGAKUBBgDCeQCAq2UGAKoZBgDGeQCAynkAgK9tBgCubQYArWkGAKx1BgDOeQCAs70BANJ5AIDWeQCAtnkBANp5AIDeeQCAtXkBALpVAQC7XQEA4nkAgOZ5AIC++QAAv/kAALxFAQC9+QAAqHECAKlxAgCqcQIAq3ECAKy1AgCtvQIArrUCAK+tAgCE7AwA6nkAgO55AIDyeQCA9nkAgPp5AID+eQCAAnoAgLhpAwC5aQMAugkDALsJAwC8GQMAvRkDAL4JAwC/CQMAsNUCALHdAgCy1QIAs2kDALR5AwC1eQMAtmkDALdhAwAGegCACnoAgA56AICj9QIAEnoAgKUxAgCmMQIAFnoAgBp6AIAeegCAqh0CAKsVAgCsDQIArbEDAK6xAwCvsQMAgGEAAIFhAACCBQAAInoAgIbwDACHYAMAvhAMACp6AIBmeACALnoAgDJ6AIA2egCAOnoAgD56AIBCegCARnoAgKiFAgCplQIAqpUCAKulAgCsvQIArdUCAK7RAgCv0QIASnoAgE56AIBSegCAVnoAgFp6AIBeegCAYnoAgGZ6AIC4dQEAuX0BALp1AQC7zQEAvNUBAL3dAQC+yQEAv8EBALC1AgCxvQIAsoECALOBAgC0VQEAtV0BALZVAQC3TQEA4RAGAIRIDADjDAYAanoAgISYDABuegCAcnoAgHZ6AIB6egCAfnoAgIJ6AICGegCAgXUAAIB1AADvIAEAgnUAAIp6AICOegCAknoAgL7ADACFtA4A4RACAO9cAADjABYA4ZABAJp6AIDjWAEA7zwHAJ56AICiegCAhgAIAIe4DACznQ0AJnoAgKZ6AICqegCArnoAgLbVDQC1tQ0AsnoAgLv5DQC68Q0AtnoAgLp6AIC/GQ4AvhEOAL3VDQC81Q0AvnoAgKPZDQDCegCAxnoAgKaRDQDKegCAznoAgKXxDQCqtQ0Aq70NANJ6AIDWegCArlUOAK9dDgCskQ0ArZENAKhdDgCpYQ4AqmEOAKthDgCsYQ4ArWEOAK5hDgCvYQ4A2noAgN56AIDiegCA5noAgOp6AIDuegCA8noAgPZ6AIC4TQ8AuVEPALpRDwC7UQ8AvHEPAL1xDwC+cQ8Av3EPALDBDwCxwQ8AssEPALPBDwC0wQ8AtcEPALbBDwC3wQ8As+kPAPp6AIC+gAEA/noAgJZ6AIC24Q8AtekPAAJ7AIC7BQ4AugUOAAp7AIAGewCAvwUOAL4FDgC9FQ4AvBUOAIFNAACAQQAA72gNAIJRAACG8AcAh9QBAA57AIASewCAFnsAgIRwAQAaewCAHnsAgOHgDgAiewCA40gNACZ7AICjaQ8AKnsAgC57AIAyewCANnsAgKZhDwClaQ8AOnsAgKuFDgCqhQ4APnsAgEJ7AICvhQ4AroUOAK2VDgCslQ4ARnsAgLMxDgBKewCATnsAgLbBAQBSewCAVnsAgLXRAQC6zQEAu6UBAFp7AIBeewCAvqUBAL+tAQC8sQEAvbEBAI/dJgCj8Q0AYnsAgGZ7AICmAQIAansAgG57AIClEQIAqg0CAKtlAgByewCAviAEAK5lAgCvbQIArHECAK1xAgCfoQwAnnkKAJ1pCgCc0QgAm7E2AJp1NgCZ0TQAmOEyAJdtMgCWZTIAlTU/AJRhPgCTcT4AkjU7AJFxOgCQeToAgJUAAIGdAACCoQAAensAgO9EAgDhdA8AfnsAgOMcDwDj1AEAgnsAgOHgAQDvXAEAo7UCAKJBAACh3Q4AoLkOALWpAwCGewCAhMAEALahAwCG8AUAh+QEALOFAwCKewCAvXEDALxpAwC/QQMAvnEDAI57AIC2eQCAu3EDALp5AwCC3ScAgwE7AL6EBwC+wAYAhhE/AIcZPwCEETsAhV06AIp9PgCLJTMAknsAgJZ7AICOuTUAjxU3AIw1MwCNgTMAkqE3AJPZCQC+xBkAmnsAgJaxDQCXUQ8AlHkLAJVhCwCaBQ8Am5EBAJ57AICiewCApnsAgN0AAACcfQMAqnsAgOFIDwCuewCA4xwOALJ7AIC2ewCAunsAgL57AIDCewCAsUEXALChFwCzqesBsgHoAbUB7AG0EesB74wOAMZ7AICpxR8AqAEcAKsBEACqkR8ArdkTAKzREwCv2RcArgUTAKHxAgDKewCAo8kHAKLBAgClARgApGUHAKehGwCm+RsAqCkFAKldBQCqVQUAq20FAKx5BQCteQUArm0FAK9hBQB2ewCAznsAgNJ7AIDWewCAgA0AAIGxAACCsQAA2nsAgLiJBQC5iQUAup0FALuVBQC8uQUAvbkFAL5RBgC/UQYAsOUFALHtBQCy5QUAs/0FALTtBQC13QUAttUFALe9BQCj3QUA3nsAgOJ7AICEDAAA5nsAgKb5BQCl8QUA6nsAgKspBQCqIQUAhpgAAIegAACvGQUArikFAK0pBQCsMQUA7nsAgLNhBgDyewCA9nsAgLYhBgD6ewCA/nsAgLUBBgC6rQcAu40HAAJ8AIAGfACAvo0HAL9xBwC8lQcAvY0HAL65BQC/uQUAvLkFAL25BQC6uQUAu7kFALi5BQC5uQUAtkkFALdJBQC0fQUAtXUFALJ5BQCzeQUAsBUFALF9BQCuXQUAr20FAKxFBQCtXQUAqqUKAKtdBQCovQoAqa0KAAp8AIAOfACAEnwAgBZ8AIAafACAHnwAgCJ8AIAmfACAqA0HAKkdBwCqLQcAq0kHAKxNBwCtZQcArrEGAK+xBgAqfACALnwAgDJ8AIA2fACAOnwAgD58AIBCfACARnwAgLhVBgC5XQYAulUGALtxBgC8NQYAvfEBAL7xAQC/8QEAsK0GALGNBgCyhQYAs50GALSNBgC1cQYAtnUGALdtBgCjpQQAgi0AAIEVAACAHQAASnwAgKblBAClxQQATnwAgKtJBQCqaQUAUnwAgFp8AICvtQUArkkFAK1JBQCsUQUAhmAcAIcIAwBefACAs4UCAGJ8AIC1gQIAtoECAGZ8AIBqfACAbnwAgLoJAwC7CQMAvBkDAL0ZAwC+CQMAvwkDAKxVAgCtXQIArmECAK9hAgCoDQIAqVUCAKpRAgCrUQIAhKwDAHJ8AIB2fACAenwAgIT8HQB+fACAgnwAgIZ8AIC8cQMAvXEDAL5xAwC/cQMAuHEDALlxAwC6cQMAu3EDALSRAwC1kQMAtpEDALeRAwCwkQMAsZEDALKRAwCzkQMAinwAgI58AICSfACAlnwAgJp8AIDhpAEAnnwAgOOAAQC+aBwAonwAgKZ8AIDv2AYAqnwAgK58AICyfACAtnwAgKOJAwCCLQAAgRUAAIAdAAC6fACApo0DAKWNAwC+fACAqwUCAKoFAgDCfACAynwAgK8FAgCuBQIArRUCAKwVAgCGIBwAh8QdAM58AIDSfACA1nwAgNp8AIDefACA72wGAOJ8AIDhbAcA5nwAgON0BwDqfACA7nwAgPJ8AID2fACAs5EBAPp8AID+fACAAn0AgAZ9AIC2sQEAtbkBAAp9AIC7VQEAukkBAA59AIASfQCAv/UAAL71AAC9RQEAvEUBAKNRHgDGfACAFn0AgBp9AIAefQCApnEeAKV5HgAifQCAq5UeAKqJHgAmfQCAKn0AgK81HwCuNR8ArYUeAKyFHgCAbQAAgRUAAIIdAADv/BkALn0AgDJ9AIA2fQCAOn0AgIbAAACHrAMAPn0AgEJ9AIBGfQCA4SwcAEp9AIDjzBwAqK0eAKnNHgCq2R4Aq9EeAKzxHgCt8R4Arj0eAK81HgCE7AAATn0AgFJ9AIBWfQCAWn0AgF59AIBifQCAZn0AgLjRHwC53R8Auu0fALvlHwC84R8AveEfAL7hHwC/4R8AsE0eALFRHgCyUR4As1EeALTxHwC18R8AtvEfALfxHwCobR4AqY0eAKqFHgCrnR4ArIUeAK2NHgCuuR4Ar7UeAGp9AIBufQCAcn0AgHZ9AIB6fQCAfn0AgIJ9AICGfQCAuJ0eALmtHgC6pR4Au0UBALxdAQC9RQEAvkUBAL91AQCw0R4AsdEeALLRHgCz0R4AtLUeALW9HgC2tR4At60eALMNHgCKfQCAjn0AgJJ9AICWfQCAtg0eALUNHgCafQCAuxUeALoVHgCefQCAon0AgL95HgC+cR4AvQUeALwFHgCCbQAAo0keAIBVAACBZQAApkkeAL6cAQCqfQCApUkeAKpRHgCrUR4Ah3wAAIZMAACuNR4Arz0eAKxBHgCtQR4AqF0CAKltAgCqZQIAq30CAKxpAgCtsQIArrECAK+xAgCE7AQArn0AgLJ9AIC2fQCAun0AgL59AIDCfQCAxn0AgLhxAwC5cQMAunEDALtxAwC81QMAvd0DAL7VAwC/zQMAsNECALHRAgCy0QIAs9ECALRRAwC1UQMAtlEDALdRAwCz7QIAyn0AgM59AIC+gAQA0n0AgLYxAgC14QIA1n0AgLsVAgC6FQIA2n0AgN59AIC/lQMAvpUDAL0FAgC8BQIA4n0AgKOpAgDmfQCA6n0AgKZ1AgDufQCA8n0AgKWlAgCqUQIAq1ECAPZ9AID6fQCArtEDAK/RAwCsQQIArUECAKjZAgCpIQEAqiEBAKshAQCsIQEArSEBAK4hAQCvIQEA/n0AgAJ+AIAGfgCAviAEAAp+AIAOfgCAEn4AgBp+AIC4jQEAuZEBALqRAQC7pQEAvL0BAL11AAC+fQAAv3UAALDlAQCx7QEAsvkBALPxAQC02QEAtdkBALa5AQC3tQEA4RgeAB5+AIDjKB8AIn4AgIGlAACApQAAJn4AgIKlAACGAAQAh/QFACp+AIAufgCAMn4AgDZ+AIDvYB4AOn4AgD5+AIBCfgCAhfD0AUZ+AIBKfgCA42QBAE5+AIDhpAEAUn4AgO/IAABWfgCAWn4AgFZ8AICE/AUAXn4AgGJ+AICzKQYAFn4AgGZ+AIBqfgCAbn4AgLYhBgC1KQYAcn4AgLupBgC6oQYAdn4AgHp+AIC/nQYAvp0GAL2lBgC8rQYA4bQHAH5+AIDjeAQAgn4AgIB9AACBEQAAghUAAIZ+AICGwAAAh1gDAIp+AICOfgCAkn4AgJZ+AIDvDAQAmn4AgKOpBgCefgCAon4AgKZ+AICqfgCApqEGAKWpBgCufgCAqykGAKohBgCyfgCAtn4AgK8dBgCuHQYArSUGAKwtBgC6fgCAs0kHAL5+AIDCfgCAtn0HAMZ+AIDKfgCAtXUHALpdBwC7JQcAzn4AgNJ+AIC+IQcAvy0HALw9BwC9MQcAqD0GAKmBBgCqhQYAq5UGAKy5BgCtuQYArqkGAK+pBgDWfgCA2n4AgN5+AIDifgCA5n4AgIK5AACBsQAAgLkAALitBgC5vQYAurUGALtFAQC8XQEAvUUBAL5FAQC/dQEAsN0GALGlBgCyrQYAs6EGALShBgC1rQYAtpkGALeVBgCjDQYA6n4AgO5+AIDyfgCAhJgCAKY5BgClMQYAvpwBAKthBgCqGQYAhggAAId8AQCvaQYArmUGAK11BgCseQYA+n4AgLO1AQD+fgCAAn8AgLZVAQAGfwCACn8AgLWhAQC6cQEAu3kBAA5/AIASfwCAvjEBAL89AQC8UQEAvVEBAKhpAgCpaQIAqnkCAKt5AgCsbQIArZECAK6RAgCvkQIAFn8AgBp/AIAefwCAIn8AgCZ/AIAqfwCALn8AgDJ/AIC4mQIAua0CALqlAgC7bQMAvHUDAL19AwC+dQMAv20DALDxAgCx+QIAssECALPBAgC0sQIAtb0CALa1AgC3qQIANn8AgDp/AIA+fwCAo/0CAEJ/AICl6QIAph0CAEZ/AIBKfwCATn8AgKo5AgCrMQIArBkCAK0ZAgCueQIAr3UCAFJ/AIBWfwCAWn8AgIQADACAGQAAgQkAAII5AABefwCAYn8AgGp/AIBufwCAvuAMAHJ/AIB2fwCAhlgNAIcMAwCowQIAqc0CAKrFAgCr2QIArMkCAK39AgCu9QIArz0BAHp/AIB+fwCAgn8AgIZ/AICKfwCAjn8AgJJ/AIC+MAwAuMUBALnNAQC62QEAu9EBALzxAQC98QEAvpkBAL+ZAQCwRQEAsU0BALJFAQCzXQEAtEUBALVNAQC2RQEAt/0BAOE4BgCWfwCA42wGAJp/AICefwCAon8AgKZ/AICqfwCAhKgNAK5/AICyfwCAtn8AgL6wDwC6fwCA72wGAL5/AIDCfwCApn0AgMZ/AIDKfwCA41AAAM5/AIDhoAEA0n8AgO+EAADafwCAhyANAIZMDwCAPQAAgSEAAIIlAADefwCAs80NAGZ/AIDWfwCA4n8AgOZ/AIC2/Q0AtcENAOp/AIC7CQ4AugEOAO5/AIDyfwCAvwkOAL4BDgC9CQ4AvBEOAPZ/AIDjmAwA+n8AgOH8DwD+fwCAAoAAgAaAAIAKgACADoAAgBKAAIAWgACAGoAAgB6AAIDvYAwAIoAAgCaAAICjTQ0AKoAAgC6AAIAygACANoAAgKZ9DQClQQ0AOoAAgKuJDgCqgQ4APoAAgEKAAICviQ4AroEOAK2JDgCskQ4Agm0AALM1DgCAVQAAgWUAALb1DwCE3AMARoAAgLX9DwC60Q8Au9EPAIYABACH3AAAvn0PAL9lDwC8wQ8AvXkPAKjlDwCp7Q8AqvkPAKv5DwCsMQ4ArTEOAK4xDgCvMQ4ASoAAgE6AAIBSgACAVoAAgFqAAIBegACAYoAAgGaAAIC43Q4AueEOALrhDgC74Q4AvOUOAL3pDgC+mQ4Av5UOALBRDgCxUQ4AslEOALPpDgC0/Q4AteUOALbtDgC35Q4Ao3EPAGqAAIBugACAcoAAgHaAAICmsQ4ApbkOAHqAAICrlQ4AqpUOAH6AAICCgACAryEOAK45DgCtPQ4ArIUOAIaAAICzyQEAioAAgI6AAIC2+QEAkoAAgJaAAIC1wQEAuqkBALu1AQCagACAnoAAgL6tAQC/lQEAvK0BAL2lAQCo5Q0AqfkNAKoFAgCrHQIArA0CAK09AgCuNQIAr10CAKKAAICmgACAqoAAgK6AAICAGQAAgRkAAIIFAACygACAuC0CALk1AgC6MQIAuzECALzVAgC93QIAvtUCAL/NAgCwKQIAsTUCALI9AgCzNQIAtC0CALUVAgC2HQIAtxUCALqAAICEnAIAvoAAgKOBAgDCgACApYkCAKaxAgDGgACAhiAEAIfUAwCq4QIAq/0CAKzlAgCt7QIAruUCAK/dAgC29QMAvkQDAIWM/QG1/QMAyoAAgLP9AwDOgACA0oAAgL59AwC/TQMAvGUDAL19AwC6dQMAu30DANaAAIDagACA3oAAgOKAAICEBAIAoyUCAOaAAIClJQIApi0CAOqAAIDugACA8oAAgKqtAgCrpQIArL0CAK2lAgCupQIAr5UCAPaAAID6gACA/oAAgAKBAIAGgQCA48ADAAqBAIDhrAEADoEAgO9YAwASgQCAFoEAgIANAACB5QAAgu0AABqBAIDhYA8A40ABAOM4DgDheA4AHoEAgCKBAIC+lAUAKoEAgIYABACHZAUALoEAgDKBAIA2gQCA7/wOAO98DgA6gQCAs1EBAD6BAID2fgCAQoEAgEaBAIC2DQEAtQkBAEqBAIC74QAAuhkBAE6BAIBSgQCAv9EAAL7pAAC96QAAvPkAALaAAIAmgQCAVoEAgFqBAIBegQCAYoEAgGaBAIBqgQCAqKEGAKmtBgCquQYAq7EGAKzhBgCt7QYAruUGAK/FBgCwvQYAsUUHALJNBwCzXQcAtE0HALV1BwC2fQcAtx0HALglBwC5LQcAuiUHALs9BwC8KQcAvRUHAL4RBwC/EQcAoxEGAG6BAIBygQCAdoEAgHqBAICmTQYApUkGAH6BAICroQcAqlkGAIKBAICGgQCAr5EHAK6pBwCtqQcArLkHAIANAACBFQAAgh0AAIqBAICOgQCAkoEAgISUAwC+lAMAloEAgJqBAICGyAAAh4wAAJ6BAICigQCApoEAgKqBAIConQYAqa0GAKqlBgCrvQYArK0GAK3RBgCu1QYAr80GAK6BAICygQCAtoEAgLqBAIC+gQCAwoEAgMaBAIDKgQCAuF0BALnBAQC6wQEAu8EBALzBAQC9yQEAvvEBAL/xAQCwvQYAsY0GALKFBgCzZQEAtH0BALVlAQC2bQEAt2UBALMtBgDOgQCA0oEAgNaBAIDagQCAtlEGALUlBgDegQCAu0kGALp5BgDigQCA5oEAgL+hAQC+uQEAvbEBALxRBgDqgQCAo2kGAO6BAIDygQCAphUGAPaBAID6gQCApWEGAKo9BgCrDQYA/oEAgAKCAICu/QEAr+UBAKwVBgCt9QEAutUHALvdBwC4wQcAucEHAL4xBAC/MQQAvPEHAL3xBwCyrQcAs7UHALCtBwCxpQcAtp0HALf1BwC0pQcAtZUHAKppBwCraQcAqGkHAKlpBwCuaQcAr2kHAKxpBwCtaQcAgLkDAIGNAwCChQMAhKgDAIZQ/AGHCAMAvjQDAAqCAICoZQIAqXUCAKp9AgCrdQIArG0CAK21AwCuvQMAr7UDAA6CAIASggCAFoIAgBqCAIAeggCAIoIAgCaCAIAqggCAuFEDALlZAwC6YQMAu2EDALwRAwC9HQMAvhUDAL8JAwCwzQMAsdUDALLdAwCz1QMAtM0DALVxAwC2cQMAt3EDAC6CAIAyggCAs/0DADaCAIC17QMAOoIAgD6CAIC2PQIAQoIAgEaCAIC7GQIAugECAL0JAgC8AQIAv70CAL4BAgBKggCAToIAgITE/QG+wPwBUoIAgFaCAIBaggCA79wDAF6CAIDhlAEAYoIAgOMQAwBmggCAgu0AAIHtAACA7QAA4TgGAOE8BwDjQAEA45QGAGqCAIBuggCAcoIAgHqCAICGgPwBh+j9AX6CAICCggCAhoIAgIqCAIDvnAEA79wGAKM1AwCOggCAkoIAgJaCAICaggCApvUCAKUlAwCeggCAq9ECAKrJAgCiggCApoIAgK91AgCuyQIArcECAKzJAgB2ggCAqoIAgK6CAICyggCA76T9AbaCAIC6ggCAvoIAgON4/QHCggCA4UD8AcaCAIDKggCAzoIAgNKCAIDWggCAs+X+AYItAACBFQAAgB0AANqCAIC25f4BtfX+Ad6CAIC7Yf8Butn+AeKCAICE5AMAv2n/Ab5h/wG9df8BvHn/Aaj9/gGpJf4Bqi3+Aasl/gGsPf4BrSX+Aa4t/gGvJf4BviwAAOaCAICGiAAAh+wAAOqCAIDuggCA8oIAgPaCAIC4gf8BuYH/AbqZ/wG7mf8BvIn/Ab21/wG+sf8Bv63/AbBd/gGx5f8Bsu3/AbPh/wG05f8Bte3/AbbZ/wG32f8Bo6X/AfqCAID+ggCAAoMAgAaDAICmpf8BpbX/AQqDAICrIf4Bqpn/AQ6DAIASgwCAryn+Aa4h/gGtNf4BrDn+ARaDAICz6f4BGoMAgB6DAIC2lf4BIoMAgCaDAIC16f4BurH+Abu5/gEqgwCALoMAgL51AQC/fQEAvJH+Ab2R/gGoHf4BqS3+Aaol/gGrPf4BrCX+Aa1R/gGuUf4Br1H+ATKDAIA2gwCAOoMAgD6DAIBCgwCARoMAgEqDAIBOgwCAuNkBALnZAQC67QEAu+EBALzhAQC94QEAvuEBAL/hAQCwMf4BsTn+AbIB/gGzAf4BtPUBALX9AQC29QEAt+kBAKOt/QFSgwCAvkwDAFqDAIBegwCAptH9AaWt/QFigwCAq/39Aar1/QFmgwCAaoMAgK85AgCuMQIArdX9AazV/QGA+QMAgfkDAIJNAACFdCAAboMAgITYAwCE1AQAcoMAgIZABACHVAMAdoMAgHqDAIB+gwCAgoMAgIaDAIC+8AUAqDECAKkxAgCqMQIAqzECAKyVAwCtnQMArpUDAK+NAwCKgwCAjoMAgJKDAICWgwCAhHwHAJqDAICegwCAooMAgLipAwC5qQMAumkDALtpAwC8eQMAvXkDAL5pAwC/aQMAsP0DALHNAwCyxQMAs60DALS5AwC1uQMAtq0DALelAwCmgwCAqoMAgK6DAICygwCAtoMAgLqDAIDv6AMAvoMAgOGQAQDCgwCA42wDAMqDAICAJQAAgSkAAIIdAADOgwCAs/kDANKDAICGaAcAh1wFANaDAIC2XQIAtV0CANqDAIC7SQIAunkCAN6DAIDigwCAvz0CAL49AgC9OQIAvFECAOaDAIDhPP4BvkAGAOPwAQDqgwCA7oMAgPKDAID2gwCA+oMAgP6DAIAChACABoIAgAaEAIAKhACADoQAgO/kAQAShACAFoQAgKNxAwAahACApdUCAB6EAIAihACAptUCACaEAIAqhACAq8ECAKrxAgCtsQIArNkCAK+1AgCutQIA4dz8AcaDAIDjUAQA74gEAID1BwCBCQAAgj0AAC6EAICEJAEAMoQAgDaEAIA6hACAPoQAgOFMBADv5BwA43QEALNdBgBChACAhgAMAIfgAwBGhACAtgUGALV1BgBKhACAuxEGALoJBgBOhACAUoQAgL/VBgC+1QYAvQEGALwJBgCojQYAqZUGAKqVBgCrpQYArL0GAK3FBgCuxQYAr/UGAFaEAIBahACAXoQAgGKEAIBmhACAaoQAgG6EAIByhACAuHUGALl9BgC6dQYAu80HALzVBwC93QcAvtUHAL/NBwCwjQYAsZUGALKdBgCzlQYAtFEGALVRBgC2UQYAt1EGAKMdBwCPFewBdoQAgHqEAIB+hACApkUHAKU1BwCChACAq1EHAKpJBwCGhACAioQAgK+VBwCulQcArUEHAKxJBwCeRfkBn6X5AZyR/QGdTfkBmlX9AZtd/QGYBfEBmZX+AZal8gGXYfEBlG31AZU19QGS4ekBk4X2AZBV7AGRXekBsbEdALClHQCziRkAskEcALUBJAC09RkAjoQAgJKEAICWhACAgqkDAIGhAwCAaQAAohUFAKMFAgCgFQYAob0FAKHFAQCahACAo80NAKLlAQClAQgApN0NAKfRCQCm2QkAqQEUAKilCACrxRQAqs0VAK3REQCsARAArwEcAK51EQCCEe8BgynvAZ6EAICihACAhuH1AYcR9gGEOeoBhY3qAYp59gGL4fEBvqQMAKqEAICO+f0BjzH+AYw98gGNYfIBkkn+AZOd/gGHCAwAhmwMAJax+gGX+QUAlFn6AZVZ+gGaYQYAm8EGAK6EAICyhACAtoQAgLqEAICcyQEAvoQAgKitBQCpuQUAqs0FAKvdBQCszQUArf0FAK71BQCvHQUAwoQAgMaEAIDKhACAzoQAgNKEAIDWhACA2oQAgN6EAIC4dQUAuX0FALoJBQC7CQUAvB0FAL0BBQC+AQUAvz0FALBxBQCxcQUAsnEFALNxBQC0UQUAtVEFALZRBQC3TQUAs0UEAOKEAIDmhACA6oQAgO6EAIC2fQQAtUUEAPKEAIC7tQQAurUEAPaEAID6hACAv5UEAL6VBAC9pQQAvKUEAP6EAICjAQQAAoUAgAaFAICmOQQACoUAgA6FAIClAQQAqvEEAKvxBAAShQCAhOwNAK7RBACv0QQArOEEAK3hBADh0AYAhAwMAOMoBwC+AAwAGoUAgO9EAwCGuAwAhywNAB6FAIDjlAEAIoUAgOH8AQBWgwCAJoUAgO/IBgAqhQCALoUAgDKFAICzjQMANoUAgLWNAwA6hQCAPoUAgLa1AwBChQCARoUAgLtBAwC6SQMAvUEDALxZAwC/QQMAvkkDAKNFDACmhACAFoUAgEqFAIBOhQCApn0MAKVFDABShQCAq4kMAKqBDABWhQCAWoUAgK+JDACugQwArYkMAKyRDACAFQ8AgR0PAIIhDwCzIQ4AXoUAgLUhDgC2JQ4AYoUAgGaFAIBqhQCAusEOALvBDgC8wQ4AvcEOAL7BDgC/wQ4AqK0OAKntDgCq5Q4Aq/0OAKzlDgCt6Q4ArjkOAK85DgBuhQCAcoUAgHaFAIB6hQCAgB0AAIEJAACCvQEAfoUAgLjNDwC51Q8AutUPALvlDwC8/Q8AvZUPAL6RDwC/kQ8AsEkOALFJDgCyWQ4As1kOALRJDgC1SQ4Atv0PALf1DwCjbQ8AgoUAgL6EAQCKhQCAjoUAgKZpDwClbQ8AkoUAgKuNDwCqjQ8AhogAAIdsAQCvjQ8Aro0PAK2NDwCsjQ8AloUAgLPtDgCahQCAnoUAgLaRDgCihQCApoUAgLXhDgC6tQ4Au70OAKqFAICuhQCAvn0BAL9lAQC8mQ4AvZkOAKgRDgCpJQ4AqiEOAKs5DgCsLQ4ArVUOAK5dDgCvUQ4AhKgAALKFAIC2hQCAuoUAgL6FAIDChQCAxoUAgMqFAIC47QEAuZUBALqVAQC7rQEAvLUBAL11AQC+fQEAv3UBALA1DgCxPQ4AsgkOALMJDgC0/QEAteUBALblAQC31QEAo6kNAM6FAIDShQCA1oUAgNqFAICm1Q0ApaUNAN6FAICr+Q0AqvENAOKFAIDmhQCAryECAK45AgCt3Q0ArN0NAIANAACBFQAAgh0AAOqFAIDuhQCA8oUAgIeQAwCGfAQAvuwEAPqFAID+hQCAAoYAgAaGAIAKhgCADoYAgBKGAICyLQ4AszUOALAtDgCxJQ4Ati0OALedDwC0LQ4AtSUOALq9DwC7jQ8AuKUPALm9DwC+LQ8AvxUPALyVDwC9JQ8AFoYAgBqGAIAehgCAIoYAgCaGAIAqhgCALoYAgDKGAICqpQ4Aq7UOAKjFDgCp3Q4Arp0OAK9VDgCspQ4ArZUOAKgNAgCpFQIAqhUCAKtNAgCsWQIArVkCAK5NAgCvRQIAhKgFADaGAIA6hgCA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mogAgJ6IAIC+cAMAgGkAAIFpAACCeQAAhAAEAIbwBACHdAMAoogAgO8MHwCmiACA4aweAKqIAIDj8B4ArogAgLKIAIC2iACAuogAgL6IAIDCiACAxogAgMqIAIDvVAIAzogAgNKIAIDWiACA46QCANqIAIDhgAEA3ogAgOKIAIDmiACA6ogAgO6IAICzRQMA8ogAgPaIAID6iACA/ogAgLZFAwC1VQMAAokAgLshAwC6SQMAvqAEAAqJAIC/KQMAviEDAL01AwC8OQMAqDkCAKk5AgCqjQIAq4UCAKydAgCthQIAroUCAK+1AgCA7QEAgfUBAIL1AQAOiQCAhpAEAIcEBQASiQCAFokAgLhFAQC5TQEAukUBALtdAQC8SQEAvUkBAL55AQC/eQEAsM0CALGlAgCyrQIAs6ECALSlAgC1rQIAtp0CALd9AQAaiQCAHokAgCKJAIAmiQCAKokAgC6JAIAyiQCA74gBAITsBADhVB4ANokAgONUAQA6iQCAPokAgEKJAIBGiQCAo0UCAEqJAIBOiQCAUokAgFaJAICmRQIApVUCAFqJAICrIQIAqkkCAF6JAIBiiQCArykCAK4hAgCtNQIArDkCAKg1BgCpPQYAqlEGAKttBgCseQYArWUGAK5tBgCvZQYABokAgGaJAIBqiQCAbokAgIAZAACBGQAAggUAAHKJAIC45QYAuekGALr5BgC7+QYAvOkGAL3pBgC+nQYAv5UGALAdBgCx5QYAsu0GALPlBgC0/QYAteEGALbhBgC34QYAs9kGAL7QAwB2iQCAeokAgH6JAIC25QYAtfEGAIKJAIC7IQYAutkGAIaYAACHeAMAvyUGAL45BgC9MQYAvDkGAIaJAICjnQYAiokAgI6JAICmoQYAkokAgJaJAICltQYAqp0GAKtlBgCaiQCAnokAgK59BgCvYQYArH0GAK11BgCo7QcAqSkGAKoxBgCrMQYArJEGAK2RBgCukQYAr5EGAKKJAICmiQCAqokAgK6JAICyiQCAtokAgLqJAIC+iQCAuIUGALmNBgC6hQYAu50GALyNBgC9vQYAvrUGAL95AQCw8QYAsfEGALLxBgCzxQYAtMEGALXBBgC2wQYAt8EGALO5BgDCiQCAxokAgMqJAIDOiQCAthEGALUZBgDSiQCAuzUGALo1BgDWiQCA2okAgL8FBgC+BQYAvREGALwlBgClQQYA3okAgOKJAICmSQYAgRUAAIB5AACj4QYAghUAAK1JBgCsfQYAr10GAK5dBgCENAEAlogAgKttBgCqbQYAvswDAOqJAICzlQIA7okAgLXZAgDyiQCA9okAgLbRAgCGgAwAhzgDALvFAgC6xQIAvRUDALwVAwC/FQMAvhUDAPqJAID+iQCA71gGAIRAAwACigCABooAgAqKAIAOigCAEooAgBaKAIAaigCAHooAgOE4BgAiigCA4yQGAL5wDACsSQIArUkCAK5dAgCvVQIAqB0CAKkFAgCqBQIAq10CAISoDAAmigCAKooAgC6KAIC+vA0AMooAgDaKAIA6igCAvE0DAL1VAwC+VQMAv2UDALjpAwC56QMAul0DALtVAwC0yQMAtckDALbZAwC32QMAsBkCALEZAgCy2QMAs9kDAD6KAIDj5AAAQooAgOG8AQBGigCAgj0AAIE9AACAPQAASooAgE6KAIBSigCAWooAgF6KAIDvzAMAYooAgGaKAICj3QMAaooAgIboDACHYA0AbooAgKaZAwClkQMAcooAgKuNAwCqjQMAdooAgHqKAICvXQIArl0CAK1dAgCsXQIAfooAgIKKAICGigCAiooAgI6KAICSigCAlooAgO/gAQCEvAwA4YwGAJqKAIDjHAYAnooAgKKKAICmigCAqooAgLPVAQCuigCAsooAgLaKAIC6igCAtpEBALWZAQC+igCAu70BALq9AQDCigCAyooAgL+dAQC+nQEAvZ0BALydAQCoBQ4AqQkOAKodDgCrFQ4ArFEOAK1RDgCuSQ4Ar0kOAFaKAICCzQ8AgfUPAID9DwDGigCAzooAgIYcAACHsAMAuOkOALnpDgC6/Q4Au/UOALztDgC9VQ8AvlEPAL9NDwCwOQ4AsTkOALIJDgCzCQ4AtBkOALUZDgC2DQ4At9kOAKOVDgDSigCA1ooAgNqKAIDeigCAptEOAKXZDgDiigCAq/0OAKr9DgDmigCA6ooAgK/dDgCu3Q4Ard0OAKzdDgDuigCAs/0PAPKKAID2igCAtoEPAPqKAID+igCAtZkPALqNDwC7ZQ8AAosAgAaLAIC+fQ8Av2UPALx9DwC9dQ8AqC0OAKk1DgCqMQ4AqzEOAKxVDgCtRQ4ArkUOAK91DgAKiwCADosAgBKLAIAWiwCAGosAgB6LAIAiiwCAJosAgLjpDgC59Q4Auv0OALv1DgC87Q4AvZEOAL6RDgC/kQ4AsA0OALHlDgCy7Q4As+UOALT9DgC15Q4Atu0OALflDgCjuQ4Agi0AAIEVAACAHQAAKosAgKbFDgCl3Q4ALosAgKshDgCqyQ4AMosAgL4sAQCvIQ4ArjkOAK0xDgCsOQ4AOosAgLZVAQC1RQEANosAgLNVAQA+iwCAhngAAIdcAAC/OQEAvjEBAL0lAQC8JQEAuzEBALpZAQDmiQCAQosAgEaLAIBKiwCAhAQDAKOJAgBOiwCApZkCAKaJAgBSiwCAvyg5AFaLAICqhQIAq+0CAKz5AgCt+QIAru0CAK/lAgDjWAIA78AOAOGIAQBaiwCAXosAgGKLAIBmiwCAaosAgG6LAIByiwCAdosAgHqLAIDvKAIA4ygOAH6LAIDhRA4AqbUCAKhpDQCrAQIAqgkCAK0BAgCsGQIArzECAK4BAgC+AAQAgosAgIaLAICKiwCAjosAgJKLAICWiwCAmosAgLnlAwC45QMAu+UDALrlAwC95QMAvOUDAL/lAwC+5QMAsSECALBJAgCzJQIAsiUCALUpAgC0IQIAtxUCALYVAgCowQIAqdECAKr1AgCrDQEArBUBAK0FAQCuBQEArzkBAJ6LAICiiwCAqosAgK6LAICyiwCAtosAgLqLAIC+iwCAuC0BALk9AQC67QEAu+UBALz9AQC95QEAvu0BAL/lAQCwLQEAsTUBALI9AQCzNQEAtC0BALUVAQC2HQEAtxUBAIA9AQCBpQAAgq0AAO/YAACGsAUAh9gFAMKLAIDv1A8AhGwEAOH0DgDGiwCA4xwPAMqLAIDhlAEAzosAgOMMDgCzPQIA0osAgNaLAIDaiwCA3osAgLbFAQC13QEA4osAgLuxAQC6qQEA5osAgOqLAIC/kQEAvqkBAL2hAQC8qQEAposAgO6LAICqRQYAq10GAKxFBgCtTQYArkUGAK99BgDyiwCA9osAgPqLAICj0QUA/osAgKUxBgCmKQYAAowAgAaMAICCHQAAgR0AAIAdAAAKjACADowAgBKMAIC+lAMAFowAgBqMAICGSAMAh8wDAB6MAIAijACAJowAgCqMAICoqQcAqakHAKq5BwCruQcArKkHAK2pBwCuAQcArzUHAC6MAIAyjACANowAgDqMAIA+jACAQowAgEaMAIBKjACAuC0HALnBAAC66QAAu+kAALz5AAC95QAAvuUAAL+dAACwUQcAsV0HALItBwCzJQcAtD0HALUlBwC2JQcAtxUHALMxBgBOjACAUowAgFaMAIBajACAtikGALUhBgBejACAu5kGALqVBgBijACAZowAgL/hBgC++QYAvfEGALz5BgBqjACAo3UGAG6MAIByjACApm0GAHaMAIB6jACApWUGAKrRBgCr3QYAfowAgIKMAICuvQYAr6UGAKy9BgCttQYAqOUBAKn1AQCq/QEAq/UBAKztAQCtNQEArj0BAK81AQCA+QAAgc0AAILFAACEYAEAvngBAIqMAICHrAAAhpABALjRAAC52QAAuuEAALvhAAC8kQAAvZ0AAL6VAAC/iQAAsE0BALFVAQCyXQEAs1UBALRNAQC18QAAtvEAALfxAACzdQIAjowAgJKMAICWjACAmowAgLa1AgC1ZQIAnowAgLuRAgC6iQIAoowAgKaMAIC/NQMAvokCAL2BAgC8iQIAqowAgKMxAgCujACAhMADAKbxAgCyjACAtowAgKUhAgCqzQIAq9UCALqMAIC+jACArs0CAK9xAwCszQIArcUCAKuNAACqjQAAqY0AAKg5AwCvvQAArr0AAK2FAACsjQAAqgAAAKsAAADCjACAxowAgMqMAIDOjACA0owAgNaMAIC7fQAAun0AALl9AAC4fQAAv90BAL7dAQC93QEAvN0BALO5AACysQAAsaEAALCtAAC3XQAAtl0AALWVAAC0lQAA2owAgN6MAIDijACA5owAgIE1AACADQAA6owAgII1AAC+rD0A7owAgPKMAICFaD0A+owAgP6MAICGODwAh8ACALNJAQACjQCA0AAAAAaNAIAKjQCAtkkBALVJAQAOjQCAuykBALolAQASjQCAFo0AgL8dAQC+HQEAvSEBALwpAQDjNDYA4QwGAOGwAgDjPAYAGo0AgB6NAIAijQCAJo0AgIQsPwC+oD8AKo0AgC6NAIDvfDcAMo0AgDaNAIDvGAEAOo0AgD6NAICGaD4Ah8w/AEKNAIBGjQCASo0AgO+UAABOjQCA4ZQBAFKNAIDjUAAAVo0AgILpPwCB6T8AgPE/AKMJPgCPASQA9owAgFqNAIBejQCApgk+AKUJPgBijQCAq2k+AKplPgBmjQCAao0AgK9dPgCuXT4ArWE+AKxpPgCeYTgA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vY0CAL69AgC/fQMAsFkCALFZAgCy7QIAs+UCALT9AgC15QIAtuUCALfVAgCjUQUAEpIAgBaSAIAakgCAHpIAgKZ5BQClcQUAIpIAgKudAgCqnQIAJpIAgCqSAICvIQIArjkCAK0xAgCsOQIAghEAAC6SAICAZQAAgQkAADKSAIC+mAMAOpIAgD6SAICEJAMAQpIAgIdoAwCGjBwARpIAgEqSAIBOkgCAUpIAgFaSAIBakgCAs6ECAITAHAC10QIAXpIAgGKSAIC21QIAZpIAgGqSAIC7wQIAuvUCAL0RAQC82QIAvxEBAL4ZAQBukgCAcpIAgHaSAIB6kgCAfpIAgIKSAICGkgCA77gGAIqSAIDhnAQAjpIAgON0BgCSkgCAlpIAgJqSAICekgCAgPkAAIH5AACCBQAAopIAgL5YHACEWB8A71wAAO9ABgDhkAEA4fwGAOM8AADjdAYAqpIAgK6SAICGmBwAh/QcAKNpAgC+DB8AspIAgLaSAIC6kgCAph0CAKUZAgC+kgCAqwkCAKo9AgDCkgCAxpIAgK/ZAQCu0QEArdkBAKwRAgCokR0AqZkdAKqhHQCroR0ArNEdAK3dHQCu1R0Ar8kdADaSAICmkgCAypIAgM6SAIDSkgCA1pIAgNqSAIDekgCAuHkeALl5HgC6zR4Au8UeALzdHgC9xR4AvsUeAL/1HgCwuR0AsY0dALKFHQCzTR4AtFUeALVdHgC2VR4At0keALjNHwC51R8Aut0fALvVHwC88R8Avf0fAL7pHwC/6R8AsKUfALGxHwCysR8As40fALSVHwC19R8Atv0fALf1HwCoGR4AqRkeAKotHgCrPR4ArCUeAK0tHgCuJR4Ar90fAOKSAIDmkgCA6pIAgO6SAIDykgCAxpEAgPaSAID6kgCAs+UfAP6SAIACkwCABpMAgAqTAIC27R8Ate0fAA6TAIC7NR4AuiEeABKTAIAWkwCAv3EeAL4RHgC9GR4AvCUeAIJpAACjoR8AgFkAAIFRAACmqR8AGpMAgB6TAIClqR8AqmUeAKtxHgCGAAQAh+wBAK5VHgCvNR4ArGEeAK1dHgCoMR4AqTEeAKpBHgCrQR4ArEEeAK1JHgCucR4Ar3EeACKTAIAmkwCAKpMAgC6TAIAykwCANpMAgDqTAIA+kwCAuCkBALkpAQC6OQEAuzUBALwtAQC90QAAvtEAAL/RAACwyQEAsckBALLZAQCz2QEAtMkBALXJAQC2GQEAtxkBALPJHQBCkwCARpMAgEqTAIBOkwCAtskdALXJHQBSkwCAuw0CALoNAgBWkwCAWpMAgL8NAgC+DQIAvQ0CALwNAgBekwCAo40dAGKTAIBmkwCApo0dAGqTAIBukwCApY0dAKpJAgCrSQIAcpMAgHaTAICuSQIAr0kCAKxJAgCtSQIAgA0AAIERAACCEQAAepMAgO/MAgB+kwCAgpMAgISQAgDjLAIAvigDAOHYAQCKkwCAhhAEAIfUAwCOkwCAkpMAgLNhAwCWkwCAmpMAgJ6TAICikwCAtnkDALVxAwCmkwCAu10DALpdAwCqkwCArpMAgL/hAAC++QAAvfEAALz5AACjoQIAspMAgLaTAIC6kwCAvpMAgKa5AgClsQIAwpMAgKudAgCqnQIAxpMAgMqTAICvIQEArjkBAK0xAQCsOQEAzpMAgNKTAIDvZB8A1pMAgNqTAIDekwCA4pMAgOaTAICADQAAgREAAIIVAADqkwCA4eAcAO6TAIDjiB8A8pMAgISAAgC+jAUAh0gFAIYsBAD6kwCA/pMAgO+kHgDv9B4A4QAeAOFQHwDjLB4A47AeAAKUAIAGlACACpQAgA6UAIASlACAFpQAgISEBACzcQEAGpQAgLUdAQC2FQEAHpQAgCKUAIAmlACAugEBALsBAQC89QAAvf0AAL71AAC/7QAAqK0GAKm9BgCqtQYAq8kGAKzZBgCt2QYArskGAK/BBgAqlACALpQAgDKUAIA2lACAOpQAgD6UAIBClACARpQAgLhtBwC5BQcAug0HALsBBwC8AQcAvQEHAL4BBwC/AQcAsIkGALGJBgCybQcAs2UHALR9BwC1ZQcAtmUHALdVBwCGkwCAozkGAEqUAID2kwCApl0GAE6UAIBSlACApVUGAKpJBgCrSQYAVpQAgFqUAICuvQcAr6UHAKy9BwCttQcAgG0AAIEJAACCGQAAXpQAgGKUAIC+nAMAZpQAgGqUAICGQAAAh2AAAG6UAIBylACAdpQAgHqUAIB+lACAgpQAgKiRBgCpkQYAqrkGAKu5BgCsqQYArakGAK7ZBgCv2QYAhpQAgIqUAICOlACAkpQAgJaUAICalACAnpQAgKKUAIC4cQEAuXEBALpxAQC7cQEAvNkBAL3BAQC+wQEAv/UBALCxBgCxuQYAsokGALOJBgC0UQEAtVEBALZRAQC3UQEAszEGAKaUAICqlACArpQAgLKUAIC2KQYAtSEGALaUAIC7fQYAunUGALqUAIC+lACAv5UBAL6VAQC9XQYAvF0GAMKUAICjdQYAxpQAgMqUAICmbQYAzpQAgNKUAIClZQYAqjEGAKs5BgCErAEAvqABAK7RAQCv0QEArBkGAK0ZBgCo3QIAqe0CAKrlAgCr/QIArOUCAK3tAgCu5QIArz0DANqUAIDelACA4pQAgL5kDADmlACA6pQAgO6UAIDylACAuMkDALnJAwC62QMAu9EDALz5AwC9+QMAvpkDAL+VAwCwRQMAsU0DALJFAwCzXQMAtEUDALVNAwC2RQMAt/kDAIFVAwCASQMAs2UCAIJVAwC1ZQIA9pQAgPqUAIC2ZQIAhgAMAIfkAwC7gQMAuokDAL2BAwC8mQMAv4EDAL6JAwCjLQIA/pQAgAKVAIAGlQCACpUAgKYtAgClLQIADpUAgKvJAwCqwQMAEpUAgBaVAICvyQMArsEDAK3JAwCs0QMA49gGAOGsBwDhnAYA45wGABqVAICEWA0AHpUAgCKVAIAmlQCAKpUAgC6VAIAylQCA7xwBADaVAIA6lQCA70AGAIB5AACBFQAAghEAAIQADAA+lQCA46wAAEKVAIDhpAEASpUAgO9wAACGyAwAh6QNAE6VAIBSlQCAVpUAgFqVAIC6yQUAu8kFALilBQC5zQUAvvkFAL/5BQC8zQUAvcUFALKlBQCzrQUAsBEGALERBgC2rQUAt50FALS1BQC1rQUAqmEGAKthBgConQYAqZUGAK5hBgCvYQYArHEGAK1xBgBelQCAYpUAgGaVAIBqlQCAbpUAgHKVAIC+sAwAdpUAgKghDgCpIQ4AqiEOAKs9DgCsJQ4ArS0OAK4lDgCviQ4ARpUAgHqVAIB+lQCAgpUAgIaVAICKlQCAjpUAgJKVAIC4UQ8AuV0PALpVDwC7bQ8AvHUPAL19DwC+dQ8Av2kPALD5DgCxoQ4AsqEOALOhDgC0oQ4AtakOALaRDgC3kQ4As6kOAJaVAIDWlACAmpUAgJ6VAIC2rQ4Ata0OAKKVAIC7ZQ4Auj0OAKaVAICqlQCAv20OAL5lDgC9dQ4AvHUOAIIZAACj7Q4AgGUAAIEZAACm6Q4ArpUAgLKVAICl6Q4AqnkOAKshDgC2lQCAupUAgK4hDgCvKQ4ArDEOAK0xDgCoYQ4AqXUOAKp9DgCrdQ4ArG0OAK31DgCu/Q4Ar/UOAIaAAQCHpAEAvpUAgMKVAIDGlQCAypUAgM6VAIDSlQCAuHUBALl9AQC6dQEAu8kBALzdAQC9xQEAvsUBAL/1AQCwjQ4AsZUOALKdDgCzkQ4AtFUBALVdAQC2VQEAt00BALP1DgDWlQCA2pUAgN6VAIDilQCAtnUOALXlDgDmlQCAu1EOALpJDgDqlQCA7pUAgL+ZAQC+kQEAvUUOALxJDgDylQCAo7EOAPaVAID6lQCApjEOAP6VAIAClgCApaEOAKoNDgCrFQ4ABpYAgAqWAICu1QEAr90BAKwNDgCtAQ4AqO0CAKktAwCqJQMAqz0DAKwlAwCtLQMAriUDAK+ZAwAOlgCAEpYAgBaWAIAalgCAHpYAgCKWAIC+dAIAKpYAgLiNAwC5kQMAupEDALulAwC8vQMAvXUAAL59AAC/dQAAsOkDALHpAwCy+QMAs/EDALTZAwC12QMAtrkDALe1AwCArQAAgbUAAIK9AACzoQMALpYAgLWhAwC2oQMAMpYAgITgAgA2lgCAuiEDALshAwC8IQMAvSkDAL4RAwC/EQMAo+0DAIXABACFtG8AOpYAgD6WAICm7QMApe0DAEKWAICrbQMAqm0DAIZIBQCHbAMAr10DAK5dAwCtZQMArG0DAEaWAIDjAA4A71hsAOG0DwBKlgCATpYAgFKWAIBWlgCAoakDAKD9DwCjwQMAog0DAOHgAwDv4A8A4+QDAFqWAIBelgCAYpYAgIQEBAC+BAQAZpYAgO+UAwBqlgCAbpYAgHKWAIDj1AMAdpYAgOFUAAB6lgCAfpYAgIKWAICGlgCAgA0AAIEVAACCHQAAipYAgI6WAICSlgCAj5EbAO+cDgCE4AcA4dQOAJqWAIDj8A4AnpYAgKKWAICGGAcAh5AEAJnlFwCY5RcAm+kLAJo5CwCd/QoAnPELAJ9VDwCeXQ8AkSkfAJDNGwCTJR8Aks0fAJXREwCUKRMAlxkXAJZ1EwCM4RAAjSUQAI4tEACP+QwAJpYAgJaWAICKORQAi5UUAITpGACFBRgAhuUYAIfxFACmlgCAqpYAgIIxHACDFRwAnKkEAK6WAICylgCAtpYAgLqWAIC+lgCAmtEEAJt9BACUTQ0AleUIAJblCACXtQgAwpYAgMaWAICSWQwAk1kMAKGRAADKlgCAowF8AKKZAACluXwApJF8AKeZeACm4X0AqYF5AKiheACriXQAqgF0AK0BcACsWXQAr4VwAK6dcACx4WwAsAFsALMBaACyHWwAtfVoALT1aADOlgCA0pYAgNaWAIDalgCA3pYAgOKWAIDmlgCA6pYAgO6WAIDylgCAqD0HAKmVBwCqlQcAq6kHAKzdBwCtxQcArsUHAK8dBgD2lgCAgh0AAIEdAACAHQAA+pYAgP6WAIAClwCAvmABALgZBgC5GQYAuikGALslBgC8IQYAvSEGAL4hBgC/IQYAsHEGALFxBgCycQYAs3EGALRNBgC1NQYAtj0GALctBgCzHQcACpcAgIYoAACHqAAADpcAgLZFBwC1VQcAEpcAgLu1BgC6tQYAFpcAgBqXAIC/8QYAvokGAL2lBgC8pQYAHpcAgKNZBwAilwCAJpcAgKYBBwAqlwCALpcAgKURBwCq8QYAq/EGADKXAIA2lwCArs0GAK+1BgCs4QYAreEGAKipBQCptQUAqr0FAKs9AgCsJQIArVECAK5RAgCvUQIAOpcAgD6XAIBClwCARpcAgIQ8AwBKlwCATpcAgFKXAIC4pQIAua0CALqlAgC7vQIAvKUCAL2tAgC+pQIAv30DALAxAgCxMQIAshkCALMZAgC09QIAta0CALalAgC3nQIAVpcAgFqXAIBelwCAszkFAGKXAIC1oQIAtt0CAGaXAIBqlwCAbpcAgLr5AgC7+QIAvMECAL3BAgC+PQIAv2UCAHKXAICmgQIApf0CAHqXAICjZQUAvlh8AIbYfACHnHwArzkCAK5hAgCtnQIArJ0CAKulAgCqpQIAfpcAgIKXAICohQIAqZUCAKqVAgCrpQIArL0CAK3VAgCu0QIAr9ECAIGFAQCAhQEAhpcAgILtAQCKlwCAjpcAgJKXAICWlwCAuHUBALl9AQC6dQEAu80BALzVAQC93QEAvskBAL/BAQCwtQIAsb0CALKBAgCzgQIAtFEBALVRAQC2UQEAt1EBAJqXAICelwCAopcAgKaXAIDhMAYA4WQHAOMoBgDjxAYAhCB9AKqXAIDvbAAA7xgGAK6XAICylwCAtpcAgLqXAICzXQIAvkh8AL6XAIDClwCAxpcAgLYVAgC1dQIAypcAgLs5AgC6MQIAzpcAgNKXAIC/1QEAvtUBAL0VAgC8FQIAo519AHaXAIDWlwCA2pcAgN6XAICm1X0ApbV9AOKXAICr+X0AqvF9AOaXAIDqlwCArxV+AK4VfgCt1X0ArNV9AIBNAACBVQAAglUAALOxfgDulwCAtWV/ALZtfwDylwCAhkADAIcEAwC66X8Au+l/ALz5fwC9+X8Avt1/AL/NfwD2lwCA+pcAgAaXAID+lwCAApgAgAaYAIAKmACADpgAgKhtfgCpXX4AqlV+AKuFfwCsgX8ArYF/AK6BfwCvgX8AsEF/ALFBfwCyQX8As0F/ALR1fwC1ZX8Atm1/ALdlfwC4XX8AuS1/ALolfwC7PX8AvC1/AL0dfwC+FX8Av/UAAKP9fwASmACAFpgAgBqYAIAemACApiF+AKUpfgAimACAq6V+AKqlfgAmmACAKpgAgK+BfgCukX4ArbV+AKy1fgAumACAMpgAgDaYAIA6mACAPpgAgEKYAIBGmACASpgAgIA9AACBCQAAghkAAE6YAIBSmACAhLgBAL6wAQBWmACAqK0BAKnVAQCq1QEAqw0BAKwVAQCtGQEArgkBAK8JAQCGAAQAhwQBAFqYAIBemACAYpgAgGaYAIBqmACAbpgAgLjtAAC5hQAAuo0AALuFAAC8nQAAvYUAAL6NAAC/hQAAsHkBALF5AQCy7QAAs+UAALT9AAC15QAAtuUAALfVAACzXQIAcpgAgHaYAIB6mACAfpgAgLaZAgC1nQIAgpgAgLu9AgC6vQIAhpgAgIqYAIC/IQMAvjkDAL0xAwC8OQMAvigDAKMZAgCOmACAkpgAgKbdAgCWmACAmpgAgKXZAgCq+QIAq/kCAJ6YAICimACArn0DAK9lAwCsfQMArXUDAL7IBACmmACAqpgAgL7EBQCumACAspgAgLaYAIC6mACAgD0AAIEJAACCGQAAvpgAgMKYAICEOAMAypgAgM6YAIDveAIA0pgAgIZIBACHVAMA1pgAgNqYAIDemACA4pgAgOaYAIDqmACA7pgAgPKYAIDjVAIA9pgAgOFAAQD6mACA/pgAgOMkfwACmQCA4Zx8AAaZAIAKmQCADpkAgBKZAICEbAUAFpkAgBqZAIAemQCAIpkAgO8YfwAmmQCAKpkAgLPxAgAumQCAMpkAgDqZAIA+mQCAtukCALXhAgBCmQCAu3EBALppAQCHoAUAhswEAL85AQC+WQEAvVEBALxhAQDhQH8ARpkAgOM4fgCEwAQAgtkAAO8UAACApQAAgdkAAEqZAIDjwAAATpkAgOHUAQBSmQCAVpkAgO+EfgBamQCAqs0BAKvVAQBemQCAYpkAgK79AQCvnQEArMUBAK31AQBmmQCAo1UCAGqZAIBumQCApk0CAHKZAIB2mQCApUUCAMaYAIA2mQCAepkAgH6ZAICCmQCAhpkAgIqZAICOmQCAqJkGAKmZBgCq7QYAq/0GAKzlBgCt7QYAruUGAK/dBgCwpQYAsa0GALKlBgCzuQYAtK0GALVVBwC2UQcAt00HALh1BwC5fQcAunUHALtJBwC8WQcAvVkHAL5JBwC/RQcAs0UGAJKZAICWmQCAmpkAgJ6ZAIC2TQYAtU0GAKKZAIC7SQYAukEGAIYIAACHjAAAv7EHAL5JBgC9TQYAvFEGAIJdAACjAQYAgEUAAIFdAACmCQYAqpkAgK6ZAIClCQYAqgUGAKsNBgCymQCAtpkAgK4NBgCv9QcArBUGAK0JBgCoTQYAqVUGAKpVBgCriQYArLEGAK29BgCuqQYAr6kGAKaZAIC6mQCAvpkAgMKZAIDGmQCAypkAgM6ZAIDSmQCAuEkBALlJAQC6WQEAu1kBALxJAQC9SQEAvt0BAL/VAQCw3QYAsa0GALKlBgCzjQYAtJkGALWZBgC2jQYAt4UGALPdBgDWmQCA2pkAgN6ZAIDimQCAtj0GALU5BgDmmQCAu2kGALoZBgDqmQCA7pkAgL9dBgC+XQYAvVkGALxxBgDymQCAo5kGAPaZAID6mQCApnkGAP6ZAIACmgCApX0GAKpdBgCrLQYABpoAgAqaAICuGQYArxkGAKw1BgCtHQYAqNUCAKndAgCq4QIAq+ECAKw1AwCtPQMArjUDAK8tAwCAzQMAgQkAAIIZAAAOmgCAEpoAgIQYAgC+dAMAGpoAgLjpAwC56QMAuokDALuFAwC8nQMAvYEDAL6BAwC/tQMAsFUDALFdAwCyVQMAs+kDALT5AwC1+QMAtukDALfhAwCGIAwAhxADAB6aAIAimgCAJpoAgCqaAIAumgCA71wCADKaAIDhFAAANpoAgOOIAgC++AwAOpoAgD6aAIBCmgCAu/kDALrxAwC+gA0ARpoAgL9dAwC+XQMAvV0DALzhAwCzCQIASpoAgE6aAIBSmgCAVpoAgLbdAwC13QMAWpoAgKipBgCpqQYAqrkGAKu5BgCsqQYArakGAK4dBQCvFQUAXpoAgGKaAIBmmgCAapoAgG6aAIBymgCAdpoAgHqaAIC4GQUAuS0FALolBQC7yQUAvNkFAL3FBQC+zQUAv8UFALBtBQCxdQUAsnUFALNFBQC0XQUAtT0FALY1BQC3KQUA4fQGAOFUBwDjFAYA47wGAIEJAACAqQAAfpoAgII5AACE7A0AgpoAgIeIDACGDAwAipoAgI6aAIDvzAcA78QHAKMpAwCSmgCAlpoAgJqaAICemgCApv0CAKX9AgCimgCAq9kCAKrRAgCmmgCAqpoAgK99AgCufQIArX0CAKzBAgCoPQ4AqY0OAKqFDgCrnQ4ArIUOAK2NDgCuuQ4Ar7UOAIaaAICumgCAspoAgLaaAIC6mgCAvpoAgMKaAIDGmgCAuL0OALllDwC6bQ8Au2UPALx9DwC9ZQ8Avm0PAL9lDwCw1Q4Asd0OALLVDgCzoQ4AtJUOALWdDgC2lQ4At40OALMNDgDKmgCAzpoAgNKaAIDWmgCAtg0OALUNDgDamgCAuxkOALoRDgDemgCAFpoAgL9ZDgC+UQ4AvXUOALwBDgDimgCAo0kOAOaaAIDqmgCApkkOAO6aAIDymgCApUkOAKpVDgCrXQ4AhKQDAPaaAICuFQ4Arx0OAKxFDgCtMQ4AqLEOAKmxDgCqzQ4Aq8UOAKzdDgCtxQ4ArsUOAK/1DgCA7QEAgfEBAILxAQD6mgCAhpABAIe0AQD+mgCAApsAgLjFAQC5zQEAusUBALvdAQC8zQEAvf0BAL6ZAQC/lQEAsI0OALFBAQCyQQEAs0EBALRBAQC1QQEAtkEBALdBAQCzRQ4ABpsAgAqbAIAOmwCAEpsAgLZFDgC1VQ4AFpsAgLuFAQC6SQ4AGpsAgB6bAIC/hQEAvoUBAL2VAQC8lQEAIpsAgKMBDgAmmwCAKpsAgKYBDgAumwCAMpsAgKURDgCqDQ4Aq8EBADabAIA6mwCArsEBAK/BAQCs0QEArdEBAKgtAwCpPQMAqjUDAKuJAwCsmQMArZkDAK6JAwCvgQMAPpsAgEKbAIBGmwCASpsAgE6bAIBSmwCAVpsAgFqbAIC4rQMAuWUAALptAAC7ZQAAvH0AAL1lAAC+bQAAv2UAALDJAwCxyQMAsqkDALOlAwC0vQMAtaEDALahAwC3lQMAgL0AAIEJAACCGQAAXpsAgGKbAIC+2AMAapsAgG6bAICErAIAcpsAgIfoAwCGDAQAdpsAgHqbAIB+mwCAgpsAgLP9AwCGmwCAipsAgI6bAICSmwCAtlkDALVRAwCWmwCAu00DALpNAwCamwCAnpsAgL8lAwC+OQMAvTEDALw9AwCimwCAppsAgKqbAICumwCA71gPALKbAIC2mwCAupsAgOOQDgC+mwCA4bAPAMKbAIDGmwCAypsAgM6bAIDSmwCAgHUAAIF9AACCdQAAhBgFAO88AwDamwCAvhQFAN6bAIDj0AMA4psAgOFAAADmmwCAhtAEAIdYBQDqmwCA7psAgPKbAID2mwCA+psAgP6bAIACnACABpwAgAqcAIDvrA8AhOwEAOEQDgAOnACA41QBABKcAIAWnACAGpwAgB6cAICj/QIAIpwAgCacAIAqnACALpwAgKZZAgClUQIAMpwAgKtNAgCqTQIANpwAgDqcAICvJQIArjkCAK0xAgCsPQIAqJkGAKmZBgCqrQYAq70GAKylBgCtrQYArqUGAK/ZBgDWmwCAghEAAIEZAACAwQcAPpwAgEKcAIC+cAMARpwAgLhJBwC5SQcAul0HALtVBwC8TQcAvXEHAL51BwC/bQcAsKkGALGpBgCyuQYAs7EGALSZBgC1mQYAtnkHALd5BwC1NQYASpwAgE6cAIC2NQYAhjAAAIdcAwCzPQYAUpwAgL19BgC8dQYAv0UGAL5FBgBmmwCAVpwAgLt1BgC6dQYAo2UGAFqcAIBenACAYpwAgGacAICmbQYApW0GAGqcAICrLQYAqi0GAG6cAIBynACArx0GAK4dBgCtJQYArC0GAKhVBgCpWQYAqm0GAKthBgCsaQYArWkGAK6ZBgCvmQYAdpwAgHqcAIB+nACAgpwAgIacAICKnACAjpwAgJKcAIC4+QYAufkGALqNBgC7hQYAvJ0GAL2FBgC+hQYAv7UGALDpBgCx6QYAsvkGALP5BgC06QYAtd0GALbJBgC3yQYAs+UGAJacAICanACAnpwAgKKcAIC26QYAteEGAKacAIC7LQYAui0GAKqcAICunACAvxkGAL4tBgC9LQYAvC0GAIIVAACjoQYAgGEAAIFhAACmrQYAspwAgL6QAQClpQYAqmkGAKtpBgCEpAEAupwAgK5pBgCvXQYArGkGAK1pBgCohQIAqY0CAKqVAgCruQIArNUCAK3dAgCu1QIAr80CAIaAHACHZAMAvpwAgL5gAwDCnACAxpwAgMqcAIDOnACAuHUDALl9AwC6dQMAu8kDALzZAwC92QMAvskDAL/BAwCwvQIAsY0CALKFAgCzTQMAtFUDALVdAwC2VQMAt00DALMdAgDSnACAhAgDANacAIDanACAtl0CALVdAgDenACAu0kCALp5AgDinACA5pwAgL+ZAwC+kQMAvZkDALxRAgCwAAAAo1kCAOqcAIDunACAphkCAPKcAID2nACApRkCAKo9AgCrDQIA+pwAgP6cAICu1QMAr90DAKwVAgCt3QMAAp0AgAadAIAKnQCA76wGAA6dAIASnQCAFp0AgBqdAIC+6BwAHp0AgCKdAIAqnQCALp0AgOGABwAynQCA42AGAIBdAACBYQAAgmEAALN9AQA2nQCAtW0BALZlAQA6nQCAhiAdAIdYHQC6+QEAu/EBALzZAQC92QEAvrEBAL+xAQDvoAAAPp0AgEKdAIBGnQCASp0AgE6dAIBSnQCA71wBAIRsHADhzAYAVp0AgOMcBgDjSAAAWp0AgOEwAQBenQCAo/EBAGKdAICFABQAZp0AgGqdAICm6QEApeEBAG6dAICrfQEAqnUBAHKdAIB2nQCArz0BAK49AQCtVQEArFUBAKjtHQCpLR4AqjkeAKs5HgCsKR4ArSkeAK6dHgCvkR4AJp0AgHqdAIB+nQCAgp0AgIadAICC+QAAgfEAAID9AAC4qR4AuakeALpJHwC7SR8AvFkfAL1FHwC+TR8Av0UfALDxHgCx+R4AssEeALPBHgC0uR4AtbkeALatHgC3pR4AsBEfALERHwCyER8AsyUfALQlHwC1KR8Atl0fALdRHwC4cR8AuXkfALpBHwC7QR8AvJUAAL2dAAC+lQAAv40AAIqdAIC2nACAjp0AgJKdAICWnQCAmp0AgIb4AwCH0AAAqM0fAKnVHwCq0R8Aq70fAKytHwCtcR8ArnEfAK9xHwCzOR4Anp0AgKKdAICmnQCAqp0AgLaRHgC1RR4Arp0AgLu1HgC6tR4Asp0AgLadAIC/jR4AvoEeAL2RHgC8pR4Aup0AgKN9HgC+nQCAwp0AgKbVHgDGnQCAyp0AgKUBHgCq8R4Aq/EeAM6dAIDSnQCArsUeAK/JHgCs4R4A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gqIAgIaiAICKogCAjqIAgO9EBgCSogCA4dQGAJaiAIDjDAcAmqIAgJ6iAICiogCApqIAgLP1AQCqogCArqIAgLKiAIC2ogCAtkUBALXlAQC6ogCAuzEBALopAQC+ogCAwqIAgL8dAQC+HQEAvRkBALwlAQCoLT4AqTU+AKo9PgCrNT4ArC0+AK2FPgCuhT4Ar7k+AGaiAIDGogCAyqIAgM6iAICAGQAAgRkAAIIFAADSogCAuLk+ALm5PgC6ST8Au0k/ALxZPwC9WT8Avk0/AL9BPwCwrT4AsbU+ALKxPgCzjT4AtJk+ALWZPgC2iT4At4k+AKO1PgCEjAIA1qIAgNqiAIDeogCApgU+AKWlPgDiogCAq3E+AKppPgCGCAAAh2gDAK9dPgCuXT4ArVk+AKxlPgDmogCAs5E/AOqiAIDuogCAtlk/APKiAID2ogCAtbk/ALp1PwC7fT8A+qIAgP6iAIC+QT8Av0E/ALxZPwC9VT8AsJU+ALGdPgCyqT4As6U+ALShPgC1oT4AtqE+ALehPgC45T4Aue0+ALrlPgC7/T4AvO0+AL3dPgC+1T4AvxkBAAKjAIAGowCACqMAgA6jAIASowCA9qEAgBajAIAaowCAqF0+AKkhPgCqPT4AqzU+AKwVPgCt/T4ArvU+AK/tPgCj1T4AHqMAgCKjAIAmowCAKqMAgKYdPgCl/T4ALqMAgKs5PgCqMT4AMqMAgDajAICvBT4ArgU+AK0RPgCsHT4AgREAAIANAAA6owCAghkAAD6jAIBCowCAhJQBAL4QAACGQAcAhwABAEqjAIBOowCAUqMAgFajAIBaowCAXqMAgKiNAgCplQIAqpUCAKvNAgCs2QIArdkCAK7NAgCvxQIAYqMAgGajAIBqowCAbqMAgIwAAAByowCAdqMAgHqjAIC4HQMAucEDALrBAwC7wQMAvMEDAL3JAwC+8QMAv/EDALCJAgCxiQIAsikDALMpAwC0OQMAtTkDALYpAwC3JQMAsx0CAH6jAICCowCAhqMAgIqjAIC2WQIAtVECAI6jAIC7TQIAuk0CAJKjAICWowCAv/0DAL79AwC9/QMAvP0DAJqjAICeowCAoqMAgKajAIDhDD4AqqMAgOOoPwCuowCAgT0AAIAxAADvUD8Agh0AALKjAIC++AQAhhgFAIdMAwCEDAIA48wAALqjAIDhvAEA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tUkCACKmAIC7hQIAuoUCACamAIAqpgCAv4UCAL6FAgC9lQIAvJUCAIU8GgCjVQIALqYAgDKmAICmDQIANqYAgDqmAIClDQIAqsECAKvBAgA+pgCAQqYAgK7BAgCvwQIArNECAK3RAgCCGQAARqYAgIAZAACBGQAASqYAgE6mAIBSpgCAWqYAgL4ABABepgCAYqYAgGamAIBqpgCAbqYAgHKmAIB2pgCA7+gOAHqmAICG6AQAh1ADAH6mAICCpgCA74ACAIamAIDhlAEAiqYAgONYAQCOpgCA4wAOAJKmAIDhaA0AlqYAgKhxAgCpcQIAqnECAKupAgCsuQIArbkCAK6pAgCvqQIAhKwFAJqmAICepgCAoqYAgKamAICqpgCArqYAgLKmAIC4bQEAuQ0BALoFAQC7GQEAvAkBAL09AQC+NQEAv9kBALDZAgCx2QIAsm0BALNlAQC0fQEAtWUBALZlAQC3VQEA4WAPAOP0AADjHA4A4bwBALamAICCOQAAgTEAAIA9AAC6pgCAvigEAL6mAIDCpgCAvjwHAO8QAADv0A4AyqYAgIbgBACHyAQAzqYAgLO1AgDSpgCAtX0CALZ1AgDWpgCA2qYAgN6mAIC6UQIAu1ECALz1AQC9/QEAvvUBAL/tAQBWpgCAxqYAgKqxBQCrsQUArBUGAK0dBgCuFQYArw0GAOKmAIDmpgCA6qYAgKNVBQDupgCApZ0FAKaVBQDypgCAs+kGAPamAID6pgCA/qYAgAKnAIC24QYAtekGAAanAIC7sQYAuqEGAAqnAIAOpwCAv50GAL6RBgC9pQYAvKkGAKgdBgCpIQYAqiEGAKshBgCsIQYArSEGAK4hBgCvIQYAEqcAgBanAIAapwCAHqcAgCKnAIAmpwCAKqcAgC6nAIC45QcAue0HALrlBwC7/QcAvOUHAL3tBwC+5QcAv00HALAlBgCxNQYAsj0GALMxBgC0FQYAtRkGALYNBgC3AQYAo6kHAIIVAACBtQEAgLUBADKnAICmoQcApakHADanAICr8QcAquEHAISgAgA6pwCAr90HAK7RBwCt5QcArOkHAD6nAICzlQYAhugAAIcYAQC2tQYAQqcAgEanAIC1vQYAukkBALtVAQBKpwCATqcAgL45AQC/OQEAvEUBAL05AQCoPQYAqU0GAKpZBgCrUQYArHEGAK1xBgCuuQEAr7kBAISsAQBSpwCAVqcAgFqnAIBepwCAYqcAgGanAIBqpwCAuKkBALmpAQC6aQEAu2kBALx5AQC9eQEAvmkBAL9pAQCwyQEAsdUBALLVAQCzqQEAtLkBALW5AQC2qQEAt6EBAKPRBQBupwCAcqcAgHanAIB6pwCApvEFAKX5BQB+pwCAqxECAKoNAgCCpwCAhqcAgK99AgCufQIArX0CAKwBAgCKpwCAjqcAgJKnAICWpwCAgTEAAIANAACapwCAgjkAAJ6nAICipwCAviQDAKqnAICupwCAsqcAgIbYHACHTAMAtqcAgLqnAIC+pwCAhMAcAOMgAQDCpwCA4cgBAManAIDvMAIAyqcAgM6nAIDSpwCA1qcAgNqnAIDepwCA4qcAgLOVAwDmpwCA6qcAgO6nAIDypwCAtrkDALWxAwD2pwCAu1EDALpJAwD6pwCA/qcAgL/1AAC+SQMAvUEDALxJAwCoLQIAqUUCAKpdAgCrVQIArHkCAK15AgCuvQIAr7UCAL5oHQACqACABqgAgAqoAICAHQAAgQkAAIKpAAAOqACAuFEBALlZAQC6YQEAu2EBALwRAQC9EQEAvhEBAL8RAQCwzQIAsdUCALLdAgCz1QIAtM0CALVxAQC2cQEAt3EBAOFYBgDhVAcA47AAAOO8BgASqACAGqgAgIYYHACHVB0AHqgAgCKoAIAmqACAKqgAgL74HAAuqACA7/AGAO/gBgCjlQIAMqgAgDaoAIA6qACAPqgAgKa5AgClsQIAQqgAgKtRAgCqSQIARqgAgEqoAICv9QEArkkCAK1BAgCsSQIAqG0eAKl1HgCqfR4Aq40eAKyVHgCtnR4Aro0eAK+BHgAWqACATqgAgFKoAIBWqACAWqgAgF6oAIBiqACAZqgAgLiJHgC5iR4AupkeALuRHgC8uR4AvbkeAL59HwC/dR8AsMUeALHNHgCyxR4As90eALTFHgC1zR4AtsUeALe5HgCz9R4AaqgAgG6oAIByqACAdqgAgLYdHgC1HR4AeqgAgLsJHgC6AR4AfqgAgIKoAIC/CR4AvgEeAL0JHgC8ER4Agm0AAKOxHgCAVQAAgWUAAKZZHgCEmAMAv9ABAKVZHgCqRR4Aq00eAIYABACHmAEArkUeAK9NHgCsVR4ArU0eAIqoAICOqACAhCQAAJKoAICWqACAmqgAgKanAICGqACA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5qsAgIR0BwDqqwCA72gBAO6rAIDyqwCApXkCAKbNAQD2qwCAgCEAAIEhAACC3QcAo2kCAKzJAQCtyQEArqEBAK+hAQD6qwCA/qsAgKrpAQCr4QEAlqsAgAKsAIC+QAIABqwAgIYwAwCHMAMACqwAgA6sAICoOQcAqTkHAKoNBwCrHQcArAUHAK0NBwCuBQcAr3kHALAJBwCxCQcAshkHALMRBwC0OQcAtTkHALbdBwC3yQcAuPkHALn5BwC6zQcAu8EHALzFBwC9yQcAvrkHAL+xBwCzpQcAEqwAgBasAIAarACAHqwAgLatBwC1rQcAIqwAgLvtBwC67QcAJqwAgCqsAIC/3QcAvt0HAL3lBwC87QcALqwAgKPhBwAyrACANqwAgKbpBwA6rACAPqwAgKXpBwCqqQcAq6kHAEKsAIBGrACArpkHAK+ZBwCsqQcAraEHAEqsAIBOrACAUqwAgFasAIBarACAXqwAgGKsAIBmrACAgREAAIANAABqrACAghkAAG6sAIByrACAvuQBAHasAICG4AAAhxgBAHqsAIB+rACAgqwAgIasAICKrACA77AEAI6sAIDh1AYAkqwAgONcBACWrACAmqwAgJ6sAICirACAqJkBAKmZAQCqDQEAqwUBAKwdAQCtBQEArgUBAK81AQCEiAEApqwAgKqsAICurACAsqwAgLasAIC6rACAvqwAgLjBAAC5wQAAusEAALvBAAC8wQAAvcEAAL7BAAC/wQAAsE0BALElAQCyIQEAsyEBALQlAQC1LQEAthEBALcRAQDCrACAxqwAgLONAgDKrACAtZ0CAM6sAIDSrACAto0CANasAIDarACAu+kCALqBAgC9/QIAvP0CAL/hAgC+6QIA3qwAgKbVAgClxQIAvggDAKPVAgCCLQAAgRkAAIB5AACvuQIArrECAK2lAgCspQIAq7ECAKrZAgDirACA6qwAgO80AgDurACAhxgDAIYs/ADyrACA9qwAgPqsAID+rACAAq0AgAatAIAKrQCADq0AgOMAAQASrQCA4eABABatAIC6tQMAu70DABqtAIAerQCAvnkDAL95AwC8pQMAvXkDACarAICztQMAIq0AgCatAIC2kQMAKq0AgC6tAIC1pQMAqEkCAKlJAgCqWQIAq1kCAKxJAgCtdQIArnECAK9tAgC+aP0AvqT/ADKtAIA2rQCA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s1kGAA2yAIARsgCAFbIAgBmyAIC2ZQYAtXUGAB2yAIC7KQYAuiEGACGyAIAlsgCAvxUGAL4VBgC9JQYAvC0GAKOZBgCPmfwAKbIAgDGyAIA1sgCApqUGAKW1BgA5sgCAq+kGAKrhBgCGKB8Ah5wAAK/VBgCu1QYAreUGAKztBgCebQkAn30HAJwNCwCd7QkAmvENAJs5DQCY5fAAmQ0PAJbh8QCX6fEAlMX1AJUN8wCSHfcAk/H1AJD9+QCR7fkAgh3/AIMB+gA9sgCAQbIAgIYV9gCHOfYAhAn6AIXx9ACKwfAAiyXyAEWyAIBJsgCAjuEMAI8VDgCMNfIAjQHzAJKtDgCTgQgATbIAgFGyAICW6QQAl3UGAJR5CgCV8QoAmtEGAJvJAABVsgCAWbIAgIEdAwCAHQMAnFkCAIL1AwCrARAAqpUWAKmNFgCojRYAr5UuAK4BLACt/RIArJkSAKOlHgCipR4AoY0CAN2wAICnGRoAppUaAKUBGACknR8AXbIAgGGyAIBlsgCAabIAgG2yAIBxsgCAdbIAgHmyAICz5SoAsuUqALGtLwCw5S4AfbIAgIGyAIC1ASQAtBEqAKgpAwCpNQMAqj0DAKs1AwCsLQMArbUDAK69AwCvtQMAhbIAgImyAICNsgCAkbIAgIAdAACBCQAAgrkAAJWyAIC4TQIAuV0CALptAgC7CQIAvBkCAL0ZAgC+CQIAvwECALDNAwCx1QMAst0DALPVAwC0zQMAtXUCALZ9AgC3dQIAmbIAgITIHQChsgCAvgwfAKWyAICpsgCA70gGAO9YBwDhWAYA4ZgGAOOUAQDjAAYAhhAcAId8HQC+9B4ArbIAgLGyAIC2ZQMAtfUDALWyAICz5QMAubIAgL2yAIDBsgCAv+ECAL5ZAwC9UQMAvFkDALtBAwC6WQMAxbIAgMmyAIAtsgCAnbIAgM2yAIDRsgCA1bIAgNmyAIDdsgCA4bIAgKitHQCptR0AqrUdAKslHgCsPR4ArR0eAK4VHgCvdR4AsA0eALEtHgCyJR4As40eALSVHgC1nR4AtpUeALeNHgC4tR4Aub0eALq1HgC7nR4AvIUeAL1VHwC+XR8Av1UfALMdHQDlsgCA6bIAgO2yAIDxsgCAtr0eALWVHgD1sgCAu8keALrpHgD5sgCA/bIAgL95HgC+cR4AvXkeALzRHgCCKQAA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vPkBAL35AQC+mQEAv5UBALAFAQCxDQEAsgUBALMdAQC0BQEAtQ0BALYFAQC3+QEA4WQPAOGcDwDjFA4A49QPAJ22AIDhPA4AobYAgOPkAAC+rAQApbYAgKm2AIDvDAAArbYAgLG2AIDvYA4A77QPALW2AIC5tgCAhEQEALNhAgC9tgCAtWECALZhAgDBtgCAxbYAgMm2AIC6jQEAu4UBALydAQC9hQEAvo0BAL+FAQCjrQUAjbYAgM22AIDRtgCA1bYAgKatBQClrQUA2bYAgKtJBgCqQQYA3bYAgOG2AICvSQYArkEGAK1JBgCsUQYA5bYAgOm2AIDttgCA8bYAgIAdAACBCQAAgjkAAPW2AID5tgCA/bYAgIbIAACHIAMAAbcAgAW3AIAJtwCADbcAgKhtBgCptQcAqr0HAKsdBwCsCQcArTEHAK4xBwCvLQcAhKgDABG3AIAVtwCAGbcAgB23AIAhtwCAJbcAgCm3AIC4zQAAudUAALrVAAC75QAAvP0AAL2VAAC+nQAAv5UAALBVBwCxJQcAsi0HALM9BwC0LQcAtRUHALYdBwC39QAALbcAgOG8BgAxtwCA4/QFADW3AIA5twCAPbcAgEG3AIBFtwCASbcAgE23AIBRtwCAVbcAgFm3AIBdtwCA7+gEALN1BgCCLQAAgRUAAIAdAABhtwCAtvEGALXBBgBltwCAu6EGALrRBgBptwCAvmwBAL+RBgC+qQYAvakGALy5BgCjtQYAcbcAgIYoAACHTAEAdbcAgKYxBgClAQYAebcAgKthBgCqEQYAfbcAgIG3AICvUQYArmkGAK1pBgCseQYAhbcAgLO9AQCJtwCAjbcAgLZ5AQCRtwCAlbcAgLV5AQC6VQEAu10BAJm3AICdtwCAvvkAAL/lAAC8RQEAvf0AAKhxAgCpcQIAqnECAKtxAgCstQIArb0CAK61AgCvrQIAhOw8AKG3AICltwCAqbcAgK23AICxtwCAtbcAgLm3AIC4XQMAuWUDALptAwC7ZQMAvH0DAL1lAwC+bQMAv2UDALDVAgCx3QIAstUCALNtAwC0eQMAtWUDALZtAwC3ZQMAHbYAgL23AIDBtwCAo/UCAMW3AIClMQIApjECAMm3AIDNtwCA0bcAgKodAgCrFQIArA0CAK21AwCusQMAr60DAIBlAACBCQAAghkAANW3AIDZtwCA4bcAgL4QPADltwCAhsA8AIcgAwDptwCA7bcAgPG3AID1twCA+bcAgP23AICohQIAqZUCAKqVAgCrpQIArL0CAK3VAgCu0QIAr9ECAAG4AIAFuACACbgAgA24AIARuACAFbgAgBm4AIAduACAuHUBALl9AQC6dQEAu8kBALzZAQC9xQEAvsUBAL/9AQCwtQIAsb0CALKBAgCzgQIAtFUBALVdAQC2VQEAt00BAOGkBgAhuACA41AGAL6APACEHDwAvoA/ACW4AIApuACALbgAgDG4AIA1uACAObgAgD24AIBBuACA7+AGAEW4AICBfQAAgHEAAEm4AICCBQAAUbgAgFW4AIDvTAAAWbgAgOGQAQBduACA41gBAGG4AIBluACAabgAgIZYPwCH/DwAs509AN23AIBNuACAbbgAgHG4AIC21T0AtbU9AHW4AIC7+T0AuvE9AHm4AIB9uACAvxk+AL4RPgC91T0AvNU9AIG4AICj2T0AhbgAgIm4AICmkT0AjbgAgJG4AICl8T0AqrU9AKu9PQCVuACAmbgAgK5VPgCvXT4ArJE9AK2RPQCoVT4AqVk+AKphPgCrYT4ArGE+AK1hPgCuYT4Ar2E+AISoAwCduACAobgAgKW4AICpuACArbgAgLG4AIC1uACAuEU/ALldPwC6VT8Au20/ALx1PwC9fT8AvnU/AL9tPwCwwT8AscE/ALLBPwCzwT8AtME/ALXBPwC2wT8At8E/AIC5AQCBuQEAggUAALm4AIDhgD4AwbgAgOMoPQDFuACAhoAAAIcEAQDvCD0AybgAgM24AIDRuACA1bgAgNm4AICzqT8AvbgAgN24AIDhuACA5bgAgLahPwC1qT8A6bgAgLtFPgC6RT4A7bgAgPG4AIC/RT4AvkU+AL1VPgC8VT4Ao2k/APW4AID5uACA/bgAgAG5AICmYT8ApWk/AAW5AICrhT4AqoU+AAm5AIANuQCAr4U+AK6FPgCtlT4ArJU+ABG5AICzGT4AFbkAgBm5AIC2IT4AHbkAgCG5AIC1MT4AuvEBALv5AQAluQCAKbkAgL6xAQC/vQEAvNEBAL3RAQCo0T0AqdE9AKrVPQCr6T0ArP09AK3lPQCu7T0ArxECAID5AwCBzQMAgsUDAIQkAwC+AAQAMbkAgIesAwCGvAQAuBkCALktAgC6JQIAu+kCALz5AgC9+QIA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eLsAgOE0AgB8uwCA4zQBAIC7AIDjCAwAhLsAgOEIDQChoQEAiLsAgKMJBQCibQMApc0EAKQRBQCnHRkAph0ZAKmhHQCoORkAq+kcAKqpHQCtkREArAEQAK8BFACuUREAsfkVALDlFQCz6WkAsgFoALUBbAC0eWkAjLsAgJC7AICUuwCAmLsAgJy7AICguwCAowkDAKIZDQCh/Q0AoP0NAIIlJgCDBToApLsAgKi7AICGqTwAhzU+AIQdOgCFPTsAiok+AIslMgCsuwCAsLsAgI6xNACPMTYAjD0yAI0tMgCSJTYAk9EIAIREAwC+wAQAlhULAJdVDgCUXQoAlVUKAJplDgCbiQ4AtLsAgLi7AIC8uwCAwLsAgJyBAADEuwCAuLUCALm9AgC6tQIAuwkCALwZAgC9GQIAvgkCAL8BAgCwdQ0AsX0NALJJDQCzSQ0AtJUCALWdAgC2lQIAt40CAKi9DQCpUQ0AqlUNAKtpDQCsfQ0ArWUNAK5tDQCvEQ0AZLsAgILtAQCBHQAAgB0AAMi7AIDMuwCAfboAgL5wBQCznQwAhIwFANC7AIDYuwCA3LsAgLalDAC1tQwA4LsAgLv5DAC68QwAhigFAIcgBQC/GQMAvhEDAL3dDAC83QwA5LsAgKPZDADouwCA7LsAgKbhDADwuwCA9LsAgKXxDACqtQwAq70MAPi7AID8uwCArlUDAK9dAwCsmQwArZkMAAC8AIAEvACACLwAgAy8AIAQvACAFLwAgBi8AIDvvAEAHLwAgOF8DgAgvACA41ABACS8AIAovACALLwAgDC8AICzlQIANLwAgDi8AIA8vACAQLwAgLa9AgC1uQIASLwAgLs5AgC6YQIAhsgEAIesBAC/GQIAvhECAL0ZAgC8IQIAo1UFAILVBwCBxQcAgMUHAEy8AICmfQUApXkFAFC8AICr+QUAqqEFAFS8AIBYvACAr9kFAK7RBQCt2QUArOEFAFy8AICzWQcAYLwAgGS8AIC2HQcAaLwAgGy8AIC1FQcAugkHALsJBwBwvACAdLwAgL75BwC/+QcAvPkHAL35BwDUuwCARLwAgHi8AIB8vACAgLwAgIS8AICIvACAjLwAgKitBwCptQcAqrUHAKvtBwCs+QcArfkHAK7tBwCv5QcAsKkHALGpBwCySQcAs0kHALRZBwC1WQcAtkkHALdJBwC4eQcAuUUHALpBBwC7XQcAvEUHAL1NBwC+RQcAvzkHAKMdBgCQvACAlLwAgJi8AICcvACAplkGAKVRBgCgvACAq00GAKpNBgCkvACAqLwAgK+9BgCuvQYArb0GAKy9BgCAbQAAgQkAAIIZAACsvACAsLwAgISYAQC+kAEAtLwAgIYAHACHxAEAuLwAgLy8AIDAvACAxLwAgMi8AIDMvACAqF0GAKmVAQCqlQEAq6UBAKy9AQCt1QEArtEBAK/RAQDQvACA1LwAgNi8AIDcvACA4LwAgOS8AIDovACA7LwAgLhZAQC5WQEAus0AALvFAAC83QAAvcUAAL7FAAC/9QAAsLUBALG9AQCygQEAs4EBALR5AQC1eQEAtmkBALdpAQCzHQIA8LwAgPS8AIC+gBwA+LwAgLZVAgC1NQIA/LwAgLt5AgC6cQIAAL0AgAS9AIC/vQIAvr0CAL1VAgC8VQIACL0AgKNZAgAMvQCAEL0AgKYRAgAUvQCAGL0AgKVxAgCqNQIAqz0CABy9AIAgvQCArvkCAK/5AgCsEQIArRECACi9AIAsvQCAvgQdAL4AHgAwvQCANL0AgDi9AIA8vQCAgPkAAIHNAACCxQAAhCADAIawHACHlAMAQL0AgES9AIBIvQCATL0AgFC9AIBUvQCA42wCAFi9AIDhoAEAXL0AgO8UAgBgvQCAZL0AgGi9AIBsvQCAcL0AgHS9AIB4vQCA4fAGAOE0BgDjTAAA4xgGAHy9AICAvQCAhL0AgIi9AICAPQAAgQkAAIIZAACMvQCAkL0AgIS8HQDvmAAA7zgHALMxAgDRAAAAh9gdAIZsHACYvQCAtikCALUhAgCcvQCAu80CALrNAgCgvQCApL0AgL/NAgC+zQIAvc0CALzNAgCyXQYAs2UGALANBgCxVQYAtn0GALedBQC0fQYAtXUGALqNBQC7zQUAuKUFALmFBQC+xQUAv8kFALzVBQC9zQUAqL0AgKy9AICwvQCAtL0AgLi9AIC8vQCAwL0AgMS9AICqtQYAq70GAKgBBwCpvQYAroEGAK+NBgCsmQYArZUGAKNxHQDIvQCAzL0AgNC9AIDUvQCApmkdAKVhHQDYvQCAq40dAKqNHQDcvQCA4L0AgK+NHQCujR0ArY0dAKyNHQDkvQCAs9UeAOi9AIDsvQCAts0eAPC9AID0vQCAtcUeALqhHgC7oR4A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s5EOAPDFAID0xQCAtqUOAPjFAID8xQCAta0OALrhDgC74Q4AAMYAgATGAIC+6Q4Av9UOALz1DgC96Q4Ao6UKAAjGAIAMxgCAEMYAgBTGAICmzQ0Apc0NABjGAICrbQwAqm0MABzGAIAgxgCArz0MAK49DACtVQwArFUMAKgJDgCpCQ4Aqh0OAKsVDgCsIQ4ArSEOAK4hDgCvIQ4AJMYAgCjGAIAsxgCAMMYAgDTGAIA4xgCAPMYAgEDGAIC4zQEAudUBALrdAQC71QEAvM0BAL1RAQC+UQEAv1EBALAhDgCxIQ4AsiUOALM5DgC0KQ4AtRUOALYdDgC39QEARMYAgEjGAIBMxgCAo5kNAFDGAIClpQ0Apq0NAL7cAgCE7AMAWMYAgKrpDQCr6Q0ArP0NAK3hDQCu4Q0Ar90NAIBFAACBTQAAglkAAKNFAwBcxgCApUEDAKZBAwBgxgCAhsAEAIcAAwCqLQMAqyUDAKw9AwCtJQMAriUDAK8VAwCoWQIAqYUDAKqBAwCrgQMArIUDAK2NAwCusQMAr7EDAGTGAIBoxgCAbMYAgHDGAIB0xgCAeMYAgHzGAICAxgCAuGUDALltAwC6ZQMAu30DALxlAwC9bQMAvmUDAL/dAACwpQMAsa0DALKlAwCzvQMAtK0DALWdAwC2lQMAt10DALMJAgCExgCAiMYAgIzGAICQxgCAtg0CALUNAgCUxgCAu2kCALphAgCYxgCAnMYAgL9ZAgC+aQIAvWkCALxxAgCgxgCApMYAgKjGAICsxgCA4aABALDGAIDjaAMAtMYAgIEVAACAFQAA74wDAIIVAAC4xgCAvMYAgMDGAIC+cAUA4RgOAOGUDwDjOA8A49QPAISUAgDIxgCAzMYAgNDGAIDUxgCA2MYAgNzGAIDgxgCA5MYAgOjGAIDv7AEA7/gPAIZgBACHBAUAs5UBAITMBQC1dQEA7MYAgPDGAIC2dQEA9MYAgPjGAIC7UQEAulkBAL31AAC8SQEAv/UAAL71AACoJQYAqVUGAKpVBgCrrQYArLUGAK29BgCutQYAr60GAMTGAID8xgCAAMcAgATHAIAIxwCADMcAgBDHAIAUxwCAuGkHALlpBwC6CQcAuwkHALwZBwC9GQcAvg0HAL8BBwCw1QYAsd0GALLVBgCzaQcAtHkHALV5BwC2aQcAt2EHAKPdBgAYxwCAHMcAgCDHAIAkxwCApj0GAKU9BgAoxwCAqxkGAKoRBgAsxwCAMMcAgK+9BwCuvQcArb0HAKwBBgCAXQAAgW0AAIJlAACzUQcAvtgDALVxBwC2cQcANMcAgIbgAACHFAMAul0HALs5BwC8KQcAvRUHAL4dBwC/2QAAqJUGAKmdBgCqlQYAq60GAKy1BgCtvQYArrUGAK+tBgA4xwCAPMcAgEDHAIBExwCASMcAgEzHAIBQxwCAVMcAgLhxAQC5cQEAunEBALtxAQC81QEAvd0BAL7VAQC/zQEAsNUGALGxBgCysQYAs40GALSVBgC1UQEAtlEBALdRAQBYxwCAoxkGAFzHAIBgxwCApjkGAFTGAIBkxwCApTkGAKoVBgCrcQYAaMcAgGzHAICuVQYAr5EBAKxhBgCtXQYAcMcAgHTHAIB4xwCAfMcAgIDHAICExwCAiMcAgIzHAICQxwCAlMcAgJjHAICcxwCAgBkAAIEZAACCBQAAoMcAgISAAgC+gAMAhwwDAIasHADhaAYAqMcAgOOYBwCsxwCAsMcAgLTHAIDvrAcAuMcAgLzHAIDAxwCAxMcAgMjHAIDMxwCA0McAgNTHAICzZQMA2McAgLVlAwC2bQMA3McAgODHAIDkxwCAuukDALvlAwC8/QMAve0DAL7RAwC/0QMA6McAgOzHAIDwxwCA9McAgPjHAID8xwCAAMgAgATIAICogQMAqYEDAKqBAwCrgQMArIEDAK2BAwCugQMAr4EDALBBAwCxTQMAskUDALNVAwC0eQMAtXkDALYZAwC3GQMAuCkDALkpAwC6OQMAuzkDALwpAwC9KQMAvhkDAL8ZAwCBGQAAgBEAAKMhAgCCLQAApSECAAjIAIAMyACApikCABDIAIAYyACAq6ECAKqtAgCtqQIArLkCAK+VAgCulQIAhEwCAL5IHQCHZB0AhuwcAONAAwAcyACA4aABACDIAIDvnAMAJMgAgCjIAIAsyACAMMgAgDTIAIA4yACAPMgAgEDIAIBEyACASMgAgEzIAIBQyACAVMgAgFjIAIDvtAEAhKgdAOF8BgBcyACA43AGAGDIAIBkyACAaMgAgGzIAICz4QEAcMgAgHTIAIB4yACAfMgAgLblAQC19QEAgMgAgLuhAQC62QEAvuQcAIjIAIC/rQEAvqUBAL2xAQC8uQEAqBUeAKkZHgCqKR4AqykeAKw9HgCtJR4Ari0eAK8lHgAUyACAgvkfAIH5HwCA4R8AhMgAgIzIAICGHAAAh7ADALjBHgC5wR4AusEeALvBHgC8wR4AvcEeAL7BHgC/wR4AsF0eALElHgCyLR4AsyUeALQhHgC1KR4AthkeALcZHgCjoR4AkMgAgJTIAICYyACAnMgAgKalHgCltR4AoMgAgKvhHgCqmR4ApMgAgKjIAICv7R4AruUeAK3xHgCs+R4ArMgAgLOZHwCwyACAtMgAgLa9HwC4yACAvMgAgLW1HwC6mR8Au5kfAMDIAIDEyACAvnkfAL95HwC8eR8AvXkfAKglHgCpUR4AqlUeAKtpHgCseR4ArXkeAK5pHgCvaR4AyMgAgMzIAIDQyACA1MgAgNjIAIDcyACA4MgAgOTIAIC42R4Aue0eALr5HgC7+R4AvOkeAL3pHgC+nR4Av5UeALAZHgCxGR4AsukeALPpHgC0+R4AtfkeALbpHgC36R4Ao90eAIIpAACBFQAAgB0AAOjIAICm+R4ApfEeAOzIAICr3R4Aqt0eAKTHAIDwyACArz0eAK49HgCtPR4ArD0eAITIAgCzQQEAvgwBAPjIAIC2QQEA/MgAgADJAIC1UQEAuk0BALslAQCGSAAAh1ABAL4lAQC/LQEAvDEBAL0xAQAEyQCACMkAgIQEAwC+gAQADMkAgO+oHwAQyQCAFMkAgL8oMQDjdB8AGMkAgOE4HgAcyQCAIMkAgCTJAIAoyQCALMkAgDDJAICjzQIANMkAgKXdAgA4yQCAPMkAgKbNAgBAyQCARMkAgKupAgCqwQIArb0CAKy9AgCvoQIArqkCAKm1AgCoaR0AqwECAKoJAgCtAQIArBkCAK8xAgCuAQIAhGwFAEjJAIBMyQCAUMkAgFTJAICCnQEAgZ0BAICdAQC55QMAuOUDALvlAwC65QMAveUDALzlAwC/5QMAvuUDALEhAgCwSQIAsyUCALIlAgC1KQIAtCECALcVAgC2FQIAqM0CAKnRAgCq0QIAqw0BAKwVAQCtBQEArgEBAK8BAQBYyQCAXMkAgGDJAIBoyQCAvvgEAGzJAIBwyQCAdMkAgLgVAQC5HQEAuikBALspAQC89QEAvf0BAL71AQC/7QEAsEkBALFVAQCyXQEAs1UBALRNAQC1NQEAtj0BALcxAQCGoAUAh8gFAHjJAIDvvAAA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t6EFALa9BQC1vQUAtL0FAKu9BgCqvQYAqb0GAKi9BgCvfQYArn0GAK19BgCsfQYAJNMAgCjTAIAs0wCAMNMAgDTTAIA40wCAPNMAgEDTAICo7R0AqS0eAKoxHgCrMR4ArJUeAK2dHgCulR4Ar40eAATTAIBE0wCASNMAgEzTAIBQ0wCAVNMAgFjTAIBc0wCAuKkeALmpHgC6XR8Au1EfALxxHwC9cR8AvnUfAL9pHwCw/R4Asc0eALLFHgCzrR4AtLkeALW5HgC2rR4At6UeALO5HgBg0wCAZNMAgGjTAICU0gCAth0eALUdHgBs0wCAuwkeALo5HgBw0wCAhOADAL99HgC+fR4AvXkeALwRHgCCaQAAo/0eAIBFAACBUQAAplkeAL6cAwB00wCApVkeAKp9HgCrTR4AhkgAAIdsAACuOR4ArzkeAKxVHgCtPR4AqF0eAKltHgCqZR4Aq30eAKxlHgCtbR4ArmUeAK/9HgB40wCAfNMAgIDTAICE0wCAiNMAgIzTAICQ0wCAlNMAgLhpAQC5aQEAunkBALt5AQC8aQEAvWkBAL7dAQC/1QEAsIUeALGNHgCyhR4As50eALSFHgC1jR4AtoUeALdZAQCz7R4AmNMAgJzTAICg0wCApNMAgLbtHgC17R4AqNMAgLtJHgC6QR4ArNMAgLDTAIC/SR4AvkEeAL1JHgC8UR4AtNMAgKOpHgC40wCAvNMAgKapHgDA0wCAxNMAgKWpHgCqBR4Aqw0eAMjTAIDM0wCArgUeAK8NHgCsFR4ArQ0eAKghAwCpIQMAqiEDAKshAwCsIQMArSEDAK4hAwCvIQMA0NMAgNTTAIDY0wCAvmACANzTAIDg0wCA6NMAgOzTAIC4iQMAuYkDALqdAwC7lQMAvLkDAL25AwC+eQAAv3kAALDlAwCx7QMAsuUDALP9AwC07QMAtd0DALbVAwC3vQMAgKkAAIG1AACCvQAAs6UDAPDTAIC1pQMAtq0DAPTTAICE4AIA+NMAgLotAwC7JQMAvD0DAL0lAwC+JQMAvxUDAKPpAwD80wCAhmgEAIeAAwAA1ACApuEDAKXpAwAE1ACAq2kDAKphAwAI1ACADNQAgK9ZAwCuaQMArWkDAKxxAwAQ1ACAFNQAgBjUAIAc1ACAINQAgOE8HwAk1ACA40AeACjUAIAs1ACAMNQAgO+MHgA01ACAONQAgDzUAIBA1ACARNQAgIIlAACBEQAAgB0AAEjUAIDj5AMATNQAgOGsAQBQ1ACA77ADAIRkAgC+YAUAhtAEAIdEBQBY1ACAXNQAgGDUAIBk1ACAaNQAgGzUAIBw1ACAdNQAgHjUAIDvsAEAhKQFAOHcHgB81ACA4xABAIDUAICE1ACAiNQAgIzUAICzUQEAkNQAgJTUAICY1ACAnNQAgLYRAQC1fQEAoNQAgLsNAQC6DQEApNQAgKjUAIC//QAAvv0AAL39AAC8/QAAqDkGAKk5BgCqmQYAq5EGAKy1BgCt0QYArskGAK/BBgBU1ACArNQAgLDUAIC01ACAgA0AAIGxAACCsQAAuNQAgLhhBwC5YQcAumEHALt9BwC8ZQcAvW0HAL5lBwC/HQcAsIkGALGJBgCyaQcAs2kHALR5BwC1eQcAtmkHALdlBwCjEQYAvNQAgMDUAIC+gAMAxNQAgKZRBgClPQYAyNQAgKtNBgCqTQYAhggAAId8AwCvvQcArr0HAK29BwCsvQcAzNQAgNDUAICzSQcA1NQAgLVZBwDY1ACA3NQAgLZRBwDg1ACA5NMAgLtBBwC6dQcAvUUHALxFBwC/RQcAvkUHAKh5BgCpeQYAqokGAKuJBgCsmQYArZkGAK6JBgCviQYA5NQAgOjUAIDs1ACA8NQAgPTUAID41ACA/NQAgADVAIC4jQYAuZUGALqVBgC7pQYAvL0GAL1xAQC+cQEAv3EBALD5BgCxzQYAstkGALPZBgC0yQYAtckGALa9BgC3tQYAowEGAATVAIAI1QCADNUAgBDVAICmGQYApREGABTVAICrCQYAqj0GABjVAIAc1QCArw0GAK4NBgCtDQYArA0GACDVAIAk1QCAKNUAgCzVAICAGQAAgRkAAIIFAAAw1QCAhKwBAL6sAQCH6AAAhkwPADjVAIA81QCAQNUAgETVAIConQIAqcUCAKrNAgCrwQIArMUCAK3NAgCu+QIArz0DAEjVAIBM1QCAUNUAgFTVAIC+PAwAWNUAgFzVAIBg1QCAuMkDALnJAwC62QMAu9EDALz5AwC9+QMAvpkDAL+ZAwCwRQMAsU0DALJFAwCzXQMAtEUDALVNAwC2RQMAt/kDALNFAgBk1QCAaNUAgGzVAIBw1QCAtk0CALVNAgB01QCAu4kDALqBAwB41QCAfNUAgL+JAwC+gQMAvYkDALyRAwCA1QCAowECAITVAICI1QCApgkCAIzVAICQ1QCApQkCAKrFAwCrzQMAlNUAgJjVAICuxQMAr80DAKzVAwCtzQMAgO0BAIEVAACCEQAAhAACAJzVAIDhpAEAoNUAgOPsAACo1QCArNUAgLDVAIDvMAAAtNUAgLjVAIC81QCAwNUAgIbgDACH9AIAxNUAgMjVAIDM1QCA0NUAgO/MBgDU1QCA4bAHANjVAIDjEAYA3NUAgODVAIDk1QCA6NUAgOzVAIDw1QCA9NUAgPjVAID81QCAANYAgATWAIAI1gCA7+gBAIUYDwDhzAYADNYAgOMcBgCAKQAAgR0AAIIFAAAQ1gCAszkCAITMDQCGaA8Ah/wMAOHQ0gO28QEAtfkBABjWAIC72QEAutEBAL7kDAAc1gCAv30BAL59AQC9fQEAvMEBAKjxDQCp8Q0AqvENAKvxDQCsMQ4ArTEOAK4xDgCvMQ4ApNUAgBTWAIAg1gCAJNYAgCjWAIAs1gCAMNYAgDTWAIC46Q4AuekOALqJDgC7hQ4AvJ0OAL2BDgC+gQ4Av7UOALBVDgCxXQ4AslUOALPpDgC0+Q4AtfkOALbpDgC34Q4Ao3kNADjWAIA81gCAQNYAgETWAICmsQ4ApbkOAEjWAICrmQ4AqpEOAEzWAIBQ1gCArz0OAK49DgCtPQ4ArIEOAFTWAICz7Q8AWNYAgFzWAIC26Q8AYNYAgGTWAIC16Q8Auq0PALu1DwA01QCAaNYAgL6VDwC/mQ8AvK0PAL2hDwCoIQ4AqSEOAKohDgCrPQ4ArCUOAK0tDgCuJQ4Ar1UOAGzWAIBw1gCAdNYAgHjWAICAHQAAgQkAAIK9AAB81gCAuDkOALk5DgC6yQ4Au8kOALzZDgC92Q4AvskOAL/JDgCwLQ4AsTUOALI9DgCzMQ4AtBUOALUZDgC2CQ4AtwkOAKOpDgCA1gCAhIACAL6AAQCFAAQApq0OAKWtDgCI1gCAq/EOAKrpDgCGKAcAhxgAAK/dDgCu0Q4AreUOAKzpDgCM1gCAs+0BAJDWAICU1gCAtuUBAJjWAICc1gCAte0BALplAQC7bQEAoNYAgKTWAIC+bQEAv10BALx1AQC9bQEAqN0NAKnpDQCqIQIAqyECAKwhAgCtIQIAriECAK8hAgCo1gCArNYAgLDWAIC01gCAohECAKMRAgCgqQ4AodUCALiJAgC5iQIAup0CALuVAgC8vQIAvXUDAL59AwC/dQMAsOUCALHtAgCy5QIAs/0CALTtAgC13QIAttUCALe9AgCjqQIAj8UaALjWAIC81gCAwNYAgKahAgClqQIAxNYAgKspAgCqIQIAyNYAgMzWAICvGQIArikCAK0pAgCsMQIAniUOAJ/lDgCc6QoAnRUKAJpFFgCbRQoAmFkWAJlRFgCWcRIAl4ETAJRVEgCV7RIAktEeAJPZHgCQtRoAkVUeAISpHwCFJR8AhiUfAIexEwDQ1gCA1NYAgIJZGwCDURsAjEUSAI2lFwCOpRcAj7kXAIA5+wHY1gCAijkTAIutEwCUmQsAlaEPAJZpDwCX3Q8A3NYAgO+cDwCSyQsAk30LAJxFAwDjeA4A4NYAgOGYDADk1gCAhHgCAJqRAwCbXQMA4QQAAL6IBQDj3OoD6NYAgOzWAIDw1gCA7+wAAO+MDgDhcA4A4fwOAOMwAADjeA4AgSEAAIA5AADvtO0DgikAALMJAgD41gCAhmgEAIcsBQD81gCAtg0CALUNAgAA1wCAu8UBALrFAQAE1wCACNcAgL99AQC+fQEAvdUBALzVAQCE1gCA9NYAgAzXAIAQ1wCAFNcAgBjXAIAc1wCAINcAgKi9BQCp5QUAquEFAKvhBQCs5QUAre0FAK7RBQCv0QUAsGEGALFhBgCyYQYAs2EGALTZBgC12QYAtskGALfBBgC4yQYAuckGALp5BwC7eQcAvEUHAL0lBwC+EQcAvw0HAKNJBQAk1wCAKNcAgCzXAIAw1wCApk0FAKVNBQA01wCAq4UGAKqFBgA41wCAPNcAgK89BgCuPQYArZUGAKyVBgBA1wCARNcAgEjXAIBM1wCAUNcAgFTXAIBY1wCAXNcAgIA5AACBOQAAggUAAGDXAIC+uAMAhLgDAGjXAIBs1wCAqMUGAKnVBgCq1QYAq+UGAKz9BgCtHQEArhUBAK8NAQBk1wCAcNcAgIaIAQCHHAEAdNcAgHjXAIB81wCAgNcAgLjpAQC56QEAuokBALuJAQC8mQEAvZkBAL6JAQC/iQEAsHUBALF9AQCydQEAs+kBALT5AQC1+QEAtukBALfhAQCzXQYAhNcAgIjXAICM1wCAhLwBALadAQC1dQYAkNcAgLu5AQC6sQEAlNcAgJjXAIC/PQEAvj0BAL09AQC8oQEA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gNwAgLYVAgC1dQIAhNwAgLs5AgC6MQIAiNwAgIzcAIC/2QEAvtEBAL0VAgC8FQIAo50FADTcAICQ3ACAlNwAgJjcAICm1QUApbUFAJzcAICr+QUAqvEFAKDcAICk3ACArxkGAK4RBgCt1QUArNUFAIBRAACBWQAAgmEAALOVBgCo3ACAtXEHALZxBwCs3ACAhkADAIdUAwC67QcAu+UHALzlBwC97QcAvtEHAL/NBwCw3ACAtNwAgLjcAIC83ACAwNwAgMTcAIDvQAQAyNwAgOEwBwDM3ACA45QEANDcAIDU3ACA2NwAgNzcAIDg3ACAoxkGAOTcAIDo3ACA7NwAgPDcAICm/QcApf0HAPTcAICraQcAqmEHAPjcAID83ACAr0EHAK5dBwCtYQcArGkHAKjNBwCp0QcAqtEHAKstBgCsNQYArT0GAK41BgCvnQYAAN0AgATdAIAI3QCADN0AgIAZAACBGQAAggUAABDdAIC4iQYAuYkGALqZBgC7kQYAvLkGAL25BgC+UQEAv1EBALDlBgCx7QYAsv0GALP1BgC02QYAtcUGALbBBgC3uQYAqNEBAKnZAQCqCQEAqwkBAKwZAQCtGQEArgkBAK8JAQCEYAEAvnwBAIeoAACGjAEAGN0AgBzdAIAg3QCAJN0AgLgJAQC5CQEAuhkBALsRAQC8OQEAvTkBAL75AAC/+QAAsH0BALFBAQCyRQEAs10BALRFAQC1TQEAtkUBALc5AQAo3QCALN0AgDDdAICzjQIANN0AgLWdAgC2lQIAON0AgDzdAIBA3QCAurUCALuJAgC8nQIAvYUCAL6NAgC/hQIAps0CAETdAIBI3QCApcUCAEzdAICj1QIAUN0AgFTdAICu1QIAr90CAKzFAgCt3QIAqu0CAKvRAgCE9AMAWN0AgKgxAwCpMQMAqjEDAKsxAwCskQAArZEAAK6RAACvjQAAXN0AgGDdAIBk3QCAaN0AgGzdAIBw3QCAdN0AgHjdAIC4vQAAuWUAALptAAC7ZQAAvH0AAL1lAAC+bQAAv2UAALD9AACxxQAAss0AALOpAAC0uQAAtaUAALahAAC3oQAAgL0BAIEJAACCGQAAfN0AgIDdAIC+WAIAhxQdAIacHQCEbB0AxNsAgIjdAICM3QCAvrwcAJDdAICU3QCAmN0AgLP5AgCc3QCAoN0AgKTdAICo3QCA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gQkAAIIdAABM4gCA4cgGAFDiAIDjSAQAVOIAgKO1BgBY4gCAhigAAIdAAQBc4gCAptkGAKXRBgBg4gCAqyEGAKrNBgBk4gCAaOIAgK8pBgCuIQYArSkGAKw1BgBs4gCAs70BAHDiAIB04gCAtnkBAHjiAIB84gCAtXkBALpVAQC7XQEAgOIAgITiAIC++QAAv/kAALxFAQC9+QAAqHECAKlxAgCqcQIAq3ECAKy1AgCtvQIArrUCAK+tAgC+rDwAiOIAgIziAICQ4gCAlOIAgJjiAICc4gCAoOIAgLhpAwC5aQMAugkDALsJAwC8HQMAvQUDAL4NAwC/BQMAsNUCALHdAgCy1QIAs2kDALR5AwC1eQMAtmkDALdhAwCk4gCAqOIAgKziAICj9QIAsOIAgKUxAgCmMQIAtOIAgLjiAIC84gCAqh0CAKsVAgCsDQIArbEDAK6xAwCvsQMA7xgCAIIVAACBbQAAgG0AAMDiAIDI4gCAhvg8AIcYAwDM4gCA0OIAgNTiAIDY4gCA42wHAAThAIDhaAEA3OIAgKiFAgCplQIAqpUCAKulAgCsvQIArdUCAK7RAgCv0QIA4OIAgOTiAIDo4gCA7OIAgPDiAID04gCA+OIAgPziAIC4dQEAuX0BALp1AQC7zQEAvNUBAL3dAQC+yQEAv8EBALC1AgCxvQIAsoECALOBAgC0VQEAtV0BALZVAQC3TQEA4bQGAADjAIDj9AYABOMAgIQYPQAI4wCADOMAgBDjAIAU4wCAGOMAgBzjAIAg4wCAJOMAgCjjAIDvWAYALOMAgIF9AACAcQAAMOMAgIIFAAA44wCAPOMAgO+AAQC+VDwA4ZABAEDjAIDjfAYAROMAgEjjAIBM4wCAhtg8AIf0PACjnT0AxOIAgDTjAIBQ4wCAVOMAgKbVPQCltT0AWOMAgKv5PQCq8T0AXOMAgGDjAICvGT4ArhE+AK3VPQCs1T0AZOMAgLOhPgBo4wCAbOMAgLatPgBw4wCAdOMAgLWxPgC6ST8Au0k/AHjjAIB84wCAvkk/AL9JPwC8ST8AvUk/AKhVPgCpZT4Aqm0+AKtlPgCsfT4ArWk+AK65PwCvuT8AgOMAgITjAICI4wCAjOMAgJDjAICU4wCAmOMAgJzjAIC4VT8AuV0/ALpVPwC7bT8AvHU/AL19PwC+dT8Av20/ALDJPwCxyT8A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rjUCAK1VAgCsVQIAPOcAgEDnAIBE5wCASOcAgEznAIBQ5wCAVOcAgO/4AQC+bAQA4YAOAFjnAIDjFAEAXOcAgGDnAIBk5wCAaOcAgGznAIBw5wCAdOcAgLPdAQB45wCAtf0BALb1AQB85wCAgOcAgITnAIC6sQEAu4UBALydAQC9NQEAvj0BAL81AQCpBQYAqLkFAKsVBgCqHQYArT0GAKw9BgCvTQYArl0GACTnAICCHQAAgR0AAIAdAACI5wCAjOcAgJDnAICU5wCAuUEHALidBgC7QQcAukkHAL1FBwC8WQcAv0UHAL5FBwCxCQYAsD0GALOpBgCyAQYAtbkGALSxBgC3rQYAtrEGAKORBgCEjAIAhigAAIfAAwCY5wCAprkGAKWxBgCc5wCAq8kGAKr9BgCg5wCApOcAgK95BgCucQYArXkGAKzRBgCo5wCAs5kHAKznAICw5wCAtlEHALTnAIC45wCAtbEHALptBwC7dQcAvOcAgMDnAIC+WQcAv0UHALxtBwC9ZQcAxOcAgMjnAIDM5wCA0OcAgNTnAIDY5wCA3OcAgO+oBQDg5wCA4TQFAOTnAIDjdAUA6OcAgOznAIDw5wCA9OcAgKMdBgCCLQAAgRUAAIAdAAD45wCAptUGAKU1BgD85wCAq/EGAKrpBgAA6ACAhCgBAK/BBgCu3QYAreEGAKzpBgCoxQYAqdUGAKrVBgCr5QYArP0GAK0VBgCuHQYArxUGAL7sAQAI6ACAhggAAIcgAAAM6ACAEOgAgBToAIAY6ACAuH0GALkFBgC6DQYAuwUGALwBBgC9CQYAvjkGAL85BgCwbQYAsXUGALJ9BgCzdQYAtFkGALVFBgC2TQYAt0UGAKiRAgCpmQIAqqECAKuhAgCs0QIArd0CAK7VAgCvyQIAHOgAgCDoAIAk6ACAvyweACjoAIAs6ACAMOgAgDToAIC4VQMAuV0DALppAwC7ZQMAvGEDAL1hAwC+YQMAv2EDALC5AgCxjQIAsoUCALNtAwC0dQMAtX0DALZ1AwC3bQMAOOgAgDzoAICzIQIAQOgAgLVRAgCEiAMAROgAgLZVAgC05gCAvigcALtBAgC6dQIAvbEDALxZAgC/sQMAvrkDAKNpAgBI6ACATOgAgFDoAIBU6ACAph0CAKUZAgBY6ACAqwkCAKo9AgBc6ACAYOgAgK/5AwCu8QMA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hLkHAIW5BwCG2QcAh9kHAIjpBwCJ6QcAivkHAIv5BwCM6QcAjekHAI7RBwCP0QcAkLEHAJGxBwCSSQEAk0kBAJRZAQCVWQEAlkkBAJdJAQCYeQEAmXkBAJpJAQCbSQEAnFkBAJ1ZAQCeSQEAn0kBAKC5AQChuQEAoskBAKPJAQCk2QEApdkBAKbJAQCnyQEAqPkBAKn5AQCqyQEAq8kBAKzZAQCt2QEArskBAK/JAQCwuQEAsbkBALJJAQCzSQEAtFkBALVZAQC2SQEAt0kBALh5AQC5eQEAukkBALtJAQC8WQEAvVkBAL5JAQC/SQEA0jEAgNYxAIDaMQCAkjIAgNoyAIDmMgCA6jIAgO4yAIDyMgCA+jIAgP4yAIASMwCALjMAgDYzAIB2MwCAejMAgIIzAICGMwCAjjMAgJIzAIC2MwCAujMAgNYzAIDaMwCA3jMAgOIzAID2MwCAGjQAgB40AIAiNACARjQAgIY0AICKNACAqjQAgLo0AIDCNACA4jQAgAY1AIBKNQCAUjUAgGY1AIByNQCAejUAgII1AICGNQCAijUAgKI1AICmNQCAwjUAgMo1AIDSNQCA1jUAgOI1AIDqNQCA7jUAgPI1AID6NQCA/jUAgJ42AICyNgCAnoUMAOY2AIDqNgCA8jYAgIC5AwCBuQMAgskDAIPJAwCE2QMAhdkDAIbJAwCHyQMAiPkDAIn5AwCKyQMAi8kDAIzZAwCN2QMAjs0DAI/FAwCQvQMAkQEMAJJJDgCTSQ4AlFkOAJVZDgCWSQ4Al0kOAJh5DgCZeQ4AmkkOAJtJDgCcWQ4AnVkOAJ5JDgCfSQ4AoLkOAKG5DgCiyQ4Ao8kOAKTZDgCl2Q4ApskOAKfJDgCo+Q4AqfkOAKrJDgCryQ4ArNkOAK3ZDgCuyQ4Ar8kOALC5DgCxuQ4AskkOALNJDgC0WQ4AtVkOALZJDgC3SQ4AuHkOALl5DgC6SQ4Au0kOALxZDgC9WQ4AvkkOAL9JDgC8eQQAvXkEAL6JBAC/nQQAuHUEALl9BAC6aQQAu2kEALRxBAC1cQQAtnEEALdxBACwcQQAsXEEALJxBACzcQQArGkEAK1pBACucQQAr3EEAKhBBACpQQQAqkEEAKtBBACknQUApWEEAKZhBACnYQQAoJ0FAKGFBQCijQUAo4UFAJxdBQCdZQUAnm0FAJ9lBQCYXQUA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NAYAgEsGAIBoBgCAfwYAgJYGAIDdAwCA9gMAgA8EAIASBwCAQQgAgD4IAIA/BwCAOSQAgHIkAICjJACAyCQAgLkmAIDEJgCAyCYAgMwmAIDQJgCALygAgG4oAICWKACAmigAgL8oAIDHKACA4ygAgPUoAID5KACA/SgAgLrp0wAVKQCAMCkAgEspAIA9JACASiQAgFckAIBkJACAdiQAgIMkAICVJACApyQAgLckAIDMJACA1iQAgOQkAIDuJACA+yQAgAwlAIAWJQCAbyUAgHYlAIAkJQCAgBkDAIEZAwCCKQMAgykDAIQ5AwCFOQMAhikDAIcpAwCIGQMAiRkDAIppAwCLaQMAjHkDAI15AwCOaQMAj2kDAJAZAwCRGQMAkgEEAJMtAwCUNQMAlVUGAJZdBgCXVQYAmG0GAJl1BgCafQYAm3UGAJxtBgCdNQYAnj0GAJ81BgCgzQYAodUGAKLdBgCj1QYApPkDAKX5AwCm6QMAp+kDAKjZAwCp+QYAqikGAKspBgCsOQYArTkGAK7FAwCvPQMAsEUDALFNAwCyRQMAs10DALRFAwC1TQMAtkUDALd9AwC4SQMAuUkDALpZAwC7fQYAvGUGAL1tBgC+ZQYAgCUAgKkVDwCoAQ8Aq00PAKpNDwCtRQ8ArEUPAK+hDQCuqQ0AoXULAKBhCwCj7QsAoqkLAKXlCwCk5QsApzkPAKZZCAC5oQ0AuJkNALuhDQC6qQ0AvaENALy5DQAxJQCAvqkNALGhDQCw2Q0As6ENALKpDQC1oQ0AtLkNALehDQC2qQ0AOCUAgEglAIBbJQCAsiUAgLwlAICRJQCAoSUAgNAlAICB7Q0AgO0NAIP9DQCC/Q0Ahe0NAITtDQCH2Q0AhiEYAJlNDQCYTQ0Am1ENAJpdDQCdeQ0AnHUNAJ9pDQCecQ0AkYkNAJCBDQCTmQ0AkoENAJWJDQCUgQ0Al30NAJaBDQDgJACAICUAgI0lAIDMJQCA3iUAgAgmAIAtJgCAQiYAgPAlAID6JQCADCYAgBkmAIAxJgCATiYAgFgmAIB2JgCASiYAgGYmAIBuJgCAgCYAgIwmAICUJgCAoyYAgN4mAICcJgCAsiYAgKcmAIC9JgCA1CYAgOImAIABJwCAEScAgBsnAIBPJwCAkicAgOcnAIBPKQCAXSkAgGEpAIBlKQCA8CYAgC4nAIA+JwCASCcAgCMnAIBTJwCAYycAgH4nAIBwJwCAlicAgMInAIDJJwCApicAgNMnAIDdJwCAtCcAgBgoAIAKKACA6ycAgCUoAIDyJwCA/CcAgDMoAIBAKACASigAgFQoAIBeKACAcigAgH8oAICGKACAnigAgKUoAICyKACAyygAgNUoAIDnKACAASkAgA4pAIAZKQCAIykAgDQpAIA7KQCAUykAgMMDAIDmBACAhQUAgNgFAIATBgCAOQYAgFAGAIBtBgCAhAYAgJsGAIDjAwCA/AMAgBUEAIAoBACAOwQAgE4EAIBhBACAdAQAgIcEAICaBACAAAUAgA8FAIAeBQCALQUAgDwFAIBjCACAJAgAgMEGAID8BwCAHQkAgOMoEwAzCQCAKggAgC0IAIAxCACAJAcAgNwuAIDKMACA2S0AgLswAIBFMQCAJwkAgO/sEwAGCQCA3A0AgM8IAICDCACAMQcAgEwHAID8BgCACggAgJQIAIAqCQCACQkAgOANAIDsDQCA2wgAgJkIAIAVBwCAhggAgFUHAID/BgCApgcAgJEkAIDwDQCA4ggAgCcIAICcCACAWAgAgBUJAID0DQCA5QgAgBQIAICfCACA6AgAgBcIAIDJCACAoggAgOwIAIAbCACAzAgAgKYIAID3CACA/QgAgIgHAICKCACAWQcAgAMHAIA9CQCAQQkAgEkJAIA2CQCAGAkAgPgNAID0CACALQkAgAwJAIDkDQCA0ggAgI4IAIBdBwCAMAkAgA8JAIDoDQCA1QgAgJEIAIBgBwCArQgAgGMHAIDjSBIA4xQSAOP4EwDjuBMA4+wSAOOgEgDjbBIA43gSAO/ADQDv2A0A73QSAO9QEgDvqBIA79wSAO8oEwDvIBMA6QcAgMwGAIAOCACAEQgAgNgGAIDUBgCAIQgAgAcHAIBnCACADAcAgHYIAIA0BwCANwcAgKoIAIC2CACAuQgAgOPYEADjoBAA46AQAON0EQDjNBAA4wgQAOPkEADj9BAA77wQAO/gEADvzBAA7zgQAO8QEADvcBAA73AQAO9MEADjhBMA4+gTAOMwEADjEBAA42ATAONAEwDjpBMA47QTAO/IEwDvtBMA75gTAO98EwDvXBMA70wTAO8UEwDv6BAAgO08AIH1PACC/TwAg/U8AITtPACFFT0Ahh09AIcVPQCILT0AiTU9AIo9PQCLNT0AjC09AI0VPQCOHT0AjxU9AJBtPQCRdT0Akn09AJN1PQCUbT0AlRU9AJYdPQCXFT0AmC09AJk1PQCaPT0AmzU9AJwtPQCdFT0Anh09AJ8VPQCg7T0AofU9AKL9PQCj9T0ApO09AKUVPQCmHT0ApxU9AKgtPQCpNT0Aqj09AKs1PQCsLT0ArRU9AK4dPQCvFT0AsG09ALF1PQCyfT0As3U9ALRtPQC1FT0AthE9ALcRPQC4MT0AuTE9ALoxPQC7MT0AvBE9AL0RPQC+ET0AvxE9AIDxPACB/TwAgvU8AIMNPwCEFT8AhR0/AIYVPwCHDT8AiDU/AIk9PwCKNT8Aiw0/AIwVPwCNHT8AjhU/AI8NPwCQdT8AkX0/AJJ1PwCTDT8AlBU/AJUZPwCWCT8Alwk/AJg5PwCZOT8Amgk/AJsJPwCcGT8AnRk/AJ4JPwCfCT8AoPk/AKH5PwCiCT8Aowk/AKQZPwClGT8Apgk/AKcJPwCoOT8AqTk/AKoJPwCrCT8ArBk/AK0ZPwCuCT8Arwk/ALB5PwCxeT8Asgk/ALMJPwC0GT8AtRk/ALYJPwC3CT8AuDk/ALk5PwC6CT8Auwk/ALwZPwC9GT8Avgk/AL8JPwCA+TwAgfk8AIJJPQCDST0AhFk9AIVZPQCGST0Ah0k9AIh5PQCJeT0Aikk9AItJPQCMWT0AjVk9AI5JPQCPST0AkDk9AJE5PQCSAQQAk00GAJRVBgCVXQYAllUGAJdNBgCYdQYAmX0GAJp1BgCbTQYAnFUGAJ1dBgCeVQYAn00GAKC1BgChvQYAorUGAKPNBgCk1QYApd0GAKbVBgCnzQYAqPUGAKn9BgCq9QYAq80GAKzVBgCt3QYArtUGAK/NBgCwtQYAsb0GALK1BgCzTQYAtFUGALVdBgC2VQYAt00GALh1BgC5fQYAunUGALtNBgC8VQYAvV0GAL5VBgC/TQYArH0/AK2lPwCurT8Ar6U/AKh9PwCpZT8Aqm0/AKtlPwCkHT8ApUU/AKZNPwCnRT8AoB0/AKEFPwCiDT8AowU/ALydPwC9pT8Avq0/AL+lPwC4nT8AuYU/ALqNPwC7hT8AtN0/ALWlPwC2rT8At6U/ALDdPwCxxT8Ass0/ALPFPwCMZToAjW06AI5lOgCPfToAiEU6AIlNOgCKRToAi306AIRlOgCFbToAhmU6AId9OgCABToA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ACDZjgAg2Y7ZkQAg2Y8AINmP2ZEAINmQACDZkNmRACDZkQAg2ZHZsAAg2ZIAIOOCmQAg44KaACEAISEAIT8AIgAjACQAJQAmACcAKAAoMSkAKDEwKQAoMTEpACgxMikAKDEzKQAoMTQpACgxNSkAKDE2KQAoMTcpACgxOCkAKDE5KQAoMikAKDIwKQAoMykAKDQpACg1KQAoNikAKDcpACg4KQAoOSkAKEEpAChCKQAoQykAKEQpAChFKQAoRikAKEcpAChIKQAoSSkAKEopAChLKQAoTCkAKE0pAChOKQAoTykAKFApAChRKQAoUikAKFMpAChUKQAoVSkAKFYpAChXKQAoWCkAKFkpAChaKQAoYSkAKGIpAChjKQAoZCkAKGUpAChmKQAoZykAKGgpAChpKQAoaikAKGspAChsKQAobSkAKG4pAChvKQAocCkAKHEpAChyKQAocykAKHQpACh1KQAodikAKHcpACh4KQAoeSkAKHopACjhhIApACjhhIIpACjhhIMpACjhhIUpACjhhIYpACjhhIcpACjhhIkpACjhhIspACjhhIwpACjhhI4pACjhhI8pACjhhJApACjhhJEpACjhhJIpACjkuIApACjkuIMpACjkuIkpACjkuZ0pACjkuowpACjkupQpACjku6MpACjkvIEpACjkvJEpACjlhaspACjlha0pACjlirQpACjljYEpACjljZQpACjlkI0pACjlkbwpACjlm5spACjlnJ8pACjlraYpACjml6UpACjmnIgpACjmnIkpACjmnKgpACjmoKopACjmsLQpACjngaspACjnibkpACjnm6MpACjnpL4pACjnpZ0pACjnpa0pACjoh6opACjoh7MpACjosqEpACjos4cpACjph5EpACjqsIApACjrgpgpACjri6QpACjrnbwpACjrp4gpACjrsJQpACjsgqwpACjslYQpACjsmKTsoIQpACjsmKTtm4QpACjsnpApACjso7wpACjssKgpACjsubQpACjtg4ApACjtjIwpACjtlZgpACkAKgArACwALQAuAC4uAC4uLgAvADAAMCwAMC4AMOKBhDMAMOeCuQAxADEsADEuADEwADEwLgAxMOaXpQAxMOaciAAxMOeCuQAxMQAxMS4AMTHml6UAMTHmnIgAMTHngrkAMTIAMTIuADEy5pelADEy5pyIADEy54K5ADEzADEzLgAxM+aXpQAxM+eCuQAxNAAxNC4AMTTml6UAMTTngrkAMTUAMTUuADE15pelADE154K5ADE2ADE2LgAxNuaXpQAxNueCuQAxNwAxNy4AMTfml6UAMTfngrkAMTgAMTguADE45pelADE454K5ADE5ADE5LgAxOeaXpQAxOeeCuQAx4oGEADHigYQxMAAx4oGEMgAx4oGEMwAx4oGENAAx4oGENQAx4oGENgAx4oGENwAx4oGEOAAx4oGEOQAx5pelADHmnIgAMeeCuQAyADIsADIuADIwADIwLgAyMOaXpQAyMOeCuQAyMQAyMeaXpQAyMeeCuQAyMgAyMuaXpQAyMueCuQAyMwAyM+aXpQAyM+eCuQAyNAAyNOaXpQAyNOeCuQAyNQAyNeaXpQAyNgAyNuaXpQAyNwAyN+aXpQAyOAAyOOaXpQAyOQAyOeaXpQAy4oGEMwAy4oGENQAy5pelADLmnIgAMueCuQAzADMsADMuADMwADMw5pelADMxADMx5pelADMyADMzADM0ADM1ADM2ADM3ADM4ADM5ADPigYQ0ADPigYQ1ADPigYQ4ADPml6UAM+aciAAz54K5ADQANCwANC4ANDAANDEANDIANDMANDQANDUANDYANDcANDgANDkANOKBhDUANOaXpQA05pyIADTngrkANQA1LAA1LgA1MAA14oGENgA14oGEOAA15pelADXmnIgANeeCuQA2ADYsADYuADbml6UANuaciAA254K5ADcANywANy4AN+KBhDgAN+aXpQA35pyIADfngrkAOAA4LAA4LgA45pelADjmnIgAOOeCuQA5ADksADkuADnml6UAOeaciAA554K5ADoAOjo9ADsAPAA9AD09AD09PQA+AD8APyEAPz8AQABBAEFVAEHiiJVtAEIAQnEAQwBDRABDby4AQ+KIlWtnAEQAREoARFoARHoARMW9AETFvgBFAEYARkFYAEcAR0IAR0h6AEdQYQBHeQBIAEhQAEhWAEhnAEh6AEkASUkASUlJAElKAElVAElWAElYAEoASwBLQgBLSwBLTQBMAExKAExURABMagBMwrcATQBNQgBNQwBNRABNSHoATVBhAE1WAE1XAE3OqQBOAE5KAE5qAE5vAE8AUABQSABQUE0AUFBWAFBSAFBURQBQYQBRAFIAUnMAUwBTRABTTQBTUwBTdgBUAFRFTABUSHoAVE0AVQBWAFZJAFZJSQBWSUlJAFbiiJVtAFcAV0MAV1oAV2IAWABYSQBYSUkAWQBaAFsAXABdAF4AXwBgAGEAYS5tLgBhL2MAYS9zAGHKvgBiAGJhcgBjAGMvbwBjL3UAY2FsAGNjAGNkAGNtAGNtMgBjbTMAZABkQgBkYQBkbABkbQBkbTIAZG0zAGR6AGTFvgBlAGVWAGVyZwBmAGZmAGZmaQBmZmwAZmkAZmwAZm0AZwBnYWwAaABoUGEAaGEAaQBpaQBpaWkAaWoAaW4AaXYAaXgAagBrAGtBAGtIegBrUGEAa1YAa1cAa2NhbABrZwBrbABrbQBrbTIAa20zAGt0AGvOqQBsAGxqAGxtAGxuAGxvZwBseABswrcAbQBtMgBtMwBtQQBtVgBtVwBtYgBtZwBtaWwAbWwAbW0AbW0yAG1tMwBtb2wAbXMAbeKIlXMAbeKIlXMyAG4AbkEAbkYAblYAblcAbmoAbm0AbnMAbwBvVgBwAHAubS4AcEEAcEYAcFYAcFcAcGMAcHMAcQByAHJhZAByYWTiiJVzAHJhZOKIlXMyAHMAc3IAc3QAdAB1AHYAdmkAdmlpAHZpaWkAdwB4AHhpAHhpaQB5AHoAewB8AH0AwqIAwqMAwqUAwqYAwqwAwrBDAMKwRgDCtwDDgADDgQDDggDDgwDDhADDhQDDhgDDhwDDiADDiQDDigDDiwDDjADDjQDDjgDDjwDDkQDDkgDDkwDDlADDlQDDlgDDmQDDmgDDmwDDnADDnQDDoADDoQDDogDDowDDpADDpQDDpwDDqADDqQDDqgDDqwDDrADDrQDDrgDDrwDDsADDsQDDsgDDswDDtADDtQDDtgDDuQDDugDDuwDDvADDvQDDvwDEgADEgQDEggDEgwDEhADEhQDEhgDEhwDEiADEiQDEigDEiwDEjADEjQDEjgDEjwDEkgDEkwDElADElQDElgDElwDEmADEmQDEmgDEmwDEnADEnQDEngDEnwDEoADEoQDEogDEowDEpADEpQDEpgDEpwDEqADEqQDEqgDEqwDErADErQDErgDErwDEsADEsQDEtADEtQDEtgDEtwDEuQDEugDEuwDEvADEvQDEvgDFgwDFhADFhQDFhgDFhwDFiADFiwDFjADFjQDFjgDFjwDFkADFkQDFkwDFlADFlQDFlgDFlwDFmADFmQDFmgDFmwDFnADFnQDFngDFnwDFoADFoQDFogDFowDFpADFpQDFqADFqQDFqgDFqwDFrADFrQDFrgDFrwDFsADFsQDFsgDFswDFtADFtQDFtgDFtwDFuADFuQDFugDFuwDFvADFvQDFvgDGjgDGkADGoADGoQDGqwDGrwDGsADHjQDHjgDHjwDHkADHkQDHkgDHkwDHlADHlQDHlgDHlwDHmADHmQDHmgDHmwDHnADHngDHnwDHoADHoQDHogDHowDHpgDHpwDHqADHqQDHqgDHqwDHrADHrQDHrgDHrwDHsADHtADHtQDHuADHuQDHugDHuwDHvADHvQDHvgDHvwDIgADIgQDIggDIgwDIhADIhQDIhgDIhwDIiADIiQDIigDIiwDIjADIjQDIjgDIjwDIkADIkQDIkgDIkwDIlADIlQDIlgDIlwDImADImQDImgDImwDIngDInwDIogDIpgDIpwDIqADIqQDIqgDIqwDIrADIrQDIrgDIrwDIsADIsQDIsgDIswDItwDJkADJkQDJkgDJlADJlQDJmQDJmwDJnADJnwDJoQDJowDJpQDJpgDJqADJqQDJqgDJqwDJrQDJrwDJsADJsQDJsgDJswDJtADJtQDJuADJuQDJuwDKgQDKggDKgwDKiQDKigDKiwDKjADKkADKkQDKkgDKlQDKnQDKnwDKuQDKvG4AzIAAzIEAzIjMgQDMkwDOhgDOiADOiQDOigDOjADOjgDOjwDOkADOkQDOkgDOkwDOlADOlQDOlgDOlwDOmADOmQDOmgDOmwDOnADOnQDOngDOnwDOoADOoQDOowDOpADOpQDOpgDOpwDOqADOqQDOqgDOqwDOrADOrQDOrgDOrwDOsADOsQDOsgDOswDOtADOtQDOtgDOtwDOuADOuQDOugDOuwDOvADOvEEAzrxGAM68VgDOvFcAzrxnAM68bADOvG0AzrxzAM69AM6+AM6/AM+AAM+BAM+CAM+DAM+EAM+FAM+GAM+HAM+IAM+JAM+KAM+LAM+MAM+NAM+OAM+cAM+dANCAANCBANCDANCHANCMANCNANCOANCZANC5ANC9ANGKANGMANGQANGRANGTANGXANGcANGdANGeANG2ANG3ANOBANOCANOQANORANOSANOTANOWANOXANOaANObANOcANOdANOeANOfANOiANOjANOkANOlANOmANOnANOqANOrANOsANOtANOuANOvANOwANOxANOyANOzANO0ANO1ANO4ANO5ANWl1oIA1bTVpQDVtNWrANW01a0A1bTVtgDVvtW2ANeQANeQ1rcA15DWuADXkNa8ANeQ15wA15EA15HWvADXkda/ANeSANeS1rwA15MA15PWvADXlADXlNa8ANeV1rkA15XWvADXlta8ANeY1rwA15nWtADXmda8ANea1rwA15sA15vWvADXm9a/ANecANec1rwA150A157WvADXoNa8ANeh1rwA16IA16PWvADXpNa8ANek1r8A16bWvADXp9a8ANeoANeo1rwA16nWvADXqda814EA16nWvNeCANep14EA16nXggDXqgDXqta8ANey1rcA2KEA2KIA2KMA2KQA2KUA2KYA2KbYpwDYptisANim2K0A2KbYrgDYptixANim2LIA2KbZhQDYptmGANim2YcA2KbZiADYptmJANim2YoA2KbbhgDYptuHANim24gA2KbbkADYptuVANinANin2YPYqNixANin2YTZhNmHANin2YsA2KfZtADYqADYqNisANio2K0A2KjYrdmKANio2K4A2KjYrtmKANio2LEA2KjYsgDYqNmFANio2YYA2KjZhwDYqNmJANio2YoA2KkA2KoA2KrYrADYqtis2YUA2KrYrNmJANiq2KzZigDYqtitANiq2K3YrADYqtit2YUA2KrYrgDYqtiu2YUA2KrYrtmJANiq2K7ZigDYqtixANiq2LIA2KrZhQDYqtmF2KwA2KrZhditANiq2YXYrgDYqtmF2YkA2KrZhdmKANiq2YYA2KrZhwDYqtmJANiq2YoA2KsA2KvYrADYq9ixANir2LIA2KvZhQDYq9mGANir2YcA2KvZiQDYq9mKANisANis2K0A2KzYrdmJANis2K3ZigDYrNmEINis2YTYp9mE2YcA2KzZhQDYrNmF2K0A2KzZhdmJANis2YXZigDYrNmJANis2YoA2K0A2K3YrADYrdis2YoA2K3ZhQDYrdmF2YkA2K3ZhdmKANit2YkA2K3ZigDYrgDYrtisANiu2K0A2K7ZhQDYrtmJANiu2YoA2K8A2LAA2LDZsADYsQDYsdiz2YjZhADYsdmwANix24zYp9mEANiyANizANiz2KwA2LPYrNitANiz2KzZ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AOGEjQDhhI4A4YSPAOGEkADhhJEA4YSSAOGElADhhJUA4YSaAOGEnADhhJ0A4YSeAOGEoADhhKEA4YSiAOGEowDhhKcA4YSpAOGEqwDhhKwA4YStAOGErgDhhK8A4YSyAOGEtgDhhYAA4YWHAOGFjADhhZcA4YWYAOGFmQDhhaAA4YWhAOGFogDhhaMA4YWkAOGFpQDhhaYA4YWnAOGFqADhhakA4YWqAOGFqwDhhawA4YWtAOGFrgDhha8A4YWwAOGFsQDhhbIA4YWzAOGFtADhhbUA4YaEAOGGhQDhhogA4YaRAOGGkgDhhpQA4YaeAOGGoQDhhqoA4YasAOGGrQDhhrAA4YaxAOGGsgDhhrMA4Ya0AOGGtQDhh4cA4YeIAOGHjADhh44A4YeTAOGHlwDhh5kA4YedAOGHnwDhh7EA4YeyAOGshgDhrIgA4ayKAOGsjADhrI4A4aySAOGsuwDhrL0A4a2AAOGtgQDhrYMA4bSCAOG0lgDhtJcA4bScAOG0nQDhtKUA4bW7AOG2hQDhuIAA4biBAOG4ggDhuIMA4biEAOG4hQDhuIYA4biHAOG4iADhuIkA4biKAOG4iwDhuIwA4biNAOG4jgDhuI8A4biQAOG4kQDhuJIA4biTAOG4lADhuJUA4biWAOG4lwDhuJgA4biZAOG4mgDhuJsA4bicAOG4nQDhuJ4A4bifAOG4oADhuKEA4biiAOG4owDhuKQA4bilAOG4pgDhuKcA4bioAOG4qQDhuKoA4birAOG4rADhuK0A4biuAOG4rwDhuLAA4bixAOG4sgDhuLMA4bi0AOG4tQDhuLYA4bi3AOG4uADhuLkA4bi6AOG4uwDhuLwA4bi9AOG4vgDhuL8A4bmAAOG5gQDhuYIA4bmDAOG5hADhuYUA4bmGAOG5hwDhuYgA4bmJAOG5igDhuYsA4bmMAOG5jQDhuY4A4bmPAOG5kADhuZEA4bmSAOG5kwDhuZQA4bmVAOG5lgDhuZcA4bmYAOG5mQDhuZoA4bmbAOG5nADhuZ0A4bmeAOG5nwDhuaAA4bmhAOG5ogDhuaMA4bmkAOG5pQDhuaYA4bmnAOG5qADhuakA4bmqAOG5qwDhuawA4bmtAOG5rgDhua8A4bmwAOG5sQDhubIA4bmzAOG5tADhubUA4bm2AOG5twDhubgA4bm5AOG5ugDhubsA4bm8AOG5vQDhub4A4bm/AOG6gADhuoEA4bqCAOG6gwDhuoQA4bqFAOG6hgDhuocA4bqIAOG6iQDhuooA4bqLAOG6jADhuo0A4bqOAOG6jwDhupAA4bqRAOG6kgDhupMA4bqUAOG6lQDhupYA4bqXAOG6mADhupkA4bqgAOG6oQDhuqIA4bqjAOG6pADhuqUA4bqmAOG6pwDhuqgA4bqpAOG6qgDhuqsA4bqsAOG6rQDhuq4A4bqvAOG6sADhurEA4bqyAOG6swDhurQA4bq1AOG6tgDhurcA4bq4AOG6uQDhuroA4bq7AOG6vADhur0A4bq+AOG6vwDhu4AA4buBAOG7ggDhu4MA4buEAOG7hQDhu4YA4buHAOG7iADhu4kA4buKAOG7iwDhu4wA4buNAOG7jgDhu48A4buQAOG7kQDhu5IA4buTAOG7lADhu5UA4buWAOG7lwDhu5gA4buZAOG7mgDhu5sA4bucAOG7nQDhu54A4bufAOG7oADhu6EA4buiAOG7owDhu6QA4bulAOG7pgDhu6cA4buoAOG7qQDhu6oA4burAOG7rADhu60A4buuAOG7rwDhu7AA4buxAOG7sgDhu7MA4bu0AOG7tQDhu7YA4bu3AOG7uADhu7kA4byAAOG8gQDhvIIA4byDAOG8hADhvIUA4byGAOG8hwDhvIgA4byJAOG8igDhvIsA4byMAOG8jQDhvI4A4byPAOG8kADhvJEA4bySAOG8kwDhvJQA4byVAOG8mADhvJkA4byaAOG8mwDhvJwA4bydAOG8oADhvKEA4byiAOG8owDhvKQA4bylAOG8pgDhvKcA4byoAOG8qQDhvKoA4byrAOG8rADhvK0A4byuAOG8rwDhvLAA4byxAOG8sgDhvLMA4by0AOG8tQDhvLYA4by3AOG8uADhvLkA4by6AOG8uwDhvLwA4by9AOG8vgDhvL8A4b2AAOG9gQDhvYIA4b2DAOG9hADhvYUA4b2IAOG9iQDhvYoA4b2LAOG9jADhvY0A4b2QAOG9kQDhvZIA4b2TAOG9lADhvZUA4b2WAOG9lwDhvZkA4b2bAOG9nQDhvZ8A4b2gAOG9oQDhvaIA4b2jAOG9pADhvaUA4b2mAOG9pwDhvagA4b2pAOG9qgDhvasA4b2sAOG9rQDhva4A4b2vAOG9sADhvbIA4b20AOG9tgDhvbgA4b26AOG9vADhvoAA4b6BAOG+ggDhvoMA4b6EAOG+hQDhvoYA4b6HAOG+iADhvokA4b6KAOG+iwDhvowA4b6NAOG+jgDhvo8A4b6QAOG+kQDhvpIA4b6TAOG+lADhvpUA4b6WAOG+lwDhvpgA4b6ZAOG+mgDhvpsA4b6cAOG+nQDhvp4A4b6fAOG+oADhvqEA4b6iAOG+owDhvqQA4b6lAOG+pgDhvqcA4b6oAOG+qQDhvqoA4b6rAOG+rADhvq0A4b6uAOG+rwDhvrAA4b6xAOG+sgDhvrMA4b60AOG+tgDhvrcA4b64AOG+uQDhvroA4b68AOG/ggDhv4MA4b+EAOG/hgDhv4cA4b+IAOG/igDhv4wA4b+QAOG/kQDhv5IA4b+WAOG/lwDhv5gA4b+ZAOG/mgDhv6AA4b+hAOG/ogDhv6QA4b+lAOG/pgDhv6cA4b+oAOG/qQDhv6oA4b+sAOG/sgDhv7MA4b+0AOG/tgDhv7cA4b+4AOG/ugDhv7wA4oCQAOKAkwDigJQA4oCy4oCyAOKAsuKAsuKAsgDigLLigLLigLLigLIA4oC14oC1AOKAteKAteKAtQDigqkA4oaQAOKGkQDihpIA4oaTAOKGmgDihpsA4oauAOKHjQDih44A4oePAOKIggDiiIQA4oiHAOKIiQDiiIwA4oiRAOKIkgDiiKQA4oimAOKIq+KIqwDiiKviiKviiKsA4oir4oir4oir4oirAOKIruKIrgDiiK7iiK7iiK4A4omBAOKJhADiiYcA4omJAOKJoADiiaIA4omtAOKJrgDiia8A4omwAOKJsQDiibQA4om1AOKJuADiibkA4oqAAOKKgQDiioQA4oqFAOKKiADiiokA4oqsAOKKrQDiiq4A4oqvAOKLoADii6EA4ouiAOKLowDii6oA4ourAOKLrADii60A4pSCAOKWoADil4sA4qaFAOKmhgDiq53MuADitaEA44CBAOOAggDjgIgA44CJAOOAigDjgIsA44CMAOOAjQDjgI4A44CPAOOAkADjgJEA44CSAOOAlADjgJRT44CVAOOAlOS4ieOAlQDjgJTkuozjgJUA44CU5Yud44CVAOOAlOWuieOAlQDjgJTmiZPjgJUA44CU5pWX44CVAOOAlOacrOOAlQDjgJTngrnjgJUA44CU55uX44CVAOOAlQDjgJYA44CXAOOBjADjgY4A44GQAOOBkgDjgZQA44GWAOOBmADjgZoA44GcAOOBngDjgaAA44GiAOOBpQDjgacA44GpAOOBsADjgbEA44GzAOOBtADjgbYA44G3AOOBuQDjgboA44G744GLAOOBvADjgb0A44KI44KKAOOClADjgpkA44KaAOOCngDjgqEA44KiAOOCouODkeODvOODiADjgqLjg6vjg5XjgqEA44Ki44Oz44Oa44KiAOOCouODvOODqwDjgqMA44KkAOOCpOODi+ODs+OCsADjgqTjg7Pjg4EA44KlAOOCpgDjgqbjgqnjg7MA44KnAOOCqADjgqjjgrnjgq/jg7zjg4kA44Ko44O844Kr44O8AOOCqQDjgqoA44Kq44Oz44K5AOOCquODvOODoADjgqsA44Kr44Kk44OqAOOCq+ODqeODg+ODiADjgqvjg63jg6rjg7wA44KsAOOCrOODreODswDjgqzjg7Pjg54A44KtAOOCreODpeODquODvADjgq3jg60A44Kt44Ot44Kw44Op44OgAOOCreODreODoeODvOODiOODqwDjgq3jg63jg6/jg4Pjg4gA44KuAOOCruOCrADjgq7jg4vjg7wA44Ku44Or44OA44O8AOOCrwDjgq/jg6vjgrzjgqTjg60A44Kv44Ot44O844ONAOOCsADjgrDjg6njg6AA44Kw44Op44Og44OI44OzAOOCsQDjgrHjg7zjgrkA44KyAOOCswDjgrPjgrMA44Kz44OIAOOCs+ODq+ODigDjgrPjg7zjg50A44K0AOOCtQDjgrXjgqTjgq/jg6sA44K144Oz44OB44O844OgAOOCtgDjgrcA44K344Oq44Oz44KwAOOCuADjgrkA44K6AOOCuwDjgrvjg7Pjg4EA44K744Oz44OIAOOCvADjgr0A44K+AOOCvwDjg4AA44OA44O844K5AOODgQDjg4IA44ODAOODhADjg4UA44OGAOODhwDjg4fjgrcA44OIAOODiOODswDjg4kA44OJ44OrAOODigDjg4rjg44A44OLAOODjADjg40A44OOAOODjuODg+ODiADjg48A44OP44Kk44OEAOODkADjg5Djg7zjg6zjg6sA44ORAOODkeODvOOCu+ODs+ODiADjg5Hjg7zjg4QA44OSAOODkwDjg5Pjg6sA44OUAOODlOOCouOCueODiOODqwDjg5Tjgq/jg6sA44OU44KzAOODlQDjg5XjgqHjg6njg4Pjg4kA44OV44Kj44O844OIAOODleODqeODswDjg5YA44OW44OD44K344Kn44OrAOODlwDjg5gA44OY44Kv44K/44O844OrAOODmOODq+ODhADjg5kA44OZ44O844K/AOODmgDjg5rjgr0A44Oa44OL44OSAOODmuODs+OCuQDjg5rjg7zjgrgA44ObAOODm+ODswDjg5vjg7zjg6sA44Ob44O844OzAOODnADjg5zjg6vjg4gA44OdAOODneOCpOODs+ODiADjg53jg7Pjg4kA44OeAOODnuOCpOOCr+ODrQDjg57jgqTjg6sA44Oe44OD44OPAOODnuODq+OCrwDjg57jg7Pjgrfjg6fjg7MA44OfAOODn+OCr+ODreODswDjg5/jg6oA44Of44Oq44OQ44O844OrAOODoADjg6EA44Oh44KsAOODoeOCrOODiOODswDjg6Hjg7zjg4jjg6sA44OiAOODowDjg6QA44Ok44O844OJAOODpOODvOODqwDjg6UA44OmAOODpuOCouODswDjg6cA44OoAOODqQDjg6oA44Oq44OD44OI44OrAOODquODqQDjg6sA44Or44OU44O8AOODq+ODvOODluODqwDjg6wA44Os44OgAOODrOODs+ODiOOCsuODswDjg60A44OvAOODr+ODg+ODiADjg7AA44OxAOODsgDjg7MA44O0AOODtwDjg7gA44O5AOODugDjg7sA44O8AOODvgDjkp4A45K5AOOSuwDjk58A45SVAOObrgDjm7wA456BAOOgrwDjoaIA46G8AOOjhwDjo6MA46ScAOOkugDjqK4A46msAOOrpADjrIgA46yZAOOtiQDjrp0A47CYAOOxjgDjtLMA47aWAOO6rADjurgA47ybAOO/vADkgIgA5ICYAOSAuQDkgYYA5IKWAOSDowDkhK8A5IiCAOSIpwDkiqAA5IyBAOSMtADkjZkA5I+VAOSPmQDkkIsA5JGrAOSUqwDklZ0A5JWhAOSVqwDkl5cA5Je5AOSYtQDkmr4A5JuHAOSmlQDkp6YA5KmuAOSptgDkqrIA5KyzAOSvjgDks44A5LOtAOSzuADktZYA5LiAAOS4gQDkuIMA5LiJAOS4igDkuIsA5LiNAOS4mQDkuKYA5Lio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jQDmr5QA5q+bAOawjwDmsJQA5rC0AOaxjgDmsacA5rKIAOayvwDms4wA5rONAOazpQDms6gA5rSWAOa0mwDmtJ4A5rS0AOa0vgDmtYEA5rWpAOa1qgDmtbcA5rW4AOa2hQDmt4sA5reaAOa3qgDmt7kA5riaAOa4rwDmua4A5rqAAOa6nADmuroA5ruHAOa7iwDmu5EA5rubAOa8jwDmvJQA5ryiAOa8owDmva4A5r+GAOa/qwDmv74A54CbAOeAngDngLkA54GKAOeBqwDngbAA54G3AOeBvQDngpkA54KtAOeDiADng5kA54ShAOeFhQDnhYkA54WuAOeGnADnh44A54eQAOeIkADniJsA54ioAOeIqgDniKsA54i1AOeItgDniLsA54i/AOeJhwDniZAA54mZAOeJmwDniaIA54m5AOeKgADnipUA54qsAOeKrwDni4AA54u8AOeMqgDnjbUA5426AOeOhADnjocA546JAOeOiwDnjqUA546yAOePngDnkIYA55CJAOeQogDnkYcA55GcAOeRqQDnkbEA55KFAOeSiQDnkpgA55OKAOeTnADnk6YA55SGAOeUmADnlJ8A55SkAOeUqADnlLAA55SyAOeUswDnlLcA55S7AOeUvgDnlZkA55WlAOeVsADnlosA55aSAOeXogDnmJAA55idAOeYnwDnmYIA55mpAOeZtgDnmb0A55quAOeavwDnm4oA55ubAOebowDnm6cA55uuAOebtADnnIEA55yeAOecnwDnnYAA552KAOeeiwDnnqcA55+bAOefogDnn7MA56GOAOehqwDnoowA56KRAOejigDno4wA56O7AOekqgDnpLoA56S8AOekvgDnpYgA56WJAOelkADnpZYA56WdAOelngDnpaUA56W/AOemgQDnpo0A56aOAOemjwDnpq4A56a4AOemvgDnp4oA56eYAOenqwDnqJwA56mAAOepigDnqY8A56m0AOepugDnqoEA56qxAOeriwDnq64A56u5AOesoADnro8A56+AAOevhgDnr4kA57C+AOexoADnsbMA57G7AOeykgDnsr4A57OSAOezlgDns6MA57OnAOezqADns7gA57SAAOe0kADntKIA57SvAOe1ggDntZsA57WjAOe2oADntr4A57eHAOe3tADnuIIA57iJAOe4twDnuYEA57mFAOe8tgDnvL4A572RAOe9sgDnvbkA5726AOe+hQDnvooA576VAOe+mgDnvr0A57+6AOiAgQDogIUA6ICMAOiAkgDogLMA6IGGAOiBoADoga8A6IGwAOiBvgDogb8A6IKJAOiCiwDogq0A6IKyAOiEgwDohL4A6IeYAOiHowDoh6gA6IeqAOiHrQDoh7MA6Ie8AOiIgQDoiIQA6IiMAOiImADoiJsA6IifAOiJrgDoia8A6ImyAOiJuADoibkA6IqLAOiKkQDoip0A6IqxAOiKswDoir0A6IulAOiLpgDojJ0A6IyjAOiMtgDojZIA6I2TAOiNowDojq0A6I69AOiPiQDoj4oA6I+MAOiPnADoj6cA6I+vAOiPsQDokL0A6JGJAOiRlwDok64A6JOxAOiTswDok7wA6JSWAOiVpADol40A6Je6AOiYhgDomJIA6JitAOiYvwDomY0A6JmQAOiZnADomacA6JmpAOiZqwDomogA6JqpAOibogDonI4A6JyoAOidqwDonbkA6J6GAOieugDon6EA6KCBAOignwDooYAA6KGMAOihoADooaMA6KOCAOijjwDoo5cA6KOeAOijoQDoo7gA6KO6AOikkADopYEA6KWkAOilvgDopoYA6KaLAOimlgDop5IA6KejAOiogADoqqAA6KqqAOiqvwDoq4sA6KuSAOirlgDoq60A6Ku4AOirvgDorIEA6Ky5AOitmADoroAA6K6KAOiwtwDosYYA6LGIAOixlQDosbgA6LKdAOiyoQDosqkA6LKrAOizgQDos4IA6LOHAOiziADos5MA6LSIAOi0mwDotaQA6LWwAOi1twDotrMA6La8AOi3iwDot68A6LewAOi6qwDou4oA6LuUAOi8pgDovKoA6Ly4AOi8uwDovaIA6L6bAOi+ngDovrAA6L61AOi+tgDpgKMA6YC4AOmBigDpgakA6YGyAOmBvADpgo8A6YKRAOmClADpg44A6YOeAOmDsQDpg70A6YSRAOmEmwDphYkA6YWqAOmGmQDphrQA6YeGAOmHjADph48A6YeRAOmItADpiLgA6Ym2AOmJvADpi5cA6YuYAOmMhADpjYoA6Y+5AOmQlQDplbcA6ZaAAOmWiwDplq0A6Za3AOmYnADpmK4A6ZmLAOmZjQDpmbUA6Zm4AOmZvADpmoYA6ZqjAOmatgDpmrcA6Zq4AOmauQDpm4MA6ZuiAOmbowDpm6gA6Zu2AOmbtwDpnKMA6ZyyAOmdiADpnZEA6Z2WAOmdngDpnaIA6Z2pAOmfiwDpn5sA6Z+gAOmfrQDpn7MA6Z+/AOmggQDpoIUA6aCLAOmgmADpoKkA6aC7AOmhngDpoqgA6aObAOmjnwDpo6IA6aOvAOmjvADppKgA6aSpAOmmlgDpppkA6aanAOmmrADpp4IA6aexAOmnvgDpqaoA6aqoAOmrmADpq58A6aySAOmspQDprK8A6ayyAOmsvADprZoA6a2vAOmxgADpsZcA6bOlAOmzvQDptacA6ba0AOm3ugDpuJ4A6bm1AOm5vwDpupcA6bqfAOm6pQDpursA6buDAOm7jQDpu44A6buRAOm7uQDpu70A6bu+AOm8hQDpvI4A6byPAOm8kwDpvJYA6bygAOm8uwDpvYMA6b2KAOm9kgDpvo0A6b6OAOm+nADpvp8A6b6gAOqcpwDqna8A6qy3AOqtkgDqsIAA6rCBAOqwggDqsIMA6rCEAOqwhQDqsIYA6rCHAOqwiADqsIkA6rCKAOqwiwDqsIwA6rCNAOqwjgDqsI8A6rCQAOqwkQDqsJIA6rCTAOqwlADqsJUA6rCWAOqwlwDqsJgA6rCZAOqwmgDqsJsA6rCcAOqwnQDqsJ4A6rCfAOqwoADqsKEA6rCiAOqwowDqsKQA6rClAOqwpgDqsKcA6rCoAOqwqQDqsKoA6rCrAOqwrADqsK0A6rCuAOqwrwDqsLAA6rCxAOqwsgDqsLMA6rC0AOqwtQDqsLYA6rC3AOqwuADqsLkA6rC6AOqwuwDqsLwA6rC9AOqwvgDqsL8A6rGAAOqxgQDqsYIA6rGDAOqxhADqsYUA6rGGAOqxhwDqsYgA6rGJAOqxigDqsYsA6rGMAOqxjQDqsY4A6rGPAOqxkADqsZEA6rGSAOqxkwDqsZQA6rGVAOqxlgDqsZcA6rGYAOqxmQDqsZoA6rGbAOqxnADqsZ0A6rGeAOqxnwDqsaAA6rGhAOqxogDqsaMA6rGkAOqxpQDqsaYA6rGnAOqxqADqsakA6rGqAOqxqwDqsawA6rGtAOqxrgDqsa8A6rGwAOqxsQDqsbIA6rGzAOqxtADqsbUA6rG2AOqxtwDqsbgA6rG5AOqxugDqsbsA6rG8AOqxvQDqsb4A6rG/AOqygADqsoEA6rKCAOqygwDqsoQA6rKFAOqyhgDqsocA6rKIAOqyiQDqsooA6rKLAOqyjADqso0A6rKOAOqyjwDqspAA6rKRAOqykgDqspMA6rKUAOqylQDqspYA6rKXAOqymADqspkA6rKaAOqymwDqspwA6rKdAOqyngDqsp8A6rKgAOqyoQDqsqIA6rKjAOqypADqsqUA6rKmAOqypwDqsqgA6rKpAOqyqgDqsqsA6rKsAOqyrQDqsq4A6rKvAOqysADqsrEA6rKyAOqyswDqsrQA6rK1AOqytgDqsrcA6rK4AOqyuQDqsroA6rK7AOqyvADqsr0A6rK+AOqyvwDqs4AA6rOBAOqzggDqs4MA6rOEAOqzhQDqs4YA6rOHAOqziADqs4kA6rOKAOqziwDqs4wA6rONAOqzjgDqs48A6rOQAOqzkQDqs5IA6rOTAOqzlADqs5UA6rOWAOqzlwDqs5gA6rOZAOqzmgDqs5sA6rOcAOqznQDqs54A6rOfAOqzoADqs6EA6rOiAOqzowDqs6QA6rOlAOqzpgDqs6cA6rOoAOqzqQDqs6oA6rOrAOqzrADqs60A6rOuAOqzrwDqs7AA6rOxAOqzsgDqs7MA6rO0AOqztQDqs7YA6rO3AOqzuADqs7kA6rO6AOqzuwDqs7wA6rO9AOqzvgDqs78A6rSAAOq0gQDqtIIA6rSDAOq0hADqtIUA6rSGAOq0hwDqtIgA6rSJAOq0igDqtIsA6rSMAOq0jQDqtI4A6rSPAOq0kADqtJEA6rSSAOq0kwDqtJQA6rSVAOq0lgDqtJcA6rSYAOq0mQDqtJoA6rSbAOq0nADqtJ0A6rSeAOq0nwDqtKAA6rShAOq0ogDqtKMA6rSkAOq0pQDqtKYA6rSnAOq0qADqtKkA6rSqAOq0qwDqtKwA6rStAOq0rgDqtK8A6rSwAOq0sQDqtLIA6rSzAOq0tADqtLUA6rS2AOq0twDqtLgA6rS5AOq0ugDqtLsA6rS8AOq0vQDqtL4A6rS/AOq1gADqtYEA6rWCAOq1gwDqtYQA6rWFAOq1hgDqtYcA6rWIAOq1iQDqtYoA6rWLAOq1jADqtY0A6rWOAOq1jwDqtZAA6rWRAOq1kgDqtZMA6rWUAOq1lQDqtZYA6rWXAOq1mADqtZkA6rWaAOq1mwDqtZwA6rWdAOq1ngDqtZ8A6rWgAOq1oQDqtaIA6rWjAOq1pADqtaUA6rWmAOq1pwDqtagA6rWpAOq1qgDqtasA6rWsAOq1rQDqta4A6rWvAOq1sADqtbEA6rWyAOq1swDqtbQA6rW1AOq1tgDqtbcA6rW4AOq1uQDqtboA6rW7AOq1vADqtb0A6rW+AOq1vwDqtoAA6raBAOq2ggDqtoMA6raEAOq2hQDqtoYA6raHAOq2iADqtokA6raKAOq2iwDqtowA6raNAOq2jgDqto8A6raQAOq2kQDqtpIA6raTAOq2lADqtpUA6raWAOq2lwDqtpgA6raZAOq2mgDqtpsA6racAOq2nQDqtp4A6rafAOq2oADqtqEA6raiAOq2owDqtqQA6ralAOq2pgDqtqcA6raoAOq2qQDqtqoA6rarAOq2rADqtq0A6rauAOq2rwDqtrAA6raxAOq2sgDqtrMA6ra0AOq2tQDqtrYA6ra3AOq2uADqtrkA6ra6AOq2uwDqtrwA6ra9AOq2vgDqtr8A6reAAOq3gQDqt4IA6reDAOq3hADqt4UA6reGAOq3hwDqt4gA6reJAOq3igDqt4sA6reMAOq3jQDqt44A6rePAOq3kADqt5EA6reSAOq3kwDqt5QA6reVAOq3lgDqt5cA6reYAOq3mQDqt5oA6rebAOq3nADqt50A6reeAOq3nwDqt6AA6rehAOq3ogDqt6MA6rekAOq3pQDqt6YA6renAOq3qADqt6kA6reqAOq3qwDqt6wA6retAOq3rgDqt68A6rewAOq3sQDqt7IA6rezAOq3tADqt7UA6re2AOq3twDqt7gA6re5AOq3ugDqt7sA6re8AOq3vQDqt74A6re/AOq4gADquIEA6riCAOq4gwDquIQA6riFAOq4hgDquIcA6riIAOq4iQDquIoA6riLAOq4jADquI0A6riOAOq4jwDquJAA6riRAOq4kgDquJMA6riUAOq4lQDquJYA6riXAOq4mADquJkA6riaAOq4mwDquJwA6ridAOq4ngDquJ8A6rigAOq4oQDquKIA6rijAOq4pADquKUA6rimAOq4pwDquKgA6ripAOq4qgDquKsA6risAOq4rQDquK4A6rivAOq4sADquLEA6riyAOq4swDquLQA6ri1AOq4tgDquLcA6ri4AOq4uQDquLoA6ri7AOq4vADquL0A6ri+AOq4vwDquYAA6rmBAOq5ggDquYMA6rmEAOq5hQDquYYA6rmHAOq5iADquYkA6rmKAOq5iwDquYwA6rmNAOq5jgDquY8A6rmQAOq5kQDquZIA6rmTAOq5lADquZUA6rmWAOq5lwDquZgA6rmZAOq5mgDquZsA6rmcAOq5nQDquZ4A6rmfAOq5oADquaEA6rmiAOq5owDquaQA6rmlAOq5pgDquacA6rmoAOq5qQDquaoA6rmrAOq5rADqua0A6rmuAOq5rwDqubAA6rmxAOq5sgDqubMA6rm0AOq5tQDqubYA6rm3AOq5uADqubkA6rm6AOq5uwDqubwA6rm9AOq5vgDqub8A6rqAAOq6gQDquoIA6rqDAOq6hADquoUA6rqGAOq6hwDquogA6rqJAOq6igDquosA6rqMAOq6jQDquo4A6rqPAOq6kADqupEA6rqSAOq6kwDqupQA6rqVAOq6lgDqupcA6rqYAOq6mQDqupoA6rqbAOq6nADqup0A6rqeAOq6nwDquqAA6rqhAOq6ogDquqMA6rqkAOq6pQDquqYA6rqnAOq6qADquqkA6rqqAOq6qwDquqwA6rqtAOq6rgDquq8A6rqwAOq6sQDqurIA6rqzAOq6tADqurUA6rq2AOq6twDqurgA6rq5AOq6ugDqursA6rq8AOq6vQDqur4A6rq/AOq7gADqu4EA6ruCAOq7gwDqu4QA6ruFAOq7hgDqu4cA6ruIAOq7iQDqu4oA6ruLAOq7jADqu40A6ruOAOq7jwDqu5AA6ruRAOq7kgDqu5MA6ruUAOq7lQDqu5YA6ruXAOq7mADqu5kA6ruaAOq7mwDqu5wA6rudAOq7ngDqu58A6rugAOq7oQDqu6IA6rujAOq7pADqu6UA6rumAOq7pwDqu6gA6rupAOq7qgDqu6sA6rusAOq7rQDqu64A6ruvAOq7sADqu7EA6ruyAOq7swDqu7QA6ru1AOq7tgDqu7cA6ru4AOq7uQDqu7oA6ru7AOq7vADqu70A6ru+AOq7vwDqvIAA6ryBAOq8ggDqvIMA6ryEAOq8hQDqvIYA6ryHAOq8iADqvIkA6ryKAOq8iwDqvIwA6ryNAOq8jgDqvI8A6ryQAOq8kQDqvJIA6ryTAOq8lADqvJUA6ryWAOq8lwDqvJgA6ryZAOq8mgDqvJsA6rycAOq8nQDqvJ4A6ryfAOq8oADqvKEA6ryiAOq8owDqvKQA6rylAOq8pgDqvKcA6ryoAOq8qQDqvKoA6ryrAOq8rADqvK0A6ryuAOq8rwDqvLAA6ryxAOq8sgDqvLMA6ry0AOq8tQDqvLYA6ry3AOq8uADqvLkA6ry6AOq8uwDqvLwA6ry9AOq8vgDqvL8A6r2AAOq9gQDqvYIA6r2DAOq9hADqvYUA6r2GAOq9hwDqvYgA6r2JAOq9igDqvYsA6r2MAOq9jQDqvY4A6r2PAOq9kADqvZEA6r2SAOq9kwDqvZQA6r2VAOq9lgDqvZcA6r2YAOq9mQDqvZoA6r2bAOq9nADqvZ0A6r2eAOq9nwDqvaAA6r2hAOq9ogDqvaMA6r2kAOq9pQDqvaYA6r2nAOq9qADqvakA6r2qAOq9qwDqvawA6r2tAOq9rgDqva8A6r2wAOq9sQDqvbIA6r2zAOq9tADqvbUA6r22AOq9twDqvbgA6r25AOq9ugDqvbsA6r28AOq9vQDqvb4A6r2/AOq+gADqvoEA6r6CAOq+gwDqvoQA6r6FAOq+hgDqvocA6r6IAOq+iQDqvooA6r6LAOq+jADqvo0A6r6OAOq+jwDqvpAA6r6RAOq+kgDqvpMA6r6UAOq+lQDqvpYA6r6XAOq+mADqvpkA6r6aAOq+mwDqvpwA6r6dAOq+ngDqvp8A6r6gAOq+oQDqvqIA6r6jAOq+pADqvqUA6r6mAOq+pwDqvqgA6r6pAOq+qgDqvqsA6r6sAOq+rQDqvq4A6r6vAOq+sADqvrEA6r6yAOq+swDqvrQA6r61AOq+tgDqvrcA6r64AOq+uQDqvroA6r67AOq+vADqvr0A6r6+AOq+vwDqv4AA6r+BAOq/ggDqv4MA6r+EAOq/hQDqv4YA6r+HAOq/iADqv4kA6r+KAOq/iwDqv4wA6r+NAOq/jgDqv48A6r+QAOq/kQDqv5IA6r+TAOq/lADqv5UA6r+WAOq/lwDqv5gA6r+ZAOq/mgDqv5sA6r+cAOq/nQDqv54A6r+fAOq/oADqv6EA6r+iAOq/owDqv6QA6r+lAOq/pgDqv6cA6r+oAOq/qQDqv6oA6r+rAOq/rADqv60A6r+uAOq/rwDqv7AA6r+xAOq/sgDqv7MA6r+0AOq/tQDqv7YA6r+3AOq/uADqv7kA6r+6AOq/uwDqv7wA6r+9AOq/vgDqv78A64CAAOuAgQDrgIIA64CDAOuAhADrgIUA64CGAOuAhwDrgIgA64CJAOuAigDrgIsA64CMAOuAjQDrgI4A64CPAOuAkADrgJEA64CSAOuAkwDrgJQA64CVAOuAlgDrgJcA64CYAOuAmQDrgJoA64CbAOuAnADrgJ0A64CeAOuAnwDrgKAA64ChAOuAogDrgKMA64CkAOuApQDrgKYA64CnAOuAqADrgKkA64CqAOuAqwDrgKwA64CtAOuArgDrgK8A64CwAOuAsQDrgLIA64CzAOuAtADrgLUA64C2AOuAtwDrgLgA64C5AOuAugDrgLsA64C8AOuAvQDrgL4A64C/AOuBgADrgYEA64GCAOuBgwDrgYQA64GFAOuBhgDrgYcA64GIAOuBiQDrgYoA64GLAOuBjADrgY0A64GOAOuBjwDrgZAA64GRAOuBkgDrgZMA64GUAOuBlQDrgZYA64GXAOuBmADrgZkA64GaAOuBmwDrgZwA64GdAOuBngDrgZ8A64GgAOuBoQDrgaIA64GjAOuBpADrgaUA64GmAOuBpwDrgagA64GpAOuBqgDrgasA64GsAOuBrQDrga4A64GvAOuBsADrgbEA64GyAOuBswDrgbQA64G1AOuBtgDrgbcA64G4AOuBuQDrgboA64G7AOuBvADrgb0A64G+AOuBvwDrgoAA64KBAOuCggDrgoMA64KEAOuChQDrgoYA64KHAOuCiADrgokA64KKAOuCiwDrgowA64KNAOuCjgDrgo8A64KQAOuCkQDrgpIA64KTAOuClADrgpUA64KWAOuClwDrgpgA64KZAOuCmgDrgpsA64KcAOuCnQDrgp4A64KfAOuCoADrgqEA64KiAOuCowDrgqQA64KlAOuCpgDrgqcA64KoAOuCqQDrgqoA64KrAOuCrADrgq0A64KuAOuCrwDrgrAA64KxAOuCsgDrgrMA64K0AOuCtQDrgrYA64K3AOuCuADrgrkA64K6AOuCuwDrgrwA64K9AOuCvgDrgr8A64OAAOuDgQDrg4IA64ODAOuDhADrg4UA64OGAOuDhwDrg4gA64OJAOuDigDrg4sA64OMAOuDjQDrg44A64OPAOuDkADrg5EA64OSAOuDkwDrg5QA64OVAOuDlgDrg5cA64OYAOuDmQDrg5oA64ObAOuDnADrg50A64OeAOuDnwDrg6AA64OhAOuDogDrg6MA64OkAOuDpQDrg6YA64OnAOuDqADrg6kA64OqAOuDqwDrg6wA64OtAOuDrgDrg68A64OwAOuDsQDrg7IA64OzAOuDtADrg7UA64O2AOuDtwDrg7gA64O5AOuDugDrg7sA64O8AOuDvQDrg74A64O/AOuEgADrhIEA64SCAOuEgwDrhIQA64SFAOuEhgDrhIcA64SIAOuEiQDrhIoA64SLAOuEjADrhI0A64SOAOuEjwDrhJAA64SRAOuEkgDrhJMA64SUAOuElQDrhJYA64SXAOuEmADrhJkA64SaAOuEmwDrhJwA64SdAOuEngDrhJ8A64SgAOuEoQDrhKIA64SjAOuEpADrhKUA64SmAOuEpwDrhKgA64SpAOuEqgDrhKsA64SsAOuErQDrhK4A64SvAOuEsADrhLEA64SyAOuEswDrhLQA64S1AOuEtgDrhLcA64S4AOuEuQDrhLoA64S7AOuEvADrhL0A64S+AOuEvwDrhYAA64WBAOuFggDrhYMA64WEAOuFhQDrhYYA64WHAOuFiADrhYkA64WKAOuFiwDrhYwA64WNAOuFjgDrhY8A64WQAOuFkQDrhZIA64WTAOuFlADrhZUA64WWAOuFlwDrhZgA64WZAOuFmgDrhZsA64WcAOuFnQDrhZ4A64WfAOuFoADrhaEA64WiAOuFowDrhaQA64WlAOuFpgDrhacA64WoAOuFqQDrhaoA64WrAOuFrADrha0A64WuAOuFrwDrhbAA64WxAOuFsgDrhbMA64W0AOuFtQDrhbYA64W3AOuFuADrhbkA64W6AOuFuwDrhbwA64W9AOuFvgDrhb8A64aAAOuGgQDrhoIA64aDAOuGhADrhoUA64aGAOuGhwDrhogA64aJAOuGigDrhosA64aMAOuGjQDrho4A64aPAOuGkADrhpEA64aSAOuGkwDrhpQA64aVAOuGlgDrhpcA64aYAOuGmQDrhpoA64abAOuGnADrhp0A64aeAOuGnwDrhqAA64ahAOuGogDrhqMA64akAOuGpQDrhqYA64anAOuGqADrhqkA64aqAOuGqwDrhqwA64atAOuGrgDrhq8A64awAOuGsQDrhrIA64azAOuGtADrhrUA64a2AOuGtwDrhrgA64a5AOuGugDrhrsA64a8AOuGvQDrhr4A64a/AOuHgADrh4EA64eCAOuHgwDrh4QA64eFAOuHhgDrh4cA64eIAOuHiQDrh4oA64eLAOuHjADrh40A64eOAOuHjwDrh5AA64eRAOuHkgDrh5MA64eUAOuHlQDrh5YA64eXAOuHmADrh5kA64eaAOuHmwDrh5wA64edAOuHngDrh58A64egAOuHoQDrh6IA64ejAOuHpADrh6UA64emAOuHpwDrh6gA64epAOuHqgDrh6sA64esAOuHrQDrh64A64evAOuHsADrh7EA64eyAOuHswDrh7QA64e1AOuHtgDrh7cA64e4AOuHuQDrh7oA64e7AOuHvADrh70A64e+AOuHvwDriIAA64iBAOuIggDriIMA64iEAOuIhQDriIYA64iHAOuIiADriIkA64iKAOuIiwDriIwA64iNAOuIjgDriI8A64iQAOuIkQDriJIA64iTAOuIlADriJUA64iWAOuIlwDriJgA64iZAOuImgDriJsA64icAOuInQDriJ4A64ifAOuIoADriKEA64iiAOuIowDriKQA64ilAOuIpgDriKcA64ioAOuIqQDriKoA64irAOuIrADriK0A64iuAOuIrwDriLAA64ixAOuIsgDriLMA64i0AOuItQDriLYA64i3AOuIuADriLkA64i6AOuIuwDriLwA64i9AOuIvgDriL8A64mAAOuJgQDriYIA64mDAOuJhADriYUA64mGAOuJhwDriYgA64mJAOuJigDriYsA64mMAOuJjQDriY4A64mPAOuJkADriZEA64mSAOuJkwDriZQA64mVAOuJlgDriZcA64mYAOuJmQDriZoA64mbAOuJnADriZ0A64meAOuJnwDriaAA64mhAOuJogDriaMA64mkAOuJpQDriaYA64mnAOuJqADriakA64mqAOuJqwDriawA64mtAOuJrgDria8A64mwAOuJsQDribIA64mzAOuJtADribUA64m2AOuJtwDribgA64m5AOuJugDribsA64m8AOuJvQDrib4A64m/AOuKgADrioEA64qCAOuKgwDrioQA64qFAOuKhgDriocA64qIAOuKiQDriooA64qLAOuKjADrio0A64qOAOuKjwDripAA64qRAOuKkgDripMA64qUAOuKlQDripYA64qXAOuKmADripkA64qaAOuKmwDripwA64qdAOuKngDrip8A64qgAOuKoQDriqIA64qjAOuKpADriqUA64qmAOuKpwDriqgA64qpAOuKqgDriqsA64qsAOuKrQDriq4A64qvAOuKsADrirEA64qyAOuKswDrirQA64q1AOuKtgDrircA64q4AOuKuQDriroA64q7AOuKvADrir0A64q+AOuKvwDri4AA64uBAOuLggDri4MA64uEAOuLhQDri4YA64uHAOuLiADri4kA64uKAOuLiwDri4wA64uNAOuLjgDri48A64uQAOuLkQDri5IA64uTAOuLlADri5UA64uWAOuLlwDri5gA64uZAOuLmgDri5sA64ucAOuLnQDri54A64ufAOuLoADri6EA64uiAOuLowDri6QA64ulAOuLpgDri6cA64uoAOuLqQDri6oA64urAOuLrADri60A64uuAOuLrwDri7AA64uxAOuLsgDri7MA64u0AOuLtQDri7YA64u3AOuLuADri7kA64u6AOuLuwDri7wA64u9AOuLvgDri78A64yAAOuMgQDrjIIA64yDAOuMhADrjIUA64yGAOuMhwDrjIgA64yJAOuMigDrjIsA64yMAOuMjQDrjI4A64yPAOuMkADrjJEA64ySAOuMkwDrjJQA64yVAOuMlgDrjJcA64yYAOuMmQDrjJoA64ybAOuMnADrjJ0A64yeAOuMnwDrjKAA64yhAOuMogDrjKMA64ykAOuMpQDrjKYA64ynAOuMqADrjKkA64yqAOuMqwDrjKwA64ytAOuMrgDrjK8A64ywAOuMsQDrjLIA64yzAOuMtADrjLUA64y2AOuMtwDrjLgA64y5AOuMugDrjLsA64y8AOuMvQDrjL4A64y/AOuNgADrjYEA642CAOuNgwDrjYQA642FAOuNhgDrjYcA642IAOuNiQDrjYoA642LAOuNjADrjY0A642OAOuNjwDrjZAA642RAOuNkgDrjZMA642UAOuNlQDrjZYA642XAOuNmADrjZkA642aAOuNmwDrjZwA642dAOuNngDrjZ8A642gAOuNoQDrjaIA642jAOuNpADrjaUA642mAOuNpwDrjagA642pAOuNqgDrjasA642sAOuNrQDrja4A642vAOuNsADrjbEA642yAOuNswDrjbQA6421AOuNtgDrjbcA6424AOuNuQDrjboA6427AOuNvADrjb0A642+AOuNvwDrjoAA646BAOuOggDrjoMA646EAOuOhQDrjoYA646HAOuOiADrjokA646KAOuOiwDrjowA646NAOuOjgDrjo8A646QAOuOkQDrjpIA646TAOuOlADrjpUA646WAOuOlwDrjpgA646ZAOuOmgDrjpsA646cAOuOnQDrjp4A646fAOuOoADrjqEA646iAOuOowDrjqQA646lAOuOpgDrjqcA646oAOuOqQDrjqoA646rAOuOrADrjq0A646uAOuOrwDrjrAA646xAOuOsgDrjrMA6460AOuOtQDrjrYA6463AOuOuADrjrkA6466AOuOuwDrjrwA6469AOuOvgDrjr8A64+AAOuPgQDrj4IA64+DAOuPhADrj4UA64+GAOuPhwDrj4gA64+JAOuPigDrj4sA64+MAOuPjQDrj44A64+PAOuPkADrj5EA64+SAOuPkwDrj5QA64+VAOuPlgDrj5cA64+YAOuPmQDrj5oA64+bAOuPnADrj50A64+eAOuPnwDrj6AA64+hAOuPogDrj6MA64+kAOuPpQDrj6YA64+nAOuPqADrj6kA64+qAOuPqwDrj6wA64+tAOuPrgDrj68A64+wAOuPsQDrj7IA64+zAOuPtADrj7UA64+2AOuPtwDrj7gA64+5AOuPugDrj7sA64+8AOuPvQDrj74A64+/AOuQgADrkIEA65CCAOuQgwDrkIQA65CFAOuQhgDrkIcA65CIAOuQiQDrkIoA65CLAOuQjADrkI0A65COAOuQjwDrkJAA65CRAOuQkgDrkJMA65CUAOuQlQDrkJYA65CXAOuQmADrkJkA65CaAOuQmwDrkJwA65CdAOuQngDrkJ8A65CgAOuQoQDrkKIA65CjAOuQpADrkKUA65CmAOuQpwDrkKgA65CpAOuQqgDrkKsA65CsAOuQrQDrkK4A65CvAOuQsADrkLEA65CyAOuQswDrkLQA65C1AOuQtgDrkLcA65C4AOuQuQDrkLoA65C7AOuQvADrkL0A65C+AOuQvwDrkYAA65GBAOuRggDrkYMA65GEAOuRhQDrkYYA65GHAOuRiADrkYkA65GKAOuRiwDrkYwA65GNAOuRjgDrkY8A65GQAOuRkQDrkZIA65GTAOuRlADrkZUA65GWAOuRlwDrkZgA65GZAOuRmgDrkZsA65GcAOuRnQDrkZ4A65GfAOuRoADrkaEA65GiAOuRowDrkaQA65GlAOuRpgDrkacA65GoAOuRqQDrkaoA65GrAOuRrADrka0A65GuAOuRrwDrkbAA65GxAOuRsgDrkbMA65G0AOuRtQDrkbYA65G3AOuRuADrkbkA65G6AOuRuwDrkbwA65G9AOuRvgDrkb8A65KAAOuSgQDrkoIA65KDAOuShADrkoUA65KGAOuShwDrkogA65KJAOuSigDrkosA65KMAOuSjQDrko4A65KPAOuSkADrkpEA65KSAOuSkwDrkpQA65KVAOuSlgDrkpcA65KYAOuSmQDrkpoA65KbAOuSnADrkp0A65KeAOuSnwDrkqAA65KhAOuSogDrkqMA65KkAOuSpQDrkqYA65KnAOuSqADrkqkA65KqAOuSqwDrkqwA65KtAOuSrgDrkq8A65KwAOuSsQDrkrIA65KzAOuStADrkrUA65K2AOuStwDrkrgA65K5AOuSugDrkrsA65K8AOuSvQDrkr4A65K/AOuTgADrk4EA65OCAOuTgwDrk4QA65OFAOuThgDrk4cA65OIAOuTiQDrk4oA65OLAOuTjADrk40A65OOAOuTjwDrk5AA65ORAOuTkgDrk5MA65OUAOuTlQDrk5YA65OXAOuTmADrk5kA65OaAOuTmwDrk5wA65OdAOuTngDrk58A65OgAOuToQDrk6IA65OjAOuTpADrk6UA65OmAOuTpwDrk6gA65OpAOuTqgDrk6sA65OsAOuTrQDrk64A65OvAOuTsADrk7EA65OyAOuTswDrk7QA65O1AOuTtgDrk7cA65O4AOuTuQDrk7oA65O7AOuTvADrk70A65O+AOuTvwDrlIAA65SBAOuUggDrlIMA65SEAOuUhQDrlIYA65SHAOuUiADrlIkA65SKAOuUiwDrlIwA65SNAOuUjgDrlI8A65SQAOuUkQDrlJIA65STAOuUlADrlJUA65SWAOuUlwDrlJgA65SZAOuUmgDrlJsA65ScAOuUnQDrlJ4A65SfAOuUoADrlKEA65SiAOuUowDrlKQA65SlAOuUpgDrlKcA65SoAOuUqQDrlKoA65SrAOuUrADrlK0A65SuAOuUrwDrlLAA65SxAOuUsgDrlLMA65S0AOuUtQDrlLYA65S3AOuUuADrlLkA65S6AOuUuwDrlLwA65S9AOuUvgDrlL8A65WAAOuVgQDrlYIA65WDAOuVhADrlYUA65WGAOuVhwDrlYgA65WJAOuVigDrlYsA65WMAOuVjQDrlY4A65WPAOuVkADrlZEA65WSAOuVkwDrlZQA65WVAOuVlgDrlZcA65WYAOuVmQDrlZoA65WbAOuVnADrlZ0A65WeAOuVnwDrlaAA65WhAOuVogDrlaMA65WkAOuVpQDrlaYA65WnAOuVqADrlakA65WqAOuVqwDrlawA65WtAOuVrgDrla8A65WwAOuVsQDrlbIA65WzAOuVtADrlbUA65W2AOuVtwDrlbgA65W5AOuVugDrlbsA65W8AOuVvQDrlb4A65W/AOuWgADrloEA65aCAOuWgwDrloQA65aFAOuWhgDrlocA65aIAOuWiQDrlooA65aLAOuWjADrlo0A65aOAOuWjwDrlpAA65aRAOuWkgDrlpMA65aUAOuWlQDrlpYA65aXAOuWmADrlpkA65aaAOuWmwDrlpwA65adAOuWngDrlp8A65agAOuWoQDrlqIA65ajAOuWpADrlqUA65amAOuWpwDrlqgA65apAOuWqgDrlqsA65asAOuWrQDrlq4A65avAOuWsADrlrEA65ayAOuWswDrlrQA65a1AOuWtgDrlrcA65a4AOuWuQDrlroA65a7AOuWvADrlr0A65a+AOuWvwDrl4AA65eBAOuXggDrl4MA65eEAOuXhQDrl4YA65eHAOuXiADrl4kA65eKAOuXiwDrl4wA65eNAOuXjgDrl48A65eQAOuXkQDrl5IA65eTAOuXlADrl5UA65eWAOuXlwDrl5gA65eZAOuXmgDrl5sA65ecAOuXnQDrl54A65efAOuXoADrl6EA65eiAOuXowDrl6QA65elAOuXpgDrl6cA65eoAOuXqQDrl6oA65erAOuXrADrl60A65euAOuXrwDrl7AA65exAOuXsgDrl7MA65e0AOuXtQDrl7YA65e3AOuXuADrl7kA65e6AOuXuwDrl7wA65e9AOuXvgDrl78A65iAAOuYgQDrmIIA65iDAOuYhADrmIUA65iGAOuYhwDrmIgA65iJAOuYigDrmIsA65iMAOuYjQDrmI4A65iPAOuYkADrmJEA65iSAOuYkwDrmJQA65iVAOuYlgDrmJcA65iYAOuYmQDrmJoA65ibAOuYnADrmJ0A65ieAOuYnwDrmKAA65ihAOuYogDrmKMA65ikAOuYpQDrmKYA65inAOuYqADrmKkA65iqAOuYqwDrmKwA65itAOuYrgDrmK8A65iwAOuYsQDrmLIA65izAOuYtADrmLUA65i2AOuYtwDrmLgA65i5AOuYugDrmLsA65i8AOuYvQDrmL4A65i/AOuZgADrmYEA65mCAOuZgwDrmYQA65mFAOuZhgDrmYcA65mIAOuZiQDrmYoA65mLAOuZjADrmY0A65mOAOuZjwDrmZAA65mRAOuZkgDrmZMA65mUAOuZlQDrmZYA65mXAOuZmADrmZkA65maAOuZmwDrmZwA65mdAOuZngDrmZ8A65mgAOuZoQDrmaIA65mjAOuZpADrmaUA65mmAOuZpwDrmagA65mpAOuZqgDrmasA65msAOuZrQDrma4A65mvAOuZsADrmbEA65myAOuZswDrmbQA65m1AOuZtgDrmbcA65m4AOuZuQDrmboA65m7AOuZvADrmb0A65m+AOuZvwDrmoAA65qBAOuaggDrmoMA65qEAOuahQDrmoYA65qHAOuaiADrmokA65qKAOuaiwDrmowA65qNAOuajgDrmo8A65qQAOuakQDrmpIA65qTAOualADrmpUA65qWAOualwDrmpgA65qZAOuamgDrmpsA65qcAOuanQDrmp4A65qfAOuaoADrmqEA65qiAOuaowDrmqQA65qlAOuapgDrmqcA65qoAOuaqQDrmqoA65qrAOuarADrmq0A65quAOuarwDrmrAA65qxAOuasgDrmrMA65q0AOuatQDrmrYA65q3AOuauADrmrkA65q6AOuauwDrmrwA65q9AOuavgDrmr8A65uAAOubgQDrm4IA65uDAOubhADrm4UA65uGAOubhwDrm4gA65uJAOubigDrm4sA65uMAOubjQDrm44A65uPAOubkADrm5EA65uSAOubkwDrm5QA65uVAOublgDrm5cA65uYAOubmQDrm5oA65ubAOubnADrm50A65ueAOubnwDrm6AA65uhAOubogDrm6MA65ukAOubpQDrm6YA65unAOubqADrm6kA65uqAOubqwDrm6wA65utAOubrgDrm68A65uwAOubsQDrm7IA65uzAOubtADrm7UA65u2AOubtwDrm7gA65u5AOubugDrm7sA65u8AOubvQDrm74A65u/AOucgADrnIEA65yCAOucgwDrnIQA65yFAOuchgDrnIcA65yIAOuciQDrnIoA65yLAOucjADrnI0A65yOAOucjwDrnJAA65yRAOuckgDrnJMA65yUAOuclQDrnJYA65yXAOucmADrnJkA65yaAOucmwDrnJwA65ydAOucngDrnJ8A65ygAOucoQDrnKIA65yjAOucpADrnKUA65ymAOucpwDrnKgA65ypAOucqgDrnKsA65ysAOucrQDrnK4A65yvAOucsADrnLEA65yyAOucswDrnLQA65y1AOuctgDrnLcA65y4AOucuQDrnLoA65y7AOucvADrnL0A65y+AOucvwDrnYAA652BAOudggDrnYMA652EAOudhQDrnYYA652HAOudiADrnYkA652KAOudiwDrnYwA652NAOudjgDrnY8A652QAOudkQDrnZIA652TAOudlADrnZUA652WAOudlwDrnZgA652ZAOudmgDrnZsA652cAOudnQDrnZ4A652fAOudoADrnaEA652iAOudowDrnaQA652lAOudpgDrnacA652oAOudqQDrnaoA652rAOudrADrna0A652uAOudrwDrnbAA652xAOudsgDrnbMA6520AOudtQDrnbYA6523AOuduADrnbkA6526AOuduwDrnbwA6529AOudvgDrnb8A656AAOuegQDrnoIA656DAOuehADrnoUA656GAOuehwDrnogA656JAOueigDrnosA656MAOuejQDrno4A656PAOuekADrnpEA656SAOuekwDrnpQA656VAOuelgDrnpcA656YAOuemQDrnpoA656bAOuenADrnp0A656eAOuenwDrnqAA656hAOueogDrnqMA656kAOuepQDrnqYA656nAOueqADrnqkA656qAOueqwDrnqwA656tAOuergDrnq8A656wAOuesQDrnrIA656zAOuetADrnrUA6562AOuetwDrnrgA6565AOueugDrnrsA6568AOuevQDrnr4A656/AOufgADrn4EA65+CAOufgwDrn4QA65+FAOufhgDrn4cA65+IAOufiQDrn4oA65+LAOufjADrn40A65+OAOufjwDrn5AA65+RAOufkgDrn5MA65+UAOuflQDrn5YA65+XAOufmADrn5kA65+aAOufmwDrn5wA65+dAOufngDrn58A65+gAOufoQDrn6IA65+jAOufpADrn6UA65+mAOufpwDrn6gA65+pAOufqgDrn6sA65+sAOufrQDrn64A65+vAOufsADrn7EA65+yAOufswDrn7QA65+1AOuftgDrn7cA65+4AOufuQDrn7oA65+7AOufvADrn70A65++AOufvwDroIAA66CBAOugggDroIMA66CEAOughQDroIYA66CHAOugiADroIkA66CKAOugiwDroIwA66CNAOugjgDroI8A66CQAOugkQDroJIA66CTAOuglADroJUA66CWAOuglwDroJgA66CZAOugmgDroJsA66CcAOugnQDroJ4A66CfAOugoADroKEA66CiAOugowDroKQA66ClAOugpgDroKcA66CoAOugqQDroKoA66CrAOugrADroK0A66CuAOugrwDroLAA66CxAOugsgDroLMA66C0AOugtQDroLYA66C3AOuguADroLkA66C6AOuguwDroLwA66C9AOugvgDroL8A66GAAOuhgQDroYIA66GDAOuhhADroYUA66GGAOuhhwDroYgA66GJAOuhigDroYsA66GMAOuhjQDroY4A66GPAOuhkADroZEA66GSAOuhkwDroZQA66GVAOuhlgDroZcA66GYAOuhmQDroZoA66GbAOuhnADroZ0A66GeAOuhnwDroaAA66GhAOuhogDroaMA66GkAOuhpQDroaYA66GnAOuhqADroakA66GqAOuhqwDroawA66GtAOuhrgDroa8A66GwAOuhsQDrobIA66GzAOuhtADrobUA66G2AOuhtwDrobgA66G5AOuhugDrobsA66G8AOuhvQDrob4A66G/AOuigADrooEA66KCAOuigwDrooQA66KFAOuihgDroocA66KIAOuiiQDroooA66KLAOuijADroo0A66KOAOuijwDropAA66KRAOuikgDropMA66KUAOuilQDropYA66KXAOuimADropkA66KaAOuimwDropwA66KdAOuingDrop8A66KgAOuioQDroqIA66KjAOuipADroqUA66KmAOuipwDroqgA66KpAOuiqgDroqsA66KsAOuirQDroq4A66KvAOuisADrorEA66KyAOuiswDrorQA66K1AOuitgDrorcA66K4AOuiuQDroroA66K7AOuivADror0A66K+AOuivwDro4AA66OBAOujggDro4MA66OEAOujhQDro4YA66OHAOujiADro4kA66OKAOujiwDro4wA66ONAOujjgDro48A66OQAOujkQDro5IA66OTAOujlADro5UA66OWAOujlwDro5gA66OZAOujmgDro5sA66OcAOujnQDro54A66OfAOujoADro6EA66OiAOujowDro6QA66OlAOujpgDro6cA66OoAOujqQDro6oA66OrAOujrADro60A66OuAOujrwDro7AA66OxAOujsgDro7MA66O0AOujtQDro7YA66O3AOujuADro7kA66O6AOujuwDro7wA66O9AOujvgDro78A66SAAOukgQDrpIIA66SDAOukhADrpIUA66SGAOukhwDrpIgA66SJAOukigDrpIsA66SMAOukjQDrpI4A66SPAOukkADrpJEA66SSAOukkwDrpJQA66SVAOuklgDrpJcA66SYAOukmQDrpJoA66SbAOuknADrpJ0A66SeAOuknwDrpKAA66ShAOukogDrpKMA66SkAOukpQDrpKYA66SnAOukqADrpKkA66SqAOukqwDrpKwA66StAOukrgDrpK8A66SwAOuksQDrpLIA66SzAOuktADrpLUA66S2AOuktwDrpLgA66S5AOukugDrpLsA66S8AOukvQDrpL4A66S/AOulgADrpYEA66WCAOulgwDrpYQA66WFAOulhgDrpYcA66WIAOuliQDrpYoA66WLAOuljADrpY0A66WOAOuljwDrpZAA66WRAOulkgDrpZMA66WUAOullQDrpZYA66WXAOulmADrpZkA66WaAOulmwDrpZwA66WdAOulngDrpZ8A66WgAOuloQDrpaIA66WjAOulpADrpaUA66WmAOulpwDrpagA66WpAOulqgDrpasA66WsAOulrQDrpa4A66WvAOulsADrpbEA66WyAOulswDrpbQA66W1AOultgDrpbcA66W4AOuluQDrpboA66W7AOulvADrpb0A66W+AOulvwDrpoAA66aBAOumggDrpoMA66aEAOumhQDrpoYA66aHAOumiADrpokA66aKAOumiwDrpowA66aNAOumjgDrpo8A66aQAOumkQDrppIA66aTAOumlADrppUA66aWAOumlwDrppgA66aZAOummgDrppsA66acAOumnQDrpp4A66afAOumoADrpqEA66aiAOumowDrpqQA66alAOumpgDrpqcA66aoAOumqQDrpqoA66arAOumrADrpq0A66auAOumrwDrprAA66axAOumsgDrprMA66a0AOumtQDrprYA66a3AOumuADrprkA66a6AOumuwDrprwA66a9AOumvgDrpr8A66eAAOungQDrp4IA66eDAOunhADrp4UA66eGAOunhwDrp4gA66eJAOunigDrp4sA66eMAOunjQDrp44A66ePAOunkADrp5EA66eSAOunkwDrp5QA66eVAOunlgDrp5cA66eYAOunmQDrp5oA66ebAOunnADrp50A66eeAOunnwDrp6AA66ehAOunogDrp6MA66ekAOunpQDrp6YA66enAOunqADrp6kA66eqAOunqwDrp6wA66etAOunrgDrp68A66ewAOunsQDrp7IA66ezAOuntADrp7UA66e2AOuntwDrp7gA66e5AOunugDrp7sA66e8AOunvQDrp74A66e/AOuogADrqIEA66iCAOuogwDrqIQA66iFAOuohgDrqIcA66iIAOuoiQDrqIoA66iLAOuojADrqI0A66iOAOuojwDrqJAA66iRAOuokgDrqJMA66iUAOuolQDrqJYA66iXAOuomADrqJkA66iaAOuomwDrqJwA66idAOuongDrqJ8A66igAOuooQDrqKIA66ijAOuopADrqKUA66imAOuopwDrqKgA66ipAOuoqgDrqKsA66isAOuorQDrqK4A66ivAOuosADrqLEA66iyAOuoswDrqLQA66i1AOuotgDrqLcA66i4AOuouQDrqLoA66i7AOuovADrqL0A66i+AOuovwDrqYAA66mBAOupggDrqYMA66mEAOuphQDrqYYA66mHAOupiADrqYkA66mKAOupiwDrqYwA66mNAOupjgDrqY8A66mQAOupkQDrqZIA66mTAOuplADrqZUA66mWAOuplwDrqZgA66mZAOupmgDrqZsA66mcAOupnQDrqZ4A66mfAOupoADrqaEA66miAOupowDrqaQA66mlAOuppgDrqacA66moAOupqQDrqaoA66mrAOuprADrqa0A66muAOuprwDrqbAA66mxAOupsgDrqbMA66m0AOuptQDrqbYA66m3AOupuADrqbkA66m6AOupuwDrqbwA66m9AOupvgDrqb8A66qAAOuqgQDrqoIA66qDAOuqhADrqoUA66qGAOuqhwDrqogA66qJAOuqigDrqosA66qMAOuqjQDrqo4A66qPAOuqkADrqpEA66qSAOuqkwDrqpQA66qVAOuqlgDrqpcA66qYAOuqmQDrqpoA66qbAOuqnADrqp0A66qeAOuqnwDrqqAA66qhAOuqogDrqqMA66qkAOuqpQDrqqYA66qnAOuqqADrqqkA66qqAOuqqwDrqqwA66qtAOuqrgDrqq8A66qwAOuqsQDrqrIA66qzAOuqtADrqrUA66q2AOuqtwDrqrgA66q5AOuqugDrqrsA66q8AOuqvQDrqr4A66q/AOurgADrq4EA66uCAOurgwDrq4QA66uFAOurhgDrq4cA66uIAOuriQDrq4oA66uLAOurjADrq40A66uOAOurjwDrq5AA66uRAOurkgDrq5MA66uUAOurlQDrq5YA66uXAOurmADrq5kA66uaAOurmwDrq5wA66udAOurngDrq58A66ugAOuroQDrq6IA66ujAOurpADrq6UA66umAOurpwDrq6gA66upAOurqgDrq6sA66usAOurrQDrq64A66uvAOursADrq7EA66uyAOurswDrq7QA66u1AOurtgDrq7cA66u4AOuruQDrq7oA66u7AOurvADrq70A66u+AOurvwDrrIAA66yBAOusggDrrIMA66yEAOushQDrrIYA66yHAOusiADrrIkA66yKAOusiwDrrIwA66yNAOusjgDrrI8A66yQAOuskQDrrJIA66yTAOuslADrrJUA66yWAOuslwDrrJgA66yZAOusmgDrrJsA66ycAOusnQDrrJ4A66yfAOusoADrrKEA66yiAOusowDrrKQA66ylAOuspgDrrKcA66yoAOusqQDrrKoA66yrAOusrADrrK0A66yuAOusrwDrrLAA66yxAOussgDrrLMA66y0AOustQDrrLYA66y3AOusuADrrLkA66y6AOusuwDrrLwA66y9AOusvgDrrL8A662AAOutgQDrrYIA662DAOuthADrrYUA662GAOuthwDrrYgA662JAOutigDrrYsA662MAOutjQDrrY4A662PAOutkADrrZEA662SAOutkwDrrZQA662VAOutlgDrrZcA662YAOutmQDrrZoA662bAOutnADrrZ0A662eAOutnwDrraAA662hAOutogDrraMA662kAOutpQDrraYA662nAOutqADrrakA662qAOutqwDrrawA662tAOutrgDrra8A662wAOutsQDrrbIA662zAOuttADrrbUA6622AOuttwDrrbgA6625AOutugDrrbsA6628AOutvQDrrb4A662/AOuugADrroEA666CAOuugwDrroQA666FAOuuhgDrrocA666IAOuuiQDrrooA666LAOuujADrro0A666OAOuujwDrrpAA666RAOuukgDrrpMA666UAOuulQDrrpYA666XAOuumADrrpkA666aAOuumwDrrpwA666dAOuungDrrp8A666gAOuuoQDrrqIA666jAOuupADrrqUA666mAOuupwDrrqgA666pAOuuqgDrrqsA666sAOuurQDrrq4A666vAOuusADrrrEA666yAOuuswDrrrQA6661AOuutgDrrrcA6664AOuuuQDrrroA6667AOuuvADrrr0A666+AOuuvwDrr4AA66+BAOuvggDrr4MA66+EAOuvhQDrr4YA66+HAOuviADrr4kA66+KAOuviwDrr4wA66+NAOuvjgDrr48A66+QAOuvkQDrr5IA66+TAOuvlADrr5UA66+WAOuvlwDrr5gA66+ZAOuvmgDrr5sA66+cAOuvnQDrr54A66+fAOuvoADrr6EA66+iAOuvowDrr6QA66+lAOuvpgDrr6cA66+oAOuvqQDrr6oA66+rAOuvrADrr60A66+uAOuvrwDrr7AA66+xAOuvsgDrr7MA66+0AOuvtQDrr7YA66+3AOuvuADrr7kA66+6AOuvuwDrr7wA66+9AOuvvgDrr78A67CAAOuwgQDrsIIA67CDAOuwhADrsIUA67CGAOuwhwDrsIgA67CJAOuwigDrsIsA67CMAOuwjQDrsI4A67CPAOuwkADrsJEA67CSAOuwkwDrsJQA67CVAOuwlgDrsJcA67CYAOuwmQDrsJoA67CbAOuwnADrsJ0A67CeAOuwnwDrsKAA67ChAOuwogDrsKMA67CkAOuwpQDrsKYA67CnAOuwqADrsKkA67CqAOuwqwDrsKwA67CtAOuwrgDrsK8A67CwAOuwsQDrsLIA67CzAOuwtADrsLUA67C2AOuwtwDrsLgA67C5AOuwugDrsLsA67C8AOuwvQDrsL4A67C/AOuxgADrsYEA67GCAOuxgwDrsYQA67GFAOuxhgDrsYcA67GIAOuxiQDrsYoA67GLAOuxjADrsY0A67GOAOuxjwDrsZAA67GRAOuxkgDrsZMA67GUAOuxlQDrsZYA67GXAOuxmADrsZkA67GaAOuxmwDrsZwA67GdAOuxngDrsZ8A67GgAOuxoQDrsaIA67GjAOuxpADrsaUA67GmAOuxpwDrsagA67GpAOuxqgDrsasA67GsAOuxrQDrsa4A67GvAOuxsADrsbEA67GyAOuxswDrsbQA67G1AOuxtgDrsbcA67G4AOuxuQDrsboA67G7AOuxvADrsb0A67G+AOuxvwDrsoAA67KBAOuyggDrsoMA67KEAOuyhQDrsoYA67KHAOuyiADrsokA67KKAOuyiwDrsowA67KNAOuyjgDrso8A67KQAOuykQDrspIA67KTAOuylADrspUA67KWAOuylwDrspgA67KZAOuymgDrspsA67KcAOuynQDrsp4A67KfAOuyoADrsqEA67KiAOuyowDrsqQA67KlAOuypgDrsqcA67KoAOuyqQDrsqoA67KrAOuyrADrsq0A67KuAOuyrwDrsrAA67KxAOuysgDrsrMA67K0AOuytQDrsrYA67K3AOuyuADrsrkA67K6AOuyuwDrsrwA67K9AOuyvgDrsr8A67OAAOuzgQDrs4IA67ODAOuzhADrs4UA67OGAOuzhwDrs4gA67OJAOuzigDrs4sA67OMAOuzjQDrs44A67OPAOuzkADrs5EA67OSAOuzkwDrs5QA67OVAOuzlgDrs5cA67OYAOuzmQDrs5oA67ObAOuznADrs50A67OeAOuznwDrs6AA67OhAOuzogDrs6MA67OkAOuzpQDrs6YA67OnAOuzqADrs6kA67OqAOuzqwDrs6wA67OtAOuzrgDrs68A67OwAOuzsQDrs7IA67OzAOuztADrs7UA67O2AOuztwDrs7gA67O5AOuzugDrs7sA67O8AOuzvQDrs74A67O/AOu0gADrtIEA67SCAOu0gwDrtIQA67SFAOu0hgDrtIcA67SIAOu0iQDrtIoA67SLAOu0jADrtI0A67SOAOu0jwDrtJAA67SRAOu0kgDrtJMA67SUAOu0lQDrtJYA67SXAOu0mADrtJkA67SaAOu0mwDrtJwA67SdAOu0ngDrtJ8A67SgAOu0oQDrtKIA67SjAOu0pADrtKUA67SmAOu0pwDrtKgA67SpAOu0qgDrtKsA67SsAOu0rQDrtK4A67SvAOu0sADrtLEA67SyAOu0swDrtLQA67S1AOu0tgDrtLcA67S4AOu0uQDrtLoA67S7AOu0vADrtL0A67S+AOu0vwDrtYAA67WBAOu1ggDrtYMA67WEAOu1hQDrtYYA67WHAOu1iADrtYkA67WKAOu1iwDrtYwA67WNAOu1jgDrtY8A67WQAOu1kQDrtZIA67WTAOu1lADrtZUA67WWAOu1lwDrtZgA67WZAOu1mgDrtZsA67WcAOu1nQDrtZ4A67WfAOu1oADrtaEA67WiAOu1owDrtaQA67WlAOu1pgDrtacA67WoAOu1qQDrtaoA67WrAOu1rADrta0A67WuAOu1rwDrtbAA67WxAOu1sgDrtbMA67W0AOu1tQDrtbYA67W3AOu1uADrtbkA67W6AOu1uwDrtbwA67W9AOu1vgDrtb8A67aAAOu2gQDrtoIA67aDAOu2hADrtoUA67aGAOu2hwDrtogA67aJAOu2igDrtosA67aMAOu2jQDrto4A67aPAOu2kADrtpEA67aSAOu2kwDrtpQA67aVAOu2lgDrtpcA67aYAOu2mQDrtpoA67abAOu2nADrtp0A67aeAOu2nwDrtqAA67ahAOu2ogDrtqMA67akAOu2pQDrtqYA67anAOu2qADrtqkA67aqAOu2qwDrtqwA67atAOu2rgDrtq8A67awAOu2sQDrtrIA67azAOu2tADrtrUA67a2AOu2twDrtrgA67a5AOu2ugDrtrsA67a8AOu2vQDrtr4A67a/AOu3gADrt4EA67eCAOu3gwDrt4QA67eFAOu3hgDrt4cA67eIAOu3iQDrt4oA67eLAOu3jADrt40A67eOAOu3jwDrt5AA67eRAOu3kgDrt5MA67eUAOu3lQDrt5YA67eXAOu3mADrt5kA67eaAOu3mwDrt5wA67edAOu3ngDrt58A67egAOu3oQDrt6IA67ejAOu3pADrt6UA67emAOu3pwDrt6gA67epAOu3qgDrt6sA67esAOu3rQDrt64A67evAOu3sADrt7EA67eyAOu3swDrt7QA67e1AOu3tgDrt7cA67e4AOu3uQDrt7oA67e7AOu3vADrt70A67e+AOu3vwDruIAA67iBAOu4ggDruIMA67iEAOu4hQDruIYA67iHAOu4iADruIkA67iKAOu4iwDruIwA67iNAOu4jgDruI8A67iQAOu4kQDruJIA67iTAOu4lADruJUA67iWAOu4lwDruJgA67iZAOu4mgDruJsA67icAOu4nQDruJ4A67ifAOu4oADruKEA67iiAOu4owDruKQA67ilAOu4pgDruKcA67ioAOu4qQDruKoA67irAOu4rADruK0A67iuAOu4rwDruLAA67ixAOu4sgDruLMA67i0AOu4tQDruLYA67i3AOu4uADruLkA67i6AOu4uwDruLwA67i9AOu4vgDruL8A67mAAOu5gQDruYIA67mDAOu5hADruYUA67mGAOu5hwDruYgA67mJAOu5igDruYsA67mMAOu5jQDruY4A67mPAOu5kADruZEA67mSAOu5kwDruZQA67mVAOu5lgDruZcA67mYAOu5mQDruZoA67mbAOu5nADruZ0A67meAOu5nwDruaAA67mhAOu5ogDruaMA67mkAOu5pQDruaYA67mnAOu5qADruakA67mqAOu5qwDruawA67mtAOu5rgDrua8A67mwAOu5sQDrubIA67mzAOu5tADrubUA67m2AOu5twDrubgA67m5AOu5ugDrubsA67m8AOu5vQDrub4A67m/AOu6gADruoEA67qCAOu6gwDruoQA67qFAOu6hgDruocA67qIAOu6iQDruooA67qLAOu6jADruo0A67qOAOu6jwDrupAA67qRAOu6kgDrupMA67qUAOu6lQDrupYA67qXAOu6mADrupkA67qaAOu6mwDrupwA67qdAOu6ngDrup8A67qgAOu6oQDruqIA67qjAOu6pADruqUA67qmAOu6pwDruqgA67qpAOu6qgDruqsA67qsAOu6rQDruq4A67qvAOu6sADrurEA67qyAOu6swDrurQA67q1AOu6tgDrurcA67q4AOu6uQDruroA67q7AOu6vADrur0A67q+AOu6vwDru4AA67uBAOu7ggDru4MA67uEAOu7hQDru4YA67uHAOu7iADru4kA67uKAOu7iwDru4wA67uNAOu7jgDru48A67uQAOu7kQDru5IA67uTAOu7lADru5UA67uWAOu7lwDru5gA67uZAOu7mgDru5sA67ucAOu7nQDru54A67ufAOu7oADru6EA67uiAOu7owDru6QA67ulAOu7pgDru6cA67uoAOu7qQDru6oA67urAOu7rADru60A67uuAOu7rwDru7AA67uxAOu7sgDru7MA67u0AOu7tQDru7YA67u3AOu7uADru7kA67u6AOu7uwDru7wA67u9AOu7vgDru78A67yAAOu8gQDrvIIA67yDAOu8hADrvIUA67yGAOu8hwDrvIgA67yJAOu8igDrvIsA67yMAOu8jQDrvI4A67yPAOu8kADrvJEA67ySAOu8kwDrvJQA67yVAOu8lgDrvJcA67yYAOu8mQDrvJoA67ybAOu8nADrvJ0A67yeAOu8nwDrvKAA67yhAOu8ogDrvKMA67ykAOu8pQDrvKYA67ynAOu8qADrvKkA67yqAOu8qwDrvKwA67ytAOu8rgDrvK8A67ywAOu8sQDrvLIA67yzAOu8tADrvLUA67y2AOu8twDrvLgA67y5AOu8ugDrvLsA67y8AOu8vQDrvL4A67y/AOu9gADrvYEA672CAOu9gwDrvYQA672FAOu9hgDrvYcA672IAOu9iQDrvYoA672LAOu9jADrvY0A672OAOu9jwDrvZAA672RAOu9kgDrvZMA672UAOu9lQDrvZYA672XAOu9mADrvZkA672aAOu9mwDrvZwA672dAOu9ngDrvZ8A672gAOu9oQDrvaIA672jAOu9pADrvaUA672mAOu9pwDrvagA672pAOu9qgDrvasA672sAOu9rQDrva4A672vAOu9sADrvbEA672yAOu9swDrvbQA6721AOu9tgDrvbcA6724AOu9uQDrvboA6727AOu9vADrvb0A672+AOu9vwDrvoAA676BAOu+ggDrvoMA676EAOu+hQDrvoYA676HAOu+iADrvokA676KAOu+iwDrvowA676NAOu+jgDrvo8A676QAOu+kQDrvpIA676TAOu+lADrvpUA676WAOu+lwDrvpgA676ZAOu+mgDrvpsA676cAOu+nQDrvp4A676fAOu+oADrvqEA676iAOu+owDrvqQA676lAOu+pgDrvqcA676oAOu+qQDrvqoA676rAOu+rADrvq0A676uAOu+rwDrvrAA676xAOu+sgDrvrMA6760AOu+tQDrvrYA6763AOu+uADrvrkA6766AOu+uwDrvrwA6769AOu+vgDrvr8A67+AAOu/gQDrv4IA67+DAOu/hADrv4UA67+GAOu/hwDrv4gA67+JAOu/igDrv4sA67+MAOu/jQDrv44A67+PAOu/kADrv5EA67+SAOu/kwDrv5QA67+VAOu/lgDrv5cA67+YAOu/mQDrv5oA67+bAOu/nADrv50A67+eAOu/nwDrv6AA67+hAOu/ogDrv6MA67+kAOu/pQDrv6YA67+nAOu/qADrv6kA67+qAOu/qwDrv6wA67+tAOu/rgDrv68A67+wAOu/sQDrv7IA67+zAOu/tADrv7UA67+2AOu/twDrv7gA67+5AOu/ugDrv7sA67+8AOu/vQDrv74A67+/AOyAgADsgIEA7ICCAOyAgwDsgIQA7ICFAOyAhgDsgIcA7ICIAOyAiQDsgIoA7ICLAOyAjADsgI0A7ICOAOyAjwDsgJAA7ICRAOyAkgDsgJMA7ICUAOyAlQDsgJYA7ICXAOyAmADsgJkA7ICaAOyAmwDsgJwA7ICdAOyAngDsgJ8A7ICgAOyAoQDsgKIA7ICjAOyApADsgKUA7ICmAOyApwDsgKgA7ICpAOyAqgDsgKsA7ICsAOyArQDsgK4A7ICvAOyAsADsgLEA7ICyAOyAswDsgLQA7IC1AOyAtgDsgLcA7IC4AOyAuQDsgLoA7IC7AOyAvADsgL0A7IC+AOyAvwDsgYAA7IGBAOyBggDsgYMA7IGEAOyBhQDsgYYA7IGHAOyBiADsgYkA7IGKAOyBiwDsgYwA7IGNAOyBjgDsgY8A7IGQAOyBkQDsgZIA7IGTAOyBlADsgZUA7IGWAOyBlwDsgZgA7IGZAOyBmgDsgZsA7IGcAOyBnQDsgZ4A7IGfAOyBoADsgaEA7IGiAOyBowDsgaQA7IGlAOyBpgDsgacA7IGoAOyBqQDsgaoA7IGrAOyBrADsga0A7IGuAOyBrwDsgbAA7IGxAOyBsgDsgbMA7IG0AOyBtQDsgbYA7IG3AOyBuADsgbkA7IG6AOyBuwDsgbwA7IG9AOyBvgDsgb8A7IKAAOyCgQDsgoIA7IKDAOyChADsgoUA7IKGAOyChwDsgogA7IKJAOyCigDsgosA7IKMAOyCjQDsgo4A7IKPAOyCkADsgpEA7IKSAOyCkwDsgpQA7IKVAOyClgDsgpcA7IKYAOyCmQDsgpoA7IKbAOyCnADsgp0A7IKeAOyCnwDsgqAA7IKhAOyCogDsgqMA7IKkAOyCpQDsgqYA7IKnAOyCqADsgqkA7IKqAOyCqwDsgqwA7IKtAOyCrgDsgq8A7IKwAOyCsQDsgrIA7IKzAOyCtADsgrUA7IK2AOyCtwDsgrgA7IK5AOyCugDsgrsA7IK8AOyCvQDsgr4A7IK/AOyDgADsg4EA7IOCAOyDgwDsg4QA7IOFAOyDhgDsg4cA7IOIAOyDiQDsg4oA7IOLAOyDjADsg40A7IOOAOyDjwDsg5AA7IORAOyDkgDsg5MA7IOUAOyDlQDsg5YA7IOXAOyDmADsg5kA7IOaAOyDmwDsg5wA7IOdAOyDngDsg58A7IOgAOyDoQDsg6IA7IOjAOyDpADsg6UA7IOmAOyDpwDsg6gA7IOpAOyDqgDsg6sA7IOsAOyDrQDsg64A7IOvAOyDsADsg7EA7IOyAOyDswDsg7QA7IO1AOyDtgDsg7cA7IO4AOyDuQDsg7oA7IO7AOyDvADsg70A7IO+AOyDvwDshIAA7ISBAOyEggDshIMA7ISEAOyEhQDshIYA7ISHAOyEiADshIkA7ISKAOyEiwDshIwA7ISNAOyEjgDshI8A7ISQAOyEkQDshJIA7ISTAOyElADshJUA7ISWAOyElwDshJgA7ISZAOyEmgDshJsA7IScAOyEnQDshJ4A7ISfAOyEoADshKEA7ISiAOyEowDshKQA7ISlAOyEpgDshKcA7ISoAOyEqQDshKoA7ISrAOyErADshK0A7ISuAOyErwDshLAA7ISxAOyEsgDshLMA7IS0AOyEtQDshLYA7IS3AOyEuADshLkA7IS6AOyEuwDshLwA7IS9AOyEvgDshL8A7IWAAOyFgQDshYIA7IWDAOyFhADshYUA7IWGAOyFhwDshYgA7IWJAOyFigDshYsA7IWMAOyFjQDshY4A7IWPAOyFkADshZEA7IWSAOyFkwDshZQA7IWVAOyFlgDshZcA7IWYAOyFmQDshZoA7IWbAOyFnADshZ0A7IWeAOyFnwDshaAA7IWhAOyFogDshaMA7IWkAOyFpQDshaYA7IWnAOyFqADshakA7IWqAOyFqwDshawA7IWtAOyFrgDsha8A7IWwAOyFsQDshbIA7IWzAOyFtADshbUA7IW2AOyFtwDshbgA7IW5AOyFugDshbsA7IW8AOyFvQDshb4A7IW/AOyGgADshoEA7IaCAOyGgwDshoQA7IaFAOyGhgDshocA7IaIAOyGiQDshooA7IaLAOyGjADsho0A7IaOAOyGjwDshpAA7IaRAOyGkgDshpMA7IaUAOyGlQDshpYA7IaXAOyGmADshpkA7IaaAOyGmwDshpwA7IadAOyGngDshp8A7IagAOyGoQDshqIA7IajAOyGpADshqUA7IamAOyGpwDshqgA7IapAOyGqgDshqsA7IasAOyGrQDshq4A7IavAOyGsADshrEA7IayAOyGswDshrQA7Ia1AOyGtgDshrcA7Ia4AOyGuQDshroA7Ia7AOyGvADshr0A7Ia+AOyGvwDsh4AA7IeBAOyHggDsh4MA7IeEAOyHhQDsh4YA7IeHAOyHiADsh4kA7IeKAOyHiwDsh4wA7IeNAOyHjgDsh48A7IeQAOyHkQDsh5IA7IeTAOyHlADsh5UA7IeWAOyHlwDsh5gA7IeZAOyHmgDsh5sA7IecAOyHnQDsh54A7IefAOyHoADsh6EA7IeiAOyHowDsh6QA7IelAOyHpgDsh6cA7IeoAOyHqQDsh6oA7IerAOyHrADsh60A7IeuAOyHrwDsh7AA7IexAOyHsgDsh7MA7Ie0AOyHtQDsh7YA7Ie3AOyHuADsh7kA7Ie6AOyHuwDsh7wA7Ie9AOyHvgDsh78A7IiAAOyIgQDsiIIA7IiDAOyIhADsiIUA7IiGAOyIhwDsiIgA7IiJAOyIigDsiIsA7IiMAOyIjQDsiI4A7IiPAOyIkADsiJEA7IiSAOyIkwDsiJQA7IiVAOyIlgDsiJcA7IiYAOyImQDsiJoA7IibAOyInADsiJ0A7IieAOyInwDsiKAA7IihAOyIogDsiKMA7IikAOyIpQDsiKYA7IinAOyIqADsiKkA7IiqAOyIqwDsiKwA7IitAOyIrgDsiK8A7IiwAOyIsQDsiLIA7IizAOyItADsiLUA7Ii2AOyItwDsiLgA7Ii5AOyIugDsiLsA7Ii8AOyIvQDsiL4A7Ii/AOyJgADsiYEA7ImCAOyJgwDsiYQA7ImFAOyJhgDsiYcA7ImIAOyJiQDsiYoA7ImLAOyJjADsiY0A7ImOAOyJjwDsiZAA7ImRAOyJkgDsiZMA7ImUAOyJlQDsiZYA7ImXAOyJmADsiZkA7ImaAOyJmwDsiZwA7ImdAOyJngDsiZ8A7ImgAOyJoQDsiaIA7ImjAOyJpADsiaUA7ImmAOyJpwDsiagA7ImpAOyJqgDsiasA7ImsAOyJrQDsia4A7ImvAOyJsADsibEA7ImyAOyJswDsibQA7Im1AOyJtgDsibcA7Im4AOyJuQDsiboA7Im7AOyJvADsib0A7Im+AOyJvwDsioAA7IqBAOyKggDsioMA7IqEAOyKhQDsioYA7IqHAOyKiADsiokA7IqKAOyKiwDsiowA7IqNAOyKjgDsio8A7IqQAOyKkQDsipIA7IqTAOyKlADsipUA7IqWAOyKlwDsipgA7IqZAOyKmgDsipsA7IqcAOyKnQDsip4A7IqfAOyKoADsiqEA7IqiAOyKowDsiqQA7IqlAOyKpgDsiqcA7IqoAOyKqQDsiqoA7IqrAOyKrADsiq0A7IquAOyKrwDsirAA7IqxAOyKsgDsirMA7Iq0AOyKtQDsirYA7Iq3AOyKuADsirkA7Iq6AOyKuwDsirwA7Iq9AOyKvgDsir8A7IuAAOyLgQDsi4IA7IuDAOyLhADsi4UA7IuGAOyLhwDsi4gA7IuJAOyLigDsi4sA7IuMAOyLjQDsi44A7IuPAOyLkADsi5EA7IuSAOyLkwDsi5QA7IuVAOyLlgDsi5cA7IuYAOyLmQDsi5oA7IubAOyLnADsi50A7IueAOyLnwDsi6AA7IuhAOyLogDsi6MA7IukAOyLpQDsi6YA7IunAOyLqADsi6kA7IuqAOyLqwDsi6wA7IutAOyLrgDsi68A7IuwAOyLsQDsi7IA7IuzAOyLtADsi7UA7Iu2AOyLtwDsi7gA7Iu5AOyLugDsi7sA7Iu8AOyLvQDsi74A7Iu/AOyMgADsjIEA7IyCAOyMgwDsjIQA7IyFAOyMhgDsjIcA7IyIAOyMiQDsjIoA7IyLAOyMjADsjI0A7IyOAOyMjwDsjJAA7IyRAOyMkgDsjJMA7IyUAOyMlQDsjJYA7IyXAOyMmADsjJkA7IyaAOyMmwDsjJwA7IydAOyMngDsjJ8A7IygAOyMoQDsjKIA7IyjAOyMpADsjKUA7IymAOyMpwDsjKgA7IypAOyMqgDsjKsA7IysAOyMrQDsjK4A7IyvAOyMsADsjLEA7IyyAOyMswDsjLQA7Iy1AOyMtgDsjLcA7Iy4AOyMuQDsjLoA7Iy7AOyMvADsjL0A7Iy+AOyMvwDsjYAA7I2BAOyNggDsjYMA7I2EAOyNhQDsjYYA7I2HAOyNiADsjYkA7I2KAOyNiwDsjYwA7I2NAOyNjgDsjY8A7I2QAOyNkQDsjZIA7I2TAOyNlADsjZUA7I2WAOyNlwDsjZgA7I2ZAOyNmgDsjZsA7I2cAOyNnQDsjZ4A7I2fAOyNoADsjaEA7I2iAOyNowDsjaQA7I2lAOyNpgDsjacA7I2oAOyNqQDsjaoA7I2rAOyNrADsja0A7I2uAOyNrwDsjbAA7I2xAOyNsgDsjbMA7I20AOyNtQDsjbYA7I23AOyNuADsjbkA7I26AOyNuwDsjbwA7I29AOyNvgDsjb8A7I6AAOyOgQDsjoIA7I6DAOyOhADsjoUA7I6GAOyOhwDsjogA7I6JAOyOigDsjosA7I6MAOyOjQDsjo4A7I6PAOyOkADsjpEA7I6SAOyOkwDsjpQA7I6VAOyOlgDsjpcA7I6YAOyOmQDsjpoA7I6bAOyOnADsjp0A7I6eAOyOnwDsjqAA7I6hAOyOogDsjqMA7I6kAOyOpQDsjqYA7I6nAOyOqADsjqkA7I6qAOyOqwDsjqwA7I6tAOyOrgDsjq8A7I6wAOyOsQDsjrIA7I6zAOyOtADsjrUA7I62AOyOtwDsjrgA7I65AOyOugDsjrsA7I68AOyOvQDsjr4A7I6/AOyPgADsj4EA7I+CAOyPgwDsj4QA7I+FAOyPhgDsj4cA7I+IAOyPiQDsj4oA7I+LAOyPjADsj40A7I+OAOyPjwDsj5AA7I+RAOyPkgDsj5MA7I+UAOyPlQDsj5YA7I+XAOyPmADsj5kA7I+aAOyPmwDsj5wA7I+dAOyPngDsj58A7I+gAOyPoQDsj6IA7I+jAOyPpADsj6UA7I+mAOyPpwDsj6gA7I+pAOyPqgDsj6sA7I+sAOyPrQDsj64A7I+vAOyPsADsj7EA7I+yAOyPswDsj7QA7I+1AOyPtgDsj7cA7I+4AOyPuQDsj7oA7I+7AOyPvADsj70A7I++AOyPvwDskIAA7JCBAOyQggDskIMA7JCEAOyQhQDskIYA7JCHAOyQiADskIkA7JCKAOyQiwDskIwA7JCNAOyQjgDskI8A7JCQAOyQkQDskJIA7JCTAOyQlADskJUA7JCWAOyQlwDskJgA7JCZAOyQmgDskJsA7JCcAOyQnQDskJ4A7JCfAOyQoADskKEA7JCiAOyQowDskKQA7JClAOyQpgDskKcA7JCoAOyQqQDskKoA7JCrAOyQrADskK0A7JCuAOyQrwDskLAA7JCxAOyQsgDskLMA7JC0AOyQtQDskLYA7JC3AOyQuADskLkA7JC6AOyQuwDskLwA7JC9AOyQvgDskL8A7JGAAOyRgQDskYIA7JGDAOyRhADskYUA7JGGAOyRhwDskYgA7JGJAOyRigDskYsA7JGMAOyRjQDskY4A7JGPAOyRkADskZEA7JGSAOyRkwDskZQA7JGVAOyRlgDskZcA7JGYAOyRmQDskZoA7JGbAOyRnADskZ0A7JGeAOyRnwDskaAA7JGhAOyRogDskaMA7JGkAOyRpQDskaYA7JGnAOyRqADskakA7JGqAOyRqwDskawA7JGtAOyRrgDska8A7JGwAOyRsQDskbIA7JGzAOyRtADskbUA7JG2AOyRtwDskbgA7JG5AOyRugDskbsA7JG8AOyRvQDskb4A7JG/AOySgADskoEA7JKCAOySgwDskoQA7JKFAOyShgDskocA7JKIAOySiQDskooA7JKLAOySjADsko0A7JKOAOySjwDskpAA7JKRAOySkgDskpMA7JKUAOySlQDskpYA7JKXAOySmADskpkA7JKaAOySmwDskpwA7JKdAOySngDskp8A7JKgAOySoQDskqIA7JKjAOySpADskqUA7JKmAOySpwDskqgA7JKpAOySqgDskqsA7JKsAOySrQDskq4A7JKvAOySsADskrEA7JKyAOySswDskrQA7JK1AOyStgDskrcA7JK4AOySuQDskroA7JK7AOySvADskr0A7JK+AOySvwDsk4AA7JOBAOyTggDsk4MA7JOEAOyThQDsk4YA7JOHAOyTiADsk4kA7JOKAOyTiwDsk4wA7JONAOyTjgDsk48A7JOQAOyTkQDsk5IA7JOTAOyTlADsk5UA7JOWAOyTlwDsk5gA7JOZAOyTmgDsk5sA7JOcAOyTnQDsk54A7JOfAOyToADsk6EA7JOiAOyTowDsk6QA7JOlAOyTpgDsk6cA7JOoAOyTqQDsk6oA7JOrAOyTrADsk60A7JOuAOyTrwDsk7AA7JOxAOyTsgDsk7MA7JO0AOyTtQDsk7YA7JO3AOyTuADsk7kA7JO6AOyTuwDsk7wA7JO9AOyTvgDsk78A7JSAAOyUgQDslIIA7JSDAOyUhADslIUA7JSGAOyUhwDslIgA7JSJAOyUigDslIsA7JSMAOyUjQDslI4A7JSPAOyUkADslJEA7JSSAOyUkwDslJQA7JSVAOyUlgDslJcA7JSYAOyUmQDslJoA7JSbAOyUnADslJ0A7JSeAOyUnwDslKAA7JShAOyUogDslKMA7JSkAOyUpQDslKYA7JSnAOyUqADslKkA7JSqAOyUqwDslKwA7JStAOyUrgDslK8A7JSwAOyUsQDslLIA7JSzAOyUtADslLUA7JS2AOyUtwDslLgA7JS5AOyUugDslLsA7JS8AOyUvQDslL4A7JS/AOyVgADslYEA7JWCAOyVgwDslYQA7JWFAOyVhgDslYcA7JWIAOyViQDslYoA7JWLAOyVjADslY0A7JWOAOyVjwDslZAA7JWRAOyVkgDslZMA7JWUAOyVlQDslZYA7JWXAOyVmADslZkA7JWaAOyVmwDslZwA7JWdAOyVngDslZ8A7JWgAOyVoQDslaIA7JWjAOyVpADslaUA7JWmAOyVpwDslagA7JWpAOyVqgDslasA7JWsAOyVrQDsla4A7JWvAOyVsADslbEA7JWyAOyVswDslbQA7JW1AOyVtgDslbcA7JW4AOyVuQDslboA7JW7AOyVvADslb0A7JW+AOyVvwDsloAA7JaBAOyWggDsloMA7JaEAOyWhQDsloYA7JaHAOyWiADslokA7JaKAOyWiwDslowA7JaNAOyWjgDslo8A7JaQAOyWkQDslpIA7JaTAOyWlADslpUA7JaWAOyWlwDslpgA7JaZAOyWmgDslpsA7JacAOyWnQDslp4A7JafAOyWoADslqEA7JaiAOyWowDslqQA7JalAOyWpgDslqcA7JaoAOyWqQDslqoA7JarAOyWrADslq0A7JauAOyWrwDslrAA7JaxAOyWsgDslrMA7Ja0AOyWtQDslrYA7Ja3AOyWuADslrkA7Ja6AOyWuwDslrwA7Ja9AOyWvgDslr8A7JeAAOyXgQDsl4IA7JeDAOyXhADsl4UA7JeGAOyXhwDsl4gA7JeJAOyXigDsl4sA7JeMAOyXjQDsl44A7JePAOyXkADsl5EA7JeSAOyXkwDsl5QA7JeVAOyXlgDsl5cA7JeYAOyXmQDsl5oA7JebAOyXnADsl50A7JeeAOyXnwDsl6AA7JehAOyXogDsl6MA7JekAOyXpQDsl6YA7JenAOyXqADsl6kA7JeqAOyXqwDsl6wA7JetAOyXrgDsl68A7JewAOyXsQDsl7IA7JezAOyXtADsl7UA7Je2AOyXtwDsl7gA7Je5AOyXugDsl7sA7Je8AOyXvQDsl74A7Je/AOyYgADsmIEA7JiCAOyYgwDsmIQA7JiFAOyYhgDsmIcA7JiIAOyYiQDsmIoA7JiLAOyYjADsmI0A7JiOAOyYjwDsmJAA7JiRAOyYkgDsmJMA7JiUAOyYlQDsmJYA7JiXAOyYmADsmJkA7JiaAOyYmwDsmJwA7JidAOyYngDsmJ8A7JigAOyYoQDsmKIA7JijAOyYpADsmKUA7JimAOyYpwDsmKgA7JipAOyYqgDsmKsA7JisAOyYrQDsmK4A7JivAOyYsADsmLEA7JiyAOyYswDsmLQA7Ji1AOyYtgDsmLcA7Ji4AOyYuQDsmLoA7Ji7AOyYvADsmL0A7Ji+AOyYvwDsmYAA7JmBAOyZggDsmYMA7JmEAOyZhQDsmYYA7JmHAOyZiADsmYkA7JmKAOyZiwDsmYwA7JmNAOyZjgDsmY8A7JmQAOyZkQDsmZIA7JmTAOyZlADsmZUA7JmWAOyZlwDsmZgA7JmZAOyZmgDsmZsA7JmcAOyZnQDsmZ4A7JmfAOyZoADsmaEA7JmiAOyZowDsmaQA7JmlAOyZpgDsmacA7JmoAOyZqQDsmaoA7JmrAOyZrADsma0A7JmuAOyZrwDsmbAA7JmxAOyZsgDsmbMA7Jm0AOyZtQDsmbYA7Jm3AOyZuADsmbkA7Jm6AOyZuwDsmbwA7Jm9AOyZvgDsmb8A7JqAAOyagQDsmoIA7JqDAOyahADsmoUA7JqGAOyahwDsmogA7JqJAOyaigDsmosA7JqMAOyajQDsmo4A7JqPAOyakADsmpEA7JqSAOyakwDsmpQA7JqVAOyalgDsmpcA7JqYAOyamQDsmpoA7JqbAOyanADsmp0A7JqeAOyanwDsmqAA7JqhAOyaogDsmqMA7JqkAOyapQDsmqYA7JqnAOyaqADsmqkA7JqqAOyaqwDsmqwA7JqtAOyargDsmq8A7JqwAOyasQDsmrIA7JqzAOyatADsmrUA7Jq2AOyatwDsmrgA7Jq5AOyaugDsmrsA7Jq8AOyavQDsmr4A7Jq/AOybgADsm4EA7JuCAOybgwDsm4QA7JuFAOybhgDsm4cA7JuIAOybiQDsm4oA7JuLAOybjADsm40A7JuOAOybjwDsm5AA7JuRAOybkgDsm5MA7JuUAOyblQDsm5YA7JuXAOybmADsm5kA7JuaAOybmwDsm5wA7JudAOybngDsm58A7JugAOyboQDsm6IA7JujAOybpADsm6UA7JumAOybpwDsm6gA7JupAOybqgDsm6sA7JusAOybrQDsm64A7JuvAOybsADsm7EA7JuyAOybswDsm7QA7Ju1AOybtgDsm7cA7Ju4AOybuQDsm7oA7Ju7AOybvADsm70A7Ju+AOybvwDsnIAA7JyBAOycggDsnIMA7JyEAOychQDsnIYA7JyHAOyciADsnIkA7JyKAOyciwDsnIwA7JyNAOycjgDsnI8A7JyQAOyckQDsnJIA7JyTAOyclADsnJUA7JyWAOyclwDsnJgA7JyZAOycmgDsnJsA7JycAOycnQDsnJ4A7JyfAOycoADsnKEA7JyiAOycowDsnKQA7JylAOycpgDsnKcA7JyoAOycqQDsnKoA7JyrAOycrADsnK0A7JyuAOycrwDsnLAA7JyxAOycsgDsnLMA7Jy0AOyctQDsnLYA7Jy3AOycuADsnLkA7Jy6AOycuwDsnLwA7Jy9AOycvgDsnL8A7J2AAOydgQDsnYIA7J2DAOydhADsnYUA7J2GAOydhwDsnYgA7J2JAOydigDsnYsA7J2MAOydjQDsnY4A7J2PAOydkADsnZEA7J2SAOydkwDsnZQA7J2VAOydlgDsnZcA7J2YAOydmQDsnZoA7J2bAOydnADsnZ0A7J2eAOydnwDsnaAA7J2hAOydogDsnaMA7J2kAOydpQDsnaYA7J2nAOydqADsnakA7J2qAOydqwDsnawA7J2tAOydrgDsna8A7J2wAOydsQDsnbIA7J2zAOydtADsnbUA7J22AOydtwDsnbgA7J25AOydugDsnbsA7J28AOydvQDsnb4A7J2/AOyegADsnoEA7J6CAOyegwDsnoQA7J6FAOyehgDsnocA7J6IAOyeiQDsnooA7J6LAOyejADsno0A7J6OAOyejwDsnpAA7J6RAOyekgDsnpMA7J6UAOyelQDsnpYA7J6XAOyemADsnpkA7J6aAOyemwDsnpwA7J6dAOyengDsnp8A7J6gAOyeoQDsnqIA7J6jAOyepADsnqUA7J6mAOyepwDsnqgA7J6pAOyeqgDsnqsA7J6sAOyerQDsnq4A7J6vAOyesADsnrEA7J6yAOyeswDsnrQA7J61AOyetgDsnrcA7J64AOyeuQDsnroA7J67AOyevADsnr0A7J6+AOyevwDsn4AA7J+BAOyfggDsn4MA7J+EAOyfhQDsn4YA7J+HAOyfiADsn4kA7J+KAOyfiwDsn4wA7J+NAOyfjgDsn48A7J+QAOyfkQDsn5IA7J+TAOyflADsn5UA7J+WAOyflwDsn5gA7J+ZAOyfmgDsn5sA7J+cAOyfnQDsn54A7J+fAOyfoADsn6EA7J+iAOyfowDsn6QA7J+lAOyfpgDsn6cA7J+oAOyfqQDsn6oA7J+rAOyfrADsn60A7J+uAOyfrwDsn7AA7J+xAOyfsgDsn7MA7J+0AOyftQDsn7YA7J+3AOyfuADsn7kA7J+6AOyfuwDsn7wA7J+9AOyfvgDsn78A7KCAAOyggQDsoIIA7KCDAOyghADsoIUA7KCGAOyghwDsoIgA7KCJAOygigDsoIsA7KCMAOygjQDsoI4A7KCPAOygkADsoJEA7KCSAOygkwDsoJQA7KCVAOyglgDsoJcA7KCYAOygmQDsoJoA7KCbAOygnADsoJ0A7KCeAOygnwDsoKAA7KChAOygogDsoKMA7KCkAOygpQDsoKYA7KCnAOygqADsoKkA7KCqAOygqwDsoKwA7KCtAOygrgDsoK8A7KCwAOygsQDsoLIA7KCzAOygtADsoLUA7KC2AOygtwDsoLgA7KC5AOygugDsoLsA7KC8AOygvQDsoL4A7KC/AOyhgADsoYEA7KGCAOyhgwDsoYQA7KGFAOyhhgDsoYcA7KGIAOyhiQDsoYoA7KGLAOyhjADsoY0A7KGOAOyhjwDsoZAA7KGRAOyhkgDsoZMA7KGUAOyhlQDsoZYA7KGXAOyhmADsoZkA7KGaAOyhmwDsoZwA7KGdAOyhngDsoZ8A7KGgAOyhoQDsoaIA7KGjAOyhpADsoaUA7KGmAOyhpwDsoagA7KGpAOyhqgDsoasA7KGsAOyhrQDsoa4A7KGvAOyhsADsobEA7KGyAOyhswDsobQA7KG1AOyhtgDsobcA7KG4AOyhuQDsoboA7KG7AOyhvADsob0A7KG+AOyhvwDsooAA7KKBAOyiggDsooMA7KKEAOyihQDsooYA7KKHAOyiiADsookA7KKKAOyiiwDsoowA7KKNAOyijgDsoo8A7KKQAOyikQDsopIA7KKTAOyilADsopUA7KKWAOyilwDsopgA7KKZAOyimgDsopsA7KKcAOyinQDsop4A7KKfAOyioADsoqEA7KKiAOyiowDsoqQA7KKlAOyipgDsoqcA7KKoAOyiqQDsoqoA7KKrAOyirADsoq0A7KKuAOyirwDsorAA7KKxAOyisgDsorMA7KK0AOyitQDsorYA7KK3AOyiuADsorkA7KK6AOyiuwDsorwA7KK9AOyivgDsor8A7KOAAOyjgQDso4IA7KODAOyjhADso4UA7KOGAOyjhwDso4gA7KOJAOyjigDso4sA7KOMAOyjjQDso44A7KOPAOyjkADso5EA7KOSAOyjkwDso5QA7KOVAOyjlgDso5cA7KOYAOyjmQDso5oA7KObAOyjnADso50A7KOeAOyjnwDso6AA7KOhAOyjogDso6MA7KOkAOyjpQDso6YA7KOnAOyjqADso6kA7KOqAOyjqwDso6wA7KOtAOyjrgDso68A7KOwAOyjsQDso7IA7KOzAOyjtADso7UA7KO2AOyjtwDso7gA7KO5AOyjugDso7sA7KO8AOyjvOydmADso70A7KO+AOyjvwDspIAA7KSBAOykggDspIMA7KSEAOykhQDspIYA7KSHAOykiADspIkA7KSKAOykiwDspIwA7KSNAOykjgDspI8A7KSQAOykkQDspJIA7KSTAOyklADspJUA7KSWAOyklwDspJgA7KSZAOykmgDspJsA7KScAOyknQDspJ4A7KSfAOykoADspKEA7KSiAOykowDspKQA7KSlAOykpgDspKcA7KSoAOykqQDspKoA7KSrAOykrADspK0A7KSuAOykrwDspLAA7KSxAOyksgDspLMA7KS0AOyktQDspLYA7KS3AOykuADspLkA7KS6AOykuwDspLwA7KS9AOykvgDspL8A7KWAAOylgQDspYIA7KWDAOylhADspYUA7KWGAOylhwDspYgA7KWJAOyligDspYsA7KWMAOyljQDspY4A7KWPAOylkADspZEA7KWSAOylkwDspZQA7KWVAOyllgDspZcA7KWYAOylmQDspZoA7KWbAOylnADspZ0A7KWeAOylnwDspaAA7KWhAOylogDspaMA7KWkAOylpQDspaYA7KWnAOylqADspakA7KWqAOylqwDspawA7KWtAOylrgDspa8A7KWwAOylsQDspbIA7KWzAOyltADspbUA7KW2AOyltwDspbgA7KW5AOylugDspbsA7KW8AOylvQDspb4A7KW/AOymgADspoEA7KaCAOymgwDspoQA7KaFAOymhgDspocA7KaIAOymiQDspooA7KaLAOymjADspo0A7KaOAOymjwDsppAA7KaRAOymkgDsppMA7KaUAOymlQDsppYA7KaXAOymmADsppkA7KaaAOymmwDsppwA7KadAOymngDspp8A7KagAOymoQDspqIA7KajAOympADspqUA7KamAOympwDspqgA7KapAOymqgDspqsA7KasAOymrQDspq4A7KavAOymsADsprEA7KayAOymswDsprQA7Ka1AOymtgDsprcA7Ka4AOymuQDsproA7Ka7AOymvADspr0A7Ka+AOymvwDsp4AA7KeBAOynggDsp4MA7KeEAOynhQDsp4YA7KeHAOyniADsp4kA7KeKAOyniwDsp4wA7KeNAOynjgDsp48A7KeQAOynkQDsp5IA7KeTAOynlADsp5UA7KeWAOynlwDsp5gA7KeZAOynmgDsp5sA7KecAOynnQDsp54A7KefAOynoADsp6EA7KeiAOynowDsp6QA7KelAOynpgDsp6cA7KeoAOynqQDsp6oA7KerAOynrADsp60A7KeuAOynrwDsp7AA7KexAOynsgDsp7MA7Ke0AOyntQDsp7YA7Ke3AOynuADsp7kA7Ke6AOynuwDsp7wA7Ke9AOynvgDsp78A7KiAAOyogQDsqIIA7KiDAOyohADsqIUA7KiGAOyohwDsqIgA7KiJAOyoigDsqIsA7KiMAOyojQDsqI4A7KiPAOyokADsqJEA7KiSAOyokwDsqJQA7KiVAOyolgDsqJcA7KiYAOyomQDsqJoA7KibAOyonADsqJ0A7KieAOyonwDsqKAA7KihAOyoogDsqKMA7KikAOyopQDsqKYA7KinAOyoqADsqKkA7KiqAOyoqwDsqKwA7KitAOyorgDsqK8A7KiwAOyosQDsqLIA7KizAOyotADsqLUA7Ki2AOyotwDsqLgA7Ki5AOyougDsqLsA7Ki8AOyovQDsqL4A7Ki/AOypgADsqYEA7KmCAOypgwDsqYQA7KmFAOyphgDsqYcA7KmIAOypiQDsqYoA7KmLAOypjADsqY0A7KmOAOypjwDsqZAA7KmRAOypkgDsqZMA7KmUAOyplQDsqZYA7KmXAOypmADsqZkA7KmaAOypmwDsqZwA7KmdAOypngDsqZ8A7KmgAOypoQDsqaIA7KmjAOyppADsqaUA7KmmAOyppwDsqagA7KmpAOypqgDsqasA7KmsAOyprQDsqa4A7KmvAOypsADsqbEA7KmyAOypswDsqbQA7Km1AOyptgDsqbcA7Km4AOypuQDsqboA7Km7AOypvADsqb0A7Km+AOypvwDsqoAA7KqBAOyqggDsqoMA7KqEAOyqhQDsqoYA7KqHAOyqiADsqokA7KqKAOyqiwDsqowA7KqNAOyqjgDsqo8A7KqQAOyqkQDsqpIA7KqTAOyqlADsqpUA7KqWAOyqlwDsqpgA7KqZAOyqmgDsqpsA7KqcAOyqnQDsqp4A7KqfAOyqoADsqqEA7KqiAOyqowDsqqQA7KqlAOyqpgDsqqcA7KqoAOyqqQDsqqoA7KqrAOyqrADsqq0A7KquAOyqrwDsqrAA7KqxAOyqsgDsqrMA7Kq0AOyqtQDsqrYA7Kq3AOyquADsqrkA7Kq6AOyquwDsqrwA7Kq9AOyqvgDsqr8A7KuAAOyrgQDsq4IA7KuDAOyrhADsq4UA7KuGAOyrhwDsq4gA7KuJAOyrigDsq4sA7KuMAOyrjQDsq44A7KuPAOyrkADsq5EA7KuSAOyrkwDsq5QA7KuVAOyrlgDsq5cA7KuYAOyrmQDsq5oA7KubAOyrnADsq50A7KueAOyrnwDsq6AA7KuhAOyrogDsq6MA7KukAOyrpQDsq6YA7KunAOyrqADsq6kA7KuqAOyrqwDsq6wA7KutAOyrrgDsq68A7KuwAOyrsQDsq7IA7KuzAOyrtADsq7UA7Ku2AOyrtwDsq7gA7Ku5AOyrugDsq7sA7Ku8AOyrvQDsq74A7Ku/AOysgADsrIEA7KyCAOysgwDsrIQA7KyFAOyshgDsrIcA7KyIAOysiQDsrIoA7KyLAOysjADsrI0A7KyOAOysjwDsrJAA7KyRAOyskgDsrJMA7KyUAOyslQDsrJYA7KyXAOysmADsrJkA7KyaAOysmwDsrJwA7KydAOysngDsrJ8A7KygAOysoQDsrKIA7KyjAOyspADsrKUA7KymAOyspwDsrKgA7KypAOysqgDsrKsA7KysAOysrQDsrK4A7KyvAOyssADsrLEA7KyyAOysswDsrLQA7Ky1AOystgDsrLcA7Ky4AOysuQDsrLoA7Ky7AOysvADsrL0A7Ky+AOysvwDsrYAA7K2BAOytggDsrYMA7K2EAOythQDsrYYA7K2HAOytiADsrYkA7K2KAOytiwDsrYwA7K2NAOytjgDsrY8A7K2QAOytkQDsrZIA7K2TAOytlADsrZUA7K2WAOytlwDsrZgA7K2ZAOytmgDsrZsA7K2cAOytnQDsrZ4A7K2fAOytoADsraEA7K2iAOytowDsraQA7K2lAOytpgDsracA7K2oAOytqQDsraoA7K2rAOytrADsra0A7K2uAOytrwDsrbAA7K2xAOytsgDsrbMA7K20AOyttQDsrbYA7K23AOytuADsrbkA7K26AOytuwDsrbwA7K29AOytvgDsrb8A7K6AAOyugQDsroIA7K6DAOyuhADsroUA7K6GAOyuhwDsrogA7K6JAOyuigDsrosA7K6MAOyujQDsro4A7K6PAOyukADsrpEA7K6SAOyukwDsrpQA7K6VAOyulgDsrpcA7K6YAOyumQDsrpoA7K6bAOyunADsrp0A7K6eAOyunwDsrqAA7K6hAOyuogDsrqMA7K6kAOyupQDsrqYA7K6nAOyuqADsrqkA7K6qAOyuqwDsrqwA7K6tAOyurgDsrq8A7K6wAOyusQDsrrIA7K6zAOyutADsrrUA7K62AOyutwDsrrgA7K65AOyuugDsrrsA7K68AOyuvQDsrr4A7K6/AOyvgADsr4EA7K+CAOyvgwDsr4QA7K+FAOyvhgDsr4cA7K+IAOyviQDsr4oA7K+LAOyvjADsr40A7K+OAOyvjwDsr5AA7K+RAOyvkgDsr5MA7K+UAOyvlQDsr5YA7K+XAOyvmADsr5kA7K+aAOyvmwDsr5wA7K+dAOyvngDsr58A7K+gAOyvoQDsr6IA7K+jAOyvpADsr6UA7K+mAOyvpwDsr6gA7K+pAOyvqgDsr6sA7K+sAOyvrQDsr64A7K+vAOyvsADsr7EA7K+yAOyvswDsr7QA7K+1AOyvtgDsr7cA7K+4AOyvuQDsr7oA7K+7AOyvvADsr70A7K++AOyvvwDssIAA7LCBAOywggDssIMA7LCEAOywhQDssIYA7LCHAOywiADssIkA7LCKAOywiwDssIwA7LCNAOywjgDssI8A7LCQAOywkQDssJIA7LCTAOywlADssJUA7LCWAOywlwDssJgA7LCZAOywmgDssJsA7LCcAOywnQDssJ4A7LCfAOywoADssKEA7LCiAOywowDssKQA7LClAOywpgDssKcA7LCoAOywqQDssKoA7LCrAOywrADssK0A7LCuAOywrwDssLAA7LCxAOywsgDssLMA7LC0AOywtQDssLYA7LC3AOywuADssLjqs6AA7LC5AOywugDssLsA7LC8AOywvQDssL4A7LC/AOyxgADssYEA7LGCAOyxgwDssYQA7LGFAOyxhgDssYcA7LGIAOyxiQDssYoA7LGLAOyxjADssY0A7LGOAOyxjwDssZAA7LGRAOyxkgDssZMA7LGUAOyxlQDssZYA7LGXAOyxmADssZkA7LGaAOyxmwDssZwA7LGdAOyxngDssZ8A7LGgAOyxoQDssaIA7LGjAOyxpADssaUA7LGmAOyxpwDssagA7LGpAOyxqgDssasA7LGsAOyxrQDssa4A7LGvAOyxsADssbEA7LGyAOyxswDssbQA7LG1AOyxtgDssbcA7LG4AOyxuQDssboA7LG7AOyxvADssb0A7LG+AOyxvwDssoAA7LKBAOyyggDssoMA7LKEAOyyhQDssoYA7LKHAOyyiADssokA7LKKAOyyiwDssowA7LKNAOyyjgDsso8A7LKQAOyykQDsspIA7LKTAOyylADsspUA7LKWAOyylwDsspgA7LKZAOyymgDsspsA7LKcAOyynQDssp4A7LKfAOyyoADssqEA7LKiAOyyowDssqQA7LKlAOyypgDssqcA7LKoAOyyqQDssqoA7LKrAOyyrADssq0A7LKuAOyyrwDssrAA7LKxAOyysgDssrMA7LK0AOyytQDssrYA7LK3AOyyuADssrkA7LK6AOyyuwDssrwA7LK9AOyyvgDssr8A7LOAAOyzgQDss4IA7LODAOyzhADss4UA7LOGAOyzhwDss4gA7LOJAOyzigDss4sA7LOMAOyzjQDss44A7LOPAOyzkADss5EA7LOSAOyzkwDss5QA7LOVAOyzlgDss5cA7LOYAOyzmQDss5oA7LObAOyznADss50A7LOeAOyznwDss6AA7LOhAOyzogDss6MA7LOkAOyzpQDss6YA7LOnAOyzqADss6kA7LOqAOyzqwDss6wA7LOtAOyzrgDss68A7LOwAOyzsQDss7IA7LOzAOyztADss7UA7LO2AOyztwDss7gA7LO5AOyzugDss7sA7LO8AOyzvQDss74A7LO/AOy0gADstIEA7LSCAOy0gwDstIQA7LSFAOy0hgDstIcA7LSIAOy0iQDstIoA7LSLAOy0jADstI0A7LSOAOy0jwDstJAA7LSRAOy0kgDstJMA7LSUAOy0lQDstJYA7LSXAOy0mADstJkA7LSaAOy0mwDstJwA7LSdAOy0ngDstJ8A7LSgAOy0oQDstKIA7LSjAOy0pADstKUA7LSmAOy0pwDstKgA7LSpAOy0qgDstKsA7LSsAOy0rQDstK4A7LSvAOy0sADstLEA7LSyAOy0swDstLQA7LS1AOy0tgDstLcA7LS4AOy0uQDstLoA7LS7AOy0vADstL0A7LS+AOy0vwDstYAA7LWBAOy1ggDstYMA7LWEAOy1hQDstYYA7LWHAOy1iADstYkA7LWKAOy1iwDstYwA7LWNAOy1jgDstY8A7LWQAOy1kQDstZIA7LWTAOy1lADstZUA7LWWAOy1lwDstZgA7LWZAOy1mgDstZsA7LWcAOy1nQDstZ4A7LWfAOy1oADstaEA7LWiAOy1owDstaQA7LWlAOy1pgDstacA7LWoAOy1qQDstaoA7LWrAOy1rADsta0A7LWuAOy1rwDstbAA7LWxAOy1sgDstbMA7LW0AOy1tQDstbYA7LW3AOy1uADstbkA7LW6AOy1uwDstbwA7LW9AOy1vgDstb8A7LaAAOy2gQDstoIA7LaDAOy2hADstoUA7LaGAOy2hwDstogA7LaJAOy2igDstosA7LaMAOy2jQDsto4A7LaPAOy2kADstpEA7LaSAOy2kwDstpQA7LaVAOy2lgDstpcA7LaYAOy2mQDstpoA7LabAOy2nADstp0A7LaeAOy2nwDstqAA7LahAOy2ogDstqMA7LakAOy2pQDstqYA7LanAOy2qADstqkA7LaqAOy2qwDstqwA7LatAOy2rgDstq8A7LawAOy2sQDstrIA7LazAOy2tADstrUA7La2AOy2twDstrgA7La5AOy2ugDstrsA7La8AOy2vQDstr4A7La/AOy3gADst4EA7LeCAOy3gwDst4QA7LeFAOy3hgDst4cA7LeIAOy3iQDst4oA7LeLAOy3jADst40A7LeOAOy3jwDst5AA7LeRAOy3kgDst5MA7LeUAOy3lQDst5YA7LeXAOy3mADst5kA7LeaAOy3mwDst5wA7LedAOy3ngDst58A7LegAOy3oQDst6IA7LejAOy3pADst6UA7LemAOy3pwDst6gA7LepAOy3qgDst6sA7LesAOy3rQDst64A7LevAOy3sADst7EA7LeyAOy3swDst7QA7Le1AOy3tgDst7cA7Le4AOy3uQDst7oA7Le7AOy3vADst70A7Le+AOy3vwDsuIAA7LiBAOy4ggDsuIMA7LiEAOy4hQDsuIYA7LiHAOy4iADsuIkA7LiKAOy4iwDsuIwA7LiNAOy4jgDsuI8A7LiQAOy4kQDsuJIA7LiTAOy4lADsuJUA7LiWAOy4lwDsuJgA7LiZAOy4mgDsuJsA7LicAOy4nQDsuJ4A7LifAOy4oADsuKEA7LiiAOy4owDsuKQA7LilAOy4pgDsuKcA7LioAOy4qQDsuKoA7LirAOy4rADsuK0A7LiuAOy4rwDsuLAA7LixAOy4sgDsuLMA7Li0AOy4tQDsuLYA7Li3AOy4uADsuLkA7Li6AOy4uwDsuLwA7Li9AOy4vgDsuL8A7LmAAOy5gQDsuYIA7LmDAOy5hADsuYUA7LmGAOy5hwDsuYgA7LmJAOy5igDsuYsA7LmMAOy5jQDsuY4A7LmPAOy5kADsuZEA7LmSAOy5kwDsuZQA7LmVAOy5lgDsuZcA7LmYAOy5mQDsuZoA7LmbAOy5nADsuZ0A7LmeAOy5nwDsuaAA7LmhAOy5ogDsuaMA7LmkAOy5pQDsuaYA7LmnAOy5qADsuakA7LmqAOy5qwDsuawA7LmtAOy5rgDsua8A7LmwAOy5sQDsubIA7LmzAOy5tADsubUA7Lm2AOy5twDsubgA7Lm5AOy5ugDsubsA7Lm8AOy5vQDsub4A7Lm/AOy6gADsuoEA7LqCAOy6gwDsuoQA7LqFAOy6hgDsuocA7LqIAOy6iQDsuooA7LqLAOy6jADsuo0A7LqOAOy6jwDsupAA7LqRAOy6kgDsupMA7LqUAOy6lQDsupYA7LqXAOy6mADsupkA7LqaAOy6mwDsupwA7LqdAOy6ngDsup8A7LqgAOy6oQDsuqIA7LqjAOy6pADsuqUA7LqmAOy6pwDsuqgA7LqpAOy6qgDsuqsA7LqsAOy6rQDsuq4A7LqvAOy6sADsurEA7LqyAOy6swDsurQA7Lq1AOy6tgDsurcA7Lq4AOy6uQDsuroA7Lq7AOy6vADsur0A7Lq+AOy6vwDsu4AA7LuBAOy7ggDsu4MA7LuEAOy7hQDsu4YA7LuHAOy7iADsu4kA7LuKAOy7iwDsu4wA7LuNAOy7jgDsu48A7LuQAOy7kQDsu5IA7LuTAOy7lADsu5UA7LuWAOy7lwDsu5gA7LuZAOy7mgDsu5sA7LucAOy7nQDsu54A7LufAOy7oADsu6EA7LuiAOy7owDsu6QA7LulAOy7pgDsu6cA7LuoAOy7qQDsu6oA7LurAOy7rADsu60A7LuuAOy7rwDsu7AA7LuxAOy7sgDsu7MA7Lu0AOy7tQDsu7YA7Lu3AOy7uADsu7kA7Lu6AOy7uwDsu7wA7Lu9AOy7vgDsu78A7LyAAOy8gQDsvIIA7LyDAOy8hADsvIUA7LyGAOy8hwDsvIgA7LyJAOy8igDsvIsA7LyMAOy8jQDsvI4A7LyPAOy8kADsvJEA7LySAOy8kwDsvJQA7LyVAOy8lgDsvJcA7LyYAOy8mQDsvJoA7LybAOy8nADsvJ0A7LyeAOy8nwDsvKAA7LyhAOy8ogDsvKMA7LykAOy8pQDsvKYA7LynAOy8qADsvKkA7LyqAOy8qwDsvKwA7LytAOy8rgDsvK8A7LywAOy8sQDsvLIA7LyzAOy8tADsvLUA7Ly2AOy8twDsvLgA7Ly5AOy8ugDsvLsA7Ly8AOy8vQDsvL4A7Ly/AOy9gADsvYEA7L2CAOy9gwDsvYQA7L2FAOy9hgDsvYcA7L2IAOy9iQDsvYoA7L2LAOy9jADsvY0A7L2OAOy9jwDsvZAA7L2RAOy9kgDsvZMA7L2UAOy9lQDsvZYA7L2XAOy9mADsvZkA7L2aAOy9mwDsvZwA7L2dAOy9ngDsvZ8A7L2gAOy9oQDsvaIA7L2jAOy9pADsvaUA7L2mAOy9pwDsvagA7L2pAOy9qgDsvasA7L2sAOy9rQDsva4A7L2vAOy9sADsvbEA7L2yAOy9swDsvbQA7L21AOy9tgDsvbcA7L24AOy9uQDsvboA7L27AOy9vADsvb0A7L2+AOy9vwDsvoAA7L6BAOy+ggDsvoMA7L6EAOy+hQDsvoYA7L6HAOy+iADsvokA7L6KAOy+iwDsvowA7L6NAOy+jgDsvo8A7L6QAOy+kQDsvpIA7L6TAOy+lADsvpUA7L6WAOy+lwDsvpgA7L6ZAOy+mgDsvpsA7L6cAOy+nQDsvp4A7L6fAOy+oADsvqEA7L6iAOy+owDsvqQA7L6lAOy+pgDsvqcA7L6oAOy+qQDsvqoA7L6rAOy+rADsvq0A7L6uAOy+rwDsvrAA7L6xAOy+sgDsvrMA7L60AOy+tQDsvrYA7L63AOy+uADsvrkA7L66AOy+uwDsvrwA7L69AOy+vgDsvr8A7L+AAOy/gQDsv4IA7L+DAOy/hADsv4UA7L+GAOy/hwDsv4gA7L+JAOy/igDsv4sA7L+MAOy/jQDsv44A7L+PAOy/kADsv5EA7L+SAOy/kwDsv5QA7L+VAOy/lgDsv5cA7L+YAOy/mQDsv5oA7L+bAOy/nADsv50A7L+eAOy/nwDsv6AA7L+hAOy/ogDsv6MA7L+kAOy/pQDsv6YA7L+nAOy/qADsv6kA7L+qAOy/qwDsv6wA7L+tAOy/rgDsv68A7L+wAOy/sQDsv7IA7L+zAOy/tADsv7UA7L+2AOy/twDsv7gA7L+5AOy/ugDsv7sA7L+8AOy/vQDsv74A7L+/AO2AgADtgIEA7YCCAO2AgwDtgIQA7YCFAO2AhgDtgIcA7YCIAO2AiQDtgIoA7YCLAO2AjADtgI0A7YCOAO2AjwDtgJAA7YCRAO2AkgDtgJMA7YCUAO2AlQDtgJYA7YCXAO2AmADtgJkA7YCaAO2AmwDtgJwA7YCdAO2AngDtgJ8A7YCgAO2AoQDtgKIA7YCjAO2ApADtgKUA7YCmAO2ApwDtgKgA7YCpAO2AqgDtgKsA7YCsAO2ArQDtgK4A7YCvAO2AsADtgLEA7YCyAO2AswDtgLQA7YC1AO2AtgDtgLcA7YC4AO2AuQDtgLoA7YC7AO2AvADtgL0A7YC+AO2AvwDtgYAA7YGBAO2BggDtgYMA7YGEAO2BhQDtgYYA7YGHAO2BiADtgYkA7YGKAO2BiwDtgYwA7YGNAO2BjgDtgY8A7YGQAO2BkQDtgZIA7YGTAO2BlADtgZUA7YGWAO2BlwDtgZgA7YGZAO2BmgDtgZsA7YGcAO2BnQDtgZ4A7YGfAO2BoADtgaEA7YGiAO2BowDtgaQA7YGlAO2BpgDtgacA7YGoAO2BqQDtgaoA7YGrAO2BrADtga0A7YGuAO2BrwDtgbAA7YGxAO2BsgDtgbMA7YG0AO2BtQDtgbYA7YG3AO2BuADtgbkA7YG6AO2BuwDtgbwA7YG9AO2BvgDtgb8A7YKAAO2CgQDtgoIA7YKDAO2ChADtgoUA7YKGAO2ChwDtgogA7YKJAO2CigDtgosA7YKMAO2CjQDtgo4A7YKPAO2CkADtgpEA7YKSAO2CkwDtgpQA7YKVAO2ClgDtgpcA7YKYAO2CmQDtgpoA7YKbAO2CnADtgp0A7YKeAO2CnwDtgqAA7YKhAO2CogDtgqMA7YKkAO2CpQDtgqYA7YKnAO2CqADtgqkA7YKqAO2CqwDtgqwA7YKtAO2CrgDtgq8A7YKwAO2CsQDtgrIA7YKzAO2CtADtgrUA7YK2AO2CtwDtgrgA7YK5AO2CugDtgrsA7YK8AO2CvQDtgr4A7YK/AO2DgADtg4EA7YOCAO2DgwDtg4QA7YOFAO2DhgDtg4cA7YOIAO2DiQDtg4oA7YOLAO2DjADtg40A7YOOAO2DjwDtg5AA7YORAO2DkgDtg5MA7YOUAO2DlQDtg5YA7YOXAO2DmADtg5kA7YOaAO2DmwDtg5wA7YOdAO2DngDtg58A7YOgAO2DoQDtg6IA7YOjAO2DpADtg6UA7YOmAO2DpwDtg6gA7YOpAO2DqgDtg6sA7YOsAO2DrQDtg64A7YOvAO2DsADtg7EA7YOyAO2DswDtg7QA7YO1AO2DtgDtg7cA7YO4AO2DuQDtg7oA7YO7AO2DvADtg70A7YO+AO2DvwDthIAA7YSBAO2EggDthIMA7YSEAO2EhQDthIYA7YSHAO2EiADthIkA7YSKAO2EiwDthIwA7YSNAO2EjgDthI8A7YSQAO2EkQDthJIA7YSTAO2ElADthJUA7YSWAO2ElwDthJgA7YSZAO2EmgDthJsA7YScAO2EnQDthJ4A7YSfAO2EoADthKEA7YSiAO2EowDthKQA7YSlAO2EpgDthKcA7YSoAO2EqQDthKoA7YSrAO2ErADthK0A7YSuAO2ErwDthLAA7YSxAO2EsgDthLMA7YS0AO2EtQDthLYA7YS3AO2EuADthLkA7YS6AO2EuwDthLwA7YS9AO2EvgDthL8A7YWAAO2FgQDthYIA7YWDAO2FhADthYUA7YWGAO2FhwDthYgA7YWJAO2FigDthYsA7YWMAO2FjQDthY4A7YWPAO2FkADthZEA7YWSAO2FkwDthZQA7YWVAO2FlgDthZcA7YWYAO2FmQDthZoA7YWbAO2FnADthZ0A7YWeAO2FnwDthaAA7YWhAO2FogDthaMA7YWkAO2FpQDthaYA7YWnAO2FqADthakA7YWqAO2FqwDthawA7YWtAO2FrgDtha8A7YWwAO2FsQDthbIA7YWzAO2FtADthbUA7YW2AO2FtwDthbgA7YW5AO2FugDthbsA7YW8AO2FvQDthb4A7YW/AO2GgADthoEA7YaCAO2GgwDthoQA7YaFAO2GhgDthocA7YaIAO2GiQDthooA7YaLAO2GjADtho0A7YaOAO2GjwDthpAA7YaRAO2GkgDthpMA7YaUAO2GlQDthpYA7YaXAO2GmADthpkA7YaaAO2GmwDthpwA7YadAO2GngDthp8A7YagAO2GoQDthqIA7YajAO2GpADthqUA7YamAO2GpwDthqgA7YapAO2GqgDthqsA7YasAO2GrQDthq4A7YavAO2GsADthrEA7YayAO2GswDthrQA7Ya1AO2GtgDthrcA7Ya4AO2GuQDthroA7Ya7AO2GvADthr0A7Ya+AO2GvwDth4AA7YeBAO2HggDth4MA7YeEAO2HhQDth4YA7YeHAO2HiADth4kA7YeKAO2HiwDth4wA7YeNAO2HjgDth48A7YeQAO2HkQDth5IA7YeTAO2HlADth5UA7YeWAO2HlwDth5gA7YeZAO2HmgDth5sA7YecAO2HnQDth54A7YefAO2HoADth6EA7YeiAO2HowDth6QA7YelAO2HpgDth6cA7YeoAO2HqQDth6oA7YerAO2HrADth60A7YeuAO2HrwDth7AA7YexAO2HsgDth7MA7Ye0AO2HtQDth7YA7Ye3AO2HuADth7kA7Ye6AO2HuwDth7wA7Ye9AO2HvgDth78A7YiAAO2IgQDtiIIA7YiDAO2IhADtiIUA7YiGAO2IhwDtiIgA7YiJAO2IigDtiIsA7YiMAO2IjQDtiI4A7YiPAO2IkADtiJEA7YiSAO2IkwDtiJQA7YiVAO2IlgDtiJcA7YiYAO2ImQDtiJoA7YibAO2InADtiJ0A7YieAO2InwDtiKAA7YihAO2IogDtiKMA7YikAO2IpQDtiKYA7YinAO2IqADtiKkA7YiqAO2IqwDtiKwA7YitAO2IrgDtiK8A7YiwAO2IsQDtiLIA7YizAO2ItADtiLUA7Yi2AO2ItwDtiLgA7Yi5AO2IugDtiLsA7Yi8AO2IvQDtiL4A7Yi/AO2JgADtiYEA7YmCAO2JgwDtiYQA7YmFAO2JhgDtiYcA7YmIAO2JiQDtiYoA7YmLAO2JjADtiY0A7YmOAO2JjwDtiZAA7YmRAO2JkgDtiZMA7YmUAO2JlQDtiZYA7YmXAO2JmADtiZkA7YmaAO2JmwDtiZwA7YmdAO2JngDtiZ8A7YmgAO2JoQDtiaIA7YmjAO2JpADtiaUA7YmmAO2JpwDtiagA7YmpAO2JqgDtiasA7YmsAO2JrQDtia4A7YmvAO2JsADtibEA7YmyAO2JswDtibQA7Ym1AO2JtgDtibcA7Ym4AO2JuQDtiboA7Ym7AO2JvADtib0A7Ym+AO2JvwDtioAA7YqBAO2KggDtioMA7YqEAO2KhQDtioYA7YqHAO2KiADtiokA7YqKAO2KiwDtiowA7YqNAO2KjgDtio8A7YqQAO2KkQDtipIA7YqTAO2KlADtipUA7YqWAO2KlwDtipgA7YqZAO2KmgDtipsA7YqcAO2KnQDtip4A7YqfAO2KoADtiqEA7YqiAO2KowDtiqQA7YqlAO2KpgDtiqcA7YqoAO2KqQDtiqoA7YqrAO2KrADtiq0A7YquAO2KrwDtirAA7YqxAO2KsgDtirMA7Yq0AO2KtQDtirYA7Yq3AO2KuADtirkA7Yq6AO2KuwDtirwA7Yq9AO2KvgDtir8A7YuAAO2LgQDti4IA7YuDAO2LhADti4UA7YuGAO2LhwDti4gA7YuJAO2LigDti4sA7YuMAO2LjQDti44A7YuPAO2LkADti5EA7YuSAO2LkwDti5QA7YuVAO2LlgDti5cA7YuYAO2LmQDti5oA7YubAO2LnADti50A7YueAO2LnwDti6AA7YuhAO2LogDti6MA7YukAO2LpQDti6YA7YunAO2LqADti6kA7YuqAO2LqwDti6wA7YutAO2LrgDti68A7YuwAO2LsQDti7IA7YuzAO2LtADti7UA7Yu2AO2LtwDti7gA7Yu5AO2LugDti7sA7Yu8AO2LvQDti74A7Yu/AO2MgADtjIEA7YyCAO2MgwDtjIQA7YyFAO2MhgDtjIcA7YyIAO2MiQDtjIoA7YyLAO2MjADtjI0A7YyOAO2MjwDtjJAA7YyRAO2MkgDtjJMA7YyUAO2MlQDtjJYA7YyXAO2MmADtjJkA7YyaAO2MmwDtjJwA7YydAO2MngDtjJ8A7YygAO2MoQDtjKIA7YyjAO2MpADtjKUA7YymAO2MpwDtjKgA7YypAO2MqgDtjKsA7YysAO2MrQDtjK4A7YyvAO2MsADtjLEA7YyyAO2MswDtjLQA7Yy1AO2MtgDtjLcA7Yy4AO2MuQDtjLoA7Yy7AO2MvADtjL0A7Yy+AO2MvwDtjYAA7Y2BAO2NggDtjYMA7Y2EAO2NhQDtjYYA7Y2HAO2NiADtjYkA7Y2KAO2NiwDtjYwA7Y2NAO2NjgDtjY8A7Y2QAO2NkQDtjZIA7Y2TAO2NlADtjZUA7Y2WAO2NlwDtjZgA7Y2ZAO2NmgDtjZsA7Y2cAO2NnQDtjZ4A7Y2fAO2NoADtjaEA7Y2iAO2NowDtjaQA7Y2lAO2NpgDtjacA7Y2oAO2NqQDtjaoA7Y2rAO2NrADtja0A7Y2uAO2NrwDtjbAA7Y2xAO2NsgDtjbMA7Y20AO2NtQDtjbYA7Y23AO2NuADtjbkA7Y26AO2NuwDtjbwA7Y29AO2NvgDtjb8A7Y6AAO2OgQDtjoIA7Y6DAO2OhADtjoUA7Y6GAO2OhwDtjogA7Y6JAO2OigDtjosA7Y6MAO2OjQDtjo4A7Y6PAO2OkADtjpEA7Y6SAO2OkwDtjpQA7Y6VAO2OlgDtjpcA7Y6YAO2OmQDtjpoA7Y6bAO2OnADtjp0A7Y6eAO2OnwDtjqAA7Y6hAO2OogDtjqMA7Y6kAO2OpQDtjqYA7Y6nAO2OqADtjqkA7Y6qAO2OqwDtjqwA7Y6tAO2OrgDtjq8A7Y6wAO2OsQDtjrIA7Y6zAO2OtADtjrUA7Y62AO2OtwDtjrgA7Y65AO2OugDtjrsA7Y68AO2OvQDtjr4A7Y6/AO2PgADtj4EA7Y+CAO2PgwDtj4QA7Y+FAO2PhgDtj4cA7Y+IAO2PiQDtj4oA7Y+LAO2PjADtj40A7Y+OAO2PjwDtj5AA7Y+RAO2PkgDtj5MA7Y+UAO2PlQDtj5YA7Y+XAO2PmADtj5kA7Y+aAO2PmwDtj5wA7Y+dAO2PngDtj58A7Y+gAO2PoQDtj6IA7Y+jAO2PpADtj6UA7Y+mAO2PpwDtj6gA7Y+pAO2PqgDtj6sA7Y+sAO2PrQDtj64A7Y+vAO2PsADtj7EA7Y+yAO2PswDtj7QA7Y+1AO2PtgDtj7cA7Y+4AO2PuQDtj7oA7Y+7AO2PvADtj70A7Y++AO2PvwDtkIAA7ZCBAO2QggDtkIMA7ZCEAO2QhQDtkIYA7ZCHAO2QiADtkIkA7ZCKAO2QiwDtkIwA7ZCNAO2QjgDtkI8A7ZCQAO2QkQDtkJIA7ZCTAO2QlADtkJUA7ZCWAO2QlwDtkJgA7ZCZAO2QmgDtkJsA7ZCcAO2QnQDtkJ4A7ZCfAO2QoADtkKEA7ZCiAO2QowDtkKQA7ZClAO2QpgDtkKcA7ZCoAO2QqQDtkKoA7ZCrAO2QrADtkK0A7ZCuAO2QrwDtkLAA7ZCxAO2QsgDtkLMA7ZC0AO2QtQDtkLYA7ZC3AO2QuADtkLkA7ZC6AO2QuwDtkLwA7ZC9AO2QvgDtkL8A7ZGAAO2RgQDtkYIA7ZGDAO2RhADtkYUA7ZGGAO2RhwDtkYgA7ZGJAO2RigDtkYsA7ZGMAO2RjQDtkY4A7ZGPAO2RkADtkZEA7ZGSAO2RkwDtkZQA7ZGVAO2RlgDtkZcA7ZGYAO2RmQDtkZoA7ZGbAO2RnADtkZ0A7ZGeAO2RnwDtkaAA7ZGhAO2RogDtkaMA7ZGkAO2RpQDtkaYA7ZGnAO2RqADtkakA7ZGqAO2RqwDtkawA7ZGtAO2RrgDtka8A7ZGwAO2RsQDtkbIA7ZGzAO2RtADtkbUA7ZG2AO2RtwDtkbgA7ZG5AO2RugDtkbsA7ZG8AO2RvQDtkb4A7ZG/AO2SgADtkoEA7ZKCAO2SgwDtkoQA7ZKFAO2ShgDtkocA7ZKIAO2SiQDtkooA7ZKLAO2SjADtko0A7ZKOAO2SjwDtkpAA7ZKRAO2SkgDtkpMA7ZKUAO2SlQDtkpYA7ZKXAO2SmADtkpkA7ZKaAO2SmwDtkpwA7ZKdAO2SngDtkp8A7ZKgAO2SoQDtkqIA7ZKjAO2SpADtkqUA7ZKmAO2SpwDtkqgA7ZKpAO2SqgDtkqsA7ZKsAO2SrQDtkq4A7ZKvAO2SsADtkrEA7ZKyAO2SswDtkrQA7ZK1AO2StgDtkrcA7ZK4AO2SuQDtkroA7ZK7AO2SvADtkr0A7ZK+AO2SvwDtk4AA7ZOBAO2TggDtk4MA7ZOEAO2ThQDtk4YA7ZOHAO2TiADtk4kA7ZOKAO2TiwDtk4wA7ZONAO2TjgDtk48A7ZOQAO2TkQDtk5IA7ZOTAO2TlADtk5UA7ZOWAO2TlwDtk5gA7ZOZAO2TmgDtk5sA7ZOcAO2TnQDtk54A7ZOfAO2ToADtk6EA7ZOiAO2TowDtk6QA7ZOlAO2TpgDtk6cA7ZOoAO2TqQDtk6oA7ZOrAO2TrADtk60A7ZOuAO2TrwDtk7AA7ZOxAO2TsgDtk7MA7ZO0AO2TtQDtk7YA7ZO3AO2TuADtk7kA7ZO6AO2TuwDtk7wA7ZO9AO2TvgDtk78A7ZSAAO2UgQDtlIIA7ZSDAO2UhADtlIUA7ZSGAO2UhwDtlIgA7ZSJAO2UigDtlIsA7ZSMAO2UjQDtlI4A7ZSPAO2UkADtlJEA7ZSSAO2UkwDtlJQA7ZSVAO2UlgDtlJcA7ZSYAO2UmQDtlJoA7ZSbAO2UnADtlJ0A7ZSeAO2UnwDtlKAA7ZShAO2UogDtlKMA7ZSkAO2UpQDtlKYA7ZSnAO2UqADtlKkA7ZSqAO2UqwDtlKwA7ZStAO2UrgDtlK8A7ZSwAO2UsQDtlLIA7ZSzAO2UtADtlLUA7ZS2AO2UtwDtlLgA7ZS5AO2UugDtlLsA7ZS8AO2UvQDtlL4A7ZS/AO2VgADtlYEA7ZWCAO2VgwDtlYQA7ZWFAO2VhgDtlYcA7ZWIAO2ViQDtlYoA7ZWLAO2VjADtlY0A7ZWOAO2VjwDtlZAA7ZWRAO2VkgDtlZMA7ZWUAO2VlQDtlZYA7ZWXAO2VmADtlZkA7ZWaAO2VmwDtlZwA7ZWdAO2VngDtlZ8A7ZWgAO2VoQDtlaIA7ZWjAO2VpADtlaUA7ZWmAO2VpwDtlagA7ZWpAO2VqgDtlasA7ZWsAO2VrQDtla4A7ZWvAO2VsADtlbEA7ZWyAO2VswDtlbQA7ZW1AO2VtgDtlbcA7ZW4AO2VuQDtlboA7ZW7AO2VvADtlb0A7ZW+AO2VvwDtloAA7ZaBAO2WggDtloMA7ZaEAO2WhQDtloYA7ZaHAO2WiADtlokA7ZaKAO2WiwDtlowA7ZaNAO2WjgDtlo8A7ZaQAO2WkQDtlpIA7ZaTAO2WlADtlpUA7ZaWAO2WlwDtlpgA7ZaZAO2WmgDtlpsA7ZacAO2WnQDtlp4A7ZafAO2WoADtlqEA7ZaiAO2WowDtlqQA7ZalAO2WpgDtlqcA7ZaoAO2WqQDtlqoA7ZarAO2WrADtlq0A7ZauAO2WrwDtlrAA7ZaxAO2WsgDtlrMA7Za0AO2WtQDtlrYA7Za3AO2WuADtlrkA7Za6AO2WuwDtlrwA7Za9AO2WvgDtlr8A7ZeAAO2XgQDtl4IA7ZeDAO2XhADtl4UA7ZeGAO2XhwDtl4gA7ZeJAO2XigDtl4sA7ZeMAO2XjQDtl44A7ZePAO2XkADtl5EA7ZeSAO2XkwDtl5QA7ZeVAO2XlgDtl5cA7ZeYAO2XmQDtl5oA7ZebAO2XnADtl50A7ZeeAO2XnwDtl6AA7ZehAO2XogDtl6MA7ZekAO2XpQDtl6YA7ZenAO2XqADtl6kA7ZeqAO2XqwDtl6wA7ZetAO2XrgDtl68A7ZewAO2XsQDtl7IA7ZezAO2XtADtl7UA7Ze2AO2XtwDtl7gA7Ze5AO2XugDtl7sA7Ze8AO2XvQDtl74A7Ze/AO2YgADtmIEA7ZiCAO2YgwDtmIQA7ZiFAO2YhgDtmIcA7ZiIAO2YiQDtmIoA7ZiLAO2YjADtmI0A7ZiOAO2YjwDtmJAA7ZiRAO2YkgDtmJMA7ZiUAO2YlQDtmJYA7ZiXAO2YmADtmJkA7ZiaAO2YmwDtmJwA7ZidAO2YngDtmJ8A7ZigAO2YoQDtmKIA7ZijAO2YpADtmKUA7ZimAO2YpwDtmKgA7ZipAO2YqgDtmKsA7ZisAO2YrQDtmK4A7ZivAO2YsADtmLEA7ZiyAO2YswDtmLQA7Zi1AO2YtgDtmLcA7Zi4AO2YuQDtmLoA7Zi7AO2YvADtmL0A7Zi+AO2YvwDtmYAA7ZmBAO2ZggDtmYMA7ZmEAO2ZhQDtmYYA7ZmHAO2ZiADtmYkA7ZmKAO2ZiwDtmYwA7ZmNAO2ZjgDtmY8A7ZmQAO2ZkQDtmZIA7ZmTAO2ZlADtmZUA7ZmWAO2ZlwDtmZgA7ZmZAO2ZmgDtmZsA7ZmcAO2ZnQDtmZ4A7ZmfAO2ZoADtmaEA7ZmiAO2ZowDtmaQA7ZmlAO2ZpgDtmacA7ZmoAO2ZqQDtmaoA7ZmrAO2ZrADtma0A7ZmuAO2ZrwDtmbAA7ZmxAO2ZsgDtmbMA7Zm0AO2ZtQDtmbYA7Zm3AO2ZuADtmbkA7Zm6AO2ZuwDtmbwA7Zm9AO2ZvgDtmb8A7ZqAAO2agQDtmoIA7ZqDAO2ahADtmoUA7ZqGAO2ahwDtmogA7ZqJAO2aigDtmosA7ZqMAO2ajQDtmo4A7ZqPAO2akADtmpEA7ZqSAO2akwDtmpQA7ZqVAO2algDtmpcA7ZqYAO2amQDtmpoA7ZqbAO2anADtmp0A7ZqeAO2anwDtmqAA7ZqhAO2aogDtmqMA7ZqkAO2apQDtmqYA7ZqnAO2aqADtmqkA7ZqqAO2aqwDtmqwA7ZqtAO2argDtmq8A7ZqwAO2asQDtmrIA7ZqzAO2atADtmrUA7Zq2AO2atwDtmrgA7Zq5AO2augDtmrsA7Zq8AO2avQDtmr4A7Zq/AO2bgADtm4EA7ZuCAO2bgwDtm4QA7ZuFAO2bhgDtm4cA7ZuIAO2biQDtm4oA7ZuLAO2bjADtm40A7ZuOAO2bjwDtm5AA7ZuRAO2bkgDtm5MA7ZuUAO2blQDtm5YA7ZuXAO2bmADtm5kA7ZuaAO2bmwDtm5wA7ZudAO2bngDtm58A7ZugAO2boQDtm6IA7ZujAO2bpADtm6UA7ZumAO2bpwDtm6gA7ZupAO2bqgDtm6sA7ZusAO2brQDtm64A7ZuvAO2bsADtm7EA7ZuyAO2bswDtm7QA7Zu1AO2btgDtm7cA7Zu4AO2buQDtm7oA7Zu7AO2bvADtm70A7Zu+AO2bvwDtnIAA7ZyBAO2cggDtnIMA7ZyEAO2chQDtnIYA7ZyHAO2ciADtnIkA7ZyKAO2ciwDtnIwA7ZyNAO2cjgDtnI8A7ZyQAO2ckQDtnJIA7ZyTAO2clADtnJUA7ZyWAO2clwDtnJgA7ZyZAO2cmgDtnJsA7ZycAO2cnQDtnJ4A7ZyfAO2coADtnKEA7ZyiAO2cowDtnKQA7ZylAO2cpgDtnKcA7ZyoAO2cqQDtnKoA7ZyrAO2crADtnK0A7ZyuAO2crwDtnLAA7ZyxAO2csgDtnLMA7Zy0AO2ctQDtnLYA7Zy3AO2cuADtnLkA7Zy6AO2cuwDtnLwA7Zy9AO2cvgDtnL8A7Z2AAO2dgQDtnYIA7Z2DAO2dhADtnYUA7Z2GAO2dhwDtnYgA7Z2JAO2digDtnYsA7Z2MAO2djQDtnY4A7Z2PAO2dkADtnZEA7Z2SAO2dkwDtnZQA7Z2VAO2dlgDtnZcA7Z2YAO2dmQDtnZoA7Z2bAO2dnADtnZ0A7Z2eAO2dnwDtnaAA7Z2hAO2dogDtnaMA7Z2kAO2dpQDtnaYA7Z2nAO2dqADtnakA7Z2qAO2dqwDtnawA7Z2tAO2drgDtna8A7Z2wAO2dsQDtnbIA7Z2zAO2dtADtnbUA7Z22AO2dtwDtnbgA7Z25AO2dugDtnbsA7Z28AO2dvQDtnb4A7Z2/AO2egADtnoEA7Z6CAO2egwDtnoQA7Z6FAO2ehgDtnocA7Z6IAO2eiQDtnooA7Z6LAO2ejADtno0A7Z6OAO2ejwDtnpAA7Z6RAO2ekgDtnpMA7Z6UAO2elQDtnpYA7Z6XAO2emADtnpkA7Z6aAO2emwDtnpwA7Z6dAO2engDtnp8A7Z6gAO2eoQDtnqIA7Z6jAPCRgpoA8JGCnADwkYKrAPCRhK4A8JGErwDwkY2LAPCRjYwA8JGSuwDwkZK8APCRkr4A8JGWugDwkZa7APCdhZfwnYWlAPCdhZjwnYWlAPCdhZjwnYWl8J2FrgDwnYWY8J2FpfCdha8A8J2FmPCdhaXwnYWwAPCdhZjwnYWl8J2FsQDwnYWY8J2FpfCdhbIA8J2GufCdhaUA8J2GufCdhaXwnYWuAPCdhrnwnYWl8J2FrwDwnYa68J2FpQDwnYa68J2FpfCdha4A8J2GuvCdhaXwnYWvAPCghKIA8KCUnADwoJSlAPCglYsA8KCYugDwoKCEAPCgo54A8KCorADwoK2jAPChk6QA8KGaqADwoZuqAPChp4gA8KGsmADwobSLAPCht6QA8KG3pgDwooaDAPCihp8A8KKMsQDwopuUAPCioYQA8KKhigDwoqyMAPCir7EA8KOAigDwo4q4APCjjZ8A8KOOkwDwo46cAPCjj4MA8KOPlQDwo5GtAPCjmqMA8KOipwDwo6qNAPCjq7oA8KOyvADwo7SeAPCju5EA8KO9ngDwo76OAPCkiaMA8KSLrgDwpI6rAPCkmIgA8KSctQDwpKCUAPCksLYA8KSykgDwpL6hAPCkvrgA8KWBhADwpYOyAPClg7MA8KWEmQDwpYSzAPCliYkA8KWQnQDwpZimAPClmpoA8KWbhQDwpaW8APClqqcA8KWuqwDwpbKAAPCls5AA8KW+hgDwpoeaAPCmiKgA8KaJhwDwpouZAPCmjL4A8KaTmgDwppSjAPCmlqgA8KaepwDwpp61APCmrLwA8KawtgDwprOVAPCmtasA8Ka8rADwpr6xAPCng5IA8KePigDwp5mnAPCnoq4A8KelpgDwp7KoAPCnu5MA8Ke8rwDwqJeSAPCol60A8KicrgDwqK+6APCotbcA8KmFhQDwqYefAPCpiJoA8KmQigDwqZKWAPCplrYA8KmssADwqoOOAPCqhIUA8KqIjgDwqoqRAPCqjpIA8KqYgAA=\"\n      },\n      {\n        \"type\": \"Strip\",\n        \"strip_left\": false,\n        \"strip_right\": true\n      },\n      {\n        \"type\": \"Replace\",\n        \"pattern\": {\n          \"Regex\": \" {2,}\"\n        },\n        \"content\": \"▁\"\n      }\n    ]\n  },\n  \"pre_tokenizer\": {\n    \"type\": \"Metaspace\",\n    \"replacement\": \"▁\",\n    \"prepend_scheme\": \"always\",\n    \"split\": true\n  },\n  \"post_processor\": {\n    \"type\": \"TemplateProcessing\",\n    \"single\": [\n      {\n        \"Sequence\": {\n          \"id\": \"A\",\n          \"type_id\": 0\n        }\n      },\n      {\n        \"SpecialToken\": {\n          \"id\": \"</s>\",\n          \"type_id\": 0\n        }\n      }\n    ],\n    \"pair\": [\n      {\n        \"Sequence\": {\n          \"id\": \"A\",\n          \"type_id\": 0\n        }\n      },\n      {\n        \"SpecialToken\": {\n          \"id\": \"</s>\",\n          \"type_id\": 0\n        }\n      },\n      {\n        \"Sequence\": {\n          \"id\": \"B\",\n          \"type_id\": 0\n        }\n      },\n      {\n        \"SpecialToken\": {\n          \"id\": \"</s>\",\n          \"type_id\": 0\n        }\n      }\n    ],\n    \"special_tokens\": {\n      \"</s>\": {\n        \"id\": \"</s>\",\n        \"ids\": [\n          1\n        ],\n        \"tokens\": [\n          \"</s>\"\n        ]\n      }\n    }\n  },\n  \"decoder\": {\n    \"type\": \"Metaspace\",\n    \"replacement\": \"▁\",\n    \"prepend_scheme\": \"always\",\n    \"split\": true\n  },\n  \"model\": {\n    \"type\": \"Unigram\",\n    \"unk_id\": 2,\n    \"vocab\": [\n      [\n        \"<pad>\",\n        0.0\n      ],\n      [\n        \"</s>\",\n        0.0\n      ],\n      [\n        \"<unk>\",\n        0.0\n      ],\n      [\n        \"▁\",\n        -2.0122928619384766\n      ],\n      [\n        \"X\",\n        -2.486478805541992\n      ],\n      [\n        \".\",\n        -3.5449328422546387\n      ],\n      [\n        \",\",\n        -3.649247407913208\n      ],\n      [\n        \"s\",\n        -3.9033992290496826\n      ],\n      [\n        \"▁the\",\n        -3.9598512649536133\n      ],\n      [\n        \"a\",\n        -4.097104549407959\n      ],\n      [\n        \":\",\n        -4.414328098297119\n      ],\n      [\n        \"▁and\",\n        -4.420670986175537\n      ],\n      [\n        \"▁to\",\n        -4.4523234367370605\n      ],\n      [\n        \"▁of\",\n        -4.572070121765137\n      ],\n      [\n        \"▁fill\",\n        -4.575019836425781\n      ],\n      [\n        \"e\",\n        -4.674920082092285\n      ],\n      [\n        \"▁in\",\n        -4.812063694000244\n      ],\n      [\n        \"t\",\n        -5.063905715942383\n      ],\n      [\n        \"-\",\n        -5.129043102264404\n      ],\n      [\n        \"▁is\",\n        -5.283425331115723\n      ],\n      [\n        \"▁de\",\n        -5.344141960144043\n      ],\n      [\n        \"▁for\",\n        -5.3930158615112305\n      ],\n      [\n        \"’\",\n        -5.4228339195251465\n      ],\n      [\n        \"i\",\n        -5.469857692718506\n      ],\n      [\n        \"▁that\",\n        -5.576240539550781\n      ],\n      [\n        \"▁you\",\n        -5.596375465393066\n      ],\n      [\n        \"d\",\n        -5.6047282218933105\n      ],\n      [\n        \"▁I\",\n        -5.6640448570251465\n      ],\n      [\n        \"▁with\",\n        -5.703730583190918\n      ],\n      [\n        \"n\",\n        -5.737886905670166\n      ],\n      [\n        \"▁on\",\n        -5.784142971038818\n      ],\n      [\n        \"'\",\n        -5.828996181488037\n      ],\n      [\n        \"o\",\n        -5.925558090209961\n      ],\n      [\n        \"▁are\",\n        -5.931313991546631\n      ],\n      [\n        \"▁it\",\n        -5.939518928527832\n      ],\n      [\n        \"en\",\n        -5.9465556144714355\n      ],\n      [\n        \"▁be\",\n        -5.9556708335876465\n      ],\n      [\n        \"▁The\",\n        -5.990020751953125\n      ],\n      [\n        \"▁as\",\n        -6.057407379150391\n      ],\n      [\n        \"▁your\",\n        -6.132311820983887\n      ],\n      [\n        \"l\",\n        -6.139498710632324\n      ],\n      [\n        \"▁(\",\n        -6.184796333312988\n      ],\n      [\n        \"▁or\",\n        -6.241950035095215\n      ],\n      [\n        \"▁have\",\n        -6.27459192276001\n      ],\n      [\n        \"▁at\",\n        -6.327472686767578\n      ],\n      [\n        \"▁from\",\n        -6.349645137786865\n      ],\n      [\n        \"▁an\",\n        -6.350090980529785\n      ],\n      [\n        \"▁was\",\n        -6.350385665893555\n      ],\n      [\n        \"▁this\",\n        -6.352563381195068\n      ],\n      [\n        \"er\",\n        -6.3604278564453125\n      ],\n      [\n        \"▁la\",\n        -6.3624043464660645\n      ],\n      [\n        \"m\",\n        -6.375206470489502\n      ],\n      [\n        \"r\",\n        -6.376530170440674\n      ],\n      [\n        \"ing\",\n        -6.3778581619262695\n      ],\n      [\n        \"▁can\",\n        -6.387146472930908\n      ],\n      [\n        \"!\",\n        -6.421379566192627\n      ],\n      [\n        \"▁will\",\n        -6.423982620239258\n      ],\n      [\n        \"▁by\",\n        -6.44155216217041\n      ],\n      [\n        \"?\",\n        -6.585887432098389\n      ],\n      [\n        \"▁not\",\n        -6.5959086418151855\n      ],\n      [\n        \"re\",\n        -6.620072364807129\n      ],\n      [\n        \")\",\n        -6.63656759262085\n      ],\n      [\n        \"▁we\",\n        -6.643022060394287\n      ],\n      [\n        \"y\",\n        -6.654535293579102\n      ],\n      [\n        \"▁und\",\n        -6.741473197937012\n      ],\n      [\n        \"▁has\",\n        -6.7602033615112305\n      ],\n      [\n        \"▁all\",\n        -6.768176555633545\n      ],\n      [\n        \"▁die\",\n        -6.8641204833984375\n      ],\n      [\n        \"▁but\",\n        -6.906830310821533\n      ],\n      [\n        \"▁our\",\n        -6.909878730773926\n      ],\n      [\n        \"▁their\",\n        -6.91325044631958\n      ],\n      [\n        \"▁A\",\n        -6.915814399719238\n      ],\n      [\n        \"▁more\",\n        -6.918668746948242\n      ],\n      [\n        \"▁un\",\n        -6.924930572509766\n      ],\n      [\n        \"▁der\",\n        -6.925402641296387\n      ],\n      [\n        \"c\",\n        -6.925714015960693\n      ],\n      [\n        \"u\",\n        -6.932939052581787\n      ],\n      [\n        \"in\",\n        -6.934063911437988\n      ],\n      [\n        \"▁so\",\n        -6.947050094604492\n      ],\n      [\n        \"▁they\",\n        -6.989297866821289\n      ],\n      [\n        \"▁one\",\n        -7.012735843658447\n      ],\n      [\n        \"▁about\",\n        -7.071486473083496\n      ],\n      [\n        \"▁my\",\n        -7.072140693664551\n      ],\n      [\n        \"ul\",\n        -7.076492786407471\n      ],\n      [\n        \"▁which\",\n        -7.097039222717285\n      ],\n      [\n        \"à\",\n        -7.099997520446777\n      ],\n      [\n        \"▁In\",\n        -7.100254535675049\n      ],\n      [\n        \"/\",\n        -7.100865840911865\n      ],\n      [\n        \"he\",\n        -7.104752540588379\n      ],\n      [\n        \"f\",\n        -7.110044002532959\n      ],\n      [\n        \"▁le\",\n        -7.112937927246094\n      ],\n      [\n        \"▁out\",\n        -7.128556728363037\n      ],\n      [\n        \"▁also\",\n        -7.133583068847656\n      ],\n      [\n        \"▁des\",\n        -7.156766414642334\n      ],\n      [\n        \"▁It\",\n        -7.162121295928955\n      ],\n      [\n        \"▁up\",\n        -7.1723432540893555\n      ],\n      [\n        \"▁\\\"\",\n        -7.172809600830078\n      ],\n      [\n        \"▁time\",\n        -7.178046703338623\n      ],\n      [\n        \"ă\",\n        -7.183253765106201\n      ],\n      [\n        \"if\",\n        -7.185171127319336\n      ],\n      [\n        \"▁This\",\n        -7.191652297973633\n      ],\n      [\n        \"▁We\",\n        -7.223267078399658\n      ],\n      [\n        \"p\",\n        -7.224130153656006\n      ],\n      [\n        \"▁do\",\n        -7.228212356567383\n      ],\n      [\n        \"–\",\n        -7.235409736633301\n      ],\n      [\n        \"▁“\",\n        -7.238142013549805\n      ],\n      [\n        \"on\",\n        -7.240827560424805\n      ],\n      [\n        \"h\",\n        -7.2543206214904785\n      ],\n      [\n        \"▁si\",\n        -7.276725769042969\n      ],\n      [\n        \"le\",\n        -7.2994256019592285\n      ],\n      [\n        \"▁les\",\n        -7.312957286834717\n      ],\n      [\n        \"▁în\",\n        -7.314571857452393\n      ],\n      [\n        \"▁his\",\n        -7.324767112731934\n      ],\n      [\n        \"▁who\",\n        -7.35105562210083\n      ],\n      [\n        \"▁like\",\n        -7.371364116668701\n      ],\n      [\n        \"b\",\n        -7.375369071960449\n      ],\n      [\n        \"▁when\",\n        -7.380199432373047\n      ],\n      [\n        \";\",\n        -7.380846977233887\n      ],\n      [\n        \"▁been\",\n        -7.38668966293335\n      ],\n      [\n        \"▁other\",\n        -7.388518333435059\n      ],\n      [\n        \"ly\",\n        -7.394660949707031\n      ],\n      [\n        \"\\\"\",\n        -7.407205104827881\n      ],\n      [\n        \"g\",\n        -7.407997131347656\n      ],\n      [\n        \"▁cu\",\n        -7.415276527404785\n      ],\n      [\n        \"▁care\",\n        -7.432408332824707\n      ],\n      [\n        \"▁what\",\n        -7.433043003082275\n      ],\n      [\n        \"▁new\",\n        -7.4370903968811035\n      ],\n      [\n        \"or\",\n        -7.445409774780273\n      ],\n      [\n        \"▁some\",\n        -7.461953639984131\n      ],\n      [\n        \"▁get\",\n        -7.479001998901367\n      ],\n      [\n        \"▁were\",\n        -7.491549491882324\n      ],\n      [\n        \"▁just\",\n        -7.492495536804199\n      ],\n      [\n        \"▁there\",\n        -7.493194103240967\n      ],\n      [\n        \"▁would\",\n        -7.494382381439209\n      ],\n      [\n        \"S\",\n        -7.4974141120910645\n      ],\n      [\n        \"▁them\",\n        -7.513596057891846\n      ],\n      [\n        \"▁any\",\n        -7.520544052124023\n      ],\n      [\n        \").\",\n        -7.521052360534668\n      ],\n      [\n        \"al\",\n        -7.523056983947754\n      ],\n      [\n        \"▁into\",\n        -7.527902603149414\n      ],\n      [\n        \"▁me\",\n        -7.528337001800537\n      ],\n      [\n        \"▁had\",\n        -7.532425403594971\n      ],\n      [\n        \"▁se\",\n        -7.5451483726501465\n      ],\n      [\n        \"▁make\",\n        -7.5827131271362305\n      ],\n      [\n        \"at\",\n        -7.589433670043945\n      ],\n      [\n        \"▁than\",\n        -7.592360019683838\n      ],\n      [\n        \"▁du\",\n        -7.595852375030518\n      ],\n      [\n        \"▁over\",\n        -7.6078782081604\n      ],\n      [\n        \"▁You\",\n        -7.626111030578613\n      ],\n      [\n        \"▁how\",\n        -7.635554313659668\n      ],\n      [\n        \"▁no\",\n        -7.63729190826416\n      ],\n      [\n        \"▁people\",\n        -7.639947414398193\n      ],\n      [\n        \"an\",\n        -7.64084005355835\n      ],\n      [\n        \"”\",\n        -7.644528865814209\n      ],\n      [\n        \"é\",\n        -7.646921157836914\n      ],\n      [\n        \"it\",\n        -7.648641109466553\n      ],\n      [\n        \"▁If\",\n        -7.648687839508057\n      ],\n      [\n        \"k\",\n        -7.6605634689331055\n      ],\n      [\n        \"▁pe\",\n        -7.662139415740967\n      ],\n      [\n        \"is\",\n        -7.66726016998291\n      ],\n      [\n        \"▁her\",\n        -7.6733808517456055\n      ],\n      [\n        \"▁work\",\n        -7.680386543273926\n      ],\n      [\n        \"ve\",\n        -7.687412738800049\n      ],\n      [\n        \"▁only\",\n        -7.69785737991333\n      ],\n      [\n        \"▁may\",\n        -7.702393531799316\n      ],\n      [\n        \"▁its\",\n        -7.702449798583984\n      ],\n      [\n        \"▁first\",\n        -7.704373836517334\n      ],\n      [\n        \"▁most\",\n        -7.708309173583984\n      ],\n      [\n        \"▁well\",\n        -7.708758354187012\n      ],\n      [\n        \"▁use\",\n        -7.715085983276367\n      ],\n      [\n        \"▁zu\",\n        -7.718777656555176\n      ],\n      [\n        \"▁pour\",\n        -7.736708164215088\n      ],\n      [\n        \"z\",\n        -7.745654106140137\n      ],\n      [\n        \"il\",\n        -7.745913982391357\n      ],\n      [\n        \"▁need\",\n        -7.74778938293457\n      ],\n      [\n        \"▁these\",\n        -7.763317584991455\n      ],\n      [\n        \"▁din\",\n        -7.769891262054443\n      ],\n      [\n        \"▁den\",\n        -7.775663375854492\n      ],\n      [\n        \"▁us\",\n        -7.778133869171143\n      ],\n      [\n        \"able\",\n        -7.779712200164795\n      ],\n      [\n        \"▁S\",\n        -7.781893730163574\n      ],\n      [\n        \"▁mit\",\n        -7.792516231536865\n      ],\n      [\n        \"▁very\",\n        -7.79970645904541\n      ],\n      [\n        \"▁am\",\n        -7.814100742340088\n      ],\n      [\n        \"&\",\n        -7.829529285430908\n      ],\n      [\n        \"▁au\",\n        -7.83012056350708\n      ],\n      [\n        \"▁many\",\n        -7.83834171295166\n      ],\n      [\n        \"▁mai\",\n        -7.84363317489624\n      ],\n      [\n        \"A\",\n        -7.849830150604248\n      ],\n      [\n        \"th\",\n        -7.855541229248047\n      ],\n      [\n        \"▁through\",\n        -7.859585285186768\n      ],\n      [\n        \"▁pentru\",\n        -7.86391544342041\n      ],\n      [\n        \"▁two\",\n        -7.873607158660889\n      ],\n      [\n        \"▁von\",\n        -7.874959945678711\n      ],\n      [\n        \"▁way\",\n        -7.887117385864258\n      ],\n      [\n        \"ll\",\n        -7.887749195098877\n      ],\n      [\n        \"I\",\n        -7.891303539276123\n      ],\n      [\n        \"▁ce\",\n        -7.9015631675720215\n      ],\n      [\n        \"▁și\",\n        -7.904444694519043\n      ],\n      [\n        \"▁help\",\n        -7.907405853271484\n      ],\n      [\n        \"▁best\",\n        -7.907911777496338\n      ],\n      [\n        \"),\",\n        -7.908212184906006\n      ],\n      [\n        \"un\",\n        -7.925017833709717\n      ],\n      [\n        \"▁years\",\n        -7.925964832305908\n      ],\n      [\n        \"▁2\",\n        -7.9282684326171875\n      ],\n      [\n        \"▁C\",\n        -7.936962604522705\n      ],\n      [\n        \"▁nu\",\n        -7.939520835876465\n      ],\n      [\n        \"▁good\",\n        -7.943995952606201\n      ],\n      [\n        \"v\",\n        -7.94746732711792\n      ],\n      [\n        \"▁1\",\n        -7.94765567779541\n      ],\n      [\n        \"w\",\n        -7.947978496551514\n      ],\n      [\n        \"▁das\",\n        -7.960538864135742\n      ],\n      [\n        \"▁ca\",\n        -7.962430477142334\n      ],\n      [\n        \"▁where\",\n        -7.964908123016357\n      ],\n      [\n        \"▁know\",\n        -7.96622896194458\n      ],\n      [\n        \"▁year\",\n        -7.971063613891602\n      ],\n      [\n        \"▁He\",\n        -7.974609375\n      ],\n      [\n        \"▁see\",\n        -7.980011463165283\n      ],\n      [\n        \"▁für\",\n        -7.984004497528076\n      ],\n      [\n        \"▁auf\",\n        -7.984249114990234\n      ],\n      [\n        \"▁3\",\n        -7.984433650970459\n      ],\n      [\n        \"de\",\n        -7.985401153564453\n      ],\n      [\n        \"est\",\n        -8.002091407775879\n      ],\n      [\n        \"▁back\",\n        -8.007022857666016\n      ],\n      [\n        \"▁such\",\n        -8.008523941040039\n      ],\n      [\n        \"▁should\",\n        -8.011754989624023\n      ],\n      [\n        \"x\",\n        -8.015050888061523\n      ],\n      [\n        \"▁after\",\n        -8.01761245727539\n      ],\n      [\n        \"▁could\",\n        -8.019674301147461\n      ],\n      [\n        \"▁ist\",\n        -8.020784378051758\n      ],\n      [\n        \"▁now\",\n        -8.022845268249512\n      ],\n      [\n        \"▁much\",\n        -8.023111343383789\n      ],\n      [\n        \"and\",\n        -8.02390193939209\n      ],\n      [\n        \"...\",\n        -8.030110359191895\n      ],\n      [\n        \"▁home\",\n        -8.036273956298828\n      ],\n      [\n        \"to\",\n        -8.03821086883545\n      ],\n      [\n        \"▁ein\",\n        -8.04833984375\n      ],\n      [\n        \"▁even\",\n        -8.048656463623047\n      ],\n      [\n        \"▁que\",\n        -8.049829483032227\n      ],\n      [\n        \"▁day\",\n        -8.051553726196289\n      ],\n      [\n        \"▁take\",\n        -8.054189682006836\n      ],\n      [\n        \"▁want\",\n        -8.054435729980469\n      ],\n      [\n        \"▁For\",\n        -8.06217098236084\n      ],\n      [\n        \"▁said\",\n        -8.063249588012695\n      ],\n      [\n        \"▁sur\",\n        -8.073471069335938\n      ],\n      [\n        \"▁une\",\n        -8.077030181884766\n      ],\n      [\n        \"▁să\",\n        -8.082921028137207\n      ],\n      [\n        \"▁dans\",\n        -8.084549903869629\n      ],\n      [\n        \"▁great\",\n        -8.088057518005371\n      ],\n      [\n        \"▁este\",\n        -8.08947467803955\n      ],\n      [\n        \"▁because\",\n        -8.094311714172363\n      ],\n      [\n        \"▁information\",\n        -8.104085922241211\n      ],\n      [\n        \"ului\",\n        -8.105451583862305\n      ],\n      [\n        \"▁find\",\n        -8.112174987792969\n      ],\n      [\n        \"C\",\n        -8.119946479797363\n      ],\n      [\n        \"▁she\",\n        -8.125317573547363\n      ],\n      [\n        \"▁im\",\n        -8.126056671142578\n      ],\n      [\n        \"ation\",\n        -8.130115509033203\n      ],\n      [\n        \"▁then\",\n        -8.13021469116211\n      ],\n      [\n        \"▁est\",\n        -8.13099479675293\n      ],\n      [\n        \"▁par\",\n        -8.138585090637207\n      ],\n      [\n        \"▁used\",\n        -8.141871452331543\n      ],\n      [\n        \"▁E\",\n        -8.146790504455566\n      ],\n      [\n        \"▁made\",\n        -8.149978637695312\n      ],\n      [\n        \"▁So\",\n        -8.15785026550293\n      ],\n      [\n        \"am\",\n        -8.16288948059082\n      ],\n      [\n        \"▁eine\",\n        -8.165464401245117\n      ],\n      [\n        \"▁şi\",\n        -8.168368339538574\n      ],\n      [\n        \"▁business\",\n        -8.17335033416748\n      ],\n      [\n        \"▁right\",\n        -8.173593521118164\n      ],\n      [\n        \"▁here\",\n        -8.176125526428223\n      ],\n      [\n        \"▁being\",\n        -8.184967041015625\n      ],\n      [\n        \"▁B\",\n        -8.185355186462402\n      ],\n      [\n        \"▁those\",\n        -8.185736656188965\n      ],\n      [\n        \"▁before\",\n        -8.194721221923828\n      ],\n      [\n        \"▁And\",\n        -8.199501037597656\n      ],\n      [\n        \"▁P\",\n        -8.200712203979492\n      ],\n      [\n        \"ers\",\n        -8.200922012329102\n      ],\n      [\n        \"▁don\",\n        -8.204029083251953\n      ],\n      [\n        \"B\",\n        -8.20487117767334\n      ],\n      [\n        \"▁life\",\n        -8.206265449523926\n      ],\n      [\n        \"▁go\",\n        -8.209736824035645\n      ],\n      [\n        \"▁As\",\n        -8.210551261901855\n      ],\n      [\n        \"▁M\",\n        -8.221170425415039\n      ],\n      [\n        \"▁each\",\n        -8.22955322265625\n      ],\n      [\n        \"▁qui\",\n        -8.23323917388916\n      ],\n      [\n        \"▁place\",\n        -8.236248970031738\n      ],\n      [\n        \"com\",\n        -8.237479209899902\n      ],\n      [\n        \"ant\",\n        -8.252915382385254\n      ],\n      [\n        \"▁sich\",\n        -8.255932807922363\n      ],\n      [\n        \"▁There\",\n        -8.261948585510254\n      ],\n      [\n        \"ar\",\n        -8.264991760253906\n      ],\n      [\n        \"▁Sie\",\n        -8.273868560791016\n      ],\n      [\n        \"▁own\",\n        -8.277531623840332\n      ],\n      [\n        \"▁part\",\n        -8.279440879821777\n      ],\n      [\n        \"ent\",\n        -8.281047821044922\n      ],\n      [\n        \"▁world\",\n        -8.28173542022705\n      ],\n      [\n        \"ment\",\n        -8.282004356384277\n      ],\n      [\n        \"▁while\",\n        -8.294474601745605\n      ],\n      [\n        \"▁But\",\n        -8.295366287231445\n      ],\n      [\n        \"▁around\",\n        -8.300799369812012\n      ],\n      [\n        \"▁L\",\n        -8.301082611083984\n      ],\n      [\n        \"us\",\n        -8.304039001464844\n      ],\n      [\n        \"▁plus\",\n        -8.313054084777832\n      ],\n      [\n        \"▁To\",\n        -8.313691139221191\n      ],\n      [\n        \"▁5\",\n        -8.31412410736084\n      ],\n      [\n        \"▁high\",\n        -8.31862735748291\n      ],\n      [\n        \"▁long\",\n        -8.319378852844238\n      ],\n      [\n        \"D\",\n        -8.320075035095215\n      ],\n      [\n        \"▁D\",\n        -8.320279121398926\n      ],\n      [\n        \"▁really\",\n        -8.322924613952637\n      ],\n      [\n        \"▁nicht\",\n        -8.332040786743164\n      ],\n      [\n        \"▁Le\",\n        -8.335328102111816\n      ],\n      [\n        \"▁service\",\n        -8.3412504196167\n      ],\n      [\n        \"▁4\",\n        -8.342093467712402\n      ],\n      [\n        \"▁different\",\n        -8.342538833618164\n      ],\n      [\n        \"▁Die\",\n        -8.348092079162598\n      ],\n      [\n        \"▁think\",\n        -8.353771209716797\n      ],\n      [\n        \"—\",\n        -8.355998039245605\n      ],\n      [\n        \"▁auch\",\n        -8.357160568237305\n      ],\n      [\n        \"▁look\",\n        -8.362202644348145\n      ],\n      [\n        \"▁both\",\n        -8.366817474365234\n      ],\n      [\n        \"lor\",\n        -8.36687183380127\n      ],\n      [\n        \"▁down\",\n        -8.367999076843262\n      ],\n      [\n        \"ten\",\n        -8.368885040283203\n      ],\n      [\n        \"▁La\",\n        -8.378066062927246\n      ],\n      [\n        \"▁off\",\n        -8.380044937133789\n      ],\n      [\n        \"▁vous\",\n        -8.380541801452637\n      ],\n      [\n        \"▁They\",\n        -8.381462097167969\n      ],\n      [\n        \"M\",\n        -8.383248329162598\n      ],\n      [\n        \"▁pas\",\n        -8.384513854980469\n      ],\n      [\n        \"▁data\",\n        -8.385709762573242\n      ],\n      [\n        \"▁T\",\n        -8.386754989624023\n      ],\n      [\n        \"▁love\",\n        -8.388101577758789\n      ],\n      [\n        \"▁every\",\n        -8.390009880065918\n      ],\n      [\n        \"▁10\",\n        -8.391179084777832\n      ],\n      [\n        \"▁last\",\n        -8.392083168029785\n      ],\n      [\n        \"▁same\",\n        -8.393481254577637\n      ],\n      [\n        \"▁using\",\n        -8.395487785339355\n      ],\n      [\n        \"▁free\",\n        -8.408831596374512\n      ],\n      [\n        \"▁dem\",\n        -8.40894889831543\n      ],\n      [\n        \"▁still\",\n        -8.409984588623047\n      ],\n      [\n        \"ate\",\n        -8.410931587219238\n      ],\n      [\n        \"ist\",\n        -8.415611267089844\n      ],\n      [\n        \"▁between\",\n        -8.420283317565918\n      ],\n      [\n        \"P\",\n        -8.420982360839844\n      ],\n      [\n        \"be\",\n        -8.428167343139648\n      ],\n      [\n        \"▁available\",\n        -8.429443359375\n      ],\n      [\n        \"man\",\n        -8.432978630065918\n      ],\n      [\n        \"▁company\",\n        -8.439678192138672\n      ],\n      [\n        \"▁G\",\n        -8.441640853881836\n      ],\n      [\n        \"▁experience\",\n        -8.444950103759766\n      ],\n      [\n        \"▁going\",\n        -8.449073791503906\n      ],\n      [\n        \"▁site\",\n        -8.453832626342773\n      ],\n      [\n        \"j\",\n        -8.455142974853516\n      ],\n      [\n        \"are\",\n        -8.456900596618652\n      ],\n      [\n        \"▁set\",\n        -8.470661163330078\n      ],\n      [\n        \"2\",\n        -8.473684310913086\n      ],\n      [\n        \"▁system\",\n        -8.474678039550781\n      ],\n      [\n        \"▁important\",\n        -8.476791381835938\n      ],\n      [\n        \"▁few\",\n        -8.482437133789062\n      ],\n      [\n        \"▁fi\",\n        -8.482551574707031\n      ],\n      [\n        \"ich\",\n        -8.483301162719727\n      ],\n      [\n        \"▁What\",\n        -8.488649368286133\n      ],\n      [\n        \"▁services\",\n        -8.502433776855469\n      ],\n      [\n        \"▁under\",\n        -8.502569198608398\n      ],\n      [\n        \"▁When\",\n        -8.50308895111084\n      ],\n      [\n        \"▁online\",\n        -8.50699520111084\n      ],\n      [\n        \"▁New\",\n        -8.51494312286377\n      ],\n      [\n        \"▁come\",\n        -8.524871826171875\n      ],\n      [\n        \"▁provide\",\n        -8.525650024414062\n      ],\n      [\n        \"F\",\n        -8.526449203491211\n      ],\n      [\n        \"▁team\",\n        -8.52782154083252\n      ],\n      [\n        \"▁always\",\n        -8.529409408569336\n      ],\n      [\n        \"▁De\",\n        -8.530412673950195\n      ],\n      [\n        \"▁că\",\n        -8.532517433166504\n      ],\n      [\n        \"▁him\",\n        -8.53586196899414\n      ],\n      [\n        \"▁F\",\n        -8.538305282592773\n      ],\n      [\n        \"▁things\",\n        -8.550079345703125\n      ],\n      [\n        \"▁including\",\n        -8.550943374633789\n      ],\n      [\n        \"▁support\",\n        -8.552608489990234\n      ],\n      [\n        \"▁number\",\n        -8.554113388061523\n      ],\n      [\n        \"T\",\n        -8.557183265686035\n      ],\n      [\n        \"▁during\",\n        -8.55886459350586\n      ],\n      [\n        \"▁family\",\n        -8.560463905334473\n      ],\n      [\n        \"▁little\",\n        -8.561317443847656\n      ],\n      [\n        \"▁three\",\n        -8.567726135253906\n      ],\n      [\n        \"▁water\",\n        -8.56810188293457\n      ],\n      [\n        \"▁man\",\n        -8.569759368896484\n      ],\n      [\n        \"▁An\",\n        -8.57192611694336\n      ],\n      [\n        \"based\",\n        -8.572155952453613\n      ],\n      [\n        \"▁R\",\n        -8.57442855834961\n      ],\n      [\n        \"▁sau\",\n        -8.574433326721191\n      ],\n      [\n        \"▁avec\",\n        -8.576035499572754\n      ],\n      [\n        \"▁better\",\n        -8.576830863952637\n      ],\n      [\n        \"▁„\",\n        -8.582253456115723\n      ],\n      [\n        \"▁too\",\n        -8.58635425567627\n      ],\n      [\n        \"ge\",\n        -8.586719512939453\n      ],\n      [\n        \"▁must\",\n        -8.589736938476562\n      ],\n      [\n        \"▁per\",\n        -8.589916229248047\n      ],\n      [\n        \"ele\",\n        -8.590399742126465\n      ],\n      [\n        \"▁oder\",\n        -8.59264850616455\n      ],\n      [\n        \"au\",\n        -8.59555435180664\n      ],\n      [\n        \"▁aus\",\n        -8.595727920532227\n      ],\n      [\n        \"▁werden\",\n        -8.598653793334961\n      ],\n      [\n        \"▁does\",\n        -8.599140167236328\n      ],\n      [\n        \"▁without\",\n        -8.599270820617676\n      ],\n      [\n        \"▁ou\",\n        -8.599929809570312\n      ],\n      [\n        \"▁design\",\n        -8.60101318359375\n      ],\n      [\n        \"▁va\",\n        -8.605440139770508\n      ],\n      [\n        \"▁did\",\n        -8.615679740905762\n      ],\n      [\n        \"▁O\",\n        -8.619062423706055\n      ],\n      [\n        \"▁U\",\n        -8.623565673828125\n      ],\n      [\n        \"up\",\n        -8.62901496887207\n      ],\n      [\n        \"▁end\",\n        -8.63367748260498\n      ],\n      [\n        \"▁local\",\n        -8.636231422424316\n      ],\n      [\n        \"▁next\",\n        -8.638967514038086\n      ],\n      [\n        \"▁sure\",\n        -8.64098072052002\n      ],\n      [\n        \"▁lot\",\n        -8.64644718170166\n      ],\n      [\n        \"▁Re\",\n        -8.647016525268555\n      ],\n      [\n        \"▁top\",\n        -8.647642135620117\n      ],\n      [\n        \"▁Our\",\n        -8.656886100769043\n      ],\n      [\n        \"▁small\",\n        -8.656978607177734\n      ],\n      [\n        \"▁full\",\n        -8.659418106079102\n      ],\n      [\n        \"▁something\",\n        -8.662886619567871\n      ],\n      [\n        \"ung\",\n        -8.666722297668457\n      ],\n      [\n        \"▁vor\",\n        -8.673250198364258\n      ],\n      [\n        \"E\",\n        -8.673337936401367\n      ],\n      [\n        \"▁give\",\n        -8.67603588104248\n      ],\n      [\n        \"▁might\",\n        -8.67660903930664\n      ],\n      [\n        \"▁another\",\n        -8.679330825805664\n      ],\n      [\n        \"▁6\",\n        -8.680779457092285\n      ],\n      [\n        \"▁All\",\n        -8.681318283081055\n      ],\n      [\n        \"▁process\",\n        -8.681672096252441\n      ],\n      [\n        \"L\",\n        -8.682575225830078\n      ],\n      [\n        \"▁found\",\n        -8.68941593170166\n      ],\n      [\n        \"▁sind\",\n        -8.690044403076172\n      ],\n      [\n        \"▁since\",\n        -8.69528865814209\n      ],\n      [\n        \"▁With\",\n        -8.695560455322266\n      ],\n      [\n        \"K\",\n        -8.696988105773926\n      ],\n      [\n        \"um\",\n        -8.701016426086426\n      ],\n      [\n        \"▁within\",\n        -8.701669692993164\n      ],\n      [\n        \"▁post\",\n        -8.706608772277832\n      ],\n      [\n        \"▁car\",\n        -8.709365844726562\n      ],\n      [\n        \"une\",\n        -8.714099884033203\n      ],\n      [\n        \"▁N\",\n        -8.715041160583496\n      ],\n      [\n        \"▁J\",\n        -8.715597152709961\n      ],\n      [\n        \"ic\",\n        -8.71823787689209\n      ],\n      [\n        \"R\",\n        -8.722309112548828\n      ],\n      [\n        \"ter\",\n        -8.727437019348145\n      ],\n      [\n        \"ur\",\n        -8.728265762329102\n      ],\n      [\n        \"▁She\",\n        -8.73131275177002\n      ],\n      [\n        \"▁public\",\n        -8.732009887695312\n      ],\n      [\n        \"▁keep\",\n        -8.735784530639648\n      ],\n      [\n        \"▁H\",\n        -8.736178398132324\n      ],\n      [\n        \"▁order\",\n        -8.740762710571289\n      ],\n      [\n        \"▁start\",\n        -8.742195129394531\n      ],\n      [\n        \"ez\",\n        -8.74746322631836\n      ],\n      [\n        \"▁‘\",\n        -8.749832153320312\n      ],\n      [\n        \"uri\",\n        -8.751104354858398\n      ],\n      [\n        \"▁20\",\n        -8.752482414245605\n      ],\n      [\n        \"▁On\",\n        -8.753515243530273\n      ],\n      [\n        \"▁offer\",\n        -8.763005256652832\n      ],\n      [\n        \"▁quality\",\n        -8.764988899230957\n      ],\n      [\n        \"▁working\",\n        -8.769987106323242\n      ],\n      [\n        \"▁No\",\n        -8.770307540893555\n      ],\n      [\n        \"▁That\",\n        -8.775156021118164\n      ],\n      [\n        \"▁game\",\n        -8.7863187789917\n      ],\n      [\n        \"▁bei\",\n        -8.786642074584961\n      ],\n      [\n        \"▁today\",\n        -8.788661003112793\n      ],\n      [\n        \"▁never\",\n        -8.794586181640625\n      ],\n      [\n        \"▁week\",\n        -8.79587173461914\n      ],\n      [\n        \"▁St\",\n        -8.797786712646484\n      ],\n      [\n        \"▁feel\",\n        -8.799317359924316\n      ],\n      [\n        \"▁put\",\n        -8.801899909973145\n      ],\n      [\n        \"▁website\",\n        -8.80322265625\n      ],\n      [\n        \"Y\",\n        -8.804483413696289\n      ],\n      [\n        \"▁days\",\n        -8.804709434509277\n      ],\n      [\n        \"▁program\",\n        -8.805448532104492\n      ],\n      [\n        \"▁looking\",\n        -8.810463905334473\n      ],\n      [\n        \"▁K\",\n        -8.810808181762695\n      ],\n      [\n        \"▁students\",\n        -8.811436653137207\n      ],\n      [\n        \"▁create\",\n        -8.811800956726074\n      ],\n      [\n        \"▁change\",\n        -8.812616348266602\n      ],\n      [\n        \"▁book\",\n        -8.812932014465332\n      ],\n      [\n        \"ity\",\n        -8.813761711120605\n      ],\n      [\n        \"▁At\",\n        -8.815207481384277\n      ],\n      [\n        \"▁possible\",\n        -8.815670013427734\n      ],\n      [\n        \"▁sunt\",\n        -8.81651496887207\n      ],\n      [\n        \"▁7\",\n        -8.818120002746582\n      ],\n      [\n        \"▁real\",\n        -8.823369026184082\n      ],\n      [\n        \"▁al\",\n        -8.824172019958496\n      ],\n      [\n        \"▁making\",\n        -8.825371742248535\n      ],\n      [\n        \"▁Be\",\n        -8.825761795043945\n      ],\n      [\n        \"▁products\",\n        -8.82592487335205\n      ],\n      [\n        \"▁case\",\n        -8.82653522491455\n      ],\n      [\n        \"▁school\",\n        -8.8272066116333\n      ],\n      [\n        \"▁say\",\n        -8.830352783203125\n      ],\n      [\n        \"area\",\n        -8.832084655761719\n      ],\n      [\n        \"▁My\",\n        -8.833836555480957\n      ],\n      [\n        \"▁point\",\n        -8.834731101989746\n      ],\n      [\n        \"▁als\",\n        -8.83560848236084\n      ],\n      [\n        \"▁children\",\n        -8.836194038391113\n      ],\n      [\n        \"▁course\",\n        -8.844061851501465\n      ],\n      [\n        \"▁show\",\n        -8.847993850708008\n      ],\n      [\n        \"▁8\",\n        -8.849273681640625\n      ],\n      [\n        \"▁These\",\n        -8.849345207214355\n      ],\n      [\n        \"▁18\",\n        -8.851140975952148\n      ],\n      [\n        \"▁large\",\n        -8.851323127746582\n      ],\n      [\n        \"co\",\n        -8.854362487792969\n      ],\n      [\n        \"▁über\",\n        -8.854788780212402\n      ],\n      [\n        \"▁second\",\n        -8.856559753417969\n      ],\n      [\n        \"▁market\",\n        -8.859807014465332\n      ],\n      [\n        \"▁fost\",\n        -8.86048698425293\n      ],\n      [\n        \"▁easy\",\n        -8.863983154296875\n      ],\n      [\n        \"▁plan\",\n        -8.864302635192871\n      ],\n      [\n        \"▁project\",\n        -8.864927291870117\n      ],\n      [\n        \"G\",\n        -8.865178108215332\n      ],\n      [\n        \"W\",\n        -8.869574546813965\n      ],\n      [\n        \"3\",\n        -8.871939659118652\n      ],\n      [\n        \"▁son\",\n        -8.873332023620605\n      ],\n      [\n        \"la\",\n        -8.879053115844727\n      ],\n      [\n        \"▁face\",\n        -8.88137435913086\n      ],\n      [\n        \"▁needs\",\n        -8.88148021697998\n      ],\n      [\n        \"ch\",\n        -8.883138656616211\n      ],\n      [\n        \"▁personal\",\n        -8.88343620300293\n      ],\n      [\n        \"me\",\n        -8.886031150817871\n      ],\n      [\n        \"▁sont\",\n        -8.887377738952637\n      ],\n      [\n        \"▁je\",\n        -8.894930839538574\n      ],\n      [\n        \"▁non\",\n        -8.895471572875977\n      ],\n      [\n        \"▁got\",\n        -8.896591186523438\n      ],\n      [\n        \"▁Do\",\n        -8.897382736206055\n      ],\n      [\n        \"the\",\n        -8.89765453338623\n      ],\n      [\n        \"▁health\",\n        -8.89908504486084\n      ],\n      [\n        \"▁special\",\n        -8.90555477142334\n      ],\n      [\n        \".\\\"\",\n        -8.907710075378418\n      ],\n      [\n        \"1\",\n        -8.907852172851562\n      ],\n      [\n        \"den\",\n        -8.908616065979004\n      ],\n      [\n        \"▁state\",\n        -8.909355163574219\n      ],\n      [\n        \"▁open\",\n        -8.91019058227539\n      ],\n      [\n        \"▁money\",\n        -8.91053581237793\n      ],\n      [\n        \"▁again\",\n        -8.913084983825684\n      ],\n      [\n        \"▁food\",\n        -8.913167953491211\n      ],\n      [\n        \"▁page\",\n        -8.914595603942871\n      ],\n      [\n        \"▁together\",\n        -8.91628360748291\n      ],\n      [\n        \"age\",\n        -8.919108390808105\n      ],\n      [\n        \"▁qu\",\n        -8.921928405761719\n      ],\n      [\n        \"hat\",\n        -8.922386169433594\n      ],\n      [\n        \"▁ver\",\n        -8.926993370056152\n      ],\n      [\n        \"▁W\",\n        -8.927785873413086\n      ],\n      [\n        \"▁away\",\n        -8.928759574890137\n      ],\n      [\n        \"▁wird\",\n        -8.931641578674316\n      ],\n      [\n        \"▁until\",\n        -8.934249877929688\n      ],\n      [\n        \"V\",\n        -8.934935569763184\n      ],\n      [\n        \"▁pre\",\n        -8.935851097106934\n      ],\n      [\n        \"▁One\",\n        -8.936429977416992\n      ],\n      [\n        \"▁product\",\n        -8.936561584472656\n      ],\n      [\n        \"▁often\",\n        -8.939326286315918\n      ],\n      [\n        \"▁wir\",\n        -8.944111824035645\n      ],\n      [\n        \"▁nach\",\n        -8.945127487182617\n      ],\n      [\n        \"▁include\",\n        -8.946555137634277\n      ],\n      [\n        \"▁um\",\n        -8.948204040527344\n      ],\n      [\n        \"▁room\",\n        -8.953709602355957\n      ],\n      [\n        \"▁group\",\n        -8.953767776489258\n      ],\n      [\n        \"▁name\",\n        -8.954949378967285\n      ],\n      [\n        \"ce\",\n        -8.955448150634766\n      ],\n      [\n        \"H\",\n        -8.956180572509766\n      ],\n      [\n        \"N\",\n        -8.958139419555664\n      ],\n      [\n        \"▁person\",\n        -8.958183288574219\n      ],\n      [\n        \"▁social\",\n        -8.958606719970703\n      ],\n      [\n        \"▁list\",\n        -8.963666915893555\n      ],\n      [\n        \"▁How\",\n        -8.964127540588379\n      ],\n      [\n        \"▁why\",\n        -8.96571159362793\n      ],\n      [\n        \"▁community\",\n        -8.965995788574219\n      ],\n      [\n        \"▁contact\",\n        -8.973031044006348\n      ],\n      [\n        \"­\",\n        -8.9755859375\n      ],\n      [\n        \"▁co\",\n        -8.979683876037598\n      ],\n      [\n        \"▁play\",\n        -8.983960151672363\n      ],\n      [\n        \"▁having\",\n        -8.984169960021973\n      ],\n      [\n        \"▁power\",\n        -8.986917495727539\n      ],\n      [\n        \"▁call\",\n        -8.991690635681152\n      ],\n      [\n        \"▁against\",\n        -8.991816520690918\n      ],\n      [\n        \"▁become\",\n        -8.997780799865723\n      ],\n      [\n        \"▁cost\",\n        -9.003793716430664\n      ],\n      [\n        \"▁V\",\n        -9.004593849182129\n      ],\n      [\n        \"▁research\",\n        -9.006913185119629\n      ],\n      [\n        \"▁12\",\n        -9.007307052612305\n      ],\n      [\n        \"▁wie\",\n        -9.008277893066406\n      ],\n      [\n        \"der\",\n        -9.008386611938477\n      ],\n      [\n        \"▁thing\",\n        -9.014028549194336\n      ],\n      [\n        \"▁along\",\n        -9.017301559448242\n      ],\n      [\n        \"4\",\n        -9.017330169677734\n      ],\n      [\n        \"▁access\",\n        -9.020391464233398\n      ],\n      [\n        \"▁level\",\n        -9.020505905151367\n      ],\n      [\n        \"▁price\",\n        -9.022817611694336\n      ],\n      [\n        \"▁einen\",\n        -9.023714065551758\n      ],\n      [\n        \"▁side\",\n        -9.026359558105469\n      ],\n      [\n        \"▁Un\",\n        -9.026851654052734\n      ],\n      [\n        \"▁means\",\n        -9.030416488647461\n      ],\n      [\n        \"(\",\n        -9.032341957092285\n      ],\n      [\n        \"▁big\",\n        -9.034374237060547\n      ],\n      [\n        \"▁God\",\n        -9.036499977111816\n      ],\n      [\n        \"▁dass\",\n        -9.037314414978027\n      ],\n      [\n        \"im\",\n        -9.037374496459961\n      ],\n      [\n        \"▁30\",\n        -9.037432670593262\n      ],\n      [\n        \"▁event\",\n        -9.041665077209473\n      ],\n      [\n        \"▁development\",\n        -9.042060852050781\n      ],\n      [\n        \"▁form\",\n        -9.04226303100586\n      ],\n      [\n        \"▁read\",\n        -9.042579650878906\n      ],\n      [\n        \"▁hand\",\n        -9.043194770812988\n      ],\n      [\n        \"▁control\",\n        -9.04446792602539\n      ],\n      [\n        \"▁However\",\n        -9.046320915222168\n      ],\n      [\n        \"▁done\",\n        -9.048060417175293\n      ],\n      [\n        \"▁job\",\n        -9.051692008972168\n      ],\n      [\n        \"▁hard\",\n        -9.056619644165039\n      ],\n      [\n        \"▁war\",\n        -9.057538032531738\n      ],\n      [\n        \"▁area\",\n        -9.0584135055542\n      ],\n      [\n        \"▁add\",\n        -9.0586576461792\n      ],\n      [\n        \"▁votre\",\n        -9.0593900680542\n      ],\n      [\n        \"▁live\",\n        -9.059494018554688\n      ],\n      [\n        \"▁range\",\n        -9.060099601745605\n      ],\n      [\n        \"▁After\",\n        -9.060164451599121\n      ],\n      [\n        \"▁Les\",\n        -9.060513496398926\n      ],\n      [\n        \"▁far\",\n        -9.064413070678711\n      ],\n      [\n        \"ver\",\n        -9.064727783203125\n      ],\n      [\n        \"▁old\",\n        -9.069576263427734\n      ],\n      [\n        \"▁perfect\",\n        -9.06976318359375\n      ],\n      [\n        \"▁15\",\n        -9.070429801940918\n      ],\n      [\n        \"▁space\",\n        -9.073654174804688\n      ],\n      [\n        \"▁house\",\n        -9.074068069458008\n      ],\n      [\n        \"ine\",\n        -9.07408618927002\n      ],\n      [\n        \"▁enough\",\n        -9.074334144592285\n      ],\n      [\n        \"0\",\n        -9.075824737548828\n      ],\n      [\n        \"▁several\",\n        -9.077119827270508\n      ],\n      [\n        \"The\",\n        -9.081155776977539\n      ],\n      [\n        \"mm\",\n        -9.085619926452637\n      ],\n      [\n        \"▁University\",\n        -9.08637523651123\n      ],\n      [\n        \"▁diese\",\n        -9.087566375732422\n      ],\n      [\n        \"▁Co\",\n        -9.088335990905762\n      ],\n      [\n        \"▁comes\",\n        -9.088497161865234\n      ],\n      [\n        \"▁across\",\n        -9.088857650756836\n      ],\n      [\n        \"▁already\",\n        -9.090097427368164\n      ],\n      [\n        \",”\",\n        -9.090341567993164\n      ],\n      [\n        \"▁body\",\n        -9.09276294708252\n      ],\n      [\n        \"▁Das\",\n        -9.094594955444336\n      ],\n      [\n        \"▁einer\",\n        -9.095956802368164\n      ],\n      [\n        \"▁left\",\n        -9.09921646118164\n      ],\n      [\n        \"▁future\",\n        -9.105711936950684\n      ],\n      [\n        \"▁times\",\n        -9.106670379638672\n      ],\n      [\n        \"▁dar\",\n        -9.109651565551758\n      ],\n      [\n        \"▁simple\",\n        -9.110408782958984\n      ],\n      [\n        \"ry\",\n        -9.112407684326172\n      ],\n      [\n        \"▁getting\",\n        -9.113155364990234\n      ],\n      [\n        \"▁try\",\n        -9.115362167358398\n      ],\n      [\n        \"ți\",\n        -9.116897583007812\n      ],\n      [\n        \"ness\",\n        -9.120043754577637\n      ],\n      [\n        \"▁makes\",\n        -9.120377540588379\n      ],\n      [\n        \"▁past\",\n        -9.120619773864746\n      ],\n      [\n        \"ca\",\n        -9.12130069732666\n      ],\n      [\n        \"▁light\",\n        -9.122207641601562\n      ],\n      [\n        \"▁Der\",\n        -9.122997283935547\n      ],\n      [\n        \"▁run\",\n        -9.125843048095703\n      ],\n      [\n        \"▁four\",\n        -9.126943588256836\n      ],\n      [\n        \"ance\",\n        -9.130500793457031\n      ],\n      [\n        \"▁ever\",\n        -9.131503105163574\n      ],\n      [\n        \"▁einem\",\n        -9.131816864013672\n      ],\n      [\n        \"▁below\",\n        -9.133723258972168\n      ],\n      [\n        \"O\",\n        -9.134073257446289\n      ],\n      [\n        \"▁9\",\n        -9.137282371520996\n      ],\n      [\n        \"▁learn\",\n        -9.14004135131836\n      ],\n      [\n        \"out\",\n        -9.140358924865723\n      ],\n      [\n        \"▁video\",\n        -9.143178939819336\n      ],\n      [\n        \"▁etc\",\n        -9.146929740905762\n      ],\n      [\n        \"▁«\",\n        -9.148795127868652\n      ],\n      [\n        \"▁zum\",\n        -9.149712562561035\n      ],\n      [\n        \"▁kann\",\n        -9.1504487991333\n      ],\n      [\n        \"▁minutes\",\n        -9.151180267333984\n      ],\n      [\n        \"▁example\",\n        -9.154194831848145\n      ],\n      [\n        \"▁nous\",\n        -9.154619216918945\n      ],\n      [\n        \"▁Se\",\n        -9.157441139221191\n      ],\n      [\n        \"▁sie\",\n        -9.159955024719238\n      ],\n      [\n        \"▁industry\",\n        -9.161614418029785\n      ],\n      [\n        \"▁problem\",\n        -9.162016868591309\n      ],\n      [\n        \"J\",\n        -9.162480354309082\n      ],\n      [\n        \"▁country\",\n        -9.163366317749023\n      ],\n      [\n        \"▁fact\",\n        -9.164189338684082\n      ],\n      [\n        \"▁type\",\n        -9.164190292358398\n      ],\n      [\n        \"ner\",\n        -9.164238929748535\n      ],\n      [\n        \"▁companies\",\n        -9.165864944458008\n      ],\n      [\n        \"▁line\",\n        -9.169849395751953\n      ],\n      [\n        \"▁city\",\n        -9.172713279724121\n      ],\n      [\n        \"▁check\",\n        -9.173710823059082\n      ],\n      [\n        \"▁doing\",\n        -9.174406051635742\n      ],\n      [\n        \"elle\",\n        -9.175037384033203\n      ],\n      [\n        \"▁fun\",\n        -9.176549911499023\n      ],\n      [\n        \"▁En\",\n        -9.177546501159668\n      ],\n      [\n        \"▁Your\",\n        -9.178601264953613\n      ],\n      [\n        \"ling\",\n        -9.181450843811035\n      ],\n      [\n        \"▁share\",\n        -9.18185806274414\n      ],\n      [\n        \"ile\",\n        -9.182005882263184\n      ],\n      [\n        \"▁actually\",\n        -9.187544822692871\n      ],\n      [\n        \"▁value\",\n        -9.187751770019531\n      ],\n      [\n        \"zi\",\n        -9.188661575317383\n      ],\n      [\n        \"▁ab\",\n        -9.1898832321167\n      ],\n      [\n        \"▁offers\",\n        -9.1905517578125\n      ],\n      [\n        \"▁less\",\n        -9.190573692321777\n      ],\n      [\n        \"▁night\",\n        -9.193560600280762\n      ],\n      [\n        \"▁Dr\",\n        -9.19518756866455\n      ],\n      [\n        \"▁started\",\n        -9.195454597473145\n      ],\n      [\n        \"▁least\",\n        -9.198020935058594\n      ],\n      [\n        \"▁short\",\n        -9.198562622070312\n      ],\n      [\n        \"▁main\",\n        -9.201143264770508\n      ],\n      [\n        \"▁single\",\n        -9.202939987182617\n      ],\n      [\n        \"▁though\",\n        -9.203780174255371\n      ],\n      [\n        \"▁prin\",\n        -9.203930854797363\n      ],\n      [\n        \"time\",\n        -9.20531177520752\n      ],\n      [\n        \"▁hours\",\n        -9.206608772277832\n      ],\n      [\n        \"▁others\",\n        -9.206849098205566\n      ],\n      [\n        \"▁called\",\n        -9.20730209350586\n      ],\n      [\n        \"▁visit\",\n        -9.208869934082031\n      ],\n      [\n        \"▁bit\",\n        -9.209009170532227\n      ],\n      [\n        \"ée\",\n        -9.210821151733398\n      ],\n      [\n        \"▁customers\",\n        -9.211383819580078\n      ],\n      [\n        \"▁music\",\n        -9.212000846862793\n      ],\n      [\n        \"▁members\",\n        -9.217191696166992\n      ],\n      [\n        \"ies\",\n        -9.21743392944336\n      ],\n      [\n        \"▁pay\",\n        -9.219176292419434\n      ],\n      [\n        \"nd\",\n        -9.219744682312012\n      ],\n      [\n        \"▁once\",\n        -9.221125602722168\n      ],\n      [\n        \"gen\",\n        -9.2217378616333\n      ],\n      [\n        \"▁können\",\n        -9.222976684570312\n      ],\n      [\n        \"▁low\",\n        -9.223771095275879\n      ],\n      [\n        \"▁durch\",\n        -9.227394104003906\n      ],\n      [\n        \"▁story\",\n        -9.228075981140137\n      ],\n      [\n        \"▁understand\",\n        -9.22953987121582\n      ],\n      [\n        \"“\",\n        -9.229856491088867\n      ],\n      [\n        \"▁Am\",\n        -9.231831550598145\n      ],\n      [\n        \"▁didn\",\n        -9.234603881835938\n      ],\n      [\n        \"▁content\",\n        -9.237217903137207\n      ],\n      [\n        \"son\",\n        -9.24180793762207\n      ],\n      [\n        \"▁building\",\n        -9.242242813110352\n      ],\n      [\n        \"▁result\",\n        -9.242605209350586\n      ],\n      [\n        \"▁aux\",\n        -9.243107795715332\n      ],\n      [\n        \"▁complete\",\n        -9.244999885559082\n      ],\n      [\n        \"▁doesn\",\n        -9.24510669708252\n      ],\n      [\n        \"▁haben\",\n        -9.246070861816406\n      ],\n      [\n        \"▁questions\",\n        -9.24661636352539\n      ],\n      [\n        \"line\",\n        -9.247077941894531\n      ],\n      [\n        \"▁technology\",\n        -9.247429847717285\n      ],\n      [\n        \"▁Pro\",\n        -9.247976303100586\n      ],\n      [\n        \"▁current\",\n        -9.248504638671875\n      ],\n      [\n        \"▁won\",\n        -9.248883247375488\n      ],\n      [\n        \"▁let\",\n        -9.250710487365723\n      ],\n      [\n        \"▁features\",\n        -9.251978874206543\n      ],\n      [\n        \"▁please\",\n        -9.258262634277344\n      ],\n      [\n        \"5\",\n        -9.258519172668457\n      ],\n      [\n        \"▁above\",\n        -9.259394645690918\n      ],\n      [\n        \"ive\",\n        -9.262128829956055\n      ],\n      [\n        \"▁management\",\n        -9.262394905090332\n      ],\n      [\n        \"▁lui\",\n        -9.262539863586426\n      ],\n      [\n        \"her\",\n        -9.263057708740234\n      ],\n      [\n        \"▁training\",\n        -9.265711784362793\n      ],\n      [\n        \"▁everything\",\n        -9.2665433883667\n      ],\n      [\n        \"▁noch\",\n        -9.266846656799316\n      ],\n      [\n        \"▁came\",\n        -9.267708778381348\n      ],\n      [\n        \"▁web\",\n        -9.272823333740234\n      ],\n      [\n        \"▁ensure\",\n        -9.272987365722656\n      ],\n      [\n        \"▁months\",\n        -9.273130416870117\n      ],\n      [\n        \"▁art\",\n        -9.27313232421875\n      ],\n      [\n        \"▁sub\",\n        -9.274359703063965\n      ],\n      [\n        \"▁million\",\n        -9.274559020996094\n      ],\n      [\n        \"▁professional\",\n        -9.275035858154297\n      ],\n      [\n        \"▁results\",\n        -9.278368949890137\n      ],\n      [\n        \"▁kind\",\n        -9.278395652770996\n      ],\n      [\n        \"▁season\",\n        -9.279285430908203\n      ],\n      [\n        \"▁unique\",\n        -9.281067848205566\n      ],\n      [\n        \"ze\",\n        -9.284360885620117\n      ],\n      [\n        \"▁enjoy\",\n        -9.28487777709961\n      ],\n      [\n        \"▁early\",\n        -9.287765502929688\n      ],\n      [\n        \"▁major\",\n        -9.288202285766602\n      ],\n      [\n        \"▁yet\",\n        -9.29152774810791\n      ],\n      [\n        \"▁Ver\",\n        -9.293331146240234\n      ],\n      [\n        \"one\",\n        -9.296777725219727\n      ],\n      [\n        \"▁media\",\n        -9.29719352722168\n      ],\n      [\n        \"▁[\",\n        -9.30095100402832\n      ],\n      [\n        \"▁property\",\n        -9.302969932556152\n      ],\n      [\n        \"▁beautiful\",\n        -9.304466247558594\n      ],\n      [\n        \"▁given\",\n        -9.305286407470703\n      ],\n      [\n        \"▁due\",\n        -9.306716918945312\n      ],\n      [\n        \"▁government\",\n        -9.307181358337402\n      ],\n      [\n        \"▁nur\",\n        -9.30881404876709\n      ],\n      [\n        \"▁email\",\n        -9.309103012084961\n      ],\n      [\n        \"▁total\",\n        -9.311080932617188\n      ],\n      [\n        \"▁natural\",\n        -9.311264038085938\n      ],\n      [\n        \"▁test\",\n        -9.311450004577637\n      ],\n      [\n        \"▁provides\",\n        -9.311640739440918\n      ],\n      [\n        \"▁various\",\n        -9.312631607055664\n      ],\n      [\n        \"▁American\",\n        -9.315605163574219\n      ],\n      [\n        \"▁moment\",\n        -9.318109512329102\n      ],\n      [\n        \"▁air\",\n        -9.318952560424805\n      ],\n      [\n        \"▁idea\",\n        -9.319236755371094\n      ],\n      [\n        \"▁known\",\n        -9.319981575012207\n      ],\n      [\n        \"▁Il\",\n        -9.320504188537598\n      ],\n      [\n        \"▁friends\",\n        -9.320576667785645\n      ],\n      [\n        \"▁final\",\n        -9.320919036865234\n      ],\n      [\n        \"▁buy\",\n        -9.32139778137207\n      ],\n      [\n        \"▁specific\",\n        -9.322234153747559\n      ],\n      [\n        \"▁issues\",\n        -9.32454776763916\n      ],\n      [\n        \"▁took\",\n        -9.325233459472656\n      ],\n      [\n        \"▁mind\",\n        -9.326258659362793\n      ],\n      [\n        \"▁study\",\n        -9.32675838470459\n      ],\n      [\n        \"▁addition\",\n        -9.328418731689453\n      ],\n      [\n        \"▁size\",\n        -9.332446098327637\n      ],\n      [\n        \"▁pro\",\n        -9.334047317504883\n      ],\n      [\n        \"▁film\",\n        -9.33545970916748\n      ],\n      [\n        \"▁pot\",\n        -9.335636138916016\n      ],\n      [\n        \"▁thought\",\n        -9.338120460510254\n      ],\n      [\n        \"▁tell\",\n        -9.33890438079834\n      ],\n      [\n        \"▁While\",\n        -9.339675903320312\n      ],\n      [\n        \"▁head\",\n        -9.339983940124512\n      ],\n      [\n        \"▁clients\",\n        -9.340429306030273\n      ],\n      [\n        \"▁performance\",\n        -9.346199989318848\n      ],\n      [\n        \"▁question\",\n        -9.346835136413574\n      ],\n      [\n        \"▁whether\",\n        -9.347925186157227\n      ],\n      [\n        \"▁certain\",\n        -9.34826946258545\n      ],\n      [\n        \"▁model\",\n        -9.348764419555664\n      ],\n      [\n        \"▁following\",\n        -9.350926399230957\n      ],\n      [\n        \"▁energy\",\n        -9.354207992553711\n      ],\n      [\n        \"▁office\",\n        -9.354207992553711\n      ],\n      [\n        \"▁whole\",\n        -9.356687545776367\n      ],\n      [\n        \"▁bring\",\n        -9.356956481933594\n      ],\n      [\n        \"▁required\",\n        -9.35726261138916\n      ],\n      [\n        \"ţi\",\n        -9.358223915100098\n      ],\n      [\n        \"▁date\",\n        -9.358695030212402\n      ],\n      [\n        \"_\",\n        -9.358983039855957\n      ],\n      [\n        \"que\",\n        -9.359789848327637\n      ],\n      [\n        \"▁da\",\n        -9.360264778137207\n      ],\n      [\n        \"▁US\",\n        -9.36120319366455\n      ],\n      [\n        \"▁taking\",\n        -9.36143684387207\n      ],\n      [\n        \"go\",\n        -9.362788200378418\n      ],\n      [\n        \"▁living\",\n        -9.36341667175293\n      ],\n      [\n        \"▁someone\",\n        -9.363489151000977\n      ],\n      [\n        \"▁heart\",\n        -9.365120887756348\n      ],\n      [\n        \"▁key\",\n        -9.365775108337402\n      ],\n      [\n        \"▁areas\",\n        -9.366238594055176\n      ],\n      [\n        \"▁says\",\n        -9.367013931274414\n      ],\n      [\n        \"▁2018\",\n        -9.369132041931152\n      ],\n      [\n        \"▁month\",\n        -9.37012767791748\n      ],\n      [\n        \"▁Er\",\n        -9.371354103088379\n      ],\n      [\n        \"ste\",\n        -9.375077247619629\n      ],\n      [\n        \"▁11\",\n        -9.375179290771484\n      ],\n      [\n        \"▁front\",\n        -9.37528133392334\n      ],\n      [\n        \"▁Now\",\n        -9.37669563293457\n      ],\n      [\n        \"▁class\",\n        -9.376946449279785\n      ],\n      [\n        \"▁choose\",\n        -9.377082824707031\n      ],\n      [\n        \"pe\",\n        -9.37808609008789\n      ],\n      [\n        \"▁further\",\n        -9.379021644592285\n      ],\n      [\n        \"▁believe\",\n        -9.37936019897461\n      ],\n      [\n        \"of\",\n        -9.379590034484863\n      ],\n      [\n        \"▁among\",\n        -9.380990982055664\n      ],\n      [\n        \"sch\",\n        -9.381686210632324\n      ],\n      [\n        \"▁child\",\n        -9.382609367370605\n      ],\n      [\n        \"▁aber\",\n        -9.38376235961914\n      ],\n      [\n        \"▁Please\",\n        -9.386269569396973\n      ],\n      [\n        \"rea\",\n        -9.387248992919922\n      ],\n      [\n        \"▁later\",\n        -9.387272834777832\n      ],\n      [\n        \"▁amount\",\n        -9.388760566711426\n      ],\n      [\n        \"ice\",\n        -9.390128135681152\n      ],\n      [\n        \"▁National\",\n        -9.390177726745605\n      ],\n      [\n        \"▁style\",\n        -9.390748977661133\n      ],\n      [\n        \"▁tout\",\n        -9.391490936279297\n      ],\n      [\n        \"▁staff\",\n        -9.392939567565918\n      ],\n      [\n        \"▁white\",\n        -9.397933959960938\n      ],\n      [\n        \"▁ge\",\n        -9.399179458618164\n      ],\n      [\n        \"▁five\",\n        -9.400984764099121\n      ],\n      [\n        \"▁blog\",\n        -9.40109920501709\n      ],\n      [\n        \"▁designed\",\n        -9.40125846862793\n      ],\n      [\n        \"▁went\",\n        -9.402216911315918\n      ],\n      [\n        \"▁Da\",\n        -9.40268611907959\n      ],\n      [\n        \"▁general\",\n        -9.403801918029785\n      ],\n      [\n        \"▁rest\",\n        -9.403874397277832\n      ],\n      [\n        \"▁zur\",\n        -9.40579891204834\n      ],\n      [\n        \"▁quite\",\n        -9.405948638916016\n      ],\n      [\n        \"per\",\n        -9.40687084197998\n      ],\n      [\n        \"▁customer\",\n        -9.408379554748535\n      ],\n      [\n        \"▁close\",\n        -9.408747673034668\n      ],\n      [\n        \"▁Some\",\n        -9.41054630279541\n      ],\n      [\n        \"▁women\",\n        -9.41075611114502\n      ],\n      [\n        \"▁move\",\n        -9.410761833190918\n      ],\n      [\n        \"▁software\",\n        -9.411357879638672\n      ],\n      [\n        \"▁Ein\",\n        -9.413651466369629\n      ],\n      [\n        \"▁Ab\",\n        -9.413823127746582\n      ],\n      [\n        \"▁history\",\n        -9.413864135742188\n      ],\n      [\n        \"▁either\",\n        -9.41564655303955\n      ],\n      [\n        \"▁seen\",\n        -9.417396545410156\n      ],\n      [\n        \"▁card\",\n        -9.419726371765137\n      ],\n      [\n        \"▁City\",\n        -9.421541213989258\n      ],\n      [\n        \"▁hope\",\n        -9.421769142150879\n      ],\n      [\n        \"▁16\",\n        -9.422072410583496\n      ],\n      [\n        \"és\",\n        -9.422825813293457\n      ],\n      [\n        \"va\",\n        -9.423294067382812\n      ],\n      [\n        \"▁Al\",\n        -9.423827171325684\n      ],\n      [\n        \"▁especially\",\n        -9.424827575683594\n      ],\n      [\n        \"▁view\",\n        -9.426136016845703\n      ],\n      [\n        \"men\",\n        -9.427363395690918\n      ],\n      [\n        \"▁account\",\n        -9.427489280700684\n      ],\n      [\n        \"▁needed\",\n        -9.429777145385742\n      ],\n      [\n        \"▁United\",\n        -9.429789543151855\n      ],\n      [\n        \"]\",\n        -9.432387351989746\n      ],\n      [\n        \"▁yourself\",\n        -9.432788848876953\n      ],\n      [\n        \"▁100\",\n        -9.433059692382812\n      ],\n      [\n        \"▁receive\",\n        -9.433417320251465\n      ],\n      [\n        \"▁ideas\",\n        -9.43369197845459\n      ],\n      [\n        \"▁writing\",\n        -9.434585571289062\n      ],\n      [\n        \"▁simply\",\n        -9.434741973876953\n      ],\n      [\n        \"▁present\",\n        -9.435087203979492\n      ],\n      [\n        \"▁continue\",\n        -9.436107635498047\n      ],\n      [\n        \"▁application\",\n        -9.44115161895752\n      ],\n      [\n        \"▁build\",\n        -9.44187068939209\n      ],\n      [\n        \"▁turn\",\n        -9.44249439239502\n      ],\n      [\n        \"ated\",\n        -9.442923545837402\n      ],\n      [\n        \"▁everyone\",\n        -9.443060874938965\n      ],\n      [\n        \"cette\",\n        -9.443114280700684\n      ],\n      [\n        \"▁bien\",\n        -9.444964408874512\n      ],\n      [\n        \"less\",\n        -9.445222854614258\n      ],\n      [\n        \"▁Si\",\n        -9.445359230041504\n      ],\n      [\n        \"▁original\",\n        -9.446867942810059\n      ],\n      [\n        \"8\",\n        -9.44794750213623\n      ],\n      [\n        \"▁individual\",\n        -9.448895454406738\n      ],\n      [\n        \"tre\",\n        -9.449433326721191\n      ],\n      [\n        \"▁works\",\n        -9.45171070098877\n      ],\n      [\n        \"▁options\",\n        -9.451821327209473\n      ],\n      [\n        \"▁May\",\n        -9.454456329345703\n      ],\n      [\n        \"▁Not\",\n        -9.454940795898438\n      ],\n      [\n        \"▁report\",\n        -9.455467224121094\n      ],\n      [\n        \"mer\",\n        -9.457239151000977\n      ],\n      [\n        \"▁human\",\n        -9.459118843078613\n      ],\n      [\n        \"▁provided\",\n        -9.459603309631348\n      ],\n      [\n        \"▁By\",\n        -9.460925102233887\n      ],\n      [\n        \"▁series\",\n        -9.462006568908691\n      ],\n      [\n        \"7\",\n        -9.46226692199707\n      ],\n      [\n        \"▁modern\",\n        -9.463875770568848\n      ],\n      [\n        \"▁meet\",\n        -9.463921546936035\n      ],\n      [\n        \"▁50\",\n        -9.464119911193848\n      ],\n      [\n        \"▁25\",\n        -9.46969985961914\n      ],\n      [\n        \"▁color\",\n        -9.470091819763184\n      ],\n      [\n        \"▁download\",\n        -9.470109939575195\n      ],\n      [\n        \"▁Here\",\n        -9.471144676208496\n      ],\n      [\n        \"6\",\n        -9.471323013305664\n      ],\n      [\n        \"▁poate\",\n        -9.471449851989746\n      ],\n      [\n        \"▁În\",\n        -9.472321510314941\n      ],\n      [\n        \"▁phone\",\n        -9.473695755004883\n      ],\n      [\n        \"▁likely\",\n        -9.474374771118164\n      ],\n      [\n        \"▁table\",\n        -9.476469993591309\n      ],\n      [\n        \"▁ma\",\n        -9.476551055908203\n      ],\n      [\n        \"▁Or\",\n        -9.479181289672852\n      ],\n      [\n        \"Z\",\n        -9.48026180267334\n      ],\n      [\n        \"▁19\",\n        -9.482215881347656\n      ],\n      [\n        \"▁insurance\",\n        -9.482544898986816\n      ],\n      [\n        \"▁anything\",\n        -9.483808517456055\n      ],\n      [\n        \"▁search\",\n        -9.485033988952637\n      ],\n      [\n        \"▁Ge\",\n        -9.48520565032959\n      ],\n      [\n        \"▁issue\",\n        -9.485564231872559\n      ],\n      [\n        \"▁includes\",\n        -9.485688209533691\n      ],\n      [\n        \"▁clear\",\n        -9.487342834472656\n      ],\n      [\n        \"les\",\n        -9.488021850585938\n      ],\n      [\n        \"▁almost\",\n        -9.488259315490723\n      ],\n      [\n        \"ilor\",\n        -9.48935317993164\n      ],\n      [\n        \"▁14\",\n        -9.490717887878418\n      ],\n      [\n        \"by\",\n        -9.494056701660156\n      ],\n      [\n        \"▁Du\",\n        -9.49624252319336\n      ],\n      [\n        \"▁mais\",\n        -9.497303009033203\n      ],\n      [\n        \"ier\",\n        -9.499163627624512\n      ],\n      [\n        \"▁law\",\n        -9.49924087524414\n      ],\n      [\n        \"▁added\",\n        -9.500134468078613\n      ],\n      [\n        \"▁con\",\n        -9.500962257385254\n      ],\n      [\n        \",\\\"\",\n        -9.501530647277832\n      ],\n      [\n        \"▁ago\",\n        -9.502127647399902\n      ],\n      [\n        \"▁His\",\n        -9.504697799682617\n      ],\n      [\n        \"▁points\",\n        -9.504981994628906\n      ],\n      [\n        \"▁mult\",\n        -9.505581855773926\n      ],\n      [\n        \"▁financial\",\n        -9.506216049194336\n      ],\n      [\n        \"▁problems\",\n        -9.506428718566895\n      ],\n      [\n        \"▁however\",\n        -9.50648307800293\n      ],\n      [\n        \"▁events\",\n        -9.50675106048584\n      ],\n      [\n        \"▁half\",\n        -9.507889747619629\n      ],\n      [\n        \"ard\",\n        -9.511183738708496\n      ],\n      [\n        \"▁ask\",\n        -9.51156997680664\n      ],\n      [\n        \"▁version\",\n        -9.511631965637207\n      ],\n      [\n        \"end\",\n        -9.512478828430176\n      ],\n      [\n        \"▁created\",\n        -9.512639999389648\n      ],\n      [\n        \"▁lead\",\n        -9.512917518615723\n      ],\n      [\n        \"▁focus\",\n        -9.513853073120117\n      ],\n      [\n        \"▁increase\",\n        -9.515096664428711\n      ],\n      [\n        \"ex\",\n        -9.515118598937988\n      ],\n      [\n        \"▁allow\",\n        -9.515798568725586\n      ],\n      [\n        \"▁extra\",\n        -9.516464233398438\n      ],\n      [\n        \"▁24\",\n        -9.516692161560059\n      ],\n      [\n        \"▁credit\",\n        -9.516772270202637\n      ],\n      [\n        \"▁production\",\n        -9.516801834106445\n      ],\n      [\n        \"zu\",\n        -9.517256736755371\n      ],\n      [\n        \"▁black\",\n        -9.51754093170166\n      ],\n      [\n        \"▁systems\",\n        -9.518040657043457\n      ],\n      [\n        \"▁17\",\n        -9.518178939819336\n      ],\n      [\n        \"▁opportunity\",\n        -9.518531799316406\n      ],\n      [\n        \"▁bis\",\n        -9.519219398498535\n      ],\n      [\n        \"▁fast\",\n        -9.519807815551758\n      ],\n      [\n        \"ring\",\n        -9.521166801452637\n      ],\n      [\n        \"▁Don\",\n        -9.522114753723145\n      ],\n      [\n        \"▁via\",\n        -9.52242660522461\n      ],\n      [\n        \"fer\",\n        -9.5225248336792\n      ],\n      [\n        \"▁comme\",\n        -9.522799491882324\n      ],\n      [\n        \"▁popular\",\n        -9.523722648620605\n      ],\n      [\n        \"▁South\",\n        -9.524491310119629\n      ],\n      [\n        \"ating\",\n        -9.525003433227539\n      ],\n      [\n        \"▁State\",\n        -9.525198936462402\n      ],\n      [\n        \"ator\",\n        -9.525679588317871\n      ],\n      [\n        \"▁common\",\n        -9.525968551635742\n      ],\n      [\n        \"con\",\n        -9.526727676391602\n      ],\n      [\n        \"▁throughout\",\n        -9.527557373046875\n      ],\n      [\n        \"▁risk\",\n        -9.52774715423584\n      ],\n      [\n        \"▁young\",\n        -9.528532028198242\n      ],\n      [\n        \"▁Je\",\n        -9.528688430786133\n      ],\n      [\n        \"▁image\",\n        -9.52928352355957\n      ],\n      [\n        \"ha\",\n        -9.529376983642578\n      ],\n      [\n        \"▁third\",\n        -9.529587745666504\n      ],\n      [\n        \"▁taken\",\n        -9.530049324035645\n      ],\n      [\n        \"▁Z\",\n        -9.5314302444458\n      ],\n      [\n        \"▁dis\",\n        -9.5316162109375\n      ],\n      [\n        \"▁From\",\n        -9.533575057983398\n      ],\n      [\n        \"▁details\",\n        -9.534862518310547\n      ],\n      [\n        \"▁games\",\n        -9.53516674041748\n      ],\n      [\n        \"▁practice\",\n        -9.536040306091309\n      ],\n      [\n        \"che\",\n        -9.536151885986328\n      ],\n      [\n        \"▁security\",\n        -9.537364959716797\n      ],\n      [\n        \"▁medical\",\n        -9.537653923034668\n      ],\n      [\n        \"▁learning\",\n        -9.537806510925293\n      ],\n      [\n        \"▁material\",\n        -9.538509368896484\n      ],\n      [\n        \"▁international\",\n        -9.540703773498535\n      ],\n      [\n        \"▁forward\",\n        -9.541245460510254\n      ],\n      [\n        \"▁paper\",\n        -9.541247367858887\n      ],\n      [\n        \"▁action\",\n        -9.541348457336426\n      ],\n      [\n        \"▁file\",\n        -9.542378425598145\n      ],\n      [\n        \"▁oil\",\n        -9.543096542358398\n      ],\n      [\n        \"▁self\",\n        -9.54377555847168\n      ],\n      [\n        \"▁private\",\n        -9.545247077941895\n      ],\n      [\n        \"▁interest\",\n        -9.545559883117676\n      ],\n      [\n        \"bar\",\n        -9.546065330505371\n      ],\n      [\n        \"▁sale\",\n        -9.547115325927734\n      ],\n      [\n        \"▁stay\",\n        -9.547348976135254\n      ],\n      [\n        \"ke\",\n        -9.548089981079102\n      ],\n      [\n        \"▁San\",\n        -9.549053192138672\n      ],\n      [\n        \"▁matter\",\n        -9.549870491027832\n      ],\n      [\n        \"▁reason\",\n        -9.550254821777344\n      ],\n      [\n        \"ted\",\n        -9.55147647857666\n      ],\n      [\n        \"▁potential\",\n        -9.551742553710938\n      ],\n      [\n        \"▁brand\",\n        -9.552441596984863\n      ],\n      [\n        \"▁field\",\n        -9.55315113067627\n      ],\n      [\n        \"▁treatment\",\n        -9.553420066833496\n      ],\n      [\n        \"▁period\",\n        -9.553516387939453\n      ],\n      [\n        \"▁York\",\n        -9.553890228271484\n      ],\n      [\n        \"▁Park\",\n        -9.554738998413086\n      ],\n      [\n        \"▁acest\",\n        -9.556009292602539\n      ],\n      [\n        \"ou\",\n        -9.556926727294922\n      ],\n      [\n        \"▁Ce\",\n        -9.557014465332031\n      ],\n      [\n        \"▁ready\",\n        -9.558111190795898\n      ],\n      [\n        \"▁rather\",\n        -9.55860424041748\n      ],\n      [\n        \"▁outside\",\n        -9.560086250305176\n      ],\n      [\n        \"▁standard\",\n        -9.560121536254883\n      ],\n      [\n        \"▁located\",\n        -9.560770034790039\n      ],\n      [\n        \"▁marketing\",\n        -9.562313079833984\n      ],\n      [\n        \"cu\",\n        -9.564041137695312\n      ],\n      [\n        \"▁Can\",\n        -9.564562797546387\n      ],\n      [\n        \"▁education\",\n        -9.566105842590332\n      ],\n      [\n        \"use\",\n        -9.566640853881836\n      ],\n      [\n        \"▁role\",\n        -9.566828727722168\n      ],\n      [\n        \"▁men\",\n        -9.571505546569824\n      ],\n      [\n        \"▁probably\",\n        -9.571550369262695\n      ],\n      [\n        \"▁store\",\n        -9.57221508026123\n      ],\n      [\n        \"▁John\",\n        -9.572355270385742\n      ],\n      [\n        \"▁rate\",\n        -9.573956489562988\n      ],\n      [\n        \"▁code\",\n        -9.573994636535645\n      ],\n      [\n        \"▁kids\",\n        -9.574408531188965\n      ],\n      [\n        \"▁currently\",\n        -9.57552719116211\n      ],\n      [\n        \"▁near\",\n        -9.576475143432617\n      ],\n      [\n        \"▁sales\",\n        -9.576716423034668\n      ],\n      [\n        \"▁usually\",\n        -9.577012062072754\n      ],\n      [\n        \"▁activities\",\n        -9.577242851257324\n      ],\n      [\n        \"▁party\",\n        -9.577371597290039\n      ],\n      [\n        \"▁leur\",\n        -9.577434539794922\n      ],\n      [\n        \"▁particular\",\n        -9.577627182006836\n      ],\n      [\n        \"▁mehr\",\n        -9.577707290649414\n      ],\n      [\n        \"ill\",\n        -9.578757286071777\n      ],\n      [\n        \"▁percent\",\n        -9.579113006591797\n      ],\n      [\n        \"▁fait\",\n        -9.579537391662598\n      ],\n      [\n        \"▁happy\",\n        -9.579904556274414\n      ],\n      [\n        \"▁inside\",\n        -9.58005428314209\n      ],\n      [\n        \"▁save\",\n        -9.580510139465332\n      ],\n      [\n        \"▁skills\",\n        -9.580765724182129\n      ],\n      [\n        \"▁consider\",\n        -9.581025123596191\n      ],\n      [\n        \"▁recent\",\n        -9.58161735534668\n      ],\n      [\n        \"▁strong\",\n        -9.581781387329102\n      ],\n      [\n        \"▁position\",\n        -9.582076072692871\n      ],\n      [\n        \"▁knowledge\",\n        -9.582303047180176\n      ],\n      [\n        \"▁tax\",\n        -9.583868980407715\n      ],\n      [\n        \"▁users\",\n        -9.584261894226074\n      ],\n      [\n        \"und\",\n        -9.585564613342285\n      ],\n      [\n        \"▁coming\",\n        -9.585904121398926\n      ],\n      [\n        \"▁article\",\n        -9.585923194885254\n      ],\n      [\n        \"min\",\n        -9.586345672607422\n      ],\n      [\n        \"▁sein\",\n        -9.586555480957031\n      ],\n      [\n        \"▁travel\",\n        -9.586871147155762\n      ],\n      [\n        \"▁changes\",\n        -9.58765983581543\n      ],\n      [\n        \"▁impact\",\n        -9.588181495666504\n      ],\n      [\n        \"▁wanted\",\n        -9.588460922241211\n      ],\n      [\n        \"▁address\",\n        -9.5885591506958\n      ],\n      [\n        \"▁soon\",\n        -9.58873462677002\n      ],\n      [\n        \"▁North\",\n        -9.588915824890137\n      ],\n      [\n        \"ată\",\n        -9.589237213134766\n      ],\n      [\n        \"▁trying\",\n        -9.58985424041748\n      ],\n      [\n        \"▁app\",\n        -9.590612411499023\n      ],\n      [\n        \"▁School\",\n        -9.592510223388672\n      ],\n      [\n        \"▁Es\",\n        -9.592548370361328\n      ],\n      [\n        \"we\",\n        -9.59261703491211\n      ],\n      [\n        \"▁conditions\",\n        -9.59292984008789\n      ],\n      [\n        \"▁digital\",\n        -9.593293190002441\n      ],\n      [\n        \"▁similar\",\n        -9.594805717468262\n      ],\n      [\n        \"▁solution\",\n        -9.59514331817627\n      ],\n      [\n        \"▁location\",\n        -9.595183372497559\n      ],\n      [\n        \"▁Of\",\n        -9.595418930053711\n      ],\n      [\n        \"▁follow\",\n        -9.595842361450195\n      ],\n      [\n        \"▁red\",\n        -9.597526550292969\n      ],\n      [\n        \"▁review\",\n        -9.599202156066895\n      ],\n      [\n        \"▁skin\",\n        -9.599575996398926\n      ],\n      [\n        \"▁pretty\",\n        -9.600369453430176\n      ],\n      [\n        \"day\",\n        -9.600558280944824\n      ],\n      [\n        \"▁dé\",\n        -9.602072715759277\n      ],\n      [\n        \"▁cause\",\n        -9.602169036865234\n      ],\n      [\n        \"▁Sa\",\n        -9.602463722229004\n      ],\n      [\n        \"▁user\",\n        -9.602520942687988\n      ],\n      [\n        \"▁Man\",\n        -9.603377342224121\n      ],\n      [\n        \"”.\",\n        -9.604146003723145\n      ],\n      [\n        \"▁Just\",\n        -9.604366302490234\n      ],\n      [\n        \"▁faire\",\n        -9.604475021362305\n      ],\n      [\n        \"▁member\",\n        -9.605619430541992\n      ],\n      [\n        \"▁iar\",\n        -9.606892585754395\n      ],\n      [\n        \"▁higher\",\n        -9.607715606689453\n      ],\n      [\n        \"▁step\",\n        -9.607887268066406\n      ],\n      [\n        \"▁wide\",\n        -9.608185768127441\n      ],\n      [\n        \"▁uns\",\n        -9.608920097351074\n      ],\n      [\n        \"▁World\",\n        -9.609135627746582\n      ],\n      [\n        \"▁additional\",\n        -9.61176586151123\n      ],\n      [\n        \"ber\",\n        -9.613197326660156\n      ],\n      [\n        \"▁easily\",\n        -9.613990783691406\n      ],\n      [\n        \"▁deal\",\n        -9.615070343017578\n      ],\n      [\n        \"▁ways\",\n        -9.615514755249023\n      ],\n      [\n        \"▁mobile\",\n        -9.616837501525879\n      ],\n      [\n        \"▁national\",\n        -9.616913795471191\n      ],\n      [\n        \"▁couple\",\n        -9.617389678955078\n      ],\n      [\n        \"▁ihre\",\n        -9.61939811706543\n      ],\n      [\n        \"▁choice\",\n        -9.619612693786621\n      ],\n      [\n        \"for\",\n        -9.619686126708984\n      ],\n      [\n        \"ous\",\n        -9.62070083618164\n      ],\n      [\n        \"▁Google\",\n        -9.620855331420898\n      ],\n      [\n        \"▁environment\",\n        -9.622426986694336\n      ],\n      [\n        \"urile\",\n        -9.623322486877441\n      ],\n      [\n        \"▁Center\",\n        -9.626680374145508\n      ],\n      [\n        \"mp\",\n        -9.628592491149902\n      ],\n      [\n        \"▁»\",\n        -9.629727363586426\n      ],\n      [\n        \"qui\",\n        -9.630680084228516\n      ],\n      [\n        \"▁growth\",\n        -9.631048202514648\n      ],\n      [\n        \"ler\",\n        -9.633174896240234\n      ],\n      [\n        \"▁improve\",\n        -9.63360595703125\n      ],\n      [\n        \"▁items\",\n        -9.6336669921875\n      ],\n      [\n        \"▁Nu\",\n        -9.63393783569336\n      ],\n      [\n        \"▁leave\",\n        -9.634074211120605\n      ],\n      [\n        \"▁true\",\n        -9.634805679321289\n      ],\n      [\n        \"▁wurde\",\n        -9.63487434387207\n      ],\n      [\n        \"▁cannot\",\n        -9.635004043579102\n      ],\n      [\n        \"▁13\",\n        -9.635096549987793\n      ],\n      [\n        \"▁running\",\n        -9.636015892028809\n      ],\n      [\n        \"▁anti\",\n        -9.636177062988281\n      ],\n      [\n        \"▁option\",\n        -9.636306762695312\n      ],\n      [\n        \"▁reading\",\n        -9.63657283782959\n      ],\n      [\n        \"▁Car\",\n        -9.636698722839355\n      ],\n      [\n        \"▁Wir\",\n        -9.638110160827637\n      ],\n      [\n        \"▁April\",\n        -9.63975715637207\n      ],\n      [\n        \"▁behind\",\n        -9.640642166137695\n      ],\n      [\n        \"▁client\",\n        -9.640750885009766\n      ],\n      [\n        \"▁cover\",\n        -9.641012191772461\n      ],\n      [\n        \"▁stop\",\n        -9.641090393066406\n      ],\n      [\n        \"ja\",\n        -9.641277313232422\n      ],\n      [\n        \"▁built\",\n        -9.641307830810547\n      ],\n      [\n        \"▁Con\",\n        -9.641313552856445\n      ],\n      [\n        \"ement\",\n        -9.641366004943848\n      ],\n      [\n        \"▁projects\",\n        -9.641828536987305\n      ],\n      [\n        \"▁variety\",\n        -9.641840934753418\n      ],\n      [\n        \"▁Ihre\",\n        -9.642666816711426\n      ],\n      [\n        \"ș\",\n        -9.64302921295166\n      ],\n      [\n        \"▁unter\",\n        -9.64385986328125\n      ],\n      [\n        \"▁longer\",\n        -9.646577835083008\n      ],\n      [\n        \"year\",\n        -9.647161483764648\n      ],\n      [\n        \"▁photo\",\n        -9.648370742797852\n      ],\n      [\n        \"▁Also\",\n        -9.64933967590332\n      ],\n      [\n        \"▁received\",\n        -9.651098251342773\n      ],\n      [\n        \"▁return\",\n        -9.652676582336426\n      ],\n      [\n        \"00\",\n        -9.653081893920898\n      ],\n      [\n        \"▁bar\",\n        -9.653343200683594\n      ],\n      [\n        \"ary\",\n        -9.654427528381348\n      ],\n      [\n        \"elor\",\n        -9.655137062072754\n      ],\n      [\n        \"▁Home\",\n        -9.656189918518066\n      ],\n      [\n        \"our\",\n        -9.656298637390137\n      ],\n      [\n        \"▁Me\",\n        -9.65771198272705\n      ],\n      [\n        \"▁held\",\n        -9.659111022949219\n      ],\n      [\n        \"▁click\",\n        -9.66014289855957\n      ],\n      [\n        \"▁ex\",\n        -9.660178184509277\n      ],\n      [\n        \"▁cum\",\n        -9.661561965942383\n      ],\n      [\n        \"▁takes\",\n        -9.66395378112793\n      ],\n      [\n        \"▁computer\",\n        -9.665796279907227\n      ],\n      [\n        \"▁told\",\n        -9.668192863464355\n      ],\n      [\n        \"+\",\n        -9.670648574829102\n      ],\n      [\n        \"▁patients\",\n        -9.670809745788574\n      ],\n      [\n        \"ting\",\n        -9.672165870666504\n      ],\n      [\n        \"▁direct\",\n        -9.672248840332031\n      ],\n      [\n        \"▁quickly\",\n        -9.672410011291504\n      ],\n      [\n        \"tic\",\n        -9.672877311706543\n      ],\n      [\n        \"▁vom\",\n        -9.673723220825195\n      ],\n      [\n        \"▁di\",\n        -9.67381477355957\n      ],\n      [\n        \"▁kitchen\",\n        -9.674022674560547\n      ],\n      [\n        \"▁network\",\n        -9.675640106201172\n      ],\n      [\n        \"▁2015\",\n        -9.676688194274902\n      ],\n      [\n        \"▁effective\",\n        -9.677227020263672\n      ],\n      [\n        \"▁collection\",\n        -9.677703857421875\n      ],\n      [\n        \"▁2017\",\n        -9.677751541137695\n      ],\n      [\n        \"▁words\",\n        -9.678145408630371\n      ],\n      [\n        \"▁cele\",\n        -9.678857803344727\n      ],\n      [\n        \"▁student\",\n        -9.678862571716309\n      ],\n      [\n        \"▁amazing\",\n        -9.678932189941406\n      ],\n      [\n        \"eur\",\n        -9.680419921875\n      ],\n      [\n        \".”\",\n        -9.68227481842041\n      ],\n      [\n        \"▁ale\",\n        -9.682716369628906\n      ],\n      [\n        \"”,\",\n        -9.68414306640625\n      ],\n      [\n        \"▁purchase\",\n        -9.684350967407227\n      ],\n      [\n        \"▁mean\",\n        -9.68477725982666\n      ],\n      [\n        \"▁West\",\n        -9.686846733093262\n      ],\n      [\n        \"▁nice\",\n        -9.6889066696167\n      ],\n      [\n        \"▁age\",\n        -9.689131736755371\n      ],\n      [\n        \"▁base\",\n        -9.68923568725586\n      ],\n      [\n        \"▁summer\",\n        -9.68928337097168\n      ],\n      [\n        \"▁multi\",\n        -9.689496994018555\n      ],\n      [\n        \"▁allows\",\n        -9.689573287963867\n      ],\n      [\n        \"▁latest\",\n        -9.689604759216309\n      ],\n      [\n        \"▁global\",\n        -9.68992805480957\n      ],\n      [\n        \"▁chance\",\n        -9.690792083740234\n      ],\n      [\n        \"▁sense\",\n        -9.690872192382812\n      ],\n      [\n        \"ieren\",\n        -9.692789077758789\n      ],\n      [\n        \"▁difficult\",\n        -9.693133354187012\n      ],\n      [\n        \"ité\",\n        -9.694750785827637\n      ],\n      [\n        \"ka\",\n        -9.694792747497559\n      ],\n      [\n        \"du\",\n        -9.69483757019043\n      ],\n      [\n        \"▁providing\",\n        -9.695744514465332\n      ],\n      [\n        \"▁Art\",\n        -9.696940422058105\n      ],\n      [\n        \"▁drive\",\n        -9.698554992675781\n      ],\n      [\n        \"▁Go\",\n        -9.698877334594727\n      ],\n      [\n        \"▁très\",\n        -9.699414253234863\n      ],\n      [\n        \"U\",\n        -9.699579238891602\n      ],\n      [\n        \"▁Pre\",\n        -9.699846267700195\n      ],\n      [\n        \"▁shows\",\n        -9.700040817260742\n      ],\n      [\n        \"▁hair\",\n        -9.701324462890625\n      ],\n      [\n        \"▁success\",\n        -9.701513290405273\n      ],\n      [\n        \"▁UK\",\n        -9.703169822692871\n      ],\n      [\n        \"red\",\n        -9.703241348266602\n      ],\n      [\n        \"ü\",\n        -9.703370094299316\n      ],\n      [\n        \"ish\",\n        -9.703631401062012\n      ],\n      [\n        \"▁weeks\",\n        -9.704839706420898\n      ],\n      [\n        \"▁solutions\",\n        -9.7055025100708\n      ],\n      [\n        \"▁Pe\",\n        -9.7057523727417\n      ],\n      [\n        \"▁equipment\",\n        -9.706141471862793\n      ],\n      [\n        \"și\",\n        -9.706482887268066\n      ],\n      [\n        \"▁worked\",\n        -9.707073211669922\n      ],\n      [\n        \"\\\".\",\n        -9.708627700805664\n      ],\n      [\n        \"▁legal\",\n        -9.708720207214355\n      ],\n      [\n        \"▁bad\",\n        -9.70892333984375\n      ],\n      [\n        \"▁40\",\n        -9.709561347961426\n      ],\n      [\n        \"▁Internet\",\n        -9.709798812866211\n      ],\n      [\n        \"▁included\",\n        -9.709976196289062\n      ],\n      [\n        \"▁upon\",\n        -9.710977554321289\n      ],\n      [\n        \"▁excellent\",\n        -9.71106243133545\n      ],\n      [\n        \"▁goal\",\n        -9.71130084991455\n      ],\n      [\n        \"▁El\",\n        -9.711408615112305\n      ],\n      [\n        \"▁Mo\",\n        -9.711703300476074\n      ],\n      [\n        \"▁policy\",\n        -9.71319580078125\n      ],\n      [\n        \"▁aussi\",\n        -9.713537216186523\n      ],\n      [\n        \"▁weight\",\n        -9.713687896728516\n      ],\n      [\n        \"ici\",\n        -9.715133666992188\n      ],\n      [\n        \"▁approach\",\n        -9.715584754943848\n      ],\n      [\n        \"▁six\",\n        -9.71579647064209\n      ],\n      [\n        \"▁entire\",\n        -9.715911865234375\n      ],\n      [\n        \"9\",\n        -9.71633529663086\n      ],\n      [\n        \"▁send\",\n        -9.716832160949707\n      ],\n      [\n        \"▁1.\",\n        -9.718971252441406\n      ],\n      [\n        \"▁wenn\",\n        -9.719056129455566\n      ],\n      [\n        \"▁photos\",\n        -9.71993637084961\n      ],\n      [\n        \"://\",\n        -9.721014022827148\n      ],\n      [\n        \"ger\",\n        -9.72281551361084\n      ],\n      [\n        \"▁favorite\",\n        -9.723104476928711\n      ],\n      [\n        \"ley\",\n        -9.723477363586426\n      ],\n      [\n        \"▁else\",\n        -9.72463321685791\n      ],\n      [\n        \"▁types\",\n        -9.72468376159668\n      ],\n      [\n        \"▁link\",\n        -9.725333213806152\n      ],\n      [\n        \"▁recently\",\n        -9.72584056854248\n      ],\n      [\n        \"▁Mit\",\n        -9.72631549835205\n      ],\n      [\n        \"▁hot\",\n        -9.726548194885254\n      ],\n      [\n        \"tra\",\n        -9.726597785949707\n      ],\n      [\n        \"ş\",\n        -9.727307319641113\n      ],\n      [\n        \"▁according\",\n        -9.728511810302734\n      ],\n      [\n        \"▁necessary\",\n        -9.728511810302734\n      ],\n      [\n        \"▁multiple\",\n        -9.729269027709961\n      ],\n      [\n        \"▁Im\",\n        -9.729510307312012\n      ],\n      [\n        \"▁sehr\",\n        -9.729660034179688\n      ],\n      [\n        \"▁sign\",\n        -9.732263565063477\n      ],\n      [\n        \"▁anyone\",\n        -9.73283576965332\n      ],\n      [\n        \"▁land\",\n        -9.733613014221191\n      ],\n      [\n        \"▁States\",\n        -9.734037399291992\n      ],\n      [\n        \"▁unsere\",\n        -9.734119415283203\n      ],\n      [\n        \"ées\",\n        -9.734639167785645\n      ],\n      [\n        \"We\",\n        -9.735671043395996\n      ],\n      [\n        \"▁nothing\",\n        -9.735845565795898\n      ],\n      [\n        \"▁commercial\",\n        -9.736858367919922\n      ],\n      [\n        \"ful\",\n        -9.737265586853027\n      ],\n      [\n        \"▁seems\",\n        -9.739325523376465\n      ],\n      [\n        \"▁International\",\n        -9.740097045898438\n      ],\n      [\n        \"▁March\",\n        -9.74163818359375\n      ],\n      [\n        \"▁Thanks\",\n        -9.743307113647461\n      ],\n      [\n        \"▁County\",\n        -9.74365234375\n      ],\n      [\n        \"▁books\",\n        -9.744638442993164\n      ],\n      [\n        \"▁Ca\",\n        -9.7451753616333\n      ],\n      [\n        \"▁mi\",\n        -9.746304512023926\n      ],\n      [\n        \"▁meeting\",\n        -9.746662139892578\n      ],\n      [\n        \"▁tools\",\n        -9.747593879699707\n      ],\n      [\n        \"▁cut\",\n        -9.747650146484375\n      ],\n      [\n        \"▁related\",\n        -9.74765682220459\n      ],\n      [\n        \"▁lives\",\n        -9.748003005981445\n      ],\n      [\n        \"way\",\n        -9.748501777648926\n      ],\n      [\n        \"▁develop\",\n        -9.748651504516602\n      ],\n      [\n        \"▁sound\",\n        -9.748723983764648\n      ],\n      [\n        \"▁safe\",\n        -9.748950958251953\n      ],\n      [\n        \"▁Her\",\n        -9.74937629699707\n      ],\n      [\n        \"▁average\",\n        -9.751277923583984\n      ],\n      [\n        \"▁clean\",\n        -9.75174331665039\n      ],\n      [\n        \"▁talk\",\n        -9.752362251281738\n      ],\n      [\n        \"▁peut\",\n        -9.75241756439209\n      ],\n      [\n        \"▁dann\",\n        -9.752546310424805\n      ],\n      [\n        \"▁terms\",\n        -9.753265380859375\n      ],\n      [\n        \"▁foarte\",\n        -9.753512382507324\n      ],\n      [\n        \"▁super\",\n        -9.754284858703613\n      ],\n      [\n        \"▁programs\",\n        -9.754853248596191\n      ],\n      [\n        \"▁decision\",\n        -9.75540828704834\n      ],\n      [\n        \"▁costs\",\n        -9.756058692932129\n      ],\n      [\n        \"▁être\",\n        -9.756291389465332\n      ],\n      [\n        \"▁2019\",\n        -9.757674217224121\n      ],\n      [\n        \"led\",\n        -9.759482383728027\n      ],\n      [\n        \"▁parents\",\n        -9.759617805480957\n      ],\n      [\n        \"▁Mr\",\n        -9.761702537536621\n      ],\n      [\n        \"▁lower\",\n        -9.762362480163574\n      ],\n      [\n        \"▁door\",\n        -9.762978553771973\n      ],\n      [\n        \"▁été\",\n        -9.763933181762695\n      ],\n      [\n        \"▁box\",\n        -9.764954566955566\n      ],\n      [\n        \"▁record\",\n        -9.765517234802246\n      ],\n      [\n        \"▁win\",\n        -9.765650749206543\n      ],\n      [\n        \"ster\",\n        -9.766402244567871\n      ],\n      [\n        \"▁America\",\n        -9.766748428344727\n      ],\n      [\n        \"▁immer\",\n        -9.768763542175293\n      ],\n      [\n        \"▁road\",\n        -9.76996898651123\n      ],\n      [\n        \"▁leading\",\n        -9.772759437561035\n      ],\n      [\n        \"▁section\",\n        -9.772838592529297\n      ],\n      [\n        \"▁Facebook\",\n        -9.772990226745605\n      ],\n      [\n        \"▁Most\",\n        -9.7738676071167\n      ],\n      [\n        \"iert\",\n        -9.77435302734375\n      ],\n      [\n        \"▁morning\",\n        -9.774497032165527\n      ],\n      [\n        \"▁asked\",\n        -9.775190353393555\n      ],\n      [\n        \"▁involved\",\n        -9.77551555633545\n      ],\n      [\n        \"▁hier\",\n        -9.777607917785645\n      ],\n      [\n        \"▁images\",\n        -9.77821159362793\n      ],\n      [\n        \"▁House\",\n        -9.778263092041016\n      ],\n      [\n        \"▁highly\",\n        -9.780763626098633\n      ],\n      [\n        \"▁Bar\",\n        -9.781620979309082\n      ],\n      [\n        \"▁Service\",\n        -9.782510757446289\n      ],\n      [\n        \"▁attention\",\n        -9.784318923950195\n      ],\n      [\n        \"▁normal\",\n        -9.784571647644043\n      ],\n      [\n        \"▁plans\",\n        -9.785883903503418\n      ],\n      [\n        \"▁source\",\n        -9.785930633544922\n      ],\n      [\n        \"▁Aus\",\n        -9.788092613220215\n      ],\n      [\n        \"▁benefits\",\n        -9.788655281066895\n      ],\n      [\n        \"▁ses\",\n        -9.789348602294922\n      ],\n      [\n        \"des\",\n        -9.789867401123047\n      ],\n      [\n        \"▁internet\",\n        -9.789949417114258\n      ],\n      [\n        \"▁materials\",\n        -9.790080070495605\n      ],\n      [\n        \"▁même\",\n        -9.791318893432617\n      ],\n      [\n        \"▁fine\",\n        -9.791522026062012\n      ],\n      [\n        \"▁fit\",\n        -9.792226791381836\n      ],\n      [\n        \"▁21\",\n        -9.792612075805664\n      ],\n      [\n        \"▁itself\",\n        -9.793739318847656\n      ],\n      [\n        \"▁wieder\",\n        -9.793972969055176\n      ],\n      [\n        \"▁Many\",\n        -9.795313835144043\n      ],\n      [\n        \"▁nature\",\n        -9.795402526855469\n      ],\n      [\n        \"▁pain\",\n        -9.795467376708984\n      ],\n      [\n        \"▁device\",\n        -9.796183586120605\n      ],\n      [\n        \"art\",\n        -9.796989440917969\n      ],\n      [\n        \"pro\",\n        -9.7971830368042\n      ],\n      [\n        \"▁France\",\n        -9.797271728515625\n      ],\n      [\n        \"lich\",\n        -9.797314643859863\n      ],\n      [\n        \"▁2014\",\n        -9.799542427062988\n      ],\n      [\n        \"▁inter\",\n        -9.799964904785156\n      ],\n      [\n        \"▁Li\",\n        -9.800453186035156\n      ],\n      [\n        \"▁career\",\n        -9.801136016845703\n      ],\n      [\n        \"▁looks\",\n        -9.80145263671875\n      ],\n      [\n        \"▁ré\",\n        -9.802245140075684\n      ],\n      [\n        \"▁ability\",\n        -9.802556991577148\n      ],\n      [\n        \"▁situation\",\n        -9.803154945373535\n      ],\n      [\n        \"ville\",\n        -9.803157806396484\n      ],\n      [\n        \"▁2016\",\n        -9.80319595336914\n      ],\n      [\n        \"tes\",\n        -9.803462982177734\n      ],\n      [\n        \"▁remember\",\n        -9.803879737854004\n      ],\n      [\n        \"▁TV\",\n        -9.803998947143555\n      ],\n      [\n        \"▁levels\",\n        -9.805853843688965\n      ],\n      [\n        \"▁subject\",\n        -9.807723999023438\n      ],\n      [\n        \"ally\",\n        -9.80844497680664\n      ],\n      [\n        \"▁reduce\",\n        -9.810232162475586\n      ],\n      [\n        \"▁*\",\n        -9.8108491897583\n      ],\n      [\n        \"▁Day\",\n        -9.810867309570312\n      ],\n      [\n        \"▁write\",\n        -9.812152862548828\n      ],\n      [\n        \"▁pick\",\n        -9.814252853393555\n      ],\n      [\n        \"ence\",\n        -9.815399169921875\n      ],\n      [\n        \"▁fresh\",\n        -9.816520690917969\n      ],\n      [\n        \"▁traditional\",\n        -9.816662788391113\n      ],\n      [\n        \"chi\",\n        -9.817692756652832\n      ],\n      [\n        \"▁machine\",\n        -9.818047523498535\n      ],\n      [\n        \"▁resources\",\n        -9.819125175476074\n      ],\n      [\n        \"â\",\n        -9.819502830505371\n      ],\n      [\n        \"▁countries\",\n        -9.820009231567383\n      ],\n      [\n        \"▁Even\",\n        -9.820342063903809\n      ],\n      [\n        \"▁green\",\n        -9.821283340454102\n      ],\n      [\n        \"▁Free\",\n        -9.821910858154297\n      ],\n      [\n        \"▁daily\",\n        -9.822112083435059\n      ],\n      [\n        \"▁respect\",\n        -9.823013305664062\n      ],\n      [\n        \"▁instead\",\n        -9.823714256286621\n      ],\n      [\n        \"▁Once\",\n        -9.82418155670166\n      ],\n      [\n        \"▁word\",\n        -9.824407577514648\n      ],\n      [\n        \"▁construction\",\n        -9.82489013671875\n      ],\n      [\n        \"▁huge\",\n        -9.825064659118652\n      ],\n      [\n        \"▁feature\",\n        -9.825220108032227\n      ],\n      [\n        \"▁themselves\",\n        -9.826369285583496\n      ],\n      [\n        \"▁loss\",\n        -9.82919692993164\n      ],\n      [\n        \"%\",\n        -9.830063819885254\n      ],\n      [\n        \"▁safety\",\n        -9.830256462097168\n      ],\n      [\n        \"▁economic\",\n        -9.831406593322754\n      ],\n      [\n        \"▁require\",\n        -9.831945419311523\n      ],\n      [\n        \"30\",\n        -9.83255386352539\n      ],\n      [\n        \"▁planning\",\n        -9.833393096923828\n      ],\n      [\n        \"▁mal\",\n        -9.834482192993164\n      ],\n      [\n        \"▁directly\",\n        -9.835214614868164\n      ],\n      [\n        \"ure\",\n        -9.835719108581543\n      ],\n      [\n        \"▁track\",\n        -9.835734367370605\n      ],\n      [\n        \"▁tool\",\n        -9.836135864257812\n      ],\n      [\n        \"▁positive\",\n        -9.836392402648926\n      ],\n      [\n        \"▁piece\",\n        -9.837076187133789\n      ],\n      [\n        \"▁parts\",\n        -9.837140083312988\n      ],\n      [\n        \"ang\",\n        -9.83740520477295\n      ],\n      [\n        \"▁trip\",\n        -9.837453842163086\n      ],\n      [\n        \"▁organization\",\n        -9.837935447692871\n      ],\n      [\n        \"▁sites\",\n        -9.838274002075195\n      ],\n      [\n        \"▁fire\",\n        -9.83831787109375\n      ],\n      [\n        \"▁China\",\n        -9.838876724243164\n      ],\n      [\n        \"▁Pour\",\n        -9.839289665222168\n      ],\n      [\n        \"▁plant\",\n        -9.84011459350586\n      ],\n      [\n        \"▁board\",\n        -9.840341567993164\n      ],\n      [\n        \"▁interesting\",\n        -9.841227531433105\n      ],\n      [\n        \"gar\",\n        -9.841713905334473\n      ],\n      [\n        \"▁fie\",\n        -9.841752052307129\n      ],\n      [\n        \"▁late\",\n        -9.842166900634766\n      ],\n      [\n        \"▁wall\",\n        -9.842294692993164\n      ],\n      [\n        \"▁walk\",\n        -9.842741966247559\n      ],\n      [\n        \"ham\",\n        -9.843868255615234\n      ],\n      [\n        \"▁Ne\",\n        -9.845427513122559\n      ],\n      [\n        \"▁First\",\n        -9.845462799072266\n      ],\n      [\n        \"▁double\",\n        -9.845701217651367\n      ],\n      [\n        \"▁budget\",\n        -9.847657203674316\n      ],\n      [\n        \"▁cases\",\n        -9.847670555114746\n      ],\n      [\n        \"cal\",\n        -9.849738121032715\n      ],\n      [\n        \"old\",\n        -9.849796295166016\n      ],\n      [\n        \"▁Bo\",\n        -9.849822998046875\n      ],\n      [\n        \"▁spend\",\n        -9.850439071655273\n      ],\n      [\n        \"port\",\n        -9.850828170776367\n      ],\n      [\n        \"▁worth\",\n        -9.850934028625488\n      ],\n      [\n        \"ique\",\n        -9.851308822631836\n      ],\n      [\n        \"nes\",\n        -9.85190486907959\n      ],\n      [\n        \"cul\",\n        -9.852272033691406\n      ],\n      [\n        \"era\",\n        -9.85296630859375\n      ],\n      [\n        \"▁text\",\n        -9.853032112121582\n      ],\n      [\n        \"▁decided\",\n        -9.854948997497559\n      ],\n      [\n        \"▁floor\",\n        -9.855036735534668\n      ],\n      [\n        \"▁requirements\",\n        -9.85529899597168\n      ],\n      [\n        \"▁cel\",\n        -9.855361938476562\n      ],\n      [\n        \"▁effect\",\n        -9.855412483215332\n      ],\n      [\n        \"▁gibt\",\n        -9.856159210205078\n      ],\n      [\n        \"▁news\",\n        -9.859238624572754\n      ],\n      [\n        \"▁vos\",\n        -9.859931945800781\n      ],\n      [\n        \"▁players\",\n        -9.86057186126709\n      ],\n      [\n        \"▁saw\",\n        -9.862728118896484\n      ],\n      [\n        \"▁auto\",\n        -9.863056182861328\n      ],\n      [\n        \"▁town\",\n        -9.863207817077637\n      ],\n      [\n        \"▁myself\",\n        -9.864106178283691\n      ],\n      [\n        \"▁lost\",\n        -9.864988327026367\n      ],\n      [\n        \"▁$\",\n        -9.865124702453613\n      ],\n      [\n        \"▁June\",\n        -9.86609172821045\n      ],\n      [\n        \"▁significant\",\n        -9.866196632385254\n      ],\n      [\n        \"▁giving\",\n        -9.866230010986328\n      ],\n      [\n        \"▁stand\",\n        -9.866744041442871\n      ],\n      [\n        \"▁stock\",\n        -9.867657661437988\n      ],\n      [\n        \"▁hold\",\n        -9.867766380310059\n      ],\n      [\n        \"▁Are\",\n        -9.869078636169434\n      ],\n      [\n        \"▁shall\",\n        -9.86923599243164\n      ],\n      [\n        \"▁ideal\",\n        -9.869279861450195\n      ],\n      [\n        \"▁London\",\n        -9.87080192565918\n      ],\n      [\n        \"▁answer\",\n        -9.870853424072266\n      ],\n      [\n        \"▁Vor\",\n        -9.87157917022705\n      ],\n      [\n        \"▁gives\",\n        -9.873115539550781\n      ],\n      [\n        \"ative\",\n        -9.87316608428955\n      ],\n      [\n        \"▁timp\",\n        -9.873167991638184\n      ],\n      [\n        \"▁center\",\n        -9.87362289428711\n      ],\n      [\n        \"▁Group\",\n        -9.874580383300781\n      ],\n      [\n        \"▁sans\",\n        -9.875143051147461\n      ],\n      [\n        \"▁Ar\",\n        -9.875466346740723\n      ],\n      [\n        \"▁Ma\",\n        -9.875568389892578\n      ],\n      [\n        \"▁reach\",\n        -9.876279830932617\n      ],\n      [\n        \"ren\",\n        -9.876652717590332\n      ],\n      [\n        \"▁More\",\n        -9.877446174621582\n      ],\n      [\n        \"mit\",\n        -9.878068923950195\n      ],\n      [\n        \"▁guide\",\n        -9.87833309173584\n      ],\n      [\n        \"▁fully\",\n        -9.878828048706055\n      ],\n      [\n        \"▁Since\",\n        -9.878952980041504\n      ],\n      [\n        \"▁Inc\",\n        -9.87923812866211\n      ],\n      [\n        \"▁culture\",\n        -9.879780769348145\n      ],\n      [\n        \"eat\",\n        -9.880531311035156\n      ],\n      [\n        \"▁written\",\n        -9.880722999572754\n      ],\n      [\n        \"▁Ho\",\n        -9.881338119506836\n      ],\n      [\n        \"▁India\",\n        -9.881625175476074\n      ],\n      [\n        \"▁Well\",\n        -9.881708145141602\n      ],\n      [\n        \"back\",\n        -9.881752967834473\n      ],\n      [\n        \"▁goes\",\n        -9.882170677185059\n      ],\n      [\n        \"▁completely\",\n        -9.88217544555664\n      ],\n      [\n        \"▁tour\",\n        -9.883081436157227\n      ],\n      [\n        \"▁began\",\n        -9.883196830749512\n      ],\n      [\n        \"▁picture\",\n        -9.883255958557129\n      ],\n      [\n        \"▁mare\",\n        -9.88353157043457\n      ],\n      [\n        \"▁playing\",\n        -9.884223937988281\n      ],\n      [\n        \"▁trebuie\",\n        -9.884926795959473\n      ],\n      [\n        \"ils\",\n        -9.884940147399902\n      ],\n      [\n        \"chen\",\n        -9.885220527648926\n      ],\n      [\n        \"▁hit\",\n        -9.885416984558105\n      ],\n      [\n        \"▁complex\",\n        -9.88591480255127\n      ],\n      [\n        \"▁Thank\",\n        -9.886140823364258\n      ],\n      [\n        \"▁Let\",\n        -9.886350631713867\n      ],\n      [\n        \"▁applications\",\n        -9.887116432189941\n      ],\n      [\n        \"▁friend\",\n        -9.888312339782715\n      ],\n      [\n        \"▁English\",\n        -9.889549255371094\n      ],\n      [\n        \"▁charge\",\n        -9.890040397644043\n      ],\n      [\n        \"▁recommend\",\n        -9.893453598022461\n      ],\n      [\n        \"▁message\",\n        -9.893672943115234\n      ],\n      [\n        \"In\",\n        -9.893722534179688\n      ],\n      [\n        \"▁Mar\",\n        -9.894762992858887\n      ],\n      [\n        \"pp\",\n        -9.895845413208008\n      ],\n      [\n        \"▁method\",\n        -9.89692497253418\n      ],\n      [\n        \"▁successful\",\n        -9.897004127502441\n      ],\n      [\n        \"tion\",\n        -9.898880958557129\n      ],\n      [\n        \"▁release\",\n        -9.899920463562012\n      ],\n      [\n        \"▁creating\",\n        -9.900403022766113\n      ],\n      [\n        \"▁despre\",\n        -9.90141773223877\n      ],\n      [\n        \"esc\",\n        -9.902434349060059\n      ],\n      [\n        \"▁eye\",\n        -9.902752876281738\n      ],\n      [\n        \"▁apply\",\n        -9.905945777893066\n      ],\n      [\n        \"net\",\n        -9.906000137329102\n      ],\n      [\n        \"side\",\n        -9.906539916992188\n      ],\n      [\n        \"▁ar\",\n        -9.906949996948242\n      ],\n      [\n        \"▁platform\",\n        -9.90713882446289\n      ],\n      [\n        \"▁touch\",\n        -9.907329559326172\n      ],\n      [\n        \"▁towards\",\n        -9.90785026550293\n      ],\n      [\n        \"▁match\",\n        -9.908224105834961\n      ],\n      [\n        \"▁Black\",\n        -9.909344673156738\n      ],\n      [\n        \"▁fall\",\n        -9.90961742401123\n      ],\n      [\n        \"▁ground\",\n        -9.910234451293945\n      ],\n      [\n        \"▁High\",\n        -9.910740852355957\n      ],\n      [\n        \"▁Q\",\n        -9.911155700683594\n      ],\n      [\n        \"▁schon\",\n        -9.911709785461426\n      ],\n      [\n        \"▁hotel\",\n        -9.911751747131348\n      ],\n      [\n        \"▁prices\",\n        -9.912031173706055\n      ],\n      [\n        \"▁developed\",\n        -9.913411140441895\n      ],\n      [\n        \"uk\",\n        -9.913476943969727\n      ],\n      [\n        \"ide\",\n        -9.91367244720459\n      ],\n      [\n        \"▁September\",\n        -9.91370964050293\n      ],\n      [\n        \"ized\",\n        -9.914202690124512\n      ],\n      [\n        \"▁War\",\n        -9.914704322814941\n      ],\n      [\n        \"!!\",\n        -9.916285514831543\n      ],\n      [\n        \"▁grow\",\n        -9.916997909545898\n      ],\n      [\n        \"▁watch\",\n        -9.917067527770996\n      ],\n      [\n        \"▁storage\",\n        -9.917412757873535\n      ],\n      [\n        \"eau\",\n        -9.917513847351074\n      ],\n      [\n        \"can\",\n        -9.918373107910156\n      ],\n      [\n        \"▁Get\",\n        -9.919524192810059\n      ],\n      [\n        \"▁See\",\n        -9.91953182220459\n      ],\n      [\n        \"▁European\",\n        -9.919703483581543\n      ],\n      [\n        \"▁language\",\n        -9.91982650756836\n      ],\n      [\n        \"ează\",\n        -9.920175552368164\n      ],\n      [\n        \"▁court\",\n        -9.920334815979004\n      ],\n      [\n        \"▁Why\",\n        -9.921106338500977\n      ],\n      [\n        \"▁hear\",\n        -9.921342849731445\n      ],\n      [\n        \"▁doar\",\n        -9.921804428100586\n      ],\n      [\n        \"lan\",\n        -9.92330265045166\n      ],\n      [\n        \"▁Christmas\",\n        -9.923810958862305\n      ],\n      [\n        \"▁Web\",\n        -9.923871994018555\n      ],\n      [\n        \"vo\",\n        -9.92405891418457\n      ],\n      [\n        \"▁sent\",\n        -9.924983024597168\n      ],\n      [\n        \"▁businesses\",\n        -9.925868034362793\n      ],\n      [\n        \"▁Red\",\n        -9.926278114318848\n      ],\n      [\n        \"tel\",\n        -9.926375389099121\n      ],\n      [\n        \"▁Ha\",\n        -9.926508903503418\n      ],\n      [\n        \"▁wonderful\",\n        -9.926653861999512\n      ],\n      [\n        \"ations\",\n        -9.926738739013672\n      ],\n      [\n        \"za\",\n        -9.92748737335205\n      ],\n      [\n        \"▁22\",\n        -9.928659439086914\n      ],\n      [\n        \"▁thinking\",\n        -9.92941665649414\n      ],\n      [\n        \"▁became\",\n        -9.929733276367188\n      ],\n      [\n        \"▁cool\",\n        -9.929835319519043\n      ],\n      [\n        \"▁speed\",\n        -9.930370330810547\n      ],\n      [\n        \"mar\",\n        -9.930426597595215\n      ],\n      [\n        \"▁--\",\n        -9.931743621826172\n      ],\n      [\n        \"▁groups\",\n        -9.931920051574707\n      ],\n      [\n        \"▁interested\",\n        -9.93198299407959\n      ],\n      [\n        \"ak\",\n        -9.93218994140625\n      ],\n      [\n        \"▁60\",\n        -9.932672500610352\n      ],\n      [\n        \"▁screen\",\n        -9.93370246887207\n      ],\n      [\n        \"▁Design\",\n        -9.933789253234863\n      ],\n      [\n        \"▁limited\",\n        -9.935648918151855\n      ],\n      [\n        \"▁expected\",\n        -9.935959815979004\n      ],\n      [\n        \"▁opportunities\",\n        -9.936376571655273\n      ],\n      [\n        \"▁regular\",\n        -9.936870574951172\n      ],\n      [\n        \"off\",\n        -9.93702220916748\n      ],\n      [\n        \"▁Best\",\n        -9.937298774719238\n      ],\n      [\n        \"Re\",\n        -9.938436508178711\n      ],\n      [\n        \"▁ihr\",\n        -9.938719749450684\n      ],\n      [\n        \"▁Great\",\n        -9.938907623291016\n      ],\n      [\n        \"▁employees\",\n        -9.93924617767334\n      ],\n      [\n        \"▁custom\",\n        -9.939679145812988\n      ],\n      [\n        \"▁multe\",\n        -9.940123558044434\n      ],\n      [\n        \"let\",\n        -9.940876007080078\n      ],\n      [\n        \"▁benefit\",\n        -9.942487716674805\n      ],\n      [\n        \"▁term\",\n        -9.942623138427734\n      ],\n      [\n        \"▁bine\",\n        -9.942869186401367\n      ],\n      [\n        \"▁deep\",\n        -9.944526672363281\n      ],\n      [\n        \"▁August\",\n        -9.94526481628418\n      ],\n      [\n        \"▁President\",\n        -9.945381164550781\n      ],\n      [\n        \"▁Auf\",\n        -9.945854187011719\n      ],\n      [\n        \"▁wish\",\n        -9.946924209594727\n      ],\n      [\n        \"▁sometimes\",\n        -9.947274208068848\n      ],\n      [\n        \"ari\",\n        -9.947793960571289\n      ],\n      [\n        \"▁pressure\",\n        -9.948184967041016\n      ],\n      [\n        \"▁ani\",\n        -9.94859504699707\n      ],\n      [\n        \"▁trade\",\n        -9.949930191040039\n      ],\n      [\n        \"▁firm\",\n        -9.950027465820312\n      ],\n      [\n        \"▁comment\",\n        -9.95003604888916\n      ],\n      [\n        \"▁November\",\n        -9.950242042541504\n      ],\n      [\n        \"▁expect\",\n        -9.951102256774902\n      ],\n      [\n        \"▁2012\",\n        -9.952491760253906\n      ],\n      [\n        \"▁Ich\",\n        -9.95328140258789\n      ],\n      [\n        \"▁relationship\",\n        -9.95363998413086\n      ],\n      [\n        \"▁active\",\n        -9.954682350158691\n      ],\n      [\n        \"org\",\n        -9.954710960388184\n      ],\n      [\n        \"▁heat\",\n        -9.956732749938965\n      ],\n      [\n        \"▁wood\",\n        -9.95678997039795\n      ],\n      [\n        \"▁notre\",\n        -9.957921028137207\n      ],\n      [\n        \"▁function\",\n        -9.958330154418945\n      ],\n      [\n        \"▁2.\",\n        -9.95909309387207\n      ],\n      [\n        \"▁wedding\",\n        -9.960049629211426\n      ],\n      [\n        \"▁starting\",\n        -9.961235046386719\n      ],\n      [\n        \"▁Health\",\n        -9.961249351501465\n      ],\n      [\n        \"\\\",\",\n        -9.961713790893555\n      ],\n      [\n        \"▁death\",\n        -9.962173461914062\n      ],\n      [\n        \"▁pages\",\n        -9.962764739990234\n      ],\n      [\n        \"▁vehicle\",\n        -9.96293830871582\n      ],\n      [\n        \"▁request\",\n        -9.963874816894531\n      ],\n      [\n        \"▁helps\",\n        -9.963916778564453\n      ],\n      [\n        \"▁blue\",\n        -9.964017868041992\n      ],\n      [\n        \"▁analysis\",\n        -9.964414596557617\n      ],\n      [\n        \"▁posted\",\n        -9.964544296264648\n      ],\n      [\n        \"▁healthy\",\n        -9.964814186096191\n      ],\n      [\n        \"▁contract\",\n        -9.964988708496094\n      ],\n      [\n        \"▁•\",\n        -9.965263366699219\n      ],\n      [\n        \"▁Each\",\n        -9.965293884277344\n      ],\n      [\n        \"▁Fa\",\n        -9.966179847717285\n      ],\n      [\n        \"▁dintre\",\n        -9.966221809387207\n      ],\n      [\n        \"▁Friday\",\n        -9.967202186584473\n      ],\n      [\n        \"▁considered\",\n        -9.967992782592773\n      ],\n      [\n        \"cher\",\n        -9.96826457977295\n      ],\n      [\n        \"▁quick\",\n        -9.968731880187988\n      ],\n      [\n        \"▁understanding\",\n        -9.96916389465332\n      ],\n      [\n        \"▁condition\",\n        -9.969378471374512\n      ],\n      [\n        \"ization\",\n        -9.971049308776855\n      ],\n      [\n        \"▁document\",\n        -9.971664428710938\n      ],\n      [\n        \"▁prevent\",\n        -9.971890449523926\n      ],\n      [\n        \"▁growing\",\n        -9.9725341796875\n      ],\n      [\n        \"▁protection\",\n        -9.972620964050293\n      ],\n      [\n        \"▁cat\",\n        -9.974002838134766\n      ],\n      [\n        \"▁#\",\n        -9.975058555603027\n      ],\n      [\n        \"10\",\n        -9.975275039672852\n      ],\n      [\n        \"▁join\",\n        -9.9759521484375\n      ],\n      [\n        \"▁serve\",\n        -9.976580619812012\n      ],\n      [\n        \"▁blood\",\n        -9.977095603942871\n      ],\n      [\n        \"▁July\",\n        -9.977341651916504\n      ],\n      [\n        \"▁region\",\n        -9.977787971496582\n      ],\n      [\n        \"car\",\n        -9.97933578491211\n      ],\n      [\n        \"▁entre\",\n        -9.979788780212402\n      ],\n      [\n        \"▁physical\",\n        -9.981287002563477\n      ],\n      [\n        \"▁cash\",\n        -9.9813232421875\n      ],\n      [\n        \"aux\",\n        -9.981823921203613\n      ],\n      [\n        \"ng\",\n        -9.982654571533203\n      ],\n      [\n        \"▁stage\",\n        -9.98281478881836\n      ],\n      [\n        \"▁seem\",\n        -9.983034133911133\n      ],\n      [\n        \"▁definitely\",\n        -9.983795166015625\n      ],\n      [\n        \"▁investment\",\n        -9.983827590942383\n      ],\n      [\n        \"▁purpose\",\n        -9.985441207885742\n      ],\n      [\n        \"▁begin\",\n        -9.985486030578613\n      ],\n      [\n        \"®\",\n        -9.985495567321777\n      ],\n      [\n        \"▁break\",\n        -9.985701560974121\n      ],\n      [\n        \"itate\",\n        -9.987293243408203\n      ],\n      [\n        \"▁moving\",\n        -9.989288330078125\n      ],\n      [\n        \"▁met\",\n        -9.990678787231445\n      ],\n      [\n        \"ize\",\n        -9.990833282470703\n      ],\n      [\n        \"▁select\",\n        -9.991165161132812\n      ],\n      [\n        \"▁tous\",\n        -9.991310119628906\n      ],\n      [\n        \"▁Europe\",\n        -9.991639137268066\n      ],\n      [\n        \"@\",\n        -9.992724418640137\n      ],\n      [\n        \"▁individuals\",\n        -9.993392944335938\n      ],\n      [\n        \"▁Zeit\",\n        -9.993524551391602\n      ],\n      [\n        \"gu\",\n        -9.995670318603516\n      ],\n      [\n        \"▁unit\",\n        -9.995753288269043\n      ],\n      [\n        \"▁noi\",\n        -9.996089935302734\n      ],\n      [\n        \"▁places\",\n        -9.996171951293945\n      ],\n      [\n        \"all\",\n        -9.99632453918457\n      ],\n      [\n        \"▁wait\",\n        -9.996755599975586\n      ],\n      [\n        \"▁difference\",\n        -9.997234344482422\n      ],\n      [\n        \"▁round\",\n        -9.998015403747559\n      ],\n      [\n        \"50\",\n        -9.99953842163086\n      ],\n      [\n        \"rie\",\n        -9.999545097351074\n      ],\n      [\n        \"▁Et\",\n        -9.999933242797852\n      ],\n      [\n        \"20\",\n        -10.000725746154785\n      ],\n      [\n        \"▁activity\",\n        -10.000792503356934\n      ],\n      [\n        \"е\",\n        -10.000866889953613\n      ],\n      [\n        \"▁Windows\",\n        -10.001087188720703\n      ],\n      [\n        \"▁produce\",\n        -10.001385688781738\n      ],\n      [\n        \"▁keine\",\n        -10.00212574005127\n      ],\n      [\n        \"▁Air\",\n        -10.002567291259766\n      ],\n      [\n        \"▁January\",\n        -10.004890441894531\n      ],\n      [\n        \"▁deux\",\n        -10.005081176757812\n      ],\n      [\n        \"▁entry\",\n        -10.005208015441895\n      ],\n      [\n        \"king\",\n        -10.006500244140625\n      ],\n      [\n        \"▁goals\",\n        -10.006736755371094\n      ],\n      [\n        \"▁previous\",\n        -10.0077543258667\n      ],\n      [\n        \"▁+\",\n        -10.008035659790039\n      ],\n      [\n        \"▁Business\",\n        -10.008259773254395\n      ],\n      [\n        \"ont\",\n        -10.008552551269531\n      ],\n      [\n        \"▁Sunday\",\n        -10.008694648742676\n      ],\n      [\n        \"▁offering\",\n        -10.010359764099121\n      ],\n      [\n        \"▁response\",\n        -10.011018753051758\n      ],\n      [\n        \"▁surface\",\n        -10.011393547058105\n      ],\n      [\n        \"▁Department\",\n        -10.01212215423584\n      ],\n      [\n        \"▁exactly\",\n        -10.012190818786621\n      ],\n      [\n        \"▁Online\",\n        -10.012577056884766\n      ],\n      [\n        \"dem\",\n        -10.013803482055664\n      ],\n      [\n        \"ischen\",\n        -10.014006614685059\n      ],\n      [\n        \"▁hands\",\n        -10.015100479125977\n      ],\n      [\n        \"▁hour\",\n        -10.016197204589844\n      ],\n      [\n        \"▁dog\",\n        -10.016946792602539\n      ],\n      [\n        \"▁damage\",\n        -10.017006874084473\n      ],\n      [\n        \"▁capital\",\n        -10.018792152404785\n      ],\n      [\n        \"▁toate\",\n        -10.020488739013672\n      ],\n      [\n        \"▁wrong\",\n        -10.020674705505371\n      ],\n      [\n        \"unui\",\n        -10.022201538085938\n      ],\n      [\n        \"tri\",\n        -10.023979187011719\n      ],\n      [\n        \"▁sell\",\n        -10.023999214172363\n      ],\n      [\n        \"▁published\",\n        -10.024175643920898\n      ],\n      [\n        \"▁families\",\n        -10.024675369262695\n      ],\n      [\n        \"▁avoid\",\n        -10.025490760803223\n      ],\n      [\n        \"▁Ko\",\n        -10.025506019592285\n      ],\n      [\n        \"▁mod\",\n        -10.026697158813477\n      ],\n      [\n        \"rat\",\n        -10.027653694152832\n      ],\n      [\n        \"▁Make\",\n        -10.0299654006958\n      ],\n      [\n        \"▁October\",\n        -10.030153274536133\n      ],\n      [\n        \"▁former\",\n        -10.031285285949707\n      ],\n      [\n        \"▁Services\",\n        -10.03281021118164\n      ],\n      [\n        \"▁felt\",\n        -10.033045768737793\n      ],\n      [\n        \"▁selection\",\n        -10.033309936523438\n      ],\n      [\n        \"eaza\",\n        -10.034177780151367\n      ],\n      [\n        \"gel\",\n        -10.034422874450684\n      ],\n      [\n        \"▁Good\",\n        -10.035792350769043\n      ],\n      [\n        \"▁actual\",\n        -10.0364351272583\n      ],\n      [\n        \"▁gut\",\n        -10.036853790283203\n      ],\n      [\n        \"▁gas\",\n        -10.03708553314209\n      ],\n      [\n        \"15\",\n        -10.038182258605957\n      ],\n      [\n        \"▁structure\",\n        -10.038285255432129\n      ],\n      [\n        \"▁act\",\n        -10.0386381149292\n      ],\n      [\n        \"▁Zu\",\n        -10.038654327392578\n      ],\n      [\n        \"▁creative\",\n        -10.039134979248047\n      ],\n      [\n        \"▁Vi\",\n        -10.039159774780273\n      ],\n      [\n        \"▁shop\",\n        -10.04066276550293\n      ],\n      [\n        \"▁Lo\",\n        -10.040735244750977\n      ],\n      [\n        \"şi\",\n        -10.042192459106445\n      ],\n      [\n        \"▁mis\",\n        -10.042224884033203\n      ],\n      [\n        \"ungen\",\n        -10.042301177978516\n      ],\n      [\n        \"▁fan\",\n        -10.04240608215332\n      ],\n      [\n        \"▁|\",\n        -10.043391227722168\n      ],\n      [\n        \"▁Bei\",\n        -10.044037818908691\n      ],\n      [\n        \"▁protect\",\n        -10.04454517364502\n      ],\n      [\n        \"▁Na\",\n        -10.0447998046875\n      ],\n      [\n        \"q\",\n        -10.045693397521973\n      ],\n      [\n        \"ok\",\n        -10.04710578918457\n      ],\n      [\n        \"▁California\",\n        -10.047263145446777\n      ],\n      [\n        \"▁political\",\n        -10.047301292419434\n      ],\n      [\n        \"25\",\n        -10.047530174255371\n      ],\n      [\n        \"▁feeling\",\n        -10.047913551330566\n      ],\n      [\n        \"▁ces\",\n        -10.048321723937988\n      ],\n      [\n        \"▁display\",\n        -10.048857688903809\n      ],\n      [\n        \"▁essential\",\n        -10.04964542388916\n      ],\n      [\n        \"ând\",\n        -10.049971580505371\n      ],\n      [\n        \"▁seine\",\n        -10.050551414489746\n      ],\n      [\n        \"▁soft\",\n        -10.050915718078613\n      ],\n      [\n        \"ach\",\n        -10.05102252960205\n      ],\n      [\n        \"▁happen\",\n        -10.051118850708008\n      ],\n      [\n        \"▁Paul\",\n        -10.053346633911133\n      ],\n      [\n        \"▁Cu\",\n        -10.054024696350098\n      ],\n      [\n        \"house\",\n        -10.055376052856445\n      ],\n      [\n        \"ante\",\n        -10.05582046508789\n      ],\n      [\n        \"▁easier\",\n        -10.056551933288574\n      ],\n      [\n        \"▁sort\",\n        -10.0567045211792\n      ],\n      [\n        \"▁Post\",\n        -10.057138442993164\n      ],\n      [\n        \"▁accept\",\n        -10.05730152130127\n      ],\n      [\n        \"field\",\n        -10.057648658752441\n      ],\n      [\n        \"zen\",\n        -10.057741165161133\n      ],\n      [\n        \"▁character\",\n        -10.057848930358887\n      ],\n      [\n        \"▁beginning\",\n        -10.058433532714844\n      ],\n      [\n        \"▁Jesus\",\n        -10.058760643005371\n      ],\n      [\n        \"▁weekend\",\n        -10.059663772583008\n      ],\n      [\n        \"▁certainly\",\n        -10.06114387512207\n      ],\n      [\n        \"▁THE\",\n        -10.061254501342773\n      ],\n      [\n        \"▁alle\",\n        -10.06189250946045\n      ],\n      [\n        \"▁transport\",\n        -10.062220573425293\n      ],\n      [\n        \"▁Saturday\",\n        -10.063043594360352\n      ],\n      [\n        \"▁basic\",\n        -10.064136505126953\n      ],\n      [\n        \"▁loved\",\n        -10.06431770324707\n      ],\n      [\n        \"ros\",\n        -10.065333366394043\n      ],\n      [\n        \"▁offered\",\n        -10.065996170043945\n      ],\n      [\n        \"▁camera\",\n        -10.067024230957031\n      ],\n      [\n        \"▁Green\",\n        -10.06789779663086\n      ],\n      [\n        \"ology\",\n        -10.069480895996094\n      ],\n      [\n        \"ä\",\n        -10.069646835327148\n      ],\n      [\n        \"▁manage\",\n        -10.070416450500488\n      ],\n      [\n        \"▁paid\",\n        -10.070881843566895\n      ],\n      [\n        \"▁advice\",\n        -10.071617126464844\n      ],\n      [\n        \"▁patient\",\n        -10.072234153747559\n      ],\n      [\n        \"▁spent\",\n        -10.072272300720215\n      ],\n      [\n        \"▁mir\",\n        -10.072366714477539\n      ],\n      [\n        \"▁baby\",\n        -10.072400093078613\n      ],\n      [\n        \"ö\",\n        -10.073193550109863\n      ],\n      [\n        \"▁basis\",\n        -10.073338508605957\n      ],\n      [\n        \"▁cancer\",\n        -10.073765754699707\n      ],\n      [\n        \"▁Although\",\n        -10.07400894165039\n      ],\n      [\n        \"▁gift\",\n        -10.074336051940918\n      ],\n      [\n        \"▁3.\",\n        -10.074871063232422\n      ],\n      [\n        \"dieser\",\n        -10.075157165527344\n      ],\n      [\n        \"▁overall\",\n        -10.07520580291748\n      ],\n      [\n        \"▁Sch\",\n        -10.075265884399414\n      ],\n      [\n        \"▁Ex\",\n        -10.076258659362793\n      ],\n      [\n        \"▁December\",\n        -10.07689094543457\n      ],\n      [\n        \"▁released\",\n        -10.078214645385742\n      ],\n      [\n        \"▁prior\",\n        -10.07900333404541\n      ],\n      [\n        \"▁sowie\",\n        -10.081072807312012\n      ],\n      [\n        \"▁club\",\n        -10.081326484680176\n      ],\n      [\n        \"▁Street\",\n        -10.081535339355469\n      ],\n      [\n        \"▁College\",\n        -10.08254623413086\n      ],\n      [\n        \"▁î\",\n        -10.083059310913086\n      ],\n      [\n        \"over\",\n        -10.083159446716309\n      ],\n      [\n        \"▁gave\",\n        -10.08454704284668\n      ],\n      [\n        \"▁truly\",\n        -10.084784507751465\n      ],\n      [\n        \"par\",\n        -10.084806442260742\n      ],\n      [\n        \"▁Canada\",\n        -10.084888458251953\n      ],\n      [\n        \"▁existing\",\n        -10.085420608520508\n      ],\n      [\n        \"lie\",\n        -10.086335182189941\n      ],\n      [\n        \"▁ganz\",\n        -10.086658477783203\n      ],\n      [\n        \"▁setting\",\n        -10.087109565734863\n      ],\n      [\n        \"▁supply\",\n        -10.08739185333252\n      ],\n      [\n        \"▁college\",\n        -10.087540626525879\n      ],\n      [\n        \"▁communication\",\n        -10.088407516479492\n      ],\n      [\n        \"▁23\",\n        -10.088834762573242\n      ],\n      [\n        \"▁pass\",\n        -10.091546058654785\n      ],\n      [\n        \"▁devices\",\n        -10.091872215270996\n      ],\n      [\n        \"▁glass\",\n        -10.092083930969238\n      ],\n      [\n        \"▁experienced\",\n        -10.092395782470703\n      ],\n      [\n        \"▁grand\",\n        -10.093363761901855\n      ],\n      [\n        \"▁Po\",\n        -10.093396186828613\n      ],\n      [\n        \"▁beyond\",\n        -10.094029426574707\n      ],\n      [\n        \"▁format\",\n        -10.094165802001953\n      ],\n      [\n        \"▁mon\",\n        -10.09461498260498\n      ],\n      [\n        \"▁perform\",\n        -10.094635009765625\n      ],\n      [\n        \"sten\",\n        -10.095130920410156\n      ],\n      [\n        \"▁1,\",\n        -10.096270561218262\n      ],\n      [\n        \"▁Per\",\n        -10.096640586853027\n      ],\n      [\n        \"▁sold\",\n        -10.097247123718262\n      ],\n      [\n        \"▁rates\",\n        -10.0972900390625\n      ],\n      [\n        \"▁regarding\",\n        -10.097782135009766\n      ],\n      [\n        \"▁Paris\",\n        -10.098291397094727\n      ],\n      [\n        \"▁Dar\",\n        -10.099579811096191\n      ],\n      [\n        \"▁challenge\",\n        -10.099649429321289\n      ],\n      [\n        \"▁feet\",\n        -10.100564002990723\n      ],\n      [\n        \"▁Su\",\n        -10.102017402648926\n      ],\n      [\n        \"je\",\n        -10.102593421936035\n      ],\n      [\n        \"▁Bank\",\n        -10.102627754211426\n      ],\n      [\n        \"ven\",\n        -10.103126525878906\n      ],\n      [\n        \"jo\",\n        -10.103290557861328\n      ],\n      [\n        \"▁band\",\n        -10.10348892211914\n      ],\n      [\n        \"▁delivery\",\n        -10.104915618896484\n      ],\n      [\n        \"Vous\",\n        -10.104924201965332\n      ],\n      [\n        \"tele\",\n        -10.10495376586914\n      ],\n      [\n        \"▁East\",\n        -10.105379104614258\n      ],\n      [\n        \"▁pictures\",\n        -10.106067657470703\n      ],\n      [\n        \"▁useful\",\n        -10.106481552124023\n      ],\n      [\n        \"*\",\n        -10.107648849487305\n      ],\n      [\n        \"▁increased\",\n        -10.107746124267578\n      ],\n      [\n        \"▁stories\",\n        -10.108119010925293\n      ],\n      [\n        \"sion\",\n        -10.108280181884766\n      ],\n      [\n        \"bra\",\n        -10.108345985412598\n      ],\n      [\n        \"▁brought\",\n        -10.108466148376465\n      ],\n      [\n        \"▁effort\",\n        -10.109898567199707\n      ],\n      [\n        \"▁payment\",\n        -10.11058235168457\n      ],\n      [\n        \"▁heard\",\n        -10.110925674438477\n      ],\n      [\n        \"▁played\",\n        -10.111245155334473\n      ],\n      [\n        \"▁White\",\n        -10.111417770385742\n      ],\n      [\n        \"▁metal\",\n        -10.111721992492676\n      ],\n      [\n        \"tal\",\n        -10.111754417419434\n      ],\n      [\n        \"▁engine\",\n        -10.112006187438965\n      ],\n      [\n        \"▁Club\",\n        -10.11218547821045\n      ],\n      [\n        \"ical\",\n        -10.114581108093262\n      ],\n      [\n        \"▁effects\",\n        -10.115421295166016\n      ],\n      [\n        \"▁degree\",\n        -10.115763664245605\n      ],\n      [\n        \"▁bed\",\n        -10.1159086227417\n      ],\n      [\n        \"ette\",\n        -10.115991592407227\n      ],\n      [\n        \"▁David\",\n        -10.116386413574219\n      ],\n      [\n        \"°\",\n        -10.117666244506836\n      ],\n      [\n        \"▁Au\",\n        -10.117938041687012\n      ],\n      [\n        \"▁Company\",\n        -10.11845874786377\n      ],\n      [\n        \"▁player\",\n        -10.11938190460205\n      ],\n      [\n        \"▁Today\",\n        -10.120569229125977\n      ],\n      [\n        \"▁maintain\",\n        -10.12093448638916\n      ],\n      [\n        \"▁minute\",\n        -10.121193885803223\n      ],\n      [\n        \"mail\",\n        -10.122172355651855\n      ],\n      [\n        \"▁race\",\n        -10.122366905212402\n      ],\n      [\n        \"▁comfortable\",\n        -10.123887062072754\n      ],\n      [\n        \"▁responsible\",\n        -10.124085426330566\n      ],\n      [\n        \"vor\",\n        -10.124622344970703\n      ],\n      [\n        \"▁associated\",\n        -10.124695777893066\n      ],\n      [\n        \"▁weather\",\n        -10.124701499938965\n      ],\n      [\n        \"▁$1\",\n        -10.125639915466309\n      ],\n      [\n        \"▁tried\",\n        -10.126176834106445\n      ],\n      [\n        \"▁Check\",\n        -10.127649307250977\n      ],\n      [\n        \"▁solid\",\n        -10.127864837646484\n      ],\n      [\n        \"▁movie\",\n        -10.128364562988281\n      ],\n      [\n        \"▁coffee\",\n        -10.12874698638916\n      ],\n      [\n        \"board\",\n        -10.129073143005371\n      ],\n      [\n        \"▁po\",\n        -10.12946605682373\n      ],\n      [\n        \"▁warm\",\n        -10.129583358764648\n      ],\n      [\n        \"▁connect\",\n        -10.131733894348145\n      ],\n      [\n        \"▁Ad\",\n        -10.133807182312012\n      ],\n      [\n        \"work\",\n        -10.133859634399414\n      ],\n      [\n        \"mal\",\n        -10.13397216796875\n      ],\n      [\n        \"▁Act\",\n        -10.134634971618652\n      ],\n      [\n        \"▁achieve\",\n        -10.134769439697266\n      ],\n      [\n        \"▁Nach\",\n        -10.136604309082031\n      ],\n      [\n        \"www\",\n        -10.136669158935547\n      ],\n      [\n        \"term\",\n        -10.13672161102295\n      ],\n      [\n        \"▁claim\",\n        -10.137251853942871\n      ],\n      [\n        \"▁particularly\",\n        -10.138245582580566\n      ],\n      [\n        \"▁cas\",\n        -10.138396263122559\n      ],\n      [\n        \"▁furniture\",\n        -10.138461112976074\n      ],\n      [\n        \"▁finish\",\n        -10.13896369934082\n      ],\n      [\n        \"▁temps\",\n        -10.139026641845703\n      ],\n      [\n        \"▁disease\",\n        -10.139115333557129\n      ],\n      [\n        \"▁lots\",\n        -10.139196395874023\n      ],\n      [\n        \"▁ball\",\n        -10.139307975769043\n      ],\n      [\n        \"▁sun\",\n        -10.14010238647461\n      ],\n      [\n        \"▁strategy\",\n        -10.140498161315918\n      ],\n      [\n        \"bre\",\n        -10.140518188476562\n      ],\n      [\n        \"▁mine\",\n        -10.141541481018066\n      ],\n      [\n        \"▁Click\",\n        -10.141743659973145\n      ],\n      [\n        \"ran\",\n        -10.141983032226562\n      ],\n      [\n        \"▁Will\",\n        -10.142234802246094\n      ],\n      [\n        \"▁garden\",\n        -10.142974853515625\n      ],\n      [\n        \"▁stuff\",\n        -10.14359188079834\n      ],\n      [\n        \"▁limit\",\n        -10.144641876220703\n      ],\n      [\n        \"▁bottom\",\n        -10.14494800567627\n      ],\n      [\n        \"▁shown\",\n        -10.144962310791016\n      ],\n      [\n        \"ship\",\n        -10.145271301269531\n      ],\n      [\n        \"▁habe\",\n        -10.145858764648438\n      ],\n      [\n        \"▁Super\",\n        -10.146219253540039\n      ],\n      [\n        \"▁completed\",\n        -10.146971702575684\n      ],\n      [\n        \"▁wine\",\n        -10.146979331970215\n      ],\n      [\n        \"ische\",\n        -10.147262573242188\n      ],\n      [\n        \"▁largest\",\n        -10.147466659545898\n      ],\n      [\n        \"▁appropriate\",\n        -10.148261070251465\n      ],\n      [\n        \"▁immediately\",\n        -10.150248527526855\n      ],\n      [\n        \"▁Hi\",\n        -10.152358055114746\n      ],\n      [\n        \"▁trust\",\n        -10.152767181396484\n      ],\n      [\n        \"ability\",\n        -10.154254913330078\n      ],\n      [\n        \"▁powerful\",\n        -10.155101776123047\n      ],\n      [\n        \"▁helping\",\n        -10.155620574951172\n      ],\n      [\n        \"▁schedule\",\n        -10.155688285827637\n      ],\n      [\n        \"▁correct\",\n        -10.155707359313965\n      ],\n      [\n        \"▁transfer\",\n        -10.156496047973633\n      ],\n      [\n        \"pre\",\n        -10.15665340423584\n      ],\n      [\n        \"▁journey\",\n        -10.15688419342041\n      ],\n      [\n        \"pm\",\n        -10.157002449035645\n      ],\n      [\n        \"don\",\n        -10.158435821533203\n      ],\n      [\n        \"▁highest\",\n        -10.159249305725098\n      ],\n      [\n        \"▁finally\",\n        -10.15999698638916\n      ],\n      [\n        \"form\",\n        -10.160258293151855\n      ],\n      [\n        \"▁extremely\",\n        -10.160404205322266\n      ],\n      [\n        \"▁window\",\n        -10.160501480102539\n      ],\n      [\n        \"▁Over\",\n        -10.162222862243652\n      ],\n      [\n        \"▁remove\",\n        -10.162469863891602\n      ],\n      [\n        \"wood\",\n        -10.162479400634766\n      ],\n      [\n        \"▁2013\",\n        -10.163631439208984\n      ],\n      [\n        \"▁mother\",\n        -10.164072036743164\n      ],\n      [\n        \"▁Auto\",\n        -10.16436767578125\n      ],\n      [\n        \"▁annual\",\n        -10.164615631103516\n      ],\n      [\n        \"▁Star\",\n        -10.164834976196289\n      ],\n      [\n        \"▁Di\",\n        -10.166138648986816\n      ],\n      [\n        \"о\",\n        -10.16711139678955\n      ],\n      [\n        \"▁gold\",\n        -10.167129516601562\n      ],\n      [\n        \"tar\",\n        -10.167352676391602\n      ],\n      [\n        \"ju\",\n        -10.167750358581543\n      ],\n      [\n        \"▁Use\",\n        -10.169474601745605\n      ],\n      [\n        \"▁thanks\",\n        -10.16960334777832\n      ],\n      [\n        \"▁centre\",\n        -10.170127868652344\n      ],\n      [\n        \"▁Australia\",\n        -10.170358657836914\n      ],\n      [\n        \"▁estate\",\n        -10.170504570007324\n      ],\n      [\n        \"▁eyes\",\n        -10.1714448928833\n      ],\n      [\n        \"▁force\",\n        -10.171592712402344\n      ],\n      [\n        \"▁income\",\n        -10.17395305633545\n      ],\n      [\n        \"▁science\",\n        -10.174036026000977\n      ],\n      [\n        \"ori\",\n        -10.174230575561523\n      ],\n      [\n        \"▁enter\",\n        -10.174851417541504\n      ],\n      [\n        \"▁28\",\n        -10.175408363342285\n      ],\n      [\n        \"ire\",\n        -10.17568302154541\n      ],\n      [\n        \"▁schools\",\n        -10.175797462463379\n      ],\n      [\n        \"▁restaurant\",\n        -10.176088333129883\n      ],\n      [\n        \"▁Council\",\n        -10.177032470703125\n      ],\n      [\n        \"aus\",\n        -10.177885055541992\n      ],\n      [\n        \"▁agree\",\n        -10.17905330657959\n      ],\n      [\n        \"▁campaign\",\n        -10.179192543029785\n      ],\n      [\n        \"▁Ta\",\n        -10.179428100585938\n      ],\n      [\n        \"▁letter\",\n        -10.179814338684082\n      ],\n      [\n        \"▁central\",\n        -10.179931640625\n      ],\n      [\n        \"▁Because\",\n        -10.180054664611816\n      ],\n      [\n        \"▁path\",\n        -10.180349349975586\n      ],\n      [\n        \"▁loc\",\n        -10.180882453918457\n      ],\n      [\n        \"▁files\",\n        -10.182587623596191\n      ],\n      [\n        \"▁population\",\n        -10.182705879211426\n      ],\n      [\n        \"▁explore\",\n        -10.182723999023438\n      ],\n      [\n        \"▁mid\",\n        -10.182734489440918\n      ],\n      [\n        \"▁concept\",\n        -10.182748794555664\n      ],\n      [\n        \"▁church\",\n        -10.183015823364258\n      ],\n      [\n        \"80\",\n        -10.183026313781738\n      ],\n      [\n        \"▁einfach\",\n        -10.185834884643555\n      ],\n      [\n        \"▁reasons\",\n        -10.186690330505371\n      ],\n      [\n        \"▁determine\",\n        -10.186755180358887\n      ],\n      [\n        \"▁February\",\n        -10.187095642089844\n      ],\n      [\n        \"▁evidence\",\n        -10.18797779083252\n      ],\n      [\n        \"▁sleep\",\n        -10.188036918640137\n      ],\n      [\n        \"▁Board\",\n        -10.188652992248535\n      ],\n      [\n        \"▁maybe\",\n        -10.189635276794434\n      ],\n      [\n        \"▁wasn\",\n        -10.189701080322266\n      ],\n      [\n        \"▁Monday\",\n        -10.190101623535156\n      ],\n      [\n        \"▁director\",\n        -10.190481185913086\n      ],\n      [\n        \"well\",\n        -10.190974235534668\n      ],\n      [\n        \"During\",\n        -10.191001892089844\n      ],\n      [\n        \"▁sweet\",\n        -10.191061973571777\n      ],\n      [\n        \"▁assist\",\n        -10.19124984741211\n      ],\n      [\n        \"▁police\",\n        -10.191511154174805\n      ],\n      [\n        \"▁repair\",\n        -10.191729545593262\n      ],\n      [\n        \"▁techniques\",\n        -10.191733360290527\n      ],\n      [\n        \"▁served\",\n        -10.191808700561523\n      ],\n      [\n        \"vi\",\n        -10.192037582397461\n      ],\n      [\n        \"▁sports\",\n        -10.192331314086914\n      ],\n      [\n        \"▁opening\",\n        -10.192401885986328\n      ],\n      [\n        \"▁ones\",\n        -10.192731857299805\n      ],\n      [\n        \"▁notice\",\n        -10.193460464477539\n      ],\n      [\n        \"▁PC\",\n        -10.193547248840332\n      ],\n      [\n        \"▁alte\",\n        -10.194242477416992\n      ],\n      [\n        \"▁Bi\",\n        -10.194340705871582\n      ],\n      [\n        \"▁cold\",\n        -10.195606231689453\n      ],\n      [\n        \"▁billion\",\n        -10.195794105529785\n      ],\n      [\n        \"▁balance\",\n        -10.196361541748047\n      ],\n      [\n        \"cer\",\n        -10.196417808532715\n      ],\n      [\n        \"▁nearly\",\n        -10.196725845336914\n      ],\n      [\n        \"▁wear\",\n        -10.197259902954102\n      ],\n      [\n        \"free\",\n        -10.19760799407959\n      ],\n      [\n        \"▁Have\",\n        -10.197748184204102\n      ],\n      [\n        \"▁comfort\",\n        -10.199211120605469\n      ],\n      [\n        \"▁studies\",\n        -10.199225425720215\n      ],\n      [\n        \"▁traffic\",\n        -10.199540138244629\n      ],\n      [\n        \"▁item\",\n        -10.200214385986328\n      ],\n      [\n        \"▁teaching\",\n        -10.200467109680176\n      ],\n      [\n        \"▁turned\",\n        -10.201326370239258\n      ],\n      [\n        \"isation\",\n        -10.201354026794434\n      ],\n      [\n        \"12\",\n        -10.202038764953613\n      ],\n      [\n        \"▁greater\",\n        -10.202167510986328\n      ],\n      [\n        \"▁knew\",\n        -10.20233154296875\n      ],\n      [\n        \"▁Association\",\n        -10.203333854675293\n      ],\n      [\n        \"▁Office\",\n        -10.203802108764648\n      ],\n      [\n        \"▁established\",\n        -10.204085350036621\n      ],\n      [\n        \"45\",\n        -10.204170227050781\n      ],\n      [\n        \"▁Love\",\n        -10.204318046569824\n      ],\n      [\n        \"▁changed\",\n        -10.204882621765137\n      ],\n      [\n        \"▁pan\",\n        -10.205184936523438\n      ],\n      [\n        \"van\",\n        -10.20565414428711\n      ],\n      [\n        \"▁Mi\",\n        -10.205663681030273\n      ],\n      [\n        \"▁tend\",\n        -10.20637321472168\n      ],\n      [\n        \"▁connection\",\n        -10.206522941589355\n      ],\n      [\n        \"▁lack\",\n        -10.206954002380371\n      ],\n      [\n        \"▁bank\",\n        -10.208464622497559\n      ],\n      [\n        \"cat\",\n        -10.208720207214355\n      ],\n      [\n        \"▁helped\",\n        -10.209071159362793\n      ],\n      [\n        \"▁spot\",\n        -10.209417343139648\n      ],\n      [\n        \"▁spring\",\n        -10.20974063873291\n      ],\n      [\n        \"▁Wi\",\n        -10.210912704467773\n      ],\n      [\n        \"▁Mac\",\n        -10.211682319641113\n      ],\n      [\n        \"▁Christ\",\n        -10.212015151977539\n      ],\n      [\n        \"▁saying\",\n        -10.212835311889648\n      ],\n      [\n        \"▁General\",\n        -10.213062286376953\n      ],\n      [\n        \"▁port\",\n        -10.213099479675293\n      ],\n      [\n        \"▁Mal\",\n        -10.213156700134277\n      ],\n      [\n        \"▁System\",\n        -10.213486671447754\n      ],\n      [\n        \"▁According\",\n        -10.2152738571167\n      ],\n      [\n        \"▁chiar\",\n        -10.21568489074707\n      ],\n      [\n        \"log\",\n        -10.21576976776123\n      ],\n      [\n        \"▁mix\",\n        -10.215974807739258\n      ],\n      [\n        \"▁Lake\",\n        -10.216042518615723\n      ],\n      [\n        \"▁intr\",\n        -10.216590881347656\n      ],\n      [\n        \"▁deliver\",\n        -10.216793060302734\n      ],\n      [\n        \"mon\",\n        -10.216931343078613\n      ],\n      [\n        \"▁Ro\",\n        -10.217060089111328\n      ],\n      [\n        \"▁Management\",\n        -10.217504501342773\n      ],\n      [\n        \"bri\",\n        -10.218718528747559\n      ],\n      [\n        \"▁pieces\",\n        -10.218774795532227\n      ],\n      [\n        \"▁announced\",\n        -10.218926429748535\n      ],\n      [\n        \"▁Yes\",\n        -10.219268798828125\n      ],\n      [\n        \"▁dark\",\n        -10.220884323120117\n      ],\n      [\n        \"val\",\n        -10.221765518188477\n      ],\n      [\n        \"▁rights\",\n        -10.22309684753418\n      ],\n      [\n        \"▁Diese\",\n        -10.223100662231445\n      ],\n      [\n        \"ki\",\n        -10.223350524902344\n      ],\n      [\n        \"vent\",\n        -10.22375774383545\n      ],\n      [\n        \"▁born\",\n        -10.22380542755127\n      ],\n      [\n        \"▁muss\",\n        -10.224031448364258\n      ],\n      [\n        \"compared\",\n        -10.224660873413086\n      ],\n      [\n        \"▁demand\",\n        -10.224669456481934\n      ],\n      [\n        \"▁handle\",\n        -10.225493431091309\n      ],\n      [\n        \"▁mode\",\n        -10.226058006286621\n      ],\n      [\n        \"lic\",\n        -10.226137161254883\n      ],\n      [\n        \"▁ahead\",\n        -10.226436614990234\n      ],\n      [\n        \"▁sharing\",\n        -10.227599143981934\n      ],\n      [\n        \"▁micro\",\n        -10.227779388427734\n      ],\n      [\n        \"▁Par\",\n        -10.228626251220703\n      ],\n      [\n        \"▁Every\",\n        -10.22950553894043\n      ],\n      [\n        \"▁bag\",\n        -10.229736328125\n      ],\n      [\n        \"▁daca\",\n        -10.22974967956543\n      ],\n      [\n        \"▁Apple\",\n        -10.23022174835205\n      ],\n      [\n        \"▁Mark\",\n        -10.230239868164062\n      ],\n      [\n        \"▁larger\",\n        -10.231284141540527\n      ],\n      [\n        \"eze\",\n        -10.231978416442871\n      ],\n      [\n        \"▁progress\",\n        -10.232234001159668\n      ],\n      [\n        \"▁stress\",\n        -10.232929229736328\n      ],\n      [\n        \"▁cards\",\n        -10.233663558959961\n      ],\n      [\n        \"▁driving\",\n        -10.233738899230957\n      ],\n      [\n        \"▁dry\",\n        -10.233970642089844\n      ],\n      [\n        \"▁relevant\",\n        -10.234556198120117\n      ],\n      [\n        \"▁Jo\",\n        -10.234825134277344\n      ],\n      [\n        \"▁tree\",\n        -10.235036849975586\n      ],\n      [\n        \"▁reported\",\n        -10.235770225524902\n      ],\n      [\n        \"ities\",\n        -10.23577880859375\n      ],\n      [\n        \"▁tea\",\n        -10.235806465148926\n      ],\n      [\n        \"▁although\",\n        -10.236145973205566\n      ],\n      [\n        \"▁Research\",\n        -10.236261367797852\n      ],\n      [\n        \"▁pool\",\n        -10.23691463470459\n      ],\n      [\n        \"▁fin\",\n        -10.237163543701172\n      ],\n      [\n        \"▁Und\",\n        -10.238130569458008\n      ],\n      [\n        \"▁decide\",\n        -10.239217758178711\n      ],\n      [\n        \"▁expert\",\n        -10.239344596862793\n      ],\n      [\n        \"rate\",\n        -10.239428520202637\n      ],\n      [\n        \"zeit\",\n        -10.239971160888672\n      ],\n      [\n        \"▁26\",\n        -10.24040412902832\n      ],\n      [\n        \"▁Ka\",\n        -10.24056339263916\n      ],\n      [\n        \"▁fix\",\n        -10.240666389465332\n      ],\n      [\n        \"igen\",\n        -10.240713119506836\n      ],\n      [\n        \"▁direction\",\n        -10.241188049316406\n      ],\n      [\n        \"▁star\",\n        -10.241661071777344\n      ],\n      [\n        \"▁middle\",\n        -10.241889953613281\n      ],\n      [\n        \"▁Ja\",\n        -10.241962432861328\n      ],\n      [\n        \"▁Land\",\n        -10.24207878112793\n      ],\n      [\n        \"ken\",\n        -10.242605209350586\n      ],\n      [\n        \"▁button\",\n        -10.242630004882812\n      ],\n      [\n        \"▁rules\",\n        -10.242656707763672\n      ],\n      [\n        \"▁également\",\n        -10.242706298828125\n      ],\n      [\n        \"▁viel\",\n        -10.243158340454102\n      ],\n      [\n        \"▁welcome\",\n        -10.243682861328125\n      ],\n      [\n        \"că\",\n        -10.243932723999023\n      ],\n      [\n        \"▁Top\",\n        -10.245308876037598\n      ],\n      [\n        \"▁allowed\",\n        -10.245487213134766\n      ],\n      [\n        \"▁tip\",\n        -10.245584487915039\n      ],\n      [\n        \"▁cei\",\n        -10.245768547058105\n      ],\n      [\n        \"▁Nous\",\n        -10.246004104614258\n      ],\n      [\n        \"té\",\n        -10.246850967407227\n      ],\n      [\n        \"▁unei\",\n        -10.246903419494629\n      ],\n      [\n        \"▁efforts\",\n        -10.247260093688965\n      ],\n      [\n        \"▁note\",\n        -10.247719764709473\n      ],\n      [\n        \"▁title\",\n        -10.247977256774902\n      ],\n      [\n        \"ric\",\n        -10.248047828674316\n      ],\n      [\n        \"berg\",\n        -10.248252868652344\n      ],\n      [\n        \"▁ainsi\",\n        -10.248576164245605\n      ],\n      [\n        \"▁led\",\n        -10.248713493347168\n      ],\n      [\n        \"▁alone\",\n        -10.248786926269531\n      ],\n      [\n        \"ward\",\n        -10.249215126037598\n      ],\n      [\n        \"▁vie\",\n        -10.249323844909668\n      ],\n      [\n        \"▁brain\",\n        -10.249427795410156\n      ],\n      [\n        \"light\",\n        -10.250100135803223\n      ],\n      [\n        \"▁Court\",\n        -10.250598907470703\n      ],\n      [\n        \"set\",\n        -10.250869750976562\n      ],\n      [\n        \"▁steps\",\n        -10.251251220703125\n      ],\n      [\n        \"pri\",\n        -10.251391410827637\n      ],\n      [\n        \"Q\",\n        -10.251654624938965\n      ],\n      [\n        \"sti\",\n        -10.251938819885254\n      ],\n      [\n        \"▁voice\",\n        -10.252121925354004\n      ],\n      [\n        \"▁models\",\n        -10.252705574035645\n      ],\n      [\n        \"▁parties\",\n        -10.25442886352539\n      ],\n      [\n        \"▁radio\",\n        -10.255270957946777\n      ],\n      [\n        \"▁mission\",\n        -10.25545883178711\n      ],\n      [\n        \"▁methods\",\n        -10.255658149719238\n      ],\n      [\n        \"▁Te\",\n        -10.256019592285156\n      ],\n      [\n        \"air\",\n        -10.256489753723145\n      ],\n      [\n        \"▁essay\",\n        -10.256719589233398\n      ],\n      [\n        \"my\",\n        -10.256826400756836\n      ],\n      [\n        \"▁competition\",\n        -10.257049560546875\n      ],\n      [\n        \"ses\",\n        -10.257447242736816\n      ],\n      [\n        \"▁serious\",\n        -10.258724212646484\n      ],\n      [\n        \"▁Ti\",\n        -10.258733749389648\n      ],\n      [\n        \"▁Hand\",\n        -10.259561538696289\n      ],\n      [\n        \"not\",\n        -10.25958251953125\n      ],\n      [\n        \"▁winter\",\n        -10.261277198791504\n      ],\n      [\n        \"24\",\n        -10.261724472045898\n      ],\n      [\n        \"▁vision\",\n        -10.26174545288086\n      ],\n      [\n        \"▁technical\",\n        -10.262110710144043\n      ],\n      [\n        \"▁cross\",\n        -10.262799263000488\n      ],\n      [\n        \"▁update\",\n        -10.262947082519531\n      ],\n      [\n        \"▁Team\",\n        -10.263564109802246\n      ],\n      [\n        \"▁evening\",\n        -10.264286041259766\n      ],\n      [\n        \"▁experts\",\n        -10.26435661315918\n      ],\n      [\n        \"part\",\n        -10.264640808105469\n      ],\n      [\n        \"▁wo\",\n        -10.265190124511719\n      ],\n      [\n        \"▁App\",\n        -10.265729904174805\n      ],\n      [\n        \"▁peu\",\n        -10.266267776489258\n      ],\n      [\n        \"▁mich\",\n        -10.26630687713623\n      ],\n      [\n        \"▁reports\",\n        -10.267001152038574\n      ],\n      [\n        \"▁km\",\n        -10.267594337463379\n      ],\n      [\n        \"▁print\",\n        -10.2678804397583\n      ],\n      [\n        \"▁Hotel\",\n        -10.268101692199707\n      ],\n      [\n        \"▁earlier\",\n        -10.268235206604004\n      ],\n      [\n        \"▁uses\",\n        -10.26826286315918\n      ],\n      [\n        \"▁menu\",\n        -10.268416404724121\n      ],\n      [\n        \"▁miles\",\n        -10.26845645904541\n      ],\n      [\n        \"▁classes\",\n        -10.268463134765625\n      ],\n      [\n        \"▁mo\",\n        -10.268525123596191\n      ],\n      [\n        \"▁loan\",\n        -10.2691011428833\n      ],\n      [\n        \"▁host\",\n        -10.269192695617676\n      ],\n      [\n        \"▁author\",\n        -10.269274711608887\n      ],\n      [\n        \"-1\",\n        -10.269434928894043\n      ],\n      [\n        \"▁bun\",\n        -10.269940376281738\n      ],\n      [\n        \"19\",\n        -10.270011901855469\n      ],\n      [\n        \"uch\",\n        -10.270670890808105\n      ],\n      [\n        \"ble\",\n        -10.270813941955566\n      ],\n      [\n        \"▁holiday\",\n        -10.270859718322754\n      ],\n      [\n        \"los\",\n        -10.271894454956055\n      ],\n      [\n        \"▁looked\",\n        -10.272663116455078\n      ],\n      [\n        \"▁Test\",\n        -10.272759437561035\n      ],\n      [\n        \"▁moved\",\n        -10.273000717163086\n      ],\n      [\n        \"▁numbers\",\n        -10.273306846618652\n      ],\n      [\n        \"▁covered\",\n        -10.273405075073242\n      ],\n      [\n        \"ker\",\n        -10.273696899414062\n      ],\n      [\n        \"TM\",\n        -10.273768424987793\n      ],\n      [\n        \"▁album\",\n        -10.274727821350098\n      ],\n      [\n        \"▁27\",\n        -10.27476692199707\n      ],\n      [\n        \"▁când\",\n        -10.27523422241211\n      ],\n      [\n        \"▁shopping\",\n        -10.275248527526855\n      ],\n      [\n        \"▁Ihr\",\n        -10.27531623840332\n      ],\n      [\n        \"▁requires\",\n        -10.275786399841309\n      ],\n      [\n        \"▁USA\",\n        -10.275909423828125\n      ],\n      [\n        \"000\",\n        -10.275951385498047\n      ],\n      [\n        \"▁official\",\n        -10.276010513305664\n      ],\n      [\n        \"▁states\",\n        -10.276346206665039\n      ],\n      [\n        \"▁tips\",\n        -10.276570320129395\n      ],\n      [\n        \"ible\",\n        -10.277321815490723\n      ],\n      [\n        \"▁Lu\",\n        -10.27756404876709\n      ],\n      [\n        \"ces\",\n        -10.278343200683594\n      ],\n      [\n        \"▁figure\",\n        -10.27839469909668\n      ],\n      [\n        \"▁Take\",\n        -10.278576850891113\n      ],\n      [\n        \"▁după\",\n        -10.278687477111816\n      ],\n      [\n        \"▁teams\",\n        -10.278980255126953\n      ],\n      [\n        \"▁song\",\n        -10.279138565063477\n      ],\n      [\n        \"▁master\",\n        -10.279386520385742\n      ],\n      [\n        \"ED\",\n        -10.279841423034668\n      ],\n      [\n        \"▁cleaning\",\n        -10.280523300170898\n      ],\n      [\n        \"▁drop\",\n        -10.280651092529297\n      ],\n      [\n        \"▁primary\",\n        -10.2808837890625\n      ],\n      [\n        \"▁Life\",\n        -10.28108024597168\n      ],\n      [\n        \"▁carry\",\n        -10.281129837036133\n      ],\n      [\n        \"▁initial\",\n        -10.281270980834961\n      ],\n      [\n        \"▁encore\",\n        -10.281617164611816\n      ],\n      [\n        \"▁Add\",\n        -10.281670570373535\n      ],\n      [\n        \"▁woman\",\n        -10.282076835632324\n      ],\n      [\n        \"▁Water\",\n        -10.282219886779785\n      ],\n      [\n        \"▁advantage\",\n        -10.28277587890625\n      ],\n      [\n        \"see\",\n        -10.283234596252441\n      ],\n      [\n        \"ré\",\n        -10.283341407775879\n      ],\n      [\n        \"▁motor\",\n        -10.283479690551758\n      ],\n      [\n        \"mel\",\n        -10.2838716506958\n      ],\n      [\n        \"▁finding\",\n        -10.284419059753418\n      ],\n      [\n        \"▁plastic\",\n        -10.286365509033203\n      ],\n      [\n        \"▁IT\",\n        -10.286602973937988\n      ],\n      [\n        \"▁Church\",\n        -10.286916732788086\n      ],\n      [\n        \"▁shape\",\n        -10.287345886230469\n      ],\n      [\n        \"▁gets\",\n        -10.287763595581055\n      ],\n      [\n        \"▁followed\",\n        -10.288186073303223\n      ],\n      [\n        \"▁100%\",\n        -10.288315773010254\n      ],\n      [\n        \"▁Program\",\n        -10.28912353515625\n      ],\n      [\n        \"▁Another\",\n        -10.28934383392334\n      ],\n      [\n        \"▁zwei\",\n        -10.289522171020508\n      ],\n      [\n        \"▁father\",\n        -10.289839744567871\n      ],\n      [\n        \"▁rich\",\n        -10.290282249450684\n      ],\n      [\n        \"où\",\n        -10.290810585021973\n      ],\n      [\n        \"▁lines\",\n        -10.290934562683105\n      ],\n      [\n        \"▁distance\",\n        -10.291757583618164\n      ],\n      [\n        \"▁cell\",\n        -10.291876792907715\n      ],\n      [\n        \"▁parte\",\n        -10.292072296142578\n      ],\n      [\n        \"bit\",\n        -10.292445182800293\n      ],\n      [\n        \"▁perhaps\",\n        -10.292749404907227\n      ],\n      [\n        \"rii\",\n        -10.293590545654297\n      ],\n      [\n        \"▁session\",\n        -10.294137954711914\n      ],\n      [\n        \"▁Pentru\",\n        -10.294528007507324\n      ],\n      [\n        \"ING\",\n        -10.295049667358398\n      ],\n      [\n        \"ants\",\n        -10.295478820800781\n      ],\n      [\n        \"▁remain\",\n        -10.295543670654297\n      ],\n      [\n        \"13\",\n        -10.295588493347168\n      ],\n      [\n        \"▁finished\",\n        -10.295763969421387\n      ],\n      [\n        \"bel\",\n        -10.298725128173828\n      ],\n      [\n        \"▁organizations\",\n        -10.299455642700195\n      ],\n      [\n        \"▁Any\",\n        -10.299896240234375\n      ],\n      [\n        \"▁taste\",\n        -10.300277709960938\n      ],\n      [\n        \"Whether\",\n        -10.300600051879883\n      ],\n      [\n        \"ram\",\n        -10.300874710083008\n      ],\n      [\n        \"like\",\n        -10.301307678222656\n      ],\n      [\n        \"▁artist\",\n        -10.301319122314453\n      ],\n      [\n        \"aire\",\n        -10.303369522094727\n      ],\n      [\n        \"▁French\",\n        -10.303386688232422\n      ],\n      [\n        \"▁donc\",\n        -10.303634643554688\n      ],\n      [\n        \"ow\",\n        -10.30386734008789\n      ],\n      [\n        \"▁200\",\n        -10.303993225097656\n      ],\n      [\n        \"▁paint\",\n        -10.304465293884277\n      ],\n      [\n        \"▁Open\",\n        -10.304535865783691\n      ],\n      [\n        \"▁appear\",\n        -10.304722785949707\n      ],\n      [\n        \"▁Washington\",\n        -10.304765701293945\n      ],\n      [\n        \"▁target\",\n        -10.30491828918457\n      ],\n      [\n        \"pir\",\n        -10.305578231811523\n      ],\n      [\n        \"▁generally\",\n        -10.305987358093262\n      ],\n      [\n        \"▁British\",\n        -10.306790351867676\n      ],\n      [\n        \"▁seven\",\n        -10.306937217712402\n      ],\n      [\n        \"▁bio\",\n        -10.307162284851074\n      ],\n      [\n        \"▁sector\",\n        -10.307358741760254\n      ],\n      [\n        \"90\",\n        -10.30777359008789\n      ],\n      [\n        \"▁fapt\",\n        -10.307881355285645\n      ],\n      [\n        \"▁prefer\",\n        -10.308316230773926\n      ],\n      [\n        \"▁partner\",\n        -10.308427810668945\n      ],\n      [\n        \"ăm\",\n        -10.308547973632812\n      ],\n      [\n        \"▁diverse\",\n        -10.308610916137695\n      ],\n      [\n        \"▁onto\",\n        -10.309283256530762\n      ],\n      [\n        \"▁refer\",\n        -10.309828758239746\n      ],\n      [\n        \"▁Law\",\n        -10.310302734375\n      ],\n      [\n        \"▁Ri\",\n        -10.310596466064453\n      ],\n      [\n        \"▁critical\",\n        -10.310735702514648\n      ],\n      [\n        \"▁copy\",\n        -10.310897827148438\n      ],\n      [\n        \"ck\",\n        -10.311517715454102\n      ],\n      [\n        \"ix\",\n        -10.311732292175293\n      ],\n      [\n        \"tag\",\n        -10.311793327331543\n      ],\n      [\n        \"▁Road\",\n        -10.311936378479004\n      ],\n      [\n        \"▁concern\",\n        -10.312053680419922\n      ],\n      [\n        \"▁maximum\",\n        -10.312095642089844\n      ],\n      [\n        \"▁train\",\n        -10.312148094177246\n      ],\n      [\n        \"▁într\",\n        -10.312189102172852\n      ],\n      [\n        \"ura\",\n        -10.313023567199707\n      ],\n      [\n        \"▁Qu\",\n        -10.313481330871582\n      ],\n      [\n        \"▁links\",\n        -10.313538551330566\n      ],\n      [\n        \"▁audience\",\n        -10.313969612121582\n      ],\n      [\n        \"▁foot\",\n        -10.314554214477539\n      ],\n      [\n        \"▁Blue\",\n        -10.314605712890625\n      ],\n      [\n        \"ification\",\n        -10.315386772155762\n      ],\n      [\n        \"▁developing\",\n        -10.315847396850586\n      ],\n      [\n        \"▁interior\",\n        -10.315876007080078\n      ],\n      [\n        \"=\",\n        -10.316556930541992\n      ],\n      [\n        \"▁aceasta\",\n        -10.31698989868164\n      ],\n      [\n        \"▁dedicated\",\n        -10.317373275756836\n      ],\n      [\n        \"▁movement\",\n        -10.317383766174316\n      ],\n      [\n        \"sta\",\n        -10.318868637084961\n      ],\n      [\n        \"▁challenges\",\n        -10.319018363952637\n      ],\n      [\n        \"inte\",\n        -10.319074630737305\n      ],\n      [\n        \"▁Euro\",\n        -10.319075584411621\n      ],\n      [\n        \"▁classic\",\n        -10.320341110229492\n      ],\n      [\n        \"▁Um\",\n        -10.320767402648926\n      ],\n      [\n        \"▁alternative\",\n        -10.321407318115234\n      ],\n      [\n        \"mann\",\n        -10.321614265441895\n      ],\n      [\n        \"▁Une\",\n        -10.322278022766113\n      ],\n      [\n        \"qu\",\n        -10.322415351867676\n      ],\n      [\n        \"▁heavy\",\n        -10.322434425354004\n      ],\n      [\n        \"▁install\",\n        -10.322484970092773\n      ],\n      [\n        \"▁fiind\",\n        -10.322504043579102\n      ],\n      [\n        \"▁leaders\",\n        -10.323003768920898\n      ],\n      [\n        \"▁views\",\n        -10.323019981384277\n      ],\n      [\n        \"▁www\",\n        -10.323084831237793\n      ],\n      [\n        \"▁standards\",\n        -10.323270797729492\n      ],\n      [\n        \"ong\",\n        -10.323580741882324\n      ],\n      [\n        \"40\",\n        -10.323833465576172\n      ],\n      [\n        \"▁cm\",\n        -10.323848724365234\n      ],\n      [\n        \"▁park\",\n        -10.324324607849121\n      ],\n      [\n        \"▁himself\",\n        -10.324419021606445\n      ],\n      [\n        \"▁People\",\n        -10.324649810791016\n      ],\n      [\n        \"▁separate\",\n        -10.324843406677246\n      ],\n      [\n        \"▁secure\",\n        -10.325018882751465\n      ],\n      [\n        \"sie\",\n        -10.325084686279297\n      ],\n      [\n        \"▁maintenance\",\n        -10.325199127197266\n      ],\n      [\n        \"▁encourage\",\n        -10.32766056060791\n      ],\n      [\n        \"ein\",\n        -10.328139305114746\n      ],\n      [\n        \"▁reviews\",\n        -10.328202247619629\n      ],\n      [\n        \"▁Michael\",\n        -10.328210830688477\n      ],\n      [\n        \"▁background\",\n        -10.328283309936523\n      ],\n      [\n        \"▁therefore\",\n        -10.328433990478516\n      ],\n      [\n        \"▁server\",\n        -10.328487396240234\n      ],\n      [\n        \"▁dream\",\n        -10.328742027282715\n      ],\n      [\n        \"ping\",\n        -10.329025268554688\n      ],\n      [\n        \"▁block\",\n        -10.329855918884277\n      ],\n      [\n        \"▁2009\",\n        -10.330734252929688\n      ],\n      [\n        \"▁facilities\",\n        -10.330931663513184\n      ],\n      [\n        \"▁II\",\n        -10.331367492675781\n      ],\n      [\n        \"▁attend\",\n        -10.33156967163086\n      ],\n      [\n        \"▁cap\",\n        -10.33224105834961\n      ],\n      [\n        \"35\",\n        -10.332416534423828\n      ],\n      [\n        \"▁steel\",\n        -10.332796096801758\n      ],\n      [\n        \"▁shared\",\n        -10.333391189575195\n      ],\n      [\n        \"▁doctor\",\n        -10.333939552307129\n      ],\n      [\n        \"▁River\",\n        -10.33411693572998\n      ],\n      [\n        \"▁Bay\",\n        -10.334456443786621\n      ],\n      [\n        \"▁length\",\n        -10.335005760192871\n      ],\n      [\n        \"▁jobs\",\n        -10.335466384887695\n      ],\n      [\n        \"▁Plus\",\n        -10.335992813110352\n      ],\n      [\n        \"▁station\",\n        -10.336140632629395\n      ],\n      [\n        \"▁elements\",\n        -10.336268424987793\n      ],\n      [\n        \"▁rock\",\n        -10.336668014526367\n      ],\n      [\n        \"▁professionals\",\n        -10.336670875549316\n      ],\n      [\n        \"cle\",\n        -10.336777687072754\n      ],\n      [\n        \"▁dont\",\n        -10.336873054504395\n      ],\n      [\n        \"urilor\",\n        -10.337142944335938\n      ],\n      [\n        \"▁gain\",\n        -10.337271690368652\n      ],\n      [\n        \"▁programme\",\n        -10.337540626525879\n      ],\n      [\n        \"▁Cor\",\n        -10.338377952575684\n      ],\n      [\n        \"▁leader\",\n        -10.338542938232422\n      ],\n      [\n        \"ării\",\n        -10.33876895904541\n      ],\n      [\n        \"▁>\",\n        -10.339137077331543\n      ],\n      [\n        \"▁task\",\n        -10.339471817016602\n      ],\n      [\n        \"▁seeing\",\n        -10.339943885803223\n      ],\n      [\n        \"▁statement\",\n        -10.34045696258545\n      ],\n      [\n        \"vin\",\n        -10.341094017028809\n      ],\n      [\n        \"▁fish\",\n        -10.341700553894043\n      ],\n      [\n        \"▁advanced\",\n        -10.342403411865234\n      ],\n      [\n        \"▁discuss\",\n        -10.342494010925293\n      ],\n      [\n        \"die\",\n        -10.342904090881348\n      ],\n      [\n        \"isch\",\n        -10.342944145202637\n      ],\n      [\n        \"▁plenty\",\n        -10.342947959899902\n      ],\n      [\n        \"▁Hall\",\n        -10.343120574951172\n      ],\n      [\n        \"▁Other\",\n        -10.343339920043945\n      ],\n      [\n        \"▁homes\",\n        -10.344944953918457\n      ],\n      [\n        \"▁Ni\",\n        -10.345016479492188\n      ],\n      [\n        \"▁testing\",\n        -10.345102310180664\n      ],\n      [\n        \"▁Last\",\n        -10.345392227172852\n      ],\n      [\n        \"▁Note\",\n        -10.345595359802246\n      ],\n      [\n        \"▁talking\",\n        -10.345934867858887\n      ],\n      [\n        \"▁exchange\",\n        -10.347042083740234\n      ],\n      [\n        \"▁exercise\",\n        -10.347189903259277\n      ],\n      [\n        \"▁cea\",\n        -10.347546577453613\n      ],\n      [\n        \"▁wife\",\n        -10.34820556640625\n      ],\n      [\n        \"▁Für\",\n        -10.348480224609375\n      ],\n      [\n        \"▁Texas\",\n        -10.34981918334961\n      ],\n      [\n        \"▁fr\",\n        -10.35065746307373\n      ],\n      [\n        \"▁speak\",\n        -10.350894927978516\n      ],\n      [\n        \"17\",\n        -10.351007461547852\n      ],\n      [\n        \"70\",\n        -10.351462364196777\n      ],\n      [\n        \"▁promote\",\n        -10.351851463317871\n      ],\n      [\n        \"tul\",\n        -10.351990699768066\n      ],\n      [\n        \"apos\",\n        -10.35208511352539\n      ],\n      [\n        \"▁Jahr\",\n        -10.35214900970459\n      ],\n      [\n        \"▁Trump\",\n        -10.352204322814941\n      ],\n      [\n        \"▁ohne\",\n        -10.352357864379883\n      ],\n      [\n        \"▁learned\",\n        -10.353700637817383\n      ],\n      [\n        \"▁Sp\",\n        -10.353803634643555\n      ],\n      [\n        \"▁owner\",\n        -10.354275703430176\n      ],\n      [\n        \"mor\",\n        -10.354422569274902\n      ],\n      [\n        \"▁fois\",\n        -10.354452133178711\n      ],\n      [\n        \"▁meaning\",\n        -10.35518741607666\n      ],\n      [\n        \"▁dacă\",\n        -10.355249404907227\n      ],\n      [\n        \"nic\",\n        -10.355484008789062\n      ],\n      [\n        \"а\",\n        -10.355525970458984\n      ],\n      [\n        \"14\",\n        -10.355767250061035\n      ],\n      [\n        \"▁driver\",\n        -10.356258392333984\n      ],\n      [\n        \"▁Amazon\",\n        -10.3567533493042\n      ],\n      [\n        \"▁flow\",\n        -10.358469009399414\n      ],\n      [\n        \"▁shot\",\n        -10.358726501464844\n      ],\n      [\n        \"▁sous\",\n        -10.35914421081543\n      ],\n      [\n        \"▁Gold\",\n        -10.359339714050293\n      ],\n      [\n        \"▁straight\",\n        -10.359562873840332\n      ],\n      [\n        \"▁conference\",\n        -10.359610557556152\n      ],\n      [\n        \"▁peste\",\n        -10.359662055969238\n      ],\n      [\n        \"whose\",\n        -10.36030101776123\n      ],\n      [\n        \"▁installation\",\n        -10.36050796508789\n      ],\n      [\n        \"▁produced\",\n        -10.360607147216797\n      ],\n      [\n        \"▁independent\",\n        -10.36192512512207\n      ],\n      [\n        \"▁Institute\",\n        -10.362021446228027\n      ],\n      [\n        \"▁James\",\n        -10.362373352050781\n      ],\n      [\n        \"▁mental\",\n        -10.362601280212402\n      ],\n      [\n        \"ara\",\n        -10.362798690795898\n      ],\n      [\n        \"ium\",\n        -10.363021850585938\n      ],\n      [\n        \"▁husband\",\n        -10.36306095123291\n      ],\n      [\n        \"▁guests\",\n        -10.363907814025879\n      ],\n      [\n        \"27\",\n        -10.364319801330566\n      ],\n      [\n        \"▁Che\",\n        -10.364651679992676\n      ],\n      [\n        \"▁Indian\",\n        -10.364694595336914\n      ],\n      [\n        \"zer\",\n        -10.36478042602539\n      ],\n      [\n        \"▁minimum\",\n        -10.364962577819824\n      ],\n      [\n        \"500\",\n        -10.365096092224121\n      ],\n      [\n        \"▁sit\",\n        -10.36561393737793\n      ],\n      [\n        \"put\",\n        -10.36656379699707\n      ],\n      [\n        \"▁avea\",\n        -10.36665153503418\n      ],\n      [\n        \"▁ride\",\n        -10.367088317871094\n      ],\n      [\n        \"gan\",\n        -10.367152214050293\n      ],\n      [\n        \"▁Ke\",\n        -10.36747932434082\n      ],\n      [\n        \"book\",\n        -10.367515563964844\n      ],\n      [\n        \"ages\",\n        -10.368019104003906\n      ],\n      [\n        \"▁presented\",\n        -10.368157386779785\n      ],\n      [\n        \"▁Com\",\n        -10.368927955627441\n      ],\n      [\n        \"▁Call\",\n        -10.369053840637207\n      ],\n      [\n        \"▁fee\",\n        -10.369847297668457\n      ],\n      [\n        \"ări\",\n        -10.369905471801758\n      ],\n      [\n        \"▁putea\",\n        -10.37072467803955\n      ],\n      [\n        \"▁Public\",\n        -10.371030807495117\n      ],\n      [\n        \"▁pa\",\n        -10.371152877807617\n      ],\n      [\n        \"28\",\n        -10.371233940124512\n      ],\n      [\n        \"▁Director\",\n        -10.37126350402832\n      ],\n      [\n        \"▁contains\",\n        -10.3717622756958\n      ],\n      [\n        \"▁factors\",\n        -10.372554779052734\n      ],\n      [\n        \"▁famous\",\n        -10.372614860534668\n      ],\n      [\n        \"▁bathroom\",\n        -10.373040199279785\n      ],\n      [\n        \"▁core\",\n        -10.37353229522705\n      ],\n      [\n        \"▁viele\",\n        -10.373610496520996\n      ],\n      [\n        \"▁acum\",\n        -10.374361991882324\n      ],\n      [\n        \"▁animal\",\n        -10.374407768249512\n      ],\n      [\n        \"▁Ihnen\",\n        -10.374425888061523\n      ],\n      [\n        \"▁Find\",\n        -10.374545097351074\n      ],\n      [\n        \"▁Fall\",\n        -10.374861717224121\n      ],\n      [\n        \"ford\",\n        -10.376051902770996\n      ],\n      [\n        \"▁coverage\",\n        -10.3765287399292\n      ],\n      [\n        \"▁smart\",\n        -10.376830101013184\n      ],\n      [\n        \"ries\",\n        -10.376893997192383\n      ],\n      [\n        \"▁memory\",\n        -10.3772554397583\n      ],\n      [\n        \"▁dance\",\n        -10.377443313598633\n      ],\n      [\n        \"11\",\n        -10.37746810913086\n      ],\n      [\n        \"▁communities\",\n        -10.377655982971191\n      ],\n      [\n        \"eurs\",\n        -10.378050804138184\n      ],\n      [\n        \"▁Florida\",\n        -10.378463745117188\n      ],\n      [\n        \"▁sport\",\n        -10.379366874694824\n      ],\n      [\n        \"▁bus\",\n        -10.37992000579834\n      ],\n      [\n        \"▁colors\",\n        -10.379969596862793\n      ],\n      [\n        \"▁affect\",\n        -10.380044937133789\n      ],\n      [\n        \"▁score\",\n        -10.380183219909668\n      ],\n      [\n        \"▁properties\",\n        -10.38050365447998\n      ],\n      [\n        \"18\",\n        -10.380593299865723\n      ],\n      [\n        \"▁astfel\",\n        -10.381312370300293\n      ],\n      [\n        \"▁beach\",\n        -10.382407188415527\n      ],\n      [\n        \"▁friendly\",\n        -10.382795333862305\n      ],\n      [\n        \"izing\",\n        -10.38288688659668\n      ],\n      [\n        \"▁buying\",\n        -10.383146286010742\n      ],\n      [\n        \"▁forget\",\n        -10.383195877075195\n      ],\n      [\n        \"este\",\n        -10.383198738098145\n      ],\n      [\n        \"▁capacity\",\n        -10.38360595703125\n      ],\n      [\n        \"▁lose\",\n        -10.383692741394043\n      ],\n      [\n        \"▁listed\",\n        -10.38407039642334\n      ],\n      [\n        \"ica\",\n        -10.384084701538086\n      ],\n      [\n        \"han\",\n        -10.384085655212402\n      ],\n      [\n        \"▁selbst\",\n        -10.384390830993652\n      ],\n      [\n        \"▁values\",\n        -10.384391784667969\n      ],\n      [\n        \"▁Power\",\n        -10.384559631347656\n      ],\n      [\n        \"▁comments\",\n        -10.384831428527832\n      ],\n      [\n        \"eux\",\n        -10.385346412658691\n      ],\n      [\n        \"ați\",\n        -10.385419845581055\n      ],\n      [\n        \"▁context\",\n        -10.385710716247559\n      ],\n      [\n        \"liche\",\n        -10.385944366455078\n      ],\n      [\n        \"▁keeping\",\n        -10.38620662689209\n      ],\n      [\n        \"▁2008\",\n        -10.38647174835205\n      ],\n      [\n        \"▁su\",\n        -10.386670112609863\n      ],\n      [\n        \"▁biggest\",\n        -10.386838912963867\n      ],\n      [\n        \"▁fiecare\",\n        -10.387356758117676\n      ],\n      [\n        \"ight\",\n        -10.38845157623291\n      ],\n      [\n        \"▁toute\",\n        -10.389808654785156\n      ],\n      [\n        \"▁dinner\",\n        -10.389827728271484\n      ],\n      [\n        \"bau\",\n        -10.390706062316895\n      ],\n      [\n        \"▁Mai\",\n        -10.390762329101562\n      ],\n      [\n        \"▁status\",\n        -10.390776634216309\n      ],\n      [\n        \"rez\",\n        -10.391340255737305\n      ],\n      [\n        \"▁selected\",\n        -10.391549110412598\n      ],\n      [\n        \"▁cells\",\n        -10.392601013183594\n      ],\n      [\n        \"▁eight\",\n        -10.393319129943848\n      ],\n      [\n        \"▁package\",\n        -10.393320083618164\n      ],\n      [\n        \"▁scale\",\n        -10.39333724975586\n      ],\n      [\n        \"din\",\n        -10.39336109161377\n      ],\n      [\n        \"▁Who\",\n        -10.393381118774414\n      ],\n      [\n        \"▁century\",\n        -10.393399238586426\n      ],\n      [\n        \"▁bi\",\n        -10.393516540527344\n      ],\n      [\n        \"▁Africa\",\n        -10.39384937286377\n      ],\n      [\n        \"▁http\",\n        -10.394133567810059\n      ],\n      [\n        \"▁named\",\n        -10.394230842590332\n      ],\n      [\n        \"▁adding\",\n        -10.394901275634766\n      ],\n      [\n        \"▁mention\",\n        -10.395039558410645\n      ],\n      [\n        \"▁casino\",\n        -10.395421981811523\n      ],\n      [\n        \"▁couldn\",\n        -10.395624160766602\n      ],\n      [\n        \"▁outdoor\",\n        -10.395912170410156\n      ],\n      [\n        \"▁sugar\",\n        -10.3960542678833\n      ],\n      [\n        \"▁prepared\",\n        -10.396124839782715\n      ],\n      [\n        \"21\",\n        -10.396528244018555\n      ],\n      [\n        \"▁Ba\",\n        -10.396632194519043\n      ],\n      [\n        \"vers\",\n        -10.396697998046875\n      ],\n      [\n        \"ration\",\n        -10.396773338317871\n      ],\n      [\n        \"▁ja\",\n        -10.397035598754883\n      ],\n      [\n        \"▁aspect\",\n        -10.397224426269531\n      ],\n      [\n        \"▁31\",\n        -10.397462844848633\n      ],\n      [\n        \"▁treat\",\n        -10.397475242614746\n      ],\n      [\n        \"tru\",\n        -10.397841453552246\n      ],\n      [\n        \"▁flat\",\n        -10.397890090942383\n      ],\n      [\n        \"32\",\n        -10.397989273071289\n      ],\n      [\n        \"▁reality\",\n        -10.398238182067871\n      ],\n      [\n        \"▁waste\",\n        -10.39876937866211\n      ],\n      [\n        \"▁King\",\n        -10.399649620056152\n      ],\n      [\n        \"▁drug\",\n        -10.399870872497559\n      ],\n      [\n        \"▁operations\",\n        -10.400120735168457\n      ],\n      [\n        \"▁aim\",\n        -10.40042495727539\n      ],\n      [\n        \"▁fans\",\n        -10.400444984436035\n      ],\n      [\n        \"▁vers\",\n        -10.400891304016113\n      ],\n      [\n        \"▁plants\",\n        -10.400971412658691\n      ],\n      [\n        \"▁Dis\",\n        -10.401477813720703\n      ],\n      [\n        \"▁Daten\",\n        -10.401510238647461\n      ],\n      [\n        \"être\",\n        -10.40267276763916\n      ],\n      [\n        \"▁placed\",\n        -10.40326976776123\n      ],\n      [\n        \"▁bon\",\n        -10.403977394104004\n      ],\n      [\n        \"beim\",\n        -10.4041109085083\n      ],\n      [\n        \"▁slow\",\n        -10.40501880645752\n      ],\n      [\n        \"cri\",\n        -10.405512809753418\n      ],\n      [\n        \"▁Care\",\n        -10.405691146850586\n      ],\n      [\n        \"mes\",\n        -10.406211853027344\n      ],\n      [\n        \"26\",\n        -10.406257629394531\n      ],\n      [\n        \"box\",\n        -10.406330108642578\n      ],\n      [\n        \"▁helpful\",\n        -10.406362533569336\n      ],\n      [\n        \"▁documents\",\n        -10.406543731689453\n      ],\n      [\n        \"▁visitors\",\n        -10.406773567199707\n      ],\n      [\n        \"ture\",\n        -10.406862258911133\n      ],\n      [\n        \"▁Menschen\",\n        -10.406891822814941\n      ],\n      [\n        \"▁Chi\",\n        -10.406975746154785\n      ],\n      [\n        \"▁recipe\",\n        -10.40764045715332\n      ],\n      [\n        \"▁kept\",\n        -10.407693862915039\n      ],\n      [\n        \"▁Grand\",\n        -10.407915115356445\n      ],\n      [\n        \"▁operating\",\n        -10.408178329467773\n      ],\n      [\n        \"point\",\n        -10.408329010009766\n      ],\n      [\n        \"▁bin\",\n        -10.40837287902832\n      ],\n      [\n        \"▁Tri\",\n        -10.40845775604248\n      ],\n      [\n        \"Be\",\n        -10.408512115478516\n      ],\n      [\n        \"▁experiences\",\n        -10.40856647491455\n      ],\n      [\n        \"▁academic\",\n        -10.408608436584473\n      ],\n      [\n        \"▁finden\",\n        -10.40870475769043\n      ],\n      [\n        \"▁sera\",\n        -10.409092903137207\n      ],\n      [\n        \"act\",\n        -10.410541534423828\n      ],\n      [\n        \"▁Pa\",\n        -10.410907745361328\n      ],\n      [\n        \"▁society\",\n        -10.411056518554688\n      ],\n      [\n        \"▁combination\",\n        -10.411237716674805\n      ],\n      [\n        \"5%\",\n        -10.41182804107666\n      ],\n      [\n        \"▁owners\",\n        -10.41188907623291\n      ],\n      [\n        \"▁poor\",\n        -10.412039756774902\n      ],\n      [\n        \"▁Robert\",\n        -10.412378311157227\n      ],\n      [\n        \"▁military\",\n        -10.412964820861816\n      ],\n      [\n        \"▁economy\",\n        -10.413033485412598\n      ],\n      [\n        \"▁aware\",\n        -10.413055419921875\n      ],\n      [\n        \"rot\",\n        -10.413443565368652\n      ],\n      [\n        \"mie\",\n        -10.413544654846191\n      ],\n      [\n        \"▁Thursday\",\n        -10.414399147033691\n      ],\n      [\n        \"▁2011\",\n        -10.41490650177002\n      ],\n      [\n        \"▁fantastic\",\n        -10.41554069519043\n      ],\n      [\n        \"▁numerous\",\n        -10.415921211242676\n      ],\n      [\n        \"▁fair\",\n        -10.4165620803833\n      ],\n      [\n        \"med\",\n        -10.416753768920898\n      ],\n      [\n        \"▁welche\",\n        -10.416893005371094\n      ],\n      [\n        \"▁fruit\",\n        -10.41712760925293\n      ],\n      [\n        \"ku\",\n        -10.417325019836426\n      ],\n      [\n        \"▁Social\",\n        -10.417583465576172\n      ],\n      [\n        \"▁funds\",\n        -10.418157577514648\n      ],\n      [\n        \"▁atunci\",\n        -10.418214797973633\n      ],\n      [\n        \"▁Part\",\n        -10.418238639831543\n      ],\n      [\n        \"▁Big\",\n        -10.418301582336426\n      ],\n      [\n        \"▁2010\",\n        -10.419414520263672\n      ],\n      [\n        \"▁detail\",\n        -10.419889450073242\n      ],\n      [\n        \"▁Peter\",\n        -10.419942855834961\n      ],\n      [\n        \"ani\",\n        -10.420196533203125\n      ],\n      [\n        \"▁Wie\",\n        -10.420795440673828\n      ],\n      [\n        \"▁Tu\",\n        -10.421649932861328\n      ],\n      [\n        \"ear\",\n        -10.421706199645996\n      ],\n      [\n        \"▁Wenn\",\n        -10.421941757202148\n      ],\n      [\n        \"▁manager\",\n        -10.42199993133545\n      ],\n      [\n        \"▁Dan\",\n        -10.422409057617188\n      ],\n      [\n        \"▁Pi\",\n        -10.42257308959961\n      ],\n      [\n        \"▁wants\",\n        -10.422652244567871\n      ],\n      [\n        \"▁Data\",\n        -10.42322826385498\n      ],\n      [\n        \"pos\",\n        -10.42387580871582\n      ],\n      [\n        \"▁older\",\n        -10.423946380615234\n      ],\n      [\n        \"▁Download\",\n        -10.424071311950684\n      ],\n      [\n        \"▁Was\",\n        -10.424107551574707\n      ],\n      [\n        \"▁corner\",\n        -10.424195289611816\n      ],\n      [\n        \"▁president\",\n        -10.424199104309082\n      ],\n      [\n        \"mas\",\n        -10.424248695373535\n      ],\n      [\n        \"▁smaller\",\n        -10.424361228942871\n      ],\n      [\n        \"▁bright\",\n        -10.424459457397461\n      ],\n      [\n        \"▁proper\",\n        -10.424582481384277\n      ],\n      [\n        \"▁Kinder\",\n        -10.424637794494629\n      ],\n      [\n        \"▁Two\",\n        -10.424668312072754\n      ],\n      [\n        \"▁award\",\n        -10.42471694946289\n      ],\n      [\n        \"▁premier\",\n        -10.425211906433105\n      ],\n      [\n        \"▁seek\",\n        -10.425646781921387\n      ],\n      [\n        \"▁thank\",\n        -10.425662994384766\n      ],\n      [\n        \"▁proud\",\n        -10.426509857177734\n      ],\n      [\n        \"▁workers\",\n        -10.426774024963379\n      ],\n      [\n        \"▁2000\",\n        -10.426970481872559\n      ],\n      [\n        \"▁gone\",\n        -10.427482604980469\n      ],\n      [\n        \"▁medium\",\n        -10.427693367004395\n      ],\n      [\n        \"▁grade\",\n        -10.42777156829834\n      ],\n      [\n        \"▁Ru\",\n        -10.427800178527832\n      ],\n      [\n        \"cro\",\n        -10.427851676940918\n      ],\n      [\n        \"▁interview\",\n        -10.428311347961426\n      ],\n      [\n        \"23\",\n        -10.428787231445312\n      ],\n      [\n        \"▁mari\",\n        -10.429442405700684\n      ],\n      [\n        \"▁80\",\n        -10.429756164550781\n      ],\n      [\n        \"▁Ga\",\n        -10.430047035217285\n      ],\n      [\n        \"▁90\",\n        -10.431839942932129\n      ],\n      [\n        \"▁anderen\",\n        -10.432605743408203\n      ],\n      [\n        \"▁cultural\",\n        -10.433018684387207\n      ],\n      [\n        \"but\",\n        -10.433144569396973\n      ],\n      [\n        \"rum\",\n        -10.433300018310547\n      ],\n      [\n        \"get\",\n        -10.43338680267334\n      ],\n      [\n        \"▁pop\",\n        -10.433582305908203\n      ],\n      [\n        \"▁Information\",\n        -10.433594703674316\n      ],\n      [\n        \"▁press\",\n        -10.434972763061523\n      ],\n      [\n        \"▁Project\",\n        -10.435359001159668\n      ],\n      [\n        \"▁excited\",\n        -10.435755729675293\n      ],\n      [\n        \"▁Saint\",\n        -10.436088562011719\n      ],\n      [\n        \"▁England\",\n        -10.436192512512207\n      ],\n      [\n        \"▁beauty\",\n        -10.43643856048584\n      ],\n      [\n        \"▁agreement\",\n        -10.436464309692383\n      ],\n      [\n        \"▁Like\",\n        -10.437565803527832\n      ],\n      [\n        \"▁strength\",\n        -10.437664985656738\n      ],\n      [\n        \"▁waiting\",\n        -10.438165664672852\n      ],\n      [\n        \"и\",\n        -10.438270568847656\n      ],\n      [\n        \"Le\",\n        -10.438329696655273\n      ],\n      [\n        \"▁residents\",\n        -10.43835735321045\n      ],\n      [\n        \"▁Ben\",\n        -10.438603401184082\n      ],\n      [\n        \"▁mentioned\",\n        -10.439260482788086\n      ],\n      [\n        \"▁etwas\",\n        -10.43930721282959\n      ],\n      [\n        \"▁rooms\",\n        -10.439347267150879\n      ],\n      [\n        \"▁neue\",\n        -10.439501762390137\n      ],\n      [\n        \"▁Microsoft\",\n        -10.439726829528809\n      ],\n      [\n        \"▁passed\",\n        -10.440205574035645\n      ],\n      [\n        \"▁sea\",\n        -10.440893173217773\n      ],\n      [\n        \"▁electric\",\n        -10.441244125366211\n      ],\n      [\n        \"▁forms\",\n        -10.441384315490723\n      ],\n      [\n        \"▁Central\",\n        -10.441597938537598\n      ],\n      [\n        \"▁Lord\",\n        -10.442625999450684\n      ],\n      [\n        \"ute\",\n        -10.442763328552246\n      ],\n      [\n        \"▁pré\",\n        -10.442790031433105\n      ],\n      [\n        \"▁square\",\n        -10.44308090209961\n      ],\n      [\n        \"itatea\",\n        -10.443451881408691\n      ],\n      [\n        \"▁debt\",\n        -10.443757057189941\n      ],\n      [\n        \"▁street\",\n        -10.443975448608398\n      ],\n      [\n        \"▁pi\",\n        -10.444917678833008\n      ],\n      [\n        \"▁happened\",\n        -10.445326805114746\n      ],\n      [\n        \"▁Tuesday\",\n        -10.445592880249023\n      ],\n      [\n        \"recht\",\n        -10.446094512939453\n      ],\n      [\n        \"▁Eine\",\n        -10.44627857208252\n      ],\n      [\n        \"▁Set\",\n        -10.446768760681152\n      ],\n      [\n        \"▁federal\",\n        -10.4468412399292\n      ],\n      [\n        \"CC\",\n        -10.446905136108398\n      ],\n      [\n        \"....\",\n        -10.446938514709473\n      ],\n      [\n        \"lig\",\n        -10.447463035583496\n      ],\n      [\n        \"▁Christian\",\n        -10.44870662689209\n      ],\n      [\n        \"▁truth\",\n        -10.449213981628418\n      ],\n      [\n        \"▁map\",\n        -10.449728012084961\n      ],\n      [\n        \"▁secret\",\n        -10.449979782104492\n      ],\n      [\n        \"▁Chinese\",\n        -10.450844764709473\n      ],\n      [\n        \"hol\",\n        -10.450895309448242\n      ],\n      [\n        \"▁wrote\",\n        -10.451505661010742\n      ],\n      [\n        \"▁hospital\",\n        -10.451783180236816\n      ],\n      [\n        \"▁Island\",\n        -10.451870918273926\n      ],\n      [\n        \"▁frame\",\n        -10.451946258544922\n      ],\n      [\n        \"▁sources\",\n        -10.452117919921875\n      ],\n      [\n        \"pan\",\n        -10.453242301940918\n      ],\n      [\n        \"▁29\",\n        -10.453530311584473\n      ],\n      [\n        \"▁changing\",\n        -10.454547882080078\n      ],\n      [\n        \"▁Where\",\n        -10.454627990722656\n      ],\n      [\n        \"▁negative\",\n        -10.45471477508545\n      ],\n      [\n        \"▁processes\",\n        -10.45491886138916\n      ],\n      [\n        \"▁leadership\",\n        -10.455029487609863\n      ],\n      [\n        \"▁nos\",\n        -10.455195426940918\n      ],\n      [\n        \"▁info\",\n        -10.455780029296875\n      ],\n      [\n        \"▁Gu\",\n        -10.45595645904541\n      ],\n      [\n        \"▁CO\",\n        -10.45605182647705\n      ],\n      [\n        \"▁reference\",\n        -10.456884384155273\n      ],\n      [\n        \"▁corporate\",\n        -10.457097053527832\n      ],\n      [\n        \"▁characters\",\n        -10.457563400268555\n      ],\n      [\n        \"▁dining\",\n        -10.4577054977417\n      ],\n      [\n        \"▁becoming\",\n        -10.459708213806152\n      ],\n      [\n        \"▁4.\",\n        -10.460311889648438\n      ],\n      [\n        \"▁Science\",\n        -10.460626602172852\n      ],\n      [\n        \"▁Education\",\n        -10.461943626403809\n      ],\n      [\n        \"▁camp\",\n        -10.46207046508789\n      ],\n      [\n        \"fall\",\n        -10.462146759033203\n      ],\n      [\n        \"▁Auch\",\n        -10.462471961975098\n      ],\n      [\n        \"▁topic\",\n        -10.462519645690918\n      ],\n      [\n        \"▁influence\",\n        -10.463460922241211\n      ],\n      [\n        \"▁70\",\n        -10.463892936706543\n      ],\n      [\n        \"▁identify\",\n        -10.464459419250488\n      ],\n      [\n        \"▁(19\",\n        -10.464646339416504\n      ],\n      [\n        \"care\",\n        -10.465216636657715\n      ],\n      [\n        \"ions\",\n        -10.466215133666992\n      ],\n      [\n        \"ray\",\n        -10.4663724899292\n      ],\n      [\n        \"▁Both\",\n        -10.466577529907227\n      ],\n      [\n        \"▁collect\",\n        -10.466997146606445\n      ],\n      [\n        \"▁practices\",\n        -10.467667579650879\n      ],\n      [\n        \"▁fight\",\n        -10.468058586120605\n      ],\n      [\n        \"▁injury\",\n        -10.46873664855957\n      ],\n      [\n        \"▁nici\",\n        -10.46905517578125\n      ],\n      [\n        \"▁depuis\",\n        -10.469563484191895\n      ],\n      [\n        \"▁actions\",\n        -10.469609260559082\n      ],\n      [\n        \"▁Wednesday\",\n        -10.47089958190918\n      ],\n      [\n        \"▁bill\",\n        -10.471086502075195\n      ],\n      [\n        \"▁cheap\",\n        -10.471318244934082\n      ],\n      [\n        \"lui\",\n        -10.471719741821289\n      ],\n      [\n        \"▁awesome\",\n        -10.471731185913086\n      ],\n      [\n        \"tig\",\n        -10.472554206848145\n      ],\n      [\n        \"▁expensive\",\n        -10.472636222839355\n      ],\n      [\n        \"ceea\",\n        -10.472834587097168\n      ],\n      [\n        \"▁exact\",\n        -10.472907066345215\n      ],\n      [\n        \"22\",\n        -10.473462104797363\n      ],\n      [\n        \"▁avant\",\n        -10.47352123260498\n      ],\n      [\n        \"▁fat\",\n        -10.47353744506836\n      ],\n      [\n        \"▁spending\",\n        -10.474353790283203\n      ],\n      [\n        \"▁designs\",\n        -10.47608470916748\n      ],\n      [\n        \"▁damit\",\n        -10.4761323928833\n      ],\n      [\n        \"▁comp\",\n        -10.47619342803955\n      ],\n      [\n        \"▁whatever\",\n        -10.476434707641602\n      ],\n      [\n        \"▁Light\",\n        -10.476442337036133\n      ],\n      [\n        \"▁quarter\",\n        -10.47680377960205\n      ],\n      [\n        \"hand\",\n        -10.477301597595215\n      ],\n      [\n        \"▁connected\",\n        -10.477584838867188\n      ],\n      [\n        \"▁technologies\",\n        -10.47772216796875\n      ],\n      [\n        \"ges\",\n        -10.477808952331543\n      ],\n      [\n        \"▁shower\",\n        -10.478998184204102\n      ],\n      [\n        \"▁500\",\n        -10.47923469543457\n      ],\n      [\n        \"▁Time\",\n        -10.479436874389648\n      ],\n      [\n        \"▁zone\",\n        -10.480525970458984\n      ],\n      [\n        \"▁vote\",\n        -10.480624198913574\n      ],\n      [\n        \"▁andere\",\n        -10.480871200561523\n      ],\n      [\n        \"▁otherwise\",\n        -10.480988502502441\n      ],\n      [\n        \"tur\",\n        -10.481294631958008\n      ],\n      [\n        \"▁happens\",\n        -10.481504440307617\n      ],\n      [\n        \"hin\",\n        -10.481597900390625\n      ],\n      [\n        \"▁volume\",\n        -10.482161521911621\n      ],\n      [\n        \"▁thousands\",\n        -10.482391357421875\n      ],\n      [\n        \"war\",\n        -10.482551574707031\n      ],\n      [\n        \"▁Play\",\n        -10.482900619506836\n      ],\n      [\n        \"▁temperature\",\n        -10.48371410369873\n      ],\n      [\n        \"▁industrial\",\n        -10.483830451965332\n      ],\n      [\n        \"▁fuel\",\n        -10.483915328979492\n      ],\n      [\n        \"100\",\n        -10.48409366607666\n      ],\n      [\n        \"top\",\n        -10.484210014343262\n      ],\n      [\n        \"kin\",\n        -10.484312057495117\n      ],\n      [\n        \"▁efficient\",\n        -10.484414100646973\n      ],\n      [\n        \"teil\",\n        -10.484525680541992\n      ],\n      [\n        \"alt\",\n        -10.484578132629395\n      ],\n      [\n        \"▁monde\",\n        -10.48483657836914\n      ],\n      [\n        \"▁Ra\",\n        -10.484899520874023\n      ],\n      [\n        \"▁bedroom\",\n        -10.485103607177734\n      ],\n      [\n        \"▁showing\",\n        -10.485316276550293\n      ],\n      [\n        \"▁continued\",\n        -10.485490798950195\n      ],\n      [\n        \"▁Plan\",\n        -10.48552131652832\n      ],\n      [\n        \"▁assistance\",\n        -10.486014366149902\n      ],\n      [\n        \"▁discover\",\n        -10.48622989654541\n      ],\n      [\n        \"▁Year\",\n        -10.486238479614258\n      ],\n      [\n        \"▁applied\",\n        -10.486433029174805\n      ],\n      [\n        \"▁audio\",\n        -10.48755931854248\n      ],\n      [\n        \"▁thus\",\n        -10.487645149230957\n      ],\n      [\n        \"▁permet\",\n        -10.48806095123291\n      ],\n      [\n        \"▁fashion\",\n        -10.488532066345215\n      ],\n      [\n        \"cra\",\n        -10.488645553588867\n      ],\n      [\n        \"ious\",\n        -10.488700866699219\n      ],\n      [\n        \"▁focused\",\n        -10.489258766174316\n      ],\n      [\n        \"16\",\n        -10.48930549621582\n      ],\n      [\n        \"▁arm\",\n        -10.489364624023438\n      ],\n      [\n        \"▁Their\",\n        -10.489789962768555\n      ],\n      [\n        \"▁Foundation\",\n        -10.49022388458252\n      ],\n      [\n        \"▁majority\",\n        -10.49022388458252\n      ],\n      [\n        \"▁wind\",\n        -10.490785598754883\n      ],\n      [\n        \"▁bought\",\n        -10.491056442260742\n      ],\n      [\n        \"▁factor\",\n        -10.491918563842773\n      ],\n      [\n        \"▁opened\",\n        -10.49213695526123\n      ],\n      [\n        \"tern\",\n        -10.492374420166016\n      ],\n      [\n        \"▁cars\",\n        -10.492597579956055\n      ],\n      [\n        \"▁exciting\",\n        -10.492691040039062\n      ],\n      [\n        \"▁affordable\",\n        -10.493510246276855\n      ],\n      [\n        \"ches\",\n        -10.493563652038574\n      ],\n      [\n        \"▁panel\",\n        -10.493720054626465\n      ],\n      [\n        \"▁caused\",\n        -10.493793487548828\n      ],\n      [\n        \"▁travail\",\n        -10.493998527526855\n      ],\n      [\n        \"▁roof\",\n        -10.494073867797852\n      ],\n      [\n        \"▁enable\",\n        -10.494202613830566\n      ],\n      [\n        \"▁toward\",\n        -10.494491577148438\n      ],\n      [\n        \"▁Development\",\n        -10.494688987731934\n      ],\n      [\n        \"▁foreign\",\n        -10.495308876037598\n      ],\n      [\n        \"avi\",\n        -10.495320320129395\n      ],\n      [\n        \"long\",\n        -10.495328903198242\n      ],\n      [\n        \"De\",\n        -10.49578857421875\n      ],\n      [\n        \"▁Mon\",\n        -10.49588394165039\n      ],\n      [\n        \"▁Va\",\n        -10.495942115783691\n      ],\n      [\n        \"AP\",\n        -10.496097564697266\n      ],\n      [\n        \"▁asta\",\n        -10.49720573425293\n      ],\n      [\n        \"▁prepare\",\n        -10.497220993041992\n      ],\n      [\n        \"▁German\",\n        -10.497261047363281\n      ],\n      [\n        \"▁Centre\",\n        -10.497325897216797\n      ],\n      [\n        \"ère\",\n        -10.497367858886719\n      ],\n      [\n        \"▁fear\",\n        -10.497537612915039\n      ],\n      [\n        \"▁Este\",\n        -10.497878074645996\n      ],\n      [\n        \"▁Des\",\n        -10.49793529510498\n      ],\n      [\n        \"▁Kon\",\n        -10.499308586120605\n      ],\n      [\n        \"á\",\n        -10.499866485595703\n      ],\n      [\n        \"stand\",\n        -10.500805854797363\n      ],\n      [\n        \"▁Real\",\n        -10.500842094421387\n      ],\n      [\n        \"lichen\",\n        -10.50098705291748\n      ],\n      [\n        \"▁Beach\",\n        -10.501455307006836\n      ],\n      [\n        \"▁expertise\",\n        -10.50185775756836\n      ],\n      [\n        \"▁route\",\n        -10.502445220947266\n      ],\n      [\n        \"▁nation\",\n        -10.502551078796387\n      ],\n      [\n        \"▁snow\",\n        -10.503022193908691\n      ],\n      [\n        \"▁articles\",\n        -10.503127098083496\n      ],\n      [\n        \"▁Wood\",\n        -10.504426956176758\n      ],\n      [\n        \"▁operation\",\n        -10.50494384765625\n      ],\n      [\n        \"▁passion\",\n        -10.505215644836426\n      ],\n      [\n        \"▁cand\",\n        -10.505690574645996\n      ],\n      [\n        \"haus\",\n        -10.505701065063477\n      ],\n      [\n        \"OR\",\n        -10.505711555480957\n      ],\n      [\n        \"▁senior\",\n        -10.506511688232422\n      ],\n      [\n        \"▁becomes\",\n        -10.506546020507812\n      ],\n      [\n        \"▁sounds\",\n        -10.506878852844238\n      ],\n      [\n        \"▁enjoyed\",\n        -10.50704574584961\n      ],\n      [\n        \"▁gegen\",\n        -10.507533073425293\n      ],\n      [\n        \"▁courses\",\n        -10.507919311523438\n      ],\n      [\n        \"▁absolutely\",\n        -10.508257865905762\n      ],\n      [\n        \"tim\",\n        -10.508264541625977\n      ],\n      [\n        \"uff\",\n        -10.508516311645508\n      ],\n      [\n        \"▁moins\",\n        -10.50860595703125\n      ],\n      [\n        \"▁TO\",\n        -10.509060859680176\n      ],\n      [\n        \"▁fabric\",\n        -10.509267807006836\n      ],\n      [\n        \"poli\",\n        -10.509326934814453\n      ],\n      [\n        \"▁Bre\",\n        -10.509761810302734\n      ],\n      [\n        \"▁bo\",\n        -10.509916305541992\n      ],\n      [\n        \"▁Elle\",\n        -10.510469436645508\n      ],\n      [\n        \"bu\",\n        -10.512336730957031\n      ],\n      [\n        \"▁participants\",\n        -10.512401580810547\n      ],\n      [\n        \"stone\",\n        -10.512794494628906\n      ],\n      [\n        \"ties\",\n        -10.51366138458252\n      ],\n      [\n        \"▁listen\",\n        -10.513700485229492\n      ],\n      [\n        \"▁Spiel\",\n        -10.513752937316895\n      ],\n      [\n        \"pot\",\n        -10.513872146606445\n      ],\n      [\n        \"▁selling\",\n        -10.514358520507812\n      ],\n      [\n        \"▁geht\",\n        -10.514680862426758\n      ],\n      [\n        \"▁mini\",\n        -10.515146255493164\n      ],\n      [\n        \"▁trans\",\n        -10.515408515930176\n      ],\n      [\n        \"▁ingredients\",\n        -10.515642166137695\n      ],\n      [\n        \"auf\",\n        -10.515671730041504\n      ],\n      [\n        \"▁orice\",\n        -10.51595401763916\n      ],\n      [\n        \"▁Next\",\n        -10.516300201416016\n      ],\n      [\n        \"▁cream\",\n        -10.516756057739258\n      ],\n      [\n        \"▁edge\",\n        -10.516973495483398\n      ],\n      [\n        \"▁recommended\",\n        -10.517022132873535\n      ],\n      [\n        \"▁Form\",\n        -10.517277717590332\n      ],\n      [\n        \"▁processing\",\n        -10.51746940612793\n      ],\n      [\n        \"vert\",\n        -10.517709732055664\n      ],\n      [\n        \"▁described\",\n        -10.518362998962402\n      ],\n      [\n        \"▁installed\",\n        -10.51884937286377\n      ],\n      [\n        \"▁managed\",\n        -10.518952369689941\n      ],\n      [\n        \"▁electronic\",\n        -10.518966674804688\n      ],\n      [\n        \"▁performed\",\n        -10.519064903259277\n      ],\n      [\n        \"▁raise\",\n        -10.519098281860352\n      ],\n      [\n        \"▁imagine\",\n        -10.519281387329102\n      ],\n      [\n        \"down\",\n        -10.51952838897705\n      ],\n      [\n        \"▁fond\",\n        -10.519978523254395\n      ],\n      [\n        \"▁Inter\",\n        -10.520434379577637\n      ],\n      [\n        \"▁Mc\",\n        -10.520550727844238\n      ],\n      [\n        \"▁Dans\",\n        -10.520679473876953\n      ],\n      [\n        \"istic\",\n        -10.520966529846191\n      ],\n      [\n        \"▁miss\",\n        -10.521052360534668\n      ],\n      [\n        \"sur\",\n        -10.521062850952148\n      ],\n      [\n        \"▁Col\",\n        -10.521879196166992\n      ],\n      [\n        \"cut\",\n        -10.522021293640137\n      ],\n      [\n        \"▁dupa\",\n        -10.522160530090332\n      ],\n      [\n        \"▁Twitter\",\n        -10.522604942321777\n      ],\n      [\n        \"▁bowl\",\n        -10.523721694946289\n      ],\n      [\n        \"▁remains\",\n        -10.5237455368042\n      ],\n      [\n        \"▁Jan\",\n        -10.524046897888184\n      ],\n      [\n        \"▁smooth\",\n        -10.524162292480469\n      ],\n      [\n        \"▁fees\",\n        -10.524415969848633\n      ],\n      [\n        \"▁aid\",\n        -10.524494171142578\n      ],\n      [\n        \"▁presence\",\n        -10.524827003479004\n      ],\n      [\n        \"▁Android\",\n        -10.52499771118164\n      ],\n      [\n        \"▁decisions\",\n        -10.52539348602295\n      ],\n      [\n        \"▁names\",\n        -10.5254487991333\n      ],\n      [\n        \"▁Music\",\n        -10.525546073913574\n      ],\n      [\n        \"▁innovative\",\n        -10.525578498840332\n      ],\n      [\n        \"▁Tom\",\n        -10.525997161865234\n      ],\n      [\n        \"▁spread\",\n        -10.526165962219238\n      ],\n      [\n        \"▁lovely\",\n        -10.526222229003906\n      ],\n      [\n        \"▁daughter\",\n        -10.526397705078125\n      ],\n      [\n        \"US\",\n        -10.527050971984863\n      ],\n      [\n        \"▁facility\",\n        -10.52710247039795\n      ],\n      [\n        \"▁peace\",\n        -10.527105331420898\n      ],\n      [\n        \"▁department\",\n        -10.527277946472168\n      ],\n      [\n        \"▁weiter\",\n        -10.527591705322266\n      ],\n      [\n        \"▁Sun\",\n        -10.527756690979004\n      ],\n      [\n        \"▁fund\",\n        -10.527772903442383\n      ],\n      [\n        \"▁2018.\",\n        -10.52792739868164\n      ],\n      [\n        \"▁discussion\",\n        -10.528186798095703\n      ],\n      [\n        \"75\",\n        -10.528799057006836\n      ],\n      [\n        \"EC\",\n        -10.529126167297363\n      ],\n      [\n        \"▁lunch\",\n        -10.529144287109375\n      ],\n      [\n        \"▁videos\",\n        -10.52927017211914\n      ],\n      [\n        \"05\",\n        -10.531253814697266\n      ],\n      [\n        \"ige\",\n        -10.531266212463379\n      ],\n      [\n        \"▁parking\",\n        -10.531564712524414\n      ],\n      [\n        \"▁relationships\",\n        -10.531732559204102\n      ],\n      [\n        \"▁George\",\n        -10.532986640930176\n      ],\n      [\n        \"▁teachers\",\n        -10.53299617767334\n      ],\n      [\n        \"room\",\n        -10.533458709716797\n      ],\n      [\n        \"▁Tra\",\n        -10.533605575561523\n      ],\n      [\n        \"▁Sam\",\n        -10.533651351928711\n      ],\n      [\n        \"▁properly\",\n        -10.535590171813965\n      ],\n      [\n        \"▁Book\",\n        -10.535629272460938\n      ],\n      [\n        \"▁CA\",\n        -10.536957740783691\n      ],\n      [\n        \"▁calls\",\n        -10.53756046295166\n      ],\n      [\n        \"▁stat\",\n        -10.538175582885742\n      ],\n      [\n        \"ux\",\n        -10.538220405578613\n      ],\n      [\n        \"▁soit\",\n        -10.538439750671387\n      ],\n      [\n        \"▁Community\",\n        -10.538684844970703\n      ],\n      [\n        \"▁Jahren\",\n        -10.538714408874512\n      ],\n      [\n        \"▁increasing\",\n        -10.539575576782227\n      ],\n      [\n        \"▁civil\",\n        -10.540184020996094\n      ],\n      [\n        \"app\",\n        -10.540573120117188\n      ],\n      [\n        \"▁35\",\n        -10.540589332580566\n      ],\n      [\n        \"▁rise\",\n        -10.540600776672363\n      ],\n      [\n        \"▁dabei\",\n        -10.540989875793457\n      ],\n      [\n        \"▁studio\",\n        -10.541803359985352\n      ],\n      [\n        \"▁policies\",\n        -10.542054176330566\n      ],\n      [\n        \"▁agent\",\n        -10.542055130004883\n      ],\n      [\n        \"▁Before\",\n        -10.542601585388184\n      ],\n      [\n        \"▁Cal\",\n        -10.543017387390137\n      ],\n      [\n        \"▁2005\",\n        -10.543404579162598\n      ],\n      [\n        \"▁sample\",\n        -10.543777465820312\n      ],\n      [\n        \"▁manner\",\n        -10.545186996459961\n      ],\n      [\n        \"wing\",\n        -10.54521369934082\n      ],\n      [\n        \"stra\",\n        -10.545552253723145\n      ],\n      [\n        \"▁fel\",\n        -10.545793533325195\n      ],\n      [\n        \"▁Show\",\n        -10.545952796936035\n      ],\n      [\n        \"▁scene\",\n        -10.54656982421875\n      ],\n      [\n        \"mic\",\n        -10.546764373779297\n      ],\n      [\n        \"nom\",\n        -10.546995162963867\n      ],\n      [\n        \"▁typically\",\n        -10.547088623046875\n      ],\n      [\n        \"▁pair\",\n        -10.547104835510254\n      ],\n      [\n        \"▁detailed\",\n        -10.547394752502441\n      ],\n      [\n        \"▁Work\",\n        -10.547422409057617\n      ],\n      [\n        \"▁cities\",\n        -10.547451972961426\n      ],\n      [\n        \"▁Rock\",\n        -10.54749584197998\n      ],\n      [\n        \"▁Gar\",\n        -10.547906875610352\n      ],\n      [\n        \"▁serving\",\n        -10.548352241516113\n      ],\n      [\n        \"▁machen\",\n        -10.548521995544434\n      ],\n      [\n        \"▁trees\",\n        -10.54888916015625\n      ],\n      [\n        \"▁accident\",\n        -10.549199104309082\n      ],\n      [\n        \"▁cloud\",\n        -10.54920482635498\n      ],\n      [\n        \"▁animals\",\n        -10.549297332763672\n      ],\n      [\n        \"▁Den\",\n        -10.549897193908691\n      ],\n      [\n        \"▁Wa\",\n        -10.54990291595459\n      ],\n      [\n        \"▁suggest\",\n        -10.550220489501953\n      ],\n      [\n        \"putting\",\n        -10.550407409667969\n      ],\n      [\n        \"▁suite\",\n        -10.550434112548828\n      ],\n      [\n        \"▁clearly\",\n        -10.550849914550781\n      ],\n      [\n        \"▁net\",\n        -10.551287651062012\n      ],\n      [\n        \"▁funding\",\n        -10.551506996154785\n      ],\n      [\n        \"▁salt\",\n        -10.551935195922852\n      ],\n      [\n        \"▁Men\",\n        -10.552119255065918\n      ],\n      [\n        \"ped\",\n        -10.552419662475586\n      ],\n      [\n        \"▁Food\",\n        -10.553142547607422\n      ],\n      [\n        \"▁leaving\",\n        -10.553544998168945\n      ],\n      [\n        \"▁Government\",\n        -10.554243087768555\n      ],\n      [\n        \"ick\",\n        -10.554381370544434\n      ],\n      [\n        \"▁seat\",\n        -10.555121421813965\n      ],\n      [\n        \"▁Los\",\n        -10.555183410644531\n      ],\n      [\n        \"▁teacher\",\n        -10.555587768554688\n      ],\n      [\n        \"▁iPhone\",\n        -10.555693626403809\n      ],\n      [\n        \"▁300\",\n        -10.556120872497559\n      ],\n      [\n        \"▁commitment\",\n        -10.556180000305176\n      ],\n      [\n        \"▁aspects\",\n        -10.556498527526855\n      ],\n      [\n        \"▁previously\",\n        -10.55711555480957\n      ],\n      [\n        \"▁cent\",\n        -10.5572509765625\n      ],\n      [\n        \"▁Vo\",\n        -10.557341575622559\n      ],\n      [\n        \"▁artists\",\n        -10.557963371276855\n      ],\n      [\n        \"▁runs\",\n        -10.558130264282227\n      ],\n      [\n        \">\",\n        -10.558155059814453\n      ],\n      [\n        \"▁Gi\",\n        -10.558273315429688\n      ],\n      [\n        \"▁mar\",\n        -10.5585355758667\n      ],\n      [\n        \"!!!\",\n        -10.558544158935547\n      ],\n      [\n        \"▁Media\",\n        -10.558943748474121\n      ],\n      [\n        \"▁feedback\",\n        -10.559109687805176\n      ],\n      [\n        \"▁resolution\",\n        -10.559117317199707\n      ],\n      [\n        \"IN\",\n        -10.55915641784668\n      ],\n      [\n        \"▁wurden\",\n        -10.55952262878418\n      ],\n      [\n        \"▁busy\",\n        -10.559832572937012\n      ],\n      [\n        \"▁adult\",\n        -10.5600004196167\n      ],\n      [\n        \"29\",\n        -10.560487747192383\n      ],\n      [\n        \"elles\",\n        -10.561375617980957\n      ],\n      [\n        \"▁closed\",\n        -10.561762809753418\n      ],\n      [\n        \"▁trouble\",\n        -10.561767578125\n      ],\n      [\n        \"▁rent\",\n        -10.561984062194824\n      ],\n      [\n        \"lot\",\n        -10.56224536895752\n      ],\n      [\n        \"▁importance\",\n        -10.562314987182617\n      ],\n      [\n        \"▁units\",\n        -10.56257438659668\n      ],\n      [\n        \"Pro\",\n        -10.562713623046875\n      ],\n      [\n        \"▁provider\",\n        -10.563005447387695\n      ],\n      [\n        \"▁visual\",\n        -10.563288688659668\n      ],\n      [\n        \"IT\",\n        -10.563385009765625\n      ],\n      [\n        \"▁diet\",\n        -10.563733100891113\n      ],\n      [\n        \"▁appearance\",\n        -10.563932418823242\n      ],\n      [\n        \"pin\",\n        -10.564576148986816\n      ],\n      [\n        \"▁Din\",\n        -10.564760208129883\n      ],\n      [\n        \"▁eating\",\n        -10.565516471862793\n      ],\n      [\n        \"Fi\",\n        -10.565762519836426\n      ],\n      [\n        \"ball\",\n        -10.565765380859375\n      ],\n      [\n        \"är\",\n        -10.565861701965332\n      ],\n      [\n        \"ney\",\n        -10.565878868103027\n      ],\n      [\n        \"▁records\",\n        -10.566070556640625\n      ],\n      [\n        \"▁Fi\",\n        -10.566180229187012\n      ],\n      [\n        \"▁faut\",\n        -10.566329002380371\n      ],\n      [\n        \"▁CD\",\n        -10.566803932189941\n      ],\n      [\n        \"ign\",\n        -10.566930770874023\n      ],\n      [\n        \"▁vă\",\n        -10.566996574401855\n      ],\n      [\n        \"▁agency\",\n        -10.567153930664062\n      ],\n      [\n        \"ierung\",\n        -10.567323684692383\n      ],\n      [\n        \"▁Back\",\n        -10.567361831665039\n      ],\n      [\n        \"▁windows\",\n        -10.567545890808105\n      ],\n      [\n        \"▁pull\",\n        -10.567888259887695\n      ],\n      [\n        \"ash\",\n        -10.567959785461426\n      ],\n      [\n        \"▁profit\",\n        -10.568593978881836\n      ],\n      [\n        \"▁brings\",\n        -10.568605422973633\n      ],\n      [\n        \"▁Committee\",\n        -10.569122314453125\n      ],\n      [\n        \"▁girl\",\n        -10.569174766540527\n      ],\n      [\n        \"▁vehicles\",\n        -10.569372177124023\n      ],\n      [\n        \"▁Hier\",\n        -10.569567680358887\n      ],\n      [\n        \"ES\",\n        -10.569639205932617\n      ],\n      [\n        \"până\",\n        -10.569880485534668\n      ],\n      [\n        \"▁Kunden\",\n        -10.570380210876465\n      ],\n      [\n        \"pen\",\n        -10.570462226867676\n      ],\n      [\n        \"▁explain\",\n        -10.570505142211914\n      ],\n      [\n        \"▁cadru\",\n        -10.570760726928711\n      ],\n      [\n        \"▁attack\",\n        -10.571100234985352\n      ],\n      [\n        \"▁markets\",\n        -10.571115493774414\n      ],\n      [\n        \"▁claims\",\n        -10.571340560913086\n      ],\n      [\n        \"▁walking\",\n        -10.571385383605957\n      ],\n      [\n        \"▁pouv\",\n        -10.571528434753418\n      ],\n      [\n        \"low\",\n        -10.571642875671387\n      ],\n      [\n        \"▁showed\",\n        -10.572114944458008\n      ],\n      [\n        \"▁principal\",\n        -10.57211971282959\n      ],\n      [\n        \"▁lucru\",\n        -10.572144508361816\n      ],\n      [\n        \"▁precum\",\n        -10.572712898254395\n      ],\n      [\n        \"TA\",\n        -10.573094367980957\n      ],\n      [\n        \"▁partners\",\n        -10.573104858398438\n      ],\n      [\n        \"▁exist\",\n        -10.573136329650879\n      ],\n      [\n        \"▁internal\",\n        -10.57334041595459\n      ],\n      [\n        \"hen\",\n        -10.573945045471191\n      ],\n      [\n        \"▁Master\",\n        -10.573966979980469\n      ],\n      [\n        \"unless\",\n        -10.574013710021973\n      ],\n      [\n        \"▁doubt\",\n        -10.574721336364746\n      ],\n      [\n        \"$\",\n        -10.574785232543945\n      ],\n      [\n        \"▁Long\",\n        -10.574888229370117\n      ],\n      [\n        \"▁leaves\",\n        -10.574907302856445\n      ],\n      [\n        \"allowing\",\n        -10.575063705444336\n      ],\n      [\n        \"pol\",\n        -10.575272560119629\n      ],\n      [\n        \"▁Up\",\n        -10.575491905212402\n      ],\n      [\n        \"▁Contact\",\n        -10.576093673706055\n      ],\n      [\n        \"▁practical\",\n        -10.57708740234375\n      ],\n      [\n        \"▁suit\",\n        -10.57758903503418\n      ],\n      [\n        \"▁Site\",\n        -10.577656745910645\n      ],\n      [\n        \"▁formation\",\n        -10.57768726348877\n      ],\n      [\n        \"▁signal\",\n        -10.578215599060059\n      ],\n      [\n        \"▁approximately\",\n        -10.578414916992188\n      ],\n      [\n        \"▁ourselves\",\n        -10.578497886657715\n      ],\n      [\n        \"▁colour\",\n        -10.578519821166992\n      ],\n      [\n        \"▁species\",\n        -10.578530311584473\n      ],\n      [\n        \"▁advance\",\n        -10.578753471374512\n      ],\n      [\n        \"▁PM\",\n        -10.57891845703125\n      ],\n      [\n        \"ans\",\n        -10.579121589660645\n      ],\n      [\n        \"▁locations\",\n        -10.579397201538086\n      ],\n      [\n        \"vous\",\n        -10.579601287841797\n      ],\n      [\n        \"▁updated\",\n        -10.579636573791504\n      ],\n      [\n        \"▁faith\",\n        -10.579673767089844\n      ],\n      [\n        \"mus\",\n        -10.579740524291992\n      ],\n      [\n        \"▁stores\",\n        -10.579863548278809\n      ],\n      [\n        \"heim\",\n        -10.580127716064453\n      ],\n      [\n        \"▁suitable\",\n        -10.580558776855469\n      ],\n      [\n        \"▁continues\",\n        -10.580703735351562\n      ],\n      [\n        \"▁fac\",\n        -10.581133842468262\n      ],\n      [\n        \"ever\",\n        -10.581156730651855\n      ],\n      [\n        \"▁Bill\",\n        -10.581195831298828\n      ],\n      [\n        \"▁chose\",\n        -10.58121109008789\n      ],\n      [\n        \"▁inform\",\n        -10.581228256225586\n      ],\n      [\n        \"▁environmental\",\n        -10.581427574157715\n      ],\n      [\n        \"▁responsibility\",\n        -10.58188533782959\n      ],\n      [\n        \"99\",\n        -10.582542419433594\n      ],\n      [\n        \"▁competitive\",\n        -10.583723068237305\n      ],\n      [\n        \"▁strategies\",\n        -10.583903312683105\n      ],\n      [\n        \"▁toujours\",\n        -10.584270477294922\n      ],\n      [\n        \"tive\",\n        -10.58430290222168\n      ],\n      [\n        \"▁automatically\",\n        -10.585600852966309\n      ],\n      [\n        \"▁dress\",\n        -10.585609436035156\n      ],\n      [\n        \"▁Minister\",\n        -10.585624694824219\n      ],\n      [\n        \"har\",\n        -10.586076736450195\n      ],\n      [\n        \"▁Start\",\n        -10.586249351501465\n      ],\n      [\n        \"▁=\",\n        -10.586563110351562\n      ],\n      [\n        \"▁pattern\",\n        -10.58659553527832\n      ],\n      [\n        \"tier\",\n        -10.58676528930664\n      ],\n      [\n        \"▁pays\",\n        -10.587034225463867\n      ],\n      [\n        \"▁profile\",\n        -10.58725357055664\n      ],\n      [\n        \"▁raised\",\n        -10.587263107299805\n      ],\n      [\n        \"ange\",\n        -10.587288856506348\n      ],\n      [\n        \"▁drink\",\n        -10.587762832641602\n      ],\n      [\n        \"▁element\",\n        -10.588042259216309\n      ],\n      [\n        \"▁landscape\",\n        -10.58875560760498\n      ],\n      [\n        \"▁Tag\",\n        -10.589073181152344\n      ],\n      [\n        \"▁cheese\",\n        -10.589590072631836\n      ],\n      [\n        \"ific\",\n        -10.590009689331055\n      ],\n      [\n        \"▁Stadt\",\n        -10.590181350708008\n      ],\n      [\n        \"39\",\n        -10.591398239135742\n      ],\n      [\n        \"▁launch\",\n        -10.592113494873047\n      ],\n      [\n        \"▁wouldn\",\n        -10.592150688171387\n      ],\n      [\n        \"AS\",\n        -10.592202186584473\n      ],\n      [\n        \"▁push\",\n        -10.593059539794922\n      ],\n      [\n        \"▁mill\",\n        -10.593452453613281\n      ],\n      [\n        \"▁mass\",\n        -10.593647003173828\n      ],\n      [\n        \"▁category\",\n        -10.593790054321289\n      ],\n      [\n        \"sondern\",\n        -10.594050407409668\n      ],\n      [\n        \"col\",\n        -10.594111442565918\n      ],\n      [\n        \"▁climate\",\n        -10.594313621520996\n      ],\n      [\n        \"lier\",\n        -10.594437599182129\n      ],\n      [\n        \"▁slightly\",\n        -10.595514297485352\n      ],\n      [\n        \"95\",\n        -10.596519470214844\n      ],\n      [\n        \"ace\",\n        -10.596612930297852\n      ],\n      [\n        \"▁domain\",\n        -10.597633361816406\n      ],\n      [\n        \"kan\",\n        -10.598306655883789\n      ],\n      [\n        \"▁feed\",\n        -10.598485946655273\n      ],\n      [\n        \"▁Live\",\n        -10.598837852478027\n      ],\n      [\n        \"▁Mais\",\n        -10.599113464355469\n      ],\n      [\n        \"▁après\",\n        -10.599365234375\n      ],\n      [\n        \"▁village\",\n        -10.59941577911377\n      ],\n      [\n        \"▁hatte\",\n        -10.59968090057373\n      ],\n      [\n        \"▁joined\",\n        -10.599881172180176\n      ],\n      [\n        \"▁Museum\",\n        -10.600311279296875\n      ],\n      [\n        \"head\",\n        -10.600855827331543\n      ],\n      [\n        \"▁draw\",\n        -10.6009521484375\n      ],\n      [\n        \"▁concerns\",\n        -10.600966453552246\n      ],\n      [\n        \"ER\",\n        -10.601505279541016\n      ],\n      [\n        \"▁technique\",\n        -10.601648330688477\n      ],\n      [\n        \"▁Bio\",\n        -10.601861000061035\n      ],\n      [\n        \"▁Sea\",\n        -10.601881980895996\n      ],\n      [\n        \"▁@\",\n        -10.601927757263184\n      ],\n      [\n        \"wer\",\n        -10.6021146774292\n      ],\n      [\n        \"▁battery\",\n        -10.602462768554688\n      ],\n      [\n        \"▁mostly\",\n        -10.60267448425293\n      ],\n      [\n        \"▁familiar\",\n        -10.602680206298828\n      ],\n      [\n        \"▁Sub\",\n        -10.602689743041992\n      ],\n      [\n        \"▁delicious\",\n        -10.603222846984863\n      ],\n      [\n        \"doch\",\n        -10.60326099395752\n      ],\n      [\n        \"60\",\n        -10.603395462036133\n      ],\n      [\n        \"▁carte\",\n        -10.603611946105957\n      ],\n      [\n        \"▁avut\",\n        -10.604146957397461\n      ],\n      [\n        \"▁premium\",\n        -10.60460376739502\n      ],\n      [\n        \"▁attempt\",\n        -10.604704856872559\n      ],\n      [\n        \"▁Über\",\n        -10.60473346710205\n      ],\n      [\n        \"▁combined\",\n        -10.604935646057129\n      ],\n      [\n        \"lement\",\n        -10.604947090148926\n      ],\n      [\n        \"▁voi\",\n        -10.605031967163086\n      ],\n      [\n        \"▁wonder\",\n        -10.605376243591309\n      ],\n      [\n        \"▁failure\",\n        -10.606106758117676\n      ],\n      [\n        \"which\",\n        -10.606147766113281\n      ],\n      [\n        \"esti\",\n        -10.606316566467285\n      ],\n      [\n        \"31\",\n        -10.606547355651855\n      ],\n      [\n        \"▁sta\",\n        -10.606734275817871\n      ],\n      [\n        \"▁transform\",\n        -10.60673999786377\n      ],\n      [\n        \"▁license\",\n        -10.606743812561035\n      ],\n      [\n        \"▁depending\",\n        -10.606758117675781\n      ],\n      [\n        \"▁specifically\",\n        -10.606782913208008\n      ],\n      [\n        \"▁OF\",\n        -10.60693645477295\n      ],\n      [\n        \"band\",\n        -10.606959342956543\n      ],\n      [\n        \"▁Sport\",\n        -10.60731315612793\n      ],\n      [\n        \"list\",\n        -10.607434272766113\n      ],\n      [\n        \"▁Tour\",\n        -10.60753059387207\n      ],\n      [\n        \"▁Israel\",\n        -10.607564926147461\n      ],\n      [\n        \"▁filled\",\n        -10.607722282409668\n      ],\n      [\n        \"▁manual\",\n        -10.60776138305664\n      ],\n      [\n        \"▁watching\",\n        -10.608621597290039\n      ],\n      [\n        \"▁rule\",\n        -10.608877182006836\n      ],\n      [\n        \"mat\",\n        -10.60901927947998\n      ],\n      [\n        \"▁notes\",\n        -10.609585762023926\n      ],\n      [\n        \"▁Oh\",\n        -10.60960578918457\n      ],\n      [\n        \"▁bereits\",\n        -10.609634399414062\n      ],\n      [\n        \"▁foundation\",\n        -10.609916687011719\n      ],\n      [\n        \"▁vital\",\n        -10.610146522521973\n      ],\n      [\n        \"▁lassen\",\n        -10.610747337341309\n      ],\n      [\n        \"▁cât\",\n        -10.611162185668945\n      ],\n      [\n        \"▁shipping\",\n        -10.611433029174805\n      ],\n      [\n        \"▁registered\",\n        -10.611513137817383\n      ],\n      [\n        \"▁jour\",\n        -10.612669944763184\n      ],\n      [\n        \"▁island\",\n        -10.61276626586914\n      ],\n      [\n        \"▁sets\",\n        -10.613068580627441\n      ],\n      [\n        \"▁football\",\n        -10.613683700561523\n      ],\n      [\n        \"▁EU\",\n        -10.613860130310059\n      ],\n      [\n        \"▁stone\",\n        -10.614019393920898\n      ],\n      [\n        \"▁Press\",\n        -10.614699363708496\n      ],\n      [\n        \"▁adapt\",\n        -10.615066528320312\n      ],\n      [\n        \"ised\",\n        -10.615425109863281\n      ],\n      [\n        \"▁thoughts\",\n        -10.615434646606445\n      ],\n      [\n        \"▁doors\",\n        -10.615851402282715\n      ],\n      [\n        \"€\",\n        -10.615954399108887\n      ],\n      [\n        \"▁components\",\n        -10.616040229797363\n      ],\n      [\n        \"rig\",\n        -10.616332054138184\n      ],\n      [\n        \"▁generation\",\n        -10.616585731506348\n      ],\n      [\n        \"▁guess\",\n        -10.616700172424316\n      ],\n      [\n        \"cker\",\n        -10.61694049835205\n      ],\n      [\n        \"▁realize\",\n        -10.617207527160645\n      ],\n      [\n        \"▁Roman\",\n        -10.617310523986816\n      ],\n      [\n        \"▁contre\",\n        -10.617693901062012\n      ],\n      [\n        \"▁Out\",\n        -10.617938995361328\n      ],\n      [\n        \"▁IN\",\n        -10.619051933288574\n      ],\n      [\n        \"cip\",\n        -10.619085311889648\n      ],\n      [\n        \"59\",\n        -10.619330406188965\n      ],\n      [\n        \"▁enhance\",\n        -10.619768142700195\n      ],\n      [\n        \"▁battle\",\n        -10.61982250213623\n      ],\n      [\n        \"▁monitor\",\n        -10.619863510131836\n      ],\n      [\n        \"▁Martin\",\n        -10.62045955657959\n      ],\n      [\n        \"▁websites\",\n        -10.620461463928223\n      ],\n      [\n        \"▁DE\",\n        -10.620599746704102\n      ],\n      [\n        \"▁Festival\",\n        -10.620951652526855\n      ],\n      [\n        \"ân\",\n        -10.62131118774414\n      ],\n      [\n        \"▁Place\",\n        -10.621419906616211\n      ],\n      [\n        \"▁rare\",\n        -10.621554374694824\n      ],\n      [\n        \"această\",\n        -10.621726989746094\n      ],\n      [\n        \"▁sollte\",\n        -10.621731758117676\n      ],\n      [\n        \"▁Read\",\n        -10.621816635131836\n      ],\n      [\n        \"ware\",\n        -10.622169494628906\n      ],\n      [\n        \"Those\",\n        -10.622671127319336\n      ],\n      [\n        \"ende\",\n        -10.623543739318848\n      ],\n      [\n        \"▁prix\",\n        -10.623835563659668\n      ],\n      [\n        \"▁roman\",\n        -10.624101638793945\n      ],\n      [\n        \"▁creation\",\n        -10.624224662780762\n      ],\n      [\n        \"▁confidence\",\n        -10.624552726745605\n      ],\n      [\n        \"▁Japan\",\n        -10.624638557434082\n      ],\n      [\n        \"▁rain\",\n        -10.624942779541016\n      ],\n      [\n        \"▁guys\",\n        -10.62518310546875\n      ],\n      [\n        \"▁south\",\n        -10.625236511230469\n      ],\n      [\n        \"▁trading\",\n        -10.625646591186523\n      ],\n      [\n        \"▁€\",\n        -10.626100540161133\n      ],\n      [\n        \"▁Film\",\n        -10.626341819763184\n      ],\n      [\n        \"▁pana\",\n        -10.627065658569336\n      ],\n      [\n        \"▁asemenea\",\n        -10.627066612243652\n      ],\n      [\n        \"36\",\n        -10.627190589904785\n      ],\n      [\n        \"▁instance\",\n        -10.627884864807129\n      ],\n      [\n        \"cou\",\n        -10.629385948181152\n      ],\n      [\n        \"▁nun\",\n        -10.630074501037598\n      ],\n      [\n        \"▁Pass\",\n        -10.630390167236328\n      ],\n      [\n        \"Cette\",\n        -10.630579948425293\n      ],\n      [\n        \"▁Network\",\n        -10.630876541137695\n      ],\n      [\n        \"▁prime\",\n        -10.631010055541992\n      ],\n      [\n        \"▁spiritual\",\n        -10.632098197937012\n      ],\n      [\n        \"▁tough\",\n        -10.633030891418457\n      ],\n      [\n        \"▁AND\",\n        -10.633086204528809\n      ],\n      [\n        \"▁Cat\",\n        -10.633601188659668\n      ],\n      [\n        \"▁boat\",\n        -10.633611679077148\n      ],\n      [\n        \"▁leads\",\n        -10.634864807128906\n      ],\n      [\n        \"▁Germany\",\n        -10.63509750366211\n      ],\n      [\n        \"▁valuable\",\n        -10.635635375976562\n      ],\n      [\n        \"57\",\n        -10.635892868041992\n      ],\n      [\n        \"lect\",\n        -10.636148452758789\n      ],\n      [\n        \"▁distribution\",\n        -10.636445045471191\n      ],\n      [\n        \"dar\",\n        -10.636518478393555\n      ],\n      [\n        \"▁Manager\",\n        -10.637701988220215\n      ],\n      [\n        \"cha\",\n        -10.637725830078125\n      ],\n      [\n        \"▁obtain\",\n        -10.637741088867188\n      ],\n      [\n        \"GB\",\n        -10.637908935546875\n      ],\n      [\n        \"▁unor\",\n        -10.638079643249512\n      ],\n      [\n        \"schaft\",\n        -10.638603210449219\n      ],\n      [\n        \"▁zwischen\",\n        -10.638723373413086\n      ],\n      [\n        \"▁winning\",\n        -10.639172554016113\n      ],\n      [\n        \"▁suis\",\n        -10.639811515808105\n      ],\n      [\n        \"58\",\n        -10.640130996704102\n      ],\n      [\n        \"▁Party\",\n        -10.640372276306152\n      ],\n      [\n        \"▁ceva\",\n        -10.640416145324707\n      ],\n      [\n        \"▁comprehensive\",\n        -10.640684127807617\n      ],\n      [\n        \"▁aceste\",\n        -10.640726089477539\n      ],\n      [\n        \"▁committed\",\n        -10.640726089477539\n      ],\n      [\n        \"▁Hu\",\n        -10.641382217407227\n      ],\n      [\n        \"ţ\",\n        -10.64149284362793\n      ],\n      [\n        \"▁north\",\n        -10.642021179199219\n      ],\n      [\n        \"werk\",\n        -10.642542839050293\n      ],\n      [\n        \"▁interface\",\n        -10.642794609069824\n      ],\n      [\n        \"▁Valley\",\n        -10.64281177520752\n      ],\n      [\n        \"▁anywhere\",\n        -10.64281177520752\n      ],\n      [\n        \"▁Only\",\n        -10.642851829528809\n      ],\n      [\n        \"TE\",\n        -10.643295288085938\n      ],\n      [\n        \"hui\",\n        -10.6436767578125\n      ],\n      [\n        \"bus\",\n        -10.643951416015625\n      ],\n      [\n        \"vis\",\n        -10.6439790725708\n      ],\n      [\n        \"▁Society\",\n        -10.645116806030273\n      ],\n      [\n        \"▁reliable\",\n        -10.64556884765625\n      ],\n      [\n        \"▁quelques\",\n        -10.64563274383545\n      ],\n      [\n        \"tech\",\n        -10.646187782287598\n      ],\n      [\n        \"ual\",\n        -10.646377563476562\n      ],\n      [\n        \"▁educational\",\n        -10.646418571472168\n      ],\n      [\n        \"serv\",\n        -10.646490097045898\n      ],\n      [\n        \"▁opinion\",\n        -10.646628379821777\n      ],\n      [\n        \"▁appears\",\n        -10.646702766418457\n      ],\n      [\n        \"▁count\",\n        -10.646795272827148\n      ],\n      [\n        \"irea\",\n        -10.646981239318848\n      ],\n      [\n        \"ban\",\n        -10.647504806518555\n      ],\n      [\n        \"▁45\",\n        -10.647530555725098\n      ],\n      [\n        \"▁contain\",\n        -10.647661209106445\n      ],\n      [\n        \"ost\",\n        -10.647663116455078\n      ],\n      [\n        \"▁anul\",\n        -10.647706031799316\n      ],\n      [\n        \"rien\",\n        -10.648159980773926\n      ],\n      [\n        \"gra\",\n        -10.648360252380371\n      ],\n      [\n        \"▁counter\",\n        -10.648946762084961\n      ],\n      [\n        \"-3\",\n        -10.650411605834961\n      ],\n      [\n        \"▁resource\",\n        -10.650463104248047\n      ],\n      [\n        \"▁Wo\",\n        -10.6505126953125\n      ],\n      [\n        \"▁posts\",\n        -10.650618553161621\n      ],\n      [\n        \"▁employee\",\n        -10.651320457458496\n      ],\n      [\n        \"rol\",\n        -10.651863098144531\n      ],\n      [\n        \"▁ended\",\n        -10.651969909667969\n      ],\n      [\n        \"met\",\n        -10.653080940246582\n      ],\n      [\n        \"▁meine\",\n        -10.653165817260742\n      ],\n      [\n        \"▁reached\",\n        -10.653368949890137\n      ],\n      [\n        \"gri\",\n        -10.653716087341309\n      ],\n      [\n        \"▁Bra\",\n        -10.65374755859375\n      ],\n      [\n        \"▁conduct\",\n        -10.654294967651367\n      ],\n      [\n        \"▁housing\",\n        -10.654422760009766\n      ],\n      [\n        \"▁tickets\",\n        -10.654792785644531\n      ],\n      [\n        \"▁database\",\n        -10.655674934387207\n      ],\n      [\n        \"IL\",\n        -10.656150817871094\n      ],\n      [\n        \"▁perspective\",\n        -10.656359672546387\n      ],\n      [\n        \"▁Har\",\n        -10.656404495239258\n      ],\n      [\n        \"▁error\",\n        -10.656549453735352\n      ],\n      [\n        \"▁meal\",\n        -10.656569480895996\n      ],\n      [\n        \"▁hearing\",\n        -10.657238006591797\n      ],\n      [\n        \"▁transition\",\n        -10.657302856445312\n      ],\n      [\n        \"▁browser\",\n        -10.657609939575195\n      ],\n      [\n        \"▁supported\",\n        -10.657609939575195\n      ],\n      [\n        \"▁starts\",\n        -10.658814430236816\n      ],\n      [\n        \"țe\",\n        -10.658902168273926\n      ],\n      [\n        \"▁adults\",\n        -10.658905029296875\n      ],\n      [\n        \"▁România\",\n        -10.65917682647705\n      ],\n      [\n        \"dra\",\n        -10.659884452819824\n      ],\n      [\n        \"▁worry\",\n        -10.660222053527832\n      ],\n      [\n        \"▁avoir\",\n        -10.660497665405273\n      ],\n      [\n        \"▁regional\",\n        -10.660507202148438\n      ],\n      [\n        \"▁min\",\n        -10.660722732543945\n      ],\n      [\n        \"▁Does\",\n        -10.660806655883789\n      ],\n      [\n        \"▁Keep\",\n        -10.661200523376465\n      ],\n      [\n        \"rom\",\n        -10.661237716674805\n      ],\n      [\n        \"sco\",\n        -10.661320686340332\n      ],\n      [\n        \"tem\",\n        -10.661898612976074\n      ],\n      [\n        \"▁Old\",\n        -10.661954879760742\n      ],\n      [\n        \"▁Under\",\n        -10.662552833557129\n      ],\n      [\n        \"▁Commission\",\n        -10.662557601928711\n      ],\n      [\n        \"▁Bau\",\n        -10.6632661819458\n      ],\n      [\n        \"▁News\",\n        -10.663358688354492\n      ],\n      [\n        \"▁mois\",\n        -10.663444519042969\n      ],\n      [\n        \"▁respond\",\n        -10.66356372833252\n      ],\n      [\n        \"▁alles\",\n        -10.663878440856934\n      ],\n      [\n        \"▁chair\",\n        -10.664475440979004\n      ],\n      [\n        \"▁ho\",\n        -10.664854049682617\n      ],\n      [\n        \"right\",\n        -10.664908409118652\n      ],\n      [\n        \"▁totally\",\n        -10.665532112121582\n      ],\n      [\n        \"gle\",\n        -10.665534973144531\n      ],\n      [\n        \"▁32\",\n        -10.665604591369629\n      ],\n      [\n        \"66\",\n        -10.665664672851562\n      ],\n      [\n        \"town\",\n        -10.665902137756348\n      ],\n      [\n        \"Ch\",\n        -10.666261672973633\n      ],\n      [\n        \"▁gr\",\n        -10.66629695892334\n      ],\n      [\n        \"▁garage\",\n        -10.666328430175781\n      ],\n      [\n        \"ții\",\n        -10.666495323181152\n      ],\n      [\n        \"▁Union\",\n        -10.667136192321777\n      ],\n      [\n        \"ică\",\n        -10.667343139648438\n      ],\n      [\n        \"▁2,\",\n        -10.668437004089355\n      ],\n      [\n        \"▁reflect\",\n        -10.669163703918457\n      ],\n      [\n        \"▁retail\",\n        -10.669388771057129\n      ],\n      [\n        \"▁unde\",\n        -10.669605255126953\n      ],\n      [\n        \"▁accessible\",\n        -10.670262336730957\n      ],\n      [\n        \"water\",\n        -10.67059326171875\n      ],\n      [\n        \"▁regard\",\n        -10.670710563659668\n      ],\n      [\n        \"▁logo\",\n        -10.671489715576172\n      ],\n      [\n        \"▁inspired\",\n        -10.671518325805664\n      ],\n      [\n        \"▁Wall\",\n        -10.671859741210938\n      ],\n      [\n        \"▁Ste\",\n        -10.672093391418457\n      ],\n      [\n        \"▁asking\",\n        -10.672179222106934\n      ],\n      [\n        \"▁Journal\",\n        -10.673028945922852\n      ],\n      [\n        \"▁Teil\",\n        -10.674042701721191\n      ],\n      [\n        \"▁collaboration\",\n        -10.674185752868652\n      ],\n      [\n        \"▁acid\",\n        -10.674266815185547\n      ],\n      [\n        \"▁Fund\",\n        -10.674382209777832\n      ],\n      [\n        \"▁spirit\",\n        -10.6744384765625\n      ],\n      [\n        \"despite\",\n        -10.674457550048828\n      ],\n      [\n        \"▁delivered\",\n        -10.674821853637695\n      ],\n      [\n        \"▁girls\",\n        -10.675374984741211\n      ],\n      [\n        \"▁Look\",\n        -10.675896644592285\n      ],\n      [\n        \"rant\",\n        -10.675949096679688\n      ],\n      [\n        \"▁District\",\n        -10.676460266113281\n      ],\n      [\n        \"▁rental\",\n        -10.676709175109863\n      ],\n      [\n        \"▁spune\",\n        -10.676733016967773\n      ],\n      [\n        \"els\",\n        -10.677544593811035\n      ],\n      [\n        \"▁permanent\",\n        -10.677659034729004\n      ],\n      [\n        \"▁iron\",\n        -10.677709579467773\n      ],\n      [\n        \"▁Thomas\",\n        -10.677745819091797\n      ],\n      [\n        \"EL\",\n        -10.678071022033691\n      ],\n      [\n        \"▁except\",\n        -10.678074836730957\n      ],\n      [\n        \"▁catch\",\n        -10.678366661071777\n      ],\n      [\n        \"▁providers\",\n        -10.678375244140625\n      ],\n      [\n        \"▁2006\",\n        -10.678435325622559\n      ],\n      [\n        \"▁chat\",\n        -10.679931640625\n      ],\n      [\n        \"▁emergency\",\n        -10.680281639099121\n      ],\n      [\n        \"gre\",\n        -10.68030834197998\n      ],\n      [\n        \"site\",\n        -10.680888175964355\n      ],\n      [\n        \"▁missing\",\n        -10.68089485168457\n      ],\n      [\n        \"abil\",\n        -10.680914878845215\n      ],\n      [\n        \"▁Hill\",\n        -10.68099594116211\n      ],\n      [\n        \"urs\",\n        -10.681312561035156\n      ],\n      [\n        \"▁plusieurs\",\n        -10.681716918945312\n      ],\n      [\n        \"▁birthday\",\n        -10.681726455688477\n      ],\n      [\n        \"DS\",\n        -10.682019233703613\n      ],\n      [\n        \"ersten\",\n        -10.682381629943848\n      ],\n      [\n        \"▁5.\",\n        -10.68252944946289\n      ],\n      [\n        \"▁library\",\n        -10.68333911895752\n      ],\n      [\n        \"▁earth\",\n        -10.683515548706055\n      ],\n      [\n        \"CI\",\n        -10.683645248413086\n      ],\n      [\n        \"▁lighting\",\n        -10.684442520141602\n      ],\n      [\n        \"▁fixed\",\n        -10.684879302978516\n      ],\n      [\n        \"tori\",\n        -10.684891700744629\n      ],\n      [\n        \"▁replace\",\n        -10.684995651245117\n      ],\n      [\n        \"▁administration\",\n        -10.685074806213379\n      ],\n      [\n        \"leurs\",\n        -10.685229301452637\n      ],\n      [\n        \"▁meat\",\n        -10.686142921447754\n      ],\n      [\n        \"▁songs\",\n        -10.686662673950195\n      ],\n      [\n        \"▁confirm\",\n        -10.686866760253906\n      ],\n      [\n        \"▁rapid\",\n        -10.68698787689209\n      ],\n      [\n        \"▁Special\",\n        -10.686995506286621\n      ],\n      [\n        \"▁holding\",\n        -10.687115669250488\n      ],\n      [\n        \"▁honor\",\n        -10.687271118164062\n      ],\n      [\n        \"▁Market\",\n        -10.687409400939941\n      ],\n      [\n        \"La\",\n        -10.687535285949707\n      ],\n      [\n        \"▁measure\",\n        -10.687760353088379\n      ],\n      [\n        \"▁guarantee\",\n        -10.68785572052002\n      ],\n      [\n        \"▁switch\",\n        -10.68813419342041\n      ],\n      [\n        \"▁extensive\",\n        -10.688294410705566\n      ],\n      [\n        \"▁Neu\",\n        -10.688674926757812\n      ],\n      [\n        \"avez\",\n        -10.688901901245117\n      ],\n      [\n        \"▁protein\",\n        -10.688984870910645\n      ],\n      [\n        \"▁infrastructure\",\n        -10.689454078674316\n      ],\n      [\n        \"▁functions\",\n        -10.689494132995605\n      ],\n      [\n        \"▁cont\",\n        -10.689496040344238\n      ],\n      [\n        \"row\",\n        -10.689760208129883\n      ],\n      [\n        \"star\",\n        -10.689773559570312\n      ],\n      [\n        \"▁Port\",\n        -10.690192222595215\n      ],\n      [\n        \"Using\",\n        -10.690336227416992\n      ],\n      [\n        \"▁faster\",\n        -10.690557479858398\n      ],\n      [\n        \"44\",\n        -10.691168785095215\n      ],\n      [\n        \"▁measures\",\n        -10.691615104675293\n      ],\n      [\n        \"▁celor\",\n        -10.69186019897461\n      ],\n      [\n        \"▁exam\",\n        -10.69189739227295\n      ],\n      [\n        \"200\",\n        -10.69202995300293\n      ],\n      [\n        \"î\",\n        -10.692545890808105\n      ],\n      [\n        \"▁conversation\",\n        -10.692832946777344\n      ],\n      [\n        \"▁brands\",\n        -10.692959785461426\n      ],\n      [\n        \"▁Code\",\n        -10.69359016418457\n      ],\n      [\n        \"▁Website\",\n        -10.693748474121094\n      ],\n      [\n        \"OS\",\n        -10.693782806396484\n      ],\n      [\n        \"▁alors\",\n        -10.693822860717773\n      ],\n      [\n        \"▁organ\",\n        -10.694032669067383\n      ],\n      [\n        \"▁removed\",\n        -10.694823265075684\n      ],\n      [\n        \"▁Head\",\n        -10.694905281066895\n      ],\n      [\n        \"▁Cha\",\n        -10.694908142089844\n      ],\n      [\n        \"▁visiting\",\n        -10.694928169250488\n      ],\n      [\n        \"▁wild\",\n        -10.694928169250488\n      ],\n      [\n        \"▁seit\",\n        -10.694962501525879\n      ],\n      [\n        \"49\",\n        -10.695109367370605\n      ],\n      [\n        \"▁organic\",\n        -10.69539737701416\n      ],\n      [\n        \"aţi\",\n        -10.695775032043457\n      ],\n      [\n        \"▁kit\",\n        -10.695947647094727\n      ],\n      [\n        \"68\",\n        -10.695959091186523\n      ],\n      [\n        \"▁flowers\",\n        -10.696124076843262\n      ],\n      [\n        \"▁appreciate\",\n        -10.697006225585938\n      ],\n      [\n        \"▁dead\",\n        -10.697439193725586\n      ],\n      [\n        \"▁Fire\",\n        -10.697539329528809\n      ],\n      [\n        \"▁cela\",\n        -10.697591781616211\n      ],\n      [\n        \"▁Ph\",\n        -10.697633743286133\n      ],\n      [\n        \"▁arrive\",\n        -10.697921752929688\n      ],\n      [\n        \"▁purposes\",\n        -10.698213577270508\n      ],\n      [\n        \"▁qualité\",\n        -10.698226928710938\n      ],\n      [\n        \"▁restaurants\",\n        -10.698478698730469\n      ],\n      [\n        \"▁advertising\",\n        -10.698541641235352\n      ],\n      [\n        \"cur\",\n        -10.69855785369873\n      ],\n      [\n        \"▁ça\",\n        -10.698973655700684\n      ],\n      [\n        \"▁introduced\",\n        -10.699088096618652\n      ],\n      [\n        \"▁returned\",\n        -10.699111938476562\n      ],\n      [\n        \"▁desire\",\n        -10.699511528015137\n      ],\n      [\n        \"▁soul\",\n        -10.699983596801758\n      ],\n      [\n        \"▁Technology\",\n        -10.699994087219238\n      ],\n      [\n        \");\",\n        -10.700163841247559\n      ],\n      [\n        \"▁Royal\",\n        -10.700282096862793\n      ],\n      [\n        \"tant\",\n        -10.70068645477295\n      ],\n      [\n        \"▁possibly\",\n        -10.700702667236328\n      ],\n      [\n        \"▁consumers\",\n        -10.700812339782715\n      ],\n      [\n        \"▁doua\",\n        -10.70097541809082\n      ],\n      [\n        \"ified\",\n        -10.70097827911377\n      ],\n      [\n        \"▁Award\",\n        -10.70114803314209\n      ],\n      [\n        \"toutes\",\n        -10.70130443572998\n      ],\n      [\n        \"▁meant\",\n        -10.701325416564941\n      ],\n      [\n        \"ezi\",\n        -10.701616287231445\n      ],\n      [\n        \"▁plu\",\n        -10.701766014099121\n      ],\n      [\n        \"ţii\",\n        -10.7021484375\n      ],\n      [\n        \"▁talent\",\n        -10.702789306640625\n      ],\n      [\n        \"▁Security\",\n        -10.703309059143066\n      ],\n      [\n        \"arii\",\n        -10.703352928161621\n      ],\n      [\n        \"▁zi\",\n        -10.703455924987793\n      ],\n      [\n        \"▁Shop\",\n        -10.703667640686035\n      ],\n      [\n        \"▁breakfast\",\n        -10.704107284545898\n      ],\n      [\n        \"▁trial\",\n        -10.704485893249512\n      ],\n      [\n        \"ami\",\n        -10.704936981201172\n      ],\n      [\n        \"▁register\",\n        -10.705301284790039\n      ],\n      [\n        \"unserer\",\n        -10.705646514892578\n      ],\n      [\n        \"▁solar\",\n        -10.705697059631348\n      ],\n      [\n        \"▁deals\",\n        -10.70591926574707\n      ],\n      [\n        \"▁Ku\",\n        -10.7059326171875\n      ],\n      [\n        \"To\",\n        -10.706186294555664\n      ],\n      [\n        \"bat\",\n        -10.70680046081543\n      ],\n      [\n        \"MC\",\n        -10.707010269165039\n      ],\n      [\n        \"▁Global\",\n        -10.707018852233887\n      ],\n      [\n        \"у\",\n        -10.707405090332031\n      ],\n      [\n        \"▁nor\",\n        -10.707818984985352\n      ],\n      [\n        \"▁milk\",\n        -10.707868576049805\n      ],\n      [\n        \"▁choices\",\n        -10.708206176757812\n      ],\n      [\n        \"»\",\n        -10.7086763381958\n      ],\n      [\n        \"▁Sur\",\n        -10.708695411682129\n      ],\n      [\n        \"more\",\n        -10.708739280700684\n      ],\n      [\n        \"48\",\n        -10.709024429321289\n      ],\n      [\n        \"67\",\n        -10.709375381469727\n      ],\n      [\n        \"▁replacement\",\n        -10.709942817687988\n      ],\n      [\n        \"34\",\n        -10.710440635681152\n      ],\n      [\n        \"▁chocolate\",\n        -10.710485458374023\n      ],\n      [\n        \"▁Family\",\n        -10.71059513092041\n      ],\n      [\n        \"This\",\n        -10.71122932434082\n      ],\n      [\n        \"▁novel\",\n        -10.711435317993164\n      ],\n      [\n        \"▁Chicago\",\n        -10.711563110351562\n      ],\n      [\n        \"▁participate\",\n        -10.71166706085205\n      ],\n      [\n        \"▁trei\",\n        -10.712727546691895\n      ],\n      [\n        \"▁monthly\",\n        -10.713729858398438\n      ],\n      [\n        \"▁survey\",\n        -10.713977813720703\n      ],\n      [\n        \"▁End\",\n        -10.714285850524902\n      ],\n      [\n        \"▁Medical\",\n        -10.71442699432373\n      ],\n      [\n        \"autres\",\n        -10.714678764343262\n      ],\n      [\n        \"rich\",\n        -10.714698791503906\n      ],\n      [\n        \"▁bike\",\n        -10.714703559875488\n      ],\n      [\n        \"▁eventually\",\n        -10.714717864990234\n      ],\n      [\n        \"▁HD\",\n        -10.714722633361816\n      ],\n      [\n        \"bil\",\n        -10.714744567871094\n      ],\n      [\n        \"cent\",\n        -10.714902877807617\n      ],\n      [\n        \"▁afin\",\n        -10.715676307678223\n      ],\n      [\n        \"▁surgery\",\n        -10.716160774230957\n      ],\n      [\n        \"▁sin\",\n        -10.716455459594727\n      ],\n      [\n        \"▁manufacturing\",\n        -10.716955184936523\n      ],\n      [\n        \"▁consumer\",\n        -10.717245101928711\n      ],\n      [\n        \"system\",\n        -10.717306137084961\n      ],\n      [\n        \"▁object\",\n        -10.717400550842285\n      ],\n      [\n        \"▁Ju\",\n        -10.717422485351562\n      ],\n      [\n        \"ered\",\n        -10.7178373336792\n      ],\n      [\n        \"rac\",\n        -10.718070030212402\n      ],\n      [\n        \"▁clinical\",\n        -10.718664169311523\n      ],\n      [\n        \"▁dollars\",\n        -10.719761848449707\n      ],\n      [\n        \"▁chain\",\n        -10.71994686126709\n      ],\n      [\n        \"▁afternoon\",\n        -10.720196723937988\n      ],\n      [\n        \"▁ligne\",\n        -10.720422744750977\n      ],\n      [\n        \"▁accounts\",\n        -10.721806526184082\n      ],\n      [\n        \"ving\",\n        -10.722037315368652\n      ],\n      [\n        \"▁Australian\",\n        -10.72240924835205\n      ],\n      [\n        \"38\",\n        -10.722542762756348\n      ],\n      [\n        \"▁persoane\",\n        -10.72258472442627\n      ],\n      [\n        \"▁grande\",\n        -10.722668647766113\n      ],\n      [\n        \"▁Report\",\n        -10.723472595214844\n      ],\n      [\n        \"▁revenue\",\n        -10.723649024963379\n      ],\n      [\n        \"▁spre\",\n        -10.723760604858398\n      ],\n      [\n        \"▁cutting\",\n        -10.7239990234375\n      ],\n      [\n        \"▁approved\",\n        -10.724133491516113\n      ],\n      [\n        \"▁glad\",\n        -10.724188804626465\n      ],\n      [\n        \"chaque\",\n        -10.724395751953125\n      ],\n      [\n        \"win\",\n        -10.724435806274414\n      ],\n      [\n        \"▁waren\",\n        -10.724733352661133\n      ],\n      [\n        \"▁launched\",\n        -10.725071907043457\n      ],\n      [\n        \"▁layer\",\n        -10.725645065307617\n      ],\n      [\n        \"▁airport\",\n        -10.725716590881348\n      ],\n      [\n        \"▁effectively\",\n        -10.72572135925293\n      ],\n      [\n        \"▁coach\",\n        -10.725946426391602\n      ],\n      [\n        \"dé\",\n        -10.726130485534668\n      ],\n      [\n        \"LE\",\n        -10.72627067565918\n      ],\n      [\n        \"▁müssen\",\n        -10.726386070251465\n      ],\n      [\n        \"plan\",\n        -10.726641654968262\n      ],\n      [\n        \"dan\",\n        -10.726705551147461\n      ],\n      [\n        \"55\",\n        -10.726786613464355\n      ],\n      [\n        \"bringing\",\n        -10.726895332336426\n      ],\n      [\n        \"▁$2\",\n        -10.726995468139648\n      ],\n      [\n        \"nce\",\n        -10.727181434631348\n      ],\n      [\n        \"▁inspiration\",\n        -10.728177070617676\n      ],\n      [\n        \"You\",\n        -10.728657722473145\n      ],\n      [\n        \"▁soll\",\n        -10.729095458984375\n      ],\n      [\n        \"▁seemed\",\n        -10.729595184326172\n      ],\n      [\n        \"▁flight\",\n        -10.729687690734863\n      ],\n      [\n        \"▁prima\",\n        -10.729883193969727\n      ],\n      [\n        \"▁Welt\",\n        -10.730123519897461\n      ],\n      [\n        \"▁jetzt\",\n        -10.730315208435059\n      ],\n      [\n        \"ky\",\n        -10.730428695678711\n      ],\n      [\n        \"▁Western\",\n        -10.73054027557373\n      ],\n      [\n        \"▁label\",\n        -10.730600357055664\n      ],\n      [\n        \"▁möglich\",\n        -10.73081111907959\n      ],\n      [\n        \"▁input\",\n        -10.730862617492676\n      ],\n      [\n        \"▁laws\",\n        -10.730995178222656\n      ],\n      [\n        \"▁personnes\",\n        -10.731708526611328\n      ],\n      [\n        \"▁paying\",\n        -10.731731414794922\n      ],\n      [\n        \"▁Uhr\",\n        -10.73173713684082\n      ],\n      [\n        \"▁Mary\",\n        -10.731745719909668\n      ],\n      [\n        \"pur\",\n        -10.73190689086914\n      ],\n      [\n        \"▁covers\",\n        -10.732133865356445\n      ],\n      [\n        \"▁throw\",\n        -10.732522964477539\n      ],\n      [\n        \"▁Tor\",\n        -10.733281135559082\n      ],\n      [\n        \"▁bat\",\n        -10.73355484008789\n      ],\n      [\n        \"▁Gr\",\n        -10.73373031616211\n      ],\n      [\n        \"▁farm\",\n        -10.73376178741455\n      ],\n      [\n        \"▁improved\",\n        -10.733843803405762\n      ],\n      [\n        \"▁fără\",\n        -10.734286308288574\n      ],\n      [\n        \"▁theme\",\n        -10.73437213897705\n      ],\n      [\n        \"pens\",\n        -10.734865188598633\n      ],\n      [\n        \"▁Cup\",\n        -10.734975814819336\n      ],\n      [\n        \"▁settings\",\n        -10.735114097595215\n      ],\n      [\n        \"▁hire\",\n        -10.735234260559082\n      ],\n      [\n        \"▁massive\",\n        -10.735248565673828\n      ],\n      [\n        \"▁generate\",\n        -10.735405921936035\n      ],\n      [\n        \"▁earn\",\n        -10.735837936401367\n      ],\n      [\n        \"▁tab\",\n        -10.736431121826172\n      ],\n      [\n        \"For\",\n        -10.736616134643555\n      ],\n      [\n        \"gang\",\n        -10.736891746520996\n      ],\n      [\n        \"▁hin\",\n        -10.73709487915039\n      ],\n      [\n        \"▁roll\",\n        -10.737113952636719\n      ],\n      [\n        \"▁engagement\",\n        -10.737157821655273\n      ],\n      [\n        \"▁signed\",\n        -10.737177848815918\n      ],\n      [\n        \"▁League\",\n        -10.737323760986328\n      ],\n      [\n        \"▁registration\",\n        -10.737931251525879\n      ],\n      [\n        \"▁première\",\n        -10.738763809204102\n      ],\n      [\n        \"isse\",\n        -10.73896598815918\n      ],\n      [\n        \"▁university\",\n        -10.739027976989746\n      ],\n      [\n        \"ell\",\n        -10.739157676696777\n      ],\n      [\n        \"▁nou\",\n        -10.739169120788574\n      ],\n      [\n        \"rog\",\n        -10.739191055297852\n      ],\n      [\n        \"▁sitting\",\n        -10.739206314086914\n      ],\n      [\n        \"▁cazul\",\n        -10.739571571350098\n      ],\n      [\n        \"▁surrounding\",\n        -10.73983383178711\n      ],\n      [\n        \"▁Asia\",\n        -10.740357398986816\n      ],\n      [\n        \"▁bath\",\n        -10.740825653076172\n      ],\n      [\n        \"hal\",\n        -10.740923881530762\n      ],\n      [\n        \"▁plate\",\n        -10.741026878356934\n      ],\n      [\n        \"▁tests\",\n        -10.741151809692383\n      ],\n      [\n        \"▁presentation\",\n        -10.741156578063965\n      ],\n      [\n        \"▁chicken\",\n        -10.741501808166504\n      ],\n      [\n        \"▁Val\",\n        -10.741586685180664\n      ],\n      [\n        \"ably\",\n        -10.74166488647461\n      ],\n      [\n        \"▁magazine\",\n        -10.741697311401367\n      ],\n      [\n        \"▁Maybe\",\n        -10.74187183380127\n      ],\n      [\n        \"▁sauce\",\n        -10.742673873901367\n      ],\n      [\n        \"TC\",\n        -10.742887496948242\n      ],\n      [\n        \"▁exclusive\",\n        -10.74296760559082\n      ],\n      [\n        \"86\",\n        -10.74306869506836\n      ],\n      [\n        \"▁teeth\",\n        -10.743474960327148\n      ],\n      [\n        \"▁regularly\",\n        -10.743524551391602\n      ],\n      [\n        \"sed\",\n        -10.743824005126953\n      ],\n      [\n        \"gro\",\n        -10.744174003601074\n      ],\n      [\n        \"He\",\n        -10.744211196899414\n      ],\n      [\n        \"▁2017.\",\n        -10.744302749633789\n      ],\n      [\n        \"▁template\",\n        -10.74489688873291\n      ],\n      [\n        \"▁gleich\",\n        -10.744938850402832\n      ],\n      [\n        \"bal\",\n        -10.745061874389648\n      ],\n      [\n        \"▁African\",\n        -10.74511432647705\n      ],\n      [\n        \"în\",\n        -10.745231628417969\n      ],\n      [\n        \"▁rep\",\n        -10.74543571472168\n      ],\n      [\n        \"▁beat\",\n        -10.74588394165039\n      ],\n      [\n        \"▁deck\",\n        -10.746064186096191\n      ],\n      [\n        \"▁intended\",\n        -10.746221542358398\n      ],\n      [\n        \"▁para\",\n        -10.746513366699219\n      ],\n      [\n        \"▁IP\",\n        -10.746712684631348\n      ],\n      [\n        \"▁bra\",\n        -10.746881484985352\n      ],\n      [\n        \"▁forces\",\n        -10.746966361999512\n      ],\n      [\n        \"▁routine\",\n        -10.747184753417969\n      ],\n      [\n        \"▁Jahre\",\n        -10.747758865356445\n      ],\n      [\n        \"▁Bad\",\n        -10.74797534942627\n      ],\n      [\n        \"▁drivers\",\n        -10.748074531555176\n      ],\n      [\n        \"▁updates\",\n        -10.748095512390137\n      ],\n      [\n        \"▁elegant\",\n        -10.748279571533203\n      ],\n      [\n        \"▁external\",\n        -10.748444557189941\n      ],\n      [\n        \"▁engineering\",\n        -10.748819351196289\n      ],\n      [\n        \"ender\",\n        -10.749544143676758\n      ],\n      [\n        \"table\",\n        -10.749755859375\n      ],\n      [\n        \"inter\",\n        -10.749878883361816\n      ],\n      [\n        \"▁Romania\",\n        -10.749948501586914\n      ],\n      [\n        \"▁zile\",\n        -10.750468254089355\n      ],\n      [\n        \"▁luxury\",\n        -10.750570297241211\n      ],\n      [\n        \"▁calling\",\n        -10.750750541687012\n      ],\n      [\n        \"▁cooking\",\n        -10.75101375579834\n      ],\n      [\n        \"▁component\",\n        -10.75114631652832\n      ],\n      [\n        \"wan\",\n        -10.75121021270752\n      ],\n      [\n        \"schen\",\n        -10.751212120056152\n      ],\n      [\n        \"▁birth\",\n        -10.751242637634277\n      ],\n      [\n        \"asupra\",\n        -10.751349449157715\n      ],\n      [\n        \"Co\",\n        -10.751471519470215\n      ],\n      [\n        \"▁opt\",\n        -10.75153923034668\n      ],\n      [\n        \"▁discovered\",\n        -10.751860618591309\n      ],\n      [\n        \"▁teach\",\n        -10.752084732055664\n      ],\n      [\n        \"▁Son\",\n        -10.75234317779541\n      ],\n      [\n        \"▁guest\",\n        -10.752384185791016\n      ],\n      [\n        \"▁dogs\",\n        -10.752695083618164\n      ],\n      [\n        \"▁2003\",\n        -10.752745628356934\n      ],\n      [\n        \"▁behavior\",\n        -10.752750396728516\n      ],\n      [\n        \"pé\",\n        -10.7529935836792\n      ],\n      [\n        \"63\",\n        -10.75316333770752\n      ],\n      [\n        \"▁Human\",\n        -10.753702163696289\n      ],\n      [\n        \"▁expression\",\n        -10.754800796508789\n      ],\n      [\n        \"▁nevoie\",\n        -10.754936218261719\n      ],\n      [\n        \"▁recherche\",\n        -10.75528621673584\n      ],\n      [\n        \"ging\",\n        -10.755767822265625\n      ],\n      [\n        \"related\",\n        -10.755948066711426\n      ],\n      [\n        \"▁discount\",\n        -10.756040573120117\n      ],\n      [\n        \"▁Brown\",\n        -10.756054878234863\n      ],\n      [\n        \"▁Such\",\n        -10.756107330322266\n      ],\n      [\n        \"▁Ve\",\n        -10.757149696350098\n      ],\n      [\n        \"▁height\",\n        -10.757265090942383\n      ],\n      [\n        \"clo\",\n        -10.757414817810059\n      ],\n      [\n        \"▁incredible\",\n        -10.757912635803223\n      ],\n      [\n        \"▁bas\",\n        -10.757916450500488\n      ],\n      [\n        \"▁mă\",\n        -10.75798225402832\n      ],\n      [\n        \"▁purchased\",\n        -10.758240699768066\n      ],\n      [\n        \"▁compte\",\n        -10.75831127166748\n      ],\n      [\n        \"▁instructions\",\n        -10.758537292480469\n      ],\n      [\n        \"▁Instead\",\n        -10.75866985321045\n      ],\n      [\n        \"▁output\",\n        -10.758706092834473\n      ],\n      [\n        \"▁mom\",\n        -10.758886337280273\n      ],\n      [\n        \"DR\",\n        -10.759828567504883\n      ],\n      [\n        \"89\",\n        -10.760168075561523\n      ],\n      [\n        \"▁reduced\",\n        -10.760621070861816\n      ],\n      [\n        \"98\",\n        -10.7606840133667\n      ],\n      [\n        \"▁constant\",\n        -10.760879516601562\n      ],\n      [\n        \"▁therapy\",\n        -10.762417793273926\n      ],\n      [\n        \"▁capable\",\n        -10.762757301330566\n      ],\n      [\n        \"mark\",\n        -10.763265609741211\n      ],\n      [\n        \"▁Sometimes\",\n        -10.76332950592041\n      ],\n      [\n        \"▁joy\",\n        -10.763419151306152\n      ],\n      [\n        \"▁perfectly\",\n        -10.763589859008789\n      ],\n      [\n        \"▁painting\",\n        -10.763704299926758\n      ],\n      [\n        \"avait\",\n        -10.763765335083008\n      ],\n      [\n        \"▁Sha\",\n        -10.764384269714355\n      ],\n      [\n        \"▁dat\",\n        -10.764463424682617\n      ],\n      [\n        \"▁produits\",\n        -10.764479637145996\n      ],\n      [\n        \"tric\",\n        -10.76456356048584\n      ],\n      [\n        \"ierte\",\n        -10.765153884887695\n      ],\n      [\n        \"▁Smith\",\n        -10.765836715698242\n      ],\n      [\n        \"▁trebui\",\n        -10.766264915466309\n      ],\n      [\n        \"▁beaucoup\",\n        -10.766630172729492\n      ],\n      [\n        \"▁chosen\",\n        -10.767189025878906\n      ],\n      [\n        \"▁cre\",\n        -10.76732063293457\n      ],\n      [\n        \"▁complet\",\n        -10.767341613769531\n      ],\n      [\n        \"▁Ltd\",\n        -10.767599105834961\n      ],\n      [\n        \"▁recovery\",\n        -10.76781940460205\n      ],\n      [\n        \"▁district\",\n        -10.768423080444336\n      ],\n      [\n        \"78\",\n        -10.768640518188477\n      ],\n      [\n        \"▁Unter\",\n        -10.76872730255127\n      ],\n      [\n        \"▁schnell\",\n        -10.768729209899902\n      ],\n      [\n        \"▁apart\",\n        -10.768943786621094\n      ],\n      [\n        \"▁phase\",\n        -10.76894760131836\n      ],\n      [\n        \"▁seeking\",\n        -10.769091606140137\n      ],\n      [\n        \"▁mark\",\n        -10.769148826599121\n      ],\n      [\n        \"▁pet\",\n        -10.769233703613281\n      ],\n      [\n        \"▁PDF\",\n        -10.769296646118164\n      ],\n      [\n        \"▁efficiency\",\n        -10.769577980041504\n      ],\n      [\n        \"▁buildings\",\n        -10.769611358642578\n      ],\n      [\n        \"69\",\n        -10.769723892211914\n      ],\n      [\n        \"▁sens\",\n        -10.769858360290527\n      ],\n      [\n        \"▁Video\",\n        -10.770115852355957\n      ],\n      [\n        \"▁destination\",\n        -10.770181655883789\n      ],\n      [\n        \"▁female\",\n        -10.770319938659668\n      ],\n      [\n        \"▁supporting\",\n        -10.770674705505371\n      ],\n      [\n        \"▁signs\",\n        -10.77077865600586\n      ],\n      [\n        \"▁appeal\",\n        -10.770784378051758\n      ],\n      [\n        \"76\",\n        -10.77110481262207\n      ],\n      [\n        \"▁favourite\",\n        -10.771612167358398\n      ],\n      [\n        \"ock\",\n        -10.771702766418457\n      ],\n      [\n        \"▁readers\",\n        -10.771757125854492\n      ],\n      [\n        \"▁Did\",\n        -10.771868705749512\n      ],\n      [\n        \"rou\",\n        -10.772045135498047\n      ],\n      [\n        \"PA\",\n        -10.77222728729248\n      ],\n      [\n        \"▁Jean\",\n        -10.772480964660645\n      ],\n      [\n        \"▁Em\",\n        -10.772586822509766\n      ],\n      [\n        \"pass\",\n        -10.77280330657959\n      ],\n      [\n        \"▁Zi\",\n        -10.773090362548828\n      ],\n      [\n        \"▁între\",\n        -10.773261070251465\n      ],\n      [\n        \"▁fly\",\n        -10.773427963256836\n      ],\n      [\n        \"mos\",\n        -10.773666381835938\n      ],\n      [\n        \"▁emotional\",\n        -10.773860931396484\n      ],\n      [\n        \"asse\",\n        -10.774768829345703\n      ],\n      [\n        \"▁sessions\",\n        -10.775086402893066\n      ],\n      [\n        \"▁symptoms\",\n        -10.77564811706543\n      ],\n      [\n        \"▁died\",\n        -10.776217460632324\n      ],\n      [\n        \"▁seconds\",\n        -10.776628494262695\n      ],\n      [\n        \"▁procedure\",\n        -10.777206420898438\n      ],\n      [\n        \"▁express\",\n        -10.777420997619629\n      ],\n      [\n        \"▁două\",\n        -10.777885437011719\n      ],\n      [\n        \"▁valid\",\n        -10.778393745422363\n      ],\n      [\n        \"▁euro\",\n        -10.7788667678833\n      ],\n      [\n        \"▁interests\",\n        -10.779032707214355\n      ],\n      [\n        \"Having\",\n        -10.779237747192383\n      ],\n      [\n        \"▁hundreds\",\n        -10.779669761657715\n      ],\n      [\n        \"grad\",\n        -10.780023574829102\n      ],\n      [\n        \"▁neuen\",\n        -10.780084609985352\n      ],\n      [\n        \"▁cook\",\n        -10.780552864074707\n      ],\n      [\n        \"▁pur\",\n        -10.780834197998047\n      ],\n      [\n        \"▁charges\",\n        -10.781024932861328\n      ],\n      [\n        \"sche\",\n        -10.78118896484375\n      ],\n      [\n        \"▁smile\",\n        -10.781468391418457\n      ],\n      [\n        \"▁festival\",\n        -10.781611442565918\n      ],\n      [\n        \"cho\",\n        -10.781672477722168\n      ],\n      [\n        \"▁£\",\n        -10.781937599182129\n      ],\n      [\n        \"cht\",\n        -10.78201675415039\n      ],\n      [\n        \"▁macht\",\n        -10.782021522521973\n      ],\n      [\n        \"▁Wasser\",\n        -10.782028198242188\n      ],\n      [\n        \"▁Cap\",\n        -10.78226375579834\n      ],\n      [\n        \"▁Learn\",\n        -10.78274154663086\n      ],\n      [\n        \"▁load\",\n        -10.783162117004395\n      ],\n      [\n        \"▁aici\",\n        -10.783225059509277\n      ],\n      [\n        \"▁Ch\",\n        -10.784143447875977\n      ],\n      [\n        \"▁cycle\",\n        -10.784223556518555\n      ],\n      [\n        \"▁carried\",\n        -10.784337997436523\n      ],\n      [\n        \"▁jusqu\",\n        -10.784517288208008\n      ],\n      [\n        \"stein\",\n        -10.78505802154541\n      ],\n      [\n        \"ski\",\n        -10.78513240814209\n      ],\n      [\n        \"cap\",\n        -10.78579330444336\n      ],\n      [\n        \"▁Bal\",\n        -10.785852432250977\n      ],\n      [\n        \"▁minor\",\n        -10.786053657531738\n      ],\n      [\n        \"77\",\n        -10.786175727844238\n      ],\n      [\n        \"▁considering\",\n        -10.78632640838623\n      ],\n      [\n        \"innen\",\n        -10.78644847869873\n      ],\n      [\n        \"▁greatest\",\n        -10.787055015563965\n      ],\n      [\n        \"▁Training\",\n        -10.787137031555176\n      ],\n      [\n        \"08\",\n        -10.787307739257812\n      ],\n      [\n        \"▁significantly\",\n        -10.787607192993164\n      ],\n      [\n        \"gé\",\n        -10.787728309631348\n      ],\n      [\n        \"▁dumpster\",\n        -10.788351058959961\n      ],\n      [\n        \"▁allem\",\n        -10.788930892944336\n      ],\n      [\n        \"▁bonus\",\n        -10.7889404296875\n      ],\n      [\n        \"▁guy\",\n        -10.789036750793457\n      ],\n      [\n        \"fel\",\n        -10.78904914855957\n      ],\n      [\n        \"▁lifestyle\",\n        -10.789241790771484\n      ],\n      [\n        \"▁Bro\",\n        -10.78961181640625\n      ],\n      [\n        \"▁implement\",\n        -10.789687156677246\n      ],\n      [\n        \"lock\",\n        -10.790046691894531\n      ],\n      [\n        \"▁Earth\",\n        -10.790142059326172\n      ],\n      [\n        \"kar\",\n        -10.790733337402344\n      ],\n      [\n        \"▁invest\",\n        -10.790833473205566\n      ],\n      [\n        \"▁river\",\n        -10.790933609008789\n      ],\n      [\n        \"▁accurate\",\n        -10.791494369506836\n      ],\n      [\n        \"▁mu\",\n        -10.791579246520996\n      ],\n      [\n        \"▁celebrate\",\n        -10.792119979858398\n      ],\n      [\n        \"▁ran\",\n        -10.79256820678711\n      ],\n      [\n        \"▁bigger\",\n        -10.792988777160645\n      ],\n      [\n        \"▁Mer\",\n        -10.793476104736328\n      ],\n      [\n        \"▁millions\",\n        -10.793486595153809\n      ],\n      [\n        \"▁partie\",\n        -10.793563842773438\n      ],\n      [\n        \"▁dazu\",\n        -10.793951988220215\n      ],\n      [\n        \"▁Full\",\n        -10.794130325317383\n      ],\n      [\n        \"gie\",\n        -10.794207572937012\n      ],\n      [\n        \"bot\",\n        -10.794373512268066\n      ],\n      [\n        \"roll\",\n        -10.79472827911377\n      ],\n      [\n        \"▁Women\",\n        -10.795303344726562\n      ],\n      [\n        \"▁compare\",\n        -10.796135902404785\n      ],\n      [\n        \"▁van\",\n        -10.796503067016602\n      ],\n      [\n        \"▁apps\",\n        -10.796521186828613\n      ],\n      [\n        \"PC\",\n        -10.797050476074219\n      ],\n      [\n        \"▁drei\",\n        -10.79736042022705\n      ],\n      [\n        \"▁maison\",\n        -10.797588348388672\n      ],\n      [\n        \"▁knows\",\n        -10.797712326049805\n      ],\n      [\n        \"rid\",\n        -10.797972679138184\n      ],\n      [\n        \"62\",\n        -10.798396110534668\n      ],\n      [\n        \"class\",\n        -10.798508644104004\n      ],\n      [\n        \"▁chez\",\n        -10.798669815063477\n      ],\n      [\n        \"char\",\n        -10.798828125\n      ],\n      [\n        \"88\",\n        -10.798989295959473\n      ],\n      [\n        \"▁cast\",\n        -10.79948902130127\n      ],\n      [\n        \"▁examples\",\n        -10.79973030090332\n      ],\n      [\n        \"▁Therefore\",\n        -10.799823760986328\n      ],\n      [\n        \"▁topics\",\n        -10.799941062927246\n      ],\n      [\n        \"with\",\n        -10.80013656616211\n      ],\n      [\n        \"▁Anti\",\n        -10.800555229187012\n      ],\n      [\n        \"how\",\n        -10.800620079040527\n      ],\n      [\n        \"▁whom\",\n        -10.80094051361084\n      ],\n      [\n        \"▁Deutschland\",\n        -10.801124572753906\n      ],\n      [\n        \"tine\",\n        -10.80113697052002\n      ],\n      [\n        \"▁CEO\",\n        -10.801224708557129\n      ],\n      [\n        \"▁truck\",\n        -10.801350593566895\n      ],\n      [\n        \"▁Which\",\n        -10.8015718460083\n      ],\n      [\n        \"erie\",\n        -10.802017211914062\n      ],\n      [\n        \"fect\",\n        -10.802069664001465\n      ],\n      [\n        \"bou\",\n        -10.8026762008667\n      ],\n      [\n        \"▁(1\",\n        -10.802818298339844\n      ],\n      [\n        \"sum\",\n        -10.802980422973633\n      ],\n      [\n        \"▁bonne\",\n        -10.803068161010742\n      ],\n      [\n        \"▁remaining\",\n        -10.80321216583252\n      ],\n      [\n        \"▁equal\",\n        -10.803543090820312\n      ],\n      [\n        \"▁engage\",\n        -10.803561210632324\n      ],\n      [\n        \"▁RE\",\n        -10.803849220275879\n      ],\n      [\n        \"style\",\n        -10.804182052612305\n      ],\n      [\n        \"▁urma\",\n        -10.804337501525879\n      ],\n      [\n        \"▁Grund\",\n        -10.80496883392334\n      ],\n      [\n        \"ür\",\n        -10.8051176071167\n      ],\n      [\n        \"▁font\",\n        -10.805353164672852\n      ],\n      [\n        \"▁assets\",\n        -10.805916786193848\n      ],\n      [\n        \"AL\",\n        -10.806102752685547\n      ],\n      [\n        \"▁rear\",\n        -10.80635929107666\n      ],\n      [\n        \"▁contemporary\",\n        -10.80646800994873\n      ],\n      [\n        \"▁occur\",\n        -10.8067045211792\n      ],\n      [\n        \"rated\",\n        -10.806941986083984\n      ],\n      [\n        \"▁tight\",\n        -10.807088851928711\n      ],\n      [\n        \"▁machines\",\n        -10.807921409606934\n      ],\n      [\n        \"▁0.\",\n        -10.808456420898438\n      ],\n      [\n        \"▁Aber\",\n        -10.808470726013184\n      ],\n      [\n        \"sol\",\n        -10.808517456054688\n      ],\n      [\n        \"rü\",\n        -10.80858039855957\n      ],\n      [\n        \"▁2007\",\n        -10.809479713439941\n      ],\n      [\n        \"gg\",\n        -10.809488296508789\n      ],\n      [\n        \"▁unul\",\n        -10.809691429138184\n      ],\n      [\n        \"▁était\",\n        -10.809908866882324\n      ],\n      [\n        \"▁capture\",\n        -10.809980392456055\n      ],\n      [\n        \"▁command\",\n        -10.810037612915039\n      ],\n      [\n        \"▁wire\",\n        -10.810425758361816\n      ],\n      [\n        \"▁shift\",\n        -10.810762405395508\n      ],\n      [\n        \"▁bread\",\n        -10.81084156036377\n      ],\n      [\n        \"▁causes\",\n        -10.810937881469727\n      ],\n      [\n        \"PI\",\n        -10.810938835144043\n      ],\n      [\n        \"SC\",\n        -10.811086654663086\n      ],\n      [\n        \"▁lights\",\n        -10.811190605163574\n      ],\n      [\n        \"▁lived\",\n        -10.811293601989746\n      ],\n      [\n        \"mul\",\n        -10.811446189880371\n      ],\n      [\n        \"▁Cur\",\n        -10.811917304992676\n      ],\n      [\n        \"▁Richard\",\n        -10.811973571777344\n      ],\n      [\n        \"37\",\n        -10.812638282775879\n      ],\n      [\n        \"▁cup\",\n        -10.812737464904785\n      ],\n      [\n        \"▁fields\",\n        -10.812983512878418\n      ],\n      [\n        \"▁crusher\",\n        -10.813389778137207\n      ],\n      [\n        \"65\",\n        -10.813774108886719\n      ],\n      [\n        \"avons\",\n        -10.813822746276855\n      ],\n      [\n        \"▁gear\",\n        -10.813835144042969\n      ],\n      [\n        \"▁standing\",\n        -10.813844680786133\n      ],\n      [\n        \"▁thick\",\n        -10.81445026397705\n      ],\n      [\n        \"aff\",\n        -10.815132141113281\n      ],\n      [\n        \"ments\",\n        -10.815434455871582\n      ],\n      [\n        \"▁conflict\",\n        -10.815728187561035\n      ],\n      [\n        \"ität\",\n        -10.815825462341309\n      ],\n      [\n        \"▁worse\",\n        -10.816295623779297\n      ],\n      [\n        \"SE\",\n        -10.816332817077637\n      ],\n      [\n        \"imi\",\n        -10.816459655761719\n      ],\n      [\n        \"▁dating\",\n        -10.817033767700195\n      ],\n      [\n        \"Do\",\n        -10.817073822021484\n      ],\n      [\n        \"▁flexible\",\n        -10.817093849182129\n      ],\n      [\n        \"ologie\",\n        -10.817131996154785\n      ],\n      [\n        \"SU\",\n        -10.817200660705566\n      ],\n      [\n        \"▁contribute\",\n        -10.817306518554688\n      ],\n      [\n        \"▁denn\",\n        -10.817428588867188\n      ],\n      [\n        \"▁appointment\",\n        -10.81746768951416\n      ],\n      [\n        \"▁ticket\",\n        -10.817523002624512\n      ],\n      [\n        \"bed\",\n        -10.817892074584961\n      ],\n      [\n        \"▁2019.\",\n        -10.817936897277832\n      ],\n      [\n        \"▁tasks\",\n        -10.81871223449707\n      ],\n      [\n        \"▁carbon\",\n        -10.818734169006348\n      ],\n      [\n        \"▁situations\",\n        -10.819400787353516\n      ],\n      [\n        \"MA\",\n        -10.819402694702148\n      ],\n      [\n        \"▁portion\",\n        -10.819498062133789\n      ],\n      [\n        \"▁urban\",\n        -10.819585800170898\n      ],\n      [\n        \"▁Canadian\",\n        -10.819805145263672\n      ],\n      [\n        \"▁Bur\",\n        -10.819937705993652\n      ],\n      [\n        \"▁pack\",\n        -10.81995964050293\n      ],\n      [\n        \"▁effet\",\n        -10.819992065429688\n      ],\n      [\n        \"▁Ball\",\n        -10.82008171081543\n      ],\n      [\n        \"▁timpul\",\n        -10.82014274597168\n      ],\n      [\n        \"▁owned\",\n        -10.820211410522461\n      ],\n      [\n        \"▁surprise\",\n        -10.820413589477539\n      ],\n      [\n        \"▁Mu\",\n        -10.820582389831543\n      ],\n      [\n        \"▁decades\",\n        -10.821001052856445\n      ],\n      [\n        \"▁affected\",\n        -10.821728706359863\n      ],\n      [\n        \"▁proven\",\n        -10.821732521057129\n      ],\n      [\n        \"▁Fe\",\n        -10.821990966796875\n      ],\n      [\n        \"zy\",\n        -10.822042465209961\n      ],\n      [\n        \"42\",\n        -10.822175979614258\n      ],\n      [\n        \"▁trend\",\n        -10.8223876953125\n      ],\n      [\n        \"▁autres\",\n        -10.82262897491455\n      ],\n      [\n        \"No\",\n        -10.823028564453125\n      ],\n      [\n        \"▁nine\",\n        -10.823565483093262\n      ],\n      [\n        \"ON\",\n        -10.82376480102539\n      ],\n      [\n        \"NE\",\n        -10.823953628540039\n      ],\n      [\n        \"oli\",\n        -10.824359893798828\n      ],\n      [\n        \"▁Daniel\",\n        -10.824434280395508\n      ],\n      [\n        \"▁spa\",\n        -10.824939727783203\n      ],\n      [\n        \"▁messages\",\n        -10.825084686279297\n      ],\n      [\n        \"PS\",\n        -10.825183868408203\n      ],\n      [\n        \"47\",\n        -10.825703620910645\n      ],\n      [\n        \"▁doch\",\n        -10.826032638549805\n      ],\n      [\n        \"▁improvement\",\n        -10.826187133789062\n      ],\n      [\n        \"▁mountain\",\n        -10.826350212097168\n      ],\n      [\n        \"▁Room\",\n        -10.826451301574707\n      ],\n      [\n        \"▁edition\",\n        -10.826546669006348\n      ],\n      [\n        \"▁musical\",\n        -10.826712608337402\n      ],\n      [\n        \"CP\",\n        -10.827024459838867\n      ],\n      [\n        \"▁Mill\",\n        -10.827027320861816\n      ],\n      [\n        \"▁steht\",\n        -10.827740669250488\n      ],\n      [\n        \"▁determined\",\n        -10.828083038330078\n      ],\n      [\n        \"you\",\n        -10.828392028808594\n      ],\n      [\n        \"weg\",\n        -10.828554153442383\n      ],\n      [\n        \"▁Digital\",\n        -10.828624725341797\n      ],\n      [\n        \"▁filter\",\n        -10.828903198242188\n      ],\n      [\n        \"▁youth\",\n        -10.829047203063965\n      ],\n      [\n        \"▁assessment\",\n        -10.829301834106445\n      ],\n      [\n        \"▁butter\",\n        -10.829370498657227\n      ],\n      [\n        \"▁Watch\",\n        -10.829427719116211\n      ],\n      [\n        \"▁zusammen\",\n        -10.829471588134766\n      ],\n      [\n        \"▁View\",\n        -10.829606056213379\n      ],\n      [\n        \"09\",\n        -10.829649925231934\n      ],\n      [\n        \"▁sole\",\n        -10.829816818237305\n      ],\n      [\n        \".00\",\n        -10.830018997192383\n      ],\n      [\n        \"33\",\n        -10.83015251159668\n      ],\n      [\n        \"▁export\",\n        -10.830229759216309\n      ],\n      [\n        \"ery\",\n        -10.830373764038086\n      ],\n      [\n        \"▁zurück\",\n        -10.830426216125488\n      ],\n      [\n        \"▁walls\",\n        -10.83048152923584\n      ],\n      [\n        \"▁recognize\",\n        -10.8306884765625\n      ],\n      [\n        \"law\",\n        -10.830801963806152\n      ],\n      [\n        \"▁parent\",\n        -10.830863952636719\n      ],\n      [\n        \"ST\",\n        -10.831357955932617\n      ],\n      [\n        \"▁description\",\n        -10.831669807434082\n      ],\n      [\n        \"MS\",\n        -10.831887245178223\n      ],\n      [\n        \"SM\",\n        -10.83189582824707\n      ],\n      [\n        \"▁Finally\",\n        -10.831940650939941\n      ],\n      [\n        \"▁hardware\",\n        -10.831965446472168\n      ],\n      [\n        \"ident\",\n        -10.832464218139648\n      ],\n      [\n        \"▁brown\",\n        -10.832566261291504\n      ],\n      [\n        \"▁kinds\",\n        -10.832950592041016\n      ],\n      [\n        \"▁Arts\",\n        -10.83297061920166\n      ],\n      [\n        \"▁concert\",\n        -10.83341121673584\n      ],\n      [\n        \"▁sec\",\n        -10.83342456817627\n      ],\n      [\n        \"▁represent\",\n        -10.833512306213379\n      ],\n      [\n        \"▁institutions\",\n        -10.833597183227539\n      ],\n      [\n        \"▁fur\",\n        -10.833998680114746\n      ],\n      [\n        \"▁Support\",\n        -10.83403205871582\n      ],\n      [\n        \"87\",\n        -10.834076881408691\n      ],\n      [\n        \"▁ease\",\n        -10.834178924560547\n      ],\n      [\n        \"▁feels\",\n        -10.834218978881836\n      ],\n      [\n        \"▁sheet\",\n        -10.834342002868652\n      ],\n      [\n        \"▁Though\",\n        -10.83437442779541\n      ],\n      [\n        \"▁propose\",\n        -10.834381103515625\n      ],\n      [\n        \"▁personnel\",\n        -10.834409713745117\n      ],\n      [\n        \"bie\",\n        -10.834794044494629\n      ],\n      [\n        \"▁contest\",\n        -10.834836959838867\n      ],\n      [\n        \"▁successfully\",\n        -10.835152626037598\n      ],\n      [\n        \"▁direkt\",\n        -10.835397720336914\n      ],\n      [\n        \"bietet\",\n        -10.835597038269043\n      ],\n      [\n        \"▁submit\",\n        -10.835888862609863\n      ],\n      [\n        \"▁sicher\",\n        -10.835919380187988\n      ],\n      [\n        \"▁Personal\",\n        -10.83607006072998\n      ],\n      [\n        \"94\",\n        -10.836341857910156\n      ],\n      [\n        \"61\",\n        -10.836400985717773\n      ],\n      [\n        \"▁Very\",\n        -10.836540222167969\n      ],\n      [\n        \"bol\",\n        -10.836603164672852\n      ],\n      [\n        \"▁ha\",\n        -10.837089538574219\n      ],\n      [\n        \"▁channel\",\n        -10.8372220993042\n      ],\n      [\n        \"mut\",\n        -10.837289810180664\n      ],\n      [\n        \"▁mouth\",\n        -10.837342262268066\n      ],\n      [\n        \"▁vast\",\n        -10.837395668029785\n      ],\n      [\n        \"▁Ob\",\n        -10.837569236755371\n      ],\n      [\n        \"lit\",\n        -10.83763313293457\n      ],\n      [\n        \"▁poly\",\n        -10.837878227233887\n      ],\n      [\n        \"▁trained\",\n        -10.838102340698242\n      ],\n      [\n        \"▁specialist\",\n        -10.838122367858887\n      ],\n      [\n        \"UL\",\n        -10.83822250366211\n      ],\n      [\n        \"▁seiner\",\n        -10.838336944580078\n      ],\n      [\n        \"SS\",\n        -10.838627815246582\n      ],\n      [\n        \"▁vacation\",\n        -10.838672637939453\n      ],\n      [\n        \"▁resume\",\n        -10.839157104492188\n      ],\n      [\n        \"▁constantly\",\n        -10.839717864990234\n      ],\n      [\n        \"▁treated\",\n        -10.83986759185791\n      ],\n      [\n        \"▁150\",\n        -10.840936660766602\n      ],\n      [\n        \"▁native\",\n        -10.841246604919434\n      ],\n      [\n        \"▁Russian\",\n        -10.841329574584961\n      ],\n      [\n        \"▁patterns\",\n        -10.841371536254883\n      ],\n      [\n        \"▁knowing\",\n        -10.841670989990234\n      ],\n      [\n        \"▁Pan\",\n        -10.841682434082031\n      ],\n      [\n        \"peri\",\n        -10.841848373413086\n      ],\n      [\n        \"aci\",\n        -10.841864585876465\n      ],\n      [\n        \"▁answers\",\n        -10.842114448547363\n      ],\n      [\n        \"▁heute\",\n        -10.842985153198242\n      ],\n      [\n        \"93\",\n        -10.843056678771973\n      ],\n      [\n        \"▁Winter\",\n        -10.844083786010742\n      ],\n      [\n        \"▁yes\",\n        -10.844173431396484\n      ],\n      [\n        \"SP\",\n        -10.844185829162598\n      ],\n      [\n        \"].\",\n        -10.844388008117676\n      ],\n      [\n        \"▁kein\",\n        -10.844862937927246\n      ],\n      [\n        \"▁introduce\",\n        -10.8450927734375\n      ],\n      [\n        \"-4\",\n        -10.84555435180664\n      ],\n      [\n        \"▁shoot\",\n        -10.845762252807617\n      ],\n      [\n        \"AR\",\n        -10.84576416015625\n      ],\n      [\n        \"▁receiving\",\n        -10.845864295959473\n      ],\n      [\n        \"▁intre\",\n        -10.84702205657959\n      ],\n      [\n        \"▁appeared\",\n        -10.84708023071289\n      ],\n      [\n        \"▁brother\",\n        -10.847321510314941\n      ],\n      [\n        \"▁extend\",\n        -10.847765922546387\n      ],\n      [\n        \"▁fara\",\n        -10.848737716674805\n      ],\n      [\n        \"▁kommt\",\n        -10.848876953125\n      ],\n      [\n        \"ali\",\n        -10.848913192749023\n      ],\n      [\n        \"▁numai\",\n        -10.849047660827637\n      ],\n      [\n        \"▁scientific\",\n        -10.84913158416748\n      ],\n      [\n        \"▁virtual\",\n        -10.849145889282227\n      ],\n      [\n        \"▁Ac\",\n        -10.849513053894043\n      ],\n      [\n        \"▁procedures\",\n        -10.849631309509277\n      ],\n      [\n        \"▁silver\",\n        -10.849821090698242\n      ],\n      [\n        \"▁leather\",\n        -10.849979400634766\n      ],\n      [\n        \"DA\",\n        -10.85014820098877\n      ],\n      [\n        \"▁executive\",\n        -10.850263595581055\n      ],\n      [\n        \"▁officials\",\n        -10.850496292114258\n      ],\n      [\n        \"▁agencies\",\n        -10.850503921508789\n      ],\n      [\n        \"▁Software\",\n        -10.850540161132812\n      ],\n      [\n        \"▁cor\",\n        -10.850690841674805\n      ],\n      [\n        \"Con\",\n        -10.850741386413574\n      ],\n      [\n        \"▁log\",\n        -10.851066589355469\n      ],\n      [\n        \"ț\",\n        -10.851147651672363\n      ],\n      [\n        \"02\",\n        -10.851195335388184\n      ],\n      [\n        \"▁7.\",\n        -10.85245132446289\n      ],\n      [\n        \"▁accepted\",\n        -10.852483749389648\n      ],\n      [\n        \"▁Berlin\",\n        -10.852538108825684\n      ],\n      [\n        \"ID\",\n        -10.852582931518555\n      ],\n      [\n        \"cot\",\n        -10.852788925170898\n      ],\n      [\n        \"▁employment\",\n        -10.852799415588379\n      ],\n      [\n        \"run\",\n        -10.853020668029785\n      ],\n      [\n        \"▁identified\",\n        -10.853178977966309\n      ],\n      [\n        \"96\",\n        -10.853887557983398\n      ],\n      [\n        \"▁déjà\",\n        -10.853944778442383\n      ],\n      [\n        \"▁cuisine\",\n        -10.853952407836914\n      ],\n      [\n        \"turi\",\n        -10.854070663452148\n      ],\n      [\n        \"▁Japanese\",\n        -10.854316711425781\n      ],\n      [\n        \"▁golf\",\n        -10.854514122009277\n      ],\n      [\n        \"▁Ki\",\n        -10.854787826538086\n      ],\n      [\n        \"▁carefully\",\n        -10.854863166809082\n      ],\n      [\n        \"▁remote\",\n        -10.854973793029785\n      ],\n      [\n        \"▁2018,\",\n        -10.855148315429688\n      ],\n      [\n        \"▁sus\",\n        -10.855154991149902\n      ],\n      [\n        \"tique\",\n        -10.855293273925781\n      ],\n      [\n        \"▁residential\",\n        -10.855695724487305\n      ],\n      [\n        \"97\",\n        -10.855809211730957\n      ],\n      [\n        \"▁Spring\",\n        -10.855908393859863\n      ],\n      [\n        \"▁Marketing\",\n        -10.856186866760254\n      ],\n      [\n        \"▁Control\",\n        -10.85630989074707\n      ],\n      [\n        \"var\",\n        -10.856344223022461\n      ],\n      [\n        \"▁historical\",\n        -10.8563814163208\n      ],\n      [\n        \"▁freedom\",\n        -10.856423377990723\n      ],\n      [\n        \"sure\",\n        -10.856426239013672\n      ],\n      [\n        \"▁broken\",\n        -10.856796264648438\n      ],\n      [\n        \"▁criminal\",\n        -10.856949806213379\n      ],\n      [\n        \"▁innovation\",\n        -10.857075691223145\n      ],\n      [\n        \"▁Italian\",\n        -10.857192039489746\n      ],\n      [\n        \"sper\",\n        -10.857282638549805\n      ],\n      [\n        \"▁cake\",\n        -10.857653617858887\n      ],\n      [\n        \"▁candidates\",\n        -10.857894897460938\n      ],\n      [\n        \"▁sizes\",\n        -10.858267784118652\n      ],\n      [\n        \"pel\",\n        -10.858366966247559\n      ],\n      [\n        \"▁frequently\",\n        -10.85889720916748\n      ],\n      [\n        \"▁planet\",\n        -10.859138488769531\n      ],\n      [\n        \"▁writer\",\n        -10.859519958496094\n      ],\n      [\n        \"1,\",\n        -10.859569549560547\n      ],\n      [\n        \"uvent\",\n        -10.85959529876709\n      ],\n      [\n        \"▁awareness\",\n        -10.859807968139648\n      ],\n      [\n        \"name\",\n        -10.859954833984375\n      ],\n      [\n        \"▁Children\",\n        -10.859980583190918\n      ],\n      [\n        \"▁relatively\",\n        -10.860311508178711\n      ],\n      [\n        \"▁pu\",\n        -10.860321998596191\n      ],\n      [\n        \"▁quiet\",\n        -10.86038875579834\n      ],\n      [\n        \"▁planned\",\n        -10.860716819763184\n      ],\n      [\n        \"▁election\",\n        -10.861419677734375\n      ],\n      [\n        \"▁6.\",\n        -10.861761093139648\n      ],\n      [\n        \"▁broad\",\n        -10.861772537231445\n      ],\n      [\n        \"▁skill\",\n        -10.861835479736328\n      ],\n      [\n        \"▁reasonable\",\n        -10.862037658691406\n      ],\n      [\n        \"▁Fort\",\n        -10.862283706665039\n      ],\n      [\n        \"▁aceea\",\n        -10.862407684326172\n      ],\n      [\n        \"▁arrived\",\n        -10.86263370513916\n      ],\n      [\n        \"▁payments\",\n        -10.862680435180664\n      ],\n      [\n        \"ack\",\n        -10.862700462341309\n      ],\n      [\n        \"▁Ort\",\n        -10.863354682922363\n      ],\n      [\n        \"▁investors\",\n        -10.863364219665527\n      ],\n      [\n        \"▁operate\",\n        -10.86351203918457\n      ],\n      [\n        \"ME\",\n        -10.863556861877441\n      ],\n      [\n        \"dic\",\n        -10.863683700561523\n      ],\n      [\n        \"▁foods\",\n        -10.863731384277344\n      ],\n      [\n        \"▁stick\",\n        -10.863831520080566\n      ],\n      [\n        \"▁agents\",\n        -10.86412525177002\n      ],\n      [\n        \"▁crowd\",\n        -10.864175796508789\n      ],\n      [\n        \"▁Students\",\n        -10.864480972290039\n      ],\n      [\n        \"▁concerned\",\n        -10.864609718322754\n      ],\n      [\n        \"test\",\n        -10.864740371704102\n      ],\n      [\n        \"▁designer\",\n        -10.865334510803223\n      ],\n      [\n        \"▁Conference\",\n        -10.865593910217285\n      ],\n      [\n        \"▁saving\",\n        -10.866105079650879\n      ],\n      [\n        \"▁recorded\",\n        -10.866422653198242\n      ],\n      [\n        \"▁proposed\",\n        -10.866564750671387\n      ],\n      [\n        \"▁ship\",\n        -10.86657428741455\n      ],\n      [\n        \"▁cred\",\n        -10.867274284362793\n      ],\n      [\n        \"▁Ci\",\n        -10.867440223693848\n      ],\n      [\n        \"RE\",\n        -10.867619514465332\n      ],\n      [\n        \"▁tradition\",\n        -10.867753982543945\n      ],\n      [\n        \"▁worldwide\",\n        -10.867779731750488\n      ],\n      [\n        \"64\",\n        -10.867944717407227\n      ],\n      [\n        \"▁television\",\n        -10.867989540100098\n      ],\n      [\n        \"▁projet\",\n        -10.868102073669434\n      ],\n      [\n        \"ency\",\n        -10.868487358093262\n      ],\n      [\n        \"▁struggle\",\n        -10.868514060974121\n      ],\n      [\n        \"▁twice\",\n        -10.868955612182617\n      ],\n      [\n        \"▁Off\",\n        -10.869234085083008\n      ],\n      [\n        \"▁begins\",\n        -10.869577407836914\n      ],\n      [\n        \"key\",\n        -10.869794845581055\n      ],\n      [\n        \"▁Table\",\n        -10.869963645935059\n      ],\n      [\n        \"▁demande\",\n        -10.870177268981934\n      ],\n      [\n        \"▁liquid\",\n        -10.870441436767578\n      ],\n      [\n        \"meter\",\n        -10.870684623718262\n      ],\n      [\n        \"▁2001\",\n        -10.871190071105957\n      ],\n      [\n        \"▁willing\",\n        -10.871660232543945\n      ],\n      [\n        \"▁medicine\",\n        -10.871707916259766\n      ],\n      [\n        \"▁expand\",\n        -10.871747970581055\n      ],\n      [\n        \"▁2004\",\n        -10.871804237365723\n      ],\n      [\n        \"▁2002\",\n        -10.872016906738281\n      ],\n      [\n        \"▁accord\",\n        -10.872292518615723\n      ],\n      [\n        \"▁Chris\",\n        -10.872446060180664\n      ],\n      [\n        \"▁prove\",\n        -10.872543334960938\n      ],\n      [\n        \"ston\",\n        -10.872740745544434\n      ],\n      [\n        \"mettre\",\n        -10.872800827026367\n      ],\n      [\n        \"▁moments\",\n        -10.873537063598633\n      ],\n      [\n        \"tik\",\n        -10.87368392944336\n      ],\n      [\n        \"such\",\n        -10.874055862426758\n      ],\n      [\n        \"2.\",\n        -10.874431610107422\n      ],\n      [\n        \"▁UN\",\n        -10.874561309814453\n      ],\n      [\n        \"▁jump\",\n        -10.874737739562988\n      ],\n      [\n        \"▁dish\",\n        -10.87539291381836\n      ],\n      [\n        \"▁Key\",\n        -10.875663757324219\n      ],\n      [\n        \"▁challenging\",\n        -10.875975608825684\n      ],\n      [\n        \"▁domestic\",\n        -10.876410484313965\n      ],\n      [\n        \"▁impressive\",\n        -10.876752853393555\n      ],\n      [\n        \"iger\",\n        -10.877022743225098\n      ],\n      [\n        \"▁Ram\",\n        -10.877157211303711\n      ],\n      [\n        \"▁doit\",\n        -10.877263069152832\n      ],\n      [\n        \"▁concrete\",\n        -10.87734317779541\n      ],\n      [\n        \"▁Unternehmen\",\n        -10.877397537231445\n      ],\n      [\n        \"▁LED\",\n        -10.877429008483887\n      ],\n      [\n        \"▁trouver\",\n        -10.877533912658691\n      ],\n      [\n        \"▁fundamental\",\n        -10.877875328063965\n      ],\n      [\n        \"▁implementation\",\n        -10.878121376037598\n      ],\n      [\n        \"85\",\n        -10.878247261047363\n      ],\n      [\n        \"▁hosting\",\n        -10.87856388092041\n      ],\n      [\n        \"▁Game\",\n        -10.878691673278809\n      ],\n      [\n        \"▁taught\",\n        -10.878981590270996\n      ],\n      [\n        \"tung\",\n        -10.879016876220703\n      ],\n      [\n        \"ront\",\n        -10.87940502166748\n      ],\n      [\n        \"▁shoes\",\n        -10.879639625549316\n      ],\n      [\n        \"79\",\n        -10.8797607421875\n      ],\n      [\n        \"▁stunning\",\n        -10.879778861999512\n      ],\n      [\n        \"▁Congress\",\n        -10.880142211914062\n      ],\n      [\n        \"▁Ent\",\n        -10.880278587341309\n      ],\n      [\n        \"▁Wer\",\n        -10.880607604980469\n      ],\n      [\n        \"▁alt\",\n        -10.880608558654785\n      ],\n      [\n        \"ör\",\n        -10.880699157714844\n      ],\n      [\n        \"▁calm\",\n        -10.8808012008667\n      ],\n      [\n        \"46\",\n        -10.881132125854492\n      ],\n      [\n        \"▁Daca\",\n        -10.881404876708984\n      ],\n      [\n        \"71\",\n        -10.881938934326172\n      ],\n      [\n        \"▁Dec\",\n        -10.882392883300781\n      ],\n      [\n        \"▁Fo\",\n        -10.882437705993652\n      ],\n      [\n        \"▁defense\",\n        -10.88313102722168\n      ],\n      [\n        \"▁expectations\",\n        -10.883166313171387\n      ],\n      [\n        \"▁Alle\",\n        -10.88318920135498\n      ],\n      [\n        \"▁brief\",\n        -10.883691787719727\n      ],\n      [\n        \"▁Hospital\",\n        -10.883975982666016\n      ],\n      [\n        \"▁sides\",\n        -10.884121894836426\n      ],\n      [\n        \"▁yellow\",\n        -10.884140014648438\n      ],\n      [\n        \"lei\",\n        -10.88451862335205\n      ],\n      [\n        \"▁speaking\",\n        -10.884589195251465\n      ],\n      [\n        \"▁crucial\",\n        -10.885198593139648\n      ],\n      [\n        \"▁Town\",\n        -10.8854341506958\n      ],\n      [\n        \"▁married\",\n        -10.885574340820312\n      ],\n      [\n        \"▁acesta\",\n        -10.885583877563477\n      ],\n      [\n        \"▁noted\",\n        -10.885611534118652\n      ],\n      [\n        \"▁Word\",\n        -10.885659217834473\n      ],\n      [\n        \"▁conducted\",\n        -10.885963439941406\n      ],\n      [\n        \"▁decor\",\n        -10.886249542236328\n      ],\n      [\n        \"kon\",\n        -10.886565208435059\n      ],\n      [\n        \"▁supplies\",\n        -10.8866605758667\n      ],\n      [\n        \"▁adventure\",\n        -10.886691093444824\n      ],\n      [\n        \"▁exhibition\",\n        -10.887163162231445\n      ],\n      [\n        \"heit\",\n        -10.887300491333008\n      ],\n      [\n        \"▁36\",\n        -10.88744831085205\n      ],\n      [\n        \"eria\",\n        -10.887505531311035\n      ],\n      [\n        \"ines\",\n        -10.887551307678223\n      ],\n      [\n        \"ological\",\n        -10.887582778930664\n      ],\n      [\n        \"quel\",\n        -10.88806438446045\n      ],\n      [\n        \"▁Van\",\n        -10.88825511932373\n      ],\n      [\n        \"-19\",\n        -10.88853645324707\n      ],\n      [\n        \"2,\",\n        -10.888566970825195\n      ],\n      [\n        \"▁Band\",\n        -10.888989448547363\n      ],\n      [\n        \"▁soil\",\n        -10.889184951782227\n      ],\n      [\n        \"▁Tim\",\n        -10.889599800109863\n      ],\n      [\n        \"▁NOT\",\n        -10.88968563079834\n      ],\n      [\n        \"▁pilot\",\n        -10.889753341674805\n      ],\n      [\n        \"▁Sh\",\n        -10.889774322509766\n      ],\n      [\n        \"Ho\",\n        -10.890361785888672\n      ],\n      [\n        \"CA\",\n        -10.890509605407715\n      ],\n      [\n        \"▁Eu\",\n        -10.890745162963867\n      ],\n      [\n        \"▁committee\",\n        -10.890829086303711\n      ],\n      [\n        \"▁Store\",\n        -10.891075134277344\n      ],\n      [\n        \"▁joint\",\n        -10.89111614227295\n      ],\n      [\n        \"▁Op\",\n        -10.891315460205078\n      ],\n      [\n        \"▁Jack\",\n        -10.891985893249512\n      ],\n      [\n        \"quality\",\n        -10.89216423034668\n      ],\n      [\n        \"▁Has\",\n        -10.892489433288574\n      ],\n      [\n        \"▁wenig\",\n        -10.892507553100586\n      ],\n      [\n        \"hood\",\n        -10.892545700073242\n      ],\n      [\n        \"▁Class\",\n        -10.892582893371582\n      ],\n      [\n        \"rus\",\n        -10.892773628234863\n      ],\n      [\n        \"▁grown\",\n        -10.89294719696045\n      ],\n      [\n        \"▁About\",\n        -10.893518447875977\n      ],\n      [\n        \"▁sum\",\n        -10.893942832946777\n      ],\n      [\n        \"▁Fair\",\n        -10.893946647644043\n      ],\n      [\n        \"SA\",\n        -10.894149780273438\n      ],\n      [\n        \"92\",\n        -10.894185066223145\n      ],\n      [\n        \"▁fourth\",\n        -10.894354820251465\n      ],\n      [\n        \"▁featured\",\n        -10.894384384155273\n      ],\n      [\n        \"▁Pen\",\n        -10.89444637298584\n      ],\n      [\n        \"▁natürlich\",\n        -10.894885063171387\n      ],\n      [\n        \"ched\",\n        -10.894901275634766\n      ],\n      [\n        \"▁ban\",\n        -10.895112991333008\n      ],\n      [\n        \"anne\",\n        -10.89522647857666\n      ],\n      [\n        \"▁theory\",\n        -10.895413398742676\n      ],\n      [\n        \"bin\",\n        -10.895438194274902\n      ],\n      [\n        \"iers\",\n        -10.895819664001465\n      ],\n      [\n        \"▁strategic\",\n        -10.895903587341309\n      ],\n      [\n        \"▁jours\",\n        -10.895956039428711\n      ],\n      [\n        \"▁communicate\",\n        -10.896124839782715\n      ],\n      [\n        \"▁pin\",\n        -10.896320343017578\n      ],\n      [\n        \"▁Bon\",\n        -10.89721393585205\n      ],\n      [\n        \"kom\",\n        -10.897290229797363\n      ],\n      [\n        \"-5\",\n        -10.898177146911621\n      ],\n      [\n        \"▁degrees\",\n        -10.898643493652344\n      ],\n      [\n        \"▁entertainment\",\n        -10.899014472961426\n      ],\n      [\n        \"ară\",\n        -10.899248123168945\n      ],\n      [\n        \"ales\",\n        -10.899425506591797\n      ],\n      [\n        \"▁pendant\",\n        -10.89954662322998\n      ],\n      [\n        \"▁Series\",\n        -10.899575233459473\n      ],\n      [\n        \"▁holds\",\n        -10.899592399597168\n      ],\n      [\n        \"▁Mini\",\n        -10.899828910827637\n      ],\n      [\n        \"▁Obama\",\n        -10.899898529052734\n      ],\n      [\n        \"▁conform\",\n        -10.900163650512695\n      ],\n      [\n        \"-10\",\n        -10.900216102600098\n      ],\n      [\n        \"▁preparation\",\n        -10.9009370803833\n      ],\n      [\n        \"▁autre\",\n        -10.90105152130127\n      ],\n      [\n        \"▁mortgage\",\n        -10.901155471801758\n      ],\n      [\n        \"▁Kan\",\n        -10.901508331298828\n      ],\n      [\n        \"▁typical\",\n        -10.901538848876953\n      ],\n      [\n        \"01\",\n        -10.901711463928223\n      ],\n      [\n        \"▁Review\",\n        -10.901862144470215\n      ],\n      [\n        \"▁laptop\",\n        -10.902127265930176\n      ],\n      [\n        \"CR\",\n        -10.902610778808594\n      ],\n      [\n        \"▁thread\",\n        -10.90265941619873\n      ],\n      [\n        \"BS\",\n        -10.902661323547363\n      ],\n      [\n        \"▁upper\",\n        -10.902700424194336\n      ],\n      [\n        \"▁searching\",\n        -10.902932167053223\n      ],\n      [\n        \"▁pen\",\n        -10.903214454650879\n      ],\n      [\n        \"▁Middle\",\n        -10.90333080291748\n      ],\n      [\n        \"73\",\n        -10.903359413146973\n      ],\n      [\n        \"▁leg\",\n        -10.903650283813477\n      ],\n      [\n        \"onic\",\n        -10.904272079467773\n      ],\n      [\n        \"IS\",\n        -10.904356956481934\n      ],\n      [\n        \"▁Kar\",\n        -10.904623985290527\n      ],\n      [\n        \"anz\",\n        -10.9046630859375\n      ],\n      [\n        \"▁circuit\",\n        -10.904901504516602\n      ],\n      [\n        \"▁Casino\",\n        -10.905384063720703\n      ],\n      [\n        \"07\",\n        -10.90584659576416\n      ],\n      [\n        \"▁petit\",\n        -10.905906677246094\n      ],\n      [\n        \"TV\",\n        -10.905978202819824\n      ],\n      [\n        \"level\",\n        -10.906311988830566\n      ],\n      [\n        \"▁Point\",\n        -10.906312942504883\n      ],\n      [\n        \"rau\",\n        -10.906474113464355\n      ],\n      [\n        \"▁cabinet\",\n        -10.906991958618164\n      ],\n      [\n        \"▁failed\",\n        -10.907042503356934\n      ],\n      [\n        \"▁stated\",\n        -10.907126426696777\n      ],\n      [\n        \"LA\",\n        -10.907461166381836\n      ],\n      [\n        \"▁privacy\",\n        -10.907596588134766\n      ],\n      [\n        \"vol\",\n        -10.907901763916016\n      ],\n      [\n        \"ativ\",\n        -10.908151626586914\n      ],\n      [\n        \"▁matters\",\n        -10.908210754394531\n      ],\n      [\n        \"▁Mor\",\n        -10.908555030822754\n      ],\n      [\n        \"▁Ur\",\n        -10.90860652923584\n      ],\n      [\n        \"view\",\n        -10.908968925476074\n      ],\n      [\n        \"▁consultation\",\n        -10.90921688079834\n      ],\n      [\n        \"TS\",\n        -10.909296989440918\n      ],\n      [\n        \"▁apartment\",\n        -10.909412384033203\n      ],\n      [\n        \"▁integrated\",\n        -10.909425735473633\n      ],\n      [\n        \"74\",\n        -10.909669876098633\n      ],\n      [\n        \"▁Through\",\n        -10.909710884094238\n      ],\n      [\n        \"▁kick\",\n        -10.909798622131348\n      ],\n      [\n        \"▁perioada\",\n        -10.90993881225586\n      ],\n      [\n        \"▁entirely\",\n        -10.909953117370605\n      ],\n      [\n        \"▁impossible\",\n        -10.91015911102295\n      ],\n      [\n        \"▁consideration\",\n        -10.910268783569336\n      ],\n      [\n        \"▁Alt\",\n        -10.91054916381836\n      ],\n      [\n        \"▁Come\",\n        -10.911089897155762\n      ],\n      [\n        \"▁outstanding\",\n        -10.911276817321777\n      ],\n      [\n        \"83\",\n        -10.911727905273438\n      ],\n      [\n        \"▁prezent\",\n        -10.911859512329102\n      ],\n      [\n        \"▁Local\",\n        -10.911993980407715\n      ],\n      [\n        \"▁Camp\",\n        -10.912056922912598\n      ],\n      [\n        \"▁bear\",\n        -10.912067413330078\n      ],\n      [\n        \"enden\",\n        -10.912262916564941\n      ],\n      [\n        \"life\",\n        -10.91236686706543\n      ],\n      [\n        \"▁Haus\",\n        -10.912516593933105\n      ],\n      [\n        \"▁William\",\n        -10.912644386291504\n      ],\n      [\n        \"“,\",\n        -10.912665367126465\n      ],\n      [\n        \"▁Instagram\",\n        -10.91285514831543\n      ],\n      [\n        \"▁solve\",\n        -10.913195610046387\n      ],\n      [\n        \"▁Ze\",\n        -10.913431167602539\n      ],\n      [\n        \"▁everyday\",\n        -10.91357135772705\n      ],\n      [\n        \"bla\",\n        -10.913615226745605\n      ],\n      [\n        \"eng\",\n        -10.913662910461426\n      ],\n      [\n        \"ough\",\n        -10.914246559143066\n      ],\n      [\n        \"84\",\n        -10.914483070373535\n      ],\n      [\n        \"?\\\"\",\n        -10.914599418640137\n      ],\n      [\n        \"rely\",\n        -10.91476821899414\n      ],\n      [\n        \"TH\",\n        -10.914841651916504\n      ],\n      [\n        \"lang\",\n        -10.91511058807373\n      ],\n      [\n        \"82\",\n        -10.915817260742188\n      ],\n      [\n        \"▁removal\",\n        -10.91589641571045\n      ],\n      [\n        \"ală\",\n        -10.915956497192383\n      ],\n      [\n        \"▁circumstances\",\n        -10.916097640991211\n      ],\n      [\n        \"ente\",\n        -10.91622257232666\n      ],\n      [\n        \"▁lieu\",\n        -10.91645336151123\n      ],\n      [\n        \"▁2016.\",\n        -10.91710376739502\n      ],\n      [\n        \"▁ales\",\n        -10.917342185974121\n      ],\n      [\n        \"▁pure\",\n        -10.917482376098633\n      ],\n      [\n        \"▁choosing\",\n        -10.917590141296387\n      ],\n      [\n        \"▁Russia\",\n        -10.917698860168457\n      ],\n      [\n        \"amp\",\n        -10.917703628540039\n      ],\n      [\n        \"▁Santa\",\n        -10.91788387298584\n      ],\n      [\n        \"▁happening\",\n        -10.918203353881836\n      ],\n      [\n        \"▁crew\",\n        -10.91822338104248\n      ],\n      [\n        \"▁lei\",\n        -10.91855239868164\n      ],\n      [\n        \"IP\",\n        -10.91858196258545\n      ],\n      [\n        \"RO\",\n        -10.919425964355469\n      ],\n      [\n        \"▁resort\",\n        -10.919514656066895\n      ],\n      [\n        \"ened\",\n        -10.919689178466797\n      ],\n      [\n        \"MB\",\n        -10.920031547546387\n      ],\n      [\n        \"▁styles\",\n        -10.920052528381348\n      ],\n      [\n        \"▁dernier\",\n        -10.920533180236816\n      ],\n      [\n        \"uck\",\n        -10.920699119567871\n      ],\n      [\n        \"▁Guide\",\n        -10.920710563659668\n      ],\n      [\n        \"fic\",\n        -10.92096996307373\n      ],\n      [\n        \"▁fitness\",\n        -10.921977996826172\n      ],\n      [\n        \"▁healthcare\",\n        -10.92223072052002\n      ],\n      [\n        \"mol\",\n        -10.92237663269043\n      ],\n      [\n        \"▁vis\",\n        -10.922721862792969\n      ],\n      [\n        \"▁atmosphere\",\n        -10.922972679138184\n      ],\n      [\n        \"▁motion\",\n        -10.922989845275879\n      ],\n      [\n        \"▁closer\",\n        -10.923114776611328\n      ],\n      [\n        \"▁SA\",\n        -10.92335319519043\n      ],\n      [\n        \"▁default\",\n        -10.923371315002441\n      ],\n      [\n        \"▁architecture\",\n        -10.923471450805664\n      ],\n      [\n        \"iile\",\n        -10.923528671264648\n      ],\n      [\n        \"zel\",\n        -10.923675537109375\n      ],\n      [\n        \"cla\",\n        -10.92387866973877\n      ],\n      [\n        \"OP\",\n        -10.924382209777832\n      ],\n      [\n        \"▁west\",\n        -10.924965858459473\n      ],\n      [\n        \"▁Energy\",\n        -10.925613403320312\n      ],\n      [\n        \"▁positions\",\n        -10.925777435302734\n      ],\n      [\n        \"▁contrast\",\n        -10.925885200500488\n      ],\n      [\n        \"▁serves\",\n        -10.92605972290039\n      ],\n      [\n        \"cup\",\n        -10.926340103149414\n      ],\n      [\n        \"▁rose\",\n        -10.926485061645508\n      ],\n      [\n        \"pers\",\n        -10.92664623260498\n      ],\n      [\n        \"▁noise\",\n        -10.926846504211426\n      ],\n      [\n        \"mont\",\n        -10.92690658569336\n      ],\n      [\n        \"#\",\n        -10.927061080932617\n      ],\n      [\n        \"lies\",\n        -10.927326202392578\n      ],\n      [\n        \"pat\",\n        -10.927718162536621\n      ],\n      [\n        \"IC\",\n        -10.927956581115723\n      ],\n      [\n        \"arc\",\n        -10.927989959716797\n      ],\n      [\n        \"▁winner\",\n        -10.928524017333984\n      ],\n      [\n        \"tent\",\n        -10.928732872009277\n      ],\n      [\n        \"▁Preis\",\n        -10.929106712341309\n      ],\n      [\n        \"▁vin\",\n        -10.929254531860352\n      ],\n      [\n        \"blo\",\n        -10.92929458618164\n      ],\n      [\n        \"ție\",\n        -10.929520606994629\n      ],\n      [\n        \"▁OR\",\n        -10.930315017700195\n      ],\n      [\n        \"▁Buch\",\n        -10.930798530578613\n      ],\n      [\n        \"▁nearby\",\n        -10.931190490722656\n      ],\n      [\n        \"▁meetings\",\n        -10.931290626525879\n      ],\n      [\n        \"▁48\",\n        -10.931465148925781\n      ],\n      [\n        \"▁quand\",\n        -10.93152904510498\n      ],\n      [\n        \"▁usual\",\n        -10.931936264038086\n      ],\n      [\n        \"▁weitere\",\n        -10.932539939880371\n      ],\n      [\n        \"▁caught\",\n        -10.932571411132812\n      ],\n      [\n        \"▁issued\",\n        -10.932626724243164\n      ],\n      [\n        \"ști\",\n        -10.932896614074707\n      ],\n      [\n        \"upcoming\",\n        -10.933232307434082\n      ],\n      [\n        \"▁agreed\",\n        -10.933233261108398\n      ],\n      [\n        \"place\",\n        -10.933353424072266\n      ],\n      [\n        \"▁Brand\",\n        -10.93344497680664\n      ],\n      [\n        \"▁relation\",\n        -10.933969497680664\n      ],\n      [\n        \"▁atât\",\n        -10.934090614318848\n      ],\n      [\n        \"▁Tre\",\n        -10.934176445007324\n      ],\n      [\n        \"▁lors\",\n        -10.934438705444336\n      ],\n      [\n        \"▁adopt\",\n        -10.934452056884766\n      ],\n      [\n        \"▁celui\",\n        -10.93458366394043\n      ],\n      [\n        \"cken\",\n        -10.93505859375\n      ],\n      [\n        \"▁partnership\",\n        -10.935284614562988\n      ],\n      [\n        \"?”\",\n        -10.935376167297363\n      ],\n      [\n        \"▁ba\",\n        -10.935746192932129\n      ],\n      [\n        \"▁ID\",\n        -10.935832023620605\n      ],\n      [\n        \"▁consistent\",\n        -10.935835838317871\n      ],\n      [\n        \"▁Ya\",\n        -10.935941696166992\n      ],\n      [\n        \"▁Academy\",\n        -10.936182022094727\n      ],\n      [\n        \"cial\",\n        -10.936230659484863\n      ],\n      [\n        \"1%\",\n        -10.936366081237793\n      ],\n      [\n        \"▁mise\",\n        -10.936684608459473\n      ],\n      [\n        \"▁gute\",\n        -10.936728477478027\n      ],\n      [\n        \"gli\",\n        -10.936939239501953\n      ],\n      [\n        \"▁Bu\",\n        -10.937679290771484\n      ],\n      [\n        \"▁reduction\",\n        -10.937917709350586\n      ],\n      [\n        \"acy\",\n        -10.938126564025879\n      ],\n      [\n        \"aga\",\n        -10.938161849975586\n      ],\n      [\n        \"▁Sc\",\n        -10.938273429870605\n      ],\n      [\n        \"▁Informationen\",\n        -10.938308715820312\n      ],\n      [\n        \"▁kommen\",\n        -10.938352584838867\n      ],\n      [\n        \"press\",\n        -10.93837833404541\n      ],\n      [\n        \"▁bridge\",\n        -10.938379287719727\n      ],\n      [\n        \"▁qualified\",\n        -10.938671112060547\n      ],\n      [\n        \"position\",\n        -10.938821792602539\n      ],\n      [\n        \"▁combat\",\n        -10.938933372497559\n      ],\n      [\n        \"!\\\"\",\n        -10.938993453979492\n      ],\n      [\n        \"eva\",\n        -10.939217567443848\n      ],\n      [\n        \"oase\",\n        -10.939380645751953\n      ],\n      [\n        \"▁inner\",\n        -10.939410209655762\n      ],\n      [\n        \"▁loans\",\n        -10.939720153808594\n      ],\n      [\n        \"made\",\n        -10.939786911010742\n      ],\n      [\n        \"▁Mexico\",\n        -10.93993091583252\n      ],\n      [\n        \"▁formal\",\n        -10.940092086791992\n      ],\n      [\n        \"▁fell\",\n        -10.94021987915039\n      ],\n      [\n        \"91\",\n        -10.940524101257324\n      ],\n      [\n        \"▁campus\",\n        -10.9407320022583\n      ],\n      [\n        \"ienne\",\n        -10.940869331359863\n      ],\n      [\n        \"▁framework\",\n        -10.94105339050293\n      ],\n      [\n        \"ncing\",\n        -10.941157341003418\n      ],\n      [\n        \"▁Para\",\n        -10.941222190856934\n      ],\n      [\n        \"▁password\",\n        -10.941298484802246\n      ],\n      [\n        \"▁sei\",\n        -10.941422462463379\n      ],\n      [\n        \"▁Cross\",\n        -10.941532135009766\n      ],\n      [\n        \"▁Ten\",\n        -10.941873550415039\n      ],\n      [\n        \"bank\",\n        -10.941887855529785\n      ],\n      [\n        \"▁gun\",\n        -10.942000389099121\n      ],\n      [\n        \"ient\",\n        -10.942021369934082\n      ],\n      [\n        \"▁usage\",\n        -10.942176818847656\n      ],\n      [\n        \"▁(2\",\n        -10.942278861999512\n      ],\n      [\n        \"Gra\",\n        -10.942320823669434\n      ],\n      [\n        \"▁prea\",\n        -10.94253158569336\n      ],\n      [\n        \"▁Als\",\n        -10.942619323730469\n      ],\n      [\n        \"▁finance\",\n        -10.942638397216797\n      ],\n      [\n        \"tate\",\n        -10.942665100097656\n      ],\n      [\n        \"ition\",\n        -10.942703247070312\n      ],\n      [\n        \"▁regulations\",\n        -10.942741394042969\n      ],\n      [\n        \"▁Professional\",\n        -10.943001747131348\n      ],\n      [\n        \"▁pl\",\n        -10.94336986541748\n      ],\n      [\n        \"▁SEO\",\n        -10.943472862243652\n      ],\n      [\n        \"▁trecut\",\n        -10.943487167358398\n      ],\n      [\n        \"▁aller\",\n        -10.943509101867676\n      ],\n      [\n        \"▁violence\",\n        -10.943986892700195\n      ],\n      [\n        \"▁membership\",\n        -10.944117546081543\n      ],\n      [\n        \"▁picked\",\n        -10.944162368774414\n      ],\n      [\n        \"▁collected\",\n        -10.9443359375\n      ],\n      [\n        \"▁extended\",\n        -10.944449424743652\n      ],\n      [\n        \"▁religious\",\n        -10.944661140441895\n      ],\n      [\n        \"▁salle\",\n        -10.944767951965332\n      ],\n      [\n        \"RA\",\n        -10.944781303405762\n      ],\n      [\n        \"▁blend\",\n        -10.945232391357422\n      ],\n      [\n        \"▁Min\",\n        -10.94532299041748\n      ],\n      [\n        \"kal\",\n        -10.945887565612793\n      ],\n      [\n        \"▁featuring\",\n        -10.945902824401855\n      ],\n      [\n        \"▁researchers\",\n        -10.946263313293457\n      ],\n      [\n        \"▁Search\",\n        -10.946558952331543\n      ],\n      [\n        \"CE\",\n        -10.946675300598145\n      ],\n      [\n        \"▁recognized\",\n        -10.94682502746582\n      ],\n      [\n        \"▁semi\",\n        -10.94692611694336\n      ],\n      [\n        \"▁exposure\",\n        -10.94718074798584\n      ],\n      [\n        \"grew\",\n        -10.947466850280762\n      ],\n      [\n        \"▁candidate\",\n        -10.948250770568848\n      ],\n      [\n        \"▁shares\",\n        -10.948908805847168\n      ],\n      [\n        \"▁edit\",\n        -10.949745178222656\n      ],\n      [\n        \"CS\",\n        -10.949905395507812\n      ],\n      [\n        \"▁Cl\",\n        -10.950240135192871\n      ],\n      [\n        \"▁Enjoy\",\n        -10.951438903808594\n      ],\n      [\n        \"▁hurt\",\n        -10.951482772827148\n      ],\n      [\n        \"▁bottle\",\n        -10.951593399047852\n      ],\n      [\n        \"▁Buy\",\n        -10.95159912109375\n      ],\n      [\n        \"▁superior\",\n        -10.952286720275879\n      ],\n      [\n        \"▁missed\",\n        -10.952424049377441\n      ],\n      [\n        \"▁workshop\",\n        -10.952433586120605\n      ],\n      [\n        \"action\",\n        -10.952437400817871\n      ],\n      [\n        \"ple\",\n        -10.952699661254883\n      ],\n      [\n        \"▁Schul\",\n        -10.952814102172852\n      ],\n      [\n        \"▁houses\",\n        -10.953080177307129\n      ],\n      [\n        \"▁2017,\",\n        -10.953569412231445\n      ],\n      [\n        \"▁killed\",\n        -10.953750610351562\n      ],\n      [\n        \"▁calendar\",\n        -10.954306602478027\n      ],\n      [\n        \"▁Mike\",\n        -10.954597473144531\n      ],\n      [\n        \"FA\",\n        -10.954627990722656\n      ],\n      [\n        \"nut\",\n        -10.95487117767334\n      ],\n      [\n        \"▁establish\",\n        -10.955140113830566\n      ],\n      [\n        \"▁alcohol\",\n        -10.95514965057373\n      ],\n      [\n        \"▁closely\",\n        -10.955170631408691\n      ],\n      [\n        \"▁MA\",\n        -10.955381393432617\n      ],\n      [\n        \"pul\",\n        -10.955389022827148\n      ],\n      [\n        \"▁defined\",\n        -10.955666542053223\n      ],\n      [\n        \"aires\",\n        -10.955692291259766\n      ],\n      [\n        \"▁Shi\",\n        -10.955703735351562\n      ],\n      [\n        \"▁plays\",\n        -10.956303596496582\n      ],\n      [\n        \"▁sister\",\n        -10.95690631866455\n      ],\n      [\n        \"▁cable\",\n        -10.957179069519043\n      ],\n      [\n        \"▁desk\",\n        -10.957215309143066\n      ],\n      [\n        \"▁apoi\",\n        -10.957738876342773\n      ],\n      [\n        \"▁identity\",\n        -10.95785140991211\n      ],\n      [\n        \"▁stars\",\n        -10.957931518554688\n      ],\n      [\n        \"▁fata\",\n        -10.958008766174316\n      ],\n      [\n        \"▁obvious\",\n        -10.958330154418945\n      ],\n      [\n        \"▁dental\",\n        -10.95843505859375\n      ],\n      [\n        \"AM\",\n        -10.958802223205566\n      ],\n      [\n        \"▁sharp\",\n        -10.95881175994873\n      ],\n      [\n        \"duc\",\n        -10.959053993225098\n      ],\n      [\n        \"▁manufacturer\",\n        -10.95914077758789\n      ],\n      [\n        \"!)\",\n        -10.959270477294922\n      ],\n      [\n        \"▁objects\",\n        -10.959720611572266\n      ],\n      [\n        \"▁Ag\",\n        -10.959989547729492\n      ],\n      [\n        \"referred\",\n        -10.960195541381836\n      ],\n      [\n        \"▁Ak\",\n        -10.960308074951172\n      ],\n      [\n        \"burg\",\n        -10.960360527038574\n      ],\n      [\n        \"▁nouveau\",\n        -10.960854530334473\n      ],\n      [\n        \"▁Pal\",\n        -10.960994720458984\n      ],\n      [\n        \"▁Arbeits\",\n        -10.961280822753906\n      ],\n      [\n        \"▁personally\",\n        -10.961288452148438\n      ],\n      [\n        \"▁Dé\",\n        -10.961292266845703\n      ],\n      [\n        \"▁import\",\n        -10.961688041687012\n      ],\n      [\n        \"▁justice\",\n        -10.961913108825684\n      ],\n      [\n        \"▁photography\",\n        -10.962705612182617\n      ],\n      [\n        \"▁portfolio\",\n        -10.962841987609863\n      ],\n      [\n        \"56\",\n        -10.96314525604248\n      ],\n      [\n        \"▁nouvelle\",\n        -10.963293075561523\n      ],\n      [\n        \"▁oven\",\n        -10.964197158813477\n      ],\n      [\n        \"▁400\",\n        -10.964272499084473\n      ],\n      [\n        \"▁mixed\",\n        -10.964395523071289\n      ],\n      [\n        \"▁relax\",\n        -10.964427947998047\n      ],\n      [\n        \"▁imp\",\n        -10.964703559875488\n      ],\n      [\n        \"▁».\",\n        -10.964734077453613\n      ],\n      [\n        \"▁mail\",\n        -10.964777946472168\n      ],\n      [\n        \"rage\",\n        -10.964861869812012\n      ],\n      [\n        \"nos\",\n        -10.964974403381348\n      ],\n      [\n        \"▁drugs\",\n        -10.965195655822754\n      ],\n      [\n        \"▁jede\",\n        -10.965211868286133\n      ],\n      [\n        \"▁einige\",\n        -10.965232849121094\n      ],\n      [\n        \"▁8.\",\n        -10.965325355529785\n      ],\n      [\n        \"ters\",\n        -10.965412139892578\n      ],\n      [\n        \"▁electrical\",\n        -10.965432167053223\n      ],\n      [\n        \"▁puis\",\n        -10.965836524963379\n      ],\n      [\n        \"▁films\",\n        -10.965903282165527\n      ],\n      [\n        \"41\",\n        -10.966036796569824\n      ],\n      [\n        \"▁moral\",\n        -10.966398239135742\n      ],\n      [\n        \"lage\",\n        -10.966402053833008\n      ],\n      [\n        \"▁spaces\",\n        -10.966415405273438\n      ],\n      [\n        \"▁Ed\",\n        -10.966462135314941\n      ],\n      [\n        \"▁classroom\",\n        -10.966588020324707\n      ],\n      [\n        \"▁große\",\n        -10.966588973999023\n      ],\n      [\n        \"▁baza\",\n        -10.966887474060059\n      ],\n      [\n        \"face\",\n        -10.967308044433594\n      ],\n      [\n        \"▁informed\",\n        -10.967333793640137\n      ],\n      [\n        \"▁improving\",\n        -10.967477798461914\n      ],\n      [\n        \"▁guidance\",\n        -10.967880249023438\n      ],\n      [\n        \"▁gallery\",\n        -10.96800708770752\n      ],\n      [\n        \"cular\",\n        -10.968046188354492\n      ],\n      [\n        \"53\",\n        -10.968094825744629\n      ],\n      [\n        \"Despite\",\n        -10.968238830566406\n      ],\n      [\n        \"▁forme\",\n        -10.968304634094238\n      ],\n      [\n        \"▁système\",\n        -10.968415260314941\n      ],\n      [\n        \"▁Win\",\n        -10.968494415283203\n      ],\n      [\n        \"▁Small\",\n        -10.968537330627441\n      ],\n      [\n        \"▁Mobile\",\n        -10.968564987182617\n      ],\n      [\n        \"▁tape\",\n        -10.968606948852539\n      ],\n      [\n        \"▁erhalten\",\n        -10.968914985656738\n      ],\n      [\n        \"▁movies\",\n        -10.968928337097168\n      ],\n      [\n        \"▁Unfortunately\",\n        -10.968963623046875\n      ],\n      [\n        \"▁Looking\",\n        -10.96945858001709\n      ],\n      [\n        \"▁guard\",\n        -10.969584465026855\n      ],\n      [\n        \"▁pr\",\n        -10.969820976257324\n      ],\n      [\n        \"▁confident\",\n        -10.96988582611084\n      ],\n      [\n        \"BA\",\n        -10.970229148864746\n      ],\n      [\n        \"bas\",\n        -10.970272064208984\n      ],\n      [\n        \"hum\",\n        -10.97050666809082\n      ],\n      [\n        \"ular\",\n        -10.9705171585083\n      ],\n      [\n        \"▁Still\",\n        -10.970593452453613\n      ],\n      [\n        \"▁flavor\",\n        -10.970656394958496\n      ],\n      [\n        \"▁boost\",\n        -10.970773696899414\n      ],\n      [\n        \"▁division\",\n        -10.970842361450195\n      ],\n      [\n        \"ising\",\n        -10.971006393432617\n      ],\n      [\n        \"▁monitoring\",\n        -10.971044540405273\n      ],\n      [\n        \"▁Sen\",\n        -10.97105884552002\n      ],\n      [\n        \"▁https\",\n        -10.971527099609375\n      ],\n      [\n        \"mainly\",\n        -10.971735000610352\n      ],\n      [\n        \"play\",\n        -10.972251892089844\n      ],\n      [\n        \"▁dynamic\",\n        -10.972357749938965\n      ],\n      [\n        \"▁coup\",\n        -10.972370147705078\n      ],\n      [\n        \"▁carpet\",\n        -10.972561836242676\n      ],\n      [\n        \"iner\",\n        -10.972846984863281\n      ],\n      [\n        \"ral\",\n        -10.97325611114502\n      ],\n      [\n        \"iser\",\n        -10.973320007324219\n      ],\n      [\n        \"RC\",\n        -10.9739990234375\n      ],\n      [\n        \"▁definition\",\n        -10.97475814819336\n      ],\n      [\n        \"▁Za\",\n        -10.974767684936523\n      ],\n      [\n        \"friendly\",\n        -10.974883079528809\n      ],\n      [\n        \"43\",\n        -10.975123405456543\n      ],\n      [\n        \"link\",\n        -10.975180625915527\n      ],\n      [\n        \"▁Multi\",\n        -10.97519302368164\n      ],\n      [\n        \"▁einmal\",\n        -10.975272178649902\n      ],\n      [\n        \"▁stopped\",\n        -10.975394248962402\n      ],\n      [\n        \"vel\",\n        -10.975456237792969\n      ],\n      [\n        \"▁ongoing\",\n        -10.975565910339355\n      ],\n      [\n        \"▁ancient\",\n        -10.976259231567383\n      ],\n      [\n        \"take\",\n        -10.976301193237305\n      ],\n      [\n        \"cia\",\n        -10.976432800292969\n      ],\n      [\n        \"▁USB\",\n        -10.976545333862305\n      ],\n      [\n        \"▁attorney\",\n        -10.976866722106934\n      ],\n      [\n        \"▁slot\",\n        -10.976866722106934\n      ],\n      [\n        \"▁Line\",\n        -10.97693157196045\n      ],\n      [\n        \"rice\",\n        -10.977087020874023\n      ],\n      [\n        \"ify\",\n        -10.977520942687988\n      ],\n      [\n        \"ó\",\n        -10.978260040283203\n      ],\n      [\n        \"▁flash\",\n        -10.978483200073242\n      ],\n      [\n        \"▁extension\",\n        -10.978555679321289\n      ],\n      [\n        \"▁Ende\",\n        -10.979022979736328\n      ],\n      [\n        \"▁powder\",\n        -10.979114532470703\n      ],\n      [\n        \"ească\",\n        -10.979143142700195\n      ],\n      [\n        \"03\",\n        -10.979327201843262\n      ],\n      [\n        \"▁normally\",\n        -10.979416847229004\n      ],\n      [\n        \"▁pun\",\n        -10.980108261108398\n      ],\n      [\n        \"viewed\",\n        -10.980138778686523\n      ],\n      [\n        \"ssen\",\n        -10.980896949768066\n      ],\n      [\n        \"ache\",\n        -10.981121063232422\n      ],\n      [\n        \"ește\",\n        -10.98122787475586\n      ],\n      [\n        \"▁PA\",\n        -10.981266021728516\n      ],\n      [\n        \"FI\",\n        -10.981945991516113\n      ],\n      [\n        \"▁Frank\",\n        -10.98198127746582\n      ],\n      [\n        \"▁apa\",\n        -10.98242473602295\n      ],\n      [\n        \"▁coast\",\n        -10.982614517211914\n      ],\n      [\n        \"▁boy\",\n        -10.982665061950684\n      ],\n      [\n        \"lim\",\n        -10.982902526855469\n      ],\n      [\n        \"▁putin\",\n        -10.983194351196289\n      ],\n      [\n        \"▁script\",\n        -10.983332633972168\n      ],\n      [\n        \"▁noticed\",\n        -10.9837007522583\n      ],\n      [\n        \"▁dealing\",\n        -10.983922004699707\n      ],\n      [\n        \"▁Trans\",\n        -10.984100341796875\n      ],\n      [\n        \"▁border\",\n        -10.984447479248047\n      ],\n      [\n        \"▁reputation\",\n        -10.984657287597656\n      ],\n      [\n        \"-2\",\n        -10.984662055969238\n      ],\n      [\n        \"HS\",\n        -10.984707832336426\n      ],\n      [\n        \"▁supports\",\n        -10.984724998474121\n      ],\n      [\n        \"▁horse\",\n        -10.985146522521973\n      ],\n      [\n        \"nik\",\n        -10.98520565032959\n      ],\n      [\n        \"▁clothes\",\n        -10.985234260559082\n      ],\n      [\n        \"▁Card\",\n        -10.985612869262695\n      ],\n      [\n        \"▁relief\",\n        -10.98595905303955\n      ],\n      [\n        \"▁Visit\",\n        -10.986259460449219\n      ],\n      [\n        \"▁luni\",\n        -10.986593246459961\n      ],\n      [\n        \"81\",\n        -10.986693382263184\n      ],\n      [\n        \"qua\",\n        -10.986945152282715\n      ],\n      [\n        \"▁Comp\",\n        -10.98697280883789\n      ],\n      [\n        \"▁investigation\",\n        -10.987137794494629\n      ],\n      [\n        \"▁depth\",\n        -10.987598419189453\n      ],\n      [\n        \"▁earned\",\n        -10.987709045410156\n      ],\n      [\n        \"▁Ren\",\n        -10.988090515136719\n      ],\n      [\n        \"▁Dumnezeu\",\n        -10.988107681274414\n      ],\n      [\n        \"▁Joe\",\n        -10.988210678100586\n      ],\n      [\n        \"▁goods\",\n        -10.988288879394531\n      ],\n      [\n        \"▁Vol\",\n        -10.988686561584473\n      ],\n      [\n        \"▁certified\",\n        -10.989118576049805\n      ],\n      [\n        \"▁favor\",\n        -10.989326477050781\n      ],\n      [\n        \"▁Scott\",\n        -10.989599227905273\n      ],\n      [\n        \"▁protest\",\n        -10.989802360534668\n      ],\n      [\n        \"▁pace\",\n        -10.989803314208984\n      ],\n      [\n        \"▁Angeles\",\n        -10.990368843078613\n      ],\n      [\n        \"inch\",\n        -10.99050521850586\n      ],\n      [\n        \"▁charged\",\n        -10.99052619934082\n      ],\n      [\n        \"code\",\n        -10.990968704223633\n      ],\n      [\n        \"▁convenient\",\n        -10.99138355255127\n      ],\n      [\n        \"▁Nord\",\n        -10.991556167602539\n      ],\n      [\n        \"▁yesterday\",\n        -10.991691589355469\n      ],\n      [\n        \"Dacă\",\n        -10.99169635772705\n      ],\n      [\n        \"▁Travel\",\n        -10.991786003112793\n      ],\n      [\n        \"▁kid\",\n        -10.991941452026367\n      ],\n      [\n        \"ction\",\n        -10.991986274719238\n      ],\n      [\n        \"▁groupe\",\n        -10.992770195007324\n      ],\n      [\n        \"pu\",\n        -10.993056297302246\n      ],\n      [\n        \"bzw\",\n        -10.993196487426758\n      ],\n      [\n        \"▁mixture\",\n        -10.993513107299805\n      ],\n      [\n        \"▁Farm\",\n        -10.993715286254883\n      ],\n      [\n        \"▁acces\",\n        -10.993939399719238\n      ],\n      [\n        \"matic\",\n        -10.993950843811035\n      ],\n      [\n        \"▁comparison\",\n        -10.994006156921387\n      ],\n      [\n        \"reich\",\n        -10.994095802307129\n      ],\n      [\n        \"pet\",\n        -10.994502067565918\n      ],\n      [\n        \"▁lit\",\n        -10.994685173034668\n      ],\n      [\n        \"▁organized\",\n        -10.99476432800293\n      ],\n      [\n        \"just\",\n        -10.995564460754395\n      ],\n      [\n        \"▁fellow\",\n        -10.996004104614258\n      ],\n      [\n        \"Ver\",\n        -10.996209144592285\n      ],\n      [\n        \"▁trends\",\n        -10.99622631072998\n      ],\n      [\n        \"▁evaluation\",\n        -10.99626636505127\n      ],\n      [\n        \"feld\",\n        -10.99639892578125\n      ],\n      [\n        \"▁Pu\",\n        -10.99671459197998\n      ],\n      [\n        \"▁equipped\",\n        -10.99727725982666\n      ],\n      [\n        \"▁catre\",\n        -10.997278213500977\n      ],\n      [\n        \"eck\",\n        -10.997369766235352\n      ],\n      [\n        \"▁facing\",\n        -10.997998237609863\n      ],\n      [\n        \"▁instrument\",\n        -10.998361587524414\n      ],\n      [\n        \"▁pleased\",\n        -10.998507499694824\n      ],\n      [\n        \"▁tap\",\n        -10.998818397521973\n      ],\n      [\n        \"dom\",\n        -10.998826026916504\n      ],\n      [\n        \"▁pump\",\n        -10.999384880065918\n      ],\n      [\n        \"▁functional\",\n        -10.999429702758789\n      ],\n      [\n        \"▁authority\",\n        -10.999455451965332\n      ],\n      [\n        \"▁experiment\",\n        -10.999478340148926\n      ],\n      [\n        \"LO\",\n        -10.999529838562012\n      ],\n      [\n        \"▁scheduled\",\n        -10.999552726745605\n      ],\n      [\n        \"halt\",\n        -10.999604225158691\n      ],\n      [\n        \"▁ceiling\",\n        -10.999761581420898\n      ],\n      [\n        \"▁Step\",\n        -11.000310897827148\n      ],\n      [\n        \"▁orders\",\n        -11.00032901763916\n      ],\n      [\n        \"▁speech\",\n        -11.001046180725098\n      ],\n      [\n        \"▁stands\",\n        -11.001119613647461\n      ],\n      [\n        \"▁disc\",\n        -11.001920700073242\n      ],\n      [\n        \"▁rec\",\n        -11.001935958862305\n      ],\n      [\n        \"▁Text\",\n        -11.00243854522705\n      ],\n      [\n        \"▁banks\",\n        -11.00294017791748\n      ],\n      [\n        \"▁oameni\",\n        -11.003045082092285\n      ],\n      [\n        \"▁communications\",\n        -11.003194808959961\n      ],\n      [\n        \"trag\",\n        -11.003307342529297\n      ],\n      [\n        \"▁trail\",\n        -11.003803253173828\n      ],\n      [\n        \"AN\",\n        -11.00426197052002\n      ],\n      [\n        \"▁Federal\",\n        -11.004467964172363\n      ],\n      [\n        \"▁quote\",\n        -11.00455093383789\n      ],\n      [\n        \"▁spus\",\n        -11.004620552062988\n      ],\n      [\n        \"▁managing\",\n        -11.004990577697754\n      ],\n      [\n        \"▁booking\",\n        -11.00505256652832\n      ],\n      [\n        \"▁Blog\",\n        -11.005669593811035\n      ],\n      [\n        \"▁tank\",\n        -11.005681991577148\n      ],\n      [\n        \"pon\",\n        -11.005804061889648\n      ],\n      [\n        \"GE\",\n        -11.00582218170166\n      ],\n      [\n        \"▁fiscal\",\n        -11.005871772766113\n      ],\n      [\n        \"▁satisfaction\",\n        -11.006044387817383\n      ],\n      [\n        \"cre\",\n        -11.00614070892334\n      ],\n      [\n        \"▁protected\",\n        -11.006494522094727\n      ],\n      [\n        \"▁enfants\",\n        -11.006782531738281\n      ],\n      [\n        \"▁dort\",\n        -11.007554054260254\n      ],\n      [\n        \"▁Mel\",\n        -11.008041381835938\n      ],\n      [\n        \"▁turns\",\n        -11.00804615020752\n      ],\n      [\n        \"▁savings\",\n        -11.008106231689453\n      ],\n      [\n        \"▁voir\",\n        -11.008358001708984\n      ],\n      [\n        \"▁Boston\",\n        -11.008394241333008\n      ],\n      [\n        \"▁debate\",\n        -11.008469581604004\n      ],\n      [\n        \"▁SO\",\n        -11.008857727050781\n      ],\n      [\n        \"▁tables\",\n        -11.009193420410156\n      ],\n      [\n        \"▁honest\",\n        -11.009210586547852\n      ],\n      [\n        \"mate\",\n        -11.009283065795898\n      ],\n      [\n        \"▁chart\",\n        -11.0094633102417\n      ],\n      [\n        \"decât\",\n        -11.009682655334473\n      ],\n      [\n        \"▁Radio\",\n        -11.009685516357422\n      ],\n      [\n        \"54\",\n        -11.00986385345459\n      ],\n      [\n        \"▁vol\",\n        -11.010008811950684\n      ],\n      [\n        \"last\",\n        -11.010148048400879\n      ],\n      [\n        \"▁tall\",\n        -11.010408401489258\n      ],\n      [\n        \"▁Should\",\n        -11.010489463806152\n      ],\n      [\n        \"▁sink\",\n        -11.010525703430176\n      ],\n      [\n        \"▁Right\",\n        -11.010527610778809\n      ],\n      [\n        \"▁male\",\n        -11.010720252990723\n      ],\n      [\n        \"▁Modern\",\n        -11.010753631591797\n      ],\n      [\n        \"▁indeed\",\n        -11.010886192321777\n      ],\n      [\n        \"▁Garden\",\n        -11.011139869689941\n      ],\n      [\n        \"▁Mod\",\n        -11.011307716369629\n      ],\n      [\n        \"▁turning\",\n        -11.0115327835083\n      ],\n      [\n        \"▁inches\",\n        -11.011557579040527\n      ],\n      [\n        \"▁Police\",\n        -11.01183795928955\n      ],\n      [\n        \"▁Pay\",\n        -11.012016296386719\n      ],\n      [\n        \"UE\",\n        -11.0126371383667\n      ],\n      [\n        \"mé\",\n        -11.012652397155762\n      ],\n      [\n        \"EE\",\n        -11.013046264648438\n      ],\n      [\n        \"▁cookies\",\n        -11.013116836547852\n      ],\n      [\n        \"rip\",\n        -11.013351440429688\n      ],\n      [\n        \"▁Motor\",\n        -11.01352310180664\n      ],\n      [\n        \"▁lung\",\n        -11.01379680633545\n      ],\n      [\n        \"▁Ap\",\n        -11.013995170593262\n      ],\n      [\n        \"▁sustainable\",\n        -11.014066696166992\n      ],\n      [\n        \"▁instant\",\n        -11.014240264892578\n      ],\n      [\n        \"▁Rose\",\n        -11.014464378356934\n      ],\n      [\n        \"▁Carolina\",\n        -11.014906883239746\n      ],\n      [\n        \"▁Help\",\n        -11.014969825744629\n      ],\n      [\n        \"IE\",\n        -11.01535701751709\n      ],\n      [\n        \"▁Jersey\",\n        -11.015522956848145\n      ],\n      [\n        \"▁Spanish\",\n        -11.015586853027344\n      ],\n      [\n        \"▁wheel\",\n        -11.015660285949707\n      ],\n      [\n        \"▁fishing\",\n        -11.0158109664917\n      ],\n      [\n        \"gram\",\n        -11.015937805175781\n      ],\n      [\n        \"▁ST\",\n        -11.016227722167969\n      ],\n      [\n        \"▁Nov\",\n        -11.01632022857666\n      ],\n      [\n        \"▁reporting\",\n        -11.016362190246582\n      ],\n      [\n        \"ked\",\n        -11.016467094421387\n      ],\n      [\n        \"▁Leben\",\n        -11.016557693481445\n      ],\n      [\n        \"▁organisation\",\n        -11.016843795776367\n      ],\n      [\n        \"▁tiny\",\n        -11.017144203186035\n      ],\n      [\n        \"▁Alex\",\n        -11.017236709594727\n      ],\n      [\n        \"▁obtained\",\n        -11.017255783081055\n      ],\n      [\n        \"▁Acest\",\n        -11.017367362976074\n      ],\n      [\n        \"▁dangerous\",\n        -11.01749038696289\n      ],\n      [\n        \"utter\",\n        -11.017624855041504\n      ],\n      [\n        \"▁rev\",\n        -11.01801586151123\n      ],\n      [\n        \"Un\",\n        -11.018242835998535\n      ],\n      [\n        \"▁revealed\",\n        -11.018356323242188\n      ],\n      [\n        \"▁decade\",\n        -11.018709182739258\n      ],\n      [\n        \"▁possibility\",\n        -11.01945686340332\n      ],\n      [\n        \"service\",\n        -11.019577980041504\n      ],\n      [\n        \"è\",\n        -11.01966667175293\n      ],\n      [\n        \"▁Chief\",\n        -11.019674301147461\n      ],\n      [\n        \"▁Durch\",\n        -11.019795417785645\n      ],\n      [\n        \"▁cadre\",\n        -11.019843101501465\n      ],\n      [\n        \"▁wearing\",\n        -11.019845008850098\n      ],\n      [\n        \"sized\",\n        -11.01988410949707\n      ],\n      [\n        \"LY\",\n        -11.01989459991455\n      ],\n      [\n        \"▁unser\",\n        -11.019963264465332\n      ],\n      [\n        \"▁2016,\",\n        -11.019988059997559\n      ],\n      [\n        \"▁fail\",\n        -11.020028114318848\n      ],\n      [\n        \"iques\",\n        -11.020115852355957\n      ],\n      [\n        \"▁Angel\",\n        -11.020315170288086\n      ],\n      [\n        \"▁transportation\",\n        -11.020364761352539\n      ],\n      [\n        \"▁dates\",\n        -11.020395278930664\n      ],\n      [\n        \"▁danger\",\n        -11.020731925964355\n      ],\n      [\n        \"▁forum\",\n        -11.020828247070312\n      ],\n      [\n        \"zug\",\n        -11.020885467529297\n      ],\n      [\n        \"▁filed\",\n        -11.021199226379395\n      ],\n      [\n        \"loc\",\n        -11.021201133728027\n      ],\n      [\n        \"éri\",\n        -11.021234512329102\n      ],\n      [\n        \"tribu\",\n        -11.021393775939941\n      ],\n      [\n        \"▁entered\",\n        -11.021639823913574\n      ],\n      [\n        \"▁porte\",\n        -11.021928787231445\n      ],\n      [\n        \"▁arts\",\n        -11.021979331970215\n      ],\n      [\n        \"▁reform\",\n        -11.022001266479492\n      ],\n      [\n        \"▁Main\",\n        -11.022101402282715\n      ],\n      [\n        \"▁dir\",\n        -11.022111892700195\n      ],\n      [\n        \"▁approval\",\n        -11.022465705871582\n      ],\n      [\n        \"▁juice\",\n        -11.022750854492188\n      ],\n      [\n        \"vier\",\n        -11.022771835327148\n      ],\n      [\n        \"▁nivel\",\n        -11.02318000793457\n      ],\n      [\n        \"▁returns\",\n        -11.023423194885254\n      ],\n      [\n        \"▁formed\",\n        -11.023723602294922\n      ],\n      [\n        \"▁combine\",\n        -11.02436351776123\n      ],\n      [\n        \"▁cours\",\n        -11.024392127990723\n      ],\n      [\n        \"▁Standard\",\n        -11.024463653564453\n      ],\n      [\n        \"▁certification\",\n        -11.024677276611328\n      ],\n      [\n        \"escu\",\n        -11.024996757507324\n      ],\n      [\n        \"▁achieved\",\n        -11.025278091430664\n      ],\n      [\n        \"▁Model\",\n        -11.025280952453613\n      ],\n      [\n        \"rul\",\n        -11.025404930114746\n      ],\n      [\n        \"▁Tage\",\n        -11.025530815124512\n      ],\n      [\n        \"▁injuries\",\n        -11.02560806274414\n      ],\n      [\n        \"▁Sal\",\n        -11.025671005249023\n      ],\n      [\n        \"▁expenses\",\n        -11.025887489318848\n      ],\n      [\n        \"▁cet\",\n        -11.026009559631348\n      ],\n      [\n        \"▁taxes\",\n        -11.026028633117676\n      ],\n      [\n        \"diesen\",\n        -11.02626895904541\n      ],\n      [\n        \"▁fairly\",\n        -11.026638984680176\n      ],\n      [\n        \"▁Access\",\n        -11.026866912841797\n      ],\n      [\n        \"wind\",\n        -11.027122497558594\n      ],\n      [\n        \"IM\",\n        -11.027252197265625\n      ],\n      [\n        \"ense\",\n        -11.027548789978027\n      ],\n      [\n        \"▁hang\",\n        -11.027957916259766\n      ],\n      [\n        \"▁citizens\",\n        -11.028020858764648\n      ],\n      [\n        \"3%\",\n        -11.028101921081543\n      ],\n      [\n        \"lum\",\n        -11.028268814086914\n      ],\n      [\n        \"▁discussed\",\n        -11.028326034545898\n      ],\n      [\n        \"AC\",\n        -11.02841854095459\n      ],\n      [\n        \"‘\",\n        -11.0286865234375\n      ],\n      [\n        \"▁Sol\",\n        -11.028698921203613\n      ],\n      [\n        \"06\",\n        -11.028816223144531\n      ],\n      [\n        \"stellen\",\n        -11.029170989990234\n      ],\n      [\n        \"▁participation\",\n        -11.02917194366455\n      ],\n      [\n        \"▁Box\",\n        -11.029200553894043\n      ],\n      [\n        \"▁bieten\",\n        -11.029687881469727\n      ],\n      [\n        \"▁Louis\",\n        -11.029730796813965\n      ],\n      [\n        \"▁lessons\",\n        -11.029789924621582\n      ],\n      [\n        \"▁visible\",\n        -11.029966354370117\n      ],\n      [\n        \"▁Cam\",\n        -11.030128479003906\n      ],\n      [\n        \"▁Ban\",\n        -11.03053092956543\n      ],\n      [\n        \"▁Far\",\n        -11.03060245513916\n      ],\n      [\n        \"▁travers\",\n        -11.030759811401367\n      ],\n      [\n        \"▁telling\",\n        -11.030808448791504\n      ],\n      [\n        \"▁magic\",\n        -11.030855178833008\n      ],\n      [\n        \"▁Night\",\n        -11.031316757202148\n      ],\n      [\n        \"▁judge\",\n        -11.031400680541992\n      ],\n      [\n        \"▁Pat\",\n        -11.031482696533203\n      ],\n      [\n        \"▁Southern\",\n        -11.031901359558105\n      ],\n      [\n        \"OL\",\n        -11.031929969787598\n      ],\n      [\n        \"fully\",\n        -11.032191276550293\n      ],\n      [\n        \"▁acestea\",\n        -11.03223705291748\n      ],\n      [\n        \"▁Order\",\n        -11.032383918762207\n      ],\n      [\n        \"▁facut\",\n        -11.032523155212402\n      ],\n      [\n        \"▁Matt\",\n        -11.032600402832031\n      ],\n      [\n        \"registr\",\n        -11.03278923034668\n      ],\n      [\n        \"▁Yet\",\n        -11.032811164855957\n      ],\n      [\n        \"ß\",\n        -11.033596992492676\n      ],\n      [\n        \"▁făcut\",\n        -11.033618927001953\n      ],\n      [\n        \"▁versions\",\n        -11.033780097961426\n      ],\n      [\n        \"▁Force\",\n        -11.03396224975586\n      ],\n      [\n        \"rick\",\n        -11.034153938293457\n      ],\n      [\n        \"▁rund\",\n        -11.034563064575195\n      ],\n      [\n        \"ike\",\n        -11.034658432006836\n      ],\n      [\n        \"▁Young\",\n        -11.034675598144531\n      ],\n      [\n        \"▁ski\",\n        -11.034927368164062\n      ],\n      [\n        \"CU\",\n        -11.035385131835938\n      ],\n      [\n        \"▁Second\",\n        -11.035510063171387\n      ],\n      [\n        \"▁graduate\",\n        -11.03554916381836\n      ],\n      [\n        \"▁Bible\",\n        -11.036049842834473\n      ],\n      [\n        \"▁vary\",\n        -11.036060333251953\n      ],\n      [\n        \"▁celebration\",\n        -11.036151885986328\n      ],\n      [\n        \"▁risks\",\n        -11.036210060119629\n      ],\n      [\n        \"erii\",\n        -11.036327362060547\n      ],\n      [\n        \"rance\",\n        -11.036577224731445\n      ],\n      [\n        \"▁MP\",\n        -11.036787986755371\n      ],\n      [\n        \"▁tale\",\n        -11.036788940429688\n      ],\n      [\n        \"▁Ford\",\n        -11.037044525146484\n      ],\n      [\n        \"▁attached\",\n        -11.037278175354004\n      ],\n      [\n        \"▁Sy\",\n        -11.037312507629395\n      ],\n      [\n        \"▁Ly\",\n        -11.03765869140625\n      ],\n      [\n        \"stellung\",\n        -11.037687301635742\n      ],\n      [\n        \"▁trop\",\n        -11.0377197265625\n      ],\n      [\n        \"▁années\",\n        -11.037736892700195\n      ],\n      [\n        \"▁linked\",\n        -11.03792667388916\n      ],\n      [\n        \"pit\",\n        -11.038352012634277\n      ],\n      [\n        \"So\",\n        -11.03835391998291\n      ],\n      [\n        \"ţe\",\n        -11.038473129272461\n      ],\n      [\n        \"▁origin\",\n        -11.038509368896484\n      ],\n      [\n        \"▁boys\",\n        -11.039263725280762\n      ],\n      [\n        \"holder\",\n        -11.039352416992188\n      ],\n      [\n        \"read\",\n        -11.039461135864258\n      ],\n      [\n        \"▁relative\",\n        -11.03950023651123\n      ],\n      [\n        \"▁industries\",\n        -11.03958511352539\n      ],\n      [\n        \"making\",\n        -11.039688110351562\n      ],\n      [\n        \"▁tun\",\n        -11.039917945861816\n      ],\n      [\n        \"▁forced\",\n        -11.041061401367188\n      ],\n      [\n        \"▁Welcome\",\n        -11.041086196899414\n      ],\n      [\n        \"▁explained\",\n        -11.041138648986816\n      ],\n      [\n        \"MP\",\n        -11.041389465332031\n      ],\n      [\n        \"▁Three\",\n        -11.041613578796387\n      ],\n      [\n        \"aza\",\n        -11.041768074035645\n      ],\n      [\n        \"▁1999\",\n        -11.041924476623535\n      ],\n      [\n        \"▁erst\",\n        -11.042237281799316\n      ],\n      [\n        \"RS\",\n        -11.042623519897461\n      ],\n      [\n        \"▁attractive\",\n        -11.04279899597168\n      ],\n      [\n        \"▁visited\",\n        -11.042805671691895\n      ],\n      [\n        \"▁nom\",\n        -11.042874336242676\n      ],\n      [\n        \"▁drum\",\n        -11.042933464050293\n      ],\n      [\n        \"cast\",\n        -11.043068885803223\n      ],\n      [\n        \"ogen\",\n        -11.043105125427246\n      ],\n      [\n        \"▁tech\",\n        -11.04360294342041\n      ],\n      [\n        \"▁Comment\",\n        -11.043664932250977\n      ],\n      [\n        \"▁Little\",\n        -11.04405689239502\n      ],\n      [\n        \"▁suggested\",\n        -11.044086456298828\n      ],\n      [\n        \"▁gar\",\n        -11.044205665588379\n      ],\n      [\n        \"▁crack\",\n        -11.04458999633789\n      ],\n      [\n        \"▁shooting\",\n        -11.044676780700684\n      ],\n      [\n        \"▁Try\",\n        -11.044759750366211\n      ],\n      [\n        \"▁Remember\",\n        -11.045008659362793\n      ],\n      [\n        \"▁folks\",\n        -11.045217514038086\n      ],\n      [\n        \"▁MS\",\n        -11.045512199401855\n      ],\n      [\n        \"▁Dia\",\n        -11.04584789276123\n      ],\n      [\n        \"3)\",\n        -11.046561241149902\n      ],\n      [\n        \"arbeit\",\n        -11.04697036743164\n      ],\n      [\n        \"▁pepper\",\n        -11.047065734863281\n      ],\n      [\n        \"zz\",\n        -11.047107696533203\n      ],\n      [\n        \"▁extreme\",\n        -11.047235488891602\n      ],\n      [\n        \"▁extrem\",\n        -11.047367095947266\n      ],\n      [\n        \"▁severe\",\n        -11.047768592834473\n      ],\n      [\n        \"▁networks\",\n        -11.047882080078125\n      ],\n      [\n        \"păr\",\n        -11.047910690307617\n      ],\n      [\n        \"sent\",\n        -11.047933578491211\n      ],\n      [\n        \"▁structures\",\n        -11.048048973083496\n      ],\n      [\n        \"▁Join\",\n        -11.048078536987305\n      ],\n      [\n        \"▁privind\",\n        -11.048255920410156\n      ],\n      [\n        \"▁marriage\",\n        -11.04865837097168\n      ],\n      [\n        \"▁liegt\",\n        -11.048918724060059\n      ],\n      [\n        \"eben\",\n        -11.048995971679688\n      ],\n      [\n        \"▁produse\",\n        -11.049076080322266\n      ],\n      [\n        \"▁tested\",\n        -11.049090385437012\n      ],\n      [\n        \"▁Queen\",\n        -11.049134254455566\n      ],\n      [\n        \"▁Tax\",\n        -11.049687385559082\n      ],\n      [\n        \"rian\",\n        -11.049710273742676\n      ],\n      [\n        \"▁Problem\",\n        -11.050151824951172\n      ],\n      [\n        \"izat\",\n        -11.05023193359375\n      ],\n      [\n        \"udi\",\n        -11.050324440002441\n      ],\n      [\n        \"▁LA\",\n        -11.050718307495117\n      ],\n      [\n        \"▁afford\",\n        -11.051108360290527\n      ],\n      [\n        \"▁percentage\",\n        -11.05121898651123\n      ],\n      [\n        \"▁cute\",\n        -11.051547050476074\n      ],\n      [\n        \"▁gorgeous\",\n        -11.051891326904297\n      ],\n      [\n        \"▁indoor\",\n        -11.05190372467041\n      ],\n      [\n        \"▁configuration\",\n        -11.052103042602539\n      ],\n      [\n        \"▁immediate\",\n        -11.052303314208984\n      ],\n      [\n        \"▁exemple\",\n        -11.052450180053711\n      ],\n      [\n        \"▁Being\",\n        -11.052550315856934\n      ],\n      [\n        \"▁introduction\",\n        -11.052591323852539\n      ],\n      [\n        \"ella\",\n        -11.053206443786621\n      ],\n      [\n        \"bare\",\n        -11.053521156311035\n      ],\n      [\n        \"▁besser\",\n        -11.053539276123047\n      ],\n      [\n        \"▁Put\",\n        -11.053740501403809\n      ],\n      [\n        \"gon\",\n        -11.054248809814453\n      ],\n      [\n        \"▁Italy\",\n        -11.054259300231934\n      ],\n      [\n        \"▁Thus\",\n        -11.05435562133789\n      ],\n      [\n        \"tari\",\n        -11.054437637329102\n      ],\n      [\n        \"0.000\",\n        -11.054460525512695\n      ],\n      [\n        \"▁Price\",\n        -11.054651260375977\n      ],\n      [\n        \"▁Trust\",\n        -11.054824829101562\n      ],\n      [\n        \"▁contra\",\n        -11.054863929748535\n      ],\n      [\n        \"▁layout\",\n        -11.05504035949707\n      ],\n      [\n        \"▁Ireland\",\n        -11.055187225341797\n      ],\n      [\n        \"ctor\",\n        -11.055344581604004\n      ],\n      [\n        \"atoare\",\n        -11.055540084838867\n      ],\n      [\n        \"pra\",\n        -11.055729866027832\n      ],\n      [\n        \"rent\",\n        -11.055892944335938\n      ],\n      [\n        \"▁Seite\",\n        -11.05605411529541\n      ],\n      [\n        \"▁ori\",\n        -11.056280136108398\n      ],\n      [\n        \"spiel\",\n        -11.056541442871094\n      ],\n      [\n        \"▁Times\",\n        -11.056883811950684\n      ],\n      [\n        \"primarily\",\n        -11.056974411010742\n      ],\n      [\n        \"nov\",\n        -11.05703067779541\n      ],\n      [\n        \"▁desired\",\n        -11.057061195373535\n      ],\n      [\n        \"▁Would\",\n        -11.057072639465332\n      ],\n      [\n        \"PL\",\n        -11.057225227355957\n      ],\n      [\n        \"▁originally\",\n        -11.057367324829102\n      ],\n      [\n        \"▁Ana\",\n        -11.057463645935059\n      ],\n      [\n        \"EN\",\n        -11.05754566192627\n      ],\n      [\n        \"▁occasion\",\n        -11.05755615234375\n      ],\n      [\n        \"▁grant\",\n        -11.057572364807129\n      ],\n      [\n        \"igkeit\",\n        -11.057975769042969\n      ],\n      [\n        \"▁scheme\",\n        -11.058146476745605\n      ],\n      [\n        \"▁2015.\",\n        -11.058621406555176\n      ],\n      [\n        \"izare\",\n        -11.058778762817383\n      ],\n      [\n        \"gate\",\n        -11.058792114257812\n      ],\n      [\n        \"▁poker\",\n        -11.058899879455566\n      ],\n      [\n        \"pping\",\n        -11.058998107910156\n      ],\n      [\n        \"▁Wild\",\n        -11.059511184692383\n      ],\n      [\n        \"▁YouTube\",\n        -11.059995651245117\n      ],\n      [\n        \"▁assume\",\n        -11.060284614562988\n      ],\n      [\n        \"с\",\n        -11.060614585876465\n      ],\n      [\n        \"▁rapport\",\n        -11.060623168945312\n      ],\n      [\n        \"▁labor\",\n        -11.060996055603027\n      ],\n      [\n        \"teur\",\n        -11.061041831970215\n      ],\n      [\n        \"▁genre\",\n        -11.06116008758545\n      ],\n      [\n        \"▁plat\",\n        -11.061745643615723\n      ],\n      [\n        \"▁listening\",\n        -11.061750411987305\n      ],\n      [\n        \"sky\",\n        -11.061777114868164\n      ],\n      [\n        \"▁neighborhood\",\n        -11.061782836914062\n      ],\n      [\n        \"▁3-\",\n        -11.062150001525879\n      ],\n      [\n        \"▁Library\",\n        -11.062162399291992\n      ],\n      [\n        \"agit\",\n        -11.062249183654785\n      ],\n      [\n        \"▁platforms\",\n        -11.062849998474121\n      ],\n      [\n        \"bei\",\n        -11.062882423400879\n      ],\n      [\n        \"AB\",\n        -11.062897682189941\n      ],\n      [\n        \"▁manufacturers\",\n        -11.06295394897461\n      ],\n      [\n        \"▁printing\",\n        -11.063141822814941\n      ],\n      [\n        \"▁crisis\",\n        -11.063326835632324\n      ],\n      [\n        \"▁Smart\",\n        -11.06335163116455\n      ],\n      [\n        \"▁drawing\",\n        -11.063406944274902\n      ],\n      [\n        \"MO\",\n        -11.06348991394043\n      ],\n      [\n        \"▁durable\",\n        -11.063569068908691\n      ],\n      [\n        \"chant\",\n        -11.0636625289917\n      ],\n      [\n        \"▁chemical\",\n        -11.063764572143555\n      ],\n      [\n        \"▁savoir\",\n        -11.063776016235352\n      ],\n      [\n        \"▁Max\",\n        -11.063802719116211\n      ],\n      [\n        \"gestellt\",\n        -11.06380844116211\n      ],\n      [\n        \"▁rural\",\n        -11.063854217529297\n      ],\n      [\n        \"52\",\n        -11.064105033874512\n      ],\n      [\n        \"▁invited\",\n        -11.064169883728027\n      ],\n      [\n        \"▁fil\",\n        -11.0642728805542\n      ],\n      [\n        \"▁Rob\",\n        -11.064284324645996\n      ],\n      [\n        \"▁Bell\",\n        -11.064387321472168\n      ],\n      [\n        \"▁neck\",\n        -11.064831733703613\n      ],\n      [\n        \"pac\",\n        -11.064879417419434\n      ],\n      [\n        \"wal\",\n        -11.06491470336914\n      ],\n      [\n        \"▁là\",\n        -11.064922332763672\n      ],\n      [\n        \"▁Virginia\",\n        -11.065081596374512\n      ],\n      [\n        \"▁applicable\",\n        -11.06509017944336\n      ],\n      [\n        \"▁abuse\",\n        -11.065153121948242\n      ],\n      [\n        \"aide\",\n        -11.065321922302246\n      ],\n      [\n        \"▁increases\",\n        -11.065396308898926\n      ],\n      [\n        \"▁moi\",\n        -11.065568923950195\n      ],\n      [\n        \"▁Non\",\n        -11.065577507019043\n      ],\n      [\n        \"▁Produkt\",\n        -11.065627098083496\n      ],\n      [\n        \"FC\",\n        -11.065644264221191\n      ],\n      [\n        \"▁shops\",\n        -11.065677642822266\n      ],\n      [\n        \"▁prendre\",\n        -11.065923690795898\n      ],\n      [\n        \"atul\",\n        -11.065990447998047\n      ],\n      [\n        \"▁sal\",\n        -11.066137313842773\n      ],\n      [\n        \"▁société\",\n        -11.06627082824707\n      ],\n      [\n        \"▁Hot\",\n        -11.066329002380371\n      ],\n      [\n        \"rim\",\n        -11.066587448120117\n      ],\n      [\n        \"gue\",\n        -11.06661605834961\n      ],\n      [\n        \"▁enterprise\",\n        -11.066624641418457\n      ],\n      [\n        \"▁33\",\n        -11.067329406738281\n      ],\n      [\n        \"mittel\",\n        -11.067395210266113\n      ],\n      [\n        \"ged\",\n        -11.067439079284668\n      ],\n      [\n        \"▁formula\",\n        -11.06777286529541\n      ],\n      [\n        \"▁spin\",\n        -11.067784309387207\n      ],\n      [\n        \"als\",\n        -11.067826271057129\n      ],\n      [\n        \"2%\",\n        -11.06785774230957\n      ],\n      [\n        \"bon\",\n        -11.068192481994629\n      ],\n      [\n        \"▁Executive\",\n        -11.068323135375977\n      ],\n      [\n        \"▁wirklich\",\n        -11.068427085876465\n      ],\n      [\n        \"îl\",\n        -11.068608283996582\n      ],\n      [\n        \"1.\",\n        -11.068917274475098\n      ],\n      [\n        \"▁Arm\",\n        -11.069157600402832\n      ],\n      [\n        \"▁rid\",\n        -11.069358825683594\n      ],\n      [\n        \"aries\",\n        -11.069727897644043\n      ],\n      [\n        \"▁incident\",\n        -11.06982421875\n      ],\n      [\n        \"▁copii\",\n        -11.070008277893066\n      ],\n      [\n        \"▁Charles\",\n        -11.070141792297363\n      ],\n      [\n        \"▁meals\",\n        -11.070147514343262\n      ],\n      [\n        \"▁wireless\",\n        -11.070237159729004\n      ],\n      [\n        \"Ex\",\n        -11.070364952087402\n      ],\n      [\n        \"▁Financial\",\n        -11.070540428161621\n      ],\n      [\n        \"▁AM\",\n        -11.070615768432617\n      ],\n      [\n        \"▁fest\",\n        -11.070645332336426\n      ],\n      [\n        \"▁Ol\",\n        -11.071410179138184\n      ],\n      [\n        \"oir\",\n        -11.071447372436523\n      ],\n      [\n        \"300\",\n        -11.071893692016602\n      ],\n      [\n        \"▁punct\",\n        -11.072138786315918\n      ],\n      [\n        \"▁Mad\",\n        -11.07283878326416\n      ],\n      [\n        \"▁Ali\",\n        -11.072907447814941\n      ],\n      [\n        \"lag\",\n        -11.073214530944824\n      ],\n      [\n        \"▁ocean\",\n        -11.073314666748047\n      ],\n      [\n        \"▁mirror\",\n        -11.073326110839844\n      ],\n      [\n        \"▁Additionally\",\n        -11.073869705200195\n      ],\n      [\n        \"alia\",\n        -11.073884963989258\n      ],\n      [\n        \"▁county\",\n        -11.073899269104004\n      ],\n      [\n        \"▁hip\",\n        -11.074305534362793\n      ],\n      [\n        \"dale\",\n        -11.074395179748535\n      ],\n      [\n        \"▁Stra\",\n        -11.074429512023926\n      ],\n      [\n        \"▁drag\",\n        -11.074575424194336\n      ],\n      [\n        \"▁Sand\",\n        -11.074851036071777\n      ],\n      [\n        \"▁historic\",\n        -11.074980735778809\n      ],\n      [\n        \"ière\",\n        -11.075427055358887\n      ],\n      [\n        \"▁examine\",\n        -11.075624465942383\n      ],\n      [\n        \"soci\",\n        -11.075634002685547\n      ],\n      [\n        \"ime\",\n        -11.076088905334473\n      ],\n      [\n        \"▁Insurance\",\n        -11.07621955871582\n      ],\n      [\n        \"▁crime\",\n        -11.076736450195312\n      ],\n      [\n        \"▁pare\",\n        -11.076945304870605\n      ],\n      [\n        \"▁craft\",\n        -11.077105522155762\n      ],\n      [\n        \"▁Building\",\n        -11.077279090881348\n      ],\n      [\n        \"mission\",\n        -11.077534675598145\n      ],\n      [\n        \"▁Americans\",\n        -11.077573776245117\n      ],\n      [\n        \"▁mg\",\n        -11.077799797058105\n      ],\n      [\n        \"▁passage\",\n        -11.077938079833984\n      ],\n      [\n        \"▁deposit\",\n        -11.078346252441406\n      ],\n      [\n        \"▁widely\",\n        -11.078444480895996\n      ],\n      [\n        \"nch\",\n        -11.078453063964844\n      ],\n      [\n        \"▁Coast\",\n        -11.078756332397461\n      ],\n      [\n        \"▁recipes\",\n        -11.078784942626953\n      ],\n      [\n        \"▁Ziel\",\n        -11.07951545715332\n      ],\n      [\n        \"▁duty\",\n        -11.079646110534668\n      ],\n      [\n        \"▁gerne\",\n        -11.079704284667969\n      ],\n      [\n        \"most\",\n        -11.080034255981445\n      ],\n      [\n        \"▁argument\",\n        -11.080158233642578\n      ],\n      [\n        \"▁root\",\n        -11.08021354675293\n      ],\n      [\n        \"▁consult\",\n        -11.08024787902832\n      ],\n      [\n        \"▁muscle\",\n        -11.080255508422852\n      ],\n      [\n        \"▁spoke\",\n        -11.08038330078125\n      ],\n      [\n        \"▁Cum\",\n        -11.080950736999512\n      ],\n      [\n        \"▁orange\",\n        -11.081033706665039\n      ],\n      [\n        \"▁reader\",\n        -11.081123352050781\n      ],\n      [\n        \"schw\",\n        -11.081151008605957\n      ],\n      [\n        \"▁commission\",\n        -11.081332206726074\n      ],\n      [\n        \"histoire\",\n        -11.081811904907227\n      ],\n      [\n        \"▁represents\",\n        -11.082064628601074\n      ],\n      [\n        \"▁meilleur\",\n        -11.082343101501465\n      ],\n      [\n        \"▁10.\",\n        -11.082358360290527\n      ],\n      [\n        \"HA\",\n        -11.082427024841309\n      ],\n      [\n        \"▁Systems\",\n        -11.082573890686035\n      ],\n      [\n        \"▁blind\",\n        -11.082603454589844\n      ],\n      [\n        \"▁HP\",\n        -11.083221435546875\n      ],\n      [\n        \"▁doi\",\n        -11.083307266235352\n      ],\n      [\n        \"▁signature\",\n        -11.083404541015625\n      ],\n      [\n        \"▁invite\",\n        -11.083505630493164\n      ],\n      [\n        \"▁Samsung\",\n        -11.083802223205566\n      ],\n      [\n        \"▁liber\",\n        -11.083942413330078\n      ],\n      [\n        \"▁letters\",\n        -11.0840482711792\n      ],\n      [\n        \"▁primul\",\n        -11.084186553955078\n      ],\n      [\n        \"▁losing\",\n        -11.084328651428223\n      ],\n      [\n        \"resulting\",\n        -11.084467887878418\n      ],\n      [\n        \"▁Computer\",\n        -11.08474063873291\n      ],\n      [\n        \"▁poll\",\n        -11.0847749710083\n      ],\n      [\n        \"rile\",\n        -11.085102081298828\n      ],\n      [\n        \"TI\",\n        -11.085142135620117\n      ],\n      [\n        \"▁cur\",\n        -11.08566951751709\n      ],\n      [\n        \"▁fonction\",\n        -11.085833549499512\n      ],\n      [\n        \"gat\",\n        -11.086359977722168\n      ],\n      [\n        \"AA\",\n        -11.086480140686035\n      ],\n      [\n        \"tiv\",\n        -11.086692810058594\n      ],\n      [\n        \"▁Str\",\n        -11.087076187133789\n      ],\n      [\n        \"ești\",\n        -11.087677955627441\n      ],\n      [\n        \"▁officer\",\n        -11.0877046585083\n      ],\n      [\n        \"reducing\",\n        -11.08772087097168\n      ],\n      [\n        \"▁gifts\",\n        -11.08780288696289\n      ],\n      [\n        \"▁performing\",\n        -11.08788776397705\n      ],\n      [\n        \"▁»,\",\n        -11.088349342346191\n      ],\n      [\n        \"▁guitar\",\n        -11.08838939666748\n      ],\n      [\n        \"▁segment\",\n        -11.088580131530762\n      ],\n      [\n        \"▁Tar\",\n        -11.08861255645752\n      ],\n      [\n        \"▁ultimately\",\n        -11.088805198669434\n      ],\n      [\n        \"▁cam\",\n        -11.088960647583008\n      ],\n      [\n        \"▁Arbeit\",\n        -11.089076042175293\n      ],\n      [\n        \"▁accessories\",\n        -11.089418411254883\n      ],\n      [\n        \"bad\",\n        -11.089820861816406\n      ],\n      [\n        \"home\",\n        -11.0899019241333\n      ],\n      [\n        \"▁clip\",\n        -11.08995532989502\n      ],\n      [\n        \"range\",\n        -11.090432167053223\n      ],\n      [\n        \"CM\",\n        -11.090867042541504\n      ],\n      [\n        \"▁printed\",\n        -11.090883255004883\n      ],\n      [\n        \"▁Pet\",\n        -11.091177940368652\n      ],\n      [\n        \"▁attract\",\n        -11.091333389282227\n      ],\n      [\n        \"date\",\n        -11.091501235961914\n      ],\n      [\n        \"▁Senior\",\n        -11.091503143310547\n      ],\n      [\n        \"▁genau\",\n        -11.092177391052246\n      ],\n      [\n        \"num\",\n        -11.092435836791992\n      ],\n      [\n        \"▁attended\",\n        -11.092674255371094\n      ],\n      [\n        \"▁Turn\",\n        -11.092824935913086\n      ],\n      [\n        \"▁History\",\n        -11.092830657958984\n      ],\n      [\n        \"some\",\n        -11.092852592468262\n      ],\n      [\n        \"▁describe\",\n        -11.09308910369873\n      ],\n      [\n        \"▁Lee\",\n        -11.093143463134766\n      ],\n      [\n        \"▁Fre\",\n        -11.093314170837402\n      ],\n      [\n        \"▁league\",\n        -11.093345642089844\n      ],\n      [\n        \"new\",\n        -11.093505859375\n      ],\n      [\n        \"tors\",\n        -11.093535423278809\n      ],\n      [\n        \"▁storm\",\n        -11.094005584716797\n      ],\n      [\n        \"▁Beispiel\",\n        -11.094197273254395\n      ],\n      [\n        \"▁index\",\n        -11.094344139099121\n      ],\n      [\n        \"▁awarded\",\n        -11.094613075256348\n      ],\n      [\n        \"state\",\n        -11.094625473022461\n      ],\n      [\n        \"▁1990\",\n        -11.094874382019043\n      ],\n      [\n        \"▁ends\",\n        -11.094902992248535\n      ],\n      [\n        \"kor\",\n        -11.095070838928223\n      ],\n      [\n        \"far\",\n        -11.095418930053711\n      ],\n      [\n        \"▁Page\",\n        -11.095541000366211\n      ],\n      [\n        \"▁promotion\",\n        -11.095610618591309\n      ],\n      [\n        \"▁weekly\",\n        -11.095726013183594\n      ],\n      [\n        \"400\",\n        -11.095966339111328\n      ],\n      [\n        \"iuni\",\n        -11.096365928649902\n      ],\n      [\n        \"▁Summer\",\n        -11.096376419067383\n      ],\n      [\n        \"▁thin\",\n        -11.096627235412598\n      ],\n      [\n        \"▁dafür\",\n        -11.09669303894043\n      ],\n      [\n        \"51\",\n        -11.096769332885742\n      ],\n      [\n        \"PR\",\n        -11.096978187561035\n      ],\n      [\n        \"▁Hy\",\n        -11.097001075744629\n      ],\n      [\n        \"gas\",\n        -11.097013473510742\n      ],\n      [\n        \"▁atat\",\n        -11.097166061401367\n      ],\n      [\n        \"▁mining\",\n        -11.097347259521484\n      ],\n      [\n        \"▁principles\",\n        -11.09741497039795\n      ],\n      [\n        \"gent\",\n        -11.097545623779297\n      ],\n      [\n        \"ika\",\n        -11.097685813903809\n      ],\n      [\n        \"▁religion\",\n        -11.097787857055664\n      ],\n      [\n        \"▁ordered\",\n        -11.098284721374512\n      ],\n      [\n        \"▁developers\",\n        -11.098298072814941\n      ],\n      [\n        \"▁pleasure\",\n        -11.098456382751465\n      ],\n      [\n        \"vit\",\n        -11.098505020141602\n      ],\n      [\n        \"mers\",\n        -11.0988130569458\n      ],\n      [\n        \"▁Section\",\n        -11.098873138427734\n      ],\n      [\n        \"▁por\",\n        -11.098960876464844\n      ],\n      [\n        \"▁Name\",\n        -11.099200248718262\n      ],\n      [\n        \"▁pink\",\n        -11.099260330200195\n      ],\n      [\n        \"dig\",\n        -11.09934139251709\n      ],\n      [\n        \"▁eligible\",\n        -11.099397659301758\n      ],\n      [\n        \"▁Happy\",\n        -11.09941577911377\n      ],\n      [\n        \"▁fo\",\n        -11.099480628967285\n      ],\n      [\n        \"▁availability\",\n        -11.099541664123535\n      ],\n      [\n        \"GO\",\n        -11.099583625793457\n      ],\n      [\n        \"▁Europa\",\n        -11.099637985229492\n      ],\n      [\n        \"▁Unit\",\n        -11.099656105041504\n      ],\n      [\n        \"▁1000\",\n        -11.099837303161621\n      ],\n      [\n        \"▁Berg\",\n        -11.099846839904785\n      ],\n      [\n        \"fini\",\n        -11.099853515625\n      ],\n      [\n        \"▁$3\",\n        -11.100565910339355\n      ],\n      [\n        \"iza\",\n        -11.100749969482422\n      ],\n      [\n        \"▁promo\",\n        -11.100830078125\n      ],\n      [\n        \"▁Low\",\n        -11.101234436035156\n      ],\n      [\n        \"abord\",\n        -11.101326942443848\n      ],\n      [\n        \"äh\",\n        -11.101485252380371\n      ],\n      [\n        \"▁Professor\",\n        -11.101570129394531\n      ],\n      [\n        \"▁array\",\n        -11.101579666137695\n      ],\n      [\n        \"▁hate\",\n        -11.101594924926758\n      ],\n      [\n        \"▁recording\",\n        -11.101601600646973\n      ],\n      [\n        \"RI\",\n        -11.101649284362793\n      ],\n      [\n        \"▁proof\",\n        -11.101710319519043\n      ],\n      [\n        \"lay\",\n        -11.10185718536377\n      ],\n      [\n        \"DE\",\n        -11.102007865905762\n      ],\n      [\n        \"▁surprised\",\n        -11.102066040039062\n      ],\n      [\n        \"▁boxes\",\n        -11.102193832397461\n      ],\n      [\n        \"▁noastre\",\n        -11.102386474609375\n      ],\n      [\n        \"zie\",\n        -11.102387428283691\n      ],\n      [\n        \"▁însă\",\n        -11.10254192352295\n      ],\n      [\n        \"▁ajuta\",\n        -11.102783203125\n      ],\n      [\n        \"▁weil\",\n        -11.1028413772583\n      ],\n      [\n        \"▁whenever\",\n        -11.103026390075684\n      ],\n      [\n        \"shi\",\n        -11.103194236755371\n      ],\n      [\n        \"satz\",\n        -11.103605270385742\n      ],\n      [\n        \"▁remind\",\n        -11.10401725769043\n      ],\n      [\n        \"▁consist\",\n        -11.10412311553955\n      ],\n      [\n        \"▁motiv\",\n        -11.104240417480469\n      ],\n      [\n        \"▁PS\",\n        -11.1043062210083\n      ],\n      [\n        \"▁trois\",\n        -11.104543685913086\n      ],\n      [\n        \"pad\",\n        -11.10477352142334\n      ],\n      [\n        \"▁besten\",\n        -11.104904174804688\n      ],\n      [\n        \"▁Stone\",\n        -11.105140686035156\n      ],\n      [\n        \"itz\",\n        -11.105157852172852\n      ],\n      [\n        \"fit\",\n        -11.105164527893066\n      ],\n      [\n        \"▁Mountain\",\n        -11.105178833007812\n      ],\n      [\n        \"OC\",\n        -11.10519027709961\n      ],\n      [\n        \"▁depends\",\n        -11.105228424072266\n      ],\n      [\n        \"▁Cover\",\n        -11.105387687683105\n      ],\n      [\n        \"▁bags\",\n        -11.106058120727539\n      ],\n      [\n        \"▁Bel\",\n        -11.106199264526367\n      ],\n      [\n        \"▁Engineering\",\n        -11.106304168701172\n      ],\n      [\n        \"▁flower\",\n        -11.106647491455078\n      ],\n      [\n        \"▁gratuit\",\n        -11.106670379638672\n      ],\n      [\n        \"▁smartphone\",\n        -11.106780052185059\n      ],\n      [\n        \"stan\",\n        -11.107197761535645\n      ],\n      [\n        \"spect\",\n        -11.10726261138916\n      ],\n      [\n        \"SL\",\n        -11.107282638549805\n      ],\n      [\n        \"sho\",\n        -11.10738754272461\n      ],\n      [\n        \"▁Ser\",\n        -11.10791301727295\n      ],\n      [\n        \"▁Perhaps\",\n        -11.108247756958008\n      ],\n      [\n        \"▁codes\",\n        -11.108342170715332\n      ],\n      [\n        \"▁Wind\",\n        -11.10849666595459\n      ],\n      [\n        \"aient\",\n        -11.108757019042969\n      ],\n      [\n        \"▁Prin\",\n        -11.108802795410156\n      ],\n      [\n        \"▁(1)\",\n        -11.109090805053711\n      ],\n      [\n        \"▁figures\",\n        -11.109450340270996\n      ],\n      [\n        \"▁ausge\",\n        -11.10972785949707\n      ],\n      [\n        \"▁episode\",\n        -11.110050201416016\n      ],\n      [\n        \"▁Spa\",\n        -11.110370635986328\n      ],\n      [\n        \"▁Silver\",\n        -11.110386848449707\n      ],\n      [\n        \"▁Sky\",\n        -11.110396385192871\n      ],\n      [\n        \"▁capabilities\",\n        -11.1107177734375\n      ],\n      [\n        \"▁Uni\",\n        -11.11073112487793\n      ],\n      [\n        \"▁încă\",\n        -11.110876083374023\n      ],\n      [\n        \"TO\",\n        -11.111289978027344\n      ],\n      [\n        \"▁Hal\",\n        -11.111358642578125\n      ],\n      [\n        \"ghi\",\n        -11.111414909362793\n      ],\n      [\n        \"▁sofa\",\n        -11.111438751220703\n      ],\n      [\n        \"hard\",\n        -11.11150074005127\n      ],\n      [\n        \"▁FOR\",\n        -11.111587524414062\n      ],\n      [\n        \"▁Ber\",\n        -11.111820220947266\n      ],\n      [\n        \"▁firms\",\n        -11.11187744140625\n      ],\n      [\n        \"▁memories\",\n        -11.111883163452148\n      ],\n      [\n        \"▁lift\",\n        -11.11214542388916\n      ],\n      [\n        \"▁sending\",\n        -11.11214542388916\n      ],\n      [\n        \"▁narrow\",\n        -11.112646102905273\n      ],\n      [\n        \"▁Steve\",\n        -11.112784385681152\n      ],\n      [\n        \"▁integration\",\n        -11.112905502319336\n      ],\n      [\n        \"known\",\n        -11.113122940063477\n      ],\n      [\n        \"▁nostru\",\n        -11.113237380981445\n      ],\n      [\n        \"iţi\",\n        -11.113422393798828\n      ],\n      [\n        \"▁Georgia\",\n        -11.113759994506836\n      ],\n      [\n        \"▁slowly\",\n        -11.114026069641113\n      ],\n      [\n        \"iere\",\n        -11.114028930664062\n      ],\n      [\n        \"aka\",\n        -11.114255905151367\n      ],\n      [\n        \"PE\",\n        -11.114320755004883\n      ],\n      [\n        \"▁venue\",\n        -11.11468505859375\n      ],\n      [\n        \"jar\",\n        -11.11474609375\n      ],\n      [\n        \"buch\",\n        -11.114755630493164\n      ],\n      [\n        \"rad\",\n        -11.114858627319336\n      ],\n      [\n        \"▁resistance\",\n        -11.114899635314941\n      ],\n      [\n        \"▁stehen\",\n        -11.114914894104004\n      ],\n      [\n        \"chin\",\n        -11.11504077911377\n      ],\n      [\n        \"▁weak\",\n        -11.11535358428955\n      ],\n      [\n        \"▁DVD\",\n        -11.115598678588867\n      ],\n      [\n        \"▁bodies\",\n        -11.115856170654297\n      ],\n      [\n        \"▁split\",\n        -11.115884780883789\n      ],\n      [\n        \"What\",\n        -11.116231918334961\n      ],\n      [\n        \"setzen\",\n        -11.116467475891113\n      ],\n      [\n        \"▁loves\",\n        -11.116561889648438\n      ],\n      [\n        \"▁kleine\",\n        -11.117077827453613\n      ],\n      [\n        \"▁increasingly\",\n        -11.11746883392334\n      ],\n      [\n        \"▁alert\",\n        -11.117583274841309\n      ],\n      [\n        \"▁AC\",\n        -11.117647171020508\n      ],\n      [\n        \"▁partir\",\n        -11.117974281311035\n      ],\n      [\n        \"▁ratio\",\n        -11.11807918548584\n      ],\n      [\n        \"▁keeps\",\n        -11.118539810180664\n      ],\n      [\n        \"▁Area\",\n        -11.118544578552246\n      ],\n      [\n        \"▁données\",\n        -11.119071960449219\n      ],\n      [\n        \"▁flag\",\n        -11.119254112243652\n      ],\n      [\n        \"▁NO\",\n        -11.119277000427246\n      ],\n      [\n        \"▁hotels\",\n        -11.119336128234863\n      ],\n      [\n        \"▁debut\",\n        -11.119365692138672\n      ],\n      [\n        \"▁suffer\",\n        -11.119368553161621\n      ],\n      [\n        \"▁hidden\",\n        -11.119810104370117\n      ],\n      [\n        \"▁clothing\",\n        -11.120074272155762\n      ],\n      [\n        \"▁household\",\n        -11.120235443115234\n      ],\n      [\n        \"medi\",\n        -11.120268821716309\n      ],\n      [\n        \"▁reste\",\n        -11.120274543762207\n      ],\n      [\n        \"bro\",\n        -11.120381355285645\n      ],\n      [\n        \"▁Bus\",\n        -11.120405197143555\n      ],\n      [\n        \"▁Ken\",\n        -11.120572090148926\n      ],\n      [\n        \"IR\",\n        -11.120758056640625\n      ],\n      [\n        \"▁suffering\",\n        -11.121212005615234\n      ],\n      [\n        \"▁publication\",\n        -11.121246337890625\n      ],\n      [\n        \"▁Mat\",\n        -11.121360778808594\n      ],\n      [\n        \"▁impression\",\n        -11.121509552001953\n      ],\n      [\n        \"▁founded\",\n        -11.121562957763672\n      ],\n      [\n        \"▁stable\",\n        -11.121566772460938\n      ],\n      [\n        \"▁promise\",\n        -11.121719360351562\n      ],\n      [\n        \"▁Cloud\",\n        -11.121770858764648\n      ],\n      [\n        \"▁prison\",\n        -11.122099876403809\n      ],\n      [\n        \"cor\",\n        -11.122355461120605\n      ],\n      [\n        \"▁Sports\",\n        -11.122716903686523\n      ],\n      [\n        \"▁erste\",\n        -11.122745513916016\n      ],\n      [\n        \"shire\",\n        -11.122757911682129\n      ],\n      [\n        \"▁recommendations\",\n        -11.122916221618652\n      ],\n      [\n        \"▁permit\",\n        -11.123100280761719\n      ],\n      [\n        \"▁tomorrow\",\n        -11.123126983642578\n      ],\n      [\n        \"▁lucky\",\n        -11.123422622680664\n      ],\n      [\n        \"▁realized\",\n        -11.123449325561523\n      ],\n      [\n        \"▁famille\",\n        -11.123473167419434\n      ],\n      [\n        \"▁Zealand\",\n        -11.123542785644531\n      ],\n      [\n        \"▁wooden\",\n        -11.123601913452148\n      ],\n      [\n        \"▁east\",\n        -11.124269485473633\n      ],\n      [\n        \"▁Bereich\",\n        -11.12458324432373\n      ],\n      [\n        \"während\",\n        -11.124653816223145\n      ],\n      [\n        \"rite\",\n        -11.124836921691895\n      ],\n      [\n        \"▁fla\",\n        -11.124902725219727\n      ],\n      [\n        \"platz\",\n        -11.124991416931152\n      ],\n      [\n        \"▁zero\",\n        -11.125292778015137\n      ],\n      [\n        \"▁priority\",\n        -11.12535572052002\n      ],\n      [\n        \"▁Airport\",\n        -11.125506401062012\n      ],\n      [\n        \"▁Kauf\",\n        -11.125590324401855\n      ],\n      [\n        \"▁ultimate\",\n        -11.12601375579834\n      ],\n      [\n        \"▁chest\",\n        -11.126175880432129\n      ],\n      [\n        \"▁tone\",\n        -11.126376152038574\n      ],\n      [\n        \"▁Kal\",\n        -11.126431465148926\n      ],\n      [\n        \"▁supposed\",\n        -11.12669849395752\n      ],\n      [\n        \"▁vedere\",\n        -11.126846313476562\n      ],\n      [\n        \"▁50%\",\n        -11.126872062683105\n      ],\n      [\n        \"▁Ger\",\n        -11.127785682678223\n      ],\n      [\n        \"pack\",\n        -11.127849578857422\n      ],\n      [\n        \"▁priv\",\n        -11.128241539001465\n      ],\n      [\n        \"▁Kit\",\n        -11.128263473510742\n      ],\n      [\n        \"▁tent\",\n        -11.128457069396973\n      ],\n      [\n        \"▁guidelines\",\n        -11.128461837768555\n      ],\n      [\n        \"▁Republic\",\n        -11.128824234008789\n      ],\n      [\n        \"including\",\n        -11.129239082336426\n      ],\n      [\n        \"▁chief\",\n        -11.129615783691406\n      ],\n      [\n        \"▁Living\",\n        -11.129766464233398\n      ],\n      [\n        \"keit\",\n        -11.1298189163208\n      ],\n      [\n        \"▁convert\",\n        -11.129831314086914\n      ],\n      [\n        \"tail\",\n        -11.129928588867188\n      ],\n      [\n        \"orient\",\n        -11.129960060119629\n      ],\n      [\n        \"eigenen\",\n        -11.130245208740234\n      ],\n      [\n        \"▁soup\",\n        -11.130587577819824\n      ],\n      [\n        \"▁zona\",\n        -11.130661010742188\n      ],\n      [\n        \"▁composition\",\n        -11.130690574645996\n      ],\n      [\n        \"▁Bob\",\n        -11.130831718444824\n      ],\n      [\n        \"▁exception\",\n        -11.131170272827148\n      ],\n      [\n        \"▁cr\",\n        -11.131287574768066\n      ],\n      [\n        \"▁str\",\n        -11.131482124328613\n      ],\n      [\n        \"▁Fl\",\n        -11.13178825378418\n      ],\n      [\n        \"AT\",\n        -11.131909370422363\n      ],\n      [\n        \"kel\",\n        -11.132002830505371\n      ],\n      [\n        \"▁pricing\",\n        -11.132189750671387\n      ],\n      [\n        \"▁Mass\",\n        -11.132258415222168\n      ],\n      [\n        \"vir\",\n        -11.132333755493164\n      ],\n      [\n        \"leg\",\n        -11.132448196411133\n      ],\n      [\n        \"▁rating\",\n        -11.132455825805664\n      ],\n      [\n        \"▁Sale\",\n        -11.132628440856934\n      ],\n      [\n        \"▁somewhere\",\n        -11.132866859436035\n      ],\n      [\n        \"▁submitted\",\n        -11.133084297180176\n      ],\n      [\n        \"▁Pop\",\n        -11.133296012878418\n      ],\n      [\n        \"▁papers\",\n        -11.13330364227295\n      ],\n      [\n        \"▁authorities\",\n        -11.133326530456543\n      ],\n      [\n        \"▁Person\",\n        -11.133381843566895\n      ],\n      [\n        \"▁kill\",\n        -11.133512496948242\n      ],\n      [\n        \"▁suggestions\",\n        -11.133548736572266\n      ],\n      [\n        \"-6\",\n        -11.133644104003906\n      ],\n      [\n        \"▁dust\",\n        -11.133750915527344\n      ],\n      [\n        \"taire\",\n        -11.133805274963379\n      ],\n      [\n        \"▁recognition\",\n        -11.133870124816895\n      ],\n      [\n        \"3.\",\n        -11.134047508239746\n      ],\n      [\n        \"▁Mont\",\n        -11.134230613708496\n      ],\n      [\n        \"▁produit\",\n        -11.13430118560791\n      ],\n      [\n        \"▁transmission\",\n        -11.134340286254883\n      ],\n      [\n        \"▁Th\",\n        -11.13475513458252\n      ],\n      [\n        \"▁passing\",\n        -11.134928703308105\n      ],\n      [\n        \"▁Partner\",\n        -11.135161399841309\n      ],\n      [\n        \"▁dire\",\n        -11.135205268859863\n      ],\n      [\n        \"▁DC\",\n        -11.135432243347168\n      ],\n      [\n        \"▁sky\",\n        -11.135659217834473\n      ],\n      [\n        \"▁Kitchen\",\n        -11.135890007019043\n      ],\n      [\n        \"▁fluid\",\n        -11.135929107666016\n      ],\n      [\n        \"▁scored\",\n        -11.136005401611328\n      ],\n      [\n        \"▁chapter\",\n        -11.136100769042969\n      ],\n      [\n        \"If\",\n        -11.136231422424316\n      ],\n      [\n        \"letzten\",\n        -11.136275291442871\n      ],\n      [\n        \"▁officers\",\n        -11.13641357421875\n      ],\n      [\n        \"▁avem\",\n        -11.136631965637207\n      ],\n      [\n        \"ister\",\n        -11.136666297912598\n      ],\n      [\n        \"▁involves\",\n        -11.136688232421875\n      ],\n      [\n        \"ico\",\n        -11.136898040771484\n      ],\n      [\n        \"bur\",\n        -11.137056350708008\n      ],\n      [\n        \"▁mieux\",\n        -11.137064933776855\n      ],\n      [\n        \"▁Photo\",\n        -11.1371431350708\n      ],\n      [\n        \"▁Cro\",\n        -11.137228012084961\n      ],\n      [\n        \"▁professor\",\n        -11.137245178222656\n      ],\n      [\n        \"▁besonders\",\n        -11.137313842773438\n      ],\n      [\n        \"д\",\n        -11.137367248535156\n      ],\n      [\n        \"▁alongside\",\n        -11.137382507324219\n      ],\n      [\n        \"▁stored\",\n        -11.13770580291748\n      ],\n      [\n        \"▁activ\",\n        -11.137849807739258\n      ],\n      [\n        \"▁setup\",\n        -11.138169288635254\n      ],\n      [\n        \"▁extract\",\n        -11.138627052307129\n      ],\n      [\n        \"▁accent\",\n        -11.138633728027344\n      ],\n      [\n        \"▁replaced\",\n        -11.138638496398926\n      ],\n      [\n        \"tec\",\n        -11.138800621032715\n      ],\n      [\n        \"▁Natur\",\n        -11.138848304748535\n      ],\n      [\n        \"▁Pacific\",\n        -11.138887405395508\n      ],\n      [\n        \"▁NY\",\n        -11.139485359191895\n      ],\n      [\n        \"▁Capital\",\n        -11.139583587646484\n      ],\n      [\n        \"▁forest\",\n        -11.13969898223877\n      ],\n      [\n        \"incredibly\",\n        -11.14006233215332\n      ],\n      [\n        \"▁choix\",\n        -11.14021110534668\n      ],\n      [\n        \"▁seriously\",\n        -11.140281677246094\n      ],\n      [\n        \"▁konnte\",\n        -11.14030933380127\n      ],\n      [\n        \"▁2014.\",\n        -11.140443801879883\n      ],\n      [\n        \"ensuring\",\n        -11.140534400939941\n      ],\n      [\n        \"▁handling\",\n        -11.140661239624023\n      ],\n      [\n        \"▁9.\",\n        -11.140715599060059\n      ],\n      [\n        \"▁relations\",\n        -11.140876770019531\n      ],\n      [\n        \"▁Kom\",\n        -11.141045570373535\n      ],\n      [\n        \"▁Hol\",\n        -11.141282081604004\n      ],\n      [\n        \"▁none\",\n        -11.141515731811523\n      ],\n      [\n        \"rob\",\n        -11.141718864440918\n      ],\n      [\n        \"▁Forum\",\n        -11.141759872436523\n      ],\n      [\n        \"hour\",\n        -11.141776084899902\n      ],\n      [\n        \"ème\",\n        -11.141809463500977\n      ],\n      [\n        \"▁Space\",\n        -11.141986846923828\n      ],\n      [\n        \"▁Ham\",\n        -11.142992973327637\n      ],\n      [\n        \"rap\",\n        -11.143169403076172\n      ],\n      [\n        \"▁Michigan\",\n        -11.14317512512207\n      ],\n      [\n        \"km\",\n        -11.143202781677246\n      ],\n      [\n        \"▁utilize\",\n        -11.143548965454102\n      ],\n      [\n        \"lov\",\n        -11.143775939941406\n      ],\n      [\n        \"▁luck\",\n        -11.144388198852539\n      ],\n      [\n        \"lä\",\n        -11.144824981689453\n      ],\n      [\n        \"▁healing\",\n        -11.145010948181152\n      ],\n      [\n        \"▁neu\",\n        -11.145182609558105\n      ],\n      [\n        \"aging\",\n        -11.145251274108887\n      ],\n      [\n        \"▁compliance\",\n        -11.145583152770996\n      ],\n      [\n        \"▁vertical\",\n        -11.145675659179688\n      ],\n      [\n        \"▁FREE\",\n        -11.145729064941406\n      ],\n      [\n        \"▁differences\",\n        -11.146014213562012\n      ],\n      [\n        \"▁Server\",\n        -11.146252632141113\n      ],\n      [\n        \"▁estimated\",\n        -11.146378517150879\n      ],\n      [\n        \"schutz\",\n        -11.146692276000977\n      ],\n      [\n        \"▁notamment\",\n        -11.146736145019531\n      ],\n      [\n        \"▁120\",\n        -11.146919250488281\n      ],\n      [\n        \"72\",\n        -11.147282600402832\n      ],\n      [\n        \"▁heating\",\n        -11.147347450256348\n      ],\n      [\n        \"late\",\n        -11.14756965637207\n      ],\n      [\n        \"▁younger\",\n        -11.14783000946045\n      ],\n      [\n        \"▁Intel\",\n        -11.148171424865723\n      ],\n      [\n        \"▁salad\",\n        -11.148362159729004\n      ],\n      [\n        \"▁commonly\",\n        -11.148563385009766\n      ],\n      [\n        \"▁treatments\",\n        -11.148682594299316\n      ],\n      [\n        \"▁speaker\",\n        -11.148770332336426\n      ],\n      [\n        \"▁producing\",\n        -11.149120330810547\n      ],\n      [\n        \"▁eggs\",\n        -11.149367332458496\n      ],\n      [\n        \"▁Spirit\",\n        -11.149892807006836\n      ],\n      [\n        \"▁beide\",\n        -11.149918556213379\n      ],\n      [\n        \"▁transaction\",\n        -11.150283813476562\n      ],\n      [\n        \"▁Machine\",\n        -11.150464057922363\n      ],\n      [\n        \"▁Games\",\n        -11.150527000427246\n      ],\n      [\n        \"▁niveau\",\n        -11.150687217712402\n      ],\n      [\n        \"▁Need\",\n        -11.15082836151123\n      ],\n      [\n        \"radi\",\n        -11.150959968566895\n      ],\n      [\n        \"mir\",\n        -11.15096664428711\n      ],\n      [\n        \"causing\",\n        -11.151000022888184\n      ],\n      [\n        \"▁début\",\n        -11.151042938232422\n      ],\n      [\n        \"▁rencontre\",\n        -11.151063919067383\n      ],\n      [\n        \"▁threat\",\n        -11.151153564453125\n      ],\n      [\n        \"▁enjoying\",\n        -11.151320457458496\n      ],\n      [\n        \"Com\",\n        -11.151386260986328\n      ],\n      [\n        \"▁Johnson\",\n        -11.151555061340332\n      ],\n      [\n        \"▁tournament\",\n        -11.15156364440918\n      ],\n      [\n        \"▁Micro\",\n        -11.151582717895508\n      ],\n      [\n        \"▁Drive\",\n        -11.151667594909668\n      ],\n      [\n        \"▁Cre\",\n        -11.151866912841797\n      ],\n      [\n        \"▁Lebens\",\n        -11.151930809020996\n      ],\n      [\n        \"▁categories\",\n        -11.152358055114746\n      ],\n      [\n        \"5,000\",\n        -11.15261173248291\n      ],\n      [\n        \"▁confirmed\",\n        -11.152617454528809\n      ],\n      [\n        \"pli\",\n        -11.152763366699219\n      ],\n      [\n        \"▁Francisco\",\n        -11.153139114379883\n      ],\n      [\n        \"▁raw\",\n        -11.153157234191895\n      ],\n      [\n        \"▁managers\",\n        -11.153223991394043\n      ],\n      [\n        \"ţie\",\n        -11.153365135192871\n      ],\n      [\n        \"UR\",\n        -11.153368949890137\n      ],\n      [\n        \"▁aproape\",\n        -11.154065132141113\n      ],\n      [\n        \"via\",\n        -11.154606819152832\n      ],\n      [\n        \"▁engaged\",\n        -11.154646873474121\n      ],\n      [\n        \"▁parti\",\n        -11.154741287231445\n      ],\n      [\n        \"▁posting\",\n        -11.15517807006836\n      ],\n      [\n        \"CO\",\n        -11.155484199523926\n      ],\n      [\n        \"▁bois\",\n        -11.155815124511719\n      ],\n      [\n        \"▁inch\",\n        -11.15590763092041\n      ],\n      [\n        \"vie\",\n        -11.156068801879883\n      ],\n      [\n        \"▁aside\",\n        -11.156314849853516\n      ],\n      [\n        \"▁exceptional\",\n        -11.15658950805664\n      ],\n      [\n        \"▁vintage\",\n        -11.156668663024902\n      ],\n      [\n        \"▁Him\",\n        -11.156795501708984\n      ],\n      [\n        \"▁expansion\",\n        -11.156806945800781\n      ],\n      [\n        \"▁Weg\",\n        -11.157122611999512\n      ],\n      [\n        \"▁authors\",\n        -11.157535552978516\n      ],\n      [\n        \"▁deine\",\n        -11.15764045715332\n      ],\n      [\n        \"▁Prime\",\n        -11.158016204833984\n      ],\n      [\n        \"▁scan\",\n        -11.158055305480957\n      ],\n      [\n        \"▁reg\",\n        -11.158112525939941\n      ],\n      [\n        \"ția\",\n        -11.158141136169434\n      ],\n      [\n        \"riv\",\n        -11.158258438110352\n      ],\n      [\n        \"selon\",\n        -11.158440589904785\n      ],\n      [\n        \"▁Studio\",\n        -11.158571243286133\n      ],\n      [\n        \"▁dich\",\n        -11.158658027648926\n      ],\n      [\n        \"▁vi\",\n        -11.158745765686035\n      ],\n      [\n        \"▁sequence\",\n        -11.159016609191895\n      ],\n      [\n        \"▁Four\",\n        -11.159046173095703\n      ],\n      [\n        \"RT\",\n        -11.159050941467285\n      ],\n      [\n        \"▁ihn\",\n        -11.159072875976562\n      ],\n      [\n        \"▁employ\",\n        -11.159223556518555\n      ],\n      [\n        \"umb\",\n        -11.159659385681152\n      ],\n      [\n        \"ită\",\n        -11.159818649291992\n      ],\n      [\n        \"▁Station\",\n        -11.159950256347656\n      ],\n      [\n        \"▁upload\",\n        -11.159972190856934\n      ],\n      [\n        \"▁upgrade\",\n        -11.160445213317871\n      ],\n      [\n        \"▁exterior\",\n        -11.160528182983398\n      ],\n      [\n        \"▁writers\",\n        -11.160531997680664\n      ],\n      [\n        \"▁plot\",\n        -11.160543441772461\n      ],\n      [\n        \"▁Gen\",\n        -11.16068172454834\n      ],\n      [\n        \"TER\",\n        -11.160821914672852\n      ],\n      [\n        \"-12\",\n        -11.160930633544922\n      ],\n      [\n        \"http\",\n        -11.162168502807617\n      ],\n      [\n        \"▁smell\",\n        -11.1621732711792\n      ],\n      [\n        \"post\",\n        -11.162522315979004\n      ],\n      [\n        \"von\",\n        -11.162790298461914\n      ],\n      [\n        \"mili\",\n        -11.16280746459961\n      ],\n      [\n        \"8%\",\n        -11.162972450256348\n      ],\n      [\n        \"▁Andrew\",\n        -11.163065910339355\n      ],\n      [\n        \"▁spun\",\n        -11.16321086883545\n      ],\n      [\n        \"▁grass\",\n        -11.163444519042969\n      ],\n      [\n        \"unter\",\n        -11.163474082946777\n      ],\n      [\n        \"▁burn\",\n        -11.16356086730957\n      ],\n      [\n        \"▁Gegen\",\n        -11.163601875305176\n      ],\n      [\n        \"fest\",\n        -11.163721084594727\n      ],\n      [\n        \"▁Northern\",\n        -11.163738250732422\n      ],\n      [\n        \"▁consumption\",\n        -11.163775444030762\n      ],\n      [\n        \"▁bird\",\n        -11.164069175720215\n      ],\n      [\n        \"▁Miss\",\n        -11.164369583129883\n      ],\n      [\n        \"anti\",\n        -11.16447925567627\n      ],\n      [\n        \"▁viata\",\n        -11.164583206176758\n      ],\n      [\n        \"bereich\",\n        -11.164602279663086\n      ],\n      [\n        \"▁Change\",\n        -11.164871215820312\n      ],\n      [\n        \"▁pouvoir\",\n        -11.165255546569824\n      ],\n      [\n        \"▁demonstrate\",\n        -11.165435791015625\n      ],\n      [\n        \"▁requirement\",\n        -11.165483474731445\n      ],\n      [\n        \"BI\",\n        -11.16577434539795\n      ],\n      [\n        \"ied\",\n        -11.166099548339844\n      ],\n      [\n        \"▁spray\",\n        -11.166358947753906\n      ],\n      [\n        \"▁calitate\",\n        -11.166379928588867\n      ],\n      [\n        \"▁souvent\",\n        -11.1665620803833\n      ],\n      [\n        \"▁samples\",\n        -11.166682243347168\n      ],\n      [\n        \"▁compete\",\n        -11.166930198669434\n      ],\n      [\n        \"ank\",\n        -11.166946411132812\n      ],\n      [\n        \"année\",\n        -11.167037963867188\n      ],\n      [\n        \"wick\",\n        -11.167183876037598\n      ],\n      [\n        \"iff\",\n        -11.167254447937012\n      ],\n      [\n        \"noi\",\n        -11.167255401611328\n      ],\n      [\n        \"ography\",\n        -11.167450904846191\n      ],\n      [\n        \"▁SE\",\n        -11.167508125305176\n      ],\n      [\n        \"▁250\",\n        -11.16779899597168\n      ],\n      [\n        \"▁wealth\",\n        -11.167884826660156\n      ],\n      [\n        \"4%\",\n        -11.168235778808594\n      ],\n      [\n        \"▁swimming\",\n        -11.168269157409668\n      ],\n      [\n        \"enne\",\n        -11.168338775634766\n      ],\n      [\n        \"Qu\",\n        -11.168400764465332\n      ],\n      [\n        \"▁connections\",\n        -11.168476104736328\n      ],\n      [\n        \"onne\",\n        -11.16852855682373\n      ],\n      [\n        \"▁Way\",\n        -11.168676376342773\n      ],\n      [\n        \"voll\",\n        -11.168793678283691\n      ],\n      [\n        \"▁extent\",\n        -11.169041633605957\n      ],\n      [\n        \"▁objective\",\n        -11.169572830200195\n      ],\n      [\n        \"▁clinic\",\n        -11.169581413269043\n      ],\n      [\n        \"NA\",\n        -11.169848442077637\n      ],\n      [\n        \"▁Hope\",\n        -11.170098304748535\n      ],\n      [\n        \"▁coat\",\n        -11.170331954956055\n      ],\n      [\n        \"▁depend\",\n        -11.170393943786621\n      ],\n      [\n        \"▁tine\",\n        -11.170463562011719\n      ],\n      [\n        \"acc\",\n        -11.170486450195312\n      ],\n      [\n        \"▁editor\",\n        -11.170598983764648\n      ],\n      [\n        \"▁Jim\",\n        -11.170690536499023\n      ],\n      [\n        \"600\",\n        -11.171262741088867\n      ],\n      [\n        \"▁module\",\n        -11.171302795410156\n      ],\n      [\n        \"▁deja\",\n        -11.171821594238281\n      ],\n      [\n        \"atur\",\n        -11.171841621398926\n      ],\n      [\n        \"▁maintaining\",\n        -11.171918869018555\n      ],\n      [\n        \"▁hoch\",\n        -11.172059059143066\n      ],\n      [\n        \"▁covering\",\n        -11.17239761352539\n      ],\n      [\n        \"vielen\",\n        -11.172450065612793\n      ],\n      [\n        \"hem\",\n        -11.172531127929688\n      ],\n      [\n        \"▁illegal\",\n        -11.172656059265137\n      ],\n      [\n        \"▁certificate\",\n        -11.17329216003418\n      ],\n      [\n        \"▁collective\",\n        -11.173357963562012\n      ],\n      [\n        \"▁blow\",\n        -11.17343807220459\n      ],\n      [\n        \"▁programming\",\n        -11.17343807220459\n      ],\n      [\n        \"HE\",\n        -11.173727989196777\n      ],\n      [\n        \"▁Division\",\n        -11.173842430114746\n      ],\n      [\n        \"▁ceux\",\n        -11.174081802368164\n      ],\n      [\n        \"▁saved\",\n        -11.174202919006348\n      ],\n      [\n        \"▁worst\",\n        -11.17426586151123\n      ],\n      [\n        \"▁arms\",\n        -11.17430305480957\n      ],\n      [\n        \"▁Officer\",\n        -11.17463493347168\n      ],\n      [\n        \"▁association\",\n        -11.174838066101074\n      ],\n      [\n        \"ington\",\n        -11.1749906539917\n      ],\n      [\n        \"▁belle\",\n        -11.175024032592773\n      ],\n      [\n        \"tting\",\n        -11.17537784576416\n      ],\n      [\n        \"▁attacks\",\n        -11.175446510314941\n      ],\n      [\n        \"▁vei\",\n        -11.17546558380127\n      ],\n      [\n        \"▁gerade\",\n        -11.175470352172852\n      ],\n      [\n        \"▁strain\",\n        -11.175748825073242\n      ],\n      [\n        \"▁offices\",\n        -11.1759672164917\n      ],\n      [\n        \"EM\",\n        -11.17627239227295\n      ],\n      [\n        \"EST\",\n        -11.176509857177734\n      ],\n      [\n        \"-8\",\n        -11.176758766174316\n      ],\n      [\n        \"▁faculty\",\n        -11.176998138427734\n      ],\n      [\n        \"▁Plant\",\n        -11.177046775817871\n      ],\n      [\n        \"pla\",\n        -11.177295684814453\n      ],\n      [\n        \"card\",\n        -11.177618980407715\n      ],\n      [\n        \"▁loose\",\n        -11.177982330322266\n      ],\n      [\n        \"▁PR\",\n        -11.178044319152832\n      ],\n      [\n        \"profit\",\n        -11.178071022033691\n      ],\n      [\n        \"▁channels\",\n        -11.178119659423828\n      ],\n      [\n        \"ATE\",\n        -11.178257942199707\n      ],\n      [\n        \"atic\",\n        -11.178304672241211\n      ],\n      [\n        \"wegen\",\n        -11.178404808044434\n      ],\n      [\n        \"word\",\n        -11.178621292114258\n      ],\n      [\n        \"▁sehen\",\n        -11.178659439086914\n      ],\n      [\n        \"▁nombre\",\n        -11.178744316101074\n      ],\n      [\n        \"▁DO\",\n        -11.178763389587402\n      ],\n      [\n        \"▁hoping\",\n        -11.178949356079102\n      ],\n      [\n        \"▁wollen\",\n        -11.179091453552246\n      ],\n      [\n        \"▁decat\",\n        -11.179244995117188\n      ],\n      [\n        \"IF\",\n        -11.179386138916016\n      ],\n      [\n        \"▁permission\",\n        -11.179396629333496\n      ],\n      [\n        \"▁Williams\",\n        -11.179936408996582\n      ],\n      [\n        \"▁beer\",\n        -11.179962158203125\n      ],\n      [\n        \"▁dernière\",\n        -11.180052757263184\n      ],\n      [\n        \"▁purchasing\",\n        -11.18025016784668\n      ],\n      [\n        \"▁pride\",\n        -11.180416107177734\n      ],\n      [\n        \"solv\",\n        -11.180598258972168\n      ],\n      [\n        \"ego\",\n        -11.180691719055176\n      ],\n      [\n        \"▁Oil\",\n        -11.18079662322998\n      ],\n      [\n        \"▁dishes\",\n        -11.18102741241455\n      ],\n      [\n        \"▁Baby\",\n        -11.181109428405762\n      ],\n      [\n        \"▁Roll\",\n        -11.181137084960938\n      ],\n      [\n        \"vez\",\n        -11.18134593963623\n      ],\n      [\n        \"▁drept\",\n        -11.181367874145508\n      ],\n      [\n        \"lly\",\n        -11.18148136138916\n      ],\n      [\n        \"▁potrivit\",\n        -11.181495666503906\n      ],\n      [\n        \"person\",\n        -11.181961059570312\n      ],\n      [\n        \"▁interactive\",\n        -11.182269096374512\n      ],\n      [\n        \"▁brilliant\",\n        -11.182304382324219\n      ],\n      [\n        \"▁000\",\n        -11.182357788085938\n      ],\n      [\n        \"▁giant\",\n        -11.182657241821289\n      ],\n      [\n        \"▁plain\",\n        -11.182945251464844\n      ],\n      [\n        \"▁lock\",\n        -11.183197975158691\n      ],\n      [\n        \"▁inspection\",\n        -11.183762550354004\n      ],\n      [\n        \"▁symbol\",\n        -11.18392276763916\n      ],\n      [\n        \"▁Gal\",\n        -11.183953285217285\n      ],\n      [\n        \"▁concepts\",\n        -11.1840181350708\n      ],\n      [\n        \"▁venture\",\n        -11.18411922454834\n      ],\n      [\n        \"▁Tr\",\n        -11.184402465820312\n      ],\n      [\n        \"▁Color\",\n        -11.184469223022461\n      ],\n      [\n        \"▁behalf\",\n        -11.184635162353516\n      ],\n      [\n        \"ink\",\n        -11.184715270996094\n      ],\n      [\n        \"atii\",\n        -11.1848726272583\n      ],\n      [\n        \"wie\",\n        -11.184907913208008\n      ],\n      [\n        \"▁stream\",\n        -11.18514347076416\n      ],\n      [\n        \"▁buyers\",\n        -11.185192108154297\n      ],\n      [\n        \"legen\",\n        -11.185526847839355\n      ],\n      [\n        \"iness\",\n        -11.18578815460205\n      ],\n      [\n        \"▁absolute\",\n        -11.185945510864258\n      ],\n      [\n        \"▁council\",\n        -11.186067581176758\n      ],\n      [\n        \"▁displayed\",\n        -11.186172485351562\n      ],\n      [\n        \"▁Bun\",\n        -11.186405181884766\n      ],\n      [\n        \"▁darauf\",\n        -11.186585426330566\n      ],\n      [\n        \"▁rod\",\n        -11.186829566955566\n      ],\n      [\n        \"▁repeat\",\n        -11.186898231506348\n      ],\n      [\n        \"quelle\",\n        -11.187023162841797\n      ],\n      [\n        \"lation\",\n        -11.187433242797852\n      ],\n      [\n        \"gul\",\n        -11.18774700164795\n      ],\n      [\n        \"▁compensation\",\n        -11.188064575195312\n      ],\n      [\n        \"▁string\",\n        -11.1881685256958\n      ],\n      [\n        \"▁joining\",\n        -11.188251495361328\n      ],\n      [\n        \"▁Pra\",\n        -11.188429832458496\n      ],\n      [\n        \"hab\",\n        -11.188936233520508\n      ],\n      [\n        \"▁plane\",\n        -11.189024925231934\n      ],\n      [\n        \"▁conversion\",\n        -11.189078330993652\n      ],\n      [\n        \"▁lesson\",\n        -11.189361572265625\n      ],\n      [\n        \"bound\",\n        -11.1893949508667\n      ],\n      [\n        \"▁seats\",\n        -11.18946361541748\n      ],\n      [\n        \"voc\",\n        -11.189902305603027\n      ],\n      [\n        \"▁Disney\",\n        -11.190120697021484\n      ],\n      [\n        \"esse\",\n        -11.190277099609375\n      ],\n      [\n        \"▁awards\",\n        -11.190279006958008\n      ],\n      [\n        \"▁initiative\",\n        -11.190483093261719\n      ],\n      [\n        \"UM\",\n        -11.19050407409668\n      ],\n      [\n        \"▁intelligence\",\n        -11.190763473510742\n      ],\n      [\n        \"▁laser\",\n        -11.191128730773926\n      ],\n      [\n        \"än\",\n        -11.191228866577148\n      ],\n      [\n        \"▁generated\",\n        -11.191231727600098\n      ],\n      [\n        \"▁allen\",\n        -11.19186782836914\n      ],\n      [\n        \"▁Aug\",\n        -11.19261360168457\n      ],\n      [\n        \"lini\",\n        -11.192968368530273\n      ],\n      [\n        \"▁Update\",\n        -11.193015098571777\n      ],\n      [\n        \"▁grab\",\n        -11.193095207214355\n      ],\n      [\n        \"▁Bridge\",\n        -11.193219184875488\n      ],\n      [\n        \"rock\",\n        -11.193289756774902\n      ],\n      [\n        \"hold\",\n        -11.193461418151855\n      ],\n      [\n        \"seinen\",\n        -11.193643569946289\n      ],\n      [\n        \"▁false\",\n        -11.193758010864258\n      ],\n      [\n        \"type\",\n        -11.193792343139648\n      ],\n      [\n        \"▁outcome\",\n        -11.193906784057617\n      ],\n      [\n        \"▁crazy\",\n        -11.194161415100098\n      ],\n      [\n        \"▁Platz\",\n        -11.194281578063965\n      ],\n      [\n        \"▁believed\",\n        -11.194426536560059\n      ],\n      [\n        \"▁adjust\",\n        -11.194503784179688\n      ],\n      [\n        \"▁entrance\",\n        -11.194644927978516\n      ],\n      [\n        \"▁Colorado\",\n        -11.194751739501953\n      ],\n      [\n        \"▁concentration\",\n        -11.194865226745605\n      ],\n      [\n        \"aid\",\n        -11.194958686828613\n      ],\n      [\n        \"▁regardless\",\n        -11.195035934448242\n      ],\n      [\n        \"▁mici\",\n        -11.195063591003418\n      ],\n      [\n        \"▁potentially\",\n        -11.195109367370605\n      ],\n      [\n        \"▁Custom\",\n        -11.195867538452148\n      ],\n      [\n        \"rag\",\n        -11.196009635925293\n      ],\n      [\n        \"▁employer\",\n        -11.19604206085205\n      ],\n      [\n        \"tagged\",\n        -11.196158409118652\n      ],\n      [\n        \"▁34\",\n        -11.196271896362305\n      ],\n      [\n        \"fro\",\n        -11.196895599365234\n      ],\n      [\n        \"▁Pas\",\n        -11.197010040283203\n      ],\n      [\n        \"▁AS\",\n        -11.197013854980469\n      ],\n      [\n        \"PP\",\n        -11.197031021118164\n      ],\n      [\n        \"stru\",\n        -11.19741439819336\n      ],\n      [\n        \"grâce\",\n        -11.198037147521973\n      ],\n      [\n        \"▁anyway\",\n        -11.198240280151367\n      ],\n      [\n        \"▁streets\",\n        -11.1986083984375\n      ],\n      [\n        \"▁Region\",\n        -11.199190139770508\n      ],\n      [\n        \"▁newly\",\n        -11.199280738830566\n      ],\n      [\n        \"▁assistant\",\n        -11.199461936950684\n      ],\n      [\n        \"▁requests\",\n        -11.199618339538574\n      ],\n      [\n        \"▁Ohio\",\n        -11.199705123901367\n      ],\n      [\n        \"▁continuing\",\n        -11.200072288513184\n      ],\n      [\n        \"▁îm\",\n        -11.200136184692383\n      ],\n      [\n        \"7%\",\n        -11.20031452178955\n      ],\n      [\n        \"▁basically\",\n        -11.200325965881348\n      ],\n      [\n        \"gabe\",\n        -11.200334548950195\n      ],\n      [\n        \"▁ultra\",\n        -11.200355529785156\n      ],\n      [\n        \"pic\",\n        -11.200571060180664\n      ],\n      [\n        \"▁jeder\",\n        -11.200939178466797\n      ],\n      [\n        \"▁Cook\",\n        -11.201225280761719\n      ],\n      [\n        \"▁tie\",\n        -11.201227188110352\n      ],\n      [\n        \"▁yard\",\n        -11.20151424407959\n      ],\n      [\n        \"▁wash\",\n        -11.20152759552002\n      ],\n      [\n        \"▁3,\",\n        -11.20194149017334\n      ],\n      [\n        \"▁exista\",\n        -11.202128410339355\n      ],\n      [\n        \"▁egg\",\n        -11.202342987060547\n      ],\n      [\n        \"▁marché\",\n        -11.202616691589355\n      ],\n      [\n        \"kommen\",\n        -11.202630996704102\n      ],\n      [\n        \"▁Select\",\n        -11.202999114990234\n      ],\n      [\n        \"geben\",\n        -11.203126907348633\n      ],\n      [\n        \"▁Joseph\",\n        -11.203531265258789\n      ],\n      [\n        \"▁Ces\",\n        -11.203642845153809\n      ],\n      [\n        \"▁hundred\",\n        -11.203676223754883\n      ],\n      [\n        \"even\",\n        -11.203792572021484\n      ],\n      [\n        \"gal\",\n        -11.204232215881348\n      ],\n      [\n        \"800\",\n        -11.20443058013916\n      ],\n      [\n        \"▁Jones\",\n        -11.204599380493164\n      ],\n      [\n        \"ova\",\n        -11.204681396484375\n      ],\n      [\n        \"▁careful\",\n        -11.204727172851562\n      ],\n      [\n        \"▁alarm\",\n        -11.205070495605469\n      ],\n      [\n        \"NI\",\n        -11.205113410949707\n      ],\n      [\n        \"▁residence\",\n        -11.205327987670898\n      ],\n      [\n        \"▁wäre\",\n        -11.20590877532959\n      ],\n      [\n        \"▁Dor\",\n        -11.205986976623535\n      ],\n      [\n        \"▁amounts\",\n        -11.206369400024414\n      ],\n      [\n        \"▁mistake\",\n        -11.206687927246094\n      ],\n      [\n        \"ates\",\n        -11.206796646118164\n      ],\n      [\n        \"▁bune\",\n        -11.206951141357422\n      ],\n      [\n        \"▁vegetables\",\n        -11.207124710083008\n      ],\n      [\n        \"▁Ann\",\n        -11.207204818725586\n      ],\n      [\n        \"logical\",\n        -11.20776081085205\n      ],\n      [\n        \"stadt\",\n        -11.207806587219238\n      ],\n      [\n        \"▁chances\",\n        -11.207921981811523\n      ],\n      [\n        \"%)\",\n        -11.208030700683594\n      ],\n      [\n        \"▁minimal\",\n        -11.20810604095459\n      ],\n      [\n        \"▁naturally\",\n        -11.20817756652832\n      ],\n      [\n        \"▁Geld\",\n        -11.20822525024414\n      ],\n      [\n        \"▁Yu\",\n        -11.208361625671387\n      ],\n      [\n        \"▁wrap\",\n        -11.20840072631836\n      ],\n      [\n        \"rest\",\n        -11.208674430847168\n      ],\n      [\n        \"▁legs\",\n        -11.208758354187012\n      ],\n      [\n        \"PM\",\n        -11.208806991577148\n      ],\n      [\n        \"▁Heart\",\n        -11.208888053894043\n      ],\n      [\n        \"▁suspect\",\n        -11.209020614624023\n      ],\n      [\n        \"Go\",\n        -11.209098815917969\n      ],\n      [\n        \"▁Fil\",\n        -11.209175109863281\n      ],\n      [\n        \"▁YOU\",\n        -11.209175109863281\n      ],\n      [\n        \"▁victory\",\n        -11.209245681762695\n      ],\n      [\n        \"pun\",\n        -11.20960807800293\n      ],\n      [\n        \"▁Zo\",\n        -11.209632873535156\n      ],\n      [\n        \"CT\",\n        -11.209640502929688\n      ],\n      [\n        \"▁trim\",\n        -11.20969009399414\n      ],\n      [\n        \"▁stuck\",\n        -11.209836959838867\n      ],\n      [\n        \"ators\",\n        -11.209877014160156\n      ],\n      [\n        \"▁Ideas\",\n        -11.210016250610352\n      ],\n      [\n        \"▁voyage\",\n        -11.210166931152344\n      ],\n      [\n        \"▁Restaurant\",\n        -11.210205078125\n      ],\n      [\n        \"▁pat\",\n        -11.210234642028809\n      ],\n      [\n        \"▁bond\",\n        -11.210521697998047\n      ],\n      [\n        \"▁Del\",\n        -11.210552215576172\n      ],\n      [\n        \"▁fighting\",\n        -11.210705757141113\n      ],\n      [\n        \"▁concerning\",\n        -11.210867881774902\n      ],\n      [\n        \"▁etwa\",\n        -11.211141586303711\n      ],\n      [\n        \"▁Thema\",\n        -11.211237907409668\n      ],\n      [\n        \"▁preferred\",\n        -11.211423873901367\n      ],\n      [\n        \"▁pitch\",\n        -11.211465835571289\n      ],\n      [\n        \"▁Singapore\",\n        -11.211971282958984\n      ],\n      [\n        \"▁tub\",\n        -11.212018013000488\n      ],\n      [\n        \"FT\",\n        -11.212053298950195\n      ],\n      [\n        \"▁Product\",\n        -11.21212100982666\n      ],\n      [\n        \"▁applying\",\n        -11.212285995483398\n      ],\n      [\n        \"▁Fr\",\n        -11.212340354919434\n      ],\n      [\n        \"ţa\",\n        -11.212599754333496\n      ],\n      [\n        \"▁iPad\",\n        -11.212861061096191\n      ],\n      [\n        \"PD\",\n        -11.2129545211792\n      ],\n      [\n        \"▁comun\",\n        -11.212995529174805\n      ],\n      [\n        \"▁pie\",\n        -11.213286399841309\n      ],\n      [\n        \"rank\",\n        -11.21364688873291\n      ],\n      [\n        \"tron\",\n        -11.213677406311035\n      ],\n      [\n        \"▁pest\",\n        -11.213906288146973\n      ],\n      [\n        \"▁herself\",\n        -11.213936805725098\n      ],\n      [\n        \"▁intense\",\n        -11.213964462280273\n      ],\n      [\n        \"foot\",\n        -11.21413803100586\n      ],\n      [\n        \"▁1998\",\n        -11.2141695022583\n      ],\n      [\n        \"▁anxiety\",\n        -11.214616775512695\n      ],\n      [\n        \"▁portable\",\n        -11.214674949645996\n      ],\n      [\n        \"▁harm\",\n        -11.214735984802246\n      ],\n      [\n        \"▁admit\",\n        -11.214885711669922\n      ],\n      [\n        \"sted\",\n        -11.214900016784668\n      ],\n      [\n        \"▁regions\",\n        -11.215450286865234\n      ],\n      [\n        \"cie\",\n        -11.215556144714355\n      ],\n      [\n        \"▁robust\",\n        -11.21577262878418\n      ],\n      [\n        \"▁stem\",\n        -11.215982437133789\n      ],\n      [\n        \"▁roles\",\n        -11.216024398803711\n      ],\n      [\n        \"▁Latin\",\n        -11.216224670410156\n      ],\n      [\n        \"▁Ré\",\n        -11.216378211975098\n      ],\n      [\n        \"▁ref\",\n        -11.216381072998047\n      ],\n      [\n        \"isme\",\n        -11.216426849365234\n      ],\n      [\n        \"▁contribution\",\n        -11.216776847839355\n      ],\n      [\n        \"▁forever\",\n        -11.217447280883789\n      ],\n      [\n        \"▁frei\",\n        -11.21754264831543\n      ],\n      [\n        \"▁mont\",\n        -11.217818260192871\n      ],\n      [\n        \"that\",\n        -11.217999458312988\n      ],\n      [\n        \"▁sensitive\",\n        -11.218116760253906\n      ],\n      [\n        \"▁wider\",\n        -11.218175888061523\n      ],\n      [\n        \"AF\",\n        -11.218234062194824\n      ],\n      [\n        \"▁liability\",\n        -11.218748092651367\n      ],\n      [\n        \"ţiei\",\n        -11.219043731689453\n      ],\n      [\n        \"▁Cho\",\n        -11.219260215759277\n      ],\n      [\n        \"aria\",\n        -11.21960735321045\n      ],\n      [\n        \"rang\",\n        -11.21977710723877\n      ],\n      [\n        \"▁Account\",\n        -11.21986198425293\n      ],\n      [\n        \"▁III\",\n        -11.219941139221191\n      ],\n      [\n        \"▁tooth\",\n        -11.220222473144531\n      ],\n      [\n        \"▁factory\",\n        -11.220240592956543\n      ],\n      [\n        \"▁dropped\",\n        -11.220495223999023\n      ],\n      [\n        \"horn\",\n        -11.220780372619629\n      ],\n      [\n        \"RP\",\n        -11.221110343933105\n      ],\n      [\n        \"▁container\",\n        -11.22118091583252\n      ],\n      [\n        \"fran\",\n        -11.221474647521973\n      ],\n      [\n        \"▁lawyer\",\n        -11.221842765808105\n      ],\n      [\n        \"▁Image\",\n        -11.221907615661621\n      ],\n      [\n        \"HO\",\n        -11.22195816040039\n      ],\n      [\n        \"▁incorporate\",\n        -11.221992492675781\n      ],\n      [\n        \"▁lume\",\n        -11.22226333618164\n      ],\n      [\n        \"GA\",\n        -11.222331047058105\n      ],\n      [\n        \"itati\",\n        -11.222370147705078\n      ],\n      [\n        \"autre\",\n        -11.222665786743164\n      ],\n      [\n        \"ierten\",\n        -11.222688674926758\n      ],\n      [\n        \"[\",\n        -11.222746849060059\n      ],\n      [\n        \"▁packages\",\n        -11.222758293151855\n      ],\n      [\n        \"▁Simon\",\n        -11.22290325164795\n      ],\n      [\n        \"▁somewhat\",\n        -11.223734855651855\n      ],\n      [\n        \"mbo\",\n        -11.223737716674805\n      ],\n      [\n        \"lite\",\n        -11.223844528198242\n      ],\n      [\n        \"▁eliminate\",\n        -11.22395133972168\n      ],\n      [\n        \"▁decrease\",\n        -11.224117279052734\n      ],\n      [\n        \"▁geben\",\n        -11.224214553833008\n      ],\n      [\n        \"▁approaches\",\n        -11.224482536315918\n      ],\n      [\n        \"▁tissue\",\n        -11.224940299987793\n      ],\n      [\n        \"▁personne\",\n        -11.225192070007324\n      ],\n      [\n        \"ional\",\n        -11.225587844848633\n      ],\n      [\n        \"unable\",\n        -11.2256498336792\n      ],\n      [\n        \"▁Case\",\n        -11.225736618041992\n      ],\n      [\n        \"hill\",\n        -11.225744247436523\n      ],\n      [\n        \"och\",\n        -11.225862503051758\n      ],\n      [\n        \"▁minister\",\n        -11.225920677185059\n      ],\n      [\n        \"▁Rad\",\n        -11.226285934448242\n      ],\n      [\n        \"▁yoga\",\n        -11.226390838623047\n      ],\n      [\n        \"▁encounter\",\n        -11.22661018371582\n      ],\n      [\n        \"text\",\n        -11.22670841217041\n      ],\n      [\n        \"▁OS\",\n        -11.226719856262207\n      ],\n      [\n        \"▁opera\",\n        -11.22673225402832\n      ],\n      [\n        \"▁loving\",\n        -11.226977348327637\n      ],\n      [\n        \"▁birds\",\n        -11.227363586425781\n      ],\n      [\n        \"▁prim\",\n        -11.227389335632324\n      ],\n      [\n        \"easca\",\n        -11.227432250976562\n      ],\n      [\n        \"park\",\n        -11.227453231811523\n      ],\n      [\n        \"fü\",\n        -11.227797508239746\n      ],\n      [\n        \"▁champion\",\n        -11.227824211120605\n      ],\n      [\n        \"▁warning\",\n        -11.228245735168457\n      ],\n      [\n        \"DC\",\n        -11.228271484375\n      ],\n      [\n        \"▁yield\",\n        -11.228310585021973\n      ],\n      [\n        \"raum\",\n        -11.228334426879883\n      ],\n      [\n        \"▁Student\",\n        -11.228434562683105\n      ],\n      [\n        \"▁Rev\",\n        -11.22848892211914\n      ],\n      [\n        \"▁Fu\",\n        -11.228501319885254\n      ],\n      [\n        \"▁intra\",\n        -11.22854232788086\n      ],\n      [\n        \"▁proces\",\n        -11.228585243225098\n      ],\n      [\n        \"▁margin\",\n        -11.228621482849121\n      ],\n      [\n        \"lands\",\n        -11.228816986083984\n      ],\n      [\n        \"04\",\n        -11.228952407836914\n      ],\n      [\n        \"▁Steel\",\n        -11.229897499084473\n      ],\n      [\n        \"▁besoin\",\n        -11.230081558227539\n      ],\n      [\n        \"şti\",\n        -11.230561256408691\n      ],\n      [\n        \"▁39\",\n        -11.230635643005371\n      ],\n      [\n        \"▁outcomes\",\n        -11.230677604675293\n      ],\n      [\n        \"wert\",\n        -11.230719566345215\n      ],\n      [\n        \"3,\",\n        -11.23080062866211\n      ],\n      [\n        \"▁hole\",\n        -11.230888366699219\n      ],\n      [\n        \"▁Create\",\n        -11.23096752166748\n      ],\n      [\n        \"▁hall\",\n        -11.231266975402832\n      ],\n      [\n        \"nach\",\n        -11.231595039367676\n      ],\n      [\n        \"▁indicate\",\n        -11.232311248779297\n      ],\n      [\n        \"cum\",\n        -11.232604026794434\n      ],\n      [\n        \"▁Mann\",\n        -11.232690811157227\n      ],\n      [\n        \"▁reaction\",\n        -11.232828140258789\n      ],\n      [\n        \"▁empty\",\n        -11.23289680480957\n      ],\n      [\n        \"▁Sign\",\n        -11.232941627502441\n      ],\n      [\n        \"▁pm\",\n        -11.23300838470459\n      ],\n      [\n        \"erung\",\n        -11.23322582244873\n      ],\n      [\n        \"▁würde\",\n        -11.233592987060547\n      ],\n      [\n        \"▁declarat\",\n        -11.233602523803711\n      ],\n      [\n        \"6%\",\n        -11.23371410369873\n      ],\n      [\n        \"▁Client\",\n        -11.23377513885498\n      ],\n      [\n        \"vil\",\n        -11.234295845031738\n      ],\n      [\n        \"▁electricity\",\n        -11.234469413757324\n      ],\n      [\n        \"▁75\",\n        -11.234505653381348\n      ],\n      [\n        \"▁buna\",\n        -11.234505653381348\n      ],\n      [\n        \"eşte\",\n        -11.23473834991455\n      ],\n      [\n        \"▁prop\",\n        -11.234792709350586\n      ],\n      [\n        \"▁journal\",\n        -11.234883308410645\n      ],\n      [\n        \"▁meu\",\n        -11.23495101928711\n      ],\n      [\n        \"▁chef\",\n        -11.235034942626953\n      ],\n      [\n        \"▁Ever\",\n        -11.235102653503418\n      ],\n      [\n        \"▁feelings\",\n        -11.235466003417969\n      ],\n      [\n        \"PT\",\n        -11.23551082611084\n      ],\n      [\n        \"▁proposal\",\n        -11.235651969909668\n      ],\n      [\n        \"▁Its\",\n        -11.235709190368652\n      ],\n      [\n        \"▁2013.\",\n        -11.235795974731445\n      ],\n      [\n        \"▁Bundes\",\n        -11.23595142364502\n      ],\n      [\n        \"▁droit\",\n        -11.236333847045898\n      ],\n      [\n        \"▁10%\",\n        -11.236671447753906\n      ],\n      [\n        \"gard\",\n        -11.236772537231445\n      ],\n      [\n        \"information\",\n        -11.236814498901367\n      ],\n      [\n        \"FE\",\n        -11.237309455871582\n      ],\n      [\n        \"▁Dun\",\n        -11.237340927124023\n      ],\n      [\n        \"▁Stock\",\n        -11.237472534179688\n      ],\n      [\n        \"ație\",\n        -11.2374849319458\n      ],\n      [\n        \"▁mag\",\n        -11.237603187561035\n      ],\n      [\n        \"▁br\",\n        -11.237665176391602\n      ],\n      [\n        \"▁sight\",\n        -11.237772941589355\n      ],\n      [\n        \"phone\",\n        -11.237796783447266\n      ],\n      [\n        \"▁Cy\",\n        -11.237811088562012\n      ],\n      [\n        \"▁opposite\",\n        -11.238035202026367\n      ],\n      [\n        \"ically\",\n        -11.238235473632812\n      ],\n      [\n        \"großen\",\n        -11.238388061523438\n      ],\n      [\n        \"▁Without\",\n        -11.23845100402832\n      ],\n      [\n        \"espace\",\n        -11.238515853881836\n      ],\n      [\n        \"▁chairs\",\n        -11.238595008850098\n      ],\n      [\n        \"▁matches\",\n        -11.238685607910156\n      ],\n      [\n        \"ateur\",\n        -11.238697052001953\n      ],\n      [\n        \"▁Cost\",\n        -11.238699913024902\n      ],\n      [\n        \"▁WordPress\",\n        -11.238880157470703\n      ],\n      [\n        \"▁Opera\",\n        -11.239195823669434\n      ],\n      [\n        \"walked\",\n        -11.239234924316406\n      ],\n      [\n        \"▁transactions\",\n        -11.239521026611328\n      ],\n      [\n        \"▁nuclear\",\n        -11.239579200744629\n      ],\n      [\n        \"ways\",\n        -11.239594459533691\n      ],\n      [\n        \"▁Oct\",\n        -11.239738464355469\n      ],\n      [\n        \"▁bomb\",\n        -11.239835739135742\n      ],\n      [\n        \"▁tracking\",\n        -11.239879608154297\n      ],\n      [\n        \"▁photograph\",\n        -11.240066528320312\n      ],\n      [\n        \"bio\",\n        -11.240309715270996\n      ],\n      [\n        \"▁branch\",\n        -11.240363121032715\n      ],\n      [\n        \"▁$5\",\n        -11.240684509277344\n      ],\n      [\n        \"▁diagram\",\n        -11.240986824035645\n      ],\n      [\n        \"▁Hard\",\n        -11.241218566894531\n      ],\n      [\n        \"bach\",\n        -11.241232872009277\n      ],\n      [\n        \"▁42\",\n        -11.241249084472656\n      ],\n      [\n        \"logy\",\n        -11.241472244262695\n      ],\n      [\n        \"▁tile\",\n        -11.241593360900879\n      ],\n      [\n        \"▁API\",\n        -11.241833686828613\n      ],\n      [\n        \"seront\",\n        -11.24204158782959\n      ],\n      [\n        \"ENT\",\n        -11.242156982421875\n      ],\n      [\n        \"▁accommodation\",\n        -11.242409706115723\n      ],\n      [\n        \"▁fiber\",\n        -11.242438316345215\n      ],\n      [\n        \"▁Give\",\n        -11.242792129516602\n      ],\n      [\n        \"▁Gas\",\n        -11.242916107177734\n      ],\n      [\n        \"▁Spain\",\n        -11.243086814880371\n      ],\n      [\n        \"▁listing\",\n        -11.24312686920166\n      ],\n      [\n        \"▁blocks\",\n        -11.24349308013916\n      ],\n      [\n        \"▁constitu\",\n        -11.243762969970703\n      ],\n      [\n        \"▁convenience\",\n        -11.243797302246094\n      ],\n      [\n        \"▁prize\",\n        -11.243823051452637\n      ],\n      [\n        \"▁aircraft\",\n        -11.24404239654541\n      ],\n      [\n        \"containing\",\n        -11.244124412536621\n      ],\n      [\n        \"▁vice\",\n        -11.244247436523438\n      ],\n      [\n        \"▁organisations\",\n        -11.244304656982422\n      ],\n      [\n        \"▁complicated\",\n        -11.244588851928711\n      ],\n      [\n        \"rons\",\n        -11.244647979736328\n      ],\n      [\n        \"▁bars\",\n        -11.244670867919922\n      ],\n      [\n        \"était\",\n        -11.244705200195312\n      ],\n      [\n        \"▁checking\",\n        -11.245287895202637\n      ],\n      [\n        \"vant\",\n        -11.245542526245117\n      ],\n      [\n        \"▁couch\",\n        -11.245657920837402\n      ],\n      [\n        \"▁brush\",\n        -11.245870590209961\n      ],\n      [\n        \"▁printer\",\n        -11.245922088623047\n      ],\n      [\n        \"▁Rat\",\n        -11.246051788330078\n      ],\n      [\n        \"▁announce\",\n        -11.246057510375977\n      ],\n      [\n        \"▁salari\",\n        -11.246200561523438\n      ],\n      [\n        \"▁Sk\",\n        -11.246356964111328\n      ],\n      [\n        \"pal\",\n        -11.246383666992188\n      ],\n      [\n        \"▁yards\",\n        -11.24658203125\n      ],\n      [\n        \"▁flexibility\",\n        -11.246652603149414\n      ],\n      [\n        \"▁jamais\",\n        -11.24670696258545\n      ],\n      [\n        \"UC\",\n        -11.246740341186523\n      ],\n      [\n        \"▁4,\",\n        -11.246793746948242\n      ],\n      [\n        \"▁Made\",\n        -11.247078895568848\n      ],\n      [\n        \"▁solche\",\n        -11.247113227844238\n      ],\n      [\n        \"▁tri\",\n        -11.247237205505371\n      ],\n      [\n        \"▁outfit\",\n        -11.247243881225586\n      ],\n      [\n        \"м\",\n        -11.247267723083496\n      ],\n      [\n        \"▁encouraged\",\n        -11.247477531433105\n      ],\n      [\n        \"trac\",\n        -11.247552871704102\n      ],\n      [\n        \"▁genetic\",\n        -11.24755859375\n      ],\n      [\n        \"▁beneficial\",\n        -11.247747421264648\n      ],\n      [\n        \"mă\",\n        -11.247849464416504\n      ],\n      [\n        \"involving\",\n        -11.247879028320312\n      ],\n      [\n        \"▁knee\",\n        -11.247879028320312\n      ],\n      [\n        \"▁respective\",\n        -11.248316764831543\n      ],\n      [\n        \"▁controlled\",\n        -11.248350143432617\n      ],\n      [\n        \"▁Rück\",\n        -11.24837589263916\n      ],\n      [\n        \"LC\",\n        -11.248592376708984\n      ],\n      [\n        \"▁highlight\",\n        -11.248634338378906\n      ],\n      [\n        \"chem\",\n        -11.248797416687012\n      ],\n      [\n        \"▁Bis\",\n        -11.24956226348877\n      ],\n      [\n        \"▁graphics\",\n        -11.249592781066895\n      ],\n      [\n        \"▁posibil\",\n        -11.249672889709473\n      ],\n      [\n        \"orul\",\n        -11.249682426452637\n      ],\n      [\n        \"imagin\",\n        -11.249836921691895\n      ],\n      [\n        \"▁draft\",\n        -11.250006675720215\n      ],\n      [\n        \"shaped\",\n        -11.250219345092773\n      ],\n      [\n        \"▁suggests\",\n        -11.250221252441406\n      ],\n      [\n        \"uvre\",\n        -11.250509262084961\n      ],\n      [\n        \"page\",\n        -11.250545501708984\n      ],\n      [\n        \"▁sentiment\",\n        -11.250685691833496\n      ],\n      [\n        \"▁loop\",\n        -11.251015663146973\n      ],\n      [\n        \"▁Quality\",\n        -11.251839637756348\n      ],\n      [\n        \"▁volunteers\",\n        -11.251869201660156\n      ],\n      [\n        \"▁representation\",\n        -11.251923561096191\n      ],\n      [\n        \"▁examination\",\n        -11.252134323120117\n      ],\n      [\n        \"▁(2)\",\n        -11.252225875854492\n      ],\n      [\n        \"assi\",\n        -11.252435684204102\n      ],\n      [\n        \"▁till\",\n        -11.252486228942871\n      ],\n      [\n        \"▁Catholic\",\n        -11.252618789672852\n      ],\n      [\n        \"▁2020\",\n        -11.252726554870605\n      ],\n      [\n        \"▁random\",\n        -11.252764701843262\n      ],\n      [\n        \"tage\",\n        -11.253146171569824\n      ],\n      [\n        \"▁baking\",\n        -11.253690719604492\n      ],\n      [\n        \"▁Musik\",\n        -11.253852844238281\n      ],\n      [\n        \"▁SC\",\n        -11.253867149353027\n      ],\n      [\n        \"▁möchte\",\n        -11.254390716552734\n      ],\n      [\n        \"▁gene\",\n        -11.254411697387695\n      ],\n      [\n        \"▁kam\",\n        -11.254928588867188\n      ],\n      [\n        \"▁inspire\",\n        -11.254974365234375\n      ],\n      [\n        \"unk\",\n        -11.255097389221191\n      ],\n      [\n        \"▁Final\",\n        -11.255477905273438\n      ],\n      [\n        \"▁jeden\",\n        -11.255497932434082\n      ],\n      [\n        \"▁LLC\",\n        -11.255962371826172\n      ],\n      [\n        \"▁sistem\",\n        -11.25613784790039\n      ],\n      [\n        \"▁stages\",\n        -11.256441116333008\n      ],\n      [\n        \"▁texture\",\n        -11.256613731384277\n      ],\n      [\n        \"rib\",\n        -11.256739616394043\n      ],\n      [\n        \"lung\",\n        -11.256782531738281\n      ],\n      [\n        \"▁breath\",\n        -11.256814002990723\n      ],\n      [\n        \"▁hosted\",\n        -11.256844520568848\n      ],\n      [\n        \"▁Kingdom\",\n        -11.257079124450684\n      ],\n      [\n        \"▁politics\",\n        -11.257121086120605\n      ],\n      [\n        \"▁mood\",\n        -11.257122993469238\n      ],\n      [\n        \"cam\",\n        -11.257285118103027\n      ],\n      [\n        \"▁liked\",\n        -11.257287979125977\n      ],\n      [\n        \"▁Credit\",\n        -11.257304191589355\n      ],\n      [\n        \"tisch\",\n        -11.257527351379395\n      ],\n      [\n        \"▁everywhere\",\n        -11.257692337036133\n      ],\n      [\n        \"▁poti\",\n        -11.257915496826172\n      ],\n      [\n        \"▁fruits\",\n        -11.258264541625977\n      ],\n      [\n        \"oire\",\n        -11.258322715759277\n      ],\n      [\n        \"▁mesure\",\n        -11.258586883544922\n      ],\n      [\n        \"▁Studies\",\n        -11.258838653564453\n      ],\n      [\n        \"▁provision\",\n        -11.25888729095459\n      ],\n      [\n        \"▁Maria\",\n        -11.258927345275879\n      ],\n      [\n        \"▁necessarily\",\n        -11.259103775024414\n      ],\n      [\n        \"▁Net\",\n        -11.259212493896484\n      ],\n      [\n        \"▁scar\",\n        -11.259307861328125\n      ],\n      [\n        \"▁tracks\",\n        -11.259424209594727\n      ],\n      [\n        \"▁ads\",\n        -11.259856224060059\n      ],\n      [\n        \"termin\",\n        -11.259861946105957\n      ],\n      [\n        \"▁Yo\",\n        -11.26022720336914\n      ],\n      [\n        \"atory\",\n        -11.260252952575684\n      ],\n      [\n        \"itoare\",\n        -11.26025676727295\n      ],\n      [\n        \"▁colours\",\n        -11.260563850402832\n      ],\n      [\n        \"▁correctly\",\n        -11.260817527770996\n      ],\n      [\n        \"▁Trade\",\n        -11.26090145111084\n      ],\n      [\n        \"▁Week\",\n        -11.261052131652832\n      ],\n      [\n        \"▁Premier\",\n        -11.261499404907227\n      ],\n      [\n        \"▁designers\",\n        -11.261600494384766\n      ],\n      [\n        \"▁BE\",\n        -11.261879920959473\n      ],\n      [\n        \"▁desktop\",\n        -11.261929512023926\n      ],\n      [\n        \"▁lifetime\",\n        -11.262046813964844\n      ],\n      [\n        \"▁Kind\",\n        -11.26213264465332\n      ],\n      [\n        \"▁divers\",\n        -11.262246131896973\n      ],\n      [\n        \"rain\",\n        -11.262260437011719\n      ],\n      [\n        \"▁Von\",\n        -11.262263298034668\n      ],\n      [\n        \"▁bal\",\n        -11.262568473815918\n      ],\n      [\n        \"▁shots\",\n        -11.262624740600586\n      ],\n      [\n        \"▁accommodate\",\n        -11.262767791748047\n      ],\n      [\n        \"▁Paper\",\n        -11.263001441955566\n      ],\n      [\n        \"▁interaction\",\n        -11.263191223144531\n      ],\n      [\n        \"▁acquisition\",\n        -11.263233184814453\n      ],\n      [\n        \"▁neuro\",\n        -11.26378345489502\n      ],\n      [\n        \"▁institution\",\n        -11.26391887664795\n      ],\n      [\n        \"▁automatic\",\n        -11.26403522491455\n      ],\n      [\n        \"▁assess\",\n        -11.264177322387695\n      ],\n      [\n        \"▁manifest\",\n        -11.264199256896973\n      ],\n      [\n        \"▁audit\",\n        -11.264202117919922\n      ],\n      [\n        \"▁câte\",\n        -11.264406204223633\n      ],\n      [\n        \"▁insight\",\n        -11.264533996582031\n      ],\n      [\n        \"▁lange\",\n        -11.264781951904297\n      ],\n      [\n        \"▁retirement\",\n        -11.264795303344727\n      ],\n      [\n        \"sons\",\n        -11.264864921569824\n      ],\n      [\n        \"▁Asian\",\n        -11.26492691040039\n      ],\n      [\n        \"▁rail\",\n        -11.264978408813477\n      ],\n      [\n        \"▁Awards\",\n        -11.264982223510742\n      ],\n      [\n        \"Avec\",\n        -11.265035629272461\n      ],\n      [\n        \"SO\",\n        -11.26511287689209\n      ],\n      [\n        \"para\",\n        -11.265304565429688\n      ],\n      [\n        \"▁tant\",\n        -11.265562057495117\n      ],\n      [\n        \"▁strike\",\n        -11.265693664550781\n      ],\n      [\n        \"▁transformation\",\n        -11.265742301940918\n      ],\n      [\n        \"▁leicht\",\n        -11.26586627960205\n      ],\n      [\n        \"л\",\n        -11.265996932983398\n      ],\n      [\n        \"fat\",\n        -11.26629638671875\n      ],\n      [\n        \"▁Qui\",\n        -11.266626358032227\n      ],\n      [\n        \"▁chip\",\n        -11.26663589477539\n      ],\n      [\n        \"titude\",\n        -11.266640663146973\n      ],\n      [\n        \"▁Projekt\",\n        -11.266998291015625\n      ],\n      [\n        \"▁statt\",\n        -11.267010688781738\n      ],\n      [\n        \"▁findet\",\n        -11.267184257507324\n      ],\n      [\n        \"▁telephone\",\n        -11.267251968383789\n      ],\n      [\n        \"▁staying\",\n        -11.267267227172852\n      ],\n      [\n        \"▁Mess\",\n        -11.267353057861328\n      ],\n      [\n        \"▁patio\",\n        -11.267382621765137\n      ],\n      [\n        \"▁afla\",\n        -11.267890930175781\n      ],\n      [\n        \"▁administrative\",\n        -11.267910957336426\n      ],\n      [\n        \"▁gemeinsam\",\n        -11.268129348754883\n      ],\n      [\n        \"▁suppliers\",\n        -11.268136024475098\n      ],\n      [\n        \"ark\",\n        -11.268181800842285\n      ],\n      [\n        \"▁rice\",\n        -11.268397331237793\n      ],\n      [\n        \"▁stretch\",\n        -11.268439292907715\n      ],\n      [\n        \"▁compact\",\n        -11.268651008605957\n      ],\n      [\n        \"fire\",\n        -11.268756866455078\n      ],\n      [\n        \"в\",\n        -11.268963813781738\n      ],\n      [\n        \"vision\",\n        -11.269035339355469\n      ],\n      [\n        \"▁Mag\",\n        -11.269368171691895\n      ],\n      [\n        \"▁dreams\",\n        -11.269472122192383\n      ],\n      [\n        \"▁funny\",\n        -11.26968765258789\n      ],\n      [\n        \"▁lässt\",\n        -11.270216941833496\n      ],\n      [\n        \"cade\",\n        -11.270448684692383\n      ],\n      [\n        \"▁drama\",\n        -11.270484924316406\n      ],\n      [\n        \"▁schimb\",\n        -11.270767211914062\n      ],\n      [\n        \"PO\",\n        -11.270785331726074\n      ],\n      [\n        \"▁Sim\",\n        -11.270806312561035\n      ],\n      [\n        \"▁motivation\",\n        -11.271045684814453\n      ],\n      [\n        \"▁presents\",\n        -11.27138614654541\n      ],\n      [\n        \"▁1997\",\n        -11.271828651428223\n      ],\n      [\n        \"agi\",\n        -11.271883010864258\n      ],\n      [\n        \"▁optimal\",\n        -11.27198314666748\n      ],\n      [\n        \"▁folder\",\n        -11.271995544433594\n      ],\n      [\n        \"stro\",\n        -11.272034645080566\n      ],\n      [\n        \"▁Han\",\n        -11.272072792053223\n      ],\n      [\n        \"▁Ei\",\n        -11.27220344543457\n      ],\n      [\n        \"▁pus\",\n        -11.272356986999512\n      ],\n      [\n        \"▁Learning\",\n        -11.272531509399414\n      ],\n      [\n        \"oop\",\n        -11.272603034973145\n      ],\n      [\n        \"▁Type\",\n        -11.272658348083496\n      ],\n      [\n        \"space\",\n        -11.272665023803711\n      ],\n      [\n        \"▁define\",\n        -11.273098945617676\n      ],\n      [\n        \"▁plug\",\n        -11.273098945617676\n      ],\n      [\n        \"yard\",\n        -11.273188591003418\n      ],\n      [\n        \"▁utility\",\n        -11.273297309875488\n      ],\n      [\n        \"über\",\n        -11.273561477661133\n      ],\n      [\n        \"▁commun\",\n        -11.273627281188965\n      ],\n      [\n        \"▁directed\",\n        -11.273842811584473\n      ],\n      [\n        \"▁consent\",\n        -11.273893356323242\n      ],\n      [\n        \"▁DNA\",\n        -11.274068832397461\n      ],\n      [\n        \"▁statements\",\n        -11.274130821228027\n      ],\n      [\n        \"real\",\n        -11.274298667907715\n      ],\n      [\n        \"active\",\n        -11.274430274963379\n      ],\n      [\n        \"school\",\n        -11.274965286254883\n      ],\n      [\n        \"▁mic\",\n        -11.275360107421875\n      ],\n      [\n        \"▁acestui\",\n        -11.275467872619629\n      ],\n      [\n        \"scale\",\n        -11.27550220489502\n      ],\n      [\n        \"▁Mid\",\n        -11.275628089904785\n      ],\n      [\n        \"▁Chair\",\n        -11.275874137878418\n      ],\n      [\n        \"к\",\n        -11.275936126708984\n      ],\n      [\n        \"▁Bas\",\n        -11.27630615234375\n      ],\n      [\n        \"▁38\",\n        -11.276379585266113\n      ],\n      [\n        \"erin\",\n        -11.276461601257324\n      ],\n      [\n        \"▁Everyone\",\n        -11.27686882019043\n      ],\n      [\n        \"COM\",\n        -11.276907920837402\n      ],\n      [\n        \"▁chronic\",\n        -11.277079582214355\n      ],\n      [\n        \"▁doctors\",\n        -11.277222633361816\n      ],\n      [\n        \"▁sh\",\n        -11.277276039123535\n      ],\n      [\n        \"sport\",\n        -11.27740478515625\n      ],\n      [\n        \"▁volunteer\",\n        -11.277512550354004\n      ],\n      [\n        \"▁drinking\",\n        -11.277839660644531\n      ],\n      [\n        \"▁Mas\",\n        -11.277868270874023\n      ],\n      [\n        \"▁pursue\",\n        -11.2780122756958\n      ],\n      [\n        \"▁exposed\",\n        -11.278536796569824\n      ],\n      [\n        \"exe\",\n        -11.278660774230957\n      ],\n      [\n        \"hung\",\n        -11.278841972351074\n      ],\n      [\n        \"▁Tier\",\n        -11.278921127319336\n      ],\n      [\n        \"▁plac\",\n        -11.279121398925781\n      ],\n      [\n        \"▁proiect\",\n        -11.279136657714844\n      ],\n      [\n        \"▁literally\",\n        -11.279288291931152\n      ],\n      [\n        \"▁acolo\",\n        -11.279412269592285\n      ],\n      [\n        \"▁User\",\n        -11.279485702514648\n      ],\n      [\n        \"UT\",\n        -11.279598236083984\n      ],\n      [\n        \"▁hyper\",\n        -11.279623985290527\n      ],\n      [\n        \"▁seed\",\n        -11.279794692993164\n      ],\n      [\n        \"▁literature\",\n        -11.2802734375\n      ],\n      [\n        \"▁Holy\",\n        -11.280373573303223\n      ],\n      [\n        \"▁jeu\",\n        -11.280396461486816\n      ],\n      [\n        \"▁licensed\",\n        -11.280896186828613\n      ],\n      [\n        \"station\",\n        -11.280900955200195\n      ],\n      [\n        \"▁criteria\",\n        -11.281292915344238\n      ],\n      [\n        \"▁sufficient\",\n        -11.281292915344238\n      ],\n      [\n        \"▁gestion\",\n        -11.281512260437012\n      ],\n      [\n        \"▁pic\",\n        -11.281549453735352\n      ],\n      [\n        \"▁64\",\n        -11.28170108795166\n      ],\n      [\n        \"▁facts\",\n        -11.281905174255371\n      ],\n      [\n        \"▁Bild\",\n        -11.282098770141602\n      ],\n      [\n        \"obi\",\n        -11.28212833404541\n      ],\n      [\n        \"▁nie\",\n        -11.282362937927246\n      ],\n      [\n        \"▁Jewish\",\n        -11.282756805419922\n      ],\n      [\n        \"bor\",\n        -11.28281307220459\n      ],\n      [\n        \"▁1980\",\n        -11.28286361694336\n      ],\n      [\n        \"▁Fach\",\n        -11.282917976379395\n      ],\n      [\n        \"craft\",\n        -11.283047676086426\n      ],\n      [\n        \"▁Pakistan\",\n        -11.283408164978027\n      ],\n      [\n        \"▁Mos\",\n        -11.283621788024902\n      ],\n      [\n        \"▁toilet\",\n        -11.283844947814941\n      ],\n      [\n        \"partea\",\n        -11.28391170501709\n      ],\n      [\n        \"case\",\n        -11.284221649169922\n      ],\n      [\n        \"▁clock\",\n        -11.28430461883545\n      ],\n      [\n        \"▁parc\",\n        -11.284602165222168\n      ],\n      [\n        \"▁legislation\",\n        -11.284692764282227\n      ],\n      [\n        \"▁icon\",\n        -11.284933090209961\n      ],\n      [\n        \"etz\",\n        -11.285178184509277\n      ],\n      [\n        \"ept\",\n        -11.285270690917969\n      ],\n      [\n        \"▁Corporation\",\n        -11.28585433959961\n      ],\n      [\n        \"▁requested\",\n        -11.285983085632324\n      ],\n      [\n        \"▁column\",\n        -11.286088943481445\n      ],\n      [\n        \"rier\",\n        -11.286120414733887\n      ],\n      [\n        \"uß\",\n        -11.2861967086792\n      ],\n      [\n        \"▁wohl\",\n        -11.286418914794922\n      ],\n      [\n        \"tell\",\n        -11.286569595336914\n      ],\n      [\n        \"gno\",\n        -11.286608695983887\n      ],\n      [\n        \"▁diseases\",\n        -11.286726951599121\n      ],\n      [\n        \"Sch\",\n        -11.286762237548828\n      ],\n      [\n        \"▁colon\",\n        -11.287075996398926\n      ],\n      [\n        \"▁Based\",\n        -11.28709602355957\n      ],\n      [\n        \"▁flu\",\n        -11.28725528717041\n      ],\n      [\n        \"▁vocal\",\n        -11.287408828735352\n      ],\n      [\n        \"▁virus\",\n        -11.287693977355957\n      ],\n      [\n        \"▁traveling\",\n        -11.287750244140625\n      ],\n      [\n        \"bul\",\n        -11.287837982177734\n      ],\n      [\n        \"т\",\n        -11.28794002532959\n      ],\n      [\n        \"city\",\n        -11.287961959838867\n      ],\n      [\n        \"AU\",\n        -11.287991523742676\n      ],\n      [\n        \"wide\",\n        -11.288037300109863\n      ],\n      [\n        \"▁solo\",\n        -11.288061141967773\n      ],\n      [\n        \"▁functionality\",\n        -11.288214683532715\n      ],\n      [\n        \"▁reveal\",\n        -11.28831672668457\n      ],\n      [\n        \"sign\",\n        -11.288952827453613\n      ],\n      [\n        \"▁closing\",\n        -11.288971900939941\n      ],\n      [\n        \"▁peak\",\n        -11.289087295532227\n      ],\n      [\n        \"▁practic\",\n        -11.289398193359375\n      ],\n      [\n        \"than\",\n        -11.289473533630371\n      ],\n      [\n        \"▁driven\",\n        -11.289484977722168\n      ],\n      [\n        \"êtes\",\n        -11.289548873901367\n      ],\n      [\n        \"high\",\n        -11.290016174316406\n      ],\n      [\n        \"power\",\n        -11.290226936340332\n      ],\n      [\n        \"▁Lin\",\n        -11.29028606414795\n      ],\n      [\n        \"▁dose\",\n        -11.29034423828125\n      ],\n      [\n        \"▁pocket\",\n        -11.290650367736816\n      ],\n      [\n        \"▁Classic\",\n        -11.29067611694336\n      ],\n      [\n        \"▁packaging\",\n        -11.290792465209961\n      ],\n      [\n        \"▁distinct\",\n        -11.290800094604492\n      ],\n      [\n        \"▁côté\",\n        -11.291094779968262\n      ],\n      [\n        \"▁breast\",\n        -11.29127025604248\n      ],\n      [\n        \"▁folosit\",\n        -11.29133129119873\n      ],\n      [\n        \"▁drinks\",\n        -11.291353225708008\n      ],\n      [\n        \"▁Dog\",\n        -11.291529655456543\n      ],\n      [\n        \"ailleurs\",\n        -11.291658401489258\n      ],\n      [\n        \"▁caz\",\n        -11.291804313659668\n      ],\n      [\n        \"▁escape\",\n        -11.29188346862793\n      ],\n      [\n        \"▁warranty\",\n        -11.291902542114258\n      ],\n      [\n        \"▁pulled\",\n        -11.291996955871582\n      ],\n      [\n        \"data\",\n        -11.292088508605957\n      ],\n      [\n        \"▁facilitate\",\n        -11.292213439941406\n      ],\n      [\n        \"É\",\n        -11.292335510253906\n      ],\n      [\n        \"▁SP\",\n        -11.292403221130371\n      ],\n      [\n        \"lant\",\n        -11.292557716369629\n      ],\n      [\n        \"AD\",\n        -11.29256534576416\n      ],\n      [\n        \"▁Print\",\n        -11.292802810668945\n      ],\n      [\n        \"mond\",\n        -11.292863845825195\n      ],\n      [\n        \"▁strange\",\n        -11.292875289916992\n      ],\n      [\n        \"▁Hor\",\n        -11.293227195739746\n      ],\n      [\n        \"▁Collection\",\n        -11.293328285217285\n      ],\n      [\n        \"arm\",\n        -11.29346752166748\n      ],\n      [\n        \"cas\",\n        -11.293691635131836\n      ],\n      [\n        \"arrow\",\n        -11.29379940032959\n      ],\n      [\n        \"▁carrying\",\n        -11.293927192687988\n      ],\n      [\n        \"▁wave\",\n        -11.294661521911621\n      ],\n      [\n        \"setzt\",\n        -11.294907569885254\n      ],\n      [\n        \"▁construct\",\n        -11.29514217376709\n      ],\n      [\n        \"▁acts\",\n        -11.295269966125488\n      ],\n      [\n        \"▁Action\",\n        -11.295342445373535\n      ],\n      [\n        \"▁Kim\",\n        -11.295354843139648\n      ],\n      [\n        \"oxid\",\n        -11.295459747314453\n      ],\n      [\n        \"fish\",\n        -11.295519828796387\n      ],\n      [\n        \"▁damaged\",\n        -11.295660018920898\n      ],\n      [\n        \"▁Greek\",\n        -11.295747756958008\n      ],\n      [\n        \"▁belt\",\n        -11.295772552490234\n      ],\n      [\n        \"▁Prior\",\n        -11.295778274536133\n      ],\n      [\n        \"▁marks\",\n        -11.295936584472656\n      ],\n      [\n        \"▁lumea\",\n        -11.296183586120605\n      ],\n      [\n        \"▁twenty\",\n        -11.296196937561035\n      ],\n      [\n        \"▁locul\",\n        -11.296360969543457\n      ],\n      [\n        \"▁Army\",\n        -11.296524047851562\n      ],\n      [\n        \"apt\",\n        -11.296602249145508\n      ],\n      [\n        \"▁limits\",\n        -11.296733856201172\n      ],\n      [\n        \"▁cruise\",\n        -11.296966552734375\n      ],\n      [\n        \"▁List\",\n        -11.296998023986816\n      ],\n      [\n        \"utilisation\",\n        -11.29753589630127\n      ],\n      [\n        \"▁personality\",\n        -11.297622680664062\n      ],\n      [\n        \"▁sections\",\n        -11.297759056091309\n      ],\n      [\n        \"▁drawn\",\n        -11.29797649383545\n      ],\n      [\n        \"▁mold\",\n        -11.298277854919434\n      ],\n      [\n        \"▁Think\",\n        -11.298333168029785\n      ],\n      [\n        \"▁holidays\",\n        -11.298355102539062\n      ],\n      [\n        \"▁critic\",\n        -11.298545837402344\n      ],\n      [\n        \"grade\",\n        -11.298660278320312\n      ],\n      [\n        \"▁sick\",\n        -11.299074172973633\n      ],\n      [\n        \"▁characteristics\",\n        -11.299237251281738\n      ],\n      [\n        \"▁echipa\",\n        -11.299272537231445\n      ],\n      [\n        \"▁Fast\",\n        -11.29929256439209\n      ],\n      [\n        \"▁Br\",\n        -11.299600601196289\n      ],\n      [\n        \"▁Reise\",\n        -11.299734115600586\n      ],\n      [\n        \"teen\",\n        -11.299749374389648\n      ],\n      [\n        \"uci\",\n        -11.299949645996094\n      ],\n      [\n        \"!”\",\n        -11.300180435180664\n      ],\n      [\n        \"ppe\",\n        -11.300532341003418\n      ],\n      [\n        \"▁talked\",\n        -11.301164627075195\n      ],\n      [\n        \"▁gap\",\n        -11.301473617553711\n      ],\n      [\n        \"homme\",\n        -11.301778793334961\n      ],\n      [\n        \"▁interact\",\n        -11.301934242248535\n      ],\n      [\n        \"▁dollar\",\n        -11.302276611328125\n      ],\n      [\n        \"▁bone\",\n        -11.302309036254883\n      ],\n      [\n        \"▁Einsatz\",\n        -11.302343368530273\n      ],\n      [\n        \"▁sad\",\n        -11.302434921264648\n      ],\n      [\n        \"any\",\n        -11.302445411682129\n      ],\n      [\n        \"tation\",\n        -11.302666664123535\n      ],\n      [\n        \"▁Haupt\",\n        -11.302748680114746\n      ],\n      [\n        \"iva\",\n        -11.302781105041504\n      ],\n      [\n        \"▁Schu\",\n        -11.302916526794434\n      ],\n      [\n        \"▁evaluate\",\n        -11.3036470413208\n      ],\n      [\n        \"▁variant\",\n        -11.303807258605957\n      ],\n      [\n        \"▁IS\",\n        -11.303879737854004\n      ],\n      [\n        \"▁PRO\",\n        -11.303947448730469\n      ],\n      [\n        \"▁vine\",\n        -11.303959846496582\n      ],\n      [\n        \"rut\",\n        -11.304062843322754\n      ],\n      [\n        \"▁existence\",\n        -11.30443286895752\n      ],\n      [\n        \"-7\",\n        -11.304525375366211\n      ],\n      [\n        \"ancy\",\n        -11.304702758789062\n      ],\n      [\n        \"▁Want\",\n        -11.305023193359375\n      ],\n      [\n        \"alism\",\n        -11.305127143859863\n      ],\n      [\n        \"ranging\",\n        -11.30550765991211\n      ],\n      [\n        \"preis\",\n        -11.305551528930664\n      ],\n      [\n        \"All\",\n        -11.305620193481445\n      ],\n      [\n        \"▁reception\",\n        -11.30565071105957\n      ],\n      [\n        \"mai\",\n        -11.305730819702148\n      ],\n      [\n        \"▁lease\",\n        -11.30577278137207\n      ],\n      [\n        \"▁finest\",\n        -11.30578899383545\n      ],\n      [\n        \"▁evident\",\n        -11.305874824523926\n      ],\n      [\n        \"▁Easy\",\n        -11.306075096130371\n      ],\n      [\n        \"▁gilt\",\n        -11.306085586547852\n      ],\n      [\n        \"▁trips\",\n        -11.306344985961914\n      ],\n      [\n        \"▁skilled\",\n        -11.306368827819824\n      ],\n      [\n        \"consists\",\n        -11.306456565856934\n      ],\n      [\n        \"front\",\n        -11.306635856628418\n      ],\n      [\n        \"rati\",\n        -11.306652069091797\n      ],\n      [\n        \"▁Following\",\n        -11.30678653717041\n      ],\n      [\n        \"▁Medicine\",\n        -11.307161331176758\n      ],\n      [\n        \"▁pune\",\n        -11.30729866027832\n      ],\n      [\n        \"▁errors\",\n        -11.307354927062988\n      ],\n      [\n        \"arian\",\n        -11.307613372802734\n      ],\n      [\n        \"lib\",\n        -11.30811882019043\n      ],\n      [\n        \"SR\",\n        -11.308351516723633\n      ],\n      [\n        \"ML\",\n        -11.308568000793457\n      ],\n      [\n        \"▁Safety\",\n        -11.308823585510254\n      ],\n      [\n        \"▁clar\",\n        -11.309355735778809\n      ],\n      [\n        \"New\",\n        -11.309764862060547\n      ],\n      [\n        \"▁37\",\n        -11.309773445129395\n      ],\n      [\n        \"▁Administration\",\n        -11.309823036193848\n      ],\n      [\n        \"▁2.0\",\n        -11.310120582580566\n      ],\n      [\n        \"▁obviously\",\n        -11.310196876525879\n      ],\n      [\n        \"▁Mitarbeiter\",\n        -11.310254096984863\n      ],\n      [\n        \"▁improvements\",\n        -11.31043529510498\n      ],\n      [\n        \"▁Cut\",\n        -11.310630798339844\n      ],\n      [\n        \"▁Natural\",\n        -11.310672760009766\n      ],\n      [\n        \"▁arrival\",\n        -11.311182975769043\n      ],\n      [\n        \"▁pizza\",\n        -11.311339378356934\n      ],\n      [\n        \"eşti\",\n        -11.311570167541504\n      ],\n      [\n        \"cept\",\n        -11.311654090881348\n      ],\n      [\n        \"▁livre\",\n        -11.311686515808105\n      ],\n      [\n        \"▁nombreux\",\n        -11.312195777893066\n      ],\n      [\n        \"▁authentic\",\n        -11.312231063842773\n      ],\n      [\n        \"▁gemacht\",\n        -11.312472343444824\n      ],\n      [\n        \"▁broadcast\",\n        -11.312478065490723\n      ],\n      [\n        \"▁stronger\",\n        -11.312545776367188\n      ],\n      [\n        \"UP\",\n        -11.31257152557373\n      ],\n      [\n        \"▁centers\",\n        -11.312614440917969\n      ],\n      [\n        \"▁petite\",\n        -11.312617301940918\n      ],\n      [\n        \"▁spots\",\n        -11.312626838684082\n      ],\n      [\n        \"▁crystal\",\n        -11.312756538391113\n      ],\n      [\n        \"▁salon\",\n        -11.313044548034668\n      ],\n      [\n        \"▁gained\",\n        -11.313098907470703\n      ],\n      [\n        \"▁Mus\",\n        -11.313215255737305\n      ],\n      [\n        \"▁lens\",\n        -11.313223838806152\n      ],\n      [\n        \"▁ihm\",\n        -11.313231468200684\n      ],\n      [\n        \"minute\",\n        -11.313573837280273\n      ],\n      [\n        \"▁greatly\",\n        -11.313587188720703\n      ],\n      [\n        \"LP\",\n        -11.31361198425293\n      ],\n      [\n        \"rait\",\n        -11.314027786254883\n      ],\n      [\n        \"▁bid\",\n        -11.314154624938965\n      ],\n      [\n        \"▁cit\",\n        -11.314203262329102\n      ],\n      [\n        \"entreprise\",\n        -11.31435775756836\n      ],\n      [\n        \"▁55\",\n        -11.314533233642578\n      ],\n      [\n        \"▁respectively\",\n        -11.314536094665527\n      ],\n      [\n        \"▁lo\",\n        -11.314638137817383\n      ],\n      [\n        \"▁cons\",\n        -11.314743995666504\n      ],\n      [\n        \"▁Energie\",\n        -11.315169334411621\n      ],\n      [\n        \"▁OK\",\n        -11.31521224975586\n      ],\n      [\n        \"▁grill\",\n        -11.315338134765625\n      ],\n      [\n        \"▁heading\",\n        -11.31549072265625\n      ],\n      [\n        \"▁sollten\",\n        -11.315491676330566\n      ],\n      [\n        \"▁Fragen\",\n        -11.315528869628906\n      ],\n      [\n        \"▁Poli\",\n        -11.315556526184082\n      ],\n      [\n        \"▁studying\",\n        -11.315723419189453\n      ],\n      [\n        \"▁développement\",\n        -11.315882682800293\n      ],\n      [\n        \"▁foam\",\n        -11.316035270690918\n      ],\n      [\n        \"▁1996\",\n        -11.316511154174805\n      ],\n      [\n        \"▁disaster\",\n        -11.31662654876709\n      ],\n      [\n        \"▁cafe\",\n        -11.317262649536133\n      ],\n      [\n        \"▁moves\",\n        -11.317267417907715\n      ],\n      [\n        \"focuses\",\n        -11.317712783813477\n      ],\n      [\n        \"▁Avenue\",\n        -11.317834854125977\n      ],\n      [\n        \"▁humans\",\n        -11.31784439086914\n      ],\n      [\n        \"▁(3\",\n        -11.318021774291992\n      ],\n      [\n        \"▁région\",\n        -11.318347930908203\n      ],\n      [\n        \"▁DJ\",\n        -11.318608283996582\n      ],\n      [\n        \"shop\",\n        -11.318819046020508\n      ],\n      [\n        \"▁acting\",\n        -11.318843841552734\n      ],\n      [\n        \"▁Justice\",\n        -11.318967819213867\n      ],\n      [\n        \"▁trouve\",\n        -11.319010734558105\n      ],\n      [\n        \"▁Estate\",\n        -11.319040298461914\n      ],\n      [\n        \"▁strict\",\n        -11.319231986999512\n      ],\n      [\n        \"▁talks\",\n        -11.319283485412598\n      ],\n      [\n        \"▁mat\",\n        -11.319290161132812\n      ],\n      [\n        \"▁completion\",\n        -11.319327354431152\n      ],\n      [\n        \"delivering\",\n        -11.31943416595459\n      ],\n      [\n        \"CD\",\n        -11.31973934173584\n      ],\n      [\n        \"0%\",\n        -11.319960594177246\n      ],\n      [\n        \"▁creativity\",\n        -11.320253372192383\n      ],\n      [\n        \"BR\",\n        -11.320272445678711\n      ],\n      [\n        \"▁occurred\",\n        -11.320357322692871\n      ],\n      [\n        \"Car\",\n        -11.320590019226074\n      ],\n      [\n        \"▁rising\",\n        -11.320761680603027\n      ],\n      [\n        \"gger\",\n        -11.32086181640625\n      ],\n      [\n        \"▁Gene\",\n        -11.320901870727539\n      ],\n      [\n        \"▁workplace\",\n        -11.320914268493652\n      ],\n      [\n        \"phy\",\n        -11.321065902709961\n      ],\n      [\n        \"▁Bla\",\n        -11.32107162475586\n      ],\n      [\n        \"▁trailer\",\n        -11.32120418548584\n      ],\n      [\n        \"▁Forest\",\n        -11.321205139160156\n      ],\n      [\n        \"▁profession\",\n        -11.321246147155762\n      ],\n      [\n        \"▁Father\",\n        -11.32137680053711\n      ],\n      [\n        \"flu\",\n        -11.321487426757812\n      ],\n      [\n        \"tone\",\n        -11.321489334106445\n      ],\n      [\n        \"▁sexual\",\n        -11.321736335754395\n      ],\n      [\n        \"▁Map\",\n        -11.321805953979492\n      ],\n      [\n        \"OT\",\n        -11.3218412399292\n      ],\n      [\n        \"▁Us\",\n        -11.321878433227539\n      ],\n      [\n        \"tôt\",\n        -11.321892738342285\n      ],\n      [\n        \"▁Wert\",\n        -11.321901321411133\n      ],\n      [\n        \"preparing\",\n        -11.322121620178223\n      ],\n      [\n        \"isé\",\n        -11.322243690490723\n      ],\n      [\n        \"▁lake\",\n        -11.322461128234863\n      ],\n      [\n        \"eed\",\n        -11.32270336151123\n      ],\n      [\n        \"jun\",\n        -11.322888374328613\n      ],\n      [\n        \"▁implemented\",\n        -11.323014259338379\n      ],\n      [\n        \"vid\",\n        -11.323116302490234\n      ],\n      [\n        \"igne\",\n        -11.323201179504395\n      ],\n      [\n        \"▁follows\",\n        -11.323214530944824\n      ],\n      [\n        \"▁Eric\",\n        -11.323430061340332\n      ],\n      [\n        \"body\",\n        -11.323530197143555\n      ],\n      [\n        \"▁contained\",\n        -11.323585510253906\n      ],\n      [\n        \"▁massage\",\n        -11.323715209960938\n      ],\n      [\n        \"AV\",\n        -11.323725700378418\n      ],\n      [\n        \"▁insa\",\n        -11.323850631713867\n      ],\n      [\n        \"▁observed\",\n        -11.323892593383789\n      ],\n      [\n        \"▁marque\",\n        -11.324137687683105\n      ],\n      [\n        \"lines\",\n        -11.324451446533203\n      ],\n      [\n        \"▁Frage\",\n        -11.324482917785645\n      ],\n      [\n        \"largely\",\n        -11.324647903442383\n      ],\n      [\n        \"gegeben\",\n        -11.32473087310791\n      ],\n      [\n        \"▁colleagues\",\n        -11.324762344360352\n      ],\n      [\n        \"pha\",\n        -11.32494068145752\n      ],\n      [\n        \"▁representative\",\n        -11.325217247009277\n      ],\n      [\n        \"▁shut\",\n        -11.325650215148926\n      ],\n      [\n        \"▁secondary\",\n        -11.325779914855957\n      ],\n      [\n        \"▁exhibit\",\n        -11.325927734375\n      ],\n      [\n        \"1)\",\n        -11.325932502746582\n      ],\n      [\n        \"mid\",\n        -11.326109886169434\n      ],\n      [\n        \"▁Due\",\n        -11.326229095458984\n      ],\n      [\n        \"▁initiatives\",\n        -11.326457023620605\n      ],\n      [\n        \"▁occurs\",\n        -11.326458930969238\n      ],\n      [\n        \"lent\",\n        -11.326478958129883\n      ],\n      [\n        \"▁façon\",\n        -11.326778411865234\n      ],\n      [\n        \"▁iOS\",\n        -11.326803207397461\n      ],\n      [\n        \"▁exploring\",\n        -11.327000617980957\n      ],\n      [\n        \"▁stations\",\n        -11.327103614807129\n      ],\n      [\n        \"nton\",\n        -11.327234268188477\n      ],\n      [\n        \"▁Country\",\n        -11.32729721069336\n      ],\n      [\n        \"▁shouldn\",\n        -11.327406883239746\n      ],\n      [\n        \"▁casual\",\n        -11.327611923217773\n      ],\n      [\n        \"-18\",\n        -11.32769775390625\n      ],\n      [\n        \"▁maintained\",\n        -11.32772445678711\n      ],\n      [\n        \"▁cart\",\n        -11.327790260314941\n      ],\n      [\n        \"▁propre\",\n        -11.327836036682129\n      ],\n      [\n        \"▁asset\",\n        -11.327948570251465\n      ],\n      [\n        \"firm\",\n        -11.32803726196289\n      ],\n      [\n        \"gla\",\n        -11.328231811523438\n      ],\n      [\n        \"viv\",\n        -11.3282470703125\n      ],\n      [\n        \"▁scientists\",\n        -11.328873634338379\n      ],\n      [\n        \"▁Nor\",\n        -11.328936576843262\n      ],\n      [\n        \"ites\",\n        -11.329320907592773\n      ],\n      [\n        \"▁engaging\",\n        -11.329933166503906\n      ],\n      [\n        \"My\",\n        -11.330178260803223\n      ],\n      [\n        \"▁workshops\",\n        -11.330282211303711\n      ],\n      [\n        \"ffer\",\n        -11.3303804397583\n      ],\n      [\n        \"activité\",\n        -11.33047103881836\n      ],\n      [\n        \"▁tension\",\n        -11.330567359924316\n      ],\n      [\n        \"▁dual\",\n        -11.330668449401855\n      ],\n      [\n        \"uer\",\n        -11.33084774017334\n      ],\n      [\n        \"900\",\n        -11.330941200256348\n      ],\n      [\n        \"SF\",\n        -11.33108139038086\n      ],\n      [\n        \"▁kannst\",\n        -11.331146240234375\n      ],\n      [\n        \"▁bur\",\n        -11.33115291595459\n      ],\n      [\n        \"▁visitor\",\n        -11.331156730651855\n      ],\n      [\n        \"▁granted\",\n        -11.331178665161133\n      ],\n      [\n        \"▁union\",\n        -11.331355094909668\n      ],\n      [\n        \"▁tablet\",\n        -11.331461906433105\n      ],\n      [\n        \"▁Choose\",\n        -11.33146858215332\n      ],\n      [\n        \"ibil\",\n        -11.331551551818848\n      ],\n      [\n        \"▁settlement\",\n        -11.331830978393555\n      ],\n      [\n        \"genommen\",\n        -11.331892967224121\n      ],\n      [\n        \"▁marked\",\n        -11.332956314086914\n      ],\n      [\n        \"▁diagnostic\",\n        -11.333370208740234\n      ],\n      [\n        \"▁prayer\",\n        -11.333529472351074\n      ],\n      [\n        \"▁Toronto\",\n        -11.334035873413086\n      ],\n      [\n        \"trans\",\n        -11.334146499633789\n      ],\n      [\n        \"▁respectiv\",\n        -11.334160804748535\n      ],\n      [\n        \"▁2012.\",\n        -11.334207534790039\n      ],\n      [\n        \"icul\",\n        -11.334394454956055\n      ],\n      [\n        \"▁satisfied\",\n        -11.334527969360352\n      ],\n      [\n        \"▁Fla\",\n        -11.334596633911133\n      ],\n      [\n        \"▁estimate\",\n        -11.334638595581055\n      ],\n      [\n        \"▁Agency\",\n        -11.33466911315918\n      ],\n      [\n        \"OD\",\n        -11.334708213806152\n      ],\n      [\n        \"▁McC\",\n        -11.334746360778809\n      ],\n      [\n        \"bert\",\n        -11.334748268127441\n      ],\n      [\n        \"▁seal\",\n        -11.334771156311035\n      ],\n      [\n        \"aine\",\n        -11.334839820861816\n      ],\n      [\n        \"▁cauza\",\n        -11.334848403930664\n      ],\n      [\n        \"▁wallpaper\",\n        -11.335081100463867\n      ],\n      [\n        \"▁alb\",\n        -11.33536434173584\n      ],\n      [\n        \"▁Sound\",\n        -11.335681915283203\n      ],\n      [\n        \"worth\",\n        -11.33572769165039\n      ],\n      [\n        \"chten\",\n        -11.335858345031738\n      ],\n      [\n        \"programm\",\n        -11.335896492004395\n      ],\n      [\n        \"▁pounds\",\n        -11.336215019226074\n      ],\n      [\n        \"▁coaching\",\n        -11.336278915405273\n      ],\n      [\n        \"▁Furthermore\",\n        -11.336454391479492\n      ],\n      [\n        \"▁Korea\",\n        -11.336471557617188\n      ],\n      [\n        \"▁flour\",\n        -11.336530685424805\n      ],\n      [\n        \"▁sommes\",\n        -11.33657169342041\n      ],\n      [\n        \"▁Repair\",\n        -11.33661937713623\n      ],\n      [\n        \"”)\",\n        -11.336642265319824\n      ],\n      [\n        \"itch\",\n        -11.336675643920898\n      ],\n      [\n        \"blu\",\n        -11.336786270141602\n      ],\n      [\n        \"zar\",\n        -11.336882591247559\n      ],\n      [\n        \"▁diferite\",\n        -11.33745002746582\n      ],\n      [\n        \"▁Golf\",\n        -11.337685585021973\n      ],\n      [\n        \"arch\",\n        -11.33772087097168\n      ],\n      [\n        \"▁panels\",\n        -11.337799072265625\n      ],\n      [\n        \"jan\",\n        -11.337956428527832\n      ],\n      [\n        \"“.\",\n        -11.338240623474121\n      ],\n      [\n        \"izarea\",\n        -11.338324546813965\n      ],\n      [\n        \"▁golden\",\n        -11.33854866027832\n      ],\n      [\n        \"▁flying\",\n        -11.338550567626953\n      ],\n      [\n        \"▁museum\",\n        -11.338700294494629\n      ],\n      [\n        \"▁equivalent\",\n        -11.338759422302246\n      ],\n      [\n        \"▁Lang\",\n        -11.339032173156738\n      ],\n      [\n        \"schi\",\n        -11.339539527893066\n      ],\n      [\n        \"MI\",\n        -11.339595794677734\n      ],\n      [\n        \"▁faci\",\n        -11.339838027954102\n      ],\n      [\n        \"▁Rahmen\",\n        -11.339988708496094\n      ],\n      [\n        \"▁attending\",\n        -11.340130805969238\n      ],\n      [\n        \"′′\",\n        -11.340483665466309\n      ],\n      [\n        \"▁Tro\",\n        -11.341070175170898\n      ],\n      [\n        \"▁gaming\",\n        -11.341447830200195\n      ],\n      [\n        \"▁aujourd\",\n        -11.341479301452637\n      ],\n      [\n        \"▁Wochen\",\n        -11.341526985168457\n      ],\n      [\n        \"▁entering\",\n        -11.341535568237305\n      ],\n      [\n        \"its\",\n        -11.34155559539795\n      ],\n      [\n        \"▁Private\",\n        -11.341866493225098\n      ],\n      [\n        \"▁Ocean\",\n        -11.34188175201416\n      ],\n      [\n        \"▁01\",\n        -11.342098236083984\n      ],\n      [\n        \"▁coloring\",\n        -11.342188835144043\n      ],\n      [\n        \"ător\",\n        -11.34253215789795\n      ],\n      [\n        \"▁flooring\",\n        -11.342548370361328\n      ],\n      [\n        \"▁downtown\",\n        -11.34276294708252\n      ],\n      [\n        \"rab\",\n        -11.342998504638672\n      ],\n      [\n        \"HI\",\n        -11.343221664428711\n      ],\n      [\n        \"▁illness\",\n        -11.343234062194824\n      ],\n      [\n        \"▁whil\",\n        -11.343307495117188\n      ],\n      [\n        \"▁diamond\",\n        -11.34333324432373\n      ],\n      [\n        \"Mail\",\n        -11.343419075012207\n      ],\n      [\n        \"▁Dream\",\n        -11.34344482421875\n      ],\n      [\n        \"▁Golden\",\n        -11.344099044799805\n      ],\n      [\n        \"▁rein\",\n        -11.344220161437988\n      ],\n      [\n        \"▁hi\",\n        -11.344283103942871\n      ],\n      [\n        \"▁expressed\",\n        -11.344489097595215\n      ],\n      [\n        \"▁luat\",\n        -11.344511985778809\n      ],\n      [\n        \"▁Share\",\n        -11.34453010559082\n      ],\n      [\n        \"▁Programm\",\n        -11.344706535339355\n      ],\n      [\n        \"▁Sales\",\n        -11.344707489013672\n      ],\n      [\n        \"▁prof\",\n        -11.344890594482422\n      ],\n      [\n        \"▁MO\",\n        -11.34505844116211\n      ],\n      [\n        \"▁Short\",\n        -11.345088958740234\n      ],\n      [\n        \"▁charm\",\n        -11.345290184020996\n      ],\n      [\n        \"▁Cer\",\n        -11.345373153686523\n      ],\n      [\n        \"▁Run\",\n        -11.34553337097168\n      ],\n      [\n        \"▁tutorial\",\n        -11.345589637756348\n      ],\n      [\n        \"oul\",\n        -11.34561824798584\n      ],\n      [\n        \"▁Fest\",\n        -11.345794677734375\n      ],\n      [\n        \"▁uniform\",\n        -11.345929145812988\n      ],\n      [\n        \"aß\",\n        -11.346014976501465\n      ],\n      [\n        \"▁pipe\",\n        -11.346076965332031\n      ],\n      [\n        \"▁Square\",\n        -11.346283912658691\n      ],\n      [\n        \"▁Kosten\",\n        -11.346365928649902\n      ],\n      [\n        \"▁checked\",\n        -11.346590042114258\n      ],\n      [\n        \"▁65\",\n        -11.346626281738281\n      ],\n      [\n        \"▁Adam\",\n        -11.346686363220215\n      ],\n      [\n        \"cel\",\n        -11.346700668334961\n      ],\n      [\n        \"ello\",\n        -11.346965789794922\n      ],\n      [\n        \"▁Res\",\n        -11.347023963928223\n      ],\n      [\n        \"▁drain\",\n        -11.34708309173584\n      ],\n      [\n        \"ză\",\n        -11.347129821777344\n      ],\n      [\n        \"▁Tech\",\n        -11.34739875793457\n      ],\n      [\n        \"▁strive\",\n        -11.34749698638916\n      ],\n      [\n        \"cycl\",\n        -11.347506523132324\n      ],\n      [\n        \"▁stark\",\n        -11.347541809082031\n      ],\n      [\n        \"load\",\n        -11.34754753112793\n      ],\n      [\n        \"▁Stat\",\n        -11.347589492797852\n      ],\n      [\n        \"▁Rec\",\n        -11.347622871398926\n      ],\n      [\n        \"ians\",\n        -11.347716331481934\n      ],\n      [\n        \"▁Tin\",\n        -11.347738265991211\n      ],\n      [\n        \"▁Agreement\",\n        -11.347840309143066\n      ],\n      [\n        \"▁pret\",\n        -11.348027229309082\n      ],\n      [\n        \"-9\",\n        -11.348326683044434\n      ],\n      [\n        \"▁sentence\",\n        -11.348380088806152\n      ],\n      [\n        \"▁Direct\",\n        -11.348426818847656\n      ],\n      [\n        \"▁Rep\",\n        -11.348465919494629\n      ],\n      [\n        \"▁Prozent\",\n        -11.348799705505371\n      ],\n      [\n        \"▁invitation\",\n        -11.34882640838623\n      ],\n      [\n        \"▁refund\",\n        -11.349113464355469\n      ],\n      [\n        \"▁Kids\",\n        -11.349287986755371\n      ],\n      [\n        \"stock\",\n        -11.349383354187012\n      ],\n      [\n        \"TP\",\n        -11.349400520324707\n      ],\n      [\n        \"▁tau\",\n        -11.34941291809082\n      ],\n      [\n        \"from\",\n        -11.349421501159668\n      ],\n      [\n        \"▁Ash\",\n        -11.349451065063477\n      ],\n      [\n        \"store\",\n        -11.349535942077637\n      ],\n      [\n        \"▁Common\",\n        -11.34958553314209\n      ],\n      [\n        \"▁Qualität\",\n        -11.34968376159668\n      ],\n      [\n        \"▁strongly\",\n        -11.349727630615234\n      ],\n      [\n        \"▁importante\",\n        -11.34979248046875\n      ],\n      [\n        \"ome\",\n        -11.349912643432617\n      ],\n      [\n        \"▁surtout\",\n        -11.349946022033691\n      ],\n      [\n        \"enables\",\n        -11.35020637512207\n      ],\n      [\n        \"▁decent\",\n        -11.350221633911133\n      ],\n      [\n        \"▁neutral\",\n        -11.350237846374512\n      ],\n      [\n        \"▁produs\",\n        -11.350356101989746\n      ],\n      [\n        \"bury\",\n        -11.350451469421387\n      ],\n      [\n        \"▁Level\",\n        -11.350618362426758\n      ],\n      [\n        \"▁interes\",\n        -11.350699424743652\n      ],\n      [\n        \"mov\",\n        -11.350797653198242\n      ],\n      [\n        \"▁backup\",\n        -11.350939750671387\n      ],\n      [\n        \"même\",\n        -11.351094245910645\n      ],\n      [\n        \"doc\",\n        -11.351119041442871\n      ],\n      [\n        \"▁#1\",\n        -11.35130786895752\n      ],\n      [\n        \"▁specified\",\n        -11.351495742797852\n      ],\n      [\n        \"▁founder\",\n        -11.351655960083008\n      ],\n      [\n        \"And\",\n        -11.352090835571289\n      ],\n      [\n        \"isten\",\n        -11.352149963378906\n      ],\n      [\n        \"▁lecture\",\n        -11.352729797363281\n      ],\n      [\n        \"▁wake\",\n        -11.352895736694336\n      ],\n      [\n        \"▁vraiment\",\n        -11.352980613708496\n      ],\n      [\n        \"▁swing\",\n        -11.353188514709473\n      ],\n      [\n        \"▁addresses\",\n        -11.353275299072266\n      ],\n      [\n        \"▁Verfügung\",\n        -11.353504180908203\n      ],\n      [\n        \"▁deadline\",\n        -11.353761672973633\n      ],\n      [\n        \"н\",\n        -11.353791236877441\n      ],\n      [\n        \"▁Content\",\n        -11.353970527648926\n      ],\n      [\n        \"▁Gre\",\n        -11.354111671447754\n      ],\n      [\n        \"▁Experience\",\n        -11.354378700256348\n      ],\n      [\n        \"tura\",\n        -11.354458808898926\n      ],\n      [\n        \"▁exit\",\n        -11.354642868041992\n      ],\n      [\n        \"▁Britain\",\n        -11.354652404785156\n      ],\n      [\n        \"▁Sunt\",\n        -11.354684829711914\n      ],\n      [\n        \"▁documentation\",\n        -11.354690551757812\n      ],\n      [\n        \"▁showcase\",\n        -11.3547945022583\n      ],\n      [\n        \"▁photographs\",\n        -11.354822158813477\n      ],\n      [\n        \"qué\",\n        -11.35483169555664\n      ],\n      [\n        \"zin\",\n        -11.354909896850586\n      ],\n      [\n        \"pres\",\n        -11.354933738708496\n      ],\n      [\n        \"▁decline\",\n        -11.354955673217773\n      ],\n      [\n        \"▁Large\",\n        -11.355030059814453\n      ],\n      [\n        \"▁bills\",\n        -11.355141639709473\n      ],\n      [\n        \"▁entitled\",\n        -11.355222702026367\n      ],\n      [\n        \"▁passionate\",\n        -11.355393409729004\n      ],\n      [\n        \"▁workout\",\n        -11.355413436889648\n      ],\n      [\n        \"▁Again\",\n        -11.35560417175293\n      ],\n      [\n        \"▁Haut\",\n        -11.35582160949707\n      ],\n      [\n        \"▁guaranteed\",\n        -11.35599136352539\n      ],\n      [\n        \"▁vue\",\n        -11.35600471496582\n      ],\n      [\n        \"▁farmers\",\n        -11.356224060058594\n      ],\n      [\n        \"▁admission\",\n        -11.356500625610352\n      ],\n      [\n        \"▁manière\",\n        -11.357080459594727\n      ],\n      [\n        \"▁reverse\",\n        -11.357121467590332\n      ],\n      [\n        \"▁FL\",\n        -11.357142448425293\n      ],\n      [\n        \"▁terminal\",\n        -11.357206344604492\n      ],\n      [\n        \"GI\",\n        -11.35731029510498\n      ],\n      [\n        \"▁speakers\",\n        -11.35739803314209\n      ],\n      [\n        \"▁responses\",\n        -11.357398986816406\n      ],\n      [\n        \"▁Doch\",\n        -11.357457160949707\n      ],\n      [\n        \"▁2013,\",\n        -11.357717514038086\n      ],\n      [\n        \"▁phones\",\n        -11.357789993286133\n      ],\n      [\n        \"ential\",\n        -11.357851028442383\n      ],\n      [\n        \"▁operator\",\n        -11.357916831970215\n      ],\n      [\n        \"▁steam\",\n        -11.358036994934082\n      ],\n      [\n        \"burn\",\n        -11.358091354370117\n      ],\n      [\n        \"▁seul\",\n        -11.35815715789795\n      ],\n      [\n        \"▁unusual\",\n        -11.358322143554688\n      ],\n      [\n        \"▁educate\",\n        -11.358403205871582\n      ],\n      [\n        \"▁Que\",\n        -11.358680725097656\n      ],\n      [\n        \"▁believes\",\n        -11.359137535095215\n      ],\n      [\n        \"▁succeed\",\n        -11.359344482421875\n      ],\n      [\n        \"▁delay\",\n        -11.359533309936523\n      ],\n      [\n        \"▁deeper\",\n        -11.359633445739746\n      ],\n      [\n        \"▁reaching\",\n        -11.359890937805176\n      ],\n      [\n        \"▁objectives\",\n        -11.360086441040039\n      ],\n      [\n        \"▁temporary\",\n        -11.36028003692627\n      ],\n      [\n        \"▁artistic\",\n        -11.360421180725098\n      ],\n      [\n        \"▁sou\",\n        -11.360471725463867\n      ],\n      [\n        \"▁transparent\",\n        -11.36062240600586\n      ],\n      [\n        \"There\",\n        -11.360798835754395\n      ],\n      [\n        \"ception\",\n        -11.360836029052734\n      ],\n      [\n        \"▁excess\",\n        -11.360939979553223\n      ],\n      [\n        \"▁gathering\",\n        -11.361008644104004\n      ],\n      [\n        \"▁Save\",\n        -11.361095428466797\n      ],\n      [\n        \"ază\",\n        -11.361166000366211\n      ],\n      [\n        \"▁français\",\n        -11.361197471618652\n      ],\n      [\n        \"▁laid\",\n        -11.361210823059082\n      ],\n      [\n        \"▁modul\",\n        -11.361394882202148\n      ],\n      [\n        \"avoir\",\n        -11.361465454101562\n      ],\n      [\n        \"under\",\n        -11.362113952636719\n      ],\n      [\n        \"dding\",\n        -11.362226486206055\n      ],\n      [\n        \"▁falls\",\n        -11.362232208251953\n      ],\n      [\n        \"▁Möglichkeit\",\n        -11.362369537353516\n      ],\n      [\n        \"▁ceremony\",\n        -11.362370491027832\n      ],\n      [\n        \"rai\",\n        -11.36237621307373\n      ],\n      [\n        \"▁Bor\",\n        -11.362709045410156\n      ],\n      [\n        \"▁Below\",\n        -11.362750053405762\n      ],\n      [\n        \"4)\",\n        -11.362759590148926\n      ],\n      [\n        \"▁Field\",\n        -11.362833023071289\n      ],\n      [\n        \"wear\",\n        -11.362935066223145\n      ],\n      [\n        \"motion\",\n        -11.362948417663574\n      ],\n      [\n        \"print\",\n        -11.363311767578125\n      ],\n      [\n        \"game\",\n        -11.363360404968262\n      ],\n      [\n        \"▁Irish\",\n        -11.363458633422852\n      ],\n      [\n        \"▁Las\",\n        -11.363458633422852\n      ],\n      [\n        \"Among\",\n        -11.363570213317871\n      ],\n      [\n        \"atori\",\n        -11.363580703735352\n      ],\n      [\n        \"▁ajuns\",\n        -11.363837242126465\n      ],\n      [\n        \"▁alive\",\n        -11.363860130310059\n      ],\n      [\n        \"▁retour\",\n        -11.363900184631348\n      ],\n      [\n        \"▁smoke\",\n        -11.3640775680542\n      ],\n      [\n        \"▁math\",\n        -11.364285469055176\n      ],\n      [\n        \"▁Ye\",\n        -11.364337921142578\n      ],\n      [\n        \"▁Denn\",\n        -11.36436653137207\n      ],\n      [\n        \"▁1995\",\n        -11.364412307739258\n      ],\n      [\n        \"▁bani\",\n        -11.364644050598145\n      ],\n      [\n        \"raz\",\n        -11.364998817443848\n      ],\n      [\n        \"world\",\n        -11.365026473999023\n      ],\n      [\n        \"▁engines\",\n        -11.365140914916992\n      ],\n      [\n        \"nehmen\",\n        -11.365192413330078\n      ],\n      [\n        \"stor\",\n        -11.365328788757324\n      ],\n      [\n        \"▁interpret\",\n        -11.365403175354004\n      ],\n      [\n        \"▁Ven\",\n        -11.365489959716797\n      ],\n      [\n        \"▁cotton\",\n        -11.365622520446777\n      ],\n      [\n        \"▁represented\",\n        -11.366004943847656\n      ],\n      [\n        \"▁fabulous\",\n        -11.366166114807129\n      ],\n      [\n        \"▁gender\",\n        -11.366301536560059\n      ],\n      [\n        \"Mar\",\n        -11.366668701171875\n      ],\n      [\n        \"vic\",\n        -11.366991996765137\n      ],\n      [\n        \"▁newsletter\",\n        -11.367432594299316\n      ],\n      [\n        \"sburg\",\n        -11.367574691772461\n      ],\n      [\n        \"pond\",\n        -11.36838436126709\n      ],\n      [\n        \"▁Carl\",\n        -11.368454933166504\n      ],\n      [\n        \"▁bunch\",\n        -11.368714332580566\n      ],\n      [\n        \"▁tower\",\n        -11.368847846984863\n      ],\n      [\n        \"▁trigger\",\n        -11.368976593017578\n      ],\n      [\n        \"▁explanation\",\n        -11.369091033935547\n      ],\n      [\n        \"Man\",\n        -11.369114875793457\n      ],\n      [\n        \"iunea\",\n        -11.369168281555176\n      ],\n      [\n        \"▁announcement\",\n        -11.369492530822754\n      ],\n      [\n        \"▁seeds\",\n        -11.36952018737793\n      ],\n      [\n        \"▁shell\",\n        -11.369865417480469\n      ],\n      [\n        \"▁Working\",\n        -11.36989688873291\n      ],\n      [\n        \"viz\",\n        -11.370267868041992\n      ],\n      [\n        \"▁Simply\",\n        -11.370329856872559\n      ],\n      [\n        \"sub\",\n        -11.37037181854248\n      ],\n      [\n        \"▁Village\",\n        -11.37060832977295\n      ],\n      [\n        \"▁falling\",\n        -11.370742797851562\n      ],\n      [\n        \"▁fits\",\n        -11.37084674835205\n      ],\n      [\n        \"▁wichtig\",\n        -11.37088394165039\n      ],\n      [\n        \"▁Down\",\n        -11.37108039855957\n      ],\n      [\n        \"bble\",\n        -11.371573448181152\n      ],\n      [\n        \"▁Orange\",\n        -11.37165641784668\n      ],\n      [\n        \"promoting\",\n        -11.371932029724121\n      ],\n      [\n        \"▁rapidly\",\n        -11.37217903137207\n      ],\n      [\n        \"▁translation\",\n        -11.372330665588379\n      ],\n      [\n        \"nig\",\n        -11.3723726272583\n      ],\n      [\n        \"fusion\",\n        -11.37240982055664\n      ],\n      [\n        \"kosten\",\n        -11.372611045837402\n      ],\n      [\n        \"2)\",\n        -11.372783660888672\n      ],\n      [\n        \"▁Express\",\n        -11.372958183288574\n      ],\n      [\n        \"▁Sw\",\n        -11.373003959655762\n      ],\n      [\n        \"▁frequency\",\n        -11.373086929321289\n      ],\n      [\n        \"▁diversity\",\n        -11.373348236083984\n      ],\n      [\n        \"MT\",\n        -11.373452186584473\n      ],\n      [\n        \"▁bekannt\",\n        -11.373530387878418\n      ],\n      [\n        \"lion\",\n        -11.373871803283691\n      ],\n      [\n        \"▁cop\",\n        -11.37393856048584\n      ],\n      [\n        \"▁Customer\",\n        -11.374072074890137\n      ],\n      [\n        \"▁demands\",\n        -11.374427795410156\n      ],\n      [\n        \"▁corn\",\n        -11.374516487121582\n      ],\n      [\n        \"▁Hamburg\",\n        -11.374551773071289\n      ],\n      [\n        \"SD\",\n        -11.374628067016602\n      ],\n      [\n        \"▁Rome\",\n        -11.374677658081055\n      ],\n      [\n        \"▁Pur\",\n        -11.374750137329102\n      ],\n      [\n        \"▁stamp\",\n        -11.374885559082031\n      ],\n      [\n        \"▁grateful\",\n        -11.374967575073242\n      ],\n      [\n        \"RM\",\n        -11.37511157989502\n      ],\n      [\n        \"▁Pl\",\n        -11.37511920928955\n      ],\n      [\n        \"▁Tele\",\n        -11.375154495239258\n      ],\n      [\n        \"▁plugin\",\n        -11.375492095947266\n      ],\n      [\n        \"▁maxim\",\n        -11.375675201416016\n      ],\n      [\n        \"▁Hoch\",\n        -11.37574577331543\n      ],\n      [\n        \"igung\",\n        -11.375823020935059\n      ],\n      [\n        \"▁Entwicklung\",\n        -11.375858306884766\n      ],\n      [\n        \"▁File\",\n        -11.375931739807129\n      ],\n      [\n        \"▁Eastern\",\n        -11.376070022583008\n      ],\n      [\n        \"▁scrap\",\n        -11.376331329345703\n      ],\n      [\n        \"▁acquired\",\n        -11.376338958740234\n      ],\n      [\n        \"sau\",\n        -11.376364707946777\n      ],\n      [\n        \"▁Klein\",\n        -11.376452445983887\n      ],\n      [\n        \"▁milioane\",\n        -11.376492500305176\n      ],\n      [\n        \"▁Stand\",\n        -11.376693725585938\n      ],\n      [\n        \"▁childhood\",\n        -11.37671184539795\n      ],\n      [\n        \"▁artificial\",\n        -11.376752853393555\n      ],\n      [\n        \"▁substantial\",\n        -11.376851081848145\n      ],\n      [\n        \"druck\",\n        -11.377315521240234\n      ],\n      [\n        \"▁Kra\",\n        -11.377562522888184\n      ],\n      [\n        \"▁performances\",\n        -11.377645492553711\n      ],\n      [\n        \"▁row\",\n        -11.377824783325195\n      ],\n      [\n        \"NT\",\n        -11.377899169921875\n      ],\n      [\n        \"mod\",\n        -11.377904891967773\n      ],\n      [\n        \"remained\",\n        -11.378399848937988\n      ],\n      [\n        \"▁nimic\",\n        -11.378462791442871\n      ],\n      [\n        \"▁Limited\",\n        -11.378555297851562\n      ],\n      [\n        \"▁cookie\",\n        -11.378718376159668\n      ],\n      [\n        \"▁retain\",\n        -11.378816604614258\n      ],\n      [\n        \"▁600\",\n        -11.379144668579102\n      ],\n      [\n        \"▁eigene\",\n        -11.379158020019531\n      ],\n      [\n        \"▁tune\",\n        -11.379209518432617\n      ],\n      [\n        \"NS\",\n        -11.379256248474121\n      ],\n      [\n        \"▁dad\",\n        -11.379284858703613\n      ],\n      [\n        \"Moreover\",\n        -11.379415512084961\n      ],\n      [\n        \"ès\",\n        -11.379434585571289\n      ],\n      [\n        \"▁worship\",\n        -11.379439353942871\n      ],\n      [\n        \"▁Material\",\n        -11.3794584274292\n      ],\n      [\n        \"▁verb\",\n        -11.379528045654297\n      ],\n      [\n        \"ziehen\",\n        -11.37957763671875\n      ],\n      [\n        \"lton\",\n        -11.379645347595215\n      ],\n      [\n        \"▁boot\",\n        -11.379982948303223\n      ],\n      [\n        \"plo\",\n        -11.380118370056152\n      ],\n      [\n        \"CF\",\n        -11.380212783813477\n      ],\n      [\n        \"GM\",\n        -11.380215644836426\n      ],\n      [\n        \"▁Mix\",\n        -11.38046932220459\n      ],\n      [\n        \"▁Front\",\n        -11.380474090576172\n      ],\n      [\n        \"▁repairs\",\n        -11.380655288696289\n      ],\n      [\n        \"▁proportion\",\n        -11.381068229675293\n      ],\n      [\n        \"▁habit\",\n        -11.381132125854492\n      ],\n      [\n        \"▁hide\",\n        -11.38156509399414\n      ],\n      [\n        \"focusing\",\n        -11.381707191467285\n      ],\n      [\n        \"▁Annual\",\n        -11.381717681884766\n      ],\n      [\n        \"▁twin\",\n        -11.3817777633667\n      ],\n      [\n        \"▁acord\",\n        -11.381780624389648\n      ],\n      [\n        \"ehr\",\n        -11.381814956665039\n      ],\n      [\n        \"month\",\n        -11.382303237915039\n      ],\n      [\n        \"venir\",\n        -11.382535934448242\n      ],\n      [\n        \"Or\",\n        -11.38254165649414\n      ],\n      [\n        \"awa\",\n        -11.382600784301758\n      ],\n      [\n        \"lass\",\n        -11.382735252380371\n      ],\n      [\n        \"ffe\",\n        -11.383048057556152\n      ],\n      [\n        \"iți\",\n        -11.383074760437012\n      ],\n      [\n        \"NO\",\n        -11.3831148147583\n      ],\n      [\n        \"▁scope\",\n        -11.383295059204102\n      ],\n      [\n        \"▁lowest\",\n        -11.383527755737305\n      ],\n      [\n        \"▁afraid\",\n        -11.383572578430176\n      ],\n      [\n        \"▁subjects\",\n        -11.383578300476074\n      ],\n      [\n        \"▁templates\",\n        -11.383586883544922\n      ],\n      [\n        \"▁jos\",\n        -11.383604049682617\n      ],\n      [\n        \"DM\",\n        -11.383687973022461\n      ],\n      [\n        \"ensemble\",\n        -11.383792877197266\n      ],\n      [\n        \"▁Ski\",\n        -11.383941650390625\n      ],\n      [\n        \"DP\",\n        -11.384099960327148\n      ],\n      [\n        \"▁grip\",\n        -11.384171485900879\n      ],\n      [\n        \"2-\",\n        -11.38436222076416\n      ],\n      [\n        \"▁sécurité\",\n        -11.384743690490723\n      ],\n      [\n        \"▁mono\",\n        -11.384749412536621\n      ],\n      [\n        \"▁controls\",\n        -11.384854316711426\n      ],\n      [\n        \"SV\",\n        -11.384879112243652\n      ],\n      [\n        \"install\",\n        -11.384970664978027\n      ],\n      [\n        \"berry\",\n        -11.385042190551758\n      ],\n      [\n        \"nial\",\n        -11.385120391845703\n      ],\n      [\n        \"shed\",\n        -11.385462760925293\n      ],\n      [\n        \"▁celle\",\n        -11.385830879211426\n      ],\n      [\n        \"FR\",\n        -11.385936737060547\n      ],\n      [\n        \"äng\",\n        -11.385950088500977\n      ],\n      [\n        \"▁gaz\",\n        -11.385984420776367\n      ],\n      [\n        \"êt\",\n        -11.386184692382812\n      ],\n      [\n        \"▁viewing\",\n        -11.386412620544434\n      ],\n      [\n        \"▁asigura\",\n        -11.386524200439453\n      ],\n      [\n        \"bling\",\n        -11.3865327835083\n      ],\n      [\n        \"master\",\n        -11.386919975280762\n      ],\n      [\n        \"▁Fin\",\n        -11.387160301208496\n      ],\n      [\n        \"VC\",\n        -11.387365341186523\n      ],\n      [\n        \"▁patent\",\n        -11.387715339660645\n      ],\n      [\n        \"▁Clean\",\n        -11.38773250579834\n      ],\n      [\n        \"▁1970\",\n        -11.387789726257324\n      ],\n      [\n        \"▁Char\",\n        -11.387971878051758\n      ],\n      [\n        \"thi\",\n        -11.388010025024414\n      ],\n      [\n        \"bli\",\n        -11.388141632080078\n      ],\n      [\n        \"▁haut\",\n        -11.388307571411133\n      ],\n      [\n        \"tica\",\n        -11.38836669921875\n      ],\n      [\n        \"▁venit\",\n        -11.388578414916992\n      ],\n      [\n        \"▁compatible\",\n        -11.388678550720215\n      ],\n      [\n        \"▁hanging\",\n        -11.388690948486328\n      ],\n      [\n        \"UN\",\n        -11.388842582702637\n      ],\n      [\n        \"▁forth\",\n        -11.388911247253418\n      ],\n      [\n        \"▁painted\",\n        -11.388912200927734\n      ],\n      [\n        \"lip\",\n        -11.389031410217285\n      ],\n      [\n        \"▁deeply\",\n        -11.389089584350586\n      ],\n      [\n        \"▁participating\",\n        -11.389242172241211\n      ],\n      [\n        \"▁Iran\",\n        -11.38968276977539\n      ],\n      [\n        \"▁conventional\",\n        -11.389769554138184\n      ],\n      [\n        \"ARE\",\n        -11.38985824584961\n      ],\n      [\n        \"▁accuracy\",\n        -11.389896392822266\n      ],\n      [\n        \"▁Familie\",\n        -11.389955520629883\n      ],\n      [\n        \"▁Dir\",\n        -11.39001178741455\n      ],\n      [\n        \"▁gehen\",\n        -11.390127182006836\n      ],\n      [\n        \"▁moderne\",\n        -11.39022159576416\n      ],\n      [\n        \"▁Iraq\",\n        -11.39050579071045\n      ],\n      [\n        \"▁vente\",\n        -11.390582084655762\n      ],\n      [\n        \"▁Donald\",\n        -11.390998840332031\n      ],\n      [\n        \"▁passer\",\n        -11.391051292419434\n      ],\n      [\n        \"▁mehrere\",\n        -11.391267776489258\n      ],\n      [\n        \"▁Everything\",\n        -11.391291618347168\n      ],\n      [\n        \"▁studied\",\n        -11.391307830810547\n      ],\n      [\n        \"▁acquire\",\n        -11.391312599182129\n      ],\n      [\n        \"für\",\n        -11.391477584838867\n      ],\n      [\n        \"▁gal\",\n        -11.391502380371094\n      ],\n      [\n        \"▁headed\",\n        -11.391809463500977\n      ],\n      [\n        \"▁screening\",\n        -11.391865730285645\n      ],\n      [\n        \"▁findings\",\n        -11.392303466796875\n      ],\n      [\n        \"▁nutrition\",\n        -11.392305374145508\n      ],\n      [\n        \"▁Secretary\",\n        -11.392308235168457\n      ],\n      [\n        \"duct\",\n        -11.392431259155273\n      ],\n      [\n        \"born\",\n        -11.392436027526855\n      ],\n      [\n        \"«\",\n        -11.39261531829834\n      ],\n      [\n        \"▁statistics\",\n        -11.392616271972656\n      ],\n      [\n        \"▁Sydney\",\n        -11.392800331115723\n      ],\n      [\n        \"▁Prof\",\n        -11.392829895019531\n      ],\n      [\n        \"▁dialogue\",\n        -11.39327621459961\n      ],\n      [\n        \"▁gather\",\n        -11.393425941467285\n      ],\n      [\n        \"valu\",\n        -11.393746376037598\n      ],\n      [\n        \"▁currency\",\n        -11.394073486328125\n      ],\n      [\n        \"▁Kat\",\n        -11.394092559814453\n      ],\n      [\n        \"gotten\",\n        -11.394189834594727\n      ],\n      [\n        \"main\",\n        -11.39432144165039\n      ],\n      [\n        \"▁coin\",\n        -11.394340515136719\n      ],\n      [\n        \"▁Nick\",\n        -11.394380569458008\n      ],\n      [\n        \"vă\",\n        -11.394658088684082\n      ],\n      [\n        \"▁Victoria\",\n        -11.394832611083984\n      ],\n      [\n        \"▁conclusion\",\n        -11.3949613571167\n      ],\n      [\n        \"▁lemon\",\n        -11.394998550415039\n      ],\n      [\n        \"▁Article\",\n        -11.39516830444336\n      ],\n      [\n        \"▁necesar\",\n        -11.39516830444336\n      ],\n      [\n        \"mag\",\n        -11.395180702209473\n      ],\n      [\n        \"▁riding\",\n        -11.39537239074707\n      ],\n      [\n        \"▁Eli\",\n        -11.395599365234375\n      ],\n      [\n        \"▁cord\",\n        -11.395635604858398\n      ],\n      [\n        \"wä\",\n        -11.39572811126709\n      ],\n      [\n        \"ußerdem\",\n        -11.395737648010254\n      ],\n      [\n        \"▁Bed\",\n        -11.395759582519531\n      ],\n      [\n        \"▁layers\",\n        -11.395833015441895\n      ],\n      [\n        \"▁harder\",\n        -11.395975112915039\n      ],\n      [\n        \"▁processor\",\n        -11.396040916442871\n      ],\n      [\n        \"▁Ils\",\n        -11.39613151550293\n      ],\n      [\n        \"▁Edition\",\n        -11.39615535736084\n      ],\n      [\n        \"▁Link\",\n        -11.396393775939941\n      ],\n      [\n        \"éré\",\n        -11.396461486816406\n      ],\n      [\n        \"▁nume\",\n        -11.396576881408691\n      ],\n      [\n        \"▁Boy\",\n        -11.39659595489502\n      ],\n      [\n        \"▁equally\",\n        -11.396646499633789\n      ],\n      [\n        \"▁Regel\",\n        -11.397119522094727\n      ],\n      [\n        \"▁hopes\",\n        -11.397185325622559\n      ],\n      [\n        \"odor\",\n        -11.397311210632324\n      ],\n      [\n        \"▁initially\",\n        -11.397430419921875\n      ],\n      [\n        \"▁$4\",\n        -11.3974609375\n      ],\n      [\n        \"▁exemplu\",\n        -11.397537231445312\n      ],\n      [\n        \"▁vari\",\n        -11.397565841674805\n      ],\n      [\n        \"schl\",\n        -11.397698402404785\n      ],\n      [\n        \"▁southern\",\n        -11.39809799194336\n      ],\n      [\n        \"▁mein\",\n        -11.39818000793457\n      ],\n      [\n        \"▁1994\",\n        -11.398300170898438\n      ],\n      [\n        \"▁importantly\",\n        -11.398401260375977\n      ],\n      [\n        \"▁succes\",\n        -11.398526191711426\n      ],\n      [\n        \"▁developer\",\n        -11.398598670959473\n      ],\n      [\n        \"▁lips\",\n        -11.39889144897461\n      ],\n      [\n        \"▁attitude\",\n        -11.39900016784668\n      ],\n      [\n        \"▁Age\",\n        -11.399541854858398\n      ],\n      [\n        \"▁corps\",\n        -11.399713516235352\n      ],\n      [\n        \"▁clicking\",\n        -11.39976978302002\n      ],\n      [\n        \"▁putem\",\n        -11.399832725524902\n      ],\n      [\n        \"▁journée\",\n        -11.40003776550293\n      ],\n      [\n        \"boy\",\n        -11.4002103805542\n      ],\n      [\n        \"▁injured\",\n        -11.40028190612793\n      ],\n      [\n        \"▁watched\",\n        -11.400433540344238\n      ],\n      [\n        \"▁flights\",\n        -11.40079116821289\n      ],\n      [\n        \"turn\",\n        -11.400980949401855\n      ],\n      [\n        \"▁stainless\",\n        -11.401562690734863\n      ],\n      [\n        \"▁besondere\",\n        -11.40156364440918\n      ],\n      [\n        \"▁Tur\",\n        -11.401596069335938\n      ],\n      [\n        \"▁hiring\",\n        -11.401650428771973\n      ],\n      [\n        \"▁roads\",\n        -11.401727676391602\n      ],\n      [\n        \"ificat\",\n        -11.401785850524902\n      ],\n      [\n        \"▁Flor\",\n        -11.402045249938965\n      ],\n      [\n        \"▁puternic\",\n        -11.402215003967285\n      ],\n      [\n        \"▁unexpected\",\n        -11.40223503112793\n      ],\n      [\n        \"▁Est\",\n        -11.40238094329834\n      ],\n      [\n        \"▁adopted\",\n        -11.40253734588623\n      ],\n      [\n        \"▁Fox\",\n        -11.402647972106934\n      ],\n      [\n        \"▁contributions\",\n        -11.402870178222656\n      ],\n      [\n        \"sec\",\n        -11.402968406677246\n      ],\n      [\n        \"IO\",\n        -11.403059959411621\n      ],\n      [\n        \"▁santé\",\n        -11.403432846069336\n      ],\n      [\n        \"▁Tree\",\n        -11.403763771057129\n      ],\n      [\n        \"▁scurt\",\n        -11.40381908416748\n      ],\n      [\n        \"▁Products\",\n        -11.403848648071289\n      ],\n      [\n        \"▁forecast\",\n        -11.403998374938965\n      ],\n      [\n        \"▁actor\",\n        -11.404143333435059\n      ],\n      [\n        \"▁Gallery\",\n        -11.404149055480957\n      ],\n      [\n        \"▁continuous\",\n        -11.404163360595703\n      ],\n      [\n        \"▁Hat\",\n        -11.404291152954102\n      ],\n      [\n        \"▁slip\",\n        -11.404501914978027\n      ],\n      [\n        \"9%\",\n        -11.404960632324219\n      ],\n      [\n        \"▁depression\",\n        -11.405043601989746\n      ],\n      [\n        \"UI\",\n        -11.405229568481445\n      ],\n      [\n        \"abile\",\n        -11.405648231506348\n      ],\n      [\n        \"▁merit\",\n        -11.405671119689941\n      ],\n      [\n        \"▁Fer\",\n        -11.405805587768555\n      ],\n      [\n        \"▁robot\",\n        -11.405888557434082\n      ],\n      [\n        \"▁gel\",\n        -11.40589427947998\n      ],\n      [\n        \"▁gentle\",\n        -11.406017303466797\n      ],\n      [\n        \"▁wanting\",\n        -11.406071662902832\n      ],\n      [\n        \"▁understood\",\n        -11.406157493591309\n      ],\n      [\n        \"▁terrain\",\n        -11.406161308288574\n      ],\n      [\n        \"▁associate\",\n        -11.406176567077637\n      ],\n      [\n        \"▁discussions\",\n        -11.40632152557373\n      ],\n      [\n        \"▁Job\",\n        -11.406365394592285\n      ],\n      [\n        \"spec\",\n        -11.406440734863281\n      ],\n      [\n        \"Dabei\",\n        -11.406475067138672\n      ],\n      [\n        \"etic\",\n        -11.406517028808594\n      ],\n      [\n        \"gol\",\n        -11.40654468536377\n      ],\n      [\n        \"▁20%\",\n        -11.406584739685059\n      ],\n      [\n        \"▁grup\",\n        -11.406606674194336\n      ],\n      [\n        \"▁Doctor\",\n        -11.406813621520996\n      ],\n      [\n        \"verse\",\n        -11.407246589660645\n      ],\n      [\n        \"▁victim\",\n        -11.407258033752441\n      ],\n      [\n        \"ță\",\n        -11.407302856445312\n      ],\n      [\n        \"▁scores\",\n        -11.407544136047363\n      ],\n      [\n        \"▁Policy\",\n        -11.407634735107422\n      ],\n      [\n        \"▁Anna\",\n        -11.407736778259277\n      ],\n      [\n        \"IV\",\n        -11.407804489135742\n      ],\n      [\n        \"▁mineral\",\n        -11.408202171325684\n      ],\n      [\n        \"live\",\n        -11.40821647644043\n      ],\n      [\n        \"▁grey\",\n        -11.408368110656738\n      ],\n      [\n        \"struct\",\n        -11.40852165222168\n      ],\n      [\n        \"▁emails\",\n        -11.408738136291504\n      ],\n      [\n        \"▁anymore\",\n        -11.409114837646484\n      ],\n      [\n        \"▁productivity\",\n        -11.409387588500977\n      ],\n      [\n        \"▁Dark\",\n        -11.409463882446289\n      ],\n      [\n        \"▁neither\",\n        -11.409481048583984\n      ],\n      [\n        \"▁quotes\",\n        -11.409611701965332\n      ],\n      [\n        \"LS\",\n        -11.410368919372559\n      ],\n      [\n        \"▁Arizona\",\n        -11.41040325164795\n      ],\n      [\n        \"night\",\n        -11.410497665405273\n      ],\n      [\n        \"élé\",\n        -11.411019325256348\n      ],\n      [\n        \"▁assigned\",\n        -11.411153793334961\n      ],\n      [\n        \"▁satellite\",\n        -11.411328315734863\n      ],\n      [\n        \"▁stability\",\n        -11.411665916442871\n      ],\n      [\n        \"▁networking\",\n        -11.41172981262207\n      ],\n      [\n        \"▁Transport\",\n        -11.411847114562988\n      ],\n      [\n        \"▁persons\",\n        -11.411856651306152\n      ],\n      [\n        \"fund\",\n        -11.412043571472168\n      ],\n      [\n        \"▁pratique\",\n        -11.41213321685791\n      ],\n      [\n        \"▁inca\",\n        -11.412134170532227\n      ],\n      [\n        \"iller\",\n        -11.412349700927734\n      ],\n      [\n        \"▁packed\",\n        -11.41239070892334\n      ],\n      [\n        \"▁Vegas\",\n        -11.412484169006348\n      ],\n      [\n        \"▁offre\",\n        -11.412493705749512\n      ],\n      [\n        \"▁Bin\",\n        -11.412518501281738\n      ],\n      [\n        \"stop\",\n        -11.412609100341797\n      ],\n      [\n        \"mini\",\n        -11.412860870361328\n      ],\n      [\n        \"▁jam\",\n        -11.412877082824707\n      ],\n      [\n        \"cord\",\n        -11.41289234161377\n      ],\n      [\n        \"▁Beautiful\",\n        -11.412996292114258\n      ],\n      [\n        \"▁trash\",\n        -11.413012504577637\n      ],\n      [\n        \"▁wise\",\n        -11.413092613220215\n      ],\n      [\n        \"▁accounting\",\n        -11.413178443908691\n      ],\n      [\n        \"▁différents\",\n        -11.413182258605957\n      ],\n      [\n        \"▁stil\",\n        -11.413214683532715\n      ],\n      [\n        \"suit\",\n        -11.413951873779297\n      ],\n      [\n        \"▁vier\",\n        -11.414209365844727\n      ],\n      [\n        \"▁permis\",\n        -11.414224624633789\n      ],\n      [\n        \"flow\",\n        -11.414238929748535\n      ],\n      [\n        \"▁col\",\n        -11.414749145507812\n      ],\n      [\n        \"ected\",\n        -11.414960861206055\n      ],\n      [\n        \"▁singer\",\n        -11.414999008178711\n      ],\n      [\n        \"▁GmbH\",\n        -11.415038108825684\n      ],\n      [\n        \"tics\",\n        -11.415094375610352\n      ],\n      [\n        \"▁ser\",\n        -11.415159225463867\n      ],\n      [\n        \"On\",\n        -11.415315628051758\n      ],\n      [\n        \"▁insights\",\n        -11.415605545043945\n      ],\n      [\n        \"BB\",\n        -11.415946960449219\n      ],\n      [\n        \"▁differ\",\n        -11.415959358215332\n      ],\n      [\n        \"▁Glass\",\n        -11.416131973266602\n      ],\n      [\n        \"▁Six\",\n        -11.416482925415039\n      ],\n      [\n        \"▁subscription\",\n        -11.416584968566895\n      ],\n      [\n        \"BC\",\n        -11.416606903076172\n      ],\n      [\n        \"▁returning\",\n        -11.416664123535156\n      ],\n      [\n        \"kleinen\",\n        -11.416693687438965\n      ],\n      [\n        \"▁advantages\",\n        -11.416747093200684\n      ],\n      [\n        \"omme\",\n        -11.416852951049805\n      ],\n      [\n        \"lus\",\n        -11.417071342468262\n      ],\n      [\n        \"now\",\n        -11.417141914367676\n      ],\n      [\n        \"▁Pack\",\n        -11.417253494262695\n      ],\n      [\n        \"▁leak\",\n        -11.417333602905273\n      ],\n      [\n        \"▁muscles\",\n        -11.41748332977295\n      ],\n      [\n        \"▁davon\",\n        -11.417492866516113\n      ],\n      [\n        \"mph\",\n        -11.417858123779297\n      ],\n      [\n        \"▁temple\",\n        -11.417868614196777\n      ],\n      [\n        \"▁Après\",\n        -11.417901039123535\n      ],\n      [\n        \"▁Illinois\",\n        -11.41801643371582\n      ],\n      [\n        \"▁variable\",\n        -11.418065071105957\n      ],\n      [\n        \"▁judgment\",\n        -11.418389320373535\n      ],\n      [\n        \"gran\",\n        -11.41861629486084\n      ],\n      [\n        \"▁pose\",\n        -11.418621063232422\n      ],\n      [\n        \"das\",\n        -11.418647766113281\n      ],\n      [\n        \"ures\",\n        -11.418673515319824\n      ],\n      [\n        \"▁Championship\",\n        -11.418689727783203\n      ],\n      [\n        \"ebenfalls\",\n        -11.41872501373291\n      ],\n      [\n        \"▁hydro\",\n        -11.418753623962402\n      ],\n      [\n        \"▁angle\",\n        -11.419268608093262\n      ],\n      [\n        \"▁5-\",\n        -11.41940975189209\n      ],\n      [\n        \"▁gest\",\n        -11.419547080993652\n      ],\n      [\n        \"▁Frau\",\n        -11.420233726501465\n      ],\n      [\n        \"▁knock\",\n        -11.420275688171387\n      ],\n      [\n        \"FS\",\n        -11.420442581176758\n      ],\n      [\n        \"spi\",\n        -11.420577049255371\n      ],\n      [\n        \"▁Regional\",\n        -11.420717239379883\n      ],\n      [\n        \"lets\",\n        -11.421098709106445\n      ],\n      [\n        \"▁Date\",\n        -11.42115592956543\n      ],\n      [\n        \"▁Finance\",\n        -11.421211242675781\n      ],\n      [\n        \"▁Dann\",\n        -11.421320915222168\n      ],\n      [\n        \"Star\",\n        -11.421380043029785\n      ],\n      [\n        \"▁Creek\",\n        -11.421393394470215\n      ],\n      [\n        \"▁fu\",\n        -11.421648979187012\n      ],\n      [\n        \"wohn\",\n        -11.422141075134277\n      ],\n      [\n        \"▁anniversary\",\n        -11.422219276428223\n      ],\n      [\n        \"▁investments\",\n        -11.422292709350586\n      ],\n      [\n        \"▁universal\",\n        -11.422601699829102\n      ],\n      [\n        \"▁pit\",\n        -11.422745704650879\n      ],\n      [\n        \"ște\",\n        -11.422784805297852\n      ],\n      [\n        \"▁lab\",\n        -11.422822952270508\n      ],\n      [\n        \"dienst\",\n        -11.422884941101074\n      ],\n      [\n        \"▁pal\",\n        -11.422889709472656\n      ],\n      [\n        \"▁graphic\",\n        -11.42289924621582\n      ],\n      [\n        \"▁bearing\",\n        -11.422900199890137\n      ],\n      [\n        \"▁stylish\",\n        -11.423087120056152\n      ],\n      [\n        \"▁mé\",\n        -11.42319393157959\n      ],\n      [\n        \"▁există\",\n        -11.42326545715332\n      ],\n      [\n        \"▁découvrir\",\n        -11.423477172851562\n      ],\n      [\n        \"comp\",\n        -11.423606872558594\n      ],\n      [\n        \"ridge\",\n        -11.423667907714844\n      ],\n      [\n        \"▁heads\",\n        -11.423765182495117\n      ],\n      [\n        \"▁consequences\",\n        -11.423835754394531\n      ],\n      [\n        \"self\",\n        -11.423842430114746\n      ],\n      [\n        \"fried\",\n        -11.423870086669922\n      ],\n      [\n        \"▁inventory\",\n        -11.424199104309082\n      ],\n      [\n        \"▁strip\",\n        -11.42422866821289\n      ],\n      [\n        \"▁Civil\",\n        -11.42424488067627\n      ],\n      [\n        \"bell\",\n        -11.424307823181152\n      ],\n      [\n        \"▁neben\",\n        -11.424444198608398\n      ],\n      [\n        \"▁Perfect\",\n        -11.424470901489258\n      ],\n      [\n        \"▁Notre\",\n        -11.424478530883789\n      ],\n      [\n        \"▁fraud\",\n        -11.424630165100098\n      ],\n      [\n        \"▁employers\",\n        -11.424656867980957\n      ],\n      [\n        \"▁Jackson\",\n        -11.42470645904541\n      ],\n      [\n        \"▁probleme\",\n        -11.424915313720703\n      ],\n      [\n        \"▁richtig\",\n        -11.424957275390625\n      ],\n      [\n        \"▁Method\",\n        -11.425009727478027\n      ],\n      [\n        \"▁tired\",\n        -11.425010681152344\n      ],\n      [\n        \"dies\",\n        -11.425031661987305\n      ],\n      [\n        \"▁Number\",\n        -11.425315856933594\n      ],\n      [\n        \"rland\",\n        -11.425652503967285\n      ],\n      [\n        \"▁latter\",\n        -11.426031112670898\n      ],\n      [\n        \"rendre\",\n        -11.426064491271973\n      ],\n      [\n        \"▁cameras\",\n        -11.426095962524414\n      ],\n      [\n        \"▁euch\",\n        -11.426630020141602\n      ],\n      [\n        \"▁Description\",\n        -11.427038192749023\n      ],\n      [\n        \"Spec\",\n        -11.427061080932617\n      ],\n      [\n        \"▁mile\",\n        -11.427437782287598\n      ],\n      [\n        \"▁Challenge\",\n        -11.427474021911621\n      ],\n      [\n        \"▁Solutions\",\n        -11.427504539489746\n      ],\n      [\n        \"▁trusted\",\n        -11.427509307861328\n      ],\n      [\n        \"▁einge\",\n        -11.427515029907227\n      ],\n      [\n        \"rück\",\n        -11.427528381347656\n      ],\n      [\n        \"▁Ober\",\n        -11.427635192871094\n      ],\n      [\n        \"kes\",\n        -11.42764949798584\n      ],\n      [\n        \"▁Log\",\n        -11.427684783935547\n      ],\n      [\n        \"▁dessert\",\n        -11.427776336669922\n      ],\n      [\n        \"▁murder\",\n        -11.428033828735352\n      ],\n      [\n        \"▁1/2\",\n        -11.428311347961426\n      ],\n      [\n        \"▁Provide\",\n        -11.42872142791748\n      ],\n      [\n        \"nivelul\",\n        -11.428800582885742\n      ],\n      [\n        \"nici\",\n        -11.428818702697754\n      ],\n      [\n        \"▁observe\",\n        -11.42889404296875\n      ],\n      [\n        \"▁prescription\",\n        -11.429162979125977\n      ],\n      [\n        \"▁Sau\",\n        -11.429170608520508\n      ],\n      [\n        \"▁genuine\",\n        -11.42919635772705\n      ],\n      [\n        \"▁operated\",\n        -11.429231643676758\n      ],\n      [\n        \"▁generous\",\n        -11.429267883300781\n      ],\n      [\n        \"▁weapons\",\n        -11.429458618164062\n      ],\n      [\n        \"▁belief\",\n        -11.4295015335083\n      ],\n      [\n        \"▁consum\",\n        -11.429584503173828\n      ],\n      [\n        \"▁unknown\",\n        -11.430116653442383\n      ],\n      [\n        \"deoarece\",\n        -11.430135726928711\n      ],\n      [\n        \"Art\",\n        -11.430147171020508\n      ],\n      [\n        \"▁kurz\",\n        -11.430183410644531\n      ],\n      [\n        \"▁Gut\",\n        -11.430258750915527\n      ],\n      [\n        \"▁medication\",\n        -11.430522918701172\n      ],\n      [\n        \"▁Mau\",\n        -11.43058967590332\n      ],\n      [\n        \"▁divorce\",\n        -11.430678367614746\n      ],\n      [\n        \"▁claimed\",\n        -11.430811882019043\n      ],\n      [\n        \"halten\",\n        -11.430848121643066\n      ],\n      [\n        \"▁Cons\",\n        -11.43089485168457\n      ],\n      [\n        \"▁operational\",\n        -11.430975914001465\n      ],\n      [\n        \"▁Hong\",\n        -11.431081771850586\n      ],\n      [\n        \"VI\",\n        -11.431143760681152\n      ],\n      [\n        \"▁Blick\",\n        -11.431485176086426\n      ],\n      [\n        \"▁lamp\",\n        -11.431706428527832\n      ],\n      [\n        \"pati\",\n        -11.431853294372559\n      ],\n      [\n        \"▁4-\",\n        -11.43192195892334\n      ],\n      [\n        \"▁interven\",\n        -11.431964874267578\n      ],\n      [\n        \"ques\",\n        -11.43201732635498\n      ],\n      [\n        \"▁Talk\",\n        -11.432096481323242\n      ],\n      [\n        \"▁zeigt\",\n        -11.432318687438965\n      ],\n      [\n        \"▁targeted\",\n        -11.432390213012695\n      ],\n      [\n        \"round\",\n        -11.432640075683594\n      ],\n      [\n        \"enfant\",\n        -11.432748794555664\n      ],\n      [\n        \"▁Reg\",\n        -11.432836532592773\n      ],\n      [\n        \"▁instruments\",\n        -11.432872772216797\n      ],\n      [\n        \"▁calcul\",\n        -11.433363914489746\n      ],\n      [\n        \"▁Henry\",\n        -11.4335298538208\n      ],\n      [\n        \"▁Cla\",\n        -11.433616638183594\n      ],\n      [\n        \"▁rack\",\n        -11.433661460876465\n      ],\n      [\n        \"sehen\",\n        -11.43375301361084\n      ],\n      [\n        \"▁ending\",\n        -11.433754920959473\n      ],\n      [\n        \"▁resolve\",\n        -11.434130668640137\n      ],\n      [\n        \"▁advise\",\n        -11.434178352355957\n      ],\n      [\n        \"▁sociale\",\n        -11.434386253356934\n      ],\n      [\n        \"▁cabin\",\n        -11.434536933898926\n      ],\n      [\n        \"▁involve\",\n        -11.43480396270752\n      ],\n      [\n        \"gă\",\n        -11.434889793395996\n      ],\n      [\n        \"▁automat\",\n        -11.435132026672363\n      ],\n      [\n        \"▁consultant\",\n        -11.435258865356445\n      ],\n      [\n        \"Bu\",\n        -11.435370445251465\n      ],\n      [\n        \"▁safely\",\n        -11.435466766357422\n      ],\n      [\n        \"état\",\n        -11.435478210449219\n      ],\n      [\n        \"▁pros\",\n        -11.435657501220703\n      ],\n      [\n        \"▁lies\",\n        -11.435659408569336\n      ],\n      [\n        \"▁Brian\",\n        -11.435914993286133\n      ],\n      [\n        \"▁talented\",\n        -11.435954093933105\n      ],\n      [\n        \"pus\",\n        -11.43599796295166\n      ],\n      [\n        \"▁hub\",\n        -11.436060905456543\n      ],\n      [\n        \"▁Ji\",\n        -11.436066627502441\n      ],\n      [\n        \"▁sought\",\n        -11.436102867126465\n      ],\n      [\n        \"▁energie\",\n        -11.436210632324219\n      ],\n      [\n        \"▁möchten\",\n        -11.43634033203125\n      ],\n      [\n        \"▁11.\",\n        -11.436558723449707\n      ],\n      [\n        \"▁Kong\",\n        -11.436662673950195\n      ],\n      [\n        \"▁grave\",\n        -11.43666934967041\n      ],\n      [\n        \"▁lists\",\n        -11.436800956726074\n      ],\n      [\n        \"tati\",\n        -11.436809539794922\n      ],\n      [\n        \"verschiedenen\",\n        -11.43692398071289\n      ],\n      [\n        \"dam\",\n        -11.437061309814453\n      ],\n      [\n        \"▁charity\",\n        -11.437249183654785\n      ],\n      [\n        \"▁breaking\",\n        -11.43735122680664\n      ],\n      [\n        \"kins\",\n        -11.43747329711914\n      ],\n      [\n        \"▁könnte\",\n        -11.437517166137695\n      ],\n      [\n        \"▁appointed\",\n        -11.437532424926758\n      ],\n      [\n        \"roc\",\n        -11.4376859664917\n      ],\n      [\n        \"▁Senate\",\n        -11.437979698181152\n      ],\n      [\n        \"wit\",\n        -11.438002586364746\n      ],\n      [\n        \"▁emerging\",\n        -11.438162803649902\n      ],\n      [\n        \"▁année\",\n        -11.438288688659668\n      ],\n      [\n        \"▁Cool\",\n        -11.438365936279297\n      ],\n      [\n        \"▁sensor\",\n        -11.43842887878418\n      ],\n      [\n        \"How\",\n        -11.438488960266113\n      ],\n      [\n        \"▁Ryan\",\n        -11.438626289367676\n      ],\n      [\n        \"▁computers\",\n        -11.43871784210205\n      ],\n      [\n        \"▁fault\",\n        -11.4388427734375\n      ],\n      [\n        \"▁présent\",\n        -11.438843727111816\n      ],\n      [\n        \"ulation\",\n        -11.439149856567383\n      ],\n      [\n        \"▁stir\",\n        -11.439348220825195\n      ],\n      [\n        \"lauf\",\n        -11.439703941345215\n      ],\n      [\n        \"▁AI\",\n        -11.440389633178711\n      ],\n      [\n        \"▁Bri\",\n        -11.440438270568848\n      ],\n      [\n        \"▁bain\",\n        -11.441011428833008\n      ],\n      [\n        \"▁5,\",\n        -11.441287994384766\n      ],\n      [\n        \"schein\",\n        -11.44157886505127\n      ],\n      [\n        \"▁weiß\",\n        -11.441596031188965\n      ],\n      [\n        \"▁possibilities\",\n        -11.44235610961914\n      ],\n      [\n        \"gur\",\n        -11.442413330078125\n      ],\n      [\n        \"▁hinter\",\n        -11.442647933959961\n      ],\n      [\n        \"Innen\",\n        -11.442755699157715\n      ],\n      [\n        \"▁vorba\",\n        -11.442992210388184\n      ],\n      [\n        \"fahren\",\n        -11.443008422851562\n      ],\n      [\n        \"▁Cell\",\n        -11.443072319030762\n      ],\n      [\n        \"univers\",\n        -11.443137168884277\n      ],\n      [\n        \"▁Follow\",\n        -11.443424224853516\n      ],\n      [\n        \"▁emotions\",\n        -11.44360637664795\n      ],\n      [\n        \"▁Ministry\",\n        -11.443694114685059\n      ],\n      [\n        \"▁curriculum\",\n        -11.443694114685059\n      ],\n      [\n        \"Je\",\n        -11.443764686584473\n      ],\n      [\n        \"▁gab\",\n        -11.444080352783203\n      ],\n      [\n        \"▁sigur\",\n        -11.444270133972168\n      ],\n      [\n        \"rise\",\n        -11.444416999816895\n      ],\n      [\n        \"Pri\",\n        -11.44466495513916\n      ],\n      [\n        \"▁stabil\",\n        -11.444781303405762\n      ],\n      [\n        \"▁superb\",\n        -11.445100784301758\n      ],\n      [\n        \"▁Oak\",\n        -11.44510269165039\n      ],\n      [\n        \"▁rubber\",\n        -11.445286750793457\n      ],\n      [\n        \"▁tag\",\n        -11.445306777954102\n      ],\n      [\n        \"PG\",\n        -11.445361137390137\n      ],\n      [\n        \"▁Heat\",\n        -11.445477485656738\n      ],\n      [\n        \"▁thousand\",\n        -11.445504188537598\n      ],\n      [\n        \"▁meets\",\n        -11.445521354675293\n      ],\n      [\n        \"▁faced\",\n        -11.445578575134277\n      ],\n      [\n        \"▁reserve\",\n        -11.445640563964844\n      ],\n      [\n        \"cateva\",\n        -11.445767402648926\n      ],\n      [\n        \"▁gym\",\n        -11.445771217346191\n      ],\n      [\n        \"▁vitamin\",\n        -11.445960998535156\n      ],\n      [\n        \"▁Rest\",\n        -11.446457862854004\n      ],\n      [\n        \"▁Single\",\n        -11.446535110473633\n      ],\n      [\n        \"▁Stephen\",\n        -11.446623802185059\n      ],\n      [\n        \"▁trick\",\n        -11.446824073791504\n      ],\n      [\n        \"DU\",\n        -11.44694709777832\n      ],\n      [\n        \"▁telefon\",\n        -11.44711685180664\n      ],\n      [\n        \"▁gând\",\n        -11.447120666503906\n      ],\n      [\n        \"▁primit\",\n        -11.447345733642578\n      ],\n      [\n        \"▁Connect\",\n        -11.447351455688477\n      ],\n      [\n        \"▁führt\",\n        -11.447440147399902\n      ],\n      [\n        \"▁Info\",\n        -11.447500228881836\n      ],\n      [\n        \"▁recall\",\n        -11.447848320007324\n      ],\n      [\n        \"▁restore\",\n        -11.447885513305664\n      ],\n      [\n        \"lege\",\n        -11.44792652130127\n      ],\n      [\n        \"▁franchise\",\n        -11.448189735412598\n      ],\n      [\n        \"▁seulement\",\n        -11.44856071472168\n      ],\n      [\n        \"reci\",\n        -11.448598861694336\n      ],\n      [\n        \"▁2019,\",\n        -11.44864273071289\n      ],\n      [\n        \"▁Ring\",\n        -11.448663711547852\n      ],\n      [\n        \"▁assembly\",\n        -11.448678970336914\n      ],\n      [\n        \"intérieur\",\n        -11.448775291442871\n      ],\n      [\n        \"▁shade\",\n        -11.44887924194336\n      ],\n      [\n        \"▁meaningful\",\n        -11.448881149291992\n      ],\n      [\n        \"bag\",\n        -11.448989868164062\n      ],\n      [\n        \"ONE\",\n        -11.449249267578125\n      ],\n      [\n        \"▁globe\",\n        -11.449287414550781\n      ],\n      [\n        \"▁WA\",\n        -11.449406623840332\n      ],\n      [\n        \"▁intervention\",\n        -11.449495315551758\n      ],\n      [\n        \"öl\",\n        -11.449531555175781\n      ],\n      [\n        \"▁Marine\",\n        -11.45029067993164\n      ],\n      [\n        \"▁Angebot\",\n        -11.450512886047363\n      ],\n      [\n        \"▁align\",\n        -11.450618743896484\n      ],\n      [\n        \"▁temperatures\",\n        -11.450634956359863\n      ],\n      [\n        \"ifier\",\n        -11.45091724395752\n      ],\n      [\n        \"▁Nigeria\",\n        -11.451189041137695\n      ],\n      [\n        \"▁survive\",\n        -11.451216697692871\n      ],\n      [\n        \"ounce\",\n        -11.451275825500488\n      ],\n      [\n        \"▁placement\",\n        -11.451416969299316\n      ],\n      [\n        \"▁deci\",\n        -11.451528549194336\n      ],\n      [\n        \"▁Taylor\",\n        -11.451759338378906\n      ],\n      [\n        \"step\",\n        -11.45190715789795\n      ],\n      [\n        \"▁Geschichte\",\n        -11.452054023742676\n      ],\n      [\n        \"▁Bet\",\n        -11.452169418334961\n      ],\n      [\n        \"▁Nature\",\n        -11.45224380493164\n      ],\n      [\n        \"▁FC\",\n        -11.452256202697754\n      ],\n      [\n        \"▁ownership\",\n        -11.452286720275879\n      ],\n      [\n        \"▁behaviour\",\n        -11.452474594116211\n      ],\n      [\n        \"▁deutlich\",\n        -11.452532768249512\n      ],\n      [\n        \"▁wondering\",\n        -11.452798843383789\n      ],\n      [\n        \"▁cleaner\",\n        -11.453295707702637\n      ],\n      [\n        \"uring\",\n        -11.4534912109375\n      ],\n      [\n        \"rä\",\n        -11.453496932983398\n      ],\n      [\n        \"▁ga\",\n        -11.454296112060547\n      ],\n      [\n        \"ador\",\n        -11.454482078552246\n      ],\n      [\n        \"▁artwork\",\n        -11.454564094543457\n      ],\n      [\n        \"ologic\",\n        -11.45457649230957\n      ],\n      [\n        \"▁eigentlich\",\n        -11.454848289489746\n      ],\n      [\n        \"▁hell\",\n        -11.45522403717041\n      ],\n      [\n        \"source\",\n        -11.455251693725586\n      ],\n      [\n        \"▁gem\",\n        -11.455265045166016\n      ],\n      [\n        \"▁boss\",\n        -11.455307006835938\n      ],\n      [\n        \"▁arise\",\n        -11.455460548400879\n      ],\n      [\n        \"about\",\n        -11.455711364746094\n      ],\n      [\n        \"▁SI\",\n        -11.455951690673828\n      ],\n      [\n        \"▁ME\",\n        -11.45610237121582\n      ],\n      [\n        \"akt\",\n        -11.456191062927246\n      ],\n      [\n        \"▁Style\",\n        -11.456259727478027\n      ],\n      [\n        \"▁Körper\",\n        -11.456493377685547\n      ],\n      [\n        \"gui\",\n        -11.456799507141113\n      ],\n      [\n        \"▁navigate\",\n        -11.456819534301758\n      ],\n      [\n        \"▁Meanwhile\",\n        -11.456977844238281\n      ],\n      [\n        \"▁așa\",\n        -11.457111358642578\n      ],\n      [\n        \"▁bulk\",\n        -11.457298278808594\n      ],\n      [\n        \"▁directions\",\n        -11.457310676574707\n      ],\n      [\n        \"▁brick\",\n        -11.457747459411621\n      ],\n      [\n        \"▁Poly\",\n        -11.457752227783203\n      ],\n      [\n        \"▁politique\",\n        -11.457772254943848\n      ],\n      [\n        \"▁patch\",\n        -11.457777976989746\n      ],\n      [\n        \"ра\",\n        -11.457816123962402\n      ],\n      [\n        \"commerce\",\n        -11.457844734191895\n      ],\n      [\n        \"▁înainte\",\n        -11.457884788513184\n      ],\n      [\n        \"▁intelligent\",\n        -11.45823860168457\n      ],\n      [\n        \"▁infection\",\n        -11.458426475524902\n      ],\n      [\n        \"▁Tru\",\n        -11.458494186401367\n      ],\n      [\n        \"▁raising\",\n        -11.458504676818848\n      ],\n      [\n        \"tragen\",\n        -11.458539009094238\n      ],\n      [\n        \"▁portrait\",\n        -11.45858383178711\n      ],\n      [\n        \"▁meisten\",\n        -11.458783149719238\n      ],\n      [\n        \"▁organize\",\n        -11.45893669128418\n      ],\n      [\n        \"metric\",\n        -11.458962440490723\n      ],\n      [\n        \"▁Season\",\n        -11.459036827087402\n      ],\n      [\n        \"▁enforcement\",\n        -11.459259033203125\n      ],\n      [\n        \"origine\",\n        -11.459836959838867\n      ],\n      [\n        \"▁Ros\",\n        -11.460065841674805\n      ],\n      [\n        \"▁Mount\",\n        -11.460083961486816\n      ],\n      [\n        \"have\",\n        -11.460237503051758\n      ],\n      [\n        \"▁romantic\",\n        -11.460258483886719\n      ],\n      [\n        \"▁comic\",\n        -11.460810661315918\n      ],\n      [\n        \"▁greu\",\n        -11.461116790771484\n      ],\n      [\n        \"ET\",\n        -11.46133041381836\n      ],\n      [\n        \"▁hook\",\n        -11.461407661437988\n      ],\n      [\n        \"▁mort\",\n        -11.461411476135254\n      ],\n      [\n        \"▁indicated\",\n        -11.461583137512207\n      ],\n      [\n        \"▁7,\",\n        -11.461982727050781\n      ],\n      [\n        \"▁Neben\",\n        -11.46204662322998\n      ],\n      [\n        \"yer\",\n        -11.46214485168457\n      ],\n      [\n        \"▁momentul\",\n        -11.46214771270752\n      ],\n      [\n        \"note\",\n        -11.462313652038574\n      ],\n      [\n        \"▁baz\",\n        -11.46231460571289\n      ],\n      [\n        \"▁abroad\",\n        -11.462320327758789\n      ],\n      [\n        \"nite\",\n        -11.462464332580566\n      ],\n      [\n        \"▁bass\",\n        -11.462701797485352\n      ],\n      [\n        \"▁norm\",\n        -11.462714195251465\n      ],\n      [\n        \"▁É\",\n        -11.462788581848145\n      ],\n      [\n        \"4.\",\n        -11.462881088256836\n      ],\n      [\n        \"▁province\",\n        -11.463004112243652\n      ],\n      [\n        \"▁merge\",\n        -11.463419914245605\n      ],\n      [\n        \"arbeiten\",\n        -11.463438987731934\n      ],\n      [\n        \"-20\",\n        -11.463574409484863\n      ],\n      [\n        \"▁Nicht\",\n        -11.463674545288086\n      ],\n      [\n        \"spo\",\n        -11.463783264160156\n      ],\n      [\n        \"size\",\n        -11.463815689086914\n      ],\n      [\n        \"▁assure\",\n        -11.463849067687988\n      ],\n      [\n        \"charge\",\n        -11.463987350463867\n      ],\n      [\n        \"▁olive\",\n        -11.464017868041992\n      ],\n      [\n        \"▁Pot\",\n        -11.46408462524414\n      ],\n      [\n        \"▁Figure\",\n        -11.4642333984375\n      ],\n      [\n        \"clair\",\n        -11.464336395263672\n      ],\n      [\n        \"▁discipline\",\n        -11.464600563049316\n      ],\n      [\n        \"elli\",\n        -11.464639663696289\n      ],\n      [\n        \"▁tackle\",\n        -11.465169906616211\n      ],\n      [\n        \"▁buyer\",\n        -11.465237617492676\n      ],\n      [\n        \"▁loud\",\n        -11.465479850769043\n      ],\n      [\n        \"▁180\",\n        -11.465534210205078\n      ],\n      [\n        \"▁căt\",\n        -11.465587615966797\n      ],\n      [\n        \"▁Palm\",\n        -11.465738296508789\n      ],\n      [\n        \"away\",\n        -11.46593189239502\n      ],\n      [\n        \"▁Mother\",\n        -11.46607494354248\n      ],\n      [\n        \"onia\",\n        -11.466240882873535\n      ],\n      [\n        \"▁Protection\",\n        -11.466416358947754\n      ],\n      [\n        \"auto\",\n        -11.466547966003418\n      ],\n      [\n        \"▁Version\",\n        -11.466583251953125\n      ],\n      [\n        \"▁Nice\",\n        -11.466714859008789\n      ],\n      [\n        \"▁12.\",\n        -11.46682071685791\n      ],\n      [\n        \"▁0,\",\n        -11.466835021972656\n      ],\n      [\n        \"ATION\",\n        -11.466911315917969\n      ],\n      [\n        \"▁Produkte\",\n        -11.466955184936523\n      ],\n      [\n        \"▁tube\",\n        -11.467084884643555\n      ],\n      [\n        \"▁Houston\",\n        -11.467106819152832\n      ],\n      [\n        \"chu\",\n        -11.467500686645508\n      ],\n      [\n        \"pas\",\n        -11.467717170715332\n      ],\n      [\n        \"▁Ele\",\n        -11.467801094055176\n      ],\n      [\n        \"▁mountains\",\n        -11.467835426330566\n      ],\n      [\n        \"PH\",\n        -11.467937469482422\n      ],\n      [\n        \"▁languages\",\n        -11.468672752380371\n      ],\n      [\n        \"▁servicii\",\n        -11.468722343444824\n      ],\n      [\n        \"▁Stay\",\n        -11.468999862670898\n      ],\n      [\n        \"fil\",\n        -11.469138145446777\n      ],\n      [\n        \"▁propos\",\n        -11.469801902770996\n      ],\n      [\n        \"▁coll\",\n        -11.469825744628906\n      ],\n      [\n        \"▁mor\",\n        -11.470197677612305\n      ],\n      [\n        \"▁arrange\",\n        -11.470410346984863\n      ],\n      [\n        \"▁sorry\",\n        -11.470475196838379\n      ],\n      [\n        \"▁instruction\",\n        -11.470723152160645\n      ],\n      [\n        \"▁holes\",\n        -11.47077465057373\n      ],\n      [\n        \"letting\",\n        -11.471046447753906\n      ],\n      [\n        \"▁wa\",\n        -11.471074104309082\n      ],\n      [\n        \"▁Feb\",\n        -11.471227645874023\n      ],\n      [\n        \"omb\",\n        -11.471232414245605\n      ],\n      [\n        \"▁prise\",\n        -11.471290588378906\n      ],\n      [\n        \"VO\",\n        -11.471305847167969\n      ],\n      [\n        \"week\",\n        -11.471349716186523\n      ],\n      [\n        \"▁Event\",\n        -11.471427917480469\n      ],\n      [\n        \"▁AT\",\n        -11.471485137939453\n      ],\n      [\n        \"ket\",\n        -11.471492767333984\n      ],\n      [\n        \"haft\",\n        -11.471579551696777\n      ],\n      [\n        \"▁hits\",\n        -11.47159194946289\n      ],\n      [\n        \"foli\",\n        -11.471681594848633\n      ],\n      [\n        \"this\",\n        -11.471948623657227\n      ],\n      [\n        \"GP\",\n        -11.471970558166504\n      ],\n      [\n        \"▁Pin\",\n        -11.472332954406738\n      ],\n      [\n        \"▁Stein\",\n        -11.472503662109375\n      ],\n      [\n        \"thing\",\n        -11.472512245178223\n      ],\n      [\n        \"▁emphasis\",\n        -11.472556114196777\n      ],\n      [\n        \"▁Mur\",\n        -11.472631454467773\n      ],\n      [\n        \"▁Bag\",\n        -11.472647666931152\n      ],\n      [\n        \"cons\",\n        -11.47273063659668\n      ],\n      [\n        \"tons\",\n        -11.472835540771484\n      ],\n      [\n        \"lash\",\n        -11.472987174987793\n      ],\n      [\n        \"▁Grant\",\n        -11.473104476928711\n      ],\n      [\n        \"▁pris\",\n        -11.473175048828125\n      ],\n      [\n        \"▁bună\",\n        -11.47323989868164\n      ],\n      [\n        \"▁buc\",\n        -11.473699569702148\n      ],\n      [\n        \"▁passe\",\n        -11.473746299743652\n      ],\n      [\n        \"▁jewelry\",\n        -11.474213600158691\n      ],\n      [\n        \"iens\",\n        -11.474342346191406\n      ],\n      [\n        \"▁forma\",\n        -11.47453784942627\n      ],\n      [\n        \"▁Med\",\n        -11.474651336669922\n      ],\n      [\n        \"laufen\",\n        -11.474778175354004\n      ],\n      [\n        \"▁hunt\",\n        -11.474977493286133\n      ],\n      [\n        \"stayed\",\n        -11.475086212158203\n      ],\n      [\n        \"party\",\n        -11.475152015686035\n      ],\n      [\n        \"▁fra\",\n        -11.47529411315918\n      ],\n      [\n        \"▁scenes\",\n        -11.475305557250977\n      ],\n      [\n        \"▁absorb\",\n        -11.47535228729248\n      ],\n      [\n        \"▁abilities\",\n        -11.475377082824707\n      ],\n      [\n        \"lug\",\n        -11.475507736206055\n      ],\n      [\n        \"▁Sarah\",\n        -11.475693702697754\n      ],\n      [\n        \"mpf\",\n        -11.47570514678955\n      ],\n      [\n        \"▁fle\",\n        -11.4757080078125\n      ],\n      [\n        \"accès\",\n        -11.475872993469238\n      ],\n      [\n        \"▁solicit\",\n        -11.475926399230957\n      ],\n      [\n        \"pie\",\n        -11.476278305053711\n      ],\n      [\n        \"▁Zum\",\n        -11.476296424865723\n      ],\n      [\n        \"▁universe\",\n        -11.476390838623047\n      ],\n      [\n        \"▁exists\",\n        -11.476449012756348\n      ],\n      [\n        \"oane\",\n        -11.476597785949707\n      ],\n      [\n        \"IVE\",\n        -11.47668743133545\n      ],\n      [\n        \"▁2011.\",\n        -11.476906776428223\n      ],\n      [\n        \"▁specialists\",\n        -11.477072715759277\n      ],\n      [\n        \"▁mess\",\n        -11.477309226989746\n      ],\n      [\n        \"fach\",\n        -11.477402687072754\n      ],\n      [\n        \"▁Recht\",\n        -11.477404594421387\n      ],\n      [\n        \"▁hack\",\n        -11.47755241394043\n      ],\n      [\n        \"▁jacket\",\n        -11.477564811706543\n      ],\n      [\n        \"HC\",\n        -11.47769832611084\n      ],\n      [\n        \"▁substance\",\n        -11.477728843688965\n      ],\n      [\n        \"▁signing\",\n        -11.477775573730469\n      ],\n      [\n        \"▁allerdings\",\n        -11.478032112121582\n      ],\n      [\n        \"▁publish\",\n        -11.478139877319336\n      ],\n      [\n        \"▁Lab\",\n        -11.478157043457031\n      ],\n      [\n        \"▁agenda\",\n        -11.478249549865723\n      ],\n      [\n        \"lane\",\n        -11.478299140930176\n      ],\n      [\n        \"stream\",\n        -11.478620529174805\n      ],\n      [\n        \"schau\",\n        -11.47879409790039\n      ],\n      [\n        \"▁realizat\",\n        -11.478971481323242\n      ],\n      [\n        \"▁supplier\",\n        -11.479019165039062\n      ],\n      [\n        \"▁moderate\",\n        -11.47902774810791\n      ],\n      [\n        \"▁tours\",\n        -11.479212760925293\n      ],\n      [\n        \"▁narrative\",\n        -11.479220390319824\n      ],\n      [\n        \"ația\",\n        -11.479279518127441\n      ],\n      [\n        \"▁maps\",\n        -11.479423522949219\n      ],\n      [\n        \"treten\",\n        -11.479447364807129\n      ],\n      [\n        \"▁mars\",\n        -11.479706764221191\n      ],\n      [\n        \"▁moon\",\n        -11.479745864868164\n      ],\n      [\n        \"rose\",\n        -11.479751586914062\n      ],\n      [\n        \"▁exp\",\n        -11.479766845703125\n      ],\n      [\n        \"zahl\",\n        -11.480154037475586\n      ],\n      [\n        \"psych\",\n        -11.480195999145508\n      ],\n      [\n        \"▁gehört\",\n        -11.48024845123291\n      ],\n      [\n        \"▁bound\",\n        -11.4803466796875\n      ],\n      [\n        \"▁submission\",\n        -11.480451583862305\n      ],\n      [\n        \"▁clubs\",\n        -11.480722427368164\n      ],\n      [\n        \"Am\",\n        -11.480755805969238\n      ],\n      [\n        \"tenir\",\n        -11.480782508850098\n      ],\n      [\n        \"▁boast\",\n        -11.480851173400879\n      ],\n      [\n        \"▁boards\",\n        -11.4810791015625\n      ],\n      [\n        \"▁Geschäfts\",\n        -11.481216430664062\n      ],\n      [\n        \"zing\",\n        -11.48126220703125\n      ],\n      [\n        \"wort\",\n        -11.48137092590332\n      ],\n      [\n        \"lid\",\n        -11.481417655944824\n      ],\n      [\n        \"▁contractor\",\n        -11.481528282165527\n      ],\n      [\n        \"▁donner\",\n        -11.481672286987305\n      ],\n      [\n        \"▁coupon\",\n        -11.481974601745605\n      ],\n      [\n        \"adresse\",\n        -11.482004165649414\n      ],\n      [\n        \"colo\",\n        -11.48210334777832\n      ],\n      [\n        \"▁perception\",\n        -11.482124328613281\n      ],\n      [\n        \"NC\",\n        -11.48222541809082\n      ],\n      [\n        \"▁abge\",\n        -11.482245445251465\n      ],\n      [\n        \"▁cheaper\",\n        -11.482268333435059\n      ],\n      [\n        \"▁grace\",\n        -11.482312202453613\n      ],\n      [\n        \"▁resident\",\n        -11.482718467712402\n      ],\n      [\n        \"kla\",\n        -11.4828462600708\n      ],\n      [\n        \"▁bug\",\n        -11.4828462600708\n      ],\n      [\n        \"▁Available\",\n        -11.482893943786621\n      ],\n      [\n        \"▁BA\",\n        -11.483323097229004\n      ],\n      [\n        \"▁Met\",\n        -11.483601570129395\n      ],\n      [\n        \"▁climb\",\n        -11.48365592956543\n      ],\n      [\n        \"▁expanded\",\n        -11.484349250793457\n      ],\n      [\n        \"ying\",\n        -11.484426498413086\n      ],\n      [\n        \"▁matching\",\n        -11.484469413757324\n      ],\n      [\n        \"▁suffered\",\n        -11.484733581542969\n      ],\n      [\n        \"▁employed\",\n        -11.484755516052246\n      ],\n      [\n        \"pper\",\n        -11.484843254089355\n      ],\n      [\n        \"▁experiencing\",\n        -11.484884262084961\n      ],\n      [\n        \"ddy\",\n        -11.484953880310059\n      ],\n      [\n        \"▁philosophy\",\n        -11.484955787658691\n      ],\n      [\n        \"▁utilisé\",\n        -11.485008239746094\n      ],\n      [\n        \"▁Jane\",\n        -11.485079765319824\n      ],\n      [\n        \"LI\",\n        -11.485087394714355\n      ],\n      [\n        \"▁elected\",\n        -11.485185623168945\n      ],\n      [\n        \"▁MI\",\n        -11.485264778137207\n      ],\n      [\n        \"▁ISO\",\n        -11.485340118408203\n      ],\n      [\n        \"winning\",\n        -11.48537540435791\n      ],\n      [\n        \"▁vot\",\n        -11.485424041748047\n      ],\n      [\n        \"▁generic\",\n        -11.485519409179688\n      ],\n      [\n        \"▁Bol\",\n        -11.485650062561035\n      ],\n      [\n        \"▁copies\",\n        -11.48568058013916\n      ],\n      [\n        \"▁mechanical\",\n        -11.48568058013916\n      ],\n      [\n        \"günstig\",\n        -11.485682487487793\n      ],\n      [\n        \"roy\",\n        -11.485770225524902\n      ],\n      [\n        \"Astfel\",\n        -11.485808372497559\n      ],\n      [\n        \"media\",\n        -11.485868453979492\n      ],\n      [\n        \"▁shoulder\",\n        -11.4859037399292\n      ],\n      [\n        \"▁directory\",\n        -11.486000061035156\n      ],\n      [\n        \"▁banking\",\n        -11.486016273498535\n      ],\n      [\n        \"▁mistakes\",\n        -11.486040115356445\n      ],\n      [\n        \"▁Fran\",\n        -11.486425399780273\n      ],\n      [\n        \"▁Jon\",\n        -11.486544609069824\n      ],\n      [\n        \"▁spare\",\n        -11.486579895019531\n      ],\n      [\n        \"metri\",\n        -11.486668586730957\n      ],\n      [\n        \"▁mask\",\n        -11.486879348754883\n      ],\n      [\n        \"▁consistently\",\n        -11.48695182800293\n      ],\n      [\n        \"▁Columbia\",\n        -11.487278938293457\n      ],\n      [\n        \"roid\",\n        -11.48774242401123\n      ],\n      [\n        \"essen\",\n        -11.487935066223145\n      ],\n      [\n        \"▁(“\",\n        -11.48798656463623\n      ],\n      [\n        \"▁série\",\n        -11.488212585449219\n      ],\n      [\n        \"▁Phil\",\n        -11.488249778747559\n      ],\n      [\n        \"▁usor\",\n        -11.488249778747559\n      ],\n      [\n        \"▁stood\",\n        -11.488279342651367\n      ],\n      [\n        \"▁racing\",\n        -11.488335609436035\n      ],\n      [\n        \"▁Comme\",\n        -11.488555908203125\n      ],\n      [\n        \"▁exceed\",\n        -11.488565444946289\n      ],\n      [\n        \"на\",\n        -11.488618850708008\n      ],\n      [\n        \"▁activate\",\n        -11.48873233795166\n      ],\n      [\n        \"▁circle\",\n        -11.488836288452148\n      ],\n      [\n        \"▁bold\",\n        -11.488956451416016\n      ],\n      [\n        \"▁handy\",\n        -11.48909854888916\n      ],\n      [\n        \"merely\",\n        -11.489114761352539\n      ],\n      [\n        \"▁Edward\",\n        -11.489147186279297\n      ],\n      [\n        \"▁contracts\",\n        -11.489530563354492\n      ],\n      [\n        \"ê\",\n        -11.489595413208008\n      ],\n      [\n        \"▁campaigns\",\n        -11.489673614501953\n      ],\n      [\n        \"▁ought\",\n        -11.489733695983887\n      ],\n      [\n        \"▁nursing\",\n        -11.489781379699707\n      ],\n      [\n        \"▁Jr\",\n        -11.489917755126953\n      ],\n      [\n        \"▁rarely\",\n        -11.490032196044922\n      ],\n      [\n        \"▁Mir\",\n        -11.490050315856934\n      ],\n      [\n        \"▁diagnosis\",\n        -11.490379333496094\n      ],\n      [\n        \"▁Theatre\",\n        -11.490394592285156\n      ],\n      [\n        \"▁producer\",\n        -11.490407943725586\n      ],\n      [\n        \"Currently\",\n        -11.490492820739746\n      ],\n      [\n        \"▁fitting\",\n        -11.490580558776855\n      ],\n      [\n        \"▁ajunge\",\n        -11.490618705749512\n      ],\n      [\n        \"minte\",\n        -11.490754127502441\n      ],\n      [\n        \"▁termen\",\n        -11.490838050842285\n      ],\n      [\n        \"▁Linux\",\n        -11.491013526916504\n      ],\n      [\n        \"▁1-\",\n        -11.491068840026855\n      ],\n      [\n        \"▁hätte\",\n        -11.491202354431152\n      ],\n      [\n        \"▁Resort\",\n        -11.49129867553711\n      ],\n      [\n        \"image\",\n        -11.491527557373047\n      ],\n      [\n        \"▁Rod\",\n        -11.49189281463623\n      ],\n      [\n        \"▁Fly\",\n        -11.491924285888672\n      ],\n      [\n        \"try\",\n        -11.492317199707031\n      ],\n      [\n        \"▁expense\",\n        -11.49245834350586\n      ],\n      [\n        \"▁Interior\",\n        -11.492799758911133\n      ],\n      [\n        \"▁fence\",\n        -11.492920875549316\n      ],\n      [\n        \"▁Kontakt\",\n        -11.493063926696777\n      ],\n      [\n        \"▁ALL\",\n        -11.493142127990723\n      ],\n      [\n        \"VA\",\n        -11.493229866027832\n      ],\n      [\n        \"▁Exchange\",\n        -11.493316650390625\n      ],\n      [\n        \"ranked\",\n        -11.493558883666992\n      ],\n      [\n        \"▁Performance\",\n        -11.493621826171875\n      ],\n      [\n        \"prim\",\n        -11.493635177612305\n      ],\n      [\n        \"▁basket\",\n        -11.493694305419922\n      ],\n      [\n        \"▁Vice\",\n        -11.493703842163086\n      ],\n      [\n        \"phan\",\n        -11.4937105178833\n      ],\n      [\n        \"▁broke\",\n        -11.494003295898438\n      ],\n      [\n        \"voir\",\n        -11.49431324005127\n      ],\n      [\n        \"arg\",\n        -11.494512557983398\n      ],\n      [\n        \"ART\",\n        -11.494529724121094\n      ],\n      [\n        \"▁floors\",\n        -11.494856834411621\n      ],\n      [\n        \"pression\",\n        -11.495025634765625\n      ],\n      [\n        \"▁possession\",\n        -11.49507999420166\n      ],\n      [\n        \"▁domaine\",\n        -11.49510669708252\n      ],\n      [\n        \"▁valeur\",\n        -11.495132446289062\n      ],\n      [\n        \"▁suddenly\",\n        -11.495282173156738\n      ],\n      [\n        \"▁mild\",\n        -11.495304107666016\n      ],\n      [\n        \"▁aflat\",\n        -11.495431900024414\n      ],\n      [\n        \"▁Tea\",\n        -11.495731353759766\n      ],\n      [\n        \"tritt\",\n        -11.495767593383789\n      ],\n      [\n        \"▁Mittel\",\n        -11.495773315429688\n      ],\n      [\n        \"▁regulatory\",\n        -11.49580192565918\n      ],\n      [\n        \"▁spectacular\",\n        -11.495905876159668\n      ],\n      [\n        \"fahrt\",\n        -11.495949745178223\n      ],\n      [\n        \"GS\",\n        -11.496026039123535\n      ],\n      [\n        \"MM\",\n        -11.4961576461792\n      ],\n      [\n        \"▁environments\",\n        -11.496203422546387\n      ],\n      [\n        \"▁Raum\",\n        -11.496381759643555\n      ],\n      [\n        \"▁lay\",\n        -11.496664047241211\n      ],\n      [\n        \"▁cré\",\n        -11.496713638305664\n      ],\n      [\n        \"▁Selbst\",\n        -11.496726989746094\n      ],\n      [\n        \"▁opposition\",\n        -11.496821403503418\n      ],\n      [\n        \"two\",\n        -11.49729061126709\n      ],\n      [\n        \"▁Clark\",\n        -11.497822761535645\n      ],\n      [\n        \"▁Netz\",\n        -11.497845649719238\n      ],\n      [\n        \"bald\",\n        -11.497983932495117\n      ],\n      [\n        \"▁Innovation\",\n        -11.4982271194458\n      ],\n      [\n        \"▁overcome\",\n        -11.49825382232666\n      ],\n      [\n        \"quot\",\n        -11.499013900756836\n      ],\n      [\n        \"▁Sin\",\n        -11.499106407165527\n      ],\n      [\n        \"▁Sto\",\n        -11.499320983886719\n      ],\n      [\n        \"▁grain\",\n        -11.499560356140137\n      ],\n      [\n        \"▁collections\",\n        -11.499724388122559\n      ],\n      [\n        \"▁applies\",\n        -11.49986743927002\n      ],\n      [\n        \"mach\",\n        -11.499934196472168\n      ],\n      [\n        \"▁wheels\",\n        -11.499958992004395\n      ],\n      [\n        \"▁universities\",\n        -11.500049591064453\n      ],\n      [\n        \"▁Ray\",\n        -11.500182151794434\n      ],\n      [\n        \"lina\",\n        -11.500238418579102\n      ],\n      [\n        \"▁arrangements\",\n        -11.500393867492676\n      ],\n      [\n        \"▁western\",\n        -11.500728607177734\n      ],\n      [\n        \"rous\",\n        -11.500768661499023\n      ],\n      [\n        \"aise\",\n        -11.500784873962402\n      ],\n      [\n        \"▁highlights\",\n        -11.50112533569336\n      ],\n      [\n        \"▁intend\",\n        -11.501265525817871\n      ],\n      [\n        \"aimed\",\n        -11.501358032226562\n      ],\n      [\n        \"▁Scotland\",\n        -11.501360893249512\n      ],\n      [\n        \"▁acestei\",\n        -11.501466751098633\n      ],\n      [\n        \"graf\",\n        -11.50150203704834\n      ],\n      [\n        \"duction\",\n        -11.501517295837402\n      ],\n      [\n        \"path\",\n        -11.50156021118164\n      ],\n      [\n        \"▁evil\",\n        -11.501633644104004\n      ],\n      [\n        \"▁scris\",\n        -11.501791000366211\n      ],\n      [\n        \"▁disposition\",\n        -11.501927375793457\n      ],\n      [\n        \"▁designing\",\n        -11.5020751953125\n      ],\n      [\n        \"zwar\",\n        -11.502172470092773\n      ],\n      [\n        \"▁Retrieve\",\n        -11.50217342376709\n      ],\n      [\n        \"▁aggressive\",\n        -11.502374649047852\n      ],\n      [\n        \"▁Glen\",\n        -11.502411842346191\n      ],\n      [\n        \"▁daher\",\n        -11.502473831176758\n      ],\n      [\n        \"▁Quick\",\n        -11.502494812011719\n      ],\n      [\n        \"▁recover\",\n        -11.502632141113281\n      ],\n      [\n        \"▁prominent\",\n        -11.50288200378418\n      ],\n      [\n        \"▁visits\",\n        -11.503198623657227\n      ],\n      [\n        \"▁Mis\",\n        -11.503376960754395\n      ],\n      [\n        \"▁edited\",\n        -11.503456115722656\n      ],\n      [\n        \"▁distributed\",\n        -11.503564834594727\n      ],\n      [\n        \"▁dés\",\n        -11.503580093383789\n      ],\n      [\n        \"▁alter\",\n        -11.5035982131958\n      ],\n      [\n        \"▁cooked\",\n        -11.503697395324707\n      ],\n      [\n        \"embl\",\n        -11.503706932067871\n      ],\n      [\n        \"Univers\",\n        -11.503715515136719\n      ],\n      [\n        \"▁Minuten\",\n        -11.504156112670898\n      ],\n      [\n        \"▁compris\",\n        -11.504179954528809\n      ],\n      [\n        \"rais\",\n        -11.504182815551758\n      ],\n      [\n        \"essentially\",\n        -11.504199028015137\n      ],\n      [\n        \"▁rel\",\n        -11.504340171813965\n      ],\n      [\n        \"▁appel\",\n        -11.504570007324219\n      ],\n      [\n        \"▁trace\",\n        -11.504788398742676\n      ],\n      [\n        \"relating\",\n        -11.504830360412598\n      ],\n      [\n        \"dès\",\n        -11.504937171936035\n      ],\n      [\n        \"aste\",\n        -11.504961013793945\n      ],\n      [\n        \"▁raison\",\n        -11.504963874816895\n      ],\n      [\n        \"▁frequent\",\n        -11.505281448364258\n      ],\n      [\n        \"▁beds\",\n        -11.505316734313965\n      ],\n      [\n        \"▁Miami\",\n        -11.505511283874512\n      ],\n      [\n        \"▁vibrant\",\n        -11.50564193725586\n      ],\n      [\n        \"▁Kam\",\n        -11.505721092224121\n      ],\n      [\n        \"▁klar\",\n        -11.505861282348633\n      ],\n      [\n        \"▁Tan\",\n        -11.50598430633545\n      ],\n      [\n        \"▁vidéo\",\n        -11.506032943725586\n      ],\n      [\n        \"▁Kur\",\n        -11.506115913391113\n      ],\n      [\n        \"▁themes\",\n        -11.506134033203125\n      ],\n      [\n        \"▁struggling\",\n        -11.506440162658691\n      ],\n      [\n        \"▁Magazine\",\n        -11.506444931030273\n      ],\n      [\n        \"maker\",\n        -11.506476402282715\n      ],\n      [\n        \"veni\",\n        -11.506564140319824\n      ],\n      [\n        \"▁Groß\",\n        -11.506732940673828\n      ],\n      [\n        \"▁streaming\",\n        -11.506772994995117\n      ],\n      [\n        \"▁analyze\",\n        -11.506876945495605\n      ],\n      [\n        \"▁titles\",\n        -11.506982803344727\n      ],\n      [\n        \"pier\",\n        -11.507316589355469\n      ],\n      [\n        \"▁participant\",\n        -11.507347106933594\n      ],\n      [\n        \"aims\",\n        -11.507607460021973\n      ],\n      [\n        \"▁convention\",\n        -11.507638931274414\n      ],\n      [\n        \"▁flood\",\n        -11.507780075073242\n      ],\n      [\n        \"▁nights\",\n        -11.507842063903809\n      ],\n      [\n        \"▁titre\",\n        -11.50792407989502\n      ],\n      [\n        \"▁voul\",\n        -11.508010864257812\n      ],\n      [\n        \"weit\",\n        -11.50816822052002\n      ],\n      [\n        \"where\",\n        -11.508213996887207\n      ],\n      [\n        \"▁Seiten\",\n        -11.508286476135254\n      ],\n      [\n        \"▁relaxing\",\n        -11.508628845214844\n      ],\n      [\n        \"▁piano\",\n        -11.50883674621582\n      ],\n      [\n        \"▁Pick\",\n        -11.508842468261719\n      ],\n      [\n        \"▁Sony\",\n        -11.508955001831055\n      ],\n      [\n        \"▁enhanced\",\n        -11.509017944335938\n      ],\n      [\n        \"▁visa\",\n        -11.50915241241455\n      ],\n      [\n        \"CH\",\n        -11.50930118560791\n      ],\n      [\n        \"▁instantly\",\n        -11.50930404663086\n      ],\n      [\n        \"▁Fan\",\n        -11.509721755981445\n      ],\n      [\n        \"▁diabetes\",\n        -11.509988784790039\n      ],\n      [\n        \"▁popul\",\n        -11.50999641418457\n      ],\n      [\n        \"Ang\",\n        -11.510232925415039\n      ],\n      [\n        \"▁Ask\",\n        -11.510295867919922\n      ],\n      [\n        \"cate\",\n        -11.510650634765625\n      ],\n      [\n        \"▁simplu\",\n        -11.510666847229004\n      ],\n      [\n        \"nahme\",\n        -11.510685920715332\n      ],\n      [\n        \"▁dentist\",\n        -11.510842323303223\n      ],\n      [\n        \"ubi\",\n        -11.510920524597168\n      ],\n      [\n        \"article\",\n        -11.511030197143555\n      ],\n      [\n        \"▁graph\",\n        -11.511094093322754\n      ],\n      [\n        \"▁rival\",\n        -11.51121711730957\n      ],\n      [\n        \"jahr\",\n        -11.5113525390625\n      ],\n      [\n        \"▁bloc\",\n        -11.511370658874512\n      ],\n      [\n        \"fern\",\n        -11.511427879333496\n      ],\n      [\n        \"▁dispar\",\n        -11.511516571044922\n      ],\n      [\n        \"▁servers\",\n        -11.511582374572754\n      ],\n      [\n        \"▁patru\",\n        -11.511610984802246\n      ],\n      [\n        \"▁Within\",\n        -11.511634826660156\n      ],\n      [\n        \"▁situated\",\n        -11.511896133422852\n      ],\n      [\n        \"▁HR\",\n        -11.511981964111328\n      ],\n      [\n        \"▁leaf\",\n        -11.511981964111328\n      ],\n      [\n        \"▁curs\",\n        -11.512049674987793\n      ],\n      [\n        \"antes\",\n        -11.512325286865234\n      ],\n      [\n        \"lux\",\n        -11.512406349182129\n      ],\n      [\n        \"▁1993\",\n        -11.512463569641113\n      ],\n      [\n        \"stance\",\n        -11.512650489807129\n      ],\n      [\n        \"▁northern\",\n        -11.512683868408203\n      ],\n      [\n        \"lves\",\n        -11.512718200683594\n      ],\n      [\n        \"▁contractors\",\n        -11.512882232666016\n      ],\n      [\n        \"▁dimensions\",\n        -11.512920379638672\n      ],\n      [\n        \"▁rolling\",\n        -11.513068199157715\n      ],\n      [\n        \"▁automobile\",\n        -11.513211250305176\n      ],\n      [\n        \"▁cru\",\n        -11.51342487335205\n      ],\n      [\n        \"▁displays\",\n        -11.513570785522461\n      ],\n      [\n        \"web\",\n        -11.513812065124512\n      ],\n      [\n        \"had\",\n        -11.513850212097168\n      ],\n      [\n        \"▁Never\",\n        -11.513893127441406\n      ],\n      [\n        \"▁2-\",\n        -11.513932228088379\n      ],\n      [\n        \"vine\",\n        -11.51393985748291\n      ],\n      [\n        \"▁Wahl\",\n        -11.513975143432617\n      ],\n      [\n        \"▁Markt\",\n        -11.514166831970215\n      ],\n      [\n        \"▁Double\",\n        -11.514227867126465\n      ],\n      [\n        \"▁acknowledge\",\n        -11.514229774475098\n      ],\n      [\n        \"stal\",\n        -11.514288902282715\n      ],\n      [\n        \"▁equity\",\n        -11.514620780944824\n      ],\n      [\n        \"▁ministry\",\n        -11.514823913574219\n      ],\n      [\n        \"▁Lor\",\n        -11.514875411987305\n      ],\n      [\n        \"▁sud\",\n        -11.514968872070312\n      ],\n      [\n        \"idée\",\n        -11.515044212341309\n      ],\n      [\n        \"▁measured\",\n        -11.515448570251465\n      ],\n      [\n        \"▁editing\",\n        -11.515609741210938\n      ],\n      [\n        \"▁singur\",\n        -11.515620231628418\n      ],\n      [\n        \"▁coal\",\n        -11.515623092651367\n      ],\n      [\n        \"▁dramatic\",\n        -11.516212463378906\n      ],\n      [\n        \"AG\",\n        -11.516251564025879\n      ],\n      [\n        \"asca\",\n        -11.516280174255371\n      ],\n      [\n        \"▁crash\",\n        -11.516321182250977\n      ],\n      [\n        \"ischer\",\n        -11.516597747802734\n      ],\n      [\n        \"▁Pla\",\n        -11.516871452331543\n      ],\n      [\n        \"▁psycho\",\n        -11.517054557800293\n      ],\n      [\n        \"piece\",\n        -11.517118453979492\n      ],\n      [\n        \"▁finger\",\n        -11.517121315002441\n      ],\n      [\n        \"▁Hollywood\",\n        -11.517123222351074\n      ],\n      [\n        \"▁Cr\",\n        -11.517345428466797\n      ],\n      [\n        \"▁locally\",\n        -11.517622947692871\n      ],\n      [\n        \"▁mouse\",\n        -11.517792701721191\n      ],\n      [\n        \"▁Base\",\n        -11.517867088317871\n      ],\n      [\n        \"uite\",\n        -11.518095016479492\n      ],\n      [\n        \"▁detect\",\n        -11.518099784851074\n      ],\n      [\n        \"cea\",\n        -11.518150329589844\n      ],\n      [\n        \"▁bull\",\n        -11.518194198608398\n      ],\n      [\n        \"▁curve\",\n        -11.518208503723145\n      ],\n      [\n        \"été\",\n        -11.518218994140625\n      ],\n      [\n        \"ddle\",\n        -11.51839542388916\n      ],\n      [\n        \"▁span\",\n        -11.518523216247559\n      ],\n      [\n        \"WS\",\n        -11.518878936767578\n      ],\n      [\n        \"CL\",\n        -11.519017219543457\n      ],\n      [\n        \"▁officially\",\n        -11.519042015075684\n      ],\n      [\n        \"▁corect\",\n        -11.519168853759766\n      ],\n      [\n        \"▁Artikel\",\n        -11.5193510055542\n      ],\n      [\n        \"▁customized\",\n        -11.520099639892578\n      ],\n      [\n        \"▁intellectual\",\n        -11.52018928527832\n      ],\n      [\n        \"▁heures\",\n        -11.520334243774414\n      ],\n      [\n        \"schule\",\n        -11.520444869995117\n      ],\n      [\n        \"▁investing\",\n        -11.520585060119629\n      ],\n      [\n        \"▁parallel\",\n        -11.521227836608887\n      ],\n      [\n        \"▁loi\",\n        -11.521263122558594\n      ],\n      [\n        \"ările\",\n        -11.521566390991211\n      ],\n      [\n        \"р\",\n        -11.521679878234863\n      ],\n      [\n        \"▁bench\",\n        -11.521724700927734\n      ],\n      [\n        \"▁principle\",\n        -11.521756172180176\n      ],\n      [\n        \"▁Galaxy\",\n        -11.521829605102539\n      ],\n      [\n        \"ța\",\n        -11.522237777709961\n      ],\n      [\n        \"▁(4\",\n        -11.522418975830078\n      ],\n      [\n        \"▁bedrooms\",\n        -11.522578239440918\n      ],\n      [\n        \"née\",\n        -11.52273941040039\n      ],\n      [\n        \"▁surely\",\n        -11.52275276184082\n      ],\n      [\n        \"very\",\n        -11.522927284240723\n      ],\n      [\n        \"stelle\",\n        -11.523200988769531\n      ],\n      [\n        \"activ\",\n        -11.523216247558594\n      ],\n      [\n        \"cite\",\n        -11.523551940917969\n      ],\n      [\n        \"▁Original\",\n        -11.523553848266602\n      ],\n      [\n        \"▁palm\",\n        -11.523665428161621\n      ],\n      [\n        \"▁losses\",\n        -11.523934364318848\n      ],\n      [\n        \"▁newspaper\",\n        -11.524153709411621\n      ],\n      [\n        \"ciu\",\n        -11.52436351776123\n      ],\n      [\n        \"▁Hold\",\n        -11.524392127990723\n      ],\n      [\n        \"BO\",\n        -11.524422645568848\n      ],\n      [\n        \"▁CON\",\n        -11.524598121643066\n      ],\n      [\n        \"▁modified\",\n        -11.524624824523926\n      ],\n      [\n        \"▁stake\",\n        -11.524735450744629\n      ],\n      [\n        \"▁Ton\",\n        -11.524798393249512\n      ],\n      [\n        \"▁luna\",\n        -11.524968147277832\n      ],\n      [\n        \"▁Mind\",\n        -11.525094985961914\n      ],\n      [\n        \"lap\",\n        -11.525150299072266\n      ],\n      [\n        \"▁opinions\",\n        -11.525247573852539\n      ],\n      [\n        \"▁Jordan\",\n        -11.525351524353027\n      ],\n      [\n        \"div\",\n        -11.52537727355957\n      ],\n      [\n        \"indi\",\n        -11.525418281555176\n      ],\n      [\n        \"▁Story\",\n        -11.525476455688477\n      ],\n      [\n        \"▁affiliate\",\n        -11.52585506439209\n      ],\n      [\n        \"▁matière\",\n        -11.525918960571289\n      ],\n      [\n        \"▁fifth\",\n        -11.526399612426758\n      ],\n      [\n        \"▁sheets\",\n        -11.52645492553711\n      ],\n      [\n        \"▁puțin\",\n        -11.526909828186035\n      ],\n      [\n        \"ush\",\n        -11.526947021484375\n      ],\n      [\n        \"geführt\",\n        -11.526993751525879\n      ],\n      [\n        \"▁Falls\",\n        -11.527168273925781\n      ],\n      [\n        \"legi\",\n        -11.527295112609863\n      ],\n      [\n        \"▁auction\",\n        -11.527326583862305\n      ],\n      [\n        \"▁cooperation\",\n        -11.52735424041748\n      ],\n      [\n        \"▁Fee\",\n        -11.527474403381348\n      ],\n      [\n        \"▁Daily\",\n        -11.52774715423584\n      ],\n      [\n        \"pies\",\n        -11.527853965759277\n      ],\n      [\n        \"▁basketball\",\n        -11.527976036071777\n      ],\n      [\n        \"removing\",\n        -11.528056144714355\n      ],\n      [\n        \"Besides\",\n        -11.528294563293457\n      ],\n      [\n        \"▁Body\",\n        -11.528355598449707\n      ],\n      [\n        \"▁AD\",\n        -11.528369903564453\n      ],\n      [\n        \"RU\",\n        -11.528435707092285\n      ],\n      [\n        \"ţia\",\n        -11.52894401550293\n      ],\n      [\n        \"▁Extra\",\n        -11.528986930847168\n      ],\n      [\n        \"▁Practice\",\n        -11.52900218963623\n      ],\n      [\n        \"▁Jeff\",\n        -11.529017448425293\n      ],\n      [\n        \"▁început\",\n        -11.529253005981445\n      ],\n      [\n        \"ching\",\n        -11.529269218444824\n      ],\n      [\n        \"▁Gift\",\n        -11.529281616210938\n      ],\n      [\n        \"kk\",\n        -11.529295921325684\n      ],\n      [\n        \"\\\")\",\n        -11.529349327087402\n      ],\n      [\n        \"▁Austin\",\n        -11.529651641845703\n      ],\n      [\n        \"thro\",\n        -11.529766082763672\n      ],\n      [\n        \"▁camping\",\n        -11.529810905456543\n      ],\n      [\n        \"▁theatre\",\n        -11.529850959777832\n      ],\n      [\n        \"école\",\n        -11.529916763305664\n      ],\n      [\n        \"vient\",\n        -11.530159950256348\n      ],\n      [\n        \"▁faces\",\n        -11.530226707458496\n      ],\n      [\n        \"▁constructed\",\n        -11.530437469482422\n      ],\n      [\n        \"▁overnight\",\n        -11.530472755432129\n      ],\n      [\n        \"▁locale\",\n        -11.530574798583984\n      ],\n      [\n        \"▁roots\",\n        -11.530611038208008\n      ],\n      [\n        \"▁bu\",\n        -11.530662536621094\n      ],\n      [\n        \"4,\",\n        -11.530683517456055\n      ],\n      [\n        \"▁Enterprise\",\n        -11.530865669250488\n      ],\n      [\n        \"screen\",\n        -11.530935287475586\n      ],\n      [\n        \"▁Chef\",\n        -11.53096866607666\n      ],\n      [\n        \"▁Along\",\n        -11.531298637390137\n      ],\n      [\n        \"▁MD\",\n        -11.531431198120117\n      ],\n      [\n        \"▁Supreme\",\n        -11.531597137451172\n      ],\n      [\n        \"En\",\n        -11.531655311584473\n      ],\n      [\n        \"▁verwendet\",\n        -11.532015800476074\n      ],\n      [\n        \"▁processed\",\n        -11.532425880432129\n      ],\n      [\n        \"▁vendors\",\n        -11.532549858093262\n      ],\n      [\n        \"▁FA\",\n        -11.532651901245117\n      ],\n      [\n        \"▁44\",\n        -11.532716751098633\n      ],\n      [\n        \"▁beautifully\",\n        -11.532933235168457\n      ],\n      [\n        \"▁eficient\",\n        -11.533092498779297\n      ],\n      [\n        \"▁Wil\",\n        -11.533117294311523\n      ],\n      [\n        \"▁Member\",\n        -11.533121109008789\n      ],\n      [\n        \"▁damages\",\n        -11.5332670211792\n      ],\n      [\n        \"▁mutual\",\n        -11.533288955688477\n      ],\n      [\n        \"SN\",\n        -11.533506393432617\n      ],\n      [\n        \"▁Dave\",\n        -11.533665657043457\n      ],\n      [\n        \"??\",\n        -11.533998489379883\n      ],\n      [\n        \"stat\",\n        -11.534090995788574\n      ],\n      [\n        \"▁tourist\",\n        -11.534374237060547\n      ],\n      [\n        \"fie\",\n        -11.534425735473633\n      ],\n      [\n        \"şte\",\n        -11.534754753112793\n      ],\n      [\n        \"▁donne\",\n        -11.534764289855957\n      ],\n      [\n        \"▁shadow\",\n        -11.53493881225586\n      ],\n      [\n        \"▁dough\",\n        -11.534993171691895\n      ],\n      [\n        \"▁Gro\",\n        -11.535002708435059\n      ],\n      [\n        \"▁Mah\",\n        -11.535066604614258\n      ],\n      [\n        \"RF\",\n        -11.535126686096191\n      ],\n      [\n        \"▁mechanism\",\n        -11.535163879394531\n      ],\n      [\n        \"▁2011,\",\n        -11.535179138183594\n      ],\n      [\n        \"▁Alter\",\n        -11.53530502319336\n      ],\n      [\n        \"▁opposed\",\n        -11.53538990020752\n      ],\n      [\n        \"▁Fri\",\n        -11.535501480102539\n      ],\n      [\n        \"▁remarkable\",\n        -11.535572052001953\n      ],\n      [\n        \"oral\",\n        -11.535635948181152\n      ],\n      [\n        \"▁verschiedene\",\n        -11.535653114318848\n      ],\n      [\n        \"▁difficulty\",\n        -11.535691261291504\n      ],\n      [\n        \"▁Application\",\n        -11.535840034484863\n      ],\n      [\n        \"▁Hay\",\n        -11.535888671875\n      ],\n      [\n        \"▁continua\",\n        -11.535935401916504\n      ],\n      [\n        \"EP\",\n        -11.53609848022461\n      ],\n      [\n        \"▁Pr\",\n        -11.53617000579834\n      ],\n      [\n        \"▁Lady\",\n        -11.53631591796875\n      ],\n      [\n        \"▁interval\",\n        -11.536457061767578\n      ],\n      [\n        \"▁Mil\",\n        -11.536504745483398\n      ],\n      [\n        \"▁2010.\",\n        -11.537042617797852\n      ],\n      [\n        \"VE\",\n        -11.537074089050293\n      ],\n      [\n        \"integr\",\n        -11.537360191345215\n      ],\n      [\n        \"▁création\",\n        -11.537415504455566\n      ],\n      [\n        \"weed\",\n        -11.537456512451172\n      ],\n      [\n        \"EG\",\n        -11.53760051727295\n      ],\n      [\n        \"▁6,\",\n        -11.537784576416016\n      ],\n      [\n        \"▁god\",\n        -11.537866592407227\n      ],\n      [\n        \"▁accomplish\",\n        -11.537947654724121\n      ],\n      [\n        \"▁thoroughly\",\n        -11.538019180297852\n      ],\n      [\n        \"2019\",\n        -11.538228988647461\n      ],\n      [\n        \"izer\",\n        -11.538246154785156\n      ],\n      [\n        \"▁Wal\",\n        -11.538300514221191\n      ],\n      [\n        \"ifying\",\n        -11.538701057434082\n      ],\n      [\n        \"▁Wohn\",\n        -11.539227485656738\n      ],\n      [\n        \"▁Holz\",\n        -11.539474487304688\n      ],\n      [\n        \"▁Advanced\",\n        -11.539528846740723\n      ],\n      [\n        \"▁honey\",\n        -11.539626121520996\n      ],\n      [\n        \"proof\",\n        -11.539634704589844\n      ],\n      [\n        \"▁saison\",\n        -11.540029525756836\n      ],\n      [\n        \"ându\",\n        -11.540035247802734\n      ],\n      [\n        \"▁Kevin\",\n        -11.540116310119629\n      ],\n      [\n        \"▁shelter\",\n        -11.540199279785156\n      ],\n      [\n        \"▁discut\",\n        -11.540257453918457\n      ],\n      [\n        \"▁hike\",\n        -11.540257453918457\n      ],\n      [\n        \"ités\",\n        -11.540461540222168\n      ],\n      [\n        \"▁boutique\",\n        -11.540672302246094\n      ],\n      [\n        \"▁Email\",\n        -11.54067611694336\n      ],\n      [\n        \"▁cosmetic\",\n        -11.540830612182617\n      ],\n      [\n        \"dian\",\n        -11.540916442871094\n      ],\n      [\n        \"▁hohe\",\n        -11.540940284729004\n      ],\n      [\n        \"▁absence\",\n        -11.541071891784668\n      ],\n      [\n        \"axi\",\n        -11.541136741638184\n      ],\n      [\n        \"nah\",\n        -11.541178703308105\n      ],\n      [\n        \"▁Frauen\",\n        -11.541236877441406\n      ],\n      [\n        \"▁actively\",\n        -11.541278839111328\n      ],\n      [\n        \"bind\",\n        -11.541468620300293\n      ],\n      [\n        \"▁everybody\",\n        -11.541740417480469\n      ],\n      [\n        \"▁controller\",\n        -11.541802406311035\n      ],\n      [\n        \"▁1.5\",\n        -11.5418062210083\n      ],\n      [\n        \"erau\",\n        -11.541842460632324\n      ],\n      [\n        \"gehen\",\n        -11.541988372802734\n      ],\n      [\n        \"▁scenario\",\n        -11.542038917541504\n      ],\n      [\n        \"▁odd\",\n        -11.542083740234375\n      ],\n      [\n        \"▁Ultra\",\n        -11.542089462280273\n      ],\n      [\n        \"▁finishing\",\n        -11.542366981506348\n      ],\n      [\n        \"▁cuts\",\n        -11.542383193969727\n      ],\n      [\n        \"▁financing\",\n        -11.542515754699707\n      ],\n      [\n        \"▁Chance\",\n        -11.542579650878906\n      ],\n      [\n        \"surrounded\",\n        -11.542818069458008\n      ],\n      [\n        \"▁joc\",\n        -11.542903900146484\n      ],\n      [\n        \"▁shelf\",\n        -11.543004035949707\n      ],\n      [\n        \"tief\",\n        -11.54308032989502\n      ],\n      [\n        \"▁Sir\",\n        -11.543146133422852\n      ],\n      [\n        \"▁Agent\",\n        -11.543197631835938\n      ],\n      [\n        \"▁scratch\",\n        -11.543560981750488\n      ],\n      [\n        \"2,000\",\n        -11.54360294342041\n      ],\n      [\n        \"nutri\",\n        -11.54365348815918\n      ],\n      [\n        \"nier\",\n        -11.544063568115234\n      ],\n      [\n        \"▁Dur\",\n        -11.544175148010254\n      ],\n      [\n        \"▁grid\",\n        -11.544268608093262\n      ],\n      [\n        \"road\",\n        -11.544413566589355\n      ],\n      [\n        \"▁pets\",\n        -11.544429779052734\n      ],\n      [\n        \"stud\",\n        -11.54448127746582\n      ],\n      [\n        \"OM\",\n        -11.544569969177246\n      ],\n      [\n        \"Die\",\n        -11.544877052307129\n      ],\n      [\n        \"▁800\",\n        -11.54496955871582\n      ],\n      [\n        \"▁arrangement\",\n        -11.545088768005371\n      ],\n      [\n        \"▁Sri\",\n        -11.545185089111328\n      ],\n      [\n        \"▁Patrick\",\n        -11.545187950134277\n      ],\n      [\n        \"ava\",\n        -11.545212745666504\n      ],\n      [\n        \"▁pension\",\n        -11.54523754119873\n      ],\n      [\n        \"dung\",\n        -11.545353889465332\n      ],\n      [\n        \"▁Chapter\",\n        -11.545475006103516\n      ],\n      [\n        \"▁Property\",\n        -11.545475006103516\n      ],\n      [\n        \"▁structural\",\n        -11.545571327209473\n      ],\n      [\n        \"▁overview\",\n        -11.545731544494629\n      ],\n      [\n        \"2015\",\n        -11.545917510986328\n      ],\n      [\n        \"▁lawn\",\n        -11.545924186706543\n      ],\n      [\n        \"▁Vin\",\n        -11.546219825744629\n      ],\n      [\n        \"lik\",\n        -11.546402931213379\n      ],\n      [\n        \"dus\",\n        -11.546418190002441\n      ],\n      [\n        \"Several\",\n        -11.54654598236084\n      ],\n      [\n        \"▁Bou\",\n        -11.546670913696289\n      ],\n      [\n        \"▁copper\",\n        -11.546703338623047\n      ],\n      [\n        \"▁duration\",\n        -11.546867370605469\n      ],\n      [\n        \"inate\",\n        -11.546982765197754\n      ],\n      [\n        \"▁podcast\",\n        -11.547204971313477\n      ],\n      [\n        \"▁Self\",\n        -11.547208786010742\n      ],\n      [\n        \"▁Construction\",\n        -11.547491073608398\n      ],\n      [\n        \"achat\",\n        -11.54768180847168\n      ],\n      [\n        \"???\",\n        -11.547683715820312\n      ],\n      [\n        \"▁Electric\",\n        -11.547974586486816\n      ],\n      [\n        \"▁Mrs\",\n        -11.54799747467041\n      ],\n      [\n        \"▁CT\",\n        -11.548019409179688\n      ],\n      [\n        \"▁proceed\",\n        -11.548324584960938\n      ],\n      [\n        \"▁Course\",\n        -11.548333168029785\n      ],\n      [\n        \"▁Frei\",\n        -11.548699378967285\n      ],\n      [\n        \"▁heavily\",\n        -11.548868179321289\n      ],\n      [\n        \"rique\",\n        -11.548872947692871\n      ],\n      [\n        \"version\",\n        -11.549016952514648\n      ],\n      [\n        \"▁representatives\",\n        -11.549118041992188\n      ],\n      [\n        \"▁tourism\",\n        -11.549182891845703\n      ],\n      [\n        \"▁shirt\",\n        -11.5494966506958\n      ],\n      [\n        \"▁rough\",\n        -11.549507141113281\n      ],\n      [\n        \"▁weniger\",\n        -11.549735069274902\n      ],\n      [\n        \"▁keyboard\",\n        -11.550058364868164\n      ],\n      [\n        \"▁heritage\",\n        -11.550149917602539\n      ],\n      [\n        \"kat\",\n        -11.550535202026367\n      ],\n      [\n        \"assez\",\n        -11.550567626953125\n      ],\n      [\n        \"▁cabinets\",\n        -11.550591468811035\n      ],\n      [\n        \"▁Komm\",\n        -11.550762176513672\n      ],\n      [\n        \"▁impressed\",\n        -11.55078411102295\n      ],\n      [\n        \"▁Oregon\",\n        -11.550788879394531\n      ],\n      [\n        \"▁Davis\",\n        -11.55081558227539\n      ],\n      [\n        \"specialized\",\n        -11.55097770690918\n      ],\n      [\n        \"▁gross\",\n        -11.550999641418457\n      ],\n      [\n        \"Located\",\n        -11.551044464111328\n      ],\n      [\n        \"ttle\",\n        -11.551044464111328\n      ],\n      [\n        \"▁2010,\",\n        -11.551224708557129\n      ],\n      [\n        \"chan\",\n        -11.551253318786621\n      ],\n      [\n        \"mine\",\n        -11.551305770874023\n      ],\n      [\n        \"▁aduce\",\n        -11.551637649536133\n      ],\n      [\n        \"▁subsequent\",\n        -11.551729202270508\n      ],\n      [\n        \"▁demo\",\n        -11.551851272583008\n      ],\n      [\n        \"aba\",\n        -11.552209854125977\n      ],\n      [\n        \"▁shock\",\n        -11.552389144897461\n      ],\n      [\n        \"▁theater\",\n        -11.552854537963867\n      ],\n      [\n        \"▁engineers\",\n        -11.55294418334961\n      ],\n      [\n        \"▁feu\",\n        -11.553037643432617\n      ],\n      [\n        \"▁Rot\",\n        -11.553058624267578\n      ],\n      [\n        \"▁addressed\",\n        -11.553155899047852\n      ],\n      [\n        \"▁Letter\",\n        -11.553431510925293\n      ],\n      [\n        \"gré\",\n        -11.553448677062988\n      ],\n      [\n        \"▁quantity\",\n        -11.553449630737305\n      ],\n      [\n        \"▁Seit\",\n        -11.553640365600586\n      ],\n      [\n        \"▁bacteria\",\n        -11.553681373596191\n      ],\n      [\n        \"kg\",\n        -11.55408000946045\n      ],\n      [\n        \"▁conservation\",\n        -11.554191589355469\n      ],\n      [\n        \"▁entreprises\",\n        -11.55420207977295\n      ],\n      [\n        \"▁pleasant\",\n        -11.554207801818848\n      ],\n      [\n        \"armed\",\n        -11.554228782653809\n      ],\n      [\n        \"dorf\",\n        -11.554286003112793\n      ],\n      [\n        \"fact\",\n        -11.554320335388184\n      ],\n      [\n        \"▁Much\",\n        -11.554388046264648\n      ],\n      [\n        \"▁laugh\",\n        -11.55482006072998\n      ],\n      [\n        \"▁blade\",\n        -11.554835319519043\n      ],\n      [\n        \"amine\",\n        -11.554838180541992\n      ],\n      [\n        \"▁insert\",\n        -11.55493450164795\n      ],\n      [\n        \"▁toys\",\n        -11.555326461791992\n      ],\n      [\n        \"▁в\",\n        -11.555726051330566\n      ],\n      [\n        \"cell\",\n        -11.555747985839844\n      ],\n      [\n        \"▁strengthen\",\n        -11.555864334106445\n      ],\n      [\n        \"GR\",\n        -11.555882453918457\n      ],\n      [\n        \"▁autor\",\n        -11.556114196777344\n      ],\n      [\n        \"▁LI\",\n        -11.556147575378418\n      ],\n      [\n        \"▁oamenii\",\n        -11.556184768676758\n      ],\n      [\n        \"▁Modell\",\n        -11.556222915649414\n      ],\n      [\n        \"▁sophisticated\",\n        -11.556225776672363\n      ],\n      [\n        \"▁Write\",\n        -11.556283950805664\n      ],\n      [\n        \"eți\",\n        -11.556295394897461\n      ],\n      [\n        \"say\",\n        -11.556641578674316\n      ],\n      [\n        \"▁nutzen\",\n        -11.556783676147461\n      ],\n      [\n        \"▁amenities\",\n        -11.556979179382324\n      ],\n      [\n        \"chel\",\n        -11.557068824768066\n      ],\n      [\n        \"Unlike\",\n        -11.55720043182373\n      ],\n      [\n        \"▁Bilder\",\n        -11.557208061218262\n      ],\n      [\n        \"fertig\",\n        -11.55722713470459\n      ],\n      [\n        \"PER\",\n        -11.557244300842285\n      ],\n      [\n        \"▁apparently\",\n        -11.557282447814941\n      ],\n      [\n        \"▁pointed\",\n        -11.557332992553711\n      ],\n      [\n        \"lop\",\n        -11.557435989379883\n      ],\n      [\n        \"▁commande\",\n        -11.557848930358887\n      ],\n      [\n        \"▁NEW\",\n        -11.557923316955566\n      ],\n      [\n        \"▁primi\",\n        -11.55798625946045\n      ],\n      [\n        \"▁aluminum\",\n        -11.558046340942383\n      ],\n      [\n        \"ificare\",\n        -11.558063507080078\n      ],\n      [\n        \"open\",\n        -11.55815315246582\n      ],\n      [\n        \"▁establishment\",\n        -11.558305740356445\n      ],\n      [\n        \"▁blanc\",\n        -11.558349609375\n      ],\n      [\n        \"▁1960\",\n        -11.558454513549805\n      ],\n      [\n        \"▁parameters\",\n        -11.55856990814209\n      ],\n      [\n        \"schluss\",\n        -11.558685302734375\n      ],\n      [\n        \"▁jet\",\n        -11.55879020690918\n      ],\n      [\n        \"gam\",\n        -11.55902099609375\n      ],\n      [\n        \"▁oral\",\n        -11.559290885925293\n      ],\n      [\n        \"▁tons\",\n        -11.559348106384277\n      ],\n      [\n        \"▁AL\",\n        -11.55935001373291\n      ],\n      [\n        \"▁intention\",\n        -11.55947494506836\n      ],\n      [\n        \"ives\",\n        -11.55974292755127\n      ],\n      [\n        \"▁BMW\",\n        -11.559837341308594\n      ],\n      [\n        \"gun\",\n        -11.559967041015625\n      ],\n      [\n        \"leben\",\n        -11.560046195983887\n      ],\n      [\n        \"▁Fresh\",\n        -11.56010913848877\n      ],\n      [\n        \"▁tuturor\",\n        -11.560193061828613\n      ],\n      [\n        \"▁marine\",\n        -11.560208320617676\n      ],\n      [\n        \"mile\",\n        -11.560260772705078\n      ],\n      [\n        \"▁alta\",\n        -11.560271263122559\n      ],\n      [\n        \"nnen\",\n        -11.56050968170166\n      ],\n      [\n        \"▁courts\",\n        -11.560530662536621\n      ],\n      [\n        \"▁Hello\",\n        -11.560791015625\n      ],\n      [\n        \"BL\",\n        -11.560895919799805\n      ],\n      [\n        \"▁reply\",\n        -11.560962677001953\n      ],\n      [\n        \"environnement\",\n        -11.560975074768066\n      ],\n      [\n        \"American\",\n        -11.560995101928711\n      ],\n      [\n        \"▁Tell\",\n        -11.561040878295898\n      ],\n      [\n        \"▁chic\",\n        -11.56148624420166\n      ],\n      [\n        \"bir\",\n        -11.561542510986328\n      ],\n      [\n        \"▁singing\",\n        -11.561788558959961\n      ],\n      [\n        \"▁earnings\",\n        -11.561819076538086\n      ],\n      [\n        \"▁ensemble\",\n        -11.562082290649414\n      ],\n      [\n        \"▁($\",\n        -11.562169075012207\n      ],\n      [\n        \"▁Tout\",\n        -11.562192916870117\n      ],\n      [\n        \"▁Abs\",\n        -11.562264442443848\n      ],\n      [\n        \"▁describes\",\n        -11.562322616577148\n      ],\n      [\n        \"▁navigation\",\n        -11.5625\n      ],\n      [\n        \"▁destul\",\n        -11.562532424926758\n      ],\n      [\n        \"legate\",\n        -11.562586784362793\n      ],\n      [\n        \"tral\",\n        -11.562599182128906\n      ],\n      [\n        \"aţie\",\n        -11.562753677368164\n      ],\n      [\n        \"▁supplied\",\n        -11.562775611877441\n      ],\n      [\n        \"▁paar\",\n        -11.562911987304688\n      ],\n      [\n        \"ionat\",\n        -11.563241958618164\n      ],\n      [\n        \"9.\",\n        -11.563263893127441\n      ],\n      [\n        \"▁41\",\n        -11.563348770141602\n      ],\n      [\n        \"▁Track\",\n        -11.563451766967773\n      ],\n      [\n        \"▁happiness\",\n        -11.563636779785156\n      ],\n      [\n        \"▁Personen\",\n        -11.563680648803711\n      ],\n      [\n        \"▁sac\",\n        -11.56373119354248\n      ],\n      [\n        \"▁shapes\",\n        -11.563774108886719\n      ],\n      [\n        \"eld\",\n        -11.56393051147461\n      ],\n      [\n        \"bett\",\n        -11.563963890075684\n      ],\n      [\n        \"tile\",\n        -11.56400203704834\n      ],\n      [\n        \"▁divided\",\n        -11.564035415649414\n      ],\n      [\n        \"▁13.\",\n        -11.56403923034668\n      ],\n      [\n        \"market\",\n        -11.564109802246094\n      ],\n      [\n        \"crafted\",\n        -11.564115524291992\n      ],\n      [\n        \"▁periods\",\n        -11.564120292663574\n      ],\n      [\n        \"uş\",\n        -11.564568519592285\n      ],\n      [\n        \"▁trainer\",\n        -11.56460952758789\n      ],\n      [\n        \"▁Licht\",\n        -11.564871788024902\n      ],\n      [\n        \"▁advisor\",\n        -11.564948081970215\n      ],\n      [\n        \"▁Herr\",\n        -11.564980506896973\n      ],\n      [\n        \"▁Halloween\",\n        -11.565147399902344\n      ],\n      [\n        \"alter\",\n        -11.565154075622559\n      ],\n      [\n        \"▁radical\",\n        -11.565155029296875\n      ],\n      [\n        \"▁nose\",\n        -11.56527042388916\n      ],\n      [\n        \"▁Sat\",\n        -11.565323829650879\n      ],\n      [\n        \"▁Mom\",\n        -11.565372467041016\n      ],\n      [\n        \"moni\",\n        -11.565377235412598\n      ],\n      [\n        \"▁semn\",\n        -11.565397262573242\n      ],\n      [\n        \"vé\",\n        -11.565672874450684\n      ],\n      [\n        \"identifie\",\n        -11.56570053100586\n      ],\n      [\n        \"▁hatten\",\n        -11.565957069396973\n      ],\n      [\n        \"completing\",\n        -11.565959930419922\n      ],\n      [\n        \"▁gust\",\n        -11.565963745117188\n      ],\n      [\n        \"▁creat\",\n        -11.56601333618164\n      ],\n      [\n        \"ché\",\n        -11.566075325012207\n      ],\n      [\n        \"pay\",\n        -11.566216468811035\n      ],\n      [\n        \"▁Money\",\n        -11.566229820251465\n      ],\n      [\n        \"IG\",\n        -11.566243171691895\n      ],\n      [\n        \"▁Cash\",\n        -11.566327095031738\n      ],\n      [\n        \"altă\",\n        -11.566420555114746\n      ],\n      [\n        \"▁bekommen\",\n        -11.566620826721191\n      ],\n      [\n        \"▁43\",\n        -11.56662654876709\n      ],\n      [\n        \"▁supplement\",\n        -11.566637992858887\n      ],\n      [\n        \"▁Early\",\n        -11.566754341125488\n      ],\n      [\n        \"▁mattress\",\n        -11.56692123413086\n      ],\n      [\n        \"▁worn\",\n        -11.567182540893555\n      ],\n      [\n        \"rov\",\n        -11.567197799682617\n      ],\n      [\n        \"▁pray\",\n        -11.56733226776123\n      ],\n      [\n        \"▁beans\",\n        -11.567673683166504\n      ],\n      [\n        \"▁passé\",\n        -11.567782402038574\n      ],\n      [\n        \"▁facilit\",\n        -11.56782054901123\n      ],\n      [\n        \"▁meters\",\n        -11.56784439086914\n      ],\n      [\n        \"cke\",\n        -11.568163871765137\n      ],\n      [\n        \"▁Villa\",\n        -11.568199157714844\n      ],\n      [\n        \"▁Diego\",\n        -11.568217277526855\n      ],\n      [\n        \"▁chips\",\n        -11.568244934082031\n      ],\n      [\n        \"▁mes\",\n        -11.568349838256836\n      ],\n      [\n        \"▁Seattle\",\n        -11.568421363830566\n      ],\n      [\n        \"BU\",\n        -11.568621635437012\n      ],\n      [\n        \"▁nevoi\",\n        -11.568714141845703\n      ],\n      [\n        \"▁lets\",\n        -11.568737030029297\n      ],\n      [\n        \"▁hopefully\",\n        -11.56894302368164\n      ],\n      [\n        \"▁AG\",\n        -11.568954467773438\n      ],\n      [\n        \"liable\",\n        -11.568999290466309\n      ],\n      [\n        \"pound\",\n        -11.569067001342773\n      ],\n      [\n        \"près\",\n        -11.569085121154785\n      ],\n      [\n        \"arul\",\n        -11.56920337677002\n      ],\n      [\n        \"isiert\",\n        -11.569281578063965\n      ],\n      [\n        \"▁Expert\",\n        -11.569297790527344\n      ],\n      [\n        \"▁particulier\",\n        -11.569367408752441\n      ],\n      [\n        \"stoff\",\n        -11.569952964782715\n      ],\n      [\n        \"▁interpretation\",\n        -11.56999397277832\n      ],\n      [\n        \"După\",\n        -11.57007884979248\n      ],\n      [\n        \"sait\",\n        -11.57011604309082\n      ],\n      [\n        \"▁nouvelles\",\n        -11.570173263549805\n      ],\n      [\n        \"▁Ok\",\n        -11.570175170898438\n      ],\n      [\n        \"tap\",\n        -11.570301055908203\n      ],\n      [\n        \"▁targets\",\n        -11.570327758789062\n      ],\n      [\n        \"rung\",\n        -11.57052230834961\n      ],\n      [\n        \"▁stare\",\n        -11.570576667785645\n      ],\n      [\n        \"▁efficiently\",\n        -11.570908546447754\n      ],\n      [\n        \"EV\",\n        -11.571003913879395\n      ],\n      [\n        \"évit\",\n        -11.571310997009277\n      ],\n      [\n        \"▁Moldova\",\n        -11.571542739868164\n      ],\n      [\n        \"▁Face\",\n        -11.571663856506348\n      ],\n      [\n        \"▁flo\",\n        -11.57168960571289\n      ],\n      [\n        \"▁acestora\",\n        -11.5717134475708\n      ],\n      [\n        \"▁Victor\",\n        -11.57183837890625\n      ],\n      [\n        \"▁breed\",\n        -11.57198429107666\n      ],\n      [\n        \"morph\",\n        -11.572230339050293\n      ],\n      [\n        \"sley\",\n        -11.572274208068848\n      ],\n      [\n        \"mot\",\n        -11.57234001159668\n      ],\n      [\n        \"▁URL\",\n        -11.572395324707031\n      ],\n      [\n        \"ellen\",\n        -11.572502136230469\n      ],\n      [\n        \"▁resist\",\n        -11.572781562805176\n      ],\n      [\n        \"zon\",\n        -11.57282829284668\n      ],\n      [\n        \"ndel\",\n        -11.572967529296875\n      ],\n      [\n        \"will\",\n        -11.572989463806152\n      ],\n      [\n        \"▁alege\",\n        -11.573076248168945\n      ],\n      [\n        \"▁Easter\",\n        -11.573114395141602\n      ],\n      [\n        \"▁Bat\",\n        -11.573190689086914\n      ],\n      [\n        \"▁Höhe\",\n        -11.573223114013672\n      ],\n      [\n        \"▁fascinating\",\n        -11.573387145996094\n      ],\n      [\n        \"▁Know\",\n        -11.5735445022583\n      ],\n      [\n        \"illon\",\n        -11.573602676391602\n      ],\n      [\n        \"flex\",\n        -11.57363224029541\n      ],\n      [\n        \"who\",\n        -11.573701858520508\n      ],\n      [\n        \"▁Always\",\n        -11.573729515075684\n      ],\n      [\n        \"▁Bush\",\n        -11.573777198791504\n      ],\n      [\n        \"ICE\",\n        -11.574009895324707\n      ],\n      [\n        \"verein\",\n        -11.57448673248291\n      ],\n      [\n        \"▁später\",\n        -11.57448959350586\n      ],\n      [\n        \"▁cherch\",\n        -11.574575424194336\n      ],\n      [\n        \"makers\",\n        -11.574753761291504\n      ],\n      [\n        \"versus\",\n        -11.574790954589844\n      ],\n      [\n        \"▁Clear\",\n        -11.574846267700195\n      ],\n      [\n        \"▁Pennsylvania\",\n        -11.574912071228027\n      ],\n      [\n        \"Dieser\",\n        -11.575041770935059\n      ],\n      [\n        \"▁picking\",\n        -11.575072288513184\n      ],\n      [\n        \"▁restoration\",\n        -11.57513427734375\n      ],\n      [\n        \"▁interviews\",\n        -11.575201988220215\n      ],\n      [\n        \"pressed\",\n        -11.575210571289062\n      ],\n      [\n        \"nnerhalb\",\n        -11.575674057006836\n      ],\n      [\n        \"▁connecting\",\n        -11.575834274291992\n      ],\n      [\n        \"jou\",\n        -11.575943946838379\n      ],\n      [\n        \"▁react\",\n        -11.576189041137695\n      ],\n      [\n        \"▁Merci\",\n        -11.576223373413086\n      ],\n      [\n        \"▁Phone\",\n        -11.576356887817383\n      ],\n      [\n        \"▁1)\",\n        -11.57652473449707\n      ],\n      [\n        \"▁victims\",\n        -11.576618194580078\n      ],\n      [\n        \"▁Spo\",\n        -11.576685905456543\n      ],\n      [\n        \"atului\",\n        -11.576735496520996\n      ],\n      [\n        \"▁Harry\",\n        -11.576837539672852\n      ],\n      [\n        \"▁Sala\",\n        -11.576875686645508\n      ],\n      [\n        \"Pol\",\n        -11.577075958251953\n      ],\n      [\n        \"▁Clo\",\n        -11.577167510986328\n      ],\n      [\n        \"▁Erfolg\",\n        -11.577211380004883\n      ],\n      [\n        \"autour\",\n        -11.577308654785156\n      ],\n      [\n        \"▁Template\",\n        -11.577314376831055\n      ],\n      [\n        \"▁invention\",\n        -11.57754898071289\n      ],\n      [\n        \"▁schwer\",\n        -11.57761287689209\n      ],\n      [\n        \"vac\",\n        -11.577625274658203\n      ],\n      [\n        \"▁Trail\",\n        -11.577627182006836\n      ],\n      [\n        \"▁Vietnam\",\n        -11.577638626098633\n      ],\n      [\n        \"▁Size\",\n        -11.577689170837402\n      ],\n      [\n        \"▁Bern\",\n        -11.577783584594727\n      ],\n      [\n        \"▁emp\",\n        -11.577845573425293\n      ],\n      [\n        \"▁shake\",\n        -11.57787799835205\n      ],\n      [\n        \"▁Ave\",\n        -11.57794189453125\n      ],\n      [\n        \"▁productive\",\n        -11.578009605407715\n      ],\n      [\n        \"▁apple\",\n        -11.578015327453613\n      ],\n      [\n        \"▁portal\",\n        -11.578052520751953\n      ],\n      [\n        \"▁ceramic\",\n        -11.578082084655762\n      ],\n      [\n        \"▁pad\",\n        -11.578110694885254\n      ],\n      [\n        \"▁Syn\",\n        -11.578316688537598\n      ],\n      [\n        \"Ab\",\n        -11.57845401763916\n      ],\n      [\n        \"▁syn\",\n        -11.578761100769043\n      ],\n      [\n        \"find\",\n        -11.578888893127441\n      ],\n      [\n        \"▁settle\",\n        -11.578909873962402\n      ],\n      [\n        \"▁général\",\n        -11.578965187072754\n      ],\n      [\n        \"▁okay\",\n        -11.579032897949219\n      ],\n      [\n        \"▁receipt\",\n        -11.57906436920166\n      ],\n      [\n        \"orii\",\n        -11.579117774963379\n      ],\n      [\n        \"▁Mission\",\n        -11.579122543334961\n      ],\n      [\n        \"entrée\",\n        -11.579304695129395\n      ],\n      [\n        \"▁besteht\",\n        -11.579394340515137\n      ],\n      [\n        \"▁wisdom\",\n        -11.57950210571289\n      ],\n      [\n        \"▁heraus\",\n        -11.579645156860352\n      ],\n      [\n        \"▁balanced\",\n        -11.579753875732422\n      ],\n      [\n        \"▁habits\",\n        -11.579773902893066\n      ],\n      [\n        \"tang\",\n        -11.579888343811035\n      ],\n      [\n        \"ură\",\n        -11.580151557922363\n      ],\n      [\n        \"▁winners\",\n        -11.580182075500488\n      ],\n      [\n        \"ç\",\n        -11.580215454101562\n      ],\n      [\n        \"▁folosi\",\n        -11.580242156982422\n      ],\n      [\n        \"aliment\",\n        -11.5802583694458\n      ],\n      [\n        \"▁fiction\",\n        -11.580373764038086\n      ],\n      [\n        \"▁Spe\",\n        -11.580534934997559\n      ],\n      [\n        \"▁elsewhere\",\n        -11.580663681030273\n      ],\n      [\n        \"▁dependent\",\n        -11.580808639526367\n      ],\n      [\n        \"▁Anne\",\n        -11.581167221069336\n      ],\n      [\n        \"▁excellence\",\n        -11.581695556640625\n      ],\n      [\n        \"▁Feel\",\n        -11.581753730773926\n      ],\n      [\n        \"lieb\",\n        -11.581811904907227\n      ],\n      [\n        \"▁sectors\",\n        -11.581865310668945\n      ],\n      [\n        \"▁expir\",\n        -11.581886291503906\n      ],\n      [\n        \"▁surfaces\",\n        -11.58191204071045\n      ],\n      [\n        \"▁minim\",\n        -11.581937789916992\n      ],\n      [\n        \"▁tumor\",\n        -11.58204460144043\n      ],\n      [\n        \"▁paragraph\",\n        -11.582289695739746\n      ],\n      [\n        \"▁disk\",\n        -11.58232307434082\n      ],\n      [\n        \"▁tonight\",\n        -11.582379341125488\n      ],\n      [\n        \"▁precious\",\n        -11.582794189453125\n      ],\n      [\n        \"▁console\",\n        -11.58288288116455\n      ],\n      [\n        \"Th\",\n        -11.582939147949219\n      ],\n      [\n        \"neu\",\n        -11.583020210266113\n      ],\n      [\n        \"effective\",\n        -11.5839262008667\n      ],\n      [\n        \"▁Republican\",\n        -11.583944320678711\n      ],\n      [\n        \"format\",\n        -11.584297180175781\n      ],\n      [\n        \"▁preserve\",\n        -11.58436107635498\n      ],\n      [\n        \"▁wiring\",\n        -11.584599494934082\n      ],\n      [\n        \"▁exercises\",\n        -11.584757804870605\n      ],\n      [\n        \"▁pregnancy\",\n        -11.584774017333984\n      ],\n      [\n        \"tries\",\n        -11.58481502532959\n      ],\n      [\n        \"▁jeunes\",\n        -11.584883689880371\n      ],\n      [\n        \"▁publishing\",\n        -11.584932327270508\n      ],\n      [\n        \"▁nehmen\",\n        -11.584935188293457\n      ],\n      [\n        \"▁capability\",\n        -11.5849609375\n      ],\n      [\n        \"▁prompt\",\n        -11.584965705871582\n      ],\n      [\n        \"▁Further\",\n        -11.58497428894043\n      ],\n      [\n        \"▁semaine\",\n        -11.585173606872559\n      ],\n      [\n        \"abo\",\n        -11.585216522216797\n      ],\n      [\n        \"▁evolution\",\n        -11.585319519042969\n      ],\n      [\n        \"▁Sud\",\n        -11.585403442382812\n      ],\n      [\n        \"▁frais\",\n        -11.585525512695312\n      ],\n      [\n        \"LT\",\n        -11.585619926452637\n      ],\n      [\n        \"▁stack\",\n        -11.58581829071045\n      ],\n      [\n        \"▁Inside\",\n        -11.585854530334473\n      ],\n      [\n        \"▁programmes\",\n        -11.585997581481934\n      ],\n      [\n        \"▁passes\",\n        -11.586196899414062\n      ],\n      [\n        \"mü\",\n        -11.586474418640137\n      ],\n      [\n        \"▁progressive\",\n        -11.586518287658691\n      ],\n      [\n        \"▁calculator\",\n        -11.58658218383789\n      ],\n      [\n        \"▁Core\",\n        -11.586655616760254\n      ],\n      [\n        \"BT\",\n        -11.586956977844238\n      ],\n      [\n        \"core\",\n        -11.586996078491211\n      ],\n      [\n        \"▁Moon\",\n        -11.587004661560059\n      ],\n      [\n        \"▁tender\",\n        -11.587040901184082\n      ],\n      [\n        \"durch\",\n        -11.58721923828125\n      ],\n      [\n        \"▁commune\",\n        -11.587453842163086\n      ],\n      [\n        \"▁Prince\",\n        -11.587594032287598\n      ],\n      [\n        \"▁demonstrated\",\n        -11.587693214416504\n      ],\n      [\n        \"▁conversations\",\n        -11.587890625\n      ],\n      [\n        \"▁fri\",\n        -11.587984085083008\n      ],\n      [\n        \"igh\",\n        -11.587992668151855\n      ],\n      [\n        \"being\",\n        -11.588334083557129\n      ],\n      [\n        \"pause\",\n        -11.58853530883789\n      ],\n      [\n        \"▁Bear\",\n        -11.58871841430664\n      ],\n      [\n        \"ayant\",\n        -11.588875770568848\n      ],\n      [\n        \"▁Industry\",\n        -11.588967323303223\n      ],\n      [\n        \"▁sponsor\",\n        -11.589012145996094\n      ],\n      [\n        \"▁numele\",\n        -11.589098930358887\n      ],\n      [\n        \"▁VA\",\n        -11.589167594909668\n      ],\n      [\n        \"▁Sommer\",\n        -11.589366912841797\n      ],\n      [\n        \"TB\",\n        -11.589380264282227\n      ],\n      [\n        \"▁optional\",\n        -11.589505195617676\n      ],\n      [\n        \"▁Landes\",\n        -11.589812278747559\n      ],\n      [\n        \"coli\",\n        -11.589963912963867\n      ],\n      [\n        \"empt\",\n        -11.59018325805664\n      ],\n      [\n        \"▁Iron\",\n        -11.590620040893555\n      ],\n      [\n        \"▁1992\",\n        -11.59090518951416\n      ],\n      [\n        \"▁attempts\",\n        -11.59090518951416\n      ],\n      [\n        \"halb\",\n        -11.590960502624512\n      ],\n      [\n        \"▁photographer\",\n        -11.59097671508789\n      ],\n      [\n        \"▁witness\",\n        -11.59097957611084\n      ],\n      [\n        \"bru\",\n        -11.591073989868164\n      ],\n      [\n        \"▁Ras\",\n        -11.59107780456543\n      ],\n      [\n        \"▁burden\",\n        -11.591142654418945\n      ],\n      [\n        \"▁kaufen\",\n        -11.591256141662598\n      ],\n      [\n        \"▁vu\",\n        -11.591362953186035\n      ],\n      [\n        \"▁Wedding\",\n        -11.591601371765137\n      ],\n      [\n        \"▁Kla\",\n        -11.591604232788086\n      ],\n      [\n        \"occasion\",\n        -11.591915130615234\n      ],\n      [\n        \"▁keys\",\n        -11.592131614685059\n      ],\n      [\n        \"▁oferi\",\n        -11.592279434204102\n      ],\n      [\n        \"▁puzzle\",\n        -11.592302322387695\n      ],\n      [\n        \"eaux\",\n        -11.59254264831543\n      ],\n      [\n        \"▁Eco\",\n        -11.592805862426758\n      ],\n      [\n        \"▁52\",\n        -11.592817306518555\n      ],\n      [\n        \"▁Elizabeth\",\n        -11.59284496307373\n      ],\n      [\n        \"▁dispose\",\n        -11.593144416809082\n      ],\n      [\n        \"▁cluster\",\n        -11.59326171875\n      ],\n      [\n        \"iki\",\n        -11.593283653259277\n      ],\n      [\n        \"▁Guys\",\n        -11.593595504760742\n      ],\n      [\n        \"▁Economic\",\n        -11.593632698059082\n      ],\n      [\n        \"▁apar\",\n        -11.593677520751953\n      ],\n      [\n        \"▁ziua\",\n        -11.593688011169434\n      ],\n      [\n        \"▁integral\",\n        -11.593740463256836\n      ],\n      [\n        \"▁tac\",\n        -11.59376335144043\n      ],\n      [\n        \"▁restrictions\",\n        -11.593778610229492\n      ],\n      [\n        \"▁nerve\",\n        -11.593794822692871\n      ],\n      [\n        \"▁Stop\",\n        -11.59386157989502\n      ],\n      [\n        \"burger\",\n        -11.593897819519043\n      ],\n      [\n        \"explo\",\n        -11.593944549560547\n      ],\n      [\n        \"lö\",\n        -11.593958854675293\n      ],\n      [\n        \"NP\",\n        -11.594077110290527\n      ],\n      [\n        \"▁Brook\",\n        -11.59418773651123\n      ],\n      [\n        \"▁Close\",\n        -11.594278335571289\n      ],\n      [\n        \"▁representing\",\n        -11.59446907043457\n      ],\n      [\n        \"▁certaine\",\n        -11.594767570495605\n      ],\n      [\n        \"▁discovery\",\n        -11.594836235046387\n      ],\n      [\n        \"▁rece\",\n        -11.594964981079102\n      ],\n      [\n        \"FF\",\n        -11.594970703125\n      ],\n      [\n        \"▁salary\",\n        -11.595069885253906\n      ],\n      [\n        \"▁Wolf\",\n        -11.595137596130371\n      ],\n      [\n        \"▁deserve\",\n        -11.595166206359863\n      ],\n      [\n        \"ţele\",\n        -11.595417976379395\n      ],\n      [\n        \"gathered\",\n        -11.595934867858887\n      ],\n      [\n        \"▁comply\",\n        -11.59599494934082\n      ],\n      [\n        \"lagen\",\n        -11.596034049987793\n      ],\n      [\n        \"ătoare\",\n        -11.596192359924316\n      ],\n      [\n        \"▁relate\",\n        -11.596410751342773\n      ],\n      [\n        \"▁Roger\",\n        -11.59656810760498\n      ],\n      [\n        \"▁blame\",\n        -11.596575736999512\n      ],\n      [\n        \"▁Jen\",\n        -11.596914291381836\n      ],\n      [\n        \"▁army\",\n        -11.596936225891113\n      ],\n      [\n        \"▁$10\",\n        -11.597129821777344\n      ],\n      [\n        \"▁Cabinet\",\n        -11.597185134887695\n      ],\n      [\n        \"Gu\",\n        -11.597367286682129\n      ],\n      [\n        \"▁wildlife\",\n        -11.597452163696289\n      ],\n      [\n        \"▁Memorial\",\n        -11.597643852233887\n      ],\n      [\n        \"▁Holiday\",\n        -11.597742080688477\n      ],\n      [\n        \"▁curat\",\n        -11.598291397094727\n      ],\n      [\n        \"iilor\",\n        -11.598299026489258\n      ],\n      [\n        \"▁fleet\",\n        -11.598408699035645\n      ],\n      [\n        \"▁reviewed\",\n        -11.59843635559082\n      ],\n      [\n        \"cet\",\n        -11.598450660705566\n      ],\n      [\n        \"▁virtually\",\n        -11.598487854003906\n      ],\n      [\n        \"▁Crusher\",\n        -11.59852409362793\n      ],\n      [\n        \"▁slide\",\n        -11.59858226776123\n      ],\n      [\n        \"▁générale\",\n        -11.598604202270508\n      ],\n      [\n        \"▁sensation\",\n        -11.598630905151367\n      ],\n      [\n        \"▁garlic\",\n        -11.598638534545898\n      ],\n      [\n        \"5)\",\n        -11.598657608032227\n      ],\n      [\n        \"▁batteries\",\n        -11.598756790161133\n      ],\n      [\n        \"SH\",\n        -11.59876823425293\n      ],\n      [\n        \"▁seller\",\n        -11.59882926940918\n      ],\n      [\n        \"design\",\n        -11.598871231079102\n      ],\n      [\n        \"5.\",\n        -11.598944664001465\n      ],\n      [\n        \"▁Overall\",\n        -11.598969459533691\n      ],\n      [\n        \"▁investigate\",\n        -11.599058151245117\n      ],\n      [\n        \"max\",\n        -11.599064826965332\n      ],\n      [\n        \"▁attach\",\n        -11.599166870117188\n      ],\n      [\n        \"▁Future\",\n        -11.599209785461426\n      ],\n      [\n        \"OUR\",\n        -11.599284172058105\n      ],\n      [\n        \"▁LE\",\n        -11.59968090057373\n      ],\n      [\n        \"▁bite\",\n        -11.599811553955078\n      ],\n      [\n        \"tige\",\n        -11.599874496459961\n      ],\n      [\n        \"▁twist\",\n        -11.59987735748291\n      ],\n      [\n        \"hole\",\n        -11.600180625915527\n      ],\n      [\n        \"▁Tony\",\n        -11.600510597229004\n      ],\n      [\n        \"LU\",\n        -11.600598335266113\n      ],\n      [\n        \"▁Organization\",\n        -11.600617408752441\n      ],\n      [\n        \"▁invit\",\n        -11.600632667541504\n      ],\n      [\n        \"▁Ant\",\n        -11.600739479064941\n      ],\n      [\n        \"NR\",\n        -11.600788116455078\n      ],\n      [\n        \"sorgt\",\n        -11.600854873657227\n      ],\n      [\n        \"▁Lan\",\n        -11.600860595703125\n      ],\n      [\n        \"▁Manchester\",\n        -11.60091495513916\n      ],\n      [\n        \"schrift\",\n        -11.601066589355469\n      ],\n      [\n        \"▁kg\",\n        -11.601150512695312\n      ],\n      [\n        \"▁aroma\",\n        -11.60132884979248\n      ],\n      [\n        \"▁Source\",\n        -11.601388931274414\n      ],\n      [\n        \"▁permite\",\n        -11.601445198059082\n      ],\n      [\n        \"▁Consider\",\n        -11.601457595825195\n      ],\n      [\n        \"▁Artist\",\n        -11.601627349853516\n      ],\n      [\n        \"▁transmit\",\n        -11.601783752441406\n      ],\n      [\n        \"oasa\",\n        -11.601834297180176\n      ],\n      [\n        \"▁Zen\",\n        -11.60198974609375\n      ],\n      [\n        \"ANT\",\n        -11.602235794067383\n      ],\n      [\n        \"▁consulting\",\n        -11.602404594421387\n      ],\n      [\n        \"▁commence\",\n        -11.6025390625\n      ],\n      [\n        \"▁quilt\",\n        -11.60261058807373\n      ],\n      [\n        \"owned\",\n        -11.602642059326172\n      ],\n      [\n        \"▁bro\",\n        -11.602689743041992\n      ],\n      [\n        \"▁integrate\",\n        -11.602715492248535\n      ],\n      [\n        \"▁Ontario\",\n        -11.602775573730469\n      ],\n      [\n        \"TF\",\n        -11.602832794189453\n      ],\n      [\n        \"▁Study\",\n        -11.602887153625488\n      ],\n      [\n        \"▁ensuite\",\n        -11.603155136108398\n      ],\n      [\n        \"itatii\",\n        -11.603180885314941\n      ],\n      [\n        \"Mon\",\n        -11.603235244750977\n      ],\n      [\n        \"-11\",\n        -11.603299140930176\n      ],\n      [\n        \"what\",\n        -11.603384017944336\n      ],\n      [\n        \"▁Things\",\n        -11.60361385345459\n      ],\n      [\n        \"▁Eye\",\n        -11.603819847106934\n      ],\n      [\n        \"▁présente\",\n        -11.603828430175781\n      ],\n      [\n        \"tention\",\n        -11.603915214538574\n      ],\n      [\n        \"|\",\n        -11.603957176208496\n      ],\n      [\n        \"stall\",\n        -11.603963851928711\n      ],\n      [\n        \"▁beef\",\n        -11.603992462158203\n      ],\n      [\n        \"figur\",\n        -11.604005813598633\n      ],\n      [\n        \"▁cancel\",\n        -11.604146003723145\n      ],\n      [\n        \"▁domeniul\",\n        -11.604252815246582\n      ],\n      [\n        \"▁360\",\n        -11.604290008544922\n      ],\n      [\n        \"▁sleeping\",\n        -11.6045560836792\n      ],\n      [\n        \"▁traitement\",\n        -11.604580879211426\n      ],\n      [\n        \"ühl\",\n        -11.604769706726074\n      ],\n      [\n        \"▁Environmental\",\n        -11.604835510253906\n      ],\n      [\n        \"cier\",\n        -11.604894638061523\n      ],\n      [\n        \"▁NC\",\n        -11.604907035827637\n      ],\n      [\n        \"pub\",\n        -11.604925155639648\n      ],\n      [\n        \"▁addiction\",\n        -11.605071067810059\n      ],\n      [\n        \"▁nest\",\n        -11.605128288269043\n      ],\n      [\n        \"▁ON\",\n        -11.605395317077637\n      ],\n      [\n        \"▁discrimin\",\n        -11.605396270751953\n      ],\n      [\n        \"▁proved\",\n        -11.605517387390137\n      ],\n      [\n        \"▁occasions\",\n        -11.605864524841309\n      ],\n      [\n        \"OH\",\n        -11.606184959411621\n      ],\n      [\n        \"▁lawyers\",\n        -11.606203079223633\n      ],\n      [\n        \"own\",\n        -11.606290817260742\n      ],\n      [\n        \"▁Meeting\",\n        -11.606596946716309\n      ],\n      [\n        \"▁Industrial\",\n        -11.606704711914062\n      ],\n      [\n        \"owed\",\n        -11.606736183166504\n      ],\n      [\n        \"▁Cel\",\n        -11.606793403625488\n      ],\n      [\n        \"legt\",\n        -11.60706615447998\n      ],\n      [\n        \"ily\",\n        -11.607085227966309\n      ],\n      [\n        \"▁wins\",\n        -11.607155799865723\n      ],\n      [\n        \"▁strap\",\n        -11.607367515563965\n      ],\n      [\n        \"digit\",\n        -11.607441902160645\n      ],\n      [\n        \"▁hinaus\",\n        -11.607504844665527\n      ],\n      [\n        \"mple\",\n        -11.607712745666504\n      ],\n      [\n        \"▁(5\",\n        -11.607797622680664\n      ],\n      [\n        \"▁pdf\",\n        -11.607894897460938\n      ],\n      [\n        \"▁eco\",\n        -11.607915878295898\n      ],\n      [\n        \"▁junior\",\n        -11.608172416687012\n      ],\n      [\n        \"DB\",\n        -11.608556747436523\n      ],\n      [\n        \"gelegt\",\n        -11.608636856079102\n      ],\n      [\n        \"ION\",\n        -11.608678817749023\n      ],\n      [\n        \"▁competitors\",\n        -11.60880184173584\n      ],\n      [\n        \"▁Arab\",\n        -11.60898208618164\n      ],\n      [\n        \"▁Secret\",\n        -11.609148979187012\n      ],\n      [\n        \"▁Kunst\",\n        -11.609283447265625\n      ],\n      [\n        \"▁worried\",\n        -11.609297752380371\n      ],\n      [\n        \"meiner\",\n        -11.609378814697266\n      ],\n      [\n        \"▁Magic\",\n        -11.609450340270996\n      ],\n      [\n        \"▁groß\",\n        -11.609537124633789\n      ],\n      [\n        \"▁travaux\",\n        -11.609748840332031\n      ],\n      [\n        \"▁sollen\",\n        -11.609772682189941\n      ],\n      [\n        \"▁Sciences\",\n        -11.609850883483887\n      ],\n      [\n        \"▁athletes\",\n        -11.610055923461914\n      ],\n      [\n        \"▁discounts\",\n        -11.610079765319824\n      ],\n      [\n        \"kit\",\n        -11.610211372375488\n      ],\n      [\n        \"lind\",\n        -11.610305786132812\n      ],\n      [\n        \"▁enjoyable\",\n        -11.610421180725098\n      ],\n      [\n        \"ground\",\n        -11.610489845275879\n      ],\n      [\n        \"▁Tat\",\n        -11.610529899597168\n      ],\n      [\n        \"▁passengers\",\n        -11.610576629638672\n      ],\n      [\n        \"▁Dami\",\n        -11.610677719116211\n      ],\n      [\n        \"▁Major\",\n        -11.61070728302002\n      ],\n      [\n        \"watch\",\n        -11.610796928405762\n      ],\n      [\n        \"working\",\n        -11.610908508300781\n      ],\n      [\n        \"arrêt\",\n        -11.610923767089844\n      ],\n      [\n        \"▁subtle\",\n        -11.611069679260254\n      ],\n      [\n        \"▁epi\",\n        -11.611197471618652\n      ],\n      [\n        \"▁Jahres\",\n        -11.61128044128418\n      ],\n      [\n        \"▁cooling\",\n        -11.61141586303711\n      ],\n      [\n        \"▁makeup\",\n        -11.611427307128906\n      ],\n      [\n        \"jet\",\n        -11.611495018005371\n      ],\n      [\n        \"▁Given\",\n        -11.611519813537598\n      ],\n      [\n        \"plex\",\n        -11.61158275604248\n      ],\n      [\n        \"▁exploit\",\n        -11.611590385437012\n      ],\n      [\n        \"rine\",\n        -11.611604690551758\n      ],\n      [\n        \"▁delivers\",\n        -11.612122535705566\n      ],\n      [\n        \"▁summary\",\n        -11.612236022949219\n      ],\n      [\n        \"▁beaches\",\n        -11.612459182739258\n      ],\n      [\n        \"lift\",\n        -11.612550735473633\n      ],\n      [\n        \"▁Suite\",\n        -11.612554550170898\n      ],\n      [\n        \"▁Assistant\",\n        -11.612688064575195\n      ],\n      [\n        \"▁taxi\",\n        -11.61273193359375\n      ],\n      [\n        \"▁peaceful\",\n        -11.612805366516113\n      ],\n      [\n        \"▁Mode\",\n        -11.612980842590332\n      ],\n      [\n        \"▁Fun\",\n        -11.613059043884277\n      ],\n      [\n        \"▁diameter\",\n        -11.613142967224121\n      ],\n      [\n        \"▁phrase\",\n        -11.613150596618652\n      ],\n      [\n        \"ACT\",\n        -11.613265037536621\n      ],\n      [\n        \"▁différentes\",\n        -11.613322257995605\n      ],\n      [\n        \"▁14.\",\n        -11.613417625427246\n      ],\n      [\n        \"▁CE\",\n        -11.61352825164795\n      ],\n      [\n        \"▁2)\",\n        -11.613739013671875\n      ],\n      [\n        \"▁Nat\",\n        -11.613785743713379\n      ],\n      [\n        \"▁delete\",\n        -11.61388111114502\n      ],\n      [\n        \"other\",\n        -11.613930702209473\n      ],\n      [\n        \"hang\",\n        -11.613985061645508\n      ],\n      [\n        \"▁sujet\",\n        -11.614117622375488\n      ],\n      [\n        \"▁precise\",\n        -11.614212989807129\n      ],\n      [\n        \"▁Total\",\n        -11.614290237426758\n      ],\n      [\n        \"▁chambre\",\n        -11.614483833312988\n      ],\n      [\n        \"sati\",\n        -11.614666938781738\n      ],\n      [\n        \"▁Metal\",\n        -11.614995956420898\n      ],\n      [\n        \"rust\",\n        -11.615038871765137\n      ],\n      [\n        \"▁Brazil\",\n        -11.615508079528809\n      ],\n      [\n        \"▁hybrid\",\n        -11.615636825561523\n      ],\n      [\n        \"ops\",\n        -11.615691184997559\n      ],\n      [\n        \"▁electro\",\n        -11.615789413452148\n      ],\n      [\n        \"utz\",\n        -11.61608600616455\n      ],\n      [\n        \"▁quoi\",\n        -11.616246223449707\n      ],\n      [\n        \"▁adoption\",\n        -11.616331100463867\n      ],\n      [\n        \"3.5\",\n        -11.616518020629883\n      ],\n      [\n        \"50,000\",\n        -11.616599082946777\n      ],\n      [\n        \"veti\",\n        -11.616630554199219\n      ],\n      [\n        \"hir\",\n        -11.616957664489746\n      ],\n      [\n        \"▁adequate\",\n        -11.617067337036133\n      ],\n      [\n        \"ologist\",\n        -11.617109298706055\n      ],\n      [\n        \"torii\",\n        -11.617295265197754\n      ],\n      [\n        \"wasser\",\n        -11.617355346679688\n      ],\n      [\n        \"▁Authority\",\n        -11.617362976074219\n      ],\n      [\n        \"▁donation\",\n        -11.617364883422852\n      ],\n      [\n        \"700\",\n        -11.617375373840332\n      ],\n      [\n        \"▁somehow\",\n        -11.617375373840332\n      ],\n      [\n        \"▁kostenlos\",\n        -11.617425918579102\n      ],\n      [\n        \"▁generations\",\n        -11.617537498474121\n      ],\n      [\n        \"▁Turkey\",\n        -11.617711067199707\n      ],\n      [\n        \"rata\",\n        -11.617819786071777\n      ],\n      [\n        \"▁animation\",\n        -11.618206024169922\n      ],\n      [\n        \"▁CH\",\n        -11.618281364440918\n      ],\n      [\n        \"ending\",\n        -11.618317604064941\n      ],\n      [\n        \"welt\",\n        -11.618376731872559\n      ],\n      [\n        \"bac\",\n        -11.618380546569824\n      ],\n      [\n        \"MG\",\n        -11.618460655212402\n      ],\n      [\n        \"▁parks\",\n        -11.618468284606934\n      ],\n      [\n        \"▁placing\",\n        -11.618870735168457\n      ],\n      [\n        \"sort\",\n        -11.61915111541748\n      ],\n      [\n        \"▁Bitcoin\",\n        -11.619163513183594\n      ],\n      [\n        \"▁disorder\",\n        -11.619282722473145\n      ],\n      [\n        \"MAN\",\n        -11.619302749633789\n      ],\n      [\n        \"aught\",\n        -11.619412422180176\n      ],\n      [\n        \"▁guides\",\n        -11.61956787109375\n      ],\n      [\n        \"▁circul\",\n        -11.619651794433594\n      ],\n      [\n        \"▁Steven\",\n        -11.619954109191895\n      ],\n      [\n        \"rrière\",\n        -11.619976997375488\n      ],\n      [\n        \"▁Arch\",\n        -11.61999225616455\n      ],\n      [\n        \"▁plates\",\n        -11.620091438293457\n      ],\n      [\n        \"MR\",\n        -11.620118141174316\n      ],\n      [\n        \"▁cow\",\n        -11.620142936706543\n      ],\n      [\n        \"▁integrity\",\n        -11.620210647583008\n      ],\n      [\n        \"▁(18\",\n        -11.620217323303223\n      ],\n      [\n        \"▁totul\",\n        -11.62024211883545\n      ],\n      [\n        \"jack\",\n        -11.620373725891113\n      ],\n      [\n        \"▁privire\",\n        -11.620588302612305\n      ],\n      [\n        \"▁terme\",\n        -11.620752334594727\n      ],\n      [\n        \"▁execution\",\n        -11.620781898498535\n      ],\n      [\n        \"▁organism\",\n        -11.620838165283203\n      ],\n      [\n        \"▁führen\",\n        -11.620853424072266\n      ],\n      [\n        \"▁patron\",\n        -11.620940208435059\n      ],\n      [\n        \"▁appreciated\",\n        -11.62096881866455\n      ],\n      [\n        \"liant\",\n        -11.62100601196289\n      ],\n      [\n        \"▁Solar\",\n        -11.621055603027344\n      ],\n      [\n        \"▁vinyl\",\n        -11.621134757995605\n      ],\n      [\n        \"▁treasure\",\n        -11.621137619018555\n      ],\n      [\n        \"▁retro\",\n        -11.621167182922363\n      ],\n      [\n        \"▁bout\",\n        -11.621174812316895\n      ],\n      [\n        \"lab\",\n        -11.621183395385742\n      ],\n      [\n        \"▁dimension\",\n        -11.621394157409668\n      ],\n      [\n        \"called\",\n        -11.62146282196045\n      ],\n      [\n        \"▁intern\",\n        -11.621479034423828\n      ],\n      [\n        \"issement\",\n        -11.62173843383789\n      ],\n      [\n        \"▁Erst\",\n        -11.621837615966797\n      ],\n      [\n        \"▁stellen\",\n        -11.621920585632324\n      ],\n      [\n        \"▁familia\",\n        -11.622069358825684\n      ],\n      [\n        \"▁notion\",\n        -11.622176170349121\n      ],\n      [\n        \"▁Could\",\n        -11.622322082519531\n      ],\n      [\n        \"Getting\",\n        -11.622323036193848\n      ],\n      [\n        \"▁drives\",\n        -11.622397422790527\n      ],\n      [\n        \"▁Israeli\",\n        -11.622520446777344\n      ],\n      [\n        \"▁nations\",\n        -11.622546195983887\n      ],\n      [\n        \"▁duties\",\n        -11.622700691223145\n      ],\n      [\n        \"▁personalized\",\n        -11.622788429260254\n      ],\n      [\n        \"▁weren\",\n        -11.62282657623291\n      ],\n      [\n        \"▁chemicals\",\n        -11.622847557067871\n      ],\n      [\n        \"▁killing\",\n        -11.622913360595703\n      ],\n      [\n        \"▁masa\",\n        -11.622994422912598\n      ],\n      [\n        \"▁parce\",\n        -11.623026847839355\n      ],\n      [\n        \"▁lady\",\n        -11.623178482055664\n      ],\n      [\n        \"ides\",\n        -11.623221397399902\n      ],\n      [\n        \"▁execut\",\n        -11.62340259552002\n      ],\n      [\n        \"▁floral\",\n        -11.62341594696045\n      ],\n      [\n        \"▁Child\",\n        -11.623428344726562\n      ],\n      [\n        \"▁medal\",\n        -11.623503684997559\n      ],\n      [\n        \"▁casa\",\n        -11.623603820800781\n      ],\n      [\n        \"▁enabled\",\n        -11.623650550842285\n      ],\n      [\n        \"12.\",\n        -11.624239921569824\n      ],\n      [\n        \"nger\",\n        -11.624266624450684\n      ],\n      [\n        \"▁vent\",\n        -11.624297142028809\n      ],\n      [\n        \"▁urmă\",\n        -11.624727249145508\n      ],\n      [\n        \"▁Herz\",\n        -11.624835968017578\n      ],\n      [\n        \"▁Jay\",\n        -11.624916076660156\n      ],\n      [\n        \".....\",\n        -11.624942779541016\n      ],\n      [\n        \"▁Kris\",\n        -11.62499713897705\n      ],\n      [\n        \"kenn\",\n        -11.625001907348633\n      ],\n      [\n        \"ress\",\n        -11.625027656555176\n      ],\n      [\n        \"weight\",\n        -11.62519359588623\n      ],\n      [\n        \"▁indicates\",\n        -11.625198364257812\n      ],\n      [\n        \"▁mentor\",\n        -11.625328063964844\n      ],\n      [\n        \"using\",\n        -11.625386238098145\n      ],\n      [\n        \"▁femmes\",\n        -11.625460624694824\n      ],\n      [\n        \"▁Jung\",\n        -11.625528335571289\n      ],\n      [\n        \"▁Send\",\n        -11.625574111938477\n      ],\n      [\n        \"▁seasons\",\n        -11.625906944274902\n      ],\n      [\n        \"▁aesthetic\",\n        -11.625964164733887\n      ],\n      [\n        \"▁Block\",\n        -11.626086235046387\n      ],\n      [\n        \"▁babies\",\n        -11.626150131225586\n      ],\n      [\n        \"zig\",\n        -11.626242637634277\n      ],\n      [\n        \"edge\",\n        -11.626428604125977\n      ],\n      [\n        \"▁alike\",\n        -11.626458168029785\n      ],\n      [\n        \"▁immune\",\n        -11.626609802246094\n      ],\n      [\n        \"▁magical\",\n        -11.626710891723633\n      ],\n      [\n        \"▁Snow\",\n        -11.626748085021973\n      ],\n      [\n        \"▁spacious\",\n        -11.627058982849121\n      ],\n      [\n        \"▁Melbourne\",\n        -11.62706184387207\n      ],\n      [\n        \"order\",\n        -11.627081871032715\n      ],\n      [\n        \"▁timing\",\n        -11.627176284790039\n      ],\n      [\n        \"▁inainte\",\n        -11.627220153808594\n      ],\n      [\n        \"▁width\",\n        -11.627327919006348\n      ],\n      [\n        \"bild\",\n        -11.627386093139648\n      ],\n      [\n        \"Tra\",\n        -11.627429008483887\n      ],\n      [\n        \"▁appliances\",\n        -11.627449989318848\n      ],\n      [\n        \"▁dirt\",\n        -11.627498626708984\n      ],\n      [\n        \"▁Rent\",\n        -11.627689361572266\n      ],\n      [\n        \"responsibilities\",\n        -11.627747535705566\n      ],\n      [\n        \"▁blogs\",\n        -11.62778377532959\n      ],\n      [\n        \"nächsten\",\n        -11.627799034118652\n      ],\n      [\n        \"▁argue\",\n        -11.627928733825684\n      ],\n      [\n        \"▁Resume\",\n        -11.627985954284668\n      ],\n      [\n        \"▁Michel\",\n        -11.628044128417969\n      ],\n      [\n        \"▁terrible\",\n        -11.628092765808105\n      ],\n      [\n        \"graph\",\n        -11.628151893615723\n      ],\n      [\n        \"bird\",\n        -11.628202438354492\n      ],\n      [\n        \"▁Simple\",\n        -11.628457069396973\n      ],\n      [\n        \"nning\",\n        -11.628658294677734\n      ],\n      [\n        \"▁coconut\",\n        -11.628683090209961\n      ],\n      [\n        \"▁comprise\",\n        -11.628787994384766\n      ],\n      [\n        \"heure\",\n        -11.628918647766113\n      ],\n      [\n        \"▁nichts\",\n        -11.628921508789062\n      ],\n      [\n        \"▁manufacture\",\n        -11.628966331481934\n      ],\n      [\n        \"▁Sar\",\n        -11.629011154174805\n      ],\n      [\n        \"green\",\n        -11.629014015197754\n      ],\n      [\n        \"lining\",\n        -11.62910270690918\n      ],\n      [\n        \"▁tremendous\",\n        -11.629128456115723\n      ],\n      [\n        \"▁Wine\",\n        -11.629164695739746\n      ],\n      [\n        \"gir\",\n        -11.629290580749512\n      ],\n      [\n        \"▁Nothing\",\n        -11.629562377929688\n      ],\n      [\n        \"▁Miller\",\n        -11.62957763671875\n      ],\n      [\n        \"▁Schwe\",\n        -11.629712104797363\n      ],\n      [\n        \"zone\",\n        -11.629942893981934\n      ],\n      [\n        \"▁cunoscut\",\n        -11.629964828491211\n      ],\n      [\n        \"rupt\",\n        -11.630166053771973\n      ],\n      [\n        \"kle\",\n        -11.630187034606934\n      ],\n      [\n        \"▁Bucuresti\",\n        -11.630510330200195\n      ],\n      [\n        \"▁Abend\",\n        -11.630574226379395\n      ],\n      [\n        \"▁aura\",\n        -11.630583763122559\n      ],\n      [\n        \"▁Dance\",\n        -11.63073444366455\n      ],\n      [\n        \"▁Wilson\",\n        -11.63086986541748\n      ],\n      [\n        \"icide\",\n        -11.630901336669922\n      ],\n      [\n        \"bai\",\n        -11.630910873413086\n      ],\n      [\n        \"oriented\",\n        -11.63103199005127\n      ],\n      [\n        \"▁celebrated\",\n        -11.631421089172363\n      ],\n      [\n        \"schlag\",\n        -11.631531715393066\n      ],\n      [\n        \"▁10-\",\n        -11.631600379943848\n      ],\n      [\n        \"Unsere\",\n        -11.63167667388916\n      ],\n      [\n        \"énergie\",\n        -11.632009506225586\n      ],\n      [\n        \"▁qualify\",\n        -11.63205623626709\n      ],\n      [\n        \"▁contenu\",\n        -11.632177352905273\n      ],\n      [\n        \"▁Lauf\",\n        -11.63220500946045\n      ],\n      [\n        \"▁einzelne\",\n        -11.632360458374023\n      ],\n      [\n        \"▁Youth\",\n        -11.632415771484375\n      ],\n      [\n        \"explains\",\n        -11.632601737976074\n      ],\n      [\n        \"grat\",\n        -11.632782936096191\n      ],\n      [\n        \"▁72\",\n        -11.632804870605469\n      ],\n      [\n        \"labor\",\n        -11.632885932922363\n      ],\n      [\n        \"2018\",\n        -11.632940292358398\n      ],\n      [\n        \"▁Dank\",\n        -11.633149147033691\n      ],\n      [\n        \"▁Hey\",\n        -11.633523941040039\n      ],\n      [\n        \"▁refuse\",\n        -11.633536338806152\n      ],\n      [\n        \"▁graduated\",\n        -11.633599281311035\n      ],\n      [\n        \"▁României\",\n        -11.633627891540527\n      ],\n      [\n        \"punkt\",\n        -11.633807182312012\n      ],\n      [\n        \"▁regulation\",\n        -11.633834838867188\n      ],\n      [\n        \"Bru\",\n        -11.633842468261719\n      ],\n      [\n        \"▁Side\",\n        -11.633891105651855\n      ],\n      [\n        \"▁sol\",\n        -11.633970260620117\n      ],\n      [\n        \"▁extraordinary\",\n        -11.634182929992676\n      ],\n      [\n        \"▁ging\",\n        -11.634247779846191\n      ],\n      [\n        \"▁Creative\",\n        -11.634299278259277\n      ],\n      [\n        \"▁expanding\",\n        -11.634349822998047\n      ],\n      [\n        \"▁problème\",\n        -11.63444995880127\n      ],\n      [\n        \"▁Reserve\",\n        -11.63459300994873\n      ],\n      [\n        \"auteur\",\n        -11.634642601013184\n      ],\n      [\n        \"sphere\",\n        -11.634657859802246\n      ],\n      [\n        \"season\",\n        -11.634716987609863\n      ],\n      [\n        \"frei\",\n        -11.634756088256836\n      ],\n      [\n        \"▁8,\",\n        -11.634765625\n      ],\n      [\n        \"▁filing\",\n        -11.634810447692871\n      ],\n      [\n        \"▁Complete\",\n        -11.635017395019531\n      ],\n      [\n        \"▁revolution\",\n        -11.635035514831543\n      ],\n      [\n        \"▁unele\",\n        -11.63520622253418\n      ],\n      [\n        \"/8\",\n        -11.635272979736328\n      ],\n      [\n        \"istes\",\n        -11.635310173034668\n      ],\n      [\n        \"backed\",\n        -11.635400772094727\n      ],\n      [\n        \"shirt\",\n        -11.635554313659668\n      ],\n      [\n        \"▁Details\",\n        -11.635673522949219\n      ],\n      [\n        \"rod\",\n        -11.635695457458496\n      ],\n      [\n        \"▁pod\",\n        -11.63582992553711\n      ],\n      [\n        \"▁operators\",\n        -11.635921478271484\n      ],\n      [\n        \"was\",\n        -11.635930061340332\n      ],\n      [\n        \"hou\",\n        -11.63594913482666\n      ],\n      [\n        \"▁Coach\",\n        -11.636075019836426\n      ],\n      [\n        \"irii\",\n        -11.636138916015625\n      ],\n      [\n        \"▁ordinary\",\n        -11.636186599731445\n      ],\n      [\n        \"Institut\",\n        -11.63620662689209\n      ],\n      [\n        \"▁Flash\",\n        -11.63633918762207\n      ],\n      [\n        \"0-\",\n        -11.636537551879883\n      ],\n      [\n        \"▁flavour\",\n        -11.6367769241333\n      ],\n      [\n        \"specific\",\n        -11.636906623840332\n      ],\n      [\n        \"▁landing\",\n        -11.636930465698242\n      ],\n      [\n        \"▁geo\",\n        -11.636935234069824\n      ],\n      [\n        \"▁legend\",\n        -11.636983871459961\n      ],\n      [\n        \"vari\",\n        -11.63703441619873\n      ],\n      [\n        \"rop\",\n        -11.637084007263184\n      ],\n      [\n        \"▁Excel\",\n        -11.6370849609375\n      ],\n      [\n        \"▁Flu\",\n        -11.637203216552734\n      ],\n      [\n        \"▁intent\",\n        -11.637582778930664\n      ],\n      [\n        \"▁Deep\",\n        -11.637594223022461\n      ],\n      [\n        \"▁Kor\",\n        -11.63763427734375\n      ],\n      [\n        \"▁Philadelphia\",\n        -11.637914657592773\n      ],\n      [\n        \"▁rând\",\n        -11.63800048828125\n      ],\n      [\n        \"▁USD\",\n        -11.638033866882324\n      ],\n      [\n        \"laden\",\n        -11.63803482055664\n      ],\n      [\n        \"▁Hin\",\n        -11.638047218322754\n      ],\n      [\n        \"hap\",\n        -11.638197898864746\n      ],\n      [\n        \"▁thorough\",\n        -11.638227462768555\n      ],\n      [\n        \"▁oferit\",\n        -11.63826847076416\n      ],\n      [\n        \"kind\",\n        -11.63831615447998\n      ],\n      [\n        \"▁Cancer\",\n        -11.638428688049316\n      ],\n      [\n        \"apo\",\n        -11.638596534729004\n      ],\n      [\n        \"▁valve\",\n        -11.638650894165039\n      ],\n      [\n        \"▁encouraging\",\n        -11.63884449005127\n      ],\n      [\n        \"▁sûr\",\n        -11.638904571533203\n      ],\n      [\n        \"shing\",\n        -11.638981819152832\n      ],\n      [\n        \"▁49\",\n        -11.639132499694824\n      ],\n      [\n        \"gov\",\n        -11.639142990112305\n      ],\n      [\n        \"▁Five\",\n        -11.63933277130127\n      ],\n      [\n        \"▁stroke\",\n        -11.639344215393066\n      ],\n      [\n        \"▁apă\",\n        -11.639398574829102\n      ],\n      [\n        \"▁gambling\",\n        -11.639543533325195\n      ],\n      [\n        \"▁nord\",\n        -11.63963508605957\n      ],\n      [\n        \"onal\",\n        -11.639691352844238\n      ],\n      [\n        \"▁captured\",\n        -11.63979721069336\n      ],\n      [\n        \"▁lucruri\",\n        -11.640068054199219\n      ],\n      [\n        \"serait\",\n        -11.640192985534668\n      ],\n      [\n        \"▁Members\",\n        -11.640265464782715\n      ],\n      [\n        \"ital\",\n        -11.640275955200195\n      ],\n      [\n        \"▁mounted\",\n        -11.640475273132324\n      ],\n      [\n        \"▁opens\",\n        -11.640792846679688\n      ],\n      [\n        \"▁Marie\",\n        -11.640861511230469\n      ],\n      [\n        \"Tech\",\n        -11.640902519226074\n      ],\n      [\n        \"▁wishes\",\n        -11.641016006469727\n      ],\n      [\n        \"▁regards\",\n        -11.641073226928711\n      ],\n      [\n        \"going\",\n        -11.641156196594238\n      ],\n      [\n        \"Opti\",\n        -11.641250610351562\n      ],\n      [\n        \"▁femei\",\n        -11.641331672668457\n      ],\n      [\n        \"▁Fish\",\n        -11.64142894744873\n      ],\n      [\n        \"▁mount\",\n        -11.641800880432129\n      ],\n      [\n        \"▁Hunt\",\n        -11.641887664794922\n      ],\n      [\n        \"▁probabil\",\n        -11.64205265045166\n      ],\n      [\n        \"▁assured\",\n        -11.642191886901855\n      ],\n      [\n        \"pho\",\n        -11.642230033874512\n      ],\n      [\n        \"▁manufactured\",\n        -11.642313003540039\n      ],\n      [\n        \"▁realistic\",\n        -11.642437934875488\n      ],\n      [\n        \"ații\",\n        -11.642580032348633\n      ],\n      [\n        \"▁Planning\",\n        -11.642598152160645\n      ],\n      [\n        \"▁român\",\n        -11.642645835876465\n      ],\n      [\n        \"ggy\",\n        -11.642669677734375\n      ],\n      [\n        \"▁produces\",\n        -11.642696380615234\n      ],\n      [\n        \"▁reminder\",\n        -11.64284896850586\n      ],\n      [\n        \"TION\",\n        -11.642868041992188\n      ],\n      [\n        \"▁brake\",\n        -11.642909049987793\n      ],\n      [\n        \"▁pla\",\n        -11.643172264099121\n      ],\n      [\n        \"▁Premium\",\n        -11.643270492553711\n      ],\n      [\n        \"▁carb\",\n        -11.643310546875\n      ],\n      [\n        \"▁shine\",\n        -11.643390655517578\n      ],\n      [\n        \"▁carrier\",\n        -11.643492698669434\n      ],\n      [\n        \"▁poverty\",\n        -11.64350414276123\n      ],\n      [\n        \"▁effectiveness\",\n        -11.6436128616333\n      ],\n      [\n        \"administr\",\n        -11.643655776977539\n      ],\n      [\n        \"▁Chamber\",\n        -11.643658638000488\n      ],\n      [\n        \"▁suntem\",\n        -11.64376163482666\n      ],\n      [\n        \"▁noastră\",\n        -11.643855094909668\n      ],\n      [\n        \"▁sofort\",\n        -11.643877983093262\n      ],\n      [\n        \"▁moisture\",\n        -11.644058227539062\n      ],\n      [\n        \"limb\",\n        -11.6441011428833\n      ],\n      [\n        \"entre\",\n        -11.644328117370605\n      ],\n      [\n        \"▁SD\",\n        -11.644330978393555\n      ],\n      [\n        \"▁BC\",\n        -11.644539833068848\n      ],\n      [\n        \"▁selecting\",\n        -11.6445951461792\n      ],\n      [\n        \"achieving\",\n        -11.644673347473145\n      ],\n      [\n        \"info\",\n        -11.644735336303711\n      ],\n      [\n        \"▁membres\",\n        -11.644983291625977\n      ],\n      [\n        \"▁shoe\",\n        -11.645014762878418\n      ],\n      [\n        \"▁locate\",\n        -11.645065307617188\n      ],\n      [\n        \"▁assignment\",\n        -11.645085334777832\n      ],\n      [\n        \"lern\",\n        -11.645283699035645\n      ],\n      [\n        \"▁defeat\",\n        -11.645406723022461\n      ],\n      [\n        \"▁endless\",\n        -11.645458221435547\n      ],\n      [\n        \"▁Stunden\",\n        -11.645523071289062\n      ],\n      [\n        \"то\",\n        -11.645561218261719\n      ],\n      [\n        \"▁mur\",\n        -11.645586013793945\n      ],\n      [\n        \"▁wissen\",\n        -11.645844459533691\n      ],\n      [\n        \"aime\",\n        -11.645915031433105\n      ],\n      [\n        \"1-2\",\n        -11.646056175231934\n      ],\n      [\n        \"▁femme\",\n        -11.646212577819824\n      ],\n      [\n        \"robe\",\n        -11.646468162536621\n      ],\n      [\n        \"▁embrace\",\n        -11.64647102355957\n      ],\n      [\n        \"▁baseball\",\n        -11.646614074707031\n      ],\n      [\n        \"▁hunting\",\n        -11.64663314819336\n      ],\n      [\n        \"betrieb\",\n        -11.646790504455566\n      ],\n      [\n        \"▁gardens\",\n        -11.647045135498047\n      ],\n      [\n        \"▁risc\",\n        -11.647096633911133\n      ],\n      [\n        \"▁Cri\",\n        -11.647263526916504\n      ],\n      [\n        \"best\",\n        -11.647506713867188\n      ],\n      [\n        \"▁Audio\",\n        -11.647621154785156\n      ],\n      [\n        \"▁intens\",\n        -11.647659301757812\n      ],\n      [\n        \"▁Round\",\n        -11.647744178771973\n      ],\n      [\n        \"▁fireplace\",\n        -11.6478271484375\n      ],\n      [\n        \"▁dozen\",\n        -11.647912979125977\n      ],\n      [\n        \"▁hospitals\",\n        -11.64802360534668\n      ],\n      [\n        \"▁profits\",\n        -11.648076057434082\n      ],\n      [\n        \"▁Mail\",\n        -11.64811897277832\n      ],\n      [\n        \"obtenir\",\n        -11.648191452026367\n      ],\n      [\n        \"▁Ross\",\n        -11.648241996765137\n      ],\n      [\n        \"bun\",\n        -11.648573875427246\n      ],\n      [\n        \"polar\",\n        -11.648688316345215\n      ],\n      [\n        \"▁reflection\",\n        -11.648873329162598\n      ],\n      [\n        \"▁fut\",\n        -11.648992538452148\n      ],\n      [\n        \"phon\",\n        -11.649017333984375\n      ],\n      [\n        \"deck\",\n        -11.649094581604004\n      ],\n      [\n        \"renowned\",\n        -11.649188041687012\n      ],\n      [\n        \"▁cate\",\n        -11.649308204650879\n      ],\n      [\n        \"▁decorative\",\n        -11.6494722366333\n      ],\n      [\n        \"ieri\",\n        -11.64957332611084\n      ],\n      [\n        \"▁Tap\",\n        -11.64958381652832\n      ],\n      [\n        \"▁Dallas\",\n        -11.649600982666016\n      ],\n      [\n        \"rik\",\n        -11.649665832519531\n      ],\n      [\n        \"▁pied\",\n        -11.649727821350098\n      ],\n      [\n        \"rés\",\n        -11.649821281433105\n      ],\n      [\n        \"ppy\",\n        -11.650137901306152\n      ],\n      [\n        \"▁bitte\",\n        -11.650188446044922\n      ],\n      [\n        \"▁cave\",\n        -11.650257110595703\n      ],\n      [\n        \"▁rescue\",\n        -11.650559425354004\n      ],\n      [\n        \"▁Hilfe\",\n        -11.650714874267578\n      ],\n      [\n        \"▁Jason\",\n        -11.650786399841309\n      ],\n      [\n        \"▁Nations\",\n        -11.650838851928711\n      ],\n      [\n        \"▁profil\",\n        -11.650938987731934\n      ],\n      [\n        \"▁Atlantic\",\n        -11.651105880737305\n      ],\n      [\n        \"▁rub\",\n        -11.651126861572266\n      ],\n      [\n        \"▁collaborative\",\n        -11.65113353729248\n      ],\n      [\n        \"étude\",\n        -11.651150703430176\n      ],\n      [\n        \"▁Workshop\",\n        -11.651389122009277\n      ],\n      [\n        \"nez\",\n        -11.651628494262695\n      ],\n      [\n        \"▁chacun\",\n        -11.651714324951172\n      ],\n      [\n        \"▁Too\",\n        -11.65211296081543\n      ],\n      [\n        \"App\",\n        -11.652313232421875\n      ],\n      [\n        \"▁conseil\",\n        -11.652399063110352\n      ],\n      [\n        \"▁signals\",\n        -11.652474403381348\n      ],\n      [\n        \"▁Dead\",\n        -11.652497291564941\n      ],\n      [\n        \"▁Austria\",\n        -11.652522087097168\n      ],\n      [\n        \"▁slots\",\n        -11.652579307556152\n      ],\n      [\n        \"▁Dies\",\n        -11.652623176574707\n      ],\n      [\n        \"raj\",\n        -11.652629852294922\n      ],\n      [\n        \"stick\",\n        -11.652833938598633\n      ],\n      [\n        \"▁jaw\",\n        -11.653030395507812\n      ],\n      [\n        \"▁lounge\",\n        -11.653059005737305\n      ],\n      [\n        \"curi\",\n        -11.653359413146973\n      ],\n      [\n        \"nem\",\n        -11.653456687927246\n      ],\n      [\n        \"▁Cluj\",\n        -11.653512954711914\n      ],\n      [\n        \"▁rapide\",\n        -11.653584480285645\n      ],\n      [\n        \"▁companion\",\n        -11.653716087341309\n      ],\n      [\n        \"▁WE\",\n        -11.653879165649414\n      ],\n      [\n        \"▁bord\",\n        -11.65389347076416\n      ],\n      [\n        \"ody\",\n        -11.654045104980469\n      ],\n      [\n        \"gru\",\n        -11.654057502746582\n      ],\n      [\n        \"▁46\",\n        -11.654410362243652\n      ],\n      [\n        \"kra\",\n        -11.654717445373535\n      ],\n      [\n        \"eller\",\n        -11.65477180480957\n      ],\n      [\n        \"naire\",\n        -11.65511703491211\n      ],\n      [\n        \"hose\",\n        -11.655253410339355\n      ],\n      [\n        \"▁Atlanta\",\n        -11.655254364013672\n      ],\n      [\n        \"▁violent\",\n        -11.65530776977539\n      ],\n      [\n        \"▁imagination\",\n        -11.655352592468262\n      ],\n      [\n        \"▁reward\",\n        -11.655389785766602\n      ],\n      [\n        \"▁Korean\",\n        -11.655441284179688\n      ],\n      [\n        \"▁branches\",\n        -11.655501365661621\n      ],\n      [\n        \"▁GPS\",\n        -11.655625343322754\n      ],\n      [\n        \"glo\",\n        -11.655633926391602\n      ],\n      [\n        \"▁condo\",\n        -11.655705451965332\n      ],\n      [\n        \"▁Investment\",\n        -11.655765533447266\n      ],\n      [\n        \"▁involvement\",\n        -11.655813217163086\n      ],\n      [\n        \"▁trap\",\n        -11.655829429626465\n      ],\n      [\n        \"▁schön\",\n        -11.655872344970703\n      ],\n      [\n        \"▁ofera\",\n        -11.655933380126953\n      ],\n      [\n        \"▁unterschiedlich\",\n        -11.65596866607666\n      ],\n      [\n        \"Net\",\n        -11.655987739562988\n      ],\n      [\n        \"▁predict\",\n        -11.656113624572754\n      ],\n      [\n        \"identifying\",\n        -11.656309127807617\n      ],\n      [\n        \"▁noir\",\n        -11.6566162109375\n      ],\n      [\n        \"kos\",\n        -11.656816482543945\n      ],\n      [\n        \"poz\",\n        -11.656816482543945\n      ],\n      [\n        \"▁11,\",\n        -11.65698528289795\n      ],\n      [\n        \"▁fitted\",\n        -11.657384872436523\n      ],\n      [\n        \"MU\",\n        -11.657469749450684\n      ],\n      [\n        \"TT\",\n        -11.657645225524902\n      ],\n      [\n        \"▁vrea\",\n        -11.657846450805664\n      ],\n      [\n        \"▁wound\",\n        -11.657864570617676\n      ],\n      [\n        \"lac\",\n        -11.657971382141113\n      ],\n      [\n        \"▁purchases\",\n        -11.658409118652344\n      ],\n      [\n        \"▁Cape\",\n        -11.65843677520752\n      ],\n      [\n        \"▁Foto\",\n        -11.658537864685059\n      ],\n      [\n        \"▁acres\",\n        -11.65865707397461\n      ],\n      [\n        \"▁nec\",\n        -11.658677101135254\n      ],\n      [\n        \"▁burning\",\n        -11.659050941467285\n      ],\n      [\n        \"conf\",\n        -11.659457206726074\n      ],\n      [\n        \"▁browse\",\n        -11.659486770629883\n      ],\n      [\n        \"ural\",\n        -11.659762382507324\n      ],\n      [\n        \"▁Ah\",\n        -11.659841537475586\n      ],\n      [\n        \"▁stellt\",\n        -11.65992259979248\n      ],\n      [\n        \"▁ratings\",\n        -11.660012245178223\n      ],\n      [\n        \"▁Bowl\",\n        -11.660027503967285\n      ],\n      [\n        \"▁grav\",\n        -11.660289764404297\n      ],\n      [\n        \"titi\",\n        -11.66048526763916\n      ],\n      [\n        \"▁prêt\",\n        -11.66075325012207\n      ],\n      [\n        \"▁fallen\",\n        -11.660818099975586\n      ],\n      [\n        \"▁nombreuses\",\n        -11.660940170288086\n      ],\n      [\n        \"train\",\n        -11.660953521728516\n      ],\n      [\n        \"ène\",\n        -11.661009788513184\n      ],\n      [\n        \"Aceasta\",\n        -11.661091804504395\n      ],\n      [\n        \"▁drill\",\n        -11.661421775817871\n      ],\n      [\n        \"▁Exam\",\n        -11.661477088928223\n      ],\n      [\n        \"▁Furniture\",\n        -11.661651611328125\n      ],\n      [\n        \"eanu\",\n        -11.661919593811035\n      ],\n      [\n        \"étant\",\n        -11.66230297088623\n      ],\n      [\n        \"sville\",\n        -11.662391662597656\n      ],\n      [\n        \"▁swim\",\n        -11.662796020507812\n      ],\n      [\n        \"▁routes\",\n        -11.662826538085938\n      ],\n      [\n        \"INE\",\n        -11.662860870361328\n      ],\n      [\n        \"▁Por\",\n        -11.662976264953613\n      ],\n      [\n        \"ither\",\n        -11.663168907165527\n      ],\n      [\n        \"▁optim\",\n        -11.663180351257324\n      ],\n      [\n        \"▁lua\",\n        -11.66331958770752\n      ],\n      [\n        \"▁myth\",\n        -11.663491249084473\n      ],\n      [\n        \"▁Bett\",\n        -11.6635103225708\n      ],\n      [\n        \"chim\",\n        -11.66355037689209\n      ],\n      [\n        \"▁cyber\",\n        -11.663553237915039\n      ],\n      [\n        \"▁engineer\",\n        -11.663825035095215\n      ],\n      [\n        \"▁exploration\",\n        -11.663918495178223\n      ],\n      [\n        \"arranged\",\n        -11.663973808288574\n      ],\n      [\n        \"▁aged\",\n        -11.663993835449219\n      ],\n      [\n        \"▁beau\",\n        -11.664024353027344\n      ],\n      [\n        \"OUT\",\n        -11.66402530670166\n      ],\n      [\n        \"▁Minnesota\",\n        -11.664031982421875\n      ],\n      [\n        \"tress\",\n        -11.664407730102539\n      ],\n      [\n        \"▁Commercial\",\n        -11.664509773254395\n      ],\n      [\n        \"▁inspiring\",\n        -11.66462516784668\n      ],\n      [\n        \"▁Mare\",\n        -11.664725303649902\n      ],\n      [\n        \"apa\",\n        -11.665140151977539\n      ],\n      [\n        \"▁ignore\",\n        -11.6651611328125\n      ],\n      [\n        \"▁gros\",\n        -11.665186882019043\n      ],\n      [\n        \"▁measurement\",\n        -11.66531753540039\n      ],\n      [\n        \"ager\",\n        -11.665395736694336\n      ],\n      [\n        \"intele\",\n        -11.665966987609863\n      ],\n      [\n        \"▁suspension\",\n        -11.666180610656738\n      ],\n      [\n        \"▁cultures\",\n        -11.666211128234863\n      ],\n      [\n        \"▁Wow\",\n        -11.666231155395508\n      ],\n      [\n        \"▁pushing\",\n        -11.666363716125488\n      ],\n      [\n        \"▁bands\",\n        -11.666438102722168\n      ],\n      [\n        \"nage\",\n        -11.666450500488281\n      ],\n      [\n        \"▁Math\",\n        -11.666515350341797\n      ],\n      [\n        \"comb\",\n        -11.66658878326416\n      ],\n      [\n        \"▁créer\",\n        -11.66658878326416\n      ],\n      [\n        \"▁Lewis\",\n        -11.666685104370117\n      ],\n      [\n        \"▁VI\",\n        -11.66678524017334\n      ],\n      [\n        \"emploi\",\n        -11.666791915893555\n      ],\n      [\n        \"▁elections\",\n        -11.666890144348145\n      ],\n      [\n        \"▁logic\",\n        -11.666982650756836\n      ],\n      [\n        \"▁unlike\",\n        -11.667122840881348\n      ],\n      [\n        \"▁Matthew\",\n        -11.66743278503418\n      ],\n      [\n        \"▁pă\",\n        -11.667486190795898\n      ],\n      [\n        \"oxy\",\n        -11.667620658874512\n      ],\n      [\n        \"équipe\",\n        -11.667717933654785\n      ],\n      [\n        \"▁worden\",\n        -11.668088912963867\n      ],\n      [\n        \"dev\",\n        -11.668258666992188\n      ],\n      [\n        \"▁Massachusetts\",\n        -11.668691635131836\n      ],\n      [\n        \"▁Return\",\n        -11.668695449829102\n      ],\n      [\n        \"▁Friends\",\n        -11.66891098022461\n      ],\n      [\n        \"▁movements\",\n        -11.66894245147705\n      ],\n      [\n        \"chie\",\n        -11.668964385986328\n      ],\n      [\n        \"rak\",\n        -11.669017791748047\n      ],\n      [\n        \"▁Fit\",\n        -11.66904354095459\n      ],\n      [\n        \"▁copil\",\n        -11.669113159179688\n      ],\n      [\n        \"iunii\",\n        -11.669188499450684\n      ],\n      [\n        \"▁intensive\",\n        -11.669234275817871\n      ],\n      [\n        \"▁rug\",\n        -11.669452667236328\n      ],\n      [\n        \"lichkeit\",\n        -11.669686317443848\n      ],\n      [\n        \"kov\",\n        -11.669724464416504\n      ],\n      [\n        \"▁pense\",\n        -11.66978645324707\n      ],\n      [\n        \"pop\",\n        -11.66978931427002\n      ],\n      [\n        \"▁closet\",\n        -11.669865608215332\n      ],\n      [\n        \"▁prevention\",\n        -11.669920921325684\n      ],\n      [\n        \"▁Deb\",\n        -11.670256614685059\n      ],\n      [\n        \"▁devant\",\n        -11.670430183410645\n      ],\n      [\n        \"▁construit\",\n        -11.670440673828125\n      ],\n      [\n        \"▁breaks\",\n        -11.67082405090332\n      ],\n      [\n        \"otic\",\n        -11.670886993408203\n      ],\n      [\n        \"▁dig\",\n        -11.67088794708252\n      ],\n      [\n        \"▁près\",\n        -11.670930862426758\n      ],\n      [\n        \"chte\",\n        -11.671029090881348\n      ],\n      [\n        \"▁Chat\",\n        -11.671029090881348\n      ],\n      [\n        \"wel\",\n        -11.671219825744629\n      ],\n      [\n        \"▁edges\",\n        -11.671272277832031\n      ],\n      [\n        \"▁keen\",\n        -11.671419143676758\n      ],\n      [\n        \"▁infant\",\n        -11.671716690063477\n      ],\n      [\n        \"▁Hills\",\n        -11.6719388961792\n      ],\n      [\n        \"▁grounds\",\n        -11.671969413757324\n      ],\n      [\n        \"▁hab\",\n        -11.672039031982422\n      ],\n      [\n        \"▁Mun\",\n        -11.67215347290039\n      ],\n      [\n        \"▁references\",\n        -11.672215461730957\n      ],\n      [\n        \"▁hearts\",\n        -11.672446250915527\n      ],\n      [\n        \"exprim\",\n        -11.672487258911133\n      ],\n      [\n        \"▁tratament\",\n        -11.672553062438965\n      ],\n      [\n        \"LD\",\n        -11.67258358001709\n      ],\n      [\n        \"ssel\",\n        -11.67275333404541\n      ],\n      [\n        \"cover\",\n        -11.672782897949219\n      ],\n      [\n        \"bridge\",\n        -11.672837257385254\n      ],\n      [\n        \"▁Wein\",\n        -11.672924995422363\n      ],\n      [\n        \"▁voiture\",\n        -11.673035621643066\n      ],\n      [\n        \"▁Gemeinde\",\n        -11.67313289642334\n      ],\n      [\n        \"AI\",\n        -11.673169136047363\n      ],\n      [\n        \"▁renovation\",\n        -11.673264503479004\n      ],\n      [\n        \"bid\",\n        -11.673285484313965\n      ],\n      [\n        \"▁Reading\",\n        -11.673481941223145\n      ],\n      [\n        \"▁Gor\",\n        -11.673490524291992\n      ],\n      [\n        \"fur\",\n        -11.673527717590332\n      ],\n      [\n        \"▁Yoga\",\n        -11.673544883728027\n      ],\n      [\n        \"▁exclusively\",\n        -11.673630714416504\n      ],\n      [\n        \"▁emissions\",\n        -11.67385482788086\n      ],\n      [\n        \"ète\",\n        -11.673905372619629\n      ],\n      [\n        \"▁glasses\",\n        -11.674055099487305\n      ],\n      [\n        \"▁organizat\",\n        -11.674135208129883\n      ],\n      [\n        \"▁washing\",\n        -11.67415714263916\n      ],\n      [\n        \"▁Audi\",\n        -11.674173355102539\n      ],\n      [\n        \"▁Labor\",\n        -11.674331665039062\n      ],\n      [\n        \"▁legacy\",\n        -11.674381256103516\n      ],\n      [\n        \"▁abstract\",\n        -11.674519538879395\n      ],\n      [\n        \"▁knowledgeable\",\n        -11.674601554870605\n      ],\n      [\n        \"▁Glo\",\n        -11.674795150756836\n      ],\n      [\n        \"▁pregnant\",\n        -11.67481803894043\n      ],\n      [\n        \"liter\",\n        -11.674851417541504\n      ],\n      [\n        \"▁paintings\",\n        -11.67522144317627\n      ],\n      [\n        \"▁tête\",\n        -11.675244331359863\n      ],\n      [\n        \"voy\",\n        -11.675626754760742\n      ],\n      [\n        \"▁Jacob\",\n        -11.675667762756348\n      ],\n      [\n        \"▁dressing\",\n        -11.675679206848145\n      ],\n      [\n        \"▁provisions\",\n        -11.675768852233887\n      ],\n      [\n        \"bahn\",\n        -11.675870895385742\n      ],\n      [\n        \"▁depict\",\n        -11.675875663757324\n      ],\n      [\n        \"AW\",\n        -11.676068305969238\n      ],\n      [\n        \"▁bleibt\",\n        -11.676163673400879\n      ],\n      [\n        \"AND\",\n        -11.676292419433594\n      ],\n      [\n        \"▁fünf\",\n        -11.676386833190918\n      ],\n      [\n        \"▁hosts\",\n        -11.676426887512207\n      ],\n      [\n        \"vas\",\n        -11.676708221435547\n      ],\n      [\n        \"DO\",\n        -11.67674732208252\n      ],\n      [\n        \"▁max\",\n        -11.676753997802734\n      ],\n      [\n        \"▁contributed\",\n        -11.676774978637695\n      ],\n      [\n        \"roz\",\n        -11.676796913146973\n      ],\n      [\n        \"▁deschis\",\n        -11.676800727844238\n      ],\n      [\n        \"itaire\",\n        -11.676809310913086\n      ],\n      [\n        \"tube\",\n        -11.676959991455078\n      ],\n      [\n        \"▁Beck\",\n        -11.676959991455078\n      ],\n      [\n        \"▁curious\",\n        -11.677130699157715\n      ],\n      [\n        \"▁waves\",\n        -11.677178382873535\n      ],\n      [\n        \"▁regret\",\n        -11.677248001098633\n      ],\n      [\n        \"FO\",\n        -11.677326202392578\n      ],\n      [\n        \"droit\",\n        -11.67734146118164\n      ],\n      [\n        \"rö\",\n        -11.677565574645996\n      ],\n      [\n        \"▁Panel\",\n        -11.677624702453613\n      ],\n      [\n        \"▁pile\",\n        -11.677660942077637\n      ],\n      [\n        \"▁installing\",\n        -11.677674293518066\n      ],\n      [\n        \"▁Intr\",\n        -11.677797317504883\n      ],\n      [\n        \"nung\",\n        -11.677823066711426\n      ],\n      [\n        \"▁Outdoor\",\n        -11.677855491638184\n      ],\n      [\n        \"▁generator\",\n        -11.67786693572998\n      ],\n      [\n        \"▁zahlreiche\",\n        -11.677868843078613\n      ],\n      [\n        \"▁Third\",\n        -11.67813491821289\n      ],\n      [\n        \"frac\",\n        -11.678180694580078\n      ],\n      [\n        \"ovi\",\n        -11.678236961364746\n      ],\n      [\n        \"▁Casa\",\n        -11.678374290466309\n      ],\n      [\n        \"▁stomach\",\n        -11.678393363952637\n      ],\n      [\n        \"▁Lincoln\",\n        -11.67844009399414\n      ],\n      [\n        \"▁Electronic\",\n        -11.678584098815918\n      ],\n      [\n        \"coding\",\n        -11.67895221710205\n      ],\n      [\n        \"2017\",\n        -11.67900276184082\n      ],\n      [\n        \"▁friendship\",\n        -11.679238319396973\n      ],\n      [\n        \"ried\",\n        -11.679250717163086\n      ],\n      [\n        \"но\",\n        -11.679265022277832\n      ],\n      [\n        \"▁tail\",\n        -11.679267883300781\n      ],\n      [\n        \"▁petits\",\n        -11.679308891296387\n      ],\n      [\n        \"▁réseau\",\n        -11.679696083068848\n      ],\n      [\n        \"▁churches\",\n        -11.679999351501465\n      ],\n      [\n        \"▁marketplace\",\n        -11.680062294006348\n      ],\n      [\n        \"▁Pool\",\n        -11.680318832397461\n      ],\n      [\n        \"▁popularity\",\n        -11.680455207824707\n      ],\n      [\n        \"▁sprijin\",\n        -11.680496215820312\n      ],\n      [\n        \"▁Od\",\n        -11.680527687072754\n      ],\n      [\n        \"▁Transfer\",\n        -11.680562973022461\n      ],\n      [\n        \"▁fake\",\n        -11.680791854858398\n      ],\n      [\n        \"▁9,\",\n        -11.681007385253906\n      ],\n      [\n        \"▁weit\",\n        -11.681264877319336\n      ],\n      [\n        \"▁relaxed\",\n        -11.681415557861328\n      ],\n      [\n        \"pig\",\n        -11.68161678314209\n      ],\n      [\n        \"▁Lauren\",\n        -11.68166732788086\n      ],\n      [\n        \"gesetzt\",\n        -11.681669235229492\n      ],\n      [\n        \"▁Clar\",\n        -11.681694984436035\n      ],\n      [\n        \"▁unlikely\",\n        -11.681731224060059\n      ],\n      [\n        \"color\",\n        -11.681832313537598\n      ],\n      [\n        \"▁spouse\",\n        -11.681843757629395\n      ],\n      [\n        \"▁facile\",\n        -11.681859970092773\n      ],\n      [\n        \"▁Speed\",\n        -11.681872367858887\n      ],\n      [\n        \"KE\",\n        -11.682230949401855\n      ],\n      [\n        \"▁PO\",\n        -11.68231201171875\n      ],\n      [\n        \"▁Channel\",\n        -11.682321548461914\n      ],\n      [\n        \"argent\",\n        -11.682356834411621\n      ],\n      [\n        \"▁Making\",\n        -11.682430267333984\n      ],\n      [\n        \"▁Coll\",\n        -11.682585716247559\n      ],\n      [\n        \"cci\",\n        -11.682721138000488\n      ],\n      [\n        \"corresponding\",\n        -11.68300724029541\n      ],\n      [\n        \"▁heaven\",\n        -11.683160781860352\n      ],\n      [\n        \"ţă\",\n        -11.68319320678711\n      ],\n      [\n        \"▁darüber\",\n        -11.683236122131348\n      ],\n      [\n        \"acted\",\n        -11.683420181274414\n      ],\n      [\n        \"only\",\n        -11.683460235595703\n      ],\n      [\n        \"▁slight\",\n        -11.683465003967285\n      ],\n      [\n        \"lian\",\n        -11.68348503112793\n      ],\n      [\n        \"flă\",\n        -11.683510780334473\n      ],\n      [\n        \"▁vulnerable\",\n        -11.683530807495117\n      ],\n      [\n        \"▁creator\",\n        -11.68356704711914\n      ],\n      [\n        \"▁protecting\",\n        -11.68360424041748\n      ],\n      [\n        \"writing\",\n        -11.68360710144043\n      ],\n      [\n        \"▁Ter\",\n        -11.68387222290039\n      ],\n      [\n        \"▁barb\",\n        -11.683987617492676\n      ],\n      [\n        \"▁dată\",\n        -11.683995246887207\n      ],\n      [\n        \"▁Screen\",\n        -11.684052467346191\n      ],\n      [\n        \"▁BBC\",\n        -11.684082984924316\n      ],\n      [\n        \"Col\",\n        -11.684206008911133\n      ],\n      [\n        \"fung\",\n        -11.684453964233398\n      ],\n      [\n        \"▁dreptul\",\n        -11.684494972229004\n      ],\n      [\n        \"derived\",\n        -11.684538841247559\n      ],\n      [\n        \"▁designated\",\n        -11.684553146362305\n      ],\n      [\n        \"▁interactions\",\n        -11.684617042541504\n      ],\n      [\n        \"SG\",\n        -11.684621810913086\n      ],\n      [\n        \"▁häufig\",\n        -11.684625625610352\n      ],\n      [\n        \"▁Mega\",\n        -11.684638023376465\n      ],\n      [\n        \"▁jazz\",\n        -11.684660911560059\n      ],\n      [\n        \"lbs\",\n        -11.684797286987305\n      ],\n      [\n        \"▁Manual\",\n        -11.68484115600586\n      ],\n      [\n        \"pushed\",\n        -11.685017585754395\n      ],\n      [\n        \"▁analytics\",\n        -11.685234069824219\n      ],\n      [\n        \"▁lawsuit\",\n        -11.68533706665039\n      ],\n      [\n        \"▁gray\",\n        -11.685364723205566\n      ],\n      [\n        \"shirts\",\n        -11.685401916503906\n      ],\n      [\n        \"▁hill\",\n        -11.685508728027344\n      ],\n      [\n        \"▁1991\",\n        -11.68550968170166\n      ],\n      [\n        \"▁obligations\",\n        -11.685568809509277\n      ],\n      [\n        \"▁Dubai\",\n        -11.68580436706543\n      ],\n      [\n        \"()\",\n        -11.685808181762695\n      ],\n      [\n        \"▁acceptable\",\n        -11.685810089111328\n      ],\n      [\n        \"therapist\",\n        -11.685877799987793\n      ],\n      [\n        \"inger\",\n        -11.6860990524292\n      ],\n      [\n        \"▁territory\",\n        -11.686208724975586\n      ],\n      [\n        \"▁sang\",\n        -11.6862211227417\n      ],\n      [\n        \"ät\",\n        -11.686224937438965\n      ],\n      [\n        \"▁Zukunft\",\n        -11.686238288879395\n      ],\n      [\n        \"TU\",\n        -11.68657398223877\n      ],\n      [\n        \"▁horizontal\",\n        -11.68665599822998\n      ],\n      [\n        \"▁entrepreneurs\",\n        -11.686710357666016\n      ],\n      [\n        \"▁Eltern\",\n        -11.687017440795898\n      ],\n      [\n        \"▁presentations\",\n        -11.687129974365234\n      ],\n      [\n        \"▁confirmation\",\n        -11.687173843383789\n      ],\n      [\n        \"▁technological\",\n        -11.687432289123535\n      ],\n      [\n        \"▁1989\",\n        -11.687530517578125\n      ],\n      [\n        \"EF\",\n        -11.687640190124512\n      ],\n      [\n        \"ponent\",\n        -11.687663078308105\n      ],\n      [\n        \"NET\",\n        -11.687699317932129\n      ],\n      [\n        \"750\",\n        -11.687772750854492\n      ],\n      [\n        \"▁desert\",\n        -11.687891960144043\n      ],\n      [\n        \"▁contribu\",\n        -11.687932968139648\n      ],\n      [\n        \"▁Gun\",\n        -11.687944412231445\n      ],\n      [\n        \"▁Juli\",\n        -11.688091278076172\n      ],\n      [\n        \"ERS\",\n        -11.688261985778809\n      ],\n      [\n        \"▁inceput\",\n        -11.688261985778809\n      ],\n      [\n        \"▁answered\",\n        -11.688369750976562\n      ],\n      [\n        \"▁basement\",\n        -11.688410758972168\n      ],\n      [\n        \"film\",\n        -11.688434600830078\n      ],\n      [\n        \"▁taille\",\n        -11.688593864440918\n      ],\n      [\n        \"▁survival\",\n        -11.688655853271484\n      ],\n      [\n        \"ihnen\",\n        -11.68869400024414\n      ],\n      [\n        \"▁Bird\",\n        -11.688840866088867\n      ],\n      [\n        \"speed\",\n        -11.689336776733398\n      ],\n      [\n        \"▁journalist\",\n        -11.68941879272461\n      ],\n      [\n        \"▁Indonesia\",\n        -11.689626693725586\n      ],\n      [\n        \"▁15.\",\n        -11.689973831176758\n      ],\n      [\n        \"▁19.\",\n        -11.690025329589844\n      ],\n      [\n        \"étaient\",\n        -11.690114974975586\n      ],\n      [\n        \"▁tennis\",\n        -11.69024658203125\n      ],\n      [\n        \"▁aproximativ\",\n        -11.69039249420166\n      ],\n      [\n        \"▁Hans\",\n        -11.690650939941406\n      ],\n      [\n        \"▁Remove\",\n        -11.69067096710205\n      ],\n      [\n        \"▁cats\",\n        -11.691022872924805\n      ],\n      [\n        \"▁calories\",\n        -11.691052436828613\n      ],\n      [\n        \"▁limitations\",\n        -11.69119644165039\n      ],\n      [\n        \"▁subscribe\",\n        -11.691198348999023\n      ],\n      [\n        \"▁Dem\",\n        -11.691339492797852\n      ],\n      [\n        \"lust\",\n        -11.691370010375977\n      ],\n      [\n        \"▁adresa\",\n        -11.691394805908203\n      ],\n      [\n        \"▁sais\",\n        -11.69140911102295\n      ],\n      [\n        \"...\\\"\",\n        -11.691473960876465\n      ],\n      [\n        \"▁Luft\",\n        -11.691485404968262\n      ],\n      [\n        \"DL\",\n        -11.691597938537598\n      ],\n      [\n        \"▁estimates\",\n        -11.691600799560547\n      ],\n      [\n        \"▁protocol\",\n        -11.691603660583496\n      ],\n      [\n        \"▁Namen\",\n        -11.691776275634766\n      ],\n      [\n        \"▁grands\",\n        -11.691901206970215\n      ],\n      [\n        \"▁voter\",\n        -11.691970825195312\n      ],\n      [\n        \"▁vacuum\",\n        -11.692075729370117\n      ],\n      [\n        \"▁versch\",\n        -11.692103385925293\n      ],\n      [\n        \"▁Democratic\",\n        -11.692107200622559\n      ],\n      [\n        \"▁Books\",\n        -11.692170143127441\n      ],\n      [\n        \"▁frames\",\n        -11.692727088928223\n      ],\n      [\n        \"▁Bee\",\n        -11.692864418029785\n      ],\n      [\n        \"▁helfen\",\n        -11.692934036254883\n      ],\n      [\n        \"▁dive\",\n        -11.692963600158691\n      ],\n      [\n        \"▁physician\",\n        -11.693037033081055\n      ],\n      [\n        \"▁powered\",\n        -11.693131446838379\n      ],\n      [\n        \"▁zones\",\n        -11.693337440490723\n      ],\n      [\n        \"▁regime\",\n        -11.69345474243164\n      ],\n      [\n        \"check\",\n        -11.693578720092773\n      ],\n      [\n        \"11.\",\n        -11.693793296813965\n      ],\n      [\n        \"▁plaisir\",\n        -11.693793296813965\n      ],\n      [\n        \"▁physically\",\n        -11.693811416625977\n      ],\n      [\n        \"▁Pul\",\n        -11.694245338439941\n      ],\n      [\n        \"▁jardin\",\n        -11.694294929504395\n      ],\n      [\n        \"▁Nur\",\n        -11.694417953491211\n      ],\n      [\n        \"WC\",\n        -11.694425582885742\n      ],\n      [\n        \"▁Lock\",\n        -11.694506645202637\n      ],\n      [\n        \"▁économique\",\n        -11.694530487060547\n      ],\n      [\n        \"user\",\n        -11.694536209106445\n      ],\n      [\n        \"▁commit\",\n        -11.694731712341309\n      ],\n      [\n        \"▁oldest\",\n        -11.694764137268066\n      ],\n      [\n        \"▁fulfill\",\n        -11.694780349731445\n      ],\n      [\n        \"▁nervous\",\n        -11.69482135772705\n      ],\n      [\n        \"▁SH\",\n        -11.695014953613281\n      ],\n      [\n        \"SK\",\n        -11.695150375366211\n      ],\n      [\n        \"▁plein\",\n        -11.695291519165039\n      ],\n      [\n        \"show\",\n        -11.695354461669922\n      ],\n      [\n        \"▁disability\",\n        -11.695356369018555\n      ],\n      [\n        \"papier\",\n        -11.69544506072998\n      ],\n      [\n        \"▁Corp\",\n        -11.695611000061035\n      ],\n      [\n        \"ători\",\n        -11.695676803588867\n      ],\n      [\n        \"nţă\",\n        -11.695813179016113\n      ],\n      [\n        \"▁overseas\",\n        -11.696009635925293\n      ],\n      [\n        \"▁struck\",\n        -11.69603157043457\n      ],\n      [\n        \"astic\",\n        -11.69607162475586\n      ],\n      [\n        \"▁advised\",\n        -11.696088790893555\n      ],\n      [\n        \"BE\",\n        -11.696161270141602\n      ],\n      [\n        \"▁UV\",\n        -11.696218490600586\n      ],\n      [\n        \"patient\",\n        -11.69626235961914\n      ],\n      [\n        \"▁texte\",\n        -11.696344375610352\n      ],\n      [\n        \"▁timely\",\n        -11.696444511413574\n      ],\n      [\n        \"used\",\n        -11.696471214294434\n      ],\n      [\n        \"▁occasionally\",\n        -11.696524620056152\n      ],\n      [\n        \"▁entries\",\n        -11.696550369262695\n      ],\n      [\n        \"underlying\",\n        -11.6967191696167\n      ],\n      [\n        \"01.\",\n        -11.696748733520508\n      ],\n      [\n        \"▁automated\",\n        -11.696791648864746\n      ],\n      [\n        \"yes\",\n        -11.696828842163086\n      ],\n      [\n        \"▁Staff\",\n        -11.697057723999023\n      ],\n      [\n        \"▁Einzel\",\n        -11.697546005249023\n      ],\n      [\n        \"quit\",\n        -11.697687149047852\n      ],\n      [\n        \"▁Cela\",\n        -11.697951316833496\n      ],\n      [\n        \"▁snap\",\n        -11.698298454284668\n      ],\n      [\n        \"▁followers\",\n        -11.698330879211426\n      ],\n      [\n        \"CN\",\n        -11.698709487915039\n      ],\n      [\n        \"▁Cooper\",\n        -11.698892593383789\n      ],\n      [\n        \"ô\",\n        -11.698921203613281\n      ],\n      [\n        \"▁memorable\",\n        -11.698965072631836\n      ],\n      [\n        \"▁jur\",\n        -11.698996543884277\n      ],\n      [\n        \"▁ajutorul\",\n        -11.69905948638916\n      ],\n      [\n        \"▁Enter\",\n        -11.6991548538208\n      ],\n      [\n        \"Often\",\n        -11.699294090270996\n      ],\n      [\n        \"▁dintr\",\n        -11.699341773986816\n      ],\n      [\n        \"-30\",\n        -11.699419975280762\n      ],\n      [\n        \"ESS\",\n        -11.699454307556152\n      ],\n      [\n        \"▁weird\",\n        -11.699462890625\n      ],\n      [\n        \"▁Animal\",\n        -11.699706077575684\n      ],\n      [\n        \"▁complement\",\n        -11.699719429016113\n      ],\n      [\n        \"▁Bot\",\n        -11.699756622314453\n      ],\n      [\n        \"▁darf\",\n        -11.699764251708984\n      ],\n      [\n        \"yed\",\n        -11.699808120727539\n      ],\n      [\n        \"▁Mul\",\n        -11.699872016906738\n      ],\n      [\n        \"lick\",\n        -11.700080871582031\n      ],\n      [\n        \"▁Cambridge\",\n        -11.700216293334961\n      ],\n      [\n        \"adore\",\n        -11.700407981872559\n      ],\n      [\n        \"▁Dutch\",\n        -11.700420379638672\n      ],\n      [\n        \"▁Castle\",\n        -11.700431823730469\n      ],\n      [\n        \"igi\",\n        -11.700563430786133\n      ],\n      [\n        \"▁enemy\",\n        -11.70071029663086\n      ],\n      [\n        \"accompanied\",\n        -11.700725555419922\n      ],\n      [\n        \"▁teren\",\n        -11.701102256774902\n      ],\n      [\n        \"▁ET\",\n        -11.701498985290527\n      ],\n      [\n        \"ffle\",\n        -11.701557159423828\n      ],\n      [\n        \"-15\",\n        -11.701651573181152\n      ],\n      [\n        \"▁Geo\",\n        -11.701680183410645\n      ],\n      [\n        \"▁attractions\",\n        -11.701730728149414\n      ],\n      [\n        \"iker\",\n        -11.70185661315918\n      ],\n      [\n        \"▁bă\",\n        -11.701990127563477\n      ],\n      [\n        \"▁heal\",\n        -11.701995849609375\n      ],\n      [\n        \"weisen\",\n        -11.702144622802734\n      ],\n      [\n        \"▁spectrum\",\n        -11.702186584472656\n      ],\n      [\n        \"meld\",\n        -11.702394485473633\n      ],\n      [\n        \"▁eveniment\",\n        -11.70247745513916\n      ],\n      [\n        \"arra\",\n        -11.702478408813477\n      ],\n      [\n        \"rete\",\n        -11.70250129699707\n      ],\n      [\n        \"▁Had\",\n        -11.70250415802002\n      ],\n      [\n        \"looking\",\n        -11.702692031860352\n      ],\n      [\n        \"isierung\",\n        -11.702805519104004\n      ],\n      [\n        \"▁moyen\",\n        -11.703129768371582\n      ],\n      [\n        \"▁gesamte\",\n        -11.703202247619629\n      ],\n      [\n        \"▁destroy\",\n        -11.703407287597656\n      ],\n      [\n        \"125\",\n        -11.703518867492676\n      ],\n      [\n        \"▁suivant\",\n        -11.703913688659668\n      ],\n      [\n        \"▁declared\",\n        -11.703925132751465\n      ],\n      [\n        \"▁Urban\",\n        -11.704131126403809\n      ],\n      [\n        \"▁16.\",\n        -11.704168319702148\n      ],\n      [\n        \"▁Beg\",\n        -11.704168319702148\n      ],\n      [\n        \"▁canal\",\n        -11.704225540161133\n      ],\n      [\n        \"▁Pres\",\n        -11.70431137084961\n      ],\n      [\n        \"▁geeignet\",\n        -11.704339981079102\n      ],\n      [\n        \"▁strat\",\n        -11.704365730285645\n      ],\n      [\n        \"UB\",\n        -11.704395294189453\n      ],\n      [\n        \"▁Alexander\",\n        -11.704424858093262\n      ],\n      [\n        \"cycle\",\n        -11.704666137695312\n      ],\n      [\n        \"▁Var\",\n        -11.704802513122559\n      ],\n      [\n        \"▁domin\",\n        -11.704805374145508\n      ],\n      [\n        \"▁lasting\",\n        -11.704939842224121\n      ],\n      [\n        \"terio\",\n        -11.705262184143066\n      ],\n      [\n        \"▁Battle\",\n        -11.705339431762695\n      ],\n      [\n        \"▁publications\",\n        -11.705647468566895\n      ],\n      [\n        \"▁implica\",\n        -11.705886840820312\n      ],\n      [\n        \"▁NA\",\n        -11.705963134765625\n      ],\n      [\n        \"▁stocks\",\n        -11.706036567687988\n      ],\n      [\n        \"Plat\",\n        -11.70611572265625\n      ],\n      [\n        \"▁excitement\",\n        -11.706149101257324\n      ],\n      [\n        \"▁Muslim\",\n        -11.706524848937988\n      ],\n      [\n        \"▁Mari\",\n        -11.706530570983887\n      ],\n      [\n        \"▁Ul\",\n        -11.706647872924805\n      ],\n      [\n        \"nächst\",\n        -11.706757545471191\n      ],\n      [\n        \"▁trait\",\n        -11.706833839416504\n      ],\n      [\n        \"▁(3)\",\n        -11.706852912902832\n      ],\n      [\n        \"▁Attorney\",\n        -11.706894874572754\n      ],\n      [\n        \"▁Malaysia\",\n        -11.70689582824707\n      ],\n      [\n        \"▁slab\",\n        -11.706960678100586\n      ],\n      [\n        \"▁dam\",\n        -11.707113265991211\n      ],\n      [\n        \"▁Bir\",\n        -11.707226753234863\n      ],\n      [\n        \"▁sing\",\n        -11.70738410949707\n      ],\n      [\n        \"▁Culture\",\n        -11.7073974609375\n      ],\n      [\n        \"UD\",\n        -11.707417488098145\n      ],\n      [\n        \"▁Mes\",\n        -11.707443237304688\n      ],\n      [\n        \"ități\",\n        -11.707615852355957\n      ],\n      [\n        \"▁possess\",\n        -11.708173751831055\n      ],\n      [\n        \"enabling\",\n        -11.70820426940918\n      ],\n      [\n        \"▁settled\",\n        -11.708335876464844\n      ],\n      [\n        \"▁sagen\",\n        -11.708492279052734\n      ],\n      [\n        \"▁erfolgt\",\n        -11.708564758300781\n      ],\n      [\n        \"dog\",\n        -11.708600997924805\n      ],\n      [\n        \"ndu\",\n        -11.708732604980469\n      ],\n      [\n        \"ității\",\n        -11.708745002746582\n      ],\n      [\n        \"▁Islam\",\n        -11.708930015563965\n      ],\n      [\n        \"▁catalog\",\n        -11.708931922912598\n      ],\n      [\n        \"▁simt\",\n        -11.709102630615234\n      ],\n      [\n        \"tische\",\n        -11.709150314331055\n      ],\n      [\n        \"▁Mach\",\n        -11.709334373474121\n      ],\n      [\n        \"▁EP\",\n        -11.709359169006348\n      ],\n      [\n        \"▁Certified\",\n        -11.709386825561523\n      ],\n      [\n        \"▁Resources\",\n        -11.70945930480957\n      ],\n      [\n        \"▁Past\",\n        -11.709607124328613\n      ],\n      [\n        \"▁Termin\",\n        -11.709755897521973\n      ],\n      [\n        \"▁lightweight\",\n        -11.709755897521973\n      ],\n      [\n        \"▁championship\",\n        -11.70994758605957\n      ],\n      [\n        \"gebiet\",\n        -11.710122108459473\n      ],\n      [\n        \"▁jurisdiction\",\n        -11.710135459899902\n      ],\n      [\n        \"▁euros\",\n        -11.710169792175293\n      ],\n      [\n        \"▁Familien\",\n        -11.710554122924805\n      ],\n      [\n        \"▁GT\",\n        -11.710677146911621\n      ],\n      [\n        \"▁dvs\",\n        -11.71081256866455\n      ],\n      [\n        \"▁nouveaux\",\n        -11.710838317871094\n      ],\n      [\n        \"▁chill\",\n        -11.710916519165039\n      ],\n      [\n        \"▁ridicat\",\n        -11.710920333862305\n      ],\n      [\n        \"his\",\n        -11.711079597473145\n      ],\n      [\n        \"▁Indi\",\n        -11.711159706115723\n      ],\n      [\n        \"▁arrested\",\n        -11.71116828918457\n      ],\n      [\n        \"ităţii\",\n        -11.711170196533203\n      ],\n      [\n        \"onul\",\n        -11.711274147033691\n      ],\n      [\n        \"appar\",\n        -11.711296081542969\n      ],\n      [\n        \"▁Bachelor\",\n        -11.711297988891602\n      ],\n      [\n        \"▁erfolgreich\",\n        -11.711426734924316\n      ],\n      [\n        \"▁versatile\",\n        -11.71163558959961\n      ],\n      [\n        \"▁nécessaire\",\n        -11.711761474609375\n      ],\n      [\n        \"▁facial\",\n        -11.712160110473633\n      ],\n      [\n        \"▁Bull\",\n        -11.712226867675781\n      ],\n      [\n        \"Comm\",\n        -11.712237358093262\n      ],\n      [\n        \"atte\",\n        -11.712307929992676\n      ],\n      [\n        \"hom\",\n        -11.7123384475708\n      ],\n      [\n        \"start\",\n        -11.712576866149902\n      ],\n      [\n        \"▁roughly\",\n        -11.712936401367188\n      ],\n      [\n        \"▁bay\",\n        -11.712984085083008\n      ],\n      [\n        \"▁american\",\n        -11.712986946105957\n      ],\n      [\n        \"▁Wisconsin\",\n        -11.713135719299316\n      ],\n      [\n        \"▁Clinton\",\n        -11.713142395019531\n      ],\n      [\n        \"appareil\",\n        -11.713153839111328\n      ],\n      [\n        \"▁liberal\",\n        -11.713455200195312\n      ],\n      [\n        \"▁dau\",\n        -11.713519096374512\n      ],\n      [\n        \"ech\",\n        -11.713521957397461\n      ],\n      [\n        \"2014\",\n        -11.713624000549316\n      ],\n      [\n        \"▁lip\",\n        -11.713645935058594\n      ],\n      [\n        \"▁maintenant\",\n        -11.713762283325195\n      ],\n      [\n        \"▁Sil\",\n        -11.713805198669434\n      ],\n      [\n        \"rben\",\n        -11.713891983032227\n      ],\n      [\n        \"▁contents\",\n        -11.713980674743652\n      ],\n      [\n        \"▁magnetic\",\n        -11.714111328125\n      ],\n      [\n        \"▁terre\",\n        -11.714151382446289\n      ],\n      [\n        \"▁Rights\",\n        -11.714475631713867\n      ],\n      [\n        \"lose\",\n        -11.714570045471191\n      ],\n      [\n        \"▁crown\",\n        -11.71468448638916\n      ],\n      [\n        \"▁oils\",\n        -11.7147216796875\n      ],\n      [\n        \"▁entertaining\",\n        -11.714841842651367\n      ],\n      [\n        \"▁Option\",\n        -11.714848518371582\n      ],\n      [\n        \"▁Previous\",\n        -11.714916229248047\n      ],\n      [\n        \"▁vrai\",\n        -11.714930534362793\n      ],\n      [\n        \"▁Auswahl\",\n        -11.715056419372559\n      ],\n      [\n        \"▁horses\",\n        -11.715106010437012\n      ],\n      [\n        \"▁Author\",\n        -11.71533489227295\n      ],\n      [\n        \"▁Writing\",\n        -11.715461730957031\n      ],\n      [\n        \"▁travelling\",\n        -11.715522766113281\n      ],\n      [\n        \"▁350\",\n        -11.715567588806152\n      ],\n      [\n        \"daten\",\n        -11.71560287475586\n      ],\n      [\n        \"zan\",\n        -11.715765953063965\n      ],\n      [\n        \"▁sweat\",\n        -11.715924263000488\n      ],\n      [\n        \"▁Junior\",\n        -11.715970993041992\n      ],\n      [\n        \"markt\",\n        -11.71609878540039\n      ],\n      [\n        \"after\",\n        -11.716105461120605\n      ],\n      [\n        \"▁admitted\",\n        -11.716262817382812\n      ],\n      [\n        \"▁1950\",\n        -11.716347694396973\n      ],\n      [\n        \"▁Sche\",\n        -11.71648120880127\n      ],\n      [\n        \"▁dorit\",\n        -11.716818809509277\n      ],\n      [\n        \"▁transferred\",\n        -11.716958045959473\n      ],\n      [\n        \"utilise\",\n        -11.717194557189941\n      ],\n      [\n        \"sitz\",\n        -11.717301368713379\n      ],\n      [\n        \"gio\",\n        -11.717320442199707\n      ],\n      [\n        \"▁bisher\",\n        -11.717473983764648\n      ],\n      [\n        \"RD\",\n        -11.717491149902344\n      ],\n      [\n        \"▁Wales\",\n        -11.717747688293457\n      ],\n      [\n        \"▁smoking\",\n        -11.717904090881348\n      ],\n      [\n        \"dire\",\n        -11.717939376831055\n      ],\n      [\n        \"▁seating\",\n        -11.717979431152344\n      ],\n      [\n        \"▁constat\",\n        -11.718056678771973\n      ],\n      [\n        \"▁Hub\",\n        -11.718324661254883\n      ],\n      [\n        \"▁sieht\",\n        -11.718345642089844\n      ],\n      [\n        \"▁prospect\",\n        -11.718378067016602\n      ],\n      [\n        \"▁RO\",\n        -11.718413352966309\n      ],\n      [\n        \"▁Wars\",\n        -11.718423843383789\n      ],\n      [\n        \"eek\",\n        -11.718496322631836\n      ],\n      [\n        \"▁Bring\",\n        -11.718646049499512\n      ],\n      [\n        \"▁bleiben\",\n        -11.718696594238281\n      ],\n      [\n        \"arri\",\n        -11.718826293945312\n      ],\n      [\n        \"inal\",\n        -11.718904495239258\n      ],\n      [\n        \"▁Maryland\",\n        -11.718932151794434\n      ],\n      [\n        \"▁Process\",\n        -11.719145774841309\n      ],\n      [\n        \"They\",\n        -11.719154357910156\n      ],\n      [\n        \"▁Oxford\",\n        -11.719176292419434\n      ],\n      [\n        \"▁neat\",\n        -11.719330787658691\n      ],\n      [\n        \"▁cinema\",\n        -11.719597816467285\n      ],\n      [\n        \"▁Ist\",\n        -11.719620704650879\n      ],\n      [\n        \"▁vegan\",\n        -11.719682693481445\n      ],\n      [\n        \"wall\",\n        -11.719708442687988\n      ],\n      [\n        \"▁motive\",\n        -11.72010612487793\n      ],\n      [\n        \"▁mature\",\n        -11.720544815063477\n      ],\n      [\n        \"▁Dragon\",\n        -11.720653533935547\n      ],\n      [\n        \"▁google\",\n        -11.720677375793457\n      ],\n      [\n        \"blick\",\n        -11.72110652923584\n      ],\n      [\n        \"▁Cod\",\n        -11.721220970153809\n      ],\n      [\n        \"▁suffi\",\n        -11.721319198608398\n      ],\n      [\n        \"▁terrorist\",\n        -11.721478462219238\n      ],\n      [\n        \"Posted\",\n        -11.721484184265137\n      ],\n      [\n        \"▁Schi\",\n        -11.72157096862793\n      ],\n      [\n        \"▁Marc\",\n        -11.721597671508789\n      ],\n      [\n        \"▁operates\",\n        -11.721661567687988\n      ],\n      [\n        \"gress\",\n        -11.721805572509766\n      ],\n      [\n        \"has\",\n        -11.721899032592773\n      ],\n      [\n        \"sole\",\n        -11.722108840942383\n      ],\n      [\n        \"▁Buck\",\n        -11.722122192382812\n      ],\n      [\n        \"impl\",\n        -11.722160339355469\n      ],\n      [\n        \"▁Ron\",\n        -11.722172737121582\n      ],\n      [\n        \"▁handled\",\n        -11.722346305847168\n      ],\n      [\n        \"▁Apr\",\n        -11.722347259521484\n      ],\n      [\n        \"▁Storage\",\n        -11.722467422485352\n      ],\n      [\n        \"▁temp\",\n        -11.722512245178223\n      ],\n      [\n        \"▁differently\",\n        -11.722614288330078\n      ],\n      [\n        \"▁wherever\",\n        -11.722670555114746\n      ],\n      [\n        \"matched\",\n        -11.722695350646973\n      ],\n      [\n        \"rios\",\n        -11.72276496887207\n      ],\n      [\n        \"▁surprising\",\n        -11.722846031188965\n      ],\n      [\n        \"teilen\",\n        -11.722867965698242\n      ],\n      [\n        \"▁difficulties\",\n        -11.72294807434082\n      ],\n      [\n        \"tab\",\n        -11.723064422607422\n      ],\n      [\n        \"▁Leader\",\n        -11.723128318786621\n      ],\n      [\n        \"implementing\",\n        -11.723372459411621\n      ],\n      [\n        \"▁workforce\",\n        -11.723384857177734\n      ],\n      [\n        \"▁bereit\",\n        -11.723503112792969\n      ],\n      [\n        \"vig\",\n        -11.72352123260498\n      ],\n      [\n        \"▁LOVE\",\n        -11.723580360412598\n      ],\n      [\n        \"▁instances\",\n        -11.723954200744629\n      ],\n      [\n        \"▁frumos\",\n        -11.723960876464844\n      ],\n      [\n        \"▁Java\",\n        -11.723974227905273\n      ],\n      [\n        \"▁arrest\",\n        -11.723977088928223\n      ],\n      [\n        \"▁apparent\",\n        -11.724152565002441\n      ],\n      [\n        \"▁hence\",\n        -11.724200248718262\n      ],\n      [\n        \"▁entwickelt\",\n        -11.72437572479248\n      ],\n      [\n        \"▁Fra\",\n        -11.724471092224121\n      ],\n      [\n        \"▁prend\",\n        -11.724486351013184\n      ],\n      [\n        \"ließ\",\n        -11.724522590637207\n      ],\n      [\n        \"▁drawer\",\n        -11.724671363830566\n      ],\n      [\n        \"ARD\",\n        -11.724926948547363\n      ],\n      [\n        \"▁caring\",\n        -11.72499942779541\n      ],\n      [\n        \"▁wollte\",\n        -11.725024223327637\n      ],\n      [\n        \"▁vielleicht\",\n        -11.72511100769043\n      ],\n      [\n        \"▁iconic\",\n        -11.725324630737305\n      ],\n      [\n        \"äch\",\n        -11.72552490234375\n      ],\n      [\n        \"abel\",\n        -11.725639343261719\n      ],\n      [\n        \"▁génér\",\n        -11.72570514678955\n      ],\n      [\n        \"ault\",\n        -11.725727081298828\n      ],\n      [\n        \"▁alternatives\",\n        -11.725909233093262\n      ],\n      [\n        \"think\",\n        -11.726025581359863\n      ],\n      [\n        \"ро\",\n        -11.726055145263672\n      ],\n      [\n        \"whereas\",\n        -11.726058006286621\n      ],\n      [\n        \"erei\",\n        -11.726366996765137\n      ],\n      [\n        \"▁Eagle\",\n        -11.726766586303711\n      ],\n      [\n        \"situé\",\n        -11.72704792022705\n      ],\n      [\n        \"▁laboratory\",\n        -11.727157592773438\n      ],\n      [\n        \"▁Nutzung\",\n        -11.727256774902344\n      ],\n      [\n        \"▁Bathroom\",\n        -11.72728157043457\n      ],\n      [\n        \"▁loaded\",\n        -11.727293968200684\n      ],\n      [\n        \"niste\",\n        -11.727408409118652\n      ],\n      [\n        \"som\",\n        -11.727429389953613\n      ],\n      [\n        \"▁aucun\",\n        -11.727666854858398\n      ],\n      [\n        \"gebracht\",\n        -11.727676391601562\n      ],\n      [\n        \"▁tomb\",\n        -11.727771759033203\n      ],\n      [\n        \"▁Ty\",\n        -11.727785110473633\n      ],\n      [\n        \"▁afaceri\",\n        -11.727971076965332\n      ],\n      [\n        \"tex\",\n        -11.72803783416748\n      ],\n      [\n        \"ality\",\n        -11.728147506713867\n      ],\n      [\n        \"▁identification\",\n        -11.728150367736816\n      ],\n      [\n        \"▁cultiv\",\n        -11.728255271911621\n      ],\n      [\n        \"Not\",\n        -11.728326797485352\n      ],\n      [\n        \"▁acestor\",\n        -11.72846508026123\n      ],\n      [\n        \"▁PhD\",\n        -11.728466033935547\n      ],\n      [\n        \"nell\",\n        -11.728470802307129\n      ],\n      [\n        \"▁dial\",\n        -11.728594779968262\n      ],\n      [\n        \"chro\",\n        -11.728673934936523\n      ],\n      [\n        \"▁specifications\",\n        -11.728682518005371\n      ],\n      [\n        \"anii\",\n        -11.72877025604248\n      ],\n      [\n        \"▁cloth\",\n        -11.728836059570312\n      ],\n      [\n        \"▁highway\",\n        -11.728914260864258\n      ],\n      [\n        \"▁Vitamin\",\n        -11.729118347167969\n      ],\n      [\n        \"▁indication\",\n        -11.729349136352539\n      ],\n      [\n        \"80%\",\n        -11.72959041595459\n      ],\n      [\n        \"▁Lion\",\n        -11.729681015014648\n      ],\n      [\n        \"▁10,\",\n        -11.729693412780762\n      ],\n      [\n        \"▁Werk\",\n        -11.72974967956543\n      ],\n      [\n        \"▁combin\",\n        -11.729803085327148\n      ],\n      [\n        \"▁releases\",\n        -11.7298583984375\n      ],\n      [\n        \"LL\",\n        -11.730006217956543\n      ],\n      [\n        \"ktor\",\n        -11.730186462402344\n      ],\n      [\n        \"ufgrund\",\n        -11.73018741607666\n      ],\n      [\n        \"calc\",\n        -11.73034381866455\n      ],\n      [\n        \"▁accomplished\",\n        -11.730606079101562\n      ],\n      [\n        \"▁los\",\n        -11.730619430541992\n      ],\n      [\n        \"▁distant\",\n        -11.730688095092773\n      ],\n      [\n        \"▁secteur\",\n        -11.73068904876709\n      ],\n      [\n        \"logue\",\n        -11.730781555175781\n      ],\n      [\n        \"▁betting\",\n        -11.730792999267578\n      ],\n      [\n        \"elf\",\n        -11.731180191040039\n      ],\n      [\n        \"puteti\",\n        -11.73123550415039\n      ],\n      [\n        \"▁Moment\",\n        -11.731236457824707\n      ],\n      [\n        \"▁scoring\",\n        -11.731548309326172\n      ],\n      [\n        \"▁freuen\",\n        -11.731572151184082\n      ],\n      [\n        \"▁fastest\",\n        -11.731873512268066\n      ],\n      [\n        \"▁directors\",\n        -11.732080459594727\n      ],\n      [\n        \"▁fame\",\n        -11.732234954833984\n      ],\n      [\n        \"▁complaint\",\n        -11.732239723205566\n      ],\n      [\n        \"▁Ep\",\n        -11.732314109802246\n      ],\n      [\n        \"▁delicate\",\n        -11.732329368591309\n      ],\n      [\n        \"annonce\",\n        -11.73240852355957\n      ],\n      [\n        \"ext\",\n        -11.732454299926758\n      ],\n      [\n        \"▁quit\",\n        -11.732473373413086\n      ],\n      [\n        \"▁Cop\",\n        -11.73253345489502\n      ],\n      [\n        \"prop\",\n        -11.732565879821777\n      ],\n      [\n        \"365\",\n        -11.732742309570312\n      ],\n      [\n        \"▁Say\",\n        -11.732879638671875\n      ],\n      [\n        \"▁internationale\",\n        -11.733064651489258\n      ],\n      [\n        \"cott\",\n        -11.733213424682617\n      ],\n      [\n        \"▁Whatever\",\n        -11.733261108398438\n      ],\n      [\n        \"▁admir\",\n        -11.733261108398438\n      ],\n      [\n        \"▁bucur\",\n        -11.733549118041992\n      ],\n      [\n        \"▁entity\",\n        -11.733779907226562\n      ],\n      [\n        \"▁dancing\",\n        -11.733837127685547\n      ],\n      [\n        \"▁printre\",\n        -11.733892440795898\n      ],\n      [\n        \"▁meditation\",\n        -11.734396934509277\n      ],\n      [\n        \"▁avis\",\n        -11.734416961669922\n      ],\n      [\n        \"▁1988\",\n        -11.73447036743164\n      ],\n      [\n        \"10.\",\n        -11.734506607055664\n      ],\n      [\n        \"▁worker\",\n        -11.734638214111328\n      ],\n      [\n        \"▁$100\",\n        -11.734784126281738\n      ],\n      [\n        \"▁contrôle\",\n        -11.7349853515625\n      ],\n      [\n        \"▁insist\",\n        -11.734997749328613\n      ],\n      [\n        \"ements\",\n        -11.73505973815918\n      ],\n      [\n        \"izate\",\n        -11.735163688659668\n      ],\n      [\n        \"▁tied\",\n        -11.735332489013672\n      ],\n      [\n        \"▁correspond\",\n        -11.735396385192871\n      ],\n      [\n        \"▁apartments\",\n        -11.735547065734863\n      ],\n      [\n        \"▁2009.\",\n        -11.735599517822266\n      ],\n      [\n        \"▁tiles\",\n        -11.735624313354492\n      ],\n      [\n        \"▁boots\",\n        -11.735639572143555\n      ],\n      [\n        \"▁laundry\",\n        -11.735673904418945\n      ],\n      [\n        \"▁Coffee\",\n        -11.735674858093262\n      ],\n      [\n        \"▁CV\",\n        -11.735727310180664\n      ],\n      [\n        \"▁composed\",\n        -11.736035346984863\n      ],\n      [\n        \"atom\",\n        -11.73622989654541\n      ],\n      [\n        \"▁shore\",\n        -11.736270904541016\n      ],\n      [\n        \"▁marijuana\",\n        -11.736312866210938\n      ],\n      [\n        \"plic\",\n        -11.73648452758789\n      ],\n      [\n        \"▁Zahl\",\n        -11.736649513244629\n      ],\n      [\n        \"depth\",\n        -11.73682689666748\n      ],\n      [\n        \"▁Egypt\",\n        -11.736854553222656\n      ],\n      [\n        \"▁NFL\",\n        -11.736906051635742\n      ],\n      [\n        \"▁12,\",\n        -11.736922264099121\n      ],\n      [\n        \"▁pollution\",\n        -11.736964225769043\n      ],\n      [\n        \"▁Vergleich\",\n        -11.73704719543457\n      ],\n      [\n        \"û\",\n        -11.737109184265137\n      ],\n      [\n        \"▁nurse\",\n        -11.737153053283691\n      ],\n      [\n        \"▁Susan\",\n        -11.737173080444336\n      ],\n      [\n        \"▁verify\",\n        -11.737393379211426\n      ],\n      [\n        \"▁kon\",\n        -11.737504959106445\n      ],\n      [\n        \"▁ulei\",\n        -11.7376127243042\n      ],\n      [\n        \"▁Sept\",\n        -11.737699508666992\n      ],\n      [\n        \"▁Location\",\n        -11.737908363342285\n      ],\n      [\n        \"▁frozen\",\n        -11.737991333007812\n      ],\n      [\n        \"good\",\n        -11.73802661895752\n      ],\n      [\n        \"▁cine\",\n        -11.738066673278809\n      ],\n      [\n        \"forming\",\n        -11.738181114196777\n      ],\n      [\n        \"▁Near\",\n        -11.738391876220703\n      ],\n      [\n        \"▁Tab\",\n        -11.738545417785645\n      ],\n      [\n        \"▁Alexandr\",\n        -11.738600730895996\n      ],\n      [\n        \"ст\",\n        -11.73863697052002\n      ],\n      [\n        \"CK\",\n        -11.738656044006348\n      ],\n      [\n        \"▁loads\",\n        -11.738948822021484\n      ],\n      [\n        \"▁disorders\",\n        -11.738957405090332\n      ],\n      [\n        \"hip\",\n        -11.739596366882324\n      ],\n      [\n        \"▁blessing\",\n        -11.73987102508545\n      ],\n      [\n        \"▁vechi\",\n        -11.73997688293457\n      ],\n      [\n        \"▁Bookmark\",\n        -11.740296363830566\n      ],\n      [\n        \"SON\",\n        -11.74036979675293\n      ],\n      [\n        \"books\",\n        -11.740428924560547\n      ],\n      [\n        \"▁tropical\",\n        -11.740438461303711\n      ],\n      [\n        \"▁Garten\",\n        -11.740447044372559\n      ],\n      [\n        \"ôt\",\n        -11.740760803222656\n      ],\n      [\n        \"tures\",\n        -11.740827560424805\n      ],\n      [\n        \"▁obligation\",\n        -11.741010665893555\n      ],\n      [\n        \"▁admin\",\n        -11.741011619567871\n      ],\n      [\n        \"▁sélection\",\n        -11.741106986999512\n      ],\n      [\n        \"disp\",\n        -11.741172790527344\n      ],\n      [\n        \"▁Anyone\",\n        -11.741225242614746\n      ],\n      [\n        \"keeper\",\n        -11.74138355255127\n      ],\n      [\n        \"▁konnten\",\n        -11.741521835327148\n      ],\n      [\n        \"▁existe\",\n        -11.741615295410156\n      ],\n      [\n        \"▁Rund\",\n        -11.741798400878906\n      ],\n      [\n        \"▁retailers\",\n        -11.74184799194336\n      ],\n      [\n        \"folg\",\n        -11.741948127746582\n      ],\n      [\n        \"▁urmare\",\n        -11.742019653320312\n      ],\n      [\n        \"▁Liebe\",\n        -11.742321014404297\n      ],\n      [\n        \"▁actors\",\n        -11.742422103881836\n      ],\n      [\n        \"▁Druck\",\n        -11.742618560791016\n      ],\n      [\n        \"lien\",\n        -11.742752075195312\n      ],\n      [\n        \"sian\",\n        -11.742847442626953\n      ],\n      [\n        \"▁partid\",\n        -11.74304485321045\n      ],\n      [\n        \"▁loin\",\n        -11.743114471435547\n      ],\n      [\n        \"AZ\",\n        -11.743119239807129\n      ],\n      [\n        \"oasă\",\n        -11.743501663208008\n      ],\n      [\n        \"▁inclusiv\",\n        -11.743656158447266\n      ],\n      [\n        \"TD\",\n        -11.743680953979492\n      ],\n      [\n        \"▁anului\",\n        -11.743766784667969\n      ],\n      [\n        \"poc\",\n        -11.743844985961914\n      ],\n      [\n        \"▁musique\",\n        -11.743972778320312\n      ],\n      [\n        \"▁Hart\",\n        -11.743997573852539\n      ],\n      [\n        \"Sh\",\n        -11.744283676147461\n      ],\n      [\n        \"html\",\n        -11.744290351867676\n      ],\n      [\n        \"▁serial\",\n        -11.744318008422852\n      ],\n      [\n        \"țele\",\n        -11.744369506835938\n      ],\n      [\n        \"inning\",\n        -11.744544982910156\n      ],\n      [\n        \"▁Bureau\",\n        -11.744555473327637\n      ],\n      [\n        \"▁rush\",\n        -11.744626998901367\n      ],\n      [\n        \"▁deosebit\",\n        -11.744637489318848\n      ],\n      [\n        \"▁Wort\",\n        -11.744648933410645\n      ],\n      [\n        \"▁Thailand\",\n        -11.744688987731934\n      ],\n      [\n        \"▁Language\",\n        -11.745193481445312\n      ],\n      [\n        \"▁Governor\",\n        -11.745213508605957\n      ],\n      [\n        \"▁Later\",\n        -11.74525260925293\n      ],\n      [\n        \"rilor\",\n        -11.745282173156738\n      ],\n      [\n        \"▁activités\",\n        -11.745372772216797\n      ],\n      [\n        \"schaffen\",\n        -11.745598793029785\n      ],\n      [\n        \"▁harvest\",\n        -11.74567985534668\n      ],\n      [\n        \"▁municipal\",\n        -11.745783805847168\n      ],\n      [\n        \"einander\",\n        -11.74600601196289\n      ],\n      [\n        \"▁fingers\",\n        -11.746383666992188\n      ],\n      [\n        \"▁sculpture\",\n        -11.74638843536377\n      ],\n      [\n        \"▁Bien\",\n        -11.746390342712402\n      ],\n      [\n        \"▁departments\",\n        -11.746562957763672\n      ],\n      [\n        \"▁période\",\n        -11.746746063232422\n      ],\n      [\n        \"▁jeune\",\n        -11.746960639953613\n      ],\n      [\n        \"▁governments\",\n        -11.74710750579834\n      ],\n      [\n        \"uter\",\n        -11.747179985046387\n      ],\n      [\n        \"Aceste\",\n        -11.747220039367676\n      ],\n      [\n        \"▁Deal\",\n        -11.747243881225586\n      ],\n      [\n        \"▁Equipment\",\n        -11.74726390838623\n      ],\n      [\n        \"nous\",\n        -11.747300148010254\n      ],\n      [\n        \"▁gate\",\n        -11.747315406799316\n      ],\n      [\n        \"▁meta\",\n        -11.747447967529297\n      ],\n      [\n        \"▁stiu\",\n        -11.747474670410156\n      ],\n      [\n        \"fold\",\n        -11.747486114501953\n      ],\n      [\n        \"▁seule\",\n        -11.747523307800293\n      ],\n      [\n        \"▁varied\",\n        -11.747541427612305\n      ],\n      [\n        \"hit\",\n        -11.747635841369629\n      ],\n      [\n        \"▁DIY\",\n        -11.74768352508545\n      ],\n      [\n        \"▁lemn\",\n        -11.747685432434082\n      ],\n      [\n        \"OB\",\n        -11.747865676879883\n      ],\n      [\n        \"▁colorful\",\n        -11.748095512390137\n      ],\n      [\n        \"▁câ\",\n        -11.74826431274414\n      ],\n      [\n        \"▁semester\",\n        -11.74830150604248\n      ],\n      [\n        \"▁dealer\",\n        -11.748575210571289\n      ],\n      [\n        \"nett\",\n        -11.748788833618164\n      ],\n      [\n        \"▁shortly\",\n        -11.748932838439941\n      ],\n      [\n        \"▁Driver\",\n        -11.748983383178711\n      ],\n      [\n        \"culture\",\n        -11.749052047729492\n      ],\n      [\n        \"▁permitted\",\n        -11.749072074890137\n      ],\n      [\n        \"▁sorts\",\n        -11.749432563781738\n      ],\n      [\n        \"▁crop\",\n        -11.74999713897705\n      ],\n      [\n        \"▁valoare\",\n        -11.75046157836914\n      ],\n      [\n        \"▁analog\",\n        -11.750576972961426\n      ],\n      [\n        \"▁excuse\",\n        -11.750588417053223\n      ],\n      [\n        \"▁modèle\",\n        -11.750657081604004\n      ],\n      [\n        \"When\",\n        -11.75068473815918\n      ],\n      [\n        \"▁march\",\n        -11.750744819641113\n      ],\n      [\n        \"haz\",\n        -11.750978469848633\n      ],\n      [\n        \"▁minimize\",\n        -11.750992774963379\n      ],\n      [\n        \"traction\",\n        -11.751028060913086\n      ],\n      [\n        \"▁caracter\",\n        -11.752382278442383\n      ],\n      [\n        \"▁modules\",\n        -11.7523832321167\n      ],\n      [\n        \"clu\",\n        -11.75244426727295\n      ],\n      [\n        \"ţional\",\n        -11.752482414245605\n      ],\n      [\n        \"▁breach\",\n        -11.752562522888184\n      ],\n      [\n        \"▁priced\",\n        -11.752614974975586\n      ],\n      [\n        \"▁attorneys\",\n        -11.752644538879395\n      ],\n      [\n        \"▁implant\",\n        -11.752645492553711\n      ],\n      [\n        \"▁ANY\",\n        -11.752655029296875\n      ],\n      [\n        \"dition\",\n        -11.752707481384277\n      ],\n      [\n        \"▁trials\",\n        -11.752838134765625\n      ],\n      [\n        \"▁Nas\",\n        -11.75293254852295\n      ],\n      [\n        \"Pre\",\n        -11.752970695495605\n      ],\n      [\n        \"lorsque\",\n        -11.752979278564453\n      ],\n      [\n        \"plin\",\n        -11.753050804138184\n      ],\n      [\n        \"Er\",\n        -11.753056526184082\n      ],\n      [\n        \"▁Dom\",\n        -11.753067970275879\n      ],\n      [\n        \"▁tire\",\n        -11.753190040588379\n      ],\n      [\n        \"sili\",\n        -11.753233909606934\n      ],\n      [\n        \"▁coins\",\n        -11.753350257873535\n      ],\n      [\n        \"▁rend\",\n        -11.753470420837402\n      ],\n      [\n        \"▁reliability\",\n        -11.753503799438477\n      ],\n      [\n        \"▁Analysis\",\n        -11.753508567810059\n      ],\n      [\n        \"▁trails\",\n        -11.753692626953125\n      ],\n      [\n        \"trägt\",\n        -11.753762245178223\n      ],\n      [\n        \"▁Kansas\",\n        -11.753908157348633\n      ],\n      [\n        \"▁responsive\",\n        -11.75390911102295\n      ],\n      [\n        \"▁disappear\",\n        -11.753988265991211\n      ],\n      [\n        \"▁stakeholders\",\n        -11.754022598266602\n      ],\n      [\n        \"▁aplica\",\n        -11.754164695739746\n      ],\n      [\n        \"▁imi\",\n        -11.754180908203125\n      ],\n      [\n        \"▁Laura\",\n        -11.754369735717773\n      ],\n      [\n        \"▁Terms\",\n        -11.75440788269043\n      ],\n      [\n        \"450\",\n        -11.754460334777832\n      ],\n      [\n        \"▁voltage\",\n        -11.754483222961426\n      ],\n      [\n        \"▁Gel\",\n        -11.754544258117676\n      ],\n      [\n        \"▁qualities\",\n        -11.754549026489258\n      ],\n      [\n        \"▁qualifi\",\n        -11.754603385925293\n      ],\n      [\n        \"▁Mé\",\n        -11.754735946655273\n      ],\n      [\n        \"bereit\",\n        -11.754829406738281\n      ],\n      [\n        \"gleich\",\n        -11.754875183105469\n      ],\n      [\n        \"▁voting\",\n        -11.754961013793945\n      ],\n      [\n        \"▁trademark\",\n        -11.755128860473633\n      ],\n      [\n        \"▁2.5\",\n        -11.75515079498291\n      ],\n      [\n        \"ND\",\n        -11.755438804626465\n      ],\n      [\n        \"▁Kelly\",\n        -11.755470275878906\n      ],\n      [\n        \"▁weiteren\",\n        -11.755559921264648\n      ],\n      [\n        \"▁filters\",\n        -11.75562572479248\n      ],\n      [\n        \"▁coût\",\n        -11.75562858581543\n      ],\n      [\n        \"jur\",\n        -11.755765914916992\n      ],\n      [\n        \"acre\",\n        -11.755804061889648\n      ],\n      [\n        \"▁retired\",\n        -11.756022453308105\n      ],\n      [\n        \"▁Engine\",\n        -11.756205558776855\n      ],\n      [\n        \"▁président\",\n        -11.756264686584473\n      ],\n      [\n        \"ajul\",\n        -11.756307601928711\n      ],\n      [\n        \"▁GA\",\n        -11.756425857543945\n      ],\n      [\n        \"rät\",\n        -11.75666332244873\n      ],\n      [\n        \"▁instructor\",\n        -11.756669998168945\n      ],\n      [\n        \"▁Allen\",\n        -11.75668716430664\n      ],\n      [\n        \"▁Delhi\",\n        -11.756771087646484\n      ],\n      [\n        \"▁cure\",\n        -11.756844520568848\n      ],\n      [\n        \"seite\",\n        -11.756898880004883\n      ],\n      [\n        \"coming\",\n        -11.756914138793945\n      ],\n      [\n        \"▁mixing\",\n        -11.756963729858398\n      ],\n      [\n        \"▁Kno\",\n        -11.757041931152344\n      ],\n      [\n        \"▁Sure\",\n        -11.757079124450684\n      ],\n      [\n        \"▁hired\",\n        -11.757102012634277\n      ],\n      [\n        \"▁participated\",\n        -11.757196426391602\n      ],\n      [\n        \"Count\",\n        -11.757320404052734\n      ],\n      [\n        \"treffen\",\n        -11.757355690002441\n      ],\n      [\n        \"▁54\",\n        -11.75735855102539\n      ],\n      [\n        \"▁rings\",\n        -11.75735855102539\n      ],\n      [\n        \"▁Thor\",\n        -11.757359504699707\n      ],\n      [\n        \"éro\",\n        -11.75744915008545\n      ],\n      [\n        \"▁buttons\",\n        -11.757488250732422\n      ],\n      [\n        \"▁47\",\n        -11.757539749145508\n      ],\n      [\n        \"▁Tel\",\n        -11.757694244384766\n      ],\n      [\n        \"▁suport\",\n        -11.757776260375977\n      ],\n      [\n        \"▁rhythm\",\n        -11.75782585144043\n      ],\n      [\n        \"▁Theater\",\n        -11.758113861083984\n      ],\n      [\n        \"▁informatii\",\n        -11.758121490478516\n      ],\n      [\n        \"hält\",\n        -11.758201599121094\n      ],\n      [\n        \"▁ouvert\",\n        -11.758238792419434\n      ],\n      [\n        \"fewer\",\n        -11.75828742980957\n      ],\n      [\n        \"▁alumni\",\n        -11.758466720581055\n      ],\n      [\n        \"▁valley\",\n        -11.758508682250977\n      ],\n      [\n        \"tial\",\n        -11.75860595703125\n      ],\n      [\n        \"***\",\n        -11.758782386779785\n      ],\n      [\n        \"kri\",\n        -11.75905704498291\n      ],\n      [\n        \"▁accidents\",\n        -11.759113311767578\n      ],\n      [\n        \"▁barrel\",\n        -11.759170532226562\n      ],\n      [\n        \"mobil\",\n        -11.759310722351074\n      ],\n      [\n        \"etti\",\n        -11.759437561035156\n      ],\n      [\n        \"▁immigration\",\n        -11.759515762329102\n      ],\n      [\n        \"▁poveste\",\n        -11.759528160095215\n      ],\n      [\n        \"hren\",\n        -11.759669303894043\n      ],\n      [\n        \"hydr\",\n        -11.759719848632812\n      ],\n      [\n        \"▁tweet\",\n        -11.759744644165039\n      ],\n      [\n        \"▁zip\",\n        -11.759872436523438\n      ],\n      [\n        \"▁Bonus\",\n        -11.760189056396484\n      ],\n      [\n        \"ordnung\",\n        -11.760287284851074\n      ],\n      [\n        \"liber\",\n        -11.76046085357666\n      ],\n      [\n        \"▁Navy\",\n        -11.760591506958008\n      ],\n      [\n        \"▁agreements\",\n        -11.760612487792969\n      ],\n      [\n        \"▁detection\",\n        -11.7607421875\n      ],\n      [\n        \"DF\",\n        -11.760762214660645\n      ],\n      [\n        \"hur\",\n        -11.760774612426758\n      ],\n      [\n        \"0.00\",\n        -11.760798454284668\n      ],\n      [\n        \"▁07\",\n        -11.760866165161133\n      ],\n      [\n        \"etta\",\n        -11.760884284973145\n      ],\n      [\n        \"▁13,\",\n        -11.760887145996094\n      ],\n      [\n        \"rolled\",\n        -11.760970115661621\n      ],\n      [\n        \"▁injection\",\n        -11.761002540588379\n      ],\n      [\n        \"mig\",\n        -11.761017799377441\n      ],\n      [\n        \"wach\",\n        -11.761107444763184\n      ],\n      [\n        \"▁choisir\",\n        -11.761515617370605\n      ],\n      [\n        \"▁professionnels\",\n        -11.76159954071045\n      ],\n      [\n        \"▁Tower\",\n        -11.76169490814209\n      ],\n      [\n        \"▁neighbor\",\n        -11.76170539855957\n      ],\n      [\n        \"deutschen\",\n        -11.76187801361084\n      ],\n      [\n        \"▁luxurious\",\n        -11.76201057434082\n      ],\n      [\n        \"▁walks\",\n        -11.762033462524414\n      ],\n      [\n        \"reti\",\n        -11.762046813964844\n      ],\n      [\n        \"▁Pad\",\n        -11.762085914611816\n      ],\n      [\n        \"wise\",\n        -11.762297630310059\n      ],\n      [\n        \"▁exhaust\",\n        -11.762307167053223\n      ],\n      [\n        \"▁demonstration\",\n        -11.762582778930664\n      ],\n      [\n        \"▁agricultural\",\n        -11.762667655944824\n      ],\n      [\n        \"Upon\",\n        -11.762885093688965\n      ],\n      [\n        \"▁Blu\",\n        -11.76292610168457\n      ],\n      [\n        \"atorul\",\n        -11.762967109680176\n      ],\n      [\n        \"amour\",\n        -11.762984275817871\n      ],\n      [\n        \"issant\",\n        -11.763004302978516\n      ],\n      [\n        \"▁delighted\",\n        -11.763031959533691\n      ],\n      [\n        \"rita\",\n        -11.763113021850586\n      ],\n      [\n        \"requiring\",\n        -11.763195037841797\n      ],\n      [\n        \"ivity\",\n        -11.763216972351074\n      ],\n      [\n        \"▁Unser\",\n        -11.763306617736816\n      ],\n      [\n        \"FP\",\n        -11.763379096984863\n      ],\n      [\n        \"fait\",\n        -11.763533592224121\n      ],\n      [\n        \"dite\",\n        -11.763562202453613\n      ],\n      [\n        \"kul\",\n        -11.763716697692871\n      ],\n      [\n        \"arth\",\n        -11.76376724243164\n      ],\n      [\n        \"▁Ker\",\n        -11.763815879821777\n      ],\n      [\n        \"torilor\",\n        -11.763816833496094\n      ],\n      [\n        \"stage\",\n        -11.763866424560547\n      ],\n      [\n        \"▁HTML\",\n        -11.76398754119873\n      ],\n      [\n        \"▁Wheel\",\n        -11.764005661010742\n      ],\n      [\n        \"▁quelque\",\n        -11.76414680480957\n      ],\n      [\n        \"▁Ou\",\n        -11.764196395874023\n      ],\n      [\n        \"▁considerable\",\n        -11.764277458190918\n      ],\n      [\n        \"▁Sco\",\n        -11.76458740234375\n      ],\n      [\n        \"▁donations\",\n        -11.76481819152832\n      ],\n      [\n        \"dessen\",\n        -11.765002250671387\n      ],\n      [\n        \"▁pourquoi\",\n        -11.765039443969727\n      ],\n      [\n        \"▁Bow\",\n        -11.765189170837402\n      ],\n      [\n        \"▁Dupa\",\n        -11.76522445678711\n      ],\n      [\n        \"ska\",\n        -11.765707015991211\n      ],\n      [\n        \"hot\",\n        -11.765732765197754\n      ],\n      [\n        \"▁drove\",\n        -11.765849113464355\n      ],\n      [\n        \"▁oppos\",\n        -11.766018867492676\n      ],\n      [\n        \"▁hiking\",\n        -11.766035079956055\n      ],\n      [\n        \"▁Boot\",\n        -11.766081809997559\n      ],\n      [\n        \"One\",\n        -11.766087532043457\n      ],\n      [\n        \"▁guvern\",\n        -11.766094207763672\n      ],\n      [\n        \"▁15,\",\n        -11.766400337219238\n      ],\n      [\n        \"scheid\",\n        -11.766437530517578\n      ],\n      [\n        \"▁Miet\",\n        -11.766458511352539\n      ],\n      [\n        \"▁Technical\",\n        -11.766767501831055\n      ],\n      [\n        \"▁Dal\",\n        -11.7669038772583\n      ],\n      [\n        \"▁Metro\",\n        -11.766966819763184\n      ],\n      [\n        \"▁Baker\",\n        -11.767215728759766\n      ],\n      [\n        \"▁trece\",\n        -11.767252922058105\n      ],\n      [\n        \"tained\",\n        -11.767302513122559\n      ],\n      [\n        \"block\",\n        -11.76738452911377\n      ],\n      [\n        \"▁wander\",\n        -11.767401695251465\n      ],\n      [\n        \"▁penalty\",\n        -11.76742172241211\n      ],\n      [\n        \"▁shipped\",\n        -11.767509460449219\n      ],\n      [\n        \"▁30%\",\n        -11.767518043518066\n      ],\n      [\n        \"group\",\n        -11.767541885375977\n      ],\n      [\n        \"▁brothers\",\n        -11.767701148986816\n      ],\n      [\n        \"▁comanda\",\n        -11.767777442932129\n      ],\n      [\n        \"▁retreat\",\n        -11.767789840698242\n      ],\n      [\n        \"▁Movie\",\n        -11.767802238464355\n      ],\n      [\n        \"PU\",\n        -11.76787281036377\n      ],\n      [\n        \"▁Jun\",\n        -11.767885208129883\n      ],\n      [\n        \"▁$6\",\n        -11.767969131469727\n      ],\n      [\n        \"▁Fal\",\n        -11.768054962158203\n      ],\n      [\n        \"▁Palestinian\",\n        -11.768075942993164\n      ],\n      [\n        \"▁soccer\",\n        -11.768217086791992\n      ],\n      [\n        \"▁Autor\",\n        -11.768254280090332\n      ],\n      [\n        \"▁chamber\",\n        -11.768266677856445\n      ],\n      [\n        \"nement\",\n        -11.768463134765625\n      ],\n      [\n        \"▁offense\",\n        -11.768610954284668\n      ],\n      [\n        \"▁gig\",\n        -11.768631935119629\n      ],\n      [\n        \"▁abandon\",\n        -11.768691062927246\n      ],\n      [\n        \"▁Kraft\",\n        -11.768783569335938\n      ],\n      [\n        \"▁Medicare\",\n        -11.768784523010254\n      ],\n      [\n        \"▁soap\",\n        -11.768835067749023\n      ],\n      [\n        \"▁Fur\",\n        -11.768990516662598\n      ],\n      [\n        \"▁conditioning\",\n        -11.769103050231934\n      ],\n      [\n        \"rained\",\n        -11.769132614135742\n      ],\n      [\n        \"▁puts\",\n        -11.769134521484375\n      ],\n      [\n        \"▁cod\",\n        -11.76930046081543\n      ],\n      [\n        \"lassen\",\n        -11.76941967010498\n      ],\n      [\n        \"FL\",\n        -11.769600868225098\n      ],\n      [\n        \"▁komplett\",\n        -11.769664764404297\n      ],\n      [\n        \"▁entscheiden\",\n        -11.769665718078613\n      ],\n      [\n        \"▁Hour\",\n        -11.769691467285156\n      ],\n      [\n        \"?!\",\n        -11.770040512084961\n      ],\n      [\n        \"Stream\",\n        -11.770145416259766\n      ],\n      [\n        \"▁Grad\",\n        -11.770209312438965\n      ],\n      [\n        \"▁gently\",\n        -11.770231246948242\n      ],\n      [\n        \"▁poetry\",\n        -11.770429611206055\n      ],\n      [\n        \"▁secured\",\n        -11.770438194274902\n      ],\n      [\n        \"oph\",\n        -11.770466804504395\n      ],\n      [\n        \"hop\",\n        -11.770561218261719\n      ],\n      [\n        \"handel\",\n        -11.770634651184082\n      ],\n      [\n        \"▁besoins\",\n        -11.770658493041992\n      ],\n      [\n        \"got\",\n        -11.770824432373047\n      ],\n      [\n        \"▁Chrome\",\n        -11.77088737487793\n      ],\n      [\n        \"ILL\",\n        -11.770930290222168\n      ],\n      [\n        \"▁Schritt\",\n        -11.771014213562012\n      ],\n      [\n        \"▁spell\",\n        -11.771063804626465\n      ],\n      [\n        \"▁grinding\",\n        -11.771334648132324\n      ],\n      [\n        \"▁ramp\",\n        -11.77144718170166\n      ],\n      [\n        \"▁mama\",\n        -11.7716064453125\n      ],\n      [\n        \"▁bottles\",\n        -11.77180290222168\n      ],\n      [\n        \"▁canvas\",\n        -11.771906852722168\n      ],\n      [\n        \"▁ecosystem\",\n        -11.77194595336914\n      ],\n      [\n        \"aţii\",\n        -11.771967887878418\n      ],\n      [\n        \"cellular\",\n        -11.772085189819336\n      ],\n      [\n        \"▁Spin\",\n        -11.772164344787598\n      ],\n      [\n        \"▁Discover\",\n        -11.772217750549316\n      ],\n      [\n        \"-17\",\n        -11.772322654724121\n      ],\n      [\n        \"▁feeding\",\n        -11.77246379852295\n      ],\n      [\n        \"▁stops\",\n        -11.7725191116333\n      ],\n      [\n        \"▁haute\",\n        -11.772552490234375\n      ],\n      [\n        \"▁Entscheidung\",\n        -11.7725830078125\n      ],\n      [\n        \"▁semble\",\n        -11.772590637207031\n      ],\n      [\n        \"▁acele\",\n        -11.772857666015625\n      ],\n      [\n        \"▁Walk\",\n        -11.773154258728027\n      ],\n      [\n        \"▁joke\",\n        -11.773180961608887\n      ],\n      [\n        \"▁Fed\",\n        -11.773294448852539\n      ],\n      [\n        \"climat\",\n        -11.773306846618652\n      ],\n      [\n        \"▁Lot\",\n        -11.773460388183594\n      ],\n      [\n        \"runner\",\n        -11.773551940917969\n      ],\n      [\n        \"▁flip\",\n        -11.773786544799805\n      ],\n      [\n        \"▁werde\",\n        -11.773818016052246\n      ],\n      [\n        \"▁Deck\",\n        -11.77417278289795\n      ],\n      [\n        \"bala\",\n        -11.774296760559082\n      ],\n      [\n        \"▁sacrifice\",\n        -11.774375915527344\n      ],\n      [\n        \"cid\",\n        -11.774388313293457\n      ],\n      [\n        \"him\",\n        -11.774569511413574\n      ],\n      [\n        \"zahlen\",\n        -11.774587631225586\n      ],\n      [\n        \"▁heater\",\n        -11.774596214294434\n      ],\n      [\n        \"formed\",\n        -11.774619102478027\n      ],\n      [\n        \"plus\",\n        -11.774711608886719\n      ],\n      [\n        \"▁util\",\n        -11.774742126464844\n      ],\n      [\n        \"rama\",\n        -11.775019645690918\n      ],\n      [\n        \"(4)\",\n        -11.7750244140625\n      ],\n      [\n        \"▁knife\",\n        -11.775111198425293\n      ],\n      [\n        \"▁traditions\",\n        -11.77520751953125\n      ],\n      [\n        \"▁dip\",\n        -11.775357246398926\n      ],\n      [\n        \"kill\",\n        -11.775405883789062\n      ],\n      [\n        \"▁Rich\",\n        -11.775418281555176\n      ],\n      [\n        \"▁DI\",\n        -11.775555610656738\n      ],\n      [\n        \"▁containers\",\n        -11.775677680969238\n      ],\n      [\n        \"▁locuri\",\n        -11.775728225708008\n      ],\n      [\n        \"▁continent\",\n        -11.775797843933105\n      ],\n      [\n        \"teilung\",\n        -11.776005744934082\n      ],\n      [\n        \"▁vreme\",\n        -11.776028633117676\n      ],\n      [\n        \"organisation\",\n        -11.776126861572266\n      ],\n      [\n        \"serie\",\n        -11.776135444641113\n      ],\n      [\n        \"▁Diamond\",\n        -11.776204109191895\n      ],\n      [\n        \"magazin\",\n        -11.77627944946289\n      ],\n      [\n        \"▁poster\",\n        -11.776455879211426\n      ],\n      [\n        \"▁passenger\",\n        -11.7765474319458\n      ],\n      [\n        \"▁soldiers\",\n        -11.776552200317383\n      ],\n      [\n        \"▁urgent\",\n        -11.776616096496582\n      ],\n      [\n        \"▁Lip\",\n        -11.77680778503418\n      ],\n      [\n        \"▁aşa\",\n        -11.776972770690918\n      ],\n      [\n        \"▁BO\",\n        -11.777024269104004\n      ],\n      [\n        \"▁somebody\",\n        -11.777076721191406\n      ],\n      [\n        \"▁silence\",\n        -11.777132034301758\n      ],\n      [\n        \"cop\",\n        -11.777359962463379\n      ],\n      [\n        \"▁Burn\",\n        -11.77749252319336\n      ],\n      [\n        \"▁stopping\",\n        -11.777544021606445\n      ],\n      [\n        \"▁essence\",\n        -11.777568817138672\n      ],\n      [\n        \"▁hitting\",\n        -11.777762413024902\n      ],\n      [\n        \"▁producers\",\n        -11.777801513671875\n      ],\n      [\n        \"▁fibre\",\n        -11.777894020080566\n      ],\n      [\n        \"▁seasonal\",\n        -11.777960777282715\n      ],\n      [\n        \"▁tara\",\n        -11.778096199035645\n      ],\n      [\n        \"▁Jose\",\n        -11.778099060058594\n      ],\n      [\n        \"▁Better\",\n        -11.77825927734375\n      ],\n      [\n        \"▁steep\",\n        -11.778295516967773\n      ],\n      [\n        \"Alors\",\n        -11.778353691101074\n      ],\n      [\n        \"▁collecting\",\n        -11.778507232666016\n      ],\n      [\n        \"vre\",\n        -11.778635025024414\n      ],\n      [\n        \"▁disabled\",\n        -11.77863883972168\n      ],\n      [\n        \"▁voters\",\n        -11.778679847717285\n      ],\n      [\n        \"consuming\",\n        -11.779092788696289\n      ],\n      [\n        \"deemed\",\n        -11.779115676879883\n      ],\n      [\n        \"éra\",\n        -11.779227256774902\n      ],\n      [\n        \"opération\",\n        -11.779273986816406\n      ],\n      [\n        \"▁roller\",\n        -11.779305458068848\n      ],\n      [\n        \"Rather\",\n        -11.779321670532227\n      ],\n      [\n        \"▁leider\",\n        -11.779370307922363\n      ],\n      [\n        \"▁IV\",\n        -11.779434204101562\n      ],\n      [\n        \"▁erreichen\",\n        -11.779473304748535\n      ],\n      [\n        \"▁charging\",\n        -11.779657363891602\n      ],\n      [\n        \"tions\",\n        -11.77973747253418\n      ],\n      [\n        \"tiques\",\n        -11.779861450195312\n      ],\n      [\n        \"▁formats\",\n        -11.779876708984375\n      ],\n      [\n        \"▁painful\",\n        -11.78000545501709\n      ],\n      [\n        \"▁eager\",\n        -11.780061721801758\n      ],\n      [\n        \"generation\",\n        -11.780137062072754\n      ],\n      [\n        \"anna\",\n        -11.780235290527344\n      ],\n      [\n        \"▁races\",\n        -11.780323028564453\n      ],\n      [\n        \"force\",\n        -11.780357360839844\n      ],\n      [\n        \"▁ferm\",\n        -11.780522346496582\n      ],\n      [\n        \"▁breathing\",\n        -11.780618667602539\n      ],\n      [\n        \"▁offen\",\n        -11.780648231506348\n      ],\n      [\n        \"▁minds\",\n        -11.780805587768555\n      ],\n      [\n        \"▁musste\",\n        -11.780832290649414\n      ],\n      [\n        \"▁Vision\",\n        -11.780888557434082\n      ],\n      [\n        \"▁Installation\",\n        -11.780988693237305\n      ],\n      [\n        \"▁hesitate\",\n        -11.781002044677734\n      ],\n      [\n        \"▁somit\",\n        -11.781023979187012\n      ],\n      [\n        \"hôtel\",\n        -11.781044006347656\n      ],\n      [\n        \"cab\",\n        -11.781235694885254\n      ],\n      [\n        \"-16\",\n        -11.781312942504883\n      ],\n      [\n        \"▁Visual\",\n        -11.781418800354004\n      ],\n      [\n        \"intérêt\",\n        -11.781524658203125\n      ],\n      [\n        \"▁apel\",\n        -11.781831741333008\n      ],\n      [\n        \"therapy\",\n        -11.782089233398438\n      ],\n      [\n        \"volt\",\n        -11.78225040435791\n      ],\n      [\n        \"▁Rou\",\n        -11.782439231872559\n      ],\n      [\n        \"▁efficace\",\n        -11.782464027404785\n      ],\n      [\n        \"▁architectural\",\n        -11.782605171203613\n      ],\n      [\n        \"▁privilege\",\n        -11.782670974731445\n      ],\n      [\n        \"▁treating\",\n        -11.782711029052734\n      ],\n      [\n        \"▁Tam\",\n        -11.782722473144531\n      ],\n      [\n        \"tsch\",\n        -11.782744407653809\n      ],\n      [\n        \"building\",\n        -11.782750129699707\n      ],\n      [\n        \"▁associations\",\n        -11.782929420471191\n      ],\n      [\n        \"▁Consumer\",\n        -11.783424377441406\n      ],\n      [\n        \"▁Lim\",\n        -11.783496856689453\n      ],\n      [\n        \"newest\",\n        -11.7835054397583\n      ],\n      [\n        \"▁față\",\n        -11.783675193786621\n      ],\n      [\n        \"▁ships\",\n        -11.783732414245605\n      ],\n      [\n        \"lev\",\n        -11.78373908996582\n      ],\n      [\n        \"raft\",\n        -11.783817291259766\n      ],\n      [\n        \"▁variations\",\n        -11.783845901489258\n      ],\n      [\n        \"▁noua\",\n        -11.78386402130127\n      ],\n      [\n        \"▁Cab\",\n        -11.784063339233398\n      ],\n      [\n        \"1.2\",\n        -11.78409481048584\n      ],\n      [\n        \"▁ocazi\",\n        -11.784347534179688\n      ],\n      [\n        \"▁recommendation\",\n        -11.784449577331543\n      ],\n      [\n        \"titled\",\n        -11.78445053100586\n      ],\n      [\n        \"▁invoice\",\n        -11.78459644317627\n      ],\n      [\n        \"▁noastra\",\n        -11.784647941589355\n      ],\n      [\n        \"kur\",\n        -11.784700393676758\n      ],\n      [\n        \"issent\",\n        -11.784758567810059\n      ],\n      [\n        \"base\",\n        -11.784778594970703\n      ],\n      [\n        \"hä\",\n        -11.7848482131958\n      ],\n      [\n        \"888\",\n        -11.784914016723633\n      ],\n      [\n        \"▁declar\",\n        -11.784941673278809\n      ],\n      [\n        \"▁Football\",\n        -11.7850341796875\n      ],\n      [\n        \"▁Indeed\",\n        -11.785293579101562\n      ],\n      [\n        \"▁weapon\",\n        -11.785333633422852\n      ],\n      [\n        \"▁destroyed\",\n        -11.785457611083984\n      ],\n      [\n        \"▁enormous\",\n        -11.785594940185547\n      ],\n      [\n        \"▁blanket\",\n        -11.7857084274292\n      ],\n      [\n        \"▁aktiv\",\n        -11.785759925842285\n      ],\n      [\n        \"raw\",\n        -11.785791397094727\n      ],\n      [\n        \"▁computing\",\n        -11.785823822021484\n      ],\n      [\n        \"6)\",\n        -11.785955429077148\n      ],\n      [\n        \"▁Dam\",\n        -11.786152839660645\n      ],\n      [\n        \"▁confort\",\n        -11.786174774169922\n      ],\n      [\n        \"▁Gla\",\n        -11.786198616027832\n      ],\n      [\n        \"hardly\",\n        -11.786242485046387\n      ],\n      [\n        \"▁annually\",\n        -11.786269187927246\n      ],\n      [\n        \"▁destinations\",\n        -11.786401748657227\n      ],\n      [\n        \"▁guilty\",\n        -11.786404609680176\n      ],\n      [\n        \"▁scholarship\",\n        -11.786439895629883\n      ],\n      [\n        \"▁harmful\",\n        -11.786453247070312\n      ],\n      [\n        \"▁2-3\",\n        -11.786616325378418\n      ],\n      [\n        \"▁Race\",\n        -11.786638259887695\n      ],\n      [\n        \"▁hypo\",\n        -11.78671646118164\n      ],\n      [\n        \"▁shorter\",\n        -11.786733627319336\n      ],\n      [\n        \"quest\",\n        -11.78675651550293\n      ],\n      [\n        \"uze\",\n        -11.786812782287598\n      ],\n      [\n        \"izi\",\n        -11.787005424499512\n      ],\n      [\n        \"OO\",\n        -11.787095069885254\n      ],\n      [\n        \"▁Schutz\",\n        -11.787097930908203\n      ],\n      [\n        \"▁Teilnehmer\",\n        -11.787185668945312\n      ],\n      [\n        \"▁profiles\",\n        -11.787199020385742\n      ],\n      [\n        \"▁sustainability\",\n        -11.78747272491455\n      ],\n      [\n        \"▁emb\",\n        -11.787489891052246\n      ],\n      [\n        \"▁Augen\",\n        -11.787516593933105\n      ],\n      [\n        \"▁outdoors\",\n        -11.787542343139648\n      ],\n      [\n        \"▁Individual\",\n        -11.787548065185547\n      ],\n      [\n        \"▁pou\",\n        -11.78757095336914\n      ],\n      [\n        \"▁Together\",\n        -11.787575721740723\n      ],\n      [\n        \"HT\",\n        -11.787674903869629\n      ],\n      [\n        \"suited\",\n        -11.787755012512207\n      ],\n      [\n        \"▁tro\",\n        -11.787782669067383\n      ],\n      [\n        \"▁Strom\",\n        -11.787805557250977\n      ],\n      [\n        \"▁achievement\",\n        -11.78799819946289\n      ],\n      [\n        \"▁Range\",\n        -11.78815746307373\n      ],\n      [\n        \"tory\",\n        -11.78817081451416\n      ],\n      [\n        \"▁distribute\",\n        -11.788250923156738\n      ],\n      [\n        \"▁letzte\",\n        -11.788276672363281\n      ],\n      [\n        \"incorporated\",\n        -11.788287162780762\n      ],\n      [\n        \"▁Kir\",\n        -11.788325309753418\n      ],\n      [\n        \"ruf\",\n        -11.78839111328125\n      ],\n      [\n        \"▁disappointed\",\n        -11.788543701171875\n      ],\n      [\n        \"▁referral\",\n        -11.788602828979492\n      ],\n      [\n        \"flam\",\n        -11.788687705993652\n      ],\n      [\n        \"▁excessive\",\n        -11.7886962890625\n      ],\n      [\n        \"▁rapidement\",\n        -11.788743019104004\n      ],\n      [\n        \"▁Rio\",\n        -11.78875732421875\n      ],\n      [\n        \"aţia\",\n        -11.788951873779297\n      ],\n      [\n        \"▁meuble\",\n        -11.78912353515625\n      ],\n      [\n        \"▁2008.\",\n        -11.789135932922363\n      ],\n      [\n        \"▁Gall\",\n        -11.78915023803711\n      ],\n      [\n        \"▁française\",\n        -11.789369583129883\n      ],\n      [\n        \"▁ladies\",\n        -11.789695739746094\n      ],\n      [\n        \"ailed\",\n        -11.789746284484863\n      ],\n      [\n        \"El\",\n        -11.789834976196289\n      ],\n      [\n        \"▁wines\",\n        -11.789868354797363\n      ],\n      [\n        \"▁beispielsweise\",\n        -11.789876937866211\n      ],\n      [\n        \"▁gamme\",\n        -11.790193557739258\n      ],\n      [\n        \"▁guided\",\n        -11.79028034210205\n      ],\n      [\n        \"▁plin\",\n        -11.790339469909668\n      ],\n      [\n        \"Î\",\n        -11.790390968322754\n      ],\n      [\n        \"▁True\",\n        -11.790498733520508\n      ],\n      [\n        \"▁Temple\",\n        -11.790507316589355\n      ],\n      [\n        \"▁Pic\",\n        -11.790520668029785\n      ],\n      [\n        \"permalink\",\n        -11.790547370910645\n      ],\n      [\n        \"▁vedea\",\n        -11.790656089782715\n      ],\n      [\n        \"▁rank\",\n        -11.790922164916992\n      ],\n      [\n        \"▁Grill\",\n        -11.791025161743164\n      ],\n      [\n        \"clin\",\n        -11.791070938110352\n      ],\n      [\n        \"▁Hab\",\n        -11.791089057922363\n      ],\n      [\n        \"▁odds\",\n        -11.791125297546387\n      ],\n      [\n        \"▁anytime\",\n        -11.791146278381348\n      ],\n      [\n        \"▁Thanksgiving\",\n        -11.791265487670898\n      ],\n      [\n        \"guard\",\n        -11.791300773620605\n      ],\n      [\n        \"▁essays\",\n        -11.791389465332031\n      ],\n      [\n        \"▁PE\",\n        -11.79139518737793\n      ],\n      [\n        \"▁Rechts\",\n        -11.791494369506836\n      ],\n      [\n        \"mals\",\n        -11.791751861572266\n      ],\n      [\n        \"achi\",\n        -11.791762351989746\n      ],\n      [\n        \"▁Anthony\",\n        -11.791765213012695\n      ],\n      [\n        \"▁réponse\",\n        -11.792036056518555\n      ],\n      [\n        \"standing\",\n        -11.79227352142334\n      ],\n      [\n        \"▁Mol\",\n        -11.792427062988281\n      ],\n      [\n        \"▁Canon\",\n        -11.792474746704102\n      ],\n      [\n        \"▁silk\",\n        -11.792515754699707\n      ],\n      [\n        \"▁pourrait\",\n        -11.79278564453125\n      ],\n      [\n        \"▁raport\",\n        -11.79280948638916\n      ],\n      [\n        \"▁Woche\",\n        -11.792889595031738\n      ],\n      [\n        \"fallen\",\n        -11.79293155670166\n      ],\n      [\n        \"sting\",\n        -11.79310131072998\n      ],\n      [\n        \"▁circulation\",\n        -11.793102264404297\n      ],\n      [\n        \"▁skirt\",\n        -11.7931547164917\n      ],\n      [\n        \"▁Title\",\n        -11.793187141418457\n      ],\n      [\n        \"▁17.\",\n        -11.79331111907959\n      ],\n      [\n        \"▁Touch\",\n        -11.793486595153809\n      ],\n      [\n        \"▁utilizat\",\n        -11.79352855682373\n      ],\n      [\n        \"▁Organisation\",\n        -11.793569564819336\n      ],\n      [\n        \"▁mereu\",\n        -11.793848991394043\n      ],\n      [\n        \"▁oxygen\",\n        -11.793953895568848\n      ],\n      [\n        \"lique\",\n        -11.793985366821289\n      ],\n      [\n        \"▁consume\",\n        -11.794100761413574\n      ],\n      [\n        \"▁Barb\",\n        -11.794102668762207\n      ],\n      [\n        \"1.1\",\n        -11.794105529785156\n      ],\n      [\n        \"▁nicely\",\n        -11.79419231414795\n      ],\n      [\n        \"▁psychological\",\n        -11.794227600097656\n      ],\n      [\n        \"▁refrigerator\",\n        -11.794478416442871\n      ],\n      [\n        \"▁fantasy\",\n        -11.79481029510498\n      ],\n      [\n        \"▁dispute\",\n        -11.79494571685791\n      ],\n      [\n        \"▁IBM\",\n        -11.794954299926758\n      ],\n      [\n        \"▁Nation\",\n        -11.794971466064453\n      ],\n      [\n        \"▁mobil\",\n        -11.795063972473145\n      ],\n      [\n        \"▁density\",\n        -11.795201301574707\n      ],\n      [\n        \"ske\",\n        -11.795230865478516\n      ],\n      [\n        \"▁intimate\",\n        -11.795313835144043\n      ],\n      [\n        \"▁tailored\",\n        -11.795319557189941\n      ],\n      [\n        \"▁outline\",\n        -11.795472145080566\n      ],\n      [\n        \"TN\",\n        -11.79554557800293\n      ],\n      [\n        \"mur\",\n        -11.795634269714355\n      ],\n      [\n        \"GC\",\n        -11.795662879943848\n      ],\n      [\n        \"they\",\n        -11.795992851257324\n      ],\n      [\n        \"pag\",\n        -11.796161651611328\n      ],\n      [\n        \"▁Kultur\",\n        -11.796246528625488\n      ],\n      [\n        \"grün\",\n        -11.796281814575195\n      ],\n      [\n        \"voted\",\n        -11.796529769897461\n      ],\n      [\n        \"▁donné\",\n        -11.796546936035156\n      ],\n      [\n        \"▁Să\",\n        -11.796629905700684\n      ],\n      [\n        \"enberg\",\n        -11.796648979187012\n      ],\n      [\n        \"▁wi\",\n        -11.79686450958252\n      ],\n      [\n        \"▁Francis\",\n        -11.797057151794434\n      ],\n      [\n        \"▁Rick\",\n        -11.797157287597656\n      ],\n      [\n        \"accord\",\n        -11.797403335571289\n      ],\n      [\n        \"▁Zusammen\",\n        -11.797415733337402\n      ],\n      [\n        \"▁nonprofit\",\n        -11.797456741333008\n      ],\n      [\n        \"▁listings\",\n        -11.797615051269531\n      ],\n      [\n        \"6,\",\n        -11.797908782958984\n      ],\n      [\n        \"▁maximize\",\n        -11.798253059387207\n      ],\n      [\n        \"bud\",\n        -11.798345565795898\n      ],\n      [\n        \"▁promotional\",\n        -11.798486709594727\n      ],\n      [\n        \"cina\",\n        -11.798646926879883\n      ],\n      [\n        \"▁potatoes\",\n        -11.79869556427002\n      ],\n      [\n        \"▁mot\",\n        -11.798871040344238\n      ],\n      [\n        \"carries\",\n        -11.799384117126465\n      ],\n      [\n        \"▁stabilit\",\n        -11.799458503723145\n      ],\n      [\n        \"▁Door\",\n        -11.799574851989746\n      ],\n      [\n        \"▁downloaded\",\n        -11.799574851989746\n      ],\n      [\n        \"▁experimental\",\n        -11.799724578857422\n      ],\n      [\n        \"HD\",\n        -11.7997407913208\n      ],\n      [\n        \"▁parfois\",\n        -11.79980182647705\n      ],\n      [\n        \"▁zeigen\",\n        -11.800092697143555\n      ],\n      [\n        \"▁proposé\",\n        -11.80030632019043\n      ],\n      [\n        \"▁Verein\",\n        -11.800636291503906\n      ],\n      [\n        \"▁amestec\",\n        -11.800676345825195\n      ],\n      [\n        \"▁entreprise\",\n        -11.800718307495117\n      ],\n      [\n        \"▁PSD\",\n        -11.800841331481934\n      ],\n      [\n        \"▁bake\",\n        -11.800897598266602\n      ],\n      [\n        \"▁Rh\",\n        -11.800904273986816\n      ],\n      [\n        \"▁Mehr\",\n        -11.800922393798828\n      ],\n      [\n        \"▁purple\",\n        -11.801074028015137\n      ],\n      [\n        \"▁recipient\",\n        -11.80109691619873\n      ],\n      [\n        \"rare\",\n        -11.801166534423828\n      ],\n      [\n        \"egi\",\n        -11.80117130279541\n      ],\n      [\n        \"ancien\",\n        -11.801176071166992\n      ],\n      [\n        \"▁risque\",\n        -11.80118465423584\n      ],\n      [\n        \"▁mystery\",\n        -11.80157470703125\n      ],\n      [\n        \"mac\",\n        -11.801697731018066\n      ],\n      [\n        \"ibility\",\n        -11.80182933807373\n      ],\n      [\n        \"▁Moore\",\n        -11.801881790161133\n      ],\n      [\n        \"▁flavors\",\n        -11.801911354064941\n      ],\n      [\n        \"▁trauma\",\n        -11.801966667175293\n      ],\n      [\n        \"▁automotive\",\n        -11.802112579345703\n      ],\n      [\n        \"▁Anyway\",\n        -11.802197456359863\n      ],\n      [\n        \"▁simulation\",\n        -11.802253723144531\n      ],\n      [\n        \"▁crafts\",\n        -11.802525520324707\n      ],\n      [\n        \"▁measurements\",\n        -11.80257511138916\n      ],\n      [\n        \"▁cour\",\n        -11.80257797241211\n      ],\n      [\n        \"▁tard\",\n        -11.802600860595703\n      ],\n      [\n        \"nnie\",\n        -11.802881240844727\n      ],\n      [\n        \"▁Production\",\n        -11.803388595581055\n      ],\n      [\n        \"▁Cleaning\",\n        -11.803567886352539\n      ],\n      [\n        \"5,\",\n        -11.803644180297852\n      ],\n      [\n        \"▁Islamic\",\n        -11.803766250610352\n      ],\n      [\n        \"▁Gate\",\n        -11.80378532409668\n      ],\n      [\n        \"bay\",\n        -11.803814888000488\n      ],\n      [\n        \"HR\",\n        -11.803990364074707\n      ],\n      [\n        \"▁Offer\",\n        -11.80399227142334\n      ],\n      [\n        \"▁acceptance\",\n        -11.804107666015625\n      ],\n      [\n        \"▁Erfahrung\",\n        -11.80412769317627\n      ],\n      [\n        \"▁environ\",\n        -11.804193496704102\n      ],\n      [\n        \"▁fancy\",\n        -11.804218292236328\n      ],\n      [\n        \"▁bullet\",\n        -11.80437183380127\n      ],\n      [\n        \"organ\",\n        -11.804466247558594\n      ],\n      [\n        \"▁Peace\",\n        -11.804520606994629\n      ],\n      [\n        \"▁detalii\",\n        -11.80461597442627\n      ],\n      [\n        \"▁promised\",\n        -11.804715156555176\n      ],\n      [\n        \"▁wellness\",\n        -11.804746627807617\n      ],\n      [\n        \"▁satisfy\",\n        -11.80481243133545\n      ],\n      [\n        \"▁grants\",\n        -11.805212020874023\n      ],\n      [\n        \"accueil\",\n        -11.80522346496582\n      ],\n      [\n        \"▁oben\",\n        -11.805412292480469\n      ],\n      [\n        \"▁prospects\",\n        -11.80543327331543\n      ],\n      [\n        \"▁Events\",\n        -11.805513381958008\n      ],\n      [\n        \"2013\",\n        -11.805569648742676\n      ],\n      [\n        \"gesehen\",\n        -11.805685997009277\n      ],\n      [\n        \"▁£1\",\n        -11.805727005004883\n      ],\n      [\n        \"▁handelt\",\n        -11.805798530578613\n      ],\n      [\n        \"▁Spieler\",\n        -11.805876731872559\n      ],\n      [\n        \"▁Virtual\",\n        -11.806145668029785\n      ],\n      [\n        \"▁bubble\",\n        -11.806239128112793\n      ],\n      [\n        \"▁Trend\",\n        -11.806254386901855\n      ],\n      [\n        \"▁sistemul\",\n        -11.806315422058105\n      ],\n      [\n        \"▁Morgan\",\n        -11.806320190429688\n      ],\n      [\n        \"▁pole\",\n        -11.806503295898438\n      ],\n      [\n        \"▁spielen\",\n        -11.806533813476562\n      ],\n      [\n        \"tür\",\n        -11.806571006774902\n      ],\n      [\n        \"SCO\",\n        -11.806572914123535\n      ],\n      [\n        \"▁informative\",\n        -11.806678771972656\n      ],\n      [\n        \"▁affirm\",\n        -11.806755065917969\n      ],\n      [\n        \"▁Aqua\",\n        -11.806818008422852\n      ],\n      [\n        \"▁AR\",\n        -11.806888580322266\n      ],\n      [\n        \"richten\",\n        -11.807071685791016\n      ],\n      [\n        \"▁rewards\",\n        -11.807122230529785\n      ],\n      [\n        \"lub\",\n        -11.807235717773438\n      ],\n      [\n        \"shot\",\n        -11.807236671447754\n      ],\n      [\n        \"LM\",\n        -11.807540893554688\n      ],\n      [\n        \"Up\",\n        -11.807586669921875\n      ],\n      [\n        \"▁absolut\",\n        -11.807737350463867\n      ],\n      [\n        \"▁Mart\",\n        -11.807806968688965\n      ],\n      [\n        \"erweise\",\n        -11.807812690734863\n      ],\n      [\n        \"BP\",\n        -11.807977676391602\n      ],\n      [\n        \"▁difficile\",\n        -11.808152198791504\n      ],\n      [\n        \"▁Document\",\n        -11.808159828186035\n      ],\n      [\n        \"▁Sweet\",\n        -11.8082914352417\n      ],\n      [\n        \"▁indicator\",\n        -11.808338165283203\n      ],\n      [\n        \"▁Boden\",\n        -11.808389663696289\n      ],\n      [\n        \"mates\",\n        -11.808477401733398\n      ],\n      [\n        \"▁supporters\",\n        -11.808504104614258\n      ],\n      [\n        \"▁begun\",\n        -11.808600425720215\n      ],\n      [\n        \"▁blogging\",\n        -11.808611869812012\n      ],\n      [\n        \"▁CL\",\n        -11.808663368225098\n      ],\n      [\n        \"gres\",\n        -11.808692932128906\n      ],\n      [\n        \"▁preferences\",\n        -11.808738708496094\n      ],\n      [\n        \"▁screw\",\n        -11.808756828308105\n      ],\n      [\n        \"▁tutor\",\n        -11.808858871459961\n      ],\n      [\n        \"▁Additional\",\n        -11.80891227722168\n      ],\n      [\n        \"▁Bitte\",\n        -11.808976173400879\n      ],\n      [\n        \"utilizing\",\n        -11.808998107910156\n      ],\n      [\n        \"▁expérience\",\n        -11.809073448181152\n      ],\n      [\n        \"▁dur\",\n        -11.809146881103516\n      ],\n      [\n        \"▁precisely\",\n        -11.809178352355957\n      ],\n      [\n        \"▁janvier\",\n        -11.809394836425781\n      ],\n      [\n        \"AGE\",\n        -11.80987548828125\n      ],\n      [\n        \"moto\",\n        -11.810007095336914\n      ],\n      [\n        \"▁counsel\",\n        -11.810195922851562\n      ],\n      [\n        \"▁110\",\n        -11.810226440429688\n      ],\n      [\n        \"nick\",\n        -11.810245513916016\n      ],\n      [\n        \"licit\",\n        -11.810540199279785\n      ],\n      [\n        \"technik\",\n        -11.810659408569336\n      ],\n      [\n        \"▁collaborate\",\n        -11.810736656188965\n      ],\n      [\n        \"▁neighbors\",\n        -11.810794830322266\n      ],\n      [\n        \"tered\",\n        -11.810922622680664\n      ],\n      [\n        \"▁excel\",\n        -11.811025619506836\n      ],\n      [\n        \"▁Route\",\n        -11.811059951782227\n      ],\n      [\n        \"steuer\",\n        -11.81109619140625\n      ],\n      [\n        \"▁pioneer\",\n        -11.811607360839844\n      ],\n      [\n        \"nuit\",\n        -11.81169319152832\n      ],\n      [\n        \"▁skip\",\n        -11.811963081359863\n      ],\n      [\n        \"▁destruction\",\n        -11.811997413635254\n      ],\n      [\n        \"▁thesis\",\n        -11.812249183654785\n      ],\n      [\n        \"▁libre\",\n        -11.812317848205566\n      ],\n      [\n        \"▁petition\",\n        -11.81234073638916\n      ],\n      [\n        \"▁steady\",\n        -11.812456130981445\n      ],\n      [\n        \"▁medications\",\n        -11.812458992004395\n      ],\n      [\n        \"▁audiences\",\n        -11.812623023986816\n      ],\n      [\n        \"▁coaches\",\n        -11.812689781188965\n      ],\n      [\n        \"aller\",\n        -11.812704086303711\n      ],\n      [\n        \"3,000\",\n        -11.812705993652344\n      ],\n      [\n        \"▁anger\",\n        -11.812785148620605\n      ],\n      [\n        \"▁striking\",\n        -11.812844276428223\n      ],\n      [\n        \"▁shades\",\n        -11.81291675567627\n      ],\n      [\n        \"▁Sitz\",\n        -11.812994956970215\n      ],\n      [\n        \"▁gluten\",\n        -11.813162803649902\n      ],\n      [\n        \"▁egal\",\n        -11.813222885131836\n      ],\n      [\n        \"ania\",\n        -11.813223838806152\n      ],\n      [\n        \"▁defend\",\n        -11.813241004943848\n      ],\n      [\n        \"gut\",\n        -11.81382942199707\n      ],\n      [\n        \"▁reserves\",\n        -11.813895225524902\n      ],\n      [\n        \"▁advocate\",\n        -11.814053535461426\n      ],\n      [\n        \"▁Cit\",\n        -11.814082145690918\n      ],\n      [\n        \"▁technicians\",\n        -11.814105033874512\n      ],\n      [\n        \"▁cater\",\n        -11.814138412475586\n      ],\n      [\n        \"leitung\",\n        -11.814190864562988\n      ],\n      [\n        \"▁towns\",\n        -11.814335823059082\n      ],\n      [\n        \"▁Costa\",\n        -11.814364433288574\n      ],\n      [\n        \"▁confront\",\n        -11.814567565917969\n      ],\n      [\n        \"mount\",\n        -11.814652442932129\n      ],\n      [\n        \"▁nationale\",\n        -11.814706802368164\n      ],\n      [\n        \"▁adverse\",\n        -11.814932823181152\n      ],\n      [\n        \"▁couleur\",\n        -11.815112113952637\n      ],\n      [\n        \"▁delight\",\n        -11.815169334411621\n      ],\n      [\n        \"▁promises\",\n        -11.815224647521973\n      ],\n      [\n        \"▁silent\",\n        -11.81550121307373\n      ],\n      [\n        \"richtet\",\n        -11.815556526184082\n      ],\n      [\n        \"▁Companies\",\n        -11.815614700317383\n      ],\n      [\n        \"▁Charlotte\",\n        -11.815620422363281\n      ],\n      [\n        \"▁labels\",\n        -11.815652847290039\n      ],\n      [\n        \"▁Süd\",\n        -11.815656661987305\n      ],\n      [\n        \"▁Honor\",\n        -11.81567096710205\n      ],\n      [\n        \"▁complaints\",\n        -11.815710067749023\n      ],\n      [\n        \"▁siècle\",\n        -11.815752029418945\n      ],\n      [\n        \"▁suits\",\n        -11.815792083740234\n      ],\n      [\n        \"▁Bath\",\n        -11.815827369689941\n      ],\n      [\n        \"mise\",\n        -11.815926551818848\n      ],\n      [\n        \"▁acela\",\n        -11.8159818649292\n      ],\n      [\n        \"▁candidat\",\n        -11.816011428833008\n      ],\n      [\n        \"Flo\",\n        -11.816207885742188\n      ],\n      [\n        \"▁conservative\",\n        -11.816215515136719\n      ],\n      [\n        \"DD\",\n        -11.816314697265625\n      ],\n      [\n        \"▁changement\",\n        -11.816414833068848\n      ],\n      [\n        \"▁login\",\n        -11.816492080688477\n      ],\n      [\n        \"▁Fashion\",\n        -11.816585540771484\n      ],\n      [\n        \"reichen\",\n        -11.816672325134277\n      ],\n      [\n        \"through\",\n        -11.816751480102539\n      ],\n      [\n        \"aki\",\n        -11.817240715026855\n      ],\n      [\n        \"gna\",\n        -11.817547798156738\n      ],\n      [\n        \"▁verse\",\n        -11.817551612854004\n      ],\n      [\n        \"▁threats\",\n        -11.817622184753418\n      ],\n      [\n        \"▁Song\",\n        -11.817770004272461\n      ],\n      [\n        \"▁funded\",\n        -11.81792163848877\n      ],\n      [\n        \"langen\",\n        -11.818023681640625\n      ],\n      [\n        \"▁distribu\",\n        -11.818195343017578\n      ],\n      [\n        \"édition\",\n        -11.818316459655762\n      ],\n      [\n        \"▁royal\",\n        -11.818562507629395\n      ],\n      [\n        \"▁bevor\",\n        -11.818829536437988\n      ],\n      [\n        \"▁02\",\n        -11.818854331970215\n      ],\n      [\n        \"straße\",\n        -11.818938255310059\n      ],\n      [\n        \"edit\",\n        -11.81904125213623\n      ],\n      [\n        \"▁energetic\",\n        -11.81922721862793\n      ],\n      [\n        \"▁Carr\",\n        -11.819757461547852\n      ],\n      [\n        \"viol\",\n        -11.819937705993652\n      ],\n      [\n        \"▁niche\",\n        -11.820054054260254\n      ],\n      [\n        \"avais\",\n        -11.820099830627441\n      ],\n      [\n        \"▁backyard\",\n        -11.82010269165039\n      ],\n      [\n        \"▁Saudi\",\n        -11.820158958435059\n      ],\n      [\n        \"▁Zwei\",\n        -11.820207595825195\n      ],\n      [\n        \"▁Legal\",\n        -11.82027530670166\n      ],\n      [\n        \"accessed\",\n        -11.820277214050293\n      ],\n      [\n        \"▁choisi\",\n        -11.820340156555176\n      ],\n      [\n        \"▁GDP\",\n        -11.820343971252441\n      ],\n      [\n        \"oferă\",\n        -11.820352554321289\n      ],\n      [\n        \"hlen\",\n        -11.820490837097168\n      ],\n      [\n        \"▁Wor\",\n        -11.820520401000977\n      ],\n      [\n        \"▁cheer\",\n        -11.820586204528809\n      ],\n      [\n        \"▁barely\",\n        -11.820625305175781\n      ],\n      [\n        \"cost\",\n        -11.820646286010742\n      ],\n      [\n        \"▁Really\",\n        -11.820661544799805\n      ],\n      [\n        \"kol\",\n        -11.820721626281738\n      ],\n      [\n        \"▁binding\",\n        -11.821045875549316\n      ],\n      [\n        \"euer\",\n        -11.821136474609375\n      ],\n      [\n        \"▁optimization\",\n        -11.821158409118652\n      ],\n      [\n        \"▁Designer\",\n        -11.8211669921875\n      ],\n      [\n        \"▁measuring\",\n        -11.82117748260498\n      ],\n      [\n        \"ncy\",\n        -11.821516036987305\n      ],\n      [\n        \"weise\",\n        -11.821520805358887\n      ],\n      [\n        \"DER\",\n        -11.821850776672363\n      ],\n      [\n        \"▁$7\",\n        -11.821949005126953\n      ],\n      [\n        \"▁Anfang\",\n        -11.821954727172852\n      ],\n      [\n        \"material\",\n        -11.821967124938965\n      ],\n      [\n        \"▁antique\",\n        -11.822281837463379\n      ],\n      [\n        \"▁Certificate\",\n        -11.822294235229492\n      ],\n      [\n        \"▁modest\",\n        -11.822370529174805\n      ],\n      [\n        \"ției\",\n        -11.822427749633789\n      ],\n      [\n        \"▁praise\",\n        -11.82245922088623\n      ],\n      [\n        \"▁Springs\",\n        -11.822660446166992\n      ],\n      [\n        \"▁organiza\",\n        -11.823041915893555\n      ],\n      [\n        \"jurul\",\n        -11.823047637939453\n      ],\n      [\n        \"▁plumbing\",\n        -11.82341194152832\n      ],\n      [\n        \"▁foster\",\n        -11.823490142822266\n      ],\n      [\n        \"▁Wy\",\n        -11.823491096496582\n      ],\n      [\n        \"▁Sab\",\n        -11.823503494262695\n      ],\n      [\n        \"▁overwhelming\",\n        -11.823677062988281\n      ],\n      [\n        \"▁matin\",\n        -11.823812484741211\n      ],\n      [\n        \"▁responded\",\n        -11.82408332824707\n      ],\n      [\n        \"▁confused\",\n        -11.824150085449219\n      ],\n      [\n        \"▁blessed\",\n        -11.824280738830566\n      ],\n      [\n        \"▁160\",\n        -11.824295997619629\n      ],\n      [\n        \"▁ingredient\",\n        -11.824360847473145\n      ],\n      [\n        \"▁confer\",\n        -11.82448673248291\n      ],\n      [\n        \"▁Gesundheit\",\n        -11.824530601501465\n      ],\n      [\n        \"▁bucket\",\n        -11.824555397033691\n      ],\n      [\n        \"kraft\",\n        -11.824565887451172\n      ],\n      [\n        \"lange\",\n        -11.824630737304688\n      ],\n      [\n        \"▁Kopf\",\n        -11.824678421020508\n      ],\n      [\n        \"▁Prize\",\n        -11.824678421020508\n      ],\n      [\n        \"▁authorized\",\n        -11.824779510498047\n      ],\n      [\n        \"▁tick\",\n        -11.824803352355957\n      ],\n      [\n        \"▁steal\",\n        -11.824910163879395\n      ],\n      [\n        \"Depending\",\n        -11.824918746948242\n      ],\n      [\n        \"Depuis\",\n        -11.824952125549316\n      ],\n      [\n        \"▁functie\",\n        -11.82499885559082\n      ],\n      [\n        \"▁developments\",\n        -11.825053215026855\n      ],\n      [\n        \"▁Christians\",\n        -11.825311660766602\n      ],\n      [\n        \"▁calculated\",\n        -11.8256254196167\n      ],\n      [\n        \"▁Leave\",\n        -11.825672149658203\n      ],\n      [\n        \"▁Jam\",\n        -11.82573413848877\n      ],\n      [\n        \"▁habitat\",\n        -11.825760841369629\n      ],\n      [\n        \"▁Sorry\",\n        -11.825801849365234\n      ],\n      [\n        \"▁oficial\",\n        -11.825944900512695\n      ],\n      [\n        \"▁allein\",\n        -11.826079368591309\n      ],\n      [\n        \"▁concentrate\",\n        -11.82608413696289\n      ],\n      [\n        \"dica\",\n        -11.826302528381348\n      ],\n      [\n        \"▁Convention\",\n        -11.826476097106934\n      ],\n      [\n        \"illes\",\n        -11.826550483703613\n      ],\n      [\n        \"▁fum\",\n        -11.82664680480957\n      ],\n      [\n        \"▁Tal\",\n        -11.826651573181152\n      ],\n      [\n        \"Europe\",\n        -11.826899528503418\n      ],\n      [\n        \"▁attachment\",\n        -11.826949119567871\n      ],\n      [\n        \"▁sensibil\",\n        -11.826995849609375\n      ],\n      [\n        \"▁clue\",\n        -11.82715892791748\n      ],\n      [\n        \"▁specialty\",\n        -11.827203750610352\n      ],\n      [\n        \"▁Cou\",\n        -11.827229499816895\n      ],\n      [\n        \"▁liste\",\n        -11.827278137207031\n      ],\n      [\n        \"▁Penn\",\n        -11.827465057373047\n      ],\n      [\n        \"TRA\",\n        -11.827559471130371\n      ],\n      [\n        \"▁Themen\",\n        -11.827561378479004\n      ],\n      [\n        \"▁motivated\",\n        -11.827906608581543\n      ],\n      [\n        \"▁camere\",\n        -11.828017234802246\n      ],\n      [\n        \"▁14,\",\n        -11.828393936157227\n      ],\n      [\n        \"▁attendance\",\n        -11.828557968139648\n      ],\n      [\n        \"atorii\",\n        -11.828581809997559\n      ],\n      [\n        \"chemistry\",\n        -11.82873821258545\n      ],\n      [\n        \"▁roofing\",\n        -11.828959465026855\n      ],\n      [\n        \"▁Links\",\n        -11.829048156738281\n      ],\n      [\n        \"▁trou\",\n        -11.829103469848633\n      ],\n      [\n        \"▁trucks\",\n        -11.829136848449707\n      ],\n      [\n        \"hilfe\",\n        -11.829557418823242\n      ],\n      [\n        \"▁(6\",\n        -11.829599380493164\n      ],\n      [\n        \"vapor\",\n        -11.82964038848877\n      ],\n      [\n        \"mad\",\n        -11.829668045043945\n      ],\n      [\n        \"▁Albert\",\n        -11.829877853393555\n      ],\n      [\n        \"▁FIG\",\n        -11.830073356628418\n      ],\n      [\n        \"▁Rand\",\n        -11.830187797546387\n      ],\n      [\n        \"▁Constitution\",\n        -11.830219268798828\n      ],\n      [\n        \"ambi\",\n        -11.830294609069824\n      ],\n      [\n        \"▁Syria\",\n        -11.830307006835938\n      ],\n      [\n        \"▁Fond\",\n        -11.830477714538574\n      ],\n      [\n        \"▁gouvernement\",\n        -11.830594062805176\n      ],\n      [\n        \"▁Active\",\n        -11.830705642700195\n      ],\n      [\n        \"▁prints\",\n        -11.830801963806152\n      ],\n      [\n        \"▁weigh\",\n        -11.8308687210083\n      ],\n      [\n        \"▁Craft\",\n        -11.831069946289062\n      ],\n      [\n        \"▁projets\",\n        -11.831247329711914\n      ],\n      [\n        \"▁paste\",\n        -11.831377029418945\n      ],\n      [\n        \"anci\",\n        -11.83139705657959\n      ],\n      [\n        \"kie\",\n        -11.831411361694336\n      ],\n      [\n        \"▁gains\",\n        -11.83165168762207\n      ],\n      [\n        \"▁Record\",\n        -11.831942558288574\n      ],\n      [\n        \"▁beliefs\",\n        -11.831954956054688\n      ],\n      [\n        \"countless\",\n        -11.831957817077637\n      ],\n      [\n        \"▁tomatoes\",\n        -11.831997871398926\n      ],\n      [\n        \"arie\",\n        -11.832082748413086\n      ],\n      [\n        \"▁140\",\n        -11.83211612701416\n      ],\n      [\n        \"▁ethical\",\n        -11.832229614257812\n      ],\n      [\n        \"objectif\",\n        -11.832279205322266\n      ],\n      [\n        \"▁acestuia\",\n        -11.832283973693848\n      ],\n      [\n        \"▁Bluetooth\",\n        -11.832398414611816\n      ],\n      [\n        \"▁agriculture\",\n        -11.832746505737305\n      ],\n      [\n        \"uré\",\n        -11.833027839660645\n      ],\n      [\n        \"▁cale\",\n        -11.833072662353516\n      ],\n      [\n        \"▁articol\",\n        -11.833073616027832\n      ],\n      [\n        \"▁gum\",\n        -11.833319664001465\n      ],\n      [\n        \"▁vendor\",\n        -11.833490371704102\n      ],\n      [\n        \"ifié\",\n        -11.833527565002441\n      ],\n      [\n        \"▁peer\",\n        -11.833662033081055\n      ],\n      [\n        \"pod\",\n        -11.834036827087402\n      ],\n      [\n        \"▁utilized\",\n        -11.834113121032715\n      ],\n      [\n        \"▁Mü\",\n        -11.834207534790039\n      ],\n      [\n        \"owohl\",\n        -11.834208488464355\n      ],\n      [\n        \"hilst\",\n        -11.834233283996582\n      ],\n      [\n        \"frame\",\n        -11.834260940551758\n      ],\n      [\n        \"▁fridge\",\n        -11.834822654724121\n      ],\n      [\n        \"▁query\",\n        -11.835108757019043\n      ],\n      [\n        \"▁Survey\",\n        -11.835227012634277\n      ],\n      [\n        \"▁Hell\",\n        -11.835247993469238\n      ],\n      [\n        \"▁notification\",\n        -11.83530044555664\n      ],\n      [\n        \"TR\",\n        -11.83538818359375\n      ],\n      [\n        \"▁ultima\",\n        -11.835505485534668\n      ],\n      [\n        \"▁radiation\",\n        -11.835631370544434\n      ],\n      [\n        \"▁musicians\",\n        -11.835821151733398\n      ],\n      [\n        \"CAN\",\n        -11.83595085144043\n      ],\n      [\n        \"▁grocery\",\n        -11.83607292175293\n      ],\n      [\n        \"▁Sicherheit\",\n        -11.83611011505127\n      ],\n      [\n        \"▁Highway\",\n        -11.836276054382324\n      ],\n      [\n        \"▁Break\",\n        -11.836285591125488\n      ],\n      [\n        \"TED\",\n        -11.836345672607422\n      ],\n      [\n        \"ön\",\n        -11.836352348327637\n      ],\n      [\n        \"▁biological\",\n        -11.836352348327637\n      ],\n      [\n        \"qual\",\n        -11.836397171020508\n      ],\n      [\n        \"250\",\n        -11.83641242980957\n      ],\n      [\n        \"▁modify\",\n        -11.836651802062988\n      ],\n      [\n        \"▁Hit\",\n        -11.836698532104492\n      ],\n      [\n        \"▁Iar\",\n        -11.836838722229004\n      ],\n      [\n        \"aged\",\n        -11.836884498596191\n      ],\n      [\n        \"...)\",\n        -11.83688735961914\n      ],\n      [\n        \"▁contrat\",\n        -11.836928367614746\n      ],\n      [\n        \"▁centres\",\n        -11.836956977844238\n      ],\n      [\n        \"griff\",\n        -11.836987495422363\n      ],\n      [\n        \"Our\",\n        -11.837233543395996\n      ],\n      [\n        \"▁determination\",\n        -11.837300300598145\n      ],\n      [\n        \"▁variables\",\n        -11.83742904663086\n      ],\n      [\n        \"▁nuts\",\n        -11.837472915649414\n      ],\n      [\n        \"échange\",\n        -11.837577819824219\n      ],\n      [\n        \"extérieur\",\n        -11.837631225585938\n      ],\n      [\n        \"▁suflet\",\n        -11.83764362335205\n      ],\n      [\n        \"▁Scha\",\n        -11.837752342224121\n      ],\n      [\n        \"stück\",\n        -11.837774276733398\n      ],\n      [\n        \"▁Tau\",\n        -11.837821960449219\n      ],\n      [\n        \"▁participa\",\n        -11.838008880615234\n      ],\n      [\n        \"▁mad\",\n        -11.838034629821777\n      ],\n      [\n        \"▁relie\",\n        -11.838051795959473\n      ],\n      [\n        \"▁Fine\",\n        -11.83808422088623\n      ],\n      [\n        \"▁grape\",\n        -11.838118553161621\n      ],\n      [\n        \"▁wage\",\n        -11.838141441345215\n      ],\n      [\n        \"▁startup\",\n        -11.838193893432617\n      ],\n      [\n        \"▁blank\",\n        -11.838194847106934\n      ],\n      [\n        \"▁physique\",\n        -11.838199615478516\n      ],\n      [\n        \"▁punch\",\n        -11.838233947753906\n      ],\n      [\n        \"▁contacts\",\n        -11.838321685791016\n      ],\n      [\n        \"▁dezvolt\",\n        -11.83835220336914\n      ],\n      [\n        \"cross\",\n        -11.838639259338379\n      ],\n      [\n        \"▁TR\",\n        -11.838652610778809\n      ],\n      [\n        \"▁gener\",\n        -11.838754653930664\n      ],\n      [\n        \"▁indem\",\n        -11.838823318481445\n      ],\n      [\n        \"▁Stan\",\n        -11.838839530944824\n      ],\n      [\n        \"▁azi\",\n        -11.838930130004883\n      ],\n      [\n        \"▁Sel\",\n        -11.838958740234375\n      ],\n      [\n        \"▁Tot\",\n        -11.83924674987793\n      ],\n      [\n        \"vra\",\n        -11.839341163635254\n      ],\n      [\n        \"▁recruit\",\n        -11.839482307434082\n      ],\n      [\n        \"▁Yeah\",\n        -11.839494705200195\n      ],\n      [\n        \"/10\",\n        -11.839507102966309\n      ],\n      [\n        \"▁nail\",\n        -11.83956241607666\n      ],\n      [\n        \"▁Ky\",\n        -11.839611053466797\n      ],\n      [\n        \"▁beloved\",\n        -11.839760780334473\n      ],\n      [\n        \"operative\",\n        -11.839823722839355\n      ],\n      [\n        \"▁Tickets\",\n        -11.83983325958252\n      ],\n      [\n        \"▁tear\",\n        -11.840229988098145\n      ],\n      [\n        \"▁amp\",\n        -11.840352058410645\n      ],\n      [\n        \"▁04\",\n        -11.840361595153809\n      ],\n      [\n        \"▁illustrate\",\n        -11.840361595153809\n      ],\n      [\n        \"▁mac\",\n        -11.840400695800781\n      ],\n      [\n        \"▁receiver\",\n        -11.840482711791992\n      ],\n      [\n        \"atrice\",\n        -11.840508460998535\n      ],\n      [\n        \"▁souhait\",\n        -11.840572357177734\n      ],\n      [\n        \"▁Gewinn\",\n        -11.840619087219238\n      ],\n      [\n        \"▁Vit\",\n        -11.840808868408203\n      ],\n      [\n        \"roch\",\n        -11.841202735900879\n      ],\n      [\n        \"▁arata\",\n        -11.841262817382812\n      ],\n      [\n        \"▁Indiana\",\n        -11.841364860534668\n      ],\n      [\n        \"child\",\n        -11.841516494750977\n      ],\n      [\n        \"▁invested\",\n        -11.84157657623291\n      ],\n      [\n        \"▁Excellent\",\n        -11.841625213623047\n      ],\n      [\n        \"gori\",\n        -11.841769218444824\n      ],\n      [\n        \"▁thermal\",\n        -11.841813087463379\n      ],\n      [\n        \"Str\",\n        -11.841973304748535\n      ],\n      [\n        \"▁liver\",\n        -11.84201717376709\n      ],\n      [\n        \"miss\",\n        -11.842035293579102\n      ],\n      [\n        \"▁utiliser\",\n        -11.842120170593262\n      ],\n      [\n        \"▁prest\",\n        -11.842445373535156\n      ],\n      [\n        \"2016\",\n        -11.842506408691406\n      ],\n      [\n        \"isée\",\n        -11.842508316040039\n      ],\n      [\n        \"▁Index\",\n        -11.842559814453125\n      ],\n      [\n        \"▁arch\",\n        -11.842639923095703\n      ],\n      [\n        \"▁Toyota\",\n        -11.842748641967773\n      ],\n      [\n        \"▁YOUR\",\n        -11.842782020568848\n      ],\n      [\n        \"▁Mexican\",\n        -11.842891693115234\n      ],\n      [\n        \"▁gegenüber\",\n        -11.842940330505371\n      ],\n      [\n        \"▁cannabis\",\n        -11.843033790588379\n      ],\n      [\n        \"bis\",\n        -11.843077659606934\n      ],\n      [\n        \"vage\",\n        -11.843083381652832\n      ],\n      [\n        \"hall\",\n        -11.843091011047363\n      ],\n      [\n        \"fax\",\n        -11.843137741088867\n      ],\n      [\n        \"▁spoken\",\n        -11.843232154846191\n      ],\n      [\n        \"▁Zimmer\",\n        -11.843544960021973\n      ],\n      [\n        \"kauf\",\n        -11.8436279296875\n      ],\n      [\n        \"▁couleurs\",\n        -11.843705177307129\n      ],\n      [\n        \"▁NJ\",\n        -11.844026565551758\n      ],\n      [\n        \"▁Heritage\",\n        -11.844318389892578\n      ],\n      [\n        \"▁Pflege\",\n        -11.844321250915527\n      ],\n      [\n        \"luc\",\n        -11.844361305236816\n      ],\n      [\n        \"▁56\",\n        -11.844489097595215\n      ],\n      [\n        \"VP\",\n        -11.844542503356934\n      ],\n      [\n        \"▁cuvinte\",\n        -11.844594955444336\n      ],\n      [\n        \"▁Alliance\",\n        -11.844614028930664\n      ],\n      [\n        \"▁coco\",\n        -11.844615936279297\n      ],\n      [\n        \"▁leverage\",\n        -11.844762802124023\n      ],\n      [\n        \"auch\",\n        -11.844844818115234\n      ],\n      [\n        \"▁Cart\",\n        -11.84506607055664\n      ],\n      [\n        \"taux\",\n        -11.84532642364502\n      ],\n      [\n        \"east\",\n        -11.84560775756836\n      ],\n      [\n        \"▁decorating\",\n        -11.84565258026123\n      ],\n      [\n        \"tip\",\n        -11.84565544128418\n      ],\n      [\n        \"▁Communications\",\n        -11.845780372619629\n      ],\n      [\n        \"ACE\",\n        -11.84580135345459\n      ],\n      [\n        \"▁Consul\",\n        -11.845993041992188\n      ],\n      [\n        \"▁Swiss\",\n        -11.846197128295898\n      ],\n      [\n        \"inci\",\n        -11.846230506896973\n      ],\n      [\n        \"▁Fact\",\n        -11.846312522888184\n      ],\n      [\n        \"▁ajung\",\n        -11.846321105957031\n      ],\n      [\n        \"▁airline\",\n        -11.846325874328613\n      ],\n      [\n        \"▁kidney\",\n        -11.846379280090332\n      ],\n      [\n        \"▁Records\",\n        -11.84642505645752\n      ],\n      [\n        \"▁Olympic\",\n        -11.846747398376465\n      ],\n      [\n        \"▁dried\",\n        -11.84719467163086\n      ],\n      [\n        \"oivent\",\n        -11.847333908081055\n      ],\n      [\n        \"▁Adobe\",\n        -11.847467422485352\n      ],\n      [\n        \"▁powers\",\n        -11.847748756408691\n      ],\n      [\n        \"lande\",\n        -11.847834587097168\n      ],\n      [\n        \"▁relieve\",\n        -11.847858428955078\n      ],\n      [\n        \"ţine\",\n        -11.847898483276367\n      ],\n      [\n        \"▁gradually\",\n        -11.847945213317871\n      ],\n      [\n        \"mud\",\n        -11.84811019897461\n      ],\n      [\n        \"▁30,\",\n        -11.848116874694824\n      ],\n      [\n        \"▁plante\",\n        -11.848133087158203\n      ],\n      [\n        \"▁Hug\",\n        -11.848225593566895\n      ],\n      [\n        \"▁Focus\",\n        -11.84853458404541\n      ],\n      [\n        \"▁distinctive\",\n        -11.848594665527344\n      ],\n      [\n        \"▁Bab\",\n        -11.848662376403809\n      ],\n      [\n        \"tata\",\n        -11.848679542541504\n      ],\n      [\n        \"▁Nun\",\n        -11.848797798156738\n      ],\n      [\n        \"▁Eve\",\n        -11.848811149597168\n      ],\n      [\n        \"▁déc\",\n        -11.848881721496582\n      ],\n      [\n        \"▁Beitrag\",\n        -11.84900951385498\n      ],\n      [\n        \"▁devenit\",\n        -11.849042892456055\n      ],\n      [\n        \"driven\",\n        -11.849250793457031\n      ],\n      [\n        \"▁offerings\",\n        -11.84933853149414\n      ],\n      [\n        \"▁exc\",\n        -11.84941577911377\n      ],\n      [\n        \"encies\",\n        -11.849576950073242\n      ],\n      [\n        \"▁Neuro\",\n        -11.849588394165039\n      ],\n      [\n        \"scher\",\n        -11.849604606628418\n      ],\n      [\n        \"map\",\n        -11.849703788757324\n      ],\n      [\n        \"pending\",\n        -11.849783897399902\n      ],\n      [\n        \"▁courage\",\n        -11.849799156188965\n      ],\n      [\n        \"axe\",\n        -11.849894523620605\n      ],\n      [\n        \"▁Gesellschaft\",\n        -11.849900245666504\n      ],\n      [\n        \"▁ears\",\n        -11.85000991821289\n      ],\n      [\n        \"▁aider\",\n        -11.850403785705566\n      ],\n      [\n        \"▁Cast\",\n        -11.85042667388916\n      ],\n      [\n        \"fast\",\n        -11.850442886352539\n      ],\n      [\n        \"▁departe\",\n        -11.850502014160156\n      ],\n      [\n        \"▁oak\",\n        -11.850507736206055\n      ],\n      [\n        \"▁batch\",\n        -11.850730895996094\n      ],\n      [\n        \"▁Corporate\",\n        -11.850762367248535\n      ],\n      [\n        \"▁Ost\",\n        -11.850895881652832\n      ],\n      [\n        \"-14\",\n        -11.850897789001465\n      ],\n      [\n        \"▁Pie\",\n        -11.85115909576416\n      ],\n      [\n        \"▁ranking\",\n        -11.851273536682129\n      ],\n      [\n        \"clusion\",\n        -11.851316452026367\n      ],\n      [\n        \"▁costume\",\n        -11.851347923278809\n      ],\n      [\n        \"▁Knight\",\n        -11.851449966430664\n      ],\n      [\n        \"▁privat\",\n        -11.851577758789062\n      ],\n      [\n        \"▁Engineer\",\n        -11.851593971252441\n      ],\n      [\n        \"▁gens\",\n        -11.8517427444458\n      ],\n      [\n        \"physics\",\n        -11.85176944732666\n      ],\n      [\n        \"generating\",\n        -11.851773262023926\n      ],\n      [\n        \"directement\",\n        -11.851786613464355\n      ],\n      [\n        \"▁confidential\",\n        -11.851810455322266\n      ],\n      [\n        \"▁poet\",\n        -11.851937294006348\n      ],\n      [\n        \"▁monster\",\n        -11.851944923400879\n      ],\n      [\n        \"▁suppose\",\n        -11.851984977722168\n      ],\n      [\n        \"său\",\n        -11.851996421813965\n      ],\n      [\n        \"▁balls\",\n        -11.852103233337402\n      ],\n      [\n        \"▁substitute\",\n        -11.852137565612793\n      ],\n      [\n        \"▁simultaneously\",\n        -11.852238655090332\n      ],\n      [\n        \"▁specify\",\n        -11.852272033691406\n      ],\n      [\n        \"wald\",\n        -11.852287292480469\n      ],\n      [\n        \"▁collapse\",\n        -11.852352142333984\n      ],\n      [\n        \"dessus\",\n        -11.852458953857422\n      ],\n      [\n        \"▁vitr\",\n        -11.852516174316406\n      ],\n      [\n        \"▁recruitment\",\n        -11.852607727050781\n      ],\n      [\n        \"denken\",\n        -11.852632522583008\n      ],\n      [\n        \"▁candy\",\n        -11.852691650390625\n      ],\n      [\n        \"▁tourists\",\n        -11.852721214294434\n      ],\n      [\n        \"dimensional\",\n        -11.852782249450684\n      ],\n      [\n        \"conce\",\n        -11.852814674377441\n      ],\n      [\n        \"wechsel\",\n        -11.852822303771973\n      ],\n      [\n        \"▁passende\",\n        -11.852971076965332\n      ],\n      [\n        \"industrie\",\n        -11.85299301147461\n      ],\n      [\n        \"agne\",\n        -11.853127479553223\n      ],\n      [\n        \"▁warehouse\",\n        -11.853233337402344\n      ],\n      [\n        \"▁Jugend\",\n        -11.853277206420898\n      ],\n      [\n        \"▁Weise\",\n        -11.853357315063477\n      ],\n      [\n        \"▁Zone\",\n        -11.853528022766113\n      ],\n      [\n        \"▁licence\",\n        -11.853550910949707\n      ],\n      [\n        \"▁broker\",\n        -11.853630065917969\n      ],\n      [\n        \"▁Rolle\",\n        -11.85365104675293\n      ],\n      [\n        \"pton\",\n        -11.853789329528809\n      ],\n      [\n        \"▁preference\",\n        -11.853846549987793\n      ],\n      [\n        \"▁homeowners\",\n        -11.853861808776855\n      ],\n      [\n        \"▁Lum\",\n        -11.85387134552002\n      ],\n      [\n        \"▁Chairman\",\n        -11.853879928588867\n      ],\n      [\n        \"▁Pages\",\n        -11.853998184204102\n      ],\n      [\n        \"▁beam\",\n        -11.854005813598633\n      ],\n      [\n        \"▁coordinate\",\n        -11.854158401489258\n      ],\n      [\n        \"▁Tool\",\n        -11.854212760925293\n      ],\n      [\n        \"▁complexity\",\n        -11.854272842407227\n      ],\n      [\n        \"▁checks\",\n        -11.854339599609375\n      ],\n      [\n        \"▁Bedroom\",\n        -11.854405403137207\n      ],\n      [\n        \"minded\",\n        -11.854538917541504\n      ],\n      [\n        \"▁copiii\",\n        -11.854694366455078\n      ],\n      [\n        \"▁celebrating\",\n        -11.85470199584961\n      ],\n      [\n        \"zimmer\",\n        -11.854759216308594\n      ],\n      [\n        \"▁Imagine\",\n        -11.854759216308594\n      ],\n      [\n        \"▁decoration\",\n        -11.854830741882324\n      ],\n      [\n        \"team\",\n        -11.855354309082031\n      ],\n      [\n        \"▁împreună\",\n        -11.855369567871094\n      ],\n      [\n        \"▁publicly\",\n        -11.855391502380371\n      ],\n      [\n        \"▁centuries\",\n        -11.855514526367188\n      ],\n      [\n        \"▁Islands\",\n        -11.855644226074219\n      ],\n      [\n        \"▁ethnic\",\n        -11.855663299560547\n      ],\n      [\n        \"still\",\n        -11.85576057434082\n      ],\n      [\n        \"stieg\",\n        -11.855823516845703\n      ],\n      [\n        \"emia\",\n        -11.855904579162598\n      ],\n      [\n        \"tags\",\n        -11.856026649475098\n      ],\n      [\n        \"▁marche\",\n        -11.856062889099121\n      ],\n      [\n        \"▁migration\",\n        -11.856096267700195\n      ],\n      [\n        \"▁banner\",\n        -11.85616683959961\n      ],\n      [\n        \"▁macro\",\n        -11.856378555297852\n      ],\n      [\n        \"▁Edit\",\n        -11.856379508972168\n      ],\n      [\n        \"tran\",\n        -11.85656452178955\n      ],\n      [\n        \"ça\",\n        -11.856597900390625\n      ],\n      [\n        \"▁recycling\",\n        -11.856670379638672\n      ],\n      [\n        \"▁1,000\",\n        -11.856673240661621\n      ],\n      [\n        \"▁Quelle\",\n        -11.856891632080078\n      ],\n      [\n        \"▁Vel\",\n        -11.85700511932373\n      ],\n      [\n        \"▁Rit\",\n        -11.857025146484375\n      ],\n      [\n        \"▁Spaß\",\n        -11.857046127319336\n      ],\n      [\n        \"▁Corn\",\n        -11.857074737548828\n      ],\n      [\n        \"tracted\",\n        -11.857177734375\n      ],\n      [\n        \"cited\",\n        -11.857185363769531\n      ],\n      [\n        \"▁tablets\",\n        -11.857202529907227\n      ],\n      [\n        \"▁Display\",\n        -11.857337951660156\n      ],\n      [\n        \"▁persoana\",\n        -11.857392311096191\n      ],\n      [\n        \"Term\",\n        -11.857410430908203\n      ],\n      [\n        \"▁Vancouver\",\n        -11.857537269592285\n      ],\n      [\n        \"▁Gäste\",\n        -11.857550621032715\n      ],\n      [\n        \"determining\",\n        -11.857608795166016\n      ],\n      [\n        \"▁populations\",\n        -11.85778522491455\n      ],\n      [\n        \"aison\",\n        -11.857873916625977\n      ],\n      [\n        \"▁surgical\",\n        -11.858072280883789\n      ],\n      [\n        \"tale\",\n        -11.858160018920898\n      ],\n      [\n        \"ivi\",\n        -11.858283042907715\n      ],\n      [\n        \"▁Zur\",\n        -11.858388900756836\n      ],\n      [\n        \"esprit\",\n        -11.858574867248535\n      ],\n      [\n        \"▁Edge\",\n        -11.858665466308594\n      ],\n      [\n        \"dach\",\n        -11.858760833740234\n      ],\n      [\n        \"phi\",\n        -11.858773231506348\n      ],\n      [\n        \"▁suc\",\n        -11.858841896057129\n      ],\n      [\n        \"▁scrie\",\n        -11.858848571777344\n      ],\n      [\n        \"▁Ausbildung\",\n        -11.858885765075684\n      ],\n      [\n        \"▁51\",\n        -11.85892391204834\n      ],\n      [\n        \"ologi\",\n        -11.858938217163086\n      ],\n      [\n        \"▁correction\",\n        -11.859049797058105\n      ],\n      [\n        \"▁Wald\",\n        -11.859078407287598\n      ],\n      [\n        \"▁additionally\",\n        -11.859131813049316\n      ],\n      [\n        \"▁proche\",\n        -11.859353065490723\n      ],\n      [\n        \"▁classical\",\n        -11.859477996826172\n      ],\n      [\n        \"▁bringen\",\n        -11.859490394592285\n      ],\n      [\n        \"▁(10\",\n        -11.859611511230469\n      ],\n      [\n        \"▁Mile\",\n        -11.859809875488281\n      ],\n      [\n        \"lace\",\n        -11.859885215759277\n      ],\n      [\n        \"▁premi\",\n        -11.85988712310791\n      ],\n      [\n        \"▁constitute\",\n        -11.860029220581055\n      ],\n      [\n        \"▁bitter\",\n        -11.860078811645508\n      ],\n      [\n        \"▁Inform\",\n        -11.860295295715332\n      ],\n      [\n        \"▁corporations\",\n        -11.860334396362305\n      ],\n      [\n        \"▁Lisa\",\n        -11.860494613647461\n      ],\n      [\n        \"▁obligat\",\n        -11.860685348510742\n      ],\n      [\n        \"Throughout\",\n        -11.860738754272461\n      ],\n      [\n        \"▁Rs\",\n        -11.860769271850586\n      ],\n      [\n        \"▁Hair\",\n        -11.860916137695312\n      ],\n      [\n        \"▁supplements\",\n        -11.86099624633789\n      ],\n      [\n        \"▁motorcycle\",\n        -11.861054420471191\n      ],\n      [\n        \"escent\",\n        -11.861132621765137\n      ],\n      [\n        \"▁investi\",\n        -11.861222267150879\n      ],\n      [\n        \"▁continuously\",\n        -11.861265182495117\n      ],\n      [\n        \"▁Essen\",\n        -11.861334800720215\n      ],\n      [\n        \"▁precision\",\n        -11.8613862991333\n      ],\n      [\n        \"▁deficit\",\n        -11.861461639404297\n      ],\n      [\n        \"▁wallet\",\n        -11.861481666564941\n      ],\n      [\n        \"▁Bürger\",\n        -11.861531257629395\n      ],\n      [\n        \"chir\",\n        -11.861574172973633\n      ],\n      [\n        \"9)\",\n        -11.86161994934082\n      ],\n      [\n        \"▁Programme\",\n        -11.861716270446777\n      ],\n      [\n        \"▁simplement\",\n        -11.86193561553955\n      ],\n      [\n        \"MD\",\n        -11.862093925476074\n      ],\n      [\n        \"▁rouge\",\n        -11.862096786499023\n      ],\n      [\n        \"usion\",\n        -11.862133979797363\n      ],\n      [\n        \"▁stove\",\n        -11.862208366394043\n      ],\n      [\n        \"▁prospective\",\n        -11.862224578857422\n      ],\n      [\n        \"▁corp\",\n        -11.86234188079834\n      ],\n      [\n        \"▁impacts\",\n        -11.862401008605957\n      ],\n      [\n        \"▁bride\",\n        -11.86266803741455\n      ],\n      [\n        \"0.0\",\n        -11.862788200378418\n      ],\n      [\n        \"hid\",\n        -11.862833976745605\n      ],\n      [\n        \"▁warrant\",\n        -11.862930297851562\n      ],\n      [\n        \"▁Ice\",\n        -11.8631010055542\n      ],\n      [\n        \"▁sensible\",\n        -11.863151550292969\n      ],\n      [\n        \"▁vreo\",\n        -11.863166809082031\n      ],\n      [\n        \"spekt\",\n        -11.863249778747559\n      ],\n      [\n        \"▁appreciation\",\n        -11.8633394241333\n      ],\n      [\n        \"▁automation\",\n        -11.863377571105957\n      ],\n      [\n        \"Luc\",\n        -11.86341381072998\n      ],\n      [\n        \"teaches\",\n        -11.863471031188965\n      ],\n      [\n        \"▁fold\",\n        -11.863506317138672\n      ],\n      [\n        \"deutsche\",\n        -11.863523483276367\n      ],\n      [\n        \"▁assisted\",\n        -11.86380386352539\n      ],\n      [\n        \"▁straightforward\",\n        -11.863932609558105\n      ],\n      [\n        \"▁mechanic\",\n        -11.864068031311035\n      ],\n      [\n        \"observ\",\n        -11.864169120788574\n      ],\n      [\n        \"▁Schau\",\n        -11.864195823669434\n      ],\n      [\n        \"▁Recently\",\n        -11.864301681518555\n      ],\n      [\n        \"kers\",\n        -11.86435604095459\n      ],\n      [\n        \"▁Soft\",\n        -11.864455223083496\n      ],\n      [\n        \"muni\",\n        -11.864537239074707\n      ],\n      [\n        \"▁lie\",\n        -11.864617347717285\n      ],\n      [\n        \"▁Fat\",\n        -11.864728927612305\n      ],\n      [\n        \"cream\",\n        -11.86476993560791\n      ],\n      [\n        \"▁snack\",\n        -11.864909172058105\n      ],\n      [\n        \"▁juin\",\n        -11.865068435668945\n      ],\n      [\n        \"▁competent\",\n        -11.865134239196777\n      ],\n      [\n        \"▁Drug\",\n        -11.865141868591309\n      ],\n      [\n        \"▁Row\",\n        -11.865302085876465\n      ],\n      [\n        \"▁needle\",\n        -11.865852355957031\n      ],\n      [\n        \"▁convey\",\n        -11.865900039672852\n      ],\n      [\n        \"▁voie\",\n        -11.86600399017334\n      ],\n      [\n        \"▁Hon\",\n        -11.866190910339355\n      ],\n      [\n        \"▁ebook\",\n        -11.866194725036621\n      ],\n      [\n        \"▁veteran\",\n        -11.866209030151367\n      ],\n      [\n        \"▁statistical\",\n        -11.866217613220215\n      ],\n      [\n        \"190\",\n        -11.866312980651855\n      ],\n      [\n        \"▁munca\",\n        -11.866402626037598\n      ],\n      [\n        \"▁venues\",\n        -11.866438865661621\n      ],\n      [\n        \"▁Viel\",\n        -11.866604804992676\n      ],\n      [\n        \"▁décor\",\n        -11.866799354553223\n      ],\n      [\n        \"▁répond\",\n        -11.8670015335083\n      ],\n      [\n        \"▁produsele\",\n        -11.86700439453125\n      ],\n      [\n        \"ruc\",\n        -11.867009162902832\n      ],\n      [\n        \"▁drops\",\n        -11.867011070251465\n      ],\n      [\n        \"▁autant\",\n        -11.867311477661133\n      ],\n      [\n        \"▁Fahrzeug\",\n        -11.867313385009766\n      ],\n      [\n        \"▁hills\",\n        -11.86735725402832\n      ],\n      [\n        \"ference\",\n        -11.867414474487305\n      ],\n      [\n        \"▁Glück\",\n        -11.86742115020752\n      ],\n      [\n        \"▁Pac\",\n        -11.867480278015137\n      ],\n      [\n        \"▁permettr\",\n        -11.867568969726562\n      ],\n      [\n        \"▁mouvement\",\n        -11.867713928222656\n      ],\n      [\n        \"établissement\",\n        -11.867859840393066\n      ],\n      [\n        \"▁Parc\",\n        -11.867874145507812\n      ],\n      [\n        \"▁solving\",\n        -11.867900848388672\n      ],\n      [\n        \"▁jail\",\n        -11.867972373962402\n      ],\n      [\n        \"▁junk\",\n        -11.867980003356934\n      ],\n      [\n        \"▁jeux\",\n        -11.868091583251953\n      ],\n      [\n        \"▁rôle\",\n        -11.868107795715332\n      ],\n      [\n        \"▁cache\",\n        -11.868124961853027\n      ],\n      [\n        \"▁Answer\",\n        -11.86832046508789\n      ],\n      [\n        \"wir\",\n        -11.868706703186035\n      ],\n      [\n        \"option\",\n        -11.868732452392578\n      ],\n      [\n        \"▁Tiger\",\n        -11.868739128112793\n      ],\n      [\n        \"▁Ble\",\n        -11.868793487548828\n      ],\n      [\n        \"Mitglied\",\n        -11.868797302246094\n      ],\n      [\n        \"▁partial\",\n        -11.868819236755371\n      ],\n      [\n        \"▁Mercedes\",\n        -11.86888313293457\n      ],\n      [\n        \"tire\",\n        -11.869001388549805\n      ],\n      [\n        \"MENT\",\n        -11.869091987609863\n      ],\n      [\n        \"▁transit\",\n        -11.869230270385742\n      ],\n      [\n        \"▁cineva\",\n        -11.869285583496094\n      ],\n      [\n        \"▁Andrea\",\n        -11.869294166564941\n      ],\n      [\n        \"▁boundaries\",\n        -11.869497299194336\n      ],\n      [\n        \"script\",\n        -11.870061874389648\n      ],\n      [\n        \"▁Medi\",\n        -11.870123863220215\n      ],\n      [\n        \"schreiben\",\n        -11.870203018188477\n      ],\n      [\n        \"▁lobby\",\n        -11.87035846710205\n      ],\n      [\n        \"▁defendant\",\n        -11.870406150817871\n      ],\n      [\n        \"▁sq\",\n        -11.870467185974121\n      ],\n      [\n        \"▁forgotten\",\n        -11.870569229125977\n      ],\n      [\n        \"stimmung\",\n        -11.870651245117188\n      ],\n      [\n        \"hus\",\n        -11.870665550231934\n      ],\n      [\n        \"RY\",\n        -11.870728492736816\n      ],\n      [\n        \"▁Anderson\",\n        -11.870748519897461\n      ],\n      [\n        \"▁Dental\",\n        -11.870828628540039\n      ],\n      [\n        \"ject\",\n        -11.87110710144043\n      ],\n      [\n        \"▁Nutzer\",\n        -11.871377944946289\n      ],\n      [\n        \"▁Portland\",\n        -11.871540069580078\n      ],\n      [\n        \"scription\",\n        -11.871636390686035\n      ],\n      [\n        \"▁angel\",\n        -11.871695518493652\n      ],\n      [\n        \"▁monument\",\n        -11.871748924255371\n      ],\n      [\n        \"▁număr\",\n        -11.871784210205078\n      ],\n      [\n        \"▁Lane\",\n        -11.871800422668457\n      ],\n      [\n        \"▁Bai\",\n        -11.871894836425781\n      ],\n      [\n        \"But\",\n        -11.871909141540527\n      ],\n      [\n        \"▁calculate\",\n        -11.872315406799316\n      ],\n      [\n        \"▁provoca\",\n        -11.87247371673584\n      ],\n      [\n        \"▁votes\",\n        -11.872493743896484\n      ],\n      [\n        \"RNA\",\n        -11.872503280639648\n      ],\n      [\n        \"though\",\n        -11.87259292602539\n      ],\n      [\n        \"spor\",\n        -11.872631072998047\n      ],\n      [\n        \"▁connaissance\",\n        -11.872695922851562\n      ],\n      [\n        \"▁Anwendung\",\n        -11.872932434082031\n      ],\n      [\n        \"▁Kate\",\n        -11.873123168945312\n      ],\n      [\n        \"lob\",\n        -11.87315845489502\n      ],\n      [\n        \"▁Conf\",\n        -11.873180389404297\n      ],\n      [\n        \"bung\",\n        -11.873212814331055\n      ],\n      [\n        \"ander\",\n        -11.873282432556152\n      ],\n      [\n        \"▁functioning\",\n        -11.873297691345215\n      ],\n      [\n        \"▁sponsored\",\n        -11.873324394226074\n      ],\n      [\n        \"rav\",\n        -11.873734474182129\n      ],\n      [\n        \"▁resistant\",\n        -11.873797416687012\n      ],\n      [\n        \"tră\",\n        -11.873916625976562\n      ],\n      [\n        \"▁costly\",\n        -11.873923301696777\n      ],\n      [\n        \"▁Mars\",\n        -11.873991012573242\n      ],\n      [\n        \"▁tir\",\n        -11.874075889587402\n      ],\n      [\n        \"▁writes\",\n        -11.874134063720703\n      ],\n      [\n        \"▁Greg\",\n        -11.874267578125\n      ],\n      [\n        \"▁Question\",\n        -11.874714851379395\n      ],\n      [\n        \"▁corporation\",\n        -11.87485408782959\n      ],\n      [\n        \"▁lire\",\n        -11.874991416931152\n      ],\n      [\n        \"locked\",\n        -11.875048637390137\n      ],\n      [\n        \"8,\",\n        -11.875092506408691\n      ],\n      [\n        \"▁sagt\",\n        -11.875301361083984\n      ],\n      [\n        \"gaining\",\n        -11.87536907196045\n      ],\n      [\n        \"▁Pierre\",\n        -11.875688552856445\n      ],\n      [\n        \"verb\",\n        -11.875725746154785\n      ],\n      [\n        \"▁Barcelona\",\n        -11.87578296661377\n      ],\n      [\n        \"werte\",\n        -11.876474380493164\n      ],\n      [\n        \"▁disponible\",\n        -11.87651538848877\n      ],\n      [\n        \"▁urge\",\n        -11.876521110534668\n      ],\n      [\n        \"▁expecting\",\n        -11.876572608947754\n      ],\n      [\n        \"▁Girl\",\n        -11.87662124633789\n      ],\n      [\n        \"▁unlimited\",\n        -11.876761436462402\n      ],\n      [\n        \"watt\",\n        -11.876788139343262\n      ],\n      [\n        \"▁Möglichkeiten\",\n        -11.876813888549805\n      ],\n      [\n        \"▁schöne\",\n        -11.876847267150879\n      ],\n      [\n        \"rium\",\n        -11.877076148986816\n      ],\n      [\n        \"That\",\n        -11.877272605895996\n      ],\n      [\n        \"▁socio\",\n        -11.877296447753906\n      ],\n      [\n        \"▁Democrats\",\n        -11.877351760864258\n      ],\n      [\n        \"guten\",\n        -11.877422332763672\n      ],\n      [\n        \"▁Lou\",\n        -11.877425193786621\n      ],\n      [\n        \"ităţi\",\n        -11.877559661865234\n      ],\n      [\n        \"▁possibilité\",\n        -11.877717018127441\n      ],\n      [\n        \"▁adjustable\",\n        -11.877938270568848\n      ],\n      [\n        \"▁Salt\",\n        -11.877967834472656\n      ],\n      [\n        \"Thr\",\n        -11.878021240234375\n      ],\n      [\n        \"▁biseric\",\n        -11.878056526184082\n      ],\n      [\n        \"ieux\",\n        -11.87808895111084\n      ],\n      [\n        \"▁procur\",\n        -11.8782377243042\n      ],\n      [\n        \"▁credits\",\n        -11.878250122070312\n      ],\n      [\n        \"▁Netflix\",\n        -11.878585815429688\n      ],\n      [\n        \"doi\",\n        -11.878605842590332\n      ],\n      [\n        \"▁Jews\",\n        -11.878663063049316\n      ],\n      [\n        \"▁Ukraine\",\n        -11.87873363494873\n      ],\n      [\n        \"▁adevărat\",\n        -11.878785133361816\n      ],\n      [\n        \"▁Apply\",\n        -11.878813743591309\n      ],\n      [\n        \"▁coupons\",\n        -11.878859519958496\n      ],\n      [\n        \"▁Detroit\",\n        -11.878881454467773\n      ],\n      [\n        \"▁rue\",\n        -11.878889083862305\n      ],\n      [\n        \"anumite\",\n        -11.878926277160645\n      ],\n      [\n        \"ished\",\n        -11.878973960876465\n      ],\n      [\n        \"▁withdrawal\",\n        -11.87915325164795\n      ],\n      [\n        \"▁replacing\",\n        -11.87917709350586\n      ],\n      [\n        \"catching\",\n        -11.879385948181152\n      ],\n      [\n        \"▁climbing\",\n        -11.879612922668457\n      ],\n      [\n        \"▁Basic\",\n        -11.879770278930664\n      ],\n      [\n        \"▁inclus\",\n        -11.879783630371094\n      ],\n      [\n        \"scope\",\n        -11.879887580871582\n      ],\n      [\n        \"▁facem\",\n        -11.879892349243164\n      ],\n      [\n        \"▁plec\",\n        -11.879904747009277\n      ],\n      [\n        \"mäßig\",\n        -11.879980087280273\n      ],\n      [\n        \"▁tasty\",\n        -11.880064010620117\n      ],\n      [\n        \"▁tunnel\",\n        -11.880074501037598\n      ],\n      [\n        \"figured\",\n        -11.88032341003418\n      ],\n      [\n        \"gged\",\n        -11.880390167236328\n      ],\n      [\n        \"▁conditii\",\n        -11.880599975585938\n      ],\n      [\n        \"▁homework\",\n        -11.880631446838379\n      ],\n      [\n        \"volle\",\n        -11.88063907623291\n      ],\n      [\n        \"▁Gott\",\n        -11.880807876586914\n      ],\n      [\n        \"▁95\",\n        -11.880969047546387\n      ],\n      [\n        \"▁elect\",\n        -11.881020545959473\n      ],\n      [\n        \"▁blast\",\n        -11.881043434143066\n      ],\n      [\n        \"▁easiest\",\n        -11.881248474121094\n      ],\n      [\n        \"USE\",\n        -11.881462097167969\n      ],\n      [\n        \"concentr\",\n        -11.881475448608398\n      ],\n      [\n        \"orial\",\n        -11.881596565246582\n      ],\n      [\n        \"▁scroll\",\n        -11.881638526916504\n      ],\n      [\n        \"stead\",\n        -11.881691932678223\n      ],\n      [\n        \"▁hormone\",\n        -11.881710052490234\n      ],\n      [\n        \"▁starter\",\n        -11.88179874420166\n      ],\n      [\n        \"▁cald\",\n        -11.881878852844238\n      ],\n      [\n        \"▁wax\",\n        -11.881895065307617\n      ],\n      [\n        \"▁ridic\",\n        -11.881900787353516\n      ],\n      [\n        \"ously\",\n        -11.881982803344727\n      ],\n      [\n        \"maschine\",\n        -11.882101058959961\n      ],\n      [\n        \"licher\",\n        -11.882399559020996\n      ],\n      [\n        \"▁16,\",\n        -11.882452964782715\n      ],\n      [\n        \"▁hassle\",\n        -11.882469177246094\n      ],\n      [\n        \"semnat\",\n        -11.882535934448242\n      ],\n      [\n        \"▁pub\",\n        -11.88260555267334\n      ],\n      [\n        \"240\",\n        -11.882800102233887\n      ],\n      [\n        \"▁kits\",\n        -11.882871627807617\n      ],\n      [\n        \"▁Generation\",\n        -11.88293743133545\n      ],\n      [\n        \"▁merchant\",\n        -11.883052825927734\n      ],\n      [\n        \"▁Erd\",\n        -11.883068084716797\n      ],\n      [\n        \"▁café\",\n        -11.883077621459961\n      ],\n      [\n        \"hoff\",\n        -11.88314151763916\n      ],\n      [\n        \"▁WITH\",\n        -11.883376121520996\n      ],\n      [\n        \"▁gesch\",\n        -11.883515357971191\n      ],\n      [\n        \"▁Editor\",\n        -11.883557319641113\n      ],\n      [\n        \"▁treats\",\n        -11.883609771728516\n      ],\n      [\n        \"▁harsh\",\n        -11.883711814880371\n      ],\n      [\n        \"rome\",\n        -11.883729934692383\n      ],\n      [\n        \"▁Foreign\",\n        -11.883928298950195\n      ],\n      [\n        \"▁denied\",\n        -11.883968353271484\n      ],\n      [\n        \"▁Valentine\",\n        -11.884014129638672\n      ],\n      [\n        \"▁healthier\",\n        -11.88408088684082\n      ],\n      [\n        \"▁readily\",\n        -11.884138107299805\n      ],\n      [\n        \"nac\",\n        -11.884190559387207\n      ],\n      [\n        \"▁intake\",\n        -11.884191513061523\n      ],\n      [\n        \"▁puncte\",\n        -11.884230613708496\n      ],\n      [\n        \"erne\",\n        -11.884431838989258\n      ],\n      [\n        \"file\",\n        -11.884668350219727\n      ],\n      [\n        \"▁continually\",\n        -11.884688377380371\n      ],\n      [\n        \"door\",\n        -11.884699821472168\n      ],\n      [\n        \"▁imediat\",\n        -11.884822845458984\n      ],\n      [\n        \"▁accused\",\n        -11.884833335876465\n      ],\n      [\n        \"chy\",\n        -11.884854316711426\n      ],\n      [\n        \"▁wrapped\",\n        -11.884861946105957\n      ],\n      [\n        \"IES\",\n        -11.884878158569336\n      ],\n      [\n        \"▁terrace\",\n        -11.884883880615234\n      ],\n      [\n        \"mouth\",\n        -11.884897232055664\n      ],\n      [\n        \"▁defensive\",\n        -11.884991645812988\n      ],\n      [\n        \"▁Luci\",\n        -11.88508129119873\n      ],\n      [\n        \"▁significance\",\n        -11.885107040405273\n      ],\n      [\n        \"▁2007,\",\n        -11.885213851928711\n      ],\n      [\n        \"▁inclusion\",\n        -11.885221481323242\n      ],\n      [\n        \"▁rotation\",\n        -11.885248184204102\n      ],\n      [\n        \"hos\",\n        -11.885283470153809\n      ],\n      [\n        \"▁crea\",\n        -11.885357856750488\n      ],\n      [\n        \"üß\",\n        -11.885903358459473\n      ],\n      [\n        \"▁Install\",\n        -11.885988235473633\n      ],\n      [\n        \"▁dump\",\n        -11.885998725891113\n      ],\n      [\n        \"▁informations\",\n        -11.886114120483398\n      ],\n      [\n        \"▁Thi\",\n        -11.886117935180664\n      ],\n      [\n        \"▁85\",\n        -11.886252403259277\n      ],\n      [\n        \"dox\",\n        -11.886283874511719\n      ],\n      [\n        \"track\",\n        -11.886436462402344\n      ],\n      [\n        \"▁couples\",\n        -11.886571884155273\n      ],\n      [\n        \"▁Assembly\",\n        -11.886594772338867\n      ],\n      [\n        \"wagen\",\n        -11.88672161102295\n      ],\n      [\n        \"▁Hil\",\n        -11.886723518371582\n      ],\n      [\n        \"ières\",\n        -11.886833190917969\n      ],\n      [\n        \"▁Gabriel\",\n        -11.886903762817383\n      ],\n      [\n        \"▁patience\",\n        -11.887053489685059\n      ],\n      [\n        \"▁colored\",\n        -11.887147903442383\n      ],\n      [\n        \"▁separately\",\n        -11.88715934753418\n      ],\n      [\n        \"▁deployment\",\n        -11.887166023254395\n      ],\n      [\n        \"scape\",\n        -11.887306213378906\n      ],\n      [\n        \"▁Acum\",\n        -11.8875150680542\n      ],\n      [\n        \"▁länger\",\n        -11.887518882751465\n      ],\n      [\n        \"▁screens\",\n        -11.887598991394043\n      ],\n      [\n        \"▁prezenta\",\n        -11.887630462646484\n      ],\n      [\n        \"▁obicei\",\n        -11.887638092041016\n      ],\n      [\n        \"▁crisp\",\n        -11.887758255004883\n      ],\n      [\n        \"▁mechanisms\",\n        -11.887771606445312\n      ],\n      [\n        \"▁thirty\",\n        -11.887786865234375\n      ],\n      [\n        \"▁individually\",\n        -11.887989044189453\n      ],\n      [\n        \"▁internationally\",\n        -11.887991905212402\n      ],\n      [\n        \"lling\",\n        -11.888050079345703\n      ],\n      [\n        \"▁bureau\",\n        -11.88843059539795\n      ],\n      [\n        \"▁erfahren\",\n        -11.88844108581543\n      ],\n      [\n        \"TY\",\n        -11.888553619384766\n      ],\n      [\n        \"PF\",\n        -11.888607025146484\n      ],\n      [\n        \"wid\",\n        -11.888752937316895\n      ],\n      [\n        \"sell\",\n        -11.888835906982422\n      ],\n      [\n        \"▁Luke\",\n        -11.888879776000977\n      ],\n      [\n        \"▁Must\",\n        -11.888916969299316\n      ],\n      [\n        \"▁identical\",\n        -11.888927459716797\n      ],\n      [\n        \"▁Netherlands\",\n        -11.888980865478516\n      ],\n      [\n        \"▁investor\",\n        -11.88905143737793\n      ],\n      [\n        \"▁squad\",\n        -11.889073371887207\n      ],\n      [\n        \"▁21,\",\n        -11.889143943786621\n      ],\n      [\n        \"iko\",\n        -11.889230728149414\n      ],\n      [\n        \"▁departure\",\n        -11.88937759399414\n      ],\n      [\n        \"ega\",\n        -11.889384269714355\n      ],\n      [\n        \"uzi\",\n        -11.889408111572266\n      ],\n      [\n        \"▁lasa\",\n        -11.889458656311035\n      ],\n      [\n        \"bian\",\n        -11.889525413513184\n      ],\n      [\n        \"▁Madrid\",\n        -11.889623641967773\n      ],\n      [\n        \"▁Iowa\",\n        -11.889806747436523\n      ],\n      [\n        \"▁Yellow\",\n        -11.890026092529297\n      ],\n      [\n        \"conom\",\n        -11.89004898071289\n      ],\n      [\n        \"▁hint\",\n        -11.890098571777344\n      ],\n      [\n        \"NOW\",\n        -11.890111923217773\n      ],\n      [\n        \"dress\",\n        -11.890204429626465\n      ],\n      [\n        \"▁Stück\",\n        -11.890267372131348\n      ],\n      [\n        \"echt\",\n        -11.890424728393555\n      ],\n      [\n        \"rial\",\n        -11.89045238494873\n      ],\n      [\n        \"▁Initiative\",\n        -11.890474319458008\n      ],\n      [\n        \"▁magnificent\",\n        -11.890474319458008\n      ],\n      [\n        \"▁pipeline\",\n        -11.890543937683105\n      ],\n      [\n        \"▁08\",\n        -11.890806198120117\n      ],\n      [\n        \"▁écrit\",\n        -11.890889167785645\n      ],\n      [\n        \"KA\",\n        -11.891085624694824\n      ],\n      [\n        \"arile\",\n        -11.891151428222656\n      ],\n      [\n        \"▁unfortunately\",\n        -11.891352653503418\n      ],\n      [\n        \"dose\",\n        -11.891355514526367\n      ],\n      [\n        \"▁counts\",\n        -11.891427993774414\n      ],\n      [\n        \"deciding\",\n        -11.891549110412598\n      ],\n      [\n        \"WA\",\n        -11.89167308807373\n      ],\n      [\n        \"▁doresc\",\n        -11.891685485839844\n      ],\n      [\n        \"NY\",\n        -11.892008781433105\n      ],\n      [\n        \"olin\",\n        -11.892112731933594\n      ],\n      [\n        \"▁Urlaub\",\n        -11.892133712768555\n      ],\n      [\n        \"▁alătur\",\n        -11.892317771911621\n      ],\n      [\n        \"▁Vic\",\n        -11.892515182495117\n      ],\n      [\n        \"▁fier\",\n        -11.89269733428955\n      ],\n      [\n        \"EU\",\n        -11.892772674560547\n      ],\n      [\n        \"▁triple\",\n        -11.892871856689453\n      ],\n      [\n        \"▁compliment\",\n        -11.89310359954834\n      ],\n      [\n        \"▁vegetable\",\n        -11.89334487915039\n      ],\n      [\n        \"member\",\n        -11.893743515014648\n      ],\n      [\n        \"atiei\",\n        -11.893793106079102\n      ],\n      [\n        \"▁toxic\",\n        -11.893835067749023\n      ],\n      [\n        \"▁converted\",\n        -11.893888473510742\n      ],\n      [\n        \"▁Pink\",\n        -11.893999099731445\n      ],\n      [\n        \"▁fragment\",\n        -11.894020080566406\n      ],\n      [\n        \"presenting\",\n        -11.894027709960938\n      ],\n      [\n        \"▁garantie\",\n        -11.894031524658203\n      ],\n      [\n        \"▁31,\",\n        -11.894052505493164\n      ],\n      [\n        \"▁puisqu\",\n        -11.894105911254883\n      ],\n      [\n        \"aching\",\n        -11.894107818603516\n      ],\n      [\n        \"▁Shan\",\n        -11.894119262695312\n      ],\n      [\n        \"▁Affairs\",\n        -11.894368171691895\n      ],\n      [\n        \"üsse\",\n        -11.894405364990234\n      ],\n      [\n        \"▁CBD\",\n        -11.894428253173828\n      ],\n      [\n        \"▁quatre\",\n        -11.894588470458984\n      ],\n      [\n        \"▁horror\",\n        -11.894651412963867\n      ],\n      [\n        \"▁culoare\",\n        -11.894661903381348\n      ],\n      [\n        \"▁welcoming\",\n        -11.894673347473145\n      ],\n      [\n        \"▁headache\",\n        -11.894808769226074\n      ],\n      [\n        \"▁septembre\",\n        -11.894820213317871\n      ],\n      [\n        \"▁Tür\",\n        -11.894862174987793\n      ],\n      [\n        \"lateral\",\n        -11.89507007598877\n      ],\n      [\n        \"▁termin\",\n        -11.895228385925293\n      ],\n      [\n        \"▁Aid\",\n        -11.895291328430176\n      ],\n      [\n        \"second\",\n        -11.895308494567871\n      ],\n      [\n        \"▁Philip\",\n        -11.895310401916504\n      ],\n      [\n        \"berries\",\n        -11.895347595214844\n      ],\n      [\n        \"▁Slot\",\n        -11.895431518554688\n      ],\n      [\n        \"ка\",\n        -11.895442962646484\n      ],\n      [\n        \"▁consecutive\",\n        -11.895590782165527\n      ],\n      [\n        \"value\",\n        -11.895705223083496\n      ],\n      [\n        \"▁islands\",\n        -11.8958101272583\n      ],\n      [\n        \"▁posibilitatea\",\n        -11.895928382873535\n      ],\n      [\n        \"0.5\",\n        -11.896341323852539\n      ],\n      [\n        \"▁Dumpster\",\n        -11.896471977233887\n      ],\n      [\n        \"▁Gran\",\n        -11.89647388458252\n      ],\n      [\n        \"▁restricted\",\n        -11.8967924118042\n      ],\n      [\n        \"▁discussing\",\n        -11.896921157836914\n      ],\n      [\n        \"cock\",\n        -11.896966934204102\n      ],\n      [\n        \"Serie\",\n        -11.896989822387695\n      ],\n      [\n        \"▁crushing\",\n        -11.896998405456543\n      ],\n      [\n        \"RB\",\n        -11.897034645080566\n      ],\n      [\n        \"▁Gy\",\n        -11.897068977355957\n      ],\n      [\n        \"normal\",\n        -11.897098541259766\n      ],\n      [\n        \"DT\",\n        -11.897180557250977\n      ],\n      [\n        \"▁concurs\",\n        -11.897181510925293\n      ],\n      [\n        \"▁Beratung\",\n        -11.897231101989746\n      ],\n      [\n        \"▁handful\",\n        -11.897235870361328\n      ],\n      [\n        \"▁loading\",\n        -11.897237777709961\n      ],\n      [\n        \"▁WI\",\n        -11.897269248962402\n      ],\n      [\n        \"▁Fitness\",\n        -11.897283554077148\n      ],\n      [\n        \"▁RAM\",\n        -11.897302627563477\n      ],\n      [\n        \"▁Twi\",\n        -11.89730453491211\n      ],\n      [\n        \"adurch\",\n        -11.897345542907715\n      ],\n      [\n        \"▁obiectiv\",\n        -11.897366523742676\n      ],\n      [\n        \"BM\",\n        -11.897635459899902\n      ],\n      [\n        \"▁amendment\",\n        -11.8976469039917\n      ],\n      [\n        \"whi\",\n        -11.897652626037598\n      ],\n      [\n        \"▁Besonder\",\n        -11.897871017456055\n      ],\n      [\n        \"ALL\",\n        -11.898003578186035\n      ],\n      [\n        \"▁earning\",\n        -11.898090362548828\n      ],\n      [\n        \"▁nutrients\",\n        -11.898580551147461\n      ],\n      [\n        \"pru\",\n        -11.898633003234863\n      ],\n      [\n        \"▁offensive\",\n        -11.898696899414062\n      ],\n      [\n        \"▁shelves\",\n        -11.898711204528809\n      ],\n      [\n        \"▁încâ\",\n        -11.898726463317871\n      ],\n      [\n        \"▁execute\",\n        -11.898923873901367\n      ],\n      [\n        \"▁cauz\",\n        -11.898966789245605\n      ],\n      [\n        \"exist\",\n        -11.899179458618164\n      ],\n      [\n        \"▁Meter\",\n        -11.899191856384277\n      ],\n      [\n        \"there\",\n        -11.899201393127441\n      ],\n      [\n        \"▁réaliser\",\n        -11.899249076843262\n      ],\n      [\n        \"blog\",\n        -11.899362564086914\n      ],\n      [\n        \"▁résultats\",\n        -11.89937973022461\n      ],\n      [\n        \"baren\",\n        -11.899391174316406\n      ],\n      [\n        \"▁lang\",\n        -11.899425506591797\n      ],\n      [\n        \"▁mere\",\n        -11.899870872497559\n      ],\n      [\n        \"▁toti\",\n        -11.900079727172852\n      ],\n      [\n        \"DN\",\n        -11.90017032623291\n      ],\n      [\n        \"Hi\",\n        -11.900310516357422\n      ],\n      [\n        \"▁merg\",\n        -11.900359153747559\n      ],\n      [\n        \"▁Camera\",\n        -11.90054988861084\n      ],\n      [\n        \"▁parfum\",\n        -11.900697708129883\n      ],\n      [\n        \"CG\",\n        -11.900701522827148\n      ],\n      [\n        \"posed\",\n        -11.900713920593262\n      ],\n      [\n        \"▁proposals\",\n        -11.900732040405273\n      ],\n      [\n        \"▁incorrect\",\n        -11.900811195373535\n      ],\n      [\n        \"▁Denver\",\n        -11.901168823242188\n      ],\n      [\n        \"▁noapte\",\n        -11.901397705078125\n      ],\n      [\n        \"▁VPN\",\n        -11.901436805725098\n      ],\n      [\n        \"▁Oklahoma\",\n        -11.90159797668457\n      ],\n      [\n        \"horizon\",\n        -11.901647567749023\n      ],\n      [\n        \"▁villa\",\n        -11.901668548583984\n      ],\n      [\n        \"duce\",\n        -11.901812553405762\n      ],\n      [\n        \"Dienst\",\n        -11.902042388916016\n      ],\n      [\n        \"▁oversee\",\n        -11.902511596679688\n      ],\n      [\n        \"astr\",\n        -11.902548789978027\n      ],\n      [\n        \"brand\",\n        -11.902713775634766\n      ],\n      [\n        \"▁Safe\",\n        -11.902746200561523\n      ],\n      [\n        \"▁competing\",\n        -11.902812004089355\n      ],\n      [\n        \"▁subiect\",\n        -11.902812004089355\n      ],\n      [\n        \"▁équipe\",\n        -11.903091430664062\n      ],\n      [\n        \"▁Dress\",\n        -11.903095245361328\n      ],\n      [\n        \"▁Juni\",\n        -11.903139114379883\n      ],\n      [\n        \"▁repeated\",\n        -11.90317153930664\n      ],\n      [\n        \"2012\",\n        -11.903226852416992\n      ],\n      [\n        \"▁départ\",\n        -11.903234481811523\n      ],\n      [\n        \"immer\",\n        -11.903335571289062\n      ],\n      [\n        \"▁mondial\",\n        -11.903374671936035\n      ],\n      [\n        \"▁datelor\",\n        -11.903703689575195\n      ],\n      [\n        \"▁surgeon\",\n        -11.903782844543457\n      ],\n      [\n        \"▁demanding\",\n        -11.903812408447266\n      ],\n      [\n        \"▁concluded\",\n        -11.903878211975098\n      ],\n      [\n        \"țiile\",\n        -11.903950691223145\n      ],\n      [\n        \"marin\",\n        -11.903999328613281\n      ],\n      [\n        \"▁estim\",\n        -11.904206275939941\n      ],\n      [\n        \"▁Loan\",\n        -11.904361724853516\n      ],\n      [\n        \"sculpt\",\n        -11.904373168945312\n      ],\n      [\n        \"▁99\",\n        -11.904391288757324\n      ],\n      [\n        \"void\",\n        -11.904400825500488\n      ],\n      [\n        \"▁Empire\",\n        -11.904499053955078\n      ],\n      [\n        \"▁Brit\",\n        -11.90450382232666\n      ],\n      [\n        \"▁véhicule\",\n        -11.904777526855469\n      ],\n      [\n        \"▁dividend\",\n        -11.905069351196289\n      ],\n      [\n        \"▁refused\",\n        -11.905077934265137\n      ],\n      [\n        \"▁speaks\",\n        -11.905156135559082\n      ],\n      [\n        \"▁Morris\",\n        -11.905282020568848\n      ],\n      [\n        \"dict\",\n        -11.905349731445312\n      ],\n      [\n        \"▁funeral\",\n        -11.905556678771973\n      ],\n      [\n        \"▁Behandlung\",\n        -11.905763626098633\n      ],\n      [\n        \"▁Revolution\",\n        -11.905905723571777\n      ],\n      [\n        \"▁Sum\",\n        -11.905935287475586\n      ],\n      [\n        \"einigen\",\n        -11.906030654907227\n      ],\n      [\n        \"RES\",\n        -11.906070709228516\n      ],\n      [\n        \"▁vite\",\n        -11.906071662902832\n      ],\n      [\n        \"▁Captain\",\n        -11.906190872192383\n      ],\n      [\n        \"▁assurance\",\n        -11.9061918258667\n      ],\n      [\n        \"uga\",\n        -11.906500816345215\n      ],\n      [\n        \"▁conserv\",\n        -11.906583786010742\n      ],\n      [\n        \"▁therapeutic\",\n        -11.906641006469727\n      ],\n      [\n        \"▁Sweden\",\n        -11.906753540039062\n      ],\n      [\n        \"▁Lead\",\n        -11.906888961791992\n      ],\n      [\n        \"ément\",\n        -11.907071113586426\n      ],\n      [\n        \"▁53\",\n        -11.90709114074707\n      ],\n      [\n        \"▁fraction\",\n        -11.9071683883667\n      ],\n      [\n        \"▁magnet\",\n        -11.907170295715332\n      ],\n      [\n        \"assurer\",\n        -11.907184600830078\n      ],\n      [\n        \"▁Steuer\",\n        -11.90733814239502\n      ],\n      [\n        \"▁flori\",\n        -11.90735149383545\n      ],\n      [\n        \"▁charming\",\n        -11.907588958740234\n      ],\n      [\n        \"▁athletic\",\n        -11.907621383666992\n      ],\n      [\n        \"▁membri\",\n        -11.907706260681152\n      ],\n      [\n        \"▁Sep\",\n        -11.907726287841797\n      ],\n      [\n        \"ogue\",\n        -11.907800674438477\n      ],\n      [\n        \"▁familie\",\n        -11.907800674438477\n      ],\n      [\n        \"▁SW\",\n        -11.90796947479248\n      ],\n      [\n        \"▁diagnosed\",\n        -11.908023834228516\n      ],\n      [\n        \"RR\",\n        -11.908143997192383\n      ],\n      [\n        \"▁Fern\",\n        -11.908233642578125\n      ],\n      [\n        \"▁rational\",\n        -11.908281326293945\n      ],\n      [\n        \"▁talents\",\n        -11.90828800201416\n      ],\n      [\n        \"ziert\",\n        -11.908317565917969\n      ],\n      [\n        \"▁chemin\",\n        -11.908459663391113\n      ],\n      [\n        \"sheet\",\n        -11.908562660217285\n      ],\n      [\n        \"▁outer\",\n        -11.908565521240234\n      ],\n      [\n        \"▁Kap\",\n        -11.908591270446777\n      ],\n      [\n        \"▁HERE\",\n        -11.908656120300293\n      ],\n      [\n        \"▁uman\",\n        -11.908824920654297\n      ],\n      [\n        \"▁accompany\",\n        -11.908880233764648\n      ],\n      [\n        \"▁varieties\",\n        -11.908881187438965\n      ],\n      [\n        \"▁sensors\",\n        -11.908957481384277\n      ],\n      [\n        \"▁25%\",\n        -11.90919017791748\n      ],\n      [\n        \"▁tray\",\n        -11.909354209899902\n      ],\n      [\n        \"▁critique\",\n        -11.909459114074707\n      ],\n      [\n        \"▁puţin\",\n        -11.909515380859375\n      ],\n      [\n        \"▁Schüler\",\n        -11.90953540802002\n      ],\n      [\n        \"▁repar\",\n        -11.909744262695312\n      ],\n      [\n        \"▁overlook\",\n        -11.909931182861328\n      ],\n      [\n        \"▁surf\",\n        -11.910048484802246\n      ],\n      [\n        \"▁tasting\",\n        -11.910118103027344\n      ],\n      [\n        \"bog\",\n        -11.91027545928955\n      ],\n      [\n        \"▁Payment\",\n        -11.910289764404297\n      ],\n      [\n        \"▁Helen\",\n        -11.91049575805664\n      ],\n      [\n        \"▁Refer\",\n        -11.910694122314453\n      ],\n      [\n        \"application\",\n        -11.910698890686035\n      ],\n      [\n        \"lection\",\n        -11.910856246948242\n      ],\n      [\n        \"▁avril\",\n        -11.911042213439941\n      ],\n      [\n        \"▁Grace\",\n        -11.911109924316406\n      ],\n      [\n        \"▁kau\",\n        -11.911274909973145\n      ],\n      [\n        \"▁libraries\",\n        -11.911319732666016\n      ],\n      [\n        \"▁closest\",\n        -11.911347389221191\n      ],\n      [\n        \"▁coating\",\n        -11.911351203918457\n      ],\n      [\n        \"▁suicide\",\n        -11.911364555358887\n      ],\n      [\n        \"▁undergraduate\",\n        -11.911449432373047\n      ],\n      [\n        \"▁stitch\",\n        -11.91149616241455\n      ],\n      [\n        \"▁reset\",\n        -11.911593437194824\n      ],\n      [\n        \"▁Greece\",\n        -11.911626815795898\n      ],\n      [\n        \"▁Fred\",\n        -11.91197681427002\n      ],\n      [\n        \"▁18.\",\n        -11.912047386169434\n      ],\n      [\n        \"▁nuit\",\n        -11.912087440490723\n      ],\n      [\n        \"▁lying\",\n        -11.912199974060059\n      ],\n      [\n        \"▁cottage\",\n        -11.91232681274414\n      ],\n      [\n        \"bone\",\n        -11.912477493286133\n      ],\n      [\n        \"▁milieu\",\n        -11.912480354309082\n      ],\n      [\n        \"management\",\n        -11.912623405456543\n      ],\n      [\n        \"▁Freund\",\n        -11.912724494934082\n      ],\n      [\n        \"▁specially\",\n        -11.912841796875\n      ],\n      [\n        \"veut\",\n        -11.912961959838867\n      ],\n      [\n        \"▁necesare\",\n        -11.912999153137207\n      ],\n      [\n        \"▁cert\",\n        -11.913081169128418\n      ],\n      [\n        \"articul\",\n        -11.913151741027832\n      ],\n      [\n        \"150\",\n        -11.913174629211426\n      ],\n      [\n        \"rounded\",\n        -11.913180351257324\n      ],\n      [\n        \"▁longue\",\n        -11.913193702697754\n      ],\n      [\n        \"▁Quel\",\n        -11.913240432739258\n      ],\n      [\n        \"Until\",\n        -11.913322448730469\n      ],\n      [\n        \"▁700\",\n        -11.913398742675781\n      ],\n      [\n        \"▁installations\",\n        -11.913423538208008\n      ],\n      [\n        \"▁boats\",\n        -11.913467407226562\n      ],\n      [\n        \"Fig\",\n        -11.913609504699707\n      ],\n      [\n        \"▁cocktail\",\n        -11.913613319396973\n      ],\n      [\n        \"▁rocks\",\n        -11.91366958618164\n      ],\n      [\n        \"meinen\",\n        -11.91374683380127\n      ],\n      [\n        \"entrepreneur\",\n        -11.913780212402344\n      ],\n      [\n        \"schwarz\",\n        -11.913924217224121\n      ],\n      [\n        \"▁diesel\",\n        -11.91392993927002\n      ],\n      [\n        \"▁villages\",\n        -11.913969039916992\n      ],\n      [\n        \"▁cups\",\n        -11.914076805114746\n      ],\n      [\n        \"▁stairs\",\n        -11.914241790771484\n      ],\n      [\n        \"▁Match\",\n        -11.914350509643555\n      ],\n      [\n        \"Taking\",\n        -11.914437294006348\n      ],\n      [\n        \"prin\",\n        -11.914469718933105\n      ],\n      [\n        \"▁penal\",\n        -11.91472053527832\n      ],\n      [\n        \"partner\",\n        -11.914867401123047\n      ],\n      [\n        \"wave\",\n        -11.91497802734375\n      ],\n      [\n        \"▁baie\",\n        -11.91515064239502\n      ],\n      [\n        \"LAN\",\n        -11.915151596069336\n      ],\n      [\n        \"fix\",\n        -11.915202140808105\n      ],\n      [\n        \"▁surveillance\",\n        -11.915295600891113\n      ],\n      [\n        \"▁Register\",\n        -11.915343284606934\n      ],\n      [\n        \"oara\",\n        -11.915536880493164\n      ],\n      [\n        \"▁Phoenix\",\n        -11.915602684020996\n      ],\n      [\n        \"aktuellen\",\n        -11.915613174438477\n      ],\n      [\n        \"▁livres\",\n        -11.915618896484375\n      ],\n      [\n        \"▁entities\",\n        -11.916102409362793\n      ],\n      [\n        \"▁Regard\",\n        -11.916112899780273\n      ],\n      [\n        \"▁Jazz\",\n        -11.91614055633545\n      ],\n      [\n        \"▁flame\",\n        -11.91616153717041\n      ],\n      [\n        \"▁independence\",\n        -11.916215896606445\n      ],\n      [\n        \"▁Adventure\",\n        -11.916341781616211\n      ],\n      [\n        \"▁assign\",\n        -11.916399955749512\n      ],\n      [\n        \"▁Adult\",\n        -11.916579246520996\n      ],\n      [\n        \"kehr\",\n        -11.916666984558105\n      ],\n      [\n        \"▁ordering\",\n        -11.916850090026855\n      ],\n      [\n        \"▁charts\",\n        -11.91687297821045\n      ],\n      [\n        \"▁Român\",\n        -11.916936874389648\n      ],\n      [\n        \"bauen\",\n        -11.916982650756836\n      ],\n      [\n        \"▁Floor\",\n        -11.917065620422363\n      ],\n      [\n        \"▁Meet\",\n        -11.917101860046387\n      ],\n      [\n        \"▁compromise\",\n        -11.917158126831055\n      ],\n      [\n        \"regarded\",\n        -11.917171478271484\n      ],\n      [\n        \"02.\",\n        -11.917215347290039\n      ],\n      [\n        \"▁granite\",\n        -11.917299270629883\n      ],\n      [\n        \"▁Judge\",\n        -11.917314529418945\n      ],\n      [\n        \"opti\",\n        -11.917373657226562\n      ],\n      [\n        \"liste\",\n        -11.917379379272461\n      ],\n      [\n        \"▁capacité\",\n        -11.917427062988281\n      ],\n      [\n        \"▁criticism\",\n        -11.917450904846191\n      ],\n      [\n        \"LES\",\n        -11.918198585510254\n      ],\n      [\n        \"▁Century\",\n        -11.918211936950684\n      ],\n      [\n        \"▁mobility\",\n        -11.918252944946289\n      ],\n      [\n        \"▁variation\",\n        -11.918622016906738\n      ],\n      [\n        \"▁Utah\",\n        -11.91867446899414\n      ],\n      [\n        \"▁seminar\",\n        -11.918678283691406\n      ],\n      [\n        \"▁experiments\",\n        -11.918803215026855\n      ],\n      [\n        \"midst\",\n        -11.918943405151367\n      ],\n      [\n        \"▁Psycho\",\n        -11.919002532958984\n      ],\n      [\n        \"▁choses\",\n        -11.919121742248535\n      ],\n      [\n        \"▁Karl\",\n        -11.919175148010254\n      ],\n      [\n        \"▁ruling\",\n        -11.919286727905273\n      ],\n      [\n        \"▁Voice\",\n        -11.919404983520508\n      ],\n      [\n        \"▁împotriv\",\n        -11.919442176818848\n      ],\n      [\n        \"▁mesaj\",\n        -11.919500350952148\n      ],\n      [\n        \"▁vrei\",\n        -11.919594764709473\n      ],\n      [\n        \"fan\",\n        -11.919601440429688\n      ],\n      [\n        \"parent\",\n        -11.919648170471191\n      ],\n      [\n        \"▁oraș\",\n        -11.919770240783691\n      ],\n      [\n        \"▁printable\",\n        -11.919777870178223\n      ],\n      [\n        \"▁diver\",\n        -11.919859886169434\n      ],\n      [\n        \"▁ochi\",\n        -11.919949531555176\n      ],\n      [\n        \"▁teenager\",\n        -11.920125961303711\n      ],\n      [\n        \"▁Death\",\n        -11.920150756835938\n      ],\n      [\n        \"▁manque\",\n        -11.920289993286133\n      ],\n      [\n        \"ască\",\n        -11.920345306396484\n      ],\n      [\n        \"▁prob\",\n        -11.9203519821167\n      ],\n      [\n        \"▁télé\",\n        -11.920354843139648\n      ],\n      [\n        \"cursul\",\n        -11.920378684997559\n      ],\n      [\n        \"pion\",\n        -11.92052173614502\n      ],\n      [\n        \"▁dedication\",\n        -11.920644760131836\n      ],\n      [\n        \"▁opr\",\n        -11.920687675476074\n      ],\n      [\n        \"führung\",\n        -11.920761108398438\n      ],\n      [\n        \"▁cognitive\",\n        -11.920827865600586\n      ],\n      [\n        \"soft\",\n        -11.920868873596191\n      ],\n      [\n        \"▁19,\",\n        -11.9209623336792\n      ],\n      [\n        \"▁24-\",\n        -11.921197891235352\n      ],\n      [\n        \"▁legitimate\",\n        -11.921220779418945\n      ],\n      [\n        \"▁comedy\",\n        -11.921277046203613\n      ],\n      [\n        \"▁violation\",\n        -11.921327590942383\n      ],\n      [\n        \"▁disposal\",\n        -11.921472549438477\n      ],\n      [\n        \"▁liegen\",\n        -11.921605110168457\n      ],\n      [\n        \"ко\",\n        -11.921878814697266\n      ],\n      [\n        \"▁martie\",\n        -11.921931266784668\n      ],\n      [\n        \"▁Vas\",\n        -11.92212200164795\n      ],\n      [\n        \"rash\",\n        -11.922134399414062\n      ],\n      [\n        \"▁hadn\",\n        -11.922174453735352\n      ],\n      [\n        \"▁connu\",\n        -11.922204971313477\n      ],\n      [\n        \"▁regelmäßig\",\n        -11.922216415405273\n      ],\n      [\n        \"▁Webseite\",\n        -11.922224998474121\n      ],\n      [\n        \"▁failing\",\n        -11.922273635864258\n      ],\n      [\n        \"explique\",\n        -11.922449111938477\n      ],\n      [\n        \"▁Player\",\n        -11.922513961791992\n      ],\n      [\n        \"vul\",\n        -11.922560691833496\n      ],\n      [\n        \"camp\",\n        -11.922992706298828\n      ],\n      [\n        \"▁erreicht\",\n        -11.922996520996094\n      ],\n      [\n        \"▁tags\",\n        -11.922998428344727\n      ],\n      [\n        \"▁headline\",\n        -11.923210144042969\n      ],\n      [\n        \"▁banc\",\n        -11.923253059387207\n      ],\n      [\n        \"▁Mayor\",\n        -11.923309326171875\n      ],\n      [\n        \"trop\",\n        -11.923395156860352\n      ],\n      [\n        \"AK\",\n        -11.9235258102417\n      ],\n      [\n        \"▁lighter\",\n        -11.923602104187012\n      ],\n      [\n        \"▁syndrome\",\n        -11.923604965209961\n      ],\n      [\n        \"▁Adrian\",\n        -11.92365550994873\n      ],\n      [\n        \"▁EUR\",\n        -11.923759460449219\n      ],\n      [\n        \"▁Missouri\",\n        -11.923916816711426\n      ],\n      [\n        \"▁Chan\",\n        -11.924108505249023\n      ],\n      [\n        \"topped\",\n        -11.924233436584473\n      ],\n      [\n        \"▁nationwide\",\n        -11.924276351928711\n      ],\n      [\n        \"▁6-\",\n        -11.924302101135254\n      ],\n      [\n        \"final\",\n        -11.924408912658691\n      ],\n      [\n        \"ttes\",\n        -11.924485206604004\n      ],\n      [\n        \"▁FO\",\n        -11.924537658691406\n      ],\n      [\n        \"▁legi\",\n        -11.924556732177734\n      ],\n      [\n        \"▁Hum\",\n        -11.924575805664062\n      ],\n      [\n        \"vita\",\n        -11.924662590026855\n      ],\n      [\n        \"▁Regen\",\n        -11.924695014953613\n      ],\n      [\n        \"▁confusion\",\n        -11.92498779296875\n      ],\n      [\n        \"▁valori\",\n        -11.925142288208008\n      ],\n      [\n        \"mill\",\n        -11.92516803741455\n      ],\n      [\n        \"did\",\n        -11.925237655639648\n      ],\n      [\n        \"pid\",\n        -11.925253868103027\n      ],\n      [\n        \"▁implications\",\n        -11.925284385681152\n      ],\n      [\n        \"▁Value\",\n        -11.92552375793457\n      ],\n      [\n        \"lângă\",\n        -11.925666809082031\n      ],\n      [\n        \"▁véritable\",\n        -11.92577075958252\n      ],\n      [\n        \"▁Stick\",\n        -11.925814628601074\n      ],\n      [\n        \"zol\",\n        -11.925835609436035\n      ],\n      [\n        \"▁ebenso\",\n        -11.925863265991211\n      ],\n      [\n        \"west\",\n        -11.925895690917969\n      ],\n      [\n        \"▁auszu\",\n        -11.92600154876709\n      ],\n      [\n        \"▁adorable\",\n        -11.926016807556152\n      ],\n      [\n        \"▁clarity\",\n        -11.92605209350586\n      ],\n      [\n        \"▁Wash\",\n        -11.926335334777832\n      ],\n      [\n        \"▁alien\",\n        -11.926423072814941\n      ],\n      [\n        \"usement\",\n        -11.926626205444336\n      ],\n      [\n        \"▁bones\",\n        -11.9266357421875\n      ],\n      [\n        \"▁Beau\",\n        -11.926726341247559\n      ],\n      [\n        \"▁Jet\",\n        -11.926727294921875\n      ],\n      [\n        \"▁visibility\",\n        -11.927034378051758\n      ],\n      [\n        \"impose\",\n        -11.927063941955566\n      ],\n      [\n        \"food\",\n        -11.927133560180664\n      ],\n      [\n        \"▁duce\",\n        -11.927361488342285\n      ],\n      [\n        \"▁Format\",\n        -11.927386283874512\n      ],\n      [\n        \"▁durability\",\n        -11.927424430847168\n      ],\n      [\n        \"▁Prim\",\n        -11.927614212036133\n      ],\n      [\n        \"▁mele\",\n        -11.927629470825195\n      ],\n      [\n        \"▁dürfen\",\n        -11.927631378173828\n      ],\n      [\n        \"▁Angebote\",\n        -11.92765998840332\n      ],\n      [\n        \"▁discharge\",\n        -11.927745819091797\n      ],\n      [\n        \"▁Justin\",\n        -11.928055763244629\n      ],\n      [\n        \"▁shame\",\n        -11.928228378295898\n      ],\n      [\n        \"▁heated\",\n        -11.928282737731934\n      ],\n      [\n        \"ères\",\n        -11.92856216430664\n      ],\n      [\n        \"human\",\n        -11.928810119628906\n      ],\n      [\n        \"4.5\",\n        -11.928831100463867\n      ],\n      [\n        \"▁lien\",\n        -11.928955078125\n      ],\n      [\n        \"▁Alan\",\n        -11.92896556854248\n      ],\n      [\n        \"▁transmis\",\n        -11.929130554199219\n      ],\n      [\n        \"▁Bul\",\n        -11.929137229919434\n      ],\n      [\n        \"plu\",\n        -11.929169654846191\n      ],\n      [\n        \"acul\",\n        -11.929337501525879\n      ],\n      [\n        \"merk\",\n        -11.929434776306152\n      ],\n      [\n        \"▁altfel\",\n        -11.929566383361816\n      ],\n      [\n        \"deli\",\n        -11.929689407348633\n      ],\n      [\n        \"▁Cru\",\n        -11.930001258850098\n      ],\n      [\n        \"▁hommes\",\n        -11.930127143859863\n      ],\n      [\n        \"aurait\",\n        -11.930137634277344\n      ],\n      [\n        \"cca\",\n        -11.930187225341797\n      ],\n      [\n        \"▁Path\",\n        -11.930208206176758\n      ],\n      [\n        \"astronom\",\n        -11.930241584777832\n      ],\n      [\n        \"▁détail\",\n        -11.930276870727539\n      ],\n      [\n        \"▁blocked\",\n        -11.930394172668457\n      ],\n      [\n        \"iding\",\n        -11.93044376373291\n      ],\n      [\n        \"schä\",\n        -11.930500030517578\n      ],\n      [\n        \"▁30-\",\n        -11.930624008178711\n      ],\n      [\n        \"diction\",\n        -11.930813789367676\n      ],\n      [\n        \"▁pulling\",\n        -11.930868148803711\n      ],\n      [\n        \"▁Sample\",\n        -11.930924415588379\n      ],\n      [\n        \"▁renewable\",\n        -11.930997848510742\n      ],\n      [\n        \"▁Pinterest\",\n        -11.93106746673584\n      ],\n      [\n        \"▁Tages\",\n        -11.93106746673584\n      ],\n      [\n        \"▁shed\",\n        -11.931171417236328\n      ],\n      [\n        \"▁hart\",\n        -11.931188583374023\n      ],\n      [\n        \"▁serie\",\n        -11.931200981140137\n      ],\n      [\n        \"▁documentary\",\n        -11.931208610534668\n      ],\n      [\n        \"gebaut\",\n        -11.931220054626465\n      ],\n      [\n        \"▁Hause\",\n        -11.931272506713867\n      ],\n      [\n        \"share\",\n        -11.931303977966309\n      ],\n      [\n        \"▁inflation\",\n        -11.93138599395752\n      ],\n      [\n        \"▁gall\",\n        -11.931504249572754\n      ],\n      [\n        \"▁adjacent\",\n        -11.931673049926758\n      ],\n      [\n        \"jer\",\n        -11.93173885345459\n      ],\n      [\n        \"▁Universal\",\n        -11.931946754455566\n      ],\n      [\n        \"▁disabilities\",\n        -11.931984901428223\n      ],\n      [\n        \"▁proposition\",\n        -11.93204116821289\n      ],\n      [\n        \"Work\",\n        -11.932293891906738\n      ],\n      [\n        \"▁closure\",\n        -11.932306289672852\n      ],\n      [\n        \"▁separated\",\n        -11.932496070861816\n      ],\n      [\n        \"▁soda\",\n        -11.932549476623535\n      ],\n      [\n        \"▁elite\",\n        -11.93263053894043\n      ],\n      [\n        \"appro\",\n        -11.93265438079834\n      ],\n      [\n        \"▁acute\",\n        -11.93266487121582\n      ],\n      [\n        \"utton\",\n        -11.932938575744629\n      ],\n      [\n        \"▁facă\",\n        -11.933053016662598\n      ],\n      [\n        \"▁collector\",\n        -11.933121681213379\n      ],\n      [\n        \"▁unlock\",\n        -11.933249473571777\n      ],\n      [\n        \"▁Alpha\",\n        -11.933267593383789\n      ],\n      [\n        \"▁Used\",\n        -11.933267593383789\n      ],\n      [\n        \"▁applicants\",\n        -11.933302879333496\n      ],\n      [\n        \"▁înseamn\",\n        -11.933387756347656\n      ],\n      [\n        \"▁inclu\",\n        -11.933414459228516\n      ],\n      [\n        \"▁disclosure\",\n        -11.933544158935547\n      ],\n      [\n        \"▁Fahr\",\n        -11.933995246887207\n      ],\n      [\n        \"AST\",\n        -11.934061050415039\n      ],\n      [\n        \"▁vivre\",\n        -11.934069633483887\n      ],\n      [\n        \"»,\",\n        -11.934167861938477\n      ],\n      [\n        \"laud\",\n        -11.93430233001709\n      ],\n      [\n        \"▁soir\",\n        -11.934365272521973\n      ],\n      [\n        \"▁barrier\",\n        -11.934405326843262\n      ],\n      [\n        \"înd\",\n        -11.934470176696777\n      ],\n      [\n        \"▁ambition\",\n        -11.93451976776123\n      ],\n      [\n        \"asta\",\n        -11.934550285339355\n      ],\n      [\n        \"occupied\",\n        -11.934747695922852\n      ],\n      [\n        \"▁Gau\",\n        -11.934774398803711\n      ],\n      [\n        \"four\",\n        -11.93481159210205\n      ],\n      [\n        \"▁nap\",\n        -11.934887886047363\n      ],\n      [\n        \"iez\",\n        -11.934922218322754\n      ],\n      [\n        \"endra\",\n        -11.935242652893066\n      ],\n      [\n        \"gaben\",\n        -11.935464859008789\n      ],\n      [\n        \"▁Carol\",\n        -11.935481071472168\n      ],\n      [\n        \"▁Switzerland\",\n        -11.935575485229492\n      ],\n      [\n        \"▁Bond\",\n        -11.935617446899414\n      ],\n      [\n        \"▁crossing\",\n        -11.935630798339844\n      ],\n      [\n        \"▁Palace\",\n        -11.9359769821167\n      ],\n      [\n        \"NG\",\n        -11.935986518859863\n      ],\n      [\n        \"▁Budget\",\n        -11.93622875213623\n      ],\n      [\n        \"▁lid\",\n        -11.936372756958008\n      ],\n      [\n        \"bab\",\n        -11.936393737792969\n      ],\n      [\n        \"▁polish\",\n        -11.936416625976562\n      ],\n      [\n        \"▁herbs\",\n        -11.93673038482666\n      ],\n      [\n        \"▁dear\",\n        -11.936747550964355\n      ],\n      [\n        \"▁devrai\",\n        -11.936846733093262\n      ],\n      [\n        \"walk\",\n        -11.936864852905273\n      ],\n      [\n        \"▁humanity\",\n        -11.936897277832031\n      ],\n      [\n        \"▁tires\",\n        -11.936978340148926\n      ],\n      [\n        \"égal\",\n        -11.936994552612305\n      ],\n      [\n        \"▁bow\",\n        -11.937032699584961\n      ],\n      [\n        \"▁debris\",\n        -11.937201499938965\n      ],\n      [\n        \"▁keywords\",\n        -11.937273025512695\n      ],\n      [\n        \"irk\",\n        -11.937345504760742\n      ],\n      [\n        \"▁suspend\",\n        -11.937360763549805\n      ],\n      [\n        \"▁pourra\",\n        -11.93738079071045\n      ],\n      [\n        \"migran\",\n        -11.937454223632812\n      ],\n      [\n        \"thereby\",\n        -11.937570571899414\n      ],\n      [\n        \"▁Harris\",\n        -11.937943458557129\n      ],\n      [\n        \"ateurs\",\n        -11.937956809997559\n      ],\n      [\n        \"▁fal\",\n        -11.938271522521973\n      ],\n      [\n        \"alleged\",\n        -11.938355445861816\n      ],\n      [\n        \"noch\",\n        -11.938494682312012\n      ],\n      [\n        \"▁observation\",\n        -11.938506126403809\n      ],\n      [\n        \"▁București\",\n        -11.93855094909668\n      ],\n      [\n        \"▁SQL\",\n        -11.938624382019043\n      ],\n      [\n        \"▁Phase\",\n        -11.938760757446289\n      ],\n      [\n        \"▁adventures\",\n        -11.93881607055664\n      ],\n      [\n        \"▁Kol\",\n        -11.938885688781738\n      ],\n      [\n        \"▁professionnel\",\n        -11.938916206359863\n      ],\n      [\n        \"crit\",\n        -11.939026832580566\n      ],\n      [\n        \"LR\",\n        -11.939313888549805\n      ],\n      [\n        \"▁preview\",\n        -11.939464569091797\n      ],\n      [\n        \"▁highlighted\",\n        -11.939942359924316\n      ],\n      [\n        \"▁Stud\",\n        -11.939949035644531\n      ],\n      [\n        \"▁labour\",\n        -11.939956665039062\n      ],\n      [\n        \"MV\",\n        -11.9399995803833\n      ],\n      [\n        \"click\",\n        -11.940049171447754\n      ],\n      [\n        \"approche\",\n        -11.94016170501709\n      ],\n      [\n        \"tian\",\n        -11.940183639526367\n      ],\n      [\n        \"cité\",\n        -11.940192222595215\n      ],\n      [\n        \"▁Rain\",\n        -11.94028377532959\n      ],\n      [\n        \"typ\",\n        -11.94032096862793\n      ],\n      [\n        \"Usually\",\n        -11.940435409545898\n      ],\n      [\n        \"▁outlet\",\n        -11.940513610839844\n      ],\n      [\n        \"logging\",\n        -11.940814018249512\n      ],\n      [\n        \"▁Temperatur\",\n        -11.940906524658203\n      ],\n      [\n        \"▁Scottish\",\n        -11.94090747833252\n      ],\n      [\n        \"iga\",\n        -11.940942764282227\n      ],\n      [\n        \"▁glory\",\n        -11.941086769104004\n      ],\n      [\n        \"▁Rom\",\n        -11.941242218017578\n      ],\n      [\n        \"zeug\",\n        -11.941337585449219\n      ],\n      [\n        \"establishing\",\n        -11.941339492797852\n      ],\n      [\n        \"▁imaging\",\n        -11.941926002502441\n      ],\n      [\n        \"▁Beauty\",\n        -11.942015647888184\n      ],\n      [\n        \"igan\",\n        -11.942042350769043\n      ],\n      [\n        \"après\",\n        -11.94224739074707\n      ],\n      [\n        \"Adresse\",\n        -11.942267417907715\n      ],\n      [\n        \"cliff\",\n        -11.942349433898926\n      ],\n      [\n        \"▁unnecessary\",\n        -11.943267822265625\n      ],\n      [\n        \"▁slim\",\n        -11.943324089050293\n      ],\n      [\n        \"dir\",\n        -11.943490982055664\n      ],\n      [\n        \"▁leisure\",\n        -11.943660736083984\n      ],\n      [\n        \"▁principale\",\n        -11.94368839263916\n      ],\n      [\n        \"▁Viele\",\n        -11.943770408630371\n      ],\n      [\n        \"▁2007.\",\n        -11.943802833557129\n      ],\n      [\n        \"Hopefully\",\n        -11.943829536437988\n      ],\n      [\n        \"cola\",\n        -11.943851470947266\n      ],\n      [\n        \"▁Planet\",\n        -11.943927764892578\n      ],\n      [\n        \"▁orientation\",\n        -11.943933486938477\n      ],\n      [\n        \"▁angry\",\n        -11.94419002532959\n      ],\n      [\n        \"MIT\",\n        -11.944234848022461\n      ],\n      [\n        \"▁Kenya\",\n        -11.944265365600586\n      ],\n      [\n        \"▁bless\",\n        -11.94435977935791\n      ],\n      [\n        \"▁Fill\",\n        -11.944524765014648\n      ],\n      [\n        \"▁compar\",\n        -11.944664001464844\n      ],\n      [\n        \"▁curtain\",\n        -11.94473934173584\n      ],\n      [\n        \"ţei\",\n        -11.944754600524902\n      ],\n      [\n        \"▁Az\",\n        -11.94482421875\n      ],\n      [\n        \"▁Rang\",\n        -11.944908142089844\n      ],\n      [\n        \"▁dominant\",\n        -11.944974899291992\n      ],\n      [\n        \"race\",\n        -11.944985389709473\n      ],\n      [\n        \"▁Target\",\n        -11.944987297058105\n      ],\n      [\n        \"▁manually\",\n        -11.944987297058105\n      ],\n      [\n        \"objet\",\n        -11.945024490356445\n      ],\n      [\n        \"thrown\",\n        -11.945131301879883\n      ],\n      [\n        \"NF\",\n        -11.945149421691895\n      ],\n      [\n        \"durant\",\n        -11.945185661315918\n      ],\n      [\n        \"rect\",\n        -11.945302963256836\n      ],\n      [\n        \"▁Größe\",\n        -11.945320129394531\n      ],\n      [\n        \"VM\",\n        -11.9453763961792\n      ],\n      [\n        \"▁aprilie\",\n        -11.945476531982422\n      ],\n      [\n        \"▁Welche\",\n        -11.945639610290527\n      ],\n      [\n        \"▁verde\",\n        -11.946157455444336\n      ],\n      [\n        \"▁Portugal\",\n        -11.946266174316406\n      ],\n      [\n        \"▁algorithm\",\n        -11.94627571105957\n      ],\n      [\n        \"ăț\",\n        -11.946328163146973\n      ],\n      [\n        \"▁Grey\",\n        -11.946371078491211\n      ],\n      [\n        \"▁cleaned\",\n        -11.94644832611084\n      ],\n      [\n        \"▁modes\",\n        -11.946463584899902\n      ],\n      [\n        \"▁relaxation\",\n        -11.946599006652832\n      ],\n      [\n        \"mbr\",\n        -11.946786880493164\n      ],\n      [\n        \"étique\",\n        -11.946821212768555\n      ],\n      [\n        \"Her\",\n        -11.946904182434082\n      ],\n      [\n        \"▁beta\",\n        -11.946952819824219\n      ],\n      [\n        \"▁nobody\",\n        -11.94699764251709\n      ],\n      [\n        \"▁aplic\",\n        -11.947060585021973\n      ],\n      [\n        \"present\",\n        -11.947080612182617\n      ],\n      [\n        \"emis\",\n        -11.947197914123535\n      ],\n      [\n        \"éléments\",\n        -11.947257995605469\n      ],\n      [\n        \"▁lately\",\n        -11.947303771972656\n      ],\n      [\n        \"fab\",\n        -11.94732666015625\n      ],\n      [\n        \"▁aluminiu\",\n        -11.947373390197754\n      ],\n      [\n        \"▁vest\",\n        -11.947524070739746\n      ],\n      [\n        \"▁statue\",\n        -11.947558403015137\n      ],\n      [\n        \"▁publice\",\n        -11.947586059570312\n      ],\n      [\n        \"▁merchandise\",\n        -11.9476900100708\n      ],\n      [\n        \"▁relat\",\n        -11.947810173034668\n      ],\n      [\n        \"git\",\n        -11.94796371459961\n      ],\n      [\n        \"▁interne\",\n        -11.948281288146973\n      ],\n      [\n        \"▁Tokyo\",\n        -11.948325157165527\n      ],\n      [\n        \"chal\",\n        -11.948348045349121\n      ],\n      [\n        \"contacted\",\n        -11.948430061340332\n      ],\n      [\n        \"▁tras\",\n        -11.948455810546875\n      ],\n      [\n        \"▁Clinic\",\n        -11.948626518249512\n      ],\n      [\n        \"▁unbe\",\n        -11.948633193969727\n      ],\n      [\n        \"▁dumneavoastra\",\n        -11.948798179626465\n      ],\n      [\n        \"float\",\n        -11.949078559875488\n      ],\n      [\n        \"isson\",\n        -11.94909381866455\n      ],\n      [\n        \"▁vessel\",\n        -11.949126243591309\n      ],\n      [\n        \"attempting\",\n        -11.949161529541016\n      ],\n      [\n        \"▁doute\",\n        -11.94918441772461\n      ],\n      [\n        \"▁Leadership\",\n        -11.949322700500488\n      ],\n      [\n        \"▁sustain\",\n        -11.94947338104248\n      ],\n      [\n        \"▁textile\",\n        -11.949666023254395\n      ],\n      [\n        \"auer\",\n        -11.949702262878418\n      ],\n      [\n        \"▁90%\",\n        -11.949899673461914\n      ],\n      [\n        \"garten\",\n        -11.949911117553711\n      ],\n      [\n        \"▁adauga\",\n        -11.949991226196289\n      ],\n      [\n        \"▁Kil\",\n        -11.950061798095703\n      ],\n      [\n        \"▁troops\",\n        -11.950420379638672\n      ],\n      [\n        \"▁pale\",\n        -11.950568199157715\n      ],\n      [\n        \"host\",\n        -11.950743675231934\n      ],\n      [\n        \"▁cry\",\n        -11.950757026672363\n      ],\n      [\n        \"▁Alb\",\n        -11.950793266296387\n      ],\n      [\n        \"▁Brad\",\n        -11.95089340209961\n      ],\n      [\n        \"▁bicycle\",\n        -11.951054573059082\n      ],\n      [\n        \"▁24/7\",\n        -11.951217651367188\n      ],\n      [\n        \"▁с\",\n        -11.951228141784668\n      ],\n      [\n        \"▁stimul\",\n        -11.951401710510254\n      ],\n      [\n        \"gler\",\n        -11.951445579528809\n      ],\n      [\n        \"▁notwendig\",\n        -11.951496124267578\n      ],\n      [\n        \"▁cousin\",\n        -11.95158863067627\n      ],\n      [\n        \"cheie\",\n        -11.951600074768066\n      ],\n      [\n        \"hay\",\n        -11.951751708984375\n      ],\n      [\n        \"▁rezolv\",\n        -11.952134132385254\n      ],\n      [\n        \"▁THIS\",\n        -11.952143669128418\n      ],\n      [\n        \"ordre\",\n        -11.952157974243164\n      ],\n      [\n        \"iști\",\n        -11.952173233032227\n      ],\n      [\n        \"▁conclude\",\n        -11.952310562133789\n      ],\n      [\n        \"▁Lage\",\n        -11.952327728271484\n      ],\n      [\n        \"▁Entertainment\",\n        -11.952454566955566\n      ],\n      [\n        \"▁valued\",\n        -11.952478408813477\n      ],\n      [\n        \"ktion\",\n        -11.95253849029541\n      ],\n      [\n        \"▁priorities\",\n        -11.95268440246582\n      ],\n      [\n        \"▁1986\",\n        -11.952770233154297\n      ],\n      [\n        \"▁fatal\",\n        -11.952934265136719\n      ],\n      [\n        \"▁accurately\",\n        -11.952988624572754\n      ],\n      [\n        \"▁1987\",\n        -11.953022956848145\n      ],\n      [\n        \"▁folk\",\n        -11.953073501586914\n      ],\n      [\n        \"7)\",\n        -11.953163146972656\n      ],\n      [\n        \"führer\",\n        -11.95360279083252\n      ],\n      [\n        \"▁knot\",\n        -11.953612327575684\n      ],\n      [\n        \"haltung\",\n        -11.953720092773438\n      ],\n      [\n        \"▁Charlie\",\n        -11.953733444213867\n      ],\n      [\n        \"âge\",\n        -11.95376205444336\n      ],\n      [\n        \"▁threshold\",\n        -11.954041481018066\n      ],\n      [\n        \"▁assault\",\n        -11.954130172729492\n      ],\n      [\n        \"▁meist\",\n        -11.954141616821289\n      ],\n      [\n        \"bine\",\n        -11.954155921936035\n      ],\n      [\n        \"surprisingly\",\n        -11.954171180725098\n      ],\n      [\n        \"▁Protect\",\n        -11.954180717468262\n      ],\n      [\n        \"▁Hack\",\n        -11.954258918762207\n      ],\n      [\n        \"▁Quant\",\n        -11.954537391662598\n      ],\n      [\n        \"▁Cet\",\n        -11.954782485961914\n      ],\n      [\n        \"▁convinced\",\n        -11.95481014251709\n      ],\n      [\n        \"▁muncă\",\n        -11.955033302307129\n      ],\n      [\n        \"dging\",\n        -11.955066680908203\n      ],\n      [\n        \"▁Millionen\",\n        -11.955129623413086\n      ],\n      [\n        \"zahlung\",\n        -11.955148696899414\n      ],\n      [\n        \"▁anticipated\",\n        -11.955192565917969\n      ],\n      [\n        \"▁brass\",\n        -11.9552001953125\n      ],\n      [\n        \"KO\",\n        -11.955244064331055\n      ],\n      [\n        \"▁culori\",\n        -11.955286979675293\n      ],\n      [\n        \"▁Aero\",\n        -11.955326080322266\n      ],\n      [\n        \"▁intermediu\",\n        -11.955373764038086\n      ],\n      [\n        \"▁Philippines\",\n        -11.955381393432617\n      ],\n      [\n        \"▁jury\",\n        -11.955387115478516\n      ],\n      [\n        \"▁Funktion\",\n        -11.95569896697998\n      ],\n      [\n        \"▁probe\",\n        -11.955704689025879\n      ],\n      [\n        \"TL\",\n        -11.955748558044434\n      ],\n      [\n        \"1.0\",\n        -11.955804824829102\n      ],\n      [\n        \"ELL\",\n        -11.95581340789795\n      ],\n      [\n        \"She\",\n        -11.956001281738281\n      ],\n      [\n        \"▁Blood\",\n        -11.956073760986328\n      ],\n      [\n        \"▁Dean\",\n        -11.956111907958984\n      ],\n      [\n        \"▁scène\",\n        -11.9561185836792\n      ],\n      [\n        \"volu\",\n        -11.95621395111084\n      ],\n      [\n        \"▁Epi\",\n        -11.95621395111084\n      ],\n      [\n        \"▁séjour\",\n        -11.95627498626709\n      ],\n      [\n        \"▁Smartphone\",\n        -11.956306457519531\n      ],\n      [\n        \"▁fired\",\n        -11.956357955932617\n      ],\n      [\n        \"beat\",\n        -11.95650577545166\n      ],\n      [\n        \"▁pockets\",\n        -11.956506729125977\n      ],\n      [\n        \"▁serviciu\",\n        -11.956624031066895\n      ],\n      [\n        \"▁affairs\",\n        -11.95678424835205\n      ],\n      [\n        \"▁Ry\",\n        -11.956842422485352\n      ],\n      [\n        \"▁Stadium\",\n        -11.956954956054688\n      ],\n      [\n        \"▁snacks\",\n        -11.957182884216309\n      ],\n      [\n        \"▁efectu\",\n        -11.957221031188965\n      ],\n      [\n        \"▁Richtung\",\n        -11.957273483276367\n      ],\n      [\n        \"▁dresses\",\n        -11.957352638244629\n      ],\n      [\n        \"▁Medien\",\n        -11.95744800567627\n      ],\n      [\n        \"writer\",\n        -11.95759105682373\n      ],\n      [\n        \"changing\",\n        -11.957655906677246\n      ],\n      [\n        \"▁supportive\",\n        -11.957849502563477\n      ],\n      [\n        \"▁beneath\",\n        -11.957873344421387\n      ],\n      [\n        \"paid\",\n        -11.958078384399414\n      ],\n      [\n        \"▁customize\",\n        -11.958155632019043\n      ],\n      [\n        \"▁Ferr\",\n        -11.958187103271484\n      ],\n      [\n        \"reaches\",\n        -11.958338737487793\n      ],\n      [\n        \"arma\",\n        -11.958401679992676\n      ],\n      [\n        \"ción\",\n        -11.958598136901855\n      ],\n      [\n        \"▁elderly\",\n        -11.959243774414062\n      ],\n      [\n        \"▁modification\",\n        -11.95934009552002\n      ],\n      [\n        \"▁perfection\",\n        -11.959381103515625\n      ],\n      [\n        \"▁Allow\",\n        -11.959492683410645\n      ],\n      [\n        \"▁belonging\",\n        -11.959542274475098\n      ],\n      [\n        \"▁compound\",\n        -11.959589004516602\n      ],\n      [\n        \"▁Results\",\n        -11.959681510925293\n      ],\n      [\n        \"▁astăzi\",\n        -11.959793090820312\n      ],\n      [\n        \"▁Liber\",\n        -11.959818840026855\n      ],\n      [\n        \"jor\",\n        -11.959850311279297\n      ],\n      [\n        \"▁Nin\",\n        -11.959980964660645\n      ],\n      [\n        \"▁lumina\",\n        -11.959992408752441\n      ],\n      [\n        \"▁130\",\n        -11.960073471069336\n      ],\n      [\n        \"▁Platform\",\n        -11.960121154785156\n      ],\n      [\n        \"▁SMS\",\n        -11.960221290588379\n      ],\n      [\n        \"▁medic\",\n        -11.96024227142334\n      ],\n      [\n        \"hör\",\n        -11.960315704345703\n      ],\n      [\n        \"▁Kas\",\n        -11.96038818359375\n      ],\n      [\n        \"▁tomato\",\n        -11.960403442382812\n      ],\n      [\n        \"▁logiciel\",\n        -11.960505485534668\n      ],\n      [\n        \"php\",\n        -11.960654258728027\n      ],\n      [\n        \"▁premises\",\n        -11.96071720123291\n      ],\n      [\n        \"▁Communication\",\n        -11.96072769165039\n      ],\n      [\n        \"▁reprezintă\",\n        -11.960762023925781\n      ],\n      [\n        \"▁Partners\",\n        -11.960866928100586\n      ],\n      [\n        \"▁RV\",\n        -11.961090087890625\n      ],\n      [\n        \"▁pants\",\n        -11.961197853088379\n      ],\n      [\n        \"▁envie\",\n        -11.961256980895996\n      ],\n      [\n        \"▁commerce\",\n        -11.961263656616211\n      ],\n      [\n        \"▁tears\",\n        -11.961298942565918\n      ],\n      [\n        \"▁cooler\",\n        -11.961494445800781\n      ],\n      [\n        \"strand\",\n        -11.961556434631348\n      ],\n      [\n        \"▁Gil\",\n        -11.961588859558105\n      ],\n      [\n        \"▁référence\",\n        -11.961641311645508\n      ],\n      [\n        \"▁electronics\",\n        -11.961681365966797\n      ],\n      [\n        \"exposition\",\n        -11.961700439453125\n      ],\n      [\n        \"▁Caribbean\",\n        -11.96171760559082\n      ],\n      [\n        \"▁compelling\",\n        -11.96171760559082\n      ],\n      [\n        \"luci\",\n        -11.961723327636719\n      ],\n      [\n        \"▁Brooklyn\",\n        -11.961892127990723\n      ],\n      [\n        \"▁Thai\",\n        -11.961950302124023\n      ],\n      [\n        \"dler\",\n        -11.96198844909668\n      ],\n      [\n        \"▁supra\",\n        -11.962016105651855\n      ],\n      [\n        \"centered\",\n        -11.962026596069336\n      ],\n      [\n        \"▁metro\",\n        -11.962081909179688\n      ],\n      [\n        \"▁03\",\n        -11.962299346923828\n      ],\n      [\n        \"▁enrich\",\n        -11.962437629699707\n      ],\n      [\n        \"▁adevarat\",\n        -11.962594985961914\n      ],\n      [\n        \"5000\",\n        -11.962961196899414\n      ],\n      [\n        \"▁bell\",\n        -11.96297550201416\n      ],\n      [\n        \"▁sine\",\n        -11.962996482849121\n      ],\n      [\n        \"▁appealing\",\n        -11.963088989257812\n      ],\n      [\n        \"clam\",\n        -11.963116645812988\n      ],\n      [\n        \"▁vorhanden\",\n        -11.963165283203125\n      ],\n      [\n        \"▁pickup\",\n        -11.963268280029297\n      ],\n      [\n        \"▁Alaska\",\n        -11.963269233703613\n      ],\n      [\n        \"▁Nacht\",\n        -11.963300704956055\n      ],\n      [\n        \"borough\",\n        -11.9633207321167\n      ],\n      [\n        \"▁Blanc\",\n        -11.96340274810791\n      ],\n      [\n        \"▁apare\",\n        -11.963616371154785\n      ],\n      [\n        \"▁Works\",\n        -11.963798522949219\n      ],\n      [\n        \"mettent\",\n        -11.963801383972168\n      ],\n      [\n        \"atter\",\n        -11.96389389038086\n      ],\n      [\n        \"terra\",\n        -11.963946342468262\n      ],\n      [\n        \"▁Bit\",\n        -11.964105606079102\n      ],\n      [\n        \"RL\",\n        -11.964131355285645\n      ],\n      [\n        \"▁Wander\",\n        -11.964262962341309\n      ],\n      [\n        \"▁Hawk\",\n        -11.964595794677734\n      ],\n      [\n        \"▁Probleme\",\n        -11.964665412902832\n      ],\n      [\n        \"regel\",\n        -11.964729309082031\n      ],\n      [\n        \"hne\",\n        -11.964739799499512\n      ],\n      [\n        \"fass\",\n        -11.96486759185791\n      ],\n      [\n        \"▁Andy\",\n        -11.965014457702637\n      ],\n      [\n        \"▁befinde\",\n        -11.965179443359375\n      ],\n      [\n        \"boo\",\n        -11.965265274047852\n      ],\n      [\n        \"▁connectivity\",\n        -11.965304374694824\n      ],\n      [\n        \"▁spielt\",\n        -11.965418815612793\n      ],\n      [\n        \"zweiten\",\n        -11.96547794342041\n      ],\n      [\n        \"ţilor\",\n        -11.965526580810547\n      ],\n      [\n        \"▁confi\",\n        -11.96561336517334\n      ],\n      [\n        \"▁schlecht\",\n        -11.965773582458496\n      ],\n      [\n        \"▁Beginn\",\n        -11.96581745147705\n      ],\n      [\n        \"▁floating\",\n        -11.965903282165527\n      ],\n      [\n        \"nimmt\",\n        -11.966071128845215\n      ],\n      [\n        \"▁arbeiten\",\n        -11.96611213684082\n      ],\n      [\n        \"pillar\",\n        -11.966131210327148\n      ],\n      [\n        \"sterreich\",\n        -11.966347694396973\n      ],\n      [\n        \"▁Schule\",\n        -11.966446876525879\n      ],\n      [\n        \"▁durée\",\n        -11.966521263122559\n      ],\n      [\n        \"▁honestly\",\n        -11.96653938293457\n      ],\n      [\n        \"▁acel\",\n        -11.9666166305542\n      ],\n      [\n        \"▁Prozess\",\n        -11.96662425994873\n      ],\n      [\n        \"Min\",\n        -11.966629028320312\n      ],\n      [\n        \"enii\",\n        -11.966632843017578\n      ],\n      [\n        \"DAY\",\n        -11.966758728027344\n      ],\n      [\n        \"▁Blo\",\n        -11.966806411743164\n      ],\n      [\n        \"▁bolt\",\n        -11.966946601867676\n      ],\n      [\n        \"sicher\",\n        -11.967070579528809\n      ],\n      [\n        \"▁17,\",\n        -11.967122077941895\n      ],\n      [\n        \"▁anchor\",\n        -11.967215538024902\n      ],\n      [\n        \"▁consistency\",\n        -11.967241287231445\n      ],\n      [\n        \"▁relatives\",\n        -11.967263221740723\n      ],\n      [\n        \"▁lac\",\n        -11.967385292053223\n      ],\n      [\n        \"105\",\n        -11.967432975769043\n      ],\n      [\n        \"▁Craig\",\n        -11.967534065246582\n      ],\n      [\n        \"▁mandate\",\n        -11.967598915100098\n      ],\n      [\n        \"▁bedeutet\",\n        -11.967674255371094\n      ],\n      [\n        \"▁Soviet\",\n        -11.967680931091309\n      ],\n      [\n        \"▁arguments\",\n        -11.967938423156738\n      ],\n      [\n        \"▁Gebäude\",\n        -11.967997550964355\n      ],\n      [\n        \"▁Parliament\",\n        -11.968005180358887\n      ],\n      [\n        \"▁Kha\",\n        -11.968087196350098\n      ],\n      [\n        \"nica\",\n        -11.968130111694336\n      ],\n      [\n        \"▁Amazing\",\n        -11.968162536621094\n      ],\n      [\n        \"gründe\",\n        -11.968179702758789\n      ],\n      [\n        \"▁Ott\",\n        -11.968269348144531\n      ],\n      [\n        \"Exp\",\n        -11.968314170837402\n      ],\n      [\n        \"▁ianuarie\",\n        -11.96848201751709\n      ],\n      [\n        \"riot\",\n        -11.968571662902832\n      ],\n      [\n        \"▁futur\",\n        -11.968626976013184\n      ],\n      [\n        \"▁Honda\",\n        -11.968647956848145\n      ],\n      [\n        \"!!!!\",\n        -11.96865177154541\n      ],\n      [\n        \"▁citit\",\n        -11.968689918518066\n      ],\n      [\n        \"▁22,\",\n        -11.968708992004395\n      ],\n      [\n        \"țional\",\n        -11.968711853027344\n      ],\n      [\n        \"▁lovers\",\n        -11.968732833862305\n      ],\n      [\n        \"▁Current\",\n        -11.968835830688477\n      ],\n      [\n        \"▁drone\",\n        -11.96927261352539\n      ],\n      [\n        \"▁promising\",\n        -11.969335556030273\n      ],\n      [\n        \"devoted\",\n        -11.969443321228027\n      ],\n      [\n        \"▁Born\",\n        -11.969520568847656\n      ],\n      [\n        \"▁viitor\",\n        -11.969589233398438\n      ],\n      [\n        \"▁ritual\",\n        -11.969614028930664\n      ],\n      [\n        \"▁Guard\",\n        -11.969681739807129\n      ],\n      [\n        \"09.\",\n        -11.969828605651855\n      ],\n      [\n        \"▁Py\",\n        -11.970260620117188\n      ],\n      [\n        \"▁finds\",\n        -11.970380783081055\n      ],\n      [\n        \"▁boli\",\n        -11.970394134521484\n      ],\n      [\n        \"▁Mitglieder\",\n        -11.970697402954102\n      ],\n      [\n        \"ogni\",\n        -11.97107982635498\n      ],\n      [\n        \"▁stones\",\n        -11.97118854522705\n      ],\n      [\n        \"rox\",\n        -11.971210479736328\n      ],\n      [\n        \"▁dock\",\n        -11.971390724182129\n      ],\n      [\n        \"▁onion\",\n        -11.97144889831543\n      ],\n      [\n        \"▁classified\",\n        -11.971538543701172\n      ],\n      [\n        \"big\",\n        -11.971833229064941\n      ],\n      [\n        \"RG\",\n        -11.971857070922852\n      ],\n      [\n        \"influenced\",\n        -11.971955299377441\n      ],\n      [\n        \"▁sudden\",\n        -11.971988677978516\n      ],\n      [\n        \"▁ample\",\n        -11.97204303741455\n      ],\n      [\n        \"án\",\n        -11.972095489501953\n      ],\n      [\n        \"▁ornament\",\n        -11.972122192382812\n      ],\n      [\n        \"datele\",\n        -11.972227096557617\n      ],\n      [\n        \"▁Dad\",\n        -11.97225284576416\n      ],\n      [\n        \"BER\",\n        -11.972278594970703\n      ],\n      [\n        \"gerecht\",\n        -11.972380638122559\n      ],\n      [\n        \"kett\",\n        -11.972536087036133\n      ],\n      [\n        \"▁Antonio\",\n        -11.972572326660156\n      ],\n      [\n        \"Nu\",\n        -11.972834587097168\n      ],\n      [\n        \"dium\",\n        -11.97284984588623\n      ],\n      [\n        \"CAD\",\n        -11.972850799560547\n      ],\n      [\n        \"▁bundle\",\n        -11.972916603088379\n      ],\n      [\n        \"▁Vari\",\n        -11.97301197052002\n      ],\n      [\n        \"▁thrive\",\n        -11.973020553588867\n      ],\n      [\n        \"▁Seminar\",\n        -11.973071098327637\n      ],\n      [\n        \"wire\",\n        -11.973084449768066\n      ],\n      [\n        \"▁contributing\",\n        -11.973114967346191\n      ],\n      [\n        \"▁Bour\",\n        -11.97320556640625\n      ],\n      [\n        \"▁dori\",\n        -11.973206520080566\n      ],\n      [\n        \"▁packing\",\n        -11.97343921661377\n      ],\n      [\n        \"▁colleges\",\n        -11.973459243774414\n      ],\n      [\n        \"▁garbage\",\n        -11.97366714477539\n      ],\n      [\n        \"▁vector\",\n        -11.973837852478027\n      ],\n      [\n        \"▁suggestion\",\n        -11.973897933959961\n      ],\n      [\n        \"borne\",\n        -11.973904609680176\n      ],\n      [\n        \"▁Listen\",\n        -11.973938941955566\n      ],\n      [\n        \"▁Prix\",\n        -11.973957061767578\n      ],\n      [\n        \"viennent\",\n        -11.974162101745605\n      ],\n      [\n        \"insbesondere\",\n        -11.97426700592041\n      ],\n      [\n        \"▁fonctionne\",\n        -11.974435806274414\n      ],\n      [\n        \"▁mainstream\",\n        -11.974485397338867\n      ],\n      [\n        \"▁merci\",\n        -11.974574089050293\n      ],\n      [\n        \"oko\",\n        -11.97460651397705\n      ],\n      [\n        \"▁Commerce\",\n        -11.97493839263916\n      ],\n      [\n        \"▁droits\",\n        -11.975115776062012\n      ],\n      [\n        \"▁muzica\",\n        -11.975141525268555\n      ],\n      [\n        \"▁profesor\",\n        -11.9751558303833\n      ],\n      [\n        \"▁epic\",\n        -11.97518253326416\n      ],\n      [\n        \"▁intuitive\",\n        -11.975186347961426\n      ],\n      [\n        \"▁aggregate\",\n        -11.975223541259766\n      ],\n      [\n        \"▁vaccine\",\n        -11.97529411315918\n      ],\n      [\n        \"▁dank\",\n        -11.975459098815918\n      ],\n      [\n        \"▁situ\",\n        -11.975578308105469\n      ],\n      [\n        \"▁Cand\",\n        -11.975593566894531\n      ],\n      [\n        \"▁Ganz\",\n        -11.97562313079834\n      ],\n      [\n        \"▁Crystal\",\n        -11.97578239440918\n      ],\n      [\n        \"▁discretion\",\n        -11.975825309753418\n      ],\n      [\n        \"mug\",\n        -11.975997924804688\n      ],\n      [\n        \"▁anzu\",\n        -11.976144790649414\n      ],\n      [\n        \"▁cement\",\n        -11.97616958618164\n      ],\n      [\n        \"▁priest\",\n        -11.97625732421875\n      ],\n      [\n        \"▁rejected\",\n        -11.976298332214355\n      ],\n      [\n        \"▁Summit\",\n        -11.976325988769531\n      ],\n      [\n        \"▁Sara\",\n        -11.976424217224121\n      ],\n      [\n        \"▁palette\",\n        -11.976527214050293\n      ],\n      [\n        \"▁continuare\",\n        -11.976569175720215\n      ],\n      [\n        \"uge\",\n        -11.976676940917969\n      ],\n      [\n        \"ryl\",\n        -11.976844787597656\n      ],\n      [\n        \"▁Solid\",\n        -11.977142333984375\n      ],\n      [\n        \"▁meilleure\",\n        -11.977177619934082\n      ],\n      [\n        \"▁Tennessee\",\n        -11.977248191833496\n      ],\n      [\n        \"rail\",\n        -11.977326393127441\n      ],\n      [\n        \"▁attributes\",\n        -11.9773530960083\n      ],\n      [\n        \"▁vessels\",\n        -11.977840423583984\n      ],\n      [\n        \"cylinder\",\n        -11.977900505065918\n      ],\n      [\n        \"▁parfait\",\n        -11.977916717529297\n      ],\n      [\n        \"abb\",\n        -11.97801399230957\n      ],\n      [\n        \"▁Julie\",\n        -11.97806167602539\n      ],\n      [\n        \"▁pièces\",\n        -11.978120803833008\n      ],\n      [\n        \"▁proiecte\",\n        -11.978142738342285\n      ],\n      [\n        \"médi\",\n        -11.978273391723633\n      ],\n      [\n        \"▁décembre\",\n        -11.9783935546875\n      ],\n      [\n        \"Per\",\n        -11.97841739654541\n      ],\n      [\n        \"1/\",\n        -11.978520393371582\n      ],\n      [\n        \"regulated\",\n        -11.978601455688477\n      ],\n      [\n        \"▁Dy\",\n        -11.978633880615234\n      ],\n      [\n        \"▁23,\",\n        -11.978694915771484\n      ],\n      [\n        \"beck\",\n        -11.978763580322266\n      ],\n      [\n        \"tură\",\n        -11.97885513305664\n      ],\n      [\n        \"▁Chiar\",\n        -11.978931427001953\n      ],\n      [\n        \"▁isolated\",\n        -11.979012489318848\n      ],\n      [\n        \"▁kennen\",\n        -11.979259490966797\n      ],\n      [\n        \"Du\",\n        -11.979260444641113\n      ],\n      [\n        \"reflected\",\n        -11.979482650756836\n      ],\n      [\n        \"▁belong\",\n        -11.979571342468262\n      ],\n      [\n        \"▁welcomed\",\n        -11.97969913482666\n      ],\n      [\n        \"▁Rate\",\n        -11.979776382446289\n      ],\n      [\n        \"prestigious\",\n        -11.979859352111816\n      ],\n      [\n        \"▁1/4\",\n        -11.979930877685547\n      ],\n      [\n        \"▁distinction\",\n        -11.979966163635254\n      ],\n      [\n        \"▁boring\",\n        -11.980001449584961\n      ],\n      [\n        \"▁booked\",\n        -11.980369567871094\n      ],\n      [\n        \"▁citizen\",\n        -11.980441093444824\n      ],\n      [\n        \"▁comprises\",\n        -11.980498313903809\n      ],\n      [\n        \"▁aufge\",\n        -11.98051929473877\n      ],\n      [\n        \"GL\",\n        -11.980566024780273\n      ],\n      [\n        \"▁nearest\",\n        -11.980616569519043\n      ],\n      [\n        \"▁printr\",\n        -11.980692863464355\n      ],\n      [\n        \"▁département\",\n        -11.981318473815918\n      ],\n      [\n        \"▁planner\",\n        -11.981510162353516\n      ],\n      [\n        \"▁Rai\",\n        -11.981817245483398\n      ],\n      [\n        \"▁Broad\",\n        -11.981934547424316\n      ],\n      [\n        \"▁pastor\",\n        -11.981947898864746\n      ],\n      [\n        \"▁reservation\",\n        -11.982243537902832\n      ],\n      [\n        \"▁decembrie\",\n        -11.982315063476562\n      ],\n      [\n        \"▁suficient\",\n        -11.982501983642578\n      ],\n      [\n        \"geld\",\n        -11.982560157775879\n      ],\n      [\n        \"training\",\n        -11.982620239257812\n      ],\n      [\n        \"deshalb\",\n        -11.982634544372559\n      ],\n      [\n        \"▁chaud\",\n        -11.982651710510254\n      ],\n      [\n        \"Cor\",\n        -11.982662200927734\n      ],\n      [\n        \"▁Grade\",\n        -11.982769966125488\n      ],\n      [\n        \"▁faţă\",\n        -11.982809066772461\n      ],\n      [\n        \"story\",\n        -11.982839584350586\n      ],\n      [\n        \"gericht\",\n        -11.98286247253418\n      ],\n      [\n        \"▁Got\",\n        -11.982954025268555\n      ],\n      [\n        \"particulièrement\",\n        -11.982976913452148\n      ],\n      [\n        \"▁bump\",\n        -11.983051300048828\n      ],\n      [\n        \"▁fatigue\",\n        -11.983160018920898\n      ],\n      [\n        \"Activ\",\n        -11.983250617980957\n      ],\n      [\n        \"▁numéro\",\n        -11.983302116394043\n      ],\n      [\n        \"▁stranger\",\n        -11.983312606811523\n      ],\n      [\n        \"▁Skin\",\n        -11.983327865600586\n      ],\n      [\n        \"add\",\n        -11.98344898223877\n      ],\n      [\n        \"Ainsi\",\n        -11.98357105255127\n      ],\n      [\n        \"▁assists\",\n        -11.983684539794922\n      ],\n      [\n        \"▁zusätzlich\",\n        -11.983943939208984\n      ],\n      [\n        \"▁vede\",\n        -11.983979225158691\n      ],\n      [\n        \"RON\",\n        -11.984108924865723\n      ],\n      [\n        \"▁seemingly\",\n        -11.984126091003418\n      ],\n      [\n        \"▁NU\",\n        -11.98417854309082\n      ],\n      [\n        \"geb\",\n        -11.984273910522461\n      ],\n      [\n        \"▁Release\",\n        -11.984353065490723\n      ],\n      [\n        \"▁throwing\",\n        -11.984427452087402\n      ],\n      [\n        \"▁Alabama\",\n        -11.984447479248047\n      ],\n      [\n        \"▁Something\",\n        -11.984590530395508\n      ],\n      [\n        \"▁Cuba\",\n        -11.98464584350586\n      ],\n      [\n        \"▁Verbindung\",\n        -11.984649658203125\n      ],\n      [\n        \"▁Cir\",\n        -11.984654426574707\n      ],\n      [\n        \"your\",\n        -11.984713554382324\n      ],\n      [\n        \"-13\",\n        -11.984748840332031\n      ],\n      [\n        \"▁Delta\",\n        -11.984801292419434\n      ],\n      [\n        \"▁Twin\",\n        -11.98504638671875\n      ],\n      [\n        \"▁governance\",\n        -11.985156059265137\n      ],\n      [\n        \"▁groom\",\n        -11.985310554504395\n      ],\n      [\n        \"▁conception\",\n        -11.98533821105957\n      ],\n      [\n        \"▁governor\",\n        -11.985383033752441\n      ],\n      [\n        \"▁Spar\",\n        -11.985416412353516\n      ],\n      [\n        \"▁coastal\",\n        -11.985652923583984\n      ],\n      [\n        \"▁Seven\",\n        -11.985856056213379\n      ],\n      [\n        \"▁inclusive\",\n        -11.986002922058105\n      ],\n      [\n        \"cili\",\n        -11.986035346984863\n      ],\n      [\n        \"▁Ridge\",\n        -11.986100196838379\n      ],\n      [\n        \"teller\",\n        -11.986224174499512\n      ],\n      [\n        \"▁Kin\",\n        -11.986247062683105\n      ],\n      [\n        \"leiter\",\n        -11.986279487609863\n      ],\n      [\n        \"stern\",\n        -11.986364364624023\n      ],\n      [\n        \"change\",\n        -11.986404418945312\n      ],\n      [\n        \"▁presidential\",\n        -11.986433982849121\n      ],\n      [\n        \"▁composer\",\n        -11.986544609069824\n      ],\n      [\n        \"Stu\",\n        -11.986560821533203\n      ],\n      [\n        \"▁Frankfurt\",\n        -11.986584663391113\n      ],\n      [\n        \"prä\",\n        -11.986639976501465\n      ],\n      [\n        \"▁Ideal\",\n        -11.986644744873047\n      ],\n      [\n        \"▁linear\",\n        -11.986857414245605\n      ],\n      [\n        \"▁bloom\",\n        -11.986879348754883\n      ],\n      [\n        \"▁grades\",\n        -11.986881256103516\n      ],\n      [\n        \"mettant\",\n        -11.98692512512207\n      ],\n      [\n        \"▁finishes\",\n        -11.986952781677246\n      ],\n      [\n        \"holz\",\n        -11.987086296081543\n      ],\n      [\n        \"▁dirty\",\n        -11.987317085266113\n      ],\n      [\n        \"▁Roh\",\n        -11.987386703491211\n      ],\n      [\n        \"▁Praxis\",\n        -11.987408638000488\n      ],\n      [\n        \"tempo\",\n        -11.987433433532715\n      ],\n      [\n        \"▁attempted\",\n        -11.987433433532715\n      ],\n      [\n        \"▁primar\",\n        -11.987434387207031\n      ],\n      [\n        \"▁pomp\",\n        -11.987528800964355\n      ],\n      [\n        \"▁tolle\",\n        -11.987614631652832\n      ],\n      [\n        \"▁adres\",\n        -11.988011360168457\n      ],\n      [\n        \"▁Between\",\n        -11.988066673278809\n      ],\n      [\n        \"▁ruin\",\n        -11.988432884216309\n      ],\n      [\n        \"▁matériel\",\n        -11.988561630249023\n      ],\n      [\n        \"MER\",\n        -11.988913536071777\n      ],\n      [\n        \"Nevertheless\",\n        -11.989055633544922\n      ],\n      [\n        \"▁corruption\",\n        -11.989119529724121\n      ],\n      [\n        \"spire\",\n        -11.989180564880371\n      ],\n      [\n        \"▁mou\",\n        -11.989208221435547\n      ],\n      [\n        \"ROM\",\n        -11.989278793334961\n      ],\n      [\n        \"▁underground\",\n        -11.98935604095459\n      ],\n      [\n        \"▁relativ\",\n        -11.989389419555664\n      ],\n      [\n        \"waited\",\n        -11.989462852478027\n      ],\n      [\n        \"▁speeds\",\n        -11.989468574523926\n      ],\n      [\n        \"▁adjusted\",\n        -11.989486694335938\n      ],\n      [\n        \"▁Flat\",\n        -11.989514350891113\n      ],\n      [\n        \"UND\",\n        -11.98965835571289\n      ],\n      [\n        \"▁individuelle\",\n        -11.989744186401367\n      ],\n      [\n        \"▁anybody\",\n        -11.98978042602539\n      ],\n      [\n        \"EO\",\n        -11.989790916442871\n      ],\n      [\n        \"->\",\n        -11.989791870117188\n      ],\n      [\n        \"▁Spend\",\n        -11.989876747131348\n      ],\n      [\n        \"aktion\",\n        -11.990011215209961\n      ],\n      [\n        \"édit\",\n        -11.99006462097168\n      ],\n      [\n        \"▁quest\",\n        -11.990078926086426\n      ],\n      [\n        \"rind\",\n        -11.990541458129883\n      ],\n      [\n        \"▁mediu\",\n        -11.99057388305664\n      ],\n      [\n        \"▁barriers\",\n        -11.99062442779541\n      ],\n      [\n        \"▁répondre\",\n        -11.990633010864258\n      ],\n      [\n        \"▁novembre\",\n        -11.990708351135254\n      ],\n      [\n        \"▁champ\",\n        -11.990736961364746\n      ],\n      [\n        \"saw\",\n        -11.990757942199707\n      ],\n      [\n        \"▁fed\",\n        -11.990804672241211\n      ],\n      [\n        \"▁favorites\",\n        -11.990939140319824\n      ],\n      [\n        \"▁shield\",\n        -11.991055488586426\n      ],\n      [\n        \"▁Wide\",\n        -11.991146087646484\n      ],\n      [\n        \"▁problema\",\n        -11.991445541381836\n      ],\n      [\n        \"▁Asta\",\n        -11.991525650024414\n      ],\n      [\n        \"▁refreshing\",\n        -11.99168872833252\n      ],\n      [\n        \"hey\",\n        -11.991692543029785\n      ],\n      [\n        \"obtaining\",\n        -11.991788864135742\n      ],\n      [\n        \"▁parler\",\n        -11.992072105407715\n      ],\n      [\n        \"▁Cele\",\n        -11.992134094238281\n      ],\n      [\n        \"frage\",\n        -11.992136001586914\n      ],\n      [\n        \"écran\",\n        -11.992324829101562\n      ],\n      [\n        \"▁cleared\",\n        -11.992448806762695\n      ],\n      [\n        \"zehn\",\n        -11.992594718933105\n      ],\n      [\n        \"parmi\",\n        -11.992647171020508\n      ],\n      [\n        \"änder\",\n        -11.992691993713379\n      ],\n      [\n        \"▁Defense\",\n        -11.992693901062012\n      ],\n      [\n        \"tatea\",\n        -11.992696762084961\n      ],\n      [\n        \"▁reasonably\",\n        -11.992939949035645\n      ],\n      [\n        \"▁Idee\",\n        -11.992985725402832\n      ],\n      [\n        \"nehm\",\n        -11.993000030517578\n      ],\n      [\n        \"technologie\",\n        -11.993020057678223\n      ],\n      [\n        \"atura\",\n        -11.993048667907715\n      ],\n      [\n        \"▁slope\",\n        -11.993332862854004\n      ],\n      [\n        \"Hence\",\n        -11.993351936340332\n      ],\n      [\n        \"▁40%\",\n        -11.993391990661621\n      ],\n      [\n        \"▁jewe\",\n        -11.993448257446289\n      ],\n      [\n        \"▁queries\",\n        -11.993470191955566\n      ],\n      [\n        \"▁$8\",\n        -11.994096755981445\n      ],\n      [\n        \"▁Parker\",\n        -11.994107246398926\n      ],\n      [\n        \"▁publique\",\n        -11.994488716125488\n      ],\n      [\n        \"quant\",\n        -11.994529724121094\n      ],\n      [\n        \"issue\",\n        -11.994690895080566\n      ],\n      [\n        \"▁Cleveland\",\n        -11.994847297668457\n      ],\n      [\n        \"4,000\",\n        -11.995071411132812\n      ],\n      [\n        \"IDE\",\n        -11.995145797729492\n      ],\n      [\n        \"▁Barbara\",\n        -11.995233535766602\n      ],\n      [\n        \"udge\",\n        -11.995477676391602\n      ],\n      [\n        \"corn\",\n        -11.99554443359375\n      ],\n      [\n        \"veți\",\n        -11.995588302612305\n      ],\n      [\n        \"▁proteins\",\n        -11.995707511901855\n      ],\n      [\n        \"▁trăi\",\n        -11.995793342590332\n      ],\n      [\n        \"▁mijloc\",\n        -11.995842933654785\n      ],\n      [\n        \"logie\",\n        -11.995884895324707\n      ],\n      [\n        \"▁Walter\",\n        -11.995884895324707\n      ],\n      [\n        \"heißt\",\n        -11.99593448638916\n      ],\n      [\n        \"search\",\n        -11.995946884155273\n      ],\n      [\n        \"▁hochwertige\",\n        -11.996010780334473\n      ],\n      [\n        \"▁încerc\",\n        -11.996014595031738\n      ],\n      [\n        \"▁administrator\",\n        -11.99608039855957\n      ],\n      [\n        \"tension\",\n        -11.996133804321289\n      ],\n      [\n        \"▁homemade\",\n        -11.996438026428223\n      ],\n      [\n        \"▁$20\",\n        -11.99651050567627\n      ],\n      [\n        \"▁leben\",\n        -11.996662139892578\n      ],\n      [\n        \"netz\",\n        -11.996665954589844\n      ],\n      [\n        \"▁intensity\",\n        -11.996882438659668\n      ],\n      [\n        \"▁clever\",\n        -11.996891975402832\n      ],\n      [\n        \"▁installer\",\n        -11.996999740600586\n      ],\n      [\n        \"▁Wand\",\n        -11.997087478637695\n      ],\n      [\n        \"meister\",\n        -11.997130393981934\n      ],\n      [\n        \"ziel\",\n        -11.99744701385498\n      ],\n      [\n        \"▁architect\",\n        -11.99748706817627\n      ],\n      [\n        \"▁crede\",\n        -11.997512817382812\n      ],\n      [\n        \"▁Sleep\",\n        -11.997675895690918\n      ],\n      [\n        \"▁demonstr\",\n        -11.997745513916016\n      ],\n      [\n        \"cake\",\n        -11.997781753540039\n      ],\n      [\n        \"▁Cheap\",\n        -11.997783660888672\n      ],\n      [\n        \"pool\",\n        -11.9979829788208\n      ],\n      [\n        \"▁gadget\",\n        -11.998004913330078\n      ],\n      [\n        \"▁Anbieter\",\n        -11.998005867004395\n      ],\n      [\n        \"▁Jonathan\",\n        -11.998170852661133\n      ],\n      [\n        \"ül\",\n        -11.998492240905762\n      ],\n      [\n        \"▁Harvard\",\n        -11.998503684997559\n      ],\n      [\n        \"▁1985\",\n        -11.998773574829102\n      ],\n      [\n        \"HP\",\n        -11.998839378356934\n      ],\n      [\n        \"▁afara\",\n        -11.99893569946289\n      ],\n      [\n        \"▁halten\",\n        -11.999008178710938\n      ],\n      [\n        \"▁Technik\",\n        -11.999042510986328\n      ],\n      [\n        \"▁dressed\",\n        -11.999149322509766\n      ],\n      [\n        \"weis\",\n        -11.999165534973145\n      ],\n      [\n        \"▁donated\",\n        -11.9993314743042\n      ],\n      [\n        \"also\",\n        -11.99938678741455\n      ],\n      [\n        \"▁EN\",\n        -11.999405860900879\n      ],\n      [\n        \"▁imprim\",\n        -11.99942398071289\n      ],\n      [\n        \"▁onions\",\n        -11.999458312988281\n      ],\n      [\n        \"Par\",\n        -11.99950122833252\n      ],\n      [\n        \"▁donate\",\n        -11.99958324432373\n      ],\n      [\n        \"▁mice\",\n        -11.999610900878906\n      ],\n      [\n        \"referring\",\n        -11.999897956848145\n      ],\n      [\n        \"▁restored\",\n        -12.00003433227539\n      ],\n      [\n        \"▁amateur\",\n        -12.0000581741333\n      ],\n      [\n        \"▁Switch\",\n        -12.000075340270996\n      ],\n      [\n        \"appel\",\n        -12.00013542175293\n      ],\n      [\n        \"▁idéal\",\n        -12.0001859664917\n      ],\n      [\n        \"▁wheat\",\n        -12.000199317932129\n      ],\n      [\n        \"▁lime\",\n        -12.000240325927734\n      ],\n      [\n        \"REA\",\n        -12.00027084350586\n      ],\n      [\n        \"riti\",\n        -12.000357627868652\n      ],\n      [\n        \"ţiile\",\n        -12.00058364868164\n      ],\n      [\n        \"▁machinery\",\n        -12.00064754486084\n      ],\n      [\n        \"UNE\",\n        -12.00089168548584\n      ],\n      [\n        \"▁Cont\",\n        -12.000971794128418\n      ],\n      [\n        \"▁attendees\",\n        -12.001014709472656\n      ],\n      [\n        \"▁aparat\",\n        -12.001080513000488\n      ],\n      [\n        \"freundlich\",\n        -12.00117301940918\n      ],\n      [\n        \"▁zilnic\",\n        -12.001175880432129\n      ],\n      [\n        \"▁spark\",\n        -12.001421928405762\n      ],\n      [\n        \"▁Gast\",\n        -12.001459121704102\n      ],\n      [\n        \"▁Issue\",\n        -12.00147533416748\n      ],\n      [\n        \"▁scam\",\n        -12.001566886901855\n      ],\n      [\n        \"▁bonds\",\n        -12.001618385314941\n      ],\n      [\n        \"owner\",\n        -12.001641273498535\n      ],\n      [\n        \"▁empfehlen\",\n        -12.001673698425293\n      ],\n      [\n        \"elia\",\n        -12.001749992370605\n      ],\n      [\n        \"cic\",\n        -12.001757621765137\n      ],\n      [\n        \"▁honored\",\n        -12.001800537109375\n      ],\n      [\n        \"▁castle\",\n        -12.001846313476562\n      ],\n      [\n        \"avand\",\n        -12.002058982849121\n      ],\n      [\n        \"rough\",\n        -12.002108573913574\n      ],\n      [\n        \"▁Address\",\n        -12.002116203308105\n      ],\n      [\n        \"angle\",\n        -12.00217342376709\n      ],\n      [\n        \"leton\",\n        -12.002259254455566\n      ],\n      [\n        \"▁locked\",\n        -12.002392768859863\n      ],\n      [\n        \"▁consolid\",\n        -12.00248908996582\n      ],\n      [\n        \"▁voucher\",\n        -12.003011703491211\n      ],\n      [\n        \"ației\",\n        -12.003201484680176\n      ],\n      [\n        \"wachsen\",\n        -12.003211975097656\n      ],\n      [\n        \"▁magazines\",\n        -12.003287315368652\n      ],\n      [\n        \"▁Schools\",\n        -12.003318786621094\n      ],\n      [\n        \"▁voices\",\n        -12.003362655639648\n      ],\n      [\n        \"▁Dry\",\n        -12.003479957580566\n      ],\n      [\n        \"▁tricks\",\n        -12.00349235534668\n      ],\n      [\n        \"schließlich\",\n        -12.003546714782715\n      ],\n      [\n        \"▁loyalty\",\n        -12.003687858581543\n      ],\n      [\n        \"risk\",\n        -12.003764152526855\n      ],\n      [\n        \"▁Vers\",\n        -12.003786087036133\n      ],\n      [\n        \"chester\",\n        -12.003802299499512\n      ],\n      [\n        \"▁decorated\",\n        -12.003830909729004\n      ],\n      [\n        \"▁copiilor\",\n        -12.003969192504883\n      ],\n      [\n        \"riz\",\n        -12.003994941711426\n      ],\n      [\n        \"03.\",\n        -12.004013061523438\n      ],\n      [\n        \"▁Hur\",\n        -12.004016876220703\n      ],\n      [\n        \"▁archive\",\n        -12.004021644592285\n      ],\n      [\n        \"▁Continue\",\n        -12.004042625427246\n      ],\n      [\n        \"▁Nähe\",\n        -12.004043579101562\n      ],\n      [\n        \"jit\",\n        -12.004090309143066\n      ],\n      [\n        \"gekommen\",\n        -12.004301071166992\n      ],\n      [\n        \"▁conjunction\",\n        -12.004349708557129\n      ],\n      [\n        \"combining\",\n        -12.004404067993164\n      ],\n      [\n        \"▁Unterstützung\",\n        -12.004517555236816\n      ],\n      [\n        \"oza\",\n        -12.004593849182129\n      ],\n      [\n        \"▁sketch\",\n        -12.004720687866211\n      ],\n      [\n        \"▁arată\",\n        -12.004731178283691\n      ],\n      [\n        \"▁Mining\",\n        -12.004765510559082\n      ],\n      [\n        \"uous\",\n        -12.004791259765625\n      ],\n      [\n        \"▁devis\",\n        -12.004834175109863\n      ],\n      [\n        \"Almost\",\n        -12.004862785339355\n      ],\n      [\n        \"Hu\",\n        -12.005037307739258\n      ],\n      [\n        \"▁Om\",\n        -12.005366325378418\n      ],\n      [\n        \"MF\",\n        -12.00544548034668\n      ],\n      [\n        \"liz\",\n        -12.005451202392578\n      ],\n      [\n        \"▁fails\",\n        -12.005456924438477\n      ],\n      [\n        \"▁comparable\",\n        -12.005459785461426\n      ],\n      [\n        \"▁vein\",\n        -12.005547523498535\n      ],\n      [\n        \"▁Vis\",\n        -12.00561809539795\n      ],\n      [\n        \"▁viagra\",\n        -12.005654335021973\n      ],\n      [\n        \"▁farming\",\n        -12.005678176879883\n      ],\n      [\n        \"▁Late\",\n        -12.005765914916992\n      ],\n      [\n        \"geschrieben\",\n        -12.006033897399902\n      ],\n      [\n        \"hrew\",\n        -12.006103515625\n      ],\n      [\n        \"▁melt\",\n        -12.006120681762695\n      ],\n      [\n        \"lager\",\n        -12.006168365478516\n      ],\n      [\n        \"halte\",\n        -12.006240844726562\n      ],\n      [\n        \"▁Hotels\",\n        -12.006266593933105\n      ],\n      [\n        \"▁facebook\",\n        -12.0064058303833\n      ],\n      [\n        \"▁défi\",\n        -12.006550788879395\n      ],\n      [\n        \"shore\",\n        -12.006802558898926\n      ],\n      [\n        \"▁membrane\",\n        -12.006866455078125\n      ],\n      [\n        \"▁sixth\",\n        -12.006903648376465\n      ],\n      [\n        \"api\",\n        -12.007003784179688\n      ],\n      [\n        \"▁Owner\",\n        -12.007222175598145\n      ],\n      [\n        \"▁(\\\"\",\n        -12.007234573364258\n      ],\n      [\n        \"▁$50\",\n        -12.007280349731445\n      ],\n      [\n        \"▁protective\",\n        -12.007420539855957\n      ],\n      [\n        \"/2\",\n        -12.007548332214355\n      ],\n      [\n        \"▁Girls\",\n        -12.007562637329102\n      ],\n      [\n        \"Gri\",\n        -12.00769329071045\n      ],\n      [\n        \"▁nouă\",\n        -12.007708549499512\n      ],\n      [\n        \"▁infections\",\n        -12.007813453674316\n      ],\n      [\n        \"rân\",\n        -12.007868766784668\n      ],\n      [\n        \"▁Geb\",\n        -12.0078763961792\n      ],\n      [\n        \"▁Conseil\",\n        -12.007905006408691\n      ],\n      [\n        \"▁imagini\",\n        -12.007909774780273\n      ],\n      [\n        \"▁promotions\",\n        -12.00794792175293\n      ],\n      [\n        \"▁enforce\",\n        -12.00795841217041\n      ],\n      [\n        \"▁applicant\",\n        -12.007965087890625\n      ],\n      [\n        \"▁Apart\",\n        -12.008087158203125\n      ],\n      [\n        \"▁progression\",\n        -12.008151054382324\n      ],\n      [\n        \"▁careers\",\n        -12.008511543273926\n      ],\n      [\n        \"▁litigation\",\n        -12.008533477783203\n      ],\n      [\n        \"▁Menge\",\n        -12.00866413116455\n      ],\n      [\n        \"▁Contract\",\n        -12.00871753692627\n      ],\n      [\n        \"▁Kel\",\n        -12.0087308883667\n      ],\n      [\n        \"▁réserve\",\n        -12.008769035339355\n      ],\n      [\n        \"▁Cold\",\n        -12.008870124816895\n      ],\n      [\n        \"▁larg\",\n        -12.009040832519531\n      ],\n      [\n        \"▁microwave\",\n        -12.009090423583984\n      ],\n      [\n        \"▁Whit\",\n        -12.009212493896484\n      ],\n      [\n        \"▁Technologies\",\n        -12.009381294250488\n      ],\n      [\n        \"OU\",\n        -12.00949478149414\n      ],\n      [\n        \"itudine\",\n        -12.00959587097168\n      ],\n      [\n        \"▁handles\",\n        -12.009895324707031\n      ],\n      [\n        \"▁proceedings\",\n        -12.009982109069824\n      ],\n      [\n        \"▁prizes\",\n        -12.010043144226074\n      ],\n      [\n        \"▁unterstützen\",\n        -12.010062217712402\n      ],\n      [\n        \"▁piele\",\n        -12.010090827941895\n      ],\n      [\n        \"▁profound\",\n        -12.010153770446777\n      ],\n      [\n        \"schließen\",\n        -12.0101957321167\n      ],\n      [\n        \"▁trafic\",\n        -12.01025104522705\n      ],\n      [\n        \"▁Nar\",\n        -12.010441780090332\n      ],\n      [\n        \"▁Gesamt\",\n        -12.0106201171875\n      ],\n      [\n        \"▁bugs\",\n        -12.010720252990723\n      ],\n      [\n        \"▁Amy\",\n        -12.010764122009277\n      ],\n      [\n        \"▁eastern\",\n        -12.010775566101074\n      ],\n      [\n        \"nice\",\n        -12.010784149169922\n      ],\n      [\n        \"▁Besuch\",\n        -12.010835647583008\n      ],\n      [\n        \"▁synth\",\n        -12.010892868041992\n      ],\n      [\n        \"▁clasa\",\n        -12.011194229125977\n      ],\n      [\n        \"Book\",\n        -12.01134204864502\n      ],\n      [\n        \"▁ribbon\",\n        -12.011415481567383\n      ],\n      [\n        \"▁neues\",\n        -12.011431694030762\n      ],\n      [\n        \"ZE\",\n        -12.011504173278809\n      ],\n      [\n        \"▁peers\",\n        -12.011613845825195\n      ],\n      [\n        \"leistung\",\n        -12.011730194091797\n      ],\n      [\n        \"▁internship\",\n        -12.011808395385742\n      ],\n      [\n        \"count\",\n        -12.011850357055664\n      ],\n      [\n        \"nam\",\n        -12.01193618774414\n      ],\n      [\n        \"▁12-\",\n        -12.012072563171387\n      ],\n      [\n        \"acked\",\n        -12.012146949768066\n      ],\n      [\n        \"gonna\",\n        -12.012146949768066\n      ],\n      [\n        \"▁Dinge\",\n        -12.01215648651123\n      ],\n      [\n        \"Time\",\n        -12.012299537658691\n      ],\n      [\n        \"▁twelve\",\n        -12.01242446899414\n      ],\n      [\n        \"eye\",\n        -12.012432098388672\n      ],\n      [\n        \"▁avantaj\",\n        -12.01253604888916\n      ],\n      [\n        \"▁Glas\",\n        -12.012731552124023\n      ],\n      [\n        \"aucune\",\n        -12.0127534866333\n      ],\n      [\n        \"▁boil\",\n        -12.012763977050781\n      ],\n      [\n        \"▁Gray\",\n        -12.012773513793945\n      ],\n      [\n        \"adapt\",\n        -12.01288890838623\n      ],\n      [\n        \"occ\",\n        -12.012895584106445\n      ],\n      [\n        \"▁prieten\",\n        -12.012897491455078\n      ],\n      [\n        \"▁trai\",\n        -12.01296615600586\n      ],\n      [\n        \"▁Scal\",\n        -12.013009071350098\n      ],\n      [\n        \"▁conscious\",\n        -12.013057708740234\n      ],\n      [\n        \"▁charter\",\n        -12.013093948364258\n      ],\n      [\n        \"KS\",\n        -12.013242721557617\n      ],\n      [\n        \"▁Barr\",\n        -12.013404846191406\n      ],\n      [\n        \"▁summit\",\n        -12.013411521911621\n      ],\n      [\n        \"▁inflammation\",\n        -12.013439178466797\n      ],\n      [\n        \"tungs\",\n        -12.013440132141113\n      ],\n      [\n        \"ovic\",\n        -12.013449668884277\n      ],\n      [\n        \"▁conduit\",\n        -12.013465881347656\n      ],\n      [\n        \"▁Alice\",\n        -12.013702392578125\n      ],\n      [\n        \"▁veterans\",\n        -12.013850212097168\n      ],\n      [\n        \"Während\",\n        -12.013944625854492\n      ],\n      [\n        \"▁maximal\",\n        -12.014013290405273\n      ],\n      [\n        \"▁Hawaii\",\n        -12.014037132263184\n      ],\n      [\n        \"▁Pine\",\n        -12.01432991027832\n      ],\n      [\n        \"acelasi\",\n        -12.014391899108887\n      ],\n      [\n        \"hyp\",\n        -12.014424324035645\n      ],\n      [\n        \"sensitivity\",\n        -12.01445198059082\n      ],\n      [\n        \"pour\",\n        -12.014481544494629\n      ],\n      [\n        \"ре\",\n        -12.014493942260742\n      ],\n      [\n        \"▁Kentucky\",\n        -12.015129089355469\n      ],\n      [\n        \"▁badge\",\n        -12.015276908874512\n      ],\n      [\n        \"affecting\",\n        -12.015310287475586\n      ],\n      [\n        \"▁chairman\",\n        -12.015311241149902\n      ],\n      [\n        \"▁München\",\n        -12.015467643737793\n      ],\n      [\n        \"▁Hersteller\",\n        -12.015469551086426\n      ],\n      [\n        \"▁urmat\",\n        -12.015615463256836\n      ],\n      [\n        \"tels\",\n        -12.015654563903809\n      ],\n      [\n        \"▁FM\",\n        -12.015701293945312\n      ],\n      [\n        \"▁Basis\",\n        -12.015732765197754\n      ],\n      [\n        \"▁erklärt\",\n        -12.015809059143066\n      ],\n      [\n        \"▁changer\",\n        -12.015859603881836\n      ],\n      [\n        \"tischen\",\n        -12.0159330368042\n      ],\n      [\n        \"▁brave\",\n        -12.015960693359375\n      ],\n      [\n        \"▁siguranta\",\n        -12.015986442565918\n      ],\n      [\n        \"▁partnerships\",\n        -12.015989303588867\n      ],\n      [\n        \"ților\",\n        -12.015999794006348\n      ],\n      [\n        \"▁breathe\",\n        -12.016141891479492\n      ],\n      [\n        \"rink\",\n        -12.016551971435547\n      ],\n      [\n        \"▁footage\",\n        -12.016654014587402\n      ],\n      [\n        \"▁transformed\",\n        -12.016658782958984\n      ],\n      [\n        \"▁prep\",\n        -12.016866683959961\n      ],\n      [\n        \"▁upset\",\n        -12.016901969909668\n      ],\n      [\n        \"▁Native\",\n        -12.017059326171875\n      ],\n      [\n        \"▁Prima\",\n        -12.017154693603516\n      ],\n      [\n        \"▁jersey\",\n        -12.017163276672363\n      ],\n      [\n        \"230\",\n        -12.017182350158691\n      ],\n      [\n        \"▁lucrurile\",\n        -12.017393112182617\n      ],\n      [\n        \"▁divine\",\n        -12.017502784729004\n      ],\n      [\n        \"▁Pit\",\n        -12.017593383789062\n      ],\n      [\n        \"RIS\",\n        -12.01765251159668\n      ],\n      [\n        \"▁Cultural\",\n        -12.017672538757324\n      ],\n      [\n        \"▁exotic\",\n        -12.017786979675293\n      ],\n      [\n        \"▁tastes\",\n        -12.017881393432617\n      ],\n      [\n        \"▁bargain\",\n        -12.017913818359375\n      ],\n      [\n        \"▁optimize\",\n        -12.017985343933105\n      ],\n      [\n        \"▁électrique\",\n        -12.018012046813965\n      ],\n      [\n        \"deuxième\",\n        -12.018030166625977\n      ],\n      [\n        \"▁Gary\",\n        -12.018085479736328\n      ],\n      [\n        \"▁projection\",\n        -12.018122673034668\n      ],\n      [\n        \"▁sliding\",\n        -12.018195152282715\n      ],\n      [\n        \"club\",\n        -12.018216133117676\n      ],\n      [\n        \"association\",\n        -12.01823902130127\n      ],\n      [\n        \"▁LG\",\n        -12.018259048461914\n      ],\n      [\n        \"▁capsule\",\n        -12.018291473388672\n      ],\n      [\n        \"▁politicians\",\n        -12.018397331237793\n      ],\n      [\n        \"▁thumb\",\n        -12.018423080444336\n      ],\n      [\n        \"▁globally\",\n        -12.018743515014648\n      ],\n      [\n        \"positioned\",\n        -12.018796920776367\n      ],\n      [\n        \"▁Hamilton\",\n        -12.018861770629883\n      ],\n      [\n        \"arme\",\n        -12.018881797790527\n      ],\n      [\n        \"▁efectuat\",\n        -12.018881797790527\n      ],\n      [\n        \"zip\",\n        -12.019111633300781\n      ],\n      [\n        \"▁welfare\",\n        -12.019201278686523\n      ],\n      [\n        \"Leistung\",\n        -12.019230842590332\n      ],\n      [\n        \"▁Bac\",\n        -12.019316673278809\n      ],\n      [\n        \"▁fizic\",\n        -12.019338607788086\n      ],\n      [\n        \"OK\",\n        -12.019454002380371\n      ],\n      [\n        \"▁limba\",\n        -12.019545555114746\n      ],\n      [\n        \"▁wardrobe\",\n        -12.019549369812012\n      ],\n      [\n        \"▁offline\",\n        -12.019627571105957\n      ],\n      [\n        \"▁fortune\",\n        -12.019665718078613\n      ],\n      [\n        \"▁dialog\",\n        -12.019681930541992\n      ],\n      [\n        \"▁dramatically\",\n        -12.01997184753418\n      ],\n      [\n        \"▁NYC\",\n        -12.020045280456543\n      ],\n      [\n        \"▁Rem\",\n        -12.02017593383789\n      ],\n      [\n        \"▁bronze\",\n        -12.020455360412598\n      ],\n      [\n        \"▁pulse\",\n        -12.02053451538086\n      ],\n      [\n        \"Fortunately\",\n        -12.020562171936035\n      ],\n      [\n        \"▁glue\",\n        -12.020596504211426\n      ],\n      [\n        \"▁Expo\",\n        -12.020720481872559\n      ],\n      [\n        \"▁profitable\",\n        -12.020776748657227\n      ],\n      [\n        \"▁distributor\",\n        -12.020845413208008\n      ],\n      [\n        \"abilité\",\n        -12.020869255065918\n      ],\n      [\n        \"▁lyrics\",\n        -12.020913124084473\n      ],\n      [\n        \"▁mesh\",\n        -12.02114486694336\n      ],\n      [\n        \"▁organizational\",\n        -12.021157264709473\n      ],\n      [\n        \"▁vanilla\",\n        -12.021249771118164\n      ],\n      [\n        \"▁foc\",\n        -12.021355628967285\n      ],\n      [\n        \"▁1984\",\n        -12.02147388458252\n      ],\n      [\n        \"▁créé\",\n        -12.02172565460205\n      ],\n      [\n        \"▁servi\",\n        -12.022027969360352\n      ],\n      [\n        \"▁underneath\",\n        -12.022095680236816\n      ],\n      [\n        \"▁surveys\",\n        -12.022143363952637\n      ],\n      [\n        \"▁genes\",\n        -12.022238731384277\n      ],\n      [\n        \"▁limite\",\n        -12.02224349975586\n      ],\n      [\n        \"oder\",\n        -12.022247314453125\n      ],\n      [\n        \"▁mandatory\",\n        -12.022269248962402\n      ],\n      [\n        \"▁hospitality\",\n        -12.022303581237793\n      ],\n      [\n        \"▁bikes\",\n        -12.022309303283691\n      ],\n      [\n        \"▁Quote\",\n        -12.022358894348145\n      ],\n      [\n        \"glu\",\n        -12.02241039276123\n      ],\n      [\n        \"▁activitatea\",\n        -12.022513389587402\n      ],\n      [\n        \"preventing\",\n        -12.022584915161133\n      ],\n      [\n        \"▁Kh\",\n        -12.02259635925293\n      ],\n      [\n        \"économie\",\n        -12.022616386413574\n      ],\n      [\n        \"▁visite\",\n        -12.022757530212402\n      ],\n      [\n        \"▁spectacle\",\n        -12.022778511047363\n      ],\n      [\n        \"▁tract\",\n        -12.022860527038574\n      ],\n      [\n        \"▁quant\",\n        -12.022862434387207\n      ],\n      [\n        \"▁evolu\",\n        -12.022866249084473\n      ],\n      [\n        \"▁invata\",\n        -12.023070335388184\n      ],\n      [\n        \"▁homo\",\n        -12.02311897277832\n      ],\n      [\n        \"▁Users\",\n        -12.02344799041748\n      ],\n      [\n        \"introducing\",\n        -12.023632049560547\n      ],\n      [\n        \"hibi\",\n        -12.023661613464355\n      ],\n      [\n        \"▁Instrument\",\n        -12.023805618286133\n      ],\n      [\n        \"▁ép\",\n        -12.023839950561523\n      ],\n      [\n        \"▁Raj\",\n        -12.023869514465332\n      ],\n      [\n        \"▁executives\",\n        -12.023881912231445\n      ],\n      [\n        \"atoire\",\n        -12.023885726928711\n      ],\n      [\n        \"▁erforderlich\",\n        -12.02397346496582\n      ],\n      [\n        \"male\",\n        -12.024211883544922\n      ],\n      [\n        \"umble\",\n        -12.024271011352539\n      ],\n      [\n        \"erson\",\n        -12.024277687072754\n      ],\n      [\n        \"▁Treatment\",\n        -12.024286270141602\n      ],\n      [\n        \"▁Representative\",\n        -12.024314880371094\n      ],\n      [\n        \"▁corners\",\n        -12.024409294128418\n      ],\n      [\n        \"▁Petit\",\n        -12.024599075317383\n      ],\n      [\n        \"8)\",\n        -12.02464771270752\n      ],\n      [\n        \"▁Walker\",\n        -12.024714469909668\n      ],\n      [\n        \"▁Stir\",\n        -12.02476692199707\n      ],\n      [\n        \"/19\",\n        -12.024767875671387\n      ],\n      [\n        \"▁Stelle\",\n        -12.024979591369629\n      ],\n      [\n        \"ără\",\n        -12.025009155273438\n      ],\n      [\n        \"osse\",\n        -12.025166511535645\n      ],\n      [\n        \"2000\",\n        -12.025189399719238\n      ],\n      [\n        \"▁McG\",\n        -12.025580406188965\n      ],\n      [\n        \"DV\",\n        -12.025773048400879\n      ],\n      [\n        \"▁Firm\",\n        -12.025862693786621\n      ],\n      [\n        \"▁packet\",\n        -12.025904655456543\n      ],\n      [\n        \"Toate\",\n        -12.02640438079834\n      ],\n      [\n        \"▁institutional\",\n        -12.026479721069336\n      ],\n      [\n        \"rug\",\n        -12.026663780212402\n      ],\n      [\n        \"DG\",\n        -12.026837348937988\n      ],\n      [\n        \"fine\",\n        -12.026837348937988\n      ],\n      [\n        \"bringen\",\n        -12.026856422424316\n      ],\n      [\n        \"▁Horse\",\n        -12.026921272277832\n      ],\n      [\n        \"▁premiere\",\n        -12.026937484741211\n      ],\n      [\n        \"▁Că\",\n        -12.027026176452637\n      ],\n      [\n        \"acheter\",\n        -12.02703857421875\n      ],\n      [\n        \"▁Afghanistan\",\n        -12.027053833007812\n      ],\n      [\n        \"▁Prop\",\n        -12.027085304260254\n      ],\n      [\n        \"ühr\",\n        -12.02715015411377\n      ],\n      [\n        \"▁braucht\",\n        -12.027398109436035\n      ],\n      [\n        \"▁sunny\",\n        -12.027424812316895\n      ],\n      [\n        \"▁Sach\",\n        -12.027461051940918\n      ],\n      [\n        \"▁volumes\",\n        -12.02753734588623\n      ],\n      [\n        \"tinut\",\n        -12.02759838104248\n      ],\n      [\n        \"▁Sho\",\n        -12.027722358703613\n      ],\n      [\n        \"▁winds\",\n        -12.027735710144043\n      ],\n      [\n        \"▁Mall\",\n        -12.027873992919922\n      ],\n      [\n        \"ledge\",\n        -12.027937889099121\n      ],\n      [\n        \"▁sciences\",\n        -12.027997016906738\n      ],\n      [\n        \"plication\",\n        -12.028024673461914\n      ],\n      [\n        \"VR\",\n        -12.028068542480469\n      ],\n      [\n        \"destin\",\n        -12.028234481811523\n      ],\n      [\n        \"▁früh\",\n        -12.02833366394043\n      ],\n      [\n        \"▁tongue\",\n        -12.028359413146973\n      ],\n      [\n        \"▁Jennifer\",\n        -12.028425216674805\n      ],\n      [\n        \"▁bracket\",\n        -12.028427124023438\n      ],\n      [\n        \"▁episodes\",\n        -12.02845287322998\n      ],\n      [\n        \"breite\",\n        -12.028461456298828\n      ],\n      [\n        \"▁stoc\",\n        -12.028635025024414\n      ],\n      [\n        \"ilia\",\n        -12.028728485107422\n      ],\n      [\n        \"▁Gulf\",\n        -12.02874755859375\n      ],\n      [\n        \"▁transparency\",\n        -12.028768539428711\n      ],\n      [\n        \"Industrie\",\n        -12.028853416442871\n      ],\n      [\n        \"▁viewers\",\n        -12.028916358947754\n      ],\n      [\n        \"AIN\",\n        -12.029129981994629\n      ],\n      [\n        \"▁Registration\",\n        -12.029149055480957\n      ],\n      [\n        \"/4\",\n        -12.029309272766113\n      ],\n      [\n        \"▁fera\",\n        -12.029337882995605\n      ],\n      [\n        \"▁06\",\n        -12.029351234436035\n      ],\n      [\n        \"▁einzu\",\n        -12.029391288757324\n      ],\n      [\n        \"enburg\",\n        -12.02944278717041\n      ],\n      [\n        \"▁eff\",\n        -12.029449462890625\n      ],\n      [\n        \"▁Stage\",\n        -12.029558181762695\n      ],\n      [\n        \"▁Cour\",\n        -12.029685020446777\n      ],\n      [\n        \"indu\",\n        -12.029836654663086\n      ],\n      [\n        \"▁Tools\",\n        -12.029909133911133\n      ],\n      [\n        \"IST\",\n        -12.029921531677246\n      ],\n      [\n        \"grund\",\n        -12.030105590820312\n      ],\n      [\n        \"seitig\",\n        -12.030153274536133\n      ],\n      [\n        \"pai\",\n        -12.030250549316406\n      ],\n      [\n        \"▁waist\",\n        -12.030350685119629\n      ],\n      [\n        \"▁Therapy\",\n        -12.03049373626709\n      ],\n      [\n        \"▁nomination\",\n        -12.030599594116211\n      ],\n      [\n        \"▁seama\",\n        -12.030790328979492\n      ],\n      [\n        \"▁analyse\",\n        -12.030975341796875\n      ],\n      [\n        \"▁emerge\",\n        -12.031044006347656\n      ],\n      [\n        \"▁adjustment\",\n        -12.031106948852539\n      ],\n      [\n        \"▁stroll\",\n        -12.031106948852539\n      ],\n      [\n        \"▁Beyond\",\n        -12.031174659729004\n      ],\n      [\n        \"▁legally\",\n        -12.03122615814209\n      ],\n      [\n        \"▁gauge\",\n        -12.03123664855957\n      ],\n      [\n        \"▁26,\",\n        -12.031360626220703\n      ],\n      [\n        \"Tex\",\n        -12.031390190124512\n      ],\n      [\n        \"economic\",\n        -12.031488418579102\n      ],\n      [\n        \"stoffe\",\n        -12.031532287597656\n      ],\n      [\n        \"Wir\",\n        -12.031559944152832\n      ],\n      [\n        \"ffen\",\n        -12.031601905822754\n      ],\n      [\n        \"▁acoperi\",\n        -12.031609535217285\n      ],\n      [\n        \"▁finale\",\n        -12.031792640686035\n      ],\n      [\n        \"▁theoretical\",\n        -12.031864166259766\n      ],\n      [\n        \"1.3\",\n        -12.031875610351562\n      ],\n      [\n        \"anim\",\n        -12.031888008117676\n      ],\n      [\n        \"▁separation\",\n        -12.031928062438965\n      ],\n      [\n        \"agence\",\n        -12.031937599182129\n      ],\n      [\n        \"▁réalisé\",\n        -12.032069206237793\n      ],\n      [\n        \"sprech\",\n        -12.03215503692627\n      ],\n      [\n        \"▁embedded\",\n        -12.032208442687988\n      ],\n      [\n        \"▁defence\",\n        -12.032242774963379\n      ],\n      [\n        \"éni\",\n        -12.032569885253906\n      ],\n      [\n        \"▁Norman\",\n        -12.032613754272461\n      ],\n      [\n        \"▁insgesamt\",\n        -12.032621383666992\n      ],\n      [\n        \"▁reminde\",\n        -12.032631874084473\n      ],\n      [\n        \"▁timeline\",\n        -12.032703399658203\n      ],\n      [\n        \"▁symbols\",\n        -12.032770156860352\n      ],\n      [\n        \"▁booth\",\n        -12.032783508300781\n      ],\n      [\n        \"▁Window\",\n        -12.032788276672363\n      ],\n      [\n        \"▁Titan\",\n        -12.032910346984863\n      ],\n      [\n        \"înt\",\n        -12.033021926879883\n      ],\n      [\n        \"▁langa\",\n        -12.033021926879883\n      ],\n      [\n        \"isant\",\n        -12.03303337097168\n      ],\n      [\n        \"hart\",\n        -12.033113479614258\n      ],\n      [\n        \"broader\",\n        -12.033266067504883\n      ],\n      [\n        \"▁stays\",\n        -12.033288955688477\n      ],\n      [\n        \"dur\",\n        -12.033488273620605\n      ],\n      [\n        \"▁Actually\",\n        -12.033514022827148\n      ],\n      [\n        \"works\",\n        -12.03351879119873\n      ],\n      [\n        \"▁réussi\",\n        -12.03357219696045\n      ],\n      [\n        \"▁performant\",\n        -12.033658981323242\n      ],\n      [\n        \"▁banana\",\n        -12.033788681030273\n      ],\n      [\n        \"▁baked\",\n        -12.033870697021484\n      ],\n      [\n        \"▁Parlament\",\n        -12.033931732177734\n      ],\n      [\n        \"▁Legend\",\n        -12.033967018127441\n      ],\n      [\n        \"toata\",\n        -12.034172058105469\n      ],\n      [\n        \"platte\",\n        -12.03419017791748\n      ],\n      [\n        \"▁Mou\",\n        -12.034192085266113\n      ],\n      [\n        \"HL\",\n        -12.034235000610352\n      ],\n      [\n        \"▁(8\",\n        -12.034290313720703\n      ],\n      [\n        \"▁accepting\",\n        -12.034313201904297\n      ],\n      [\n        \"▁Senator\",\n        -12.034340858459473\n      ],\n      [\n        \"▁consciousness\",\n        -12.034396171569824\n      ],\n      [\n        \"▁conducting\",\n        -12.0344820022583\n      ],\n      [\n        \"▁panic\",\n        -12.034833908081055\n      ],\n      [\n        \"▁FDA\",\n        -12.035112380981445\n      ],\n      [\n        \"▁(7\",\n        -12.035163879394531\n      ],\n      [\n        \"tool\",\n        -12.035300254821777\n      ],\n      [\n        \"▁Shipping\",\n        -12.03538703918457\n      ],\n      [\n        \"▁hop\",\n        -12.035545349121094\n      ],\n      [\n        \"▁conferences\",\n        -12.03564167022705\n      ],\n      [\n        \"▁pork\",\n        -12.035661697387695\n      ],\n      [\n        \"▁spam\",\n        -12.035730361938477\n      ],\n      [\n        \"▁interesant\",\n        -12.035815238952637\n      ],\n      [\n        \"▁Tagen\",\n        -12.03581714630127\n      ],\n      [\n        \"sig\",\n        -12.035886764526367\n      ],\n      [\n        \"étro\",\n        -12.036044120788574\n      ],\n      [\n        \"▁legendary\",\n        -12.036449432373047\n      ],\n      [\n        \"▁Alternative\",\n        -12.036643981933594\n      ],\n      [\n        \"iana\",\n        -12.036704063415527\n      ],\n      [\n        \"▁responsable\",\n        -12.036888122558594\n      ],\n      [\n        \"▁Mihai\",\n        -12.037237167358398\n      ],\n      [\n        \"▁decreased\",\n        -12.037345886230469\n      ],\n      [\n        \"▁organised\",\n        -12.037485122680664\n      ],\n      [\n        \"▁Lamp\",\n        -12.037589073181152\n      ],\n      [\n        \"litz\",\n        -12.037622451782227\n      ],\n      [\n        \"ohn\",\n        -12.037622451782227\n      ],\n      [\n        \"▁moteur\",\n        -12.0376615524292\n      ],\n      [\n        \"III\",\n        -12.03768539428711\n      ],\n      [\n        \"▁Montag\",\n        -12.037755012512207\n      ],\n      [\n        \"▁naturel\",\n        -12.037814140319824\n      ],\n      [\n        \"▁Hus\",\n        -12.037842750549316\n      ],\n      [\n        \"▁Schl\",\n        -12.037884712219238\n      ],\n      [\n        \"ains\",\n        -12.037968635559082\n      ],\n      [\n        \"▁dying\",\n        -12.0380859375\n      ],\n      [\n        \"▁HIV\",\n        -12.038115501403809\n      ],\n      [\n        \"],\",\n        -12.038164138793945\n      ],\n      [\n        \"alität\",\n        -12.03818416595459\n      ],\n      [\n        \"▁institute\",\n        -12.038249015808105\n      ],\n      [\n        \"mix\",\n        -12.038433074951172\n      ],\n      [\n        \"▁Regulation\",\n        -12.038453102111816\n      ],\n      [\n        \"▁pagina\",\n        -12.03857707977295\n      ],\n      [\n        \"▁Awesome\",\n        -12.03860092163086\n      ],\n      [\n        \"▁Official\",\n        -12.03860092163086\n      ],\n      [\n        \"▁Minute\",\n        -12.038601875305176\n      ],\n      [\n        \"▁dairy\",\n        -12.038787841796875\n      ],\n      [\n        \"▁carti\",\n        -12.038881301879883\n      ],\n      [\n        \"isk\",\n        -12.039091110229492\n      ],\n      [\n        \"▁thrilled\",\n        -12.039138793945312\n      ],\n      [\n        \"▁german\",\n        -12.039172172546387\n      ],\n      [\n        \"▁frustration\",\n        -12.039228439331055\n      ],\n      [\n        \"▁forums\",\n        -12.03927230834961\n      ],\n      [\n        \"command\",\n        -12.039361000061035\n      ],\n      [\n        \"▁router\",\n        -12.039399147033691\n      ],\n      [\n        \"▁Lösung\",\n        -12.039423942565918\n      ],\n      [\n        \"white\",\n        -12.039470672607422\n      ],\n      [\n        \"▁synthetic\",\n        -12.039487838745117\n      ],\n      [\n        \"▁retrouver\",\n        -12.039554595947266\n      ],\n      [\n        \"alle\",\n        -12.039621353149414\n      ],\n      [\n        \"daran\",\n        -12.039653778076172\n      ],\n      [\n        \"▁wahr\",\n        -12.039697647094727\n      ],\n      [\n        \"▁paths\",\n        -12.039875984191895\n      ],\n      [\n        \"▁unver\",\n        -12.039962768554688\n      ],\n      [\n        \"▁Environment\",\n        -12.0400972366333\n      ],\n      [\n        \"▁médecin\",\n        -12.040510177612305\n      ],\n      [\n        \"crypt\",\n        -12.040572166442871\n      ],\n      [\n        \"▁pursuit\",\n        -12.040595054626465\n      ],\n      [\n        \"flat\",\n        -12.040611267089844\n      ],\n      [\n        \"bron\",\n        -12.040698051452637\n      ],\n      [\n        \"▁Specialist\",\n        -12.040852546691895\n      ],\n      [\n        \"▁Vent\",\n        -12.041157722473145\n      ],\n      [\n        \"Gen\",\n        -12.04132080078125\n      ],\n      [\n        \"▁attraction\",\n        -12.04132080078125\n      ],\n      [\n        \"▁piese\",\n        -12.041372299194336\n      ],\n      [\n        \"CHE\",\n        -12.041665077209473\n      ],\n      [\n        \"fähig\",\n        -12.04172420501709\n      ],\n      [\n        \"▁28,\",\n        -12.041773796081543\n      ],\n      [\n        \"defender\",\n        -12.041810989379883\n      ],\n      [\n        \"▁stupid\",\n        -12.04181957244873\n      ],\n      [\n        \"enfin\",\n        -12.04185962677002\n      ],\n      [\n        \"▁composite\",\n        -12.04207706451416\n      ],\n      [\n        \"fragen\",\n        -12.042202949523926\n      ],\n      [\n        \"Part\",\n        -12.042232513427734\n      ],\n      [\n        \"may\",\n        -12.042238235473633\n      ],\n      [\n        \"▁Bucureşti\",\n        -12.042248725891113\n      ],\n      [\n        \"▁février\",\n        -12.042248725891113\n      ],\n      [\n        \"RED\",\n        -12.042417526245117\n      ],\n      [\n        \"▁makers\",\n        -12.042462348937988\n      ],\n      [\n        \"▁guns\",\n        -12.042594909667969\n      ],\n      [\n        \"▁pasta\",\n        -12.042706489562988\n      ],\n      [\n        \"STR\",\n        -12.04271125793457\n      ],\n      [\n        \"▁worthy\",\n        -12.042760848999023\n      ],\n      [\n        \"Poate\",\n        -12.042783737182617\n      ],\n      [\n        \"▁101\",\n        -12.04286003112793\n      ],\n      [\n        \"▁souhaitez\",\n        -12.04299545288086\n      ],\n      [\n        \"GN\",\n        -12.043449401855469\n      ],\n      [\n        \"drive\",\n        -12.043499946594238\n      ],\n      [\n        \"▁aveti\",\n        -12.043582916259766\n      ],\n      [\n        \"▁eventual\",\n        -12.043591499328613\n      ],\n      [\n        \"▁américain\",\n        -12.043642044067383\n      ],\n      [\n        \"▁Mine\",\n        -12.043678283691406\n      ],\n      [\n        \"▁sunset\",\n        -12.043729782104492\n      ],\n      [\n        \"▁Choice\",\n        -12.043844223022461\n      ],\n      [\n        \"▁offset\",\n        -12.043944358825684\n      ],\n      [\n        \"APP\",\n        -12.04410457611084\n      ],\n      [\n        \"▁suchen\",\n        -12.044130325317383\n      ],\n      [\n        \"▁aduc\",\n        -12.044228553771973\n      ],\n      [\n        \"▁Unternehmens\",\n        -12.044342041015625\n      ],\n      [\n        \"▁//\",\n        -12.044651985168457\n      ],\n      [\n        \"▁astept\",\n        -12.044678688049316\n      ],\n      [\n        \"▁Birthday\",\n        -12.045061111450195\n      ],\n      [\n        \"▁barn\",\n        -12.045083999633789\n      ],\n      [\n        \"apport\",\n        -12.045105934143066\n      ],\n      [\n        \"▁collar\",\n        -12.045212745666504\n      ],\n      [\n        \"▁gefunden\",\n        -12.045294761657715\n      ],\n      [\n        \"▁Hai\",\n        -12.045429229736328\n      ],\n      [\n        \"▁Soul\",\n        -12.045441627502441\n      ],\n      [\n        \"ismus\",\n        -12.045654296875\n      ],\n      [\n        \"letzt\",\n        -12.045754432678223\n      ],\n      [\n        \"▁maker\",\n        -12.045841217041016\n      ],\n      [\n        \"▁executed\",\n        -12.045857429504395\n      ],\n      [\n        \"▁Forschung\",\n        -12.045915603637695\n      ],\n      [\n        \"▁täglich\",\n        -12.045958518981934\n      ],\n      [\n        \"▁tailor\",\n        -12.045960426330566\n      ],\n      [\n        \"▁headquarters\",\n        -12.0460844039917\n      ],\n      [\n        \"▁physicians\",\n        -12.046112060546875\n      ],\n      [\n        \"▁Scout\",\n        -12.046126365661621\n      ],\n      [\n        \"folgen\",\n        -12.046175003051758\n      ],\n      [\n        \"▁cycling\",\n        -12.046184539794922\n      ],\n      [\n        \"mindestens\",\n        -12.04620361328125\n      ],\n      [\n        \"▁joli\",\n        -12.046216011047363\n      ],\n      [\n        \"▁classification\",\n        -12.046225547790527\n      ],\n      [\n        \"▁Führung\",\n        -12.046258926391602\n      ],\n      [\n        \"▁peau\",\n        -12.04629135131836\n      ],\n      [\n        \"INT\",\n        -12.046502113342285\n      ],\n      [\n        \"▁Garage\",\n        -12.046664237976074\n      ],\n      [\n        \"teile\",\n        -12.046714782714844\n      ],\n      [\n        \"util\",\n        -12.046716690063477\n      ],\n      [\n        \"▁petrec\",\n        -12.046751022338867\n      ],\n      [\n        \"▁Nevada\",\n        -12.046826362609863\n      ],\n      [\n        \"▁laisser\",\n        -12.04706859588623\n      ],\n      [\n        \"▁territoire\",\n        -12.047131538391113\n      ],\n      [\n        \"▁fichier\",\n        -12.047154426574707\n      ],\n      [\n        \"▁Formula\",\n        -12.047343254089355\n      ],\n      [\n        \"scopul\",\n        -12.047379493713379\n      ],\n      [\n        \"▁Tee\",\n        -12.047486305236816\n      ],\n      [\n        \"▁Monte\",\n        -12.047529220581055\n      ],\n      [\n        \"▁pumpkin\",\n        -12.04757022857666\n      ],\n      [\n        \"▁picnic\",\n        -12.047589302062988\n      ],\n      [\n        \"▁occupation\",\n        -12.047652244567871\n      ],\n      [\n        \"▁numérique\",\n        -12.047831535339355\n      ],\n      [\n        \"linie\",\n        -12.04786491394043\n      ],\n      [\n        \"▁masina\",\n        -12.048117637634277\n      ],\n      [\n        \"▁Prä\",\n        -12.048173904418945\n      ],\n      [\n        \"▁dezvoltare\",\n        -12.048177719116211\n      ],\n      [\n        \"▁vient\",\n        -12.048291206359863\n      ],\n      [\n        \"▁ranks\",\n        -12.048295021057129\n      ],\n      [\n        \"▁Bruce\",\n        -12.048420906066895\n      ],\n      [\n        \"▁seara\",\n        -12.048433303833008\n      ],\n      [\n        \"▁hungry\",\n        -12.048563003540039\n      ],\n      [\n        \"▁resolved\",\n        -12.048650741577148\n      ],\n      [\n        \"paired\",\n        -12.048735618591309\n      ],\n      [\n        \"▁Congratulations\",\n        -12.048881530761719\n      ],\n      [\n        \"▁religi\",\n        -12.048918724060059\n      ],\n      [\n        \"sätze\",\n        -12.04897689819336\n      ],\n      [\n        \"▁Eat\",\n        -12.049172401428223\n      ],\n      [\n        \"▁dense\",\n        -12.049442291259766\n      ],\n      [\n        \"▁slice\",\n        -12.049447059631348\n      ],\n      [\n        \"▁mulți\",\n        -12.049463272094727\n      ],\n      [\n        \"▁vorbe\",\n        -12.049517631530762\n      ],\n      [\n        \"▁terminate\",\n        -12.049779891967773\n      ],\n      [\n        \"worm\",\n        -12.049880981445312\n      ],\n      [\n        \"ignon\",\n        -12.0499267578125\n      ],\n      [\n        \"▁Howard\",\n        -12.049992561340332\n      ],\n      [\n        \"▁toddler\",\n        -12.050017356872559\n      ],\n      [\n        \"▁waters\",\n        -12.050033569335938\n      ],\n      [\n        \"▁graduates\",\n        -12.0501708984375\n      ],\n      [\n        \"▁fundraising\",\n        -12.050298690795898\n      ],\n      [\n        \"06.\",\n        -12.05031967163086\n      ],\n      [\n        \"▁scent\",\n        -12.050346374511719\n      ],\n      [\n        \"▁CPU\",\n        -12.050406455993652\n      ],\n      [\n        \"▁Kid\",\n        -12.05045223236084\n      ],\n      [\n        \"▁Years\",\n        -12.050460815429688\n      ],\n      [\n        \"▁Oktober\",\n        -12.05063533782959\n      ],\n      [\n        \"filled\",\n        -12.050726890563965\n      ],\n      [\n        \"▁Laser\",\n        -12.05079460144043\n      ],\n      [\n        \"▁tut\",\n        -12.051032066345215\n      ],\n      [\n        \"ively\",\n        -12.051101684570312\n      ],\n      [\n        \"▁WiFi\",\n        -12.051161766052246\n      ],\n      [\n        \"standen\",\n        -12.051176071166992\n      ],\n      [\n        \"▁publié\",\n        -12.051243782043457\n      ],\n      [\n        \"▁explaining\",\n        -12.051279067993164\n      ],\n      [\n        \"trieb\",\n        -12.051288604736328\n      ],\n      [\n        \"▁Rapid\",\n        -12.0513334274292\n      ],\n      [\n        \"▁unterstützt\",\n        -12.051352500915527\n      ],\n      [\n        \"▁Sonnen\",\n        -12.051401138305664\n      ],\n      [\n        \"▁lenses\",\n        -12.05141544342041\n      ],\n      [\n        \"▁pressing\",\n        -12.051477432250977\n      ],\n      [\n        \"▁respected\",\n        -12.051657676696777\n      ],\n      [\n        \"adapted\",\n        -12.051706314086914\n      ],\n      [\n        \"Don\",\n        -12.051726341247559\n      ],\n      [\n        \"▁mun\",\n        -12.051733016967773\n      ],\n      [\n        \"MAR\",\n        -12.05180835723877\n      ],\n      [\n        \"▁seam\",\n        -12.051852226257324\n      ],\n      [\n        \"chev\",\n        -12.052140235900879\n      ],\n      [\n        \"▁Sozial\",\n        -12.052424430847168\n      ],\n      [\n        \"▁Arabia\",\n        -12.052485466003418\n      ],\n      [\n        \"▁equation\",\n        -12.05257511138916\n      ],\n      [\n        \"▁elevi\",\n        -12.052780151367188\n      ],\n      [\n        \"▁piata\",\n        -12.052868843078613\n      ],\n      [\n        \"JA\",\n        -12.052873611450195\n      ],\n      [\n        \"▁wholesale\",\n        -12.052887916564941\n      ],\n      [\n        \"▁faithful\",\n        -12.05296516418457\n      ],\n      [\n        \"legal\",\n        -12.053092002868652\n      ],\n      [\n        \"▁Brexit\",\n        -12.053095817565918\n      ],\n      [\n        \"vention\",\n        -12.053120613098145\n      ],\n      [\n        \"▁adhere\",\n        -12.053221702575684\n      ],\n      [\n        \"▁Associate\",\n        -12.053257942199707\n      ],\n      [\n        \"▁decorations\",\n        -12.053272247314453\n      ],\n      [\n        \"▁crois\",\n        -12.053359985351562\n      ],\n      [\n        \"buck\",\n        -12.053370475769043\n      ],\n      [\n        \"▁smartphones\",\n        -12.053421020507812\n      ],\n      [\n        \"Regardless\",\n        -12.053427696228027\n      ],\n      [\n        \"center\",\n        -12.053434371948242\n      ],\n      [\n        \"eiß\",\n        -12.053481101989746\n      ],\n      [\n        \"▁emotion\",\n        -12.053584098815918\n      ],\n      [\n        \"▁Gespräch\",\n        -12.053797721862793\n      ],\n      [\n        \"▁Avi\",\n        -12.053963661193848\n      ],\n      [\n        \"▁loft\",\n        -12.054059982299805\n      ],\n      [\n        \"▁Wissen\",\n        -12.054391860961914\n      ],\n      [\n        \"▁orchestra\",\n        -12.05439567565918\n      ],\n      [\n        \"▁gehören\",\n        -12.054421424865723\n      ],\n      [\n        \"▁Reich\",\n        -12.054532051086426\n      ],\n      [\n        \"▁abandoned\",\n        -12.054548263549805\n      ],\n      [\n        \"▁Lanka\",\n        -12.054586410522461\n      ],\n      [\n        \"pala\",\n        -12.054832458496094\n      ],\n      [\n        \"▁Stell\",\n        -12.054838180541992\n      ],\n      [\n        \"logged\",\n        -12.054924964904785\n      ],\n      [\n        \"terie\",\n        -12.054935455322266\n      ],\n      [\n        \"▁educa\",\n        -12.054954528808594\n      ],\n      [\n        \"1).\",\n        -12.055097579956055\n      ],\n      [\n        \"▁disponibil\",\n        -12.055119514465332\n      ],\n      [\n        \"IND\",\n        -12.055197715759277\n      ],\n      [\n        \"▁Pont\",\n        -12.055288314819336\n      ],\n      [\n        \"▁téléphone\",\n        -12.055398941040039\n      ],\n      [\n        \"▁rope\",\n        -12.055595397949219\n      ],\n      [\n        \"ève\",\n        -12.055622100830078\n      ],\n      [\n        \"▁Trainer\",\n        -12.056062698364258\n      ],\n      [\n        \"▁présence\",\n        -12.0560941696167\n      ],\n      [\n        \"▁Oscar\",\n        -12.056121826171875\n      ],\n      [\n        \"▁VR\",\n        -12.056342124938965\n      ],\n      [\n        \"▁Besucher\",\n        -12.056357383728027\n      ],\n      [\n        \"▁disponibles\",\n        -12.056447982788086\n      ],\n      [\n        \"▁gelten\",\n        -12.056604385375977\n      ],\n      [\n        \"▁ports\",\n        -12.056645393371582\n      ],\n      [\n        \"Invest\",\n        -12.056693077087402\n      ],\n      [\n        \"ésormais\",\n        -12.056795120239258\n      ],\n      [\n        \"schauen\",\n        -12.056880950927734\n      ],\n      [\n        \"▁Command\",\n        -12.056958198547363\n      ],\n      [\n        \"▁alternate\",\n        -12.05709171295166\n      ],\n      [\n        \"citation\",\n        -12.05713939666748\n      ],\n      [\n        \"évolution\",\n        -12.05714225769043\n      ],\n      [\n        \"▁Maine\",\n        -12.057145118713379\n      ],\n      [\n        \"pflege\",\n        -12.057174682617188\n      ],\n      [\n        \"2011\",\n        -12.057343482971191\n      ],\n      [\n        \"▁Ground\",\n        -12.057364463806152\n      ],\n      [\n        \"▁ghost\",\n        -12.057418823242188\n      ],\n      [\n        \"lebt\",\n        -12.057530403137207\n      ],\n      [\n        \"▁scenarios\",\n        -12.057595252990723\n      ],\n      [\n        \"▁mall\",\n        -12.057634353637695\n      ],\n      [\n        \"▁Kings\",\n        -12.057653427124023\n      ],\n      [\n        \"▁15%\",\n        -12.057848930358887\n      ],\n      [\n        \"▁Paint\",\n        -12.057848930358887\n      ],\n      [\n        \"FD\",\n        -12.057849884033203\n      ],\n      [\n        \"ugg\",\n        -12.058011054992676\n      ],\n      [\n        \"▁Leon\",\n        -12.058023452758789\n      ],\n      [\n        \"▁grows\",\n        -12.058135032653809\n      ],\n      [\n        \"▁pharmacy\",\n        -12.058384895324707\n      ],\n      [\n        \"▁situat\",\n        -12.0584135055542\n      ],\n      [\n        \"20,000\",\n        -12.05855941772461\n      ],\n      [\n        \"▁10,000\",\n        -12.058760643005371\n      ],\n      [\n        \"▁membre\",\n        -12.058771133422852\n      ],\n      [\n        \"▁facilement\",\n        -12.058806419372559\n      ],\n      [\n        \"▁Analytics\",\n        -12.058915138244629\n      ],\n      [\n        \"▁Marvel\",\n        -12.058930397033691\n      ],\n      [\n        \"▁survived\",\n        -12.059097290039062\n      ],\n      [\n        \"▁conviction\",\n        -12.059124946594238\n      ],\n      [\n        \"▁Produktion\",\n        -12.059260368347168\n      ],\n      [\n        \"▁professionally\",\n        -12.059293746948242\n      ],\n      [\n        \"▁contributor\",\n        -12.059486389160156\n      ],\n      [\n        \"▁Kurs\",\n        -12.059503555297852\n      ],\n      [\n        \"▁humor\",\n        -12.059549331665039\n      ],\n      [\n        \"▁cinci\",\n        -12.059609413146973\n      ],\n      [\n        \"▁Different\",\n        -12.059670448303223\n      ],\n      [\n        \"▁Verarbeitung\",\n        -12.059800148010254\n      ],\n      [\n        \"▁inexpensive\",\n        -12.059800148010254\n      ],\n      [\n        \"▁sortie\",\n        -12.05980110168457\n      ],\n      [\n        \"▁thankful\",\n        -12.059951782226562\n      ],\n      [\n        \"▁vacances\",\n        -12.059978485107422\n      ],\n      [\n        \"▁vergangen\",\n        -12.059979438781738\n      ],\n      [\n        \"▁wings\",\n        -12.05998420715332\n      ],\n      [\n        \"▁nano\",\n        -12.06003475189209\n      ],\n      [\n        \"▁touches\",\n        -12.060088157653809\n      ],\n      [\n        \"▁Notice\",\n        -12.060348510742188\n      ],\n      [\n        \"▁reprezinta\",\n        -12.060466766357422\n      ],\n      [\n        \"▁rewarding\",\n        -12.060555458068848\n      ],\n      [\n        \"▁Kurz\",\n        -12.060580253601074\n      ],\n      [\n        \"▁mega\",\n        -12.060611724853516\n      ],\n      [\n        \"▁secrets\",\n        -12.060646057128906\n      ],\n      [\n        \"▁vorher\",\n        -12.060667037963867\n      ],\n      [\n        \"▁crescut\",\n        -12.06074333190918\n      ],\n      [\n        \"▁coordination\",\n        -12.060754776000977\n      ],\n      [\n        \"▁dissertation\",\n        -12.060863494873047\n      ],\n      [\n        \"▁header\",\n        -12.060873985290527\n      ],\n      [\n        \"existent\",\n        -12.061070442199707\n      ],\n      [\n        \"thal\",\n        -12.061185836791992\n      ],\n      [\n        \"▁translate\",\n        -12.061214447021484\n      ],\n      [\n        \"vertrag\",\n        -12.06124210357666\n      ],\n      [\n        \"GU\",\n        -12.06126594543457\n      ],\n      [\n        \"▁Arthur\",\n        -12.061315536499023\n      ],\n      [\n        \"wahl\",\n        -12.061534881591797\n      ],\n      [\n        \"▁octobre\",\n        -12.061573028564453\n      ],\n      [\n        \"▁bother\",\n        -12.06157398223877\n      ],\n      [\n        \"▁pencil\",\n        -12.061580657958984\n      ],\n      [\n        \"▁Dyna\",\n        -12.061604499816895\n      ],\n      [\n        \"▁complimentary\",\n        -12.061651229858398\n      ],\n      [\n        \"écoute\",\n        -12.061676979064941\n      ],\n      [\n        \"PB\",\n        -12.061722755432129\n      ],\n      [\n        \"▁independently\",\n        -12.061759948730469\n      ],\n      [\n        \"▁targeting\",\n        -12.061840057373047\n      ],\n      [\n        \"fought\",\n        -12.061944961547852\n      ],\n      [\n        \"mental\",\n        -12.062112808227539\n      ],\n      [\n        \"▁Veranstaltung\",\n        -12.062300682067871\n      ],\n      [\n        \"▁tatsächlich\",\n        -12.062314987182617\n      ],\n      [\n        \"▁Features\",\n        -12.0625\n      ],\n      [\n        \"▁1920\",\n        -12.062554359436035\n      ],\n      [\n        \"▁Domain\",\n        -12.062885284423828\n      ],\n      [\n        \"▁rally\",\n        -12.062901496887207\n      ],\n      [\n        \"▁iunie\",\n        -12.063036918640137\n      ],\n      [\n        \"▁fabrics\",\n        -12.063070297241211\n      ],\n      [\n        \"▁mint\",\n        -12.063331604003906\n      ],\n      [\n        \"▁antioxidant\",\n        -12.063347816467285\n      ],\n      [\n        \"hut\",\n        -12.063432693481445\n      ],\n      [\n        \"EPA\",\n        -12.063496589660645\n      ],\n      [\n        \"▁rigid\",\n        -12.063498497009277\n      ],\n      [\n        \"▁evit\",\n        -12.063549995422363\n      ],\n      [\n        \"▁personnage\",\n        -12.063977241516113\n      ],\n      [\n        \"▁garanti\",\n        -12.0640287399292\n      ],\n      [\n        \"▁Hä\",\n        -12.064042091369629\n      ],\n      [\n        \"▁Days\",\n        -12.064048767089844\n      ],\n      [\n        \"boarding\",\n        -12.064050674438477\n      ],\n      [\n        \"jemand\",\n        -12.064166069030762\n      ],\n      [\n        \"▁Pos\",\n        -12.064262390136719\n      ],\n      [\n        \"▁wool\",\n        -12.064288139343262\n      ],\n      [\n        \"▁boom\",\n        -12.064349174499512\n      ],\n      [\n        \"▁wichtige\",\n        -12.06447982788086\n      ],\n      [\n        \"▁emerged\",\n        -12.064517974853516\n      ],\n      [\n        \"▁smoothly\",\n        -12.064802169799805\n      ],\n      [\n        \"▁Interview\",\n        -12.064942359924316\n      ],\n      [\n        \"gemäß\",\n        -12.06505012512207\n      ],\n      [\n        \"▁suivi\",\n        -12.065064430236816\n      ],\n      [\n        \"▁missions\",\n        -12.065129280090332\n      ],\n      [\n        \"▁Kreis\",\n        -12.065328598022461\n      ],\n      [\n        \"century\",\n        -12.065348625183105\n      ],\n      [\n        \"▁tuned\",\n        -12.065370559692383\n      ],\n      [\n        \"isieren\",\n        -12.065407752990723\n      ],\n      [\n        \"▁Branch\",\n        -12.065427780151367\n      ],\n      [\n        \"▁Russell\",\n        -12.065483093261719\n      ],\n      [\n        \"▁**\",\n        -12.065519332885742\n      ],\n      [\n        \"▁Lehr\",\n        -12.065617561340332\n      ],\n      [\n        \"▁perspectives\",\n        -12.065690040588379\n      ],\n      [\n        \"▁handed\",\n        -12.06570816040039\n      ],\n      [\n        \"▁apporte\",\n        -12.065743446350098\n      ],\n      [\n        \"unta\",\n        -12.065959930419922\n      ],\n      [\n        \"▁contemplat\",\n        -12.066255569458008\n      ],\n      [\n        \"riel\",\n        -12.06633472442627\n      ],\n      [\n        \"▁freely\",\n        -12.066341400146484\n      ],\n      [\n        \"▁loyal\",\n        -12.066451072692871\n      ],\n      [\n        \"▁evolved\",\n        -12.066518783569336\n      ],\n      [\n        \"▁Cafe\",\n        -12.066548347473145\n      ],\n      [\n        \"▁assignments\",\n        -12.066598892211914\n      ],\n      [\n        \"▁Cream\",\n        -12.066718101501465\n      ],\n      [\n        \"▁Build\",\n        -12.066731452941895\n      ],\n      [\n        \"▁exams\",\n        -12.066746711730957\n      ],\n      [\n        \"▁graduation\",\n        -12.066765785217285\n      ],\n      [\n        \"▁Dining\",\n        -12.066773414611816\n      ],\n      [\n        \"inne\",\n        -12.06684398651123\n      ],\n      [\n        \"▁propriu\",\n        -12.067055702209473\n      ],\n      [\n        \"▁accordingly\",\n        -12.067241668701172\n      ],\n      [\n        \"▁seniors\",\n        -12.067484855651855\n      ],\n      [\n        \"▁sisters\",\n        -12.067505836486816\n      ],\n      [\n        \"formerly\",\n        -12.067658424377441\n      ],\n      [\n        \"▁fleur\",\n        -12.067702293395996\n      ],\n      [\n        \"▁alten\",\n        -12.067802429199219\n      ],\n      [\n        \"▁Gefühl\",\n        -12.06797981262207\n      ],\n      [\n        \"▁freeze\",\n        -12.068222045898438\n      ],\n      [\n        \"▁structured\",\n        -12.068312644958496\n      ],\n      [\n        \"▁reserved\",\n        -12.068367004394531\n      ],\n      [\n        \"stellt\",\n        -12.068638801574707\n      ],\n      [\n        \"▁foto\",\n        -12.068668365478516\n      ],\n      [\n        \"linger\",\n        -12.06871223449707\n      ],\n      [\n        \"▁profiter\",\n        -12.068737030029297\n      ],\n      [\n        \"▁trup\",\n        -12.068862915039062\n      ],\n      [\n        \"▁Hunter\",\n        -12.068974494934082\n      ],\n      [\n        \"▁widespread\",\n        -12.069050788879395\n      ],\n      [\n        \"entretien\",\n        -12.069242477416992\n      ],\n      [\n        \"▁Truck\",\n        -12.06958293914795\n      ],\n      [\n        \"Can\",\n        -12.069656372070312\n      ],\n      [\n        \"péri\",\n        -12.06976318359375\n      ],\n      [\n        \"▁>>\",\n        -12.069926261901855\n      ],\n      [\n        \"▁trains\",\n        -12.070141792297363\n      ],\n      [\n        \"▁faca\",\n        -12.070149421691895\n      ],\n      [\n        \"▁Patienten\",\n        -12.070170402526855\n      ],\n      [\n        \"▁scor\",\n        -12.070361137390137\n      ],\n      [\n        \"▁perceived\",\n        -12.070384979248047\n      ],\n      [\n        \"setzung\",\n        -12.070393562316895\n      ],\n      [\n        \"▁Robin\",\n        -12.070558547973633\n      ],\n      [\n        \"▁geboren\",\n        -12.07060718536377\n      ],\n      [\n        \"lons\",\n        -12.070687294006348\n      ],\n      [\n        \"inţa\",\n        -12.070836067199707\n      ],\n      [\n        \"glob\",\n        -12.070887565612793\n      ],\n      [\n        \"subsequently\",\n        -12.07111930847168\n      ],\n      [\n        \"▁vet\",\n        -12.071170806884766\n      ],\n      [\n        \"▁Holland\",\n        -12.071328163146973\n      ],\n      [\n        \"▁Clinical\",\n        -12.071370124816895\n      ],\n      [\n        \"▁uncertainty\",\n        -12.071381568908691\n      ],\n      [\n        \"hohen\",\n        -12.071386337280273\n      ],\n      [\n        \"uza\",\n        -12.071431159973145\n      ],\n      [\n        \"▁kleiner\",\n        -12.071518898010254\n      ],\n      [\n        \"▁substances\",\n        -12.07155704498291\n      ],\n      [\n        \"ados\",\n        -12.071627616882324\n      ],\n      [\n        \"wheel\",\n        -12.07178020477295\n      ],\n      [\n        \"▁cone\",\n        -12.071990966796875\n      ],\n      [\n        \"▁castig\",\n        -12.072218894958496\n      ],\n      [\n        \"▁Conditions\",\n        -12.072242736816406\n      ],\n      [\n        \"minus\",\n        -12.072643280029297\n      ],\n      [\n        \"▁permits\",\n        -12.07265853881836\n      ],\n      [\n        \"fond\",\n        -12.072784423828125\n      ],\n      [\n        \"▁reactions\",\n        -12.07278823852539\n      ],\n      [\n        \"▁Mario\",\n        -12.072819709777832\n      ],\n      [\n        \"▁materiale\",\n        -12.07291030883789\n      ],\n      [\n        \"AH\",\n        -12.072924613952637\n      ],\n      [\n        \"▁juillet\",\n        -12.073172569274902\n      ],\n      [\n        \"▁juridic\",\n        -12.073182106018066\n      ],\n      [\n        \"▁dropping\",\n        -12.073200225830078\n      ],\n      [\n        \"expérience\",\n        -12.073225021362305\n      ],\n      [\n        \"▁depot\",\n        -12.073345184326172\n      ],\n      [\n        \"▁plea\",\n        -12.073490142822266\n      ],\n      [\n        \"dezvoltarea\",\n        -12.073512077331543\n      ],\n      [\n        \"▁Independent\",\n        -12.07363224029541\n      ],\n      [\n        \"▁Homes\",\n        -12.073674201965332\n      ],\n      [\n        \"▁crust\",\n        -12.073808670043945\n      ],\n      [\n        \"▁pillow\",\n        -12.073899269104004\n      ],\n      [\n        \"kreis\",\n        -12.073920249938965\n      ],\n      [\n        \"▁boiler\",\n        -12.073928833007812\n      ],\n      [\n        \"latin\",\n        -12.073978424072266\n      ],\n      [\n        \"▁stet\",\n        -12.074131965637207\n      ],\n      [\n        \"GH\",\n        -12.074143409729004\n      ],\n      [\n        \"▁absent\",\n        -12.074334144592285\n      ],\n      [\n        \"▁Directors\",\n        -12.074501037597656\n      ],\n      [\n        \"zwischen\",\n        -12.07462215423584\n      ],\n      [\n        \"▁comprendre\",\n        -12.07465648651123\n      ],\n      [\n        \"▁25,\",\n        -12.074832916259766\n      ],\n      [\n        \"▁pharmaceutical\",\n        -12.075145721435547\n      ],\n      [\n        \"▁placeholder\",\n        -12.075174331665039\n      ],\n      [\n        \"KI\",\n        -12.075176239013672\n      ],\n      [\n        \"▁români\",\n        -12.07540225982666\n      ],\n      [\n        \"▁Dollar\",\n        -12.075509071350098\n      ],\n      [\n        \"▁Operations\",\n        -12.075525283813477\n      ],\n      [\n        \"▁Dublin\",\n        -12.075550079345703\n      ],\n      [\n        \"▁drawings\",\n        -12.0756196975708\n      ],\n      [\n        \"▁respir\",\n        -12.075769424438477\n      ],\n      [\n        \"▁haul\",\n        -12.0758056640625\n      ],\n      [\n        \"Obviously\",\n        -12.075864791870117\n      ],\n      [\n        \"▁Beat\",\n        -12.075864791870117\n      ],\n      [\n        \"▁jeans\",\n        -12.07590103149414\n      ],\n      [\n        \"▁Masters\",\n        -12.075927734375\n      ],\n      [\n        \"▁bits\",\n        -12.076213836669922\n      ],\n      [\n        \"poți\",\n        -12.076226234436035\n      ],\n      [\n        \"▁asigur\",\n        -12.076228141784668\n      ],\n      [\n        \"▁intampla\",\n        -12.076228141784668\n      ],\n      [\n        \"▁marc\",\n        -12.076282501220703\n      ],\n      [\n        \"......\",\n        -12.076404571533203\n      ],\n      [\n        \"▁districts\",\n        -12.076437950134277\n      ],\n      [\n        \"cru\",\n        -12.076457023620605\n      ],\n      [\n        \"nav\",\n        -12.076608657836914\n      ],\n      [\n        \"huile\",\n        -12.076644897460938\n      ],\n      [\n        \"▁limitation\",\n        -12.076647758483887\n      ],\n      [\n        \"boat\",\n        -12.076712608337402\n      ],\n      [\n        \"IRE\",\n        -12.076720237731934\n      ],\n      [\n        \"Unis\",\n        -12.07675838470459\n      ],\n      [\n        \"dated\",\n        -12.0769624710083\n      ],\n      [\n        \"▁consultants\",\n        -12.07699203491211\n      ],\n      [\n        \"▁Josh\",\n        -12.077007293701172\n      ],\n      [\n        \"tanz\",\n        -12.077184677124023\n      ],\n      [\n        \"launching\",\n        -12.0772066116333\n      ],\n      [\n        \"▁browsing\",\n        -12.077310562133789\n      ],\n      [\n        \"▁incerc\",\n        -12.077314376831055\n      ],\n      [\n        \"▁27,\",\n        -12.077375411987305\n      ],\n      [\n        \"не\",\n        -12.077398300170898\n      ],\n      [\n        \"wig\",\n        -12.077415466308594\n      ],\n      [\n        \"▁spar\",\n        -12.077458381652832\n      ],\n      [\n        \"▁token\",\n        -12.077547073364258\n      ],\n      [\n        \"▁09\",\n        -12.077548027038574\n      ],\n      [\n        \"spa\",\n        -12.07766056060791\n      ],\n      [\n        \"ometer\",\n        -12.07772159576416\n      ],\n      [\n        \"▁riders\",\n        -12.077869415283203\n      ],\n      [\n        \"▁Drop\",\n        -12.077898979187012\n      ],\n      [\n        \"RN\",\n        -12.078103065490723\n      ],\n      [\n        \"▁pairs\",\n        -12.07815933227539\n      ],\n      [\n        \"▁psychology\",\n        -12.078420639038086\n      ],\n      [\n        \"▁Douglas\",\n        -12.078437805175781\n      ],\n      [\n        \"▁verwenden\",\n        -12.078516960144043\n      ],\n      [\n        \"▁(9\",\n        -12.07857894897461\n      ],\n      [\n        \"▁Rental\",\n        -12.078728675842285\n      ],\n      [\n        \"▁délai\",\n        -12.078847885131836\n      ],\n      [\n        \"▁sooner\",\n        -12.078882217407227\n      ],\n      [\n        \"▁bankruptcy\",\n        -12.079109191894531\n      ],\n      [\n        \"04.\",\n        -12.079110145568848\n      ],\n      [\n        \"abend\",\n        -12.079194068908691\n      ],\n      [\n        \"çon\",\n        -12.079237937927246\n      ],\n      [\n        \"▁Ple\",\n        -12.079243659973145\n      ],\n      [\n        \"fug\",\n        -12.079337120056152\n      ],\n      [\n        \"▁Wohnung\",\n        -12.079410552978516\n      ],\n      [\n        \"▁Preise\",\n        -12.079424858093262\n      ],\n      [\n        \"▁Kay\",\n        -12.079427719116211\n      ],\n      [\n        \"▁notify\",\n        -12.079474449157715\n      ],\n      [\n        \"▁Brain\",\n        -12.079534530639648\n      ],\n      [\n        \"▁optical\",\n        -12.079580307006836\n      ],\n      [\n        \"▁modifications\",\n        -12.079727172851562\n      ],\n      [\n        \"▁repos\",\n        -12.07999324798584\n      ],\n      [\n        \"▁worksheet\",\n        -12.0800142288208\n      ],\n      [\n        \"continu\",\n        -12.08005428314209\n      ],\n      [\n        \"▁assumed\",\n        -12.08059024810791\n      ],\n      [\n        \"varying\",\n        -12.080626487731934\n      ],\n      [\n        \"feier\",\n        -12.080643653869629\n      ],\n      [\n        \"▁Freedom\",\n        -12.080717086791992\n      ],\n      [\n        \"▁Inhalte\",\n        -12.080740928649902\n      ],\n      [\n        \"▁observations\",\n        -12.080755233764648\n      ],\n      [\n        \"▁Gruppe\",\n        -12.080791473388672\n      ],\n      [\n        \"▁Cyber\",\n        -12.080883979797363\n      ],\n      [\n        \"hort\",\n        -12.080889701843262\n      ],\n      [\n        \"▁langue\",\n        -12.080915451049805\n      ],\n      [\n        \"führen\",\n        -12.08110523223877\n      ],\n      [\n        \"ganze\",\n        -12.081254005432129\n      ],\n      [\n        \"▁forte\",\n        -12.081327438354492\n      ],\n      [\n        \"▁Stefan\",\n        -12.081376075744629\n      ],\n      [\n        \"▁Jetzt\",\n        -12.081463813781738\n      ],\n      [\n        \"mehr\",\n        -12.081489562988281\n      ],\n      [\n        \"trip\",\n        -12.081549644470215\n      ],\n      [\n        \"▁poem\",\n        -12.081583976745605\n      ],\n      [\n        \"▁practitioners\",\n        -12.081720352172852\n      ],\n      [\n        \"▁connector\",\n        -12.08177661895752\n      ],\n      [\n        \"ECT\",\n        -12.081794738769531\n      ],\n      [\n        \"▁inseamna\",\n        -12.081820487976074\n      ],\n      [\n        \"addressing\",\n        -12.081867218017578\n      ],\n      [\n        \"▁beliebt\",\n        -12.081908226013184\n      ],\n      [\n        \"▁Mama\",\n        -12.082002639770508\n      ],\n      [\n        \"▁fade\",\n        -12.08204460144043\n      ],\n      [\n        \"messen\",\n        -12.08205509185791\n      ],\n      [\n        \"▁Visa\",\n        -12.082080841064453\n      ],\n      [\n        \"▁Meta\",\n        -12.082154273986816\n      ],\n      [\n        \"lene\",\n        -12.082188606262207\n      ],\n      [\n        \"▁remembered\",\n        -12.082334518432617\n      ],\n      [\n        \"/3\",\n        -12.082337379455566\n      ],\n      [\n        \"apte\",\n        -12.082347869873047\n      ],\n      [\n        \"▁uncomfortable\",\n        -12.082364082336426\n      ],\n      [\n        \"▁romance\",\n        -12.08253002166748\n      ],\n      [\n        \"▁réalis\",\n        -12.082601547241211\n      ],\n      [\n        \"▁Vincent\",\n        -12.082706451416016\n      ],\n      [\n        \"▁ABC\",\n        -12.08275318145752\n      ],\n      [\n        \"▁handicap\",\n        -12.082756042480469\n      ],\n      [\n        \"▁Shin\",\n        -12.082801818847656\n      ],\n      [\n        \"▁Hunde\",\n        -12.082847595214844\n      ],\n      [\n        \"▁Ach\",\n        -12.083131790161133\n      ],\n      [\n        \"▁Questions\",\n        -12.083136558532715\n      ],\n      [\n        \"▁particles\",\n        -12.083226203918457\n      ],\n      [\n        \"usch\",\n        -12.083230018615723\n      ],\n      [\n        \"▁SUV\",\n        -12.083279609680176\n      ],\n      [\n        \"▁Tous\",\n        -12.083301544189453\n      ],\n      [\n        \"▁empower\",\n        -12.08336067199707\n      ],\n      [\n        \"▁Yi\",\n        -12.083446502685547\n      ],\n      [\n        \"▁LinkedIn\",\n        -12.083453178405762\n      ],\n      [\n        \"▁Profile\",\n        -12.083507537841797\n      ],\n      [\n        \"▁surround\",\n        -12.083553314208984\n      ],\n      [\n        \"▁wh\",\n        -12.083560943603516\n      ],\n      [\n        \"▁Weiter\",\n        -12.083577156066895\n      ],\n      [\n        \"▁Weight\",\n        -12.083672523498535\n      ],\n      [\n        \"▁creatures\",\n        -12.083807945251465\n      ],\n      [\n        \"Especially\",\n        -12.08381462097168\n      ],\n      [\n        \"▁repede\",\n        -12.08383560180664\n      ],\n      [\n        \"▁albums\",\n        -12.083885192871094\n      ],\n      [\n        \"▁compatibil\",\n        -12.0839204788208\n      ],\n      [\n        \"▁Interesse\",\n        -12.083929061889648\n      ],\n      [\n        \"abili\",\n        -12.084062576293945\n      ],\n      [\n        \"▁roast\",\n        -12.084310531616211\n      ],\n      [\n        \"▁unii\",\n        -12.084310531616211\n      ],\n      [\n        \"▁Glad\",\n        -12.084421157836914\n      ],\n      [\n        \"▁enthusiasm\",\n        -12.084539413452148\n      ],\n      [\n        \"▁whisk\",\n        -12.084547996520996\n      ],\n      [\n        \"▁freezer\",\n        -12.084712982177734\n      ],\n      [\n        \"▁stolen\",\n        -12.084715843200684\n      ],\n      [\n        \"▁neighbour\",\n        -12.084883689880371\n      ],\n      [\n        \"▁sake\",\n        -12.084967613220215\n      ],\n      [\n        \"▁Effect\",\n        -12.0850191116333\n      ],\n      [\n        \"▁fighter\",\n        -12.085044860839844\n      ],\n      [\n        \"▁tranquil\",\n        -12.085084915161133\n      ],\n      [\n        \"▁organizer\",\n        -12.085199356079102\n      ],\n      [\n        \"pixel\",\n        -12.085306167602539\n      ],\n      [\n        \"▁Guest\",\n        -12.085338592529297\n      ],\n      [\n        \"▁Philipp\",\n        -12.085369110107422\n      ],\n      [\n        \"kunft\",\n        -12.085382461547852\n      ],\n      [\n        \"▁Meer\",\n        -12.085409164428711\n      ],\n      [\n        \"▁inviting\",\n        -12.085432052612305\n      ],\n      [\n        \"gänge\",\n        -12.085450172424316\n      ],\n      [\n        \"▁Position\",\n        -12.085627555847168\n      ],\n      [\n        \"giving\",\n        -12.085693359375\n      ],\n      [\n        \"▁marble\",\n        -12.085807800292969\n      ],\n      [\n        \"▁neg\",\n        -12.085813522338867\n      ],\n      [\n        \"▁Haar\",\n        -12.085914611816406\n      ],\n      [\n        \"Ein\",\n        -12.086039543151855\n      ],\n      [\n        \"▁buses\",\n        -12.086187362670898\n      ],\n      [\n        \"▁Lodge\",\n        -12.086188316345215\n      ],\n      [\n        \"soare\",\n        -12.086319923400879\n      ],\n      [\n        \"▁Barn\",\n        -12.086409568786621\n      ],\n      [\n        \"▁captain\",\n        -12.086527824401855\n      ],\n      [\n        \"▁Fix\",\n        -12.08657169342041\n      ],\n      [\n        \"ulate\",\n        -12.086629867553711\n      ],\n      [\n        \"ență\",\n        -12.086709022521973\n      ],\n      [\n        \"▁finances\",\n        -12.086770057678223\n      ],\n      [\n        \"▁VIP\",\n        -12.086800575256348\n      ],\n      [\n        \"▁Adams\",\n        -12.086801528930664\n      ],\n      [\n        \"▁spécialisé\",\n        -12.086960792541504\n      ],\n      [\n        \"▁fortunate\",\n        -12.087236404418945\n      ],\n      [\n        \"ility\",\n        -12.087345123291016\n      ],\n      [\n        \"▁democracy\",\n        -12.08749771118164\n      ],\n      [\n        \"shu\",\n        -12.087580680847168\n      ],\n      [\n        \"▁consiste\",\n        -12.087624549865723\n      ],\n      [\n        \"▁tort\",\n        -12.087692260742188\n      ],\n      [\n        \"▁branding\",\n        -12.087793350219727\n      ],\n      [\n        \"▁porch\",\n        -12.08780288696289\n      ],\n      [\n        \"UNI\",\n        -12.087867736816406\n      ],\n      [\n        \"▁placut\",\n        -12.087915420532227\n      ],\n      [\n        \"▁coupled\",\n        -12.088058471679688\n      ],\n      [\n        \"▁ministre\",\n        -12.088187217712402\n      ],\n      [\n        \"▁minerals\",\n        -12.088335037231445\n      ],\n      [\n        \"▁safer\",\n        -12.088335990905762\n      ],\n      [\n        \"▁outlets\",\n        -12.088438034057617\n      ],\n      [\n        \"▁caution\",\n        -12.08864688873291\n      ],\n      [\n        \"▁lightly\",\n        -12.0886869430542\n      ],\n      [\n        \"▁utilizator\",\n        -12.088700294494629\n      ],\n      [\n        \"▁Pala\",\n        -12.088959693908691\n      ],\n      [\n        \"▁doll\",\n        -12.088961601257324\n      ],\n      [\n        \"(1)\",\n        -12.089065551757812\n      ],\n      [\n        \"chol\",\n        -12.089120864868164\n      ],\n      [\n        \"▁Left\",\n        -12.08919620513916\n      ],\n      [\n        \"▁roulant\",\n        -12.089277267456055\n      ],\n      [\n        \"▁propune\",\n        -12.089301109313965\n      ],\n      [\n        \"▁Cred\",\n        -12.089339256286621\n      ],\n      [\n        \"▁negotiations\",\n        -12.089362144470215\n      ],\n      [\n        \"amba\",\n        -12.089393615722656\n      ],\n      [\n        \"▁grasp\",\n        -12.089420318603516\n      ],\n      [\n        \"▁Amsterdam\",\n        -12.089451789855957\n      ],\n      [\n        \"▁Zweck\",\n        -12.08945369720459\n      ],\n      [\n        \"▁conven\",\n        -12.089563369750977\n      ],\n      [\n        \"▁organizing\",\n        -12.089574813842773\n      ],\n      [\n        \"section\",\n        -12.089618682861328\n      ],\n      [\n        \"▁endeavor\",\n        -12.089634895324707\n      ],\n      [\n        \"▁basics\",\n        -12.089722633361816\n      ],\n      [\n        \"jud\",\n        -12.089874267578125\n      ],\n      [\n        \"▁yarn\",\n        -12.090049743652344\n      ],\n      [\n        \"▁shout\",\n        -12.09009075164795\n      ],\n      [\n        \"fällt\",\n        -12.090285301208496\n      ],\n      [\n        \"▁dragoste\",\n        -12.09054946899414\n      ],\n      [\n        \"▁Rein\",\n        -12.090594291687012\n      ],\n      [\n        \"Cal\",\n        -12.090688705444336\n      ],\n      [\n        \"▁deaths\",\n        -12.090729713439941\n      ],\n      [\n        \"▁24,\",\n        -12.0907564163208\n      ],\n      [\n        \"▁măr\",\n        -12.090773582458496\n      ],\n      [\n        \"server\",\n        -12.090825080871582\n      ],\n      [\n        \"▁explic\",\n        -12.09085464477539\n      ],\n      [\n        \"▁sufer\",\n        -12.090903282165527\n      ],\n      [\n        \"▁lucrări\",\n        -12.091097831726074\n      ],\n      [\n        \"▁Disease\",\n        -12.091126441955566\n      ],\n      [\n        \"▁prescribed\",\n        -12.091194152832031\n      ],\n      [\n        \"prozess\",\n        -12.091285705566406\n      ],\n      [\n        \"▁dessin\",\n        -12.091343879699707\n      ],\n      [\n        \"▁refuge\",\n        -12.091473579406738\n      ],\n      [\n        \"▁cope\",\n        -12.091631889343262\n      ],\n      [\n        \"pole\",\n        -12.09196949005127\n      ],\n      [\n        \"▁vacant\",\n        -12.091984748840332\n      ],\n      [\n        \"▁sezon\",\n        -12.092035293579102\n      ],\n      [\n        \"▁Carbon\",\n        -12.092227935791016\n      ],\n      [\n        \"▁goût\",\n        -12.092233657836914\n      ],\n      [\n        \"Ste\",\n        -12.092320442199707\n      ],\n      [\n        \"▁surroundings\",\n        -12.092754364013672\n      ],\n      [\n        \"definite\",\n        -12.09284496307373\n      ],\n      [\n        \"▁adaptation\",\n        -12.093358993530273\n      ],\n      [\n        \"cteur\",\n        -12.0933837890625\n      ],\n      [\n        \"System\",\n        -12.093442916870117\n      ],\n      [\n        \"▁Burg\",\n        -12.093550682067871\n      ],\n      [\n        \"▁retention\",\n        -12.093579292297363\n      ],\n      [\n        \"examen\",\n        -12.093618392944336\n      ],\n      [\n        \"▁adjustments\",\n        -12.093668937683105\n      ],\n      [\n        \"nies\",\n        -12.094213485717773\n      ],\n      [\n        \"▁RSS\",\n        -12.094215393066406\n      ],\n      [\n        \"▁Umwelt\",\n        -12.094259262084961\n      ],\n      [\n        \"▁strengths\",\n        -12.094326972961426\n      ],\n      [\n        \"loom\",\n        -12.094401359558105\n      ],\n      [\n        \"▁pics\",\n        -12.094404220581055\n      ],\n      [\n        \"phase\",\n        -12.09443187713623\n      ],\n      [\n        \"▁Poland\",\n        -12.094472885131836\n      ],\n      [\n        \"▁practicing\",\n        -12.094558715820312\n      ],\n      [\n        \"monetary\",\n        -12.094756126403809\n      ],\n      [\n        \"▁embodiment\",\n        -12.094756126403809\n      ],\n      [\n        \"▁jocuri\",\n        -12.094846725463867\n      ],\n      [\n        \"▁impreuna\",\n        -12.094939231872559\n      ],\n      [\n        \"▁Lyon\",\n        -12.094985961914062\n      ],\n      [\n        \"keeping\",\n        -12.095157623291016\n      ],\n      [\n        \"▁Starting\",\n        -12.095202445983887\n      ],\n      [\n        \"▁începe\",\n        -12.095357894897461\n      ],\n      [\n        \"▁clay\",\n        -12.095440864562988\n      ],\n      [\n        \"bildung\",\n        -12.095444679260254\n      ],\n      [\n        \"Technologie\",\n        -12.095513343811035\n      ],\n      [\n        \"toxic\",\n        -12.095624923706055\n      ],\n      [\n        \"▁gasit\",\n        -12.095819473266602\n      ],\n      [\n        \"rott\",\n        -12.095870018005371\n      ],\n      [\n        \"brook\",\n        -12.095935821533203\n      ],\n      [\n        \"▁wann\",\n        -12.096029281616211\n      ],\n      [\n        \"▁lined\",\n        -12.09610366821289\n      ],\n      [\n        \"▁Chelsea\",\n        -12.096223831176758\n      ],\n      [\n        \"▁Orlando\",\n        -12.096224784851074\n      ],\n      [\n        \"▁Otherwise\",\n        -12.096267700195312\n      ],\n      [\n        \"▁debit\",\n        -12.096273422241211\n      ],\n      [\n        \"▁entsprechend\",\n        -12.09648323059082\n      ],\n      [\n        \"nism\",\n        -12.09654426574707\n      ],\n      [\n        \"issen\",\n        -12.09664535522461\n      ],\n      [\n        \"▁rendez\",\n        -12.096646308898926\n      ],\n      [\n        \"▁processus\",\n        -12.096745491027832\n      ],\n      [\n        \"mbi\",\n        -12.096890449523926\n      ],\n      [\n        \"▁Graduate\",\n        -12.096960067749023\n      ],\n      [\n        \"▁cozy\",\n        -12.097119331359863\n      ],\n      [\n        \"▁Freunde\",\n        -12.097320556640625\n      ],\n      [\n        \"▁teme\",\n        -12.097389221191406\n      ],\n      [\n        \"▁bias\",\n        -12.097548484802246\n      ],\n      [\n        \"102\",\n        -12.09756851196289\n      ],\n      [\n        \"terrorism\",\n        -12.09770679473877\n      ],\n      [\n        \"threatening\",\n        -12.097756385803223\n      ],\n      [\n        \"ни\",\n        -12.097776412963867\n      ],\n      [\n        \"▁Sonntag\",\n        -12.098062515258789\n      ],\n      [\n        \"▁efect\",\n        -12.098116874694824\n      ],\n      [\n        \"▁prayers\",\n        -12.098134994506836\n      ],\n      [\n        \"▁backpack\",\n        -12.09841537475586\n      ],\n      [\n        \"?)\",\n        -12.098489761352539\n      ],\n      [\n        \"▁searches\",\n        -12.098788261413574\n      ],\n      [\n        \"ouverture\",\n        -12.09880256652832\n      ],\n      [\n        \"▁sustained\",\n        -12.098865509033203\n      ],\n      [\n        \"hawk\",\n        -12.098869323730469\n      ],\n      [\n        \"messe\",\n        -12.098958969116211\n      ],\n      [\n        \"▁prototype\",\n        -12.098989486694336\n      ],\n      [\n        \"▁stră\",\n        -12.09903335571289\n      ],\n      [\n        \"▁Neo\",\n        -12.099040985107422\n      ],\n      [\n        \"▁29,\",\n        -12.099109649658203\n      ],\n      [\n        \"izo\",\n        -12.099306106567383\n      ],\n      [\n        \"▁Anton\",\n        -12.099333763122559\n      ],\n      [\n        \"SIS\",\n        -12.099564552307129\n      ],\n      [\n        \"pendant\",\n        -12.099617958068848\n      ],\n      [\n        \"▁passive\",\n        -12.099813461303711\n      ],\n      [\n        \"▁Aaron\",\n        -12.099824905395508\n      ],\n      [\n        \"▁Karen\",\n        -12.099831581115723\n      ],\n      [\n        \"▁Bildung\",\n        -12.09994888305664\n      ],\n      [\n        \"ario\",\n        -12.099949836730957\n      ],\n      [\n        \"▁regulator\",\n        -12.100006103515625\n      ],\n      [\n        \"gruppe\",\n        -12.100032806396484\n      ],\n      [\n        \"stepped\",\n        -12.100053787231445\n      ],\n      [\n        \"▁interventions\",\n        -12.10014533996582\n      ],\n      [\n        \"▁rounds\",\n        -12.100149154663086\n      ],\n      [\n        \"▁Khan\",\n        -12.10020637512207\n      ],\n      [\n        \"▁railway\",\n        -12.10028076171875\n      ],\n      [\n        \"▁souvenir\",\n        -12.100296974182129\n      ],\n      [\n        \"▁Plans\",\n        -12.100336074829102\n      ],\n      [\n        \"aille\",\n        -12.100372314453125\n      ],\n      [\n        \"▁billing\",\n        -12.100473403930664\n      ],\n      [\n        \"▁Spiele\",\n        -12.100541114807129\n      ],\n      [\n        \"▁supermarket\",\n        -12.100556373596191\n      ],\n      [\n        \"▁flows\",\n        -12.100625991821289\n      ],\n      [\n        \"▁PayPal\",\n        -12.100641250610352\n      ],\n      [\n        \"▁tribe\",\n        -12.10067081451416\n      ],\n      [\n        \"anni\",\n        -12.100780487060547\n      ],\n      [\n        \"▁rides\",\n        -12.100934982299805\n      ],\n      [\n        \"▁Orleans\",\n        -12.101009368896484\n      ],\n      [\n        \"▁evaluated\",\n        -12.101021766662598\n      ],\n      [\n        \"founder\",\n        -12.10106372833252\n      ],\n      [\n        \"▁Feld\",\n        -12.101212501525879\n      ],\n      [\n        \"▁altele\",\n        -12.10122299194336\n      ],\n      [\n        \"▁thermo\",\n        -12.101290702819824\n      ],\n      [\n        \"ugh\",\n        -12.101330757141113\n      ],\n      [\n        \"▁adus\",\n        -12.101375579833984\n      ],\n      [\n        \"▁Taiwan\",\n        -12.101396560668945\n      ],\n      [\n        \"▁clause\",\n        -12.101409912109375\n      ],\n      [\n        \"oxi\",\n        -12.101465225219727\n      ],\n      [\n        \"alcool\",\n        -12.101495742797852\n      ],\n      [\n        \"▁Noi\",\n        -12.101531982421875\n      ],\n      [\n        \"rub\",\n        -12.101540565490723\n      ],\n      [\n        \"▁dosar\",\n        -12.101582527160645\n      ],\n      [\n        \"▁Nelson\",\n        -12.101751327514648\n      ],\n      [\n        \"fassung\",\n        -12.102316856384277\n      ],\n      [\n        \"▁Kill\",\n        -12.102489471435547\n      ],\n      [\n        \"▁Standards\",\n        -12.102490425109863\n      ],\n      [\n        \"▁upward\",\n        -12.102653503417969\n      ],\n      [\n        \"▁Coloring\",\n        -12.102664947509766\n      ],\n      [\n        \"Designed\",\n        -12.102754592895508\n      ],\n      [\n        \"▁Nou\",\n        -12.10281753540039\n      ],\n      [\n        \"▁borrow\",\n        -12.102940559387207\n      ],\n      [\n        \"▁Poll\",\n        -12.10321044921875\n      ],\n      [\n        \"▁antibiotic\",\n        -12.103277206420898\n      ],\n      [\n        \"▁fabrication\",\n        -12.103388786315918\n      ],\n      [\n        \"quo\",\n        -12.103432655334473\n      ],\n      [\n        \"▁crimes\",\n        -12.103464126586914\n      ],\n      [\n        \"▁nahe\",\n        -12.103484153747559\n      ],\n      [\n        \"▁aplicat\",\n        -12.103565216064453\n      ],\n      [\n        \"OST\",\n        -12.1035737991333\n      ],\n      [\n        \"▁Beijing\",\n        -12.103599548339844\n      ],\n      [\n        \"fight\",\n        -12.103612899780273\n      ],\n      [\n        \"▁lodge\",\n        -12.103612899780273\n      ],\n      [\n        \"dreh\",\n        -12.103922843933105\n      ],\n      [\n        \"▁harness\",\n        -12.104036331176758\n      ],\n      [\n        \"▁noiembrie\",\n        -12.104151725769043\n      ],\n      [\n        \"ounded\",\n        -12.104161262512207\n      ],\n      [\n        \"▁Imp\",\n        -12.1041841506958\n      ],\n      [\n        \"▁nächste\",\n        -12.104275703430176\n      ],\n      [\n        \"funktion\",\n        -12.104476928710938\n      ],\n      [\n        \"exploitation\",\n        -12.104569435119629\n      ],\n      [\n        \"▁Ready\",\n        -12.10457706451416\n      ],\n      [\n        \"▁Plate\",\n        -12.104598999023438\n      ],\n      [\n        \"▁octombrie\",\n        -12.104706764221191\n      ],\n      [\n        \"▁considerat\",\n        -12.104982376098633\n      ],\n      [\n        \"▁Xbox\",\n        -12.105067253112793\n      ],\n      [\n        \"mind\",\n        -12.105107307434082\n      ],\n      [\n        \"▁Lind\",\n        -12.105111122131348\n      ],\n      [\n        \"runde\",\n        -12.105352401733398\n      ],\n      [\n        \"mination\",\n        -12.105374336242676\n      ],\n      [\n        \"▁memori\",\n        -12.105377197265625\n      ],\n      [\n        \"▁cere\",\n        -12.105389595031738\n      ],\n      [\n        \"barkeit\",\n        -12.105517387390137\n      ],\n      [\n        \"▁găsi\",\n        -12.105761528015137\n      ],\n      [\n        \"2.1\",\n        -12.105863571166992\n      ],\n      [\n        \"▁Finding\",\n        -12.105891227722168\n      ],\n      [\n        \"▁static\",\n        -12.106405258178711\n      ],\n      [\n        \"court\",\n        -12.106439590454102\n      ],\n      [\n        \"▁Gem\",\n        -12.106489181518555\n      ],\n      [\n        \"▁pièce\",\n        -12.106494903564453\n      ],\n      [\n        \"▁reel\",\n        -12.10651969909668\n      ],\n      [\n        \"▁manuscript\",\n        -12.106560707092285\n      ],\n      [\n        \"▁complications\",\n        -12.106578826904297\n      ],\n      [\n        \"▁controlling\",\n        -12.106585502624512\n      ],\n      [\n        \"▁favour\",\n        -12.106738090515137\n      ],\n      [\n        \"▁advancement\",\n        -12.106739044189453\n      ],\n      [\n        \"▁Radi\",\n        -12.106870651245117\n      ],\n      [\n        \"▁faites\",\n        -12.107076644897461\n      ],\n      [\n        \"▁ordin\",\n        -12.107131958007812\n      ],\n      [\n        \"sorted\",\n        -12.107152938842773\n      ],\n      [\n        \"▁1982\",\n        -12.10715389251709\n      ],\n      [\n        \"▁brutal\",\n        -12.107154846191406\n      ],\n      [\n        \"▁Guy\",\n        -12.107226371765137\n      ],\n      [\n        \"▁accomplishment\",\n        -12.107248306274414\n      ],\n      [\n        \"▁wer\",\n        -12.107329368591309\n      ],\n      [\n        \"▁withdraw\",\n        -12.107460975646973\n      ],\n      [\n        \"abilitate\",\n        -12.1075439453125\n      ],\n      [\n        \"▁NBA\",\n        -12.107625961303711\n      ],\n      [\n        \"▁Benefit\",\n        -12.107675552368164\n      ],\n      [\n        \"▁divide\",\n        -12.107824325561523\n      ],\n      [\n        \"induced\",\n        -12.107913970947266\n      ],\n      [\n        \"▁văzut\",\n        -12.108049392700195\n      ],\n      [\n        \"▁peel\",\n        -12.10807991027832\n      ],\n      [\n        \"▁joints\",\n        -12.108160972595215\n      ],\n      [\n        \"▁enthalten\",\n        -12.108301162719727\n      ],\n      [\n        \"▁spy\",\n        -12.108397483825684\n      ],\n      [\n        \"▁occasional\",\n        -12.108437538146973\n      ],\n      [\n        \"warm\",\n        -12.108514785766602\n      ],\n      [\n        \"ême\",\n        -12.108542442321777\n      ],\n      [\n        \"▁Betriebs\",\n        -12.108551979064941\n      ],\n      [\n        \"▁Ioan\",\n        -12.1087064743042\n      ],\n      [\n        \"▁balloon\",\n        -12.108809471130371\n      ],\n      [\n        \"▁leap\",\n        -12.108869552612305\n      ],\n      [\n        \"pelled\",\n        -12.109000205993652\n      ],\n      [\n        \"▁realise\",\n        -12.109073638916016\n      ],\n      [\n        \"▁Retail\",\n        -12.109118461608887\n      ],\n      [\n        \"▁Farben\",\n        -12.109151840209961\n      ],\n      [\n        \"▁Kennedy\",\n        -12.10916519165039\n      ],\n      [\n        \"▁Firma\",\n        -12.109196662902832\n      ],\n      [\n        \"▁tineri\",\n        -12.10934066772461\n      ],\n      [\n        \"tub\",\n        -12.109354019165039\n      ],\n      [\n        \"PORT\",\n        -12.109381675720215\n      ],\n      [\n        \"▁stiff\",\n        -12.109416007995605\n      ],\n      [\n        \"▁notable\",\n        -12.109476089477539\n      ],\n      [\n        \"tler\",\n        -12.109498023986816\n      ],\n      [\n        \"▁utile\",\n        -12.10958480834961\n      ],\n      [\n        \"▁jouer\",\n        -12.109674453735352\n      ],\n      [\n        \"▁Primary\",\n        -12.109735488891602\n      ],\n      [\n        \"▁retailer\",\n        -12.109764099121094\n      ],\n      [\n        \"▁jederzeit\",\n        -12.109808921813965\n      ],\n      [\n        \"▁amend\",\n        -12.109817504882812\n      ],\n      [\n        \"▁sagte\",\n        -12.109845161437988\n      ],\n      [\n        \"atch\",\n        -12.10995864868164\n      ],\n      [\n        \"ution\",\n        -12.110008239746094\n      ],\n      [\n        \"once\",\n        -12.110018730163574\n      ],\n      [\n        \"ended\",\n        -12.1100435256958\n      ],\n      [\n        \"▁literary\",\n        -12.11013126373291\n      ],\n      [\n        \"▁wrist\",\n        -12.110281944274902\n      ],\n      [\n        \"vii\",\n        -12.11036205291748\n      ],\n      [\n        \"scriere\",\n        -12.110367774963379\n      ],\n      [\n        \"▁compassion\",\n        -12.110443115234375\n      ],\n      [\n        \"▁Milan\",\n        -12.110474586486816\n      ],\n      [\n        \"▁Dach\",\n        -12.110490798950195\n      ],\n      [\n        \"▁problèmes\",\n        -12.110630989074707\n      ],\n      [\n        \"▁Pré\",\n        -12.110687255859375\n      ],\n      [\n        \"▁Feder\",\n        -12.110759735107422\n      ],\n      [\n        \"Dr\",\n        -12.110814094543457\n      ],\n      [\n        \"Spr\",\n        -12.110908508300781\n      ],\n      [\n        \"▁né\",\n        -12.110969543457031\n      ],\n      [\n        \"François\",\n        -12.111023902893066\n      ],\n      [\n        \"▁Shu\",\n        -12.111115455627441\n      ],\n      [\n        \"▁poison\",\n        -12.111154556274414\n      ],\n      [\n        \"zier\",\n        -12.111176490783691\n      ],\n      [\n        \"▁attain\",\n        -12.11124038696289\n      ],\n      [\n        \"▁switching\",\n        -12.111310958862305\n      ],\n      [\n        \"▁vibration\",\n        -12.111348152160645\n      ],\n      [\n        \"▁Tablet\",\n        -12.11136531829834\n      ],\n      [\n        \"▁Lern\",\n        -12.11148452758789\n      ],\n      [\n        \"offrir\",\n        -12.111660957336426\n      ],\n      [\n        \"123\",\n        -12.11168098449707\n      ],\n      [\n        \"cheapest\",\n        -12.11173152923584\n      ],\n      [\n        \"▁numărul\",\n        -12.111764907836914\n      ],\n      [\n        \"break\",\n        -12.11180305480957\n      ],\n      [\n        \"cyto\",\n        -12.111836433410645\n      ],\n      [\n        \"▁Mississippi\",\n        -12.111955642700195\n      ],\n      [\n        \"▁dragon\",\n        -12.11207389831543\n      ],\n      [\n        \"fir\",\n        -12.112176895141602\n      ],\n      [\n        \"▁fête\",\n        -12.112180709838867\n      ],\n      [\n        \"▁Wait\",\n        -12.112350463867188\n      ],\n      [\n        \"buy\",\n        -12.112359046936035\n      ],\n      [\n        \"având\",\n        -12.112391471862793\n      ],\n      [\n        \"▁Scar\",\n        -12.112517356872559\n      ],\n      [\n        \"▁Hund\",\n        -12.112586975097656\n      ],\n      [\n        \"bug\",\n        -12.112807273864746\n      ],\n      [\n        \"▁classique\",\n        -12.112811088562012\n      ],\n      [\n        \"▁tenant\",\n        -12.112860679626465\n      ],\n      [\n        \"▁Walt\",\n        -12.11296272277832\n      ],\n      [\n        \"▁timber\",\n        -12.11296272277832\n      ],\n      [\n        \"inscription\",\n        -12.11300277709961\n      ],\n      [\n        \"BD\",\n        -12.113016128540039\n      ],\n      [\n        \"▁Commissioner\",\n        -12.113018989562988\n      ],\n      [\n        \"▁casinos\",\n        -12.11306095123291\n      ],\n      [\n        \"▁prochain\",\n        -12.113168716430664\n      ],\n      [\n        \"▁rustic\",\n        -12.11349868774414\n      ],\n      [\n        \"▁Kent\",\n        -12.113607406616211\n      ],\n      [\n        \"▁Deci\",\n        -12.113761901855469\n      ],\n      [\n        \"ли\",\n        -12.113855361938477\n      ],\n      [\n        \"▁crossed\",\n        -12.113861083984375\n      ],\n      [\n        \"▁delightful\",\n        -12.113869667053223\n      ],\n      [\n        \"▁metres\",\n        -12.113872528076172\n      ],\n      [\n        \"▁scandal\",\n        -12.113906860351562\n      ],\n      [\n        \"▁activitate\",\n        -12.113986015319824\n      ],\n      [\n        \"▁nimeni\",\n        -12.114009857177734\n      ],\n      [\n        \"ease\",\n        -12.11402416229248\n      ],\n      [\n        \"▁revenues\",\n        -12.1140775680542\n      ],\n      [\n        \"▁partially\",\n        -12.114187240600586\n      ],\n      [\n        \"AE\",\n        -12.114263534545898\n      ],\n      [\n        \"nique\",\n        -12.114410400390625\n      ],\n      [\n        \"▁fixtures\",\n        -12.114426612854004\n      ],\n      [\n        \"▁pupils\",\n        -12.114694595336914\n      ],\n      [\n        \"Lib\",\n        -12.11471176147461\n      ],\n      [\n        \"analyse\",\n        -12.114739418029785\n      ],\n      [\n        \"▁Oracle\",\n        -12.114767074584961\n      ],\n      [\n        \"troph\",\n        -12.114859580993652\n      ],\n      [\n        \"▁detected\",\n        -12.114879608154297\n      ],\n      [\n        \"▁servant\",\n        -12.11507797241211\n      ],\n      [\n        \"▁badly\",\n        -12.115121841430664\n      ],\n      [\n        \"comparing\",\n        -12.115150451660156\n      ],\n      [\n        \"abs\",\n        -12.115238189697266\n      ],\n      [\n        \"▁fotografi\",\n        -12.115443229675293\n      ],\n      [\n        \"▁Million\",\n        -12.115541458129883\n      ],\n      [\n        \"▁Gordon\",\n        -12.11557388305664\n      ],\n      [\n        \"▁Smok\",\n        -12.115592002868652\n      ],\n      [\n        \"▁Essay\",\n        -12.11565113067627\n      ],\n      [\n        \"eptic\",\n        -12.115665435791016\n      ],\n      [\n        \"▁Transportation\",\n        -12.115728378295898\n      ],\n      [\n        \"/2019\",\n        -12.115767478942871\n      ],\n      [\n        \"▁alignment\",\n        -12.115778923034668\n      ],\n      [\n        \"▁laut\",\n        -12.11578369140625\n      ],\n      [\n        \"stände\",\n        -12.115791320800781\n      ],\n      [\n        \"▁concerts\",\n        -12.115811347961426\n      ],\n      [\n        \"▁weekends\",\n        -12.11589241027832\n      ],\n      [\n        \"▁obstacles\",\n        -12.115941047668457\n      ],\n      [\n        \"wür\",\n        -12.115964889526367\n      ],\n      [\n        \"▁Fisher\",\n        -12.116219520568848\n      ],\n      [\n        \"▁supervisor\",\n        -12.116242408752441\n      ],\n      [\n        \"▁traders\",\n        -12.116262435913086\n      ],\n      [\n        \"▁scary\",\n        -12.116484642028809\n      ],\n      [\n        \"▁Grove\",\n        -12.116538047790527\n      ],\n      [\n        \"▁expose\",\n        -12.116583824157715\n      ],\n      [\n        \"▁enemies\",\n        -12.116630554199219\n      ],\n      [\n        \"▁Lux\",\n        -12.11667537689209\n      ],\n      [\n        \"▁Berufs\",\n        -12.11672306060791\n      ],\n      [\n        \"▁Sheet\",\n        -12.116780281066895\n      ],\n      [\n        \"▁Natürlich\",\n        -12.116819381713867\n      ],\n      [\n        \"▁examined\",\n        -12.116886138916016\n      ],\n      [\n        \"pursuing\",\n        -12.116920471191406\n      ],\n      [\n        \"▁pools\",\n        -12.116923332214355\n      ],\n      [\n        \"▁Thompson\",\n        -12.117005348205566\n      ],\n      [\n        \"▁SAP\",\n        -12.117010116577148\n      ],\n      [\n        \"claiming\",\n        -12.117053985595703\n      ],\n      [\n        \"buried\",\n        -12.117055892944336\n      ],\n      [\n        \"assurance\",\n        -12.117138862609863\n      ],\n      [\n        \"▁sandwich\",\n        -12.117195129394531\n      ],\n      [\n        \"uber\",\n        -12.117310523986816\n      ],\n      [\n        \"▁laisse\",\n        -12.117321968078613\n      ],\n      [\n        \"peak\",\n        -12.117348670959473\n      ],\n      [\n        \"spring\",\n        -12.1173677444458\n      ],\n      [\n        \"▁august\",\n        -12.117369651794434\n      ],\n      [\n        \"▁benötigt\",\n        -12.11738109588623\n      ],\n      [\n        \"▁achievements\",\n        -12.117470741271973\n      ],\n      [\n        \"coala\",\n        -12.117478370666504\n      ],\n      [\n        \"▁scr\",\n        -12.117842674255371\n      ],\n      [\n        \"gesagt\",\n        -12.118122100830078\n      ],\n      [\n        \"▁envelope\",\n        -12.118141174316406\n      ],\n      [\n        \"▁mapping\",\n        -12.118169784545898\n      ],\n      [\n        \"▁Suche\",\n        -12.118298530578613\n      ],\n      [\n        \"first\",\n        -12.118329048156738\n      ],\n      [\n        \"▁Quin\",\n        -12.118447303771973\n      ],\n      [\n        \"räu\",\n        -12.118561744689941\n      ],\n      [\n        \"▁răs\",\n        -12.118583679199219\n      ],\n      [\n        \"chemical\",\n        -12.118597984313965\n      ],\n      [\n        \"dad\",\n        -12.118927955627441\n      ],\n      [\n        \"formation\",\n        -12.118983268737793\n      ],\n      [\n        \"▁cushion\",\n        -12.119026184082031\n      ],\n      [\n        \"▁Maß\",\n        -12.119046211242676\n      ],\n      [\n        \"07.\",\n        -12.119184494018555\n      ],\n      [\n        \"▁perioadă\",\n        -12.119257926940918\n      ],\n      [\n        \"▁Wunsch\",\n        -12.11925983428955\n      ],\n      [\n        \"▁joi\",\n        -12.119423866271973\n      ],\n      [\n        \"▁$25\",\n        -12.119482040405273\n      ],\n      [\n        \"▁uploaded\",\n        -12.11952018737793\n      ],\n      [\n        \"▁hobby\",\n        -12.119633674621582\n      ],\n      [\n        \"▁septembrie\",\n        -12.119633674621582\n      ],\n      [\n        \"▁Dimension\",\n        -12.119634628295898\n      ],\n      [\n        \"▁domeniu\",\n        -12.119661331176758\n      ],\n      [\n        \"▁Tourism\",\n        -12.119747161865234\n      ],\n      [\n        \"▁fais\",\n        -12.119800567626953\n      ],\n      [\n        \"aches\",\n        -12.119919776916504\n      ],\n      [\n        \"neck\",\n        -12.119969367980957\n      ],\n      [\n        \"▁Chip\",\n        -12.119982719421387\n      ],\n      [\n        \"▁Tisch\",\n        -12.1199951171875\n      ],\n      [\n        \"▁Pai\",\n        -12.120006561279297\n      ],\n      [\n        \"▁Butter\",\n        -12.120083808898926\n      ],\n      [\n        \"▁altor\",\n        -12.120133399963379\n      ],\n      [\n        \"cultural\",\n        -12.120182991027832\n      ],\n      [\n        \"▁bases\",\n        -12.12028980255127\n      ],\n      [\n        \"▁Christopher\",\n        -12.120396614074707\n      ],\n      [\n        \"Kindle\",\n        -12.120401382446289\n      ],\n      [\n        \"▁bathrooms\",\n        -12.12049388885498\n      ],\n      [\n        \"▁civilian\",\n        -12.12052059173584\n      ],\n      [\n        \"▁Architecture\",\n        -12.12058162689209\n      ],\n      [\n        \"heiten\",\n        -12.120641708374023\n      ],\n      [\n        \"otte\",\n        -12.120763778686523\n      ],\n      [\n        \"ри\",\n        -12.120784759521484\n      ],\n      [\n        \"wash\",\n        -12.120792388916016\n      ],\n      [\n        \"▁evenimente\",\n        -12.12086296081543\n      ],\n      [\n        \"lade\",\n        -12.121132850646973\n      ],\n      [\n        \"▁ermöglicht\",\n        -12.121140480041504\n      ],\n      [\n        \"Port\",\n        -12.121149063110352\n      ],\n      [\n        \"▁Horn\",\n        -12.12119197845459\n      ],\n      [\n        \"▁Housing\",\n        -12.121232032775879\n      ],\n      [\n        \"▁Profit\",\n        -12.121304512023926\n      ],\n      [\n        \"▁stressed\",\n        -12.12136459350586\n      ],\n      [\n        \"▁70%\",\n        -12.121431350708008\n      ],\n      [\n        \"laying\",\n        -12.121458053588867\n      ],\n      [\n        \"▁specialize\",\n        -12.121490478515625\n      ],\n      [\n        \"▁Published\",\n        -12.121519088745117\n      ],\n      [\n        \"corp\",\n        -12.121554374694824\n      ],\n      [\n        \"▁revision\",\n        -12.121611595153809\n      ],\n      [\n        \"▁sail\",\n        -12.121804237365723\n      ],\n      [\n        \"courtesy\",\n        -12.121909141540527\n      ],\n      [\n        \"tax\",\n        -12.1219482421875\n      ],\n      [\n        \"▁perfekt\",\n        -12.122018814086914\n      ],\n      [\n        \"▁Risk\",\n        -12.122088432312012\n      ],\n      [\n        \"▁chaleur\",\n        -12.122129440307617\n      ],\n      [\n        \"ych\",\n        -12.122132301330566\n      ],\n      [\n        \"▁spine\",\n        -12.12218189239502\n      ],\n      [\n        \"▁holders\",\n        -12.122264862060547\n      ],\n      [\n        \"▁Speaking\",\n        -12.122271537780762\n      ],\n      [\n        \"▁Bernard\",\n        -12.122400283813477\n      ],\n      [\n        \"incarc\",\n        -12.122532844543457\n      ],\n      [\n        \"shalb\",\n        -12.122639656066895\n      ],\n      [\n        \"Potrivit\",\n        -12.12264633178711\n      ],\n      [\n        \"arising\",\n        -12.122654914855957\n      ],\n      [\n        \"▁kingdom\",\n        -12.122665405273438\n      ],\n      [\n        \"▁potato\",\n        -12.122766494750977\n      ],\n      [\n        \"▁promoted\",\n        -12.122814178466797\n      ],\n      [\n        \"▁judges\",\n        -12.1228609085083\n      ],\n      [\n        \"▁naturelle\",\n        -12.122992515563965\n      ],\n      [\n        \"▁Kindern\",\n        -12.123022079467773\n      ],\n      [\n        \"schicht\",\n        -12.123047828674316\n      ],\n      [\n        \"▁Drag\",\n        -12.123066902160645\n      ],\n      [\n        \"atta\",\n        -12.123132705688477\n      ],\n      [\n        \"soient\",\n        -12.123249053955078\n      ],\n      [\n        \"INS\",\n        -12.12336540222168\n      ],\n      [\n        \"▁legislative\",\n        -12.123642921447754\n      ],\n      [\n        \"▁teens\",\n        -12.123785018920898\n      ],\n      [\n        \"▁Fotos\",\n        -12.123842239379883\n      ],\n      [\n        \"▁illustrations\",\n        -12.12392520904541\n      ],\n      [\n        \"möglichkeiten\",\n        -12.12415599822998\n      ],\n      [\n        \"Votre\",\n        -12.124194145202637\n      ],\n      [\n        \"▁tarif\",\n        -12.124195098876953\n      ],\n      [\n        \"cli\",\n        -12.124488830566406\n      ],\n      [\n        \"▁landlord\",\n        -12.12473201751709\n      ],\n      [\n        \"cine\",\n        -12.124743461608887\n      ],\n      [\n        \"▁bot\",\n        -12.124798774719238\n      ],\n      [\n        \"enhancing\",\n        -12.12491226196289\n      ],\n      [\n        \"▁März\",\n        -12.12491226196289\n      ],\n      [\n        \"▁succès\",\n        -12.125106811523438\n      ],\n      [\n        \"▁disclose\",\n        -12.125120162963867\n      ],\n      [\n        \"▁Geräte\",\n        -12.125321388244629\n      ],\n      [\n        \"▁Magn\",\n        -12.125422477722168\n      ],\n      [\n        \"dessous\",\n        -12.12580680847168\n      ],\n      [\n        \"▁miracle\",\n        -12.125862121582031\n      ],\n      [\n        \"▁travailler\",\n        -12.125933647155762\n      ],\n      [\n        \"▁herb\",\n        -12.125945091247559\n      ],\n      [\n        \"-01\",\n        -12.126049041748047\n      ],\n      [\n        \"litre\",\n        -12.126104354858398\n      ],\n      [\n        \"▁tău\",\n        -12.126120567321777\n      ],\n      [\n        \"ACC\",\n        -12.126190185546875\n      ],\n      [\n        \"▁diminu\",\n        -12.126275062561035\n      ],\n      [\n        \"itzer\",\n        -12.126317024230957\n      ],\n      [\n        \"▁personenbezogen\",\n        -12.126395225524902\n      ],\n      [\n        \"▁Pure\",\n        -12.126436233520508\n      ],\n      [\n        \"▁influences\",\n        -12.12668228149414\n      ],\n      [\n        \"ană\",\n        -12.126765251159668\n      ],\n      [\n        \"▁proposer\",\n        -12.126856803894043\n      ],\n      [\n        \"▁longest\",\n        -12.12692642211914\n      ],\n      [\n        \"euses\",\n        -12.127080917358398\n      ],\n      [\n        \"/1\",\n        -12.127487182617188\n      ],\n      [\n        \"hafte\",\n        -12.127716064453125\n      ],\n      [\n        \"▁Dich\",\n        -12.127761840820312\n      ],\n      [\n        \"▁candle\",\n        -12.128026962280273\n      ],\n      [\n        \"ouche\",\n        -12.128191947937012\n      ],\n      [\n        \"installation\",\n        -12.128241539001465\n      ],\n      [\n        \"▁Includes\",\n        -12.128280639648438\n      ],\n      [\n        \"▁entfernt\",\n        -12.12831974029541\n      ],\n      [\n        \"traf\",\n        -12.128499031066895\n      ],\n      [\n        \"▁None\",\n        -12.128508567810059\n      ],\n      [\n        \"▁produc\",\n        -12.128510475158691\n      ],\n      [\n        \"held\",\n        -12.128519058227539\n      ],\n      [\n        \"graphic\",\n        -12.128531455993652\n      ],\n      [\n        \"▁demographic\",\n        -12.128584861755371\n      ],\n      [\n        \"ingham\",\n        -12.1287841796875\n      ],\n      [\n        \"schul\",\n        -12.128812789916992\n      ],\n      [\n        \"▁sneak\",\n        -12.128843307495117\n      ],\n      [\n        \"laub\",\n        -12.128889083862305\n      ],\n      [\n        \"▁thickness\",\n        -12.12911605834961\n      ],\n      [\n        \"▁killer\",\n        -12.129297256469727\n      ],\n      [\n        \"▁entsprechende\",\n        -12.129344940185547\n      ],\n      [\n        \"▁theft\",\n        -12.129396438598633\n      ],\n      [\n        \"▁Jerusalem\",\n        -12.129457473754883\n      ],\n      [\n        \"Adapt\",\n        -12.129495620727539\n      ],\n      [\n        \"▁updating\",\n        -12.129497528076172\n      ],\n      [\n        \"tete\",\n        -12.12954330444336\n      ],\n      [\n        \"▁warming\",\n        -12.129701614379883\n      ],\n      [\n        \"anlage\",\n        -12.129739761352539\n      ],\n      [\n        \"▁lenders\",\n        -12.129814147949219\n      ],\n      [\n        \"mobile\",\n        -12.130008697509766\n      ],\n      [\n        \"▁Package\",\n        -12.130080223083496\n      ],\n      [\n        \"▁Volume\",\n        -12.130152702331543\n      ],\n      [\n        \"---\",\n        -12.130167007446289\n      ],\n      [\n        \"▁Others\",\n        -12.130173683166504\n      ],\n      [\n        \"content\",\n        -12.130188941955566\n      ],\n      [\n        \"tement\",\n        -12.130253791809082\n      ],\n      [\n        \"bildet\",\n        -12.13027572631836\n      ],\n      [\n        \"▁washer\",\n        -12.13053035736084\n      ],\n      [\n        \"▁freelance\",\n        -12.130623817443848\n      ],\n      [\n        \"▁fein\",\n        -12.130753517150879\n      ],\n      [\n        \"▁catering\",\n        -12.130851745605469\n      ],\n      [\n        \"▁warmth\",\n        -12.130911827087402\n      ],\n      [\n        \"▁Month\",\n        -12.131103515625\n      ],\n      [\n        \"▁Federation\",\n        -12.131134033203125\n      ],\n      [\n        \"▁editorial\",\n        -12.13121223449707\n      ],\n      [\n        \"▁Shopping\",\n        -12.131241798400879\n      ],\n      [\n        \"▁efort\",\n        -12.131296157836914\n      ],\n      [\n        \"▁damp\",\n        -12.131314277648926\n      ],\n      [\n        \"▁declined\",\n        -12.131332397460938\n      ],\n      [\n        \"▁1978\",\n        -12.13135051727295\n      ],\n      [\n        \"6,000\",\n        -12.131355285644531\n      ],\n      [\n        \"location\",\n        -12.131551742553711\n      ],\n      [\n        \"▁blogger\",\n        -12.131572723388672\n      ],\n      [\n        \"▁goodness\",\n        -12.131826400756836\n      ],\n      [\n        \"▁Purchase\",\n        -12.132119178771973\n      ],\n      [\n        \"▁suspended\",\n        -12.132159233093262\n      ],\n      [\n        \"▁assessed\",\n        -12.132201194763184\n      ],\n      [\n        \"rada\",\n        -12.132286071777344\n      ],\n      [\n        \"▁Lac\",\n        -12.132291793823242\n      ],\n      [\n        \"▁angeboten\",\n        -12.13235092163086\n      ],\n      [\n        \"▁Wetter\",\n        -12.132370948791504\n      ],\n      [\n        \"ores\",\n        -12.13243579864502\n      ],\n      [\n        \"▁fourni\",\n        -12.132476806640625\n      ],\n      [\n        \"▁retire\",\n        -12.13269329071045\n      ],\n      [\n        \"▁Baptist\",\n        -12.132741928100586\n      ],\n      [\n        \"▁Saison\",\n        -12.13277530670166\n      ],\n      [\n        \"Bar\",\n        -12.132794380187988\n      ],\n      [\n        \"▁dossier\",\n        -12.132979393005371\n      ],\n      [\n        \"brow\",\n        -12.133044242858887\n      ],\n      [\n        \"▁Kaffee\",\n        -12.133071899414062\n      ],\n      [\n        \"-25\",\n        -12.133463859558105\n      ],\n      [\n        \"▁festivals\",\n        -12.133599281311035\n      ],\n      [\n        \"▁sellers\",\n        -12.133716583251953\n      ],\n      [\n        \"Ü\",\n        -12.13393783569336\n      ],\n      [\n        \"▁publisher\",\n        -12.133960723876953\n      ],\n      [\n        \"▁Designs\",\n        -12.133970260620117\n      ],\n      [\n        \"▁putut\",\n        -12.13400936126709\n      ],\n      [\n        \"▁Built\",\n        -12.134417533874512\n      ],\n      [\n        \"▁recreational\",\n        -12.134476661682129\n      ],\n      [\n        \"▁european\",\n        -12.134514808654785\n      ],\n      [\n        \"▁binary\",\n        -12.134631156921387\n      ],\n      [\n        \"▁Nieder\",\n        -12.134764671325684\n      ],\n      [\n        \"taking\",\n        -12.1348237991333\n      ],\n      [\n        \"▁Lots\",\n        -12.13494873046875\n      ],\n      [\n        \"▁recognised\",\n        -12.135031700134277\n      ],\n      [\n        \"ssant\",\n        -12.135063171386719\n      ],\n      [\n        \"ITE\",\n        -12.135271072387695\n      ],\n      [\n        \"oom\",\n        -12.135298728942871\n      ],\n      [\n        \"▁Kre\",\n        -12.135310173034668\n      ],\n      [\n        \"▁pipes\",\n        -12.135631561279297\n      ],\n      [\n        \"▁hinge\",\n        -12.135653495788574\n      ],\n      [\n        \"▁enterprises\",\n        -12.135664939880371\n      ],\n      [\n        \"▁texts\",\n        -12.13583755493164\n      ],\n      [\n        \"Organiz\",\n        -12.136080741882324\n      ],\n      [\n        \"▁suivre\",\n        -12.136124610900879\n      ],\n      [\n        \"noc\",\n        -12.136157989501953\n      ],\n      [\n        \"fair\",\n        -12.136194229125977\n      ],\n      [\n        \"▁darkness\",\n        -12.136305809020996\n      ],\n      [\n        \"▁Whi\",\n        -12.13631534576416\n      ],\n      [\n        \"natural\",\n        -12.136321067810059\n      ],\n      [\n        \"Bas\",\n        -12.136422157287598\n      ],\n      [\n        \"▁tribute\",\n        -12.136443138122559\n      ],\n      [\n        \"▁Naţional\",\n        -12.136573791503906\n      ],\n      [\n        \"hara\",\n        -12.136622428894043\n      ],\n      [\n        \"▁catégorie\",\n        -12.136697769165039\n      ],\n      [\n        \"▁Schedule\",\n        -12.136698722839355\n      ],\n      [\n        \"▁lernen\",\n        -12.13671875\n      ],\n      [\n        \"▁Plastic\",\n        -12.136725425720215\n      ],\n      [\n        \"▁giveaway\",\n        -12.13675594329834\n      ],\n      [\n        \"▁Ideen\",\n        -12.136906623840332\n      ],\n      [\n        \"▁circa\",\n        -12.13718032836914\n      ],\n      [\n        \"▁lice\",\n        -12.137242317199707\n      ],\n      [\n        \"▁Meinung\",\n        -12.137264251708984\n      ],\n      [\n        \"▁beside\",\n        -12.137566566467285\n      ],\n      [\n        \"▁vazut\",\n        -12.137673377990723\n      ],\n      [\n        \"strom\",\n        -12.137749671936035\n      ],\n      [\n        \"boro\",\n        -12.137775421142578\n      ],\n      [\n        \"▁Soon\",\n        -12.137796401977539\n      ],\n      [\n        \"dozens\",\n        -12.137896537780762\n      ],\n      [\n        \"▁Arena\",\n        -12.137943267822266\n      ],\n      [\n        \"▁viața\",\n        -12.137989044189453\n      ],\n      [\n        \"▁Impact\",\n        -12.138082504272461\n      ],\n      [\n        \"current\",\n        -12.138106346130371\n      ],\n      [\n        \"FM\",\n        -12.138117790222168\n      ],\n      [\n        \"▁coil\",\n        -12.138657569885254\n      ],\n      [\n        \"gold\",\n        -12.138679504394531\n      ],\n      [\n        \"▁spate\",\n        -12.138679504394531\n      ],\n      [\n        \"1.4\",\n        -12.13875675201416\n      ],\n      [\n        \"solution\",\n        -12.138769149780273\n      ],\n      [\n        \"▁Wayne\",\n        -12.138835906982422\n      ],\n      [\n        \"▁queen\",\n        -12.138898849487305\n      ],\n      [\n        \"illion\",\n        -12.139022827148438\n      ],\n      [\n        \"greifen\",\n        -12.139127731323242\n      ],\n      [\n        \"▁Bil\",\n        -12.139174461364746\n      ],\n      [\n        \"rote\",\n        -12.139185905456543\n      ],\n      [\n        \"END\",\n        -12.13918685913086\n      ],\n      [\n        \"äl\",\n        -12.139206886291504\n      ],\n      [\n        \"▁reçu\",\n        -12.139378547668457\n      ],\n      [\n        \"flower\",\n        -12.139495849609375\n      ],\n      [\n        \"▁draws\",\n        -12.139519691467285\n      ],\n      [\n        \"plant\",\n        -12.139605522155762\n      ],\n      [\n        \"2010\",\n        -12.139702796936035\n      ],\n      [\n        \"▁oper\",\n        -12.139762878417969\n      ],\n      [\n        \"▁conserve\",\n        -12.139777183532715\n      ],\n      [\n        \"▁sprinkle\",\n        -12.13984203338623\n      ],\n      [\n        \"mode\",\n        -12.139924049377441\n      ],\n      [\n        \"▁lifting\",\n        -12.139941215515137\n      ],\n      [\n        \"▁Institution\",\n        -12.139951705932617\n      ],\n      [\n        \"Când\",\n        -12.14001750946045\n      ],\n      [\n        \"Aus\",\n        -12.140048027038574\n      ],\n      [\n        \"▁fears\",\n        -12.140054702758789\n      ],\n      [\n        \"▁appointments\",\n        -12.140079498291016\n      ],\n      [\n        \"oarele\",\n        -12.140162467956543\n      ],\n      [\n        \"▁duck\",\n        -12.140193939208984\n      ],\n      [\n        \"▁stadium\",\n        -12.140213012695312\n      ],\n      [\n        \"▁vezi\",\n        -12.140227317810059\n      ],\n      [\n        \"▁lap\",\n        -12.140315055847168\n      ],\n      [\n        \"▁proceeds\",\n        -12.140382766723633\n      ],\n      [\n        \"geschlossen\",\n        -12.140412330627441\n      ],\n      [\n        \"▁tren\",\n        -12.140478134155273\n      ],\n      [\n        \"VS\",\n        -12.140536308288574\n      ],\n      [\n        \"▁vais\",\n        -12.140800476074219\n      ],\n      [\n        \"ținut\",\n        -12.140859603881836\n      ],\n      [\n        \"▁Concert\",\n        -12.140928268432617\n      ],\n      [\n        \"▁planting\",\n        -12.141008377075195\n      ],\n      [\n        \"▁honour\",\n        -12.141069412231445\n      ],\n      [\n        \"▁gras\",\n        -12.141071319580078\n      ],\n      [\n        \"woo\",\n        -12.141092300415039\n      ],\n      [\n        \"▁Hero\",\n        -12.141282081604004\n      ],\n      [\n        \"▁stimulate\",\n        -12.14134407043457\n      ],\n      [\n        \"▁überhaupt\",\n        -12.141426086425781\n      ],\n      [\n        \"▁bounce\",\n        -12.14148235321045\n      ],\n      [\n        \"oodle\",\n        -12.14151382446289\n      ],\n      [\n        \"▁packs\",\n        -12.141576766967773\n      ],\n      [\n        \"▁Poker\",\n        -12.14158821105957\n      ],\n      [\n        \"▁acea\",\n        -12.141684532165527\n      ],\n      [\n        \"▁parish\",\n        -12.141754150390625\n      ],\n      [\n        \"-24\",\n        -12.141766548156738\n      ],\n      [\n        \"▁iTunes\",\n        -12.141874313354492\n      ],\n      [\n        \"▁lumière\",\n        -12.141948699951172\n      ],\n      [\n        \"third\",\n        -12.142024993896484\n      ],\n      [\n        \"▁dynamics\",\n        -12.142038345336914\n      ],\n      [\n        \"Unless\",\n        -12.142162322998047\n      ],\n      [\n        \"▁immense\",\n        -12.142416000366211\n      ],\n      [\n        \"▁Sec\",\n        -12.142781257629395\n      ],\n      [\n        \"lois\",\n        -12.143009185791016\n      ],\n      [\n        \"époque\",\n        -12.14302921295166\n      ],\n      [\n        \"NB\",\n        -12.143139839172363\n      ],\n      [\n        \"written\",\n        -12.143210411071777\n      ],\n      [\n        \"▁logement\",\n        -12.143226623535156\n      ],\n      [\n        \"submitting\",\n        -12.143295288085938\n      ],\n      [\n        \"▁Quand\",\n        -12.14331340789795\n      ],\n      [\n        \"▁foi\",\n        -12.143322944641113\n      ],\n      [\n        \"▁catalogue\",\n        -12.143351554870605\n      ],\n      [\n        \"nova\",\n        -12.14343547821045\n      ],\n      [\n        \"▁prezentat\",\n        -12.143527030944824\n      ],\n      [\n        \"▁tart\",\n        -12.143877983093262\n      ],\n      [\n        \"те\",\n        -12.143912315368652\n      ],\n      [\n        \"hack\",\n        -12.143916130065918\n      ],\n      [\n        \"▁Politic\",\n        -12.144003868103027\n      ],\n      [\n        \"▁18,\",\n        -12.144048690795898\n      ],\n      [\n        \"▁ignored\",\n        -12.144145965576172\n      ],\n      [\n        \"▁spoon\",\n        -12.144245147705078\n      ],\n      [\n        \"▁Joy\",\n        -12.144280433654785\n      ],\n      [\n        \"▁reside\",\n        -12.144482612609863\n      ],\n      [\n        \".99\",\n        -12.144488334655762\n      ],\n      [\n        \"lytic\",\n        -12.144625663757324\n      ],\n      [\n        \"▁bogat\",\n        -12.144643783569336\n      ],\n      [\n        \"▁nurses\",\n        -12.144845008850098\n      ],\n      [\n        \"▁funcţi\",\n        -12.145029067993164\n      ],\n      [\n        \"▁produselor\",\n        -12.145038604736328\n      ],\n      [\n        \"▁Associates\",\n        -12.145069122314453\n      ],\n      [\n        \"Est\",\n        -12.14511489868164\n      ],\n      [\n        \"▁peanut\",\n        -12.145187377929688\n      ],\n      [\n        \"▁résultat\",\n        -12.145257949829102\n      ],\n      [\n        \"08.\",\n        -12.145424842834473\n      ],\n      [\n        \"▁Astro\",\n        -12.145439147949219\n      ],\n      [\n        \"▁personnelle\",\n        -12.145527839660645\n      ],\n      [\n        \"320\",\n        -12.145668983459473\n      ],\n      [\n        \"▁Grab\",\n        -12.145748138427734\n      ],\n      [\n        \"éco\",\n        -12.145801544189453\n      ],\n      [\n        \"▁clasic\",\n        -12.145857810974121\n      ],\n      [\n        \"offre\",\n        -12.14588451385498\n      ],\n      [\n        \"▁idee\",\n        -12.14589786529541\n      ],\n      [\n        \"▁cheat\",\n        -12.146259307861328\n      ],\n      [\n        \"▁Flug\",\n        -12.146286964416504\n      ],\n      [\n        \"▁1500\",\n        -12.146413803100586\n      ],\n      [\n        \"▁kurze\",\n        -12.14643383026123\n      ],\n      [\n        \"With\",\n        -12.146512985229492\n      ],\n      [\n        \"▁Half\",\n        -12.146575927734375\n      ],\n      [\n        \"▁disciplines\",\n        -12.146642684936523\n      ],\n      [\n        \"sorption\",\n        -12.14669132232666\n      ],\n      [\n        \"▁greutate\",\n        -12.146927833557129\n      ],\n      [\n        \"mä\",\n        -12.146940231323242\n      ],\n      [\n        \"▁Literatur\",\n        -12.146956443786621\n      ],\n      [\n        \"3/\",\n        -12.147016525268555\n      ],\n      [\n        \"4.0\",\n        -12.147095680236816\n      ],\n      [\n        \"▁déco\",\n        -12.147119522094727\n      ],\n      [\n        \"▁Fuß\",\n        -12.147233963012695\n      ],\n      [\n        \"▁Deutsche\",\n        -12.147289276123047\n      ],\n      [\n        \"▁abundance\",\n        -12.14746379852295\n      ],\n      [\n        \"▁Luther\",\n        -12.14750862121582\n      ],\n      [\n        \"▁nutritional\",\n        -12.147562980651855\n      ],\n      [\n        \"▁Jude\",\n        -12.147687911987305\n      ],\n      [\n        \"AY\",\n        -12.14786148071289\n      ],\n      [\n        \"▁chore\",\n        -12.147916793823242\n      ],\n      [\n        \"▁Kro\",\n        -12.148006439208984\n      ],\n      [\n        \"▁alin\",\n        -12.14801025390625\n      ],\n      [\n        \"lösung\",\n        -12.148030281066895\n      ],\n      [\n        \"▁geworden\",\n        -12.148238182067871\n      ],\n      [\n        \"▁sociaux\",\n        -12.148255348205566\n      ],\n      [\n        \"▁Spark\",\n        -12.1486177444458\n      ],\n      [\n        \"▁phenomenon\",\n        -12.148624420166016\n      ],\n      [\n        \"ICA\",\n        -12.148805618286133\n      ],\n      [\n        \"▁Ran\",\n        -12.148836135864258\n      ],\n      [\n        \"▁Schwarz\",\n        -12.148959159851074\n      ],\n      [\n        \"▁1983\",\n        -12.148985862731934\n      ],\n      [\n        \"ет\",\n        -12.148990631103516\n      ],\n      [\n        \"möglich\",\n        -12.149084091186523\n      ],\n      [\n        \"vocation\",\n        -12.149087905883789\n      ],\n      [\n        \"▁Organic\",\n        -12.14926815032959\n      ],\n      [\n        \"Oh\",\n        -12.149408340454102\n      ],\n      [\n        \"▁blockchain\",\n        -12.149422645568848\n      ],\n      [\n        \"▁Bă\",\n        -12.149515151977539\n      ],\n      [\n        \"▁Bass\",\n        -12.14953899383545\n      ],\n      [\n        \"enie\",\n        -12.149687767028809\n      ],\n      [\n        \"▁rêve\",\n        -12.149807929992676\n      ],\n      [\n        \"▁Rap\",\n        -12.149986267089844\n      ],\n      [\n        \"▁democratic\",\n        -12.150044441223145\n      ],\n      [\n        \"▁Chart\",\n        -12.150167465209961\n      ],\n      [\n        \"▁Voi\",\n        -12.150189399719238\n      ],\n      [\n        \"process\",\n        -12.150263786315918\n      ],\n      [\n        \"▁preach\",\n        -12.150389671325684\n      ],\n      [\n        \"tient\",\n        -12.150456428527832\n      ],\n      [\n        \"▁Train\",\n        -12.150468826293945\n      ],\n      [\n        \"▁Reihe\",\n        -12.150472640991211\n      ],\n      [\n        \"help\",\n        -12.150514602661133\n      ],\n      [\n        \"1.6\",\n        -12.150547981262207\n      ],\n      [\n        \"▁cazuri\",\n        -12.150547981262207\n      ],\n      [\n        \"▁chap\",\n        -12.150559425354004\n      ],\n      [\n        \"aktiv\",\n        -12.150632858276367\n      ],\n      [\n        \"▁2006.\",\n        -12.15079116821289\n      ],\n      [\n        \"iene\",\n        -12.150849342346191\n      ],\n      [\n        \"▁BBQ\",\n        -12.150969505310059\n      ],\n      [\n        \"dauer\",\n        -12.151028633117676\n      ],\n      [\n        \"2).\",\n        -12.151226997375488\n      ],\n      [\n        \"▁Monat\",\n        -12.151277542114258\n      ],\n      [\n        \"Generally\",\n        -12.151285171508789\n      ],\n      [\n        \"▁bracelet\",\n        -12.151336669921875\n      ],\n      [\n        \"▁cartoon\",\n        -12.151349067687988\n      ],\n      [\n        \"▁pui\",\n        -12.151488304138184\n      ],\n      [\n        \"temp\",\n        -12.151506423950195\n      ],\n      [\n        \"▁Particip\",\n        -12.151555061340332\n      ],\n      [\n        \"▁dumneavoastră\",\n        -12.151725769042969\n      ],\n      [\n        \"▁Gin\",\n        -12.151824951171875\n      ],\n      [\n        \"iunile\",\n        -12.151829719543457\n      ],\n      [\n        \"reise\",\n        -12.151849746704102\n      ],\n      [\n        \"▁einzige\",\n        -12.15189266204834\n      ],\n      [\n        \"ANCE\",\n        -12.15192985534668\n      ],\n      [\n        \"▁humble\",\n        -12.151951789855957\n      ],\n      [\n        \"claim\",\n        -12.152093887329102\n      ],\n      [\n        \"LV\",\n        -12.152143478393555\n      ],\n      [\n        \"▁confiance\",\n        -12.152270317077637\n      ],\n      [\n        \"▁Trading\",\n        -12.152535438537598\n      ],\n      [\n        \"▁Fabric\",\n        -12.152770042419434\n      ],\n      [\n        \"▁Duke\",\n        -12.152851104736328\n      ],\n      [\n        \"spieler\",\n        -12.152937889099121\n      ],\n      [\n        \"▁reject\",\n        -12.152987480163574\n      ],\n      [\n        \"▁crise\",\n        -12.153170585632324\n      ],\n      [\n        \"▁borders\",\n        -12.153196334838867\n      ],\n      [\n        \"▁Vehicle\",\n        -12.153279304504395\n      ],\n      [\n        \"zeiten\",\n        -12.153481483459473\n      ],\n      [\n        \"enrolled\",\n        -12.153514862060547\n      ],\n      [\n        \"venue\",\n        -12.153555870056152\n      ],\n      [\n        \"▁forests\",\n        -12.153564453125\n      ],\n      [\n        \"vascular\",\n        -12.15358829498291\n      ],\n      [\n        \"▁phrases\",\n        -12.153661727905273\n      ],\n      [\n        \"▁receptor\",\n        -12.15368366241455\n      ],\n      [\n        \"schied\",\n        -12.153687477111816\n      ],\n      [\n        \"▁soirée\",\n        -12.153785705566406\n      ],\n      [\n        \"▁partener\",\n        -12.153987884521484\n      ],\n      [\n        \"▁Jobs\",\n        -12.15417194366455\n      ],\n      [\n        \"▁segments\",\n        -12.154216766357422\n      ],\n      [\n        \"▁violate\",\n        -12.154438972473145\n      ],\n      [\n        \"▁viable\",\n        -12.154500007629395\n      ],\n      [\n        \"▁encountered\",\n        -12.154533386230469\n      ],\n      [\n        \"▁travelers\",\n        -12.154552459716797\n      ],\n      [\n        \"▁împ\",\n        -12.154679298400879\n      ],\n      [\n        \"▁convince\",\n        -12.154693603515625\n      ],\n      [\n        \"▁mailing\",\n        -12.154693603515625\n      ],\n      [\n        \"▁Zahn\",\n        -12.154698371887207\n      ],\n      [\n        \"attend\",\n        -12.15477466583252\n      ],\n      [\n        \"▁eBay\",\n        -12.154836654663086\n      ],\n      [\n        \"▁Emergency\",\n        -12.154844284057617\n      ],\n      [\n        \"wirtschaft\",\n        -12.154882431030273\n      ],\n      [\n        \"▁scholars\",\n        -12.154947280883789\n      ],\n      [\n        \"▁considerably\",\n        -12.155118942260742\n      ],\n      [\n        \"▁combo\",\n        -12.1551513671875\n      ],\n      [\n        \"hiver\",\n        -12.155198097229004\n      ],\n      [\n        \"▁mysterious\",\n        -12.15522575378418\n      ],\n      [\n        \"▁Degree\",\n        -12.155234336853027\n      ],\n      [\n        \"▁fate\",\n        -12.155242919921875\n      ],\n      [\n        \"▁transplant\",\n        -12.155281066894531\n      ],\n      [\n        \"▁samedi\",\n        -12.155400276184082\n      ],\n      [\n        \"unit\",\n        -12.155519485473633\n      ],\n      [\n        \"▁moyenne\",\n        -12.155611991882324\n      ],\n      [\n        \"▁Liverpool\",\n        -12.155614852905273\n      ],\n      [\n        \"▁Champions\",\n        -12.155728340148926\n      ],\n      [\n        \"zzle\",\n        -12.155824661254883\n      ],\n      [\n        \"▁arena\",\n        -12.156228065490723\n      ],\n      [\n        \"▁Pipe\",\n        -12.15633487701416\n      ],\n      [\n        \"▁waterproof\",\n        -12.156356811523438\n      ],\n      [\n        \"▁eternal\",\n        -12.156463623046875\n      ],\n      [\n        \"Whenever\",\n        -12.156503677368164\n      ],\n      [\n        \"▁Hop\",\n        -12.156535148620605\n      ],\n      [\n        \"▁Betrieb\",\n        -12.156816482543945\n      ],\n      [\n        \"gne\",\n        -12.15692138671875\n      ],\n      [\n        \"▁spe\",\n        -12.156975746154785\n      ],\n      [\n        \"▁Corner\",\n        -12.157078742980957\n      ],\n      [\n        \"▁devenir\",\n        -12.157118797302246\n      ],\n      [\n        \"ambiance\",\n        -12.157144546508789\n      ],\n      [\n        \"▁Graham\",\n        -12.157200813293457\n      ],\n      [\n        \"▁desires\",\n        -12.157289505004883\n      ],\n      [\n        \"▁Applications\",\n        -12.157291412353516\n      ],\n      [\n        \"▁genutzt\",\n        -12.157477378845215\n      ],\n      [\n        \"tek\",\n        -12.157612800598145\n      ],\n      [\n        \"▁Career\",\n        -12.157641410827637\n      ],\n      [\n        \"▁staple\",\n        -12.157695770263672\n      ],\n      [\n        \"▁Dodge\",\n        -12.157817840576172\n      ],\n      [\n        \"▁strictly\",\n        -12.157889366149902\n      ],\n      [\n        \"▁Gruppen\",\n        -12.157952308654785\n      ],\n      [\n        \"▁Finanz\",\n        -12.157981872558594\n      ],\n      [\n        \"▁sporting\",\n        -12.15809440612793\n      ],\n      [\n        \"▁Wieder\",\n        -12.158127784729004\n      ],\n      [\n        \"anny\",\n        -12.158208847045898\n      ],\n      [\n        \"▁bucura\",\n        -12.158233642578125\n      ],\n      [\n        \"▁Pest\",\n        -12.15824031829834\n      ],\n      [\n        \"▁circles\",\n        -12.158246994018555\n      ],\n      [\n        \"▁richtige\",\n        -12.158309936523438\n      ],\n      [\n        \"▁cycles\",\n        -12.158379554748535\n      ],\n      [\n        \"static\",\n        -12.15845012664795\n      ],\n      [\n        \"lasting\",\n        -12.15847396850586\n      ],\n      [\n        \"▁calcium\",\n        -12.158549308776855\n      ],\n      [\n        \"▁digest\",\n        -12.158697128295898\n      ],\n      [\n        \"Enfin\",\n        -12.158865928649902\n      ],\n      [\n        \"▁stressful\",\n        -12.158951759338379\n      ],\n      [\n        \"▁schemes\",\n        -12.158981323242188\n      ],\n      [\n        \"▁décision\",\n        -12.158987045288086\n      ],\n      [\n        \"▁comercial\",\n        -12.15907096862793\n      ],\n      [\n        \"işti\",\n        -12.159098625183105\n      ],\n      [\n        \"▁Comic\",\n        -12.15910816192627\n      ],\n      [\n        \"▁extensions\",\n        -12.159140586853027\n      ],\n      [\n        \"▁Sieg\",\n        -12.159168243408203\n      ],\n      [\n        \"▁pine\",\n        -12.15919017791748\n      ],\n      [\n        \"ieß\",\n        -12.159272193908691\n      ],\n      [\n        \"▁Images\",\n        -12.159427642822266\n      ],\n      [\n        \"▁Mensch\",\n        -12.159668922424316\n      ],\n      [\n        \"Pap\",\n        -12.159773826599121\n      ],\n      [\n        \"▁crops\",\n        -12.15994930267334\n      ],\n      [\n        \"▁sheep\",\n        -12.159996032714844\n      ],\n      [\n        \"▁istoric\",\n        -12.160001754760742\n      ],\n      [\n        \"▁Assessment\",\n        -12.160035133361816\n      ],\n      [\n        \"▁mounting\",\n        -12.16035270690918\n      ],\n      [\n        \"wirken\",\n        -12.160469055175781\n      ],\n      [\n        \"▁augment\",\n        -12.160469055175781\n      ],\n      [\n        \"▁picioare\",\n        -12.160542488098145\n      ],\n      [\n        \"organisme\",\n        -12.160590171813965\n      ],\n      [\n        \"▁Monitor\",\n        -12.16060733795166\n      ],\n      [\n        \"▁celles\",\n        -12.160642623901367\n      ],\n      [\n        \"▁Maison\",\n        -12.160709381103516\n      ],\n      [\n        \"notified\",\n        -12.160783767700195\n      ],\n      [\n        \"▁chew\",\n        -12.160831451416016\n      ],\n      [\n        \"▁bleu\",\n        -12.16083812713623\n      ],\n      [\n        \"dow\",\n        -12.160844802856445\n      ],\n      [\n        \"▁Grav\",\n        -12.16097354888916\n      ],\n      [\n        \"▁curtains\",\n        -12.160975456237793\n      ],\n      [\n        \"▁Campus\",\n        -12.161076545715332\n      ],\n      [\n        \"▁controversial\",\n        -12.161087036132812\n      ],\n      [\n        \"▁soutien\",\n        -12.161189079284668\n      ],\n      [\n        \"▁Dell\",\n        -12.1613187789917\n      ],\n      [\n        \"▁instrumental\",\n        -12.161431312561035\n      ],\n      [\n        \"▁Nan\",\n        -12.161514282226562\n      ],\n      [\n        \"▁prom\",\n        -12.161520957946777\n      ],\n      [\n        \"▁spatial\",\n        -12.161523818969727\n      ],\n      [\n        \"Similarly\",\n        -12.161558151245117\n      ],\n      [\n        \"▁Gala\",\n        -12.161601066589355\n      ],\n      [\n        \"ultimul\",\n        -12.16162109375\n      ],\n      [\n        \"▁Vom\",\n        -12.161761283874512\n      ],\n      [\n        \"▁Foot\",\n        -12.161784172058105\n      ],\n      [\n        \"bike\",\n        -12.1618013381958\n      ],\n      [\n        \"▁acids\",\n        -12.161979675292969\n      ],\n      [\n        \"entend\",\n        -12.162002563476562\n      ],\n      [\n        \"ivă\",\n        -12.162040710449219\n      ],\n      [\n        \"▁Weitere\",\n        -12.162124633789062\n      ],\n      [\n        \"▁vitamins\",\n        -12.162131309509277\n      ],\n      [\n        \"▁enhancement\",\n        -12.16234016418457\n      ],\n      [\n        \"▁Cruise\",\n        -12.162367820739746\n      ],\n      [\n        \"assemble\",\n        -12.162385940551758\n      ],\n      [\n        \"▁spécifique\",\n        -12.162459373474121\n      ],\n      [\n        \"affaires\",\n        -12.16261100769043\n      ],\n      [\n        \"▁indispensable\",\n        -12.1626558303833\n      ],\n      [\n        \"▁logistics\",\n        -12.16283130645752\n      ],\n      [\n        \"▁manche\",\n        -12.162919044494629\n      ],\n      [\n        \"▁dealt\",\n        -12.16297435760498\n      ],\n      [\n        \"▁favorable\",\n        -12.163036346435547\n      ],\n      [\n        \"▁unwanted\",\n        -12.163047790527344\n      ],\n      [\n        \"▁handmade\",\n        -12.163065910339355\n      ],\n      [\n        \"▁Regi\",\n        -12.163102149963379\n      ],\n      [\n        \"safe\",\n        -12.163134574890137\n      ],\n      [\n        \"persoanele\",\n        -12.163202285766602\n      ],\n      [\n        \"▁destinat\",\n        -12.163252830505371\n      ],\n      [\n        \"▁Maxi\",\n        -12.163299560546875\n      ],\n      [\n        \"▁salmon\",\n        -12.163454055786133\n      ],\n      [\n        \"wag\",\n        -12.163578033447266\n      ],\n      [\n        \"210\",\n        -12.163769721984863\n      ],\n      [\n        \"▁warned\",\n        -12.163865089416504\n      ],\n      [\n        \"läuft\",\n        -12.16386604309082\n      ],\n      [\n        \"agging\",\n        -12.163931846618652\n      ],\n      [\n        \"▁responsabil\",\n        -12.16398811340332\n      ],\n      [\n        \"▁presse\",\n        -12.164271354675293\n      ],\n      [\n        \"▁amis\",\n        -12.164305686950684\n      ],\n      [\n        \"▁rolls\",\n        -12.164377212524414\n      ],\n      [\n        \"control\",\n        -12.164405822753906\n      ],\n      [\n        \"▁Manufacturer\",\n        -12.164422988891602\n      ],\n      [\n        \"hnen\",\n        -12.164449691772461\n      ],\n      [\n        \"▁buget\",\n        -12.164546012878418\n      ],\n      [\n        \"OW\",\n        -12.16467571258545\n      ],\n      [\n        \"etro\",\n        -12.164745330810547\n      ],\n      [\n        \"▁communauté\",\n        -12.164837837219238\n      ],\n      [\n        \"unci\",\n        -12.164944648742676\n      ],\n      [\n        \"▁Chine\",\n        -12.164952278137207\n      ],\n      [\n        \"combines\",\n        -12.16501235961914\n      ],\n      [\n        \"▁learners\",\n        -12.165046691894531\n      ],\n      [\n        \"STE\",\n        -12.165055274963379\n      ],\n      [\n        \"ckel\",\n        -12.16511344909668\n      ],\n      [\n        \"Service\",\n        -12.165169715881348\n      ],\n      [\n        \"▁veröffentlicht\",\n        -12.165209770202637\n      ],\n      [\n        \"besides\",\n        -12.165266036987305\n      ],\n      [\n        \"getragen\",\n        -12.165349960327148\n      ],\n      [\n        \"▁opponent\",\n        -12.165521621704102\n      ],\n      [\n        \"▁volum\",\n        -12.165533065795898\n      ],\n      [\n        \"▁confusing\",\n        -12.165802001953125\n      ],\n      [\n        \"invasive\",\n        -12.165813446044922\n      ],\n      [\n        \"▁conseils\",\n        -12.165881156921387\n      ],\n      [\n        \"▁vibe\",\n        -12.165928840637207\n      ],\n      [\n        \"View\",\n        -12.166062355041504\n      ],\n      [\n        \"oară\",\n        -12.166086196899414\n      ],\n      [\n        \"Link\",\n        -12.166261672973633\n      ],\n      [\n        \"▁holy\",\n        -12.166261672973633\n      ],\n      [\n        \"▁crema\",\n        -12.16629409790039\n      ],\n      [\n        \"▁Michelle\",\n        -12.166303634643555\n      ],\n      [\n        \"▁Wien\",\n        -12.166383743286133\n      ],\n      [\n        \"▁undertake\",\n        -12.166404724121094\n      ],\n      [\n        \"▁Photograph\",\n        -12.166421890258789\n      ],\n      [\n        \"humain\",\n        -12.16645336151123\n      ],\n      [\n        \"▁Hang\",\n        -12.166545867919922\n      ],\n      [\n        \"designed\",\n        -12.16657829284668\n      ],\n      [\n        \"▁analyses\",\n        -12.166614532470703\n      ],\n      [\n        \"▁compose\",\n        -12.166653633117676\n      ],\n      [\n        \"▁substantially\",\n        -12.166765213012695\n      ],\n      [\n        \"▁marking\",\n        -12.166772842407227\n      ],\n      [\n        \"▁campagne\",\n        -12.166826248168945\n      ],\n      [\n        \"▁$15\",\n        -12.166828155517578\n      ],\n      [\n        \"pharma\",\n        -12.166972160339355\n      ],\n      [\n        \"▁playoff\",\n        -12.1669921875\n      ],\n      [\n        \"▁momentum\",\n        -12.167091369628906\n      ],\n      [\n        \"Temp\",\n        -12.16714096069336\n      ],\n      [\n        \"▁vinegar\",\n        -12.167143821716309\n      ],\n      [\n        \"▁descriptions\",\n        -12.167581558227539\n      ],\n      [\n        \"christ\",\n        -12.167656898498535\n      ],\n      [\n        \"wore\",\n        -12.16773509979248\n      ],\n      [\n        \"ITY\",\n        -12.167768478393555\n      ],\n      [\n        \"stehen\",\n        -12.167771339416504\n      ],\n      [\n        \"▁insulation\",\n        -12.1677827835083\n      ],\n      [\n        \"grav\",\n        -12.167842864990234\n      ],\n      [\n        \"2.2\",\n        -12.167887687683105\n      ],\n      [\n        \"▁Explore\",\n        -12.168028831481934\n      ],\n      [\n        \"▁dye\",\n        -12.168127059936523\n      ],\n      [\n        \"stair\",\n        -12.168155670166016\n      ],\n      [\n        \"artisan\",\n        -12.168207168579102\n      ],\n      [\n        \"▁zoom\",\n        -12.168285369873047\n      ],\n      [\n        \"▁turkey\",\n        -12.168573379516602\n      ],\n      [\n        \"▁locksmith\",\n        -12.168577194213867\n      ],\n      [\n        \"▁sewing\",\n        -12.168610572814941\n      ],\n      [\n        \"▁modeling\",\n        -12.168627738952637\n      ],\n      [\n        \"lied\",\n        -12.16870403289795\n      ],\n      [\n        \"adel\",\n        -12.168773651123047\n      ],\n      [\n        \"▁Going\",\n        -12.168785095214844\n      ],\n      [\n        \"WH\",\n        -12.168798446655273\n      ],\n      [\n        \"▁deserves\",\n        -12.168919563293457\n      ],\n      [\n        \"▁arriving\",\n        -12.168960571289062\n      ],\n      [\n        \"OFF\",\n        -12.169039726257324\n      ],\n      [\n        \"torului\",\n        -12.169109344482422\n      ],\n      [\n        \"ucked\",\n        -12.16921615600586\n      ],\n      [\n        \"▁approached\",\n        -12.169351577758789\n      ],\n      [\n        \"▁élevé\",\n        -12.169354438781738\n      ],\n      [\n        \"▁quotidien\",\n        -12.169416427612305\n      ],\n      [\n        \"▁derzeit\",\n        -12.16942024230957\n      ],\n      [\n        \"nutzt\",\n        -12.169656753540039\n      ],\n      [\n        \"science\",\n        -12.169729232788086\n      ],\n      [\n        \"▁Emma\",\n        -12.169841766357422\n      ],\n      [\n        \"▁builds\",\n        -12.169879913330078\n      ],\n      [\n        \"▁Logo\",\n        -12.169949531555176\n      ],\n      [\n        \"▁clouds\",\n        -12.170061111450195\n      ],\n      [\n        \"inflammatory\",\n        -12.170141220092773\n      ],\n      [\n        \"țiuni\",\n        -12.170199394226074\n      ],\n      [\n        \"▁Cisco\",\n        -12.17025089263916\n      ],\n      [\n        \"▁würden\",\n        -12.170254707336426\n      ],\n      [\n        \"▁Shaw\",\n        -12.170256614685059\n      ],\n      [\n        \"▁Ell\",\n        -12.170266151428223\n      ],\n      [\n        \"avance\",\n        -12.1703519821167\n      ],\n      [\n        \"anglais\",\n        -12.170365333557129\n      ],\n      [\n        \"weil\",\n        -12.170368194580078\n      ],\n      [\n        \"▁singura\",\n        -12.170464515686035\n      ],\n      [\n        \"ACK\",\n        -12.170489311218262\n      ],\n      [\n        \"likewise\",\n        -12.170522689819336\n      ],\n      [\n        \"ographie\",\n        -12.170646667480469\n      ],\n      [\n        \"liegen\",\n        -12.17088508605957\n      ],\n      [\n        \"▁Crow\",\n        -12.170964241027832\n      ],\n      [\n        \"▁unic\",\n        -12.171187400817871\n      ],\n      [\n        \"▁Ale\",\n        -12.171241760253906\n      ],\n      [\n        \"▁păstr\",\n        -12.17125129699707\n      ],\n      [\n        \"▁informal\",\n        -12.171337127685547\n      ],\n      [\n        \"650\",\n        -12.17136287689209\n      ],\n      [\n        \"Benz\",\n        -12.171489715576172\n      ],\n      [\n        \"▁antenna\",\n        -12.171540260314941\n      ],\n      [\n        \"▁pagini\",\n        -12.171552658081055\n      ],\n      [\n        \"▁lansat\",\n        -12.171561241149902\n      ],\n      [\n        \"▁Fans\",\n        -12.171576499938965\n      ],\n      [\n        \"taine\",\n        -12.171822547912598\n      ],\n      [\n        \"JO\",\n        -12.171853065490723\n      ],\n      [\n        \"▁Tips\",\n        -12.172091484069824\n      ],\n      [\n        \"cir\",\n        -12.172130584716797\n      ],\n      [\n        \"nou\",\n        -12.172384262084961\n      ],\n      [\n        \"▁planted\",\n        -12.17241382598877\n      ],\n      [\n        \"▁steering\",\n        -12.172423362731934\n      ],\n      [\n        \"▁Waren\",\n        -12.172475814819336\n      ],\n      [\n        \"▁clearance\",\n        -12.172515869140625\n      ],\n      [\n        \"▁Moscow\",\n        -12.172516822814941\n      ],\n      [\n        \"▁Faith\",\n        -12.172534942626953\n      ],\n      [\n        \"▁Pizza\",\n        -12.172572135925293\n      ],\n      [\n        \"▁Tank\",\n        -12.17273998260498\n      ],\n      [\n        \"QUE\",\n        -12.172783851623535\n      ],\n      [\n        \"▁studii\",\n        -12.172804832458496\n      ],\n      [\n        \"éné\",\n        -12.172829627990723\n      ],\n      [\n        \"▁guerre\",\n        -12.1728515625\n      ],\n      [\n        \"▁celebr\",\n        -12.173083305358887\n      ],\n      [\n        \"▁Factory\",\n        -12.173111915588379\n      ],\n      [\n        \"▁Browse\",\n        -12.173198699951172\n      ],\n      [\n        \"▁Request\",\n        -12.17323112487793\n      ],\n      [\n        \"▁taxpayer\",\n        -12.173311233520508\n      ],\n      [\n        \"▁assert\",\n        -12.173562049865723\n      ],\n      [\n        \"unternehmen\",\n        -12.173588752746582\n      ],\n      [\n        \"▁Ergebnis\",\n        -12.173687934875488\n      ],\n      [\n        \"▁Antwort\",\n        -12.173727035522461\n      ],\n      [\n        \"▁Photography\",\n        -12.173808097839355\n      ],\n      [\n        \"▁plă\",\n        -12.173866271972656\n      ],\n      [\n        \"IME\",\n        -12.173982620239258\n      ],\n      [\n        \"▁prochaine\",\n        -12.174074172973633\n      ],\n      [\n        \"ajouter\",\n        -12.174103736877441\n      ],\n      [\n        \"▁buffet\",\n        -12.174227714538574\n      ],\n      [\n        \"▁pixels\",\n        -12.174239158630371\n      ],\n      [\n        \"▁pledge\",\n        -12.174250602722168\n      ],\n      [\n        \"▁Inhalt\",\n        -12.17435359954834\n      ],\n      [\n        \"▁chase\",\n        -12.174384117126465\n      ],\n      [\n        \"Flow\",\n        -12.174493789672852\n      ],\n      [\n        \"▁melodi\",\n        -12.174872398376465\n      ],\n      [\n        \"▁Abu\",\n        -12.174991607666016\n      ],\n      [\n        \"▁1979\",\n        -12.175042152404785\n      ],\n      [\n        \"▁Photos\",\n        -12.175042152404785\n      ],\n      [\n        \"▁qualifications\",\n        -12.175148963928223\n      ],\n      [\n        \"▁zis\",\n        -12.175213813781738\n      ],\n      [\n        \"IAL\",\n        -12.175354957580566\n      ],\n      [\n        \"▁lender\",\n        -12.175390243530273\n      ],\n      [\n        \"▁indiferent\",\n        -12.175494194030762\n      ],\n      [\n        \"▁behaviors\",\n        -12.175506591796875\n      ],\n      [\n        \"▁flowing\",\n        -12.175531387329102\n      ],\n      [\n        \"▁zweite\",\n        -12.1756010055542\n      ],\n      [\n        \"abl\",\n        -12.175765037536621\n      ],\n      [\n        \"Schw\",\n        -12.176004409790039\n      ],\n      [\n        \"opi\",\n        -12.176030158996582\n      ],\n      [\n        \"ggi\",\n        -12.176164627075195\n      ],\n      [\n        \"▁depart\",\n        -12.176314353942871\n      ],\n      [\n        \"▁garde\",\n        -12.17640209197998\n      ],\n      [\n        \"▁tuition\",\n        -12.176490783691406\n      ],\n      [\n        \"fälle\",\n        -12.17650032043457\n      ],\n      [\n        \"▁determina\",\n        -12.17652702331543\n      ],\n      [\n        \"▁spice\",\n        -12.176627159118652\n      ],\n      [\n        \"▁petites\",\n        -12.176777839660645\n      ],\n      [\n        \"kot\",\n        -12.176973342895508\n      ],\n      [\n        \"▁intersection\",\n        -12.177242279052734\n      ],\n      [\n        \"hak\",\n        -12.177248001098633\n      ],\n      [\n        \"▁autumn\",\n        -12.177284240722656\n      ],\n      [\n        \"▁verbunden\",\n        -12.177284240722656\n      ],\n      [\n        \"▁ferme\",\n        -12.177287101745605\n      ],\n      [\n        \"PN\",\n        -12.17733097076416\n      ],\n      [\n        \"▁insurer\",\n        -12.177390098571777\n      ],\n      [\n        \"arten\",\n        -12.177401542663574\n      ],\n      [\n        \"▁Turkish\",\n        -12.177715301513672\n      ],\n      [\n        \"▁shoulders\",\n        -12.177732467651367\n      ],\n      [\n        \"=>\",\n        -12.177742004394531\n      ],\n      [\n        \"▁Nike\",\n        -12.177760124206543\n      ],\n      [\n        \"uire\",\n        -12.177763938903809\n      ],\n      [\n        \"▁Chile\",\n        -12.177811622619629\n      ],\n      [\n        \"jon\",\n        -12.177842140197754\n      ],\n      [\n        \"▁fragrance\",\n        -12.177884101867676\n      ],\n      [\n        \"▁bean\",\n        -12.177908897399902\n      ],\n      [\n        \"ips\",\n        -12.178108215332031\n      ],\n      [\n        \"assuming\",\n        -12.178191184997559\n      ],\n      [\n        \"liens\",\n        -12.178215026855469\n      ],\n      [\n        \"tocmai\",\n        -12.178267478942871\n      ],\n      [\n        \"▁60%\",\n        -12.178301811218262\n      ],\n      [\n        \"ipped\",\n        -12.178384780883789\n      ],\n      [\n        \"DIS\",\n        -12.178473472595215\n      ],\n      [\n        \"▁predicted\",\n        -12.178537368774414\n      ],\n      [\n        \"▁Picture\",\n        -12.178555488586426\n      ],\n      [\n        \"Bahn\",\n        -12.178796768188477\n      ],\n      [\n        \"104\",\n        -12.178854942321777\n      ],\n      [\n        \"tended\",\n        -12.178958892822266\n      ],\n      [\n        \"▁approve\",\n        -12.179031372070312\n      ],\n      [\n        \"▁magasin\",\n        -12.17908000946045\n      ],\n      [\n        \"▁mindset\",\n        -12.179208755493164\n      ],\n      [\n        \"rase\",\n        -12.179363250732422\n      ],\n      [\n        \"grand\",\n        -12.179469108581543\n      ],\n      [\n        \"▁Principal\",\n        -12.17947769165039\n      ],\n      [\n        \"▁informații\",\n        -12.17959976196289\n      ],\n      [\n        \"▁legătur\",\n        -12.179628372192383\n      ],\n      [\n        \"▁Farb\",\n        -12.179692268371582\n      ],\n      [\n        \"▁Dieu\",\n        -12.179710388183594\n      ],\n      [\n        \"▁alliance\",\n        -12.180378913879395\n      ],\n      [\n        \"weiligen\",\n        -12.180397987365723\n      ],\n      [\n        \"▁Câ\",\n        -12.18048095703125\n      ],\n      [\n        \"▁counseling\",\n        -12.180521011352539\n      ],\n      [\n        \"▁traveled\",\n        -12.180533409118652\n      ],\n      [\n        \"▁translated\",\n        -12.180558204650879\n      ],\n      [\n        \"▁carne\",\n        -12.180679321289062\n      ],\n      [\n        \"aked\",\n        -12.180707931518555\n      ],\n      [\n        \"▁LCD\",\n        -12.180868148803711\n      ],\n      [\n        \"▁Folge\",\n        -12.180909156799316\n      ],\n      [\n        \"▁Erfahrungen\",\n        -12.18093204498291\n      ],\n      [\n        \"▁1981\",\n        -12.18106460571289\n      ],\n      [\n        \"▁răspuns\",\n        -12.181075096130371\n      ],\n      [\n        \"itori\",\n        -12.18117618560791\n      ],\n      [\n        \"▁elementary\",\n        -12.181200981140137\n      ],\n      [\n        \"▁vorbei\",\n        -12.18127727508545\n      ],\n      [\n        \"▁cargo\",\n        -12.181361198425293\n      ],\n      [\n        \"disciplinary\",\n        -12.18140983581543\n      ],\n      [\n        \"WR\",\n        -12.181492805480957\n      ],\n      [\n        \"▁counterpart\",\n        -12.18162727355957\n      ],\n      [\n        \"family\",\n        -12.181641578674316\n      ],\n      [\n        \"▁viață\",\n        -12.181644439697266\n      ],\n      [\n        \"▁Definition\",\n        -12.18167495727539\n      ],\n      [\n        \"▁Cow\",\n        -12.18171501159668\n      ],\n      [\n        \"fällig\",\n        -12.182003021240234\n      ],\n      [\n        \"▁Sicht\",\n        -12.182025909423828\n      ],\n      [\n        \"▁mum\",\n        -12.182145118713379\n      ],\n      [\n        \"▁Mediterranean\",\n        -12.182275772094727\n      ],\n      [\n        \"nev\",\n        -12.182278633117676\n      ],\n      [\n        \"bü\",\n        -12.182293891906738\n      ],\n      [\n        \"▁slave\",\n        -12.182293891906738\n      ],\n      [\n        \"schnitt\",\n        -12.18233871459961\n      ],\n      [\n        \"▁firme\",\n        -12.182430267333984\n      ],\n      [\n        \"▁spill\",\n        -12.182454109191895\n      ],\n      [\n        \"▁wages\",\n        -12.182592391967773\n      ],\n      [\n        \"▁refine\",\n        -12.182615280151367\n      ],\n      [\n        \"▁upgraded\",\n        -12.182632446289062\n      ],\n      [\n        \"▁gospel\",\n        -12.182698249816895\n      ],\n      [\n        \"▁quartier\",\n        -12.182744979858398\n      ],\n      [\n        \"▁#2\",\n        -12.182772636413574\n      ],\n      [\n        \"▁Situation\",\n        -12.18298625946045\n      ],\n      [\n        \"▁suggesting\",\n        -12.183075904846191\n      ],\n      [\n        \"▁acne\",\n        -12.183113098144531\n      ],\n      [\n        \"▁Murray\",\n        -12.183337211608887\n      ],\n      [\n        \"▁Ian\",\n        -12.183469772338867\n      ],\n      [\n        \"hören\",\n        -12.183489799499512\n      ],\n      [\n        \"bia\",\n        -12.183603286743164\n      ],\n      [\n        \"▁Bewegung\",\n        -12.183684349060059\n      ],\n      [\n        \"▁abzu\",\n        -12.18379020690918\n      ],\n      [\n        \"reveals\",\n        -12.183795928955078\n      ],\n      [\n        \"friend\",\n        -12.184025764465332\n      ],\n      [\n        \"▁Connecticut\",\n        -12.18407917022705\n      ],\n      [\n        \"▁Testament\",\n        -12.184151649475098\n      ],\n      [\n        \"▁Lit\",\n        -12.184199333190918\n      ],\n      [\n        \"▁Ship\",\n        -12.184209823608398\n      ],\n      [\n        \"▁minunat\",\n        -12.184344291687012\n      ],\n      [\n        \"▁Moving\",\n        -12.184346199035645\n      ],\n      [\n        \"▁Device\",\n        -12.184486389160156\n      ],\n      [\n        \"▁Bake\",\n        -12.18453598022461\n      ],\n      [\n        \"▁qualification\",\n        -12.184633255004883\n      ],\n      [\n        \"▁challenged\",\n        -12.184640884399414\n      ],\n      [\n        \"▁Hinweis\",\n        -12.184721946716309\n      ],\n      [\n        \"▁sechs\",\n        -12.184769630432129\n      ],\n      [\n        \"та\",\n        -12.184903144836426\n      ],\n      [\n        \"120\",\n        -12.184904098510742\n      ],\n      [\n        \"licht\",\n        -12.184940338134766\n      ],\n      [\n        \"▁supervision\",\n        -12.185022354125977\n      ],\n      [\n        \"▁milestone\",\n        -12.18503189086914\n      ],\n      [\n        \"zeig\",\n        -12.185050964355469\n      ],\n      [\n        \"▁emphasize\",\n        -12.185224533081055\n      ],\n      [\n        \"▁complain\",\n        -12.185232162475586\n      ],\n      [\n        \"sack\",\n        -12.185341835021973\n      ],\n      [\n        \"▁rebuild\",\n        -12.185445785522461\n      ],\n      [\n        \"projekt\",\n        -12.18548583984375\n      ],\n      [\n        \"▁saint\",\n        -12.185644149780273\n      ],\n      [\n        \"lette\",\n        -12.185752868652344\n      ],\n      [\n        \"rade\",\n        -12.18580150604248\n      ],\n      [\n        \"▁pacient\",\n        -12.185893058776855\n      ],\n      [\n        \"signed\",\n        -12.186169624328613\n      ],\n      [\n        \"▁mil\",\n        -12.186261177062988\n      ],\n      [\n        \"cali\",\n        -12.186266899108887\n      ],\n      [\n        \"▁brochure\",\n        -12.186487197875977\n      ],\n      [\n        \"▁Bulgaria\",\n        -12.186488151550293\n      ],\n      [\n        \"Har\",\n        -12.186623573303223\n      ],\n      [\n        \"DH\",\n        -12.186697006225586\n      ],\n      [\n        \"▁jumping\",\n        -12.186712265014648\n      ],\n      [\n        \"ären\",\n        -12.186732292175293\n      ],\n      [\n        \"▁tactics\",\n        -12.186911582946777\n      ],\n      [\n        \"▁soleil\",\n        -12.187030792236328\n      ],\n      [\n        \"lessness\",\n        -12.18705940246582\n      ],\n      [\n        \"steigen\",\n        -12.187085151672363\n      ],\n      [\n        \"▁Brief\",\n        -12.187117576599121\n      ],\n      [\n        \"▁Oz\",\n        -12.18718433380127\n      ],\n      [\n        \"credit\",\n        -12.187239646911621\n      ],\n      [\n        \"glass\",\n        -12.187241554260254\n      ],\n      [\n        \"▁Baltimore\",\n        -12.187292098999023\n      ],\n      [\n        \"varies\",\n        -12.187445640563965\n      ],\n      [\n        \"sourced\",\n        -12.187575340270996\n      ],\n      [\n        \"▁documented\",\n        -12.187604904174805\n      ],\n      [\n        \"▁devine\",\n        -12.187664985656738\n      ],\n      [\n        \"möglichst\",\n        -12.187732696533203\n      ],\n      [\n        \"▁früher\",\n        -12.187756538391113\n      ],\n      [\n        \"outefois\",\n        -12.18790054321289\n      ],\n      [\n        \"▁Engagement\",\n        -12.187934875488281\n      ],\n      [\n        \"▁anumit\",\n        -12.18806266784668\n      ],\n      [\n        \"▁1930\",\n        -12.188186645507812\n      ],\n      [\n        \"▁Aufgaben\",\n        -12.188214302062988\n      ],\n      [\n        \"▁lineup\",\n        -12.188227653503418\n      ],\n      [\n        \"▁Cad\",\n        -12.188349723815918\n      ],\n      [\n        \"améliorer\",\n        -12.188437461853027\n      ],\n      [\n        \"▁februarie\",\n        -12.188499450683594\n      ],\n      [\n        \"▁cancellation\",\n        -12.188529968261719\n      ],\n      [\n        \"▁locks\",\n        -12.188577651977539\n      ],\n      [\n        \"▁modèles\",\n        -12.188711166381836\n      ],\n      [\n        \"▁breakdown\",\n        -12.188748359680176\n      ],\n      [\n        \"Ticket\",\n        -12.188810348510742\n      ],\n      [\n        \"▁Chen\",\n        -12.188855171203613\n      ],\n      [\n        \"▁Competition\",\n        -12.188910484313965\n      ],\n      [\n        \"▁median\",\n        -12.18896770477295\n      ],\n      [\n        \"rische\",\n        -12.189159393310547\n      ],\n      [\n        \"▁multipli\",\n        -12.189269065856934\n      ],\n      [\n        \"▁Belgium\",\n        -12.189305305480957\n      ],\n      [\n        \"▁Physical\",\n        -12.189308166503906\n      ],\n      [\n        \"▁parameter\",\n        -12.189432144165039\n      ],\n      [\n        \"▁carrot\",\n        -12.189435005187988\n      ],\n      [\n        \"▁mandat\",\n        -12.189617156982422\n      ],\n      [\n        \"▁towel\",\n        -12.189697265625\n      ],\n      [\n        \"▁insured\",\n        -12.189825057983398\n      ],\n      [\n        \"PRI\",\n        -12.189868927001953\n      ],\n      [\n        \"etter\",\n        -12.189915657043457\n      ],\n      [\n        \"▁Oder\",\n        -12.190083503723145\n      ],\n      [\n        \"argued\",\n        -12.190171241760254\n      ],\n      [\n        \"FB\",\n        -12.190196990966797\n      ],\n      [\n        \"versicherung\",\n        -12.190197944641113\n      ],\n      [\n        \"abila\",\n        -12.190251350402832\n      ],\n      [\n        \"▁Coin\",\n        -12.190324783325195\n      ],\n      [\n        \"around\",\n        -12.19050121307373\n      ],\n      [\n        \"▁Lorsqu\",\n        -12.190773963928223\n      ],\n      [\n        \"valent\",\n        -12.190918922424316\n      ],\n      [\n        \"▁weltweit\",\n        -12.19092082977295\n      ],\n      [\n        \"Mod\",\n        -12.191039085388184\n      ],\n      [\n        \"▁defect\",\n        -12.191044807434082\n      ],\n      [\n        \"ibly\",\n        -12.191136360168457\n      ],\n      [\n        \"▁Juan\",\n        -12.191153526306152\n      ],\n      [\n        \"▁Jur\",\n        -12.191171646118164\n      ],\n      [\n        \"large\",\n        -12.191307067871094\n      ],\n      [\n        \"▁indicators\",\n        -12.191461563110352\n      ],\n      [\n        \"invest\",\n        -12.19168472290039\n      ],\n      [\n        \"▁rehabilitation\",\n        -12.191705703735352\n      ],\n      [\n        \"nag\",\n        -12.191823959350586\n      ],\n      [\n        \"▁Grundlage\",\n        -12.191829681396484\n      ],\n      [\n        \"▁Strategy\",\n        -12.192131042480469\n      ],\n      [\n        \"▁supérieur\",\n        -12.192173957824707\n      ],\n      [\n        \"▁orbit\",\n        -12.192281723022461\n      ],\n      [\n        \"▁Auftrag\",\n        -12.192360877990723\n      ],\n      [\n        \"▁Verb\",\n        -12.192441940307617\n      ],\n      [\n        \"ANA\",\n        -12.19256591796875\n      ],\n      [\n        \"▁trimis\",\n        -12.192611694335938\n      ],\n      [\n        \"▁Rub\",\n        -12.192704200744629\n      ],\n      [\n        \"institu\",\n        -12.192732810974121\n      ],\n      [\n        \"▁inspect\",\n        -12.1927490234375\n      ],\n      [\n        \"▁Princess\",\n        -12.192757606506348\n      ],\n      [\n        \"especially\",\n        -12.192777633666992\n      ],\n      [\n        \"▁combinations\",\n        -12.192793846130371\n      ],\n      [\n        \"▁gaze\",\n        -12.192842483520508\n      ],\n      [\n        \"elemente\",\n        -12.192970275878906\n      ],\n      [\n        \"deal\",\n        -12.192980766296387\n      ],\n      [\n        \"polis\",\n        -12.193157196044922\n      ],\n      [\n        \"shaw\",\n        -12.193168640136719\n      ],\n      [\n        \"▁Republicans\",\n        -12.193203926086426\n      ],\n      [\n        \"aded\",\n        -12.193244934082031\n      ],\n      [\n        \"▁Louisiana\",\n        -12.193364143371582\n      ],\n      [\n        \"▁Ville\",\n        -12.193368911743164\n      ],\n      [\n        \"▁afterwards\",\n        -12.193389892578125\n      ],\n      [\n        \"ONG\",\n        -12.193608283996582\n      ],\n      [\n        \"▁dryer\",\n        -12.193636894226074\n      ],\n      [\n        \"▁Manhattan\",\n        -12.19374942779541\n      ],\n      [\n        \"▁recomanda\",\n        -12.19412612915039\n      ],\n      [\n        \"▁juca\",\n        -12.194253921508789\n      ],\n      [\n        \"▁Crown\",\n        -12.194260597229004\n      ],\n      [\n        \"▁flesh\",\n        -12.194347381591797\n      ],\n      [\n        \"sichtig\",\n        -12.194358825683594\n      ],\n      [\n        \"▁rempli\",\n        -12.19437026977539\n      ],\n      [\n        \"▁deposits\",\n        -12.19438362121582\n      ],\n      [\n        \"▁Voll\",\n        -12.194599151611328\n      ],\n      [\n        \"▁analysts\",\n        -12.194672584533691\n      ],\n      [\n        \"▁Krieg\",\n        -12.19484806060791\n      ],\n      [\n        \"▁Rosa\",\n        -12.19495964050293\n      ],\n      [\n        \"▁Supply\",\n        -12.194964408874512\n      ],\n      [\n        \"GF\",\n        -12.19497013092041\n      ],\n      [\n        \"idad\",\n        -12.195098876953125\n      ],\n      [\n        \"▁flush\",\n        -12.195103645324707\n      ],\n      [\n        \"▁circular\",\n        -12.195355415344238\n      ],\n      [\n        \"▁național\",\n        -12.195379257202148\n      ],\n      [\n        \"▁lorsqu\",\n        -12.195441246032715\n      ],\n      [\n        \"▁analyst\",\n        -12.195459365844727\n      ],\n      [\n        \"▁Jahrhundert\",\n        -12.195586204528809\n      ],\n      [\n        \"▁biology\",\n        -12.195713996887207\n      ],\n      [\n        \"copy\",\n        -12.195733070373535\n      ],\n      [\n        \"▁bringt\",\n        -12.195765495300293\n      ],\n      [\n        \"▁Gospel\",\n        -12.195780754089355\n      ],\n      [\n        \"▁sorgen\",\n        -12.195842742919922\n      ],\n      [\n        \"zeichnung\",\n        -12.196181297302246\n      ],\n      [\n        \"chair\",\n        -12.196197509765625\n      ],\n      [\n        \"EB\",\n        -12.19636344909668\n      ],\n      [\n        \"▁Beth\",\n        -12.1964111328125\n      ],\n      [\n        \"115\",\n        -12.196416854858398\n      ],\n      [\n        \"▁Neue\",\n        -12.196479797363281\n      ],\n      [\n        \"▁faible\",\n        -12.196599960327148\n      ],\n      [\n        \"▁methodology\",\n        -12.196603775024414\n      ],\n      [\n        \"spiele\",\n        -12.196647644042969\n      ],\n      [\n        \"▁cherry\",\n        -12.196727752685547\n      ],\n      [\n        \"▁Mak\",\n        -12.196802139282227\n      ],\n      [\n        \"▁volet\",\n        -12.196982383728027\n      ],\n      [\n        \"funk\",\n        -12.197196006774902\n      ],\n      [\n        \"▁aktuelle\",\n        -12.197372436523438\n      ],\n      [\n        \"▁Yahoo\",\n        -12.197408676147461\n      ],\n      [\n        \"▁Zusammenarbeit\",\n        -12.197669982910156\n      ],\n      [\n        \"▁Serve\",\n        -12.197754859924316\n      ],\n      [\n        \"▁simpler\",\n        -12.197978019714355\n      ],\n      [\n        \"intégr\",\n        -12.197990417480469\n      ],\n      [\n        \"ndlich\",\n        -12.198083877563477\n      ],\n      [\n        \"▁actress\",\n        -12.198320388793945\n      ],\n      [\n        \"▁reuse\",\n        -12.198332786560059\n      ],\n      [\n        \"▁reviewing\",\n        -12.198405265808105\n      ],\n      [\n        \"statt\",\n        -12.198457717895508\n      ],\n      [\n        \"▁diving\",\n        -12.198469161987305\n      ],\n      [\n        \"▁Național\",\n        -12.198677062988281\n      ],\n      [\n        \"voi\",\n        -12.19873332977295\n      ],\n      [\n        \"Disc\",\n        -12.198812484741211\n      ],\n      [\n        \"▁Mineral\",\n        -12.19886302947998\n      ],\n      [\n        \"▁emit\",\n        -12.199007034301758\n      ],\n      [\n        \"witz\",\n        -12.199078559875488\n      ],\n      [\n        \"▁forgot\",\n        -12.19909954071045\n      ],\n      [\n        \"▁dim\",\n        -12.199115753173828\n      ],\n      [\n        \"upper\",\n        -12.19947624206543\n      ],\n      [\n        \"sichtlich\",\n        -12.19949722290039\n      ],\n      [\n        \"▁parcours\",\n        -12.199670791625977\n      ],\n      [\n        \"8:00\",\n        -12.199697494506836\n      ],\n      [\n        \"▁keyword\",\n        -12.199701309204102\n      ],\n      [\n        \"▁upgrades\",\n        -12.199763298034668\n      ],\n      [\n        \"kunden\",\n        -12.200177192687988\n      ],\n      [\n        \"▁Seg\",\n        -12.200257301330566\n      ],\n      [\n        \"▁Circle\",\n        -12.200289726257324\n      ],\n      [\n        \"▁ginger\",\n        -12.200336456298828\n      ],\n      [\n        \"mment\",\n        -12.200516700744629\n      ],\n      [\n        \"▁expenditure\",\n        -12.200655937194824\n      ],\n      [\n        \"▁parle\",\n        -12.200693130493164\n      ],\n      [\n        \"▁Counsel\",\n        -12.200722694396973\n      ],\n      [\n        \"▁Gui\",\n        -12.200722694396973\n      ],\n      [\n        \"resident\",\n        -12.20103645324707\n      ],\n      [\n        \"▁benchmark\",\n        -12.20103931427002\n      ],\n      [\n        \"▁Elektro\",\n        -12.201064109802246\n      ],\n      [\n        \"▁réalité\",\n        -12.201064109802246\n      ],\n      [\n        \"▁ridiculous\",\n        -12.201067924499512\n      ],\n      [\n        \"▁necklace\",\n        -12.20108699798584\n      ],\n      [\n        \"nian\",\n        -12.201117515563965\n      ],\n      [\n        \"▁Move\",\n        -12.20113468170166\n      ],\n      [\n        \"▁elevated\",\n        -12.201204299926758\n      ],\n      [\n        \"WE\",\n        -12.201281547546387\n      ],\n      [\n        \"▁Drum\",\n        -12.20132064819336\n      ],\n      [\n        \"▁Delivery\",\n        -12.201350212097168\n      ],\n      [\n        \"indicating\",\n        -12.201452255249023\n      ],\n      [\n        \"▁Benjamin\",\n        -12.201472282409668\n      ],\n      [\n        \"▁Samuel\",\n        -12.2014741897583\n      ],\n      [\n        \"bene\",\n        -12.201666831970215\n      ],\n      [\n        \"▁experienta\",\n        -12.201676368713379\n      ],\n      [\n        \"▁rocket\",\n        -12.201839447021484\n      ],\n      [\n        \"▁fossil\",\n        -12.201883316040039\n      ],\n      [\n        \"▁festive\",\n        -12.20193099975586\n      ],\n      [\n        \"▁conscience\",\n        -12.201964378356934\n      ],\n      [\n        \"▁bacon\",\n        -12.202136993408203\n      ],\n      [\n        \"▁aero\",\n        -12.202159881591797\n      ],\n      [\n        \"public\",\n        -12.202187538146973\n      ],\n      [\n        \"▁zic\",\n        -12.202218055725098\n      ],\n      [\n        \"ombre\",\n        -12.202356338500977\n      ],\n      [\n        \"▁Drain\",\n        -12.202550888061523\n      ],\n      [\n        \"7.5\",\n        -12.202672004699707\n      ],\n      [\n        \"▁Deutschen\",\n        -12.202703475952148\n      ],\n      [\n        \"reportedly\",\n        -12.202754974365234\n      ],\n      [\n        \"▁Français\",\n        -12.203105926513672\n      ],\n      [\n        \"▁enzyme\",\n        -12.203106880187988\n      ],\n      [\n        \"▁inquiry\",\n        -12.203117370605469\n      ],\n      [\n        \"▁presque\",\n        -12.203193664550781\n      ],\n      [\n        \"▁Airlines\",\n        -12.203228950500488\n      ],\n      [\n        \"▁Salon\",\n        -12.203237533569336\n      ],\n      [\n        \"▁Volunteer\",\n        -12.203310012817383\n      ],\n      [\n        \"▁modular\",\n        -12.203349113464355\n      ],\n      [\n        \"ón\",\n        -12.203364372253418\n      ],\n      [\n        \"NH\",\n        -12.203449249267578\n      ],\n      [\n        \"▁souhaite\",\n        -12.203516960144043\n      ],\n      [\n        \"social\",\n        -12.203659057617188\n      ],\n      [\n        \"▁Include\",\n        -12.203729629516602\n      ],\n      [\n        \"▁Decor\",\n        -12.2037992477417\n      ],\n      [\n        \"dded\",\n        -12.203965187072754\n      ],\n      [\n        \"▁Außen\",\n        -12.203969955444336\n      ],\n      [\n        \"rendu\",\n        -12.20412540435791\n      ],\n      [\n        \"▁MBA\",\n        -12.204150199890137\n      ],\n      [\n        \"▁columns\",\n        -12.204155921936035\n      ],\n      [\n        \"▁Wing\",\n        -12.204436302185059\n      ],\n      [\n        \"▁landmark\",\n        -12.204442977905273\n      ],\n      [\n        \"schritt\",\n        -12.204594612121582\n      ],\n      [\n        \"▁désir\",\n        -12.204630851745605\n      ],\n      [\n        \"(5)\",\n        -12.204680442810059\n      ],\n      [\n        \"▁réseaux\",\n        -12.204693794250488\n      ],\n      [\n        \"income\",\n        -12.204710960388184\n      ],\n      [\n        \"▁revised\",\n        -12.204819679260254\n      ],\n      [\n        \"HY\",\n        -12.204863548278809\n      ],\n      [\n        \"▁Explorer\",\n        -12.204873085021973\n      ],\n      [\n        \"▁Lam\",\n        -12.204877853393555\n      ],\n      [\n        \"▁almond\",\n        -12.204910278320312\n      ],\n      [\n        \"▁faux\",\n        -12.204910278320312\n      ],\n      [\n        \"opt\",\n        -12.204923629760742\n      ],\n      [\n        \"Out\",\n        -12.204939842224121\n      ],\n      [\n        \"▁virtue\",\n        -12.205025672912598\n      ],\n      [\n        \"▁Chocolate\",\n        -12.205151557922363\n      ],\n      [\n        \"▁spannend\",\n        -12.205305099487305\n      ],\n      [\n        \"▁spices\",\n        -12.205327033996582\n      ],\n      [\n        \"▁Climate\",\n        -12.205560684204102\n      ],\n      [\n        \"▁Residential\",\n        -12.205560684204102\n      ],\n      [\n        \"gung\",\n        -12.205700874328613\n      ],\n      [\n        \"▁filtr\",\n        -12.20606803894043\n      ],\n      [\n        \"circ\",\n        -12.206123352050781\n      ],\n      [\n        \"sisted\",\n        -12.206172943115234\n      ],\n      [\n        \"▁dedicat\",\n        -12.206243515014648\n      ],\n      [\n        \"▁foil\",\n        -12.206387519836426\n      ],\n      [\n        \"▁uita\",\n        -12.206392288208008\n      ],\n      [\n        \"▁lié\",\n        -12.206402778625488\n      ],\n      [\n        \"▁Demo\",\n        -12.206409454345703\n      ],\n      [\n        \"▁spoil\",\n        -12.2064208984375\n      ],\n      [\n        \"Cu\",\n        -12.206448554992676\n      ],\n      [\n        \"naut\",\n        -12.206525802612305\n      ],\n      [\n        \"▁configured\",\n        -12.206535339355469\n      ],\n      [\n        \"UK\",\n        -12.206543922424316\n      ],\n      [\n        \"▁disagree\",\n        -12.20656967163086\n      ],\n      [\n        \"Medic\",\n        -12.206767082214355\n      ],\n      [\n        \"cosm\",\n        -12.207074165344238\n      ],\n      [\n        \"Toute\",\n        -12.207109451293945\n      ],\n      [\n        \"▁beneficia\",\n        -12.207170486450195\n      ],\n      [\n        \"fassen\",\n        -12.207327842712402\n      ],\n      [\n        \"▁bail\",\n        -12.207337379455566\n      ],\n      [\n        \"igue\",\n        -12.207439422607422\n      ],\n      [\n        \"▁Mă\",\n        -12.20744800567627\n      ],\n      [\n        \"▁strips\",\n        -12.20748519897461\n      ],\n      [\n        \"▁Dritte\",\n        -12.207537651062012\n      ],\n      [\n        \"▁putere\",\n        -12.207597732543945\n      ],\n      [\n        \"Play\",\n        -12.20763111114502\n      ],\n      [\n        \"▁Samstag\",\n        -12.207632064819336\n      ],\n      [\n        \"▁households\",\n        -12.207791328430176\n      ],\n      [\n        \"▁persistent\",\n        -12.207914352416992\n      ],\n      [\n        \"uben\",\n        -12.207942962646484\n      ],\n      [\n        \"Web\",\n        -12.20809555053711\n      ],\n      [\n        \"▁scenery\",\n        -12.20820140838623\n      ],\n      [\n        \"▁défini\",\n        -12.208257675170898\n      ],\n      [\n        \"news\",\n        -12.208337783813477\n      ],\n      [\n        \"eira\",\n        -12.208428382873535\n      ],\n      [\n        \"▁Mumbai\",\n        -12.208438873291016\n      ],\n      [\n        \"▁Ward\",\n        -12.208558082580566\n      ],\n      [\n        \"▁ladder\",\n        -12.2086181640625\n      ],\n      [\n        \"▁plaque\",\n        -12.208623886108398\n      ],\n      [\n        \"nés\",\n        -12.208639144897461\n      ],\n      [\n        \"▁condamn\",\n        -12.20864486694336\n      ],\n      [\n        \"▁attribute\",\n        -12.208687782287598\n      ],\n      [\n        \"atti\",\n        -12.20873737335205\n      ],\n      [\n        \"▁Emily\",\n        -12.208953857421875\n      ],\n      [\n        \"▁pleine\",\n        -12.20896053314209\n      ],\n      [\n        \"▁automatisch\",\n        -12.209004402160645\n      ],\n      [\n        \"ifies\",\n        -12.209052085876465\n      ],\n      [\n        \"onna\",\n        -12.209104537963867\n      ],\n      [\n        \"▁inject\",\n        -12.209157943725586\n      ],\n      [\n        \"▁evolve\",\n        -12.209297180175781\n      ],\n      [\n        \"▁breeze\",\n        -12.209299087524414\n      ],\n      [\n        \"▁montre\",\n        -12.209415435791016\n      ],\n      [\n        \"▁memorial\",\n        -12.209425926208496\n      ],\n      [\n        \"ämlich\",\n        -12.209465026855469\n      ],\n      [\n        \"NBC\",\n        -12.209589958190918\n      ],\n      [\n        \"▁1940\",\n        -12.209836959838867\n      ],\n      [\n        \"▁trouvé\",\n        -12.209892272949219\n      ],\n      [\n        \"when\",\n        -12.209914207458496\n      ],\n      [\n        \"▁Büro\",\n        -12.209959983825684\n      ],\n      [\n        \"▁probability\",\n        -12.209978103637695\n      ],\n      [\n        \"cute\",\n        -12.21006965637207\n      ],\n      [\n        \"▁sturdy\",\n        -12.210078239440918\n      ],\n      [\n        \"AMP\",\n        -12.210165023803711\n      ],\n      [\n        \"▁Constantin\",\n        -12.210283279418945\n      ],\n      [\n        \"▁batter\",\n        -12.21037483215332\n      ],\n      [\n        \"▁bist\",\n        -12.210470199584961\n      ],\n      [\n        \"▁streams\",\n        -12.210528373718262\n      ],\n      [\n        \"rushing\",\n        -12.21057415008545\n      ],\n      [\n        \"▁shaft\",\n        -12.21065902709961\n      ],\n      [\n        \"▁proprii\",\n        -12.210722923278809\n      ],\n      [\n        \"émi\",\n        -12.21074390411377\n      ],\n      [\n        \"online\",\n        -12.210817337036133\n      ],\n      [\n        \"▁vanity\",\n        -12.210870742797852\n      ],\n      [\n        \"▁mural\",\n        -12.210878372192383\n      ],\n      [\n        \"▁distinguish\",\n        -12.210905075073242\n      ],\n      [\n        \"▁niciun\",\n        -12.211191177368164\n      ],\n      [\n        \"▁européenne\",\n        -12.211252212524414\n      ],\n      [\n        \"▁secretary\",\n        -12.211289405822754\n      ],\n      [\n        \"▁gaps\",\n        -12.211492538452148\n      ],\n      [\n        \"▁realm\",\n        -12.211499214172363\n      ],\n      [\n        \"▁elastic\",\n        -12.211504936218262\n      ],\n      [\n        \"▁Avoid\",\n        -12.211519241333008\n      ],\n      [\n        \"▁mauvais\",\n        -12.211931228637695\n      ],\n      [\n        \"▁innovations\",\n        -12.212663650512695\n      ],\n      [\n        \"▁suprem\",\n        -12.212776184082031\n      ],\n      [\n        \"▁vederea\",\n        -12.212817192077637\n      ],\n      [\n        \"wenden\",\n        -12.212892532348633\n      ],\n      [\n        \"-40\",\n        -12.213075637817383\n      ],\n      [\n        \"prenant\",\n        -12.213155746459961\n      ],\n      [\n        \"utilisateur\",\n        -12.213210105895996\n      ],\n      [\n        \"▁Oliver\",\n        -12.213228225708008\n      ],\n      [\n        \"111\",\n        -12.21326732635498\n      ],\n      [\n        \"▁manifestation\",\n        -12.213382720947266\n      ],\n      [\n        \"▁Rachel\",\n        -12.213458061218262\n      ],\n      [\n        \"agog\",\n        -12.21348762512207\n      ],\n      [\n        \"▁seamless\",\n        -12.213534355163574\n      ],\n      [\n        \"▁Employee\",\n        -12.213576316833496\n      ],\n      [\n        \"▁dimanche\",\n        -12.213582038879395\n      ],\n      [\n        \"▁banii\",\n        -12.213631629943848\n      ],\n      [\n        \"▁Ruth\",\n        -12.213781356811523\n      ],\n      [\n        \"▁Roy\",\n        -12.21385383605957\n      ],\n      [\n        \"▁homeless\",\n        -12.2139253616333\n      ],\n      [\n        \"▁Lower\",\n        -12.213932037353516\n      ],\n      [\n        \"health\",\n        -12.21393871307373\n      ],\n      [\n        \"▁atenti\",\n        -12.2140474319458\n      ],\n      [\n        \"▁touched\",\n        -12.214183807373047\n      ],\n      [\n        \"May\",\n        -12.214195251464844\n      ],\n      [\n        \"▁Buc\",\n        -12.214225769042969\n      ],\n      [\n        \"▁explored\",\n        -12.214393615722656\n      ],\n      [\n        \"▁declare\",\n        -12.214461326599121\n      ],\n      [\n        \"▁garment\",\n        -12.214469909667969\n      ],\n      [\n        \"▁buzz\",\n        -12.214483261108398\n      ],\n      [\n        \"▁rappel\",\n        -12.214662551879883\n      ],\n      [\n        \"▁uscat\",\n        -12.214903831481934\n      ],\n      [\n        \"▁Hyper\",\n        -12.214914321899414\n      ],\n      [\n        \"Etat\",\n        -12.215007781982422\n      ],\n      [\n        \"▁Titel\",\n        -12.215035438537598\n      ],\n      [\n        \"product\",\n        -12.215191841125488\n      ],\n      [\n        \"woman\",\n        -12.215280532836914\n      ],\n      [\n        \"▁Gab\",\n        -12.215450286865234\n      ],\n      [\n        \"▁advances\",\n        -12.215615272521973\n      ],\n      [\n        \"2/\",\n        -12.215753555297852\n      ],\n      [\n        \"prone\",\n        -12.215770721435547\n      ],\n      [\n        \"kö\",\n        -12.215986251831055\n      ],\n      [\n        \"▁counting\",\n        -12.21599292755127\n      ],\n      [\n        \"Sollte\",\n        -12.216043472290039\n      ],\n      [\n        \"▁Konzept\",\n        -12.216063499450684\n      ],\n      [\n        \"▁backgrounds\",\n        -12.216153144836426\n      ],\n      [\n        \"jährige\",\n        -12.216154098510742\n      ],\n      [\n        \"▁Alltag\",\n        -12.216187477111816\n      ],\n      [\n        \"▁metrics\",\n        -12.21619701385498\n      ],\n      [\n        \"▁illustrated\",\n        -12.216222763061523\n      ],\n      [\n        \"▁Charge\",\n        -12.21631908416748\n      ],\n      [\n        \"▁thoughtful\",\n        -12.216423034667969\n      ],\n      [\n        \"gesetz\",\n        -12.216527938842773\n      ],\n      [\n        \"pfen\",\n        -12.216611862182617\n      ],\n      [\n        \"▁déroul\",\n        -12.216713905334473\n      ],\n      [\n        \"▁checkout\",\n        -12.216876029968262\n      ],\n      [\n        \"quette\",\n        -12.216936111450195\n      ],\n      [\n        \"▁pierdut\",\n        -12.2170991897583\n      ],\n      [\n        \"▁Seat\",\n        -12.217140197753906\n      ],\n      [\n        \"▁linen\",\n        -12.217193603515625\n      ],\n      [\n        \"archiv\",\n        -12.217245101928711\n      ],\n      [\n        \"arna\",\n        -12.217254638671875\n      ],\n      [\n        \"importe\",\n        -12.21742057800293\n      ],\n      [\n        \"▁PHP\",\n        -12.217496871948242\n      ],\n      [\n        \"▁Parents\",\n        -12.217503547668457\n      ],\n      [\n        \"▁Birmingham\",\n        -12.217513084411621\n      ],\n      [\n        \"▁Integr\",\n        -12.217588424682617\n      ],\n      [\n        \"▁Mason\",\n        -12.217607498168945\n      ],\n      [\n        \"zieht\",\n        -12.217781066894531\n      ],\n      [\n        \"▁camps\",\n        -12.217803001403809\n      ],\n      [\n        \"OG\",\n        -12.21786117553711\n      ],\n      [\n        \"▁syrup\",\n        -12.217927932739258\n      ],\n      [\n        \"▁Cookies\",\n        -12.217928886413574\n      ],\n      [\n        \"▁Comfort\",\n        -12.217955589294434\n      ],\n      [\n        \"ută\",\n        -12.217976570129395\n      ],\n      [\n        \"abia\",\n        -12.217979431152344\n      ],\n      [\n        \"zeci\",\n        -12.218003273010254\n      ],\n      [\n        \"▁Gardens\",\n        -12.218009948730469\n      ],\n      [\n        \"▁incidents\",\n        -12.218149185180664\n      ],\n      [\n        \"▁participat\",\n        -12.218235969543457\n      ],\n      [\n        \"▁glimpse\",\n        -12.218342781066895\n      ],\n      [\n        \"5.5\",\n        -12.218437194824219\n      ],\n      [\n        \"▁dealers\",\n        -12.218469619750977\n      ],\n      [\n        \"▁Grande\",\n        -12.218565940856934\n      ],\n      [\n        \"▁raid\",\n        -12.218944549560547\n      ],\n      [\n        \"owing\",\n        -12.21903133392334\n      ],\n      [\n        \"▁contrary\",\n        -12.219109535217285\n      ],\n      [\n        \"Earlier\",\n        -12.219138145446777\n      ],\n      [\n        \"tien\",\n        -12.21916389465332\n      ],\n      [\n        \"drop\",\n        -12.219169616699219\n      ],\n      [\n        \"▁angajat\",\n        -12.219359397888184\n      ],\n      [\n        \"▁procesul\",\n        -12.219515800476074\n      ],\n      [\n        \"▁focal\",\n        -12.219564437866211\n      ],\n      [\n        \"▁impart\",\n        -12.219703674316406\n      ],\n      [\n        \"▁Abschluss\",\n        -12.219749450683594\n      ],\n      [\n        \"carui\",\n        -12.219830513000488\n      ],\n      [\n        \"insul\",\n        -12.220277786254883\n      ],\n      [\n        \"▁creamy\",\n        -12.220283508300781\n      ],\n      [\n        \"eille\",\n        -12.22032356262207\n      ],\n      [\n        \"suppl\",\n        -12.220335960388184\n      ],\n      [\n        \"▁Heaven\",\n        -12.220471382141113\n      ],\n      [\n        \"éna\",\n        -12.220667839050293\n      ],\n      [\n        \"▁swap\",\n        -12.220739364624023\n      ],\n      [\n        \"▁vreau\",\n        -12.220762252807617\n      ],\n      [\n        \"▁Bryan\",\n        -12.220809936523438\n      ],\n      [\n        \"▁Zug\",\n        -12.220815658569336\n      ],\n      [\n        \"▁glance\",\n        -12.220848083496094\n      ],\n      [\n        \"▁elimin\",\n        -12.220900535583496\n      ],\n      [\n        \"▁yeux\",\n        -12.221084594726562\n      ],\n      [\n        \"wehr\",\n        -12.221238136291504\n      ],\n      [\n        \"2.5\",\n        -12.221287727355957\n      ],\n      [\n        \"▁poses\",\n        -12.221364974975586\n      ],\n      [\n        \"▁parcel\",\n        -12.221585273742676\n      ],\n      [\n        \"▁Apartment\",\n        -12.221749305725098\n      ],\n      [\n        \"▁NASA\",\n        -12.221768379211426\n      ],\n      [\n        \"▁bénéfici\",\n        -12.22187614440918\n      ],\n      [\n        \"▁Umgebung\",\n        -12.221890449523926\n      ],\n      [\n        \"asia\",\n        -12.221946716308594\n      ],\n      [\n        \"abi\",\n        -12.221967697143555\n      ],\n      [\n        \"coup\",\n        -12.222002983093262\n      ],\n      [\n        \"synchron\",\n        -12.222017288208008\n      ],\n      [\n        \"▁Sicherheits\",\n        -12.222029685974121\n      ],\n      [\n        \"bic\",\n        -12.222076416015625\n      ],\n      [\n        \"▁distract\",\n        -12.222148895263672\n      ],\n      [\n        \"▁rentals\",\n        -12.222163200378418\n      ],\n      [\n        \"constru\",\n        -12.222290992736816\n      ],\n      [\n        \"curs\",\n        -12.222345352172852\n      ],\n      [\n        \"genannten\",\n        -12.222386360168457\n      ],\n      [\n        \"▁Shanghai\",\n        -12.222501754760742\n      ],\n      [\n        \"▁vague\",\n        -12.222504615783691\n      ],\n      [\n        \"▁Leather\",\n        -12.22250747680664\n      ],\n      [\n        \"▁Vintage\",\n        -12.222532272338867\n      ],\n      [\n        \"pointing\",\n        -12.22259521484375\n      ],\n      [\n        \"avant\",\n        -12.22268295288086\n      ],\n      [\n        \"gues\",\n        -12.222949028015137\n      ],\n      [\n        \"sweise\",\n        -12.22302532196045\n      ],\n      [\n        \"▁Greater\",\n        -12.223065376281738\n      ],\n      [\n        \"fig\",\n        -12.22310733795166\n      ],\n      [\n        \"▁Blut\",\n        -12.223217964172363\n      ],\n      [\n        \"▁Stellen\",\n        -12.22326946258545\n      ],\n      [\n        \"▁isolation\",\n        -12.22337818145752\n      ],\n      [\n        \"▁overhead\",\n        -12.22338581085205\n      ],\n      [\n        \"▁wondered\",\n        -12.223508834838867\n      ],\n      [\n        \"essai\",\n        -12.223609924316406\n      ],\n      [\n        \"aves\",\n        -12.2236328125\n      ],\n      [\n        \"▁Shore\",\n        -12.223637580871582\n      ],\n      [\n        \"▁INC\",\n        -12.223709106445312\n      ],\n      [\n        \"rufen\",\n        -12.223980903625488\n      ],\n      [\n        \"▁magnifique\",\n        -12.224069595336914\n      ],\n      [\n        \"▁intéressant\",\n        -12.224072456359863\n      ],\n      [\n        \"▁tanks\",\n        -12.224075317382812\n      ],\n      [\n        \"▁Tun\",\n        -12.224367141723633\n      ],\n      [\n        \"▁approaching\",\n        -12.224390029907227\n      ],\n      [\n        \"▁relay\",\n        -12.224479675292969\n      ],\n      [\n        \"▁Küche\",\n        -12.224529266357422\n      ],\n      [\n        \"describing\",\n        -12.224587440490723\n      ],\n      [\n        \"▁Certification\",\n        -12.224588394165039\n      ],\n      [\n        \"▁Breakfast\",\n        -12.224597930908203\n      ],\n      [\n        \"▁Frame\",\n        -12.224891662597656\n      ],\n      [\n        \"▁Stoff\",\n        -12.224909782409668\n      ],\n      [\n        \"▁victime\",\n        -12.224924087524414\n      ],\n      [\n        \"Observ\",\n        -12.224943161010742\n      ],\n      [\n        \"▁gutter\",\n        -12.224989891052246\n      ],\n      [\n        \"standard\",\n        -12.225220680236816\n      ],\n      [\n        \"▁Sci\",\n        -12.225244522094727\n      ],\n      [\n        \"▁sept\",\n        -12.225377082824707\n      ],\n      [\n        \"▁Potter\",\n        -12.225423812866211\n      ],\n      [\n        \"letter\",\n        -12.22577953338623\n      ],\n      [\n        \"▁tobacco\",\n        -12.225852012634277\n      ],\n      [\n        \"▁threatened\",\n        -12.22591781616211\n      ],\n      [\n        \"MW\",\n        -12.225936889648438\n      ],\n      [\n        \"▁Cher\",\n        -12.225944519042969\n      ],\n      [\n        \"0.1\",\n        -12.225957870483398\n      ],\n      [\n        \"mitted\",\n        -12.22596263885498\n      ],\n      [\n        \"zustellen\",\n        -12.225967407226562\n      ],\n      [\n        \"dominated\",\n        -12.226165771484375\n      ],\n      [\n        \"/16\",\n        -12.22623348236084\n      ],\n      [\n        \"POS\",\n        -12.226317405700684\n      ],\n      [\n        \"▁Zin\",\n        -12.226373672485352\n      ],\n      [\n        \"▁Okay\",\n        -12.226381301879883\n      ],\n      [\n        \"▁projected\",\n        -12.226405143737793\n      ],\n      [\n        \"▁selber\",\n        -12.226548194885254\n      ],\n      [\n        \"▁proiectului\",\n        -12.2266206741333\n      ],\n      [\n        \"▁Shell\",\n        -12.226683616638184\n      ],\n      [\n        \"▁cartridge\",\n        -12.226706504821777\n      ],\n      [\n        \"Message\",\n        -12.2267484664917\n      ],\n      [\n        \"haben\",\n        -12.226799964904785\n      ],\n      [\n        \"▁slides\",\n        -12.226829528808594\n      ],\n      [\n        \"▁gleichzeitig\",\n        -12.226886749267578\n      ],\n      [\n        \"▁Racing\",\n        -12.227051734924316\n      ],\n      [\n        \"▁20,\",\n        -12.227070808410645\n      ],\n      [\n        \"▁separat\",\n        -12.227094650268555\n      ],\n      [\n        \"▁repeatedly\",\n        -12.227110862731934\n      ],\n      [\n        \"▁casting\",\n        -12.22728157043457\n      ],\n      [\n        \"▁sacred\",\n        -12.227283477783203\n      ],\n      [\n        \"verfahren\",\n        -12.227387428283691\n      ],\n      [\n        \"▁echilibr\",\n        -12.227514266967773\n      ],\n      [\n        \"▁rebel\",\n        -12.2277250289917\n      ],\n      [\n        \"säu\",\n        -12.227794647216797\n      ],\n      [\n        \"ummy\",\n        -12.227815628051758\n      ],\n      [\n        \"▁backing\",\n        -12.227889060974121\n      ],\n      [\n        \"▁sponsors\",\n        -12.227912902832031\n      ],\n      [\n        \"▁Stress\",\n        -12.22802448272705\n      ],\n      [\n        \"▁Rules\",\n        -12.228083610534668\n      ],\n      [\n        \"▁render\",\n        -12.228241920471191\n      ],\n      [\n        \"▁funktioniert\",\n        -12.228384971618652\n      ],\n      [\n        \"▁Pearl\",\n        -12.228472709655762\n      ],\n      [\n        \"▁Scho\",\n        -12.228527069091797\n      ],\n      [\n        \"schwer\",\n        -12.228595733642578\n      ],\n      [\n        \"▁descoperit\",\n        -12.228702545166016\n      ],\n      [\n        \"holen\",\n        -12.228720664978027\n      ],\n      [\n        \"imposed\",\n        -12.228960990905762\n      ],\n      [\n        \"▁appearing\",\n        -12.228968620300293\n      ],\n      [\n        \"▁höher\",\n        -12.229082107543945\n      ],\n      [\n        \"▁Victorian\",\n        -12.229111671447754\n      ],\n      [\n        \"▁founding\",\n        -12.229155540466309\n      ],\n      [\n        \"▁Polish\",\n        -12.229239463806152\n      ],\n      [\n        \"▁anume\",\n        -12.229248046875\n      ],\n      [\n        \"Box\",\n        -12.229488372802734\n      ],\n      [\n        \"▁intrat\",\n        -12.229598999023438\n      ],\n      [\n        \"▁Inspiration\",\n        -12.229610443115234\n      ],\n      [\n        \"▁Canyon\",\n        -12.229625701904297\n      ],\n      [\n        \"▁Franklin\",\n        -12.22974681854248\n      ],\n      [\n        \"▁susceptible\",\n        -12.22982120513916\n      ],\n      [\n        \"trap\",\n        -12.229839324951172\n      ],\n      [\n        \"▁Roma\",\n        -12.23000717163086\n      ],\n      [\n        \"▁ethics\",\n        -12.230009078979492\n      ],\n      [\n        \"▁Privat\",\n        -12.230027198791504\n      ],\n      [\n        \"▁journalists\",\n        -12.230090141296387\n      ],\n      [\n        \"▁Universität\",\n        -12.230246543884277\n      ],\n      [\n        \"▁conditioner\",\n        -12.230308532714844\n      ],\n      [\n        \"folge\",\n        -12.230327606201172\n      ],\n      [\n        \"kirche\",\n        -12.230416297912598\n      ],\n      [\n        \"gehalten\",\n        -12.230530738830566\n      ],\n      [\n        \"midi\",\n        -12.230570793151855\n      ],\n      [\n        \"▁radar\",\n        -12.230619430541992\n      ],\n      [\n        \"▁Yard\",\n        -12.230775833129883\n      ],\n      [\n        \"▁professionnelle\",\n        -12.230863571166992\n      ],\n      [\n        \"▁Orchestra\",\n        -12.230870246887207\n      ],\n      [\n        \"▁immigrants\",\n        -12.230870246887207\n      ],\n      [\n        \"▁refined\",\n        -12.230929374694824\n      ],\n      [\n        \"▁Bishop\",\n        -12.231036186218262\n      ],\n      [\n        \"string\",\n        -12.231095314025879\n      ],\n      [\n        \"▁majoritatea\",\n        -12.231231689453125\n      ],\n      [\n        \"▁workflow\",\n        -12.23123836517334\n      ],\n      [\n        \"▁întreg\",\n        -12.231306076049805\n      ],\n      [\n        \"went\",\n        -12.231563568115234\n      ],\n      [\n        \"▁trat\",\n        -12.231689453125\n      ],\n      [\n        \"felul\",\n        -12.23176383972168\n      ],\n      [\n        \"▁hardwood\",\n        -12.231821060180664\n      ],\n      [\n        \"▁Task\",\n        -12.231867790222168\n      ],\n      [\n        \"branded\",\n        -12.231921195983887\n      ],\n      [\n        \"▁cinq\",\n        -12.231966018676758\n      ],\n      [\n        \"▁curb\",\n        -12.232041358947754\n      ],\n      [\n        \"▁Discount\",\n        -12.232043266296387\n      ],\n      [\n        \"▁Episode\",\n        -12.232131958007812\n      ],\n      [\n        \"▁Knowledge\",\n        -12.232144355773926\n      ],\n      [\n        \"▁tricky\",\n        -12.232173919677734\n      ],\n      [\n        \"▁characteristic\",\n        -12.232233047485352\n      ],\n      [\n        \"▁plata\",\n        -12.23226261138916\n      ],\n      [\n        \"▁Labour\",\n        -12.23232650756836\n      ],\n      [\n        \"▁Tha\",\n        -12.232372283935547\n      ],\n      [\n        \"▁Liefer\",\n        -12.232430458068848\n      ],\n      [\n        \"▁Reader\",\n        -12.232471466064453\n      ],\n      [\n        \"▁Linda\",\n        -12.232521057128906\n      ],\n      [\n        \"ittlerweile\",\n        -12.232552528381348\n      ],\n      [\n        \"defining\",\n        -12.232564926147461\n      ],\n      [\n        \"▁delayed\",\n        -12.232635498046875\n      ],\n      [\n        \"▁Bewertung\",\n        -12.232674598693848\n      ],\n      [\n        \"▁Unique\",\n        -12.232791900634766\n      ],\n      [\n        \"▁Champion\",\n        -12.232866287231445\n      ],\n      [\n        \"2008\",\n        -12.232897758483887\n      ],\n      [\n        \"▁conclu\",\n        -12.232934951782227\n      ],\n      [\n        \"▁câștig\",\n        -12.2329740524292\n      ],\n      [\n        \"▁scheduling\",\n        -12.2329740524292\n      ],\n      [\n        \"▁sailing\",\n        -12.233116149902344\n      ],\n      [\n        \"▁Storm\",\n        -12.23318862915039\n      ],\n      [\n        \"▁Stil\",\n        -12.23320198059082\n      ],\n      [\n        \"▁Album\",\n        -12.233211517333984\n      ],\n      [\n        \"▁ultime\",\n        -12.233343124389648\n      ],\n      [\n        \"url\",\n        -12.233369827270508\n      ],\n      [\n        \"▁terrific\",\n        -12.23339557647705\n      ],\n      [\n        \"▁remedy\",\n        -12.233396530151367\n      ],\n      [\n        \"▁Around\",\n        -12.233592987060547\n      ],\n      [\n        \"▁Kni\",\n        -12.233756065368652\n      ],\n      [\n        \"etty\",\n        -12.23376750946045\n      ],\n      [\n        \"Managing\",\n        -12.233809471130371\n      ],\n      [\n        \"▁Bedeutung\",\n        -12.233816146850586\n      ],\n      [\n        \"▁earthquake\",\n        -12.233817100524902\n      ],\n      [\n        \"▁Telefon\",\n        -12.233818054199219\n      ],\n      [\n        \"▁Upper\",\n        -12.233869552612305\n      ],\n      [\n        \"▁validation\",\n        -12.233892440795898\n      ],\n      [\n        \"-22\",\n        -12.233997344970703\n      ],\n      [\n        \"▁queue\",\n        -12.23401165008545\n      ],\n      [\n        \"tinde\",\n        -12.234025001525879\n      ],\n      [\n        \"built\",\n        -12.234047889709473\n      ],\n      [\n        \"▁voix\",\n        -12.234125137329102\n      ],\n      [\n        \"▁Resource\",\n        -12.234126091003418\n      ],\n      [\n        \"ţiuni\",\n        -12.234143257141113\n      ],\n      [\n        \"▁satisfying\",\n        -12.234299659729004\n      ],\n      [\n        \"▁Kohl\",\n        -12.234441757202148\n      ],\n      [\n        \"▁Materials\",\n        -12.234618186950684\n      ],\n      [\n        \"▁esp\",\n        -12.234732627868652\n      ],\n      [\n        \"enseignement\",\n        -12.234773635864258\n      ],\n      [\n        \"danach\",\n        -12.234883308410645\n      ],\n      [\n        \"peux\",\n        -12.234932899475098\n      ],\n      [\n        \"▁deployed\",\n        -12.235113143920898\n      ],\n      [\n        \"▁1976\",\n        -12.235126495361328\n      ],\n      [\n        \"ușor\",\n        -12.235334396362305\n      ],\n      [\n        \"élection\",\n        -12.235380172729492\n      ],\n      [\n        \"ettes\",\n        -12.235437393188477\n      ],\n      [\n        \"▁Madison\",\n        -12.235506057739258\n      ],\n      [\n        \"108\",\n        -12.235685348510742\n      ],\n      [\n        \"berger\",\n        -12.235696792602539\n      ],\n      [\n        \"▁pedal\",\n        -12.235702514648438\n      ],\n      [\n        \"▁quasi\",\n        -12.235820770263672\n      ],\n      [\n        \"▁lend\",\n        -12.235843658447266\n      ],\n      [\n        \"VER\",\n        -12.235940933227539\n      ],\n      [\n        \"▁chapters\",\n        -12.236002922058105\n      ],\n      [\n        \"▁idei\",\n        -12.23600959777832\n      ],\n      [\n        \"Deine\",\n        -12.236034393310547\n      ],\n      [\n        \"▁endure\",\n        -12.236092567443848\n      ],\n      [\n        \"▁Studios\",\n        -12.236259460449219\n      ],\n      [\n        \"structure\",\n        -12.236274719238281\n      ],\n      [\n        \"▁puiss\",\n        -12.236370086669922\n      ],\n      [\n        \"▁Morning\",\n        -12.236443519592285\n      ],\n      [\n        \"guide\",\n        -12.236462593078613\n      ],\n      [\n        \"▁Wave\",\n        -12.236617088317871\n      ],\n      [\n        \"▁banque\",\n        -12.236879348754883\n      ],\n      [\n        \"änd\",\n        -12.236912727355957\n      ],\n      [\n        \"oubli\",\n        -12.237070083618164\n      ],\n      [\n        \"▁mixer\",\n        -12.237125396728516\n      ],\n      [\n        \"▁remedi\",\n        -12.237210273742676\n      ],\n      [\n        \"▁scop\",\n        -12.237421989440918\n      ],\n      [\n        \"▁Rosen\",\n        -12.237561225891113\n      ],\n      [\n        \"▁spital\",\n        -12.23773193359375\n      ],\n      [\n        \"blau\",\n        -12.237811088562012\n      ],\n      [\n        \"▁financiar\",\n        -12.237865447998047\n      ],\n      [\n        \"avour\",\n        -12.237871170043945\n      ],\n      [\n        \"Def\",\n        -12.238025665283203\n      ],\n      [\n        \"▁socket\",\n        -12.238076210021973\n      ],\n      [\n        \"▁occurring\",\n        -12.238360404968262\n      ],\n      [\n        \"▁munci\",\n        -12.238368034362793\n      ],\n      [\n        \"▁realiza\",\n        -12.238426208496094\n      ],\n      [\n        \"▁beating\",\n        -12.2384614944458\n      ],\n      [\n        \"▁Phillip\",\n        -12.238490104675293\n      ],\n      [\n        \"▁courant\",\n        -12.238509178161621\n      ],\n      [\n        \"Auto\",\n        -12.238608360290527\n      ],\n      [\n        \"▁Lager\",\n        -12.238685607910156\n      ],\n      [\n        \"▁folos\",\n        -12.238696098327637\n      ],\n      [\n        \"▁moyens\",\n        -12.238770484924316\n      ],\n      [\n        \"▁Ec\",\n        -12.238780975341797\n      ],\n      [\n        \"▁Strip\",\n        -12.238788604736328\n      ],\n      [\n        \"sparen\",\n        -12.238848686218262\n      ],\n      [\n        \"▁Nintendo\",\n        -12.238886833190918\n      ],\n      [\n        \"▁Murphy\",\n        -12.238912582397461\n      ],\n      [\n        \"▁flux\",\n        -12.239034652709961\n      ],\n      [\n        \"▁mots\",\n        -12.239034652709961\n      ],\n      [\n        \"▁rechts\",\n        -12.239045143127441\n      ],\n      [\n        \"▁cardio\",\n        -12.239142417907715\n      ],\n      [\n        \"avoiding\",\n        -12.239343643188477\n      ],\n      [\n        \"érer\",\n        -12.239453315734863\n      ],\n      [\n        \"hiel\",\n        -12.239461898803711\n      ],\n      [\n        \"▁rezistent\",\n        -12.239521980285645\n      ],\n      [\n        \"close\",\n        -12.23954963684082\n      ],\n      [\n        \"hésitez\",\n        -12.239596366882324\n      ],\n      [\n        \"Hz\",\n        -12.239631652832031\n      ],\n      [\n        \"▁elaborate\",\n        -12.239689826965332\n      ],\n      [\n        \"▁permanently\",\n        -12.239709854125977\n      ],\n      [\n        \"▁Pittsburgh\",\n        -12.239734649658203\n      ],\n      [\n        \"▁counties\",\n        -12.239819526672363\n      ],\n      [\n        \"▁bookmark\",\n        -12.239919662475586\n      ],\n      [\n        \"▁Label\",\n        -12.239965438842773\n      ],\n      [\n        \"▁Freude\",\n        -12.239974021911621\n      ],\n      [\n        \"▁preferat\",\n        -12.239986419677734\n      ],\n      [\n        \"▁Mein\",\n        -12.239995002746582\n      ],\n      [\n        \"▁Crew\",\n        -12.240218162536621\n      ],\n      [\n        \"▁clips\",\n        -12.240253448486328\n      ],\n      [\n        \"8,000\",\n        -12.240263938903809\n      ],\n      [\n        \"▁recognise\",\n        -12.240311622619629\n      ],\n      [\n        \"ință\",\n        -12.240365028381348\n      ],\n      [\n        \"▁prieteni\",\n        -12.240447044372559\n      ],\n      [\n        \"Heute\",\n        -12.240522384643555\n      ],\n      [\n        \"ancienne\",\n        -12.240534782409668\n      ],\n      [\n        \"▁annoying\",\n        -12.240583419799805\n      ],\n      [\n        \"▁awful\",\n        -12.240704536437988\n      ],\n      [\n        \"▁Comments\",\n        -12.240774154663086\n      ],\n      [\n        \"▁musician\",\n        -12.240830421447754\n      ],\n      [\n        \"▁Elite\",\n        -12.241023063659668\n      ],\n      [\n        \"▁patri\",\n        -12.241024017333984\n      ],\n      [\n        \"▁Coupon\",\n        -12.241037368774414\n      ],\n      [\n        \"▁Farbe\",\n        -12.241097450256348\n      ],\n      [\n        \"▁contribui\",\n        -12.241110801696777\n      ],\n      [\n        \"hari\",\n        -12.241294860839844\n      ],\n      [\n        \"▁activitati\",\n        -12.24161148071289\n      ],\n      [\n        \"▁Traum\",\n        -12.2416410446167\n      ],\n      [\n        \"1.8\",\n        -12.24170207977295\n      ],\n      [\n        \"▁Healthcare\",\n        -12.24172306060791\n      ],\n      [\n        \"▁refresh\",\n        -12.241943359375\n      ],\n      [\n        \"▁Maha\",\n        -12.242060661315918\n      ],\n      [\n        \"▁dép\",\n        -12.242082595825195\n      ],\n      [\n        \"▁Studien\",\n        -12.242314338684082\n      ],\n      [\n        \"▁spectacol\",\n        -12.242378234863281\n      ],\n      [\n        \"impro\",\n        -12.24254035949707\n      ],\n      [\n        \"▁commentaire\",\n        -12.242544174194336\n      ],\n      [\n        \"ported\",\n        -12.242570877075195\n      ],\n      [\n        \"▁reclam\",\n        -12.242612838745117\n      ],\n      [\n        \"▁Verkauf\",\n        -12.242634773254395\n      ],\n      [\n        \"▁newspapers\",\n        -12.242661476135254\n      ],\n      [\n        \"▁iubit\",\n        -12.242838859558105\n      ],\n      [\n        \"▁Kenne\",\n        -12.242844581604004\n      ],\n      [\n        \"▁Consultant\",\n        -12.242958068847656\n      ],\n      [\n        \"▁stau\",\n        -12.242986679077148\n      ],\n      [\n        \"TON\",\n        -12.243057250976562\n      ],\n      [\n        \"▁Fehler\",\n        -12.243070602416992\n      ],\n      [\n        \"▁lettre\",\n        -12.243167877197266\n      ],\n      [\n        \"▁investigator\",\n        -12.243172645568848\n      ],\n      [\n        \"▁quantities\",\n        -12.243184089660645\n      ],\n      [\n        \"ogram\",\n        -12.243208885192871\n      ],\n      [\n        \"avaient\",\n        -12.24323844909668\n      ],\n      [\n        \"▁reducere\",\n        -12.243265151977539\n      ],\n      [\n        \"Lite\",\n        -12.243402481079102\n      ],\n      [\n        \"kurs\",\n        -12.243443489074707\n      ],\n      [\n        \"pré\",\n        -12.24383544921875\n      ],\n      [\n        \"pap\",\n        -12.243898391723633\n      ],\n      [\n        \"▁Männer\",\n        -12.243983268737793\n      ],\n      [\n        \"▁gauche\",\n        -12.244022369384766\n      ],\n      [\n        \"▁ähnlich\",\n        -12.244027137756348\n      ],\n      [\n        \"▁sunlight\",\n        -12.244063377380371\n      ],\n      [\n        \"▁rester\",\n        -12.24422550201416\n      ],\n      [\n        \"jumped\",\n        -12.244586944580078\n      ],\n      [\n        \"▁exclusiv\",\n        -12.24463176727295\n      ],\n      [\n        \"▁electoral\",\n        -12.244640350341797\n      ],\n      [\n        \"▁Portal\",\n        -12.244650840759277\n      ],\n      [\n        \"ulent\",\n        -12.244688987731934\n      ],\n      [\n        \"▁sonst\",\n        -12.24474048614502\n      ],\n      [\n        \"entraîne\",\n        -12.24483585357666\n      ],\n      [\n        \"▁repas\",\n        -12.244837760925293\n      ],\n      [\n        \"▁redus\",\n        -12.244858741760254\n      ],\n      [\n        \"aku\",\n        -12.244866371154785\n      ],\n      [\n        \"▁Graphic\",\n        -12.245251655578613\n      ],\n      [\n        \"▁geringe\",\n        -12.24539566040039\n      ],\n      [\n        \"plätze\",\n        -12.245474815368652\n      ],\n      [\n        \"Trebuie\",\n        -12.245479583740234\n      ],\n      [\n        \"▁rezultate\",\n        -12.245479583740234\n      ],\n      [\n        \"▁configure\",\n        -12.245683670043945\n      ],\n      [\n        \"▁PV\",\n        -12.245834350585938\n      ],\n      [\n        \"▁insect\",\n        -12.246109962463379\n      ],\n      [\n        \"▁Reviews\",\n        -12.246129035949707\n      ],\n      [\n        \"releasing\",\n        -12.246186256408691\n      ],\n      [\n        \"▁appliance\",\n        -12.246246337890625\n      ],\n      [\n        \"▁oferte\",\n        -12.246482849121094\n      ],\n      [\n        \"▁WILL\",\n        -12.246484756469727\n      ],\n      [\n        \"rion\",\n        -12.246499061584473\n      ],\n      [\n        \"▁Cole\",\n        -12.246582984924316\n      ],\n      [\n        \"▁1975\",\n        -12.246650695800781\n      ],\n      [\n        \"Admin\",\n        -12.24677848815918\n      ],\n      [\n        \"▁parade\",\n        -12.246800422668457\n      ],\n      [\n        \"▁mélange\",\n        -12.24692153930664\n      ],\n      [\n        \"▁shortage\",\n        -12.247007369995117\n      ],\n      [\n        \"▁Measure\",\n        -12.247400283813477\n      ],\n      [\n        \"anchmal\",\n        -12.24742603302002\n      ],\n      [\n        \"▁transfers\",\n        -12.247432708740234\n      ],\n      [\n        \"▁sistemului\",\n        -12.247573852539062\n      ],\n      [\n        \"▁deschide\",\n        -12.247819900512695\n      ],\n      [\n        \"▁Künstler\",\n        -12.247821807861328\n      ],\n      [\n        \"▁Plain\",\n        -12.247848510742188\n      ],\n      [\n        \"▁messaging\",\n        -12.247855186462402\n      ],\n      [\n        \"▁metabolism\",\n        -12.247879981994629\n      ],\n      [\n        \"fill\",\n        -12.248031616210938\n      ],\n      [\n        \"▁Bomb\",\n        -12.24814224243164\n      ],\n      [\n        \"usine\",\n        -12.248208045959473\n      ],\n      [\n        \"▁restart\",\n        -12.248233795166016\n      ],\n      [\n        \"▁Discussion\",\n        -12.248336791992188\n      ],\n      [\n        \"smith\",\n        -12.248472213745117\n      ],\n      [\n        \"▁Bh\",\n        -12.248607635498047\n      ],\n      [\n        \"▁sap\",\n        -12.248689651489258\n      ],\n      [\n        \"Moo\",\n        -12.248714447021484\n      ],\n      [\n        \"▁indirect\",\n        -12.248785972595215\n      ],\n      [\n        \"▁eingesetzt\",\n        -12.248863220214844\n      ],\n      [\n        \"▁Hip\",\n        -12.248870849609375\n      ],\n      [\n        \"▁iulie\",\n        -12.249113082885742\n      ],\n      [\n        \"▁atac\",\n        -12.249201774597168\n      ],\n      [\n        \"▁passport\",\n        -12.2492036819458\n      ],\n      [\n        \"▁Egyptian\",\n        -12.249290466308594\n      ],\n      [\n        \"▁soluți\",\n        -12.249349594116211\n      ],\n      [\n        \"▁cakes\",\n        -12.249356269836426\n      ],\n      [\n        \"▁Fellow\",\n        -12.24949836730957\n      ],\n      [\n        \"▁collision\",\n        -12.249533653259277\n      ],\n      [\n        \"▁abundant\",\n        -12.249961853027344\n      ],\n      [\n        \"▁Wonder\",\n        -12.24997329711914\n      ],\n      [\n        \"▁theories\",\n        -12.249991416931152\n      ],\n      [\n        \"landed\",\n        -12.250046730041504\n      ],\n      [\n        \"▁meantime\",\n        -12.2500638961792\n      ],\n      [\n        \"schlüsse\",\n        -12.25022029876709\n      ],\n      [\n        \"▁helicopter\",\n        -12.25039005279541\n      ],\n      [\n        \"Voici\",\n        -12.250479698181152\n      ],\n      [\n        \"▁Honey\",\n        -12.25049877166748\n      ],\n      [\n        \"▁deleted\",\n        -12.250511169433594\n      ],\n      [\n        \"▁Projekte\",\n        -12.250523567199707\n      ],\n      [\n        \"▁gasi\",\n        -12.2506742477417\n      ],\n      [\n        \"applique\",\n        -12.25068473815918\n      ],\n      [\n        \"TAL\",\n        -12.250699043273926\n      ],\n      [\n        \"notch\",\n        -12.250699996948242\n      ],\n      [\n        \"▁Response\",\n        -12.250818252563477\n      ],\n      [\n        \"▁deveni\",\n        -12.250818252563477\n      ],\n      [\n        \"▁regulate\",\n        -12.250829696655273\n      ],\n      [\n        \"▁vegetarian\",\n        -12.25083065032959\n      ],\n      [\n        \"▁Pastor\",\n        -12.250880241394043\n      ],\n      [\n        \"▁Strong\",\n        -12.250940322875977\n      ],\n      [\n        \"▁élèves\",\n        -12.251055717468262\n      ],\n      [\n        \"▁alimente\",\n        -12.25113582611084\n      ],\n      [\n        \"graphy\",\n        -12.251181602478027\n      ],\n      [\n        \"▁spirits\",\n        -12.251266479492188\n      ],\n      [\n        \"▁Cau\",\n        -12.251282691955566\n      ],\n      [\n        \"determin\",\n        -12.251304626464844\n      ],\n      [\n        \"arilor\",\n        -12.251382827758789\n      ],\n      [\n        \"▁masura\",\n        -12.251470565795898\n      ],\n      [\n        \"RAN\",\n        -12.251500129699707\n      ],\n      [\n        \"marked\",\n        -12.251564979553223\n      ],\n      [\n        \"cuba\",\n        -12.251602172851562\n      ],\n      [\n        \"omni\",\n        -12.251609802246094\n      ],\n      [\n        \"▁detox\",\n        -12.251662254333496\n      ],\n      [\n        \"▁quartz\",\n        -12.251741409301758\n      ],\n      [\n        \"▁Bug\",\n        -12.25177001953125\n      ],\n      [\n        \"▁Sugar\",\n        -12.25185775756836\n      ],\n      [\n        \"▁opponents\",\n        -12.25197982788086\n      ],\n      [\n        \"▁solved\",\n        -12.25207805633545\n      ],\n      [\n        \"semn\",\n        -12.252257347106934\n      ],\n      [\n        \"▁Prepare\",\n        -12.252558708190918\n      ],\n      [\n        \"ffel\",\n        -12.252586364746094\n      ],\n      [\n        \"▁Highlight\",\n        -12.252608299255371\n      ],\n      [\n        \"▁curent\",\n        -12.252618789672852\n      ],\n      [\n        \"▁praktisch\",\n        -12.252626419067383\n      ],\n      [\n        \"▁lending\",\n        -12.252676963806152\n      ],\n      [\n        \"▁minority\",\n        -12.252752304077148\n      ],\n      [\n        \"Free\",\n        -12.252970695495605\n      ],\n      [\n        \"business\",\n        -12.252997398376465\n      ],\n      [\n        \"▁outlook\",\n        -12.253097534179688\n      ],\n      [\n        \"▁assessments\",\n        -12.253168106079102\n      ],\n      [\n        \"▁Brother\",\n        -12.253266334533691\n      ],\n      [\n        \"▁partager\",\n        -12.25326919555664\n      ],\n      [\n        \"▁Brun\",\n        -12.25329303741455\n      ],\n      [\n        \"▁pedestrian\",\n        -12.25339412689209\n      ],\n      [\n        \"anța\",\n        -12.253413200378418\n      ],\n      [\n        \"▁recycled\",\n        -12.253457069396973\n      ],\n      [\n        \"▁quicker\",\n        -12.253626823425293\n      ],\n      [\n        \"▁lamps\",\n        -12.253683090209961\n      ],\n      [\n        \"▁nationally\",\n        -12.253813743591309\n      ],\n      [\n        \"▁Supplier\",\n        -12.253823280334473\n      ],\n      [\n        \"ograph\",\n        -12.253936767578125\n      ],\n      [\n        \"engage\",\n        -12.253981590270996\n      ],\n      [\n        \"▁Marg\",\n        -12.254131317138672\n      ],\n      [\n        \"▁aplicare\",\n        -12.254181861877441\n      ],\n      [\n        \"▁scared\",\n        -12.254194259643555\n      ],\n      [\n        \"▁accredited\",\n        -12.254255294799805\n      ],\n      [\n        \"▁outils\",\n        -12.25436019897461\n      ],\n      [\n        \"▁bâtiment\",\n        -12.254446029663086\n      ],\n      [\n        \"▁existed\",\n        -12.254586219787598\n      ],\n      [\n        \"gegangen\",\n        -12.254619598388672\n      ],\n      [\n        \"▁elevation\",\n        -12.25463581085205\n      ],\n      [\n        \"▁Tradition\",\n        -12.254670143127441\n      ],\n      [\n        \"▁Gericht\",\n        -12.254677772521973\n      ],\n      [\n        \"hub\",\n        -12.254680633544922\n      ],\n      [\n        \"strahl\",\n        -12.25473690032959\n      ],\n      [\n        \"build\",\n        -12.254796981811523\n      ],\n      [\n        \"▁Customers\",\n        -12.25487232208252\n      ],\n      [\n        \"klasse\",\n        -12.254890441894531\n      ],\n      [\n        \"▁pierre\",\n        -12.254895210266113\n      ],\n      [\n        \"(2)\",\n        -12.255006790161133\n      ],\n      [\n        \"Life\",\n        -12.255125999450684\n      ],\n      [\n        \"▁bachelor\",\n        -12.25513744354248\n      ],\n      [\n        \"▁quad\",\n        -12.255195617675781\n      ],\n      [\n        \"▁dispozitiv\",\n        -12.25523567199707\n      ],\n      [\n        \"106\",\n        -12.255266189575195\n      ],\n      [\n        \"▁suburb\",\n        -12.255495071411133\n      ],\n      [\n        \"▁1977\",\n        -12.255586624145508\n      ],\n      [\n        \"▁Alzheimer\",\n        -12.255973815917969\n      ],\n      [\n        \"▁spicy\",\n        -12.255988121032715\n      ],\n      [\n        \"▁spreading\",\n        -12.256002426147461\n      ],\n      [\n        \"nötigen\",\n        -12.256078720092773\n      ],\n      [\n        \"▁novels\",\n        -12.256104469299316\n      ],\n      [\n        \"▁responsabilité\",\n        -12.256141662597656\n      ],\n      [\n        \"▁Bud\",\n        -12.256332397460938\n      ],\n      [\n        \"▁desirable\",\n        -12.256407737731934\n      ],\n      [\n        \"TOR\",\n        -12.256444931030273\n      ],\n      [\n        \"five\",\n        -12.256547927856445\n      ],\n      [\n        \"▁Firmen\",\n        -12.256860733032227\n      ],\n      [\n        \"oeuvre\",\n        -12.257075309753418\n      ],\n      [\n        \"grass\",\n        -12.257233619689941\n      ],\n      [\n        \"▁practically\",\n        -12.257277488708496\n      ],\n      [\n        \"▁runners\",\n        -12.257281303405762\n      ],\n      [\n        \"▁mothers\",\n        -12.257341384887695\n      ],\n      [\n        \"Shop\",\n        -12.257345199584961\n      ],\n      [\n        \"▁Chicken\",\n        -12.257408142089844\n      ],\n      [\n        \"▁License\",\n        -12.257593154907227\n      ],\n      [\n        \"▁Bach\",\n        -12.25765323638916\n      ],\n      [\n        \"earliest\",\n        -12.257729530334473\n      ],\n      [\n        \"▁replica\",\n        -12.25774097442627\n      ],\n      [\n        \"▁haunt\",\n        -12.257833480834961\n      ],\n      [\n        \"▁materi\",\n        -12.257854461669922\n      ],\n      [\n        \"▁Finland\",\n        -12.257893562316895\n      ],\n      [\n        \"▁europene\",\n        -12.257919311523438\n      ],\n      [\n        \"abilă\",\n        -12.257944107055664\n      ],\n      [\n        \"cati\",\n        -12.258007049560547\n      ],\n      [\n        \"▁cholesterol\",\n        -12.258132934570312\n      ],\n      [\n        \"...).\",\n        -12.258151054382324\n      ],\n      [\n        \"cardi\",\n        -12.25838565826416\n      ],\n      [\n        \"▁(12\",\n        -12.258387565612793\n      ],\n      [\n        \"analyzed\",\n        -12.258506774902344\n      ],\n      [\n        \"▁respondents\",\n        -12.258591651916504\n      ],\n      [\n        \"▁höchste\",\n        -12.258646011352539\n      ],\n      [\n        \"▁Kern\",\n        -12.258647918701172\n      ],\n      [\n        \"▁knapp\",\n        -12.258781433105469\n      ],\n      [\n        \"▁Someone\",\n        -12.258955001831055\n      ],\n      [\n        \"▁équipé\",\n        -12.258997917175293\n      ],\n      [\n        \"credited\",\n        -12.259106636047363\n      ],\n      [\n        \"▁numar\",\n        -12.259163856506348\n      ],\n      [\n        \"▁Ace\",\n        -12.259185791015625\n      ],\n      [\n        \"zentrum\",\n        -12.2592191696167\n      ],\n      [\n        \"nehmer\",\n        -12.259270668029785\n      ],\n      [\n        \"arrivée\",\n        -12.259282112121582\n      ],\n      [\n        \"ELE\",\n        -12.259291648864746\n      ],\n      [\n        \"clean\",\n        -12.259418487548828\n      ],\n      [\n        \"Boost\",\n        -12.259538650512695\n      ],\n      [\n        \"call\",\n        -12.259575843811035\n      ],\n      [\n        \"▁Polizei\",\n        -12.259659767150879\n      ],\n      [\n        \"▁Januar\",\n        -12.259663581848145\n      ],\n      [\n        \"▁Tile\",\n        -12.259681701660156\n      ],\n      [\n        \"▁traduc\",\n        -12.259744644165039\n      ],\n      [\n        \"▁promptly\",\n        -12.259773254394531\n      ],\n      [\n        \"limit\",\n        -12.259809494018555\n      ],\n      [\n        \"▁recharge\",\n        -12.2598237991333\n      ],\n      [\n        \"▁wipe\",\n        -12.259862899780273\n      ],\n      [\n        \"▁Norway\",\n        -12.26001262664795\n      ],\n      [\n        \"▁Municipal\",\n        -12.260077476501465\n      ],\n      [\n        \"▁medieval\",\n        -12.260117530822754\n      ],\n      [\n        \"▁Treat\",\n        -12.26021671295166\n      ],\n      [\n        \"Orient\",\n        -12.260283470153809\n      ],\n      [\n        \"▁Stewart\",\n        -12.260294914245605\n      ],\n      [\n        \"▁lol\",\n        -12.26039981842041\n      ],\n      [\n        \"appartement\",\n        -12.260522842407227\n      ],\n      [\n        \"▁payer\",\n        -12.260655403137207\n      ],\n      [\n        \"▁splash\",\n        -12.260723114013672\n      ],\n      [\n        \"doubtedly\",\n        -12.260726928710938\n      ],\n      [\n        \"dry\",\n        -12.260846138000488\n      ],\n      [\n        \"▁Forex\",\n        -12.260939598083496\n      ],\n      [\n        \"▁Edinburgh\",\n        -12.260943412780762\n      ],\n      [\n        \"▁Traditional\",\n        -12.261032104492188\n      ],\n      [\n        \"▁1968\",\n        -12.261134147644043\n      ],\n      [\n        \"▁glow\",\n        -12.261248588562012\n      ],\n      [\n        \"Alternatively\",\n        -12.261265754699707\n      ],\n      [\n        \"▁partly\",\n        -12.261354446411133\n      ],\n      [\n        \"égi\",\n        -12.261401176452637\n      ],\n      [\n        \"▁Prices\",\n        -12.261640548706055\n      ],\n      [\n        \"haupt\",\n        -12.261651992797852\n      ],\n      [\n        \"▁sentences\",\n        -12.261711120605469\n      ],\n      [\n        \"ouvre\",\n        -12.261735916137695\n      ],\n      [\n        \"▁Liter\",\n        -12.261746406555176\n      ],\n      [\n        \"▁Important\",\n        -12.2620267868042\n      ],\n      [\n        \"▁Collins\",\n        -12.262077331542969\n      ],\n      [\n        \"▁reproduce\",\n        -12.262106895446777\n      ],\n      [\n        \"▁selten\",\n        -12.262124061584473\n      ],\n      [\n        \"▁Mitte\",\n        -12.262170791625977\n      ],\n      [\n        \"OA\",\n        -12.262174606323242\n      ],\n      [\n        \"▁Sister\",\n        -12.262358665466309\n      ],\n      [\n        \"▁responding\",\n        -12.262385368347168\n      ],\n      [\n        \"▁ballot\",\n        -12.262455940246582\n      ],\n      [\n        \"▁Nutrition\",\n        -12.262460708618164\n      ],\n      [\n        \"occurrence\",\n        -12.26246452331543\n      ],\n      [\n        \"Atunci\",\n        -12.262604713439941\n      ],\n      [\n        \"▁hockey\",\n        -12.262680053710938\n      ],\n      [\n        \"▁undertaking\",\n        -12.262697219848633\n      ],\n      [\n        \"▁educators\",\n        -12.262885093688965\n      ],\n      [\n        \"▁Swedish\",\n        -12.262893676757812\n      ],\n      [\n        \"▁Recovery\",\n        -12.262894630432129\n      ],\n      [\n        \"▁circum\",\n        -12.262910842895508\n      ],\n      [\n        \"▁chains\",\n        -12.263084411621094\n      ],\n      [\n        \"▁genug\",\n        -12.263113021850586\n      ],\n      [\n        \"▁Pil\",\n        -12.263227462768555\n      ],\n      [\n        \"▁farms\",\n        -12.263265609741211\n      ],\n      [\n        \"▁simplicity\",\n        -12.263336181640625\n      ],\n      [\n        \"-21\",\n        -12.263399124145508\n      ],\n      [\n        \"▁partition\",\n        -12.263493537902832\n      ],\n      [\n        \"▁Relations\",\n        -12.26360034942627\n      ],\n      [\n        \"zentrale\",\n        -12.263794898986816\n      ],\n      [\n        \"lapse\",\n        -12.263855934143066\n      ],\n      [\n        \"▁toast\",\n        -12.263862609863281\n      ],\n      [\n        \"▁citi\",\n        -12.263946533203125\n      ],\n      [\n        \"▁longtemps\",\n        -12.263984680175781\n      ],\n      [\n        \"maj\",\n        -12.264448165893555\n      ],\n      [\n        \"▁Cin\",\n        -12.264483451843262\n      ],\n      [\n        \"zeichen\",\n        -12.264504432678223\n      ],\n      [\n        \"▁Zoo\",\n        -12.264567375183105\n      ],\n      [\n        \"▁frisch\",\n        -12.264570236206055\n      ],\n      [\n        \"▁permettra\",\n        -12.264595031738281\n      ],\n      [\n        \"▁Liberty\",\n        -12.264642715454102\n      ],\n      [\n        \"▁playground\",\n        -12.264873504638672\n      ],\n      [\n        \"▁Mate\",\n        -12.265031814575195\n      ],\n      [\n        \"▁evolving\",\n        -12.265066146850586\n      ],\n      [\n        \"national\",\n        -12.265207290649414\n      ],\n      [\n        \"▁signifie\",\n        -12.265279769897461\n      ],\n      [\n        \"▁Related\",\n        -12.265292167663574\n      ],\n      [\n        \"NES\",\n        -12.265337944030762\n      ],\n      [\n        \"euil\",\n        -12.265473365783691\n      ],\n      [\n        \"▁struggles\",\n        -12.265542030334473\n      ],\n      [\n        \"▁instinct\",\n        -12.265628814697266\n      ],\n      [\n        \"arbre\",\n        -12.26608943939209\n      ],\n      [\n        \"▁commands\",\n        -12.266222953796387\n      ],\n      [\n        \"▁frumoase\",\n        -12.26637077331543\n      ],\n      [\n        \"▁watches\",\n        -12.266779899597168\n      ],\n      [\n        \"NM\",\n        -12.266804695129395\n      ],\n      [\n        \"▁influential\",\n        -12.266807556152344\n      ],\n      [\n        \"▁gewesen\",\n        -12.266901969909668\n      ],\n      [\n        \"▁Pictures\",\n        -12.267224311828613\n      ],\n      [\n        \"▁HVAC\",\n        -12.267242431640625\n      ],\n      [\n        \"▁skate\",\n        -12.26732063293457\n      ],\n      [\n        \"▁Robot\",\n        -12.267327308654785\n      ],\n      [\n        \"▁Boys\",\n        -12.267404556274414\n      ],\n      [\n        \"▁Mutter\",\n        -12.267425537109375\n      ],\n      [\n        \"▁marques\",\n        -12.267539024353027\n      ],\n      [\n        \"utiliser\",\n        -12.267793655395508\n      ],\n      [\n        \"▁amazed\",\n        -12.267799377441406\n      ],\n      [\n        \"ächtig\",\n        -12.26783275604248\n      ],\n      [\n        \"▁Success\",\n        -12.267870903015137\n      ],\n      [\n        \"gramm\",\n        -12.267956733703613\n      ],\n      [\n        \"▁1972\",\n        -12.267956733703613\n      ],\n      [\n        \"▁marina\",\n        -12.268269538879395\n      ],\n      [\n        \"▁lou\",\n        -12.268321990966797\n      ],\n      [\n        \"▁précis\",\n        -12.268380165100098\n      ],\n      [\n        \"ographic\",\n        -12.268482208251953\n      ],\n      [\n        \"people\",\n        -12.26848316192627\n      ],\n      [\n        \"fahr\",\n        -12.268547058105469\n      ],\n      [\n        \"▁Contemporary\",\n        -12.268550872802734\n      ],\n      [\n        \"▁frustrating\",\n        -12.26858139038086\n      ],\n      [\n        \"chide\",\n        -12.268704414367676\n      ],\n      [\n        \"1.5\",\n        -12.268807411193848\n      ],\n      [\n        \"▁ankle\",\n        -12.268850326538086\n      ],\n      [\n        \"▁proximity\",\n        -12.268986701965332\n      ],\n      [\n        \"▁Leute\",\n        -12.269006729125977\n      ],\n      [\n        \"UA\",\n        -12.269031524658203\n      ],\n      [\n        \"union\",\n        -12.269131660461426\n      ],\n      [\n        \"▁recovered\",\n        -12.269133567810059\n      ],\n      [\n        \"▁sword\",\n        -12.269216537475586\n      ],\n      [\n        \"▁Mut\",\n        -12.26923942565918\n      ],\n      [\n        \"▁Rin\",\n        -12.269360542297363\n      ],\n      [\n        \"▁lectures\",\n        -12.26942253112793\n      ],\n      [\n        \"▁licensing\",\n        -12.269423484802246\n      ],\n      [\n        \"MAC\",\n        -12.269498825073242\n      ],\n      [\n        \"▁commute\",\n        -12.269776344299316\n      ],\n      [\n        \"Acesta\",\n        -12.269858360290527\n      ],\n      [\n        \"▁Koch\",\n        -12.270088195800781\n      ],\n      [\n        \"▁depozit\",\n        -12.270119667053223\n      ],\n      [\n        \"▁erstmal\",\n        -12.270163536071777\n      ],\n      [\n        \"arhi\",\n        -12.270271301269531\n      ],\n      [\n        \"▁Normal\",\n        -12.270462036132812\n      ],\n      [\n        \"EZ\",\n        -12.270464897155762\n      ],\n      [\n        \"ărilor\",\n        -12.270986557006836\n      ],\n      [\n        \"▁favoris\",\n        -12.271041870117188\n      ],\n      [\n        \"▁$9\",\n        -12.271050453186035\n      ],\n      [\n        \"▁Lawrence\",\n        -12.271172523498535\n      ],\n      [\n        \"▁fixing\",\n        -12.271200180053711\n      ],\n      [\n        \"▁researching\",\n        -12.271288871765137\n      ],\n      [\n        \"▁Pant\",\n        -12.271467208862305\n      ],\n      [\n        \"▁candid\",\n        -12.271490097045898\n      ],\n      [\n        \"▁Arkansas\",\n        -12.27160930633545\n      ],\n      [\n        \"▁bitcoin\",\n        -12.271612167358398\n      ],\n      [\n        \"ва\",\n        -12.271645545959473\n      ],\n      [\n        \"▁Finger\",\n        -12.271692276000977\n      ],\n      [\n        \"▁SRL\",\n        -12.271718978881836\n      ],\n      [\n        \"Arg\",\n        -12.271797180175781\n      ],\n      [\n        \"trade\",\n        -12.271903991699219\n      ],\n      [\n        \"▁extraction\",\n        -12.271941184997559\n      ],\n      [\n        \"▁footprint\",\n        -12.2720308303833\n      ],\n      [\n        \"▁folosite\",\n        -12.272085189819336\n      ],\n      [\n        \"▁Flex\",\n        -12.272184371948242\n      ],\n      [\n        \"▁dys\",\n        -12.272294998168945\n      ],\n      [\n        \"▁Wright\",\n        -12.272343635559082\n      ],\n      [\n        \"▁multitude\",\n        -12.272378921508789\n      ],\n      [\n        \"▁Chu\",\n        -12.272494316101074\n      ],\n      [\n        \"▁Jerry\",\n        -12.27249526977539\n      ],\n      [\n        \"▁notebook\",\n        -12.272722244262695\n      ],\n      [\n        \"▁SIM\",\n        -12.272932052612305\n      ],\n      [\n        \"dietary\",\n        -12.272963523864746\n      ],\n      [\n        \"▁polished\",\n        -12.272984504699707\n      ],\n      [\n        \"▁carriers\",\n        -12.272993087768555\n      ],\n      [\n        \"▁cardiac\",\n        -12.27299976348877\n      ],\n      [\n        \"▁burned\",\n        -12.273038864135742\n      ],\n      [\n        \"▁sealed\",\n        -12.273062705993652\n      ],\n      [\n        \"▁pumps\",\n        -12.273224830627441\n      ],\n      [\n        \"▁consumed\",\n        -12.273233413696289\n      ],\n      [\n        \"▁Teaching\",\n        -12.273446083068848\n      ],\n      [\n        \"▁daughters\",\n        -12.27348518371582\n      ],\n      [\n        \"serviciile\",\n        -12.273600578308105\n      ],\n      [\n        \"▁Teams\",\n        -12.273690223693848\n      ],\n      [\n        \"▁avoided\",\n        -12.273903846740723\n      ],\n      [\n        \"▁compagnie\",\n        -12.274019241333008\n      ],\n      [\n        \"▁mașin\",\n        -12.274024963378906\n      ],\n      [\n        \"▁Sean\",\n        -12.27418041229248\n      ],\n      [\n        \"▁arunc\",\n        -12.274208068847656\n      ],\n      [\n        \"kräfte\",\n        -12.274238586425781\n      ],\n      [\n        \"vani\",\n        -12.274255752563477\n      ],\n      [\n        \"Metall\",\n        -12.27437973022461\n      ],\n      [\n        \"2009\",\n        -12.274449348449707\n      ],\n      [\n        \"moi\",\n        -12.274688720703125\n      ],\n      [\n        \"▁THAT\",\n        -12.274700164794922\n      ],\n      [\n        \"▁Ny\",\n        -12.274809837341309\n      ],\n      [\n        \"▁countertops\",\n        -12.274860382080078\n      ],\n      [\n        \"Pod\",\n        -12.274938583374023\n      ],\n      [\n        \"amente\",\n        -12.274943351745605\n      ],\n      [\n        \"▁offshore\",\n        -12.275001525878906\n      ],\n      [\n        \"luti\",\n        -12.275087356567383\n      ],\n      [\n        \"parked\",\n        -12.275160789489746\n      ],\n      [\n        \"ajout\",\n        -12.275247573852539\n      ],\n      [\n        \"Shirt\",\n        -12.275328636169434\n      ],\n      [\n        \"▁3/4\",\n        -12.275389671325684\n      ],\n      [\n        \"▁gratuite\",\n        -12.27543830871582\n      ],\n      [\n        \"mètres\",\n        -12.27557373046875\n      ],\n      [\n        \"▁Wish\",\n        -12.2755765914917\n      ],\n      [\n        \"▁holistic\",\n        -12.27558422088623\n      ],\n      [\n        \"gren\",\n        -12.275607109069824\n      ],\n      [\n        \"compiled\",\n        -12.275660514831543\n      ],\n      [\n        \"▁innocent\",\n        -12.275779724121094\n      ],\n      [\n        \"▁sorte\",\n        -12.275787353515625\n      ],\n      [\n        \"▁insulin\",\n        -12.275792121887207\n      ],\n      [\n        \"▁Academic\",\n        -12.275996208190918\n      ],\n      [\n        \"▁acrylic\",\n        -12.27600383758545\n      ],\n      [\n        \"▁hinzu\",\n        -12.27616024017334\n      ],\n      [\n        \"▁compression\",\n        -12.27619457244873\n      ],\n      [\n        \"▁viral\",\n        -12.276220321655273\n      ],\n      [\n        \"▁stereo\",\n        -12.2764892578125\n      ],\n      [\n        \"▁Concept\",\n        -12.276542663574219\n      ],\n      [\n        \"▁Margaret\",\n        -12.276659965515137\n      ],\n      [\n        \"▁consolidation\",\n        -12.276875495910645\n      ],\n      [\n        \"Figure\",\n        -12.277058601379395\n      ],\n      [\n        \"zzo\",\n        -12.277061462402344\n      ],\n      [\n        \"▁Egg\",\n        -12.277098655700684\n      ],\n      [\n        \"weiterhin\",\n        -12.277213096618652\n      ],\n      [\n        \"▁Vista\",\n        -12.277252197265625\n      ],\n      [\n        \"▁necessity\",\n        -12.277316093444824\n      ],\n      [\n        \"▁kayak\",\n        -12.277490615844727\n      ],\n      [\n        \"▁consensus\",\n        -12.277535438537598\n      ],\n      [\n        \"▁Katz\",\n        -12.277602195739746\n      ],\n      [\n        \"▁Warren\",\n        -12.277640342712402\n      ],\n      [\n        \"▁custody\",\n        -12.277755737304688\n      ],\n      [\n        \"++\",\n        -12.277759552001953\n      ],\n      [\n        \"▁paiement\",\n        -12.277782440185547\n      ],\n      [\n        \"▁foul\",\n        -12.277878761291504\n      ],\n      [\n        \"Chaque\",\n        -12.277934074401855\n      ],\n      [\n        \"▁Syrian\",\n        -12.277998924255371\n      ],\n      [\n        \"▁photographers\",\n        -12.278056144714355\n      ],\n      [\n        \"▁dismiss\",\n        -12.278270721435547\n      ],\n      [\n        \"▁Gaz\",\n        -12.278526306152344\n      ],\n      [\n        \"▁développer\",\n        -12.278529167175293\n      ],\n      [\n        \"▁Dakota\",\n        -12.27863883972168\n      ],\n      [\n        \"▁cardiovascular\",\n        -12.278642654418945\n      ],\n      [\n        \"▁tattoo\",\n        -12.278858184814453\n      ],\n      [\n        \"▁Lighting\",\n        -12.278918266296387\n      ],\n      [\n        \"▁nowhere\",\n        -12.278940200805664\n      ],\n      [\n        \"vada\",\n        -12.27895450592041\n      ],\n      [\n        \"▁Favor\",\n        -12.279084205627441\n      ],\n      [\n        \"ruled\",\n        -12.2791748046875\n      ],\n      [\n        \"▁Dating\",\n        -12.2793550491333\n      ],\n      [\n        \"gain\",\n        -12.279963493347168\n      ],\n      [\n        \"rism\",\n        -12.28016471862793\n      ],\n      [\n        \"coloured\",\n        -12.280169486999512\n      ],\n      [\n        \"▁refugees\",\n        -12.280184745788574\n      ],\n      [\n        \"▁Schm\",\n        -12.2803955078125\n      ],\n      [\n        \"▁happily\",\n        -12.280402183532715\n      ],\n      [\n        \"▁specification\",\n        -12.280607223510742\n      ],\n      [\n        \"WM\",\n        -12.280736923217773\n      ],\n      [\n        \"▁intro\",\n        -12.280823707580566\n      ],\n      [\n        \"rack\",\n        -12.28097915649414\n      ],\n      [\n        \"characterized\",\n        -12.28107738494873\n      ],\n      [\n        \"▁externe\",\n        -12.281136512756348\n      ],\n      [\n        \"▁arrives\",\n        -12.28114128112793\n      ],\n      [\n        \"WO\",\n        -12.281181335449219\n      ],\n      [\n        \"bericht\",\n        -12.281233787536621\n      ],\n      [\n        \"▁delays\",\n        -12.281242370605469\n      ],\n      [\n        \"▁Flight\",\n        -12.281256675720215\n      ],\n      [\n        \"1-3\",\n        -12.281524658203125\n      ],\n      [\n        \"▁Singh\",\n        -12.281548500061035\n      ],\n      [\n        \"▁shifting\",\n        -12.281651496887207\n      ],\n      [\n        \"▁dashboard\",\n        -12.281729698181152\n      ],\n      [\n        \"▁lieux\",\n        -12.281781196594238\n      ],\n      [\n        \"▁validate\",\n        -12.281901359558105\n      ],\n      [\n        \"▁uniquement\",\n        -12.281963348388672\n      ],\n      [\n        \"clip\",\n        -12.28199291229248\n      ],\n      [\n        \"cov\",\n        -12.282132148742676\n      ],\n      [\n        \"▁tendance\",\n        -12.282215118408203\n      ],\n      [\n        \"èle\",\n        -12.282258033752441\n      ],\n      [\n        \"▁incepe\",\n        -12.282261848449707\n      ],\n      [\n        \"▁chunk\",\n        -12.282585144042969\n      ],\n      [\n        \"▁Nr\",\n        -12.28266716003418\n      ],\n      [\n        \"▁Montana\",\n        -12.282674789428711\n      ],\n      [\n        \"▁sticks\",\n        -12.28277587890625\n      ],\n      [\n        \"▁caps\",\n        -12.28309154510498\n      ],\n      [\n        \"▁Jimmy\",\n        -12.283167839050293\n      ],\n      [\n        \"▁Levi\",\n        -12.283285140991211\n      ],\n      [\n        \"▁cables\",\n        -12.28345012664795\n      ],\n      [\n        \"▁SB\",\n        -12.283550262451172\n      ],\n      [\n        \"▁thème\",\n        -12.2836275100708\n      ],\n      [\n        \"ADA\",\n        -12.283672332763672\n      ],\n      [\n        \"▁garant\",\n        -12.283686637878418\n      ],\n      [\n        \"▁Joint\",\n        -12.283820152282715\n      ],\n      [\n        \"▁partage\",\n        -12.28398323059082\n      ],\n      [\n        \"schreib\",\n        -12.284119606018066\n      ],\n      [\n        \"ether\",\n        -12.28420352935791\n      ],\n      [\n        \"▁Klima\",\n        -12.284303665161133\n      ],\n      [\n        \"▁medicines\",\n        -12.284317016601562\n      ],\n      [\n        \"▁pH\",\n        -12.284320831298828\n      ],\n      [\n        \"Architect\",\n        -12.284378051757812\n      ],\n      [\n        \"știi\",\n        -12.284396171569824\n      ],\n      [\n        \"▁retrouve\",\n        -12.284700393676758\n      ],\n      [\n        \"▁posture\",\n        -12.284753799438477\n      ],\n      [\n        \"Feature\",\n        -12.284773826599121\n      ],\n      [\n        \"▁drying\",\n        -12.284884452819824\n      ],\n      [\n        \"trifft\",\n        -12.28488826751709\n      ],\n      [\n        \"ibi\",\n        -12.285079002380371\n      ],\n      [\n        \"▁rezerv\",\n        -12.285116195678711\n      ],\n      [\n        \"▁Vă\",\n        -12.28518009185791\n      ],\n      [\n        \"▁Speaker\",\n        -12.285282135009766\n      ],\n      [\n        \"▁illustration\",\n        -12.285319328308105\n      ],\n      [\n        \"oooo\",\n        -12.285419464111328\n      ],\n      [\n        \"▁initiated\",\n        -12.285518646240234\n      ],\n      [\n        \"PK\",\n        -12.285545349121094\n      ],\n      [\n        \"▁algorithms\",\n        -12.285630226135254\n      ],\n      [\n        \"▁zice\",\n        -12.285757064819336\n      ],\n      [\n        \"WI\",\n        -12.28581428527832\n      ],\n      [\n        \"urgence\",\n        -12.285823822021484\n      ],\n      [\n        \"▁bloggers\",\n        -12.285887718200684\n      ],\n      [\n        \"▁realitate\",\n        -12.285894393920898\n      ],\n      [\n        \"eks\",\n        -12.28598690032959\n      ],\n      [\n        \"▁cushions\",\n        -12.286149024963379\n      ],\n      [\n        \"▁Kri\",\n        -12.286224365234375\n      ],\n      [\n        \"▁réalisation\",\n        -12.286396026611328\n      ],\n      [\n        \"▁Photoshop\",\n        -12.286407470703125\n      ],\n      [\n        \"cret\",\n        -12.286462783813477\n      ],\n      [\n        \"faire\",\n        -12.286613464355469\n      ],\n      [\n        \"▁Cei\",\n        -12.286782264709473\n      ],\n      [\n        \"ICO\",\n        -12.286789894104004\n      ],\n      [\n        \"Contin\",\n        -12.28681755065918\n      ],\n      [\n        \"▁Builder\",\n        -12.286916732788086\n      ],\n      [\n        \"look\",\n        -12.28698444366455\n      ],\n      [\n        \"▁tenants\",\n        -12.287023544311523\n      ],\n      [\n        \"▁gloves\",\n        -12.287113189697266\n      ],\n      [\n        \"Day\",\n        -12.287169456481934\n      ],\n      [\n        \"firmly\",\n        -12.28725814819336\n      ],\n      [\n        \"CIA\",\n        -12.287352561950684\n      ],\n      [\n        \"▁TVA\",\n        -12.28741455078125\n      ],\n      [\n        \"▁notifications\",\n        -12.287446975708008\n      ],\n      [\n        \"▁Higher\",\n        -12.287459373474121\n      ],\n      [\n        \"▁Weihnachts\",\n        -12.287491798400879\n      ],\n      [\n        \"▁blur\",\n        -12.287755012512207\n      ],\n      [\n        \"ов\",\n        -12.288087844848633\n      ],\n      [\n        \"feder\",\n        -12.288159370422363\n      ],\n      [\n        \"▁explosion\",\n        -12.288171768188477\n      ],\n      [\n        \"▁Fenster\",\n        -12.288189888000488\n      ],\n      [\n        \"▁junge\",\n        -12.288225173950195\n      ],\n      [\n        \"▁Highland\",\n        -12.288230895996094\n      ],\n      [\n        \"▁Lü\",\n        -12.288290023803711\n      ],\n      [\n        \"▁Alba\",\n        -12.28832721710205\n      ],\n      [\n        \"▁Dort\",\n        -12.288338661193848\n      ],\n      [\n        \"▁recruiting\",\n        -12.28835391998291\n      ],\n      [\n        \"▁Multiple\",\n        -12.288549423217773\n      ],\n      [\n        \"▁animated\",\n        -12.288604736328125\n      ],\n      [\n        \"▁Virgin\",\n        -12.288637161254883\n      ],\n      [\n        \"1000\",\n        -12.288676261901855\n      ],\n      [\n        \"▁resin\",\n        -12.288700103759766\n      ],\n      [\n        \"▁matrix\",\n        -12.288826942443848\n      ],\n      [\n        \"irri\",\n        -12.289011001586914\n      ],\n      [\n        \"▁chiffre\",\n        -12.28904914855957\n      ],\n      [\n        \"▁Corps\",\n        -12.289252281188965\n      ],\n      [\n        \"▁advocacy\",\n        -12.28927230834961\n      ],\n      [\n        \"▁pozitiv\",\n        -12.289274215698242\n      ],\n      [\n        \"▁pouss\",\n        -12.289451599121094\n      ],\n      [\n        \"événement\",\n        -12.28950309753418\n      ],\n      [\n        \"▁pielii\",\n        -12.289717674255371\n      ],\n      [\n        \"onnais\",\n        -12.289750099182129\n      ],\n      [\n        \"▁Statement\",\n        -12.289754867553711\n      ],\n      [\n        \"crimin\",\n        -12.289868354797363\n      ],\n      [\n        \"hidrat\",\n        -12.289942741394043\n      ],\n      [\n        \"▁Jugendliche\",\n        -12.290057182312012\n      ],\n      [\n        \"TRI\",\n        -12.290223121643066\n      ],\n      [\n        \"erra\",\n        -12.290240287780762\n      ],\n      [\n        \"chat\",\n        -12.290321350097656\n      ],\n      [\n        \"▁traits\",\n        -12.290359497070312\n      ],\n      [\n        \"▁incentives\",\n        -12.29038143157959\n      ],\n      [\n        \"▁accelerate\",\n        -12.290568351745605\n      ],\n      [\n        \"woven\",\n        -12.290633201599121\n      ],\n      [\n        \"UST\",\n        -12.290688514709473\n      ],\n      [\n        \"▁premiers\",\n        -12.290717124938965\n      ],\n      [\n        \"▁Ferien\",\n        -12.290755271911621\n      ],\n      [\n        \"▁mariage\",\n        -12.290796279907227\n      ],\n      [\n        \"▁financially\",\n        -12.290801048278809\n      ],\n      [\n        \"gesellschaft\",\n        -12.290863037109375\n      ],\n      [\n        \"▁situaţi\",\n        -12.290865898132324\n      ],\n      [\n        \"▁quoted\",\n        -12.291373252868652\n      ],\n      [\n        \"▁periodic\",\n        -12.291421890258789\n      ],\n      [\n        \"▁chaos\",\n        -12.291543960571289\n      ],\n      [\n        \"▁remodel\",\n        -12.29159927368164\n      ],\n      [\n        \"▁Contractor\",\n        -12.291641235351562\n      ],\n      [\n        \"▁recuper\",\n        -12.291729927062988\n      ],\n      [\n        \"▁driveway\",\n        -12.291755676269531\n      ],\n      [\n        \"▁entertain\",\n        -12.291765213012695\n      ],\n      [\n        \"▁condus\",\n        -12.291769027709961\n      ],\n      [\n        \"▁chefs\",\n        -12.29184341430664\n      ],\n      [\n        \"pak\",\n        -12.291866302490234\n      ],\n      [\n        \"▁possède\",\n        -12.291948318481445\n      ],\n      [\n        \"▁outreach\",\n        -12.291984558105469\n      ],\n      [\n        \"▁navig\",\n        -12.292036056518555\n      ],\n      [\n        \"▁renewal\",\n        -12.292071342468262\n      ],\n      [\n        \"▁Rice\",\n        -12.292309761047363\n      ],\n      [\n        \"▁Czech\",\n        -12.292398452758789\n      ],\n      [\n        \"▁entstehen\",\n        -12.292445182800293\n      ],\n      [\n        \"▁droite\",\n        -12.292448997497559\n      ],\n      [\n        \"▁Investor\",\n        -12.292497634887695\n      ],\n      [\n        \"▁Soci\",\n        -12.29250431060791\n      ],\n      [\n        \"▁scalp\",\n        -12.292622566223145\n      ],\n      [\n        \"▁politiques\",\n        -12.292815208435059\n      ],\n      [\n        \"▁plaintiff\",\n        -12.292841911315918\n      ],\n      [\n        \"extending\",\n        -12.29287052154541\n      ],\n      [\n        \"▁paperwork\",\n        -12.29300594329834\n      ],\n      [\n        \"vizi\",\n        -12.293142318725586\n      ],\n      [\n        \"assisting\",\n        -12.29317569732666\n      ],\n      [\n        \"local\",\n        -12.293272972106934\n      ],\n      [\n        \"▁Wear\",\n        -12.293323516845703\n      ],\n      [\n        \"▁descend\",\n        -12.293340682983398\n      ],\n      [\n        \"▁Wikipedia\",\n        -12.293513298034668\n      ],\n      [\n        \"▁Consiliului\",\n        -12.293516159057617\n      ],\n      [\n        \"▁Nokia\",\n        -12.293540000915527\n      ],\n      [\n        \"▁facult\",\n        -12.293560028076172\n      ],\n      [\n        \"▁altogether\",\n        -12.293851852416992\n      ],\n      [\n        \"▁rankings\",\n        -12.29391860961914\n      ],\n      [\n        \"▁downloading\",\n        -12.293953895568848\n      ],\n      [\n        \"QU\",\n        -12.294007301330566\n      ],\n      [\n        \"▁Olive\",\n        -12.294041633605957\n      ],\n      [\n        \"▁backdrop\",\n        -12.294110298156738\n      ],\n      [\n        \"▁recomandat\",\n        -12.294116020202637\n      ],\n      [\n        \"▁Faculty\",\n        -12.294184684753418\n      ],\n      [\n        \"ANS\",\n        -12.294220924377441\n      ],\n      [\n        \"▁fracture\",\n        -12.294225692749023\n      ],\n      [\n        \"job\",\n        -12.29448127746582\n      ],\n      [\n        \"▁anticipate\",\n        -12.294525146484375\n      ],\n      [\n        \"▁drift\",\n        -12.294543266296387\n      ],\n      [\n        \"▁Marco\",\n        -12.294632911682129\n      ],\n      [\n        \"▁witnessed\",\n        -12.294700622558594\n      ],\n      [\n        \"▁comprend\",\n        -12.294974327087402\n      ],\n      [\n        \"▁bulb\",\n        -12.29504680633545\n      ],\n      [\n        \"▁shallow\",\n        -12.295059204101562\n      ],\n      [\n        \"stärke\",\n        -12.295063972473145\n      ],\n      [\n        \"▁Jessica\",\n        -12.295080184936523\n      ],\n      [\n        \"▁démarche\",\n        -12.29508113861084\n      ],\n      [\n        \"▁traditionally\",\n        -12.29508113861084\n      ],\n      [\n        \"Deputy\",\n        -12.295093536376953\n      ],\n      [\n        \"▁rivers\",\n        -12.295260429382324\n      ],\n      [\n        \"▁livraison\",\n        -12.29531192779541\n      ],\n      [\n        \"▁lacking\",\n        -12.295421600341797\n      ],\n      [\n        \"▁remodeling\",\n        -12.295426368713379\n      ],\n      [\n        \"▁acesteia\",\n        -12.295514106750488\n      ],\n      [\n        \"▁grosse\",\n        -12.295669555664062\n      ],\n      [\n        \"▁propus\",\n        -12.295833587646484\n      ],\n      [\n        \"lessly\",\n        -12.29587459564209\n      ],\n      [\n        \"▁Kredit\",\n        -12.295931816101074\n      ],\n      [\n        \"reputable\",\n        -12.295981407165527\n      ],\n      [\n        \"▁Sell\",\n        -12.2960205078125\n      ],\n      [\n        \"▁Crime\",\n        -12.296111106872559\n      ],\n      [\n        \"Ent\",\n        -12.296310424804688\n      ],\n      [\n        \"finity\",\n        -12.296422004699707\n      ],\n      [\n        \"▁Complex\",\n        -12.296500205993652\n      ],\n      [\n        \"easing\",\n        -12.296638488769531\n      ],\n      [\n        \"dynamic\",\n        -12.296670913696289\n      ],\n      [\n        \"▁eaten\",\n        -12.296727180480957\n      ],\n      [\n        \"gezogen\",\n        -12.296734809875488\n      ],\n      [\n        \"▁2004,\",\n        -12.296774864196777\n      ],\n      [\n        \"▁Muslims\",\n        -12.296822547912598\n      ],\n      [\n        \"▁Sprache\",\n        -12.296883583068848\n      ],\n      [\n        \"▁Truth\",\n        -12.296927452087402\n      ],\n      [\n        \"▁guarantees\",\n        -12.296928405761719\n      ],\n      [\n        \"/5\",\n        -12.29712963104248\n      ],\n      [\n        \"”).\",\n        -12.297135353088379\n      ],\n      [\n        \"▁Medium\",\n        -12.2972993850708\n      ],\n      [\n        \"▁décidé\",\n        -12.297445297241211\n      ],\n      [\n        \"▁balcony\",\n        -12.29747200012207\n      ],\n      [\n        \"leuchte\",\n        -12.297502517700195\n      ],\n      [\n        \"hik\",\n        -12.297849655151367\n      ],\n      [\n        \"▁Agriculture\",\n        -12.298221588134766\n      ],\n      [\n        \"▁securities\",\n        -12.298221588134766\n      ],\n      [\n        \"Probably\",\n        -12.298224449157715\n      ],\n      [\n        \"▁macar\",\n        -12.29824161529541\n      ],\n      [\n        \"▁Signal\",\n        -12.298399925231934\n      ],\n      [\n        \"lake\",\n        -12.298677444458008\n      ],\n      [\n        \"▁compétences\",\n        -12.298726081848145\n      ],\n      [\n        \"▁proprietary\",\n        -12.298812866210938\n      ],\n      [\n        \"allons\",\n        -12.298850059509277\n      ],\n      [\n        \"▁belongs\",\n        -12.298916816711426\n      ],\n      [\n        \"▁missile\",\n        -12.298958778381348\n      ],\n      [\n        \"țiune\",\n        -12.298999786376953\n      ],\n      [\n        \"▁Integration\",\n        -12.299116134643555\n      ],\n      [\n        \"▁testimony\",\n        -12.299120903015137\n      ],\n      [\n        \"▁wesentlich\",\n        -12.299142837524414\n      ],\n      [\n        \"▁donors\",\n        -12.299152374267578\n      ],\n      [\n        \"▁pivot\",\n        -12.299202919006348\n      ],\n      [\n        \"▁Uber\",\n        -12.299219131469727\n      ],\n      [\n        \"▁databases\",\n        -12.299281120300293\n      ],\n      [\n        \"▁studi\",\n        -12.299317359924316\n      ],\n      [\n        \"totdeauna\",\n        -12.299351692199707\n      ],\n      [\n        \"▁briefly\",\n        -12.299449920654297\n      ],\n      [\n        \"▁livr\",\n        -12.29952335357666\n      ],\n      [\n        \"▁CRM\",\n        -12.299581527709961\n      ],\n      [\n        \"gone\",\n        -12.299697875976562\n      ],\n      [\n        \"10)\",\n        -12.299761772155762\n      ],\n      [\n        \"▁zilele\",\n        -12.299920082092285\n      ],\n      [\n        \"Basically\",\n        -12.300008773803711\n      ],\n      [\n        \"▁medie\",\n        -12.300041198730469\n      ],\n      [\n        \"spotted\",\n        -12.30006217956543\n      ],\n      [\n        \"▁troubles\",\n        -12.30009937286377\n      ],\n      [\n        \"▁acknowledged\",\n        -12.300176620483398\n      ],\n      [\n        \"350\",\n        -12.300185203552246\n      ],\n      [\n        \"LB\",\n        -12.300273895263672\n      ],\n      [\n        \"Phy\",\n        -12.30038833618164\n      ],\n      [\n        \"natal\",\n        -12.300397872924805\n      ],\n      [\n        \"illé\",\n        -12.300445556640625\n      ],\n      [\n        \"bilder\",\n        -12.300625801086426\n      ],\n      [\n        \"▁apples\",\n        -12.300636291503906\n      ],\n      [\n        \"graphical\",\n        -12.300889015197754\n      ],\n      [\n        \"organiser\",\n        -12.301024436950684\n      ],\n      [\n        \"▁ochii\",\n        -12.301040649414062\n      ],\n      [\n        \"glas\",\n        -12.301178932189941\n      ],\n      [\n        \"CAP\",\n        -12.301180839538574\n      ],\n      [\n        \"▁Doors\",\n        -12.301331520080566\n      ],\n      [\n        \"▁Eis\",\n        -12.30156135559082\n      ],\n      [\n        \"tipuri\",\n        -12.301590919494629\n      ],\n      [\n        \"▁Worth\",\n        -12.301684379577637\n      ],\n      [\n        \"izează\",\n        -12.301719665527344\n      ],\n      [\n        \"nunț\",\n        -12.30180549621582\n      ],\n      [\n        \"▁Trip\",\n        -12.30186653137207\n      ],\n      [\n        \"ISS\",\n        -12.301976203918457\n      ],\n      [\n        \"efficient\",\n        -12.30201530456543\n      ],\n      [\n        \"Luckily\",\n        -12.302099227905273\n      ],\n      [\n        \"▁vase\",\n        -12.302133560180664\n      ],\n      [\n        \"▁gay\",\n        -12.302343368530273\n      ],\n      [\n        \"▁certificates\",\n        -12.302434921264648\n      ],\n      [\n        \"riad\",\n        -12.302549362182617\n      ],\n      [\n        \"stab\",\n        -12.302570343017578\n      ],\n      [\n        \"affiche\",\n        -12.302604675292969\n      ],\n      [\n        \"▁iPod\",\n        -12.302645683288574\n      ],\n      [\n        \"▁aștept\",\n        -12.302726745605469\n      ],\n      [\n        \"▁$500\",\n        -12.302751541137695\n      ],\n      [\n        \"▁Catherine\",\n        -12.302952766418457\n      ],\n      [\n        \"▁Circuit\",\n        -12.302957534790039\n      ],\n      [\n        \"▁ranch\",\n        -12.303045272827148\n      ],\n      [\n        \"▁consequence\",\n        -12.303118705749512\n      ],\n      [\n        \"listened\",\n        -12.303131103515625\n      ],\n      [\n        \"▁Options\",\n        -12.303187370300293\n      ],\n      [\n        \"feed\",\n        -12.30318832397461\n      ],\n      [\n        \"▁adviser\",\n        -12.303248405456543\n      ],\n      [\n        \"▁présenter\",\n        -12.30333423614502\n      ],\n      [\n        \"substant\",\n        -12.30337905883789\n      ],\n      [\n        \"▁Flag\",\n        -12.303604125976562\n      ],\n      [\n        \"▁Keith\",\n        -12.30366325378418\n      ],\n      [\n        \"▁inima\",\n        -12.303709983825684\n      ],\n      [\n        \"▁substrate\",\n        -12.30373764038086\n      ],\n      [\n        \"▁charger\",\n        -12.303803443908691\n      ],\n      [\n        \"▁reporter\",\n        -12.303844451904297\n      ],\n      [\n        \"ütz\",\n        -12.304068565368652\n      ],\n      [\n        \"▁unten\",\n        -12.30417537689209\n      ],\n      [\n        \"▁sympa\",\n        -12.304542541503906\n      ],\n      [\n        \"▁defeated\",\n        -12.304600715637207\n      ],\n      [\n        \"ändig\",\n        -12.304644584655762\n      ],\n      [\n        \"individu\",\n        -12.304747581481934\n      ],\n      [\n        \"▁Straßen\",\n        -12.304774284362793\n      ],\n      [\n        \"▁Nepal\",\n        -12.304791450500488\n      ],\n      [\n        \"million\",\n        -12.304803848266602\n      ],\n      [\n        \"▁Cake\",\n        -12.30499267578125\n      ],\n      [\n        \"▁investigations\",\n        -12.30526065826416\n      ],\n      [\n        \"▁inspector\",\n        -12.3054780960083\n      ],\n      [\n        \"▁Campbell\",\n        -12.305486679077148\n      ],\n      [\n        \"▁consommation\",\n        -12.305489540100098\n      ],\n      [\n        \"▁Ministerul\",\n        -12.305628776550293\n      ],\n      [\n        \"Advisory\",\n        -12.305749893188477\n      ],\n      [\n        \"▁Leistungs\",\n        -12.305939674377441\n      ],\n      [\n        \"▁Pull\",\n        -12.306157112121582\n      ],\n      [\n        \"▁lover\",\n        -12.306194305419922\n      ],\n      [\n        \"▁trunk\",\n        -12.306380271911621\n      ],\n      [\n        \"▁folosesc\",\n        -12.30639934539795\n      ],\n      [\n        \"pom\",\n        -12.306558609008789\n      ],\n      [\n        \"wunder\",\n        -12.306794166564941\n      ],\n      [\n        \"▁happier\",\n        -12.306801795959473\n      ],\n      [\n        \"▁embark\",\n        -12.30689525604248\n      ],\n      [\n        \"▁mediul\",\n        -12.3069486618042\n      ],\n      [\n        \"riff\",\n        -12.306973457336426\n      ],\n      [\n        \"▁copilul\",\n        -12.307039260864258\n      ],\n      [\n        \"ommage\",\n        -12.307126998901367\n      ],\n      [\n        \"rechnung\",\n        -12.307218551635742\n      ],\n      [\n        \"NU\",\n        -12.307220458984375\n      ],\n      [\n        \"▁fellowship\",\n        -12.307395935058594\n      ],\n      [\n        \"▁Mental\",\n        -12.307403564453125\n      ],\n      [\n        \"▁fever\",\n        -12.3074312210083\n      ],\n      [\n        \"▁silly\",\n        -12.307547569274902\n      ],\n      [\n        \"Object\",\n        -12.30756664276123\n      ],\n      [\n        \"NV\",\n        -12.307591438293457\n      ],\n      [\n        \"от\",\n        -12.30774974822998\n      ],\n      [\n        \"▁Strand\",\n        -12.307762145996094\n      ],\n      [\n        \"▁Exist\",\n        -12.30777359008789\n      ],\n      [\n        \"warum\",\n        -12.307832717895508\n      ],\n      [\n        \"CY\",\n        -12.307848930358887\n      ],\n      [\n        \"kä\",\n        -12.307856559753418\n      ],\n      [\n        \"!!!!!\",\n        -12.307869911193848\n      ],\n      [\n        \"▁moarte\",\n        -12.30793571472168\n      ],\n      [\n        \"▁waterfall\",\n        -12.308024406433105\n      ],\n      [\n        \"left\",\n        -12.30815601348877\n      ],\n      [\n        \"▁Nursing\",\n        -12.308225631713867\n      ],\n      [\n        \"▁invalid\",\n        -12.30826187133789\n      ],\n      [\n        \"struktur\",\n        -12.308385848999023\n      ],\n      [\n        \"Allerdings\",\n        -12.30838680267334\n      ],\n      [\n        \"étranger\",\n        -12.30838680267334\n      ],\n      [\n        \"▁prost\",\n        -12.308517456054688\n      ],\n      [\n        \"▁Parent\",\n        -12.308562278747559\n      ],\n      [\n        \"▁întreag\",\n        -12.308611869812012\n      ],\n      [\n        \"▁compensate\",\n        -12.308871269226074\n      ],\n      [\n        \"▁sometime\",\n        -12.308955192565918\n      ],\n      [\n        \"graduate\",\n        -12.308968544006348\n      ],\n      [\n        \"▁Carter\",\n        -12.30898380279541\n      ],\n      [\n        \"▁crap\",\n        -12.308998107910156\n      ],\n      [\n        \"▁mathematics\",\n        -12.309067726135254\n      ],\n      [\n        \"resemble\",\n        -12.309069633483887\n      ],\n      [\n        \"Dame\",\n        -12.309152603149414\n      ],\n      [\n        \"▁Swa\",\n        -12.309198379516602\n      ],\n      [\n        \"▁celebrity\",\n        -12.309239387512207\n      ],\n      [\n        \"▁verified\",\n        -12.309338569641113\n      ],\n      [\n        \"▁Behind\",\n        -12.309349060058594\n      ],\n      [\n        \"carbon\",\n        -12.309432983398438\n      ],\n      [\n        \"▁gateway\",\n        -12.309490203857422\n      ],\n      [\n        \"▁ambitious\",\n        -12.30952262878418\n      ],\n      [\n        \"▁Wellness\",\n        -12.30966567993164\n      ],\n      [\n        \"30,000\",\n        -12.30968189239502\n      ],\n      [\n        \"defined\",\n        -12.309929847717285\n      ],\n      [\n        \"specializes\",\n        -12.310121536254883\n      ],\n      [\n        \"▁Chase\",\n        -12.310199737548828\n      ],\n      [\n        \"HF\",\n        -12.310233116149902\n      ],\n      [\n        \"ABLE\",\n        -12.310348510742188\n      ],\n      [\n        \"▁Ehr\",\n        -12.310467720031738\n      ],\n      [\n        \"▁régime\",\n        -12.310480117797852\n      ],\n      [\n        \"▁awake\",\n        -12.310487747192383\n      ],\n      [\n        \"▁seafood\",\n        -12.310487747192383\n      ],\n      [\n        \"leading\",\n        -12.310554504394531\n      ],\n      [\n        \"▁Rule\",\n        -12.310602188110352\n      ],\n      [\n        \"verkehr\",\n        -12.310726165771484\n      ],\n      [\n        \"erem\",\n        -12.310737609863281\n      ],\n      [\n        \"▁1973\",\n        -12.310795783996582\n      ],\n      [\n        \"personal\",\n        -12.311171531677246\n      ],\n      [\n        \"ența\",\n        -12.311330795288086\n      ],\n      [\n        \"apprend\",\n        -12.311396598815918\n      ],\n      [\n        \"faisant\",\n        -12.311420440673828\n      ],\n      [\n        \"▁Sounds\",\n        -12.31151008605957\n      ],\n      [\n        \"▁Launch\",\n        -12.31151294708252\n      ],\n      [\n        \"half\",\n        -12.311636924743652\n      ],\n      [\n        \"▁verre\",\n        -12.311859130859375\n      ],\n      [\n        \"▁Regular\",\n        -12.31207275390625\n      ],\n      [\n        \"▁Nancy\",\n        -12.312142372131348\n      ],\n      [\n        \"quelles\",\n        -12.312161445617676\n      ],\n      [\n        \"▁erhält\",\n        -12.312169075012207\n      ],\n      [\n        \"▁socks\",\n        -12.3121919631958\n      ],\n      [\n        \"lamp\",\n        -12.312387466430664\n      ],\n      [\n        \"▁durchgeführt\",\n        -12.312472343444824\n      ],\n      [\n        \"▁advertise\",\n        -12.31260871887207\n      ],\n      [\n        \"powered\",\n        -12.312653541564941\n      ],\n      [\n        \"▁concur\",\n        -12.312699317932129\n      ],\n      [\n        \"▁ressources\",\n        -12.31293773651123\n      ],\n      [\n        \"▁allocation\",\n        -12.312986373901367\n      ],\n      [\n        \"chon\",\n        -12.313041687011719\n      ],\n      [\n        \"▁Larry\",\n        -12.313177108764648\n      ],\n      [\n        \"lässig\",\n        -12.313254356384277\n      ],\n      [\n        \"OLD\",\n        -12.313493728637695\n      ],\n      [\n        \"itty\",\n        -12.313599586486816\n      ],\n      [\n        \"▁immuno\",\n        -12.313645362854004\n      ],\n      [\n        \"▁(+\",\n        -12.313651084899902\n      ],\n      [\n        \"▁Essential\",\n        -12.313674926757812\n      ],\n      [\n        \"▁semaines\",\n        -12.313719749450684\n      ],\n      [\n        \"Ru\",\n        -12.31375503540039\n      ],\n      [\n        \"▁Gear\",\n        -12.313764572143555\n      ],\n      [\n        \"völlig\",\n        -12.313850402832031\n      ],\n      [\n        \"liga\",\n        -12.31391716003418\n      ],\n      [\n        \"▁Neg\",\n        -12.314082145690918\n      ],\n      [\n        \"▁gratitude\",\n        -12.31408977508545\n      ],\n      [\n        \"aventure\",\n        -12.314108848571777\n      ],\n      [\n        \"▁frustrated\",\n        -12.314115524291992\n      ],\n      [\n        \"▁retrait\",\n        -12.31422233581543\n      ],\n      [\n        \"▁statut\",\n        -12.314231872558594\n      ],\n      [\n        \"550\",\n        -12.31434440612793\n      ],\n      [\n        \"ла\",\n        -12.314428329467773\n      ],\n      [\n        \"risto\",\n        -12.314448356628418\n      ],\n      [\n        \"WAY\",\n        -12.314607620239258\n      ],\n      [\n        \"▁pigment\",\n        -12.314652442932129\n      ],\n      [\n        \"Selon\",\n        -12.314715385437012\n      ],\n      [\n        \"stil\",\n        -12.3148775100708\n      ],\n      [\n        \"▁Marin\",\n        -12.315055847167969\n      ],\n      [\n        \"ashi\",\n        -12.315085411071777\n      ],\n      [\n        \"▁contine\",\n        -12.31519889831543\n      ],\n      [\n        \"▁Economics\",\n        -12.315200805664062\n      ],\n      [\n        \"both\",\n        -12.3152437210083\n      ],\n      [\n        \"▁Dou\",\n        -12.31527328491211\n      ],\n      [\n        \"Fel\",\n        -12.315373420715332\n      ],\n      [\n        \"UNT\",\n        -12.315434455871582\n      ],\n      [\n        \"▁grandmother\",\n        -12.31548023223877\n      ],\n      [\n        \"▁domicile\",\n        -12.315678596496582\n      ],\n      [\n        \"▁buffer\",\n        -12.31574535369873\n      ],\n      [\n        \"▁fuse\",\n        -12.315815925598145\n      ],\n      [\n        \"▁dosage\",\n        -12.315821647644043\n      ],\n      [\n        \"▁Nici\",\n        -12.315839767456055\n      ],\n      [\n        \"▁worries\",\n        -12.315908432006836\n      ],\n      [\n        \"▁Rail\",\n        -12.3159818649292\n      ],\n      [\n        \"uneori\",\n        -12.315990447998047\n      ],\n      [\n        \"▁Sierra\",\n        -12.316030502319336\n      ],\n      [\n        \"▁porni\",\n        -12.316032409667969\n      ],\n      [\n        \"▁NOTE\",\n        -12.316056251525879\n      ],\n      [\n        \"▁tendency\",\n        -12.316065788269043\n      ],\n      [\n        \"Set\",\n        -12.316256523132324\n      ],\n      [\n        \"▁Hof\",\n        -12.31629753112793\n      ],\n      [\n        \"▁Ruhe\",\n        -12.316300392150879\n      ],\n      [\n        \"harm\",\n        -12.316360473632812\n      ],\n      [\n        \"▁Developer\",\n        -12.316367149353027\n      ],\n      [\n        \"suing\",\n        -12.316400527954102\n      ],\n      [\n        \"persönlichen\",\n        -12.31658935546875\n      ],\n      [\n        \"▁agréable\",\n        -12.316596031188965\n      ],\n      [\n        \"commissioned\",\n        -12.316696166992188\n      ],\n      [\n        \"▁1974\",\n        -12.31672191619873\n      ],\n      [\n        \"▁1969\",\n        -12.316758155822754\n      ],\n      [\n        \"▁regl\",\n        -12.316996574401855\n      ],\n      [\n        \"▁terror\",\n        -12.317042350769043\n      ],\n      [\n        \"▁température\",\n        -12.317051887512207\n      ],\n      [\n        \"▁Archiv\",\n        -12.31706714630127\n      ],\n      [\n        \"▁Military\",\n        -12.317140579223633\n      ],\n      [\n        \"▁König\",\n        -12.317290306091309\n      ],\n      [\n        \"▁forex\",\n        -12.31737232208252\n      ],\n      [\n        \"wiki\",\n        -12.31745719909668\n      ],\n      [\n        \"thetic\",\n        -12.317506790161133\n      ],\n      [\n        \"alaturi\",\n        -12.317974090576172\n      ],\n      [\n        \"▁montant\",\n        -12.3179931640625\n      ],\n      [\n        \"▁maladie\",\n        -12.318044662475586\n      ],\n      [\n        \"gust\",\n        -12.318151473999023\n      ],\n      [\n        \"▁demander\",\n        -12.318164825439453\n      ],\n      [\n        \"avocat\",\n        -12.318191528320312\n      ],\n      [\n        \"▁sci\",\n        -12.318192481994629\n      ],\n      [\n        \"▁Wireless\",\n        -12.318214416503906\n      ],\n      [\n        \"▁Dein\",\n        -12.318220138549805\n      ],\n      [\n        \"▁trio\",\n        -12.3183012008667\n      ],\n      [\n        \"▁Same\",\n        -12.318395614624023\n      ],\n      [\n        \"Datei\",\n        -12.318464279174805\n      ],\n      [\n        \"▁alerg\",\n        -12.318578720092773\n      ],\n      [\n        \"crowded\",\n        -12.318657875061035\n      ],\n      [\n        \"▁Punkt\",\n        -12.318853378295898\n      ],\n      [\n        \"▁sanctions\",\n        -12.318864822387695\n      ],\n      [\n        \"stating\",\n        -12.318922996520996\n      ],\n      [\n        \"▁discusse\",\n        -12.318949699401855\n      ],\n      [\n        \"▁Eigen\",\n        -12.319068908691406\n      ],\n      [\n        \"▁sănătate\",\n        -12.31911563873291\n      ],\n      [\n        \"▁correspondence\",\n        -12.319211959838867\n      ],\n      [\n        \"cred\",\n        -12.319331169128418\n      ],\n      [\n        \"VG\",\n        -12.319347381591797\n      ],\n      [\n        \"▁différence\",\n        -12.319347381591797\n      ],\n      [\n        \"▁Montreal\",\n        -12.319391250610352\n      ],\n      [\n        \"▁masini\",\n        -12.319398880004883\n      ],\n      [\n        \"iata\",\n        -12.319487571716309\n      ],\n      [\n        \"▁sampling\",\n        -12.319574356079102\n      ],\n      [\n        \"▁Gib\",\n        -12.319831848144531\n      ],\n      [\n        \"▁sheer\",\n        -12.319944381713867\n      ],\n      [\n        \"330\",\n        -12.319947242736816\n      ],\n      [\n        \"CHI\",\n        -12.319990158081055\n      ],\n      [\n        \"▁damn\",\n        -12.320030212402344\n      ],\n      [\n        \"▁Advisor\",\n        -12.320201873779297\n      ],\n      [\n        \"Typically\",\n        -12.320302963256836\n      ],\n      [\n        \"ssé\",\n        -12.320352554321289\n      ],\n      [\n        \"quart\",\n        -12.320361137390137\n      ],\n      [\n        \"chete\",\n        -12.320385932922363\n      ],\n      [\n        \"▁Puerto\",\n        -12.32049560546875\n      ],\n      [\n        \"2-1\",\n        -12.32050609588623\n      ],\n      [\n        \"NN\",\n        -12.320674896240234\n      ],\n      [\n        \"▁styling\",\n        -12.320707321166992\n      ],\n      [\n        \"rud\",\n        -12.320777893066406\n      ],\n      [\n        \"од\",\n        -12.320856094360352\n      ],\n      [\n        \"▁Hydro\",\n        -12.320941925048828\n      ],\n      [\n        \"▁Cable\",\n        -12.320961952209473\n      ],\n      [\n        \"video\",\n        -12.320974349975586\n      ],\n      [\n        \"▁Wirkung\",\n        -12.321194648742676\n      ],\n      [\n        \"▁noble\",\n        -12.321270942687988\n      ],\n      [\n        \"▁Sonder\",\n        -12.32129192352295\n      ],\n      [\n        \"mati\",\n        -12.321317672729492\n      ],\n      [\n        \"850\",\n        -12.321395874023438\n      ],\n      [\n        \"▁Richmond\",\n        -12.32143497467041\n      ],\n      [\n        \"▁niciodată\",\n        -12.321442604064941\n      ],\n      [\n        \"AO\",\n        -12.321527481079102\n      ],\n      [\n        \"▁altered\",\n        -12.321648597717285\n      ],\n      [\n        \"▁(15\",\n        -12.32168960571289\n      ],\n      [\n        \"▁Motiv\",\n        -12.322052001953125\n      ],\n      [\n        \"AKE\",\n        -12.322089195251465\n      ],\n      [\n        \"▁bestimmte\",\n        -12.322172164916992\n      ],\n      [\n        \"6.5\",\n        -12.322176933288574\n      ],\n      [\n        \"hectare\",\n        -12.322333335876465\n      ],\n      [\n        \"atorită\",\n        -12.322335243225098\n      ],\n      [\n        \"▁phases\",\n        -12.322447776794434\n      ],\n      [\n        \"▁Nova\",\n        -12.322566032409668\n      ],\n      [\n        \"ordinateur\",\n        -12.322579383850098\n      ],\n      [\n        \"▁corrupt\",\n        -12.322813034057617\n      ],\n      [\n        \"error\",\n        -12.322895050048828\n      ],\n      [\n        \"▁attacked\",\n        -12.323005676269531\n      ],\n      [\n        \"▁Kirche\",\n        -12.323019981384277\n      ],\n      [\n        \"heir\",\n        -12.323040962219238\n      ],\n      [\n        \"Das\",\n        -12.323254585266113\n      ],\n      [\n        \"▁anxious\",\n        -12.323258399963379\n      ],\n      [\n        \"▁Doc\",\n        -12.323386192321777\n      ],\n      [\n        \"▁Roth\",\n        -12.323415756225586\n      ],\n      [\n        \"▁Cine\",\n        -12.32388687133789\n      ],\n      [\n        \"▁auditor\",\n        -12.324418067932129\n      ],\n      [\n        \"▁beverage\",\n        -12.324586868286133\n      ],\n      [\n        \"▁précédent\",\n        -12.324637413024902\n      ],\n      [\n        \"▁deploy\",\n        -12.324837684631348\n      ],\n      [\n        \"▁accessibility\",\n        -12.324843406677246\n      ],\n      [\n        \"▁cage\",\n        -12.324885368347168\n      ],\n      [\n        \"▁Contra\",\n        -12.324934005737305\n      ],\n      [\n        \"Best\",\n        -12.324952125549316\n      ],\n      [\n        \"iji\",\n        -12.324972152709961\n      ],\n      [\n        \"▁père\",\n        -12.325060844421387\n      ],\n      [\n        \"▁scenic\",\n        -12.32511043548584\n      ],\n      [\n        \"synthesis\",\n        -12.325165748596191\n      ],\n      [\n        \"ßen\",\n        -12.32534408569336\n      ],\n      [\n        \"▁Videos\",\n        -12.325482368469238\n      ],\n      [\n        \"▁refus\",\n        -12.325484275817871\n      ],\n      [\n        \"stimmen\",\n        -12.3255615234375\n      ],\n      [\n        \"▁sleek\",\n        -12.325577735900879\n      ],\n      [\n        \"artige\",\n        -12.32563591003418\n      ],\n      [\n        \"mari\",\n        -12.32568359375\n      ],\n      [\n        \"▁excelent\",\n        -12.325740814208984\n      ],\n      [\n        \"▁negativ\",\n        -12.325806617736816\n      ],\n      [\n        \"▁blocking\",\n        -12.32590103149414\n      ],\n      [\n        \"spricht\",\n        -12.326001167297363\n      ],\n      [\n        \"▁discomfort\",\n        -12.32602310180664\n      ],\n      [\n        \"▁stratégie\",\n        -12.32602310180664\n      ],\n      [\n        \"▁Datenschutz\",\n        -12.326078414916992\n      ],\n      [\n        \"curg\",\n        -12.326128005981445\n      ],\n      [\n        \"▁lapte\",\n        -12.326432228088379\n      ],\n      [\n        \"▁acasă\",\n        -12.326491355895996\n      ],\n      [\n        \"▁ausschließlich\",\n        -12.32653522491455\n      ],\n      [\n        \"▁unbedingt\",\n        -12.326802253723145\n      ],\n      [\n        \"▁Linie\",\n        -12.32689380645752\n      ],\n      [\n        \"▁subscribers\",\n        -12.327019691467285\n      ],\n      [\n        \"109\",\n        -12.32702350616455\n      ],\n      [\n        \"▁Waste\",\n        -12.32712173461914\n      ],\n      [\n        \"▁Planung\",\n        -12.327231407165527\n      ],\n      [\n        \"▁visually\",\n        -12.32734489440918\n      ],\n      [\n        \"utilizarea\",\n        -12.327370643615723\n      ],\n      [\n        \"uba\",\n        -12.327381134033203\n      ],\n      [\n        \"▁fifteen\",\n        -12.327411651611328\n      ],\n      [\n        \"▁légère\",\n        -12.327411651611328\n      ],\n      [\n        \"ința\",\n        -12.327446937561035\n      ],\n      [\n        \"▁tolerance\",\n        -12.327460289001465\n      ],\n      [\n        \"▁piscine\",\n        -12.327536582946777\n      ],\n      [\n        \"▁nails\",\n        -12.327569007873535\n      ],\n      [\n        \"▁accus\",\n        -12.327693939208984\n      ],\n      [\n        \"▁coeur\",\n        -12.327773094177246\n      ],\n      [\n        \"freie\",\n        -12.327849388122559\n      ],\n      [\n        \"enţă\",\n        -12.32812213897705\n      ],\n      [\n        \"▁glucose\",\n        -12.328336715698242\n      ],\n      [\n        \"▁Jar\",\n        -12.32838249206543\n      ],\n      [\n        \"▁commencer\",\n        -12.328387260437012\n      ],\n      [\n        \"▁eliminating\",\n        -12.328414916992188\n      ],\n      [\n        \"▁mutation\",\n        -12.32844352722168\n      ],\n      [\n        \"▁afirma\",\n        -12.328444480895996\n      ],\n      [\n        \"▁Consulting\",\n        -12.328454971313477\n      ],\n      [\n        \"adia\",\n        -12.328543663024902\n      ],\n      [\n        \"zog\",\n        -12.328604698181152\n      ],\n      [\n        \"▁pielea\",\n        -12.328658103942871\n      ],\n      [\n        \"rton\",\n        -12.328706741333008\n      ],\n      [\n        \"exercice\",\n        -12.3287935256958\n      ],\n      [\n        \"namely\",\n        -12.328847885131836\n      ],\n      [\n        \"▁ajutor\",\n        -12.3289155960083\n      ],\n      [\n        \"▁markers\",\n        -12.328917503356934\n      ],\n      [\n        \"▁gardening\",\n        -12.328932762145996\n      ],\n      [\n        \"Karte\",\n        -12.329038619995117\n      ],\n      [\n        \"▁Pump\",\n        -12.329142570495605\n      ],\n      [\n        \"▁Dual\",\n        -12.329169273376465\n      ],\n      [\n        \"▁pratiques\",\n        -12.329349517822266\n      ],\n      [\n        \"▁behavioral\",\n        -12.329358100891113\n      ],\n      [\n        \"▁construire\",\n        -12.329511642456055\n      ],\n      [\n        \"▁Leonard\",\n        -12.329596519470215\n      ],\n      [\n        \"ediglich\",\n        -12.329630851745605\n      ],\n      [\n        \"ubbed\",\n        -12.3297758102417\n      ],\n      [\n        \"NK\",\n        -12.329792022705078\n      ],\n      [\n        \"shell\",\n        -12.329912185668945\n      ],\n      [\n        \"▁persönliche\",\n        -12.329996109008789\n      ],\n      [\n        \"ecuring\",\n        -12.329998970031738\n      ],\n      [\n        \"beaten\",\n        -12.33000373840332\n      ],\n      [\n        \"ALE\",\n        -12.330053329467773\n      ],\n      [\n        \"▁puppy\",\n        -12.33023452758789\n      ],\n      [\n        \"▁capac\",\n        -12.33027458190918\n      ],\n      [\n        \"▁seventh\",\n        -12.330394744873047\n      ],\n      [\n        \"▁nursery\",\n        -12.330400466918945\n      ],\n      [\n        \"▁Rum\",\n        -12.330419540405273\n      ],\n      [\n        \"▁exquisite\",\n        -12.330423355102539\n      ],\n      [\n        \"▁Legi\",\n        -12.330483436584473\n      ],\n      [\n        \"▁persist\",\n        -12.330497741699219\n      ],\n      [\n        \"bacterial\",\n        -12.330548286437988\n      ],\n      [\n        \"▁cereal\",\n        -12.330572128295898\n      ],\n      [\n        \"▁principe\",\n        -12.330693244934082\n      ],\n      [\n        \"chip\",\n        -12.330766677856445\n      ],\n      [\n        \"rush\",\n        -12.330832481384277\n      ],\n      [\n        \"▁funnel\",\n        -12.330904006958008\n      ],\n      [\n        \"▁calitatea\",\n        -12.331024169921875\n      ],\n      [\n        \"ibă\",\n        -12.33104419708252\n      ],\n      [\n        \"▁reign\",\n        -12.331086158752441\n      ],\n      [\n        \"▁congregation\",\n        -12.331120491027832\n      ],\n      [\n        \"▁obtine\",\n        -12.331270217895508\n      ],\n      [\n        \"▁découverte\",\n        -12.331286430358887\n      ],\n      [\n        \"▁gama\",\n        -12.331315040588379\n      ],\n      [\n        \"▁judec\",\n        -12.33132553100586\n      ],\n      [\n        \"Plan\",\n        -12.331351280212402\n      ],\n      [\n        \"▁gesture\",\n        -12.331539154052734\n      ],\n      [\n        \"öffentlichen\",\n        -12.331644058227539\n      ],\n      [\n        \"▁imported\",\n        -12.331693649291992\n      ],\n      [\n        \"▁rotate\",\n        -12.331747055053711\n      ],\n      [\n        \"blown\",\n        -12.331756591796875\n      ],\n      [\n        \"▁Protein\",\n        -12.331827163696289\n      ],\n      [\n        \"parfaitement\",\n        -12.331832885742188\n      ],\n      [\n        \"ondo\",\n        -12.331868171691895\n      ],\n      [\n        \"ologists\",\n        -12.331890106201172\n      ],\n      [\n        \"▁neighborhoods\",\n        -12.331989288330078\n      ],\n      [\n        \"▁Pope\",\n        -12.33202075958252\n      ],\n      [\n        \"▁museums\",\n        -12.332194328308105\n      ],\n      [\n        \"▁porter\",\n        -12.332330703735352\n      ],\n      [\n        \"▁kiss\",\n        -12.332335472106934\n      ],\n      [\n        \"pdf\",\n        -12.332354545593262\n      ],\n      [\n        \"sided\",\n        -12.332359313964844\n      ],\n      [\n        \"▁gern\",\n        -12.332395553588867\n      ],\n      [\n        \"bedingungen\",\n        -12.332496643066406\n      ],\n      [\n        \"▁Ride\",\n        -12.332582473754883\n      ],\n      [\n        \"Apoi\",\n        -12.332584381103516\n      ],\n      [\n        \"▁bestehen\",\n        -12.332603454589844\n      ],\n      [\n        \"5\\\"\",\n        -12.33285903930664\n      ],\n      [\n        \"bob\",\n        -12.332862854003906\n      ],\n      [\n        \"ficient\",\n        -12.33303165435791\n      ],\n      [\n        \"premise\",\n        -12.333086967468262\n      ],\n      [\n        \"▁Clip\",\n        -12.333112716674805\n      ],\n      [\n        \"▁concours\",\n        -12.333213806152344\n      ],\n      [\n        \"olar\",\n        -12.333281517028809\n      ],\n      [\n        \"▁Centr\",\n        -12.333356857299805\n      ],\n      [\n        \"outlined\",\n        -12.333429336547852\n      ],\n      [\n        \"▁observa\",\n        -12.333511352539062\n      ],\n      [\n        \"▁negotiate\",\n        -12.333537101745605\n      ],\n      [\n        \"▁Partnership\",\n        -12.33358383178711\n      ],\n      [\n        \"clock\",\n        -12.333662033081055\n      ],\n      [\n        \"roasted\",\n        -12.333755493164062\n      ],\n      [\n        \"Pourquoi\",\n        -12.33391284942627\n      ],\n      [\n        \"▁Marshall\",\n        -12.334005355834961\n      ],\n      [\n        \"▁Gerade\",\n        -12.334052085876465\n      ],\n      [\n        \"▁pachet\",\n        -12.334160804748535\n      ],\n      [\n        \"▁preliminary\",\n        -12.334162712097168\n      ],\n      [\n        \"▁tragic\",\n        -12.334200859069824\n      ],\n      [\n        \"author\",\n        -12.334268569946289\n      ],\n      [\n        \"▁Gov\",\n        -12.334309577941895\n      ],\n      [\n        \"▁comunic\",\n        -12.334403991699219\n      ],\n      [\n        \"▁coordinator\",\n        -12.334410667419434\n      ],\n      [\n        \"YA\",\n        -12.33445930480957\n      ],\n      [\n        \"▁Steam\",\n        -12.33476734161377\n      ],\n      [\n        \"▁Nag\",\n        -12.334796905517578\n      ],\n      [\n        \"▁Kara\",\n        -12.334851264953613\n      ],\n      [\n        \"▁Gang\",\n        -12.334858894348145\n      ],\n      [\n        \"aurez\",\n        -12.334868431091309\n      ],\n      [\n        \"▁horrible\",\n        -12.334869384765625\n      ],\n      [\n        \"▁Luxury\",\n        -12.335076332092285\n      ],\n      [\n        \"▁encouragement\",\n        -12.335169792175293\n      ],\n      [\n        \"▁conceptual\",\n        -12.335250854492188\n      ],\n      [\n        \"▁constituent\",\n        -12.335431098937988\n      ],\n      [\n        \"nvelop\",\n        -12.335494041442871\n      ],\n      [\n        \"ucc\",\n        -12.335500717163086\n      ],\n      [\n        \"▁conçu\",\n        -12.335542678833008\n      ],\n      [\n        \"pfel\",\n        -12.33559513092041\n      ],\n      [\n        \"special\",\n        -12.335700988769531\n      ],\n      [\n        \"▁Growth\",\n        -12.335834503173828\n      ],\n      [\n        \"cada\",\n        -12.335916519165039\n      ],\n      [\n        \"▁oamenilor\",\n        -12.335976600646973\n      ],\n      [\n        \"▁vendredi\",\n        -12.336021423339844\n      ],\n      [\n        \"▁coupe\",\n        -12.336055755615234\n      ],\n      [\n        \"▁Danke\",\n        -12.336134910583496\n      ],\n      [\n        \"reflects\",\n        -12.336181640625\n      ],\n      [\n        \"▁girlfriend\",\n        -12.336273193359375\n      ],\n      [\n        \"▁diffuse\",\n        -12.336325645446777\n      ],\n      [\n        \"HER\",\n        -12.336328506469727\n      ],\n      [\n        \"storing\",\n        -12.336464881896973\n      ],\n      [\n        \"ailing\",\n        -12.336591720581055\n      ],\n      [\n        \"▁Desi\",\n        -12.336601257324219\n      ],\n      [\n        \"stitution\",\n        -12.336832046508789\n      ],\n      [\n        \"▁adun\",\n        -12.336844444274902\n      ],\n      [\n        \"▁Partie\",\n        -12.336869239807129\n      ],\n      [\n        \"▁tissues\",\n        -12.336958885192871\n      ],\n      [\n        \"▁discovering\",\n        -12.337154388427734\n      ],\n      [\n        \"Jacques\",\n        -12.337178230285645\n      ],\n      [\n        \"lungs\",\n        -12.33724594116211\n      ],\n      [\n        \"▁Handy\",\n        -12.337261199951172\n      ],\n      [\n        \"centric\",\n        -12.337285995483398\n      ],\n      [\n        \"slav\",\n        -12.337442398071289\n      ],\n      [\n        \"▁sights\",\n        -12.337560653686523\n      ],\n      [\n        \"▁Category\",\n        -12.337644577026367\n      ],\n      [\n        \"▁Einrichtung\",\n        -12.337957382202148\n      ],\n      [\n        \"▁Robinson\",\n        -12.33804702758789\n      ],\n      [\n        \"▁Terra\",\n        -12.338150978088379\n      ],\n      [\n        \"▁creep\",\n        -12.338167190551758\n      ],\n      [\n        \"▁Lob\",\n        -12.338184356689453\n      ],\n      [\n        \"001\",\n        -12.33820629119873\n      ],\n      [\n        \"kop\",\n        -12.338208198547363\n      ],\n      [\n        \"Emb\",\n        -12.338292121887207\n      ],\n      [\n        \"▁forgive\",\n        -12.338391304016113\n      ],\n      [\n        \"▁icons\",\n        -12.33847427368164\n      ],\n      [\n        \"electric\",\n        -12.3385009765625\n      ],\n      [\n        \"▁faucet\",\n        -12.338516235351562\n      ],\n      [\n        \"▁invisible\",\n        -12.3386812210083\n      ],\n      [\n        \"sprach\",\n        -12.338801383972168\n      ],\n      [\n        \"▁beachten\",\n        -12.33881664276123\n      ],\n      [\n        \"rahm\",\n        -12.338833808898926\n      ],\n      [\n        \"▁Teacher\",\n        -12.338919639587402\n      ],\n      [\n        \"Fab\",\n        -12.339070320129395\n      ],\n      [\n        \"▁joue\",\n        -12.339101791381836\n      ],\n      [\n        \"▁Popular\",\n        -12.339120864868164\n      ],\n      [\n        \"▁Februar\",\n        -12.339171409606934\n      ],\n      [\n        \"sound\",\n        -12.339251518249512\n      ],\n      [\n        \"▁(0\",\n        -12.339317321777344\n      ],\n      [\n        \"▁Compare\",\n        -12.33938980102539\n      ],\n      [\n        \"▁pads\",\n        -12.339455604553223\n      ],\n      [\n        \"270\",\n        -12.339498519897461\n      ],\n      [\n        \"ousse\",\n        -12.339548110961914\n      ],\n      [\n        \"▁UAE\",\n        -12.339786529541016\n      ],\n      [\n        \"izări\",\n        -12.339787483215332\n      ],\n      [\n        \"▁bonuses\",\n        -12.33993911743164\n      ],\n      [\n        \"▁switches\",\n        -12.3400239944458\n      ],\n      [\n        \"▁Brothers\",\n        -12.340166091918945\n      ],\n      [\n        \"▁environmentally\",\n        -12.340171813964844\n      ],\n      [\n        \"vista\",\n        -12.340264320373535\n      ],\n      [\n        \"▁intentions\",\n        -12.3402738571167\n      ],\n      [\n        \"▁Terri\",\n        -12.340301513671875\n      ],\n      [\n        \"▁diabet\",\n        -12.34030532836914\n      ],\n      [\n        \"▁prese\",\n        -12.340333938598633\n      ],\n      [\n        \"▁parcurs\",\n        -12.340389251708984\n      ],\n      [\n        \"Warum\",\n        -12.340449333190918\n      ],\n      [\n        \"▁credentials\",\n        -12.340455055236816\n      ],\n      [\n        \"▁PLA\",\n        -12.34046459197998\n      ],\n      [\n        \"▁instruct\",\n        -12.340470314025879\n      ],\n      [\n        \"▁benefic\",\n        -12.340633392333984\n      ],\n      [\n        \"write\",\n        -12.340675354003906\n      ],\n      [\n        \"▁poids\",\n        -12.340773582458496\n      ],\n      [\n        \"▁Anspruch\",\n        -12.340923309326172\n      ],\n      [\n        \"▁avocado\",\n        -12.340923309326172\n      ],\n      [\n        \"▁inevitable\",\n        -12.340923309326172\n      ],\n      [\n        \"▁poorly\",\n        -12.340950965881348\n      ],\n      [\n        \"karte\",\n        -12.340994834899902\n      ],\n      [\n        \"▁Publishing\",\n        -12.340999603271484\n      ],\n      [\n        \"odată\",\n        -12.341140747070312\n      ],\n      [\n        \"▁scientifique\",\n        -12.341157913208008\n      ],\n      [\n        \"▁lăsa\",\n        -12.341262817382812\n      ],\n      [\n        \"▁secol\",\n        -12.34131908416748\n      ],\n      [\n        \"▁nevertheless\",\n        -12.341392517089844\n      ],\n      [\n        \"SAT\",\n        -12.341597557067871\n      ],\n      [\n        \"280\",\n        -12.341651916503906\n      ],\n      [\n        \"▁prevederi\",\n        -12.341670989990234\n      ],\n      [\n        \"▁chrome\",\n        -12.342002868652344\n      ],\n      [\n        \"institut\",\n        -12.342267036437988\n      ],\n      [\n        \"richtigen\",\n        -12.34228515625\n      ],\n      [\n        \"▁grief\",\n        -12.342338562011719\n      ],\n      [\n        \"▁penalties\",\n        -12.342373847961426\n      ],\n      [\n        \"▁Bayern\",\n        -12.34238052368164\n      ],\n      [\n        \"▁caramel\",\n        -12.342473983764648\n      ],\n      [\n        \"Now\",\n        -12.342495918273926\n      ],\n      [\n        \"Stiftung\",\n        -12.342576026916504\n      ],\n      [\n        \"country\",\n        -12.342737197875977\n      ],\n      [\n        \"dication\",\n        -12.34278678894043\n      ],\n      [\n        \"▁Chor\",\n        -12.342801094055176\n      ],\n      [\n        \"▁rămâne\",\n        -12.342936515808105\n      ],\n      [\n        \"▁TOP\",\n        -12.34300708770752\n      ],\n      [\n        \"▁complète\",\n        -12.34301471710205\n      ],\n      [\n        \"▁Marian\",\n        -12.34302806854248\n      ],\n      [\n        \"▁Avant\",\n        -12.343121528625488\n      ],\n      [\n        \"▁Shower\",\n        -12.343156814575195\n      ],\n      [\n        \"treu\",\n        -12.34316349029541\n      ],\n      [\n        \"▁chop\",\n        -12.34321403503418\n      ],\n      [\n        \"▁comfortably\",\n        -12.343220710754395\n      ],\n      [\n        \"▁autism\",\n        -12.34323787689209\n      ],\n      [\n        \"▁Sind\",\n        -12.34328556060791\n      ],\n      [\n        \"▁(20\",\n        -12.343340873718262\n      ],\n      [\n        \"▁Cinema\",\n        -12.343414306640625\n      ],\n      [\n        \"compania\",\n        -12.343606948852539\n      ],\n      [\n        \"▁Lex\",\n        -12.343622207641602\n      ],\n      [\n        \"▁Sofa\",\n        -12.343716621398926\n      ],\n      [\n        \"dru\",\n        -12.343753814697266\n      ],\n      [\n        \"▁verification\",\n        -12.343770027160645\n      ],\n      [\n        \"▁Immer\",\n        -12.343825340270996\n      ],\n      [\n        \"lomb\",\n        -12.343829154968262\n      ],\n      [\n        \"meric\",\n        -12.34385871887207\n      ],\n      [\n        \"▁slower\",\n        -12.34398365020752\n      ],\n      [\n        \"▁propag\",\n        -12.344090461730957\n      ],\n      [\n        \"Inter\",\n        -12.344097137451172\n      ],\n      [\n        \"selling\",\n        -12.34418773651123\n      ],\n      [\n        \"▁Bright\",\n        -12.344269752502441\n      ],\n      [\n        \"condition\",\n        -12.344280242919922\n      ],\n      [\n        \"PDF\",\n        -12.344291687011719\n      ],\n      [\n        \"oyez\",\n        -12.344391822814941\n      ],\n      [\n        \"▁Fried\",\n        -12.344420433044434\n      ],\n      [\n        \"▁Nazi\",\n        -12.34443187713623\n      ],\n      [\n        \"▁Buffalo\",\n        -12.344447135925293\n      ],\n      [\n        \"▁Sue\",\n        -12.344449043273926\n      ],\n      [\n        \"▁Rhein\",\n        -12.34468936920166\n      ],\n      [\n        \"▁Klaus\",\n        -12.344889640808105\n      ],\n      [\n        \"▁indiqu\",\n        -12.344963073730469\n      ],\n      [\n        \"echte\",\n        -12.344996452331543\n      ],\n      [\n        \"▁frecvent\",\n        -12.345165252685547\n      ],\n      [\n        \"▁conveniently\",\n        -12.345187187194824\n      ],\n      [\n        \"▁Moi\",\n        -12.345197677612305\n      ],\n      [\n        \"▁greenhouse\",\n        -12.345220565795898\n      ],\n      [\n        \"▁rédui\",\n        -12.34524154663086\n      ],\n      [\n        \"▁lengthy\",\n        -12.34542179107666\n      ],\n      [\n        \"verband\",\n        -12.345534324645996\n      ],\n      [\n        \"inţă\",\n        -12.345622062683105\n      ],\n      [\n        \"▁rigorous\",\n        -12.345625877380371\n      ],\n      [\n        \"▁Finish\",\n        -12.34580135345459\n      ],\n      [\n        \"▁FBI\",\n        -12.346052169799805\n      ],\n      [\n        \"cultura\",\n        -12.346083641052246\n      ],\n      [\n        \"▁compartment\",\n        -12.346110343933105\n      ],\n      [\n        \"▁pretend\",\n        -12.346117973327637\n      ],\n      [\n        \"▁assembled\",\n        -12.346212387084961\n      ],\n      [\n        \"▁Nie\",\n        -12.34639835357666\n      ],\n      [\n        \"fession\",\n        -12.34640884399414\n      ],\n      [\n        \"▁£2\",\n        -12.34642219543457\n      ],\n      [\n        \"algré\",\n        -12.3468017578125\n      ],\n      [\n        \"▁anterior\",\n        -12.346817970275879\n      ],\n      [\n        \"▁Wissenschaft\",\n        -12.34683609008789\n      ],\n      [\n        \"▁Harbor\",\n        -12.346923828125\n      ],\n      [\n        \"lix\",\n        -12.346985816955566\n      ],\n      [\n        \"=\\\"\",\n        -12.347049713134766\n      ],\n      [\n        \"▁breathtaking\",\n        -12.34705638885498\n      ],\n      [\n        \"▁Stern\",\n        -12.34708309173584\n      ],\n      [\n        \"▁Internetseite\",\n        -12.347132682800293\n      ],\n      [\n        \"▁locker\",\n        -12.347216606140137\n      ],\n      [\n        \"▁feather\",\n        -12.34726619720459\n      ],\n      [\n        \"Serv\",\n        -12.347297668457031\n      ],\n      [\n        \"▁snake\",\n        -12.347332000732422\n      ],\n      [\n        \"▁Border\",\n        -12.347396850585938\n      ],\n      [\n        \"▁undergo\",\n        -12.347518920898438\n      ],\n      [\n        \"▁petrol\",\n        -12.347558975219727\n      ],\n      [\n        \"▁dealership\",\n        -12.3475923538208\n      ],\n      [\n        \"▁commander\",\n        -12.347596168518066\n      ],\n      [\n        \"▁Monate\",\n        -12.347599983215332\n      ],\n      [\n        \"▁Guardian\",\n        -12.347665786743164\n      ],\n      [\n        \"▁Todd\",\n        -12.347774505615234\n      ],\n      [\n        \"Ann\",\n        -12.347825050354004\n      ],\n      [\n        \"ibilité\",\n        -12.347918510437012\n      ],\n      [\n        \"▁Quarter\",\n        -12.347987174987793\n      ],\n      [\n        \"▁portray\",\n        -12.348097801208496\n      ],\n      [\n        \"▁Tai\",\n        -12.34813404083252\n      ],\n      [\n        \"▁strikes\",\n        -12.348224639892578\n      ],\n      [\n        \"illage\",\n        -12.348381042480469\n      ],\n      [\n        \"▁IRS\",\n        -12.348417282104492\n      ],\n      [\n        \"▁lupta\",\n        -12.348455429077148\n      ],\n      [\n        \"▁Sper\",\n        -12.348493576049805\n      ],\n      [\n        \"PRO\",\n        -12.348530769348145\n      ],\n      [\n        \"▁Export\",\n        -12.348549842834473\n      ],\n      [\n        \"▁crypto\",\n        -12.348587989807129\n      ],\n      [\n        \"▁barbecue\",\n        -12.348692893981934\n      ],\n      [\n        \"▁portions\",\n        -12.348787307739258\n      ],\n      [\n        \"▁explicit\",\n        -12.348793983459473\n      ],\n      [\n        \"▁angenehm\",\n        -12.348834037780762\n      ],\n      [\n        \"▁marathon\",\n        -12.348946571350098\n      ],\n      [\n        \"▁apartament\",\n        -12.348982810974121\n      ],\n      [\n        \"▁Eva\",\n        -12.349079132080078\n      ],\n      [\n        \"plate\",\n        -12.349181175231934\n      ],\n      [\n        \"viel\",\n        -12.34925365447998\n      ],\n      [\n        \"FIN\",\n        -12.34926986694336\n      ],\n      [\n        \"dependent\",\n        -12.34935188293457\n      ],\n      [\n        \"▁cercet\",\n        -12.34942626953125\n      ],\n      [\n        \"▁midnight\",\n        -12.349499702453613\n      ],\n      [\n        \"copie\",\n        -12.349563598632812\n      ],\n      [\n        \"▁companii\",\n        -12.349621772766113\n      ],\n      [\n        \"▁tenu\",\n        -12.349660873413086\n      ],\n      [\n        \"1/2\",\n        -12.349662780761719\n      ],\n      [\n        \"2.4\",\n        -12.349693298339844\n      ],\n      [\n        \"abri\",\n        -12.349699974060059\n      ],\n      [\n        \"▁warn\",\n        -12.34980297088623\n      ],\n      [\n        \"▁luggage\",\n        -12.349875450134277\n      ],\n      [\n        \"numarul\",\n        -12.349968910217285\n      ],\n      [\n        \"▁contour\",\n        -12.350014686584473\n      ],\n      [\n        \"▁Ghost\",\n        -12.350016593933105\n      ],\n      [\n        \"Angaben\",\n        -12.35012435913086\n      ],\n      [\n        \"▁unemployment\",\n        -12.350296020507812\n      ],\n      [\n        \"▁rău\",\n        -12.350380897521973\n      ],\n      [\n        \"▁dispatch\",\n        -12.350445747375488\n      ],\n      [\n        \"investissement\",\n        -12.350547790527344\n      ],\n      [\n        \"▁passt\",\n        -12.35057258605957\n      ],\n      [\n        \"▁Germania\",\n        -12.350578308105469\n      ],\n      [\n        \"▁webpage\",\n        -12.350651741027832\n      ],\n      [\n        \"▁reservations\",\n        -12.350688934326172\n      ],\n      [\n        \"▁Kai\",\n        -12.350743293762207\n      ],\n      [\n        \"▁Cav\",\n        -12.350890159606934\n      ],\n      [\n        \"▁Patient\",\n        -12.351109504699707\n      ],\n      [\n        \"ер\",\n        -12.351213455200195\n      ],\n      [\n        \"▁Belle\",\n        -12.351236343383789\n      ],\n      [\n        \"▁Nashville\",\n        -12.351296424865723\n      ],\n      [\n        \"▁Talent\",\n        -12.351332664489746\n      ],\n      [\n        \"ouvrage\",\n        -12.351364135742188\n      ],\n      [\n        \"▁bekommt\",\n        -12.351365089416504\n      ],\n      [\n        \"USA\",\n        -12.351430892944336\n      ],\n      [\n        \"CES\",\n        -12.351432800292969\n      ],\n      [\n        \"▁Peru\",\n        -12.351499557495117\n      ],\n      [\n        \"▁erkennen\",\n        -12.35153579711914\n      ],\n      [\n        \"prinde\",\n        -12.351569175720215\n      ],\n      [\n        \"▁constitution\",\n        -12.351922035217285\n      ],\n      [\n        \"itatile\",\n        -12.351998329162598\n      ],\n      [\n        \"bah\",\n        -12.352147102355957\n      ],\n      [\n        \"▁avail\",\n        -12.352148056030273\n      ],\n      [\n        \"▁disponibile\",\n        -12.352149963378906\n      ],\n      [\n        \"hér\",\n        -12.352258682250977\n      ],\n      [\n        \"ол\",\n        -12.352411270141602\n      ],\n      [\n        \"▁startups\",\n        -12.352435111999512\n      ],\n      [\n        \"▁carton\",\n        -12.352485656738281\n      ],\n      [\n        \"▁Newsletter\",\n        -12.35251235961914\n      ],\n      [\n        \"éti\",\n        -12.352560997009277\n      ],\n      [\n        \"▁investigating\",\n        -12.352779388427734\n      ],\n      [\n        \"itul\",\n        -12.352925300598145\n      ],\n      [\n        \"touch\",\n        -12.352962493896484\n      ],\n      [\n        \"Sport\",\n        -12.353137016296387\n      ],\n      [\n        \"AME\",\n        -12.353203773498535\n      ],\n      [\n        \"MIN\",\n        -12.353222846984863\n      ],\n      [\n        \"metry\",\n        -12.353371620178223\n      ],\n      [\n        \"icy\",\n        -12.353492736816406\n      ],\n      [\n        \"▁Luna\",\n        -12.35351848602295\n      ],\n      [\n        \"▁asthma\",\n        -12.353614807128906\n      ],\n      [\n        \"▁conduc\",\n        -12.35365104675293\n      ],\n      [\n        \"▁Ari\",\n        -12.35369873046875\n      ],\n      [\n        \"trust\",\n        -12.353832244873047\n      ],\n      [\n        \"▁defines\",\n        -12.353894233703613\n      ],\n      [\n        \"▁Blend\",\n        -12.353927612304688\n      ],\n      [\n        \"azo\",\n        -12.353989601135254\n      ],\n      [\n        \"▁sweep\",\n        -12.354169845581055\n      ],\n      [\n        \"lope\",\n        -12.354331016540527\n      ],\n      [\n        \"ţinut\",\n        -12.35439682006836\n      ],\n      [\n        \"WD\",\n        -12.354503631591797\n      ],\n      [\n        \"▁appetite\",\n        -12.354619979858398\n      ],\n      [\n        \"▁Seed\",\n        -12.354753494262695\n      ],\n      [\n        \"Friend\",\n        -12.354854583740234\n      ],\n      [\n        \"▁repet\",\n        -12.354876518249512\n      ],\n      [\n        \"▁throat\",\n        -12.354936599731445\n      ],\n      [\n        \"philosoph\",\n        -12.355141639709473\n      ],\n      [\n        \"▁connaître\",\n        -12.355156898498535\n      ],\n      [\n        \"▁Counter\",\n        -12.355299949645996\n      ],\n      [\n        \"▁Anforderungen\",\n        -12.35533332824707\n      ],\n      [\n        \"▁Polit\",\n        -12.355363845825195\n      ],\n      [\n        \"▁Weather\",\n        -12.3554048538208\n      ],\n      [\n        \"bow\",\n        -12.355423927307129\n      ],\n      [\n        \"▁recreation\",\n        -12.355484008789062\n      ],\n      [\n        \"▁culinary\",\n        -12.355571746826172\n      ],\n      [\n        \"▁plage\",\n        -12.355609893798828\n      ],\n      [\n        \"▁Cruz\",\n        -12.355659484863281\n      ],\n      [\n        \"▁equip\",\n        -12.355668067932129\n      ],\n      [\n        \"▁Recent\",\n        -12.355697631835938\n      ],\n      [\n        \"LED\",\n        -12.355767250061035\n      ],\n      [\n        \"▁steak\",\n        -12.355772972106934\n      ],\n      [\n        \"▁belly\",\n        -12.355880737304688\n      ],\n      [\n        \"photo\",\n        -12.356130599975586\n      ],\n      [\n        \"▁lakes\",\n        -12.35623836517334\n      ],\n      [\n        \"▁intact\",\n        -12.356287956237793\n      ],\n      [\n        \"▁spiral\",\n        -12.356386184692383\n      ],\n      [\n        \"▁Billy\",\n        -12.356468200683594\n      ],\n      [\n        \"▁Understanding\",\n        -12.356534957885742\n      ],\n      [\n        \"▁Lay\",\n        -12.356558799743652\n      ],\n      [\n        \"▁roster\",\n        -12.356632232666016\n      ],\n      [\n        \"▁admire\",\n        -12.356647491455078\n      ],\n      [\n        \"▁android\",\n        -12.356732368469238\n      ],\n      [\n        \"▁technician\",\n        -12.356734275817871\n      ],\n      [\n        \"gène\",\n        -12.356818199157715\n      ],\n      [\n        \"motiv\",\n        -12.356954574584961\n      ],\n      [\n        \"▁Boat\",\n        -12.356988906860352\n      ],\n      [\n        \"▁genießen\",\n        -12.357000350952148\n      ],\n      [\n        \"▁Geschmack\",\n        -12.357001304626465\n      ],\n      [\n        \"▁heroes\",\n        -12.3570556640625\n      ],\n      [\n        \"▁1800\",\n        -12.357137680053711\n      ],\n      [\n        \"numeroase\",\n        -12.35776138305664\n      ],\n      [\n        \"▁anschließend\",\n        -12.357802391052246\n      ],\n      [\n        \"▁Spur\",\n        -12.357813835144043\n      ],\n      [\n        \"▁clarify\",\n        -12.35784912109375\n      ],\n      [\n        \"▁warmer\",\n        -12.357889175415039\n      ],\n      [\n        \"▁Ranch\",\n        -12.357955932617188\n      ],\n      [\n        \"▁simti\",\n        -12.358024597167969\n      ],\n      [\n        \"Thank\",\n        -12.35838508605957\n      ],\n      [\n        \"▁freight\",\n        -12.358434677124023\n      ],\n      [\n        \"▁administrators\",\n        -12.358453750610352\n      ],\n      [\n        \"Reg\",\n        -12.358588218688965\n      ],\n      [\n        \"Această\",\n        -12.358670234680176\n      ],\n      [\n        \"▁legume\",\n        -12.358741760253906\n      ],\n      [\n        \"▁utilizare\",\n        -12.358786582946777\n      ],\n      [\n        \"CON\",\n        -12.358904838562012\n      ],\n      [\n        \"urgi\",\n        -12.358917236328125\n      ],\n      [\n        \"▁Gesicht\",\n        -12.358920097351074\n      ],\n      [\n        \"▁counselor\",\n        -12.358954429626465\n      ],\n      [\n        \"▁mondiale\",\n        -12.359009742736816\n      ],\n      [\n        \"helm\",\n        -12.359137535095215\n      ],\n      [\n        \"▁Promo\",\n        -12.359156608581543\n      ],\n      [\n        \"▁Schweiz\",\n        -12.35917854309082\n      ],\n      [\n        \"Ich\",\n        -12.35929012298584\n      ],\n      [\n        \"▁intalni\",\n        -12.359295845031738\n      ],\n      [\n        \"▁Bloom\",\n        -12.359318733215332\n      ],\n      [\n        \"▁Score\",\n        -12.359362602233887\n      ],\n      [\n        \"▁Fruit\",\n        -12.35944652557373\n      ],\n      [\n        \"▁constraints\",\n        -12.359447479248047\n      ],\n      [\n        \"▁farmer\",\n        -12.359745979309082\n      ],\n      [\n        \"▁précise\",\n        -12.359807014465332\n      ],\n      [\n        \"evaluating\",\n        -12.359868049621582\n      ],\n      [\n        \"▁Period\",\n        -12.359891891479492\n      ],\n      [\n        \"byte\",\n        -12.359893798828125\n      ],\n      [\n        \"wah\",\n        -12.360025405883789\n      ],\n      [\n        \"Mac\",\n        -12.360123634338379\n      ],\n      [\n        \"iron\",\n        -12.360197067260742\n      ],\n      [\n        \"′\",\n        -12.360337257385254\n      ],\n      [\n        \"▁tehnic\",\n        -12.360539436340332\n      ],\n      [\n        \"▁legat\",\n        -12.36054515838623\n      ],\n      [\n        \"▁Pilot\",\n        -12.360574722290039\n      ],\n      [\n        \"▁Carpet\",\n        -12.36064624786377\n      ],\n      [\n        \"TEN\",\n        -12.360812187194824\n      ],\n      [\n        \"▁shareholders\",\n        -12.36082649230957\n      ],\n      [\n        \"vină\",\n        -12.360880851745605\n      ],\n      [\n        \"▁parole\",\n        -12.360939979553223\n      ],\n      [\n        \"ătă\",\n        -12.360984802246094\n      ],\n      [\n        \"bbing\",\n        -12.361000061035156\n      ],\n      [\n        \"▁switched\",\n        -12.361002922058105\n      ],\n      [\n        \"▁Petro\",\n        -12.361010551452637\n      ],\n      [\n        \"▁Vertrags\",\n        -12.36111831665039\n      ],\n      [\n        \"cham\",\n        -12.361178398132324\n      ],\n      [\n        \"wang\",\n        -12.361284255981445\n      ],\n      [\n        \"▁Bean\",\n        -12.36139965057373\n      ],\n      [\n        \"minister\",\n        -12.361442565917969\n      ],\n      [\n        \"▁Wu\",\n        -12.361522674560547\n      ],\n      [\n        \"▁Olympics\",\n        -12.361539840698242\n      ],\n      [\n        \"tipul\",\n        -12.361542701721191\n      ],\n      [\n        \"▁Citi\",\n        -12.36166763305664\n      ],\n      [\n        \"▁Fold\",\n        -12.361873626708984\n      ],\n      [\n        \"▁Partei\",\n        -12.361940383911133\n      ],\n      [\n        \"▁centrale\",\n        -12.361984252929688\n      ],\n      [\n        \"île\",\n        -12.362032890319824\n      ],\n      [\n        \"pflicht\",\n        -12.362175941467285\n      ],\n      [\n        \"heli\",\n        -12.362398147583008\n      ],\n      [\n        \"▁erwartet\",\n        -12.362414360046387\n      ],\n      [\n        \"▁oferta\",\n        -12.362458229064941\n      ],\n      [\n        \"▁NHS\",\n        -12.36246395111084\n      ],\n      [\n        \"annon\",\n        -12.362570762634277\n      ],\n      [\n        \"▁Rud\",\n        -12.362701416015625\n      ],\n      [\n        \"▁Stuttgart\",\n        -12.362737655639648\n      ],\n      [\n        \"▁rămas\",\n        -12.362746238708496\n      ],\n      [\n        \"▁eliminated\",\n        -12.36275577545166\n      ],\n      [\n        \"▁hiding\",\n        -12.362797737121582\n      ],\n      [\n        \"▁cadeau\",\n        -12.362832069396973\n      ],\n      [\n        \"▁mock\",\n        -12.363115310668945\n      ],\n      [\n        \"▁elder\",\n        -12.363333702087402\n      ],\n      [\n        \"▁Liz\",\n        -12.363364219665527\n      ],\n      [\n        \"aji\",\n        -12.363544464111328\n      ],\n      [\n        \"▁endlich\",\n        -12.363653182983398\n      ],\n      [\n        \"sufficient\",\n        -12.363668441772461\n      ],\n      [\n        \"▁zusätzliche\",\n        -12.363712310791016\n      ],\n      [\n        \"scient\",\n        -12.363757133483887\n      ],\n      [\n        \"▁Adjust\",\n        -12.363883972167969\n      ],\n      [\n        \"▁incentive\",\n        -12.363945007324219\n      ],\n      [\n        \"▁Papa\",\n        -12.364012718200684\n      ],\n      [\n        \"▁Pharma\",\n        -12.364041328430176\n      ],\n      [\n        \"▁conflicts\",\n        -12.364107131958008\n      ],\n      [\n        \"zählen\",\n        -12.364113807678223\n      ],\n      [\n        \"▁chien\",\n        -12.364118576049805\n      ],\n      [\n        \"KB\",\n        -12.36413288116455\n      ],\n      [\n        \"ultimi\",\n        -12.364188194274902\n      ],\n      [\n        \"▁Jul\",\n        -12.36421012878418\n      ],\n      [\n        \"▁Male\",\n        -12.36422061920166\n      ],\n      [\n        \"▁viewer\",\n        -12.36427116394043\n      ],\n      [\n        \"▁Sector\",\n        -12.364328384399414\n      ],\n      [\n        \"▁REAL\",\n        -12.364344596862793\n      ],\n      [\n        \"▁arbitr\",\n        -12.36436939239502\n      ],\n      [\n        \"resistant\",\n        -12.364399909973145\n      ],\n      [\n        \"▁Bristol\",\n        -12.364423751831055\n      ],\n      [\n        \"▁shy\",\n        -12.364540100097656\n      ],\n      [\n        \"SW\",\n        -12.364593505859375\n      ],\n      [\n        \"▁Kirk\",\n        -12.36460018157959\n      ],\n      [\n        \"centrul\",\n        -12.364653587341309\n      ],\n      [\n        \"▁Venezuela\",\n        -12.364657402038574\n      ],\n      [\n        \"▁communicating\",\n        -12.364657402038574\n      ],\n      [\n        \"▁Chemical\",\n        -12.364663124084473\n      ],\n      [\n        \"▁surprises\",\n        -12.364843368530273\n      ],\n      [\n        \"▁Jamie\",\n        -12.364933967590332\n      ],\n      [\n        \"▁Heavy\",\n        -12.364965438842773\n      ],\n      [\n        \"▁turnover\",\n        -12.36498737335205\n      ],\n      [\n        \"▁étudiants\",\n        -12.365114212036133\n      ],\n      [\n        \"welcher\",\n        -12.365124702453613\n      ],\n      [\n        \"▁preturi\",\n        -12.365200996398926\n      ],\n      [\n        \"▁Mono\",\n        -12.365283966064453\n      ],\n      [\n        \"▁paddle\",\n        -12.365309715270996\n      ],\n      [\n        \"▁accountability\",\n        -12.365364074707031\n      ],\n      [\n        \"OUS\",\n        -12.365592956542969\n      ],\n      [\n        \"▁marketers\",\n        -12.365762710571289\n      ],\n      [\n        \"fection\",\n        -12.365900993347168\n      ],\n      [\n        \"▁Outside\",\n        -12.365921020507812\n      ],\n      [\n        \"▁Jefferson\",\n        -12.366114616394043\n      ],\n      [\n        \"oaie\",\n        -12.36617660522461\n      ],\n      [\n        \"tenue\",\n        -12.366275787353516\n      ],\n      [\n        \"HU\",\n        -12.366329193115234\n      ],\n      [\n        \"Très\",\n        -12.36639404296875\n      ],\n      [\n        \"valoarea\",\n        -12.36642837524414\n      ],\n      [\n        \"103\",\n        -12.366482734680176\n      ],\n      [\n        \"▁Privacy\",\n        -12.366580963134766\n      ],\n      [\n        \"▁Leistungen\",\n        -12.366598129272461\n      ],\n      [\n        \"(3)\",\n        -12.36662483215332\n      ],\n      [\n        \"▁études\",\n        -12.366734504699707\n      ],\n      [\n        \"sko\",\n        -12.366750717163086\n      ],\n      [\n        \"drum\",\n        -12.366822242736816\n      ],\n      [\n        \"▁lamb\",\n        -12.366842269897461\n      ],\n      [\n        \"▁nicio\",\n        -12.367094993591309\n      ],\n      [\n        \"▁NATO\",\n        -12.367104530334473\n      ],\n      [\n        \"▁Freitag\",\n        -12.367178916931152\n      ],\n      [\n        \"▁precedent\",\n        -12.367178916931152\n      ],\n      [\n        \"▁partenaires\",\n        -12.367202758789062\n      ],\n      [\n        \"▁companiei\",\n        -12.367234230041504\n      ],\n      [\n        \"▁Plaza\",\n        -12.367249488830566\n      ],\n      [\n        \"▁disruption\",\n        -12.367274284362793\n      ],\n      [\n        \"▁violations\",\n        -12.367338180541992\n      ],\n      [\n        \"▁Reference\",\n        -12.367446899414062\n      ],\n      [\n        \"▁habitants\",\n        -12.36770248413086\n      ],\n      [\n        \"▁compost\",\n        -12.36776351928711\n      ],\n      [\n        \"▁citoyen\",\n        -12.367785453796387\n      ],\n      [\n        \"▁Historical\",\n        -12.367857933044434\n      ],\n      [\n        \"vollen\",\n        -12.36793327331543\n      ],\n      [\n        \"▁Eck\",\n        -12.36815357208252\n      ],\n      [\n        \"▁lumii\",\n        -12.368180274963379\n      ],\n      [\n        \"▁reusit\",\n        -12.368278503417969\n      ],\n      [\n        \"genic\",\n        -12.368307113647461\n      ],\n      [\n        \"Why\",\n        -12.368436813354492\n      ],\n      [\n        \"ASE\",\n        -12.368474006652832\n      ],\n      [\n        \"▁athlete\",\n        -12.36854076385498\n      ],\n      [\n        \"▁Spitze\",\n        -12.368559837341309\n      ],\n      [\n        \"▁schimbat\",\n        -12.368566513061523\n      ],\n      [\n        \"▁anonymous\",\n        -12.368850708007812\n      ],\n      [\n        \"jedes\",\n        -12.368856430053711\n      ],\n      [\n        \"exclu\",\n        -12.368874549865723\n      ],\n      [\n        \"factor\",\n        -12.369199752807617\n      ],\n      [\n        \"▁Dezember\",\n        -12.369231224060059\n      ],\n      [\n        \"▁scientist\",\n        -12.369373321533203\n      ],\n      [\n        \"▁likelihood\",\n        -12.36947250366211\n      ],\n      [\n        \"▁Rhode\",\n        -12.369488716125488\n      ],\n      [\n        \"▁Balance\",\n        -12.369521141052246\n      ],\n      [\n        \"istoria\",\n        -12.36959457397461\n      ],\n      [\n        \"▁Neil\",\n        -12.369780540466309\n      ],\n      [\n        \"▁bush\",\n        -12.369919776916504\n      ],\n      [\n        \"▁Ergebnisse\",\n        -12.369935989379883\n      ],\n      [\n        \"▁Sinn\",\n        -12.369956016540527\n      ],\n      [\n        \"▁spezielle\",\n        -12.370128631591797\n      ],\n      [\n        \"▁jucat\",\n        -12.37015438079834\n      ],\n      [\n        \"▁spite\",\n        -12.370179176330566\n      ],\n      [\n        \"▁Ultimate\",\n        -12.370365142822266\n      ],\n      [\n        \"▁fructe\",\n        -12.370401382446289\n      ],\n      [\n        \"▁asleep\",\n        -12.370441436767578\n      ],\n      [\n        \"▁Goal\",\n        -12.370539665222168\n      ],\n      [\n        \"▁PAR\",\n        -12.370631217956543\n      ],\n      [\n        \"▁rows\",\n        -12.370705604553223\n      ],\n      [\n        \"▁Fol\",\n        -12.3709135055542\n      ],\n      [\n        \"▁durata\",\n        -12.370945930480957\n      ],\n      [\n        \"▁traditionnel\",\n        -12.37100887298584\n      ],\n      [\n        \"▁tema\",\n        -12.37122917175293\n      ],\n      [\n        \"▁crédit\",\n        -12.371232986450195\n      ],\n      [\n        \"smallest\",\n        -12.371358871459961\n      ],\n      [\n        \"▁amino\",\n        -12.371358871459961\n      ],\n      [\n        \"▁elephant\",\n        -12.371405601501465\n      ],\n      [\n        \"▁tubes\",\n        -12.371685028076172\n      ],\n      [\n        \"▁Verwendung\",\n        -12.371719360351562\n      ],\n      [\n        \"▁Excellence\",\n        -12.371889114379883\n      ],\n      [\n        \"▁utilities\",\n        -12.371962547302246\n      ],\n      [\n        \"frau\",\n        -12.372111320495605\n      ],\n      [\n        \"▁poze\",\n        -12.3721342086792\n      ],\n      [\n        \"août\",\n        -12.372307777404785\n      ],\n      [\n        \"ango\",\n        -12.372514724731445\n      ],\n      [\n        \"give\",\n        -12.372532844543457\n      ],\n      [\n        \"▁appelé\",\n        -12.372576713562012\n      ],\n      [\n        \"▁yeast\",\n        -12.372671127319336\n      ],\n      [\n        \"▁enrollment\",\n        -12.372676849365234\n      ],\n      [\n        \"organiz\",\n        -12.3727445602417\n      ],\n      [\n        \"▁asociat\",\n        -12.372753143310547\n      ],\n      [\n        \"▁cattle\",\n        -12.372772216796875\n      ],\n      [\n        \"▁Solution\",\n        -12.372798919677734\n      ],\n      [\n        \"evoke\",\n        -12.372807502746582\n      ],\n      [\n        \"▁Hampshire\",\n        -12.372857093811035\n      ],\n      [\n        \"▁yeah\",\n        -12.372878074645996\n      ],\n      [\n        \"▁Argentina\",\n        -12.372928619384766\n      ],\n      [\n        \"▁abnormal\",\n        -12.373022079467773\n      ],\n      [\n        \"▁Heights\",\n        -12.373082160949707\n      ],\n      [\n        \"▁Mitchell\",\n        -12.373099327087402\n      ],\n      [\n        \"▁Quad\",\n        -12.373350143432617\n      ],\n      [\n        \"▁textures\",\n        -12.373382568359375\n      ],\n      [\n        \"▁coalition\",\n        -12.373384475708008\n      ],\n      [\n        \"▁dataset\",\n        -12.37338924407959\n      ],\n      [\n        \"World\",\n        -12.373438835144043\n      ],\n      [\n        \"ständ\",\n        -12.373456001281738\n      ],\n      [\n        \"▁groove\",\n        -12.373476028442383\n      ],\n      [\n        \"▁emotionally\",\n        -12.373562812805176\n      ],\n      [\n        \"▁preciz\",\n        -12.373636245727539\n      ],\n      [\n        \"kte\",\n        -12.373741149902344\n      ],\n      [\n        \"berechtigt\",\n        -12.373828887939453\n      ],\n      [\n        \"▁1971\",\n        -12.373888969421387\n      ],\n      [\n        \"grandes\",\n        -12.373907089233398\n      ],\n      [\n        \"▁Broadway\",\n        -12.37391185760498\n      ],\n      [\n        \"▁comunicat\",\n        -12.373994827270508\n      ],\n      [\n        \"nui\",\n        -12.37402629852295\n      ],\n      [\n        \"GER\",\n        -12.374079704284668\n      ],\n      [\n        \"pick\",\n        -12.374125480651855\n      ],\n      [\n        \"inscrit\",\n        -12.37414264678955\n      ],\n      [\n        \"▁Gross\",\n        -12.374258995056152\n      ],\n      [\n        \"▁McDonald\",\n        -12.374310493469238\n      ],\n      [\n        \"▁Zero\",\n        -12.374330520629883\n      ],\n      [\n        \"▁Halb\",\n        -12.374341011047363\n      ],\n      [\n        \"▁caractère\",\n        -12.374553680419922\n      ],\n      [\n        \"▁doctrine\",\n        -12.374553680419922\n      ],\n      [\n        \"▁Sinne\",\n        -12.37458610534668\n      ],\n      [\n        \"MLS\",\n        -12.374594688415527\n      ],\n      [\n        \"▁réel\",\n        -12.374759674072266\n      ],\n      [\n        \"▁Ful\",\n        -12.37476921081543\n      ],\n      [\n        \"limiting\",\n        -12.37483024597168\n      ],\n      [\n        \"▁Gan\",\n        -12.374870300292969\n      ],\n      [\n        \"▁exclude\",\n        -12.37490463256836\n      ],\n      [\n        \"imba\",\n        -12.374974250793457\n      ],\n      [\n        \"rolul\",\n        -12.374991416931152\n      ],\n      [\n        \"▁veggies\",\n        -12.375059127807617\n      ],\n      [\n        \"▁fasci\",\n        -12.375092506408691\n      ],\n      [\n        \"▁oval\",\n        -12.375173568725586\n      ],\n      [\n        \"▁contacter\",\n        -12.375221252441406\n      ],\n      [\n        \"▁linking\",\n        -12.375279426574707\n      ],\n      [\n        \"▁knit\",\n        -12.375308990478516\n      ],\n      [\n        \"▁enroll\",\n        -12.375504493713379\n      ],\n      [\n        \"▁dédié\",\n        -12.375533103942871\n      ],\n      [\n        \"▁renting\",\n        -12.375541687011719\n      ],\n      [\n        \"▁genera\",\n        -12.37567138671875\n      ],\n      [\n        \"citing\",\n        -12.375691413879395\n      ],\n      [\n        \"▁bend\",\n        -12.375700950622559\n      ],\n      [\n        \"guin\",\n        -12.375752449035645\n      ],\n      [\n        \"▁caregiver\",\n        -12.375768661499023\n      ],\n      [\n        \"▁könnt\",\n        -12.375791549682617\n      ],\n      [\n        \"▁Scripture\",\n        -12.375795364379883\n      ],\n      [\n        \"▁Mic\",\n        -12.375899314880371\n      ],\n      [\n        \"▁Denmark\",\n        -12.37590217590332\n      ],\n      [\n        \"▁qualifying\",\n        -12.375917434692383\n      ],\n      [\n        \"▁costumes\",\n        -12.375958442687988\n      ],\n      [\n        \"▁dwelling\",\n        -12.37601375579834\n      ],\n      [\n        \"▁recrut\",\n        -12.376099586486816\n      ],\n      [\n        \"▁bedding\",\n        -12.37618637084961\n      ],\n      [\n        \"gesprochen\",\n        -12.376253128051758\n      ],\n      [\n        \"▁editors\",\n        -12.376386642456055\n      ],\n      [\n        \"/12\",\n        -12.37657642364502\n      ],\n      [\n        \"▁cumparat\",\n        -12.376583099365234\n      ],\n      [\n        \"fiction\",\n        -12.376730918884277\n      ],\n      [\n        \"▁spinal\",\n        -12.376740455627441\n      ],\n      [\n        \"▁pathway\",\n        -12.376799583435059\n      ],\n      [\n        \"▁vârst\",\n        -12.37683391571045\n      ],\n      [\n        \"mba\",\n        -12.376874923706055\n      ],\n      [\n        \"▁enthusiastic\",\n        -12.37692642211914\n      ],\n      [\n        \"▁Watt\",\n        -12.37697982788086\n      ],\n      [\n        \"symptom\",\n        -12.376992225646973\n      ],\n      [\n        \"▁pup\",\n        -12.37712287902832\n      ],\n      [\n        \"▁glorious\",\n        -12.377225875854492\n      ],\n      [\n        \"▁fața\",\n        -12.377228736877441\n      ],\n      [\n        \"▁prohibited\",\n        -12.377256393432617\n      ],\n      [\n        \"vergleich\",\n        -12.377286911010742\n      ],\n      [\n        \"▁suspected\",\n        -12.377334594726562\n      ],\n      [\n        \"▁Railway\",\n        -12.377381324768066\n      ],\n      [\n        \"▁Aujourd\",\n        -12.377469062805176\n      ],\n      [\n        \"▁Patients\",\n        -12.377476692199707\n      ],\n      [\n        \"▁séance\",\n        -12.377501487731934\n      ],\n      [\n        \"▁contraire\",\n        -12.377503395080566\n      ],\n      [\n        \"▁cuvânt\",\n        -12.37771224975586\n      ],\n      [\n        \"▁trotzdem\",\n        -12.37773609161377\n      ],\n      [\n        \"émission\",\n        -12.377795219421387\n      ],\n      [\n        \"▁bore\",\n        -12.37782096862793\n      ],\n      [\n        \"▁safeguard\",\n        -12.377851486206055\n      ],\n      [\n        \"▁galleries\",\n        -12.37820053100586\n      ],\n      [\n        \"cron\",\n        -12.378268241882324\n      ],\n      [\n        \"▁Rica\",\n        -12.378335952758789\n      ],\n      [\n        \"fläche\",\n        -12.37839126586914\n      ],\n      [\n        \"▁Slow\",\n        -12.37842082977295\n      ],\n      [\n        \"▁vara\",\n        -12.378549575805664\n      ],\n      [\n        \"▁Swan\",\n        -12.378564834594727\n      ],\n      [\n        \"▁compounds\",\n        -12.378564834594727\n      ],\n      [\n        \"▁Slo\",\n        -12.378621101379395\n      ],\n      [\n        \"▁accommodations\",\n        -12.378621101379395\n      ],\n      [\n        \"▁Putin\",\n        -12.378708839416504\n      ],\n      [\n        \"▁undertaken\",\n        -12.378767967224121\n      ],\n      [\n        \"▁prépar\",\n        -12.37879467010498\n      ],\n      [\n        \"▁gandi\",\n        -12.37881088256836\n      ],\n      [\n        \"sediul\",\n        -12.378924369812012\n      ],\n      [\n        \"▁Nathan\",\n        -12.379143714904785\n      ],\n      [\n        \"▁fountain\",\n        -12.379173278808594\n      ],\n      [\n        \"▁mère\",\n        -12.379194259643555\n      ],\n      [\n        \"fatty\",\n        -12.379201889038086\n      ],\n      [\n        \"▁concentrated\",\n        -12.379241943359375\n      ],\n      [\n        \"richtung\",\n        -12.379300117492676\n      ],\n      [\n        \"▁appropriately\",\n        -12.37955379486084\n      ],\n      [\n        \"107\",\n        -12.379631996154785\n      ],\n      [\n        \"▁shark\",\n        -12.379735946655273\n      ],\n      [\n        \"▁Topic\",\n        -12.379867553710938\n      ],\n      [\n        \"▁Ausstellung\",\n        -12.379880905151367\n      ],\n      [\n        \"▁SUA\",\n        -12.380267143249512\n      ],\n      [\n        \"SER\",\n        -12.380359649658203\n      ],\n      [\n        \"▁Nicole\",\n        -12.38039779663086\n      ],\n      [\n        \"▁utilisateurs\",\n        -12.380620956420898\n      ],\n      [\n        \"▁Brazilian\",\n        -12.380753517150879\n      ],\n      [\n        \"▁continut\",\n        -12.380865097045898\n      ],\n      [\n        \"▁sanatate\",\n        -12.380881309509277\n      ],\n      [\n        \"faudra\",\n        -12.380882263183594\n      ],\n      [\n        \"nahm\",\n        -12.380938529968262\n      ],\n      [\n        \"▁Specific\",\n        -12.381153106689453\n      ],\n      [\n        \"aiba\",\n        -12.381199836730957\n      ],\n      [\n        \"cepând\",\n        -12.381296157836914\n      ],\n      [\n        \"▁Beer\",\n        -12.381366729736328\n      ],\n      [\n        \"roni\",\n        -12.381616592407227\n      ],\n      [\n        \"kay\",\n        -12.381636619567871\n      ],\n      [\n        \"▁gravity\",\n        -12.381844520568848\n      ],\n      [\n        \"▁verfügt\",\n        -12.381856918334961\n      ],\n      [\n        \"7:30\",\n        -12.381878852844238\n      ],\n      [\n        \"▁Players\",\n        -12.381945610046387\n      ],\n      [\n        \"▁Industries\",\n        -12.38198184967041\n      ],\n      [\n        \"punkte\",\n        -12.382119178771973\n      ],\n      [\n        \"▁yacht\",\n        -12.382135391235352\n      ],\n      [\n        \"-04\",\n        -12.382149696350098\n      ],\n      [\n        \"onné\",\n        -12.382192611694336\n      ],\n      [\n        \"▁Cards\",\n        -12.382221221923828\n      ],\n      [\n        \"▁fete\",\n        -12.382420539855957\n      ],\n      [\n        \"breaking\",\n        -12.38257884979248\n      ],\n      [\n        \"baum\",\n        -12.382621765136719\n      ],\n      [\n        \"nada\",\n        -12.382651329040527\n      ],\n      [\n        \"▁geplant\",\n        -12.382750511169434\n      ],\n      [\n        \"genuinely\",\n        -12.382766723632812\n      ],\n      [\n        \"talk\",\n        -12.382871627807617\n      ],\n      [\n        \"▁disadvantage\",\n        -12.382920265197754\n      ],\n      [\n        \"▁shutter\",\n        -12.383003234863281\n      ],\n      [\n        \"virus\",\n        -12.38302230834961\n      ],\n      [\n        \"▁cricket\",\n        -12.38308048248291\n      ],\n      [\n        \"▁comenzi\",\n        -12.383102416992188\n      ],\n      [\n        \"hier\",\n        -12.383170127868652\n      ],\n      [\n        \"▁aufzu\",\n        -12.383198738098145\n      ],\n      [\n        \"▁Rez\",\n        -12.38321304321289\n      ],\n      [\n        \"▁conclusions\",\n        -12.383329391479492\n      ],\n      [\n        \"▁Wang\",\n        -12.383509635925293\n      ],\n      [\n        \"Darüber\",\n        -12.383524894714355\n      ],\n      [\n        \"▁CSS\",\n        -12.383573532104492\n      ],\n      [\n        \"CW\",\n        -12.383780479431152\n      ],\n      [\n        \"▁Chr\",\n        -12.383790969848633\n      ],\n      [\n        \"▁traded\",\n        -12.383843421936035\n      ],\n      [\n        \"▁Schon\",\n        -12.384265899658203\n      ],\n      [\n        \"mped\",\n        -12.38429069519043\n      ],\n      [\n        \"▁alloy\",\n        -12.384385108947754\n      ],\n      [\n        \"AVE\",\n        -12.38451099395752\n      ],\n      [\n        \"▁imagery\",\n        -12.384542465209961\n      ],\n      [\n        \"▁resurse\",\n        -12.38479995727539\n      ],\n      [\n        \"▁Thunder\",\n        -12.384834289550781\n      ],\n      [\n        \"▁schimbare\",\n        -12.384860038757324\n      ],\n      [\n        \"▁Youtube\",\n        -12.38499927520752\n      ],\n      [\n        \"▁Monster\",\n        -12.385189056396484\n      ],\n      [\n        \"phil\",\n        -12.385234832763672\n      ],\n      [\n        \"▁bébé\",\n        -12.385284423828125\n      ],\n      [\n        \"Creating\",\n        -12.385428428649902\n      ],\n      [\n        \"ănă\",\n        -12.385466575622559\n      ],\n      [\n        \"▁Staat\",\n        -12.385504722595215\n      ],\n      [\n        \"adică\",\n        -12.385531425476074\n      ],\n      [\n        \"▁boyfriend\",\n        -12.385552406311035\n      ],\n      [\n        \"▁Winner\",\n        -12.385594367980957\n      ],\n      [\n        \"▁disputes\",\n        -12.385653495788574\n      ],\n      [\n        \"▁lush\",\n        -12.3856840133667\n      ],\n      [\n        \"▁CMS\",\n        -12.385719299316406\n      ],\n      [\n        \"▁locaux\",\n        -12.385725021362305\n      ],\n      [\n        \"▁Verfahren\",\n        -12.38576889038086\n      ],\n      [\n        \"▁Café\",\n        -12.385786056518555\n      ],\n      [\n        \"▁Vorstand\",\n        -12.385870933532715\n      ],\n      [\n        \"▁lucrat\",\n        -12.385960578918457\n      ],\n      [\n        \"▁Root\",\n        -12.38602352142334\n      ],\n      [\n        \"▁decis\",\n        -12.386059761047363\n      ],\n      [\n        \"▁Shadow\",\n        -12.386062622070312\n      ],\n      [\n        \"▁countryside\",\n        -12.386067390441895\n      ],\n      [\n        \"▁analiza\",\n        -12.386114120483398\n      ],\n      [\n        \"obos\",\n        -12.38616943359375\n      ],\n      [\n        \"opera\",\n        -12.386175155639648\n      ],\n      [\n        \"actu\",\n        -12.386207580566406\n      ],\n      [\n        \"▁Songs\",\n        -12.3864164352417\n      ],\n      [\n        \"reifen\",\n        -12.38648509979248\n      ],\n      [\n        \"▁hilft\",\n        -12.386650085449219\n      ],\n      [\n        \"region\",\n        -12.386727333068848\n      ],\n      [\n        \"▁categoria\",\n        -12.387001991271973\n      ],\n      [\n        \"capturing\",\n        -12.38701343536377\n      ],\n      [\n        \"▁1967\",\n        -12.387025833129883\n      ],\n      [\n        \"▁optimized\",\n        -12.387032508850098\n      ],\n      [\n        \"▁Dim\",\n        -12.387353897094727\n      ],\n      [\n        \"▁adapté\",\n        -12.387447357177734\n      ],\n      [\n        \"zeichnet\",\n        -12.387524604797363\n      ],\n      [\n        \"▁strada\",\n        -12.387625694274902\n      ],\n      [\n        \"fulness\",\n        -12.38774585723877\n      ],\n      [\n        \"▁technically\",\n        -12.38774585723877\n      ],\n      [\n        \"▁marker\",\n        -12.387757301330566\n      ],\n      [\n        \"▁vizita\",\n        -12.387808799743652\n      ],\n      [\n        \"▁imperative\",\n        -12.387986183166504\n      ],\n      [\n        \"▁pensé\",\n        -12.38802719116211\n      ],\n      [\n        \"▁drilling\",\n        -12.388030052185059\n      ],\n      [\n        \"ISA\",\n        -12.38818073272705\n      ],\n      [\n        \"▁Massage\",\n        -12.388201713562012\n      ],\n      [\n        \"▁Terry\",\n        -12.388238906860352\n      ],\n      [\n        \"▁pourtant\",\n        -12.38835334777832\n      ],\n      [\n        \"▁declaration\",\n        -12.388440132141113\n      ],\n      [\n        \"▁instructors\",\n        -12.388453483581543\n      ],\n      [\n        \"Eventually\",\n        -12.38847827911377\n      ],\n      [\n        \"▁banned\",\n        -12.38847827911377\n      ],\n      [\n        \"MAT\",\n        -12.388520240783691\n      ],\n      [\n        \"▁medici\",\n        -12.38856315612793\n      ],\n      [\n        \"▁Warm\",\n        -12.388615608215332\n      ],\n      [\n        \"▁trec\",\n        -12.388731002807617\n      ],\n      [\n        \"▁ecran\",\n        -12.388763427734375\n      ],\n      [\n        \"▁goat\",\n        -12.388838768005371\n      ],\n      [\n        \"▁manipulation\",\n        -12.388850212097168\n      ],\n      [\n        \"▁mayor\",\n        -12.388898849487305\n      ],\n      [\n        \"▁unterwegs\",\n        -12.388975143432617\n      ],\n      [\n        \"▁journals\",\n        -12.3890380859375\n      ],\n      [\n        \"▁hedge\",\n        -12.389239311218262\n      ],\n      [\n        \"Merc\",\n        -12.389300346374512\n      ],\n      [\n        \"▁joueurs\",\n        -12.389411926269531\n      ],\n      [\n        \"▁Religion\",\n        -12.3894624710083\n      ],\n      [\n        \"▁Mountains\",\n        -12.389477729797363\n      ],\n      [\n        \"▁renewed\",\n        -12.389497756958008\n      ],\n      [\n        \"▁Limit\",\n        -12.389543533325195\n      ],\n      [\n        \"ikea\",\n        -12.389771461486816\n      ],\n      [\n        \"▁utiliza\",\n        -12.38977336883545\n      ],\n      [\n        \"sogenannte\",\n        -12.389808654785156\n      ],\n      [\n        \"0.2\",\n        -12.389836311340332\n      ],\n      [\n        \"▁Organ\",\n        -12.38987922668457\n      ],\n      [\n        \"▁Shakespeare\",\n        -12.389952659606934\n      ],\n      [\n        \"▁Maintenance\",\n        -12.38995361328125\n      ],\n      [\n        \"▁Wärme\",\n        -12.389954566955566\n      ],\n      [\n        \"▁Northwest\",\n        -12.390060424804688\n      ],\n      [\n        \"▁numit\",\n        -12.390106201171875\n      ],\n      [\n        \"▁mica\",\n        -12.390165328979492\n      ],\n      [\n        \"turm\",\n        -12.390168190002441\n      ],\n      [\n        \"▁motivate\",\n        -12.390250205993652\n      ],\n      [\n        \"▁Staats\",\n        -12.390355110168457\n      ],\n      [\n        \"optimum\",\n        -12.390487670898438\n      ],\n      [\n        \"▁sortir\",\n        -12.390546798706055\n      ],\n      [\n        \"▁Asset\",\n        -12.390555381774902\n      ],\n      [\n        \"▁hervorragend\",\n        -12.390692710876465\n      ],\n      [\n        \"▁commentary\",\n        -12.39071273803711\n      ],\n      [\n        \"▁actuellement\",\n        -12.390732765197754\n      ],\n      [\n        \"NER\",\n        -12.390765190124512\n      ],\n      [\n        \"NL\",\n        -12.390789985656738\n      ],\n      [\n        \"ritt\",\n        -12.390803337097168\n      ],\n      [\n        \"▁Wirtschafts\",\n        -12.390813827514648\n      ],\n      [\n        \"träger\",\n        -12.390840530395508\n      ],\n      [\n        \"▁Versand\",\n        -12.390870094299316\n      ],\n      [\n        \"▁nostri\",\n        -12.390953063964844\n      ],\n      [\n        \"▁enorm\",\n        -12.391227722167969\n      ],\n      [\n        \"▁whale\",\n        -12.391260147094727\n      ],\n      [\n        \"▁Aufgabe\",\n        -12.391277313232422\n      ],\n      [\n        \"▁unfair\",\n        -12.391291618347168\n      ],\n      [\n        \"▁Cord\",\n        -12.391315460205078\n      ],\n      [\n        \"incorporating\",\n        -12.39134693145752\n      ],\n      [\n        \"luck\",\n        -12.39157772064209\n      ],\n      [\n        \"Afrique\",\n        -12.39168643951416\n      ],\n      [\n        \"▁coated\",\n        -12.391857147216797\n      ],\n      [\n        \"▁india\",\n        -12.391908645629883\n      ],\n      [\n        \"▁temporarily\",\n        -12.39193058013916\n      ],\n      [\n        \"▁ciuda\",\n        -12.392097473144531\n      ],\n      [\n        \"▁coral\",\n        -12.392184257507324\n      ],\n      [\n        \"▁wirkt\",\n        -12.392203330993652\n      ],\n      [\n        \"▁folding\",\n        -12.392309188842773\n      ],\n      [\n        \"wichtigsten\",\n        -12.392398834228516\n      ],\n      [\n        \"impacted\",\n        -12.392422676086426\n      ],\n      [\n        \"▁wählen\",\n        -12.392423629760742\n      ],\n      [\n        \"▁differentiate\",\n        -12.392492294311523\n      ],\n      [\n        \"▁froid\",\n        -12.392544746398926\n      ],\n      [\n        \"▁hug\",\n        -12.39255142211914\n      ],\n      [\n        \"▁construi\",\n        -12.39255428314209\n      ],\n      [\n        \"▁membru\",\n        -12.392603874206543\n      ],\n      [\n        \"▁masculin\",\n        -12.392667770385742\n      ],\n      [\n        \"partisan\",\n        -12.392711639404297\n      ],\n      [\n        \"▁schimba\",\n        -12.392725944519043\n      ],\n      [\n        \"▁economies\",\n        -12.392827987670898\n      ],\n      [\n        \"▁Abraham\",\n        -12.392914772033691\n      ],\n      [\n        \"wesen\",\n        -12.393013954162598\n      ],\n      [\n        \"enia\",\n        -12.393026351928711\n      ],\n      [\n        \"▁answering\",\n        -12.393080711364746\n      ],\n      [\n        \"▁activități\",\n        -12.39309024810791\n      ],\n      [\n        \"▁mémoire\",\n        -12.393160820007324\n      ],\n      [\n        \"▁versucht\",\n        -12.393305778503418\n      ],\n      [\n        \"ember\",\n        -12.39333438873291\n      ],\n      [\n        \"▁instala\",\n        -12.39334774017334\n      ],\n      [\n        \"▁eligibility\",\n        -12.393407821655273\n      ],\n      [\n        \"▁enjoyment\",\n        -12.393409729003906\n      ],\n      [\n        \"▁Arme\",\n        -12.39350414276123\n      ],\n      [\n        \"although\",\n        -12.393534660339355\n      ],\n      [\n        \"▁encompass\",\n        -12.393596649169922\n      ],\n      [\n        \"▁zufrieden\",\n        -12.393658638000488\n      ],\n      [\n        \"Script\",\n        -12.393691062927246\n      ],\n      [\n        \"KG\",\n        -12.39385986328125\n      ],\n      [\n        \"▁adhesive\",\n        -12.393902778625488\n      ],\n      [\n        \"▁Verkehrs\",\n        -12.393908500671387\n      ],\n      [\n        \"▁monitored\",\n        -12.394103050231934\n      ],\n      [\n        \"▁Conservation\",\n        -12.394148826599121\n      ],\n      [\n        \"hav\",\n        -12.394156455993652\n      ],\n      [\n        \"▁Above\",\n        -12.394174575805664\n      ],\n      [\n        \"▁Former\",\n        -12.394241333007812\n      ],\n      [\n        \"▁Certain\",\n        -12.394250869750977\n      ],\n      [\n        \"saving\",\n        -12.394311904907227\n      ],\n      [\n        \"▁Pun\",\n        -12.394390106201172\n      ],\n      [\n        \"▁awkward\",\n        -12.394397735595703\n      ],\n      [\n        \"▁Pretty\",\n        -12.394410133361816\n      ],\n      [\n        \"▁scanning\",\n        -12.394417762756348\n      ],\n      [\n        \"layer\",\n        -12.394527435302734\n      ],\n      [\n        \"motor\",\n        -12.39453125\n      ],\n      [\n        \"▁beginnt\",\n        -12.39455795288086\n      ],\n      [\n        \"▁affiliated\",\n        -12.394681930541992\n      ],\n      [\n        \"▁archives\",\n        -12.394686698913574\n      ],\n      [\n        \"▁sunshine\",\n        -12.394892692565918\n      ],\n      [\n        \"kha\",\n        -12.394988059997559\n      ],\n      [\n        \"▁investigated\",\n        -12.395149230957031\n      ],\n      [\n        \"▁fantas\",\n        -12.395277976989746\n      ],\n      [\n        \"▁united\",\n        -12.395355224609375\n      ],\n      [\n        \"allegedly\",\n        -12.395373344421387\n      ],\n      [\n        \"▁Eugen\",\n        -12.3955078125\n      ],\n      [\n        \"▁proprie\",\n        -12.395843505859375\n      ],\n      [\n        \"uca\",\n        -12.396183013916016\n      ],\n      [\n        \"DES\",\n        -12.396187782287598\n      ],\n      [\n        \"ştii\",\n        -12.396190643310547\n      ],\n      [\n        \"▁Running\",\n        -12.39620590209961\n      ],\n      [\n        \"lbstverständlich\",\n        -12.396248817443848\n      ],\n      [\n        \"index\",\n        -12.396300315856934\n      ],\n      [\n        \"▁studiu\",\n        -12.396512031555176\n      ],\n      [\n        \"URE\",\n        -12.396553039550781\n      ],\n      [\n        \"gültig\",\n        -12.396627426147461\n      ],\n      [\n        \"▁lundi\",\n        -12.396649360656738\n      ],\n      [\n        \"▁Zucker\",\n        -12.396650314331055\n      ],\n      [\n        \"▁positively\",\n        -12.396721839904785\n      ],\n      [\n        \"folgenden\",\n        -12.396758079528809\n      ],\n      [\n        \"anță\",\n        -12.396800994873047\n      ],\n      [\n        \"▁clan\",\n        -12.396866798400879\n      ],\n      [\n        \"▁literacy\",\n        -12.396879196166992\n      ],\n      [\n        \"▁ober\",\n        -12.39699935913086\n      ],\n      [\n        \"John\",\n        -12.397003173828125\n      ],\n      [\n        \"greg\",\n        -12.39700984954834\n      ],\n      [\n        \"▁titlu\",\n        -12.397049903869629\n      ],\n      [\n        \"▁ţări\",\n        -12.39707088470459\n      ],\n      [\n        \"Bra\",\n        -12.397100448608398\n      ],\n      [\n        \"▁Evans\",\n        -12.397164344787598\n      ],\n      [\n        \"modern\",\n        -12.397172927856445\n      ],\n      [\n        \"▁hauteur\",\n        -12.397353172302246\n      ],\n      [\n        \"refers\",\n        -12.397416114807129\n      ],\n      [\n        \"▁plasma\",\n        -12.397575378417969\n      ],\n      [\n        \"▁optic\",\n        -12.397595405578613\n      ],\n      [\n        \"▁shampoo\",\n        -12.397619247436523\n      ],\n      [\n        \"▁cheek\",\n        -12.397727966308594\n      ],\n      [\n        \"opted\",\n        -12.397741317749023\n      ],\n      [\n        \"▁persönlich\",\n        -12.397832870483398\n      ],\n      [\n        \"▁1945\",\n        -12.398118019104004\n      ],\n      [\n        \"ICI\",\n        -12.398193359375\n      ],\n      [\n        \"biotic\",\n        -12.398222923278809\n      ],\n      [\n        \"▁Beruf\",\n        -12.398372650146484\n      ],\n      [\n        \"▁trez\",\n        -12.398383140563965\n      ],\n      [\n        \"▁diploma\",\n        -12.398388862609863\n      ],\n      [\n        \"nahmen\",\n        -12.398421287536621\n      ],\n      [\n        \"▁curl\",\n        -12.398625373840332\n      ],\n      [\n        \"▁agricole\",\n        -12.398824691772461\n      ],\n      [\n        \"▁recomand\",\n        -12.398844718933105\n      ],\n      [\n        \"▁pediatric\",\n        -12.398862838745117\n      ],\n      [\n        \"Fiecare\",\n        -12.39887523651123\n      ],\n      [\n        \"Anlage\",\n        -12.398906707763672\n      ],\n      [\n        \"weiß\",\n        -12.398974418640137\n      ],\n      [\n        \"elecommunication\",\n        -12.39898681640625\n      ],\n      [\n        \"hog\",\n        -12.399184226989746\n      ],\n      [\n        \"▁Stamp\",\n        -12.399364471435547\n      ],\n      [\n        \"▁Tipp\",\n        -12.399369239807129\n      ],\n      [\n        \"▁kindness\",\n        -12.399415969848633\n      ],\n      [\n        \"▁Marina\",\n        -12.399577140808105\n      ],\n      [\n        \"▁Gleich\",\n        -12.39963436126709\n      ],\n      [\n        \"▁grij\",\n        -12.39970588684082\n      ],\n      [\n        \"▁desperate\",\n        -12.39974594116211\n      ],\n      [\n        \"▁recordings\",\n        -12.399842262268066\n      ],\n      [\n        \"▁neglect\",\n        -12.399861335754395\n      ],\n      [\n        \"▁inherent\",\n        -12.400035858154297\n      ],\n      [\n        \"▁Rezept\",\n        -12.400138854980469\n      ],\n      [\n        \"▁soins\",\n        -12.400164604187012\n      ],\n      [\n        \"▁brut\",\n        -12.400250434875488\n      ],\n      [\n        \"▁revolutionary\",\n        -12.400495529174805\n      ],\n      [\n        \"▁liberté\",\n        -12.400530815124512\n      ],\n      [\n        \"cours\",\n        -12.400945663452148\n      ],\n      [\n        \"▁Similar\",\n        -12.401247024536133\n      ],\n      [\n        \"▁cheveux\",\n        -12.40136432647705\n      ],\n      [\n        \"▁ieftin\",\n        -12.401599884033203\n      ],\n      [\n        \"▁promovare\",\n        -12.40160846710205\n      ],\n      [\n        \"▁grains\",\n        -12.401729583740234\n      ],\n      [\n        \"ти\",\n        -12.401749610900879\n      ],\n      [\n        \"▁fonctionnement\",\n        -12.401789665222168\n      ],\n      [\n        \"▁Coming\",\n        -12.401832580566406\n      ],\n      [\n        \"▁analytical\",\n        -12.401847839355469\n      ],\n      [\n        \"▁simplify\",\n        -12.401856422424316\n      ],\n      [\n        \"▁chambres\",\n        -12.401893615722656\n      ],\n      [\n        \"▁fifty\",\n        -12.401930809020996\n      ],\n      [\n        \"jour\",\n        -12.402070999145508\n      ],\n      [\n        \"▁(17\",\n        -12.402194023132324\n      ],\n      [\n        \"cărui\",\n        -12.402292251586914\n      ],\n      [\n        \"▁harmony\",\n        -12.402352333068848\n      ],\n      [\n        \"grin\",\n        -12.402355194091797\n      ],\n      [\n        \"▁drunk\",\n        -12.402359962463379\n      ],\n      [\n        \"260\",\n        -12.402374267578125\n      ],\n      [\n        \"3-5\",\n        -12.40243148803711\n      ],\n      [\n        \"▁articole\",\n        -12.402442932128906\n      ],\n      [\n        \"▁flooding\",\n        -12.402482986450195\n      ],\n      [\n        \"halle\",\n        -12.402580261230469\n      ],\n      [\n        \"▁defects\",\n        -12.40276050567627\n      ],\n      [\n        \"▁rifle\",\n        -12.402839660644531\n      ],\n      [\n        \"▁Boc\",\n        -12.402843475341797\n      ],\n      [\n        \"▁Athletic\",\n        -12.40284538269043\n      ],\n      [\n        \"▁acordat\",\n        -12.40292739868164\n      ],\n      [\n        \"AIR\",\n        -12.402969360351562\n      ],\n      [\n        \"▁entwickeln\",\n        -12.403104782104492\n      ],\n      [\n        \"▁Advance\",\n        -12.403188705444336\n      ],\n      [\n        \"▁Heil\",\n        -12.403216361999512\n      ],\n      [\n        \"Stainless\",\n        -12.403345108032227\n      ],\n      [\n        \"▁Psychology\",\n        -12.40337085723877\n      ],\n      [\n        \"▁omul\",\n        -12.403435707092285\n      ],\n      [\n        \"▁Arbeiten\",\n        -12.403494834899902\n      ],\n      [\n        \"▁rabbit\",\n        -12.403495788574219\n      ],\n      [\n        \"▁méta\",\n        -12.40351390838623\n      ],\n      [\n        \"ismul\",\n        -12.403534889221191\n      ],\n      [\n        \"▁Herausforderung\",\n        -12.403594970703125\n      ],\n      [\n        \"▁Euch\",\n        -12.403654098510742\n      ],\n      [\n        \"geschichte\",\n        -12.40390682220459\n      ],\n      [\n        \"▁Milk\",\n        -12.404057502746582\n      ],\n      [\n        \"▁pregăt\",\n        -12.404065132141113\n      ],\n      [\n        \"▁Standort\",\n        -12.404141426086426\n      ],\n      [\n        \"Val\",\n        -12.404180526733398\n      ],\n      [\n        \"▁Ronald\",\n        -12.404350280761719\n      ],\n      [\n        \"▁Werbe\",\n        -12.404558181762695\n      ],\n      [\n        \"▁restrict\",\n        -12.404658317565918\n      ],\n      [\n        \"▁tablespoon\",\n        -12.404844284057617\n      ],\n      [\n        \"▁Amendment\",\n        -12.404845237731934\n      ],\n      [\n        \"▁Johnny\",\n        -12.404914855957031\n      ],\n      [\n        \"▁lively\",\n        -12.404938697814941\n      ],\n      [\n        \"ORD\",\n        -12.405147552490234\n      ],\n      [\n        \"▁mulţi\",\n        -12.40523624420166\n      ],\n      [\n        \"èrent\",\n        -12.405241012573242\n      ],\n      [\n        \"Every\",\n        -12.405277252197266\n      ],\n      [\n        \"eignet\",\n        -12.405296325683594\n      ],\n      [\n        \"GD\",\n        -12.40546989440918\n      ],\n      [\n        \"▁Ghana\",\n        -12.405628204345703\n      ],\n      [\n        \"▁wealthy\",\n        -12.40576171875\n      ],\n      [\n        \"▁advocates\",\n        -12.405818939208984\n      ],\n      [\n        \"▁Campaign\",\n        -12.40584659576416\n      ],\n      [\n        \"▁posters\",\n        -12.405964851379395\n      ],\n      [\n        \"flug\",\n        -12.406011581420898\n      ],\n      [\n        \"▁métier\",\n        -12.406139373779297\n      ],\n      [\n        \"kir\",\n        -12.406148910522461\n      ],\n      [\n        \"bond\",\n        -12.406176567077637\n      ],\n      [\n        \"datorita\",\n        -12.406188011169434\n      ],\n      [\n        \"▁Hochzeit\",\n        -12.406230926513672\n      ],\n      [\n        \"▁effectué\",\n        -12.406271934509277\n      ],\n      [\n        \"▁angles\",\n        -12.40654182434082\n      ],\n      [\n        \"▁Electrical\",\n        -12.406705856323242\n      ],\n      [\n        \"▁Administrator\",\n        -12.40674114227295\n      ],\n      [\n        \"▁spur\",\n        -12.407389640808105\n      ],\n      [\n        \"▁größere\",\n        -12.407444953918457\n      ],\n      [\n        \"woke\",\n        -12.407515525817871\n      ],\n      [\n        \"▁gewinnen\",\n        -12.407689094543457\n      ],\n      [\n        \"▁ajută\",\n        -12.407712936401367\n      ],\n      [\n        \"▁ventilation\",\n        -12.407853126525879\n      ],\n      [\n        \"▁viaţa\",\n        -12.407853126525879\n      ],\n      [\n        \"▁Dinner\",\n        -12.408079147338867\n      ],\n      [\n        \"respond\",\n        -12.408095359802246\n      ],\n      [\n        \"▁OEM\",\n        -12.408120155334473\n      ],\n      [\n        \"▁affair\",\n        -12.4081392288208\n      ],\n      [\n        \"▁öffentlich\",\n        -12.408143043518066\n      ],\n      [\n        \"ENS\",\n        -12.408209800720215\n      ],\n      [\n        \"▁Cent\",\n        -12.408224105834961\n      ],\n      [\n        \"▁făc\",\n        -12.408267974853516\n      ],\n      [\n        \"▁Doppel\",\n        -12.408285140991211\n      ],\n      [\n        \"▁fericit\",\n        -12.408363342285156\n      ],\n      [\n        \"▁coordon\",\n        -12.40845775604248\n      ],\n      [\n        \"geht\",\n        -12.408547401428223\n      ],\n      [\n        \"▁perfekte\",\n        -12.408610343933105\n      ],\n      [\n        \"▁sportive\",\n        -12.408700942993164\n      ],\n      [\n        \"▁proiectul\",\n        -12.40870189666748\n      ],\n      [\n        \"▁deadly\",\n        -12.408804893493652\n      ],\n      [\n        \"Geschäft\",\n        -12.408822059631348\n      ],\n      [\n        \"▁inspirational\",\n        -12.408854484558105\n      ],\n      [\n        \"+1\",\n        -12.409013748168945\n      ],\n      [\n        \"▁pearl\",\n        -12.409022331237793\n      ],\n      [\n        \"▁scrub\",\n        -12.409036636352539\n      ],\n      [\n        \"▁scheint\",\n        -12.409079551696777\n      ],\n      [\n        \"poo\",\n        -12.409147262573242\n      ],\n      [\n        \"▁Pier\",\n        -12.409220695495605\n      ],\n      [\n        \"▁commented\",\n        -12.409285545349121\n      ],\n      [\n        \"lute\",\n        -12.409302711486816\n      ],\n      [\n        \"▁cancelled\",\n        -12.409488677978516\n      ],\n      [\n        \"Win\",\n        -12.409605979919434\n      ],\n      [\n        \"▁payroll\",\n        -12.409781455993652\n      ],\n      [\n        \"▁varsta\",\n        -12.409881591796875\n      ],\n      [\n        \"stuffed\",\n        -12.410097122192383\n      ],\n      [\n        \"▁beads\",\n        -12.410138130187988\n      ],\n      [\n        \"▁poems\",\n        -12.410356521606445\n      ],\n      [\n        \"pokesman\",\n        -12.410399436950684\n      ],\n      [\n        \"▁checklist\",\n        -12.410523414611816\n      ],\n      [\n        \"▁Mich\",\n        -12.410636901855469\n      ],\n      [\n        \"GEN\",\n        -12.410676002502441\n      ],\n      [\n        \"▁Lau\",\n        -12.410783767700195\n      ],\n      [\n        \"▁stie\",\n        -12.410965919494629\n      ],\n      [\n        \"▁Lovely\",\n        -12.4110107421875\n      ],\n      [\n        \"▁Anschluss\",\n        -12.411062240600586\n      ],\n      [\n        \"▁personaj\",\n        -12.41108226776123\n      ],\n      [\n        \"▁ausgestattet\",\n        -12.411121368408203\n      ],\n      [\n        \"▁beginners\",\n        -12.411163330078125\n      ],\n      [\n        \"▁noon\",\n        -12.411189079284668\n      ],\n      [\n        \"▁celule\",\n        -12.41128921508789\n      ],\n      [\n        \"Trans\",\n        -12.411324501037598\n      ],\n      [\n        \"boot\",\n        -12.411331176757812\n      ],\n      [\n        \"▁drumul\",\n        -12.41136646270752\n      ],\n      [\n        \"gruppen\",\n        -12.41140079498291\n      ],\n      [\n        \"étend\",\n        -12.41140365600586\n      ],\n      [\n        \"▁risques\",\n        -12.411405563354492\n      ],\n      [\n        \"acclaimed\",\n        -12.411447525024414\n      ],\n      [\n        \"▁celelalte\",\n        -12.411617279052734\n      ],\n      [\n        \"▁condiţii\",\n        -12.411620140075684\n      ],\n      [\n        \"▁skiing\",\n        -12.411685943603516\n      ],\n      [\n        \"▁optimale\",\n        -12.411689758300781\n      ],\n      [\n        \"technology\",\n        -12.411773681640625\n      ],\n      [\n        \"▁renew\",\n        -12.411784172058105\n      ],\n      [\n        \"Cloud\",\n        -12.41179084777832\n      ],\n      [\n        \"▁damaging\",\n        -12.411905288696289\n      ],\n      [\n        \"GT\",\n        -12.412219047546387\n      ],\n      [\n        \"▁Reform\",\n        -12.41230583190918\n      ],\n      [\n        \"vedem\",\n        -12.412349700927734\n      ],\n      [\n        \"▁indicat\",\n        -12.412461280822754\n      ],\n      [\n        \"▁Maker\",\n        -12.412467002868652\n      ],\n      [\n        \"▁lichid\",\n        -12.412582397460938\n      ],\n      [\n        \"3.1\",\n        -12.412614822387695\n      ],\n      [\n        \"păt\",\n        -12.412620544433594\n      ],\n      [\n        \"lumina\",\n        -12.41264820098877\n      ],\n      [\n        \"▁Situ\",\n        -12.412806510925293\n      ],\n      [\n        \"▁Archives\",\n        -12.412857055664062\n      ],\n      [\n        \"▁allergies\",\n        -12.41287899017334\n      ],\n      [\n        \"▁Cameron\",\n        -12.412883758544922\n      ],\n      [\n        \"▁Immun\",\n        -12.412899017333984\n      ],\n      [\n        \"wissenschaftlich\",\n        -12.41301441192627\n      ],\n      [\n        \"▁supplémentaire\",\n        -12.413128852844238\n      ],\n      [\n        \"▁puterea\",\n        -12.413261413574219\n      ],\n      [\n        \"Lab\",\n        -12.413331985473633\n      ],\n      [\n        \"inspired\",\n        -12.413384437561035\n      ],\n      [\n        \"▁shrink\",\n        -12.413403511047363\n      ],\n      [\n        \"▁voit\",\n        -12.413426399230957\n      ],\n      [\n        \"▁chopped\",\n        -12.413467407226562\n      ],\n      [\n        \"▁Franz\",\n        -12.413537979125977\n      ],\n      [\n        \"oku\",\n        -12.413652420043945\n      ],\n      [\n        \"▁suppress\",\n        -12.413673400878906\n      ],\n      [\n        \"▁impress\",\n        -12.413751602172852\n      ],\n      [\n        \"▁Liga\",\n        -12.413755416870117\n      ],\n      [\n        \"▁Eight\",\n        -12.41378402709961\n      ],\n      [\n        \"720\",\n        -12.413795471191406\n      ],\n      [\n        \"▁securely\",\n        -12.413870811462402\n      ],\n      [\n        \"KU\",\n        -12.413934707641602\n      ],\n      [\n        \"modell\",\n        -12.413992881774902\n      ],\n      [\n        \"Ensure\",\n        -12.414154052734375\n      ],\n      [\n        \"größte\",\n        -12.414204597473145\n      ],\n      [\n        \"▁réuni\",\n        -12.414215087890625\n      ],\n      [\n        \"▁Internal\",\n        -12.41423225402832\n      ],\n      [\n        \"▁Punkte\",\n        -12.414320945739746\n      ],\n      [\n        \"▁replicate\",\n        -12.414412498474121\n      ],\n      [\n        \"▁spreadsheet\",\n        -12.414434432983398\n      ],\n      [\n        \"▁Hindu\",\n        -12.414549827575684\n      ],\n      [\n        \"▁Cham\",\n        -12.414578437805176\n      ],\n      [\n        \"nati\",\n        -12.414670944213867\n      ],\n      [\n        \"imply\",\n        -12.414679527282715\n      ],\n      [\n        \"funded\",\n        -12.414894104003906\n      ],\n      [\n        \"▁charitable\",\n        -12.414896011352539\n      ],\n      [\n        \"▁imagined\",\n        -12.415014266967773\n      ],\n      [\n        \"hausen\",\n        -12.41517448425293\n      ],\n      [\n        \"Keeping\",\n        -12.415239334106445\n      ],\n      [\n        \"▁attitudes\",\n        -12.415287971496582\n      ],\n      [\n        \"esque\",\n        -12.415365219116211\n      ],\n      [\n        \"▁Tennis\",\n        -12.415409088134766\n      ],\n      [\n        \"Jeremy\",\n        -12.415410041809082\n      ],\n      [\n        \"▁majeur\",\n        -12.415475845336914\n      ],\n      [\n        \"▁stii\",\n        -12.4155912399292\n      ],\n      [\n        \"▁herbal\",\n        -12.415790557861328\n      ],\n      [\n        \"▁cauta\",\n        -12.41580867767334\n      ],\n      [\n        \"▁voluntary\",\n        -12.415828704833984\n      ],\n      [\n        \"wohl\",\n        -12.415877342224121\n      ],\n      [\n        \"▁ideea\",\n        -12.41588306427002\n      ],\n      [\n        \"▁WW\",\n        -12.415899276733398\n      ],\n      [\n        \"▁erneut\",\n        -12.416010856628418\n      ],\n      [\n        \"größten\",\n        -12.416094779968262\n      ],\n      [\n        \"Grâce\",\n        -12.416159629821777\n      ],\n      [\n        \"▁Köln\",\n        -12.416193008422852\n      ],\n      [\n        \"▁mobilier\",\n        -12.416199684143066\n      ],\n      [\n        \"▁fool\",\n        -12.416254043579102\n      ],\n      [\n        \"▁Calcul\",\n        -12.416295051574707\n      ],\n      [\n        \"attaque\",\n        -12.41637897491455\n      ],\n      [\n        \"▁digestive\",\n        -12.41656494140625\n      ],\n      [\n        \"performance\",\n        -12.416647911071777\n      ],\n      [\n        \"▁homeowner\",\n        -12.41675853729248\n      ],\n      [\n        \"▁hunger\",\n        -12.4169282913208\n      ],\n      [\n        \"2.3\",\n        -12.41696834564209\n      ],\n      [\n        \"▁Sort\",\n        -12.417085647583008\n      ],\n      [\n        \"▁Dennis\",\n        -12.41723918914795\n      ],\n      [\n        \"▁certificat\",\n        -12.417250633239746\n      ],\n      [\n        \"▁Canal\",\n        -12.417337417602539\n      ],\n      [\n        \"▁Yesterday\",\n        -12.417424201965332\n      ],\n      [\n        \"▁sausage\",\n        -12.417499542236328\n      ],\n      [\n        \"▁perdu\",\n        -12.417736053466797\n      ],\n      [\n        \"ösen\",\n        -12.417741775512695\n      ],\n      [\n        \"▁preserved\",\n        -12.417750358581543\n      ],\n      [\n        \"▁trendy\",\n        -12.4177885055542\n      ],\n      [\n        \"▁iubire\",\n        -12.417935371398926\n      ],\n      [\n        \"▁grandfather\",\n        -12.417961120605469\n      ],\n      [\n        \"▁shoppers\",\n        -12.41820240020752\n      ],\n      [\n        \"▁verschieden\",\n        -12.418252944946289\n      ],\n      [\n        \"▁gagner\",\n        -12.41826343536377\n      ],\n      [\n        \"▁lucra\",\n        -12.418437004089355\n      ],\n      [\n        \"metru\",\n        -12.418464660644531\n      ],\n      [\n        \"buz\",\n        -12.418469429016113\n      ],\n      [\n        \"▁flourish\",\n        -12.418484687805176\n      ],\n      [\n        \"affin\",\n        -12.418523788452148\n      ],\n      [\n        \"▁Pflanzen\",\n        -12.41858196258545\n      ],\n      [\n        \"agh\",\n        -12.418588638305664\n      ],\n      [\n        \"▁Gill\",\n        -12.418660163879395\n      ],\n      [\n        \"▁Kä\",\n        -12.418671607971191\n      ],\n      [\n        \"▁Wege\",\n        -12.41876220703125\n      ],\n      [\n        \"▁Liberal\",\n        -12.418929100036621\n      ],\n      [\n        \"▁Glasgow\",\n        -12.418944358825684\n      ],\n      [\n        \"Objekt\",\n        -12.4189453125\n      ],\n      [\n        \"▁Huawei\",\n        -12.4189453125\n      ],\n      [\n        \"appropri\",\n        -12.418986320495605\n      ],\n      [\n        \"▁genius\",\n        -12.419037818908691\n      ],\n      [\n        \"▁brokers\",\n        -12.419068336486816\n      ],\n      [\n        \"▁themed\",\n        -12.41918659210205\n      ],\n      [\n        \"▁barre\",\n        -12.419210433959961\n      ],\n      [\n        \"1.7\",\n        -12.419219017028809\n      ],\n      [\n        \"▁Electro\",\n        -12.419303894042969\n      ],\n      [\n        \"▁umbrella\",\n        -12.419333457946777\n      ],\n      [\n        \"▁advisory\",\n        -12.419417381286621\n      ],\n      [\n        \"▁comport\",\n        -12.419421195983887\n      ],\n      [\n        \"▁neuer\",\n        -12.419452667236328\n      ],\n      [\n        \"▁Wick\",\n        -12.419568061828613\n      ],\n      [\n        \"wak\",\n        -12.419618606567383\n      ],\n      [\n        \"▁Woman\",\n        -12.419695854187012\n      ],\n      [\n        \"▁lesser\",\n        -12.419843673706055\n      ],\n      [\n        \"▁replied\",\n        -12.419987678527832\n      ],\n      [\n        \"▁représente\",\n        -12.420050621032715\n      ],\n      [\n        \"▁thé\",\n        -12.420135498046875\n      ],\n      [\n        \"Deutsch\",\n        -12.420428276062012\n      ],\n      [\n        \"Cat\",\n        -12.420483589172363\n      ],\n      [\n        \"▁équipes\",\n        -12.420534133911133\n      ],\n      [\n        \"▁spider\",\n        -12.420578956604004\n      ],\n      [\n        \"▁Gaming\",\n        -12.420589447021484\n      ],\n      [\n        \"▁Liste\",\n        -12.420592308044434\n      ],\n      [\n        \"▁affection\",\n        -12.420639038085938\n      ],\n      [\n        \"lipsa\",\n        -12.420982360839844\n      ],\n      [\n        \"▁Spider\",\n        -12.420987129211426\n      ],\n      [\n        \"▁Julia\",\n        -12.421034812927246\n      ],\n      [\n        \"anlagen\",\n        -12.421159744262695\n      ],\n      [\n        \"Kon\",\n        -12.421363830566406\n      ],\n      [\n        \"nței\",\n        -12.421368598937988\n      ],\n      [\n        \"▁Verwaltung\",\n        -12.421483993530273\n      ],\n      [\n        \"▁raspuns\",\n        -12.421489715576172\n      ],\n      [\n        \"samt\",\n        -12.421491622924805\n      ],\n      [\n        \"▁creștere\",\n        -12.421512603759766\n      ],\n      [\n        \"▁decorate\",\n        -12.421701431274414\n      ],\n      [\n        \"▁Chain\",\n        -12.422021865844727\n      ],\n      [\n        \"ów\",\n        -12.422050476074219\n      ],\n      [\n        \"0-0\",\n        -12.422104835510254\n      ],\n      [\n        \"▁Cran\",\n        -12.422407150268555\n      ],\n      [\n        \"▁streak\",\n        -12.42242431640625\n      ],\n      [\n        \"ор\",\n        -12.422517776489258\n      ],\n      [\n        \"▁căuta\",\n        -12.422754287719727\n      ],\n      [\n        \"wende\",\n        -12.422801971435547\n      ],\n      [\n        \"▁haine\",\n        -12.42280387878418\n      ],\n      [\n        \"▁landscaping\",\n        -12.423009872436523\n      ],\n      [\n        \"▁historian\",\n        -12.423016548156738\n      ],\n      [\n        \"▁grandchildren\",\n        -12.423033714294434\n      ],\n      [\n        \"▁crawl\",\n        -12.423056602478027\n      ],\n      [\n        \"▁Cub\",\n        -12.423239707946777\n      ],\n      [\n        \"▁nécessaires\",\n        -12.423515319824219\n      ],\n      [\n        \"▁swift\",\n        -12.42352294921875\n      ],\n      [\n        \"▁calculation\",\n        -12.423656463623047\n      ],\n      [\n        \"▁acteurs\",\n        -12.423715591430664\n      ],\n      [\n        \"VT\",\n        -12.423752784729004\n      ],\n      [\n        \"▁Hristos\",\n        -12.423778533935547\n      ],\n      [\n        \"▁slices\",\n        -12.423850059509277\n      ],\n      [\n        \"See\",\n        -12.424203872680664\n      ],\n      [\n        \"▁Bran\",\n        -12.424233436584473\n      ],\n      [\n        \"Symbol\",\n        -12.424449920654297\n      ],\n      [\n        \"▁allowance\",\n        -12.424492835998535\n      ],\n      [\n        \"▁Effective\",\n        -12.424537658691406\n      ],\n      [\n        \"▁Wünsche\",\n        -12.424539566040039\n      ],\n      [\n        \"▁shiny\",\n        -12.424569129943848\n      ],\n      [\n        \"▁professionalism\",\n        -12.424715995788574\n      ],\n      [\n        \"/6\",\n        -12.424970626831055\n      ],\n      [\n        \"▁terrasse\",\n        -12.425087928771973\n      ],\n      [\n        \"▁researcher\",\n        -12.425156593322754\n      ],\n      [\n        \"▁fragile\",\n        -12.425203323364258\n      ],\n      [\n        \"▁greeting\",\n        -12.425274848937988\n      ],\n      [\n        \"freien\",\n        -12.4253511428833\n      ],\n      [\n        \"▁valuation\",\n        -12.425372123718262\n      ],\n      [\n        \"▁incur\",\n        -12.425386428833008\n      ],\n      [\n        \"▁Zwischen\",\n        -12.425559997558594\n      ],\n      [\n        \"▁comfy\",\n        -12.425569534301758\n      ],\n      [\n        \"▁méthode\",\n        -12.42569351196289\n      ],\n      [\n        \"▁Pirate\",\n        -12.425816535949707\n      ],\n      [\n        \"▁Moto\",\n        -12.425822257995605\n      ],\n      [\n        \"(6)\",\n        -12.425823211669922\n      ],\n      [\n        \"▁devin\",\n        -12.42582893371582\n      ],\n      [\n        \"▁civic\",\n        -12.425837516784668\n      ],\n      [\n        \"usage\",\n        -12.425889015197754\n      ],\n      [\n        \"▁istorie\",\n        -12.425945281982422\n      ],\n      [\n        \"▁piste\",\n        -12.425955772399902\n      ],\n      [\n        \"▁Rug\",\n        -12.426091194152832\n      ],\n      [\n        \"pä\",\n        -12.426129341125488\n      ],\n      [\n        \"▁matur\",\n        -12.426148414611816\n      ],\n      [\n        \"CAS\",\n        -12.426155090332031\n      ],\n      [\n        \"TIC\",\n        -12.42618465423584\n      ],\n      [\n        \"▁Reduce\",\n        -12.426234245300293\n      ],\n      [\n        \"▁commemorat\",\n        -12.426321983337402\n      ],\n      [\n        \"▁cease\",\n        -12.42653751373291\n      ],\n      [\n        \"unterschiedliche\",\n        -12.42656421661377\n      ],\n      [\n        \"▁cinnamon\",\n        -12.426581382751465\n      ],\n      [\n        \"▁Font\",\n        -12.426583290100098\n      ],\n      [\n        \"▁justify\",\n        -12.426751136779785\n      ],\n      [\n        \"deteriorat\",\n        -12.426797866821289\n      ],\n      [\n        \"▁Schön\",\n        -12.42684555053711\n      ],\n      [\n        \"plain\",\n        -12.426993370056152\n      ],\n      [\n        \"frist\",\n        -12.427002906799316\n      ],\n      [\n        \"▁helmet\",\n        -12.42712116241455\n      ],\n      [\n        \"▁statute\",\n        -12.42721939086914\n      ],\n      [\n        \"accept\",\n        -12.427236557006836\n      ],\n      [\n        \"▁1,5\",\n        -12.42724323272705\n      ],\n      [\n        \"▁recon\",\n        -12.42724323272705\n      ],\n      [\n        \"▁Möbel\",\n        -12.427348136901855\n      ],\n      [\n        \"▁idées\",\n        -12.427367210388184\n      ],\n      [\n        \"automat\",\n        -12.427552223205566\n      ],\n      [\n        \"Team\",\n        -12.42758846282959\n      ],\n      [\n        \"▁performers\",\n        -12.427688598632812\n      ],\n      [\n        \"▁microphone\",\n        -12.427722930908203\n      ],\n      [\n        \"impotriva\",\n        -12.427775382995605\n      ],\n      [\n        \"▁pillows\",\n        -12.42780876159668\n      ],\n      [\n        \"▁accountable\",\n        -12.427812576293945\n      ],\n      [\n        \"▁strings\",\n        -12.42782974243164\n      ],\n      [\n        \"hydrate\",\n        -12.427835464477539\n      ],\n      [\n        \"▁Yan\",\n        -12.427865028381348\n      ],\n      [\n        \"starea\",\n        -12.427918434143066\n      ],\n      [\n        \"▁présenté\",\n        -12.42793083190918\n      ],\n      [\n        \"▁extensively\",\n        -12.428048133850098\n      ],\n      [\n        \"äst\",\n        -12.428114891052246\n      ],\n      [\n        \"▁correlation\",\n        -12.428115844726562\n      ],\n      [\n        \"bespoke\",\n        -12.428119659423828\n      ],\n      [\n        \"▁creste\",\n        -12.428196907043457\n      ],\n      [\n        \"▁Armenia\",\n        -12.428248405456543\n      ],\n      [\n        \"nose\",\n        -12.428426742553711\n      ],\n      [\n        \"▁strengthening\",\n        -12.428604125976562\n      ],\n      [\n        \"▁Horizon\",\n        -12.428627014160156\n      ],\n      [\n        \"▁obesity\",\n        -12.428627967834473\n      ],\n      [\n        \"seasoned\",\n        -12.428686141967773\n      ],\n      [\n        \"▁screenshot\",\n        -12.428736686706543\n      ],\n      [\n        \"girl\",\n        -12.42875862121582\n      ],\n      [\n        \"▁hardest\",\n        -12.428826332092285\n      ],\n      [\n        \"▁weakness\",\n        -12.428855895996094\n      ],\n      [\n        \"effectuer\",\n        -12.429012298583984\n      ],\n      [\n        \"▁Florence\",\n        -12.429034233093262\n      ],\n      [\n        \"▁Europene\",\n        -12.429062843322754\n      ],\n      [\n        \"triggered\",\n        -12.429333686828613\n      ],\n      [\n        \"Apparently\",\n        -12.42939567565918\n      ],\n      [\n        \"▁diagnose\",\n        -12.42943286895752\n      ],\n      [\n        \"rushed\",\n        -12.429494857788086\n      ],\n      [\n        \"▁trotz\",\n        -12.429516792297363\n      ],\n      [\n        \"▁spécial\",\n        -12.429680824279785\n      ],\n      [\n        \"▁lumi\",\n        -12.429783821105957\n      ],\n      [\n        \"7:00\",\n        -12.429877281188965\n      ],\n      [\n        \"▁publicat\",\n        -12.429903984069824\n      ],\n      [\n        \"ос\",\n        -12.430086135864258\n      ],\n      [\n        \"▁hue\",\n        -12.430136680603027\n      ],\n      [\n        \"▁termination\",\n        -12.430139541625977\n      ],\n      [\n        \"▁Nam\",\n        -12.430240631103516\n      ],\n      [\n        \"Well\",\n        -12.430376052856445\n      ],\n      [\n        \"▁Extract\",\n        -12.430441856384277\n      ],\n      [\n        \"atiile\",\n        -12.43062686920166\n      ],\n      [\n        \"▁vivid\",\n        -12.43076229095459\n      ],\n      [\n        \"hrs\",\n        -12.430858612060547\n      ],\n      [\n        \"▁povesti\",\n        -12.430984497070312\n      ],\n      [\n        \"stehenden\",\n        -12.430988311767578\n      ],\n      [\n        \"▁informieren\",\n        -12.431070327758789\n      ],\n      [\n        \"employed\",\n        -12.431133270263672\n      ],\n      [\n        \"▁armor\",\n        -12.431180953979492\n      ],\n      [\n        \"▁Columbus\",\n        -12.431191444396973\n      ],\n      [\n        \"Registr\",\n        -12.431200981140137\n      ],\n      [\n        \"▁Kamera\",\n        -12.431203842163086\n      ],\n      [\n        \"▁ugly\",\n        -12.431203842163086\n      ],\n      [\n        \"outil\",\n        -12.431234359741211\n      ],\n      [\n        \"▁evenly\",\n        -12.43134593963623\n      ],\n      [\n        \"lungul\",\n        -12.431349754333496\n      ],\n      [\n        \"koch\",\n        -12.431439399719238\n      ],\n      [\n        \"▁Dig\",\n        -12.431450843811035\n      ],\n      [\n        \"purely\",\n        -12.431489944458008\n      ],\n      [\n        \"▁Surf\",\n        -12.431560516357422\n      ],\n      [\n        \"rilla\",\n        -12.431628227233887\n      ],\n      [\n        \"▁Watson\",\n        -12.43171215057373\n      ],\n      [\n        \"trug\",\n        -12.431719779968262\n      ],\n      [\n        \"figuring\",\n        -12.431784629821777\n      ],\n      [\n        \"▁competitor\",\n        -12.431807518005371\n      ],\n      [\n        \"▁humid\",\n        -12.431889533996582\n      ],\n      [\n        \"▁Lawyer\",\n        -12.43189811706543\n      ],\n      [\n        \"Added\",\n        -12.43205451965332\n      ],\n      [\n        \"▁salva\",\n        -12.432056427001953\n      ],\n      [\n        \"▁drainage\",\n        -12.4321870803833\n      ],\n      [\n        \"Featuring\",\n        -12.432220458984375\n      ],\n      [\n        \"▁Pel\",\n        -12.43234634399414\n      ],\n      [\n        \"▁acasa\",\n        -12.432611465454102\n      ],\n      [\n        \"▁expectation\",\n        -12.43265438079834\n      ],\n      [\n        \"gibt\",\n        -12.432663917541504\n      ],\n      [\n        \"▁marginal\",\n        -12.432831764221191\n      ],\n      [\n        \"ceni\",\n        -12.433028221130371\n      ],\n      [\n        \"▁européen\",\n        -12.433065414428711\n      ],\n      [\n        \"clav\",\n        -12.433090209960938\n      ],\n      [\n        \"▁Shot\",\n        -12.433167457580566\n      ],\n      [\n        \"commun\",\n        -12.43322467803955\n      ],\n      [\n        \"▁Calendar\",\n        -12.433247566223145\n      ],\n      [\n        \"▁trek\",\n        -12.433348655700684\n      ],\n      [\n        \"rechtliche\",\n        -12.433406829833984\n      ],\n      [\n        \"▁Perry\",\n        -12.43342399597168\n      ],\n      [\n        \"▁surge\",\n        -12.433484077453613\n      ],\n      [\n        \"geschäft\",\n        -12.433504104614258\n      ],\n      [\n        \"paced\",\n        -12.433793067932129\n      ],\n      [\n        \"depend\",\n        -12.433871269226074\n      ],\n      [\n        \"▁Sache\",\n        -12.433947563171387\n      ],\n      [\n        \"▁Example\",\n        -12.433998107910156\n      ],\n      [\n        \"▁lider\",\n        -12.434118270874023\n      ],\n      [\n        \"▁nochmal\",\n        -12.434240341186523\n      ],\n      [\n        \"▁Present\",\n        -12.434243202209473\n      ],\n      [\n        \"KW\",\n        -12.434335708618164\n      ],\n      [\n        \"prompted\",\n        -12.434350967407227\n      ],\n      [\n        \"logique\",\n        -12.434444427490234\n      ],\n      [\n        \"Université\",\n        -12.434466361999512\n      ],\n      [\n        \"lith\",\n        -12.434489250183105\n      ],\n      [\n        \"▁Gefahr\",\n        -12.434579849243164\n      ],\n      [\n        \"▁Acid\",\n        -12.434625625610352\n      ],\n      [\n        \"objets\",\n        -12.434791564941406\n      ],\n      [\n        \"▁societies\",\n        -12.434791564941406\n      ],\n      [\n        \"▁distraction\",\n        -12.434816360473633\n      ],\n      [\n        \"▁puissance\",\n        -12.434934616088867\n      ],\n      [\n        \"▁alleviat\",\n        -12.435026168823242\n      ],\n      [\n        \"▁Capitol\",\n        -12.435050010681152\n      ],\n      [\n        \"▁Heim\",\n        -12.435129165649414\n      ],\n      [\n        \"judicial\",\n        -12.435230255126953\n      ],\n      [\n        \"▁nowadays\",\n        -12.435309410095215\n      ],\n      [\n        \"▁Hammer\",\n        -12.435317039489746\n      ],\n      [\n        \"▁metallic\",\n        -12.435327529907227\n      ],\n      [\n        \"▁distr\",\n        -12.435388565063477\n      ],\n      [\n        \"▁dispos\",\n        -12.435397148132324\n      ],\n      [\n        \"profile\",\n        -12.435408592224121\n      ],\n      [\n        \"▁Nicolas\",\n        -12.435602188110352\n      ],\n      [\n        \"▁presa\",\n        -12.435760498046875\n      ],\n      [\n        \"augh\",\n        -12.43578052520752\n      ],\n      [\n        \"schuss\",\n        -12.435787200927734\n      ],\n      [\n        \"▁Diana\",\n        -12.436062812805176\n      ],\n      [\n        \"4-5\",\n        -12.436097145080566\n      ],\n      [\n        \"▁Chapel\",\n        -12.43612003326416\n      ],\n      [\n        \"▁zahar\",\n        -12.436150550842285\n      ],\n      [\n        \"âmb\",\n        -12.4362154006958\n      ],\n      [\n        \"▁Tarif\",\n        -12.436264991760254\n      ],\n      [\n        \"▁devastating\",\n        -12.436339378356934\n      ],\n      [\n        \"6:00\",\n        -12.4364013671875\n      ],\n      [\n        \"▁100,000\",\n        -12.43645191192627\n      ],\n      [\n        \"NIC\",\n        -12.436580657958984\n      ],\n      [\n        \"▁Lucas\",\n        -12.436612129211426\n      ],\n      [\n        \"▁bequem\",\n        -12.436662673950195\n      ],\n      [\n        \"▁Motion\",\n        -12.436698913574219\n      ],\n      [\n        \"7,000\",\n        -12.436701774597168\n      ],\n      [\n        \"▁malware\",\n        -12.436708450317383\n      ],\n      [\n        \"▁avenue\",\n        -12.436723709106445\n      ],\n      [\n        \"▁manger\",\n        -12.436747550964355\n      ],\n      [\n        \"▁Queensland\",\n        -12.436857223510742\n      ],\n      [\n        \"▁Papier\",\n        -12.436861991882324\n      ],\n      [\n        \"▁Increase\",\n        -12.436880111694336\n      ],\n      [\n        \"▁implies\",\n        -12.436954498291016\n      ],\n      [\n        \"▁äußer\",\n        -12.43697452545166\n      ],\n      [\n        \"▁Meine\",\n        -12.436980247497559\n      ],\n      [\n        \"Reuters\",\n        -12.437155723571777\n      ],\n      [\n        \"▁Belt\",\n        -12.437232971191406\n      ],\n      [\n        \"Educat\",\n        -12.437251091003418\n      ],\n      [\n        \"▁Aktion\",\n        -12.437355041503906\n      ],\n      [\n        \"schläge\",\n        -12.437372207641602\n      ],\n      [\n        \"▁înregistrat\",\n        -12.437426567077637\n      ],\n      [\n        \"▁Ortho\",\n        -12.43756103515625\n      ],\n      [\n        \"▁bulbs\",\n        -12.437761306762695\n      ],\n      [\n        \"kap\",\n        -12.437793731689453\n      ],\n      [\n        \"▁peinture\",\n        -12.437901496887207\n      ],\n      [\n        \"▁Lounge\",\n        -12.437907218933105\n      ],\n      [\n        \"▁Tampa\",\n        -12.438008308410645\n      ],\n      [\n        \"ifiziert\",\n        -12.438100814819336\n      ],\n      [\n        \"kinder\",\n        -12.438172340393066\n      ],\n      [\n        \"▁comparativ\",\n        -12.438281059265137\n      ],\n      [\n        \"häuser\",\n        -12.438323974609375\n      ],\n      [\n        \"incarn\",\n        -12.438363075256348\n      ],\n      [\n        \"▁amazon\",\n        -12.438464164733887\n      ],\n      [\n        \"▁Southeast\",\n        -12.438505172729492\n      ],\n      [\n        \"▁economical\",\n        -12.438667297363281\n      ],\n      [\n        \"▁broth\",\n        -12.438697814941406\n      ],\n      [\n        \"▁Secure\",\n        -12.438750267028809\n      ],\n      [\n        \"damals\",\n        -12.438875198364258\n      ],\n      [\n        \"▁Elementary\",\n        -12.438921928405762\n      ],\n      [\n        \"▁Wildlife\",\n        -12.438995361328125\n      ],\n      [\n        \"▁Jewel\",\n        -12.439001083374023\n      ],\n      [\n        \"▁protocols\",\n        -12.439297676086426\n      ],\n      [\n        \"▁zbor\",\n        -12.4393892288208\n      ],\n      [\n        \"▁enthusiasts\",\n        -12.439398765563965\n      ],\n      [\n        \"▁Mirror\",\n        -12.439444541931152\n      ],\n      [\n        \"▁soak\",\n        -12.439537048339844\n      ],\n      [\n        \"▁Sad\",\n        -12.439574241638184\n      ],\n      [\n        \"▁dishwasher\",\n        -12.439957618713379\n      ],\n      [\n        \"▁vollständig\",\n        -12.440186500549316\n      ],\n      [\n        \"▁Vermont\",\n        -12.440407752990723\n      ],\n      [\n        \"▁caut\",\n        -12.440449714660645\n      ],\n      [\n        \"▁fournisseur\",\n        -12.440475463867188\n      ],\n      [\n        \"▁Concrete\",\n        -12.44047737121582\n      ],\n      [\n        \"▁Instant\",\n        -12.440595626831055\n      ],\n      [\n        \"▁reveni\",\n        -12.440597534179688\n      ],\n      [\n        \"▁Surface\",\n        -12.44059944152832\n      ],\n      [\n        \"zumindest\",\n        -12.440713882446289\n      ],\n      [\n        \"▁feast\",\n        -12.440725326538086\n      ],\n      [\n        \"▁stretching\",\n        -12.440803527832031\n      ],\n      [\n        \"ERA\",\n        -12.440997123718262\n      ],\n      [\n        \"▁Scholarship\",\n        -12.441020965576172\n      ],\n      [\n        \"▁vineyard\",\n        -12.4410400390625\n      ],\n      [\n        \"▁régulièrement\",\n        -12.441083908081055\n      ],\n      [\n        \"▁patches\",\n        -12.441093444824219\n      ],\n      [\n        \"▁Gamb\",\n        -12.44113540649414\n      ],\n      [\n        \"▁Vereins\",\n        -12.441152572631836\n      ],\n      [\n        \"ège\",\n        -12.441372871398926\n      ],\n      [\n        \"▁constitutional\",\n        -12.441411018371582\n      ],\n      [\n        \"erreur\",\n        -12.441413879394531\n      ],\n      [\n        \"▁Colombia\",\n        -12.441514015197754\n      ],\n      [\n        \"UF\",\n        -12.441618919372559\n      ],\n      [\n        \"aider\",\n        -12.441665649414062\n      ],\n      [\n        \"cision\",\n        -12.44180965423584\n      ],\n      [\n        \"▁publishers\",\n        -12.441913604736328\n      ],\n      [\n        \"▁prelua\",\n        -12.441967964172363\n      ],\n      [\n        \"▁keiner\",\n        -12.441990852355957\n      ],\n      [\n        \"▁amid\",\n        -12.442020416259766\n      ],\n      [\n        \"▁quantitative\",\n        -12.442031860351562\n      ],\n      [\n        \"▁decay\",\n        -12.442058563232422\n      ],\n      [\n        \"▁distinguished\",\n        -12.4420747756958\n      ],\n      [\n        \"▁Gründe\",\n        -12.442209243774414\n      ],\n      [\n        \"▁statului\",\n        -12.442362785339355\n      ],\n      [\n        \"CAT\",\n        -12.442436218261719\n      ],\n      [\n        \"allow\",\n        -12.442481994628906\n      ],\n      [\n        \"▁mathematical\",\n        -12.442550659179688\n      ],\n      [\n        \"▁tragedy\",\n        -12.44255542755127\n      ],\n      [\n        \"▁heels\",\n        -12.442609786987305\n      ],\n      [\n        \"opia\",\n        -12.44265365600586\n      ],\n      [\n        \"▁merger\",\n        -12.4428071975708\n      ],\n      [\n        \"dispositif\",\n        -12.442813873291016\n      ],\n      [\n        \"▁pneu\",\n        -12.44283390045166\n      ],\n      [\n        \"elte\",\n        -12.443058013916016\n      ],\n      [\n        \"▁Introduction\",\n        -12.443070411682129\n      ],\n      [\n        \"▁biscuit\",\n        -12.443134307861328\n      ],\n      [\n        \"▁leftover\",\n        -12.443275451660156\n      ],\n      [\n        \"▁tester\",\n        -12.443314552307129\n      ],\n      [\n        \"▁Terre\",\n        -12.443380355834961\n      ],\n      [\n        \"▁Oui\",\n        -12.44338321685791\n      ],\n      [\n        \"▁rar\",\n        -12.443520545959473\n      ],\n      [\n        \"▁beverages\",\n        -12.443666458129883\n      ],\n      [\n        \"▁parenting\",\n        -12.443892478942871\n      ],\n      [\n        \"1-0\",\n        -12.444053649902344\n      ],\n      [\n        \"▁Barry\",\n        -12.44417667388916\n      ],\n      [\n        \"▁Lynn\",\n        -12.444209098815918\n      ],\n      [\n        \"▁Tyler\",\n        -12.444262504577637\n      ],\n      [\n        \"▁fotbal\",\n        -12.44437026977539\n      ],\n      [\n        \"dron\",\n        -12.444475173950195\n      ],\n      [\n        \"▁donor\",\n        -12.44455623626709\n      ],\n      [\n        \"▁drape\",\n        -12.444558143615723\n      ],\n      [\n        \"▁positioning\",\n        -12.444963455200195\n      ],\n      [\n        \"▁Tang\",\n        -12.445006370544434\n      ],\n      [\n        \"▁overwhelmed\",\n        -12.445161819458008\n      ],\n      [\n        \"▁perte\",\n        -12.445192337036133\n      ],\n      [\n        \"▁blender\",\n        -12.445302963256836\n      ],\n      [\n        \"TG\",\n        -12.445467948913574\n      ],\n      [\n        \"GHz\",\n        -12.445490837097168\n      ],\n      [\n        \"▁administrat\",\n        -12.445719718933105\n      ],\n      [\n        \"▁glaube\",\n        -12.445771217346191\n      ],\n      [\n        \"Char\",\n        -12.445947647094727\n      ],\n      [\n        \"impression\",\n        -12.44627571105957\n      ],\n      [\n        \"proving\",\n        -12.446297645568848\n      ],\n      [\n        \"▁Inner\",\n        -12.446434020996094\n      ],\n      [\n        \"root\",\n        -12.446501731872559\n      ],\n      [\n        \"▁Gedanken\",\n        -12.446508407592773\n      ],\n      [\n        \"▁underway\",\n        -12.446596145629883\n      ],\n      [\n        \"coat\",\n        -12.44660758972168\n      ],\n      [\n        \"▁thereof\",\n        -12.446663856506348\n      ],\n      [\n        \"rius\",\n        -12.446700096130371\n      ],\n      [\n        \"▁intermediate\",\n        -12.446751594543457\n      ],\n      [\n        \"gmail\",\n        -12.446869850158691\n      ],\n      [\n        \"114\",\n        -12.446893692016602\n      ],\n      [\n        \"▁interfere\",\n        -12.446908950805664\n      ],\n      [\n        \"▁Found\",\n        -12.446930885314941\n      ],\n      [\n        \"LF\",\n        -12.447071075439453\n      ],\n      [\n        \"▁equality\",\n        -12.447099685668945\n      ],\n      [\n        \"▁concurrent\",\n        -12.44710636138916\n      ],\n      [\n        \"akh\",\n        -12.447107315063477\n      ],\n      [\n        \"▁touching\",\n        -12.44715690612793\n      ],\n      [\n        \"▁curiosity\",\n        -12.447235107421875\n      ],\n      [\n        \"▁rendering\",\n        -12.447263717651367\n      ],\n      [\n        \"▁1964\",\n        -12.447442054748535\n      ],\n      [\n        \"sorge\",\n        -12.447468757629395\n      ],\n      [\n        \"ARC\",\n        -12.447505950927734\n      ],\n      [\n        \"▁Desktop\",\n        -12.44752311706543\n      ],\n      [\n        \"▁Tak\",\n        -12.44760799407959\n      ],\n      [\n        \"filtration\",\n        -12.447651863098145\n      ],\n      [\n        \"▁gates\",\n        -12.4478759765625\n      ],\n      [\n        \"Sehr\",\n        -12.44791316986084\n      ],\n      [\n        \"▁spatiu\",\n        -12.44798755645752\n      ],\n      [\n        \"▁Leg\",\n        -12.448103904724121\n      ],\n      [\n        \"▁aviation\",\n        -12.448277473449707\n      ],\n      [\n        \"wandel\",\n        -12.44827938079834\n      ],\n      [\n        \"▁Shar\",\n        -12.448323249816895\n      ],\n      [\n        \"▁Volks\",\n        -12.448409080505371\n      ],\n      [\n        \"maz\",\n        -12.448698997497559\n      ],\n      [\n        \"governmental\",\n        -12.44874095916748\n      ],\n      [\n        \"euros\",\n        -12.448819160461426\n      ],\n      [\n        \"avantage\",\n        -12.448823928833008\n      ],\n      [\n        \"sitzt\",\n        -12.448856353759766\n      ],\n      [\n        \"IER\",\n        -12.448920249938965\n      ],\n      [\n        \"▁Theory\",\n        -12.44894027709961\n      ],\n      [\n        \"Cependant\",\n        -12.44907283782959\n      ],\n      [\n        \"▁Teachers\",\n        -12.449080467224121\n      ],\n      [\n        \"anspruch\",\n        -12.449095726013184\n      ],\n      [\n        \"▁afecta\",\n        -12.449139595031738\n      ],\n      [\n        \"enko\",\n        -12.449193000793457\n      ],\n      [\n        \"▁breeding\",\n        -12.449198722839355\n      ],\n      [\n        \"▁Peak\",\n        -12.449457168579102\n      ],\n      [\n        \"▁găsit\",\n        -12.449516296386719\n      ],\n      [\n        \"▁măsuri\",\n        -12.4495267868042\n      ],\n      [\n        \"edia\",\n        -12.449625968933105\n      ],\n      [\n        \"biz\",\n        -12.449640274047852\n      ],\n      [\n        \"zum\",\n        -12.449776649475098\n      ],\n      [\n        \"▁schwierig\",\n        -12.449847221374512\n      ],\n      [\n        \"Sense\",\n        -12.450050354003906\n      ],\n      [\n        \"▁Jump\",\n        -12.450081825256348\n      ],\n      [\n        \"▁cocktails\",\n        -12.450108528137207\n      ],\n      [\n        \"abhängig\",\n        -12.45012378692627\n      ],\n      [\n        \"realised\",\n        -12.450140953063965\n      ],\n      [\n        \"▁programul\",\n        -12.450214385986328\n      ],\n      [\n        \"▁prévu\",\n        -12.450238227844238\n      ],\n      [\n        \"▁twitter\",\n        -12.450372695922852\n      ],\n      [\n        \"Union\",\n        -12.450400352478027\n      ],\n      [\n        \"▁Marathon\",\n        -12.45040225982666\n      ],\n      [\n        \"▁Christianity\",\n        -12.450432777404785\n      ],\n      [\n        \"▁Alberta\",\n        -12.450811386108398\n      ],\n      [\n        \"einheit\",\n        -12.45097827911377\n      ],\n      [\n        \"▁wellbeing\",\n        -12.450982093811035\n      ],\n      [\n        \"phen\",\n        -12.451166152954102\n      ],\n      [\n        \"▁Charleston\",\n        -12.451180458068848\n      ],\n      [\n        \"▁uncover\",\n        -12.451323509216309\n      ],\n      [\n        \"▁humaine\",\n        -12.451464653015137\n      ],\n      [\n        \"▁bleeding\",\n        -12.451531410217285\n      ],\n      [\n        \"▁manipul\",\n        -12.451532363891602\n      ],\n      [\n        \"▁humidity\",\n        -12.451570510864258\n      ],\n      [\n        \"▁Puis\",\n        -12.451748847961426\n      ],\n      [\n        \"▁aktuell\",\n        -12.451922416687012\n      ],\n      [\n        \"▁Nissan\",\n        -12.451943397521973\n      ],\n      [\n        \"▁Eisen\",\n        -12.45202922821045\n      ],\n      [\n        \"treiben\",\n        -12.452059745788574\n      ],\n      [\n        \"cios\",\n        -12.452073097229004\n      ],\n      [\n        \"ikh\",\n        -12.452381134033203\n      ],\n      [\n        \"acquiring\",\n        -12.452466011047363\n      ],\n      [\n        \"▁Wallpaper\",\n        -12.452488899230957\n      ],\n      [\n        \"▁rond\",\n        -12.452558517456055\n      ],\n      [\n        \"▁Doug\",\n        -12.45267391204834\n      ],\n      [\n        \"sourcing\",\n        -12.452696800231934\n      ],\n      [\n        \"▁1900\",\n        -12.452825546264648\n      ],\n      [\n        \"▁buni\",\n        -12.452913284301758\n      ],\n      [\n        \"vest\",\n        -12.452916145324707\n      ],\n      [\n        \"▁Bangladesh\",\n        -12.452990531921387\n      ],\n      [\n        \"Home\",\n        -12.453160285949707\n      ],\n      [\n        \"▁wrinkle\",\n        -12.453252792358398\n      ],\n      [\n        \"rado\",\n        -12.453290939331055\n      ],\n      [\n        \"▁Pain\",\n        -12.45334243774414\n      ],\n      [\n        \"▁herzlich\",\n        -12.453354835510254\n      ],\n      [\n        \"MRI\",\n        -12.453426361083984\n      ],\n      [\n        \"UG\",\n        -12.453631401062012\n      ],\n      [\n        \"▁Desk\",\n        -12.453679084777832\n      ],\n      [\n        \"▁remarc\",\n        -12.453718185424805\n      ],\n      [\n        \"▁sodium\",\n        -12.453857421875\n      ],\n      [\n        \"▁Jede\",\n        -12.453892707824707\n      ],\n      [\n        \"▁réelle\",\n        -12.453959465026855\n      ],\n      [\n        \"▁Polar\",\n        -12.454068183898926\n      ],\n      [\n        \"▁activists\",\n        -12.454273223876953\n      ],\n      [\n        \"lasted\",\n        -12.454300880432129\n      ],\n      [\n        \"Some\",\n        -12.45432186126709\n      ],\n      [\n        \"ISE\",\n        -12.454338073730469\n      ],\n      [\n        \"▁peine\",\n        -12.454671859741211\n      ],\n      [\n        \"▁crude\",\n        -12.454852104187012\n      ],\n      [\n        \"Maur\",\n        -12.454916954040527\n      ],\n      [\n        \"▁forcing\",\n        -12.454933166503906\n      ],\n      [\n        \"▁politici\",\n        -12.454970359802246\n      ],\n      [\n        \"▁condiții\",\n        -12.454988479614258\n      ],\n      [\n        \"▁Saving\",\n        -12.454999923706055\n      ],\n      [\n        \"▁descoperi\",\n        -12.455020904541016\n      ],\n      [\n        \"avenir\",\n        -12.455055236816406\n      ],\n      [\n        \"Akt\",\n        -12.455069541931152\n      ],\n      [\n        \"▁vocabulary\",\n        -12.45509147644043\n      ],\n      [\n        \"▁pont\",\n        -12.455168724060059\n      ],\n      [\n        \"West\",\n        -12.45518970489502\n      ],\n      [\n        \"lenk\",\n        -12.455278396606445\n      ],\n      [\n        \"▁Verbraucher\",\n        -12.455367088317871\n      ],\n      [\n        \"affects\",\n        -12.455448150634766\n      ],\n      [\n        \"▁Flower\",\n        -12.455543518066406\n      ],\n      [\n        \"▁Nebraska\",\n        -12.455617904663086\n      ],\n      [\n        \"▁assortment\",\n        -12.455618858337402\n      ],\n      [\n        \"hock\",\n        -12.455619812011719\n      ],\n      [\n        \"▁discounted\",\n        -12.455803871154785\n      ],\n      [\n        \"▁Sensor\",\n        -12.455840110778809\n      ],\n      [\n        \"Lie\",\n        -12.45588207244873\n      ],\n      [\n        \"▁Volkswagen\",\n        -12.455887794494629\n      ],\n      [\n        \"isseur\",\n        -12.455888748168945\n      ],\n      [\n        \"indice\",\n        -12.455936431884766\n      ],\n      [\n        \"▁scanner\",\n        -12.455986022949219\n      ],\n      [\n        \"fashioned\",\n        -12.456040382385254\n      ],\n      [\n        \"▁postal\",\n        -12.456141471862793\n      ],\n      [\n        \"ouvrir\",\n        -12.45615291595459\n      ],\n      [\n        \"▁seminars\",\n        -12.45622444152832\n      ],\n      [\n        \"ioase\",\n        -12.456232070922852\n      ],\n      [\n        \"▁Stanley\",\n        -12.456260681152344\n      ],\n      [\n        \"Various\",\n        -12.456335067749023\n      ],\n      [\n        \"essentiel\",\n        -12.45650577545166\n      ],\n      [\n        \"▁administered\",\n        -12.456693649291992\n      ],\n      [\n        \"▁concession\",\n        -12.456748008728027\n      ],\n      [\n        \"▁mould\",\n        -12.456789016723633\n      ],\n      [\n        \"▁strongest\",\n        -12.456826210021973\n      ],\n      [\n        \"Erlebnis\",\n        -12.456933975219727\n      ],\n      [\n        \"▁ehemalige\",\n        -12.456933975219727\n      ],\n      [\n        \"▁Tale\",\n        -12.457234382629395\n      ],\n      [\n        \"▁Buyer\",\n        -12.457353591918945\n      ],\n      [\n        \"ück\",\n        -12.457578659057617\n      ],\n      [\n        \"▁Kommentar\",\n        -12.457720756530762\n      ],\n      [\n        \"▁Schrift\",\n        -12.457756996154785\n      ],\n      [\n        \"Design\",\n        -12.457792282104492\n      ],\n      [\n        \"▁stirring\",\n        -12.457937240600586\n      ],\n      [\n        \"▁towels\",\n        -12.457987785339355\n      ],\n      [\n        \"▁$30\",\n        -12.458101272583008\n      ],\n      [\n        \"sprache\",\n        -12.458279609680176\n      ],\n      [\n        \"▁Regierung\",\n        -12.458346366882324\n      ],\n      [\n        \"▁nachhaltig\",\n        -12.458406448364258\n      ],\n      [\n        \"▁électronique\",\n        -12.458515167236328\n      ],\n      [\n        \"▁Andrei\",\n        -12.458587646484375\n      ],\n      [\n        \"because\",\n        -12.458647727966309\n      ],\n      [\n        \"informatique\",\n        -12.458650588989258\n      ],\n      [\n        \"IGHT\",\n        -12.4586820602417\n      ],\n      [\n        \"stepping\",\n        -12.4586820602417\n      ],\n      [\n        \"▁gris\",\n        -12.458748817443848\n      ],\n      [\n        \"vious\",\n        -12.458773612976074\n      ],\n      [\n        \"▁upside\",\n        -12.4591064453125\n      ],\n      [\n        \"▁Examples\",\n        -12.459108352661133\n      ],\n      [\n        \"IU\",\n        -12.459110260009766\n      ],\n      [\n        \"▁princess\",\n        -12.459111213684082\n      ],\n      [\n        \"spielen\",\n        -12.45921516418457\n      ],\n      [\n        \"legung\",\n        -12.45950984954834\n      ],\n      [\n        \"▁reflecting\",\n        -12.4597806930542\n      ],\n      [\n        \"▁Processing\",\n        -12.459939002990723\n      ],\n      [\n        \"▁jungle\",\n        -12.460033416748047\n      ],\n      [\n        \"▁insects\",\n        -12.46006965637207\n      ],\n      [\n        \"▁Sibiu\",\n        -12.460220336914062\n      ],\n      [\n        \"160\",\n        -12.460259437561035\n      ],\n      [\n        \"▁interessante\",\n        -12.460267066955566\n      ],\n      [\n        \"▁multimedia\",\n        -12.460455894470215\n      ],\n      [\n        \"essel\",\n        -12.46049690246582\n      ],\n      [\n        \"/18\",\n        -12.460647583007812\n      ],\n      [\n        \"nière\",\n        -12.460683822631836\n      ],\n      [\n        \"ministru\",\n        -12.46072006225586\n      ],\n      [\n        \"▁implants\",\n        -12.460826873779297\n      ],\n      [\n        \"▁Settings\",\n        -12.461360931396484\n      ],\n      [\n        \"▁invaluable\",\n        -12.461432456970215\n      ],\n      [\n        \"stains\",\n        -12.461448669433594\n      ],\n      [\n        \"onym\",\n        -12.461518287658691\n      ],\n      [\n        \"▁searched\",\n        -12.461570739746094\n      ],\n      [\n        \"▁disappointment\",\n        -12.461628913879395\n      ],\n      [\n        \"▁Iranian\",\n        -12.461630821228027\n      ],\n      [\n        \"▁questionnaire\",\n        -12.461630821228027\n      ],\n      [\n        \"Founder\",\n        -12.46178913116455\n      ],\n      [\n        \"▁Bericht\",\n        -12.461792945861816\n      ],\n      [\n        \"▁youngest\",\n        -12.461896896362305\n      ],\n      [\n        \"▁Automatic\",\n        -12.461956024169922\n      ],\n      [\n        \"▁plecat\",\n        -12.46203327178955\n      ],\n      [\n        \"geber\",\n        -12.462119102478027\n      ],\n      [\n        \"soweit\",\n        -12.462124824523926\n      ],\n      [\n        \"▁unfold\",\n        -12.462236404418945\n      ],\n      [\n        \"▁befinden\",\n        -12.462274551391602\n      ],\n      [\n        \"▁susţin\",\n        -12.462637901306152\n      ],\n      [\n        \"▁Mack\",\n        -12.462675094604492\n      ],\n      [\n        \"▁dificil\",\n        -12.462757110595703\n      ],\n      [\n        \"enseigne\",\n        -12.463038444519043\n      ],\n      [\n        \"▁vitamine\",\n        -12.463047981262207\n      ],\n      [\n        \"▁Memory\",\n        -12.463092803955078\n      ],\n      [\n        \"ripping\",\n        -12.463129043579102\n      ],\n      [\n        \"drin\",\n        -12.463146209716797\n      ],\n      [\n        \"3.2\",\n        -12.463278770446777\n      ],\n      [\n        \"▁verstehen\",\n        -12.463287353515625\n      ],\n      [\n        \"▁scaun\",\n        -12.46341323852539\n      ],\n      [\n        \"▁procédure\",\n        -12.46380615234375\n      ],\n      [\n        \"▁molecules\",\n        -12.463911056518555\n      ],\n      [\n        \"▁Anzahl\",\n        -12.46391487121582\n      ],\n      [\n        \"▁yogurt\",\n        -12.464071273803711\n      ],\n      [\n        \"▁Dominic\",\n        -12.464113235473633\n      ],\n      [\n        \"▁shocked\",\n        -12.464156150817871\n      ],\n      [\n        \"▁zilei\",\n        -12.464269638061523\n      ],\n      [\n        \"▁Heiz\",\n        -12.464412689208984\n      ],\n      [\n        \"▁Educational\",\n        -12.464571952819824\n      ],\n      [\n        \"BN\",\n        -12.464577674865723\n      ],\n      [\n        \"analyzing\",\n        -12.464601516723633\n      ],\n      [\n        \"hair\",\n        -12.464676856994629\n      ],\n      [\n        \"spiegel\",\n        -12.464871406555176\n      ],\n      [\n        \"▁illusion\",\n        -12.464889526367188\n      ],\n      [\n        \"BG\",\n        -12.46505355834961\n      ],\n      [\n        \"deductible\",\n        -12.46513557434082\n      ],\n      [\n        \"▁adj\",\n        -12.4651460647583\n      ],\n      [\n        \"▁accessory\",\n        -12.465166091918945\n      ],\n      [\n        \"▁Draw\",\n        -12.465167999267578\n      ],\n      [\n        \"▁airlines\",\n        -12.46518611907959\n      ],\n      [\n        \"▁satisfai\",\n        -12.46536636352539\n      ],\n      [\n        \"▁architects\",\n        -12.465447425842285\n      ],\n      [\n        \"istische\",\n        -12.465508460998535\n      ],\n      [\n        \"▁Healthy\",\n        -12.465539932250977\n      ],\n      [\n        \"großer\",\n        -12.465669631958008\n      ],\n      [\n        \"▁comunicare\",\n        -12.465764999389648\n      ],\n      [\n        \"▁Meyer\",\n        -12.46577262878418\n      ],\n      [\n        \"▁reproduction\",\n        -12.465882301330566\n      ],\n      [\n        \"▁Manufacturing\",\n        -12.465929985046387\n      ],\n      [\n        \"immobilier\",\n        -12.465930938720703\n      ],\n      [\n        \"▁Unterschied\",\n        -12.465958595275879\n      ],\n      [\n        \"▁cumpara\",\n        -12.466029167175293\n      ],\n      [\n        \"▁duplicate\",\n        -12.466094017028809\n      ],\n      [\n        \"▁(16\",\n        -12.466096878051758\n      ],\n      [\n        \"▁detector\",\n        -12.466279983520508\n      ],\n      [\n        \"▁observat\",\n        -12.466387748718262\n      ],\n      [\n        \"▁1965\",\n        -12.466682434082031\n      ],\n      [\n        \"▁Fantasy\",\n        -12.466728210449219\n      ],\n      [\n        \"▁brauchen\",\n        -12.466728210449219\n      ],\n      [\n        \"▁Participants\",\n        -12.466780662536621\n      ],\n      [\n        \"▁décide\",\n        -12.466817855834961\n      ],\n      [\n        \"▁kicke\",\n        -12.466819763183594\n      ],\n      [\n        \"▁SSL\",\n        -12.466885566711426\n      ],\n      [\n        \"360\",\n        -12.466989517211914\n      ],\n      [\n        \"Anim\",\n        -12.467019081115723\n      ],\n      [\n        \"▁cupcake\",\n        -12.467031478881836\n      ],\n      [\n        \"▁Lamb\",\n        -12.467107772827148\n      ],\n      [\n        \"▁Sä\",\n        -12.467155456542969\n      ],\n      [\n        \"ntă\",\n        -12.46738052368164\n      ],\n      [\n        \"▁Pig\",\n        -12.467421531677246\n      ],\n      [\n        \"1,000\",\n        -12.467677116394043\n      ],\n      [\n        \"nhof\",\n        -12.467782020568848\n      ],\n      [\n        \"▁discret\",\n        -12.467947959899902\n      ],\n      [\n        \"▁deloc\",\n        -12.467991828918457\n      ],\n      [\n        \"▁Bücher\",\n        -12.467999458312988\n      ],\n      [\n        \"chor\",\n        -12.468042373657227\n      ],\n      [\n        \"course\",\n        -12.468070030212402\n      ],\n      [\n        \"▁cough\",\n        -12.468076705932617\n      ],\n      [\n        \"▁erstellt\",\n        -12.468087196350098\n      ],\n      [\n        \"▁Than\",\n        -12.468097686767578\n      ],\n      [\n        \"stätte\",\n        -12.46812915802002\n      ],\n      [\n        \"▁exceptionally\",\n        -12.468162536621094\n      ],\n      [\n        \"▁semnal\",\n        -12.468186378479004\n      ],\n      [\n        \"▁Interessen\",\n        -12.468329429626465\n      ],\n      [\n        \"ле\",\n        -12.468356132507324\n      ],\n      [\n        \"xx\",\n        -12.468402862548828\n      ],\n      [\n        \"▁Veterans\",\n        -12.468422889709473\n      ],\n      [\n        \"▁Kreuz\",\n        -12.468683242797852\n      ],\n      [\n        \"▁Nachricht\",\n        -12.468701362609863\n      ],\n      [\n        \"treated\",\n        -12.468894004821777\n      ],\n      [\n        \"▁tide\",\n        -12.469230651855469\n      ],\n      [\n        \"▁nonetheless\",\n        -12.469390869140625\n      ],\n      [\n        \"▁Subject\",\n        -12.469439506530762\n      ],\n      [\n        \"▁Stau\",\n        -12.469440460205078\n      ],\n      [\n        \"▁stickers\",\n        -12.469463348388672\n      ],\n      [\n        \"Alp\",\n        -12.46950912475586\n      ],\n      [\n        \"▁flagship\",\n        -12.469541549682617\n      ],\n      [\n        \"▁trimite\",\n        -12.469619750976562\n      ],\n      [\n        \"▁polyester\",\n        -12.469664573669434\n      ],\n      [\n        \"▁locui\",\n        -12.469671249389648\n      ],\n      [\n        \"▁chili\",\n        -12.46968936920166\n      ],\n      [\n        \"▁Browser\",\n        -12.469808578491211\n      ],\n      [\n        \"sieg\",\n        -12.469809532165527\n      ],\n      [\n        \"▁Arabic\",\n        -12.469876289367676\n      ],\n      [\n        \"blich\",\n        -12.47001838684082\n      ],\n      [\n        \"▁wunderbar\",\n        -12.470090866088867\n      ],\n      [\n        \"▁furnishings\",\n        -12.470210075378418\n      ],\n      [\n        \"rtie\",\n        -12.470243453979492\n      ],\n      [\n        \"8.5\",\n        -12.470742225646973\n      ],\n      [\n        \"▁Sponsor\",\n        -12.471016883850098\n      ],\n      [\n        \"▁glitter\",\n        -12.471280097961426\n      ],\n      [\n        \"▁piaț\",\n        -12.471402168273926\n      ],\n      [\n        \"▁interviewed\",\n        -12.471519470214844\n      ],\n      [\n        \"▁Statistics\",\n        -12.471529006958008\n      ],\n      [\n        \"▁cerc\",\n        -12.47154712677002\n      ],\n      [\n        \"augmentation\",\n        -12.47155475616455\n      ],\n      [\n        \"▁Navi\",\n        -12.471558570861816\n      ],\n      [\n        \"▁Begriff\",\n        -12.47156047821045\n      ],\n      [\n        \"▁știu\",\n        -12.471596717834473\n      ],\n      [\n        \"▁unabhängig\",\n        -12.471778869628906\n      ],\n      [\n        \"▁könnten\",\n        -12.471978187561035\n      ],\n      [\n        \"▁travaille\",\n        -12.472000122070312\n      ],\n      [\n        \"▁companie\",\n        -12.472027778625488\n      ],\n      [\n        \"▁Scientific\",\n        -12.472061157226562\n      ],\n      [\n        \"▁Outlook\",\n        -12.472091674804688\n      ],\n      [\n        \"▁fairy\",\n        -12.472158432006836\n      ],\n      [\n        \"zam\",\n        -12.472282409667969\n      ],\n      [\n        \"bak\",\n        -12.472448348999023\n      ],\n      [\n        \"▁Traffic\",\n        -12.472596168518066\n      ],\n      [\n        \"gerät\",\n        -12.472671508789062\n      ],\n      [\n        \"▁freezing\",\n        -12.472701072692871\n      ],\n      [\n        \"▁broadband\",\n        -12.4727201461792\n      ],\n      [\n        \"110\",\n        -12.47279167175293\n      ],\n      [\n        \"▁revenu\",\n        -12.472887992858887\n      ],\n      [\n        \"listed\",\n        -12.472900390625\n      ],\n      [\n        \"▁Rico\",\n        -12.472941398620605\n      ],\n      [\n        \"Laure\",\n        -12.472990036010742\n      ],\n      [\n        \"ATA\",\n        -12.473112106323242\n      ],\n      [\n        \"▁participer\",\n        -12.47313117980957\n      ],\n      [\n        \"▁sponsorship\",\n        -12.473235130310059\n      ],\n      [\n        \"▁distress\",\n        -12.473286628723145\n      ],\n      [\n        \"▁Brisbane\",\n        -12.47339916229248\n      ],\n      [\n        \"schönen\",\n        -12.473437309265137\n      ],\n      [\n        \"▁fizice\",\n        -12.473465919494629\n      ],\n      [\n        \"▁Political\",\n        -12.47362232208252\n      ],\n      [\n        \"uhr\",\n        -12.473657608032227\n      ],\n      [\n        \"▁procedura\",\n        -12.473713874816895\n      ],\n      [\n        \"▁hervor\",\n        -12.473770141601562\n      ],\n      [\n        \"melted\",\n        -12.473776817321777\n      ],\n      [\n        \"▁Emp\",\n        -12.47384262084961\n      ],\n      [\n        \"▁Ernährung\",\n        -12.4739351272583\n      ],\n      [\n        \"▁Pendant\",\n        -12.473944664001465\n      ],\n      [\n        \"▁recipients\",\n        -12.474047660827637\n      ],\n      [\n        \"Claude\",\n        -12.474133491516113\n      ],\n      [\n        \"▁regimen\",\n        -12.47415828704834\n      ],\n      [\n        \"expo\",\n        -12.474346160888672\n      ],\n      [\n        \"adevăr\",\n        -12.47437858581543\n      ],\n      [\n        \"▁critically\",\n        -12.474440574645996\n      ],\n      [\n        \"▁grabbe\",\n        -12.474468231201172\n      ],\n      [\n        \"▁Kann\",\n        -12.474474906921387\n      ],\n      [\n        \"▁directeur\",\n        -12.474613189697266\n      ],\n      [\n        \"gator\",\n        -12.474908828735352\n      ],\n      [\n        \"problem\",\n        -12.474910736083984\n      ],\n      [\n        \"scribe\",\n        -12.474913597106934\n      ],\n      [\n        \"▁exig\",\n        -12.474920272827148\n      ],\n      [\n        \"Tri\",\n        -12.474969863891602\n      ],\n      [\n        \"▁aqua\",\n        -12.475631713867188\n      ],\n      [\n        \"appréci\",\n        -12.47569465637207\n      ],\n      [\n        \"▁viaţă\",\n        -12.47571849822998\n      ],\n      [\n        \"▁dominate\",\n        -12.475865364074707\n      ],\n      [\n        \"disc\",\n        -12.475889205932617\n      ],\n      [\n        \"▁conseiller\",\n        -12.47603988647461\n      ],\n      [\n        \"▁shuttle\",\n        -12.476180076599121\n      ],\n      [\n        \"▁Status\",\n        -12.47623062133789\n      ],\n      [\n        \"▁ausreichend\",\n        -12.476371765136719\n      ],\n      [\n        \"▁spät\",\n        -12.476411819458008\n      ],\n      [\n        \"▁remainder\",\n        -12.476417541503906\n      ],\n      [\n        \"wett\",\n        -12.476430892944336\n      ],\n      [\n        \"schlossen\",\n        -12.476491928100586\n      ],\n      [\n        \"PAC\",\n        -12.476505279541016\n      ],\n      [\n        \"▁suprafata\",\n        -12.476617813110352\n      ],\n      [\n        \"5.000\",\n        -12.476673126220703\n      ],\n      [\n        \"supplying\",\n        -12.47673225402832\n      ],\n      [\n        \"▁uniquely\",\n        -12.476905822753906\n      ],\n      [\n        \"▁retard\",\n        -12.476929664611816\n      ],\n      [\n        \"▁Bang\",\n        -12.477006912231445\n      ],\n      [\n        \"ieuse\",\n        -12.477087020874023\n      ],\n      [\n        \"▁Ted\",\n        -12.477248191833496\n      ],\n      [\n        \"▁ermöglichen\",\n        -12.47732925415039\n      ],\n      [\n        \"▁builders\",\n        -12.477380752563477\n      ],\n      [\n        \"▁proximité\",\n        -12.477423667907715\n      ],\n      [\n        \"▁unforgettable\",\n        -12.477423667907715\n      ],\n      [\n        \"256\",\n        -12.477446556091309\n      ],\n      [\n        \"fähigkeit\",\n        -12.477550506591797\n      ],\n      [\n        \"▁procurement\",\n        -12.477561950683594\n      ],\n      [\n        \"▁Gewicht\",\n        -12.477693557739258\n      ],\n      [\n        \"▁potentiel\",\n        -12.47778606414795\n      ],\n      [\n        \"▁topping\",\n        -12.478300094604492\n      ],\n      [\n        \"▁canada\",\n        -12.478304862976074\n      ],\n      [\n        \"▁Destin\",\n        -12.478355407714844\n      ],\n      [\n        \"▁Knowing\",\n        -12.478411674499512\n      ],\n      [\n        \"▁retained\",\n        -12.478426933288574\n      ],\n      [\n        \"▁zinc\",\n        -12.478470802307129\n      ],\n      [\n        \"▁worrying\",\n        -12.478655815124512\n      ],\n      [\n        \"faţa\",\n        -12.478676795959473\n      ],\n      [\n        \"▁initi\",\n        -12.478837966918945\n      ],\n      [\n        \"ORI\",\n        -12.4788818359375\n      ],\n      [\n        \"▁refuz\",\n        -12.478921890258789\n      ],\n      [\n        \"bruch\",\n        -12.479202270507812\n      ],\n      [\n        \"▁impun\",\n        -12.479233741760254\n      ],\n      [\n        \"▁persoană\",\n        -12.479308128356934\n      ],\n      [\n        \"EAR\",\n        -12.479347229003906\n      ],\n      [\n        \"bedarf\",\n        -12.479368209838867\n      ],\n      [\n        \"▁Gebiet\",\n        -12.47940731048584\n      ],\n      [\n        \"▁Roof\",\n        -12.479436874389648\n      ],\n      [\n        \"▁negligence\",\n        -12.47957706451416\n      ],\n      [\n        \"security\",\n        -12.479618072509766\n      ],\n      [\n        \"▁accesorii\",\n        -12.479641914367676\n      ],\n      [\n        \"▁unclear\",\n        -12.479667663574219\n      ],\n      [\n        \"▁securitate\",\n        -12.479848861694336\n      ],\n      [\n        \"▁spotlight\",\n        -12.479896545410156\n      ],\n      [\n        \"▁speziell\",\n        -12.479923248291016\n      ],\n      [\n        \"▁mentally\",\n        -12.479942321777344\n      ],\n      [\n        \"▁preservation\",\n        -12.48011589050293\n      ],\n      [\n        \"▁Promotion\",\n        -12.480156898498535\n      ],\n      [\n        \"partnered\",\n        -12.480274200439453\n      ],\n      [\n        \"▁Hinter\",\n        -12.48031997680664\n      ],\n      [\n        \"▁punishment\",\n        -12.480359077453613\n      ],\n      [\n        \"▁grease\",\n        -12.480713844299316\n      ],\n      [\n        \"▁NW\",\n        -12.480714797973633\n      ],\n      [\n        \"▁curse\",\n        -12.480897903442383\n      ],\n      [\n        \"ckle\",\n        -12.48101806640625\n      ],\n      [\n        \"▁Hire\",\n        -12.481043815612793\n      ],\n      [\n        \"▁Whole\",\n        -12.481088638305664\n      ],\n      [\n        \"▁basse\",\n        -12.481289863586426\n      ],\n      [\n        \"▁DNS\",\n        -12.481427192687988\n      ],\n      [\n        \"flamm\",\n        -12.481560707092285\n      ],\n      [\n        \"▁scoop\",\n        -12.481574058532715\n      ],\n      [\n        \"Norm\",\n        -12.481663703918457\n      ],\n      [\n        \"▁Surgery\",\n        -12.481735229492188\n      ],\n      [\n        \"▁widget\",\n        -12.481741905212402\n      ],\n      [\n        \"connected\",\n        -12.481863021850586\n      ],\n      [\n        \"autorité\",\n        -12.481961250305176\n      ],\n      [\n        \"▁utilis\",\n        -12.482096672058105\n      ],\n      [\n        \"▁formă\",\n        -12.482185363769531\n      ],\n      [\n        \"▁clearing\",\n        -12.482307434082031\n      ],\n      [\n        \"▁jumătate\",\n        -12.482815742492676\n      ],\n      [\n        \"größe\",\n        -12.482831954956055\n      ],\n      [\n        \"▁Tief\",\n        -12.482852935791016\n      ],\n      [\n        \"épi\",\n        -12.482939720153809\n      ],\n      [\n        \"zunehmen\",\n        -12.483174324035645\n      ],\n      [\n        \"▁touchdown\",\n        -12.48318099975586\n      ],\n      [\n        \"▁scholarships\",\n        -12.483236312866211\n      ],\n      [\n        \"▁dementia\",\n        -12.483319282531738\n      ],\n      [\n        \"▁Jeder\",\n        -12.48333740234375\n      ],\n      [\n        \"▁nightmare\",\n        -12.483379364013672\n      ],\n      [\n        \"▁Raw\",\n        -12.48342514038086\n      ],\n      [\n        \"absorbed\",\n        -12.483468055725098\n      ],\n      [\n        \"lohnt\",\n        -12.483484268188477\n      ],\n      [\n        \"quent\",\n        -12.483580589294434\n      ],\n      [\n        \"interest\",\n        -12.483626365661621\n      ],\n      [\n        \"OSS\",\n        -12.483649253845215\n      ],\n      [\n        \"▁Leaf\",\n        -12.483667373657227\n      ],\n      [\n        \"▁timeless\",\n        -12.48381519317627\n      ],\n      [\n        \"DY\",\n        -12.483865737915039\n      ],\n      [\n        \"▁Remote\",\n        -12.483907699584961\n      ],\n      [\n        \"chner\",\n        -12.483938217163086\n      ],\n      [\n        \"▁Pam\",\n        -12.484014511108398\n      ],\n      [\n        \"urban\",\n        -12.484060287475586\n      ],\n      [\n        \"во\",\n        -12.484146118164062\n      ],\n      [\n        \"▁Kunde\",\n        -12.484166145324707\n      ],\n      [\n        \"▁Laptop\",\n        -12.484169006347656\n      ],\n      [\n        \"finder\",\n        -12.484336853027344\n      ],\n      [\n        \"▁Pole\",\n        -12.484567642211914\n      ],\n      [\n        \"2.8\",\n        -12.484588623046875\n      ],\n      [\n        \"finished\",\n        -12.484670639038086\n      ],\n      [\n        \"▁prophet\",\n        -12.484697341918945\n      ],\n      [\n        \"mailed\",\n        -12.484758377075195\n      ],\n      [\n        \"2-0\",\n        -12.4849214553833\n      ],\n      [\n        \"▁disciples\",\n        -12.484949111938477\n      ],\n      [\n        \"▁intriguing\",\n        -12.484980583190918\n      ],\n      [\n        \"IRA\",\n        -12.485033988952637\n      ],\n      [\n        \"petit\",\n        -12.485077857971191\n      ],\n      [\n        \"▁Membership\",\n        -12.485097885131836\n      ],\n      [\n        \"▁provincial\",\n        -12.485177040100098\n      ],\n      [\n        \"▁Prüfung\",\n        -12.485292434692383\n      ],\n      [\n        \"-50\",\n        -12.485450744628906\n      ],\n      [\n        \"▁cryptocurrency\",\n        -12.485522270202637\n      ],\n      [\n        \"▁journalism\",\n        -12.485536575317383\n      ],\n      [\n        \"▁Downtown\",\n        -12.485593795776367\n      ],\n      [\n        \"inserted\",\n        -12.485655784606934\n      ],\n      [\n        \"▁Direction\",\n        -12.485718727111816\n      ],\n      [\n        \"lipid\",\n        -12.485732078552246\n      ],\n      [\n        \"▁Sebastian\",\n        -12.485793113708496\n      ],\n      [\n        \"fordert\",\n        -12.48591136932373\n      ],\n      [\n        \"Originally\",\n        -12.485989570617676\n      ],\n      [\n        \"tipp\",\n        -12.486048698425293\n      ],\n      [\n        \"verantwortlich\",\n        -12.486064910888672\n      ],\n      [\n        \"▁wheelchair\",\n        -12.486085891723633\n      ],\n      [\n        \"▁structura\",\n        -12.48609733581543\n      ],\n      [\n        \"▁Danny\",\n        -12.486138343811035\n      ],\n      [\n        \"999\",\n        -12.486284255981445\n      ],\n      [\n        \"▁Schiff\",\n        -12.486380577087402\n      ],\n      [\n        \"formally\",\n        -12.486408233642578\n      ],\n      [\n        \"focused\",\n        -12.486428260803223\n      ],\n      [\n        \"▁Vater\",\n        -12.486478805541992\n      ],\n      [\n        \"▁Dear\",\n        -12.486599922180176\n      ],\n      [\n        \"▁reinforce\",\n        -12.486794471740723\n      ],\n      [\n        \"proprietar\",\n        -12.48690414428711\n      ],\n      [\n        \"▁Kyle\",\n        -12.487004280090332\n      ],\n      [\n        \"În\",\n        -12.487015724182129\n      ],\n      [\n        \"▁servir\",\n        -12.487268447875977\n      ],\n      [\n        \"length\",\n        -12.48730754852295\n      ],\n      [\n        \"▁showroom\",\n        -12.48735237121582\n      ],\n      [\n        \"reli\",\n        -12.487473487854004\n      ],\n      [\n        \"▁Brü\",\n        -12.487529754638672\n      ],\n      [\n        \"▁Schle\",\n        -12.487634658813477\n      ],\n      [\n        \"▁profond\",\n        -12.487773895263672\n      ],\n      [\n        \"▁Superior\",\n        -12.487826347351074\n      ],\n      [\n        \"▁lifted\",\n        -12.487844467163086\n      ],\n      [\n        \"highlighting\",\n        -12.487850189208984\n      ],\n      [\n        \"▁Connection\",\n        -12.48793888092041\n      ],\n      [\n        \"▁similarly\",\n        -12.487998962402344\n      ],\n      [\n        \"▁diferit\",\n        -12.488005638122559\n      ],\n      [\n        \"▁sweater\",\n        -12.488014221191406\n      ],\n      [\n        \"État\",\n        -12.48803997039795\n      ],\n      [\n        \"rooted\",\n        -12.488069534301758\n      ],\n      [\n        \"▁sleeves\",\n        -12.488236427307129\n      ],\n      [\n        \"де\",\n        -12.488264083862305\n      ],\n      [\n        \"▁Laboratory\",\n        -12.488265991210938\n      ],\n      [\n        \"ündig\",\n        -12.488719940185547\n      ],\n      [\n        \"▁Viking\",\n        -12.488741874694824\n      ],\n      [\n        \"▁Origin\",\n        -12.48878002166748\n      ],\n      [\n        \"▁vibr\",\n        -12.488812446594238\n      ],\n      [\n        \"199\",\n        -12.488974571228027\n      ],\n      [\n        \"▁yummy\",\n        -12.489001274108887\n      ],\n      [\n        \"STAR\",\n        -12.489140510559082\n      ],\n      [\n        \"▁repro\",\n        -12.489152908325195\n      ],\n      [\n        \"▁Kirchen\",\n        -12.489229202270508\n      ],\n      [\n        \"hopper\",\n        -12.48925495147705\n      ],\n      [\n        \"zza\",\n        -12.489335060119629\n      ],\n      [\n        \"▁vitesse\",\n        -12.48934555053711\n      ],\n      [\n        \"▁minimalist\",\n        -12.489412307739258\n      ],\n      [\n        \"▁Election\",\n        -12.489420890808105\n      ],\n      [\n        \"draw\",\n        -12.489501953125\n      ],\n      [\n        \"▁candles\",\n        -12.48959732055664\n      ],\n      [\n        \"▁Mund\",\n        -12.489615440368652\n      ],\n      [\n        \"urged\",\n        -12.489901542663574\n      ],\n      [\n        \"▁cânt\",\n        -12.489917755126953\n      ],\n      [\n        \"Ultimately\",\n        -12.49002742767334\n      ],\n      [\n        \"▁Lift\",\n        -12.490124702453613\n      ],\n      [\n        \"loaded\",\n        -12.490334510803223\n      ],\n      [\n        \"demand\",\n        -12.490508079528809\n      ],\n      [\n        \"▁aleg\",\n        -12.490621566772461\n      ],\n      [\n        \"▁Discovery\",\n        -12.490755081176758\n      ],\n      [\n        \"▁Vienna\",\n        -12.490960121154785\n      ],\n      [\n        \"▁Kategorie\",\n        -12.490961074829102\n      ],\n      [\n        \"▁Cotton\",\n        -12.490962028503418\n      ],\n      [\n        \"▁$200\",\n        -12.491043090820312\n      ],\n      [\n        \"▁Drei\",\n        -12.491052627563477\n      ],\n      [\n        \"▁reicht\",\n        -12.491168975830078\n      ],\n      [\n        \"speicher\",\n        -12.491231918334961\n      ],\n      [\n        \"▁Immobilien\",\n        -12.491483688354492\n      ],\n      [\n        \"gefühl\",\n        -12.491509437561035\n      ],\n      [\n        \"make\",\n        -12.491525650024414\n      ],\n      [\n        \"pell\",\n        -12.49155044555664\n      ],\n      [\n        \"▁dull\",\n        -12.491598129272461\n      ],\n      [\n        \"▁arbeitet\",\n        -12.491681098937988\n      ],\n      [\n        \"retaining\",\n        -12.491700172424316\n      ],\n      [\n        \"losen\",\n        -12.491707801818848\n      ],\n      [\n        \"match\",\n        -12.491876602172852\n      ],\n      [\n        \"-60\",\n        -12.491880416870117\n      ],\n      [\n        \"▁ecological\",\n        -12.492000579833984\n      ],\n      [\n        \"▁vend\",\n        -12.492051124572754\n      ],\n      [\n        \"▁grammar\",\n        -12.492061614990234\n      ],\n      [\n        \"▁1:1\",\n        -12.492225646972656\n      ],\n      [\n        \"grilled\",\n        -12.492279052734375\n      ],\n      [\n        \"geordnet\",\n        -12.492321014404297\n      ],\n      [\n        \"▁Pav\",\n        -12.49236011505127\n      ],\n      [\n        \"▁Depot\",\n        -12.492368698120117\n      ],\n      [\n        \"▁Walking\",\n        -12.492372512817383\n      ],\n      [\n        \"teamed\",\n        -12.492402076721191\n      ],\n      [\n        \"▁torque\",\n        -12.492537498474121\n      ],\n      [\n        \"▁Venture\",\n        -12.492659568786621\n      ],\n      [\n        \"▁beginner\",\n        -12.49269962310791\n      ],\n      [\n        \"▁Monaten\",\n        -12.492712020874023\n      ],\n      [\n        \"▁Pune\",\n        -12.493054389953613\n      ],\n      [\n        \"connect\",\n        -12.493075370788574\n      ],\n      [\n        \"▁textbook\",\n        -12.493132591247559\n      ],\n      [\n        \"▁unprecedented\",\n        -12.49314022064209\n      ],\n      [\n        \"▁implied\",\n        -12.493168830871582\n      ],\n      [\n        \"▁cubic\",\n        -12.493668556213379\n      ],\n      [\n        \"enthält\",\n        -12.493696212768555\n      ],\n      [\n        \"▁Brenn\",\n        -12.49388313293457\n      ],\n      [\n        \"▁Expect\",\n        -12.49394416809082\n      ],\n      [\n        \"▁lever\",\n        -12.4939603805542\n      ],\n      [\n        \"veux\",\n        -12.49399185180664\n      ],\n      [\n        \"▁Claire\",\n        -12.494112968444824\n      ],\n      [\n        \"Acc\",\n        -12.49432373046875\n      ],\n      [\n        \"▁Typ\",\n        -12.494478225708008\n      ],\n      [\n        \"▁smoothie\",\n        -12.494501113891602\n      ],\n      [\n        \"▁Idaho\",\n        -12.494780540466309\n      ],\n      [\n        \"▁spati\",\n        -12.494802474975586\n      ],\n      [\n        \"▁bénéficier\",\n        -12.49488353729248\n      ],\n      [\n        \"▁Kle\",\n        -12.495161056518555\n      ],\n      [\n        \"▁serviciilor\",\n        -12.495169639587402\n      ],\n      [\n        \"▁prohibit\",\n        -12.495267868041992\n      ],\n      [\n        \"EAD\",\n        -12.495417594909668\n      ],\n      [\n        \"▁Turner\",\n        -12.495418548583984\n      ],\n      [\n        \"▁elibera\",\n        -12.49543571472168\n      ],\n      [\n        \"▁payday\",\n        -12.495464324951172\n      ],\n      [\n        \"▁prolong\",\n        -12.495466232299805\n      ],\n      [\n        \"▁sued\",\n        -12.495481491088867\n      ],\n      [\n        \"▁Devil\",\n        -12.495536804199219\n      ],\n      [\n        \"▁Skills\",\n        -12.495552062988281\n      ],\n      [\n        \"▁Marcel\",\n        -12.495553970336914\n      ],\n      [\n        \"▁silhouette\",\n        -12.495601654052734\n      ],\n      [\n        \"▁preț\",\n        -12.495742797851562\n      ],\n      [\n        \"▁Gö\",\n        -12.495747566223145\n      ],\n      [\n        \"▁Creator\",\n        -12.495774269104004\n      ],\n      [\n        \"fed\",\n        -12.4959077835083\n      ],\n      [\n        \"Cap\",\n        -12.495997428894043\n      ],\n      [\n        \"▁dedicate\",\n        -12.496042251586914\n      ],\n      [\n        \"0000\",\n        -12.496124267578125\n      ],\n      [\n        \"▁VAT\",\n        -12.496259689331055\n      ],\n      [\n        \"▁Firefox\",\n        -12.496443748474121\n      ],\n      [\n        \"▁therapies\",\n        -12.496477127075195\n      ],\n      [\n        \"▁screws\",\n        -12.496662139892578\n      ],\n      [\n        \"▁Province\",\n        -12.496697425842285\n      ],\n      [\n        \"▁problematic\",\n        -12.496871948242188\n      ],\n      [\n        \"▁Vid\",\n        -12.496915817260742\n      ],\n      [\n        \"▁Lost\",\n        -12.496950149536133\n      ],\n      [\n        \"▁elegance\",\n        -12.497520446777344\n      ],\n      [\n        \"▁Elegant\",\n        -12.497525215148926\n      ],\n      [\n        \"ignant\",\n        -12.497573852539062\n      ],\n      [\n        \"▁darin\",\n        -12.497649192810059\n      ],\n      [\n        \"▁anonym\",\n        -12.497669219970703\n      ],\n      [\n        \"▁vegeta\",\n        -12.49767780303955\n      ],\n      [\n        \"incoming\",\n        -12.497762680053711\n      ],\n      [\n        \"▁pills\",\n        -12.497846603393555\n      ],\n      [\n        \"governing\",\n        -12.497893333435059\n      ],\n      [\n        \"▁Haven\",\n        -12.497920989990234\n      ],\n      [\n        \"paper\",\n        -12.497947692871094\n      ],\n      [\n        \"räume\",\n        -12.497979164123535\n      ],\n      [\n        \"paw\",\n        -12.498099327087402\n      ],\n      [\n        \"▁spelling\",\n        -12.498283386230469\n      ],\n      [\n        \"ambele\",\n        -12.498318672180176\n      ],\n      [\n        \"▁reprezentat\",\n        -12.498371124267578\n      ],\n      [\n        \"▁mâ\",\n        -12.49853515625\n      ],\n      [\n        \"wirtschaftliche\",\n        -12.498558044433594\n      ],\n      [\n        \"▁valabil\",\n        -12.498579025268555\n      ],\n      [\n        \"▁konkret\",\n        -12.498618125915527\n      ],\n      [\n        \"▁financier\",\n        -12.498619079589844\n      ],\n      [\n        \"▁irre\",\n        -12.499135971069336\n      ],\n      [\n        \"▁Silicon\",\n        -12.499171257019043\n      ],\n      [\n        \"Viv\",\n        -12.499181747436523\n      ],\n      [\n        \"▁viruses\",\n        -12.49927043914795\n      ],\n      [\n        \"▁CNN\",\n        -12.499324798583984\n      ],\n      [\n        \"▁erleben\",\n        -12.499482154846191\n      ],\n      [\n        \"gina\",\n        -12.499492645263672\n      ],\n      [\n        \"punctul\",\n        -12.49951457977295\n      ],\n      [\n        \"▁Sfânt\",\n        -12.499753952026367\n      ],\n      [\n        \"▁Manage\",\n        -12.499811172485352\n      ],\n      [\n        \"▁payable\",\n        -12.499984741210938\n      ],\n      [\n        \"▁practitioner\",\n        -12.500143051147461\n      ],\n      [\n        \"▁conférence\",\n        -12.50026798248291\n      ],\n      [\n        \"▁drought\",\n        -12.50027084350586\n      ],\n      [\n        \"▁devote\",\n        -12.500361442565918\n      ],\n      [\n        \"wertung\",\n        -12.500420570373535\n      ],\n      [\n        \"stabil\",\n        -12.5004301071167\n      ],\n      [\n        \"▁balcon\",\n        -12.500553131103516\n      ],\n      [\n        \"▁Lebensmittel\",\n        -12.500603675842285\n      ],\n      [\n        \"COL\",\n        -12.500950813293457\n      ],\n      [\n        \"▁Domnul\",\n        -12.501093864440918\n      ],\n      [\n        \"carved\",\n        -12.501359939575195\n      ],\n      [\n        \"▁preparat\",\n        -12.5014009475708\n      ],\n      [\n        \"101\",\n        -12.501537322998047\n      ],\n      [\n        \"▁specimen\",\n        -12.501580238342285\n      ],\n      [\n        \"urgeon\",\n        -12.501596450805664\n      ],\n      [\n        \"LIC\",\n        -12.50163459777832\n      ],\n      [\n        \"Plattform\",\n        -12.501643180847168\n      ],\n      [\n        \"▁ramas\",\n        -12.501739501953125\n      ],\n      [\n        \"▁copilului\",\n        -12.501791954040527\n      ],\n      [\n        \"bacter\",\n        -12.501812934875488\n      ],\n      [\n        \"körper\",\n        -12.501940727233887\n      ],\n      [\n        \"▁Kru\",\n        -12.501981735229492\n      ],\n      [\n        \"▁Employ\",\n        -12.502055168151855\n      ],\n      [\n        \"office\",\n        -12.502080917358398\n      ],\n      [\n        \"▁simmer\",\n        -12.502120018005371\n      ],\n      [\n        \"qualität\",\n        -12.502137184143066\n      ],\n      [\n        \"▁freshly\",\n        -12.502215385437012\n      ],\n      [\n        \"▁Nine\",\n        -12.50223159790039\n      ],\n      [\n        \"▁tonnes\",\n        -12.50223445892334\n      ],\n      [\n        \"boden\",\n        -12.502236366271973\n      ],\n      [\n        \"enquête\",\n        -12.50240707397461\n      ],\n      [\n        \"▁Colour\",\n        -12.502481460571289\n      ],\n      [\n        \"▁Diagram\",\n        -12.502495765686035\n      ],\n      [\n        \"▁gewählt\",\n        -12.502516746520996\n      ],\n      [\n        \"▁viitoare\",\n        -12.502538681030273\n      ],\n      [\n        \"▁reporters\",\n        -12.502913475036621\n      ],\n      [\n        \"guer\",\n        -12.502991676330566\n      ],\n      [\n        \"▁Kombination\",\n        -12.503021240234375\n      ],\n      [\n        \"▁qualitative\",\n        -12.50302505493164\n      ],\n      [\n        \"Centrul\",\n        -12.503131866455078\n      ],\n      [\n        \"avy\",\n        -12.503170013427734\n      ],\n      [\n        \"▁Eng\",\n        -12.503175735473633\n      ],\n      [\n        \"▁sufletul\",\n        -12.50327205657959\n      ],\n      [\n        \"▁germ\",\n        -12.503412246704102\n      ],\n      [\n        \"▁prevented\",\n        -12.503448486328125\n      ],\n      [\n        \"appelle\",\n        -12.503533363342285\n      ],\n      [\n        \"gins\",\n        -12.503556251525879\n      ],\n      [\n        \"▁Skype\",\n        -12.503585815429688\n      ],\n      [\n        \"conditioned\",\n        -12.503617286682129\n      ],\n      [\n        \"▁clutch\",\n        -12.503641128540039\n      ],\n      [\n        \"environ\",\n        -12.503694534301758\n      ],\n      [\n        \"3.3\",\n        -12.503774642944336\n      ],\n      [\n        \"▁webinar\",\n        -12.503866195678711\n      ],\n      [\n        \"▁forty\",\n        -12.504104614257812\n      ],\n      [\n        \"▁Medicaid\",\n        -12.504127502441406\n      ],\n      [\n        \"▁dismissed\",\n        -12.504167556762695\n      ],\n      [\n        \"▁siblings\",\n        -12.504168510437012\n      ],\n      [\n        \"▁Jaw\",\n        -12.504196166992188\n      ],\n      [\n        \"guiding\",\n        -12.504220962524414\n      ],\n      [\n        \"cigarette\",\n        -12.504374504089355\n      ],\n      [\n        \"▁Shah\",\n        -12.504681587219238\n      ],\n      [\n        \"▁Lehrer\",\n        -12.504684448242188\n      ],\n      [\n        \"▁muscular\",\n        -12.504694938659668\n      ],\n      [\n        \"spatele\",\n        -12.504796981811523\n      ],\n      [\n        \"▁réduction\",\n        -12.504836082458496\n      ],\n      [\n        \"▁fixes\",\n        -12.504851341247559\n      ],\n      [\n        \"Span\",\n        -12.50511646270752\n      ],\n      [\n        \"▁Hudson\",\n        -12.505231857299805\n      ],\n      [\n        \"development\",\n        -12.505250930786133\n      ],\n      [\n        \"▁excluded\",\n        -12.50525951385498\n      ],\n      [\n        \"Democrat\",\n        -12.505260467529297\n      ],\n      [\n        \"▁nominal\",\n        -12.505317687988281\n      ],\n      [\n        \"purpose\",\n        -12.50540828704834\n      ],\n      [\n        \"▁bored\",\n        -12.505500793457031\n      ],\n      [\n        \"espèce\",\n        -12.50550651550293\n      ],\n      [\n        \"▁(30\",\n        -12.5055570602417\n      ],\n      [\n        \"Neither\",\n        -12.505608558654785\n      ],\n      [\n        \"hänge\",\n        -12.505610466003418\n      ],\n      [\n        \"square\",\n        -12.505728721618652\n      ],\n      [\n        \"voller\",\n        -12.505736351013184\n      ],\n      [\n        \"▁pertinent\",\n        -12.505783081054688\n      ],\n      [\n        \"▁Wool\",\n        -12.50595474243164\n      ],\n      [\n        \"settling\",\n        -12.50607681274414\n      ],\n      [\n        \"fangen\",\n        -12.506148338317871\n      ],\n      [\n        \"▁Testing\",\n        -12.506152153015137\n      ],\n      [\n        \"distin\",\n        -12.506196022033691\n      ],\n      [\n        \"▁Marken\",\n        -12.506227493286133\n      ],\n      [\n        \"▁Beta\",\n        -12.506300926208496\n      ],\n      [\n        \"▁fulfilling\",\n        -12.506339073181152\n      ],\n      [\n        \"Leider\",\n        -12.506357192993164\n      ],\n      [\n        \"black\",\n        -12.506389617919922\n      ],\n      [\n        \"occupe\",\n        -12.50658893585205\n      ],\n      [\n        \"itățile\",\n        -12.506688117980957\n      ],\n      [\n        \"Pay\",\n        -12.506887435913086\n      ],\n      [\n        \"▁bandwidth\",\n        -12.506890296936035\n      ],\n      [\n        \"▁neighbourhood\",\n        -12.506918907165527\n      ],\n      [\n        \"▁Gutschein\",\n        -12.506922721862793\n      ],\n      [\n        \"degree\",\n        -12.507055282592773\n      ],\n      [\n        \"ivité\",\n        -12.507116317749023\n      ],\n      [\n        \"4.1\",\n        -12.507169723510742\n      ],\n      [\n        \"▁tätig\",\n        -12.507170677185059\n      ],\n      [\n        \"topic\",\n        -12.507242202758789\n      ],\n      [\n        \"ätz\",\n        -12.507243156433105\n      ],\n      [\n        \"these\",\n        -12.50733470916748\n      ],\n      [\n        \"▁propriété\",\n        -12.507438659667969\n      ],\n      [\n        \"▁innings\",\n        -12.507458686828613\n      ],\n      [\n        \"▁Prevention\",\n        -12.50754165649414\n      ],\n      [\n        \"▁Saw\",\n        -12.507585525512695\n      ],\n      [\n        \"▁opener\",\n        -12.507752418518066\n      ],\n      [\n        \"entwicklung\",\n        -12.507824897766113\n      ],\n      [\n        \"▁Johann\",\n        -12.507865905761719\n      ],\n      [\n        \"▁statistic\",\n        -12.507881164550781\n      ],\n      [\n        \"oids\",\n        -12.507966995239258\n      ],\n      [\n        \"▁Delaware\",\n        -12.508000373840332\n      ],\n      [\n        \"▁Isle\",\n        -12.508001327514648\n      ],\n      [\n        \"▁accompagn\",\n        -12.508028984069824\n      ],\n      [\n        \"▁Risiko\",\n        -12.508079528808594\n      ],\n      [\n        \"▁Conform\",\n        -12.508268356323242\n      ],\n      [\n        \"zeichnen\",\n        -12.508395195007324\n      ],\n      [\n        \"▁acuz\",\n        -12.508479118347168\n      ],\n      [\n        \"▁Mort\",\n        -12.508524894714355\n      ],\n      [\n        \"Fällen\",\n        -12.50853157043457\n      ],\n      [\n        \"▁blended\",\n        -12.50871467590332\n      ],\n      [\n        \"found\",\n        -12.50872802734375\n      ],\n      [\n        \"▁gestalten\",\n        -12.50874137878418\n      ],\n      [\n        \"▁Découvrez\",\n        -12.508830070495605\n      ],\n      [\n        \"▁Wett\",\n        -12.508956909179688\n      ],\n      [\n        \"▁débat\",\n        -12.508990287780762\n      ],\n      [\n        \"▁Tire\",\n        -12.509007453918457\n      ],\n      [\n        \"benz\",\n        -12.509037017822266\n      ],\n      [\n        \"Yes\",\n        -12.509074211120605\n      ],\n      [\n        \"▁pierde\",\n        -12.509110450744629\n      ],\n      [\n        \"▁niciodata\",\n        -12.509121894836426\n      ],\n      [\n        \"▁precipit\",\n        -12.509145736694336\n      ],\n      [\n        \"▁lazy\",\n        -12.509334564208984\n      ],\n      [\n        \"▁creature\",\n        -12.509370803833008\n      ],\n      [\n        \"Wettbewerb\",\n        -12.509385108947754\n      ],\n      [\n        \"▁Explo\",\n        -12.509496688842773\n      ],\n      [\n        \"wolf\",\n        -12.509657859802246\n      ],\n      [\n        \"▁conséquence\",\n        -12.509662628173828\n      ],\n      [\n        \"▁jewellery\",\n        -12.509662628173828\n      ],\n      [\n        \"▁Extension\",\n        -12.509735107421875\n      ],\n      [\n        \"▁transmitted\",\n        -12.509872436523438\n      ],\n      [\n        \"▁darker\",\n        -12.509973526000977\n      ],\n      [\n        \"▁simbol\",\n        -12.510065078735352\n      ],\n      [\n        \"kim\",\n        -12.510069847106934\n      ],\n      [\n        \"▁proteja\",\n        -12.510098457336426\n      ],\n      [\n        \"▁Copper\",\n        -12.510189056396484\n      ],\n      [\n        \"mitglied\",\n        -12.510218620300293\n      ],\n      [\n        \"▁explosive\",\n        -12.510222434997559\n      ],\n      [\n        \"▁Nicolae\",\n        -12.510223388671875\n      ],\n      [\n        \"▁intricate\",\n        -12.510231971740723\n      ],\n      [\n        \"lati\",\n        -12.510313034057617\n      ],\n      [\n        \"Mark\",\n        -12.510334014892578\n      ],\n      [\n        \"▁Porsche\",\n        -12.510339736938477\n      ],\n      [\n        \"▁Revenue\",\n        -12.510479927062988\n      ],\n      [\n        \"4.2\",\n        -12.510613441467285\n      ],\n      [\n        \"certain\",\n        -12.510836601257324\n      ],\n      [\n        \"▁Coaching\",\n        -12.510879516601562\n      ],\n      [\n        \"▁allocated\",\n        -12.510879516601562\n      ],\n      [\n        \"▁optimiz\",\n        -12.511017799377441\n      ],\n      [\n        \"▁heel\",\n        -12.511205673217773\n      ],\n      [\n        \"▁indigenous\",\n        -12.511330604553223\n      ],\n      [\n        \"▁vineri\",\n        -12.511396408081055\n      ],\n      [\n        \"▁Inspector\",\n        -12.51145076751709\n      ],\n      [\n        \"▁colleague\",\n        -12.5115327835083\n      ],\n      [\n        \"ANG\",\n        -12.511649131774902\n      ],\n      [\n        \"éducation\",\n        -12.511887550354004\n      ],\n      [\n        \"▁Geschenk\",\n        -12.51188850402832\n      ],\n      [\n        \"channel\",\n        -12.511899948120117\n      ],\n      [\n        \"▁trapped\",\n        -12.511954307556152\n      ],\n      [\n        \"BF\",\n        -12.511974334716797\n      ],\n      [\n        \"▁firing\",\n        -12.512086868286133\n      ],\n      [\n        \"▁chlor\",\n        -12.512103080749512\n      ],\n      [\n        \"▁Carlos\",\n        -12.512115478515625\n      ],\n      [\n        \"▁proxy\",\n        -12.512128829956055\n      ],\n      [\n        \"▁pinch\",\n        -12.512167930603027\n      ],\n      [\n        \"▁Pete\",\n        -12.512201309204102\n      ],\n      [\n        \"phospho\",\n        -12.512458801269531\n      ],\n      [\n        \"▁waiver\",\n        -12.51246452331543\n      ],\n      [\n        \"▁Croatia\",\n        -12.512480735778809\n      ],\n      [\n        \"▁behave\",\n        -12.51258373260498\n      ],\n      [\n        \"▁frig\",\n        -12.512676239013672\n      ],\n      [\n        \"▁Vorteil\",\n        -12.51279067993164\n      ],\n      [\n        \"▁wichtiger\",\n        -12.512837409973145\n      ],\n      [\n        \"........\",\n        -12.512929916381836\n      ],\n      [\n        \"▁flick\",\n        -12.513007164001465\n      ],\n      [\n        \"▁Stanford\",\n        -12.51306438446045\n      ],\n      [\n        \"öse\",\n        -12.513096809387207\n      ],\n      [\n        \"▁Fernseh\",\n        -12.513099670410156\n      ],\n      [\n        \"▁vélo\",\n        -12.51322078704834\n      ],\n      [\n        \"reisen\",\n        -12.513304710388184\n      ],\n      [\n        \"residing\",\n        -12.513504981994629\n      ],\n      [\n        \"▁Taste\",\n        -12.513580322265625\n      ],\n      [\n        \"▁disappeared\",\n        -12.513630867004395\n      ],\n      [\n        \"▁Hood\",\n        -12.513776779174805\n      ],\n      [\n        \"▁fabriqu\",\n        -12.514046669006348\n      ],\n      [\n        \"▁Jake\",\n        -12.514470100402832\n      ],\n      [\n        \"Lastly\",\n        -12.51462173461914\n      ],\n      [\n        \"▁furnace\",\n        -12.514673233032227\n      ],\n      [\n        \"▁Ottawa\",\n        -12.51473331451416\n      ],\n      [\n        \"▁dictate\",\n        -12.514742851257324\n      ],\n      [\n        \"zece\",\n        -12.514817237854004\n      ],\n      [\n        \"protect\",\n        -12.514932632446289\n      ],\n      [\n        \"FU\",\n        -12.51495361328125\n      ],\n      [\n        \"Stack\",\n        -12.514954566955566\n      ],\n      [\n        \"▁teilweise\",\n        -12.515018463134766\n      ],\n      [\n        \"▁Publisher\",\n        -12.51506233215332\n      ],\n      [\n        \"▁lutte\",\n        -12.515159606933594\n      ],\n      [\n        \"202\",\n        -12.515178680419922\n      ],\n      [\n        \"psy\",\n        -12.515190124511719\n      ],\n      [\n        \"▁wünschen\",\n        -12.515238761901855\n      ],\n      [\n        \"▁pathways\",\n        -12.515356063842773\n      ],\n      [\n        \"ivitate\",\n        -12.515559196472168\n      ],\n      [\n        \"▁continuă\",\n        -12.515658378601074\n      ],\n      [\n        \"ziemlich\",\n        -12.515791893005371\n      ],\n      [\n        \"verted\",\n        -12.515812873840332\n      ],\n      [\n        \"▁sequel\",\n        -12.515839576721191\n      ],\n      [\n        \"tinct\",\n        -12.51599407196045\n      ],\n      [\n        \"vette\",\n        -12.516020774841309\n      ],\n      [\n        \"▁exceeding\",\n        -12.516032218933105\n      ],\n      [\n        \"▁Yorkshire\",\n        -12.51607608795166\n      ],\n      [\n        \"▁cleanse\",\n        -12.51613998413086\n      ],\n      [\n        \"Sadly\",\n        -12.516159057617188\n      ],\n      [\n        \"▁präsentiert\",\n        -12.516164779663086\n      ],\n      [\n        \"angled\",\n        -12.516311645507812\n      ],\n      [\n        \"tude\",\n        -12.516339302062988\n      ],\n      [\n        \"chain\",\n        -12.516371726989746\n      ],\n      [\n        \"▁Oakland\",\n        -12.51639175415039\n      ],\n      [\n        \"xia\",\n        -12.516514778137207\n      ],\n      [\n        \"▁foremost\",\n        -12.51653003692627\n      ],\n      [\n        \"▁incomplete\",\n        -12.516786575317383\n      ],\n      [\n        \"▁restriction\",\n        -12.516905784606934\n      ],\n      [\n        \"▁whatsoever\",\n        -12.516908645629883\n      ],\n      [\n        \"▁shipment\",\n        -12.517017364501953\n      ],\n      [\n        \"**\",\n        -12.517059326171875\n      ],\n      [\n        \"Aici\",\n        -12.517110824584961\n      ],\n      [\n        \"PART\",\n        -12.517247200012207\n      ],\n      [\n        \"▁grams\",\n        -12.517251014709473\n      ],\n      [\n        \"▁Folk\",\n        -12.517457008361816\n      ],\n      [\n        \"▁encryption\",\n        -12.517467498779297\n      ],\n      [\n        \"▁Alfred\",\n        -12.517748832702637\n      ],\n      [\n        \"▁Veränderung\",\n        -12.517749786376953\n      ],\n      [\n        \"▁privately\",\n        -12.517817497253418\n      ],\n      [\n        \"£\",\n        -12.517909049987793\n      ],\n      [\n        \"▁Sonne\",\n        -12.51799201965332\n      ],\n      [\n        \"kow\",\n        -12.518117904663086\n      ],\n      [\n        \"▁CBS\",\n        -12.518172264099121\n      ],\n      [\n        \"▁Feuer\",\n        -12.518198013305664\n      ],\n      [\n        \"▁crushed\",\n        -12.518230438232422\n      ],\n      [\n        \"▁cazare\",\n        -12.518270492553711\n      ],\n      [\n        \"▁beraten\",\n        -12.518401145935059\n      ],\n      [\n        \"envoi\",\n        -12.518423080444336\n      ],\n      [\n        \"▁genannt\",\n        -12.51843547821045\n      ],\n      [\n        \"▁Lok\",\n        -12.518472671508789\n      ],\n      [\n        \"nox\",\n        -12.518569946289062\n      ],\n      [\n        \"wishing\",\n        -12.518759727478027\n      ],\n      [\n        \"▁freak\",\n        -12.518759727478027\n      ],\n      [\n        \"rasi\",\n        -12.51879596710205\n      ],\n      [\n        \"▁calculations\",\n        -12.518888473510742\n      ],\n      [\n        \"▁sprechen\",\n        -12.51890754699707\n      ],\n      [\n        \"5:00\",\n        -12.519062042236328\n      ],\n      [\n        \"▁Gam\",\n        -12.519074440002441\n      ],\n      [\n        \"▁invasion\",\n        -12.519159317016602\n      ],\n      [\n        \"ZA\",\n        -12.519230842590332\n      ],\n      [\n        \"aiming\",\n        -12.519327163696289\n      ],\n      [\n        \"▁näher\",\n        -12.519404411315918\n      ],\n      [\n        \"▁Maßnahmen\",\n        -12.519433975219727\n      ],\n      [\n        \"▁măsură\",\n        -12.519490242004395\n      ],\n      [\n        \"▁Bestellung\",\n        -12.519610404968262\n      ],\n      [\n        \"▁gown\",\n        -12.519665718078613\n      ],\n      [\n        \"▁oblige\",\n        -12.519747734069824\n      ],\n      [\n        \"länder\",\n        -12.51977825164795\n      ],\n      [\n        \"posi\",\n        -12.519853591918945\n      ],\n      [\n        \"▁Earn\",\n        -12.51988410949707\n      ],\n      [\n        \"▁dubl\",\n        -12.51999282836914\n      ],\n      [\n        \"▁sticky\",\n        -12.520100593566895\n      ],\n      [\n        \"▁litter\",\n        -12.520181655883789\n      ],\n      [\n        \"▁Salz\",\n        -12.520257949829102\n      ],\n      [\n        \"▁Matter\",\n        -12.520272254943848\n      ],\n      [\n        \"▁Driving\",\n        -12.520275115966797\n      ],\n      [\n        \"▁pursu\",\n        -12.520285606384277\n      ],\n      [\n        \"ographer\",\n        -12.520390510559082\n      ],\n      [\n        \"▁touring\",\n        -12.520400047302246\n      ],\n      [\n        \"opter\",\n        -12.520444869995117\n      ],\n      [\n        \"▁fierce\",\n        -12.520475387573242\n      ],\n      [\n        \"▁Audit\",\n        -12.520480155944824\n      ],\n      [\n        \"▁imperi\",\n        -12.520755767822266\n      ],\n      [\n        \"▁positiv\",\n        -12.520780563354492\n      ],\n      [\n        \"règles\",\n        -12.520849227905273\n      ],\n      [\n        \"▁bouton\",\n        -12.520990371704102\n      ],\n      [\n        \"▁victorie\",\n        -12.520990371704102\n      ],\n      [\n        \"▁manuel\",\n        -12.521015167236328\n      ],\n      [\n        \"▁await\",\n        -12.52103042602539\n      ],\n      [\n        \"▁transformer\",\n        -12.521041870117188\n      ],\n      [\n        \"▁cupboard\",\n        -12.52108383178711\n      ],\n      [\n        \"▁Hag\",\n        -12.521117210388184\n      ],\n      [\n        \"naj\",\n        -12.521214485168457\n      ],\n      [\n        \"▁annoncé\",\n        -12.52139663696289\n      ],\n      [\n        \"▁scolaire\",\n        -12.521401405334473\n      ],\n      [\n        \"▁étape\",\n        -12.521482467651367\n      ],\n      [\n        \"▁pirate\",\n        -12.521761894226074\n      ],\n      [\n        \"▁Rated\",\n        -12.521794319152832\n      ],\n      [\n        \"LOT\",\n        -12.521846771240234\n      ],\n      [\n        \"▁natura\",\n        -12.521944046020508\n      ],\n      [\n        \"oga\",\n        -12.522336959838867\n      ],\n      [\n        \"Read\",\n        -12.522388458251953\n      ],\n      [\n        \"idio\",\n        -12.522444725036621\n      ],\n      [\n        \"▁recession\",\n        -12.522698402404785\n      ],\n      [\n        \"veţi\",\n        -12.522761344909668\n      ],\n      [\n        \"▁blossom\",\n        -12.523082733154297\n      ],\n      [\n        \"▁lunar\",\n        -12.523141860961914\n      ],\n      [\n        \"▁inhibit\",\n        -12.52316951751709\n      ],\n      [\n        \"gemein\",\n        -12.523219108581543\n      ],\n      [\n        \"▁Historic\",\n        -12.523262023925781\n      ],\n      [\n        \"▁HTTP\",\n        -12.523370742797852\n      ],\n      [\n        \"misiune\",\n        -12.5234956741333\n      ],\n      [\n        \"▁Manda\",\n        -12.523601531982422\n      ],\n      [\n        \"▁Hurricane\",\n        -12.523643493652344\n      ],\n      [\n        \"Strat\",\n        -12.523646354675293\n      ],\n      [\n        \"▁populaire\",\n        -12.523756980895996\n      ],\n      [\n        \"▁useless\",\n        -12.523762702941895\n      ],\n      [\n        \"▁Leipzig\",\n        -12.523924827575684\n      ],\n      [\n        \"▁Krankheit\",\n        -12.52392578125\n      ],\n      [\n        \"▁Bonne\",\n        -12.52397346496582\n      ],\n      [\n        \"▁tissu\",\n        -12.52399730682373\n      ],\n      [\n        \"▁Baum\",\n        -12.523998260498047\n      ],\n      [\n        \"▁BUT\",\n        -12.524152755737305\n      ],\n      [\n        \"▁Mondial\",\n        -12.52423095703125\n      ],\n      [\n        \"▁triangle\",\n        -12.524242401123047\n      ],\n      [\n        \"▁Tesla\",\n        -12.524250984191895\n      ],\n      [\n        \"▁pământ\",\n        -12.52430534362793\n      ],\n      [\n        \"▁aminte\",\n        -12.524726867675781\n      ],\n      [\n        \"▁vehicul\",\n        -12.524770736694336\n      ],\n      [\n        \"▁cerut\",\n        -12.52482795715332\n      ],\n      [\n        \"▁respiratory\",\n        -12.524836540222168\n      ],\n      [\n        \"▁rayon\",\n        -12.524993896484375\n      ],\n      [\n        \"▁gestaltet\",\n        -12.525067329406738\n      ],\n      [\n        \"310\",\n        -12.525139808654785\n      ],\n      [\n        \"pfl\",\n        -12.525239944458008\n      ],\n      [\n        \"▁shrimp\",\n        -12.525337219238281\n      ],\n      [\n        \"▁reconnu\",\n        -12.525409698486328\n      ],\n      [\n        \"ologique\",\n        -12.525476455688477\n      ],\n      [\n        \"▁unity\",\n        -12.525674819946289\n      ],\n      [\n        \"Speicher\",\n        -12.52569580078125\n      ],\n      [\n        \"▁Movement\",\n        -12.525794982910156\n      ],\n      [\n        \"ddling\",\n        -12.52581787109375\n      ],\n      [\n        \"OE\",\n        -12.525818824768066\n      ],\n      [\n        \"▁Resolution\",\n        -12.525863647460938\n      ],\n      [\n        \"esteem\",\n        -12.525898933410645\n      ],\n      [\n        \"▁Teen\",\n        -12.526288986206055\n      ],\n      [\n        \"▁believing\",\n        -12.526463508605957\n      ],\n      [\n        \"▁Tipps\",\n        -12.526481628417969\n      ],\n      [\n        \"jpg\",\n        -12.526494026184082\n      ],\n      [\n        \"▁obs\",\n        -12.526519775390625\n      ],\n      [\n        \"SHA\",\n        -12.526702880859375\n      ],\n      [\n        \"▁quietly\",\n        -12.526907920837402\n      ],\n      [\n        \"setting\",\n        -12.52712345123291\n      ],\n      [\n        \"▁elevator\",\n        -12.527185440063477\n      ],\n      [\n        \"phor\",\n        -12.527194023132324\n      ],\n      [\n        \"Just\",\n        -12.52725887298584\n      ],\n      [\n        \"▁legatura\",\n        -12.52739143371582\n      ],\n      [\n        \"elected\",\n        -12.527414321899414\n      ],\n      [\n        \"▁disclosed\",\n        -12.527419090270996\n      ],\n      [\n        \"quarter\",\n        -12.52743148803711\n      ],\n      [\n        \"zzy\",\n        -12.527461051940918\n      ],\n      [\n        \"▁gata\",\n        -12.527491569519043\n      ],\n      [\n        \"SAN\",\n        -12.527532577514648\n      ],\n      [\n        \"▁Cathedral\",\n        -12.527592658996582\n      ],\n      [\n        \"192\",\n        -12.527656555175781\n      ],\n      [\n        \"▁RBI\",\n        -12.527726173400879\n      ],\n      [\n        \"▁Seller\",\n        -12.527798652648926\n      ],\n      [\n        \"▁urine\",\n        -12.527807235717773\n      ],\n      [\n        \"▁Hardware\",\n        -12.527966499328613\n      ],\n      [\n        \"▁steadi\",\n        -12.527993202209473\n      ],\n      [\n        \"percussion\",\n        -12.528158187866211\n      ],\n      [\n        \"▁francez\",\n        -12.528172492980957\n      ],\n      [\n        \"▁rude\",\n        -12.528202056884766\n      ],\n      [\n        \"bod\",\n        -12.528223037719727\n      ],\n      [\n        \"cession\",\n        -12.528249740600586\n      ],\n      [\n        \"▁HTC\",\n        -12.528372764587402\n      ],\n      [\n        \"HB\",\n        -12.528576850891113\n      ],\n      [\n        \"▁descent\",\n        -12.528644561767578\n      ],\n      [\n        \"▁Painting\",\n        -12.528681755065918\n      ],\n      [\n        \"119\",\n        -12.528684616088867\n      ],\n      [\n        \"sagen\",\n        -12.52877426147461\n      ],\n      [\n        \"▁salvation\",\n        -12.52880573272705\n      ],\n      [\n        \"arro\",\n        -12.528814315795898\n      ],\n      [\n        \"0.3\",\n        -12.52886962890625\n      ],\n      [\n        \"▁Duck\",\n        -12.52890396118164\n      ],\n      [\n        \"Mit\",\n        -12.529052734375\n      ],\n      [\n        \"да\",\n        -12.52927017211914\n      ],\n      [\n        \"▁Diesel\",\n        -12.529322624206543\n      ],\n      [\n        \"▁Medal\",\n        -12.529413223266602\n      ],\n      [\n        \"▁interim\",\n        -12.529439926147461\n      ],\n      [\n        \"▁montagne\",\n        -12.529439926147461\n      ],\n      [\n        \"▁Pixel\",\n        -12.529631614685059\n      ],\n      [\n        \"LINE\",\n        -12.529806137084961\n      ],\n      [\n        \"▁dureri\",\n        -12.529938697814941\n      ],\n      [\n        \"▁Bengal\",\n        -12.529990196228027\n      ],\n      [\n        \"Legea\",\n        -12.530080795288086\n      ],\n      [\n        \"▁Strecke\",\n        -12.530094146728516\n      ],\n      [\n        \"▁schneller\",\n        -12.53012752532959\n      ],\n      [\n        \"▁Karten\",\n        -12.5301513671875\n      ],\n      [\n        \"cion\",\n        -12.530241966247559\n      ],\n      [\n        \"▁Coco\",\n        -12.53037166595459\n      ],\n      [\n        \"troisième\",\n        -12.53052806854248\n      ],\n      [\n        \"401\",\n        -12.530616760253906\n      ],\n      [\n        \"▁sandwiches\",\n        -12.530704498291016\n      ],\n      [\n        \"▁folosind\",\n        -12.530920028686523\n      ],\n      [\n        \"▁Folgen\",\n        -12.530953407287598\n      ],\n      [\n        \"▁triumph\",\n        -12.530991554260254\n      ],\n      [\n        \"▁Hintergrund\",\n        -12.530996322631836\n      ],\n      [\n        \"▁revelation\",\n        -12.531084060668945\n      ],\n      [\n        \"ôme\",\n        -12.531222343444824\n      ],\n      [\n        \"▁Nex\",\n        -12.531245231628418\n      ],\n      [\n        \"jährigen\",\n        -12.531295776367188\n      ],\n      [\n        \"▁militant\",\n        -12.531296730041504\n      ],\n      [\n        \"▁fabricant\",\n        -12.531671524047852\n      ],\n      [\n        \"iano\",\n        -12.531713485717773\n      ],\n      [\n        \"▁formulation\",\n        -12.53188705444336\n      ],\n      [\n        \"integrating\",\n        -12.532050132751465\n      ],\n      [\n        \"▁Items\",\n        -12.532142639160156\n      ],\n      [\n        \"▁contractual\",\n        -12.532320976257324\n      ],\n      [\n        \"AIDS\",\n        -12.532424926757812\n      ],\n      [\n        \"▁pitcher\",\n        -12.532610893249512\n      ],\n      [\n        \"▁Snap\",\n        -12.532623291015625\n      ],\n      [\n        \"▁systematic\",\n        -12.532663345336914\n      ],\n      [\n        \"▁referendum\",\n        -12.532694816589355\n      ],\n      [\n        \"gau\",\n        -12.53281021118164\n      ],\n      [\n        \"administration\",\n        -12.532917022705078\n      ],\n      [\n        \"▁speci\",\n        -12.532981872558594\n      ],\n      [\n        \"ieni\",\n        -12.532998085021973\n      ],\n      [\n        \"prox\",\n        -12.533186912536621\n      ],\n      [\n        \"▁bouquet\",\n        -12.533241271972656\n      ],\n      [\n        \"▁sinnvoll\",\n        -12.533270835876465\n      ],\n      [\n        \"▁Fleisch\",\n        -12.533309936523438\n      ],\n      [\n        \"ktuell\",\n        -12.533381462097168\n      ],\n      [\n        \"▁mushrooms\",\n        -12.533408164978027\n      ],\n      [\n        \"▁Straf\",\n        -12.533470153808594\n      ],\n      [\n        \"▁cresc\",\n        -12.533491134643555\n      ],\n      [\n        \"TEM\",\n        -12.533502578735352\n      ],\n      [\n        \"▁vindec\",\n        -12.53352165222168\n      ],\n      [\n        \"▁Drama\",\n        -12.533540725708008\n      ],\n      [\n        \"chief\",\n        -12.533550262451172\n      ],\n      [\n        \"▁müsst\",\n        -12.533614158630371\n      ],\n      [\n        \"▁Warner\",\n        -12.533662796020508\n      ],\n      [\n        \"118\",\n        -12.533761024475098\n      ],\n      [\n        \"▁saptamana\",\n        -12.533831596374512\n      ],\n      [\n        \"▁animaux\",\n        -12.53412914276123\n      ],\n      [\n        \"▁Directory\",\n        -12.534146308898926\n      ],\n      [\n        \"▁entgegen\",\n        -12.53415584564209\n      ],\n      [\n        \"▁deduction\",\n        -12.534156799316406\n      ],\n      [\n        \"▁Strategic\",\n        -12.53426456451416\n      ],\n      [\n        \"▁rats\",\n        -12.534419059753418\n      ],\n      [\n        \"▁Moses\",\n        -12.534448623657227\n      ],\n      [\n        \"eko\",\n        -12.534564971923828\n      ],\n      [\n        \"strict\",\n        -12.534590721130371\n      ],\n      [\n        \"▁Ashley\",\n        -12.534603118896484\n      ],\n      [\n        \"mik\",\n        -12.534622192382812\n      ],\n      [\n        \"▁relocate\",\n        -12.534668922424316\n      ],\n      [\n        \"▁whip\",\n        -12.534738540649414\n      ],\n      [\n        \"central\",\n        -12.534750938415527\n      ],\n      [\n        \"mack\",\n        -12.534892082214355\n      ],\n      [\n        \"stufe\",\n        -12.534961700439453\n      ],\n      [\n        \"▁Metropolitan\",\n        -12.5349702835083\n      ],\n      [\n        \"▁croissance\",\n        -12.534974098205566\n      ],\n      [\n        \"▁celebrities\",\n        -12.535021781921387\n      ],\n      [\n        \"▁Geh\",\n        -12.53507137298584\n      ],\n      [\n        \"▁verifica\",\n        -12.535196304321289\n      ],\n      [\n        \"▁satisfac\",\n        -12.535211563110352\n      ],\n      [\n        \"▁Julian\",\n        -12.535271644592285\n      ],\n      [\n        \"▁remotely\",\n        -12.535432815551758\n      ],\n      [\n        \"▁Safari\",\n        -12.535542488098145\n      ],\n      [\n        \"▁Chic\",\n        -12.53557014465332\n      ],\n      [\n        \"▁clamp\",\n        -12.535818099975586\n      ],\n      [\n        \"▁Schnee\",\n        -12.535918235778809\n      ],\n      [\n        \"grown\",\n        -12.536069869995117\n      ],\n      [\n        \"▁Character\",\n        -12.536110877990723\n      ],\n      [\n        \"▁charities\",\n        -12.536137580871582\n      ],\n      [\n        \"Thankfully\",\n        -12.536625862121582\n      ],\n      [\n        \"▁țară\",\n        -12.53681468963623\n      ],\n      [\n        \"IZ\",\n        -12.536816596984863\n      ],\n      [\n        \"Vielleicht\",\n        -12.536999702453613\n      ],\n      [\n        \"▁Pon\",\n        -12.537108421325684\n      ],\n      [\n        \"gegen\",\n        -12.53711986541748\n      ],\n      [\n        \"chez\",\n        -12.537185668945312\n      ],\n      [\n        \"Black\",\n        -12.537544250488281\n      ],\n      [\n        \"▁alimentare\",\n        -12.537555694580078\n      ],\n      [\n        \"▁verloren\",\n        -12.537562370300293\n      ],\n      [\n        \"▁predictions\",\n        -12.537657737731934\n      ],\n      [\n        \"Founded\",\n        -12.53795337677002\n      ],\n      [\n        \"▁femeie\",\n        -12.538022994995117\n      ],\n      [\n        \"wahrscheinlich\",\n        -12.538107872009277\n      ],\n      [\n        \"▁squeeze\",\n        -12.53819465637207\n      ],\n      [\n        \"▁verfügbar\",\n        -12.538259506225586\n      ],\n      [\n        \"▁hygiene\",\n        -12.538393020629883\n      ],\n      [\n        \"voire\",\n        -12.538667678833008\n      ],\n      [\n        \"▁birou\",\n        -12.538901329040527\n      ],\n      [\n        \"▁initiate\",\n        -12.538921356201172\n      ],\n      [\n        \"▁Patriot\",\n        -12.539009094238281\n      ],\n      [\n        \"▁Income\",\n        -12.539159774780273\n      ],\n      [\n        \"▁marry\",\n        -12.539310455322266\n      ],\n      [\n        \"lokal\",\n        -12.539336204528809\n      ],\n      [\n        \"logic\",\n        -12.53940486907959\n      ],\n      [\n        \"▁Abstract\",\n        -12.53966236114502\n      ],\n      [\n        \"▁grundsätzlich\",\n        -12.539822578430176\n      ],\n      [\n        \"▁tariff\",\n        -12.539886474609375\n      ],\n      [\n        \"▁definitiv\",\n        -12.539892196655273\n      ],\n      [\n        \"paz\",\n        -12.53989315032959\n      ],\n      [\n        \"Result\",\n        -12.539921760559082\n      ],\n      [\n        \"1:30\",\n        -12.54005241394043\n      ],\n      [\n        \"▁Latest\",\n        -12.540075302124023\n      ],\n      [\n        \"▁Dauer\",\n        -12.540155410766602\n      ],\n      [\n        \"Med\",\n        -12.540275573730469\n      ],\n      [\n        \"gewicht\",\n        -12.540348052978516\n      ],\n      [\n        \"▁Gaza\",\n        -12.540430068969727\n      ],\n      [\n        \"▁Newton\",\n        -12.540769577026367\n      ],\n      [\n        \"Dokument\",\n        -12.540897369384766\n      ],\n      [\n        \"formular\",\n        -12.540945053100586\n      ],\n      [\n        \"ILE\",\n        -12.540964126586914\n      ],\n      [\n        \"▁surse\",\n        -12.541040420532227\n      ],\n      [\n        \"MH\",\n        -12.54116153717041\n      ],\n      [\n        \"▁Arctic\",\n        -12.541255950927734\n      ],\n      [\n        \"▁ISBN\",\n        -12.541274070739746\n      ],\n      [\n        \"▁quarterback\",\n        -12.541315078735352\n      ],\n      [\n        \"▁absurd\",\n        -12.541555404663086\n      ],\n      [\n        \"▁Zusammenhang\",\n        -12.541561126708984\n      ],\n      [\n        \"▁Module\",\n        -12.54156494140625\n      ],\n      [\n        \"mented\",\n        -12.541667938232422\n      ],\n      [\n        \"worthy\",\n        -12.541797637939453\n      ],\n      [\n        \"▁célèbre\",\n        -12.541828155517578\n      ],\n      [\n        \"▁maritime\",\n        -12.541836738586426\n      ],\n      [\n        \"▁Reed\",\n        -12.541938781738281\n      ],\n      [\n        \"▁threaten\",\n        -12.542037010192871\n      ],\n      [\n        \"▁Satz\",\n        -12.542095184326172\n      ],\n      [\n        \"▁sticking\",\n        -12.542203903198242\n      ],\n      [\n        \"▁transcript\",\n        -12.542372703552246\n      ],\n      [\n        \"▁Morgen\",\n        -12.542425155639648\n      ],\n      [\n        \"▁Förder\",\n        -12.542435646057129\n      ],\n      [\n        \"▁Gottes\",\n        -12.542572021484375\n      ],\n      [\n        \"▁Coordinator\",\n        -12.542648315429688\n      ],\n      [\n        \"LOG\",\n        -12.54265022277832\n      ],\n      [\n        \"EAN\",\n        -12.542677879333496\n      ],\n      [\n        \"▁préparation\",\n        -12.54273509979248\n      ],\n      [\n        \"▁Brass\",\n        -12.542799949645996\n      ],\n      [\n        \"Așa\",\n        -12.542853355407715\n      ],\n      [\n        \"▁Utiliz\",\n        -12.54294490814209\n      ],\n      [\n        \"framed\",\n        -12.542973518371582\n      ],\n      [\n        \"▁asphalt\",\n        -12.543050765991211\n      ],\n      [\n        \"116\",\n        -12.543061256408691\n      ],\n      [\n        \"▁historically\",\n        -12.54310417175293\n      ],\n      [\n        \"▁doamn\",\n        -12.543176651000977\n      ],\n      [\n        \"Air\",\n        -12.543293952941895\n      ],\n      [\n        \"▁economist\",\n        -12.543838500976562\n      ],\n      [\n        \"fresh\",\n        -12.54384994506836\n      ],\n      [\n        \"engine\",\n        -12.543906211853027\n      ],\n      [\n        \"▁Rücken\",\n        -12.543919563293457\n      ],\n      [\n        \"▁worthwhile\",\n        -12.544124603271484\n      ],\n      [\n        \"▁Therapie\",\n        -12.544140815734863\n      ],\n      [\n        \"▁Joshua\",\n        -12.544151306152344\n      ],\n      [\n        \"sicherheit\",\n        -12.544175148010254\n      ],\n      [\n        \"▁scena\",\n        -12.544254302978516\n      ],\n      [\n        \"ifiant\",\n        -12.54433822631836\n      ],\n      [\n        \"/20\",\n        -12.54442024230957\n      ],\n      [\n        \"fehl\",\n        -12.544469833374023\n      ],\n      [\n        \"karten\",\n        -12.544515609741211\n      ],\n      [\n        \"501\",\n        -12.544656753540039\n      ],\n      [\n        \"▁vide\",\n        -12.544673919677734\n      ],\n      [\n        \"▁miliarde\",\n        -12.544699668884277\n      ],\n      [\n        \"▁trillion\",\n        -12.54470157623291\n      ],\n      [\n        \"oudre\",\n        -12.544761657714844\n      ],\n      [\n        \"nderung\",\n        -12.544803619384766\n      ],\n      [\n        \"▁inquiries\",\n        -12.544992446899414\n      ],\n      [\n        \"▁echipe\",\n        -12.545034408569336\n      ],\n      [\n        \"▁investiga\",\n        -12.545040130615234\n      ],\n      [\n        \"▁detailing\",\n        -12.545042991638184\n      ],\n      [\n        \"VIS\",\n        -12.545086860656738\n      ],\n      [\n        \"▁geographical\",\n        -12.545157432556152\n      ],\n      [\n        \"▁authentication\",\n        -12.54519271850586\n      ],\n      [\n        \"▁Schwa\",\n        -12.545201301574707\n      ],\n      [\n        \"▁Scri\",\n        -12.545230865478516\n      ],\n      [\n        \"▁discourage\",\n        -12.54527473449707\n      ],\n      [\n        \"Pass\",\n        -12.54529094696045\n      ],\n      [\n        \"▁scattered\",\n        -12.54529857635498\n      ],\n      [\n        \"▁langsam\",\n        -12.545300483703613\n      ],\n      [\n        \"telles\",\n        -12.545380592346191\n      ],\n      [\n        \"▁ramane\",\n        -12.5454740524292\n      ],\n      [\n        \"▁inhibitor\",\n        -12.545486450195312\n      ],\n      [\n        \"▁Habit\",\n        -12.54556941986084\n      ],\n      [\n        \"▁10:00\",\n        -12.545577049255371\n      ],\n      [\n        \"▁rezultat\",\n        -12.545595169067383\n      ],\n      [\n        \"äck\",\n        -12.545943260192871\n      ],\n      [\n        \",000.\",\n        -12.545979499816895\n      ],\n      [\n        \"▁remedies\",\n        -12.546103477478027\n      ],\n      [\n        \"▁comportament\",\n        -12.546195983886719\n      ],\n      [\n        \"namen\",\n        -12.546229362487793\n      ],\n      [\n        \"▁#3\",\n        -12.546327590942383\n      ],\n      [\n        \"enstein\",\n        -12.546493530273438\n      ],\n      [\n        \"▁relevance\",\n        -12.546516418457031\n      ],\n      [\n        \"▁présentation\",\n        -12.54655933380127\n      ],\n      [\n        \"MHz\",\n        -12.546648979187012\n      ],\n      [\n        \"EMA\",\n        -12.546661376953125\n      ],\n      [\n        \"▁palace\",\n        -12.546709060668945\n      ],\n      [\n        \"▁vizibil\",\n        -12.546723365783691\n      ],\n      [\n        \"▁griev\",\n        -12.546820640563965\n      ],\n      [\n        \"▁severely\",\n        -12.54688549041748\n      ],\n      [\n        \"expert\",\n        -12.546942710876465\n      ],\n      [\n        \"▁ravi\",\n        -12.54696273803711\n      ],\n      [\n        \"▁feasible\",\n        -12.547002792358398\n      ],\n      [\n        \"▁Wholesale\",\n        -12.547009468078613\n      ],\n      [\n        \"▁graduat\",\n        -12.547077178955078\n      ],\n      [\n        \"Kü\",\n        -12.547094345092773\n      ],\n      [\n        \"▁quotation\",\n        -12.547157287597656\n      ],\n      [\n        \"/11\",\n        -12.54716968536377\n      ],\n      [\n        \"lutter\",\n        -12.547415733337402\n      ],\n      [\n        \"▁dice\",\n        -12.547467231750488\n      ],\n      [\n        \"modal\",\n        -12.547749519348145\n      ],\n      [\n        \"ggling\",\n        -12.547819137573242\n      ],\n      [\n        \"▁considér\",\n        -12.547986030578613\n      ],\n      [\n        \"▁Insel\",\n        -12.548097610473633\n      ],\n      [\n        \"▁Database\",\n        -12.5483980178833\n      ],\n      [\n        \"icism\",\n        -12.548508644104004\n      ],\n      [\n        \"▁quarterly\",\n        -12.54851245880127\n      ],\n      [\n        \"▁formule\",\n        -12.548558235168457\n      ],\n      [\n        \"▁renouvel\",\n        -12.54873275756836\n      ],\n      [\n        \"▁Treasure\",\n        -12.548737525939941\n      ],\n      [\n        \"▁1962\",\n        -12.548844337463379\n      ],\n      [\n        \"▁republic\",\n        -12.549111366271973\n      ],\n      [\n        \"▁États\",\n        -12.549254417419434\n      ],\n      [\n        \"▁salut\",\n        -12.549356460571289\n      ],\n      [\n        \"HK\",\n        -12.54941463470459\n      ],\n      [\n        \"▁Bali\",\n        -12.549427032470703\n      ],\n      [\n        \"▁Rechnung\",\n        -12.549447059631348\n      ],\n      [\n        \"fruit\",\n        -12.54945182800293\n      ],\n      [\n        \"lays\",\n        -12.549467086791992\n      ],\n      [\n        \"LAS\",\n        -12.54951000213623\n      ],\n      [\n        \"inclin\",\n        -12.549708366394043\n      ],\n      [\n        \"▁Cré\",\n        -12.549813270568848\n      ],\n      [\n        \"▁compt\",\n        -12.54985237121582\n      ],\n      [\n        \"țiilor\",\n        -12.550056457519531\n      ],\n      [\n        \"heft\",\n        -12.550111770629883\n      ],\n      [\n        \"▁Comisi\",\n        -12.55024242401123\n      ],\n      [\n        \"▁Nurse\",\n        -12.550516128540039\n      ],\n      [\n        \"loid\",\n        -12.550540924072266\n      ],\n      [\n        \"grove\",\n        -12.550761222839355\n      ],\n      [\n        \"▁Copy\",\n        -12.550867080688477\n      ],\n      [\n        \"▁Kampf\",\n        -12.550873756408691\n      ],\n      [\n        \"izată\",\n        -12.550945281982422\n      ],\n      [\n        \"würdig\",\n        -12.551244735717773\n      ],\n      [\n        \"-2018\",\n        -12.551305770874023\n      ],\n      [\n        \"ozo\",\n        -12.551350593566895\n      ],\n      [\n        \"▁integriert\",\n        -12.551397323608398\n      ],\n      [\n        \"▁réunion\",\n        -12.551448822021484\n      ],\n      [\n        \"▁mică\",\n        -12.551520347595215\n      ],\n      [\n        \"▁Chau\",\n        -12.551595687866211\n      ],\n      [\n        \"▁allegations\",\n        -12.551626205444336\n      ],\n      [\n        \"▁shaping\",\n        -12.551640510559082\n      ],\n      [\n        \"▁transcription\",\n        -12.551671981811523\n      ],\n      [\n        \"▁Monica\",\n        -12.551711082458496\n      ],\n      [\n        \"▁torture\",\n        -12.551795959472656\n      ],\n      [\n        \"▁cooperative\",\n        -12.551962852478027\n      ],\n      [\n        \"▁invité\",\n        -12.551987648010254\n      ],\n      [\n        \"▁bamboo\",\n        -12.552204132080078\n      ],\n      [\n        \"▁Thinking\",\n        -12.55232048034668\n      ],\n      [\n        \"▁gratis\",\n        -12.552392959594727\n      ],\n      [\n        \"117\",\n        -12.55267333984375\n      ],\n      [\n        \"renz\",\n        -12.55279541015625\n      ],\n      [\n        \"▁Fußball\",\n        -12.552823066711426\n      ],\n      [\n        \"▁Gram\",\n        -12.552873611450195\n      ],\n      [\n        \"sprung\",\n        -12.55290412902832\n      ],\n      [\n        \"▁Schluss\",\n        -12.55308723449707\n      ],\n      [\n        \"▁Diploma\",\n        -12.553345680236816\n      ],\n      [\n        \"▁apparatus\",\n        -12.553363800048828\n      ],\n      [\n        \"notably\",\n        -12.553483963012695\n      ],\n      [\n        \"▁exercit\",\n        -12.553532600402832\n      ],\n      [\n        \"ământ\",\n        -12.553536415100098\n      ],\n      [\n        \"▁masses\",\n        -12.553610801696777\n      ],\n      [\n        \"▁preuve\",\n        -12.553642272949219\n      ],\n      [\n        \"great\",\n        -12.553754806518555\n      ],\n      [\n        \"▁Drink\",\n        -12.553792953491211\n      ],\n      [\n        \"islam\",\n        -12.553828239440918\n      ],\n      [\n        \"ARM\",\n        -12.553914070129395\n      ],\n      [\n        \"indre\",\n        -12.554404258728027\n      ],\n      [\n        \"DW\",\n        -12.554410934448242\n      ],\n      [\n        \"▁Flowers\",\n        -12.554500579833984\n      ],\n      [\n        \"▁pill\",\n        -12.554574966430664\n      ],\n      [\n        \"▁objectifs\",\n        -12.554594039916992\n      ],\n      [\n        \"▁Bezug\",\n        -12.554659843444824\n      ],\n      [\n        \"▁assumptions\",\n        -12.55466365814209\n      ],\n      [\n        \"▁vesti\",\n        -12.554742813110352\n      ],\n      [\n        \"route\",\n        -12.554783821105957\n      ],\n      [\n        \"▁Bangkok\",\n        -12.554815292358398\n      ],\n      [\n        \"▁seamlessly\",\n        -12.55482006072998\n      ],\n      [\n        \"config\",\n        -12.554882049560547\n      ],\n      [\n        \"▁username\",\n        -12.554890632629395\n      ],\n      [\n        \"unsure\",\n        -12.555024147033691\n      ],\n      [\n        \"▁poser\",\n        -12.555129051208496\n      ],\n      [\n        \"▁impozit\",\n        -12.555246353149414\n      ],\n      [\n        \"▁metode\",\n        -12.555333137512207\n      ],\n      [\n        \"defending\",\n        -12.555347442626953\n      ],\n      [\n        \"▁Nic\",\n        -12.555431365966797\n      ],\n      [\n        \"▁Vertrag\",\n        -12.555508613586426\n      ],\n      [\n        \"▁plăcut\",\n        -12.55552864074707\n      ],\n      [\n        \"▁Pou\",\n        -12.555675506591797\n      ],\n      [\n        \"UCH\",\n        -12.555785179138184\n      ],\n      [\n        \"▁Fein\",\n        -12.555903434753418\n      ],\n      [\n        \"reading\",\n        -12.555994987487793\n      ],\n      [\n        \"snip\",\n        -12.55604076385498\n      ],\n      [\n        \"▁Livre\",\n        -12.556401252746582\n      ],\n      [\n        \"lander\",\n        -12.556509971618652\n      ],\n      [\n        \"▁hydraulic\",\n        -12.556559562683105\n      ],\n      [\n        \"veiled\",\n        -12.556563377380371\n      ],\n      [\n        \"intr\",\n        -12.556609153747559\n      ],\n      [\n        \"▁Domnului\",\n        -12.556641578674316\n      ],\n      [\n        \"▁$0.\",\n        -12.556713104248047\n      ],\n      [\n        \"▁kilometers\",\n        -12.556753158569336\n      ],\n      [\n        \"spann\",\n        -12.556870460510254\n      ],\n      [\n        \"▁credibility\",\n        -12.556892395019531\n      ],\n      [\n        \"▁eBook\",\n        -12.556953430175781\n      ],\n      [\n        \"VERY\",\n        -12.556994438171387\n      ],\n      [\n        \"▁Charm\",\n        -12.557122230529785\n      ],\n      [\n        \"Evangeli\",\n        -12.557193756103516\n      ],\n      [\n        \"▁anderer\",\n        -12.557193756103516\n      ],\n      [\n        \"▁Entry\",\n        -12.557195663452148\n      ],\n      [\n        \"ffy\",\n        -12.5573148727417\n      ],\n      [\n        \"▁Exc\",\n        -12.55737018585205\n      ],\n      [\n        \"▁Omega\",\n        -12.557446479797363\n      ],\n      [\n        \"▁Funktionen\",\n        -12.557455062866211\n      ],\n      [\n        \"▁Gay\",\n        -12.55752182006836\n      ],\n      [\n        \"▁acht\",\n        -12.557608604431152\n      ],\n      [\n        \"colored\",\n        -12.557615280151367\n      ],\n      [\n        \"itude\",\n        -12.557634353637695\n      ],\n      [\n        \"▁accompagné\",\n        -12.557645797729492\n      ],\n      [\n        \"▁unfortunate\",\n        -12.557981491088867\n      ],\n      [\n        \"▁DIN\",\n        -12.558091163635254\n      ],\n      [\n        \"▁installment\",\n        -12.558252334594727\n      ],\n      [\n        \"▁indépendant\",\n        -12.558307647705078\n      ],\n      [\n        \"These\",\n        -12.558364868164062\n      ],\n      [\n        \"mitten\",\n        -12.558394432067871\n      ],\n      [\n        \"thank\",\n        -12.558470726013184\n      ],\n      [\n        \"▁Trek\",\n        -12.558721542358398\n      ],\n      [\n        \"üchte\",\n        -12.55874252319336\n      ],\n      [\n        \"▁cuir\",\n        -12.55875015258789\n      ],\n      [\n        \"▁turbo\",\n        -12.558802604675293\n      ],\n      [\n        \"Table\",\n        -12.558847427368164\n      ],\n      [\n        \"▁Extrem\",\n        -12.558866500854492\n      ],\n      [\n        \"▁advertisements\",\n        -12.55915355682373\n      ],\n      [\n        \"▁chaîne\",\n        -12.559206008911133\n      ],\n      [\n        \"▁corridor\",\n        -12.559473991394043\n      ],\n      [\n        \"▁râ\",\n        -12.559651374816895\n      ],\n      [\n        \"▁Opening\",\n        -12.559718132019043\n      ],\n      [\n        \"Get\",\n        -12.559747695922852\n      ],\n      [\n        \"▁storytelling\",\n        -12.55976676940918\n      ],\n      [\n        \"▁severity\",\n        -12.559771537780762\n      ],\n      [\n        \"4\\\"\",\n        -12.559956550598145\n      ],\n      [\n        \"▁parasit\",\n        -12.559967994689941\n      ],\n      [\n        \"angebot\",\n        -12.56002426147461\n      ],\n      [\n        \"Data\",\n        -12.56005573272705\n      ],\n      [\n        \"listen\",\n        -12.560086250305176\n      ],\n      [\n        \"▁vârstă\",\n        -12.560094833374023\n      ],\n      [\n        \"▁swallow\",\n        -12.56025505065918\n      ],\n      [\n        \"TRE\",\n        -12.560321807861328\n      ],\n      [\n        \"▁daunting\",\n        -12.56035041809082\n      ],\n      [\n        \"▁Oli\",\n        -12.560481071472168\n      ],\n      [\n        \"▁definitive\",\n        -12.56066608428955\n      ],\n      [\n        \"▁rezerva\",\n        -12.560667037963867\n      ],\n      [\n        \"/15\",\n        -12.560807228088379\n      ],\n      [\n        \"▁Landschaft\",\n        -12.560887336730957\n      ],\n      [\n        \"▁Automotive\",\n        -12.560934066772461\n      ],\n      [\n        \"▁convers\",\n        -12.56113052368164\n      ],\n      [\n        \"▁thru\",\n        -12.561139106750488\n      ],\n      [\n        \"▁Township\",\n        -12.561140060424805\n      ],\n      [\n        \"▁tilt\",\n        -12.56119441986084\n      ],\n      [\n        \"▁Criminal\",\n        -12.561227798461914\n      ],\n      [\n        \"riez\",\n        -12.561407089233398\n      ],\n      [\n        \"▁Parking\",\n        -12.561440467834473\n      ],\n      [\n        \"▁humanitarian\",\n        -12.561518669128418\n      ],\n      [\n        \"▁Kilometer\",\n        -12.561529159545898\n      ],\n      [\n        \"controlled\",\n        -12.56189250946045\n      ],\n      [\n        \"▁Klick\",\n        -12.561910629272461\n      ],\n      [\n        \"support\",\n        -12.56199836730957\n      ],\n      [\n        \"handed\",\n        -12.562005996704102\n      ],\n      [\n        \"ämtliche\",\n        -12.562104225158691\n      ],\n      [\n        \"access\",\n        -12.562232971191406\n      ],\n      [\n        \"▁eleven\",\n        -12.562232971191406\n      ],\n      [\n        \"▁ferry\",\n        -12.56229305267334\n      ],\n      [\n        \"zieren\",\n        -12.562620162963867\n      ],\n      [\n        \"▁Gebrauch\",\n        -12.562688827514648\n      ],\n      [\n        \"▁vigoare\",\n        -12.562689781188965\n      ],\n      [\n        \"MON\",\n        -12.562756538391113\n      ],\n      [\n        \"fox\",\n        -12.562886238098145\n      ],\n      [\n        \"bestimmten\",\n        -12.562894821166992\n      ],\n      [\n        \"▁Gur\",\n        -12.563069343566895\n      ],\n      [\n        \"▁Mannschaft\",\n        -12.563146591186523\n      ],\n      [\n        \"▁patrol\",\n        -12.563173294067383\n      ],\n      [\n        \"▁casă\",\n        -12.563376426696777\n      ],\n      [\n        \"▁Stories\",\n        -12.563380241394043\n      ],\n      [\n        \"▁robotic\",\n        -12.563425064086914\n      ],\n      [\n        \"tiri\",\n        -12.563576698303223\n      ],\n      [\n        \"gewiesen\",\n        -12.5636568069458\n      ],\n      [\n        \"CV\",\n        -12.563722610473633\n      ],\n      [\n        \"▁parinti\",\n        -12.563899040222168\n      ],\n      [\n        \"▁Owen\",\n        -12.563931465148926\n      ],\n      [\n        \"▁Katie\",\n        -12.564116477966309\n      ],\n      [\n        \"▁Combine\",\n        -12.56422233581543\n      ],\n      [\n        \"enfalls\",\n        -12.56442928314209\n      ],\n      [\n        \"▁financière\",\n        -12.564447402954102\n      ],\n      [\n        \"▁parliament\",\n        -12.564549446105957\n      ],\n      [\n        \"▁Weekend\",\n        -12.564616203308105\n      ],\n      [\n        \"▁Sonic\",\n        -12.564757347106934\n      ],\n      [\n        \"▁fixture\",\n        -12.56479263305664\n      ],\n      [\n        \"majorité\",\n        -12.56497573852539\n      ],\n      [\n        \"▁gravel\",\n        -12.565028190612793\n      ],\n      [\n        \"realizate\",\n        -12.565109252929688\n      ],\n      [\n        \"examining\",\n        -12.565113067626953\n      ],\n      [\n        \"▁grim\",\n        -12.5653657913208\n      ],\n      [\n        \"▁stabili\",\n        -12.565458297729492\n      ],\n      [\n        \"▁Wochenende\",\n        -12.56551456451416\n      ],\n      [\n        \"▁Hebrew\",\n        -12.565597534179688\n      ],\n      [\n        \"▁Harrison\",\n        -12.565799713134766\n      ],\n      [\n        \"▁boundary\",\n        -12.565858840942383\n      ],\n      [\n        \"40,000\",\n        -12.565902709960938\n      ],\n      [\n        \"▁Ambassador\",\n        -12.566208839416504\n      ],\n      [\n        \"▁scoate\",\n        -12.566229820251465\n      ],\n      [\n        \"ffin\",\n        -12.56623363494873\n      ],\n      [\n        \"▁crème\",\n        -12.566269874572754\n      ],\n      [\n        \"▁obiecte\",\n        -12.566378593444824\n      ],\n      [\n        \"enţa\",\n        -12.566763877868652\n      ],\n      [\n        \"▁subsidiary\",\n        -12.566797256469727\n      ],\n      [\n        \"▁Franco\",\n        -12.56688404083252\n      ],\n      [\n        \"▁visuel\",\n        -12.567042350769043\n      ],\n      [\n        \"▁uitat\",\n        -12.56708812713623\n      ],\n      [\n        \"▁revisit\",\n        -12.567122459411621\n      ],\n      [\n        \"▁Camping\",\n        -12.567150115966797\n      ],\n      [\n        \"▁Divine\",\n        -12.567304611206055\n      ],\n      [\n        \"4-6\",\n        -12.567323684692383\n      ],\n      [\n        \"▁Brandon\",\n        -12.567378997802734\n      ],\n      [\n        \"ма\",\n        -12.567450523376465\n      ],\n      [\n        \"sofern\",\n        -12.56745433807373\n      ],\n      [\n        \"ntweder\",\n        -12.56748104095459\n      ],\n      [\n        \"▁Shoot\",\n        -12.567618370056152\n      ],\n      [\n        \"étais\",\n        -12.56771183013916\n      ],\n      [\n        \"SPEC\",\n        -12.567930221557617\n      ],\n      [\n        \"▁dreapta\",\n        -12.567973136901855\n      ],\n      [\n        \"▁repaired\",\n        -12.568055152893066\n      ],\n      [\n        \"pyr\",\n        -12.568136215209961\n      ],\n      [\n        \"▁warranties\",\n        -12.568175315856934\n      ],\n      [\n        \"▁représent\",\n        -12.568263053894043\n      ],\n      [\n        \"ADE\",\n        -12.568293571472168\n      ],\n      [\n        \"▁selective\",\n        -12.56836223602295\n      ],\n      [\n        \"▁Banking\",\n        -12.568441390991211\n      ],\n      [\n        \"▁ergonomic\",\n        -12.568562507629395\n      ],\n      [\n        \"...”\",\n        -12.568602561950684\n      ],\n      [\n        \"▁willingness\",\n        -12.56867790222168\n      ],\n      [\n        \"isser\",\n        -12.568784713745117\n      ],\n      [\n        \"▁confection\",\n        -12.568961143493652\n      ],\n      [\n        \"admi\",\n        -12.569009780883789\n      ],\n      [\n        \"▁Freizeit\",\n        -12.569023132324219\n      ],\n      [\n        \"▁illuminate\",\n        -12.569151878356934\n      ],\n      [\n        \"▁Repeat\",\n        -12.569170951843262\n      ],\n      [\n        \"▁Zeitpunkt\",\n        -12.56933879852295\n      ],\n      [\n        \"claimed\",\n        -12.569439888000488\n      ],\n      [\n        \"▁erhältlich\",\n        -12.569480895996094\n      ],\n      [\n        \"▁paysage\",\n        -12.569537162780762\n      ],\n      [\n        \"▁Atom\",\n        -12.569890022277832\n      ],\n      [\n        \"▁Graf\",\n        -12.570086479187012\n      ],\n      [\n        \"▁firmware\",\n        -12.570093154907227\n      ],\n      [\n        \"▁Swift\",\n        -12.570180892944336\n      ],\n      [\n        \"▁cercetare\",\n        -12.57018756866455\n      ],\n      [\n        \"▁internațional\",\n        -12.570330619812012\n      ],\n      [\n        \"▁zombie\",\n        -12.570330619812012\n      ],\n      [\n        \"▁Spread\",\n        -12.57050609588623\n      ],\n      [\n        \"ECO\",\n        -12.57056999206543\n      ],\n      [\n        \"▁Gestaltung\",\n        -12.570758819580078\n      ],\n      [\n        \"rast\",\n        -12.570858001708984\n      ],\n      [\n        \"▁perfume\",\n        -12.5709228515625\n      ],\n      [\n        \"▁roulette\",\n        -12.570924758911133\n      ],\n      [\n        \"▁distill\",\n        -12.57096004486084\n      ],\n      [\n        \"▁Produkten\",\n        -12.570992469787598\n      ],\n      [\n        \"225\",\n        -12.571310043334961\n      ],\n      [\n        \"facing\",\n        -12.571371078491211\n      ],\n      [\n        \"▁paradigm\",\n        -12.571514129638672\n      ],\n      [\n        \"▁Rah\",\n        -12.571532249450684\n      ],\n      [\n        \"▁Renault\",\n        -12.571846961975098\n      ],\n      [\n        \"willig\",\n        -12.571864128112793\n      ],\n      [\n        \"▁Vet\",\n        -12.571890830993652\n      ],\n      [\n        \"▁reprezenta\",\n        -12.572126388549805\n      ],\n      [\n        \"stoß\",\n        -12.572185516357422\n      ],\n      [\n        \"▁Weiß\",\n        -12.5722074508667\n      ],\n      [\n        \"▁Solo\",\n        -12.572210311889648\n      ],\n      [\n        \"▁Jin\",\n        -12.572646141052246\n      ],\n      [\n        \"▁Brussels\",\n        -12.572693824768066\n      ],\n      [\n        \"▁Tournament\",\n        -12.572693824768066\n      ],\n      [\n        \"▁proced\",\n        -12.572710037231445\n      ],\n      [\n        \"▁Rabbi\",\n        -12.572835922241211\n      ],\n      [\n        \"▁gameplay\",\n        -12.572851181030273\n      ],\n      [\n        \"▁ATM\",\n        -12.572901725769043\n      ],\n      [\n        \"▁firearm\",\n        -12.572906494140625\n      ],\n      [\n        \"revealing\",\n        -12.573003768920898\n      ],\n      [\n        \"schütz\",\n        -12.57310676574707\n      ],\n      [\n        \"▁Absolutely\",\n        -12.573288917541504\n      ],\n      [\n        \"▁interference\",\n        -12.573433876037598\n      ],\n      [\n        \"▁Employment\",\n        -12.573558807373047\n      ],\n      [\n        \"▁chord\",\n        -12.57356071472168\n      ],\n      [\n        \"▁oportun\",\n        -12.573585510253906\n      ],\n      [\n        \"▁frontier\",\n        -12.573770523071289\n      ],\n      [\n        \"▁Lunch\",\n        -12.573891639709473\n      ],\n      [\n        \"bread\",\n        -12.57397174835205\n      ],\n      [\n        \"▁rendered\",\n        -12.573976516723633\n      ],\n      [\n        \"5.1\",\n        -12.573984146118164\n      ],\n      [\n        \"▁motif\",\n        -12.574066162109375\n      ],\n      [\n        \"▁Schlag\",\n        -12.574227333068848\n      ],\n      [\n        \"113\",\n        -12.574264526367188\n      ],\n      [\n        \"▁Deux\",\n        -12.574288368225098\n      ],\n      [\n        \"▁surplus\",\n        -12.574309349060059\n      ],\n      [\n        \"ALS\",\n        -12.574417114257812\n      ],\n      [\n        \"▁abortion\",\n        -12.574472427368164\n      ],\n      [\n        \"▁airplane\",\n        -12.574475288391113\n      ],\n      [\n        \"▁migrants\",\n        -12.574501991271973\n      ],\n      [\n        \"kli\",\n        -12.574539184570312\n      ],\n      [\n        \"▁crochet\",\n        -12.57454776763916\n      ],\n      [\n        \"fahrer\",\n        -12.574671745300293\n      ],\n      [\n        \"▁reconstruction\",\n        -12.57471752166748\n      ],\n      [\n        \"▁difer\",\n        -12.574752807617188\n      ],\n      [\n        \"▁Conserv\",\n        -12.57478141784668\n      ],\n      [\n        \"▁NSW\",\n        -12.57479476928711\n      ],\n      [\n        \"▁regim\",\n        -12.574844360351562\n      ],\n      [\n        \"▁Except\",\n        -12.574904441833496\n      ],\n      [\n        \"▁trage\",\n        -12.574978828430176\n      ],\n      [\n        \"▁Consiliul\",\n        -12.575058937072754\n      ],\n      [\n        \"▁Bedarf\",\n        -12.575064659118652\n      ],\n      [\n        \"▁additive\",\n        -12.5750732421875\n      ],\n      [\n        \"know\",\n        -12.5751371383667\n      ],\n      [\n        \"▁sauna\",\n        -12.57517147064209\n      ],\n      [\n        \"▁mortality\",\n        -12.575201034545898\n      ],\n      [\n        \"kräftig\",\n        -12.575358390808105\n      ],\n      [\n        \"▁Own\",\n        -12.575445175170898\n      ],\n      [\n        \"nzo\",\n        -12.575519561767578\n      ],\n      [\n        \"▁villes\",\n        -12.575543403625488\n      ],\n      [\n        \"▁recette\",\n        -12.575749397277832\n      ],\n      [\n        \"▁attacking\",\n        -12.575799942016602\n      ],\n      [\n        \"beruf\",\n        -12.57608699798584\n      ],\n      [\n        \"▁integrat\",\n        -12.57612419128418\n      ],\n      [\n        \"realizarea\",\n        -12.576201438903809\n      ],\n      [\n        \"▁exemption\",\n        -12.57628345489502\n      ],\n      [\n        \"GW\",\n        -12.576285362243652\n      ],\n      [\n        \"▁Nano\",\n        -12.576395034790039\n      ],\n      [\n        \"SCH\",\n        -12.576440811157227\n      ],\n      [\n        \"▁honesty\",\n        -12.576457023620605\n      ],\n      [\n        \"▁Arriv\",\n        -12.576515197753906\n      ],\n      [\n        \"▁gland\",\n        -12.576542854309082\n      ],\n      [\n        \"▁proactive\",\n        -12.576746940612793\n      ],\n      [\n        \"▁agile\",\n        -12.576837539672852\n      ],\n      [\n        \"▁kernel\",\n        -12.576844215393066\n      ],\n      [\n        \"▁nurture\",\n        -12.576860427856445\n      ],\n      [\n        \"▁Patent\",\n        -12.576963424682617\n      ],\n      [\n        \"▁excursi\",\n        -12.577189445495605\n      ],\n      [\n        \"pulsion\",\n        -12.577326774597168\n      ],\n      [\n        \"stellte\",\n        -12.577351570129395\n      ],\n      [\n        \"ständige\",\n        -12.577421188354492\n      ],\n      [\n        \"▁Rebecca\",\n        -12.577436447143555\n      ],\n      [\n        \"▁Securities\",\n        -12.577436447143555\n      ],\n      [\n        \"mètre\",\n        -12.577446937561035\n      ],\n      [\n        \"LOW\",\n        -12.577469825744629\n      ],\n      [\n        \"▁consilier\",\n        -12.577537536621094\n      ],\n      [\n        \"▁Architekt\",\n        -12.577733993530273\n      ],\n      [\n        \"▁china\",\n        -12.57777214050293\n      ],\n      [\n        \"älfte\",\n        -12.577778816223145\n      ],\n      [\n        \"▁Combin\",\n        -12.577795028686523\n      ],\n      [\n        \"480\",\n        -12.577999114990234\n      ],\n      [\n        \"liv\",\n        -12.578021049499512\n      ],\n      [\n        \"▁peur\",\n        -12.578067779541016\n      ],\n      [\n        \"keep\",\n        -12.57822322845459\n      ],\n      [\n        \"▁Verhalten\",\n        -12.578324317932129\n      ],\n      [\n        \"▁peek\",\n        -12.578446388244629\n      ],\n      [\n        \"▁dient\",\n        -12.578550338745117\n      ],\n      [\n        \"▁prevazut\",\n        -12.578625679016113\n      ],\n      [\n        \"Emmanuel\",\n        -12.57862663269043\n      ],\n      [\n        \"▁incidence\",\n        -12.57862663269043\n      ],\n      [\n        \"▁Framework\",\n        -12.578715324401855\n      ],\n      [\n        \"dass\",\n        -12.578816413879395\n      ],\n      [\n        \"artiste\",\n        -12.578874588012695\n      ],\n      [\n        \"▁Accept\",\n        -12.578971862792969\n      ],\n      [\n        \"▁plunge\",\n        -12.579073905944824\n      ],\n      [\n        \"chauff\",\n        -12.579118728637695\n      ],\n      [\n        \"▁guilt\",\n        -12.579156875610352\n      ],\n      [\n        \"▁senator\",\n        -12.57945442199707\n      ],\n      [\n        \"▁disable\",\n        -12.579776763916016\n      ],\n      [\n        \"▁partout\",\n        -12.579901695251465\n      ],\n      [\n        \"JC\",\n        -12.580045700073242\n      ],\n      [\n        \"▁Highly\",\n        -12.580150604248047\n      ],\n      [\n        \"▁beneficii\",\n        -12.58021068572998\n      ],\n      [\n        \"fibro\",\n        -12.580347061157227\n      ],\n      [\n        \"interpreted\",\n        -12.580550193786621\n      ],\n      [\n        \"▁genauso\",\n        -12.58056354522705\n      ],\n      [\n        \"▁basil\",\n        -12.580601692199707\n      ],\n      [\n        \"▁Angst\",\n        -12.580697059631348\n      ],\n      [\n        \"rzte\",\n        -12.580933570861816\n      ],\n      [\n        \"Master\",\n        -12.58112907409668\n      ],\n      [\n        \"▁french\",\n        -12.581324577331543\n      ],\n      [\n        \"▁Duration\",\n        -12.581343650817871\n      ],\n      [\n        \"HM\",\n        -12.581402778625488\n      ],\n      [\n        \"▁Bert\",\n        -12.581518173217773\n      ],\n      [\n        \"▁1963\",\n        -12.581534385681152\n      ],\n      [\n        \"▁warrior\",\n        -12.581604957580566\n      ],\n      [\n        \"2007\",\n        -12.581696510314941\n      ],\n      [\n        \"▁recycle\",\n        -12.581722259521484\n      ],\n      [\n        \"▁fertiliz\",\n        -12.581808090209961\n      ],\n      [\n        \"▁hatch\",\n        -12.581809997558594\n      ],\n      [\n        \"ISH\",\n        -12.581811904907227\n      ],\n      [\n        \"luft\",\n        -12.582321166992188\n      ],\n      [\n        \"▁crying\",\n        -12.582452774047852\n      ],\n      [\n        \"▁activist\",\n        -12.5824613571167\n      ],\n      [\n        \"schränkt\",\n        -12.582500457763672\n      ],\n      [\n        \"▁diff\",\n        -12.582500457763672\n      ],\n      [\n        \"▁Demand\",\n        -12.58262825012207\n      ],\n      [\n        \"▁transported\",\n        -12.582669258117676\n      ],\n      [\n        \"▁Remodel\",\n        -12.582686424255371\n      ],\n      [\n        \"▁Etats\",\n        -12.582704544067383\n      ],\n      [\n        \"ANI\",\n        -12.582777976989746\n      ],\n      [\n        \"▁spéciale\",\n        -12.582804679870605\n      ],\n      [\n        \"▁Konzert\",\n        -12.582805633544922\n      ],\n      [\n        \"▁Bedürfnisse\",\n        -12.58281135559082\n      ],\n      [\n        \"▁overlooked\",\n        -12.582864761352539\n      ],\n      [\n        \"▁cutter\",\n        -12.582974433898926\n      ],\n      [\n        \"klär\",\n        -12.58311939239502\n      ],\n      [\n        \"▁Materialien\",\n        -12.583135604858398\n      ],\n      [\n        \"▁gewisse\",\n        -12.583388328552246\n      ],\n      [\n        \"bull\",\n        -12.583499908447266\n      ],\n      [\n        \"Good\",\n        -12.583513259887695\n      ],\n      [\n        \"Gig\",\n        -12.583616256713867\n      ],\n      [\n        \"Logic\",\n        -12.583736419677734\n      ],\n      [\n        \"▁Schlaf\",\n        -12.583970069885254\n      ],\n      [\n        \"▁Yankee\",\n        -12.583996772766113\n      ],\n      [\n        \"▁Batman\",\n        -12.584020614624023\n      ],\n      [\n        \"▁funcție\",\n        -12.584166526794434\n      ],\n      [\n        \"▁partenariat\",\n        -12.584294319152832\n      ],\n      [\n        \"▁Antrag\",\n        -12.584348678588867\n      ],\n      [\n        \"▁Pill\",\n        -12.584519386291504\n      ],\n      [\n        \"▁tram\",\n        -12.584637641906738\n      ],\n      [\n        \"▁Minor\",\n        -12.58465576171875\n      ],\n      [\n        \"pertaining\",\n        -12.584678649902344\n      ],\n      [\n        \"▁apropiere\",\n        -12.584843635559082\n      ],\n      [\n        \"▁Barack\",\n        -12.584965705871582\n      ],\n      [\n        \"schön\",\n        -12.585174560546875\n      ],\n      [\n        \"▁Sandy\",\n        -12.585182189941406\n      ],\n      [\n        \"kilometre\",\n        -12.585192680358887\n      ],\n      [\n        \"▁diy\",\n        -12.585234642028809\n      ],\n      [\n        \"▁1966\",\n        -12.585453987121582\n      ],\n      [\n        \"gelassen\",\n        -12.585485458374023\n      ],\n      [\n        \"▁Trial\",\n        -12.585592269897461\n      ],\n      [\n        \"▁Bauer\",\n        -12.585603713989258\n      ],\n      [\n        \"▁assumption\",\n        -12.585648536682129\n      ],\n      [\n        \"birth\",\n        -12.585668563842773\n      ],\n      [\n        \"rechnen\",\n        -12.585861206054688\n      ],\n      [\n        \"▁meci\",\n        -12.585867881774902\n      ],\n      [\n        \"▁gloss\",\n        -12.585906982421875\n      ],\n      [\n        \"▁sewer\",\n        -12.58593463897705\n      ],\n      [\n        \"▁Stimme\",\n        -12.585955619812012\n      ],\n      [\n        \"▁Fortune\",\n        -12.585967063903809\n      ],\n      [\n        \"▁Lösungen\",\n        -12.586007118225098\n      ],\n      [\n        \"▁impresi\",\n        -12.586074829101562\n      ],\n      [\n        \"schlaf\",\n        -12.586089134216309\n      ],\n      [\n        \"prüfung\",\n        -12.586097717285156\n      ],\n      [\n        \"▁instalat\",\n        -12.586198806762695\n      ],\n      [\n        \"▁picturesque\",\n        -12.586233139038086\n      ],\n      [\n        \"vait\",\n        -12.586240768432617\n      ],\n      [\n        \"8.1\",\n        -12.58629035949707\n      ],\n      [\n        \"▁călători\",\n        -12.586392402648926\n      ],\n      [\n        \"▁dix\",\n        -12.586400032043457\n      ],\n      [\n        \"▁furnished\",\n        -12.586411476135254\n      ],\n      [\n        \"▁dolari\",\n        -12.586445808410645\n      ],\n      [\n        \"▁regener\",\n        -12.586562156677246\n      ],\n      [\n        \"▁astazi\",\n        -12.586621284484863\n      ],\n      [\n        \"▁Sprach\",\n        -12.586750030517578\n      ],\n      [\n        \"delà\",\n        -12.586846351623535\n      ],\n      [\n        \"avec\",\n        -12.58694076538086\n      ],\n      [\n        \"▁Buddhist\",\n        -12.586990356445312\n      ],\n      [\n        \"▁alphabet\",\n        -12.586990356445312\n      ],\n      [\n        \"▁berichtet\",\n        -12.587201118469238\n      ],\n      [\n        \"ideally\",\n        -12.587209701538086\n      ],\n      [\n        \"▁annuel\",\n        -12.587421417236328\n      ],\n      [\n        \"▁laughing\",\n        -12.587532997131348\n      ],\n      [\n        \"▁Zustand\",\n        -12.587639808654785\n      ],\n      [\n        \"cini\",\n        -12.587692260742188\n      ],\n      [\n        \"solid\",\n        -12.587724685668945\n      ],\n      [\n        \"▁Broker\",\n        -12.587868690490723\n      ],\n      [\n        \"▁developmental\",\n        -12.5879545211792\n      ],\n      [\n        \"▁Summary\",\n        -12.588191032409668\n      ],\n      [\n        \"▁Trinity\",\n        -12.58819580078125\n      ],\n      [\n        \"▁sucre\",\n        -12.58821964263916\n      ],\n      [\n        \"▁sandal\",\n        -12.588231086730957\n      ],\n      [\n        \"PEN\",\n        -12.588274955749512\n      ],\n      [\n        \"gewinn\",\n        -12.588486671447754\n      ],\n      [\n        \"olé\",\n        -12.588555335998535\n      ],\n      [\n        \"matric\",\n        -12.58865737915039\n      ],\n      [\n        \"xton\",\n        -12.588695526123047\n      ],\n      [\n        \"werten\",\n        -12.588740348815918\n      ],\n      [\n        \"▁Dust\",\n        -12.588765144348145\n      ],\n      [\n        \"▁Journey\",\n        -12.588791847229004\n      ],\n      [\n        \"▁Rush\",\n        -12.588793754577637\n      ],\n      [\n        \"▁NCAA\",\n        -12.588839530944824\n      ],\n      [\n        \"▁allgemeine\",\n        -12.588926315307617\n      ],\n      [\n        \"▁Universe\",\n        -12.589007377624512\n      ],\n      [\n        \"▁connais\",\n        -12.589099884033203\n      ],\n      [\n        \"▁quantité\",\n        -12.58912467956543\n      ],\n      [\n        \"▁Kab\",\n        -12.589150428771973\n      ],\n      [\n        \"▁purse\",\n        -12.589150428771973\n      ],\n      [\n        \"Health\",\n        -12.589210510253906\n      ],\n      [\n        \"▁apărut\",\n        -12.589288711547852\n      ],\n      [\n        \"▁bypass\",\n        -12.589313507080078\n      ],\n      [\n        \"pronounced\",\n        -12.58936595916748\n      ],\n      [\n        \"▁magnitude\",\n        -12.589393615722656\n      ],\n      [\n        \"▁Walmart\",\n        -12.589394569396973\n      ],\n      [\n        \"ède\",\n        -12.589409828186035\n      ],\n      [\n        \"▁serum\",\n        -12.589590072631836\n      ],\n      [\n        \"▁baseline\",\n        -12.589765548706055\n      ],\n      [\n        \"STER\",\n        -12.589932441711426\n      ],\n      [\n        \"▁ONLY\",\n        -12.590052604675293\n      ],\n      [\n        \"▁individuell\",\n        -12.590086936950684\n      ],\n      [\n        \"▁Ghi\",\n        -12.590139389038086\n      ],\n      [\n        \"▁Ruby\",\n        -12.59020709991455\n      ],\n      [\n        \"▁Chal\",\n        -12.590241432189941\n      ],\n      [\n        \"▁Vier\",\n        -12.590261459350586\n      ],\n      [\n        \"5.0\",\n        -12.5903902053833\n      ],\n      [\n        \"▁fog\",\n        -12.590519905090332\n      ],\n      [\n        \"esel\",\n        -12.590557098388672\n      ],\n      [\n        \"▁Python\",\n        -12.590598106384277\n      ],\n      [\n        \"▁urmează\",\n        -12.590608596801758\n      ],\n      [\n        \"▁trustworthy\",\n        -12.590639114379883\n      ],\n      [\n        \"hört\",\n        -12.590729713439941\n      ],\n      [\n        \"▁tâche\",\n        -12.59078311920166\n      ],\n      [\n        \"Patri\",\n        -12.590799331665039\n      ],\n      [\n        \"▁grind\",\n        -12.590928077697754\n      ],\n      [\n        \"▁Raven\",\n        -12.590934753417969\n      ],\n      [\n        \"▁poursuiv\",\n        -12.590951919555664\n      ],\n      [\n        \"▁simpli\",\n        -12.591140747070312\n      ],\n      [\n        \"▁echo\",\n        -12.591165542602539\n      ],\n      [\n        \"▁Attention\",\n        -12.591313362121582\n      ],\n      [\n        \"Against\",\n        -12.591402053833008\n      ],\n      [\n        \"GET\",\n        -12.59148120880127\n      ],\n      [\n        \"▁turistic\",\n        -12.591535568237305\n      ],\n      [\n        \"▁tenure\",\n        -12.59158992767334\n      ],\n      [\n        \"▁alimentaire\",\n        -12.591651916503906\n      ],\n      [\n        \"Who\",\n        -12.59172248840332\n      ],\n      [\n        \"▁ändern\",\n        -12.591729164123535\n      ],\n      [\n        \"▁rebound\",\n        -12.591778755187988\n      ],\n      [\n        \"grenze\",\n        -12.591849327087402\n      ],\n      [\n        \"▁Fame\",\n        -12.592093467712402\n      ],\n      [\n        \"▁Kick\",\n        -12.592215538024902\n      ],\n      [\n        \"▁Detail\",\n        -12.59228801727295\n      ],\n      [\n        \"▁Push\",\n        -12.592308044433594\n      ],\n      [\n        \"production\",\n        -12.592430114746094\n      ],\n      [\n        \"▁Candidates\",\n        -12.59244441986084\n      ],\n      [\n        \"▁reușit\",\n        -12.592484474182129\n      ],\n      [\n        \"istischen\",\n        -12.592525482177734\n      ],\n      [\n        \"lassung\",\n        -12.592649459838867\n      ],\n      [\n        \"▁Hann\",\n        -12.592713356018066\n      ],\n      [\n        \"espère\",\n        -12.592965126037598\n      ],\n      [\n        \"▁vergessen\",\n        -12.593008041381836\n      ],\n      [\n        \"▁smiling\",\n        -12.593010902404785\n      ],\n      [\n        \"▁devotion\",\n        -12.593016624450684\n      ],\n      [\n        \"▁pastry\",\n        -12.593071937561035\n      ],\n      [\n        \"Add\",\n        -12.593390464782715\n      ],\n      [\n        \"▁authorization\",\n        -12.593494415283203\n      ],\n      [\n        \"▁Suisse\",\n        -12.593568801879883\n      ],\n      [\n        \"▁Berkeley\",\n        -12.593611717224121\n      ],\n      [\n        \"▁Guild\",\n        -12.593660354614258\n      ],\n      [\n        \"▁choir\",\n        -12.593748092651367\n      ],\n      [\n        \"learning\",\n        -12.593802452087402\n      ],\n      [\n        \"▁Tanz\",\n        -12.593894004821777\n      ],\n      [\n        \"mardi\",\n        -12.594076156616211\n      ],\n      [\n        \"▁rezultatele\",\n        -12.594191551208496\n      ],\n      [\n        \"▁earrings\",\n        -12.594218254089355\n      ],\n      [\n        \"▁turbine\",\n        -12.594223976135254\n      ],\n      [\n        \"▁jeudi\",\n        -12.594284057617188\n      ],\n      [\n        \"terapie\",\n        -12.594576835632324\n      ],\n      [\n        \"regain\",\n        -12.59461498260498\n      ],\n      [\n        \"SET\",\n        -12.594643592834473\n      ],\n      [\n        \"▁Hände\",\n        -12.594681739807129\n      ],\n      [\n        \"▁Globe\",\n        -12.594683647155762\n      ],\n      [\n        \"frag\",\n        -12.594775199890137\n      ],\n      [\n        \"▁Treasury\",\n        -12.594820976257324\n      ],\n      [\n        \"▁hazardous\",\n        -12.594820976257324\n      ],\n      [\n        \"▁Fahrt\",\n        -12.594928741455078\n      ],\n      [\n        \"▁fulfilled\",\n        -12.594966888427734\n      ],\n      [\n        \"▁manga\",\n        -12.594987869262695\n      ],\n      [\n        \"▁composé\",\n        -12.595067977905273\n      ],\n      [\n        \"▁ABS\",\n        -12.595132827758789\n      ],\n      [\n        \"▁preced\",\n        -12.595197677612305\n      ],\n      [\n        \"▁beauté\",\n        -12.595233917236328\n      ],\n      [\n        \"▁interessant\",\n        -12.59526252746582\n      ],\n      [\n        \"▁lieber\",\n        -12.595324516296387\n      ],\n      [\n        \"▁Kö\",\n        -12.595378875732422\n      ],\n      [\n        \"EMS\",\n        -12.595410346984863\n      ],\n      [\n        \"FER\",\n        -12.595413208007812\n      ],\n      [\n        \"▁eure\",\n        -12.595427513122559\n      ],\n      [\n        \"▁plumber\",\n        -12.595427513122559\n      ],\n      [\n        \"Love\",\n        -12.595463752746582\n      ],\n      [\n        \"▁Marcus\",\n        -12.595635414123535\n      ],\n      [\n        \"▁registry\",\n        -12.595637321472168\n      ],\n      [\n        \"▁uncle\",\n        -12.595696449279785\n      ],\n      [\n        \"▁neuf\",\n        -12.595728874206543\n      ],\n      [\n        \"▁Fläche\",\n        -12.59575080871582\n      ],\n      [\n        \"▁restaur\",\n        -12.595815658569336\n      ],\n      [\n        \"▁noticeable\",\n        -12.595833778381348\n      ],\n      [\n        \"▁riches\",\n        -12.595871925354004\n      ],\n      [\n        \"occupy\",\n        -12.596031188964844\n      ],\n      [\n        \"▁hurricane\",\n        -12.596031188964844\n      ],\n      [\n        \"▁gespeichert\",\n        -12.596033096313477\n      ],\n      [\n        \"▁Bordeaux\",\n        -12.596039772033691\n      ],\n      [\n        \"▁Maj\",\n        -12.59637451171875\n      ],\n      [\n        \"Applied\",\n        -12.596439361572266\n      ],\n      [\n        \"▁compter\",\n        -12.596575736999512\n      ],\n      [\n        \"impact\",\n        -12.59663200378418\n      ],\n      [\n        \"▁Improve\",\n        -12.596758842468262\n      ],\n      [\n        \"▁Calif\",\n        -12.596832275390625\n      ],\n      [\n        \"▁desfășur\",\n        -12.596939086914062\n      ],\n      [\n        \"▁packaged\",\n        -12.597001075744629\n      ],\n      [\n        \"180\",\n        -12.59703540802002\n      ],\n      [\n        \"devenu\",\n        -12.597042083740234\n      ],\n      [\n        \"▁Battery\",\n        -12.597243309020996\n      ],\n      [\n        \"▁objection\",\n        -12.597254753112793\n      ],\n      [\n        \"▁anual\",\n        -12.597305297851562\n      ],\n      [\n        \"▁Landscape\",\n        -12.59731674194336\n      ],\n      [\n        \"IQ\",\n        -12.597403526306152\n      ],\n      [\n        \"grès\",\n        -12.597586631774902\n      ],\n      [\n        \"▁witnesses\",\n        -12.597750663757324\n      ],\n      [\n        \"enţial\",\n        -12.597764015197754\n      ],\n      [\n        \"▁plateau\",\n        -12.597779273986816\n      ],\n      [\n        \"▁bilete\",\n        -12.59783935546875\n      ],\n      [\n        \"▁Bronze\",\n        -12.59786605834961\n      ],\n      [\n        \"▁Kiss\",\n        -12.597946166992188\n      ],\n      [\n        \"▁Serge\",\n        -12.598093032836914\n      ],\n      [\n        \"atomic\",\n        -12.598145484924316\n      ],\n      [\n        \"▁renovated\",\n        -12.59817886352539\n      ],\n      [\n        \"player\",\n        -12.598212242126465\n      ],\n      [\n        \"▁dirig\",\n        -12.598291397094727\n      ],\n      [\n        \"▁Îm\",\n        -12.598296165466309\n      ],\n      [\n        \"▁plimb\",\n        -12.59843635559082\n      ],\n      [\n        \"▁ambassador\",\n        -12.598455429077148\n      ],\n      [\n        \"▁apropiat\",\n        -12.598455429077148\n      ],\n      [\n        \"▁adaug\",\n        -12.598602294921875\n      ],\n      [\n        \"ogenic\",\n        -12.59872055053711\n      ],\n      [\n        \"kämpfe\",\n        -12.598779678344727\n      ],\n      [\n        \"▁Hillary\",\n        -12.598907470703125\n      ],\n      [\n        \"yak\",\n        -12.598942756652832\n      ],\n      [\n        \"General\",\n        -12.59925365447998\n      ],\n      [\n        \"▁Zugang\",\n        -12.599400520324707\n      ],\n      [\n        \"▁fertil\",\n        -12.599457740783691\n      ],\n      [\n        \"incat\",\n        -12.599536895751953\n      ],\n      [\n        \"assessing\",\n        -12.599587440490723\n      ],\n      [\n        \"▁Cincinnati\",\n        -12.59967041015625\n      ],\n      [\n        \"▁convincing\",\n        -12.599685668945312\n      ],\n      [\n        \"sadly\",\n        -12.59974479675293\n      ],\n      [\n        \"kunde\",\n        -12.599801063537598\n      ],\n      [\n        \"ambul\",\n        -12.599913597106934\n      ],\n      [\n        \"▁familii\",\n        -12.599974632263184\n      ],\n      [\n        \"juri\",\n        -12.60007095336914\n      ],\n      [\n        \"ionen\",\n        -12.600102424621582\n      ],\n      [\n        \"▁Wirtschaft\",\n        -12.600130081176758\n      ],\n      [\n        \"contract\",\n        -12.600135803222656\n      ],\n      [\n        \"punem\",\n        -12.600151062011719\n      ],\n      [\n        \"handlung\",\n        -12.600394248962402\n      ],\n      [\n        \"▁fournir\",\n        -12.600455284118652\n      ],\n      [\n        \"▁Ambi\",\n        -12.600663185119629\n      ],\n      [\n        \"▁Isaac\",\n        -12.600663185119629\n      ],\n      [\n        \"▁praying\",\n        -12.6007719039917\n      ],\n      [\n        \"▁Italien\",\n        -12.600848197937012\n      ],\n      [\n        \"233\",\n        -12.600850105285645\n      ],\n      [\n        \"spawn\",\n        -12.600913047790527\n      ],\n      [\n        \"▁legii\",\n        -12.60092544555664\n      ],\n      [\n        \"▁zuvor\",\n        -12.601018905639648\n      ],\n      [\n        \"▁comune\",\n        -12.601030349731445\n      ],\n      [\n        \"official\",\n        -12.601165771484375\n      ],\n      [\n        \"144\",\n        -12.601290702819824\n      ],\n      [\n        \"izeaza\",\n        -12.601329803466797\n      ],\n      [\n        \"▁Keller\",\n        -12.601372718811035\n      ],\n      [\n        \"ORE\",\n        -12.601378440856934\n      ],\n      [\n        \"122\",\n        -12.601485252380371\n      ],\n      [\n        \"incurred\",\n        -12.60150146484375\n      ],\n      [\n        \"CHA\",\n        -12.601579666137695\n      ],\n      [\n        \"▁Herzen\",\n        -12.601590156555176\n      ],\n      [\n        \"▁reasoning\",\n        -12.6016263961792\n      ],\n      [\n        \"affaire\",\n        -12.601849555969238\n      ],\n      [\n        \"ooth\",\n        -12.601890563964844\n      ],\n      [\n        \"155\",\n        -12.601998329162598\n      ],\n      [\n        \"▁invented\",\n        -12.602113723754883\n      ],\n      [\n        \"▁Comun\",\n        -12.602140426635742\n      ],\n      [\n        \"zähl\",\n        -12.602179527282715\n      ],\n      [\n        \"geliefert\",\n        -12.602212905883789\n      ],\n      [\n        \"explorer\",\n        -12.602213859558105\n      ],\n      [\n        \"nect\",\n        -12.602326393127441\n      ],\n      [\n        \"▁mercredi\",\n        -12.602408409118652\n      ],\n      [\n        \"▁volonté\",\n        -12.602408409118652\n      ],\n      [\n        \"easy\",\n        -12.602453231811523\n      ],\n      [\n        \"▁feat\",\n        -12.602490425109863\n      ],\n      [\n        \"rented\",\n        -12.602580070495605\n      ],\n      [\n        \"▁converter\",\n        -12.602592468261719\n      ],\n      [\n        \"Verhältnis\",\n        -12.602713584899902\n      ],\n      [\n        \"▁Iceland\",\n        -12.602792739868164\n      ],\n      [\n        \"▁pretul\",\n        -12.602933883666992\n      ],\n      [\n        \"▁Vorstellung\",\n        -12.602960586547852\n      ],\n      [\n        \"▁hydrogen\",\n        -12.603096008300781\n      ],\n      [\n        \"▁pouvai\",\n        -12.603097915649414\n      ],\n      [\n        \"▁dawn\",\n        -12.603153228759766\n      ],\n      [\n        \"▁Georg\",\n        -12.603269577026367\n      ],\n      [\n        \"▁cautious\",\n        -12.603367805480957\n      ],\n      [\n        \"▁Pattern\",\n        -12.603464126586914\n      ],\n      [\n        \"▁Ox\",\n        -12.603602409362793\n      ],\n      [\n        \"▁decizie\",\n        -12.603676795959473\n      ],\n      [\n        \"REC\",\n        -12.603889465332031\n      ],\n      [\n        \"▁Mortgage\",\n        -12.60393238067627\n      ],\n      [\n        \"attributed\",\n        -12.603973388671875\n      ],\n      [\n        \"floor\",\n        -12.603992462158203\n      ],\n      [\n        \"▁Wichtig\",\n        -12.604207992553711\n      ],\n      [\n        \"enseignant\",\n        -12.604265213012695\n      ],\n      [\n        \"▁civilization\",\n        -12.604302406311035\n      ],\n      [\n        \"▁dispozitie\",\n        -12.60450553894043\n      ],\n      [\n        \"▁geographic\",\n        -12.604543685913086\n      ],\n      [\n        \"▁Kun\",\n        -12.604607582092285\n      ],\n      [\n        \"LIN\",\n        -12.604679107666016\n      ],\n      [\n        \"▁auzit\",\n        -12.604707717895508\n      ],\n      [\n        \"except\",\n        -12.604761123657227\n      ],\n      [\n        \"▁superbe\",\n        -12.604904174804688\n      ],\n      [\n        \"▁installé\",\n        -12.605000495910645\n      ],\n      [\n        \"▁Peninsula\",\n        -12.605154037475586\n      ],\n      [\n        \"▁norme\",\n        -12.605164527893066\n      ],\n      [\n        \"elul\",\n        -12.60517406463623\n      ],\n      [\n        \"▁Experten\",\n        -12.605256080627441\n      ],\n      [\n        \"expression\",\n        -12.605295181274414\n      ],\n      [\n        \"Christ\",\n        -12.605320930480957\n      ],\n      [\n        \"▁Fuel\",\n        -12.605369567871094\n      ],\n      [\n        \"▁muffin\",\n        -12.605485916137695\n      ],\n      [\n        \"▁lecteur\",\n        -12.605521202087402\n      ],\n      [\n        \"▁gifted\",\n        -12.605589866638184\n      ],\n      [\n        \"▁Japon\",\n        -12.605602264404297\n      ],\n      [\n        \"▁SSD\",\n        -12.605644226074219\n      ],\n      [\n        \"▁Calgary\",\n        -12.605765342712402\n      ],\n      [\n        \"▁hooked\",\n        -12.605876922607422\n      ],\n      [\n        \"▁Joan\",\n        -12.605896949768066\n      ],\n      [\n        \"▁tangible\",\n        -12.606083869934082\n      ],\n      [\n        \"FW\",\n        -12.606225967407227\n      ],\n      [\n        \"olli\",\n        -12.6062593460083\n      ],\n      [\n        \"▁Platinum\",\n        -12.606376647949219\n      ],\n      [\n        \"▁miniature\",\n        -12.606392860412598\n      ],\n      [\n        \"▁lump\",\n        -12.606608390808105\n      ],\n      [\n        \"ologische\",\n        -12.60689926147461\n      ],\n      [\n        \"▁Istanbul\",\n        -12.606987953186035\n      ],\n      [\n        \"▁Compar\",\n        -12.607060432434082\n      ],\n      [\n        \"tropic\",\n        -12.607256889343262\n      ],\n      [\n        \"KING\",\n        -12.607279777526855\n      ],\n      [\n        \"Präsident\",\n        -12.607297897338867\n      ],\n      [\n        \"▁fotografii\",\n        -12.607303619384766\n      ],\n      [\n        \"hoped\",\n        -12.607451438903809\n      ],\n      [\n        \"▁pâte\",\n        -12.607601165771484\n      ],\n      [\n        \"▁mercy\",\n        -12.60760498046875\n      ],\n      [\n        \"▁quiz\",\n        -12.607619285583496\n      ],\n      [\n        \"demonstrating\",\n        -12.607678413391113\n      ],\n      [\n        \"▁douce\",\n        -12.607832908630371\n      ],\n      [\n        \"▁Vest\",\n        -12.607841491699219\n      ],\n      [\n        \"▁Harvey\",\n        -12.6082181930542\n      ],\n      [\n        \"▁breit\",\n        -12.608227729797363\n      ],\n      [\n        \"▁Bereits\",\n        -12.608291625976562\n      ],\n      [\n        \"▁breakthrough\",\n        -12.608316421508789\n      ],\n      [\n        \"▁masterpiece\",\n        -12.608320236206055\n      ],\n      [\n        \"▁Chester\",\n        -12.60838794708252\n      ],\n      [\n        \"▁indiqué\",\n        -12.608451843261719\n      ],\n      [\n        \"hook\",\n        -12.60857105255127\n      ],\n      [\n        \"statutory\",\n        -12.608596801757812\n      ],\n      [\n        \"▁Direkt\",\n        -12.608617782592773\n      ],\n      [\n        \"▁specs\",\n        -12.608708381652832\n      ],\n      [\n        \"Drive\",\n        -12.608725547790527\n      ],\n      [\n        \"▁survivors\",\n        -12.608826637268066\n      ],\n      [\n        \"▁jackpot\",\n        -12.608840942382812\n      ],\n      [\n        \"▁garder\",\n        -12.608872413635254\n      ],\n      [\n        \"▁Geburtstag\",\n        -12.60887336730957\n      ],\n      [\n        \"145\",\n        -12.608963966369629\n      ],\n      [\n        \"▁Clay\",\n        -12.609028816223145\n      ],\n      [\n        \"▁WHO\",\n        -12.60906982421875\n      ],\n      [\n        \"▁Ellen\",\n        -12.609393119812012\n      ],\n      [\n        \"▁bonheur\",\n        -12.609440803527832\n      ],\n      [\n        \"▁hazards\",\n        -12.609440803527832\n      ],\n      [\n        \"▁Kaiser\",\n        -12.609488487243652\n      ],\n      [\n        \"▁tightly\",\n        -12.609506607055664\n      ],\n      [\n        \"Universitatea\",\n        -12.609529495239258\n      ],\n      [\n        \"▁rinse\",\n        -12.609533309936523\n      ],\n      [\n        \"▁passant\",\n        -12.609640121459961\n      ],\n      [\n        \"▁sânge\",\n        -12.609832763671875\n      ],\n      [\n        \"▁peuple\",\n        -12.60983657836914\n      ],\n      [\n        \"jungen\",\n        -12.609975814819336\n      ],\n      [\n        \"▁inappropriate\",\n        -12.610054969787598\n      ],\n      [\n        \"▁mitigate\",\n        -12.610066413879395\n      ],\n      [\n        \"MID\",\n        -12.610221862792969\n      ],\n      [\n        \"▁telecom\",\n        -12.610297203063965\n      ],\n      [\n        \"▁plaj\",\n        -12.610316276550293\n      ],\n      [\n        \"▁presupune\",\n        -12.610361099243164\n      ],\n      [\n        \"acco\",\n        -12.61038875579834\n      ],\n      [\n        \"expressing\",\n        -12.610654830932617\n      ],\n      [\n        \"▁Symphony\",\n        -12.61066722869873\n      ],\n      [\n        \"temperatur\",\n        -12.610710144042969\n      ],\n      [\n        \"▁activităţi\",\n        -12.610800743103027\n      ],\n      [\n        \"▁amended\",\n        -12.610847473144531\n      ],\n      [\n        \"▁rehab\",\n        -12.610909461975098\n      ],\n      [\n        \"▁sportiv\",\n        -12.611004829406738\n      ],\n      [\n        \"hotel\",\n        -12.611031532287598\n      ],\n      [\n        \"branche\",\n        -12.61103630065918\n      ],\n      [\n        \"▁Noch\",\n        -12.611079216003418\n      ],\n      [\n        \"▁1961\",\n        -12.611238479614258\n      ],\n      [\n        \"release\",\n        -12.611359596252441\n      ],\n      [\n        \"blaze\",\n        -12.611381530761719\n      ],\n      [\n        \"Adv\",\n        -12.61139965057373\n      ],\n      [\n        \"Line\",\n        -12.611671447753906\n      ],\n      [\n        \"▁financiare\",\n        -12.61184310913086\n      ],\n      [\n        \"▁chauffage\",\n        -12.611919403076172\n      ],\n      [\n        \"мо\",\n        -12.61192512512207\n      ],\n      [\n        \"schuhe\",\n        -12.612035751342773\n      ],\n      [\n        \"blé\",\n        -12.612040519714355\n      ],\n      [\n        \"▁Echo\",\n        -12.612468719482422\n      ],\n      [\n        \"▁remarks\",\n        -12.61253547668457\n      ],\n      [\n        \"scriu\",\n        -12.612629890441895\n      ],\n      [\n        \"Vir\",\n        -12.612701416015625\n      ],\n      [\n        \"War\",\n        -12.61271858215332\n      ],\n      [\n        \"atifs\",\n        -12.613006591796875\n      ],\n      [\n        \"RING\",\n        -12.613082885742188\n      ],\n      [\n        \"▁Instruction\",\n        -12.613150596618652\n      ],\n      [\n        \"▁verlassen\",\n        -12.613155364990234\n      ],\n      [\n        \"▁ergänz\",\n        -12.613234519958496\n      ],\n      [\n        \"▁Emil\",\n        -12.613248825073242\n      ],\n      [\n        \"▁empire\",\n        -12.613263130187988\n      ],\n      [\n        \"▁Einkauf\",\n        -12.613306999206543\n      ],\n      [\n        \"utigen\",\n        -12.613329887390137\n      ],\n      [\n        \"▁audition\",\n        -12.613390922546387\n      ],\n      [\n        \"travelled\",\n        -12.61347484588623\n      ],\n      [\n        \"ло\",\n        -12.613579750061035\n      ],\n      [\n        \"▁infinite\",\n        -12.613720893859863\n      ],\n      [\n        \"▁Lieblings\",\n        -12.613749504089355\n      ],\n      [\n        \"▁vân\",\n        -12.613754272460938\n      ],\n      [\n        \"▁spinning\",\n        -12.613778114318848\n      ],\n      [\n        \"converting\",\n        -12.614031791687012\n      ],\n      [\n        \"▁uncertain\",\n        -12.61415958404541\n      ],\n      [\n        \"restul\",\n        -12.614168167114258\n      ],\n      [\n        \"▁colourful\",\n        -12.61420726776123\n      ],\n      [\n        \"▁accountant\",\n        -12.614338874816895\n      ],\n      [\n        \"bourg\",\n        -12.614532470703125\n      ],\n      [\n        \"▁structuri\",\n        -12.614538192749023\n      ],\n      [\n        \"▁Booking\",\n        -12.61465835571289\n      ],\n      [\n        \"intéresse\",\n        -12.614683151245117\n      ],\n      [\n        \"▁coordinated\",\n        -12.614753723144531\n      ],\n      [\n        \"▁precaution\",\n        -12.61497688293457\n      ],\n      [\n        \"▁Cheese\",\n        -12.615015983581543\n      ],\n      [\n        \"▁surfing\",\n        -12.615192413330078\n      ],\n      [\n        \"▁souffr\",\n        -12.61524486541748\n      ],\n      [\n        \"▁Menu\",\n        -12.615447998046875\n      ],\n      [\n        \"▁arthritis\",\n        -12.615593910217285\n      ],\n      [\n        \"▁headphones\",\n        -12.615601539611816\n      ],\n      [\n        \"▁upgrading\",\n        -12.615602493286133\n      ],\n      [\n        \"▁apparel\",\n        -12.615653038024902\n      ],\n      [\n        \"▁Haushalt\",\n        -12.61572551727295\n      ],\n      [\n        \"▁Personally\",\n        -12.615815162658691\n      ],\n      [\n        \"▁insane\",\n        -12.615950584411621\n      ],\n      [\n        \"▁fonduri\",\n        -12.616083145141602\n      ],\n      [\n        \"▁entier\",\n        -12.616239547729492\n      ],\n      [\n        \"▁Herbst\",\n        -12.616264343261719\n      ],\n      [\n        \"▁cyclist\",\n        -12.616331100463867\n      ],\n      [\n        \"▁filmmaker\",\n        -12.616741180419922\n      ],\n      [\n        \"▁Portuguese\",\n        -12.616829872131348\n      ],\n      [\n        \"▁nominee\",\n        -12.616851806640625\n      ],\n      [\n        \"▁Yang\",\n        -12.616857528686523\n      ],\n      [\n        \"▁slate\",\n        -12.616943359375\n      ],\n      [\n        \"▁entièrement\",\n        -12.616974830627441\n      ],\n      [\n        \"▁Umgang\",\n        -12.617049217224121\n      ],\n      [\n        \"shifted\",\n        -12.617135047912598\n      ],\n      [\n        \"▁défaut\",\n        -12.617138862609863\n      ],\n      [\n        \"heiz\",\n        -12.617246627807617\n      ],\n      [\n        \"▁Seal\",\n        -12.617379188537598\n      ],\n      [\n        \"▁servicing\",\n        -12.617451667785645\n      ],\n      [\n        \"marketing\",\n        -12.617562294006348\n      ],\n      [\n        \"▁demandé\",\n        -12.617755889892578\n      ],\n      [\n        \"TING\",\n        -12.617841720581055\n      ],\n      [\n        \"▁modifier\",\n        -12.617907524108887\n      ],\n      [\n        \"lysis\",\n        -12.617966651916504\n      ],\n      [\n        \"▁suplimentare\",\n        -12.618117332458496\n      ],\n      [\n        \"OTHER\",\n        -12.618359565734863\n      ],\n      [\n        \"Graph\",\n        -12.618379592895508\n      ],\n      [\n        \"▁coincide\",\n        -12.618448257446289\n      ],\n      [\n        \"governed\",\n        -12.618598937988281\n      ],\n      [\n        \"▁locking\",\n        -12.618638038635254\n      ],\n      [\n        \"▁Properties\",\n        -12.618685722351074\n      ],\n      [\n        \"▁Panama\",\n        -12.61876392364502\n      ],\n      [\n        \"▁Coupe\",\n        -12.618846893310547\n      ],\n      [\n        \"songwriter\",\n        -12.618978500366211\n      ],\n      [\n        \"exhibited\",\n        -12.618988990783691\n      ],\n      [\n        \"▁semnificativ\",\n        -12.618995666503906\n      ],\n      [\n        \"▁purchaser\",\n        -12.619004249572754\n      ],\n      [\n        \"▁puff\",\n        -12.619097709655762\n      ],\n      [\n        \"Back\",\n        -12.619105339050293\n      ],\n      [\n        \"fragt\",\n        -12.61919116973877\n      ],\n      [\n        \"▁deputy\",\n        -12.619362831115723\n      ],\n      [\n        \"▁revien\",\n        -12.619556427001953\n      ],\n      [\n        \"▁Christine\",\n        -12.619558334350586\n      ],\n      [\n        \"▁Cities\",\n        -12.619573593139648\n      ],\n      [\n        \"▁Charakter\",\n        -12.61961555480957\n      ],\n      [\n        \"atteindre\",\n        -12.619625091552734\n      ],\n      [\n        \"▁fou\",\n        -12.619635581970215\n      ],\n      [\n        \"▁obligatoire\",\n        -12.619643211364746\n      ],\n      [\n        \"INA\",\n        -12.619791030883789\n      ],\n      [\n        \"etc\",\n        -12.6198148727417\n      ],\n      [\n        \"▁newborn\",\n        -12.620091438293457\n      ],\n      [\n        \"▁explicitly\",\n        -12.620116233825684\n      ],\n      [\n        \"simplest\",\n        -12.620203018188477\n      ],\n      [\n        \"▁plateforme\",\n        -12.62023639678955\n      ],\n      [\n        \"ordinate\",\n        -12.620291709899902\n      ],\n      [\n        \"displaying\",\n        -12.620346069335938\n      ],\n      [\n        \"▁messy\",\n        -12.620464324951172\n      ],\n      [\n        \"gespielt\",\n        -12.620466232299805\n      ],\n      [\n        \"▁electron\",\n        -12.62061882019043\n      ],\n      [\n        \"▁Dreh\",\n        -12.620796203613281\n      ],\n      [\n        \"▁ambient\",\n        -12.620976448059082\n      ],\n      [\n        \"340\",\n        -12.620979309082031\n      ],\n      [\n        \"▁directive\",\n        -12.62109375\n      ],\n      [\n        \"▁Vall\",\n        -12.621152877807617\n      ],\n      [\n        \"ookie\",\n        -12.621206283569336\n      ],\n      [\n        \"▁wasted\",\n        -12.621304512023926\n      ],\n      [\n        \"CIS\",\n        -12.621367454528809\n      ],\n      [\n        \"lude\",\n        -12.621378898620605\n      ],\n      [\n        \"rach\",\n        -12.621472358703613\n      ],\n      [\n        \"▁gasest\",\n        -12.62150764465332\n      ],\n      [\n        \"▁miros\",\n        -12.62150764465332\n      ],\n      [\n        \"transforming\",\n        -12.621536254882812\n      ],\n      [\n        \"▁Milwaukee\",\n        -12.621787071228027\n      ],\n      [\n        \"▁uncommon\",\n        -12.621789932250977\n      ],\n      [\n        \"▁tableau\",\n        -12.621841430664062\n      ],\n      [\n        \"geräte\",\n        -12.621952056884766\n      ],\n      [\n        \"ophil\",\n        -12.622139930725098\n      ],\n      [\n        \"▁Jeep\",\n        -12.62220287322998\n      ],\n      [\n        \"▁wreck\",\n        -12.622422218322754\n      ],\n      [\n        \"LAND\",\n        -12.622434616088867\n      ],\n      [\n        \"attach\",\n        -12.622566223144531\n      ],\n      [\n        \"▁Panther\",\n        -12.622634887695312\n      ],\n      [\n        \"9:30\",\n        -12.622777938842773\n      ],\n      [\n        \"▁induce\",\n        -12.622974395751953\n      ],\n      [\n        \"▁privest\",\n        -12.623006820678711\n      ],\n      [\n        \"Ident\",\n        -12.623047828674316\n      ],\n      [\n        \"▁illnesses\",\n        -12.623076438903809\n      ],\n      [\n        \"▁inhabitants\",\n        -12.623138427734375\n      ],\n      [\n        \"▁fehlen\",\n        -12.623357772827148\n      ],\n      [\n        \"obtenu\",\n        -12.623391151428223\n      ],\n      [\n        \"▁gegründet\",\n        -12.623655319213867\n      ],\n      [\n        \"ARA\",\n        -12.623711585998535\n      ],\n      [\n        \"3-2\",\n        -12.623835563659668\n      ],\n      [\n        \"▁milliards\",\n        -12.623968124389648\n      ],\n      [\n        \"▁Bü\",\n        -12.624001502990723\n      ],\n      [\n        \"▁angegeben\",\n        -12.624102592468262\n      ],\n      [\n        \"TUR\",\n        -12.624143600463867\n      ],\n      [\n        \"▁arab\",\n        -12.624166488647461\n      ],\n      [\n        \"▁Scientist\",\n        -12.624275207519531\n      ],\n      [\n        \"▁minut\",\n        -12.624394416809082\n      ],\n      [\n        \"▁beast\",\n        -12.624481201171875\n      ],\n      [\n        \"▁accidentally\",\n        -12.624573707580566\n      ],\n      [\n        \"WN\",\n        -12.624579429626465\n      ],\n      [\n        \"▁Ralph\",\n        -12.624588966369629\n      ],\n      [\n        \"hängt\",\n        -12.62462329864502\n      ],\n      [\n        \"▁Erik\",\n        -12.624639511108398\n      ],\n      [\n        \"▁différent\",\n        -12.624711990356445\n      ],\n      [\n        \"▁conformitate\",\n        -12.624842643737793\n      ],\n      [\n        \"thriving\",\n        -12.624900817871094\n      ],\n      [\n        \"▁Piece\",\n        -12.625123023986816\n      ],\n      [\n        \"plasm\",\n        -12.625152587890625\n      ],\n      [\n        \"▁erwarten\",\n        -12.62520980834961\n      ],\n      [\n        \"owski\",\n        -12.62523365020752\n      ],\n      [\n        \"prayed\",\n        -12.625293731689453\n      ],\n      [\n        \"three\",\n        -12.625542640686035\n      ],\n      [\n        \"▁soundtrack\",\n        -12.625651359558105\n      ],\n      [\n        \"guru\",\n        -12.625709533691406\n      ],\n      [\n        \"▁cracked\",\n        -12.625710487365723\n      ],\n      [\n        \"▁adh\",\n        -12.625823020935059\n      ],\n      [\n        \"▁maître\",\n        -12.625834465026855\n      ],\n      [\n        \"▁Oberfläche\",\n        -12.62585735321045\n      ],\n      [\n        \"▁crab\",\n        -12.625886917114258\n      ],\n      [\n        \"▁Foster\",\n        -12.625944137573242\n      ],\n      [\n        \"▁gemütlich\",\n        -12.626145362854004\n      ],\n      [\n        \"SIC\",\n        -12.626226425170898\n      ],\n      [\n        \"ième\",\n        -12.626298904418945\n      ],\n      [\n        \"▁Few\",\n        -12.626330375671387\n      ],\n      [\n        \"gérer\",\n        -12.626360893249512\n      ],\n      [\n        \"2006\",\n        -12.626456260681152\n      ],\n      [\n        \"cool\",\n        -12.626498222351074\n      ],\n      [\n        \"▁dispune\",\n        -12.626523971557617\n      ],\n      [\n        \"recevoir\",\n        -12.626577377319336\n      ],\n      [\n        \"▁Bak\",\n        -12.626585960388184\n      ],\n      [\n        \"▁steer\",\n        -12.62659740447998\n      ],\n      [\n        \"ICS\",\n        -12.626733779907227\n      ],\n      [\n        \"▁Brett\",\n        -12.626733779907227\n      ],\n      [\n        \"▁downside\",\n        -12.626751899719238\n      ],\n      [\n        \"▁residency\",\n        -12.62678050994873\n      ],\n      [\n        \"important\",\n        -12.626991271972656\n      ],\n      [\n        \"ubb\",\n        -12.627073287963867\n      ],\n      [\n        \"mony\",\n        -12.627259254455566\n      ],\n      [\n        \"▁leasing\",\n        -12.627341270446777\n      ],\n      [\n        \"▁Gir\",\n        -12.62735366821289\n      ],\n      [\n        \"▁Biology\",\n        -12.627364158630371\n      ],\n      [\n        \"▁Colin\",\n        -12.627463340759277\n      ],\n      [\n        \"▁complicat\",\n        -12.627775192260742\n      ],\n      [\n        \"▁regroup\",\n        -12.627899169921875\n      ],\n      [\n        \"SPA\",\n        -12.627950668334961\n      ],\n      [\n        \"▁Veranstaltungen\",\n        -12.627986907958984\n      ],\n      [\n        \"convicted\",\n        -12.628019332885742\n      ],\n      [\n        \"▁Wonderful\",\n        -12.628636360168457\n      ],\n      [\n        \"züge\",\n        -12.628799438476562\n      ],\n      [\n        \"yton\",\n        -12.628813743591309\n      ],\n      [\n        \"EMENT\",\n        -12.628887176513672\n      ],\n      [\n        \"▁bent\",\n        -12.62893009185791\n      ],\n      [\n        \"heben\",\n        -12.629231452941895\n      ],\n      [\n        \"▁Sustainable\",\n        -12.62926959991455\n      ],\n      [\n        \"▁Newcastle\",\n        -12.629276275634766\n      ],\n      [\n        \"mother\",\n        -12.629507064819336\n      ],\n      [\n        \"▁eighth\",\n        -12.629572868347168\n      ],\n      [\n        \"▁atmosfer\",\n        -12.629582405090332\n      ],\n      [\n        \"expériment\",\n        -12.629584312438965\n      ],\n      [\n        \"▁Interest\",\n        -12.629608154296875\n      ],\n      [\n        \"▁successes\",\n        -12.62964153289795\n      ],\n      [\n        \"▁preschool\",\n        -12.629802703857422\n      ],\n      [\n        \"▁Funeral\",\n        -12.629900932312012\n      ],\n      [\n        \"blast\",\n        -12.630083084106445\n      ],\n      [\n        \"▁dimensiuni\",\n        -12.630125999450684\n      ],\n      [\n        \"▁Dow\",\n        -12.630167007446289\n      ],\n      [\n        \"▁pulp\",\n        -12.63022518157959\n      ],\n      [\n        \"▁Heather\",\n        -12.630356788635254\n      ],\n      [\n        \"▁erstellen\",\n        -12.63044261932373\n      ],\n      [\n        \"locating\",\n        -12.630470275878906\n      ],\n      [\n        \"direct\",\n        -12.630475997924805\n      ],\n      [\n        \"▁tractor\",\n        -12.630494117736816\n      ],\n      [\n        \"growing\",\n        -12.630576133728027\n      ],\n      [\n        \"▁inventor\",\n        -12.630587577819824\n      ],\n      [\n        \"ASA\",\n        -12.63060188293457\n      ],\n      [\n        \"insta\",\n        -12.630732536315918\n      ],\n      [\n        \"yana\",\n        -12.63082504272461\n      ],\n      [\n        \"▁squash\",\n        -12.630839347839355\n      ],\n      [\n        \"▁Basketball\",\n        -12.630853652954102\n      ],\n      [\n        \"AMA\",\n        -12.631041526794434\n      ],\n      [\n        \"insel\",\n        -12.631093978881836\n      ],\n      [\n        \"▁Fisch\",\n        -12.631138801574707\n      ],\n      [\n        \"▁metaphor\",\n        -12.631221771240234\n      ],\n      [\n        \"TES\",\n        -12.631304740905762\n      ],\n      [\n        \"▁conduce\",\n        -12.631308555603027\n      ],\n      [\n        \"stehende\",\n        -12.631370544433594\n      ],\n      [\n        \"▁FAQ\",\n        -12.631475448608398\n      ],\n      [\n        \"▁bezeichnet\",\n        -12.631658554077148\n      ],\n      [\n        \"wendung\",\n        -12.631706237792969\n      ],\n      [\n        \"▁Commonwealth\",\n        -12.631776809692383\n      ],\n      [\n        \"▁bait\",\n        -12.631793975830078\n      ],\n      [\n        \"▁Umsetzung\",\n        -12.631834030151367\n      ],\n      [\n        \"▁Equi\",\n        -12.632063865661621\n      ],\n      [\n        \"▁validity\",\n        -12.632109642028809\n      ],\n      [\n        \"Off\",\n        -12.63222599029541\n      ],\n      [\n        \"▁produsul\",\n        -12.632314682006836\n      ],\n      [\n        \"▁sensory\",\n        -12.632363319396973\n      ],\n      [\n        \"▁Imperial\",\n        -12.632501602172852\n      ],\n      [\n        \"▁Dick\",\n        -12.632542610168457\n      ],\n      [\n        \"kampf\",\n        -12.632596969604492\n      ],\n      [\n        \"▁Arzt\",\n        -12.63267993927002\n      ],\n      [\n        \"▁Reason\",\n        -12.63267993927002\n      ],\n      [\n        \"ITS\",\n        -12.63270092010498\n      ],\n      [\n        \"URL\",\n        -12.632720947265625\n      ],\n      [\n        \"demonstrates\",\n        -12.632725715637207\n      ],\n      [\n        \"▁dépend\",\n        -12.632753372192383\n      ],\n      [\n        \"NAS\",\n        -12.632970809936523\n      ],\n      [\n        \"▁funcți\",\n        -12.633031845092773\n      ],\n      [\n        \"▁vulnerability\",\n        -12.633085250854492\n      ],\n      [\n        \"2.7\",\n        -12.633143424987793\n      ],\n      [\n        \"layered\",\n        -12.633152961730957\n      ],\n      [\n        \"escence\",\n        -12.633206367492676\n      ],\n      [\n        \"▁République\",\n        -12.633346557617188\n      ],\n      [\n        \"▁Lust\",\n        -12.633377075195312\n      ],\n      [\n        \"▁sute\",\n        -12.633381843566895\n      ],\n      [\n        \"▁autonomous\",\n        -12.633661270141602\n      ],\n      [\n        \"Biserica\",\n        -12.633662223815918\n      ],\n      [\n        \"▁Chuck\",\n        -12.633749961853027\n      ],\n      [\n        \"▁protéger\",\n        -12.6339750289917\n      ],\n      [\n        \"rrell\",\n        -12.634061813354492\n      ],\n      [\n        \"▁Schaden\",\n        -12.634062767028809\n      ],\n      [\n        \"prennent\",\n        -12.634100914001465\n      ],\n      [\n        \"maß\",\n        -12.6343412399292\n      ],\n      [\n        \"OV\",\n        -12.634453773498535\n      ],\n      [\n        \"▁Wake\",\n        -12.63450813293457\n      ],\n      [\n        \"produire\",\n        -12.634635925292969\n      ],\n      [\n        \"▁Elder\",\n        -12.634749412536621\n      ],\n      [\n        \"Max\",\n        -12.634839057922363\n      ],\n      [\n        \"▁Chemistry\",\n        -12.634918212890625\n      ],\n      [\n        \"▁gourmet\",\n        -12.634918212890625\n      ],\n      [\n        \"erri\",\n        -12.634967803955078\n      ],\n      [\n        \"ени\",\n        -12.635085105895996\n      ],\n      [\n        \"▁Gru\",\n        -12.635147094726562\n      ],\n      [\n        \"▁vorbit\",\n        -12.635408401489258\n      ],\n      [\n        \"▁precede\",\n        -12.635455131530762\n      ],\n      [\n        \"▁randomly\",\n        -12.635489463806152\n      ],\n      [\n        \"▁efecte\",\n        -12.63563060760498\n      ],\n      [\n        \"▁calatori\",\n        -12.635668754577637\n      ],\n      [\n        \"▁Poor\",\n        -12.635765075683594\n      ],\n      [\n        \"List\",\n        -12.635781288146973\n      ],\n      [\n        \"▁regula\",\n        -12.635964393615723\n      ],\n      [\n        \"▁organisé\",\n        -12.636028289794922\n      ],\n      [\n        \"Div\",\n        -12.636076927185059\n      ],\n      [\n        \"▁volunteering\",\n        -12.636423110961914\n      ],\n      [\n        \"▁horr\",\n        -12.636449813842773\n      ],\n      [\n        \"9.99\",\n        -12.636487007141113\n      ],\n      [\n        \"▁UPS\",\n        -12.636513710021973\n      ],\n      [\n        \"▁englez\",\n        -12.63652229309082\n      ],\n      [\n        \"▁Eden\",\n        -12.636523246765137\n      ],\n      [\n        \"GG\",\n        -12.63659954071045\n      ],\n      [\n        \"▁typing\",\n        -12.63664722442627\n      ],\n      [\n        \"Likewise\",\n        -12.636700630187988\n      ],\n      [\n        \"▁stabilize\",\n        -12.636737823486328\n      ],\n      [\n        \"physio\",\n        -12.636747360229492\n      ],\n      [\n        \"ми\",\n        -12.636785507202148\n      ],\n      [\n        \"▁protagonist\",\n        -12.636808395385742\n      ],\n      [\n        \"▁velvet\",\n        -12.636812210083008\n      ],\n      [\n        \"schrank\",\n        -12.636861801147461\n      ],\n      [\n        \"▁Allah\",\n        -12.63693618774414\n      ],\n      [\n        \"▁forefront\",\n        -12.636968612670898\n      ],\n      [\n        \"▁salaries\",\n        -12.637001037597656\n      ],\n      [\n        \"▁prediction\",\n        -12.637041091918945\n      ],\n      [\n        \"▁Advent\",\n        -12.637182235717773\n      ],\n      [\n        \"politik\",\n        -12.637280464172363\n      ],\n      [\n        \"▁Heimat\",\n        -12.637350082397461\n      ],\n      [\n        \"ducted\",\n        -12.637380599975586\n      ],\n      [\n        \"ASH\",\n        -12.637386322021484\n      ],\n      [\n        \"▁Mold\",\n        -12.637773513793945\n      ],\n      [\n        \"▁publi\",\n        -12.63784122467041\n      ],\n      [\n        \"▁Vil\",\n        -12.637892723083496\n      ],\n      [\n        \"▁stu\",\n        -12.637925148010254\n      ],\n      [\n        \"INTE\",\n        -12.638032913208008\n      ],\n      [\n        \"▁fave\",\n        -12.638151168823242\n      ],\n      [\n        \"▁grounded\",\n        -12.638175010681152\n      ],\n      [\n        \"▁Anything\",\n        -12.638184547424316\n      ],\n      [\n        \"vik\",\n        -12.638481140136719\n      ],\n      [\n        \"Bank\",\n        -12.63853645324707\n      ],\n      [\n        \"deserved\",\n        -12.638550758361816\n      ],\n      [\n        \"machen\",\n        -12.63874626159668\n      ],\n      [\n        \"▁rugged\",\n        -12.638751029968262\n      ],\n      [\n        \"▁Nest\",\n        -12.638901710510254\n      ],\n      [\n        \"▁profund\",\n        -12.639043807983398\n      ],\n      [\n        \"▁quantum\",\n        -12.639067649841309\n      ],\n      [\n        \"▁funcționa\",\n        -12.639118194580078\n      ],\n      [\n        \"klu\",\n        -12.639158248901367\n      ],\n      [\n        \"▁consulter\",\n        -12.63917350769043\n      ],\n      [\n        \"MED\",\n        -12.639286994934082\n      ],\n      [\n        \"▁câştig\",\n        -12.639334678649902\n      ],\n      [\n        \"▁săptămâni\",\n        -12.639334678649902\n      ],\n      [\n        \"questioned\",\n        -12.639517784118652\n      ],\n      [\n        \"▁Trop\",\n        -12.639530181884766\n      ],\n      [\n        \"▁convo\",\n        -12.639533042907715\n      ],\n      [\n        \"▁sparkling\",\n        -12.639533996582031\n      ],\n      [\n        \"▁specialise\",\n        -12.639566421508789\n      ],\n      [\n        \"▁pancake\",\n        -12.639726638793945\n      ],\n      [\n        \"habitude\",\n        -12.639727592468262\n      ],\n      [\n        \"phal\",\n        -12.640009880065918\n      ],\n      [\n        \"▁Roche\",\n        -12.640158653259277\n      ],\n      [\n        \"▁personalities\",\n        -12.640250205993652\n      ],\n      [\n        \"▁Venice\",\n        -12.640308380126953\n      ],\n      [\n        \"▁comerciale\",\n        -12.640379905700684\n      ],\n      [\n        \"▁wounded\",\n        -12.64075756072998\n      ],\n      [\n        \"▁oraş\",\n        -12.640864372253418\n      ],\n      [\n        \"▁Pepper\",\n        -12.641044616699219\n      ],\n      [\n        \"▁Tourist\",\n        -12.641094207763672\n      ],\n      [\n        \"▁Mull\",\n        -12.64116382598877\n      ],\n      [\n        \"▁dignity\",\n        -12.641234397888184\n      ],\n      [\n        \"▁Fixed\",\n        -12.641291618347168\n      ],\n      [\n        \"çant\",\n        -12.64130687713623\n      ],\n      [\n        \"▁spectator\",\n        -12.641402244567871\n      ],\n      [\n        \"▁somn\",\n        -12.641685485839844\n      ],\n      [\n        \"▁ständig\",\n        -12.641820907592773\n      ],\n      [\n        \"▁resilience\",\n        -12.641866683959961\n      ],\n      [\n        \"▁Malta\",\n        -12.642251014709473\n      ],\n      [\n        \"▁problemele\",\n        -12.642253875732422\n      ],\n      [\n        \"▁Martha\",\n        -12.642254829406738\n      ],\n      [\n        \"▁extern\",\n        -12.642267227172852\n      ],\n      [\n        \"embre\",\n        -12.642379760742188\n      ],\n      [\n        \"▁médical\",\n        -12.642526626586914\n      ],\n      [\n        \"fordern\",\n        -12.64256477355957\n      ],\n      [\n        \"nji\",\n        -12.642592430114746\n      ],\n      [\n        \"▁aboard\",\n        -12.642740249633789\n      ],\n      [\n        \"▁sidewalk\",\n        -12.642759323120117\n      ],\n      [\n        \"WIN\",\n        -12.642775535583496\n      ],\n      [\n        \"▁Bobby\",\n        -12.642842292785645\n      ],\n      [\n        \"▁umfangreiche\",\n        -12.642876625061035\n      ],\n      [\n        \"leid\",\n        -12.64292049407959\n      ],\n      [\n        \"▁compens\",\n        -12.642967224121094\n      ],\n      [\n        \"▁juge\",\n        -12.64299488067627\n      ],\n      [\n        \"gerufen\",\n        -12.64311408996582\n      ],\n      [\n        \"▁médicament\",\n        -12.643135070800781\n      ],\n      [\n        \"▁1918\",\n        -12.643155097961426\n      ],\n      [\n        \"▁blanche\",\n        -12.643163681030273\n      ],\n      [\n        \"▁pleasing\",\n        -12.643220901489258\n      ],\n      [\n        \"▁propria\",\n        -12.643471717834473\n      ],\n      [\n        \"ergebnisse\",\n        -12.643503189086914\n      ],\n      [\n        \"▁retrouv\",\n        -12.643571853637695\n      ],\n      [\n        \"urteil\",\n        -12.643592834472656\n      ],\n      [\n        \"▁Draft\",\n        -12.64361572265625\n      ],\n      [\n        \"▁concluzi\",\n        -12.643671035766602\n      ],\n      [\n        \"centralized\",\n        -12.643789291381836\n      ],\n      [\n        \"▁Hannah\",\n        -12.64382266998291\n      ],\n      [\n        \"grija\",\n        -12.64392375946045\n      ],\n      [\n        \"▁Exercise\",\n        -12.643972396850586\n      ],\n      [\n        \"RAL\",\n        -12.644001960754395\n      ],\n      [\n        \"creme\",\n        -12.64408016204834\n      ],\n      [\n        \"High\",\n        -12.644126892089844\n      ],\n      [\n        \"clude\",\n        -12.644131660461426\n      ],\n      [\n        \"Considering\",\n        -12.644208908081055\n      ],\n      [\n        \"▁Guarantee\",\n        -12.644404411315918\n      ],\n      [\n        \"▁cuptor\",\n        -12.644436836242676\n      ],\n      [\n        \"ivität\",\n        -12.64468002319336\n      ],\n      [\n        \"▁Southwest\",\n        -12.644882202148438\n      ],\n      [\n        \"▁vivant\",\n        -12.644890785217285\n      ],\n      [\n        \"Your\",\n        -12.64498519897461\n      ],\n      [\n        \"▁Stunde\",\n        -12.645003318786621\n      ],\n      [\n        \"▁Ethernet\",\n        -12.645040512084961\n      ],\n      [\n        \"angebote\",\n        -12.645078659057617\n      ],\n      [\n        \"▁Sage\",\n        -12.645271301269531\n      ],\n      [\n        \"▁Boeing\",\n        -12.645295143127441\n      ],\n      [\n        \"▁$300\",\n        -12.645381927490234\n      ],\n      [\n        \"2-4\",\n        -12.64546012878418\n      ],\n      [\n        \"▁nécessit\",\n        -12.645516395568848\n      ],\n      [\n        \"▁ferment\",\n        -12.645599365234375\n      ],\n      [\n        \"▁Anmeldung\",\n        -12.64567756652832\n      ],\n      [\n        \"▁exhausted\",\n        -12.645758628845215\n      ],\n      [\n        \"▁Schloss\",\n        -12.645772933959961\n      ],\n      [\n        \"▁Replacement\",\n        -12.645859718322754\n      ],\n      [\n        \"▁Aussi\",\n        -12.645933151245117\n      ],\n      [\n        \"jection\",\n        -12.646127700805664\n      ],\n      [\n        \"978\",\n        -12.64615535736084\n      ],\n      [\n        \"▁siège\",\n        -12.646258354187012\n      ],\n      [\n        \"crest\",\n        -12.646310806274414\n      ],\n      [\n        \"▁jumatate\",\n        -12.646312713623047\n      ],\n      [\n        \"effizient\",\n        -12.646317481994629\n      ],\n      [\n        \"▁colaborare\",\n        -12.6464262008667\n      ],\n      [\n        \"HQ\",\n        -12.646615028381348\n      ],\n      [\n        \"130\",\n        -12.646695137023926\n      ],\n      [\n        \"culaire\",\n        -12.646907806396484\n      ],\n      [\n        \"▁Jamaica\",\n        -12.646952629089355\n      ],\n      [\n        \"▁cardboard\",\n        -12.64731216430664\n      ],\n      [\n        \"▁technische\",\n        -12.64731502532959\n      ],\n      [\n        \"▁cereri\",\n        -12.647507667541504\n      ],\n      [\n        \"▁contradict\",\n        -12.647570610046387\n      ],\n      [\n        \"▁irrigation\",\n        -12.647586822509766\n      ],\n      [\n        \"Nume\",\n        -12.64765739440918\n      ],\n      [\n        \"▁Bier\",\n        -12.647714614868164\n      ],\n      [\n        \"▁livrare\",\n        -12.647903442382812\n      ],\n      [\n        \"▁reservoir\",\n        -12.647906303405762\n      ],\n      [\n        \"vâr\",\n        -12.648130416870117\n      ],\n      [\n        \"▁galben\",\n        -12.648213386535645\n      ],\n      [\n        \"▁Geneva\",\n        -12.648303985595703\n      ],\n      [\n        \"▁lightning\",\n        -12.648418426513672\n      ],\n      [\n        \"wished\",\n        -12.64842414855957\n      ],\n      [\n        \"▁Blind\",\n        -12.648481369018555\n      ],\n      [\n        \"Interested\",\n        -12.648499488830566\n      ],\n      [\n        \"▁Primări\",\n        -12.648627281188965\n      ],\n      [\n        \"anthropo\",\n        -12.648954391479492\n      ],\n      [\n        \"▁Transaction\",\n        -12.648961067199707\n      ],\n      [\n        \"▁marcat\",\n        -12.648971557617188\n      ],\n      [\n        \"▁gelegen\",\n        -12.649077415466309\n      ],\n      [\n        \"▁contemporain\",\n        -12.649182319641113\n      ],\n      [\n        \"▁politică\",\n        -12.649182319641113\n      ],\n      [\n        \"▁1948\",\n        -12.64928150177002\n      ],\n      [\n        \"▁Mik\",\n        -12.649287223815918\n      ],\n      [\n        \"▁preţ\",\n        -12.649310111999512\n      ],\n      [\n        \"moor\",\n        -12.649312973022461\n      ],\n      [\n        \"ANN\",\n        -12.649432182312012\n      ],\n      [\n        \"▁constructive\",\n        -12.649454116821289\n      ],\n      [\n        \"konzept\",\n        -12.649502754211426\n      ],\n      [\n        \"▁entendu\",\n        -12.649511337280273\n      ],\n      [\n        \"▁Genesis\",\n        -12.649541854858398\n      ],\n      [\n        \"arzt\",\n        -12.649581909179688\n      ],\n      [\n        \"▁Allgemein\",\n        -12.64970874786377\n      ],\n      [\n        \"▁Derby\",\n        -12.649725914001465\n      ],\n      [\n        \"Class\",\n        -12.649762153625488\n      ],\n      [\n        \"▁$12\",\n        -12.649770736694336\n      ],\n      [\n        \"▁Tube\",\n        -12.6498441696167\n      ],\n      [\n        \"▁Contribu\",\n        -12.649847030639648\n      ],\n      [\n        \"▁HAVE\",\n        -12.649860382080078\n      ],\n      [\n        \"▁oxide\",\n        -12.64986515045166\n      ],\n      [\n        \"▁producator\",\n        -12.649941444396973\n      ],\n      [\n        \"▁Bench\",\n        -12.650132179260254\n      ],\n      [\n        \"▁comprehend\",\n        -12.650139808654785\n      ],\n      [\n        \"▁Damen\",\n        -12.650494575500488\n      ],\n      [\n        \"▁Garant\",\n        -12.65056037902832\n      ],\n      [\n        \"▁disappointing\",\n        -12.650614738464355\n      ],\n      [\n        \"▁réalisée\",\n        -12.650693893432617\n      ],\n      [\n        \"▁comportement\",\n        -12.65072250366211\n      ],\n      [\n        \"▁clash\",\n        -12.650753021240234\n      ],\n      [\n        \"▁curry\",\n        -12.65076732635498\n      ],\n      [\n        \"▁Lebanon\",\n        -12.65078067779541\n      ],\n      [\n        \"▁Romaniei\",\n        -12.650784492492676\n      ],\n      [\n        \"▁reprise\",\n        -12.650840759277344\n      ],\n      [\n        \"▁perceive\",\n        -12.65095329284668\n      ],\n      [\n        \"▁weaknesses\",\n        -12.65101146697998\n      ],\n      [\n        \"▁aminti\",\n        -12.651057243347168\n      ],\n      [\n        \"▁Concern\",\n        -12.651103973388672\n      ],\n      [\n        \"shadow\",\n        -12.651310920715332\n      ],\n      [\n        \"▁basin\",\n        -12.651311874389648\n      ],\n      [\n        \"moral\",\n        -12.652063369750977\n      ],\n      [\n        \"▁Hughes\",\n        -12.652101516723633\n      ],\n      [\n        \"Psych\",\n        -12.652266502380371\n      ],\n      [\n        \"▁Lieferung\",\n        -12.65227222442627\n      ],\n      [\n        \"▁serrurier\",\n        -12.652379035949707\n      ],\n      [\n        \"ussi\",\n        -12.652386665344238\n      ],\n      [\n        \"▁timpului\",\n        -12.6524658203125\n      ],\n      [\n        \"üm\",\n        -12.652629852294922\n      ],\n      [\n        \"▁Vladimir\",\n        -12.652701377868652\n      ],\n      [\n        \"▁Jag\",\n        -12.65279483795166\n      ],\n      [\n        \"▁verific\",\n        -12.652849197387695\n      ],\n      [\n        \"▁Pru\",\n        -12.652894020080566\n      ],\n      [\n        \"▁Laut\",\n        -12.653285026550293\n      ],\n      [\n        \"ITA\",\n        -12.653287887573242\n      ],\n      [\n        \"usually\",\n        -12.653294563293457\n      ],\n      [\n        \"▁carrière\",\n        -12.65341854095459\n      ],\n      [\n        \"▁extracted\",\n        -12.653663635253906\n      ],\n      [\n        \"kultur\",\n        -12.653679847717285\n      ],\n      [\n        \"öpfe\",\n        -12.653932571411133\n      ],\n      [\n        \"▁rejection\",\n        -12.654016494750977\n      ],\n      [\n        \"▁Hydr\",\n        -12.654062271118164\n      ],\n      [\n        \"▁informaţii\",\n        -12.654098510742188\n      ],\n      [\n        \"▁tolerate\",\n        -12.654122352600098\n      ],\n      [\n        \"▁cinéma\",\n        -12.654302597045898\n      ],\n      [\n        \"traumatic\",\n        -12.654305458068848\n      ],\n      [\n        \"produkt\",\n        -12.654450416564941\n      ],\n      [\n        \"▁Contest\",\n        -12.654560089111328\n      ],\n      [\n        \"lotte\",\n        -12.654570579528809\n      ],\n      [\n        \"▁Pension\",\n        -12.65461254119873\n      ],\n      [\n        \"▁Advertising\",\n        -12.654623985290527\n      ],\n      [\n        \"▁payout\",\n        -12.654772758483887\n      ],\n      [\n        \"▁Amanda\",\n        -12.65481185913086\n      ],\n      [\n        \"Elect\",\n        -12.65485668182373\n      ],\n      [\n        \"▁interiorul\",\n        -12.654996871948242\n      ],\n      [\n        \"stay\",\n        -12.655348777770996\n      ],\n      [\n        \"▁feminine\",\n        -12.655352592468262\n      ],\n      [\n        \"▁întâmplă\",\n        -12.655437469482422\n      ],\n      [\n        \"▁insult\",\n        -12.65562915802002\n      ],\n      [\n        \"▁chocolat\",\n        -12.65567398071289\n      ],\n      [\n        \"▁noroc\",\n        -12.655750274658203\n      ],\n      [\n        \"▁centr\",\n        -12.655781745910645\n      ],\n      [\n        \"▁Bühne\",\n        -12.655858039855957\n      ],\n      [\n        \"mighty\",\n        -12.6558837890625\n      ],\n      [\n        \"▁Buddha\",\n        -12.655908584594727\n      ],\n      [\n        \"▁parental\",\n        -12.655997276306152\n      ],\n      [\n        \"storm\",\n        -12.656451225280762\n      ],\n      [\n        \"recurring\",\n        -12.6565523147583\n      ],\n      [\n        \"▁luxe\",\n        -12.656588554382324\n      ],\n      [\n        \"niște\",\n        -12.656728744506836\n      ],\n      [\n        \"cuit\",\n        -12.656839370727539\n      ],\n      [\n        \"▁ausgewählt\",\n        -12.656880378723145\n      ],\n      [\n        \"▁dumb\",\n        -12.657047271728516\n      ],\n      [\n        \"IPS\",\n        -12.657127380371094\n      ],\n      [\n        \"▁Thir\",\n        -12.65717887878418\n      ],\n      [\n        \"Definitely\",\n        -12.657195091247559\n      ],\n      [\n        \"▁hilarious\",\n        -12.657195091247559\n      ],\n      [\n        \"▁rainbow\",\n        -12.657231330871582\n      ],\n      [\n        \"▁Bravo\",\n        -12.657251358032227\n      ],\n      [\n        \"▁entstanden\",\n        -12.657259941101074\n      ],\n      [\n        \"itorul\",\n        -12.657269477844238\n      ],\n      [\n        \"▁prosperity\",\n        -12.657299041748047\n      ],\n      [\n        \"▁Bord\",\n        -12.657336235046387\n      ],\n      [\n        \"▁familiei\",\n        -12.657363891601562\n      ],\n      [\n        \"▁scade\",\n        -12.657425880432129\n      ],\n      [\n        \"wöhn\",\n        -12.657426834106445\n      ],\n      [\n        \"▁ingrediente\",\n        -12.65743637084961\n      ],\n      [\n        \"RAD\",\n        -12.657441139221191\n      ],\n      [\n        \"▁tăi\",\n        -12.657472610473633\n      ],\n      [\n        \"bours\",\n        -12.65747356414795\n      ],\n      [\n        \"ATI\",\n        -12.657540321350098\n      ],\n      [\n        \"▁Blake\",\n        -12.65761661529541\n      ],\n      [\n        \"▁Implement\",\n        -12.657712936401367\n      ],\n      [\n        \"▁Beziehung\",\n        -12.657838821411133\n      ],\n      [\n        \"finanz\",\n        -12.657953262329102\n      ],\n      [\n        \"intestin\",\n        -12.658513069152832\n      ],\n      [\n        \"ließen\",\n        -12.658535957336426\n      ],\n      [\n        \"▁récent\",\n        -12.658594131469727\n      ],\n      [\n        \"▁laminate\",\n        -12.658692359924316\n      ],\n      [\n        \"▁Hör\",\n        -12.65876579284668\n      ],\n      [\n        \"▁personnalisé\",\n        -12.658804893493652\n      ],\n      [\n        \"edel\",\n        -12.65890121459961\n      ],\n      [\n        \"▁advertisement\",\n        -12.658902168273926\n      ],\n      [\n        \"▁pinterest\",\n        -12.658921241760254\n      ],\n      [\n        \"185\",\n        -12.659058570861816\n      ],\n      [\n        \"identité\",\n        -12.65938949584961\n      ],\n      [\n        \"▁Brick\",\n        -12.659408569335938\n      ],\n      [\n        \"Glu\",\n        -12.65941047668457\n      ],\n      [\n        \"▁attendant\",\n        -12.659571647644043\n      ],\n      [\n        \"▁Flip\",\n        -12.659614562988281\n      ],\n      [\n        \"attracting\",\n        -12.659662246704102\n      ],\n      [\n        \"functional\",\n        -12.659703254699707\n      ],\n      [\n        \"conceived\",\n        -12.659772872924805\n      ],\n      [\n        \"▁summarize\",\n        -12.659773826599121\n      ],\n      [\n        \"adjusting\",\n        -12.659809112548828\n      ],\n      [\n        \"CAL\",\n        -12.660041809082031\n      ],\n      [\n        \"▁Operating\",\n        -12.660076141357422\n      ],\n      [\n        \"zzi\",\n        -12.66008472442627\n      ],\n      [\n        \"▁Rover\",\n        -12.6603364944458\n      ],\n      [\n        \"▁versuchen\",\n        -12.6603364944458\n      ],\n      [\n        \"▁articulate\",\n        -12.660600662231445\n      ],\n      [\n        \"▁privé\",\n        -12.660614013671875\n      ],\n      [\n        \"▁consequent\",\n        -12.660663604736328\n      ],\n      [\n        \"EAT\",\n        -12.660690307617188\n      ],\n      [\n        \"▁Marsh\",\n        -12.660696983337402\n      ],\n      [\n        \"▁teenage\",\n        -12.660717964172363\n      ],\n      [\n        \"▁Renaissance\",\n        -12.660740852355957\n      ],\n      [\n        \"▁furnizor\",\n        -12.660883903503418\n      ],\n      [\n        \"▁Desert\",\n        -12.660894393920898\n      ],\n      [\n        \"unicipiului\",\n        -12.66104793548584\n      ],\n      [\n        \"▁ulterior\",\n        -12.661065101623535\n      ],\n      [\n        \"▁Ebene\",\n        -12.661280632019043\n      ],\n      [\n        \"▁monkey\",\n        -12.661351203918457\n      ],\n      [\n        \"▁enclosed\",\n        -12.661389350891113\n      ],\n      [\n        \"▁profitability\",\n        -12.66139030456543\n      ],\n      [\n        \"▁Evolution\",\n        -12.661628723144531\n      ],\n      [\n        \"▁adica\",\n        -12.661670684814453\n      ],\n      [\n        \"▁Structure\",\n        -12.661709785461426\n      ],\n      [\n        \"▁primer\",\n        -12.661761283874512\n      ],\n      [\n        \"▁asigură\",\n        -12.662001609802246\n      ],\n      [\n        \"▁Manuel\",\n        -12.662220001220703\n      ],\n      [\n        \"polita\",\n        -12.662267684936523\n      ],\n      [\n        \"▁Portable\",\n        -12.662286758422852\n      ],\n      [\n        \"fecți\",\n        -12.662413597106934\n      ],\n      [\n        \"▁obscure\",\n        -12.662424087524414\n      ],\n      [\n        \"▁Atlas\",\n        -12.662436485290527\n      ],\n      [\n        \"fährt\",\n        -12.662679672241211\n      ],\n      [\n        \"▁clinician\",\n        -12.662837982177734\n      ],\n      [\n        \"fuhr\",\n        -12.66310977935791\n      ],\n      [\n        \"▁matériaux\",\n        -12.663113594055176\n      ],\n      [\n        \"écrire\",\n        -12.663142204284668\n      ],\n      [\n        \"▁suspicious\",\n        -12.6632080078125\n      ],\n      [\n        \"pore\",\n        -12.663263320922852\n      ],\n      [\n        \"▁outdated\",\n        -12.663304328918457\n      ],\n      [\n        \"▁Mädchen\",\n        -12.663328170776367\n      ],\n      [\n        \"rcis\",\n        -12.663420677185059\n      ],\n      [\n        \"nicht\",\n        -12.663463592529297\n      ],\n      [\n        \"holding\",\n        -12.663561820983887\n      ],\n      [\n        \"▁heavier\",\n        -12.66366195678711\n      ],\n      [\n        \"ezimal\",\n        -12.663960456848145\n      ],\n      [\n        \"▁silicone\",\n        -12.66397476196289\n      ],\n      [\n        \"punerea\",\n        -12.664108276367188\n      ],\n      [\n        \"▁begeistert\",\n        -12.664237976074219\n      ],\n      [\n        \"2004\",\n        -12.664283752441406\n      ],\n      [\n        \"▁predecessor\",\n        -12.664299011230469\n      ],\n      [\n        \"▁overlap\",\n        -12.664369583129883\n      ],\n      [\n        \"▁digging\",\n        -12.664376258850098\n      ],\n      [\n        \"▁Upgrade\",\n        -12.664407730102539\n      ],\n      [\n        \"▁interesat\",\n        -12.664543151855469\n      ],\n      [\n        \"▁spinach\",\n        -12.66456127166748\n      ],\n      [\n        \"▁politice\",\n        -12.664626121520996\n      ],\n      [\n        \"activity\",\n        -12.664831161499023\n      ],\n      [\n        \"▁Rating\",\n        -12.66484546661377\n      ],\n      [\n        \"▁serrure\",\n        -12.664846420288086\n      ],\n      [\n        \"▁tânăr\",\n        -12.664959907531738\n      ],\n      [\n        \"▁WHAT\",\n        -12.664970397949219\n      ],\n      [\n        \"▁railroad\",\n        -12.664989471435547\n      ],\n      [\n        \"▁avid\",\n        -12.665081024169922\n      ],\n      [\n        \"▁Sophie\",\n        -12.665084838867188\n      ],\n      [\n        \"preferably\",\n        -12.665173530578613\n      ],\n      [\n        \"▁Fourth\",\n        -12.665431022644043\n      ],\n      [\n        \"kommenden\",\n        -12.665452003479004\n      ],\n      [\n        \"QUI\",\n        -12.665478706359863\n      ],\n      [\n        \"lohn\",\n        -12.665505409240723\n      ],\n      [\n        \"▁promis\",\n        -12.665611267089844\n      ],\n      [\n        \"▁shrub\",\n        -12.665621757507324\n      ],\n      [\n        \"nummer\",\n        -12.66579818725586\n      ],\n      [\n        \"▁dinosaur\",\n        -12.665922164916992\n      ],\n      [\n        \"▁Lucky\",\n        -12.665937423706055\n      ],\n      [\n        \"relates\",\n        -12.666038513183594\n      ],\n      [\n        \"▁FROM\",\n        -12.666049003601074\n      ],\n      [\n        \"▁racism\",\n        -12.66610336303711\n      ],\n      [\n        \"physical\",\n        -12.66611385345459\n      ],\n      [\n        \"alcoholic\",\n        -12.666119575500488\n      ],\n      [\n        \"▁reef\",\n        -12.666126251220703\n      ],\n      [\n        \"▁centru\",\n        -12.66618824005127\n      ],\n      [\n        \"université\",\n        -12.66622257232666\n      ],\n      [\n        \"▁visage\",\n        -12.666232109069824\n      ],\n      [\n        \"ităţile\",\n        -12.666253089904785\n      ],\n      [\n        \"▁Gent\",\n        -12.666345596313477\n      ],\n      [\n        \"zugeben\",\n        -12.66643238067627\n      ],\n      [\n        \"▁paradise\",\n        -12.66646957397461\n      ],\n      [\n        \"fuel\",\n        -12.666505813598633\n      ],\n      [\n        \"ografie\",\n        -12.666568756103516\n      ],\n      [\n        \"▁TIP\",\n        -12.666730880737305\n      ],\n      [\n        \"schreibung\",\n        -12.66683292388916\n      ],\n      [\n        \"▁bark\",\n        -12.666840553283691\n      ],\n      [\n        \"accéder\",\n        -12.666895866394043\n      ],\n      [\n        \"▁contamination\",\n        -12.666937828063965\n      ],\n      [\n        \"▁swelling\",\n        -12.666950225830078\n      ],\n      [\n        \"▁optimistic\",\n        -12.666974067687988\n      ],\n      [\n        \"▁differential\",\n        -12.667015075683594\n      ],\n      [\n        \"▁Arad\",\n        -12.667030334472656\n      ],\n      [\n        \"toxins\",\n        -12.667075157165527\n      ],\n      [\n        \"▁übernehmen\",\n        -12.667091369628906\n      ],\n      [\n        \"▁anime\",\n        -12.667143821716309\n      ],\n      [\n        \"actuel\",\n        -12.667462348937988\n      ],\n      [\n        \"▁bientôt\",\n        -12.667525291442871\n      ],\n      [\n        \"▁Patio\",\n        -12.66761302947998\n      ],\n      [\n        \"▁baisse\",\n        -12.667630195617676\n      ],\n      [\n        \"▁sprint\",\n        -12.66773796081543\n      ],\n      [\n        \"▁bilden\",\n        -12.66811466217041\n      ],\n      [\n        \"VAL\",\n        -12.668132781982422\n      ],\n      [\n        \"▁réflexion\",\n        -12.668220520019531\n      ],\n      [\n        \"hopping\",\n        -12.668242454528809\n      ],\n      [\n        \"genesis\",\n        -12.66834545135498\n      ],\n      [\n        \"achtet\",\n        -12.668435096740723\n      ],\n      [\n        \"▁chinois\",\n        -12.668525695800781\n      ],\n      [\n        \"▁dezvoltat\",\n        -12.668795585632324\n      ],\n      [\n        \"arguably\",\n        -12.66884708404541\n      ],\n      [\n        \"▁Protocol\",\n        -12.66884708404541\n      ],\n      [\n        \"▁Sterling\",\n        -12.668862342834473\n      ],\n      [\n        \"▁Cave\",\n        -12.668975830078125\n      ],\n      [\n        \"▁Condo\",\n        -12.66921615600586\n      ],\n      [\n        \"▁erhöht\",\n        -12.669235229492188\n      ],\n      [\n        \"typische\",\n        -12.669416427612305\n      ],\n      [\n        \"merged\",\n        -12.669439315795898\n      ],\n      [\n        \"▁accumulation\",\n        -12.669560432434082\n      ],\n      [\n        \"sicherlich\",\n        -12.669569969177246\n      ],\n      [\n        \"kW\",\n        -12.669620513916016\n      ],\n      [\n        \"▁schriftlich\",\n        -12.669757843017578\n      ],\n      [\n        \"▁Vorteile\",\n        -12.669918060302734\n      ],\n      [\n        \"▁Northeast\",\n        -12.669922828674316\n      ],\n      [\n        \"frunt\",\n        -12.669941902160645\n      ],\n      [\n        \"istik\",\n        -12.670003890991211\n      ],\n      [\n        \"erster\",\n        -12.670035362243652\n      ],\n      [\n        \"▁Assistance\",\n        -12.670150756835938\n      ],\n      [\n        \"▁Fantastic\",\n        -12.670150756835938\n      ],\n      [\n        \"▁bărbat\",\n        -12.670150756835938\n      ],\n      [\n        \"▁Grinding\",\n        -12.670151710510254\n      ],\n      [\n        \"▁diffusion\",\n        -12.670161247253418\n      ],\n      [\n        \"▁vreun\",\n        -12.670331954956055\n      ],\n      [\n        \"▁Butler\",\n        -12.670342445373535\n      ],\n      [\n        \"▁Cherry\",\n        -12.670352935791016\n      ],\n      [\n        \"▁visualization\",\n        -12.670540809631348\n      ],\n      [\n        \"Paket\",\n        -12.670572280883789\n      ],\n      [\n        \"blin\",\n        -12.670619010925293\n      ],\n      [\n        \"▁cadou\",\n        -12.670705795288086\n      ],\n      [\n        \"▁Celtic\",\n        -12.670754432678223\n      ],\n      [\n        \"alegerea\",\n        -12.670894622802734\n      ],\n      [\n        \"▁Dorf\",\n        -12.671035766601562\n      ],\n      [\n        \"▁Noir\",\n        -12.671185493469238\n      ],\n      [\n        \"payment\",\n        -12.67126750946045\n      ],\n      [\n        \"▁Caroline\",\n        -12.671334266662598\n      ],\n      [\n        \"▁Berry\",\n        -12.671359062194824\n      ],\n      [\n        \"▁professeur\",\n        -12.67147445678711\n      ],\n      [\n        \"▁gratuitement\",\n        -12.671503067016602\n      ],\n      [\n        \"Suntem\",\n        -12.671523094177246\n      ],\n      [\n        \"IAN\",\n        -12.671738624572754\n      ],\n      [\n        \"▁fingerprint\",\n        -12.671780586242676\n      ],\n      [\n        \"▁controversy\",\n        -12.671781539916992\n      ],\n      [\n        \"▁fled\",\n        -12.671875\n      ],\n      [\n        \"▁Pokémon\",\n        -12.67210865020752\n      ],\n      [\n        \"excluding\",\n        -12.67211627960205\n      ],\n      [\n        \"▁friction\",\n        -12.672161102294922\n      ],\n      [\n        \"therapie\",\n        -12.67225456237793\n      ],\n      [\n        \"/7\",\n        -12.672398567199707\n      ],\n      [\n        \"▁designation\",\n        -12.672442436218262\n      ],\n      [\n        \"▁Belgia\",\n        -12.672704696655273\n      ],\n      [\n        \"▁cursuri\",\n        -12.672836303710938\n      ],\n      [\n        \"model\",\n        -12.672840118408203\n      ],\n      [\n        \"super\",\n        -12.672987937927246\n      ],\n      [\n        \"▁réduit\",\n        -12.673028945922852\n      ],\n      [\n        \"▁implicit\",\n        -12.673177719116211\n      ],\n      [\n        \"athlon\",\n        -12.673227310180664\n      ],\n      [\n        \"anniversaire\",\n        -12.673416137695312\n      ],\n      [\n        \"▁teaspoon\",\n        -12.673416137695312\n      ],\n      [\n        \"▁corrosion\",\n        -12.673418998718262\n      ],\n      [\n        \"▁überzeugt\",\n        -12.673418998718262\n      ],\n      [\n        \"▁flawless\",\n        -12.673421859741211\n      ],\n      [\n        \"▁vegetation\",\n        -12.673477172851562\n      ],\n      [\n        \"▁iarna\",\n        -12.673507690429688\n      ],\n      [\n        \"▁psychologist\",\n        -12.673591613769531\n      ],\n      [\n        \"hora\",\n        -12.673625946044922\n      ],\n      [\n        \"gab\",\n        -12.67387580871582\n      ],\n      [\n        \"▁soothing\",\n        -12.674084663391113\n      ],\n      [\n        \"▁stew\",\n        -12.674141883850098\n      ],\n      [\n        \"▁wager\",\n        -12.674172401428223\n      ],\n      [\n        \"▁tinere\",\n        -12.674322128295898\n      ],\n      [\n        \"▁baut\",\n        -12.674323081970215\n      ],\n      [\n        \"ecunoscut\",\n        -12.674352645874023\n      ],\n      [\n        \"gearbeitet\",\n        -12.674422264099121\n      ],\n      [\n        \"▁functi\",\n        -12.674480438232422\n      ],\n      [\n        \"▁dürfte\",\n        -12.674724578857422\n      ],\n      [\n        \"▁média\",\n        -12.674724578857422\n      ],\n      [\n        \"▁campanie\",\n        -12.67475700378418\n      ],\n      [\n        \"▁Distribu\",\n        -12.674817085266113\n      ],\n      [\n        \"▁mentoring\",\n        -12.674959182739258\n      ],\n      [\n        \"▁criz\",\n        -12.675020217895508\n      ],\n      [\n        \"findest\",\n        -12.675056457519531\n      ],\n      [\n        \"▁Vasile\",\n        -12.675058364868164\n      ],\n      [\n        \"▁compassionate\",\n        -12.675115585327148\n      ],\n      [\n        \"▁Tudor\",\n        -12.675140380859375\n      ],\n      [\n        \"▁flare\",\n        -12.675260543823242\n      ],\n      [\n        \"intreaga\",\n        -12.675283432006836\n      ],\n      [\n        \"gaz\",\n        -12.6753511428833\n      ],\n      [\n        \"▁porcelain\",\n        -12.675379753112793\n      ],\n      [\n        \"▁expedition\",\n        -12.675520896911621\n      ],\n      [\n        \"▁Azure\",\n        -12.67553997039795\n      ],\n      [\n        \"räumen\",\n        -12.675549507141113\n      ],\n      [\n        \"eiro\",\n        -12.675567626953125\n      ],\n      [\n        \"variante\",\n        -12.675804138183594\n      ],\n      [\n        \"▁Lucy\",\n        -12.675825119018555\n      ],\n      [\n        \"ôle\",\n        -12.675909996032715\n      ],\n      [\n        \"▁revenir\",\n        -12.67602252960205\n      ],\n      [\n        \"▁stained\",\n        -12.676040649414062\n      ],\n      [\n        \"▁falsch\",\n        -12.676166534423828\n      ],\n      [\n        \"▁incorpor\",\n        -12.676166534423828\n      ],\n      [\n        \"merkt\",\n        -12.676187515258789\n      ],\n      [\n        \"▁achten\",\n        -12.6762056350708\n      ],\n      [\n        \"▁hello\",\n        -12.676290512084961\n      ],\n      [\n        \"selben\",\n        -12.676422119140625\n      ],\n      [\n        \"ifty\",\n        -12.676525115966797\n      ],\n      [\n        \"▁Feier\",\n        -12.67653751373291\n      ],\n      [\n        \"1.000\",\n        -12.676557540893555\n      ],\n      [\n        \"▁Patch\",\n        -12.676583290100098\n      ],\n      [\n        \"peptid\",\n        -12.676846504211426\n      ],\n      [\n        \"▁recovering\",\n        -12.676898956298828\n      ],\n      [\n        \"Symptom\",\n        -12.677020072937012\n      ],\n      [\n        \"▁Auckland\",\n        -12.677020072937012\n      ],\n      [\n        \"▁retrieve\",\n        -12.677328109741211\n      ],\n      [\n        \"▁800-\",\n        -12.67733097076416\n      ],\n      [\n        \"schlagen\",\n        -12.677473068237305\n      ],\n      [\n        \"▁lourd\",\n        -12.677562713623047\n      ],\n      [\n        \"▁Purple\",\n        -12.67760181427002\n      ],\n      [\n        \"▁mittels\",\n        -12.677776336669922\n      ],\n      [\n        \"▁Düsseldorf\",\n        -12.67800521850586\n      ],\n      [\n        \"▁getaway\",\n        -12.67803955078125\n      ],\n      [\n        \"▁Cedar\",\n        -12.678061485290527\n      ],\n      [\n        \"▁Function\",\n        -12.678241729736328\n      ],\n      [\n        \"▁bizarre\",\n        -12.67833423614502\n      ],\n      [\n        \"4.3\",\n        -12.67849063873291\n      ],\n      [\n        \"▁fundraiser\",\n        -12.67866325378418\n      ],\n      [\n        \"geared\",\n        -12.678780555725098\n      ],\n      [\n        \"▁privée\",\n        -12.678781509399414\n      ],\n      [\n        \"▁Bonjour\",\n        -12.67894458770752\n      ],\n      [\n        \"Gar\",\n        -12.67895793914795\n      ],\n      [\n        \"▁Lloyd\",\n        -12.678991317749023\n      ],\n      [\n        \"▁Reinigung\",\n        -12.6790132522583\n      ],\n      [\n        \"▁Geno\",\n        -12.679155349731445\n      ],\n      [\n        \"▁Teilnahme\",\n        -12.67919635772705\n      ],\n      [\n        \"pian\",\n        -12.679362297058105\n      ],\n      [\n        \"sammelt\",\n        -12.679368019104004\n      ],\n      [\n        \"Pad\",\n        -12.679755210876465\n      ],\n      [\n        \"▁Troy\",\n        -12.67976188659668\n      ],\n      [\n        \"HG\",\n        -12.679943084716797\n      ],\n      [\n        \"▁klein\",\n        -12.679962158203125\n      ],\n      [\n        \"▁lettuce\",\n        -12.679978370666504\n      ],\n      [\n        \"▁patrimoine\",\n        -12.679978370666504\n      ],\n      [\n        \"▁cooker\",\n        -12.680055618286133\n      ],\n      [\n        \"▁accesibil\",\n        -12.680137634277344\n      ],\n      [\n        \"▁Spray\",\n        -12.680201530456543\n      ],\n      [\n        \"▁negotiation\",\n        -12.68047046661377\n      ],\n      [\n        \"▁jewel\",\n        -12.680480003356934\n      ],\n      [\n        \"▁dynamique\",\n        -12.68063735961914\n      ],\n      [\n        \"▁plastique\",\n        -12.68067741394043\n      ],\n      [\n        \"▁Limo\",\n        -12.680682182312012\n      ],\n      [\n        \"▁Funk\",\n        -12.68069076538086\n      ],\n      [\n        \"▁omului\",\n        -12.680702209472656\n      ],\n      [\n        \"title\",\n        -12.680768013000488\n      ],\n      [\n        \"curved\",\n        -12.68082046508789\n      ],\n      [\n        \"▁Lemon\",\n        -12.680851936340332\n      ],\n      [\n        \"förder\",\n        -12.680891990661621\n      ],\n      [\n        \"▁bewusst\",\n        -12.681112289428711\n      ],\n      [\n        \"inevitably\",\n        -12.681296348571777\n      ],\n      [\n        \"▁derivative\",\n        -12.681297302246094\n      ],\n      [\n        \"2:30\",\n        -12.681300163269043\n      ],\n      [\n        \"komfort\",\n        -12.681305885314941\n      ],\n      [\n        \"original\",\n        -12.681480407714844\n      ],\n      [\n        \"sanct\",\n        -12.681540489196777\n      ],\n      [\n        \"▁matte\",\n        -12.6815767288208\n      ],\n      [\n        \"empêche\",\n        -12.681628227233887\n      ],\n      [\n        \"▁jucător\",\n        -12.681634902954102\n      ],\n      [\n        \"▁attentive\",\n        -12.681640625\n      ],\n      [\n        \"▁recunoscut\",\n        -12.681674003601074\n      ],\n      [\n        \"▁Brush\",\n        -12.68167495727539\n      ],\n      [\n        \"▁consommateur\",\n        -12.68183422088623\n      ],\n      [\n        \"érence\",\n        -12.682063102722168\n      ],\n      [\n        \"typical\",\n        -12.682084083557129\n      ],\n      [\n        \"strategie\",\n        -12.682205200195312\n      ],\n      [\n        \"Effekt\",\n        -12.682290077209473\n      ],\n      [\n        \"▁Alcohol\",\n        -12.682292938232422\n      ],\n      [\n        \"oji\",\n        -12.682333946228027\n      ],\n      [\n        \"▁ruler\",\n        -12.682357788085938\n      ],\n      [\n        \"▁Norwegian\",\n        -12.682615280151367\n      ],\n      [\n        \"▁PlayStation\",\n        -12.682615280151367\n      ],\n      [\n        \"▁Hook\",\n        -12.682747840881348\n      ],\n      [\n        \"▁viewpoint\",\n        -12.682759284973145\n      ],\n      [\n        \"THER\",\n        -12.682841300964355\n      ],\n      [\n        \"420\",\n        -12.682888984680176\n      ],\n      [\n        \"Consequently\",\n        -12.68294620513916\n      ],\n      [\n        \"▁entschieden\",\n        -12.68294620513916\n      ],\n      [\n        \"▁Trag\",\n        -12.68295669555664\n      ],\n      [\n        \"▁Dawn\",\n        -12.683003425598145\n      ],\n      [\n        \"▁fuss\",\n        -12.68301773071289\n      ],\n      [\n        \"*****\",\n        -12.683040618896484\n      ],\n      [\n        \"▁Bullet\",\n        -12.683140754699707\n      ],\n      [\n        \"CAM\",\n        -12.683155059814453\n      ],\n      [\n        \"▁wonderfully\",\n        -12.683201789855957\n      ],\n      [\n        \"▁parlamentar\",\n        -12.683263778686523\n      ],\n      [\n        \"▁geometric\",\n        -12.683307647705078\n      ],\n      [\n        \"talement\",\n        -12.683321952819824\n      ],\n      [\n        \"/2018\",\n        -12.683577537536621\n      ],\n      [\n        \"▁oversight\",\n        -12.684036254882812\n      ],\n      [\n        \"kindly\",\n        -12.684080123901367\n      ],\n      [\n        \"therm\",\n        -12.684305191040039\n      ],\n      [\n        \"▁treaba\",\n        -12.6846342086792\n      ],\n      [\n        \"▁Trim\",\n        -12.68471908569336\n      ],\n      [\n        \"▁intelege\",\n        -12.684842109680176\n      ],\n      [\n        \"cino\",\n        -12.685032844543457\n      ],\n      [\n        \"▁straw\",\n        -12.68508529663086\n      ],\n      [\n        \"Tru\",\n        -12.685251235961914\n      ],\n      [\n        \"▁Television\",\n        -12.68530559539795\n      ],\n      [\n        \"Trader\",\n        -12.68538761138916\n      ],\n      [\n        \"▁Passion\",\n        -12.685394287109375\n      ],\n      [\n        \"rescu\",\n        -12.685622215270996\n      ],\n      [\n        \"Nicol\",\n        -12.685635566711426\n      ],\n      [\n        \"luj\",\n        -12.685805320739746\n      ],\n      [\n        \"▁mijloace\",\n        -12.685921669006348\n      ],\n      [\n        \"▁Removal\",\n        -12.685922622680664\n      ],\n      [\n        \"▁1944\",\n        -12.686034202575684\n      ],\n      [\n        \"▁shortcut\",\n        -12.686159133911133\n      ],\n      [\n        \"▁Fett\",\n        -12.686258316040039\n      ],\n      [\n        \"largement\",\n        -12.686371803283691\n      ],\n      [\n        \"▁altern\",\n        -12.686446189880371\n      ],\n      [\n        \"▁cleansing\",\n        -12.686562538146973\n      ],\n      [\n        \"▁Qatar\",\n        -12.686692237854004\n      ],\n      [\n        \"▁Ceci\",\n        -12.686826705932617\n      ],\n      [\n        \"▁weave\",\n        -12.686848640441895\n      ],\n      [\n        \"schmerz\",\n        -12.686878204345703\n      ],\n      [\n        \"▁dots\",\n        -12.686888694763184\n      ],\n      [\n        \"Télécharger\",\n        -12.68691635131836\n      ],\n      [\n        \"▁Conduct\",\n        -12.686944007873535\n      ],\n      [\n        \"bekannten\",\n        -12.687325477600098\n      ],\n      [\n        \"▁lungime\",\n        -12.687344551086426\n      ],\n      [\n        \"▁Ferrari\",\n        -12.687390327453613\n      ],\n      [\n        \"▁totusi\",\n        -12.687605857849121\n      ],\n      [\n        \"▁Anniversary\",\n        -12.687911033630371\n      ],\n      [\n        \"▁wilderness\",\n        -12.687911987304688\n      ],\n      [\n        \"▁Christoph\",\n        -12.687939643859863\n      ],\n      [\n        \"▁Nikon\",\n        -12.688112258911133\n      ],\n      [\n        \"▁Digi\",\n        -12.68818473815918\n      ],\n      [\n        \"▁Blumen\",\n        -12.688190460205078\n      ],\n      [\n        \"▁altul\",\n        -12.688249588012695\n      ],\n      [\n        \"▁Parish\",\n        -12.688321113586426\n      ],\n      [\n        \"czy\",\n        -12.688393592834473\n      ],\n      [\n        \"▁temper\",\n        -12.688401222229004\n      ],\n      [\n        \"▁Powder\",\n        -12.688576698303223\n      ],\n      [\n        \"▁Arnold\",\n        -12.688577651977539\n      ],\n      [\n        \"capacitatea\",\n        -12.688687324523926\n      ],\n      [\n        \"nderungen\",\n        -12.688787460327148\n      ],\n      [\n        \"▁utilization\",\n        -12.688859939575195\n      ],\n      [\n        \"99%\",\n        -12.688942909240723\n      ],\n      [\n        \"▁Fear\",\n        -12.689099311828613\n      ],\n      [\n        \"JE\",\n        -12.689165115356445\n      ],\n      [\n        \"▁Simpson\",\n        -12.689239501953125\n      ],\n      [\n        \"▁Podcast\",\n        -12.68924617767334\n      ],\n      [\n        \"▁Cardinal\",\n        -12.689290046691895\n      ],\n      [\n        \"▁Distribution\",\n        -12.689315795898438\n      ],\n      [\n        \"▁Drawing\",\n        -12.689373970031738\n      ],\n      [\n        \"▁tint\",\n        -12.689412117004395\n      ],\n      [\n        \"▁hran\",\n        -12.68945598602295\n      ],\n      [\n        \"▁Slide\",\n        -12.68960189819336\n      ],\n      [\n        \"▁Vertrauen\",\n        -12.689654350280762\n      ],\n      [\n        \"cloth\",\n        -12.68971061706543\n      ],\n      [\n        \"▁redirect\",\n        -12.689728736877441\n      ],\n      [\n        \"126\",\n        -12.689842224121094\n      ],\n      [\n        \"▁constituie\",\n        -12.68985652923584\n      ],\n      [\n        \"Mai\",\n        -12.690070152282715\n      ],\n      [\n        \"▁idol\",\n        -12.690088272094727\n      ],\n      [\n        \"▁tehnice\",\n        -12.690163612365723\n      ],\n      [\n        \"dip\",\n        -12.690393447875977\n      ],\n      [\n        \"▁soldier\",\n        -12.690400123596191\n      ],\n      [\n        \"▁Ordin\",\n        -12.690409660339355\n      ],\n      [\n        \"wobe\",\n        -12.69050407409668\n      ],\n      [\n        \"▁Brent\",\n        -12.69058895111084\n      ],\n      [\n        \"▁Sudan\",\n        -12.690597534179688\n      ],\n      [\n        \"6000\",\n        -12.690619468688965\n      ],\n      [\n        \"turism\",\n        -12.690689086914062\n      ],\n      [\n        \"▁Rocky\",\n        -12.690744400024414\n      ],\n      [\n        \"naming\",\n        -12.69092082977295\n      ],\n      [\n        \"▁entrepreneurial\",\n        -12.690925598144531\n      ],\n      [\n        \"hearted\",\n        -12.690962791442871\n      ],\n      [\n        \"ayne\",\n        -12.69097900390625\n      ],\n      [\n        \"▁hover\",\n        -12.691081047058105\n      ],\n      [\n        \"▁skull\",\n        -12.691279411315918\n      ],\n      [\n        \"▁tribal\",\n        -12.691407203674316\n      ],\n      [\n        \"▁crafting\",\n        -12.691543579101562\n      ],\n      [\n        \"bewertungen\",\n        -12.691569328308105\n      ],\n      [\n        \"▁decizii\",\n        -12.691625595092773\n      ],\n      [\n        \"obwohl\",\n        -12.691655158996582\n      ],\n      [\n        \"▁compromised\",\n        -12.691875457763672\n      ],\n      [\n        \"▁quelqu\",\n        -12.69195556640625\n      ],\n      [\n        \"▁Hilton\",\n        -12.692075729370117\n      ],\n      [\n        \"▁maturity\",\n        -12.692095756530762\n      ],\n      [\n        \"gelesen\",\n        -12.692100524902344\n      ],\n      [\n        \"▁harbor\",\n        -12.69210433959961\n      ],\n      [\n        \"▁maple\",\n        -12.692326545715332\n      ],\n      [\n        \"▁développ\",\n        -12.6924409866333\n      ],\n      [\n        \"▁Nobody\",\n        -12.692517280578613\n      ],\n      [\n        \"équipement\",\n        -12.69255542755127\n      ],\n      [\n        \"121\",\n        -12.69274616241455\n      ],\n      [\n        \"140\",\n        -12.692827224731445\n      ],\n      [\n        \"▁artistes\",\n        -12.692914962768555\n      ],\n      [\n        \"▁depune\",\n        -12.692941665649414\n      ],\n      [\n        \"▁erase\",\n        -12.693129539489746\n      ],\n      [\n        \"▁erzählt\",\n        -12.693197250366211\n      ],\n      [\n        \"▁Hyundai\",\n        -12.69323444366455\n      ],\n      [\n        \"▁impairment\",\n        -12.69323444366455\n      ],\n      [\n        \"▁conving\",\n        -12.693279266357422\n      ],\n      [\n        \"chasing\",\n        -12.693426132202148\n      ],\n      [\n        \"▁Claus\",\n        -12.693438529968262\n      ],\n      [\n        \"▁adaptée\",\n        -12.693687438964844\n      ],\n      [\n        \"▁Raz\",\n        -12.693740844726562\n      ],\n      [\n        \"rugs\",\n        -12.693796157836914\n      ],\n      [\n        \"▁urme\",\n        -12.69387435913086\n      ],\n      [\n        \"Nonetheless\",\n        -12.693902015686035\n      ],\n      [\n        \"▁Cemetery\",\n        -12.693902969360352\n      ],\n      [\n        \"umps\",\n        -12.693906784057617\n      ],\n      [\n        \"ACA\",\n        -12.694003105163574\n      ],\n      [\n        \"▁perioade\",\n        -12.694235801696777\n      ],\n      [\n        \"▁slogan\",\n        -12.694263458251953\n      ],\n      [\n        \"▁downward\",\n        -12.694441795349121\n      ],\n      [\n        \"eidig\",\n        -12.694446563720703\n      ],\n      [\n        \"RAC\",\n        -12.69444751739502\n      ],\n      [\n        \"▁inaugur\",\n        -12.694496154785156\n      ],\n      [\n        \"се\",\n        -12.694588661193848\n      ],\n      [\n        \"▁înțeleg\",\n        -12.694608688354492\n      ],\n      [\n        \"▁hopeful\",\n        -12.694635391235352\n      ],\n      [\n        \"▁customization\",\n        -12.6946439743042\n      ],\n      [\n        \"▁prisoners\",\n        -12.694708824157715\n      ],\n      [\n        \"▁Rau\",\n        -12.695270538330078\n      ],\n      [\n        \"▁Pitt\",\n        -12.695389747619629\n      ],\n      [\n        \"ături\",\n        -12.695542335510254\n      ],\n      [\n        \"▁metabolic\",\n        -12.695842742919922\n      ],\n      [\n        \"▁Zach\",\n        -12.695868492126465\n      ],\n      [\n        \"▁umfassende\",\n        -12.695914268493652\n      ],\n      [\n        \"▁révél\",\n        -12.695950508117676\n      ],\n      [\n        \"131\",\n        -12.696052551269531\n      ],\n      [\n        \"ismului\",\n        -12.696062088012695\n      ],\n      [\n        \"▁Sac\",\n        -12.696076393127441\n      ],\n      [\n        \"efficacité\",\n        -12.69624137878418\n      ],\n      [\n        \"cruci\",\n        -12.69625473022461\n      ],\n      [\n        \"bisschen\",\n        -12.69632339477539\n      ],\n      [\n        \"▁Oster\",\n        -12.696324348449707\n      ],\n      [\n        \"lowered\",\n        -12.6964693069458\n      ],\n      [\n        \"▁Ausland\",\n        -12.69674015045166\n      ],\n      [\n        \"▁Pub\",\n        -12.696794509887695\n      ],\n      [\n        \"▁Marseille\",\n        -12.696925163269043\n      ],\n      [\n        \"▁Charter\",\n        -12.696959495544434\n      ],\n      [\n        \"howcasing\",\n        -12.697010040283203\n      ],\n      [\n        \"risti\",\n        -12.6971435546875\n      ],\n      [\n        \"▁thermostat\",\n        -12.697151184082031\n      ],\n      [\n        \"▁Clin\",\n        -12.697233200073242\n      ],\n      [\n        \"▁entsteht\",\n        -12.697246551513672\n      ],\n      [\n        \"Choosing\",\n        -12.697248458862305\n      ],\n      [\n        \"▁Schmerz\",\n        -12.697284698486328\n      ],\n      [\n        \"▁Till\",\n        -12.697307586669922\n      ],\n      [\n        \"▁Polo\",\n        -12.697399139404297\n      ],\n      [\n        \"▁proceduri\",\n        -12.697402000427246\n      ],\n      [\n        \"▁Believe\",\n        -12.697444915771484\n      ],\n      [\n        \"▁playful\",\n        -12.697514533996582\n      ],\n      [\n        \"▁verändert\",\n        -12.697588920593262\n      ],\n      [\n        \"▁pairing\",\n        -12.697654724121094\n      ],\n      [\n        \"MAG\",\n        -12.69784927368164\n      ],\n      [\n        \"leiste\",\n        -12.69788932800293\n      ],\n      [\n        \"▁testimonial\",\n        -12.697916030883789\n      ],\n      [\n        \"▁Economy\",\n        -12.697916984558105\n      ],\n      [\n        \"▁Wechsel\",\n        -12.697918891906738\n      ],\n      [\n        \"wirkung\",\n        -12.69801139831543\n      ],\n      [\n        \"▁exceeded\",\n        -12.698030471801758\n      ],\n      [\n        \"South\",\n        -12.698067665100098\n      ],\n      [\n        \"create\",\n        -12.698221206665039\n      ],\n      [\n        \"▁davantage\",\n        -12.698270797729492\n      ],\n      [\n        \"Log\",\n        -12.69831657409668\n      ],\n      [\n        \"▁irregular\",\n        -12.698587417602539\n      ],\n      [\n        \"VB\",\n        -12.698691368103027\n      ],\n      [\n        \"▁Rö\",\n        -12.698741912841797\n      ],\n      [\n        \"▁intreb\",\n        -12.698881149291992\n      ],\n      [\n        \"▁penser\",\n        -12.698920249938965\n      ],\n      [\n        \"▁déclaré\",\n        -12.698923110961914\n      ],\n      [\n        \"▁Tommy\",\n        -12.699026107788086\n      ],\n      [\n        \"2,500\",\n        -12.699163436889648\n      ],\n      [\n        \"▁Uganda\",\n        -12.699260711669922\n      ],\n      [\n        \"contacting\",\n        -12.699445724487305\n      ],\n      [\n        \"▁apreciat\",\n        -12.699485778808594\n      ],\n      [\n        \"▁beginnen\",\n        -12.6995210647583\n      ],\n      [\n        \"▁Gain\",\n        -12.699580192565918\n      ],\n      [\n        \"Office\",\n        -12.69969654083252\n      ],\n      [\n        \"ermittlung\",\n        -12.699710845947266\n      ],\n      [\n        \"▁Admission\",\n        -12.699727058410645\n      ],\n      [\n        \"▁Earl\",\n        -12.6997652053833\n      ],\n      [\n        \"▁Aviation\",\n        -12.699833869934082\n      ],\n      [\n        \"▁apologize\",\n        -12.699929237365723\n      ],\n      [\n        \"▁enclosure\",\n        -12.699929237365723\n      ],\n      [\n        \"▁Lack\",\n        -12.69998836517334\n      ],\n      [\n        \"wife\",\n        -12.699995994567871\n      ],\n      [\n        \"▁rotating\",\n        -12.700016975402832\n      ],\n      [\n        \"▁hergestellt\",\n        -12.700020790100098\n      ],\n      [\n        \"▁repository\",\n        -12.70002269744873\n      ],\n      [\n        \"TK\",\n        -12.700149536132812\n      ],\n      [\n        \"▁lectur\",\n        -12.700190544128418\n      ],\n      [\n        \"▁reflex\",\n        -12.700286865234375\n      ],\n      [\n        \"▁Harmon\",\n        -12.700401306152344\n      ],\n      [\n        \"▁vrem\",\n        -12.700479507446289\n      ],\n      [\n        \"▁Strange\",\n        -12.70055103302002\n      ],\n      [\n        \"▁champagne\",\n        -12.700615882873535\n      ],\n      [\n        \"▁oscil\",\n        -12.700647354125977\n      ],\n      [\n        \"sensitive\",\n        -12.700677871704102\n      ],\n      [\n        \"▁Sheriff\",\n        -12.700841903686523\n      ],\n      [\n        \"PRES\",\n        -12.700956344604492\n      ],\n      [\n        \"▁vow\",\n        -12.70123291015625\n      ],\n      [\n        \"▁dioxide\",\n        -12.701276779174805\n      ],\n      [\n        \"ен\",\n        -12.701374053955078\n      ],\n      [\n        \"▁corpului\",\n        -12.701376914978027\n      ],\n      [\n        \"▁prevăzut\",\n        -12.70160961151123\n      ],\n      [\n        \"India\",\n        -12.701827049255371\n      ],\n      [\n        \"hausse\",\n        -12.70189094543457\n      ],\n      [\n        \"▁clienți\",\n        -12.701957702636719\n      ],\n      [\n        \"▁entour\",\n        -12.70202350616455\n      ],\n      [\n        \"▁Sharp\",\n        -12.70209789276123\n      ],\n      [\n        \"▁teatru\",\n        -12.702285766601562\n      ],\n      [\n        \"▁Grow\",\n        -12.702327728271484\n      ],\n      [\n        \"▁caravan\",\n        -12.70234203338623\n      ],\n      [\n        \"▁sieben\",\n        -12.702420234680176\n      ],\n      [\n        \"▁cunosc\",\n        -12.702502250671387\n      ],\n      [\n        \"Bereichen\",\n        -12.702527046203613\n      ],\n      [\n        \"▁Benutzer\",\n        -12.702619552612305\n      ],\n      [\n        \"▁Ethiopia\",\n        -12.702619552612305\n      ],\n      [\n        \"▁Physics\",\n        -12.702619552612305\n      ],\n      [\n        \"preserving\",\n        -12.70263385772705\n      ],\n      [\n        \"ал\",\n        -12.702712059020996\n      ],\n      [\n        \"▁aerial\",\n        -12.70272159576416\n      ],\n      [\n        \"▁nouvel\",\n        -12.702741622924805\n      ],\n      [\n        \"▁stamped\",\n        -12.702954292297363\n      ],\n      [\n        \"▁inaugural\",\n        -12.702970504760742\n      ],\n      [\n        \"▁medicinal\",\n        -12.702999114990234\n      ],\n      [\n        \"Quite\",\n        -12.703028678894043\n      ],\n      [\n        \"accumulated\",\n        -12.703165054321289\n      ],\n      [\n        \"register\",\n        -12.703271865844727\n      ],\n      [\n        \"▁Falcon\",\n        -12.70327377319336\n      ],\n      [\n        \"▁boiling\",\n        -12.703301429748535\n      ],\n      [\n        \"▁advertised\",\n        -12.703339576721191\n      ],\n      [\n        \"collect\",\n        -12.703362464904785\n      ],\n      [\n        \"albeit\",\n        -12.703418731689453\n      ],\n      [\n        \"▁Organis\",\n        -12.703473091125488\n      ],\n      [\n        \"luate\",\n        -12.703536033630371\n      ],\n      [\n        \"▁préféré\",\n        -12.70369815826416\n      ],\n      [\n        \"▁frumoasa\",\n        -12.703968048095703\n      ],\n      [\n        \"▁truc\",\n        -12.704092979431152\n      ],\n      [\n        \"▁Fä\",\n        -12.704154968261719\n      ],\n      [\n        \"▁dome\",\n        -12.704180717468262\n      ],\n      [\n        \"Mobile\",\n        -12.704191207885742\n      ],\n      [\n        \"▁redeem\",\n        -12.704198837280273\n      ],\n      [\n        \"IONS\",\n        -12.70422077178955\n      ],\n      [\n        \"▁țări\",\n        -12.704235076904297\n      ],\n      [\n        \"▁singular\",\n        -12.704385757446289\n      ],\n      [\n        \"▁livestock\",\n        -12.704425811767578\n      ],\n      [\n        \"▁démont\",\n        -12.704427719116211\n      ],\n      [\n        \"clés\",\n        -12.704527854919434\n      ],\n      [\n        \"music\",\n        -12.704561233520508\n      ],\n      [\n        \"▁explicat\",\n        -12.704602241516113\n      ],\n      [\n        \"▁Fellowship\",\n        -12.704703330993652\n      ],\n      [\n        \"▁electrode\",\n        -12.704760551452637\n      ],\n      [\n        \"129\",\n        -12.704977035522461\n      ],\n      [\n        \"▁Rescue\",\n        -12.704983711242676\n      ],\n      [\n        \"▁Rocket\",\n        -12.705159187316895\n      ],\n      [\n        \"OSE\",\n        -12.705301284790039\n      ],\n      [\n        \"▁Sacramento\",\n        -12.705317497253418\n      ],\n      [\n        \"▁Haiti\",\n        -12.705357551574707\n      ],\n      [\n        \"▁Erwachsene\",\n        -12.705390930175781\n      ],\n      [\n        \"▁Terminal\",\n        -12.70541000366211\n      ],\n      [\n        \"URI\",\n        -12.705453872680664\n      ],\n      [\n        \"▁Rural\",\n        -12.70549201965332\n      ],\n      [\n        \"▁achizitiona\",\n        -12.70552921295166\n      ],\n      [\n        \"▁identifiable\",\n        -12.705655097961426\n      ],\n      [\n        \"▁gekauft\",\n        -12.705659866333008\n      ],\n      [\n        \"▁improper\",\n        -12.705673217773438\n      ],\n      [\n        \"lashes\",\n        -12.705751419067383\n      ],\n      [\n        \"vorbim\",\n        -12.705751419067383\n      ],\n      [\n        \"▁hinder\",\n        -12.705862045288086\n      ],\n      [\n        \"▁Grenz\",\n        -12.705878257751465\n      ],\n      [\n        \"Nav\",\n        -12.705955505371094\n      ],\n      [\n        \"alimentation\",\n        -12.705972671508789\n      ],\n      [\n        \"▁Cottage\",\n        -12.7059965133667\n      ],\n      [\n        \"▁nötig\",\n        -12.706197738647461\n      ],\n      [\n        \"▁cuprinde\",\n        -12.70622444152832\n      ],\n      [\n        \"session\",\n        -12.706256866455078\n      ],\n      [\n        \"▁Separat\",\n        -12.70634651184082\n      ],\n      [\n        \"▁besuchen\",\n        -12.706672668457031\n      ],\n      [\n        \"▁noodles\",\n        -12.706684112548828\n      ],\n      [\n        \"▁ballet\",\n        -12.706696510314941\n      ],\n      [\n        \"WG\",\n        -12.706731796264648\n      ],\n      [\n        \"▁Duty\",\n        -12.706871032714844\n      ],\n      [\n        \"▁porc\",\n        -12.706944465637207\n      ],\n      [\n        \"▁booster\",\n        -12.70698356628418\n      ],\n      [\n        \"galerie\",\n        -12.707056045532227\n      ],\n      [\n        \"▁Lance\",\n        -12.707119941711426\n      ],\n      [\n        \"▁déplac\",\n        -12.707178115844727\n      ],\n      [\n        \"▁rugby\",\n        -12.707240104675293\n      ],\n      [\n        \"▁upholstery\",\n        -12.707345962524414\n      ],\n      [\n        \"▁bustl\",\n        -12.70736312866211\n      ],\n      [\n        \"▁Dealer\",\n        -12.70740032196045\n      ],\n      [\n        \"▁genome\",\n        -12.707414627075195\n      ],\n      [\n        \"▁citizenship\",\n        -12.707466125488281\n      ],\n      [\n        \"rora\",\n        -12.707515716552734\n      ],\n      [\n        \"ARK\",\n        -12.707776069641113\n      ],\n      [\n        \"▁Semi\",\n        -12.707820892333984\n      ],\n      [\n        \"▁Improvement\",\n        -12.707892417907715\n      ],\n      [\n        \"▁negru\",\n        -12.708142280578613\n      ],\n      [\n        \"▁Bruxelles\",\n        -12.70836067199707\n      ],\n      [\n        \"flüge\",\n        -12.70837688446045\n      ],\n      [\n        \"▁Technique\",\n        -12.708392143249512\n      ],\n      [\n        \"▁Obst\",\n        -12.708413124084473\n      ],\n      [\n        \"2020\",\n        -12.708560943603516\n      ],\n      [\n        \"▁gek\",\n        -12.708593368530273\n      ],\n      [\n        \"▁drepturi\",\n        -12.708600997924805\n      ],\n      [\n        \"▁Logan\",\n        -12.708605766296387\n      ],\n      [\n        \"gelöst\",\n        -12.70863151550293\n      ],\n      [\n        \"▁grandparents\",\n        -12.708702087402344\n      ],\n      [\n        \"phin\",\n        -12.708950996398926\n      ],\n      [\n        \"▁dwell\",\n        -12.709037780761719\n      ],\n      [\n        \"▁Nobel\",\n        -12.709151268005371\n      ],\n      [\n        \"dial\",\n        -12.70927906036377\n      ],\n      [\n        \"▁spontan\",\n        -12.709344863891602\n      ],\n      [\n        \"advancing\",\n        -12.70937728881836\n      ],\n      [\n        \"starring\",\n        -12.70947551727295\n      ],\n      [\n        \"▁astea\",\n        -12.709498405456543\n      ],\n      [\n        \"igueur\",\n        -12.709638595581055\n      ],\n      [\n        \"▁Ancient\",\n        -12.709700584411621\n      ],\n      [\n        \"filter\",\n        -12.70971965789795\n      ],\n      [\n        \"Doar\",\n        -12.709758758544922\n      ],\n      [\n        \"▁Workers\",\n        -12.709759712219238\n      ],\n      [\n        \"Certainly\",\n        -12.709906578063965\n      ],\n      [\n        \"▁commencé\",\n        -12.709914207458496\n      ],\n      [\n        \"▁zipper\",\n        -12.710001945495605\n      ],\n      [\n        \"▁Selection\",\n        -12.710070610046387\n      ],\n      [\n        \"▁succ\",\n        -12.710280418395996\n      ],\n      [\n        \"headed\",\n        -12.710345268249512\n      ],\n      [\n        \"RIA\",\n        -12.710350036621094\n      ],\n      [\n        \"▁papa\",\n        -12.710366249084473\n      ],\n      [\n        \"▁profesionale\",\n        -12.710394859313965\n      ],\n      [\n        \"▁Zeichen\",\n        -12.710402488708496\n      ],\n      [\n        \"▁artisans\",\n        -12.710489273071289\n      ],\n      [\n        \"▁Geist\",\n        -12.710585594177246\n      ],\n      [\n        \"practic\",\n        -12.710741996765137\n      ],\n      [\n        \"▁ministrul\",\n        -12.71076488494873\n      ],\n      [\n        \"viens\",\n        -12.710912704467773\n      ],\n      [\n        \"prezintă\",\n        -12.710919380187988\n      ],\n      [\n        \"Integrated\",\n        -12.710981369018555\n      ],\n      [\n        \"▁rooftop\",\n        -12.710989952087402\n      ],\n      [\n        \"▁successor\",\n        -12.710991859436035\n      ],\n      [\n        \"OTO\",\n        -12.711012840270996\n      ],\n      [\n        \"liés\",\n        -12.711027145385742\n      ],\n      [\n        \"▁Diver\",\n        -12.71121597290039\n      ],\n      [\n        \"Specifically\",\n        -12.711297988891602\n      ],\n      [\n        \"▁calibr\",\n        -12.711301803588867\n      ],\n      [\n        \"KK\",\n        -12.711341857910156\n      ],\n      [\n        \"▁défense\",\n        -12.711414337158203\n      ],\n      [\n        \"▁english\",\n        -12.711414337158203\n      ],\n      [\n        \"verbrauch\",\n        -12.711418151855469\n      ],\n      [\n        \"▁attire\",\n        -12.711433410644531\n      ],\n      [\n        \"▁Recipe\",\n        -12.711441040039062\n      ],\n      [\n        \"équilibre\",\n        -12.711457252502441\n      ],\n      [\n        \"accumul\",\n        -12.71157169342041\n      ],\n      [\n        \"▁financement\",\n        -12.71169662475586\n      ],\n      [\n        \"rij\",\n        -12.711962699890137\n      ],\n      [\n        \"▁prince\",\n        -12.711999893188477\n      ],\n      [\n        \"▁préparer\",\n        -12.7120361328125\n      ],\n      [\n        \"surviving\",\n        -12.71211051940918\n      ],\n      [\n        \"operation\",\n        -12.712233543395996\n      ],\n      [\n        \"▁judet\",\n        -12.71242904663086\n      ],\n      [\n        \"▁Verantwortung\",\n        -12.712433815002441\n      ],\n      [\n        \"▁Vinyl\",\n        -12.712536811828613\n      ],\n      [\n        \"DEN\",\n        -12.712584495544434\n      ],\n      [\n        \"▁Tail\",\n        -12.712589263916016\n      ],\n      [\n        \"yearly\",\n        -12.712590217590332\n      ],\n      [\n        \"▁comisi\",\n        -12.712613105773926\n      ],\n      [\n        \"lava\",\n        -12.71261978149414\n      ],\n      [\n        \"▁succession\",\n        -12.71264934539795\n      ],\n      [\n        \"▁Whisk\",\n        -12.713030815124512\n      ],\n      [\n        \"▁precizat\",\n        -12.713096618652344\n      ],\n      [\n        \"▁unmittelbar\",\n        -12.713117599487305\n      ],\n      [\n        \"ICH\",\n        -12.713139533996582\n      ],\n      [\n        \"▁atteint\",\n        -12.713199615478516\n      ],\n      [\n        \"▁hometown\",\n        -12.713268280029297\n      ],\n      [\n        \"▁Zip\",\n        -12.71328353881836\n      ],\n      [\n        \"▁Weekly\",\n        -12.71336841583252\n      ],\n      [\n        \"▁crashes\",\n        -12.713401794433594\n      ],\n      [\n        \"▁Turbo\",\n        -12.713421821594238\n      ],\n      [\n        \"▁susține\",\n        -12.713468551635742\n      ],\n      [\n        \"▁Venus\",\n        -12.713587760925293\n      ],\n      [\n        \"▁finalement\",\n        -12.713595390319824\n      ],\n      [\n        \"rewarded\",\n        -12.713693618774414\n      ],\n      [\n        \"▁principau\",\n        -12.713899612426758\n      ],\n      [\n        \"▁régional\",\n        -12.713979721069336\n      ],\n      [\n        \"▁1958\",\n        -12.714178085327148\n      ],\n      [\n        \"▁Musical\",\n        -12.714189529418945\n      ],\n      [\n        \"▁stylist\",\n        -12.714251518249512\n      ],\n      [\n        \"cetate\",\n        -12.714282035827637\n      ],\n      [\n        \"gorge\",\n        -12.71433162689209\n      ],\n      [\n        \"▁espresso\",\n        -12.714493751525879\n      ],\n      [\n        \"überall\",\n        -12.714576721191406\n      ],\n      [\n        \"▁NHL\",\n        -12.714593887329102\n      ],\n      [\n        \"▁Dock\",\n        -12.71472454071045\n      ],\n      [\n        \"▁mosquito\",\n        -12.71481704711914\n      ],\n      [\n        \"▁forthcoming\",\n        -12.714852333068848\n      ],\n      [\n        \"▁Visitors\",\n        -12.714881896972656\n      ],\n      [\n        \"kro\",\n        -12.714882850646973\n      ],\n      [\n        \"_______\",\n        -12.715048789978027\n      ],\n      [\n        \"▁STEM\",\n        -12.715105056762695\n      ],\n      [\n        \"9.5\",\n        -12.715141296386719\n      ],\n      [\n        \"accompagne\",\n        -12.715177536010742\n      ],\n      [\n        \"▁Trick\",\n        -12.715202331542969\n      ],\n      [\n        \"▁endorsement\",\n        -12.715400695800781\n      ],\n      [\n        \"▁amplifier\",\n        -12.715498924255371\n      ],\n      [\n        \"▁malicious\",\n        -12.715499877929688\n      ],\n      [\n        \"▁roam\",\n        -12.71552848815918\n      ],\n      [\n        \"▁kennt\",\n        -12.715635299682617\n      ],\n      [\n        \"Connor\",\n        -12.715690612792969\n      ],\n      [\n        \"▁dysfunction\",\n        -12.715828895568848\n      ],\n      [\n        \"▁zuverlässig\",\n        -12.715840339660645\n      ],\n      [\n        \"▁corpul\",\n        -12.71595573425293\n      ],\n      [\n        \"▁boule\",\n        -12.715967178344727\n      ],\n      [\n        \"otti\",\n        -12.715991973876953\n      ],\n      [\n        \"440\",\n        -12.716050148010254\n      ],\n      [\n        \"▁mimic\",\n        -12.716056823730469\n      ],\n      [\n        \"farben\",\n        -12.716129302978516\n      ],\n      [\n        \"▁Wagner\",\n        -12.716214179992676\n      ],\n      [\n        \"Kom\",\n        -12.7162504196167\n      ],\n      [\n        \"▁miteinander\",\n        -12.716269493103027\n      ],\n      [\n        \"▁String\",\n        -12.716296195983887\n      ],\n      [\n        \"▁Ellis\",\n        -12.716313362121582\n      ],\n      [\n        \"▁Perth\",\n        -12.716337203979492\n      ],\n      [\n        \"▁temperatura\",\n        -12.716381072998047\n      ],\n      [\n        \"umbling\",\n        -12.716397285461426\n      ],\n      [\n        \"▁Medizin\",\n        -12.716554641723633\n      ],\n      [\n        \"▁KY\",\n        -12.71660327911377\n      ],\n      [\n        \"apei\",\n        -12.716642379760742\n      ],\n      [\n        \"counter\",\n        -12.716647148132324\n      ],\n      [\n        \"strich\",\n        -12.71665096282959\n      ],\n      [\n        \"▁Între\",\n        -12.716652870178223\n      ],\n      [\n        \"▁Cliff\",\n        -12.716785430908203\n      ],\n      [\n        \"▁foreclosure\",\n        -12.716864585876465\n      ],\n      [\n        \"................\",\n        -12.716878890991211\n      ],\n      [\n        \"Clearly\",\n        -12.717028617858887\n      ],\n      [\n        \"AJ\",\n        -12.717057228088379\n      ],\n      [\n        \"ndro\",\n        -12.717180252075195\n      ],\n      [\n        \"▁Arsenal\",\n        -12.717206001281738\n      ],\n      [\n        \"▁Recherche\",\n        -12.717216491699219\n      ],\n      [\n        \"Guests\",\n        -12.717225074768066\n      ],\n      [\n        \"▁besucht\",\n        -12.717242240905762\n      ],\n      [\n        \"wissen\",\n        -12.717266082763672\n      ],\n      [\n        \"fekt\",\n        -12.717414855957031\n      ],\n      [\n        \"hottest\",\n        -12.717414855957031\n      ],\n      [\n        \"▁Tomorrow\",\n        -12.717547416687012\n      ],\n      [\n        \"▁Signature\",\n        -12.717557907104492\n      ],\n      [\n        \"127\",\n        -12.717583656311035\n      ],\n      [\n        \"▁competence\",\n        -12.71766471862793\n      ],\n      [\n        \"Einige\",\n        -12.717686653137207\n      ],\n      [\n        \"patented\",\n        -12.71782112121582\n      ],\n      [\n        \"▁Exhibition\",\n        -12.717889785766602\n      ],\n      [\n        \"▁verbessern\",\n        -12.717889785766602\n      ],\n      [\n        \"▁Garcia\",\n        -12.718043327331543\n      ],\n      [\n        \"▁inquire\",\n        -12.718278884887695\n      ],\n      [\n        \"coping\",\n        -12.718353271484375\n      ],\n      [\n        \"▁linguri\",\n        -12.71842098236084\n      ],\n      [\n        \"▁trivia\",\n        -12.718433380126953\n      ],\n      [\n        \"▁începutul\",\n        -12.718489646911621\n      ],\n      [\n        \"▁parteneriat\",\n        -12.7186279296875\n      ],\n      [\n        \"tagen\",\n        -12.718636512756348\n      ],\n      [\n        \"▁engagé\",\n        -12.718916893005371\n      ],\n      [\n        \"▁chalk\",\n        -12.718944549560547\n      ],\n      [\n        \"▁fashionable\",\n        -12.719416618347168\n      ],\n      [\n        \"0.8\",\n        -12.719635009765625\n      ],\n      [\n        \"▁sticker\",\n        -12.719751358032227\n      ],\n      [\n        \"▁desperately\",\n        -12.719765663146973\n      ],\n      [\n        \"höhe\",\n        -12.719903945922852\n      ],\n      [\n        \"▁fericire\",\n        -12.71994400024414\n      ],\n      [\n        \"évaluation\",\n        -12.719948768615723\n      ],\n      [\n        \"▁Divide\",\n        -12.719959259033203\n      ],\n      [\n        \"▁indulge\",\n        -12.719979286193848\n      ],\n      [\n        \"fett\",\n        -12.720014572143555\n      ],\n      [\n        \"▁communal\",\n        -12.72017765045166\n      ],\n      [\n        \"▁mindful\",\n        -12.720187187194824\n      ],\n      [\n        \"dauert\",\n        -12.720192909240723\n      ],\n      [\n        \"▁veille\",\n        -12.720263481140137\n      ],\n      [\n        \"▁vér\",\n        -12.720330238342285\n      ],\n      [\n        \"▁Baseball\",\n        -12.720373153686523\n      ],\n      [\n        \"▁succeeded\",\n        -12.720418930053711\n      ],\n      [\n        \"▁Terrasse\",\n        -12.720420837402344\n      ],\n      [\n        \"irgend\",\n        -12.720500946044922\n      ],\n      [\n        \"▁Munich\",\n        -12.720556259155273\n      ],\n      [\n        \"weisung\",\n        -12.72067642211914\n      ],\n      [\n        \"metre\",\n        -12.720916748046875\n      ],\n      [\n        \"▁Raymond\",\n        -12.721015930175781\n      ],\n      [\n        \"▁chute\",\n        -12.72102165222168\n      ],\n      [\n        \"▁Accounting\",\n        -12.721075057983398\n      ],\n      [\n        \"▁pantry\",\n        -12.721122741699219\n      ],\n      [\n        \"▁underwater\",\n        -12.721181869506836\n      ],\n      [\n        \"ARI\",\n        -12.721222877502441\n      ],\n      [\n        \"lowed\",\n        -12.721245765686035\n      ],\n      [\n        \"numbered\",\n        -12.721430778503418\n      ],\n      [\n        \"REN\",\n        -12.72148609161377\n      ],\n      [\n        \"▁industriel\",\n        -12.721489906311035\n      ],\n      [\n        \"wäh\",\n        -12.721531867980957\n      ],\n      [\n        \"kenntnis\",\n        -12.721631050109863\n      ],\n      [\n        \"▁govern\",\n        -12.721635818481445\n      ],\n      [\n        \"strained\",\n        -12.721661567687988\n      ],\n      [\n        \"▁rythme\",\n        -12.721689224243164\n      ],\n      [\n        \"ин\",\n        -12.72169303894043\n      ],\n      [\n        \"▁burner\",\n        -12.721723556518555\n      ],\n      [\n        \"▁zählt\",\n        -12.721790313720703\n      ],\n      [\n        \"▁verte\",\n        -12.721883773803711\n      ],\n      [\n        \"▁Catalog\",\n        -12.721896171569824\n      ],\n      [\n        \"▁Bruno\",\n        -12.721988677978516\n      ],\n      [\n        \"0.7\",\n        -12.721997261047363\n      ],\n      [\n        \"▁litig\",\n        -12.72207260131836\n      ],\n      [\n        \"▁greet\",\n        -12.722129821777344\n      ],\n      [\n        \"▁stool\",\n        -12.722393035888672\n      ],\n      [\n        \"gression\",\n        -12.722457885742188\n      ],\n      [\n        \"▁Klassen\",\n        -12.722491264343262\n      ],\n      [\n        \"▁neon\",\n        -12.722661018371582\n      ],\n      [\n        \"▁Tall\",\n        -12.722734451293945\n      ],\n      [\n        \"▁satin\",\n        -12.722895622253418\n      ],\n      [\n        \"▁Bend\",\n        -12.722915649414062\n      ],\n      [\n        \"▁soluţi\",\n        -12.723077774047852\n      ],\n      [\n        \"▁styl\",\n        -12.723196983337402\n      ],\n      [\n        \"▁Siri\",\n        -12.723358154296875\n      ],\n      [\n        \"▁Sanders\",\n        -12.723464012145996\n      ],\n      [\n        \"▁spike\",\n        -12.723499298095703\n      ],\n      [\n        \"pinion\",\n        -12.723854064941406\n      ],\n      [\n        \"▁purta\",\n        -12.724122047424316\n      ],\n      [\n        \"CARE\",\n        -12.724224090576172\n      ],\n      [\n        \"▁creştere\",\n        -12.724311828613281\n      ],\n      [\n        \"▁fry\",\n        -12.724374771118164\n      ],\n      [\n        \"▁Schweizer\",\n        -12.724400520324707\n      ],\n      [\n        \"durchschnittlich\",\n        -12.724411010742188\n      ],\n      [\n        \"celaşi\",\n        -12.724446296691895\n      ],\n      [\n        \"▁deceased\",\n        -12.724474906921387\n      ],\n      [\n        \"▁Nerv\",\n        -12.724668502807617\n      ],\n      [\n        \"2-2\",\n        -12.7247314453125\n      ],\n      [\n        \"▁Stahl\",\n        -12.724753379821777\n      ],\n      [\n        \"▁workload\",\n        -12.724834442138672\n      ],\n      [\n        \"erhielt\",\n        -12.724984169006348\n      ],\n      [\n        \"▁hypothesis\",\n        -12.725103378295898\n      ],\n      [\n        \"bib\",\n        -12.725110054016113\n      ],\n      [\n        \"▁ţară\",\n        -12.725116729736328\n      ],\n      [\n        \"vaut\",\n        -12.725122451782227\n      ],\n      [\n        \"prehensi\",\n        -12.725184440612793\n      ],\n      [\n        \"▁Offering\",\n        -12.725188255310059\n      ],\n      [\n        \"▁dislike\",\n        -12.725252151489258\n      ],\n      [\n        \"▁firewall\",\n        -12.725252151489258\n      ],\n      [\n        \"mania\",\n        -12.725255966186523\n      ],\n      [\n        \"195\",\n        -12.725278854370117\n      ],\n      [\n        \"▁Champ\",\n        -12.725324630737305\n      ],\n      [\n        \"▁philosophical\",\n        -12.725343704223633\n      ],\n      [\n        \"länge\",\n        -12.72553539276123\n      ],\n      [\n        \"advisable\",\n        -12.725785255432129\n      ],\n      [\n        \"negotiating\",\n        -12.725785255432129\n      ],\n      [\n        \"Providing\",\n        -12.725791931152344\n      ],\n      [\n        \"▁1959\",\n        -12.725801467895508\n      ],\n      [\n        \"▁spyware\",\n        -12.725831031799316\n      ],\n      [\n        \"sharing\",\n        -12.725837707519531\n      ],\n      [\n        \"▁prévoi\",\n        -12.725905418395996\n      ],\n      [\n        \"▁jaune\",\n        -12.7260103225708\n      ],\n      [\n        \"schoss\",\n        -12.726028442382812\n      ],\n      [\n        \"▁obține\",\n        -12.726129531860352\n      ],\n      [\n        \"▁attraktiv\",\n        -12.726489067077637\n      ],\n      [\n        \"gemeinschaft\",\n        -12.7265043258667\n      ],\n      [\n        \"BV\",\n        -12.726505279541016\n      ],\n      [\n        \"Top\",\n        -12.726617813110352\n      ],\n      [\n        \"▁Sharon\",\n        -12.726625442504883\n      ],\n      [\n        \"bok\",\n        -12.726675033569336\n      ],\n      [\n        \"▁résist\",\n        -12.726811408996582\n      ],\n      [\n        \"Napoca\",\n        -12.726822853088379\n      ],\n      [\n        \"▁Uncategorized\",\n        -12.726898193359375\n      ],\n      [\n        \"▁trustee\",\n        -12.726936340332031\n      ],\n      [\n        \"▁remise\",\n        -12.727025985717773\n      ],\n      [\n        \"▁aştept\",\n        -12.727165222167969\n      ],\n      [\n        \"▁allergic\",\n        -12.727206230163574\n      ],\n      [\n        \"èvre\",\n        -12.727211952209473\n      ],\n      [\n        \"LAR\",\n        -12.72734546661377\n      ],\n      [\n        \"1.9\",\n        -12.727497100830078\n      ],\n      [\n        \"▁outbreak\",\n        -12.727520942687988\n      ],\n      [\n        \"▁trocken\",\n        -12.727568626403809\n      ],\n      [\n        \"▁laughter\",\n        -12.727724075317383\n      ],\n      [\n        \"▁Attend\",\n        -12.727785110473633\n      ],\n      [\n        \"jung\",\n        -12.727822303771973\n      ],\n      [\n        \"racking\",\n        -12.727934837341309\n      ],\n      [\n        \"ORS\",\n        -12.728178024291992\n      ],\n      [\n        \"▁rasp\",\n        -12.728527069091797\n      ],\n      [\n        \"VF\",\n        -12.728551864624023\n      ],\n      [\n        \"▁Tamil\",\n        -12.72860050201416\n      ],\n      [\n        \"124\",\n        -12.728602409362793\n      ],\n      [\n        \"▁Fiber\",\n        -12.728714942932129\n      ],\n      [\n        \"▁launches\",\n        -12.728755950927734\n      ],\n      [\n        \"Post\",\n        -12.728777885437012\n      ],\n      [\n        \"▁bucks\",\n        -12.729072570800781\n      ],\n      [\n        \"▁Nicholas\",\n        -12.72923755645752\n      ],\n      [\n        \"▁cărți\",\n        -12.729255676269531\n      ],\n      [\n        \"emper\",\n        -12.729681968688965\n      ],\n      [\n        \"Point\",\n        -12.729689598083496\n      ],\n      [\n        \"fraction\",\n        -12.729753494262695\n      ],\n      [\n        \"▁BIG\",\n        -12.729804992675781\n      ],\n      [\n        \"▁lancer\",\n        -12.729829788208008\n      ],\n      [\n        \"EVER\",\n        -12.72997760772705\n      ],\n      [\n        \"trend\",\n        -12.73000431060791\n      ],\n      [\n        \"▁remerci\",\n        -12.730076789855957\n      ],\n      [\n        \"▁prevalent\",\n        -12.730168342590332\n      ],\n      [\n        \"370\",\n        -12.730290412902832\n      ],\n      [\n        \"▁bestellen\",\n        -12.730327606201172\n      ],\n      [\n        \"Buying\",\n        -12.730341911315918\n      ],\n      [\n        \"▁Aufbau\",\n        -12.730416297912598\n      ],\n      [\n        \"▁opini\",\n        -12.730416297912598\n      ],\n      [\n        \"▁regiune\",\n        -12.730663299560547\n      ],\n      [\n        \"▁martial\",\n        -12.73069953918457\n      ],\n      [\n        \"LK\",\n        -12.730754852294922\n      ],\n      [\n        \"▁Feuerwehr\",\n        -12.730974197387695\n      ],\n      [\n        \"screened\",\n        -12.73099422454834\n      ],\n      [\n        \"Blue\",\n        -12.73120403289795\n      ],\n      [\n        \"▁analize\",\n        -12.731237411499023\n      ],\n      [\n        \"▁lure\",\n        -12.731247901916504\n      ],\n      [\n        \"▁internally\",\n        -12.731283187866211\n      ],\n      [\n        \"father\",\n        -12.731322288513184\n      ],\n      [\n        \"▁diplomatic\",\n        -12.731343269348145\n      ],\n      [\n        \"▁Activity\",\n        -12.731464385986328\n      ],\n      [\n        \"▁cliqu\",\n        -12.73156452178955\n      ],\n      [\n        \"▁adequately\",\n        -12.731809616088867\n      ],\n      [\n        \"▁Elena\",\n        -12.73183822631836\n      ],\n      [\n        \"▁Citizens\",\n        -12.732102394104004\n      ],\n      [\n        \"▁Länge\",\n        -12.732295989990234\n      ],\n      [\n        \"▁respectful\",\n        -12.732300758361816\n      ],\n      [\n        \"▁zuständig\",\n        -12.73248291015625\n      ],\n      [\n        \"▁réception\",\n        -12.732584953308105\n      ],\n      [\n        \"▁headset\",\n        -12.732686996459961\n      ],\n      [\n        \"▁awhile\",\n        -12.732705116271973\n      ],\n      [\n        \"▁speculation\",\n        -12.732707977294922\n      ],\n      [\n        \"▁WhatsApp\",\n        -12.732714653015137\n      ],\n      [\n        \"▁tulbur\",\n        -12.732731819152832\n      ],\n      [\n        \"▁voluntar\",\n        -12.732758522033691\n      ],\n      [\n        \"▁Studium\",\n        -12.73277473449707\n      ],\n      [\n        \"▁protector\",\n        -12.732833862304688\n      ],\n      [\n        \"▁Wrap\",\n        -12.732840538024902\n      ],\n      [\n        \"staat\",\n        -12.732951164245605\n      ],\n      [\n        \"▁judgement\",\n        -12.733396530151367\n      ],\n      [\n        \"unauthorized\",\n        -12.733397483825684\n      ],\n      [\n        \"Rank\",\n        -12.733487129211426\n      ],\n      [\n        \"pră\",\n        -12.733503341674805\n      ],\n      [\n        \"▁Paw\",\n        -12.733627319335938\n      ],\n      [\n        \"▁relev\",\n        -12.733664512634277\n      ],\n      [\n        \"▁arbor\",\n        -12.733830451965332\n      ],\n      [\n        \"stretches\",\n        -12.733885765075684\n      ],\n      [\n        \"nook\",\n        -12.733906745910645\n      ],\n      [\n        \"▁Tunis\",\n        -12.733907699584961\n      ],\n      [\n        \"▁shocking\",\n        -12.734036445617676\n      ],\n      [\n        \"▁oppress\",\n        -12.73414421081543\n      ],\n      [\n        \"10.1\",\n        -12.7341890335083\n      ],\n      [\n        \"▁ERP\",\n        -12.734310150146484\n      ],\n      [\n        \"wolle\",\n        -12.7343168258667\n      ],\n      [\n        \"▁Catch\",\n        -12.734352111816406\n      ],\n      [\n        \"Plus\",\n        -12.734368324279785\n      ],\n      [\n        \"Market\",\n        -12.734445571899414\n      ],\n      [\n        \"scribed\",\n        -12.734536170959473\n      ],\n      [\n        \"▁décoration\",\n        -12.734594345092773\n      ],\n      [\n        \"▁chanson\",\n        -12.734607696533203\n      ],\n      [\n        \"▁Midwest\",\n        -12.734763145446777\n      ],\n      [\n        \"▁Spencer\",\n        -12.734795570373535\n      ],\n      [\n        \"▁societate\",\n        -12.734807968139648\n      ],\n      [\n        \"curated\",\n        -12.735087394714355\n      ],\n      [\n        \"▁canopy\",\n        -12.735135078430176\n      ],\n      [\n        \"ат\",\n        -12.735142707824707\n      ],\n      [\n        \"Sig\",\n        -12.73514461517334\n      ],\n      [\n        \"▁witch\",\n        -12.735153198242188\n      ],\n      [\n        \"envoyer\",\n        -12.735175132751465\n      ],\n      [\n        \"▁$1,000\",\n        -12.735230445861816\n      ],\n      [\n        \"▁peripheral\",\n        -12.735482215881348\n      ],\n      [\n        \"nnouncing\",\n        -12.735509872436523\n      ],\n      [\n        \"perfect\",\n        -12.73559284210205\n      ],\n      [\n        \"▁warten\",\n        -12.735748291015625\n      ],\n      [\n        \"ELI\",\n        -12.735822677612305\n      ],\n      [\n        \"▁recap\",\n        -12.735912322998047\n      ],\n      [\n        \"dün\",\n        -12.735978126525879\n      ],\n      [\n        \"▁Spre\",\n        -12.736029624938965\n      ],\n      [\n        \"2005\",\n        -12.736153602600098\n      ],\n      [\n        \"▁réparation\",\n        -12.73617935180664\n      ],\n      [\n        \"▁extraordinar\",\n        -12.736196517944336\n      ],\n      [\n        \"existence\",\n        -12.736337661743164\n      ],\n      [\n        \"oanele\",\n        -12.736467361450195\n      ],\n      [\n        \"▁reprezentant\",\n        -12.736474990844727\n      ],\n      [\n        \"▁attacker\",\n        -12.736490249633789\n      ],\n      [\n        \"▁Berliner\",\n        -12.73657512664795\n      ],\n      [\n        \"experience\",\n        -12.736649513244629\n      ],\n      [\n        \"▁Monde\",\n        -12.736800193786621\n      ],\n      [\n        \"intervention\",\n        -12.736956596374512\n      ],\n      [\n        \"▁Einstellung\",\n        -12.736977577209473\n      ],\n      [\n        \"▁Valentin\",\n        -12.737011909484863\n      ],\n      [\n        \"▁zonă\",\n        -12.737200736999512\n      ],\n      [\n        \"occupant\",\n        -12.737223625183105\n      ],\n      [\n        \"▁mobilis\",\n        -12.737260818481445\n      ],\n      [\n        \"metall\",\n        -12.737261772155762\n      ],\n      [\n        \"evangeli\",\n        -12.73729133605957\n      ],\n      [\n        \"Adding\",\n        -12.737326622009277\n      ],\n      [\n        \"▁Roland\",\n        -12.73735237121582\n      ],\n      [\n        \"ENCE\",\n        -12.737462043762207\n      ],\n      [\n        \"▁Insul\",\n        -12.737478256225586\n      ],\n      [\n        \"tellement\",\n        -12.737497329711914\n      ],\n      [\n        \"▁Blogger\",\n        -12.737499237060547\n      ],\n      [\n        \"▁prote\",\n        -12.737504005432129\n      ],\n      [\n        \"▁Minimum\",\n        -12.737574577331543\n      ],\n      [\n        \"▁termic\",\n        -12.737624168395996\n      ],\n      [\n        \"▁Sachen\",\n        -12.737859725952148\n      ],\n      [\n        \"▁Maschinen\",\n        -12.737863540649414\n      ],\n      [\n        \"▁Dragnea\",\n        -12.737926483154297\n      ],\n      [\n        \"▁overtime\",\n        -12.737967491149902\n      ],\n      [\n        \"calorie\",\n        -12.737968444824219\n      ],\n      [\n        \"▁jene\",\n        -12.73814868927002\n      ],\n      [\n        \"▁Satan\",\n        -12.738153457641602\n      ],\n      [\n        \"▁currencies\",\n        -12.73827075958252\n      ],\n      [\n        \"▁echipamente\",\n        -12.738329887390137\n      ],\n      [\n        \"▁forgiveness\",\n        -12.73843765258789\n      ],\n      [\n        \"▁Pause\",\n        -12.738479614257812\n      ],\n      [\n        \"▁Witt\",\n        -12.738529205322266\n      ],\n      [\n        \"STOR\",\n        -12.738632202148438\n      ],\n      [\n        \"▁actuelle\",\n        -12.738703727722168\n      ],\n      [\n        \"▁Ard\",\n        -12.738853454589844\n      ],\n      [\n        \"▁Constitu\",\n        -12.738880157470703\n      ],\n      [\n        \"ghan\",\n        -12.7388916015625\n      ],\n      [\n        \"Make\",\n        -12.738906860351562\n      ],\n      [\n        \"▁garne\",\n        -12.738947868347168\n      ],\n      [\n        \"▁Hitler\",\n        -12.738956451416016\n      ],\n      [\n        \"▁rubbish\",\n        -12.738973617553711\n      ],\n      [\n        \"6.0\",\n        -12.739025115966797\n      ],\n      [\n        \"▁Giving\",\n        -12.739177703857422\n      ],\n      [\n        \"▁persever\",\n        -12.73937702178955\n      ],\n      [\n        \"wirk\",\n        -12.7394380569458\n      ],\n      [\n        \"liegenden\",\n        -12.739455223083496\n      ],\n      [\n        \"▁morceau\",\n        -12.73946762084961\n      ],\n      [\n        \"atty\",\n        -12.73961067199707\n      ],\n      [\n        \"▁Quebec\",\n        -12.739669799804688\n      ],\n      [\n        \"harmonie\",\n        -12.739705085754395\n      ],\n      [\n        \"Nummer\",\n        -12.739721298217773\n      ],\n      [\n        \"▁splendid\",\n        -12.739747047424316\n      ],\n      [\n        \"▁halfway\",\n        -12.739808082580566\n      ],\n      [\n        \"▁periodically\",\n        -12.740071296691895\n      ],\n      [\n        \"▁Ländern\",\n        -12.740077018737793\n      ],\n      [\n        \"▁AAA\",\n        -12.740083694458008\n      ],\n      [\n        \"▁Frost\",\n        -12.740198135375977\n      ],\n      [\n        \"▁heroin\",\n        -12.740289688110352\n      ],\n      [\n        \"▁bucurie\",\n        -12.7403564453125\n      ],\n      [\n        \"▁Pradesh\",\n        -12.74036693572998\n      ],\n      [\n        \"zusetzen\",\n        -12.740405082702637\n      ],\n      [\n        \"raising\",\n        -12.740425109863281\n      ],\n      [\n        \"▁furniz\",\n        -12.740567207336426\n      ],\n      [\n        \"▁convi\",\n        -12.740575790405273\n      ],\n      [\n        \"pictured\",\n        -12.740911483764648\n      ],\n      [\n        \"▁inadequate\",\n        -12.741065979003906\n      ],\n      [\n        \"▁aprobat\",\n        -12.741069793701172\n      ],\n      [\n        \"▁exercising\",\n        -12.741083145141602\n      ],\n      [\n        \"▁faisai\",\n        -12.741138458251953\n      ],\n      [\n        \"▁prosecution\",\n        -12.741231918334961\n      ],\n      [\n        \"380\",\n        -12.741402626037598\n      ],\n      [\n        \"▁Potential\",\n        -12.74145793914795\n      ],\n      [\n        \"▁Magi\",\n        -12.741523742675781\n      ],\n      [\n        \"From\",\n        -12.741752624511719\n      ],\n      [\n        \"batterie\",\n        -12.74181079864502\n      ],\n      [\n        \"▁poisson\",\n        -12.74185562133789\n      ],\n      [\n        \"▁Probe\",\n        -12.741950988769531\n      ],\n      [\n        \"▁pastel\",\n        -12.741998672485352\n      ],\n      [\n        \"▁tracked\",\n        -12.742410659790039\n      ],\n      [\n        \"▁advertisers\",\n        -12.74251937866211\n      ],\n      [\n        \"adevar\",\n        -12.742537498474121\n      ],\n      [\n        \"ит\",\n        -12.742776870727539\n      ],\n      [\n        \"▁Herren\",\n        -12.742815971374512\n      ],\n      [\n        \"EAM\",\n        -12.742820739746094\n      ],\n      [\n        \"▁scooter\",\n        -12.742822647094727\n      ],\n      [\n        \"requesting\",\n        -12.742841720581055\n      ],\n      [\n        \"dynamis\",\n        -12.742949485778809\n      ],\n      [\n        \"▁dahin\",\n        -12.742961883544922\n      ],\n      [\n        \"▁tweak\",\n        -12.743061065673828\n      ],\n      [\n        \"▁hail\",\n        -12.743101119995117\n      ],\n      [\n        \"▁întotdeauna\",\n        -12.743160247802734\n      ],\n      [\n        \"▁Publikum\",\n        -12.743167877197266\n      ],\n      [\n        \"▁panoramic\",\n        -12.743167877197266\n      ],\n      [\n        \"▁PRE\",\n        -12.74331283569336\n      ],\n      [\n        \"▁thrill\",\n        -12.743361473083496\n      ],\n      [\n        \"Open\",\n        -12.743366241455078\n      ],\n      [\n        \"▁Layer\",\n        -12.74345588684082\n      ],\n      [\n        \"▁Bosch\",\n        -12.743459701538086\n      ],\n      [\n        \"hull\",\n        -12.743511199951172\n      ],\n      [\n        \"▁născut\",\n        -12.743518829345703\n      ],\n      [\n        \"tausch\",\n        -12.743559837341309\n      ],\n      [\n        \"▁autoturism\",\n        -12.743577003479004\n      ],\n      [\n        \"▁crank\",\n        -12.743701934814453\n      ],\n      [\n        \"CLE\",\n        -12.743735313415527\n      ],\n      [\n        \"▁Frederick\",\n        -12.74386978149414\n      ],\n      [\n        \"mog\",\n        -12.743887901306152\n      ],\n      [\n        \"behalten\",\n        -12.74396800994873\n      ],\n      [\n        \"▁aunt\",\n        -12.744050979614258\n      ],\n      [\n        \"▁Triple\",\n        -12.744141578674316\n      ],\n      [\n        \"▁Ark\",\n        -12.744242668151855\n      ],\n      [\n        \"AUD\",\n        -12.744440078735352\n      ],\n      [\n        \"▁Candy\",\n        -12.744505882263184\n      ],\n      [\n        \"tama\",\n        -12.744515419006348\n      ],\n      [\n        \"▁Evaluation\",\n        -12.744571685791016\n      ],\n      [\n        \"▁Memphis\",\n        -12.744571685791016\n      ],\n      [\n        \"▁stellar\",\n        -12.74457836151123\n      ],\n      [\n        \"▁fabricat\",\n        -12.744632720947266\n      ],\n      [\n        \"▁terminat\",\n        -12.744868278503418\n      ],\n      [\n        \"▁domnul\",\n        -12.744913101196289\n      ],\n      [\n        \"▁keynote\",\n        -12.744925498962402\n      ],\n      [\n        \"▁dentistry\",\n        -12.744951248168945\n      ],\n      [\n        \"rift\",\n        -12.745052337646484\n      ],\n      [\n        \"▁bilan\",\n        -12.745119094848633\n      ],\n      [\n        \"2.6\",\n        -12.745125770568848\n      ],\n      [\n        \"undergoing\",\n        -12.745210647583008\n      ],\n      [\n        \"▁pseudo\",\n        -12.745274543762207\n      ],\n      [\n        \"▁maşin\",\n        -12.745280265808105\n      ],\n      [\n        \"▁munte\",\n        -12.74555492401123\n      ],\n      [\n        \"▁VW\",\n        -12.745932579040527\n      ],\n      [\n        \"▁Rab\",\n        -12.74593448638916\n      ],\n      [\n        \"▁sustine\",\n        -12.745972633361816\n      ],\n      [\n        \"▁Bedingungen\",\n        -12.745977401733398\n      ],\n      [\n        \"▁învăţ\",\n        -12.745980262756348\n      ],\n      [\n        \"▁pyramid\",\n        -12.745983123779297\n      ],\n      [\n        \"HEN\",\n        -12.746020317077637\n      ],\n      [\n        \"▁citrus\",\n        -12.746058464050293\n      ],\n      [\n        \"Code\",\n        -12.746064186096191\n      ],\n      [\n        \"▁Beginning\",\n        -12.746164321899414\n      ],\n      [\n        \"▁discourse\",\n        -12.746249198913574\n      ],\n      [\n        \"▁miercuri\",\n        -12.746329307556152\n      ],\n      [\n        \"▁producător\",\n        -12.74637508392334\n      ],\n      [\n        \"▁analys\",\n        -12.746397972106934\n      ],\n      [\n        \"▁Evan\",\n        -12.7467041015625\n      ],\n      [\n        \"138\",\n        -12.746987342834473\n      ],\n      [\n        \"▁târziu\",\n        -12.74703311920166\n      ],\n      [\n        \"▁relocation\",\n        -12.747052192687988\n      ],\n      [\n        \"decizia\",\n        -12.74708080291748\n      ],\n      [\n        \"tollen\",\n        -12.74714183807373\n      ],\n      [\n        \"TRO\",\n        -12.747180938720703\n      ],\n      [\n        \"▁runway\",\n        -12.74719524383545\n      ],\n      [\n        \"illet\",\n        -12.747270584106445\n      ],\n      [\n        \"▁serveur\",\n        -12.747387886047363\n      ],\n      [\n        \"bezogen\",\n        -12.747427940368652\n      ],\n      [\n        \"▁believers\",\n        -12.747668266296387\n      ],\n      [\n        \"determined\",\n        -12.747711181640625\n      ],\n      [\n        \"▁reinforced\",\n        -12.74791431427002\n      ],\n      [\n        \"▁wedge\",\n        -12.748006820678711\n      ],\n      [\n        \"methyl\",\n        -12.74807357788086\n      ],\n      [\n        \"MES\",\n        -12.748188018798828\n      ],\n      [\n        \"vpn\",\n        -12.748374938964844\n      ],\n      [\n        \"▁consta\",\n        -12.74837875366211\n      ],\n      [\n        \"▁vizitat\",\n        -12.748420715332031\n      ],\n      [\n        \"modul\",\n        -12.748455047607422\n      ],\n      [\n        \"▁routing\",\n        -12.748528480529785\n      ],\n      [\n        \"tempted\",\n        -12.748540878295898\n      ],\n      [\n        \"URS\",\n        -12.748785018920898\n      ],\n      [\n        \"apprentissage\",\n        -12.748795509338379\n      ],\n      [\n        \"▁Hungary\",\n        -12.748796463012695\n      ],\n      [\n        \"Previously\",\n        -12.74880313873291\n      ],\n      [\n        \"▁translator\",\n        -12.748804092407227\n      ],\n      [\n        \"▁resonate\",\n        -12.748830795288086\n      ],\n      [\n        \"201\",\n        -12.748851776123047\n      ],\n      [\n        \"3-0\",\n        -12.749029159545898\n      ],\n      [\n        \"▁reunion\",\n        -12.749090194702148\n      ],\n      [\n        \"▁palate\",\n        -12.749096870422363\n      ],\n      [\n        \"0.4\",\n        -12.749171257019043\n      ],\n      [\n        \"reheat\",\n        -12.74924373626709\n      ],\n      [\n        \"Roo\",\n        -12.749261856079102\n      ],\n      [\n        \"200,000\",\n        -12.74940013885498\n      ],\n      [\n        \"Bro\",\n        -12.749431610107422\n      ],\n      [\n        \"▁estimation\",\n        -12.749468803405762\n      ],\n      [\n        \"schneiden\",\n        -12.749499320983887\n      ],\n      [\n        \"▁Inspired\",\n        -12.749506950378418\n      ],\n      [\n        \"▁lottery\",\n        -12.749539375305176\n      ],\n      [\n        \"▁Friedrich\",\n        -12.749887466430664\n      ],\n      [\n        \"FIT\",\n        -12.749913215637207\n      ],\n      [\n        \"0.6\",\n        -12.7499418258667\n      ],\n      [\n        \"▁dagegen\",\n        -12.74997615814209\n      ],\n      [\n        \"▁Reb\",\n        -12.750115394592285\n      ],\n      [\n        \"▁Eigenschaften\",\n        -12.75020694732666\n      ],\n      [\n        \"▁molding\",\n        -12.750361442565918\n      ],\n      [\n        \"▁Harper\",\n        -12.750548362731934\n      ],\n      [\n        \"verwaltung\",\n        -12.75055980682373\n      ],\n      [\n        \"▁Schlüssel\",\n        -12.75055980682373\n      ],\n      [\n        \"▁desfasura\",\n        -12.75055980682373\n      ],\n      [\n        \"▁rencontrer\",\n        -12.75055980682373\n      ],\n      [\n        \"▁negoci\",\n        -12.750581741333008\n      ],\n      [\n        \"▁Leading\",\n        -12.750615119934082\n      ],\n      [\n        \"▁necesita\",\n        -12.750652313232422\n      ],\n      [\n        \"▁biking\",\n        -12.750683784484863\n      ],\n      [\n        \"▁jointly\",\n        -12.75069808959961\n      ],\n      [\n        \"▁crush\",\n        -12.750702857971191\n      ],\n      [\n        \"Vol\",\n        -12.750768661499023\n      ],\n      [\n        \"▁ebay\",\n        -12.750836372375488\n      ],\n      [\n        \"▁Shri\",\n        -12.750991821289062\n      ],\n      [\n        \"▁AMD\",\n        -12.751029968261719\n      ],\n      [\n        \"FG\",\n        -12.751032829284668\n      ],\n      [\n        \"Argentin\",\n        -12.75120735168457\n      ],\n      [\n        \"▁incercat\",\n        -12.751431465148926\n      ],\n      [\n        \"▁tidy\",\n        -12.751628875732422\n      ],\n      [\n        \"▁provoqu\",\n        -12.751635551452637\n      ],\n      [\n        \"▁Written\",\n        -12.751649856567383\n      ],\n      [\n        \"▁Kooperation\",\n        -12.751666069030762\n      ],\n      [\n        \"▁scripture\",\n        -12.751952171325684\n      ],\n      [\n        \"▁Pflicht\",\n        -12.751974105834961\n      ],\n      [\n        \"ficial\",\n        -12.752013206481934\n      ],\n      [\n        \"vremea\",\n        -12.752013206481934\n      ],\n      [\n        \"▁Growing\",\n        -12.752115249633789\n      ],\n      [\n        \"▁redesign\",\n        -12.752119064331055\n      ],\n      [\n        \"▁obstacle\",\n        -12.752214431762695\n      ],\n      [\n        \"▁rugam\",\n        -12.752235412597656\n      ],\n      [\n        \"▁SPD\",\n        -12.752243995666504\n      ],\n      [\n        \"165\",\n        -12.752270698547363\n      ],\n      [\n        \"fiz\",\n        -12.752284049987793\n      ],\n      [\n        \"▁startet\",\n        -12.752326011657715\n      ],\n      [\n        \"▁Principle\",\n        -12.752327919006348\n      ],\n      [\n        \"▁abdominal\",\n        -12.752327919006348\n      ],\n      [\n        \"▁podium\",\n        -12.752528190612793\n      ],\n      [\n        \"duty\",\n        -12.752616882324219\n      ],\n      [\n        \"bonne\",\n        -12.752679824829102\n      ],\n      [\n        \"▁Serbia\",\n        -12.752687454223633\n      ],\n      [\n        \"▁brunch\",\n        -12.752839088439941\n      ],\n      [\n        \"▁Personne\",\n        -12.752975463867188\n      ],\n      [\n        \"▁Idea\",\n        -12.753034591674805\n      ],\n      [\n        \"forementioned\",\n        -12.753036499023438\n      ],\n      [\n        \"▁chassis\",\n        -12.753037452697754\n      ],\n      [\n        \"gebühr\",\n        -12.753050804138184\n      ],\n      [\n        \"ucun\",\n        -12.753061294555664\n      ],\n      [\n        \"▁Maz\",\n        -12.7531156539917\n      ],\n      [\n        \"1-4\",\n        -12.75318431854248\n      ],\n      [\n        \"kleid\",\n        -12.753273963928223\n      ],\n      [\n        \"▁Volvo\",\n        -12.753337860107422\n      ],\n      [\n        \"brechen\",\n        -12.753378868103027\n      ],\n      [\n        \"▁homepage\",\n        -12.753472328186035\n      ],\n      [\n        \"fuz\",\n        -12.753509521484375\n      ],\n      [\n        \"▁abgeschlossen\",\n        -12.753595352172852\n      ],\n      [\n        \"▁gelungen\",\n        -12.753658294677734\n      ],\n      [\n        \"▁booklet\",\n        -12.753711700439453\n      ],\n      [\n        \"▁Ukrainian\",\n        -12.753745079040527\n      ],\n      [\n        \"▁Melissa\",\n        -12.753746032714844\n      ],\n      [\n        \"CENT\",\n        -12.75379467010498\n      ],\n      [\n        \"▁intégré\",\n        -12.753806114196777\n      ],\n      [\n        \"weighing\",\n        -12.753827095031738\n      ],\n      [\n        \"▁crumbl\",\n        -12.753894805908203\n      ],\n      [\n        \"▁bunk\",\n        -12.754167556762695\n      ],\n      [\n        \"krieg\",\n        -12.754207611083984\n      ],\n      [\n        \"▁freshman\",\n        -12.754307746887207\n      ],\n      [\n        \"alaya\",\n        -12.754339218139648\n      ],\n      [\n        \"Avem\",\n        -12.754353523254395\n      ],\n      [\n        \"▁Kne\",\n        -12.754423141479492\n      ],\n      [\n        \"▁upstairs\",\n        -12.75448226928711\n      ],\n      [\n        \"AIL\",\n        -12.754508972167969\n      ],\n      [\n        \"țul\",\n        -12.75478744506836\n      ],\n      [\n        \"▁Lecture\",\n        -12.754817962646484\n      ],\n      [\n        \"▁entdecken\",\n        -12.754843711853027\n      ],\n      [\n        \"▁GMT\",\n        -12.754912376403809\n      ],\n      [\n        \"▁Leitung\",\n        -12.754937171936035\n      ],\n      [\n        \"▁inclined\",\n        -12.755170822143555\n      ],\n      [\n        \"▁skillet\",\n        -12.75555419921875\n      ],\n      [\n        \"FN\",\n        -12.755742073059082\n      ],\n      [\n        \"▁Perform\",\n        -12.755821228027344\n      ],\n      [\n        \"shift\",\n        -12.75583267211914\n      ],\n      [\n        \"recognizing\",\n        -12.755873680114746\n      ],\n      [\n        \"▁concise\",\n        -12.755873680114746\n      ],\n      [\n        \"▁obsessed\",\n        -12.755873680114746\n      ],\n      [\n        \"▁removable\",\n        -12.755873680114746\n      ],\n      [\n        \"▁Relax\",\n        -12.755888938903809\n      ],\n      [\n        \"delegates\",\n        -12.75605583190918\n      ],\n      [\n        \"▁expedi\",\n        -12.756074905395508\n      ],\n      [\n        \"▁Schä\",\n        -12.756138801574707\n      ],\n      [\n        \"iete\",\n        -12.756211280822754\n      ],\n      [\n        \"▁reciproc\",\n        -12.756229400634766\n      ],\n      [\n        \"▁neutr\",\n        -12.75625228881836\n      ],\n      [\n        \"lactic\",\n        -12.756314277648926\n      ],\n      [\n        \"▁Nah\",\n        -12.756328582763672\n      ],\n      [\n        \"scene\",\n        -12.7565279006958\n      ],\n      [\n        \"▁Helm\",\n        -12.756563186645508\n      ],\n      [\n        \"▁Bewerbung\",\n        -12.756671905517578\n      ],\n      [\n        \"▁Cassi\",\n        -12.75667953491211\n      ],\n      [\n        \"▁Gelegenheit\",\n        -12.756939888000488\n      ],\n      [\n        \"▁reflective\",\n        -12.757140159606934\n      ],\n      [\n        \"▁încredere\",\n        -12.757149696350098\n      ],\n      [\n        \"▁cigarettes\",\n        -12.75717544555664\n      ],\n      [\n        \"▁Zusätzlich\",\n        -12.757295608520508\n      ],\n      [\n        \"▁intercept\",\n        -12.75731372833252\n      ],\n      [\n        \"▁Finn\",\n        -12.757468223571777\n      ],\n      [\n        \"▁ignor\",\n        -12.757661819458008\n      ],\n      [\n        \"gian\",\n        -12.75766372680664\n      ],\n      [\n        \"BRA\",\n        -12.757740020751953\n      ],\n      [\n        \"leader\",\n        -12.757957458496094\n      ],\n      [\n        \"nius\",\n        -12.757981300354004\n      ],\n      [\n        \"▁skies\",\n        -12.757987022399902\n      ],\n      [\n        \"▁nunta\",\n        -12.758023262023926\n      ],\n      [\n        \"▁grec\",\n        -12.758041381835938\n      ],\n      [\n        \"arranging\",\n        -12.75816822052002\n      ],\n      [\n        \"wartet\",\n        -12.758231163024902\n      ],\n      [\n        \"▁kostet\",\n        -12.758377075195312\n      ],\n      [\n        \"▁Entre\",\n        -12.758541107177734\n      ],\n      [\n        \"Mag\",\n        -12.758575439453125\n      ],\n      [\n        \"▁radiator\",\n        -12.758598327636719\n      ],\n      [\n        \"übrigens\",\n        -12.758689880371094\n      ],\n      [\n        \"Internet\",\n        -12.758706092834473\n      ],\n      [\n        \"▁connexion\",\n        -12.758718490600586\n      ],\n      [\n        \"▁prolonged\",\n        -12.758854866027832\n      ],\n      [\n        \"▁capabil\",\n        -12.75914192199707\n      ],\n      [\n        \"▁feeder\",\n        -12.759217262268066\n      ],\n      [\n        \"Initially\",\n        -12.759223937988281\n      ],\n      [\n        \"Green\",\n        -12.75926685333252\n      ],\n      [\n        \"▁passiert\",\n        -12.759272575378418\n      ],\n      [\n        \"▁courtyard\",\n        -12.759299278259277\n      ],\n      [\n        \"▁judeţ\",\n        -12.759320259094238\n      ],\n      [\n        \"▁Coalition\",\n        -12.759431838989258\n      ],\n      [\n        \"▁atmospheric\",\n        -12.759431838989258\n      ],\n      [\n        \"▁velocity\",\n        -12.759431838989258\n      ],\n      [\n        \"▁Frühstück\",\n        -12.759432792663574\n      ],\n      [\n        \"vacancies\",\n        -12.759438514709473\n      ],\n      [\n        \"unified\",\n        -12.759538650512695\n      ],\n      [\n        \"▁Ahmed\",\n        -12.759538650512695\n      ],\n      [\n        \"poured\",\n        -12.759550094604492\n      ],\n      [\n        \"▁Mikro\",\n        -12.75959587097168\n      ],\n      [\n        \"▁Klar\",\n        -12.759661674499512\n      ],\n      [\n        \"kommt\",\n        -12.759681701660156\n      ],\n      [\n        \"seated\",\n        -12.759744644165039\n      ],\n      [\n        \"musik\",\n        -12.75976848602295\n      ],\n      [\n        \"▁stimulation\",\n        -12.759841918945312\n      ],\n      [\n        \"▁solicitat\",\n        -12.759880065917969\n      ],\n      [\n        \"▁politically\",\n        -12.760165214538574\n      ],\n      [\n        \"restoring\",\n        -12.760322570800781\n      ],\n      [\n        \"▁Rag\",\n        -12.760435104370117\n      ],\n      [\n        \"▁officielle\",\n        -12.760468482971191\n      ],\n      [\n        \"▁Annie\",\n        -12.760479927062988\n      ],\n      [\n        \"▁tourne\",\n        -12.760634422302246\n      ],\n      [\n        \"▁Joel\",\n        -12.760642051696777\n      ],\n      [\n        \"blieben\",\n        -12.760666847229004\n      ],\n      [\n        \"▁repayment\",\n        -12.760736465454102\n      ],\n      [\n        \"▁Strategi\",\n        -12.760781288146973\n      ],\n      [\n        \"▁prietenii\",\n        -12.760804176330566\n      ],\n      [\n        \"▁Montgomery\",\n        -12.760858535766602\n      ],\n      [\n        \"▁résidence\",\n        -12.760858535766602\n      ],\n      [\n        \"▁sunglasses\",\n        -12.760858535766602\n      ],\n      [\n        \"▁1956\",\n        -12.760882377624512\n      ],\n      [\n        \"MEN\",\n        -12.76093578338623\n      ],\n      [\n        \"pouvant\",\n        -12.760997772216797\n      ],\n      [\n        \"375\",\n        -12.761061668395996\n      ],\n      [\n        \"directed\",\n        -12.761173248291016\n      ],\n      [\n        \"▁grinder\",\n        -12.76120662689209\n      ],\n      [\n        \"rträge\",\n        -12.761279106140137\n      ],\n      [\n        \"▁nickel\",\n        -12.761299133300781\n      ],\n      [\n        \"▁Maintain\",\n        -12.761313438415527\n      ],\n      [\n        \"▁Holmes\",\n        -12.761392593383789\n      ],\n      [\n        \"▁obtinut\",\n        -12.76157283782959\n      ],\n      [\n        \"▁walnut\",\n        -12.761585235595703\n      ],\n      [\n        \"▁consultancy\",\n        -12.761640548706055\n      ],\n      [\n        \"cooled\",\n        -12.761651039123535\n      ],\n      [\n        \"▁Brig\",\n        -12.761711120605469\n      ],\n      [\n        \"▁Produc\",\n        -12.761873245239258\n      ],\n      [\n        \"street\",\n        -12.76187515258789\n      ],\n      [\n        \"▁Einfach\",\n        -12.761897087097168\n      ],\n      [\n        \"North\",\n        -12.762149810791016\n      ],\n      [\n        \"▁PET\",\n        -12.76220989227295\n      ],\n      [\n        \"▁Président\",\n        -12.762288093566895\n      ],\n      [\n        \"▁produsului\",\n        -12.762457847595215\n      ],\n      [\n        \"literatur\",\n        -12.762483596801758\n      ],\n      [\n        \"133\",\n        -12.762561798095703\n      ],\n      [\n        \"▁recours\",\n        -12.762591361999512\n      ],\n      [\n        \"▁verpflichtet\",\n        -12.76264476776123\n      ],\n      [\n        \"▁Wur\",\n        -12.762733459472656\n      ],\n      [\n        \"▁psiholog\",\n        -12.762796401977539\n      ],\n      [\n        \"Veg\",\n        -12.762871742248535\n      ],\n      [\n        \"▁hype\",\n        -12.762930870056152\n      ],\n      [\n        \"augmenter\",\n        -12.762974739074707\n      ],\n      [\n        \"▁Welsh\",\n        -12.763012886047363\n      ],\n      [\n        \"mounted\",\n        -12.763158798217773\n      ],\n      [\n        \"▁Wann\",\n        -12.763425827026367\n      ],\n      [\n        \"▁gezeigt\",\n        -12.763620376586914\n      ],\n      [\n        \"▁memo\",\n        -12.763631820678711\n      ],\n      [\n        \"veterinary\",\n        -12.763717651367188\n      ],\n      [\n        \"▁Olympia\",\n        -12.763717651367188\n      ],\n      [\n        \"▁handsome\",\n        -12.763871192932129\n      ],\n      [\n        \"yama\",\n        -12.763911247253418\n      ],\n      [\n        \"studio\",\n        -12.763912200927734\n      ],\n      [\n        \"sozial\",\n        -12.764020919799805\n      ],\n      [\n        \"▁reap\",\n        -12.764104843139648\n      ],\n      [\n        \"▁didactic\",\n        -12.764111518859863\n      ],\n      [\n        \"▁Cookie\",\n        -12.764126777648926\n      ],\n      [\n        \"▁cooper\",\n        -12.764230728149414\n      ],\n      [\n        \"▁discern\",\n        -12.76441478729248\n      ],\n      [\n        \"▁Ubuntu\",\n        -12.764433860778809\n      ],\n      [\n        \"domain\",\n        -12.76443862915039\n      ],\n      [\n        \"▁plasa\",\n        -12.764460563659668\n      ],\n      [\n        \"hong\",\n        -12.764585494995117\n      ],\n      [\n        \"▁Freiheit\",\n        -12.764662742614746\n      ],\n      [\n        \"▁Gateway\",\n        -12.764678001403809\n      ],\n      [\n        \"▁poke\",\n        -12.764796257019043\n      ],\n      [\n        \"▁niedrig\",\n        -12.76484203338623\n      ],\n      [\n        \"▁corrected\",\n        -12.764899253845215\n      ],\n      [\n        \"▁predator\",\n        -12.76490306854248\n      ],\n      [\n        \"QA\",\n        -12.76507568359375\n      ],\n      [\n        \"Physio\",\n        -12.765101432800293\n      ],\n      [\n        \"MAS\",\n        -12.765108108520508\n      ],\n      [\n        \"▁sanctuary\",\n        -12.765151023864746\n      ],\n      [\n        \"▁aferent\",\n        -12.76523494720459\n      ],\n      [\n        \"▁perdre\",\n        -12.765268325805664\n      ],\n      [\n        \"▁recherch\",\n        -12.765397071838379\n      ],\n      [\n        \"ready\",\n        -12.76559829711914\n      ],\n      [\n        \"without\",\n        -12.76560115814209\n      ],\n      [\n        \"▁locuitori\",\n        -12.765628814697266\n      ],\n      [\n        \"▁Memo\",\n        -12.765636444091797\n      ],\n      [\n        \"▁Laden\",\n        -12.765646934509277\n      ],\n      [\n        \"danken\",\n        -12.76577377319336\n      ],\n      [\n        \"▁CNC\",\n        -12.765861511230469\n      ],\n      [\n        \"▁jealous\",\n        -12.765881538391113\n      ],\n      [\n        \"▁Background\",\n        -12.765951156616211\n      ],\n      [\n        \"▁Marx\",\n        -12.765999794006348\n      ],\n      [\n        \"▁Heli\",\n        -12.766039848327637\n      ],\n      [\n        \"▁osteo\",\n        -12.766057968139648\n      ],\n      [\n        \"▁rassembl\",\n        -12.766162872314453\n      ],\n      [\n        \"▁altceva\",\n        -12.766226768493652\n      ],\n      [\n        \"▁beschäftigt\",\n        -12.766226768493652\n      ],\n      [\n        \"▁accru\",\n        -12.766266822814941\n      ],\n      [\n        \"üft\",\n        -12.766273498535156\n      ],\n      [\n        \"▁sprout\",\n        -12.766288757324219\n      ],\n      [\n        \"endorf\",\n        -12.76647663116455\n      ],\n      [\n        \"▁specialitate\",\n        -12.766483306884766\n      ],\n      [\n        \"éanmoins\",\n        -12.766586303710938\n      ],\n      [\n        \"▁poign\",\n        -12.766663551330566\n      ],\n      [\n        \"▁mânca\",\n        -12.766668319702148\n      ],\n      [\n        \"▁stretched\",\n        -12.766752243041992\n      ],\n      [\n        \"fensiv\",\n        -12.76677131652832\n      ],\n      [\n        \"▁Auction\",\n        -12.76683235168457\n      ],\n      [\n        \"hints\",\n        -12.766944885253906\n      ],\n      [\n        \"▁typo\",\n        -12.766983032226562\n      ],\n      [\n        \"▁Rare\",\n        -12.767003059387207\n      ],\n      [\n        \"▁interruption\",\n        -12.767043113708496\n      ],\n      [\n        \"▁Mean\",\n        -12.76709270477295\n      ],\n      [\n        \"privileged\",\n        -12.767108917236328\n      ],\n      [\n        \"▁purtat\",\n        -12.767129898071289\n      ],\n      [\n        \"studie\",\n        -12.767229080200195\n      ],\n      [\n        \"offres\",\n        -12.767248153686523\n      ],\n      [\n        \"▁flap\",\n        -12.76729679107666\n      ],\n      [\n        \"▁rhetoric\",\n        -12.767304420471191\n      ],\n      [\n        \"▁snapshot\",\n        -12.767325401306152\n      ],\n      [\n        \"▁Conservative\",\n        -12.767367362976074\n      ],\n      [\n        \"▁taie\",\n        -12.767416954040527\n      ],\n      [\n        \"Game\",\n        -12.767499923706055\n      ],\n      [\n        \"▁naissance\",\n        -12.767663955688477\n      ],\n      [\n        \"Prof\",\n        -12.767704963684082\n      ],\n      [\n        \"qualified\",\n        -12.767745971679688\n      ],\n      [\n        \"▁suppression\",\n        -12.767749786376953\n      ],\n      [\n        \"▁răspunde\",\n        -12.767765045166016\n      ],\n      [\n        \"▁1/3\",\n        -12.767803192138672\n      ],\n      [\n        \"▁lieben\",\n        -12.767858505249023\n      ],\n      [\n        \"ù\",\n        -12.767898559570312\n      ],\n      [\n        \"america\",\n        -12.767955780029297\n      ],\n      [\n        \"▁Mum\",\n        -12.768182754516602\n      ],\n      [\n        \"▁Researchers\",\n        -12.76827335357666\n      ],\n      [\n        \"quip\",\n        -12.768308639526367\n      ],\n      [\n        \"▁fenomen\",\n        -12.768383026123047\n      ],\n      [\n        \"stools\",\n        -12.768387794494629\n      ],\n      [\n        \"▁commodity\",\n        -12.768742561340332\n      ],\n      [\n        \"▁rejuvenat\",\n        -12.768745422363281\n      ],\n      [\n        \"▁ausgezeichnet\",\n        -12.76876449584961\n      ],\n      [\n        \"▁păcate\",\n        -12.768784523010254\n      ],\n      [\n        \"3.6\",\n        -12.76882553100586\n      ],\n      [\n        \"zwei\",\n        -12.768904685974121\n      ],\n      [\n        \"accounted\",\n        -12.768982887268066\n      ],\n      [\n        \"▁Cycle\",\n        -12.76900863647461\n      ],\n      [\n        \"politischen\",\n        -12.769031524658203\n      ],\n      [\n        \"Normally\",\n        -12.76904010772705\n      ],\n      [\n        \"▁transcend\",\n        -12.769158363342285\n      ],\n      [\n        \"▁Classes\",\n        -12.769268989562988\n      ],\n      [\n        \"▁vene\",\n        -12.769363403320312\n      ],\n      [\n        \"protein\",\n        -12.76942253112793\n      ],\n      [\n        \"formulaire\",\n        -12.76944351196289\n      ],\n      [\n        \"▁endurance\",\n        -12.769463539123535\n      ],\n      [\n        \"▁Census\",\n        -12.769464492797852\n      ],\n      [\n        \"▁census\",\n        -12.7694673538208\n      ],\n      [\n        \"▁conțin\",\n        -12.76952838897705\n      ],\n      [\n        \"▁multinational\",\n        -12.769563674926758\n      ],\n      [\n        \"▁consomm\",\n        -12.769572257995605\n      ],\n      [\n        \"▁Porter\",\n        -12.769762992858887\n      ],\n      [\n        \"▁marvel\",\n        -12.769777297973633\n      ],\n      [\n        \"▁probable\",\n        -12.769824028015137\n      ],\n      [\n        \"dependable\",\n        -12.770044326782227\n      ],\n      [\n        \"▁crore\",\n        -12.77015495300293\n      ],\n      [\n        \"▁6:30\",\n        -12.770224571228027\n      ],\n      [\n        \"▁Bradley\",\n        -12.77032470703125\n      ],\n      [\n        \"molecule\",\n        -12.770400047302246\n      ],\n      [\n        \"inclusiv\",\n        -12.770516395568848\n      ],\n      [\n        \"▁privilégi\",\n        -12.770543098449707\n      ],\n      [\n        \"▁cerere\",\n        -12.770611763000488\n      ],\n      [\n        \"ouille\",\n        -12.770696640014648\n      ],\n      [\n        \"▁âgé\",\n        -12.770787239074707\n      ],\n      [\n        \"▁ghid\",\n        -12.770801544189453\n      ],\n      [\n        \"▁Controller\",\n        -12.77082347869873\n      ],\n      [\n        \"▁incredere\",\n        -12.770988464355469\n      ],\n      [\n        \"▁hostel\",\n        -12.771015167236328\n      ],\n      [\n        \"wissenschaft\",\n        -12.771121978759766\n      ],\n      [\n        \"▁cooperate\",\n        -12.771183967590332\n      ],\n      [\n        \"ки\",\n        -12.771202087402344\n      ],\n      [\n        \"▁Küchen\",\n        -12.771384239196777\n      ],\n      [\n        \"▁BIO\",\n        -12.771406173706055\n      ],\n      [\n        \"▁deliveries\",\n        -12.771458625793457\n      ],\n      [\n        \"▁urmări\",\n        -12.771553993225098\n      ],\n      [\n        \"▁überzeugen\",\n        -12.771631240844727\n      ],\n      [\n        \"Roofing\",\n        -12.771703720092773\n      ],\n      [\n        \"▁Adel\",\n        -12.771737098693848\n      ],\n      [\n        \"▁navy\",\n        -12.77181339263916\n      ],\n      [\n        \"▁cider\",\n        -12.772101402282715\n      ],\n      [\n        \"▁dulce\",\n        -12.772109985351562\n      ],\n      [\n        \"▁inspirat\",\n        -12.772163391113281\n      ],\n      [\n        \"allez\",\n        -12.772164344787598\n      ],\n      [\n        \"HH\",\n        -12.77221965789795\n      ],\n      [\n        \"▁Danish\",\n        -12.7722749710083\n      ],\n      [\n        \"CDC\",\n        -12.7722806930542\n      ],\n      [\n        \"▁Milch\",\n        -12.772303581237793\n      ],\n      [\n        \"▁Hockey\",\n        -12.772346496582031\n      ],\n      [\n        \"▁Smooth\",\n        -12.772347450256348\n      ],\n      [\n        \"▁FIFA\",\n        -12.772361755371094\n      ],\n      [\n        \"▁Devon\",\n        -12.772364616394043\n      ],\n      [\n        \"chung\",\n        -12.772379875183105\n      ],\n      [\n        \"▁villain\",\n        -12.772420883178711\n      ],\n      [\n        \"▁musée\",\n        -12.772441864013672\n      ],\n      [\n        \"tiennent\",\n        -12.772557258605957\n      ],\n      [\n        \"chou\",\n        -12.772732734680176\n      ],\n      [\n        \"kopf\",\n        -12.772809982299805\n      ],\n      [\n        \"printed\",\n        -12.77281379699707\n      ],\n      [\n        \"▁Depression\",\n        -12.773076057434082\n      ],\n      [\n        \"▁opioid\",\n        -12.773082733154297\n      ],\n      [\n        \"nomie\",\n        -12.773098945617676\n      ],\n      [\n        \"▁footwear\",\n        -12.773211479187012\n      ],\n      [\n        \"▁Cause\",\n        -12.773260116577148\n      ],\n      [\n        \"SEL\",\n        -12.773515701293945\n      ],\n      [\n        \"▁Roller\",\n        -12.773523330688477\n      ],\n      [\n        \"▁einzigartige\",\n        -12.773589134216309\n      ],\n      [\n        \"desea\",\n        -12.773597717285156\n      ],\n      [\n        \"▁nasty\",\n        -12.773792266845703\n      ],\n      [\n        \"formulated\",\n        -12.773877143859863\n      ],\n      [\n        \"breaker\",\n        -12.773958206176758\n      ],\n      [\n        \"▁goodies\",\n        -12.773961067199707\n      ],\n      [\n        \"▁sandy\",\n        -12.774189949035645\n      ],\n      [\n        \"method\",\n        -12.77425479888916\n      ],\n      [\n        \"▁Maple\",\n        -12.774308204650879\n      ],\n      [\n        \"gefragt\",\n        -12.774435997009277\n      ],\n      [\n        \"▁decreasing\",\n        -12.774515151977539\n      ],\n      [\n        \"ceşti\",\n        -12.774555206298828\n      ],\n      [\n        \"▁DUI\",\n        -12.774563789367676\n      ],\n      [\n        \"▁pierdere\",\n        -12.774574279785156\n      ],\n      [\n        \"▁brushes\",\n        -12.77466869354248\n      ],\n      [\n        \"▁Fully\",\n        -12.774712562561035\n      ],\n      [\n        \"filtered\",\n        -12.774789810180664\n      ],\n      [\n        \"ruins\",\n        -12.774988174438477\n      ],\n      [\n        \"Save\",\n        -12.775114059448242\n      ],\n      [\n        \"sweeping\",\n        -12.7752046585083\n      ],\n      [\n        \"PCR\",\n        -12.775334358215332\n      ],\n      [\n        \"▁folded\",\n        -12.775337219238281\n      ],\n      [\n        \"▁urca\",\n        -12.775444030761719\n      ],\n      [\n        \"▁clic\",\n        -12.775484085083008\n      ],\n      [\n        \"▁spécialiste\",\n        -12.775614738464355\n      ],\n      [\n        \"▁durfte\",\n        -12.775686264038086\n      ],\n      [\n        \"tuși\",\n        -12.775871276855469\n      ],\n      [\n        \"▁diligent\",\n        -12.77596378326416\n      ],\n      [\n        \"▁verdict\",\n        -12.775972366333008\n      ],\n      [\n        \"▁chaise\",\n        -12.776039123535156\n      ],\n      [\n        \"▁cleanup\",\n        -12.776068687438965\n      ],\n      [\n        \"▁Guitar\",\n        -12.776076316833496\n      ],\n      [\n        \"▁Dip\",\n        -12.776142120361328\n      ],\n      [\n        \"vru\",\n        -12.776260375976562\n      ],\n      [\n        \"▁cogn\",\n        -12.776373863220215\n      ],\n      [\n        \"something\",\n        -12.776529312133789\n      ],\n      [\n        \"hidr\",\n        -12.776535034179688\n      ],\n      [\n        \"ENG\",\n        -12.776607513427734\n      ],\n      [\n        \"Paul\",\n        -12.776679039001465\n      ],\n      [\n        \"▁reboot\",\n        -12.776687622070312\n      ],\n      [\n        \"savvy\",\n        -12.776688575744629\n      ],\n      [\n        \"▁Macron\",\n        -12.776710510253906\n      ],\n      [\n        \"▁Kino\",\n        -12.77682876586914\n      ],\n      [\n        \"232\",\n        -12.776832580566406\n      ],\n      [\n        \"▁gravit\",\n        -12.776861190795898\n      ],\n      [\n        \"ANC\",\n        -12.776883125305176\n      ],\n      [\n        \"▁petrecut\",\n        -12.776944160461426\n      ],\n      [\n        \"▁signage\",\n        -12.776959419250488\n      ],\n      [\n        \"odia\",\n        -12.776987075805664\n      ],\n      [\n        \"▁GRA\",\n        -12.77712631225586\n      ],\n      [\n        \"▁alegeril\",\n        -12.777129173278809\n      ],\n      [\n        \"leger\",\n        -12.77717399597168\n      ],\n      [\n        \"▁medicamente\",\n        -12.777174949645996\n      ],\n      [\n        \"pentru\",\n        -12.777249336242676\n      ],\n      [\n        \"▁collectif\",\n        -12.777251243591309\n      ],\n      [\n        \"▁Sohn\",\n        -12.777298927307129\n      ],\n      [\n        \"205\",\n        -12.777313232421875\n      ],\n      [\n        \"▁Reach\",\n        -12.77733039855957\n      ],\n      [\n        \"RAM\",\n        -12.777400970458984\n      ],\n      [\n        \"3.4\",\n        -12.777405738830566\n      ],\n      [\n        \"▁bleach\",\n        -12.777409553527832\n      ],\n      [\n        \"▁diligence\",\n        -12.777414321899414\n      ],\n      [\n        \"▁MORE\",\n        -12.777440071105957\n      ],\n      [\n        \"▁Critical\",\n        -12.777471542358398\n      ],\n      [\n        \"▁singură\",\n        -12.77767276763916\n      ],\n      [\n        \"▁adversar\",\n        -12.777791023254395\n      ],\n      [\n        \"▁Buzz\",\n        -12.7778902053833\n      ],\n      [\n        \"▁demeure\",\n        -12.778063774108887\n      ],\n      [\n        \"▁nephew\",\n        -12.778141021728516\n      ],\n      [\n        \"▁Boom\",\n        -12.77817440032959\n      ],\n      [\n        \"▁shining\",\n        -12.77819538116455\n      ],\n      [\n        \"▁sponge\",\n        -12.778206825256348\n      ],\n      [\n        \"liest\",\n        -12.77841854095459\n      ],\n      [\n        \"rseits\",\n        -12.778690338134766\n      ],\n      [\n        \"▁capita\",\n        -12.778823852539062\n      ],\n      [\n        \"esthesia\",\n        -12.778867721557617\n      ],\n      [\n        \"500,000\",\n        -12.77895736694336\n      ],\n      [\n        \"▁Pressure\",\n        -12.77898120880127\n      ],\n      [\n        \"ifikation\",\n        -12.779021263122559\n      ],\n      [\n        \"▁acceleration\",\n        -12.779181480407715\n      ],\n      [\n        \"▁Pfarr\",\n        -12.779282569885254\n      ],\n      [\n        \"▁imobil\",\n        -12.779304504394531\n      ],\n      [\n        \"▁pericol\",\n        -12.779326438903809\n      ],\n      [\n        \"▁flock\",\n        -12.779454231262207\n      ],\n      [\n        \"▁Scholar\",\n        -12.77962875366211\n      ],\n      [\n        \"▁Fusion\",\n        -12.779630661010742\n      ],\n      [\n        \"▁revolve\",\n        -12.779637336730957\n      ],\n      [\n        \"Plugin\",\n        -12.779664993286133\n      ],\n      [\n        \"▁Ruf\",\n        -12.779691696166992\n      ],\n      [\n        \"▁tehnici\",\n        -12.780024528503418\n      ],\n      [\n        \"voice\",\n        -12.78005313873291\n      ],\n      [\n        \"▁anomal\",\n        -12.780203819274902\n      ],\n      [\n        \"▁gefallen\",\n        -12.780252456665039\n      ],\n      [\n        \"▁Wyoming\",\n        -12.780322074890137\n      ],\n      [\n        \"▁9:00\",\n        -12.780354499816895\n      ],\n      [\n        \"packed\",\n        -12.780461311340332\n      ],\n      [\n        \"▁Zimbabwe\",\n        -12.780686378479004\n      ],\n      [\n        \"▁glücklich\",\n        -12.780766487121582\n      ],\n      [\n        \"ethanol\",\n        -12.78077220916748\n      ],\n      [\n        \"▁effektiv\",\n        -12.780936241149902\n      ],\n      [\n        \"▁saptamani\",\n        -12.781049728393555\n      ],\n      [\n        \"▁umfasst\",\n        -12.781052589416504\n      ],\n      [\n        \"▁Werbung\",\n        -12.781103134155273\n      ],\n      [\n        \"▁undermine\",\n        -12.781164169311523\n      ],\n      [\n        \"▁Lego\",\n        -12.781322479248047\n      ],\n      [\n        \"▁Rac\",\n        -12.781323432922363\n      ],\n      [\n        \"educating\",\n        -12.781441688537598\n      ],\n      [\n        \"leiten\",\n        -12.781451225280762\n      ],\n      [\n        \"derma\",\n        -12.781518936157227\n      ],\n      [\n        \"hängen\",\n        -12.781597137451172\n      ],\n      [\n        \"Lumin\",\n        -12.781846046447754\n      ],\n      [\n        \"▁PNL\",\n        -12.781913757324219\n      ],\n      [\n        \"▁volcano\",\n        -12.782064437866211\n      ],\n      [\n        \"▁Anfrage\",\n        -12.782066345214844\n      ],\n      [\n        \"▁resp\",\n        -12.782124519348145\n      ],\n      [\n        \"leigh\",\n        -12.78217601776123\n      ],\n      [\n        \"▁addict\",\n        -12.782176971435547\n      ],\n      [\n        \"WORK\",\n        -12.782312393188477\n      ],\n      [\n        \"▁FY\",\n        -12.782322883605957\n      ],\n      [\n        \"▁maneuver\",\n        -12.782513618469238\n      ],\n      [\n        \"flächen\",\n        -12.782525062561035\n      ],\n      [\n        \"zweck\",\n        -12.782527923583984\n      ],\n      [\n        \"tolerant\",\n        -12.782609939575195\n      ],\n      [\n        \"Davidson\",\n        -12.78272533416748\n      ],\n      [\n        \"▁meteor\",\n        -12.782849311828613\n      ],\n      [\n        \"▁Stephanie\",\n        -12.78291130065918\n      ],\n      [\n        \"▁plafon\",\n        -12.783126831054688\n      ],\n      [\n        \"technischen\",\n        -12.78316879272461\n      ],\n      [\n        \"unused\",\n        -12.783193588256836\n      ],\n      [\n        \"▁voulai\",\n        -12.783228874206543\n      ],\n      [\n        \"▁fehlt\",\n        -12.783447265625\n      ],\n      [\n        \"möglichen\",\n        -12.783955574035645\n      ],\n      [\n        \"▁Twenty\",\n        -12.783968925476074\n      ],\n      [\n        \"composing\",\n        -12.783979415893555\n      ],\n      [\n        \"▁rebate\",\n        -12.78400707244873\n      ],\n      [\n        \"Italie\",\n        -12.784036636352539\n      ],\n      [\n        \"▁goodbye\",\n        -12.784058570861816\n      ],\n      [\n        \"wild\",\n        -12.784061431884766\n      ],\n      [\n        \"▁lancé\",\n        -12.784077644348145\n      ],\n      [\n        \"▁wunderschöne\",\n        -12.784083366394043\n      ],\n      [\n        \"▁Frontier\",\n        -12.784139633178711\n      ],\n      [\n        \"▁murit\",\n        -12.784313201904297\n      ],\n      [\n        \"▁scump\",\n        -12.78464412689209\n      ],\n      [\n        \"OVER\",\n        -12.784682273864746\n      ],\n      [\n        \"▁meme\",\n        -12.784709930419922\n      ],\n      [\n        \"Super\",\n        -12.784733772277832\n      ],\n      [\n        \"▁Crack\",\n        -12.784849166870117\n      ],\n      [\n        \"rennen\",\n        -12.784907341003418\n      ],\n      [\n        \"▁interessiert\",\n        -12.784941673278809\n      ],\n      [\n        \"▁relaţi\",\n        -12.784942626953125\n      ],\n      [\n        \"▁factories\",\n        -12.784975051879883\n      ],\n      [\n        \"▁[...]\",\n        -12.785066604614258\n      ],\n      [\n        \"▁vizite\",\n        -12.785075187683105\n      ],\n      [\n        \"▁erfolgen\",\n        -12.785199165344238\n      ],\n      [\n        \"▁Hosting\",\n        -12.785244941711426\n      ],\n      [\n        \"▁localitate\",\n        -12.78528118133545\n      ],\n      [\n        \"▁chasse\",\n        -12.785415649414062\n      ],\n      [\n        \"▁Meadow\",\n        -12.785465240478516\n      ],\n      [\n        \"▁expansive\",\n        -12.785513877868652\n      ],\n      [\n        \"hov\",\n        -12.785874366760254\n      ],\n      [\n        \"Phil\",\n        -12.785978317260742\n      ],\n      [\n        \"illian\",\n        -12.786107063293457\n      ],\n      [\n        \"▁manipulate\",\n        -12.786107063293457\n      ],\n      [\n        \"informationen\",\n        -12.786130905151367\n      ],\n      [\n        \"▁profesionist\",\n        -12.786162376403809\n      ],\n      [\n        \"risen\",\n        -12.786252975463867\n      ],\n      [\n        \"frem\",\n        -12.786300659179688\n      ],\n      [\n        \"Act\",\n        -12.78640079498291\n      ],\n      [\n        \"supervised\",\n        -12.786491394042969\n      ],\n      [\n        \"▁capul\",\n        -12.786506652832031\n      ],\n      [\n        \"▁Craiova\",\n        -12.786528587341309\n      ],\n      [\n        \"▁victoire\",\n        -12.786528587341309\n      ],\n      [\n        \"▁guitarist\",\n        -12.786680221557617\n      ],\n      [\n        \"▁identific\",\n        -12.786684036254883\n      ],\n      [\n        \"democrat\",\n        -12.786864280700684\n      ],\n      [\n        \"Authentic\",\n        -12.786894798278809\n      ],\n      [\n        \"▁Autumn\",\n        -12.786894798278809\n      ],\n      [\n        \"▁bodi\",\n        -12.787014961242676\n      ],\n      [\n        \"April\",\n        -12.787044525146484\n      ],\n      [\n        \"▁Burger\",\n        -12.787049293518066\n      ],\n      [\n        \"▁BEST\",\n        -12.787490844726562\n      ],\n      [\n        \"▁torrent\",\n        -12.78749942779541\n      ],\n      [\n        \"UV\",\n        -12.787567138671875\n      ],\n      [\n        \"▁renal\",\n        -12.787676811218262\n      ],\n      [\n        \"founded\",\n        -12.787693977355957\n      ],\n      [\n        \"203\",\n        -12.787956237792969\n      ],\n      [\n        \"▁Flooring\",\n        -12.78799057006836\n      ],\n      [\n        \"▁kilogram\",\n        -12.787994384765625\n      ],\n      [\n        \"▁garantiert\",\n        -12.788139343261719\n      ],\n      [\n        \"▁fulfil\",\n        -12.788204193115234\n      ],\n      [\n        \"303\",\n        -12.788330078125\n      ],\n      [\n        \"▁schafft\",\n        -12.788363456726074\n      ],\n      [\n        \"▁butterfly\",\n        -12.788365364074707\n      ],\n      [\n        \"▁Stuart\",\n        -12.788382530212402\n      ],\n      [\n        \"▁Versuch\",\n        -12.788392066955566\n      ],\n      [\n        \"▁liking\",\n        -12.788412094116211\n      ],\n      [\n        \"▁chercher\",\n        -12.788508415222168\n      ],\n      [\n        \"▁wrapping\",\n        -12.788527488708496\n      ],\n      [\n        \"schrieb\",\n        -12.788652420043945\n      ],\n      [\n        \"▁abuz\",\n        -12.788718223571777\n      ],\n      [\n        \"▁maîtrise\",\n        -12.788772583007812\n      ],\n      [\n        \"EQ\",\n        -12.788887977600098\n      ],\n      [\n        \"▁Erinnerung\",\n        -12.789095878601074\n      ],\n      [\n        \"▁bridal\",\n        -12.78909969329834\n      ],\n      [\n        \"Rock\",\n        -12.789118766784668\n      ],\n      [\n        \"▁copied\",\n        -12.789193153381348\n      ],\n      [\n        \"Met\",\n        -12.789206504821777\n      ],\n      [\n        \"▁incep\",\n        -12.789233207702637\n      ],\n      [\n        \"▁sinus\",\n        -12.789336204528809\n      ],\n      [\n        \"▁Felix\",\n        -12.789831161499023\n      ],\n      [\n        \"▁Deluxe\",\n        -12.789837837219238\n      ],\n      [\n        \"▁GPU\",\n        -12.789848327636719\n      ],\n      [\n        \"Sie\",\n        -12.790164947509766\n      ],\n      [\n        \"lowering\",\n        -12.790262222290039\n      ],\n      [\n        \"▁Trotz\",\n        -12.790282249450684\n      ],\n      [\n        \"333\",\n        -12.790417671203613\n      ],\n      [\n        \"withstand\",\n        -12.79055118560791\n      ],\n      [\n        \"▁Aufenthalt\",\n        -12.790566444396973\n      ],\n      [\n        \"▁unhealthy\",\n        -12.790567398071289\n      ],\n      [\n        \"▁urbain\",\n        -12.790573120117188\n      ],\n      [\n        \"▁LOL\",\n        -12.790702819824219\n      ],\n      [\n        \"▁Ballet\",\n        -12.79074478149414\n      ],\n      [\n        \"▁Decoration\",\n        -12.79083251953125\n      ],\n      [\n        \"weist\",\n        -12.790839195251465\n      ],\n      [\n        \"▁Residence\",\n        -12.790932655334473\n      ],\n      [\n        \"▁Leeds\",\n        -12.791055679321289\n      ],\n      [\n        \"▁Genau\",\n        -12.791084289550781\n      ],\n      [\n        \"Imagin\",\n        -12.791136741638184\n      ],\n      [\n        \"▁suspicion\",\n        -12.791300773620605\n      ],\n      [\n        \"▁pêche\",\n        -12.791301727294922\n      ],\n      [\n        \"▁Soccer\",\n        -12.791306495666504\n      ],\n      [\n        \"▁protectie\",\n        -12.791553497314453\n      ],\n      [\n        \"ATS\",\n        -12.791796684265137\n      ],\n      [\n        \"stocked\",\n        -12.791838645935059\n      ],\n      [\n        \"▁gymnas\",\n        -12.79184627532959\n      ],\n      [\n        \"ASP\",\n        -12.792027473449707\n      ],\n      [\n        \"▁Independence\",\n        -12.792037010192871\n      ],\n      [\n        \"▁Wizard\",\n        -12.792037963867188\n      ],\n      [\n        \"▁nitrogen\",\n        -12.79204273223877\n      ],\n      [\n        \"amerikanische\",\n        -12.7920503616333\n      ],\n      [\n        \"▁Indianapolis\",\n        -12.79205322265625\n      ],\n      [\n        \"catches\",\n        -12.792131423950195\n      ],\n      [\n        \"stria\",\n        -12.792275428771973\n      ],\n      [\n        \"schätze\",\n        -12.79235553741455\n      ],\n      [\n        \"▁Räume\",\n        -12.792387962341309\n      ],\n      [\n        \"▁Interesting\",\n        -12.792403221130371\n      ],\n      [\n        \"bürger\",\n        -12.79240608215332\n      ],\n      [\n        \"sweet\",\n        -12.792410850524902\n      ],\n      [\n        \"Identify\",\n        -12.792632102966309\n      ],\n      [\n        \"EEN\",\n        -12.792651176452637\n      ],\n      [\n        \"▁£3\",\n        -12.792654991149902\n      ],\n      [\n        \"interacting\",\n        -12.7926664352417\n      ],\n      [\n        \"NYSE\",\n        -12.792762756347656\n      ],\n      [\n        \"▁Dynamics\",\n        -12.79277515411377\n      ],\n      [\n        \"▁modificări\",\n        -12.792777061462402\n      ],\n      [\n        \"▁Kumar\",\n        -12.792936325073242\n      ],\n      [\n        \"chette\",\n        -12.79313850402832\n      ],\n      [\n        \"▁presiune\",\n        -12.79316234588623\n      ],\n      [\n        \"arni\",\n        -12.793164253234863\n      ],\n      [\n        \"▁vielfältig\",\n        -12.793221473693848\n      ],\n      [\n        \"KC\",\n        -12.793259620666504\n      ],\n      [\n        \"▁Cuisine\",\n        -12.793513298034668\n      ],\n      [\n        \"▁australia\",\n        -12.793885231018066\n      ],\n      [\n        \"▁încet\",\n        -12.794026374816895\n      ],\n      [\n        \"▁caracteristic\",\n        -12.794257164001465\n      ],\n      [\n        \"▁cookbook\",\n        -12.794501304626465\n      ],\n      [\n        \"▁douleur\",\n        -12.79453182220459\n      ],\n      [\n        \"AVI\",\n        -12.794593811035156\n      ],\n      [\n        \"artikel\",\n        -12.794740676879883\n      ],\n      [\n        \"feta\",\n        -12.79493522644043\n      ],\n      [\n        \"▁fréquent\",\n        -12.794987678527832\n      ],\n      [\n        \"▁Prophet\",\n        -12.795051574707031\n      ],\n      [\n        \"▁dépense\",\n        -12.795202255249023\n      ],\n      [\n        \"▁Smile\",\n        -12.795235633850098\n      ],\n      [\n        \"▁lawmakers\",\n        -12.79525375366211\n      ],\n      [\n        \"▁Kollegen\",\n        -12.795391082763672\n      ],\n      [\n        \"▁Pir\",\n        -12.79555606842041\n      ],\n      [\n        \"serez\",\n        -12.79561710357666\n      ],\n      [\n        \"▁consumator\",\n        -12.795656204223633\n      ],\n      [\n        \"▁playlist\",\n        -12.795730590820312\n      ],\n      [\n        \"▁envisage\",\n        -12.795733451843262\n      ],\n      [\n        \"swept\",\n        -12.795780181884766\n      ],\n      [\n        \"▁Grim\",\n        -12.795825004577637\n      ],\n      [\n        \"▁widow\",\n        -12.795836448669434\n      ],\n      [\n        \"authorised\",\n        -12.795886039733887\n      ],\n      [\n        \"▁(...)\",\n        -12.796035766601562\n      ],\n      [\n        \"▁photographic\",\n        -12.796060562133789\n      ],\n      [\n        \"▁libertate\",\n        -12.796173095703125\n      ],\n      [\n        \"▁principalement\",\n        -12.796201705932617\n      ],\n      [\n        \"umming\",\n        -12.796260833740234\n      ],\n      [\n        \"▁Montréal\",\n        -12.796465873718262\n      ],\n      [\n        \"▁compilation\",\n        -12.796468734741211\n      ],\n      [\n        \"▁erlaubt\",\n        -12.79647159576416\n      ],\n      [\n        \"▁biblical\",\n        -12.796518325805664\n      ],\n      [\n        \"volume\",\n        -12.796561241149902\n      ],\n      [\n        \"5-7\",\n        -12.796809196472168\n      ],\n      [\n        \"▁Versch\",\n        -12.79689884185791\n      ],\n      [\n        \"▁Shark\",\n        -12.796957015991211\n      ],\n      [\n        \"ologne\",\n        -12.796969413757324\n      ],\n      [\n        \"4.4\",\n        -12.797086715698242\n      ],\n      [\n        \"decken\",\n        -12.797112464904785\n      ],\n      [\n        \"▁frequencies\",\n        -12.797205924987793\n      ],\n      [\n        \"▁inferior\",\n        -12.79720687866211\n      ],\n      [\n        \"visible\",\n        -12.797321319580078\n      ],\n      [\n        \"▁educator\",\n        -12.797394752502441\n      ],\n      [\n        \"▁soziale\",\n        -12.797420501708984\n      ],\n      [\n        \"▁billet\",\n        -12.797523498535156\n      ],\n      [\n        \"folosirea\",\n        -12.797574996948242\n      ],\n      [\n        \"▁aufgenommen\",\n        -12.797590255737305\n      ],\n      [\n        \"▁Thread\",\n        -12.797649383544922\n      ],\n      [\n        \"registering\",\n        -12.797694206237793\n      ],\n      [\n        \"▁Loop\",\n        -12.797747611999512\n      ],\n      [\n        \"innovation\",\n        -12.79783821105957\n      ],\n      [\n        \"▁elimination\",\n        -12.797857284545898\n      ],\n      [\n        \"136\",\n        -12.797883987426758\n      ],\n      [\n        \"▁fluctu\",\n        -12.797892570495605\n      ],\n      [\n        \"▁Mercury\",\n        -12.79794692993164\n      ],\n      [\n        \"▁bouche\",\n        -12.797955513000488\n      ],\n      [\n        \"▁hurdle\",\n        -12.7979736328125\n      ],\n      [\n        \"▁Bennett\",\n        -12.798040390014648\n      ],\n      [\n        \"STI\",\n        -12.79818344116211\n      ],\n      [\n        \"▁théâtre\",\n        -12.798316955566406\n      ],\n      [\n        \"▁confortable\",\n        -12.798359870910645\n      ],\n      [\n        \"▁Automobil\",\n        -12.79838752746582\n      ],\n      [\n        \"▁Donna\",\n        -12.798399925231934\n      ],\n      [\n        \"▁foyer\",\n        -12.79841136932373\n      ],\n      [\n        \"▁hollow\",\n        -12.798465728759766\n      ],\n      [\n        \"▁règlement\",\n        -12.79861068725586\n      ],\n      [\n        \"effi\",\n        -12.798616409301758\n      ],\n      [\n        \"▁sediment\",\n        -12.79869270324707\n      ],\n      [\n        \"▁Mä\",\n        -12.798774719238281\n      ],\n      [\n        \"▁faint\",\n        -12.798833847045898\n      ],\n      [\n        \"feti\",\n        -12.79890251159668\n      ],\n      [\n        \"▁Concord\",\n        -12.798959732055664\n      ],\n      [\n        \"▁Ladies\",\n        -12.798990249633789\n      ],\n      [\n        \"▁pregatit\",\n        -12.799052238464355\n      ],\n      [\n        \"▁Ensemble\",\n        -12.79905891418457\n      ],\n      [\n        \"▁Ingredient\",\n        -12.79905891418457\n      ],\n      [\n        \"▁Respond\",\n        -12.79914379119873\n      ],\n      [\n        \"▁impaired\",\n        -12.799356460571289\n      ],\n      [\n        \"▁Feedback\",\n        -12.799430847167969\n      ],\n      [\n        \"▁ultrasound\",\n        -12.799461364746094\n      ],\n      [\n        \"▁Guvernului\",\n        -12.799617767333984\n      ],\n      [\n        \"▁Unterricht\",\n        -12.799654006958008\n      ],\n      [\n        \"▁prosecut\",\n        -12.799662590026855\n      ],\n      [\n        \"spend\",\n        -12.799732208251953\n      ],\n      [\n        \"▁capitol\",\n        -12.799800872802734\n      ],\n      [\n        \"USD\",\n        -12.799822807312012\n      ],\n      [\n        \"observing\",\n        -12.799947738647461\n      ],\n      [\n        \"▁effortlessly\",\n        -12.800045013427734\n      ],\n      [\n        \"▁Setting\",\n        -12.80010986328125\n      ],\n      [\n        \"▁spontaneous\",\n        -12.80020809173584\n      ],\n      [\n        \"▁LEGO\",\n        -12.800238609313965\n      ],\n      [\n        \"initiative\",\n        -12.800299644470215\n      ],\n      [\n        \"▁Sak\",\n        -12.800299644470215\n      ],\n      [\n        \"Interestingly\",\n        -12.800326347351074\n      ],\n      [\n        \"▁Yale\",\n        -12.800352096557617\n      ],\n      [\n        \"▁größer\",\n        -12.80038070678711\n      ],\n      [\n        \"RIC\",\n        -12.800406455993652\n      ],\n      [\n        \"▁distracted\",\n        -12.800436973571777\n      ],\n      [\n        \"drafted\",\n        -12.800484657287598\n      ],\n      [\n        \"▁Brenda\",\n        -12.800522804260254\n      ],\n      [\n        \"monopol\",\n        -12.800551414489746\n      ],\n      [\n        \"städt\",\n        -12.800580024719238\n      ],\n      [\n        \"▁altar\",\n        -12.80058765411377\n      ],\n      [\n        \"▁Hannover\",\n        -12.800596237182617\n      ],\n      [\n        \"▁Spiritual\",\n        -12.800702095031738\n      ],\n      [\n        \"▁thriller\",\n        -12.800747871398926\n      ],\n      [\n        \"▁Schneider\",\n        -12.800760269165039\n      ],\n      [\n        \"▁accumulate\",\n        -12.800817489624023\n      ],\n      [\n        \"▁mediului\",\n        -12.800822257995605\n      ],\n      [\n        \"▁Mathematics\",\n        -12.800914764404297\n      ],\n      [\n        \"▁paradox\",\n        -12.800986289978027\n      ],\n      [\n        \"▁Sham\",\n        -12.801230430603027\n      ],\n      [\n        \"▁SITE\",\n        -12.801375389099121\n      ],\n      [\n        \"▁echipei\",\n        -12.801508903503418\n      ],\n      [\n        \"▁staircase\",\n        -12.801660537719727\n      ],\n      [\n        \"▁întrebări\",\n        -12.801705360412598\n      ],\n      [\n        \"Commerce\",\n        -12.802020072937012\n      ],\n      [\n        \"▁selfie\",\n        -12.802353858947754\n      ],\n      [\n        \"▁Pocket\",\n        -12.802404403686523\n      ],\n      [\n        \"▁niemand\",\n        -12.80263614654541\n      ],\n      [\n        \"Tool\",\n        -12.802678108215332\n      ],\n      [\n        \"igma\",\n        -12.802695274353027\n      ],\n      [\n        \"utilisant\",\n        -12.802915573120117\n      ],\n      [\n        \"▁negatively\",\n        -12.80295181274414\n      ],\n      [\n        \"Secondly\",\n        -12.802955627441406\n      ],\n      [\n        \"▁ROI\",\n        -12.8030366897583\n      ],\n      [\n        \"Arch\",\n        -12.803121566772461\n      ],\n      [\n        \"▁continuity\",\n        -12.80318546295166\n      ],\n      [\n        \"▁Prayer\",\n        -12.803235054016113\n      ],\n      [\n        \"inverse\",\n        -12.803241729736328\n      ],\n      [\n        \"▁Himmel\",\n        -12.803336143493652\n      ],\n      [\n        \"prinz\",\n        -12.803478240966797\n      ],\n      [\n        \"wichtigen\",\n        -12.803496360778809\n      ],\n      [\n        \"étage\",\n        -12.803522109985352\n      ],\n      [\n        \"summe\",\n        -12.8036527633667\n      ],\n      [\n        \"▁Zeitung\",\n        -12.80366039276123\n      ],\n      [\n        \"▁realization\",\n        -12.803897857666016\n      ],\n      [\n        \"▁influent\",\n        -12.804291725158691\n      ],\n      [\n        \"▁Valid\",\n        -12.804357528686523\n      ],\n      [\n        \"▁publicity\",\n        -12.804439544677734\n      ],\n      [\n        \"▁vertreten\",\n        -12.804447174072266\n      ],\n      [\n        \"▁Shoes\",\n        -12.804609298706055\n      ],\n      [\n        \"▁Diabetes\",\n        -12.80463695526123\n      ],\n      [\n        \"▁anticipation\",\n        -12.804670333862305\n      ],\n      [\n        \"▁Blank\",\n        -12.8047456741333\n      ],\n      [\n        \"asked\",\n        -12.804899215698242\n      ],\n      [\n        \"Power\",\n        -12.804938316345215\n      ],\n      [\n        \"arrelage\",\n        -12.805140495300293\n      ],\n      [\n        \"▁appraisal\",\n        -12.80538272857666\n      ],\n      [\n        \"▁harassment\",\n        -12.805542945861816\n      ],\n      [\n        \"Anzeige\",\n        -12.805682182312012\n      ],\n      [\n        \"liners\",\n        -12.80584716796875\n      ],\n      [\n        \"Firstly\",\n        -12.805851936340332\n      ],\n      [\n        \"transferring\",\n        -12.805951118469238\n      ],\n      [\n        \"▁Diane\",\n        -12.806012153625488\n      ],\n      [\n        \"▁1/2\\\"\",\n        -12.80606746673584\n      ],\n      [\n        \"▁adrenal\",\n        -12.806131362915039\n      ],\n      [\n        \"▁Prague\",\n        -12.806208610534668\n      ],\n      [\n        \"insertion\",\n        -12.80635929107666\n      ],\n      [\n        \"▁Fahrer\",\n        -12.806465148925781\n      ],\n      [\n        \"▁divin\",\n        -12.806585311889648\n      ],\n      [\n        \"▁douche\",\n        -12.80673885345459\n      ],\n      [\n        \"▁meticulous\",\n        -12.806879043579102\n      ],\n      [\n        \"▁IEEE\",\n        -12.806981086730957\n      ],\n      [\n        \"▁Rabatt\",\n        -12.807259559631348\n      ],\n      [\n        \"Runner\",\n        -12.807342529296875\n      ],\n      [\n        \"▁Leder\",\n        -12.807429313659668\n      ],\n      [\n        \"project\",\n        -12.80745792388916\n      ],\n      [\n        \"▁Split\",\n        -12.807562828063965\n      ],\n      [\n        \"Gold\",\n        -12.807600021362305\n      ],\n      [\n        \"5.00\",\n        -12.807629585266113\n      ],\n      [\n        \"iola\",\n        -12.807655334472656\n      ],\n      [\n        \"standardized\",\n        -12.807890892028809\n      ],\n      [\n        \"ordination\",\n        -12.807984352111816\n      ],\n      [\n        \"▁Egal\",\n        -12.808158874511719\n      ],\n      [\n        \"▁ruhig\",\n        -12.808241844177246\n      ],\n      [\n        \"▁judiciar\",\n        -12.80837345123291\n      ],\n      [\n        \"▁Nowadays\",\n        -12.808374404907227\n      ],\n      [\n        \"▁whistle\",\n        -12.808374404907227\n      ],\n      [\n        \"▁superhero\",\n        -12.808379173278809\n      ],\n      [\n        \"▁PowerPoint\",\n        -12.808408737182617\n      ],\n      [\n        \"flop\",\n        -12.808420181274414\n      ],\n      [\n        \"olph\",\n        -12.808460235595703\n      ],\n      [\n        \"▁pallet\",\n        -12.808916091918945\n      ],\n      [\n        \"posons\",\n        -12.809005737304688\n      ],\n      [\n        \"▁Listing\",\n        -12.809032440185547\n      ],\n      [\n        \"Tag\",\n        -12.809075355529785\n      ],\n      [\n        \"introductory\",\n        -12.809122085571289\n      ],\n      [\n        \"▁Profil\",\n        -12.809123992919922\n      ],\n      [\n        \"symmetric\",\n        -12.809126853942871\n      ],\n      [\n        \"▁aisle\",\n        -12.809138298034668\n      ],\n      [\n        \"▁ajouté\",\n        -12.809147834777832\n      ],\n      [\n        \"opathy\",\n        -12.809149742126465\n      ],\n      [\n        \"prezentate\",\n        -12.809155464172363\n      ],\n      [\n        \"▁hurry\",\n        -12.809165000915527\n      ],\n      [\n        \"Auth\",\n        -12.809310913085938\n      ],\n      [\n        \"▁Homepage\",\n        -12.809435844421387\n      ],\n      [\n        \"ashes\",\n        -12.809489250183105\n      ],\n      [\n        \"▁inklusive\",\n        -12.809496879577637\n      ],\n      [\n        \"populated\",\n        -12.809502601623535\n      ],\n      [\n        \"▁nein\",\n        -12.809554100036621\n      ],\n      [\n        \"▁syndicat\",\n        -12.809690475463867\n      ],\n      [\n        \"▁développé\",\n        -12.809842109680176\n      ],\n      [\n        \"▁Domestic\",\n        -12.809877395629883\n      ],\n      [\n        \"essay\",\n        -12.809967994689941\n      ],\n      [\n        \"Atelier\",\n        -12.809980392456055\n      ],\n      [\n        \"▁proceeding\",\n        -12.810006141662598\n      ],\n      [\n        \"▁SAS\",\n        -12.810038566589355\n      ],\n      [\n        \"task\",\n        -12.810063362121582\n      ],\n      [\n        \"▁blackjack\",\n        -12.810114860534668\n      ],\n      [\n        \"Key\",\n        -12.810186386108398\n      ],\n      [\n        \"thérapie\",\n        -12.810247421264648\n      ],\n      [\n        \"▁Cohen\",\n        -12.810397148132324\n      ],\n      [\n        \"Direct\",\n        -12.810510635375977\n      ],\n      [\n        \"▁Estimat\",\n        -12.810517311096191\n      ],\n      [\n        \"élève\",\n        -12.810616493225098\n      ],\n      [\n        \"cind\",\n        -12.810640335083008\n      ],\n      [\n        \"▁prezenț\",\n        -12.810701370239258\n      ],\n      [\n        \"▁notorious\",\n        -12.810725212097168\n      ],\n      [\n        \"climbed\",\n        -12.810816764831543\n      ],\n      [\n        \"▁flexibil\",\n        -12.810830116271973\n      ],\n      [\n        \"▁entlang\",\n        -12.810855865478516\n      ],\n      [\n        \"longed\",\n        -12.81103515625\n      ],\n      [\n        \"▁elbow\",\n        -12.811078071594238\n      ],\n      [\n        \"BH\",\n        -12.811296463012695\n      ],\n      [\n        \"▁Radu\",\n        -12.811376571655273\n      ],\n      [\n        \"▁lonely\",\n        -12.811378479003906\n      ],\n      [\n        \"ALA\",\n        -12.811405181884766\n      ],\n      [\n        \"Variante\",\n        -12.811639785766602\n      ],\n      [\n        \"▁Influen\",\n        -12.81169319152832\n      ],\n      [\n        \"▁Budapest\",\n        -12.811747550964355\n      ],\n      [\n        \"▁Gemüse\",\n        -12.811747550964355\n      ],\n      [\n        \"▁continental\",\n        -12.811750411987305\n      ],\n      [\n        \"ippo\",\n        -12.811771392822266\n      ],\n      [\n        \"▁Affordable\",\n        -12.81212329864502\n      ],\n      [\n        \"▁niece\",\n        -12.812187194824219\n      ],\n      [\n        \"oscopic\",\n        -12.812190055847168\n      ],\n      [\n        \"▁Grid\",\n        -12.81222152709961\n      ],\n      [\n        \"sliced\",\n        -12.812270164489746\n      ],\n      [\n        \"▁voici\",\n        -12.812294006347656\n      ],\n      [\n        \"aveam\",\n        -12.812471389770508\n      ],\n      [\n        \"▁Lars\",\n        -12.812612533569336\n      ],\n      [\n        \"APA\",\n        -12.812657356262207\n      ],\n      [\n        \"▁particulière\",\n        -12.812858581542969\n      ],\n      [\n        \"sorb\",\n        -12.8128662109375\n      ],\n      [\n        \"▁1955\",\n        -12.812887191772461\n      ],\n      [\n        \"▁solutii\",\n        -12.812942504882812\n      ],\n      [\n        \"loch\",\n        -12.812960624694824\n      ],\n      [\n        \"▁summon\",\n        -12.813212394714355\n      ],\n      [\n        \"wurf\",\n        -12.813271522521973\n      ],\n      [\n        \"▁protecți\",\n        -12.813288688659668\n      ],\n      [\n        \"2001\",\n        -12.813499450683594\n      ],\n      [\n        \"▁sophomore\",\n        -12.813627243041992\n      ],\n      [\n        \"▁Schwerpunkt\",\n        -12.813628196716309\n      ],\n      [\n        \"▁diplomat\",\n        -12.813687324523926\n      ],\n      [\n        \"▁artistique\",\n        -12.813726425170898\n      ],\n      [\n        \"▁accueille\",\n        -12.813739776611328\n      ],\n      [\n        \"Disp\",\n        -12.813746452331543\n      ],\n      [\n        \"inherited\",\n        -12.813764572143555\n      ],\n      [\n        \"▁COMP\",\n        -12.813889503479004\n      ],\n      [\n        \"▁envoyé\",\n        -12.814046859741211\n      ],\n      [\n        \"▁tuning\",\n        -12.814056396484375\n      ],\n      [\n        \"▁entspricht\",\n        -12.814062118530273\n      ],\n      [\n        \"▁exerc\",\n        -12.81406307220459\n      ],\n      [\n        \"▁accessoires\",\n        -12.8140869140625\n      ],\n      [\n        \"▁Automat\",\n        -12.814348220825195\n      ],\n      [\n        \"importance\",\n        -12.814408302307129\n      ],\n      [\n        \"▁travellers\",\n        -12.814432144165039\n      ],\n      [\n        \"seiten\",\n        -12.814474105834961\n      ],\n      [\n        \"▁slider\",\n        -12.814481735229492\n      ],\n      [\n        \"effect\",\n        -12.814591407775879\n      ],\n      [\n        \"▁siding\",\n        -12.814669609069824\n      ],\n      [\n        \"▁Crit\",\n        -12.814780235290527\n      ],\n      [\n        \"▁sportif\",\n        -12.814827919006348\n      ],\n      [\n        \"▁Accessories\",\n        -12.81513500213623\n      ],\n      [\n        \"▁Anteil\",\n        -12.815184593200684\n      ],\n      [\n        \"▁limbi\",\n        -12.81519603729248\n      ],\n      [\n        \"▁vendre\",\n        -12.815269470214844\n      ],\n      [\n        \"borg\",\n        -12.815435409545898\n      ],\n      [\n        \"▁Deposit\",\n        -12.815508842468262\n      ],\n      [\n        \"▁Hö\",\n        -12.815717697143555\n      ],\n      [\n        \"employé\",\n        -12.8157320022583\n      ],\n      [\n        \"▁Bangalore\",\n        -12.815887451171875\n      ],\n      [\n        \"▁itinerary\",\n        -12.815888404846191\n      ],\n      [\n        \"▁Deliver\",\n        -12.816008567810059\n      ],\n      [\n        \"dik\",\n        -12.816024780273438\n      ],\n      [\n        \"▁advent\",\n        -12.816100120544434\n      ],\n      [\n        \"▁Turk\",\n        -12.81614875793457\n      ],\n      [\n        \"▁Nico\",\n        -12.816154479980469\n      ],\n      [\n        \"organizarea\",\n        -12.816161155700684\n      ],\n      [\n        \"▁remport\",\n        -12.816166877746582\n      ],\n      [\n        \"▁tribunal\",\n        -12.816266059875488\n      ],\n      [\n        \"▁Rusia\",\n        -12.8162841796875\n      ],\n      [\n        \"glazed\",\n        -12.816339492797852\n      ],\n      [\n        \"▁destiné\",\n        -12.816502571105957\n      ],\n      [\n        \"304\",\n        -12.816533088684082\n      ],\n      [\n        \"album\",\n        -12.816650390625\n      ],\n      [\n        \"▁junction\",\n        -12.81665325164795\n      ],\n      [\n        \"▁Fleet\",\n        -12.816664695739746\n      ],\n      [\n        \"venant\",\n        -12.81667423248291\n      ],\n      [\n        \"▁buddy\",\n        -12.816694259643555\n      ],\n      [\n        \"▁neglected\",\n        -12.816694259643555\n      ],\n      [\n        \"▁Mask\",\n        -12.816783905029297\n      ],\n      [\n        \"▁testament\",\n        -12.816844940185547\n      ],\n      [\n        \"▁Basil\",\n        -12.81690788269043\n      ],\n      [\n        \"masă\",\n        -12.816922187805176\n      ],\n      [\n        \"▁racist\",\n        -12.81692886352539\n      ],\n      [\n        \"640\",\n        -12.816990852355957\n      ],\n      [\n        \"▁Standing\",\n        -12.817028045654297\n      ],\n      [\n        \"▁MUST\",\n        -12.817266464233398\n      ],\n      [\n        \"situation\",\n        -12.817327499389648\n      ],\n      [\n        \"▁informiert\",\n        -12.817337036132812\n      ],\n      [\n        \"ABA\",\n        -12.817353248596191\n      ],\n      [\n        \"▁Timothy\",\n        -12.817397117614746\n      ],\n      [\n        \"▁generosity\",\n        -12.817397117614746\n      ],\n      [\n        \"▁erscheint\",\n        -12.817402839660645\n      ],\n      [\n        \"▁verarbeitet\",\n        -12.81740665435791\n      ],\n      [\n        \"▁burial\",\n        -12.817444801330566\n      ],\n      [\n        \"▁limestone\",\n        -12.817458152770996\n      ],\n      [\n        \"▁1953\",\n        -12.817480087280273\n      ],\n      [\n        \"▁Lucr\",\n        -12.817506790161133\n      ],\n      [\n        \"small\",\n        -12.817633628845215\n      ],\n      [\n        \"aveau\",\n        -12.81763744354248\n      ],\n      [\n        \"versiune\",\n        -12.81773567199707\n      ],\n      [\n        \"▁inkl\",\n        -12.81775951385498\n      ],\n      [\n        \"▁Minneapolis\",\n        -12.81777572631836\n      ],\n      [\n        \"Spiel\",\n        -12.81781005859375\n      ],\n      [\n        \"▁encode\",\n        -12.817895889282227\n      ],\n      [\n        \"▁beforehand\",\n        -12.818021774291992\n      ],\n      [\n        \"▁Vital\",\n        -12.818086624145508\n      ],\n      [\n        \"▁socialist\",\n        -12.818228721618652\n      ],\n      [\n        \"inho\",\n        -12.81824779510498\n      ],\n      [\n        \"▁chapel\",\n        -12.81825065612793\n      ],\n      [\n        \"▁Monitoring\",\n        -12.81838607788086\n      ],\n      [\n        \"▁quotidienne\",\n        -12.818404197692871\n      ],\n      [\n        \"cloud\",\n        -12.818506240844727\n      ],\n      [\n        \"▁desfăşur\",\n        -12.818531036376953\n      ],\n      [\n        \"▁1952\",\n        -12.818638801574707\n      ],\n      [\n        \"▁Rü\",\n        -12.818690299987793\n      ],\n      [\n        \"▁Sigma\",\n        -12.818804740905762\n      ],\n      [\n        \"134\",\n        -12.818835258483887\n      ],\n      [\n        \"Sullivan\",\n        -12.818909645080566\n      ],\n      [\n        \"▁Bevölkerung\",\n        -12.818909645080566\n      ],\n      [\n        \"▁sufficiently\",\n        -12.818953514099121\n      ],\n      [\n        \"Check\",\n        -12.818992614746094\n      ],\n      [\n        \"rnie\",\n        -12.8190336227417\n      ],\n      [\n        \"contamin\",\n        -12.819132804870605\n      ],\n      [\n        \"▁gewonnen\",\n        -12.81928825378418\n      ],\n      [\n        \"▁bugetul\",\n        -12.819376945495605\n      ],\n      [\n        \"▁mustard\",\n        -12.819414138793945\n      ],\n      [\n        \"132\",\n        -12.819478988647461\n      ],\n      [\n        \"0.9\",\n        -12.819535255432129\n      ],\n      [\n        \"▁tratat\",\n        -12.81957721710205\n      ],\n      [\n        \"▁dilemma\",\n        -12.819666862487793\n      ],\n      [\n        \"▁versatility\",\n        -12.819666862487793\n      ],\n      [\n        \"▁clutter\",\n        -12.819670677185059\n      ],\n      [\n        \"▁Musk\",\n        -12.81973934173584\n      ],\n      [\n        \"▁Beide\",\n        -12.819750785827637\n      ],\n      [\n        \"hurst\",\n        -12.819758415222168\n      ],\n      [\n        \"atsu\",\n        -12.819767951965332\n      ],\n      [\n        \"absence\",\n        -12.819784164428711\n      ],\n      [\n        \"rebounds\",\n        -12.819881439208984\n      ],\n      [\n        \"6.1\",\n        -12.820029258728027\n      ],\n      [\n        \"Dia\",\n        -12.820046424865723\n      ],\n      [\n        \"▁siguranță\",\n        -12.820060729980469\n      ],\n      [\n        \"▁Blade\",\n        -12.820072174072266\n      ],\n      [\n        \"▁disrupt\",\n        -12.820074081420898\n      ],\n      [\n        \"▁visiteurs\",\n        -12.820169448852539\n      ],\n      [\n        \"tested\",\n        -12.820282936096191\n      ],\n      [\n        \"▁Lup\",\n        -12.820353507995605\n      ],\n      [\n        \"▁Rouge\",\n        -12.820371627807617\n      ],\n      [\n        \"▁asbestos\",\n        -12.82042407989502\n      ],\n      [\n        \"▁moisturize\",\n        -12.820427894592285\n      ],\n      [\n        \"▁acknowledg\",\n        -12.82045841217041\n      ],\n      [\n        \"▁procent\",\n        -12.820467948913574\n      ],\n      [\n        \"▁swear\",\n        -12.82050895690918\n      ],\n      [\n        \"▁911\",\n        -12.820647239685059\n      ],\n      [\n        \"präsent\",\n        -12.820724487304688\n      ],\n      [\n        \"▁cohort\",\n        -12.82072639465332\n      ],\n      [\n        \"▁intimid\",\n        -12.820830345153809\n      ],\n      [\n        \"JS\",\n        -12.820849418640137\n      ],\n      [\n        \"îm\",\n        -12.82096004486084\n      ],\n      [\n        \"▁Kunststoff\",\n        -12.820963859558105\n      ],\n      [\n        \"rison\",\n        -12.820972442626953\n      ],\n      [\n        \"▁praf\",\n        -12.82097339630127\n      ],\n      [\n        \"▁convient\",\n        -12.821019172668457\n      ],\n      [\n        \"▁partenaire\",\n        -12.821088790893555\n      ],\n      [\n        \"▁Verantwortlich\",\n        -12.821182250976562\n      ],\n      [\n        \"▁semiconductor\",\n        -12.821182250976562\n      ],\n      [\n        \"▁kürz\",\n        -12.821187019348145\n      ],\n      [\n        \"▁Bottom\",\n        -12.821187973022461\n      ],\n      [\n        \"▁tratamentul\",\n        -12.82127571105957\n      ],\n      [\n        \"Source\",\n        -12.821331024169922\n      ],\n      [\n        \"authored\",\n        -12.82172679901123\n      ],\n      [\n        \"robo\",\n        -12.821867942810059\n      ],\n      [\n        \"▁turf\",\n        -12.82194709777832\n      ],\n      [\n        \"▁liebe\",\n        -12.821971893310547\n      ],\n      [\n        \"▁Fotografi\",\n        -12.821995735168457\n      ],\n      [\n        \"Big\",\n        -12.822064399719238\n      ],\n      [\n        \"▁fireworks\",\n        -12.822081565856934\n      ],\n      [\n        \"▁presă\",\n        -12.822135925292969\n      ],\n      [\n        \"▁conceal\",\n        -12.822269439697266\n      ],\n      [\n        \"▁originated\",\n        -12.82227897644043\n      ],\n      [\n        \"▁biciclet\",\n        -12.822319984436035\n      ],\n      [\n        \"acești\",\n        -12.822577476501465\n      ],\n      [\n        \"▁mortar\",\n        -12.822585105895996\n      ],\n      [\n        \"▁Wunder\",\n        -12.822626113891602\n      ],\n      [\n        \"ionist\",\n        -12.822696685791016\n      ],\n      [\n        \"KM\",\n        -12.822871208190918\n      ],\n      [\n        \"▁Marion\",\n        -12.822918891906738\n      ],\n      [\n        \"produkte\",\n        -12.822933197021484\n      ],\n      [\n        \"▁Sprint\",\n        -12.822999000549316\n      ],\n      [\n        \"▁Nachde\",\n        -12.8230619430542\n      ],\n      [\n        \"▁verfüge\",\n        -12.823100090026855\n      ],\n      [\n        \"Marea\",\n        -12.823177337646484\n      ],\n      [\n        \"▁compressor\",\n        -12.823253631591797\n      ],\n      [\n        \"Arm\",\n        -12.823290824890137\n      ],\n      [\n        \"Auf\",\n        -12.823311805725098\n      ],\n      [\n        \"▁Polyester\",\n        -12.823461532592773\n      ],\n      [\n        \"▁Sheffield\",\n        -12.823461532592773\n      ],\n      [\n        \"illiard\",\n        -12.823494911193848\n      ],\n      [\n        \"▁misleading\",\n        -12.82353401184082\n      ],\n      [\n        \"multi\",\n        -12.823749542236328\n      ],\n      [\n        \"ripped\",\n        -12.82381820678711\n      ],\n      [\n        \"▁Cosmetic\",\n        -12.82383918762207\n      ],\n      [\n        \"▁Regal\",\n        -12.823890686035156\n      ],\n      [\n        \"▁authenticity\",\n        -12.82414436340332\n      ],\n      [\n        \"▁customizable\",\n        -12.824219703674316\n      ],\n      [\n        \"▁bathtub\",\n        -12.824275016784668\n      ],\n      [\n        \"▁Average\",\n        -12.824292182922363\n      ],\n      [\n        \"▁Muster\",\n        -12.824522018432617\n      ],\n      [\n        \"290\",\n        -12.824529647827148\n      ],\n      [\n        \"▁Ersatz\",\n        -12.824570655822754\n      ],\n      [\n        \"▁Might\",\n        -12.824588775634766\n      ],\n      [\n        \"published\",\n        -12.82461929321289\n      ],\n      [\n        \"▁Interpret\",\n        -12.824640274047852\n      ],\n      [\n        \"▁încep\",\n        -12.82480239868164\n      ],\n      [\n        \"▁proto\",\n        -12.824851036071777\n      ],\n      [\n        \"▁disque\",\n        -12.824889183044434\n      ],\n      [\n        \"▁Palestine\",\n        -12.824980735778809\n      ],\n      [\n        \"Over\",\n        -12.824981689453125\n      ],\n      [\n        \"▁verbessert\",\n        -12.824983596801758\n      ],\n      [\n        \"▁liefern\",\n        -12.825017929077148\n      ],\n      [\n        \"▁Handlung\",\n        -12.825095176696777\n      ],\n      [\n        \"▁Handels\",\n        -12.825150489807129\n      ],\n      [\n        \"▁eater\",\n        -12.825201988220215\n      ],\n      [\n        \"▁$40\",\n        -12.825251579284668\n      ],\n      [\n        \"illard\",\n        -12.825334548950195\n      ],\n      [\n        \"▁apariti\",\n        -12.825413703918457\n      ],\n      [\n        \"▁gag\",\n        -12.825422286987305\n      ],\n      [\n        \"▁chimic\",\n        -12.825541496276855\n      ],\n      [\n        \"▁Guru\",\n        -12.825594902038574\n      ],\n      [\n        \"▁Toilet\",\n        -12.82571792602539\n      ],\n      [\n        \"▁Tochter\",\n        -12.825748443603516\n      ],\n      [\n        \"▁Aurora\",\n        -12.82579231262207\n      ],\n      [\n        \"contro\",\n        -12.825922966003418\n      ],\n      [\n        \"▁GOP\",\n        -12.825995445251465\n      ],\n      [\n        \"Provence\",\n        -12.826130867004395\n      ],\n      [\n        \"▁Frieden\",\n        -12.82614803314209\n      ],\n      [\n        \"ăci\",\n        -12.826216697692871\n      ],\n      [\n        \"portée\",\n        -12.826268196105957\n      ],\n      [\n        \"▁upright\",\n        -12.826300621032715\n      ],\n      [\n        \"▁Physician\",\n        -12.82650375366211\n      ],\n      [\n        \"▁juridique\",\n        -12.82650375366211\n      ],\n      [\n        \"▁territorial\",\n        -12.82650375366211\n      ],\n      [\n        \"▁kindergarten\",\n        -12.826505661010742\n      ],\n      [\n        \"aéroport\",\n        -12.826510429382324\n      ],\n      [\n        \"▁whisper\",\n        -12.826513290405273\n      ],\n      [\n        \"▁capacities\",\n        -12.826562881469727\n      ],\n      [\n        \"dichte\",\n        -12.826641082763672\n      ],\n      [\n        \"▁Grenzen\",\n        -12.826822280883789\n      ],\n      [\n        \"▁Riv\",\n        -12.82710075378418\n      ],\n      [\n        \"épreuve\",\n        -12.827266693115234\n      ],\n      [\n        \"▁Scheme\",\n        -12.827290534973145\n      ],\n      [\n        \"mesures\",\n        -12.827330589294434\n      ],\n      [\n        \"▁Einfluss\",\n        -12.827333450317383\n      ],\n      [\n        \"appui\",\n        -12.827713966369629\n      ],\n      [\n        \"▁apuc\",\n        -12.827827453613281\n      ],\n      [\n        \"▁radiat\",\n        -12.82794189453125\n      ],\n      [\n        \"▁allergy\",\n        -12.828035354614258\n      ],\n      [\n        \"▁spear\",\n        -12.828038215637207\n      ],\n      [\n        \"▁Luxembourg\",\n        -12.828086853027344\n      ],\n      [\n        \"▁Registered\",\n        -12.828115463256836\n      ],\n      [\n        \"▁Shape\",\n        -12.828198432922363\n      ],\n      [\n        \"genie\",\n        -12.828328132629395\n      ],\n      [\n        \"nsonsten\",\n        -12.828385353088379\n      ],\n      [\n        \"▁Symposium\",\n        -12.828412055969238\n      ],\n      [\n        \"forderung\",\n        -12.828474998474121\n      ],\n      [\n        \"▁personalizat\",\n        -12.82866096496582\n      ],\n      [\n        \"▁ştiu\",\n        -12.82875919342041\n      ],\n      [\n        \"blatt\",\n        -12.828804016113281\n      ],\n      [\n        \"▁geometry\",\n        -12.828807830810547\n      ],\n      [\n        \"▁8:30\",\n        -12.828831672668457\n      ],\n      [\n        \"▁Fahrrad\",\n        -12.828861236572266\n      ],\n      [\n        \"After\",\n        -12.828927040100098\n      ],\n      [\n        \"▁ventilat\",\n        -12.829072952270508\n      ],\n      [\n        \"▁nylon\",\n        -12.829190254211426\n      ],\n      [\n        \"▁verkauft\",\n        -12.829304695129395\n      ],\n      [\n        \"öß\",\n        -12.829345703125\n      ],\n      [\n        \"▁Kath\",\n        -12.829523086547852\n      ],\n      [\n        \"▁Nuclear\",\n        -12.829558372497559\n      ],\n      [\n        \"▁Verizon\",\n        -12.829560279846191\n      ],\n      [\n        \"▁spokesperson\",\n        -12.829560279846191\n      ],\n      [\n        \"▁vietii\",\n        -12.829560279846191\n      ],\n      [\n        \"▁prescri\",\n        -12.829629898071289\n      ],\n      [\n        \"ру\",\n        -12.829666137695312\n      ],\n      [\n        \"6.2\",\n        -12.829801559448242\n      ],\n      [\n        \"▁spațiu\",\n        -12.830018997192383\n      ],\n      [\n        \"▁solvent\",\n        -12.83006763458252\n      ],\n      [\n        \",000,000\",\n        -12.830142974853516\n      ],\n      [\n        \"reuen\",\n        -12.830185890197754\n      ],\n      [\n        \"plast\",\n        -12.830245018005371\n      ],\n      [\n        \"▁Activities\",\n        -12.830334663391113\n      ],\n      [\n        \"▁domni\",\n        -12.83056926727295\n      ],\n      [\n        \"▁trophy\",\n        -12.830572128295898\n      ],\n      [\n        \"▁saddle\",\n        -12.830657958984375\n      ],\n      [\n        \"▁renovat\",\n        -12.830708503723145\n      ],\n      [\n        \"▁bumper\",\n        -12.830717086791992\n      ],\n      [\n        \"▁penny\",\n        -12.830741882324219\n      ],\n      [\n        \"omato\",\n        -12.830743789672852\n      ],\n      [\n        \"AQ\",\n        -12.83083438873291\n      ],\n      [\n        \"kunst\",\n        -12.830843925476074\n      ],\n      [\n        \"hydrat\",\n        -12.830860137939453\n      ],\n      [\n        \"minder\",\n        -12.830931663513184\n      ],\n      [\n        \"trecerea\",\n        -12.830949783325195\n      ],\n      [\n        \"brush\",\n        -12.831185340881348\n      ],\n      [\n        \"TEC\",\n        -12.83121395111084\n      ],\n      [\n        \"Please\",\n        -12.831253051757812\n      ],\n      [\n        \"hydrated\",\n        -12.831483840942383\n      ],\n      [\n        \"ICAL\",\n        -12.831636428833008\n      ],\n      [\n        \"trauen\",\n        -12.831639289855957\n      ],\n      [\n        \"9,000\",\n        -12.83175277709961\n      ],\n      [\n        \"▁2030\",\n        -12.831830024719238\n      ],\n      [\n        \"▁Chennai\",\n        -12.831854820251465\n      ],\n      [\n        \"▁empirical\",\n        -12.831854820251465\n      ],\n      [\n        \"▁Subscribe\",\n        -12.83206844329834\n      ],\n      [\n        \"▁vorgestellt\",\n        -12.832120895385742\n      ],\n      [\n        \"▁Springfield\",\n        -12.832159996032715\n      ],\n      [\n        \"▁continuu\",\n        -12.832311630249023\n      ],\n      [\n        \"208\",\n        -12.832351684570312\n      ],\n      [\n        \"▁Bearing\",\n        -12.83240795135498\n      ],\n      [\n        \"2003\",\n        -12.832572937011719\n      ],\n      [\n        \"cheta\",\n        -12.832608222961426\n      ],\n      [\n        \"▁empathy\",\n        -12.832623481750488\n      ],\n      [\n        \"▁Alert\",\n        -12.832817077636719\n      ],\n      [\n        \"▁recreate\",\n        -12.832879066467285\n      ],\n      [\n        \"PJ\",\n        -12.833159446716309\n      ],\n      [\n        \"Name\",\n        -12.83323860168457\n      ],\n      [\n        \"▁Mouse\",\n        -12.833405494689941\n      ],\n      [\n        \"▁disturbing\",\n        -12.833443641662598\n      ],\n      [\n        \"▁leichter\",\n        -12.83344841003418\n      ],\n      [\n        \"▁cruel\",\n        -12.833507537841797\n      ],\n      [\n        \"▁detective\",\n        -12.833531379699707\n      ],\n      [\n        \"▁reimbursement\",\n        -12.833626747131348\n      ],\n      [\n        \"▁Gemeinschaft\",\n        -12.833772659301758\n      ],\n      [\n        \"▁adolescents\",\n        -12.833772659301758\n      ],\n      [\n        \"▁Reality\",\n        -12.833954811096191\n      ],\n      [\n        \"▁Stockholm\",\n        -12.83415699005127\n      ],\n      [\n        \"▁Gründen\",\n        -12.834304809570312\n      ],\n      [\n        \"▁Reflect\",\n        -12.83432388305664\n      ],\n      [\n        \"▁Palmer\",\n        -12.834336280822754\n      ],\n      [\n        \"▁treac\",\n        -12.8343505859375\n      ],\n      [\n        \"▁tentative\",\n        -12.834497451782227\n      ],\n      [\n        \"▁surrender\",\n        -12.834677696228027\n      ],\n      [\n        \"▁broadly\",\n        -12.834734916687012\n      ],\n      [\n        \"▁județ\",\n        -12.834814071655273\n      ],\n      [\n        \"▁Thu\",\n        -12.834845542907715\n      ],\n      [\n        \"wärts\",\n        -12.834961891174316\n      ],\n      [\n        \"▁crește\",\n        -12.835074424743652\n      ],\n      [\n        \"▁déplacement\",\n        -12.835208892822266\n      ],\n      [\n        \"blanc\",\n        -12.835268020629883\n      ],\n      [\n        \"▁£5\",\n        -12.835308074951172\n      ],\n      [\n        \"▁confidentiality\",\n        -12.835320472717285\n      ],\n      [\n        \"veraging\",\n        -12.835444450378418\n      ],\n      [\n        \"unité\",\n        -12.835609436035156\n      ],\n      [\n        \"clar\",\n        -12.83564567565918\n      ],\n      [\n        \"rigg\",\n        -12.835693359375\n      ],\n      [\n        \"honneur\",\n        -12.835694313049316\n      ],\n      [\n        \"▁adventurous\",\n        -12.835694313049316\n      ],\n      [\n        \"▁Nutzen\",\n        -12.835758209228516\n      ],\n      [\n        \"▁Kabel\",\n        -12.835800170898438\n      ],\n      [\n        \"empowering\",\n        -12.836040496826172\n      ],\n      [\n        \"verhalten\",\n        -12.836042404174805\n      ],\n      [\n        \"▁prevail\",\n        -12.8361234664917\n      ],\n      [\n        \"mashed\",\n        -12.836138725280762\n      ],\n      [\n        \"▁1947\",\n        -12.83616828918457\n      ],\n      [\n        \"function\",\n        -12.836292266845703\n      ],\n      [\n        \"niveaux\",\n        -12.83633041381836\n      ],\n      [\n        \"▁territories\",\n        -12.836463928222656\n      ],\n      [\n        \"▁Permanent\",\n        -12.836465835571289\n      ],\n      [\n        \"▁christmas\",\n        -12.836471557617188\n      ],\n      [\n        \"arguing\",\n        -12.836490631103516\n      ],\n      [\n        \"zukünftig\",\n        -12.836654663085938\n      ],\n      [\n        \"▁Eindruck\",\n        -12.836817741394043\n      ],\n      [\n        \"personalised\",\n        -12.836854934692383\n      ],\n      [\n        \"▁vecin\",\n        -12.837211608886719\n      ],\n      [\n        \"▁Affiliate\",\n        -12.837234497070312\n      ],\n      [\n        \"▁Silk\",\n        -12.837249755859375\n      ],\n      [\n        \"▁Tub\",\n        -12.837440490722656\n      ],\n      [\n        \"▁remont\",\n        -12.837493896484375\n      ],\n      [\n        \"▁sauber\",\n        -12.837530136108398\n      ],\n      [\n        \"gehörig\",\n        -12.837562561035156\n      ],\n      [\n        \"Maritime\",\n        -12.83771800994873\n      ],\n      [\n        \"▁Bö\",\n        -12.837973594665527\n      ],\n      [\n        \"▁1957\",\n        -12.83800220489502\n      ],\n      [\n        \"▁unparalleled\",\n        -12.838005065917969\n      ],\n      [\n        \"▁fulfillment\",\n        -12.838042259216309\n      ],\n      [\n        \"▁collage\",\n        -12.838179588317871\n      ],\n      [\n        \"fenders\",\n        -12.838248252868652\n      ],\n      [\n        \"▁neige\",\n        -12.838275909423828\n      ],\n      [\n        \"▁gamers\",\n        -12.838325500488281\n      ],\n      [\n        \"tefan\",\n        -12.838339805603027\n      ],\n      [\n        \"▁wifi\",\n        -12.838349342346191\n      ],\n      [\n        \"▁leisten\",\n        -12.83835506439209\n      ],\n      [\n        \"▁Verbesserung\",\n        -12.838390350341797\n      ],\n      [\n        \"▁composant\",\n        -12.838400840759277\n      ],\n      [\n        \"▁LORD\",\n        -12.8384370803833\n      ],\n      [\n        \"arrive\",\n        -12.838472366333008\n      ],\n      [\n        \"▁conquer\",\n        -12.838562965393066\n      ],\n      [\n        \"▁lentil\",\n        -12.838767051696777\n      ],\n      [\n        \"▁Sprech\",\n        -12.838995933532715\n      ],\n      [\n        \"▁substitution\",\n        -12.839015007019043\n      ],\n      [\n        \".05.\",\n        -12.839020729064941\n      ],\n      [\n        \"FORM\",\n        -12.839144706726074\n      ],\n      [\n        \"cădere\",\n        -12.839154243469238\n      ],\n      [\n        \"▁canyon\",\n        -12.839430809020996\n      ],\n      [\n        \"▁capacitate\",\n        -12.839442253112793\n      ],\n      [\n        \"▁menace\",\n        -12.839461326599121\n      ],\n      [\n        \"▁Antique\",\n        -12.839519500732422\n      ],\n      [\n        \"▁dizaine\",\n        -12.839550971984863\n      ],\n      [\n        \"▁Saturn\",\n        -12.839578628540039\n      ],\n      [\n        \"▁gastro\",\n        -12.83962631225586\n      ],\n      [\n        \"▁Vand\",\n        -12.839641571044922\n      ],\n      [\n        \"▁africa\",\n        -12.839682579040527\n      ],\n      [\n        \"▁hackers\",\n        -12.839702606201172\n      ],\n      [\n        \"▁Bailey\",\n        -12.839736938476562\n      ],\n      [\n        \"ouette\",\n        -12.839822769165039\n      ],\n      [\n        \"hoch\",\n        -12.839885711669922\n      ],\n      [\n        \"étudiant\",\n        -12.839973449707031\n      ],\n      [\n        \"▁1600\",\n        -12.840004920959473\n      ],\n      [\n        \"utiliz\",\n        -12.840167999267578\n      ],\n      [\n        \"reinigung\",\n        -12.840263366699219\n      ],\n      [\n        \"▁mileage\",\n        -12.84029483795166\n      ],\n      [\n        \"▁consacré\",\n        -12.840309143066406\n      ],\n      [\n        \"▁Norfolk\",\n        -12.840327262878418\n      ],\n      [\n        \"stacked\",\n        -12.840659141540527\n      ],\n      [\n        \"anbieter\",\n        -12.840731620788574\n      ],\n      [\n        \"▁gewünschte\",\n        -12.84073543548584\n      ],\n      [\n        \"▁silicon\",\n        -12.840761184692383\n      ],\n      [\n        \"Ensuite\",\n        -12.840794563293457\n      ],\n      [\n        \"▁vendu\",\n        -12.840850830078125\n      ],\n      [\n        \"▁viteza\",\n        -12.840851783752441\n      ],\n      [\n        \"▁evaluare\",\n        -12.840913772583008\n      ],\n      [\n        \"▁contient\",\n        -12.841036796569824\n      ],\n      [\n        \"▁Viagra\",\n        -12.841100692749023\n      ],\n      [\n        \"▁circumstance\",\n        -12.841283798217773\n      ],\n      [\n        \"walker\",\n        -12.841383934020996\n      ],\n      [\n        \"▁Aluminium\",\n        -12.84148120880127\n      ],\n      [\n        \"ço\",\n        -12.841556549072266\n      ],\n      [\n        \"▁Kli\",\n        -12.841643333435059\n      ],\n      [\n        \"▁deliberately\",\n        -12.841649055480957\n      ],\n      [\n        \"▁gamble\",\n        -12.841893196105957\n      ],\n      [\n        \"▁nourri\",\n        -12.841903686523438\n      ],\n      [\n        \"▁sealing\",\n        -12.84194278717041\n      ],\n      [\n        \"▁Atmosphäre\",\n        -12.842255592346191\n      ],\n      [\n        \"▁erschien\",\n        -12.842260360717773\n      ],\n      [\n        \"▁brightness\",\n        -12.842340469360352\n      ],\n      [\n        \"autonomie\",\n        -12.84251594543457\n      ],\n      [\n        \"▁propel\",\n        -12.842525482177734\n      ],\n      [\n        \"▁Infrastructure\",\n        -12.842642784118652\n      ],\n      [\n        \"▁război\",\n        -12.842642784118652\n      ],\n      [\n        \"▁jelly\",\n        -12.842684745788574\n      ],\n      [\n        \"scalable\",\n        -12.84280776977539\n      ],\n      [\n        \"regal\",\n        -12.84296703338623\n      ],\n      [\n        \"▁sarcini\",\n        -12.843031883239746\n      ],\n      [\n        \"▁Dienstag\",\n        -12.84304428100586\n      ],\n      [\n        \"▁Receive\",\n        -12.8430814743042\n      ],\n      [\n        \"▁mango\",\n        -12.843356132507324\n      ],\n      [\n        \"▁compétition\",\n        -12.84341812133789\n      ],\n      [\n        \"▁Monument\",\n        -12.843428611755371\n      ],\n      [\n        \"▁mast\",\n        -12.844159126281738\n      ],\n      [\n        \"▁instructed\",\n        -12.84425163269043\n      ],\n      [\n        \"▁aventur\",\n        -12.844277381896973\n      ],\n      [\n        \"139\",\n        -12.844298362731934\n      ],\n      [\n        \"▁Parmi\",\n        -12.84435749053955\n      ],\n      [\n        \"confined\",\n        -12.844416618347168\n      ],\n      [\n        \"acious\",\n        -12.844441413879395\n      ],\n      [\n        \"▁simptome\",\n        -12.844581604003906\n      ],\n      [\n        \"▁Fischer\",\n        -12.844897270202637\n      ],\n      [\n        \"störung\",\n        -12.844985008239746\n      ],\n      [\n        \"▁bilateral\",\n        -12.84504508972168\n      ],\n      [\n        \"preşedintele\",\n        -12.845274925231934\n      ],\n      [\n        \"accueillir\",\n        -12.845357894897461\n      ],\n      [\n        \"▁Schmidt\",\n        -12.845359802246094\n      ],\n      [\n        \"litis\",\n        -12.845373153686523\n      ],\n      [\n        \"WL\",\n        -12.8454008102417\n      ],\n      [\n        \"▁Rise\",\n        -12.845436096191406\n      ],\n      [\n        \"▁streamline\",\n        -12.845556259155273\n      ],\n      [\n        \"sozialen\",\n        -12.845585823059082\n      ],\n      [\n        \"▁Emirates\",\n        -12.845746040344238\n      ],\n      [\n        \"▁encrypted\",\n        -12.845746040344238\n      ],\n      [\n        \"▁unfamiliar\",\n        -12.845746040344238\n      ],\n      [\n        \"established\",\n        -12.84577751159668\n      ],\n      [\n        \"▁Tätigkeit\",\n        -12.845818519592285\n      ],\n      [\n        \"▁unaware\",\n        -12.845913887023926\n      ],\n      [\n        \"2:00\",\n        -12.8460054397583\n      ],\n      [\n        \"macher\",\n        -12.846013069152832\n      ],\n      [\n        \"NSA\",\n        -12.8461275100708\n      ],\n      [\n        \"▁rutier\",\n        -12.846177101135254\n      ],\n      [\n        \"▁Trent\",\n        -12.846212387084961\n      ],\n      [\n        \"▁sickness\",\n        -12.846277236938477\n      ],\n      [\n        \"▁advert\",\n        -12.846417427062988\n      ],\n      [\n        \"▁Kranken\",\n        -12.846426963806152\n      ],\n      [\n        \"▁Sandra\",\n        -12.846443176269531\n      ],\n      [\n        \"▁Recreation\",\n        -12.846449851989746\n      ],\n      [\n        \"▁Evidence\",\n        -12.846524238586426\n      ],\n      [\n        \"▁Immigration\",\n        -12.846524238586426\n      ],\n      [\n        \"▁carriage\",\n        -12.846524238586426\n      ],\n      [\n        \"▁justified\",\n        -12.84655475616455\n      ],\n      [\n        \"▁veche\",\n        -12.846579551696777\n      ],\n      [\n        \"PGA\",\n        -12.846604347229004\n      ],\n      [\n        \"▁Carmen\",\n        -12.846735000610352\n      ],\n      [\n        \"▁Faites\",\n        -12.846750259399414\n      ],\n      [\n        \"▁erfüllt\",\n        -12.84691333770752\n      ],\n      [\n        \"▁voilà\",\n        -12.846931457519531\n      ],\n      [\n        \"▁împlin\",\n        -12.846959114074707\n      ],\n      [\n        \"deposited\",\n        -12.84721565246582\n      ],\n      [\n        \"▁decisiv\",\n        -12.847241401672363\n      ],\n      [\n        \"CSA\",\n        -12.847249031066895\n      ],\n      [\n        \"pathy\",\n        -12.84726619720459\n      ],\n      [\n        \"▁erweitert\",\n        -12.847302436828613\n      ],\n      [\n        \"▁liquor\",\n        -12.847302436828613\n      ],\n      [\n        \"▁resilient\",\n        -12.847302436828613\n      ],\n      [\n        \"▁walmart\",\n        -12.847302436828613\n      ],\n      [\n        \"▁fencing\",\n        -12.847308158874512\n      ],\n      [\n        \"▁dépasse\",\n        -12.84731388092041\n      ],\n      [\n        \"KT\",\n        -12.847354888916016\n      ],\n      [\n        \"▁fries\",\n        -12.847368240356445\n      ],\n      [\n        \"vadă\",\n        -12.847421646118164\n      ],\n      [\n        \"▁Spania\",\n        -12.847478866577148\n      ],\n      [\n        \"▁complètement\",\n        -12.847725868225098\n      ],\n      [\n        \"▁lucrari\",\n        -12.84777545928955\n      ],\n      [\n        \"▁Lieb\",\n        -12.847908973693848\n      ],\n      [\n        \"leistungen\",\n        -12.847943305969238\n      ],\n      [\n        \"198\",\n        -12.847979545593262\n      ],\n      [\n        \"▁Schnell\",\n        -12.847997665405273\n      ],\n      [\n        \"▁radius\",\n        -12.84814453125\n      ],\n      [\n        \"▁beneficiaries\",\n        -12.848151206970215\n      ],\n      [\n        \"▁northwest\",\n        -12.848174095153809\n      ],\n      [\n        \"▁#4\",\n        -12.848223686218262\n      ],\n      [\n        \"▁embryo\",\n        -12.848492622375488\n      ],\n      [\n        \"▁ditch\",\n        -12.848791122436523\n      ],\n      [\n        \"▁Seriously\",\n        -12.848859786987305\n      ],\n      [\n        \"oppel\",\n        -12.848941802978516\n      ],\n      [\n        \"▁stalk\",\n        -12.849053382873535\n      ],\n      [\n        \"écriture\",\n        -12.849066734313965\n      ],\n      [\n        \"512\",\n        -12.84912109375\n      ],\n      [\n        \"wiesen\",\n        -12.849271774291992\n      ],\n      [\n        \"▁Consum\",\n        -12.849321365356445\n      ],\n      [\n        \"▁lună\",\n        -12.849405288696289\n      ],\n      [\n        \"▁lantern\",\n        -12.849441528320312\n      ],\n      [\n        \"▁italian\",\n        -12.849629402160645\n      ],\n      [\n        \"▁achiziți\",\n        -12.849639892578125\n      ],\n      [\n        \"▁catalyst\",\n        -12.849639892578125\n      ],\n      [\n        \"▁Arbeitgeber\",\n        -12.849662780761719\n      ],\n      [\n        \"▁researched\",\n        -12.8496675491333\n      ],\n      [\n        \"▁drastically\",\n        -12.849679946899414\n      ],\n      [\n        \"versammlung\",\n        -12.849735260009766\n      ],\n      [\n        \"410\",\n        -12.849800109863281\n      ],\n      [\n        \"▁impus\",\n        -12.850153923034668\n      ],\n      [\n        \"▁interchange\",\n        -12.850173950195312\n      ],\n      [\n        \"▁pharmacie\",\n        -12.850215911865234\n      ],\n      [\n        \"Live\",\n        -12.850354194641113\n      ],\n      [\n        \"dents\",\n        -12.850384712219238\n      ],\n      [\n        \"▁charcoal\",\n        -12.850419998168945\n      ],\n      [\n        \"▁odihn\",\n        -12.850420951843262\n      ],\n      [\n        \"▁pistol\",\n        -12.850444793701172\n      ],\n      [\n        \"▁complaining\",\n        -12.850576400756836\n      ],\n      [\n        \"manager\",\n        -12.850578308105469\n      ],\n      [\n        \"themed\",\n        -12.850578308105469\n      ],\n      [\n        \"▁Chang\",\n        -12.850650787353516\n      ],\n      [\n        \"▁rookie\",\n        -12.85070514678955\n      ],\n      [\n        \"Great\",\n        -12.850706100463867\n      ],\n      [\n        \"▁smoker\",\n        -12.850733757019043\n      ],\n      [\n        \"▁Container\",\n        -12.850812911987305\n      ],\n      [\n        \"▁bancaire\",\n        -12.850852966308594\n      ],\n      [\n        \"▁Actual\",\n        -12.850966453552246\n      ],\n      [\n        \"füllen\",\n        -12.850982666015625\n      ],\n      [\n        \"forum\",\n        -12.850985527038574\n      ],\n      [\n        \"bleib\",\n        -12.851073265075684\n      ],\n      [\n        \"▁combi\",\n        -12.851079940795898\n      ],\n      [\n        \"smoked\",\n        -12.851137161254883\n      ],\n      [\n        \"difficultés\",\n        -12.851161003112793\n      ],\n      [\n        \"▁tactical\",\n        -12.851240158081055\n      ],\n      [\n        \"▁sichtbar\",\n        -12.851483345031738\n      ],\n      [\n        \"▁dreptate\",\n        -12.851598739624023\n      ],\n      [\n        \"ERT\",\n        -12.85168743133545\n      ],\n      [\n        \"▁Pond\",\n        -12.85177993774414\n      ],\n      [\n        \"▁Holly\",\n        -12.851844787597656\n      ],\n      [\n        \"erfolg\",\n        -12.8518705368042\n      ],\n      [\n        \"▁Nordic\",\n        -12.851896286010742\n      ],\n      [\n        \"évènement\",\n        -12.851983070373535\n      ],\n      [\n        \"embracing\",\n        -12.851984024047852\n      ],\n      [\n        \"▁Maximum\",\n        -12.851984024047852\n      ],\n      [\n        \"▁défend\",\n        -12.85205078125\n      ],\n      [\n        \"▁fruct\",\n        -12.852056503295898\n      ],\n      [\n        \"▁Conditioning\",\n        -12.852099418640137\n      ],\n      [\n        \"LG\",\n        -12.852127075195312\n      ],\n      [\n        \"exigence\",\n        -12.852166175842285\n      ],\n      [\n        \"amide\",\n        -12.852187156677246\n      ],\n      [\n        \"▁darunter\",\n        -12.852208137512207\n      ],\n      [\n        \"▁EVERY\",\n        -12.852420806884766\n      ],\n      [\n        \"▁comparat\",\n        -12.85244083404541\n      ],\n      [\n        \"boosting\",\n        -12.852452278137207\n      ],\n      [\n        \"▁Hawaiian\",\n        -12.852553367614746\n      ],\n      [\n        \"▁Geburt\",\n        -12.852752685546875\n      ],\n      [\n        \"deci\",\n        -12.852782249450684\n      ],\n      [\n        \"▁Apollo\",\n        -12.852803230285645\n      ],\n      [\n        \"▁schützen\",\n        -12.852821350097656\n      ],\n      [\n        \"tragere\",\n        -12.852893829345703\n      ],\n      [\n        \"Online\",\n        -12.852904319763184\n      ],\n      [\n        \"▁neural\",\n        -12.852913856506348\n      ],\n      [\n        \"▁lucrez\",\n        -12.853188514709473\n      ],\n      [\n        \"▁phenomenal\",\n        -12.853253364562988\n      ],\n      [\n        \"▁Height\",\n        -12.853368759155273\n      ],\n      [\n        \"coordinating\",\n        -12.853548049926758\n      ],\n      [\n        \"geschnitten\",\n        -12.853631019592285\n      ],\n      [\n        \"auront\",\n        -12.853641510009766\n      ],\n      [\n        \"▁administer\",\n        -12.853644371032715\n      ],\n      [\n        \"▁contend\",\n        -12.853707313537598\n      ],\n      [\n        \"▁crispy\",\n        -12.853784561157227\n      ],\n      [\n        \"chuck\",\n        -12.854011535644531\n      ],\n      [\n        \"▁Condition\",\n        -12.8540678024292\n      ],\n      [\n        \"gestaltung\",\n        -12.854324340820312\n      ],\n      [\n        \"▁Blvd\",\n        -12.854331970214844\n      ],\n      [\n        \"▁subjective\",\n        -12.854470252990723\n      ],\n      [\n        \"▁événements\",\n        -12.854708671569824\n      ],\n      [\n        \"▁Jenny\",\n        -12.855131149291992\n      ],\n      [\n        \"▁cumpăra\",\n        -12.85519027709961\n      ],\n      [\n        \"constructing\",\n        -12.855262756347656\n      ],\n      [\n        \"▁instructional\",\n        -12.85539436340332\n      ],\n      [\n        \"▁sterling\",\n        -12.855446815490723\n      ],\n      [\n        \"scrise\",\n        -12.855470657348633\n      ],\n      [\n        \"▁Boulevard\",\n        -12.855551719665527\n      ],\n      [\n        \"pipe\",\n        -12.855620384216309\n      ],\n      [\n        \"▁Pride\",\n        -12.855748176574707\n      ],\n      [\n        \"▁Kau\",\n        -12.855751991271973\n      ],\n      [\n        \"▁overhaul\",\n        -12.855924606323242\n      ],\n      [\n        \"▁Recruitment\",\n        -12.855925559997559\n      ],\n      [\n        \"▁thrilling\",\n        -12.856218338012695\n      ],\n      [\n        \"living\",\n        -12.856302261352539\n      ],\n      [\n        \"▁rămân\",\n        -12.85645866394043\n      ],\n      [\n        \"▁MOD\",\n        -12.85661792755127\n      ],\n      [\n        \"▁Newport\",\n        -12.856675148010254\n      ],\n      [\n        \"▁infectious\",\n        -12.856688499450684\n      ],\n      [\n        \"6-3\",\n        -12.856860160827637\n      ],\n      [\n        \"▁Apache\",\n        -12.856976509094238\n      ],\n      [\n        \"▁dependence\",\n        -12.85698413848877\n      ],\n      [\n        \"nutzung\",\n        -12.857199668884277\n      ],\n      [\n        \"praised\",\n        -12.857211112976074\n      ],\n      [\n        \"▁craving\",\n        -12.857346534729004\n      ],\n      [\n        \"▁cramp\",\n        -12.857397079467773\n      ],\n      [\n        \"▁mancare\",\n        -12.857455253601074\n      ],\n      [\n        \"▁entdeckt\",\n        -12.857474327087402\n      ],\n      [\n        \"▁Pioneer\",\n        -12.857484817504883\n      ],\n      [\n        \"▁Adelaide\",\n        -12.857490539550781\n      ],\n      [\n        \"2.0\",\n        -12.857503890991211\n      ],\n      [\n        \"168\",\n        -12.857526779174805\n      ],\n      [\n        \"▁Decorating\",\n        -12.857611656188965\n      ],\n      [\n        \"▁unpleasant\",\n        -12.857854843139648\n      ],\n      [\n        \"▁déclaration\",\n        -12.857865333557129\n      ],\n      [\n        \"▁Grafik\",\n        -12.857908248901367\n      ],\n      [\n        \"5-2\",\n        -12.857937812805176\n      ],\n      [\n        \"căci\",\n        -12.857940673828125\n      ],\n      [\n        \"▁invade\",\n        -12.858171463012695\n      ],\n      [\n        \"▁internaţional\",\n        -12.858259201049805\n      ],\n      [\n        \"▁fraudulent\",\n        -12.858281135559082\n      ],\n      [\n        \"▁crestere\",\n        -12.858441352844238\n      ],\n      [\n        \"ografic\",\n        -12.858729362487793\n      ],\n      [\n        \"plină\",\n        -12.859140396118164\n      ],\n      [\n        \"sunteti\",\n        -12.859150886535645\n      ],\n      [\n        \"/04\",\n        -12.859176635742188\n      ],\n      [\n        \"▁admis\",\n        -12.85935115814209\n      ],\n      [\n        \"▁mediation\",\n        -12.859403610229492\n      ],\n      [\n        \"ICC\",\n        -12.859424591064453\n      ],\n      [\n        \"roș\",\n        -12.859660148620605\n      ],\n      [\n        \"▁Aroma\",\n        -12.8596773147583\n      ],\n      [\n        \"1:00\",\n        -12.859792709350586\n      ],\n      [\n        \"gasesc\",\n        -12.859822273254395\n      ],\n      [\n        \"▁Defence\",\n        -12.859850883483887\n      ],\n      [\n        \"▁dictionary\",\n        -12.859856605529785\n      ],\n      [\n        \"▁Batterie\",\n        -12.859865188598633\n      ],\n      [\n        \"▁gesunde\",\n        -12.85997486114502\n      ],\n      [\n        \"146\",\n        -12.860099792480469\n      ],\n      [\n        \"▁mortal\",\n        -12.860129356384277\n      ],\n      [\n        \"▁Flughafen\",\n        -12.860230445861816\n      ],\n      [\n        \"hhh\",\n        -12.860284805297852\n      ],\n      [\n        \"▁novice\",\n        -12.860342025756836\n      ],\n      [\n        \"▁Develop\",\n        -12.86043930053711\n      ],\n      [\n        \"▁accidental\",\n        -12.860516548156738\n      ],\n      [\n        \"Muzeul\",\n        -12.86054515838623\n      ],\n      [\n        \"▁Jupiter\",\n        -12.86062240600586\n      ],\n      [\n        \"supposedly\",\n        -12.860662460327148\n      ],\n      [\n        \"energy\",\n        -12.860758781433105\n      ],\n      [\n        \"▁montrer\",\n        -12.860764503479004\n      ],\n      [\n        \"recalled\",\n        -12.860795021057129\n      ],\n      [\n        \"Press\",\n        -12.860801696777344\n      ],\n      [\n        \"▁postcard\",\n        -12.86080265045166\n      ],\n      [\n        \"target\",\n        -12.86081600189209\n      ],\n      [\n        \"▁vêtements\",\n        -12.860881805419922\n      ],\n      [\n        \"▁particle\",\n        -12.860888481140137\n      ],\n      [\n        \"professional\",\n        -12.8608980178833\n      ],\n      [\n        \"▁1949\",\n        -12.860917091369629\n      ],\n      [\n        \"yah\",\n        -12.860980033874512\n      ],\n      [\n        \"▁Spiegel\",\n        -12.861017227172852\n      ],\n      [\n        \"▁Jeffrey\",\n        -12.861023902893066\n      ],\n      [\n        \"fahrzeug\",\n        -12.861027717590332\n      ],\n      [\n        \"▁Plug\",\n        -12.861051559448242\n      ],\n      [\n        \"▁violin\",\n        -12.861150741577148\n      ],\n      [\n        \"▁condemn\",\n        -12.861381530761719\n      ],\n      [\n        \"▁conducere\",\n        -12.861398696899414\n      ],\n      [\n        \"▁Chevrolet\",\n        -12.861412048339844\n      ],\n      [\n        \"▁conceput\",\n        -12.861461639404297\n      ],\n      [\n        \"▁Merri\",\n        -12.861493110656738\n      ],\n      [\n        \"judging\",\n        -12.861559867858887\n      ],\n      [\n        \"embraced\",\n        -12.86168098449707\n      ],\n      [\n        \"▁Compact\",\n        -12.861715316772461\n      ],\n      [\n        \"▁château\",\n        -12.861807823181152\n      ],\n      [\n        \"etch\",\n        -12.861945152282715\n      ],\n      [\n        \"bedroom\",\n        -12.861995697021484\n      ],\n      [\n        \"People\",\n        -12.862038612365723\n      ],\n      [\n        \"25,000\",\n        -12.86209774017334\n      ],\n      [\n        \"ocyte\",\n        -12.862146377563477\n      ],\n      [\n        \"▁Lenovo\",\n        -12.862205505371094\n      ],\n      [\n        \"▁Hampton\",\n        -12.862241744995117\n      ],\n      [\n        \"5.2\",\n        -12.862244606018066\n      ],\n      [\n        \"▁progres\",\n        -12.862266540527344\n      ],\n      [\n        \"hoc\",\n        -12.862288475036621\n      ],\n      [\n        \"▁complementary\",\n        -12.86241340637207\n      ],\n      [\n        \"turned\",\n        -12.862485885620117\n      ],\n      [\n        \"mangel\",\n        -12.862508773803711\n      ],\n      [\n        \"▁Drew\",\n        -12.862592697143555\n      ],\n      [\n        \"épisode\",\n        -12.86259651184082\n      ],\n      [\n        \"▁Versorgung\",\n        -12.86259651184082\n      ],\n      [\n        \"▁ausdrücklich\",\n        -12.86259651184082\n      ],\n      [\n        \"ciune\",\n        -12.862788200378418\n      ],\n      [\n        \"▁sfârșit\",\n        -12.862990379333496\n      ],\n      [\n        \"Agricultural\",\n        -12.862991333007812\n      ],\n      [\n        \"▁caffeine\",\n        -12.862991333007812\n      ],\n      [\n        \"▁emergencies\",\n        -12.862991333007812\n      ],\n      [\n        \"▁unhappy\",\n        -12.862991333007812\n      ],\n      [\n        \"(7)\",\n        -12.863043785095215\n      ],\n      [\n        \"▁inlocui\",\n        -12.863059043884277\n      ],\n      [\n        \"▁Rochester\",\n        -12.863153457641602\n      ],\n      [\n        \"183\",\n        -12.863155364990234\n      ],\n      [\n        \"niz\",\n        -12.863285064697266\n      ],\n      [\n        \"tasche\",\n        -12.863462448120117\n      ],\n      [\n        \"▁Salle\",\n        -12.86347484588623\n      ],\n      [\n        \"cît\",\n        -12.863478660583496\n      ],\n      [\n        \"▁Singer\",\n        -12.863489151000977\n      ],\n      [\n        \"▁economically\",\n        -12.863506317138672\n      ],\n      [\n        \"▁ieși\",\n        -12.863525390625\n      ],\n      [\n        \"▁façade\",\n        -12.86378288269043\n      ],\n      [\n        \"Ohne\",\n        -12.863801956176758\n      ],\n      [\n        \"▁edible\",\n        -12.863842964172363\n      ],\n      [\n        \"Rob\",\n        -12.863851547241211\n      ],\n      [\n        \"▁(2014)\",\n        -12.863859176635742\n      ],\n      [\n        \"▁Zar\",\n        -12.863919258117676\n      ],\n      [\n        \"▁obey\",\n        -12.863995552062988\n      ],\n      [\n        \"Pack\",\n        -12.864087104797363\n      ],\n      [\n        \"▁Omni\",\n        -12.864198684692383\n      ],\n      [\n        \"▁Gilbert\",\n        -12.864212036132812\n      ],\n      [\n        \"▁Vlad\",\n        -12.86429500579834\n      ],\n      [\n        \"▁pauvre\",\n        -12.864333152770996\n      ],\n      [\n        \"▁secular\",\n        -12.864383697509766\n      ],\n      [\n        \"Center\",\n        -12.864415168762207\n      ],\n      [\n        \"▁Prospect\",\n        -12.864457130432129\n      ],\n      [\n        \"▁Noah\",\n        -12.86450481414795\n      ],\n      [\n        \"▁Interactive\",\n        -12.86471176147461\n      ],\n      [\n        \"▁centaine\",\n        -12.86485767364502\n      ],\n      [\n        \"▁cerebral\",\n        -12.864971160888672\n      ],\n      [\n        \"▁Novel\",\n        -12.865013122558594\n      ],\n      [\n        \"▁Käufer\",\n        -12.865039825439453\n      ],\n      [\n        \"werfen\",\n        -12.865056991577148\n      ],\n      [\n        \"▁reluctant\",\n        -12.865143775939941\n      ],\n      [\n        \"ес\",\n        -12.86520004272461\n      ],\n      [\n        \"Look\",\n        -12.86521053314209\n      ],\n      [\n        \"Erkrankung\",\n        -12.86536693572998\n      ],\n      [\n        \"▁cucumber\",\n        -12.86536693572998\n      ],\n      [\n        \"/2017\",\n        -12.865399360656738\n      ],\n      [\n        \"▁flank\",\n        -12.865405082702637\n      ],\n      [\n        \"opportunité\",\n        -12.865667343139648\n      ],\n      [\n        \"zugleich\",\n        -12.865766525268555\n      ],\n      [\n        \"RAT\",\n        -12.865840911865234\n      ],\n      [\n        \"▁avantages\",\n        -12.865880012512207\n      ],\n      [\n        \"▁außer\",\n        -12.866008758544922\n      ],\n      [\n        \"GV\",\n        -12.866090774536133\n      ],\n      [\n        \"▁Continental\",\n        -12.866159439086914\n      ],\n      [\n        \"▁affiliation\",\n        -12.866159439086914\n      ],\n      [\n        \"▁ursprünglich\",\n        -12.86618423461914\n      ],\n      [\n        \"▁hardship\",\n        -12.866349220275879\n      ],\n      [\n        \"âme\",\n        -12.86647891998291\n      ],\n      [\n        \"▁hallway\",\n        -12.866576194763184\n      ],\n      [\n        \"▁afară\",\n        -12.866578102111816\n      ],\n      [\n        \"western\",\n        -12.866714477539062\n      ],\n      [\n        \"▁Jacket\",\n        -12.866802215576172\n      ],\n      [\n        \"▁culturelle\",\n        -12.866876602172852\n      ],\n      [\n        \"▁glaci\",\n        -12.866995811462402\n      ],\n      [\n        \"metoda\",\n        -12.867036819458008\n      ],\n      [\n        \"▁clerk\",\n        -12.867045402526855\n      ],\n      [\n        \"▁ordinance\",\n        -12.867185592651367\n      ],\n      [\n        \"▁Initial\",\n        -12.867197036743164\n      ],\n      [\n        \"waking\",\n        -12.86722469329834\n      ],\n      [\n        \"▁Secondary\",\n        -12.867366790771484\n      ],\n      [\n        \"▁Solomon\",\n        -12.867411613464355\n      ],\n      [\n        \"glomer\",\n        -12.867488861083984\n      ],\n      [\n        \"SYS\",\n        -12.867530822753906\n      ],\n      [\n        \"▁Florin\",\n        -12.867596626281738\n      ],\n      [\n        \"ffentlich\",\n        -12.867670059204102\n      ],\n      [\n        \"▁Printer\",\n        -12.867674827575684\n      ],\n      [\n        \"▁dimineata\",\n        -12.86774730682373\n      ],\n      [\n        \"▁stripes\",\n        -12.867748260498047\n      ],\n      [\n        \"plugged\",\n        -12.86776065826416\n      ],\n      [\n        \"öhl\",\n        -12.867836952209473\n      ],\n      [\n        \"infused\",\n        -12.867875099182129\n      ],\n      [\n        \"▁Rubber\",\n        -12.867895126342773\n      ],\n      [\n        \"paved\",\n        -12.867898941040039\n      ],\n      [\n        \"▁Devi\",\n        -12.867995262145996\n      ],\n      [\n        \"▁subway\",\n        -12.8681640625\n      ],\n      [\n        \"▁gases\",\n        -12.868306159973145\n      ],\n      [\n        \"▁reguli\",\n        -12.868371963500977\n      ],\n      [\n        \"▁Rebel\",\n        -12.868413925170898\n      ],\n      [\n        \"▁destructive\",\n        -12.868546485900879\n      ],\n      [\n        \"▁oferind\",\n        -12.868664741516113\n      ],\n      [\n        \"9001\",\n        -12.868876457214355\n      ],\n      [\n        \"CRA\",\n        -12.868912696838379\n      ],\n      [\n        \"why\",\n        -12.868932723999023\n      ],\n      [\n        \"sensul\",\n        -12.869036674499512\n      ],\n      [\n        \"guter\",\n        -12.869277000427246\n      ],\n      [\n        \"Empfehlung\",\n        -12.869338035583496\n      ],\n      [\n        \"▁convertible\",\n        -12.86953353881836\n      ],\n      [\n        \"▁predominantly\",\n        -12.869637489318848\n      ],\n      [\n        \"▁Mentor\",\n        -12.869649887084961\n      ],\n      [\n        \"Practic\",\n        -12.869720458984375\n      ],\n      [\n        \"▁echipă\",\n        -12.869754791259766\n      ],\n      [\n        \"onsite\",\n        -12.869853019714355\n      ],\n      [\n        \"▁zunehmend\",\n        -12.86994743347168\n      ],\n      [\n        \"▁Harbour\",\n        -12.870016098022461\n      ],\n      [\n        \"▁pineapple\",\n        -12.870133399963379\n      ],\n      [\n        \"▁gasoline\",\n        -12.870139122009277\n      ],\n      [\n        \"▁Jaguar\",\n        -12.870158195495605\n      ],\n      [\n        \"kno\",\n        -12.870259284973145\n      ],\n      [\n        \"▁heap\",\n        -12.870448112487793\n      ],\n      [\n        \"▁fictional\",\n        -12.870481491088867\n      ],\n      [\n        \"fiinta\",\n        -12.870753288269043\n      ],\n      [\n        \"▁Amber\",\n        -12.87081241607666\n      ],\n      [\n        \"▁Exclusive\",\n        -12.870929718017578\n      ],\n      [\n        \"▁Pharmaceutical\",\n        -12.870929718017578\n      ],\n      [\n        \"▁unterscheide\",\n        -12.871044158935547\n      ],\n      [\n        \"▁1942\",\n        -12.871116638183594\n      ],\n      [\n        \"▁Ceiling\",\n        -12.87115478515625\n      ],\n      [\n        \"developed\",\n        -12.871228218078613\n      ],\n      [\n        \"▁consacr\",\n        -12.87132453918457\n      ],\n      [\n        \"▁Membr\",\n        -12.871411323547363\n      ],\n      [\n        \"erton\",\n        -12.871447563171387\n      ],\n      [\n        \"habitation\",\n        -12.871685981750488\n      ],\n      [\n        \"▁longevity\",\n        -12.871726989746094\n      ],\n      [\n        \"▁Starbucks\",\n        -12.871728897094727\n      ],\n      [\n        \"▁poat\",\n        -12.871771812438965\n      ],\n      [\n        \"▁commissioner\",\n        -12.871794700622559\n      ],\n      [\n        \"pedia\",\n        -12.871938705444336\n      ],\n      [\n        \"popped\",\n        -12.872468948364258\n      ],\n      [\n        \"versorgung\",\n        -12.872525215148926\n      ],\n      [\n        \"▁Aktivitäten\",\n        -12.872525215148926\n      ],\n      [\n        \"▁Betreuung\",\n        -12.872525215148926\n      ],\n      [\n        \"▁afacere\",\n        -12.872968673706055\n      ],\n      [\n        \"▁Mechanical\",\n        -12.873323440551758\n      ],\n      [\n        \"▁Leiter\",\n        -12.873346328735352\n      ],\n      [\n        \"▁scaling\",\n        -12.873427391052246\n      ],\n      [\n        \"▁Slim\",\n        -12.87350082397461\n      ],\n      [\n        \"▁temperaturi\",\n        -12.873516082763672\n      ],\n      [\n        \"ACH\",\n        -12.873558044433594\n      ],\n      [\n        \"▁jährlich\",\n        -12.873682022094727\n      ],\n      [\n        \"▁photographie\",\n        -12.873722076416016\n      ],\n      [\n        \"▁préalable\",\n        -12.873725891113281\n      ],\n      [\n        \"▁părinți\",\n        -12.87372875213623\n      ],\n      [\n        \"▁Farmers\",\n        -12.873873710632324\n      ],\n      [\n        \"▁Printable\",\n        -12.873905181884766\n      ],\n      [\n        \"Früh\",\n        -12.873908996582031\n      ],\n      [\n        \"approved\",\n        -12.87398624420166\n      ],\n      [\n        \"otro\",\n        -12.874094009399414\n      ],\n      [\n        \"▁veneer\",\n        -12.874099731445312\n      ],\n      [\n        \"▁Warriors\",\n        -12.874122619628906\n      ],\n      [\n        \"▁Approach\",\n        -12.874149322509766\n      ],\n      [\n        \"Share\",\n        -12.874238967895508\n      ],\n      [\n        \"▁buds\",\n        -12.874252319335938\n      ],\n      [\n        \"▁Într\",\n        -12.874330520629883\n      ],\n      [\n        \"glichen\",\n        -12.87452507019043\n      ],\n      [\n        \"▁anbieten\",\n        -12.87452507019043\n      ],\n      [\n        \"MET\",\n        -12.874539375305176\n      ],\n      [\n        \"amélioration\",\n        -12.87468147277832\n      ],\n      [\n        \"ländische\",\n        -12.87468433380127\n      ],\n      [\n        \"nsgesamt\",\n        -12.874764442443848\n      ],\n      [\n        \"einiger\",\n        -12.874822616577148\n      ],\n      [\n        \"▁Förderung\",\n        -12.874876022338867\n      ],\n      [\n        \"destroying\",\n        -12.874910354614258\n      ],\n      [\n        \"▁accreditation\",\n        -12.874922752380371\n      ],\n      [\n        \"reminiscent\",\n        -12.875094413757324\n      ],\n      [\n        \"▁retriev\",\n        -12.87528133392334\n      ],\n      [\n        \"▁Flü\",\n        -12.875306129455566\n      ],\n      [\n        \"▁Monsieur\",\n        -12.875322341918945\n      ],\n      [\n        \"German\",\n        -12.87536334991455\n      ],\n      [\n        \"Orice\",\n        -12.875443458557129\n      ],\n      [\n        \"künftig\",\n        -12.875523567199707\n      ],\n      [\n        \"▁vorbi\",\n        -12.875639915466309\n      ],\n      [\n        \"▁intentionally\",\n        -12.875733375549316\n      ],\n      [\n        \"▁îngrij\",\n        -12.875743865966797\n      ],\n      [\n        \"▁laughed\",\n        -12.875850677490234\n      ],\n      [\n        \"▁Fiction\",\n        -12.875913619995117\n      ],\n      [\n        \"▁inteligent\",\n        -12.875914573669434\n      ],\n      [\n        \"▁Translation\",\n        -12.875953674316406\n      ],\n      [\n        \"greete\",\n        -12.875983238220215\n      ],\n      [\n        \"▁énergétique\",\n        -12.876123428344727\n      ],\n      [\n        \"uncovered\",\n        -12.876248359680176\n      ],\n      [\n        \"▁évidemment\",\n        -12.876523971557617\n      ],\n      [\n        \"▁Vietnamese\",\n        -12.876535415649414\n      ],\n      [\n        \"▁Libya\",\n        -12.876675605773926\n      ],\n      [\n        \"▁Trailer\",\n        -12.876734733581543\n      ],\n      [\n        \"▁Wohl\",\n        -12.876871109008789\n      ],\n      [\n        \"▁Congo\",\n        -12.87698745727539\n      ],\n      [\n        \"▁freut\",\n        -12.877002716064453\n      ],\n      [\n        \"zauber\",\n        -12.877090454101562\n      ],\n      [\n        \"▁Pân\",\n        -12.877142906188965\n      ],\n      [\n        \"▁mentine\",\n        -12.877333641052246\n      ],\n      [\n        \"▁welding\",\n        -12.877335548400879\n      ],\n      [\n        \"▁Mircea\",\n        -12.8773775100708\n      ],\n      [\n        \"▁optimism\",\n        -12.877455711364746\n      ],\n      [\n        \"VEL\",\n        -12.877504348754883\n      ],\n      [\n        \"oilea\",\n        -12.877540588378906\n      ],\n      [\n        \"▁thereafter\",\n        -12.877612113952637\n      ],\n      [\n        \"▁André\",\n        -12.877710342407227\n      ],\n      [\n        \"forschung\",\n        -12.877799987792969\n      ],\n      [\n        \"running\",\n        -12.878022193908691\n      ],\n      [\n        \"▁hostile\",\n        -12.878059387207031\n      ],\n      [\n        \"Homme\",\n        -12.87811279296875\n      ],\n      [\n        \"▁Satellite\",\n        -12.878129005432129\n      ],\n      [\n        \"▁collagen\",\n        -12.87841796875\n      ],\n      [\n        \"▁concedi\",\n        -12.878518104553223\n      ],\n      [\n        \"▁produziert\",\n        -12.87852954864502\n      ],\n      [\n        \"▁virgin\",\n        -12.878540992736816\n      ],\n      [\n        \"frant\",\n        -12.87857723236084\n      ],\n      [\n        \"▁teammates\",\n        -12.878744125366211\n      ],\n      [\n        \"▁faceti\",\n        -12.878802299499512\n      ],\n      [\n        \"▁Restoration\",\n        -12.87893295288086\n      ],\n      [\n        \"▁detached\",\n        -12.878935813903809\n      ],\n      [\n        \"▁Instructor\",\n        -12.878950119018555\n      ],\n      [\n        \"montag\",\n        -12.879227638244629\n      ],\n      [\n        \"▁borrowing\",\n        -12.879375457763672\n      ],\n      [\n        \"▁Retro\",\n        -12.879446983337402\n      ],\n      [\n        \"▁behandelt\",\n        -12.879536628723145\n      ],\n      [\n        \"▁Aussage\",\n        -12.879715919494629\n      ],\n      [\n        \"▁snorkel\",\n        -12.879734992980957\n      ],\n      [\n        \"▁Proceedings\",\n        -12.879754066467285\n      ],\n      [\n        \"▁Judy\",\n        -12.879776000976562\n      ],\n      [\n        \"▁Wendy\",\n        -12.879783630371094\n      ],\n      [\n        \"artă\",\n        -12.879920959472656\n      ],\n      [\n        \"▁Vergangenheit\",\n        -12.88013744354248\n      ],\n      [\n        \"▁Gegner\",\n        -12.880139350891113\n      ],\n      [\n        \"▁ulcer\",\n        -12.880166053771973\n      ],\n      [\n        \"wirksam\",\n        -12.880553245544434\n      ],\n      [\n        \"▁închis\",\n        -12.880560874938965\n      ],\n      [\n        \"▁emission\",\n        -12.88068962097168\n      ],\n      [\n        \"ulescu\",\n        -12.880754470825195\n      ],\n      [\n        \"▁bancar\",\n        -12.880819320678711\n      ],\n      [\n        \"compromising\",\n        -12.880924224853516\n      ],\n      [\n        \"▁Priest\",\n        -12.881156921386719\n      ],\n      [\n        \"▁Progress\",\n        -12.881318092346191\n      ],\n      [\n        \"▁punish\",\n        -12.88144588470459\n      ],\n      [\n        \"▁Afin\",\n        -12.881450653076172\n      ],\n      [\n        \"▁Bog\",\n        -12.881514549255371\n      ],\n      [\n        \"lunii\",\n        -12.881525039672852\n      ],\n      [\n        \"▁ressembl\",\n        -12.881570816040039\n      ],\n      [\n        \"▁Creation\",\n        -12.881644248962402\n      ],\n      [\n        \"effet\",\n        -12.881668090820312\n      ],\n      [\n        \"Versicherung\",\n        -12.881671905517578\n      ],\n      [\n        \"médias\",\n        -12.881672859191895\n      ],\n      [\n        \"▁Kritik\",\n        -12.881793975830078\n      ],\n      [\n        \"idia\",\n        -12.881896018981934\n      ],\n      [\n        \"▁Wasch\",\n        -12.881929397583008\n      ],\n      [\n        \"UAL\",\n        -12.882059097290039\n      ],\n      [\n        \"Approximately\",\n        -12.882149696350098\n      ],\n      [\n        \"izari\",\n        -12.882152557373047\n      ],\n      [\n        \"▁Dortmund\",\n        -12.882152557373047\n      ],\n      [\n        \"▁contul\",\n        -12.882343292236328\n      ],\n      [\n        \"▁Airways\",\n        -12.882408142089844\n      ],\n      [\n        \"sicherung\",\n        -12.882535934448242\n      ],\n      [\n        \"échelle\",\n        -12.882560729980469\n      ],\n      [\n        \"ADD\",\n        -12.882582664489746\n      ],\n      [\n        \"DIA\",\n        -12.88259506225586\n      ],\n      [\n        \"kabel\",\n        -12.882621765136719\n      ],\n      [\n        \"Media\",\n        -12.88268756866455\n      ],\n      [\n        \"ampli\",\n        -12.882894515991211\n      ],\n      [\n        \"▁quarry\",\n        -12.88295841217041\n      ],\n      [\n        \"▁acoper\",\n        -12.883072853088379\n      ],\n      [\n        \"halter\",\n        -12.883326530456543\n      ],\n      [\n        \"▁solicitor\",\n        -12.883684158325195\n      ],\n      [\n        \"phosphat\",\n        -12.883763313293457\n      ],\n      [\n        \"▁drown\",\n        -12.883773803710938\n      ],\n      [\n        \"congratulat\",\n        -12.884047508239746\n      ],\n      [\n        \"▁uneven\",\n        -12.884087562561035\n      ],\n      [\n        \"▁rupe\",\n        -12.884154319763184\n      ],\n      [\n        \"▁heureux\",\n        -12.88417911529541\n      ],\n      [\n        \"caractéristiques\",\n        -12.884221076965332\n      ],\n      [\n        \"60,000\",\n        -12.884283065795898\n      ],\n      [\n        \"ambigu\",\n        -12.884340286254883\n      ],\n      [\n        \"224\",\n        -12.884417533874512\n      ],\n      [\n        \"dov\",\n        -12.88454532623291\n      ],\n      [\n        \"▁Naturally\",\n        -12.884629249572754\n      ],\n      [\n        \"▁Ernst\",\n        -12.884634017944336\n      ],\n      [\n        \"Camp\",\n        -12.884757995605469\n      ],\n      [\n        \"▁Worldwide\",\n        -12.884909629821777\n      ],\n      [\n        \"▁antrenament\",\n        -12.885042190551758\n      ],\n      [\n        \"▁jocul\",\n        -12.88521671295166\n      ],\n      [\n        \"▁broccoli\",\n        -12.88537883758545\n      ],\n      [\n        \"▁fascinated\",\n        -12.88537883758545\n      ],\n      [\n        \"▁Abbey\",\n        -12.885387420654297\n      ],\n      [\n        \"▁aquarium\",\n        -12.885390281677246\n      ],\n      [\n        \"HAN\",\n        -12.885458946228027\n      ],\n      [\n        \"chaffung\",\n        -12.885480880737305\n      ],\n      [\n        \"137\",\n        -12.885503768920898\n      ],\n      [\n        \"rumors\",\n        -12.885515213012695\n      ],\n      [\n        \"reliance\",\n        -12.885557174682617\n      ],\n      [\n        \"▁vaccination\",\n        -12.8856782913208\n      ],\n      [\n        \"responsabilitate\",\n        -12.885777473449707\n      ],\n      [\n        \"▁legislati\",\n        -12.885782241821289\n      ],\n      [\n        \"ATT\",\n        -12.885826110839844\n      ],\n      [\n        \"206\",\n        -12.885896682739258\n      ],\n      [\n        \"▁miere\",\n        -12.885967254638672\n      ],\n      [\n        \"▁rezultatul\",\n        -12.885988235473633\n      ],\n      [\n        \"părea\",\n        -12.88599681854248\n      ],\n      [\n        \"zuführen\",\n        -12.886159896850586\n      ],\n      [\n        \"▁Kompetenz\",\n        -12.886187553405762\n      ],\n      [\n        \"▁nickname\",\n        -12.886195182800293\n      ],\n      [\n        \"pilot\",\n        -12.88620376586914\n      ],\n      [\n        \"▁ninth\",\n        -12.886252403259277\n      ],\n      [\n        \"▁Tyr\",\n        -12.886446952819824\n      ],\n      [\n        \"▁misuse\",\n        -12.886469841003418\n      ],\n      [\n        \"▁SUP\",\n        -12.886514663696289\n      ],\n      [\n        \"▁Attack\",\n        -12.88667106628418\n      ],\n      [\n        \"Smart\",\n        -12.88669490814209\n      ],\n      [\n        \"▁Philosoph\",\n        -12.886930465698242\n      ],\n      [\n        \"▁Alege\",\n        -12.886931419372559\n      ],\n      [\n        \"▁femeile\",\n        -12.886967658996582\n      ],\n      [\n        \"▁Heating\",\n        -12.88698673248291\n      ],\n      [\n        \"▁Cricket\",\n        -12.886999130249023\n      ],\n      [\n        \"▁scholar\",\n        -12.887049674987793\n      ],\n      [\n        \"Model\",\n        -12.887073516845703\n      ],\n      [\n        \"▁stimulating\",\n        -12.887182235717773\n      ],\n      [\n        \"▁industrielle\",\n        -12.887189865112305\n      ],\n      [\n        \"▁phenomena\",\n        -12.887303352355957\n      ],\n      [\n        \"▁Nahrung\",\n        -12.887414932250977\n      ],\n      [\n        \"▁Conditioner\",\n        -12.887433052062988\n      ],\n      [\n        \"führ\",\n        -12.887489318847656\n      ],\n      [\n        \"▁révolution\",\n        -12.88757610321045\n      ],\n      [\n        \"plastic\",\n        -12.887595176696777\n      ],\n      [\n        \"▁approximate\",\n        -12.887596130371094\n      ],\n      [\n        \"▁dienen\",\n        -12.887624740600586\n      ],\n      [\n        \"▁obsession\",\n        -12.887807846069336\n      ],\n      [\n        \"▁rectangular\",\n        -12.887807846069336\n      ],\n      [\n        \"Allemagne\",\n        -12.887808799743652\n      ],\n      [\n        \"▁Tanzania\",\n        -12.887824058532715\n      ],\n      [\n        \"border\",\n        -12.887884140014648\n      ],\n      [\n        \"▁crashed\",\n        -12.887958526611328\n      ],\n      [\n        \"visor\",\n        -12.887974739074707\n      ],\n      [\n        \"▁autorizat\",\n        -12.888072967529297\n      ],\n      [\n        \"▁Champagne\",\n        -12.888222694396973\n      ],\n      [\n        \"längst\",\n        -12.888238906860352\n      ],\n      [\n        \"▁realities\",\n        -12.888314247131348\n      ],\n      [\n        \"▁Keyword\",\n        -12.88831615447998\n      ],\n      [\n        \"▁GUI\",\n        -12.888495445251465\n      ],\n      [\n        \"▁simplified\",\n        -12.88865852355957\n      ],\n      [\n        \"▁Rack\",\n        -12.888681411743164\n      ],\n      [\n        \"▁Zahlen\",\n        -12.888693809509277\n      ],\n      [\n        \"growth\",\n        -12.888897895812988\n      ],\n      [\n        \"▁rehearsal\",\n        -12.888991355895996\n      ],\n      [\n        \"▁Epic\",\n        -12.888999938964844\n      ],\n      [\n        \"▁réussite\",\n        -12.889195442199707\n      ],\n      [\n        \"▁politician\",\n        -12.889263153076172\n      ],\n      [\n        \"▁emoți\",\n        -12.889378547668457\n      ],\n      [\n        \"▁delegation\",\n        -12.889449119567871\n      ],\n      [\n        \"▁со\",\n        -12.889464378356934\n      ],\n      [\n        \"oversized\",\n        -12.889477729797363\n      ],\n      [\n        \"▁Motto\",\n        -12.889481544494629\n      ],\n      [\n        \"1860\",\n        -12.889788627624512\n      ],\n      [\n        \"▁defective\",\n        -12.889803886413574\n      ],\n      [\n        \"brewing\",\n        -12.889852523803711\n      ],\n      [\n        \"linguistic\",\n        -12.890243530273438\n      ],\n      [\n        \"▁Hopkins\",\n        -12.890265464782715\n      ],\n      [\n        \"▁(2012)\",\n        -12.89030933380127\n      ],\n      [\n        \"crease\",\n        -12.890436172485352\n      ],\n      [\n        \"▁Versicherungs\",\n        -12.89052677154541\n      ],\n      [\n        \"▁Noble\",\n        -12.890752792358398\n      ],\n      [\n        \"▁Bekannt\",\n        -12.890896797180176\n      ],\n      [\n        \"▁vorstellen\",\n        -12.89095401763916\n      ],\n      [\n        \"▁suburban\",\n        -12.890970230102539\n      ],\n      [\n        \"DAC\",\n        -12.890995025634766\n      ],\n      [\n        \"▁scatter\",\n        -12.89103889465332\n      ],\n      [\n        \"▁Artificial\",\n        -12.8910551071167\n      ],\n      [\n        \"▁reactor\",\n        -12.891073226928711\n      ],\n      [\n        \"▁modelling\",\n        -12.89108943939209\n      ],\n      [\n        \"▁Holder\",\n        -12.891148567199707\n      ],\n      [\n        \"athon\",\n        -12.891149520874023\n      ],\n      [\n        \"147\",\n        -12.891190528869629\n      ],\n      [\n        \"▁stagn\",\n        -12.891257286071777\n      ],\n      [\n        \"ARY\",\n        -12.891261100769043\n      ],\n      [\n        \"Space\",\n        -12.89126968383789\n      ],\n      [\n        \"▁Gibson\",\n        -12.891718864440918\n      ],\n      [\n        \"▁Investigator\",\n        -12.89173698425293\n      ],\n      [\n        \"▁1914\",\n        -12.891818046569824\n      ],\n      [\n        \"▁Muhammad\",\n        -12.891868591308594\n      ],\n      [\n        \"▁shove\",\n        -12.892073631286621\n      ],\n      [\n        \"▁erklären\",\n        -12.892276763916016\n      ],\n      [\n        \"▁abdomen\",\n        -12.892277717590332\n      ],\n      [\n        \"▁Mazda\",\n        -12.892349243164062\n      ],\n      [\n        \"▁hemo\",\n        -12.892364501953125\n      ],\n      [\n        \"National\",\n        -12.892455101013184\n      ],\n      [\n        \"starken\",\n        -12.89267635345459\n      ],\n      [\n        \"▁Cyprus\",\n        -12.892683982849121\n      ],\n      [\n        \"▁tread\",\n        -12.892721176147461\n      ],\n      [\n        \"▁sweetness\",\n        -12.892725944519043\n      ],\n      [\n        \"stunden\",\n        -12.892790794372559\n      ],\n      [\n        \"▁couverture\",\n        -12.893059730529785\n      ],\n      [\n        \"▁Successful\",\n        -12.893060684204102\n      ],\n      [\n        \"▁oublier\",\n        -12.893171310424805\n      ],\n      [\n        \"▁esential\",\n        -12.893203735351562\n      ],\n      [\n        \"estival\",\n        -12.89321231842041\n      ],\n      [\n        \"gnac\",\n        -12.893280029296875\n      ],\n      [\n        \"▁Basement\",\n        -12.893457412719727\n      ],\n      [\n        \"presumably\",\n        -12.893497467041016\n      ],\n      [\n        \"▁mourn\",\n        -12.893561363220215\n      ],\n      [\n        \"armée\",\n        -12.893677711486816\n      ],\n      [\n        \"148\",\n        -12.893845558166504\n      ],\n      [\n        \"▁residue\",\n        -12.894006729125977\n      ],\n      [\n        \"▁metalic\",\n        -12.89404296875\n      ],\n      [\n        \"▁Zell\",\n        -12.89425277709961\n      ],\n      [\n        \"Build\",\n        -12.894280433654785\n      ],\n      [\n        \"▁prevalence\",\n        -12.894312858581543\n      ],\n      [\n        \"▁wrestling\",\n        -12.894312858581543\n      ],\n      [\n        \"▁ascuns\",\n        -12.894325256347656\n      ],\n      [\n        \"Sacred\",\n        -12.894340515136719\n      ],\n      [\n        \"Tec\",\n        -12.89438533782959\n      ],\n      [\n        \"▁Kindergarten\",\n        -12.894389152526855\n      ],\n      [\n        \"bindung\",\n        -12.894464492797852\n      ],\n      [\n        \"▁ritm\",\n        -12.894545555114746\n      ],\n      [\n        \"▁triste\",\n        -12.894651412963867\n      ],\n      [\n        \"▁introdus\",\n        -12.894758224487305\n      ],\n      [\n        \"/2016\",\n        -12.894824028015137\n      ],\n      [\n        \"▁română\",\n        -12.894899368286133\n      ],\n      [\n        \"▁bibli\",\n        -12.89490032196045\n      ],\n      [\n        \"▁cigar\",\n        -12.894913673400879\n      ],\n      [\n        \"Rie\",\n        -12.894990921020508\n      ],\n      [\n        \"▁intentional\",\n        -12.894999504089355\n      ],\n      [\n        \"▁cuprins\",\n        -12.895098686218262\n      ],\n      [\n        \"remarkably\",\n        -12.895129203796387\n      ],\n      [\n        \"▁printemps\",\n        -12.895133972167969\n      ],\n      [\n        \"▁declining\",\n        -12.895171165466309\n      ],\n      [\n        \"Magazin\",\n        -12.89552116394043\n      ],\n      [\n        \"▁săptămână\",\n        -12.895537376403809\n      ],\n      [\n        \"▁vérifier\",\n        -12.895549774169922\n      ],\n      [\n        \"▁Speise\",\n        -12.895584106445312\n      ],\n      [\n        \"▁reteta\",\n        -12.8956298828125\n      ],\n      [\n        \"heed\",\n        -12.895772933959961\n      ],\n      [\n        \"▁Compliance\",\n        -12.895946502685547\n      ],\n      [\n        \"▁embroidery\",\n        -12.895946502685547\n      ],\n      [\n        \"cried\",\n        -12.896025657653809\n      ],\n      [\n        \"▁(„\",\n        -12.896282196044922\n      ],\n      [\n        \"▁heck\",\n        -12.89629077911377\n      ],\n      [\n        \"▁sadness\",\n        -12.896501541137695\n      ],\n      [\n        \"▁impulse\",\n        -12.896585464477539\n      ],\n      [\n        \"ATH\",\n        -12.896740913391113\n      ],\n      [\n        \"▁lavender\",\n        -12.896773338317871\n      ],\n      [\n        \"uiesc\",\n        -12.896790504455566\n      ],\n      [\n        \"▁Disorder\",\n        -12.896876335144043\n      ],\n      [\n        \"stroke\",\n        -12.896991729736328\n      ],\n      [\n        \"▁piaţ\",\n        -12.8970365524292\n      ],\n      [\n        \"ournée\",\n        -12.897049903869629\n      ],\n      [\n        \"▁Barnes\",\n        -12.8971586227417\n      ],\n      [\n        \"▁scăzut\",\n        -12.897172927856445\n      ],\n      [\n        \"▁équipements\",\n        -12.89725112915039\n      ],\n      [\n        \"OND\",\n        -12.897375106811523\n      ],\n      [\n        \"▁Compet\",\n        -12.897424697875977\n      ],\n      [\n        \"▁Bestell\",\n        -12.89748477935791\n      ],\n      [\n        \"▁immédiatement\",\n        -12.897587776184082\n      ],\n      [\n        \"aparut\",\n        -12.89759635925293\n      ],\n      [\n        \"▁rainfall\",\n        -12.897882461547852\n      ],\n      [\n        \"oreille\",\n        -12.89797306060791\n      ],\n      [\n        \"▁ministère\",\n        -12.898014068603516\n      ],\n      [\n        \"iris\",\n        -12.898140907287598\n      ],\n      [\n        \"dyna\",\n        -12.898279190063477\n      ],\n      [\n        \"drücken\",\n        -12.898343086242676\n      ],\n      [\n        \"▁détect\",\n        -12.89834976196289\n      ],\n      [\n        \"▁fonctionnalité\",\n        -12.89840030670166\n      ],\n      [\n        \"▁imbalance\",\n        -12.89840030670166\n      ],\n      [\n        \"▁unpredictable\",\n        -12.89840030670166\n      ],\n      [\n        \"▁literar\",\n        -12.89846134185791\n      ],\n      [\n        \"▁Windsor\",\n        -12.898472785949707\n      ],\n      [\n        \"▁Unlimited\",\n        -12.898481369018555\n      ],\n      [\n        \"colour\",\n        -12.898674964904785\n      ],\n      [\n        \"▁Portfolio\",\n        -12.898810386657715\n      ],\n      [\n        \"149\",\n        -12.898883819580078\n      ],\n      [\n        \"volution\",\n        -12.898890495300293\n      ],\n      [\n        \"▁folgende\",\n        -12.899078369140625\n      ],\n      [\n        \"▁arbitration\",\n        -12.899105072021484\n      ],\n      [\n        \"kicking\",\n        -12.89913558959961\n      ],\n      [\n        \"zügig\",\n        -12.89923095703125\n      ],\n      [\n        \"▁1941\",\n        -12.899311065673828\n      ],\n      [\n        \"▁Drake\",\n        -12.89955997467041\n      ],\n      [\n        \"▁ausführlich\",\n        -12.899630546569824\n      ],\n      [\n        \"▁chaussure\",\n        -12.899630546569824\n      ],\n      [\n        \"▁intestinal\",\n        -12.89976692199707\n      ],\n      [\n        \"▁pilgrim\",\n        -12.900040626525879\n      ],\n      [\n        \"▁Bark\",\n        -12.900142669677734\n      ],\n      [\n        \"between\",\n        -12.900157928466797\n      ],\n      [\n        \"disposed\",\n        -12.900175094604492\n      ],\n      [\n        \"▁Dylan\",\n        -12.900218963623047\n      ],\n      [\n        \"ств\",\n        -12.900253295898438\n      ],\n      [\n        \"NOR\",\n        -12.900287628173828\n      ],\n      [\n        \"traces\",\n        -12.90038776397705\n      ],\n      [\n        \"▁moindre\",\n        -12.900500297546387\n      ],\n      [\n        \"▁$10,000\",\n        -12.900552749633789\n      ],\n      [\n        \"212\",\n        -12.900599479675293\n      ],\n      [\n        \"wusste\",\n        -12.900659561157227\n      ],\n      [\n        \"▁predictable\",\n        -12.900671005249023\n      ],\n      [\n        \"poţi\",\n        -12.900679588317871\n      ],\n      [\n        \"▁Celsius\",\n        -12.900860786437988\n      ],\n      [\n        \"gebunden\",\n        -12.90086841583252\n      ],\n      [\n        \"▁Legacy\",\n        -12.900891304016113\n      ],\n      [\n        \"movers\",\n        -12.90090274810791\n      ],\n      [\n        \"▁concret\",\n        -12.90098762512207\n      ],\n      [\n        \"▁simpla\",\n        -12.901050567626953\n      ],\n      [\n        \"rechnet\",\n        -12.901103973388672\n      ],\n      [\n        \"▁certainty\",\n        -12.901144981384277\n      ],\n      [\n        \"entrepreneurship\",\n        -12.901153564453125\n      ],\n      [\n        \"kohl\",\n        -12.901289939880371\n      ],\n      [\n        \"▁curte\",\n        -12.901311874389648\n      ],\n      [\n        \"▁Forbes\",\n        -12.901411056518555\n      ],\n      [\n        \"▁Zusatz\",\n        -12.901535987854004\n      ],\n      [\n        \"blending\",\n        -12.90163803100586\n      ],\n      [\n        \"▁variat\",\n        -12.901642799377441\n      ],\n      [\n        \"▁galaxy\",\n        -12.90168285369873\n      ],\n      [\n        \"▁safari\",\n        -12.90168571472168\n      ],\n      [\n        \"▁municipalities\",\n        -12.9017972946167\n      ],\n      [\n        \"▁Drept\",\n        -12.90180778503418\n      ],\n      [\n        \"aufnahme\",\n        -12.902128219604492\n      ],\n      [\n        \"▁endorse\",\n        -12.902223587036133\n      ],\n      [\n        \"einrichtung\",\n        -12.902244567871094\n      ],\n      [\n        \"Sync\",\n        -12.902270317077637\n      ],\n      [\n        \"abide\",\n        -12.902323722839355\n      ],\n      [\n        \"brushed\",\n        -12.902350425720215\n      ],\n      [\n        \"▁actiune\",\n        -12.902410507202148\n      ],\n      [\n        \"quaint\",\n        -12.902498245239258\n      ],\n      [\n        \"▁volatility\",\n        -12.902504920959473\n      ],\n      [\n        \"▁repetitive\",\n        -12.902505874633789\n      ],\n      [\n        \"▁découvr\",\n        -12.902560234069824\n      ],\n      [\n        \"Totodat\",\n        -12.902585983276367\n      ],\n      [\n        \"▁românesc\",\n        -12.902682304382324\n      ],\n      [\n        \"▁tempting\",\n        -12.902772903442383\n      ],\n      [\n        \"thesis\",\n        -12.902947425842285\n      ],\n      [\n        \"secure\",\n        -12.903013229370117\n      ],\n      [\n        \"delt\",\n        -12.903019905090332\n      ],\n      [\n        \"▁şef\",\n        -12.903167724609375\n      ],\n      [\n        \"▁epidemic\",\n        -12.903326988220215\n      ],\n      [\n        \"▁Appliance\",\n        -12.903327941894531\n      ],\n      [\n        \"cearcă\",\n        -12.903331756591797\n      ],\n      [\n        \"▁lodging\",\n        -12.903361320495605\n      ],\n      [\n        \"▁photographed\",\n        -12.903507232666016\n      ],\n      [\n        \"geschlagen\",\n        -12.903794288635254\n      ],\n      [\n        \"▁Methodist\",\n        -12.90380859375\n      ],\n      [\n        \"▁Transit\",\n        -12.90389347076416\n      ],\n      [\n        \"▁Länder\",\n        -12.903934478759766\n      ],\n      [\n        \"villa\",\n        -12.903986930847168\n      ],\n      [\n        \"▁toilette\",\n        -12.904031753540039\n      ],\n      [\n        \"anno\",\n        -12.904074668884277\n      ],\n      [\n        \"▁Aufnahme\",\n        -12.904091835021973\n      ],\n      [\n        \"▁Coral\",\n        -12.904099464416504\n      ],\n      [\n        \"pourraient\",\n        -12.904129981994629\n      ],\n      [\n        \"▁digestion\",\n        -12.904245376586914\n      ],\n      [\n        \"▁Vacation\",\n        -12.904274940490723\n      ],\n      [\n        \"▁Rugby\",\n        -12.904275894165039\n      ],\n      [\n        \"MIC\",\n        -12.904311180114746\n      ],\n      [\n        \"▁choc\",\n        -12.904417991638184\n      ],\n      [\n        \"2002\",\n        -12.904492378234863\n      ],\n      [\n        \"gestion\",\n        -12.904674530029297\n      ],\n      [\n        \"▁Zoom\",\n        -12.904745101928711\n      ],\n      [\n        \"essor\",\n        -12.904763221740723\n      ],\n      [\n        \"weighed\",\n        -12.904793739318848\n      ],\n      [\n        \"▁dispus\",\n        -12.904987335205078\n      ],\n      [\n        \"▁redemption\",\n        -12.90502643585205\n      ],\n      [\n        \"▁plaster\",\n        -12.905071258544922\n      ],\n      [\n        \"▁Quilt\",\n        -12.90507698059082\n      ],\n      [\n        \"▁teritoriul\",\n        -12.905088424682617\n      ],\n      [\n        \"ndern\",\n        -12.905097961425781\n      ],\n      [\n        \"▁expired\",\n        -12.905105590820312\n      ],\n      [\n        \"▁Tribunal\",\n        -12.905122756958008\n      ],\n      [\n        \"occupation\",\n        -12.9052152633667\n      ],\n      [\n        \"▁woodland\",\n        -12.905248641967773\n      ],\n      [\n        \"vieux\",\n        -12.905254364013672\n      ],\n      [\n        \"▁Midland\",\n        -12.905465126037598\n      ],\n      [\n        \"gât\",\n        -12.90571117401123\n      ],\n      [\n        \"électricité\",\n        -12.905800819396973\n      ],\n      [\n        \"▁vanzare\",\n        -12.905811309814453\n      ],\n      [\n        \"biologi\",\n        -12.905961036682129\n      ],\n      [\n        \"▁vive\",\n        -12.906060218811035\n      ],\n      [\n        \"▁Alarm\",\n        -12.906097412109375\n      ],\n      [\n        \"▁experiență\",\n        -12.9061279296875\n      ],\n      [\n        \"▁Loch\",\n        -12.906133651733398\n      ],\n      [\n        \"▁Pedro\",\n        -12.906194686889648\n      ],\n      [\n        \"▁detergent\",\n        -12.906217575073242\n      ],\n      [\n        \"language\",\n        -12.906554222106934\n      ],\n      [\n        \"▁sedan\",\n        -12.906655311584473\n      ],\n      [\n        \"▁Brady\",\n        -12.906736373901367\n      ],\n      [\n        \"▁compus\",\n        -12.906976699829102\n      ],\n      [\n        \"▁landfill\",\n        -12.906982421875\n      ],\n      [\n        \"giu\",\n        -12.907039642333984\n      ],\n      [\n        \"beziehung\",\n        -12.9070405960083\n      ],\n      [\n        \"▁picior\",\n        -12.907184600830078\n      ],\n      [\n        \"ALI\",\n        -12.907235145568848\n      ],\n      [\n        \"▁Commander\",\n        -12.907256126403809\n      ],\n      [\n        \"EPS\",\n        -12.907303810119629\n      ],\n      [\n        \"▁Textil\",\n        -12.907320022583008\n      ],\n      [\n        \"▁industria\",\n        -12.907339096069336\n      ],\n      [\n        \"lox\",\n        -12.907365798950195\n      ],\n      [\n        \"▁eclectic\",\n        -12.907453536987305\n      ],\n      [\n        \"▁gracious\",\n        -12.907477378845215\n      ],\n      [\n        \"Uniunea\",\n        -12.907525062561035\n      ],\n      [\n        \"bps\",\n        -12.90754222869873\n      ],\n      [\n        \"▁entertained\",\n        -12.907634735107422\n      ],\n      [\n        \"depinde\",\n        -12.907767295837402\n      ],\n      [\n        \"▁daylight\",\n        -12.907893180847168\n      ],\n      [\n        \"▁résistance\",\n        -12.907995223999023\n      ],\n      [\n        \"ARN\",\n        -12.908194541931152\n      ],\n      [\n        \"▁unavailable\",\n        -12.908201217651367\n      ],\n      [\n        \"Curtea\",\n        -12.908390045166016\n      ],\n      [\n        \"▁pores\",\n        -12.908502578735352\n      ],\n      [\n        \"▁Tonight\",\n        -12.908649444580078\n      ],\n      [\n        \"▁datori\",\n        -12.90869426727295\n      ],\n      [\n        \"▁gezielt\",\n        -12.908703804016113\n      ],\n      [\n        \"▁rupture\",\n        -12.90875244140625\n      ],\n      [\n        \"▁disput\",\n        -12.908848762512207\n      ],\n      [\n        \"▁sonstige\",\n        -12.908895492553711\n      ],\n      [\n        \"▁Ordnung\",\n        -12.90910816192627\n      ],\n      [\n        \"▁beschrieben\",\n        -12.909114837646484\n      ],\n      [\n        \"▁Rainbow\",\n        -12.90911865234375\n      ],\n      [\n        \"▁Werkzeug\",\n        -12.909136772155762\n      ],\n      [\n        \"GIN\",\n        -12.909354209899902\n      ],\n      [\n        \"facilitating\",\n        -12.909490585327148\n      ],\n      [\n        \"hunt\",\n        -12.90955638885498\n      ],\n      [\n        \"▁Serving\",\n        -12.909673690795898\n      ],\n      [\n        \"Writ\",\n        -12.909692764282227\n      ],\n      [\n        \"requisite\",\n        -12.909798622131348\n      ],\n      [\n        \"▁Kerry\",\n        -12.90989875793457\n      ],\n      [\n        \"▁riesig\",\n        -12.909957885742188\n      ],\n      [\n        \"▁Healing\",\n        -12.91030502319336\n      ],\n      [\n        \"▁1954\",\n        -12.910365104675293\n      ],\n      [\n        \"▁mousse\",\n        -12.910428047180176\n      ],\n      [\n        \"▁Positive\",\n        -12.910764694213867\n      ],\n      [\n        \"embodie\",\n        -12.910772323608398\n      ],\n      [\n        \"▁penetrate\",\n        -12.910774230957031\n      ],\n      [\n        \"endorsed\",\n        -12.910882949829102\n      ],\n      [\n        \"▁situatia\",\n        -12.910927772521973\n      ],\n      [\n        \"▁Unity\",\n        -12.911083221435547\n      ],\n      [\n        \"142\",\n        -12.911102294921875\n      ],\n      [\n        \"▁farmhouse\",\n        -12.911138534545898\n      ],\n      [\n        \"▁Handbook\",\n        -12.911368370056152\n      ],\n      [\n        \"▁symbolic\",\n        -12.911378860473633\n      ],\n      [\n        \"pristine\",\n        -12.911439895629883\n      ],\n      [\n        \"moitié\",\n        -12.911595344543457\n      ],\n      [\n        \"▁Sessions\",\n        -12.912017822265625\n      ],\n      [\n        \"technisch\",\n        -12.912116050720215\n      ],\n      [\n        \"▁lesquel\",\n        -12.912148475646973\n      ],\n      [\n        \"▁electronically\",\n        -12.912208557128906\n      ],\n      [\n        \"▁modificat\",\n        -12.912240982055664\n      ],\n      [\n        \"▁adjoin\",\n        -12.912242889404297\n      ],\n      [\n        \"actualité\",\n        -12.912256240844727\n      ],\n      [\n        \"vati\",\n        -12.91229248046875\n      ],\n      [\n        \"VENT\",\n        -12.912299156188965\n      ],\n      [\n        \"▁salsa\",\n        -12.912333488464355\n      ],\n      [\n        \"acupunctur\",\n        -12.912424087524414\n      ],\n      [\n        \"▁Opportunity\",\n        -12.912424087524414\n      ],\n      [\n        \"▁Inspection\",\n        -12.912425994873047\n      ],\n      [\n        \"▁vereinbart\",\n        -12.912425994873047\n      ],\n      [\n        \"▁Residents\",\n        -12.912426948547363\n      ],\n      [\n        \"▁perennial\",\n        -12.91242790222168\n      ],\n      [\n        \"CHAN\",\n        -12.912555694580078\n      ],\n      [\n        \"Search\",\n        -12.912572860717773\n      ],\n      [\n        \"UTE\",\n        -12.912696838378906\n      ],\n      [\n        \"▁Lens\",\n        -12.912703514099121\n      ],\n      [\n        \"▁Banner\",\n        -12.91281509399414\n      ],\n      [\n        \"aménagement\",\n        -12.912839889526367\n      ],\n      [\n        \"▁Decision\",\n        -12.91286849975586\n      ],\n      [\n        \"▁ferr\",\n        -12.912869453430176\n      ],\n      [\n        \"▁Transformation\",\n        -12.912878036499023\n      ],\n      [\n        \"▁Stamm\",\n        -12.912955284118652\n      ],\n      [\n        \"▁Galerie\",\n        -12.913003921508789\n      ],\n      [\n        \"onny\",\n        -12.913126945495605\n      ],\n      [\n        \"▁caption\",\n        -12.913195610046387\n      ],\n      [\n        \"▁viitorul\",\n        -12.91323471069336\n      ],\n      [\n        \"▁professionelle\",\n        -12.913281440734863\n      ],\n      [\n        \"drepturile\",\n        -12.913294792175293\n      ],\n      [\n        \"ylon\",\n        -12.913345336914062\n      ],\n      [\n        \"Société\",\n        -12.913387298583984\n      ],\n      [\n        \"AIS\",\n        -12.913456916809082\n      ],\n      [\n        \"March\",\n        -12.91350269317627\n      ],\n      [\n        \"▁Rav\",\n        -12.91357707977295\n      ],\n      [\n        \"▁1946\",\n        -12.913691520690918\n      ],\n      [\n        \"accompagnement\",\n        -12.913713455200195\n      ],\n      [\n        \"Liviu\",\n        -12.913716316223145\n      ],\n      [\n        \"▁Appeal\",\n        -12.913826942443848\n      ],\n      [\n        \"▁sentir\",\n        -12.913952827453613\n      ],\n      [\n        \"▁Indigenous\",\n        -12.914087295532227\n      ],\n      [\n        \"▁wizard\",\n        -12.914087295532227\n      ],\n      [\n        \"▁collateral\",\n        -12.914127349853516\n      ],\n      [\n        \"▁Proof\",\n        -12.914324760437012\n      ],\n      [\n        \"▁prze\",\n        -12.914398193359375\n      ],\n      [\n        \"▁obținut\",\n        -12.91450309753418\n      ],\n      [\n        \"COP\",\n        -12.914629936218262\n      ],\n      [\n        \"▁obiect\",\n        -12.914681434631348\n      ],\n      [\n        \"▁isolate\",\n        -12.914685249328613\n      ],\n      [\n        \"▁nieder\",\n        -12.914793014526367\n      ],\n      [\n        \"TECH\",\n        -12.914953231811523\n      ],\n      [\n        \"▁Sharing\",\n        -12.914998054504395\n      ],\n      [\n        \"Ideally\",\n        -12.915008544921875\n      ],\n      [\n        \"▁naked\",\n        -12.915059089660645\n      ],\n      [\n        \"horaire\",\n        -12.915130615234375\n      ],\n      [\n        \"▁prelucrare\",\n        -12.915180206298828\n      ],\n      [\n        \"▁forcément\",\n        -12.915349006652832\n      ],\n      [\n        \"▁ESPN\",\n        -12.915403366088867\n      ],\n      [\n        \"▁southwest\",\n        -12.9154634475708\n      ],\n      [\n        \"▁Timber\",\n        -12.915682792663574\n      ],\n      [\n        \"kleidung\",\n        -12.915748596191406\n      ],\n      [\n        \"MJ\",\n        -12.915854454040527\n      ],\n      [\n        \"Ped\",\n        -12.915889739990234\n      ],\n      [\n        \"▁lymph\",\n        -12.916181564331055\n      ],\n      [\n        \"wärme\",\n        -12.916399002075195\n      ],\n      [\n        \"▁Olivia\",\n        -12.916610717773438\n      ],\n      [\n        \"Ziua\",\n        -12.916705131530762\n      ],\n      [\n        \"reihe\",\n        -12.916747093200684\n      ],\n      [\n        \"▁selfish\",\n        -12.916752815246582\n      ],\n      [\n        \"▁geography\",\n        -12.916814804077148\n      ],\n      [\n        \"▁etaj\",\n        -12.916924476623535\n      ],\n      [\n        \"▁acquis\",\n        -12.91698932647705\n      ],\n      [\n        \"▁rejoin\",\n        -12.91701602935791\n      ],\n      [\n        \"7.1\",\n        -12.917097091674805\n      ],\n      [\n        \"▁paix\",\n        -12.91713809967041\n      ],\n      [\n        \"tirer\",\n        -12.917284965515137\n      ],\n      [\n        \"▁clase\",\n        -12.91745662689209\n      ],\n      [\n        \"▁blink\",\n        -12.917572021484375\n      ],\n      [\n        \"▁Interface\",\n        -12.917611122131348\n      ],\n      [\n        \"nado\",\n        -12.917655944824219\n      ],\n      [\n        \"RIT\",\n        -12.91777515411377\n      ],\n      [\n        \"ESC\",\n        -12.918120384216309\n      ],\n      [\n        \"▁carving\",\n        -12.918190002441406\n      ],\n      [\n        \"▁articolul\",\n        -12.918194770812988\n      ],\n      [\n        \"▁wreath\",\n        -12.918258666992188\n      ],\n      [\n        \"▁propaganda\",\n        -12.918266296386719\n      ],\n      [\n        \"▁Pair\",\n        -12.918267250061035\n      ],\n      [\n        \"▁pamant\",\n        -12.91831111907959\n      ],\n      [\n        \"▁venituri\",\n        -12.918357849121094\n      ],\n      [\n        \"rtz\",\n        -12.91835880279541\n      ],\n      [\n        \"uddle\",\n        -12.918529510498047\n      ],\n      [\n        \"uille\",\n        -12.918543815612793\n      ],\n      [\n        \"▁embed\",\n        -12.918654441833496\n      ],\n      [\n        \"0.05\",\n        -12.918655395507812\n      ],\n      [\n        \"▁Brighton\",\n        -12.918718338012695\n      ],\n      [\n        \"estens\",\n        -12.918742179870605\n      ],\n      [\n        \"▁occupational\",\n        -12.918862342834473\n      ],\n      [\n        \"ем\",\n        -12.918890953063965\n      ],\n      [\n        \"wünsche\",\n        -12.919081687927246\n      ],\n      [\n        \"▁Poetry\",\n        -12.91909408569336\n      ],\n      [\n        \"▁visualize\",\n        -12.919109344482422\n      ],\n      [\n        \"Across\",\n        -12.919121742248535\n      ],\n      [\n        \"▁essentielle\",\n        -12.919123649597168\n      ],\n      [\n        \"beratung\",\n        -12.919143676757812\n      ],\n      [\n        \"▁Guidelines\",\n        -12.91919231414795\n      ],\n      [\n        \"▁Fehl\",\n        -12.919198036193848\n      ],\n      [\n        \"▁liberty\",\n        -12.91921329498291\n      ],\n      [\n        \"▁Investigation\",\n        -12.91922378540039\n      ],\n      [\n        \"▁sunrise\",\n        -12.919266700744629\n      ],\n      [\n        \"▁12:00\",\n        -12.919541358947754\n      ],\n      [\n        \"venind\",\n        -12.919583320617676\n      ],\n      [\n        \"▁lotion\",\n        -12.919655799865723\n      ],\n      [\n        \"conscious\",\n        -12.91968822479248\n      ],\n      [\n        \"logists\",\n        -12.91973876953125\n      ],\n      [\n        \"▁judecător\",\n        -12.919893264770508\n      ],\n      [\n        \"▁Ecuador\",\n        -12.919928550720215\n      ],\n      [\n        \"▁ambulance\",\n        -12.91994857788086\n      ],\n      [\n        \"▁Already\",\n        -12.920026779174805\n      ],\n      [\n        \"▁eröffnet\",\n        -12.920090675354004\n      ],\n      [\n        \"▁naval\",\n        -12.92010498046875\n      ],\n      [\n        \"▁imposibil\",\n        -12.92011547088623\n      ],\n      [\n        \"▁Merry\",\n        -12.92011833190918\n      ],\n      [\n        \"▁Duncan\",\n        -12.920272827148438\n      ],\n      [\n        \"▁léger\",\n        -12.9203519821167\n      ],\n      [\n        \"▁delta\",\n        -12.920391082763672\n      ],\n      [\n        \"▁Machinery\",\n        -12.920578002929688\n      ],\n      [\n        \"▁craftsmanship\",\n        -12.920766830444336\n      ],\n      [\n        \"▁angezeigt\",\n        -12.9207763671875\n      ],\n      [\n        \"▁formidable\",\n        -12.9207763671875\n      ],\n      [\n        \"▁Startup\",\n        -12.920878410339355\n      ],\n      [\n        \"venus\",\n        -12.920969009399414\n      ],\n      [\n        \"▁tannin\",\n        -12.921019554138184\n      ],\n      [\n        \"collaborating\",\n        -12.921128273010254\n      ],\n      [\n        \"▁abrupt\",\n        -12.921152114868164\n      ],\n      [\n        \"emergence\",\n        -12.921171188354492\n      ],\n      [\n        \"Dienstleistungen\",\n        -12.921197891235352\n      ],\n      [\n        \"▁liefert\",\n        -12.921217918395996\n      ],\n      [\n        \"engagement\",\n        -12.921222686767578\n      ],\n      [\n        \"▁maximise\",\n        -12.921304702758789\n      ],\n      [\n        \"modeled\",\n        -12.9214448928833\n      ],\n      [\n        \"▁crane\",\n        -12.92148208618164\n      ],\n      [\n        \"▁effortless\",\n        -12.921540260314941\n      ],\n      [\n        \"▁Buffet\",\n        -12.92160701751709\n      ],\n      [\n        \"8000\",\n        -12.921648979187012\n      ],\n      [\n        \"▁Überblick\",\n        -12.921687126159668\n      ],\n      [\n        \"micro\",\n        -12.921981811523438\n      ],\n      [\n        \"▁vergleichen\",\n        -12.92204475402832\n      ],\n      [\n        \"143\",\n        -12.922080993652344\n      ],\n      [\n        \"5.6\",\n        -12.922094345092773\n      ],\n      [\n        \"▁odata\",\n        -12.922131538391113\n      ],\n      [\n        \"▁interviu\",\n        -12.922162055969238\n      ],\n      [\n        \"▁poliţi\",\n        -12.922375679016113\n      ],\n      [\n        \"plated\",\n        -12.922383308410645\n      ],\n      [\n        \"Roman\",\n        -12.922406196594238\n      ],\n      [\n        \"▁satisfactory\",\n        -12.922453880310059\n      ],\n      [\n        \"▁unanimous\",\n        -12.922459602355957\n      ],\n      [\n        \"▁întâln\",\n        -12.922464370727539\n      ],\n      [\n        \"nonsense\",\n        -12.922558784484863\n      ],\n      [\n        \"▁HOW\",\n        -12.922616004943848\n      ],\n      [\n        \"prezinta\",\n        -12.922639846801758\n      ],\n      [\n        \"▁măsura\",\n        -12.9226655960083\n      ],\n      [\n        \"▁Fuji\",\n        -12.92275619506836\n      ],\n      [\n        \"▁Meaning\",\n        -12.92278003692627\n      ],\n      [\n        \"aspiring\",\n        -12.922850608825684\n      ],\n      [\n        \"▁Suceava\",\n        -12.922863006591797\n      ],\n      [\n        \"arba\",\n        -12.922983169555664\n      ],\n      [\n        \"pressive\",\n        -12.922988891601562\n      ],\n      [\n        \"▁creek\",\n        -12.92301082611084\n      ],\n      [\n        \"trakt\",\n        -12.923023223876953\n      ],\n      [\n        \"▁fluffy\",\n        -12.923303604125977\n      ],\n      [\n        \"▁bateau\",\n        -12.923371315002441\n      ],\n      [\n        \"ме\",\n        -12.923545837402344\n      ],\n      [\n        \"UNG\",\n        -12.923609733581543\n      ],\n      [\n        \"motifs\",\n        -12.923907279968262\n      ],\n      [\n        \"Type\",\n        -12.923958778381348\n      ],\n      [\n        \"perçu\",\n        -12.924132347106934\n      ],\n      [\n        \"singurul\",\n        -12.924139022827148\n      ],\n      [\n        \"▁(2011)\",\n        -12.92418384552002\n      ],\n      [\n        \"▁hemp\",\n        -12.924263954162598\n      ],\n      [\n        \"betroffenen\",\n        -12.92431640625\n      ],\n      [\n        \"▁sermon\",\n        -12.924369812011719\n      ],\n      [\n        \"AID\",\n        -12.924545288085938\n      ],\n      [\n        \"3.7\",\n        -12.924627304077148\n      ],\n      [\n        \"▁heiß\",\n        -12.92463207244873\n      ],\n      [\n        \"▁bolnav\",\n        -12.924982070922852\n      ],\n      [\n        \"First\",\n        -12.924995422363281\n      ],\n      [\n        \"▁interrupt\",\n        -12.925040245056152\n      ],\n      [\n        \"phag\",\n        -12.925106048583984\n      ],\n      [\n        \"235\",\n        -12.925201416015625\n      ],\n      [\n        \"▁discoveries\",\n        -12.925262451171875\n      ],\n      [\n        \"▁Wellington\",\n        -12.925263404846191\n      ],\n      [\n        \"▁wechseln\",\n        -12.925298690795898\n      ],\n      [\n        \"▁strategically\",\n        -12.925379753112793\n      ],\n      [\n        \"▁iphone\",\n        -12.925440788269043\n      ],\n      [\n        \"geteilt\",\n        -12.925646781921387\n      ],\n      [\n        \"generative\",\n        -12.925748825073242\n      ],\n      [\n        \"▁Monroe\",\n        -12.925806045532227\n      ],\n      [\n        \"▁Execut\",\n        -12.925863265991211\n      ],\n      [\n        \"▁knitting\",\n        -12.925931930541992\n      ],\n      [\n        \"▁Couple\",\n        -12.925939559936523\n      ],\n      [\n        \"▁Shade\",\n        -12.926020622253418\n      ],\n      [\n        \"▁Taj\",\n        -12.926060676574707\n      ],\n      [\n        \"950\",\n        -12.926077842712402\n      ],\n      [\n        \"boiled\",\n        -12.92609977722168\n      ],\n      [\n        \"▁mixes\",\n        -12.926130294799805\n      ],\n      [\n        \"betroffene\",\n        -12.926156044006348\n      ],\n      [\n        \"▁continuation\",\n        -12.926169395446777\n      ],\n      [\n        \"▁begleitet\",\n        -12.926226615905762\n      ],\n      [\n        \"▁numerical\",\n        -12.926281929016113\n      ],\n      [\n        \"▁(2013)\",\n        -12.92630386352539\n      ],\n      [\n        \"▁nourish\",\n        -12.926399230957031\n      ],\n      [\n        \"oricar\",\n        -12.926485061645508\n      ],\n      [\n        \"focus\",\n        -12.926486015319824\n      ],\n      [\n        \"▁Crazy\",\n        -12.926651000976562\n      ],\n      [\n        \"▁ascend\",\n        -12.926671028137207\n      ],\n      [\n        \"▁vinde\",\n        -12.926855087280273\n      ],\n      [\n        \"roar\",\n        -12.926874160766602\n      ],\n      [\n        \"Vac\",\n        -12.926929473876953\n      ],\n      [\n        \"▁Zuschauer\",\n        -12.927068710327148\n      ],\n      [\n        \"izeze\",\n        -12.927179336547852\n      ],\n      [\n        \"▁Mindest\",\n        -12.92721939086914\n      ],\n      [\n        \"lingual\",\n        -12.927229881286621\n      ],\n      [\n        \"▁violet\",\n        -12.927264213562012\n      ],\n      [\n        \"▁Opfer\",\n        -12.927299499511719\n      ],\n      [\n        \"ARS\",\n        -12.927431106567383\n      ],\n      [\n        \"4.7\",\n        -12.92744255065918\n      ],\n      [\n        \"millennial\",\n        -12.927492141723633\n      ],\n      [\n        \"▁striv\",\n        -12.927639961242676\n      ],\n      [\n        \"▁bishop\",\n        -12.927680015563965\n      ],\n      [\n        \"▁Durham\",\n        -12.927708625793457\n      ],\n      [\n        \"opathic\",\n        -12.927817344665527\n      ],\n      [\n        \"Where\",\n        -12.927999496459961\n      ],\n      [\n        \"▁Rider\",\n        -12.928030014038086\n      ],\n      [\n        \"▁Reid\",\n        -12.928030967712402\n      ],\n      [\n        \"stumbled\",\n        -12.928156852722168\n      ],\n      [\n        \"deep\",\n        -12.92827320098877\n      ],\n      [\n        \"▁11:00\",\n        -12.928340911865234\n      ],\n      [\n        \"▁Essex\",\n        -12.928380966186523\n      ],\n      [\n        \"▁Analyst\",\n        -12.928397178649902\n      ],\n      [\n        \"feel\",\n        -12.928546905517578\n      ],\n      [\n        \"▁rave\",\n        -12.928601264953613\n      ],\n      [\n        \"▁Eddie\",\n        -12.928631782531738\n      ],\n      [\n        \"▁communiqué\",\n        -12.928756713867188\n      ],\n      [\n        \"[/\",\n        -12.928791046142578\n      ],\n      [\n        \"▁Tho\",\n        -12.929011344909668\n      ],\n      [\n        \"ffentlichkeit\",\n        -12.929019927978516\n      ],\n      [\n        \"instrument\",\n        -12.929126739501953\n      ],\n      [\n        \"▁metropolitan\",\n        -12.929179191589355\n      ],\n      [\n        \"▁experienţ\",\n        -12.929181098937988\n      ],\n      [\n        \"East\",\n        -12.929198265075684\n      ],\n      [\n        \"Compared\",\n        -12.929434776306152\n      ],\n      [\n        \"worn\",\n        -12.929484367370605\n      ],\n      [\n        \"berufliche\",\n        -12.92966365814209\n      ],\n      [\n        \"▁Umstände\",\n        -12.929710388183594\n      ],\n      [\n        \"individuellen\",\n        -12.929901123046875\n      ],\n      [\n        \"siehe\",\n        -12.929912567138672\n      ],\n      [\n        \"▁sfarsit\",\n        -12.929969787597656\n      ],\n      [\n        \"▁Strength\",\n        -12.929999351501465\n      ],\n      [\n        \"▁prejudice\",\n        -12.930024147033691\n      ],\n      [\n        \"▁shutdown\",\n        -12.930159568786621\n      ],\n      [\n        \"chatting\",\n        -12.93022346496582\n      ],\n      [\n        \"▁Gerne\",\n        -12.930227279663086\n      ],\n      [\n        \"▁Yum\",\n        -12.930305480957031\n      ],\n      [\n        \"▁coastline\",\n        -12.930387496948242\n      ],\n      [\n        \"▁headboard\",\n        -12.930623054504395\n      ],\n      [\n        \"▁politische\",\n        -12.930768966674805\n      ],\n      [\n        \"Sub\",\n        -12.930838584899902\n      ],\n      [\n        \"▁Henderson\",\n        -12.930870056152344\n      ],\n      [\n        \"▁astonishing\",\n        -12.930870056152344\n      ],\n      [\n        \"▁Dresden\",\n        -12.930871963500977\n      ],\n      [\n        \"▁strawberry\",\n        -12.93088436126709\n      ],\n      [\n        \"prenez\",\n        -12.930889129638672\n      ],\n      [\n        \"▁Monaco\",\n        -12.930912971496582\n      ],\n      [\n        \"▁empowered\",\n        -12.930953025817871\n      ],\n      [\n        \"fäl\",\n        -12.93109130859375\n      ],\n      [\n        \"▁creier\",\n        -12.931120872497559\n      ],\n      [\n        \"▁Equ\",\n        -12.931300163269043\n      ],\n      [\n        \"▁Selling\",\n        -12.931379318237305\n      ],\n      [\n        \"▁$35\",\n        -12.931483268737793\n      ],\n      [\n        \"konto\",\n        -12.931503295898438\n      ],\n      [\n        \"▁Procedure\",\n        -12.931715965270996\n      ],\n      [\n        \"▁reduziert\",\n        -12.931715965270996\n      ],\n      [\n        \"▁royalty\",\n        -12.931740760803223\n      ],\n      [\n        \"wyn\",\n        -12.931756019592285\n      ],\n      [\n        \"▁Unfall\",\n        -12.932141304016113\n      ],\n      [\n        \"NAT\",\n        -12.932161331176758\n      ],\n      [\n        \"▁grafic\",\n        -12.93251895904541\n      ],\n      [\n        \"▁Collective\",\n        -12.932563781738281\n      ],\n      [\n        \"▁Computing\",\n        -12.932564735412598\n      ],\n      [\n        \"▁Established\",\n        -12.932594299316406\n      ],\n      [\n        \"▁zest\",\n        -12.932598114013672\n      ],\n      [\n        \"venez\",\n        -12.932611465454102\n      ],\n      [\n        \"follow\",\n        -12.9326171875\n      ],\n      [\n        \"▁Motivation\",\n        -12.932640075683594\n      ],\n      [\n        \"▁dictator\",\n        -12.932755470275879\n      ],\n      [\n        \"whichever\",\n        -12.93281078338623\n      ],\n      [\n        \"▁întâmpl\",\n        -12.93293285369873\n      ],\n      [\n        \"Flüchtling\",\n        -12.932987213134766\n      ],\n      [\n        \"EMI\",\n        -12.933015823364258\n      ],\n      [\n        \"404\",\n        -12.933019638061523\n      ],\n      [\n        \"ICK\",\n        -12.93302059173584\n      ],\n      [\n        \"emplacement\",\n        -12.933191299438477\n      ],\n      [\n        \"complete\",\n        -12.933349609375\n      ],\n      [\n        \"advising\",\n        -12.933412551879883\n      ],\n      [\n        \"▁Administrative\",\n        -12.933481216430664\n      ],\n      [\n        \"▁deviation\",\n        -12.933496475219727\n      ],\n      [\n        \"▁experienț\",\n        -12.933500289916992\n      ],\n      [\n        \"lethor\",\n        -12.933996200561523\n      ],\n      [\n        \"▁compress\",\n        -12.934081077575684\n      ],\n      [\n        \"rival\",\n        -12.934173583984375\n      ],\n      [\n        \"reprendre\",\n        -12.934186935424805\n      ],\n      [\n        \"ugi\",\n        -12.934266090393066\n      ],\n      [\n        \"▁Invitation\",\n        -12.934267044067383\n      ],\n      [\n        \"▁retina\",\n        -12.934332847595215\n      ],\n      [\n        \"▁farther\",\n        -12.934335708618164\n      ],\n      [\n        \"▁fenêtre\",\n        -12.934799194335938\n      ],\n      [\n        \"6-7\",\n        -12.934815406799316\n      ],\n      [\n        \"zhou\",\n        -12.934834480285645\n      ],\n      [\n        \"▁Piano\",\n        -12.934840202331543\n      ],\n      [\n        \"▁Congrats\",\n        -12.935114860534668\n      ],\n      [\n        \"▁Configur\",\n        -12.935131072998047\n      ],\n      [\n        \"▁superficial\",\n        -12.935179710388184\n      ],\n      [\n        \"▁melting\",\n        -12.935315132141113\n      ],\n      [\n        \"▁raspunde\",\n        -12.935626983642578\n      ],\n      [\n        \"▁drip\",\n        -12.93564224243164\n      ],\n      [\n        \"östlich\",\n        -12.9358491897583\n      ],\n      [\n        \"189\",\n        -12.935925483703613\n      ],\n      [\n        \"▁Ludwig\",\n        -12.935959815979004\n      ],\n      [\n        \"▁keto\",\n        -12.935985565185547\n      ],\n      [\n        \"▁Bogdan\",\n        -12.936013221740723\n      ],\n      [\n        \"▁contracted\",\n        -12.936029434204102\n      ],\n      [\n        \"▁revive\",\n        -12.936100006103516\n      ],\n      [\n        \"▁cristal\",\n        -12.936232566833496\n      ],\n      [\n        \"▁mailbox\",\n        -12.936257362365723\n      ],\n      [\n        \"președintele\",\n        -12.936559677124023\n      ],\n      [\n        \"▁seekers\",\n        -12.936627388000488\n      ],\n      [\n        \"func\",\n        -12.936904907226562\n      ],\n      [\n        \"▁Markus\",\n        -12.93691349029541\n      ],\n      [\n        \"Unter\",\n        -12.936923027038574\n      ],\n      [\n        \"▁übertragen\",\n        -12.937003135681152\n      ],\n      [\n        \"▁adaptive\",\n        -12.937024116516113\n      ],\n      [\n        \"caster\",\n        -12.937051773071289\n      ],\n      [\n        \"▁geek\",\n        -12.937164306640625\n      ],\n      [\n        \"▁réservation\",\n        -12.937236785888672\n      ],\n      [\n        \"▁irritation\",\n        -12.937240600585938\n      ],\n      [\n        \"▁HDMI\",\n        -12.937346458435059\n      ],\n      [\n        \"Seeing\",\n        -12.937485694885254\n      ],\n      [\n        \"▁genul\",\n        -12.937569618225098\n      ],\n      [\n        \"▁catastrophe\",\n        -12.937662124633789\n      ],\n      [\n        \"▁Tweet\",\n        -12.937665939331055\n      ],\n      [\n        \"TZ\",\n        -12.937729835510254\n      ],\n      [\n        \"▁credible\",\n        -12.937946319580078\n      ],\n      [\n        \"▁cobor\",\n        -12.938064575195312\n      ],\n      [\n        \"▁realizeaz\",\n        -12.938159942626953\n      ],\n      [\n        \"journal\",\n        -12.938274383544922\n      ],\n      [\n        \"▁shaking\",\n        -12.938532829284668\n      ],\n      [\n        \"3-6\",\n        -12.938572883605957\n      ],\n      [\n        \"▁beneficiaz\",\n        -12.938605308532715\n      ],\n      [\n        \"▁Frankreich\",\n        -12.938633918762207\n      ],\n      [\n        \"committing\",\n        -12.9386568069458\n      ],\n      [\n        \"AMS\",\n        -12.938835144042969\n      ],\n      [\n        \"▁Feli\",\n        -12.939007759094238\n      ],\n      [\n        \"▁Producer\",\n        -12.939023971557617\n      ],\n      [\n        \"▁übrig\",\n        -12.93940544128418\n      ],\n      [\n        \"gemeinde\",\n        -12.939593315124512\n      ],\n      [\n        \"should\",\n        -12.939799308776855\n      ],\n      [\n        \"▁neurons\",\n        -12.939799308776855\n      ],\n      [\n        \"▁Agenda\",\n        -12.939833641052246\n      ],\n      [\n        \"▁hashtag\",\n        -12.939896583557129\n      ],\n      [\n        \"▁confortabil\",\n        -12.939897537231445\n      ],\n      [\n        \"520\",\n        -12.940008163452148\n      ],\n      [\n        \"bonded\",\n        -12.940033912658691\n      ],\n      [\n        \"▁următoare\",\n        -12.940191268920898\n      ],\n      [\n        \"▁volatile\",\n        -12.940223693847656\n      ],\n      [\n        \"infamous\",\n        -12.940225601196289\n      ],\n      [\n        \"seară\",\n        -12.940229415893555\n      ],\n      [\n        \"▁Sorge\",\n        -12.940346717834473\n      ],\n      [\n        \"▁Beiträge\",\n        -12.940420150756836\n      ],\n      [\n        \"▁îndeplin\",\n        -12.940449714660645\n      ],\n      [\n        \"gespräch\",\n        -12.940649032592773\n      ],\n      [\n        \"▁joueur\",\n        -12.940701484680176\n      ],\n      [\n        \"▁outsourcing\",\n        -12.940701484680176\n      ],\n      [\n        \"▁Guvernul\",\n        -12.940814018249512\n      ],\n      [\n        \"6-2\",\n        -12.940818786621094\n      ],\n      [\n        \"▁prioritize\",\n        -12.941068649291992\n      ],\n      [\n        \"▁duminică\",\n        -12.941076278686523\n      ],\n      [\n        \"▁resignation\",\n        -12.941076278686523\n      ],\n      [\n        \"▁Converter\",\n        -12.941079139709473\n      ],\n      [\n        \"hereby\",\n        -12.941155433654785\n      ],\n      [\n        \"▁stresses\",\n        -12.941299438476562\n      ],\n      [\n        \"▁brun\",\n        -12.941415786743164\n      ],\n      [\n        \"▁elev\",\n        -12.941423416137695\n      ],\n      [\n        \"▁Skip\",\n        -12.941479682922363\n      ],\n      [\n        \"540\",\n        -12.941499710083008\n      ],\n      [\n        \"TURE\",\n        -12.941603660583496\n      ],\n      [\n        \"▁Lynch\",\n        -12.941635131835938\n      ],\n      [\n        \"▁preveni\",\n        -12.941643714904785\n      ],\n      [\n        \"compatible\",\n        -12.941692352294922\n      ],\n      [\n        \"surveyed\",\n        -12.941702842712402\n      ],\n      [\n        \"▁Ausnahme\",\n        -12.941713333129883\n      ],\n      [\n        \"▁medicul\",\n        -12.941812515258789\n      ],\n      [\n        \"▁subtil\",\n        -12.941865921020508\n      ],\n      [\n        \"▁Quali\",\n        -12.941890716552734\n      ],\n      [\n        \"▁techno\",\n        -12.941900253295898\n      ],\n      [\n        \"presently\",\n        -12.94193172454834\n      ],\n      [\n        \"▁Müller\",\n        -12.941934585571289\n      ],\n      [\n        \"DIRECT\",\n        -12.941937446594238\n      ],\n      [\n        \"schuld\",\n        -12.941944122314453\n      ],\n      [\n        \"▁Bloomberg\",\n        -12.941994667053223\n      ],\n      [\n        \"feuer\",\n        -12.942181587219238\n      ],\n      [\n        \"▁Pharmacy\",\n        -12.942270278930664\n      ],\n      [\n        \"▁Schnitt\",\n        -12.942301750183105\n      ],\n      [\n        \"186\",\n        -12.942333221435547\n      ],\n      [\n        \"peaks\",\n        -12.942355155944824\n      ],\n      [\n        \"▁Gemeinsam\",\n        -12.94235897064209\n      ],\n      [\n        \"▁récemment\",\n        -12.94235897064209\n      ],\n      [\n        \"▁Pascal\",\n        -12.942490577697754\n      ],\n      [\n        \"filmed\",\n        -12.942523956298828\n      ],\n      [\n        \"RCA\",\n        -12.942548751831055\n      ],\n      [\n        \"▁virtuelle\",\n        -12.942622184753418\n      ],\n      [\n        \"▁dotat\",\n        -12.942630767822266\n      ],\n      [\n        \"logisch\",\n        -12.942717552185059\n      ],\n      [\n        \"▁Luck\",\n        -12.943005561828613\n      ],\n      [\n        \"cosy\",\n        -12.943132400512695\n      ],\n      [\n        \"▁Awareness\",\n        -12.943216323852539\n      ],\n      [\n        \"▁gesetzlich\",\n        -12.943263053894043\n      ],\n      [\n        \"padded\",\n        -12.943306922912598\n      ],\n      [\n        \"▁Lotus\",\n        -12.943395614624023\n      ],\n      [\n        \"urging\",\n        -12.9434175491333\n      ],\n      [\n        \"▁mushroom\",\n        -12.943426132202148\n      ],\n      [\n        \"▁adultes\",\n        -12.943527221679688\n      ],\n      [\n        \"▁Coca\",\n        -12.943571090698242\n      ],\n      [\n        \"▁recev\",\n        -12.943586349487305\n      ],\n      [\n        \"▁mantra\",\n        -12.943610191345215\n      ],\n      [\n        \"▁practise\",\n        -12.943644523620605\n      ],\n      [\n        \"▁acceler\",\n        -12.943663597106934\n      ],\n      [\n        \"bolster\",\n        -12.943756103515625\n      ],\n      [\n        \"▁compressed\",\n        -12.943818092346191\n      ],\n      [\n        \"TIN\",\n        -12.943899154663086\n      ],\n      [\n        \"▁aromatic\",\n        -12.944236755371094\n      ],\n      [\n        \"geleitet\",\n        -12.944408416748047\n      ],\n      [\n        \"▁fibr\",\n        -12.944443702697754\n      ],\n      [\n        \"exécut\",\n        -12.94444751739502\n      ],\n      [\n        \"▁unconscious\",\n        -12.94456958770752\n      ],\n      [\n        \"HAR\",\n        -12.944607734680176\n      ],\n      [\n        \"▁Gregory\",\n        -12.944661140441895\n      ],\n      [\n        \"▁Manila\",\n        -12.944738388061523\n      ],\n      [\n        \"ozitate\",\n        -12.944756507873535\n      ],\n      [\n        \"exemplary\",\n        -12.944803237915039\n      ],\n      [\n        \"éventuel\",\n        -12.944906234741211\n      ],\n      [\n        \"▁Craciun\",\n        -12.944930076599121\n      ],\n      [\n        \"▁tehnologii\",\n        -12.944931030273438\n      ],\n      [\n        \"▁Despre\",\n        -12.945138931274414\n      ],\n      [\n        \"▁1917\",\n        -12.945141792297363\n      ],\n      [\n        \"▁upfront\",\n        -12.945146560668945\n      ],\n      [\n        \"▁Iulia\",\n        -12.945280075073242\n      ],\n      [\n        \"▁erwähnt\",\n        -12.945359230041504\n      ],\n      [\n        \"▁magnesium\",\n        -12.945359230041504\n      ],\n      [\n        \"▁descriptive\",\n        -12.94536304473877\n      ],\n      [\n        \"▁consumul\",\n        -12.945364952087402\n      ],\n      [\n        \"▁10-15\",\n        -12.945423126220703\n      ],\n      [\n        \"▁erfüllen\",\n        -12.945611953735352\n      ],\n      [\n        \"gig\",\n        -12.945657730102539\n      ],\n      [\n        \"430\",\n        -12.945765495300293\n      ],\n      [\n        \"▁Migration\",\n        -12.945789337158203\n      ],\n      [\n        \"bră\",\n        -12.94579029083252\n      ],\n      [\n        \"▁réforme\",\n        -12.945863723754883\n      ],\n      [\n        \"▁york\",\n        -12.94610595703125\n      ],\n      [\n        \"dritten\",\n        -12.946109771728516\n      ],\n      [\n        \"cumva\",\n        -12.946182250976562\n      ],\n      [\n        \"▁Alumni\",\n        -12.946218490600586\n      ],\n      [\n        \"▁Ceramic\",\n        -12.946222305297852\n      ],\n      [\n        \"▁rappelle\",\n        -12.946236610412598\n      ],\n      [\n        \"▁pianist\",\n        -12.946248054504395\n      ],\n      [\n        \"twisted\",\n        -12.946306228637695\n      ],\n      [\n        \"earned\",\n        -12.946432113647461\n      ],\n      [\n        \"▁Hose\",\n        -12.946514129638672\n      ],\n      [\n        \"156\",\n        -12.946610450744629\n      ],\n      [\n        \"▁Salmon\",\n        -12.946687698364258\n      ],\n      [\n        \"Level\",\n        -12.946913719177246\n      ],\n      [\n        \"▁swirl\",\n        -12.947052001953125\n      ],\n      [\n        \"erfahrung\",\n        -12.947061538696289\n      ],\n      [\n        \"▁liabilities\",\n        -12.947078704833984\n      ],\n      [\n        \"praxis\",\n        -12.9470853805542\n      ],\n      [\n        \"IPO\",\n        -12.947089195251465\n      ],\n      [\n        \"▁screaming\",\n        -12.947092056274414\n      ],\n      [\n        \"emphasized\",\n        -12.947200775146484\n      ],\n      [\n        \"DEA\",\n        -12.947260856628418\n      ],\n      [\n        \"▁dermatolog\",\n        -12.947351455688477\n      ],\n      [\n        \"▁pacate\",\n        -12.947498321533203\n      ],\n      [\n        \"▁ansamblu\",\n        -12.947507858276367\n      ],\n      [\n        \"▁beteiligt\",\n        -12.947509765625\n      ],\n      [\n        \"▁Needles\",\n        -12.947574615478516\n      ],\n      [\n        \"▁organisiert\",\n        -12.947607040405273\n      ],\n      [\n        \"Pacific\",\n        -12.947639465332031\n      ],\n      [\n        \"actual\",\n        -12.947823524475098\n      ],\n      [\n        \"prindere\",\n        -12.94801139831543\n      ],\n      [\n        \"▁Indoor\",\n        -12.948348045349121\n      ],\n      [\n        \"▁Gewalt\",\n        -12.948431015014648\n      ],\n      [\n        \"▁rezid\",\n        -12.948507308959961\n      ],\n      [\n        \"censor\",\n        -12.948522567749023\n      ],\n      [\n        \"▁unlawful\",\n        -12.94882869720459\n      ],\n      [\n        \"▁Explain\",\n        -12.948873519897461\n      ],\n      [\n        \"▁Flame\",\n        -12.948897361755371\n      ],\n      [\n        \"▁brachte\",\n        -12.948941230773926\n      ],\n      [\n        \"▁Mustang\",\n        -12.94899845123291\n      ],\n      [\n        \"ectomy\",\n        -12.949044227600098\n      ],\n      [\n        \"▁deliberate\",\n        -12.949064254760742\n      ],\n      [\n        \"▁sparkle\",\n        -12.949225425720215\n      ],\n      [\n        \"▁inchis\",\n        -12.94926929473877\n      ],\n      [\n        \"▁Cristian\",\n        -12.949289321899414\n      ],\n      [\n        \"▁facture\",\n        -12.949291229248047\n      ],\n      [\n        \"▁Grundstück\",\n        -12.949292182922363\n      ],\n      [\n        \"außerhalb\",\n        -12.949300765991211\n      ],\n      [\n        \"coast\",\n        -12.949321746826172\n      ],\n      [\n        \"anilor\",\n        -12.949396133422852\n      ],\n      [\n        \"255\",\n        -12.94952392578125\n      ],\n      [\n        \"nterdisciplinary\",\n        -12.949576377868652\n      ],\n      [\n        \"▁Isabel\",\n        -12.949655532836914\n      ],\n      [\n        \"▁Städte\",\n        -12.949701309204102\n      ],\n      [\n        \"▁cicl\",\n        -12.949837684631348\n      ],\n      [\n        \"▁Zeug\",\n        -12.949905395507812\n      ],\n      [\n        \"▁Muskel\",\n        -12.949951171875\n      ],\n      [\n        \"▁indirectly\",\n        -12.950051307678223\n      ],\n      [\n        \"▁Vorbereitung\",\n        -12.950093269348145\n      ],\n      [\n        \"MMA\",\n        -12.95012378692627\n      ],\n      [\n        \"▁pudding\",\n        -12.950197219848633\n      ],\n      [\n        \"rax\",\n        -12.950389862060547\n      ],\n      [\n        \"▁Stimmung\",\n        -12.95052433013916\n      ],\n      [\n        \"▁hierarchy\",\n        -12.95052433013916\n      ],\n      [\n        \"partie\",\n        -12.950597763061523\n      ],\n      [\n        \"▁elevate\",\n        -12.950685501098633\n      ],\n      [\n        \"▁Persian\",\n        -12.950690269470215\n      ],\n      [\n        \"forensic\",\n        -12.95077896118164\n      ],\n      [\n        \"Become\",\n        -12.950854301452637\n      ],\n      [\n        \"leicht\",\n        -12.9508695602417\n      ],\n      [\n        \"▁staging\",\n        -12.950942039489746\n      ],\n      [\n        \"▁fühlt\",\n        -12.950965881347656\n      ],\n      [\n        \"fenster\",\n        -12.950979232788086\n      ],\n      [\n        \"▁unbelievable\",\n        -12.951089859008789\n      ],\n      [\n        \"„\",\n        -12.951260566711426\n      ],\n      [\n        \"▁Guatemala\",\n        -12.951387405395508\n      ],\n      [\n        \"LET\",\n        -12.95141315460205\n      ],\n      [\n        \"▁buff\",\n        -12.951454162597656\n      ],\n      [\n        \"▁Primul\",\n        -12.951626777648926\n      ],\n      [\n        \"▁mainland\",\n        -12.951702117919922\n      ],\n      [\n        \"campus\",\n        -12.951923370361328\n      ],\n      [\n        \"▁gefällt\",\n        -12.952075958251953\n      ],\n      [\n        \"BAN\",\n        -12.952153205871582\n      ],\n      [\n        \"finish\",\n        -12.952229499816895\n      ],\n      [\n        \"accustomed\",\n        -12.952251434326172\n      ],\n      [\n        \"▁Businesses\",\n        -12.95234203338623\n      ],\n      [\n        \"▁întreb\",\n        -12.95239543914795\n      ],\n      [\n        \"▁recomandă\",\n        -12.952425956726074\n      ],\n      [\n        \"▁pellet\",\n        -12.952474594116211\n      ],\n      [\n        \"▁GST\",\n        -12.952507972717285\n      ],\n      [\n        \"SEA\",\n        -12.952601432800293\n      ],\n      [\n        \"▁categorie\",\n        -12.952631950378418\n      ],\n      [\n        \"▁convainc\",\n        -12.95268440246582\n      ],\n      [\n        \"▁considéré\",\n        -12.952739715576172\n      ],\n      [\n        \"rois\",\n        -12.952853202819824\n      ],\n      [\n        \"▁thrust\",\n        -12.952898979187012\n      ],\n      [\n        \"ijk\",\n        -12.953001022338867\n      ],\n      [\n        \"gefüllt\",\n        -12.953118324279785\n      ],\n      [\n        \"▁situatii\",\n        -12.953327178955078\n      ],\n      [\n        \"▁Jacksonville\",\n        -12.95337200164795\n      ],\n      [\n        \"▁bakery\",\n        -12.953473091125488\n      ],\n      [\n        \"▁Accident\",\n        -12.953554153442383\n      ],\n      [\n        \"▁urmeaza\",\n        -12.953572273254395\n      ],\n      [\n        \"▁crib\",\n        -12.953593254089355\n      ],\n      [\n        \"getroffen\",\n        -12.953707695007324\n      ],\n      [\n        \"Based\",\n        -12.953877449035645\n      ],\n      [\n        \"Including\",\n        -12.95398235321045\n      ],\n      [\n        \"▁Morocco\",\n        -12.95398235321045\n      ],\n      [\n        \"▁casserole\",\n        -12.95398235321045\n      ],\n      [\n        \"▁enquiry\",\n        -12.953983306884766\n      ],\n      [\n        \"▁pahar\",\n        -12.954017639160156\n      ],\n      [\n        \"▁Unternehmer\",\n        -12.954025268554688\n      ],\n      [\n        \"électro\",\n        -12.954068183898926\n      ],\n      [\n        \"Marie\",\n        -12.95413589477539\n      ],\n      [\n        \"▁Sno\",\n        -12.954153060913086\n      ],\n      [\n        \"▁prostate\",\n        -12.954168319702148\n      ],\n      [\n        \"▁Wallace\",\n        -12.95426082611084\n      ],\n      [\n        \"empre\",\n        -12.954402923583984\n      ],\n      [\n        \"▁Multumesc\",\n        -12.954415321350098\n      ],\n      [\n        \"White\",\n        -12.954675674438477\n      ],\n      [\n        \"brief\",\n        -12.954751014709473\n      ],\n      [\n        \"▁kitten\",\n        -12.954751014709473\n      ],\n      [\n        \"füh\",\n        -12.954780578613281\n      ],\n      [\n        \"▁mankind\",\n        -12.954821586608887\n      ],\n      [\n        \"ENE\",\n        -12.95483112335205\n      ],\n      [\n        \"▁Ethics\",\n        -12.954848289489746\n      ],\n      [\n        \"▁Realty\",\n        -12.954946517944336\n      ],\n      [\n        \"▁Emerg\",\n        -12.954988479614258\n      ],\n      [\n        \"7-8\",\n        -12.955055236816406\n      ],\n      [\n        \"museum\",\n        -12.955096244812012\n      ],\n      [\n        \"BRE\",\n        -12.95518970489502\n      ],\n      [\n        \"▁kilometri\",\n        -12.955282211303711\n      ],\n      [\n        \"oyaume\",\n        -12.955286026000977\n      ],\n      [\n        \"▁Cambodia\",\n        -12.955288887023926\n      ],\n      [\n        \"▁bruit\",\n        -12.955304145812988\n      ],\n      [\n        \"▁sépar\",\n        -12.955334663391113\n      ],\n      [\n        \"mastered\",\n        -12.9554443359375\n      ],\n      [\n        \"shake\",\n        -12.955608367919922\n      ],\n      [\n        \"▁liaison\",\n        -12.955718994140625\n      ],\n      [\n        \"▁Boulder\",\n        -12.955719947814941\n      ],\n      [\n        \"▁tortilla\",\n        -12.955720901489258\n      ],\n      [\n        \"▁Fokus\",\n        -12.955731391906738\n      ],\n      [\n        \"▁Blair\",\n        -12.95573902130127\n      ],\n      [\n        \"▁disturbance\",\n        -12.955775260925293\n      ],\n      [\n        \"geladen\",\n        -12.955843925476074\n      ],\n      [\n        \"▁sunscreen\",\n        -12.955886840820312\n      ],\n      [\n        \"▁reuș\",\n        -12.955896377563477\n      ],\n      [\n        \"▁Braun\",\n        -12.956155776977539\n      ],\n      [\n        \"▁existente\",\n        -12.956157684326172\n      ],\n      [\n        \"stift\",\n        -12.956242561340332\n      ],\n      [\n        \"▁preot\",\n        -12.956387519836426\n      ],\n      [\n        \"▁doved\",\n        -12.956445693969727\n      ],\n      [\n        \"sexual\",\n        -12.956488609313965\n      ],\n      [\n        \"meanwhile\",\n        -12.956583976745605\n      ],\n      [\n        \"▁legislature\",\n        -12.956583976745605\n      ],\n      [\n        \"▁vermeiden\",\n        -12.956583976745605\n      ],\n      [\n        \"▁inequality\",\n        -12.95687484741211\n      ],\n      [\n        \"▁turc\",\n        -12.956881523132324\n      ],\n      [\n        \"ви\",\n        -12.95698070526123\n      ],\n      [\n        \"▁Kontrolle\",\n        -12.95702075958252\n      ],\n      [\n        \"▁Ursache\",\n        -12.95704174041748\n      ],\n      [\n        \"▁confess\",\n        -12.95704174041748\n      ],\n      [\n        \"▁poetic\",\n        -12.957109451293945\n      ],\n      [\n        \"attention\",\n        -12.957236289978027\n      ],\n      [\n        \"textured\",\n        -12.957386016845703\n      ],\n      [\n        \"GES\",\n        -12.957586288452148\n      ],\n      [\n        \"6-4\",\n        -12.957637786865234\n      ],\n      [\n        \"Ray\",\n        -12.957696914672852\n      ],\n      [\n        \"chromat\",\n        -12.957745552062988\n      ],\n      [\n        \"▁insightful\",\n        -12.957775115966797\n      ],\n      [\n        \"▁Navigation\",\n        -12.957887649536133\n      ],\n      [\n        \"▁destiny\",\n        -12.957887649536133\n      ],\n      [\n        \"▁ergeben\",\n        -12.957892417907715\n      ],\n      [\n        \"▁versteh\",\n        -12.958090782165527\n      ],\n      [\n        \"301\",\n        -12.958209037780762\n      ],\n      [\n        \"▁Exterior\",\n        -12.958321571350098\n      ],\n      [\n        \"église\",\n        -12.958322525024414\n      ],\n      [\n        \"▁Failure\",\n        -12.958322525024414\n      ],\n      [\n        \"▁Patricia\",\n        -12.958324432373047\n      ],\n      [\n        \"▁geschützt\",\n        -12.958328247070312\n      ],\n      [\n        \"intrarea\",\n        -12.95833969116211\n      ],\n      [\n        \"▁Forward\",\n        -12.958368301391602\n      ],\n      [\n        \"▁Portrait\",\n        -12.95844841003418\n      ],\n      [\n        \"▁enregistré\",\n        -12.958480834960938\n      ],\n      [\n        \"▁wagon\",\n        -12.958620071411133\n      ],\n      [\n        \"stealing\",\n        -12.958879470825195\n      ],\n      [\n        \"▁Numero\",\n        -12.958880424499512\n      ],\n      [\n        \"▁tradui\",\n        -12.958986282348633\n      ],\n      [\n        \"▁klassische\",\n        -12.959033966064453\n      ],\n      [\n        \"▁profitieren\",\n        -12.959043502807617\n      ],\n      [\n        \"▁laboratories\",\n        -12.95919132232666\n      ],\n      [\n        \"▁reconnaissance\",\n        -12.95919132232666\n      ],\n      [\n        \"ку\",\n        -12.959314346313477\n      ],\n      [\n        \"▁Petersburg\",\n        -12.959359169006348\n      ],\n      [\n        \"▁fertility\",\n        -12.959421157836914\n      ],\n      [\n        \"▁Understand\",\n        -12.959516525268555\n      ],\n      [\n        \"dehors\",\n        -12.959746360778809\n      ],\n      [\n        \"▁Knox\",\n        -12.959762573242188\n      ],\n      [\n        \"software\",\n        -12.959797859191895\n      ],\n      [\n        \"▁Celebration\",\n        -12.959823608398438\n      ],\n      [\n        \"4.6\",\n        -12.959897994995117\n      ],\n      [\n        \"quino\",\n        -12.959930419921875\n      ],\n      [\n        \"▁endeavour\",\n        -12.960073471069336\n      ],\n      [\n        \"▁temptation\",\n        -12.960136413574219\n      ],\n      [\n        \"▁Registry\",\n        -12.96035385131836\n      ],\n      [\n        \"IMP\",\n        -12.960502624511719\n      ],\n      [\n        \"bedingt\",\n        -12.960625648498535\n      ],\n      [\n        \"▁$60\",\n        -12.960846900939941\n      ],\n      [\n        \"▁Kriterien\",\n        -12.96093463897705\n      ],\n      [\n        \"▁strawberries\",\n        -12.960943222045898\n      ],\n      [\n        \"▁conspiracy\",\n        -12.96094799041748\n      ],\n      [\n        \"▁pouch\",\n        -12.960976600646973\n      ],\n      [\n        \"▁Alexandria\",\n        -12.961017608642578\n      ],\n      [\n        \"▁Mick\",\n        -12.961102485656738\n      ],\n      [\n        \"extra\",\n        -12.961114883422852\n      ],\n      [\n        \"▁Operator\",\n        -12.961151123046875\n      ],\n      [\n        \"enduring\",\n        -12.96132755279541\n      ],\n      [\n        \"▁smash\",\n        -12.961359024047852\n      ],\n      [\n        \"Euro\",\n        -12.961360931396484\n      ],\n      [\n        \"▁Nouvelle\",\n        -12.961370468139648\n      ],\n      [\n        \"▁Raspberry\",\n        -12.961370468139648\n      ],\n      [\n        \"▁präsentieren\",\n        -12.961380004882812\n      ],\n      [\n        \"▁electrician\",\n        -12.961404800415039\n      ],\n      [\n        \"▁cheerful\",\n        -12.961472511291504\n      ],\n      [\n        \"▁chargé\",\n        -12.961508750915527\n      ],\n      [\n        \"▁Diskussion\",\n        -12.961511611938477\n      ],\n      [\n        \"▁surpass\",\n        -12.961604118347168\n      ],\n      [\n        \"▁Acces\",\n        -12.961701393127441\n      ],\n      [\n        \"tausend\",\n        -12.961771011352539\n      ],\n      [\n        \"▁vigorous\",\n        -12.961808204650879\n      ],\n      [\n        \"▁tava\",\n        -12.961810111999512\n      ],\n      [\n        \"CHO\",\n        -12.96193790435791\n      ],\n      [\n        \"▁1951\",\n        -12.961941719055176\n      ],\n      [\n        \"▁Umsatz\",\n        -12.962019920349121\n      ],\n      [\n        \"▁slavery\",\n        -12.962055206298828\n      ],\n      [\n        \"travel\",\n        -12.962294578552246\n      ],\n      [\n        \"▁correspondent\",\n        -12.962297439575195\n      ],\n      [\n        \"▁$150\",\n        -12.962307929992676\n      ],\n      [\n        \"▁stärker\",\n        -12.962594985961914\n      ],\n      [\n        \"Alb\",\n        -12.96264362335205\n      ],\n      [\n        \"▁Lopez\",\n        -12.962682723999023\n      ],\n      [\n        \"▁longueur\",\n        -12.962767601013184\n      ],\n      [\n        \"▁successive\",\n        -12.962772369384766\n      ],\n      [\n        \"▁(2015)\",\n        -12.96278190612793\n      ],\n      [\n        \"teig\",\n        -12.962790489196777\n      ],\n      [\n        \"custom\",\n        -12.962944984436035\n      ],\n      [\n        \"TIM\",\n        -12.963099479675293\n      ],\n      [\n        \"▁Escape\",\n        -12.963174819946289\n      ],\n      [\n        \"▁Sekunden\",\n        -12.963349342346191\n      ],\n      [\n        \"tiré\",\n        -12.963444709777832\n      ],\n      [\n        \"▁chantier\",\n        -12.963489532470703\n      ],\n      [\n        \"▁saturated\",\n        -12.963555335998535\n      ],\n      [\n        \"▁confrontation\",\n        -12.963804244995117\n      ],\n      [\n        \"▁biography\",\n        -12.963805198669434\n      ],\n      [\n        \"zuerst\",\n        -12.9639892578125\n      ],\n      [\n        \"▁rencontré\",\n        -12.963991165161133\n      ],\n      [\n        \"▁harmless\",\n        -12.96412181854248\n      ],\n      [\n        \"Branche\",\n        -12.964139938354492\n      ],\n      [\n        \"▁QR\",\n        -12.964380264282227\n      ],\n      [\n        \"▁Ereignis\",\n        -12.964430809020996\n      ],\n      [\n        \"▁verkaufen\",\n        -12.96444320678711\n      ],\n      [\n        \"0:00\",\n        -12.96451187133789\n      ],\n      [\n        \"Association\",\n        -12.96469783782959\n      ],\n      [\n        \"▁Santiago\",\n        -12.964865684509277\n      ],\n      [\n        \"Control\",\n        -12.964993476867676\n      ],\n      [\n        \"▁Angriff\",\n        -12.9650297164917\n      ],\n      [\n        \"lase\",\n        -12.96505069732666\n      ],\n      [\n        \"▁sfaturi\",\n        -12.965224266052246\n      ],\n      [\n        \"▁Comprehensive\",\n        -12.965304374694824\n      ],\n      [\n        \"▁Shepherd\",\n        -12.965304374694824\n      ],\n      [\n        \"▁exponential\",\n        -12.965304374694824\n      ],\n      [\n        \"▁penetration\",\n        -12.965304374694824\n      ],\n      [\n        \"▁comble\",\n        -12.965394973754883\n      ],\n      [\n        \"ionar\",\n        -12.965557098388672\n      ],\n      [\n        \"slept\",\n        -12.965563774108887\n      ],\n      [\n        \"▁Spice\",\n        -12.965633392333984\n      ],\n      [\n        \"mAh\",\n        -12.965688705444336\n      ],\n      [\n        \"▁Vertreter\",\n        -12.965747833251953\n      ],\n      [\n        \"fehler\",\n        -12.965752601623535\n      ],\n      [\n        \"▁Scroll\",\n        -12.96599292755127\n      ],\n      [\n        \"▁WARRANT\",\n        -12.966179847717285\n      ],\n      [\n        \"▁minimise\",\n        -12.966326713562012\n      ],\n      [\n        \"▁Dept\",\n        -12.966474533081055\n      ],\n      [\n        \"▁urinar\",\n        -12.96661376953125\n      ],\n      [\n        \"établir\",\n        -12.966619491577148\n      ],\n      [\n        \"verhältnis\",\n        -12.966713905334473\n      ],\n      [\n        \"▁glowing\",\n        -12.966979026794434\n      ],\n      [\n        \"kulturelle\",\n        -12.966984748840332\n      ],\n      [\n        \"▁Pediatric\",\n        -12.967057228088379\n      ],\n      [\n        \"▁inconvenience\",\n        -12.967057228088379\n      ],\n      [\n        \"Antoine\",\n        -12.967121124267578\n      ],\n      [\n        \"▁Heck\",\n        -12.967164993286133\n      ],\n      [\n        \"▁couches\",\n        -12.967265129089355\n      ],\n      [\n        \"▁1938\",\n        -12.967331886291504\n      ],\n      [\n        \"maybe\",\n        -12.967333793640137\n      ],\n      [\n        \"ETA\",\n        -12.9673433303833\n      ],\n      [\n        \"▁solaire\",\n        -12.96748161315918\n      ],\n      [\n        \"▁Zürich\",\n        -12.967495918273926\n      ],\n      [\n        \"computer\",\n        -12.967545509338379\n      ],\n      [\n        \"milk\",\n        -12.96756362915039\n      ],\n      [\n        \"он\",\n        -12.967585563659668\n      ],\n      [\n        \"modalitate\",\n        -12.967608451843262\n      ],\n      [\n        \"spanning\",\n        -12.967655181884766\n      ],\n      [\n        \"▁Crypto\",\n        -12.96774959564209\n      ],\n      [\n        \"▁Spotify\",\n        -12.967935562133789\n      ],\n      [\n        \"mycin\",\n        -12.967944145202637\n      ],\n      [\n        \"▁similarities\",\n        -12.96811294555664\n      ],\n      [\n        \"▁eclipse\",\n        -12.968377113342285\n      ],\n      [\n        \"Map\",\n        -12.968610763549805\n      ],\n      [\n        \"double\",\n        -12.96861743927002\n      ],\n      [\n        \"corporate\",\n        -12.968734741210938\n      ],\n      [\n        \"▁Hindi\",\n        -12.968853950500488\n      ],\n      [\n        \"battling\",\n        -12.968866348266602\n      ],\n      [\n        \"▁habituel\",\n        -12.969098091125488\n      ],\n      [\n        \"▁Transition\",\n        -12.969196319580078\n      ],\n      [\n        \"▁luptă\",\n        -12.96920394897461\n      ],\n      [\n        \"▁trainee\",\n        -12.969219207763672\n      ],\n      [\n        \"LIS\",\n        -12.96922492980957\n      ],\n      [\n        \"▁Vatican\",\n        -12.969254493713379\n      ],\n      [\n        \"Archived\",\n        -12.9692964553833\n      ],\n      [\n        \"Connect\",\n        -12.969305038452148\n      ],\n      [\n        \"▁prealabil\",\n        -12.969307899475098\n      ],\n      [\n        \"▁Chambre\",\n        -12.969327926635742\n      ],\n      [\n        \"stuhl\",\n        -12.969440460205078\n      ],\n      [\n        \"▁arrivé\",\n        -12.969557762145996\n      ],\n      [\n        \"▁Urteil\",\n        -12.969575881958008\n      ],\n      [\n        \"▁scrutiny\",\n        -12.969818115234375\n      ],\n      [\n        \"▁memoir\",\n        -12.969854354858398\n      ],\n      [\n        \"▁innovant\",\n        -12.9699068069458\n      ],\n      [\n        \"▁sublime\",\n        -12.969943046569824\n      ],\n      [\n        \"children\",\n        -12.970004081726074\n      ],\n      [\n        \"▁Handwerk\",\n        -12.970056533813477\n      ],\n      [\n        \"▁campuses\",\n        -12.970268249511719\n      ],\n      [\n        \"▁durabil\",\n        -12.970502853393555\n      ],\n      [\n        \"▁immersive\",\n        -12.970632553100586\n      ],\n      [\n        \"▁Magnet\",\n        -12.970732688903809\n      ],\n      [\n        \"läufe\",\n        -12.970808029174805\n      ],\n      [\n        \"▁Techno\",\n        -12.970837593078613\n      ],\n      [\n        \"MAP\",\n        -12.9710693359375\n      ],\n      [\n        \"7.2\",\n        -12.971145629882812\n      ],\n      [\n        \"▁Schwimm\",\n        -12.971181869506836\n      ],\n      [\n        \"BOOK\",\n        -12.971186637878418\n      ],\n      [\n        \"188\",\n        -12.971441268920898\n      ],\n      [\n        \"▁Supervisor\",\n        -12.971498489379883\n      ],\n      [\n        \"prévue\",\n        -12.971691131591797\n      ],\n      [\n        \"needed\",\n        -12.971813201904297\n      ],\n      [\n        \"▁creditors\",\n        -12.971822738647461\n      ],\n      [\n        \"▁brin\",\n        -12.971837043762207\n      ],\n      [\n        \"▁Neck\",\n        -12.971900939941406\n      ],\n      [\n        \"▁Salut\",\n        -12.971988677978516\n      ],\n      [\n        \"▁despair\",\n        -12.972105979919434\n      ],\n      [\n        \"▁Sauce\",\n        -12.972261428833008\n      ],\n      [\n        \"▁Westminster\",\n        -12.972335815429688\n      ],\n      [\n        \"▁langfristig\",\n        -12.972335815429688\n      ],\n      [\n        \"▁northeast\",\n        -12.972365379333496\n      ],\n      [\n        \"▁încercat\",\n        -12.972399711608887\n      ],\n      [\n        \"▁nausea\",\n        -12.972408294677734\n      ],\n      [\n        \"▁Paypal\",\n        -12.972440719604492\n      ],\n      [\n        \"▁Arrow\",\n        -12.972469329833984\n      ],\n      [\n        \"▁Travis\",\n        -12.972633361816406\n      ],\n      [\n        \"(2009)\",\n        -12.972713470458984\n      ],\n      [\n        \"▁Rising\",\n        -12.972719192504883\n      ],\n      [\n        \"termes\",\n        -12.973097801208496\n      ],\n      [\n        \"Australie\",\n        -12.973154067993164\n      ],\n      [\n        \"▁scarf\",\n        -12.973187446594238\n      ],\n      [\n        \"klassischen\",\n        -12.97337818145752\n      ],\n      [\n        \"▁boug\",\n        -12.973466873168945\n      ],\n      [\n        \"DOT\",\n        -12.97360610961914\n      ],\n      [\n        \"▁Trink\",\n        -12.97361946105957\n      ],\n      [\n        \"▁bestätigt\",\n        -12.97365951538086\n      ],\n      [\n        \"▁officiel\",\n        -12.97370433807373\n      ],\n      [\n        \"Produkt\",\n        -12.973873138427734\n      ],\n      [\n        \"DNA\",\n        -12.974140167236328\n      ],\n      [\n        \"▁*******\",\n        -12.97426700592041\n      ],\n      [\n        \"GAR\",\n        -12.974271774291992\n      ],\n      [\n        \"therapeut\",\n        -12.974377632141113\n      ],\n      [\n        \"187\",\n        -12.974420547485352\n      ],\n      [\n        \"▁Louisville\",\n        -12.974493026733398\n      ],\n      [\n        \"▁geöffnet\",\n        -12.97462272644043\n      ],\n      [\n        \"Watch\",\n        -12.974640846252441\n      ],\n      [\n        \"85%\",\n        -12.974678993225098\n      ],\n      [\n        \"▁Candida\",\n        -12.974698066711426\n      ],\n      [\n        \"▁Kathy\",\n        -12.974703788757324\n      ],\n      [\n        \"▁Animation\",\n        -12.974711418151855\n      ],\n      [\n        \"planung\",\n        -12.974715232849121\n      ],\n      [\n        \"woche\",\n        -12.974730491638184\n      ],\n      [\n        \"Video\",\n        -12.974966049194336\n      ],\n      [\n        \"▁Automation\",\n        -12.97507095336914\n      ],\n      [\n        \"▁foliage\",\n        -12.97507381439209\n      ],\n      [\n        \"▁evenimentului\",\n        -12.975175857543945\n      ],\n      [\n        \"SEN\",\n        -12.975362777709961\n      ],\n      [\n        \"▁Dialog\",\n        -12.975372314453125\n      ],\n      [\n        \"▁ZIP\",\n        -12.975372314453125\n      ],\n      [\n        \"▁vieții\",\n        -12.97537612915039\n      ],\n      [\n        \"▁passionné\",\n        -12.975425720214844\n      ],\n      [\n        \"▁WOW\",\n        -12.97544002532959\n      ],\n      [\n        \"ectiv\",\n        -12.975464820861816\n      ],\n      [\n        \"▁vorbesc\",\n        -12.975482940673828\n      ],\n      [\n        \"▁computational\",\n        -12.975533485412598\n      ],\n      [\n        \"▁idiot\",\n        -12.97557258605957\n      ],\n      [\n        \"▁stigma\",\n        -12.97567081451416\n      ],\n      [\n        \"▁multumesc\",\n        -12.975870132446289\n      ],\n      [\n        \"▁sărbători\",\n        -12.975870132446289\n      ],\n      [\n        \"▁Advantage\",\n        -12.975906372070312\n      ],\n      [\n        \"▁alegeri\",\n        -12.976024627685547\n      ],\n      [\n        \"▁philosopher\",\n        -12.976031303405762\n      ],\n      [\n        \"RIE\",\n        -12.976117134094238\n      ],\n      [\n        \"refundable\",\n        -12.976221084594727\n      ],\n      [\n        \"▁Sofia\",\n        -12.97623348236084\n      ],\n      [\n        \"▁încheiat\",\n        -12.976313591003418\n      ],\n      [\n        \"meilleures\",\n        -12.976473808288574\n      ],\n      [\n        \"critical\",\n        -12.976744651794434\n      ],\n      [\n        \"▁cavity\",\n        -12.976766586303711\n      ],\n      [\n        \"▁ressort\",\n        -12.976792335510254\n      ],\n      [\n        \"strong\",\n        -12.976798057556152\n      ],\n      [\n        \"▁Backup\",\n        -12.976948738098145\n      ],\n      [\n        \"▁Zeitraum\",\n        -12.977023124694824\n      ],\n      [\n        \"▁Szene\",\n        -12.977027893066406\n      ],\n      [\n        \"▁Candle\",\n        -12.977173805236816\n      ],\n      [\n        \"▁ciocolat\",\n        -12.977198600769043\n      ],\n      [\n        \"etched\",\n        -12.977227210998535\n      ],\n      [\n        \"ан\",\n        -12.977302551269531\n      ],\n      [\n        \"▁Anchor\",\n        -12.977365493774414\n      ],\n      [\n        \"equate\",\n        -12.977470397949219\n      ],\n      [\n        \"▁bulg\",\n        -12.977476119995117\n      ],\n      [\n        \"▁motorist\",\n        -12.977524757385254\n      ],\n      [\n        \"träglich\",\n        -12.977736473083496\n      ],\n      [\n        \"please\",\n        -12.977936744689941\n      ],\n      [\n        \"different\",\n        -12.978011131286621\n      ],\n      [\n        \"▁Accel\",\n        -12.97813606262207\n      ],\n      [\n        \"Proiectul\",\n        -12.97829818725586\n      ],\n      [\n        \"▁cabbage\",\n        -12.97852897644043\n      ],\n      [\n        \"▁télécharger\",\n        -12.97852897644043\n      ],\n      [\n        \"▁Presentation\",\n        -12.97856330871582\n      ],\n      [\n        \"▁Struktur\",\n        -12.978621482849121\n      ],\n      [\n        \"bücher\",\n        -12.978650093078613\n      ],\n      [\n        \"▁flatter\",\n        -12.978672981262207\n      ],\n      [\n        \"emprunt\",\n        -12.979074478149414\n      ],\n      [\n        \"▁oriental\",\n        -12.979111671447754\n      ],\n      [\n        \"▁Turnier\",\n        -12.979166984558105\n      ],\n      [\n        \"brücke\",\n        -12.97917366027832\n      ],\n      [\n        \"▁légumes\",\n        -12.979416847229004\n      ],\n      [\n        \"gerechnet\",\n        -12.979595184326172\n      ],\n      [\n        \"flooded\",\n        -12.979621887207031\n      ],\n      [\n        \"LER\",\n        -12.979679107666016\n      ],\n      [\n        \"üben\",\n        -12.97973918914795\n      ],\n      [\n        \"internaute\",\n        -12.979888916015625\n      ],\n      [\n        \"▁Austausch\",\n        -12.979935646057129\n      ],\n      [\n        \"gefordert\",\n        -12.980034828186035\n      ],\n      [\n        \"▁adoptat\",\n        -12.980277061462402\n      ],\n      [\n        \"▁erinnern\",\n        -12.980305671691895\n      ],\n      [\n        \"▁dolphin\",\n        -12.980307579040527\n      ],\n      [\n        \"▁Parkinson\",\n        -12.980308532714844\n      ],\n      [\n        \"büro\",\n        -12.980310440063477\n      ],\n      [\n        \"▁Crest\",\n        -12.980368614196777\n      ],\n      [\n        \"▁Ikea\",\n        -12.980437278747559\n      ],\n      [\n        \"▁ecologic\",\n        -12.980470657348633\n      ],\n      [\n        \"mplă\",\n        -12.98065185546875\n      ],\n      [\n        \"▁șef\",\n        -12.980655670166016\n      ],\n      [\n        \"coop\",\n        -12.980868339538574\n      ],\n      [\n        \"▁Carson\",\n        -12.980900764465332\n      ],\n      [\n        \"▁uşor\",\n        -12.981054306030273\n      ],\n      [\n        \"▁exert\",\n        -12.981070518493652\n      ],\n      [\n        \"▁countertop\",\n        -12.981114387512207\n      ],\n      [\n        \"ntended\",\n        -12.981136322021484\n      ],\n      [\n        \"▁Civic\",\n        -12.981313705444336\n      ],\n      [\n        \"▁attentes\",\n        -12.98133373260498\n      ],\n      [\n        \"gesetzlichen\",\n        -12.981356620788574\n      ],\n      [\n        \"frischen\",\n        -12.981475830078125\n      ],\n      [\n        \"▁Bottle\",\n        -12.981636047363281\n      ],\n      [\n        \"▁cautare\",\n        -12.982080459594727\n      ],\n      [\n        \"▁waterfront\",\n        -12.982226371765137\n      ],\n      [\n        \"▁centerpiece\",\n        -12.982312202453613\n      ],\n      [\n        \"▁Castel\",\n        -12.982441902160645\n      ],\n      [\n        \"510\",\n        -12.98270034790039\n      ],\n      [\n        \"capped\",\n        -12.982709884643555\n      ],\n      [\n        \"▁mattresses\",\n        -12.982850074768066\n      ],\n      [\n        \"▁readiness\",\n        -12.982865333557129\n      ],\n      [\n        \"diag\",\n        -12.982970237731934\n      ],\n      [\n        \"▁geändert\",\n        -12.982980728149414\n      ],\n      [\n        \"▁complained\",\n        -12.983051300048828\n      ],\n      [\n        \"▁diary\",\n        -12.983073234558105\n      ],\n      [\n        \"▁ceremonies\",\n        -12.983144760131836\n      ],\n      [\n        \"▁următor\",\n        -12.983181953430176\n      ],\n      [\n        \"▁Engel\",\n        -12.983270645141602\n      ],\n      [\n        \"▁disconnect\",\n        -12.9832763671875\n      ],\n      [\n        \"▁Silvi\",\n        -12.983282089233398\n      ],\n      [\n        \"▁eingerichtet\",\n        -12.9834566116333\n      ],\n      [\n        \"medizin\",\n        -12.983512878417969\n      ],\n      [\n        \"▁majestic\",\n        -12.983869552612305\n      ],\n      [\n        \"▁Random\",\n        -12.983943939208984\n      ],\n      [\n        \"▁Equity\",\n        -12.984046936035156\n      ],\n      [\n        \"▁Echipa\",\n        -12.984111785888672\n      ],\n      [\n        \"са\",\n        -12.984163284301758\n      ],\n      [\n        \"316\",\n        -12.984179496765137\n      ],\n      [\n        \"▁Formation\",\n        -12.984183311462402\n      ],\n      [\n        \"inland\",\n        -12.98421859741211\n      ],\n      [\n        \"appuy\",\n        -12.984301567077637\n      ],\n      [\n        \"TAN\",\n        -12.984481811523438\n      ],\n      [\n        \"slipped\",\n        -12.984918594360352\n      ],\n      [\n        \"Certains\",\n        -12.985247611999512\n      ],\n      [\n        \"▁Silber\",\n        -12.98525333404541\n      ],\n      [\n        \"▁reçoi\",\n        -12.985257148742676\n      ],\n      [\n        \"▁Monthly\",\n        -12.985323905944824\n      ],\n      [\n        \"calculating\",\n        -12.985494613647461\n      ],\n      [\n        \"▁scratches\",\n        -12.98554515838623\n      ],\n      [\n        \"▁concurrence\",\n        -12.985654830932617\n      ],\n      [\n        \"▁Stärke\",\n        -12.985662460327148\n      ],\n      [\n        \"▁intermediar\",\n        -12.985751152038574\n      ],\n      [\n        \"▁erlebt\",\n        -12.98579216003418\n      ],\n      [\n        \"gesellschaftlich\",\n        -12.986037254333496\n      ],\n      [\n        \"▁Volk\",\n        -12.986041069030762\n      ],\n      [\n        \"▁Ansprüche\",\n        -12.986101150512695\n      ],\n      [\n        \"▁cumulative\",\n        -12.986103057861328\n      ],\n      [\n        \"▁Randy\",\n        -12.986183166503906\n      ],\n      [\n        \"▁instituții\",\n        -12.98622989654541\n      ],\n      [\n        \"together\",\n        -12.986489295959473\n      ],\n      [\n        \"▁Sap\",\n        -12.986539840698242\n      ],\n      [\n        \"▁modificari\",\n        -12.986551284790039\n      ],\n      [\n        \"▁erosion\",\n        -12.986572265625\n      ],\n      [\n        \"▁wicked\",\n        -12.986577033996582\n      ],\n      [\n        \"soaked\",\n        -12.986613273620605\n      ],\n      [\n        \"▁cellar\",\n        -12.9866361618042\n      ],\n      [\n        \"ignoring\",\n        -12.986726760864258\n      ],\n      [\n        \"▁scarce\",\n        -12.986815452575684\n      ],\n      [\n        \"ueuse\",\n        -12.98697280883789\n      ],\n      [\n        \"▁bibliothèque\",\n        -12.986995697021484\n      ],\n      [\n        \"critères\",\n        -12.987017631530762\n      ],\n      [\n        \"▁overlay\",\n        -12.987166404724121\n      ],\n      [\n        \"IPA\",\n        -12.98737907409668\n      ],\n      [\n        \"director\",\n        -12.987393379211426\n      ],\n      [\n        \"▁Krishna\",\n        -12.987444877624512\n      ],\n      [\n        \"▁methodologies\",\n        -12.987451553344727\n      ],\n      [\n        \"iocese\",\n        -12.987513542175293\n      ],\n      [\n        \"▁saucepan\",\n        -12.987713813781738\n      ],\n      [\n        \"184\",\n        -12.987948417663574\n      ],\n      [\n        \"275\",\n        -12.987981796264648\n      ],\n      [\n        \"▁précieu\",\n        -12.988165855407715\n      ],\n      [\n        \"▁academy\",\n        -12.9883394241333\n      ],\n      [\n        \"460\",\n        -12.988438606262207\n      ],\n      [\n        \"ERN\",\n        -12.988679885864258\n      ],\n      [\n        \"▁emoti\",\n        -12.988725662231445\n      ],\n      [\n        \"▁télévision\",\n        -12.988823890686035\n      ],\n      [\n        \"EDIT\",\n        -12.988901138305664\n      ],\n      [\n        \"▁Valeri\",\n        -12.989045143127441\n      ],\n      [\n        \"▁Charity\",\n        -12.98911190032959\n      ],\n      [\n        \"Voilà\",\n        -12.989297866821289\n      ],\n      [\n        \"▁lipsit\",\n        -12.989356994628906\n      ],\n      [\n        \"▁unleash\",\n        -12.989373207092285\n      ],\n      [\n        \"▁suferit\",\n        -12.989506721496582\n      ],\n      [\n        \"▁Lifestyle\",\n        -12.98953914642334\n      ],\n      [\n        \"▁Edel\",\n        -12.989603996276855\n      ],\n      [\n        \"▁Derek\",\n        -12.989643096923828\n      ],\n      [\n        \"▁Manga\",\n        -12.989801406860352\n      ],\n      [\n        \"▁increment\",\n        -12.989990234375\n      ],\n      [\n        \"▁plötzlich\",\n        -12.990133285522461\n      ],\n      [\n        \"▁5:30\",\n        -12.990208625793457\n      ],\n      [\n        \"▁Republicii\",\n        -12.990246772766113\n      ],\n      [\n        \"▁capitalism\",\n        -12.990293502807617\n      ],\n      [\n        \"ROW\",\n        -12.990510940551758\n      ],\n      [\n        \"▁Paar\",\n        -12.990523338317871\n      ],\n      [\n        \"allée\",\n        -12.99057674407959\n      ],\n      [\n        \"▁motto\",\n        -12.990610122680664\n      ],\n      [\n        \"Schäden\",\n        -12.990630149841309\n      ],\n      [\n        \"▁£10\",\n        -12.99063491821289\n      ],\n      [\n        \"RIP\",\n        -12.990728378295898\n      ],\n      [\n        \"courir\",\n        -12.990761756896973\n      ],\n      [\n        \"rocky\",\n        -12.990944862365723\n      ],\n      [\n        \"▁Sunshine\",\n        -12.991031646728516\n      ],\n      [\n        \"▁chimney\",\n        -12.991044998168945\n      ],\n      [\n        \"▁préfér\",\n        -12.991153717041016\n      ],\n      [\n        \"▁relaxare\",\n        -12.991189956665039\n      ],\n      [\n        \"▁colabora\",\n        -12.99134349822998\n      ],\n      [\n        \"liefer\",\n        -12.99142837524414\n      ],\n      [\n        \"▁ordentlich\",\n        -12.991486549377441\n      ],\n      [\n        \"▁dauerhaft\",\n        -12.991535186767578\n      ],\n      [\n        \"kammer\",\n        -12.991572380065918\n      ],\n      [\n        \"▁Basket\",\n        -12.991579055786133\n      ],\n      [\n        \"Site\",\n        -12.991657257080078\n      ],\n      [\n        \"▁Regina\",\n        -12.991716384887695\n      ],\n      [\n        \"▁simulate\",\n        -12.991868019104004\n      ],\n      [\n        \"▁wrestle\",\n        -12.991939544677734\n      ],\n      [\n        \"wertig\",\n        -12.991986274719238\n      ],\n      [\n        \"▁Christie\",\n        -12.992018699645996\n      ],\n      [\n        \"download\",\n        -12.992033004760742\n      ],\n      [\n        \"▁torch\",\n        -12.992213249206543\n      ],\n      [\n        \"riya\",\n        -12.992216110229492\n      ],\n      [\n        \"▁Grie\",\n        -12.992247581481934\n      ],\n      [\n        \"bitten\",\n        -12.992356300354004\n      ],\n      [\n        \"▁spezialisiert\",\n        -12.99238109588623\n      ],\n      [\n        \"▁Parade\",\n        -12.992408752441406\n      ],\n      [\n        \"▁migraine\",\n        -12.992830276489258\n      ],\n      [\n        \"▁Armstrong\",\n        -12.992846488952637\n      ],\n      [\n        \"▁cutie\",\n        -12.9928560256958\n      ],\n      [\n        \"▁bullying\",\n        -12.992889404296875\n      ],\n      [\n        \"▁Estonia\",\n        -12.99293041229248\n      ],\n      [\n        \"▁harvested\",\n        -12.992948532104492\n      ],\n      [\n        \"▁Hunger\",\n        -12.992971420288086\n      ],\n      [\n        \"▁frapp\",\n        -12.992999076843262\n      ],\n      [\n        \"REM\",\n        -12.993117332458496\n      ],\n      [\n        \"sensor\",\n        -12.993189811706543\n      ],\n      [\n        \"▁GREAT\",\n        -12.993293762207031\n      ],\n      [\n        \"▁thyroid\",\n        -12.993302345275879\n      ],\n      [\n        \"▁mărturi\",\n        -12.993335723876953\n      ],\n      [\n        \"ocupă\",\n        -12.993809700012207\n      ],\n      [\n        \"▁Wealth\",\n        -12.993812561035156\n      ],\n      [\n        \"▁convins\",\n        -12.993841171264648\n      ],\n      [\n        \"141\",\n        -12.993876457214355\n      ],\n      [\n        \"▁vingt\",\n        -12.993901252746582\n      ],\n      [\n        \"▁revel\",\n        -12.994054794311523\n      ],\n      [\n        \"▁Adri\",\n        -12.994083404541016\n      ],\n      [\n        \"▁remix\",\n        -12.994207382202148\n      ],\n      [\n        \"▁fermentation\",\n        -12.99425220489502\n      ],\n      [\n        \"▁achiziti\",\n        -12.994352340698242\n      ],\n      [\n        \"dream\",\n        -12.994426727294922\n      ],\n      [\n        \"▁contemporan\",\n        -12.994632720947266\n      ],\n      [\n        \"▁youngsters\",\n        -12.994685173034668\n      ],\n      [\n        \"▁Hartford\",\n        -12.994745254516602\n      ],\n      [\n        \"▁Wagen\",\n        -12.994988441467285\n      ],\n      [\n        \"▁Celebr\",\n        -12.995214462280273\n      ],\n      [\n        \"leveraging\",\n        -12.99527645111084\n      ],\n      [\n        \"▁Iasi\",\n        -12.99549674987793\n      ],\n      [\n        \"tackling\",\n        -12.9955415725708\n      ],\n      [\n        \"▁intrinsic\",\n        -12.995553970336914\n      ],\n      [\n        \"▁Macedon\",\n        -12.995603561401367\n      ],\n      [\n        \"NIA\",\n        -12.995784759521484\n      ],\n      [\n        \"▁bliss\",\n        -12.995905876159668\n      ],\n      [\n        \"▁gradual\",\n        -12.995908737182617\n      ],\n      [\n        \"▁inregistrat\",\n        -12.995981216430664\n      ],\n      [\n        \"▁volleyball\",\n        -12.995986938476562\n      ],\n      [\n        \"▁offiziell\",\n        -12.996054649353027\n      ],\n      [\n        \"▁carré\",\n        -12.99611759185791\n      ],\n      [\n        \"Mostly\",\n        -12.996174812316895\n      ],\n      [\n        \"▁Harley\",\n        -12.996193885803223\n      ],\n      [\n        \"▁locati\",\n        -12.996216773986816\n      ],\n      [\n        \"▁Klo\",\n        -12.996223449707031\n      ],\n      [\n        \"▁Equal\",\n        -12.996238708496094\n      ],\n      [\n        \"▁citat\",\n        -12.996369361877441\n      ],\n      [\n        \"▁argint\",\n        -12.996478080749512\n      ],\n      [\n        \"prüft\",\n        -12.996528625488281\n      ],\n      [\n        \"▁Fence\",\n        -12.996600151062012\n      ],\n      [\n        \"positive\",\n        -12.996988296508789\n      ],\n      [\n        \"▁Kaz\",\n        -12.997245788574219\n      ],\n      [\n        \"▁distortion\",\n        -12.997342109680176\n      ],\n      [\n        \"▁sâmbătă\",\n        -12.997342109680176\n      ],\n      [\n        \"▁frontière\",\n        -12.997346878051758\n      ],\n      [\n        \"▁revanch\",\n        -12.997394561767578\n      ],\n      [\n        \"▁Held\",\n        -12.997465133666992\n      ],\n      [\n        \"▁Hobb\",\n        -12.99776554107666\n      ],\n      [\n        \"▁reuşit\",\n        -12.997796058654785\n      ],\n      [\n        \"deem\",\n        -12.997880935668945\n      ],\n      [\n        \"▁dorint\",\n        -12.997902870178223\n      ],\n      [\n        \"▁Anlagen\",\n        -12.997908592224121\n      ],\n      [\n        \"▁cheval\",\n        -12.997973442077637\n      ],\n      [\n        \"630\",\n        -12.99806022644043\n      ],\n      [\n        \"▁implementare\",\n        -12.99808406829834\n      ],\n      [\n        \"▁curator\",\n        -12.99821662902832\n      ],\n      [\n        \"▁legislator\",\n        -12.998247146606445\n      ],\n      [\n        \"▁potassium\",\n        -12.998247146606445\n      ],\n      [\n        \"▁veterinarian\",\n        -12.998247146606445\n      ],\n      [\n        \"▁domenii\",\n        -12.998273849487305\n      ],\n      [\n        \"▁revue\",\n        -12.998310089111328\n      ],\n      [\n        \"Vielen\",\n        -12.998333930969238\n      ],\n      [\n        \"africain\",\n        -12.998570442199707\n      ],\n      [\n        \"before\",\n        -12.998680114746094\n      ],\n      [\n        \"▁Bestandteil\",\n        -12.998702049255371\n      ],\n      [\n        \"▁(2010)\",\n        -12.998767852783203\n      ],\n      [\n        \"▁Arlington\",\n        -12.999153137207031\n      ],\n      [\n        \"▁Gründung\",\n        -12.999153137207031\n      ],\n      [\n        \"▁Sprinkle\",\n        -12.999153137207031\n      ],\n      [\n        \"▁Princeton\",\n        -12.999186515808105\n      ],\n      [\n        \"chirurg\",\n        -12.999228477478027\n      ],\n      [\n        \"▁laissé\",\n        -12.999357223510742\n      ],\n      [\n        \"whoever\",\n        -12.999384880065918\n      ],\n      [\n        \"▁pasture\",\n        -12.999431610107422\n      ],\n      [\n        \"ajute\",\n        -12.999436378479004\n      ],\n      [\n        \"▁joyful\",\n        -12.999494552612305\n      ],\n      [\n        \"etapa\",\n        -12.999905586242676\n      ],\n      [\n        \"ESP\",\n        -13.000017166137695\n      ],\n      [\n        \"▁Iohannis\",\n        -13.000059127807617\n      ],\n      [\n        \"▁10:30\",\n        -13.000127792358398\n      ],\n      [\n        \"▁Kingston\",\n        -13.000140190124512\n      ],\n      [\n        \"▁contender\",\n        -13.000164031982422\n      ],\n      [\n        \"▁Damage\",\n        -13.000177383422852\n      ],\n      [\n        \"▁schreibt\",\n        -13.000482559204102\n      ],\n      [\n        \"sstisch\",\n        -13.000631332397461\n      ],\n      [\n        \"Associated\",\n        -13.00072956085205\n      ],\n      [\n        \"▁disposable\",\n        -13.000782012939453\n      ],\n      [\n        \"veranstaltung\",\n        -13.00096607208252\n      ],\n      [\n        \"▁puppet\",\n        -13.00100040435791\n      ],\n      [\n        \"pong\",\n        -13.001093864440918\n      ],\n      [\n        \"▁Chronicle\",\n        -13.001176834106445\n      ],\n      [\n        \"222\",\n        -13.001286506652832\n      ],\n      [\n        \"intuit\",\n        -13.001396179199219\n      ],\n      [\n        \"inscrire\",\n        -13.001429557800293\n      ],\n      [\n        \"▁speeches\",\n        -13.001431465148926\n      ],\n      [\n        \"▁Eingang\",\n        -13.001775741577148\n      ],\n      [\n        \"▁Adidas\",\n        -13.001875877380371\n      ],\n      [\n        \"▁cemetery\",\n        -13.001877784729004\n      ],\n      [\n        \"▁juicy\",\n        -13.001885414123535\n      ],\n      [\n        \"▁wertvolle\",\n        -13.0018892288208\n      ],\n      [\n        \"▁militari\",\n        -13.001917839050293\n      ],\n      [\n        \"China\",\n        -13.00196361541748\n      ],\n      [\n        \"ecția\",\n        -13.002041816711426\n      ],\n      [\n        \"luster\",\n        -13.002063751220703\n      ],\n      [\n        \"auftrag\",\n        -13.00234317779541\n      ],\n      [\n        \"▁Marius\",\n        -13.002523422241211\n      ],\n      [\n        \"▁crossover\",\n        -13.002555847167969\n      ],\n      [\n        \"▁enthusiast\",\n        -13.002555847167969\n      ],\n      [\n        \"▁cantitate\",\n        -13.002630233764648\n      ],\n      [\n        \"▁animat\",\n        -13.002634048461914\n      ],\n      [\n        \"Park\",\n        -13.002793312072754\n      ],\n      [\n        \"▁unchanged\",\n        -13.00279426574707\n      ],\n      [\n        \"russia\",\n        -13.00281810760498\n      ],\n      [\n        \"instant\",\n        -13.002833366394043\n      ],\n      [\n        \"ţiunea\",\n        -13.002835273742676\n      ],\n      [\n        \"▁franchi\",\n        -13.002920150756836\n      ],\n      [\n        \"▁mobiliz\",\n        -13.002963066101074\n      ],\n      [\n        \"athlet\",\n        -13.003013610839844\n      ],\n      [\n        \"▁Cardio\",\n        -13.0031099319458\n      ],\n      [\n        \"▁supus\",\n        -13.003119468688965\n      ],\n      [\n        \"▁Griff\",\n        -13.003137588500977\n      ],\n      [\n        \"flakes\",\n        -13.003217697143555\n      ],\n      [\n        \"soluble\",\n        -13.003250122070312\n      ],\n      [\n        \"Known\",\n        -13.003693580627441\n      ],\n      [\n        \"leaking\",\n        -13.003741264343262\n      ],\n      [\n        \"▁Holocaust\",\n        -13.004148483276367\n      ],\n      [\n        \"gift\",\n        -13.004197120666504\n      ],\n      [\n        \"▁tradiţi\",\n        -13.004359245300293\n      ],\n      [\n        \"▁southeast\",\n        -13.004498481750488\n      ],\n      [\n        \"▁correspondant\",\n        -13.00460147857666\n      ],\n      [\n        \"Isaiah\",\n        -13.004603385925293\n      ],\n      [\n        \"▁diagonal\",\n        -13.004606246948242\n      ],\n      [\n        \"▁Probabil\",\n        -13.004680633544922\n      ],\n      [\n        \"▁dégust\",\n        -13.004791259765625\n      ],\n      [\n        \"▁Naval\",\n        -13.004802703857422\n      ],\n      [\n        \"▁cultivation\",\n        -13.004839897155762\n      ],\n      [\n        \"▁Vertrieb\",\n        -13.004849433898926\n      ],\n      [\n        \"▁pony\",\n        -13.004854202270508\n      ],\n      [\n        \"▁Throw\",\n        -13.0050048828125\n      ],\n      [\n        \"little\",\n        -13.005010604858398\n      ],\n      [\n        \"▁remarque\",\n        -13.005074501037598\n      ],\n      [\n        \"▁parcare\",\n        -13.005085945129395\n      ],\n      [\n        \"3.8\",\n        -13.00518798828125\n      ],\n      [\n        \"▁renunt\",\n        -13.005330085754395\n      ],\n      [\n        \"▁Rewards\",\n        -13.005487442016602\n      ],\n      [\n        \"▁Thur\",\n        -13.005496978759766\n      ],\n      [\n        \"▁underestimate\",\n        -13.005515098571777\n      ],\n      [\n        \"▁frankly\",\n        -13.005516052246094\n      ],\n      [\n        \"Bretagne\",\n        -13.005517959594727\n      ],\n      [\n        \"axial\",\n        -13.005537986755371\n      ],\n      [\n        \"▁identities\",\n        -13.0055570602417\n      ],\n      [\n        \"▁Harvest\",\n        -13.00561237335205\n      ],\n      [\n        \"▁skippe\",\n        -13.00561237335205\n      ],\n      [\n        \"▁Boutique\",\n        -13.005670547485352\n      ],\n      [\n        \"▁intuition\",\n        -13.005746841430664\n      ],\n      [\n        \"▁Rotary\",\n        -13.00581169128418\n      ],\n      [\n        \"▁SERVICE\",\n        -13.005875587463379\n      ],\n      [\n        \"▁refill\",\n        -13.005915641784668\n      ],\n      [\n        \"▁arcade\",\n        -13.006060600280762\n      ],\n      [\n        \"▁komme\",\n        -13.006386756896973\n      ],\n      [\n        \"▁irrelevant\",\n        -13.006427764892578\n      ],\n      [\n        \"▁Sortiment\",\n        -13.006429672241211\n      ],\n      [\n        \"▁scriitor\",\n        -13.006488800048828\n      ],\n      [\n        \"▁clicked\",\n        -13.006516456604004\n      ],\n      [\n        \"▁ciel\",\n        -13.006610870361328\n      ],\n      [\n        \"▁Caesar\",\n        -13.00680160522461\n      ],\n      [\n        \"hound\",\n        -13.006803512573242\n      ],\n      [\n        \"whipped\",\n        -13.006843566894531\n      ],\n      [\n        \"licate\",\n        -13.006867408752441\n      ],\n      [\n        \"▁formatting\",\n        -13.006986618041992\n      ],\n      [\n        \"▁mosaic\",\n        -13.007028579711914\n      ],\n      [\n        \"(2017)\",\n        -13.007122039794922\n      ],\n      [\n        \"777\",\n        -13.007257461547852\n      ],\n      [\n        \"▁Messenger\",\n        -13.007342338562012\n      ],\n      [\n        \"dulci\",\n        -13.007369041442871\n      ],\n      [\n        \"▁(2016)\",\n        -13.007420539855957\n      ],\n      [\n        \"▁popcorn\",\n        -13.007425308227539\n      ],\n      [\n        \"▁Presidential\",\n        -13.007497787475586\n      ],\n      [\n        \"▁brokerage\",\n        -13.007564544677734\n      ],\n      [\n        \"dachte\",\n        -13.00762939453125\n      ],\n      [\n        \"verkauf\",\n        -13.00768756866455\n      ],\n      [\n        \"▁pomme\",\n        -13.007721900939941\n      ],\n      [\n        \"▁fret\",\n        -13.007822036743164\n      ],\n      [\n        \"▁revere\",\n        -13.007894515991211\n      ],\n      [\n        \"▁Canvas\",\n        -13.008092880249023\n      ],\n      [\n        \"▁Nottingham\",\n        -13.008255004882812\n      ],\n      [\n        \"▁Refuge\",\n        -13.008257865905762\n      ],\n      [\n        \"▁injustice\",\n        -13.008259773254395\n      ],\n      [\n        \"▁External\",\n        -13.008264541625977\n      ],\n      [\n        \"dincolo\",\n        -13.008304595947266\n      ],\n      [\n        \"directing\",\n        -13.008511543273926\n      ],\n      [\n        \"▁Toulouse\",\n        -13.008710861206055\n      ],\n      [\n        \"▁cheltuieli\",\n        -13.008746147155762\n      ],\n      [\n        \"▁distrus\",\n        -13.008816719055176\n      ],\n      [\n        \"impôt\",\n        -13.008912086486816\n      ],\n      [\n        \"landschaft\",\n        -13.008964538574219\n      ],\n      [\n        \"passion\",\n        -13.00897216796875\n      ],\n      [\n        \"▁Hobby\",\n        -13.009099006652832\n      ],\n      [\n        \"significant\",\n        -13.009115219116211\n      ],\n      [\n        \"▁Guinea\",\n        -13.009209632873535\n      ],\n      [\n        \"pecializing\",\n        -13.009237289428711\n      ],\n      [\n        \"pozitie\",\n        -13.009245872497559\n      ],\n      [\n        \"bourne\",\n        -13.009295463562012\n      ],\n      [\n        \"▁mâini\",\n        -13.00933837890625\n      ],\n      [\n        \"▁CFR\",\n        -13.009395599365234\n      ],\n      [\n        \"▁Konflikt\",\n        -13.009626388549805\n      ],\n      [\n        \"▁Vodafone\",\n        -13.009626388549805\n      ],\n      [\n        \"OUG\",\n        -13.009681701660156\n      ],\n      [\n        \"▁Übersicht\",\n        -13.009735107421875\n      ],\n      [\n        \"negotiated\",\n        -13.009903907775879\n      ],\n      [\n        \"▁gliss\",\n        -13.010042190551758\n      ],\n      [\n        \"▁Kapital\",\n        -13.010111808776855\n      ],\n      [\n        \"QC\",\n        -13.0101318359375\n      ],\n      [\n        \"▁gentleman\",\n        -13.01024341583252\n      ],\n      [\n        \"Inde\",\n        -13.010514259338379\n      ],\n      [\n        \"▁immensely\",\n        -13.010639190673828\n      ],\n      [\n        \"Business\",\n        -13.010702133178711\n      ],\n      [\n        \"▁04/2\",\n        -13.010882377624512\n      ],\n      [\n        \"societatea\",\n        -13.010973930358887\n      ],\n      [\n        \"fluoxetine\",\n        -13.011000633239746\n      ],\n      [\n        \"▁Wachstum\",\n        -13.011000633239746\n      ],\n      [\n        \"▁récit\",\n        -13.011011123657227\n      ],\n      [\n        \"▁Preisvergleich\",\n        -13.011034965515137\n      ],\n      [\n        \"▁Mohammed\",\n        -13.011460304260254\n      ],\n      [\n        \"gefangen\",\n        -13.011462211608887\n      ],\n      [\n        \"▁calibration\",\n        -13.011608123779297\n      ],\n      [\n        \"bekam\",\n        -13.011728286743164\n      ],\n      [\n        \"▁FUN\",\n        -13.011758804321289\n      ],\n      [\n        \"wasting\",\n        -13.011839866638184\n      ],\n      [\n        \"▁prosper\",\n        -13.011862754821777\n      ],\n      [\n        \"▁Afghan\",\n        -13.011919021606445\n      ],\n      [\n        \"▁Heroes\",\n        -13.011921882629395\n      ],\n      [\n        \"▁VMware\",\n        -13.011927604675293\n      ],\n      [\n        \"exception\",\n        -13.011969566345215\n      ],\n      [\n        \"▁înlocui\",\n        -13.01244831085205\n      ],\n      [\n        \"Neu\",\n        -13.01246452331543\n      ],\n      [\n        \"initiation\",\n        -13.01250171661377\n      ],\n      [\n        \"▁Peel\",\n        -13.01281452178955\n      ],\n      [\n        \"▁cunoaste\",\n        -13.012836456298828\n      ],\n      [\n        \"▁menschliche\",\n        -13.012849807739258\n      ],\n      [\n        \"▁poarta\",\n        -13.012852668762207\n      ],\n      [\n        \"▁congestion\",\n        -13.012930870056152\n      ],\n      [\n        \"▁îmbunătăț\",\n        -13.013103485107422\n      ],\n      [\n        \"EUR\",\n        -13.013171195983887\n      ],\n      [\n        \"▁sushi\",\n        -13.01326847076416\n      ],\n      [\n        \"Jährige\",\n        -13.01329517364502\n      ],\n      [\n        \"espoir\",\n        -13.013423919677734\n      ],\n      [\n        \"inspected\",\n        -13.013444900512695\n      ],\n      [\n        \"▁etape\",\n        -13.013677597045898\n      ],\n      [\n        \"▁pharmacist\",\n        -13.013754844665527\n      ],\n      [\n        \"flect\",\n        -13.013840675354004\n      ],\n      [\n        \"Changing\",\n        -13.013932228088379\n      ],\n      [\n        \"▁radiant\",\n        -13.014046669006348\n      ],\n      [\n        \"Daddy\",\n        -13.014275550842285\n      ],\n      [\n        \"▁categorii\",\n        -13.014360427856445\n      ],\n      [\n        \"quête\",\n        -13.014628410339355\n      ],\n      [\n        \"▁skincare\",\n        -13.014657020568848\n      ],\n      [\n        \"hébergement\",\n        -13.014674186706543\n      ],\n      [\n        \"840\",\n        -13.01477336883545\n      ],\n      [\n        \"awaiting\",\n        -13.014822006225586\n      ],\n      [\n        \"▁murdered\",\n        -13.014841079711914\n      ],\n      [\n        \"▁proficient\",\n        -13.014863967895508\n      ],\n      [\n        \"▁chauffe\",\n        -13.014899253845215\n      ],\n      [\n        \"▁contur\",\n        -13.014937400817871\n      ],\n      [\n        \"▁rejoindre\",\n        -13.015145301818848\n      ],\n      [\n        \"▁foloseste\",\n        -13.01521110534668\n      ],\n      [\n        \"▁Grup\",\n        -13.01535701751709\n      ],\n      [\n        \"152\",\n        -13.01541519165039\n      ],\n      [\n        \"▁workspace\",\n        -13.015438079833984\n      ],\n      [\n        \"▁primitive\",\n        -13.015546798706055\n      ],\n      [\n        \"▁Ginger\",\n        -13.015557289123535\n      ],\n      [\n        \"▁chemotherapy\",\n        -13.015595436096191\n      ],\n      [\n        \"▁platinum\",\n        -13.015596389770508\n      ],\n      [\n        \"▁sarcina\",\n        -13.01559829711914\n      ],\n      [\n        \"▁revival\",\n        -13.015820503234863\n      ],\n      [\n        \"▁Meditation\",\n        -13.016111373901367\n      ],\n      [\n        \"▁Vogel\",\n        -13.0161714553833\n      ],\n      [\n        \"IMA\",\n        -13.016359329223633\n      ],\n      [\n        \"▁handset\",\n        -13.016486167907715\n      ],\n      [\n        \"▁Nachmittag\",\n        -13.01651668548584\n      ],\n      [\n        \"▁déchets\",\n        -13.016517639160156\n      ],\n      [\n        \"▁Cornwall\",\n        -13.0165433883667\n      ],\n      [\n        \"▁Curry\",\n        -13.016605377197266\n      ],\n      [\n        \"▁cuplu\",\n        -13.016607284545898\n      ],\n      [\n        \"▁Birth\",\n        -13.016822814941406\n      ],\n      [\n        \"forward\",\n        -13.016936302185059\n      ],\n      [\n        \"Dezvoltare\",\n        -13.016977310180664\n      ],\n      [\n        \"▁irgendwie\",\n        -13.016980171203613\n      ],\n      [\n        \"▁erzielt\",\n        -13.016993522644043\n      ],\n      [\n        \"LOS\",\n        -13.01700496673584\n      ],\n      [\n        \"▁overload\",\n        -13.01708984375\n      ],\n      [\n        \"▁repay\",\n        -13.01713752746582\n      ],\n      [\n        \"urlaub\",\n        -13.017155647277832\n      ],\n      [\n        \"7.0\",\n        -13.01716423034668\n      ],\n      [\n        \"▁Wheat\",\n        -13.01748275756836\n      ],\n      [\n        \"▁degrab\",\n        -13.017488479614258\n      ],\n      [\n        \"▁Brock\",\n        -13.017491340637207\n      ],\n      [\n        \"▁inhabit\",\n        -13.0176362991333\n      ],\n      [\n        \"▁Speech\",\n        -13.017834663391113\n      ],\n      [\n        \"directional\",\n        -13.017862319946289\n      ],\n      [\n        \"▁Mandel\",\n        -13.017909049987793\n      ],\n      [\n        \"▁erscheinen\",\n        -13.01791763305664\n      ],\n      [\n        \"consciously\",\n        -13.018059730529785\n      ],\n      [\n        \"▁sunet\",\n        -13.0182523727417\n      ],\n      [\n        \"▁stole\",\n        -13.018259048461914\n      ],\n      [\n        \"▁Utilis\",\n        -13.018349647521973\n      ],\n      [\n        \"▁obstruction\",\n        -13.01852798461914\n      ],\n      [\n        \"▁mindfulness\",\n        -13.0186767578125\n      ],\n      [\n        \"partnering\",\n        -13.01868724822998\n      ],\n      [\n        \"CSI\",\n        -13.018819808959961\n      ],\n      [\n        \"204\",\n        -13.01905632019043\n      ],\n      [\n        \"▁squirrel\",\n        -13.019286155700684\n      ],\n      [\n        \"▁Rwanda\",\n        -13.01975154876709\n      ],\n      [\n        \"▁hunters\",\n        -13.019850730895996\n      ],\n      [\n        \"▁revitaliz\",\n        -13.02022647857666\n      ],\n      [\n        \"▁avansat\",\n        -13.020232200622559\n      ],\n      [\n        \"▁Yamaha\",\n        -13.020294189453125\n      ],\n      [\n        \"foto\",\n        -13.020435333251953\n      ],\n      [\n        \"▁Vegan\",\n        -13.020469665527344\n      ],\n      [\n        \"▁pitched\",\n        -13.02053165435791\n      ],\n      [\n        \"▁Vortrag\",\n        -13.020540237426758\n      ],\n      [\n        \"traditional\",\n        -13.020809173583984\n      ],\n      [\n        \"offrent\",\n        -13.021024703979492\n      ],\n      [\n        \"▁Expression\",\n        -13.021315574645996\n      ],\n      [\n        \"▁apprécié\",\n        -13.021354675292969\n      ],\n      [\n        \"▁Christina\",\n        -13.021408081054688\n      ],\n      [\n        \"eilig\",\n        -13.021464347839355\n      ],\n      [\n        \"▁verhindern\",\n        -13.021599769592285\n      ],\n      [\n        \"culturii\",\n        -13.021607398986816\n      ],\n      [\n        \"Aşa\",\n        -13.021703720092773\n      ],\n      [\n        \"▁enamel\",\n        -13.021756172180176\n      ],\n      [\n        \"▁fördern\",\n        -13.021771430969238\n      ],\n      [\n        \"▁acheté\",\n        -13.021798133850098\n      ],\n      [\n        \"▁eventuell\",\n        -13.021842956542969\n      ],\n      [\n        \"▁Sino\",\n        -13.021873474121094\n      ],\n      [\n        \"▁totodat\",\n        -13.022008895874023\n      ],\n      [\n        \"accelerated\",\n        -13.022202491760254\n      ],\n      [\n        \"▁strengthened\",\n        -13.02245044708252\n      ],\n      [\n        \"corro\",\n        -13.022482872009277\n      ],\n      [\n        \"4,5\",\n        -13.02253246307373\n      ],\n      [\n        \"▁Beverly\",\n        -13.022533416748047\n      ],\n      [\n        \"ulevard\",\n        -13.022615432739258\n      ],\n      [\n        \"▁hamper\",\n        -13.022644996643066\n      ],\n      [\n        \"▁Tempe\",\n        -13.02268123626709\n      ],\n      [\n        \"▁Yacht\",\n        -13.022799491882324\n      ],\n      [\n        \"▁LGBT\",\n        -13.022871017456055\n      ],\n      [\n        \"▁fingertips\",\n        -13.022991180419922\n      ],\n      [\n        \"▁Auftraggeber\",\n        -13.02299976348877\n      ],\n      [\n        \"▁harbour\",\n        -13.0230131149292\n      ],\n      [\n        \"blew\",\n        -13.0230712890625\n      ],\n      [\n        \"▁ideology\",\n        -13.023115158081055\n      ],\n      [\n        \"▁covenant\",\n        -13.023170471191406\n      ],\n      [\n        \"▁faction\",\n        -13.023419380187988\n      ],\n      [\n        \"▁animé\",\n        -13.023481369018555\n      ],\n      [\n        \"energie\",\n        -13.023515701293945\n      ],\n      [\n        \"iterführende\",\n        -13.02369499206543\n      ],\n      [\n        \"▁MAI\",\n        -13.023784637451172\n      ],\n      [\n        \"▁pluie\",\n        -13.023905754089355\n      ],\n      [\n        \"▁cathedral\",\n        -13.023919105529785\n      ],\n      [\n        \"▁chiropractic\",\n        -13.023919105529785\n      ],\n      [\n        \"monies\",\n        -13.023968696594238\n      ],\n      [\n        \"▁contraction\",\n        -13.024054527282715\n      ],\n      [\n        \"pvc\",\n        -13.024202346801758\n      ],\n      [\n        \"staff\",\n        -13.024209022521973\n      ],\n      [\n        \"BIT\",\n        -13.024216651916504\n      ],\n      [\n        \"EET\",\n        -13.024514198303223\n      ],\n      [\n        \"▁sanction\",\n        -13.024575233459473\n      ],\n      [\n        \"▁Reiki\",\n        -13.024709701538086\n      ],\n      [\n        \"Trying\",\n        -13.024772644042969\n      ],\n      [\n        \"▁endangered\",\n        -13.024847984313965\n      ],\n      [\n        \"▁Emperor\",\n        -13.024849891662598\n      ],\n      [\n        \"▁empfi\",\n        -13.024909973144531\n      ],\n      [\n        \"animation\",\n        -13.024998664855957\n      ],\n      [\n        \"207\",\n        -13.025029182434082\n      ],\n      [\n        \"separating\",\n        -13.02512264251709\n      ],\n      [\n        \"▁lucrative\",\n        -13.025148391723633\n      ],\n      [\n        \"▁ortho\",\n        -13.02524185180664\n      ],\n      [\n        \"variété\",\n        -13.025266647338867\n      ],\n      [\n        \"hésit\",\n        -13.025287628173828\n      ],\n      [\n        \"nuances\",\n        -13.025289535522461\n      ],\n      [\n        \"▁$250\",\n        -13.025394439697266\n      ],\n      [\n        \"▁drumuri\",\n        -13.025435447692871\n      ],\n      [\n        \"▁unsafe\",\n        -13.025446891784668\n      ],\n      [\n        \"▁1943\",\n        -13.025477409362793\n      ],\n      [\n        \"▁automatique\",\n        -13.025524139404297\n      ],\n      [\n        \"billed\",\n        -13.025585174560547\n      ],\n      [\n        \"▁rectangle\",\n        -13.02578067779541\n      ],\n      [\n        \"▁Spannung\",\n        -13.025781631469727\n      ],\n      [\n        \"▁dévoil\",\n        -13.025790214538574\n      ],\n      [\n        \"▁perimeter\",\n        -13.02580738067627\n      ],\n      [\n        \"▁imaginative\",\n        -13.02581787109375\n      ],\n      [\n        \"actifs\",\n        -13.025851249694824\n      ],\n      [\n        \"neuve\",\n        -13.0259428024292\n      ],\n      [\n        \"leagă\",\n        -13.026269912719727\n      ],\n      [\n        \"gehende\",\n        -13.026700973510742\n      ],\n      [\n        \"▁Gorgeous\",\n        -13.026708602905273\n      ],\n      [\n        \"▁impeccable\",\n        -13.026708602905273\n      ],\n      [\n        \"▁Curtain\",\n        -13.026718139648438\n      ],\n      [\n        \"▁presume\",\n        -13.026731491088867\n      ],\n      [\n        \"surpassed\",\n        -13.02687931060791\n      ],\n      [\n        \"schiff\",\n        -13.026927947998047\n      ],\n      [\n        \"Allied\",\n        -13.02699089050293\n      ],\n      [\n        \"fanden\",\n        -13.027080535888672\n      ],\n      [\n        \"▁célébr\",\n        -13.027174949645996\n      ],\n      [\n        \"▁phénomène\",\n        -13.027174949645996\n      ],\n      [\n        \"▁Powell\",\n        -13.027413368225098\n      ],\n      [\n        \"jean\",\n        -13.027631759643555\n      ],\n      [\n        \"▁peculiar\",\n        -13.027640342712402\n      ],\n      [\n        \"▁Antarctic\",\n        -13.027641296386719\n      ],\n      [\n        \"▁gradient\",\n        -13.027663230895996\n      ],\n      [\n        \"▁brainstorm\",\n        -13.027704238891602\n      ],\n      [\n        \"échapp\",\n        -13.027726173400879\n      ],\n      [\n        \"Bot\",\n        -13.027738571166992\n      ],\n      [\n        \"cita\",\n        -13.027743339538574\n      ],\n      [\n        \"▁lumber\",\n        -13.027752876281738\n      ],\n      [\n        \"weichen\",\n        -13.027852058410645\n      ],\n      [\n        \"▁Halte\",\n        -13.028024673461914\n      ],\n      [\n        \"▁noștri\",\n        -13.028107643127441\n      ],\n      [\n        \"construction\",\n        -13.028165817260742\n      ],\n      [\n        \"DOC\",\n        -13.028236389160156\n      ],\n      [\n        \"▁aluat\",\n        -13.028319358825684\n      ],\n      [\n        \"streamlined\",\n        -13.028462409973145\n      ],\n      [\n        \"Bio\",\n        -13.028494834899902\n      ],\n      [\n        \"▁nutritious\",\n        -13.028573036193848\n      ],\n      [\n        \"▁délicat\",\n        -13.0286283493042\n      ],\n      [\n        \"▁sticla\",\n        -13.028656959533691\n      ],\n      [\n        \"OVE\",\n        -13.028721809387207\n      ],\n      [\n        \"▁panneau\",\n        -13.028793334960938\n      ],\n      [\n        \"▁hetero\",\n        -13.028801918029785\n      ],\n      [\n        \"▁annul\",\n        -13.028839111328125\n      ],\n      [\n        \"IDA\",\n        -13.028935432434082\n      ],\n      [\n        \"▁pitches\",\n        -13.028960227966309\n      ],\n      [\n        \"▁Edmonton\",\n        -13.029040336608887\n      ],\n      [\n        \"mediated\",\n        -13.029136657714844\n      ],\n      [\n        \"AFP\",\n        -13.029139518737793\n      ],\n      [\n        \"▁Tibetan\",\n        -13.029228210449219\n      ],\n      [\n        \"intégration\",\n        -13.02934455871582\n      ],\n      [\n        \"▁Rox\",\n        -13.0294771194458\n      ],\n      [\n        \"energia\",\n        -13.02950668334961\n      ],\n      [\n        \"▁reconnaît\",\n        -13.029509544372559\n      ],\n      [\n        \"▁ține\",\n        -13.029525756835938\n      ],\n      [\n        \"▁ignition\",\n        -13.029534339904785\n      ],\n      [\n        \"Foarte\",\n        -13.029541015625\n      ],\n      [\n        \"▁HOME\",\n        -13.029545783996582\n      ],\n      [\n        \"▁MLB\",\n        -13.029545783996582\n      ],\n      [\n        \"▁Wähle\",\n        -13.029590606689453\n      ],\n      [\n        \"▁Merkel\",\n        -13.029658317565918\n      ],\n      [\n        \"poarte\",\n        -13.029664993286133\n      ],\n      [\n        \"ALT\",\n        -13.02979850769043\n      ],\n      [\n        \"jenigen\",\n        -13.029985427856445\n      ],\n      [\n        \"▁conflit\",\n        -13.029987335205078\n      ],\n      [\n        \"▁buckle\",\n        -13.029996871948242\n      ],\n      [\n        \"▁cacao\",\n        -13.030035018920898\n      ],\n      [\n        \"▁représentation\",\n        -13.030076026916504\n      ],\n      [\n        \"incepand\",\n        -13.030267715454102\n      ],\n      [\n        \"▁Carroll\",\n        -13.030306816101074\n      ],\n      [\n        \"▁clientilor\",\n        -13.030370712280273\n      ],\n      [\n        \"▁immunity\",\n        -13.030441284179688\n      ],\n      [\n        \"oût\",\n        -13.03044319152832\n      ],\n      [\n        \"▁Witch\",\n        -13.030488014221191\n      ],\n      [\n        \"▁Wolfgang\",\n        -13.030532836914062\n      ],\n      [\n        \"▁prudent\",\n        -13.030701637268066\n      ],\n      [\n        \"fotograf\",\n        -13.03084945678711\n      ],\n      [\n        \"paar\",\n        -13.030871391296387\n      ],\n      [\n        \"ergeti\",\n        -13.030927658081055\n      ],\n      [\n        \"▁empowerment\",\n        -13.031112670898438\n      ],\n      [\n        \"▁Admir\",\n        -13.03122329711914\n      ],\n      [\n        \"▁complémentaire\",\n        -13.031340599060059\n      ],\n      [\n        \"▁angepasst\",\n        -13.031376838684082\n      ],\n      [\n        \"▁flirt\",\n        -13.031376838684082\n      ],\n      [\n        \"▁elektronische\",\n        -13.031388282775879\n      ],\n      [\n        \"▁stereotype\",\n        -13.03140640258789\n      ],\n      [\n        \"SIL\",\n        -13.031465530395508\n      ],\n      [\n        \"▁Realtor\",\n        -13.031471252441406\n      ],\n      [\n        \"Edit\",\n        -13.031774520874023\n      ],\n      [\n        \"requête\",\n        -13.03181266784668\n      ],\n      [\n        \"▁Herstellung\",\n        -13.031815528869629\n      ],\n      [\n        \"▁cyst\",\n        -13.031947135925293\n      ],\n      [\n        \"syndic\",\n        -13.031994819641113\n      ],\n      [\n        \"leni\",\n        -13.032007217407227\n      ],\n      [\n        \"▁fringe\",\n        -13.032020568847656\n      ],\n      [\n        \"▁Jardin\",\n        -13.032032012939453\n      ],\n      [\n        \"▁Vezi\",\n        -13.032052993774414\n      ],\n      [\n        \"▁Ausstattung\",\n        -13.032312393188477\n      ],\n      [\n        \"▁glide\",\n        -13.032590866088867\n      ],\n      [\n        \"▁Andere\",\n        -13.032758712768555\n      ],\n      [\n        \"▁Haftung\",\n        -13.032781600952148\n      ],\n      [\n        \"maßnahmen\",\n        -13.032788276672363\n      ],\n      [\n        \"▁recommandé\",\n        -13.032790184020996\n      ],\n      [\n        \"▁nave\",\n        -13.032793998718262\n      ],\n      [\n        \"viziune\",\n        -13.033051490783691\n      ],\n      [\n        \"▁stimulus\",\n        -13.033098220825195\n      ],\n      [\n        \"faulty\",\n        -13.0331449508667\n      ],\n      [\n        \"▁vicinity\",\n        -13.033249855041504\n      ],\n      [\n        \"▁turnaround\",\n        -13.033445358276367\n      ],\n      [\n        \"stammt\",\n        -13.033846855163574\n      ],\n      [\n        \"▁problemlos\",\n        -13.033856391906738\n      ],\n      [\n        \"▁Establish\",\n        -13.03415298461914\n      ],\n      [\n        \"▁Silva\",\n        -13.034172058105469\n      ],\n      [\n        \"▁muzică\",\n        -13.034187316894531\n      ],\n      [\n        \"▁theatrical\",\n        -13.03421401977539\n      ],\n      [\n        \"▁braid\",\n        -13.034242630004883\n      ],\n      [\n        \"▁blieb\",\n        -13.034276962280273\n      ],\n      [\n        \"158\",\n        -13.034296989440918\n      ],\n      [\n        \"▁ignorance\",\n        -13.034330368041992\n      ],\n      [\n        \"onset\",\n        -13.034416198730469\n      ],\n      [\n        \"zeitlich\",\n        -13.034523963928223\n      ],\n      [\n        \"▁Sink\",\n        -13.034523963928223\n      ],\n      [\n        \"▁caractéris\",\n        -13.034594535827637\n      ],\n      [\n        \"▁kreative\",\n        -13.03465747833252\n      ],\n      [\n        \"behörde\",\n        -13.034677505493164\n      ],\n      [\n        \"repairing\",\n        -13.034680366516113\n      ],\n      [\n        \"▁tumble\",\n        -13.034757614135742\n      ],\n      [\n        \"zione\",\n        -13.034871101379395\n      ],\n      [\n        \"▁Evil\",\n        -13.03494644165039\n      ],\n      [\n        \"▁popping\",\n        -13.034952163696289\n      ],\n      [\n        \"▁mutant\",\n        -13.035025596618652\n      ],\n      [\n        \"emme\",\n        -13.035030364990234\n      ],\n      [\n        \"▁Pleasant\",\n        -13.035125732421875\n      ],\n      [\n        \"▁appetizer\",\n        -13.035125732421875\n      ],\n      [\n        \"▁PLEASE\",\n        -13.035126686096191\n      ],\n      [\n        \"▁physiological\",\n        -13.035128593444824\n      ],\n      [\n        \"▁Facility\",\n        -13.035131454467773\n      ],\n      [\n        \"▁quirky\",\n        -13.035131454467773\n      ],\n      [\n        \"▁colectiv\",\n        -13.035154342651367\n      ],\n      [\n        \"151\",\n        -13.035181999206543\n      ],\n      [\n        \"August\",\n        -13.03531551361084\n      ],\n      [\n        \"▁Jewelry\",\n        -13.035327911376953\n      ],\n      [\n        \"▁ziar\",\n        -13.035481452941895\n      ],\n      [\n        \"▁puissant\",\n        -13.035489082336426\n      ],\n      [\n        \"▁Argument\",\n        -13.035595893859863\n      ],\n      [\n        \"▁Betracht\",\n        -13.035621643066406\n      ],\n      [\n        \"▁TRANS\",\n        -13.035636901855469\n      ],\n      [\n        \"Exception\",\n        -13.036011695861816\n      ],\n      [\n        \"nosti\",\n        -13.036083221435547\n      ],\n      [\n        \"▁Geographic\",\n        -13.036155700683594\n      ],\n      [\n        \"amazingly\",\n        -13.036173820495605\n      ],\n      [\n        \"▁météo\",\n        -13.036181449890137\n      ],\n      [\n        \"streit\",\n        -13.036314010620117\n      ],\n      [\n        \"▁idle\",\n        -13.036439895629883\n      ],\n      [\n        \"179\",\n        -13.036441802978516\n      ],\n      [\n        \"▁Bremen\",\n        -13.036534309387207\n      ],\n      [\n        \"▁Kläger\",\n        -13.03653621673584\n      ],\n      [\n        \"▁Grammy\",\n        -13.036598205566406\n      ],\n      [\n        \"▁Philosophy\",\n        -13.036613464355469\n      ],\n      [\n        \"▁utilizeaz\",\n        -13.036779403686523\n      ],\n      [\n        \"Accord\",\n        -13.036897659301758\n      ],\n      [\n        \"▁USDA\",\n        -13.036986351013184\n      ],\n      [\n        \"Continuing\",\n        -13.037010192871094\n      ],\n      [\n        \"geschenk\",\n        -13.037178039550781\n      ],\n      [\n        \"kredit\",\n        -13.037248611450195\n      ],\n      [\n        \"Laugh\",\n        -13.037297248840332\n      ],\n      [\n        \"oaring\",\n        -13.037406921386719\n      ],\n      [\n        \"▁Richter\",\n        -13.037460327148438\n      ],\n      [\n        \"▁Figur\",\n        -13.037938117980957\n      ],\n      [\n        \"▁inconsistent\",\n        -13.037947654724121\n      ],\n      [\n        \"cresterea\",\n        -13.038069725036621\n      ],\n      [\n        \"▁regeneration\",\n        -13.038130760192871\n      ],\n      [\n        \"speaking\",\n        -13.03818416595459\n      ],\n      [\n        \"▁nasal\",\n        -13.03824234008789\n      ],\n      [\n        \"▁partagé\",\n        -13.038259506225586\n      ],\n      [\n        \"▁Warranty\",\n        -13.038419723510742\n      ],\n      [\n        \"▁Mueller\",\n        -13.038501739501953\n      ],\n      [\n        \"formează\",\n        -13.038734436035156\n      ],\n      [\n        \"hundert\",\n        -13.038745880126953\n      ],\n      [\n        \"gemeldet\",\n        -13.038893699645996\n      ],\n      [\n        \"▁excursions\",\n        -13.038912773132324\n      ],\n      [\n        \"▁linii\",\n        -13.039066314697266\n      ],\n      [\n        \"gefährlich\",\n        -13.039067268371582\n      ],\n      [\n        \"▁schema\",\n        -13.03907299041748\n      ],\n      [\n        \"nişte\",\n        -13.039131164550781\n      ],\n      [\n        \"▁roadway\",\n        -13.039132118225098\n      ],\n      [\n        \"▁regression\",\n        -13.039135932922363\n      ],\n      [\n        \"▁mână\",\n        -13.039366722106934\n      ],\n      [\n        \"5.3\",\n        -13.039373397827148\n      ],\n      [\n        \"▁Spät\",\n        -13.039734840393066\n      ],\n      [\n        \"▁stubborn\",\n        -13.039833068847656\n      ],\n      [\n        \"efectele\",\n        -13.040030479431152\n      ],\n      [\n        \"▁atenţi\",\n        -13.040136337280273\n      ],\n      [\n        \"▁dovedit\",\n        -13.04018497467041\n      ],\n      [\n        \"▁Agile\",\n        -13.040190696716309\n      ],\n      [\n        \"denying\",\n        -13.04023265838623\n      ],\n      [\n        \"fluss\",\n        -13.040620803833008\n      ],\n      [\n        \"▁Calvin\",\n        -13.04066276550293\n      ],\n      [\n        \"Sculpt\",\n        -13.04083251953125\n      ],\n      [\n        \"égalité\",\n        -13.040884971618652\n      ],\n      [\n        \"ticket\",\n        -13.040977478027344\n      ],\n      [\n        \"marketed\",\n        -13.041044235229492\n      ],\n      [\n        \"holic\",\n        -13.041173934936523\n      ],\n      [\n        \"▁eCommerce\",\n        -13.041346549987793\n      ],\n      [\n        \"▁Slip\",\n        -13.041369438171387\n      ],\n      [\n        \"▁degradation\",\n        -13.041736602783203\n      ],\n      [\n        \"écart\",\n        -13.041742324829102\n      ],\n      [\n        \"AGR\",\n        -13.041807174682617\n      ],\n      [\n        \"▁burglar\",\n        -13.041837692260742\n      ],\n      [\n        \"▁conjug\",\n        -13.041903495788574\n      ],\n      [\n        \"LLP\",\n        -13.04194164276123\n      ],\n      [\n        \"couvrir\",\n        -13.041997909545898\n      ],\n      [\n        \"▁Hearing\",\n        -13.042001724243164\n      ],\n      [\n        \"▁canton\",\n        -13.042006492614746\n      ],\n      [\n        \"▁sixteen\",\n        -13.042068481445312\n      ],\n      [\n        \"▁Verlust\",\n        -13.042097091674805\n      ],\n      [\n        \"allied\",\n        -13.042268753051758\n      ],\n      [\n        \"Performing\",\n        -13.042393684387207\n      ],\n      [\n        \"▁évoqu\",\n        -13.042519569396973\n      ],\n      [\n        \"▁bookstore\",\n        -13.042574882507324\n      ],\n      [\n        \"▁intrebari\",\n        -13.042627334594727\n      ],\n      [\n        \"▁Hyderabad\",\n        -13.042668342590332\n      ],\n      [\n        \"▁repertoire\",\n        -13.042668342590332\n      ],\n      [\n        \"▁cablu\",\n        -13.042678833007812\n      ],\n      [\n        \"▁Costume\",\n        -13.04269790649414\n      ],\n      [\n        \"▁Shannon\",\n        -13.042713165283203\n      ],\n      [\n        \"▁glossy\",\n        -13.042800903320312\n      ],\n      [\n        \"▁cible\",\n        -13.042876243591309\n      ],\n      [\n        \"Saint\",\n        -13.042984008789062\n      ],\n      [\n        \"▁Ultima\",\n        -13.043042182922363\n      ],\n      [\n        \"▁teint\",\n        -13.0432767868042\n      ],\n      [\n        \"▁envision\",\n        -13.043477058410645\n      ],\n      [\n        \"▁thinner\",\n        -13.043478965759277\n      ],\n      [\n        \"ис\",\n        -13.043609619140625\n      ],\n      [\n        \"▁bladder\",\n        -13.043615341186523\n      ],\n      [\n        \"▁Prairie\",\n        -13.043618202209473\n      ],\n      [\n        \"▁puppies\",\n        -13.043633460998535\n      ],\n      [\n        \"▁overweight\",\n        -13.043729782104492\n      ],\n      [\n        \"destined\",\n        -13.043925285339355\n      ],\n      [\n        \"▁addictive\",\n        -13.043935775756836\n      ],\n      [\n        \"▁posé\",\n        -13.043993949890137\n      ],\n      [\n        \"▁mecanism\",\n        -13.044112205505371\n      ],\n      [\n        \"▁chorus\",\n        -13.044466972351074\n      ],\n      [\n        \"weder\",\n        -13.044528007507324\n      ],\n      [\n        \"▁begrüß\",\n        -13.044562339782715\n      ],\n      [\n        \"▁unsuccessful\",\n        -13.044562339782715\n      ],\n      [\n        \"executing\",\n        -13.044564247131348\n      ],\n      [\n        \"▁metadata\",\n        -13.044611930847168\n      ],\n      [\n        \"traiter\",\n        -13.044620513916016\n      ],\n      [\n        \"▁borrowed\",\n        -13.044649124145508\n      ],\n      [\n        \"▁aeroport\",\n        -13.044679641723633\n      ],\n      [\n        \"▁Bibli\",\n        -13.044761657714844\n      ],\n      [\n        \"▁youthful\",\n        -13.044902801513672\n      ],\n      [\n        \"▁Herbert\",\n        -13.044913291931152\n      ],\n      [\n        \"client\",\n        -13.04500961303711\n      ],\n      [\n        \"merci\",\n        -13.04520034790039\n      ],\n      [\n        \"▁Beast\",\n        -13.045210838317871\n      ],\n      [\n        \"▁Entrepreneur\",\n        -13.045230865478516\n      ],\n      [\n        \"▁Gelände\",\n        -13.045256614685059\n      ],\n      [\n        \"▁Packers\",\n        -13.045268058776855\n      ],\n      [\n        \"formarea\",\n        -13.045469284057617\n      ],\n      [\n        \"▁Kündigung\",\n        -13.045511245727539\n      ],\n      [\n        \"▁verdient\",\n        -13.045515060424805\n      ],\n      [\n        \"▁solutie\",\n        -13.045530319213867\n      ],\n      [\n        \"figuration\",\n        -13.045611381530762\n      ],\n      [\n        \"voluntarily\",\n        -13.045622825622559\n      ],\n      [\n        \"Gregor\",\n        -13.045742988586426\n      ],\n      [\n        \"▁Uncle\",\n        -13.04589557647705\n      ],\n      [\n        \"tarifs\",\n        -13.045907020568848\n      ],\n      [\n        \"▁écologique\",\n        -13.045987129211426\n      ],\n      [\n        \"▁Investition\",\n        -13.045991897583008\n      ],\n      [\n        \"exemplar\",\n        -13.046127319335938\n      ],\n      [\n        \"▁prevede\",\n        -13.046144485473633\n      ],\n      [\n        \"▁waive\",\n        -13.046147346496582\n      ],\n      [\n        \"▁Legion\",\n        -13.046156883239746\n      ],\n      [\n        \"similar\",\n        -13.046247482299805\n      ],\n      [\n        \"▁shareholder\",\n        -13.04626750946045\n      ],\n      [\n        \"▁oyster\",\n        -13.046476364135742\n      ],\n      [\n        \"▁Lightning\",\n        -13.046530723571777\n      ],\n      [\n        \"experimenting\",\n        -13.04662799835205\n      ],\n      [\n        \"▁replies\",\n        -13.04663372039795\n      ],\n      [\n        \"80,000\",\n        -13.046757698059082\n      ],\n      [\n        \"▁adept\",\n        -13.04692554473877\n      ],\n      [\n        \"▁Crăciun\",\n        -13.046935081481934\n      ],\n      [\n        \"▁sanatos\",\n        -13.046935081481934\n      ],\n      [\n        \"305\",\n        -13.04699993133545\n      ],\n      [\n        \"specialised\",\n        -13.047069549560547\n      ],\n      [\n        \"▁drummer\",\n        -13.047189712524414\n      ],\n      [\n        \"Applicants\",\n        -13.04741096496582\n      ],\n      [\n        \"objekt\",\n        -13.04741096496582\n      ],\n      [\n        \"▁Fifth\",\n        -13.047446250915527\n      ],\n      [\n        \"rgic\",\n        -13.047567367553711\n      ],\n      [\n        \"theater\",\n        -13.047635078430176\n      ],\n      [\n        \"▁terminé\",\n        -13.047852516174316\n      ],\n      [\n        \"▁Englisch\",\n        -13.047894477844238\n      ],\n      [\n        \"▁Oradea\",\n        -13.047898292541504\n      ],\n      [\n        \"possesses\",\n        -13.0479097366333\n      ],\n      [\n        \"illiers\",\n        -13.047986030578613\n      ],\n      [\n        \"▁refurbish\",\n        -13.048110961914062\n      ],\n      [\n        \"graphie\",\n        -13.04814338684082\n      ],\n      [\n        \"▁Booth\",\n        -13.048174858093262\n      ],\n      [\n        \"▁Ausdruck\",\n        -13.048192977905273\n      ],\n      [\n        \"▁Marriage\",\n        -13.048361778259277\n      ],\n      [\n        \"▁knives\",\n        -13.048362731933594\n      ],\n      [\n        \"▁Relief\",\n        -13.048368453979492\n      ],\n      [\n        \"▁Clerk\",\n        -13.048392295837402\n      ],\n      [\n        \"wait\",\n        -13.048501014709473\n      ],\n      [\n        \"▁probablement\",\n        -13.048698425292969\n      ],\n      [\n        \"▁suplimentar\",\n        -13.048701286315918\n      ],\n      [\n        \"dollar\",\n        -13.048797607421875\n      ],\n      [\n        \"English\",\n        -13.04898452758789\n      ],\n      [\n        \"866\",\n        -13.049300193786621\n      ],\n      [\n        \"▁Savannah\",\n        -13.049314498901367\n      ],\n      [\n        \"▁aftermath\",\n        -13.049318313598633\n      ],\n      [\n        \"phé\",\n        -13.04932689666748\n      ],\n      [\n        \"▁Plum\",\n        -13.049417495727539\n      ],\n      [\n        \"264\",\n        -13.049566268920898\n      ],\n      [\n        \"2.000\",\n        -13.049582481384277\n      ],\n      [\n        \"niei\",\n        -13.049603462219238\n      ],\n      [\n        \"ATP\",\n        -13.049803733825684\n      ],\n      [\n        \"mila\",\n        -13.04985523223877\n      ],\n      [\n        \"▁glut\",\n        -13.049887657165527\n      ],\n      [\n        \"gotta\",\n        -13.049891471862793\n      ],\n      [\n        \"schütt\",\n        -13.049893379211426\n      ],\n      [\n        \"klick\",\n        -13.049996376037598\n      ],\n      [\n        \"whether\",\n        -13.050090789794922\n      ],\n      [\n        \"▁Wade\",\n        -13.050163269042969\n      ],\n      [\n        \"▁Riley\",\n        -13.050280570983887\n      ],\n      [\n        \"Chancellor\",\n        -13.050288200378418\n      ],\n      [\n        \"▁nebun\",\n        -13.050300598144531\n      ],\n      [\n        \"▁aufgebaut\",\n        -13.050374984741211\n      ],\n      [\n        \"steigt\",\n        -13.050423622131348\n      ],\n      [\n        \"▁entirety\",\n        -13.050494194030762\n      ],\n      [\n        \"▁telefoane\",\n        -13.05074691772461\n      ],\n      [\n        \"▁Roulette\",\n        -13.050763130187988\n      ],\n      [\n        \"1700\",\n        -13.050787925720215\n      ],\n      [\n        \"▁lycée\",\n        -13.050856590270996\n      ],\n      [\n        \"rotary\",\n        -13.051128387451172\n      ],\n      [\n        \"benefited\",\n        -13.051170349121094\n      ],\n      [\n        \"▁Bisericii\",\n        -13.051220893859863\n      ],\n      [\n        \"▁Rehabilitation\",\n        -13.051220893859863\n      ],\n      [\n        \"▁lithium\",\n        -13.051228523254395\n      ],\n      [\n        \"imposing\",\n        -13.051279067993164\n      ],\n      [\n        \"176\",\n        -13.051329612731934\n      ],\n      [\n        \"▁thunder\",\n        -13.051527976989746\n      ],\n      [\n        \"ăsesc\",\n        -13.052000045776367\n      ],\n      [\n        \"▁Einblick\",\n        -13.052010536193848\n      ],\n      [\n        \"oiled\",\n        -13.052151679992676\n      ],\n      [\n        \"SSA\",\n        -13.052181243896484\n      ],\n      [\n        \"apparition\",\n        -13.05224609375\n      ],\n      [\n        \"▁Impress\",\n        -13.052273750305176\n      ],\n      [\n        \"▁Aboriginal\",\n        -13.052297592163086\n      ],\n      [\n        \"loos\",\n        -13.052383422851562\n      ],\n      [\n        \"▁Bread\",\n        -13.052440643310547\n      ],\n      [\n        \"177\",\n        -13.052619934082031\n      ],\n      [\n        \"VERS\",\n        -13.052638053894043\n      ],\n      [\n        \"▁Respect\",\n        -13.05271053314209\n      ],\n      [\n        \"▁Practical\",\n        -13.053047180175781\n      ],\n      [\n        \"drafting\",\n        -13.05306339263916\n      ],\n      [\n        \"си\",\n        -13.053099632263184\n      ],\n      [\n        \"▁faza\",\n        -13.053109169006348\n      ],\n      [\n        \"▁sovereign\",\n        -13.053123474121094\n      ],\n      [\n        \"▁Untersuchung\",\n        -13.05314826965332\n      ],\n      [\n        \"▁Niveau\",\n        -13.053154945373535\n      ],\n      [\n        \"transport\",\n        -13.053182601928711\n      ],\n      [\n        \"▁downstream\",\n        -13.053293228149414\n      ],\n      [\n        \"▁Milton\",\n        -13.053383827209473\n      ],\n      [\n        \"▁knob\",\n        -13.053390502929688\n      ],\n      [\n        \"employeur\",\n        -13.053499221801758\n      ],\n      [\n        \"▁furnish\",\n        -13.053544044494629\n      ],\n      [\n        \"weather\",\n        -13.053564071655273\n      ],\n      [\n        \"LAB\",\n        -13.053646087646484\n      ],\n      [\n        \"166\",\n        -13.053853988647461\n      ],\n      [\n        \"▁salaire\",\n        -13.053937911987305\n      ],\n      [\n        \"▁Carnival\",\n        -13.054088592529297\n      ],\n      [\n        \"4-0\",\n        -13.054168701171875\n      ],\n      [\n        \"▁Angle\",\n        -13.054291725158691\n      ],\n      [\n        \"▁José\",\n        -13.054399490356445\n      ],\n      [\n        \"architecture\",\n        -13.054475784301758\n      ],\n      [\n        \"▁Sunset\",\n        -13.054574966430664\n      ],\n      [\n        \"▁Absolut\",\n        -13.054694175720215\n      ],\n      [\n        \"▁herrlich\",\n        -13.05470085144043\n      ],\n      [\n        \"12%\",\n        -13.054703712463379\n      ],\n      [\n        \"▁Indo\",\n        -13.054823875427246\n      ],\n      [\n        \"▁Komfort\",\n        -13.055049896240234\n      ],\n      [\n        \"▁acțiuni\",\n        -13.05505084991455\n      ],\n      [\n        \"energize\",\n        -13.055085182189941\n      ],\n      [\n        \"▁Warning\",\n        -13.055171966552734\n      ],\n      [\n        \"▁Sunny\",\n        -13.055216789245605\n      ],\n      [\n        \"▁razor\",\n        -13.055489540100098\n      ],\n      [\n        \"▁psychic\",\n        -13.055490493774414\n      ],\n      [\n        \"▁convivial\",\n        -13.055525779724121\n      ],\n      [\n        \"Voraussetzungen\",\n        -13.05555534362793\n      ],\n      [\n        \"IMO\",\n        -13.055622100830078\n      ],\n      [\n        \"opérateur\",\n        -13.055743217468262\n      ],\n      [\n        \"▁langjährige\",\n        -13.05575942993164\n      ],\n      [\n        \"▁Spanie\",\n        -13.055901527404785\n      ],\n      [\n        \"pulmonary\",\n        -13.056004524230957\n      ],\n      [\n        \"▁Bingo\",\n        -13.056050300598145\n      ],\n      [\n        \"▁confession\",\n        -13.056096076965332\n      ],\n      [\n        \"▁Petru\",\n        -13.056100845336914\n      ],\n      [\n        \"▁prerequisite\",\n        -13.056164741516113\n      ],\n      [\n        \"▁dodge\",\n        -13.056352615356445\n      ],\n      [\n        \"▁McN\",\n        -13.056436538696289\n      ],\n      [\n        \"▁originate\",\n        -13.056577682495117\n      ],\n      [\n        \"▁nettoy\",\n        -13.056612014770508\n      ],\n      [\n        \"▁$14\",\n        -13.056645393371582\n      ],\n      [\n        \"▁Bride\",\n        -13.05669116973877\n      ],\n      [\n        \"▁noisy\",\n        -13.05673885345459\n      ],\n      [\n        \"▁Worcester\",\n        -13.056963920593262\n      ],\n      [\n        \"▁Surrey\",\n        -13.056982040405273\n      ],\n      [\n        \"harmonis\",\n        -13.057110786437988\n      ],\n      [\n        \"▁représentant\",\n        -13.057304382324219\n      ],\n      [\n        \"organisée\",\n        -13.057475090026855\n      ],\n      [\n        \"truction\",\n        -13.057513236999512\n      ],\n      [\n        \"injected\",\n        -13.057597160339355\n      ],\n      [\n        \"▁Suzuki\",\n        -13.057924270629883\n      ],\n      [\n        \"▁japonais\",\n        -13.057924270629883\n      ],\n      [\n        \"▁turquoise\",\n        -13.057924270629883\n      ],\n      [\n        \"▁Peut\",\n        -13.058004379272461\n      ],\n      [\n        \"▁Sequ\",\n        -13.058028221130371\n      ],\n      [\n        \"slated\",\n        -13.058037757873535\n      ],\n      [\n        \"▁Alma\",\n        -13.058215141296387\n      ],\n      [\n        \"▁gebraucht\",\n        -13.05827522277832\n      ],\n      [\n        \"gängig\",\n        -13.058281898498535\n      ],\n      [\n        \"▁commis\",\n        -13.058377265930176\n      ],\n      [\n        \"ACS\",\n        -13.05856990814209\n      ],\n      [\n        \"pressure\",\n        -13.058664321899414\n      ],\n      [\n        \"cured\",\n        -13.05874252319336\n      ],\n      [\n        \"▁Jackie\",\n        -13.058757781982422\n      ],\n      [\n        \"▁Kashmir\",\n        -13.05888557434082\n      ],\n      [\n        \"▁recruited\",\n        -13.059000968933105\n      ],\n      [\n        \"▁vécu\",\n        -13.059011459350586\n      ],\n      [\n        \"▁opus\",\n        -13.059052467346191\n      ],\n      [\n        \"kWh\",\n        -13.05927562713623\n      ],\n      [\n        \"▁tapping\",\n        -13.059292793273926\n      ],\n      [\n        \"▁tehnologie\",\n        -13.05931282043457\n      ],\n      [\n        \"▁Gentle\",\n        -13.059365272521973\n      ],\n      [\n        \"▁bombard\",\n        -13.059372901916504\n      ],\n      [\n        \"▁caméra\",\n        -13.059427261352539\n      ],\n      [\n        \"züglich\",\n        -13.059431076049805\n      ],\n      [\n        \"▁bingo\",\n        -13.059453010559082\n      ],\n      [\n        \"private\",\n        -13.059496879577637\n      ],\n      [\n        \"▁mediator\",\n        -13.059642791748047\n      ],\n      [\n        \"▁carbohydrates\",\n        -13.059847831726074\n      ],\n      [\n        \"▁workmanship\",\n        -13.059849739074707\n      ],\n      [\n        \"▁Combat\",\n        -13.059853553771973\n      ],\n      [\n        \"▁Mickey\",\n        -13.059901237487793\n      ],\n      [\n        \"▁distressed\",\n        -13.059908866882324\n      ],\n      [\n        \"lucrează\",\n        -13.059924125671387\n      ],\n      [\n        \"treatment\",\n        -13.06007194519043\n      ],\n      [\n        \"▁Einwohner\",\n        -13.060330390930176\n      ],\n      [\n        \"▁glaze\",\n        -13.060386657714844\n      ],\n      [\n        \"scholarly\",\n        -13.06043529510498\n      ],\n      [\n        \"ROC\",\n        -13.060750007629395\n      ],\n      [\n        \"▁Darwin\",\n        -13.060774803161621\n      ],\n      [\n        \"drückt\",\n        -13.060775756835938\n      ],\n      [\n        \"▁treadmill\",\n        -13.060819625854492\n      ],\n      [\n        \"ntz\",\n        -13.060830116271973\n      ],\n      [\n        \"620\",\n        -13.061087608337402\n      ],\n      [\n        \"surface\",\n        -13.061148643493652\n      ],\n      [\n        \"▁vieţii\",\n        -13.0612211227417\n      ],\n      [\n        \"990\",\n        -13.061296463012695\n      ],\n      [\n        \"▁doigt\",\n        -13.061341285705566\n      ],\n      [\n        \"▁explor\",\n        -13.061450004577637\n      ],\n      [\n        \"▁asistent\",\n        -13.061670303344727\n      ],\n      [\n        \"coloriage\",\n        -13.061734199523926\n      ],\n      [\n        \"▁Martinez\",\n        -13.061758041381836\n      ],\n      [\n        \"▁antibodies\",\n        -13.061775207519531\n      ],\n      [\n        \"Schülerinnen\",\n        -13.061779975891113\n      ],\n      [\n        \"Honestly\",\n        -13.06178092956543\n      ],\n      [\n        \"grabbing\",\n        -13.061871528625488\n      ],\n      [\n        \"▁Cardiff\",\n        -13.061897277832031\n      ],\n      [\n        \"▁Trophy\",\n        -13.062084197998047\n      ],\n      [\n        \"▁pupil\",\n        -13.062117576599121\n      ],\n      [\n        \"▁invoke\",\n        -13.062161445617676\n      ],\n      [\n        \"bezüglich\",\n        -13.062193870544434\n      ],\n      [\n        \"Anschließend\",\n        -13.062275886535645\n      ],\n      [\n        \"perks\",\n        -13.062360763549805\n      ],\n      [\n        \"530\",\n        -13.062373161315918\n      ],\n      [\n        \"▁emblem\",\n        -13.062431335449219\n      ],\n      [\n        \"770\",\n        -13.062543869018555\n      ],\n      [\n        \"clairement\",\n        -13.062590599060059\n      ],\n      [\n        \"▁sublinia\",\n        -13.062597274780273\n      ],\n      [\n        \"▁1910\",\n        -13.062719345092773\n      ],\n      [\n        \"▁Embassy\",\n        -13.062740325927734\n      ],\n      [\n        \"▁Valencia\",\n        -13.062740325927734\n      ],\n      [\n        \"▁catastrophic\",\n        -13.062740325927734\n      ],\n      [\n        \"▁simulator\",\n        -13.06274700164795\n      ],\n      [\n        \"Pierre\",\n        -13.062766075134277\n      ],\n      [\n        \"▁doorstep\",\n        -13.062806129455566\n      ],\n      [\n        \"▁rallie\",\n        -13.062881469726562\n      ],\n      [\n        \"▁șans\",\n        -13.062891960144043\n      ],\n      [\n        \"▁crosses\",\n        -13.06300163269043\n      ],\n      [\n        \"▁zodi\",\n        -13.06312084197998\n      ],\n      [\n        \"Next\",\n        -13.06314754486084\n      ],\n      [\n        \"▁rebuilt\",\n        -13.063152313232422\n      ],\n      [\n        \"▁panorama\",\n        -13.063222885131836\n      ],\n      [\n        \"196\",\n        -13.06324291229248\n      ],\n      [\n        \"▁erinnert\",\n        -13.06370735168457\n      ],\n      [\n        \"lism\",\n        -13.06371784210205\n      ],\n      [\n        \"opened\",\n        -13.06383228302002\n      ],\n      [\n        \"▁breakout\",\n        -13.064126014709473\n      ],\n      [\n        \"▁mosque\",\n        -13.064153671264648\n      ],\n      [\n        \"boc\",\n        -13.064507484436035\n      ],\n      [\n        \"▁grout\",\n        -13.064568519592285\n      ],\n      [\n        \"▁Gather\",\n        -13.064582824707031\n      ],\n      [\n        \"▁vampire\",\n        -13.06467342376709\n      ],\n      [\n        \"▁tandem\",\n        -13.064684867858887\n      ],\n      [\n        \"▁pastra\",\n        -13.064702033996582\n      ],\n      [\n        \"▁lösen\",\n        -13.064794540405273\n      ],\n      [\n        \"▁discontinu\",\n        -13.064826965332031\n      ],\n      [\n        \"fuses\",\n        -13.064885139465332\n      ],\n      [\n        \"▁identitate\",\n        -13.064947128295898\n      ],\n      [\n        \"BAC\",\n        -13.064964294433594\n      ],\n      [\n        \"▁$100,000\",\n        -13.065122604370117\n      ],\n      [\n        \"Finder\",\n        -13.06515121459961\n      ],\n      [\n        \"▁Leicester\",\n        -13.065157890319824\n      ],\n      [\n        \"▁1933\",\n        -13.065159797668457\n      ],\n      [\n        \"informatiile\",\n        -13.065234184265137\n      ],\n      [\n        \"lädt\",\n        -13.065309524536133\n      ],\n      [\n        \"iggle\",\n        -13.065399169921875\n      ],\n      [\n        \"▁Discuss\",\n        -13.065462112426758\n      ],\n      [\n        \"distributing\",\n        -13.065470695495605\n      ],\n      [\n        \"▁disappoint\",\n        -13.065475463867188\n      ],\n      [\n        \"ecţia\",\n        -13.065611839294434\n      ],\n      [\n        \"▁condiment\",\n        -13.065640449523926\n      ],\n      [\n        \"▁Marriott\",\n        -13.065642356872559\n      ],\n      [\n        \"▁entspannt\",\n        -13.065644264221191\n      ],\n      [\n        \"arbitrary\",\n        -13.06564998626709\n      ],\n      [\n        \"rühren\",\n        -13.06574821472168\n      ],\n      [\n        \"Intensiv\",\n        -13.065771102905273\n      ],\n      [\n        \"eliminare\",\n        -13.065895080566406\n      ],\n      [\n        \"muster\",\n        -13.06594467163086\n      ],\n      [\n        \"▁komplexe\",\n        -13.066130638122559\n      ],\n      [\n        \"▁(2008)\",\n        -13.066184997558594\n      ],\n      [\n        \"absolument\",\n        -13.066349029541016\n      ],\n      [\n        \"aloo\",\n        -13.066420555114746\n      ],\n      [\n        \"cererea\",\n        -13.06655216217041\n      ],\n      [\n        \"▁imobiliar\",\n        -13.066696166992188\n      ],\n      [\n        \"▁paramount\",\n        -13.066705703735352\n      ],\n      [\n        \"▁Vince\",\n        -13.066723823547363\n      ],\n      [\n        \"pov\",\n        -13.067076683044434\n      ],\n      [\n        \"▁conveyor\",\n        -13.067549705505371\n      ],\n      [\n        \"▁Natalie\",\n        -13.067583084106445\n      ],\n      [\n        \"▁Comedy\",\n        -13.067623138427734\n      ],\n      [\n        \"Developing\",\n        -13.0678129196167\n      ],\n      [\n        \"disputed\",\n        -13.067878723144531\n      ],\n      [\n        \"164\",\n        -13.067911148071289\n      ],\n      [\n        \"▁Communist\",\n        -13.067949295043945\n      ],\n      [\n        \"▁Bahnhof\",\n        -13.06806468963623\n      ],\n      [\n        \"dokument\",\n        -13.068145751953125\n      ],\n      [\n        \"▁Somali\",\n        -13.06828498840332\n      ],\n      [\n        \"▁Strasbourg\",\n        -13.068503379821777\n      ],\n      [\n        \"▁Technician\",\n        -13.068550109863281\n      ],\n      [\n        \"▁subsidies\",\n        -13.068633079528809\n      ],\n      [\n        \"judeţul\",\n        -13.068723678588867\n      ],\n      [\n        \"▁bible\",\n        -13.068769454956055\n      ],\n      [\n        \"gefahren\",\n        -13.068855285644531\n      ],\n      [\n        \"▁literal\",\n        -13.068882942199707\n      ],\n      [\n        \"▁diminish\",\n        -13.068940162658691\n      ],\n      [\n        \"Sfântul\",\n        -13.0689697265625\n      ],\n      [\n        \"▁doreșt\",\n        -13.068978309631348\n      ],\n      [\n        \"▁Xiaomi\",\n        -13.069036483764648\n      ],\n      [\n        \"▁planète\",\n        -13.069130897521973\n      ],\n      [\n        \"▁LTD\",\n        -13.069175720214844\n      ],\n      [\n        \"▁Zugriff\",\n        -13.069196701049805\n      ],\n      [\n        \"beginn\",\n        -13.06921672821045\n      ],\n      [\n        \"▁Einführung\",\n        -13.069294929504395\n      ],\n      [\n        \"▁coronar\",\n        -13.069393157958984\n      ],\n      [\n        \"lomi\",\n        -13.0693941116333\n      ],\n      [\n        \"▁Accueil\",\n        -13.0695219039917\n      ],\n      [\n        \"scanned\",\n        -13.069528579711914\n      ],\n      [\n        \"▁Banque\",\n        -13.06952953338623\n      ],\n      [\n        \"▁réaction\",\n        -13.069531440734863\n      ],\n      [\n        \"▁Hoffman\",\n        -13.069546699523926\n      ],\n      [\n        \"▁merveille\",\n        -13.069637298583984\n      ],\n      [\n        \"navigating\",\n        -13.069719314575195\n      ],\n      [\n        \"schalten\",\n        -13.06984806060791\n      ],\n      [\n        \"▁ieşi\",\n        -13.070136070251465\n      ],\n      [\n        \"1-6\",\n        -13.070175170898438\n      ],\n      [\n        \"▁frustr\",\n        -13.070670127868652\n      ],\n      [\n        \"▁réfléchi\",\n        -13.0709810256958\n      ],\n      [\n        \"▁difuz\",\n        -13.071100234985352\n      ],\n      [\n        \"▁freue\",\n        -13.07121753692627\n      ],\n      [\n        \"besuch\",\n        -13.071349143981934\n      ],\n      [\n        \"153\",\n        -13.071386337280273\n      ],\n      [\n        \"▁butterflies\",\n        -13.071467399597168\n      ],\n      [\n        \"▁terrifying\",\n        -13.071467399597168\n      ],\n      [\n        \"▁încuraj\",\n        -13.071468353271484\n      ],\n      [\n        \"▁Château\",\n        -13.071470260620117\n      ],\n      [\n        \"▁contingent\",\n        -13.071474075317383\n      ],\n      [\n        \"▁abusive\",\n        -13.0714750289917\n      ],\n      [\n        \"▁SharePoint\",\n        -13.07148551940918\n      ],\n      [\n        \"▁skating\",\n        -13.071573257446289\n      ],\n      [\n        \"▁militaire\",\n        -13.07166576385498\n      ],\n      [\n        \"▁Vig\",\n        -13.071690559387207\n      ],\n      [\n        \"omics\",\n        -13.071840286254883\n      ],\n      [\n        \"▁Blockchain\",\n        -13.07197093963623\n      ],\n      [\n        \"▁principii\",\n        -13.071975708007812\n      ],\n      [\n        \"▁permitting\",\n        -13.071979522705078\n      ],\n      [\n        \"optimisation\",\n        -13.072270393371582\n      ],\n      [\n        \"▁maintien\",\n        -13.072328567504883\n      ],\n      [\n        \"▁Aluminum\",\n        -13.072442054748535\n      ],\n      [\n        \"▁Plymouth\",\n        -13.072443008422852\n      ],\n      [\n        \"▁Weiterbildung\",\n        -13.072457313537598\n      ],\n      [\n        \"▁Finanzierung\",\n        -13.072505950927734\n      ],\n      [\n        \"▁Kerala\",\n        -13.072514533996582\n      ],\n      [\n        \"insulated\",\n        -13.072668075561523\n      ],\n      [\n        \"▁loaf\",\n        -13.072802543640137\n      ],\n      [\n        \"▁Sammlung\",\n        -13.072929382324219\n      ],\n      [\n        \"▁îndepărt\",\n        -13.072930335998535\n      ],\n      [\n        \"▁Gewerbe\",\n        -13.072942733764648\n      ],\n      [\n        \"udel\",\n        -13.072988510131836\n      ],\n      [\n        \"▁coursework\",\n        -13.073104858398438\n      ],\n      [\n        \"▁Darstellung\",\n        -13.073246002197266\n      ],\n      [\n        \"▁indeplin\",\n        -13.073433876037598\n      ],\n      [\n        \"▁Gandhi\",\n        -13.073434829711914\n      ],\n      [\n        \"tossed\",\n        -13.07361888885498\n      ],\n      [\n        \"ewed\",\n        -13.073844909667969\n      ],\n      [\n        \"▁classement\",\n        -13.073884963989258\n      ],\n      [\n        \"▁Protestant\",\n        -13.073905944824219\n      ],\n      [\n        \"▁frumoasă\",\n        -13.073905944824219\n      ],\n      [\n        \"▁pantalon\",\n        -13.073906898498535\n      ],\n      [\n        \"▁rivet\",\n        -13.073966979980469\n      ],\n      [\n        \"▁Echt\",\n        -13.0741605758667\n      ],\n      [\n        \"erviciului\",\n        -13.07421588897705\n      ],\n      [\n        \"fabricated\",\n        -13.074322700500488\n      ],\n      [\n        \"Compania\",\n        -13.074372291564941\n      ],\n      [\n        \"▁juvenile\",\n        -13.074394226074219\n      ],\n      [\n        \"▁souligne\",\n        -13.07444953918457\n      ],\n      [\n        \"▁chrono\",\n        -13.07447338104248\n      ],\n      [\n        \"▁VII\",\n        -13.074594497680664\n      ],\n      [\n        \"▁Kirch\",\n        -13.074714660644531\n      ],\n      [\n        \"catcher\",\n        -13.075014114379883\n      ],\n      [\n        \"salv\",\n        -13.075263023376465\n      ],\n      [\n        \"▁Enforcement\",\n        -13.075370788574219\n      ],\n      [\n        \"▁Penguin\",\n        -13.075410842895508\n      ],\n      [\n        \"kowski\",\n        -13.075465202331543\n      ],\n      [\n        \"▁2:1\",\n        -13.075470924377441\n      ],\n      [\n        \"gesundheit\",\n        -13.075475692749023\n      ],\n      [\n        \"▁unveil\",\n        -13.075519561767578\n      ],\n      [\n        \"bending\",\n        -13.075531959533691\n      ],\n      [\n        \"▁conecta\",\n        -13.075579643249512\n      ],\n      [\n        \"▁faim\",\n        -13.075885772705078\n      ],\n      [\n        \"▁MacBook\",\n        -13.075969696044922\n      ],\n      [\n        \"versuch\",\n        -13.07600212097168\n      ],\n      [\n        \"▁regiuni\",\n        -13.076029777526855\n      ],\n      [\n        \"▁Willow\",\n        -13.076184272766113\n      ],\n      [\n        \"▁finanziell\",\n        -13.076303482055664\n      ],\n      [\n        \"▁nurturing\",\n        -13.076354026794434\n      ],\n      [\n        \"impuls\",\n        -13.076370239257812\n      ],\n      [\n        \"▁funktionieren\",\n        -13.076371192932129\n      ],\n      [\n        \"▁rezult\",\n        -13.076554298400879\n      ],\n      [\n        \"▁spui\",\n        -13.076593399047852\n      ],\n      [\n        \"▁walkway\",\n        -13.076653480529785\n      ],\n      [\n        \"▁Rauch\",\n        -13.076708793640137\n      ],\n      [\n        \"169\",\n        -13.076793670654297\n      ],\n      [\n        \"610\",\n        -13.076863288879395\n      ],\n      [\n        \"▁scazut\",\n        -13.0773286819458\n      ],\n      [\n        \"▁Garrett\",\n        -13.077329635620117\n      ],\n      [\n        \"▁necesită\",\n        -13.077352523803711\n      ],\n      [\n        \"Articolul\",\n        -13.077364921569824\n      ],\n      [\n        \"numită\",\n        -13.077371597290039\n      ],\n      [\n        \"Coastal\",\n        -13.077383041381836\n      ],\n      [\n        \"▁canned\",\n        -13.077421188354492\n      ],\n      [\n        \"▁Friendly\",\n        -13.077499389648438\n      ],\n      [\n        \"dissolved\",\n        -13.0775728225708\n      ],\n      [\n        \"seid\",\n        -13.077674865722656\n      ],\n      [\n        \"▁feminin\",\n        -13.077685356140137\n      ],\n      [\n        \"▁fetch\",\n        -13.077710151672363\n      ],\n      [\n        \"▁Accent\",\n        -13.077767372131348\n      ],\n      [\n        \"phrase\",\n        -13.077771186828613\n      ],\n      [\n        \"effekt\",\n        -13.077775955200195\n      ],\n      [\n        \"▁Progressive\",\n        -13.077777862548828\n      ],\n      [\n        \"▁canadien\",\n        -13.077820777893066\n      ],\n      [\n        \"iety\",\n        -13.077839851379395\n      ],\n      [\n        \"eignen\",\n        -13.077984809875488\n      ],\n      [\n        \"paraître\",\n        -13.07812213897705\n      ],\n      [\n        \"▁asylum\",\n        -13.07833194732666\n      ],\n      [\n        \"▁Albany\",\n        -13.078362464904785\n      ],\n      [\n        \"▁remis\",\n        -13.078386306762695\n      ],\n      [\n        \"▁Joyce\",\n        -13.078664779663086\n      ],\n      [\n        \"schätzt\",\n        -13.078784942626953\n      ],\n      [\n        \"▁begleiten\",\n        -13.078801155090332\n      ],\n      [\n        \"▁Siemens\",\n        -13.079007148742676\n      ],\n      [\n        \"▁schlimm\",\n        -13.079061508178711\n      ],\n      [\n        \"▁Libra\",\n        -13.079254150390625\n      ],\n      [\n        \"▁Composite\",\n        -13.079290390014648\n      ],\n      [\n        \"▁écr\",\n        -13.079315185546875\n      ],\n      [\n        \"disciplina\",\n        -13.079379081726074\n      ],\n      [\n        \"▁premature\",\n        -13.079630851745605\n      ],\n      [\n        \"▁scopuri\",\n        -13.079681396484375\n      ],\n      [\n        \"ffnung\",\n        -13.079715728759766\n      ],\n      [\n        \"7000\",\n        -13.079726219177246\n      ],\n      [\n        \"▁conséquent\",\n        -13.079780578613281\n      ],\n      [\n        \"▁côte\",\n        -13.079787254333496\n      ],\n      [\n        \"celul\",\n        -13.079872131347656\n      ],\n      [\n        \"▁fourteen\",\n        -13.079940795898438\n      ],\n      [\n        \"▁Riverside\",\n        -13.080077171325684\n      ],\n      [\n        \"gemacht\",\n        -13.08013916015625\n      ],\n      [\n        \"▁volcanic\",\n        -13.080272674560547\n      ],\n      [\n        \"▁Salesforce\",\n        -13.080315589904785\n      ],\n      [\n        \"▁Granite\",\n        -13.080317497253418\n      ],\n      [\n        \"▁Zentral\",\n        -13.080329895019531\n      ],\n      [\n        \"▁Female\",\n        -13.080341339111328\n      ],\n      [\n        \"▁culmin\",\n        -13.08047103881836\n      ],\n      [\n        \"▁urmatoare\",\n        -13.080547332763672\n      ],\n      [\n        \"toxicity\",\n        -13.080560684204102\n      ],\n      [\n        \"▁mâna\",\n        -13.080678939819336\n      ],\n      [\n        \"▁Umfang\",\n        -13.080764770507812\n      ],\n      [\n        \"▁Encore\",\n        -13.08077621459961\n      ],\n      [\n        \"▁Edgar\",\n        -13.080831527709961\n      ],\n      [\n        \"▁négoci\",\n        -13.080852508544922\n      ],\n      [\n        \"njeux\",\n        -13.080873489379883\n      ],\n      [\n        \"▁variance\",\n        -13.080917358398438\n      ],\n      [\n        \"▁Functional\",\n        -13.080973625183105\n      ],\n      [\n        \"172\",\n        -13.081046104431152\n      ],\n      [\n        \"▁dissolve\",\n        -13.0811185836792\n      ],\n      [\n        \"förderung\",\n        -13.081188201904297\n      ],\n      [\n        \"▁Brilliant\",\n        -13.081254959106445\n      ],\n      [\n        \"▁comprehension\",\n        -13.081254959106445\n      ],\n      [\n        \"▁soybean\",\n        -13.081254959106445\n      ],\n      [\n        \"▁standalone\",\n        -13.081255912780762\n      ],\n      [\n        \"▁Communi\",\n        -13.081303596496582\n      ],\n      [\n        \"▁ajut\",\n        -13.081313133239746\n      ],\n      [\n        \"▁lavish\",\n        -13.081338882446289\n      ],\n      [\n        \"Ouest\",\n        -13.081384658813477\n      ],\n      [\n        \"▁Maggie\",\n        -13.081385612487793\n      ],\n      [\n        \"▁evolutionary\",\n        -13.081550598144531\n      ],\n      [\n        \"bowel\",\n        -13.081575393676758\n      ],\n      [\n        \"▁glyco\",\n        -13.081626892089844\n      ],\n      [\n        \"▁Happi\",\n        -13.081706047058105\n      ],\n      [\n        \"organising\",\n        -13.081710815429688\n      ],\n      [\n        \"▁übernimm\",\n        -13.081727027893066\n      ],\n      [\n        \"▁snowboard\",\n        -13.081793785095215\n      ],\n      [\n        \"▁prévention\",\n        -13.081830024719238\n      ],\n      [\n        \"▁Celebrate\",\n        -13.082160949707031\n      ],\n      [\n        \"▁pottery\",\n        -13.082254409790039\n      ],\n      [\n        \"▁Outstanding\",\n        -13.082328796386719\n      ],\n      [\n        \"▁toamna\",\n        -13.082331657409668\n      ],\n      [\n        \"▁graceful\",\n        -13.082548141479492\n      ],\n      [\n        \"197\",\n        -13.082559585571289\n      ],\n      [\n        \"strecke\",\n        -13.082598686218262\n      ],\n      [\n        \"▁medizinische\",\n        -13.082733154296875\n      ],\n      [\n        \"216\",\n        -13.082839965820312\n      ],\n      [\n        \"▁prune\",\n        -13.082868576049805\n      ],\n      [\n        \"Pourtant\",\n        -13.083000183105469\n      ],\n      [\n        \"▁Difference\",\n        -13.083224296569824\n      ],\n      [\n        \"▁factura\",\n        -13.083830833435059\n      ],\n      [\n        \"Mass\",\n        -13.084161758422852\n      ],\n      [\n        \"▁Enhanc\",\n        -13.084190368652344\n      ],\n      [\n        \"upholstered\",\n        -13.084209442138672\n      ],\n      [\n        \"▁übernommen\",\n        -13.084209442138672\n      ],\n      [\n        \"▁mitigation\",\n        -13.084210395812988\n      ],\n      [\n        \"▁Hidden\",\n        -13.084219932556152\n      ],\n      [\n        \"▁Häuser\",\n        -13.084234237670898\n      ],\n      [\n        \"▁Pavel\",\n        -13.084403991699219\n      ],\n      [\n        \"▁congress\",\n        -13.084512710571289\n      ],\n      [\n        \"▁antibody\",\n        -13.084598541259766\n      ],\n      [\n        \"▁stitches\",\n        -13.084811210632324\n      ],\n      [\n        \"▁colonies\",\n        -13.084820747375488\n      ],\n      [\n        \"Into\",\n        -13.084900856018066\n      ],\n      [\n        \"▁démo\",\n        -13.084924697875977\n      ],\n      [\n        \"▁MVP\",\n        -13.085041046142578\n      ],\n      [\n        \"▁replay\",\n        -13.085062026977539\n      ],\n      [\n        \"▁usoara\",\n        -13.08522891998291\n      ],\n      [\n        \"▁Breast\",\n        -13.085278511047363\n      ],\n      [\n        \"ooney\",\n        -13.085336685180664\n      ],\n      [\n        \"▁außen\",\n        -13.085663795471191\n      ],\n      [\n        \"▁Motorola\",\n        -13.085695266723633\n      ],\n      [\n        \"▁spalat\",\n        -13.08578109741211\n      ],\n      [\n        \"euillez\",\n        -13.086088180541992\n      ],\n      [\n        \"▁jeunesse\",\n        -13.086170196533203\n      ],\n      [\n        \"▁pastoral\",\n        -13.086174011230469\n      ],\n      [\n        \"▁Sussex\",\n        -13.086185455322266\n      ],\n      [\n        \"▁stencil\",\n        -13.08619213104248\n      ],\n      [\n        \"▁organismului\",\n        -13.086504936218262\n      ],\n      [\n        \"seized\",\n        -13.086649894714355\n      ],\n      [\n        \"▁întrebare\",\n        -13.086865425109863\n      ],\n      [\n        \"cliquez\",\n        -13.086874961853027\n      ],\n      [\n        \"5.7\",\n        -13.086984634399414\n      ],\n      [\n        \"▁Yama\",\n        -13.087080955505371\n      ],\n      [\n        \"painted\",\n        -13.08708667755127\n      ],\n      [\n        \"▁Swimming\",\n        -13.087176322937012\n      ],\n      [\n        \"Rhythm\",\n        -13.087202072143555\n      ],\n      [\n        \"▁sorrow\",\n        -13.087210655212402\n      ],\n      [\n        \"▁Movers\",\n        -13.08731460571289\n      ],\n      [\n        \"renforcer\",\n        -13.08735466003418\n      ],\n      [\n        \"▁Wach\",\n        -13.087381362915039\n      ],\n      [\n        \"0,00\",\n        -13.087390899658203\n      ],\n      [\n        \"▁glove\",\n        -13.08753490447998\n      ],\n      [\n        \"▁stâng\",\n        -13.087669372558594\n      ],\n      [\n        \"rgendwann\",\n        -13.087687492370605\n      ],\n      [\n        \"▁Philippine\",\n        -13.08769416809082\n      ],\n      [\n        \"▁anunțat\",\n        -13.087716102600098\n      ],\n      [\n        \"▁Coleman\",\n        -13.087723731994629\n      ],\n      [\n        \"affir\",\n        -13.087918281555176\n      ],\n      [\n        \"uleiul\",\n        -13.08808422088623\n      ],\n      [\n        \"▁Coconut\",\n        -13.088197708129883\n      ],\n      [\n        \"▁Supplement\",\n        -13.088210105895996\n      ],\n      [\n        \"haudiere\",\n        -13.088293075561523\n      ],\n      [\n        \"▁kettle\",\n        -13.088313102722168\n      ],\n      [\n        \"▁3,5\",\n        -13.088370323181152\n      ],\n      [\n        \"refurbished\",\n        -13.088425636291504\n      ],\n      [\n        \"esthétique\",\n        -13.088665962219238\n      ],\n      [\n        \"performing\",\n        -13.088667869567871\n      ],\n      [\n        \"▁Engag\",\n        -13.088762283325195\n      ],\n      [\n        \"Group\",\n        -13.088801383972168\n      ],\n      [\n        \"▁viande\",\n        -13.088887214660645\n      ],\n      [\n        \"▁oricum\",\n        -13.088888168334961\n      ],\n      [\n        \"Spitalul\",\n        -13.089093208312988\n      ],\n      [\n        \"▁cesse\",\n        -13.089110374450684\n      ],\n      [\n        \"▁contradiction\",\n        -13.089130401611328\n      ],\n      [\n        \"▁Chrysler\",\n        -13.089154243469238\n      ],\n      [\n        \"▁poultry\",\n        -13.089154243469238\n      ],\n      [\n        \"▁thirteen\",\n        -13.089154243469238\n      ],\n      [\n        \"▁sightseeing\",\n        -13.089155197143555\n      ],\n      [\n        \"▁Miguel\",\n        -13.089158058166504\n      ],\n      [\n        \"▁terminology\",\n        -13.089334487915039\n      ],\n      [\n        \"▁Genetic\",\n        -13.089553833007812\n      ],\n      [\n        \"commercial\",\n        -13.08963394165039\n      ],\n      [\n        \"gehoben\",\n        -13.08965015411377\n      ],\n      [\n        \"RIGHT\",\n        -13.08995532989502\n      ],\n      [\n        \"▁proprietate\",\n        -13.089990615844727\n      ],\n      [\n        \"▁Cannes\",\n        -13.090012550354004\n      ],\n      [\n        \"▁klicken\",\n        -13.090023040771484\n      ],\n      [\n        \"▁Belgique\",\n        -13.0901460647583\n      ],\n      [\n        \"tapped\",\n        -13.09034538269043\n      ],\n      [\n        \"kinetic\",\n        -13.090569496154785\n      ],\n      [\n        \"▁feuilles\",\n        -13.090673446655273\n      ],\n      [\n        \"whitening\",\n        -13.090760231018066\n      ],\n      [\n        \"Any\",\n        -13.090946197509766\n      ],\n      [\n        \"Manager\",\n        -13.091099739074707\n      ],\n      [\n        \"▁constatat\",\n        -13.091106414794922\n      ],\n      [\n        \"▁Myanmar\",\n        -13.091140747070312\n      ],\n      [\n        \"▁Examination\",\n        -13.091142654418945\n      ],\n      [\n        \"▁règle\",\n        -13.091208457946777\n      ],\n      [\n        \"▁umgesetzt\",\n        -13.09128475189209\n      ],\n      [\n        \"211\",\n        -13.091336250305176\n      ],\n      [\n        \"▁Herald\",\n        -13.091449737548828\n      ],\n      [\n        \"Alex\",\n        -13.091680526733398\n      ],\n      [\n        \"▁drauf\",\n        -13.091707229614258\n      ],\n      [\n        \"logger\",\n        -13.091714859008789\n      ],\n      [\n        \"▁pictur\",\n        -13.09186840057373\n      ],\n      [\n        \"▁Divi\",\n        -13.09196949005127\n      ],\n      [\n        \"▁furnizat\",\n        -13.092089653015137\n      ],\n      [\n        \"▁verzichten\",\n        -13.092132568359375\n      ],\n      [\n        \"▁Sergi\",\n        -13.092199325561523\n      ],\n      [\n        \"contaminated\",\n        -13.09223747253418\n      ],\n      [\n        \"▁Buddy\",\n        -13.092243194580078\n      ],\n      [\n        \"▁chilled\",\n        -13.092268943786621\n      ],\n      [\n        \"▁vorlieg\",\n        -13.092317581176758\n      ],\n      [\n        \"▁Claudia\",\n        -13.092632293701172\n      ],\n      [\n        \"▁miserable\",\n        -13.092653274536133\n      ],\n      [\n        \"▁sketches\",\n        -13.092683792114258\n      ],\n      [\n        \"schicken\",\n        -13.092814445495605\n      ],\n      [\n        \"since\",\n        -13.0928373336792\n      ],\n      [\n        \"2.9\",\n        -13.092840194702148\n      ],\n      [\n        \"▁sitzen\",\n        -13.092928886413574\n      ],\n      [\n        \"ceapa\",\n        -13.093396186828613\n      ],\n      [\n        \"respectarea\",\n        -13.093438148498535\n      ],\n      [\n        \"▁handheld\",\n        -13.093448638916016\n      ],\n      [\n        \"popular\",\n        -13.093527793884277\n      ],\n      [\n        \"calming\",\n        -13.093603134155273\n      ],\n      [\n        \"Govern\",\n        -13.093632698059082\n      ],\n      [\n        \"▁omega\",\n        -13.093645095825195\n      ],\n      [\n        \"▁Planner\",\n        -13.093791007995605\n      ],\n      [\n        \"enriched\",\n        -13.093850135803223\n      ],\n      [\n        \"154\",\n        -13.093976974487305\n      ],\n      [\n        \"▁autorisé\",\n        -13.093989372253418\n      ],\n      [\n        \"▁cadouri\",\n        -13.09407901763916\n      ],\n      [\n        \"▁vulnerabilities\",\n        -13.094143867492676\n      ],\n      [\n        \"▁Arbeitnehmer\",\n        -13.094158172607422\n      ],\n      [\n        \"éditeur\",\n        -13.094234466552734\n      ],\n      [\n        \"▁Anleitung\",\n        -13.094317436218262\n      ],\n      [\n        \"rubbing\",\n        -13.094343185424805\n      ],\n      [\n        \"▁autovehicul\",\n        -13.094621658325195\n      ],\n      [\n        \"▁öffnen\",\n        -13.094621658325195\n      ],\n      [\n        \"▁Napoleon\",\n        -13.094622611999512\n      ],\n      [\n        \"▁cliché\",\n        -13.094637870788574\n      ],\n      [\n        \"▁Schaf\",\n        -13.09469985961914\n      ],\n      [\n        \"regulating\",\n        -13.094894409179688\n      ],\n      [\n        \"▁Kühl\",\n        -13.09490966796875\n      ],\n      [\n        \"▁blush\",\n        -13.094913482666016\n      ],\n      [\n        \"▁discard\",\n        -13.094992637634277\n      ],\n      [\n        \"▁confine\",\n        -13.095027923583984\n      ],\n      [\n        \"▁Rodriguez\",\n        -13.09511947631836\n      ],\n      [\n        \"▁ADHD\",\n        -13.095165252685547\n      ],\n      [\n        \"▁Madame\",\n        -13.09516716003418\n      ],\n      [\n        \"▁résolution\",\n        -13.095319747924805\n      ],\n      [\n        \"▁flair\",\n        -13.095369338989258\n      ],\n      [\n        \"▁claw\",\n        -13.095422744750977\n      ],\n      [\n        \"▁1929\",\n        -13.095643043518066\n      ],\n      [\n        \"ETH\",\n        -13.095672607421875\n      ],\n      [\n        \"nähe\",\n        -13.095804214477539\n      ],\n      [\n        \"▁soothe\",\n        -13.0958251953125\n      ],\n      [\n        \"4.9\",\n        -13.095833778381348\n      ],\n      [\n        \"montée\",\n        -13.095925331115723\n      ],\n      [\n        \"confirming\",\n        -13.095989227294922\n      ],\n      [\n        \"continent\",\n        -13.09613037109375\n      ],\n      [\n        \"reiz\",\n        -13.09643840789795\n      ],\n      [\n        \"john\",\n        -13.096577644348145\n      ],\n      [\n        \"IONAL\",\n        -13.096588134765625\n      ],\n      [\n        \"▁exported\",\n        -13.0966215133667\n      ],\n      [\n        \"▁Prison\",\n        -13.096651077270508\n      ],\n      [\n        \"possessed\",\n        -13.096952438354492\n      ],\n      [\n        \"▁placebo\",\n        -13.096991539001465\n      ],\n      [\n        \"▁biodiversity\",\n        -13.097116470336914\n      ],\n      [\n        \"▁combustion\",\n        -13.097116470336914\n      ],\n      [\n        \"▁Plumbing\",\n        -13.09711742401123\n      ],\n      [\n        \"ixie\",\n        -13.097124099731445\n      ],\n      [\n        \"▁repetition\",\n        -13.09715461730957\n      ],\n      [\n        \"▁soumis\",\n        -13.097372055053711\n      ],\n      [\n        \"▁reduc\",\n        -13.097671508789062\n      ],\n      [\n        \"▁constrain\",\n        -13.097759246826172\n      ],\n      [\n        \"Anti\",\n        -13.097760200500488\n      ],\n      [\n        \"consolidated\",\n        -13.097817420959473\n      ],\n      [\n        \"214\",\n        -13.098095893859863\n      ],\n      [\n        \"▁breaches\",\n        -13.098108291625977\n      ],\n      [\n        \"infringement\",\n        -13.098115921020508\n      ],\n      [\n        \"▁drizzle\",\n        -13.098115921020508\n      ],\n      [\n        \"▁erhöhen\",\n        -13.098116874694824\n      ],\n      [\n        \"▁Somerset\",\n        -13.098118782043457\n      ],\n      [\n        \"▁blonde\",\n        -13.098132133483887\n      ],\n      [\n        \"▁Funny\",\n        -13.09813404083252\n      ],\n      [\n        \"tuşi\",\n        -13.098149299621582\n      ],\n      [\n        \"▁reinvent\",\n        -13.098162651062012\n      ],\n      [\n        \"▁sérieux\",\n        -13.098247528076172\n      ],\n      [\n        \"▁croire\",\n        -13.098308563232422\n      ],\n      [\n        \"general\",\n        -13.098315238952637\n      ],\n      [\n        \"▁Distance\",\n        -13.098319053649902\n      ],\n      [\n        \"▁VoIP\",\n        -13.098348617553711\n      ],\n      [\n        \"▁adăugat\",\n        -13.098406791687012\n      ],\n      [\n        \"matik\",\n        -13.098546028137207\n      ],\n      [\n        \"▁avatar\",\n        -13.098647117614746\n      ],\n      [\n        \"▁superstar\",\n        -13.098804473876953\n      ],\n      [\n        \"8.0\",\n        -13.098814010620117\n      ],\n      [\n        \"lusieurs\",\n        -13.098982810974121\n      ],\n      [\n        \"▁Judeţean\",\n        -13.099117279052734\n      ],\n      [\n        \"offenen\",\n        -13.099128723144531\n      ],\n      [\n        \"RAF\",\n        -13.099133491516113\n      ],\n      [\n        \"▁restroom\",\n        -13.099207878112793\n      ],\n      [\n        \"enfance\",\n        -13.099348068237305\n      ],\n      [\n        \"▁garnish\",\n        -13.099499702453613\n      ],\n      [\n        \"▁vermittelt\",\n        -13.099631309509277\n      ],\n      [\n        \"Histoire\",\n        -13.099634170532227\n      ],\n      [\n        \"cyan\",\n        -13.100628852844238\n      ],\n      [\n        \"Talk\",\n        -13.100666046142578\n      ],\n      [\n        \"▁Varianten\",\n        -13.10069465637207\n      ],\n      [\n        \"▁Lille\",\n        -13.10085678100586\n      ],\n      [\n        \"▁offenbar\",\n        -13.10098934173584\n      ],\n      [\n        \"▁rénovation\",\n        -13.10112190246582\n      ],\n      [\n        \"▁comentarii\",\n        -13.101249694824219\n      ],\n      [\n        \"▁Bedford\",\n        -13.10130500793457\n      ],\n      [\n        \"▁cercetări\",\n        -13.101325988769531\n      ],\n      [\n        \"▁précision\",\n        -13.101337432861328\n      ],\n      [\n        \"MRC\",\n        -13.101358413696289\n      ],\n      [\n        \"alterations\",\n        -13.101476669311523\n      ],\n      [\n        \"▁discours\",\n        -13.101531028747559\n      ],\n      [\n        \"äger\",\n        -13.101577758789062\n      ],\n      [\n        \"▁antreprenor\",\n        -13.101622581481934\n      ],\n      [\n        \"▁Oriental\",\n        -13.101849555969238\n      ],\n      [\n        \"conducerea\",\n        -13.101868629455566\n      ],\n      [\n        \"CBC\",\n        -13.101932525634766\n      ],\n      [\n        \"▁mince\",\n        -13.101985931396484\n      ],\n      [\n        \"▁presidency\",\n        -13.10212516784668\n      ],\n      [\n        \"▁lipstick\",\n        -13.102167129516602\n      ],\n      [\n        \"▁SERVICES\",\n        -13.102237701416016\n      ],\n      [\n        \"productive\",\n        -13.10237979888916\n      ],\n      [\n        \"Assad\",\n        -13.102400779724121\n      ],\n      [\n        \"▁efectiv\",\n        -13.102540969848633\n      ],\n      [\n        \"▁gestern\",\n        -13.102596282958984\n      ],\n      [\n        \"▁RGB\",\n        -13.102606773376465\n      ],\n      [\n        \"▁Transilvania\",\n        -13.102627754211426\n      ],\n      [\n        \"▁Raleigh\",\n        -13.102670669555664\n      ],\n      [\n        \"DOM\",\n        -13.102702140808105\n      ],\n      [\n        \"▁iesit\",\n        -13.102806091308594\n      ],\n      [\n        \"▁anuntat\",\n        -13.102810859680176\n      ],\n      [\n        \"▁automatiquement\",\n        -13.102901458740234\n      ],\n      [\n        \"▁proliferation\",\n        -13.103130340576172\n      ],\n      [\n        \"▁Maroc\",\n        -13.103156089782715\n      ],\n      [\n        \"▁prezenţ\",\n        -13.10323429107666\n      ],\n      [\n        \"▁Filipino\",\n        -13.103296279907227\n      ],\n      [\n        \"▁Traian\",\n        -13.103351593017578\n      ],\n      [\n        \"▁swimmer\",\n        -13.10356616973877\n      ],\n      [\n        \"▁Slovenia\",\n        -13.103632926940918\n      ],\n      [\n        \"phobia\",\n        -13.103724479675293\n      ],\n      [\n        \"curricular\",\n        -13.103734016418457\n      ],\n      [\n        \"jurnal\",\n        -13.103825569152832\n      ],\n      [\n        \"▁vorne\",\n        -13.103870391845703\n      ],\n      [\n        \"▁asuma\",\n        -13.103875160217285\n      ],\n      [\n        \"defended\",\n        -13.104104995727539\n      ],\n      [\n        \"▁imminent\",\n        -13.104140281677246\n      ],\n      [\n        \"favored\",\n        -13.10417366027832\n      ],\n      [\n        \"▁innovator\",\n        -13.104179382324219\n      ],\n      [\n        \"▁Salzburg\",\n        -13.104289054870605\n      ],\n      [\n        \"5.4\",\n        -13.104452133178711\n      ],\n      [\n        \"Safe\",\n        -13.104597091674805\n      ],\n      [\n        \"▁inteleg\",\n        -13.104744911193848\n      ],\n      [\n        \"▁charisma\",\n        -13.104781150817871\n      ],\n      [\n        \"nature\",\n        -13.104784965515137\n      ],\n      [\n        \"4.8\",\n        -13.104942321777344\n      ],\n      [\n        \"argues\",\n        -13.105104446411133\n      ],\n      [\n        \"▁dimensiune\",\n        -13.105142593383789\n      ],\n      [\n        \"▁subdivision\",\n        -13.105142593383789\n      ],\n      [\n        \"▁embarrassing\",\n        -13.105144500732422\n      ],\n      [\n        \"▁confuse\",\n        -13.105207443237305\n      ],\n      [\n        \"DIC\",\n        -13.105460166931152\n      ],\n      [\n        \"rubrique\",\n        -13.10549545288086\n      ],\n      [\n        \"dépendance\",\n        -13.105598449707031\n      ],\n      [\n        \"INCLUD\",\n        -13.10565185546875\n      ],\n      [\n        \"▁Griffin\",\n        -13.10574722290039\n      ],\n      [\n        \"157\",\n        -13.105751037597656\n      ],\n      [\n        \"▁revamp\",\n        -13.105839729309082\n      ],\n      [\n        \"▁umgehen\",\n        -13.10595989227295\n      ],\n      [\n        \"▁mențin\",\n        -13.106231689453125\n      ],\n      [\n        \"▁1937\",\n        -13.106695175170898\n      ],\n      [\n        \"eklagte\",\n        -13.106766700744629\n      ],\n      [\n        \"▁clientèle\",\n        -13.106801986694336\n      ],\n      [\n        \"▁campsite\",\n        -13.10708999633789\n      ],\n      [\n        \"▁florist\",\n        -13.107144355773926\n      ],\n      [\n        \"▁Ferguson\",\n        -13.107159614562988\n      ],\n      [\n        \"▁demolition\",\n        -13.107160568237305\n      ],\n      [\n        \"▁McCain\",\n        -13.107254981994629\n      ],\n      [\n        \"▁reckon\",\n        -13.10733413696289\n      ],\n      [\n        \"striped\",\n        -13.107414245605469\n      ],\n      [\n        \"▁sonore\",\n        -13.107481002807617\n      ],\n      [\n        \"migrated\",\n        -13.107548713684082\n      ],\n      [\n        \"▁fluorescent\",\n        -13.107664108276367\n      ],\n      [\n        \"▁Colegi\",\n        -13.107762336730957\n      ],\n      [\n        \"ianu\",\n        -13.107860565185547\n      ],\n      [\n        \"cruising\",\n        -13.107882499694824\n      ],\n      [\n        \"LINK\",\n        -13.107965469360352\n      ],\n      [\n        \"▁Cutting\",\n        -13.108001708984375\n      ],\n      [\n        \"ABILITY\",\n        -13.108168601989746\n      ],\n      [\n        \"▁Categories\",\n        -13.108168601989746\n      ],\n      [\n        \"▁erhoben\",\n        -13.108168601989746\n      ],\n      [\n        \"▁Cocktail\",\n        -13.108169555664062\n      ],\n      [\n        \"▁Generator\",\n        -13.108177185058594\n      ],\n      [\n        \"▁gesucht\",\n        -13.108186721801758\n      ],\n      [\n        \"▁telescope\",\n        -13.10818862915039\n      ],\n      [\n        \"KET\",\n        -13.108192443847656\n      ],\n      [\n        \"▁hilfreich\",\n        -13.108192443847656\n      ],\n      [\n        \"▁beneficiary\",\n        -13.108585357666016\n      ],\n      [\n        \"▁Winston\",\n        -13.108636856079102\n      ],\n      [\n        \"Auswirkungen\",\n        -13.108675956726074\n      ],\n      [\n        \"portrayed\",\n        -13.108705520629883\n      ],\n      [\n        \"▁Aspekte\",\n        -13.108743667602539\n      ],\n      [\n        \"ffected\",\n        -13.108901023864746\n      ],\n      [\n        \"eutic\",\n        -13.108905792236328\n      ],\n      [\n        \"International\",\n        -13.109021186828613\n      ],\n      [\n        \"attente\",\n        -13.109078407287598\n      ],\n      [\n        \"mentioning\",\n        -13.109119415283203\n      ],\n      [\n        \"launch\",\n        -13.109129905700684\n      ],\n      [\n        \"▁EURO\",\n        -13.109152793884277\n      ],\n      [\n        \"▁Fraser\",\n        -13.109344482421875\n      ],\n      [\n        \"▁Johannes\",\n        -13.109408378601074\n      ],\n      [\n        \"▁felicit\",\n        -13.109477043151855\n      ],\n      [\n        \"▁plâng\",\n        -13.109522819519043\n      ],\n      [\n        \"izant\",\n        -13.10971736907959\n      ],\n      [\n        \"▁reţe\",\n        -13.109846115112305\n      ],\n      [\n        \"Mech\",\n        -13.109954833984375\n      ],\n      [\n        \"▁algebra\",\n        -13.110193252563477\n      ],\n      [\n        \"▁surgeries\",\n        -13.110257148742676\n      ],\n      [\n        \"▁semifinal\",\n        -13.110262870788574\n      ],\n      [\n        \"▁intimidating\",\n        -13.110288619995117\n      ],\n      [\n        \"▁exkl\",\n        -13.110604286193848\n      ],\n      [\n        \"asigurarea\",\n        -13.110918998718262\n      ],\n      [\n        \"Tek\",\n        -13.111136436462402\n      ],\n      [\n        \"▁Einladung\",\n        -13.111205101013184\n      ],\n      [\n        \"▁similaire\",\n        -13.111205101013184\n      ],\n      [\n        \"▁bebelus\",\n        -13.111221313476562\n      ],\n      [\n        \"▁déclin\",\n        -13.111400604248047\n      ],\n      [\n        \"▁Console\",\n        -13.111495018005371\n      ],\n      [\n        \"RET\",\n        -13.111573219299316\n      ],\n      [\n        \"appli\",\n        -13.111586570739746\n      ],\n      [\n        \"45%\",\n        -13.111663818359375\n      ],\n      [\n        \"Evenimentul\",\n        -13.111811637878418\n      ],\n      [\n        \"sincerely\",\n        -13.111812591552734\n      ],\n      [\n        \"sammlung\",\n        -13.112098693847656\n      ],\n      [\n        \"Amérique\",\n        -13.112220764160156\n      ],\n      [\n        \"▁1919\",\n        -13.112326622009277\n      ],\n      [\n        \"regulation\",\n        -13.112367630004883\n      ],\n      [\n        \"gebäude\",\n        -13.112726211547852\n      ],\n      [\n        \"▁Perspektive\",\n        -13.112726211547852\n      ],\n      [\n        \"Espagne\",\n        -13.112744331359863\n      ],\n      [\n        \"▁Underground\",\n        -13.11283016204834\n      ],\n      [\n        \"secret\",\n        -13.112833976745605\n      ],\n      [\n        \"▁Aussicht\",\n        -13.112874031066895\n      ],\n      [\n        \"Photo\",\n        -13.112977027893066\n      ],\n      [\n        \"▁Brust\",\n        -13.113144874572754\n      ],\n      [\n        \"▁Sustainability\",\n        -13.11323356628418\n      ],\n      [\n        \"▁clădiri\",\n        -13.11323356628418\n      ],\n      [\n        \"▁librarian\",\n        -13.11323356628418\n      ],\n      [\n        \"▁HBO\",\n        -13.113235473632812\n      ],\n      [\n        \"▁Parallel\",\n        -13.113240242004395\n      ],\n      [\n        \"▁shimmer\",\n        -13.113283157348633\n      ],\n      [\n        \"▁schlicht\",\n        -13.113292694091797\n      ],\n      [\n        \"▁anticipat\",\n        -13.113311767578125\n      ],\n      [\n        \"▁foolish\",\n        -13.11335563659668\n      ],\n      [\n        \"▁Ability\",\n        -13.11347484588623\n      ],\n      [\n        \"▁ceremoni\",\n        -13.11358642578125\n      ],\n      [\n        \"▁Ablauf\",\n        -13.11359977722168\n      ],\n      [\n        \"icrobial\",\n        -13.113606452941895\n      ],\n      [\n        \"▁actiuni\",\n        -13.11362361907959\n      ],\n      [\n        \"▁Wilhelm\",\n        -13.113761901855469\n      ],\n      [\n        \"▁nennen\",\n        -13.113775253295898\n      ],\n      [\n        \"▁botez\",\n        -13.113832473754883\n      ],\n      [\n        \"Alpes\",\n        -13.113912582397461\n      ],\n      [\n        \"▁libér\",\n        -13.11392593383789\n      ],\n      [\n        \"▁sneakers\",\n        -13.114052772521973\n      ],\n      [\n        \"geschafft\",\n        -13.114252090454102\n      ],\n      [\n        \"▁downstairs\",\n        -13.114261627197266\n      ],\n      [\n        \"▁wrench\",\n        -13.114294052124023\n      ],\n      [\n        \"▁erheblich\",\n        -13.11442756652832\n      ],\n      [\n        \"▁alimentar\",\n        -13.114710807800293\n      ],\n      [\n        \"▁suger\",\n        -13.11474323272705\n      ],\n      [\n        \"analysis\",\n        -13.114883422851562\n      ],\n      [\n        \"öhn\",\n        -13.114891052246094\n      ],\n      [\n        \"▁Nantes\",\n        -13.114895820617676\n      ],\n      [\n        \"▁Arbor\",\n        -13.114899635314941\n      ],\n      [\n        \"ooze\",\n        -13.115150451660156\n      ],\n      [\n        \"▁facade\",\n        -13.115229606628418\n      ],\n      [\n        \"▁MySQL\",\n        -13.115266799926758\n      ],\n      [\n        \"▁Salvador\",\n        -13.115266799926758\n      ],\n      [\n        \"▁Schlafzimmer\",\n        -13.115279197692871\n      ],\n      [\n        \"▁autentic\",\n        -13.115320205688477\n      ],\n      [\n        \"▁prezint\",\n        -13.115348815917969\n      ],\n      [\n        \"▁campground\",\n        -13.115397453308105\n      ],\n      [\n        \"Query\",\n        -13.11540412902832\n      ],\n      [\n        \"bekannt\",\n        -13.115598678588867\n      ],\n      [\n        \"arcinia\",\n        -13.115632057189941\n      ],\n      [\n        \"▁stunt\",\n        -13.115825653076172\n      ],\n      [\n        \"▁informare\",\n        -13.115830421447754\n      ],\n      [\n        \"▁interzis\",\n        -13.11584186553955\n      ],\n      [\n        \"▁Burke\",\n        -13.115995407104492\n      ],\n      [\n        \"certified\",\n        -13.11601734161377\n      ],\n      [\n        \"▁clove\",\n        -13.11605167388916\n      ],\n      [\n        \"java\",\n        -13.116271018981934\n      ],\n      [\n        \"▁Vielfalt\",\n        -13.116284370422363\n      ],\n      [\n        \"gebung\",\n        -13.116329193115234\n      ],\n      [\n        \"▁9/11\",\n        -13.116497993469238\n      ],\n      [\n        \"▁disruptive\",\n        -13.11650562286377\n      ],\n      [\n        \"visual\",\n        -13.116693496704102\n      ],\n      [\n        \"▁anunţat\",\n        -13.11679458618164\n      ],\n      [\n        \"▁Plätze\",\n        -13.116799354553223\n      ],\n      [\n        \"▁reduceri\",\n        -13.116920471191406\n      ],\n      [\n        \"autorisation\",\n        -13.116950035095215\n      ],\n      [\n        \"▁ligament\",\n        -13.11705207824707\n      ],\n      [\n        \"▁învăța\",\n        -13.117081642150879\n      ],\n      [\n        \"läufig\",\n        -13.117303848266602\n      ],\n      [\n        \"▁Copenhagen\",\n        -13.117303848266602\n      ],\n      [\n        \"▁commodities\",\n        -13.117303848266602\n      ],\n      [\n        \"▁eindeutig\",\n        -13.117313385009766\n      ],\n      [\n        \"▁catheter\",\n        -13.117321014404297\n      ],\n      [\n        \"erklärung\",\n        -13.117720603942871\n      ],\n      [\n        \"▁intelectual\",\n        -13.117814064025879\n      ],\n      [\n        \"▁municipality\",\n        -13.117891311645508\n      ],\n      [\n        \"▁1936\",\n        -13.11798095703125\n      ],\n      [\n        \"rruption\",\n        -13.118217468261719\n      ],\n      [\n        \"▁Lafayette\",\n        -13.118324279785156\n      ],\n      [\n        \"▁berühmte\",\n        -13.118324279785156\n      ],\n      [\n        \"▁idylli\",\n        -13.118325233459473\n      ],\n      [\n        \"▁caldura\",\n        -13.118447303771973\n      ],\n      [\n        \"▁tablette\",\n        -13.118535995483398\n      ],\n      [\n        \"▁liquidity\",\n        -13.118728637695312\n      ],\n      [\n        \"NGOs\",\n        -13.118885040283203\n      ],\n      [\n        \"▁supliment\",\n        -13.11889934539795\n      ],\n      [\n        \"contact\",\n        -13.119075775146484\n      ],\n      [\n        \"lustig\",\n        -13.119219779968262\n      ],\n      [\n        \"▁watercolor\",\n        -13.119319915771484\n      ],\n      [\n        \"▁Tiffany\",\n        -13.119344711303711\n      ],\n      [\n        \"▁Glauben\",\n        -13.119365692138672\n      ],\n      [\n        \"Immobilie\",\n        -13.119406700134277\n      ],\n      [\n        \"▁stripped\",\n        -13.119549751281738\n      ],\n      [\n        \"▁Beatles\",\n        -13.119601249694824\n      ],\n      [\n        \"ани\",\n        -13.119770050048828\n      ],\n      [\n        \"▁lifespan\",\n        -13.119986534118652\n      ],\n      [\n        \"▁profondeur\",\n        -13.120251655578613\n      ],\n      [\n        \"▁durere\",\n        -13.120329856872559\n      ],\n      [\n        \"▁Lithuania\",\n        -13.120367050170898\n      ],\n      [\n        \"▁resurrection\",\n        -13.120367050170898\n      ],\n      [\n        \"▁suitcase\",\n        -13.120535850524902\n      ],\n      [\n        \"▁Plumber\",\n        -13.120545387268066\n      ],\n      [\n        \"criticized\",\n        -13.120595932006836\n      ],\n      [\n        \"feared\",\n        -13.120756149291992\n      ],\n      [\n        \"▁Aunt\",\n        -13.120929718017578\n      ],\n      [\n        \"otwithstanding\",\n        -13.121068000793457\n      ],\n      [\n        \"verständlich\",\n        -13.12115478515625\n      ],\n      [\n        \"fiber\",\n        -13.121248245239258\n      ],\n      [\n        \"headquartered\",\n        -13.121390342712402\n      ],\n      [\n        \"▁Perspective\",\n        -13.121391296386719\n      ],\n      [\n        \"▁semantic\",\n        -13.121413230895996\n      ],\n      [\n        \"VIEW\",\n        -13.121431350708008\n      ],\n      [\n        \"▁Ersatzteile\",\n        -13.121567726135254\n      ],\n      [\n        \"▁disgust\",\n        -13.121685981750488\n      ],\n      [\n        \"rrington\",\n        -13.121834754943848\n      ],\n      [\n        \"ässe\",\n        -13.121922492980957\n      ],\n      [\n        \"▁anerkannt\",\n        -13.121956825256348\n      ],\n      [\n        \"meaning\",\n        -13.12203598022461\n      ],\n      [\n        \"178\",\n        -13.122039794921875\n      ],\n      [\n        \"▁grupuri\",\n        -13.1221284866333\n      ],\n      [\n        \"ciones\",\n        -13.122267723083496\n      ],\n      [\n        \"▁Mobility\",\n        -13.122414588928223\n      ],\n      [\n        \"▁unstable\",\n        -13.122422218322754\n      ],\n      [\n        \"▁FULL\",\n        -13.122456550598145\n      ],\n      [\n        \"austausch\",\n        -13.122491836547852\n      ],\n      [\n        \"▁culminat\",\n        -13.122549057006836\n      ],\n      [\n        \"▁Roast\",\n        -13.122742652893066\n      ],\n      [\n        \"existant\",\n        -13.122940063476562\n      ],\n      [\n        \"167\",\n        -13.123008728027344\n      ],\n      [\n        \"tinerii\",\n        -13.123040199279785\n      ],\n      [\n        \"September\",\n        -13.123115539550781\n      ],\n      [\n        \"▁haircut\",\n        -13.123274803161621\n      ],\n      [\n        \"▁Tutorial\",\n        -13.123440742492676\n      ],\n      [\n        \"▁enquiries\",\n        -13.123440742492676\n      ],\n      [\n        \"▁livelihood\",\n        -13.123440742492676\n      ],\n      [\n        \"▁proficiency\",\n        -13.123440742492676\n      ],\n      [\n        \"▁pavement\",\n        -13.123443603515625\n      ],\n      [\n        \"▁Reservation\",\n        -13.123445510864258\n      ],\n      [\n        \"aimerai\",\n        -13.123491287231445\n      ],\n      [\n        \"▁laboratoire\",\n        -13.123492240905762\n      ],\n      [\n        \"leihen\",\n        -13.123501777648926\n      ],\n      [\n        \"ministerium\",\n        -13.123518943786621\n      ],\n      [\n        \"▁Concentr\",\n        -13.12366008758545\n      ],\n      [\n        \"▁swipe\",\n        -13.12368106842041\n      ],\n      [\n        \"extrêmement\",\n        -13.123687744140625\n      ],\n      [\n        \"cultivated\",\n        -13.123708724975586\n      ],\n      [\n        \"▁Converse\",\n        -13.123845100402832\n      ],\n      [\n        \"▁paycheck\",\n        -13.123863220214844\n      ],\n      [\n        \"olltest\",\n        -13.123995780944824\n      ],\n      [\n        \"▁Bauch\",\n        -13.124022483825684\n      ],\n      [\n        \"▁autobuz\",\n        -13.124067306518555\n      ],\n      [\n        \"attack\",\n        -13.124094009399414\n      ],\n      [\n        \"While\",\n        -13.124311447143555\n      ],\n      [\n        \"Retrouvez\",\n        -13.124320983886719\n      ],\n      [\n        \"▁Dolphin\",\n        -13.124466896057129\n      ],\n      [\n        \"▁Shelby\",\n        -13.124480247497559\n      ],\n      [\n        \"▁Diagnostic\",\n        -13.124486923217773\n      ],\n      [\n        \"▁reconcil\",\n        -13.124558448791504\n      ],\n      [\n        \"▁Iaşi\",\n        -13.124733924865723\n      ],\n      [\n        \"▁iubesc\",\n        -13.124979972839355\n      ],\n      [\n        \"▁Bestseller\",\n        -13.124985694885254\n      ],\n      [\n        \"▁antrenor\",\n        -13.125035285949707\n      ],\n      [\n        \"▁Imaging\",\n        -13.125089645385742\n      ],\n      [\n        \"▁priorité\",\n        -13.125295639038086\n      ],\n      [\n        \"▁brewery\",\n        -13.125494003295898\n      ],\n      [\n        \"▁residual\",\n        -13.125494003295898\n      ],\n      [\n        \"▁intermittent\",\n        -13.125494956970215\n      ],\n      [\n        \"Kollekt\",\n        -13.125585556030273\n      ],\n      [\n        \"▁Walsh\",\n        -13.12558650970459\n      ],\n      [\n        \"▁marvelous\",\n        -13.125653266906738\n      ],\n      [\n        \"canceled\",\n        -13.125686645507812\n      ],\n      [\n        \"174\",\n        -13.125761985778809\n      ],\n      [\n        \"normes\",\n        -13.125837326049805\n      ],\n      [\n        \"▁Tempo\",\n        -13.125996589660645\n      ],\n      [\n        \"▁Târgu\",\n        -13.126008987426758\n      ],\n      [\n        \"877\",\n        -13.126165390014648\n      ],\n      [\n        \"5-8\",\n        -13.126190185546875\n      ],\n      [\n        \"960\",\n        -13.126486778259277\n      ],\n      [\n        \"▁Scandinavia\",\n        -13.1265230178833\n      ],\n      [\n        \"▁prolific\",\n        -13.126526832580566\n      ],\n      [\n        \"lasi\",\n        -13.126916885375977\n      ],\n      [\n        \"glück\",\n        -13.127097129821777\n      ],\n      [\n        \"▁immersion\",\n        -13.127204895019531\n      ],\n      [\n        \"RSA\",\n        -13.127323150634766\n      ],\n      [\n        \"▁Polk\",\n        -13.127340316772461\n      ],\n      [\n        \"▁transmitter\",\n        -13.12747859954834\n      ],\n      [\n        \"▁Kleidung\",\n        -13.12755298614502\n      ],\n      [\n        \"▁Cosmo\",\n        -13.127676963806152\n      ],\n      [\n        \"▁1935\",\n        -13.127788543701172\n      ],\n      [\n        \"höhere\",\n        -13.127906799316406\n      ],\n      [\n        \"▁Tatsache\",\n        -13.128074645996094\n      ],\n      [\n        \"▁Outlet\",\n        -13.1282377243042\n      ],\n      [\n        \"▁canalisation\",\n        -13.12824821472168\n      ],\n      [\n        \"Mbps\",\n        -13.128433227539062\n      ],\n      [\n        \"▁skeptical\",\n        -13.128582954406738\n      ],\n      [\n        \"mplification\",\n        -13.128617286682129\n      ],\n      [\n        \"▁Advice\",\n        -13.128618240356445\n      ],\n      [\n        \"▁détaillé\",\n        -13.128676414489746\n      ],\n      [\n        \"660\",\n        -13.128701210021973\n      ],\n      [\n        \"▁eyebrow\",\n        -13.128722190856934\n      ],\n      [\n        \"▁HIGH\",\n        -13.128898620605469\n      ],\n      [\n        \"hnlich\",\n        -13.129073143005371\n      ],\n      [\n        \"▁depăș\",\n        -13.12910270690918\n      ],\n      [\n        \"▁procurori\",\n        -13.129140853881836\n      ],\n      [\n        \"▁refrain\",\n        -13.129212379455566\n      ],\n      [\n        \"▁geschaffen\",\n        -13.12952995300293\n      ],\n      [\n        \"justement\",\n        -13.129663467407227\n      ],\n      [\n        \"exposing\",\n        -13.129700660705566\n      ],\n      [\n        \"243\",\n        -13.1298828125\n      ],\n      [\n        \"sectorul\",\n        -13.130104064941406\n      ],\n      [\n        \"▁courrier\",\n        -13.130180358886719\n      ],\n      [\n        \"▁carcas\",\n        -13.130199432373047\n      ],\n      [\n        \"sitter\",\n        -13.13022518157959\n      ],\n      [\n        \"▁Schreiben\",\n        -13.130335807800293\n      ],\n      [\n        \"▁malfunction\",\n        -13.130358695983887\n      ],\n      [\n        \"poartă\",\n        -13.130522727966309\n      ],\n      [\n        \"raisons\",\n        -13.130565643310547\n      ],\n      [\n        \"▁HOT\",\n        -13.130650520324707\n      ],\n      [\n        \"▁refreshed\",\n        -13.130730628967285\n      ],\n      [\n        \"mânt\",\n        -13.130744934082031\n      ],\n      [\n        \"▁coefficient\",\n        -13.13097858428955\n      ],\n      [\n        \"▁instituţii\",\n        -13.131194114685059\n      ],\n      [\n        \"▁sanguin\",\n        -13.131202697753906\n      ],\n      [\n        \"▁ceci\",\n        -13.131213188171387\n      ],\n      [\n        \"▁garçon\",\n        -13.131232261657715\n      ],\n      [\n        \"deluxe\",\n        -13.131237030029297\n      ],\n      [\n        \"▁rectif\",\n        -13.131311416625977\n      ],\n      [\n        \"920\",\n        -13.131364822387695\n      ],\n      [\n        \"Exista\",\n        -13.131428718566895\n      ],\n      [\n        \"▁magnif\",\n        -13.131568908691406\n      ],\n      [\n        \"efficiencies\",\n        -13.131681442260742\n      ],\n      [\n        \"▁Mitsubishi\",\n        -13.131681442260742\n      ],\n      [\n        \"▁consortium\",\n        -13.131681442260742\n      ],\n      [\n        \"▁baggage\",\n        -13.131683349609375\n      ],\n      [\n        \"▁guild\",\n        -13.131736755371094\n      ],\n      [\n        \"▁sixty\",\n        -13.13193130493164\n      ],\n      [\n        \"▁Retreat\",\n        -13.13245677947998\n      ],\n      [\n        \"batting\",\n        -13.132473945617676\n      ],\n      [\n        \"470\",\n        -13.132708549499512\n      ],\n      [\n        \"▁Britanie\",\n        -13.132718086242676\n      ],\n      [\n        \"displaced\",\n        -13.132734298706055\n      ],\n      [\n        \"▁spați\",\n        -13.132794380187988\n      ],\n      [\n        \"▁exceptionnelle\",\n        -13.13281536102295\n      ],\n      [\n        \"▁authorize\",\n        -13.132906913757324\n      ],\n      [\n        \"▁prescribe\",\n        -13.133187294006348\n      ],\n      [\n        \"▁dépannage\",\n        -13.133234024047852\n      ],\n      [\n        \"▁sexuelle\",\n        -13.133234024047852\n      ],\n      [\n        \"valid\",\n        -13.133275032043457\n      ],\n      [\n        \"▁hymn\",\n        -13.133752822875977\n      ],\n      [\n        \"▁histories\",\n        -13.133757591247559\n      ],\n      [\n        \"▁oriunde\",\n        -13.133764266967773\n      ],\n      [\n        \"Pop\",\n        -13.133785247802734\n      ],\n      [\n        \"▁dispoziţi\",\n        -13.133800506591797\n      ],\n      [\n        \"ADI\",\n        -13.133819580078125\n      ],\n      [\n        \"Google\",\n        -13.133830070495605\n      ],\n      [\n        \"▁Autism\",\n        -13.133918762207031\n      ],\n      [\n        \"▁aggr\",\n        -13.134354591369629\n      ],\n      [\n        \"bleed\",\n        -13.134618759155273\n      ],\n      [\n        \"▁displacement\",\n        -13.13478946685791\n      ],\n      [\n        \"▁hobbies\",\n        -13.13478946685791\n      ],\n      [\n        \"▁anatomy\",\n        -13.134799003601074\n      ],\n      [\n        \"▁Klinik\",\n        -13.134821891784668\n      ],\n      [\n        \"▁CCTV\",\n        -13.1348237991333\n      ],\n      [\n        \"readable\",\n        -13.134886741638184\n      ],\n      [\n        \"ulph\",\n        -13.134982109069824\n      ],\n      [\n        \"metabol\",\n        -13.135035514831543\n      ],\n      [\n        \"▁rugăm\",\n        -13.135037422180176\n      ],\n      [\n        \"▁Scotia\",\n        -13.135087013244629\n      ],\n      [\n        \"▁Einheit\",\n        -13.135211944580078\n      ],\n      [\n        \"▁troupe\",\n        -13.13581371307373\n      ],\n      [\n        \"▁Practitioner\",\n        -13.135828018188477\n      ],\n      [\n        \"▁oarec\",\n        -13.135909080505371\n      ],\n      [\n        \"Appel\",\n        -13.135998725891113\n      ],\n      [\n        \"situația\",\n        -13.136096000671387\n      ],\n      [\n        \"▁Yemen\",\n        -13.136353492736816\n      ],\n      [\n        \"piping\",\n        -13.136515617370605\n      ],\n      [\n        \"blood\",\n        -13.136772155761719\n      ],\n      [\n        \"engraved\",\n        -13.136866569519043\n      ],\n      [\n        \"▁Cristina\",\n        -13.136866569519043\n      ],\n      [\n        \"▁inaccurate\",\n        -13.136866569519043\n      ],\n      [\n        \"savory\",\n        -13.136878967285156\n      ],\n      [\n        \"atism\",\n        -13.136919021606445\n      ],\n      [\n        \"▁dependency\",\n        -13.137007713317871\n      ],\n      [\n        \"▁assertion\",\n        -13.137015342712402\n      ],\n      [\n        \"▁intersect\",\n        -13.137201309204102\n      ],\n      [\n        \"DATA\",\n        -13.137224197387695\n      ],\n      [\n        \"▁britanic\",\n        -13.1373872756958\n      ],\n      [\n        \"▁sanitaire\",\n        -13.137393951416016\n      ],\n      [\n        \"▁PLUS\",\n        -13.137436866760254\n      ],\n      [\n        \"▁platter\",\n        -13.137730598449707\n      ],\n      [\n        \"▁reconsider\",\n        -13.137802124023438\n      ],\n      [\n        \"▁Swim\",\n        -13.13786792755127\n      ],\n      [\n        \"▁Scene\",\n        -13.137896537780762\n      ],\n      [\n        \"▁Reynolds\",\n        -13.137907028198242\n      ],\n      [\n        \"▁gesund\",\n        -13.137922286987305\n      ],\n      [\n        \"international\",\n        -13.137959480285645\n      ],\n      [\n        \"government\",\n        -13.13804817199707\n      ],\n      [\n        \"▁gemstone\",\n        -13.138052940368652\n      ],\n      [\n        \"▁reproductive\",\n        -13.1381196975708\n      ],\n      [\n        \"▁expressive\",\n        -13.13820743560791\n      ],\n      [\n        \"▁tranche\",\n        -13.13842487335205\n      ],\n      [\n        \"▁Niagara\",\n        -13.138427734375\n      ],\n      [\n        \"▁Studierende\",\n        -13.138434410095215\n      ],\n      [\n        \"▁crave\",\n        -13.138607025146484\n      ],\n      [\n        \"pathetic\",\n        -13.138739585876465\n      ],\n      [\n        \"▁1916\",\n        -13.138858795166016\n      ],\n      [\n        \"▁Thousand\",\n        -13.138873100280762\n      ],\n      [\n        \"uffed\",\n        -13.138893127441406\n      ],\n      [\n        \"▁Lancaster\",\n        -13.138960838317871\n      ],\n      [\n        \"▁revenge\",\n        -13.138972282409668\n      ],\n      [\n        \"▁melody\",\n        -13.1389741897583\n      ],\n      [\n        \"Suitable\",\n        -13.138991355895996\n      ],\n      [\n        \"▁beacon\",\n        -13.139082908630371\n      ],\n      [\n        \"▁MAY\",\n        -13.139205932617188\n      ],\n      [\n        \"livré\",\n        -13.139216423034668\n      ],\n      [\n        \"Virus\",\n        -13.139391899108887\n      ],\n      [\n        \"▁collaborator\",\n        -13.139413833618164\n      ],\n      [\n        \"produktion\",\n        -13.139480590820312\n      ],\n      [\n        \"▁iluminat\",\n        -13.139593124389648\n      ],\n      [\n        \"facets\",\n        -13.13975715637207\n      ],\n      [\n        \"▁expus\",\n        -13.139784812927246\n      ],\n      [\n        \"▁baptism\",\n        -13.13999080657959\n      ],\n      [\n        \"▁urgency\",\n        -13.140016555786133\n      ],\n      [\n        \"artery\",\n        -13.14030647277832\n      ],\n      [\n        \"▁eingeladen\",\n        -13.14043140411377\n      ],\n      [\n        \"▁entfernen\",\n        -13.14051342010498\n      ],\n      [\n        \"soaking\",\n        -13.140555381774902\n      ],\n      [\n        \"▁irré\",\n        -13.140557289123535\n      ],\n      [\n        \"▁purity\",\n        -13.140700340270996\n      ],\n      [\n        \"▁adăug\",\n        -13.140731811523438\n      ],\n      [\n        \"historischen\",\n        -13.140777587890625\n      ],\n      [\n        \"crezi\",\n        -13.140793800354004\n      ],\n      [\n        \"▁tarziu\",\n        -13.141035079956055\n      ],\n      [\n        \"▁Mozart\",\n        -13.141040802001953\n      ],\n      [\n        \"▁trimming\",\n        -13.141056060791016\n      ],\n      [\n        \"▁violat\",\n        -13.141056060791016\n      ],\n      [\n        \"▁Vermögen\",\n        -13.14108943939209\n      ],\n      [\n        \"▁Theorie\",\n        -13.141114234924316\n      ],\n      [\n        \"scheibe\",\n        -13.14114761352539\n      ],\n      [\n        \"Partidul\",\n        -13.141324996948242\n      ],\n      [\n        \"▁childcare\",\n        -13.14133071899414\n      ],\n      [\n        \"ajele\",\n        -13.141345977783203\n      ],\n      [\n        \"▁Punjab\",\n        -13.141390800476074\n      ],\n      [\n        \"6.3\",\n        -13.14156436920166\n      ],\n      [\n        \"▁recount\",\n        -13.141571044921875\n      ],\n      [\n        \"▁repel\",\n        -13.141799926757812\n      ],\n      [\n        \"vantage\",\n        -13.1419095993042\n      ],\n      [\n        \"6.4\",\n        -13.141953468322754\n      ],\n      [\n        \"▁comedian\",\n        -13.142087936401367\n      ],\n      [\n        \"▁snappe\",\n        -13.142256736755371\n      ],\n      [\n        \"PLE\",\n        -13.142271041870117\n      ],\n      [\n        \"▁rapper\",\n        -13.142439842224121\n      ],\n      [\n        \"▁Belfast\",\n        -13.142657279968262\n      ],\n      [\n        \"▁predictive\",\n        -13.14271068572998\n      ],\n      [\n        \"dépôt\",\n        -13.1427583694458\n      ],\n      [\n        \"flavored\",\n        -13.142769813537598\n      ],\n      [\n        \"chließlich\",\n        -13.14293098449707\n      ],\n      [\n        \"▁stump\",\n        -13.142955780029297\n      ],\n      [\n        \"▁lakh\",\n        -13.142963409423828\n      ],\n      [\n        \"3:30\",\n        -13.143021583557129\n      ],\n      [\n        \"▁cetățeni\",\n        -13.1431245803833\n      ],\n      [\n        \"▁Milliarden\",\n        -13.143125534057617\n      ],\n      [\n        \"Assurance\",\n        -13.143128395080566\n      ],\n      [\n        \"▁Marketplace\",\n        -13.143329620361328\n      ],\n      [\n        \"equipped\",\n        -13.143423080444336\n      ],\n      [\n        \"▁russe\",\n        -13.143462181091309\n      ],\n      [\n        \"Exactly\",\n        -13.143651008605957\n      ],\n      [\n        \"▁Venez\",\n        -13.144125938415527\n      ],\n      [\n        \"▁Pavilion\",\n        -13.144171714782715\n      ],\n      [\n        \"▁incontournable\",\n        -13.144171714782715\n      ],\n      [\n        \"▁slaughter\",\n        -13.14417839050293\n      ],\n      [\n        \"asteptam\",\n        -13.144190788269043\n      ],\n      [\n        \"▁Fighter\",\n        -13.144196510314941\n      ],\n      [\n        \"▁Landkreis\",\n        -13.144278526306152\n      ],\n      [\n        \"▁lumini\",\n        -13.144312858581543\n      ],\n      [\n        \"▁connaît\",\n        -13.144615173339844\n      ],\n      [\n        \"▁Breite\",\n        -13.144674301147461\n      ],\n      [\n        \"▁Disability\",\n        -13.144774436950684\n      ],\n      [\n        \"▁Alfa\",\n        -13.144786834716797\n      ],\n      [\n        \"▁poise\",\n        -13.144895553588867\n      ],\n      [\n        \"▁Alpen\",\n        -13.144898414611816\n      ],\n      [\n        \"betont\",\n        -13.145031929016113\n      ],\n      [\n        \"159\",\n        -13.145161628723145\n      ],\n      [\n        \"▁geprägt\",\n        -13.145219802856445\n      ],\n      [\n        \"▁intrigued\",\n        -13.145219802856445\n      ],\n      [\n        \"▁sympathy\",\n        -13.145220756530762\n      ],\n      [\n        \"societal\",\n        -13.145225524902344\n      ],\n      [\n        \"▁sédui\",\n        -13.145243644714355\n      ],\n      [\n        \"▁differentiation\",\n        -13.145384788513184\n      ],\n      [\n        \"▁aprobare\",\n        -13.145744323730469\n      ],\n      [\n        \"schirm\",\n        -13.14585018157959\n      ],\n      [\n        \"sagt\",\n        -13.145956039428711\n      ],\n      [\n        \"7.3\",\n        -13.146101951599121\n      ],\n      [\n        \"Bib\",\n        -13.146263122558594\n      ],\n      [\n        \"europäischen\",\n        -13.146268844604492\n      ],\n      [\n        \"▁Innovative\",\n        -13.146268844604492\n      ],\n      [\n        \"▁autonome\",\n        -13.146330833435059\n      ],\n      [\n        \"▁Objective\",\n        -13.146400451660156\n      ],\n      [\n        \"▁refusal\",\n        -13.146551132202148\n      ],\n      [\n        \"▁exposé\",\n        -13.146719932556152\n      ],\n      [\n        \"▁cetăţeni\",\n        -13.146793365478516\n      ],\n      [\n        \"▁stimmt\",\n        -13.146798133850098\n      ],\n      [\n        \"acordul\",\n        -13.147162437438965\n      ],\n      [\n        \"▁hormonal\",\n        -13.147254943847656\n      ],\n      [\n        \"intermédiaire\",\n        -13.147319793701172\n      ],\n      [\n        \"▁doubl\",\n        -13.147374153137207\n      ],\n      [\n        \"▁flute\",\n        -13.147509574890137\n      ],\n      [\n        \"▁Balkon\",\n        -13.147523880004883\n      ],\n      [\n        \"▁Florian\",\n        -13.147607803344727\n      ],\n      [\n        \"737\",\n        -13.147614479064941\n      ],\n      [\n        \"▁dritte\",\n        -13.147639274597168\n      ],\n      [\n        \"spitze\",\n        -13.147685050964355\n      ],\n      [\n        \"donnent\",\n        -13.14778995513916\n      ],\n      [\n        \"▁Zuhause\",\n        -13.147850036621094\n      ],\n      [\n        \"▁VIII\",\n        -13.147852897644043\n      ],\n      [\n        \"familien\",\n        -13.148151397705078\n      ],\n      [\n        \"▁sécurisé\",\n        -13.148313522338867\n      ],\n      [\n        \"▁glamour\",\n        -13.148370742797852\n      ],\n      [\n        \"▁societati\",\n        -13.148370742797852\n      ],\n      [\n        \"typique\",\n        -13.1483793258667\n      ],\n      [\n        \"▁addicted\",\n        -13.148421287536621\n      ],\n      [\n        \"▁Providence\",\n        -13.148500442504883\n      ],\n      [\n        \"▁Extended\",\n        -13.148506164550781\n      ],\n      [\n        \"▁Barbie\",\n        -13.148513793945312\n      ],\n      [\n        \"zustand\",\n        -13.148516654968262\n      ],\n      [\n        \"▁Sauna\",\n        -13.148638725280762\n      ],\n      [\n        \"▁propane\",\n        -13.148663520812988\n      ],\n      [\n        \"europa\",\n        -13.148894309997559\n      ],\n      [\n        \"glued\",\n        -13.148940086364746\n      ],\n      [\n        \"▁Mystery\",\n        -13.148941993713379\n      ],\n      [\n        \"▁travaillé\",\n        -13.149106979370117\n      ],\n      [\n        \"riol\",\n        -13.149251937866211\n      ],\n      [\n        \"fleisch\",\n        -13.149288177490234\n      ],\n      [\n        \"▁Eintritt\",\n        -13.149327278137207\n      ],\n      [\n        \"▁Syndrome\",\n        -13.149422645568848\n      ],\n      [\n        \"▁petroleum\",\n        -13.149426460266113\n      ],\n      [\n        \"▁genial\",\n        -13.149433135986328\n      ],\n      [\n        \"sponsored\",\n        -13.149436950683594\n      ],\n      [\n        \"▁Cindy\",\n        -13.149436950683594\n      ],\n      [\n        \"▁courier\",\n        -13.149600982666016\n      ],\n      [\n        \"▁Scrap\",\n        -13.149640083312988\n      ],\n      [\n        \"▁conţin\",\n        -13.149724006652832\n      ],\n      [\n        \"(2007)\",\n        -13.149764060974121\n      ],\n      [\n        \"▁gewährleisten\",\n        -13.149949073791504\n      ],\n      [\n        \"▁proprietor\",\n        -13.15011215209961\n      ],\n      [\n        \"▁cheque\",\n        -13.15046215057373\n      ],\n      [\n        \"maternity\",\n        -13.150477409362793\n      ],\n      [\n        \"▁Gustav\",\n        -13.15048599243164\n      ],\n      [\n        \"▁arterial\",\n        -13.150497436523438\n      ],\n      [\n        \"▁whiskey\",\n        -13.150510787963867\n      ],\n      [\n        \"▁concealed\",\n        -13.150525093078613\n      ],\n      [\n        \"thèque\",\n        -13.150553703308105\n      ],\n      [\n        \"felony\",\n        -13.150579452514648\n      ],\n      [\n        \"▁tweeted\",\n        -13.150613784790039\n      ],\n      [\n        \"OTA\",\n        -13.150619506835938\n      ],\n      [\n        \"nsel\",\n        -13.150664329528809\n      ],\n      [\n        \"▁coarse\",\n        -13.150664329528809\n      ],\n      [\n        \"▁identificat\",\n        -13.150707244873047\n      ],\n      [\n        \"▁variability\",\n        -13.150716781616211\n      ],\n      [\n        \"civ\",\n        -13.150843620300293\n      ],\n      [\n        \"▁drastic\",\n        -13.150956153869629\n      ],\n      [\n        \"▁hatred\",\n        -13.151090621948242\n      ],\n      [\n        \"▁Bürgermeister\",\n        -13.151237487792969\n      ],\n      [\n        \"▁utilizatorilor\",\n        -13.15124225616455\n      ],\n      [\n        \"OULD\",\n        -13.15137004852295\n      ],\n      [\n        \"rmaßen\",\n        -13.151383399963379\n      ],\n      [\n        \"▁windshield\",\n        -13.151530265808105\n      ],\n      [\n        \"▁Particular\",\n        -13.151531219482422\n      ],\n      [\n        \"▁Tunnel\",\n        -13.151638984680176\n      ],\n      [\n        \"▁litri\",\n        -13.15164852142334\n      ],\n      [\n        \"extrême\",\n        -13.15180492401123\n      ],\n      [\n        \"▁Schalt\",\n        -13.151944160461426\n      ],\n      [\n        \"paket\",\n        -13.152159690856934\n      ],\n      [\n        \"berlin\",\n        -13.152169227600098\n      ],\n      [\n        \"▁slujb\",\n        -13.152193069458008\n      ],\n      [\n        \"facilitated\",\n        -13.152206420898438\n      ],\n      [\n        \"Congressional\",\n        -13.152510643005371\n      ],\n      [\n        \"▁honeymoon\",\n        -13.152585983276367\n      ],\n      [\n        \"▁Provision\",\n        -13.152697563171387\n      ],\n      [\n        \"▁Outfit\",\n        -13.152779579162598\n      ],\n      [\n        \"udder\",\n        -13.152814865112305\n      ],\n      [\n        \"▁chandelier\",\n        -13.153002738952637\n      ],\n      [\n        \"donating\",\n        -13.153132438659668\n      ],\n      [\n        \"historic\",\n        -13.15333080291748\n      ],\n      [\n        \"organized\",\n        -13.153508186340332\n      ],\n      [\n        \"(8)\",\n        -13.15356731414795\n      ],\n      [\n        \"▁touristique\",\n        -13.153610229492188\n      ],\n      [\n        \"▁Roosevelt\",\n        -13.153643608093262\n      ],\n      [\n        \"▁Verständnis\",\n        -13.153643608093262\n      ],\n      [\n        \"▁prilej\",\n        -13.153655052185059\n      ],\n      [\n        \"Vanity\",\n        -13.153806686401367\n      ],\n      [\n        \"chilly\",\n        -13.153964042663574\n      ],\n      [\n        \"loyer\",\n        -13.154031753540039\n      ],\n      [\n        \"▁Zhang\",\n        -13.154053688049316\n      ],\n      [\n        \"▁Nouveau\",\n        -13.154193878173828\n      ],\n      [\n        \"Soft\",\n        -13.154326438903809\n      ],\n      [\n        \"▁motherboard\",\n        -13.15441608428955\n      ],\n      [\n        \"▁Erklärung\",\n        -13.154701232910156\n      ],\n      [\n        \"▁Tasmania\",\n        -13.154702186584473\n      ],\n      [\n        \"▁verändern\",\n        -13.154703140258789\n      ],\n      [\n        \"▁seldom\",\n        -13.154711723327637\n      ],\n      [\n        \"▁Karriere\",\n        -13.154714584350586\n      ],\n      [\n        \"▁Mixed\",\n        -13.154902458190918\n      ],\n      [\n        \"umfang\",\n        -13.154970169067383\n      ],\n      [\n        \"▁Strategies\",\n        -13.155035972595215\n      ],\n      [\n        \"CHAR\",\n        -13.155051231384277\n      ],\n      [\n        \"olitary\",\n        -13.155075073242188\n      ],\n      [\n        \"▁Persoan\",\n        -13.1550874710083\n      ],\n      [\n        \"bewegung\",\n        -13.155242919921875\n      ],\n      [\n        \"▁Ernest\",\n        -13.155367851257324\n      ],\n      [\n        \"withdrawn\",\n        -13.155855178833008\n      ],\n      [\n        \"▁stationary\",\n        -13.155881881713867\n      ],\n      [\n        \"▁bland\",\n        -13.155939102172852\n      ],\n      [\n        \"▁Replace\",\n        -13.156059265136719\n      ],\n      [\n        \"▁Londres\",\n        -13.156290054321289\n      ],\n      [\n        \"▁plural\",\n        -13.156290054321289\n      ],\n      [\n        \"▁concentrat\",\n        -13.156515121459961\n      ],\n      [\n        \"Maschine\",\n        -13.156675338745117\n      ],\n      [\n        \"▁Advocate\",\n        -13.156820297241211\n      ],\n      [\n        \"▁vermitteln\",\n        -13.156824111938477\n      ],\n      [\n        \"▁dispenser\",\n        -13.156827926635742\n      ],\n      [\n        \"▁tedious\",\n        -13.15695858001709\n      ],\n      [\n        \"▁Straight\",\n        -13.15705394744873\n      ],\n      [\n        \"▁Corona\",\n        -13.157061576843262\n      ],\n      [\n        \"▁monumental\",\n        -13.157073020935059\n      ],\n      [\n        \"▁migrate\",\n        -13.15720272064209\n      ],\n      [\n        \"▁verlieren\",\n        -13.157366752624512\n      ],\n      [\n        \"▁Lub\",\n        -13.157482147216797\n      ],\n      [\n        \"▁reinforcement\",\n        -13.157827377319336\n      ],\n      [\n        \"▁cherish\",\n        -13.157843589782715\n      ],\n      [\n        \"Veterinary\",\n        -13.157881736755371\n      ],\n      [\n        \"geschwindigkeit\",\n        -13.157881736755371\n      ],\n      [\n        \"▁féminin\",\n        -13.157881736755371\n      ],\n      [\n        \"▁Facilities\",\n        -13.157964706420898\n      ],\n      [\n        \"▁urmari\",\n        -13.158050537109375\n      ],\n      [\n        \"▁Vertical\",\n        -13.158098220825195\n      ],\n      [\n        \"echoe\",\n        -13.158188819885254\n      ],\n      [\n        \"toured\",\n        -13.158548355102539\n      ],\n      [\n        \"Served\",\n        -13.158772468566895\n      ],\n      [\n        \"más\",\n        -13.158853530883789\n      ],\n      [\n        \"license\",\n        -13.158893585205078\n      ],\n      [\n        \"misunderstanding\",\n        -13.158944129943848\n      ],\n      [\n        \"▁glamorous\",\n        -13.158944129943848\n      ],\n      [\n        \"BJP\",\n        -13.158973693847656\n      ],\n      [\n        \"▁découvert\",\n        -13.159173965454102\n      ],\n      [\n        \"schönsten\",\n        -13.159517288208008\n      ],\n      [\n        \"▁(2018)\",\n        -13.159577369689941\n      ],\n      [\n        \"▁orasului\",\n        -13.159581184387207\n      ],\n      [\n        \"328\",\n        -13.159674644470215\n      ],\n      [\n        \"thighs\",\n        -13.159801483154297\n      ],\n      [\n        \"éclairage\",\n        -13.160008430480957\n      ],\n      [\n        \"Oamenii\",\n        -13.160009384155273\n      ],\n      [\n        \"▁Transmission\",\n        -13.16014575958252\n      ],\n      [\n        \"▁transpir\",\n        -13.16015911102295\n      ],\n      [\n        \"▁președinte\",\n        -13.160321235656738\n      ],\n      [\n        \"finalists\",\n        -13.160327911376953\n      ],\n      [\n        \"genügend\",\n        -13.160524368286133\n      ],\n      [\n        \"▁Aufmerksamkeit\",\n        -13.160539627075195\n      ],\n      [\n        \"▁unglaublich\",\n        -13.160539627075195\n      ],\n      [\n        \"▁descarc\",\n        -13.160604476928711\n      ],\n      [\n        \"▁Couch\",\n        -13.160683631896973\n      ],\n      [\n        \"eaucoup\",\n        -13.160788536071777\n      ],\n      [\n        \"▁adidas\",\n        -13.161075592041016\n      ],\n      [\n        \"▁1-800-\",\n        -13.161077499389648\n      ],\n      [\n        \"▁Communities\",\n        -13.161102294921875\n      ],\n      [\n        \"▁Einkommen\",\n        -13.161102294921875\n      ],\n      [\n        \"▁Reagan\",\n        -13.16114330291748\n      ],\n      [\n        \"▁Stoke\",\n        -13.161260604858398\n      ],\n      [\n        \"▁Snapchat\",\n        -13.161269187927246\n      ],\n      [\n        \"éclat\",\n        -13.161272048950195\n      ],\n      [\n        \"▁auseinander\",\n        -13.161367416381836\n      ],\n      [\n        \"▁richesse\",\n        -13.16137409210205\n      ],\n      [\n        \"▁toggle\",\n        -13.161396026611328\n      ],\n      [\n        \"▁Zutaten\",\n        -13.161606788635254\n      ],\n      [\n        \"▁député\",\n        -13.16161060333252\n      ],\n      [\n        \"▁battlefield\",\n        -13.161611557006836\n      ],\n      [\n        \"▁spirituel\",\n        -13.161611557006836\n      ],\n      [\n        \"▁Shuttle\",\n        -13.161632537841797\n      ],\n      [\n        \"▁Aktien\",\n        -13.161665916442871\n      ],\n      [\n        \"hormon\",\n        -13.161819458007812\n      ],\n      [\n        \"connection\",\n        -13.16187858581543\n      ],\n      [\n        \"▁vizitatori\",\n        -13.16191577911377\n      ],\n      [\n        \"érité\",\n        -13.161971092224121\n      ],\n      [\n        \"truck\",\n        -13.1619873046875\n      ],\n      [\n        \"▁yourselves\",\n        -13.162139892578125\n      ],\n      [\n        \"▁Logistics\",\n        -13.162140846252441\n      ],\n      [\n        \"coveted\",\n        -13.16215705871582\n      ],\n      [\n        \"▁şedinţ\",\n        -13.162671089172363\n      ],\n      [\n        \"▁messenger\",\n        -13.162703514099121\n      ],\n      [\n        \"▁țar\",\n        -13.162918090820312\n      ],\n      [\n        \"▁Grau\",\n        -13.163025856018066\n      ],\n      [\n        \"chirurgie\",\n        -13.163138389587402\n      ],\n      [\n        \"▁Ressourcen\",\n        -13.16320514678955\n      ],\n      [\n        \"▁Jésus\",\n        -13.163207054138184\n      ],\n      [\n        \"▁acțiune\",\n        -13.163208961486816\n      ],\n      [\n        \"▁Bundesliga\",\n        -13.163249015808105\n      ],\n      [\n        \"Lizenz\",\n        -13.163379669189453\n      ],\n      [\n        \"ELLE\",\n        -13.163908958435059\n      ],\n      [\n        \"vraie\",\n        -13.1639986038208\n      ],\n      [\n        \"ruined\",\n        -13.164018630981445\n      ],\n      [\n        \"▁Marble\",\n        -13.164109230041504\n      ],\n      [\n        \"▁Zambia\",\n        -13.164308547973633\n      ],\n      [\n        \"▁Finnish\",\n        -13.164366722106934\n      ],\n      [\n        \"▁trackback\",\n        -13.164488792419434\n      ],\n      [\n        \"héros\",\n        -13.16451644897461\n      ],\n      [\n        \"▁réclam\",\n        -13.164534568786621\n      ],\n      [\n        \"locurile\",\n        -13.164706230163574\n      ],\n      [\n        \"tägliche\",\n        -13.164753913879395\n      ],\n      [\n        \"IFF\",\n        -13.164824485778809\n      ],\n      [\n        \"▁contextual\",\n        -13.164938926696777\n      ],\n      [\n        \"▁Elvis\",\n        -13.165084838867188\n      ],\n      [\n        \"▁Batch\",\n        -13.165183067321777\n      ],\n      [\n        \"▁appris\",\n        -13.16519546508789\n      ],\n      [\n        \"intensive\",\n        -13.165404319763184\n      ],\n      [\n        \"▁întâmplat\",\n        -13.16565990447998\n      ],\n      [\n        \"▁prelucr\",\n        -13.16576099395752\n      ],\n      [\n        \"flore\",\n        -13.165873527526855\n      ],\n      [\n        \"▁Alkohol\",\n        -13.165877342224121\n      ],\n      [\n        \"Konzern\",\n        -13.165895462036133\n      ],\n      [\n        \"Delete\",\n        -13.166082382202148\n      ],\n      [\n        \"öck\",\n        -13.16612720489502\n      ],\n      [\n        \"▁clientii\",\n        -13.16614818572998\n      ],\n      [\n        \"▁innovate\",\n        -13.166224479675293\n      ],\n      [\n        \"▁ASAP\",\n        -13.166345596313477\n      ],\n      [\n        \"crumbs\",\n        -13.166425704956055\n      ],\n      [\n        \"reusable\",\n        -13.166489601135254\n      ],\n      [\n        \"▁Beaver\",\n        -13.166507720947266\n      ],\n      [\n        \"▁rosii\",\n        -13.166643142700195\n      ],\n      [\n        \"Arr\",\n        -13.166704177856445\n      ],\n      [\n        \"▁Zubehör\",\n        -13.166948318481445\n      ],\n      [\n        \"▁stolz\",\n        -13.166952133178711\n      ],\n      [\n        \"▁$75\",\n        -13.16695499420166\n      ],\n      [\n        \"▁Frühling\",\n        -13.166967391967773\n      ],\n      [\n        \"▁disagreement\",\n        -13.166988372802734\n      ],\n      [\n        \"▁formulate\",\n        -13.167381286621094\n      ],\n      [\n        \"braking\",\n        -13.167522430419922\n      ],\n      [\n        \"▁submarine\",\n        -13.167535781860352\n      ],\n      [\n        \"▁identificare\",\n        -13.167652130126953\n      ],\n      [\n        \"lansarea\",\n        -13.167659759521484\n      ],\n      [\n        \"covered\",\n        -13.167753219604492\n      ],\n      [\n        \"benso\",\n        -13.167859077453613\n      ],\n      [\n        \"▁situatie\",\n        -13.167989730834961\n      ],\n      [\n        \"hilf\",\n        -13.1681547164917\n      ],\n      [\n        \"▁Southampton\",\n        -13.168557167053223\n      ],\n      [\n        \"▁intéressé\",\n        -13.168557167053223\n      ],\n      [\n        \"▁congressional\",\n        -13.168572425842285\n      ],\n      [\n        \"65%\",\n        -13.168595314025879\n      ],\n      [\n        \"▁Allison\",\n        -13.168627738952637\n      ],\n      [\n        \"Mainland\",\n        -13.168726921081543\n      ],\n      [\n        \"▁touchscreen\",\n        -13.16882038116455\n      ],\n      [\n        \"leitet\",\n        -13.168922424316406\n      ],\n      [\n        \"mnului\",\n        -13.16958999633789\n      ],\n      [\n        \"▁engagiert\",\n        -13.169631004333496\n      ],\n      [\n        \"joacă\",\n        -13.16964340209961\n      ],\n      [\n        \"▁$5,000\",\n        -13.169652938842773\n      ],\n      [\n        \"upscale\",\n        -13.1697359085083\n      ],\n      [\n        \"▁vérité\",\n        -13.16983413696289\n      ],\n      [\n        \"flüssig\",\n        -13.170167922973633\n      ],\n      [\n        \"Richtlinie\",\n        -13.170169830322266\n      ],\n      [\n        \"▁positif\",\n        -13.170169830322266\n      ],\n      [\n        \"▁diferenta\",\n        -13.170175552368164\n      ],\n      [\n        \"▁întâi\",\n        -13.170707702636719\n      ],\n      [\n        \"ethylene\",\n        -13.170791625976562\n      ],\n      [\n        \"kreuz\",\n        -13.170913696289062\n      ],\n      [\n        \"Surely\",\n        -13.170990943908691\n      ],\n      [\n        \"puneti\",\n        -13.171002388000488\n      ],\n      [\n        \"europe\",\n        -13.171142578125\n      ],\n      [\n        \"▁comunist\",\n        -13.171271324157715\n      ],\n      [\n        \"unterricht\",\n        -13.171302795410156\n      ],\n      [\n        \"▁Füll\",\n        -13.171304702758789\n      ],\n      [\n        \"▁Aberdeen\",\n        -13.171792030334473\n      ],\n      [\n        \"▁DSLR\",\n        -13.171792030334473\n      ],\n      [\n        \"▁functioneaza\",\n        -13.171799659729004\n      ],\n      [\n        \"▁benches\",\n        -13.171807289123535\n      ],\n      [\n        \"▁Alpine\",\n        -13.171866416931152\n      ],\n      [\n        \"phthal\",\n        -13.172003746032715\n      ],\n      [\n        \"▁counselling\",\n        -13.17219066619873\n      ],\n      [\n        \"▁erzielen\",\n        -13.172323226928711\n      ],\n      [\n        \"▁părinţi\",\n        -13.172329902648926\n      ],\n      [\n        \"▁besitzen\",\n        -13.17236614227295\n      ],\n      [\n        \"heavenly\",\n        -13.172389030456543\n      ],\n      [\n        \"▁masque\",\n        -13.17281723022461\n      ],\n      [\n        \"▁Legislature\",\n        -13.172859191894531\n      ],\n      [\n        \"▁Recycling\",\n        -13.172861099243164\n      ],\n      [\n        \"▁Derma\",\n        -13.172883987426758\n      ],\n      [\n        \"reunite\",\n        -13.172926902770996\n      ],\n      [\n        \"recettes\",\n        -13.17310619354248\n      ],\n      [\n        \"converge\",\n        -13.173262596130371\n      ],\n      [\n        \"▁compoziti\",\n        -13.17327880859375\n      ],\n      [\n        \"▁Nürnberg\",\n        -13.173398971557617\n      ],\n      [\n        \"760\",\n        -13.173545837402344\n      ],\n      [\n        \"▁entière\",\n        -13.173674583435059\n      ],\n      [\n        \"▁parchment\",\n        -13.173944473266602\n      ],\n      [\n        \"▁Aufwand\",\n        -13.173945426940918\n      ],\n      [\n        \"▁antivirus\",\n        -13.174087524414062\n      ],\n      [\n        \"▁remettr\",\n        -13.17409610748291\n      ],\n      [\n        \"▁NEVER\",\n        -13.174243927001953\n      ],\n      [\n        \"▁restrictive\",\n        -13.174266815185547\n      ],\n      [\n        \"▁beurre\",\n        -13.174283027648926\n      ],\n      [\n        \"▁frigider\",\n        -13.174478530883789\n      ],\n      [\n        \"acquisition\",\n        -13.174642562866211\n      ],\n      [\n        \"▁Correct\",\n        -13.174866676330566\n      ],\n      [\n        \"▁immortal\",\n        -13.175017356872559\n      ],\n      [\n        \"▁occupancy\",\n        -13.175017356872559\n      ],\n      [\n        \"▁Tucson\",\n        -13.175019264221191\n      ],\n      [\n        \"▁Dhabi\",\n        -13.175025939941406\n      ],\n      [\n        \"obligation\",\n        -13.175033569335938\n      ],\n      [\n        \"▁warfare\",\n        -13.175037384033203\n      ],\n      [\n        \"▁syntax\",\n        -13.175045013427734\n      ],\n      [\n        \"APS\",\n        -13.175106048583984\n      ],\n      [\n        \"мен\",\n        -13.175209999084473\n      ],\n      [\n        \"▁diferenț\",\n        -13.175251960754395\n      ],\n      [\n        \"wordpress\",\n        -13.17549991607666\n      ],\n      [\n        \"▁Wohnzimmer\",\n        -13.175593376159668\n      ],\n      [\n        \"oppo\",\n        -13.175736427307129\n      ],\n      [\n        \"▁miscare\",\n        -13.175762176513672\n      ],\n      [\n        \"companiilor\",\n        -13.17581558227539\n      ],\n      [\n        \"▁bezahlt\",\n        -13.17584228515625\n      ],\n      [\n        \"Sterne\",\n        -13.175864219665527\n      ],\n      [\n        \"inability\",\n        -13.175898551940918\n      ],\n      [\n        \"▁Hoffnung\",\n        -13.176156044006348\n      ],\n      [\n        \"▁românească\",\n        -13.176176071166992\n      ],\n      [\n        \"document\",\n        -13.176177024841309\n      ],\n      [\n        \"borrowers\",\n        -13.17625904083252\n      ],\n      [\n        \"▁rasa\",\n        -13.176301956176758\n      ],\n      [\n        \"▁bénéfice\",\n        -13.176445960998535\n      ],\n      [\n        \"▁Panda\",\n        -13.17645263671875\n      ],\n      [\n        \"▁cărţi\",\n        -13.176730155944824\n      ],\n      [\n        \"▁Vorgehen\",\n        -13.17690658569336\n      ],\n      [\n        \"▁afecteaz\",\n        -13.176956176757812\n      ],\n      [\n        \"▁diagnos\",\n        -13.177050590515137\n      ],\n      [\n        \"▁Dentistry\",\n        -13.177180290222168\n      ],\n      [\n        \"▁staggering\",\n        -13.177180290222168\n      ],\n      [\n        \"präsident\",\n        -13.177181243896484\n      ],\n      [\n        \"▁vocational\",\n        -13.177239418029785\n      ],\n      [\n        \"Combined\",\n        -13.177287101745605\n      ],\n      [\n        \"stère\",\n        -13.177306175231934\n      ],\n      [\n        \"▁frunze\",\n        -13.177478790283203\n      ],\n      [\n        \"OLI\",\n        -13.177525520324707\n      ],\n      [\n        \"▁răc\",\n        -13.177752494812012\n      ],\n      [\n        \"▁changé\",\n        -13.177754402160645\n      ],\n      [\n        \"▁reprezentanți\",\n        -13.177757263183594\n      ],\n      [\n        \"▁ausgeschlossen\",\n        -13.177777290344238\n      ],\n      [\n        \"Windows\",\n        -13.177891731262207\n      ],\n      [\n        \"sometimes\",\n        -13.177898406982422\n      ],\n      [\n        \"▁dargestellt\",\n        -13.178120613098145\n      ],\n      [\n        \"provoking\",\n        -13.178263664245605\n      ],\n      [\n        \"terribly\",\n        -13.178264617919922\n      ],\n      [\n        \"▁speculate\",\n        -13.178274154663086\n      ],\n      [\n        \"▁complément\",\n        -13.178305625915527\n      ],\n      [\n        \"▁(2006)\",\n        -13.178306579589844\n      ],\n      [\n        \"zulegen\",\n        -13.178668022155762\n      ],\n      [\n        \"▁définitive\",\n        -13.178876876831055\n      ],\n      [\n        \"considerare\",\n        -13.17911148071289\n      ],\n      [\n        \"▁Subaru\",\n        -13.179354667663574\n      ],\n      [\n        \"WAN\",\n        -13.179390907287598\n      ],\n      [\n        \"guessed\",\n        -13.179417610168457\n      ],\n      [\n        \"spannung\",\n        -13.179479598999023\n      ],\n      [\n        \"▁supernatural\",\n        -13.179515838623047\n      ],\n      [\n        \"▁Interstate\",\n        -13.17957878112793\n      ],\n      [\n        \"▁redundant\",\n        -13.179891586303711\n      ],\n      [\n        \"▁HUG\",\n        -13.179893493652344\n      ],\n      [\n        \"▁restauration\",\n        -13.180006980895996\n      ],\n      [\n        \"repute\",\n        -13.180011749267578\n      ],\n      [\n        \"coagul\",\n        -13.180028915405273\n      ],\n      [\n        \"tehnologia\",\n        -13.18043327331543\n      ],\n      [\n        \"warded\",\n        -13.180444717407227\n      ],\n      [\n        \"▁lobster\",\n        -13.180469512939453\n      ],\n      [\n        \"▁Hafen\",\n        -13.180542945861816\n      ],\n      [\n        \"▁Guess\",\n        -13.18056583404541\n      ],\n      [\n        \"seraient\",\n        -13.181038856506348\n      ],\n      [\n        \"▁trench\",\n        -13.181156158447266\n      ],\n      [\n        \"▁piept\",\n        -13.181283950805664\n      ],\n      [\n        \"categorized\",\n        -13.181396484375\n      ],\n      [\n        \"softer\",\n        -13.1815185546875\n      ],\n      [\n        \"▁feasibility\",\n        -13.181519508361816\n      ],\n      [\n        \"▁restructuring\",\n        -13.181519508361816\n      ],\n      [\n        \"▁GOOD\",\n        -13.181537628173828\n      ],\n      [\n        \"▁inspiré\",\n        -13.181610107421875\n      ],\n      [\n        \"▁spéci\",\n        -13.18163013458252\n      ],\n      [\n        \"▁Mattress\",\n        -13.181686401367188\n      ],\n      [\n        \"▁biologique\",\n        -13.181702613830566\n      ],\n      [\n        \"▁Crema\",\n        -13.182043075561523\n      ],\n      [\n        \"▁korrekt\",\n        -13.182063102722168\n      ],\n      [\n        \"▁imperfect\",\n        -13.182205200195312\n      ],\n      [\n        \"▁advantageous\",\n        -13.182329177856445\n      ],\n      [\n        \"9.00\",\n        -13.182390213012695\n      ],\n      [\n        \"PAL\",\n        -13.182557106018066\n      ],\n      [\n        \"▁Illustration\",\n        -13.182607650756836\n      ],\n      [\n        \"▁Katherine\",\n        -13.182607650756836\n      ],\n      [\n        \"▁cervical\",\n        -13.182607650756836\n      ],\n      [\n        \"▁hectic\",\n        -13.182611465454102\n      ],\n      [\n        \"▁Belastung\",\n        -13.182615280151367\n      ],\n      [\n        \"▁Laguna\",\n        -13.182628631591797\n      ],\n      [\n        \"▁Burton\",\n        -13.182761192321777\n      ],\n      [\n        \"nettoyage\",\n        -13.182875633239746\n      ],\n      [\n        \"Toward\",\n        -13.183072090148926\n      ],\n      [\n        \"continuare\",\n        -13.183072090148926\n      ],\n      [\n        \"▁acumulat\",\n        -13.183106422424316\n      ],\n      [\n        \"▁déposé\",\n        -13.183216094970703\n      ],\n      [\n        \"▁prestige\",\n        -13.183269500732422\n      ],\n      [\n        \"▁LNG\",\n        -13.183525085449219\n      ],\n      [\n        \"▁Dacia\",\n        -13.183662414550781\n      ],\n      [\n        \"▁concede\",\n        -13.183691024780273\n      ],\n      [\n        \"▁reconciliation\",\n        -13.183822631835938\n      ],\n      [\n        \"Sistemul\",\n        -13.183877944946289\n      ],\n      [\n        \"Speed\",\n        -13.183937072753906\n      ],\n      [\n        \"▁Implant\",\n        -13.183977127075195\n      ],\n      [\n        \"▁möchtest\",\n        -13.184020042419434\n      ],\n      [\n        \"▁Norton\",\n        -13.184064865112305\n      ],\n      [\n        \"▁cosmic\",\n        -13.184181213378906\n      ],\n      [\n        \"enregistrement\",\n        -13.184247016906738\n      ],\n      [\n        \"țării\",\n        -13.18433952331543\n      ],\n      [\n        \"Veröffentlichung\",\n        -13.184786796569824\n      ],\n      [\n        \"erlebnis\",\n        -13.184786796569824\n      ],\n      [\n        \"▁Carpenter\",\n        -13.184786796569824\n      ],\n      [\n        \"▁INFORMATION\",\n        -13.184786796569824\n      ],\n      [\n        \"invites\",\n        -13.18481731414795\n      ],\n      [\n        \"▁gewan\",\n        -13.1849365234375\n      ],\n      [\n        \"▁réservé\",\n        -13.184986114501953\n      ],\n      [\n        \"▁aquatic\",\n        -13.184988021850586\n      ],\n      [\n        \"▁Seoul\",\n        -13.18507194519043\n      ],\n      [\n        \"▁älter\",\n        -13.185185432434082\n      ],\n      [\n        \"▁classmates\",\n        -13.185223579406738\n      ],\n      [\n        \"gelangen\",\n        -13.185253143310547\n      ],\n      [\n        \"▁Camill\",\n        -13.185285568237305\n      ],\n      [\n        \"simo\",\n        -13.185291290283203\n      ],\n      [\n        \"▁dormitor\",\n        -13.185333251953125\n      ],\n      [\n        \"wahren\",\n        -13.185354232788086\n      ],\n      [\n        \"▁incremental\",\n        -13.185357093811035\n      ],\n      [\n        \"▁caci\",\n        -13.185494422912598\n      ],\n      [\n        \"mittlere\",\n        -13.185752868652344\n      ],\n      [\n        \"▁condominium\",\n        -13.185877799987793\n      ],\n      [\n        \"▁rainforest\",\n        -13.185877799987793\n      ],\n      [\n        \"▁championnat\",\n        -13.185891151428223\n      ],\n      [\n        \"▁interrupted\",\n        -13.185921669006348\n      ],\n      [\n        \"▁tactile\",\n        -13.185930252075195\n      ],\n      [\n        \"▁unconditional\",\n        -13.185945510864258\n      ],\n      [\n        \"▁reactive\",\n        -13.186041831970215\n      ],\n      [\n        \"▁Stretch\",\n        -13.1861572265625\n      ],\n      [\n        \"▁serene\",\n        -13.18624210357666\n      ],\n      [\n        \"570\",\n        -13.186318397521973\n      ],\n      [\n        \"igte\",\n        -13.186376571655273\n      ],\n      [\n        \"Louis\",\n        -13.186410903930664\n      ],\n      [\n        \"▁Mittelpunkt\",\n        -13.186493873596191\n      ],\n      [\n        \"EEP\",\n        -13.18651294708252\n      ],\n      [\n        \"▁vault\",\n        -13.186552047729492\n      ],\n      [\n        \"absolu\",\n        -13.186893463134766\n      ],\n      [\n        \"▁solidarity\",\n        -13.186971664428711\n      ],\n      [\n        \"CLICK\",\n        -13.18708324432373\n      ],\n      [\n        \"▁hustle\",\n        -13.187090873718262\n      ],\n      [\n        \"▁microscope\",\n        -13.187105178833008\n      ],\n      [\n        \"▁Recommended\",\n        -13.187111854553223\n      ],\n      [\n        \"âche\",\n        -13.18716812133789\n      ],\n      [\n        \"▁flashlight\",\n        -13.187286376953125\n      ],\n      [\n        \"modificarea\",\n        -13.18754768371582\n      ],\n      [\n        \"izaţi\",\n        -13.18773078918457\n      ],\n      [\n        \"planned\",\n        -13.187899589538574\n      ],\n      [\n        \"Download\",\n        -13.187906265258789\n      ],\n      [\n        \"▁gourmand\",\n        -13.188064575195312\n      ],\n      [\n        \"▁subsidiaries\",\n        -13.188064575195312\n      ],\n      [\n        \"orthodox\",\n        -13.188135147094727\n      ],\n      [\n        \"▁Auburn\",\n        -13.188323020935059\n      ],\n      [\n        \"▁exprimat\",\n        -13.188336372375488\n      ],\n      [\n        \"procédé\",\n        -13.18861198425293\n      ],\n      [\n        \"▁ressenti\",\n        -13.188648223876953\n      ],\n      [\n        \"▁stint\",\n        -13.188678741455078\n      ],\n      [\n        \"Essentially\",\n        -13.189072608947754\n      ],\n      [\n        \"▁Savior\",\n        -13.189164161682129\n      ],\n      [\n        \"▁Flood\",\n        -13.189168930053711\n      ],\n      [\n        \"▁neurological\",\n        -13.189249038696289\n      ],\n      [\n        \"▁strig\",\n        -13.189340591430664\n      ],\n      [\n        \"scended\",\n        -13.189421653747559\n      ],\n      [\n        \"▁Shiva\",\n        -13.189483642578125\n      ],\n      [\n        \"▁Sketch\",\n        -13.189544677734375\n      ],\n      [\n        \"▁monarch\",\n        -13.18956184387207\n      ],\n      [\n        \"▁Preview\",\n        -13.189632415771484\n      ],\n      [\n        \"▁bewegt\",\n        -13.189811706542969\n      ],\n      [\n        \"mapped\",\n        -13.189818382263184\n      ],\n      [\n        \"énorme\",\n        -13.189962387084961\n      ],\n      [\n        \"▁définition\",\n        -13.189963340759277\n      ],\n      [\n        \"▁nécessité\",\n        -13.189984321594238\n      ],\n      [\n        \"▁antren\",\n        -13.190027236938477\n      ],\n      [\n        \"▁Infant\",\n        -13.190072059631348\n      ],\n      [\n        \"▁incumbent\",\n        -13.190255165100098\n      ],\n      [\n        \"▁pavilion\",\n        -13.190255165100098\n      ],\n      [\n        \"▁Taliban\",\n        -13.19025707244873\n      ],\n      [\n        \"Easily\",\n        -13.19025993347168\n      ],\n      [\n        \"▁verteilt\",\n        -13.19030475616455\n      ],\n      [\n        \"▁Biblical\",\n        -13.190320014953613\n      ],\n      [\n        \"Christian\",\n        -13.190333366394043\n      ],\n      [\n        \"județul\",\n        -13.190436363220215\n      ],\n      [\n        \"Learning\",\n        -13.19046688079834\n      ],\n      [\n        \"▁Expand\",\n        -13.19054126739502\n      ],\n      [\n        \"▁Attach\",\n        -13.19056224822998\n      ],\n      [\n        \"consideră\",\n        -13.190573692321777\n      ],\n      [\n        \"einsatz\",\n        -13.190574645996094\n      ],\n      [\n        \"Numai\",\n        -13.190585136413574\n      ],\n      [\n        \"▁Eintrag\",\n        -13.190597534179688\n      ],\n      [\n        \"▁üblich\",\n        -13.190607070922852\n      ],\n      [\n        \"▁cumpără\",\n        -13.19062614440918\n      ],\n      [\n        \"escaped\",\n        -13.190693855285645\n      ],\n      [\n        \"▁Ortodox\",\n        -13.190804481506348\n      ],\n      [\n        \"▁obţinut\",\n        -13.190805435180664\n      ],\n      [\n        \"ecluded\",\n        -13.191036224365234\n      ],\n      [\n        \"▁brownie\",\n        -13.191089630126953\n      ],\n      [\n        \"▁regulament\",\n        -13.191253662109375\n      ],\n      [\n        \"▁Chaos\",\n        -13.191302299499512\n      ],\n      [\n        \"▁masiv\",\n        -13.19132137298584\n      ],\n      [\n        \"▁Gerald\",\n        -13.191376686096191\n      ],\n      [\n        \"▁Sigur\",\n        -13.191380500793457\n      ],\n      [\n        \"▁wavelength\",\n        -13.191380500793457\n      ],\n      [\n        \"▁retiring\",\n        -13.191396713256836\n      ],\n      [\n        \"▁exactement\",\n        -13.191819190979004\n      ],\n      [\n        \"ntino\",\n        -13.191823959350586\n      ],\n      [\n        \"▁Krebs\",\n        -13.19194221496582\n      ],\n      [\n        \"▁monatlich\",\n        -13.191956520080566\n      ],\n      [\n        \"▁aranj\",\n        -13.192011833190918\n      ],\n      [\n        \"▁priveşt\",\n        -13.192099571228027\n      ],\n      [\n        \"▁mecanic\",\n        -13.192109107971191\n      ],\n      [\n        \"money\",\n        -13.192233085632324\n      ],\n      [\n        \"parliamentary\",\n        -13.1922607421875\n      ],\n      [\n        \"▁probation\",\n        -13.192427635192871\n      ],\n      [\n        \"embroidered\",\n        -13.192451477050781\n      ],\n      [\n        \"▁amenajat\",\n        -13.192451477050781\n      ],\n      [\n        \"▁remnant\",\n        -13.192451477050781\n      ],\n      [\n        \"▁senzati\",\n        -13.192472457885742\n      ],\n      [\n        \"▁Declaration\",\n        -13.192483901977539\n      ],\n      [\n        \"farbe\",\n        -13.192506790161133\n      ],\n      [\n        \"▁skinny\",\n        -13.19260311126709\n      ],\n      [\n        \"Energi\",\n        -13.192648887634277\n      ],\n      [\n        \"verhältnisse\",\n        -13.19288158416748\n      ],\n      [\n        \"Recruit\",\n        -13.192972183227539\n      ],\n      [\n        \"frying\",\n        -13.193161010742188\n      ],\n      [\n        \"925\",\n        -13.193294525146484\n      ],\n      [\n        \"nstruire\",\n        -13.193302154541016\n      ],\n      [\n        \"toasted\",\n        -13.193424224853516\n      ],\n      [\n        \"▁nicotine\",\n        -13.193551063537598\n      ],\n      [\n        \"recessed\",\n        -13.193570137023926\n      ],\n      [\n        \"▁dialect\",\n        -13.193572044372559\n      ],\n      [\n        \"▁confisc\",\n        -13.193575859069824\n      ],\n      [\n        \"▁bubbl\",\n        -13.193643569946289\n      ],\n      [\n        \"▁Precision\",\n        -13.193682670593262\n      ],\n      [\n        \"▁sollicit\",\n        -13.193842887878418\n      ],\n      [\n        \"▁Moral\",\n        -13.193977355957031\n      ],\n      [\n        \"▁renseignements\",\n        -13.194112777709961\n      ],\n      [\n        \"UMP\",\n        -13.194116592407227\n      ],\n      [\n        \"ijn\",\n        -13.194183349609375\n      ],\n      [\n        \"▁fermeture\",\n        -13.194320678710938\n      ],\n      [\n        \"▁blueprint\",\n        -13.19462776184082\n      ],\n      [\n        \"▁groceries\",\n        -13.194652557373047\n      ],\n      [\n        \"möbel\",\n        -13.194655418395996\n      ],\n      [\n        \"▁Plenty\",\n        -13.194657325744629\n      ],\n      [\n        \"▁forfeit\",\n        -13.194719314575195\n      ],\n      [\n        \"méthodes\",\n        -13.194915771484375\n      ],\n      [\n        \"paving\",\n        -13.19493293762207\n      ],\n      [\n        \"outheastern\",\n        -13.194979667663574\n      ],\n      [\n        \"▁Overview\",\n        -13.19503116607666\n      ],\n      [\n        \"▁observers\",\n        -13.195171356201172\n      ],\n      [\n        \"▁Timișoara\",\n        -13.19520378112793\n      ],\n      [\n        \"noticing\",\n        -13.195332527160645\n      ],\n      [\n        \"▁Owl\",\n        -13.195381164550781\n      ],\n      [\n        \"▁1925\",\n        -13.195517539978027\n      ],\n      [\n        \"▁prüfen\",\n        -13.195755004882812\n      ],\n      [\n        \"▁Bewohner\",\n        -13.195756912231445\n      ],\n      [\n        \"▁Latvia\",\n        -13.195770263671875\n      ],\n      [\n        \"▁Tuscan\",\n        -13.19577407836914\n      ],\n      [\n        \"▁apprenticeship\",\n        -13.195789337158203\n      ],\n      [\n        \"▁courteous\",\n        -13.1958646774292\n      ],\n      [\n        \"adult\",\n        -13.196023941040039\n      ],\n      [\n        \"Licensed\",\n        -13.196029663085938\n      ],\n      [\n        \"abused\",\n        -13.196762084960938\n      ],\n      [\n        \"confidence\",\n        -13.19678020477295\n      ],\n      [\n        \"▁revolt\",\n        -13.196782112121582\n      ],\n      [\n        \"conference\",\n        -13.196861267089844\n      ],\n      [\n        \"genoss\",\n        -13.196914672851562\n      ],\n      [\n        \"▁răni\",\n        -13.196944236755371\n      ],\n      [\n        \"▁Intervention\",\n        -13.196949005126953\n      ],\n      [\n        \"▁primesc\",\n        -13.196969985961914\n      ],\n      [\n        \"trays\",\n        -13.197041511535645\n      ],\n      [\n        \"nozzle\",\n        -13.197216033935547\n      ],\n      [\n        \"▁splitting\",\n        -13.197443962097168\n      ],\n      [\n        \"▁könne\",\n        -13.197507858276367\n      ],\n      [\n        \"▁peisaj\",\n        -13.197943687438965\n      ],\n      [\n        \"▁academia\",\n        -13.197962760925293\n      ],\n      [\n        \"▁chakra\",\n        -13.197979927062988\n      ],\n      [\n        \"▁Abdul\",\n        -13.1981201171875\n      ],\n      [\n        \"▁Beschreibung\",\n        -13.198225021362305\n      ],\n      [\n        \"Regeln\",\n        -13.19831371307373\n      ],\n      [\n        \"eezy\",\n        -13.198314666748047\n      ],\n      [\n        \"▁problématique\",\n        -13.198515892028809\n      ],\n      [\n        \"▁Ausführung\",\n        -13.198524475097656\n      ],\n      [\n        \"▁reconnect\",\n        -13.19868278503418\n      ],\n      [\n        \"▁telefonic\",\n        -13.198966026306152\n      ],\n      [\n        \"▁Ethereum\",\n        -13.199069023132324\n      ],\n      [\n        \"▁Winnipeg\",\n        -13.199069023132324\n      ],\n      [\n        \"▁misconception\",\n        -13.199069023132324\n      ],\n      [\n        \"▁Verpackung\",\n        -13.199070930480957\n      ],\n      [\n        \"▁erzeugt\",\n        -13.199097633361816\n      ],\n      [\n        \"▁Identity\",\n        -13.199104309082031\n      ],\n      [\n        \"▁dunkle\",\n        -13.199109077453613\n      ],\n      [\n        \"sustaining\",\n        -13.19916820526123\n      ],\n      [\n        \"▁pereche\",\n        -13.199178695678711\n      ],\n      [\n        \"▁neîn\",\n        -13.199239730834961\n      ],\n      [\n        \"directorul\",\n        -13.199291229248047\n      ],\n      [\n        \"▁élabor\",\n        -13.199584007263184\n      ],\n      [\n        \"▁Hollow\",\n        -13.19960880279541\n      ],\n      [\n        \"▁getestet\",\n        -13.199751853942871\n      ],\n      [\n        \"▁Promote\",\n        -13.199797630310059\n      ],\n      [\n        \"agriculture\",\n        -13.199920654296875\n      ],\n      [\n        \"▁deosebir\",\n        -13.199934005737305\n      ],\n      [\n        \"▁neam\",\n        -13.199999809265137\n      ],\n      [\n        \"aufbau\",\n        -13.200042724609375\n      ],\n      [\n        \"▁susținut\",\n        -13.200079917907715\n      ],\n      [\n        \"fueled\",\n        -13.200119018554688\n      ],\n      [\n        \"▁impresionant\",\n        -13.200177192687988\n      ],\n      [\n        \"innate\",\n        -13.20026969909668\n      ],\n      [\n        \"grenzt\",\n        -13.200340270996094\n      ],\n      [\n        \"rescued\",\n        -13.200514793395996\n      ],\n      [\n        \"bestand\",\n        -13.200559616088867\n      ],\n      [\n        \"▁adjunct\",\n        -13.200729370117188\n      ],\n      [\n        \"▁Mischung\",\n        -13.200754165649414\n      ],\n      [\n        \"▁Lease\",\n        -13.201258659362793\n      ],\n      [\n        \"espagnol\",\n        -13.201284408569336\n      ],\n      [\n        \"▁Kickstarter\",\n        -13.201284408569336\n      ],\n      [\n        \"▁buzunar\",\n        -13.201284408569336\n      ],\n      [\n        \"▁buddies\",\n        -13.20129108428955\n      ],\n      [\n        \"käufe\",\n        -13.201485633850098\n      ],\n      [\n        \"cevoir\",\n        -13.201582908630371\n      ],\n      [\n        \"▁creşte\",\n        -13.201675415039062\n      ],\n      [\n        \"▁Cluster\",\n        -13.201825141906738\n      ],\n      [\n        \"▁obișnui\",\n        -13.201838493347168\n      ],\n      [\n        \"▁cassette\",\n        -13.201889038085938\n      ],\n      [\n        \"▁optisch\",\n        -13.201947212219238\n      ],\n      [\n        \"manned\",\n        -13.20200252532959\n      ],\n      [\n        \"schneid\",\n        -13.202362060546875\n      ],\n      [\n        \"Württemberg\",\n        -13.202393531799316\n      ],\n      [\n        \"shredded\",\n        -13.202393531799316\n      ],\n      [\n        \"▁botanical\",\n        -13.20239543914795\n      ],\n      [\n        \"characterization\",\n        -13.202445983886719\n      ],\n      [\n        \"▁Durchführung\",\n        -13.202452659606934\n      ],\n      [\n        \"▁tireless\",\n        -13.20250129699707\n      ],\n      [\n        \"lässlich\",\n        -13.20254135131836\n      ],\n      [\n        \"▁Merchant\",\n        -13.202570915222168\n      ],\n      [\n        \"joutez\",\n        -13.20259952545166\n      ],\n      [\n        \"▁amélior\",\n        -13.202676773071289\n      ],\n      [\n        \"fixed\",\n        -13.202741622924805\n      ],\n      [\n        \"kho\",\n        -13.202760696411133\n      ],\n      [\n        \"▁televizor\",\n        -13.202948570251465\n      ],\n      [\n        \"▁Davies\",\n        -13.202964782714844\n      ],\n      [\n        \"enceinte\",\n        -13.203118324279785\n      ],\n      [\n        \"▁Panorama\",\n        -13.20350456237793\n      ],\n      [\n        \"▁maternal\",\n        -13.203507423400879\n      ],\n      [\n        \"diversified\",\n        -13.203513145446777\n      ],\n      [\n        \"▁Jü\",\n        -13.203570365905762\n      ],\n      [\n        \"▁naz\",\n        -13.203730583190918\n      ],\n      [\n        \"▁plonge\",\n        -13.2039213180542\n      ],\n      [\n        \"geschickt\",\n        -13.203944206237793\n      ],\n      [\n        \"MIS\",\n        -13.204215049743652\n      ],\n      [\n        \"ragged\",\n        -13.204553604125977\n      ],\n      [\n        \"▁diarrhea\",\n        -13.20461654663086\n      ],\n      [\n        \"▁tsunami\",\n        -13.20461654663086\n      ],\n      [\n        \"▁Nikola\",\n        -13.204625129699707\n      ],\n      [\n        \"▁festivities\",\n        -13.20464038848877\n      ],\n      [\n        \"potting\",\n        -13.20479965209961\n      ],\n      [\n        \"▁telefonisch\",\n        -13.204874038696289\n      ],\n      [\n        \"TAR\",\n        -13.204971313476562\n      ],\n      [\n        \"▁schimbări\",\n        -13.205023765563965\n      ],\n      [\n        \"▁occidental\",\n        -13.205172538757324\n      ],\n      [\n        \"schloss\",\n        -13.205179214477539\n      ],\n      [\n        \"Print\",\n        -13.205284118652344\n      ],\n      [\n        \"▁autoritățil\",\n        -13.205361366271973\n      ],\n      [\n        \"idos\",\n        -13.20556640625\n      ],\n      [\n        \"mediocr\",\n        -13.20559310913086\n      ],\n      [\n        \"▁Decla\",\n        -13.205686569213867\n      ],\n      [\n        \"▁Elliott\",\n        -13.205729484558105\n      ],\n      [\n        \"▁pinpoint\",\n        -13.205734252929688\n      ],\n      [\n        \"▁disciple\",\n        -13.20579719543457\n      ],\n      [\n        \"▁Cairo\",\n        -13.2058744430542\n      ],\n      [\n        \"▁15-20\",\n        -13.2059326171875\n      ],\n      [\n        \"▁limbaj\",\n        -13.20611572265625\n      ],\n      [\n        \"▁retenu\",\n        -13.206154823303223\n      ],\n      [\n        \"▁Blüte\",\n        -13.20628833770752\n      ],\n      [\n        \"▁MINI\",\n        -13.206467628479004\n      ],\n      [\n        \"▁lumină\",\n        -13.206567764282227\n      ],\n      [\n        \"▁flawed\",\n        -13.206846237182617\n      ],\n      [\n        \"▁Belarus\",\n        -13.207067489624023\n      ],\n      [\n        \"Totul\",\n        -13.207207679748535\n      ],\n      [\n        \"hôte\",\n        -13.207273483276367\n      ],\n      [\n        \"▁verbringen\",\n        -13.207315444946289\n      ],\n      [\n        \"▁simultaneous\",\n        -13.207344055175781\n      ],\n      [\n        \"▁competiți\",\n        -13.207402229309082\n      ],\n      [\n        \"▁lancement\",\n        -13.207413673400879\n      ],\n      [\n        \"▁proprietati\",\n        -13.207432746887207\n      ],\n      [\n        \"▁angajator\",\n        -13.207465171813965\n      ],\n      [\n        \"▁ignorant\",\n        -13.207674026489258\n      ],\n      [\n        \"▁indicative\",\n        -13.207700729370117\n      ],\n      [\n        \"▁Bearbeitung\",\n        -13.207961082458496\n      ],\n      [\n        \"▁Ungaria\",\n        -13.207961082458496\n      ],\n      [\n        \"▁Sfint\",\n        -13.208015441894531\n      ],\n      [\n        \"▁Trojan\",\n        -13.20804214477539\n      ],\n      [\n        \"▁1911\",\n        -13.208100318908691\n      ],\n      [\n        \"▁reliabl\",\n        -13.2081937789917\n      ],\n      [\n        \"6-0\",\n        -13.20827865600586\n      ],\n      [\n        \"obst\",\n        -13.208523750305176\n      ],\n      [\n        \"▁relève\",\n        -13.208579063415527\n      ],\n      [\n        \"▁standpoint\",\n        -13.208874702453613\n      ],\n      [\n        \"ridden\",\n        -13.208918571472168\n      ],\n      [\n        \"▁Pdf\",\n        -13.209005355834961\n      ],\n      [\n        \"tatewide\",\n        -13.209051132202148\n      ],\n      [\n        \"Water\",\n        -13.209062576293945\n      ],\n      [\n        \"▁Pricing\",\n        -13.209089279174805\n      ],\n      [\n        \"▁protecţi\",\n        -13.209168434143066\n      ],\n      [\n        \"November\",\n        -13.209615707397461\n      ],\n      [\n        \"▁televiziune\",\n        -13.20964241027832\n      ],\n      [\n        \"Sodium\",\n        -13.209881782531738\n      ],\n      [\n        \"douceur\",\n        -13.209942817687988\n      ],\n      [\n        \"▁Flasche\",\n        -13.210183143615723\n      ],\n      [\n        \"3.9\",\n        -13.210193634033203\n      ],\n      [\n        \"▁electromagnetic\",\n        -13.210195541381836\n      ],\n      [\n        \"▁mitochondria\",\n        -13.210195541381836\n      ],\n      [\n        \"Suddenly\",\n        -13.210199356079102\n      ],\n      [\n        \"▁Drupal\",\n        -13.210201263427734\n      ],\n      [\n        \"▁supraveghere\",\n        -13.210211753845215\n      ],\n      [\n        \"▁cornea\",\n        -13.210288047790527\n      ],\n      [\n        \"räumt\",\n        -13.210309982299805\n      ],\n      [\n        \"▁healed\",\n        -13.210410118103027\n      ],\n      [\n        \"Roc\",\n        -13.210649490356445\n      ],\n      [\n        \"▁temporar\",\n        -13.210707664489746\n      ],\n      [\n        \"▁amaze\",\n        -13.210770606994629\n      ],\n      [\n        \"▁confrunta\",\n        -13.210833549499512\n      ],\n      [\n        \"Afterward\",\n        -13.210836410522461\n      ],\n      [\n        \"▁festgelegt\",\n        -13.21084213256836\n      ],\n      [\n        \"▁Kuchen\",\n        -13.210844993591309\n      ],\n      [\n        \"▁perpetual\",\n        -13.210858345031738\n      ],\n      [\n        \"systematically\",\n        -13.211000442504883\n      ],\n      [\n        \"▁coloan\",\n        -13.211006164550781\n      ],\n      [\n        \"▁extensi\",\n        -13.211058616638184\n      ],\n      [\n        \"▁Județean\",\n        -13.211315155029297\n      ],\n      [\n        \"▁amelior\",\n        -13.211315155029297\n      ],\n      [\n        \"▁illustrator\",\n        -13.211315155029297\n      ],\n      [\n        \"▁titanium\",\n        -13.211344718933105\n      ],\n      [\n        \"SMEs\",\n        -13.211384773254395\n      ],\n      [\n        \"taxable\",\n        -13.211578369140625\n      ],\n      [\n        \"▁Borough\",\n        -13.211607933044434\n      ],\n      [\n        \"verlust\",\n        -13.211772918701172\n      ],\n      [\n        \"ductive\",\n        -13.21233081817627\n      ],\n      [\n        \"▁Küste\",\n        -13.212335586547852\n      ],\n      [\n        \"▁végétal\",\n        -13.212410926818848\n      ],\n      [\n        \"▁breastfeeding\",\n        -13.212435722351074\n      ],\n      [\n        \"▁captivating\",\n        -13.212435722351074\n      ],\n      [\n        \"▁Chevy\",\n        -13.212443351745605\n      ],\n      [\n        \"▁aerospace\",\n        -13.212469100952148\n      ],\n      [\n        \"pozitia\",\n        -13.213095664978027\n      ],\n      [\n        \"Tutor\",\n        -13.213199615478516\n      ],\n      [\n        \"▁spum\",\n        -13.213312149047852\n      ],\n      [\n        \"curând\",\n        -13.213419914245605\n      ],\n      [\n        \"iscus\",\n        -13.213458061218262\n      ],\n      [\n        \"October\",\n        -13.213495254516602\n      ],\n      [\n        \"▁Reparatur\",\n        -13.213557243347168\n      ],\n      [\n        \"▁Servicii\",\n        -13.213574409484863\n      ],\n      [\n        \"▁Gonz\",\n        -13.21357536315918\n      ],\n      [\n        \"▁cybersecurity\",\n        -13.21357536315918\n      ],\n      [\n        \"▁UCLA\",\n        -13.213678359985352\n      ],\n      [\n        \"rissa\",\n        -13.213835716247559\n      ],\n      [\n        \"▁Kemp\",\n        -13.213850021362305\n      ],\n      [\n        \"▁piston\",\n        -13.214046478271484\n      ],\n      [\n        \"▁révèle\",\n        -13.214118957519531\n      ],\n      [\n        \"▁posséd\",\n        -13.21412181854248\n      ],\n      [\n        \"▁versehen\",\n        -13.214129447937012\n      ],\n      [\n        \"▁scrutin\",\n        -13.214226722717285\n      ],\n      [\n        \"donnant\",\n        -13.21436882019043\n      ],\n      [\n        \"▁Geschwindigkeit\",\n        -13.214680671691895\n      ],\n      [\n        \"▁Panasonic\",\n        -13.214680671691895\n      ],\n      [\n        \"audio\",\n        -13.214700698852539\n      ],\n      [\n        \"▁Packaging\",\n        -13.214771270751953\n      ],\n      [\n        \"phra\",\n        -13.2147798538208\n      ],\n      [\n        \"▁Letzte\",\n        -13.214954376220703\n      ],\n      [\n        \"insicht\",\n        -13.215141296386719\n      ],\n      [\n        \"▁sammeln\",\n        -13.215243339538574\n      ],\n      [\n        \"▁extins\",\n        -13.215259552001953\n      ],\n      [\n        \"▁collège\",\n        -13.215266227722168\n      ],\n      [\n        \"ancies\",\n        -13.215343475341797\n      ],\n      [\n        \"▁întâlnit\",\n        -13.215350151062012\n      ],\n      [\n        \"▁Servi\",\n        -13.215392112731934\n      ],\n      [\n        \"stattet\",\n        -13.215493202209473\n      ],\n      [\n        \"▁abstraction\",\n        -13.215566635131836\n      ],\n      [\n        \"▁candidature\",\n        -13.215592384338379\n      ],\n      [\n        \"ONU\",\n        -13.215676307678223\n      ],\n      [\n        \"▁raffle\",\n        -13.215826988220215\n      ],\n      [\n        \"▁Soldier\",\n        -13.215834617614746\n      ],\n      [\n        \"▁stipulate\",\n        -13.215883255004883\n      ],\n      [\n        \"▁vizual\",\n        -13.215950012207031\n      ],\n      [\n        \"lucht\",\n        -13.216007232666016\n      ],\n      [\n        \"▁circus\",\n        -13.216068267822266\n      ],\n      [\n        \"▁decree\",\n        -13.216259002685547\n      ],\n      [\n        \"immeuble\",\n        -13.216367721557617\n      ],\n      [\n        \"Store\",\n        -13.216426849365234\n      ],\n      [\n        \"randul\",\n        -13.216622352600098\n      ],\n      [\n        \"▁narration\",\n        -13.216933250427246\n      ],\n      [\n        \"implication\",\n        -13.216958045959473\n      ],\n      [\n        \"▁discontinued\",\n        -13.216971397399902\n      ],\n      [\n        \"▁Pilates\",\n        -13.216989517211914\n      ],\n      [\n        \"▁biais\",\n        -13.21701431274414\n      ],\n      [\n        \"panel\",\n        -13.217325210571289\n      ],\n      [\n        \"▁mower\",\n        -13.217458724975586\n      ],\n      [\n        \"▁Castro\",\n        -13.21753978729248\n      ],\n      [\n        \"pregătire\",\n        -13.217641830444336\n      ],\n      [\n        \"▁denomination\",\n        -13.218062400817871\n      ],\n      [\n        \"▁throttle\",\n        -13.21806526184082\n      ],\n      [\n        \"▁finition\",\n        -13.218086242675781\n      ],\n      [\n        \"▁clarification\",\n        -13.218286514282227\n      ],\n      [\n        \"laut\",\n        -13.218366622924805\n      ],\n      [\n        \"▁wastewater\",\n        -13.2184419631958\n      ],\n      [\n        \"▁Sanchez\",\n        -13.218770980834961\n      ],\n      [\n        \"▁Umfeld\",\n        -13.2189359664917\n      ],\n      [\n        \"▁consili\",\n        -13.218997955322266\n      ],\n      [\n        \"extrait\",\n        -13.219013214111328\n      ],\n      [\n        \"ionism\",\n        -13.2190523147583\n      ],\n      [\n        \"▁Cannabis\",\n        -13.219186782836914\n      ],\n      [\n        \"▁misconduct\",\n        -13.219186782836914\n      ],\n      [\n        \"▁shepherd\",\n        -13.219186782836914\n      ],\n      [\n        \"▁feminist\",\n        -13.21919059753418\n      ],\n      [\n        \"▁criterii\",\n        -13.219212532043457\n      ],\n      [\n        \"America\",\n        -13.219219207763672\n      ],\n      [\n        \"▁Telephone\",\n        -13.219270706176758\n      ],\n      [\n        \"▁Fritz\",\n        -13.219438552856445\n      ],\n      [\n        \"▁cheltui\",\n        -13.219794273376465\n      ],\n      [\n        \"▁Übung\",\n        -13.219857215881348\n      ],\n      [\n        \"făcută\",\n        -13.22006893157959\n      ],\n      [\n        \"▁străzi\",\n        -13.220170021057129\n      ],\n      [\n        \"influencing\",\n        -13.220315933227539\n      ],\n      [\n        \"▁Democracy\",\n        -13.220321655273438\n      ],\n      [\n        \"atorium\",\n        -13.220376014709473\n      ],\n      [\n        \"▁Stufe\",\n        -13.220465660095215\n      ],\n      [\n        \"▁Cornell\",\n        -13.220660209655762\n      ],\n      [\n        \"zugehen\",\n        -13.22074031829834\n      ],\n      [\n        \"▁coton\",\n        -13.220804214477539\n      ],\n      [\n        \"▁beinhaltet\",\n        -13.220881462097168\n      ],\n      [\n        \"▁kritisch\",\n        -13.220884323120117\n      ],\n      [\n        \"▁Kalender\",\n        -13.22105884552002\n      ],\n      [\n        \"▁Teig\",\n        -13.221253395080566\n      ],\n      [\n        \"cooked\",\n        -13.221264839172363\n      ],\n      [\n        \"▁diversité\",\n        -13.221390724182129\n      ],\n      [\n        \"recognizable\",\n        -13.221446990966797\n      ],\n      [\n        \"▁Dictionary\",\n        -13.221446990966797\n      ],\n      [\n        \"attribution\",\n        -13.22145938873291\n      ],\n      [\n        \"▁Teresa\",\n        -13.221471786499023\n      ],\n      [\n        \"▁Ahmad\",\n        -13.221487998962402\n      ],\n      [\n        \"HAM\",\n        -13.221627235412598\n      ],\n      [\n        \"▁floss\",\n        -13.221668243408203\n      ],\n      [\n        \"génie\",\n        -13.2218599319458\n      ],\n      [\n        \"▁Espa\",\n        -13.221989631652832\n      ],\n      [\n        \"hersteller\",\n        -13.221993446350098\n      ],\n      [\n        \"Musée\",\n        -13.222001075744629\n      ],\n      [\n        \"▁Crawford\",\n        -13.222579002380371\n      ],\n      [\n        \"▁Phantom\",\n        -13.222579002380371\n      ],\n      [\n        \"▁Jenkins\",\n        -13.222640037536621\n      ],\n      [\n        \"genauer\",\n        -13.222774505615234\n      ],\n      [\n        \"▁acţiuni\",\n        -13.222885131835938\n      ],\n      [\n        \"▁meciuri\",\n        -13.22322940826416\n      ],\n      [\n        \"▁verstärkt\",\n        -13.22326374053955\n      ],\n      [\n        \"▁troop\",\n        -13.22341251373291\n      ],\n      [\n        \"räder\",\n        -13.223483085632324\n      ],\n      [\n        \"Putting\",\n        -13.223536491394043\n      ],\n      [\n        \"NASDAQ\",\n        -13.223712921142578\n      ],\n      [\n        \"▁Buddhism\",\n        -13.223712921142578\n      ],\n      [\n        \"▁Religious\",\n        -13.223712921142578\n      ],\n      [\n        \"▁accommodating\",\n        -13.223712921142578\n      ],\n      [\n        \"▁lendemain\",\n        -13.223712921142578\n      ],\n      [\n        \"▁plywood\",\n        -13.223714828491211\n      ],\n      [\n        \"▁inflatable\",\n        -13.223724365234375\n      ],\n      [\n        \"▁sèche\",\n        -13.223731994628906\n      ],\n      [\n        \"▁fragil\",\n        -13.223845481872559\n      ],\n      [\n        \"▁Filip\",\n        -13.224115371704102\n      ],\n      [\n        \"▁Terrace\",\n        -13.224274635314941\n      ],\n      [\n        \"Biblio\",\n        -13.22432804107666\n      ],\n      [\n        \"resides\",\n        -13.22448444366455\n      ],\n      [\n        \"▁varf\",\n        -13.22451114654541\n      ],\n      [\n        \"Bildern\",\n        -13.224528312683105\n      ],\n      [\n        \"loß\",\n        -13.224685668945312\n      ],\n      [\n        \"555\",\n        -13.224702835083008\n      ],\n      [\n        \"▁astounding\",\n        -13.224847793579102\n      ],\n      [\n        \"▁brillant\",\n        -13.224857330322266\n      ],\n      [\n        \"▁Railroad\",\n        -13.224871635437012\n      ],\n      [\n        \"minimizing\",\n        -13.224907875061035\n      ],\n      [\n        \"▁Benedict\",\n        -13.225019454956055\n      ],\n      [\n        \"▁$400\",\n        -13.225068092346191\n      ],\n      [\n        \"▁schematic\",\n        -13.225217819213867\n      ],\n      [\n        \"Canada\",\n        -13.225371360778809\n      ],\n      [\n        \"▁psihic\",\n        -13.225415229797363\n      ],\n      [\n        \"▁avertiz\",\n        -13.225497245788574\n      ],\n      [\n        \"▁Breed\",\n        -13.225550651550293\n      ],\n      [\n        \"▁gradina\",\n        -13.225606918334961\n      ],\n      [\n        \"▁Liege\",\n        -13.225822448730469\n      ],\n      [\n        \"▁Retirement\",\n        -13.225983619689941\n      ],\n      [\n        \"▁pergola\",\n        -13.226005554199219\n      ],\n      [\n        \"▁Kuwait\",\n        -13.2260103225708\n      ],\n      [\n        \"▁logistic\",\n        -13.22629451751709\n      ],\n      [\n        \"▁captive\",\n        -13.22651481628418\n      ],\n      [\n        \"prepared\",\n        -13.226568222045898\n      ],\n      [\n        \"▁prononc\",\n        -13.226568222045898\n      ],\n      [\n        \"Celui\",\n        -13.226676940917969\n      ],\n      [\n        \"deutschland\",\n        -13.227120399475098\n      ],\n      [\n        \"▁devreme\",\n        -13.227124214172363\n      ],\n      [\n        \"▁părți\",\n        -13.227270126342773\n      ],\n      [\n        \"▁1934\",\n        -13.227517127990723\n      ],\n      [\n        \"▁ersetzt\",\n        -13.227560997009277\n      ],\n      [\n        \"▁frightening\",\n        -13.227689743041992\n      ],\n      [\n        \"▁fiecărui\",\n        -13.227819442749023\n      ],\n      [\n        \"correct\",\n        -13.22799015045166\n      ],\n      [\n        \"6.6\",\n        -13.228057861328125\n      ],\n      [\n        \"▁Manitoba\",\n        -13.228259086608887\n      ],\n      [\n        \"Chartered\",\n        -13.228416442871094\n      ],\n      [\n        \"▁părăs\",\n        -13.228543281555176\n      ],\n      [\n        \"Powered\",\n        -13.228697776794434\n      ],\n      [\n        \"impede\",\n        -13.22876262664795\n      ],\n      [\n        \"agonist\",\n        -13.22878646850586\n      ],\n      [\n        \"▁stratégique\",\n        -13.228829383850098\n      ],\n      [\n        \"▁vigilant\",\n        -13.228830337524414\n      ],\n      [\n        \"faceted\",\n        -13.228930473327637\n      ],\n      [\n        \"available\",\n        -13.229308128356934\n      ],\n      [\n        \"▁Promise\",\n        -13.229388236999512\n      ],\n      [\n        \"▁humorous\",\n        -13.229446411132812\n      ],\n      [\n        \"treibt\",\n        -13.229449272155762\n      ],\n      [\n        \"▁Patrol\",\n        -13.229514122009277\n      ],\n      [\n        \"huh\",\n        -13.229523658752441\n      ],\n      [\n        \"ztlich\",\n        -13.229804039001465\n      ],\n      [\n        \"▁rejet\",\n        -13.2299165725708\n      ],\n      [\n        \"odeur\",\n        -13.229935646057129\n      ],\n      [\n        \"usziehbar\",\n        -13.22996997833252\n      ],\n      [\n        \"▁gespannt\",\n        -13.229972839355469\n      ],\n      [\n        \"church\",\n        -13.230018615722656\n      ],\n      [\n        \"▁Popescu\",\n        -13.230109214782715\n      ],\n      [\n        \"▁einmalig\",\n        -13.230518341064453\n      ],\n      [\n        \"diluted\",\n        -13.230551719665527\n      ],\n      [\n        \"lighted\",\n        -13.231070518493652\n      ],\n      [\n        \"▁stattfinden\",\n        -13.23111343383789\n      ],\n      [\n        \"▁Reaktion\",\n        -13.231183052062988\n      ],\n      [\n        \"▁délivr\",\n        -13.23134994506836\n      ],\n      [\n        \"▁Helfer\",\n        -13.231407165527344\n      ],\n      [\n        \"Fiind\",\n        -13.23142147064209\n      ],\n      [\n        \"rmând\",\n        -13.231507301330566\n      ],\n      [\n        \"▁Beweis\",\n        -13.231671333312988\n      ],\n      [\n        \"▁Violet\",\n        -13.231733322143555\n      ],\n      [\n        \"kamera\",\n        -13.231764793395996\n      ],\n      [\n        \"▁Romney\",\n        -13.231779098510742\n      ],\n      [\n        \"▁Bradford\",\n        -13.231800079345703\n      ],\n      [\n        \"stellbar\",\n        -13.231852531433105\n      ],\n      [\n        \"▁roadmap\",\n        -13.231921195983887\n      ],\n      [\n        \"▁subconscious\",\n        -13.23204231262207\n      ],\n      [\n        \"contrasting\",\n        -13.232138633728027\n      ],\n      [\n        \"mécanisme\",\n        -13.232254981994629\n      ],\n      [\n        \"kämpft\",\n        -13.232255935668945\n      ],\n      [\n        \"▁Preston\",\n        -13.232719421386719\n      ],\n      [\n        \"▁Anliegen\",\n        -13.232802391052246\n      ],\n      [\n        \"▁necessities\",\n        -13.232827186584473\n      ],\n      [\n        \"▁detrimental\",\n        -13.232828140258789\n      ],\n      [\n        \"▁sprawl\",\n        -13.232830047607422\n      ],\n      [\n        \"▁Erfüllung\",\n        -13.23287582397461\n      ],\n      [\n        \"▁massacre\",\n        -13.2329683303833\n      ],\n      [\n        \"▁pietre\",\n        -13.232987403869629\n      ],\n      [\n        \"▁situații\",\n        -13.233027458190918\n      ],\n      [\n        \"vêtement\",\n        -13.233080863952637\n      ],\n      [\n        \"Listed\",\n        -13.233144760131836\n      ],\n      [\n        \"▁extravagant\",\n        -13.233399391174316\n      ],\n      [\n        \"▁axle\",\n        -13.233525276184082\n      ],\n      [\n        \"OTT\",\n        -13.233663558959961\n      ],\n      [\n        \"wildly\",\n        -13.233744621276855\n      ],\n      [\n        \"70,000\",\n        -13.233797073364258\n      ],\n      [\n        \"▁chauffeur\",\n        -13.23384952545166\n      ],\n      [\n        \"▁Brasov\",\n        -13.233972549438477\n      ],\n      [\n        \"▁Fähigkeiten\",\n        -13.233972549438477\n      ],\n      [\n        \"▁staatlich\",\n        -13.234025001525879\n      ],\n      [\n        \"outlines\",\n        -13.234034538269043\n      ],\n      [\n        \"▁aufmerksam\",\n        -13.234545707702637\n      ],\n      [\n        \"▁Relation\",\n        -13.234749794006348\n      ],\n      [\n        \"▁Stephan\",\n        -13.234947204589844\n      ],\n      [\n        \"yland\",\n        -13.23494815826416\n      ],\n      [\n        \"proclaimed\",\n        -13.235086441040039\n      ],\n      [\n        \"Wallet\",\n        -13.235100746154785\n      ],\n      [\n        \"verarbeitung\",\n        -13.235118865966797\n      ],\n      [\n        \"▁überraschen\",\n        -13.235118865966797\n      ],\n      [\n        \"▁Injury\",\n        -13.235125541687012\n      ],\n      [\n        \"▁horsepower\",\n        -13.235237121582031\n      ],\n      [\n        \"▁Tropical\",\n        -13.23523998260498\n      ],\n      [\n        \"▁wives\",\n        -13.235459327697754\n      ],\n      [\n        \"adherence\",\n        -13.235677719116211\n      ],\n      [\n        \"schätzung\",\n        -13.235692977905273\n      ],\n      [\n        \"▁coherent\",\n        -13.235708236694336\n      ],\n      [\n        \"parlament\",\n        -13.23574161529541\n      ],\n      [\n        \"▁stup\",\n        -13.235852241516113\n      ],\n      [\n        \"▁resonance\",\n        -13.23626708984375\n      ],\n      [\n        \"▁inheritance\",\n        -13.236355781555176\n      ],\n      [\n        \"commenced\",\n        -13.23645305633545\n      ],\n      [\n        \"▁supervise\",\n        -13.236475944519043\n      ],\n      [\n        \"▁facilitator\",\n        -13.236488342285156\n      ],\n      [\n        \"fares\",\n        -13.236678123474121\n      ],\n      [\n        \"▁Tibet\",\n        -13.23672866821289\n      ],\n      [\n        \"communication\",\n        -13.236787796020508\n      ],\n      [\n        \"yog\",\n        -13.236806869506836\n      ],\n      [\n        \"▁WLAN\",\n        -13.236842155456543\n      ],\n      [\n        \"▁Chili\",\n        -13.23685073852539\n      ],\n      [\n        \"▁Harold\",\n        -13.2369966506958\n      ],\n      [\n        \"▁Guerre\",\n        -13.237005233764648\n      ],\n      [\n        \"▁Femme\",\n        -13.237146377563477\n      ],\n      [\n        \"▁Lisbon\",\n        -13.237231254577637\n      ],\n      [\n        \"▁mulțumi\",\n        -13.237415313720703\n      ],\n      [\n        \"▁vorbereitet\",\n        -13.237415313720703\n      ],\n      [\n        \"▁aperture\",\n        -13.237422943115234\n      ],\n      [\n        \"▁Universities\",\n        -13.237442016601562\n      ],\n      [\n        \"▁reckless\",\n        -13.237471580505371\n      ],\n      [\n        \"▁Botschaft\",\n        -13.237533569335938\n      ],\n      [\n        \"▁Squad\",\n        -13.238022804260254\n      ],\n      [\n        \"▁buoy\",\n        -13.238061904907227\n      ],\n      [\n        \"participarea\",\n        -13.238236427307129\n      ],\n      [\n        \"stiinta\",\n        -13.238389015197754\n      ],\n      [\n        \"▁repeal\",\n        -13.238415718078613\n      ],\n      [\n        \"drilled\",\n        -13.238489151000977\n      ],\n      [\n        \"▁Conversation\",\n        -13.238567352294922\n      ],\n      [\n        \"▁subsid\",\n        -13.238615036010742\n      ],\n      [\n        \"anstalt\",\n        -13.238741874694824\n      ],\n      [\n        \"faktor\",\n        -13.23874282836914\n      ],\n      [\n        \"▁swamp\",\n        -13.238790512084961\n      ],\n      [\n        \"pflichtig\",\n        -13.238921165466309\n      ],\n      [\n        \"▁camion\",\n        -13.238970756530762\n      ],\n      [\n        \"▁gouvern\",\n        -13.239032745361328\n      ],\n      [\n        \"▁archaeological\",\n        -13.239141464233398\n      ],\n      [\n        \"▁glitch\",\n        -13.239198684692383\n      ],\n      [\n        \"average\",\n        -13.239294052124023\n      ],\n      [\n        \"▁coffre\",\n        -13.239481925964355\n      ],\n      [\n        \"▁Insert\",\n        -13.239513397216797\n      ],\n      [\n        \"▁colonne\",\n        -13.2395601272583\n      ],\n      [\n        \"▁Assess\",\n        -13.23962116241455\n      ],\n      [\n        \"▁batches\",\n        -13.239716529846191\n      ],\n      [\n        \"▁ammunition\",\n        -13.239717483520508\n      ],\n      [\n        \"▁scissors\",\n        -13.239717483520508\n      ],\n      [\n        \"▁Locksmith\",\n        -13.239740371704102\n      ],\n      [\n        \"▁Bollywood\",\n        -13.239991188049316\n      ],\n      [\n        \"expédi\",\n        -13.240288734436035\n      ],\n      [\n        \"▁descendants\",\n        -13.24039363861084\n      ],\n      [\n        \"▁unwilling\",\n        -13.240506172180176\n      ],\n      [\n        \"▁Noise\",\n        -13.240649223327637\n      ],\n      [\n        \"▁Directive\",\n        -13.240660667419434\n      ],\n      [\n        \"ATOR\",\n        -13.240765571594238\n      ],\n      [\n        \"▁Rajasthan\",\n        -13.240870475769043\n      ],\n      [\n        \"▁chaotic\",\n        -13.240888595581055\n      ],\n      [\n        \"▁NEED\",\n        -13.24093246459961\n      ],\n      [\n        \"▁părere\",\n        -13.24095344543457\n      ],\n      [\n        \"▁begonnen\",\n        -13.241448402404785\n      ],\n      [\n        \"▁Reef\",\n        -13.241504669189453\n      ],\n      [\n        \"▁vorgesehen\",\n        -13.24161434173584\n      ],\n      [\n        \"▁allocate\",\n        -13.241826057434082\n      ],\n      [\n        \"▁exceptionnel\",\n        -13.241936683654785\n      ],\n      [\n        \"▁gefertigt\",\n        -13.24203872680664\n      ],\n      [\n        \"fading\",\n        -13.242072105407715\n      ],\n      [\n        \"▁interpersonal\",\n        -13.242178916931152\n      ],\n      [\n        \"▁occupie\",\n        -13.242204666137695\n      ],\n      [\n        \"▁Teatr\",\n        -13.242579460144043\n      ],\n      [\n        \"▁kilomètres\",\n        -13.242603302001953\n      ],\n      [\n        \"▁verbinden\",\n        -13.242608070373535\n      ],\n      [\n        \"▁Frucht\",\n        -13.242643356323242\n      ],\n      [\n        \"augmented\",\n        -13.242720603942871\n      ],\n      [\n        \"▁twentieth\",\n        -13.243181228637695\n      ],\n      [\n        \"▁aggression\",\n        -13.243183135986328\n      ],\n      [\n        \"▁Miracle\",\n        -13.243184089660645\n      ],\n      [\n        \"▁peninsula\",\n        -13.243184089660645\n      ],\n      [\n        \"▁Fernando\",\n        -13.243185043334961\n      ],\n      [\n        \"▁autorităţil\",\n        -13.243203163146973\n      ],\n      [\n        \"▁Iisus\",\n        -13.243217468261719\n      ],\n      [\n        \"▁puck\",\n        -13.243423461914062\n      ],\n      [\n        \"titel\",\n        -13.243454933166504\n      ],\n      [\n        \"▁remake\",\n        -13.243562698364258\n      ],\n      [\n        \"freiheit\",\n        -13.243563652038574\n      ],\n      [\n        \"▁Belize\",\n        -13.243590354919434\n      ],\n      [\n        \"▁secundar\",\n        -13.243779182434082\n      ],\n      [\n        \"▁perpetrat\",\n        -13.243786811828613\n      ],\n      [\n        \"jedenfalls\",\n        -13.243797302246094\n      ],\n      [\n        \"linked\",\n        -13.243820190429688\n      ],\n      [\n        \"▁dégag\",\n        -13.243918418884277\n      ],\n      [\n        \"LAY\",\n        -13.243926048278809\n      ],\n      [\n        \"behandlung\",\n        -13.244172096252441\n      ],\n      [\n        \"▁1928\",\n        -13.244193077087402\n      ],\n      [\n        \"▁Nickel\",\n        -13.244205474853516\n      ],\n      [\n        \"rophy\",\n        -13.244256973266602\n      ],\n      [\n        \"▁autonomy\",\n        -13.244338989257812\n      ],\n      [\n        \"▁Treffen\",\n        -13.244402885437012\n      ],\n      [\n        \"▁groundbreaking\",\n        -13.24445915222168\n      ],\n      [\n        \"politisch\",\n        -13.244484901428223\n      ],\n      [\n        \"▁Vector\",\n        -13.244553565979004\n      ],\n      [\n        \"oricine\",\n        -13.244684219360352\n      ],\n      [\n        \"utilisées\",\n        -13.244684219360352\n      ],\n      [\n        \"plete\",\n        -13.244771003723145\n      ],\n      [\n        \"droht\",\n        -13.244918823242188\n      ],\n      [\n        \"▁alternativ\",\n        -13.245104789733887\n      ],\n      [\n        \"▁Bernie\",\n        -13.245213508605957\n      ],\n      [\n        \"▁embellish\",\n        -13.245260238647461\n      ],\n      [\n        \"▁Curriculum\",\n        -13.24549674987793\n      ],\n      [\n        \"herrscht\",\n        -13.245525360107422\n      ],\n      [\n        \"escalier\",\n        -13.246126174926758\n      ],\n      [\n        \"hian\",\n        -13.246333122253418\n      ],\n      [\n        \"ertaining\",\n        -13.246387481689453\n      ],\n      [\n        \"hitter\",\n        -13.246430397033691\n      ],\n      [\n        \"▁kompetente\",\n        -13.24665641784668\n      ],\n      [\n        \"▁trekking\",\n        -13.246760368347168\n      ],\n      [\n        \"EACH\",\n        -13.246841430664062\n      ],\n      [\n        \"▁Bedien\",\n        -13.2470703125\n      ],\n      [\n        \"starred\",\n        -13.247169494628906\n      ],\n      [\n        \"▁săptămâna\",\n        -13.247236251831055\n      ],\n      [\n        \"▁Gratuit\",\n        -13.247239112854004\n      ],\n      [\n        \"▁Jahrzehnte\",\n        -13.247241020202637\n      ],\n      [\n        \"ingénieur\",\n        -13.24731731414795\n      ],\n      [\n        \"▁Huang\",\n        -13.24736213684082\n      ],\n      [\n        \"Music\",\n        -13.247401237487793\n      ],\n      [\n        \"misiei\",\n        -13.247544288635254\n      ],\n      [\n        \"▁masuri\",\n        -13.247733116149902\n      ],\n      [\n        \"▁Achievement\",\n        -13.247817039489746\n      ],\n      [\n        \"▁Dorothy\",\n        -13.247817039489746\n      ],\n      [\n        \"blätter\",\n        -13.247817993164062\n      ],\n      [\n        \"éloign\",\n        -13.247817993164062\n      ],\n      [\n        \"▁Anglia\",\n        -13.247990608215332\n      ],\n      [\n        \"brach\",\n        -13.248013496398926\n      ],\n      [\n        \"▁Optimization\",\n        -13.248085021972656\n      ],\n      [\n        \"6.7\",\n        -13.248170852661133\n      ],\n      [\n        \"winkel\",\n        -13.248210906982422\n      ],\n      [\n        \"contenan\",\n        -13.248347282409668\n      ],\n      [\n        \"Astăzi\",\n        -13.248398780822754\n      ],\n      [\n        \"wiped\",\n        -13.248441696166992\n      ],\n      [\n        \"granting\",\n        -13.248665809631348\n      ],\n      [\n        \"▁plăti\",\n        -13.248859405517578\n      ],\n      [\n        \"▁Compensation\",\n        -13.248979568481445\n      ],\n      [\n        \"▁Verkäufer\",\n        -13.248979568481445\n      ],\n      [\n        \"▁angajați\",\n        -13.248980522155762\n      ],\n      [\n        \"▁diminished\",\n        -13.24902057647705\n      ],\n      [\n        \"employment\",\n        -13.249250411987305\n      ],\n      [\n        \"yahoo\",\n        -13.249435424804688\n      ],\n      [\n        \"▁détrui\",\n        -13.249698638916016\n      ],\n      [\n        \"▁suffisant\",\n        -13.24982738494873\n      ],\n      [\n        \"▁Moldovei\",\n        -13.250144004821777\n      ],\n      [\n        \"▁Pokemon\",\n        -13.250144004821777\n      ],\n      [\n        \"▁Malcolm\",\n        -13.250144958496094\n      ],\n      [\n        \"▁mysteries\",\n        -13.250147819519043\n      ],\n      [\n        \"▁Diversity\",\n        -13.250149726867676\n      ],\n      [\n        \"▁clinique\",\n        -13.250327110290527\n      ],\n      [\n        \"landais\",\n        -13.250344276428223\n      ],\n      [\n        \"▁campanii\",\n        -13.250399589538574\n      ],\n      [\n        \"▁témoignage\",\n        -13.250439643859863\n      ],\n      [\n        \"▁paralel\",\n        -13.250467300415039\n      ],\n      [\n        \"▁travailleurs\",\n        -13.250576972961426\n      ],\n      [\n        \"▁salvage\",\n        -13.250580787658691\n      ],\n      [\n        \"▁crayon\",\n        -13.250732421875\n      ],\n      [\n        \"immédiat\",\n        -13.25085163116455\n      ],\n      [\n        \"hopped\",\n        -13.250958442687988\n      ],\n      [\n        \"▁senzor\",\n        -13.25102710723877\n      ],\n      [\n        \"▁imbunatati\",\n        -13.251073837280273\n      ],\n      [\n        \"▁capitalize\",\n        -13.2511568069458\n      ],\n      [\n        \"▁Elephant\",\n        -13.25130844116211\n      ],\n      [\n        \"▁insomnia\",\n        -13.25131607055664\n      ],\n      [\n        \"▁Ansicht\",\n        -13.251325607299805\n      ],\n      [\n        \"▁lupte\",\n        -13.251556396484375\n      ],\n      [\n        \"▁genomic\",\n        -13.251557350158691\n      ],\n      [\n        \"▁Grape\",\n        -13.251769065856934\n      ],\n      [\n        \"MONT\",\n        -13.25197982788086\n      ],\n      [\n        \"métiers\",\n        -13.252004623413086\n      ],\n      [\n        \"▁Pierce\",\n        -13.252123832702637\n      ],\n      [\n        \"consulted\",\n        -13.252388954162598\n      ],\n      [\n        \"▁Responsible\",\n        -13.252474784851074\n      ],\n      [\n        \"symmetry\",\n        -13.252476692199707\n      ],\n      [\n        \"▁sulfur\",\n        -13.252487182617188\n      ],\n      [\n        \"▁înapoi\",\n        -13.252510070800781\n      ],\n      [\n        \"▁Junction\",\n        -13.252549171447754\n      ],\n      [\n        \"▁trilogy\",\n        -13.252622604370117\n      ],\n      [\n        \"▁unkompliziert\",\n        -13.253059387207031\n      ],\n      [\n        \"▁zugänglich\",\n        -13.253059387207031\n      ],\n      [\n        \"▁préfèr\",\n        -13.253153800964355\n      ],\n      [\n        \"oarelor\",\n        -13.253361701965332\n      ],\n      [\n        \"langage\",\n        -13.253460884094238\n      ],\n      [\n        \"admired\",\n        -13.253589630126953\n      ],\n      [\n        \"platform\",\n        -13.253595352172852\n      ],\n      [\n        \"▁pluralit\",\n        -13.253616333007812\n      ],\n      [\n        \"▁betrachtet\",\n        -13.253643035888672\n      ],\n      [\n        \"▁reproduc\",\n        -13.253790855407715\n      ],\n      [\n        \"exemple\",\n        -13.25385570526123\n      ],\n      [\n        \"▁conspir\",\n        -13.254347801208496\n      ],\n      [\n        \"▁pelvi\",\n        -13.25437068939209\n      ],\n      [\n        \"leased\",\n        -13.254551887512207\n      ],\n      [\n        \"▁souffle\",\n        -13.254570960998535\n      ],\n      [\n        \"▁approprié\",\n        -13.254705429077148\n      ],\n      [\n        \"absorbing\",\n        -13.254817962646484\n      ],\n      [\n        \"dividing\",\n        -13.254855155944824\n      ],\n      [\n        \"herently\",\n        -13.255147933959961\n      ],\n      [\n        \"▁blister\",\n        -13.255179405212402\n      ],\n      [\n        \"löst\",\n        -13.255182266235352\n      ],\n      [\n        \"Apotheke\",\n        -13.255398750305176\n      ],\n      [\n        \"▁Asociaţi\",\n        -13.255424499511719\n      ],\n      [\n        \"education\",\n        -13.255904197692871\n      ],\n      [\n        \"▁retract\",\n        -13.255982398986816\n      ],\n      [\n        \"▁appraise\",\n        -13.255990982055664\n      ],\n      [\n        \"▁Debbie\",\n        -13.256075859069824\n      ],\n      [\n        \"▁arhitect\",\n        -13.256193161010742\n      ],\n      [\n        \"▁Mohamed\",\n        -13.256568908691406\n      ],\n      [\n        \"▁îndrept\",\n        -13.256568908691406\n      ],\n      [\n        \"▁exhaustive\",\n        -13.256753921508789\n      ],\n      [\n        \"▁Notebook\",\n        -13.257004737854004\n      ],\n      [\n        \"crashing\",\n        -13.257068634033203\n      ],\n      [\n        \"▁Betreiber\",\n        -13.257155418395996\n      ],\n      [\n        \"▁présidentielle\",\n        -13.257159233093262\n      ],\n      [\n        \"▁Träger\",\n        -13.257172584533691\n      ],\n      [\n        \"▁noteworthy\",\n        -13.257259368896484\n      ],\n      [\n        \"▁séparé\",\n        -13.257729530334473\n      ],\n      [\n        \"▁doppelt\",\n        -13.257795333862305\n      ],\n      [\n        \"tină\",\n        -13.258066177368164\n      ],\n      [\n        \"Quelques\",\n        -13.258085250854492\n      ],\n      [\n        \"culoarea\",\n        -13.258100509643555\n      ],\n      [\n        \"▁ethic\",\n        -13.258166313171387\n      ],\n      [\n        \"▁cohesive\",\n        -13.258329391479492\n      ],\n      [\n        \"▁congratulations\",\n        -13.258334159851074\n      ],\n      [\n        \"▁sovereignty\",\n        -13.25833797454834\n      ],\n      [\n        \"▁Aplica\",\n        -13.258413314819336\n      ],\n      [\n        \"▁Covenant\",\n        -13.25851058959961\n      ],\n      [\n        \"▁multicultural\",\n        -13.258591651916504\n      ],\n      [\n        \"assemblée\",\n        -13.258955001831055\n      ],\n      [\n        \"▁petals\",\n        -13.258974075317383\n      ],\n      [\n        \"erode\",\n        -13.259026527404785\n      ],\n      [\n        \"▁porumb\",\n        -13.259035110473633\n      ],\n      [\n        \"▁Barrier\",\n        -13.259050369262695\n      ],\n      [\n        \"▁WWE\",\n        -13.259085655212402\n      ],\n      [\n        \"Etwa\",\n        -13.259175300598145\n      ],\n      [\n        \"▁recunosc\",\n        -13.259271621704102\n      ],\n      [\n        \"▁turtle\",\n        -13.259415626525879\n      ],\n      [\n        \"▁vârf\",\n        -13.259444236755371\n      ],\n      [\n        \"▁Ranking\",\n        -13.259448051452637\n      ],\n      [\n        \"▁sympathetic\",\n        -13.259514808654785\n      ],\n      [\n        \"exploded\",\n        -13.2595796585083\n      ],\n      [\n        \"▁influenț\",\n        -13.259591102600098\n      ],\n      [\n        \"▁Fireplace\",\n        -13.25972843170166\n      ],\n      [\n        \"▁Nachwuchs\",\n        -13.260090827941895\n      ],\n      [\n        \"▁empfohlen\",\n        -13.260090827941895\n      ],\n      [\n        \"Voir\",\n        -13.260661125183105\n      ],\n      [\n        \"▁Vimeo\",\n        -13.26069164276123\n      ],\n      [\n        \"▁weaving\",\n        -13.260967254638672\n      ],\n      [\n        \"beneficiar\",\n        -13.261198043823242\n      ],\n      [\n        \"▁balade\",\n        -13.261216163635254\n      ],\n      [\n        \"▁Mercy\",\n        -13.261566162109375\n      ],\n      [\n        \"3.000\",\n        -13.26181697845459\n      ],\n      [\n        \"Immediately\",\n        -13.261857032775879\n      ],\n      [\n        \"▁frosting\",\n        -13.261868476867676\n      ],\n      [\n        \"▁Fiscal\",\n        -13.261882781982422\n      ],\n      [\n        \"downloadable\",\n        -13.26188850402832\n      ],\n      [\n        \"▁Hwy\",\n        -13.261902809143066\n      ],\n      [\n        \"évoluer\",\n        -13.261951446533203\n      ],\n      [\n        \"▁vieille\",\n        -13.2620210647583\n      ],\n      [\n        \"heißen\",\n        -13.262436866760254\n      ],\n      [\n        \"▁étrangère\",\n        -13.262446403503418\n      ],\n      [\n        \"▁incapable\",\n        -13.262490272521973\n      ],\n      [\n        \"volunteered\",\n        -13.262520790100098\n      ],\n      [\n        \"fortunately\",\n        -13.262564659118652\n      ],\n      [\n        \"company\",\n        -13.262738227844238\n      ],\n      [\n        \"denkt\",\n        -13.2627592086792\n      ],\n      [\n        \"▁citesc\",\n        -13.262818336486816\n      ],\n      [\n        \"▁intrebare\",\n        -13.262896537780762\n      ],\n      [\n        \"pleasantly\",\n        -13.262990951538086\n      ],\n      [\n        \"▁Minecraft\",\n        -13.263079643249512\n      ],\n      [\n        \"▁Schmuck\",\n        -13.26308536529541\n      ],\n      [\n        \"▁maghiar\",\n        -13.263099670410156\n      ],\n      [\n        \"conductive\",\n        -13.263339042663574\n      ],\n      [\n        \"décrit\",\n        -13.263534545898438\n      ],\n      [\n        \"provide\",\n        -13.26353931427002\n      ],\n      [\n        \"▁depăş\",\n        -13.263628959655762\n      ],\n      [\n        \"ituated\",\n        -13.263657569885254\n      ],\n      [\n        \"▁trumpet\",\n        -13.264216423034668\n      ],\n      [\n        \"▁nastere\",\n        -13.2642240524292\n      ],\n      [\n        \"▁Région\",\n        -13.264245986938477\n      ],\n      [\n        \"Occupational\",\n        -13.264411926269531\n      ],\n      [\n        \"▁Grecia\",\n        -13.264415740966797\n      ],\n      [\n        \"▁Conclusion\",\n        -13.26449203491211\n      ],\n      [\n        \"▁collaborateurs\",\n        -13.264927864074707\n      ],\n      [\n        \"▁Alibaba\",\n        -13.265398025512695\n      ],\n      [\n        \"▁amplasat\",\n        -13.265398979187012\n      ],\n      [\n        \"▁Plastik\",\n        -13.265992164611816\n      ],\n      [\n        \"▁stash\",\n        -13.266023635864258\n      ],\n      [\n        \"▁Bonnie\",\n        -13.266045570373535\n      ],\n      [\n        \"▁ehrlich\",\n        -13.266156196594238\n      ],\n      [\n        \"▁contention\",\n        -13.266193389892578\n      ],\n      [\n        \"▁Oslo\",\n        -13.266263008117676\n      ],\n      [\n        \"englische\",\n        -13.266319274902344\n      ],\n      [\n        \"measurable\",\n        -13.266439437866211\n      ],\n      [\n        \"loppy\",\n        -13.266470909118652\n      ],\n      [\n        \"▁Refrigerat\",\n        -13.266579627990723\n      ],\n      [\n        \"▁remboursement\",\n        -13.266580581665039\n      ],\n      [\n        \"▁societăţi\",\n        -13.266580581665039\n      ],\n      [\n        \"translates\",\n        -13.266607284545898\n      ],\n      [\n        \"ichtigkeit\",\n        -13.266685485839844\n      ],\n      [\n        \"agentur\",\n        -13.266741752624512\n      ],\n      [\n        \"▁compute\",\n        -13.266800880432129\n      ],\n      [\n        \"berater\",\n        -13.266921043395996\n      ],\n      [\n        \"▁Georgetown\",\n        -13.266945838928223\n      ],\n      [\n        \"wolves\",\n        -13.266951560974121\n      ],\n      [\n        \"ceased\",\n        -13.266959190368652\n      ],\n      [\n        \"▁Binary\",\n        -13.267030715942383\n      ],\n      [\n        \"▁kontrolliert\",\n        -13.267172813415527\n      ],\n      [\n        \"informer\",\n        -13.267416000366211\n      ],\n      [\n        \"lehrer\",\n        -13.267578125\n      ],\n      [\n        \"lieferung\",\n        -13.267709732055664\n      ],\n      [\n        \"▁definit\",\n        -13.267742156982422\n      ],\n      [\n        \"chèque\",\n        -13.267765045166016\n      ],\n      [\n        \"▁clergy\",\n        -13.267765045166016\n      ],\n      [\n        \"▁ministries\",\n        -13.267767906188965\n      ],\n      [\n        \"▁plague\",\n        -13.267779350280762\n      ],\n      [\n        \"▁Jedi\",\n        -13.267805099487305\n      ],\n      [\n        \"▁Blackjack\",\n        -13.268025398254395\n      ],\n      [\n        \"▁subsection\",\n        -13.26807689666748\n      ],\n      [\n        \"▁Sachsen\",\n        -13.268121719360352\n      ],\n      [\n        \"valorile\",\n        -13.268146514892578\n      ],\n      [\n        \"molded\",\n        -13.26816463470459\n      ],\n      [\n        \"▁betroffen\",\n        -13.268183708190918\n      ],\n      [\n        \"▁adecvat\",\n        -13.268229484558105\n      ],\n      [\n        \"▁collègue\",\n        -13.26835823059082\n      ],\n      [\n        \"▁chinez\",\n        -13.268392562866211\n      ],\n      [\n        \"emelle\",\n        -13.268695831298828\n      ],\n      [\n        \"▁körperliche\",\n        -13.268902778625488\n      ],\n      [\n        \"▁titan\",\n        -13.26891040802002\n      ],\n      [\n        \"▁sophistication\",\n        -13.268951416015625\n      ],\n      [\n        \"▁provoke\",\n        -13.268957138061523\n      ],\n      [\n        \"▁pensii\",\n        -13.269042015075684\n      ],\n      [\n        \"▁Tucker\",\n        -13.269377708435059\n      ],\n      [\n        \"▁motoare\",\n        -13.26943302154541\n      ],\n      [\n        \"supported\",\n        -13.269536972045898\n      ],\n      [\n        \"▁Sicil\",\n        -13.269697189331055\n      ],\n      [\n        \"▁Ausgangs\",\n        -13.26987361907959\n      ],\n      [\n        \"▁verletzt\",\n        -13.269908905029297\n      ],\n      [\n        \"Ligue\",\n        -13.269996643066406\n      ],\n      [\n        \"▁organizatori\",\n        -13.270026206970215\n      ],\n      [\n        \"▁apprentice\",\n        -13.270099639892578\n      ],\n      [\n        \"▁Potato\",\n        -13.270183563232422\n      ],\n      [\n        \"▁Duft\",\n        -13.27039623260498\n      ],\n      [\n        \"▁medicament\",\n        -13.270566940307617\n      ],\n      [\n        \"Hôtel\",\n        -13.270740509033203\n      ],\n      [\n        \"▁Triangle\",\n        -13.270842552185059\n      ],\n      [\n        \"buted\",\n        -13.271100044250488\n      ],\n      [\n        \"▁Bentley\",\n        -13.271336555480957\n      ],\n      [\n        \"următoarele\",\n        -13.271389961242676\n      ],\n      [\n        \"animate\",\n        -13.271404266357422\n      ],\n      [\n        \"megapixel\",\n        -13.271404266357422\n      ],\n      [\n        \"einfachen\",\n        -13.271514892578125\n      ],\n      [\n        \"▁performanț\",\n        -13.271544456481934\n      ],\n      [\n        \"lurry\",\n        -13.27184009552002\n      ],\n      [\n        \"suffisamment\",\n        -13.27192211151123\n      ],\n      [\n        \"▁Weihnachten\",\n        -13.27192211151123\n      ],\n      [\n        \"▁Detective\",\n        -13.27194595336914\n      ],\n      [\n        \"▁lovit\",\n        -13.272049903869629\n      ],\n      [\n        \"▁blouse\",\n        -13.27213191986084\n      ],\n      [\n        \"▁hartie\",\n        -13.272163391113281\n      ],\n      [\n        \"vro\",\n        -13.27225112915039\n      ],\n      [\n        \"▁disastrous\",\n        -13.272517204284668\n      ],\n      [\n        \"vermutlich\",\n        -13.2725191116333\n      ],\n      [\n        \"▁Stafford\",\n        -13.272527694702148\n      ],\n      [\n        \"ehlt\",\n        -13.272628784179688\n      ],\n      [\n        \"▁vielseitig\",\n        -13.272643089294434\n      ],\n      [\n        \"Manifest\",\n        -13.273274421691895\n      ],\n      [\n        \"homage\",\n        -13.27354907989502\n      ],\n      [\n        \"menée\",\n        -13.273566246032715\n      ],\n      [\n        \"▁erläuter\",\n        -13.27370834350586\n      ],\n      [\n        \"▁volontaire\",\n        -13.273709297180176\n      ],\n      [\n        \"wrought\",\n        -13.27371597290039\n      ],\n      [\n        \"▁Naples\",\n        -13.273719787597656\n      ],\n      [\n        \"recommending\",\n        -13.273759841918945\n      ],\n      [\n        \"▁thermique\",\n        -13.273774147033691\n      ],\n      [\n        \"▁subtitle\",\n        -13.273787498474121\n      ],\n      [\n        \"▁Slam\",\n        -13.273809432983398\n      ],\n      [\n        \"▁necesitate\",\n        -13.273809432983398\n      ],\n      [\n        \"trimmed\",\n        -13.274099349975586\n      ],\n      [\n        \"urmatoarele\",\n        -13.274178504943848\n      ],\n      [\n        \"▁Sorin\",\n        -13.274245262145996\n      ],\n      [\n        \"▁compromis\",\n        -13.274300575256348\n      ],\n      [\n        \"overcoming\",\n        -13.274477005004883\n      ],\n      [\n        \"▁Samantha\",\n        -13.274901390075684\n      ],\n      [\n        \"dazzling\",\n        -13.27490234375\n      ],\n      [\n        \"▁Pearson\",\n        -13.274903297424316\n      ],\n      [\n        \"▁glazing\",\n        -13.274911880493164\n      ],\n      [\n        \"Revelation\",\n        -13.274921417236328\n      ],\n      [\n        \"destinée\",\n        -13.275156021118164\n      ],\n      [\n        \"öffnet\",\n        -13.27515983581543\n      ],\n      [\n        \"CERT\",\n        -13.275327682495117\n      ],\n      [\n        \"▁Sneak\",\n        -13.275503158569336\n      ],\n      [\n        \"proiectele\",\n        -13.275605201721191\n      ],\n      [\n        \"▁longitudinal\",\n        -13.27609634399414\n      ],\n      [\n        \"▁cocaine\",\n        -13.276098251342773\n      ],\n      [\n        \"▁universitar\",\n        -13.276108741760254\n      ],\n      [\n        \"▁refreshments\",\n        -13.276166915893555\n      ],\n      [\n        \"▁instanţ\",\n        -13.276243209838867\n      ],\n      [\n        \"▁kostenfrei\",\n        -13.276397705078125\n      ],\n      [\n        \"▁comédie\",\n        -13.276451110839844\n      ],\n      [\n        \"▁Locat\",\n        -13.276725769042969\n      ],\n      [\n        \"▁Albania\",\n        -13.276732444763184\n      ],\n      [\n        \"▁mécanique\",\n        -13.276776313781738\n      ],\n      [\n        \"messung\",\n        -13.27683162689209\n      ],\n      [\n        \"issus\",\n        -13.277260780334473\n      ],\n      [\n        \"pinned\",\n        -13.277328491210938\n      ],\n      [\n        \"▁sanft\",\n        -13.277335166931152\n      ],\n      [\n        \"▁geprüft\",\n        -13.277435302734375\n      ],\n      [\n        \"▁procè\",\n        -13.277442932128906\n      ],\n      [\n        \"▁Üb\",\n        -13.277765274047852\n      ],\n      [\n        \"5-0\",\n        -13.277802467346191\n      ],\n      [\n        \"▁Catering\",\n        -13.277957916259766\n      ],\n      [\n        \"▁prosperous\",\n        -13.27801513671875\n      ],\n      [\n        \"▁replication\",\n        -13.278098106384277\n      ],\n      [\n        \"▁obese\",\n        -13.278441429138184\n      ],\n      [\n        \"clerosis\",\n        -13.278489112854004\n      ],\n      [\n        \"▁Carnegie\",\n        -13.278489112854004\n      ],\n      [\n        \"▁Incredible\",\n        -13.278489112854004\n      ],\n      [\n        \"▁Teppich\",\n        -13.278489112854004\n      ],\n      [\n        \"▁crunchy\",\n        -13.278489112854004\n      ],\n      [\n        \"▁vomiting\",\n        -13.278529167175293\n      ],\n      [\n        \"▁sourire\",\n        -13.278619766235352\n      ],\n      [\n        \"publish\",\n        -13.278948783874512\n      ],\n      [\n        \"▁exterioar\",\n        -13.279094696044922\n      ],\n      [\n        \"▁forehead\",\n        -13.279107093811035\n      ],\n      [\n        \"▁climatique\",\n        -13.279313087463379\n      ],\n      [\n        \"▁conservator\",\n        -13.279458999633789\n      ],\n      [\n        \"▁Russland\",\n        -13.279687881469727\n      ],\n      [\n        \"▁kombiniert\",\n        -13.279687881469727\n      ],\n      [\n        \"▁Thrones\",\n        -13.279688835144043\n      ],\n      [\n        \"▁Griffith\",\n        -13.27968978881836\n      ],\n      [\n        \"▁fragrant\",\n        -13.279695510864258\n      ],\n      [\n        \"▁RSVP\",\n        -13.279698371887207\n      ],\n      [\n        \"klima\",\n        -13.279751777648926\n      ],\n      [\n        \"▁situație\",\n        -13.279808044433594\n      ],\n      [\n        \"deschiderea\",\n        -13.280009269714355\n      ],\n      [\n        \"▁moale\",\n        -13.280033111572266\n      ],\n      [\n        \"▁Trevor\",\n        -13.280112266540527\n      ],\n      [\n        \"ménager\",\n        -13.28011417388916\n      ],\n      [\n        \"deploying\",\n        -13.280428886413574\n      ],\n      [\n        \"▁Loft\",\n        -13.280500411987305\n      ],\n      [\n        \"▁Willkommen\",\n        -13.28059196472168\n      ],\n      [\n        \"▁Bezirks\",\n        -13.280887603759766\n      ],\n      [\n        \"▁Himself\",\n        -13.280975341796875\n      ],\n      [\n        \"▁quarant\",\n        -13.28101634979248\n      ],\n      [\n        \"▁1901\",\n        -13.281079292297363\n      ],\n      [\n        \"▁tripod\",\n        -13.28136920928955\n      ],\n      [\n        \"▁récolt\",\n        -13.281553268432617\n      ],\n      [\n        \"natură\",\n        -13.281631469726562\n      ],\n      [\n        \"School\",\n        -13.281649589538574\n      ],\n      [\n        \"contested\",\n        -13.281773567199707\n      ],\n      [\n        \"bwohl\",\n        -13.281784057617188\n      ],\n      [\n        \"Darren\",\n        -13.281830787658691\n      ],\n      [\n        \"medicine\",\n        -13.281903266906738\n      ],\n      [\n        \"▁Impuls\",\n        -13.282041549682617\n      ],\n      [\n        \"prevailing\",\n        -13.282057762145996\n      ],\n      [\n        \"▁orthodontic\",\n        -13.282089233398438\n      ],\n      [\n        \"▁sequential\",\n        -13.282089233398438\n      ],\n      [\n        \"▁Kolkata\",\n        -13.28209114074707\n      ],\n      [\n        \"▁séch\",\n        -13.282100677490234\n      ],\n      [\n        \"▁diaper\",\n        -13.28212833404541\n      ],\n      [\n        \"▁simplifie\",\n        -13.282144546508789\n      ],\n      [\n        \"▁reflux\",\n        -13.282163619995117\n      ],\n      [\n        \"▁Hypo\",\n        -13.282242774963379\n      ],\n      [\n        \"imprimer\",\n        -13.282251358032227\n      ],\n      [\n        \"▁Folosi\",\n        -13.282401084899902\n      ],\n      [\n        \"Info\",\n        -13.282570838928223\n      ],\n      [\n        \"▁Investiga\",\n        -13.282801628112793\n      ],\n      [\n        \"stabilirea\",\n        -13.282845497131348\n      ],\n      [\n        \"élis\",\n        -13.283149719238281\n      ],\n      [\n        \"ccessed\",\n        -13.28320026397705\n      ],\n      [\n        \"▁recyclable\",\n        -13.283293724060059\n      ],\n      [\n        \"▁forbidden\",\n        -13.283295631408691\n      ],\n      [\n        \"▁Colonel\",\n        -13.283297538757324\n      ],\n      [\n        \"▁nisip\",\n        -13.28330135345459\n      ],\n      [\n        \"▁Fundamental\",\n        -13.283303260803223\n      ],\n      [\n        \"▁nouveauté\",\n        -13.283308029174805\n      ],\n      [\n        \"khi\",\n        -13.283357620239258\n      ],\n      [\n        \"▁ecology\",\n        -13.28339672088623\n      ],\n      [\n        \"▁filament\",\n        -13.283540725708008\n      ],\n      [\n        \"▁relentless\",\n        -13.283559799194336\n      ],\n      [\n        \"▁Behavior\",\n        -13.283669471740723\n      ],\n      [\n        \"titulaire\",\n        -13.283900260925293\n      ],\n      [\n        \"▁administrativ\",\n        -13.28404426574707\n      ],\n      [\n        \"▁Vorlage\",\n        -13.284209251403809\n      ],\n      [\n        \"zeigte\",\n        -13.28427791595459\n      ],\n      [\n        \"▁Bäume\",\n        -13.284497261047363\n      ],\n      [\n        \"▁Kartoffel\",\n        -13.284497261047363\n      ],\n      [\n        \"▁Possible\",\n        -13.284500122070312\n      ],\n      [\n        \"▁perturb\",\n        -13.28466510772705\n      ],\n      [\n        \"▁Grigor\",\n        -13.284717559814453\n      ],\n      [\n        \"▁streng\",\n        -13.284759521484375\n      ],\n      [\n        \"▁vânzare\",\n        -13.285101890563965\n      ],\n      [\n        \"concentrating\",\n        -13.285698890686035\n      ],\n      [\n        \"▁rechtzeitig\",\n        -13.2857027053833\n      ],\n      [\n        \"▁eternity\",\n        -13.28570556640625\n      ],\n      [\n        \"▁Puzzle\",\n        -13.28575611114502\n      ],\n      [\n        \"▁malade\",\n        -13.285775184631348\n      ],\n      [\n        \"▁Metallic\",\n        -13.285776138305664\n      ],\n      [\n        \"▁Unterhaltung\",\n        -13.285783767700195\n      ],\n      [\n        \"▁4:00\",\n        -13.285820960998535\n      ],\n      [\n        \"▁magique\",\n        -13.285908699035645\n      ],\n      [\n        \"▁cellphone\",\n        -13.285975456237793\n      ],\n      [\n        \"▁inhibition\",\n        -13.286023139953613\n      ],\n      [\n        \"▁remplacement\",\n        -13.286025047302246\n      ],\n      [\n        \"▁WWII\",\n        -13.286089897155762\n      ],\n      [\n        \"Eff\",\n        -13.286258697509766\n      ],\n      [\n        \"kontakt\",\n        -13.286832809448242\n      ],\n      [\n        \"Update\",\n        -13.286869049072266\n      ],\n      [\n        \"▁Emerald\",\n        -13.286910057067871\n      ],\n      [\n        \"▁hammock\",\n        -13.286910057067871\n      ],\n      [\n        \"POWER\",\n        -13.286917686462402\n      ],\n      [\n        \"automne\",\n        -13.286917686462402\n      ],\n      [\n        \"▁(2004)\",\n        -13.286961555480957\n      ],\n      [\n        \"▁participanți\",\n        -13.287012100219727\n      ],\n      [\n        \"1998)\",\n        -13.287014961242676\n      ],\n      [\n        \"▁deletion\",\n        -13.287186622619629\n      ],\n      [\n        \"▁Proiect\",\n        -13.287226676940918\n      ],\n      [\n        \"IDENT\",\n        -13.287504196166992\n      ],\n      [\n        \"▁precis\",\n        -13.287623405456543\n      ],\n      [\n        \"▁limp\",\n        -13.287676811218262\n      ],\n      [\n        \"▁Pompe\",\n        -13.287686347961426\n      ],\n      [\n        \"▁ménage\",\n        -13.28780746459961\n      ],\n      [\n        \"▁Wahrheit\",\n        -13.288119316101074\n      ],\n      [\n        \"▁Intelligent\",\n        -13.28812026977539\n      ],\n      [\n        \"▁instability\",\n        -13.2881441116333\n      ],\n      [\n        \"insurance\",\n        -13.288346290588379\n      ],\n      [\n        \"▁Nursery\",\n        -13.288352966308594\n      ],\n      [\n        \"▁synonym\",\n        -13.288427352905273\n      ],\n      [\n        \"▁ignite\",\n        -13.28848934173584\n      ],\n      [\n        \"▁Vernon\",\n        -13.28849983215332\n      ],\n      [\n        \"purchase\",\n        -13.288524627685547\n      ],\n      [\n        \"▁disponibilité\",\n        -13.288662910461426\n      ],\n      [\n        \"▁producţi\",\n        -13.28909969329834\n      ],\n      [\n        \"▁Pentagon\",\n        -13.289329528808594\n      ],\n      [\n        \"▁illumination\",\n        -13.289329528808594\n      ],\n      [\n        \"▁obsolete\",\n        -13.289329528808594\n      ],\n      [\n        \"▁unacceptable\",\n        -13.28933048248291\n      ],\n      [\n        \"Gleichzeitig\",\n        -13.289938926696777\n      ],\n      [\n        \"rutsch\",\n        -13.290071487426758\n      ],\n      [\n        \"viziuni\",\n        -13.290409088134766\n      ],\n      [\n        \"▁Nicaragua\",\n        -13.29054069519043\n      ],\n      [\n        \"▁hesitation\",\n        -13.290541648864746\n      ],\n      [\n        \"▁nascut\",\n        -13.290545463562012\n      ],\n      [\n        \"▁Warehouse\",\n        -13.29055404663086\n      ],\n      [\n        \"geboten\",\n        -13.290558815002441\n      ],\n      [\n        \"▁Lagos\",\n        -13.290844917297363\n      ],\n      [\n        \"produced\",\n        -13.290874481201172\n      ],\n      [\n        \"cativa\",\n        -13.291309356689453\n      ],\n      [\n        \"▁Tracy\",\n        -13.291326522827148\n      ],\n      [\n        \"Projekt\",\n        -13.291468620300293\n      ],\n      [\n        \"▁malaria\",\n        -13.291692733764648\n      ],\n      [\n        \"▁Baldwin\",\n        -13.291755676269531\n      ],\n      [\n        \"Take\",\n        -13.291791915893555\n      ],\n      [\n        \"▁fluctuations\",\n        -13.291844367980957\n      ],\n      [\n        \"▁titular\",\n        -13.29194450378418\n      ],\n      [\n        \"bmw\",\n        -13.291976928710938\n      ],\n      [\n        \"▁brevet\",\n        -13.29202651977539\n      ],\n      [\n        \"étapes\",\n        -13.292173385620117\n      ],\n      [\n        \"wikipedia\",\n        -13.292373657226562\n      ],\n      [\n        \"▁corporal\",\n        -13.292424201965332\n      ],\n      [\n        \"▁Schönheit\",\n        -13.2926664352417\n      ],\n      [\n        \"utilizatorii\",\n        -13.292695999145508\n      ],\n      [\n        \"INFO\",\n        -13.292807579040527\n      ],\n      [\n        \"▁formularul\",\n        -13.292900085449219\n      ],\n      [\n        \"femi\",\n        -13.292959213256836\n      ],\n      [\n        \"Konferenz\",\n        -13.29296875\n      ],\n      [\n        \"▁carnival\",\n        -13.29296875\n      ],\n      [\n        \"▁Kräuter\",\n        -13.292969703674316\n      ],\n      [\n        \"▁gelernt\",\n        -13.292981147766113\n      ],\n      [\n        \"▁Sherman\",\n        -13.293017387390137\n      ],\n      [\n        \"▁persistence\",\n        -13.293289184570312\n      ],\n      [\n        \"▁Behörden\",\n        -13.293577194213867\n      ],\n      [\n        \"▁Frühjahr\",\n        -13.293578147888184\n      ],\n      [\n        \"▁Guvern\",\n        -13.293649673461914\n      ],\n      [\n        \"interpreting\",\n        -13.293878555297852\n      ],\n      [\n        \"▁nommé\",\n        -13.294021606445312\n      ],\n      [\n        \"consult\",\n        -13.294035911560059\n      ],\n      [\n        \"▁obligaţi\",\n        -13.294184684753418\n      ],\n      [\n        \"▁Newspaper\",\n        -13.2942476272583\n      ],\n      [\n        \"(2005)\",\n        -13.294515609741211\n      ],\n      [\n        \"pumped\",\n        -13.294614791870117\n      ],\n      [\n        \"▁autoritati\",\n        -13.294634819030762\n      ],\n      [\n        \"▁aplicatii\",\n        -13.294644355773926\n      ],\n      [\n        \"▁verhindert\",\n        -13.294794082641602\n      ],\n      [\n        \"▁évident\",\n        -13.294794082641602\n      ],\n      [\n        \"▁getrennt\",\n        -13.294795036315918\n      ],\n      [\n        \"▁Encourage\",\n        -13.295403480529785\n      ],\n      [\n        \"▁lurk\",\n        -13.295432090759277\n      ],\n      [\n        \"▁condemned\",\n        -13.295455932617188\n      ],\n      [\n        \"▁4:30\",\n        -13.295502662658691\n      ],\n      [\n        \"labelled\",\n        -13.29576587677002\n      ],\n      [\n        \"ordinea\",\n        -13.295899391174316\n      ],\n      [\n        \"▁pantofi\",\n        -13.296012878417969\n      ],\n      [\n        \"Default\",\n        -13.296042442321777\n      ],\n      [\n        \"▁beruh\",\n        -13.296120643615723\n      ],\n      [\n        \"/01/\",\n        -13.296268463134766\n      ],\n      [\n        \"league\",\n        -13.296503067016602\n      ],\n      [\n        \"▁couvert\",\n        -13.296524047851562\n      ],\n      [\n        \"▁competencies\",\n        -13.296622276306152\n      ],\n      [\n        \"▁mozzarella\",\n        -13.296622276306152\n      ],\n      [\n        \"jihad\",\n        -13.29662799835205\n      ],\n      [\n        \"▁gossip\",\n        -13.29662799835205\n      ],\n      [\n        \"▁Omaha\",\n        -13.296628952026367\n      ],\n      [\n        \"▁coincidence\",\n        -13.296669960021973\n      ],\n      [\n        \"▁Pinot\",\n        -13.296710968017578\n      ],\n      [\n        \"dotted\",\n        -13.296789169311523\n      ],\n      [\n        \"schilder\",\n        -13.297197341918945\n      ],\n      [\n        \"▁Munte\",\n        -13.297224998474121\n      ],\n      [\n        \"▁Vermieter\",\n        -13.297232627868652\n      ],\n      [\n        \"▁britannique\",\n        -13.297232627868652\n      ],\n      [\n        \"▁comentariu\",\n        -13.297235488891602\n      ],\n      [\n        \"abonnement\",\n        -13.29725456237793\n      ],\n      [\n        \"▁inventive\",\n        -13.29727840423584\n      ],\n      [\n        \"complie\",\n        -13.297279357910156\n      ],\n      [\n        \"composée\",\n        -13.29734992980957\n      ],\n      [\n        \"▁glatt\",\n        -13.297684669494629\n      ],\n      [\n        \"adorned\",\n        -13.297842979431152\n      ],\n      [\n        \"▁Opportunities\",\n        -13.297842979431152\n      ],\n      [\n        \"▁equilibrium\",\n        -13.297842979431152\n      ],\n      [\n        \"▁persuasive\",\n        -13.297842979431152\n      ],\n      [\n        \"▁achiziţi\",\n        -13.297843933105469\n      ],\n      [\n        \"▁déterminer\",\n        -13.297843933105469\n      ],\n      [\n        \"▁fleece\",\n        -13.297857284545898\n      ],\n      [\n        \"▁ivory\",\n        -13.29786205291748\n      ],\n      [\n        \"▁Genuss\",\n        -13.297900199890137\n      ],\n      [\n        \"Thousands\",\n        -13.297930717468262\n      ],\n      [\n        \"▁izolat\",\n        -13.297965049743652\n      ],\n      [\n        \"▁symbolize\",\n        -13.298033714294434\n      ],\n      [\n        \"gâteau\",\n        -13.298051834106445\n      ],\n      [\n        \"▁relații\",\n        -13.298062324523926\n      ],\n      [\n        \"▁Classroom\",\n        -13.298144340515137\n      ],\n      [\n        \"settlers\",\n        -13.298155784606934\n      ],\n      [\n        \"▁vremuri\",\n        -13.298195838928223\n      ],\n      [\n        \"▁Serial\",\n        -13.29838752746582\n      ],\n      [\n        \"▁boite\",\n        -13.298399925231934\n      ],\n      [\n        \"équivalent\",\n        -13.298453330993652\n      ],\n      [\n        \"▁benutzen\",\n        -13.298454284667969\n      ],\n      [\n        \"▁Recomand\",\n        -13.298462867736816\n      ],\n      [\n        \"▁Sinai\",\n        -13.298968315124512\n      ],\n      [\n        \"▁Advertise\",\n        -13.29906940460205\n      ],\n      [\n        \"▁Thermal\",\n        -13.299206733703613\n      ],\n      [\n        \"fiance\",\n        -13.299471855163574\n      ],\n      [\n        \"▁universitaire\",\n        -13.299683570861816\n      ],\n      [\n        \"▁rivière\",\n        -13.299793243408203\n      ],\n      [\n        \"▁reimburse\",\n        -13.299907684326172\n      ],\n      [\n        \"ţara\",\n        -13.299932479858398\n      ],\n      [\n        \"tician\",\n        -13.30002498626709\n      ],\n      [\n        \"intelligence\",\n        -13.300041198730469\n      ],\n      [\n        \"▁abgestimmt\",\n        -13.300288200378418\n      ],\n      [\n        \"▁compliqué\",\n        -13.300288200378418\n      ],\n      [\n        \"▁succulent\",\n        -13.300297737121582\n      ],\n      [\n        \"opéra\",\n        -13.300395011901855\n      ],\n      [\n        \"7-9\",\n        -13.300456047058105\n      ],\n      [\n        \"▁pierderi\",\n        -13.300654411315918\n      ],\n      [\n        \"extinction\",\n        -13.30090045928955\n      ],\n      [\n        \"▁Zweifel\",\n        -13.30103874206543\n      ],\n      [\n        \"ATCH\",\n        -13.30112361907959\n      ],\n      [\n        \"10,000\",\n        -13.301222801208496\n      ],\n      [\n        \"▁uninterrupted\",\n        -13.301513671875\n      ],\n      [\n        \"▁Eigentum\",\n        -13.301517486572266\n      ],\n      [\n        \"▁Utility\",\n        -13.301517486572266\n      ],\n      [\n        \"ско\",\n        -13.301529884338379\n      ],\n      [\n        \"▁tornado\",\n        -13.301544189453125\n      ],\n      [\n        \"▁Güte\",\n        -13.301727294921875\n      ],\n      [\n        \"▁pertain\",\n        -13.301923751831055\n      ],\n      [\n        \"painters\",\n        -13.301993370056152\n      ],\n      [\n        \"Help\",\n        -13.3021240234375\n      ],\n      [\n        \"▁străinătate\",\n        -13.30212688446045\n      ],\n      [\n        \"▁stammen\",\n        -13.302170753479004\n      ],\n      [\n        \"opposition\",\n        -13.302229881286621\n      ],\n      [\n        \"▁rhino\",\n        -13.302233695983887\n      ],\n      [\n        \"intervenir\",\n        -13.302427291870117\n      ],\n      [\n        \"▁hyperlink\",\n        -13.302441596984863\n      ],\n      [\n        \"höchst\",\n        -13.302518844604492\n      ],\n      [\n        \"roach\",\n        -13.302627563476562\n      ],\n      [\n        \"wSt\",\n        -13.302687644958496\n      ],\n      [\n        \"▁monastery\",\n        -13.302740097045898\n      ],\n      [\n        \"▁algae\",\n        -13.302754402160645\n      ],\n      [\n        \"▁shaving\",\n        -13.302757263183594\n      ],\n      [\n        \"présentent\",\n        -13.302804946899414\n      ],\n      [\n        \"Africa\",\n        -13.302860260009766\n      ],\n      [\n        \"eigener\",\n        -13.303047180175781\n      ],\n      [\n        \"▁glace\",\n        -13.303153991699219\n      ],\n      [\n        \"▁discurs\",\n        -13.303179740905762\n      ],\n      [\n        \"▁autograph\",\n        -13.303204536437988\n      ],\n      [\n        \"▁Conflict\",\n        -13.303359031677246\n      ],\n      [\n        \"▁școli\",\n        -13.303411483764648\n      ],\n      [\n        \"▁excerpt\",\n        -13.303617477416992\n      ],\n      [\n        \"correlated\",\n        -13.303628921508789\n      ],\n      [\n        \"empel\",\n        -13.303841590881348\n      ],\n      [\n        \"cryptocurrencies\",\n        -13.30396842956543\n      ],\n      [\n        \"▁symposium\",\n        -13.30396842956543\n      ],\n      [\n        \"▁gewohnt\",\n        -13.303994178771973\n      ],\n      [\n        \"PTSD\",\n        -13.304070472717285\n      ],\n      [\n        \"▁harmonic\",\n        -13.304166793823242\n      ],\n      [\n        \"discarded\",\n        -13.304282188415527\n      ],\n      [\n        \"▁Flint\",\n        -13.304359436035156\n      ],\n      [\n        \"Russia\",\n        -13.304422378540039\n      ],\n      [\n        \"▁ședinț\",\n        -13.304583549499512\n      ],\n      [\n        \"▁accusations\",\n        -13.304727554321289\n      ],\n      [\n        \"▁încălc\",\n        -13.304827690124512\n      ],\n      [\n        \"sendung\",\n        -13.305152893066406\n      ],\n      [\n        \"▁Chiropractic\",\n        -13.305197715759277\n      ],\n      [\n        \"▁excepți\",\n        -13.305201530456543\n      ],\n      [\n        \"▁proclaim\",\n        -13.305201530456543\n      ],\n      [\n        \"▁Flexible\",\n        -13.305295944213867\n      ],\n      [\n        \"▁Hüt\",\n        -13.30538272857666\n      ],\n      [\n        \"▁Baltic\",\n        -13.30539608001709\n      ],\n      [\n        \"▁inaltime\",\n        -13.30553913116455\n      ],\n      [\n        \"▁montré\",\n        -13.305868148803711\n      ],\n      [\n        \"exécution\",\n        -13.305898666381836\n      ],\n      [\n        \"partei\",\n        -13.305961608886719\n      ],\n      [\n        \"▁specifie\",\n        -13.306072235107422\n      ],\n      [\n        \"▁Jackpot\",\n        -13.306105613708496\n      ],\n      [\n        \"▁stumble\",\n        -13.306134223937988\n      ],\n      [\n        \"▁individuel\",\n        -13.306161880493164\n      ],\n      [\n        \"▁Veteran\",\n        -13.306217193603516\n      ],\n      [\n        \"▁Supplies\",\n        -13.306428909301758\n      ],\n      [\n        \"▁excavation\",\n        -13.306428909301758\n      ],\n      [\n        \"▁Libraries\",\n        -13.306469917297363\n      ],\n      [\n        \"▁prénom\",\n        -13.306476593017578\n      ],\n      [\n        \"WOOD\",\n        -13.30650806427002\n      ],\n      [\n        \"meciul\",\n        -13.306917190551758\n      ],\n      [\n        \"Chef\",\n        -13.306938171386719\n      ],\n      [\n        \"▁SUPER\",\n        -13.306940078735352\n      ],\n      [\n        \"Appeals\",\n        -13.30696964263916\n      ],\n      [\n        \"terapia\",\n        -13.307113647460938\n      ],\n      [\n        \"▁relatii\",\n        -13.30713939666748\n      ],\n      [\n        \"modifying\",\n        -13.30748462677002\n      ],\n      [\n        \"▁Regulament\",\n        -13.307662010192871\n      ],\n      [\n        \"▁bănci\",\n        -13.307662963867188\n      ],\n      [\n        \"▁agility\",\n        -13.307666778564453\n      ],\n      [\n        \"▁Magnetic\",\n        -13.307674407958984\n      ],\n      [\n        \"▁piatra\",\n        -13.30767822265625\n      ],\n      [\n        \"▁Governance\",\n        -13.307680130004883\n      ],\n      [\n        \"▁clown\",\n        -13.30772876739502\n      ],\n      [\n        \"▁Choir\",\n        -13.308337211608887\n      ],\n      [\n        \"aujourd\",\n        -13.308548927307129\n      ],\n      [\n        \"▁vendeur\",\n        -13.308732032775879\n      ],\n      [\n        \"ndererseits\",\n        -13.308859825134277\n      ],\n      [\n        \"▁Bahrain\",\n        -13.3088960647583\n      ],\n      [\n        \"▁Timisoara\",\n        -13.3088960647583\n      ],\n      [\n        \"▁exklusive\",\n        -13.3088960647583\n      ],\n      [\n        \"▁Population\",\n        -13.309001922607422\n      ],\n      [\n        \"▁nepo\",\n        -13.309073448181152\n      ],\n      [\n        \"▁relish\",\n        -13.309085845947266\n      ],\n      [\n        \"▁Pumpkin\",\n        -13.309571266174316\n      ],\n      [\n        \"▁détente\",\n        -13.309784889221191\n      ],\n      [\n        \"▁episcop\",\n        -13.309860229492188\n      ],\n      [\n        \"patterned\",\n        -13.309929847717285\n      ],\n      [\n        \"▁THANK\",\n        -13.310132026672363\n      ],\n      [\n        \"▁Widerspruch\",\n        -13.310132026672363\n      ],\n      [\n        \"▁Crisis\",\n        -13.310189247131348\n      ],\n      [\n        \"▁goose\",\n        -13.310226440429688\n      ],\n      [\n        \"▁couture\",\n        -13.310307502746582\n      ],\n      [\n        \"▁hinweg\",\n        -13.310446739196777\n      ],\n      [\n        \"supplemental\",\n        -13.310486793518066\n      ],\n      [\n        \"shingles\",\n        -13.31060791015625\n      ],\n      [\n        \"investir\",\n        -13.310635566711426\n      ],\n      [\n        \"▁steriliz\",\n        -13.310759544372559\n      ],\n      [\n        \"tractors\",\n        -13.310761451721191\n      ],\n      [\n        \"cellules\",\n        -13.31078815460205\n      ],\n      [\n        \"▁Gloria\",\n        -13.310888290405273\n      ],\n      [\n        \"▁teilnehmen\",\n        -13.311092376708984\n      ],\n      [\n        \"companiile\",\n        -13.311248779296875\n      ],\n      [\n        \"surfacing\",\n        -13.311279296875\n      ],\n      [\n        \"▁nostalgic\",\n        -13.311368942260742\n      ],\n      [\n        \"▁Badezimmer\",\n        -13.311369895935059\n      ],\n      [\n        \"▁conjoint\",\n        -13.311370849609375\n      ],\n      [\n        \"vacancy\",\n        -13.31145191192627\n      ],\n      [\n        \"▁homeland\",\n        -13.311582565307617\n      ],\n      [\n        \"▁Abschnitt\",\n        -13.311625480651855\n      ],\n      [\n        \"Cartea\",\n        -13.311653137207031\n      ],\n      [\n        \"SIA\",\n        -13.311782836914062\n      ],\n      [\n        \"▁explode\",\n        -13.311786651611328\n      ],\n      [\n        \"fostering\",\n        -13.311959266662598\n      ],\n      [\n        \"▁ceilalti\",\n        -13.31198787689209\n      ],\n      [\n        \"▁gentil\",\n        -13.31214714050293\n      ],\n      [\n        \"oplasty\",\n        -13.31218433380127\n      ],\n      [\n        \"bodied\",\n        -13.312424659729004\n      ],\n      [\n        \"▁1906\",\n        -13.312499046325684\n      ],\n      [\n        \"▁BlackBerry\",\n        -13.312607765197754\n      ],\n      [\n        \"▁Presbyterian\",\n        -13.312607765197754\n      ],\n      [\n        \"▁berücksichtigt\",\n        -13.312607765197754\n      ],\n      [\n        \"▁compartiment\",\n        -13.312607765197754\n      ],\n      [\n        \"▁compulsory\",\n        -13.312607765197754\n      ],\n      [\n        \"Millennial\",\n        -13.312609672546387\n      ],\n      [\n        \"▁sanitar\",\n        -13.312638282775879\n      ],\n      [\n        \"▁stink\",\n        -13.312975883483887\n      ],\n      [\n        \"lius\",\n        -13.313047409057617\n      ],\n      [\n        \"thankfully\",\n        -13.313136100769043\n      ],\n      [\n        \"modalité\",\n        -13.313173294067383\n      ],\n      [\n        \"▁cunoaște\",\n        -13.313226699829102\n      ],\n      [\n        \"Infrastruktur\",\n        -13.313227653503418\n      ],\n      [\n        \"▁studenți\",\n        -13.313253402709961\n      ],\n      [\n        \"Bref\",\n        -13.313270568847656\n      ],\n      [\n        \"London\",\n        -13.31360149383545\n      ],\n      [\n        \"▁Arduino\",\n        -13.313847541809082\n      ],\n      [\n        \"▁cilantro\",\n        -13.313847541809082\n      ],\n      [\n        \"▁Rafael\",\n        -13.313848495483398\n      ],\n      [\n        \"▁untersucht\",\n        -13.313861846923828\n      ],\n      [\n        \"▁martyr\",\n        -13.31389331817627\n      ],\n      [\n        \"▁Mormon\",\n        -13.313984870910645\n      ],\n      [\n        \"▁wicket\",\n        -13.313996315002441\n      ],\n      [\n        \"cherished\",\n        -13.314335823059082\n      ],\n      [\n        \"liquid\",\n        -13.314417839050293\n      ],\n      [\n        \"▁dorinț\",\n        -13.314571380615234\n      ],\n      [\n        \"lehnt\",\n        -13.314717292785645\n      ],\n      [\n        \"meisterschaft\",\n        -13.31493091583252\n      ],\n      [\n        \"fondateur\",\n        -13.314971923828125\n      ],\n      [\n        \"câble\",\n        -13.315078735351562\n      ],\n      [\n        \"▁erreichbar\",\n        -13.315091133117676\n      ],\n      [\n        \"▁footsteps\",\n        -13.315094947814941\n      ],\n      [\n        \"▁Kloster\",\n        -13.31519889831543\n      ],\n      [\n        \"▁multiplayer\",\n        -13.315218925476074\n      ],\n      [\n        \"▁substitu\",\n        -13.315276145935059\n      ],\n      [\n        \"▁Frisch\",\n        -13.315526962280273\n      ],\n      [\n        \"▁arsenal\",\n        -13.315712928771973\n      ],\n      [\n        \"explication\",\n        -13.315866470336914\n      ],\n      [\n        \"▁conexiun\",\n        -13.315986633300781\n      ],\n      [\n        \"muddy\",\n        -13.316045761108398\n      ],\n      [\n        \"▁Reifen\",\n        -13.316120147705078\n      ],\n      [\n        \"auraient\",\n        -13.316132545471191\n      ],\n      [\n        \"▁biologic\",\n        -13.316136360168457\n      ],\n      [\n        \"▁acquainted\",\n        -13.316332817077637\n      ],\n      [\n        \"▁shelving\",\n        -13.316341400146484\n      ],\n      [\n        \"Stunning\",\n        -13.316373825073242\n      ],\n      [\n        \"▁Clothing\",\n        -13.316394805908203\n      ],\n      [\n        \"▁kidding\",\n        -13.316431999206543\n      ],\n      [\n        \"excellent\",\n        -13.316452026367188\n      ],\n      [\n        \"▁susțin\",\n        -13.316487312316895\n      ],\n      [\n        \"bătut\",\n        -13.316502571105957\n      ],\n      [\n        \"elusive\",\n        -13.3165283203125\n      ],\n      [\n        \"werbung\",\n        -13.316743850708008\n      ],\n      [\n        \"slipping\",\n        -13.316813468933105\n      ],\n      [\n        \"▁configura\",\n        -13.316926956176758\n      ],\n      [\n        \"▁proaspat\",\n        -13.31695556640625\n      ],\n      [\n        \"▁apporté\",\n        -13.317120552062988\n      ],\n      [\n        \"▁démarr\",\n        -13.317328453063965\n      ],\n      [\n        \"Spezialist\",\n        -13.317578315734863\n      ],\n      [\n        \"▁obligați\",\n        -13.317578315734863\n      ],\n      [\n        \"▁societăți\",\n        -13.317578315734863\n      ],\n      [\n        \"▁malpractice\",\n        -13.31757926940918\n      ],\n      [\n        \"Hundreds\",\n        -13.317609786987305\n      ],\n      [\n        \"▁3:1\",\n        -13.318138122558594\n      ],\n      [\n        \"▁computation\",\n        -13.31817626953125\n      ],\n      [\n        \"▁Heilig\",\n        -13.318528175354004\n      ],\n      [\n        \"▁Helsinki\",\n        -13.318824768066406\n      ],\n      [\n        \"▁firefighters\",\n        -13.318824768066406\n      ],\n      [\n        \"▁obedience\",\n        -13.318824768066406\n      ],\n      [\n        \"▁evacuate\",\n        -13.318825721740723\n      ],\n      [\n        \"▁Floyd\",\n        -13.318840026855469\n      ],\n      [\n        \"▁Disneyland\",\n        -13.318859100341797\n      ],\n      [\n        \"Cathy\",\n        -13.319069862365723\n      ],\n      [\n        \"▁Broken\",\n        -13.319278717041016\n      ],\n      [\n        \"cript\",\n        -13.319952011108398\n      ],\n      [\n        \"▁Gewähr\",\n        -13.320073127746582\n      ],\n      [\n        \"▁embarrassed\",\n        -13.320073127746582\n      ],\n      [\n        \"▁Leicht\",\n        -13.32007884979248\n      ],\n      [\n        \"▁témoign\",\n        -13.320379257202148\n      ],\n      [\n        \"▁viteze\",\n        -13.3206148147583\n      ],\n      [\n        \"▁hallmark\",\n        -13.320731163024902\n      ],\n      [\n        \"uploads\",\n        -13.32082462310791\n      ],\n      [\n        \"▁Submission\",\n        -13.320929527282715\n      ],\n      [\n        \"▁croissant\",\n        -13.321049690246582\n      ],\n      [\n        \"awning\",\n        -13.32105827331543\n      ],\n      [\n        \"detecting\",\n        -13.321198463439941\n      ],\n      [\n        \"▁Bahamas\",\n        -13.321322441101074\n      ],\n      [\n        \"▁Kathleen\",\n        -13.321325302124023\n      ],\n      [\n        \"▁latch\",\n        -13.321377754211426\n      ],\n      [\n        \"▁pronounce\",\n        -13.321380615234375\n      ],\n      [\n        \"▁choke\",\n        -13.321428298950195\n      ],\n      [\n        \"▁$50,000\",\n        -13.3215970993042\n      ],\n      [\n        \"▁historische\",\n        -13.321642875671387\n      ],\n      [\n        \"jugé\",\n        -13.321829795837402\n      ],\n      [\n        \"▁MasterCard\",\n        -13.321949005126953\n      ],\n      [\n        \"▁Horror\",\n        -13.321955680847168\n      ],\n      [\n        \"spoiled\",\n        -13.321958541870117\n      ],\n      [\n        \"▁apariți\",\n        -13.32202434539795\n      ],\n      [\n        \"geschaltet\",\n        -13.3225736618042\n      ],\n      [\n        \"▁Londra\",\n        -13.322578430175781\n      ],\n      [\n        \"viction\",\n        -13.322580337524414\n      ],\n      [\n        \"▁Disaster\",\n        -13.322593688964844\n      ],\n      [\n        \"▁desigur\",\n        -13.322601318359375\n      ],\n      [\n        \"▁substanț\",\n        -13.322601318359375\n      ],\n      [\n        \"▁compiler\",\n        -13.322613716125488\n      ],\n      [\n        \"▁vanzari\",\n        -13.32262897491455\n      ],\n      [\n        \"▁Simulation\",\n        -13.322669982910156\n      ],\n      [\n        \"Occasionally\",\n        -13.322842597961426\n      ],\n      [\n        \"Seite\",\n        -13.322884559631348\n      ],\n      [\n        \"Linked\",\n        -13.322938919067383\n      ],\n      [\n        \"Roll\",\n        -13.323015213012695\n      ],\n      [\n        \"▁trajet\",\n        -13.323244094848633\n      ],\n      [\n        \"Molecular\",\n        -13.323834419250488\n      ],\n      [\n        \"▁pragmatic\",\n        -13.323843002319336\n      ],\n      [\n        \"judecată\",\n        -13.323915481567383\n      ],\n      [\n        \"ров\",\n        -13.32400894165039\n      ],\n      [\n        \"serrurerie\",\n        -13.324024200439453\n      ],\n      [\n        \"▁reconstruct\",\n        -13.324129104614258\n      ],\n      [\n        \"▁heureuse\",\n        -13.324179649353027\n      ],\n      [\n        \"▁knight\",\n        -13.32422924041748\n      ],\n      [\n        \"knowingly\",\n        -13.324431419372559\n      ],\n      [\n        \"▁perspectiva\",\n        -13.324453353881836\n      ],\n      [\n        \"ordinary\",\n        -13.324604034423828\n      ],\n      [\n        \"▁chaudière\",\n        -13.324721336364746\n      ],\n      [\n        \"Neill\",\n        -13.324727058410645\n      ],\n      [\n        \"cellulose\",\n        -13.325080871582031\n      ],\n      [\n        \"▁Delicious\",\n        -13.325080871582031\n      ],\n      [\n        \"▁incearca\",\n        -13.325080871582031\n      ],\n      [\n        \"▁retrospective\",\n        -13.325080871582031\n      ],\n      [\n        \"▁mundane\",\n        -13.325081825256348\n      ],\n      [\n        \"▁definiert\",\n        -13.32508659362793\n      ],\n      [\n        \"▁cockpit\",\n        -13.325088500976562\n      ],\n      [\n        \"Aktionen\",\n        -13.325363159179688\n      ],\n      [\n        \"▁distanț\",\n        -13.325654029846191\n      ],\n      [\n        \"▁diplôme\",\n        -13.325708389282227\n      ],\n      [\n        \"prepaid\",\n        -13.325737953186035\n      ],\n      [\n        \"▁Tabellen\",\n        -13.325758934020996\n      ],\n      [\n        \"▁economie\",\n        -13.325770378112793\n      ],\n      [\n        \"December\",\n        -13.325826644897461\n      ],\n      [\n        \"Punkten\",\n        -13.32613754272461\n      ],\n      [\n        \"▁Punch\",\n        -13.32614517211914\n      ],\n      [\n        \"Martin\",\n        -13.326154708862305\n      ],\n      [\n        \"▁Espresso\",\n        -13.326314926147461\n      ],\n      [\n        \"▁ubiquitous\",\n        -13.326335906982422\n      ],\n      [\n        \"▁Mongolia\",\n        -13.326337814331055\n      ],\n      [\n        \"▁collabor\",\n        -13.326635360717773\n      ],\n      [\n        \"▁Vordergrund\",\n        -13.32696533203125\n      ],\n      [\n        \"cameră\",\n        -13.327091217041016\n      ],\n      [\n        \"represented\",\n        -13.327268600463867\n      ],\n      [\n        \"▁AUTO\",\n        -13.327446937561035\n      ],\n      [\n        \"▁Ofert\",\n        -13.327542304992676\n      ],\n      [\n        \"neig\",\n        -13.327593803405762\n      ],\n      [\n        \"▁Hazard\",\n        -13.327595710754395\n      ],\n      [\n        \"▁Constanta\",\n        -13.327596664428711\n      ],\n      [\n        \"▁tumour\",\n        -13.32759952545166\n      ],\n      [\n        \"▁Neighborhood\",\n        -13.327603340148926\n      ],\n      [\n        \"▁detaliat\",\n        -13.327619552612305\n      ],\n      [\n        \"▁extraordinaire\",\n        -13.327665328979492\n      ],\n      [\n        \"▁Therapeutic\",\n        -13.327686309814453\n      ],\n      [\n        \"predicting\",\n        -13.327693939208984\n      ],\n      [\n        \"▁institutii\",\n        -13.32776165008545\n      ],\n      [\n        \"ifizierung\",\n        -13.327797889709473\n      ],\n      [\n        \"wählt\",\n        -13.328207015991211\n      ],\n      [\n        \"▁remarquable\",\n        -13.32822322845459\n      ],\n      [\n        \"Invent\",\n        -13.328512191772461\n      ],\n      [\n        \"▁foloseșt\",\n        -13.328514099121094\n      ],\n      [\n        \"öfte\",\n        -13.328703880310059\n      ],\n      [\n        \"▁discreet\",\n        -13.328853607177734\n      ],\n      [\n        \"▁Flickr\",\n        -13.32885456085205\n      ],\n      [\n        \"▁trésor\",\n        -13.328856468200684\n      ],\n      [\n        \"▁steroids\",\n        -13.328872680664062\n      ],\n      [\n        \"▁personnalité\",\n        -13.328953742980957\n      ],\n      [\n        \"▁Krankenhaus\",\n        -13.32901668548584\n      ],\n      [\n        \"▁affordability\",\n        -13.329218864440918\n      ],\n      [\n        \"deuten\",\n        -13.329398155212402\n      ],\n      [\n        \"Detailed\",\n        -13.329412460327148\n      ],\n      [\n        \"Walk\",\n        -13.329444885253906\n      ],\n      [\n        \"▁parallèle\",\n        -13.329483032226562\n      ],\n      [\n        \"thèse\",\n        -13.329649925231934\n      ],\n      [\n        \"▁gefördert\",\n        -13.330117225646973\n      ],\n      [\n        \"Greeting\",\n        -13.33014965057373\n      ],\n      [\n        \"gelistet\",\n        -13.330172538757324\n      ],\n      [\n        \"▁chlorine\",\n        -13.330392837524414\n      ],\n      [\n        \"behält\",\n        -13.33039665222168\n      ],\n      [\n        \"emption\",\n        -13.330435752868652\n      ],\n      [\n        \"▁mobilité\",\n        -13.330601692199707\n      ],\n      [\n        \"▁randonnée\",\n        -13.330668449401855\n      ],\n      [\n        \"habitant\",\n        -13.330718040466309\n      ],\n      [\n        \"zilla\",\n        -13.331082344055176\n      ],\n      [\n        \"▁Lili\",\n        -13.331160545349121\n      ],\n      [\n        \"▁répét\",\n        -13.331341743469238\n      ],\n      [\n        \"trucât\",\n        -13.331376075744629\n      ],\n      [\n        \"▁Hospice\",\n        -13.331376075744629\n      ],\n      [\n        \"▁grassroots\",\n        -13.331377029418945\n      ],\n      [\n        \"▁affiché\",\n        -13.331393241882324\n      ],\n      [\n        \"pears\",\n        -13.331470489501953\n      ],\n      [\n        \"▁linistit\",\n        -13.331497192382812\n      ],\n      [\n        \"▁Patron\",\n        -13.331552505493164\n      ],\n      [\n        \"▁Stalin\",\n        -13.331626892089844\n      ],\n      [\n        \"▁închiri\",\n        -13.331751823425293\n      ],\n      [\n        \"▁Apostol\",\n        -13.332018852233887\n      ],\n      [\n        \"▁poudre\",\n        -13.332246780395508\n      ],\n      [\n        \"▁piscin\",\n        -13.332419395446777\n      ],\n      [\n        \"merlin\",\n        -13.33259391784668\n      ],\n      [\n        \"limited\",\n        -13.33260726928711\n      ],\n      [\n        \"▁métallique\",\n        -13.332639694213867\n      ],\n      [\n        \"gazebo\",\n        -13.33267879486084\n      ],\n      [\n        \"weilige\",\n        -13.332718849182129\n      ],\n      [\n        \"prosecutors\",\n        -13.33278751373291\n      ],\n      [\n        \"Expert\",\n        -13.33314323425293\n      ],\n      [\n        \"Assemblée\",\n        -13.333271980285645\n      ],\n      [\n        \"▁fauna\",\n        -13.333285331726074\n      ],\n      [\n        \"▁Turtle\",\n        -13.333353996276855\n      ],\n      [\n        \"▁Consortium\",\n        -13.333905220031738\n      ],\n      [\n        \"▁assemblies\",\n        -13.333905220031738\n      ],\n      [\n        \"▁trajectory\",\n        -13.333905220031738\n      ],\n      [\n        \"▁Vineyard\",\n        -13.333906173706055\n      ],\n      [\n        \"▁Mehrwert\",\n        -13.334037780761719\n      ],\n      [\n        \"▁sunflower\",\n        -13.334043502807617\n      ],\n      [\n        \"develop\",\n        -13.334060668945312\n      ],\n      [\n        \"▁heroic\",\n        -13.334100723266602\n      ],\n      [\n        \"▁riscuri\",\n        -13.334151268005371\n      ],\n      [\n        \"oeuf\",\n        -13.334300994873047\n      ],\n      [\n        \"influence\",\n        -13.334452629089355\n      ],\n      [\n        \"▁Voraussetzung\",\n        -13.334500312805176\n      ],\n      [\n        \"utoritatea\",\n        -13.334518432617188\n      ],\n      [\n        \"Produsul\",\n        -13.334654808044434\n      ],\n      [\n        \"▁gewährleistet\",\n        -13.335171699523926\n      ],\n      [\n        \"▁brûl\",\n        -13.335175514221191\n      ],\n      [\n        \"▁Column\",\n        -13.335184097290039\n      ],\n      [\n        \"▁trousers\",\n        -13.335209846496582\n      ],\n      [\n        \"▁posterior\",\n        -13.33521556854248\n      ],\n      [\n        \"glyph\",\n        -13.335251808166504\n      ],\n      [\n        \"▁Happen\",\n        -13.335280418395996\n      ],\n      [\n        \"▁créateur\",\n        -13.335667610168457\n      ],\n      [\n        \"▁apostle\",\n        -13.335898399353027\n      ],\n      [\n        \"▁padding\",\n        -13.335907936096191\n      ],\n      [\n        \"▁Digitalisierung\",\n        -13.335908889770508\n      ],\n      [\n        \"▁Laurie\",\n        -13.335915565490723\n      ],\n      [\n        \"▁Erwerb\",\n        -13.336065292358398\n      ],\n      [\n        \"▁bătrân\",\n        -13.336440086364746\n      ],\n      [\n        \"▁harmonious\",\n        -13.336441040039062\n      ],\n      [\n        \"▁ailments\",\n        -13.336456298828125\n      ],\n      [\n        \"▁Venue\",\n        -13.33650016784668\n      ],\n      [\n        \"▁Motorcycle\",\n        -13.336523056030273\n      ],\n      [\n        \"▁cortex\",\n        -13.336551666259766\n      ],\n      [\n        \"▁Sunrise\",\n        -13.336636543273926\n      ],\n      [\n        \"Software\",\n        -13.336775779724121\n      ],\n      [\n        \"▁advocat\",\n        -13.336934089660645\n      ],\n      [\n        \"essentiellement\",\n        -13.337422370910645\n      ],\n      [\n        \"•\",\n        -13.337494850158691\n      ],\n      [\n        \"părut\",\n        -13.337522506713867\n      ],\n      [\n        \"▁Suffolk\",\n        -13.337711334228516\n      ],\n      [\n        \"▁righteousness\",\n        -13.337711334228516\n      ],\n      [\n        \"▁Shirley\",\n        -13.337712287902832\n      ],\n      [\n        \"▁Famous\",\n        -13.337749481201172\n      ],\n      [\n        \"▁emulate\",\n        -13.337788581848145\n      ],\n      [\n        \"vermögen\",\n        -13.33788776397705\n      ],\n      [\n        \"generated\",\n        -13.337963104248047\n      ],\n      [\n        \"Ecole\",\n        -13.337977409362793\n      ],\n      [\n        \"▁managerial\",\n        -13.338086128234863\n      ],\n      [\n        \"believe\",\n        -13.338091850280762\n      ],\n      [\n        \"▁récupére\",\n        -13.338348388671875\n      ],\n      [\n        \"▁recens\",\n        -13.338531494140625\n      ],\n      [\n        \"▁Barrett\",\n        -13.338778495788574\n      ],\n      [\n        \"▁courageous\",\n        -13.338814735412598\n      ],\n      [\n        \"9.95\",\n        -13.338961601257324\n      ],\n      [\n        \"▁Odyssey\",\n        -13.338982582092285\n      ],\n      [\n        \"▁Violence\",\n        -13.338982582092285\n      ],\n      [\n        \"▁concasseur\",\n        -13.338982582092285\n      ],\n      [\n        \"▁evacuation\",\n        -13.338982582092285\n      ],\n      [\n        \"▁kontinuierlich\",\n        -13.338982582092285\n      ],\n      [\n        \"▁epidemi\",\n        -13.3389892578125\n      ],\n      [\n        \"▁disconnected\",\n        -13.339197158813477\n      ],\n      [\n        \"frucht\",\n        -13.339339256286621\n      ],\n      [\n        \"Trustees\",\n        -13.339348793029785\n      ],\n      [\n        \"▁Massiv\",\n        -13.339459419250488\n      ],\n      [\n        \"gebucht\",\n        -13.339473724365234\n      ],\n      [\n        \"stütze\",\n        -13.339526176452637\n      ],\n      [\n        \"▁febr\",\n        -13.339741706848145\n      ],\n      [\n        \"honoured\",\n        -13.339743614196777\n      ],\n      [\n        \"▁digitiz\",\n        -13.340079307556152\n      ],\n      [\n        \"Image\",\n        -13.34021282196045\n      ],\n      [\n        \"▁Brunswick\",\n        -13.34025764465332\n      ],\n      [\n        \"▁Therapist\",\n        -13.34026050567627\n      ],\n      [\n        \"accessoire\",\n        -13.340264320373535\n      ],\n      [\n        \"▁croqu\",\n        -13.340291023254395\n      ],\n      [\n        \"Pflanz\",\n        -13.34052848815918\n      ],\n      [\n        \"dragging\",\n        -13.340536117553711\n      ],\n      [\n        \"▁Facilit\",\n        -13.340750694274902\n      ],\n      [\n        \"soucis\",\n        -13.340765953063965\n      ],\n      [\n        \"Asadar\",\n        -13.34081745147705\n      ],\n      [\n        \"▁Thames\",\n        -13.341021537780762\n      ],\n      [\n        \"▁cariera\",\n        -13.341116905212402\n      ],\n      [\n        \"▁mercury\",\n        -13.341530799865723\n      ],\n      [\n        \"▁Blessed\",\n        -13.341533660888672\n      ],\n      [\n        \"▁Whitney\",\n        -13.341630935668945\n      ],\n      [\n        \"▁géant\",\n        -13.341926574707031\n      ],\n      [\n        \"▁coordonnée\",\n        -13.342217445373535\n      ],\n      [\n        \"oidal\",\n        -13.342623710632324\n      ],\n      [\n        \"Wohnungen\",\n        -13.342696189880371\n      ],\n      [\n        \"▁Spectrum\",\n        -13.34280776977539\n      ],\n      [\n        \"▁Avengers\",\n        -13.342808723449707\n      ],\n      [\n        \"▁Gloucester\",\n        -13.342808723449707\n      ],\n      [\n        \"▁nützlich\",\n        -13.342811584472656\n      ],\n      [\n        \"▁toothbrush\",\n        -13.342830657958984\n      ],\n      [\n        \"▁Vanessa\",\n        -13.342843055725098\n      ],\n      [\n        \"Saxon\",\n        -13.342947959899902\n      ],\n      [\n        \"▁comunități\",\n        -13.343165397644043\n      ],\n      [\n        \"reprezentanţi\",\n        -13.343175888061523\n      ],\n      [\n        \"▁întâlnire\",\n        -13.343225479125977\n      ],\n      [\n        \"delve\",\n        -13.343234062194824\n      ],\n      [\n        \"▁technologique\",\n        -13.343452453613281\n      ],\n      [\n        \"Describe\",\n        -13.343466758728027\n      ],\n      [\n        \"▁constient\",\n        -13.343501091003418\n      ],\n      [\n        \"gestalt\",\n        -13.343600273132324\n      ],\n      [\n        \"▁Tribune\",\n        -13.344090461730957\n      ],\n      [\n        \"▁fiberglass\",\n        -13.34412956237793\n      ],\n      [\n        \"verbindung\",\n        -13.344210624694824\n      ],\n      [\n        \"sacrificing\",\n        -13.344351768493652\n      ],\n      [\n        \"▁Pablo\",\n        -13.344470024108887\n      ],\n      [\n        \"▁adanc\",\n        -13.34525203704834\n      ],\n      [\n        \"omia\",\n        -13.345309257507324\n      ],\n      [\n        \"hâte\",\n        -13.345317840576172\n      ],\n      [\n        \"▁Sanctuary\",\n        -13.345366477966309\n      ],\n      [\n        \"▁accolade\",\n        -13.345368385314941\n      ],\n      [\n        \"▁Wurzel\",\n        -13.345398902893066\n      ],\n      [\n        \"▁spacing\",\n        -13.345433235168457\n      ],\n      [\n        \"▁bedeutend\",\n        -13.345481872558594\n      ],\n      [\n        \"▁biased\",\n        -13.345499992370605\n      ],\n      [\n        \"randomized\",\n        -13.345747947692871\n      ],\n      [\n        \"▁agenți\",\n        -13.345856666564941\n      ],\n      [\n        \"▁excepţi\",\n        -13.346012115478516\n      ],\n      [\n        \"▁fișier\",\n        -13.346028327941895\n      ],\n      [\n        \"▁fisier\",\n        -13.34664535522461\n      ],\n      [\n        \"irrespective\",\n        -13.346648216247559\n      ],\n      [\n        \"▁Gardner\",\n        -13.34665584564209\n      ],\n      [\n        \"▁aprecia\",\n        -13.346884727478027\n      ],\n      [\n        \"▁Klu\",\n        -13.347082138061523\n      ],\n      [\n        \"▁apropie\",\n        -13.347535133361816\n      ],\n      [\n        \"▁echival\",\n        -13.347784042358398\n      ],\n      [\n        \"tauchen\",\n        -13.347862243652344\n      ],\n      [\n        \"▁hauptsächlich\",\n        -13.347930908203125\n      ],\n      [\n        \"▁pollutants\",\n        -13.347930908203125\n      ],\n      [\n        \"▁mammals\",\n        -13.347931861877441\n      ],\n      [\n        \"▁Landwirtschaft\",\n        -13.347936630249023\n      ],\n      [\n        \"▁stăpân\",\n        -13.34793758392334\n      ],\n      [\n        \"▁Prüf\",\n        -13.347990989685059\n      ],\n      [\n        \"▁Motorsport\",\n        -13.34807300567627\n      ],\n      [\n        \"Leaving\",\n        -13.348352432250977\n      ],\n      [\n        \"schädigung\",\n        -13.348573684692383\n      ],\n      [\n        \"▁calendrier\",\n        -13.348573684692383\n      ],\n      [\n        \"plikation\",\n        -13.348655700683594\n      ],\n      [\n        \"▁DOE\",\n        -13.348655700683594\n      ],\n      [\n        \"ред\",\n        -13.348966598510742\n      ],\n      [\n        \"Jahr\",\n        -13.34913444519043\n      ],\n      [\n        \"▁entitlement\",\n        -13.34921646118164\n      ],\n      [\n        \"schuldig\",\n        -13.349217414855957\n      ],\n      [\n        \"▁Münster\",\n        -13.349218368530273\n      ],\n      [\n        \"pository\",\n        -13.349451065063477\n      ],\n      [\n        \"▁numero\",\n        -13.350220680236816\n      ],\n      [\n        \"▁entsprechen\",\n        -13.350383758544922\n      ],\n      [\n        \"▁astronaut\",\n        -13.350502967834473\n      ],\n      [\n        \"▁hexagon\",\n        -13.350502967834473\n      ],\n      [\n        \"▁DAMAGE\",\n        -13.350503921508789\n      ],\n      [\n        \"▁Quartz\",\n        -13.350504875183105\n      ],\n      [\n        \"▁rédaction\",\n        -13.350504875183105\n      ],\n      [\n        \"▁replenish\",\n        -13.350508689880371\n      ],\n      [\n        \"▁amoureux\",\n        -13.350523948669434\n      ],\n      [\n        \"▁opțiun\",\n        -13.350616455078125\n      ],\n      [\n        \"Custom\",\n        -13.350622177124023\n      ],\n      [\n        \"▁Telekom\",\n        -13.350639343261719\n      ],\n      [\n        \"▁RFID\",\n        -13.351163864135742\n      ],\n      [\n        \"▁Scorpio\",\n        -13.351264953613281\n      ],\n      [\n        \"▁thirst\",\n        -13.35152816772461\n      ],\n      [\n        \"▁Kosovo\",\n        -13.351791381835938\n      ],\n      [\n        \"▁precursor\",\n        -13.351794242858887\n      ],\n      [\n        \"▁sarbatori\",\n        -13.351810455322266\n      ],\n      [\n        \"▁Daisy\",\n        -13.351828575134277\n      ],\n      [\n        \"▁Dropbox\",\n        -13.351898193359375\n      ],\n      [\n        \"Smith\",\n        -13.351949691772461\n      ],\n      [\n        \"contabil\",\n        -13.352191925048828\n      ],\n      [\n        \"▁monnaie\",\n        -13.352437973022461\n      ],\n      [\n        \"capsul\",\n        -13.352577209472656\n      ],\n      [\n        \"treff\",\n        -13.352760314941406\n      ],\n      [\n        \"beauftragte\",\n        -13.352761268615723\n      ],\n      [\n        \"industrial\",\n        -13.353006362915039\n      ],\n      [\n        \"responsables\",\n        -13.353010177612305\n      ],\n      [\n        \"▁FIRST\",\n        -13.353080749511719\n      ],\n      [\n        \"▁crezut\",\n        -13.35308837890625\n      ],\n      [\n        \"▁reseller\",\n        -13.353107452392578\n      ],\n      [\n        \"▁direcți\",\n        -13.353154182434082\n      ],\n      [\n        \"mouvoir\",\n        -13.353294372558594\n      ],\n      [\n        \"▁Invite\",\n        -13.353431701660156\n      ],\n      [\n        \"▁constructii\",\n        -13.353440284729004\n      ],\n      [\n        \"▁oublié\",\n        -13.353577613830566\n      ],\n      [\n        \"găseșt\",\n        -13.353687286376953\n      ],\n      [\n        \"▁végét\",\n        -13.353755950927734\n      ],\n      [\n        \"idine\",\n        -13.35385799407959\n      ],\n      [\n        \"▁Ajout\",\n        -13.353951454162598\n      ],\n      [\n        \"▁Shelf\",\n        -13.354195594787598\n      ],\n      [\n        \"HALL\",\n        -13.35422420501709\n      ],\n      [\n        \"▁nostalgia\",\n        -13.35437297821045\n      ],\n      [\n        \"▁ottoman\",\n        -13.35437297821045\n      ],\n      [\n        \"▁ambalaj\",\n        -13.354398727416992\n      ],\n      [\n        \"municipiul\",\n        -13.354405403137207\n      ],\n      [\n        \"NOVA\",\n        -13.354500770568848\n      ],\n      [\n        \"▁disregard\",\n        -13.354997634887695\n      ],\n      [\n        \"▁bijuterii\",\n        -13.355018615722656\n      ],\n      [\n        \"▁sorgfältig\",\n        -13.355018615722656\n      ],\n      [\n        \"vraient\",\n        -13.355307579040527\n      ],\n      [\n        \"▁backsplash\",\n        -13.355669975280762\n      ],\n      [\n        \"▁nuisance\",\n        -13.355679512023926\n      ],\n      [\n        \"▁Territory\",\n        -13.35568618774414\n      ],\n      [\n        \"▁surprins\",\n        -13.355693817138672\n      ],\n      [\n        \"enchanting\",\n        -13.35571002960205\n      ],\n      [\n        \"trospecti\",\n        -13.355847358703613\n      ],\n      [\n        \"▁dvd\",\n        -13.356199264526367\n      ],\n      [\n        \"Totally\",\n        -13.356329917907715\n      ],\n      [\n        \"▁Edelstahl\",\n        -13.35696029663086\n      ],\n      [\n        \"▁sequencing\",\n        -13.356961250305176\n      ],\n      [\n        \"▁Circus\",\n        -13.35696792602539\n      ],\n      [\n        \"▁ashamed\",\n        -13.35696792602539\n      ],\n      [\n        \"▁horrific\",\n        -13.357028007507324\n      ],\n      [\n        \"▁taiat\",\n        -13.357033729553223\n      ],\n      [\n        \"▁Angehörige\",\n        -13.357125282287598\n      ],\n      [\n        \"Michel\",\n        -13.357256889343262\n      ],\n      [\n        \"▁communion\",\n        -13.357298851013184\n      ],\n      [\n        \"▁psiho\",\n        -13.357378959655762\n      ],\n      [\n        \"losigkeit\",\n        -13.357405662536621\n      ],\n      [\n        \"dipping\",\n        -13.357512474060059\n      ],\n      [\n        \"▁profesională\",\n        -13.357608795166016\n      ],\n      [\n        \"Indiferent\",\n        -13.357609748840332\n      ],\n      [\n        \"▁crestin\",\n        -13.357723236083984\n      ],\n      [\n        \"wholesome\",\n        -13.357796669006348\n      ],\n      [\n        \"▁Welfare\",\n        -13.358257293701172\n      ],\n      [\n        \"▁plentiful\",\n        -13.358257293701172\n      ],\n      [\n        \"▁Triumph\",\n        -13.358258247375488\n      ],\n      [\n        \"▁fascination\",\n        -13.358260154724121\n      ],\n      [\n        \"▁vicious\",\n        -13.358291625976562\n      ],\n      [\n        \"▁Höchst\",\n        -13.358294486999512\n      ],\n      [\n        \"▁Dunkel\",\n        -13.358386039733887\n      ],\n      [\n        \"▁harass\",\n        -13.358406066894531\n      ],\n      [\n        \"ambogia\",\n        -13.358475685119629\n      ],\n      [\n        \"▁synonymous\",\n        -13.358598709106445\n      ],\n      [\n        \"bottom\",\n        -13.35879898071289\n      ],\n      [\n        \"▁bénévole\",\n        -13.358906745910645\n      ],\n      [\n        \"▁suprafaț\",\n        -13.358906745910645\n      ],\n      [\n        \"▁umplut\",\n        -13.358997344970703\n      ],\n      [\n        \"▁Teddy\",\n        -13.359162330627441\n      ],\n      [\n        \"breathable\",\n        -13.359292984008789\n      ],\n      [\n        \"▁Toshiba\",\n        -13.3595552444458\n      ],\n      [\n        \"▁seismic\",\n        -13.359569549560547\n      ],\n      [\n        \"▁dringend\",\n        -13.359583854675293\n      ],\n      [\n        \"▁cultură\",\n        -13.359585762023926\n      ],\n      [\n        \"▁Waffen\",\n        -13.359665870666504\n      ],\n      [\n        \"▁Bubble\",\n        -13.359702110290527\n      ],\n      [\n        \"▁Brigade\",\n        -13.359759330749512\n      ],\n      [\n        \"▁Blatt\",\n        -13.36012077331543\n      ],\n      [\n        \"▁scénario\",\n        -13.36020565032959\n      ],\n      [\n        \"allah\",\n        -13.360396385192871\n      ],\n      [\n        \"▁superintendent\",\n        -13.360855102539062\n      ],\n      [\n        \"pflanzen\",\n        -13.360856056213379\n      ],\n      [\n        \"▁kurzfristig\",\n        -13.360856056213379\n      ],\n      [\n        \"▁raspberry\",\n        -13.360876083374023\n      ],\n      [\n        \"▁Evident\",\n        -13.360904693603516\n      ],\n      [\n        \"▁inutile\",\n        -13.361076354980469\n      ],\n      [\n        \"prouvé\",\n        -13.361104011535645\n      ],\n      [\n        \"▁obtien\",\n        -13.36141300201416\n      ],\n      [\n        \"▁Matthias\",\n        -13.361506462097168\n      ],\n      [\n        \"▁déclench\",\n        -13.361506462097168\n      ],\n      [\n        \"Situationen\",\n        -13.361529350280762\n      ],\n      [\n        \"▁Disclaimer\",\n        -13.362156867980957\n      ],\n      [\n        \"▁loneliness\",\n        -13.362156867980957\n      ],\n      [\n        \"▁Gothic\",\n        -13.362164497375488\n      ],\n      [\n        \"▁humility\",\n        -13.362165451049805\n      ],\n      [\n        \"▁machiaj\",\n        -13.362175941467285\n      ],\n      [\n        \"▁Sophia\",\n        -13.362178802490234\n      ],\n      [\n        \"▁Forecast\",\n        -13.362265586853027\n      ],\n      [\n        \"IBLE\",\n        -13.362456321716309\n      ],\n      [\n        \"ivism\",\n        -13.362480163574219\n      ],\n      [\n        \"israel\",\n        -13.36278247833252\n      ],\n      [\n        \"▁kümmern\",\n        -13.362809181213379\n      ],\n      [\n        \"▁verbreitet\",\n        -13.362825393676758\n      ],\n      [\n        \"▁capacitor\",\n        -13.362832069396973\n      ],\n      [\n        \"deprived\",\n        -13.3634614944458\n      ],\n      [\n        \"unbiased\",\n        -13.3634614944458\n      ],\n      [\n        \"▁Dominique\",\n        -13.3634614944458\n      ],\n      [\n        \"▁Bamboo\",\n        -13.363462448120117\n      ],\n      [\n        \"▁Heinrich\",\n        -13.363465309143066\n      ],\n      [\n        \"individualized\",\n        -13.363550186157227\n      ],\n      [\n        \"▁ansprechen\",\n        -13.363776206970215\n      ],\n      [\n        \"ordinaire\",\n        -13.363801002502441\n      ],\n      [\n        \"▁Ucraina\",\n        -13.364112854003906\n      ],\n      [\n        \"▁militare\",\n        -13.364115715026855\n      ],\n      [\n        \"massif\",\n        -13.364352226257324\n      ],\n      [\n        \"▁emisiuni\",\n        -13.364501953125\n      ],\n      [\n        \"maladies\",\n        -13.364622116088867\n      ],\n      [\n        \"▁pneumonia\",\n        -13.364765167236328\n      ],\n      [\n        \"▁graffiti\",\n        -13.364767074584961\n      ],\n      [\n        \"▁Determine\",\n        -13.3648099899292\n      ],\n      [\n        \"▁Northwestern\",\n        -13.364893913269043\n      ],\n      [\n        \"▁grasimi\",\n        -13.364897727966309\n      ],\n      [\n        \"▁lebendig\",\n        -13.364920616149902\n      ],\n      [\n        \"▁cifre\",\n        -13.364946365356445\n      ],\n      [\n        \"▁accelerator\",\n        -13.36533260345459\n      ],\n      [\n        \"▁nib\",\n        -13.365374565124512\n      ],\n      [\n        \"▁Jocuri\",\n        -13.365400314331055\n      ],\n      [\n        \"▁außergewöhnlich\",\n        -13.365402221679688\n      ],\n      [\n        \"▁orchid\",\n        -13.36542797088623\n      ],\n      [\n        \"zugreifen\",\n        -13.365530967712402\n      ],\n      [\n        \"utilisent\",\n        -13.365662574768066\n      ],\n      [\n        \"▁nineteenth\",\n        -13.366071701049805\n      ],\n      [\n        \"improvisation\",\n        -13.366072654724121\n      ],\n      [\n        \"▁Disclosure\",\n        -13.366072654724121\n      ],\n      [\n        \"▁Überraschung\",\n        -13.366072654724121\n      ],\n      [\n        \"▁Casual\",\n        -13.366093635559082\n      ],\n      [\n        \"▁Witness\",\n        -13.366093635559082\n      ],\n      [\n        \"teacher\",\n        -13.366125106811523\n      ],\n      [\n        \"Printed\",\n        -13.366129875183105\n      ],\n      [\n        \"▁prețuri\",\n        -13.366189956665039\n      ],\n      [\n        \"rues\",\n        -13.366216659545898\n      ],\n      [\n        \"▁cerinte\",\n        -13.366338729858398\n      ],\n      [\n        \"rouvent\",\n        -13.36662483215332\n      ],\n      [\n        \"assembling\",\n        -13.36673355102539\n      ],\n      [\n        \"▁atenție\",\n        -13.366769790649414\n      ],\n      [\n        \"▁amintiri\",\n        -13.366782188415527\n      ],\n      [\n        \"▁sustinut\",\n        -13.366805076599121\n      ],\n      [\n        \"Digital\",\n        -13.367257118225098\n      ],\n      [\n        \"▁Deborah\",\n        -13.36738109588623\n      ],\n      [\n        \"gesichts\",\n        -13.367382049560547\n      ],\n      [\n        \"▁temperament\",\n        -13.367440223693848\n      ],\n      [\n        \"▁competency\",\n        -13.367447853088379\n      ],\n      [\n        \"▁dwarf\",\n        -13.367515563964844\n      ],\n      [\n        \"▁dureaz\",\n        -13.367539405822754\n      ],\n      [\n        \"habilit\",\n        -13.367764472961426\n      ],\n      [\n        \"leaned\",\n        -13.3679838180542\n      ],\n      [\n        \"▁illicit\",\n        -13.368348121643066\n      ],\n      [\n        \"Availability\",\n        -13.368691444396973\n      ],\n      [\n        \"▁Brașov\",\n        -13.368691444396973\n      ],\n      [\n        \"▁Pyramid\",\n        -13.368691444396973\n      ],\n      [\n        \"▁achievable\",\n        -13.368691444396973\n      ],\n      [\n        \"▁judiciaire\",\n        -13.368691444396973\n      ],\n      [\n        \"Übrigen\",\n        -13.368693351745605\n      ],\n      [\n        \"▁activism\",\n        -13.368795394897461\n      ],\n      [\n        \"▁boycott\",\n        -13.368839263916016\n      ],\n      [\n        \"Desigur\",\n        -13.368927001953125\n      ],\n      [\n        \"klingt\",\n        -13.369264602661133\n      ],\n      [\n        \"▁Leidenschaft\",\n        -13.369346618652344\n      ],\n      [\n        \"▁Richtig\",\n        -13.369701385498047\n      ],\n      [\n        \"▁Airbnb\",\n        -13.370002746582031\n      ],\n      [\n        \"▁învățământ\",\n        -13.370002746582031\n      ],\n      [\n        \"Kampagne\",\n        -13.370004653930664\n      ],\n      [\n        \"▁thumbnail\",\n        -13.370014190673828\n      ],\n      [\n        \"Bestimmungen\",\n        -13.370016098022461\n      ],\n      [\n        \"▁vollkommen\",\n        -13.37001895904541\n      ],\n      [\n        \"▁biomass\",\n        -13.370027542114258\n      ],\n      [\n        \"▁escalate\",\n        -13.370030403137207\n      ],\n      [\n        \"wächst\",\n        -13.370085716247559\n      ],\n      [\n        \"▁scăpa\",\n        -13.370098114013672\n      ],\n      [\n        \"▁résult\",\n        -13.37014389038086\n      ],\n      [\n        \"▁shrine\",\n        -13.370217323303223\n      ],\n      [\n        \"maximizing\",\n        -13.370370864868164\n      ],\n      [\n        \"avoue\",\n        -13.370492935180664\n      ],\n      [\n        \"dirigeants\",\n        -13.370665550231934\n      ],\n      [\n        \"▁cerveau\",\n        -13.370672225952148\n      ],\n      [\n        \"▁proast\",\n        -13.370955467224121\n      ],\n      [\n        \"▁contaminants\",\n        -13.371325492858887\n      ],\n      [\n        \"effectue\",\n        -13.37151050567627\n      ],\n      [\n        \"ediție\",\n        -13.371539115905762\n      ],\n      [\n        \"monetiz\",\n        -13.371772766113281\n      ],\n      [\n        \"▁deplasare\",\n        -13.371976852416992\n      ],\n      [\n        \"▁Sfant\",\n        -13.37209415435791\n      ],\n      [\n        \"ROOM\",\n        -13.372113227844238\n      ],\n      [\n        \"bushes\",\n        -13.372151374816895\n      ],\n      [\n        \"mairie\",\n        -13.37251091003418\n      ],\n      [\n        \"obligate\",\n        -13.372528076171875\n      ],\n      [\n        \"▁tug\",\n        -13.372573852539062\n      ],\n      [\n        \"▁Collector\",\n        -13.372632026672363\n      ],\n      [\n        \"▁annoyed\",\n        -13.372633934020996\n      ],\n      [\n        \"▁aerobic\",\n        -13.372654914855957\n      ],\n      [\n        \"▁integer\",\n        -13.372830390930176\n      ],\n      [\n        \"▁Upload\",\n        -13.373249053955078\n      ],\n      [\n        \"▁impartial\",\n        -13.37346076965332\n      ],\n      [\n        \"▁discuţi\",\n        -13.373623847961426\n      ],\n      [\n        \"gastrointestinal\",\n        -13.37394905090332\n      ],\n      [\n        \"▁chiropractor\",\n        -13.37394905090332\n      ],\n      [\n        \"▁treptat\",\n        -13.373950004577637\n      ],\n      [\n        \"▁fishermen\",\n        -13.37395191192627\n      ],\n      [\n        \"levitra\",\n        -13.3739595413208\n      ],\n      [\n        \"Gruppe\",\n        -13.373964309692383\n      ],\n      [\n        \"▁Apostle\",\n        -13.373970985412598\n      ],\n      [\n        \"▁conseillé\",\n        -13.374068260192871\n      ],\n      [\n        \"Isra\",\n        -13.37421703338623\n      ],\n      [\n        \"▁Persönlichkeit\",\n        -13.374431610107422\n      ],\n      [\n        \"▁cantitati\",\n        -13.374459266662598\n      ],\n      [\n        \"▁incredibil\",\n        -13.374614715576172\n      ],\n      [\n        \"▁Berater\",\n        -13.374800682067871\n      ],\n      [\n        \"▁propuneri\",\n        -13.374835014343262\n      ],\n      [\n        \"MEDIA\",\n        -13.375236511230469\n      ],\n      [\n        \"▁opaque\",\n        -13.37526798248291\n      ],\n      [\n        \"▁Nielsen\",\n        -13.375269889831543\n      ],\n      [\n        \"▁cartofi\",\n        -13.375277519226074\n      ],\n      [\n        \"▁Whale\",\n        -13.37533950805664\n      ],\n      [\n        \"erzeugen\",\n        -13.375890731811523\n      ],\n      [\n        \"▁knack\",\n        -13.375931739807129\n      ],\n      [\n        \"Kandidat\",\n        -13.375936508178711\n      ],\n      [\n        \"▁tradițional\",\n        -13.375937461853027\n      ],\n      [\n        \"zählige\",\n        -13.375983238220215\n      ],\n      [\n        \"▁Petroleum\",\n        -13.376588821411133\n      ],\n      [\n        \"▁deficiencies\",\n        -13.376588821411133\n      ],\n      [\n        \"▁persecution\",\n        -13.376588821411133\n      ],\n      [\n        \"▁zgomot\",\n        -13.376588821411133\n      ],\n      [\n        \"▁reiterate\",\n        -13.376592636108398\n      ],\n      [\n        \"▁Slice\",\n        -13.376670837402344\n      ],\n      [\n        \"▁envy\",\n        -13.376704216003418\n      ],\n      [\n        \"▁stomac\",\n        -13.376851081848145\n      ],\n      [\n        \"Donnell\",\n        -13.376914978027344\n      ],\n      [\n        \"▁primordial\",\n        -13.377249717712402\n      ],\n      [\n        \"reclining\",\n        -13.377274513244629\n      ],\n      [\n        \"PASS\",\n        -13.377861976623535\n      ],\n      [\n        \"▁Resistance\",\n        -13.377910614013672\n      ],\n      [\n        \"▁Widerruf\",\n        -13.377911567687988\n      ],\n      [\n        \"▁vodka\",\n        -13.377911567687988\n      ],\n      [\n        \"▁yolk\",\n        -13.377912521362305\n      ],\n      [\n        \"ollywood\",\n        -13.377915382385254\n      ],\n      [\n        \"▁truffle\",\n        -13.377933502197266\n      ],\n      [\n        \"▁Sänger\",\n        -13.377955436706543\n      ],\n      [\n        \"▁Kenntnis\",\n        -13.377968788146973\n      ],\n      [\n        \"▁Kiel\",\n        -13.37803840637207\n      ],\n      [\n        \"▁Mutual\",\n        -13.378044128417969\n      ],\n      [\n        \"▁saliva\",\n        -13.37816047668457\n      ],\n      [\n        \"▁renforce\",\n        -13.378411293029785\n      ],\n      [\n        \"▁mulch\",\n        -13.378680229187012\n      ],\n      [\n        \"▁reviste\",\n        -13.378875732421875\n      ],\n      [\n        \"lucrarea\",\n        -13.378978729248047\n      ],\n      [\n        \"▁multiply\",\n        -13.379130363464355\n      ],\n      [\n        \"▁marshmallow\",\n        -13.379234313964844\n      ],\n      [\n        \"▁Durchschnitt\",\n        -13.379288673400879\n      ],\n      [\n        \"▁Authorities\",\n        -13.379426002502441\n      ],\n      [\n        \"▁greed\",\n        -13.379521369934082\n      ],\n      [\n        \"Visiting\",\n        -13.379638671875\n      ],\n      [\n        \"Carlton\",\n        -13.379727363586426\n      ],\n      [\n        \"▁splend\",\n        -13.37975025177002\n      ],\n      [\n        \"▁Erkenntnisse\",\n        -13.379898071289062\n      ],\n      [\n        \"▁Russie\",\n        -13.379916191101074\n      ],\n      [\n        \"Agence\",\n        -13.38007926940918\n      ],\n      [\n        \"schickt\",\n        -13.380288124084473\n      ],\n      [\n        \"##\",\n        -13.3804931640625\n      ],\n      [\n        \"▁Erweiterung\",\n        -13.380560874938965\n      ],\n      [\n        \"▁Franchise\",\n        -13.380560874938965\n      ],\n      [\n        \"Dedicated\",\n        -13.380563735961914\n      ],\n      [\n        \"▁Wisdom\",\n        -13.380569458007812\n      ],\n      [\n        \"▁gagnant\",\n        -13.380592346191406\n      ],\n      [\n        \"planetary\",\n        -13.380598068237305\n      ],\n      [\n        \"▁affinity\",\n        -13.380619049072266\n      ],\n      [\n        \"▁préférence\",\n        -13.380739212036133\n      ],\n      [\n        \"▁intellect\",\n        -13.380810737609863\n      ],\n      [\n        \"▁Translat\",\n        -13.380830764770508\n      ],\n      [\n        \"▁Sultan\",\n        -13.38089370727539\n      ],\n      [\n        \"▁birouri\",\n        -13.38101577758789\n      ],\n      [\n        \"▁Academie\",\n        -13.381224632263184\n      ],\n      [\n        \"▁consequential\",\n        -13.38138484954834\n      ],\n      [\n        \"▁festgestellt\",\n        -13.381402015686035\n      ],\n      [\n        \"▁Chanel\",\n        -13.381444931030273\n      ],\n      [\n        \"▁soutenu\",\n        -13.381875038146973\n      ],\n      [\n        \"▁Montessori\",\n        -13.381888389587402\n      ],\n      [\n        \"▁equitable\",\n        -13.381892204284668\n      ],\n      [\n        \"▁théorie\",\n        -13.381893157958984\n      ],\n      [\n        \"▁primavara\",\n        -13.3818941116333\n      ],\n      [\n        \"▁Daughter\",\n        -13.38189697265625\n      ],\n      [\n        \"▁Dixon\",\n        -13.381898880004883\n      ],\n      [\n        \"▁unravel\",\n        -13.38190746307373\n      ],\n      [\n        \"Olimp\",\n        -13.381915092468262\n      ],\n      [\n        \"▁disturbed\",\n        -13.381916999816895\n      ],\n      [\n        \"▁novelty\",\n        -13.382004737854004\n      ],\n      [\n        \"synchronous\",\n        -13.382113456726074\n      ],\n      [\n        \"relevant\",\n        -13.382166862487793\n      ],\n      [\n        \"bourgeois\",\n        -13.38251781463623\n      ],\n      [\n        \"▁Parfum\",\n        -13.38255500793457\n      ],\n      [\n        \"▁Polonia\",\n        -13.382563591003418\n      ],\n      [\n        \"▁monoton\",\n        -13.382781028747559\n      ],\n      [\n        \"tratare\",\n        -13.38302230834961\n      ],\n      [\n        \"dumping\",\n        -13.38318157196045\n      ],\n      [\n        \"▁Bibliothek\",\n        -13.383217811584473\n      ],\n      [\n        \"▁Saskatchewan\",\n        -13.383217811584473\n      ],\n      [\n        \"▁experiential\",\n        -13.383217811584473\n      ],\n      [\n        \"▁verursacht\",\n        -13.383217811584473\n      ],\n      [\n        \"intègre\",\n        -13.383218765258789\n      ],\n      [\n        \"▁Intermediate\",\n        -13.383275032043457\n      ],\n      [\n        \"Israel\",\n        -13.383476257324219\n      ],\n      [\n        \"lucreaza\",\n        -13.383495330810547\n      ],\n      [\n        \"▁quantify\",\n        -13.383862495422363\n      ],\n      [\n        \"▁zahăr\",\n        -13.383882522583008\n      ],\n      [\n        \"▁încadr\",\n        -13.383902549743652\n      ],\n      [\n        \"Personalized\",\n        -13.383946418762207\n      ],\n      [\n        \"▁Chronic\",\n        -13.384309768676758\n      ],\n      [\n        \"hôpital\",\n        -13.384549140930176\n      ],\n      [\n        \"▁diskutiert\",\n        -13.384549140930176\n      ],\n      [\n        \"electrique\",\n        -13.3848876953125\n      ],\n      [\n        \"ethos\",\n        -13.384978294372559\n      ],\n      [\n        \"Nase\",\n        -13.385059356689453\n      ],\n      [\n        \"atmosphère\",\n        -13.385214805603027\n      ],\n      [\n        \"▁ungefähr\",\n        -13.385215759277344\n      ],\n      [\n        \"évaluer\",\n        -13.385251998901367\n      ],\n      [\n        \"▁scuz\",\n        -13.385321617126465\n      ],\n      [\n        \"haltige\",\n        -13.38533878326416\n      ],\n      [\n        \"January\",\n        -13.38557243347168\n      ],\n      [\n        \"▁Sharma\",\n        -13.385603904724121\n      ],\n      [\n        \"▁seizures\",\n        -13.385881423950195\n      ],\n      [\n        \"▁zucchini\",\n        -13.385881423950195\n      ],\n      [\n        \"▁Stadi\",\n        -13.385885238647461\n      ],\n      [\n        \"▁eccentric\",\n        -13.385885238647461\n      ],\n      [\n        \"▁offensichtlich\",\n        -13.385909080505371\n      ],\n      [\n        \"▁Irvine\",\n        -13.385920524597168\n      ],\n      [\n        \"cuprinse\",\n        -13.38601303100586\n      ],\n      [\n        \"▁Arbitr\",\n        -13.386157035827637\n      ],\n      [\n        \"Buenos\",\n        -13.386183738708496\n      ],\n      [\n        \"▁Shelter\",\n        -13.386210441589355\n      ],\n      [\n        \"CEPT\",\n        -13.386454582214355\n      ],\n      [\n        \"ouvri\",\n        -13.386455535888672\n      ],\n      [\n        \"acryl\",\n        -13.386539459228516\n      ],\n      [\n        \"▁Gourmet\",\n        -13.38654899597168\n      ],\n      [\n        \"scented\",\n        -13.386595726013184\n      ],\n      [\n        \"doubling\",\n        -13.38659954071045\n      ],\n      [\n        \"▁rafina\",\n        -13.386608123779297\n      ],\n      [\n        \"▁Vereinbarung\",\n        -13.38721752166748\n      ],\n      [\n        \"▁Dashboard\",\n        -13.387218475341797\n      ],\n      [\n        \"▁Sandwich\",\n        -13.387218475341797\n      ],\n      [\n        \"▁Riviera\",\n        -13.387226104736328\n      ],\n      [\n        \"échec\",\n        -13.387237548828125\n      ],\n      [\n        \"Giro\",\n        -13.387253761291504\n      ],\n      [\n        \"▁oasis\",\n        -13.38725757598877\n      ],\n      [\n        \"▁apology\",\n        -13.3872709274292\n      ],\n      [\n        \"▁YEAR\",\n        -13.387272834777832\n      ],\n      [\n        \"▁realtor\",\n        -13.387504577636719\n      ],\n      [\n        \"acheteur\",\n        -13.38754653930664\n      ],\n      [\n        \"▁larva\",\n        -13.387613296508789\n      ],\n      [\n        \"▁invitați\",\n        -13.388097763061523\n      ],\n      [\n        \"exhibiting\",\n        -13.38830852508545\n      ],\n      [\n        \"modernen\",\n        -13.388331413269043\n      ],\n      [\n        \"▁Collaboration\",\n        -13.38855266571045\n      ],\n      [\n        \"▁dezvălui\",\n        -13.38855266571045\n      ],\n      [\n        \"▁kiosk\",\n        -13.38855266571045\n      ],\n      [\n        \"▁Bermuda\",\n        -13.388553619384766\n      ],\n      [\n        \"Copiii\",\n        -13.388564109802246\n      ],\n      [\n        \"▁goddess\",\n        -13.388581275939941\n      ],\n      [\n        \"uplifting\",\n        -13.388609886169434\n      ],\n      [\n        \"▁simultan\",\n        -13.388808250427246\n      ],\n      [\n        \"▁episod\",\n        -13.388884544372559\n      ],\n      [\n        \"▁Braşov\",\n        -13.38922119140625\n      ],\n      [\n        \"cunoscută\",\n        -13.389634132385254\n      ],\n      [\n        \"▁Cherokee\",\n        -13.389890670776367\n      ],\n      [\n        \"▁Kazakhstan\",\n        -13.389890670776367\n      ],\n      [\n        \"▁Lauderdale\",\n        -13.389890670776367\n      ],\n      [\n        \"▁închisoare\",\n        -13.389898300170898\n      ],\n      [\n        \"▁Christchurch\",\n        -13.389934539794922\n      ],\n      [\n        \"▁influenţ\",\n        -13.389982223510742\n      ],\n      [\n        \"▁Meghan\",\n        -13.390019416809082\n      ],\n      [\n        \"▁Dienstleistung\",\n        -13.390557289123535\n      ],\n      [\n        \"▁cladiri\",\n        -13.390564918518066\n      ],\n      [\n        \"▁evrei\",\n        -13.391148567199707\n      ],\n      [\n        \"▁oatmeal\",\n        -13.391230583190918\n      ],\n      [\n        \"▁chronique\",\n        -13.3912353515625\n      ],\n      [\n        \"▁associée\",\n        -13.391264915466309\n      ],\n      [\n        \"▁Goose\",\n        -13.391283988952637\n      ],\n      [\n        \"gänz\",\n        -13.391855239868164\n      ],\n      [\n        \"▁Blätter\",\n        -13.391901969909668\n      ],\n      [\n        \"▁jurnalist\",\n        -13.392212867736816\n      ],\n      [\n        \"cedat\",\n        -13.392263412475586\n      ],\n      [\n        \"nommée\",\n        -13.392315864562988\n      ],\n      [\n        \"écrivain\",\n        -13.392572402954102\n      ],\n      [\n        \"▁epoxy\",\n        -13.392577171325684\n      ],\n      [\n        \"▁verlangt\",\n        -13.392590522766113\n      ],\n      [\n        \"Störung\",\n        -13.392708778381348\n      ],\n      [\n        \"▁Doyle\",\n        -13.392729759216309\n      ],\n      [\n        \"▁Philharmoni\",\n        -13.392844200134277\n      ],\n      [\n        \"▁déclare\",\n        -13.393044471740723\n      ],\n      [\n        \"effort\",\n        -13.393045425415039\n      ],\n      [\n        \"ström\",\n        -13.393118858337402\n      ],\n      [\n        \"▁cunoaşte\",\n        -13.393244743347168\n      ],\n      [\n        \"▁gigantic\",\n        -13.3932466506958\n      ],\n      [\n        \"któ\",\n        -13.393378257751465\n      ],\n      [\n        \"▁ilustr\",\n        -13.393529891967773\n      ],\n      [\n        \"▁frec\",\n        -13.39371109008789\n      ],\n      [\n        \"▁Syracuse\",\n        -13.393916130065918\n      ],\n      [\n        \"▁Einwilligung\",\n        -13.393917083740234\n      ],\n      [\n        \"▁miraculous\",\n        -13.393917083740234\n      ],\n      [\n        \"▁ökologisch\",\n        -13.393917083740234\n      ],\n      [\n        \"▁Simmons\",\n        -13.393922805786133\n      ],\n      [\n        \"▁albastru\",\n        -13.393926620483398\n      ],\n      [\n        \"besser\",\n        -13.393962860107422\n      ],\n      [\n        \"▁interioare\",\n        -13.394006729125977\n      ],\n      [\n        \"▁Trocken\",\n        -13.394068717956543\n      ],\n      [\n        \"niveau\",\n        -13.39406967163086\n      ],\n      [\n        \"▁Torah\",\n        -13.394122123718262\n      ],\n      [\n        \"▁beobachten\",\n        -13.3945894241333\n      ],\n      [\n        \"▁behandeln\",\n        -13.394637107849121\n      ],\n      [\n        \"staffed\",\n        -13.394742965698242\n      ],\n      [\n        \"hütte\",\n        -13.394824028015137\n      ],\n      [\n        \"Central\",\n        -13.394939422607422\n      ],\n      [\n        \"▁Freiburg\",\n        -13.395198822021484\n      ],\n      [\n        \"▁Netanyahu\",\n        -13.395261764526367\n      ],\n      [\n        \"▁Lexington\",\n        -13.395302772521973\n      ],\n      [\n        \"▁insotit\",\n        -13.395492553710938\n      ],\n      [\n        \"▁depasi\",\n        -13.39560604095459\n      ],\n      [\n        \"sewage\",\n        -13.395853996276855\n      ],\n      [\n        \"erkrankung\",\n        -13.395951271057129\n      ],\n      [\n        \"▁părţi\",\n        -13.396234512329102\n      ],\n      [\n        \"▁Nixon\",\n        -13.39661693572998\n      ],\n      [\n        \"Byron\",\n        -13.396905899047852\n      ],\n      [\n        \"▁varietat\",\n        -13.39724063873291\n      ],\n      [\n        \"▁Bildschirm\",\n        -13.397299766540527\n      ],\n      [\n        \"▁accompli\",\n        -13.397424697875977\n      ],\n      [\n        \"affirmed\",\n        -13.397525787353516\n      ],\n      [\n        \"▁phyto\",\n        -13.397533416748047\n      ],\n      [\n        \"sectiune\",\n        -13.397592544555664\n      ],\n      [\n        \"abteilung\",\n        -13.397932052612305\n      ],\n      [\n        \"▁voastre\",\n        -13.397957801818848\n      ],\n      [\n        \"GitHub\",\n        -13.397958755493164\n      ],\n      [\n        \"▁Jorge\",\n        -13.39796257019043\n      ],\n      [\n        \"ACTION\",\n        -13.397972106933594\n      ],\n      [\n        \"voastra\",\n        -13.397984504699707\n      ],\n      [\n        \"▁Peanut\",\n        -13.397987365722656\n      ],\n      [\n        \"▁bilingual\",\n        -13.398011207580566\n      ],\n      [\n        \"▁nourriture\",\n        -13.39803695678711\n      ],\n      [\n        \"▁Asphalt\",\n        -13.398640632629395\n      ],\n      [\n        \"emballage\",\n        -13.399310111999512\n      ],\n      [\n        \"▁sanitation\",\n        -13.399310111999512\n      ],\n      [\n        \"▁Dessert\",\n        -13.399313926696777\n      ],\n      [\n        \"intitulé\",\n        -13.399322509765625\n      ],\n      [\n        \"▁acţiune\",\n        -13.399374008178711\n      ],\n      [\n        \"▁Übersetzung\",\n        -13.399402618408203\n      ],\n      [\n        \"destinate\",\n        -13.39941692352295\n      ],\n      [\n        \"▁Goddess\",\n        -13.399504661560059\n      ],\n      [\n        \"poziție\",\n        -13.399576187133789\n      ],\n      [\n        \"denumirea\",\n        -13.400002479553223\n      ],\n      [\n        \"cantitatea\",\n        -13.40002727508545\n      ],\n      [\n        \"▁Stereo\",\n        -13.400223731994629\n      ],\n      [\n        \"object\",\n        -13.400373458862305\n      ],\n      [\n        \"▁décè\",\n        -13.40058708190918\n      ],\n      [\n        \"▁Handeln\",\n        -13.400665283203125\n      ],\n      [\n        \"▁ambience\",\n        -13.400697708129883\n      ],\n      [\n        \"▁Lindsay\",\n        -13.4006986618042\n      ],\n      [\n        \"▁tensiune\",\n        -13.400781631469727\n      ],\n      [\n        \"▁thrift\",\n        -13.400788307189941\n      ],\n      [\n        \"▁Optimiz\",\n        -13.400843620300293\n      ],\n      [\n        \"▁beantworten\",\n        -13.401338577270508\n      ],\n      [\n        \"▁magistrat\",\n        -13.401342391967773\n      ],\n      [\n        \"évidence\",\n        -13.402016639709473\n      ],\n      [\n        \"▁Eclipse\",\n        -13.402016639709473\n      ],\n      [\n        \"▁Ribbon\",\n        -13.402016639709473\n      ],\n      [\n        \"▁condensation\",\n        -13.402016639709473\n      ],\n      [\n        \"▁innocence\",\n        -13.402018547058105\n      ],\n      [\n        \"▁mascara\",\n        -13.402023315429688\n      ],\n      [\n        \"▁seventeen\",\n        -13.402290344238281\n      ],\n      [\n        \"▁compétent\",\n        -13.402694702148438\n      ],\n      [\n        \"bewertet\",\n        -13.402717590332031\n      ],\n      [\n        \"▁Muzic\",\n        -13.40285587310791\n      ],\n      [\n        \"complexities\",\n        -13.402928352355957\n      ],\n      [\n        \"ddington\",\n        -13.403324127197266\n      ],\n      [\n        \"Entwickler\",\n        -13.403372764587402\n      ],\n      [\n        \"masonry\",\n        -13.4033784866333\n      ],\n      [\n        \"Führer\",\n        -13.403386116027832\n      ],\n      [\n        \"▁awakening\",\n        -13.403388977050781\n      ],\n      [\n        \"▁lovitur\",\n        -13.403806686401367\n      ],\n      [\n        \"gebrochen\",\n        -13.404068946838379\n      ],\n      [\n        \"indexed\",\n        -13.404478073120117\n      ],\n      [\n        \"campania\",\n        -13.404515266418457\n      ],\n      [\n        \"▁Fountain\",\n        -13.404730796813965\n      ],\n      [\n        \"▁Joomla\",\n        -13.404730796813965\n      ],\n      [\n        \"▁Superintendent\",\n        -13.404730796813965\n      ],\n      [\n        \"▁Dahl\",\n        -13.404742240905762\n      ],\n      [\n        \"▁Benefici\",\n        -13.404863357543945\n      ],\n      [\n        \"optimiser\",\n        -13.404919624328613\n      ],\n      [\n        \"bursting\",\n        -13.405380249023438\n      ],\n      [\n        \"diplom\",\n        -13.405427932739258\n      ],\n      [\n        \"microsoft\",\n        -13.405621528625488\n      ],\n      [\n        \"▁correlate\",\n        -13.405776977539062\n      ],\n      [\n        \"▁arhitectura\",\n        -13.405848503112793\n      ],\n      [\n        \"▁lunette\",\n        -13.40611743927002\n      ],\n      [\n        \"Statistical\",\n        -13.406147003173828\n      ],\n      [\n        \"▁iarnă\",\n        -13.406201362609863\n      ],\n      [\n        \"▁importanț\",\n        -13.406932830810547\n      ],\n      [\n        \"sistence\",\n        -13.407366752624512\n      ],\n      [\n        \"associated\",\n        -13.407402992248535\n      ],\n      [\n        \"Occident\",\n        -13.407452583312988\n      ],\n      [\n        \"▁Heidelberg\",\n        -13.407452583312988\n      ],\n      [\n        \"▁acquaintance\",\n        -13.407452583312988\n      ],\n      [\n        \"Introducing\",\n        -13.407453536987305\n      ],\n      [\n        \"▁ripple\",\n        -13.407480239868164\n      ],\n      [\n        \"▁Childhood\",\n        -13.407563209533691\n      ],\n      [\n        \"drywall\",\n        -13.407577514648438\n      ],\n      [\n        \"Vreau\",\n        -13.40771770477295\n      ],\n      [\n        \"▁compétence\",\n        -13.407967567443848\n      ],\n      [\n        \"▁asteapta\",\n        -13.408135414123535\n      ],\n      [\n        \"▁duhovnic\",\n        -13.408135414123535\n      ],\n      [\n        \"▁învăţământ\",\n        -13.408141136169434\n      ],\n      [\n        \"encompassing\",\n        -13.40829849243164\n      ],\n      [\n        \"1997)\",\n        -13.408370018005371\n      ],\n      [\n        \"▁atractiv\",\n        -13.408515930175781\n      ],\n      [\n        \"Majoritatea\",\n        -13.408775329589844\n      ],\n      [\n        \"▁bungalow\",\n        -13.40881633758545\n      ],\n      [\n        \"▁Introduce\",\n        -13.408817291259766\n      ],\n      [\n        \"▁culprit\",\n        -13.408817291259766\n      ],\n      [\n        \"▁malheureusement\",\n        -13.408817291259766\n      ],\n      [\n        \"▁voudrai\",\n        -13.408817291259766\n      ],\n      [\n        \"Europäische\",\n        -13.408825874328613\n      ],\n      [\n        \"wunsch\",\n        -13.408880233764648\n      ],\n      [\n        \"▁înțeles\",\n        -13.408892631530762\n      ],\n      [\n        \"▁infestation\",\n        -13.40889835357666\n      ],\n      [\n        \"Bringing\",\n        -13.409186363220215\n      ],\n      [\n        \"▁Mehrheit\",\n        -13.409229278564453\n      ],\n      [\n        \"ски\",\n        -13.409456253051758\n      ],\n      [\n        \"▁procéder\",\n        -13.409499168395996\n      ],\n      [\n        \"grupului\",\n        -13.409504890441895\n      ],\n      [\n        \"▁dispoziti\",\n        -13.40964412689209\n      ],\n      [\n        \"▁snug\",\n        -13.409950256347656\n      ],\n      [\n        \"▁Afrika\",\n        -13.41018295288086\n      ],\n      [\n        \"▁Madagascar\",\n        -13.41018295288086\n      ],\n      [\n        \"Părinte\",\n        -13.410195350646973\n      ],\n      [\n        \"▁Clayton\",\n        -13.410223960876465\n      ],\n      [\n        \"▁antagonist\",\n        -13.410239219665527\n      ],\n      [\n        \"termeni\",\n        -13.410250663757324\n      ],\n      [\n        \"▁Literary\",\n        -13.410391807556152\n      ],\n      [\n        \"▁Babylon\",\n        -13.410452842712402\n      ],\n      [\n        \"▁überprüfen\",\n        -13.410865783691406\n      ],\n      [\n        \"▁duminica\",\n        -13.410879135131836\n      ],\n      [\n        \"farbig\",\n        -13.410970687866211\n      ],\n      [\n        \"nennt\",\n        -13.411064147949219\n      ],\n      [\n        \"annual\",\n        -13.411487579345703\n      ],\n      [\n        \"▁Qualcomm\",\n        -13.41154956817627\n      ],\n      [\n        \"▁Slovakia\",\n        -13.41154956817627\n      ],\n      [\n        \"▁plictis\",\n        -13.411552429199219\n      ],\n      [\n        \"▁prairie\",\n        -13.411554336547852\n      ],\n      [\n        \"▁Schatten\",\n        -13.411622047424316\n      ],\n      [\n        \"▁compléter\",\n        -13.41223430633545\n      ],\n      [\n        \"inauguration\",\n        -13.412376403808594\n      ],\n      [\n        \"▁apărare\",\n        -13.412407875061035\n      ],\n      [\n        \"▁întăr\",\n        -13.412412643432617\n      ],\n      [\n        \"▁pronunciation\",\n        -13.412919044494629\n      ],\n      [\n        \"▁bewährt\",\n        -13.412919998168945\n      ],\n      [\n        \"▁Viertel\",\n        -13.413084983825684\n      ],\n      [\n        \"▁Heidi\",\n        -13.413252830505371\n      ],\n      [\n        \"▁Gummi\",\n        -13.413507461547852\n      ],\n      [\n        \"▁veggie\",\n        -13.413552284240723\n      ],\n      [\n        \"▁monsieur\",\n        -13.413604736328125\n      ],\n      [\n        \"éveil\",\n        -13.413630485534668\n      ],\n      [\n        \"shipments\",\n        -13.413928985595703\n      ],\n      [\n        \"▁Medikamente\",\n        -13.414290428161621\n      ],\n      [\n        \"▁Johannesburg\",\n        -13.414314270019531\n      ],\n      [\n        \"▁ermittelt\",\n        -13.414321899414062\n      ],\n      [\n        \"▁bataille\",\n        -13.414440155029297\n      ],\n      [\n        \"extrem\",\n        -13.414609909057617\n      ],\n      [\n        \"▁1:2\",\n        -13.414671897888184\n      ],\n      [\n        \"Array\",\n        -13.414725303649902\n      ],\n      [\n        \"▁portail\",\n        -13.414857864379883\n      ],\n      [\n        \"▁găzdui\",\n        -13.414977073669434\n      ],\n      [\n        \"▁Calcium\",\n        -13.41497802734375\n      ],\n      [\n        \"▁Correction\",\n        -13.415104866027832\n      ],\n      [\n        \"bureaux\",\n        -13.41528034210205\n      ],\n      [\n        \"bestselling\",\n        -13.415338516235352\n      ],\n      [\n        \"Übungen\",\n        -13.415420532226562\n      ],\n      [\n        \"paramètres\",\n        -13.415633201599121\n      ],\n      [\n        \"▁Provincial\",\n        -13.415663719177246\n      ],\n      [\n        \"▁outrageous\",\n        -13.415680885314941\n      ],\n      [\n        \"▁Giveaway\",\n        -13.415775299072266\n      ],\n      [\n        \"▁LGBTQ\",\n        -13.41589641571045\n      ],\n      [\n        \"geklärt\",\n        -13.416854858398438\n      ],\n      [\n        \"▁Karlsruhe\",\n        -13.417038917541504\n      ],\n      [\n        \"▁esențial\",\n        -13.417038917541504\n      ],\n      [\n        \"avancée\",\n        -13.41703987121582\n      ],\n      [\n        \"hesitant\",\n        -13.417040824890137\n      ],\n      [\n        \"enlarged\",\n        -13.417069435119629\n      ],\n      [\n        \"▁inherit\",\n        -13.417121887207031\n      ],\n      [\n        \"Food\",\n        -13.4171724319458\n      ],\n      [\n        \"bucuria\",\n        -13.417181015014648\n      ],\n      [\n        \"▁BTW\",\n        -13.417400360107422\n      ],\n      [\n        \"associe\",\n        -13.417579650878906\n      ],\n      [\n        \"▁Möchte\",\n        -13.417742729187012\n      ],\n      [\n        \"demokrat\",\n        -13.417789459228516\n      ],\n      [\n        \"Turcia\",\n        -13.417964935302734\n      ],\n      [\n        \"forged\",\n        -13.418370246887207\n      ],\n      [\n        \"▁Zhao\",\n        -13.418442726135254\n      ],\n      [\n        \"▁cherries\",\n        -13.418556213378906\n      ],\n      [\n        \"▁evangelical\",\n        -13.418631553649902\n      ],\n      [\n        \"▁jüng\",\n        -13.418792724609375\n      ],\n      [\n        \"spans\",\n        -13.41880989074707\n      ],\n      [\n        \"▁străluc\",\n        -13.41888427734375\n      ],\n      [\n        \"▁geschie\",\n        -13.41893196105957\n      ],\n      [\n        \"▁Tattoo\",\n        -13.419112205505371\n      ],\n      [\n        \"sanitary\",\n        -13.419114112854004\n      ],\n      [\n        \"▁biopsy\",\n        -13.419353485107422\n      ],\n      [\n        \"▁imprumut\",\n        -13.419795036315918\n      ],\n      [\n        \"▁unreasonable\",\n        -13.419795036315918\n      ],\n      [\n        \"Funktion\",\n        -13.419800758361816\n      ],\n      [\n        \"▁prohibition\",\n        -13.419904708862305\n      ],\n      [\n        \"▁Prezent\",\n        -13.419939041137695\n      ],\n      [\n        \"boosted\",\n        -13.419967651367188\n      ],\n      [\n        \"▁chalet\",\n        -13.420382499694824\n      ],\n      [\n        \"▁tanar\",\n        -13.420450210571289\n      ],\n      [\n        \"Faktoren\",\n        -13.420489311218262\n      ],\n      [\n        \"▁Mozilla\",\n        -13.420550346374512\n      ],\n      [\n        \"▁Lambert\",\n        -13.420760154724121\n      ],\n      [\n        \"▁Cruci\",\n        -13.420927047729492\n      ],\n      [\n        \"▁Flugzeug\",\n        -13.421198844909668\n      ],\n      [\n        \"reassure\",\n        -13.421205520629883\n      ],\n      [\n        \"envisioned\",\n        -13.421542167663574\n      ],\n      [\n        \"Traditionally\",\n        -13.421773910522461\n      ],\n      [\n        \"▁parametri\",\n        -13.42185115814209\n      ],\n      [\n        \"▁unicorn\",\n        -13.421891212463379\n      ],\n      [\n        \"▁adéquat\",\n        -13.421894073486328\n      ],\n      [\n        \"▁Colonial\",\n        -13.421915054321289\n      ],\n      [\n        \"▁Kwa\",\n        -13.422097206115723\n      ],\n      [\n        \"▁SERV\",\n        -13.422333717346191\n      ],\n      [\n        \"tourism\",\n        -13.422627449035645\n      ],\n      [\n        \"▁Kiev\",\n        -13.422974586486816\n      ],\n      [\n        \"heightened\",\n        -13.42309284210205\n      ],\n      [\n        \"circulating\",\n        -13.423099517822266\n      ],\n      [\n        \"▁Kreditkarte\",\n        -13.42310619354248\n      ],\n      [\n        \"gedruckt\",\n        -13.423110008239746\n      ],\n      [\n        \"▁Depend\",\n        -13.423120498657227\n      ],\n      [\n        \"Style\",\n        -13.423196792602539\n      ],\n      [\n        \"▁Rettungs\",\n        -13.42325496673584\n      ],\n      [\n        \"wrongful\",\n        -13.423418998718262\n      ],\n      [\n        \"▁devour\",\n        -13.423453330993652\n      ],\n      [\n        \"▁manevr\",\n        -13.423582077026367\n      ],\n      [\n        \"carora\",\n        -13.423628807067871\n      ],\n      [\n        \"erfolgreichen\",\n        -13.423723220825195\n      ],\n      [\n        \"überwiegend\",\n        -13.423942565917969\n      ],\n      [\n        \"▁Sauvignon\",\n        -13.423942565917969\n      ],\n      [\n        \"händler\",\n        -13.423944473266602\n      ],\n      [\n        \"▁annotation\",\n        -13.424009323120117\n      ],\n      [\n        \"▁expans\",\n        -13.424020767211914\n      ],\n      [\n        \"▁recital\",\n        -13.424080848693848\n      ],\n      [\n        \"inhabited\",\n        -13.424367904663086\n      ],\n      [\n        \"OnePlus\",\n        -13.424549102783203\n      ],\n      [\n        \"Gästen\",\n        -13.424588203430176\n      ],\n      [\n        \"beliebig\",\n        -13.424613952636719\n      ],\n      [\n        \"▁Anonymous\",\n        -13.424635887145996\n      ],\n      [\n        \"▁Ansprechpartner\",\n        -13.424635887145996\n      ],\n      [\n        \"▁tamb\",\n        -13.42464542388916\n      ],\n      [\n        \"estimating\",\n        -13.424670219421387\n      ],\n      [\n        \"frequent\",\n        -13.424769401550293\n      ],\n      [\n        \"▁disciplin\",\n        -13.425241470336914\n      ],\n      [\n        \"▁plombier\",\n        -13.425329208374023\n      ],\n      [\n        \"▁teoretic\",\n        -13.42533016204834\n      ],\n      [\n        \"greift\",\n        -13.425339698791504\n      ],\n      [\n        \"▁Einschränkung\",\n        -13.42537784576416\n      ],\n      [\n        \"obscur\",\n        -13.426115989685059\n      ],\n      [\n        \"architecte\",\n        -13.426233291625977\n      ],\n      [\n        \"▁détour\",\n        -13.42647647857666\n      ],\n      [\n        \"▁spaghetti\",\n        -13.426717758178711\n      ],\n      [\n        \"croft\",\n        -13.42693042755127\n      ],\n      [\n        \"▁Grammar\",\n        -13.426953315734863\n      ],\n      [\n        \"▁investitii\",\n        -13.427062034606934\n      ],\n      [\n        \"▁glorif\",\n        -13.427067756652832\n      ],\n      [\n        \"architekt\",\n        -13.427412033081055\n      ],\n      [\n        \"Oricum\",\n        -13.427451133728027\n      ],\n      [\n        \"▁bruise\",\n        -13.427692413330078\n      ],\n      [\n        \"▁McCarthy\",\n        -13.428107261657715\n      ],\n      [\n        \"▁Uruguay\",\n        -13.428107261657715\n      ],\n      [\n        \"Produsele\",\n        -13.428109169006348\n      ],\n      [\n        \"▁Comparison\",\n        -13.42811107635498\n      ],\n      [\n        \"▁fondamental\",\n        -13.42811107635498\n      ],\n      [\n        \"▁stradă\",\n        -13.428115844726562\n      ],\n      [\n        \"▁Countries\",\n        -13.428131103515625\n      ],\n      [\n        \"▁guéri\",\n        -13.42825698852539\n      ],\n      [\n        \"▁bâti\",\n        -13.428339004516602\n      ],\n      [\n        \"▁blunt\",\n        -13.428515434265137\n      ],\n      [\n        \"▁Sistem\",\n        -13.428645133972168\n      ],\n      [\n        \"▁Betroffenen\",\n        -13.428803443908691\n      ],\n      [\n        \"efectuare\",\n        -13.428823471069336\n      ],\n      [\n        \"▁scharf\",\n        -13.428899765014648\n      ],\n      [\n        \"naps\",\n        -13.429057121276855\n      ],\n      [\n        \"▁plaid\",\n        -13.429163932800293\n      ],\n      [\n        \"▁investiții\",\n        -13.429367065429688\n      ],\n      [\n        \"evenimentele\",\n        -13.42948055267334\n      ],\n      [\n        \"▁Phuket\",\n        -13.429499626159668\n      ],\n      [\n        \"▁testosterone\",\n        -13.429499626159668\n      ],\n      [\n        \"▁scaffold\",\n        -13.429500579833984\n      ],\n      [\n        \"▁rasch\",\n        -13.430022239685059\n      ],\n      [\n        \"▁adânc\",\n        -13.430076599121094\n      ],\n      [\n        \"atteinte\",\n        -13.430228233337402\n      ],\n      [\n        \"▁educație\",\n        -13.430320739746094\n      ],\n      [\n        \"▁leopard\",\n        -13.430893898010254\n      ],\n      [\n        \"▁superioare\",\n        -13.430893898010254\n      ],\n      [\n        \"▁téléchargement\",\n        -13.430893898010254\n      ],\n      [\n        \"▁Weapon\",\n        -13.431103706359863\n      ],\n      [\n        \"favourable\",\n        -13.431336402893066\n      ],\n      [\n        \"nourishing\",\n        -13.43143367767334\n      ],\n      [\n        \"▁verfolgt\",\n        -13.43160629272461\n      ],\n      [\n        \"▁tablou\",\n        -13.431633949279785\n      ],\n      [\n        \"Algérie\",\n        -13.431657791137695\n      ],\n      [\n        \"Islam\",\n        -13.431700706481934\n      ],\n      [\n        \"faser\",\n        -13.431825637817383\n      ],\n      [\n        \"rhythm\",\n        -13.432214736938477\n      ],\n      [\n        \"▁Anthropolog\",\n        -13.432291030883789\n      ],\n      [\n        \"▁clôtur\",\n        -13.432291030883789\n      ],\n      [\n        \"spüren\",\n        -13.432291984558105\n      ],\n      [\n        \"▁Architectural\",\n        -13.432294845581055\n      ],\n      [\n        \"▁imaginary\",\n        -13.432368278503418\n      ],\n      [\n        \"cône\",\n        -13.432456016540527\n      ],\n      [\n        \"▁snuggl\",\n        -13.432744026184082\n      ],\n      [\n        \"disadvantaged\",\n        -13.432745933532715\n      ],\n      [\n        \"radically\",\n        -13.4329195022583\n      ],\n      [\n        \"Première\",\n        -13.433011054992676\n      ],\n      [\n        \"▁combinaison\",\n        -13.433027267456055\n      ],\n      [\n        \"▁Algeria\",\n        -13.43303108215332\n      ],\n      [\n        \"▁Wände\",\n        -13.43317985534668\n      ],\n      [\n        \"aesthetically\",\n        -13.43336009979248\n      ],\n      [\n        \"▁McKe\",\n        -13.433368682861328\n      ],\n      [\n        \"interroge\",\n        -13.433473587036133\n      ],\n      [\n        \"exclusive\",\n        -13.433475494384766\n      ],\n      [\n        \"▁Thomson\",\n        -13.433688163757324\n      ],\n      [\n        \"▁Gujarat\",\n        -13.43368911743164\n      ],\n      [\n        \"irgendwo\",\n        -13.433690071105957\n      ],\n      [\n        \"Severin\",\n        -13.433767318725586\n      ],\n      [\n        \"▁imitation\",\n        -13.433926582336426\n      ],\n      [\n        \"constructed\",\n        -13.434194564819336\n      ],\n      [\n        \"▁Montpellier\",\n        -13.434388160705566\n      ],\n      [\n        \"cedent\",\n        -13.434539794921875\n      ],\n      [\n        \"accelerating\",\n        -13.434563636779785\n      ],\n      [\n        \"dommages\",\n        -13.4346284866333\n      ],\n      [\n        \"lideri\",\n        -13.434730529785156\n      ],\n      [\n        \"▁Millennium\",\n        -13.435089111328125\n      ],\n      [\n        \"▁imprisonment\",\n        -13.435089111328125\n      ],\n      [\n        \"machining\",\n        -13.435111999511719\n      ],\n      [\n        \"▁anxiet\",\n        -13.43521499633789\n      ],\n      [\n        \"Contains\",\n        -13.435298919677734\n      ],\n      [\n        \"pleade\",\n        -13.435563087463379\n      ],\n      [\n        \"DOWN\",\n        -13.43564510345459\n      ],\n      [\n        \"geschehen\",\n        -13.435797691345215\n      ],\n      [\n        \"restaurant\",\n        -13.435811996459961\n      ],\n      [\n        \"Totusi\",\n        -13.435839653015137\n      ],\n      [\n        \"amintesc\",\n        -13.436158180236816\n      ],\n      [\n        \"▁Crisp\",\n        -13.436233520507812\n      ],\n      [\n        \"aduse\",\n        -13.436278343200684\n      ],\n      [\n        \"▁imposé\",\n        -13.436351776123047\n      ],\n      [\n        \"Jubiläum\",\n        -13.436490058898926\n      ],\n      [\n        \"▁Plaintiff\",\n        -13.436491012573242\n      ],\n      [\n        \"▁authoritative\",\n        -13.436491966247559\n      ],\n      [\n        \"▁rendition\",\n        -13.436633110046387\n      ],\n      [\n        \"Royce\",\n        -13.436707496643066\n      ],\n      [\n        \"1996)\",\n        -13.436724662780762\n      ],\n      [\n        \"Asociația\",\n        -13.437192916870117\n      ],\n      [\n        \"▁Gluten\",\n        -13.437264442443848\n      ],\n      [\n        \"feature\",\n        -13.43741226196289\n      ],\n      [\n        \"Behavioral\",\n        -13.437454223632812\n      ],\n      [\n        \"tearing\",\n        -13.437763214111328\n      ],\n      [\n        \"▁Entfernung\",\n        -13.437894821166992\n      ],\n      [\n        \"▁Responsibility\",\n        -13.437894821166992\n      ],\n      [\n        \"▁negligent\",\n        -13.437894821166992\n      ],\n      [\n        \"▁syllabus\",\n        -13.437894821166992\n      ],\n      [\n        \"▁Cycling\",\n        -13.437895774841309\n      ],\n      [\n        \"generell\",\n        -13.438114166259766\n      ],\n      [\n        \"customised\",\n        -13.438392639160156\n      ],\n      [\n        \"Management\",\n        -13.43850326538086\n      ],\n      [\n        \"▁timid\",\n        -13.438518524169922\n      ],\n      [\n        \"Tagged\",\n        -13.438730239868164\n      ],\n      [\n        \"▁susţinut\",\n        -13.438809394836426\n      ],\n      [\n        \"anchored\",\n        -13.43892765045166\n      ],\n      [\n        \"alternating\",\n        -13.439055442810059\n      ],\n      [\n        \"▁obligatoriu\",\n        -13.439300537109375\n      ],\n      [\n        \"▁reinstate\",\n        -13.439456939697266\n      ],\n      [\n        \"Können\",\n        -13.43946361541748\n      ],\n      [\n        \"▁Paol\",\n        -13.439596176147461\n      ],\n      [\n        \"öhr\",\n        -13.439603805541992\n      ],\n      [\n        \"▁Asociati\",\n        -13.439876556396484\n      ],\n      [\n        \"▁commenc\",\n        -13.440285682678223\n      ],\n      [\n        \"reinigt\",\n        -13.440293312072754\n      ],\n      [\n        \"commended\",\n        -13.440350532531738\n      ],\n      [\n        \"▁Proceed\",\n        -13.440675735473633\n      ],\n      [\n        \"beutel\",\n        -13.440702438354492\n      ],\n      [\n        \"▁Experimental\",\n        -13.44070816040039\n      ],\n      [\n        \"▁constellation\",\n        -13.44070816040039\n      ],\n      [\n        \"▁gepflegt\",\n        -13.44070816040039\n      ],\n      [\n        \"▁Ergänzung\",\n        -13.440709114074707\n      ],\n      [\n        \"Judith\",\n        -13.440713882446289\n      ],\n      [\n        \"▁Quartet\",\n        -13.440720558166504\n      ],\n      [\n        \"complemented\",\n        -13.440742492675781\n      ],\n      [\n        \"ausbildung\",\n        -13.440750122070312\n      ],\n      [\n        \"▁uncertainties\",\n        -13.44077205657959\n      ],\n      [\n        \"▁humiliat\",\n        -13.440914154052734\n      ],\n      [\n        \"luta\",\n        -13.441121101379395\n      ],\n      [\n        \"▁complexion\",\n        -13.441482543945312\n      ],\n      [\n        \"Serviciul\",\n        -13.441612243652344\n      ],\n      [\n        \"▁Toast\",\n        -13.441722869873047\n      ],\n      [\n        \"ummies\",\n        -13.442425727844238\n      ],\n      [\n        \"▁irit\",\n        -13.442463874816895\n      ],\n      [\n        \"producing\",\n        -13.442585945129395\n      ],\n      [\n        \"amenajare\",\n        -13.442825317382812\n      ],\n      [\n        \"▁béton\",\n        -13.442828178405762\n      ],\n      [\n        \"▁serpent\",\n        -13.442851066589355\n      ],\n      [\n        \"▁vizită\",\n        -13.442996978759766\n      ],\n      [\n        \"▁Beamte\",\n        -13.443017959594727\n      ],\n      [\n        \"▁Füße\",\n        -13.443166732788086\n      ],\n      [\n        \"▁Norwich\",\n        -13.443531036376953\n      ],\n      [\n        \"▁acronym\",\n        -13.443531036376953\n      ],\n      [\n        \"▁eradicate\",\n        -13.443531036376953\n      ],\n      [\n        \"▁solidarité\",\n        -13.44353199005127\n      ],\n      [\n        \"▁eggplant\",\n        -13.443582534790039\n      ],\n      [\n        \"▁sailors\",\n        -13.443619728088379\n      ],\n      [\n        \"waschen\",\n        -13.444538116455078\n      ],\n      [\n        \"Editura\",\n        -13.444757461547852\n      ],\n      [\n        \"▁erwerben\",\n        -13.444944381713867\n      ],\n      [\n        \"▁unconventional\",\n        -13.444944381713867\n      ],\n      [\n        \"▁boulder\",\n        -13.444948196411133\n      ],\n      [\n        \"Diplom\",\n        -13.445013046264648\n      ],\n      [\n        \"influx\",\n        -13.446162223815918\n      ],\n      [\n        \"▁Twelve\",\n        -13.446361541748047\n      ],\n      [\n        \"▁Sexual\",\n        -13.44636344909668\n      ],\n      [\n        \"numite\",\n        -13.446369171142578\n      ],\n      [\n        \"▁kontaktieren\",\n        -13.446370124816895\n      ],\n      [\n        \"▁strâns\",\n        -13.44637680053711\n      ],\n      [\n        \"▁précisément\",\n        -13.446382522583008\n      ],\n      [\n        \"empfindlich\",\n        -13.446405410766602\n      ],\n      [\n        \"▁divulg\",\n        -13.446490287780762\n      ],\n      [\n        \"▁delicat\",\n        -13.446539878845215\n      ],\n      [\n        \"compete\",\n        -13.446542739868164\n      ],\n      [\n        \"▁implique\",\n        -13.446616172790527\n      ],\n      [\n        \"implantation\",\n        -13.44672966003418\n      ],\n      [\n        \"frères\",\n        -13.447328567504883\n      ],\n      [\n        \"shedding\",\n        -13.44758415222168\n      ],\n      [\n        \"découvrez\",\n        -13.447657585144043\n      ],\n      [\n        \"rith\",\n        -13.447735786437988\n      ],\n      [\n        \"▁réglementation\",\n        -13.447778701782227\n      ],\n      [\n        \"▁transistor\",\n        -13.447785377502441\n      ],\n      [\n        \"inflated\",\n        -13.447792053222656\n      ],\n      [\n        \"▁Bluff\",\n        -13.447887420654297\n      ],\n      [\n        \"▁Aquarium\",\n        -13.448526382446289\n      ],\n      [\n        \"▁mananc\",\n        -13.448638916015625\n      ],\n      [\n        \"▁disinfect\",\n        -13.448700904846191\n      ],\n      [\n        \"tuft\",\n        -13.448740005493164\n      ],\n      [\n        \"Public\",\n        -13.449081420898438\n      ],\n      [\n        \"conceivabl\",\n        -13.449197769165039\n      ],\n      [\n        \"▁Cadillac\",\n        -13.449197769165039\n      ],\n      [\n        \"Assassin\",\n        -13.449199676513672\n      ],\n      [\n        \"issuance\",\n        -13.449252128601074\n      ],\n      [\n        \"▁Achtung\",\n        -13.449287414550781\n      ],\n      [\n        \"▁grundlegend\",\n        -13.449909210205078\n      ],\n      [\n        \"▁Băsescu\",\n        -13.449910163879395\n      ],\n      [\n        \"schaden\",\n        -13.45014476776123\n      ],\n      [\n        \"coached\",\n        -13.450409889221191\n      ],\n      [\n        \"▁betreffend\",\n        -13.45046329498291\n      ],\n      [\n        \"ergebnis\",\n        -13.450541496276855\n      ],\n      [\n        \"▁Lieutenant\",\n        -13.4506196975708\n      ],\n      [\n        \"WORLD\",\n        -13.450620651245117\n      ],\n      [\n        \"▁Moroccan\",\n        -13.450620651245117\n      ],\n      [\n        \"▁Butterfly\",\n        -13.450621604919434\n      ],\n      [\n        \"would\",\n        -13.450737953186035\n      ],\n      [\n        \"▁Metropol\",\n        -13.451025009155273\n      ],\n      [\n        \"lexic\",\n        -13.451192855834961\n      ],\n      [\n        \"comunitatea\",\n        -13.45124340057373\n      ],\n      [\n        \"vapeur\",\n        -13.451456069946289\n      ],\n      [\n        \"4.000\",\n        -13.451559066772461\n      ],\n      [\n        \"Pentru\",\n        -13.451581954956055\n      ],\n      [\n        \"üblichen\",\n        -13.451613426208496\n      ],\n      [\n        \"▁Général\",\n        -13.451770782470703\n      ],\n      [\n        \"▁Versailles\",\n        -13.452046394348145\n      ],\n      [\n        \"▁engraving\",\n        -13.452046394348145\n      ],\n      [\n        \"▁pédagogique\",\n        -13.452192306518555\n      ],\n      [\n        \"▁Policies\",\n        -13.452759742736816\n      ],\n      [\n        \"descending\",\n        -13.453235626220703\n      ],\n      [\n        \"stärkt\",\n        -13.453349113464355\n      ],\n      [\n        \"▁démocratie\",\n        -13.453470230102539\n      ],\n      [\n        \"▁granddaughter\",\n        -13.453470230102539\n      ],\n      [\n        \"▁buffalo\",\n        -13.453474998474121\n      ],\n      [\n        \"Datorita\",\n        -13.45347785949707\n      ],\n      [\n        \"hydroxy\",\n        -13.453537940979004\n      ],\n      [\n        \"▁ganduri\",\n        -13.453566551208496\n      ],\n      [\n        \"▁hijack\",\n        -13.453624725341797\n      ],\n      [\n        \"zahn\",\n        -13.453699111938477\n      ],\n      [\n        \"poziția\",\n        -13.45406436920166\n      ],\n      [\n        \"▁Zähne\",\n        -13.454184532165527\n      ],\n      [\n        \"▁grossesse\",\n        -13.454296112060547\n      ],\n      [\n        \"embassy\",\n        -13.4548978805542\n      ],\n      [\n        \"▁cérémonie\",\n        -13.4548978805542\n      ],\n      [\n        \"Rhône\",\n        -13.454898834228516\n      ],\n      [\n        \"▁Cabernet\",\n        -13.454898834228516\n      ],\n      [\n        \"▁Namibia\",\n        -13.454902648925781\n      ],\n      [\n        \"▁pedestal\",\n        -13.454902648925781\n      ],\n      [\n        \"▁Fighting\",\n        -13.45490550994873\n      ],\n      [\n        \"▁Threat\",\n        -13.454962730407715\n      ],\n      [\n        \"▁ideological\",\n        -13.455047607421875\n      ],\n      [\n        \"▁restitu\",\n        -13.455183029174805\n      ],\n      [\n        \"gelangt\",\n        -13.455510139465332\n      ],\n      [\n        \"Mitgliedern\",\n        -13.455537796020508\n      ],\n      [\n        \"acquérir\",\n        -13.455613136291504\n      ],\n      [\n        \"▁inferioar\",\n        -13.45561695098877\n      ],\n      [\n        \"Thierry\",\n        -13.455619812011719\n      ],\n      [\n        \"▁Entspannung\",\n        -13.455638885498047\n      ],\n      [\n        \"frequency\",\n        -13.45566177368164\n      ],\n      [\n        \"▁Fluid\",\n        -13.455686569213867\n      ],\n      [\n        \"▁betreut\",\n        -13.455901145935059\n      ],\n      [\n        \"Biological\",\n        -13.455965995788574\n      ],\n      [\n        \"▁Constanţa\",\n        -13.456328392028809\n      ],\n      [\n        \"▁beschäftigen\",\n        -13.456328392028809\n      ],\n      [\n        \"▁undesirable\",\n        -13.456328392028809\n      ],\n      [\n        \"▁protégé\",\n        -13.456365585327148\n      ],\n      [\n        \"▁nautical\",\n        -13.456474304199219\n      ],\n      [\n        \"▁sniff\",\n        -13.456507682800293\n      ],\n      [\n        \"Decizi\",\n        -13.456510543823242\n      ],\n      [\n        \"▁căldur\",\n        -13.45706558227539\n      ],\n      [\n        \"▁ideologi\",\n        -13.457335472106934\n      ],\n      [\n        \"Fraktion\",\n        -13.457545280456543\n      ],\n      [\n        \"collegiate\",\n        -13.45776081085205\n      ],\n      [\n        \"▁sănătos\",\n        -13.45776081085205\n      ],\n      [\n        \"▁Observatory\",\n        -13.45776653289795\n      ],\n      [\n        \"▁saturation\",\n        -13.457769393920898\n      ],\n      [\n        \"organizate\",\n        -13.457771301269531\n      ],\n      [\n        \"mergem\",\n        -13.458321571350098\n      ],\n      [\n        \"Publish\",\n        -13.458451271057129\n      ],\n      [\n        \"▁rattle\",\n        -13.458460807800293\n      ],\n      [\n        \"▁întâlniri\",\n        -13.458663940429688\n      ],\n      [\n        \"emporte\",\n        -13.458741188049316\n      ],\n      [\n        \"▁înscris\",\n        -13.459046363830566\n      ],\n      [\n        \"▁Patterson\",\n        -13.459195137023926\n      ],\n      [\n        \"▁ehrenamtlich\",\n        -13.459195137023926\n      ],\n      [\n        \"linux\",\n        -13.459213256835938\n      ],\n      [\n        \"conduire\",\n        -13.45921802520752\n      ],\n      [\n        \"▁absolven\",\n        -13.459223747253418\n      ],\n      [\n        \"▁einzigartig\",\n        -13.459598541259766\n      ],\n      [\n        \"▁_____\",\n        -13.459803581237793\n      ],\n      [\n        \"▁Beschäftigung\",\n        -13.459912300109863\n      ],\n      [\n        \"▁erfasst\",\n        -13.459927558898926\n      ],\n      [\n        \"▁Datum\",\n        -13.459992408752441\n      ],\n      [\n        \"raportul\",\n        -13.460284233093262\n      ],\n      [\n        \"ennemi\",\n        -13.460460662841797\n      ],\n      [\n        \"default\",\n        -13.460643768310547\n      ],\n      [\n        \"icillin\",\n        -13.46066951751709\n      ],\n      [\n        \"▁diamant\",\n        -13.460671424865723\n      ],\n      [\n        \"amerika\",\n        -13.460684776306152\n      ],\n      [\n        \"▁pescuit\",\n        -13.46070384979248\n      ],\n      [\n        \"▁grappl\",\n        -13.460797309875488\n      ],\n      [\n        \"▁Homeland\",\n        -13.46082592010498\n      ],\n      [\n        \"▁tromb\",\n        -13.46112060546875\n      ],\n      [\n        \"▁reduzieren\",\n        -13.461349487304688\n      ],\n      [\n        \"▁Statut\",\n        -13.461593627929688\n      ],\n      [\n        \"booming\",\n        -13.461670875549316\n      ],\n      [\n        \"fenced\",\n        -13.461723327636719\n      ],\n      [\n        \"measure\",\n        -13.461888313293457\n      ],\n      [\n        \"témoin\",\n        -13.462069511413574\n      ],\n      [\n        \"▁Inventory\",\n        -13.462069511413574\n      ],\n      [\n        \"▁circonstance\",\n        -13.462069511413574\n      ],\n      [\n        \"▁téléphonique\",\n        -13.462069511413574\n      ],\n      [\n        \"▁împiedic\",\n        -13.46207046508789\n      ],\n      [\n        \"▁Settlement\",\n        -13.462072372436523\n      ],\n      [\n        \"kannte\",\n        -13.462076187133789\n      ],\n      [\n        \"▁substantive\",\n        -13.462385177612305\n      ],\n      [\n        \"miterea\",\n        -13.462642669677734\n      ],\n      [\n        \"▁noştri\",\n        -13.462790489196777\n      ],\n      [\n        \"▁plăcere\",\n        -13.462791442871094\n      ],\n      [\n        \"▁eticheta\",\n        -13.462823867797852\n      ],\n      [\n        \"quickest\",\n        -13.462993621826172\n      ],\n      [\n        \"▁pasageri\",\n        -13.463089942932129\n      ],\n      [\n        \"▁Publi\",\n        -13.463495254516602\n      ],\n      [\n        \"▁Suzanne\",\n        -13.463509559631348\n      ],\n      [\n        \"▁bucătări\",\n        -13.463509559631348\n      ],\n      [\n        \"Regulatory\",\n        -13.463510513305664\n      ],\n      [\n        \"▁Mandarin\",\n        -13.463647842407227\n      ],\n      [\n        \"surgical\",\n        -13.463947296142578\n      ],\n      [\n        \"▁Smash\",\n        -13.463950157165527\n      ],\n      [\n        \"▁mândr\",\n        -13.46403694152832\n      ],\n      [\n        \"▁Unterkunft\",\n        -13.464315414428711\n      ],\n      [\n        \"moos\",\n        -13.464374542236328\n      ],\n      [\n        \"Camere\",\n        -13.464510917663574\n      ],\n      [\n        \"/03/\",\n        -13.464651107788086\n      ],\n      [\n        \"▁ethno\",\n        -13.464677810668945\n      ],\n      [\n        \"▁Eröffnung\",\n        -13.46495246887207\n      ],\n      [\n        \"▁Snyder\",\n        -13.46495246887207\n      ],\n      [\n        \"▁Wilmington\",\n        -13.46495246887207\n      ],\n      [\n        \"▁Canberra\",\n        -13.464953422546387\n      ],\n      [\n        \"▁Tahoe\",\n        -13.464953422546387\n      ],\n      [\n        \"▁slippery\",\n        -13.464953422546387\n      ],\n      [\n        \"▁Snake\",\n        -13.464957237243652\n      ],\n      [\n        \"▁turmeric\",\n        -13.464963912963867\n      ],\n      [\n        \"▁Cartoon\",\n        -13.46499252319336\n      ],\n      [\n        \"▁scrisoare\",\n        -13.46500015258789\n      ],\n      [\n        \"▁reprend\",\n        -13.465425491333008\n      ],\n      [\n        \"▁Konkurrenz\",\n        -13.46567440032959\n      ],\n      [\n        \"▁raisins\",\n        -13.465693473815918\n      ],\n      [\n        \"▁Werkstatt\",\n        -13.465713500976562\n      ],\n      [\n        \"▁agresiv\",\n        -13.465795516967773\n      ],\n      [\n        \"hugs\",\n        -13.46615219116211\n      ],\n      [\n        \"cazurile\",\n        -13.46618938446045\n      ],\n      [\n        \"spirited\",\n        -13.466232299804688\n      ],\n      [\n        \"▁britisch\",\n        -13.466307640075684\n      ],\n      [\n        \"spritz\",\n        -13.466367721557617\n      ],\n      [\n        \"auxiliary\",\n        -13.46639633178711\n      ],\n      [\n        \"interprétation\",\n        -13.46639633178711\n      ],\n      [\n        \"▁verbindet\",\n        -13.46639633178711\n      ],\n      [\n        \"▁fuzzy\",\n        -13.466429710388184\n      ],\n      [\n        \"▁turmoil\",\n        -13.466432571411133\n      ],\n      [\n        \"▁redefine\",\n        -13.466819763183594\n      ],\n      [\n        \"▁Kiwi\",\n        -13.466890335083008\n      ],\n      [\n        \"oiseaux\",\n        -13.46712875366211\n      ],\n      [\n        \"▁pamper\",\n        -13.467146873474121\n      ],\n      [\n        \"▁desfaso\",\n        -13.46719741821289\n      ],\n      [\n        \"▁pragu\",\n        -13.467576026916504\n      ],\n      [\n        \"prevenirea\",\n        -13.467730522155762\n      ],\n      [\n        \"▁convergence\",\n        -13.467846870422363\n      ],\n      [\n        \"tufted\",\n        -13.467878341674805\n      ],\n      [\n        \"brewed\",\n        -13.467981338500977\n      ],\n      [\n        \"villagers\",\n        -13.468003273010254\n      ],\n      [\n        \"▁Irving\",\n        -13.468170166015625\n      ],\n      [\n        \"nigsten\",\n        -13.468660354614258\n      ],\n      [\n        \"▁embod\",\n        -13.468742370605469\n      ],\n      [\n        \"Alicia\",\n        -13.468938827514648\n      ],\n      [\n        \"probably\",\n        -13.469009399414062\n      ],\n      [\n        \"divider\",\n        -13.46904468536377\n      ],\n      [\n        \"Attempt\",\n        -13.469223022460938\n      ],\n      [\n        \"▁Cognitive\",\n        -13.469292640686035\n      ],\n      [\n        \"▁Recognition\",\n        -13.469292640686035\n      ],\n      [\n        \"▁concierge\",\n        -13.469292640686035\n      ],\n      [\n        \"▁Semester\",\n        -13.4692964553833\n      ],\n      [\n        \"Economie\",\n        -13.469417572021484\n      ],\n      [\n        \"sortiment\",\n        -13.469460487365723\n      ],\n      [\n        \"shortest\",\n        -13.46961498260498\n      ],\n      [\n        \"üchtig\",\n        -13.469650268554688\n      ],\n      [\n        \"▁conveyanc\",\n        -13.469978332519531\n      ],\n      [\n        \"▁Ferdinand\",\n        -13.470017433166504\n      ],\n      [\n        \"▁permanence\",\n        -13.470019340515137\n      ],\n      [\n        \"▁incadr\",\n        -13.470145225524902\n      ],\n      [\n        \"▁estrogen\",\n        -13.470290184020996\n      ],\n      [\n        \"February\",\n        -13.470661163330078\n      ],\n      [\n        \"gedeckt\",\n        -13.470704078674316\n      ],\n      [\n        \"▁reagieren\",\n        -13.470743179321289\n      ],\n      [\n        \"▁meditate\",\n        -13.470980644226074\n      ],\n      [\n        \"simulated\",\n        -13.471010208129883\n      ],\n      [\n        \"▁supprimer\",\n        -13.471468925476074\n      ],\n      [\n        \"▁bumbac\",\n        -13.47146987915039\n      ],\n      [\n        \"▁vânzări\",\n        -13.471477508544922\n      ],\n      [\n        \"▁Kapitel\",\n        -13.471478462219238\n      ],\n      [\n        \"▁Weltkrieg\",\n        -13.471513748168945\n      ],\n      [\n        \"déposer\",\n        -13.471674919128418\n      ],\n      [\n        \"Asus\",\n        -13.4718017578125\n      ],\n      [\n        \"▁Communicat\",\n        -13.471851348876953\n      ],\n      [\n        \"Finished\",\n        -13.47188949584961\n      ],\n      [\n        \"▁Telegraph\",\n        -13.472054481506348\n      ],\n      [\n        \"▁Competitive\",\n        -13.472196578979492\n      ],\n      [\n        \"▁collectivités\",\n        -13.472197532653809\n      ],\n      [\n        \"▁protège\",\n        -13.472199440002441\n      ],\n      [\n        \"▁scallop\",\n        -13.472219467163086\n      ],\n      [\n        \"Happy\",\n        -13.472335815429688\n      ],\n      [\n        \"tehnică\",\n        -13.472352981567383\n      ],\n      [\n        \"▁Gestalt\",\n        -13.47270393371582\n      ],\n      [\n        \"▁benign\",\n        -13.47295093536377\n      ],\n      [\n        \"kraut\",\n        -13.473149299621582\n      ],\n      [\n        \"louer\",\n        -13.473221778869629\n      ],\n      [\n        \"▁Printr\",\n        -13.47326946258545\n      ],\n      [\n        \"mputation\",\n        -13.473346710205078\n      ],\n      [\n        \"▁dicke\",\n        -13.473429679870605\n      ],\n      [\n        \"▁Halifax\",\n        -13.473650932312012\n      ],\n      [\n        \"▁bounty\",\n        -13.473650932312012\n      ],\n      [\n        \"▁cauliflower\",\n        -13.473650932312012\n      ],\n      [\n        \"▁Survival\",\n        -13.473654747009277\n      ],\n      [\n        \"▁Chandler\",\n        -13.473684310913086\n      ],\n      [\n        \"▁bemüh\",\n        -13.473760604858398\n      ],\n      [\n        \"phro\",\n        -13.473855972290039\n      ],\n      [\n        \"Friday\",\n        -13.474018096923828\n      ],\n      [\n        \"particularly\",\n        -13.474032402038574\n      ],\n      [\n        \"arteries\",\n        -13.474197387695312\n      ],\n      [\n        \"Lösung\",\n        -13.474771499633789\n      ],\n      [\n        \"▁causal\",\n        -13.474817276000977\n      ],\n      [\n        \"▁recueilli\",\n        -13.475075721740723\n      ],\n      [\n        \"Stylish\",\n        -13.47510814666748\n      ],\n      [\n        \"schränke\",\n        -13.47510814666748\n      ],\n      [\n        \"▁francophone\",\n        -13.47510814666748\n      ],\n      [\n        \"▁limousine\",\n        -13.47510814666748\n      ],\n      [\n        \"▁statistiques\",\n        -13.47510814666748\n      ],\n      [\n        \"▁Kleider\",\n        -13.475111961364746\n      ],\n      [\n        \"▁dunkel\",\n        -13.475127220153809\n      ],\n      [\n        \"tätigkeit\",\n        -13.475190162658691\n      ],\n      [\n        \"▁punished\",\n        -13.475257873535156\n      ],\n      [\n        \"▁implică\",\n        -13.475539207458496\n      ],\n      [\n        \"▁inițial\",\n        -13.475568771362305\n      ],\n      [\n        \"▁Eminescu\",\n        -13.475837707519531\n      ],\n      [\n        \"▁expliqué\",\n        -13.475837707519531\n      ],\n      [\n        \"▁Eduard\",\n        -13.475839614868164\n      ],\n      [\n        \"▁psychologique\",\n        -13.475870132446289\n      ],\n      [\n        \"▁protejeaz\",\n        -13.476580619812012\n      ],\n      [\n        \"spül\",\n        -13.476709365844727\n      ],\n      [\n        \"▁Virtu\",\n        -13.477021217346191\n      ],\n      [\n        \"▁régulière\",\n        -13.477044105529785\n      ],\n      [\n        \"▁Outreach\",\n        -13.477130889892578\n      ],\n      [\n        \"▁Apprentice\",\n        -13.47729778289795\n      ],\n      [\n        \"▁compréhension\",\n        -13.47729778289795\n      ],\n      [\n        \"▁zwölf\",\n        -13.47729778289795\n      ],\n      [\n        \"Surgical\",\n        -13.477315902709961\n      ],\n      [\n        \"latéral\",\n        -13.477417945861816\n      ],\n      [\n        \"▁Ceremony\",\n        -13.47803020477295\n      ],\n      [\n        \"▁Shampoo\",\n        -13.47803783416748\n      ],\n      [\n        \"Global\",\n        -13.478239059448242\n      ],\n      [\n        \"▁paradis\",\n        -13.478302955627441\n      ],\n      [\n        \"Developed\",\n        -13.478493690490723\n      ],\n      [\n        \"▁figurine\",\n        -13.478549003601074\n      ],\n      [\n        \"sujets\",\n        -13.478574752807617\n      ],\n      [\n        \"▁Naomi\",\n        -13.478772163391113\n      ],\n      [\n        \"financed\",\n        -13.478838920593262\n      ],\n      [\n        \"forestry\",\n        -13.478896141052246\n      ],\n      [\n        \"▁Anregung\",\n        -13.479494094848633\n      ],\n      [\n        \"▁spectateur\",\n        -13.479804039001465\n      ],\n      [\n        \"▁exercitii\",\n        -13.479815483093262\n      ],\n      [\n        \"▁russisch\",\n        -13.479888916015625\n      ],\n      [\n        \"gefunden\",\n        -13.479988098144531\n      ],\n      [\n        \"schleunig\",\n        -13.480225563049316\n      ],\n      [\n        \"▁géographique\",\n        -13.480225563049316\n      ],\n      [\n        \"▁Delphi\",\n        -13.480317115783691\n      ],\n      [\n        \"Freddie\",\n        -13.4806489944458\n      ],\n      [\n        \"▁muzici\",\n        -13.480958938598633\n      ],\n      [\n        \"▁Edmund\",\n        -13.48095989227295\n      ],\n      [\n        \"finanzielle\",\n        -13.481032371520996\n      ],\n      [\n        \"(2003)\",\n        -13.481319427490234\n      ],\n      [\n        \"accentuate\",\n        -13.481437683105469\n      ],\n      [\n        \"overlapping\",\n        -13.48151969909668\n      ],\n      [\n        \"▁Pluto\",\n        -13.481595993041992\n      ],\n      [\n        \"românii\",\n        -13.481683731079102\n      ],\n      [\n        \"▁Timişoara\",\n        -13.48169231414795\n      ],\n      [\n        \"▁poivr\",\n        -13.481754302978516\n      ],\n      [\n        \"▁repris\",\n        -13.481852531433105\n      ],\n      [\n        \"▁Geschlecht\",\n        -13.482426643371582\n      ],\n      [\n        \"▁thieves\",\n        -13.482426643371582\n      ],\n      [\n        \"▁Transformer\",\n        -13.482431411743164\n      ],\n      [\n        \"▁shortcomings\",\n        -13.482438087463379\n      ],\n      [\n        \"▁aptitude\",\n        -13.48244571685791\n      ],\n      [\n        \"pitfalls\",\n        -13.482468605041504\n      ],\n      [\n        \"▁manicure\",\n        -13.482577323913574\n      ],\n      [\n        \"mystical\",\n        -13.482723236083984\n      ],\n      [\n        \"▁abolish\",\n        -13.482833862304688\n      ],\n      [\n        \"▁Zielgruppe\",\n        -13.482873916625977\n      ],\n      [\n        \"▁naţionale\",\n        -13.483160972595215\n      ],\n      [\n        \"▁trandafir\",\n        -13.483160972595215\n      ],\n      [\n        \"▁matematic\",\n        -13.483193397521973\n      ],\n      [\n        \"▁Hirsch\",\n        -13.483257293701172\n      ],\n      [\n        \"Fahr\",\n        -13.483458518981934\n      ],\n      [\n        \"connaissent\",\n        -13.483476638793945\n      ],\n      [\n        \"browned\",\n        -13.483846664428711\n      ],\n      [\n        \"▁bearbeitet\",\n        -13.483881950378418\n      ],\n      [\n        \"▁usturoi\",\n        -13.483896255493164\n      ],\n      [\n        \"▁Surprise\",\n        -13.48389720916748\n      ],\n      [\n        \"▁Tehran\",\n        -13.483899116516113\n      ],\n      [\n        \"▁BLACK\",\n        -13.483901023864746\n      ],\n      [\n        \"▁abonament\",\n        -13.483904838562012\n      ],\n      [\n        \"▁mêl\",\n        -13.483972549438477\n      ],\n      [\n        \"Angebot\",\n        -13.484091758728027\n      ],\n      [\n        \"ajungi\",\n        -13.48410415649414\n      ],\n      [\n        \"▁Woodland\",\n        -13.48420524597168\n      ],\n      [\n        \"▁gradini\",\n        -13.484305381774902\n      ],\n      [\n        \"▁Marilyn\",\n        -13.48464584350586\n      ],\n      [\n        \"kilometer\",\n        -13.484880447387695\n      ],\n      [\n        \"tempered\",\n        -13.485230445861816\n      ],\n      [\n        \"▁intimacy\",\n        -13.485371589660645\n      ],\n      [\n        \"▁thunderstorm\",\n        -13.485373497009277\n      ],\n      [\n        \"▁Uttar\",\n        -13.485413551330566\n      ],\n      [\n        \"▁varnish\",\n        -13.485535621643066\n      ],\n      [\n        \"opathie\",\n        -13.485982894897461\n      ],\n      [\n        \"▁școlar\",\n        -13.48611068725586\n      ],\n      [\n        \"▁raisonnable\",\n        -13.486114501953125\n      ],\n      [\n        \"proactively\",\n        -13.486490249633789\n      ],\n      [\n        \"▁gib\",\n        -13.486536979675293\n      ],\n      [\n        \"▁hospice\",\n        -13.48684310913086\n      ],\n      [\n        \"▁constă\",\n        -13.486896514892578\n      ],\n      [\n        \"▁Crescent\",\n        -13.48690128326416\n      ],\n      [\n        \"▁ambasad\",\n        -13.486933708190918\n      ],\n      [\n        \"hotărâre\",\n        -13.486969947814941\n      ],\n      [\n        \"▁fraîche\",\n        -13.48709774017334\n      ],\n      [\n        \"▁bundesweit\",\n        -13.487581253051758\n      ],\n      [\n        \"nsbesondere\",\n        -13.487812042236328\n      ],\n      [\n        \"▁intoarce\",\n        -13.487863540649414\n      ],\n      [\n        \"▁Schokolade\",\n        -13.488319396972656\n      ],\n      [\n        \"▁adjective\",\n        -13.488319396972656\n      ],\n      [\n        \"▁incalzire\",\n        -13.488319396972656\n      ],\n      [\n        \"▁Qualification\",\n        -13.488320350646973\n      ],\n      [\n        \"▁Bolivia\",\n        -13.488324165344238\n      ],\n      [\n        \"▁cruelty\",\n        -13.488334655761719\n      ],\n      [\n        \"pläne\",\n        -13.48834228515625\n      ],\n      [\n        \"▁solitude\",\n        -13.488354682922363\n      ],\n      [\n        \"▁Bosnia\",\n        -13.488568305969238\n      ],\n      [\n        \"rohr\",\n        -13.488643646240234\n      ],\n      [\n        \"▁regrette\",\n        -13.48877239227295\n      ],\n      [\n        \"zusammengestellt\",\n        -13.48924732208252\n      ],\n      [\n        \"▁Kardashian\",\n        -13.489798545837402\n      ],\n      [\n        \"▁Picasso\",\n        -13.489798545837402\n      ],\n      [\n        \"▁unverbindlich\",\n        -13.489798545837402\n      ],\n      [\n        \"▁Headquarters\",\n        -13.489799499511719\n      ],\n      [\n        \"métrage\",\n        -13.4898099899292\n      ],\n      [\n        \"▁Magento\",\n        -13.489816665649414\n      ],\n      [\n        \"▁exhibitors\",\n        -13.489898681640625\n      ],\n      [\n        \"utty\",\n        -13.490381240844727\n      ],\n      [\n        \"▁Fünf\",\n        -13.490538597106934\n      ],\n      [\n        \"▁Peugeot\",\n        -13.490538597106934\n      ],\n      [\n        \"▁verdienen\",\n        -13.490538597106934\n      ],\n      [\n        \"▁absolviert\",\n        -13.49053955078125\n      ],\n      [\n        \"schutzerklärung\",\n        -13.490679740905762\n      ],\n      [\n        \"sistemele\",\n        -13.49089241027832\n      ],\n      [\n        \"▁concrète\",\n        -13.491279602050781\n      ],\n      [\n        \"▁rhyme\",\n        -13.491279602050781\n      ],\n      [\n        \"▁Continuous\",\n        -13.49128246307373\n      ],\n      [\n        \"versprechen\",\n        -13.491312026977539\n      ],\n      [\n        \"▁Melanie\",\n        -13.49202823638916\n      ],\n      [\n        \"▁clienţi\",\n        -13.492046356201172\n      ],\n      [\n        \"luckily\",\n        -13.492205619812012\n      ],\n      [\n        \"▁counterfeit\",\n        -13.492762565612793\n      ],\n      [\n        \"▁locomotive\",\n        -13.492889404296875\n      ],\n      [\n        \"▁reacți\",\n        -13.492908477783203\n      ],\n      [\n        \"ampered\",\n        -13.493005752563477\n      ],\n      [\n        \"atenția\",\n        -13.493011474609375\n      ],\n      [\n        \"Suppose\",\n        -13.493062973022461\n      ],\n      [\n        \"hinweis\",\n        -13.493464469909668\n      ],\n      [\n        \"verletzung\",\n        -13.493504524230957\n      ],\n      [\n        \"▁mănânc\",\n        -13.493504524230957\n      ],\n      [\n        \"▁provoac\",\n        -13.493507385253906\n      ],\n      [\n        \"▁regizor\",\n        -13.493511199951172\n      ],\n      [\n        \"kundig\",\n        -13.49352741241455\n      ],\n      [\n        \"embarqu\",\n        -13.493584632873535\n      ],\n      [\n        \"Radio\",\n        -13.493690490722656\n      ],\n      [\n        \"Ministrul\",\n        -13.493896484375\n      ],\n      [\n        \"weakened\",\n        -13.494214057922363\n      ],\n      [\n        \"▁translucent\",\n        -13.494247436523438\n      ],\n      [\n        \"George\",\n        -13.494380950927734\n      ],\n      [\n        \"▁bacterii\",\n        -13.494402885437012\n      ],\n      [\n        \"intervalul\",\n        -13.494803428649902\n      ],\n      [\n        \"▁vizualiz\",\n        -13.494832038879395\n      ],\n      [\n        \"▁Feuchtigkeit\",\n        -13.494991302490234\n      ],\n      [\n        \"▁choisissez\",\n        -13.494991302490234\n      ],\n      [\n        \"▁plausible\",\n        -13.494991302490234\n      ],\n      [\n        \"▁perpetu\",\n        -13.495122909545898\n      ],\n      [\n        \"▁bucati\",\n        -13.495194435119629\n      ],\n      [\n        \"▁Giovanni\",\n        -13.495735168457031\n      ],\n      [\n        \"▁bluetooth\",\n        -13.495736122131348\n      ],\n      [\n        \"▁translating\",\n        -13.49573802947998\n      ],\n      [\n        \"▁Kyoto\",\n        -13.495739936828613\n      ],\n      [\n        \"▁homosexual\",\n        -13.495745658874512\n      ],\n      [\n        \"treabă\",\n        -13.495820045471191\n      ],\n      [\n        \"ntrepid\",\n        -13.495983123779297\n      ],\n      [\n        \"▁fachlich\",\n        -13.496664047241211\n      ],\n      [\n        \"Vaccin\",\n        -13.496774673461914\n      ],\n      [\n        \"▁Treib\",\n        -13.497248649597168\n      ],\n      [\n        \"varsity\",\n        -13.497272491455078\n      ],\n      [\n        \"▁Tavern\",\n        -13.497278213500977\n      ],\n      [\n        \"▁ensue\",\n        -13.497330665588379\n      ],\n      [\n        \"flexibel\",\n        -13.497971534729004\n      ],\n      [\n        \"retrieved\",\n        -13.498102188110352\n      ],\n      [\n        \"traditionellen\",\n        -13.498230934143066\n      ],\n      [\n        \"▁circulati\",\n        -13.498546600341797\n      ],\n      [\n        \"▁Diagnose\",\n        -13.498717308044434\n      ],\n      [\n        \"▁Strawberry\",\n        -13.498717308044434\n      ],\n      [\n        \"Societatea\",\n        -13.49871826171875\n      ],\n      [\n        \"expertise\",\n        -13.498849868774414\n      ],\n      [\n        \"▁naturii\",\n        -13.499464988708496\n      ],\n      [\n        \"▁4:1\",\n        -13.499515533447266\n      ],\n      [\n        \"Frequently\",\n        -13.500210762023926\n      ],\n      [\n        \"disproportionate\",\n        -13.500210762023926\n      ],\n      [\n        \"▁LIMITED\",\n        -13.500210762023926\n      ],\n      [\n        \"▁ancestral\",\n        -13.500227928161621\n      ],\n      [\n        \"▁Logistik\",\n        -13.500237464904785\n      ],\n      [\n        \"▁recolt\",\n        -13.50042724609375\n      ],\n      [\n        \"▁liebevoll\",\n        -13.500436782836914\n      ],\n      [\n        \"importing\",\n        -13.500452041625977\n      ],\n      [\n        \"aparatul\",\n        -13.500458717346191\n      ],\n      [\n        \"poziţia\",\n        -13.500564575195312\n      ],\n      [\n        \"facerilor\",\n        -13.500658988952637\n      ],\n      [\n        \"Submitted\",\n        -13.50086784362793\n      ],\n      [\n        \"ografia\",\n        -13.501221656799316\n      ],\n      [\n        \"onformément\",\n        -13.50168228149414\n      ],\n      [\n        \"▁dissemination\",\n        -13.501708030700684\n      ],\n      [\n        \"afli\",\n        -13.501834869384766\n      ],\n      [\n        \"luminous\",\n        -13.502154350280762\n      ],\n      [\n        \"▁draußen\",\n        -13.502456665039062\n      ],\n      [\n        \"▁Zauber\",\n        -13.502535820007324\n      ],\n      [\n        \"▁Ibrahim\",\n        -13.503207206726074\n      ],\n      [\n        \"▁eruption\",\n        -13.503216743469238\n      ],\n      [\n        \"écrite\",\n        -13.50357723236084\n      ],\n      [\n        \"avril\",\n        -13.503898620605469\n      ],\n      [\n        \"Increasing\",\n        -13.504171371459961\n      ],\n      [\n        \"hingeg\",\n        -13.504411697387695\n      ],\n      [\n        \"fidelity\",\n        -13.504707336425781\n      ],\n      [\n        \"étonnant\",\n        -13.504707336425781\n      ],\n      [\n        \"▁créativité\",\n        -13.504707336425781\n      ],\n      [\n        \"▁Required\",\n        -13.504708290100098\n      ],\n      [\n        \"▁Edison\",\n        -13.504719734191895\n      ],\n      [\n        \"▁Stuhl\",\n        -13.504719734191895\n      ],\n      [\n        \"outhwestern\",\n        -13.506060600280762\n      ],\n      [\n        \"▁Beschwerden\",\n        -13.506210327148438\n      ],\n      [\n        \"▁angajaţi\",\n        -13.506210327148438\n      ],\n      [\n        \"▁Currency\",\n        -13.506211280822754\n      ],\n      [\n        \"▁reagiert\",\n        -13.506214141845703\n      ],\n      [\n        \"Science\",\n        -13.506229400634766\n      ],\n      [\n        \"hospital\",\n        -13.506253242492676\n      ],\n      [\n        \"professionellen\",\n        -13.50649356842041\n      ],\n      [\n        \"▁Trouve\",\n        -13.506768226623535\n      ],\n      [\n        \"▁utopi\",\n        -13.50683307647705\n      ],\n      [\n        \"gypte\",\n        -13.506928443908691\n      ],\n      [\n        \"▁Konsequenz\",\n        -13.506962776184082\n      ],\n      [\n        \"▁pacienți\",\n        -13.506962776184082\n      ],\n      [\n        \"▁orizont\",\n        -13.506988525390625\n      ],\n      [\n        \"Corey\",\n        -13.506999015808105\n      ],\n      [\n        \"▁quartet\",\n        -13.507009506225586\n      ],\n      [\n        \"▁Sherlock\",\n        -13.50710678100586\n      ],\n      [\n        \"▁gagné\",\n        -13.507237434387207\n      ],\n      [\n        \"▁Jusqu\",\n        -13.50732707977295\n      ],\n      [\n        \"▁Clickfunnel\",\n        -13.507465362548828\n      ],\n      [\n        \"Survivor\",\n        -13.507716178894043\n      ],\n      [\n        \"▁Beethoven\",\n        -13.507716178894043\n      ],\n      [\n        \"▁Exemplar\",\n        -13.507716178894043\n      ],\n      [\n        \"▁Gonzalez\",\n        -13.507716178894043\n      ],\n      [\n        \"▁Illustrator\",\n        -13.507716178894043\n      ],\n      [\n        \"▁Verpflichtung\",\n        -13.507718086242676\n      ],\n      [\n        \"Possibly\",\n        -13.507719993591309\n      ],\n      [\n        \"Maintenant\",\n        -13.507721900939941\n      ],\n      [\n        \"▁incendiu\",\n        -13.507721900939941\n      ],\n      [\n        \"▁poêl\",\n        -13.507747650146484\n      ],\n      [\n        \"▁aşez\",\n        -13.507757186889648\n      ],\n      [\n        \"phenol\",\n        -13.508248329162598\n      ],\n      [\n        \"▁magician\",\n        -13.508421897888184\n      ],\n      [\n        \"éventuellement\",\n        -13.508512496948242\n      ],\n      [\n        \"▁amortiz\",\n        -13.508736610412598\n      ],\n      [\n        \"bouchage\",\n        -13.50873851776123\n      ],\n      [\n        \"▁Accommodation\",\n        -13.509223937988281\n      ],\n      [\n        \"▁Significant\",\n        -13.509223937988281\n      ],\n      [\n        \"▁rejoice\",\n        -13.509223937988281\n      ],\n      [\n        \"▁Lorraine\",\n        -13.509224891662598\n      ],\n      [\n        \"▁Necklace\",\n        -13.509234428405762\n      ],\n      [\n        \"▁hamburger\",\n        -13.509273529052734\n      ],\n      [\n        \"Enhanced\",\n        -13.5095796585083\n      ],\n      [\n        \"▁Audrey\",\n        -13.509978294372559\n      ],\n      [\n        \"▁considère\",\n        -13.509986877441406\n      ],\n      [\n        \"hafen\",\n        -13.51050853729248\n      ],\n      [\n        \"acordare\",\n        -13.510509490966797\n      ],\n      [\n        \"▁ediți\",\n        -13.51075553894043\n      ],\n      [\n        \"▁militia\",\n        -13.510767936706543\n      ],\n      [\n        \"captivate\",\n        -13.510771751403809\n      ],\n      [\n        \"▁rebellion\",\n        -13.510777473449707\n      ],\n      [\n        \"▁veranstalte\",\n        -13.510844230651855\n      ],\n      [\n        \"▁matelas\",\n        -13.510859489440918\n      ],\n      [\n        \"originating\",\n        -13.510873794555664\n      ],\n      [\n        \"Typical\",\n        -13.51092529296875\n      ],\n      [\n        \"▁législat\",\n        -13.511360168457031\n      ],\n      [\n        \"▁Kräfte\",\n        -13.511488914489746\n      ],\n      [\n        \"▁Eigentümer\",\n        -13.511489868164062\n      ],\n      [\n        \"▁gonfl\",\n        -13.511608123779297\n      ],\n      [\n        \"dispoziție\",\n        -13.512028694152832\n      ],\n      [\n        \"▁Fabulous\",\n        -13.512246131896973\n      ],\n      [\n        \"▁Guillaume\",\n        -13.512246131896973\n      ],\n      [\n        \"▁Genuine\",\n        -13.512247085571289\n      ],\n      [\n        \"selbe\",\n        -13.512449264526367\n      ],\n      [\n        \"(2002)\",\n        -13.512616157531738\n      ],\n      [\n        \"Einen\",\n        -13.512908935546875\n      ],\n      [\n        \"▁Snapdragon\",\n        -13.513002395629883\n      ],\n      [\n        \"▁plagiarism\",\n        -13.513002395629883\n      ],\n      [\n        \"▁Rendez\",\n        -13.513019561767578\n      ],\n      [\n        \"▁înregistrare\",\n        -13.513033866882324\n      ],\n      [\n        \"probiert\",\n        -13.513081550598145\n      ],\n      [\n        \"gestiegen\",\n        -13.513153076171875\n      ],\n      [\n        \"Teatrul\",\n        -13.513370513916016\n      ],\n      [\n        \"trove\",\n        -13.513469696044922\n      ],\n      [\n        \"ntsprechend\",\n        -13.513566017150879\n      ],\n      [\n        \"Städten\",\n        -13.513691902160645\n      ],\n      [\n        \"unforeseen\",\n        -13.513760566711426\n      ],\n      [\n        \"▁Meridian\",\n        -13.513761520385742\n      ],\n      [\n        \"▁Ministries\",\n        -13.513763427734375\n      ],\n      [\n        \"plaît\",\n        -13.513769149780273\n      ],\n      [\n        \"▁Telefonnummer\",\n        -13.513772010803223\n      ],\n      [\n        \"welded\",\n        -13.513788223266602\n      ],\n      [\n        \"pondere\",\n        -13.513976097106934\n      ],\n      [\n        \"▁funcţiona\",\n        -13.514012336730957\n      ],\n      [\n        \"▁politicieni\",\n        -13.514187812805176\n      ],\n      [\n        \"fleck\",\n        -13.514240264892578\n      ],\n      [\n        \"▁Nitro\",\n        -13.514264106750488\n      ],\n      [\n        \"wettbewerb\",\n        -13.514518737792969\n      ],\n      [\n        \"▁ingrijire\",\n        -13.514518737792969\n      ],\n      [\n        \"▁Gehirn\",\n        -13.514521598815918\n      ],\n      [\n        \"sigură\",\n        -13.514904022216797\n      ],\n      [\n        \"400,000\",\n        -13.515237808227539\n      ],\n      [\n        \"▁cataract\",\n        -13.515277862548828\n      ],\n      [\n        \"outskirt\",\n        -13.515280723571777\n      ],\n      [\n        \"▁Identification\",\n        -13.515287399291992\n      ],\n      [\n        \"▁imperfections\",\n        -13.515317916870117\n      ],\n      [\n        \"▁Dokumentation\",\n        -13.515474319458008\n      ],\n      [\n        \"Engine\",\n        -13.515851974487305\n      ],\n      [\n        \"extindere\",\n        -13.516046524047852\n      ],\n      [\n        \"bijoux\",\n        -13.516797065734863\n      ],\n      [\n        \"▁dărui\",\n        -13.516802787780762\n      ],\n      [\n        \"▁Moderator\",\n        -13.516913414001465\n      ],\n      [\n        \"biblio\",\n        -13.517024040222168\n      ],\n      [\n        \"енн\",\n        -13.517024040222168\n      ],\n      [\n        \"▁Relevan\",\n        -13.51728630065918\n      ],\n      [\n        \"ansprüche\",\n        -13.517557144165039\n      ],\n      [\n        \"épaisseur\",\n        -13.517580032348633\n      ],\n      [\n        \"▁emoţi\",\n        -13.517677307128906\n      ],\n      [\n        \"exacerbate\",\n        -13.518318176269531\n      ],\n      [\n        \"▁Wimbledon\",\n        -13.518318176269531\n      ],\n      [\n        \"▁Pandora\",\n        -13.518319129943848\n      ],\n      [\n        \"perhaps\",\n        -13.518725395202637\n      ],\n      [\n        \"certify\",\n        -13.518762588500977\n      ],\n      [\n        \"Strukturen\",\n        -13.5189208984375\n      ],\n      [\n        \"▁Kreativität\",\n        -13.519079208374023\n      ],\n      [\n        \"schlägt\",\n        -13.51908016204834\n      ],\n      [\n        \"▁certifié\",\n        -13.51911735534668\n      ],\n      [\n        \"/09/\",\n        -13.519211769104004\n      ],\n      [\n        \"▁suprafaţ\",\n        -13.519493103027344\n      ],\n      [\n        \"verständnis\",\n        -13.519841194152832\n      ],\n      [\n        \"presedintele\",\n        -13.519842147827148\n      ],\n      [\n        \"▁orthopedic\",\n        -13.519842147827148\n      ],\n      [\n        \"▁superioara\",\n        -13.519843101501465\n      ],\n      [\n        \"älteste\",\n        -13.519903182983398\n      ],\n      [\n        \"▁conducător\",\n        -13.520153999328613\n      ],\n      [\n        \"supplementary\",\n        -13.520243644714355\n      ],\n      [\n        \"wetlands\",\n        -13.520438194274902\n      ],\n      [\n        \"▁suprafete\",\n        -13.520605087280273\n      ],\n      [\n        \"▁aparțin\",\n        -13.520951271057129\n      ],\n      [\n        \"analiză\",\n        -13.521014213562012\n      ],\n      [\n        \"Uneori\",\n        -13.52115535736084\n      ],\n      [\n        \"Toujours\",\n        -13.521368026733398\n      ],\n      [\n        \"▁Nairobi\",\n        -13.521368026733398\n      ],\n      [\n        \"▁asparagus\",\n        -13.521368026733398\n      ],\n      [\n        \"▁crowdfunding\",\n        -13.521368026733398\n      ],\n      [\n        \"gutachten\",\n        -13.521369934082031\n      ],\n      [\n        \"smelling\",\n        -13.521659851074219\n      ],\n      [\n        \"▁elektrisch\",\n        -13.521718978881836\n      ],\n      [\n        \"begging\",\n        -13.522055625915527\n      ],\n      [\n        \"▁Renewable\",\n        -13.522896766662598\n      ],\n      [\n        \"▁Trouble\",\n        -13.522896766662598\n      ],\n      [\n        \"▁devastated\",\n        -13.522896766662598\n      ],\n      [\n        \"▁remplacé\",\n        -13.522896766662598\n      ],\n      [\n        \"▁schmeckt\",\n        -13.522896766662598\n      ],\n      [\n        \"▁exerciți\",\n        -13.523005485534668\n      ],\n      [\n        \"▁vermute\",\n        -13.523650169372559\n      ],\n      [\n        \"▁Constanța\",\n        -13.523661613464355\n      ],\n      [\n        \"expunere\",\n        -13.523693084716797\n      ],\n      [\n        \"▁Fitzgerald\",\n        -13.52442741394043\n      ],\n      [\n        \"▁Mechanism\",\n        -13.524429321289062\n      ],\n      [\n        \"▁underscore\",\n        -13.524484634399414\n      ],\n      [\n        \"poziţie\",\n        -13.524901390075684\n      ],\n      [\n        \"stöbern\",\n        -13.525193214416504\n      ],\n      [\n        \"▁littérature\",\n        -13.525193214416504\n      ],\n      [\n        \"▁împrumut\",\n        -13.525193214416504\n      ],\n      [\n        \"Vision\",\n        -13.525771141052246\n      ],\n      [\n        \"▁overwhelm\",\n        -13.525773048400879\n      ],\n      [\n        \"▁erweitern\",\n        -13.525959968566895\n      ],\n      [\n        \"skeletal\",\n        -13.525960922241211\n      ],\n      [\n        \"▁terrified\",\n        -13.525960922241211\n      ],\n      [\n        \"aggravate\",\n        -13.525962829589844\n      ],\n      [\n        \"▁Malawi\",\n        -13.525969505310059\n      ],\n      [\n        \"▁neuroscience\",\n        -13.526009559631348\n      ],\n      [\n        \"trecută\",\n        -13.526097297668457\n      ],\n      [\n        \"▁maestr\",\n        -13.52634334564209\n      ],\n      [\n        \"нов\",\n        -13.526555061340332\n      ],\n      [\n        \"▁Cobb\",\n        -13.52667236328125\n      ],\n      [\n        \"▁Schwangerschaft\",\n        -13.526727676391602\n      ],\n      [\n        \"▁internationaux\",\n        -13.526727676391602\n      ],\n      [\n        \"▁entspannen\",\n        -13.526729583740234\n      ],\n      [\n        \"▁Früchte\",\n        -13.52676773071289\n      ],\n      [\n        \"mâine\",\n        -13.526805877685547\n      ],\n      [\n        \"stützt\",\n        -13.526938438415527\n      ],\n      [\n        \"flipped\",\n        -13.527076721191406\n      ],\n      [\n        \"Palatul\",\n        -13.527252197265625\n      ],\n      [\n        \"▁Gérard\",\n        -13.527496337890625\n      ],\n      [\n        \"▁Kensington\",\n        -13.527498245239258\n      ],\n      [\n        \"chargée\",\n        -13.52807331085205\n      ],\n      [\n        \"iolo\",\n        -13.528203964233398\n      ],\n      [\n        \"▁excesiv\",\n        -13.52904987335205\n      ],\n      [\n        \"▁Gymnas\",\n        -13.52962875366211\n      ],\n      [\n        \"▁optimise\",\n        -13.529678344726562\n      ],\n      [\n        \"possibilités\",\n        -13.529717445373535\n      ],\n      [\n        \"▁periculoas\",\n        -13.529810905456543\n      ],\n      [\n        \"mechanical\",\n        -13.529839515686035\n      ],\n      [\n        \"▁confruntă\",\n        -13.529868125915527\n      ],\n      [\n        \"quatrième\",\n        -13.530573844909668\n      ],\n      [\n        \"▁Preservation\",\n        -13.530573844909668\n      ],\n      [\n        \"▁Juventus\",\n        -13.530574798583984\n      ],\n      [\n        \"vorsitzende\",\n        -13.5305757522583\n      ],\n      [\n        \"électora\",\n        -13.530586242675781\n      ],\n      [\n        \"▁fascinant\",\n        -13.53061580657959\n      ],\n      [\n        \"▁lagoon\",\n        -13.530671119689941\n      ],\n      [\n        \"referencing\",\n        -13.53079605102539\n      ],\n      [\n        \"appointed\",\n        -13.530988693237305\n      ],\n      [\n        \"Audible\",\n        -13.531112670898438\n      ],\n      [\n        \"sighted\",\n        -13.531612396240234\n      ],\n      [\n        \"▁gewünscht\",\n        -13.532061576843262\n      ],\n      [\n        \"▁Expedition\",\n        -13.532115936279297\n      ],\n      [\n        \"▁genunchi\",\n        -13.532115936279297\n      ],\n      [\n        \"▁PROVIDE\",\n        -13.53211784362793\n      ],\n      [\n        \"▁rosemary\",\n        -13.532118797302246\n      ],\n      [\n        \"▁cleanliness\",\n        -13.532130241394043\n      ],\n      [\n        \"commanded\",\n        -13.53223991394043\n      ],\n      [\n        \"ältere\",\n        -13.532530784606934\n      ],\n      [\n        \"ност\",\n        -13.532547950744629\n      ],\n      [\n        \"kühlen\",\n        -13.532917976379395\n      ],\n      [\n        \"mettez\",\n        -13.533548355102539\n      ],\n      [\n        \"connaitre\",\n        -13.533661842346191\n      ],\n      [\n        \"Qaeda\",\n        -13.533662796020508\n      ],\n      [\n        \"▁traumhaft\",\n        -13.53366470336914\n      ],\n      [\n        \"kommst\",\n        -13.533666610717773\n      ],\n      [\n        \"▁Abbott\",\n        -13.533669471740723\n      ],\n      [\n        \"▁Fool\",\n        -13.533686637878418\n      ],\n      [\n        \"▁médaill\",\n        -13.533687591552734\n      ],\n      [\n        \"▁genotyp\",\n        -13.533693313598633\n      ],\n      [\n        \"▁Fälle\",\n        -13.53375244140625\n      ],\n      [\n        \"▁actuator\",\n        -13.533843994140625\n      ],\n      [\n        \"CLASS\",\n        -13.534042358398438\n      ],\n      [\n        \"progressively\",\n        -13.534421920776367\n      ],\n      [\n        \"negative\",\n        -13.53469467163086\n      ],\n      [\n        \"bundled\",\n        -13.535009384155273\n      ],\n      [\n        \"▁dezbatere\",\n        -13.535208702087402\n      ],\n      [\n        \"kamagra\",\n        -13.535237312316895\n      ],\n      [\n        \"gardinen\",\n        -13.535250663757324\n      ],\n      [\n        \"unsecured\",\n        -13.535271644592285\n      ],\n      [\n        \"Assisted\",\n        -13.535298347473145\n      ],\n      [\n        \"Gymnasium\",\n        -13.535386085510254\n      ],\n      [\n        \"▁brusc\",\n        -13.535591125488281\n      ],\n      [\n        \"prinzip\",\n        -13.535655975341797\n      ],\n      [\n        \"Torrent\",\n        -13.535964965820312\n      ],\n      [\n        \"Presented\",\n        -13.535967826843262\n      ],\n      [\n        \"▁impressionnant\",\n        -13.53628921508789\n      ],\n      [\n        \"charakter\",\n        -13.536758422851562\n      ],\n      [\n        \"▁Acoustic\",\n        -13.536762237548828\n      ],\n      [\n        \"▁appartient\",\n        -13.536763191223145\n      ],\n      [\n        \"gesteuert\",\n        -13.536879539489746\n      ],\n      [\n        \"▁condiți\",\n        -13.537089347839355\n      ],\n      [\n        \"authentic\",\n        -13.537313461303711\n      ],\n      [\n        \"▁Erholung\",\n        -13.537534713745117\n      ],\n      [\n        \"▁Veranstalter\",\n        -13.537534713745117\n      ],\n      [\n        \"▁Filial\",\n        -13.537665367126465\n      ],\n      [\n        \"ruhigen\",\n        -13.537714958190918\n      ],\n      [\n        \"symptôme\",\n        -13.538311004638672\n      ],\n      [\n        \"▁Efficiency\",\n        -13.538311004638672\n      ],\n      [\n        \"▁stunned\",\n        -13.538311004638672\n      ],\n      [\n        \"▁sympathique\",\n        -13.538311004638672\n      ],\n      [\n        \"Uploaded\",\n        -13.538352966308594\n      ],\n      [\n        \"▁geistig\",\n        -13.538453102111816\n      ],\n      [\n        \"Pläne\",\n        -13.538509368896484\n      ],\n      [\n        \"▁Apartament\",\n        -13.53855037689209\n      ],\n      [\n        \"▁ușoar\",\n        -13.539119720458984\n      ],\n      [\n        \"▁locuinț\",\n        -13.539122581481934\n      ],\n      [\n        \"épouse\",\n        -13.539166450500488\n      ],\n      [\n        \"îngrijire\",\n        -13.539215087890625\n      ],\n      [\n        \"Obtain\",\n        -13.539261817932129\n      ],\n      [\n        \"Detect\",\n        -13.539590835571289\n      ],\n      [\n        \"▁Dumitru\",\n        -13.539865493774414\n      ],\n      [\n        \"▁refrigeration\",\n        -13.539865493774414\n      ],\n      [\n        \"ärztliche\",\n        -13.539881706237793\n      ],\n      [\n        \"efficiency\",\n        -13.540032386779785\n      ],\n      [\n        \"▁snail\",\n        -13.540328979492188\n      ],\n      [\n        \"gelände\",\n        -13.540419578552246\n      ],\n      [\n        \"expected\",\n        -13.540620803833008\n      ],\n      [\n        \"kompetenz\",\n        -13.540643692016602\n      ],\n      [\n        \"▁sfânt\",\n        -13.540643692016602\n      ],\n      [\n        \"océan\",\n        -13.540685653686523\n      ],\n      [\n        \"▁Plasma\",\n        -13.540717124938965\n      ],\n      [\n        \"▁vulgar\",\n        -13.54075813293457\n      ],\n      [\n        \"▁slump\",\n        -13.541083335876465\n      ],\n      [\n        \"autoimmune\",\n        -13.541422843933105\n      ],\n      [\n        \"▁Cynthia\",\n        -13.541422843933105\n      ],\n      [\n        \"▁dimineaţ\",\n        -13.541422843933105\n      ],\n      [\n        \"▁whimsical\",\n        -13.541422843933105\n      ],\n      [\n        \"▁evaporate\",\n        -13.541488647460938\n      ],\n      [\n        \"▁calorii\",\n        -13.54186725616455\n      ],\n      [\n        \"portion\",\n        -13.54187297821045\n      ],\n      [\n        \"crowned\",\n        -13.5419282913208\n      ],\n      [\n        \"▁întâmpin\",\n        -13.54220199584961\n      ],\n      [\n        \"▁Centenar\",\n        -13.542620658874512\n      ],\n      [\n        \"▁Genehmigung\",\n        -13.54298210144043\n      ],\n      [\n        \"▁Wahrscheinlich\",\n        -13.54298210144043\n      ],\n      [\n        \"▁accompaniment\",\n        -13.54298210144043\n      ],\n      [\n        \"▁Negoti\",\n        -13.542984962463379\n      ],\n      [\n        \"▁Vanilla\",\n        -13.543000221252441\n      ],\n      [\n        \"▁Receiv\",\n        -13.543014526367188\n      ],\n      [\n        \"▁bestseller\",\n        -13.543052673339844\n      ],\n      [\n        \"tendons\",\n        -13.543069839477539\n      ],\n      [\n        \"Reilly\",\n        -13.543192863464355\n      ],\n      [\n        \"▁refroidi\",\n        -13.543731689453125\n      ],\n      [\n        \"▁überrascht\",\n        -13.543763160705566\n      ],\n      [\n        \"Gitarre\",\n        -13.543828964233398\n      ],\n      [\n        \"wände\",\n        -13.544173240661621\n      ],\n      [\n        \"veniturile\",\n        -13.544321060180664\n      ],\n      [\n        \"▁portofoliu\",\n        -13.54454517364502\n      ],\n      [\n        \"▁temporaire\",\n        -13.54454517364502\n      ],\n      [\n        \"▁Dawson\",\n        -13.544546127319336\n      ],\n      [\n        \"foreseeable\",\n        -13.544547080993652\n      ],\n      [\n        \"▁Gastgeber\",\n        -13.545344352722168\n      ],\n      [\n        \"Access\",\n        -13.545432090759277\n      ],\n      [\n        \"▁Defender\",\n        -13.545537948608398\n      ],\n      [\n        \"▁Quarry\",\n        -13.546109199523926\n      ],\n      [\n        \"▁trolley\",\n        -13.546110153198242\n      ],\n      [\n        \"▁carburant\",\n        -13.546111106872559\n      ],\n      [\n        \"▁titluri\",\n        -13.54631233215332\n      ],\n      [\n        \"comparatively\",\n        -13.546327590942383\n      ],\n      [\n        \"nachfolgend\",\n        -13.54659652709961\n      ],\n      [\n        \"anfang\",\n        -13.546740531921387\n      ],\n      [\n        \"▁faszinieren\",\n        -13.546891212463379\n      ],\n      [\n        \"trăiesc\",\n        -13.547082901000977\n      ],\n      [\n        \"▁Travail\",\n        -13.547159194946289\n      ],\n      [\n        \"Contact\",\n        -13.547235488891602\n      ],\n      [\n        \"fashion\",\n        -13.547245025634766\n      ],\n      [\n        \"▁épais\",\n        -13.547585487365723\n      ],\n      [\n        \"plattform\",\n        -13.547676086425781\n      ],\n      [\n        \"ventricular\",\n        -13.547677040100098\n      ],\n      [\n        \"▁Portsmouth\",\n        -13.547677993774414\n      ],\n      [\n        \"▁împărat\",\n        -13.54767894744873\n      ],\n      [\n        \"▁vândut\",\n        -13.547698020935059\n      ],\n      [\n        \"▁evidenț\",\n        -13.547708511352539\n      ],\n      [\n        \"Purchasing\",\n        -13.547877311706543\n      ],\n      [\n        \"discerning\",\n        -13.54804801940918\n      ],\n      [\n        \"odonti\",\n        -13.548080444335938\n      ],\n      [\n        \"distilled\",\n        -13.548316955566406\n      ],\n      [\n        \"saveur\",\n        -13.548447608947754\n      ],\n      [\n        \"▁récompense\",\n        -13.54845905303955\n      ],\n      [\n        \"confortul\",\n        -13.548552513122559\n      ],\n      [\n        \"arbeitete\",\n        -13.548787117004395\n      ],\n      [\n        \"partenerii\",\n        -13.549064636230469\n      ],\n      [\n        \"mirrored\",\n        -13.54908561706543\n      ],\n      [\n        \"Dienstleister\",\n        -13.549243927001953\n      ],\n      [\n        \"▁Jakarta\",\n        -13.549243927001953\n      ],\n      [\n        \"▁WEBSITE\",\n        -13.549243927001953\n      ],\n      [\n        \"▁Acquisition\",\n        -13.549262046813965\n      ],\n      [\n        \"▁Miranda\",\n        -13.549287796020508\n      ],\n      [\n        \"Syndic\",\n        -13.549356460571289\n      ],\n      [\n        \"▁stadiu\",\n        -13.549450874328613\n      ],\n      [\n        \"▁Parchet\",\n        -13.549498558044434\n      ],\n      [\n        \"Générale\",\n        -13.54954719543457\n      ],\n      [\n        \"▁jpl\",\n        -13.549579620361328\n      ],\n      [\n        \"attainable\",\n        -13.549949645996094\n      ],\n      [\n        \"École\",\n        -13.550041198730469\n      ],\n      [\n        \"Sphere\",\n        -13.550538063049316\n      ],\n      [\n        \"obtainable\",\n        -13.550592422485352\n      ],\n      [\n        \"▁Sapphire\",\n        -13.55081558227539\n      ],\n      [\n        \"▁aérienne\",\n        -13.55081558227539\n      ],\n      [\n        \"▁bărbați\",\n        -13.55081558227539\n      ],\n      [\n        \"▁irritating\",\n        -13.55081558227539\n      ],\n      [\n        \"▁ultraviolet\",\n        -13.550816535949707\n      ],\n      [\n        \"untouched\",\n        -13.550817489624023\n      ],\n      [\n        \"▁Ramsey\",\n        -13.550819396972656\n      ],\n      [\n        \"titres\",\n        -13.551087379455566\n      ],\n      [\n        \"▁Coordinat\",\n        -13.551218032836914\n      ],\n      [\n        \"believable\",\n        -13.551358222961426\n      ],\n      [\n        \"▁Grundsätzlich\",\n        -13.551602363586426\n      ],\n      [\n        \"▁konsequent\",\n        -13.551602363586426\n      ],\n      [\n        \"▁Cerceta\",\n        -13.551909446716309\n      ],\n      [\n        \"dirigé\",\n        -13.552116394042969\n      ],\n      [\n        \"▁disturb\",\n        -13.552151679992676\n      ],\n      [\n        \"conciliation\",\n        -13.552210807800293\n      ],\n      [\n        \"▁gelöscht\",\n        -13.552390098571777\n      ],\n      [\n        \"▁sauvegarde\",\n        -13.552391052246094\n      ],\n      [\n        \"▁cavities\",\n        -13.552393913269043\n      ],\n      [\n        \"stunde\",\n        -13.55241584777832\n      ],\n      [\n        \"▁foloseasc\",\n        -13.552430152893066\n      ],\n      [\n        \"▁simpati\",\n        -13.552873611450195\n      ],\n      [\n        \"Chacun\",\n        -13.553032875061035\n      ],\n      [\n        \"adversaire\",\n        -13.553178787231445\n      ],\n      [\n        \"Eigentlich\",\n        -13.55319881439209\n      ],\n      [\n        \"defense\",\n        -13.553593635559082\n      ],\n      [\n        \"consider\",\n        -13.553672790527344\n      ],\n      [\n        \"▁Trinidad\",\n        -13.553966522216797\n      ],\n      [\n        \"▁strategist\",\n        -13.553966522216797\n      ],\n      [\n        \"distorted\",\n        -13.553967475891113\n      ],\n      [\n        \"▁hypothetical\",\n        -13.553967475891113\n      ],\n      [\n        \"▁ramburs\",\n        -13.55396842956543\n      ],\n      [\n        \"▁Mallorca\",\n        -13.553970336914062\n      ],\n      [\n        \"▁Domino\",\n        -13.554018020629883\n      ],\n      [\n        \"arrondissement\",\n        -13.554756164550781\n      ],\n      [\n        \"konferenz\",\n        -13.554756164550781\n      ],\n      [\n        \"▁Beleuchtung\",\n        -13.554756164550781\n      ],\n      [\n        \"aggregat\",\n        -13.55484676361084\n      ],\n      [\n        \"subsidize\",\n        -13.554896354675293\n      ],\n      [\n        \"shri\",\n        -13.555503845214844\n      ],\n      [\n        \"Kaufentscheidung\",\n        -13.555545806884766\n      ],\n      [\n        \"▁Hernandez\",\n        -13.555545806884766\n      ],\n      [\n        \"▁Upholster\",\n        -13.555546760559082\n      ],\n      [\n        \"atlantic\",\n        -13.555614471435547\n      ],\n      [\n        \"▁locuinte\",\n        -13.555652618408203\n      ],\n      [\n        \"integrates\",\n        -13.55583381652832\n      ],\n      [\n        \"ewusst\",\n        -13.555878639221191\n      ],\n      [\n        \"▁Avocado\",\n        -13.556337356567383\n      ],\n      [\n        \"Decorative\",\n        -13.557014465332031\n      ],\n      [\n        \"▁Corinthians\",\n        -13.557127952575684\n      ],\n      [\n        \"▁clădire\",\n        -13.557127952575684\n      ],\n      [\n        \"▁plomberie\",\n        -13.557127952575684\n      ],\n      [\n        \"vases\",\n        -13.557143211364746\n      ],\n      [\n        \"▁crippl\",\n        -13.557247161865234\n      ],\n      [\n        \"cluttered\",\n        -13.557487487792969\n      ],\n      [\n        \"departed\",\n        -13.557807922363281\n      ],\n      [\n        \"▁entscheidet\",\n        -13.5579195022583\n      ],\n      [\n        \"Certaine\",\n        -13.558243751525879\n      ],\n      [\n        \"honda\",\n        -13.558294296264648\n      ],\n      [\n        \"triggering\",\n        -13.558527946472168\n      ],\n      [\n        \"▁Erdogan\",\n        -13.558712005615234\n      ],\n      [\n        \"▁Widerstand\",\n        -13.558712005615234\n      ],\n      [\n        \"▁Bhutan\",\n        -13.558713912963867\n      ],\n      [\n        \"▁ascunde\",\n        -13.558736801147461\n      ],\n      [\n        \"▁shading\",\n        -13.558748245239258\n      ],\n      [\n        \"behavioural\",\n        -13.559172630310059\n      ],\n      [\n        \"▁transfér\",\n        -13.55960750579834\n      ],\n      [\n        \"versichert\",\n        -13.559623718261719\n      ],\n      [\n        \"▁vinovat\",\n        -13.559646606445312\n      ],\n      [\n        \"▁airfare\",\n        -13.560142517089844\n      ],\n      [\n        \"▁simplistic\",\n        -13.56030559539795\n      ],\n      [\n        \"▁Asigura\",\n        -13.560320854187012\n      ],\n      [\n        \"Chauffe\",\n        -13.560480117797852\n      ],\n      [\n        \"scrisă\",\n        -13.560585975646973\n      ],\n      [\n        \"trouvez\",\n        -13.560702323913574\n      ],\n      [\n        \"greasy\",\n        -13.560709953308105\n      ],\n      [\n        \"bottled\",\n        -13.560809135437012\n      ],\n      [\n        \"grouped\",\n        -13.560934066772461\n      ],\n      [\n        \"▁beeinflussen\",\n        -13.561092376708984\n      ],\n      [\n        \"▁chronological\",\n        -13.561114311218262\n      ],\n      [\n        \"(2000)\",\n        -13.56127643585205\n      ],\n      [\n        \"sheltered\",\n        -13.561298370361328\n      ],\n      [\n        \"Historically\",\n        -13.561931610107422\n      ],\n      [\n        \"piled\",\n        -13.562012672424316\n      ],\n      [\n        \"publicate\",\n        -13.562378883361816\n      ],\n      [\n        \"▁étudié\",\n        -13.56268310546875\n      ],\n      [\n        \"▁vertraut\",\n        -13.562688827514648\n      ],\n      [\n        \"▁Anpassung\",\n        -13.562697410583496\n      ],\n      [\n        \"cifra\",\n        -13.562705993652344\n      ],\n      [\n        \"▁recueil\",\n        -13.562762260437012\n      ],\n      [\n        \"enforceable\",\n        -13.563183784484863\n      ],\n      [\n        \"Distinguished\",\n        -13.56347942352295\n      ],\n      [\n        \"Empfänger\",\n        -13.56347942352295\n      ],\n      [\n        \"▁Acrylic\",\n        -13.56347942352295\n      ],\n      [\n        \"▁Encyclopedia\",\n        -13.56347942352295\n      ],\n      [\n        \"▁proaspete\",\n        -13.56347942352295\n      ],\n      [\n        \"▁unrealistic\",\n        -13.56347942352295\n      ],\n      [\n        \"▁Assignment\",\n        -13.563481330871582\n      ],\n      [\n        \"▁incubator\",\n        -13.563491821289062\n      ],\n      [\n        \"▁unilateral\",\n        -13.563501358032227\n      ],\n      [\n        \"elasticity\",\n        -13.564398765563965\n      ],\n      [\n        \"amintim\",\n        -13.564475059509277\n      ],\n      [\n        \"fournit\",\n        -13.564553260803223\n      ],\n      [\n        \"semblent\",\n        -13.564763069152832\n      ],\n      [\n        \"▁$69.\",\n        -13.56496524810791\n      ],\n      [\n        \"▁prominence\",\n        -13.56507396697998\n      ],\n      [\n        \"Übertragung\",\n        -13.565075874328613\n      ],\n      [\n        \"▁2014-11-\",\n        -13.565075874328613\n      ],\n      [\n        \"▁Giurgiu\",\n        -13.565104484558105\n      ],\n      [\n        \"étendue\",\n        -13.565123558044434\n      ],\n      [\n        \"ceputul\",\n        -13.565187454223633\n      ],\n      [\n        \"Schwierigkeiten\",\n        -13.565872192382812\n      ],\n      [\n        \"▁subtract\",\n        -13.565881729125977\n      ],\n      [\n        \"▁gesichert\",\n        -13.56589126586914\n      ],\n      [\n        \"▁uimit\",\n        -13.565925598144531\n      ],\n      [\n        \"▁mensuel\",\n        -13.565967559814453\n      ],\n      [\n        \"Vorgaben\",\n        -13.566215515136719\n      ],\n      [\n        \"▁legitimacy\",\n        -13.566670417785645\n      ],\n      [\n        \"▁Kendall\",\n        -13.566673278808594\n      ],\n      [\n        \"▁détach\",\n        -13.566790580749512\n      ],\n      [\n        \"▁kennenlernen\",\n        -13.567469596862793\n      ],\n      [\n        \"▁gewöhnlich\",\n        -13.56747055053711\n      ],\n      [\n        \"Octav\",\n        -13.567917823791504\n      ],\n      [\n        \"responsive\",\n        -13.568169593811035\n      ],\n      [\n        \"▁Mängel\",\n        -13.568269729614258\n      ],\n      [\n        \"▁mișcare\",\n        -13.568269729614258\n      ],\n      [\n        \"▁ludique\",\n        -13.568270683288574\n      ],\n      [\n        \"▁Exeter\",\n        -13.568324089050293\n      ],\n      [\n        \"▁respins\",\n        -13.569114685058594\n      ],\n      [\n        \"oraşului\",\n        -13.569173812866211\n      ],\n      [\n        \"▁sfârşit\",\n        -13.56949520111084\n      ],\n      [\n        \"BUSINESS\",\n        -13.56987190246582\n      ],\n      [\n        \"illustrating\",\n        -13.56987190246582\n      ],\n      [\n        \"▁Tottenham\",\n        -13.56987190246582\n      ],\n      [\n        \"▁pruning\",\n        -13.569886207580566\n      ],\n      [\n        \"▁Înainte\",\n        -13.569904327392578\n      ],\n      [\n        \"▁interesel\",\n        -13.570096969604492\n      ],\n      [\n        \"discovered\",\n        -13.57031536102295\n      ],\n      [\n        \"(0)\",\n        -13.570572853088379\n      ],\n      [\n        \"▁Bewerber\",\n        -13.570673942565918\n      ],\n      [\n        \"▁DESIGN\",\n        -13.570673942565918\n      ],\n      [\n        \"▁Orientierung\",\n        -13.570686340332031\n      ],\n      [\n        \"library\",\n        -13.571041107177734\n      ],\n      [\n        \"cheltuielile\",\n        -13.571419715881348\n      ],\n      [\n        \"▁Canterbury\",\n        -13.571475982666016\n      ],\n      [\n        \"▁intellectuelle\",\n        -13.571477890014648\n      ],\n      [\n        \"▁amalgam\",\n        -13.571497917175293\n      ],\n      [\n        \"▁Toledo\",\n        -13.57150650024414\n      ],\n      [\n        \"gezahlt\",\n        -13.571531295776367\n      ],\n      [\n        \"Veronica\",\n        -13.571659088134766\n      ],\n      [\n        \"deleting\",\n        -13.571946144104004\n      ],\n      [\n        \"▁Merlin\",\n        -13.572442054748535\n      ],\n      [\n        \"▁opérationnel\",\n        -13.572554588317871\n      ],\n      [\n        \"schmutz\",\n        -13.572568893432617\n      ],\n      [\n        \"hyroid\",\n        -13.57279109954834\n      ],\n      [\n        \"▁Compatible\",\n        -13.57308292388916\n      ],\n      [\n        \"▁Leopard\",\n        -13.57308292388916\n      ],\n      [\n        \"▁cylindrical\",\n        -13.57308292388916\n      ],\n      [\n        \"▁terrestrial\",\n        -13.57308292388916\n      ],\n      [\n        \"conferencing\",\n        -13.573088645935059\n      ],\n      [\n        \"▁Variety\",\n        -13.573097229003906\n      ],\n      [\n        \"▁Screw\",\n        -13.573164939880371\n      ],\n      [\n        \"character\",\n        -13.573637962341309\n      ],\n      [\n        \"shortened\",\n        -13.573643684387207\n      ],\n      [\n        \"▁întrerup\",\n        -13.573736190795898\n      ],\n      [\n        \"freude\",\n        -13.573884010314941\n      ],\n      [\n        \"▁dezbateri\",\n        -13.573887825012207\n      ],\n      [\n        \"viteză\",\n        -13.574563026428223\n      ],\n      [\n        \"formațiile\",\n        -13.574600219726562\n      ],\n      [\n        \"▁responsibly\",\n        -13.574692726135254\n      ],\n      [\n        \"Dimensiuni\",\n        -13.574695587158203\n      ],\n      [\n        \"Arrangement\",\n        -13.57469654083252\n      ],\n      [\n        \"▁Leisure\",\n        -13.574712753295898\n      ],\n      [\n        \"escaping\",\n        -13.5750732421875\n      ],\n      [\n        \"flexion\",\n        -13.575104713439941\n      ],\n      [\n        \"▁religieuse\",\n        -13.575308799743652\n      ],\n      [\n        \"crystalline\",\n        -13.575457572937012\n      ],\n      [\n        \"▁clasp\",\n        -13.575520515441895\n      ],\n      [\n        \"festigt\",\n        -13.57554817199707\n      ],\n      [\n        \"▁trouvai\",\n        -13.57596206665039\n      ],\n      [\n        \"cutaneous\",\n        -13.576305389404297\n      ],\n      [\n        \"▁carcinoma\",\n        -13.576305389404297\n      ],\n      [\n        \"▁juxtapos\",\n        -13.576305389404297\n      ],\n      [\n        \"assemblage\",\n        -13.576306343078613\n      ],\n      [\n        \"▁Messiah\",\n        -13.576306343078613\n      ],\n      [\n        \"▁Sleeve\",\n        -13.576306343078613\n      ],\n      [\n        \"▁șofer\",\n        -13.576386451721191\n      ],\n      [\n        \"/05/\",\n        -13.57666301727295\n      ],\n      [\n        \"▁expoziți\",\n        -13.576703071594238\n      ],\n      [\n        \"▁pătrun\",\n        -13.577343940734863\n      ],\n      [\n        \"▁Lydia\",\n        -13.57739543914795\n      ],\n      [\n        \"▁grădini\",\n        -13.577919006347656\n      ],\n      [\n        \"▁toothpaste\",\n        -13.577919960021973\n      ],\n      [\n        \"ordained\",\n        -13.577921867370605\n      ],\n      [\n        \"▁Renovation\",\n        -13.577922821044922\n      ],\n      [\n        \"voicing\",\n        -13.578327178955078\n      ],\n      [\n        \"président\",\n        -13.578595161437988\n      ],\n      [\n        \"▁gestartet\",\n        -13.578728675842285\n      ],\n      [\n        \"Multi\",\n        -13.579121589660645\n      ],\n      [\n        \"itinéraire\",\n        -13.579537391662598\n      ],\n      [\n        \"▁influenza\",\n        -13.579537391662598\n      ],\n      [\n        \"▁psychiatrist\",\n        -13.579537391662598\n      ],\n      [\n        \"▁schizophrenia\",\n        -13.579537391662598\n      ],\n      [\n        \"▁Magnolia\",\n        -13.57953929901123\n      ],\n      [\n        \"▁Scottsdale\",\n        -13.579541206359863\n      ],\n      [\n        \"▁interessieren\",\n        -13.579548835754395\n      ],\n      [\n        \"▁asfalt\",\n        -13.579643249511719\n      ],\n      [\n        \"▁Journalism\",\n        -13.57977294921875\n      ],\n      [\n        \"Multe\",\n        -13.580089569091797\n      ],\n      [\n        \"Westfalen\",\n        -13.580347061157227\n      ],\n      [\n        \"▁Vorschriften\",\n        -13.580348014831543\n      ],\n      [\n        \"Angleterre\",\n        -13.58034896850586\n      ],\n      [\n        \"sustainable\",\n        -13.580354690551758\n      ],\n      [\n        \"▁Retour\",\n        -13.580589294433594\n      ],\n      [\n        \"▁pâr\",\n        -13.5809965133667\n      ],\n      [\n        \"steigert\",\n        -13.581120491027832\n      ],\n      [\n        \"▁AMAZING\",\n        -13.581157684326172\n      ],\n      [\n        \"▁turbulent\",\n        -13.581157684326172\n      ],\n      [\n        \"costing\",\n        -13.58155345916748\n      ],\n      [\n        \"▁Carolyn\",\n        -13.581634521484375\n      ],\n      [\n        \"utti\",\n        -13.581802368164062\n      ],\n      [\n        \"dürftig\",\n        -13.581968307495117\n      ],\n      [\n        \"Keep\",\n        -13.582038879394531\n      ],\n      [\n        \"▁Théâtre\",\n        -13.582780838012695\n      ],\n      [\n        \"▁combustibil\",\n        -13.582780838012695\n      ],\n      [\n        \"▁halloween\",\n        -13.582780838012695\n      ],\n      [\n        \"▁emulator\",\n        -13.582785606384277\n      ],\n      [\n        \"▁povești\",\n        -13.582785606384277\n      ],\n      [\n        \"broyeur\",\n        -13.582810401916504\n      ],\n      [\n        \"▁émerg\",\n        -13.582927703857422\n      ],\n      [\n        \"overwhelmingly\",\n        -13.583025932312012\n      ],\n      [\n        \"regulă\",\n        -13.583124160766602\n      ],\n      [\n        \"goutte\",\n        -13.583125114440918\n      ],\n      [\n        \"▁Fertigung\",\n        -13.583593368530273\n      ],\n      [\n        \"constituted\",\n        -13.584304809570312\n      ],\n      [\n        \"▁QuickBooks\",\n        -13.584406852722168\n      ],\n      [\n        \"▁genealogy\",\n        -13.584407806396484\n      ],\n      [\n        \"▁laundering\",\n        -13.584432601928711\n      ],\n      [\n        \"▁échéan\",\n        -13.584491729736328\n      ],\n      [\n        \"Account\",\n        -13.584601402282715\n      ],\n      [\n        \"oyons\",\n        -13.584792137145996\n      ],\n      [\n        \"nitro\",\n        -13.584905624389648\n      ],\n      [\n        \"▁corespund\",\n        -13.585219383239746\n      ],\n      [\n        \"▁suggér\",\n        -13.58527660369873\n      ],\n      [\n        \"manipulated\",\n        -13.585348129272461\n      ],\n      [\n        \"deseori\",\n        -13.585817337036133\n      ],\n      [\n        \"permeabil\",\n        -13.585912704467773\n      ],\n      [\n        \"Australia\",\n        -13.58594799041748\n      ],\n      [\n        \"▁Erasmus\",\n        -13.586034774780273\n      ],\n      [\n        \"▁disrespect\",\n        -13.586034774780273\n      ],\n      [\n        \"▁trimestre\",\n        -13.586038589477539\n      ],\n      [\n        \"▁emanat\",\n        -13.586103439331055\n      ],\n      [\n        \"Schraub\",\n        -13.58624267578125\n      ],\n      [\n        \"distinctly\",\n        -13.586319923400879\n      ],\n      [\n        \"Germain\",\n        -13.586637496948242\n      ],\n      [\n        \"▁pedepse\",\n        -13.5868501663208\n      ],\n      [\n        \"réglage\",\n        -13.5868558883667\n      ],\n      [\n        \"făcute\",\n        -13.587308883666992\n      ],\n      [\n        \"▁garanteaz\",\n        -13.587434768676758\n      ],\n      [\n        \"▁unterlieg\",\n        -13.587701797485352\n      ],\n      [\n        \"▁cheddar\",\n        -13.587712287902832\n      ],\n      [\n        \"▁refugi\",\n        -13.587756156921387\n      ],\n      [\n        \"▁inférieur\",\n        -13.587836265563965\n      ],\n      [\n        \"dimension\",\n        -13.588440895080566\n      ],\n      [\n        \"▁erkennt\",\n        -13.588570594787598\n      ],\n      [\n        \"amitié\",\n        -13.588632583618164\n      ],\n      [\n        \"▁predominant\",\n        -13.588680267333984\n      ],\n      [\n        \"nourishe\",\n        -13.588800430297852\n      ],\n      [\n        \"exerce\",\n        -13.588907241821289\n      ],\n      [\n        \"▁disguise\",\n        -13.589225769042969\n      ],\n      [\n        \"▁traditi\",\n        -13.589289665222168\n      ],\n      [\n        \"▁Intellectual\",\n        -13.5892972946167\n      ],\n      [\n        \"▁imunitar\",\n        -13.589299201965332\n      ],\n      [\n        \"▁Cushion\",\n        -13.589300155639648\n      ],\n      [\n        \"▁erwachsene\",\n        -13.589517593383789\n      ],\n      [\n        \"▁Internațional\",\n        -13.590115547180176\n      ],\n      [\n        \"<extra_id_99>\",\n        0.0\n      ],\n      [\n        \"<extra_id_98>\",\n        0.0\n      ],\n      [\n        \"<extra_id_97>\",\n        0.0\n      ],\n      [\n        \"<extra_id_96>\",\n        0.0\n      ],\n      [\n        \"<extra_id_95>\",\n        0.0\n      ],\n      [\n        \"<extra_id_94>\",\n        0.0\n      ],\n      [\n        \"<extra_id_93>\",\n        0.0\n      ],\n      [\n        \"<extra_id_92>\",\n        0.0\n      ],\n      [\n        \"<extra_id_91>\",\n        0.0\n      ],\n      [\n        \"<extra_id_90>\",\n        0.0\n      ],\n      [\n        \"<extra_id_89>\",\n        0.0\n      ],\n      [\n        \"<extra_id_88>\",\n        0.0\n      ],\n      [\n        \"<extra_id_87>\",\n        0.0\n      ],\n      [\n        \"<extra_id_86>\",\n        0.0\n      ],\n      [\n        \"<extra_id_85>\",\n        0.0\n      ],\n      [\n        \"<extra_id_84>\",\n        0.0\n      ],\n      [\n        \"<extra_id_83>\",\n        0.0\n      ],\n      [\n        \"<extra_id_82>\",\n        0.0\n      ],\n      [\n        \"<extra_id_81>\",\n        0.0\n      ],\n      [\n        \"<extra_id_80>\",\n        0.0\n      ],\n      [\n        \"<extra_id_79>\",\n        0.0\n      ],\n      [\n        \"<extra_id_78>\",\n        0.0\n      ],\n      [\n        \"<extra_id_77>\",\n        0.0\n      ],\n      [\n        \"<extra_id_76>\",\n        0.0\n      ],\n      [\n        \"<extra_id_75>\",\n        0.0\n      ],\n      [\n        \"<extra_id_74>\",\n        0.0\n      ],\n      [\n        \"<extra_id_73>\",\n        0.0\n      ],\n      [\n        \"<extra_id_72>\",\n        0.0\n      ],\n      [\n        \"<extra_id_71>\",\n        0.0\n      ],\n      [\n        \"<extra_id_70>\",\n        0.0\n      ],\n      [\n        \"<extra_id_69>\",\n        0.0\n      ],\n      [\n        \"<extra_id_68>\",\n        0.0\n      ],\n      [\n        \"<extra_id_67>\",\n        0.0\n      ],\n      [\n        \"<extra_id_66>\",\n        0.0\n      ],\n      [\n        \"<extra_id_65>\",\n        0.0\n      ],\n      [\n        \"<extra_id_64>\",\n        0.0\n      ],\n      [\n        \"<extra_id_63>\",\n        0.0\n      ],\n      [\n        \"<extra_id_62>\",\n        0.0\n      ],\n      [\n        \"<extra_id_61>\",\n        0.0\n      ],\n      [\n        \"<extra_id_60>\",\n        0.0\n      ],\n      [\n        \"<extra_id_59>\",\n        0.0\n      ],\n      [\n        \"<extra_id_58>\",\n        0.0\n      ],\n      [\n        \"<extra_id_57>\",\n        0.0\n      ],\n      [\n        \"<extra_id_56>\",\n        0.0\n      ],\n      [\n        \"<extra_id_55>\",\n        0.0\n      ],\n      [\n        \"<extra_id_54>\",\n        0.0\n      ],\n      [\n        \"<extra_id_53>\",\n        0.0\n      ],\n      [\n        \"<extra_id_52>\",\n        0.0\n      ],\n      [\n        \"<extra_id_51>\",\n        0.0\n      ],\n      [\n        \"<extra_id_50>\",\n        0.0\n      ],\n      [\n        \"<extra_id_49>\",\n        0.0\n      ],\n      [\n        \"<extra_id_48>\",\n        0.0\n      ],\n      [\n        \"<extra_id_47>\",\n        0.0\n      ],\n      [\n        \"<extra_id_46>\",\n        0.0\n      ],\n      [\n        \"<extra_id_45>\",\n        0.0\n      ],\n      [\n        \"<extra_id_44>\",\n        0.0\n      ],\n      [\n        \"<extra_id_43>\",\n        0.0\n      ],\n      [\n        \"<extra_id_42>\",\n        0.0\n      ],\n      [\n        \"<extra_id_41>\",\n        0.0\n      ],\n      [\n        \"<extra_id_40>\",\n        0.0\n      ],\n      [\n        \"<extra_id_39>\",\n        0.0\n      ],\n      [\n        \"<extra_id_38>\",\n        0.0\n      ],\n      [\n        \"<extra_id_37>\",\n        0.0\n      ],\n      [\n        \"<extra_id_36>\",\n        0.0\n      ],\n      [\n        \"<extra_id_35>\",\n        0.0\n      ],\n      [\n        \"<extra_id_34>\",\n        0.0\n      ],\n      [\n        \"<extra_id_33>\",\n        0.0\n      ],\n      [\n        \"<extra_id_32>\",\n        0.0\n      ],\n      [\n        \"<extra_id_31>\",\n        0.0\n      ],\n      [\n        \"<extra_id_30>\",\n        0.0\n      ],\n      [\n        \"<extra_id_29>\",\n        0.0\n      ],\n      [\n        \"<extra_id_28>\",\n        0.0\n      ],\n      [\n        \"<extra_id_27>\",\n        0.0\n      ],\n      [\n        \"<extra_id_26>\",\n        0.0\n      ],\n      [\n        \"<extra_id_25>\",\n        0.0\n      ],\n      [\n        \"<extra_id_24>\",\n        0.0\n      ],\n      [\n        \"<extra_id_23>\",\n        0.0\n      ],\n      [\n        \"<extra_id_22>\",\n        0.0\n      ],\n      [\n        \"<extra_id_21>\",\n        0.0\n      ],\n      [\n        \"<extra_id_20>\",\n        0.0\n      ],\n      [\n        \"<extra_id_19>\",\n        0.0\n      ],\n      [\n        \"<extra_id_18>\",\n        0.0\n      ],\n      [\n        \"<extra_id_17>\",\n        0.0\n      ],\n      [\n        \"<extra_id_16>\",\n        0.0\n      ],\n      [\n        \"<extra_id_15>\",\n        0.0\n      ],\n      [\n        \"<extra_id_14>\",\n        0.0\n      ],\n      [\n        \"<extra_id_13>\",\n        0.0\n      ],\n      [\n        \"<extra_id_12>\",\n        0.0\n      ],\n      [\n        \"<extra_id_11>\",\n        0.0\n      ],\n      [\n        \"<extra_id_10>\",\n        0.0\n      ],\n      [\n        \"<extra_id_9>\",\n        0.0\n      ],\n      [\n        \"<extra_id_8>\",\n        0.0\n      ],\n      [\n        \"<extra_id_7>\",\n        0.0\n      ],\n      [\n        \"<extra_id_6>\",\n        0.0\n      ],\n      [\n        \"<extra_id_5>\",\n        0.0\n      ],\n      [\n        \"<extra_id_4>\",\n        0.0\n      ],\n      [\n        \"<extra_id_3>\",\n        0.0\n      ],\n      [\n        \"<extra_id_2>\",\n        0.0\n      ],\n      [\n        \"<extra_id_1>\",\n        0.0\n      ],\n      [\n        \"<extra_id_0>\",\n        0.0\n      ]\n    ],\n    \"byte_fallback\": false\n  }\n}\n"
  },
  {
    "path": "configs/sd3/tokenizer_3/tokenizer_config.json",
    "content": "{\n  \"add_prefix_space\": true,\n  \"added_tokens_decoder\": {\n    \"0\": {\n      \"content\": \"<pad>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"1\": {\n      \"content\": \"</s>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"2\": {\n      \"content\": \"<unk>\",\n      \"lstrip\": false,\n      \"normalized\": false,\n      \"rstrip\": false,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32000\": {\n      \"content\": \"<extra_id_99>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32001\": {\n      \"content\": \"<extra_id_98>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32002\": {\n      \"content\": \"<extra_id_97>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32003\": {\n      \"content\": \"<extra_id_96>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32004\": {\n      \"content\": \"<extra_id_95>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32005\": {\n      \"content\": \"<extra_id_94>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32006\": {\n      \"content\": \"<extra_id_93>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32007\": {\n      \"content\": \"<extra_id_92>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32008\": {\n      \"content\": \"<extra_id_91>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32009\": {\n      \"content\": \"<extra_id_90>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32010\": {\n      \"content\": \"<extra_id_89>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32011\": {\n      \"content\": \"<extra_id_88>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32012\": {\n      \"content\": \"<extra_id_87>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32013\": {\n      \"content\": \"<extra_id_86>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32014\": {\n      \"content\": \"<extra_id_85>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32015\": {\n      \"content\": \"<extra_id_84>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32016\": {\n      \"content\": \"<extra_id_83>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32017\": {\n      \"content\": \"<extra_id_82>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32018\": {\n      \"content\": \"<extra_id_81>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32019\": {\n      \"content\": \"<extra_id_80>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32020\": {\n      \"content\": \"<extra_id_79>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32021\": {\n      \"content\": \"<extra_id_78>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32022\": {\n      \"content\": \"<extra_id_77>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32023\": {\n      \"content\": \"<extra_id_76>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32024\": {\n      \"content\": \"<extra_id_75>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32025\": {\n      \"content\": \"<extra_id_74>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32026\": {\n      \"content\": \"<extra_id_73>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32027\": {\n      \"content\": \"<extra_id_72>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32028\": {\n      \"content\": \"<extra_id_71>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32029\": {\n      \"content\": \"<extra_id_70>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32030\": {\n      \"content\": \"<extra_id_69>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32031\": {\n      \"content\": \"<extra_id_68>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32032\": {\n      \"content\": \"<extra_id_67>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32033\": {\n      \"content\": \"<extra_id_66>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32034\": {\n      \"content\": \"<extra_id_65>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32035\": {\n      \"content\": \"<extra_id_64>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32036\": {\n      \"content\": \"<extra_id_63>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32037\": {\n      \"content\": \"<extra_id_62>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32038\": {\n      \"content\": \"<extra_id_61>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32039\": {\n      \"content\": \"<extra_id_60>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32040\": {\n      \"content\": \"<extra_id_59>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32041\": {\n      \"content\": \"<extra_id_58>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32042\": {\n      \"content\": \"<extra_id_57>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32043\": {\n      \"content\": \"<extra_id_56>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32044\": {\n      \"content\": \"<extra_id_55>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32045\": {\n      \"content\": \"<extra_id_54>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32046\": {\n      \"content\": \"<extra_id_53>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32047\": {\n      \"content\": \"<extra_id_52>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32048\": {\n      \"content\": \"<extra_id_51>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32049\": {\n      \"content\": \"<extra_id_50>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32050\": {\n      \"content\": \"<extra_id_49>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32051\": {\n      \"content\": \"<extra_id_48>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32052\": {\n      \"content\": \"<extra_id_47>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32053\": {\n      \"content\": \"<extra_id_46>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32054\": {\n      \"content\": \"<extra_id_45>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32055\": {\n      \"content\": \"<extra_id_44>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32056\": {\n      \"content\": \"<extra_id_43>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32057\": {\n      \"content\": \"<extra_id_42>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32058\": {\n      \"content\": \"<extra_id_41>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32059\": {\n      \"content\": \"<extra_id_40>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32060\": {\n      \"content\": \"<extra_id_39>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32061\": {\n      \"content\": \"<extra_id_38>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32062\": {\n      \"content\": \"<extra_id_37>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32063\": {\n      \"content\": \"<extra_id_36>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32064\": {\n      \"content\": \"<extra_id_35>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32065\": {\n      \"content\": \"<extra_id_34>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32066\": {\n      \"content\": \"<extra_id_33>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32067\": {\n      \"content\": \"<extra_id_32>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32068\": {\n      \"content\": \"<extra_id_31>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32069\": {\n      \"content\": \"<extra_id_30>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32070\": {\n      \"content\": \"<extra_id_29>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32071\": {\n      \"content\": \"<extra_id_28>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32072\": {\n      \"content\": \"<extra_id_27>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32073\": {\n      \"content\": \"<extra_id_26>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32074\": {\n      \"content\": \"<extra_id_25>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32075\": {\n      \"content\": \"<extra_id_24>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32076\": {\n      \"content\": \"<extra_id_23>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32077\": {\n      \"content\": \"<extra_id_22>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32078\": {\n      \"content\": \"<extra_id_21>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32079\": {\n      \"content\": \"<extra_id_20>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32080\": {\n      \"content\": \"<extra_id_19>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32081\": {\n      \"content\": \"<extra_id_18>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32082\": {\n      \"content\": \"<extra_id_17>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32083\": {\n      \"content\": \"<extra_id_16>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32084\": {\n      \"content\": \"<extra_id_15>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32085\": {\n      \"content\": \"<extra_id_14>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32086\": {\n      \"content\": \"<extra_id_13>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32087\": {\n      \"content\": \"<extra_id_12>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32088\": {\n      \"content\": \"<extra_id_11>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32089\": {\n      \"content\": \"<extra_id_10>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32090\": {\n      \"content\": \"<extra_id_9>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32091\": {\n      \"content\": \"<extra_id_8>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32092\": {\n      \"content\": \"<extra_id_7>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32093\": {\n      \"content\": \"<extra_id_6>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32094\": {\n      \"content\": \"<extra_id_5>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32095\": {\n      \"content\": \"<extra_id_4>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32096\": {\n      \"content\": \"<extra_id_3>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32097\": {\n      \"content\": \"<extra_id_2>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32098\": {\n      \"content\": \"<extra_id_1>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    },\n    \"32099\": {\n      \"content\": \"<extra_id_0>\",\n      \"lstrip\": true,\n      \"normalized\": false,\n      \"rstrip\": true,\n      \"single_word\": false,\n      \"special\": true\n    }\n  },\n  \"additional_special_tokens\": [\n    \"<extra_id_0>\",\n    \"<extra_id_1>\",\n    \"<extra_id_2>\",\n    \"<extra_id_3>\",\n    \"<extra_id_4>\",\n    \"<extra_id_5>\",\n    \"<extra_id_6>\",\n    \"<extra_id_7>\",\n    \"<extra_id_8>\",\n    \"<extra_id_9>\",\n    \"<extra_id_10>\",\n    \"<extra_id_11>\",\n    \"<extra_id_12>\",\n    \"<extra_id_13>\",\n    \"<extra_id_14>\",\n    \"<extra_id_15>\",\n    \"<extra_id_16>\",\n    \"<extra_id_17>\",\n    \"<extra_id_18>\",\n    \"<extra_id_19>\",\n    \"<extra_id_20>\",\n    \"<extra_id_21>\",\n    \"<extra_id_22>\",\n    \"<extra_id_23>\",\n    \"<extra_id_24>\",\n    \"<extra_id_25>\",\n    \"<extra_id_26>\",\n    \"<extra_id_27>\",\n    \"<extra_id_28>\",\n    \"<extra_id_29>\",\n    \"<extra_id_30>\",\n    \"<extra_id_31>\",\n    \"<extra_id_32>\",\n    \"<extra_id_33>\",\n    \"<extra_id_34>\",\n    \"<extra_id_35>\",\n    \"<extra_id_36>\",\n    \"<extra_id_37>\",\n    \"<extra_id_38>\",\n    \"<extra_id_39>\",\n    \"<extra_id_40>\",\n    \"<extra_id_41>\",\n    \"<extra_id_42>\",\n    \"<extra_id_43>\",\n    \"<extra_id_44>\",\n    \"<extra_id_45>\",\n    \"<extra_id_46>\",\n    \"<extra_id_47>\",\n    \"<extra_id_48>\",\n    \"<extra_id_49>\",\n    \"<extra_id_50>\",\n    \"<extra_id_51>\",\n    \"<extra_id_52>\",\n    \"<extra_id_53>\",\n    \"<extra_id_54>\",\n    \"<extra_id_55>\",\n    \"<extra_id_56>\",\n    \"<extra_id_57>\",\n    \"<extra_id_58>\",\n    \"<extra_id_59>\",\n    \"<extra_id_60>\",\n    \"<extra_id_61>\",\n    \"<extra_id_62>\",\n    \"<extra_id_63>\",\n    \"<extra_id_64>\",\n    \"<extra_id_65>\",\n    \"<extra_id_66>\",\n    \"<extra_id_67>\",\n    \"<extra_id_68>\",\n    \"<extra_id_69>\",\n    \"<extra_id_70>\",\n    \"<extra_id_71>\",\n    \"<extra_id_72>\",\n    \"<extra_id_73>\",\n    \"<extra_id_74>\",\n    \"<extra_id_75>\",\n    \"<extra_id_76>\",\n    \"<extra_id_77>\",\n    \"<extra_id_78>\",\n    \"<extra_id_79>\",\n    \"<extra_id_80>\",\n    \"<extra_id_81>\",\n    \"<extra_id_82>\",\n    \"<extra_id_83>\",\n    \"<extra_id_84>\",\n    \"<extra_id_85>\",\n    \"<extra_id_86>\",\n    \"<extra_id_87>\",\n    \"<extra_id_88>\",\n    \"<extra_id_89>\",\n    \"<extra_id_90>\",\n    \"<extra_id_91>\",\n    \"<extra_id_92>\",\n    \"<extra_id_93>\",\n    \"<extra_id_94>\",\n    \"<extra_id_95>\",\n    \"<extra_id_96>\",\n    \"<extra_id_97>\",\n    \"<extra_id_98>\",\n    \"<extra_id_99>\"\n  ],\n  \"clean_up_tokenization_spaces\": true,\n  \"eos_token\": \"</s>\",\n  \"extra_ids\": 100,\n  \"legacy\": true,\n  \"model_max_length\": 512,\n  \"pad_token\": \"<pad>\",\n  \"sp_model_kwargs\": {},\n  \"tokenizer_class\": \"T5Tokenizer\",\n  \"unk_token\": \"<unk>\"\n}\n"
  },
  {
    "path": "configs/sd3/transformer/config.json",
    "content": "{\n  \"_class_name\": \"SD3Transformer2DModel\",\n  \"_diffusers_version\": \"0.29.0.dev0\",\n  \"_name_or_path\": \"/raid/.cache/huggingface/models--stabilityai--stable-diffusion-3-medium/snapshots/84a9ff37a0a30f7252e21daae69cfd0134198d27/transformer\",\n  \"attention_head_dim\": 64,\n  \"caption_projection_dim\": 1536,\n  \"in_channels\": 16,\n  \"joint_attention_dim\": 4096,\n  \"num_attention_heads\": 24,\n  \"num_layers\": 24,\n  \"out_channels\": 16,\n  \"patch_size\": 2,\n  \"pooled_projection_dim\": 2048,\n  \"pos_embed_max_size\": 192,\n  \"sample_size\": 128\n}\n"
  },
  {
    "path": "configs/sd3/vae/config.json",
    "content": "{\n  \"_class_name\": \"AutoencoderKL\",\n  \"_diffusers_version\": \"0.29.0.dev0\",\n  \"_name_or_path\": \"/raid/.cache/huggingface/models--stabilityai--stable-diffusion-3-medium/snapshots/84a9ff37a0a30f7252e21daae69cfd0134198d27/vae\",\n  \"act_fn\": \"silu\",\n  \"block_out_channels\": [\n    128,\n    256,\n    512,\n    512\n  ],\n  \"down_block_types\": [\n    \"DownEncoderBlock2D\",\n    \"DownEncoderBlock2D\",\n    \"DownEncoderBlock2D\",\n    \"DownEncoderBlock2D\"\n  ],\n  \"force_upcast\": false,\n  \"in_channels\": 3,\n  \"latent_channels\": 16,\n  \"latents_mean\": null,\n  \"latents_std\": null,\n  \"layers_per_block\": 2,\n  \"norm_num_groups\": 32,\n  \"out_channels\": 3,\n  \"sample_size\": 1024,\n  \"scaling_factor\": 1.5305,\n  \"shift_factor\": 0.0609,\n  \"up_block_types\": [\n    \"UpDecoderBlock2D\",\n    \"UpDecoderBlock2D\",\n    \"UpDecoderBlock2D\",\n    \"UpDecoderBlock2D\"\n  ],\n  \"use_post_quant_conv\": false,\n  \"use_quant_conv\": false\n}\n"
  },
  {
    "path": "configs/sdxl/model_index.json",
    "content": "{\n  \"_class_name\": \"StableDiffusionXLPipeline\",\n  \"_diffusers_version\": \"0.19.0.dev0\",\n  \"force_zeros_for_empty_prompt\": true,\n  \"add_watermarker\": null,\n  \"scheduler\": [\n    \"diffusers\",\n    \"EulerDiscreteScheduler\"\n  ],\n  \"text_encoder\": [\n    \"transformers\",\n    \"CLIPTextModel\"\n  ],\n  \"text_encoder_2\": [\n    \"transformers\",\n    \"CLIPTextModelWithProjection\"\n  ],\n  \"tokenizer\": [\n    \"transformers\",\n    \"CLIPTokenizer\"\n  ],\n  \"tokenizer_2\": [\n    \"transformers\",\n    \"CLIPTokenizer\"\n  ],\n  \"unet\": [\n    \"diffusers\",\n    \"UNet2DConditionModel\"\n  ],\n  \"vae\": [\n    \"diffusers\",\n    \"AutoencoderKL\"\n  ]\n}\n"
  },
  {
    "path": "configs/sdxl/scheduler/scheduler_config.json",
    "content": "{\n  \"_class_name\": \"EulerAncestralDiscreteScheduler\",\n  \"_diffusers_version\": \"0.35.1\",\n  \"beta_end\": 0.012,\n  \"beta_schedule\": \"scaled_linear\",\n  \"beta_start\": 0.00085,\n  \"clip_sample\": false,\n  \"interpolation_type\": \"linear\",\n  \"num_train_timesteps\": 1000,\n  \"prediction_type\": \"epsilon\",\n  \"rescale_betas_zero_snr\": false,\n  \"sample_max_value\": 1.0,\n  \"set_alpha_to_one\": false,\n  \"skip_prk_steps\": true,\n  \"steps_offset\": 1,\n  \"timestep_spacing\": \"trailing\",\n  \"trained_betas\": null,\n  \"use_karras_sigmas\": false\n}\n"
  },
  {
    "path": "configs/sdxl/text_encoder/config.json",
    "content": "{\n  \"architectures\": [\n    \"CLIPTextModel\"\n  ],\n  \"attention_dropout\": 0.0,\n  \"bos_token_id\": 0,\n  \"dropout\": 0.0,\n  \"eos_token_id\": 2,\n  \"hidden_act\": \"quick_gelu\",\n  \"hidden_size\": 768,\n  \"initializer_factor\": 1.0,\n  \"initializer_range\": 0.02,\n  \"intermediate_size\": 3072,\n  \"layer_norm_eps\": 1e-05,\n  \"max_position_embeddings\": 77,\n  \"model_type\": \"clip_text_model\",\n  \"num_attention_heads\": 12,\n  \"num_hidden_layers\": 12,\n  \"pad_token_id\": 1,\n  \"projection_dim\": 768,\n  \"torch_dtype\": \"float16\",\n  \"transformers_version\": \"4.32.0.dev0\",\n  \"vocab_size\": 49408\n}\n"
  },
  {
    "path": "configs/sdxl/text_encoder_2/config.json",
    "content": "{\n  \"architectures\": [\n    \"CLIPTextModelWithProjection\"\n  ],\n  \"attention_dropout\": 0.0,\n  \"bos_token_id\": 0,\n  \"dropout\": 0.0,\n  \"eos_token_id\": 2,\n  \"hidden_act\": \"gelu\",\n  \"hidden_size\": 1280,\n  \"initializer_factor\": 1.0,\n  \"initializer_range\": 0.02,\n  \"intermediate_size\": 5120,\n  \"layer_norm_eps\": 1e-05,\n  \"max_position_embeddings\": 77,\n  \"model_type\": \"clip_text_model\",\n  \"num_attention_heads\": 20,\n  \"num_hidden_layers\": 32,\n  \"pad_token_id\": 1,\n  \"projection_dim\": 1280,\n  \"torch_dtype\": \"float16\",\n  \"transformers_version\": \"4.32.0.dev0\",\n  \"vocab_size\": 49408\n}\n"
  },
  {
    "path": "configs/sdxl/tokenizer/merges.txt",
    "content": "#version: 0.2\ni n\nt h\na n\nr e\na r\ne r\nth e</w>\nin g</w>\no u\no n\ns t\no r\ne n\no n</w>\na l\na t\ne r</w>\ni t\ni n</w>\nt o</w>\nr o\ni s</w>\nl e\ni c\na t</w>\nan d</w>\ne d</w>\no f</w>\nc h\no r</w>\ne s</w>\ni l\ne l\ns t</w>\na c\no m\na m\nl o\na n</w>\na y</w>\ns h\nr i\nl i\nt i\nf or</w>\nn e\nð Ł\nr a\nh a\nd e\no l\nv e</w>\ns i\nu r\na l</w>\ns e\n' s</w>\nu n\nd i\nb e\nl a\nw h\no o\nd ay</w>\ne n</w>\nm a\nn o\nl e</w>\nt o\nou r</w>\ni r\ng h\nw it\ni t</w>\ny o\na s\ns p\nth is</w>\nt s</w>\nat i\nyo u</w>\nwit h</w>\na d\ni s\na b\nl y</w>\nw e\nth e\nt e\na s</w>\na g\nv i\np p\ns u\nh o\nm y</w>\n. .\nb u\nc om\ns e</w>\ner s</w>\nm e\nm e</w>\nal l</w>\nc on\nm o\nk e</w>\ng e\nou t</w>\nen t</w>\nc o\nf e\nv er\na r</w>\nf ro\na u\np o\nc e</w>\ngh t</w>\nar e</w>\ns s</w>\nfro m</w>\nc h</w>\nt r\nou n\non e</w>\nb y</w>\nd o\nt h</w>\nw or\ner e</w>\nk e\np ro\nf or\nd s</w>\nb o\nt a\nw e</w>\ng o\nh e\nt er</w>\nin g\nd e</w>\nb e</w>\nati on</w>\nm or\na y\ne x\nil l</w>\np e\nk s</w>\ns c\nl u\nf u\nq u\nv er</w>\nðŁ ĺ\nj u\nm u\nat e</w>\nan d\nv e\nk ing</w>\nm ar\no p\nh i\n.. .</w>\np re\na d</w>\nr u\nth at</w>\nj o\no f\nc e\nne w</w>\na m</w>\na p\ng re\ns s\nd u\nno w</w>\ny e\nt ing</w>\ny our</w>\nit y</w>\nn i\nc i\np ar\ng u\nf i\na f\np er\nt er\nu p</w>\ns o</w>\ng i\non s</w>\ng r\ng e</w>\nb r\np l\n' t</w>\nm i\nin e</w>\nwe e\nb i\nu s</w>\nsh o\nha ve</w>\nto day</w>\na v\nm an\nen t\nac k</w>\nur e</w>\nou r\nâ Ģ\nc u\nl d</w>\nlo o\ni m\nic e</w>\ns om\nf in\nre d</w>\nre n\noo d</w>\nw as</w>\nti on</w>\np i\ni r</w>\nth er</w>\nt y</w>\np h\nar d</w>\ne c\n! !</w>\nm on\nmor e</w>\nw ill</w>\nt ra\nc an</w>\nc ol\np u\nt e</w>\nw n</w>\nm b\ns o\nit i\nju st</w>\nn ing</w>\nh ere</w>\nt u\np a\np r\nbu t</w>\nwh at</w>\nal ly</w>\nf ir\nm in\nc a\nan t</w>\ns a\nt ed</w>\ne v\nm ent</w>\nf a\nge t</w>\nam e</w>\nab out</w>\ng ra\nno t</w>\nha pp\nay s</w>\nm an</w>\nh is</w>\nti me</w>\nli ke</w>\ng h</w>\nha s</w>\nth an\nlo ve</w>\nar t</w>\nst e\nd ing</w>\nh e</w>\nc re\nw s</w>\nw at\nd er</w>\nit e</w>\ns er\nac e</w>\nag e</w>\nen d</w>\nst r\na w\nst or\nr e</w>\nc ar\nel l</w>\nal l\np s</w>\nf ri\np ho\np or\nd o</w>\na k\nw i\nf re\nwh o</w>\nsh i\nb oo\ns on</w>\nel l\nwh en</w>\nil l\nho w</w>\ngre at</w>\nw in\ne l</w>\nb l\ns si\nal i\nsom e</w>\nðŁ Ĵ\nt on\nd er\nle s</w>\np la\nï ¸\ne d\ns ch\nh u\non g</w>\nd on</w>\nk i\ns h</w>\nan n\nc or\n. .</w>\noun d</w>\na z\nin e\nar y</w>\nfu l</w>\nst u\nou ld</w>\nst i\ng o</w>\nse e</w>\nab le</w>\nar s</w>\nl l</w>\nm is\nb er\nc k</w>\nw a\nen ts</w>\nn o</w>\nsi g\nf e</w>\nfir st</w>\ne t</w>\nsp e\nac k\ni f</w>\nou s</w>\n' m</w>\nst er</w>\na pp\nan g\nan ce</w>\nan s</w>\ng ood</w>\nb re\ne ver\nthe y</w>\nt ic\ncom e</w>\nof f\nb ack</w>\nas e</w>\ning s</w>\nol d</w>\ni ght</w>\nf o\nh er</w>\nhapp y</w>\np ic\nit s</w>\nv ing</w>\nu s\nm at\nh om\nd y</w>\ne m\ns k\ny ing</w>\nthe ir</w>\nle d</w>\nr y</w>\nu l\nh ar\nc k\nt on</w>\non al</w>\nh el\nr ic\nb ir\nvi e\nw ay</w>\nt ri\nd a\np le\nb ro\nst o\noo l</w>\nni ght</w>\ntr u\nb a\nre ad\nre s</w>\nye ar</w>\nf r\nt or\nal s</w>\nc oun\nc la\nt ure</w>\nv el\nat ed</w>\nle c\nen d\nth ing</w>\nv o\nic i\nbe st</w>\nc an\nwor k</w>\nla st</w>\naf ter</w>\nen ce</w>\np ri\np e</w>\ne s\ni l</w>\nâĢ ¦</w>\nd re\ny s</w>\no ver</w>\ni es</w>\nðŁ ĳ\ncom m\nt w\nin k</w>\ns un\nc l\nli fe</w>\nt t\na ch\nl and</w>\ns y\nt re\nt al\np ol\ns m\ndu c\ns al\nf t</w>\n' re</w>\nch e\nw ar\nt ur\nati ons</w>\nac h</w>\nm s</w>\nil e</w>\np m</w>\nou gh</w>\nat e\nst ar\nwee k</w>\n! !!</w>\nc lu\nth ere</w>\nn er</w>\nt om\ns el\nï¸ ı</w>\nwor ld</w>\nv es</w>\nc am\ngo t</w>\nin ter\nof f</w>\nu m</w>\nton ight</w>\no ther</w>\nh ou\nloo k</w>\nj e\ni d</w>\nsi on</w>\nbe au\nat t\nel i\nor t</w>\nre c\nf f\nst er\nsu pp\ng en\nbe en</w>\nil y</w>\nte am</w>\nm m\ni c</w>\npe op\nit t\nat s</w>\non ly</w>\nmb er</w>\nen g\nb ri\nm p\nk now</w>\nb ur\nb ar\nin s</w>\nlo w</w>\nsh e</w>\nro w</w>\nâ Ŀ\nt ro\npeop le</w>\nvi a</w>\nlo w\nag a\nbe t\nx t</w>\nf ac\nch ar\ne ar\nw al\ns en\nf am\nb le</w>\nn ati\nis h</w>\nn or\ng ame</w>\nli ve</w>\ns co\nle y</w>\nd on\nic k</w>\nb all</w>\nver y</w>\nthe se</w>\np an\ni a</w>\nat ing</w>\nc r\na re\ng ir\nma ke</w>\nst re\nsho w</w>\n. \"</w>\nf l\nu p\nd r\nthan ks</w>\nil li\nw om\nst s</w>\ni g\ns ur\never y\nc ur\nvie w</w>\nle t</w>\nin to</w>\nmo st</w>\nn a\nin di\ng ar\nha d</w>\ns ou\nv ed</w>\nan t\niti on</w>\nma de</w>\nf ol\nun i\nit ed</w>\nðŁ ı\nic al</w>\nth r\nread y</w>\nch ec\nd ra\nk es</w>\nboo k</w>\ne p</w>\nsi c</w>\nmor ning</w>\nne ws</w>\nc au\nc t</w>\nw ell</w>\nan c\npho to</w>\nth an</w>\nor s</w>\nbir th\ng g\nou t\nne xt</w>\nsom e\nen ing</w>\nstor y</w>\nch ri\ndo wn</w>\nhom e</w>\nf fe\nfre e</w>\nd a</w>\nb or\nf il\nci al</w>\nthan k</w>\nsi de</w>\nle ar\nqu e\nl ine</w>\nt en\nat es</w>\nye ars</w>\nm y\npho to\nbeau ti\nri ght</w>\nn u\nfor m\nshi p</w>\nb an\nth er\nd ays</w>\ng am\nas on</w>\ng y</w>\nðŁ İ\nbirth day</w>\nse t</w>\nic k\ne t\nst ill</w>\ncom ing</w>\nta ke</w>\nðŁ ĩ\nb b\ns ol\ns on\nd en\ne p\nmu sic</w>\nthe m</w>\nde n</w>\nwh y</w>\nf oo\nc ra\nam az\nw n\nh ol\nt ting</w>\nw r\nu e</w>\nma g\nc ro\nl an\nc lo\nb ra\na k</w>\ns ing</w>\nc al\nre ad</w>\n' ve</w>\njo h\nb ab\nd ri\nb lo\nbi g</w>\ner ic\nin t</w>\nt or</w>\ntr y</w>\nl a</w>\nle g\nhou se</w>\nm ic\nv al\nbeauti ful</w>\nl itt\nchec k</w>\nne w\nver s\ns w\nar i\npla y\nh er\nâĢ ĵ</w>\nw in</w>\nm a</w>\ncon gr\nsch ool</w>\nf un\n. @</w>\nhe al\nic h</w>\nd el\nwh ere</w>\nl on\nke t</w>\ntw o</w>\nmu ch</w>\nwat ch</w>\nv en\nd ed</w>\na st</w>\nk ed</w>\nb as\ngo ing</w>\nm p</w>\ne ver</w>\nw ays</w>\nro o\nde sig\nl y\ns ed</w>\nto p</w>\nl in\nch an\nto o</w>\nit ing</w>\nd ent</w>\ngh ts</w>\nt y\nsp o\nne ed</w>\nb lu\nin st\nbe ing</w>\nâĿ ¤\nw el\nl s</w>\nhi m</w>\nm ay</w>\nst ing</w>\nn a</w>\nel y</w>\nlitt le</w>\ng a\nn at\ntom or\nm c\nh on\nw ant</w>\na ir\npi c</w>\nam eric\np er</w>\nle ss</w>\nwee k\nve l</w>\na h</w>\nc ap\nch am\ng er\nti m\ntomor row</w>\nne ss</w>\nst ate</w>\nh al\nser v\nz e</w>\no s</w>\np at\nv is\nex c\ns in\nf f</w>\nc ity</w>\nc en\nan y\nb el\nsu mm\nt in\nw ould</w>\nloo king</w>\nk o\nce le\nfam ily</w>\nm er\npo w\nhel p</w>\nbu s\nc o</w>\nc le\nsel f</w>\nen s</w>\nic s</w>\nth o\nan i\nch o\nle ad\nb s</w>\nt wee\nth ink</w>\nfor e</w>\nch il\nvi de\ndi d</w>\nal e</w>\nch i\nv il\nen ds</w>\nw ing</w>\np as\n' ll</w>\nv ol\ns a</w>\ng s</w>\nman y</w>\nj ec\nbe fore</w>\ngra ph\nn y</w>\nur ing</w>\nw il\nd d\nbu il\nf av\nst ed</w>\ntr an\nl ing</w>\nou d</w>\nd ge</w>\nfi el\nnati onal</w>\nst a\nc er\nw ere</w>\nin a</w>\nse ason</w>\nc ou\nn ed</w>\namaz ing</w>\nti ons</w>\ncele br\nn s</w>\na th\nhe ad</w>\ns day</w>\nd ar\nlo c\nv in\nan other</w>\ng oo\ns at\nn y\njo in</w>\npre s\ns es</w>\ns ing\nan a</w>\nin ing</w>\n.. ..</w>\nc our\nï¸ ı\nac t</w>\ncau se</w>\nli ght</w>\nam s</w>\nt a</w>\nb al\nf c</w>\nhi gh</w>\noff ici\nt t</w>\nchri st\nd ic\nd ay\nra l</w>\nh or\n: )</w>\nvi si\nn am\no b\nma s</w>\ngh t\nre ally</w>\nt un\nfin d</w>\nthr ough</w>\npor t</w>\nu t\nti ve</w>\nst y\nn e</w>\nor e</w>\nðŁĺ Ĥ\nsupp ort</w>\nne ver</w>\nev en</w>\nðŁ Ķ\nh a</w>\ny a</w>\nl d\nu k</w>\nr an\nj am\nwi th\nme di\nd es</w>\nne y</w>\nch ing</w>\nal e\nh y\nk in\n! !\nd y\npl ace</w>\nal so</w>\nb le\nwh ich</w>\nbl ack</w>\nb li\ns ay</w>\npar k</w>\npl ay</w>\nir e</w>\nvide o</w>\nweek end</w>\na il\nke y</w>\np t</w>\nw ard</w>\nfri day</w>\nd in\nine ss</w>\ng ro\nb en\nal ways</w>\nt ball</w>\nag o</w>\nm il\nc y\npro duc\ndi sc\nun der\nple ase</w>\nsp or\nfu ll</w>\ne y</w>\nðŁ Ļ\nis e</w>\niti es</w>\nc at\nk no\nu se</w>\nfo re\nk er</w>\nar t\nhi gh\nop en</w>\ns an\ne f\nour s</w>\nsh ed</w>\nst ri\nd ro\naga in</w>\ni m</w>\nðŁ ĵ\nen jo\nfu n</w>\nge tting</w>\np en\ng er</w>\nc li\nan y</w>\never y</w>\ne u\nwom en</w>\nâ ľ\ne st</w>\nc ould</w>\nr y\n\" @</w>\nth ou\nsh a\ncomm un\nb er</w>\nd ents</w>\ndi s\nwh ile</w>\naw ay</w>\ndi o</w>\nh am\ng la\nd ate</w>\nk a</w>\nmis s</w>\nun ch</w>\nw on\nin f\nroo m</w>\ng a</w>\nre al</w>\nex per\ndi rec\nsh ould</w>\nsp r\ng ol\nl ong</w>\nbet ter</w>\nor i\ne y\ni ence</w>\nil s</w>\nz z\nh an\nf ound</w>\nv s</w>\nâ Ļ\npo st</w>\nti c</w>\npar t</w>\nm en\nren ce</w>\nce ss</w>\nv ic\ns il\nsho p</w>\nðŁĺ Ĥ</w>\nf ood</w>\nv al</w>\nsti c</w>\ny ou\ns ays</w>\ne lec\nst ar</w>\no c\nl and\ni d\nc tion</w>\nfiel d</w>\ns of\nst art</w>\nwat er</w>\nfri ends</w>\non es</w>\nðŁ Į\nf la\nf ar\nwh ite</w>\npar ty</w>\nin st</w>\ngr ou\nt v</w>\nevery one</w>\nm ent\nj a\nch a\npr in\nan ts</w>\nd uring</w>\nl at\nl ar\nwe st</w>\nth en</w>\nk a\ny oun\nin sp\nin te\nwe en</w>\nvisi t</w>\naga inst</w>\nre le\nhe ad\nc es</w>\nto wn</w>\nloo ks</w>\nth re\nre gi\nren t</w>\npro jec\ngir l</w>\nse ar\nw o\nm om\nc ar</w>\nh un\npu bli\nd i</w>\np le</w>\nc all</w>\nc ri\nu m\nfor d</w>\nper fe\nfri end</w>\nh ard</w>\nssi on</w>\nte st</w>\npla ying</w>\nar ound</w>\nbe cause</w>\nke ts</w>\nme et</w>\nsat ur\nar ti\nwor k\nj un\nv en</w>\nr un\nme mber</w>\npor t\nsu per\nt wit\ns am\nel s</w>\nt ly</w>\nad v\nati ve</w>\nat h</w>\ns ure</w>\nav ail\nla r</w>\ns qu\nar ds</w>\nev ent</w>\nm en</w>\nl l\no ver\nlo gy</w>\nit al</w>\ntim es</w>\nm al\nb ack\nc oo\nma king</w>\nst ru\nâ ģ\nit u\nsh ar\ng an</w>\nc as\ns n\nsumm er</w>\npic ture</w>\nf an\nh in\nchrist mas</w>\nc y</w>\npr oud</w>\ncham pi\ndesig n</w>\npp ing</w>\nho pe</w>\nc a</w>\navail able</w>\nma y\nwe d\nphoto graph\nspe cial</w>\nsal e</w>\nsto p</w>\ner y</w>\na we\nal ity</w>\nhi story</w>\nam a</w>\npre si\nb ru\nwor king</w>\nd one</w>\nd r</w>\nk en</w>\nfe at\nw ood</w>\nate st</w>\nsun day</w>\nmo vi\nvel y</w>\ns le\nf ace</w>\nsp ec\nstu dents</w>\nb y\nha m</w>\nsp on\nbus iness</w>\nd at\ni e</w>\ni p\nso ci\ng lo\nh and\nre cor\nr s</w>\nme e\nke ep</w>\np ur\nheal th</w>\nsh e\ncom ple\ngo d</w>\nda vi\ncol lec\nli st\nr a</w>\nclu b</w>\nt ers</w>\nin clu\nth ings</w>\npl an\nâ ĺ\njoh n</w>\nsh ing</w>\nat ul\nso on</w>\nblu e</w>\ng or\nsatur day</w>\nw on</w>\ncongr atul\nse e\nâĿ¤ ï¸ı</w>\ntho se</w>\nðŁĺ į</w>\nfin al</w>\nd ou\nit h</w>\no wn</w>\nro ad</w>\nt our</w>\na st\nindi a</w>\nti l</w>\nn d</w>\nf er\nfav or\nsu l\nlear n</w>\nfir e</w>\nju st\ngrou p</w>\na h\nr ac\nbo dy</w>\nu r</w>\nc are</w>\nà ¸\np lo\no h</w>\npo s\ngi ve</w>\nte ch\nsu b\nc ent\ner ing</w>\ny m\nil ity</w>\nf ic\nlon don</w>\nv ir\ngu ys</w>\nb a</w>\nðŁ ¤\nbab y</w>\nsc re\nðŁĺ į\ntru mp</w>\nun der</w>\nchan ge</w>\ni an</w>\ncol le\nss es</w>\nl er</w>\nss ed</w>\nn ice</w>\nann oun\npow er</w>\ns ar\na king</w>\nmin i\ns li\ns wee\nk ar\nfu l\nc ru\nac tion</w>\na ther</w>\n) .</w>\nst and\nde vel\na a\ng an\nle ft</w>\nlo l</w>\nre l\ntran s\nm ents</w>\nin t\ne f</w>\nman ag\ndi g\ngen er\ndo wn\np au\nti v\nk u\nth ur\nk en\nst on</w>\nf ans</w>\ntal k</w>\ntwee t</w>\nt oo\nsty le</w>\npro te\nse con\nfr on\nawe some</w>\ng l\np al\nne t\ns or\nla u\ng on\nsin ce</w>\nt ty</w>\nser ies</w>\nme mor\nb eli\nfil m</w>\ndi d\ndi es</w>\no t\ncongratul ations</w>\np ra\ne ve</w>\nw oo\noffici al</w>\nsu c\nin cre\nb on\npar t\npp ed</w>\ncla ss</w>\nsi ve</w>\nbo y</w>\ncu l\nperfe ct</w>\nt ou\nd am\nwel come</w>\nfoo tball</w>\nh i</w>\np ap\nwa it</w>\nad a</w>\ncongr ats</w>\nyoun g</w>\nexc ited</w>\nre ce\nj an\nv a</w>\nre d\nst ra\nmedi a</w>\n' d</w>\ndo es</w>\nle t\nmu l\nill s</w>\ngre en</w>\nm el\nto ge\nfu ture</w>\nye ster\nvers ity</w>\nfor m</w>\nta in</w>\ni de\nch es</w>\nki ds</w>\nqu i\nha ha\nde ta\nbi g\nfavor ite</w>\ngir ls</w>\ncon tin\ndo m</w>\nsear ch</w>\nu al</w>\na ir</w>\nd ers</w>\nmon th</w>\nc er</w>\nyester day</w>\ncommun ity</w>\nad e</w>\ndo g</w>\nvil le</w>\nic es</w>\nd eli\nsy ste\nru n</w>\nis m</w>\nhe art</w>\nc up</w>\nen ti\nfe w</w>\npresi dent</w>\ne ds</w>\nun til</w>\nfe sti\no k\nf lo\nsa id</w>\nol e</w>\nme d\ntra vel</w>\nÂ £</w>\nph one</w>\ntoge ther</w>\nfa st</w>\nlo t</w>\ngam es</w>\nsh ir\nbet ween</w>\ny es</w>\nth ers</w>\ndo ing</w>\nm ac\nat or</w>\nb and</w>\nfol low\nprojec t</w>\ndevel op\ndi ffe\ncon fe\nspe ci\nca st</w>\ny s\nbo ard</w>\nr d</w>\ni al</w>\nsh oo\nr am\nha ving</w>\nsh are</w>\nfol low</w>\non e\nn ame</w>\nm r</w>\npu t</w>\ndisc u\nor y</w>\nc ame</w>\nou s\ns ite</w>\ntwit ter</w>\nt b\nt it\nfin ally</w>\nz ed</w>\nsu per</w>\ncom pan\nus ing</w>\nall s</w>\nli st</w>\nr is</w>\nsho t</w>\ng al\nt ar\nde l</w>\njoh n\nâĢ Ķ</w>\nsome thing</w>\nra m</w>\ninte re\nwh e\nb it</w>\nðŁ į\nstre et</w>\noun d\na i\ntic kets</w>\nmovi e</w>\nre al\nk y\nta king</w>\no pp\nc c</w>\nl am\nm oun\nin ve\nbl ack\nus ed</w>\non line</w>\ny or\nloc al</w>\ngu e\nc ks</w>\no w\nge st</w>\nbo ys</w>\nilli on</w>\ncon t\nre ci\nin ed</w>\neu ro\nno w\nse en</w>\np h</w>\nte ach\nde f\nsou th</w>\nsu ch</w>\naw ard</w>\nmu st</w>\nis su\nca re\nfe el</w>\np lu\nl atest</w>\nspor ts</w>\nwe b\nte x\ne ment</w>\ns k</w>\nfi c</w>\nw an\nte ch</w>\no t</w>\nbo x</w>\nn er\nfre e\nt al</w>\na sh\nc ase</w>\nho t</w>\nwon der\nmee ting</w>\ner a</w>\nch all\nðŁ Ĳ\njo b</w>\nil i\nc ool</w>\nj our\nth s</w>\nm o</w>\nf el\ndi e</w>\nmic ha\ne le\nte am\nserv ice</w>\nst and</w>\nma kes</w>\np ing</w>\near ly</w>\ncom es</w>\ne k</w>\nho li\nv ers</w>\nag ue</w>\ns au\nthre e</w>\nmon day</w>\nfa shi\nsome one</w>\nth ro\nse a</w>\nb ad</w>\nsupp or\ntur n</w>\nur y</w>\nm ing</w>\nphotograph y</w>\nn ic\nmar k</w>\npre tty</w>\nss ing</w>\nwat ching</w>\nme mb\nar ri\ncoun ty</w>\nbe ach</w>\nfr an\ncen ter</w>\npol ice</w>\nb at\npubli c</w>\nt an\npre ss</w>\ns af\ns y</w>\nge ts</w>\nro y\nn ers</w>\ny our\nbu y</w>\nst ers</w>\nsho w\nas ed</w>\nchil dre\naf ric\nin es</w>\nsp ace</w>\nsc ri\nh all</w>\npa in\nar ing</w>\nhom e\nm ur\nheal th\nch ed</w>\ns and\nrece i\ngu y</w>\ne a\nameric an</w>\nre si\nchildre n</w>\n- -\ni ri\ning ton</w>\ncoun try</w>\nro ss</w>\nle n</w>\nann a</w>\nboo ks</w>\nb c</w>\ne ce</w>\nd om\nlo vely</w>\nk h\npe t\ng y\ng ri\nst age</w>\noff ice</w>\nro ck</w>\nm on</w>\nb ay</w>\nt able</w>\nsu n</w>\nm ed</w>\nth in\nl or\nf low\n( @</w>\nuni versity</w>\nstor e</w>\nfron t</w>\ngoo d\nz a</w>\nvo te</w>\nnor th</w>\nhe y</w>\nan im\nor der</w>\nmi d\nwith out</w>\na de\nre member</w>\nmar ket</w>\n? ?</w>\nmu s\ntra ining</w>\ne duc\nbu t\nco ver</w>\nst an\nsc en\nb la\nbre ak\nl ou\ns ame</w>\ng old</w>\na in</w>\no s\nbo th</w>\nl it\nver n\na i</w>\nal bu\np a</w>\nenjo y</w>\nbe g\nell ing</w>\nthur sday</w>\ninf o</w>\ns an</w>\nameric a</w>\nha ir</w>\nte l</w>\nmar ch</w>\ncon cer\ncolle ge</w>\nconfe rence</w>\nap p</w>\nh our</w>\nch ang\nâ ļ\ns our\nol s</w>\nwe ather</w>\nw ar</w>\np hi\nfesti val</w>\nsecon d</w>\ncu te</w>\npr ac\nen er\nstr y</w>\nle a\npol it\ns av\nse n</w>\no w</w>\nm i</w>\nne ar</w>\nou ght</w>\nz e\nco ffe\nw illi\nd an\nse y</w>\ndavi d</w>\ne se</w>\nf an</w>\nde ci\nthe at\nno v\nati on\ntr ac\nsc i\nre view</w>\nc el\ne m</w>\nu n</w>\nju ly</w>\nor ig\nti on\nd ru\nform er</w>\nst ay</w>\naf ter\nin v\ntoo k</w>\ndat a</w>\nb al</w>\ntu es\nd an</w>\nev ening</w>\nðŁĺĤ ðŁĺĤ\nd ol\nu res</w>\npro vi\nt s\ne st\nsig n</w>\nj ac\nu k\ns ong</w>\nye t</w>\nbo w\nin du\nj ap\nh oo\npo int</w>\nany one</w>\nz y</w>\ni st</w>\nh ur\nit al\nbuil ding</w>\nwom an</w>\nch ur\nj er\nper for\nco ach</w>\nle ague</w>\nce ss\nne t</w>\ni mag\nnati on\nbr it\nqu e</w>\naw ards</w>\nag es</w>\nwor ks</w>\nc ed</w>\nman ce</w>\nl ate</w>\nig n</w>\nmon ey</w>\ntru e</w>\ni i</w>\nt ell</w>\npl ac\np ac\nas y</w>\nwor ld\nbe hin\nim port\nread ing</w>\ngra m</w>\ngi ving</w>\nme t</w>\nh it</w>\nfor ward</w>\nst om\npres ent\njun e</w>\nso cial</w>\nno on</w>\nmar t\nhal f</w>\ns we\ngo vern\nk er\ndeta ils</w>\nli sh</w>\n_ _\nac y</w>\nsi a</w>\nber t</w>\nf all</w>\n! !!!</w>\n) ,</w>\nth i\nd iti\nsp ort</w>\nk ing\nf it\nst af\nc at</w>\nmu se\ncen tr\ny er</w>\ncon tro\nb loo\nwal k</w>\nac tu\ndid n</w>\nli m\nlear ning</w>\nre search</w>\nwed ne\nau th\nh ours</w>\nk y</w>\nf ar</w>\nh en\n.. ..\nit ch\nri l</w>\nstr ong</w>\nsk y</w>\nque sti\njam es</w>\nr on\nd g\nf ur\nc in\ndo es\napp ro\nmar ke\ntu res</w>\nful ly</w>\nch at</w>\nbehin d</w>\nte m\nfin i\nmis sion</w>\nb att\nfe el\nhe av\nevery thing</w>\nb ar</w>\nw ish</w>\npre mi\ni ma\nexper ience</w>\ne ach</w>\nre port</w>\nswee t</w>\ntic s</w>\nspr ing</w>\nre spon\nsyste m</w>\nvic tor\nl in</w>\nsa w</w>\nal ready</w>\ngh ter</w>\nf le\nã ĥ\nbr ing</w>\nalbu m</w>\n- -</w>\nell s</w>\nst an</w>\nto m</w>\ninter national</w>\nw ent</w>\nan ni\nmat ch</w>\npp er</w>\nst one</w>\nsm all</w>\nra in</w>\nfashi on</w>\nare a</w>\nv an\nag ram</w>\nk o</w>\nthou ght</w>\nwor th</w>\nv an</w>\nm er</w>\ncoffe e</w>\nit es</w>\ng n\narti st</w>\nc on</w>\nar ch\nc ir\nse cre\ngr ound</w>\nis o\nh and</w>\nco m</w>\nbri dge</w>\nh s</w>\nx i\nl ink</w>\npu l\nsp l\nr ace</w>\nf li\nri ver</w>\ng as</w>\ndi sco\nd al\nplay er</w>\nf it</w>\nphoto s</w>\nit y\no k</w>\nj or\ntr a</w>\nap ril</w>\nad s</w>\na di\nsol u\nbeau ty</w>\ndo or</w>\nme ss\nup date</w>\nali a</w>\nsch o\nen ed</w>\nmom ent</w>\nsco t\nsc ience</w>\ni or</w>\nti es</w>\nac ross</w>\nous ly</w>\nsh es</w>\ndoes n</w>\np age</w>\nwat er\nm illion</w>\ncla ssi\nl ic\nca st\nform ation</w>\nmicha el</w>\nell o</w>\ns mo\nin ts</w>\nvi sion</w>\nop ening</w>\nld n</w>\nau str\ntues day</w>\nwin ner</w>\npo ssi\nr ound</w>\nshir t</w>\ndi t</w>\nb o</w>\nu es</w>\nil led</w>\nal ong</w>\ntri p</w>\nstar ting</w>\nim pro\nk an\nper son</w>\nno t\nre co\nne eds</w>\nc le</w>\nli e</w>\nre st</w>\nr ing</w>\nwin ter</w>\nsi mp\nmo m</w>\nbe er</w>\nfac e\ntor s</w>\nus a</w>\ncollec tion</w>\nge or\nse ssion</w>\ntr ying</w>\nla s</w>\nla ke</w>\nj en\norig in\nstu dent</w>\nse cur\nv in</w>\npic s</w>\nex pe\ncom p\ngon na</w>\ne qu\nb ad\nle y\na u</w>\nmemb ers</w>\nbre ak</w>\nw all</w>\ngi c</w>\ndin ner</w>\nbu l\ninsp ir\nr i</w>\nmin d</w>\nic a</w>\nwin ning</w>\ntal king</w>\nt ren\ns is</w>\nt en</w>\nwonder ful</w>\ns now</w>\nhe ar</w>\nth om\nno thing</w>\ngu i\nst in\nblo g</w>\nfe st</w>\nb un\nle e</w>\nwar ds</w>\nch ance</w>\ndre ss</w>\nre n</w>\npau l</w>\np es</w>\ntech no\nru ssi\nc ard</w>\ne ast</w>\nmar i\nw ine</w>\nt i</w>\nla w</w>\nstr ic\nk i</w>\nap e</w>\nau gu\npro fe\nas h</w>\ncour se</w>\nma il</w>\nren tly</w>\nd un\nm un\nlo ve\nis land</w>\ndri ve</w>\ns l\nend ed</w>\nma in</w>\nlo st</w>\nnat ure</w>\nâĿ¤ ï¸ı\nch ic\nre por\np in\npr o</w>\nst ation</w>\nce p\nta kes</w>\ncompan y</w>\ngo es</w>\non d</w>\nma ch\nra dio</w>\nd ad</w>\nro ck\nj a</w>\np ay\nchampi on\ne e\nin de\ntt a</w>\nati c</w>\nt ab\nbeli eve</w>\nener gy</w>\nz i\nt at\nwor d</w>\non ce</w>\nre sul\ny l\nand re\nan o</w>\ninst agram</w>\nclo se</w>\nt am\ncu stom\nw a</w>\ncon om\nsho ws</w>\nli fe\nk in</w>\nro b\nt age</w>\nn ation</w>\nal most</w>\nlist en</w>\nsa ve</w>\nre li\nac e\nmar y</w>\ntre e</w>\nfor get</w>\nj ack\nwa iting</w>\ndirec tor</w>\nh ill</w>\nbor n</w>\nte mp\nf l</w>\nst e</w>\non a</w>\nsing le</w>\nwedne sday</w>\nun ited</w>\nin o</w>\n@ _</w>\nne l</w>\ncelebr ate</w>\nen ding</w>\nde al</w>\nj i</w>\ncan ada</w>\nhu ge</w>\ntr ack</w>\nâĢ ¢</w>\nf y</w>\nfan ta\nan g</w>\nyor k</w>\nrele ase</w>\np un\nep iso\nwor ds</w>\nt our\np ack\ni gh\nclassi c</w>\nperfor mance</w>\nke t\nafter noon</w>\nrecor d</w>\nwin s</w>\npro ble\nâĿ ¤</w>\nf our</w>\nb ed</w>\nban k</w>\nd ance</w>\ns la\ncal led</w>\nmi ght</w>\na p</w>\npa st</w>\nðŁ ļ\ndiffe rent</w>\nit e\ngi ft</w>\nssi ve</w>\nchur ch</w>\nc us</w>\npro gram</w>\nho tel</w>\nic e\nma d\nsecur ity</w>\nen ge</w>\nd c</w>\nen ough</w>\nst a</w>\ne ty</w>\nde ad</w>\ng un\nhe ar\nm ir\nhu man</w>\ngre ss</w>\noun ds</w>\npi ece</w>\nbre aking</w>\ngar den</w>\nfi ght</w>\nvie ws</w>\nf ish</w>\nstar ted</w>\nrun ning</w>\ngre en\nser i\ns m</w>\nas k</w>\nd or\nde ath</w>\ne conom\ner i\nir d</w>\ns er</w>\nl unch</w>\nâģ ¦\nbo x\nnat u\nba se\nb an</w>\nf al\nglo bal</w>\nwil d\nwo w</w>\nout side</w>\nmo ve</w>\nle ad</w>\nan al\nmuse um</w>\non g\nha w\npow er\nthan k\nb ac\nchar ac\ncam pa\ndig ital</w>\nr o</w>\nop er\nde v\nw ol\np ati\nf a</w>\nm ale</w>\npap er</w>\nill ing</w>\nc s</w>\nâ ĥ\neduc ation</w>\nta ken</w>\ne ffe\nm ou\ns ad\n\" .</w>\nbas ed</w>\nstaf f</w>\ninclu ding</w>\nli ving</w>\na c</w>\nch ina</w>\nmo b\nstor m</w>\nlu ck</w>\nph il\no o</w>\ny n\ntra vel\nk el\nti al</w>\npr ice</w>\nboo k\nimport ant</w>\nbi o\np ool</w>\nny c</w>\nf ab\nlo ad</w>\n? !</w>\nchall enge</w>\ncr y\nser ve</w>\nwe ar</w>\nbu s</w>\nta in\nnu mber</w>\nro r</w>\nk at\ni z\nth ough</w>\nho sp\nm m</w>\nfa ir</w>\nut es</w>\nho t\npo p</w>\nfi ed</w>\ncam p\ndevelop ment</w>\nli br\nc ali\nem s</w>\nâģ¦ @</w>\nb ol\nis ed</w>\nstand ing</w>\nmo del</w>\nit a</w>\ng le</w>\nbro wn</w>\nima ge</w>\nve red</w>\nfor ce</w>\no il</w>\npar tic\nsh u\nda ily</w>\nla w\nse c\ncla ss\ncam p</w>\nholi day</w>\ncl in\nk ers</w>\npres ent</w>\ngam e\nincre di\ner ship</w>\ninter view</w>\nb ill</w>\ndu e</w>\nand y</w>\nab o\nin nov\nke y\nac ade\np il\nmo der\nst ars</w>\nbr and</w>\nf er</w>\nwee ks</w>\ncon si\npr e</w>\nsa fe\nwr it\ndi um</w>\nla unch</w>\nmarke ting</w>\nann ual</w>\nas si\ncour t</w>\nla dy</w>\nc ted</w>\nand a</w>\nin side</w>\nchil d</w>\nopp or\nsm ith</w>\ncentr e</w>\ngu e</w>\nâģ ©</w>\nf ren\nst y</w>\nfor t</w>\nent ly</w>\nis n</w>\nke ep\nto ber</w>\non y</w>\nbo y\nal d</w>\ncol la\nde mo\nle vel</w>\ncom pet\nad o</w>\nb our\nfanta stic</w>\nm ate</w>\ns u</w>\nsou th\noppor tun\nvers ary</w>\nlat er</w>\nbu d\nface book</w>\nla un\nster n</w>\np it\n! \"</w>\nma j\ngr am\ntb t</w>\nfi re\nhapp y\na ks</w>\nwh ole</w>\nactu ally</w>\nill er</w>\nell a</w>\nlo ts</w>\nal ex\nan ge\nlan ds</w>\nðŁĺ Ń\nen ter\nr ou\nepiso de</w>\np ed</w>\nin ten\nsh ire</w>\nwh o\npl an</w>\nh o</w>\nca ke</w>\nwe st\nmag az\nfre sh</w>\nc c\nn ar\nch ris</w>\nwr iting</w>\nw er</w>\nn om\nl o</w>\nmi dd\ndre am</w>\no l</w>\nti onal</w>\nde b\n> ></w>\nbe come</w>\ns i</w>\ngr and</w>\nall ing</w>\nhi stor\nri de</w>\ni red</w>\nsaf e</w>\nque en</w>\nci l</w>\nin tro\nvi l</w>\nd ani\n.. .\nar tic\nst at\nsh ort</w>\nor ing</w>\nsel fi\nmis si\ndo c\nb it\ng all\nb om\ni re\nse lec\nd ition</w>\nðŁĶ ¥</w>\nfri end\nbe at</w>\ngh ting</w>\nðŁĺ Ĭ</w>\npe ace</w>\nex hi\nant a</w>\nab ility</w>\nil lu\nj on\nqu ality</w>\ntri bu\nm es</w>\nplay ers</w>\nfa ir\ncu t</w>\nc ab\nsuc cess</w>\nb i</w>\nsu s</w>\npro mo\nsch e\nan ge</w>\nic o</w>\ncomm it\ncat ch</w>\nill a</w>\nkin d</w>\nfeel ing</w>\nqu o\ns ay\nanni versary</w>\nspo t</w>\nmo ther</w>\nan e</w>\np end\nyour self</w>\nop s</w>\napp le</w>\nmin utes</w>\np o</w>\ngr and\nri es</w>\nha ha</w>\ncare er</w>\ned ition</w>\nde c\nric k</w>\nam i</w>\nconcer t</w>\niti ve</w>\nge ous</w>\nd ly</w>\nt te</w>\nadv ent\ni g</w>\nli ghts</w>\nak er</w>\nsk y\nâĥ £</w>\nr ay</w>\nfini shed</w>\nw ay\ns d\nac coun\nðŁĴ ķ</w>\nck y</w>\nch el\nlit er\npain ting</w>\nlo s</w>\nst un\ntechno logy</w>\nn as\nma r</w>\nb il\nafric a</w>\nki e</w>\ney es</w>\ngol f</w>\nplu s</w>\nni a</w>\nit ec\nserv ices</w>\nwed ding</w>\nkno wn</w>\nte le\n.. ...</w>\nstar ts</w>\npa ren\nw ants</w>\nati onal</w>\nmon ths</w>\nwin do\nfav our\ner t</w>\nmagaz ine</w>\nex clu\nre ve\nb c\norigin al</w>\ne ss\nn al</w>\nan ti\nst ro\nt ice</w>\nstu dy</w>\nà ¤\nv ac\nnation al\nfi ve</w>\nra in\nve ment</w>\nu te</w>\nver se</w>\nem er\nar my</w>\npossi ble</w>\ngue ss</w>\nval ley</w>\nther n</w>\ncro w\nm r\ncol or</w>\non to</w>\npic k</w>\ncle ar</w>\ndar k</w>\nt ac\nwan ted</w>\nit ting</w>\ncan cer</w>\ngovern ment</w>\ndi e\nri se</w>\nz ing</w>\ncol d</w>\nf oun\nstu dio</w>\nstr ation</w>\nbro ther</w>\na head</w>\nsh el\nmic ro\nic ally</w>\nd au\nsig ned</w>\nvi ol\na x\nas se\ni o\nw re\nspl ay</w>\nch ick\naugu st</w>\npl at\nti ps</w>\nsp i\nhu man\ne asy</w>\nlo gi\nmi ke</w>\ngro w\nag re\nw w\nsh ad\nmo tiv\nwi de</w>\ntur ns</w>\nom g</w>\nv ar\nde fin\nsu g\nj im\nðŁĶ ¥\nt d</w>\ncampa ign</w>\nnam ed</w>\nre tweet</w>\nco p\nt v\nle av\nk is\ndou ble</w>\ns mar\nissu e</w>\nvil la\nin formation</w>\nli es</w>\nsto ck</w>\nn t</w>\ndi stric\nsh or\nmi x\ner o\nse p\nme x\nsee ing</w>\nli ve\nre min\nco de</w>\ng ur\ns c</w>\nwil d</w>\nl un\nh ood</w>\nspo t\nfa ther</w>\nfore ver</w>\nup d\ntra f\nf ly</w>\nne ed\ngra du\ntra in</w>\nma ke\ns ab\nbe y\nsi ze</w>\nlead er</w>\ntal ks</w>\ne u</w>\nlo g\nfo x</w>\ngor geous</w>\nle ss\nle ts</w>\nsur pri\nmy self</w>\nno te</w>\nli ves</w>\nf ru\nlo ved</w>\nse ver\nde m\nj i\nso c\nh old</w>\ndo gs</w>\nn i</w>\nâ ŀ\nlea ve</w>\nair port</w>\nben ef\nex pl\nshi ps</w>\ncomple te</w>\nach i\ngre at\nvin tage</w>\nj ack</w>\nro c\nwoo d\npri v\noff er</w>\ney e</w>\nver sion</w>\nte a</w>\nco ach\noff ic\nw ell\ng en</w>\ns at</w>\nh h\nyou th</w>\no x\n? \"</w>\nm t</w>\nmi x</w>\ng g</w>\nd le</w>\nnatu ral</w>\nbuil d</w>\nbreak fast</w>\nthin king</w>\ntheat re</w>\nmo on</w>\nber g</w>\ngo als</w>\ngeor ge</w>\nen e\nexc ell\nil ing</w>\ntun e</w>\ny ed</w>\ng ate</w>\nm it\nnet work</w>\njo e</w>\nh ello</w>\nf b</w>\ntu be</w>\nwe aring</w>\nath le\nstru c\nhar d\ngla ss</w>\ng ers</w>\nthro w\ng es</w>\nb t\nindu stry</w>\nmanag ement</w>\nali st</w>\ngo al</w>\nstre am</w>\ny el\na vi\nici ous</w>\no thers</w>\ns ki\nchri sti\nbir d</w>\ne sc\nm in</w>\ntr o</w>\nl t</w>\nj an</w>\nim p\nri ghts</w>\nsh a</w>\nor gan\ncent ral</w>\nar a</w>\nro ll</w>\nfavour ite</w>\nche ster</w>\nel se</w>\np ay</w>\ncar s</w>\nm ine</w>\nste p</w>\nprac tice</w>\nmaj or</w>\nh ang\nðŁĺ ĺ</w>\nn on</w>\nv ari\neng ine\nvol un\ndi a</w>\ni led</w>\narch itec\np ink</w>\nd s\nth y</w>\nwa sh\nweb site</w>\nba g</w>\ncontro l</w>\nel li\nf ra\nan sw\nd ence</w>\ny u\nr on</w>\nol a</w>\ng in\ndr in\nli c</w>\ncou ple</w>\nsp ar\ng on</w>\ncre ate</w>\nc t\ncelebr ating</w>\nde ep</w>\ne at</w>\nte e</w>\nvo ice</w>\ndro p</w>\nvis it\nat ors</w>\nsta dium</w>\nf t\nw is\nro l\ngra de</w>\nfam il\npo ints</w>\nre pre\nw as\ntraf fic</w>\njap an</w>\nor g\nhon or</w>\ntex as</w>\nman u\nâĻ ¥</w>\nsafe ty</w>\nre r</w>\nb ag\nem plo\nrele ased</w>\nre gu\nak a</w>\nn av\nro le</w>\nsen ior</w>\nspec t</w>\ncro ss</w>\nlin es</w>\nbe st\np ack</w>\ns in</w>\nti e</w>\nmis sing</w>\nsun set</w>\nli ber\nis ing</w>\nj ay\nsk i</w>\nchampion ship</w>\nac tiv\nla dies</w>\nplay ed</w>\ny y\npu bl\nal o\npri de</w>\ns r\npa ki\nlu x\nsur vi\nck ed</w>\ne ts</w>\ncho col\naustr alia</w>\npar is</w>\nmi les</w>\nh at\nment al</w>\nal a</w>\nme an</w>\nmob ile</w>\nen a</w>\nin si\nf ound\nchi ef</w>\nt ag\nincredi ble</w>\nre turn</w>\nÃ ©\ngoo gle</w>\nfren ch</w>\ncre w</w>\nhal lo\nali an</w>\nj az\nch er</w>\nsil ver</w>\nnor th\neng lish</w>\nbase ball</w>\nc af\nlim ited</w>\nfollow ing</w>\napp reci\near th</w>\nk ir\nve mber</w>\nw ed</w>\np tion</w>\ng ed</w>\noc tober</w>\nfl ori\nc r</w>\nen cy</w>\nga ve</w>\nlor d</w>\nstu ff</w>\nber ry</w>\npo st\nsm ile</w>\nbro ad\nst ate\ngg er</w>\nme ans</w>\nic y</w>\ngu n</w>\ny o</w>\nma ster</w>\nbur g</w>\nhan ds</w>\nni e</w>\n/ /</w>\nuni on</w>\nbrit ish</w>\nbig gest</w>\ndistric t</w>\nam ing</w>\nh il\no ce\nper son\npas s</w>\nen vir\nscho ols</w>\narri ved</w>\nanc es</w>\ninsp ired</w>\nex pla\nbe n</w>\nlibr ary</w>\nbo tt\nam p\nste ph\ncont act</w>\nb ang\nm s\ncali for\nt old</w>\nbatt le</w>\nb b</w>\nchic ago</w>\nâľ ¨</w>\nstr ate\nsh i</w>\nde ce\n- )</w>\nad d</w>\nla b\nj ones</w>\nleg end</w>\ncast le</w>\ning er</w>\nst ance</w>\nbe l</w>\nur a</w>\nre fu\nlead ers</w>\npo t\nse x\nh ic\nartic le</w>\nki d</w>\nfr ance</w>\nx x</w>\nex e\ngui de</w>\nvolun te\npr int</w>\nal i</w>\nce o</w>\ntwee ts</w>\nw x</w>\nscen e</w>\nvol u\nant i</w>\nh an</w>\nas soci\nshar ing</w>\nro se</w>\nmini ster</w>\nsh er\nin ste\ncle an\ndemo cr\npo ster</w>\nsk in</w>\np sy\npro per\ncra zy</w>\ni am\no re\nin i</w>\nany thing</w>\npo d\nmo ving</w>\ncl ick</w>\nex plo\ncom b\ncra ft</w>\nf i</w>\nbloo d</w>\nis ra\npubl ic\nd ent\nol ym\neng land</w>\na si\nch er\nfac t</w>\nenvir on\nhar ry</w>\ng one</w>\nme dic\nenjo ying</w>\njust ice</w>\nj r</w>\nindi an</w>\nwi fe</w>\ns ound</w>\nt es</w>\ndra wing</w>\np al</w>\nide a</w>\ncr it\nju li\nil er</w>\nwar m</w>\ncl ar\nthou ghts</w>\ndef en\ncoun cil</w>\nintro duc\ndi ed</w>\njan u\nan i</w>\ns end</w>\nli er</w>\nm l\nintere sting</w>\ntra de</w>\nwin d</w>\nb ay\ns ac\nanc y</w>\nsour ce</w>\nb es</w>\norg ani\nar ly</w>\nlar ge</w>\nff ici\nta g</w>\nu t</w>\nde sp\no es</w>\ntit le</w>\nsy m\npic tures</w>\nop en\nwom en\nsho wing</w>\nri a</w>\nle ast</w>\nlead ership</w>\ncur rent</w>\nelec tr\nval ent\nlist ening</w>\nc key</w>\ngener al</w>\nde ser\ndu ce</w>\n; )</w>\nc ent</w>\nðŁĺį ðŁĺį\nsco tt</w>\npo or</w>\nselfi e</w>\nev ents</w>\ni on</w>\nwr ong</w>\nde v</w>\nh ill\nsep te\ncul ture</w>\nl ine\nsor ry</w>\ns ent</w>\nsi ster</w>\nce pt</w>\nk ri\nno vember</w>\nar i</w>\nannoun ce</w>\nz ation</w>\nbr an\ng ent\nd u</w>\nl en\nper s\nf m</w>\nmart in</w>\no p</w>\ne mb\nom e\nmidd le</w>\nsuc cess\npe ter</w>\njanu ary</w>\nf lu\nrac ing</w>\nd av\nbi ke</w>\nðŁı »</w>\npe t</w>\nshoo t</w>\nprofe ssi\nfeat uring</w>\nsepte mber</w>\nnow playing</w>\nsta ur\nz a\non ic</w>\nqu ick</w>\nbas ke\nspe aking</w>\nmil it\nz er</w>\nchick en</w>\nb ell</w>\ns ad</w>\nco ast</w>\nlo ving</w>\ny ers</w>\nd j</w>\npan el</w>\nver age</w>\ns wit\nic ks</w>\nb ou\ncalifor nia</w>\ns am</w>\nparen ts</w>\ner o</w>\nk illed</w>\nph ys\njo bs</w>\nmi gr\nan th\ne mo\nhallo ween</w>\nand er\nc m</w>\ncompet ition</w>\ne ag\ns ket\nsp ir\nmay be</w>\nexclu sive</w>\napp e\njour ney</w>\nscre en</w>\nfor d\ni o</w>\nh ate</w>\nu g\nsou l</w>\nher o</w>\nsoci ety</w>\nsy n\ngu it\nn h\nd j\nas es</w>\nim pre\nti me\nsal es</w>\nd d</w>\nf ts</w>\nsumm it</w>\nstun ning</w>\nom s</w>\ntur ned</w>\ncle an</w>\nsof t</w>\nbe at\nre staur\nde red</w>\nen ces</w>\nma gic</w>\ndi o\nsh ine</w>\ngu est</w>\nhealth y</w>\nexhi b\nstor ies</w>\npo pu\nn is</w>\nel a</w>\nbel ow</w>\nfun ny</w>\nresul ts</w>\ns ne\ncur rently</w>\nar d\ndown load</w>\nf light</w>\nm al</w>\nf ine</w>\np ad\nch u\nent ed</w>\nh at</w>\nðŁĳ ı\nste ve</w>\nj o</w>\nmar k\nr at\nb all\np c</w>\np on\nb by</w>\no li\nar ts</w>\nas ure</w>\nbow l</w>\natt ack</w>\nmi c</w>\nde ar</w>\nran ge</w>\nen ter</w>\nchocol ate</w>\nbr illi\nac cess</w>\n, \"</w>\n? ??</w>\nch ap\ncon st\nt n\nmat ter</w>\nblu e\ngall ery</w>\nem p\nwork shop</w>\nlead ing</w>\ny ours</w>\nbaske tball</w>\nw anna</w>\nth u\n_ _</w>\nmar ri\nsle ep</w>\nbi a</w>\nch e</w>\nma d</w>\nimp act</w>\no wn\nsi r</w>\nchan nel</w>\neuro pe</w>\ne sp\nk itch\nhosp ital</w>\nw ra\nroy al</w>\nf s</w>\nne u\nqu ar\nne y\nac ks</w>\nch ase</w>\npp y</w>\nst al\nat ely</w>\nti m</w>\ndece mber</w>\nr are</w>\nper form\ncre am</w>\nwe ight</w>\nch oo\nni ght\nha ven</w>\nfr anc\nkh an</w>\nbuil t</w>\nhel ping</w>\ntru st</w>\nty pe</w>\ngol den</w>\nta x</w>\ns now\ns wi\ndi sa\nquesti ons</w>\nve y</w>\nli ght\nc n\ncl oud</w>\nthom as</w>\nag ed</w>\nsh ou\nte ams</w>\ngr an\nre ason</w>\na a</w>\nyou tube</w>\nv p</w>\npi zz\nmanag er</w>\nbur y</w>\ncre dit</w>\ntre at</w>\nma x</w>\ni k\nma in\ng ing</w>\nde ad\npro bab\nye ah</w>\nã Ĥ\nbr and\nso li\npl ant</w>\nta yl\ngir l\nðŁĺ Ń</w>\nnam ent</w>\nau to\nmess age</w>\nko re\nn ur\nter r\nag u\nma p</w>\nsen ting</w>\nlo ves</w>\ngi ves</w>\ng ab\nz en</w>\nro bert</w>\ncon fir\nw ars</w>\no m</w>\nsta in\ncam era</w>\nand er</w>\nwon der</w>\na b</w>\nca p</w>\ns old</w>\nsu it</w>\nwal king</w>\ncontin ue</w>\neffe c\ndau ghter</w>\nd anc\ncha in</w>\nmul ti\nki d\ny an\nchampi on</w>\nv o</w>\nta ins</w>\nho st</w>\nmin i</w>\nmis sed</w>\nre sc\nly n\nfin ish</w>\ndel icious</w>\ns as\ntayl or</w>\ni b\npro mis\nproduc ts</w>\nmoun tain</w>\nflori da</w>\nregi ster</w>\ntre at\nrec ent</w>\nfe male</w>\nboo th</w>\nmat t</w>\nve hic\ns op\nmo tor\nsuppor ting</w>\nphi c</w>\nex tre\ndr ink</w>\nlan e</w>\nth ird</w>\np s\ncon stru\nce re\nfar m</w>\nðŁİ ī</w>\ntu red</w>\nðŁĳ ī</w>\nc ats</w>\na j\ngi e</w>\nshoo ting</w>\nas ked</w>\npaki stan</w>\nam e\nm b</w>\ng il\nleg al</w>\nsqu are</w>\nin vol\ndra w</w>\noo oo\n!! !!\nopportun ity</w>\np y\ne i\nb ts</w>\nteach er</w>\ncharac ter</w>\njohn son</w>\nbr on\nly wood</w>\nch ine\nc ing</w>\nc ine\nd ge\ngam ing</w>\nrussi a</w>\nci a</w>\nquo te</w>\nric h</w>\ngo v\nflow ers</w>\nsp iri\nst in</w>\ngrow th</w>\nðŁı ¼</w>\ncomm er\nj uni\nmu m</w>\nr an</w>\ns na\na ren\nc b\nac tor</w>\ncol or\nsi t</w>\npa ir</w>\nch i</w>\nbo w</w>\nacade my</w>\nhel d</w>\nr ang\nme tal</w>\ny l</w>\nac tive</w>\nprobab ly</w>\nt ch</w>\nneed ed</w>\nspe e\ncho ice</w>\nital y</w>\nry an</w>\nðŁĩ º\nflow er</w>\nv it\nm n</w>\nfound ation</w>\nb ak\nsi ons</w>\nne igh\nf loo\nhe ard</w>\nre mo\nfre sh\ning ing</w>\nre f\nto wn\ncl ou\nje sus</w>\nspiri t</w>\ncou ldn</w>\nz es</w>\nðŁĴ Ļ</w>\nwilli ams</w>\npro ce\nmoder n</w>\npro cess</w>\nsho es</w>\ncre ated</w>\ntri c</w>\nissu es</w>\nann e</w>\natt en\nde but</w>\nh r</w>\nn it\nsti g\na po\ne ps</w>\nz u\nã Ģ\nsi x</w>\ncar ds</w>\nlan gu\nfam ous</w>\ntour nament</w>\nse l</w>\ne bay</w>\ny n</w>\nst on\nk ick\nannoun ced</w>\nk am\nvo c\nbrilli ant</w>\nhou se\nche ese</w>\nwar ri\nmus ic\nho ckey</w>\nðŁĺĤ ðŁĺĤ</w>\nsk ills</w>\nau tom\nsmar t</w>\nmed ical</w>\nmon y</w>\ne x</w>\ngu ar\ngi ve\npers onal</w>\nven tion</w>\nal li\npre ss\nflo or</w>\nm c</w>\nvictor y</w>\nhi m\nsimp le</w>\nth or\nðŁĩº ðŁĩ\nta il</w>\nlu cky</w>\nale x</w>\nqu ite</w>\nbo t\nssi ons</w>\nchall eng\nc ann\namaz on</w>\nh ell</w>\nb ought</w>\n) :</w>\ned y</w>\nsecre t</w>\nproduc tion</w>\ninde pend\nde fe\nad ded</w>\np r</w>\np ag\nbe d\ngre atest</w>\nwith in</w>\nj ay</w>\nðŁ ¥\nire land</w>\nre ly</w>\ns d</w>\nte xt</w>\ndri ving</w>\npro gram\nspe ed</w>\ncol um\nstr on\nÃ ©</w>\nfore st</w>\nâ ĸ\nmach ine</w>\nco in</w>\nsc ar\noun t</w>\nbi e</w>\n¡ ï¸ı</w>\npor tra\ncomm on</w>\nwre st\nrecei ved</w>\nkno w\ninve st\npl ans</w>\nac cor\nad op\nter y</w>\nre ali\np p</w>\nk al\nart work</w>\nme an\ngo d\ninste ad</w>\nan ci\nmotiv ation</w>\nas ing</w>\ninspir ation</w>\nup coming</w>\npolit ical</w>\neuro pe\nm ers</w>\nheav y</w>\nðŁĳ į</w>\nfe bru\nscot land</w>\nou gh\nb t</w>\nbo ss</w>\nsche du\nspe ak</w>\nn ick\nu red</w>\nin o\ne k\nri sk</w>\ntor y</w>\npres ents</w>\nb on</w>\nru g\nst ates</w>\nexhib ition</w>\nil o\nm ill\nbr ought</w>\n: -)</w>\ntou ri\ncom e\noffici ally</w>\nchampi ons</w>\ndo ors</w>\nre p\npo se</w>\nex tra</w>\nk ings</w>\nsoc cer</w>\nsqu ad</w>\napp lic\nat a</w>\nsome times</w>\nt ari\nexcell ent</w>\nðŁĺ ĺ\nstra ight</w>\ncar ol\nri p</w>\nâĢ į\ngra phic</w>\nm ol\nelec tion</w>\nfebru ary</w>\nas ons</w>\nl i</w>\ndi r\nm t\nn ick</w>\nu su\nm rs</w>\ncom ics</w>\ninst itu\ncor por\nv i</w>\nðŁĻ ı\ntu ral</w>\ndi se\nac ci\nwe are\nam ong</w>\nsho pping</w>\nt ill</w>\nwh at\ncha ir</w>\nsp an\nchine se</w>\ninnov ation</w>\njo y</w>\nk it</w>\ncent ury</w>\nob ama</w>\nph ili\nf c\nre ach</w>\nc iti\nul ous</w>\nn on\nd ang\nhapp ening</w>\nbur n</w>\np el\nor ange</w>\nd v\nk ick</w>\ncla im\ning ham</w>\nph y</w>\nno v</w>\npod cast</w>\nwh i\nni ghts</w>\near lier</w>\nbe ar</w>\nla h</w>\nexc iting</w>\nor a</w>\ngi ven</w>\ns lo\nmemor ies</w>\ncontin ues</w>\nproduc t</w>\ngh o\nc d\nkno ws</w>\nðŁİ ī\npubli shed</w>\ndiscu ss</w>\ny ard</w>\ni phone</w>\ntri es</w>\nw all\nfe b</w>\nare n</w>\ntru th</w>\nwin ners</w>\ntu re\nditi onal</w>\nmilit ary</w>\nproble m</w>\nm and\ndo g\nlo ss</w>\nc ric\ncan adi\nve ter\nvilla ge</w>\n\" ,</w>\ny r</w>\nun g</w>\ndon ald</w>\nag ing</w>\nbir ds</w>\nsci enti\nle s\nth is\nregi on</w>\ntic al</w>\nitt en</w>\nil a</w>\nðŁĺ İ</w>\nd ad\ndi am\nabo ve</w>\nst ren\nli t</w>\np ir\nla b</w>\nfo cus</w>\nbus y</w>\nd ur\napp ly</w>\ns ma\nauth or</w>\nac i\nexe cu\ndom in\nre la\njack son</w>\nat o</w>\nwash ington</w>\nðŁĻ Į\nk ill</w>\npopu lar</w>\nce ment</w>\nro ad\ne ating</w>\nloc ation</w>\nv ent\nar re\nn an\ncu sto\nadvent ure</w>\nor din\nspor t\nul t</w>\nlo ck</w>\nquesti on</w>\ndri ver</w>\nland sc\non i\nk ins</w>\np d\njor dan</w>\nte red</w>\nk k\na f</w>\nchil d\ns p</w>\njust in</w>\nen i\ns elling</w>\nz o\nwh it\nbo ston</w>\npartic ip\nsig ning</w>\nhapp ened</w>\nhe at</w>\nm am\ndre ams</w>\nlo ws</w>\ngra ph</w>\nthe day</w>\nhead ing</w>\nbr o</w>\nble ssed</w>\nvi c</w>\nve gas</w>\nh d</w>\nin ning</w>\nro man\nand ro\nden ti\nu se\nc it\npro gress</w>\nwrit er</w>\nbo b</w>\nff s</w>\ngro wing</w>\nb ly</w>\naw are\nex am\nsp ent</w>\nbe t</w>\nsc ore</w>\nbey ond</w>\ndo cu\nad el\ns f\ncou ra\ncolla bor\nin c</w>\npriv ate</w>\nbo at</w>\n* *</w>\nz one</w>\np ha\nb ill\nto tal</w>\nplan ning</w>\nto wards</w>\nplac es</w>\npre view</w>\ncre ative</w>\ndam n</w>\nide as</w>\nse ems</w>\npo ten\nsay ing</w>\ndi splay</w>\ns w</w>\na qu\nlou is</w>\nby e</w>\nli l</w>\ne mail</w>\nwe stern</w>\nger many</w>\nell er</w>\nre s\nf ant\nment ary</w>\nde als</w>\nric hard</w>\njer sey</w>\nstren g\nra d\npizz a</w>\nmon d</w>\nw are</w>\nl ac\ng i</w>\nar chi\nc d</w>\nyel low</w>\nrec ently</w>\nre ach\nà ¹\nkitch en</w>\ndesig ned</w>\ntr y\ng al</w>\nrestaur ant</w>\nat ure</w>\nw w</w>\nj as\nl ma\nðŁĳ Į</w>\npa in</w>\nav o\nmin ute</w>\nsch ol\nther ap\ntic ket</w>\nd ry</w>\njap an\nditi ons</w>\nter ri\nsel ves</w>\nhapp en</w>\nt up</w>\nma g</w>\ncop y</w>\nsh er</w>\nfree dom</w>\nf ile</w>\nspeci ally</w>\ntor onto</w>\nlo ad\ng ary</w>\nre y</w>\nansw er</w>\nlo y\ncau ght</w>\npri ze</w>\nu ne\nfic ation</w>\nni ger\nsy d\ntou ch</w>\nfeat ure</w>\njaz z</w>\nrecor ds</w>\nhim self</w>\ndi sh</w>\nro ber\nspot ted</w>\nma ster\nwa ve</w>\nfin als</w>\nbu ll\nfor um</w>\nal d\nre comm\nch a</w>\na e</w>\nd oo\ninst ru\ntru ly</w>\nl g\nin k\nbro thers</w>\nde st</w>\nj im</w>\nm it</w>\nclo sed</w>\nis on</w>\ntri ed</w>\ns anta</w>\naf fe\nw an</w>\nhor se</w>\ng row</w>\ncamp us</w>\nrel ation\nnati ve</w>\njour n\ngo v</w>\no ct</w>\nk it\nb ound</w>\npart ner</w>\nre ma\ncrow d</w>\n! )</w>\nc alls</w>\nra il\nqu ali\nsolu tion</w>\ncon test</w>\ncon vers\nsn ap\nb ase</w>\nin iti\nta x\ny e</w>\nent repre\nit or</w>\nconstru ction</w>\nfoo d\npresent ed</w>\nn ings</w>\ncli mate</w>\nk m</w>\nmo del\nb j\nblo ck</w>\npresent ation</w>\ndre am\nfi x\nc alling</w>\nbus ine\ncon gress</w>\nunder stand</w>\nwe b</w>\nval ue</w>\nï¸ı âĥ£</w>\nmex ico</w>\nit ely</w>\nki m</w>\nchar ity</w>\nref lec\nbl an\nfl ying</w>\nanal y\nfamil ies</w>\nb and\nreci pe</w>\ncelebr ation</w>\nac cep\nar y\nto t\ng b</w>\nintere sted</w>\ncap tain</w>\nâĻ ¥\nti p</w>\nab sol\nbra z\ninve stig\no logy</w>\nde c</w>\ntru ck</w>\nver ing</w>\nc lear\ndon t</w>\ngo tta</w>\nad vis\nbeg ins</w>\nma ss\nde scri\nblo ck\nk im\ndavi d\nson gs</w>\nmemor ial</w>\nfeat ures</w>\nsu stain\n' .</w>\ngra b</w>\njo se\nv a\ncon serv\nse ts</w>\nman chester</w>\nfi ghting</w>\nde gre\nag a</w>\nin d</w>\nsle ep\npos ition</w>\nha ir\nsig ns</w>\npol icy</w>\nit o</w>\nal ert</w>\nst am\nsp end</w>\nw y\nabsol ut\nd m</w>\nanim al</w>\nmy ster\nsuccess ful</w>\nproble ms</w>\nro bo\nk ay\ngar den\np d</w>\nmay or</w>\nd ale</w>\nt ol\noff ers</w>\nvis iting</w>\nfriend ly</w>\ntre es</w>\noffic er</w>\naccoun t</w>\nke vin</w>\nðŁĳ į\ngi ant</w>\ncontin u\ncon su\ntr act</w>\nn fl</w>\nðŁĺ Ĭ\nh q</w>\nb ility</w>\na ar\ndis ney</w>\nte en</w>\non ed</w>\nwh ite\ntra iler</w>\nde dic\nal one</w>\nabsolut ely</w>\ndig ital\nwilli am</w>\nin ation</w>\ns wa\ne e</w>\nenti re</w>\nger man</w>\nro ll\nh its</w>\nco st</w>\nst ay\nth a</w>\nali ve</w>\naccor ding</w>\nco t\nliter ally</w>\nher it\nre ti\nhaha ha</w>\nexper i\nli kes</w>\ng t</w>\nste el</w>\n__ __\nch air\nchristi an</w>\nto wer</w>\ndiffe rence</w>\nm d</w>\ntre ss</w>\nmi d</w>\nprin ce</w>\nafric an</w>\nfe der\nfoo t</w>\ncar ri\nser ved</w>\nr ice</w>\nsh all</w>\nfeat ured</w>\nck er</w>\nrec ru\npo e\nsen se</w>\nni fic\ncom edy</w>\ncont ent</w>\nf at\npo sted</w>\ncon tribu\ntim ate</w>\nli ver\nmb le</w>\ninter net</w>\nag e\neurope an</w>\ncl ing</w>\ngla d</w>\nff ic\nsc o</w>\nak es</w>\nel le</w>\nter min\nton y</w>\np ale\ncol our</w>\nseri ous</w>\npat ri\nmovi es</w>\nb m\nprofessi onal</w>\nad o\nal u\nbr inging</w>\nf alls</w>\nisra el</w>\nter m</w>\nlangu age</w>\nbro ok\nman n</w>\ncommun ic\ncan not</w>\nac ti\np he\ny an</w>\nentrepre ne\ntur key</w>\nlog ical</w>\nlon g\nar m</w>\nur s</w>\nwork ers</w>\ning ly</w>\ngg s</w>\nri c</w>\ntu al</w>\nrecei ve</w>\nop ens</w>\nge ar</w>\nsoci al\nfe et</w>\nc king</w>\nad ver\nfin an\nfe els</w>\nsp la\nh r\nea ster</w>\nbra in</w>\nã ģ\nfi g\nle dge</w>\nne arly</w>\nprote ct</w>\nma ssive</w>\ne th\naw a\nðŁĺ ģ</w>\ny rs</w>\naware ness</w>\ndefin itely</w>\nk n\nimag ine</w>\nk u</w>\nsyste ms</w>\nðŁĳ ı</w>\nf as\nli k\nprovi de</w>\nam o\ndisco ver</w>\ninf lu\nma ker</w>\ng az\nfit ness</w>\nstre et\ner s\nte d\nw c\nys is</w>\npos itive</w>\nhel ped</w>\nque st</w>\nandre w</w>\nbra d\nb in\nhang ing</w>\nl ing\nbri ght</w>\nse ction</w>\nma ss</w>\nðŁĻ Į</w>\nfollow ers</w>\nho sting</w>\ntem por\nfla g</w>\na ve</w>\nlet ter</w>\nk ur\nre qui\nof ten</w>\ncry p\nsu ff\nâļ ½\nrussi an</w>\ntreat ment</w>\nal le\nha y\nl an</w>\nkeep ing</w>\nhol y</w>\npower ful</w>\npre dic\nfun d</w>\ne specially</w>\nwindo w</w>\nje wel\nil y\nðŁĴ ľ</w>\ngener ation</w>\napp a\nseri ously</w>\no d\nðŁĺĤðŁĺĤ ðŁĺĤ</w>\ncer ti\niri sh</w>\nðŁĳ Į\nmi ami</w>\nbe th</w>\nv ity</w>\nse cu\nche f</w>\ncri me</w>\ngraph y</w>\nma x\narti sts</w>\nre volu\ngu ard</w>\nspee ch</w>\nu c\nupd ates</w>\nfac es</w>\nst ant</w>\nchang ed</w>\nrepor ts</w>\nlow er</w>\npe ar\nn c</w>\nk il\nloo ked</w>\nspe aker</w>\ns f</w>\nre spect</w>\nok ay</w>\noce an</w>\ns itting</w>\narchitec ture</w>\ntra il</w>\nse at</w>\ni ra\nle g</w>\njapan ese</w>\nd am</w>\nu lar</w>\nsw im\npolit ics</w>\nfinan cial</w>\nol d\nmou th</w>\nat temp\nde stin\nfi shing</w>\natten tion</w>\nme m\nchang es</w>\ndeci ded</w>\nreli gi\ng in</w>\nc av\nz z</w>\nad am</w>\nma c</w>\nwr ite</w>\nbeg in</w>\nsc ul\nal ter\nis s</w>\nath on</w>\nimag es</w>\nm oo\njo ined</w>\nðŁĺ ī</w>\nâŀ ¡ï¸ı</w>\npas sed</w>\nmu sli\nh ir\nlar gest</w>\ncam er\ncom ic</w>\ngh ted</w>\nrug by</w>\nbur gh</w>\ngg ing</w>\nte sting</w>\npre par\nlau gh\nal ed</w>\nimpro ve</w>\nbeli ev\nadv ice</w>\nsha res</w>\nhe art\ntur ning</w>\ns b</w>\nt el\ncaf e</w>\nn es</w>\ndani el</w>\npat ter\nt z</w>\nse tt\npar k\nc and\nst ick</w>\nhapp ens</w>\nbri an</w>\nne west</w>\ne pic</w>\nad or\nki es</w>\nwar ning</w>\nanim als</w>\ncusto m</w>\nar c\ndi an</w>\ngol d\ncor e</w>\nt f</w>\nc ity\npan ts</w>\nre ality</w>\ncon fi\nin ju\nfo x\ngu il\nk new</w>\nâĺ º\ncor rec\nitu de</w>\nd den</w>\n. #</w>\nre duc\npas s\nf on\ny a\now ner</w>\nre turns</w>\nn c\ne ast\nap ol\nin sur\nth o</w>\nsi m\njuni or</w>\nbe e</w>\nang el\natt le</w>\nelec tric</w>\nhor ror</w>\ncra sh</w>\ne ye\npat h</w>\nsou thern</w>\nemplo ye\nge o\nt an</w>\nha z\nr ally</w>\nðŁı »\nproper ty</w>\nwas n</w>\nenjo yed</w>\ngre y</w>\ng as\nbre w\nnor thern</w>\nhol ding</w>\ng p</w>\nta ke\nch art</w>\nly n</w>\ndr ama</w>\nz o</w>\npa id</w>\nthrow back</w>\ncu p\ndiscu ssion</w>\ndown town</w>\nw ill\nle w\nb is\nt ary</w>\nbre ad</w>\nup on</w>\nr ate</w>\nteach ers</w>\nit ation</w>\nanc ed</w>\ncy cle</w>\nchoo se</w>\nd c\nir an</w>\nco w\nda ve</w>\nra ise</w>\nprin cess</w>\nfa ith</w>\n- ></w>\nindu stri\nsp ain</w>\nguit ar</w>\nfac ts</w>\nm n\nsp en\ncour te\ngo tt\nprojec ts</w>\nau di\no sc\npe ter\ns and</w>\nintere st</w>\nhapp iness</w>\nven ue</w>\nsol di\nsurpri se</w>\npoten tial</w>\nper io\ncustom er</w>\ni i\ng ni\nmanu fac\ne co\nbro ken</w>\nsing er</w>\nvel s</w>\nwal es</w>\nhu s\nin j\nf our\ntal ent</w>\nd ying</w>\nmat the\nfil m\njo ining</w>\ns ell</w>\nj ar\nlma o</w>\nsur ger\nbb c\nsour ces</w>\nau stin</w>\nni k\nchar les</w>\nf am</w>\nprin ci\nange l</w>\ncas h</w>\nlo t\no red</w>\npla ys</w>\npl ate</w>\ndon e\nmemor y</w>\nbr ings</w>\nn ba</w>\nsolu tions</w>\nteach ing</w>\ngr ace</w>\ncir cu\nhel ps</w>\nfoun der</w>\nmar y\nexpl ore</w>\nde cor\npar ts</w>\nch o</w>\ninte gr\nha u\nis es</w>\npu tting</w>\nin er</w>\nr it\nv y</w>\nmic hel\nblu es</w>\nevery day</w>\nfor ms</w>\nbi o</w>\nye ar\np in</w>\nt ter</w>\nspr ing\n) )</w>\npo t</w>\nal ing</w>\nperform ing</w>\nsh an\nplan et</w>\nmus ical</w>\nhead s</w>\nit alian</w>\nstru gg\nâĢį âĻ\nw ings</w>\npu mp\nh h</w>\ntr ou\na id</w>\npri me</w>\near th\npa int</w>\nmon t\nam y</w>\nbb c</w>\nfab ulous</w>\nfru it</w>\nandro id</w>\nbour ne</w>\ncere mony</w>\nenti al</w>\n? ?\ndeb ate</w>\non ing</w>\ndra ft</w>\nsol ar</w>\nt x</w>\nj am</w>\ncor n\n!! !!!</w>\nbro o\nmil k</w>\npo sed</w>\no hi\nmo vement</w>\nb ren\npart ner\np g</w>\net te</w>\nar ies</w>\nsh out</w>\nn g</w>\nleav ing</w>\nt ells</w>\nsen s\nta ste</w>\nkel ly</w>\nwor l\ngy m</w>\nric h\ne gy\npi d</w>\nma s\nâ Ĥ\ncourte sy</w>\nfran k</w>\nincre ase</w>\nwr itten</w>\npp ers</w>\nre l</w>\nha i</w>\ns as</w>\ns ound\ntt i</w>\nw ich</w>\nri ver\n.. .\"</w>\na g</w>\nfel low</w>\nro me</w>\nsm all\ngen cy</w>\nic an</w>\nlux ury</w>\npro of</w>\nme t\nwild life</w>\nmom ents</w>\nra ther</w>\ncor ner</w>\ncom pe\ncanadi an</w>\nlik ely</w>\ntherap y</w>\nli am\neconom ic</w>\nindi e\nrou te</w>\nfi ght\nho pe\nse tting</w>\nant ly</w>\ncro ss\nfant asy</w>\nde e\nsket ch</w>\ncomp li\nym i</w>\nru les</w>\nengine ering</w>\nfig ure</w>\nro w\n. ,</w>\nf w</w>\nsyd ney</w>\nw ou\nt ation</w>\ndre w</w>\nus es</w>\nthe re\nsp read</w>\nstruc ture</w>\npat rick</w>\nappa rently</w>\nro s\nh ills</w>\nw we</w>\nann y</w>\ncom mission</w>\ndi v\nf ying</w>\ncon sul\nanal ysis</w>\nex i\nten nis</w>\nvehic le</w>\nðŁĺŃ ðŁĺŃ\nas s</w>\nhigh ly</w>\nop ened</w>\nb ann\nðŁĴ Ļ\nmp h</w>\nwi shing</w>\nv or</w>\nfi f\ngive away</w>\nr r\nra y\nje ss\ng at\nic ymi</w>\nx it</w>\nhigh est</w>\nyor k\npi e</w>\ninvol ved</w>\nhigh er</w>\nri e</w>\nmal ay\nint elli\ndesp ite</w>\nche e\nsar ah</w>\nbe an</w>\nreco gni\nar sen\ntal ented</w>\npas sion</w>\nic h\nab c</w>\nlead s</w>\ndise ase</w>\nv is</w>\nse c</w>\npre senting</w>\nm illi\nhol e</w>\nsho ts</w>\nde part\nsurger y</w>\ngov t</w>\nb in</w>\ndu al</w>\ne vi\nlon ger</w>\nev ol\nscre en\nportra it</w>\net c</w>\nlo se</w>\nch at\np en</w>\np i</w>\nom a</w>\ns ick</w>\ner c\ncompan ies</w>\nen try</w>\nplan e</w>\ngr y</w>\nven e\nliver pool</w>\npremi ere</w>\nsha red</w>\na red</w>\nfil ms</w>\nir a</w>\nholi days</w>\ncric ket</w>\nici an</w>\nv ing\n. )</w>\nul timate</w>\ndi vision</w>\ncon duc\nse pt</w>\nfor ces</w>\nmon t</w>\ns mart\ndisa pp\nsun shine</w>\nin d\nb less</w>\nma de\ncol ors</w>\nfran k\nir on</w>\nbott le</w>\ns go\nm ood</w>\nj ason</w>\ner ic</w>\nbir th</w>\nte en\nrespon se</w>\ntar get</w>\nstate ment</w>\nfe ar</w>\nth el\nal um\nar ab\nbl in</w>\ndirec tion</w>\nste ps</w>\ner ial</w>\nwor ked</w>\nat l\nðŁĴ ķ\nfel t</w>\npol i</w>\nscen es</w>\nhom es</w>\nb ell\ne at\nate ful</w>\nt in</w>\nl ace</w>\nfol ks</w>\np se</w>\nan n</w>\nwis dom</w>\nfa v</w>\nbut ter\ns r</w>\nare as</w>\nsm oo\nbi z</w>\ndg es</w>\napp o\nmo re\nthe m\neffe ct</w>\nwindo ws</w>\nsun ny</w>\ncap ital</w>\ntot ally</w>\nc ities</w>\ngr ant</w>\nmb ers</w>\ns low</w>\nau tu\nil ities</w>\nw ro\nri sing</w>\nst ics</w>\nviol ence</w>\ni gh</w>\nqu ot\nh it\nt c</w>\nherit age</w>\nbu ff\nne s\nz ar\nden tial</w>\nex ac\ned ge</w>\nde ep\naren a</w>\nbe came</w>\nbenef its</w>\nmar ks</w>\nmb er\na z</w>\nam es</w>\npre ci\ndra gon</w>\nre g\nd ings</w>\ndo s</w>\nðŁĴ ª\nn el\ns ity</w>\nme al</w>\ndi st\nleg end\npur chase</w>\npic al</w>\nst ick\nf at</w>\ndu ba\nprofe ss\ncar to\npro f</w>\ncoun tries</w>\nrespon si\nse qu\nfa b</w>\ntribu te</w>\nhon ored</w>\nprac tic\npur ple</w>\nan ton\npa red</w>\nt ough</w>\nsumm er\nenviron ment</w>\ns ons</w>\nðŁĻ ı</w>\nm ps</w>\ngi es</w>\nher oes</w>\nt elling</w>\nhen ry</w>\nf en\nknow ledge</w>\nĢ ï¸ı</w>\nf r</w>\nne g\nu re\nac king</w>\nhear ts</w>\ns oo\nhol lywood</w>\nju mp\nsau ce</w>\nschedu le</w>\ntur n\nyo ga</w>\ncre ating</w>\nc ket</w>\ncre ek</w>\nâ Ń\ncustom ers</w>\nma dri\ngu l\nasse mb\nmoun t</w>\nc ell</w>\nto p\nst al</w>\ndav is</w>\nt wi\nsig n\npremi er</w>\niti ons</w>\nhe aring</w>\nun k</w>\npati ents</w>\napp ear\nheav en</w>\nal ty</w>\ndoc tor</w>\na e\nplat form</w>\nje ff</w>\nðŁĵ ·</w>\nregi onal</w>\nbi d</w>\nbox ing</w>\nex ten\nor ity</w>\na w</w>\nw ise</w>\nil le</w>\nsever al</w>\nbi e\ns itu\nsy ria</w>\nâľ ħ</w>\nremin der</w>\nenter tain\nli on</w>\npart ners</w>\nin n</w>\nph ar\nf au\npl s</w>\nexpe cted</w>\nsug ar</w>\ndeci sion</w>\ns b\nch ron\nassoci ation</w>\nleav es</w>\nvis ited</w>\nsh ap\nðŁĴ ĸ</w>\nfur ther</w>\nh ann\nw i</w>\nrun s</w>\nl er\nfun ding</w>\nfil led</w>\n.. ....</w>\ntin y</w>\nhan g</w>\nor g</w>\nco ol\nse min\nðŁı Ĩ</w>\nspon s\nnav y</w>\nsa int</w>\ndru g</w>\nd al</w>\nr oun\nco vered</w>\ntra ditional</w>\ninvest ment</w>\nde te\nal ism</w>\nf low</w>\nn is\nsun rise</w>\nfe at</w>\nf ted</w>\nwe ird</w>\nje re\nve gan</w>\nmedic ine</w>\nan o\nac cu\ndeli very</w>\ntemp le</w>\nchang ing</w>\nwil son</w>\nphili pp\nre fe\nn d\nis er</w>\ng ay</w>\nr and\nati ves</w>\nt ely</w>\np and\nintelli g\ng are\nam bas\nde mon\ncommit tee</w>\nstrate gy</w>\nrefu ge\nbud get</w>\nprote c\npi er\nex press</w>\nnom in\neconom y</w>\nal low\nic on</w>\ngal ax\no h\nindi vi\ndem and</w>\nvir gin\nlu ke</w>\nali sts</w>\nman i\ns mi\nju dge</w>\nent y</w>\nmic hi\nresul t</w>\nam ed</w>\nspe aks</w>\n' ,</w>\nhou ston</w>\nsh in\nb ing</w>\nfl y\nch em\nau to</w>\nv as\nge t\nar m\nthank s\nd in</w>\ngan g</w>\nx x\nsi on\nloc ated</w>\np l</w>\njo sh</w>\nin fo\njo ins</w>\nadver ti\not d</w>\nel d</w>\nsi e</w>\nre asons</w>\nv ent</w>\nðŁĩºðŁĩ ¸</w>\nâ ł\nconvers ation</w>\nstu di\nðŁĶ¥ ðŁĶ¥\ngo s</w>\ns ounds</w>\nun it</w>\nmu sc\nge l</w>\nack ed</w>\npac i\nco s</w>\nde re\nu u\na o</w>\nla m</w>\ninspir ing</w>\nar ms</w>\ntw are</w>\nmat ters</w>\nad dic\ndu de</w>\nex t\ncri sis</w>\nb ath</w>\nme et\nsing h</w>\nexpe ct</w>\ndel hi</w>\nresc ue</w>\nwor st</w>\nau g</w>\nshi pping</w>\nser ving</w>\nst o</w>\ndar k\nac es</w>\nhistor ic</w>\nlandsc ape</w>\ndesig ner</w>\nb illion</w>\ngr ateful</w>\nwa ke</w>\ne ve\nm iller</w>\nhou sing</w>\ndy nam\nis co</w>\nbe ha\nsh op\npr ou\ne as\na sia</w>\ne ding</w>\nk on\ndepart ment</w>\naw ar\nmar ine</w>\nin ci\nphotograph er</w>\nta pe</w>\nlo go</w>\nr ings</w>\nd it\n-- --\nvin yl</w>\nw c</w>\nvo ting</w>\nse ven</w>\nambas sad\ndal las</w>\nt u</w>\ncom ment</w>\nk ra\nb les</w>\nw ag\nu d</w>\nau dio</w>\nstri ke</w>\noffici al\no ts</w>\nme tho\nto ols</w>\nra di\nal an</w>\nhun t</w>\nwat ched</w>\na ke</w>\nfa ke</w>\ndrin king</w>\nmer ry</w>\nm l</w>\nb day</w>\nri o</w>\nni ke</w>\nc ant</w>\nre pe\nco stu\nmur der</w>\nak ers</w>\nch ers</w>\nou ts</w>\nbeg inning</w>\nso s</w>\nad es</w>\nn in\nnot es</w>\nwro te</w>\nsol o</w>\nc i</w>\nli ghting</w>\nur ban</w>\nbre xit</w>\natt end</w>\nshir ts</w>\npla yo\nac tress</w>\npl ic\nstand ard</w>\nquot es</w>\npar ade</w>\nanci ent</w>\nÂ ©</w>\ntur ing</w>\nre e</w>\npri mary</w>\nfla sh</w>\nciti z\nmat es</w>\nste in</w>\nz i</w>\nclin ton</w>\nsk in\ngen e\nhu m\ng ar</w>\nt le</w>\ny i\nfo cu\nde an</w>\npl ants</w>\ncy ber\nb u</w>\nom e</w>\nho p</w>\nad dress</w>\nti x</w>\ngi fts</w>\nrelation ship</w>\nsub scri\nfe ed</w>\nexac tly</w>\nhaw ks</w>\nex o</w>\nstre ss</w>\ns n</w>\narre sted</w>\nan e\nsof tware</w>\nz ero</w>\nthe me</w>\nmu mb\nim migr\nmi a</w>\nmake up</w>\nple asure</w>\nuni vers\nhar b\neng ine</w>\nap er</w>\nr in\nbr a</w>\ninstitu te</w>\nle ather</w>\nal th</w>\nsing ing</w>\nco s\ngh ty</w>\nme as\nst ic\nsi de\ninsur ance</w>\nco t</w>\npit ch</w>\nmoun tains</w>\ncri min\nsu pre\nvalent ine</w>\nat er</w>\nwou ldn</w>\nsc ale</w>\nrel ated</w>\nre gar\nstar tup</w>\npack ed</w>\nmi ke\nweek ly</w>\np ts</w>\ncoun t</w>\nha r</w>\ngott en</w>\nmin d\nber lin</w>\ncon ditions</w>\nswit ch</w>\ncor n</w>\nsa ve\ng li\nemer gency</w>\ntun ed</w>\nsto ck\ndiscu ssing</w>\nevery body</w>\ns day\nwhe ther</w>\nwrest ling</w>\nec es</w>\ngen der</w>\nch en\nðŁĳ Ģ</w>\nmadri d</w>\nmar athon</w>\ne gg</w>\ni er</w>\nth x</w>\nas king</w>\nkore a</w>\nwol f</w>\nay a</w>\ng m</w>\ng au\nat ory</w>\nv r</w>\ngra ss</w>\nk illing</w>\nb ble</w>\nur o</w>\nun i</w>\ne th</w>\nsh ore</w>\nth en\nre ale\nbot tom</w>\nex erc\nk ar</w>\nor ies</w>\nad ri\nsan ds</w>\nse x</w>\n. '</w>\nvolunte ers</w>\nper form</w>\npar liam\ninclu de</w>\ndeli ghted</w>\nexecu tive</w>\nfu el</w>\nkis s</w>\nã ħ\nchar ge</w>\nh u</w>\nca kes</w>\nve t</w>\ng lu\nagre e</w>\npr ices</w>\nn au\nh l</w>\ng ru\nra j\nstreng th</w>\nb ic\nsp ending</w>\nal es</w>\nav en\nb last</w>\n: (</w>\nyo f\nnor mal</w>\nsi x\nqu ick\nse a\nd aw\nmee ts</w>\nlo vers</w>\nupd ated</w>\npo tat\ncomple ted</w>\ncoo k</w>\nopportun ities</w>\np ure</w>\norgan ic</w>\ntem per\nc am</w>\navo id</w>\npar king</w>\nduba i</w>\nand o</w>\ndi stri\nto y</w>\ncomple tely</w>\ndon ald\ntri al</w>\nbas s</w>\nb oun\nback ground</w>\nv as</w>\nmar vel</w>\nlu m</w>\nru s</w>\nt ool</w>\ncom missi\nthrow back\nfin ding</w>\nis lam\n! ?</w>\nst op\ne vil</w>\nor al</w>\nresi dents</w>\ni denti\no ak\nðŁİ ¶</w>\nl il\nspan ish</w>\nchap ter</w>\nsto pped</w>\ndirec t</w>\nho sted</w>\npic ked</w>\nlab our</w>\nlew is</w>\ndefen se</w>\nà ®\nhealth care</w>\nwh is\nmat h</w>\npe ak</w>\nra ised</w>\nfi x</w>\nbu ll</w>\nth ir\nchel sea</w>\nfol k</w>\ntr e</w>\ncan di\npau l\nei ther</w>\nad am\npoe try</w>\njewel ry</w>\nðŁ ¦\npr ay</w>\nØ §\ng c</w>\no z</w>\nwi shes</w>\nfore ign</w>\nsun g</w>\nlear ned</w>\nen e</w>\nn ing\nmicha el\nillu stration</w>\nlegend ary</w>\nw av\nb au\nðŁļ ¨</w>\ncal end\nstre ets</w>\nâ Ĩ\nmon ster</w>\nbu ck\ng r</w>\nscho ol\nba th\nwa ste</w>\nne ck\nha wa\nbe ach\nre plac\njec t</w>\non er</w>\nfac tory</w>\ncoun t\nðŁĵ ¸</w>\nmor gan</w>\nder ing</w>\nse an</w>\nsteph en</w>\nde p\nno vel</w>\nvide os</w>\nic al\npress ure</w>\narsen al</w>\nex pre\nir s</w>\ntren ding</w>\nss a</w>\nfla sh\nre sear\nthr ough\nprofess or</w>\nscul p\nto s</w>\ngg ed</w>\nmm a</w>\nbe e\na pe\nhun ter</w>\nam i\nhe i\npla stic</w>\nbu cks</w>\nuni verse</w>\nle gen\nniger ia</w>\nple ased</w>\nri s\nthin ks</w>\nautu mn</w>\ni ds</w>\nd is</w>\nanth ony</w>\nðŁı ½</w>\nak ed</w>\ngla sses</w>\nfin ance</w>\nz er\nk as\ncon tract</w>\nnu mbers</w>\nsh aw\npartner ship</w>\nt il\nlaun ched</w>\ns al</w>\nvictor ia</w>\ntheat er</w>\nusu al</w>\nnam es</w>\nperio d</w>\neli za\ni th\nbar cel\nro cks</w>\nbag s</w>\nmat e\ndistri bu\nj on</w>\ndi ffic\nali zed</w>\ncur ren\nsco red</w>\nb ha\ndu blin</w>\nro se\nin ted</w>\nsoli d</w>\nbeha vi\nwal ker</w>\nsimp ly</w>\ngarden s</w>\nhead ed</w>\nin i\nohi o</w>\nwe ap\nf o</w>\ngl en\ne state</w>\nran dom</w>\nth under\nthr u</w>\nk ill\njac ket</w>\nit i</w>\nentertain ment</w>\nthanks giving</w>\nent al</w>\nen coura\nel o\na ther\ntan k</w>\nhigh lights</w>\nf ting</w>\nru le</w>\nmodel s</w>\nbor der</w>\nbj p</w>\nhus band</w>\nin done\nken ya</w>\nbe ars</w>\nal o</w>\nn inten\npi x\nstr o</w>\nor ders</w>\nsal ad</w>\nro ads</w>\nn or</w>\nl ation</w>\nsop hi\nðŁı ¼\npi eces</w>\nb one</w>\nmin s</w>\ninclu des</w>\nnu tr\nphi l</w>\ns ent\nfun dra\nga in</w>\nbor ough</w>\nn ad\nmon day\nactiv ity</w>\nit ems</w>\nbe coming</w>\nken ne\nde tro\ncar di\ngue sts</w>\nu x</w>\nworld wide</w>\nsever e</w>\nnew s\nthank ful</w>\nfic tion</w>\nve ge\nm all</w>\nsi an</w>\ner al</w>\ninj ury</w>\nle e\nmen u</w>\ndanc ing</w>\nscot ti\nexam ple</w>\n( #</w>\nna i\nstudi os</w>\nba i\nðŁĴ Ľ</w>\nj av\ndiam ond</w>\nvin ce</w>\nric k\nprote ction</w>\nlin col\ncham ps</w>\nappro ach</w>\nd ar</w>\nm ile</w>\nclou ds</w>\nje ff\nin fin\nl ers</w>\np les</w>\npe ace\ngo p</w>\nâĻ ¡</w>\ntech n\nstr a</w>\na verage</w>\nef fort</w>\nintroduc ing</w>\ndi versity</w>\naustr alian</w>\nam p</w>\nboo st</w>\ns ke\npati ent</w>\nappreci ate</w>\nici ans</w>\npu r</w>\nf ell</w>\nwoo ds</w>\nillu str\nðŁ ĸ\nag ency</w>\nac tions</w>\nbrit ain</w>\nunder way</w>\nse attle</w>\nel and</w>\nag o\nf ill</w>\nstre aming</w>\npro test</w>\nchalleng es</w>\nky o</w>\net sy</w>\ncoo king</w>\nexper t</w>\nru ss\nrain bow</w>\ncommer cial</w>\nsp in\nbe ats</w>\nc ry</w>\nval u\nel i</w>\nth row</w>\ngr ams</w>\nle vels</w>\nmichi gan</w>\nc ad\nador able</w>\nconst itu\nw s\npu b</w>\nmid night</w>\nth at\nnet fli\nbraz il</w>\ndie go</w>\nregu lar</w>\njo y\nâĤ ¬</w>\nli qu\nea stern</w>\nk ni\nfl at</w>\nn p</w>\nbro wn\nw er\nse y\ntt ers</w>\nac ting</w>\nv anc\ncy cling</w>\nprogram me</w>\nra w</w>\ncomple x</w>\ntat too</w>\nthrowback thursday</w>\nse ssions</w>\nro oms</w>\nsi ght</w>\nspeci es</w>\nbom b</w>\nlau gh</w>\nke eps</w>\nmo on\noffic ers</w>\ncon ver\nt r</w>\nha sh\nt ack\nri ous</w>\nad ap\na j</w>\nreco gn\nex po</w>\nsug ge\nconfir med</w>\nrol ling</w>\ndre ssing</w>\nic t</w>\nfri day\nph ones</w>\nri dge</w>\ncon cept</w>\nro y</w>\nke ys</w>\nef for\nc ate\nk ne\nev en\nl ay</w>\ncommun ities</w>\nmo d\nn az\nevery where</w>\nal ab\nbit coin</w>\nban ks</w>\nout door</w>\nfeder al</w>\nsto res</w>\nh p</w>\nc al</w>\nm ely</w>\nsig nific\nbe ar\nre public\nclo ser</w>\nal lah</w>\npic k\nx d</w>\npal ace</w>\nch ill</w>\nb am\ner ous</w>\nun a</w>\nal len</w>\nout standing</w>\nolym pic</w>\nsupp ly</w>\nfi gu\nv au\nl p</w>\nchar lie</w>\nun es</w>\n> >></w>\nlegen ds</w>\nici al</w>\nco ast\nbenef it</w>\nmul ti</w>\nf its</w>\nfar mers</w>\nam ount</w>\nsi sters</w>\nhar ve\nhon ey</w>\nque en\nb ers</w>\npl ann\nâŃ Ĳ\nm u</w>\nbarcel ona</w>\nal ber\nstat us</w>\nre main</w>\nex tra\nc andy</w>\nvi ous</w>\nâľ Į\no v\nwarri ors</w>\n-- ></w>\nju mp</w>\nam ar\nx mas</w>\nstu dies</w>\ni ors</w>\nk or\ndon ate</w>\npre p\nfi sh\nim a</w>\npain ted</w>\nad mini\nco splay</w>\nspor ts\ndro ps</w>\nfi ghter</w>\nevi dence</w>\nðŁĴ ª</w>\nla ke\nro b</w>\ncine ma</w>\npro file</w>\nÃ ±\nstan ds</w>\nleg acy</w>\nsh ape</w>\nro of</w>\nci vil</w>\ni ans</w>\nsy l\nsh am\nvo ted</w>\nre tail</w>\nph illi\nli sted</w>\ndu ty</w>\nn b\nth es</w>\nf are</w>\nau ction</w>\nffici al</w>\nstor ms</w>\nd p</w>\nl oun\nsh ops</w>\nal y\nani me</w>\nmulti ple</w>\nðŁĺį ðŁĺį</w>\npsy cho\nje an</w>\nap art\ncandi date</w>\ngg y</w>\ncon f</w>\njose ph</w>\nw ick</w>\nme at</w>\nfr ame</w>\nc l</w>\nfor got</w>\nph y\nf ing\nli ed</w>\nre p</w>\nse ed</w>\nf all\nu fc</w>\nnu t</w>\nlin d\nmo de</w>\nfiel ds</w>\nen ce\ns ley</w>\nðŁ¤ Ķ</w>\nch ill\nfollow ed</w>\nannoun ces</w>\ncor ru\ntro phy</w>\nthem selves</w>\nac le</w>\nal du\nk ong</w>\nl on</w>\ns v\nbro ke</w>\nander son</w>\nta i\nstor y\ntempor ary</w>\nactiv ities</w>\nk ati\nari z\ncry stal</w>\nspo ke</w>\nextre mely</w>\ntra ding</w>\nðŁĴ ļ</w>\nÃ ¼\nin ch</w>\ned in\nout fit</w>\nequ ip\nma di\nform ed</w>\nbe ef</w>\npo p\nti ger</w>\nthis day</w>\nti red</w>\nneigh b\nre tro\nis a</w>\nun t</w>\nt as\nkan sas</w>\nde st\nsecon ds</w>\nta y\nhur ric\no u</w>\ngalax y</w>\ndad dy</w>\nbro w\nbur ger</w>\nen ced</w>\nde sk</w>\nac cur\nsecre tary</w>\nel ite</w>\nk ab\nch in\ntouri sm</w>\nbud dy</w>\nici de</w>\ndre ssed</w>\nu d\nvac ation</w>\nche ers</w>\ncom for\ncharac ters</w>\nj et</w>\nbu ying</w>\nl ins</w>\nn ap\nreale state</w>\nli e\naf c</w>\ni ii</w>\nf ame</w>\nn r\nb at</w>\nag ent</w>\nma kers</w>\nâĢ ¼\nsec tor</w>\nop ti\nle on\ndi et</w>\npra yer</w>\nhi p</w>\nmi r</w>\nle x\nbr y\nan a\npas sing</w>\nw en\nreco very</w>\nak i</w>\npo pul\nres ort</w>\nmar ia</w>\nstu ck</w>\nread s</w>\nti er</w>\nperfe c\nnetfli x</w>\np oo\ncham p</w>\no c</w>\nre duce</w>\nwe red</w>\ncomm ents</w>\ncla im</w>\nacci dent</w>\ns ag\nh ack\nsal t</w>\nkin da</w>\nk iller</w>\ni os</w>\nz y\nex change</w>\nlec ture</w>\neng er</w>\nic king</w>\nt au\nreve als</w>\npri son</w>\nz om\ngh an</w>\nu l</w>\njour nal</w>\ni ot</w>\ntr in\njon a\ngovern or</w>\ncap e</w>\nquar ter</w>\nspec tive</w>\nimpre ssive</w>\nbab ies</w>\nt x\nm ill</w>\no y\nhar ri\njo int</w>\nsu e</w>\ncollabor ation</w>\ntren d</w>\nrevolu tion</w>\nre new\nalum ni</w>\nge tt\nsh ell</w>\nsun day\nent u\nni c</w>\ndonald trump</w>\nblock chain</w>\npaci fic</w>\nexpla ins</w>\nsp y</w>\nad voc\npar adi\nto f\nstar ring</w>\np av\nfe ed\nbr ac\nsmo ke</w>\nham p\ny am\nto kyo</w>\nsi mon</w>\nd h\ne ffici\nphys ical</w>\nn j</w>\nell i</w>\ns low\ngradu ate</w>\nameric ans</w>\nti fy</w>\nf red</w>\nap ore</w>\nfin ds</w>\nrob in\nwe t</w>\nnot ice</w>\nse mi</w>\nun ve\nk om\npil ot</w>\nscre ening</w>\nda ily\nðŁĴ Ĺ</w>\nroy al\nsp a</w>\nvo tes</w>\nn ag\nwh ate\natt ending</w>\nexper im\nad dition</w>\nk ate</w>\nsto l</w>\nm ali\nfoo t\nchri st</w>\nch an</w>\nde e</w>\nlic en\nglo bal\nmo ore</w>\nti a</w>\nbri gh\nmyster y</w>\ny ay</w>\nâĿ¤ï¸ı âĿ¤ï¸ı\ncre ati\nme chan\nclo ck</w>\ndi c</w>\nâĢ Ķ\npp er\nal ph\nthrough out</w>\nal low</w>\nre sources</w>\nselec tion</w>\nham il\nbb q</w>\naa aa\nvirgin ia</w>\ndis ney\nen g</w>\nso red</w>\ndrin ks</w>\nf ancy</w>\nconsi der</w>\nend a</w>\njan e</w>\nhand made</w>\ndu l\non tari\ni us</w>\ns ville</w>\ncolor ado</w>\nwhate ver</w>\nwhe el</w>\npromis e</w>\nne ver\ndesig ns</w>\nab ly</w>\nsex ual</w>\nvanc ou\nat i</w>\ncon vention</w>\ncul tural</w>\nsing apore</w>\npro mo</w>\nload ed</w>\ngla sgo\npp l</w>\nn oo\nke e</w>\nste m</w>\nmen tion</w>\ni do\ncru ise</w>\nri ding</w>\nbe comes</w>\nbe y</w>\nâļ½ ï¸ı</w>\ntw in</w>\ndedic ated</w>\nna sh\nde si\nwork out</w>\njen ni\ni v\ngrou ps</w>\nrela x\npho eni\nli ft</w>\nmix ed</w>\nm ck\np c\nmu st\nme tro</w>\nci es</w>\ny ar\na im\nang er</w>\ni e\nrec y\nmarri ed</w>\ndro pped</w>\neng ag\nle st</w>\nambassad or</w>\nop h\nde s\nw ick\nassi stant</w>\nnat ur\nfa il</w>\nl td</w>\nshor t\nk ap\nsha w</w>\nbi gger</w>\nrema ins</w>\ncrit ical</w>\nsur vey</w>\nco verage</w>\ner son</w>\nwin d\nn b</w>\nbil ly</w>\nlet es</w>\nac ts</w>\njim my</w>\nat lan\nal and</w>\nt c\nimport ance</w>\ndam age</w>\nf g</w>\nstor age</w>\ntw t</w>\nbon d</w>\nbal ance</w>\ncr ying</w>\npu ppy</w>\nvo te\npu sh</w>\nðŁĴ ľ\npol y\nme l</w>\nlon don\nterr ori\neffec tive</w>\ncorpor ate</w>\natl anta</w>\njac o\nnas a</w>\ngre ek</w>\nsen ate</w>\ni sh\nev a</w>\nintellig ence</w>\neffor ts</w>\nal co\nk un\nh all\ndi ag\nclaim s</w>\nfir st\nh b\nba e</w>\nv ul\npu ll</w>\nÂ °</w>\nse par\nspe ed\nvic ti\non thisday</w>\naudi ence</w>\nr ates</w>\nte ach</w>\nfil ming</w>\nbu sh</w>\nson g\ny um\nbr un\nra ine</w>\naw a</w>\npar ks</w>\nð Ŀ\nra bb\nra ch\nra id</w>\nreach ed</w>\nra il</w>\nmo ves</w>\nselec ted</w>\nfr i</w>\nra ising</w>\nom y</w>\nst ones</w>\nsu k</w>\nfranc isco</w>\ncas es</w>\ncap it\ncon fu\nw tf</w>\npo ke\nequip ment</w>\ngre g\ness ential</w>\noff ering</w>\nne x\npi es</w>\nbe c\ncre ation</w>\nchair man</w>\ncro wn</w>\nw al</w>\njohn ny</w>\nshi ft</w>\nne ck</w>\nban g</w>\nbir d\nðŁĺ ı</w>\ndu ck</w>\nre serve</w>\nde pu\nma sters</w>\nover all</w>\nno tic\nju ice</w>\nsne ak</w>\nche er</w>\ncla sses</w>\neag les</w>\nn ca\ncar pet</w>\nci vil\ncoach es</w>\nhar ris</w>\nu ps</w>\nb alls</w>\ndec or</w>\nmar tin\nro s</w>\nv ice</w>\nannoun cement</w>\nwho se</w>\nti gers</w>\nste red</w>\nc ts</w>\ndr am\nste el\nyoun g\ninst all\nsupp o\nrecor ding</w>\nde ck</w>\nse ats</w>\nl der</w>\nang le</w>\nbo t</w>\nsty les</w>\nelec tions</w>\nfor tun\nn ab\nbut ter</w>\nari an</w>\nka sh\nin ner</w>\nou red</w>\nbe ast</w>\nwe i\nic onic</w>\nexper ts</w>\nne cess\nb eng\njam es\nli a</w>\ngre ece</w>\nðŁĵ ·\nðŁĺ ģ\ngood bye</w>\nm itch\ntw ice</w>\nmumb ai</w>\nste am</w>\nru sh</w>\nmed al</w>\nne tt</w>\nfashi on\nt ar</w>\nr s\nsav ing</w>\nric ul\nl m\nsleep ing</w>\nbrook lyn</w>\nmis s\nsen ding</w>\ndisco vered</w>\nsp here</w>\nof theday</w>\nk icks</w>\nmissi ons</w>\nw right</w>\ner n\nght ly</w>\ni ous</w>\nmel bourne</w>\nstar tu\nmo ved</w>\ncar ry</w>\nd ak\nag ues</w>\nbel gi\ne ma\nway ne</w>\ndo t</w>\ner ie</w>\npe l</w>\nit unes</w>\nmatthe w</w>\nno body</w>\nest ab\ncal m</w>\nwin ds</w>\nlu c\nprep are</w>\ntren ds</w>\nexerc ise</w>\nadv ant\nðŁĴ ¯</w>\nathle tics</w>\napp s</w>\nc tions</w>\nadv ance</w>\nlaun ches</w>\nlitt le\nreal donaldtrump</w>\neliza beth</w>\ncarol ina</w>\nhu b</w>\nhi dden</w>\nn w</w>\nus er</w>\npol l</w>\ngreat er</w>\nmo st\nf ed</w>\np at</w>\nlife style</w>\ns ati\nsco res</w>\nmarri age</w>\nl r</w>\naven ue</w>\nde serve</w>\nri f\nðŁ Ĺ\nwat ch\nchampion ships</w>\ngr ay</w>\nen ni\ncot ton</w>\ng om\nwhe re\npack age</w>\nsu m\nab solu\nnew ly</w>\nfoo ds</w>\nty ler</w>\nassemb ly</w>\nmusli m</w>\nban k\nre memb\nop tions</w>\nproduc er</w>\nland o</w>\nfun ds</w>\nu pper</w>\nshad ow</w>\npro gre\nco p</w>\ning e</w>\nleg s</w>\ndetro it</w>\nhill ary</w>\njo se</w>\ngi ants</w>\nsou p</w>\nsustain able</w>\nt us</w>\nclo thes</w>\nroc king</w>\nn z</w>\nmin ne\nmat eri\nbru ce</w>\near t\nca sting</w>\nindepend ent</w>\nthou sands</w>\nta h</w>\nde cl\nveter ans</w>\nli ons</w>\nwra p</w>\nâĢ ¦\nde ss\nbl ing</w>\nst ine</w>\ne ggs</w>\no on</w>\nclo sing</w>\nz ay\nat t</w>\nbac on</w>\nfa il\nariz ona</w>\nde pre\ngho st</w>\nnew sp\nw ers</w>\nvi p</w>\nli ked</w>\nid ent\nvolunte er</w>\nad ult</w>\npu pp\ncir cle</w>\nmat erial</w>\ndegre e</w>\ngro wn</w>\nboo m</w>\ncalend ar</w>\nsu r</w>\nvie wing</w>\nath letes</w>\nch and\nre ll</w>\nasi an</w>\nen tr\nvol ley\nvicti ms</w>\nbo dy\nm ama</w>\ntrans fer</w>\nge ek</w>\nin dic\nsav ed</w>\nma i\ng ent</w>\nit s\nloun ge</w>\nk ol\nthe ory</w>\nsitu ation</w>\nis lands</w>\nar th\nz oo</w>\nfloo d</w>\nvi ously</w>\nshow ed</w>\nparliam ent</w>\nch ev\nel ine</w>\nat trac\nab ad</w>\nta il\nh rs</w>\nlu s</w>\npor tu\ngor y</w>\nprovi des</w>\nto ys</w>\nde ath\nin fe\nan ce\ng le\nli am</w>\nlo ver</w>\nhu d\ndv d</w>\nreve aled</w>\ng w\nre ment</w>\nca the\nl ying</w>\nra dio\nder by</w>\nstor s</w>\nche mi\nhosp it\nâľ ¨\n' :</w>\nilo ve\nle mon</w>\nre public</w>\ns ni\nne ss\ndo or\nre action</w>\npre gn\nfla v\nschol ar\nspo tify</w>\nis ation</w>\nvis ual</w>\naw are</w>\nspon sored</w>\njo ke</w>\nless ons</w>\nleg is\nlo ck\nsi mil\nðŁĺ ĭ</w>\nkin d\nla y\nma h\nho ping</w>\nvancou ver</w>\nas er</w>\nclean ing</w>\ngal a</w>\nthre at</w>\nla p\nach e</w>\nro mance</w>\nex pen\nre post</w>\nz am\ne pi\nmir ror</w>\no ak</w>\nad ul\nbat man</w>\ns lu\nl c</w>\nvie wed</w>\nre views</w>\nd ates</w>\nindone sia</w>\nacti vi\noff en\nlea f</w>\ni si\nag ricul\ncostu me</w>\ns ites</w>\nspir itu\nappear ance</w>\nir y</w>\nst air\napplic ation</w>\nspec tac\nic ity</w>\nski es</w>\nhand le</w>\npun k</w>\nparadi se</w>\nt n</w>\nde al\nprovi ding</w>\ndo c</w>\nrecei ving</w>\nbre w</w>\nmicro soft</w>\nÃ ¶\nfer r\nme tro\nth ail\ny um</w>\ncar ter</w>\nÃ ¡\ngent le\nbre aks</w>\ncoo per\nshow case</w>\ncu tting</w>\negy pt</w>\nbab y\nsemin ar</w>\ngl ori\nss on</w>\nfa ve</w>\nre hear\nlo tte</w>\nla dy\nal as\npre p</w>\ndeli vered</w>\nnu clear</w>\nir o</w>\nengag ement</w>\nat ta\ncon ven\nz an\ngl ory</w>\nhol ds</w>\nbusine sses</w>\nstr ange</w>\nsch e</w>\nit self</w>\ngra d</w>\nmar kets</w>\nf alling</w>\nst ats</w>\nge on</w>\nbu dd\nli s\nshe et</w>\nthi si\nco lo\ndeser t</w>\nregi stration</w>\nig n\nexpla in</w>\ninter ior</w>\nla ws</w>\nwrit ers</w>\nspr ings</w>\nk r\nfri ed</w>\nblo om\ninf ra\na o\ncre d\npa st\nline up</w>\nbo o</w>\nbre a\nboo ts</w>\ncelebr ity</w>\natt acks</w>\nbro ok</w>\nev es</w>\nex cu\ncher ry</w>\noo p</w>\nfas cin\nboy friend</w>\nse as\nn ine</w>\neffec ts</w>\npo wered</w>\nk ha\nðŁĺ Ģ</w>\nsh out\ncon dition</w>\ni j\nher o\nenter pri\nwin ter\napplic ations</w>\nsho e</w>\ng el\nbatt le\npro grams</w>\nw art</w>\nðŁĴ ¥</w>\nra p</w>\nho l</w>\ndang erous</w>\ndi a\ncoun ter</w>\nric s</w>\ni or\nk night</w>\nco at</w>\nemo tional</w>\nat ures</w>\nd as</w>\nwhe el\nfore cast</w>\ntran sport</w>\nglasgo w</w>\nking dom</w>\nprepar ing</w>\nim medi\nff in</w>\nawar ded</w>\nprin ting</w>\nro man</w>\nfight ers</w>\nany more</w>\nbel t</w>\np ine</w>\nwin e\nx i</w>\nemploye es</w>\nlogi es</w>\nal led</w>\nde mo</w>\nbirth day\nange les</w>\nlo g</w>\ndri vers</w>\nneck lace</w>\nk ath\ns it\nathle te</w>\nef s</w>\ns burg</w>\npur pose</w>\nresi stance</w>\nrele ases</w>\nt is</w>\nvari ous</w>\ndeli ver</w>\nch al\ns anc\nopp o\ncra w\nneu ro\ndr a</w>\nsuppor ters</w>\nsna p</w>\ndiffic ult</w>\nswe ar</w>\nlogi st</w>\npa th\nattemp t</w>\nà ¥\nswim ming</w>\nste ve\nhur t</w>\ninclu ded</w>\nb ap\nwa re\nðŁĴ ĭ</w>\nend ers</w>\nja ke</w>\nle eds</w>\ncli mb\nl b</w>\nim ple\nli sa</w>\nclo thing</w>\nðŁĺ İ\nd t</w>\ncom pla\nsw ing</w>\nstra w\nv als</w>\nk le</w>\nus ers</w>\nstor m\ncu ts</w>\nontari o</w>\np an</w>\nhand some</w>\ni ow\nar gu\nchec king</w>\nscotti sh</w>\nĶ ï¸ı</w>\nsi er</w>\nem ma</w>\npo d</w>\npatter n</w>\nde sh</w>\nen h\ned ward</w>\nt ing\nk h</w>\nhal f\nlincol n</w>\nmo ther\nal leg\nr c</w>\nvolley ball</w>\nd n</w>\ng ay\nall y\nle ton</w>\ngro ve</w>\nl oud</w>\nadv anced</w>\nre spec\ncli ent</w>\nsupre me</w>\nthail and</w>\nho w\ngi g</w>\nto i\ndo t\ndol lar</w>\nðŁĳ ĩ</w>\np it</w>\nr b</w>\nh n</w>\nproduc ed</w>\ngg ers</w>\nâĨ Ĵ</w>\nml b</w>\ncan vas</w>\nfin eart\nus d</w>\nin the\np son</w>\nactu al</w>\ns l</w>\nt b</w>\nip ad</w>\nen sure</w>\nu mb\nw d</w>\nsk a</w>\nmar s</w>\nk end\nf eli\nth ing\ncount down</w>\nabsolu te</w>\nr out\ndra l</w>\np y</w>\ninju red</w>\nmin t</w>\nhun ting</w>\nmm er</w>\ns age</w>\nli gh\nac ity</w>\nex pan\nmur ray</w>\nar o\nsec ure</w>\nfour th</w>\neag le</w>\nreli ef</w>\nst akes</w>\nindustri al</w>\nclar k</w>\nunder standing</w>\nsee m</w>\npl enty</w>\nsil ver\ncla u\nthre at\nsa il\npro duce</w>\nab str\nis is</w>\nb r</w>\neng ers</w>\nwor ry</w>\nbie ber</w>\ns j\njust in\nreali ze</w>\nky le</w>\nesp n</w>\nfil ter</w>\ns ch</w>\nty pes</w>\ngame dev</w>\nd ing\ntwit ter\nsoldi ers</w>\np om\ncar bon</w>\ny ards</w>\nchild hood</w>\nri ed</w>\nke l</w>\nele ph\nt ons</w>\nkey note</w>\nqui et</w>\nwi re\npo sting</w>\nis sa</w>\nrepre senting</w>\nbac ks</w>\nalex ander</w>\ncelebr ates</w>\nta ining</w>\n| |</w>\nch or\nesc ape</w>\npe ek</w>\nti ves</w>\nfiel d\nssi e</w>\nim pac\nspons or</w>\nr c\nwe dd\ncann ab\nsi des</w>\ntrac ks</w>\ncom par\ncon trac\ntechn ical</w>\nbi ble</w>\nexpl oring</w>\nsh are\ntra v\nn ate</w>\nill o</w>\nsc ru\nm ingham</w>\ngun s</w>\nof the\nsh ame</w>\nse es</w>\nca tho\nac cess\nce l</w>\nrepor ted</w>\nÂ »</w>\nmari o</w>\np ad</w>\nhope fully</w>\nou se</w>\ny on</w>\ndisapp o\nol o</w>\np itt\npa c</w>\nga p</w>\ncru sh</w>\ns g</w>\nk le\nge m</w>\nemp ire</w>\ndir ty</w>\na is\navi ation</w>\nze aland</w>\nfac ing</w>\nhigh way</w>\nd anny</w>\nspi der</w>\not ta\nðŁĺ Ħ</w>\nw y</w>\ncol ours</w>\nin fl\nco sts</w>\nolym pics</w>\nau s</w>\nh m</w>\nho ward</w>\npas ses</w>\nlau ren</w>\nmu sh\nop in\nr ho\ndisc ount</w>\noper ation</w>\nem ily</w>\nmm m</w>\ncham ber</w>\nd il\nto yo\nshi p\nsam u\npic tured</w>\nun ic\npo l</w>\nkeep er</w>\ncarto on</w>\nst en\nig nor\nn ations</w>\nn l</w>\nta sting</w>\ndeta il</w>\noffici als</w>\nmo tor</w>\nfranc is</w>\ned itor</w>\nðŁĳ ĩ\npe ts</w>\nrang ers</w>\nt g\nr n</w>\nw ri\nnic hol\ni se\nspo ts</w>\nani e</w>\nchec k\ntri ple</w>\nku mar</w>\nspe akers</w>\nic ing</w>\npre pared</w>\nab use</w>\nfriend ship</w>\nmon th\nswi m</w>\nair e</w>\nsc ent</w>\nhamil ton</w>\nindi an\nj es\nyum my</w>\nte ars</w>\nda wn</w>\ni zed</w>\nworl ds</w>\nðŁ ķ\nb illi\nst one\nn hs</w>\nba sic</w>\np or</w>\nst le</w>\nir on\nol der</w>\ncle vel\ne ing</w>\nðŁĺįðŁĺį ðŁĺį</w>\nprin ts</w>\nfir m</w>\nair craft</w>\nfin est</w>\ndevel op</w>\naar on</w>\nt z\ngra ham</w>\nown ers</w>\nfo li\nless on</w>\nqu es</w>\nbab e</w>\ncra ft\nph en\nju n</w>\nbir mingham</w>\nv ine</w>\nll er</w>\ni an\nfineart america</w>\nevol u\nst ab\nim per\nwar d\ncom ic\nwi z\ninv ited</w>\ndu ke</w>\nmat ch\npor ts</w>\nro ger</w>\ndiag no\nke pt</w>\nte st\nvis u\nr hy\nso c</w>\nto x\nb aker</w>\nsur face</w>\nco vers</w>\nman s</w>\nb its</w>\nx box</w>\nff le</w>\nn an</w>\ngar d\nh art</w>\nwat ers</w>\nv illa</w>\nre tro</w>\nlight ning</w>\ncatho lic</w>\ndemocr acy</w>\nneigh bor\npen n\ncr an\njona than</w>\nla ura</w>\nvi bes</w>\nsu b</w>\ncoach ing</w>\nclear ly</w>\nuk raine</w>\nbra ve</w>\ncommit ment</w>\nt all</w>\nmar t</w>\nra p\nmo di</w>\nsco tt\nbro s</w>\nshow er</w>\nðŁı ¾</w>\nâĺº ï¸ı</w>\ncou sin</w>\nappro ach\nbr e</w>\ncom pos\nhil ari\nphil ly</w>\ng ad\nquick ly</w>\nri an</w>\nt m</w>\nvir tual</w>\nhou ses</w>\nk t</w>\nphoeni x</w>\nw ire</w>\nff y</w>\nb unch</w>\nanc ing</w>\ntal e</w>\nsnap chat</w>\nstar ter</w>\nh t</w>\nk icking</w>\nap art</w>\nth y\n) !</w>\nblo gger</w>\nit z</w>\ncom fort</w>\nang els</w>\nw ash</w>\n\" :</w>\nar gent\nre quest</w>\nhon est\nmi ghty</w>\nbo bby</w>\nk g</w>\nro l</w>\nthou se</w>\nex po\nh c</w>\ntab les</w>\nmag ical</w>\npo sts</w>\nde m</w>\nn w\nor lando</w>\nab er\n* **</w>\nðŁĺ ľ</w>\nenviron mental</w>\ntrans formation</w>\nmi le\nw ic\nhir ing</w>\nma ine</w>\nbo ar\nr ying</w>\nti s\nnit ure</w>\ntwee ted</w>\nanton io</w>\nopin ion</w>\nfin ale</w>\ndi y</w>\nf is\nth in</w>\ntrou ble</w>\nle go</w>\nfi les</w>\nqu art\nsp a\ncurren cy</w>\ncli mate\nfan art</w>\nrail way</w>\nsp ace\nban ds</w>\ndani el\nmo tion</w>\nl eng\nhol der</w>\noc cu\nmar ie</w>\ncathe dral</w>\nbu zz\nbi es</w>\nnas car</w>\nbm w</w>\nbat tery</w>\nchar lotte</w>\ndoc tor\nzz le</w>\nse ven\nin san\nd dy</w>\nst en</w>\nlab or</w>\nthr illed</w>\nse ren\ndocu mentary</w>\nwav es</w>\ncer tain</w>\ncan did\nallow ed</w>\nninten do</w>\nstar wars</w>\nta p</w>\nhome made</w>\nd les</w>\nther ing</w>\nbre e\nemp ty</w>\npi ano</w>\npos iti\ncoun try\npor k</w>\npu ts</w>\nper ry</w>\nm atic</w>\nspot light</w>\nti st</w>\nor ities</w>\nwe alth</w>\nc p\nbar bar\ncommit ted</w>\nas sau\npro fit</w>\ne ight</w>\nhu l\nfini shing</w>\nrun ner</w>\nss o</w>\ninsp ec\nchar ged</w>\nchrist op\nlo sing</w>\nco al</w>\nho o</w>\nele v\nde le\nmo ham\ndon ation</w>\nc able</w>\nclin ic</w>\nj in\nmanag ed</w>\nter ing</w>\nâ ¬\nur ban\ndepu ty</w>\nbb er</w>\nbur n\nacade mic</w>\no tt</w>\nsta ke</w>\nit er\nsto wn</w>\nack er</w>\nadvent ures</w>\nad ams</w>\ngre g</w>\npro m</w>\nvo l</w>\nac qu\ncon gre\npa int\ncitiz ens</w>\nc all\naf ford\nv c</w>\nas ks</w>\nthe tic</w>\nindepend ence</w>\nâ Ľ\nh itting</w>\nbl on\nfu ture\nâ ı\nin no\ngen e</w>\nbo ards</w>\ndi stance</w>\nse t\nre mem\nth al\npre vent</w>\nl ang\nob jec\nsu sp\nmat t\nin duc\nbor o</w>\npi one\nre di\nvir tu\nprin ted</w>\nsco pe</w>\nshar k</w>\nsuc ce\na stron\nil legal</w>\nj ag\nc ting</w>\nine e</w>\nat o\nrob in</w>\nnutr ition</w>\nb f</w>\ndu tch</w>\nb n</w>\nfur niture</w>\nfor gotten</w>\nat ar</w>\nru p\nhy per\nbran ch</w>\ncommunic ation</w>\ndegre es</w>\non ia</w>\nun cle</w>\npromo te</w>\nor che\nwi i</w>\nj s</w>\nbut ton</w>\nma jor\nc bs</w>\nbri stol</w>\npremi um</w>\nordin ary</w>\ne dit</w>\nm g</w>\nwe ed</w>\nst even</w>\n: '\ngu s</w>\nte s\ncap tured</w>\ndru gs</w>\ndo w\nwr ites</w>\nbi shop</w>\nwhe els</w>\nali zation</w>\ndisco very</w>\nw r</w>\nrach el</w>\nne il</w>\nhy dr\ncu test</w>\nentreprene ur</w>\nkore an</w>\nore gon</w>\nul ty</w>\nperfec tly</w>\nsuppor ted</w>\nhistor ical</w>\nt wins</w>\nell y\nwe l</w>\nde vil</w>\nin come</w>\nscienti sts</w>\nde leg\nh en</w>\non i</w>\nic ed</w>\ngi o</w>\ncur ry</w>\nreve al</w>\ne g\nbuff alo</w>\nn ol\nop era</w>\ncamer on</w>\nhaha haha\nj ab\ngradu ation</w>\ncra ig</w>\nr al\ni f\norgani zation</w>\nle ge</w>\ng ang\nsu d\nedin burgh</w>\nl ack</w>\nfli es</w>\ng ate\nthr ones</w>\nq b</w>\nthe real\ne leg\npp in</w>\nc les</w>\njam ie</w>\ntn am</w>\ncryp to\nou l</w>\np ages</w>\na se\nroo ts</w>\nstu pid</w>\na did\nboo t</w>\nprote in</w>\ns ap\nsi um</w>\nsu s\nend or\nfun ction</w>\ndon t\nen na</w>\nch y</w>\nsqu e</w>\nwor ker</w>\nm tv\ne a</w>\nk an</w>\nðŁĴ ļ\nmu s</w>\nprofessi on\nt to</w>\noper ations</w>\nal lo\nc tor</w>\ninv ite</w>\nsc and\nou th</w>\nz im\nlin ks</w>\ncli ents</w>\nsam sung</w>\ndiscu sses</w>\nn ell</w>\nul tra</w>\nsome where</w>\nste wart</w>\nine t</w>\nde z</w>\nb out</w>\nfac tor</w>\nti an</w>\ntr ans</w>\njere my</w>\nd b</w>\nðŁĩ ¬\nor n</w>\ndevelop ing</w>\nspo l</w>\ncoo per</w>\nma u\nrememb ering</w>\ntre k</w>\nfamil y\nsen iors</w>\nfo ster</w>\natt ended</w>\nw ing\ntrans form\nele mentary</w>\nhor iz\nli sting</w>\nmalay sia</w>\nit ch</w>\nwarri or</w>\nphilipp ines</w>\nruss ell</w>\nm end\niniti ative</w>\ncre ep\nto ps</w>\nbr iti\na ur\nshar p</w>\nadverti sing</w>\nug ly</w>\nachi ev\nmateri als</w>\nbu g</w>\ndev ice</w>\nbon us</w>\nfac ility</w>\ncol e</w>\nnh l</w>\ny as\nplann ed</w>\npol e</w>\nexcell ence</w>\ntr ick</w>\ncon fl\nr p</w>\nachi eve</w>\nlo an</w>\nswa g</w>\njess ica</w>\nho we\np our</w>\nsc u\nz oo\nr ated</w>\ndre sses</w>\nre bel\nmex ican</w>\nco ordin\nme ss</w>\natlan tic</w>\nt l</w>\nosc ar</w>\nwal ks</w>\nphar mac\ninvestig ation</w>\n... #</w>\ncc i</w>\neas ily</w>\nmonday motivation</w>\ny ment</w>\nau ti\nfor ced</w>\nar med</w>\ncolle agues</w>\npap ers</w>\npro per</w>\nsha ke\nbu c\nle an</w>\nexhi bit</w>\ne vement</w>\nco tt\nbi z\nsp er\nk ent</w>\nsw an\n/ @</w>\ngirl friend</w>\nhaw k</w>\nâĺ Ģï¸ı</w>\nmon o\nðŁĴ Ľ\nstat ue</w>\nðŁĺ ³</w>\nra s</w>\nte eth</w>\npreci ous</w>\nt ile</w>\np am\nswi ft</w>\nv ali\nno se</w>\ndr unk</w>\nexperi ences</w>\ncome back</w>\ngen ius</w>\nwor se</w>\nsh ef\nra d</w>\ned it\nhon our</w>\nau spol</w>\nlar ry</w>\nh ire</w>\ngor don</w>\nachi evement</w>\n.... ....\nsu icide</w>\nalter native</w>\nsu p</w>\nsur roun\nsha ke</w>\nke ith</w>\npe pper</w>\ntur k\ncrimin al</w>\nbe ck\nsu m</w>\nw alls</w>\ncn n</w>\nan tic\nof fe\ncol li\nwin es</w>\nhigh light</w>\nhawa ii</w>\nemb ar\nl fc</w>\nðŁĩ ®\nm v</w>\n> >\nat mo\nwor d\ncar l\nshout out</w>\nbre wing</w>\nì Ŀ\ndo f\ns ic\nhot test</w>\ncol on\nhh h</w>\nshu t</w>\nlow ing</w>\nvolu me</w>\napart ment</w>\nagre ement</w>\nde stro\nwe e</w>\nreligi ous</w>\niow a</w>\nro d</w>\nland ing</w>\nre present\nðŁĵ· :</w>\nla s\nusu ally</w>\nh l\nc ac\nsal v\nal ong\nlaugh ing</w>\nbe ans</w>\nremin ds</w>\npha se</w>\nsome body</w>\nma sk</w>\nran ked</w>\ndest roy\nsc i</w>\nâĢ¼ ï¸ı</w>\ngab ri\nle o</w>\nro a\nfa iled</w>\nsi l</w>\nrefuge es</w>\nre vi\nr ing\nber ries</w>\ncoo kies</w>\ny y</w>\nconserv ation</w>\nsh ab\nhuman s</w>\nde termin\na in\nni all</w>\nas su\nmb a</w>\nfro m\nextre me</w>\nvic es</w>\ncommer ce</w>\nght ful</w>\nor dered</w>\nsuppor ts</w>\nre cap</w>\nv or\ndro pping</w>\ncorrec t</w>\npay ing</w>\nmean ing</w>\nn j\nqui z</w>\n\" #</w>\nbusine ss\nðŁĩ® ðŁĩ\nindi gen\ndu st</w>\nbox es</w>\nbl ind</w>\nx xx</w>\nzz y</w>\nðŁĩ¬ ðŁĩ\nss els</w>\ns ant\ndd le</w>\nhilari ous</w>\ndesig n\nwonder ing</w>\nvehic les</w>\nk re\nju d\nrece ption</w>\npar ker</w>\nÃ Ń\npri vi\nhy dro\nsof tball</w>\npol lu\nlo cked</w>\nba h\ne ar</w>\nscri pt</w>\ndi vi\nbr ace\ngeor ge\nthe ast</w>\nbel o\nj al\ntion ary</w>\ndent al</w>\nroc ket</w>\npur ch\nsh ak\nmanufac turing</w>\ne z</w>\nit is</w>\ncon cep\ntb all\nch s</w>\ndirec ted</w>\npra yers</w>\noo k</w>\nphil os\nvari ety</w>\nche ss</w>\nser ver</w>\ng and\nbal ti\nðŁĵ ¸\nsel y</w>\ncru z</w>\nspectac ular</w>\nbur ning</w>\nre present</w>\ni z</w>\nt one</w>\nmer ce\nh ell\nbed room</w>\nestab li\nbo l</w>\ncom mon\nãĥ »\nab or\nkit ty</w>\nhei ghts</w>\nre pair</w>\nwilli am\nqu ake</w>\nalab ama</w>\npopul ation</w>\nre v\nre tt</w>\ni sts</w>\nn ite</w>\nle m</w>\na ha</w>\nclevel and</w>\nr m</w>\npo ver\nob se\nmon tre\nman ia</w>\nÂ ®</w>\ncon ne\ncar ni\nsh ah</w>\nf y\nu a</w>\nsc or\nstrugg le</w>\nbo b\n' '</w>\nappro pri\ndeci de</w>\nff ed</w>\nca ster</w>\ns ort</w>\nhun gry</w>\ndra g\nØ§ Ù\ngr ounds</w>\nd w\nsli ghtly</w>\ncar din\ndead line</w>\nbron ze</w>\nweb in\nbar ry</w>\nsil ence</w>\ne uro</w>\nop tion</w>\near n</w>\nðŁĴ ĸ\nhowe ver</w>\nna ren\nna ils</w>\nbath room</w>\nv ine\nph d</w>\nmin ing</w>\ngar age</w>\n( )</w>\nshou lder</w>\ndefe at</w>\ndi r</w>\no v</w>\nliber ty</w>\nple as\nx on</w>\ncom pre\na v</w>\nj in</w>\nab les</w>\nsil ent</w>\nfam ili\nvis its</w>\ndi pl\nha bit\nmilli ons</w>\nregar ding</w>\ninnov ative</w>\nsen ator</w>\nr ts</w>\nv on</w>\nk l\nwh il\nrequi red</w>\nâĿ Ħ\nlu v</w>\npresi dential</w>\npo cket</w>\nhun dre\nsho wn</w>\nfro zen</w>\nto ward</w>\nfa st\nconfi dence</w>\nr ough</w>\nindivi dual</w>\nqu et</w>\nðŁı ½\ndom e\nfi fa</w>\nengine er</w>\nz en\nre mix</w>\nðŁĺ ĥ</w>\npl ant\nmin or</w>\nrobin son</w>\nas y\npul led</w>\ncer tain\npotat o</w>\n( :</w>\npre s</w>\noc ca\nw it</w>\nit em</w>\nsi e\nd ating</w>\nthom pson</w>\nown ed</w>\nan u\nvi e</w>\nte dly</w>\ngood night</w>\nex cept</w>\nðŁĮ Ł</w>\nira q</w>\nki e\nren ces</w>\nli p</w>\nsimil ar</w>\nsau di</w>\nvi g\narth ur</w>\npic ks</w>\nmil an</w>\nhon da</w>\nma xi\no g</w>\nste st</w>\nar ch</w>\nanaly tics</w>\nba sti\npear l</w>\nter ry</w>\nhor se\nast ro\nac ce\nlaun ching</w>\ninter national\ns no\nta sty</w>\nden ver</w>\nir l</w>\npe te</w>\ntor n\nadvant age</w>\nvar sity</w>\n\" \"</w>\nsol e</w>\ng c\nlan g</w>\ndemon str\nol ds</w>\nun ity</w>\nne ts</w>\ninsp ire</w>\ncre te</w>\nnash ville</w>\nnel son</w>\ne ter\nwal k\nhy un</w>\nm ack\ntre as\nsee king</w>\nra ge</w>\nbru sh</w>\nab and\nwhil st</w>\nco con\nh ong</w>\nshel ter</w>\ni p</w>\npossi bly</w>\nso o</w>\nit ed\nâ Ħ\nrac es</w>\nwar ming</w>\nqu in\ntele vision</w>\nmat ches</w>\nra pi\nment al\npal m</w>\njenni fer</w>\nrol ls</w>\nindi ana</w>\nb ars</w>\ncat ching</w>\nresc u\ncandid ates</w>\nfa re\nâł Ģ</w>\nse o</w>\nvie tnam</w>\nalph a</w>\nmichel le</w>\nvisi ble</w>\nre gre\nwn ed</w>\napp le\nli p\nf fe</w>\nli z\nyork shire</w>\nha il</w>\nse asons</w>\nbe gan</w>\nm d\nk c</w>\nla p</w>\nfascin ating</w>\nhel p\nur y\nu ms</w>\nnu ts</w>\nse m\nalong side</w>\nbri dge\nori al</w>\no ve\nworld cup</w>\nbriti sh\ncomfor table</w>\ni ve</w>\nhot els</w>\nfair s</w>\nhor ri\nso x</w>\nd ining</w>\nstre am\nbar ri\nss y</w>\nw im\nter ms</w>\nv u\npe re\nl ens</w>\nwal ked</w>\nr or\nl ars</w>\nshi eld</w>\ndou bt</w>\npro to\ncro ssing</w>\nme ant</w>\nmedi um</w>\nad ding</w>\ne b</w>\nche ap</w>\nfun c\npap er\nbran ds</w>\nry an\nfeed back</w>\ncol lins</w>\nun known</w>\ntro pical</w>\nsand wich</w>\nfal len</w>\nfor mu\nselec t</w>\nlo ads</w>\nansw ers</w>\nor i</w>\nmag a</w>\nd or</w>\ndu o</w>\nali e</w>\ndru m</w>\nur i</w>\nde er</w>\nsou l\nsh ut\nâĺ º</w>\nsto len</w>\ndon ated</w>\nbu zz</w>\npatri ots</w>\nha l</w>\nna sty</w>\nnomin ated</w>\nmon te\nki a</w>\nth ri\ning u\nte sts</w>\npe tro\nðŁĳ ĳ</w>\nho sts</w>\nne st</w>\nto pic</w>\npat ch</w>\nm my</w>\nhu gh\nab ilities</w>\nma the\ns miles</w>\ng b\nag enda</w>\ninsi ghts</w>\nchi p</w>\nph an\nfail ure</w>\ndg ers</w>\nha i\nsignific ant</w>\nsho ck</w>\nru ral</w>\ngl am\nfigu res</w>\npot us</w>\no ta</w>\nmini stry</w>\nappe ars</w>\nfe ar\nr h\nameric an\nh att\nson y</w>\nfi res</w>\ne di\nn ou\ne qui\nwh en\nunivers al</w>\nmad ness</w>\ni x</w>\nsculp ture</w>\nb ach</w>\nt to\nswe den</w>\net a</w>\nen to</w>\ndevelop ed</w>\nmonth ly</w>\nma ps</w>\nra h</w>\nle d\ndel ta</w>\nsa ints</w>\nis lam</w>\nben ch</w>\nfif th</w>\nv ard</w>\nso cks</w>\nwel coming</w>\nj e</w>\ntur ner</w>\nv b</w>\nad i</w>\nnor way</w>\nad y</w>\nhurric ane</w>\npor sche</w>\ntra dition</w>\nex am</w>\nnewsp aper</w>\nlu ci\na ver\nide al</w>\nd na</w>\nmadi son</w>\nðŁ §\nwit ness</w>\nac ou\ninsi ght</w>\nsi mon\nrobo t</w>\nsna ke</w>\nn bc</w>\nac o</w>\nro ss\nsh ment</w>\nreligi on</w>\nch ann\nin su\ncamp bell</w>\ninst alled</w>\nwe ather\nhor ses</w>\nol i</w>\nrober t\nk az\nðŁı Ģ</w>\nveter an</w>\nth read</w>\nquar ter\nea sier</w>\ncap ture</w>\nhi pho\nlaw rence</w>\nroman tic</w>\npas sion\ncl ay</w>\nox ford</w>\nth ai</w>\nstu dying</w>\nfi a</w>\nelec ted</w>\nmost ly</w>\nc b</w>\ntu mb\nâĢįâĻ Ĥ\nx l</w>\nsh an</w>\nfa ster</w>\nev ans</w>\nsli de</w>\nsh ri\nsee k</w>\nmi es</w>\nchemi stry</w>\npump kin</w>\ntu m</w>\n, ,</w>\nro om\nfi red</w>\nli ps</w>\npres ence</w>\naf f\nbrew ery</w>\narri ve</w>\nsw ag\nphoto graph</w>\npen gu\nchi ps</w>\nat tor\nval ues</w>\naccur ate</w>\ncon temporary</w>\nprinci pal</w>\ncannab is</w>\nari o</w>\nany where</w>\ngi a</w>\ndemocr ats</w>\nbuil dings</w>\nli ved</w>\nap s</w>\nneg ative</w>\nm are</w>\nbal lo\nli on\ndiam on\nloo k\nre form</w>\ntom my</w>\nil la\ntre ats</w>\nhundre ds</w>\nport land</w>\nwor thy</w>\nex cep\nar ia</w>\nido l</w>\nbe er\ncd n\ny u</w>\naw k\nðŁĩ ¨\nc ells</w>\nÃ ³\nident ity</w>\ndra wn</w>\nde vil\nf inger</w>\nth am</w>\nðŁĳ Ĭ\near ned</w>\nfin tech</w>\ndol ph\ntwee ting</w>\nevolu tion</w>\nðŁĵ į</w>\nest im\nm vp</w>\nn one</w>\nðŁĩºðŁĩ ¸\ntoyo ta</w>\nau x</w>\nmar in\nb old</w>\nl bs</w>\nste ak</w>\nmur phy</w>\nit able</w>\nlou is\nsol ve</w>\npi a</w>\nsk ir\nill ino\nwebin ar</w>\nban ana</w>\nlo v\nth on</w>\nvo ters</w>\nafford able</w>\ndefe ated</w>\nlm fa\nair lines</w>\nsuper b</w>\nany way</w>\ndeb t</w>\nbo red</w>\nver si\nme tal\nresponsi ble</w>\nm k</w>\ns se</w>\nf ay\ncau sed</w>\nf p</w>\nrecomm end</w>\npla za</w>\nspor ting</w>\nalli ance</w>\nau stri\nn n\nt ours</w>\nsurpri sed</w>\narti f\nth under</w>\nsur ve\nwor e</w>\nbri ef</w>\nnecess ary</w>\nz ie</w>\nash ley</w>\ndra ke</w>\nr t\nkni fe</w>\nim mun\nchar ges</w>\na the\nbri de</w>\nrep ly</w>\ng av\nbroad cast</w>\npu er\nbrace let</w>\ncap acity</w>\nharve st</w>\nid k</w>\nperfor man\nd ding</w>\nil ers</w>\npar a</w>\njam a\npro vince</w>\nch in</w>\nid ers</w>\nhar i</w>\nte aser</w>\nch en</w>\nre stor\nr at</w>\nfl at\ncol om\nðŁĴ ŀ</w>\nðŁĩ¨ ðŁĩ\nsmoo th</w>\nr t</w>\np itch\nstay ing</w>\nisra eli</w>\nt cot</w>\nper spective</w>\ndo ck</w>\nopen er</w>\nlo vel\nx o</w>\nclass room</w>\nl ington</w>\ngo al\nkenne dy</w>\nsh am</w>\nsp aces</w>\nmitch ell</w>\nhome coming</w>\nuk i</w>\nclaim ed</w>\nrecru it\ning o</w>\nmu fc</w>\nmon it\ng roo\nresi dent</w>\nper cent</w>\nper man\notta wa</w>\nint ment</w>\nan xi\nstand ards</w>\nwor ship</w>\nsche me</w>\nf x</w>\npot ter</w>\nbi an</w>\nathle tic</w>\naf gh\ns se\nsat ell\npar ties</w>\nâĿ¤ âĿ¤\ninfra structure</w>\nrela x</w>\nmo du\nwor n</w>\nsmo king</w>\ny ach\npractic es</w>\nwc w</w>\nam b\ndome stic</w>\ntay lor\nk entu\nprovi ded</w>\nmo di\nve g\n\" ...</w>\nob serv\nðŁĺ ©\nbe ard</w>\nm our\nan gry</w>\nðŁĺ ±</w>\nstartu ps</w>\nwoo den</w>\ndi ve</w>\nna il</w>\nanti que</w>\nro ses</w>\ntorn ado</w>\nm at</w>\n^ ^</w>\nsu spect</w>\nfar m\nde vices</w>\nme ga</w>\ntu l\nscholar ship</w>\nge e</w>\ndisa ster</w>\narri val</w>\npo in\nmar c</w>\nkati e</w>\nbb ed</w>\nfal se</w>\ndeser ves</w>\nric hard\nju ana</w>\nfre y</w>\ntion ed</w>\nhy bri\nr w\nsar ah\nach i</w>\nc ure</w>\no le\nmor ris</w>\nch ic</w>\nbroad way</w>\nla bel</w>\npa k</w>\npover ty</w>\ngol f\ne red</w>\nf u</w>\ner ies</w>\nbe es</w>\nalo gue</w>\nst el\nwire less</w>\nje wish</w>\nti de</w>\nblo cked</w>\nlife time</w>\nb har\nsp lit</w>\nam ster\nth i</w>\njo shu\nbr unch</w>\nha ps</w>\ns for\noo ps</w>\nka poor</w>\nhi king</w>\nsuppo sed</w>\nro of\nre as\ntra in\nti ght</w>\ntru mp\nbas ically</w>\nr r</w>\nea red</w>\nsee ds</w>\nentr ance</w>\nc p</w>\nwi e</w>\nson ic</w>\nvic tim</w>\nhe re\ne h</w>\near rings</w>\nsal mon</w>\narc tic</w>\nan ne\ndou gla\ncorru ption</w>\nhann ah</w>\nha sn</w>\nvo ices</w>\ncon ce\natt a</w>\nfle et</w>\nclin ical</w>\ndemocr atic</w>\nton y\nst ood</w>\nle f\ntwit ch</w>\na il</w>\nhonest ly</w>\nincre ased</w>\ndro me</w>\ndon na</w>\naccep ted</w>\nvisit ors</w>\nap ar\nad or</w>\np ar</w>\njer ry</w>\nra i\nbrand on</w>\nab u\n!! !!!!</w>\nme me</w>\nin gh\nglori ous</w>\nb hu\npu mp</w>\nj ol\nli ke\nfi sher</w>\nma z\nag an</w>\ndestin ation</w>\nplay list</w>\nle tters</w>\ngen u\nbr ace</w>\ncelebr ated</w>\nbann er</w>\nr he\ndra gon\nðŁĺ ħ</w>\nsig nature</w>\ngre y\nâľ Ķï¸ı</w>\nal ice</w>\nbe red</w>\nph er\nber n\nca th\nga thering</w>\nsc oring</w>\ninflu ence</w>\nsm iling</w>\nde pt</w>\nlo cal\na x</w>\nac u\nreti rement</w>\nhon or\nher self</w>\nchem ical</w>\nasse ss\ny all</w>\nfre qu\nappreci ation</w>\nac a</w>\ncho ir</w>\ncu z</w>\nso il</w>\nc il\nrepor ting</w>\nu h</w>\nenterpri se</w>\ngr at\njaco b</w>\nru m\nfe e</w>\nj ak\nsp in</w>\nbi kes</w>\nphi a</w>\nste re\np is\nbloo d\nt att\nra ft</w>\nwar ren</w>\nsh eri\nback stage</w>\nmar sh\nhash tag</w>\nther ine</w>\nre in\ngame day</w>\nguar an\nreci pes</w>\nmin ds</w>\nstron ger</w>\nissu ed</w>\nbic y\nn ak\nment ed</w>\nsc ary</w>\nu x\npre vious</w>\ntt le</w>\nth ats</w>\nac tors</w>\nu ma</w>\ntin a</w>\nbun ny</w>\npromo tion</w>\nu ss</w>\noli ver</w>\nmontre al</w>\nwhat s\nappreci ated</w>\nla kes</w>\nexcu se</w>\nkno wing</w>\npri zes</w>\nmusc le</w>\nshad es</w>\nsco t</w>\ning redi\nelectr onic</w>\nju an</w>\ncomb at</w>\ns ri</w>\ne h\nturk ish</w>\nl om\nstri kes</w>\npri son\nre e\npo pe</w>\nvi d</w>\nol dest</w>\ndol l</w>\nsw iss</w>\ncerti fied</w>\ncli p</w>\nre turning</w>\nlat or</w>\nle igh</w>\ntt es</w>\nwat son</w>\nheal ing</w>\nel im\nper haps</w>\nha ss\nk au\nd der</w>\nmou se</w>\nnew castle</w>\nindigen ous</w>\nwel comes</w>\nco le\ntau ght</w>\nno ise</w>\nappe ar</w>\njo e\ncan on</w>\nwedne sday\nu tah</w>\nc tive</w>\ndri ven</w>\ni v</w>\nc ell\nstri p</w>\nac c</w>\nfocu sed</w>\nar rest</w>\nsto cks</w>\nwo o</w>\nâ Ĺ\nnotic ed</w>\nshad o\ndi spla\nter ror</w>\nbor ne</w>\nsecon d\nque ens</w>\nwo ke</w>\nja il</w>\nno tt\ncam bridge</w>\nhar t\nse af\nfa x</w>\nac cept</w>\nâĺ ħ\ngoo ds</w>\nk at</w>\nt win\nh s\nthou sand</w>\ns ins</w>\nsu ite</w>\namp ton</w>\nar n\nrele v\nric har\nhoo ps</w>\nn bc\nclass ic\np ab\nsoldi er</w>\nde plo\nle ans</w>\ninstall ation</w>\ncla sh</w>\nle ban\nee e</w>\nti re</w>\nbelo ved</w>\nfu sion</w>\ntravel ing</w>\nne i\ncoo kie</w>\nglo be</w>\nphys ics</w>\ns q\nco l</w>\nwol ves</w>\nd l</w>\nex it</w>\n\" -</w>\nfoo tball\nle af\nster ling</w>\nhi de</w>\nminne so\nfresh man</w>\nnatu re\nindi e</w>\nsupp lies</w>\nbri s\niri sh\nink tober</w>\ndoo dle</w>\nic op\nmess ages</w>\nadul ts</w>\nrecor ded</w>\nfix ed</w>\nar do</w>\noffe red</w>\nunder ground</w>\ndr one</w>\np ine\nma inten\nand re</w>\nham mer</w>\ns x\nr ound\nhi ke</w>\nbra d</w>\nro me\nfu ll\non ey</w>\nro ws</w>\ncolum bia</w>\narchi ves</w>\nappro ved</w>\nbat ch</w>\nillino is</w>\nrecogn ition</w>\nshou ldn</w>\nfo g</w>\nnca a</w>\nke vin\nhuman ity</w>\nal though</w>\npow ers</w>\np ou\ns ar</w>\npe st</w>\nalco hol</w>\ncon sci\nphil adel\nen o\nt m\nok la\ncate gory</w>\nparticip ate</w>\naccu sed</w>\nbri ef\npo em</w>\nclu bs</w>\nconsul t\nja b</w>\nbig data</w>\namster dam</w>\nac ing</w>\ncerti fic\nn u</w>\nd at</w>\nimpro ved</w>\nand y\ncampa ig\npale stin\np ace</w>\nmo bi\nfeel ings</w>\nwol f\nbra in\npro pos\ninter active</w>\nprin ce\ninde x</w>\nc is\ncha e\npeace ful</w>\nco vering</w>\nac o\ncour ses</w>\nmon key</w>\nre place</w>\nb l</w>\nbloo dy</w>\ntal es</w>\nbrigh ton</w>\nneighbor hood</w>\ng ates</w>\nspiritu al</w>\naf raid</w>\nbre ast</w>\nb ones</w>\nðŁĳ ī\nvide o\nw au\ntou ch\ninju ries</w>\ncar l</w>\nri x</w>\nune x\nâĢ ¢\nfre d\nconsi dered</w>\nthu si\nan ch\non y\nu sa\ngraph ics</w>\nac re</w>\nðŁĺ ©</w>\ncom memor\ncom mod\ngo ti\nguar dian</w>\nstar bucks</w>\npre vention</w>\nhaha haha</w>\nadmini stration</w>\nportu gal</w>\nfac ulty</w>\nbet a</w>\nul a</w>\nal bert</w>\nbre ath\ner i</w>\nle tting</w>\ntr ic\nment ation</w>\nincredi bly</w>\nten nes\nv d</w>\nðŁĻ Ī</w>\ned die</w>\nbr ick</w>\ngr ill</w>\nbt w</w>\nwat ches</w>\nresear chers</w>\nt ney</w>\nni e\np as</w>\na ster</w>\nvi br\npoke mon</w>\nch rome</w>\ngo at</w>\npitt s\nil ly</w>\nfesti ve</w>\ny d</w>\ncan al</w>\nðŁ Ĩ\nfi es</w>\ncar los</w>\nre que\npartic i\ntra ins</w>\nsam ple</w>\ntemper ature</w>\nsym ph\npic king</w>\nin door</w>\nz ers</w>\nplayo ffs</w>\n____ ____\nap es</w>\nly rics</w>\nislam ic</w>\nperforman ces</w>\nd ick</w>\nspar k\nse as</w>\nhom a</w>\ngr ound\ndisc i\nemploye e</w>\ncom mu\nalas ka</w>\nal an\nfe ast</w>\ndg ing</w>\nban king</w>\nmanu el</w>\nslow ly</w>\ntru cks</w>\nmc car\noo o</w>\nsc rat\norche stra</w>\nindivi du\nm x</w>\nbre ath</w>\nstair s</w>\nequ ality</w>\nbla ke</w>\nloc ations</w>\ncocon ut</w>\nbalti more</w>\naa a</w>\nl c\nðŁı Ĩ\nhar vey</w>\nresi st</w>\nimmigr ation</w>\nadid as</w>\nfil i\nre f</w>\nlg bt</w>\nmo s</w>\npp i</w>\nken ny</w>\nterr or\nban e</w>\napol is</w>\ns g\nsocial media</w>\nka i</w>\nhon est</w>\nas sas\nbol lywood</w>\nâĢįâĻ Ģï¸ı</w>\nferr ari</w>\nhor n</w>\ncryp to</w>\nbo om\nmainten ance</w>\ni di\ns man</w>\nw l</w>\next ended</w>\nin sul\nve s\ngo sp\ntr i</w>\npi g</w>\ntar ge\ncel er\nst ati\nsm h</w>\nri dic\nappe al</w>\n? )</w>\ncon clu\ncos me\nshe ep</w>\nchristop her</w>\nen thusi\npo lish</w>\nme ts</w>\noun ded</w>\nsustain ability</w>\ncreati vity</w>\ncon crete</w>\nra i</w>\nali en</w>\nble ss\nte es</w>\nclu b\nro t</w>\nbo s</w>\nex ist</w>\nperfe ction</w>\nlu ck\nrock y</w>\nexpen sive</w>\nmean while</w>\nhappy birthday\npre t\nthr iller</w>\nca ve</w>\nplayo ff</w>\nsom er\nl u</w>\nle x</w>\ndef ence</w>\nam writing</w>\nhome less</w>\npro phe\nch et</w>\npast or</w>\nðŁ¤ £\nland er</w>\nww w</w>\nĢ ï¸ı\ntic a</w>\n! #</w>\no tic</w>\nrad ar</w>\npo sters</w>\npow der</w>\npo li\nha un\ntra p</w>\nbl in\nassau lt</w>\nshor ts</w>\nre y\nsh y</w>\nsqu ir\nrac ist</w>\ngar lic</w>\nfu r</w>\nremo te</w>\nsm ell</w>\nimpre ssed</w>\nfing ers</w>\nâł Ģ\ndin o\nle ment</w>\ns nu\npromo ting</w>\nstr ing</w>\nproduc tive</w>\nb age</w>\nma son</w>\nra z\ndirec tly</w>\nj k</w>\nev al</w>\nðŁĳ Ĭ</w>\ndoc tors</w>\nco w</w>\nri der</w>\nst v</w>\nre move</w>\nw u\nna than</w>\nro d\nn r</w>\n= ></w>\naffe cted</w>\ninve st</w>\nmp tion</w>\ng inger</w>\no d</w>\nagricul ture</w>\ns que\nmu g</w>\ncoun ting</w>\nke e\nmag nific\ncoo k\nani stan</w>\nroo t</w>\nplac ed</w>\nsym po\ngh ana</w>\nun d</w>\nche er\nthro wing</w>\nsecre ts</w>\nf illing</w>\nopti mi\nbutter fly</w>\nbu bb\nðŁĺ ī\nterri ble</w>\nd g</w>\nsil k</w>\nobse ssed</w>\nlo u</w>\nai de</w>\nsal ute</w>\nmon u\nphiladel phia</w>\nscienti fic</w>\ni st\nu ae</w>\ndess ert</w>\nbott les</w>\ncan yon</w>\nðŁĺ Ī</w>\ncar ib\no ther\nw ich\nre source</w>\nguil ty</w>\nun d\nle on</w>\ne ss</w>\nkan e</w>\nel e</w>\ntra iner</w>\nhe im</w>\nan te</w>\nman age</w>\nroo kie</w>\ntre ated</w>\npo ses</w>\nrs vp</w>\ncau ses</w>\naw ak\nje well\nle tt</w>\non ics</w>\ntit les</w>\ncardi ff</w>\ng aga</w>\nbu mp\nuse ful</w>\n? !\nloo se</w>\nbb ing</w>\n: :</w>\nargent ina</w>\nde bu\ncy cl\nwh el\ndis gu\nj el\nk ills</w>\nbio logy</w>\nex ter\ntra sh</w>\nbo dies</w>\ntr am\ncircu it</w>\nexpe ct\nla ds</w>\nw ells</w>\nsho t\nge e\nnaren dr\nfa stest</w>\nb ent\nb ills</w>\nmar shall</w>\nh ats</w>\nintro duce</w>\nciti zen</w>\nim possible</w>\ngi b\naz z\nnet working</w>\nr ant</w>\nthin k\nin dy\nst ops</w>\nf theday</w>\nbri an\n* *\namo di</w>\ndom e</w>\ncoura ge</w>\npac king</w>\naf fairs</w>\ng n</w>\nsi zed</w>\nent ary</w>\npol and</w>\nswit zer\nafgh anistan</w>\nw u</w>\nten der</w>\nsubscri be</w>\nmo sco\natt end\nrepublic an</w>\nhon ey\nâĢ ĭ</w>\nsi mul\nwe ster\nfoo die</w>\nor o\nmidd le\nab t</w>\nco pies</w>\nma je\nnarendr amodi</w>\nty pical</w>\ninspir ational</w>\nvit am\nwis con\ncu bs</w>\ntiv ity</w>\nh ali\ne ars</w>\nk ay</w>\nd are</w>\nmari juana</w>\ncu rious</w>\nan ia</w>\ntom ato</w>\nre mind</w>\nðŁĩ ·</w>\nsc ared</w>\ncou p\npo et</w>\nland ed</w>\nri d</w>\nwra pped</w>\nmor ri\nclimb ing</w>\ne ws</w>\nfe eding</w>\ncon tra\ntho logy</w>\ngri d</w>\nti vely</w>\nread er</w>\nla ser</w>\ndi ving</w>\ndi g</w>\nlat in</w>\nti ed</w>\nshake spe\no ci\nad m\nshow ers</w>\nchu ck</w>\nmar cus</w>\noo s</w>\nkne e</w>\no live</w>\now l</w>\ndy lan</w>\nan no\ng ym\ndeci sions</w>\nwell ness</w>\narri ves</w>\nsati s\nchri s\nthur s</w>\nðŁ¤ £</w>\ninter views</w>\nthank you</w>\nswitzer land</w>\nover night</w>\njourn alist</w>\nser ves</w>\nvol can\n.... ...</w>\nplo t</w>\nnic ol\ncar rying</w>\nmag ne\ntre asure</w>\nex p\nbe ver\nðŁĺ ¢</w>\nmar ty\nmo le\ndon ations</w>\nrecogni zed</w>\nb h\ndu s</w>\nsh ann\nal do</w>\nsuccess fully</w>\nent e</w>\nðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ\ncab inet</w>\ncu is\ntit led</w>\nd as\nso l</w>\nstrate gies</w>\ndeli vering</w>\nad ds</w>\nani an</w>\nne ther\nðŁĴ ĥ\ncon tain\nsu its</w>\npa irs</w>\nto dd</w>\nrel la</w>\nro pe</w>\nci o</w>\ncro p</w>\npaint ings</w>\nsu z\nre jec\nbu st</w>\nd h</w>\nfra ud</w>\nm h\ncontro l\nje al\ndestroy ed</w>\nal lows</w>\nwo ol\nminneso ta</w>\nom en\nj u</w>\nsympo sium</w>\nd af\nlim it</w>\naccoun ts</w>\nload ing</w>\ninter n\nre solution</w>\nhol land</w>\nqu al\nmeet ings</w>\ngra ve</w>\ncam ping</w>\nv am\nre nov\nliber al</w>\nam ber</w>\ngre e\nhu mb\nfe ver</w>\nel ing</w>\nbroo ks</w>\nà ²\nbe th\nad ed</w>\nal t\nro e</w>\nperform ed</w>\njo sh\nfrank lin</w>\nnic ole</w>\nde ss</w>\nbb s</w>\nm g\nnet works</w>\nmin im\nal t</w>\nweap ons</w>\ngu y\njas on\ng ha\nharb our</w>\nat on</w>\npra ise</w>\nkentu cky</w>\nbel fast</w>\nst icks</w>\nblo ss\nho pes</w>\nan thro\nfamili ar</w>\nwa it\nch ile</w>\ndepre ssion</w>\nla x</w>\nje ts</w>\nle ice\nrecei ves</w>\nsi er\nan k</w>\nde x\ninde ed</w>\nfle xi\nfab ric</w>\nlam b</w>\nhel icop\nam anda</w>\nâĢĶ âĢĶ\ncompe te</w>\nsn ack</w>\ntechno logies</w>\nsy rian</w>\nmom s</w>\nmu ham\ncho sen</w>\nan at\ndev on</w>\nshar ks</w>\nre t</w>\nfundra iser</w>\nselfi es</w>\nst ations</w>\ncommunic ations</w>\ntennes see</w>\ntu tor\nro t\nvalu able</w>\ndynam ic</w>\nnur se</w>\ni ed</w>\nearth quake</w>\ndeser ved</w>\na ve\nsar a</w>\nstre tch</w>\ndougla s</w>\nne pal</w>\nÃ §\nob viously</w>\nd ame</w>\nra pe</w>\nany body</w>\nk w\npat rol</w>\nhol ders</w>\nh anna</w>\ninfo graphic</w>\nec o</w>\nbe ating</w>\nstan ley</w>\nbo ats</w>\nri bb\ne z\nwit ch</w>\ninv a\nac id</w>\nboar ding</w>\n- @</w>\ngi l</w>\nda ve\ncare ers</w>\nopp os\nl loy\nin ter</w>\ndo pe</w>\nre su\nj agu\nsh ade</w>\nin dy</w>\non ist</w>\nrel ations</w>\nag en\nab le\ninci dent</w>\nme ter</w>\nshar ma</w>\nid r</w>\npro ve</w>\nimmedi ately</w>\ntro ops</w>\nam an</w>\ng low</w>\ngaz a</w>\nblo cks</w>\nperson al\nchron ic\nall er\nsi d\nsh r\nwhats app</w>\nlu cy</w>\nar chae\nho u</w>\njourn alism</w>\nour selves</w>\ngo t\nthe med</w>\nshap ed</w>\nwe ak</w>\ncas ual</w>\nleng th</w>\nsla m</w>\nab bey</w>\ne v</w>\ncoun ter\nest a</w>\nreci pi\ncha pel</w>\nexpan sion</w>\nsel f\nsuff ering</w>\nsp ice</w>\nn z\nsp art\ndesp er\nboo king</w>\nquart ers</w>\ny on\nðŁĴ Ĺ\np k\ncontinu ed</w>\n- #</w>\nman hatt\ntal ked</w>\nsh en\ncom bo</w>\nhybri d</w>\nje ans</w>\nliqu id</w>\nse al</w>\nre tweets</w>\nac celer\ncollec tive</w>\nt as</w>\n: ))</w>\nprofession als</w>\nra w\no tt\nsu san</w>\nir ing</w>\nokla homa</w>\nre ven\nsurvi val</w>\ncre ator</w>\ntran sit</w>\nst ac\nsur f\ni k</w>\ned iting</w>\nch illing</w>\nbai ley</w>\nste al</w>\nra ble</w>\npa rent</w>\nhun ger</w>\nsn app\ncollec t</w>\nphilos oph\ndedic ation</w>\nc f\nc m\nle ep</w>\nrepe at</w>\nre ha\nun fortun\na er\na ero\nabstr act</w>\nmon itor</w>\nag ents</w>\nbu l</w>\nsci ence\nharb or</w>\ndrag ons</w>\nfloo ding</w>\nac compli\nd ash</w>\njuli a</w>\nthe red</w>\ntues day\ncy ber</w>\nb low</w>\nta ined</w>\nle m\nrefe rence</w>\npp o</w>\nne goti\nchar le\ncon nor</w>\nau lt</w>\naccess ories</w>\ncommissi oner</w>\nrain y</w>\nre ar</w>\nadvis ory</w>\nluc as</w>\nma id</w>\nco al\nk av\npol o</w>\nðŁı ¾\ntran sport\nmar gare\nstraw berry</w>\nbur ns</w>\ngre ens</w>\nne v\npartici pants</w>\ncol in</w>\nbelgi um</w>\ncol our\nin form\nd ell</w>\nbr on</w>\ncal y\nkick off</w>\nstrate gic</w>\nre union</w>\nhon ors</w>\nli b\negy p\nâŃĲ ï¸ı</w>\nhy po\nsi zes</w>\nregi stered</w>\nbet es</w>\nrelax ing</w>\nbloo m</w>\ninten se</w>\nvalent ines</w>\ninsan e</w>\nw wii</w>\np x</w>\ntri o</w>\nbla de</w>\nwiscon sin</w>\ncon e</w>\nplat in\nali ze</w>\nra ven\nincre asing</w>\nindi ans</w>\nil ian</w>\nbl u</w>\nrabb it</w>\nexten sion</w>\nje f\nau di</w>\nfer ry</w>\ns ell\na day</w>\nus b</w>\nswe at\ncham pag\nmetho d</w>\nmem ph\nassi st</w>\ns by</w>\nca pe\nremo ved</w>\nmag n\nv t</w>\nr ams</w>\nf bi</w>\ntack le</w>\nphe w</w>\nh on</w>\nmotor cycle</w>\nsu spec\neleph ant</w>\nsub ject</w>\nlet te</w>\nda iry</w>\nwhe at</w>\nawk ward</w>\nac t\ntro l\nmit ted</w>\nzay n</w>\nsheri ff</w>\nene my</w>\ncon s</w>\nke tt</w>\nbul ls</w>\nev alu\nbt c</w>\nsatell ite</w>\nho lo\npor ter</w>\ndia betes</w>\nbet ter\nrele asing</w>\nsur f</w>\n: -</w>\nse basti\ncollec ting</w>\nen cing</w>\ne thi\ngo ds</w>\nal ley</w>\nhealth y\nm ills</w>\nsma sh</w>\nco pper</w>\ncr ack</w>\nread ers</w>\nsp ac\nlicen se</w>\nbas ket</w>\nbang la\nen tic</w>\nom i</w>\nm ere</w>\nsi vely</w>\nanim ation</w>\nlan es</w>\ndent ally</w>\nchill in</w>\nfi e</w>\nk aren</w>\ndep th</w>\nli pse</w>\nn g\nri p\nmel o\nsand y</w>\nðŁĳı ðŁĳı\nvin cent</w>\nnu t\nhu g</w>\nwho le\ncre ates</w>\n? ???</w>\nâĿ¤ï¸ı âĿ¤ï¸ı</w>\nbak ed</w>\nup grade</w>\nrober ts</w>\nhar a</w>\ncarib bean</w>\nauth entic</w>\nmb s</w>\nmosco w</w>\nattor ney</w>\nwi ki\nch lo\nhu ll</w>\ncor k</w>\n\" !</w>\nsty lish</w>\nðŁĵ¸ :</w>\ndi ary</w>\nimpro ving</w>\nex pand\nbri ght\npollu tion</w>\nk nights</w>\nperson ality</w>\nchec ked</w>\nfac ilities</w>\nz el\nbow ling</w>\ngu er\nðŁİ Ĥ</w>\non going</w>\nun its</w>\nhoo k</w>\nbe ck</w>\nconfl ict</w>\nto dd\nfar ming</w>\neduc ational</w>\nk ak\ncla y\nstro ke</w>\nbel ly</w>\nexplo re\nmill enni\nth m</w>\nloo p</w>\nsm s</w>\nconsi st\ncir ca</w>\nbr yan</w>\nd ab\nyoun ger</w>\nsoli dar\npp a</w>\nexperi enced</w>\nb ella</w>\nbo ard\nshef field</w>\nsteph en\nconsu mer</w>\nsub mit</w>\nspon sor\nt ang\nag gre\ncomb ined</w>\ntrac king</w>\nsand ers</w>\nb az\nsurvi ve</w>\nfer red</w>\nequ al</w>\nse p</w>\nre ed</w>\nstr ong\npriv acy</w>\nst ap\nun g\nac ry\npa sta</w>\npir ates</w>\nag er</w>\nfair y</w>\ndu p</w>\nintroduc ed</w>\nwi p</w>\nlet s\nspr ay</w>\nðŁĵ º</w>\ngre w</w>\na sts</w>\npitts burgh</w>\nnew york</w>\njo ey</w>\nlau ren\ntra de\nch op\npi pe</w>\ncla ire</w>\nbehavi or</w>\nv ap\ncre ws</w>\nlap top</w>\nðŁ¤ Ĺ</w>\nche ster\ndisci pl\nd f</w>\nout doors</w>\nk s\ngo ver\nsuper star</w>\ncas ino</w>\nfar mer</w>\n; -)</w>\nre turned</w>\nðŁı Ī</w>\nma il\nroa sted</w>\nco sta</w>\nv ill\npe z</w>\ngard ening</w>\ndistribu tion</w>\nsh ining</w>\ninve stors</w>\nra sp\ndec ades</w>\nreali zed</w>\nbar n\np ti</w>\nst able</w>\nut d</w>\npan thers</w>\nm ens</w>\nb n\nca de\nbu cket</w>\nyn n</w>\nwhen ever</w>\nwa ke\nda is\nber nie</w>\nlo dge</w>\nju lie</w>\natmo sphere</w>\nðŁĺĺ ðŁĺĺ</w>\nmajor ity</w>\npar ti\nexc it\ncu t\nme h\nmusli ms</w>\nbe gun</w>\nfli ghts</w>\nvene ss</w>\nce me\npo sing</w>\nso le\ng ou\ndark ness</w>\npe ach\ncel tic</w>\nauth ority</w>\ngrand ma</w>\nful ness</w>\nsmi th\nspeci fic</w>\ngar cia</w>\nco ins</w>\ngood ness</w>\naldu b\nrecru iting</w>\nden nis</w>\ngar y\nsle eve</w>\nweap on</w>\npl z</w>\ndisco ver\nharri son</w>\nrecruit ment</w>\nja i\nch im\ncom pared</w>\ntom s</w>\nmo thers</w>\nam y\narchi ve</w>\nt ask</w>\nben jam\nse g\nlaw yer</w>\nal um</w>\ninve sting</w>\nmi e</w>\nche z</w>\nj p</w>\na ke\nfl am\nwall paper</w>\nâĻ¥ ï¸ı</w>\nt ton</w>\nche st</w>\nfavor ites</w>\nwe igh\ncoo lest</w>\nr ating</w>\nrelev ant</w>\nlo gan</w>\nma ple</w>\nrun ners</w>\npri or</w>\npeop le\nma ur\nterrori st</w>\nte sted</w>\ncarni val</w>\nsu spen\nme asure</w>\nm v\ncyber security</w>\napp ren\nterror ism</w>\no z\nv ital</w>\nni es</w>\ngon z\nfun ded</w>\ntwi st</w>\nassess ment</w>\ndie sel</w>\nen for\ncolum n</w>\nad dressing</w>\nca sts</w>\npay ment</w>\nx ton</w>\nfi er</w>\n, '</w>\nla st\nne e</w>\nun less</w>\nclo se\nsk ill</w>\ncuis ine</w>\nfun eral</w>\nti les</w>\na un\nk ru\nrelation ships</w>\nðŁĴ ¯\nev ent\nâĢįâĻĤ ï¸ı</w>\nkind ness</w>\npro posed</w>\nacou stic</w>\na es\ndefen der</w>\ndan ce\nh tt\nw at</w>\nvo y\nðŁ¤ ĺ\nau s\ncli ff</w>\nsear ching</w>\nbeauti fully</w>\nin qu\nat l</w>\nspeci alist</w>\nðŁĲ ¶</w>\nda i</w>\ntra ils</w>\nclass ics</w>\ninst ant</w>\nv ous</w>\nre venue</w>\nmar ch\nkir k\nfr inge</w>\nfire works</w>\ntri via</w>\nâĺ ħ</w>\ntr action</w>\nwal ter</w>\nmo to\nl ily</w>\natt itude</w>\ncli mb</w>\nsc an\nsav ings</w>\nc w\nfa ith\ncred its</w>\nab led</w>\ngra ff\nauto graph\nhe he</w>\nran ch</w>\nha d\nro gers</w>\nðŁĮ ¹</w>\nf in</w>\nre qu\nfol k\nad ditional</w>\nlyn n</w>\nu ber</w>\ndol lars</w>\nlo gic</w>\nwor th\nso m</w>\nthe sis</w>\np ound</w>\nbi c</w>\nst ur\ncer am\nspen cer</w>\nen tered</w>\nv amp\norgani zed</w>\nâľ Ī\npp s</w>\ntr on</w>\nmerce des</w>\nno ti\ncompet itive</w>\ndo w</w>\nous ness</w>\nvic tor</w>\ngr illed</w>\nna i</w>\npu tin</w>\nab ra\nbl ame</w>\nalex and\nanim al\ndec ent</w>\np ent\ninter ior\n:' )</w>\nbut ler</w>\nbal let</w>\nðŁĴ Ķ</w>\nalbu ms</w>\ndown s</w>\nla d</w>\nsi r\npla in</w>\np ers</w>\nblon de</w>\ndis c</w>\npaki stan\nse ment</w>\nga a</w>\nw age</w>\nch as\nman i</w>\nco ps</w>\nterr it\nlo l\nlau ghter</w>\nri vers</w>\nmagnific ent</w>\nlam p</w>\nw b\nnew sle\nchar ts</w>\nble ssing</w>\np unch</w>\nlon gest</w>\nfl oral</w>\ncu tie</w>\nfare well</w>\nsto pping</w>\nmb b</w>\nbu d</w>\nchee se\nde cla\nsi m</w>\nmc donald</w>\nde ter\nyou th\nt ch\nfre der\nkin dle</w>\nfer n\nat or\nas leep</w>\np ond</w>\nspr int</w>\np ounds</w>\nla zy</w>\ngh e\nfundra ising</w>\ndead ly</w>\ngran de</w>\ndou g</w>\nhe y\nlin da</w>\nconsi dering</w>\ni um</w>\ngol den\nvi k\nauth ors</w>\ndi ss\nu ally</w>\nappropri ate</w>\nmor ning\ny le</w>\nhon oring</w>\nfoli o</w>\nbe c</w>\nre bec\nfin land</w>\nformu la</w>\ncorn wall</w>\nsh ay\ncau sing</w>\nbl end</w>\nsig nal</w>\nt ent</w>\nkash mir</w>\nnation als</w>\nhar mony</w>\nsc out</w>\nacce ssi\nhe ight</w>\nmedi eval</w>\nimpro vement</w>\nke es</w>\nprac tical</w>\ncar d\nde par\nhu n</w>\nom ing</w>\ncal gary</w>\nste l</w>\nbu bble</w>\ngur u</w>\nma h</w>\nunex pe\nn h</w>\ned a</w>\nme at\ni ge</w>\nsi o</w>\ngod dess</w>\nin ches</w>\ntun es</w>\nbr itt\nsti on</w>\nra j</w>\nâĻ «</w>\nmer cy</w>\nðŁĴ ĺ</w>\nsen ds</w>\ni est</w>\npol ici\nval e</w>\nreduc ed</w>\nas ap</w>\nvi jay</w>\ndefen sive</w>\ncelebr ations</w>\nri ders</w>\nmed itation</w>\nhar mon\ng ing\nÂ ¡</w>\nprogram ming</w>\nin au\nsud den\nm h</w>\nreplac ement</w>\nsk u\nj ar</w>\ngra des</w>\nta st\nk itt\nbrand ing</w>\nk aw\nboo t\nf ought</w>\np ays</w>\ng f</w>\niz ation</w>\nho p\nk k</w>\nactivi st</w>\nv end\ncoast al</w>\ncha os</w>\nðŁĶ ´</w>\nse me\nbill board</w>\nli fting</w>\ncu mb\nsc al\nðŁĸ ¤</w>\nstru ck</w>\nl v\nindie dev</w>\nbeat en</w>\njun gle</w>\nal right</w>\ndestin y</w>\nm ing\nk c\nch ances</w>\nom an</w>\nq atar</w>\ncra f\ntra ined</w>\npri x</w>\nchar m</w>\no tive</w>\ns mu\ne c</w>\nand ers</w>\nhand ed</w>\nal ban\ncertain ly</w>\narri ving</w>\ni ze</w>\nsa i</w>\ntr ack\npain ter</w>\nhu mble</w>\nappo intment</w>\nhead line</w>\nmanag ing</w>\nmo d</w>\nas pe\nandre a</w>\nÃ ¤\nethi op\nun ited\nexi st\nbal i</w>\nk ad\nn t\nd red</w>\nre x</w>\nrecogni ze</w>\ntam pa</w>\nbe ers</w>\nati a</w>\nhe els</w>\nno te\ntransport ation</w>\ntur tle</w>\nre de\nhipho p</w>\nsp icy</w>\nsp urs</w>\nâ¬ ĩ\ncor p</w>\nther n\nto ast</w>\nhur ry</w>\nproper ties</w>\nma ge</w>\nmar co</w>\nele ments</w>\nbou ti\nsyn drome</w>\nms g</w>\ndevelop er</w>\ngra ders</w>\nhe im\nre sil\noff ices</w>\ndel ay</w>\ndi men\nvin tag\nbarbar a</w>\nðŁĺ ±\nvene zu\ncu lar</w>\nfac ed</w>\nbar n</w>\nðŁĺ Ĩ</w>\nsurvi vor</w>\nwor m</w>\nconfu sed</w>\npassion ate</w>\nØ ±\nidenti fy</w>\nelectr icity</w>\nsou ls</w>\nbrad ley</w>\nrepor tedly</w>\nlun ch\nshel f</w>\neli a</w>\nswee t\nsmoo th\nemplo yment</w>\nam el</w>\nmanhatt an</w>\nste am\noun ts</w>\nye p</w>\nli ving\nun e</w>\ndescri be</w>\nca res</w>\nman ila</w>\nsha wn</w>\nac ted</w>\nbas h</w>\nst even\nre st\npet ition</w>\ndiv ine</w>\nwel sh</w>\nrac e\nplatin um</w>\nðŁĮ ¸</w>\np b</w>\nextra ordinary</w>\nsolidar ity</w>\nm all\non ion</w>\nschedu led</w>\ngame of\nfer gu\nde ms</w>\nnor m\np k</w>\ntri als</w>\npolici es</w>\npubli shing</w>\nst ole</w>\nfron t\ncharac ter\nvan ia</w>\nex ce\nsti e</w>\nsc a</w>\nresi dential</w>\nsa iling</w>\nðŁĶ¥ðŁĶ¥ ðŁĶ¥</w>\nspons ors</w>\nth ick</w>\nchampag ne</w>\nshe pher\ncontinu ing</w>\nven ice</w>\nper th</w>\nna p</w>\na ster\ny ak\nun limited</w>\ncho ices</w>\nne o</w>\nhi v</w>\nrepor ter</w>\nbru ssels</w>\nf old</w>\ndy s\nse mi\nla wn</w>\nit alia</w>\nwi fi</w>\nas k\nem ed</w>\nfr ame\nmonit oring</w>\nste ad</w>\ni da\ngr in\nis a\nfli p</w>\nre stric\noffen sive</w>\natta ched</w>\ndi sh\nwh y\nphilli ps</w>\ngre et\np als</w>\nmix tape</w>\nv ou\nfiel der</w>\nspar k</w>\nalber ta</w>\ng len</w>\nca sh\ns ri\nu ri\nro dri\nentreprene urs</w>\nclimate change</w>\np sy</w>\nd le\nem ents</w>\nlin ked</w>\nnether lands</w>\nacci dentally</w>\noppos ition</w>\nvel vet</w>\nra ys</w>\nc w</w>\nom o</w>\nm f</w>\nlmfa o</w>\nnewsle tter</w>\n: )\ntoi let</w>\nliter ature</w>\ndi sp\nphili p</w>\nuni form</w>\nsudden ly</w>\nhead er</w>\ncool er</w>\n-- -</w>\nprou d\nbri g\nnis san</w>\nscienti st</w>\nj ah</w>\ncon centr\npac ks</w>\nappo inted</w>\nso ap</w>\neng age</w>\ncho se</w>\nâĻ ¡\nse tup</w>\njeal ous</w>\nhar ry\ng ation</w>\ntun nel</w>\nte mp</w>\nosc ars</w>\ndec ade</w>\nrecomm ended</w>\nchild ren\nab a</w>\nanxi ety</w>\nve ments</w>\nsal on</w>\npho too\norgani z\nmach ines</w>\nab s</w>\nvil le\nhy pe</w>\nti ff\nemer ging</w>\nav geek</w>\n[ #</w>\ncontribu tion</w>\nbra dy</w>\nre sto\ng mail</w>\nfit z\nphoto shoot</w>\nhel met</w>\nh t\neleg ant</w>\nug anda</w>\nnur sing</w>\nor leans</w>\npen n</w>\nna h</w>\nfoo tage</w>\nem a</w>\nw o</w>\nw ad\nconcer ns</w>\nve re\nre mark\nwho ever</w>\nstr ang\np t\nqu it</w>\nsh ang\nhistor y\ns ick\nperman ent</w>\nill ness</w>\ncol d\nvisi on\nhe m</w>\nar row</w>\ncon vic\npin k\noc cup\nbal d\nex hau\nu of\nam o</w>\non t</w>\nãĥ »</w>\nadop t</w>\nla id</w>\nsmo ked</w>\ninter pre\ness enti\nassoci ated</w>\nb d</w>\nbb y\nfi er\ninst all</w>\ndipl om\ncon diti\nc f</w>\nw ak\nany a</w>\ngr aci\nfi sher\ns ss</w>\nap r</w>\nil it\nmus ician</w>\nsymph ony</w>\ncor d</w>\nh ack</w>\nle gi\nl v</w>\nbless ings</w>\nhum or</w>\nsc ra\ne ti\nmin ster</w>\ntrav elling</w>\nbu sh\njewell ery</w>\nli me</w>\n!! !\npregn ant</w>\npe e</w>\nlo b\ncap ital\nip a</w>\npen cil</w>\nla bor\nduc ks</w>\nprou dly</w>\nwedd ing\ndere k</w>\nm w</w>\npe g</w>\nvalent ine\nan gu\nre treat</w>\npro spect</w>\ndang er</w>\nvul ner\nup set</w>\n, #</w>\nsr k</w>\nx im\nthur sday\nn fl\nkis ses</w>\nre ds</w>\ncr ack\nre ward</w>\nc u</w>\nko k</w>\nme te\naband oned</w>\nit t</w>\nme als</w>\nsp ell</w>\nstan bul</w>\ndel ays</w>\nru m</w>\nle op\ngu m</w>\nno va</w>\nsuper man</w>\nch ick</w>\nm is</w>\ndram atic</w>\ninno cent</w>\nr ounds</w>\nre c</w>\nauti sm</w>\nbangla desh</w>\nmor al</w>\nmo vie\nsp oo\nk la\nâĥ £\nou ting</w>\nmess i</w>\nab road</w>\nloo kin</w>\na im</w>\nq i</w>\nst ack</w>\ncolla ge</w>\nà ¯\nhud son</w>\nsc an</w>\nho e</w>\nch au\noc cur\ncomm ander</w>\nho les</w>\nðŁİ Ħ</w>\nbi as</w>\nv on\nstick er</w>\nma k\nresponsi bility</w>\ncolum bus</w>\nsa int\ned mon\nrac ism</w>\nfar ms</w>\nw en</w>\ngul f</w>\nmay o</w>\n!!!! !!!!\ncorpor ation</w>\nba chel\nel a\ninter nal</w>\nje ep</w>\nfol lows</w>\ndi alogue</w>\nde rer</w>\nsmart phone</w>\nhe len</w>\nrich mond</w>\nequ ity</w>\ns land</w>\nb g</w>\nne ar\nav i</w>\nmemph is</w>\nwe ir\ndiscu ssed</w>\nbad ge</w>\np up</w>\nmi stake</w>\nphen omen\nun ite</w>\nðŁ Ľ\nde pic\nri des</w>\nin augu\nn at</w>\nsof twitter</w>\ncomb ination</w>\ngosp el</w>\nâļ ¾\nad mission</w>\nretro gaming</w>\nðŁĲ ¾</w>\nsch u\nmb o</w>\njun ction</w>\nal arm</w>\nà ¦\ngr ac\nkh ali\nk ul\nm ale\ncap tion</w>\nwi sh\nte re\ncor ps</w>\nru bber</w>\nplay station</w>\ner in</w>\neffici ent</w>\nl or</w>\njo kes</w>\nin ary</w>\nnor man</w>\nlu is</w>\ninaugu ral</w>\nch ed\nâļ½ ï¸ı\ndi p</w>\nto e</w>\nstr at\naa c</w>\nam u\npi er</w>\nco tt</w>\ncomm and</w>\ntt en\nsn oo\ncu be</w>\nclo ses</w>\nclass ical</w>\ns word</w>\nexpre ssion</w>\nreach ing</w>\nn app\nco st\naffe ct</w>\nric o</w>\ngi f\nbrea the</w>\ntri be</w>\nor tho\nh ay</w>\nl g</w>\nfri es</w>\nn m</w>\nhi ding</w>\nrichar ds</w>\nen de\nmic ro</w>\ncapit ol</w>\ncop y\nro m\nregi me</w>\nmary land</w>\ntax i</w>\ndi al</w>\nembar ra\nun believ\nch t</w>\nv s\nelim in\no dd</w>\npen ny</w>\nsound track</w>\nl ings</w>\ntrans ition</w>\nrema ining</w>\na is</w>\nmali k</w>\n? !?</w>\nrand om\ndef end</w>\nul tra\ntru m</w>\ndanc er</w>\nst ol\ndri ve\na ver</w>\nro ast</w>\ndefin ition</w>\nse an\nexcit ement</w>\npartic ul\nsu rely</w>\nsh av\nber y</w>\ndi shes</w>\ncom m</w>\nis ol\ni am</w>\nob li\ngho st\nhugh es</w>\nchi efs</w>\nb as</w>\nconserv ative</w>\nspeci al\nfe min\nsh ri</w>\nn ancy</w>\ninte l</w>\ntu ne\nðŁĩ ª\njo el</w>\ngg le</w>\nmo to</w>\nðŁĺ Ķ</w>\nbu ck</w>\nd ag\nantic ip\nmont ana</w>\ngu id\nfro g</w>\nec raft</w>\nop e</w>\ndri ves</w>\nnu mer\nx y</w>\ncolor ful</w>\nwednesday wisdom</w>\nillu min\nbey on\ninau gur\ndeep ly</w>\npre fer</w>\nfor tune</w>\ncoo ked</w>\nti ble</w>\nâĺ ķ\nswe ater</w>\nit ter</w>\ntt y\nu i</w>\ngi e\ncom plic\n~ ~\ntax es</w>\ncu ps</w>\ndi verse</w>\nsam anth\nâłĢ âłĢ\nba king</w>\nsy mp\nwa i\nbe half</w>\nmer cur\ntravel s</w>\nðŁİī ðŁİ\nor ia</w>\neng aged</w>\njump ing</w>\nreti red</w>\nn aked</w>\np uni\nspeed way</w>\nsci ences</w>\nrehear sal</w>\non ym\ndy ou\npl ates</w>\nr ati\nkri sh\njaz z\ncar ol</w>\nra f</w>\npen alty</w>\ntim eline</w>\nru by</w>\nengine ers</w>\nra f\nbel le</w>\ndo se</w>\nche on</w>\nesc ap\nme g\nran k</w>\nor d</w>\nme gan</w>\nmer ch</w>\nec lipse</w>\nâĺº ï¸ı\nple dge</w>\nkir k</w>\nper si\nleice ster</w>\nsa k\nw k\nsaf ely</w>\nyy y</w>\nje t\npromis ed</w>\nj c</w>\nen ne</w>\nno ah</w>\nre no\nre a</w>\nðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ</w>\ntra il\nðŁĳ Ģ\nf d</w>\nsoo o</w>\nri min\nw k</w>\nà¸ ²\ni al\nx ox\nbis cu\nd ale\nfan dom</w>\nparticip ating</w>\nfla g\nprivi lege</w>\npe ach</w>\nmach ine\nbo ston\ngro ss</w>\no g\nmir acle</w>\nadop tion</w>\nu ss\nmon sters</w>\nbe ij\nclar ke</w>\npu shing</w>\npra ying</w>\nar o</w>\nd n\nell is</w>\napol lo</w>\nod ds</w>\nrefuge e</w>\nto w\nb p</w>\nðŁĩ¬ðŁĩ §</w>\nh end\napp eared</w>\nmemb ership</w>\npe an\ndu m</w>\nviol ent</w>\nv y\npotat oes</w>\naw w</w>\ngreet ings</w>\nt ts</w>\nac on</w>\nsh ane</w>\nphotograph ed</w>\ncra b</w>\ntemper atures</w>\ncu ba</w>\nc fc</w>\nwel com\nhe l</w>\nin nings</w>\nm k\nco de\nkno ck</w>\ngra ss\nswe dish</w>\np ta</w>\nick y</w>\nv at\nlin ing</w>\ns q</w>\nsa p</w>\nar c</w>\nannoun cing</w>\nsk ins</w>\ncit yof\nbr ing\nco x</w>\ngam er</w>\nit arian</w>\ni da</w>\nh d\nros se</w>\nsad ly</w>\nge o</w>\nâļ ¡ï¸ı</w>\ntag s</w>\nfa ther\nchan ge\nl ance</w>\nwhis key</w>\nadel aide</w>\nte c</w>\nstick ers</w>\nmarke t\nclass y</w>\nbad ass</w>\nflo rence</w>\nlin er</w>\nfro st</w>\nk ate\nac on\nscand al</w>\nes sex</w>\nðŁĺ ı\nvi vi\ndr ill</w>\nblo ggers</w>\nrecomm end\nd ha\nac res</w>\nro ma</w>\nbu y\ngro cer\ner ia</w>\nma har\nff er</w>\npatter ns</w>\nver i\ncom pu\nst ev\nang a</w>\nment or</w>\ndo o</w>\nit ali\ncdn poli</w>\non ly\nconduc t</w>\nelec tro\nde f</w>\nwh ale</w>\nprepar ation</w>\nbicy cle</w>\nvi ral</w>\nturn out</w>\nbra ss</w>\nqu ad\nhospit ality</w>\npack aging</w>\nden cy</w>\nceme tery</w>\nabo ard</w>\ndre aming</w>\npic ture\nt all\ninv ent\nad mi\no e</w>\ntem ps</w>\nqu an\nfun dam\npro mp\nresi dence</w>\nmu d</w>\nsour i</w>\nâĦ ¢</w>\ngraff iti</w>\ngi f</w>\nd nd</w>\ncom p</w>\ns war\npe eps</w>\npale stine</w>\ndevil s</w>\nsan g</w>\nassi stance</w>\nbi ke\nmissi ssi\ninter viewed</w>\nne phew</w>\ndru ms</w>\nv and\ngentle men</w>\nn sw</w>\ninst a</w>\nleban on</w>\nee ee\noli via</w>\nver y\nrou gh\nindustri es</w>\nm ation</w>\nðŁĺ Ĵ</w>\nbar rel</w>\nn ay\npo ps</w>\nmoder n\nill y\nare st</w>\non ents</w>\nprotec ting</w>\nv ans</w>\ne o</w>\nvi kings</w>\nrestaur ants</w>\nre ck\njac kie</w>\nandre w\nw illing</w>\nhe ath</w>\ncitiz en\ndisc rimin\nà¹ Ī</w>\nstu art</w>\nm ys</w>\nhi p\ntran sp\n\" ?</w>\nte x</w>\nsu shi</w>\nke d\ncro ssed</w>\ndist ur\npe dia</w>\nf ate</w>\nsome how</w>\nmo th</w>\nproce ssing</w>\nis s\nr in</w>\nu ts</w>\nyy c</w>\nver t</w>\nlg bt\nre id</w>\non to\narab ia</w>\nhabit at</w>\n= =\nstre ak</w>\nsimp son</w>\naddic tion</w>\nwim ble\ndeli vers</w>\nchalleng ing</w>\nðŁİ ¶\nfran ch\ne du\ns me\nai ds</w>\nhur st</w>\nth am\ntari an</w>\nremem bered</w>\npalestin ian</w>\nfe es</w>\ntru m\nsket ch\nur u</w>\nfit ting</w>\njes se</w>\nðŁĶ¥ ðŁĶ¥</w>\n---- ----\nba ch\nici a</w>\ncolo red</w>\nda h</w>\nassoci ate</w>\nint el\ns eller</w>\np u</w>\nstu ffed</w>\nac s</w>\nb s\nsh in</w>\ncooper ation</w>\ncertific ate</w>\nab u</w>\ningredi ents</w>\nre v</w>\nin ge\nel der\nchristi an\nbun dle</w>\nth ic</w>\ndir t</w>\nbeij ing</w>\ncomm it</w>\nted dy</w>\ned u</w>\nto day\ns field</w>\nw yn\nconfir ms</w>\nlo o</w>\nj v</w>\nene ss</w>\nal pha\nvir us</w>\nari um</w>\ngr ind</w>\nbri dges</w>\nintroduc tion</w>\npol ls</w>\nbac ter\nz ach</w>\ntermin al</w>\nra iders</w>\nfla vor</w>\nzom bie</w>\nvo d\nsp reading</w>\ngameof thrones</w>\neffici ency</w>\nlat ely</w>\nale m</w>\ntwee t\ncri mes</w>\ncl er\nde y</w>\ndg ed</w>\nhy un\npay ments</w>\ncir cus</w>\nðŁĺŃ ðŁĺŃ</w>\nmis souri</w>\nlu b</w>\nepiso des</w>\nc age</w>\npo s</w>\nmat ching</w>\ntumb lr</w>\nlin ed</w>\nge st\nam bi\nnar r\ning ton\nregu l\nblo wn</w>\nis le</w>\nco co\non don</w>\njoshu a</w>\ntour ing</w>\nsm a</w>\nsau sage</w>\nbest friend</w>\nbo eing</w>\ndesi re</w>\nsav age</w>\nra pper</w>\nde vo\nte ar</w>\ntake over</w>\ncow boys</w>\npo ker</w>\npar ag\npp e</w>\nh int</w>\nwe ars</w>\nse th</w>\nro les</w>\nl anc\nman ga</w>\nform at</w>\nfl yer</w>\nc ay\nmo or</w>\nba ke</w>\nspla sh</w>\nv ad\nker ala</w>\nproce eds</w>\nsil ly</w>\nreflec tion</w>\ndi str\nwi d\nsu it\nci vic</w>\nyan kees</w>\nby n</w>\nmigr ation</w>\ndi stin\nor ch\nfe mini\nquali fying</w>\ntu ri\no be\nhun dred</w>\ncra p</w>\nwan g</w>\nmathe mat\nbu re\nexpo sure</w>\nfergu son</w>\nseme ster</w>\nre serv\npl ym\na hu\nfac ial</w>\nwa x</w>\nwor ried</w>\nca b</w>\nvi o\nas a</w>\nco d</w>\nto pics</w>\np cs</w>\nhal o</w>\nrescu ed</w>\nhoriz on</w>\nar k\nâļ ª\nhol ly</w>\nel f</w>\nul ti\npu p\nquali fied</w>\nattend ance</w>\nati vely</w>\ndestro y</w>\ny c</w>\nfor th</w>\nphotoo ftheday</w>\nc ents</w>\nic eland</w>\nmeas ures</w>\nde sk\nport folio</w>\nartic les</w>\ndirec tors</w>\ndat ab\ne w\ncreep y</w>\noun ding</w>\nhon oured</w>\nmi st</w>\nj it\nmen tioned</w>\nport able</w>\niti c</w>\nd ann\nfriday feeling</w>\nam id</w>\nti ger\nscri p\nhelicop ter</w>\nhard ware</w>\nexpl or\nwork place</w>\naustri a</w>\nbeat les</w>\nber nar\nspi der\ndisc o</w>\ncul t</w>\nlim its</w>\nshor tly</w>\nfin al\nnin ja</w>\nlu ke\nle bron</w>\nwal mart</w>\no il\nvan illa</w>\nshi re\nye g</w>\nak y</w>\nc s\nbl er</w>\ncollec ted</w>\nt g</w>\nrol led</w>\nspeci als</w>\nb ff</w>\npier re</w>\nsh im\nvi er</w>\nflash back</w>\nrestor ation</w>\nindividu als</w>\npro d</w>\nfre aking</w>\ntu rer</w>\no a</w>\nre fre\nmor oc\ngre et</w>\nre yn\ncare ful</w>\nour ing</w>\nu sh\nis d</w>\ng ill</w>\nvie w\nthunder storm</w>\nb led</w>\npic nic</w>\nguar di\npi g\nar k</w>\nsyl vania</w>\nbann ed</w>\nu cl\nvi jay\nori um</w>\nav engers</w>\nbeliev es</w>\neu r</w>\nmonu ment</w>\nconcer ned</w>\nla bs</w>\nber g\na ap\nvi sh\nsing les</w>\ncan cel\nz el</w>\nar ab</w>\nru th</w>\ntoo th</w>\nar ta</w>\nsh af\nchair s</w>\nr ack</w>\ndise ases</w>\ncrow d\ncl y\nfle x</w>\nchrist ma\nartif icial</w>\ntom at\nfin e\ndra ws</w>\nadvoc ate</w>\nfran ce\nÙ Ĭ\nðŁĺ ³\nheav y\ns our</w>\ncompre hen\nno ble</w>\naa p</w>\nhin du</w>\ncor al</w>\ng ars</w>\now en</w>\nn l\nst all</w>\nyel low\nmar ina</w>\nin ver\nsuppor t\ntou gh\npromis es</w>\npi e\nmaster piece</w>\nsco re\nfor ce\nmor tg\ncrypto currency</w>\no x</w>\nr ors</w>\nrock in</w>\npro vin\nho g\nno stal\noak land</w>\npat rick\ninclu sion</w>\ntra ffic\nah med</w>\na ha\nlux ury\ncon secu\nde mon</w>\nâĸ º</w>\nb lowing</w>\nst ag\n: \"</w>\nencoura ge</w>\nben e\nsku ll</w>\ndo dge</w>\nbu ster</w>\nkin son</w>\nwit ne\ner ror</w>\nlo west</w>\nfel low\nà °\nsh re\nbl ur\nvir gin</w>\ncompos er</w>\nsli p</w>\nmor nings</w>\nga ins</w>\ntab le\ngra in</w>\nari st</w>\nbraz ilian</w>\nw we\ntu es</w>\nribb on</w>\nan ag\ndi st</w>\nsac rif\nem brace</w>\nentreprene ur\naf fili\nde o</w>\nt ali\ntouri st</w>\nfat al</w>\nì Ĭ\nautom atic</w>\nðŁĩ µ\nwe ak\nwel fare</w>\nconfir m</w>\nbenjam in</w>\nfi ghts</w>\nalleg ed</w>\nme ad\nstrugg ling</w>\npro secu\nche f\nÃ ¨\npropos al</w>\ner n</w>\nðŁĺ Ħ\ndy k</w>\non gs</w>\nhon g\nm ack</w>\nmel on</w>\non ent</w>\nru sh\nd ap\ntol er\npro pag\nc ze\ntrans lation</w>\nwal let</w>\ncott age</w>\nsa il</w>\nconstitu tion</w>\nðŁĴ Ģ</w>\nmun ici\nfav or</w>\nstorm hour</w>\ni h\nðŁĺ Į</w>\napproach ing</w>\npin ned</w>\nj ed\nniger ian</w>\nn ach\nsh at\nparticul arly</w>\nmc don\ncamer as</w>\nanni e</w>\nadmini str\nhe at\nelectr ical</w>\nchar ming</w>\ngib son</w>\nbouti que</w>\nex posed</w>\nac tor\npil low</w>\nbeach es</w>\ngenu ine</w>\nmargare t</w>\nben nett</w>\nlou isi\npos itions</w>\nel y\nshin y</w>\nten tion</w>\narchitec t</w>\nren tal</w>\nac qui\ngoo gle\nsub way</w>\nmom ent\nðŁļ ¨\nri m</w>\nmetho ds</w>\ncy cli\nnor folk</w>\nÙ Ī\nover whel\nra pid</w>\nwe ar\nhappy birthday</w>\nprogre ssive</w>\nðŁĴ ¥\nco gn\npap a</w>\nf ool</w>\nphilosoph y</w>\npol ar</w>\njim my\nwi g</w>\nðŁĴ ĭ\noper ating</w>\nreduc tion</w>\nph i</w>\nfla gs</w>\nto the\no di\na res</w>\nk oo\nk ang\nar kansas</w>\nash ton</w>\nwimble don</w>\nsci fi</w>\nattrac tive</w>\nmississi ppi</w>\nlogi sts</w>\nral ph</w>\nla bel\ngradu ates</w>\nma ha\nhome town</w>\nâľĮ ï¸ı</w>\nfoun ded</w>\non the\nli z</w>\ntrans l\nmini mum</w>\npre sti\nta m</w>\ngener ations</w>\nre bel</w>\njourn alists</w>\npar am\nmc m</w>\nacry lic</w>\ndeath s</w>\ntes la</w>\nw t</w>\nbry ant</w>\njer us\ni stanbul</w>\nmuham mad</w>\nri ley</w>\nk ris</w>\nwork shops</w>\nis o</w>\ncoun ts</w>\nstre t\nprote cted</w>\ntrin ity</w>\nman ual</w>\nr hin\nr il\npleas ant</w>\nle mon\nner d</w>\nhar der</w>\ndar ren</w>\nbur y\nra h\nbas is</w>\nmi gu\nocca sion</w>\nli sts</w>\nâĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ı</w>\ne b\nde cre\nhamp ton</w>\nìĿ ´\ntra vis</w>\ntrans form</w>\npuer to</w>\nnh l\nav oc\ntri ps</w>\nunexpe cted</w>\nve t\ndi dyou\nbar ber</w>\nst ages</w>\nm son</w>\nre presented</w>\nfor t\nl al\npp le</w>\nnic ely</w>\nignor e</w>\nqu il\nqu inn</w>\nh k</w>\ncarri er</w>\nremin ded</w>\nam ong\npass enger</w>\nel len</w>\ngue z</w>\nsc ape</w>\nmu ral</w>\nyoun gest</w>\nma sh\nd ill\nrout ine</w>\nstain less</w>\njack son\ngand hi</w>\nth al</w>\non ers</w>\nedit orial</w>\nconvers ations</w>\nsd ale</w>\nautom ation</w>\ni ke\nà¸² à¸\nðŁĩ ª</w>\nhau l</w>\nla ying</w>\nmen tions</w>\nam en</w>\nabor tion</w>\ni bi\ncoun ties</w>\nca therine</w>\nman ds</w>\njam e\nroll er</w>\nau t</w>\nn am</w>\no logical</w>\ncep tion</w>\nran king</w>\ntox ic</w>\nsn acks</w>\nvictor ian</w>\nbang kok</w>\npsycho logy</w>\nre g</w>\nang ela</w>\nrespon d</w>\nsty le\nsophi e</w>\ndak ota</w>\nachiev ed</w>\nmar ked</w>\nimper ial</w>\nin as</w>\nglo ves</w>\nsli m</w>\nconfi dent</w>\natt acked</w>\ngg er\nlon ely</w>\nvalentine sday</w>\nre b\ncraft beer</w>\norig in</w>\nzim bab\nce iling</w>\nte ens</w>\nother wise</w>\nw b</w>\nf ers</w>\nday sof\nadvis or</w>\ny ah</w>\nâĻ ª</w>\nen der</w>\nrepublic ans</w>\nav a</w>\nskir t</w>\npi pel\nchi e</w>\njan e\nja x</w>\nðŁĺ ĭ\nâľ Ĭ\nj ays</w>\nbre tt</w>\nbal o\ncru cial</w>\nd har\nas is</w>\nde au</w>\nlloy d</w>\nchat ting</w>\nâĿĦ ï¸ı</w>\nrel ay</w>\nremark able</w>\nn s\nwe t\nbris bane</w>\nðŁĶ ´\ntion ally</w>\nf k</w>\nla yer</w>\nhouse hold</w>\nconsecu tive</w>\nes is</w>\npend ant</w>\nst ir\ncrit ic\nsu gar\nphoto shop</w>\npa res</w>\narti stic</w>\ndo dgers</w>\nc un\ncra fted</w>\nam end\nbo at\nâŃĲ ï¸ı\negyp tian</w>\nsa w\ntra ge\nsmall er</w>\nox y\npa ired</w>\nnex t\ni res</w>\ntac o</w>\no y</w>\nu c</w>\nst i</w>\na erial</w>\n: //</w>\ndr o</w>\ndot com</w>\ngg ins</w>\nr pg</w>\nay e</w>\nle an\nstri ker</w>\nlo bby</w>\nprote sts</w>\npri ority</w>\ncongre ss\nam ate\ninv it\nr ington</w>\nmom my</w>\nth us</w>\nallow ing</w>\npione er</w>\nenfor cement</w>\ng ori\ntal k\ndra g</w>\ndu mb</w>\nbul let</w>\nsan ge\ner y\ntar gets</w>\nðŁĩ ¦\nhe ather</w>\nconsi der\nseaf ood</w>\nve st</w>\nris ks</w>\n% .</w>\np g\nsac red</w>\nhe ating</w>\nkick ed</w>\ntto t</w>\n. -</w>\nchan di\nco ven\npo ol\npul se</w>\ni a\nro ster</w>\nshakespe are</w>\nes a</w>\ncar go</w>\npean ut</w>\ntro op\nac tion\ntab let</w>\nhome work</w>\ncast le\nstru ction</w>\nmus icians</w>\nfree zing</w>\nbu tt\njustin bieber</w>\nj j\nbah rain</w>\nan them</w>\nau dit\ndidyou know</w>\nna vig\nguid ance</w>\nâĸ ¶\ntur f</w>\nn un\nfic ations</w>\nye men</w>\nchar ging</w>\nx c</w>\nbron cos</w>\nsu bur\np ale</w>\nbor ing</w>\namong st</w>\nfor the\nem per\nom fg</w>\np j\nexpe cting</w>\nðŁĴ «</w>\nst l</w>\nad min</w>\nexpect ations</w>\nsw an</w>\nshoo t\noooo o</w>\nmin ent</w>\nãĢ Ĳ</w>\nwall ace</w>\nstan g</w>\nsatur day\nadop ted</w>\ndou bles</w>\nhom ie</w>\nome z</w>\nd han\nvent ure</w>\nsurroun ding</w>\nfi le\nmob ility</w>\nde es</w>\nw ski</w>\nbroo ke</w>\nemb ro\nre members</w>\nkar a</w>\ntest im\nbo tan\nm tv</w>\nsacrif ice</w>\njerus alem</w>\nd l\nÂ ´</w>\nproper ly</w>\nili on</w>\nas i</w>\nleg it</w>\nco pe</w>\nm cla\nrecy cling</w>\nlar ger</w>\nðŁĴ ĵ</w>\npat ric\ngener ous</w>\nja red</w>\np f</w>\nmol ly</w>\nthom as\nju dges</w>\nh b</w>\nsor ts</w>\nbl vd</w>\no ven</w>\nenter ing</w>\nplan es</w>\nbe et\nintegr ation</w>\nboo ked</w>\nfre ed\nver n</w>\nash es</w>\nto pped</w>\nde pot</w>\nwelcom ed</w>\nren a</w>\nm ick</w>\nd and\nsee ks</w>\ngam er\nran kings</w>\nren e</w>\nmu t\nwhis ky</w>\nfire fighters</w>\ngu es</w>\nga ther</w>\ntour ney</w>\nde men\ny ang</w>\nnew ton</w>\nautom otive</w>\nback yard</w>\ndeta iled</w>\nmi st\nto bac\nfi ber</w>\nun usual</w>\ngrat itude</w>\nsp are</w>\nne ys</w>\n: *</w>\nper i\nflo ating</w>\nfin alist</w>\ndon ating</w>\ndre ss\nbro ad</w>\nbe the\neconom ics</w>\ntai wan</w>\ned wards</w>\nplu g</w>\npra iri\nval en\nbab a</w>\nf ad\nan as</w>\nhar per</w>\ndis order</w>\napp lied</w>\np att\nbi kin\nli ver</w>\ncu ri\ncarol ine</w>\nann er</w>\njuli an</w>\nwal king\nmal col\nscreen shot</w>\nco ding</w>\nskin care</w>\nactivi sts</w>\nmyster ious</w>\nex act</w>\nblo cking</w>\nmercur y</w>\nbat ter\ndu mp\nâľ Į</w>\nen se\nli sh\nridic ulous</w>\nprote sters</w>\nðŁĻ Ī\nlu st</w>\nswe at</w>\nas s\nali ke</w>\nco dy</w>\nre ments</w>\nwin ds\nas pir\nvi enna</w>\npra y\n.. .@</w>\nbo i</w>\ncand le</w>\nassi sts</w>\nte e\nder son</w>\np ony</w>\nf ence</w>\ncon spir\nâĺħ âĺħ\noo th</w>\ne pic\nba rely</w>\na unt</w>\nb am</w>\ndiamon ds</w>\nend less</w>\nscre ens</w>\ncan cer\ngr o</w>\np st</w>\npro spec\nmo sque</w>\nhelp ful</w>\nou ri\nbro ther\ngu jar\ncri sti\nine z</w>\nto wers</w>\nad dresses</w>\ngra y\nbur ton</w>\nre tweeted</w>\nðŁ¤ Ķ\nn ity</w>\ndu ck\nsuper vis\njo an</w>\nkin der\nsanc tu\npi ed</w>\nâı °</w>\nł ï¸ı</w>\nm ati\nreven ge</w>\nce ster</w>\neli fe</w>\ndesig ners</w>\nback ed</w>\nbo li\nwei ght\ncou ch</w>\nsu res</w>\ns its</w>\nshri mp</w>\nla gos</w>\nauth orities</w>\nos ity</w>\nhol ly\ncompu ting</w>\nfac tors</w>\nab e</w>\npan els</w>\nram ad\nsent ence</w>\nmissi on\nhol m</w>\nr b\nd ads</w>\nshang hai</w>\nmon ey\nshe ets</w>\nsk ate</w>\nthre w</w>\ncup cakes</w>\ninfin ite</w>\nl is</w>\npractic ing</w>\ness ay</w>\nka i\nas ci\nmo b</w>\nu gh</w>\nhol mes</w>\nre gg\nik h</w>\nmo ck</w>\ncollec tions</w>\npe p\no va</w>\nsal t\nnan dez</w>\nco y\nthre ats</w>\ntex ts</w>\ncin nam\npregn ancy</w>\npen ding</w>\nstam p</w>\nflow er\ng is</w>\nagre ed</w>\npay ne</w>\nro ver</w>\nph ra\nsof t\nf fin\nfa thers</w>\npass engers</w>\naw ays</w>\nal a\nh es</w>\nli van</w>\nin s\nsamu el</w>\ningu i\nh of</w>\nj j</w>\nchen nai</w>\ncat al\nom ic</w>\nhe ath\nni ece</w>\npump ed</w>\nintegr ated</w>\nare l</w>\nno m</w>\nproduc tivity</w>\nwan ting</w>\nvis a</w>\ndi ana</w>\ntw il\nit v</w>\ncam ps</w>\nro wing</w>\nd ley</w>\nblack and\ngu ards</w>\nb ells</w>\nre verse</w>\nvi be</w>\nric ky</w>\nmo ss</w>\nny t</w>\nâĺ Ģï¸ı\nel le\ntro y</w>\ncu dd\nev an\nwomen s\nfo to</w>\nmi stakes</w>\nwick ed</w>\nmi l</w>\nc led</w>\nme mes</w>\nco smo\nschol ar</w>\nren o</w>\nðŁĺ Ģ\nv ents</w>\n# âĢ¦</w>\nterrori sts</w>\nca sey</w>\ncardin als</w>\nðŁĺĬ ðŁĺĬ\nvenezu ela</w>\nbol a</w>\nliter acy</w>\nt w</w>\nen o</w>\ncon tains</w>\nau stin\nfin anci\nev an</w>\nhar vard</w>\norigin ally</w>\nchev ro\nher ald</w>\nnott ingham</w>\nmanag ers</w>\nâŀ ¡</w>\naccep ting</w>\nwal sh</w>\ntutor ial</w>\nentrepreneur ship</w>\nyach t</w>\nrequi rements</w>\nglen n</w>\npe de\nunfortun ately</w>\nach ing</w>\ndais y</w>\ngi an</w>\nnight mare</w>\nâĿ Ĺ\nr ina</w>\nb art</w>\nema ils</w>\noppo site</w>\nwho m</w>\nsa ke</w>\npu zzle</w>\nda shi\npar ty\nblan ket</w>\nbus es</w>\nlo re\nbeau ty\nreas on\npun jab</w>\nwinds or</w>\nfunc tional</w>\nexi sting</w>\nhel lo\ngli mp\ncon vin\nla k\nscre aming</w>\nrebec ca</w>\nbli ss</w>\nnorth west</w>\ninfin ity</w>\ncosme tics</w>\npul ling</w>\ncoffe e\npl ing</w>\nop ho\ncolom bia</w>\ninterior design</w>\n( +</w>\nemo tions</w>\nsa c</w>\nsun glasses</w>\nsav es</w>\nd f\nsix th</w>\nal y</w>\nðŁĺ »</w>\nde en</w>\ndev ast\npolit icians</w>\nlac rosse</w>\ng u</w>\npe i</w>\njav a</w>\ncomb ine</w>\ncoal ition</w>\ner ts</w>\nsurvi v\nch ad</w>\nstri an</w>\nn n</w>\nde vi\ncoun c\nconcer n</w>\ncontro ller</w>\nbre ast\nj ury</w>\ntu m\nintroduc es</w>\nla di\nmobi le\nal z\nste ady</w>\nnur ses</w>\nh acking</w>\non line\noce an\nðŁİ Ħ\na am\nju ven\nic c</w>\nlouisi ana</w>\nar te</w>\nstreet art</w>\nis on\nwn s</w>\nfr m</w>\np anda</w>\nno ir</w>\nmain tain</w>\ndel ay\nsymp toms</w>\nthor n\nge ome\nter n</w>\ncarri ed</w>\np ru\npan or\nas sy</w>\nper u</w>\nclou d\nsp ra\npe di\ne ste\ntag ged</w>\nðŁĺ Ŀ</w>\nshado ws</w>\nnaz i</w>\nØ§Ù Ħ\ncor ri\nâĻ¥ âĻ¥\nj ad\nðŁĩ «\nform al</w>\nspo ken</w>\nðŁĮ ŀ</w>\nenjo y\nlo pez</w>\nout look</w>\nin ho</w>\nw ander\nÙ ħ\nma ya</w>\npe e\nd ine</w>\nãĢ ĳ</w>\nbrief ing</w>\nsuppor ter</w>\nar ily</w>\nght ers</w>\nnatur ally</w>\ndoctor who</w>\nj en</w>\nv ar</w>\nnew year</w>\nre se\nsi mm\nre x\ncon sequ\ntomat oes</w>\nbur st</w>\nbra vo</w>\nbur gers</w>\ncr acking</w>\nnor theast</w>\nbi om\nmush room</w>\nmar que\ndou ble\nni er</w>\nv ag\ntw enty</w>\nkey board</w>\nwin ni\njama ica</w>\npar ish</w>\n: -\nmental health</w>\nali zing</w>\nren der</w>\nwa king</w>\nðŁİ Ĥ\ng ly\nna than\nwa shing</w>\nmel issa</w>\njun g</w>\nloy al</w>\nchil i</w>\nsong writer</w>\nguit arist</w>\nbo wie</w>\nneighb ors</w>\nonym ous</w>\nas set</w>\nta i</w>\nhead quarters</w>\nðŁĮ Ī</w>\ni hear\nci gare\nsur g\n) \"</w>\nre pl\ndar ling</w>\nðŁĻ Ħ</w>\nz ak\nsa re\nãħ ĭ\nmic key</w>\nware house</w>\nmass age</w>\nine es</w>\ndid nt</w>\ni w\nhur ts</w>\neng aging</w>\nmag ic\nwomen in\nk itten</w>\nmor s</w>\nc art</w>\ntit ans</w>\ncolle ague</w>\ncompe ting</w>\ner an</w>\nk hal\nmar ble</w>\ndem and\ndel ight</w>\net ary</w>\nbli zz\nlou ise</w>\nm ls</w>\nfini shes</w>\nexperim ent</w>\nconduc ted</w>\nelectr onics</w>\nitt ers</w>\ncar ing</w>\nwh ats</w>\nsym bol</w>\njun g\ne cu\npi x</w>\ncon text</w>\nchar ger</w>\nðŁĺ ĩ</w>\nre ig\nfra g\në ĭ\nch ad\ntru e\nker ry</w>\ndef ending</w>\na int</w>\nau ton\ncheck out</w>\nbar nes</w>\nless ly</w>\nd t\nm me</w>\nclou dy</w>\nsecond ary</w>\nare z</w>\n_ :</w>\napp a</w>\nconst ant</w>\n\" )</w>\nve ts</w>\njo b\ni ent</w>\nðŁĺŃðŁĺŃ ðŁĺŃ</w>\nm j\nfren ch\ndi ver\ndavi es</w>\nhh hh</w>\ne book</w>\nà¹ ī</w>\nmar iti\nbree ze</w>\nsusp ended</w>\nmat o\nvi et</w>\nra hu\nse i\nbol t</w>\nen ary</w>\nle is\nkar l</w>\nfr amed</w>\nexpla ining</w>\nab c\nde aling</w>\nnat o</w>\nja ke\nexp and</w>\nleon ard</w>\nestabli shed</w>\ndu b</w>\nar men\nel led</w>\nvoc al</w>\nnichol as</w>\nori ent\nk yo\nillustr ated</w>\nah h</w>\ndanc ers</w>\nmilli on\nge ta\npo pp\nas u\nmur dered</w>\ngi ble</w>\nsto ked</w>\ngri ffin</w>\nmaxi mum</w>\nadri an</w>\nen counter</w>\nther o\ndavid son</w>\nðŁį »</w>\nholi day\nev o</w>\nasse ts</w>\ncar son</w>\nmemor able</w>\nâļ ½</w>\nob am\nrepresent ative</w>\ncb d</w>\ntr icks</w>\nvo gue</w>\nvo ice\nmm mm</w>\nsebasti an</w>\ncli f\nath y</w>\npar alle\nðŁ¤ ·\npa k\nev acu\ne ats</w>\nØ§ Ø\ntou ched</w>\norgan ised</w>\nspir its</w>\ncan ad\ngui ded</w>\nframe work</w>\nðŁĮ Ł\npe d\nnatur al\nag ar\nreplac ed</w>\nanch or</w>\nti t</w>\nsha h\norgan is\nsuper ior</w>\nr n\nch ro\neric a</w>\nst ill\ncor on\nchu ck\nloc ks</w>\nor gan</w>\nro sen\nsc am</w>\nben ed\n/ #</w>\nke en</w>\ntre vor</w>\nvamp ire</w>\nsor ted</w>\n! '</w>\naf ford</w>\nin tro</w>\ngr ace\nðŁĺ ľ\nsau r</w>\nkick starter</w>\ninflu en\nv u</w>\ny up</w>\npo c\nðŁİ ¥</w>\na ar</w>\ns ang\ntre k\net sy\ntb h</w>\nscre am</w>\nchevro let</w>\npix el</w>\nshepher d</w>\nan or\ngabri el</w>\ntw ood</w>\nsd cc</w>\nme ters</w>\ndevelop ers</w>\nclo sure</w>\nv w</w>\ntwit ch\nì Ĺ\nse oul</w>\npr ice\nho g</w>\nn ish</w>\nhill ary\nscrat ch</w>\nin cen\nwag on</w>\ndis ability</w>\npan ther</w>\nch ats</w>\ng d\nwit z</w>\nsus sex</w>\nl ate\nden mark</w>\nger ald</w>\ncancel led</w>\nnet te</w>\ni x\nnav al</w>\nbap tist</w>\nte t</w>\ny ad\nma th\nho y</w>\nr andy</w>\npo int\nintel lec\nfru its</w>\nw ool</w>\ngu in\npr on\nthe ft</w>\ncon dem\nmar ry</w>\nn ola</w>\narchitec ts</w>\ncin cin\nroc kets</w>\ngentle man</w>\nex plan\nt ate</w>\ndo e</w>\nra ises</w>\nwild life\nw l\ninsi der</w>\nblan c</w>\nw p</w>\nfor sale</w>\nny c\npo well</w>\nunbeliev able</w>\npen s\ngoo dies</w>\nmu stang</w>\np ens</w>\nst ays</w>\nsqu ash</w>\nxox o</w>\nnear by</w>\never ton</w>\nco co</w>\nle agu\nk han\nstu d</w>\nsouth west</w>\ncon struc\ns worth</w>\ncro atia</w>\nle a</w>\nsu ms</w>\naim s</w>\ne an</w>\nvan ess\niti ous</w>\npa thy</w>\narc ade</w>\nb end</w>\nsugge sts</w>\nsac ram\nroy als</w>\nri er</w>\nem ir\nin cl</w>\nan k\nclar k\nri ght\nvac c\nà¤ ¾</w>\ntan e\nli b</w>\nu sc\nsal es\nhu h</w>\ns ally</w>\nver a</w>\np ga</w>\ngro ws</w>\ndru m\ntre e\neth ics</w>\nsug gest</w>\nis ab\nse aled</w>\npre viously</w>\nanim ated</w>\nab du\nri ses</w>\nglo b\npre dat\nscar f</w>\ndel ic\nom ar</w>\nll i</w>\nsx sw</w>\npy thon</w>\nne bra\nfun k</w>\nreflec t</w>\npav ilion</w>\ntic ally</w>\nch asing</w>\nbak ery</w>\ninva sion</w>\nko h\nbeliev ed</w>\nco hen</w>\ncon qu\ncra fts</w>\nnat i</w>\ncle ver</w>\ngovern ance</w>\nsam ples</w>\nfa ils</w>\nâ Ķ\nti mo\nr itu\nstri king</w>\ninclu sive</w>\nsho cking</w>\ncan t\nrequi res</w>\ndra wings</w>\nà¸ Ń\npurch ased</w>\ndu m\nz ach\nwar ner</w>\ncon sole</w>\nman sion</w>\nfoun tain</w>\ncircu m\ne sh</w>\nis land\nmil k\npro fits</w>\nhali fax</w>\nri val\nâľĪ ï¸ı</w>\njen ny</w>\nsand ra</w>\nny e</w>\nk elly\ny al</w>\nqu ad</w>\nno s</w>\ninste in</w>\nfin alists</w>\nmid fielder</w>\ncu e</w>\nexcep tional</w>\na an</w>\nsa pp\ngett in</w>\nsa a</w>\nf ati\nsl ice</w>\nvol k\ns wal\nla sting</w>\nsum mary</w>\nit as</w>\nsm o</w>\ns z\nâĺ Ĩ</w>\nip l</w>\nfl ames</w>\nene ws</w>\nha v\nhoo die</w>\npitch er</w>\nwin dy</w>\nre vol\ncentr al\nton ite</w>\nðŁİī ðŁİī</w>\nsol ved</w>\nmil wau\norganiz ations</w>\nwee ts</w>\nre fin\ns th\nãĥ ¼\nel in</w>\nton a</w>\ncinnam on</w>\nðŁİ ¨</w>\nðŁİ ģ</w>\nron aldo</w>\npen insu\nome ga</w>\nel ds</w>\ndesig ning</w>\ne igh\nblu et\nben z</w>\nnu g\nash a</w>\nrobo ts</w>\nsu dan</w>\nchoo sing</w>\nen do\nser ge\nclo sely</w>\nhand y</w>\nfing er\nbe ing\nar te\nsurvi ved</w>\nfl ame</w>\nmile stone</w>\ngu t</w>\nd war\nfu tures</w>\nÃ© e</w>\nel o</w>\nfri dge</w>\neli c</w>\nou ch</w>\nu b</w>\np v</w>\ntit an\ncol lar</w>\nst ation\nnev ada</w>\naur ora</w>\nr d\ndun can</w>\nâģ ł</w>\nbri en</w>\nmar sh</w>\nÐ ¾\nto tal\nch ry\ns ers</w>\nsu ffe\nra chel\ncolle ge\nto days</w>\ncour ts</w>\nch it\nre united</w>\ngym na\ngen esis</w>\nbe side</w>\nre presentation</w>\nch ant</w>\ncollec tor</w>\nra k\nath ens</w>\nni gh\nmun ich</w>\nlangu ages</w>\nfl u</w>\nparticip ation</w>\n__ _</w>\nc v\nspec trum</w>\nso da</w>\nco ver\nrefe ren\nab bo\nap a</w>\npublic ation</w>\ned m</w>\nmon ica</w>\nar my\nðŁļ Ģ</w>\ndiv or\ndr y\nstre ams</w>\nrobo tics</w>\nci der</w>\nbull ying</w>\nappro val</w>\nsto ke</w>\nplat forms</w>\nsier ra</w>\nex tin\ni b</w>\nha yes</w>\nsucce ed</w>\nsuff er</w>\nat ically</w>\nda i\nlyn ch</w>\nh ound</w>\ndel ines</w>\nack now\nd ated</w>\nexclu sively</w>\nhe res</w>\nfac ilit\ndam aged</w>\nchar ter</w>\nla kers</w>\nfal con</w>\nunve iled</w>\nwel ove\ne ase</w>\npati ence</w>\nl one</w>\ngent le</w>\ngene tic</w>\nproduc ing</w>\ng our\nshann on</w>\nbil ities</w>\nzimbab we</w>\np int</w>\ndau ghters</w>\nliter ary</w>\nbel le\ncl am\nsurroun ded</w>\nk any\nne il\npir ate</w>\nrang er</w>\nhb d</w>\nnat alie</w>\nbel ong</w>\nolym pi\nemb assy</w>\nsc ol\nen er</w>\nak in</w>\nlo ren\nb h</w>\n: /</w>\ndi va</w>\nden im</w>\nhi pp\nðŁĩµ ðŁĩ\narn old</w>\n? '</w>\nwe ren</w>\nem power\ndis abled</w>\nman or</w>\nrasp berry</w>\nb af\naw ful</w>\ndru mmer</w>\nkar dashi\nn ash</w>\nmachine learning</w>\nch u</w>\nrebel s</w>\ntim ing</w>\nmon roe</w>\nton gue</w>\nran ge\npup ils</w>\nre ss</w>\namaz on\nb z</w>\nhar ley</w>\npal mer</w>\nballo on</w>\ns ings</w>\nic ec\nj b</w>\nc ers</w>\ng ps</w>\nwhi st\nri se\nl t\noo oo</w>\nc attle</w>\nshoo ter</w>\nvod ka</w>\nuc l</w>\nmt g</w>\nle sli\njon as</w>\ndi spo\nat ric</w>\nste in\nvintag e\nfir ms</w>\nflo yd</w>\ncow boy</w>\nsoo oo</w>\nis aac</w>\nwar craft</w>\ndisney land</w>\nbeauti ful\nbe am</w>\nfranch ise</w>\nbu n</w>\nk ag\nan on</w>\ntur bo</w>\nswee p</w>\nmade in\nkar achi</w>\ndete ctive</w>\npenn sylvania</w>\ncontro versi\nvitam in</w>\na side</w>\nchron ic</w>\ndescri bes</w>\nremo val</w>\nha h</w>\nap er\nten ed</w>\nu to</w>\nbad ly</w>\nmir ac\nf ry</w>\nye a</w>\nin jec\nther mal</w>\ncomp act</w>\nth or</w>\nte ed</w>\nur gent</w>\nl ite</w>\ng illi\nsop hom\nic o\nche m</w>\np m\nfor k</w>\nfre ak</w>\nch ak\nrecipi ent</w>\ni y\nni k</w>\nmodel ing</w>\nc ans</w>\nðŁı Ģ\ndel ux\nse am\nsurviv ors</w>\nrad ical</w>\ninvestig ating</w>\nreli able</w>\nf m\ntur t\nligh thouse</w>\nto ol\ngo wn</w>\n) )\nbo ts</w>\nauto graph</w>\na id\nbu ffe\nh mm</w>\nhorri ble</w>\nssi onal</w>\nann i</w>\nà¹ Ģ\nk its</w>\nsch i\neter nal</w>\nhu ss\nsens itive</w>\nr u</w>\ntast es</w>\nchec ks</w>\nim o</w>\npor tion</w>\nsk ate\ne den</w>\nhalf time</w>\nfri ed\nri hanna</w>\nti se</w>\nfl ick\nca in</w>\ns gt</w>\nâľ Ķ</w>\nsh au\nsta ined</w>\nra ffle</w>\ndro ve</w>\nsal man\nprinci ples</w>\nsh o</w>\nar u\nje ss</w>\ngu ine\ngar bage</w>\nmy an\njel ly</w>\ndis ru\nz ia</w>\nq ld</w>\nent ries</w>\nla v\nfle w</w>\nad mit</w>\nobjec ts</w>\ncomp are</w>\nny times</w>\ncann es</w>\np n</w>\nsuff ol\nro c</w>\nd ana</w>\ne gg\nhi st</w>\ncoun sel\n' !</w>\nphy si\nimag ination</w>\nad just\nexplo sion</w>\nplym outh</w>\nhor ror\nelli ott</w>\nbour ne\nde x</w>\nbre ed</w>\nau dio\nlob ster</w>\ndisappo inted</w>\nnation wide</w>\n( (</w>\nincre ases</w>\naustr ali\nce dar</w>\nstar ing</w>\nrac ial</w>\ne is\ng mt</w>\nvisi ons</w>\nstay ed</w>\ndiscu ssions</w>\nde an\ncur tis</w>\nmai den</w>\nstel lar</w>\nhapp iest</w>\nh wy</w>\npre season</w>\ncar av\nmon days</w>\nhospit als</w>\nglimp se</w>\nschol ars</w>\nja i</w>\nter race</w>\nann a\ngoo se</w>\ngra ded</w>\nlot us</w>\nhun g</w>\ngrocer y</w>\nstam ps</w>\nemper or</w>\nsc oop</w>\nin ser\nc as</w>\nexist ence</w>\nhe al</w>\nfal cons</w>\nmar vel\nreduc ing</w>\nterri fic</w>\nmagne tic</w>\nperfor ms</w>\nbar re\np us</w>\ntre ating</w>\nic on\nw h</w>\ndecla red</w>\ntra uma</w>\ndo d\ncome dian</w>\nnik on</w>\nbu gs</w>\nas m</w>\nmont gom\nibi za</w>\ncomprehen sive</w>\nha s\nsan ti\nfellow ship</w>\nda sh\np sal\nlouis ville</w>\nsp y\nfau lt</w>\nd the\nfi led</w>\nvi sta</w>\nde sc\nfe ars</w>\nyou tu\nsp s</w>\nes p</w>\nri g</w>\ncri me\nber ger</w>\nwonder land</w>\nk ent\nin formed</w>\nstev ens</w>\nmy th</w>\nast on</w>\nir i</w>\nvisit or</w>\nat ri\nproduc ers</w>\nal la\nperson ally</w>\nsepar ate</w>\nagen cies</w>\naf ri\nil an\nspo ke\nn ina</w>\nsqu ad\ndi ves</w>\nde pend\nli v\nfier ce</w>\nenter taining</w>\ncha in\nsc at\nbor ders</w>\npal ette</w>\nsp ro\nos is</w>\nder by\ntobac co</w>\nzi o</w>\nwilli e</w>\nju vent\nzoo m</w>\nhol y\nenti rely</w>\naf e</w>\nmart inez</w>\nbe ds</w>\npe a</w>\nbull dogs</w>\nðŁĩª ðŁĩ\nib m</w>\nne on</w>\nethiop ia</w>\nteam mates</w>\nplan ting</w>\ntw er\nany time</w>\nfor bes</w>\nÃ³ n</w>\nrun way</w>\nner vous</w>\nro ger\np ile</w>\nch anc\napo caly\nu w\no i</w>\ndr ought</w>\nterrit ory</w>\nbr ick\ncre atures</w>\ngo in</w>\nw aff\ngre n\nsou theast</w>\nje an\nam bul\ned ited</w>\nstra p</w>\nc v</w>\naar on\nãĥ» ãĥ»\nt su\ndescri ption</w>\nkin dly</w>\nclu tch</w>\nim mer\nen or\nwomen sday</w>\nor ange\nra g\nob vious</w>\nhy der\nchann els</w>\nman go</w>\nme yer</w>\nra ining</w>\nge tty</w>\npil gri\ncoordin ator</w>\nup load</w>\nninten do\ndon uts</w>\nsan chez</w>\napp arel</w>\nj r\nzz i</w>\n, @</w>\njeff erson</w>\naccessi ble</w>\ngreat ly</w>\ne id</w>\niniti al</w>\nbudd ha</w>\npar is\nma scot</w>\nâ¬ĩ ï¸ı</w>\nsch war\nsi ri\nsp inning</w>\nmortg age</w>\ne cho</w>\nend ange\nge dly</w>\nchlo e</w>\nenh ance</w>\nkar nat\nk ry\nexplo res</w>\nðŁĴ ģ\naf fair</w>\nic als</w>\nall a</w>\ndar t\ndolph ins</w>\ndiffe rences</w>\nsquir rel</w>\nau gh</w>\ndr ones</w>\nell en\nre store</w>\npa w\nun for\npi ke</w>\nhil ton</w>\ncolla b</w>\nconsu mers</w>\nco inci\nout comes</w>\npp p</w>\na q\ncoup on</w>\nli est</w>\nsi ms</w>\nk ho\nav es</w>\nspo on</w>\npu dding</w>\ncor byn</w>\nhat ers</w>\nex ams</w>\nsla ve</w>\n. !</w>\np sa</w>\napp les</w>\ntam il</w>\nse d\nco ke</w>\nzz o</w>\nlo sange\ncar bon\ncla ir</w>\n... )</w>\nk hu\ncra ig\nexplor ation</w>\nsanctu ary</w>\nsu e\nal way\ndemen tia</w>\nwon ders</w>\nsuper hero</w>\npakistan i</w>\nbrown s</w>\nbluet ooth</w>\nlo cker</w>\nmar c\nev entu\ndelux e</w>\nrodri guez</w>\nâĿ¤ âĿ¤</w>\nro bb\nðŁĴ ¦</w>\nlin ux</w>\nten s</w>\nintellig ent</w>\nse ed\nvo ter</w>\ns ler</w>\npe aks</w>\ninter n</w>\nteen age</w>\npeninsu la</w>\nhand ling</w>\nti e\ncou sins</w>\nwen dy</w>\nme e</w>\nà¹Ģ à¸\ndin o</w>\nðŁĴ °</w>\nðŁĺ ĥ\nze e</w>\ns bury</w>\ntrage dy</w>\nb k</w>\nbo re\nz in\nwar ns</w>\nidi ot</w>\ntou ching</w>\ncontin ental</w>\ntac os</w>\nsaf ari</w>\nwa shed</w>\npo dium</w>\nmorri son</w>\nfore sts</w>\nc bc\nal on\npartic ular</w>\nbe ads</w>\ninv ented</w>\nlo ch</w>\nli ghter</w>\nwhere ver</w>\ni de</w>\ndocu ments</w>\na we</w>\nk r</w>\nno where</w>\nmin er\nst it\nro x\ncontribu te</w>\nhar dy</w>\ncl an</w>\nob ject</w>\nca it\nðŁĴķ ðŁĴķ</w>\nhapp ier</w>\nvege tables</w>\nt art</w>\ng ag\nnom inee</w>\nheav ily</w>\npan ic</w>\nj d</w>\nthere sa</w>\nat m</w>\nu ph\ns fc</w>\nsu ri\ndrin k\nn al\nre vel\nk l</w>\navoc ado</w>\nnom ination</w>\nma donna</w>\nshar on</w>\nmalcol m</w>\ncontrol led</w>\nsh ers</w>\nrevi val</w>\nlegis lation</w>\nshoo ts</w>\nn in</w>\ncomm entary</w>\npro s</w>\nhuman rights</w>\nstr anger</w>\nmit ch</w>\npipel ine</w>\nleg ally</w>\nth u</w>\ngil bert</w>\ntol l</w>\ngran ted</w>\ngh s</w>\nir anian</w>\nrefre shing</w>\ndu k</w>\nab i</w>\npri me\njose ph\nmo sa\nstati stics</w>\nproduc tions</w>\nmer ry\npat el</w>\nsa x\nhuman itarian</w>\nstruc tures</w>\ne missions</w>\ntown s</w>\nfre el\nster ing</w>\nrat ings</w>\nalle gedly</w>\ncab in</w>\nst l\nw ade</w>\nfl yers</w>\ntri m</w>\npromis ing</w>\nz u</w>\nbal lot</w>\ncompar ison</w>\nfree ze</w>\nou ter</w>\ngreat ness</w>\nas sign\nsnow y</w>\nr ale\ntor ies</w>\nmed iter\nkno ck\nconsult ant</w>\ncincin nati</w>\nanaly st</w>\nsc oo\nje ws</w>\nappro xim\npu re\nportra its</w>\ncy rus</w>\nation al\nlo ans</w>\nacqu is\nel u\naccep table</w>\nuni on\nwater color</w>\nru st</w>\nbatt les</w>\nper fu\nseas onal</w>\nser ial</w>\nmind set</w>\nri ot</w>\nfel d</w>\nenni al</w>\nclo set</w>\npri est</w>\ntan ks</w>\nint l</w>\nscre w</w>\nbu m</w>\nab dul\nou x</w>\nexpla ined</w>\nric a</w>\nimag ing</w>\nlaw yers</w>\nbu ried</w>\nãĥ»ãĥ» ãĥ»</w>\near l</w>\nâĢ ķ</w>\nl ton</w>\nresto red</w>\nstri pes</w>\nfo ss\nde mands</w>\nste aling</w>\nalex is</w>\nmun d</w>\nak er\nur us</w>\nwar dro\nhu gs</w>\ngen re</w>\ne go</w>\nÙ Ħ\nparticip ated</w>\nbab es</w>\nban quet</w>\nti ous</w>\nhe mi\nds b</w>\nlo st\nmilwau kee</w>\njen ner</w>\nge m\nou tra\nlo ses</w>\nid i</w>\nre ps</w>\nðŁİ §</w>\nregu lation</w>\nfla w\nf ang\nvibr ant</w>\nram p</w>\nra ins</w>\nwell being</w>\nso viet</w>\nvie wers</w>\nde po\nlibr aries</w>\nbi go\nser y</w>\ng ill\nde struction</w>\nco z</w>\nc x</w>\nbri dal</w>\nal ds</w>\nplan ted</w>\namate ur</w>\nlu d\nche ering</w>\nshow cas\npro file\ni u\nver tical</w>\npack ers</w>\nwiz ard</w>\nski p</w>\ns light</w>\nbe au</w>\nair ways</w>\nmu ch\nre ra</w>\nðŁĮ Ĭ</w>\nab sor\npati o</w>\npack ages</w>\ns ells</w>\nment ally</w>\nðŁĺ ¢\nreyn olds</w>\nk are\ntri bun\nwal t</w>\nkn it</w>\nta ste\nsur rey</w>\nboun ce</w>\ncre ature</w>\nb are</w>\nbet ting</w>\nsu re\nmi ley</w>\nlaugh s</w>\nal ore</w>\ncy n\nt l\narti st\nann ah</w>\nwar mer</w>\ndynam ics</w>\nlunch time</w>\nmariti me</w>\nvulner able</w>\nðŁĴ ĥ</w>\nwol ver\ndur ham</w>\nconst antly</w>\nam in\nsi bl\n: @</w>\nbul let\nk ach\nangel o</w>\nwil der\ndoo m</w>\ndesk top</w>\nlaw suit</w>\nk ca</w>\nhen derson</w>\ninv iting</w>\nbet ty</w>\nta wards</w>\nra fa\nle aked</w>\nand i</w>\nge ms</w>\naf l</w>\nvel o\nmediter ran\npro be</w>\nto tten\nsteph anie</w>\nsn ation</w>\ncom be</w>\nq s</w>\nover come</w>\nassas sin\nra v\nfil ip\nwinni peg</w>\nsh il\ndetermin ed</w>\nk as</w>\nou tre\nregre t</w>\ngui des</w>\naa a\nðŁĺ Ī\nwi ves</w>\nmani fe\ner ly</w>\nsm y\nsh ima</w>\nx ing</w>\npix el\njac ob\nac commod\nto y\non o</w>\npo o</w>\nti er\nan swe\nðŁĴ ģ</w>\nro sa</w>\nle ase</w>\nbel ongs</w>\nth ar\neventu ally</w>\nnei ther</w>\ngo a</w>\nski ing</w>\nat ra</w>\nag h</w>\nbroad casting</w>\nf ury</w>\npy ram\nd ice</w>\nvolk swag\nwom ens</w>\nprovi der</w>\nbom bs</w>\nmiss ile</w>\nwhi p</w>\nd ick\nnor we\nback up</w>\nel der</w>\nmat ure</w>\nconcer ts</w>\ngi ous</w>\nsque e\ngood morning</w>\nbra ves</w>\n^ _\nau ssie</w>\nlun a</w>\nmal es</w>\nhe ck</w>\nfor tn\nrome o</w>\nsteel ers</w>\np n\npe er</w>\nre presents</w>\nÂ «</w>\nkat y</w>\nmigu el</w>\nrequ ire</w>\ncha ins</w>\nl ur\nimmedi ate</w>\nti mber\nâĸ¶ ï¸ı</w>\nadvoc acy</w>\nex port</w>\nan z\ntiff any</w>\nauth or\nðŁİ Ī</w>\ndu des</w>\nchil ly</w>\nhi d</w>\nhar m</w>\nbu g\nmon ster\nterri er</w>\ntu c\nstory telling</w>\nta k</w>\nin ti\nimmigr ants</w>\nb is</w>\nreach es</w>\ncom passion</w>\njohn ny\ncontribu tions</w>\nðŁĲ ¶\nmechan ical</w>\nimpre ssion</w>\nran ks</w>\nko be</w>\nmen ting</w>\nbloss om</w>\npab lo</w>\nbuil der</w>\nbom bing</w>\ntw el\nsul livan</w>\nom o\npe te\nde mi</w>\nku dos</w>\nw bb</w>\nt gif</w>\nmass ach\nneighb or</w>\nche fs</w>\neng ines</w>\npun e</w>\nga ined</w>\nphan tom</w>\ns days</w>\next end</w>\ngr an</w>\ncent ers</w>\njac qu\ndat asci\nsleep y</w>\nel vis</w>\nanswe red</w>\ns lot</w>\ncon y</w>\nflexi ble</w>\nti ally</w>\nle tics</w>\n% ,</w>\nandre ws</w>\nsi ble</w>\nmom ma</w>\nvin o</w>\ndo x</w>\ninvit ational</w>\ntwil ight</w>\nj ade</w>\nill ery</w>\njoh ns</w>\nf ou\np v\n-- -></w>\nbreak down</w>\nbilli on\nprin ter</w>\nmon d\nc bc</w>\nmag gie</w>\nlegi on</w>\ndu b\nkur t</w>\npo or\nparen ting</w>\nregi ons</w>\nbikin i</w>\nbe ware</w>\nsi onal</w>\nau burn</w>\nkid ding</w>\namp les</w>\nsp an</w>\ncon tempor\nc ic\nha bits</w>\nak o</w>\npre fe\nbud dies</w>\nit z\nem ily\nperson nel</w>\nmoun tain\nver sus</w>\nðŁĺ ¬</w>\near ning</w>\ns ink</w>\ndar i</w>\nu u</w>\ns win\ni ster</w>\nbru tal</w>\nn ac\nkat a</w>\nclo th</w>\nam and\nðŁĶ Ĺ</w>\nne o\nalu min\nweek ends</w>\nnebra ska</w>\nco des</w>\ndelay ed</w>\nbrun o</w>\npro ven</w>\nin c\ni ght\nfl an\nor o</w>\nlam bert</w>\nregu lat\nw f\nmassach use\nkardashi an</w>\nbern ard</w>\nfi esta</w>\nvolcan o</w>\ngrand pa</w>\nanc a</w>\nd re</w>\nst itu\nmean ing\nfo am</w>\nau ck\nat ed\nr l</w>\nhot el\npers ons</w>\ndy nasty</w>\nell or</w>\nma i</w>\nam ne\nsty ling</w>\navi er</w>\ne g</w>\nvege tarian</w>\n, âĢ¦</w>\nfoun ders</w>\nsta in</w>\ng d</w>\ncy cles</w>\nsky line</w>\ntrac tor</w>\nexi sts</w>\ntra l</w>\nkid ney</w>\nmar il\ninst ag\nse tte</w>\naddic t</w>\ntri angle</w>\nflash back\ncontroversi al</w>\nz on</w>\np ins</w>\ni as</w>\ntr ay</w>\ntown ship</w>\ndeleg ates</w>\nsp am</w>\nh ms</w>\ncr ane</w>\npeop les</w>\no lo\nfac tion</w>\nbut es</w>\non ica</w>\ndeleg ation</w>\nnew profile\neli er</w>\nmc a</w>\nw and\ng ely</w>\nlosange les</w>\nber ke\nti ve\ndis rup\nzz a</w>\ncas a</w>\njor dan\nford shire</w>\nga thered</w>\nic hi</w>\natten dees</w>\nà¸Ń à¸\npe ppers</w>\nco in\nbour bon</w>\nern ity</w>\nro tary</w>\nbehavi our</w>\njere my\nteam work</w>\ncompli ance</w>\ntre mend\nðŁĩ §\nbu hari</w>\ncam bo\nbu yers</w>\nha gen</w>\nbu ds</w>\nbay ern</w>\nmon te</w>\nsm ells</w>\nan za</w>\nath lon</w>\ndescri bed</w>\nwork force</w>\ngi ving\nap i</w>\ninvest ments</w>\nda il\nsel ena</w>\ndatab ase</w>\nth um\nmor tal</w>\nstu dent\nbu yer</w>\ndo ver</w>\ngar ten</w>\natt le\nloy alty</w>\ngen oci\nholo cau\ntheat ers</w>\nru ling</w>\nven us</w>\npat ent</w>\nch un\nab by</w>\nawa ke</w>\nmass acre</w>\nbang alore</w>\nbreak ing\nsimm ons</w>\nju sti\nhal e</w>\ned chat</w>\ngg les</w>\nhaw k\nmar king</w>\nhead lines</w>\nstro m</w>\nco ve</w>\nbreath taking</w>\nmed als</w>\nhair cut</w>\nchrist ine</w>\ntele graph</w>\ngujar at</w>\nju ra\ncan e</w>\nsho re\npropag anda</w>\nmu eller</w>\n.... ....</w>\nsa vi\nstom ach</w>\nthro ws</w>\nta b</w>\nwar m\nj ong</w>\nreno wned</w>\nhi r</w>\nra is\nmush rooms</w>\nguaran teed</w>\nbo a</w>\nm j</w>\nrevolu tionary</w>\ncerti fication</w>\nbru ins</w>\njo in\nw es</w>\npas sport</w>\nc g</w>\nsex u\ncap able</w>\nw v</w>\nton es</w>\njac kets</w>\nac compan\nspin ach</w>\nfore ver\nbla ir</w>\nwat ts</w>\ng l</w>\ncou ples</w>\nprairi e</w>\nnewprofile pic</w>\nlogi stics</w>\nmassachuse tts</w>\njagu ar</w>\no id</w>\nwe al\nunder water</w>\nmo z\ny i</w>\nma ths</w>\nmyan mar</w>\npre ps</w>\nsuffe red</w>\ntr ace</w>\nwal i</w>\nah hh</w>\nbor g</w>\nst itch</w>\ncu lin\nreal ise</w>\ninfe ction</w>\ndiscrimin ation</w>\nsh ame\nan kle</w>\nhu mid\ny t</w>\nbrac ket</w>\ntru ck\ntri u\nea ster\ncommun ity\npost card</w>\ninvol ving</w>\nty ler\ncar amel</w>\nover view</w>\nex amples</w>\nintegr ity</w>\nbase ment</w>\ninstru ments</w>\nani um</w>\nat us</w>\ngh er</w>\nlaun dry</w>\nachi eve\ngen eva</w>\npr icing</w>\nhyder abad</w>\nbeli ef</w>\nme ta\nj aw\naccoun ting</w>\nlead er\ncristi ano</w>\ncou ture</w>\ncy p\nvis ed</w>\n, ,,</w>\nk nu\nh ick\nbreak er</w>\nbr am\nra b\nmo or\nham as</w>\ngradu ating</w>\npupp ies</w>\nak h\nta h\nach es</w>\nri e\nop ini\ng ta\nre ign</w>\ntra gic</w>\nre ver\np ill\npine apple</w>\ntou ches</w>\nda re\nle ys</w>\nil o</w>\ninter iors</w>\nsc outs</w>\nbar t\nen zie</w>\ndon o\nbro ck\nchristi ans</w>\nense mble</w>\nÂ ·</w>\ncine mas</w>\nnew port</w>\nair line</w>\nwin ston</w>\nle igh\ncont ents</w>\npre scri\nur ge</w>\ntr out</w>\nfic ally</w>\nil ia</w>\nsub si\nare r</w>\nâļ¾ ï¸ı</w>\nw ounded</w>\nðŁĻ Ĥ</w>\npe pper\nðŁĴ ŀ\nfit ted</w>\naf f</w>\nre sur\nthursday thoughts</w>\nz ero\narchae ology</w>\ndi v</w>\nje e</w>\ni on\nawa iting</w>\nco zy</w>\nbeauti es</w>\nbal d</w>\ndat a\ngri zz\nstal k</w>\nkin ds</w>\ncle ared</w>\njess ic\nregu lar\nali ens</w>\nplac e\nbo s\nbi zar\nthisi s\nðŁĴ Ģ\ntotten ham</w>\nma fia</w>\ns lam\nari ana</w>\ncar roll</w>\nback pack</w>\ncare y</w>\nuni v</w>\nr g</w>\npe p</w>\ndig it\ntatt oos</w>\nag on</w>\nvolunte ering</w>\ndiffe ren\nconsu mption</w>\nka thr\nhead phones</w>\nt shirt</w>\no b</w>\nele ment</w>\nre tail\nsh ru\nal gori\ncontain er</w>\nconsci ous</w>\nfi l</w>\ncom ing\nra sh\nu rope</w>\ndef ine</w>\ngi or\nfemini st</w>\nflow ing</w>\nrout es</w>\ngl aci\nfer t\nsomer set</w>\nant es</w>\ntwee ps</w>\n$ $</w>\nh our\nendange red</w>\nyear sof\nro h\npo pped</w>\nbac king</w>\nba sil</w>\nbra ke</w>\nmon aco</w>\nlgbt q</w>\npra gue</w>\nut ility</w>\ncas si\ngate way</w>\nhaun ted</w>\nsch ul\nðŁİ µ</w>\nshou ld\nwalking dead</w>\ncomple ting</w>\ndann y\nmontgom ery</w>\npengu in</w>\nss i</w>\nmer chandi\nðŁĳ ĳ\nchur ch\nh ates</w>\ncap tain\nbrea thing</w>\nce t</w>\nfair ly</w>\napproach es</w>\ncompan ion</w>\nsurpri sing</w>\nkany e</w>\npe y\nhin di</w>\ntarge ted</w>\nlor ds</w>\nde ut\ndi gging</w>\nger man\nru t\nener gy\nclose st</w>\ny un\napo logi\nà¸ ±</w>\ns ack</w>\nru p</w>\ndd y\nport al</w>\nd ough</w>\nb ats</w>\nðŁĵ °</w>\nat ur\ngraph er</w>\npi res</w>\nmo tors</w>\nðŁĮ ¹\nj c\ndan g</w>\ntu k</w>\nclu e</w>\nus c</w>\npag e\nd less</w>\nbro ws</w>\nju s</w>\nad ing</w>\nre marks</w>\noo m</w>\ncar dio\nste fan\narm strong</w>\nâĢ¢ âĢ¢\nni est</w>\nbelgi an</w>\nbi op\nso y</w>\nlo f\ní ĥ\nq t</w>\nflashback friday</w>\nce e</w>\nģ à¸\nwre ck</w>\nmar ines</w>\namend ment</w>\nwardro be</w>\nvo y</w>\nbur ned</w>\nguit ars</w>\nra inf\nli fel\nssi l</w>\noun ce</w>\nexter nal</w>\nc key\nme sh</w>\nshe ikh</w>\ninv itation</w>\nsugge sti\npop corn</w>\nphenomen al</w>\nan onymous</w>\ntun a</w>\nchic ago\no val</w>\ndel y</w>\nloc als</w>\n( &</w>\npro f\nno vel\nfin der</w>\nspar ks</w>\nla ven\nin fu\nnic ks</w>\nqu ant\nra e</w>\nexe c</w>\ndist ingui\nst ances</w>\nmu tual</w>\nsh al\nunve ils</w>\nedmon ton</w>\nzan ia</w>\na dio</w>\nvie wer</w>\nbrad ford</w>\naudit orium</w>\nqu is\nre act</w>\nhtt p</w>\nl ero\nchee ky</w>\nimpac ts</w>\nta k\ned t</w>\ndesper ate</w>\nt ay</w>\nì Ħ\nsett le</w>\nbar gain</w>\nresu me</w>\nun ite\nthro wn</w>\nke st</w>\nse ys</w>\nmar ching</w>\nam it\ndecl ine</w>\nsch ar\nme tr\nstan ford</w>\nlin ke\nber ra</w>\ndol ls</w>\nrug by\njam i\nb or</w>\nroad trip</w>\ndino saur</w>\nmi k\nsun der\nre m\nb k\nover seas</w>\nnau ghty</w>\nimple mentation</w>\niam srk</w>\nlun cheon</w>\nfir ing</w>\nmi ami\npere z</w>\nthe e</w>\nz on\ngi fted</w>\ncon version</w>\nceram ic</w>\n¡ ï¸ı\npe dro</w>\nì Ĩ\nv ick\n! @</w>\nhe ed</w>\nsi d</w>\nb w</w>\ndocu ment</w>\npl un\ngr ants</w>\nfant asy\npredic tions</w>\nvali d</w>\ncar ved</w>\ngradu ated</w>\nðŁĳį ðŁı»</w>\nnation ally</w>\nch y\naf l\nre sso</w>\nblan k</w>\nri vals</w>\nj ig\ne ties</w>\nom ics</w>\nune mp\nb ound\nsk o\ninspec tion</w>\npar al\nhigh s</w>\ncri sp</w>\nb ans</w>\nob a</w>\n[ @</w>\nco spla\ncostu mes</w>\nrec all</w>\nmou th\nni gel</w>\nb ts\nter a</w>\nko v</w>\ndo cs</w>\nwest minster</w>\ndic t</w>\ngra vity</w>\nkar i</w>\nro gue</w>\nt ted</w>\nwar k</w>\nida ho</w>\nw end\naw i</w>\nqueen sland</w>\nproce sses</w>\ncli ffe</w>\nm ick\ncom pens\nop ol\nthe y\ncl ari\nwiki pedia</w>\nsalman khan</w>\nhaz ard</w>\npre ston</w>\nswee test</w>\npd f</w>\nche es\ntr ilo\nsouth africa</w>\nbur nt</w>\n( $</w>\ncon tain</w>\nt p</w>\nsub mitted</w>\nsound cloud</w>\nat u\nre z</w>\nword press</w>\ncorru pt</w>\nn f\nma ker\ní ķ\npar as\nadv ent</w>\nri al</w>\nca fe\nfo ssil</w>\n!!!! !!!</w>\nco ws</w>\nc j</w>\nsp ur\ninstitu tions</w>\nland mark</w>\nent it\nre ut\nh is\nalz heim\nwe mb\nregg ae</w>\nmo squ\nst at</w>\nidenti fied</w>\ndeal er</w>\nre am</w>\nre land</w>\nten sion</w>\nðŁĩ ©\nwra pping</w>\ndeep er</w>\nfr at\nred dit</w>\nar is</w>\nmoroc co</w>\n.. \"</w>\nb low\nma pping</w>\npri orities</w>\ning a</w>\nswa p</w>\nre wards</w>\nconspir acy</w>\ncreati ve\nc j\ncongre ssional</w>\nvau lt</w>\nple x</w>\nsophom ore</w>\nshad ow\nele ss\nðŁĺ ħ\ndar ts</w>\naldu b</w>\nanno ying</w>\npro ps</w>\nn as</w>\nalumin um</w>\nh bo</w>\noffen se</w>\nj ill</w>\noni ons</w>\nla ur\nta e\nhar dest</w>\nsh ro\nga ining</w>\nmeas ure\ned tech</w>\ncyp rus</w>\ntar a</w>\nang eli\ncar lo</w>\ngo on</w>\nall i</w>\nim plic\nju pit\nresil ience</w>\nha il\nbal anced</w>\n) ...</w>\njoy ce</w>\ngr a</w>\nth eli\ndefin ed</w>\nshi pped</w>\nmain ly</w>\nmin a</w>\nl m</w>\nsac ri\no ber\np im\nclaim ing</w>\nent ers</w>\nco rey</w>\nbo k</w>\ncri ed</w>\ncool ing</w>\ndani elle</w>\npharmac y</w>\nthor ough\nca ke\nk lo\noutre ach</w>\nz ens</w>\ndigital marketing</w>\nval ent</w>\nsn p</w>\nher b</w>\nmr w</w>\ncaf Ã©</w>\ncap tures</w>\nno tre</w>\ntriu mph</w>\npan cakes</w>\ncu mber\nspi ke</w>\nd ation</w>\nbi gg\nsp er</w>\ncrit ical\nam al\ntoo th\nfoun ding</w>\na stro</w>\n' #</w>\nquan tum</w>\nth ames</w>\nun c</w>\npri de\nair bus</w>\nkno cked</w>\nun defeated</w>\nmediterran ean</w>\ncal cu\nclo wn</w>\nsens or</w>\nham mer\nfor give</w>\ncu shi\nber ry\nmaje stic</w>\nelec t</w>\npolit an</w>\ng ta</w>\nk ari\nbur ke</w>\nsea hawks</w>\nvolkswag en</w>\nre i\nlandsc apes</w>\ncas u\ngrand father</w>\nlist ened</w>\n/ /\nstar trek</w>\nrainf all</w>\nfur ry</w>\nvi er\nstar k</w>\nrif le</w>\nff a</w>\nleg es</w>\nhillary clinton</w>\nmin us</w>\ncorrec tly</w>\narchitec tural</w>\npre ce\nup side</w>\nbox er</w>\nðŁĻĮ ðŁı¼</w>\nis ai\nde t</w>\npro vo\ntis sue</w>\nspoo ky</w>\nve led</w>\nre con\nprospec ts</w>\nque bec</w>\nâļ «\nig no\nanat omy</w>\nshap es</w>\nw p\np interest</w>\nhor e</w>\nan es</w>\npick up</w>\nti p\npra desh</w>\nhu gh</w>\nco e</w>\npo k\ngram my</w>\nwell ington</w>\nsti gate</w>\nri gh\nlea p</w>\nking ston</w>\nscen ic</w>\ngo sh</w>\nv ani\nau g\ns ary</w>\nzi er</w>\nbure au</w>\nlin son</w>\ncon te\nfra gr\nall an</w>\ng aw\nlan a</w>\ncolli sion</w>\nsurve ill\nren ais\nar range\ns ali\ndo in</w>\nbr ance</w>\nbren dan</w>\nour se</w>\nin coming</w>\nsuspen sion</w>\nà ´\nl la</w>\neduc ators</w>\nin tri\nda e</w>\nbio graphy</w>\nbul gar\nvilla in</w>\ngo thic</w>\nrw anda</w>\ne w</w>\nmay or\nmeet up</w>\ndemocr at</w>\nmor gan\nsu dden</w>\nte sco</w>\ncar rot</w>\nbom ber</w>\nmck in\nre ne\nfun day</w>\nagricul tural</w>\nhaha h</w>\nshow time</w>\nform ing</w>\ncol a</w>\nscor pi\nquo te\npo ppy</w>\ns life</w>\nd az\ntu b</w>\nne n</w>\nmo t</w>\nðŁĺ »\ns ore</w>\nelder ly</w>\no ve</w>\nskin ny</w>\num i</w>\nanc o</w>\nman ship</w>\nwe re\ng v\nk ah</w>\nfol ding</w>\nne at</w>\nsamanth a</w>\ndan ish</w>\nuk rain\nhumid ity</w>\nnu tri\njak arta</w>\ncand les</w>\noooo oooo\nat ile</w>\nstreng th\ni bra\nbap ti\ncharle ston</w>\nfr ames</w>\ngirl s\nclear ing</w>\nglu ten\n# #</w>\nsuper natural</w>\nju bi\nph one\nhe in\ndr un\nle ak</w>\ninvest or</w>\ny er\ndom ain</w>\nball room</w>\nmi sh\napp li\noff shore</w>\nbla ze</w>\ndor o\nâĺķ ï¸ı</w>\nwin ery</w>\nshar if</w>\nad ore</w>\nn ir\nsaf er</w>\nsi gh</w>\nas cri\nstrong ly</w>\ntrac y</w>\nck er\nol l</w>\nfaith ful</w>\ney ed</w>\ndeli ghtful</w>\nvis m</w>\nkarnat aka</w>\ntit an</w>\nwh ar\njer seys</w>\nre fur\nheav en\ngri p</w>\npan ama</w>\npre li\nglu ten</w>\no dd\ncont ent\npon ti\ntion ing</w>\ne commerce</w>\nfeder ation</w>\nflaw less</w>\nge ar\nti res</w>\nby r\npol ice\ncu ban</w>\ntri butes</w>\ntic ul\nchur ches</w>\nnur sery</w>\ndi aries</w>\nmuse ums</w>\nsnapp ed</w>\ni van\nwi ght</w>\ntouri sts</w>\nramad an</w>\nt rent</w>\nprophe t</w>\nwon dered</w>\nfocu sing</w>\nhi d\nic ons</w>\ni q\nambul ance</w>\npi st\nfun niest</w>\ntime less</w>\nsr ilan\nbu ys</w>\nki ds\ncolour ful</w>\na shi\nch ir\nmu m\nðŁĵ ļ</w>\nlet ter\nx en\nreut ers</w>\npre serve</w>\nin ting</w>\nste p\nfu ji\nuni ver\ni u</w>\nshow down</w>\npo ems</w>\nsurveill ance</w>\nsuspec ted</w>\nta e</w>\nsol ving</w>\ntom b</w>\nmother sday</w>\ncar pen\nrecru it</w>\npil ots</w>\nbro c\nmix ing</w>\nfri days</w>\nty r\nrepresent atives</w>\ntra pped</w>\nabdu l</w>\nfree style</w>\nclu ster</w>\nâļ łï¸ı</w>\nk d</w>\nsk ill\npit t</w>\nex o\ncommer ci\nmuse um\nloc ally</w>\ng ina</w>\nno bel</w>\nimmun e</w>\nfr ac\ncap su\nmain ed\nattemp ts</w>\nbull dog</w>\nbe spoke</w>\nsing ers</w>\nsp elling</w>\nseg ment</w>\nnat ures</w>\ntic k</w>\nlip stick</w>\nclean er</w>\ngett able</w>\npreci sion</w>\nâĢ¼ ï¸ı\nth ood</w>\nre ef</w>\nno pe</w>\nbill y\ndi gi\nmu si\nri val</w>\nfigu red</w>\ntal ity</w>\nsun ny\nber k\naw ww</w>\nawa its</w>\nun real</w>\nco pen\nasy lum</w>\nex otic</w>\nbu en\nmo ck\nen able</w>\narch y</w>\nfr a</w>\npla stic\nal mond</w>\namp li\ndispla ys</w>\nabbo tt</w>\ns me</w>\nx p</w>\nðŁĻ ĥ</w>\ngraph ic\ni ved</w>\nmar a</w>\ncau tion</w>\nlea ks</w>\nen berg</w>\nul u</w>\nunic orn</w>\ncann on</w>\nappren tic\nðŁĺĺ ðŁĺĺ\nb ball</w>\nwil low</w>\nat ics</w>\nam as</w>\nmanufac turer</w>\ncampaig ns</w>\nport ers</w>\nflo ors</w>\nl su</w>\nty pe\nke j\nhonor ary</w>\nit im\nto le\nmin ecraft</w>\nd x</w>\nma sh</w>\nri o\nconsequ ences</w>\nron ald</w>\ngo ssi\nsuffol k</w>\nmu se</w>\nr bi</w>\nlive music</w>\ni van</w>\nðŁİ ¤</w>\nle u\npatri ot</w>\nman it\nlan ca\nhome decor</w>\nde ar\nsig ma</w>\nti de\nstr ings</w>\nv ita</w>\nsequ el</w>\ntry na</w>\ninve stigate</w>\nbor is</w>\nve gan\nbarri er</w>\nmind fulness</w>\nweb b</w>\nhu stle</w>\nin da</w>\ntan zania</w>\nstr ay</w>\ntex as\nc ag\ndiagno sis</w>\nwom an\ng w</w>\nob session</w>\nl ative</w>\nnu fc</w>\nfl ynn</w>\nmoment um</w>\nsof a</w>\nwal d</w>\nvege table</w>\ntu cker</w>\nsupp er</w>\nse ab\nar ro\nse ag\nven ting</w>\ncounc ill\nsp lat\ncal cul\n.. #</w>\ncom fy</w>\nodi sha</w>\nsto pp\nwar fare</w>\nca es\nà ¨\nco y</w>\nprice less</w>\nin sec\nðŁĺ Ľ</w>\ncontro ls</w>\nempower ment</w>\ndatasci ence</w>\nper pe\ngen ic</w>\ne res</w>\ntru deau</w>\nman o\nsla very</w>\nexpand ing</w>\nma he\nfa iling</w>\ns aga</w>\nphotograph s</w>\ncre st</w>\nre on</w>\nsurf ing</w>\nhi e</w>\nðŁį Ģ</w>\nja e</w>\nfel lows</w>\nsouth ampton</w>\nsol om\nce ster\ntab ility</w>\nhor n\nse ct</w>\nhe e</w>\ncole man</w>\nat las</w>\nexplo rer</w>\nconsul tation</w>\ncopy right</w>\norgani zing</w>\nden ied</w>\nmon keys</w>\nnoo dles</w>\nbr is</w>\nfl or\ndou gh\nbon ds</w>\nsho cked</w>\neco system</w>\ncare fully</w>\nw m</w>\napart ments</w>\ncur ve</w>\nsan diego</w>\nmust ard</w>\ncomm en\ncere mon\ne ch\nru th\nðŁĻĮ ðŁı»</w>\nhawa i\nfil med</w>\nte ar\nas ingly</w>\nca ir\nwat t</w>\ninstru ment</w>\nou tta</w>\nye ol</w>\nriver side</w>\në °\n. :</w>\nnor wich</w>\nalo g</w>\nmigr ants</w>\nnew man</w>\nri de\nspr ink\ntarge ting</w>\nbeli eve\ntor ch</w>\nreflec ts</w>\nper mission</w>\nff man</w>\nene mies</w>\nbas ics</w>\nse ized</w>\nsun days</w>\nle i\nhass an</w>\nen do</w>\nh c\nst ad\nle ments</w>\nkk kk\nnan o\nshar k\nman a</w>\non ic\ntreat ments</w>\near ly\ncollabor ative</w>\nshu ttle</w>\nbran ches</w>\nmis ses</w>\nmained cm</w>\nap ers</w>\nky le\ncarri e</w>\nleis ure</w>\nsh et\nbir ding</w>\nadv ances</w>\nðŁĵ Ŀ</w>\npopu lar\ndi ane</w>\na be\nre war\nneigh bour\nk pop</w>\nremem brance</w>\nplay ground</w>\nru b\nkrish na</w>\ne bola</w>\ninqu iry</w>\nep a</w>\nlu min\norgan isation</w>\nabra ham</w>\nnorm ally</w>\npre ten\njan et</w>\nw t\nðŁĴ İ</w>\nencoura ging</w>\na stic</w>\nbu mp</w>\nsyd ney\ns z</w>\nss ss</w>\ngar rett</w>\nðŁĵ »</w>\nconsul ting</w>\nroman ia</w>\nspo tting</w>\nchanc ellor</w>\nar ma\npresti gious</w>\nðĿ Ĳ\nt ad\ncry st\ncompe tit\nrati o</w>\ncat aly\nbro w</w>\nj ur\nvi king</w>\ncommu te</w>\ny day</w>\nla yers</w>\ndu mb\nesc al\ngenoci de</w>\nf ill\ngu pta</w>\nste pping</w>\nse i</w>\nfo to\nwild cats</w>\ncol i</w>\nprojec t\near nings</w>\nst r</w>\nge ons</w>\ncomple tion</w>\nb m</w>\ndecor ated</w>\ncraw ford</w>\naf ghan</w>\nsc are</w>\nvisi bility</w>\nhi b\ndirec tion\nstro ll</w>\nchrist ina</w>\nalter nate</w>\ncl are</w>\nsty list</w>\nbe hold</w>\ns ance</w>\nleop ard</w>\nacqui red</w>\nnarr ative</w>\nash i</w>\nthe a\n?? ??\npe as</w>\nat ch</w>\nsli des</w>\nle en</w>\nrenew able</w>\neng lish\nqu ir\nco aster</w>\nr x</w>\nfo ols</w>\nmatch day</w>\nmis m</w>\namaz ing\nz ig\nke ting</w>\nwon t</w>\nto wel</w>\ndi ab\nsta ke\nn m\nmel t</w>\ne than</w>\ngra pe</w>\npolit ician</w>\nsm en</w>\ní ĺ\nre o\nwedd ings</w>\ncat cher</w>\nor acle</w>\nme mo\nðŁĮ ´</w>\nec k</w>\nrob bie</w>\nnorwe gian</w>\noper ator</w>\nam or</w>\nse wing</w>\nju l</w>\nx ie</w>\nu v</w>\nfif ty</w>\nme ga\ntatt oo\nliber als</w>\nu pri\ntraffic king</w>\nrichard son</w>\nsu v</w>\nki p</w>\nmess y</w>\ntremend ous</w>\ngl ou\ncour tney</w>\nla d\nstere o\nmy ers</w>\ni dio\n^_ ^</w>\nman ning</w>\ndy e</w>\nw d\nthr one</w>\njun k</w>\nas u</w>\nprovin cial</w>\nk ook</w>\nwr c</w>\nfine art</w>\nhamp shire</w>\nrenais sance</w>\nb red</w>\nfall out</w>\ns j</w>\nsn l</w>\nal am</w>\ntor ture</w>\nfy i</w>\nsh ines</w>\npa w</w>\nch ar</w>\nhen ry\nc row</w>\naci ous</w>\ndi an\npa ige</w>\nba re\nstock holm</w>\nscen ery</w>\nðŁĩ ·\njef frey</w>\npu sh\ndecor ation</w>\nne d\ncu te\nbrig ade</w>\nlaven der</w>\ninv ites</w>\ne sports</w>\nvo ir</w>\ndri ed</w>\ntran spl\nsur geon</w>\nno vels</w>\npul ls</w>\nson y\nlun ar</w>\nman e</w>\ni vy</w>\nfru str\ndor set</w>\nsa i\ntor res</w>\nssi on\nshut down</w>\nsuggesti ons</w>\nwrit ing\ne o\nbattle field</w>\nu ga</w>\nðŁĲ ¾\nvac u\nspl ac\ng it\nu g</w>\nhigh land</w>\n% )</w>\nmer maid</w>\nsacram ento</w>\nta ils</w>\np w</w>\nka h\nt ell\nenh anced</w>\nì ķ\nauck land</w>\ncru el\nðŁ¤ ©</w>\nau dre\nsail or</w>\ngram mar</w>\ng love</w>\nde on</w>\ninfl am\nfresh ly</w>\nk ell\nzi p</w>\nchristi e</w>\nmil d</w>\ndi xon</w>\ninstru ctor</w>\ng ence</w>\nãħ ł\nsub jec\nconstitu tional</w>\ncrow ds</w>\nin visible</w>\nru ins</w>\nda k</w>\nsi p</w>\npla que</w>\np ouring</w>\ncomple x\nz ine</w>\nste ad\nf let\ntrans mission</w>\nlo way</w>\nar un\nincre asingly</w>\nau d\ntransp aren\ncro wned</w>\nsc oun\nblizz ard</w>\nlux u\nfi ers</w>\nachieve ments</w>\nhun ters</w>\nrock ed</w>\nbas in</w>\nvio let</w>\npro ves</w>\nachiev ing</w>\npro sper\nse ga</w>\nflo at</w>\nvi an</w>\nxi v</w>\npol ic\ntur a</w>\napproxim ately</w>\nwander lust</w>\nkeep ers</w>\ngeta way</w>\nco d\npol is</w>\nbr yan\ncol ts</w>\ntal ents</w>\nyo gur\ngluten free</w>\nwri st</w>\ngr y\ncze ch</w>\nðŁİ Ī\nev ille</w>\nðŁı Ī\nto x</w>\ndani els</w>\nam er</w>\nbi ds</w>\nweare one\nme tab\ng t\nboy z</w>\npd x</w>\npos session</w>\npu shed</w>\nshr ine</w>\nreali stic</w>\ntri gger</w>\nna vi\nru mors</w>\nn af\njen kins</w>\ntr un\ncomm uni\nÃ Ĺ</w>\ngam ers</w>\narm or</w>\nmoham med</w>\nbal cony</w>\ny ah\nstron gest</w>\nrhy thm</w>\nunfor gettable</w>\nk p\nho bb\ncusto dy</w>\ngreg or</w>\nr ita</w>\naes thetic</w>\nil ation</w>\nsponsor ing</w>\nn ay</w>\nkid napp\nsh s</w>\nra jas\nme g</w>\nsignific antly</w>\nbutt ons</w>\nla c</w>\nver sions</w>\nessenti als</w>\nopini ons</w>\nk ro\nd printing</w>\nwi dely</w>\nd k</w>\nur an</w>\ny al\nreque sted</w>\nc n</w>\ncur ric\nplu m</w>\ngr un\nv m\ndev on\nm yo\nrel ation</w>\njuvent us</w>\nrou ge</w>\nmin ority</w>\nmin es</w>\njupit er</w>\nn ine\noxy gen</w>\nfran kie</w>\nune sco</w>\nfab ric\ndisgu sting</w>\nsal man</w>\ndete ction</w>\nlan ka</w>\nd ac\nðŁĩ« ðŁĩ·</w>\nargu ment</w>\nshel ves</w>\ncel tics</w>\nrober to</w>\npi gs</w>\nhe dge\nfau l\npow ering</w>\nbutter flies</w>\nfi r</w>\nre make</w>\natt i</w>\ncom o</w>\nemp ha\nkend all</w>\npoke mon\nse ating</w>\nd ans</w>\nbald win</w>\nðŁĳ »</w>\nlesli e</w>\none direction</w>\nti mber</w>\nim an</w>\nfon t</w>\ne der</w>\ndi on</w>\nste ph</w>\nfor mat\ngre gory</w>\npro p</w>\nhe x\nru in</w>\nsor y</w>\ninf er\nn aw\nbar ak</w>\nsd gs</w>\nkar ao\nlu sh</w>\nv ander\nend ent</w>\ng is\na fro\nsoc cer\nay an</w>\nt uni\nlun g</w>\nda yof\nalex a</w>\nmar ath\naddic ted</w>\nag ile</w>\nhy gi\nlight weight</w>\nì §\nmand ela</w>\njo ey\nanc y\nhu m</w>\nbi r</w>\nmemor ial\njim in</w>\nging er\nv ak\njav ascri\ncro ps</w>\norig ins</w>\nd ari\npi per</w>\nim port</w>\naggre ssive</w>\npredic tion</w>\nre pairs</w>\ncr acker</w>\nvoy age</w>\nni ke\nmu mmy</w>\nlinke din</w>\ncountry side</w>\nbor der\ngla ss\nper t</w>\ns als</w>\nsho e\nautograph ed</w>\nwal nut</w>\ncolle gi\nsal ary</w>\npa iring</w>\nðŁĮ ¸\ncath ol\nswee the\ndefe ats</w>\nstreng then</w>\nroof top</w>\nimpro vements</w>\nbarri ers</w>\nur u\nt ally</w>\nru led</w>\nðŁĨ ļ</w>\nnai ja</w>\nemo ji</w>\nper cent\ngi o\npro bs</w>\non ce\nadm its</w>\npa ths</w>\nli ar</w>\nday tona</w>\npe ters</w>\ncal i</w>\ncal li\nmu g\no sa\nap h\nab y\nhy de</w>\neth nic</w>\npla ins</w>\nol f</w>\nhaha hahaha</w>\nholi c</w>\n?! ?!</w>\nsu bli\nbl acks</w>\nmo t\ngh ton</w>\nlo vin</w>\nb rent</w>\nbar u</w>\nl ati\nde w</w>\nate au</w>\nq a</w>\npain ful</w>\nbu sters</w>\nst atic</w>\nðŁĩ¨ðŁĩ ¦</w>\nnote book</w>\nout fits</w>\nsi es</w>\nr f</w>\nfloo ds</w>\nÑ Ģ\nthro at</w>\nsu ici\nro vers</w>\nbeng al</w>\npre pares</w>\nblo g\nmini ature</w>\nØ ¨\nam phi\ncom b</w>\nr sp\nin timate</w>\ngreen e</w>\nÌ ĩ</w>\nal tar</w>\nsurg ical</w>\nves sel</w>\n... ?</w>\ngav in</w>\ng ator</w>\nthreat ened</w>\nz ar</w>\nrob bery</w>\ndi er</w>\npromo ted</w>\ny g</w>\nx s</w>\nsu bs</w>\ninter viewing</w>\nthreat ening</w>\ndo zen</w>\nme ado\nwater fall</w>\nnintendo switch</w>\ncal um</w>\nmini sters</w>\ndro p\nunivers ities</w>\nwar ned</w>\ntac tics</w>\nðŁĩ ²\nrefu se</w>\nad ju\nv ast</w>\nðŁĺ ´</w>\nmc fc</w>\nlib ya</w>\nno filter</w>\ndistribu ted</w>\nre ser\nron nie</w>\nde co</w>\njavascri pt</w>\nmon k</w>\nintere sts</w>\nfle x\nmar tha</w>\nsti es</w>\noo d\nðŁ¤£ ðŁ¤£\ne un\nb ali\ng omez</w>\nsti mul\nmoder ate</w>\nd ity</w>\nir is</w>\nstra w</w>\nconsist ent</w>\ndirec tions</w>\nadop t\nsal sa</w>\ncro o\nreco vered</w>\nblack friday</w>\nlan caster</w>\naccep t\nweareone exo</w>\nbuil ds</w>\nfree man</w>\nair plane</w>\nditi on\nbel ong\njam ie\npit ching</w>\nli f\nom in\ncri spy</w>\npre pping</w>\nve g</w>\nchan g</w>\naccompli shed</w>\ngraci as</w>\ndolph in</w>\nelec tor\nculin ary</w>\nsuper bowl</w>\nwal a</w>\npur suit</w>\nblack berry</w>\nbe an\ncardin al</w>\npro ved</w>\nimmigr ant</w>\nstric tly</w>\nholocau st</w>\npass age</w>\nha us</w>\ncou p</w>\npur se</w>\nhar ass\n< <</w>\nle ed\nado be</w>\nst ad</w>\nlegis lat\npar ked</w>\npri yan\nsil va</w>\nkri st\ns the\nfun ky</w>\nig a</w>\nsett lement</w>\nph s</w>\nt mrw</w>\nstre ssed</w>\nhun t\nho ckey\ntreas ures</w>\ncham bers</w>\nol u\nhu t</w>\nmar ley</w>\ntex ture</w>\nwilder ness</w>\nmm ing</w>\npoten tially</w>\nom aha</w>\nju dy</w>\nto es</w>\nspo iler</w>\ndistingui shed</w>\nfeli x</w>\nah u</w>\nrecommend ations</w>\nzom bies</w>\nhit ler</w>\ntri ple\ncolla pse</w>\nmotiv ated</w>\nulti mat\ngg ling</w>\nso y\nci gar</w>\nfo ren\nvine yard</w>\ngl itter</w>\nfin dings</w>\ncolon ial</w>\nhun ter\neri k</w>\nden s</w>\nbeet le</w>\nlot te\nsub tle</w>\ns matter</w>\ntru sted</w>\nexperim ental</w>\nnam ents</w>\nðŁĺ Ĩ\nregi on\nacquis ition</w>\nbre eding</w>\nquarter back</w>\nam reading</w>\noo td</w>\nru de</w>\niniti atives</w>\nst out</w>\nhy ung</w>\nout come</w>\nal fred</w>\nmic s</w>\nexper tise</w>\nbacter ia</w>\npengu ins</w>\njump er</w>\nvalen cia</w>\nbar k</w>\ning day</w>\nsell ers</w>\ncontrac ts</w>\nhou ston\ncommissi oned</w>\nadap tation</w>\nswan sea</w>\nsanti ago</w>\ncommon wealth</w>\nju dging</w>\nsub mission</w>\nsco rer</w>\ntom my\nÃ± o</w>\nex quis\nfil ing</w>\nexplan ation</w>\nalli son</w>\nwemb ley</w>\nri dge\nchev y</w>\nsan tos</w>\nown ership</w>\ncogn itive</w>\nfavour ites</w>\nsh ed\nphil anthro\ndele ted</w>\ngo dd\ns nor\ngui delines</w>\nff ing</w>\nje ep\ncli ps</w>\nsw amp</w>\nan or</w>\nguil d</w>\nbol ton</w>\nspring field</w>\nmunici pal</w>\ngoal keeper</w>\nye on</w>\nðŁĺįðŁĺį ðŁĺįðŁĺį\nãħĭ ãħĭ\nwater front</w>\ngra ve\ncontempor ary\nar ity</w>\nÃŃ a</w>\nsle eps</w>\nsy rup</w>\nal am\npi re\nco yo\nmoto gp</w>\nty son</w>\nkej ri\ncir cul\nsing ly</w>\ncr unch</w>\ncomplic ated</w>\nnostal gia</w>\nk op\nmo ve\nk ale</w>\nmac ro</w>\nmid west</w>\nh ans</w>\ntri bal</w>\nnu de</w>\nà¯ į</w>\nbey once</w>\ncongratul ate</w>\ncat er\nleagu e\nðŁĻ Ĭ</w>\nla dder</w>\ncra shed</w>\ntech nic\nkarao ke</w>\nharass ment</w>\nro ts</w>\nexperi encing</w>\nkri sten</w>\nðŁĩ ³\nðŁ¤ Ĺ\nreflec tions</w>\nguin ness</w>\nillustr ator</w>\nðŁĻı ðŁı»</w>\ncen ter\nnar row</w>\ncomm ons</w>\nregul ations</w>\nÙ Ĩ\nhar m\ncro ft</w>\ncu ssion</w>\nhong kong</w>\nst ical</w>\nintern ship</w>\nzo e</w>\ncho p</w>\nhoo ds</w>\nestim ated</w>\nbatter ies</w>\nberke ley</w>\nsmooth ie</w>\nshau n</w>\ncro s\n~ ~</w>\ncam pe\nhu mp\nb g\nproto type</w>\ncl ick\nshaw n\nre viewed</w>\ntem pl\np f\njed i</w>\nblo gs</w>\nray mond</w>\nas th\nba h</w>\nav ail</w>\nscot ch</w>\nleaf s</w>\nnik ki</w>\nto k\nhol low</w>\nur ges</w>\nof t</w>\nun like</w>\nlat in\nu e\ncat ering</w>\nmil i\nalter nati\nma ver\nÐ ¸\nag le</w>\npre order</w>\nlu x</w>\ncu cu\nðŁĳı ðŁĳı</w>\nt art\nâĿ¤âĿ¤ âĿ¤</w>\narab ic</w>\nrapi dly</w>\nar rang\nall en\ntravel tuesday</w>\npa ws</w>\nflo ws</w>\nst ability</w>\nflu id</w>\nca pp\ncan berra</w>\nuu uu\nsp ani\ndemon stration</w>\nm la</w>\nplac ement</w>\nm w\npresi dents</w>\nawe som\nbever ly</w>\nani st</w>\nne al</w>\nfather sday</w>\nreferen dum</w>\nla hore</w>\no aks</w>\ndeb bie</w>\nhalf way</w>\ngho sts</w>\nde bor\nmatthe ws</w>\nfi at</w>\nt fw</w>\npre sen\nrob i</w>\nde d\nbro ck</w>\nlaugh ed</w>\nam ounts</w>\nbam boo</w>\nkinder garten</w>\neat en</w>\nmtv hottest</w>\nbreak out</w>\nu sic</w>\nfra ser</w>\nlegis lative</w>\np ang\nmodu le</w>\nsam my</w>\ngo ver</w>\near ns</w>\nexpe dition</w>\ngar h</w>\nconcep ts</w>\nchar lie\nla va</w>\nbachel or</w>\nveg gies</w>\ndeter mine</w>\nel lie</w>\nun locked</w>\nfru it\ndal la\ncou pe</w>\nwash ington\ndepo sit</w>\niv ory</w>\npau la</w>\nchic ag\ngu cci</w>\nðŁİ ĥ</w>\ncul tiv\npier ce</w>\nli fted</w>\nstu mb\nre cover</w>\nmusc les</w>\nconduc ting</w>\ncb s\nmcla ren</w>\nsophi a</w>\ncel lu\noce ans</w>\nup loaded</w>\ngame play</w>\nmal dives</w>\nkim ber\navo i\nrac er</w>\nca ine</w>\ncav s</w>\nh ana</w>\nli ga</w>\nra ven</w>\ninter vention</w>\ninaugur ation</w>\noo h</w>\nat traction</w>\nmerchandi se</w>\ntune in</w>\nli king</w>\njuni ors</w>\nint ended</w>\natt acking</w>\naqu arium</w>\ni wd</w>\ncomp onents</w>\nsur ing</w>\ncent u\nyogur t</w>\nðŁı ĥ\nshow room</w>\nop tical</w>\nty our\nju dge\nyi eld</w>\nan to\npl c</w>\ntransparen cy</w>\nrecy cled</w>\nchi ef\nar om\nambassad ors</w>\nplan et\nâĿĦ ï¸ı\nom ed</w>\nvaness a</w>\ncour t\nmar gar\nhal ey</w>\nv r\nreg ina</w>\npd ates</w>\nhi span\nlive stream</w>\nâģ £</w>\nya hoo</w>\ngal la\nsecu red</w>\nw ir\nbene ath</w>\noff l</w>\nn il\nam b</w>\nye g\nout let</w>\nu te\npe ep</w>\nlind say</w>\nbent ley</w>\n... !</w>\nhe el</w>\ntrilo gy</w>\nvo s</w>\nty re</w>\nthere fore</w>\ntor onto\nab i\nsimp li\nja e\nexten sive</w>\neleph ants</w>\ns or</w>\norient ation</w>\nim peach\nre play</w>\nconstru cted</w>\npeter son</w>\npa is\npor ted</w>\ncustom s</w>\ncolla p\nad u\nhigh lands</w>\nsal em</w>\nshel by</w>\nko vic</w>\nstra in</w>\nro sie</w>\nsen ators</w>\nsnap s</w>\nbo bb\nsuz uki</w>\nbla des</w>\nk p</w>\nlo lo\ngener ate</w>\nsi ght\nma e\nstruc tural</w>\npredic t</w>\njump ed</w>\nah mad</w>\nsun g\njust ice\ngla m</w>\nvol vo</w>\njubi lee</w>\nde tention</w>\nlo sses</w>\npu ri\nevery time</w>\nÐ °\nra o</w>\ned ge\nli mer\nrese mb\nhar old</w>\nre tri\nsacri fic\nsurpri ses</w>\nam c</w>\nsrilan ka</w>\nbar bie</w>\nmen s\nfin n</w>\nag s</w>\nukrain ian</w>\nem brac\nî Ĳ\nflav ors</w>\nhom er</w>\nlau re\nou th\npr iced</w>\nver de</w>\nfir m\nah s</w>\ncu b\ntre y</w>\npar anor\npro fit\nin dv\nwho a</w>\nhar sh</w>\nal ot</w>\ncrit ics</w>\nhu bby</w>\nfi gur\ngi ra\nca stro</w>\nchan el</w>\nin put</w>\norigin als</w>\nten ant</w>\nyy yy</w>\nture rs</w>\nlincol n\nco on</w>\nlear n\nch ou\nac are</w>\no les</w>\ndin er</w>\nhy p\nbizar re</w>\nmc r</w>\nlet sgo\ndecor ating</w>\nðŁĮ İ</w>\nal ison</w>\nar vin\nf d\nreha b</w>\nmccar thy</w>\nlot tery</w>\nda h\nminne apolis</w>\neli gible</w>\ndiagno sed</w>\nemer ald</w>\ndestin ations</w>\ns ans</w>\nor y\nbla zers</w>\nn v</w>\nba il</w>\ndigital art</w>\nno c\nmal ta</w>\nsol ar\npi pes</w>\nalleg ations</w>\nno ck</w>\npo pe\nbri d\npremi er\nn x</w>\npresent ations</w>\nef a</w>\nbo ws</w>\nval ve</w>\nopp onent</w>\nĮ ë\nvisu al\ning le</w>\ncate gor\ne ter</w>\npo is\ndan i</w>\nat tract</w>\nneu tral</w>\nth ene\ncra shes</w>\nfred die</w>\nut ili\nc st</w>\nawak ening</w>\nslo ven\nquali fy</w>\npro of\nfair y\nle v\nfre ight</w>\nenjo ys</w>\ncup cake</w>\nflav our</w>\nâ ķ\nprotec tive</w>\nðŁĳı ðŁı»</w>\nis u\nad mir\nh mmm</w>\ncontinu ous</w>\nai res</w>\nrap tors</w>\nshowcas ing</w>\ny uk\npa ste</w>\nfollow er</w>\ninstru ctions</w>\nsp ru\n@ __</w>\nthe o\ndebu ts</w>\nve tte</w>\nsto w</w>\nes of\nach ed</w>\nsul tan</w>\nsand wich\nsom alia</w>\nfranc o</w>\ncar ne\nflu ffy</w>\nal pine</w>\njas mine</w>\nhe ated</w>\nviol in</w>\nple ss</w>\ndivor ce</w>\nper former</w>\nphi es</w>\nport sm\ndar a</w>\nkir by</w>\nlo p</w>\nchill i</w>\nfor th\nsky pe</w>\nðŁĩ®ðŁĩ ¹</w>\ncelebr ities</w>\ned y\nve e</w>\npo ison</w>\ney el\ngra bs</w>\nssi c</w>\nun o</w>\nwester n\nrail road</w>\nam er\nnumer ous</w>\ns v</w>\nfo w\nfi st</w>\nâĢ ĭ\nreque sts</w>\nmar tial</w>\nem my</w>\naccept ance</w>\nlau ra\nà¸ ´</w>\ner up\nhyun dai</w>\nout lander</w>\nu tt\nwrest le\nesp resso</w>\ndemand ing</w>\ng dp</w>\ngeo graphy</w>\nsas kat\ntro ll</w>\nconfe der\nsu es</w>\nse m</w>\nbe ts</w>\nt ful</w>\nto sh</w>\nteach es</w>\ncol oured</w>\ngal way</w>\nmac y</w>\ndis orders</w>\nbb cra\nat em\nfen der</w>\nlit ter</w>\ne sh\nprovi ders</w>\nrenov ation</w>\nnomin ate</w>\nps g</w>\nnomin ations</w>\njen na</w>\nshar p\nsome day</w>\nz ur\nbra ins</w>\nche shire</w>\npre y</w>\nhu go</w>\nÂ ¿</w>\nto ken</w>\nr v\ncar r</w>\ntac tical</w>\nzel da</w>\nkay la</w>\nfern ando</w>\nphotograph ers</w>\nj our</w>\numb rella</w>\nwoo dy</w>\ncongress man</w>\ndu mp</w>\nle vy</w>\nju an\nd azz\nsign als</w>\nla in</w>\nan u</w>\nmic hel</w>\npor ch</w>\nal den\nsibl ings</w>\ny ale</w>\npe el</w>\nsw ick</w>\ngg in</w>\nll c</w>\nk ale\ns con\nil d</w>\npat reon</w>\nre el</w>\nqu in</w>\nwit t</w>\nmar ty</w>\nmoo dy</w>\nton i</w>\nder y</w>\ng ators</w>\nspeci fically</w>\ndd in</w>\nly on</w>\ntr ick\nmeado ws</w>\np j</w>\nbor gh\nvi k</w>\ntu r</w>\nbron x</w>\npu ff</w>\nlan tern</w>\nðŁ¤ ¦\ng ently</w>\nbe stie</w>\nfac t\nrefu sed</w>\nfas ci\nmp y</w>\nðŁĶ µ</w>\ncross over</w>\nmead ow</w>\nindian apolis</w>\nduc ation</w>\nsle y\nloo m</w>\nmix er</w>\nnew music</w>\nfilm maker</w>\nprosper ity</w>\nli m</w>\nweek end\ncre amy</w>\nneu tr\nlu ther</w>\nh v\nnor thern\ntw o\nh ra</w>\ncat ches</w>\nappear ances</w>\nha bit</w>\nkitt ens</w>\nn v\nilla c</w>\ninf an\nregar dless</w>\nliz ard</w>\ndun k</w>\ncur tain</w>\nac om\nin tu\nve z</w>\ne min\nfl ats</w>\ncalend ars</w>\nem power</w>\nru ined</w>\nhun gary</w>\nvi d\nwe x\nu lum</w>\naber deen</w>\no sa</w>\nk t\nma ssi\nse emed</w>\ns den</w>\n' ?</w>\ntele phone</w>\nde fi\ninsp ires</w>\nme ow</w>\nz ones</w>\nbl ind\npl y\ntuc son</w>\nadvent ure\nge d\noy ster</w>\nðŁĳıðŁĳı ðŁĳı</w>\nout put</w>\ntt t</w>\nmetal lic</w>\nsma sh\nucl a</w>\nsco ts</w>\nperfe ct\nlu cy\nregular ly</w>\nsp ic\nrel ative</w>\nath ers</w>\nmis e</w>\nbatt ling</w>\ndeci des</w>\nmat a</w>\noccu pied</w>\nrandom ly</w>\ncat softwitter</w>\ngi an\nball y\nal ties</w>\nal lies</w>\nim men\nsy rac\nðŁĴľ ðŁĴľ\nl lan\nau r</w>\nk ut\nlam ar</w>\naffe cts</w>\nn ra</w>\nstar war\nðŁ¤ ĺ</w>\nsc ram\nen chan\npro cess\nluxu rious</w>\nar ray</w>\nsher lock</w>\ncomp ati\ndor f</w>\nstre ss\nm su</w>\ns with\nsal a</w>\nsof instagram</w>\nfo il</w>\nunder stood</w>\nqu ay</w>\nr p\nc ade</w>\nja w</w>\nen ab\nen coun\nðŁİī :</w>\ndo ck\nsatur n</w>\nmu ll\nlay out</w>\nra rely</w>\nhapp ily</w>\nfix ture</w>\nor ph\nover looking</w>\nher bs</w>\nm itt\npil lar</w>\nnol an</w>\npe tty</w>\nstr y\nu i\nmu k\no res</w>\no vers</w>\ná µ\nre creation</w>\nwe sley</w>\nri t</w>\nkejri wal</w>\nsto cking</w>\ng v</w>\nsubscri bers</w>\nmoo se</w>\nma e</w>\nber t\nopp re\nassign ment</w>\nu ro\nhigh lighting</w>\ncal vin</w>\nwe igh</w>\ncambo dia</w>\nav on</w>\nke m</w>\ndis abilities</w>\nread y\nchar gers</w>\np ads</w>\niz ing</w>\nilli an</w>\ntru ste\ncol leges</w>\nassoci ates</w>\nalban y</w>\nmil ton</w>\ncr on\nbu r</w>\nhar dly</w>\nsi ghts</w>\nanti ques</w>\ne cho\nsurpri singly</w>\nha iti</w>\ncap t</w>\nph p</w>\nop io\nine quality</w>\nequ al\nken y\nsch mid\nautograph s</w>\nren t\nqu er\ncit rus</w>\nchalleng ed</w>\nte c\nepi de\nfe st\nz hou</w>\nli me\ncitizen ship</w>\ncry stal\nconvin ced</w>\nmess enger</w>\ncopen hagen</w>\nâĿĹ ï¸ı</w>\nwar ran\ndevelop ments</w>\nï¸ı âĥ£\nfore x</w>\nhi ro\nsne akers</w>\nxi de</w>\nvi va</w>\nstere o</w>\nbat ting</w>\nss el\nho st\nbeng al\ncritic ism</w>\nq c</w>\ncr un\nattemp ted</w>\nry e</w>\ndetermin ation</w>\ncre ations</w>\nd read\nlabel s</w>\npos se\nanc er</w>\njoh an\nsi ster\npartner ships</w>\nles bian</w>\nk st</w>\nguaran tee</w>\nbar o\nfix ing</w>\nma son\nm ous</w>\nchem icals</w>\nt less</w>\nbio diversity</w>\npar o\nbhar at</w>\nac ol\nrefu ge</w>\nen te\nt iti\ndys sey</w>\nrespon ds</w>\nlef to\nin er\nse vel\nrahu l</w>\nol ine</w>\nfrank fur\ncho reo\nenjoy able</w>\nc to</w>\nstrugg les</w>\nwood land</w>\nheavy weight</w>\ngen s</w>\nrece p\nac cred\nðŁĺ ¡</w>\ntrans formed</w>\nlist en\nat op</w>\nn k</w>\nsur ge</w>\nbe re\ngover nor\nprison ers</w>\nclau de</w>\nt ill\nmu lator</w>\nemo tion</w>\nwater loo</w>\nstar t\nðŁĩ º</w>\nclean ed</w>\ngrand mother</w>\nfear less</w>\nafric an\nastron omy</w>\nðŁı ģ</w>\nà¸ Ļ\nthe world</w>\nsu itable</w>\nanth ony\nk and\ntt en</w>\nmeaning ful</w>\ndisc lo\njaco bs</w>\nÃ ¸\ntom linson</w>\nghe tti</w>\nty pho\nsub stan\nas co</w>\nte k\nnag ar</w>\nmu d\nam on\nvacc ine</w>\nf ty</w>\nfle sh</w>\nno el</w>\ninfl ation</w>\nportu gue\nglam our</w>\ntra m</w>\nv re</w>\nte qu\nroun dup</w>\nw yn</w>\nrejec ted</w>\nmosa ic</w>\nsi ghting</w>\ncal f</w>\no ta\ncom position</w>\ngo pro</w>\ngonz ale\ne ed</w>\nb ard</w>\ntu e</w>\neffec tively</w>\nwe en\nal to</w>\nri bs</w>\nrel ate</w>\nthir sty</w>\nfu rious</w>\ndi m</w>\nch ard</w>\nperfu me</w>\ns ny\nchur chill</w>\nk of\nmaster class</w>\nwa ve\nðŁĶ µ\ner in\nown s</w>\nto be\nsk illed</w>\nte m</w>\ngo f\nen i</w>\ntor i</w>\ncra zy\nl ick</w>\nresi stant</w>\nici al\nag ar</w>\n! :</w>\ng ali\ndel aware</w>\nbl itz</w>\nkoh li</w>\npu ck</w>\navail ability</w>\nhi malay\ninflu ential</w>\ncro chet</w>\nvictor i\nread ing\nho bby</w>\nvie t\nj as</w>\nen gra\nsk ul\nðŁĩ² ðŁĩ\neduc ate</w>\ntech no</w>\ndistric ts</w>\nblu es\nse tt</w>\nseven th</w>\nlear ns</w>\nee ee</w>\napocaly pse</w>\nhang out</w>\ncru el</w>\nmu tu\nbru h</w>\nhel en\nshe er</w>\nc tion\nkle in</w>\ntex ans</w>\nce real</w>\nsh ine\nne red</w>\ngra s</w>\nam bro\nf ella</w>\nhin du\nmatthe w\nli ma</w>\nmir anda</w>\nje wel</w>\nso ho</w>\neuro vision</w>\nneighb ours</w>\nchand ler</w>\nbe sides</w>\nðŁ¥ °</w>\nast ros</w>\nthu mbs</w>\nren ault</w>\nra ve</w>\nhi red</w>\nðŁĸ ¤\nit ary</w>\nz or\nbla zer</w>\nk ine\nea u</w>\nkat y\ndc comics</w>\npe c</w>\nro dgers</w>\nwater proof</w>\nkill ers</w>\nsuper int\npre serv\nas so</w>\nbrew ers</w>\npromo tional</w>\nsc am\nvilla ges</w>\nsket ches</w>\nju icy</w>\nfor life</w>\nau dit</w>\nso lo\nfundam ental</w>\nlen e</w>\nphilipp ine</w>\nt end\nconserv atives</w>\nsponsor ship</w>\ndd le\na ine</w>\nh tc</w>\nos i</w>\nhul k</w>\nw af\nà¸ Ļ</w>\nevalu ation</w>\nant ine</w>\nsle e\nrobert son</w>\nroo sevel\nag i</w>\nsophi stic\nemplo yers</w>\nbubb les</w>\nko wski</w>\ninter action</w>\nsh u</w>\nbou le\nic an\nj are\nhan k</w>\nleg itim\nk nicks</w>\nkar ma</w>\nrecei ver</w>\nper ks</w>\nu h\nsta ir</w>\nsun i\nlabor atory</w>\ngra ves</w>\nvoc als</w>\noo t</w>\nc ture</w>\nthri ve</w>\ntic o</w>\nãĥ ³\nb w\ncarto ons</w>\nmcdon alds</w>\ndra w\ny ung</w>\npl er</w>\nli d</w>\neth ical</w>\ngroo ve</w>\nent a</w>\ninternational womensday</w>\npat ron</w>\nwor ries</w>\nðŁİ ħ\nðŁĳ ĭ</w>\nka therine</w>\ndi az</w>\ntor i\nbach chan</w>\ntru st\nmin eral</w>\nic om\nbuil ders</w>\nbor n\ncol oring</w>\nlat te</w>\nca se\nrevolu tion\ntra der</w>\nox id\nchi pot\ninst antly</w>\nsou thern\nse hun</w>\npro b\nher nandez</w>\nlis bon</w>\nhu awe\np ong</w>\nme a</w>\nro oney</w>\nwheel chair</w>\nke en\nbe tt\ncor in\nregulat ory</w>\ndi splac\nka ren\nsch em\nsun sets</w>\nwh ales</w>\nremin is\nhe p\nhi de\nmar cel\npand ora</w>\ndo yle</w>\nth fc</w>\not to</w>\nno kia</w>\ntrans gender</w>\nko v\nhawai ian</w>\nsha ve</w>\nso vere\nexc er\nnick i</w>\npu g</w>\nst or</w>\nro th\nwee t</w>\nleg al\ndig nity</w>\npo w</w>\nhom age</w>\nðŁĩ³ ðŁĩ\ns re\ncan on\nla x\nwo ah</w>\nquart z</w>\nÃ± a</w>\ngree ting</w>\nflick r</w>\nnai robi</w>\nadvoc ates</w>\nan c</w>\nvi i</w>\neu gene</w>\nth ra\nc re</w>\nel an\npen sion</w>\nth letics</w>\nton i\nre agan</w>\nx v</w>\nsto re\nben ch\nhar lem</w>\ntodd ler</w>\nsent enced</w>\nâĻ¥ ï¸ı\nglob ally</w>\nche aper</w>\nu f\nma m</w>\nnic o</w>\nik u</w>\ntho u</w>\nni st</w>\ndam i\nth ala</w>\nrho des</w>\nsal e\nbow ls</w>\nâ Ī\nlas vegas</w>\nsanc tions</w>\nadm ire</w>\nmat ched</w>\nun able</w>\ntravel er</w>\nele ven</w>\nstraw berries</w>\nâĢĶâĢĶ âĢĶâĢĶ\nstu dio\njac ques</w>\nim s</w>\nvalu ed</w>\ns no</w>\ncheese cake</w>\nn xt</w>\ne os</w>\ns x</w>\nf x\nton ic</w>\nhat ch</w>\nchic ks</w>\ngra ds</w>\nhand ic\nr ory</w>\nas p\nri pped</w>\ndenti st</w>\nn en\nlu fc</w>\nâľ Ĭ</w>\ndi ge\nhop kins</w>\nsher man</w>\nf da</w>\nfor all</w>\nash ley\nstr and</w>\nh y</w>\nliqu or</w>\nbuffe t</w>\ness ence</w>\nphar ma</w>\nsuri ya</w>\nðŁĴĻ ðŁĴĻ\nfesti vals</w>\nz an</w>\nre fresh\npur ple\nuni forms</w>\nkenne th</w>\n= )</w>\nas an</w>\nhel sin\ntransform ers</w>\nk ali\nperson alized</w>\nchal k</w>\nbo bby\nâ Į\nthe mes</w>\ndepar ture</w>\nprin t\nillustr ations</w>\nqui et\nagre es</w>\ngri ff\nØ ³\nm iti\ntoge ther\nconven ience</w>\nab ar\ncar lo\nturt les</w>\ninfo sec</w>\nsome what</w>\nar lington</w>\nscholar ships</w>\nemir ates</w>\nmu ms</w>\nst ella</w>\nauton om\nfe ather</w>\ng ore</w>\nnom inees</w>\nfragr ance</w>\nÑ Ĥ\nw ong</w>\nthea stern</w>\ngr e</w>\nz illa</w>\nis i</w>\nbump er</w>\ngo o</w>\ndo zens</w>\nab duc\nâļª ï¸ı</w>\no ils</w>\ndon ors</w>\nsil icon</w>\ni pod</w>\nfortn ite</w>\nðŁĴ ¨</w>\ntor o</w>\nspark ling</w>\nconsci ousness</w>\npal a</w>\nnu m\nmoun ted</w>\nffin s</w>\nthi eves</w>\nteam mate</w>\npra b\nom er</w>\nta pes</w>\nbo d\nmit su\nste w</w>\ne re\np bs</w>\ntu sc\nlo we</w>\nra de</w>\nparliam entary</w>\nh m\ned gar</w>\nðŁĳĩ ðŁĳĩ\nto a\na gh\nhon i</w>\ns late</w>\nge ek\nap t</w>\nhard t</w>\nta p\nhoriz on\ngrow th\nmake over</w>\nhi l</w>\npaper back</w>\nid an</w>\nreha bil\ngi u\npossi bilities</w>\nlet tu\nfran co\nbo ss\nach er</w>\ndoes nt</w>\nmo e</w>\nta ker</w>\nhuss ain</w>\nml k</w>\ndi l</w>\nth ia</w>\nham a</w>\nreal ised</w>\nraven s</w>\ncurric ulum</w>\nm ith</w>\nk night\nted x\nr v</w>\nisai ah</w>\ncumb ria</w>\nbirth days</w>\nf ing</w>\npre z</w>\nmu barak</w>\nexquis ite</w>\nclear ance</w>\ny en</w>\npar i\nev o\nÃ º\nmodi fied</w>\napp lying</w>\nimple ment</w>\ndisco vering</w>\nchap man</w>\nindie game</w>\ndis k</w>\ncrowd funding</w>\nmach in\nli vel\nsty led</w>\nâĿ Į</w>\nma king\nrehear sals</w>\nnutr iti\nsubscri ption</w>\nand ro</w>\ncre ators</w>\ncar ries</w>\nky lie</w>\ncam den</w>\nappren tice</w>\ntax pay\nc ca</w>\ntuesday thoughts</w>\npis sed</w>\ner man</w>\ndete c\nfreed om\nmer i\n.. !</w>\npsal m</w>\nsun light</w>\nper spec\nbe ings</w>\nbook store</w>\nrock star</w>\nfun ctions</w>\np ence</w>\nfav es</w>\nz n</w>\nobam acare</w>\nsp ill</w>\ncoven try</w>\npi geon</w>\npi vo\nba it</w>\nkol kata</w>\nav al\ndon or</w>\nwa h</w>\nprivi leg\ntra ditions</w>\nrajas than</w>\nten ess</w>\nportugue se</w>\nyn es</w>\ntack les</w>\nde fic\ntor n</w>\npol ling</w>\nthor ne</w>\nin a\nbened ict</w>\nbar ry\ncal ories</w>\nver dict</w>\nsave the\nnor ton</w>\noff ice\nmain stream</w>\nimpro ves</w>\nfr on</w>\nrespon ding</w>\nreal tor</w>\nscotti sh\nde clar\nr l\nshi v\nsupp lier</w>\nre sting</w>\nswee ts</w>\nqu i</w>\n. âĢ¦</w>\nwhit ney</w>\nstartu p\nthank you\nteach er\nh alls</w>\nha ve\nhand made\npro ving</w>\nquar tet</w>\nro chester</w>\nli an</w>\nvirtu al\nmend es</w>\nof icial</w>\nmid lands</w>\nx box\nmeas uring</w>\no vo</w>\naccommod ation</w>\nbri des</w>\ncollegi ate</w>\nintellec tual</w>\nin car\nni ag\nðŁį ·</w>\nsf w</w>\ncoco a</w>\nco ats</w>\ncivil ians</w>\npresi dency</w>\nmat rix</w>\nsweethe art</w>\ntri athlon</w>\nwag ner</w>\nra dic\nplann er</w>\nthe o</w>\nexecu tion</w>\nk um\nthe walkingdead</w>\nsc ar</w>\nro tation</w>\nblo gging</w>\nbom b\nre son\nbb les</w>\nst are</w>\nassi sted</w>\ne do</w>\nbrand ed</w>\nwar nings</w>\nthor pe</w>\nacknow le\nsatis fied</w>\nsho res</w>\nri d\ndor a</w>\nphys ically</w>\nbi gh\nappro ves</w>\nha h\nric al</w>\nvers atile</w>\npret end</w>\nlu m\nab hi\nye e\nsp it\nãĢ Į</w>\ndj s</w>\nash tra</w>\nj t</w>\nven ues</w>\ngram mys</w>\ncy clo\ntr acker</w>\nover watch</w>\nrepl ica</w>\nel yn</w>\nnr l</w>\nlind sey</w>\nhom o\nballo ons</w>\nkitch en\nsi s\nam os</w>\nende av\nðŁĴ »</w>\na rec\nthu g</w>\nhoo ked</w>\nhr c</w>\nnew york\nbur gh\nameric as</w>\npatric ia</w>\nug u</w>\nap athy</w>\nha st\npsy chi\ncor k\npetro l</w>\nðŁİ ¬</w>\nak u\npo pping</w>\npsycho logical</w>\nau x\ng ma</w>\ncad illac</w>\nwa ste\nauth ent\nbri stol\nnam e\nque er</w>\nto ber\njer ry\ncom in</w>\nch ant\nprivileg ed</w>\nop ar\nlo ser</w>\ntex t\nmar ker</w>\nstri es</w>\nequ ally</w>\nak i\nchrist mas\ngare th</w>\nble w</w>\nem ma\nimag in\nse als</w>\nche at</w>\nconditi oning</w>\nj ana</w>\nren s</w>\ndar ies</w>\no asis</w>\ndisc ounts</w>\ncoun cil\ni ka</w>\nshir ley</w>\nvou cher</w>\nal ps</w>\nw x\nq r</w>\ndri ft</w>\nattemp ting</w>\nut c</w>\nØ ª\ngonzale z</w>\nm f\njo ker</w>\nparalle l</w>\npa re\naspe cts</w>\nproce du\nn p\nam a\nrale igh</w>\nbright en</w>\ngu ire</w>\nradi ation</w>\ncre scent</w>\nho b\nil le\nstr and\nv ore</w>\nn ard</w>\nche st\ndi wali</w>\nav atar</w>\nal der\nd ling</w>\npa thetic</w>\nðŁĴ ĺ\nspir it\njor ge</w>\nfilm making</w>\nðŁĻı ðŁĻı\nchalleng er</w>\nb j</w>\ndown town\nht ml</w>\nade qu\ntwi sted</w>\nin ely</w>\n( '</w>\nwra ps</w>\noper ational</w>\ny ne</w>\nn us</w>\nmag net</w>\nmarket place</w>\nhealth ier</w>\nsnap shot</w>\ndam on</w>\ninter ven\nfe derer</w>\now ls</w>\nbiscu its</w>\nj p\nro deo</w>\nblue berry</w>\nlec tion</w>\nfron tier</w>\nsumm ers</w>\nre yes</w>\npede strian</w>\ngo l</w>\ncaf fe\nrefur bi\nbou lder</w>\nme ghan</w>\nspeci alty</w>\nla ss</w>\ne i</w>\nsuspec ts</w>\nappro x</w>\nrr r</w>\nra th\nst im\ncru shed</w>\nhe d\nwh un\nlo af</w>\ncr ore</w>\nriver a</w>\ngene tics</w>\nso ck</w>\nwa sted</w>\nny pd</w>\nansw ering</w>\ndo ve</w>\nbel la\nol in</w>\ndu n</w>\nfi ji</w>\npre tty\nspar kle</w>\ny un</w>\nj d\neuro pa</w>\nli fts</w>\nam ber\nmu r</w>\nte k</w>\nboy d</w>\nroy alty</w>\nin do</w>\nri b</w>\ngo tham</w>\nti est</w>\ninst alling</w>\nke mp\nthe photo\ncos mic</w>\n) ))</w>\nwhole sale</w>\nloy ment</w>\neas y\nsu ing</w>\nsett led</w>\naf p</w>\npro ver\nsuppor tive</w>\nre es</w>\nne ath</w>\ndeli ber\nc Ã©</w>\nwel come\npic oftheday</w>\nnew born</w>\npat ty</w>\nsun s</w>\nsi est</w>\nfl int</w>\ndiffe rently</w>\nspo ilers</w>\ntroop er</w>\ng ins</w>\ncor y</w>\nlook out</w>\nequi pped</w>\nta pe\nto by</w>\nresear cher</w>\nu sh</w>\nke yes</w>\nal ma</w>\ninduc tion</w>\nk w</w>\nk har\nsl ick</w>\nbri de\ne ur\ncra ving</w>\nbook ings</w>\nch es\ntr unk</w>\nvern on</w>\nsp her\ncryst als</w>\nrel atively</w>\npom pe\nuni ons</w>\nval ley\npar a\nw ant\nok c</w>\nde af</w>\nser gio</w>\nlen non</w>\nsh ay</w>\ncr a</w>\nv at</w>\nhe e\nt we\nliqu id\npol y</w>\nðŁİ ģ\nb ent</w>\nbe aring</w>\nmotor sport</w>\nbar be\nte sti\nhan i</w>\nfin ancing</w>\nastron aut</w>\nwater colour</w>\nri sh\ncomic con</w>\ngar t\nwr ong\nber n</w>\nit an</w>\nste pped</w>\nfil ters</w>\nc low\nme x</w>\ndem ons</w>\nall o</w>\nexpand ed</w>\ncomm and\net ers</w>\ngo ats</w>\nsi ri</w>\ny r\npot tery</w>\nmari on</w>\ni le\nel an</w>\nsan to</w>\nperson a</w>\ndu ke\nhom eless\nli ghted</w>\nwheel er</w>\nchang er</w>\ncab bage</w>\nsur real</w>\nham burg</w>\nsma shed</w>\nstr an\nk not</w>\ni art\nob i</w>\nbe dro\ndi al\nth ick\nb ingo</w>\nfu s</w>\nvacu um</w>\ncon ve\nati ve\naccur acy</w>\naccoun t\nre fer\nri z\nspider man</w>\nban a</w>\nr ite</w>\nu b\nab s\nmedic al\nlin k\nsi em\n> >>></w>\nbe tra\ng lowing</w>\nre actions</w>\npupp et</w>\nspa ghetti</w>\nang s</w>\nre medi\npray for\nroy ce</w>\nchar lotte\n£ ï¸ı</w>\ngh et\naffe cting</w>\nro de</w>\nsoci alist</w>\nmo ses</w>\naz i</w>\no it\nre porters</w>\ncd t</w>\nap ing</w>\ns nat\nminim al</w>\nwa ist</w>\nsie ge</w>\n>> >>\nri g\nschmid t</w>\nh are</w>\nec a</w>\nthor n</w>\nhe mp</w>\nes the\ncly de</w>\nth a\ndon ut</w>\nmoham ed</w>\nling erie</w>\nle gg\ncarpen ter</w>\nperform ers</w>\nde a</w>\nimag ined</w>\ncur se</w>\nla sh</w>\nct r</w>\nagu a</w>\nro ar</w>\ngr i</w>\nro le\nj fk</w>\nresur rec\nroosevel t</w>\nmaril yn</w>\nsm alle\nwill is</w>\nwa ited</w>\nchar ities</w>\nthe res</w>\nli k</w>\norigin al\ncar i\nc ough</w>\ncru ci\nla gun\ncontra st</w>\nk ou\narm our</w>\nre moving</w>\nt ent\nmaz da</w>\nbri ghter</w>\nthi ef</w>\ncor ner\ntequ ila</w>\nbuzz ing</w>\nal bi\np am</w>\naz ure</w>\ndisc oun\npixel art</w>\npossi bility</w>\nham ont</w>\ntra des</w>\nbu da\nhi ve</w>\nvers y</w>\nfin ch</w>\ntran spa\nem i</w>\nterri fying</w>\nin qui\ng ba</w>\nsub stitu\ncollec ti\nplac ing</w>\ncin dy</w>\nk ann\npa tho\ndiamon d\nmour inho</w>\nguine a</w>\nanthro po\nair s</w>\npu mps</w>\nì ļ\npas o</w>\ncur ling</w>\nan ita</w>\nresi dency</w>\nne wh\njo on</w>\ncigare tte</w>\nque ue</w>\nex trac\ngam es\nspl en\nex press\npublic ly</w>\nbon nie</w>\ntribun e</w>\nba ek\nreason able</w>\nc or</w>\ntimo thy</w>\nshe eran</w>\nÄ ±\nf dn</w>\nsu tton</w>\nconcentr ation</w>\ncarav an</w>\nx avier</w>\nal ger\ncy lin\nfreder ick</w>\nner ve</w>\npe ak\nlettu ce</w>\nj ail\npre game</w>\nkav an\nup graded</w>\neco logy</w>\nsquad ron</w>\ngra pes</w>\ngoo g\npa stry</w>\nðŁĹ £</w>\nãĥ¼ ãĥ\nmil ano</w>\nawa z</w>\npresen ter</w>\nðŁĮ ¿</w>\nher d</w>\nking s\ntem plate</w>\nfl our</w>\nh v</w>\nk ley</w>\ni ya</w>\nspe c</w>\nat er\nfrankfur t</w>\nco ch\ntex ting</w>\ndel i</w>\ncommuni st</w>\nregi ment</w>\nele anor</w>\nanticip ated</w>\nðŁĳĮ ðŁı»</w>\nthephoto hour</w>\nran o</w>\nsurvi ving</w>\nsimul ation</w>\ndaw son</w>\nar in</w>\naqu a</w>\nm or</w>\nâĢ¦ .</w>\ncin o</w>\nira qi</w>\nsh az\ndun dee</w>\nwe s\ndra u\nhann ah\ns news</w>\noccup ation</w>\nste en</w>\nx m</w>\nang les</w>\nsett ings</w>\ngur u\nkno x\nor ca</w>\nshap ing</w>\nw ent\ndr illing</w>\nzz ie</w>\nbr i</w>\nkis sing</w>\nfin d\nma ine\nâŃĲï¸ı âŃĲï¸ı\nðŁĮ į</w>\nlar ry\nbu sted</w>\nta vern</w>\nacti vely</w>\n- \"</w>\nreplac ing</w>\nno d</w>\nun lock</w>\n. \"\nâŀ ¤</w>\naffili ate</w>\nto w</w>\nl n</w>\nhappy newyear</w>\ndi f\nj m</w>\ngreen wich</w>\ncontro versy</w>\ndaw g</w>\ncon dol\nsav annah</w>\ncompens ation</w>\ntouch down</w>\nte o</w>\namb itious</w>\nembro i\nconvic ted</w>\niart g</w>\nbar ack\ntr ance</w>\ntestim ony</w>\nau dition</w>\nthum b</w>\nmy ths</w>\nbe x\nque z</w>\norch id</w>\nden y</w>\nentit led</w>\nhoo d\ngr ant\nin box</w>\nblue jays</w>\nr illa</w>\nsmalle st</w>\nbur den</w>\nin famous</w>\ndivi ded</w>\nboun daries</w>\nt ter\nel t</w>\nwy oming</w>\nbe verage</w>\nme sm\none ws</w>\nbudd hist</w>\ny ana</w>\nas sad</w>\nis ms</w>\nbar rett</w>\npredic ted</w>\nback to\ntw it</w>\ne there\ncap tains</w>\nescap ed</w>\nay o</w>\nlam borgh\ngard ner</w>\nla ps</w>\nk al</w>\nadverti sement</w>\ninsec ts</w>\nna po\nam en\nac y\nr and</w>\ng k</w>\nte h\nk athle\ntri dge</w>\npan cake</w>\nat ro\npyram id</w>\nbu la</w>\nparal ym\ngau ge</w>\nen cies</w>\ntom y</w>\nbiscu it</w>\nbut cher</w>\nquali fier</w>\ncoun ty\nke i\npo ols</w>\ndar ker</w>\nshould ers</w>\nðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸\nsp re\n( \"</w>\nwrit ers\ng m\nðŁİ ĵ</w>\nk nit\nhu ff\nmt b</w>\nphilli es</w>\no st</w>\nden is</w>\ng art</w>\nlicen sed</w>\ninter face</w>\nex cel</w>\nd well</w>\nfrom the\nco fficial</w>\naz zi</w>\nappear ing</w>\nfore st\nn ana</w>\nke ith\nmanufac turers</w>\nbeck ham</w>\n) ?</w>\ne se\ncol ony</w>\ndelic ate</w>\nut ter\nmc in\ntranspl ant</w>\npre ferred</w>\npar d</w>\nari e</w>\nhu b\npo ds</w>\nperspec tives</w>\npic t</w>\ndel u\napp er</w>\nbe than\np mo\ncrimin als</w>\nfemin ism</w>\nsh ack</w>\ncircum stances</w>\nfel las</w>\nprote sting</w>\nwa x\nsugge sted</w>\nt ator</w>\ndre w\nom ni\nfa ke\nkath y</w>\nre b</w>\ndel ine</w>\nber ni\nmi sty</w>\nðŁĳ ©\ner able</w>\nbreak through</w>\nmen swear</w>\nmillenni als</w>\nchan yeol</w>\nla z\ninser t</w>\nrep lies</w>\nphra se</w>\nn x\nihear tawards</w>\naudre y</w>\ngran ite</w>\nrac ec\nori e</w>\nter ra</w>\ninnov ations</w>\nbritt any</w>\nat eral</w>\npe ar</w>\nbio logical</w>\nsh ments</w>\ninstitu tion</w>\nm sn\nfrequ ency</w>\nd man</w>\nneg lec\nt f\nste fan</w>\nfox news</w>\nty po\ncomm s</w>\nsequ ence</w>\ncar men</w>\nwh ites</w>\neconom ist</w>\nexe ter</w>\nse um</w>\nre sorts</w>\ncas ually</w>\nbun de\ndivi de</w>\nØ ¹\nga g</w>\ncre ed</w>\nreti re</w>\ncau cus</w>\nrapi ds</w>\nwrestle mania</w>\ntul sa</w>\nsunder land</w>\nfundam ent\no di</w>\nyam aha</w>\nv ary</w>\nintri gu\nel se\nbe acon</w>\nan gie</w>\ntra ded</w>\ntran sm\ng ents</w>\nkn itting</w>\ngal ac\nðĿ Ĺ\nu to\nsea side</w>\nhol t</w>\nre rs</w>\nfar go</w>\ntrain ers</w>\nmon soon</w>\nb ale</w>\nsou ght</w>\nmad die</w>\nh w</w>\nco li\nfr an</w>\nfav s</w>\nðŁĴ Ķ\nint ent</w>\nr ally\ns bs</w>\nlemon ade</w>\nbarack obama</w>\nbre ad\nstick y</w>\nexplo sive</w>\nchel ten\nt j\nas soc</w>\nram en</w>\nhom ies</w>\nv log</w>\nmi ster</w>\nlor d\nâĢįâĻ Ģï¸ı\naly ssa</w>\nsketch book</w>\nru mble</w>\ncat ch\nmigr ant</w>\ndiscipl ine</w>\nun likely</w>\nchronic les</w>\nfl ora</w>\nsl ams</w>\nam id\ns boro</w>\ncoo p</w>\nju mps</w>\ntran qu\nmel is\nsof ia</w>\nen ri\ngab e</w>\nsy ri\nnicol as</w>\ncha i</w>\nw v\nbe cky</w>\nfoo ty</w>\nta o</w>\nsuppo se</w>\nðŁĺįðŁĺį ðŁĺįðŁĺį</w>\nplu sh</w>\nri sh</w>\nðŁ¤ ĵ</w>\nk ha</w>\nsatur days</w>\nac cent</w>\nhe c\nlim it\ncarl ton</w>\nwi red</w>\ntaylor swift</w>\nðŁĺ ĳ</w>\nsq l</w>\nhar ro\nrecipi ents</w>\ng at</w>\ngo p\nth of\namaz ed</w>\ngh an\nðŁıĨ ðŁıĨ\npor to</w>\ncla re\ndi stant</w>\nna c</w>\nohi o\nðŁĻı ðŁı¼</w>\nmt n</w>\nanti bio\ndino sa\nme sa</w>\npar tial</w>\nb v\nlear nt</w>\nlov ato</w>\nquesti on\nex tract</w>\ngossi p</w>\ngi bb\nniag ara</w>\nðŁĳ ¨\ndispla yed</w>\nso oner</w>\nste vie</w>\nnug gets</w>\nml n</w>\nbro m\ntur b\ngive aways</w>\nstu pi\nbl ink</w>\nc ili\nconven ient</w>\nmo h\nvi ve\nf ric\ncau se\ncham ber\ncu les</w>\nne arest</w>\nis se</w>\nsmall biz</w>\nt j</w>\ncanadi ans</w>\nsmar ter</w>\nbra sil</w>\nra re\nque tte</w>\nw ha\ncand le\nat omic</w>\nðŁĳį ðŁĳį</w>\nwarri or\nrelax ed</w>\nstri ps</w>\nne ur\nk ka</w>\nr fc</w>\njen sen</w>\nreco vering</w>\nrespon ses</w>\nsal am\northo dox</w>\nacti ve\nell ers</w>\nn it</w>\nâŃ Ĳ</w>\nmetro politan</w>\ncentu ries</w>\nvi da</w>\ngra ding</w>\ntranspa rent</w>\nsim ple\ndo ts</w>\nsuperint endent</w>\nelev ator</w>\nautom ated</w>\nred skins</w>\nima m</w>\nsummer time</w>\njona than\nge aring</w>\nmichel le\nconfl ic\nm ice</w>\nto te</w>\npubli sh</w>\npa x</w>\n) -</w>\nna iled</w>\ná ´\ntele scope</w>\nser bia</w>\nba b</w>\nape u\nst ically</w>\nsen ti\nr ats</w>\nisol ated</w>\ngrou p\nhat red</w>\nparanor mal</w>\nstan ley\nali on</w>\nsafe ty\nl s\nà¤ °</w>\nnex us</w>\nalexand ra</w>\nmas ks</w>\n+ +</w>\ntr on\nau k</w>\nbrother hood</w>\nbrow se</w>\nmix es</w>\nsim one</w>\nmu sk</w>\nappro ve</w>\nlo la</w>\nex p</w>\nper th\nfu turi\nun seen</w>\nd m\nchel se\nsc outing</w>\no we</w>\nportsm outh</w>\nk ram\nmi ze</w>\ndi spen\nsu p\nd lc</w>\nadver t</w>\ntere sa</w>\nis le\ncy cle\nmet all\nshi elds</w>\nmarin ers</w>\nra z</w>\ning en</w>\nfun d\nan go</w>\njon es\no ka</w>\nmad den</w>\nbroc coli</w>\ndomin ic</w>\nsitu ations</w>\nmer o</w>\ncric ke\npuni shment</w>\nd b\nsha king</w>\nðŁĺ ļ</w>\nm q\nari ans</w>\nle h\ncla w</w>\nwe ds</w>\nd ure</w>\nni el\nj elly\ngour met</w>\ntra ders</w>\nle vi</w>\nw ages</w>\nkne es</w>\nwi se\nheaven ly</w>\navi d</w>\nmelo dy</w>\nz ack</w>\nban anas</w>\napprentic e\npro p\nfun ny\no de\nrespec ted</w>\nme gan\nfe wer</w>\ndra fted</w>\nmed it\ngra pe\nus army</w>\ncru sad\nvo cali\nprepar ations</w>\nnon sense</w>\nus age</w>\nth r</w>\nro th</w>\nwiz ards</w>\ninsi de\npromo tions</w>\nmon a</w>\nred sox</w>\nsi g</w>\neleg ance</w>\nch ia</w>\nuniver sal\nãĢ į</w>\nra ja</w>\nun ga</w>\npol lin\nfilip ino</w>\nak a\nt sun\nik on</w>\nbi king</w>\ndecor ations</w>\nz ac</w>\ncade ts</w>\nhum our</w>\nag m</w>\nre ppin</w>\nvac cin\nelo ve</w>\nu w</w>\ndia be\ngalla gher</w>\naz er\ndo l</w>\na while</w>\npro minent</w>\nwel sh\nt ann\n' )</w>\nbi en\nwa g</w>\nin al</w>\nc wc</w>\nwic ket</w>\nur st</w>\nq anon</w>\nx e</w>\nout door\ndun n</w>\nstar r</w>\nco logy</w>\nric ky\nu efa</w>\nreb ounds</w>\ns music</w>\ninf ant</w>\nðŁĻ ĭ\nso p</w>\nu mber\nhand ing</w>\nbeg in\nsor ting</w>\nha sh</w>\nsp ati\nre k</w>\nbuda pest</w>\nblack hawks</w>\ndele te</w>\nro m</w>\ncan did</w>\nauth ori\nde bris</w>\nspe cul\ninter section</w>\nmarri ott</w>\nim ran</w>\nðŁĺģ ðŁĺģ</w>\ncru ises</w>\nram sey</w>\nrafa el</w>\naware ness\nvas cular</w>\nbeyon cÃ©</w>\nru g</w>\nðŁĺ Į\nfesti v\nar am\ns able</w>\nbas il\np ill</w>\nflo oring</w>\nun beaten</w>\nimplic ations</w>\nu f</w>\nw ound</w>\nfor ge</w>\npoin ting</w>\npo ts</w>\npopular ity</w>\nðŁĳı ðŁı»\nmani pul\ns lots</w>\ndeb ates</w>\nabs ence</w>\nver mont</w>\nnever forget</w>\nwri st\ngl oria</w>\nren ce\nhu sk\nmel ting</w>\nðŁİ Ł\nbr aces</w>\ntim ely</w>\ntransform ing</w>\nam ps</w>\nma k</w>\npo e</w>\nah an</w>\ngener ally</w>\nnd p</w>\nale ppo</w>\nunic ef</w>\npro fs</w>\nnor d\nma sk\njackson ville</w>\nv v\nsh ells</w>\nbloom ing</w>\noper ators</w>\nchar coal</w>\nne ville</w>\nma gi\nchi p\nsam a</w>\nir an\nre forms</w>\naccu mul\nru e</w>\næ ľ\nweb sites</w>\nga on</w>\ndevast ating</w>\nsto s</w>\nglaci er</w>\nra pp\nchipot le</w>\npr a</w>\nor ous</w>\nrom ney</w>\nseas on\ndecor ative</w>\nc isco</w>\ndit ch</w>\ncompla in</w>\nll o</w>\nassu me</w>\nðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤ</w>\nn els</w>\ncent ric</w>\nft w</w>\ncar rots</w>\ntat a</w>\ncan ter\nper ience</w>\nli ers</w>\ndemo s</w>\nbl unt</w>\noper ate</w>\nreserv ations</w>\nle ah</w>\nsub stance</w>\ndi son</w>\nan te\nelec tion\nv ue</w>\nsqu are\nnon profit</w>\nca a</w>\nf su</w>\ny am</w>\nãĤ ¤\nv ladi\ncomple tes</w>\nmar i</w>\nphilli p</w>\nne ill</w>\ner as\nka it\nmen do\nmahar ashtra</w>\ng p\ndan e</w>\nprovi dence</w>\nther apeu\njuven ile</w>\nme mo</w>\nin corpor\naa aa</w>\nseven teen</w>\nteen ager</w>\nÃ £\nor ns</w>\nwi de\ncu teness</w>\ntw d</w>\nff les</w>\nbar a</w>\ncom edy\nover time</w>\ny az\nbar on</w>\nunemp loyment</w>\nðŁĳ ĭ\nexter ior</w>\nden se</w>\ncent res</w>\nmatch up</w>\nhistory month</w>\nartif icial\nqu it\ne sk\nwar n</w>\ncr itic</w>\nj af\nðŁĵ ²</w>\ninform ative</w>\nfu els</w>\nrecy cle</w>\nnam ing</w>\nstri pe</w>\nsol ic\nmole cular</w>\ndee pi\ncon vo</w>\ns sel</w>\nna e</w>\nde scent</w>\nti z</w>\naccoun tability</w>\nter ry\nr ito</w>\nsl ay</w>\nem o</w>\ndem ol\nsens ation</w>\nco v\ntor e</w>\nround table</w>\ny ol\nexcu ses</w>\nà¥ į</w>\ntur quo\nhh hh\npod casts</w>\ncele b</w>\nme ssi\nli o</w>\nman n\ncontribu ted</w>\nu z\ngener ator</w>\nele ts</w>\nveg gie</w>\nindu l\nen suring</w>\ndetro it\npun jab\ntran spor\ninstru ction</w>\nad d\npor cel\npan eli\ncir cles</w>\npersi st\nclay ton</w>\nsp n</w>\ndog softwitter</w>\nis nt</w>\nsp r</w>\nretail ers</w>\np w\nhun gar\nel ena</w>\nmon aster\ngu atem\nje ssie</w>\nan z</w>\nra shi\nfle e\ncar ving</w>\nfau x</w>\nl al</w>\nhen ri\nd jo\ndu ll</w>\ns ana</w>\nlar a</w>\nglo be\ncri mson</w>\ncom pass</w>\npau se</w>\nna b</w>\nlion el</w>\nba ths</w>\nu fo</w>\ninvent ory</w>\nsin gh\nsat an</w>\nðŁĩ ¸\nce ments</w>\nin form</w>\ngener ated</w>\nbi den</w>\nav g</w>\ntas ks</w>\nde er\nsa u</w>\nja iled</w>\npa stel</w>\nsc c</w>\nna il\nsteel e</w>\nper is\nlamborgh ini</w>\npur sue</w>\nmar gin\nu ch\nbo sch</w>\ndra in</w>\ncl ara</w>\nbo m</w>\nlat ino</w>\nweb ster</w>\nrose mary</w>\nr ha\ns oun\nbillion aire</w>\nnot ch</w>\npercent age</w>\ncon or</w>\n' \"</w>\nhom es\nearth day</w>\nh ort</w>\nbig gest\ndi sin\nwal ton</w>\nedit ors</w>\nim ma</w>\nom ar\nequi valent</w>\npharmac eu\nah med\ncam eo</w>\nhan ni\nunder rated</w>\nge ment</w>\nmicro bi\nv oo\nhonor able</w>\nobe sity</w>\nâļ ¡ï¸ı\nlimer ick</w>\ninvol vement</w>\nst agram</w>\nboule vard</w>\nbur g\nblackand white</w>\nliber ation</w>\nfi ve\ninter im</w>\nsm m</w>\nrival ry</w>\ncap abilities</w>\nstat ements</w>\nthu mb\nve d\nsw ans</w>\nbar ber\ne que\nseren a</w>\nhel m</w>\nnoo dle</w>\nsam pling</w>\nn awaz</w>\nsing le\nthunder storms</w>\nsh on\nin ev\në ¯\nto pp\norch ard</w>\nbi an\nðŁĺ Ķ\ndoor step</w>\nsalv ation</w>\nmarke ting\nr ons</w>\ncle mson</w>\nra vi</w>\nin take</w>\nstand with\nsin a</w>\nha iku</w>\nple y</w>\nelector al</w>\nph illy\nla ys</w>\nelectr ic\ncap turing</w>\nu pp\ner gy</w>\nbeliev ing</w>\ncul tures</w>\nes day</w>\ninva sive</w>\ned ed</w>\nspee ch\nend ur\nviet nam\nboy cott</w>\npe de</w>\ndeli ver\nðŁĴĸ ðŁĴĸ\nmer chant</w>\nst ir</w>\nden ies</w>\npoc kets</w>\no ti\ncu ddle</w>\nro land</w>\nmm ed</w>\nden ed</w>\nlear ners</w>\nhoo p</w>\nsour cing</w>\nh acked</w>\ndi m\nenviron ments</w>\nben son</w>\njud icial</w>\nwor cester</w>\npear ls</w>\ngovern ments</w>\narri vals</w>\ncor ners</w>\ntun ing</w>\nla bour\ny m</w>\nor dering</w>\nle wi\ni fe</w>\nhygi ene</w>\nthou ghtful</w>\nindone sian</w>\ncampaig ning</w>\nprinci ple</w>\nassau l\nru bb\nat v</w>\nwil ly</w>\nen tre</w>\nil i</w>\nph on\ndu ties</w>\nâĻ¥ âĻ¥</w>\nsn akes</w>\nlo op\nam ar</w>\nconver tible</w>\nbon ding</w>\nment oring</w>\nmax well</w>\nethere um</w>\ndestro ying</w>\nax is</w>\nca iro</w>\nfin nish</w>\nsho ck\nðŁĺ Ĳ</w>\ncal eb</w>\ncom a</w>\npe dal</w>\nco re\ncontin ent</w>\nel son</w>\ntemp o</w>\nhelsin ki</w>\nac p</w>\ntack ling</w>\nst ated</w>\nbl a</w>\ndou b\nsma shing</w>\na ja</w>\ncamer on\ndisru ption</w>\nwarm th</w>\nbeing salmankhan</w>\nbullet in</w>\no de</w>\nsyrac use</w>\nar an</w>\nmc gregor</w>\nbul k</w>\nan ton</w>\nconfir mation</w>\nsp ine</w>\nim ran\ninstru c\njac ks</w>\nchi o</w>\npal m\nstr e</w>\nembarra ssing</w>\nun t\nelimin ate</w>\nto ss</w>\nc ise</w>\na ws</w>\noni sts</w>\nsh inee</w>\njo s</w>\nho se</w>\nli vely</w>\nopp onents</w>\nmo vements</w>\nrecogni zing</w>\nsandwich es</w>\nsh akes</w>\nexerc ises</w>\nse at\nprofe ssion</w>\nmerry christmas</w>\nlu gg\nadopt dont\nmar vin</w>\nbyr ne</w>\nun le\nhe t</w>\nku wait</w>\nrah man</w>\naspe ct</w>\nhumb led</w>\ngen es</w>\nf and\nlong time</w>\n) ;</w>\ncam pu\nan gus</w>\nðŁĳį ðŁı¼</w>\nq uran</w>\nsle eves</w>\ns lic\n¸ ë\ntwel ve</w>\nyour e</w>\ni ke</w>\ngo gh</w>\nb st</w>\ndic tionary</w>\nreflec ting</w>\nto on</w>\nyar n</w>\nem bed\nðŁı ´</w>\nre serves</w>\nfloo ded</w>\nver iz\ndu sk</w>\nestab lish</w>\npro li\nau d</w>\nritu al</w>\nor bit</w>\ndeclar ation</w>\nrecor dings</w>\ncam o</w>\ncas sette</w>\ngood luck</w>\ncu tter</w>\nbo p</w>\nb ho\nche ating</w>\npaci fic\nma res</w>\ntim er</w>\ncol t</w>\ntr ous\ntomor row\nhan sen</w>\nci e</w>\nw ang\nban i</w>\ncircu lar</w>\nac ute</w>\nfar mer\nco ys</w>\np se\nir ving</w>\nw j\nhaw kins</w>\nb ison</w>\nur day</w>\ncru ising</w>\no te</w>\nk ath</w>\nwhi stle</w>\nyour selves</w>\nant is</w>\nsla sh</w>\nthorough ly</w>\nke sh</w>\nser ie</w>\nex em\nen ig\nguil d\nsh red\nho gan</w>\nap o</w>\nä ¸\npu zz\nne tball</w>\nau ssi\npanor ama</w>\nws j</w>\nav is</w>\nar ming</w>\nhum ph\nbrow ser</w>\ncri es</w>\nfo ggy</w>\nmat te</w>\nðŁĮ »</w>\nit er</w>\ntal lest</w>\nby ron</w>\ncap tiv\nje su\nany ways</w>\nflag ship</w>\np ton</w>\nwe y</w>\nfay ette</w>\nfinanci al\nf oul</w>\nsolom on</w>\njenni fer\ncucu mber</w>\nar gue</w>\ntex tile</w>\nwrest ler</w>\njohn ston</w>\npa stor\nðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃ\ncac tus</w>\nedi ble</w>\nre served</w>\nric hie</w>\nmet res</w>\ningredi ent</w>\nh ella</w>\nun to</w>\nch ol\ncele bs</w>\npo ets</w>\ngra ham\nhay den</w>\ncoinci dence</w>\nb aw\ncommunic ate</w>\nflet cher</w>\n/ -</w>\ntole do</w>\necu ador</w>\ncoun sel</w>\ns laughter</w>\nline ar</w>\nat p</w>\nos u</w>\njo el\nev ed</w>\nconqu er</w>\nru stic</w>\nplic ity</w>\nrecogn ise</w>\nroom mate</w>\ncr acked</w>\njas per</w>\nph er</w>\nðŁĮ º</w>\nwo ven</w>\nmo ist\nff c</w>\nste ering</w>\nni sh\nstand ings</w>\nfrequ ent</w>\nar di</w>\nhaz el\nas msg</w>\nbau m</w>\nd art</w>\nsi dd\nnat h</w>\nch ero\ncard board</w>\nc ss</w>\nn sfw</w>\npa ir\nðŁĺį ðŁĺĺ</w>\noccur red</w>\nhomeless ness</w>\nmal one</w>\nph e</w>\nxi a\npad dy</w>\ndecl are</w>\ntheat re\nb f\nper sian</w>\nta d</w>\nax e</w>\nsusp icious</w>\nlam b\nmu cho</w>\nsen ior\nst as</w>\nk ite</w>\nst ing\ngra d\nk af\nwat ering</w>\nØ ¯\nspi ral</w>\nth ms</w>\neduc ator</w>\njer ome</w>\nof c</w>\nclo ck\nsu l</w>\npe mb\n.... .....</w>\npark way</w>\nde aux</w>\nrestric tions</w>\nm ons</w>\nneed le</w>\ne j\nle agues</w>\nwater melon</w>\nam an\npl enary</w>\nmax im\nw ab\ncoming soon</w>\nbry ce</w>\nvi gil</w>\nsuper market</w>\nfortun ate</w>\nturquo ise</w>\npresi dent\nli v</w>\ninter ns</w>\nfeel in</w>\nfix tures</w>\nstun t</w>\nst aged</w>\npremi eres</w>\nlo k\nprac titi\nshor tage</w>\nlog ne</w>\nve c\ncon cor\nroc ke\nli g\ncom posed</w>\nsyn thetic</w>\ndi p\ncam ila</w>\nch is\nj ou\nsu san\neye brows</w>\nsupp lement</w>\nsatis faction</w>\nmoham mad</w>\nti bet\nhouse of\npu n</w>\nas sam</w>\nshado whun\npsy ched\nse duc\nmand atory</w>\nher bert</w>\nsc allo\nstream ers</w>\nproto col</w>\nblock buster</w>\nproduc es</w>\nsch nei\nlau rel</w>\ntri be\ntime hop</w>\npl a</w>\nmod elling</w>\ntv time</w>\nmtv stars</w>\nwi dow</w>\nme tric</w>\nch am</w>\ncon do</w>\nflow ering</w>\nale c</w>\nd ms</w>\ninten sity</w>\nÂ ¨\nmccar tney</w>\nislam abad</w>\nk b</w>\nf fi\nph al\nanal og</w>\nf ond</w>\nh acks</w>\npositi vity</w>\ntreat y</w>\nsub marine</w>\nconne ct</w>\nsel en\ncategor ies</w>\ncu b</w>\norgani ze</w>\nsi k\nquote oftheday</w>\nremin ding</w>\nam or\nloc king</w>\nðŁĳı ðŁı¼</w>\ncomp ound</w>\net te\nb out\nrec ur\nfe rence</w>\nmi zz\ntren d\nhip ster</w>\nfor tress</w>\nforth coming</w>\npreli min\no dyssey</w>\nang p</w>\ndel ici\neven ings</w>\nðŁĶ ¹</w>\ni q</w>\nd w</w>\nda ir\nkathr yn</w>\nchristian ity</w>\nmoon light</w>\nha b</w>\nwh oo\nf bf</w>\nse th\ngenu inely</w>\npa x\nchar ity\ndeplo yed</w>\nb nb</w>\nbu cs</w>\nju dg\ncon ge\nplant ation</w>\nim press</w>\ncar a</w>\nsc lub</w>\nsco py</w>\nland ers</w>\ncompla ints</w>\nb ama</w>\nre build</w>\nx y\nreal ism</w>\nsh our</w>\nle in\nbrac elets</w>\nmer a</w>\nassas sin</w>\nan chor\nðŁĳĮ ðŁı¼</w>\nlin en</w>\ncon fron\nchronic le</w>\ncomm ent\ncat alog</w>\nil les</w>\ngor ge</w>\nme try</w>\njung kook</w>\nlove my\nsent in\nse em\nfit ness\nalli ed</w>\nts man</w>\ndigital transformation</w>\npr an\nlo ft</w>\nmin ton</w>\nalden richards</w>\nen vel\ncher ish</w>\ncertain ty</w>\nzz z</w>\nrhin o</w>\nper kins</w>\nen rich\ncape town</w>\nome ter</w>\nsec tions</w>\nske leton</w>\ndef enders</w>\nðŁĺ Ŀ\npen c\nbri t</w>\nja h\ncapital ism</w>\nðŁ¥ ĩ</w>\nbaz aar</w>\nre me\nex t</w>\nkk k</w>\nconver t</w>\nstor my</w>\nb ye\nkar an\nchry sler</w>\nad os</w>\npre ssed</w>\nsyn c</w>\nation day</w>\ndang er\nbad ges</w>\nrefu ses</w>\nem powering</w>\nly m\nex ports</w>\nadoptdont shop</w>\nðŁĩ ¯\nth c</w>\nawa ited</w>\nfocu ses</w>\nfin ed</w>\no at\nhaha hah</w>\nâģ ©\nn family</w>\nfi ona</w>\nluck ily</w>\nthr illing</w>\nty ping</w>\nout break</w>\ndi es\nhe u\ncraw l</w>\nne sses</w>\no ath</w>\nscri pts</w>\ngee ks</w>\nðŁĲ Ŀ</w>\np b\nmathemat ics</w>\nal is</w>\n________ ________\ngymna stics</w>\nacti vism</w>\nrecommend ation</w>\ngre n</w>\nwa in</w>\ncour ty\nn apol\ncau li\nhor nets</w>\ng als</w>\njo ckey</w>\ndir ty\nat ar\nenor mous</w>\npe st\ngreg ation</w>\nan os</w>\nii ii\ndef ends</w>\nblack historymonth</w>\nat x</w>\nmb c</w>\nlugg age</w>\nwit ch\nco b\nla sts</w>\ncu m\ngg g</w>\nba thing</w>\nn ar</w>\nce bu</w>\nðŁį ĥ</w>\nnavig ation</w>\nmin e\nre jo\nðŁİ Ģ</w>\ngif tide\nre ta\nuse less</w>\npu ll\ndefic it</w>\nal lu\nati me</w>\nit v\ntr illion</w>\npu e\nac ies</w>\nproce dure</w>\nl ori\njen ny\nc ad</w>\nul ously</w>\ndr ac\npromo tes</w>\ning the\ncan u\nwoo hoo</w>\nna omi</w>\nzar dari</w>\nts u</w>\nbe ir\nsd g</w>\nle ver\nwe ber</w>\nab ud\nlun d</w>\ncrow ded</w>\ndeplo yment</w>\nter rain</w>\nken ny\nho f\nwitne ssed</w>\nlo ch\nj k\nbul ly</w>\nw ren\npoe try\ndo ff</w>\nww i</w>\nmo red</w>\ndin i</w>\ncul ture\npromp t</w>\nÂ ¥</w>\nmaur ice</w>\nto pps</w>\nr m\ncor respon\nab out\njewel s</w>\ngi br\neag le\nðŁĺĺ ðŁĺĺðŁĺĺ</w>\nl ending</w>\nsou ven\nç Ķ\ncontemporary art</w>\nestabli shment</w>\nj ong\nâĢ¦ \"</w>\ngat or\npatri otic</w>\nmc coy</w>\nv ape</w>\nhuman e</w>\nfeli z</w>\ncoach ella</w>\nre posting</w>\nste als</w>\nfu ller</w>\nn ering</w>\nat ra\n( -</w>\nbla ke\nhe ather\nwor ms</w>\ndiscipl inary</w>\nrede mption</w>\ny ard\nam in</w>\n\" @_</w>\nd nc</w>\nt ds</w>\nk appa</w>\nne wark</w>\ncomm its</w>\nspe ars</w>\nj ams</w>\nt and\nmsn bc</w>\ninter medi\naim ed</w>\nat ic\nteen th</w>\nobserv ation</w>\nkash mir\nkavan augh</w>\nou l\nsan francisco</w>\nre u\nbel ated</w>\ncho w\npass word</w>\nst ills</w>\ndeta ined</w>\nsar i</w>\nday ton</w>\ndar ren\nitali an\nar th</w>\namu sic</w>\nar bit\nw m\nv m</w>\nhe m\ndou g\nmy r\na sho\npre v\nvin d</w>\nbra h\nsta g</w>\nà¸ µ</w>\npre views</w>\ngu k</w>\ncon taining</w>\nleon ardo</w>\nsad dle</w>\nru shing</w>\nst av\nlon gh\ngam bling</w>\nve gas\nreserv ation</w>\nend ale</w>\nbal a</w>\nfl a</w>\nvari ant</w>\nhe dge</w>\nbulgar ia</w>\nnat ali\nwe aver</w>\nsol st\nencoura ged</w>\nap c</w>\nas parag\nne st\ncycli sts</w>\nfe l</w>\nìĬ ¤\noverwhel ming</w>\npey ton</w>\nj it</w>\na post\nmb le\nble eding</w>\nneighbour hood</w>\na very</w>\nexpre ssions</w>\nmac donald</w>\ngi gs</w>\nmon ds</w>\nillu sion</w>\nn ct</w>\ncam ero\nover head</w>\nmy th\nol y\nvi o</w>\net v</w>\nlau rie</w>\nunve iling</w>\npri or\ncon n</w>\niron man</w>\ndi ff</w>\nday in\ncrit ici\ncon go</w>\nre vision</w>\nwal e</w>\ndirec tor\np ines</w>\nblack pink</w>\ngar ner</w>\ncur ated</w>\nmanit oba</w>\nh ac\ncommon ly</w>\nbar ton</w>\n.... #</w>\nmor tality</w>\nlive smatter</w>\nphilos op\nshor ter</w>\ncon vince</w>\nfre ak\nvend ors</w>\ninsi ghtful</w>\nel ly</w>\nsens ors</w>\ne led</w>\ns berg</w>\nweight loss</w>\nu kip</w>\nsp ur</w>\npriv ate\nqu a</w>\nss c</w>\n, ...</w>\nsupervis or</w>\nadvis er</w>\namaz ingly</w>\nless er</w>\nat es\nmah on</w>\noooo oo</w>\nsar as\npmo india</w>\nwaff le</w>\nun ders</w>\ntoler ance</w>\nsculp tures</w>\nher sh\nkno cking</w>\nsmo ke\ncathol ic\ngri m\ntra veled</w>\nfli p\nge off</w>\ndinosa urs</w>\nsle pt</w>\nscar let</w>\nok i</w>\ncompla int</w>\nob sc\nnam i\nla g</w>\ncross fit</w>\nu fc\nmc cain</w>\nrefe ree</w>\nsad ness</w>\npen ny\nli eu\nmo de\nki er\nvol s</w>\nw is</w>\nel on</w>\nshe a</w>\nba o</w>\nson ia</w>\ncla ire\nem manuel</w>\nmoist ure</w>\ndi gest</w>\nvi ii</w>\nt eller</w>\nch on\naccess ory</w>\nnight club</w>\nfoss il\naw an</w>\nhu sky</w>\nab original</w>\nbrand on\nffici ent</w>\ncou gars</w>\nste d\nad mitted</w>\nigno red</w>\ncontent marketing</w>\nag as\nv ase</w>\nexecu ted</w>\nnegoti ations</w>\nshe ad</w>\nn and\ntab lets</w>\ngo th</w>\nts al</w>\nd fw</w>\non ep\nprotec tor</w>\nsp ho\ngaz ette</w>\nandre as</w>\nss er</w>\ncomp ilation</w>\nha v</w>\ncontain ers</w>\nbro ker</w>\nsoc al</w>\nporcel ain</w>\nhy uk</w>\nair ing</w>\nðŁĴ °\npubli sher</w>\nscen ario</w>\nspart ans</w>\nre viewing</w>\nitu des</w>\ned el\npear son</w>\nba sh\nmau i</w>\na ad\nðŁĮ Ĭ\nli u</w>\nul ate</w>\nprogram mes</w>\nfav our</w>\nweb design</w>\nreal ty</w>\nmotiv ational</w>\ncro sses</w>\n' ...</w>\nbus ch</w>\nadjust able</w>\nar jun</w>\nmist ak\ndimen sion</w>\npi stol</w>\nweigh s</w>\nen y</w>\nunve il</w>\nindy car</w>\ngor don\nf ade</w>\nfran ken\nqual ities</w>\nbet t</w>\nloc ate</w>\nker r</w>\nsp c</w>\nconfu sion</w>\nne e\nluck y\nbas es</w>\ndep ends</w>\nfire fighter</w>\nol a\nre t\nmar oon</w>\nðŁĶ Ĭ</w>\nw am\ndefin ing</w>\nwhe at\nbi l</w>\nÃ© s</w>\nb hai</w>\npsy ch</w>\nta u</w>\nic ans</w>\nthi k</w>\nob ile</w>\ninspec tor</w>\nìĨ Įë\nill on</w>\ngo s\nev angel\nfa i\nsi st</w>\nvoc ation</w>\nbur ge\nchi stan</w>\nrenew ed</w>\nenthusi asm</w>\nen ting</w>\nag ri\nike a</w>\nm sc</w>\naero space</w>\nsens iti\nmemo ir</w>\nhosp ice</w>\nco caine</w>\nder ry</w>\nmechan ics</w>\nĦ à¸\ntin o</w>\nreduc es</w>\ncollec tors</w>\nin justice</w>\nsupp re\nv ana</w>\nab un\nnap a</w>\nsu sa</w>\nos lo</w>\ne ff\nen core</w>\nlic ence</w>\nched dar</w>\nz al\nmoun t\nðŁĴ Ĳ</w>\nthreat ens</w>\n!! \"</w>\narchi e</w>\nfu tsal</w>\nscu ba</w>\njo s\ngn on</w>\nse xi\ns official</w>\ncompar ing</w>\ndomin ant</w>\ntof theday</w>\nfa it</w>\npropos als</w>\ngi ft\ny as</w>\ncn c</w>\nl r\nha b\nreser voir</w>\nbeli efs</w>\ngener al\nmar ti\nt d\nest e</w>\nì ł\nwi l</w>\nðŁĳ ¯</w>\nðŁĶ «</w>\nsp x</w>\net work</w>\nexcer pt</w>\ne instein</w>\nhir o</w>\nsil hou\nteam ed</w>\nper ception</w>\ncorri dor</w>\nmental health\nhin ts</w>\nben ny</w>\ninduc ted</w>\nsw x</w>\nwi desp\nspe ak\ncher yl</w>\ndru g\nðŁĺ ķ</w>\nh f</w>\nasparag us</w>\nmyster ies</w>\nfitz gerald</w>\noff er\ntherap ist</w>\ncare er\ndam aging</w>\nts d</w>\nper u\nwei bo</w>\ny ay\nphoeni x\ndisc re\nmac book</w>\nbar ker</w>\nstig ma</w>\nsp read\nroc kies</w>\nkang ar\nbri dg\npa i\nbi shop\nta iled</w>\ncapsu le</w>\nðŁĴ ĵ\nge of\nroy ale</w>\nshort listed</w>\no ste\nash amed</w>\nch app\nkey e</w>\ncl a</w>\nscreen shot\naustri an</w>\nnati ve\nen ight</w>\njuli et</w>\nmichel e</w>\nðŁĮ ´\ntravel ers</w>\npi l</w>\nfootball er</w>\nwin chester</w>\nðŁĻ Ħ\nazer bai\ngold eng\norganis ations</w>\ninterpre tation</w>\npredat or</w>\nofthe week</w>\nlo gan\npok Ã©\nmari e\ncal la\nt nt</w>\ncin de\nge tic</w>\nfit fam</w>\ngra v\now ens</w>\nðŁĮ ±</w>\nshoot out</w>\nsal is\ncommissi ons</w>\nco he\np tic</w>\nni xon</w>\nhi a</w>\namb ition</w>\nmar ine\ncruel ty</w>\nt k</w>\ncru de</w>\nsal ty</w>\njim a</w>\nmon go\nir ony</w>\non wards</w>\narre sts</w>\nstrang ers</w>\nig er</w>\ncycli st</w>\nra g</w>\nexten ds</w>\ntra dio</w>\nbour g</w>\nmo i\nel la\ne able</w>\nlex us</w>\nau l\nder a</w>\nhistor ian</w>\nmor ton</w>\nti ff</w>\nman ner</w>\nko t</w>\nd k\npo inted</w>\nmar qu\na an\nen ey</w>\ndu blin\non poli</w>\nem ili\nsecre t\nfl o</w>\nâļ ¡</w>\nba j\nste ep</w>\naccompan ied</w>\nrum ours</w>\ndev i</w>\npurch asing</w>\nfi g</w>\npu b\nsch oo\nautonom ous</w>\ngo alie</w>\nx ia</w>\nautom atically</w>\nre vers\nter o\nfu ku\ntitan ic</w>\nshoo k</w>\nsand als</w>\nsee kers</w>\nexc av\nnor dic</w>\nbigo live</w>\nba ke\nr att\nz ak</w>\nne p\nðŁĺ ¤</w>\ncand y\nbilli ons</w>\nbook worm</w>\npp et</w>\nà ³\nsur faces</w>\nsc ars</w>\nphil ip\ndo gg</w>\nci gars</w>\nco te</w>\ntransl ated</w>\ncur ator</w>\nsin dh</w>\nhan gover</w>\nbre wer</w>\non es\nel ton</w>\nðŁĴª ðŁı¼</w>\nmar cu\nelli ot</w>\nrigh te\ndi oce\nru ss</w>\nrail ways</w>\ngrand son</w>\nas cen\napo logy</w>\nawa it</w>\nmob ili\nre spir\nparti san</w>\noli vi\nstri ke\nyo o</w>\nwhite house</w>\nexpre ssed</w>\npu ps</w>\nbed ford</w>\ncul tur\nfro gs</w>\nfly ing\ncav ali\nc ds</w>\nfri ger\nstreet photography</w>\nre solve</w>\ntali ban</w>\nkan g</w>\ncru shing</w>\nju m\nðŁĺ Ĵ\nwilliam son</w>\ntan g</w>\ncur ly</w>\nt man</w>\nveter an\nfa ire</w>\nartificial intelligence</w>\nun anim\npre n\nback drop</w>\nfr ances</w>\noc cer</w>\ndoro thy</w>\nwork ing\nar thr\nconver ted</w>\nday light</w>\nserv ant</w>\npad dle</w>\ncompla ining</w>\nthir ty</w>\nnad al</w>\nak u</w>\nibra him</w>\nad dressed</w>\np iss</w>\ngreen house</w>\nbatt alion</w>\nsi mulator</w>\nout lets</w>\nembroi dery</w>\nðŁĵ ±</w>\nfis cal</w>\nger ard</w>\nsas sy</w>\nðŁİī ðŁİīðŁİī</w>\nvent ures</w>\nmer it</w>\npublic ity</w>\nðŁĳ Ī</w>\nsophistic ated</w>\nc tu\nconven tional</w>\ncondol ences</w>\nisra el\ntra dition\nar an\nte ss</w>\ngla d\nðŁĺĬ ðŁĺĬ</w>\ncorrec tion</w>\nge on\nam d</w>\nor ship</w>\nbe ast\nch ment</w>\nì ŀ\nnic o\nwk nd</w>\nwel s</w>\ncushi on</w>\nbeli e\nvo c</w>\nidio ts</w>\nunder neath</w>\npu ma</w>\ncorn ell</w>\nen ation</w>\nlu l\nswa ch\nab ig\nu rer</w>\nmi e\nform erly</w>\nca f</w>\ner nal</w>\nchor us</w>\njuli us</w>\nsen ator\nâľ į\nwh ir\nsalv ador</w>\nph d\nuni fied</w>\nboo ster</w>\ngraph ical</w>\nw rec\nson ny</w>\nmi z\ndere rs</w>\ns all</w>\nven s</w>\ntusc any</w>\nwi d</w>\ny ong</w>\nkur ds</w>\nw az\ntrol ls</w>\nmac ro\ncat urday</w>\npre ssing</w>\nsa sha</w>\ncent ennial</w>\ngu sts</w>\nem c\nbe fore\nden ise</w>\ncu st\nðŁĵ ¢</w>\nlo oo\nbase l</w>\neng land\ny olo</w>\nar du\nmanife sto</w>\ndo ha</w>\nì ľ\nkni ves</w>\nbourne mouth</w>\nbi bl\nbar b</w>\nal icia</w>\nØ ©</w>\ncom er</w>\ncycl one</w>\ng it</w>\nane ws</w>\ncharacter i\nvent ura</w>\nin tra\nsf giants</w>\nhu t\nbe a</w>\ndar win</w>\nell er\nal v\nre ese</w>\nbl y\nkar an</w>\nconclu sion</w>\nman ny</w>\nfla kes</w>\nunite blue</w>\nnad u</w>\nco pp\ned ges</w>\nlanca shire</w>\ni als</w>\no tta</w>\nphilipp e</w>\nl ent\nche e</w>\nment ors</w>\nfesti val\nan ism</w>\ncompli mentary</w>\nr j</w>\npu g\nd ine\nwe i</w>\ncli ffs</w>\nsar my</w>\nti veness</w>\ntreas ury</w>\nil and</w>\nafter math</w>\nrabb i</w>\nou n</w>\nbou quet</w>\nherit age\nzi on</w>\nsur render</w>\nshen an\nin ks</w>\nkar l\ngh ty\npol icing</w>\nexam ination</w>\nce y</w>\nper su\nmeasure ment</w>\nhydro gen</w>\nlu han</w>\nâłĢâłĢ âłĢâłĢ\nwar i</w>\nÐ¾ Ð\nj y\nfow ler</w>\nmis h</w>\nal fre\nâĺ ĳ\nbb naija</w>\ncat alogue</w>\nrecogn ised</w>\nsa ver</w>\nhu skies</w>\ncol in\nmun do</w>\nsi va</w>\np ng</w>\ndiscoun ted</w>\nman utd</w>\nfre sno</w>\nde vin</w>\nprelimin ary</w>\ntro phies</w>\npla stics</w>\ndu g</w>\npro cu\nindi go</w>\ng ard</w>\ndy lan\npit ches</w>\nground breaking</w>\nin son</w>\nbl ac\nan thology</w>\nf h</w>\nexpl ic\nr ard</w>\nadmi ral</w>\nso chi</w>\nla shes</w>\nsplen did</w>\nen vy</w>\nad v</w>\nsex y\nfestiv ities</w>\nstic king</w>\nbi b</w>\nthr ill</w>\nop p</w>\nari el</w>\nbotan ical</w>\nendur ance</w>\nfe males</w>\nbr icks</w>\nvat ican</w>\nblack pool</w>\nber mu\nbr ough</w>\nroll er\nbi d\nsue de</w>\nsloven ia</w>\nmm ing\nml b\nmed alist</w>\ndi ans</w>\nrehabil itation</w>\nne on\ns go</w>\nli thu\nram os</w>\nz ed\npi anist</w>\ninten sive</w>\nbroad band</w>\nstu dy\npeter sburg</w>\nlu ca</w>\nah hhh</w>\nphys ician</w>\ndill on</w>\ntele com</w>\ngri ef</w>\nmu n</w>\nac ro\nsi ded</w>\ns ly</w>\nblo ws</w>\nclassic cars</w>\ntri um\nar gy\n? :</w>\nh ri\nmarsh mal\nâĢ ĵ\nto pping</w>\nwar saw</w>\ntran sc\npreserv ation</w>\nb av\nre friger\nexperim ents</w>\nä º\ngl it\nsli ga</w>\ng age</w>\nfac tor\nflav ours</w>\nbr ony</w>\nsp o</w>\ncook book</w>\ncarri age</w>\naw ay\nny fw</w>\non ian</w>\nw g\nsimp sons</w>\nro lex</w>\nðŁı ¿</w>\ncro sby</w>\nãħ ¤\ncre di\nsyn dic\npu bs</w>\nali fe</w>\npoor ly</w>\nmac ed\nðŁĺ ŀ</w>\nbehin dthe\nw enger</w>\nn ats</w>\nðŁİ Ł</w>\nrubb ish</w>\nprocedu res</w>\ntypho on</w>\nopho bia</w>\ner do\nfu el\nvi era</w>\nbu mps</w>\nmillenni um</w>\nnew zealand</w>\nlec tures</w>\nit on</w>\nmil ky</w>\nrespon ded</w>\nê °\nlandsc ape\n.. @</w>\nbo ther</w>\nâĸ ¶</w>\nz hang</w>\nhuawe i</w>\ntu ition</w>\ns worn</w>\nin u\ny or</w>\npa olo</w>\nau ditions</w>\nab il\nmalay sian</w>\nho ps</w>\nfe athers</w>\nmp le</w>\nau ts</w>\nÃ£ o</w>\nboun ty</w>\nic he</w>\nì ĺ\nsh q</w>\npin ot</w>\nge ars</w>\ndisapp ear\nvideo games</w>\nt na</w>\nalzheim er</w>\nðŁĮ ŀ\na ji</w>\nunder wear</w>\nswit ching</w>\nsign age</w>\no scar\nec on</w>\ndro w\ncl int</w>\npl ated</w>\ngun dy</w>\nemb lem</w>\nho es</w>\nici st</w>\nnel ly</w>\njuni or\nroad show</w>\nminer als</w>\nat le\nalexand ria</w>\nac claimed</w>\nv ell\nshi va</w>\nad he\nen ne\namne sty</w>\nh ounds</w>\ncouncill or</w>\nðŁĴ ¦\naes the\npart nering</w>\ninflu enced</w>\nmag no\nfl are</w>\nextin ction</w>\ncivil ian</w>\nmaje sty</w>\nva il</w>\nlaw makers</w>\nrac ks</w>\nmc c</w>\nori an</w>\nsp ices</w>\ner rors</w>\nmay er</w>\nco ca</w>\npa i</w>\ns ooooo</w>\nreti ring</w>\nba thro\nðŁĻĮ ðŁĻĮ\nâĸ ª\nsu f\nendor sement</w>\nbuil ding\nbroo ch</w>\npal la\narvin d\nag ent\nkar ate</w>\nr hi\nc tv\nta ine\num m</w>\nba x\nreig ns</w>\nuni of\nenterpri ses</w>\nadel e</w>\nfla ke</w>\nat tire</w>\nbru ce\nba hamas</w>\ngra vy</w>\nsa in\nche ek</w>\ntri vi\nlo v</w>\ne en</w>\nbb lo\nlady gaga</w>\nitt a</w>\n. \"-</w>\ndu stin</w>\nobserv atory</w>\neigh th</w>\nbloom berg</w>\nkh s</w>\nf cc</w>\ngi st</w>\ncommemor ate</w>\nve er\nsexu ality</w>\ned c</w>\nnic ole\nvac ancy</w>\nu ser\nson a</w>\n:' (</w>\ndipl oma</w>\nt end</w>\nup grades</w>\nÅ Ł\njura ssic</w>\ncardi ac</w>\ndr s</w>\nwidesp read</w>\nÃ ł</w>\ndail ies</w>\nvend or</w>\nsim plicity</w>\nwi der</w>\nlen ses</w>\nsupp lements</w>\nde pos\nob served</w>\nvin es</w>\nparti ally</w>\nrenew al</w>\ncollabor ate</w>\nali g\nfin ity</w>\nph u\nzz y\npe tit</w>\nðŁĵ ħ</w>\nz in</w>\ni gu\nsm ack\nfall on</w>\nðŁĵ £</w>\nback wards</w>\ncomp onent</w>\no so</w>\ncompati ble</w>\nbin ding</w>\nzur ich</w>\nthom e</w>\nw ounds</w>\nly ric</w>\nfresh men</w>\nsne aky</w>\nfi bro\ndi et\nemplo yer</w>\nin sect</w>\nh ated</w>\nsch er</w>\nraz or</w>\nn sw\nboo ker</w>\ncalifor ni\nav fc</w>\nÂ °\npreten ding</w>\npep si</w>\nal is\nun titled</w>\nk art</w>\ngrand parents</w>\ne the\no ck</w>\nlux emb\nvisu als</w>\nsmall business</w>\nabdul lah</w>\nmin ho</w>\nsu baru</w>\nh ra\nreve aling</w>\nheart breaking</w>\nclar ity</w>\nam g</w>\nsl r</w>\n** **\nâŀ ĸ\nrecor d\nici ary</w>\nmin ded</w>\nye h</w>\nexce ssive</w>\nknu ck\nicec ream</w>\ntru th\nev ic\nta stic</w>\nant arc\nren dering</w>\n, ,\nmit t</w>\nloren zo</w>\nst patrick\nbound ary</w>\nzi g</w>\nvo cab\nosa ka</w>\nfur n\ntu n</w>\ngu l</w>\ns ounding</w>\nblo gger\nutter ly</w>\ng af\nadv ancing</w>\nl cd</w>\nmar gin</w>\nlifel ong</w>\nsolst ice</w>\nsh ra\nwa its</w>\nple ar\nbre ach</w>\nen ligh\nad er</w>\nitt le</w>\nc ation</w>\nho on</w>\nstu died</w>\n?? ???</w>\nk ash</w>\nev angeli\nps l</w>\nwei ghts</w>\nmet als</w>\nty res</w>\ntur no\nwi e\ncar b</w>\ng ale</w>\nse al\nsun ite</w>\nam ic</w>\npatter son</w>\nÃ¡ n</w>\neu ph\nup stairs</w>\nquali fiers</w>\nkhali fa</w>\napple music</w>\nìĨĮë ħ\nvau ghan</w>\nal ter</w>\ncru iser</w>\nmu a</w>\nt ana</w>\nkat rina</w>\nid ols</w>\nspo iled</w>\nsecre tly</w>\nfi bre</w>\npart nered</w>\num es</w>\ngi ov\ncom et</w>\nscreenshot saturday</w>\nk eller</w>\nfil tr\nfe t\ncon way</w>\npe u\nbad minton</w>\ngi d</w>\nm ound</w>\ndon key</w>\nbu ff</w>\nlea ther\nlar gely</w>\nbro ch\nint ments</w>\nam use\nr k</w>\nsto ve</w>\nimpac ted</w>\ncon t</w>\ncr acks</w>\nprison er</w>\nbar i\ncontrac tor</w>\nori oles</w>\ndomin ate</w>\npol ar\nam elia</w>\ndr c</w>\nðŁĳĮ ðŁĳĮ</w>\nvi st</w>\nsu arez</w>\ninjec tion</w>\nblo oms</w>\nðŁļ¨ ðŁļ¨</w>\nsti ff</w>\npay pal</w>\nsno wing</w>\nthur sdays</w>\ngoo se\nwe dge</w>\neduc ated</w>\nweak ness</w>\nde cker</w>\nabud ha\nbree zy</w>\nÛ Į\nhope ful</w>\no bi\nrai der</w>\ngh am\nde u\nse ve\npar tly</w>\nfu t\ninfu sed</w>\nmer ri\nthan e</w>\nsome time</w>\nhu e</w>\nme in</w>\ncre dit\nsli ding</w>\nran de</w>\ncher ry\ndead pool</w>\nsh ol\nar am</w>\nunder wood</w>\nsky e</w>\ndistur bing</w>\nm nt</w>\npoli shed</w>\nguardi ans</w>\nha dn</w>\npic asso</w>\nari us</w>\nak shay\nir ri\nj h</w>\nhapp en\nla kh</w>\ndal ton</w>\nat the\ns well</w>\nmar sha</w>\nre h\ncour s</w>\nj kt</w>\ntop us</w>\nserv ice\nr ink</w>\nhack ers</w>\ndono van</w>\nhor o\ntc m\nmay hem</w>\ncha se\ndev ops</w>\nken sing\nsc up</w>\nsh ere</w>\nquali fication</w>\nc live</w>\nton g</w>\nn ancy\nmar is\nder dale</w>\nber man</w>\ncinde rella</w>\njol ly</w>\nci c</w>\nloo t</w>\ncollecti bles</w>\nhom icide</w>\ng ge\nepide mic</w>\nsu ites</w>\nmu ddy</w>\ngi mme</w>\ne rec\n- *</w>\ntal la\nlis le</w>\nembro ide\nðŁĩ© ðŁĩª</w>\nveriz on</w>\nve ctor</w>\nbe anie</w>\narti san</w>\nga in\nflo res</w>\nvi gil\nu so</w>\nðŁĻı ðŁı½</w>\ngrin ding</w>\ngh er\nair ports</w>\nrespon sive</w>\nshaf t</w>\ncan cel</w>\nceremon ies</w>\ne me</w>\nat ari</w>\nbru shes</w>\neag er</w>\nbo hemi\nchildren s</w>\nyan kee</w>\nma a</w>\nsuspen se</w>\nmor an</w>\nmac ar\nsun flower</w>\ncre w\nvo id</w>\nke ar\nfashi oned</w>\njen nings</w>\nsunday funday</w>\nsub missions</w>\nme ad</w>\nher man</w>\nwa i</w>\ncrit ically</w>\nle um</w>\nbaek hyun</w>\nfor cing</w>\nco bra</w>\nãģ ®\nacqu ire</w>\nal k</w>\nge ology</w>\npri mar\nimport antly</w>\nire z</w>\nbunde sliga</w>\ncuri osity</w>\nsen a</w>\nstric t</w>\ncon soli\nwin ters</w>\nven om</w>\nchelten ham</w>\nðŁį º</w>\ncen a</w>\nt at</w>\nba in</w>\nglo ver</w>\nunder cover</w>\nas ses</w>\ncar n\nmemorial day</w>\nam eli\ni rene</w>\nch on</w>\nsyn thesis</w>\nspe edy</w>\nmitsu bi\nsla yer</w>\ncompos ite</w>\nunder stands</w>\npe w\ninter rup\nhen ri</w>\nmor row</w>\nan om\nthof july</w>\ng lee</w>\nthre e\nðŁĺ ®</w>\nand hi</w>\nch att\nrenew ables</w>\nye s\ntrans fers</w>\n!!!! !!!!</w>\nbab u</w>\ndu ter\nlo ops</w>\npe ers</w>\no ilers</w>\npau lo</w>\nic ation</w>\nh mu</w>\nwar a</w>\nmer cer</w>\nhom eland</w>\nfu ji</w>\nale y</w>\nyear book</w>\nre m</w>\nre en\nab sur\nbo is</w>\n] :</w>\ncaes ar</w>\nshot gun</w>\nkur dish</w>\no ren\nra e\nanci es</w>\nty pic\nf h\ndef ault</w>\nre plic\nlu k</w>\ntrans actions</w>\nr ys</w>\ninfan try</w>\nðŁį ¾</w>\ncho w</w>\nchick ens</w>\nba gh\nwy att</w>\nay e\ngg i</w>\nbre ws</w>\ned itions</w>\nmi ra\ncommen cement</w>\npre su\nperis cope</w>\nic hi\nguatem ala</w>\nzam bia</w>\npain ts</w>\nwit ches</w>\nwan i</w>\nun dere\ncro y\nvo ws</w>\nus mc</w>\nhear ted</w>\ntheat res</w>\nshu ffle</w>\nle vel\nmul tic\nsquee ze</w>\nfer n</w>\napp et\npost al</w>\nmal t</w>\non board</w>\nld nt</w>\nco o</w>\ns sc\nk ac\nðŁĺ ĩ\nsc rap</w>\nmar cos</w>\ndeal ers</w>\nann u\nmill er\nco ve\nul ary</w>\nvladi mir</w>\nbe ef\nth ur</w>\npick led</w>\nse same</w>\nbengal uru</w>\nmo tt</w>\nkathle en</w>\nhi st\nno tor\ndr ank</w>\ndu chess</w>\nsnow fall</w>\ne ff</w>\ntin y\nj n</w>\nsy our\nspeci alists</w>\nscot us</w>\nbay lor</w>\neve rest</w>\nmali bu</w>\npre m</w>\nharm ful</w>\nl ali\nb ates</w>\ng ye\ndifferen ti\nand ra</w>\ngeome try</w>\nel over</w>\nblack out</w>\n== ==\nko ta</w>\ninter act</w>\nasi an\nla yo\nsamu rai</w>\nfi del\nexhau sted</w>\ngla di\npd t</w>\nspher ic</w>\nanti qu\nguit ar\nstu ri\nho pper</w>\nang le\nf ills</w>\nsla p</w>\nmi th\nrod ney</w>\nong i</w>\nin som\npre venting</w>\ncassi dy</w>\nap ho\nore gon\nlo in</w>\nham mond</w>\ncontribu ting</w>\nf n</w>\ngar ri\nori on</w>\ncomp elling</w>\nescap ing</w>\naim ing</w>\nplu mb\nbi stro</w>\nbe asts</w>\nconcer ning</w>\nbo e</w>\ndo pp\nshop local</w>\nstumb led</w>\nâĤ ¹</w>\nnaz is</w>\nâĢįâĻĤ ï¸ı\ngest ure</w>\nwar ts</w>\nus open</w>\nhi ggins</w>\nchar li\nhang s</w>\nbom bers</w>\n° :</w>\nfe eds</w>\nc ch\nst il\nnic ola</w>\nðŁĵ º\nclam ation</w>\ntro pic\naf ro</w>\nou k</w>\nexpen ses</w>\nder rick</w>\nal ine</w>\nfa w\nreg ard</w>\nim er</w>\nsat in</w>\nthi um</w>\nry der</w>\npear l\nte ss\nmm mmm</w>\nsen ses</w>\nðŁĩ ¹\npositi ve\nexhau st</w>\noccu r</w>\nnor ris</w>\nlil ly</w>\nis les</w>\ndirec ting</w>\nyo fficial</w>\ncount less</w>\nsam ar\non stage</w>\nflo ck</w>\nmir rors</w>\narch er</w>\nmo i</w>\nk d\nvi v\nin os</w>\nsi kh</w>\nle i</w>\nsen sory</w>\nbr its</w>\nkno x</w>\nchest nut</w>\nop y</w>\ncoli seum</w>\nz af\ndi vin\nadap ter</w>\n:) ))</w>\ntem ple\nku n</w>\nhel mets</w>\nt df</w>\ngu ide\nm old</w>\no ids</w>\nlu ther\nhe is\nmonaster y</w>\nsp ree</w>\nk lu\nbrit ney</w>\njagu ars</w>\ngre ats</w>\nc cc</w>\nky rie</w>\nmachin ery</w>\ncric ket\nre ro</w>\nab o</w>\naspir ing</w>\nsemi finals</w>\nale ss\nsig natures</w>\nvar d\nme th\nher bal</w>\nhol den</w>\nking dom\nap or\nreg gie</w>\nore o</w>\npalestin ians</w>\nem mys</w>\nsec tional</w>\nro i</w>\nney mar</w>\nqu el</w>\ncu ll\nl ka</w>\nhaz el</w>\nestim ate</w>\nul ties</w>\ngo w\nbe a\npurch ases</w>\nbel ts</w>\nprotec ts</w>\nm Ã©\ngue ssing</w>\nbb o</w>\nclau dia</w>\nfr acking</w>\njon ny</w>\nel k</w>\ncel tic\nal mighty</w>\nra je\ncourty ard</w>\nig i</w>\ncan es</w>\nðŁĴª ðŁı»</w>\nbank rup\nle thal</w>\nâľĮ ï¸ı\ngraphic design</w>\nvad er</w>\npenc ils</w>\nrough ly</w>\ndan te</w>\nm fg</w>\nconst ell\ncam el</w>\nj b\nbloss oms</w>\nen to\nbalo chistan</w>\ncine mato\nill ard</w>\njer sey\ncon sent</w>\ndent ed</w>\ncon templ\nsch er\nhol i</w>\nlou gh\nst our</w>\na yo\nbegin ners</w>\ncur b</w>\nv hs</w>\na jax</w>\ndu ff</w>\nav eng\ndom est\ncommit ting</w>\nai red</w>\ncha p</w>\nhedge hog</w>\ndisappo inting</w>\nfreel ance</w>\nin land</w>\nchar ms</w>\nðŁĺį âĿ¤ï¸ı</w>\nai sh\nm x\nbuck le</w>\nti dal</w>\nper mit</w>\nbo ating</w>\nra cha\nkend rick</w>\nb ello</w>\nb hi</w>\nple a</w>\nestim ates</w>\nl b\napo logies</w>\njay a</w>\nbb l</w>\nast oni\ninter state</w>\nmain taining</w>\nel bow</w>\nmu p</w>\nep it\nðŁĺ ¡\nviol ations</w>\ndef end\nbe h\nsl c</w>\nam ir</w>\npur i</w>\nti um</w>\nfi fa\nblur ry</w>\nscri m\nðŁĻı ðŁı¾</w>\nma ple\nrel atives</w>\nâĺ Ŀ\ncho c</w>\ncon nor\nâľ¨ âľ¨</w>\nwhi sp\nlist ings</w>\nma ze</w>\nthan king</w>\nri dd\ngrass roots</w>\nshi fting</w>\ndesper ately</w>\ngor illa</w>\nden i\nju les</w>\nstra th\ng ley</w>\nja in</w>\nbu ick</w>\nt anner</w>\nðŁĴ Ŀ</w>\nga e</w>\npri m\nit ors</w>\nn ano</w>\nsepar ation</w>\narmen ia</w>\nbor deaux</w>\nðŁ ħ\npj net</w>\nbu rial</w>\ne bon\nglo ss</w>\nre new</w>\ngri er</w>\nspe eds</w>\ncomic books</w>\nsym boli\npur poses</w>\nãħł ãħł\nspati al</w>\nno table</w>\nci on</w>\nn ps</w>\nho ffman</w>\nnor man\nrt g</w>\ndu sty</w>\nsitu ated</w>\ntr an</w>\nk fc</w>\nem en</w>\nnic kel</w>\nhast ings</w>\nsett ling</w>\ngr it\nl ena</w>\nw aw\nart s\ngu m\nca regi\nle wis\nsapp hire</w>\nrememb er\nembed ded</w>\nt lc</w>\nbl at\nserge ant</w>\nel sa</w>\nboot camp</w>\nbow man</w>\nphoto graphic</w>\npill ars</w>\ndirection ers</w>\nclassi fied</w>\nno is\nve er</w>\nbarre ls</w>\nwh oop</w>\nðŁĺ± ðŁĺ±\nfe male\npetro leum</w>\nmedi a\ne fc</w>\npokÃ© mon</w>\nà¤ ķ</w>\nenthusi astic</w>\nvar un</w>\npro files</w>\npedi atric</w>\nacci dents</w>\ncon rad</w>\njan g</w>\njo jo</w>\nac or\nob server</w>\nl f</w>\nlive stock</w>\nfor gi\nfo s</w>\nel m</w>\nan and</w>\ngo e\nc ere</w>\navoi ding</w>\ngri t</w>\nom an\nthank fully</w>\nscat tered</w>\nnick y</w>\ncylin der</w>\nchees y</w>\ndi ver</w>\nmahe sh</w>\ncav es</w>\near liest</w>\nqu inte\nsubjec ts</w>\nb end\ngul f\nvocali st</w>\nglu e</w>\npat ches</w>\nun stopp\nsny der</w>\ndemonstr ating</w>\npi o</w>\nhor ns</w>\nwic kets</w>\nand the\nr ama</w>\nyo on</w>\nstra ight\nbed time</w>\nor ang\nbul lets</w>\nsa urus</w>\nmin ers</w>\ninci dents</w>\n! ...</w>\nðŁİ ¸</w>\nag ers</w>\nhand les</w>\nstat es\nin ity</w>\nd ons</w>\nincredi ble\nemin em</w>\navi v</w>\nru dy</w>\nmoz art</w>\nfolk lore\nappli ances</w>\nmt l</w>\nfre y\ndi as\nhu a</w>\npage ant</w>\nstri ve</w>\nim prison\nbul lish</w>\nr ana</w>\nal erts</w>\nbb mas</w>\nhy per</w>\nderby shire</w>\nre cre\nre dd\ndebor ah</w>\ncosmo s</w>\nlaw son</w>\nmel anie</w>\npsy cho</w>\nho or\ndoo dles</w>\nsni per</w>\nshad y</w>\nman tle</w>\ncanadi an\nnew year\ninter actions</w>\nsepar ated</w>\ncor ds</w>\nspiritu ality</w>\nap u\nit o\np ct</w>\npel osi</w>\nrebel lion</w>\nse iz\nwor cester\nsec tors</w>\nul i</w>\nsan ta\nÐ µ\nðŁĩªðŁĩ ¸</w>\nbi ased</w>\nclass ical\ngam ma</w>\ndee plear\nemer ge</w>\nback er</w>\nsur ance</w>\nhand crafted</w>\nðŁİ ¥\nfranc is\nmill an</w>\nic i</w>\ncro wn\nwo w\nstri ped</w>\nun fair</w>\nrelax ation</w>\n³ ï¸ı\nembrac ing</w>\nshe alth</w>\npale o</w>\nmartin i</w>\ndist illery</w>\nwr ink\nor k\nna th\nhay ley</w>\ncour thouse</w>\nsi ber\nsa di\nquiet ly</w>\nmel t\nm sm</w>\nme h</w>\nsmart phones</w>\nrel ent\npp ing\nwar wick</w>\nco logne</w>\ngli a</w>\ncot ton\npro g</w>\nlon e\nip sw\nstar ters</w>\nexpan ds</w>\nu mp\nsu ed</w>\nski pper</w>\ninfe ctions</w>\ning le\nÃ ¡</w>\ncler k</w>\ndemonstr ate</w>\nac ar\nðŁĺĤðŁĺĤ ðŁĺĤ\nti bet</w>\nbun s</w>\nalo m</w>\ndemol ition</w>\nssi a</w>\ng st</w>\n[ ]</w>\nso ar</w>\nâĺ Ģ</w>\nðŁĺ ª</w>\nðŁĵ Ĭ</w>\ndee pest</w>\nbeyon d\nare t</w>\natt ends</w>\nactiv ated</w>\ndi mit\nâļª ï¸ı\nhigh lighted</w>\nmagaz ines</w>\nrum or</w>\naz za</w>\nsteph ens</w>\ndol ph</w>\nsho ckey</w>\nmat s</w>\nwe av\nmel an\nserv ers</w>\ntra um\nku sh\næ Ĺ\nbab ys\npa z</w>\na al\nla use</w>\nbreak ers</w>\ncanter bury</w>\nul ture</w>\nmi ri\neuro s</w>\ntane ous</w>\nimpre ssions</w>\ndu tch\nil d\ngh i</w>\npur due</w>\nadequ ate</w>\nl p\nsy ner\nang ler</w>\ndu rable</w>\ngal ore</w>\nro wn\nmg mt</w>\nðŁĵ Į</w>\nlu cia</w>\nâĺĳ ï¸ı</w>\nzay n\nbor row</w>\n. (</w>\nnorth umber\ncru sh\neng a</w>\nsu sh\nextra vag\nt out</w>\nma hal</w>\nali stic</w>\nther mo\ngall eries</w>\nes se</w>\nchi bi</w>\nattrac tions</w>\nlex ington</w>\nlegislat ure</w>\ndocu mented</w>\nresi den\nbrow nies</w>\nw f</w>\nst ool</w>\nplan ets</w>\nsho ppers</w>\nconduc tor</w>\nms p</w>\ntr icky</w>\nfru ity</w>\nend ra</w>\nfeel the\nwhi pped</w>\nhair style</w>\nre fer</w>\noo k\noc topus</w>\naudi ences</w>\nku mar\nafter no\nop tim\nc fl</w>\nni p</w>\ngen i\nalpha bet</w>\nann ab\nlam in\naccep ts</w>\nl ng</w>\nðŁĺ «</w>\nt ine</w>\nac om</w>\ncheer leaders</w>\nt k\ngr on\nv g</w>\nk ung</w>\nja x\ndha bi</w>\nr ss</w>\nmack enzie</w>\nbeir ut</w>\nclean up</w>\ngy psy</w>\nst ell\nbur ger\nhurric anes</w>\neduc ation\nst ina</w>\nâĻ¡ âĻ¡\nunfortun ate</w>\njere mi\nbad ger</w>\nat ers</w>\n: âĢ¦</w>\nter ra\nsubli me</w>\nstu d\ny mca</w>\nmr u</w>\nduter te</w>\nbren nan</w>\nbul b</w>\nmel o</w>\nyl on</w>\nhack er</w>\nc red</w>\ngu d</w>\nas an\npad illa</w>\nembroide red</w>\nvietnam ese</w>\npione ers</w>\nprojec tion</w>\nre boot</w>\nid c</w>\nan ey</w>\npri mer</w>\nsuff ers</w>\nwin ding</w>\np on</w>\nsto day</w>\nmor n</w>\nu ch</w>\nall in</w>\nadid as\neliza beth\ntu ck</w>\no graphy</w>\nðŁļ Ģ\nbe g</w>\nos borne</w>\nghet to</w>\nr h</w>\ncn n\nir ma</w>\nma kin</w>\ncab les</w>\nmur ders</w>\noc ks</w>\ninst a\nal as</w>\nsi k</w>\ncu ff</w>\nla re\nfoo dies</w>\no vic</w>\nat om\ngeome tric</w>\nem pathy</w>\nà¸ µ\ncent enary</w>\nnewsp apers</w>\nadministr ative</w>\nðŁİ Ĭ</w>\nsti ve</w>\ncontrac tors</w>\nle tt\ntas mania</w>\nawesom eness</w>\nden sity</w>\nve en</w>\nprince ton</w>\nfrequ ently</w>\nre ject</w>\ngh i\nmodu lar</w>\nceram ics</w>\nsh ag\nki wi</w>\ncan vas\nsweat shirt</w>\nan j\nti mm\nnapol i</w>\nil er\nappe als</w>\nhamil ton\nma yo\nwe ave</w>\narrang ed</w>\nwhar f</w>\noccu py\nb vb</w>\nas aki</w>\not ter</w>\nnor m</w>\nvi es</w>\nde tox</w>\ntion al\ndere k\nid ad</w>\nad missions</w>\nconstitu ency</w>\nu pper\nwoo t</w>\nallo y</w>\nse ve</w>\nlu b\nun comfortable</w>\ned win</w>\nab re\nd wight</w>\nar che\nvirtu ally</w>\nsp ol\npri e\nai i</w>\ner r\nswit ch\nbar ack</w>\nse ok</w>\ncou l\nwn t</w>\npou l\no live\ncaffe ine</w>\ncardi ff\nnotor ious</w>\nde mp\nex cess</w>\nbar r</w>\nt ford</w>\na jay\nbump ed</w>\nmy thology</w>\nshel ley</w>\nfal con\nshakespe are\nmust angs</w>\nno ted</w>\nbon e\ncivil ization</w>\nsy d</w>\npar sons</w>\nun official</w>\nhy ped</w>\nsp ends</w>\noppo sed</w>\nv ings</w>\nspace x</w>\nnoti fication</w>\ndeci ding</w>\nbio tech</w>\nout si\nsal ah</w>\n! .</w>\nfe d\nss y\nc ms</w>\nbad gers</w>\ncr o</w>\nela ine</w>\nn ba\ndy our\nn ant</w>\nhoney moon</w>\nclimb ed</w>\nconom y</w>\nath a</w>\nm ell\nne bula</w>\nnature photography</w>\njuli e\nbm x</w>\ninve sted</w>\nmon o</w>\nlieu tenant</w>\nwat kins</w>\ntechn ician</w>\no se</w>\nka e\nì Ľ\nmc queen</w>\npre ach</w>\ntrav eller</w>\nflexi bility</w>\nze bra</w>\nreta iler</w>\np ant</w>\nben der</w>\nbrand t</w>\nsqu id</w>\nwar rant</w>\nveri fied</w>\ncas s</w>\npier cing</w>\nhon ours</w>\nt ying</w>\nmor ris\nkis sed</w>\nop rah</w>\npanor amic</w>\nme i\nsplat oon</w>\nwich ita</w>\nari as</w>\ngal li\nindy ref</w>\ngood times</w>\nathe ist</w>\nconfe ssion</w>\now ski</w>\nre pping</w>\nad ditions</w>\nmechan ism</w>\nz im</w>\nj ans</w>\nsu f</w>\ncho pped</w>\nbeg innings</w>\nvitam ins</w>\nãħ¤ ãħ¤\nor th\npo les</w>\nru b</w>\nantarc tica</w>\nindie film</w>\nweb cam</w>\nket ch\nbre tt\ncle ment\nher on</w>\ndefe ating</w>\nhydr o</w>\nbuc ket\nwand ering</w>\nsid ney</w>\nfuture of\nb inge</w>\non ies</w>\nknock out</w>\nadministr ator</w>\nsyn the\nl ent</w>\njan i</w>\nbar ley</w>\npremier league</w>\nner ds</w>\ncr m</w>\nbra s</w>\nbot any</w>\nevol ved</w>\nrot ter\nro wed</w>\ntum or</w>\nweal thy</w>\nÂ Ń</w>\nmon arch</w>\nli shed</w>\nda hl</w>\nðŁİ ĥ\nbu ch\nken yan</w>\nØ §</w>\nred ness</w>\nassemb led</w>\nse mit\nhud der\nshro p\nran i</w>\nlear ning\nmor y</w>\niti a</w>\ngeo graphic</w>\nworl dof\nf b\npho sp\nboo gie</w>\nam ped</w>\n? ...</w>\nche w</w>\ndwar f</w>\nar us</w>\ns sen</w>\nru sty</w>\nrecru its</w>\nh k\ngar de</w>\napp lause</w>\nvol umes</w>\ninvol ves</w>\nta c</w>\nhand bag</w>\ntrans late</w>\nffe l</w>\nse ym\naqu atic</w>\ntrans fer\nzo di\nand r\nacade mia</w>\ncr ater</w>\nte z</w>\nar se</w>\nadap t</w>\ncol oni\nsnow man</w>\nmal i</w>\nhang in</w>\ndi schar\noy sters</w>\npho e\ncolon el</w>\nw ba</w>\nhispan ic</w>\nthri ving</w>\nsh y\nag les</w>\nsales force</w>\ncre me</w>\nso les</w>\nla fayette</w>\nâ ī\nter ia</w>\nach a</w>\nsp erson</w>\ngo go</w>\ncar ly</w>\nthe ore\nam ore</w>\nvo x</w>\naf t</w>\nãĤ ¹\nstap le</w>\nmu ffin</w>\ndi agram</w>\nino x</w>\nsu stained</w>\nav ent\nme ta</w>\narbit r\ndec ay</w>\nado le\nÐ ½\nec ol\nph o</w>\nn k\no cu\ngr anny</w>\nÃ§ a</w>\nluxemb our\nstad t</w>\nalber to</w>\nle vit\nam as\nd x\nor phan\nco bb</w>\nas c\nlo gy\nimmen se</w>\nchan ts</w>\noff line</w>\np ent</w>\nbre x\nw inger</w>\nplan e\ni el</w>\nnichol s</w>\nca thy</w>\nnar uto</w>\nlow ed</w>\n/ //</w>\nignor ance</w>\ncat astro\nyou ts</w>\nsch en\nbuil d\nhaz i</w>\ns ine\ncritical role</w>\ndu g\ndete ct</w>\nlo gs</w>\nen amel</w>\nstpatrick sday</w>\ned die\nco pa</w>\ncigare ttes</w>\nho ff</w>\nkay a</w>\nla goon</w>\nra pha\nair borne</w>\nchoo se\npuer tor\nke v\ngui ding</w>\nfro sty</w>\nbor ough\nmir a</w>\nðŁİ Ĭ\ncade t</w>\nanu sh\nyo gi</w>\ne ger</w>\nfl ing</w>\nslo pe</w>\nnin th</w>\nwe ston</w>\nfoot wear</w>\nf n\nmay weather</w>\na am</w>\npla in\nstair case</w>\nwitne sses</w>\nwork outs</w>\nro bust</w>\ndex ter</w>\nco hort</w>\nðŁļ Ĺ</w>\nsp ell\nha ze</w>\no om\norgan ising</w>\nwild fire</w>\ncont acts</w>\nav on\nmin o</w>\nupd ating</w>\nðŁį »\nli thium</w>\ning ual</w>\nk is</w>\nau ga</w>\nlo com\nde duc\nu da</w>\nth ak\nboy le</w>\nmp er</w>\nhot tie</w>\neri k\nre vised</w>\nis la</w>\ntravel photography</w>\noo za</w>\nen qui\nconfe rences</w>\nclo ver</w>\ng room</w>\ncur ves</w>\nlive on\nper f</w>\ndisplac ed</w>\nbo log\nxx xx</w>\nðŁĺ© ðŁĺ©\nte al</w>\nve ssels</w>\nrain forest</w>\ncal ci\npan ther\ngira ffe</w>\nta sted</w>\nimag ery</w>\npad res</w>\nday time</w>\nbas s\nri pe</w>\nopio id</w>\nnu e\nvin yl\ninvent or</w>\nsen s</w>\nprocess or</w>\nmu t</w>\ngad gets</w>\nbibl ical</w>\nshann on\njacqu eline</w>\ncar y</w>\nthe resistance</w>\nali en\nn vi\nco sy</w>\nbi har</w>\nfo ley</w>\nren d</w>\nmu gs</w>\nfa ken\ncl one</w>\nni allo\ngra bbed</w>\nchi hu\npower house</w>\nn tt</w>\nchero kee</w>\nspon ge\nimple menting</w>\nrh ine\nle one</w>\nðŁį Ģ\npret tiest</w>\ninfra red</w>\nimpro v</w>\nswit ched</w>\ntu bes</w>\ncon tr\nbl k</w>\nprojec ted</w>\nbe aver</w>\nyo t\nbbcra dio</w>\nthi gh</w>\nper secu\napologi ze</w>\nw ack\npo ster\noli ver\naz a</w>\nlou d\n( ?)</w>\nf the\nwomen shi\nspar row</w>\nblu sh</w>\nus able</w>\nsc ales</w>\nit ative</w>\npeu ge\nne eding</w>\nlegg ings</w>\nglam orous</w>\nmat ur\nc z\nwat t\nda b</w>\ntam ar\net sym\nbau er</w>\nheart felt</w>\nh n\nelse where</w>\nbir ch</w>\nalu mini\nhu ck\ne me\nj l</w>\ntraf ford</w>\nd z</w>\npor tions</w>\nana sta\narthr itis</w>\nesp n\nber gen</w>\nviol ation</w>\nyo shi\nc z</w>\nnorthumber land</w>\nclo sures</w>\nðŁĩ¯ ðŁĩ\nsmi ley</w>\nr w</w>\ntel ugu</w>\ninten si\ngre gg</w>\nve ga</w>\ndun geon</w>\nsouth bound</w>\nba il\ndomin ican</w>\nsemi final</w>\nchap ters</w>\nh itch\nvan ity</w>\ntrans iti\nrecomm ends</w>\nsati sf\nbar ca</w>\nqueen s\n( (\nde struc\nstra it</w>\nra vi\ndess erts</w>\nin tru\nhar am</w>\nk os</w>\nfo e</w>\nfat ty</w>\npais ley</w>\nmagn itude</w>\ndri dge</w>\ncom ey</w>\nschem es</w>\nvision ary</w>\nour t</w>\ndown loaded</w>\nðŁĻĮ ðŁı½</w>\ngd pr</w>\nlan i</w>\np wc</w>\ngu ad\nnic est</w>\nstake holders</w>\nre ferred</w>\ngeorge town</w>\narvind kejriwal</w>\nschnei der</w>\nin doors</w>\nall star</w>\nstrand ed</w>\ngen der\nze pp\nma sses</w>\nðŁĲ ±</w>\npati ently</w>\nbl dg</w>\nz ab\nwe arab\nvi vid</w>\nhe ck\nd ella</w>\nsy mb\nje opar\nla ger</w>\nà ª\ncomb ines</w>\nne c</w>\nbr ay</w>\nflo p</w>\ntx wx</w>\njo ys</w>\npon t</w>\npro found</w>\nsur round</w>\nmad hu\nma ble</w>\nay r\nte as\nn sa</w>\nopen ly</w>\ner nest</w>\nãĥ ©\nto po\ng na</w>\nanti oxid\nti an\ne tr\nc ello</w>\nma thi\ngener osity</w>\nb iting</w>\nman ic\nkel sey</w>\nchee ks</w>\nten der\nw th</w>\npron oun\nultimat ely</w>\ngu sta\nari anag\nger ry</w>\nble ed\nred dy</w>\nmic h</w>\nmitsubi shi</w>\noper ated</w>\nsex ually</w>\nma u</w>\ncl lr</w>\nvi ds</w>\nco c\nmel ted</w>\nðŁĮ Ī\nq ld\nite ch</w>\ninstru mental</w>\nend game</w>\nðŁĵ ĸ</w>\nener gi\nbrow nie</w>\ntam il\nat in</w>\ndomin ated</w>\npra ises</w>\nfire place</w>\nsens ational</w>\nmen a</w>\nk arti\nun prece\nru pt</w>\nori ental</w>\nmc cor\ntour naments</w>\nscen ter</w>\nre eves</w>\nprescri ption</w>\nsam e\nfra u\ntru ffle</w>\nem bo\nroman s</w>\nbla sts</w>\ntechno logical</w>\npr at\nb sb</w>\ny ar</w>\ntren dy</w>\nac l</w>\nal ad\nðŁį ģ</w>\no hh</w>\nbankrup t\ntho ven</w>\nregar ds</w>\nis er\nwar wick\nvine yards</w>\nreal m</w>\nniallo fficial</w>\ndo ta</w>\nge mini</w>\nto do</w>\nv able</w>\nÂ¨ Â¨\nla u</w>\nwre ath</w>\nju ve</w>\nnat asha</w>\nle ver</w>\nlor i</w>\nhor ser\ncc tv</w>\nair bnb</w>\nes anders</w>\nsin clair</w>\nema biggest\nhigh school</w>\ncon test\noptimi stic</w>\nt te\nðŁĴķ ðŁĴķ\nss d</w>\nye e</w>\nhel ena</w>\ncon sen\nric ks</w>\njes se\nan ic</w>\nðŁİ ¯</w>\nre acts</w>\nro be</w>\nindepend ence\nvol tage</w>\nm ington</w>\ns ant</w>\nà¸Ļ à¸\n-------- --------\nsentin el</w>\nke tt\nrehear sing</w>\naaaa aaaa\nsof the\nstir ling</w>\nsear ch\nwi gan</w>\nstand out</w>\nsna il</w>\npent agon</w>\nÄ ģ\nch lor\ncru st</w>\nnet any\nchemi st</w>\ndisapp eared</w>\nric ardo</w>\nsp iders</w>\nbo se</w>\nwar ren\nme ssing</w>\nbann ers</w>\ngu el\npar ach\nma id\ncoun ted</w>\nepi le\nbon fire</w>\nspeech less</w>\nse tter</w>\nmeas ured</w>\nrejec ts</w>\nnik ki\nle ster\nforen sic</w>\nfab rics</w>\nalo ha</w>\npre served</w>\nwat ford</w>\ndeta iling</w>\ndar th</w>\nbo u</w>\ncar ly\n... '</w>\ntail gate</w>\nnoti fications</w>\nå ¤\npas sive</w>\ntrous ers</w>\nbalo ch</w>\nro ther\ntypic ally</w>\nÃ ¥\nsp it</w>\nwi z</w>\nsic ily</w>\ntechnic ally</w>\nex pose</w>\nst age\nhu bb\ncre am\ncap s</w>\npo ke</w>\nsle ek</w>\nju ne\ntempor arily</w>\nde z\nawak ens</w>\nl ame</w>\n_ -</w>\nji ha\ntues days</w>\nadvis ed</w>\nadvis ors</w>\nexi sted</w>\ndis agree</w>\nnews room</w>\nlo sers</w>\nworld tour</w>\ndr ying</w>\nal di</w>\nhar ness</w>\nfoot print</w>\nhobb it</w>\np mln</w>\ni ro\nque red</w>\nasse ss</w>\ngaz e</w>\nsa b</w>\nth ian</w>\ní Ĭ\nti f</w>\nob serve</w>\nev il\ndra wer</w>\nswee p\ncor y\nco dy\nkyo to</w>\ncal lum</w>\nn inj\nlau rent</w>\nbe i</w>\nsket ching</w>\ncustom ized</w>\ndu r</w>\nregre ts</w>\nknox ville</w>\nìķ Ħ\nmess aging</w>\ngrac ie</w>\nabun dance</w>\nbi dding</w>\nbre wed</w>\nfl ouri\ntherapeu tic</w>\nalt itude</w>\nho gs</w>\nbur ner</w>\nelec tro</w>\nwonder fully</w>\nhe ater</w>\npost pon\nli very</w>\nr all\nad as</w>\na ac\nsau l</w>\nbrook lyn\nplay house</w>\nâĻ¥âĻ¥ âĻ¥</w>\nchar itable</w>\nin y</w>\nz ah\ncompet itions</w>\nbe av\nplu gged</w>\no is</w>\ndo om\nastron om\nspeci alized</w>\nmax i</w>\nta ps</w>\ncellu lar</w>\ndepre ssed</w>\nfolklore thursday</w>\ncri b</w>\ne mul\në° ©\nfi gh\nru z</w>\ncar lisle</w>\nspe ar\nside walk</w>\nde i</w>\ndepend ent</w>\nlac es</w>\nnh s\nðŁĮ Ļ</w>\nreali zing</w>\nnet work\nric he\nre gin\nre fresh</w>\nst ral</w>\npa thology</w>\npla id</w>\npsyched elic</w>\nhin d</w>\nu ka</w>\nalgori thm</w>\nlin king</w>\nprogre ssi\nfe y</w>\nd ade</w>\nhydr ated</w>\nb ant\nfam ed</w>\ncot sw\nbo ise</w>\nas c</w>\nrac ing\nja vier</w>\nww en\nmar lins</w>\npoo p</w>\nswe pt</w>\ntoni ghts</w>\nwe f</w>\nani me\nslo vak\nâŀĸ âŀĸ\ncla us</w>\nlem me</w>\ncli ppers</w>\nre ls</w>\narianag rande</w>\nr te</w>\nko t\nthal apathy</w>\nhungar ian</w>\nzu ma</w>\ny von\nis u</w>\njour neys</w>\nclin ics</w>\nbe be</w>\nww f</w>\nn ws\nsuper heroes</w>\ner it\nsle ague</w>\nidenti fication</w>\nmo tto</w>\nba i</w>\nsour ced</w>\nill er\nap i\npri se</w>\nunprece dented</w>\ndam as\ntuni sia</w>\ndra in\nundere stim\ne ther\nquarter ly</w>\nrewar ding</w>\nal ham\nwolver ine</w>\ncab ine\nhyp no\nnad ine</w>\nhav ana</w>\nda e\nðŁĵ Ī</w>\ndr on</w>\nread ings</w>\nb ati\npic o</w>\nmer ci\niti an</w>\nwal kers</w>\nel ope</w>\nmi key</w>\ngod zilla</w>\nbur lington</w>\nabu ja</w>\nsocial ism</w>\nat ility</w>\nsh ell\nharry potter</w>\ng no\nab ur\nre leg\nfel ici\nro gen</w>\nneuro science</w>\ninst in\nath am</w>\nvou chers</w>\nj arre\nfu se</w>\ndef ici\nmonte rey</w>\nde port\nmid day</w>\npp ard</w>\nfre ed</w>\name ter</w>\nwil t\nn ingham</w>\npr att</w>\nliber ty\nslo gan</w>\no to</w>\npr i</w>\nco ated</w>\nc pd</w>\nne tt\nil las</w>\nmal awi</w>\nevol ve</w>\naccessi bility</w>\nðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥\nor nament</w>\nb p\nel is\nson line</w>\nchi ro\nfl ick</w>\nib m\nar ak\nen ables</w>\ngar land</w>\nsan e</w>\ncu ties</w>\ntri p\nrotter dam</w>\nn ys</w>\nlam ps</w>\nlu cas\nbo g\nra ils</w>\ntravel led</w>\nhic ks</w>\nen u\nsab ha</w>\nscru b</w>\nhi er\nhart ford</w>\nfo o</w>\nfer nandez</w>\ntre vor\nmat tress</w>\nappo intments</w>\nale j\nfe i\no logist</w>\nsaf ar\noc ta\nsr c</w>\nsha un\nambi ent</w>\ndri c</w>\nbi ker</w>\nshe e\nmust ache</w>\nh ta\nbo one</w>\nher ty</w>\ncar dio</w>\nbra kes</w>\nrec ital</w>\nconsi sts</w>\noverwhel med</w>\ncau l\nrobb ins</w>\nim it\nal th\nur l</w>\nbi bli\non ne</w>\nblack livesmatter</w>\ndiffic ulties</w>\ntel ang\ntall er</w>\nðŁĵ Ĩ</w>\ndeb ating</w>\nbur rito</w>\nmo vember</w>\nstrength ening</w>\nbo e\nte stam\nmirac les</w>\nbase ball\nre nee</w>\nðŁĳī ðŁı»</w>\nal fa</w>\nâĺ ĺ\nunstopp able</w>\nec s</w>\ng mo</w>\ngiftide as</w>\npath way</w>\nfen cing</w>\nðŁİ ¤\nb ham</w>\nra s\nsk o</w>\nd led</w>\nthel ast\nmagn um</w>\nbin ary</w>\nwil de</w>\nwil der</w>\nwh ati\nbarbe cue</w>\nh ism</w>\ncan oe</w>\nkur di\neli ve</w>\nadvant ages</w>\nmad ame</w>\nbi er</w>\nmis sing\nenter tain</w>\nair force</w>\ny ama</w>\nc is</w>\nhash tags</w>\nj is</w>\nve il</w>\ndream y</w>\nten se</w>\nmay ward</w>\nch ateau</w>\nhunt ington</w>\nâļ ĵ\nv all\nup on\nbl ouse</w>\ndun es</w>\nðŁĺ ´\nfert ility</w>\nm ole</w>\ncurren cies</w>\nst u</w>\nber lin\ntoa sted</w>\ndiv as</w>\nwal t\nlar k</w>\npor a</w>\nhit ter</w>\num er</w>\nchil led</w>\nbal ancing</w>\nfa is\ny in</w>\nor tiz</w>\neast enders</w>\nh ate\nur al\nap ril\ntim el\nà ±\nper o</w>\nsto cked</w>\nrespec ts</w>\nth t</w>\nbest friends</w>\ngiving tuesday</w>\nbe ad</w>\ninv ent</w>\nim i</w>\nnap les</w>\ncomb ining</w>\ntok ens</w>\nthir st</w>\nma sc\npar rot</w>\nsp u\ndent on</w>\n* -*</w>\nt res</w>\nsubur ban</w>\nwid th</w>\nsi ve\ncon tender</w>\nsiri us\nlo k</w>\ntroop ers</w>\noutra ge</w>\ntur bo\nfrag ile</w>\nme ssed</w>\ndo h</w>\ndisc ord</w>\nnetany ahu</w>\nre sign</w>\nforgi veness</w>\nmo han</w>\nmun ch\ncam ou\nidenti fying</w>\nenab ling</w>\nhot ter</w>\nthorn ton</w>\njai pur</w>\nar ya</w>\nðŁı» âĢįâĻĢï¸ı</w>\nmu staf\nmaj ors</w>\no ke</w>\ndu ffy</w>\nroh ing\ntil t</w>\nðŁĩ®ðŁĩ ³</w>\nrock star\nshe ep\nhend rix</w>\nra v</w>\nin vention</w>\ndo u</w>\nlagun a</w>\ngru mpy</w>\nsw is\nim pe\n) '</w>\nyou ths</w>\nbun ker</w>\nst ache</w>\noppo se</w>\nindi es</w>\nacceler ate</w>\nml p</w>\ned en\nw ann\nk ail\nakshay kumar</w>\nsu pt</w>\npol ym\nmidd leton</w>\nextra ordin\nwil son\naustrali an\nalumini um</w>\nway ne\nalum nus</w>\nmat ics</w>\ngri m</w>\ner nie</w>\nopp a</w>\ncompetit ors</w>\nrand all</w>\nh ence</w>\ndecla res</w>\npre aching</w>\nsha he\ncan e\nsustain able\nstap les</w>\nle dge\nad ena</w>\ndoctor al</w>\nbur gundy</w>\ndecor ate</w>\nren dered</w>\nri sen</w>\npr ank</w>\ndi or</w>\nbee thoven</w>\nflo or\nac com\nto t</w>\nho dg\ntouri sm\nsay in</w>\nobjec tive</w>\nmar kers</w>\npremi ership</w>\nen abled</w>\ncamou fla\ngi ant\nÑ ģ\nsmo key</w>\nric ket</w>\npan g</w>\nde pending</w>\ns ation</w>\nevol ving</w>\ninter cep\ncen sus</w>\ntof the\nre en</w>\nmendo za</w>\ntrum pet</w>\nmarke ters</w>\nan it\nðŁĻ Ĭ\nnorth western</w>\nv la\nfoto gra\nblackand white\nche wan</w>\nwi g\ntro om</w>\nginger bread</w>\nk n</w>\nro mero</w>\nn fc</w>\nor chi\nfun ko</w>\nsour ce\nf s\nra ped</w>\no st\ntar ot</w>\nann ually</w>\nðŁĺ ¬\nr ill</w>\ndel av\n.. !!</w>\nse s\ncan n</w>\nmedic are</w>\nph el\nape x</w>\nguardi an\nrema ined</w>\nr pm</w>\na Ã±\nstory month</w>\ninstag ood</w>\nneighb our</w>\np ing\nsem ite</w>\nmy stic</w>\nas cot</w>\nmat er</w>\nhand ful</w>\ndang ers</w>\nti d</w>\nana heim</w>\nopol y</w>\nsh allow</w>\nnami bia</w>\ntor ia</w>\nprocu rement</w>\nbig bang</w>\nannoun cements</w>\nprosecu tor</w>\nbeng als</w>\nsal le</w>\nen roll\nga stro\nsugge stion</w>\nba k</w>\nha ul\nbudd hism</w>\nberni esanders</w>\nflu te</w>\nfati gue</w>\ncyn thia</w>\ncho i</w>\nir win</w>\ngu a</w>\nstr ous</w>\nh p\nba p</w>\nsatisf ying</w>\nplay a</w>\nðŁİ ¼</w>\ninst ap\nal ice\nt p\nirri gation</w>\nðŁĩ¬ðŁĩ §\nin tric\nclu es</w>\nple x\nsa x</w>\nhe pat\ndump ed</w>\nsignific ance</w>\nby u</w>\nmedic ation</w>\npro v\ntough est</w>\ncorn ish</w>\nâŀ ľ</w>\nkel ley</w>\nu v\nsi zz\nsi bling</w>\nme st</w>\ndi stor\ndiplom atic</w>\naun tie</w>\nb hat\nson ic\nbren da</w>\npump kins</w>\nro ch\nblack burn</w>\nur ged</w>\nshi a</w>\narrange ments</w>\nfloo d\nsa unders</w>\nlec turer</w>\nnou ri\npopul ations</w>\ndiplom acy</w>\nconsist ently</w>\nðŁ¤ Ļ\nt mund</w>\ncauli flower</w>\nl ily\nvocab ulary</w>\nvari eties</w>\ncoo ker</w>\nup town</w>\nqu ent\nmo sa</w>\nre inde\nvelo city</w>\nspru ce</w>\nsocial medi\ni ber\nvolun tary</w>\nproce ssed</w>\nbal tic</w>\ny ang\nleban ese</w>\nd p\ndol ly</w>\narrange ment</w>\ny uri</w>\ncran berry</w>\nkal yan</w>\nelev ation</w>\ncli ff\npu shes</w>\nìĬ ¤</w>\nsil ic\nco wx</w>\neter nity</w>\nsla ves</w>\nvine gar</w>\nglou cester</w>\ncon tained</w>\nbreaking news</w>\naga inst\nrenov ated</w>\nnorm andy</w>\nhero in</w>\nys m</w>\nmo ds</w>\ngre ek\nun di</w>\ntren ch</w>\nv h</w>\nencoura ges</w>\nhead ache</w>\ngr ange</w>\n: '</w>\never green</w>\nÙ Ĭ</w>\nreck on</w>\nab used</w>\nth ru\ncho ice\nti dy</w>\ncol der</w>\nscho ice</w>\nha in</w>\nbru m\nli ars</w>\nbre it\nyor ker</w>\nsh ack\nhe idi</w>\nmicha els</w>\nsco pic</w>\nfasci st</w>\nplay ful</w>\nca c</w>\nyas ss</w>\nsh ad</w>\n.. ?</w>\nqu en\nram irez</w>\nclif ton</w>\npr s</w>\nbest fan\nâģ ł\ngener ating</w>\nhead set</w>\ndisappo intment</w>\nabstr act\nbo iled</w>\nparen thood</w>\nazerbai jan</w>\nexhib iting</w>\nbom bay</w>\noli vier</w>\nko so\nun lea\nmat ernity</w>\niz er</w>\nsi ves</w>\nr hu\ncol l</w>\nsaskat chewan</w>\nfre akin</w>\nde k</w>\nna g</w>\nstab ili\nðŁį ķ</w>\norgani zer</w>\nbo sses</w>\nar u</w>\nu va</w>\nat able</w>\nta un\nafter wards</w>\nfert ili\nver ge</w>\naz i\nmor ph\nà¹ ģà¸\njer k</w>\ncosme tic</w>\nko w</w>\nstru st</w>\nap ache</w>\npost cards</w>\nfor mul\nì ĭ\nspin al</w>\njack pot</w>\nelec tri\nÃ Ń</w>\nlo y</w>\ngra der</w>\ndiab lo</w>\nar di\nhe sit\nf w\narch ery</w>\npa sh\nthe ories</w>\nrepe al</w>\nre live</w>\nper cy</w>\nâĺ Ĩ\nim in\nsyn chron\nsham poo</w>\ncoup ons</w>\no to\nla i</w>\nthou ght\nluxembour g</w>\nmo v</w>\nðŁĺ ¥</w>\nge mma</w>\nse ated</w>\nm ga</w>\nstrat ford</w>\nun certainty</w>\nshi fts</w>\nest o</w>\nfo ol\nfire arms</w>\ncor rie</w>\nki ki</w>\nappa rent</w>\np ills</w>\nolym pia</w>\nfi d</w>\nelev ated</w>\nde cks</w>\nignor ing</w>\nav alan\nro v</w>\nwhist le\np tsd</w>\nmilit ants</w>\nrobo tic</w>\npac ers</w>\nquil t</w>\nbankrupt cy</w>\nlic h\nper cussion</w>\ncelebr ity\nal s\n( ;</w>\nsu t\npokemon go</w>\nh g\noff s</w>\ngibr altar</w>\nscre ams</w>\nbilli e</w>\ngen ome</w>\nmar in</w>\nbe ams</w>\narch bishop</w>\nem in</w>\nbedro oms</w>\ng ated</w>\nol ly</w>\nwarran ty</w>\nat own</w>\ncudd les</w>\ngun na</w>\nk ic\nvi ve</w>\ncy mru</w>\nnar row\npro b</w>\nle o\nrefe rences</w>\nmanufac tured</w>\ncho pper</w>\nbrun swick</w>\nsem is</w>\ndon ia</w>\nr ye\nman o</w>\nhur ting</w>\n? #</w>\nhol li\ninvestig ations</w>\nc els</w>\nðŁĵ ŀ</w>\nle ster</w>\ntemp les</w>\nsto rey</w>\nmc mahon</w>\ntoi lets</w>\nwo of</w>\nï¸ İ</w>\nle verage</w>\nat om</w>\nnight mares</w>\nvictor ious</w>\nhaun ting</w>\ncustom er\nag i\nyo ongi</w>\nmon ty</w>\nver onica</w>\nw ur\ninti mid\nblan kets</w>\nvolu tion</w>\nj m\nâĺ İ\nam on</w>\njud ith</w>\nðŁĺİ ðŁĺİ</w>\ndistr acted</w>\ndri p</w>\nhurric ane\nand es</w>\nrevel ation</w>\ntro op</w>\nab leg</w>\ncol lin\ntibet an</w>\nwor rying</w>\ninter nationally</w>\neat er</w>\ncamero on</w>\nbrad or</w>\ny uk</w>\nðŁĴĹ ðŁĴĹ</w>\ntra k</w>\nslo pes</w>\nci er\nne a</w>\nol er\nta ka\nalbi on</w>\nvolcan ic</w>\nam n</w>\na fi\nob stac\nface time</w>\nger ing</w>\nn pr</w>\nmetall ica</w>\norgan ic\nðŁĴ ¡</w>\nki dd</w>\nd ances</w>\npemb ro\nwash er</w>\nm its</w>\nom er\nemo tionally</w>\ntan go</w>\nip o</w>\ndo cks</w>\nscan ning</w>\nspec s</w>\ntho m</w>\nthe ology</w>\nemer gen\nom i\ng pa</w>\nselec tions</w>\nun necessary</w>\nima ge\nter s\ninduc ed</w>\ngi gan\nrent als</w>\nsupp lied</w>\nm fa</w>\nshan kar</w>\nlat er\npa jam\ncla ve</w>\nÙ ģ\nma hin\ncarl son</w>\navi an</w>\nano va</w>\nkati e\naj ith</w>\ndesign ated</w>\nchocol ates</w>\ninvestig ators</w>\ngla zed</w>\nprin cess\ner ry</w>\nra gn\nou rable</w>\nhr u</w>\nsun dance</w>\npeuge ot</w>\nsteam punk</w>\ngh lin</w>\ngre ase</w>\nhi res</w>\nz ap\nper ce\nj ill\ntom e\nhe hehe</w>\njoy ful</w>\nmae stro</w>\nni shed</w>\ngene alo\nv ich</w>\np its</w>\nfox es</w>\ngood man</w>\nemer son</w>\nlo bes</w>\ncon verse</w>\no ats</w>\nthom son</w>\nra him</w>\nmal ware</w>\nah i</w>\nman kind</w>\nre sin</w>\nim g</w>\nsw ood</w>\nkin der</w>\nsc roll</w>\nar a\nsak ura</w>\nro bbed</w>\nxi on</w>\nny a</w>\nc ism</w>\nce dar\nbe in</w>\nmour ning</w>\ntor to\nheath row</w>\ndone gal</w>\nbar b\nhydr ation</w>\nk or</w>\nelim ination</w>\nsu pdates</w>\nhill s\nappe ti\nstar red</w>\nko m</w>\ngw en</w>\ndd d</w>\ncra y\nsc anner</w>\npersonal ised</w>\nseren ity</w>\nre design</w>\nmeta ph\nbox ed</w>\njudg ment</w>\nno se\në ¹\ner ad\nac ne</w>\nsupp liers</w>\nener getic</w>\nv om\nas ap\nðŁĶ ¸</w>\nir vine</w>\nhat ch\nla ss\nad ren\nwaff les</w>\naccur ately</w>\nici o</w>\nitt le\nse un\noccup y</w>\nweb cam\nthene w\nent es</w>\nga i\nj w</w>\naccoun table</w>\nvis or</w>\nir rit\nlicen sing</w>\nhudder sfield</w>\ngen ie</w>\nðŁİ ¾</w>\natmo spheric</w>\nten sions</w>\nspart an</w>\nclif ford</w>\nol an</w>\nnorth bound</w>\name en</w>\ncen sor\nu el</w>\nster y</w>\n$ $\nfar rell</w>\nhy ster\ncl t</w>\nse dan</w>\nrep lied</w>\ndescri bing</w>\nmicro wave</w>\nsla b</w>\npro sp\nassi sting</w>\nru bio</w>\ne than\nhh hhh</w>\ngu ay</w>\nz man</w>\nra ise\nroll ing\no e\nn ile</w>\nambro se</w>\nscar borough</w>\nhero ic</w>\ncoo ks</w>\nmor t\nchop ra</w>\nðŁĮ ·</w>\nto b</w>\nshav ing</w>\nstac ey</w>\ndor m</w>\nmotor sports</w>\nwi ki</w>\nfol ds</w>\nsp iced</w>\nstress ful</w>\nliter al</w>\nfu dge</w>\npe ggy</w>\nwa ite</w>\ntre sses</w>\nse sh</w>\npr ic\nðŁİ ħ</w>\nfri ght\nr va</w>\nmumb ai\npo m</w>\ntt v</w>\ncel lar</w>\ntom e</w>\nandro id\ndor is</w>\ntsun ami</w>\ntin der</w>\no ec\nm wc</w>\ndor tmund</w>\nno thin</w>\nl iti\nso u</w>\nbelieve in\nat u</w>\nkno cks</w>\nmag ni\nss sss</w>\nro hit</w>\nine ws</w>\nang i</w>\nm andy</w>\nke ttle</w>\nintermedi ate</w>\nav ant</w>\ncur l</w>\nendor sed</w>\nori o</w>\nur t</w>\nconsider ation</w>\nwi res</w>\nshel ters</w>\nb ino</w>\nvik ram</w>\nimple mented</w>\nly dia</w>\nbu k</w>\nparo dy</w>\nc news</w>\nunder graduate</w>\ncanu cks</w>\nsam i</w>\npolit ically</w>\nro tten</w>\ngh z</w>\ntex tiles</w>\nover load</w>\nmoder ni\nrecre ational</w>\nfli r\nbat on</w>\ntypo graphy</w>\nov ation</w>\nintrigu ing</w>\npilgri mage</w>\nal ge\nad ays</w>\ntcm party</w>\nsp elled</w>\ncur ls</w>\nboo ze</w>\nste m\nann es</w>\nir ls</w>\nspon ge</w>\nsho pper</w>\nsig nation</w>\nbra ss\nmi stress</w>\nle ah\nbeg inner</w>\nlau derdale</w>\naugu st\npre school</w>\nta ping</w>\ntai pei</w>\nexecu tives</w>\nb d\nrhe tor\nesc or\nimmun o\ndeeplear ning</w>\nstat ues</w>\nit us</w>\nmanu script</w>\nly ric\ncor vette</w>\nmol ly\nla ge</w>\nde p</w>\ncn bc</w>\nle st\nje ssi\nfi fe</w>\ngriff ith</w>\noppo sing</w>\nran g</w>\ndr ills</w>\nrespec tful</w>\np ity</w>\nd ell\nhar ding</w>\nplay boy</w>\nblo ke</w>\nshut out</w>\nk ili\no sp\nse attle\nbc poli</w>\nmis es</w>\njourn als</w>\nteam ing</w>\nes ther</w>\nfre ddy</w>\nĶ ï¸ı\nmetr ics</w>\nno tre\ngar ry</w>\nfor ty</w>\nnavi gate</w>\nperio ds</w>\nbened ic\nj id</w>\nda w</w>\nance stors</w>\nrestor ing</w>\ncon g</w>\naller gy</w>\ntit anium</w>\nc ence</w>\nlean ing</w>\nab bas</w>\nv ast\nuc f</w>\nroof ing</w>\ne man\nseve rely</w>\nvo gue\nve au</w>\nin bound</w>\nd z\ntane ously</w>\nstret ching</w>\nman chester\ndr yer</w>\ndav is\nkan th</w>\nthe game</w>\nit ted</w>\nre tain</w>\nel les</w>\nconge stion</w>\nfrat ernity</w>\nol lie</w>\nlo ki</w>\nfre ely</w>\ncho o</w>\npon y\nsc ep\ntab ly</w>\nbal t</w>\nrock n\ndi me</w>\nlo gging</w>\nðŁį ·\nad u</w>\nha voc</w>\nwater ford</w>\nchar is\nswee tie</w>\nrun ning\nner d\nerdo gan</w>\nz ara</w>\nweigh ing</w>\nfif ty\npre cise</w>\nlow ell</w>\nkurdi stan</w>\nr yo\nor th</w>\nsyn th</w>\nlin ers</w>\nphenomen on</w>\nart illery</w>\nil legally</w>\nconstru ct</w>\nnostal gic</w>\ngar th</w>\nal ta\nshel ton</w>\na sean</w>\nw ander</w>\ndur ban</w>\ndi versi\nbon o</w>\ncl on\nle man</w>\nsh un\nobstac les</w>\nappet ite</w>\nfe eder</w>\nrespir atory</w>\ndi xie</w>\nformu la\nan to</w>\nso ber</w>\nextin ct</w>\nau c\ning les</w>\nlegitim ate</w>\n; ;</w>\nmin nie</w>\nipsw ich</w>\ndram atically</w>\nðŁĳı ðŁı¼\ningh am\nmilit ary\nmon et</w>\nus navy</w>\nfor k\ndun no</w>\nplay er\nq otd</w>\nst oo\nex or\nethiop ian</w>\nfilm fest</w>\npe red</w>\nc ate</w>\nsau di\nin ner\nsin cere\ntion ality</w>\nale e</w>\nde eds</w>\ncooper ative</w>\nir onic</w>\ncro cod\nbr ary</w>\npost season</w>\ncam per</w>\ncan ary</w>\ne in</w>\nexten sions</w>\nnb d</w>\nsher wood</w>\nspo kane</w>\nhu mp</w>\njit su</w>\nê ¹\ndar yl</w>\np si</w>\nstab bed</w>\noffer ings</w>\nexpe cts</w>\ncav al\nbody building</w>\nfr aming</w>\nf ca</w>\nye arly</w>\nbom bed</w>\nsk il\nresear ching</w>\njud iciary</w>\ngree ted</w>\ntu dor</w>\nmil o</w>\ninnov ate</w>\nðŁĺ Ľ\nr hs</w>\nru by\ncontribu tor</w>\nfam er</w>\nsoci ally</w>\nm lin</w>\nfi ery</w>\nut ter</w>\nbeau t</w>\nit os</w>\nde voted</w>\nrain bow\nbar ney</w>\npe ren\nar jun\nr na</w>\ngab by</w>\nut i</w>\nhann ity</w>\npick le</w>\nser v</w>\nqu akes</w>\npp e\nfe m\nwh itec\nj n\nvictor ies</w>\nðŁ§ ¡</w>\ngol fer</w>\ncongratul ates</w>\nresul ting</w>\nmechan ic</w>\nur ve\ncen tered</w>\nkie v</w>\nan s\nin cub\n< <\nc mo</w>\nbestfan army</w>\ndap h\nen ham</w>\non cology</w>\nku sh</w>\nt xt</w>\nori ented</w>\nfashion able</w>\nc sr</w>\nsa hara</w>\nr ack\npd p</w>\nhan son</w>\nà¸ ĩ\nti ers</w>\nra r</w>\npan am\nin sky</w>\nsa hi\ntestam ent</w>\nasth ma</w>\nin her\nfisher ies</w>\nor der\nho we</w>\ngall on</w>\nep is\nsuz anne</w>\ndrow ning</w>\npaneli sts</w>\nðŁĺ ²</w>\në ¦\nal ach\ncommemor ative</w>\nat tribu\nðŁĳ »\nmo o</w>\nvisi onal</w>\nweek sary</w>\ngu st</w>\nak in\npoin te</w>\nee e\ndi spar\nni pp\ndent al\nst all\npi an</w>\nbor e</w>\nul ster</w>\ntic k\nir r\ntae hyung</w>\nmicro phone</w>\nbermu da</w>\nga ard</w>\nel er</w>\nplumb ing</w>\nhu gely</w>\nâļ« ï¸ı</w>\nrace way</w>\ncam bridge\nmar cel</w>\nburn ley</w>\nto ast\nholly wood\nfa sting</w>\nme red\nhib ition</w>\nca pped</w>\nbenef icial</w>\now ning</w>\ncont amin\narab ian</w>\nto on\ncap ac\nhul u</w>\nsm ir\nnutri ents</w>\nse in</w>\ngraph s</w>\ncon ditional</w>\nðŁĳ ħ</w>\nor ac\nplay in</w>\nnor the\ntor nad\nmar ian</w>\nju mbo</w>\nlex i</w>\nincredible india</w>\nroad to\nuk one</w>\nconfu sing</w>\nsp h</w>\nshan k</w>\npi ed\nmq m</w>\npositi vely</w>\nsher ry</w>\npath ways</w>\nconsi ders</w>\ntof u</w>\nargu ments</w>\nresil ient</w>\nche tt</w>\nwith dra\nter o</w>\nated ly</w>\nsw ana</w>\nhe b\nfli ght\nhar ley\ndecre ase</w>\nkind le\nbook shop</w>\n³ ï¸ı</w>\nmarty rs</w>\nsm ur\nmc cl\nconcer to</w>\nsti me</w>\nrejo ice</w>\napp lau\ncle ment</w>\nmer kel</w>\njai me</w>\nim mortal</w>\nisle of\nmar co\nyoutu ber</w>\nstal king</w>\nme too</w>\nst ack\nsp ouse</w>\nu st</w>\nlu v\nâļ¾ ï¸ı\neque strian</w>\nev ing</w>\nfl in\nnick name</w>\nthe big\nas ar\nst acks</w>\nwal ker\nbor a</w>\nkidnapp ed</w>\nhur ling</w>\nhumb old\nrec alls</w>\nco pper\nann is</w>\nse o\nmer ger</w>\nmu ir</w>\nad dy</w>\nðŁĴª ðŁĴª</w>\nbe x</w>\ncr acy</w>\ncon an</w>\ncongratul ation</w>\nmid st</w>\nâĻ ¬</w>\nfor bi\nop tic</w>\ncr ate</w>\ncrocod ile</w>\nmad agas\nsecur ing</w>\nast on\no gue</w>\nsavi or</w>\nsalis bury</w>\nlove it</w>\nfuji film</w>\ncast les</w>\nas st</w>\nar rows</w>\nsp acious</w>\ntr s</w>\npoly vore</w>\nprogre ssion</w>\nm ri</w>\nnel son\nbi m</w>\nindic ator</w>\no da</w>\npe pe</w>\nre signation</w>\ngu t\nsne aker</w>\nlog ically</w>\naz y</w>\nare lla</w>\nte aring</w>\njo shi</w>\nssion ism</w>\nq pr</w>\nmari ah</w>\np x\nble ed</w>\nmi an</w>\nmed ley</w>\nwe iss</w>\nker ry\ngat ory</w>\nat al</w>\nmadi son\nav enger</w>\nnab y</w>\npl and</w>\ngi les</w>\nfresh water</w>\nd ington</w>\nta j</w>\ndemonstr ates</w>\nn tv\nbul bs</w>\nsunday morning</w>\npe ake</w>\nsouven ir</w>\nwa h\nton nes</w>\nm kt</w>\ncomplex ity</w>\ncon den\nross i</w>\nb ing\ny ds</w>\nsu k\nn go</w>\nmid land</w>\nol y</w>\nlife is\nri pple</w>\nmo reno</w>\ndd ers</w>\ntu s\ná ĥ\nbou l\nx a</w>\nhol dings</w>\nwn y</w>\nshadowhun ters</w>\nke i</w>\nasp ire</w>\nm ous\now en\nso ak</w>\nskir ts</w>\nmoun taine\nstor ming</w>\nch rome\nri ots</w>\nsar ato\namaz e</w>\nless ness</w>\nnav ar\ncrit eria</w>\nra fa</w>\nindul ge</w>\nay er</w>\npor to\nnam o</w>\n........ ........\nyi elds</w>\nval le\nj h\nmac ron</w>\nsa ins\ndur ant</w>\ntra ilers</w>\nwo t</w>\nconfeder ate</w>\nsh rin\nid ol\nform ally</w>\nten e\nmotor cycles</w>\nthan g</w>\nno de</w>\nbang er</w>\ndal y</w>\np ats</w>\nenroll ment</w>\nau ctions</w>\nat al\nar bor</w>\nlo gos</w>\nde arest</w>\ntrans action</w>\ndom ingo</w>\nfle a</w>\nser mon</w>\nde ck\nsin cere</w>\nquesti oning</w>\njuli o</w>\nwas p</w>\npre tz\narmen ian</w>\nk ham\ninflam mation</w>\npicture sque</w>\nacci dental</w>\nfilm makers</w>\nðŁĺ ļ\nðŁĴ į</w>\nca sey\nso b\nyee zy</w>\ngood will</w>\nparag ra\nss ly</w>\nfe ather\ndy ed</w>\nassassin ation</w>\nna de\nb cs</w>\napp lies</w>\nfemin ine</w>\nfe u\next ent</w>\ndepu ties</w>\nl ack\npsy chic</w>\ngo i</w>\nkill ings</w>\npse u\nðŁ¤ ª</w>\nun c\nmar l\ntan e</w>\nmck enna</w>\nsur fer</w>\ninflu ences</w>\nfree way</w>\nhack ney</w>\nmal aria</w>\nel and\nte au</w>\nrema stered</w>\nØ ±</w>\nraz or\ngg y\ncor ro\nlak sh\nfla ir</w>\nhonest y</w>\nhoor ay</w>\nde pp</w>\nam c\nwedne sdays</w>\nq a\ned its</w>\n- $</w>\nse villa</w>\ndou bled</w>\nhuman ities</w>\nc cot</w>\nsom os</w>\nr ine</w>\naf a</w>\nsi oux</w>\nre construction</w>\nwel ding</w>\nth reads</w>\nam ish</w>\nencoura gement</w>\npo der\nbo ck</w>\nbal m</w>\np tions</w>\nstand up</w>\naccompli shments</w>\nguar ding</w>\nconvic tion</w>\nac ion</w>\nnapo leon</w>\ndepic ting</w>\natt ack\nsu i</w>\nwear able</w>\nâĸª ï¸ı</w>\npot ter\nesc ort</w>\nvis e</w>\nto ts</w>\nbo on\nevent profs</w>\nangu lar</w>\nwomenshi storymonth</w>\nbar row</w>\nsch i</w>\nac comp\nti k\nl end</w>\nkensing ton</w>\nwol fe</w>\nst acked</w>\ncra shing</w>\nexhi bit\nwing ed</w>\nsab rina</w>\nma sa\nk ms</w>\nalway s\net t</w>\npla sma</w>\ncounsel ing</w>\npick les</w>\nnfl draft</w>\nmr s\ninev itable</w>\ncoura geous</w>\nstaf ford</w>\nwriters life</w>\nho s</w>\ne j</w>\ngh yun</w>\ntrade mark</w>\nadri an\ninfluen cer</w>\ncoron ation</w>\nra ging</w>\nexplo red</w>\nusa f</w>\nexcep tion</w>\neu x</w>\ntan ker</w>\nsw ami</w>\npac ket</w>\nðŁĳ¨ âĢį\nf en</w>\nshe en</w>\na ero</w>\nj l\nre gal</w>\nnw t</w>\nau ster\nmeh ta</w>\nchar ge\na ste\nb ate\ninf eld</w>\nracec ourse</w>\ncollap sed</w>\nfle ece</w>\nz il\nal lie</w>\nalternati ves</w>\ngeor ges</w>\nðŁĵ į\nquir ky</w>\nfc b</w>\nnat geo</w>\nphilanthro py</w>\nbra i\nevery day\nðŁĲ °</w>\nach ers</w>\nja an</w>\nfin es</w>\nq i\nfisher man</w>\ndistin ct</w>\ngri mes</w>\nnation alist</w>\ncomm ence</w>\nro wn</w>\nâĢ ³</w>\nz ing\nf ter</w>\nhr w</w>\nbaro que</w>\nbl ender</w>\nkitt y\nhoo ks</w>\nc ited</w>\nw anda</w>\nconsen sus</w>\nreinde er</w>\nan and\nsupp ly\nme ds</w>\nv n</w>\nol ph</w>\nrat chet</w>\nshel don</w>\nsecur ities</w>\në°© íĥ\ncro m\nmosqu ito</w>\nj eric\nim mac\ndimen sions</w>\nâ ¤\ndi ssi\nsponge bob</w>\ndami en</w>\nsteven son</w>\njo anne</w>\ndel ish</w>\nyi kes</w>\nthan x</w>\nsurve ys</w>\npostpon ed</w>\nalco holic</w>\nal ised</w>\nðŁĻı ðŁı»\ndo ch</w>\nsen tim\nmered ith</w>\ncom pares</w>\nb ago</w>\nhappy days</w>\nmo ss\nãħ ĭ</w>\nne c\ngn ment</w>\nfrustr ated</w>\ncomb in\nri v\nec lec\ncol lo\ncompli ment</w>\nactor slife</w>\nct to</w>\nnic ar\nop hon\napar the\nman t\nja de\ntrol ley</w>\noptimi zation</w>\neye on</w>\neco logical</w>\nqui st</w>\nep he\nà¥ ĩ</w>\ncin co</w>\nappo ints</w>\nold school</w>\nc pr</w>\nbehavi oral</w>\nmin aj</w>\n:- (</w>\ntag ging</w>\nev al\njo aqu\nðŁĺ «\nha k\nde me\njama ican</w>\nso s\nhy att</w>\nhand book</w>\nlibr arian</w>\nhanni bal</w>\npump ing</w>\nch om\nf man</w>\nga i</w>\nhu ll\nrespon ders</w>\ngreen ville</w>\nn us\nvau gh\nðŁİī ðŁİī\nta xi\ngold berg</w>\nman tra</w>\nte ase</w>\nforbi dden</w>\nmetho dist</w>\nati vity</w>\n* ***</w>\nec t</w>\nmc gr\nĦ ëĭ\nse b</w>\namid st</w>\ndisapp ear</w>\nthy ro\nphili ps</w>\ner ina</w>\nv icious</w>\nstream er</w>\nmillion aire</w>\nma p\nstr ick\nhack athon</w>\ngh a</w>\ned ic\nmi ka</w>\npe ck\nill i</w>\nanto ine</w>\nar ca\nop tic\nma ure\nðŁĩ¦ ðŁĩº</w>\ncla shes</w>\nman ly</w>\nâĺ ģ\nal var\nand res</w>\nme i</w>\nel m\nww ww</w>\nal tered</w>\nl te</w>\nê¹ Ģ\nmo jo</w>\nfor rest</w>\nthal ai\nnon t</w>\nspee ches</w>\nacknow ledge</w>\nign ite</w>\nx factor</w>\nðŁ¥ Ĥ</w>\nmead ow\ndisru pt</w>\ndebu ted</w>\nscrim mage</w>\npharmaceu tical</w>\nfi dd\nfound ations</w>\nphilosop her</w>\net al</w>\npubli shers</w>\nbo ys\nc ke\nru gged</w>\nopti mism</w>\nre be\nphil harmon\nnar cis\nral lies</w>\nlu is\ngo blue</w>\nfol ded</w>\nun acceptable</w>\noptim al</w>\nli sa\npol aro\n+ .</w>\nen za</w>\nâĿ £ï¸ı</w>\nmon opoly</w>\ngrace ful</w>\ndair y\ndu a</w>\ndiffic ulty</w>\njudge ment</w>\no si\nmer sey\nflu x</w>\nnew found\nter ns</w>\ndimen sional</w>\nin vic\nal ba</w>\nam it</w>\nabudha bi</w>\nalger ia</w>\nautom obile</w>\nthe ad</w>\nlo tion</w>\nacceler ator</w>\nvac ant</w>\niti on\nlu f\nal ic\npl l</w>\nbla zing</w>\nba z</w>\nsen e\nðŁĳ ¼\nvilla ins</w>\ndirec tory</w>\neis en\nto ck</w>\nbroch ure</w>\nri pp\nhb d\nzayn malik</w>\nnic he</w>\nlo lol</w>\ncertific ates</w>\nmor se</w>\nfac up</w>\nx ham</w>\nun wanted</w>\nim ports</w>\ncarne gie</w>\nfan sign</w>\nmo u</w>\nr alph\ndestroy er</w>\nsw ing\ntrek king</w>\ncili ation</w>\npit bull</w>\ng aps</w>\nho well</w>\ndefin itive</w>\nmc le\nf ps</w>\net z</w>\nbol ly\nlyn n\ngan o</w>\nat ure\nfur suit\nco il</w>\nna v</w>\nbut ts</w>\ntro jans</w>\neu re\nen ko</w>\nsch umer</w>\nhorri fic</w>\ninstall ment</w>\nbr b</w>\nsubur bs</w>\na bel</w>\nvi r</w>\nde sh\ncun ningham</w>\nðŁĲ »</w>\nspan n</w>\nsch we\nke mp</w>\ntr u</w>\nste alth</w>\nqu es\nle w</w>\ndeli ghts</w>\nko ch</w>\nhu mili\ncr iti\nil t</w>\nsp ells</w>\nmi ley\ncar ic\nðŁį ´</w>\nlc fc</w>\nsubstitu te</w>\noun g</w>\n? !!</w>\naf fir\npredic table</w>\nclass of</w>\ner r</w>\ncy press</w>\nchand ra</w>\nage ing</w>\n__ __</w>\nther land</w>\ndon caster</w>\nel in\nyo shi</w>\nsail ors</w>\nhar ris\njo anna</w>\nniger ians</w>\nh ers</w>\npla gue</w>\npro cra\nk no</w>\ncan ton</w>\nbusine s\nun h\npra kash</w>\nc in</w>\nbow en</w>\nco ating</w>\nm als</w>\nbe gging</w>\nsmith son\nponti ac</w>\nsp ies</w>\ndam ian</w>\npl ine</w>\nund ant</w>\nal ta</w>\none ss</w>\nshame less</w>\nda q</w>\nbb m</w>\nwal es\nstam pede</w>\nser um</w>\nÙ Ĩ</w>\ncataly st</w>\nx n</w>\nab sc\nfree zer</w>\nch un</w>\nari os</w>\nmc cre\nfore head</w>\nhe ars</w>\ndamas cus</w>\ntac oma</w>\nardu ino</w>\nencoun ters</w>\nstan ton</w>\nlg b\nab as\n\" ..</w>\nke te\ndrac ula</w>\nele m</w>\ng ne</w>\nzepp elin</w>\nla brador</w>\npul p</w>\nop tional</w>\nor n\nrussi ans</w>\nsan itation</w>\nhil ary</w>\netsym ntt</w>\npen alties</w>\nau st</w>\nig ans</w>\nolympi an</w>\nmedic aid</w>\nvers ace</w>\nva pe\nre stra\npe ep\nsexi est</w>\nst alls</w>\ndi le\nthe a</w>\npunjab i</w>\npupp y\ntuesday motivation</w>\nðŁĵ ļ\nthe flash</w>\nroc ket\nmo dest</w>\nchihu ahu\non na\nk sa</w>\nhur dles</w>\nca ve\nfail ures</w>\nsp lit\nbo ho</w>\ngur l</w>\ndisappo int</w>\nho ward\nnug get</w>\nfran z</w>\nstal ert</w>\nkaz akh\nfor getting</w>\nsch ri\nag ate</w>\nam at</w>\neve rett</w>\ndu et</w>\nveter inary</w>\njuli an\nch ills</w>\nbra ve\nghost busters</w>\nlan do\ngre ets</w>\nprofit able</w>\nd Ã©\nti r\nze e\nom en</w>\npd x\ngray son</w>\nhar i\nfix es</w>\nstab bing</w>\nswim mer</w>\nsymb ols</w>\ncompli ments</w>\npo se\nfunc tioning</w>\nth nx</w>\ngi r</w>\ncorpor ations</w>\nbar low</w>\nlo e</w>\noff season</w>\ndistin ctive</w>\nmarvel ous</w>\nnik on\nenri que</w>\nky u</w>\nja ws</w>\namo to</w>\nlom bar\ntravel blogger</w>\nfa h\nouri sm</w>\ntri stan</w>\nso e</w>\nce ase</w>\nðŁı ħ</w>\nz ac\nmck enzie</w>\ntaxpay ers</w>\nswim suit</w>\nbl o</w>\nles ley</w>\nkan sas\nw ks</w>\nki el</w>\nprovo king</w>\nmy les</w>\nstr ing\nkangar oo</w>\ngalac tic</w>\nfif th\ns ke</w>\nwe ir</w>\nll is</w>\nmat ory</w>\nðŁĩ ¿\nun ci\nre productive</w>\nroo ting</w>\nti des</w>\ngad get</w>\n.... ......</w>\nalex ander\nbow ler</w>\nscre w\napo log\neri ka</w>\nwal ters</w>\nshet ty</w>\nlan e\nban ter</w>\nas ant</w>\nme so\nv ain</w>\n\" \"\"</w>\nus i</w>\nfer din\naccomp lish</w>\nman sfield</w>\nbom bar\ncollabor ating</w>\ncla p</w>\nit ure</w>\ns da</w>\nsmo ky</w>\nna k</w>\nim person\ncar la</w>\ncom ra\nbur gl\nlo co</w>\nti es\nin hi\ntrac ey</w>\nse is\ndiss er\nrr rr\ndra y\nprote ct\ncor ona</w>\nhun ger\nck en\nc eli\ntrou bled</w>\npredat ors</w>\nfic tional</w>\nshav ed</w>\nriche st</w>\nmetab oli\nful ham</w>\ngro oming</w>\nmono chrome</w>\nwa sting</w>\nas co\nast e</w>\nti sta</w>\nremedi es</w>\nung soo</w>\nsouth end</w>\nperman ently</w>\nbu mble\nprocra stin\nident ical</w>\npractic ally</w>\nma scul\nsu ke</w>\nassu red</w>\nval erie</w>\ndevi ant\ngrizz lies</w>\nthi er</w>\npur a</w>\nne pal\nnot ts</w>\nbil ateral</w>\nspo il</w>\ncar mel</w>\ncine matic</w>\nph l</w>\nni fty</w>\nma o</w>\nhypo cri\nla ser\npan try</w>\nmathemat ical</w>\nel isa\ncoordin ation</w>\nbel mont</w>\na it\nradi ant</w>\nbo iler</w>\nman g\nf ag\ncr c</w>\nh ams</w>\nbr in\nâ¬ĩ ï¸ı\nfamil ia</w>\nâĿ £</w>\nsab er</w>\nru pert</w>\ngg an</w>\nrit z</w>\nmic h\nsal ford</w>\nle vi\ngra l</w>\nðŁĴ ¤</w>\nn ino</w>\nce d\nbusiness man</w>\nul tr\nsim ply\ncompre ssion</w>\npa ins</w>\nhal t</w>\në°©íĥ Ħ\nlandsc aping</w>\nn f</w>\ncroo ked</w>\ner d</w>\nitt in</w>\nddle ston</w>\nsur passed</w>\nino a</w>\nda g</w>\nbl en\nexten ding</w>\nat ing\nal gae</w>\nball er</w>\nu mar</w>\nsnoo ker</w>\ncol lu\nflo wn</w>\nthu b</w>\nridic ulously</w>\nki sh\nop le</w>\ndi re</w>\nas ser\nari sto\nsc iss\nh ating</w>\ntrou ble\nsyl via</w>\nsuc cul\nplo ts</w>\nsincere ly</w>\nal er\nlaure ate</w>\nbr ack\natt n</w>\nrif les</w>\nme to\ncollec tible</w>\ncu omo</w>\nconte stant</w>\nconsist ency</w>\nant z</w>\nrang es</w>\nabig ail</w>\nde b</w>\nmini ster\ngrow ers</w>\nan oo\nhoo ver</w>\ndream er</w>\nnu cle\nresear ch\nmi y\nsha hid\nma v\nd honi</w>\ncin i</w>\ndo j</w>\nhin dus</w>\npart ying</w>\ndal i</w>\nalon so</w>\ninform al</w>\nclark son</w>\nit ton</w>\nki an</w>\ncit yo\nmor i\nla sted</w>\nas pen</w>\nlibr ary\nsusp ici\nqu at\nden ial</w>\nfol der</w>\nch ori\nswee ping</w>\neni x</w>\nðŁį Ĥ</w>\nØ Ń\nnas car\nhandmade hour</w>\nmou l\nheat wave</w>\nem er</w>\nexam ine</w>\nib n</w>\ngr ind\npo v</w>\ntion ist</w>\nm bo\nshe ila</w>\nintegr ate</w>\nom es</w>\ntake away</w>\ncer v\ncon nie</w>\ntic ket\nce led</w>\nbi en</w>\nvisu ally</w>\nmadagas car</w>\nsor ry\ngu i</w>\npark run</w>\ntra its</w>\nla be\npois oning</w>\nà¥ Ģ</w>\nvi able</w>\nbohemi an</w>\ndenti stry</w>\nbad os</w>\nspr outs</w>\nmask ed</w>\nte ddy\nðŁĺ ·</w>\nsa f</w>\nsa as</w>\nji ang</w>\nti ght\nspe aker\nwithdra wal</w>\nbc n</w>\nas signed</w>\nclass rooms</w>\nfle ming</w>\nðŁĴ «\nsuper girl</w>\ntot als</w>\ntable top</w>\ne books</w>\nhorizon tal</w>\ncra z\nflu sh</w>\nj ard\nc dc</w>\ner son\nãħ ł</w>\ngreen wood</w>\nni h</w>\nco x\nad a\nlit re</w>\ngo ing\nv icky</w>\ncur ved</w>\nlou ie</w>\ngra ins</w>\nhy e</w>\nlon ge\nreme dy</w>\ntra inee</w>\nsan jay</w>\nsuper stars</w>\nma ser\nman u</w>\ns age\nwh l</w>\nðŁĺĤ ðŁĺŃ</w>\nðŁĳį ðŁı»\nm sd\nen z\nrab hu</w>\nj oo\ngh u\nac er</w>\ne po\nresurrec tion</w>\njustice for\nbl ended</w>\nmo da</w>\navalan che</w>\nfrance sco</w>\nre spective</w>\ng s\nye ast</w>\nwel ch</w>\ndevo tion</w>\nge tin\nathe ism</w>\nam ic\ncarol yn</w>\nlo c</w>\nld nont</w>\nave c</w>\nus da</w>\nle gged</w>\nbra very</w>\nb lower</w>\ncow boy\nhe h</w>\nsti ble</w>\nbuff al\nchann el\nrun chat</w>\nâĺķ ï¸ı\nide ology</w>\nbest seller</w>\ny oo\npe anu\nbon ne</w>\nfel ic\nedi son</w>\nfr actu\nnaren dra</w>\npp ets</w>\nseym our</w>\nri viera</w>\nhe ctor</w>\nnecess arily</w>\nbi anca</w>\nsoci eties</w>\nthe best</w>\nw g</w>\nsent ences</w>\nwin k</w>\nvacc ines</w>\npal ooza</w>\njam ming</w>\nas f</w>\nmp us</w>\nagre ements</w>\nec k\nba c</w>\nhon ore\ncom pul\nwild cat</w>\nim posed</w>\nyo ga\nhud son\ncan celed</w>\nl ich</w>\nfu zzy</w>\nes que</w>\nch uk\nw vu</w>\nse k</w>\nfli pping</w>\nr hon\nwi shed</w>\nwh a</w>\ncap ability</w>\nlen ovo</w>\nìĨĮëħ Ħëĭ\nvi vo</w>\ntv d</w>\nnor a</w>\nsil k\npas adena</w>\nyo semite</w>\nvalu ation</w>\nclo cks</w>\nu ber\nmr c</w>\ndar kest</w>\nau bre\nss o\nbell y\nwrest lers</w>\nkill in</w>\nlou der</w>\nbuck ley</w>\nge el\nad on\nun s</w>\nappe aling</w>\nðŁĳ ¯\nsemit ism</w>\nlist ens</w>\nfit z</w>\nãĥ³ ãĥ\nny lon</w>\nar ty</w>\nseem ingly</w>\nhal a</w>\nsu ited</w>\net y\nshe ds</w>\nmu ffins</w>\nap ric\num ents</w>\nu ta</w>\njam mu</w>\nchelse afc</w>\nstar z</w>\nyo ko\nroo t\nclean sing</w>\ndi ar\npione ering</w>\nihear tradio</w>\ndig iti\nfin dyour\ncan o</w>\nðŁĴ İ\nz ol\nspac ecraft</w>\nsix ers</w>\nmoi sturi\nb ile</w>\nti sts</w>\nhor ton</w>\nrang ing</w>\ncolum bi\nmete oro\nsenti ment</w>\nep l</w>\nfoo th\ntext book</w>\ndrain age</w>\nr ly</w>\nsc ue</w>\nimran khan\nðŁĴ ¸</w>\nmargar ita</w>\ned dy</w>\npredic ts</w>\ngamer gate</w>\nadvis e</w>\ngrowth hacking</w>\nlove you</w>\nug and\nv f</w>\nbeng hazi</w>\ns later</w>\nne wor\nch el</w>\nindependence day</w>\np np</w>\ncul len</w>\nhoo dies</w>\nnum bered</w>\nbrit t</w>\nt sa</w>\nkl tu</w>\ns ages</w>\nmom o</w>\nonep lus</w>\ncol l\ngu ts</w>\nw ta</w>\nmesm eri\nenh ancing</w>\nchiro prac\nj is\nteen agers</w>\nm one</w>\nconstell ation</w>\nsweep stakes</w>\ne ze\nslovak ia</w>\nla ye\npear ce</w>\nwa ver\npo gba</w>\nk ron\nsur geons</w>\nmar x</w>\nti d\ngg a</w>\ndesc end\np ours</w>\nupri sing</w>\nwal la\nsab bath</w>\nbachel ore\nmack in\nk am</w>\npeter borough</w>\nhor a</w>\nðŁĮŁ ðŁĮŁ\nthink big\nr j\nhy drau\nsp al\nunivers it\nðŁı ī</w>\nmail online</w>\nleague of\nten ants</w>\nw ally</w>\nlan ce\nheav ens</w>\ndd r</w>\nbol ts</w>\nam ir\ni phone\nci gar\nen du\nre i</w>\nel abor\nr inging</w>\njohn son\ncharacteri stics</w>\nsal oon</w>\nalgori thms</w>\ntal kin</w>\nm tn\ndi ve\nregion als</w>\nff ice</w>\nhat i</w>\ndeviant art</w>\nso tto</w>\nshir o</w>\nl ama</w>\nk we\nf aded</w>\npor ting</w>\ntu mmy</w>\nest ates</w>\nbuen os</w>\nðŁ¦ ģ</w>\nbeli ever</w>\npen etr\ndar n</w>\nsp ite</w>\ncan opy</w>\nfashi oni\nt illa</w>\npet als</w>\neli jah</w>\nbra wl</w>\nmarty r</w>\në°©íĥĦ ìĨĮëħĦëĭ\nmid town</w>\neric h</w>\nd apper</w>\nsm town</w>\nme gam\nww w\nle le</w>\non s\ncat fish</w>\nfir th</w>\nfossil friday</w>\nball park</w>\nth aw\npot ent</w>\nilli e</w>\ncre ep</w>\ncar p</w>\nso ap\ngun dam</w>\ninfe c\nyy yyy</w>\nà¤ ¨</w>\nz ag\nrit t</w>\ncalcu lator</w>\nbo ca</w>\nok o</w>\nto ad</w>\nthreat en</w>\nrefin ed</w>\nolym pic\naccompli shment</w>\nbacter ial</w>\na ji\ntat um</w>\nfeli z\nshe ed</w>\nj at\nth ic\njam al</w>\nðĿ ĺ\nlin a</w>\nðŁĲ ¯</w>\njo king</w>\nyot po</w>\npin ch</w>\nak ron</w>\nher b\nmotiv ation\nli a\nho stage</w>\ncre ek\ngam ble</w>\nruss ell\npatt i</w>\nfo tos</w>\nc pc</w>\nbro ken\nback the\ncla ys</w>\nu mm\nstock ton</w>\nmat ernal</w>\nÃ¼ r\nla kel\ncent ury\nbe k</w>\ninfe cted</w>\nà¸ ¡\nsmack down</w>\nman ned</w>\nta hoe</w>\nsm es</w>\nbas a</w>\nsu la</w>\naugu sta</w>\n. *</w>\nrohing ya</w>\ngre ed</w>\ncounsel or</w>\nsilhou ette</w>\ngra vit\ncla use</w>\n' -</w>\nbo bc\nocca sions</w>\nnow adays</w>\ndic tat\nbe ard\nn ally</w>\nbrigh test</w>\nkab ul</w>\ninc india</w>\ndhan ush\narchae ological</w>\nche ape\nmizz ou</w>\nd hi</w>\nov ski</w>\nbax ter</w>\nasse mble</w>\nÃ ¢\ngi gi</w>\nac am\nwis ely</w>\nhaz ard\nnorth ampton</w>\nâľĪ ï¸ı\nme th</w>\nbla sting</w>\nre unite</w>\nmu lus</w>\nali zes</w>\nt read\nmil a</w>\ned ward\nko va</w>\npe sto</w>\nðŁĳ ¶\nvit z</w>\nhydrau lic</w>\nrefurbi shed</w>\nmo tel</w>\nisab ella</w>\nhom me</w>\nsever ance</w>\nuph ol\nmis erable</w>\nf ari\nlat ter</w>\nef er</w>\ncrack ers</w>\nes l</w>\nac io</w>\nyy j</w>\nin an</w>\nec b</w>\nz ind\npan as\ntru cking</w>\nre ed\nsh aker</w>\nburge ss</w>\nem pire\nag nes</w>\nn ington</w>\nart works</w>\nfr s</w>\nti le\nbi ome\neu n</w>\nch ong</w>\nameric ana</w>\ngod father</w>\ngo blin</w>\ni shi\n! ).</w>\ntemp ted</w>\ngen omics</w>\nmand ate</w>\nck y\nðŁĴĻ ðŁĴĽ</w>\nsom ali</w>\nbr andy</w>\nin ven\nspoke sperson</w>\npc b</w>\nyu an</w>\nh g</w>\nfa z\nstarwar s\nro wan</w>\nblue grass</w>\ndon g\nd day</w>\ntrin idad</w>\ner ton</w>\nban ning</w>\nre tention</w>\ncu red</w>\ntober fest</w>\nre set</w>\nwe is\ndeta ched</w>\nbehindthe scenes</w>\nimmun ity</w>\nph a</w>\nbra y\nðŁĳ ½</w>\nran cho</w>\nram say</w>\nest onia</w>\nnd tv</w>\n] .</w>\ncab aret</w>\ntar o</w>\nd v</w>\nshow cases</w>\nplu m\nðŁĳ ¸\nson oma</w>\npre pa\nmemor ab\ne stu\ndrive way</w>\nu les</w>\nmagn us</w>\nx r</w>\nnn n</w>\nmuch as</w>\nen ge\nstre amed</w>\nfore stry</w>\naudio book</w>\ntro y\nreck less</w>\nkil om\nru ler</w>\nra k</w>\nproce ssion</w>\ni ons</w>\npo ole</w>\nnoc tur\nwh s</w>\nfarm house</w>\nper a</w>\npar me\nhypocri sy</w>\ns ics</w>\nv ant\ncas k</w>\nholi stic</w>\nau st\nÐ ¿\nin do\nðŁĳ© âĢį\ndi so\ndisp atch</w>\nol sen</w>\nmake it\nen nis</w>\ncent re\nar range</w>\nðŁĮ ¼</w>\nsal ted</w>\nea siest</w>\nf ate\nreg atta</w>\nmo zz\nac an</w>\nsin i</w>\ng ically</w>\nch ops</w>\nchick en\nwork in</w>\nha gg\ninvol ve</w>\nwee ds</w>\nbook day</w>\nwake up\nky r\nmichel in</w>\nfu ss</w>\nre juven\nvac ancies</w>\nincar cer\nm st</w>\nsc ents</w>\nsovere ign</w>\nkick er</w>\nà §\nbo d</w>\nâĢĶ ></w>\nsa h</w>\nmob il\nshrop shire</w>\noph one</w>\ndress er</w>\nmis suni\nhep burn</w>\ni mo\nfoli age</w>\ndiagno stic</w>\nas san\ncycl ing\nguil t</w>\nc sa</w>\npuertor ico</w>\nwin elover</w>\nwake field</w>\ndo ggy</w>\nk he\npa pp\nco g\nal lot\ncu ck\npoe tic</w>\nmi o</w>\nre vit\nmag ician</w>\nç ¥\nant enna</w>\nwest wood</w>\nmber g</w>\nlux e</w>\noat meal</w>\nØ ¬\nte at\nffe e</w>\nsear ches</w>\nl ly</w>\nplu to</w>\nel on\nlet tering</w>\ninno cence</w>\nfa i</w>\nann on</w>\ntelang ana</w>\nma it\nneu ral</w>\ncan ni\nar oma</w>\na stor\nfe x</w>\nco cac\nmon etary</w>\nf ent\nun sure</w>\n' @</w>\nindi rec\nteh ran</w>\nisol ation</w>\nli bs</w>\nmake up\nmerce des\nff y\nhe tero\nde o\nsco m</w>\ncur sed</w>\nveteran sday</w>\nfranken stein</w>\nshre ws\nde co\nge ese</w>\nlefto ver</w>\nha did</w>\nvari able</w>\nacade mics</w>\ncarol in\nunder going</w>\nvari ation</w>\nna h\nssi er</w>\ngamer sunite</w>\npur suing</w>\nemer ged</w>\nll ers</w>\ncontrol ling</w>\nro aring</w>\nmete or\nvol t</w>\ndaw gs</w>\nbe aver\nis life</w>\nbathro oms</w>\naci onal</w>\npre vent\nlake district</w>\nin als</w>\ny ani</w>\ngra bbing</w>\nsac ks</w>\nle z</w>\nsw ay\nk ool</w>\ntime s\nklo pp</w>\nla de</w>\ncon cord</w>\nresul ted</w>\nrevi ve</w>\nrecon ciliation</w>\nol and</w>\naz z</w>\ngir o</w>\nmand arin</w>\nde en\nnutriti onal</w>\nis coming</w>\nvan i</w>\naw www</w>\nder ived</w>\nlove your\nstop the\nshou ting</w>\nnov ak</w>\nðŁĻĮ ðŁı¾</w>\nlo af\ndispla ying</w>\nsunday with\nma guire</w>\nch eri\nðŁı Ł</w>\nre match</w>\nqu ic\nÚ ©\ny in\nðŁĺ ¹\nili ve</w>\nz ip\nour ke</w>\ndown loads</w>\nsw at</w>\nmissi ss\ncare rs</w>\nt ment</w>\nproper ty\nhahahaha haha</w>\ngi bbs</w>\nsur rey\nar ise</w>\ntic ism</w>\nsti a</w>\nir ling</w>\nfro g\nco se</w>\nbas sist</w>\nfore ig\nlea u</w>\npil lows</w>\nhol la</w>\neli e</w>\ndisclo sure</w>\npeanu ts</w>\ninte ch</w>\nww c</w>\nplun ge</w>\ntrium ph\ncor i\nsli ppers</w>\nðŁĻı ðŁĻı</w>\nneutr ality</w>\nma re\nhair y</w>\ngang ster</w>\nhu mming\ncust ard</w>\nmer lin</w>\nale a</w>\ns by\ndam p</w>\nmo han\nver bal</w>\nj st</w>\ngu tted</w>\nb jor\nun finished</w>\nðŁĩ¯ðŁĩ µ</w>\nun happy</w>\nâļ« ï¸ı\nby pass</w>\nat su</w>\nfis cher</w>\nsa v</w>\nafric ans</w>\nre use</w>\nmid way</w>\ndemo lished</w>\nger rard</w>\nher cules</w>\nÄ Ł\nmedic ines</w>\ncl icking</w>\nsur round\njo ong</w>\nwav ing</w>\ntri bes</w>\nwet lands</w>\noffici el</w>\nargu ing</w>\nl le\ndo va</w>\nsu zy</w>\nclub house</w>\nne gro</w>\nob tain</w>\nga o</w>\ngl ance</w>\nassi st\nch os</w>\nãĤ ¢\nâĺ ķ</w>\nadri d</w>\noccur s</w>\nst ans</w>\npar don</w>\nlivel i\nemplo yed</w>\nre visit</w>\nff xiv</w>\nbb le\nne aring</w>\nmin er</w>\nðŁĺ ¹</w>\ngiov anni</w>\nup to</w>\nmar vell\nmar se\nto wels</w>\ncb n</w>\nengine ered</w>\ny elling</w>\nspart an\nsi ans</w>\nðŁĻĮ ðŁı¼\nse v\ncoyo te</w>\nsta di\nt cm</w>\napp en</w>\nshenan igans</w>\nopen access</w>\nso aked</w>\nma squ\nle vine</w>\nstro kes</w>\nl k</w>\naparthe id</w>\nhipho p\nchar don\nmay may\nha asan</w>\nstri pped</w>\nfr o</w>\nscri ption</w>\nf ton</w>\nh f\npri sons</w>\nmarsh al</w>\nķ ãĤ\nan cho\ncom promise</w>\nclassi fication</w>\nbuzz feed</w>\nbblo ggers</w>\ndeser ving</w>\n) /</w>\ns way</w>\nob o</w>\ncamp ers</w>\npoder nfamily</w>\np oured</w>\nbri e</w>\nsquir rels</w>\nse ize</w>\n: #</w>\nle k\nti mb\nst acy</w>\nnas daq</w>\nrepe atedly</w>\nbr at</w>\nmi ghty\ncompetit or</w>\nmah one</w>\nde si</w>\no ke\nbm w\nshi e</w>\nf cb\ncheape st</w>\nminim alist</w>\npar amount</w>\nn ate\nhar as\ninsan ity</w>\nlat eral</w>\nment ality</w>\nmo zam\nta pped</w>\nyad av</w>\nu sp\nb way</w>\nthe od\nbil t</w>\nra ids</w>\nem press</w>\nadap ted</w>\npat ron\nnut shell</w>\nag ra\nbe aded</w>\nsundaywith marsha</w>\nvi king\nproce ed\nmain tained</w>\nthinkbig sundaywithmarsha</w>\nsn es</w>\nmus ica</w>\nto wer\nch ab\nbo k\nsm t</w>\ninsul t</w>\nharve sting</w>\nwindo w\nru ther\nbe ige</w>\ndec al</w>\nindic ate</w>\nma iling</w>\nri ft</w>\npo le\nander son\nch oral</w>\nsp ride</w>\nl ili\nev elyn</w>\nimrankhan pti</w>\n.... \"</w>\nke red</w>\nun dp</w>\nwater falls</w>\nse ars</w>\nle mans</w>\nworld series</w>\nri el</w>\nani e\napp ar\nscore rs</w>\nlam p\na than</w>\nphys icians</w>\nqu inoa</w>\nrefu sing</w>\nvu itton</w>\nunle ash</w>\ns la</w>\npat i</w>\nshou ts</w>\ninten tions</w>\nfo amed</w>\neurope an\nneighbor hoods</w>\nme er\nman son</w>\ndu h</w>\nbr at\ncon es</w>\nbow l\nkazakh stan</w>\nà¤ ¿</w>\nin appropriate</w>\ndel hi\nketch up</w>\nful ton</w>\ns ys</w>\nconsul t</w>\ngar field</w>\nto go</w>\nf ml</w>\nf led</w>\nb ds</w>\nfacilit ate</w>\nree bok</w>\nselfi e\nelev ate</w>\nactiv ate</w>\nbi ble\nca wx</w>\nb ys</w>\ncam ille</w>\nsy ou\nsk ool</w>\nher t\nw bc</w>\nple dges</w>\nrecor der</w>\npo sh</w>\nac re\nso aking</w>\nmat il\nv sco\nshoot ings</w>\npla r</w>\ne con\nðŁĻĮ ðŁı»\nrashi d</w>\nu bi\nðŁ¤ ¤</w>\nsw inging</w>\nwi pe</w>\nrap tor</w>\nm su\nmusic video</w>\ndur ham\nat tic</w>\napar ty</w>\nfe tus</w>\nactiv ation</w>\naa z</w>\nmotiv ate</w>\nðŁĴķ ðŁĴķðŁĴķ</w>\nj al</w>\nà¤ ®</w>\nag on\nsche er</w>\nstal ker</w>\nfo ster\naz zo</w>\ntele gram</w>\nvi gor\ns laugh\nscreen shots</w>\nentrepre neu\nkri stin</w>\ninten tion</w>\nch illi\nfr action</w>\ndon a</w>\nge a</w>\ntc u</w>\ns ite\nla k</w>\nem il\nd nt</w>\nbor o\nwil kinson</w>\nre cu\nato day</w>\nt anya</w>\nbl anco</w>\ncd n</w>\nbrilli antly</w>\ng cc</w>\nac c\nevacu ated</w>\nther ine\nden ny</w>\ncait lin</w>\nshe pard</w>\npou ch</w>\nhand held</w>\nsou theastern</w>\nha a</w>\nÃ ´\nre solutions</w>\nled ger</w>\nsr in\nr ar\nshat tered</w>\nchim ney</w>\nim with\nmete or</w>\nhand led</w>\nra ke\ntown send</w>\nen han\nshi py\nduc t</w>\ntw x</w>\ninflam matory</w>\nwar hammer</w>\ntheat rical</w>\ngro s\nsk ar</w>\nsco tty</w>\nni el</w>\ntit o</w>\ntin i</w>\nconne ction</w>\n_ .</w>\ngoldeng lobes</w>\nsha q</w>\nðŁı ³ï¸ı\nhall way</w>\nfron ts</w>\neffec tiveness</w>\ngla ston\nd hs</w>\nex pi\nto h</w>\nc pl</w>\nsc s</w>\nre o</w>\nha g\nresemb lance</w>\nhor an</w>\nabu sive</w>\nqu er</w>\nvirtu e</w>\ncho lester\na q</w>\nshan e\nm ce\ncarri ers</w>\ndi stress</w>\nre wind</w>\nÂ ¡\nvoo doo</w>\nint act</w>\nann o</w>\nðŁĺ ¤\npi led</w>\nadi a</w>\nãĥ ³</w>\nen ow</w>\ndi gs</w>\nlight ly</w>\ngoo fy</w>\nturb ine</w>\ngovernor s</w>\ncon te</w>\nre open</w>\npa h</w>\ni ve\ncra fting</w>\nswee ps</w>\njo di</w>\nan de\nzu cker\nkaw aii</w>\no ko\nv ai\nout line</w>\nkri sti\nts n</w>\ninsp o</w>\nqu int\nfil thy</w>\nlyn ne</w>\nlisten ers</w>\ndepar ting</w>\nor d\nt weed</w>\n, &</w>\nale k\nsel fish</w>\nnor ther\nrecogni zes</w>\ni ps</w>\nbe s\na ed</w>\nw ills</w>\npe at</w>\nsurround ings</w>\nmon uments</w>\nais le</w>\nbe cker</w>\nla v</w>\nquant ity</w>\nv ah</w>\nhelicop ters</w>\ntu cked</w>\nalv arez</w>\nsha pe\no bey</w>\nad diti\nroad side</w>\nm ite</w>\nbl ers</w>\nep age</w>\nj au\nignor ant</w>\nb ins</w>\nlu lu</w>\nx o\nc fo</w>\nee eee</w>\napprentice ship</w>\nshef fiel\nto i</w>\nho k\nfaken ews</w>\ndeplo y</w>\naid an</w>\nhusk ers</w>\nãĢ İ</w>\nwest brook</w>\nmi ster\nconfi gur\ncar r\nfic a</w>\nproceed ings</w>\nha w</w>\nste ak\nmur derer</w>\npay day</w>\na jo</w>\np vc</w>\ndon ates</w>\nbi af\nnom nom</w>\nbe it</w>\nk ali</w>\nx rp</w>\nahmed abad</w>\nse mic\nche y\nx tra</w>\nan twer\nhead lining</w>\nsqu ares</w>\nroun ded</w>\nflu ore\nbol d\ndisa sters</w>\nam oo</w>\ngener ic</w>\ncran es</w>\nbrief ly</w>\ngi g\nauster ity</w>\nanticip ation</w>\nfor ti\ntreas urer</w>\ncann y</w>\nce cil\ndete cted</w>\ncheck list</w>\nà¸ §\npam ela</w>\nbar bados</w>\nan field</w>\nhear ty</w>\ntx lege</w>\nperen ni\narro g\ning ram</w>\nâĹ ı</w>\nty ne\nspo on\nr ation\nam ba</w>\nm be</w>\ncam el\nh hs</w>\nyork shire\nreflec tive</w>\nfre aks</w>\nto k</w>\nju do</w>\npartic les</w>\ndu bs</w>\nban jo</w>\naccred itation</w>\nprover bs</w>\nover dose</w>\ninte gral</w>\ngu ang\nmc s</w>\nsuper car</w>\naf b</w>\nal vin</w>\nail s</w>\nx tre\nst aging</w>\ntw ent\nrabb its</w>\nmar o\ninste m</w>\ndol l\ncr ay</w>\nsant ana</w>\nble ach</w>\nmini ons</w>\nche ap\nman t</w>\ndi vers</w>\ncatal onia</w>\nlo is</w>\nmat ri\ncou gar</w>\nkay ak</w>\ne gre\np so\na ia</w>\nå ®\nchar lton</w>\ntr acked</w>\nsc ari\npe tt\nf wd</w>\nx in\ngra vel</w>\nbr ic\nbigg boss</w>\nar den</w>\nhu gging</w>\npal ms</w>\nst v\nli mb\nthe movie</w>\nhandic ap</w>\nri me</w>\nz ai</w>\nstu b\nindi a\nlithu ania</w>\nrhy th\np ita</w>\nmaced onia</w>\nhigh ered</w>\nbrid get</w>\nschwar z\nske let\nhi kes</w>\nant arctic</w>\nc ps</w>\nmash up</w>\nÐ °</w>\nn ell\nchand ra\nhe ir\nan us</w>\nsher idan</w>\nmi mi</w>\nmuse u\nbec ca</w>\nan ir\nbar rie</w>\ndioce se</w>\ncompar able</w>\nðŁı³ï¸ı âĢį\nyuk on</w>\nme p</w>\nhor mon\nmer ic</w>\nal f</w>\ncon quered</w>\nchrist church</w>\nðŁĴĻ ðŁĴĻ</w>\nhazard ous</w>\npoo h</w>\ncont ing\nretro spective</w>\npar ame\nna ir</w>\ncon sor\nho tra</w>\nastoni shing</w>\ncater pillar</w>\nu man</w>\nti sm</w>\nt vs</w>\nserv ic\ncroy don</w>\nmor ales</w>\nc g\ncu m</w>\nte ur</w>\nscan ada</w>\ns all\nmagno lia</w>\nel ise</w>\nth our</w>\nà® ¿</w>\nag omez</w>\nphel ps</w>\në°©íĥĦìĨĮëħĦëĭ ¨</w>\nwh os</w>\nweav ing</w>\nsi sd</w>\npro poses</w>\ncro ws</w>\npre sale</w>\neconom ies</w>\nbernar do\nsha hid</w>\nair show</w>\nmc cann</w>\nhor ticul\nnr l\ndu el</w>\nmongo lia</w>\ntou lou\nrequi rement</w>\nstruc tured</w>\ned i</w>\no lives</w>\nhe a\ncu ter</w>\nÐ º\nenthusi ast</w>\nharri et</w>\ndomin ion</w>\nsub mer\nðŁį ĥ\nsa ab</w>\nnes burg</w>\nmo ff\ndef ended</w>\nbur t</w>\nrewar ded</w>\ngold man</w>\nop tics</w>\nkhali d</w>\nhouse holds</w>\nbuc kets</w>\nce cil</w>\nche ss\nsubstan tial</w>\nef l</w>\noper ation\nevalu ate</w>\nst n</w>\nrece ssion</w>\nl ll</w>\ntom as</w>\ntru ths</w>\nak bar</w>\ns words</w>\np act</w>\nembarra ss\nha o</w>\nay urve\nscrip ture</w>\nny cc</w>\nop t</w>\ndi ameter</w>\nsc ented</w>\norgani zers</w>\nre lat\nha e</w>\ndream ers</w>\nde se\nðŁĮ »\nrestric ted</w>\nn ale</w>\nr hp</w>\ndol an</w>\nmun ster</w>\nha ired</w>\nconsult ants</w>\njo ints</w>\nhu mil\nd ill</w>\nrelent less</w>\nt Ã©\naf il\nut ilities</w>\njapan ese\ncondem n</w>\npet ite</w>\ncolli de</w>\nq f</w>\npeach es</w>\ncou rier</w>\nl ore</w>\nâĺİ ï¸ı</w>\nreli ability</w>\nch uk</w>\nðŁĻ ĥ\nstu res</w>\nge ther</w>\nho stel</w>\nbi er\n- _-</w>\nâ ĩ\ne ze</w>\nta ilo\ndi ent</w>\nblu ff</w>\nchu ffed</w>\npil ip\nmon arch\ne em</w>\nbu chan\nb ick\nop au\nku ps</w>\nà¸ ¢\npist ons</w>\nsp ins</w>\nm and</w>\nce st</w>\nbur ne</w>\nv ile</w>\ncher ries</w>\nbec kett</w>\nneed les</w>\npan ch\në Ĥ\nhaha h\ntrou bles</w>\ninsi sts</w>\ndo you\ng mc</w>\nmor tar</w>\ndeleg ate</w>\nin n\ng anda</w>\nsin atra</w>\nà¤ ¤</w>\nspee ding</w>\npu pil</w>\npre mises</w>\nali gnment</w>\npi kach\nas us</w>\nj alan</w>\nØ µ\nlime stone</w>\nfol kl\nparme san</w>\nce il\nmo y\nshawn mendes</w>\nac up</w>\nhu st\not es</w>\nmed ina</w>\nma di</w>\ngta v</w>\ncensor ship</w>\nar g</w>\nswe eney</w>\nsy kes</w>\ncol o</w>\nfoot steps</w>\ncann ed</w>\nadv ance\ngta online</w>\nhealthy living</w>\nðŁį ¾\na ig\np ality</w>\noc s</w>\nhe brew</w>\nim minent</w>\nberk shire</w>\njeremi ah</w>\nout going</w>\nbak er\nentr ata</w>\nma ids</w>\ngro ves</w>\nbo c\na del</w>\nm fw</w>\ncon science</w>\narm ys</w>\nnut ella</w>\nconte stalert</w>\nnovel ist</w>\nla h\nban ker</w>\nmarque z</w>\nðŁı ¡</w>\nto ff</w>\nout age</w>\ngr p</w>\nðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃ</w>\nmusc le\ndu dley</w>\nnvi dia</w>\nmi di</w>\nm uni\ness ays</w>\ndat ac\ncar ter\nà¸ £</w>\nt ans</w>\ni ves</w>\npublic ations</w>\nal er</w>\nok wx</w>\nil u\ncu tt\nhar p</w>\nout law</w>\nluther an</w>\nbr ill\nbo lic</w>\ndo well</w>\ngreen land</w>\nbe sties</w>\npath i</w>\npay ton</w>\ngue st\nhar den</w>\nðŁ¤ ©\nann ed</w>\nevacu ation</w>\npo ised</w>\nmc der\nb han\no i\nenvel ope</w>\nci d</w>\nca vi\nta pas</w>\nbook review</w>\ngrey hound</w>\nâĻ ª\nfe ud</w>\nlun gs</w>\nfor te</w>\nrai der\nff er\noni x</w>\ndep end</w>\nyn wa</w>\nrel ating</w>\nde vs</w>\nðŁĴ Ĳ\nacqui res</w>\nd ha</w>\nj yo\npriv ati\ncan ine</w>\nk b\ncra b\nsar din\nimag ining</w>\nk j\nem por\ndown hill</w>\nne z</w>\nta eyeon</w>\nnick imin\ngb p</w>\nà µ\nw ap\nsec co</w>\nma shed</w>\nðŁĴ¥ ðŁĴ¥\naugu stine</w>\ndiss ol\ndic tator</w>\nâ ĵ\nvi per</w>\ned fringe</w>\nvau x\nhard work</w>\nbook let</w>\nno x</w>\nchi ff\nðŁĴ ¨\nobserv ations</w>\nxbox one</w>\nu sher</w>\nke er\nlu p</w>\ndal las\ncal gary\nma dra\ndi ous</w>\nk bs</w>\nwood ward</w>\nhero ine</w>\nlu mber\nsea world</w>\no ws</w>\nmc ke\nmaver ick</w>\ngu la</w>\ncross roads</w>\nfan g</w>\ns ade</w>\nnik ol\nchee tah</w>\nme c</w>\npp g</w>\ner ick\nðŁİ µ\ntox ic\nbj j</w>\nviol a</w>\nsp ire</w>\nch ino</w>\ntra vis\ninstitu tional</w>\nha as</w>\nlow ry</w>\nw ac\nea e</w>\nhu mid</w>\nmp ton</w>\nru ck\nje w</w>\nc ine</w>\nzim mer\nse f</w>\nbhar at\nfre es\naam ir</w>\nðŁĴ ħ\nz inc</w>\nwan e</w>\nmulti player</w>\nroyal wedding</w>\ne el</w>\npreci pit\nqu ery</w>\nkimber ly</w>\nisa bel</w>\nful fill</w>\nig an</w>\nvau l\npan e</w>\nsc y\ndig it</w>\ngun n</w>\nu tah\ndog day</w>\nfi on\nxia omi</w>\nda c</w>\nel ast\ncha vez</w>\nro blo\ng ine\nten th</w>\nab h\nke to\nhur dle</w>\nna dia</w>\nmemorab ilia</w>\nha bs</w>\nqu an</w>\nh w\nhv ac</w>\npix ar</w>\nec cle\nkram er</w>\naccu ses</w>\nðŁĴļ ðŁĴļ\nper se\nmean time</w>\nwa hl\natle tico</w>\nâĢ¢âĢ¢ âĢ¢âĢ¢\nott oman</w>\nno vo\nk us</w>\nconne cted</w>\ntru sts</w>\nd mv</w>\nspen cer\nrahu lg\ndo ve\nsto kes</w>\nbolog na</w>\nenthusi asts</w>\nÃ ª\nrockstar games</w>\nted cruz</w>\ndu ras</w>\ns acked</w>\nlate x</w>\nimmer sive</w>\ncer t</w>\nlu cin\nprinci pals</w>\nfa res</w>\nsa ils</w>\nfar n\nam ent</w>\nsaf fron</w>\nquent in</w>\ncheck point</w>\nfer ris</w>\nex cur\nðŁĳī ðŁı¼</w>\nbai ley\nse h\nter re</w>\nmad am</w>\ns band</w>\nwan derers</w>\ncumber batch</w>\nyy c\ndigit ally</w>\nblackandwhite photography</w>\nroll in</w>\nmoroc can</w>\nðŁĮ ħ</w>\ndin ner\nd well\nto om\nm ye\nez ra</w>\ncp fc</w>\nwar hol</w>\nme er</w>\njon ah</w>\nno aa</w>\ns gate</w>\nso on\nsecu lar</w>\ng ating</w>\nti o</w>\ndri ver\nsi ssy</w>\nassan ge</w>\nta th\ned mund</w>\nbobc ats</w>\nra ji\npo stage</w>\nstu ds</w>\nm gm</w>\nkat o</w>\nedin burgh\nmeet the\nshir t\nfa a</w>\nmens fashion</w>\nsp reads</w>\nwi m</w>\ncar ts</w>\nphoe be</w>\nj ars</w>\nbot swana</w>\nÙ Ĥ\ned war\nsk ar\nri ve\ngu sty</w>\nc tv</w>\nferdin and</w>\nsu therland</w>\nnickimin aj</w>\nk v\nsi us</w>\nbee ch</w>\nre z\ndesi res</w>\non ial</w>\ncamp o</w>\nquar ry</w>\nlor raine</w>\ngil more</w>\nig gy</w>\nµ ï¸ı</w>\nho pping</w>\navi z</w>\nðŁĮ º\nuni sex</w>\ndedic ate</w>\natt itudes</w>\nste er</w>\njun kie</w>\nrail way\ny b</w>\nwhi sper</w>\nkey an</w>\nk us\nju g</w>\ndi x</w>\na ins</w>\nsum mon\nov ich</w>\nsy ed</w>\nher ald\nma ison</w>\nme ded</w>\nwild flower\nmain land</w>\nri sky</w>\nru kh</w>\nover looked</w>\nki c</w>\ndestro ys</w>\nnam an</w>\nki p\nz ano</w>\nchampion sleague</w>\nban dit</w>\nquin cy</w>\nsmi le\ncal vin\nopen ings</w>\nta pp\nol ulu</w>\nspec tro\naccred ited</w>\nap k</w>\npra ised</w>\nbar nett</w>\npol len</w>\npremi ered</w>\nselen agomez</w>\ntou red</w>\nscreen ings</w>\nuu u</w>\nmis o\nen se</w>\nadam lambert</w>\nguel ph</w>\nhar yana</w>\nhu tto\nle ar</w>\nl tc</w>\npo ached</w>\nbrex it\næ Ŀ\ntt c</w>\npa vement</w>\nmon gers</w>\nro e\nad ers</w>\nling ton\nparticip ant</w>\nca red</w>\nga il</w>\ny ates</w>\nlan tic</w>\ndash board</w>\njo o</w>\nfeli pe</w>\nssi onist</w>\nbu m\ns end\na eri\nthu gs</w>\nluci fer</w>\na he\ndete ctor</w>\nfil ly</w>\ngas oline</w>\nham per</w>\nhump day</w>\nthe ta</w>\nthe band</w>\nfore casts</w>\no hhh</w>\nlo bb\nhol l\ncp u</w>\naz u\nad ar\nhai ley</w>\nbu b\ncar t\nquo ted</w>\nan archy</w>\npan cre\ntwit art</w>\nal den</w>\nst ash</w>\nthe less</w>\nor ni\nbelie bers</w>\nmor mon</w>\npartic le</w>\navi ation\nâ¬ Ĩ\nwebcam toy</w>\nsad dened</w>\ncru is\nham let</w>\nn ct\nroll ins</w>\nmarque e</w>\nsaw yer</w>\nreli ance</w>\na ura</w>\ndi ec\nsoo thing</w>\nsig nings</w>\nak is</w>\nÃ ³</w>\nat kins</w>\naer op\nðŁĮ ¿\ny ab\nsh ari\ncon nol\ndu bbed</w>\nmanufac ture</w>\nconvin cing</w>\nfeelthe bern</w>\nra u\npu lit\non ec\ngem stone</w>\nur ging</w>\nbag u\nga h</w>\naci ds</w>\nfi anc\nzodi ac</w>\nsn oop</w>\nher rera</w>\niniti ated</w>\nven ge\nprofess ors</w>\npro di\nstron ger\ne mission</w>\nbb a</w>\nhal le\nta pp</w>\nhaw an</w>\nwh im\ncompe ted</w>\nmyr tle</w>\nir port</w>\ncold play</w>\nach e\nske p\nm son\nss ic\ncalli graphy</w>\nswim mers</w>\nme y</w>\npp c</w>\nthri ft</w>\npo c</w>\nre places</w>\ncommu ter</w>\nâģ¦ âģ¦@</w>\ngo ers</w>\nlo gue</w>\npara dig\nbas kets</w>\nsensiti vity</w>\njoh an</w>\natl antis</w>\n& &</w>\nsuit case</w>\nanxi ous</w>\nl h\nstr i</w>\ngal loway</w>\nstre ad</w>\nwar den</w>\ngr ounded</w>\nffici ency</w>\nli feat\nreli c</w>\ndisgu ise</w>\nisland ers</w>\nf cofficial</w>\nclassical music</w>\nb mc</w>\nen field</w>\nbi que</w>\noak ley</w>\nbat man\nsla ying</w>\nner ves</w>\nmul tit\ncalci um</w>\nprojec tor</w>\nscott sdale</w>\nant ino</w>\ngri ps</w>\nkim mel</w>\ndes mond</w>\nprote stors</w>\nhi atus</w>\nmetaboli sm</w>\nconclu ded</w>\npress er</w>\nti pping</w>\nsli de\ne to\nhun ting\naus open</w>\nri k</w>\npp ery</w>\ninnov ators</w>\npitch ers</w>\nag ger\nfun gi</w>\nz ad</w>\nproli fic</w>\nrockn roll</w>\nbl ames</w>\nct ar</w>\nstam ford</w>\nq ad\nmozz arella</w>\ninsan ely</w>\nden ver\nph ouse</w>\nnom ad</w>\nï ¿\ns ris\npro du\nhen ley</w>\npag an</w>\nam trak</w>\nru bi\nin cl\ntu tor</w>\nsco tia</w>\nwo es</w>\nsing apo\nfun nel</w>\nturn bull</w>\nknow ledge\ngri mm</w>\nreal madrid</w>\nwe are</w>\nmissi les</w>\ncon sol\nemo jis</w>\nsne ak\nsmi ths</w>\nru iz</w>\nbr ou\ni el\nha ver\nðŁĮ ļ</w>\nkin gof\nbasil ica</w>\ncircul ation</w>\nprin ters</w>\nta pping</w>\nri dley</w>\ndra gged</w>\nha j\nwrit er\nfundament als</w>\npersonal ities</w>\nme tre</w>\nstereo types</w>\nbur le\nbest of\nn ffc</w>\nha th\nmini stries</w>\na ali\ntrac ing</w>\npav ed</w>\nł ï¸ı\ng ic\ninsp ire\ntu g</w>\nha re\nrepe ated</w>\nex pon\nlol li\nrho de</w>\npre cin\ninstall ations</w>\ninstag ram\naz ar</w>\ni es\nsole ly</w>\ndu kes</w>\nmission ary</w>\nvan guard</w>\nfursuit friday</w>\non d\npol ari\nma st</w>\nhar an</w>\njos Ã©</w>\njack ed</w>\nec oun\nal ities</w>\nne ph\nra vel</w>\nmoder ated</w>\nsco w\ns fb</w>\nuru guay</w>\nas o</w>\nni g\nau du\np ints</w>\nlat ina</w>\nben z\nm itting</w>\nchar ted</w>\nmat ology</w>\ncit ro\nbiop ic</w>\nðŁĳ Ń</w>\ndjo kovic</w>\nfox y</w>\nagu il\nso to</w>\nan ada</w>\nsin king</w>\nsc rap\nhair s</w>\nbethan y</w>\nfact friday</w>\nðŁĲ Ĳ</w>\nunlea shed</w>\n) (</w>\ncontra dic\nram on</w>\ncoast line</w>\ny ong\nsn sd</w>\nli gan</w>\np ome\nmit age</w>\nge tt</w>\nwat i</w>\nri sk\nso aring</w>\nbru sh\nf pl</w>\nav an\nå Ĩ\nlar son</w>\nsh ear\nmul til\nblu r</w>\nmulti media</w>\nchun ky</w>\npar i</w>\nn ani</w>\nweir d\ncholester ol</w>\nchar les\ndream ed</w>\ntan ning</w>\npuzz les</w>\nfr am\nhand ball</w>\nch ag\nbeli ze</w>\nal u</w>\nbang s</w>\nÑ Ħ\ndetec tives</w>\nmc g</w>\nish q\nbo thered</w>\nsaf c</w>\nmp ing</w>\nten eri\ng ays</w>\nsail or\nan gi\nmul ticul\ngue ssed</w>\nros Ã©</w>\nhigh ways</w>\nbro om</w>\nchatt anoo\n- '</w>\nsee ker</w>\non ed\nat f</w>\nlu c</w>\n> <</w>\nbar i</w>\nper cep\njewel ry\nas ph\nsor row</w>\nsl ing\nmam moth</w>\njac kie\në §\nwilt shire</w>\nsa o</w>\ncan cell\nim paired</w>\ntor ial</w>\nbre ed\nguy en</w>\njud ice</w>\ntit le\npro spective</w>\napplic ants</w>\nðŁį Ĭ</w>\nepis cop\ne id\nb yo\nstock ings</w>\nðŁĴĥ ðŁĴĥ\nll p</w>\nsna g</w>\nkeep it\nl ough</w>\nol son</w>\nmatur ity</w>\n!! !\"</w>\ncop ter</w>\ni sha</w>\nbl i</w>\nwil mington</w>\ntr youts</w>\nth ai\nðŁ¥ ³</w>\npe bble</w>\nkra ft</w>\nf p\nÂ º</w>\nssi vely</w>\nli vin</w>\ncontest ants</w>\ntex tures</w>\njo an\nh dr</w>\nfilm festival</w>\nprov ence</w>\nwi do\nop end\nc si</w>\nsto wn\ncro ati\nad just</w>\nhost ile</w>\nanaly sts</w>\nil an</w>\ncu ppa</w>\nbru m</w>\nnewfound land</w>\ngood win</w>\nme tt</w>\nmall orca</w>\nplu gs</w>\nbu k\nbb hutto\nwrest le</w>\nsa ire</w>\nsho pped</w>\nfor za</w>\nle head</w>\nvi vo\nba st\nro xy</w>\nreg is</w>\nhard working</w>\nhon olulu</w>\ndesp air</w>\nyoung sters</w>\nni g</w>\nimpro mp\nroll tide</w>\nde emed</w>\ntre ason</w>\nru shed</w>\nfor ged</w>\nff f</w>\npikach u</w>\nbri ggs</w>\ndo it</w>\nac cent\nla us</w>\ngla ze</w>\ncompet ent</w>\na ho\nphoto g</w>\nmid field</w>\nle go\nhar vard\nmin orities</w>\nre illy</w>\nslic ed</w>\nonce upon\niniti ally</w>\nfinanci ally</w>\nlandscape photography</w>\nhar dro\nqu o</w>\nmm ers</w>\npar kinson</w>\nsmu gg\nread iness</w>\nbru tally</w>\nglou cester\nmp ed</w>\nbbhutto zardari</w>\nmur der\nye d\ndat aviz</w>\nsr t</w>\ndow ning</w>\nbi ans</w>\nm Ã¼\nfle ck</w>\nfli pped</w>\ns ly\nbrilli ance</w>\nri m\nk um</w>\nbubb a</w>\nko i</w>\nknit ted</w>\nsor g</w>\nma is</w>\nðŁĮ ²</w>\nti ss\nsu stain</w>\nsen su\nak han</w>\nzi est</w>\nexam ines</w>\nchardon nay</w>\nuser name</w>\nshort list</w>\nre bs</w>\non o\ndar ing</w>\nhard wood</w>\nche que</w>\nrighte ous</w>\nlight ening</w>\ndir k</w>\nshra dd\ndu ra\ndown stairs</w>\nsh al</w>\nami gos</w>\nru ff\ns law</w>\nri es\nred nation\nman us</w>\nðŁĩ§ ðŁĩ·</w>\ndistin ction</w>\nu bun\ndur an</w>\nmi gra\nthi ans</w>\nla ver\ndomest ic\nk x\njaz zy</w>\njusti fy</w>\nbelong ing</w>\ninsul ation</w>\ncolor stv</w>\ndrun ken</w>\nchann eling</w>\nqu and</w>\nxi ii</w>\nenligh ten\nkan o</w>\nfati ma</w>\nteen choice</w>\nterri fied</w>\np ba</w>\nas ley</w>\nmet museum</w>\ndun e</w>\npack er</w>\nki o\nðŁĴľ ðŁĴľ</w>\nbo iler\nfas cism</w>\nar mored</w>\nback grounds</w>\nin mates</w>\nembarra ssed</w>\ndefin es</w>\nth d</w>\nwe go</w>\nsilic one</w>\nlo on</w>\nel ding</w>\nbor rowed</w>\nhe mp\nak sh\nkaw asaki</w>\nbr y</w>\nde af\nkill er\ndispo sal</w>\nðŁĩ °\nglaston bury</w>\nun covered</w>\no xide</w>\npo ff</w>\nd ant</w>\nk j</w>\nku ro\ndri zzle</w>\npeop les\nfe e\npro pri\ndd lovato</w>\npi ggy</w>\not is</w>\naller gies</w>\nu bis\npengu in\nser a</w>\nvi z\nprosp erous</w>\nici des</w>\ntornad oes</w>\nsene gal</w>\nweb cast</w>\nsto red</w>\nenchan ted</w>\nbb cone</w>\nbay area</w>\nentrepreneu rial</w>\nrednation rising</w>\nexperim enting</w>\nang an</w>\nlot to</w>\nthey re</w>\npor e</w>\ner p</w>\nseren e</w>\neast wood</w>\nbro kers</w>\nbar ge</w>\nstal lion</w>\ntimber lake</w>\ntailo red</w>\ndy stop\nb ate</w>\nlat ors</w>\ndi xit</w>\nbran son</w>\ndynam o</w>\nky lie\nshame ful</w>\nbt wn</w>\nspring time</w>\nmix ture</w>\ns ounded</w>\nlu ton</w>\ndad es</w>\nmal a</w>\nop ra</w>\nen ic</w>\nrahulg andhi</w>\nse wer</w>\n~~ ~~\nky u\nnor theastern</w>\nca er\nbc u</w>\nnir vana</w>\nkitch ens</w>\nous y</w>\nal m</w>\nriver dale</w>\nhid den\nfl int\nsp d</w>\npat rons</w>\nkaty perry</w>\nau gh\nexhib itions</w>\nsm c</w>\nshu ts</w>\nat ore</w>\nda in</w>\nsome thing\nber th</w>\nbo g</w>\npor ter\ngen to</w>\ncon cussion</w>\nang lic\nro we</w>\ngr illing</w>\nscar lett</w>\nmaster ing</w>\nmor nin</w>\ncomm ented</w>\nsi me\nsi zing</w>\nchrist y</w>\nce os</w>\nst m</w>\nat ry</w>\ntari ffs</w>\nvac ation\npre judice</w>\np su</w>\nparen tal</w>\nfar age</w>\ncan a</w>\ncap com</w>\nkoso vo</w>\nyou re\nmen stru\nstal in</w>\ngrape fruit</w>\nbr an</w>\nche sa\ndav en\nexc el\n!! )</w>\nà¹ Į</w>\ndistribu tor</w>\nce a</w>\nbride sma\nmillenni al</w>\nwa in\nob serving</w>\nmis ery</w>\nplan etary</w>\nexpo sing</w>\nbra ised</w>\ncomp ton</w>\ndon gha\nq l</w>\nspring steen</w>\nth ul\nsyl ve\ncab o</w>\npal ad\nniel sen</w>\ngaz ing</w>\nba ja</w>\nr oud</w>\norchi ds</w>\njohan nesburg</w>\nse man</w>\nd ji</w>\noper ative</w>\naffe ction</w>\neclec tic</w>\nat c</w>\nmut ant</w>\naw x</w>\nnic e\nmel bourne\nindu lg\ntu lip</w>\ndias pora</w>\nwel p</w>\nbig gie</w>\nmississ auga</w>\nretri ever</w>\nor an</w>\ntam my</w>\nc ta</w>\nhipp o\nseas oned</w>\nger mans</w>\neng v\nmarvell ous</w>\nim f</w>\nrela ys</w>\nmon tan\nmaur iti\nme ister</w>\nas surance</w>\nreig ning</w>\nsu fficient</w>\nhan e</w>\nno thing\npos se</w>\nnav y\nin love</w>\nbrigh ton\nen qu\nch ung</w>\nsweat y</w>\nes c</w>\ncal ed\nman s\nnicar agua</w>\nsl ices</w>\nmo cha</w>\nwashington post</w>\nbb n</w>\ndam ned</w>\ngrow ing\nen burg</w>\nlo an\nme s\nwh oops</w>\nbeliev ers</w>\nspi el\nvo daf\nl at</w>\ns led</w>\ncricke ter</w>\nbrown e</w>\ngolf ers</w>\nbar ra\nwat chers</w>\nlu igi</w>\nsw amy</w>\nmom s\npit ched</w>\nsan tor\ncr s</w>\nsi re</w>\nsc amp</w>\nbo de\nste war\njon ny\nent ity</w>\npac qui\nmind ful</w>\nmin india</w>\nbear ded</w>\ntemp t</w>\nscorpi on</w>\neat on</w>\nauthori zed</w>\nar to\ns vp</w>\nop athy</w>\ncch ini</w>\nhouse music</w>\ndisney world</w>\nâĢĶ @</w>\npro pose</w>\ndi y\nexpen se</w>\nten g</w>\npupp ets</w>\nsm el\nd aca</w>\nper ry\nfin n\nboo sting</w>\nlefto vers</w>\ncou gs</w>\nsatell ites</w>\nman y\naz e</w>\ng ong</w>\nfi e\nmetho do\nfer ries</w>\nðŁ¤Ķ ðŁ¤Ķ</w>\nexplore rs</w>\nload er</w>\nattrac ted</w>\nil ton</w>\ngodd amn</w>\npi azza</w>\ndoc tr\nsav ing\nparagra ph</w>\nvisu alization</w>\nmay ors</w>\nwork flow</w>\nack les</w>\nðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ\nà¤ ¸</w>\ntwer k</w>\nclu t\nlo ver\nte ases</w>\nsi an\no te\ndeter ior\naccor d</w>\nl fw</w>\nswar ovski</w>\nnat al</w>\ntra ps</w>\nk ina</w>\nanaly ze</w>\nlaye red</w>\nbever ages</w>\nun it\nran som\npe shaw\ndest ined</w>\nastro logy</w>\nsi pping</w>\nmiley cyrus</w>\ncam ino</w>\nmarshmal low</w>\nbli ss\nout back</w>\nfa q</w>\nint oler\nhumil ity</w>\npo ppin</w>\nhallo ween\nmon tene\nop hy\nnu n</w>\ntattoo ed</w>\na as\nðŁĮ ³</w>\ndale y</w>\nqual ity\ndu sa</w>\nfisher men</w>\nswi f\nter rac\nst au\nle in</w>\ntrol ling</w>\nship ment</w>\ngarden er</w>\nmarch madness</w>\nhead band</w>\ngr t</w>\nbur nett</w>\nw and</w>\n!!!! !!!!!</w>\ngh e</w>\ndu x</w>\nhu d</w>\nwar ner\nðŁĩ ¦</w>\nex ile</w>\nrescu e\nrat a</w>\nd han</w>\nduc ati</w>\ndro wn</w>\nbl ends</w>\nspi e\nalli gator</w>\nsimul taneously</w>\nbroo ke\nu ke</w>\nk har</w>\ncomm union</w>\nri ka</w>\nford fc</w>\nchin atown</w>\nyou rown\nme y\ncan al\nsyste matic</w>\nde pri\nox ford\nan il\nw ut</w>\nequ ation</w>\nbe z\nfle ur</w>\nthe good\nlang ley</w>\nad ity\ned ith</w>\nal fie</w>\nÐ¾ ÑĤ\nen cry\nbr ill</w>\nex emp\nce sar</w>\nmb ling</w>\nab ri\nsc icom\nj ing</w>\nschool ing</w>\nmi ka\nmechan isms</w>\nimpromp tu</w>\nrhe a</w>\nmoo re\ncrime a</w>\nbe sto\nwri ght\nel ders</w>\nro ds</w>\nkam al</w>\nfolkl ore</w>\nbe et</w>\nmini on</w>\nreli eve</w>\nthr o</w>\nteam usa</w>\npas cal</w>\nmade with\nboli via</w>\nitt i</w>\nfree bies</w>\ndesi red</w>\nbest selling</w>\nl iness</w>\nla den</w>\nke ane</w>\nmi sts</w>\nhipp ie</w>\natta chment</w>\n@ /</w>\nse w</w>\nflan agan</w>\nâĿĹ ï¸ı\nsupre mac\nstl cards</w>\nsi as</w>\nq u</w>\nrh ys</w>\nste ep\nval leys</w>\nv w\npav ing</w>\ndisp at\nal ison\npor te</w>\nid u</w>\nnew sc\nsoc ket</w>\nmo s\nco star\nre vo\nprote ins</w>\nstanley cup</w>\nm cal\near ring</w>\nse cs</w>\nmc lean</w>\ncap ric\nnick elo\nad en\nv c\nshou se</w>\nadap tive</w>\nmaxi mize</w>\nentertain er</w>\npro se</w>\ngri ffi\nsix teen</w>\nlam ar\nmi rage</w>\nsaudi arabia</w>\nawe ather</w>\nru st\nin filtr\nfashion week</w>\nðŁĺĬðŁĺĬ ðŁĺĬ</w>\nselec tive</w>\nbubb le\na den</w>\nfen nel</w>\ndeci sive</w>\nm ta</w>\nmock ing\nmb les</w>\nst amp\nmu le</w>\nbernar do</w>\ngr in</w>\npo tt\nj ingle</w>\nvet tel</w>\ncolom bian</w>\ncam o\nmotivation monday</w>\nba han</w>\np ly</w>\ndh ary</w>\nk ami</w>\nx men</w>\nsleep er</w>\ngar a</w>\nmy sti\nconfi dential</w>\nconflic ts</w>\np neu\nce s\ninsur tech</w>\nclean se</w>\nme rely</w>\nva is</w>\ntu x\nthe great\nshar on\nma j</w>\nhol a</w>\neco systems</w>\naj ay</w>\naa j\nhu sh</w>\nhar mon</w>\nbackto school</w>\nwiki leaks</w>\nreflec ted</w>\nðŁĺ ĵ</w>\ncommemor ating</w>\nac et\nbuck ingham</w>\nmessi ah</w>\ntu ous</w>\nhor net</w>\nto be</w>\nd q</w>\nhe ine\nmi g</w>\npl ate\nnichol son</w>\nsp ie</w>\ncumber land</w>\nnor mal\npho bia</w>\nhappy halloween</w>\ncity fc</w>\nmc el\ngilli an</w>\nke to</w>\nlu de</w>\nde mise</w>\nsu ga</w>\nstr ate</w>\nmcgr ath</w>\nvisit scotland</w>\nfoo led</w>\ncb r</w>\ngc se</w>\ncol ori\npo td</w>\nmissuni verse</w>\nfin ances</w>\nma poli</w>\nfor ks</w>\nØ ´\ncann on\nmedic inal</w>\nðŁĹ ĵ</w>\nkh o</w>\nwre ck\npan to</w>\nbag el</w>\ngu ll</w>\nsyndic ate</w>\nic y\npr c</w>\nki en</w>\nzi ka</w>\nti sh</w>\npe ta</w>\nc co</w>\nli za</w>\nch ut\nex traction</w>\nel g\ngl i</w>\nfu eled</w>\npos it\nrespec tively</w>\nleice ster\nbr ink</w>\nvulner ability</w>\nim ported</w>\ne sha</w>\nðŁ¦ ħ</w>\nr ural\nre ll\ngam ing\natlan tic\naband on</w>\nno ah\nre solved</w>\npro state</w>\naller gic</w>\nps d</w>\nâĺ ¹\ndun geon\nfang irl</w>\nillumin ated</w>\nm hs</w>\nwhite sox</w>\nd ently</w>\nck o</w>\nendor se</w>\nover ly</w>\ndazz ling</w>\nprior iti\nnight life</w>\nut il\nbe have</w>\nflam en\neast bound</w>\nðŁĴ Ł</w>\nilove you</w>\ngov uk</w>\nmozam bique</w>\nalle gi\ndr i</w>\ntestim onial</w>\nath s</w>\nì§ Ģ\nmm y\nshab by</w>\npro secco</w>\nfriend ships</w>\ncal am\ndam ages</w>\noff set</w>\njura ssic\njun o</w>\narre ll</w>\nðŁĴ ©</w>\ninterven tions</w>\ndare devil</w>\ncar ver</w>\nrun away</w>\nran e</w>\ntruste es</w>\nha ute</w>\ndep ths</w>\nðŁİ Ń</w>\nme in\nsacrific es</w>\ncon cier\nne sting</w>\ni zzy</w>\nme tam\nilove my\nur ine</w>\ndu lu\nmal hotra</w>\nve ins</w>\nnight ly</w>\nco at\nan di\nhe witt</w>\nlon el\nci ble</w>\nwr ite\njen nie</w>\nsant ac\nĸ ï¸ı</w>\nstr ato\nsingapo re\nsop rano</w>\nkri sten\ncheer ful</w>\nflee twood</w>\nfa iri\nm eli\nwa st\ntur nt</w>\nsfor sale</w>\nsc rolling</w>\nangel ina</w>\nren dition</w>\njeric ho</w>\nnick y\nor b\nfla vo\npatri ot\nash eville</w>\nsick ness</w>\nre fund</w>\naggre ssion</w>\nb pl</w>\nãĥ ĥ\nelu sive</w>\nthi story</w>\nhang er</w>\nbu ffs</w>\nvil las</w>\nat kinson</w>\nsp h\nja it\ndecl ined</w>\nwo k</w>\nsupre macy</w>\noo tball</w>\ney ang</w>\nðŁİ ĵ\ns ford</w>\nath i</w>\nconsu me</w>\nroad ster</w>\ne so</w>\nu pro\nreci pe\nau f</w>\nuc i</w>\nar on</w>\noo oh</w>\ncs go</w>\nre ich</w>\nmc d</w>\nmin ute\nladi es\npun k\nrut gers</w>\nmee k</w>\nariz on\nta j\nland lord</w>\nde gra\nautu mn\nlyn x</w>\nus f</w>\nb hi\nfairy tale</w>\ndongha e</w>\nbet sy</w>\nexplo ded</w>\nchen nai\nop a</w>\npro tag\nbr ant\nðŁĵ °:</w>\ng f\npal li\nðŁı¼ âĢįâĻĢï¸ı</w>\nsu t</w>\nill ini</w>\ncolum nist</w>\nshir tless</w>\nde centr\nsear ched</w>\nec or\nbu ggy</w>\ns ack\nðŁĺĤ ðŁĺŃ\nde t\nther i\nor naments</w>\nbring back\nto v</w>\nquarter finals</w>\nic he\ncon stra\ngi er</w>\nbuchan an</w>\nvi x\nkay aking</w>\nmu stread</w>\nswal low</w>\nmel b</w>\nsc af\nop al</w>\nmay oral</w>\nhar at</w>\nðŁ¦ ĭ</w>\nschedu les</w>\nid f</w>\nha gue</w>\nro z\na ah</w>\nd mc</w>\ndu plic\nca che</w>\norph an</w>\nfrac ture</w>\nrec on</w>\nch av\nbun nies</w>\nal ain</w>\nmustaf a</w>\nðŁİ Ļ\nvac ations</w>\ndynam ite</w>\ntex ted</w>\nbroad caster</w>\nðŁĴ £</w>\nste amed</w>\nrock er</w>\ndi etary</w>\nluxury travel</w>\ninaugur ated</w>\nsa wards</w>\nvaugh n</w>\nlincoln shire</w>\nclick ed</w>\nkra ja</w>\nf anc\nremo ves</w>\nlayo ffs</w>\nmc far\nbre eds</w>\nwin nie</w>\njon ghyun</w>\nincen tive</w>\nvari ations</w>\npat ton</w>\natur day</w>\npersist ent</w>\npr un\npi ers</w>\ndal es</w>\næ ĸ\nbreast feeding</w>\nr ance</w>\nta wa</w>\nĤ âĸ\nmur doch</w>\ncap tive</w>\nthi stle</w>\nnic a</w>\ncommod ity</w>\ncou ldnt</w>\nboard walk</w>\ngraci ous</w>\npractiti oners</w>\nn gc</w>\nscru m</w>\nner o</w>\ncamoufla ge</w>\ncol on</w>\nhe i</w>\nphys icist</w>\nsaturday morning</w>\nten er</w>\nsi won</w>\ncolum ns</w>\nbru ne\ny vr</w>\nba ir\nreti res</w>\nhal am\ncab er\nshaz am</w>\nmin u\ncas cade</w>\nmilk shake</w>\ngri d\nd ren\nvin cent\nso dium</w>\nplat ter</w>\ncheer leader</w>\nchen ko</w>\ny ak</w>\nelimin ated</w>\nty po</w>\ny man</w>\nre think</w>\nâĿ Ĺ</w>\nts ville</w>\nbernardo kath</w>\nex tr\nðŁĺģ ðŁĺģðŁĺģ</w>\nta o\nre per\nmo ths</w>\nem powered</w>\nc iting</w>\ntranspor ted</w>\nmon ks</w>\nsan at\ncle ars</w>\nbachelore tte</w>\ncamp bell\nracha el</w>\nhar le\nhand ler</w>\nclimb s</w>\ninter ference</w>\nrele ase\nsh and\nr bs</w>\nhr h</w>\nãģ ª\nval le</w>\nr Ã©\nsli me</w>\nw akes</w>\nchu bby</w>\nslo an</w>\nel ves</w>\nath en\nattor neys</w>\nmicro scope</w>\nston er</w>\nsc aling</w>\no be</w>\nc out\nse man\nmid week</w>\nbal sam\nðŁĺį âĿ¤</w>\nti ful</w>\nv ish</w>\nlo tta</w>\nri pping</w>\nre mn\nti re\nle ap\nha vent</w>\nla by\nhi mach\nwhisp ers</w>\nwe in\nðŁİ ¸\nwild flowers</w>\nse le\nu cc</w>\nli ability</w>\naz ine</w>\nsw ings</w>\nk ya</w>\nta ir\nre main\ne do\nflo ps</w>\npoc ket\ngrand ad</w>\nexam iner</w>\ngr is</w>\nffe ct</w>\nðŁĳĬ ðŁı»</w>\nstud ded</w>\nheart beat</w>\nde acon</w>\nfirm ly</w>\ninfec tious</w>\nste f\nout lines</w>\nle asing</w>\ncla ws</w>\nsen se\ntab s</w>\nhoo t</w>\nmo sul</w>\nspa wn</w>\nco a</w>\nhog warts</w>\nve in</w>\nalban ia</w>\nmanu el\nb ino\nvaux hall</w>\nscot land\ngo bucks</w>\nmat ty</w>\nphy sio</w>\ntor ino</w>\nconst able</w>\ninvestig ated</w>\ns lower</w>\nmistak en</w>\nbay er</w>\nwild fires</w>\nvo ic\nx on\ntime to\nchas sis</w>\nbar ric\npi on</w>\nbald head</w>\nwoo k</w>\nregi str\ndra fts</w>\nb hs</w>\nli gue</w>\nl ick\nstaf fordshire</w>\nbaf ta</w>\ndar ry\nje anne</w>\nven ding</w>\ncor p\nâĽ ³ï¸ı</w>\nkid dos</w>\nfen way</w>\nca o</w>\nwest bound</w>\nðŁĺ Ļ</w>\ndv r</w>\nquick er</w>\nbla h</w>\ngoo die</w>\nðŁĴĭ ðŁĴĭ</w>\nvo x\nesp er\nfac ade</w>\ncor relation</w>\nred bull</w>\nrou p</w>\ndecl ining</w>\nchi ve</w>\nmc gee</w>\ntur o</w>\nin der</w>\nf eller</w>\nfu g\nil ysm</w>\nmar di</w>\npeshaw ar</w>\nki eran</w>\nine ma</w>\nmeat balls</w>\npe ck</w>\ndepre ssing</w>\nsen sing</w>\ngi z\ndd ington</w>\nspring watch</w>\nro aming</w>\nyellow stone</w>\nhorse shoe</w>\nam man</w>\nweek day</w>\nol or</w>\nðŁ¥ °\nboo sts</w>\nspr int\nscar ves</w>\nje e\nbee tro\ncl an\nall the\nìĦ ¸ë\nenlighten ment</w>\nado be\nre generation</w>\n? @</w>\ncont ag\nyach ts</w>\nto u</w>\nmor a</w>\nen voy</w>\nr ani\ngo li\ndhanush kraja</w>\nwood working</w>\nstreng ths</w>\nse di\ndisc s</w>\nar ina</w>\nsc on</w>\nlit e\nano ther\nðŁ¥ Ĭ</w>\nye men\ngu ern\nsav vy</w>\nlo yed</w>\nbiom ed\nheart break</w>\ncomra des</w>\nmilli e</w>\npat ch\nun f\njar vis</w>\nbl aming</w>\ncommemor ation</w>\nge y</w>\nå ¥\ncardio vascular</w>\nalig ned</w>\ndocu ment\n. ?</w>\naesthe tics</w>\nem u</w>\nthe irs</w>\nle h</w>\nps ic\nsi f</w>\npl ateau</w>\nex pend\ndomin ating</w>\nrob es</w>\nmauriti us</w>\nexcep tionally</w>\nhom er\ndiscover ies</w>\nbra un</w>\nten nant</w>\ninsul in</w>\nðŁİ ®</w>\ncar bs</w>\nte as</w>\n? !\"</w>\nzi e\nfranco is</w>\nbrow sing</w>\nth ol\ncla rence</w>\nhel per</w>\nob tained</w>\ncas sie</w>\nle es\n! ,</w>\npome gran\nhu bs</w>\npresti ge</w>\n] [</w>\nmach er</w>\nbott led</w>\npun ch\npi pe\no ch\ngall ons</w>\ndeliver ies</w>\nu ra\nun day</w>\nmon de</w>\ndepic ts</w>\nre gency</w>\noutra geous</w>\nkhal ed</w>\ncar o</w>\nhe arti\nza g</w>\ndevelop mental</w>\nover coming</w>\nstati stical</w>\nflavo red</w>\nfor ds</w>\ncre atives</w>\nlau rence</w>\ndi as</w>\nsun screen</w>\nin ked</w>\npre acher</w>\nn ul\nimpac ting</w>\nauti stic</w>\nâļ Ķï¸ı</w>\no ss\npel icans</w>\ncele ste</w>\nv b\nru mp</w>\nmc gra\nfair fax</w>\nhu mor\nbbc news</w>\nrow ling</w>\ncal der\nseam less</w>\nag ne\np ti\nmix ed\nt shirts</w>\nmer ci</w>\nb tob</w>\nwomen instem</w>\ngenealo gy</w>\npre ven\nl our\ncra dle</w>\ngi use\nÐ ¾</w>\nchron o\nfair ness</w>\nchocol ate\ntor y\nas da</w>\npre scott</w>\nstret ched</w>\nal man\nu il</w>\nre charge</w>\nin tre\nob st\nhosp ital\nhay ward</w>\nteneri fe</w>\nfried man</w>\nvap ing</w>\nconfe ssions</w>\nye ah\nbal li\nluck now</w>\ncor pse</w>\nsculp tor</w>\namp ton\nt pp</w>\nindic ates</w>\nsur plus</w>\ntru man</w>\nðĿ Ļ\nsin ha</w>\nin vo\nsovere ign\nke v</w>\nestabli shing</w>\nengra ved</w>\nassu ming</w>\nðŁı ģ\nsou za</w>\nfab i\nton ed</w>\noun ge</w>\ndel oit\ndow ney</w>\nno ble\nom or\ncar tridge</w>\nðŁı Ĳ</w>\nu hur\nhol loway</w>\nsucce sses</w>\nr sa</w>\nâĦ ¢\nma zz\ntw d\ndisc ourse</w>\n. <</w>\ny at\nsatis fy</w>\ncom pri\nà¤ ¹</w>\ngraph ite</w>\ndisser tation</w>\nar ter\ní Ķ\nb ally</w>\nzom bi\nly ons</w>\na ic\nu bc</w>\npra da</w>\ne il\nda x</w>\ncla i\ngrand daughter</w>\nextravag anza</w>\nchall enge\nðŁ¤ ŀ\npo ver</w>\nprimar ily</w>\ndad dy\nman a\nbi kers</w>\ninqui ries</w>\nda un\nfel ine</w>\ngener ative</w>\nhe f\nbenef iting</w>\nlind sey\npol ka</w>\ndemonstr ated</w>\nal le</w>\nrand y\no su\nlow key</w>\nweir dest</w>\nred bull\nour y</w>\nn ous</w>\nwood stock</w>\ncre denti\nnic er</w>\ng ado</w>\naly ss\nap h</w>\nprepa redness</w>\nstation ary</w>\nincorpor ated</w>\ndy er</w>\nsarato ga</w>\ncele sti\n: \"\nantibio tics</w>\nor gs</w>\ninde fin\nap ron</w>\nÐ¸ Ð\nfif teen</w>\nno f\nðŁĶ Ŀ</w>\nph x</w>\nte ga</w>\nm z\norganiz ational</w>\non air</w>\nband ung</w>\npleas ures</w>\nmor i</w>\nsecre tari\nrac coon</w>\nca shi\npil ates</w>\nk on</w>\ngeof frey</w>\nla o</w>\nkam p</w>\ndepart ments</w>\nback packing</w>\nan am\nÃ «\ncrack down</w>\naun ty</w>\non do</w>\nli zzie</w>\nph ers</w>\ncu n</w>\nðŁĩ ±\nk pop\npu t\ninten tional</w>\nconnol ly</w>\nbar clays</w>\nhs fb</w>\nswin don</w>\nu ku\ns ally\na int\nâľ ħ\npen ang</w>\nup lifting</w>\nepile psy</w>\ninter ro\nbun gal\ngo ku</w>\nblue berries</w>\nà¤ ¦</w>\nu ssia</w>\nsil ky</w>\nmou red</w>\ni stic</w>\nbri efs</w>\nme ats</w>\ngo b\nch aser</w>\nstate wide</w>\npra sad</w>\ngl itch</w>\nar in\nban ff</w>\nmemb er\nðŁĺŃ âĿ¤ï¸ı</w>\nlo ving\nhall a</w>\nà¸ ¡</w>\nsmo kers</w>\nyak u\nscicom m</w>\nphysi o\nsw ol\nlem ons</w>\ngel ato</w>\nch ool</w>\ncapit als</w>\nki stan</w>\nti ghts</w>\nspi kes</w>\ntrav ellers</w>\nik lan</w>\ncommissi oning</w>\nar ine</w>\nemabiggest fans</w>\nempha sis</w>\nfront line</w>\npad dock</w>\ndestruc tive</w>\nba ha\nl inger</w>\nje wish\nshet land</w>\nmc gin\nmon key\nko z\ns one</w>\nraj ini\nte h</w>\ny en\nc vs</w>\nmasqu er\ngir ly</w>\nwe sle\nwas nt</w>\nbro dy</w>\ntermin ator</w>\ngil le\nmag gi\nbir die</w>\njeopar dy</w>\ncu bic</w>\nvm ware</w>\nintric ate</w>\nan up\nto pia</w>\neast on</w>\nsab res</w>\ninvestig ates</w>\nbu sting</w>\nbil ingual</w>\nvalent ino</w>\nin format\nfer re\nadvent ur\nhydr ate</w>\nfor sy\naz iz</w>\nsan to\ne de\nwhist ler</w>\ncontinu ously</w>\nd ham\nun used</w>\nji had</w>\naddic tive</w>\nvi dy\ndo b\ni do</w>\nfi ed\nni versary</w>\nn one\nfu er\nðŁĺį ðŁĺĺ\ncoven ant</w>\nprin table</w>\nimmac ulate</w>\no em</w>\ncl t\nserv ants</w>\nconsu med</w>\nun released</w>\nsc um</w>\npack aged</w>\nme re\nìĦ¸ë ¸\nto by\nta f\nspo ons</w>\nme al\nf ball</w>\nfair field</w>\njan et\nsilver stone</w>\ndart mouth</w>\nfollow me</w>\nvoy ager</w>\nkom bat</w>\nanni ver\nene w\nmag dal\nho ve</w>\nsa th\ngrizz ly</w>\ncar di</w>\ngart ner</w>\nsand y\nkan ye\npost ure</w>\npo ign\nim pulse</w>\nradio logy</w>\nhoriz ons</w>\nsi am\naish war\n= =></w>\nno che</w>\ntr is</w>\nel yn\ncom me</w>\ndu i</w>\nce c\ncouncill ors</w>\ncudd ling</w>\ncreep ing</w>\nloc ke</w>\nmanag es</w>\ntrans ferred</w>\nne cks</w>\ndi er\ndan o</w>\nv ick</w>\nlun ches</w>\nd he\nen sures</w>\ncri ss</w>\nul ster\nbann on</w>\ncont enders</w>\nsp am\nsweet ness</w>\nmed al\nhon duras</w>\narc tic\nultra sound</w>\nin fr\ndisco vers</w>\nei ffel</w>\nca sters</w>\nru ben</w>\ndu st\nawe ed</w>\natri um</w>\nlest we\nse ared</w>\nðŁĵº :</w>\nty ne</w>\nex changes</w>\nlittle mix</w>\nl le</w>\nastron auts</w>\nhersh ey</w>\nwork day</w>\nkno b</w>\nso v</w>\nre signs</w>\ntoday show</w>\nder man</w>\nan th</w>\naf c\nta ster</w>\nsw oo\nsa eed</w>\nper ing</w>\nnarrow ly</w>\nrn li</w>\nbest buy</w>\npanas onic</w>\nobst acle</w>\nfarmer s\nðŁİ Ļ</w>\npa wan\nki est</w>\nang ers</w>\nabsur d</w>\noh my\nsin o</w>\npist achi\nsp ice\ngiu li\nprime time</w>\nko w\nk ens</w>\nex agger\n! ?!</w>\nu ba</w>\nmidd les\nju dd</w>\ne jec\nslam med</w>\npen sions</w>\nof a</w>\nre create</w>\nb hp</w>\nxx l</w>\nliver pool\nthre sh\npur ity</w>\nni eu\nhol ics</w>\nwr ath</w>\nra do</w>\ngli o</w>\nam ma</w>\ndile mma</w>\ncr u</w>\nlets go</w>\n.... @</w>\nâĿ ĵ</w>\nsugge sting</w>\ntru mps</w>\nhor us</w>\nf v\nic om</w>\nrefer ring</w>\npredic tive</w>\ntar ts</w>\nge tte</w>\nso ck\nglo ssy</w>\npin ky</w>\nal ec\nthy me</w>\nou ra\nthero ad</w>\npe tr\ncr am\np fi\ndv n</w>\nme ier</w>\nincen tives</w>\ntun nels</w>\nmobi l</w>\nrec ap\nextra s</w>\nupri ght</w>\nrev amp</w>\nper severance</w>\n, -</w>\not p</w>\nmir ror\nar wx</w>\nger ry\nma her</w>\ng or</w>\nhom epage</w>\nam is</w>\nag ra</w>\nmade le\nbest friend\nsirius xm</w>\nbun dles</w>\nadmir ing</w>\nt dsb</w>\nðŁį ģ\nch as</w>\nslow ing</w>\nro h</w>\nwall papers</w>\nâĢ¦ /</w>\ntek ken</w>\ngang s</w>\ntal a</w>\nlind say\nshou l\nline backer</w>\ntool kit</w>\nur anium</w>\ncaly p\nab rams</w>\nmat thi\nðŁı ¿\nhon ourable</w>\nda yo\nver sail\ntan k\nst c</w>\nfr itz</w>\nspl end\npat ag\nanno yed</w>\non day</w>\ndevast ated</w>\nchattanoo ga</w>\nnational ism</w>\nmas sey</w>\njen n</w>\ntail or</w>\ndev gn</w>\norg ans</w>\nzu cchini</w>\non fox</w>\nsat ire</w>\nwex ford</w>\ndis grace</w>\nno to\nvol ta\nâĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ıâĿ¤ï¸ı</w>\nà ¶\nhome owners</w>\npoin ter</w>\nm cr\nau sten</w>\nday sto\nmo ons</w>\npal ma</w>\ngra zing</w>\ne so\ninfluen cers</w>\nshahid kapoor</w>\ncompli ant</w>\nmeasure ments</w>\ndevelop s</w>\ny d\npar l</w>\np vt</w>\nrand olph</w>\ntor tured</w>\nger ald\neli as</w>\ndeepi kap\nwar mup</w>\nhick ory</w>\ng ap\nco ffin</w>\nam our</w>\nre neg\nmoun ting</w>\nseven s</w>\nig le\nhi er</w>\ndec ad\ntri ght</w>\nesc apes</w>\nwer ner</w>\nt fl</w>\nful filled</w>\nni ger</w>\nsour dough</w>\nre aper</w>\nchoo ses</w>\nspin ner</w>\nweek nd</w>\nfil tered</w>\nsh uk\nkat i</w>\nold ham</w>\nopen source</w>\nkh anna</w>\nat elier</w>\nconne c\nopho bic</w>\ngla s\ncomplic ations</w>\nar son</w>\ncounc ils</w>\nsm ol\nas sy\nlur king</w>\nling ui\nhan ks</w>\ne in\nÙ ħ</w>\nru gs</w>\nn guyen</w>\nnou veau</w>\nmen ace</w>\nle v</w>\nalad din</w>\nru ining</w>\nround about</w>\nk m\ncon or\nshoo ps</w>\nmay day</w>\ntraum atic</w>\nprab has</w>\nka iser</w>\nk ita</w>\nrou ter</w>\npe dro\nre tar\nstun ner</w>\nspani sh\ndistur bed</w>\nacade my\ne learning</w>\nwit ty</w>\nsen g</w>\nfer al</w>\nav y</w>\nsta b</w>\nke aton</w>\nur du</w>\nko to</w>\nhu i</w>\ncoo ke</w>\nari an\nthe personal\nu ma\nse ap\na sting</w>\nrhetor ic</w>\nhand writing</w>\nmunici pality</w>\nconsor tium</w>\nðŁĲ Ł</w>\nglasgo w\nra ya</w>\neli za</w>\npolym er</w>\nbro th</w>\nprac ti\ncorrespon dent</w>\naddic ts</w>\ngay le</w>\nail ing</w>\no fe\np li\nhear tw\nst itch\nsight ings</w>\nprie sts</w>\nsam o\nslo th</w>\ngood wood</w>\nroc co</w>\nsab c</w>\nsumm it\nl ace\npres ley</w>\nitt en\ncin cy\nthepersonal network</w>\ns week</w>\npe gas\naf con</w>\nregi stry</w>\nci m</w>\nle th\ndic ap\ncand ice</w>\nflu ent</w>\nsm ack</w>\npede stri\nal oud</w>\ncar ac\npriyan kach\np gh</w>\nir ons</w>\ndol ce\nlat via</w>\ndece ased</w>\nthero ck</w>\ncla p\ncen e</w>\nfo am\nmorris sey</w>\ngre t\nessenti ally</w>\ncom cast</w>\nbe agle</w>\nargu es</w>\ning ed</w>\n- âĢ¦</w>\nsa g</w>\nha san</w>\nðŁĻ Ĩ\nðŁį °</w>\nnh ra</w>\nkann ada</w>\nindic ators</w>\non er\nbri xton</w>\nat as</w>\nscreen play</w>\nsor ority</w>\nsha heed</w>\nhe em</w>\nclass mates</w>\ntain ment</w>\nes i</w>\nbreast cancer</w>\nzucker berg</w>\naur or\nen cia</w>\nref ers</w>\nkae per\nvor tex</w>\ncom part\nlym ph\nphotograph ing</w>\nste ff\nrest ling</w>\npar sley</w>\nmom ento</w>\nth man</w>\nlac king</w>\ndu tt</w>\nocu lus</w>\nfin o</w>\nfren zy</w>\nra sc\nder n</w>\ndis missed</w>\nnoo k</w>\nmet gala</w>\nsh ill</w>\nrapha el</w>\nmaver icks</w>\nexhib its</w>\neag erly</w>\nc pa</w>\namen ities</w>\n. âłĢ</w>\nexo dus</w>\nern st</w>\nlit a</w>\ndeal t</w>\nwomens march</w>\ni ain</w>\nscore board</w>\ncampe ones</w>\nc en</w>\nti ki</w>\ngarri son</w>\nfidel ity</w>\nbra g</w>\nroad map</w>\npsy chop\nlo e\nble u</w>\nðŁĳĬ ðŁı¼</w>\nsau vi\nspr inger</w>\ntemp tation</w>\nru dolph</w>\nac ura</w>\nwic z</w>\nparach ute</w>\nstro l\nlen ny</w>\nzi k</w>\ndom s</w>\nnb af\nal pac\nvivi an</w>\nro ve</w>\npre et</w>\nperpe tu\nsna ke\nair soft</w>\ninfl atable</w>\nprin ces</w>\nati e</w>\nffe y</w>\npati ent\nm ire</w>\nchel le</w>\nsl ack</w>\ngroo vy</w>\n# :</w>\nup loading</w>\n!!!!!!!! !!!!!!!!\nsiem ens</w>\nprovi sion</w>\nv fx</w>\nneed y</w>\nf ats</w>\nto poli</w>\nbhu tto</w>\nsa thletics</w>\nalu ms</w>\nt winning</w>\nsouth western</w>\nadop ting</w>\nlast night</w>\nman ne\nla ga</w>\ntw ell</w>\nac ia</w>\n-- --</w>\neye wear</w>\nhur ley</w>\nfle e</w>\nsa ch\npe cker</w>\ncost ly</w>\nis k</w>\ncr ates</w>\npolic y\nero sion</w>\nin go\nwer k</w>\nðŁĲ į</w>\ntorto ise</w>\ntherap ies</w>\ninter net\nchihuahu a</w>\nri ps</w>\nfre i\ned or\ntai ji</w>\nt fc</w>\ndo d</w>\ndemp sey</w>\nchrist in\nchen g</w>\nhi ps</w>\ngra eme</w>\ncom passionate</w>\ncavali ers</w>\nhistor ic\nsoul ful</w>\ncrimin al\nja c</w>\nvin ci</w>\nexpi red</w>\nsur at</w>\nturi smo</w>\nk ona</w>\nse aweed</w>\nber ts</w>\nle ica</w>\nexpre ssing</w>\na al</w>\nwor t</w>\nbreak fast\nher ring</w>\nam used</w>\nrhu barb</w>\nmar tian</w>\ncospla yer</w>\ny ash\nstri al</w>\nra ul</w>\nrefer ral</w>\ndw ts</w>\nj w\nad ler</w>\ncur tains</w>\ngu r</w>\nval ence</w>\ntyr one</w>\nsw fc</w>\ncoach ed</w>\nre born</w>\ndiabe tic</w>\ncho ke</w>\nnor folk\ninvestig ative</w>\nðŁĴ¯ ðŁĴ¯\nz id\nv mas</w>\nphi e</w>\nobjec tives</w>\nâľ ĭ</w>\nover due</w>\ndi vers\nmat su\nðŁİŁ ï¸ı</w>\ncasu alties</w>\nà¸ §</w>\nal k\nstand ardi\nre alist</w>\narti facts</w>\npand or\nke x\nin vin\n( !)</w>\nine y</w>\npar aly\nmr t</w>\nfay e</w>\nthe voice</w>\non ga</w>\nde ed</w>\nskin ner</w>\naz wx</w>\nspeci men</w>\npriyankach opra</w>\nnu evo</w>\nbar kley</w>\ntoulou se</w>\nresu mes</w>\nfootball ers</w>\ncit i</w>\nfe tch</w>\nÃ¨ re</w>\nlestwe forget</w>\nðŁĻ ĭ</w>\nch unk</w>\ndri fting</w>\nmanipul ation</w>\nequ als</w>\npu tt</w>\nky ungsoo</w>\nâĿ¤ï¸ı #</w>\nela stic</w>\npar ano\nfo y</w>\ndo ping</w>\ncin cy</w>\nss ler</w>\ninterrup ted</w>\nal ay\nado res</w>\name thy\ncon voy</w>\nãĢ ı</w>\nĬ ãģ\nblack list</w>\ngener als</w>\nsa chin</w>\nbru shed</w>\noun ces</w>\nnon stop</w>\nilli ams</w>\nbt sarmy</w>\nu av</w>\nru ff</w>\nbur ma</w>\nbi k\ndefen ce\nschul tz</w>\nbo asts</w>\nlonel iness</w>\ngo re\ntrans forms</w>\nalum na</w>\n@ @</w>\nra ppers</w>\nne hru</w>\ncar o\nhimalay an</w>\nwearab les</w>\nge h\npepper mint</w>\nre development</w>\nflam ingo</w>\ncos by</w>\nbig baldhead</w>\nag ri</w>\nbare foot</w>\nsco pes</w>\nre gram</w>\ngh ana\nðŁİ «</w>\ni heart\nsa die</w>\ncarri e\nmicrobi al</w>\nku ala</w>\nsk ater</w>\nquer que</w>\nâĻ ©\ngen res</w>\nreas oning</w>\nch ased</w>\nas o\nsli pped</w>\nen can\nvam os</w>\nker s\nad verse</w>\nmo il</w>\ncommod ities</w>\nwith you</w>\nsil ent\nhy pe\nan de</w>\nam ination</w>\nwhi spe\nlit z</w>\nâļ½ï¸ı âļ½ï¸ı\nri ff</w>\npp y\nlam bs</w>\ngan esh</w>\nab sent</w>\nregu lator</w>\nmarse ille</w>\nen roll</w>\npar cel</w>\nwa p</w>\nby rd</w>\nðŁĩ Ń\ntu ber\ncountry music</w>\npar l\ncontro llers</w>\nresponsi bilities</w>\nwe y\nch ate\nmontene gro</w>\nchic o</w>\nmil an\nl ms</w>\ntra inees</w>\nappropri ately</w>\nun certain</w>\npopp ies</w>\ned sheeran</w>\nnutr itious</w>\ngar o</w>\ndeut sch\nawe some\nãĥ ¼</w>\ncomfor tably</w>\nland marks</w>\net i</w>\nre usable</w>\ndaniel le\nro sal\nco les</w>\njust ic\nc cs</w>\nf anny</w>\nni m\nmc u</w>\nclin ch</w>\nat ene\nmer ge</w>\nim db</w>\nang lo</w>\nuc cino</w>\npan ini</w>\nan not\nbur berry</w>\nfeat ure\npredic ting</w>\nfashioni sta</w>\ns ask</w>\nimag inary</w>\nmm o</w>\nsouth sudan</w>\nspe ar</w>\nhu bble</w>\njo inthe\ncoyo tes</w>\nsli go</w>\nko dak</w>\nsit com</w>\npolaro id</w>\nroo ted</w>\ncorru p\nðŁĻĮ ðŁĻĮ</w>\nbris ban\nat z</w>\nah l</w>\nre my</w>\ntal ent\naval on</w>\nra da</w>\npau line</w>\nlocom otive</w>\ngo ons</w>\nne mo</w>\nmaser ati</w>\nic u</w>\nstu tt\nhistor ically</w>\nsm b</w>\npres by\navo id\nso oners</w>\nrhine stone</w>\nw ad</w>\nri sing\ntro t</w>\nmo des</w>\nreg ent</w>\noptimi ze</w>\nre ece</w>\nsm u</w>\nver ti\nnewyork city</w>\ncor tez</w>\nra c</w>\nin case</w>\nsin c</w>\nfiel ding</w>\ne tta</w>\ntiff any\nal monds</w>\nsad dle\nk rat\nmat ter\ng low\nstar ving</w>\ngl o</w>\ncra ppy</w>\nsl ur\nst d</w>\nmonit ors</w>\nrecei pt</w>\nmaymay entrata</w>\nmc il\nun is\nrain bows</w>\ncal dwell</w>\npacqui ao</w>\nj op\na fe\nhoo k\nes sen</w>\nwiz ard\nmedi an</w>\nfla ws</w>\ncom s</w>\nâĿ Ħ</w>\ning h</w>\nha ynes</w>\nanton io\ntem plates</w>\nou ter\nna w</w>\ncardi gan</w>\nbel grade</w>\nðŁĴ ī</w>\nhom o</w>\na ise</w>\nro pes</w>\nno ve\nwhat you\ntri gge\nconcep tion</w>\nad ukone</w>\nna di\nfri ars</w>\nsw er\nadju sted</w>\nhot line</w>\nsan ity</w>\nkau r</w>\ndown loading</w>\nc gi</w>\nten or</w>\neth nic\napp alach\nà¸ ¸</w>\npa g</w>\ngol ds\non set</w>\ninvestig ator</w>\ncar tel</w>\npeace fully</w>\njarre tt</w>\ncat alan</w>\npoli o</w>\nn um</w>\nfru stration</w>\ndhar ma</w>\nmy life</w>\nâľĮ ðŁı»</w>\naber deen\nmu sa</w>\nbin der</w>\nspark ly</w>\nfle eing</w>\ninstin ct</w>\nco ping</w>\ndomin ance</w>\nill ers</w>\ner a\nu conn</w>\nlo oms</w>\nliving ston</w>\ngal i</w>\nhe s\nc ma\nbel a</w>\nse ley</w>\nmon k\nla ch\nmar x\nÂ ´\nm erica</w>\nwoman in\nes sex\nra ina</w>\njim i</w>\nnep tune</w>\nz ack\nchine se\nmart ins</w>\nchand elier</w>\nher n\nwith us</w>\near l\nasph alt</w>\nmodu les</w>\nst p</w>\nul la</w>\npsychi atric</w>\nmile age</w>\ncaptiv ating</w>\nsi der</w>\nmen to</w>\nmor t</w>\ntran ce\ntal bot</w>\nab by\nì ĥ\nâľĮ ðŁı¼</w>\nj ak</w>\ndaw n\nturn up</w>\nscre wed</w>\nfe ds</w>\nblue print</w>\nðŁĴĸ ðŁĴĸ</w>\nhar sh\ner os</w>\ninsom nia</w>\nban kers</w>\nta emin</w>\nmis conduct</w>\nhu mber\ngi di</w>\nedu ardo</w>\ncon a</w>\nmusc ular</w>\nconsu ming</w>\nra sh</w>\ndon nie</w>\ndi pped</w>\ncol lie</w>\nsamu el\nmelt down</w>\nðŁĺįðŁĺį ðŁĺį\nme z\nexam ining</w>\nschwar tz</w>\npri stine</w>\nðŁĲ Ŀ\nve it</w>\nful filling</w>\nan esthe\ngue sses</w>\ndra ft\nsom me</w>\nsoli d\npati onal</w>\nho ped</w>\nevolu tionary</w>\nall er</w>\nenter tained</w>\nsli ps</w>\nlud wig</w>\nconclu des</w>\nsen sible</w>\nbon net</w>\ncra ze</w>\ntra s</w>\nhaz ards</w>\nconst antine</w>\ned ics</w>\nstar trek\nto c</w>\noccu pational</w>\nin cheon</w>\ndeepikap adukone</w>\npizz as</w>\nnew comer</w>\nde part</w>\noppre ssion</w>\nebon y</w>\nfoss ils</w>\ntro jan</w>\nel en\nste aks</w>\nk hou</w>\npositi oning</w>\nug by</w>\nred cross</w>\nak h</w>\ndol ce</w>\nus mnt</w>\npp en</w>\ndil ig\nma vs</w>\ncall er</w>\ncost ello</w>\nâĽ Ħ\ndy n</w>\nthing s\nrhin os</w>\na xi\nsar kar</w>\ncon vocation</w>\natt ers</w>\nss ss\nfun gus</w>\neu gen\nruss o</w>\nsqu at</w>\nw sb\neli on</w>\nwilliam sburg</w>\ns off</w>\ndefici ency</w>\nbe arer</w>\no kin\nkey stone</w>\nt wain</w>\ncal ming</w>\nbreak able</w>\nwa res</w>\nhorser acing</w>\ncom bs</w>\nbun ting</w>\nu it\nt land</w>\nðŁĴĻðŁĴĻ ðŁĴĻ</w>\nga stron\nsab ot\nick ers</w>\ncommissi oners</w>\nsen ate\nii ot</w>\nath ena</w>\nnit rogen</w>\nan tony</w>\nero tic</w>\ndi alo\nmis sou\nhypo cr\nâľ Ī</w>\nkaeper nick</w>\ncan v\nd roo\nclevel and\no sh\nmon sta</w>\nstefan o</w>\n^ )</w>\nsh ul\npo ison\nha e\ncommerci als</w>\nma ul\nnit ro</w>\nco worker</w>\nalo e</w>\nvap or</w>\nt ents</w>\nrussi an\nqu id</w>\nquestion able</w>\nmid get</w>\npo ker\ngirl friends</w>\nsin the\nerit rea</w>\nten ure</w>\ndepos its</w>\nbuc keyes</w>\nspot ter</w>\ntheod ore</w>\ntrin ity\njoaqu in</w>\nu cci</w>\nfollow the\ncaf c</w>\nmp a</w>\nðŁĲ »\nplo tting</w>\ndom ino</w>\nta ek\nsion ally</w>\ndicap rio</w>\npa p</w>\ncar mel\nig er\nbt cc</w>\nbeth le\nwww bigbaldhead</w>\nfoo die\nbagh dad</w>\nmason ry</w>\noff ended</w>\nà ·\nà¸ ģ</w>\nsc ro\nvers es</w>\nori ent</w>\nar ches</w>\npi yu\nknow your\ngre e</w>\nta kers</w>\ngu ard\ndish on\nbucket list</w>\nbha fc</w>\nwar dly</w>\nðŁİīðŁİ Ĭ</w>\nleigh ton</w>\npe w</w>\nstra y\nassaul ted</w>\nin hal\nly fe</w>\namar keting</w>\nl x</w>\nkat z</w>\nubun tu</w>\nme o</w>\ncarto onist</w>\nturno ver</w>\nmi z</w>\ndis like</w>\nmul len</w>\nmo f\nbl and</w>\nhi des</w>\nemer ges</w>\nchori zo</w>\ntruste e</w>\nma hog\nlan sing</w>\nparalym pic</w>\nfa int</w>\nfa una</w>\nch al</w>\nsn ar\ncat h</w>\nbent on</w>\ncast illo</w>\nsli ppery</w>\napric ot</w>\noec d</w>\nbar o</w>\nl z</w>\nhe ming\nclow ns</w>\nco workers</w>\nperu vian</w>\ncommu ters</w>\ny ell</w>\nðŁļ ´\nunder ing</w>\nv j</w>\ntt p</w>\nfli pk\nw ana</w>\nsoc ent</w>\nĤâĸ Ĥâĸ\nà¤ Ĥ</w>\noo sa</w>\njag ger</w>\ndi sm\ne less</w>\nd ham</w>\ncali f</w>\na official</w>\nec lip\nharro gate</w>\ngra pp\ncom rade</w>\nn tr</w>\nconcentr ate</w>\nthi ghs</w>\nbit coin\nbel arus</w>\në ĵ\nend uring</w>\nnow watching</w>\nindustri al\npi p</w>\nar on\nar at</w>\nÂ ®\nwhit by</w>\noooo ooo</w>\nsa ree</w>\ntic als</w>\nmis leading</w>\nyo on\nyear s\nsle igh</w>\nroman ian</w>\nsciss ors</w>\nvam pires</w>\nac up\nab ba</w>\nth weeksary</w>\ncent ri\nfl ye\nu o\nc bi</w>\nbu ena</w>\nsin d</w>\nmar ino</w>\nbur r</w>\nre building</w>\nà¤ ²</w>\nanniver saire</w>\nac ca</w>\nðŁĴĢ ðŁĴĢ\ngett ing\ntu lips</w>\nwolf pack</w>\nâľį ï¸ı</w>\nmore than\nta kin</w>\nðŁ¤ĺ ðŁı»</w>\nu be</w>\nmon ic\ndou bts</w>\nmo wer</w>\nco balt</w>\ndon ne\nspecul ation</w>\nargu ably</w>\nkak u</w>\nhtt ps</w>\nprosecu tion</w>\ndin ah</w>\nstam atic</w>\ndisclo sed</w>\nbever ly\nfl wx</w>\ncra bs</w>\nextraordin aire</w>\nwar mest</w>\nimper i\no logists</w>\ntrac es</w>\npar c</w>\nlake side</w>\nam r</w>\nter i</w>\nhour ly</w>\ndomin ation</w>\nar row\nshrews bury</w>\nance stry</w>\nwr angler</w>\ntrigge red</w>\npen sac\nroo ster</w>\nsurvi ves</w>\na on\nbo ko</w>\nval or</w>\nlove is\nla g\npe y</w>\nfo cal</w>\nout laws</w>\nbl anc\nartic ho\nwit s</w>\nmarsh all\ndie go\nsupport small\nu ca</w>\nsa h\nje et</w>\nsyn ago\ngover ning</w>\nðŁĴ ¬</w>\nsal ads</w>\ncre ate\nmiri am</w>\ncen sored</w>\nami de</w>\nno u</w>\nz eta</w>\nallegi ance</w>\n* )</w>\nbl m</w>\nric an</w>\npa stors</w>\noly mpus</w>\nblo c</w>\nwhir l\nstar ry</w>\npr one</w>\ny k</w>\np ne\ncongratul ating</w>\nbe v</w>\nso ber\nlove island</w>\nsa ir</w>\nan ing</w>\ntutor ials</w>\nq e</w>\nlun d\nin ist</w>\ncle ver\ntaxpay er</w>\nali z\nwren ch</w>\ndd ling</w>\ncap ri</w>\nh pa</w>\nðŁı» âĢįâĻĤï¸ı</w>\nna j\no j\nfuturi stic</w>\njelly fish</w>\nðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥</w>\ncel ery</w>\nplan k</w>\nfil a</w>\nne me\nun healthy</w>\nlec tions</w>\nðŁ§ ¡\nrit chie</w>\nn ws</w>\nmi kha\nwonder woman</w>\nâĢ İ</w>\nhip stamatic</w>\nka g</w>\nðŁĴľðŁĴľ ðŁĴľ</w>\npoul try</w>\nmo w\nwor ds\nlo ff</w>\nðŁ¤£ ðŁ¤£</w>\nrelat able</w>\nre mixes</w>\nkeny atta</w>\nke m\nre signed</w>\nfo d\nstra igh\nj lo</w>\nhu tch\nbox ers</w>\ncolle en</w>\nmag s</w>\ninstruc tional</w>\nko l</w>\nattrac ts</w>\npra g\naccount ant</w>\ngo ggles</w>\nbr u</w>\nth ole</w>\nmar row</w>\nleu ke\noc to\npon ds</w>\nbubb ly</w>\nhe ist</w>\nìĹ ĳ\nim p</w>\na har\nha unt</w>\nhall mark\npsy ch\nkkkk kkkk\ncol umb\njump suit</w>\ncost co</w>\nsi delines</w>\nag gies</w>\nover turned</w>\nni b</w>\nkey chain</w>\nfu k</w>\nf af\nmi am\nassist ants</w>\ncy cled</w>\nri der\ndam mit</w>\nred wings</w>\nmag es</w>\nkin s\nì Ĥ\nho d\nson t</w>\ncarol ine\n\" '</w>\ncu le</w>\nbra id</w>\nfel ony</w>\nar ities</w>\nruther ford</w>\ndepic tion</w>\nisab elle</w>\nro ach</w>\nk day</w>\nfifth harmony</w>\nem y\nli gam\nbari sta</w>\nalbu querque</w>\ngro ss\nðŁį º\noo ks</w>\nðŁĳ ¼</w>\ndun can\ntry in</w>\njag s</w>\ng ould</w>\nli tho\nâģ £\nÐ° Ð\nsam my\ntun g</w>\ncas ser\napo lo\naaaa a</w>\nman g</w>\nas ics</w>\nsh en</w>\np ye\ntur bul\nss p</w>\nsaint sfc</w>\non lin\nn anny</w>\nhe ster</w>\ndo z</w>\nà¸ Ķ\nth read\nren ts</w>\nkh and</w>\nðŁĴª ðŁı½</w>\nun conditional</w>\nrob son</w>\ncar re\nph on</w>\nsacrific ed</w>\nÂ £\nauto s</w>\npar ker\noc a</w>\nlog in</w>\nkee gan</w>\nhard cover</w>\ndough nuts</w>\nðŁĮ İ\nspit fire</w>\nrefresh ments</w>\nsaskat oon</w>\ncommod ore</w>\nj f\nrub ber\nhalam adrid</w>\nchild care</w>\nstra da</w>\nio m</w>\nri k\ndak ar</w>\nther mom\ncro pped</w>\ngar u</w>\nali k</w>\nven i</w>\ni ft\nsi ka</w>\nritu als</w>\nz ul\ne ch</w>\nÂ ©\nsu dan\nl land\ni me</w>\ndo cker</w>\nì ¤\nfe ared</w>\nfa o</w>\nwal ter\nno g</w>\nmutu als</w>\nl h</w>\nali gn</w>\nmon ia</w>\nconcep tart</w>\nðŁĻı ðŁı¼\nsco e</w>\ncompet ence</w>\nsw ine</w>\nly me</w>\nlaun ch\ngreen er</w>\nabstract art</w>\ninqu is\ngran ada</w>\nga elic</w>\nflu ff</w>\nd backs</w>\ngrave yard</w>\nba be\nacade mic\nadventur ous</w>\njoh ann</w>\n~ !</w>\nbi bi</w>\n| #</w>\npl ings</w>\ngett y\nas b</w>\nâĿ¤ï¸ı @</w>\nstaf f\nreligi ons</w>\nbang or</w>\nworld bookday</w>\nme gh\nde vin\nash ore</w>\nmeri dian</w>\ngi thub</w>\nqui z\nall stars</w>\nbe stest</w>\nir resi\nack er\ndo te</w>\nwar rington</w>\npol ly</w>\nnewor leans</w>\ncr ou\nwi gs</w>\nche y</w>\nsmithson ian</w>\nla sag\nde tour</w>\nbor is\nstra ps</w>\nmari ah\ninten tionally</w>\nko h</w>\nðŁį ¸</w>\nssi an</w>\nmar issa</w>\ncor al\nepiscop al</w>\ncasu alty</w>\ntom o\nsupply chain</w>\nsam p\non go</w>\nro o</w>\ncavi ar</w>\np fw</w>\nclau dio</w>\nbuff alo\ns ations</w>\nmat ty\nsnap back</w>\nl ds</w>\nal arms</w>\nmat te\nâĺ Ķï¸ı</w>\nconditi oner</w>\nd ors</w>\nhe x</w>\nfi zz</w>\na stri\nsus sex\nsecur ity\nqa eda</w>\nall star\ncocac ola</w>\nas one</w>\ncl icks</w>\nsc ans</w>\nmu te</w>\nhe avier</w>\nðŁİ §\nâĺ ŀ</w>\nlv l</w>\nbook boost</w>\nyoutu be\nfla shes</w>\nf jor\nc su</w>\nexplo de</w>\ndo dge\ncair n\ngonz ales</w>\nth ill</w>\npel le\nhart ley</w>\nrenew able\nre tin\ne stre\ncostar ica</w>\nshipy ard</w>\nnc fc</w>\npri ya</w>\na ghan</w>\nan ath</w>\nplu gin</w>\nco rey\nre bound</w>\nor u</w>\nkat rin\nhor mone</w>\ngi m\nmahin dra</w>\ns sus</w>\npark land</w>\nhar per\nfanta stic\ninfer no</w>\nep ilo\nwrest ling\nfe ct</w>\nc it</w>\nac oun\nto ssed</w>\nmonu mental</w>\nchar tered</w>\nbu st\npe tra</w>\nâĮ ļ\nwildflower hour</w>\nsweat ers</w>\n* .</w>\nbl er\nate ch</w>\ngo wan</w>\ndemo graphic</w>\nbra l</w>\nsuici de\nrenov ations</w>\nvu el\nsin ister</w>\nar mani</w>\nmiso gy\nph arrell</w>\nnap s</w>\nun iting</w>\ncrusad ers</w>\ncor gi</w>\ninsu red</w>\nthan i</w>\nno or</w>\ng q</w>\nd ada</w>\nbicy cles</w>\nsnu ggle</w>\nsch an\nten berg</w>\nss al\nfe mme</w>\nbo il</w>\n½ ï¸ı</w>\nre ap</w>\noccur ring</w>\nhus sein</w>\ndivi d\nsto ke\nsh alom</w>\nna ia</w>\no lic</w>\nfrustr ating</w>\nÙ ĩ</w>\nig s</w>\ngro ver</w>\nscen arios</w>\nn ds</w>\nbru tality</w>\nmed alli\nbu on\nsas s</w>\nskate boarding</w>\nony x</w>\nlor ry</w>\nny u</w>\ngau tam</w>\nmm ings</w>\ngu g\nend i</w>\nlo thian</w>\ncomm ando</w>\nchal k\nph ora</w>\nasse ssing</w>\nti gh\ncrun chy</w>\nad ay\nis l</w>\nci ara</w>\npilgri ms</w>\nkam al\np to\nbrit anni\nt ani\nsm c\nl ure</w>\napp store</w>\nab y</w>\ngolf ing</w>\ncl c</w>\nfa u</w>\nan as\nshu tting</w>\nregul ated</w>\ncarn age</w>\nscow boys</w>\nall enge</w>\nc ma</w>\nhumbold t</w>\nrel le</w>\nku mb\nher i</w>\nrefin ery</w>\nsound check</w>\nd wayne</w>\nbos nia</w>\ni sp\nthe alth</w>\nanni v</w>\nrelev ance</w>\nmy a</w>\nbag gage</w>\ndre ad</w>\ns bc</w>\nth ed</w>\nbu h</w>\nhi jab</w>\nlo id</w>\nke w</w>\nc te</w>\nrespec t\nlovel ies</w>\ncu bes</w>\ncelebr ate\ndir t\nsav ers</w>\n_ ,</w>\ngar ment</w>\npulit zer</w>\nmas jid</w>\nbeat port</w>\nal arts</w>\nencry ption</w>\ns ner</w>\nple ads</w>\nfound ry</w>\nsym metry</w>\nru mi</w>\nbirth place</w>\nscallo ps</w>\nsupp le\npivo tal</w>\nt ati\nno de\nso d</w>\npro xim\ntr ics</w>\ncol dest</w>\nbren t\nmand u</w>\ncla ir\ne ach\nand alu\nhi ddleston</w>\nðŁĲ º</w>\nmel ts</w>\nv ance</w>\npin n\nse ments</w>\nscre ened</w>\nsa chs</w>\no bl\nic ha\nâĺĺ ï¸ı</w>\nschool ers</w>\nheal ed</w>\nlo gged</w>\nðŁ¤ĺ ðŁı¼</w>\nic us</w>\nbore dom</w>\nb ish</w>\nb ffs</w>\ntal king\nsure sh</w>\nhoo kem</w>\nde on\nde fl\nei leen</w>\nðŁį ķ\nwomen intech</w>\nri sotto</w>\nrang er\nadverti se</w>\nà¸ ģà¸\ntel ly</w>\nla go</w>\ndart moor</w>\nd ong</w>\nsk ates</w>\nlo go\nun ner</w>\nmail box</w>\nma sala</w>\nlo oooo\namethy st</w>\nche wing</w>\nc bb</w>\naustrali ans</w>\nrc mp</w>\ngame art</w>\n# ...</w>\nkor n</w>\nextre mism</w>\nfruit ful</w>\nanci ent\npu bg</w>\npol ite</w>\nwh it</w>\nmur als</w>\nm gr</w>\nline man</w>\ndav ao</w>\nste ms</w>\nten nis\nav age</w>\ntu pac</w>\ngigan tic</w>\nhs bc</w>\nauto biography</w>\nup the\nà¸µ à¹Ī</w>\nre gal\nfig uring</w>\nku l</w>\nmis sy</w>\nhoo p\ngra s\nfor ums</w>\nback lash</w>\nabduc ted</w>\np nw</w>\nmin ic\nbu tt</w>\nbott oms</w>\nat on\nven g</w>\nðŁĮ ı</w>\ndel aney</w>\nprab hu</w>\nfan club</w>\nover haul</w>\nhealth ye\nsy no\naa f</w>\nren amed</w>\nkim i</w>\nun cle\nman city</w>\nse u</w>\nqu anti\neste em</w>\num in</w>\nen zo</w>\nmel vin</w>\nunder go</w>\nj har\nfar ah</w>\ncoast ers</w>\nhumph rey</w>\nmh z</w>\nchildren s\n^ .\nd hi\ndisrup tive</w>\nintegr ating</w>\nr nb</w>\nover sized</w>\na ide\nne au</w>\ndocu mentation</w>\nðŁĳĢ ðŁĳĢ</w>\npal o</w>\nhear th\nri yad\npun ctu\nabc news</w>\nsecu res</w>\nboy band</w>\nbir ch\nju co</w>\ntra ff\nlegislat ors</w>\nbay a</w>\nãĤ ¯\nno ises</w>\ncollec ts</w>\ns warm</w>\nk ner</w>\nbi shops</w>\nstur geon</w>\nsnapp ing</w>\nmo l</w>\nfre aky</w>\nchair person</w>\ntro p</w>\nlyn ch\ncar cin\nart sy</w>\ne sto\ncha i\nfl ur\ninv ali\nsau sages</w>\nim el\nj or</w>\nfun fact</w>\nwit ter</w>\npuni shed</w>\nac ons</w>\nh ya</w>\nre versi\nem c</w>\ndif fu\nz x</w>\nsp aw\ncla d</w>\nd mit\nhol land\nfre sco</w>\npay roll</w>\nab undant</w>\nstu ffing</w>\nmor o</w>\nc ny</w>\nboy cott\nwend y\nele ven\npro voc\npil ot\ntr x</w>\nbe ad\nclimate action</w>\nri on\nassi e</w>\nì ĸ\no sm\nislam ic\nho ar\ngood reads</w>\nal ici\nafterno ons</w>\nspoke sman</w>\njo lie</w>\nit as\nmasc ara</w>\nâĻ© âĻ«</w>\npre vail</w>\nbeetro ot</w>\nlu jah</w>\nk li\ndod ger</w>\nÂ »\nru le\nl n\nscre am\nho bart</w>\ncol bert</w>\nr tc</w>\ner m</w>\npat ro\nquo ting</w>\ns live</w>\nque st\nnon fiction</w>\nsemin ary</w>\nprosecu tors</w>\nve st\nexpress way</w>\ng ge</w>\nnau tical</w>\net f</w>\nðŁİīðŁİ Ĭ\ndur ation</w>\ncha ired</w>\nthe film</w>\nfab io</w>\nshe h\ncan o\nðŁĴª ðŁı»\nwith draw</w>\n! :)</w>\ncor pus</w>\nphen om\nyel p</w>\nla wn\nent om\nsnapp er</w>\nbut te</w>\npin ball</w>\npro xy</w>\nlibr e</w>\nalle vi\nn ada</w>\ngabri el\nfo wl</w>\neure ka</w>\ndaph ne</w>\ntu nes\npun ched</w>\nwh ore</w>\njo g</w>\nren tial</w>\nman ners</w>\no pe\nwh ufc</w>\ngu th\nrevol t</w>\nsne aker\nphilharmon ic</w>\nho ste\nsovereign ty</w>\nðŁĻıðŁĻı ðŁĻı</w>\nfish ing\nsci art</w>\nfe ta</w>\ni pp\ndump ing</w>\nkel own\ngir i</w>\ndig its</w>\nsal u\nsan jay\ntwee ters</w>\nsp as\ncol chester</w>\nsc ab\nma dd\nà¹ Ħà¸\nÄ ĩ</w>\nged don</w>\nmarch for\ndo p</w>\nmaure en</w>\nun plugged</w>\ndi do</w>\nfashion blogger</w>\nup a</w>\nmex ic\ntar y\npol ye\njame son</w>\nv t\ngrin der</w>\nmad dy</w>\nconsult ancy</w>\n¬ ë\nleagueof legends</w>\nac cents</w>\num ni</w>\njane iro</w>\ntu ss\nh ens</w>\nampli fier</w>\nto shi\npret tier</w>\npre vents</w>\nnew town</w>\nred wood</w>\nvant age</w>\nball ard</w>\nar tof\na she</w>\na sion</w>\nlac ey</w>\nap at\ngro ve\nà¸ Ħ</w>\nrw and\nreal tors</w>\ntra itor</w>\nbed ding</w>\nÃ¶ r\nzi on\nfla shing</w>\ncam pan\nboom er</w>\nsecretari at</w>\nab ol\nliti gation</w>\ncont amination</w>\nse dly</w>\nshred ded</w>\nin for\ndo herty</w>\nbench mark</w>\nro che</w>\nskate board</w>\nsho vel</w>\ni zz\nto pper</w>\no ster\nlaby rin\nautu m\nk ong\nhum mus</w>\nvi z</w>\ntech news</w>\nkla us</w>\nam using</w>\nsocialmedi amarketing</w>\ni des</w>\ncast ell\nste e\nunderestim ate</w>\ncal ab\npa ign</w>\nb illing</w>\nunanim ously</w>\ng mb</w>\nfly fishing</w>\nhath away</w>\ncommerci al\ncolour ing</w>\nskul ls</w>\npivo t</w>\nte p</w>\ntb c</w>\nmotor way</w>\nx press</w>\nconstruc tive</w>\npu k</w>\nunder lying</w>\nkir sten</w>\nmani ac</w>\ncha o</w>\nse ma</w>\nchiff on</w>\nðŁĳĮ ðŁı»\nver ona</w>\nkom o</w>\nstan doff</w>\nwi ped</w>\nc ated</w>\nbla ir\nwor kin\nm sc\nbethle hem</w>\nswi pe</w>\nunexpe c\npe es</w>\npe tri\norig ami</w>\nðŁĳ ħ\nmex ico\nflav or\nru dd</w>\ncannab is\nmar u</w>\nri ddle</w>\nwor shi\nsil on</w>\nsch at</w>\nap se</w>\ntang er\nbi ous</w>\ne er</w>\nquesti oned</w>\no zar\ndan k</w>\nangle sey</w>\nchar an</w>\nbak u</w>\ncompe ten\nre pri\nbat ter</w>\nsa xon</w>\ncal ves</w>\nleng ths</w>\n$ $$</w>\nâŀ ¡ï¸ı\nimmer sion</w>\nga unt\ncar ry\ncy to\nb anda</w>\nshu tt\nexperi ence\nel gin</w>\nmous se</w>\nta z</w>\nê µ\nin correct</w>\nen z</w>\nb ham\nmor on</w>\nso ver</w>\nar un</w>\nti pped</w>\nla ble</w>\nde arly</w>\nbau tista</w>\ní Ļ\nmor tal\nwoo p</w>\ndt la</w>\nsho cks</w>\ndav os</w>\nðŁĵ Ŀ\nswim wear</w>\nher man\nðŁĳĩ ðŁĳĩ</w>\nz ir\nneglec ted</w>\ngrac ed</w>\ncampu ses</w>\nav s</w>\nar ora</w>\nswach hb\nlive pd</w>\nac cra</w>\nenqui ries</w>\nshoo ters</w>\nkur t\nvancou ver\nbrad ley\ngar da</w>\ng Ã¼\nol la</w>\nattrac ting</w>\nup ton</w>\nne win\nlu mia</w>\nfurn ace</w>\nev ers</w>\ne on</w>\nsw a</w>\nroo kies</w>\na oc</w>\nv ss</w>\nbris ket</w>\ntor ch\nyo da</w>\nheart land</w>\ntac o\nph ony</w>\nfood bank</w>\nab bey\nbab ylon</w>\nu y\ngre ate\nexpre sses</w>\nd andy</w>\nsc apes</w>\nsurvi vor\nron d\ne ci\nha vin</w>\nab el\nchil dish</w>\ntor que</w>\nwav y</w>\nur self</w>\nkanye west</w>\nyear of\nale stine</w>\no brien</w>\nal fon\nsk ag\nkore an\nanchor age</w>\nval eri\nde w\nðŁİ ¨\nland slide</w>\ncar ole</w>\nchrist en\ngo phers</w>\naf i</w>\npriyan ka</w>\nq q\npower of\nit te</w>\npc so</w>\ntw ol\npr y\nintellec tu\nguer rero</w>\npi les</w>\nwish list</w>\nw ren</w>\ntime table</w>\në ı\nprodi gy</w>\ngibb ons</w>\n. /</w>\nne ur</w>\nanz ac</w>\nmur ray\nvie st</w>\npla ster</w>\nla ir</w>\nart gallery</w>\ninter continental</w>\ng br</w>\nbell ator</w>\nnam joon</w>\nmam mals</w>\nam el\ny aw\nsaras ota</w>\ncam ar\nbud ding</w>\nsum mari\naco sta</w>\nla sh\ney ou\npost graduate</w>\ninstruc tors</w>\nti g</w>\nconst ant\nwere wolf</w>\nic os</w>\ncla s\nglen n\nbud ge\nðŁĻ Ĥ\ner ta</w>\nsta ins</w>\npersecu tion</w>\ncumb ri\no ch</w>\nsyner gy</w>\nhu ang</w>\nscand in\nmid terms</w>\ncomment ator</w>\nregar ded</w>\nperpe tual</w>\nbo iling</w>\nal p\nlan ge</w>\nsch le\nfac eli\ntwee ta\nri dden</w>\nok toberfest</w>\ncharlotte sville</w>\nik lan\njo u</w>\nch atham</w>\nb sc</w>\nðŁį ¦</w>\nstra uss</w>\nmel low</w>\nxx xx\nhappy hour</w>\nre actor</w>\nww er\ndistr action</w>\nat orial</w>\nðŁĴª ðŁı¼\ntwin peaks</w>\nfay ette\na or\nko k\nbro om\nsy fy</w>\nou se\nam ag\nØ ·\nubis oft</w>\nlu lu\nhall mark</w>\nstu art\nit ya</w>\nsi deline</w>\nvenge ance</w>\nre lu\nsex ism</w>\nboun cing</w>\nun ites</w>\ngu stav\nte ssa</w>\nstu mp</w>\npro clamation</w>\nima x</w>\ndivid end</w>\ncol by</w>\nðŁį İ</w>\nplay wright</w>\nun safe</w>\nco smo</w>\nðŁĩ²ðŁĩ ½</w>\ncup board</w>\nconstitu ents</w>\nang lia</w>\nram page</w>\nðŁĺįðŁĺį ðŁĺįðŁĺįðŁĺį</w>\nthan ked</w>\ntake aways</w>\nshro ff</w>\nde bat\nkh ur\nconduc ts</w>\nformat s</w>\nà ©\nport age</w>\ngraph ers</w>\nu ten\npre m\nmo ines</w>\ncondem ns</w>\ns ous</w>\nl ps</w>\nf cs</w>\ndeal ership</w>\nleuke mia</w>\nbure au\nski d</w>\nguardi ola</w>\nca ster\nthir d\navoi ded</w>\nen cyclo\nc sr\nvi xx</w>\nanaly zing</w>\nshe ar</w>\ndulu th</w>\nshap iro</w>\nchan ting</w>\nstre sses</w>\nas be\nmil itia</w>\nãĥ ª\ncol lin</w>\narsen e</w>\nsure sh\nteach ings</w>\nyi xing</w>\nsh ill\nnu des</w>\nsv u</w>\nclear water</w>\nwar ped</w>\npro life</w>\nartist son\nit u</w>\nversail les</w>\ngalax y\nax el</w>\nspring st</w>\ncal a</w>\nhu hu</w>\nsc u</w>\ncommit ments</w>\nexe ter\npoign ant</w>\nmo tion\nconserv atory</w>\nrow dy</w>\nrec alled</w>\nmu sk\nemb elli\nso the\nâĺ Ģ\nsto pper</w>\nsch ild</w>\nto pe\nel mo</w>\nzi el</w>\nj om\nbarn sley</w>\nsnow den</w>\non tour</w>\njour ney\nhills borough</w>\npar ole</w>\nw ts</w>\nmo ving\nag ility</w>\ntiv o</w>\nff ers</w>\nkindle unlimited</w>\ng wen\nann an</w>\nah mad\ntex tured</w>\nhepat itis</w>\ndra m</w>\ninsi ders</w>\ntis sues</w>\nãĥ Ħ</w>\nfc barcelona</w>\ncr atic</w>\nna acp</w>\npe can</w>\nf gm</w>\ncustom ize</w>\nconcer t\ng sm</w>\npe g\np one</w>\njustin trudeau</w>\nsuper cars</w>\nhappy holidays</w>\nbu lar</w>\nado x</w>\nlap tops</w>\ndigital health</w>\ndestin ation\ngradu ally</w>\náĥ ¦</w>\npopp y\nss l</w>\ninhi bit\nstar light</w>\nof fro\nglo omy</w>\nx per\nhal der</w>\nim plants</w>\nle to</w>\nhass el\na as</w>\nun told</w>\nen ci\nliber ia</w>\nor an\ncon tests</w>\nil ah</w>\nsma g</w>\nsc out\nmari anne</w>\ncr yo\nschedu ling</w>\nlo s\nkan e\nstutt gart</w>\nne se</w>\nlaw rence\nda in\npho tom\ncar ou\nà¸ £\ng wy\nnational dogday</w>\nroa sting</w>\nband camp</w>\nkentu cky\nstret ches</w>\nke rel</w>\nca she\nãĤ ¸\nsta x</w>\ntran si\ndog gie</w>\nat ric\nhal le</w>\nci vic\nbrow ning</w>\nlein ster</w>\ncat day</w>\nhigh land\njoy ous</w>\nin cumb\nor lando\nro mo</w>\ncol ton</w>\ndel ta\ncar ab\nro tc</w>\naster oid</w>\ngoose bumps</w>\nmo logy</w>\nyo ko</w>\nan ds</w>\ntomor rows</w>\nred carpet</w>\nsm p</w>\nca sio</w>\nðŁ¤£ðŁ¤£ ðŁ¤£</w>\nse au</w>\nrejec tion</w>\nrot ating</w>\nbi partisan</w>\nth un\nmat i</w>\nbon i\nol l\nener gye\ndo it\nl j</w>\nmother hood</w>\nlou ise\nneck laces</w>\nel ite\nni x</w>\nl cs</w>\nen v\ngl u</w>\nle sh</w>\ncran k</w>\nsu sie</w>\nm clau\nso tu</w>\ncrow ley</w>\nrat ri</w>\nuse d\nbre ton</w>\nalfre do</w>\nye o\ntravel pics</w>\nti pp\nelli son</w>\nsax ophone</w>\nme red</w>\nheu ghan</w>\nta ine</w>\nf es</w>\nvi ro\nsuppo sedly</w>\ni as\ndige stive</w>\ny le\nli zzy</w>\nwildlife photography</w>\nbri anna</w>\nwest field</w>\nra ined</w>\nam her\nðŁĺĦ ðŁĺĦ</w>\ndistribu te</w>\nbott om\npre serving</w>\noil and\ncraf ty</w>\nde scen\ncol ling\nshakespeare sunday</w>\nr wc</w>\nang led</w>\nci an</w>\nt ations</w>\nmon tage</w>\nme yers</w>\nfrance sca</w>\nðŁĮ ·\nwi ggins</w>\nsan ford</w>\nvolunte er\ncar ra\nbar k\nvari ed</w>\npl in</w>\nam u</w>\nkap il\nrock ers</w>\nqu ind\nbr ane</w>\nin mate</w>\nent al\nimpro vis\nmichi gan\nre tweeting</w>\nprogre ssing</w>\nmercedes benz</w>\nsmo ker</w>\nphysi ology</w>\ndor ado</w>\nwatt pad</w>\nh wa</w>\nsr bachchan</w>\nw ga</w>\nvol atility</w>\nhi re\nac ap\nwn ba</w>\nhein z</w>\nstit ches</w>\nkidnapp ing</w>\nbur ys</w>\nlim b</w>\nf itters</w>\nthumb nail</w>\nton e\nmir and\ndesi rable</w>\nad dison</w>\ntar an\ntamil nadu</w>\nspec tator</w>\nsoci ology</w>\namit shah</w>\nremo tely</w>\nâĻ ¦\nham id</w>\nr ds</w>\ng lee\nsmooth ly</w>\nsch ro\ner c</w>\nlali ga</w>\nhe als</w>\nus f\nni shi\nd hu\nun il\nh le</w>\ntro mb\nbhu tan</w>\npilip inas</w>\nse ung\nwhit man</w>\nte y</w>\nmin ce</w>\nsnow boarding</w>\nre au</w>\nk ker</w>\nav o</w>\nzach ary</w>\nran veer\nti k</w>\ngover n</w>\nqu al</w>\nbeck y\nanthropo logy</w>\natt en</w>\ngrocer ies</w>\nde bit</w>\nwar p</w>\nsil icon\nhawa ii\nðŁĴ ħ</w>\npomegran ate</w>\npe er\norang es</w>\npeople schoice</w>\nend ure</w>\nðŁĴĽ ðŁĴĽ\nãĤ¹ ãĥ\nac ial</w>\na haha</w>\nstu k</w>\nimper ial\nbl ond</w>\npow der\nkno ts</w>\nvin ce\nwood lands</w>\nden a</w>\nwatch in</w>\nmat cha</w>\nma hat\ngalax ies</w>\nmiddles brough</w>\nk Ã¶\nstre e</w>\nresc ues</w>\nwal do</w>\nlero y</w>\ndesp ic\nreal ities</w>\ntm nt</w>\nha q</w>\nun o\npe c\nbolly wood\nblin ds</w>\ndesign thinking</w>\nhe ms\nand hra</w>\nab sen\nfan s\nste ch</w>\nshire hour</w>\nbla ine</w>\nshak ti</w>\npu rely</w>\nðŁı ı</w>\ntra fal\nke ynes</w>\ngr ate\nto bias</w>\nspon taneous</w>\nsatur ated</w>\ncaval ry</w>\npri sc\nðŁĺ ĳ\nwh t</w>\npas si\n~~ ~</w>\nvir at</w>\npatt inson</w>\nla o\nweir do</w>\nsym pathy</w>\nju da\nocca sionally</w>\ncred ited</w>\nstat u\nes co\nhil ly</w>\nesc ape\ndischar ge</w>\nse er</w>\nmay nard</w>\nsud bury</w>\nz lat\nor al\nwe er</w>\nencoun tered</w>\nsm elling</w>\nover sight</w>\nê ¸\nthat cher</w>\nmack ay</w>\nyou can\nfre ep\nfreed oms</w>\nprophe cy</w>\nho e\nishq ba\ndra ke\nqu its</w>\npel led</w>\ntur k</w>\no vi\nwesle yan</w>\nnew music\nleg g</w>\nch eng\nh illi\nay y</w>\npan ties</w>\nad versity</w>\nad jac\nvaccin ation</w>\nju ke\nga c</w>\nexce ed</w>\ntime sof\nsta ining</w>\nep cot</w>\nv ital\nup ward</w>\nbethe sda</w>\napar k</w>\nma hi\ncamp fire</w>\nenchan ting</w>\nrha pso\nh z</w>\nna ver</w>\nfa x\nvali dation</w>\nac ad</w>\nny r</w>\nas ym\ncoordin ated</w>\ndepar ted</w>\nall ery</w>\nvar ies</w>\nspr ite</w>\nchap lin</w>\nss occer</w>\ns wat\nbre t</w>\nrelu ct\ntunes app</w>\nsuper star\nreminis cing</w>\no co</w>\nhome grown</w>\ndough nut</w>\nun canny</w>\nla pd</w>\nthyro id</w>\n! âĿ¤ï¸ı</w>\nbotan ic</w>\nbre s</w>\nsp ade</w>\ni ste</w>\necho es</w>\ndu lil\nbur sting</w>\nqui ero</w>\nðŁĳ İ</w>\nloy ola</w>\namuse ment</w>\nha ils</w>\nsleep y\nburgl ary</w>\nâľ ı\nro gue\ncot land</w>\nmo ors</w>\nlow er\nwic ked\nðŁĶ Ĭ\ncompet iti\nargent ine</w>\nyvon ne</w>\nkarti keyan</w>\nili ary</w>\ngat sby</w>\nprecin ct</w>\nsix ty</w>\nna ji\ncam s</w>\npractiti oner</w>\nðŁĺ³ ðŁĺ³\npu ne\nneg li\njuli en</w>\ninv aded</w>\ncali br\ncla m</w>\nduba i\nmu k</w>\nlan tic\nproduc t\nfe dex</w>\nï¸ı :</w>\neu ra\ndari us</w>\ns ling</w>\nvirtual reality</w>\nhome stead</w>\nðŁı³ï¸ıâĢį ðŁĮĪ</w>\npac ed</w>\nin ha</w>\npul mon\nla zy\npremi ering</w>\nma stered</w>\nin he\ncon gregation</w>\nba jo</w>\nsport ing\nnew jersey</w>\nhor ny</w>\nlma oo</w>\nleng thy</w>\ndu t\nyo gh\nswe aring</w>\nphilosoph ical</w>\npap ua</w>\nin ski</w>\nknow les</w>\ndy ke</w>\nâĢ ²</w>\nto ken\nmc guire</w>\nri ot\nprobab ility</w>\nmc con\ngro s</w>\nsu mat\nc ite</w>\nda a</w>\non da</w>\nmad dow</w>\nche w\nboard games</w>\nspar ked</w>\nre claimed</w>\nad hd</w>\nny se</w>\nimwith her</w>\nequ inox</w>\nboo ths</w>\nbalsam ic</w>\nha zy</w>\ndor chester</w>\nag os</w>\nse aw\nmoder ator</w>\nseri ea</w>\nander sen</w>\npilgri m</w>\nâŃĲ âŃĲ\nitch en</w>\nhal li\nx ton\nnathan iel</w>\nmun ition</w>\ncelesti al</w>\nga f</w>\nzo om\nmark le</w>\npen thouse</w>\ncal e</w>\ns fa</w>\nbar king</w>\ntu cket</w>\nem ery</w>\ncal orie</w>\nli que\nad ar</w>\nmc nam\ntor tilla</w>\nwood pecker</w>\nmo town</w>\nbad ger\nayr shire</w>\nscram ble</w>\ndd ay\ncra ziest</w>\nper rie</w>\ncho co</w>\ncast e</w>\ni ot\nwre cked</w>\nselec ting</w>\nuss r</w>\ngra ft</w>\npun t</w>\nlab ou\nir st</w>\nba ek</w>\nÛ Į</w>\nsu ki</w>\nque u\nach at</w>\nte ster</w>\naug mented</w>\nwc vb</w>\nsin ks</w>\nðŁĵ »\nra ke</w>\ninter ne\nbe cause\nbelle vue</w>\nune arth\nlight en</w>\nðŁĺ £</w>\nturn around</w>\nlabe led</w>\nunemp loyed</w>\ntwitter kurds</w>\nle ia</w>\nh ye\ngreat er\nðŁĲ İ</w>\ntim ed</w>\ni red\ne tt\nlimit ations</w>\ncab e</w>\ns out</w>\nbee ch\nanni hil\nre trac\nyo ona</w>\nang er\nden nis\nsupp lying</w>\ndi z</w>\n\" (</w>\nsc ur\ngun man</w>\nsu ho</w>\nsauvi gnon</w>\nà¸ ¥</w>\nwi ley</w>\nland on</w>\nchoreo graphy</w>\npre historic</w>\nðŁı ĥ</w>\nvar gas</w>\nassess ments</w>\npinn acle</w>\ndi i</w>\nchamber lain</w>\nì Ī\nv p\npresent ers</w>\ndeut sche</w>\nsun shine\nsal utes</w>\nr one</w>\nbu siest</w>\n- .-</w>\nmotor ists</w>\nhemi sphere</w>\nal wx</w>\nps p</w>\now a</w>\nden ying</w>\ncho c\ngu tier\nhan uk\nmus kete\njait ley</w>\nse wage</w>\nt ame</w>\nthin kers</w>\nshi m</w>\nse quo\npap ar\nmiddle east</w>\nk wa\nke g</w>\npatag onia</w>\nno y</w>\nbar Ã§a</w>\ntake off</w>\nhe a</w>\nà ¬\nn sc\ng dc</w>\nðŁĳ Ī\nmou stache</w>\nmel ania</w>\nthr a</w>\nâ¬Ĩ ï¸ı</w>\npier ced</w>\nze us</w>\nfon ts</w>\nber a</w>\nit iner\nq atar\ncontr ary</w>\nire land\ni fy</w>\nou los</w>\ncommun al</w>\nfin s</w>\nun paid</w>\npa a</w>\nðŁĳĩ ðŁı»</w>\nri os</w>\nou p</w>\nf iller</w>\ncafe teria</w>\nà¸ Ń</w>\nkas i</w>\ncali ber</w>\nz ulu</w>\nv sco</w>\nts ford</w>\ndragon fly</w>\nsmo kin</w>\npi st</w>\npsycho logist</w>\ndiplom at</w>\nwe bs</w>\nbuc cane\nà® ¾</w>\nmotiv ational\ndu ne\nba e\nc fs</w>\nwith out\ner on</w>\ni ac\nate e</w>\npen sion\nfra zier</w>\nen sis</w>\nsk is</w>\npar ting</w>\nger y</w>\nterrit ories</w>\nnach os</w>\neni ght\never lasting</w>\nmsd honi</w>\ntel e</w>\nsp un</w>\npo di\nsab ah</w>\nenviron mentally</w>\nce ase\nbeau mont</w>\nmar ta</w>\nkel vin</w>\nho ff\nsun il</w>\nn da</w>\nco b</w>\nsh ale</w>\nree dus</w>\nun boxing</w>\nu bio</w>\nre opened</w>\nn all</w>\ncapsu les</w>\nmar r</w>\nhimalay as</w>\nswee ter</w>\nja z</w>\nf mr</w>\ntwee ter</w>\ndha ka</w>\nna u</w>\nde mi\nd fs</w>\nta urus</w>\nfad ing</w>\nit utes</w>\nci p\nover flow</w>\njef frey\ndon ny</w>\ncar tunesapp</w>\nðŁį ĳ</w>\nprefe cture</w>\ndanc ed</w>\nc pt</w>\nple asing</w>\nital k</w>\nearth quakes</w>\nul ation</w>\nhi o</w>\nãĢ ĭ</w>\nant an\nnutri ent</w>\nde ere</w>\nselec ts</w>\nenrich ment</w>\nr iti\ntram pol\nbl amed</w>\nj ia</w>\ncontribu tors</w>\nchesa peake</w>\npi geons</w>\ntribun al</w>\nmad uro</w>\nw su</w>\nilo ve</w>\neffici ently</w>\ndar cy</w>\nwar ms</w>\nar ra\nec u</w>\nho wer</w>\nstrugg led</w>\nrajini kanth</w>\nðŁĺ¢ ðŁĺ¢\nhou sing\nstr at</w>\neli x\ndisp ro\nraf fic</w>\nthi erry</w>\nna sty\nc fb</w>\nstaf fing</w>\nal ma\nback ers</w>\nhen son</w>\nsky walker</w>\nreale state\nroo s</w>\nness y</w>\nchan ce\ncair ns</w>\nc ci\npe dal\nly ft</w>\ncross word</w>\nwait er</w>\nonly in\nkru ger</w>\nk ir</w>\nalej andro</w>\ncar tier</w>\ncar rera</w>\nre paired</w>\nou at</w>\nun clear</w>\nun breakable</w>\ntoday in\nqu eries</w>\njo dy</w>\ngen ital</w>\nwin ner\nto l</w>\nkelown a</w>\nfascin ated</w>\nãĥ ¬\nsris ri</w>\nsqu ared</w>\nspr ung</w>\nnegoti ate</w>\npriv ately</w>\nav en</w>\n>> >>></w>\ng ical</w>\ngav in\nchester field</w>\nzu mba</w>\nor r</w>\nnat alia</w>\nimpeach ment</w>\nmn l</w>\ncar at</w>\ncriti que</w>\ncredi ble</w>\ntrac y\ntan i</w>\nmusi k</w>\njig saw</w>\ngam bia</w>\ntol kien</w>\nfe u</w>\nas per\nsav ory</w>\nfo xx</w>\nf itt\nmar lon</w>\nl rt</w>\nv ell</w>\np br</w>\nimprison ed</w>\ni om\nchu l</w>\nwind shield</w>\nkay e</w>\nba a</w>\nchor d</w>\ns art</w>\nal gon\nminister ial</w>\nnat geo\nla zio</w>\nnor ms</w>\nðŁĳį ðŁĳį\nlic king</w>\nfut bol</w>\nun sung</w>\ndalla scowboys</w>\nsh red</w>\ndistur b\ndev ine</w>\nbe ards</w>\nch f</w>\nb day\nro sso</w>\nig or</w>\nay i</w>\nsi ren</w>\nk air\nsti les</w>\nro f\nmag nets</w>\nun cover</w>\nmou se\nbang ing</w>\nsi ghted</w>\nspe ople</w>\nimpac t\nrow land</w>\nkir a</w>\nenviron ment\nlove the\np sis</w>\nmish ra</w>\ngl endale</w>\nca jun</w>\no che</w>\nde ception</w>\nsex ist</w>\nstra ws</w>\ns ga</w>\nbuff er</w>\napost le</w>\nsp l</w>\npop up</w>\nðŁļ Ĺ\nr g\nup er</w>\nball in</w>\ni dy\nocca sional</w>\nnational park</w>\nðŁı Ĭ\nu an</w>\ninnov ation\nà¸ «\nte aparty</w>\nre tte</w>\ncounter fe\nb ha</w>\nrec s</w>\nig en</w>\nðŁĮ Ĳ</w>\nhumming bird</w>\ncu r</w>\nha ven\nla zar\npue blo</w>\n: :\nzi onist</w>\nop ath\ninver ness</w>\npromo ter</w>\ncarto on\ncabine ts</w>\nmahog any</w>\nsurve ying</w>\nr ational</w>\nfeel ing\ntesti fy</w>\nso w</w>\noc on</w>\nà¸ ¢</w>\nne el\nmar is</w>\nsol itary</w>\nche mo\nrad cliffe</w>\nsim ons</w>\nros ary</w>\nnew er</w>\njo die</w>\nre tali\npra wn</w>\npad dy\nhen ge</w>\nk ala</w>\nim plant</w>\nat y</w>\nbren twood</w>\npar adox</w>\nene z</w>\nre designed</w>\np our\nwy d</w>\nal de\nà¯ ģ</w>\nsol d\nbiomed ical</w>\nà¹ Ĥ\ntt tt</w>\nmat teo</w>\nys er</w>\nnew ton\nde bun\nner dy</w>\nloo l</w>\nwo on</w>\nelisa beth</w>\nec c</w>\nwh i</w>\nach o</w>\nsalv age</w>\nsal aries</w>\nqu ity</w>\nnavig ating</w>\noph thal\ncon soles</w>\nre built</w>\no pec</w>\nast ers</w>\nsho red\nset list</w>\nkathr yn\nrhy mes</w>\nre visiting</w>\nash ish</w>\nli ft\nre post\nsole il</w>\nâı ±</w>\nweal th\nsa at\nwe c</w>\nking james</w>\nflipk art</w>\nfield work</w>\nse gu\nmo dal</w>\nbu b</w>\nare rs</w>\nðŁį Ĵ</w>\nclo oney</w>\npad dington</w>\nnecess ity</w>\nguth rie</w>\npen te\nli mo</w>\njo sie</w>\nar tin\nen c</w>\nl hs</w>\nbetra yal</w>\ninfo graphics</w>\ni er\nmo a</w>\nhear ings</w>\nbon jour</w>\nsym bolic</w>\nag ro\nwed ges</w>\nkrist ina</w>\nwild flower</w>\nathle tic\nphotograph y\npe sh\nca hill</w>\nchi lean</w>\ngou l\nfi oren\nðŁĳ ¶</w>\nz il</w>\nsk im\nbad oo</w>\ndeli a</w>\ntre ble</w>\nn cc\nðŁĩ¦ ðŁĩ\na house</w>\nbul lock</w>\nsol itude</w>\nØ§Ù Ĩ</w>\ncan cers</w>\nfutureof work</w>\nhu tch</w>\nwater shed</w>\nwar mongers</w>\nsp illed</w>\ncolom bo</w>\nmo th\nassoci ations</w>\nweigh ed</w>\nglobal goals</w>\nnot just\nchrist i</w>\ntor g</w>\nswe ating</w>\nman eu\nclu sters</w>\nâĢ¼ï¸ı âĢ¼ï¸ı</w>\nta ped</w>\nul y\ntru sting</w>\nyu suf</w>\nte in</w>\nra b</w>\n, ,,,</w>\nsin ai</w>\naudi ble</w>\nexplic it</w>\ncro wns</w>\nsch iz\nat least</w>\nðŁĹ £\nde bra</w>\nje suit</w>\nene gger</w>\nz hen</w>\none sie</w>\ni it</w>\nss f</w>\ngur gaon</w>\nchak ra</w>\nbear cats</w>\nk ran\nk awa</w>\nreque sting</w>\nhan over</w>\ng end\nsor os</w>\nmer cy\nlovel y\ndo omed</w>\ntim my</w>\nku z\nul l\nab ram\nsa ison</w>\nãĥ «\nclean ers</w>\nre mo</w>\ncircu its</w>\nbar red</w>\no th\nmo ist</w>\nmadele ine</w>\ngall o</w>\nu j\nper mits</w>\nhea viest</w>\ncar ols</w>\naz te\ngior gio</w>\nflo ats</w>\ndecl aring</w>\nus rc</w>\nmin at</w>\ncraf ts\npri ma</w>\nconven i\nnickelo deon</w>\ndanc ing\nceremon ial</w>\nblo gg\ntw p</w>\nanglic an</w>\nshe k</w>\nk nick\n( ((</w>\nhubb ard</w>\nharve y\nhit man</w>\nfen g</w>\nwe some</w>\nfor za\ns word\nop us</w>\nbro m</w>\ngi bility</w>\nz al</w>\nm unch</w>\ndance hall</w>\ngre edy</w>\nhd mi</w>\nre birth</w>\nðŁĺĭ ðŁĺĭ</w>\ns world</w>\nfigur ine</w>\ncom post</w>\nk f\nengra ving</w>\ngior no</w>\nst ana</w>\nk man</w>\nham ster</w>\ncompos ers</w>\naj e</w>\nfunc tionality</w>\npol k</w>\nis ons</w>\nair planes</w>\nte se</w>\nhor rors</w>\nmusc at</w>\ngi ven\nsp ence</w>\nðŁĩ¸ ðŁĩ\neli ot</w>\nach illes</w>\nfre ck\ncrypto currencies</w>\nsou ther\nhal o\nbor neo</w>\npolit ic\nhahahaha h</w>\nup state</w>\nsi ena</w>\nobsc ure</w>\nhau sen</w>\nlloy d\nhappy friday</w>\nmotor bike</w>\nbon a</w>\nameric as\nhol s</w>\n- (</w>\nspor ty</w>\nun aware</w>\nreven ues</w>\nchristop her\nbank sy</w>\nav an</w>\nev apor\ncom press\neyel iner</w>\nto dos</w>\nbuff y</w>\nrenewable energy</w>\nly rical</w>\nar chan\nrapi st</w>\nfair trade</w>\nlma ooo</w>\nbeat z</w>\npro active</w>\nla pse</w>\nir ical</w>\nrevers al</w>\npo de\nmcin tyre</w>\nmac au</w>\nãĥ ķãĤ\nnash grier</w>\nf sa</w>\ng all</w>\nçĶ Ł\nperpe tr\nil ya</w>\nconfigur ation</w>\n% ;</w>\nstr ange\nrac i\nà¸ ĩ</w>\npic kups</w>\nkov sky</w>\nmam mal</w>\nw ps</w>\ng able</w>\ncompar ative</w>\nz h\nsave our\nda vey</w>\non etsy</w>\nmu ssels</w>\nmis er\ncri stina</w>\nelectr on</w>\ncra ve</w>\nlo ren</w>\nprecipit ation</w>\nm z</w>\nðŁį «</w>\nvin cen\nsnow board</w>\nno ida</w>\nah n</w>\nmarin ated</w>\ng tr</w>\ntown hall</w>\nmin is\nbethe l</w>\nadv an\nsu ra\nshi el\nfur ry\nðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ</w>\nlyn d\nso il\nsc ence</w>\nsen eca</w>\nshar jah</w>\ndick ens</w>\ncredenti als</w>\nav ar\nper k</w>\nrequ iring</w>\npre fer\nj ian</w>\nde ca</w>\nr ach</w>\ning for\ndel e</w>\nbe ep</w>\nðŁĴ »\ncis ely</w>\nhu ddle</w>\ngreen sboro</w>\nhaw king</w>\nho ax</w>\nhang ar</w>\nç ľ\nmis o</w>\nlo vin\ngre ta</w>\nab ad\nlogi e</w>\nat an</w>\nsnow flake</w>\nmahe sh\nfear the\nal kal\nbobb lehead</w>\nba hn</w>\nju dged</w>\nfu tu\nfeli x\nðŁį ĵ</w>\npi ke\nder iv\nnotic es</w>\nau er</w>\ndis super</w>\nor da\nwi pes</w>\nam ino</w>\nstri kers</w>\nfoo tb\ndram as</w>\npun ching</w>\nscore less</w>\nheming way</w>\nbi h</w>\nbal lad</w>\nchat ter\nam mo</w>\nkle in\nfabric ation</w>\nkari m</w>\nz end\nhi sto\nvol ta</w>\nrock y\nmarke ter</w>\nxtre me</w>\nsequ encing</w>\nparadig m</w>\ncle ats</w>\nboom ing</w>\nâģł âģł</w>\nblock ade</w>\npromp ts</w>\nyogh urt</w>\npur pose\nnu r</w>\nregu late</w>\nnois y</w>\ning rid</w>\nbird watching</w>\nbar tender</w>\nÙ ĥ\nwor dof\ncha otic</w>\nshor ty</w>\nel dest</w>\nz app\nonceupon atime</w>\nfl yo\nrit os</w>\nmike quind\nðŁĲ ´</w>\nregi stering</w>\n. ]</w>\nad ol\ngg gg</w>\npur ge</w>\nkid lit</w>\nar bor\nval ves</w>\nsynago gue</w>\no th</w>\nunanim ous</w>\nveri fication</w>\ndar rell</w>\nãģ Ħ\nvander bilt</w>\ntape stry</w>\npro sper</w>\ndid dy</w>\ndra fting</w>\nde cep\nmarqu is</w>\nst int</w>\nmichael jackson</w>\npee led</w>\nmen us</w>\nbb b</w>\nsc are\nema il\nwri gley</w>\nit is\nf ell\nsome thin</w>\nbar ra</w>\ned gar\ndi pping</w>\npu ddle</w>\nsla de</w>\nlear ner</w>\njal en</w>\nðŁ§ Ĳ</w>\nthe daily\nmikequind azzi</w>\nju x\niq bal</w>\nmckin ney</w>\nra iser</w>\nef an\ndr one\ncat o</w>\npic ket</w>\ncro we</w>\nl att\nuk o</w>\ngiuse ppe</w>\nhin i</w>\nsynthe si\nponti fex</w>\nsong writing</w>\nto d</w>\nswit ches</w>\ndin ners</w>\nh q\ngabri elle</w>\npensac ola</w>\ncir cle\nexpo ses</w>\nev s</w>\nriyad h</w>\npro men\no ck\nsa j\ncit ation</w>\nbrew co</w>\njo si\nep aper</w>\ndri f\npoint less</w>\ntang led</w>\ncri pp\nline ups</w>\nfairi es</w>\ndaz e</w>\nmour n</w>\nbla dder</w>\nsal z\nbur undi</w>\nbook mark</w>\nthe people</w>\nsub sequ\nprinci pal\nsk er</w>\ncourt ney\na oki</w>\nrac ers</w>\nad m</w>\nmom a</w>\ncritical role\nhou n</w>\nshed ding</w>\nsa ka</w>\nace ous</w>\nmck ay</w>\nhus bands</w>\nÂ ½</w>\nme da</w>\naccu sations</w>\nro sel\nnc is</w>\nwitne ssing</w>\nor ama</w>\ngo ds\nhil ton\nel man</w>\nÃŃ n</w>\nmeg ap\ncra ven</w>\nannoun cer</w>\ncrit eri\nsheffiel dissuper</w>\nmilit ant</w>\nconsu l</w>\nhoo ded</w>\naby ss</w>\nb x</w>\nma dam\nlo cu\nmary am\nmanic ure</w>\ngrat is</w>\nac tresses</w>\nros ario</w>\nthis dayin\nking ly</w>\ngn ome</w>\ncel ine</w>\nr ous\nhe el\nlil ac</w>\nvish al</w>\nab h</w>\nthor ns</w>\ns ls</w>\nne al\nconstruc ting</w>\nbe ren\ns lang</w>\nma ins</w>\nfar ra\nsar ko\npai ge\ngu iller\nl ala</w>\nice berg</w>\nnou n</w>\nplann ers</w>\nu mmm</w>\nou ses</w>\nill ary</w>\nma an</w>\nbox ing\nzi pper</w>\nsrin agar</w>\nmigu el\no str\nmp o</w>\nresponsi bly</w>\nlan terns</w>\nappli ance</w>\nx b</w>\ngren ade</w>\nneglec t</w>\ndy sle\nham mock</w>\nne ctar</w>\nwit cher</w>\nr gv</w>\ndi ence</w>\nser bian</w>\nseed ed</w>\ncru z\nbi sh\nsp he\ne q</w>\nsky rim</w>\nalge bra</w>\nphil ately</w>\nbungal ow</w>\nge off\ny ves</w>\ndemand ed</w>\nconsider ations</w>\nthe vamp\npawan kalyan</w>\nco ded</w>\ngrit ty</w>\nerup tion</w>\nse infeld</w>\nuni denti\nëĭ Ī\nwor m\nac us</w>\nse ung</w>\ndun g</w>\nro land\nsu d</w>\ndi visions</w>\nab lanc\nshor test</w>\nj f</w>\np oun\nplant based</w>\nbe to</w>\ntough er</w>\nmc o</w>\ndon et\nmark us</w>\nv fl</w>\nðŁı ł</w>\nopen ing\nco ward</w>\ncaber net</w>\no xi\nburle sque</w>\nsand ra\nsu mo</w>\nconsi st</w>\ntho t</w>\ncay man</w>\nmotor ola</w>\ngutier rez</w>\nd slr</w>\ny w\nno bel\nnov ice</w>\nmoms demand</w>\ngrun ge</w>\nsp or</w>\nd cc</w>\npre sses</w>\nsli st</w>\nallot ment</w>\nvoc ational</w>\nft c</w>\npu ja</w>\nlo ven\nutt arak\ntan dem</w>\nsh ep\ncome dians</w>\nanat om\ncant wait</w>\nhealthye ating</w>\nwest side</w>\nmar gins</w>\nchi ang</w>\nasbe stos</w>\nstupi dity</w>\nproble matic</w>\nfit bit</w>\n: $</w>\nceil ings</w>\nshu a</w>\nprotec tions</w>\nbio tic</w>\nbeng ali</w>\nre sts</w>\nbien nale</w>\ntim o</w>\ncul min\ne minent</w>\naffe ction\nunbeliev ably</w>\nindividu ally</w>\ncanvas sing</w>\nwh itt\nnov asco\nchin son</w>\nh pe</w>\ngo w</w>\ngloucester shire</w>\npa o</w>\nthresh old</w>\nchev ron</w>\ns ine</w>\nwe ther\npp ie</w>\naqu ino</w>\nantwer p</w>\nâĸ ¬\npo on\ninst af\nequ ine</w>\ncinemato graphy</w>\nnbaf inals</w>\nvali ant</w>\nkil kenny</w>\nte rence</w>\nsyste mic</w>\nsr l</w>\np ound\nmade ira</w>\npl ough\ntre cht</w>\nmat ed</w>\nmp d</w>\nransom ware</w>\nph in</w>\nli qui\nbb ce\nboom er\ni standwith\ncon ju\nr te\nnar a</w>\nfoo lish</w>\nda shing</w>\nvier nes</w>\nbr ite</w>\nda u</w>\njuni per</w>\nai da</w>\nyou now</w>\nra zer</w>\nde i\nrepe ating</w>\ncomfor ting</w>\nadjac ent</w>\ne to</w>\nca sted</w>\nchat ur\nmu er\nsyn th\nsan itary</w>\nmac le\nindepend ent\nlaw ful</w>\ne erie</w>\nh or</w>\nðŁĴ Ń</w>\nam rit\nvel o</w>\nstation ery</w>\nmu f\nmay may</w>\ncontempl ating</w>\nelabor ate</w>\ngre gor\ndri es</w>\nac col\nà¸ ļ\nschwarz enegger</w>\nill nesses</w>\nday break</w>\nfollow back</w>\ncollu sion</w>\nelectr onic\njo vi</w>\nhiro shima</w>\nta w\nhom ec\nmic ah</w>\nqu itting</w>\nfro sting</w>\nben fica</w>\nhel i\ns ical</w>\npic cad\ncorpor ate\nment orship</w>\nyou are\nsing er\nshi va\nru ne\ning er\nri um</w>\nplay able</w>\ndoo p</w>\nwil low\nter re\nni p\nat d</w>\nwar bler</w>\nprofession ally</w>\ner ase</w>\nproce ed</w>\npedestri ans</w>\nmis chief</w>\nben ding</w>\nalas kan</w>\nc kett</w>\nmo p</w>\ndd les</w>\nshut ter</w>\nge ared</w>\natene o</w>\nma deline</w>\ng ations</w>\no sha</w>\nder ick</w>\nsw ild\nan gry\npat ents</w>\nhun k</w>\ndecre ased</w>\nfr y\nðŁĴĸðŁĴĸ ðŁĴĸ</w>\nsal on\nquant ities</w>\nd ario</w>\nni gel\nku ma</w>\njen n\nhapp ye\nxx x\nrex perience</w>\npro s\nau sch\nrele ssly</w>\nham burger</w>\nfuku shima</w>\ner ne\nstat ec\nren d\nmay field</w>\nj one\nlef ty</w>\nbern stein</w>\nsm il\ngener ates</w>\nfore station</w>\nband its</w>\nta yo</w>\nr ca</w>\nac ci</w>\nrodri go</w>\nkn app</w>\nelo vers</w>\nvege tation</w>\nu ral</w>\nle ft\nħ ï¸ı</w>\nworl dre\nsur i</w>\nembar k</w>\nw son</w>\nba you</w>\nmu ller</w>\nmo vers</w>\nðŁķ º\npresby ter\nl f\ncre e\nbat b</w>\nsal am</w>\ndemonstr ations</w>\nan ec\nn pc</w>\nit ics</w>\nto graphy</w>\nre inst\nthur st</w>\ntal e\noff ences</w>\nsmart city</w>\nbro tha</w>\nofthe year</w>\nin valuable</w>\near n\nðŁĳı ðŁı½</w>\nkre mlin</w>\ngra dy</w>\ntown fc</w>\nguern sey</w>\nma ha</w>\ncontag ious</w>\ndre x\nbe en\n( Â£</w>\nnati vity</w>\nk tm</w>\nsomer halder</w>\ncomp ounds</w>\níķ ĺ\n\" âĢ¦</w>\naf g</w>\nott news</w>\nh ound\nfire fly</w>\ncil an\ndonet sk</w>\nvolunte ered</w>\nak ira</w>\nè ª\nsing ul\nst h</w>\ndro wned</w>\nmand o</w>\nhe ir</w>\nðŁİīðŁİ Ī</w>\ntax is</w>\ny uki</w>\nvel d</w>\nk ans</w>\nel k\nran ts</w>\nhash tag\nt eng\nro g</w>\na at\ngru b</w>\ne ber\nin india</w>\ncolo ssus</w>\nsig ni\nso ever</w>\nmile stones</w>\nder o</w>\ndifferen tial</w>\nphu ket</w>\nmaster mind</w>\nan gh\nmel ani\nbro ker\nactor vijay</w>\nstun ned</w>\ncontinu ity</w>\naf fl\nvo cal\nperenni al</w>\nfianc Ã©</w>\nin complete</w>\nhun ts</w>\nre issue</w>\ndomin ates</w>\ntur meric</w>\nro am</w>\nri on</w>\nbag ged</w>\nnas sau</w>\nfu t</w>\nx ox</w>\nnational trust</w>\njo ye\nsan o</w>\nhearth stone</w>\ndis respect</w>\nle es</w>\nh se</w>\nsiber ian</w>\noffe e</w>\nre stock</w>\nwolf gang</w>\nre gan</w>\nplan o</w>\nun wind</w>\nre par\nmil le</w>\n] ,</w>\nskul l\nfat ally</w>\nconcep tual</w>\nðŁĮ ²\nf Ã©\nber to</w>\nb ms</w>\nu a\nmag na</w>\nnotre dame</w>\nle te</w>\nla undering</w>\nheartw arming</w>\nbuffe tt</w>\ngo at\npe abo\nwind mill</w>\nv ac</w>\ncontinu ally</w>\naz alea</w>\nmem brane</w>\ncan cels</w>\nmake yourown\nathe red</w>\np to</w>\ntor pe\nðŁĺ ł</w>\nðŁĴ §</w>\nsc ares</w>\nle aking</w>\nz et\npix els</w>\nac i</w>\nkh il\nmarath i</w>\nðŁĻı ðŁı½\nu la\ntam u</w>\nchandi garh</w>\nz agre\naa b</w>\npronoun ced</w>\naubre y</w>\nsand er</w>\npun ta</w>\nhar low</w>\nic elan\ncelebr atory</w>\nso t</w>\nunci ation</w>\nstru ly\nmc dowell</w>\ndeepi ka</w>\nremin ders</w>\nmy stical</w>\nct c</w>\nchat ted</w>\ns ica</w>\nbar gains</w>\nch hat\nru bin</w>\nm net</w>\noiland gas</w>\npel ican</w>\no at</w>\nmor ality</w>\nk our\ni h</w>\nnu clear\ngc u</w>\nric her</w>\nvene zia</w>\nm ma\nle ith</w>\nac company</w>\nrich mond\nsports net</w>\nba ahu\nsmu ggling</w>\nmm i</w>\nðŁĩ®ðŁĩ ª</w>\ntwi sts</w>\nsahi b</w>\n.... .\namb itions</w>\nil lo\nhistor ical\nfo rec\nshow biz</w>\npon ies</w>\nchas ers</w>\nremo del\nwill ing\nprince sses</w>\nam ple</w>\ncushi ons</w>\nac les</w>\nlot r</w>\nda ch\nan the\nin corporate</w>\nnew bury</w>\nki ri\nfried rich</w>\nab v</w>\nball ers</w>\nalber t\nðŁĳ Ń\nlet i</w>\nnan op\nci de</w>\nanal o\nn sf</w>\n)) ))</w>\ngriffi ths</w>\nvalen ci\nro ano\nfun run</w>\nbabys itting</w>\nca day</w>\nent re\nu ck</w>\nslu g</w>\ntic al\nthe sims</w>\nro ar\ncar ney</w>\ng am</w>\nsto we</w>\nfi d\nbun ny\nsham rock</w>\npe cu\nmol ina</w>\ngo cougs</w>\ncon tributes</w>\ntransform ation\nmo y</w>\nv aj\nsever y\nantioxid ants</w>\nthir teen</w>\nsight seeing</w>\nl j\nreversi ble</w>\nodd ly</w>\nhoo kah</w>\nnou vel\nhal al</w>\nfe i</w>\nstab les</w>\nmul t\nho pped</w>\nbra ids</w>\ninter change</w>\nghana ian</w>\nww ww\neth no\ncon junction</w>\nago v</w>\nye ti</w>\nearth and\nts p</w>\ncon serve</w>\nheir loom</w>\nmetaph or</w>\nwoo f\ntor io</w>\nself less</w>\nn wa</w>\nem ilia</w>\nyl ene</w>\ny xe</w>\ngi ar\nmoder ating</w>\npro bz</w>\nb fi</w>\nne er\ndu mmy</w>\nhanuk kah</w>\nwe bber</w>\nk v</w>\neye brow</w>\ndag ger</w>\nsu mp\nra ges</w>\nork ney</w>\ntb o</w>\nhal sey</w>\nassign ments</w>\ntr onic</w>\nscri b\nco on\nan war</w>\n# âĢİ</w>\njal ape\nflori da\nqu aid</w>\nhaw keyes</w>\nâĻ¡ âĻ¡</w>\nstreet car</w>\nro g\ndat lantic\ngran ola</w>\nun changed</w>\nexpect ation</w>\nÙ ĩ\nmar lin</w>\ngu mmy</w>\nðŁĻı ðŁı¾\nawareness month</w>\noil painting</w>\nmu th</w>\nper ch</w>\njun to</w>\nvilla gers</w>\nmor g\nche ated</w>\nweb comic</w>\nthe future</w>\nd ps</w>\nla kings</w>\nmen tioning</w>\nvo or\nident ities</w>\naccor d\nmc gu\nl pga</w>\nrum our</w>\nmassi vely</w>\nm pls</w>\nheal y</w>\nd ate\nsp oli</w>\nre visited</w>\non t\nal and\nscru tiny</w>\nlakel and</w>\nbl ending</w>\n< /</w>\nan kara</w>\njami edor\nmetab olic</w>\nf ences</w>\nann y\nå ħ\nsemic on\noo tt</w>\nspace ship</w>\nwack y</w>\nle ta</w>\nap ac</w>\nshe e</w>\nin herit\ndo res</w>\nðŁĩ¨ðŁĩ ¦\ngent e</w>\ntw ick\nri ms</w>\ngal ve\nde ville</w>\nking fisher</w>\nscorpi o</w>\now l\nal ar\nvari an</w>\nðŁĹ ĵ\nvene tian</w>\nstar dust</w>\nthen orth</w>\nq ing</w>\nhar rington</w>\nconsul ate</w>\nspectac le</w>\nho bbs</w>\ntur ks</w>\ngre er</w>\nmat ing</w>\nðŁİ Ģ\nðŁĮ Ģ</w>\ndirec ts</w>\ní ĭ\npompe o</w>\nvo iced</w>\nla os</w>\ntz u</w>\npro me\npri sm</w>\nmer c\nfortun ately</w>\nbc fc</w>\nmcdon nell</w>\nnot sorry</w>\nsmi led</w>\nt ba</w>\nfor war\nmid term</w>\ndar by</w>\nwe instein</w>\nup grading</w>\nwol ff</w>\nbron co</w>\ncab ello</w>\nðŁ¥ ĩ\nfi able</w>\nshar pe</w>\nbat tered</w>\nsat o</w>\nmyth ical</w>\ninstap ic</w>\npre pped</w>\neni um</w>\ne spo\ndi aper</w>\nexplan ations</w>\nwho pping</w>\nragn ar\npe el\nantibio tic</w>\nl acks</w>\nharri son\nli sm</w>\nau l</w>\nqu ail</w>\nmartin a</w>\nsent encing</w>\nsc ams</w>\ndi di</w>\ntr onics</w>\nãħł ãħł</w>\ngo ff</w>\nza in\nparam ore</w>\ncha ined</w>\nclin ton\nli ff</w>\ncott ages</w>\nem on</w>\nreve rend</w>\nconsu mer\nce an\nt any\nlum pur</w>\ne bay\nsto ol\nðŁĺ» ðŁĺ»\nta pro\nh ath</w>\nmodern art</w>\njust ine</w>\nprover b</w>\napp y</w>\ntra x</w>\nmani fest</w>\nam bu\nnai k</w>\npe pp\nr sd</w>\nmer chants</w>\nkitch ener</w>\nshi fted</w>\nli zz\nâĺħâĺħ âĺħâĺħ\nâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶ\nuto pia</w>\ntom o</w>\nou ted</w>\ncom ers</w>\nchiroprac tic</w>\nbook club</w>\ncin dy\npro hibition</w>\nse uss</w>\në¯ ¼\nthin kin</w>\nrr rr</w>\ngo fund\nt ack</w>\nom b</w>\ncatastro phic</w>\nling u\nguild ford</w>\nbo td</w>\nà¥ ĭ</w>\nplan ter</w>\n^ ^\nwin k\nkath mandu</w>\nsto ppers</w>\nsmooth ies</w>\nre efs</w>\nhin d\nbell amy</w>\nĦ ë\nwaste water</w>\nvo or</w>\nnat l</w>\n! ]</w>\nre el\ny ap</w>\nscoo by</w>\nwork space</w>\ncorin thians</w>\nbl un\nobli gation</w>\ng bbo</w>\ndy son</w>\ncra vings</w>\nell ington</w>\ndap l</w>\nwre xham</w>\nearthand clouds</w>\nuk runchat</w>\npositi oned</w>\nkal b</w>\nfour square</w>\njo ck</w>\nim pending</w>\neven ing\nath y\npro claimed</w>\nc ites</w>\nann apolis</w>\nsan i</w>\nmar th\nir l\naccom mo\nka a</w>\nfin a</w>\ny aa</w>\ndi sper\nec ar\nbha k\nwill y\nðŁĺĢ ðŁĺĢ</w>\nmcder mott</w>\nmo j\ngener ational</w>\nu said</w>\ntrain ing\nlon ely\nlo res</w>\nimpe cc\nâĢ Ĳ</w>\nbeav ers</w>\nma ki</w>\nhe b</w>\naap l</w>\nå ı\nwolver hampton</w>\nleader board</w>\nme u</w>\nc fa</w>\neaster n\nhu r</w>\ncivil war</w>\nou rage</w>\nhor ned</w>\nle high</w>\nawar ds\nevi dent</w>\ngi gab\nr ous</w>\nma del\nro byn</w>\nur gently</w>\nk ors</w>\nen as</w>\nheis man</w>\nbam bam</w>\nfab ian</w>\nf om\nevalu ating</w>\nassemb ly\nout sourcing</w>\nhun tsville</w>\nðŁĶ ª</w>\njusti fied</w>\ncashi er</w>\nsp aper\nbuc keye</w>\nanaly tical</w>\nillumin ati</w>\nau tho\no j</w>\nsha de\ngeel ong</w>\nwh ey</w>\nhe aton</w>\nterri bly</w>\nele k\nun charted</w>\nsd live</w>\nmoto cross</w>\nher mes</w>\ndar shan</w>\ndar lington</w>\ncash mere</w>\ngri pping</w>\ncilan tro</w>\npun ish</w>\n... :</w>\nðŁĴ Ħ</w>\ninst ance</w>\nder i\nlo bal</w>\nmuk her\nsp ar</w>\nthin ker</w>\nfre mont</w>\ncom piled</w>\ncolor ado\nvig ne</w>\nsm d</w>\nwhe ad</w>\nvilla ge\nle ek</w>\nformula e</w>\nta res</w>\npersist ence</w>\n?? ????</w>\nped ago\nhe z\nalzheim ers</w>\nvul ture</w>\noff ence</w>\nis great</w>\nsuff ra\nkick in</w>\nh mmmm</w>\nbroad way\nï¸ı @</w>\nart i</w>\nalli son\nendor ses</w>\nry u</w>\nlolli pop</w>\nsoy bean</w>\nkend all\ncer a</w>\ninv ade</w>\n( ðŁĵ·:</w>\nconver ter</w>\ncar pets</w>\nho bo\nfr it\npe ac\nes qu\nern an</w>\nou f</w>\nan il</w>\ndi ffer</w>\nch ing\nbre cht</w>\nsp g</w>\ndaven port</w>\nstra va</w>\nsever n</w>\nn gos</w>\nstor ians</w>\nfe te</w>\nparame dic</w>\nj hb</w>\nal amo</w>\nsne aking</w>\ngold coast</w>\nroof s</w>\nisi l</w>\ndepic ted</w>\nprojec tions</w>\nnu mb\no ss</w>\nep i</w>\nglu cose</w>\nzid ane</w>\ninfin iti</w>\níĺ Ħ</w>\nran som</w>\nton ics</w>\nfal k\ng ler</w>\nou tw\nre ss\nweek ly\nthe on</w>\nn ole</w>\nðŁĩªðŁĩ º</w>\nvol ley</w>\nsum mar\nneg ativity</w>\nsam son</w>\nye w</w>\naus votes</w>\nju l\nju dy\nf art</w>\npra yed</w>\npal ate</w>\nmulticul tural</w>\ndouble header</w>\ncycl ones</w>\npier re\nãģ ¨\nâĺ łï¸ı</w>\nrt w</w>\nconver ting</w>\nwir ral</w>\nl ari\nir relevant</w>\naustin mahone</w>\nan che</w>\nya an</w>\nsd f</w>\n$ .</w>\nexplo ding</w>\nulti mate\nprof ici\ngofund me</w>\ncell ence</w>\nep stein</w>\nbul lied</w>\nsep tic</w>\nà® ¤</w>\nlu mber</w>\ncu ff\nvsco cam</w>\npl or\nà¸ ¥\nse ok\nro to\nvenezu elan</w>\nsor ta</w>\nspir ited</w>\ndaniel padilla</w>\nteam sisd</w>\nradio active</w>\nicelan dic</w>\nðŁĴ ¤\nver e</w>\naccommo date</w>\nshi pp\not ter\nol ina</w>\ne go\nsu la\nsan antonio</w>\nde as</w>\nsimil arities</w>\nâļ ¾</w>\ny om\nbro ward</w>\nå °\ncan cun</w>\nveri fy</w>\non te</w>\ncandle light</w>\nìł ķ\ninf ants</w>\naz am</w>\nðŁĺ °</w>\nle ven</w>\nun stable</w>\nbloom ington</w>\nx ford</w>\ncon tour</w>\ny p</w>\ninnov ator</w>\nhistor ies</w>\npo y</w>\nlolo lol</w>\nex pires</w>\ncat alo\nbill boards</w>\nan ab\nel ic\nnovasco tia</w>\nfa ire\nìĿ ´</w>\nrock well</w>\ngr ille</w>\naz tec</w>\njoh or</w>\nur struly\nfi ren\ndun lop</w>\nid le</w>\nport man</w>\njo es</w>\ntx hsfb</w>\nhol m\ncham ele\nunder world</w>\nlo ss\nti em\ntherap ists</w>\npast ure</w>\npa ste\ning now</w>\nvul can</w>\nra gon</w>\nlar kin</w>\no shi</w>\nho co</w>\nchild hood\numb rel\nsuccess or</w>\nkath y\niz en</w>\n° ï¸ı</w>\nshare holders</w>\nol ga</w>\nai b</w>\nhe ap</w>\nfl aming</w>\nro u</w>\nair tel</w>\nrat t</w>\nz ane</w>\nvo w</w>\nthor ough</w>\nsn ag\npar th</w>\nun conscious</w>\nve y\nnew release</w>\ngh ee</w>\ncroati an</w>\nfacilit ating</w>\nswan son</w>\nastor ia</w>\nto logy</w>\nmaster y</w>\nðŁ¤ ĳ</w>\nbil bao</w>\ntrou pe</w>\nthe ori\nchey enne</w>\nro tt\nshore line</w>\ngra sso</w>\nmaster chef</w>\n+ )</w>\nvi x</w>\nellen show</w>\nas g</w>\nan ak\nku ya</w>\nsafar ilive</w>\ndebu ting</w>\nblu m</w>\nlist ener</w>\nv ins</w>\nbook shelf</w>\nsmart cities</w>\nmakeyourown lane</w>\n; ;\nðŁĲ ¯\nri zz\non ward</w>\nbull dog\nbear ish</w>\nvir uses</w>\nfri gh\nlin den</w>\nwe iser</w>\nsn t</w>\ngon a</w>\ndre sden</w>\nfl anders</w>\ncu k</w>\nwheel ing</w>\nba u</w>\natu esday</w>\nsurf ers</w>\nswi ft\nmc call</w>\narbitr ation</w>\naw d</w>\nmon c\nb ine</w>\nat x\nre fr\nmi ro\npo sey</w>\nn are\nrit ter</w>\nâģ ¦</w>\nplay book</w>\nblow out</w>\nsports manship</w>\ns oooooo</w>\nmalay alam</w>\ngri ms\nbur bank</w>\ninfin ity\nsar gent</w>\noit nb</w>\njoseph ine</w>\nski pping</w>\npar kin\nexcur sion</w>\nsemin ars</w>\njo har</w>\npar tridge</w>\npost game</w>\nll ll\nblan che</w>\ntemp ting</w>\nm na</w>\nlu ka</w>\nis ers</w>\nto ffee</w>\nbar ron</w>\nhe mmings</w>\nsa e</w>\ngo hawks</w>\ncu pid</w>\nli mbs</w>\ncon se\nun common</w>\nz ada</w>\nhead shot</w>\nso ils</w>\npione er\nmam ma</w>\nsem itic</w>\npan dey</w>\njamiedor nan</w>\nspl its</w>\nvel a</w>\nson i\nra ff\nt mobile</w>\nâŀ ĸ</w>\npra wns</w>\nlit er</w>\nenjo yment</w>\negg plant</w>\ntu b\ncultur al\nus ic\nsuspici on</w>\nsy cam\nsumm ed</w>\nma du\nho ck\nup wards</w>\neye ing</w>\nri ve</w>\nassas sins</w>\nâĤ ¬\nout fy</w>\nchi ves</w>\nt ner</w>\nla is</w>\npor ridge</w>\nsad dest</w>\nw cc</w>\nvick i</w>\nsna ils</w>\nbiz italk</w>\nmill an\nðŁĮ į\nsam oa</w>\nj ing\nmi key\ngu j\nchel ms\neli gibility</w>\narma da</w>\nthro p</w>\nsurger ies</w>\nãĤ ¿\nmo hawk</w>\nex its</w>\nme m</w>\nis lington</w>\nc me</w>\nland fill</w>\nkait lyn</w>\nðŁİ ¼\ncombin ations</w>\ntomorrow land</w>\nver b</w>\ncor a</w>\npre cisely</w>\nna om\nðŁĨ ķ</w>\nshr ink</w>\nsof tly</w>\nmerce de\nmand el\npoo dle</w>\nball erina</w>\nsop h</w>\njux ta\ny at</w>\nary an</w>\nhesit ate</w>\nlo wered</w>\ngu lar</w>\ndungeon sand\nron an</w>\nmy ri\nsp f</w>\nmen opau\ngra sp</w>\npa thi\nfe asi\nfla w</w>\nshi story</w>\nste ward\ngg le\nfay re</w>\ncli que</w>\ncredi bility</w>\nyo g\nsec tion\nmu sko\nse ville</w>\nno tt</w>\ncal m\nmate o</w>\nindic ted</w>\nfi ba</w>\nby l</w>\nlin o</w>\nu kin\n!! #</w>\nenig ma</w>\nsiri us</w>\nbu sc\nðŁį Ĭ\nmac kerel</w>\npsal ms</w>\na at</w>\ntomorrow spaper\nðŁĺ ĸ</w>\np fc</w>\n........ ...</w>\nshre k</w>\nmul let</w>\no sh</w>\ndanger ously</w>\nimmen sely</w>\nam ur\nðŁį Ĥ\npro por\nsy a</w>\nlondon marathon</w>\nabo ve\nobli gatory</w>\npro v</w>\nra cha</w>\nalex is\npri mary\nsh h</w>\nether net</w>\nd stv</w>\ncou gar\nun lucky</w>\nni l</w>\nsteak house</w>\nmel a</w>\nfc bayern</w>\ncause way</w>\nca therine\nfluore scent</w>\nnx t\nto kyo\nau sp\nreleg ation</w>\nqui zz\nshored itch</w>\nproud tobe\npromo s</w>\ninter acting</w>\nhome brew</w>\nda esh</w>\nw pg</w>\nstead ily</w>\nprovin ces</w>\nbal lots</w>\ni ah</w>\nal to\n< <<</w>\nyou u</w>\nri ley\nprefe rence</w>\ntra verse</w>\nincen se</w>\nam munition</w>\nho dges</w>\n# @</w>\nhail state</w>\ntart an</w>\nwitch craft</w>\nvent ilation</w>\nliber tarian</w>\n! âĢ¦</w>\now es</w>\n% !</w>\nong chang</w>\nbru shing</w>\nle ic\nfi ber\nunder attack</w>\ndown load\nex pir\nhy o</w>\npompe y</w>\nmc bride</w>\ny ag\nstre e\ncom bat\nten ding</w>\nai ra\ngug gen\nab ra</w>\nin na</w>\nfli ps</w>\naw al</w>\nm ach</w>\ndol lar\ninspir ations</w>\nz um</w>\no du\nit ty</w>\nvideo game</w>\naqu aman</w>\nhar u</w>\nbel fast\nje b</w>\nbut ch</w>\nus gs</w>\ncalcu lus</w>\ngo yal</w>\nmor gen</w>\nx finity</w>\nstand up\ncontrac ep\nsab re</w>\nna be\nin secure</w>\ngener ously</w>\nepit ome</w>\nl w</w>\nt ca</w>\nnarr atives</w>\ndon nell</w>\npand as</w>\nber gh</w>\ntu t</w>\nker al\nfel icity</w>\nbr ampton</w>\nquinte t</w>\nnom ore\nðŁĶ ĳ</w>\nlo i</w>\nalham dulil\nðŁĶ¥ ðŁĶĹ</w>\nston er\nshaw l</w>\nclin ical\nbren dan\ngon e\nfla wed</w>\ntri ppy</w>\nj g</w>\nal location</w>\npo aching</w>\nve vo</w>\nmo cks</w>\nlef tist</w>\nbon uses</w>\ncondem ned</w>\nabil ity\nst ating</w>\nmicrobi ome</w>\nbio logist</w>\nfor you</w>\nwahl berg</w>\nss or</w>\nift ar</w>\nw ul\nÑĦ Ð¾ÑĤ\npom er\nme me\nver te\ntre ll</w>\ntra it</w>\nin let</w>\nhormon es</w>\ndeliber ately</w>\nvill ar\nbattle ship</w>\np bl</w>\ntw enti\nho kies</w>\ndal ail\nsay a</w>\nmay fair</w>\nhan s\ndie ts</w>\nâľ¨ âľ¨\nod in</w>\nhot spur</w>\npap i</w>\nk ana</w>\nk amp\nfin na</w>\nflo tus</w>\nti ans</w>\nunic orns</w>\ntribe ca</w>\nchang ers</w>\nfore ground</w>\nout a</w>\ninv aders</w>\ngett ys\ntomorrowspaper stoday</w>\nmac millan</w>\nhand written</w>\nw fp</w>\nu de</w>\nstate of\nbase d\nâĺģ ï¸ı</w>\ncas m</w>\npsy ched</w>\nhistor ians</w>\nfol d\nd da</w>\nag grav\np ans</w>\ngreen way</w>\nau sv\nðŁĺ ¶</w>\nshradd ha\ninde x\nbe sti\nzim mer</w>\nt ness</w>\neye shadow</w>\not te</w>\ngo ts</w>\ndistribu ting</w>\npro min\nyo l</w>\nace a</w>\ntram rahim</w>\nhoo per</w>\nsupre me\njam min</w>\nintu itive</w>\nquali fications</w>\nsli m\nsid di\njay ne</w>\ntri pping</w>\ng tx</w>\npun s</w>\ne manuel</w>\nom g\nmid summer</w>\nin to\nsuccul ent</w>\nri en</w>\nnew mexico</w>\no or</w>\nhoo king</w>\nin f</w>\nðŁ¤ Ŀ</w>\nflir ting</w>\nna hi</w>\ng friend</w>\nt ps</w>\nhel ix</w>\nz s</w>\non ie</w>\nct f</w>\nkri s\nirresi stible</w>\nfla p</w>\nðŁĳıðŁı» ðŁĳıðŁı»\nus wnt</w>\nru d\nram ps</w>\npin oy</w>\not w</w>\nlol z</w>\nlow ering</w>\nfavor ite\nt mc</w>\nphra ses</w>\nher mi\naver aging</w>\nem br\nben o\nestu ary</w>\nsle eve\nribb ons</w>\nta sh\nà¸ ¹</w>\nx f</w>\naw gs</w>\nsun ited</w>\nbrew eries</w>\nanir ud\npun ches</w>\nol die</w>\nip ads</w>\nwi fey</w>\nland lords</w>\nd ji\ngun ner</w>\níķ ´</w>\ntex an\nex op\ncas sandra</w>\ns off\nðŁļ «</w>\nigh ton</w>\nbak ers\nawareness week</w>\nv all</w>\near p</w>\nbts bbmas</w>\napologi zes</w>\nâļĵ ï¸ı</w>\nwas ps</w>\nstates man</w>\nsnat ch</w>\nwatch dog</w>\nra fi\nafter party</w>\nspi ke\nj er</w>\nperi ph\nr nc</w>\nmu ll</w>\nle en\nshi es</w>\nli eu</w>\nurstruly mahesh</w>\nmer ton</w>\nde sai</w>\nshi f\nðŁĮ ±\npe dic\ngos ling</w>\narrang ing</w>\nww g</w>\ngen y</w>\nyou uu</w>\nnetfli x\ne ttes</w>\nk wi\nbernar dino</w>\nam iga</w>\nØ ¨</w>\nkashmir i</w>\nt ings</w>\nemer itus</w>\nde cat\nab domin\ndc i</w>\npha ses</w>\nd jan\nbe am\nop ry</w>\ni shed</w>\nthe ellenshow</w>\nthe st</w>\nhabit ats</w>\nto ons</w>\nmclau ghlin</w>\nri pper</w>\nmicro biology</w>\ntal aga</w>\nclu eless</w>\nss u</w>\ncro che\nbro mance</w>\nlonge vity</w>\nzagre b</w>\nprev ented</w>\ntra ve\nspo ilt</w>\ndarry l</w>\nmigra ine</w>\nal cat\ndd dd</w>\nvi v</w>\nser pent</w>\nmat tel</w>\njam a</w>\ncon quest</w>\nî Ħ\nsam sung\npresbyter ian</w>\nket ch</w>\nfire fox</w>\nmo tif</w>\nle c</w>\ncho pping</w>\ncher no\nj ann\nðŁĲ °\npro lon\nwake up</w>\nconver gence</w>\nmersey side</w>\nheart broken</w>\nlo oming</w>\nhal lucin\nmai ze</w>\ncommun ism</w>\nmo h</w>\ntwitter storians</w>\nserge y</w>\nres eller</w>\nfavor able</w>\ned gy</w>\nre iter\nmal aga</w>\nlive me</w>\nka hn</w>\npul sion</w>\nbig g</w>\nkim kardashian</w>\nati o</w>\ntyr anny</w>\nru ption</w>\nq ant\npro ven\nby z\npu shaw\nkri stin\ne er\ntar dis</w>\nri z</w>\nawak en</w>\nmi ko</w>\nun documented</w>\npath finder</w>\nindirec t</w>\nresemb les</w>\nh ler</w>\nconce aled</w>\nscand al\nre im\nd nb</w>\ncr itters</w>\nattend ant</w>\napprentice ships</w>\naa u</w>\nscre amed</w>\nl su\nfa h</w>\nhar bour\ned d</w>\nbat sman</w>\nli ss</w>\nmi sha</w>\nspani el</w>\nit f</w>\nadvan cement</w>\nfa c</w>\nclose up</w>\ncecil ia</w>\nmedi c</w>\nnarcis si\nlav ish</w>\ngi ac\nma ys</w>\nle it\nwine wednesday</w>\npushaw ard\nlet to</w>\ncurren ts</w>\nbug atti</w>\nout ine</w>\nw j</w>\nun do</w>\nler osis</w>\ndevo tional</w>\nðŁĳ «</w>\non na</w>\nfais al</w>\nsa una</w>\nhimach al</w>\nam ii\nà® ®</w>\ndi zzy</w>\nscreen writing</w>\nph x\nsp n\nick i</w>\nag irl</w>\nfi shes</w>\nwb z</w>\npi m</w>\nbo ar</w>\nac id\n! ..</w>\nrocke feller</w>\nn ga</w>\ndra stically</w>\nsimpli fy</w>\ndru mming</w>\nautum nal</w>\ngur mee\nlor de</w>\njo ann\ngive up</w>\nb our</w>\nam ura</w>\nder land</w>\nsim pler</w>\nwat son\ntri dent</w>\nconcor dia</w>\nbel lum</w>\nbre k\ndum plings</w>\nvi on</w>\ndungeonsand dragons</w>\nsp ri\nascen sion</w>\nwil datlantic\nu st\nrob ins</w>\nlegi on\ninsi st</w>\njar o</w>\ngue ss\nso b</w>\nbigh it</w>\npool side</w>\nnegoti ating</w>\nmc gill</w>\nbil d</w>\ntechn icians</w>\nmiti gation</w>\najay devgn</w>\nb to</w>\nant en\ncosmo politan</w>\nðŁĺĬðŁĺĬ ðŁĺĬðŁĺĬ\npatri oti\ntemp er</w>\npromen ade</w>\nnav ajo</w>\nnam m</w>\nwrink les</w>\ndc fc</w>\nle ach</w>\nbru nette</w>\nr f\ncout inho</w>\nal ti\ntradition ally</w>\nop tome\nna z</w>\naccord ingly</w>\nrec ard</w>\nde ets</w>\nsw ell\npo sure</w>\nwhit ening</w>\nstrang er\nilli on\nhere ford</w>\nu wu</w>\nro bber</w>\ncotsw olds</w>\ncl en\ngor ge\nnam aste</w>\nre lish</w>\ngri ff</w>\nadren aline</w>\nbla sio</w>\nval e\nê ²\ntoler ate</w>\nrail minindia</w>\njen sen\nho ven</w>\nel lu\nob sole\neisen hower</w>\nunidenti fied</w>\nthan niversary</w>\nbody guard</w>\nØ ¯</w>\ni dge</w>\nsch al\nstock port</w>\nsn i</w>\nre taining</w>\npo po</w>\npix ie</w>\noli thic</w>\nki er</w>\nha jj</w>\nsa z</w>\ncor bin</w>\n!!!! !!!!!!</w>\nv it</w>\nme gat\nde h</w>\ncircu it\naf fleck</w>\ntheore tical</w>\nhope less</w>\nu ab</w>\nslu mp</w>\nb ice\njam med</w>\nlet stalk</w>\ncan i\nside ways</w>\nlabyrin th</w>\nre fs</w>\nha hn</w>\njare d\nðŁį ¹</w>\njam bo\nph yl\nenhan cement</w>\nc tr\nful lest</w>\nse ye</w>\ndo ba</w>\ncho ic\nyo s</w>\ncb j</w>\nandr Ã©</w>\nre watch</w>\npri ma\ndoctr ine</w>\nfor gets</w>\nu hm</w>\nar ound\nu le</w>\nart lovers</w>\nshi raz</w>\nhar th</w>\nex tor\nÅ ¡\nunexpec tedly</w>\neli us</w>\ny x</w>\nem my\nse ac\nðŁĳĩðŁĳĩ ðŁĳĩ</w>\ncorrec ted</w>\ncom bu\nwom anc\ncou gh\nwhat son\npubli shes</w>\ndivers ity\nback bone</w>\nlock down</w>\nmesmeri zing</w>\nnor te</w>\nma b</w>\ndesig ner\ní ģ\nra gh\nmole cules</w>\nget outside</w>\nthe beatles</w>\nsemicon duc\nnach o</w>\nlun es</w>\nham mers</w>\nsul tan\no on\nfe ren\natt ach</w>\nar qu\nuttarak hand</w>\ns ash</w>\n; -\ntre ad</w>\ni ko\nar thur\nscandin avian</w>\nr ation</w>\nga el</w>\ncharge able</w>\nfish y</w>\nv ma</w>\nhand bags</w>\nchar a</w>\nay ne</w>\nde fam\nsett lers</w>\nqad ri</w>\npal ais</w>\nin wx</w>\napocaly ptic</w>\npoo ja</w>\na es</w>\nat ories</w>\nproof ing</w>\nn lp</w>\nts la</w>\nv ina</w>\nli do</w>\ndee phouse</w>\ninformat ics</w>\nv v</w>\npp ings</w>\ndi ss</w>\nÃ ¯\nuhur u</w>\nst ony</w>\nbetra yed</w>\nb aff\nmy ra</w>\nas pen\nallow ance</w>\ntam ara</w>\nci f</w>\ncor bett</w>\nser ge</w>\ndi go</w>\nambi gu\npain ters</w>\np cr</w>\np ca</w>\nnom s</w>\nlo ft\nve e\nopend ata</w>\nðŁĲ ±\nalex andre</w>\nidenti fies</w>\nfantasy football</w>\nre production</w>\nbrom ley</w>\nware agle</w>\nmm er\np ss\ncu es</w>\nay at</w>\nhut chinson</w>\nsar ac\njack man</w>\nira h</w>\nap ink</w>\ncol s</w>\naussi es</w>\nex ecs</w>\nday ton\nðŁĻ Ĩ</w>\nim v\nhar am\nchuck le</w>\nauthent icity</w>\nar do\nincub ator</w>\nà¸ ª</w>\nphoto shopped</w>\nembrac ed</w>\nfight for</w>\ngor man</w>\nzz zz\nschol astic</w>\ncri sps</w>\nte apo\nmid night\nga ine\ncol lier</w>\ns ate</w>\nde tte</w>\nå Ń\nimag ine\ni ff\ntw ili\ni fication</w>\nteat ro</w>\nnor ma</w>\nes ur\nemergen cies</w>\nrise up</w>\nr inger</w>\nhass le</w>\ncait lyn</w>\ntranqu il</w>\nvers a</w>\nse b\nover look</w>\ngin i</w>\nbo go</w>\nse re\nmay ne</w>\nhenri k</w>\ncontamin ated</w>\nrhapso dy</w>\npro portion</w>\nwildatlantic way</w>\nâģ© .</w>\norganis ers</w>\ntran e</w>\nstand ard\nsper m</w>\nlaun cher</w>\nric ci\nher ts</w>\npaper work</w>\nshowcas ed</w>\nmer yl</w>\npen a</w>\np imp\ndisa strous</w>\n^. ^</w>\nphar a\nx is</w>\nfron tal</w>\nsw irl</w>\nsp ills</w>\nswag ger</w>\nsmart watch</w>\nsizz ling</w>\nsavi our</w>\ncat ar\nbb cr</w>\nrefurbi shment</w>\ndr is</w>\ncitro en</w>\nabsor b</w>\npatrioti sm</w>\nil leg\nchro mo\nfresh ers</w>\nru s\nlim iting</w>\nef ish</w>\ndown ed</w>\nman dir</w>\nhazel nut</w>\np all\nmac on</w>\ndisappear ing</w>\nquali fies</w>\nbo on</w>\nbar racks</w>\nam ine</w>\ngen dere\nðŁļ ĺ</w>\nj es</w>\nãĥ Ń\nqu ito</w>\nmiddle weight</w>\nsch au\nquad ru\naci ones</w>\nlimit less</w>\nðŁĳĮ ðŁı½</w>\nch man</w>\nar av\nregulat ors</w>\nit up</w>\nbatter sea</w>\nmil ford</w>\ng z</w>\ntic king</w>\ngh ou\ncru shes</w>\ntu tu</w>\ndread ful</w>\nfam ine</w>\nfor change</w>\ndalail ama</w>\nðŁĴ į\nwhit aker</w>\nhash mi</w>\nh us</w>\nvo d</w>\nbet te</w>\naa ah</w>\niso o</w>\nðŁ¥ Ī</w>\nha ar</w>\nla ine</w>\nb v</w>\nall day</w>\nspr out</w>\nindie games</w>\nfree bie</w>\ngree ks</w>\nbut ler\nill in</w>\nha al</w>\nware ness</w>\nsi ma</w>\npublic health</w>\ngam a</w>\nwa a</w>\noun g\ngoo oo\nokin awa</w>\noff enders</w>\nim pose</w>\nho c</w>\nyoung ster</w>\nstory teller</w>\nsc ap\nfigh ter\n+ ,</w>\nwhit es\nmusic monday</w>\nre za</w>\ngo ducks</w>\nbri a</w>\nmi um</w>\ncas per</w>\ncru mbs</w>\na ad</w>\nmarti alarts</w>\nch p</w>\nri gged</w>\ntn g</w>\nharve sted</w>\nsa k</w>\ndo jo</w>\nmill wall</w>\nb nw</w>\noc d</w>\nhistor yof\nt mr</w>\nsi rens</w>\nfan ci\ncaregi vers</w>\nvir a</w>\nson i</w>\nrecur ring</w>\nacknowle dged</w>\nðŁı Ł\noph ile</w>\nbu cky</w>\nstre ssing</w>\nroo k</w>\ndi gger</w>\nvi val\nsan do\nfle et\nsi ers</w>\nsel caday</w>\nrefre shed</w>\nanti fa</w>\na que\npo lo\ndisappear ance</w>\nde mb\nâĮļ ï¸ı</w>\nren ted</w>\nber ger\ng mb\ncu la</w>\nss al</w>\ngoo dy</w>\nu hh</w>\nmarcel o</w>\nw anna\nsoft ware\nshop small</w>\nturt le\ntom as\nfri sco</w>\nðŁĺį ðŁĴķ</w>\njim enez</w>\nc su\nday z</w>\nan do\nwyn ne</w>\nchoreo grapher</w>\ncerv ical</w>\ntrail blazers</w>\ned g\nzend aya</w>\ntravel blog</w>\nel s\nwhole some</w>\nco g</w>\nlab out\nar ney</w>\ndel le</w>\nsu isse</w>\nma si\nine se</w>\nom be</w>\nfi ddle</w>\nre claim</w>\npa u</w>\nwat cher</w>\nsla in</w>\nber ty</w>\nopti mum</w>\nel ites</w>\nmin is</w>\ntur key\npatro ls</w>\nger ard\nau reli\nwild ly</w>\nwal tz</w>\nbr gy</w>\nw ob\ncre st\n+ ++</w>\nve z\nfro sted</w>\ndavi do</w>\nthe x\nparam edics</w>\np into</w>\nhan k\ndu pont</w>\nur g</w>\nfo stering</w>\nmicro poetry</w>\nspec tre</w>\n---- ></w>\nne uro</w>\nfri da</w>\nmusic al\ngalve ston</w>\ne ffic\nsc ape\npal azzo</w>\nth all</w>\npro visional</w>\np js</w>\nau re\nðŁĶ ľ</w>\nmam amoo</w>\nkit ties</w>\ncre e</w>\nwa k</w>\nlo ool</w>\nlu pus</w>\ncn blue</w>\nÃ º</w>\nðŁİ ¬\nrac ed</w>\ntro se</w>\nom as</w>\nstri de</w>\nco ors</w>\nâ¤ µï¸ı</w>\nin comparable</w>\ncy ril</w>\nbroad er</w>\narec lipse</w>\nðŁį Ķ</w>\ninter val</w>\nti ru\nco working</w>\nw aco</w>\na ham\na bee</w>\nflouri sh</w>\nthe times</w>\nol ini</w>\nkick boxing</w>\nlu cer\nat la\nas un\ncasser ole</w>\nmi aw</w>\nlobb ying</w>\njan ice</w>\ncir que</w>\nre flex</w>\nle ary</w>\nsanat omy</w>\ntem pest</w>\nse mb\nmur dering</w>\nus av\nro bo</w>\non et</w>\np cc</w>\nnati ves</w>\nlife of\nsa ha\nruth less</w>\nrel ates</w>\nappeti zer</w>\npye ongchang</w>\nnor d</w>\ner u\na thing</w>\nug ly\npl ying</w>\nbran ce\norgan ise</w>\nkend ra</w>\ndat o</w>\nchees es</w>\npar ma</w>\nburn out</w>\na stra</w>\npre toria</w>\nadjust ment</w>\nuk u</w>\nsl o</w>\nli ken\nfav ors</w>\ncli ve\nbe ets</w>\nsnow donia</w>\ngo tv</w>\nsy n</w>\nopen house</w>\npan i</w>\nportra yed</w>\nsl ated</w>\nme cca</w>\nren al</w>\nsupportsmall streamers</w>\nstaf fs</w>\nda o</w>\nbi ker\nvik tor</w>\ntit us</w>\nadmi red</w>\nðŁĵ ±\nhurric an\nhe ats</w>\ngl ory\nphoto genic</w>\nmer i</w>\nde por\nburn ham</w>\nor angu\ndj ing</w>\nimpre ssionism</w>\nign ition</w>\nca i</w>\nw ynn</w>\nde pe\ncove ted</w>\ncolla gen</w>\nsau s</w>\nor nam\nadministr ators</w>\nss on\nnh politics</w>\nhahahaha hahahaha\naspir ations</w>\nr gb</w>\nswol len</w>\nso we\nsc r</w>\ndiver gent</w>\nhou ghton</w>\nhan oi</w>\nd ory</w>\nni ki</w>\nland ry</w>\nb cci</w>\nðŁĳĮ ðŁĳĮ\nis mail</w>\ntri pod</w>\nher d\nbhat t</w>\ndress age</w>\ntab by</w>\ningu ish</w>\nhur on</w>\nà³ į</w>\nÃ ł\nto das</w>\nevangel ical</w>\nchor ds</w>\nst john\nslo ppy</w>\nmarty r\nface book\nali ght</w>\nsen sei</w>\nkath niel</w>\nr ites</w>\nzi one</w>\nu o</w>\nrevel ations</w>\nweight lifting</w>\npan o</w>\nnc wx</w>\nac ton\nà® ķ</w>\nØ ²\nsom a</w>\nà¸ Ĺ</w>\nrespec ting</w>\nmar che</w>\nfore man</w>\nbe tty\nki k</w>\nshi bu\npo on</w>\nargy le</w>\nk swx</w>\net z\nmar bella</w>\nbrac kets</w>\nstand by</w>\nfire side</w>\ndefi ance</w>\nv ex\nbritanni a</w>\nin habit\nappo int</w>\npiyu sh\nle ash</w>\nsci ento\nfla sk</w>\nsen na</w>\n> :</w>\nat roc\nsand erson</w>\nid lib</w>\ndhan ush</w>\nðŁĺ Ļ\nen thr\nhit ch</w>\nde dly</w>\nal ley\ndor k</w>\nmon do</w>\ncudd ly</w>\nmis sin</w>\nye sss</w>\nnight ing\nj pn</w>\nw ary</w>\nump ire</w>\nma z</w>\nê ³\nbab s</w>\nĭ ãģ\nstan ford\nposse ssed</w>\nexce eded</w>\nðŁĶ ¶</w>\nwall art</w>\ntra p\nj il\nhi bis\nsp ying</w>\nscri be</w>\nkhali l</w>\ntrans lator</w>\nlu mb\ndi zed</w>\nch c</w>\nsuper vision</w>\nshut ter\nja g</w>\n_ *</w>\nyester days</w>\nms f</w>\nhi hi</w>\ngonz aga</w>\ngille spie</w>\nvive k</w>\nec static</w>\nthis morning</w>\nch us</w>\ned es</w>\nston ed</w>\nbe es\nðŁĩ¹ ðŁĩ\ntur in</w>\nho ver\nat rics</w>\nster n\nsam heughan</w>\nauti sm\nmi ya</w>\neye witness</w>\nwrit ings</w>\ntravel tips</w>\nchut ney</w>\npx rtg</w>\nkeny ans</w>\nmy stic\nk rit\n/ $</w>\nred head</w>\nworld ly</w>\nam us</w>\nop la\nle ve\ngab bana</w>\nse en\no clock</w>\ngang a</w>\nkeen an</w>\nsc ent\nol dies</w>\ngo green</w>\ncorner stone</w>\ncomp ly</w>\ncon cours</w>\nðŁİ¶ ðŁİ¶</w>\nha an</w>\ncon fis\naw son</w>\ncle op\nî Ģ\nsu zu\nsau tÃ©\nal gar\nsubscri ber</w>\neste emed</w>\nãĤ¤ ãĥ\nworth while</w>\nmel rose</w>\nflo ck\nbri ghtly</w>\nviol inist</w>\np ere</w>\nsli pping</w>\nand co</w>\nsi gh\nha van</w>\ncu lo\nm sa</w>\nfibro sis</w>\nmatil da</w>\nra fting</w>\naw ard\në ª\nmm mm\nge aux\nste iner</w>\nsin n</w>\nhelp ers</w>\nbeet les</w>\nai mee</w>\ntai wan\npistachi o</w>\nmac beth</w>\nm zan\ndescend ants</w>\non sale</w>\nin r</w>\nil m</w>\ngrou se</w>\nsa ig\nmo w</w>\nbi gre\nadjust ments</w>\ntu la</w>\nmathe w</w>\ntransl ates</w>\nmu h\nbol lah</w>\nðŁĴĽ ðŁĴĻ</w>\namo res</w>\nab outs</w>\nbomb shell</w>\nbla ster</w>\nx avi\ns ns</w>\nk roger</w>\nga ther\nerad ic\ndaf t</w>\nchem o</w>\nben ches</w>\nðŁĩ© ðŁĩ\nut v</w>\nour a</w>\nn ko\ngator ade</w>\nbiaf ra</w>\nok state</w>\nim danielpadilla</w>\ndom ains</w>\nopen ingday</w>\nkid do</w>\ndo i</w>\nric e\nday care</w>\nmac millan\nba thurst</w>\ncheer leading</w>\nðŁ¦ ģ\ncash back</w>\nk won</w>\nhob bies</w>\nexem pl\nries ling</w>\nâļ ª</w>\nag les\nny s\nevery thing\nnav is</w>\nad di</w>\nmagne sium</w>\nfaceli ft</w>\nark ham</w>\ngrand es</w>\nextre mist</w>\ndon at\nvit ality</w>\npump kin\nbe tta</w>\nsl td</w>\narti san\nli by\npe aked</w>\nah hhhh</w>\nmary am</w>\nassi m</w>\nun sc</w>\nment e</w>\nal aya</w>\nlow ers</w>\nar as</w>\ngri ev\nle ip\ngr ati\ncri ses</w>\nspr ints</w>\nexe cute</w>\nw to</w>\nms d</w>\nmag ical\nre viewer</w>\nspark les</w>\njuke box</w>\nðŁĺĤ âĿ¤ï¸ı</w>\npay back</w>\nlicen ses</w>\ndun kin</w>\nbel t\nlake wood</w>\nh ateful</w>\nbud gets</w>\nrev amped</w>\nph erson</w>\nky iv</w>\nwent worth</w>\nro sen</w>\ncru ise\ngi ggle</w>\ndef star</w>\nassassin scre\nym outh</w>\nwin kle</w>\nw fc</w>\nband wagon</w>\nb kk</w>\nw iring</w>\nkear ney</w>\nsouth side</w>\npe tit\n! ðŁĺį</w>\nnor dic\nmir za</w>\nmu gabe</w>\nv l</w>\nscon es</w>\nk tv\nsand al\ndu c</w>\nm alls</w>\nðŁĴŀ ðŁĴŀ</w>\nit c</w>\nal ay</w>\nim pair\nun rest</w>\nflo ss</w>\nc Ã©\nab ou\nvar ying</w>\nmuse o</w>\nser ver\ndi ya</w>\nhibis cus</w>\nero y</w>\nmer ritt</w>\nfin dom</w>\nf pp</w>\nun usually</w>\ngo tt</w>\nconting ent</w>\nali aa</w>\nball on</w>\njo l</w>\nhi ked</w>\nzy me</w>\nay r</w>\nag n\nga z</w>\nperio dic</w>\nspar ty</w>\npracti sing</w>\nlin ton</w>\ntal is\ncy pri\nwomanin biz</w>\nradio disney</w>\nðŁĮ ¼\njump ers</w>\nendo cr\nðŁļ¨ ðŁļ¨\nand on</w>\nshar apo\nmi er</w>\nma sonic</w>\nfac tories</w>\nvi en\nbb ers</w>\nìĽ Ĳ</w>\nhol d\nke bab</w>\nbe ak</w>\napproach ed</w>\nac milan</w>\nmun ro</w>\nko sher</w>\nexcell ency</w>\nnegoti ation</w>\nwalt disneyworld</w>\ncr ouch</w>\nte asing</w>\nsuppre ssion</w>\nen ya</w>\nb ce</w>\ntransformation tuesday</w>\ncal lie</w>\nvis was\np gat\nic ted</w>\nend ings</w>\nesc u\nrecru ited</w>\nit fc</w>\ncollabor ations</w>\ng ino</w>\nsnu ck</w>\nausch witz</w>\ni fc</w>\nx ii</w>\nke sha</w>\nger vais</w>\nclo ak</w>\nx l\nsa ad</w>\nprob ation</w>\npre cau\nmac in\nanasta si\nle k</w>\ne azy</w>\ndaysof code</w>\nmariah carey</w>\nyo g</w>\nstit ched</w>\nboy friends</w>\nsh ar</w>\nph ile</w>\nag u</w>\ntwin kle</w>\nphi shing</w>\nweek ender</w>\nic ton</w>\ngurmee tramrahim</w>\nal ton</w>\nl eness</w>\nall an\npen ultimate</w>\nkry stal</w>\ngo u</w>\nlan de</w>\ndis mant\nab using</w>\nnor se</w>\npat erson</w>\ned mun\nap an</w>\nxi umin</w>\nsk el\ncat walk</w>\nre act\nwal led</w>\nt angle</w>\nbr yn\nve to</w>\nsuper moon</w>\ncas ablanc\nappreci ates</w>\nski d\nbo th\ncatal ina</w>\nele ague</w>\ncyber monday</w>\ncau tious</w>\nðŁ¤ ĵ\nnov o</w>\nhamp ton\nha ye\njose f</w>\nvar an\nlo bos</w>\nroano ke</w>\norph ans</w>\ntt in</w>\nsqu ads</w>\nishqba aaz</w>\nblack panther</w>\ne tu\nk sh</w>\ncru mble</w>\ncess na</w>\nreli eved</w>\nscul ly</w>\npollin ators</w>\nexplore canada</w>\nki es\nkam loops</w>\nkir an</w>\npri mal</w>\nsett lements</w>\nhot spot</w>\nbrain storming</w>\nce dric</w>\nbi ennial</w>\nsh ant\nâĻ¡âĻ¡ âĻ¡</w>\ndo on</w>\nhear n</w>\nwalk way</w>\nfe m</w>\nve al</w>\ndeport ation</w>\ntox ins</w>\nelimin ating</w>\ndescen ding</w>\nby the\nbla sphe\nha sta</w>\ncomple ment</w>\nas cent</w>\nri ga</w>\nprovo st</w>\nâĸ ª</w>\nwee ping</w>\nanti semitism</w>\nemploye e\nunearth ed</w>\npin o</w>\nnatali e\nbla d</w>\nang ola</w>\nlock heed</w>\nin ian</w>\nag r\nni ster</w>\nim pala</w>\nm ke</w>\nfan atic</w>\nâĺħ âĺħ</w>\nðŁĳ ¸</w>\nlu ch\nsimpli fied</w>\ngall ery\neconom ic\ncy borg</w>\ncon i</w>\nsel ma</w>\nin ception</w>\nko ala</w>\ndv ds</w>\ncre sted</w>\nm mor\nvisi ble\nn sd</w>\nðŁĻĮ ðŁı½\nw under\nrefriger ator</w>\nre opening</w>\ne era</w>\ncarou sel</w>\nas p</w>\nballi stic</w>\nvictor y\nmo tive</w>\ntre y\nsharapo va</w>\nsi i</w>\nmon ter\nint end</w>\nwest chester</w>\nsp e</w>\ncy mb\nvi dal</w>\nll ama</w>\nuni v\nfin er</w>\ncrafts manship</w>\njazz fest</w>\nb ch</w>\nag gio</w>\nn cc</w>\nlamb da</w>\ntranqu ility</w>\ncis co\nba den</w>\nso bbing</w>\nof i\ngo ta</w>\nru mored</w>\nwar med</w>\nore an</w>\nac ton</w>\nmar ci\ngh ani</w>\nâľ ĵ</w>\nas sorted</w>\npembro ke\npen elope</w>\nda f</w>\nat ty</w>\naim o</w>\npretz el</w>\ncarni val\nthan os</w>\nko chi</w>\nmer sal</w>\nham radio</w>\nar twit</w>\ncas c\nguer rilla</w>\nkush ner</w>\nk app\nal ise</w>\ntodd lers</w>\nsteward ship</w>\no tti</w>\nter ri</w>\ntem pe</w>\nrest less</w>\nvit o</w>\nzay ed</w>\nrsp b</w>\npi on\nhi ppo</w>\nhaw thorne</w>\nin as\nam ily</w>\nnut cracker</w>\nlo p\nd ali\ntro pic</w>\nðŁ¤ ł</w>\nul o</w>\njare dle\npy rene\npale o\nusa ir\nm ould</w>\nit ated</w>\ngene tically</w>\nbiom ass</w>\nðŁĩ³ðŁĩ ±</w>\ndo dd</w>\npractic ed</w>\nmonarch s</w>\nun manned</w>\nm buhari</w>\nam al</w>\nphoto gra\nko ol\nbren don</w>\nju ices</w>\ncu re\nworld bank</w>\npoin ters</w>\nðŁĴ Ŀ\ntur f\nle ds</w>\nbor ussia</w>\nbapti sm</w>\nwarwick shire</w>\nmoun ts</w>\ngay o</w>\nbe gg\nco pied</w>\nasi ans</w>\nk g\nmoder nist</w>\ngi d\nfront man</w>\nconcentr ated</w>\ny t\nsc avenger</w>\niron ically</w>\nadi c</w>\nps n</w>\nðŁ¥ ī</w>\ncultur ally</w>\nyu v\nmac arthur</w>\nfertili zer</w>\nbe withyou</w>\nri gor\nmin ors</w>\nz oning</w>\nâĸ ł</w>\nri r</w>\nadole scent</w>\nvin ny</w>\nren g</w>\nsand stone</w>\ngu et</w>\nwe sth\nple dged</w>\nlac ed</w>\nsp ide\nv ai</w>\nty coon</w>\nseiz ure</w>\ndu p\nappalach ian</w>\nro k</w>\ncathol ics</w>\nsey chel\nposse ss</w>\nla ger\njo di\ncham p\nstra s\nd ina</w>\ncent uri\ncal der</w>\nblur ay</w>\nðŁĩ¨ðŁĩ ³</w>\nmo do</w>\nan nette</w>\nyoutu bers</w>\nchap s</w>\nang ling</w>\nlabel ing</w>\na qui\npk wy</w>\nly le</w>\nbi sexual</w>\nlit ur\ndug out</w>\nli bby</w>\ngrey sanatomy</w>\nsub stances</w>\naugust us</w>\nrall ying</w>\nfi del</w>\ning ue</w>\näº º\nhallmark channel</w>\ntooth brush</w>\nm Ã¡\nadi rond\nag gi\nðŁĵį :</w>\ncru sade</w>\ntax ation</w>\nk z</w>\ni ver\ndou bling</w>\nroom ie</w>\nwa b</w>\nen rolled</w>\naz on</w>\na ju\ngrand children</w>\nas df\nðŁ¥ º</w>\nmat ic\nough ton</w>\nutili ze</w>\nðŁĴ £\npon der</w>\nrais in</w>\ndys function</w>\nco bain</w>\nbutter nut</w>\ne man</w>\nsu red</w>\ndri an</w>\nand friends</w>\nwith the\non omy</w>\nheine ken</w>\nbri dal\nleader ship\npyram ids</w>\ndeutsch land</w>\njo cel\nbo wel</w>\ny qr</w>\nhorse power</w>\nbe acon\ning eni\ngra dient</w>\nfer mented</w>\nmo om\nthing y</w>\npot assi\nwrist band</w>\nbor d</w>\nbo died</w>\nðŁĺŃ ðŁĺį</w>\nma pp</w>\nka u</w>\ncyber punk</w>\nph ish</w>\nloo king\nco ates</w>\nap ur\nam ie</w>\nuk labour</w>\nat in\ng la</w>\nadop table</w>\nshel by\nv illi\nri ya</w>\nm ingly</w>\ncli mber</w>\nbumble bee</w>\nðŁĺ ¸</w>\nc sd</w>\nâĿ ¥</w>\nhospit alized</w>\nc ki\nhat er</w>\nch r</w>\nre tina</w>\nit a\nfan base</w>\nbeat rice</w>\ngwy ne\ngo ss</w>\nfo s\nfavor ited</w>\nswachhb harat</w>\nmal ade</w>\nmon mouth</w>\n\" [</w>\nsi van</w>\nsh hh</w>\ncommand ing</w>\nsains burys</w>\nwee d\ng man</w>\nss w</w>\nrep tile</w>\niv y\ntro pics</w>\nroll ers</w>\nover cast</w>\nex position</w>\nmasquer ade</w>\nman crush\nwa ist\nspr inter</w>\nsle et</w>\nle vin</w>\nj pg</w>\n_ (</w>\no pel</w>\nexplo it</w>\nap a\npo we\nwrec king</w>\njong in</w>\nor b</w>\ner ick</w>\nbo sco</w>\npra ising</w>\nber tr\nto wing</w>\nin security</w>\nku t</w>\nresto cked</w>\nrr p</w>\nprescri bed</w>\ntrafal gar</w>\nper t\ng ases</w>\napp rais\ng har</w>\nmusic als</w>\nâĸ¬ âĸ¬\nmc fad\nag ony</w>\nconditi on\nequi p</w>\nshi k</w>\natra vel</w>\nðŁĩ¿ ðŁĩ¦</w>\nke h</w>\nabduc tion</w>\npe oria</w>\nwil kins</w>\ng ms</w>\nas d</w>\nev i</w>\nðŁĴĹ ðŁĴĹðŁĴĹ</w>\nu z</w>\nmo c</w>\nhalle lujah</w>\nguad alu\nlou vre</w>\ndra wing\ngo ve</w>\nph ant\nfri e\nweb dev</w>\nprogram mer</w>\nz able</w>\ngames com</w>\nclari fy</w>\nli th\nkin ky</w>\nâĿ £\nlabour doorstep</w>\nson ata</w>\nju ris\nmai den\nvi adu\nbuch arest</w>\nconditi oned</w>\ncapit alist</w>\nu de\nps b</w>\nsp ca</w>\nlul la\nfooth ills</w>\nkay o</w>\nbon d\nwom b</w>\nroun der</w>\nce sar\nbur sts</w>\nap ra\nsw oon</w>\nsab rin\nfra grant</w>\ncle arer</w>\nku brick</w>\ncli max</w>\njour no</w>\nag le\nðŁı½ âĢįâĻĢï¸ı</w>\npoo ch</w>\nhal e\nsol it\nsal mon\norganis ms</w>\nbron son</w>\nart en</w>\nhodg son</w>\nalo ve</w>\nvent ure\nbb i</w>\nae a</w>\nðŁĲ ¢</w>\nld n\nd nr</w>\no zone</w>\nel las</w>\nman ny\nazz ur\nun beat\ntru ffles</w>\nth ong</w>\nma Ã±\nlas ers</w>\nley e</w>\ngettys burg</w>\nback packs</w>\nor is</w>\nma ison\ncraw ling</w>\nla bra\ncl ing\ndra gging</w>\nste al\ndou bt\nde van\nck ers</w>\nagent sof\nphoto bomb</w>\nelon musk</w>\nabo y</w>\ndist ances</w>\nstory line</w>\nsp i</w>\nnor than\neurope ans</w>\nwh ale\nser pent\nðŁļ ²</w>\nfi or\ntr it\nox o</w>\nawar ding</w>\nclass mate</w>\nsu fc</w>\nsmar test</w>\nrich es</w>\npr k</w>\nbig foot</w>\nar mb\nbi polar</w>\ndw elling</w>\nom ars</w>\nk wan\ngri me</w>\nm eng\nfreder ick\nnavar ro</w>\nsorry notsorry</w>\njaredle to</w>\npa ve</w>\nsl ack\nbarn sley\natt ar</w>\nevic tion</w>\naccumul ation</w>\no ir</w>\ncat chy</w>\nwel ter\nvik as</w>\nhas see</w>\nnik ita</w>\nmo yes</w>\nmathe ws</w>\nshi v</w>\ngat wick</w>\npro filing</w>\ncompan ions</w>\nmar rake\nan tics</w>\nðŁĻĮðŁĻĮ ðŁĻĮ</w>\nse se</w>\nbo i\nbart lett</w>\npoison ous</w>\nab uses</w>\nym m</w>\nkam pala</w>\nguggen heim</w>\nimv kohli</w>\ndol om\nbre e</w>\nthro ttle</w>\ngare th\nfitz patrick</w>\nun ya</w>\npar ad\nmar got</w>\nj nr</w>\nwe a\npotassi um</w>\np nc</w>\ndisgu ised</w>\ncra sh\nren ergy</w>\nill ic\ncoup led</w>\nni els</w>\nci ones</w>\næĹ ¥</w>\nim ent</w>\ndespic able</w>\nd ye\nwhat cha</w>\nconne ctions</w>\nparalym pics</w>\ngaunt let</w>\nwait rose</w>\nsuici dal</w>\nstar ship</w>\nvap or\nst ou\nlaw maker</w>\ncoo led</w>\nsi mo</w>\nthen o\noffro ad</w>\nja den</w>\nbas que</w>\nvick y\nlu kaku</w>\ncentr o</w>\ntri sh</w>\nstrate gist</w>\nmedic ations</w>\nhor st</w>\nb fc</w>\ngra il</w>\nsharp ly</w>\nad itya</w>\ntom b\nkau fman</w>\ntri pad\nsam ba</w>\npastor al</w>\nbrit ney\nsag an</w>\nhill side</w>\nmas ons</w>\nsar a\nz one\nx u</w>\nto tes</w>\nrob bie\napp en\nmon tag\nder o\nshort film</w>\ncharis matic</w>\ntat ors</w>\nki ba\nand ri\nal arming</w>\nsplit ting</w>\nic ar\nth ug\nscari est</w>\nsylve ster</w>\nan an\nu trecht</w>\na difference</w>\nme ade</w>\nbu ster\nair strikes</w>\ncu ffs</w>\naccount ants</w>\nðŁĺ¡ ðŁĺ¡\nnew t</w>\nbo tt</w>\nissu ing</w>\ncl ancy</w>\nwwen etwork</w>\nkyu hyun</w>\nrese mble</w>\npajam as</w>\nsin k\nkin ney</w>\nsul ph\nor k</w>\nli es\nla gh\nor ton</w>\nra hul\nd sc</w>\nwe will\nre am\ncollo qui\nshar ia</w>\nhec tic</w>\nsar casm</w>\nland er\ntm z</w>\nendor f</w>\nro z</w>\nham mered</w>\nfri s\nw adi</w>\npope francis</w>\nhe it</w>\nflash light</w>\nun born</w>\nop es</w>\nhol iness</w>\nðŁĲ ¦</w>\nnach t</w>\nim sa</w>\ngr acing</w>\nbj p\nver ts</w>\nc sc</w>\nhome owner</w>\na que</w>\nbigo try</w>\nanni e\nbag h</w>\nâĿ¤ï¸ı ðŁĺį</w>\ncar i</w>\nthom p\ndispo sable</w>\ncardio logy</w>\npat ented</w>\nhh hhhh</w>\nld r</w>\nstephen son</w>\ncro res</w>\nfan ning</w>\ncli mat\nðŁĳį ðŁĳįðŁĳį</w>\nðŁĳį ðŁı¼\naer on\npiccad illy</w>\nbank rupt</w>\nsil via</w>\nemplo y\ndon ny\ncommen ting</w>\nscreen writer</w>\nio ta</w>\nce an</w>\nanc ers</w>\ntu an</w>\nstreet wear</w>\nà¤ ¯</w>\nsk ine</w>\nesp a\nasi f</w>\nos ce</w>\nshe ppard</w>\nmore cam\nbott le\nder s\norac le\ngoogle play</w>\naver aged</w>\nedmon ton\nsteph an</w>\nsister hood</w>\ncru sted</w>\nstag gering</w>\nmethodo logy</w>\ncongress woman</w>\nc abo\ntri ggers</w>\nmil ky\ngli de</w>\ntooth paste</w>\nroom mates</w>\nnu ff</w>\ngu am</w>\nsprink les</w>\nalternati ve\nwat fordfc</w>\nuof t</w>\nhal ey\ncont acted</w>\nbun dy</w>\npro stitu\ngh ar\npre ston\non site</w>\nhil ar\ng ts</w>\nc att\nhamp stead</w>\n? ?!</w>\nðŁĩ§ ðŁĩ\nbbc qt</w>\naless andro</w>\nresi st\nma idan</w>\nt ko</w>\nshad ing</w>\npin up</w>\ngal lo\nsin u\nat ec\nfun k\nac lu</w>\nstri des</w>\nrhy me</w>\nwet land</w>\nbbc springwatch</w>\nt ins</w>\nwild card</w>\nst our\nflamen co</w>\npau la\nonto logy</w>\ngang sta</w>\nam ade\nãĤ «\nt bs</w>\nskelet al</w>\nrun ner\njard in</w>\nharri er</w>\nhun ted</w>\nz hen\nbelievein film</w>\nde mean\nau diti\nre start</w>\nchon dri\nâĿ¤ï¸ı ðŁĴĻ</w>\nmcla ren\nga b</w>\nsh um\nau sa</w>\nlewi sham\ny pg</w>\nk jv</w>\nfur nished</w>\ndor o</w>\nbon ded</w>\nmor ty</w>\nlat itude</w>\n_ )</w>\nlo va</w>\nwater ways</w>\nvin ai\nshor th\ndrun k\nc ay</w>\nay ana</w>\nkap lan</w>\ncapp uccino</w>\nspr o</w>\nlife boat</w>\nhas bro</w>\nspol ice</w>\ntor on\ndo ing\ndam n\nsh ree</w>\nfoun tains</w>\nent ation</w>\nmar u\nboar der</w>\nto pless</w>\nj ada</w>\nchan ning</w>\nul ls</w>\nen closure</w>\ngib son\nfractu red</w>\nbrit ton</w>\nÃ ¶</w>\nt ous</w>\npor th\ndra f\ntra iling</w>\nmar gate</w>\neli fe\ndown ward</w>\nlin n</w>\ngla des</w>\ngirl power</w>\nak rish\nu ki\nron da</w>\nts c</w>\nappreci ationday</w>\nvis ing</w>\nlo om\nðŁį ³</w>\nmex ican\nar gos</w>\ny ya</w>\njad ine</w>\nsouth port</w>\nd end\nsi sta</w>\nrede em</w>\nmen g</w>\nbra xton</w>\nantioxid ant</w>\ns key</w>\nmp g</w>\nfin ding\nvibr ation</w>\nce u</w>\nkh art</w>\ndi mini\ncl ine</w>\nshel ly</w>\nhin es</w>\nī ï¸ı</w>\nto pical</w>\nno ver</w>\nma xx</w>\nprim itive</w>\nillustr ate</w>\nb ounds</w>\ntren ton</w>\njoin tly</w>\nbreed ers</w>\nu chi\nwakeup america</w>\nb ada</w>\nðŁĹ £ï¸ı</w>\ngu acam\nsp heres</w>\npere gr\nyouth ful</w>\nlo lo</w>\nbir min\nt ly\njeremy corbyn</w>\ndefe cts</w>\nco sm\na rent</w>\nv aa</w>\nbag els</w>\nmedi ac\ncori ander</w>\nic ago</w>\ng haz\nab bas\nre model</w>\nstruc turing</w>\npu m\nout law\nad ani</w>\nr bc</w>\ngul ls</w>\nn li</w>\nconfu se</w>\nðŁĳĩ ðŁı¼</w>\nvil a</w>\nmcnam ara</w>\ncorrec tions</w>\nmug hal</w>\nser i</w>\nre gain</w>\nss b</w>\nlea ve\nhaha hah\ngran de\ndi stressed</w>\nre chargeable</w>\nho a</w>\nhou sed</w>\nsti l</w>\nattribu ted</w>\nopath ic</w>\ndi ps</w>\npri t</w>\nhead phone</w>\nconclu de</w>\npil o\nhe t\nut sa</w>\nnit in</w>\nje m</w>\nsni ppet</w>\ntutor ing</w>\nop er</w>\nsun k</w>\nen sla\ncha u</w>\nac orn</w>\nquinte ss\nran kin</w>\naffili ated</w>\nour lives</w>\ncl int\nse ater</w>\nisa ac\nba shing</w>\nsme ar</w>\nnur se\ndoo dling</w>\n\" ;</w>\nsa ku\natroc ities</w>\nim am\ng fs</w>\nviol ating</w>\ncomm end\nbrad shaw</w>\ner ville</w>\nb illed</w>\nb be</w>\nthul hu</w>\ni phones</w>\nmoo se\ndi os</w>\nre w</w>\nme thane</w>\nstrang ely</w>\nwhis ky\nti ghtly</w>\nspiel berg</w>\nradi us</w>\nnotic ing</w>\nwi f</w>\nig nati\ni fa</w>\nap is</w>\nw ali\nha itian</w>\nbu shes</w>\ny z\nv l\nex ited</w>\nasse l</w>\ntru ec\ndom en\nash er</w>\nin king</w>\nnewyear seve</w>\nhend ricks</w>\nbat i</w>\nìĿ´ ì\nrich ter</w>\nmon santo</w>\ncon line</w>\nagre at\nðŁ¤ ¯</w>\nmaster pieces</w>\nar n</w>\nrough s</w>\ncle ve\nse v</w>\nfashi ons</w>\nto ya</w>\nsh ail\ncop eland</w>\naqu ari\ndec als</w>\nare you\ny aya</w>\na str\nfon t\nml m</w>\nar ca</w>\npp or\npol lock</w>\nxper ia</w>\nconserv ation\nchain saw</w>\nag gie</w>\n?! ?!?</w>\nsi le\nsh on</w>\nìĹ Ĳ\nnote books</w>\nmarque tte</w>\nde us</w>\nbb led</w>\nspic er</w>\nmc cabe</w>\nnor wich\nmodi fication</w>\nboo sted</w>\nstru m</w>\nsales man</w>\nbang le</w>\nnis san\nhez bollah</w>\nbrea sts</w>\na af\nanth us</w>\nsk er\now ed</w>\nher os</w>\ngi fs</w>\nfo sters</w>\neat ers</w>\ndu es</w>\n_ /\nlymph oma</w>\nsf am</w>\nme gal\nafri di</w>\nag ic</w>\np amp\njeal ousy</w>\nðŁĳĮ ðŁı¼\ncalcul ate</w>\nnapp ing</w>\ng ale\nðŁ¦ Ħ</w>\nlub bock</w>\nassu med</w>\nren ting</w>\níĥ ľ\nsubur b</w>\nãĤ ·\ntech nic</w>\nu cla\nin front</w>\ngar net</w>\nster oids</w>\nstri ving</w>\nho war\nmo ver</w>\nle ton\nbull do\nis in</w>\nci ao</w>\nsn z</w>\nfore front</w>\nd ams</w>\nmid wife</w>\nma wards</w>\ncla pton</w>\nwe in</w>\nsubsi dies</w>\nspr oud</w>\nrother ham</w>\nphan tom\nar ach\nspi el</w>\nrac ket</w>\nsel amat</w>\nno on\nl bc</w>\nenti ally</w>\nðŁĴ ¸\nsil ve\nm oud</w>\nkine tic</w>\ny asi\nðŁİ ©</w>\no ol\nmi ku</w>\ni za</w>\nfer a</w>\nflo ren\nbarber shop</w>\ngroo t</w>\nz est</w>\nne ars</w>\nstan is\nz and\npolice man</w>\njuris dic\nform ations</w>\nappar atus</w>\nsp d\narti fact</w>\nto sc\nmotiv ating</w>\nwomanc rush\nre dro\ndiagno stics</w>\nra za</w>\nout fitters</w>\nel xn</w>\ndod gy</w>\nry n</w>\nsh d</w>\northo don\nol de</w>\njay anti</w>\nbal ances</w>\nquic kest</w>\ncan ton\nfriday reads</w>\n! *</w>\nna a</w>\na ak\nðŁĶ ·</w>\nbehavi ors</w>\nrasp berries</w>\nä »\npolit ical\ncam il\nå ľ\ndi k</w>\nast ounding</w>\nlie be</w>\nnovel ty</w>\ntur moil</w>\nsul ly</w>\nspring break</w>\nhon ouring</w>\ncc g</w>\nðŁı Ĵ</w>\nmy little\nky c</w>\npro ms</w>\nðŁķ Ĭ</w>\nÃ ¨</w>\nbi ge\nav ril</w>\nðŁĩµðŁĩ °</w>\nmari on\nas ants</w>\nsur ya</w>\noc tag\nluf than\nac ron\nfayette ville</w>\nti que</w>\nlove s\nen ca</w>\nde kalb</w>\nta ver\nde vote\naux iliary</w>\njoh annes</w>\ntread mill</w>\nay an\nqu r</w>\ndonald son</w>\ncher yl\n\" ....</w>\ns ven\nkir sty</w>\ngun ners</w>\nra dish</w>\no ahu</w>\nv sky</w>\ni ble</w>\ncon course</w>\nb ps</w>\nelo qu\nash ford</w>\nte bow</w>\nroblo x</w>\nma da</w>\ndri ving\nth day</w>\nspro ject</w>\nm ms</w>\nband ed</w>\n. !!</w>\nlibr arians</w>\nflan nel</w>\nintoler ance</w>\nher al\nç µ\nneme sis</w>\nlist a</w>\ntar ak</w>\ncry pt</w>\nstar plus</w>\nvish nu</w>\nsc ale\ncr is</w>\n% ),</w>\nj illian</w>\nregg ae\npegas us</w>\nol in\nip ment</w>\nman ic</w>\nl fc\ngodd ard</w>\nite am</w>\nparl our</w>\nanch ors</w>\nlee minho</w>\ntalla hassee</w>\nant it\nd ho\nkid ney\ny ash</w>\nbatt led</w>\naz ad</w>\ngar is</w>\nfaul kner</w>\nsni ff</w>\npapar azzi</w>\ned m\nphy llis</w>\ncon tested</w>\naa ay</w>\nse ca</w>\nk ton</w>\nvel ve\nrain ier</w>\nfor um\ntam pab\nho sp</w>\ntrac tors</w>\nox fordshire</w>\nno tion</w>\nguang zhou</w>\nðŁĺ ¯</w>\nref ill</w>\nwednesday motivation</w>\nsli der</w>\nmukher jee</w>\npr att\nfon taine</w>\nalph on\naf ar</w>\nts i</w>\npest icides</w>\nfi ends</w>\nmo cking</w>\nbra w\ntran sat\ndo ses</w>\nco res</w>\nhom ophobia</w>\ndocu menting</w>\nzlat an</w>\ncon doms</w>\ns Ã©\nsun set\nkun st</w>\nton ga</w>\nà¸ ª\nv ation</w>\nsp ray\nchow der</w>\nra ps</w>\npalla dium</w>\nnor wood</w>\nmusic history</w>\nhoo ker</w>\nsi si</w>\nosp rey</w>\nph ys</w>\nconce ded</w>\nbob cat</w>\nar mad\nze it\nÙ Ħ</w>\nðŁĺģ ðŁĺģ\nmer idi\nðŁĩ· ðŁĩº</w>\ncorn wall\n! ),</w>\ntouch downs</w>\nze it</w>\nchal et</w>\nmm m\nal che\ngor illa\nfo ss</w>\nati ku</w>\nlumin ous</w>\nivan ka</w>\nbe ek</w>\nsta res</w>\nsw iss\nâĿ¤âĿ¤ âĿ¤âĿ¤\nscru bs</w>\nme ath</w>\ngusta v</w>\njo gging</w>\nconfe tti</w>\nas os</w>\ners fc</w>\nbreit bart</w>\napplic able</w>\nautho red</w>\nya ho\nh in</w>\ndisplac ement</w>\nj v\nðŁĮ¹ ðŁĮ¹\not c</w>\nnon profits</w>\ndiec ast</w>\ngu sto</w>\ninte stin\nc ages</w>\nme en\nlu kas</w>\nmoon ey</w>\nðŁĺ ·\nvery day</w>\ntor ah</w>\nis sion</w>\nwa c</w>\nlever aging</w>\nish able</w>\ncu se</w>\nle wood</w>\nmay an</w>\nturn table</w>\nju ice\ntru sty</w>\ntu p\neti quette</w>\nsupervis ors</w>\nstu n</w>\ngu zman</w>\nconfe ren\nric o\nfe ast\nback ward</w>\npol aris</w>\nmic he\njo g\nh ing\nfield house</w>\nvel ing</w>\nsho cker</w>\nesc ence</w>\nà¤ ¾\nvi be\nanasta sia</w>\nmar ched</w>\nkill ing\nĶ ë\nfe tt</w>\nexop lan\n... (</w>\nsnow day</w>\nlo h</w>\nir ani</w>\nla khs</w>\ndel a</w>\npo caly\nboom ers</w>\ndictat orship</w>\nac er\ntur keys</w>\nquarter final</w>\nmuskete ers</w>\nðŁĴĽ ðŁĴļ\nsf x</w>\nmuseum week</w>\nsc ala</w>\nri sis</w>\n( ðŁĵ·</w>\nãĢ Ĥ</w>\nz ies</w>\nbo eh\nhu es</w>\nlu sci\ndol a</w>\nimpeach trump</w>\nroo d</w>\ndon caster\ntor re</w>\nhero es\nfo yer</w>\ntar i</w>\nblur red</w>\nke w\nfrank ly</w>\ndro id</w>\nap al\nÐ ¼\ny af\nbre t\npar agu\ncac ao</w>\nðŁĻĮ ðŁı¾\nru e\nhead aches</w>\nshaw ty</w>\nchar ley</w>\npal er\ngo wns</w>\ncorrec tional</w>\nðŁĺ© ðŁĺ©</w>\nbreaking bad</w>\nol ing</w>\nda p</w>\nendeav our</w>\ncit adel</w>\ntra d</w>\nincumb ent</w>\nmedit ate</w>\nfoo ted</w>\nðŁĴ µ</w>\nshab bat</w>\ndayof the\nwil lem</w>\ngal way\nto red</w>\nmarri age\nf illion</w>\nsleeve less</w>\naud itor</w>\njin young</w>\ninvin cible</w>\nkad una</w>\na and\nvolcan oes</w>\nmon eti\nindie gogo</w>\nbuccane ers</w>\nðŁĳī ðŁı½</w>\nãĢ Ĥ\nlay ton</w>\ncuck oo</w>\nhu mber</w>\nbuzz er</w>\nÏ ī</w>\nto re\nstra ins</w>\nsto m</w>\npa ine</w>\ns we</w>\ndu ff\nz ou\nsi mi</w>\nli pp\nur n</w>\nse agu\nðŁĶ ®</w>\nsun dae</w>\nhi c</w>\nðŁĺ ¨</w>\nbull pen</w>\nu per\nflyo ver</w>\nal dridge</w>\nglo bes</w>\nali es</w>\nken zie</w>\nge es</w>\ny cle</w>\nsp lin\nmag enta</w>\nj ha</w>\nbal u\ngh orn</w>\nti pper\nwick er</w>\ntaste of\ncon clave</w>\nch ale</w>\ninv asi\ncat er</w>\ndio xide</w>\nme gab\nwin n</w>\nat p\ntransform ative</w>\nnest led</w>\nhi g\nbri dging</w>\nlil ies</w>\nchee red</w>\nbad dest</w>\nsc rolls</w>\nreal is</w>\ndipl o</w>\nðŁĶ «\nconce ssion</w>\nprefe rences</w>\nexplo des</w>\ner gon\nintroduc tory</w>\nine au</w>\nch af\nsom es</w>\nland rover</w>\nspir ation</w>\nsex y</w>\nsco recard</w>\nillustr ates</w>\nsoul mate</w>\nwi en</w>\ninter disciplinary</w>\nfore casting</w>\nent ities</w>\nglu ed</w>\nen lar\ncur t</w>\npercep tions</w>\nboot leg</w>\nmi re\nasho k</w>\nv az\nhor ne</w>\ncal le</w>\nac ulture</w>\nther oy\nnight time</w>\noc al</w>\ncharacter design</w>\nar mist\nðŁĺı ðŁĺı</w>\nyah oo\nac eae</w>\nto se</w>\neven to</w>\nsou t\nnay anth\nwh om\nv are\nri gging</w>\ngen us</w>\nhi ve\ncom mands</w>\nsti e\nday a</w>\nethan ol</w>\nen f\nhi fi</w>\nflu ence</w>\ncle mson\nre invent</w>\nthermom eter</w>\nhumor ous</w>\nemer ging\naci Ã³n</w>\nðŁĺĺ ðŁĺį</w>\ns ity\nhaw ke</w>\naccompan ying</w>\nt ility</w>\nðŁĺ ª\nre cess</w>\nprotag onist</w>\nl ery</w>\ndun dal\nint l\nbritt any\nq bs</w>\noff the\nmarri ages</w>\nhow to\nviol ated</w>\nadel aide\nwit t\nlanc er</w>\npak v\nhu me</w>\nst ade</w>\nbra gging</w>\nou tright</w>\nad c</w>\nsuper st\nreal time</w>\ncu res</w>\ngarden ers</w>\nero ck</w>\ndale jr</w>\nver o</w>\nbar tol\nmo ti\nmc fly</w>\nv pn</w>\nst ink</w>\nover rated</w>\nguer ra</w>\ne tis\nath ome</w>\ntwd family</w>\nth ab\ntn x</w>\nrafa el\nfamily travel</w>\nx ley</w>\nsat anic</w>\nequ ations</w>\nru dy\nwal dorf</w>\nstan i</w>\ntu be\nmeas les</w>\nzimmer man</w>\nobli gations</w>\ni ously</w>\nbow ser</w>\ntrans former</w>\nsho ppe</w>\nshak en</w>\ngh ouse</w>\nto d\nke tball</w>\nshare holder</w>\nmar ca</w>\nkp mg</w>\nak an</w>\ngiven chy</w>\ncoast al\nau th</w>\nroller coaster</w>\nmar ches</w>\ncoordin ate</w>\ncine ma\napprentic es</w>\npar lor</w>\nmit o\nmen on</w>\nconsider able</w>\nbar re</w>\nglo ss\nenh ances</w>\njaz eera</w>\nfal mouth</w>\nthra sh</w>\nstat en</w>\nk zn</w>\neng el\nsamanth ap\nflo ppy</w>\nsal om\nðŁıĨ ðŁıĨ</w>\nw ack</w>\ndeliber ate</w>\nosc ill\nherit ag\ndu sted</w>\norni thology</w>\npad dle\nfer ns</w>\nbar un\ncl ans</w>\nanticip ate</w>\na ay\nmat ically</w>\né ĩ\ntu mble</w>\npost man</w>\nunic ef\ntro tter</w>\nop d</w>\nleaf let</w>\nge ist</w>\ncease fire</w>\nscre ws</w>\ncre ation\nwal nuts</w>\nlongh orns</w>\nunder statement</w>\nab b</w>\nproxim ity</w>\nna x\nun ity\nturn pike</w>\norda ined</w>\ndub step</w>\nchak ra\nme ch</w>\nlove her</w>\nlook alike</w>\ndonne in\nvir on\nÙ Ī</w>\nbang ers</w>\nvari ants</w>\nout dated</w>\nin ta</w>\ncri sto</w>\nsp elt</w>\nfood and\nf on</w>\nstefan i</w>\nmargin al</w>\nhu tton</w>\nti ara</w>\ntel ford</w>\nqu en</w>\nfair grounds</w>\nque tta</w>\nmikha il</w>\nheal er</w>\nv ball</w>\nty re\nunder grad</w>\ngl end\nhom ers</w>\nscri bed</w>\nmain tains</w>\npo che\nmis sal</w>\nmar ko</w>\nu as</w>\nÃ¡ n\nsh p</w>\ncon vey</w>\npad re</w>\nsab a</w>\npu glia</w>\nmadhu ri\npa xton</w>\nchap lain</w>\nn ago\nca si\n... !!!</w>\nfli rt</w>\nsal eh</w>\nk are</w>\ndi re\nstam ped</w>\nextre me\nðŁĺĥ ðŁĺĥ</w>\nho ppy</w>\nguadalu pe</w>\nadvant aged</w>\neu char\np low</w>\nun n</w>\nmac qu\nport land\ncla sh\npe s\nlou bout\ny p\nkeep ing\narca dia</w>\nfran kie\nfi u</w>\nde th</w>\nencyclo pedia</w>\nsi ze\ninve sts</w>\nðŁį ©</w>\ngeo logical</w>\nfran Ã§\ncon front</w>\nðŁĺ ¥\nd ys</w>\naf m</w>\ntex an</w>\ngraph ene</w>\nrepost app</w>\nac f</w>\nur sula</w>\ngaz a\ndd led</w>\nfu m</w>\nwsb tv</w>\nm be\nfron tiers</w>\nchrono graph</w>\nke s\ninter faith</w>\ntab oo</w>\nspar ta</w>\nwon do</w>\nflori st</w>\nem braces</w>\nca w\nno el\narch ers</w>\nðŁĲ ·</w>\nroman o</w>\nban an\nsh akers</w>\nmelo dies</w>\ngeo thermal</w>\nse phora</w>\nìļ °\nÐ¾Ð ´\npro c\nhand shake</w>\npan de\npopul ated</w>\nslow down</w>\nhor tons</w>\nregistr ations</w>\nun deni\nlan ts</w>\npas sover</w>\nthak ur</w>\nli ef</w>\nadhe sive</w>\npe tal\nmicro scopy</w>\nmemph is\nconfir ming</w>\nair drop</w>\nmesm er\nperce ived</w>\nming le</w>\nlifel ine</w>\ngh j\nworcester shire</w>\npas sions</w>\nach er\nel lar</w>\nah o</w>\nfiren ze</w>\nbar ang\nletter man</w>\nhat field</w>\nlu cha</w>\nje ter</w>\ne shop\nwilliam s\nhoro scope</w>\npre de\neast bourne</w>\ndur ga</w>\ndi version</w>\nal trin\nseis mic</w>\npremi osm\nnar co\nti r</w>\nori g</w>\nor m</w>\nland fall</w>\nci ous</w>\nlin do</w>\nmax ine</w>\nx ico</w>\ntra y\nos wald</w>\nc ba</w>\nric otta</w>\nn cr</w>\nmar au\nà¸ ²</w>\ngladi ator</w>\nch ery</w>\nlun g\nu me\npo psic\nlon ging</w>\ncan als</w>\nta ya</w>\ndecentr alized</w>\nsho pp\npres sures</w>\nmahar aj</w>\neti had</w>\nwal greens</w>\nsucce ssion</w>\nsign aling</w>\nli g</w>\nstaf fer</w>\nnorth korea</w>\ndef ying</w>\nas ma</w>\nde g</w>\nperi meter</w>\noak ville</w>\nm sk\nbalti more\nrece ip\nde ple\nðŁĺŃ ðŁĺĤ</w>\njambo ree</w>\n> .<</w>\nrsp b\npuni sher</w>\nconsider ably</w>\nin tothe\npari sian</w>\nacceler ated</w>\npolye ster</w>\nlow es</w>\nfr ying</w>\nsautÃ© ed</w>\nmou ths</w>\nseychel les</w>\nra x</w>\ngo dis\ndak ota\nhouse wives</w>\nthe me\nmat inee</w>\nblack bird</w>\nye sung</w>\npre fers</w>\npelle gr\nin ated</w>\ntrun ks</w>\nstronger together</w>\nre pet\nre pairing</w>\nped als</w>\ntoler ant</w>\nher r</w>\ndun ne</w>\nindic ation</w>\ndecat ur</w>\nb tv</w>\nexhibit ors</w>\nik on\nfriday motivation</w>\nbra gg</w>\nlive tweet</w>\nal ves</w>\nwomens art</w>\nforeig ners</w>\nwal lets</w>\nmin dy</w>\nlan ey</w>\nbb in</w>\ntv miaw</w>\nlif ter</w>\ntar get\ntam e\ndr ou\nastro photography</w>\nmp c</w>\ng pu</w>\nnord strom</w>\nfric tion</w>\nrun off</w>\nlov able</w>\nsp nfamily</w>\next ingui\nbloo dy\nsch el</w>\narti stry</w>\nsw ish</w>\nscar ce</w>\nph ils</w>\nmax im</w>\npos sum</w>\ncom promised</w>\nsty li\nsc fc</w>\nis sa\nbirmin gham\nsket ched</w>\nangel ica</w>\nordin ance</w>\nje ts\nconqu er\nðŁĺ Ĳ\nonline shopping</w>\ns ori\nreason ably</w>\nnue stro</w>\nar turo</w>\nch l</w>\nbenef ici\nspho to</w>\nwel t</w>\nni kk\nðŁ¤ ŀ</w>\ndan ao</w>\nfor mid\nas se</w>\naf irst</w>\nâľ Ĥ\ngil lette</w>\nas sor\nan onym\nsel ca</w>\nfe mi</w>\nbear able</w>\ny and\nar mory</w>\ncre pe</w>\nceltic fc</w>\nbra vo\nin expensive</w>\nde lec\nge cko</w>\nnew market</w>\nsnow flakes</w>\nkab ir</w>\ncon tra</w>\ncan ning</w>\nmor pho\ngar wal</w>\nðŁĴĥ ðŁı»</w>\nfight ing\nmu tation</w>\nwoo dy\nju gg\ngr aces</w>\npremiosm tvmiaw</w>\nkenne dy\ngu p\nsa e\nop ha\noff spring</w>\nfini sher</w>\nbet ts</w>\nspan ning</w>\nmar j\nh one</w>\nsh ing\ncontin ents</w>\nsamanthap rabhu</w>\nun related</w>\nl acy</w>\nexplo sions</w>\nbenjam in\nsophi e\nno ting</w>\nmicro soft\nas sen</w>\na hoy</w>\ni ker</w>\nho fer</w>\nmo e\nah madi\nyan n</w>\nan ak</w>\nma hi</w>\nbe u\naha h</w>\ncreep er</w>\nbaahu bali</w>\nam at\npri ory</w>\nhaw keye</w>\ndeloit te</w>\nsko da</w>\nprint making</w>\nassemb ling</w>\nmirac ulous</w>\nno ch</w>\nsw o\nleg a</w>\noper ates</w>\nborder lands</w>\neli e\nstron gh\nrep tiles</w>\npir ate\nun fold</w>\nÂ ¯\nqual comm</w>\nun predictable</w>\not r</w>\nrose wood</w>\ndirec tional</w>\ncounsel ors</w>\ncorn ell\nliber ated</w>\nj ad</w>\nir regular</w>\nbulgar ian</w>\nhigh ness</w>\nvodaf one</w>\nsw ild</w>\nmini mize</w>\ngra zie</w>\nà¹ ĩ</w>\nr stats</w>\nstre ep</w>\nome tric</w>\nhumb le\nlu mp</w>\nl ille</w>\nb Ã¼\nhome depot</w>\ntripad visor</w>\nki wan\na via</w>\ner z</w>\nex ico</w>\ndu f\nblu men\nmi zing</w>\nar ma</w>\nin im\ncon stan\nsor a</w>\nju al</w>\nau n</w>\ntw ell\ntren ches</w>\nher a</w>\nr k\npo plar</w>\nrecipe oftheday</w>\nll an</w>\nbhu ban\nshort ages</w>\ning don</w>\nbridge water</w>\nðŁĲ ĺ</w>\nfortn ite\ncam den\nun cture</w>\npro w\ncolon ies</w>\nt ks</w>\nn go\nb hm</w>\nlive pd\nspl ace</w>\nsli ke\nhappye aster</w>\nter rence</w>\nrevol ver</w>\nj ed</w>\nyy yy\noffice of\nm ts</w>\nexist ential</w>\nr ourke</w>\nexplore bc</w>\nsse d\npri est\nvix en</w>\nsi ding</w>\nk pa</w>\na har</w>\nju ic\nob struc\nforen sics</w>\nuk mfg</w>\ncancell ation</w>\nwe ary</w>\nab q</w>\nele c</w>\npri zed</w>\ndeb ts</w>\nme zz\nsalv atore</w>\nm dc\ngre tte</w>\nc gc</w>\nth on\nsnow storm</w>\nts ch</w>\ncook ery</w>\nå ¹\nwa xing</w>\nn acional</w>\nmur s</w>\nra ve\ncap es</w>\nger main</w>\ndri pping</w>\nsub mitting</w>\nome lette</w>\niter ation</w>\naj es</w>\nshim mer</w>\nfu eling</w>\nðŁĩ§ ðŁĩª</w>\nli po\nbo bble</w>\nun follow</w>\nislam ist</w>\nhi ber\ncat s\nagentsof shield</w>\nsen si\n____ _</w>\nster ia</w>\ninst al\nausp icious</w>\nhar row</w>\nover land</w>\nfemini sts</w>\ninst ant\nchar iot</w>\nblind ness</w>\nsp ed</w>\nsc arec\nnu it</w>\nmini atures</w>\nho seok</w>\nglo ck</w>\nfifa worldcup</w>\ne te\ndis m</w>\nwe iner</w>\nex foli\near ts</w>\nà¸ Ķ</w>\nmy art</w>\nman il\niss ant</w>\nform a</w>\nin cu\nbuffal ob\nin tim\nmc cul\nanj ali</w>\npo po\nun doub\nhil a</w>\nfun gal</w>\nthank ful\nfu tur\nen dish</w>\nren ds</w>\nth ar</w>\nshe ff\nring o</w>\nnichol ls</w>\nio wa\npo tom\ncl ams</w>\nãģ Ħ</w>\nacon f</w>\nstadi ums</w>\ndi mp\ndi k\nresiden ces</w>\ndo v</w>\ncaric ature</w>\nseagu ll</w>\nkl m</w>\nconfe ss</w>\nsla pped</w>\ncele b\nturb ines</w>\npp v</w>\nnur ture</w>\nel ab</w>\n.... .#</w>\ntu ff</w>\nde press\nal far\namii bo</w>\ndi spon\ne wing</w>\nque er\nfriend s\nfor re\nâĺ ¼</w>\nsw t</w>\naqu arius</w>\nhead liner</w>\ncur d</w>\nfi gs</w>\no tters</w>\nlove fl</w>\nkare em</w>\ngo vegan</w>\nfri yay</w>\nconsol ation</w>\nat ri</w>\nì§ Ħ</w>\nâĺĿ ï¸ı</w>\npoly ne\ngu ed</w>\no ya</w>\nla us\nintestin al</w>\ncam illa</w>\nscal p</w>\npi r</w>\nleed s\nhorri fying</w>\nbore tum</w>\ndand elion</w>\nfer rer</w>\nell ic\nas x</w>\nso ren\nre loaded</w>\nale ague</w>\nnavig ator</w>\nine tte</w>\nadd ams</w>\nal chemist</w>\nak shay</w>\ndystop ian</w>\nawe c</w>\nn aya</w>\nal isa</w>\nai led</w>\nag or\navi ator</w>\nali zer</w>\nsmo bile</w>\nfindyour park</w>\ncop ying</w>\nto ddy</w>\nsh ti</w>\nmon ger</w>\ncal houn</w>\nnap kin</w>\nbreak up</w>\ny atra</w>\nse thu\nric hi\neras mus</w>\nfer ry\nam ore\nprac tise</w>\nbo bo</w>\npower point</w>\noo se</w>\nli ffe</w>\nchin a\nsh ka</w>\nfad navis</w>\ndu ane</w>\nwar on\nfal se\nðŁļ Ĥ</w>\nwa shes</w>\ndisc ip\n==== ====\ng k\nab b\nstub born</w>\nmedi eval\np ci</w>\nðŁį ª</w>\nmaril yn\nh yo\nman di\ncr i</w>\nprede cess\ncontinu ation</w>\nom usic</w>\ns lat\nwh al\nmall ory</w>\nbon n</w>\nshen zhen</w>\nca i\nâĺ ĥ\nsa fest</w>\nfor wards</w>\ndra wers</w>\nbla sted</w>\nsle e</w>\nmor phe\nmb ta</w>\ndumb ass</w>\nÑĦÐ¾ÑĤ Ð¾</w>\nalhamdulil lah</w>\nec lub</w>\nal beit</w>\nheal ey</w>\nayurve da</w>\nadverti sed</w>\ncro cs</w>\nitt les</w>\nbry son</w>\nbe i\nnj pw</w>\nhonore e</w>\nfu sed</w>\nðŁĶ ĺ</w>\nmul tin\nn aga</w>\nde parts</w>\nko p</w>\nkin o</w>\njhar khand</w>\ned na</w>\nax le</w>\nmil ton\nsupremac ist</w>\nmarrake ch</w>\ndomin ic\ntran script</w>\n] [#</w>\n: ).</w>\nwo c</w>\nsur rounds</w>\no gil\nleaf lets</w>\nco well</w>\nwhe w</w>\ntru de</w>\nproli fer\nsucce s\nsports man</w>\ncon dom</w>\npo che</w>\nk up\nimprison ment</w>\n{ }</w>\nscram bled</w>\nå Ľ\nka ine</w>\ncell phone</w>\nmetam or\ncon i\nremn ants</w>\nee z</w>\ndown pour</w>\nafterno on\nexerc ising</w>\nber ser\narchitec ture\nwick low</w>\nm ns</w>\nis p</w>\nbo c</w>\nn iss</w>\nmn wild</w>\nstu mble</w>\nr si</w>\nlu ffy</w>\nsil en\ndd ad</w>\nbul lies</w>\nhaw ker</w>\nbb cc\nscu ba\ne pp\nque ts</w>\nfor aging</w>\npal let</w>\nha di</w>\ncinemato grapher</w>\ncat chers</w>\nto aster</w>\nk hi\nlite coin</w>\nkid lit\namher st</w>\nmaur icio</w>\nip ad\nmar malade</w>\nfe y\ndon nelly</w>\ng to</w>\nest as</w>\ncere bral</w>\nant grasso</w>\nzz led</w>\nvir gil</w>\nswa pped</w>\nðŁĺħ ðŁĺħ</w>\nno dapl</w>\ngreate st\nnhl bruins</w>\nfra ser\nb mo</w>\nane w\n. âĿ¤ï¸ı</w>\nse gregation</w>\nremark ably</w>\nmccor mick</w>\nlo gger</w>\ner as</w>\ncontrac ting</w>\nâłĢ âłĢ</w>\nyor ks</w>\nuku lele</w>\ntouch screen</w>\nde cked</w>\nben n</w>\nsouth wark</w>\nra vin\nnu mis\nðŁ¤ Ļ</w>\nru t</w>\ngre co</w>\neth ic</w>\nred neck</w>\nar r\nt cs</w>\nih ri\nðŁĩ« ðŁĩ·\nl k\ninher ited</w>\nzy k</w>\nviadu ct</w>\nmarty red</w>\nhi gu\nss n</w>\nbe in\nstreet style</w>\nfer gie</w>\nbank of\næĹ ¥\nstake holder</w>\nexempl ary</w>\ncre ss</w>\ness a</w>\nero tica</w>\nintre pid</w>\ngom es</w>\nbra un\nbethan y\nbang tan</w>\npulmon ary</w>\nm illing</w>\ndoctor ate</w>\ntrump russia</w>\nà¤ °\ns ani\nbl att</w>\npla u\ndepri ved</w>\nt le\nful ly\nbour n</w>\nst ak\nlufthan sa</w>\nkio sk</w>\nfar oo\ndef y</w>\nbad an</w>\nðŁĺĺ âĿ¤ï¸ı</w>\nrit z\ntri sha</w>\nran ds</w>\nmiddle sex</w>\narab s</w>\npro j</w>\nsport scenter</w>\nrepe ats</w>\niv f</w>\nbleed blue</w>\nas sure</w>\no bs</w>\nterrit orial</w>\nele n</w>\nbever ley</w>\nann ah\nâĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ıâĿ¤ï¸ı\nz l</w>\nfor good</w>\nscience fiction</w>\ngla u\nson ya</w>\npri th\nst weets</w>\nmix ers</w>\nmari o\nant elope</w>\nwriting community</w>\nwent z</w>\nden ham</w>\nbe di</w>\nsf o</w>\nharley davidson</w>\nlook book</w>\nimmuno therapy</w>\nor phe\nes ville</w>\ned ged</w>\ntas k\nsb ball</w>\ncorro sion</w>\nkilom eters</w>\nco sting</w>\nplay back</w>\nke ke</w>\ndi visi\nu ter\nre location</w>\nyel led</w>\npen g</w>\nup beat</w>\nser ve\nâļ ł</w>\nhal en</w>\nstir ring</w>\nreh man</w>\nen v</w>\nschu macher</w>\nfrag ment</w>\nalkal ine</w>\nsb k</w>\nresil i\nshare point</w>\nrol lover</w>\ntra sh\ncounter part</w>\nâĻ «\nob itu\nà ½\nãĤ ¹</w>\nmul berry</w>\nðŁİ Ĩ</w>\nauton omy</w>\nspra ying</w>\nnat l\nlove you\nfran ki\nnu k</w>\nesc ar\ncan teen</w>\nali baba</w>\nde plor\nmole cule</w>\npu d\nfort night</w>\nblon die</w>\nsp hin\nportra yal</w>\nta che</w>\nbu te</w>\nconsi sting</w>\nfreep alestine</w>\nc sp</w>\nim mort\nd ns</w>\nðŁĴ¥ ðŁĴ¥</w>\ntour de\ncoo king\narchi val</w>\nga thers</w>\nbit t</w>\nb anc\npre mature</w>\nsnow ball</w>\npoetry day</w>\nlou dly</w>\nfug itive</w>\ned ay\nem ra\nðŁĩ¸ ðŁĩª</w>\nsci en\nnode js</w>\njur gen</w>\nje ong</w>\nband ana</w>\nun is</w>\nfox sports</w>\nv andy\npro visions</w>\nwee p</w>\ntu k\ni ko</w>\nh oun\nzig gy</w>\nz r</w>\nfil let</w>\nbat a</w>\ntin k\ncon e\nwe want\nk ilo\nhor ace</w>\nsl t</w>\nsc t</w>\nstay tuned</w>\nvictor ia\numb ria</w>\natt acker</w>\ningham shire</w>\nfright ening</w>\nno ir\nfr at</w>\ncon tempt</w>\nlia ison</w>\nho i\nbr ink\ntr ill</w>\nni agar\nkick ass</w>\ndun das</w>\nnot my\nrho de\nbu mble</w>\nno xi\nfa g</w>\nspec tators</w>\nmancrush monday</w>\njin ping</w>\ndistr act</w>\ndais y\nwal den</w>\nportra it\nar thistory</w>\nvol tron</w>\nev el\nis c</w>\nac m</w>\nr ite\nna o</w>\nde ported</w>\nswe ats</w>\nru fus</w>\nlo bo</w>\nlabor day</w>\ngam o</w>\nihri thik</w>\nbl it\nabdomin al</w>\nãħ¤ãħ¤ ãħ¤ãħ¤\ni it\ne q\nbu sy\nallu arjun</w>\nun disclosed</w>\nde ton\npro create</w>\nki l</w>\nðŁİĤ ðŁİĤ\nmitch ell\nki i</w>\ninherit ance</w>\nal p</w>\njo burg</w>\npat rolling</w>\ncompul sory</w>\nun signed</w>\nni am\nl ga</w>\neshop suk</w>\ntr illi\nma w\nappreci ating</w>\nrock ab\nmaÃ± ana</w>\nan tal\nmal vern</w>\nroy o</w>\ngrand prix</w>\nsut ton\ngo ftheday</w>\ndig i</w>\nãħĭãħĭ ãħĭãħĭ\nt les</w>\nvaran asi</w>\nerec ted</w>\ndiscip les</w>\ncont act\nðŁĺ µ</w>\nli d\nâ¬ ĩ</w>\nscen tre</w>\nradi ator</w>\ning tips</w>\ntrans itions</w>\nthursday motivation</w>\nchem ical\nsepar ati\nsal is</w>\nmi m</w>\ngeo graphical</w>\nbook fest</w>\n/ .</w>\nâľ ĭ\nv ae</w>\ncur rie</w>\nag garwal</w>\nacceler ation</w>\nthe ses</w>\nlg m</w>\nu mass</w>\npro portions</w>\nnat a</w>\nani ans</w>\nku ch</w>\nbe acons</w>\nap r\n@ #</w>\nðŁĴª ðŁı¾</w>\nnu ke</w>\nsher aton</w>\nki o</w>\nma kati</w>\npolit ico</w>\nmor ale</w>\nì Ļ\neconom ically</w>\ngg ly</w>\nss en\npa stries</w>\nintern ships</w>\nvic ente</w>\nfanta ken</w>\naveng ers\naccu se</w>\nslee pover</w>\nindic ated</w>\nthe dream</w>\nster one</w>\nren ders</w>\nfro st\nou i</w>\ngre gg\nd ore</w>\nâľ¨ âľ¨âľ¨</w>\npu gs</w>\nsat y\nnu mb</w>\nhems worth</w>\ntam i</w>\nla ssic</w>\nschi ff</w>\nigle sias</w>\nag awa</w>\n] \"</w>\nre shi</w>\ngame stop</w>\ndivor ced</w>\ntheat er\nclau di\nun conventional</w>\nprophe ts</w>\nac in\ntwel f\ntow ering</w>\nt ml\nsc lerosis</w>\nk wan</w>\nge ts\ndistur b</w>\nna ira</w>\nener g\npir acy</w>\npru itt</w>\nnoti fied</w>\nhen na</w>\nbra m</w>\nground water</w>\nbl s</w>\nopti mis\n$ )</w>\nluci e</w>\nbiz hour</w>\nfang irling</w>\ngr ills</w>\nor l</w>\nver se\nc ina</w>\nlaw less</w>\nartistson twitter</w>\ntele vised</w>\nmarshmal lows</w>\nradio head</w>\nbar r\nm fc</w>\nbre vi\nmmor pg</w>\ng aya</w>\nâĸ «\nsub titles</w>\nj t\ndisney land\nto bago</w>\nnh m</w>\ngroo ve\nfi awec</w>\n\" /</w>\nba o\nscra bble</w>\nom ni</w>\nff l</w>\num c</w>\nsi mba</w>\nali er</w>\nter rell</w>\nplu me</w>\nmi di\ndig nit\nco c</w>\nbru t</w>\nad ata</w>\nalche my</w>\nd sm</w>\nðŁĺĨ ðŁĺĨ</w>\nwin try</w>\nspa res</w>\ncu er\nconclu sions</w>\nto ys\nod or</w>\nfl ann\ngar vey</w>\nscrip tions</w>\ninspec tions</w>\ncat ap\nang lo\nst louis</w>\nheim er</w>\nat ay\ntr ich</w>\nen yc</w>\nchil ds</w>\nvent il\nmont p\nguiller mo</w>\ncircu lare\nz ell</w>\nmode led</w>\ncraf tsman</w>\nal ina</w>\nstimul ation</w>\ncashe w</w>\nju das</w>\nbest of</w>\nto ire</w>\nsusp ends</w>\nscol lege</w>\nreal ising</w>\nby tes</w>\nbloo ds</w>\nas si</w>\nðŁĴ ¿</w>\no hs</w>\nðŁį ĭ</w>\nscallo p</w>\nà¤ µ</w>\ngi fting</w>\ncamo gie</w>\nwil kes</w>\no zzy</w>\nðŁ¤ ¤\nver onic\nsav oy</w>\ndeme tri\nbaby girl</w>\nðŁĺį ðŁĺŃ</w>\nso x\ncly de\ninduc tee</w>\ncount down\nself care</w>\nà¤ ľ</w>\nvi ka</w>\ntor re\nphd chat</w>\npe ars</w>\naw h</w>\nsuff rage</w>\nle sn\nadmir ation</w>\nmp p</w>\nshark week</w>\nschul z</w>\nsantor ini</w>\nclo ver\n( *</w>\nstras bourg</w>\nex iting</w>\nso yu\nfinger print</w>\nche a</w>\nãĢ ľ</w>\nvin dic\nsong writers</w>\nso a</w>\nprou der</w>\nnam a</w>\n= ))</w>\nsimple st</w>\ndelici ously</w>\ngil les</w>\nu q</w>\nmn wx</w>\nep p</w>\nsh un</w>\nken nel</w>\nfall on\nðŁĲ £</w>\nsin d\ntra gically</w>\nout es</w>\nmodern ism</w>\nco ke\ngy n</w>\nspi on\nâĺ¹ ï¸ı</w>\nle am\ncompress or</w>\napolog ise</w>\ntwent yon\nfan atics</w>\nâĻ »\nsco tsman</w>\nsa wa</w>\nko u</w>\nas er\nà¸ ļ</w>\nwelter weight</w>\nphen om</w>\ntwick enham</w>\nstri a</w>\np out</w>\nka z</w>\ngi am\ncd p</w>\nho y\nemplo y</w>\nred mond</w>\nà¸ Ħà¸\nsm ere</w>\ntrance family</w>\nproto cols</w>\npie ce\nlu iz</w>\niter acy</w>\ncarl s\nunited states</w>\nhar med</w>\nphd life</w>\nch aw\nfoot prints</w>\nl Ã©\ncho ker</w>\nz ana</w>\nsli pper</w>\neric sson</w>\ninsul ting</w>\narticho ke</w>\nadvis ing</w>\nacquis itions</w>\nop or\nmut ations</w>\nre ar\nà¥ ģ</w>\npod cast\nwi ther\nkun g\níĺ ¸</w>\nwin slow</w>\ndi apers</w>\nðŁĵ¸ @</w>\nec ker\ncol lar\nhu ey</w>\ngi ro\nmono gram</w>\nkas ich</w>\nsi veness</w>\nmalay si\narom atic</w>\ngre s</w>\ngali leo</w>\nu ji</w>\nrob b</w>\ndr m</w>\nnone theless</w>\nas a\n: ></w>\nlo a</w>\nl np</w>\nat work</w>\nag t</w>\nlaksh mi</w>\npipel ines</w>\nid al</w>\nstre l</w>\nre all\nchain z</w>\nstone wall</w>\nsan sk\nðŁı ´\npied mont</w>\nhoste ss</w>\nci u\nt Ã©</w>\nanaly ses</w>\nwil helm</w>\nscott y\nrw by</w>\nmosqu it\nuse mb\nqu ins</w>\nðŁĳ İ\ntu cker\ns conf</w>\nspeci fications</w>\npsychi atry</w>\nbroo kes</w>\ns ils</w>\nol af</w>\nde to\nco di\ncli p\nfil th</w>\nwomancrush wednesday</w>\ngo to\nang erous</w>\nbe ale</w>\nw tc</w>\npaneli st</w>\nne x</w>\nlar sen</w>\nemili o</w>\ntab leau</w>\nh itters</w>\nconce ived</w>\nameric ani\nor tega</w>\nmar di\nÑ ĥ\npain tball</w>\nthir sty\nnew yorker</w>\netis ation</w>\ngo ss\nwe aker</w>\nu gh\ntro ll\nhar ga</w>\ndu al\nght ning</w>\nat ine</w>\nðŁĺİ ðŁĺİðŁĺİ</w>\ncook out</w>\npyrene es</w>\npo ss</w>\nauthent ication</w>\nsports wear</w>\nyun ho</w>\nkir o</w>\narchi pel\nshen ko</w>\nren der\nnov ation</w>\ndivin ity</w>\nðŁĳ £</w>\nsu fi</w>\nhumb ling</w>\nge opol\ndevote es</w>\nwait ress</w>\ntr ough</w>\npy ro\ni ba</w>\nbl ing\ngra f</w>\nepilo ts</w>\nbt r</w>\nof tball</w>\nbas king</w>\ndomin os</w>\nso om\nr ath</w>\nsher yl</w>\nqu el\nastronom ical</w>\nwel d</w>\ntrack list</w>\nsig nee</w>\nslee pless</w>\ncom man\nch ron</w>\nsumm on</w>\npure michigan</w>\ncri spr</w>\nsli p\nla gi</w>\nra q\num u</w>\nthal ap\nchar med</w>\nscru mp\nquad copter</w>\nski p\npeter sen</w>\nmun i</w>\nðŁĮ ¾</w>\nmon aghan</w>\ntra ys</w>\nick ed</w>\ncanad aday</w>\nte gr\nï¿ ½</w>\nhot ness</w>\nheavy metal</w>\nab ar</w>\ngop debate</w>\naz ul</w>\nspider man\nsun flowers</w>\nľ ë\nweb comics</w>\nbar d\nÐ ²\nnichol as\nslu sh</w>\nram an</w>\nmark ham</w>\nffici al\nff ler</w>\níĬ ¸</w>\nple ss\nanush ka</w>\nto to</w>\nsk aters</w>\npro wrestling</w>\ncompet es</w>\nay ala</w>\nmyster y\nthr ills</w>\nmp g\nindepend ently</w>\ny ul\nimper ative</w>\nformid able</w>\ntire less</w>\nst acking</w>\nton gues</w>\nmal tese</w>\npot ts</w>\nmat ti\nchar ting</w>\nchill out</w>\nsuper nova</w>\nome o</w>\nsky sports\nnu tty</w>\nðŁĹĵ ï¸ı</w>\nro han</w>\ninsp ired\nconcier ge</w>\nser ra</w>\nma kk\ngal at\nchi pp\nye v</w>\nì £\nreim bur\nop ul\nkimber ley</w>\ni eee</w>\nbre men</w>\nch itec\nor in</w>\nnak u\nbon kers</w>\nfoo ty\nemer gence</w>\nðŁĨ ĺ</w>\nsti p\nserge i</w>\nzo ey</w>\nai me</w>\nwou ld\ndy es</w>\ndestin y\nvinai grette</w>\ndri er</w>\ncirculare conomy</w>\nan archi\nss r</w>\nsch el\ncin er\ngro om\ndetermin ing</w>\ngar min</w>\ncal ais</w>\nincarcer ation</w>\nbu kit</w>\nno i</w>\nchelms ford</w>\nmckin ley</w>\nchi pped</w>\nbelong ed</w>\ntu mors</w>\nstr oud</w>\nmi i</w>\ninfluen za</w>\nwwen xt</w>\ntun dra</w>\ntele communications</w>\ncat sofinstagram</w>\nt ages</w>\nbeat ty</w>\no du</w>\nml kday</w>\noo per</w>\ndang le</w>\nak ley</w>\ncru mb</w>\nanti gua</w>\nti mbers</w>\nrou hani</w>\nðŁĴª ðŁĴªðŁĴª</w>\nha fi\n... !!</w>\nw cs</w>\ncoo p\nsn c</w>\nlit res</w>\nãĢ Ĭ</w>\nha z</w>\nco z\nk ant\ngreen field</w>\ncur ti\ny ale\nflye agles\nwhat soever</w>\nwor thing</w>\nrou lette</w>\nflyeagles fly</w>\nun da</w>\na inted</w>\nstand ing\nlusci ous</w>\nh pc</w>\neffic acy</w>\nash land</w>\nme ghan\nky wx</w>\nn pr\nbath tub</w>\nac os</w>\nh ani\nmar cor\nman tis</w>\nda isi\nbo ba</w>\nab bie</w>\nmu til\nvi al</w>\nspy der</w>\npo z\ng ti</w>\nel fie</w>\nnigh tw\nmetro id</w>\nanton i\nmad die\ndh ry</w>\ndar lings</w>\nten ds</w>\ntaek wondo</w>\natlan ta\nme ow\nchlo e\nãĥ İ</w>\nym es</w>\nsiber ia</w>\nk con</w>\ngu es\nmar iner</w>\nfac il\nazz le</w>\n[ ...\nhan nover</w>\nbav aria</w>\nvir go</w>\nte uk</w>\nu sps</w>\n) #</w>\nwall a</w>\nsam pson</w>\nneed less</w>\nver bally</w>\nhay ley\nbow led</w>\npi us</w>\nlam pard</w>\nham string</w>\nvol vo\nroad safety</w>\ncho king</w>\nsor bet</w>\na hem</w>\nhealthy food</w>\nbrai ded</w>\nhorticul ture</w>\ncr ative</w>\nche ek\nad do</w>\nthe force\nko ko</w>\nschiz oph\nj ie</w>\nw ada</w>\ntwentyon epilots</w>\nh bcu</w>\npro ton</w>\npau ls</w>\nlou isa</w>\nlat am</w>\nkyr gy\ncom pac\nsd k</w>\nsap i\n?? ?\nliber alism</w>\nep silon</w>\nai den</w>\nw usa</w>\nspra yed</w>\nbaske tball\nkim ono</w>\nblue wave</w>\nali as</w>\në§ Ī\nmug shot</w>\nce c</w>\ndo gre\nad ora</w>\nðŁĵ· @</w>\nkra kow</w>\nintrigu ed</w>\nexhau sting</w>\nastron omer</w>\nven ison</w>\nlady bug</w>\nci v\nbra e</w>\nus m</w>\nbri be</w>\nacup uncture</w>\npembro ke</w>\nke ating</w>\nchi e\ny ad</w>\nt si\nsm i</w>\nsee ding</w>\ngate shead</w>\nlis boa</w>\ngy p\ncanv ass</w>\nðŁĶ´ âļªï¸ı</w>\nop i\nni r</w>\nsoci etal</w>\nly te</w>\nati es</w>\nc sm</w>\nar tery</w>\nal in</w>\naka poor</w>\nabstr acts</w>\nâĢ¦ âĢ¦</w>\nteen wolf</w>\nne we\ntravel gram</w>\nsentim ental</w>\nper ched</w>\nhan del</w>\nho ek</w>\nf ay</w>\ncoordin ating</w>\nanim ate</w>\nman ian</w>\neffor t\njer ky</w>\nf ck\nadri enne</w>\nma bly</w>\ntra ding\nmy el\nspi ro\nsol a</w>\nstor ing</w>\nover drive</w>\nmonday morning</w>\ndream team</w>\npul se\nbon di</w>\nber nie\npgat our</w>\ntri poli</w>\nson am\nplat t</w>\nâļ ¡\nag roup</w>\nîĲ Ĵ\ninv ading</w>\nv cu</w>\nk ell</w>\nÃ± os</w>\nun dead</w>\npod casting</w>\nmercede sam\nmana fort</w>\ncor tex</w>\nque so</w>\nimpecc able</w>\npal mer\nwil doz</w>\nsport sc\nguacam ole</w>\ndispen ser</w>\ncate gori\nstun ts</w>\nper il\ninvit ations</w>\ndune din</w>\nxi e\nachi eves</w>\nsaf er\npre ds</w>\nph an</w>\nknuck les</w>\nk ak</w>\nigno res</w>\nlovemy job</w>\naru ba</w>\nound ation</w>\ndatac enter</w>\nco vert</w>\ngr ing</w>\ncou ple\nØ§ Ø±\nvol i</w>\nmc cle\narti sans</w>\nlu do\nkal am</w>\narom a\nunder taker</w>\nhu la</w>\nwiz kid</w>\ngu mb\ngod frey</w>\nbakers field</w>\nker n</w>\nengine er\ncar ve</w>\npal in</w>\nguaran tees</w>\npe bbles</w>\nb ays</w>\nzi eg\nfin k</w>\nâ¬ĩï¸ı â¬ĩï¸ı\ndown pours</w>\nro chelle</w>\nrasp berry\nðŁĺ ®\ngra phies</w>\nstom p</w>\ncaf es</w>\nari zed</w>\nutt ar</w>\ncal vary</w>\ndri e</w>\ncrusad er</w>\nbus an</w>\ntux edo</w>\nsi u</w>\nseam us</w>\ncul tured</w>\nblan chard</w>\ntown house</w>\nge red</w>\nbutter milk</w>\nflu ctu\nroger federer</w>\nhel i</w>\nðŁ¦ ĥ</w>\nu ous</w>\nram esh</w>\nmu ppets</w>\nemail marketing</w>\nye ss</w>\nbr ice</w>\nri zio</w>\npel o\ndonnein arte</w>\nu rable</w>\ninve stin\nbump ing</w>\nraji v</w>\nsav a</w>\nthro wer</w>\nfore x\no hhhh</w>\nth rust</w>\npull man</w>\nr fid</w>\nsep sis</w>\nle ed</w>\nfri ght</w>\nroun ding</w>\nne b\nph ins</w>\nai sha</w>\nutili zing</w>\nsqu ats</w>\ngold smith</w>\nj ic</w>\nbo ks</w>\nvau s</w>\ni po\nexclu sion</w>\ntari ff</w>\npo kes</w>\nmin al</w>\nland s\nen force</w>\nwashington dc</w>\nor char\ng x</w>\nmar ys</w>\ney our\naussi e\nbak ers</w>\nun popular</w>\nlatin os</w>\nlar ge\npu tnam</w>\nbol o</w>\nwa de\npel o</w>\ndi zz\nob struction</w>\nfla ppy</w>\nweare the\ndepend ence</w>\npajam a</w>\ne te</w>\ny ann\ne wan</w>\ndisc la\na ay</w>\nkar ina</w>\ne ic\nan trim</w>\nw soc</w>\nneg atively</w>\nkai do</w>\nfotogra fia</w>\ndh ru\ncolo ssal</w>\nmcle od</w>\nk wang</w>\nmani pu\nex hilar\nus atoday</w>\nsummer slam</w>\nco les\ntapro om</w>\nunbeat able</w>\nde ma\ntic ks</w>\nk ling\nfil s</w>\ncampaig ners</w>\nà¸ ķ\nbrew ster</w>\naudu bon</w>\nqu ay\nch s\nki gali</w>\nd ler</w>\nstrength ens</w>\nsom al\nsign ingday</w>\ngol ds</w>\npig ment</w>\norche stral</w>\ng q\nlin kin\nðŁı ĩ</w>\nta w</w>\nalgar ve</w>\nho v</w>\near le</w>\ngold fish</w>\nam ig\nex er\nben in</w>\ndru id</w>\nðŁĲ ¸</w>\nshe m</w>\nquat tro</w>\nmer cen\nmen te\nincorpor ating</w>\nbon anza</w>\nstate fair</w>\nen de</w>\nconcep tions</w>\ne es</w>\nâĻ¥ï¸ı âĻ¥ï¸ı\nd son</w>\nfire arm</w>\norb ital</w>\nwe h</w>\nmulti p\nfo b</w>\nrequi em</w>\np light</w>\nthou se\nsa id\noc re</w>\nremem brance\nn old</w>\nchi pping</w>\nbe v\ner t\nca thy\nsy m</w>\nri ggs</w>\nm ley</w>\ndialo gues</w>\nsl ender</w>\nhow l</w>\ngau teng</w>\nwd w</w>\nto bi\nsmo kes</w>\nim plo\nb pm</w>\nad n</w>\nmom basa</w>\ncap sul\nbloom field</w>\nartic ul\ncle o</w>\ngoog led</w>\nflu ffy\nl ard</w>\nen zyme</w>\nve sti\nibra hi\nfl ame\ne mea</w>\nout ages</w>\ndispro por\nble ak</w>\nan sel\nick er</w>\nst louis\nstock market</w>\ngood friday</w>\nsau lt</w>\nstal led</w>\npro m\nep som</w>\nb Ã©\nthe se\nsau ces</w>\nme w</w>\nlit fest</w>\npre d\nre u</w>\nkar ak\nsi enna</w>\nell in</w>\nbio technology</w>\nï¸ıâĥ£ -</w>\ntac tic</w>\nsa in</w>\npor k\nmon za</w>\nka j</w>\nlu sh\ncompart ment</w>\nchang ing\nshraddha kapoor</w>\nfo al</w>\nar tem\ncu ando</w>\ncan ola</w>\nori ente\nme sse</w>\nd ited</w>\nbr c</w>\nbox er\nbbc two</w>\ns st</w>\nment day</w>\nem ing</w>\nde wey</w>\nkof i</w>\nâŀĸâŀĸ âŀĸâŀĸ\nreali zation</w>\nsmo l</w>\ntw ood\nsan je\nflag staff</w>\nber wick</w>\ncor set</w>\ncan ary\nwhistle blower</w>\net ched</w>\ncom posing</w>\nsquee zed</w>\nbow er</w>\nauto desk</w>\nne h\nmathi eu</w>\nba ja\nÅ Ĥ\nhy dra</w>\nda im\nam eri\ninsi sted</w>\nmer lot</w>\ngar ros</w>\nheart news</w>\ngaine sville</w>\ncut ler</w>\nbo de</w>\nðŁĺī ðŁĺī</w>\nlew es</w>\nscoun try</w>\ng sa</w>\nus u</w>\ncc m</w>\ngod awgs</w>\nphara oh</w>\ncra e</w>\nmor ley</w>\nhyp noti\nf ades</w>\nneur ons</w>\nfu zz</w>\ning co</w>\nhigh landers</w>\nstar k\nvig ne\npac kets</w>\namar illo</w>\nreu ben</w>\ninsul ts</w>\nbas ic\nvec tor\nn me</w>\nac ruz</w>\ntro s</w>\ntransm itter</w>\nðŁĺ ŀ\ninterpre t</w>\nðŁĺ ²\npre quel</w>\nmc gowan</w>\ndis semin\nðŁĴĺ ðŁĴĺ</w>\nmascul inity</w>\nindie gamedev</w>\nali ve\nte t\npe tal</w>\nema iled</w>\nar med\nko o</w>\nhe er</w>\nba ird</w>\nsuper junior</w>\nmetro polis</w>\ndelav in\ndecl ines</w>\nstit utes</w>\nÛ ģ\np tbo</w>\ng lan\ncho res</w>\ne aling</w>\nchri ssy</w>\nste mc\nvi an\nassassin ated</w>\npron ounce</w>\nilleg als</w>\ndiscover y\ncav ill</w>\nfri fotos</w>\nf al</w>\nso i</w>\nsabot age</w>\nt int</w>\np dc</w>\nðŁİīðŁİ Ī\nãĤ Ĭãģ\nji o</w>\nendeav or</w>\nin sig\ncommit tees</w>\nshe arer</w>\nme tz</w>\nmar rying</w>\nh dd</w>\ng by</w>\nfre t</w>\ntri sh\npu l</w>\nscrip ted</w>\nsa ki</w>\nl w\nke ye\nshim i</w>\nnan aimo</w>\nca h</w>\nÃ «</w>\ntem pered</w>\nici an\ndu gg\ndish washer</w>\nair field</w>\ns rugby</w>\ngr inch</w>\ny st\nr ms</w>\nmahat ma</w>\nlan kan</w>\ndisc ar\ndige stion</w>\nno des</w>\nl ls</w>\nom ic\ngu tter</w>\ntis garh</w>\nfeder ico</w>\nelection day</w>\nbo he\nmaster card</w>\nfire ball</w>\nâľ Ķï¸ı\noy ster\np ong\ndo k\nen route</w>\nm vc</w>\nbeat the\nali stair</w>\nshu b</w>\nsh aming</w>\ncherno byl</w>\nghi bli</w>\nthe s\npin ion</w>\nd bs</w>\nsal ts</w>\nic tion</w>\nepi ph\nnc pol</w>\nin convenience</w>\nwhit ley</w>\ninspec ting</w>\nwood ley</w>\nwi ener</w>\nskil let</w>\nno les</w>\nm ca\nh ina</w>\na sha\nwilling ness</w>\nwell ness\ntam ed</w>\nshow time\ndis advantaged</w>\nber nat\nus n</w>\nmission aries</w>\ncoun selling</w>\narrog ant</w>\nquant itative</w>\nleg alization</w>\nho dge</w>\nenergye fficiency</w>\ncameron dallas</w>\npos sessions</w>\np bb</w>\nharris burg</w>\nv g\nhindu ism</w>\nhappy thanksgiving</w>\nfi b</w>\nre acting</w>\ntweeta picture\npol iti\nmu ppet</w>\nhur rah</w>\npac e\ncoast guard</w>\nguar ded</w>\nas am\npar ry</w>\nfore very\nx q</w>\noom f</w>\nke anu</w>\nj ind\nri st</w>\ncustomer service</w>\nsac red\nðŁĺ º</w>\nton er</w>\noccur rence</w>\nmat u\nval dez</w>\nred d</w>\nis ak\npower rangers</w>\npe asant</w>\nraj ini</w>\nabra ham\ne mil</w>\ncar do</w>\ntr il\nhair styles</w>\nobsole te</w>\nsam pler</w>\ndirec tive</w>\ndelavin kisses</w>\nver ton</w>\nglo s</w>\nsp ay\npaler mo</w>\ncom ets</w>\nman ziel</w>\nchicag of\nski pped</w>\npic torial</w>\nh ant\nb mi</w>\na ol</w>\nre opens</w>\npad dling</w>\ndevo s</w>\nfra ud\nbas eline</w>\nque ues</w>\nsp ired</w>\nsn are</w>\neu ve</w>\ndescri ptions</w>\ndaisi es</w>\nca ching</w>\ngall eria</w>\ntri mmed</w>\nstin o</w>\nrecy cla\nic ular</w>\nbir ken\nraw lings</w>\nfli x</w>\nchic as</w>\nb gt</w>\nlik eli\nargy ll</w>\nthel ove\nga ston</w>\nbl anca</w>\nha k</w>\nf one</w>\nsailor moon</w>\nh aci\nima c</w>\nfl yn\nde can\nbel les</w>\nap ic\nzo g</w>\ntaun ton</w>\ncon stance</w>\nlasag na</w>\nker nel</w>\nin ka</w>\nhar bor\ncollec tively</w>\ncalcul ated</w>\nav ille</w>\nshil pa</w>\npur du\ngi mm\nfun er\na est</w>\npembroke shire</w>\nnighting ale</w>\nn unes</w>\nhyper tension</w>\nhu bert</w>\nsli ders</w>\ninfer tility</w>\ncomm ended</w>\ntransat lantic</w>\nmetr ical</w>\n!! @</w>\nÅ Ł</w>\nss g</w>\nbac ca</w>\ninver ted</w>\nfun factfriday</w>\nit ans</w>\nalbu m\nacqu ainted</w>\nri er\nwhel an</w>\nsar ab\nmu e</w>\nsnoo ze</w>\npi ff</w>\nagre eing</w>\nsp itting</w>\njer maine</w>\nn ye\nâľı ï¸ı</w>\nam bush</w>\nze ph\ncon greg\nunivers ity\ns app</w>\nwann abe</w>\npat rice</w>\nib d</w>\ndo glo\nfri dges</w>\nsun d</w>\nking ston\nar gon\nkam en</w>\nhardro ck</w>\nds ley</w>\ndo lores</w>\nì °\nota ku</w>\npi ping</w>\nbe having</w>\nâŃĲï¸ıâŃĲï¸ı âŃĲï¸ı</w>\nblue bird</w>\nan sari</w>\nteapo t</w>\nfire work</w>\ncro p\nlog ans</w>\nty ped</w>\nthick ness</w>\nig ers\nc fp</w>\ndys functional</w>\ncontra sting</w>\net ty</w>\naston martin</w>\ntx st</w>\ndra grace</w>\nat tributes</w>\nmarath on\nmanu scripts</w>\njohn stone</w>\nðŁĺ± ðŁĺ±</w>\nbo er</w>\nay u</w>\naru gula</w>\npoo rest</w>\ncon du\nassu mption</w>\nanag h</w>\nno h</w>\ndelav in</w>\nsit ter</w>\ng Ã¶\nmor ow</w>\nkick start</w>\ncom i\ngl acial</w>\nghe ad</w>\nba in\nker shaw</w>\nen dof\nfre ud</w>\nom at\ni af</w>\nhu g\nsign up</w>\neach other</w>\ndefin ite</w>\ntu bing</w>\nshak ira</w>\nðŁĳı ðŁı½\nuu uu</w>\nsw in</w>\nsham bles</w>\nol as</w>\nsk ell</w>\nbrit ain\nkn w</w>\nclu tter</w>\nom y\nj ens</w>\nhang ed</w>\ncity scape</w>\nscra ps</w>\nun locking</w>\ndead liest</w>\ner no</w>\nbreast cancer\na it</w>\ninspec t</w>\nfu ri\nðŁĴ Į</w>\nku d\nju le\nor ah</w>\nmi ds</w>\nm dt</w>\nbur gring</w>\nr attle\npu sa</w>\nstal k\ncle ans</w>\niss ance</w>\nz ek</w>\nworth it</w>\nnam eis\nmusko ka</w>\ncouncil man</w>\nurban art</w>\nbar rac\nun solved</w>\ntu l</w>\ng ita</w>\nwhite board</w>\nsoy beans</w>\nem ent\ncont i</w>\nsaturday motivation</w>\nconveni ently</w>\ndoc king</w>\nt ado</w>\nâı ©</w>\nsp ino\npuppy love</w>\npo f\nfabric ated</w>\nrobb ers</w>\nadop ts</w>\nti fied</w>\nkk r</w>\nindulg ence</w>\nnotic eable</w>\nmacqu arie</w>\nchap el\nsensu al</w>\nki ko</w>\nmelan oma</w>\nlore tta</w>\nli ance</w>\nab en\nsp lus</w>\nga al</w>\nac ele\nlib dems</w>\ncompar isons</w>\nðŁĮ µ</w>\nrhy thms</w>\nmer y</w>\nen capsul\nnap ier</w>\nðŁĳĮ ðŁĳĮðŁĳĮ</w>\nðŁĳ Ĳ</w>\nplat z</w>\nfre sno\nre formed</w>\nran bir</w>\nel it\nthe best\nbhu shan</w>\nvin nie</w>\nimpro vised</w>\ns ittin</w>\nre created</w>\ne ba</w>\nec ker</w>\nac rob\npon te</w>\ncor d\ngi ddy</w>\neur usd</w>\nfe ver\nintu ition</w>\ngar i\ndum mies</w>\nbud weiser</w>\namend ments</w>\nte tra\nsch nit\nay as</w>\nmar ys\nci st</w>\nk ani\nker mit</w>\nðŁĺ±ðŁĺ± ðŁĺ±</w>\ntin ker</w>\nstrol ling</w>\ndi visional</w>\nniger i\nomin ous</w>\nmenstru al</w>\nkar ab\nk hy\nbw fc</w>\npan handle</w>\nl illi\nwell er</w>\nstra pped</w>\nson the\ntransfer ring</w>\nethe real</w>\nsne aks</w>\nru dol\ngab les</w>\njac king</w>\ncin code\nfor tune\ncanadi ens</w>\ncon for\nab normal</w>\nfrank lin\ntit a</w>\nmu la</w>\npersi st</w>\ncu ties\nki el\nðŁĩ± ðŁĩ\nher mann</w>\naw k</w>\nfi asco</w>\nko to\nwe ta</w>\nhi ker</w>\nbudd y\npreven tive</w>\nmcgra w</w>\ngame boy</w>\nforsy th</w>\ntop shop</w>\nsi ob\nsad h\nin tram\nfollow art</w>\nso aps</w>\ndragon ball\nou x\nmorri son\nà¹ ĥ\nlu bric\nadul thood</w>\nmorri sons</w>\nâļ łï¸ı\nher mo\nta ka</w>\nstall one</w>\nmis use</w>\nteam gb</w>\nra gha\ncon fined</w>\nat y\nhom ophobic</w>\nnw o</w>\nsky news</w>\nho ya</w>\nac rosse</w>\nwi iu</w>\npur Ã©e</w>\njed dah</w>\nðŁ¤ §</w>\nadvis ers</w>\nph ine</w>\nan is\nscrump tious</w>\në° ķ\nc ke</w>\nvin y\nter m\ns dc</w>\no do</w>\nhome school</w>\nvas c</w>\nleop ards</w>\ndebor ah\nillic it</w>\ncur ran</w>\nas roma</w>\nnau ght</w>\nmar ig\nbrand i</w>\nem p</w>\nðŁĺį ðŁĳĮ</w>\nî Į\nsu spend</w>\nlu z</w>\niniti ation</w>\nsch aft</w>\njensen ackles</w>\ncraw ler</w>\npost doc</w>\ndes ks</w>\ntrail blazer</w>\nden omin\ntri x</w>\nno ise\npo et\n± ï¸ı</w>\ns mug</w>\nvol atile</w>\nproof s</w>\npharmac ist</w>\nsardin ia</w>\nmash able</w>\nkim chi</w>\nco ed</w>\nschal ke</w>\ndoo dled</w>\nc sw</w>\nsh ur\nro x</w>\ndo k</w>\nchris brown</w>\nmathemat ician</w>\nab ound</w>\nang elic</w>\nrock ford</w>\nd ole</w>\nyor kers</w>\nms n</w>\ng man\nxavi er\nbor rowing</w>\nmark ings</w>\nlongh orn</w>\nk ja\ndiver ted</w>\nmm it</w>\neuph oria</w>\nay yy</w>\nte a\npa h\nck i</w>\nun cut</w>\nli ven\nky ung</w>\nfan art\nmer ing</w>\nred ding</w>\namo vie</w>\ngri di\nc thulhu</w>\nschol arly</w>\nju dah</w>\nth bewithyou</w>\neu calyp\nðŁĲ ķ</w>\nhert fordshire</w>\ncour troom</w>\nby u\nauc tioned</w>\nple ase\nmar cia</w>\nê° ĵ\nsucce eded</w>\nel as</w>\narvin d</w>\nt lot</w>\nsaig on</w>\nre tt\nra kesh</w>\nfd ny</w>\nas en\nse bring</w>\ngladi ators</w>\nyou know</w>\nv lad</w>\ngol a</w>\npar ap\nÑĢ Ð¸\nsab cnews</w>\none team</w>\noh l</w>\nsun e</w>\nri j\ncd c\nstar gate</w>\nrun down</w>\nplat o</w>\nph c</w>\nchat ter</w>\nra viol\nmn f</w>\nmand ala</w>\nli et</w>\nà¸ ķ</w>\nmari a\nhun gover</w>\nconsoli dation</w>\nfer rell</w>\ntradition al\nilove art</w>\ngal ap\nðŁı Į\nque zon</w>\nespa Ã±a</w>\nðŁĩ¨ðŁĩ Ń</w>\nho bby\nsteam boat</w>\nmali gn\nguil lau\npro hi\nits me\níĥ Ģ\nin scription</w>\nal z</w>\nmari an\nk ade</w>\nmm on</w>\nadju sting</w>\nne sts</w>\nintern ally</w>\nci r</w>\nvik ram\nmal ala</w>\nk ph</w>\nfel icia</w>\nthe real</w>\ncap tivity</w>\nat is</w>\nmarcor ubio</w>\nkale ido\nche v</w>\nmano j</w>\nle more</w>\ngent ri\nvi ps</w>\ntro pe</w>\n\" âĢĶ</w>\npair ings</w>\nmal nutrition</w>\nfr ay</w>\ndesig nation</w>\nbrun omars</w>\naz e\ntor rential</w>\npan zer</w>\nga il\nunder the\nthe ological</w>\nschizoph re\ndazz le</w>\nfreder ic</w>\nmo par</w>\nad illa</w>\nso ggy</w>\nra un\nmedi ocre</w>\ncolo rec\ni fe\np inst\nblu ef\nÂ ²</w>\nworld water\ngir oud</w>\nclar inet</w>\nad olf</w>\ntar antino</w>\nreceip ts</w>\nassu mp\nðŁĳ Ł</w>\ncoffe es</w>\nâľĬ ðŁı¾</w>\ndu plex</w>\ns of</w>\nr x\nlin o\ntimber wolves</w>\npan dit</w>\nmo tm</w>\ne ga</w>\nay ama</w>\nach s</w>\noutsi der</w>\nll en\nco er\ntil ly</w>\ncheese burger</w>\nma ds</w>\nple dis</w>\nemp ty\nnational parks</w>\naz iz\np mi</w>\njun kies</w>\nf ener\nsq n</w>\nÃ¨ s</w>\ngener ation\ncleop atra</w>\nbhuban es\nmosqu es</w>\nty free</w>\npopp ins</w>\ntw c</w>\nor well</w>\nn age</w>\nka whi</w>\nhol low\ndal ai</w>\nÂ¨Â¨ Â¨Â¨\nou ro\nm health</w>\ngi on</w>\naz o</w>\nvis as</w>\nreneg ade</w>\nre ic\nw sop</w>\nðŁĴļ ðŁĴĽ</w>\ne chel\ntox icity</w>\nmÃ¼ n\nbun k</w>\nstimul ating</w>\nasth our</w>\n\\ '</w>\nep h</w>\nende mic</w>\ncn bc\nshrin king</w>\npeabo dy</w>\nmichel angelo</w>\ncan yon\nwal e\nsu mi</w>\nsi ders</w>\ninu it</w>\n? .</w>\nprofession alism</w>\ndr acing</w>\nplat oon</w>\np ons</w>\nout bound</w>\nmaple leafs</w>\nde sol\ncen cy</w>\na than\nver ma</w>\nru bbing</w>\nok an\nðŁĳ ł</w>\nmull ins</w>\nauthent ic\nÅ į\nalman ac</w>\nga ia</w>\nbb q\non imo</w>\nke h\nty a</w>\ntou ts</w>\ny av\nre posit\n, .</w>\nwi ght\nse eyou\ncal lof\ndone sia</w>\nbar gaining</w>\ngr anth\nsd su</w>\namphi theater</w>\np su\nre watching</w>\nwine tasting</w>\npeak district</w>\ndete cting</w>\nthur man</w>\nphe e</w>\nèª ķ\nu mich\nre r\nsculp ted</w>\ngo le\nname sake</w>\nðŁĶ ģ</w>\nserv icing</w>\nbau gh</w>\npu gh</w>\npen cil\ndar th\nmunch kin</w>\nat orium</w>\nten ers</w>\nsun y</w>\nrolling stones</w>\nmag ing</w>\nstar rer</w>\ni dris</w>\nfe instein</w>\nag ron\nâĺºï¸ı âĺºï¸ı</w>\nsupervis ed</w>\nchamele on</w>\naggre gate</w>\nsucce ssive</w>\nmo gul</w>\ninst yle</w>\npol dark</w>\ncustom e\nohio state</w>\nha ya</w>\nci des</w>\nbroker age</w>\nangel ou</w>\nfifa wwc</w>\nde forestation</w>\nal ton\npam ph\nhu gged</w>\nho bo</w>\nchange able</w>\nku ber\nbur roughs</w>\ndemon etisation</w>\ncape cod</w>\nvers atility</w>\nor ice</w>\nle ila</w>\nwomenin science</w>\ntu a</w>\nhe dges</w>\nembarrass ment</w>\nali fe\nso ars</w>\nni ghter</w>\nhy mn</w>\ngi pp\nchas u\ntech s</w>\nni all\nk illa</w>\nhi ka</w>\ncam els</w>\nvalu e\nÂ ¢</w>\nsc oops</w>\nmah moud</w>\nclu sive</w>\nadri ana</w>\npac o</w>\noz il</w>\nun as</w>\ntransl ations</w>\nwhispe rer</w>\ns bi</w>\nbu xton</w>\nbio tics</w>\nindi ffe\nken ney</w>\nk lar\net ching</w>\nbarra best</w>\ninst ability</w>\nse ine</w>\nvo tel\nblo gged</w>\nwhis key\nmy space</w>\nt ant\nlan dia</w>\ngive back</w>\nillu s</w>\naw ak</w>\nac ab\nf bloggers</w>\ncloud computing</w>\nblat ant</w>\nsyri ans</w>\nband ra</w>\nsty n</w>\nan em\nke ted</w>\nkar thik</w>\nbarun sob\npin ot\ngu bernat\ngay e</w>\narti ste</w>\ni fied</w>\nconven tions</w>\nhu an</w>\ngeni uses</w>\neeee ee</w>\nfol ly</w>\nsomer ville</w>\npride month</w>\nðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸</w>\nchemo therapy</w>\npaul s\nbak ar</w>\nìĦ¸ë¸ Ĳ</w>\ntaiwan ese</w>\nfol lo\nc ss\nre ign\nnn nn</w>\nfla un\ncatastro phe</w>\niti es\nfrag ments</w>\nextre mists</w>\nym oun\ncar men\neze kiel</w>\nconne cting</w>\nse h</w>\nman ta</w>\nremodel ing</w>\nwe ymouth</w>\nat oms</w>\nce m</w>\nne well</w>\nlu mi\nthe open</w>\nmo c\nmili band</w>\ng land</w>\nz shq</w>\nmag gie\nmani acs</w>\nm sp\nad y\ncre ams</w>\nle anne</w>\ne sta\npy g\naf finity</w>\npray er\ndun bar</w>\nligh troom</w>\nac adi\nwyn onna\nroman tic\nstate dept</w>\nsick le</w>\nwh os\nlam o\net our</w>\nfin ity\nshru b</w>\nshar pen\npun dit</w>\ned on</w>\naf ore\nmar s\njeff ery</w>\nter ps</w>\nmedal list</w>\nkath arine</w>\naccu sing</w>\nta z\nroy d</w>\nfrom home</w>\nconfron tation</w>\nalle gh\nðŁĳī ðŁĳī</w>\nrefresh er</w>\nran veer</w>\nnever land</w>\njo jo\nlu crative</w>\nen am\nca ver\npa edi\nman jaro</w>\nflu ids</w>\nthe ssal\noppre ssed</w>\nmu ss\njoh anna</w>\nØ ®\ncn g</w>\nbuil dthe\nsett les</w>\ns ith</w>\nfu ego</w>\ncl amp</w>\nar ag\npay er</w>\nted x</w>\nmand y\ninter stellar</w>\nfr c</w>\nch and</w>\nb cc</w>\nmo lo\nlen til</w>\njohan sson</w>\ngrims by</w>\nnature lovers</w>\nðŁļ¨ ðŁļ¨ðŁļ¨</w>\nshin de</w>\nx in</w>\ninternational dayof\ntransiti onal</w>\nsat a</w>\ncad dy</w>\nwo d</w>\nif u</w>\nha ys</w>\nholl yo\nj ang\nir c</w>\nco im\ngrad able</w>\n\" \"\nðŁį ´\nà¦ ¾</w>\na el\nn yo\nwest lake</w>\ntime out</w>\nsof i\nphenom ena</w>\ncultiv ation</w>\nag no\nun armed</w>\nso t\ncon j\ngen o\nroyal navy</w>\nnutriti on\nfair mont</w>\nti relessly</w>\nsn g</w>\nre ty</w>\nmic a</w>\nlu cent</w>\nslo ane</w>\ndroo l</w>\nriz al</w>\nod ell</w>\ncritici zed</w>\n. '\"</w>\nla ze</w>\ndeser ted</w>\nco der</w>\npra s</w>\nl illian</w>\nitiner ary</w>\ndav y</w>\nan ap\nwhi pping</w>\nhobo ken</w>\nkare ena</w>\nçľ Ł\nvi us</w>\nter n\nnan tucket</w>\nmis understood</w>\nbu laga</w>\nst ant\nchin ook</w>\nz am</w>\nreli es</w>\nd ss</w>\ned mond</w>\nsket chy</w>\nm ell</w>\nfe x\nrec tor</w>\ndist ill\nday dream</w>\nwine maker</w>\nri pley</w>\nbillion aires</w>\nhel ene</w>\nati f</w>\ncul prit</w>\nbertr and</w>\nwou ldnt</w>\nma pped</w>\nv ak</w>\ngla dly</w>\nparliam ent\nkidlit art</w>\nware ness\ngoli ath</w>\nâĨ ĵ</w>\nview point</w>\ntat ted</w>\nfu ls</w>\ndor sey</w>\nang lers</w>\nli ds</w>\nki ya</w>\nbow les</w>\nbe h</w>\nb ite</w>\ncompati bility</w>\nance stral</w>\npro x\nbeha ved</w>\ngubernat orial</w>\nch field</w>\nsab an</w>\nz h</w>\nteen y</w>\nshibu ya</w>\nholli day</w>\npan cy</w>\nâĿĦï¸ı âĿĦï¸ı\nseun gri</w>\n? ,</w>\nðŁĩ¦ ðŁĩ·</w>\nim itation</w>\nimpac tful</w>\nany i</w>\ngene vie\naÃ± os</w>\nbate man</w>\ngli der</w>\naf ar\nra sheed</w>\neffor tless</w>\nsh war</w>\ndach sh\ner un</w>\nat os</w>\nkin i</w>\nch d</w>\nkha ki</w>\nk lin</w>\nfelici dades</w>\nbel o</w>\nas l</w>\nto ppers</w>\nfin ley</w>\nstac ey\nrigor ous</w>\nkar ting</w>\nle ppard</w>\ncar michael</w>\nbe ret</w>\nc se</w>\nak hi\nmer ingue</w>\nab an\nha ke\nger i\ner jee</w>\nre sto</w>\ncomm anders</w>\npr it\nfl or</w>\nad ven\nex termin\nremain der</w>\nå Ĳ\nes g</w>\nmartin o</w>\nlulla by</w>\n| @</w>\nmi gn\nin store</w>\nbig bang\ncor di\ncau ley</w>\nante bellum</w>\ndg ate</w>\ncro ck\nspan dex</w>\nscaf folding</w>\nore os</w>\nê°ĵ ìĦ¸ë¸Ĳ</w>\npom ona</w>\nma uro</w>\nuni versi\nre mi</w>\naf ootball</w>\nt ant</w>\nsm alls</w>\nne h</w>\nworl do\ntropic al\nmor ph</w>\njav elin</w>\ngla r</w>\narqu itec\nreminis cent</w>\ntu bs</w>\nspide y</w>\nmake u\nsyl la\nprogressi ves</w>\nblo t</w>\nshor ten</w>\nkeep in</w>\nch ak</w>\nang st</w>\nsuper food</w>\ndecad ent</w>\nston y\nneuro logical</w>\nar boretum</w>\nann ak\nfe ma</w>\nper cu\ndis respectful</w>\nsmall biz\nlo x</w>\nco om\nc sc\nbs bi\npre valence</w>\nhim ss</w>\nesp an\nmo ga\nfr ampton</w>\nsky map</w>\nmas se\nlevi athan</w>\n( ).</w>\nnoctur nal</w>\ncar ameli\nang or</w>\namne sia</w>\noutsi ders</w>\nshe alth\nrhin o\nant ag\nag io</w>\nðŁĴ° ðŁĴ°\ntake me\nkab addi</w>\nc si\nm sh\ncoch rane</w>\nthessal oni\nsil a</w>\nha us\ndu sting</w>\nobe se</w>\nmack lemore</w>\nmani sh\nlen in</w>\nm dc</w>\ngro wn\nshef field\ns rs</w>\nke le\ncar son\nch um</w>\ndah lia</w>\ncan tore</w>\nopp o</w>\nhow ling</w>\ncyber crime</w>\nsur realism</w>\nsc ran\nfa iz\nthre n</w>\nrac ists</w>\nr out</w>\npk not</w>\nse mana</w>\nsin i\nmc cull\nma chi\nalfon so</w>\ny b\nsar dar</w>\nkend rick\nden g</w>\nreci pro\non f</w>\ndoom sday</w>\nbri bery</w>\ncustom iz\nart is</w>\nc pi</w>\nðŁĻĪ ðŁĻĪ</w>\nsla va</w>\nlet te\nen s\nâĿ¤ï¸ı ðŁĺĺ</w>\ncra yon</w>\nad an</w>\ntr c</w>\nmigr ate</w>\nsimp son\nrow ers</w>\nking sley</w>\nfarmers market</w>\nshee han</w>\nne phe\nbor non\ncar ton</w>\nmic key\nall ure</w>\nu lu\nsli pknot</w>\nheb do</w>\ngui do</w>\ndog celebration</w>\nonline marketing</w>\nacceler ating</w>\n) ..</w>\norigin ated</w>\nmacar oni</w>\ned tech\nout field</w>\nmit z\ndisc us</w>\nadverti ser</w>\nman or\nha shi</w>\ndescri p\ncap ita</w>\nful bright</w>\nrecep tor</w>\ncon n\ncon ey</w>\nspion age</w>\nr attle</w>\npre st\nu li\nblog post</w>\nacker ay</w>\n) âĢ¦</w>\nred velvet</w>\nmat th\ninspir ing\nb sd</w>\nker ri\npo con\nmil lar</w>\nre pur\naccent ure</w>\nä ¹\nram bo</w>\nragnar ok</w>\ndele ting</w>\nbritish museum</w>\npat ory</w>\nleip zig</w>\nflori an</w>\nsci fi\nin ers</w>\nbr ate</w>\nyo y</w>\nmelis sa\nab er</w>\nma sa</w>\npo te</w>\nmosquit oes</w>\ntranspl ant\nr pa</w>\n; ))</w>\nbast ille</w>\nyl an</w>\njoye ux</w>\nmelo dic</w>\ncap tions</w>\natri st</w>\nroch dale</w>\ngott i</w>\npew die\ncuties aturday</w>\nwho is\naqu aculture</w>\ntiv a</w>\nsp el\nhe ss</w>\nha ji</w>\nfred die\nco per\nbrand o</w>\nv k</w>\nphoto book</w>\n* ,</w>\nmy dayin\nmicha ela</w>\nbrune i</w>\nsr ini\nin te</w>\nÄ ±</w>\nde ol</w>\nd fc</w>\nsepar ately</w>\nbun d</w>\nve sts</w>\nto c\nme ck\nrein forced</w>\nconstra ints</w>\ncar roll\nsq ft</w>\nre ver</w>\ncam per\nbird man</w>\nin action</w>\ngener ators</w>\ntriumph ant</w>\npe sts</w>\no vo\ngy pt</w>\nal amo\nsc aled</w>\nsuresh pp\nsd n</w>\nis mo</w>\ngi os</w>\n) @</w>\njustic eleague</w>\nrestaur ant\ngab i</w>\nden gue</w>\nnext gen</w>\nexemp li\nap ex\ninspir ational\ndown side</w>\nkid z</w>\nu pl\net na</w>\nalvar o</w>\nfel dman</w>\nbar net</w>\nm ha</w>\nes ch</w>\nbloo ded</w>\n>>>> >>>>\nkan i</w>\nho fficial</w>\ncasablanc a</w>\nbir ds\nty ga</w>\nsw amp\no day</w>\nnew castle\nnb ap\nci sion</w>\ncho ols</w>\naf lo\nne p</w>\nmon ton</w>\nak b</w>\nsuper model</w>\ndown time</w>\nth os</w>\nsc wx</w>\nsnoo py</w>\nag greg\nyo ke</w>\nnor cal</w>\nwe tt</w>\nprolon ged</w>\nme tast\nbeat er</w>\nf ta</w>\nt lap</w>\ndisgu sted</w>\ny h</w>\nvoice over</w>\nitch y</w>\nip c</w>\nðŁİ ¾\nphe asant</w>\nstra its</w>\nram pant</w>\nj g\nfer til\nassu res</w>\nfortun es</w>\nsal inas</w>\nliz ards</w>\nkett le\ni bs</w>\ncyn thi\nhe g\nmc cr\nsoccer oos</w>\nhappen ings</w>\ncor den</w>\nðŁĺĤ ðŁĳĮ</w>\nt ches</w>\negre t</w>\nwolver ines</w>\ncongratul ated</w>\nho gg</w>\nbott ling</w>\nwr i</w>\nfer ri\nbo sch\naf ire</w>\nog den</w>\ns jo\nj dm</w>\nsv t</w>\ncon tex\ntol lywood</w>\nmin k</w>\nme se</w>\nsuper sonic</w>\nop oulos</w>\nå ¸\nâĶ ģ\nknuck le</w>\ngu ise</w>\ngam i</w>\nchu cky</w>\nz inger</w>\nradi al</w>\ncompla ined</w>\nbo da</w>\nfe tal</w>\ndiscipl ines</w>\ncor ro</w>\nðŁĩ®ðŁĩ ¹\nop ted</w>\nfiltr ation</w>\nad nan</w>\nem cee</w>\nmi stre\ninsom ni\nfer gus</w>\ntra jec\non don\nmed tech</w>\ntanger ine</w>\nmadra s</w>\ngru e\ncab s</w>\nz hu\nsureshpp rabhu</w>\ninsul ated</w>\nday swild</w>\npp m</w>\nband ai</w>\nv day</w>\ns ff</w>\nsqu id\nlo thing</w>\nnot dead</w>\nexpre ssive</w>\ncu ll</w>\nala stair</w>\nx u\nup front</w>\nfish ers</w>\nen es</w>\num d</w>\ndis missal</w>\nsti er</w>\nsel s</w>\nlu st\nre active</w>\nprote ster</w>\neyel ashes</w>\nal im\ngoo de</w>\ngre eng\nda ir</w>\ncom pen\nanush ka\nproto typing</w>\nma pu\nbear ings</w>\nðŁĲ Ł\nfor me</w>\nbsbi botany</w>\ntimo thy\nout skirts</w>\nam bed\nare tha</w>\nwend ell</w>\nstre aks</w>\nni m</w>\nk pk</w>\nsne e\nfit ter</w>\nquo ta</w>\np ate</w>\nwin ning\nðŁį Ń</w>\nsho pping\nma inst\ncul ver</w>\nste vie\nmcfad den</w>\ncounter parts</w>\ngren fell</w>\nfol som</w>\ndor set\ntech crunch</w>\nâ¬ ħï¸ı</w>\ntip tuesday</w>\nus l</w>\ntre x</w>\ngeor gie</w>\nranveer official</w>\nlic ks</w>\nse wn</w>\nk f</w>\n' âĢ¦</w>\njap s</w>\np ate\north op\nfe sta</w>\nstra s</w>\nmon tal\nhammer smith</w>\nfore most</w>\nwido ws</w>\nmad re</w>\nite z</w>\nmito chondri\nlig ans</w>\nz ona</w>\ncari bou</w>\nm ss\nandre i</w>\nweather channel</w>\ngh c</w>\n: ...</w>\nta ft</w>\nawe ather\nal isation</w>\nbru tal\nbliss ful</w>\nnik ola</w>\nmal icious</w>\nq m</w>\nmpg vip</w>\nbro die</w>\nbl itz\napplau d</w>\ndri bb\nv ague</w>\ndog go</w>\ntransl ating</w>\ninterpre ted</w>\nhat ched</w>\nge tyour\nbenefici aries</w>\nspar ring</w>\ncaes ars</w>\naw illiams</w>\nla hat</w>\nbro ke\nti mp\nvirtu es</w>\nrel ying</w>\npie tro</w>\nk tn\nici sts</w>\npab lo\nlou i\na ag\npn pp\ncha st\npul ses</w>\nfini sh\nusair force</w>\ntype writer</w>\nthomp son\ndog s\nut to</w>\nãģ į\nsand al</w>\nnew ly\ndo ge</w>\nz w</w>\nwan kers</w>\nne gr\nmu cha</w>\ndetermin es</w>\nblack fish</w>\nsk unk</w>\nmu ps</w>\ninstru ment\nphy to\ndaysto go</w>\nskin ned</w>\nhai der</w>\ncon ten\nðŁĲ¾ ðŁĲ¾</w>\nwe iler</w>\nundoub tedly</w>\nchair ing</w>\nwall is</w>\nsh ard</w>\nzind abad</w>\nadul t\nabsor ption</w>\npre sto</w>\ndeplo ying</w>\ndrum mond</w>\nbattle front</w>\nseag ulls</w>\nhow dy</w>\njuda ism</w>\ndes de</w>\npart ition</w>\nâľ Ŀ\nno logy</w>\nnational bestfriend\nlesn ar</w>\nfilm fare</w>\nco asts</w>\nchristen sen</w>\nac an\nmb u</w>\nco pped</w>\nru bble</w>\nsw c</w>\nfun nier</w>\nfar ther</w>\nwhere as</w>\nnano technology</w>\nwith stand</w>\npil low\nbow ers</w>\nto pe</w>\nit ly</w>\ncon fit</w>\nma kar\ncomfor ts</w>\nbo sh</w>\ncli pper</w>\nbal la\nsti k</w>\nmil b</w>\nsafe guard</w>\nmusi que</w>\neas port\nya z</w>\npad ded</w>\nbad er</w>\nfore ign\nchop in</w>\narchi ve\no ka\ntran sporting</w>\ntml talk</w>\naj it</w>\nconsequ ence</w>\nsc roo\nff o</w>\ncollabor ated</w>\npug chat</w>\nye mi</w>\njav ed</w>\nau burn\no of</w>\nma w</w>\nsau cer</w>\nmiti gate</w>\ni les</w>\nevangeli st</w>\nter ie</w>\nre cl\nindic tment</w>\ncat a</w>\nbright ness</w>\nmay the</w>\nwhim sical</w>\nun lv</w>\nkey word</w>\ncu min</w>\nmed way</w>\nwest world</w>\ntra w\nim posing</w>\nform ity</w>\ncoul ter</w>\nab z</w>\nny pd\ngrass i</w>\nkel sey\nqld pol</w>\nclock work</w>\nf dr</w>\ndi anne</w>\nâĺ ĳ</w>\nad h</w>\np ann\nbra vely</w>\nae ge\nun lawful</w>\nver di</w>\npocaly pse</w>\nphar o\nkar la</w>\nreson ance</w>\nma stiff</w>\nla dak\nbu u\nma iled</w>\nhi i</w>\ncraw ley</w>\ntor rent</w>\nmach ado</w>\nliby an</w>\neffort lessly</w>\nfal sely</w>\nq vist</w>\nke ef</w>\ncraf thour</w>\ncheri shed</w>\nval kyrie</w>\ns ari\nkal amaz\nbe he\nðŁĮ Ļ\nth im\nro ddy</w>\ncol trane</w>\nbut chers</w>\nach im</w>\nwk end</w>\nawk ward\ncab rera</w>\n:) )))</w>\nfran c</w>\ndecl an</w>\ncon dos</w>\na ja\npandor amusic</w>\nchar ter\nph ill\nmon trose</w>\nhatch back</w>\nhandic app\ngre aves</w>\neucalyp tus</w>\nut most</w>\nt son\nbur ton\nmid wives</w>\nin cur\nðŁĺį #</w>\nmoo d\ncompre ssed</w>\ntom a\nmust ang\nmo g</w>\nas ana</w>\nte stic\nsho tel</w>\nin sol\ncor sair</w>\nnh q</w>\nben ny\nsm ma</w>\nkap ur</w>\nin con\njon as\nener gies</w>\ndon al\nas ad</w>\nse z</w>\nn pa</w>\narchi ved</w>\nstimul ate</w>\ndo p\nhy d</w>\ngri eving</w>\nãĥ Ī\nron a</w>\nwhy te</w>\ntree house</w>\nss ell</w>\nsand ro</w>\nko bo</w>\nther most\nse clu\nhi ya</w>\nge ez</w>\nmam as</w>\nprisc illa</w>\nflav oured</w>\nfas s\nw old</w>\nmaker space</w>\ncospla y\np tv</w>\nhappy valentinesday</w>\nsequo ia</w>\nlove craft</w>\ngu an</w>\nd tm</w>\nci i</w>\nyoko hama</w>\npos thum\nre q</w>\nðŁĶµ âļªï¸ı</w>\ngalat asar\ndol by</w>\nhamp tons</w>\ndisturb ance</w>\nstone henge</w>\nok c\ndisrup ting</w>\nmonth sary</w>\njun gle\nhead lights</w>\ndu stin\nmicro sof\nhappy mothersday</w>\nko ko\ngra zi\nte sto\nna idu</w>\nmal ay</w>\nari al</w>\nru mb\nab oo</w>\nhar man</w>\ntra pe\nspo ils</w>\nje ho\ngo dly</w>\nlock screen</w>\nz un\npi ous</w>\nma gento</w>\nl enders</w>\nprob able</w>\ncorpor al</w>\nm our</w>\naw al\nsu a</w>\ncall me\nton ne</w>\ngo vin\ndevast ation</w>\nx j</w>\ngear box</w>\nwar lock</w>\nper me\nit ate</w>\ngaza underattack</w>\ndu val</w>\nparas ite</w>\nclement e</w>\nle th</w>\ni va</w>\nfro zen\ntho les</w>\nto bin</w>\ncair n</w>\ns ill\nluc kiest</w>\nconver ts</w>\nst ale</w>\npan cra\neuro pale\nwis dom\nsch ur\nì ¶\nverti go</w>\nbi j\nu bc\nnu re\nrighte ousness</w>\nmt c</w>\nfactor y\nver st\nrevers ed</w>\nhur i</w>\nhee chul</w>\nfab er</w>\nar r</w>\nul ous\nven om\nph at</w>\ngreen ery</w>\nbra dy\nÃ ¦\n: ((</w>\nnever giveup</w>\ndi sha</w>\nmo ta</w>\nhealth care\ndun ham</w>\ndex po</w>\nden zel</w>\nbb ins</w>\nf ics</w>\nwh am\nmc g\neli an</w>\nwat a</w>\nstr alia</w>\ntel lu\npe sky</w>\nspin off</w>\nar moured</w>\nre acted</w>\ndo fficial</w>\nte du</w>\nsag ar</w>\nmor ally</w>\nparalle led</w>\nfi os</w>\ndow ner</w>\ndau gh\nre do</w>\nworld cup\ntari q</w>\nbar ne\nglaci ers</w>\noc cult</w>\nbarbar ian</w>\nher mosa</w>\n!! !)</w>\ny ur\ninter nation\np ss</w>\nsit u</w>\np int\namerican air</w>\nsw am</w>\ndopp ler</w>\nðŁĴĻ ðŁĴľ</w>\ncincode mayo</w>\nle van\nhell enic</w>\nmc ne\nju di\nyu h</w>\nst x</w>\nqu are</w>\nðŁĺĤ .</w>\nsti g</w>\ng els</w>\nmot ley</w>\nhard work\neuro zone</w>\ne ad\nç¥ Ń</w>\nseab ir\nci us</w>\nla id\nalpac a</w>\npresu mably</w>\npewdie pie</w>\nboo ted</w>\nam ari\ntam ine</w>\nsol ace</w>\nbar row\nacade mies</w>\nx ian</w>\nom ination</w>\ndun geons</w>\nb ma</w>\nde ity</w>\nai k</w>\nstab il\nhir a</w>\naffection ate</w>\nving ne</w>\nnew port\nãħĭ ãħĭ</w>\nthir ds</w>\nre tains</w>\naroma therapy</w>\nski er</w>\nni ma</w>\ndo pe\ncr inge</w>\ncon domin\nto or\nanim ator</w>\nsar aj\nseas cape</w>\nminim alism</w>\nlake shore</w>\ncalla way</w>\nberg man</w>\nà¤ Ĺ</w>\nwhisp ering</w>\nstupi d\nri ghtful</w>\nrequ is\nir n</w>\nse va</w>\nut pol</w>\ntuber culo\nsqu ish\nde but\ngovern mental</w>\nchrist ine\nall man</w>\nweap on\ns ito</w>\nbur i</w>\nlo lita</w>\nleaf y</w>\nfu ch\ntin ted</w>\nmck en\na hahaha</w>\nðŁĩµðŁĩ ¹</w>\nrepe al\nne gan</w>\nðŁķ Ĭ\ntail gating</w>\ngame insight</w>\nðŁıŁ ï¸ı</w>\nyaku za</w>\nz t</w>\nti ring</w>\npro posing</w>\nbow lers</w>\ntra itors</w>\nak shi</w>\ncler gy</w>\ncit o</w>\nup sets</w>\ntu scal\nsymph onic</w>\nsil ently</w>\nshu ff\nblack well</w>\nðŁĺĤ )</w>\nko be\nrober to\nri dg\ndc u</w>\nmer ino</w>\nft p</w>\neast side</w>\n. ~</w>\nnb l</w>\nmn leg</w>\nts for\nfrau dul\nca pping</w>\nin my\ngymna st</w>\nston es\nss in</w>\ntwe aks</w>\nshag gy</w>\noak land\ndem sin\nsang ria</w>\nmm va</w>\nhen nessy</w>\ndown ton</w>\nri ghtly</w>\nin it</w>\naga ve</w>\nob last</w>\nnorthe ast\nfriend ship\ndal a</w>\ntro phy\nðŁĳ ½\nmag in\nmargar itas</w>\nê ·\nww fc</w>\nfa sh\ndi ke</w>\ncu d\nchar t\nðŁĳ ®\nrefuge es\njop lin</w>\nn cs</w>\nimp y</w>\nfirm ware</w>\npas cu\nflam in\nhealth tech</w>\nbell letstalk</w>\nw aka</w>\nol ls</w>\nla go\nco wan</w>\nbombar dier</w>\nsh ome</w>\nðŁĻ ħ\nmc master</w>\nna ve\nwell s\nu ta\ntell ers</w>\nmis fits</w>\nkap il</w>\nface off</w>\naf firm\na pro\nwhit epaper</w>\nsuper yacht</w>\nspeci mens</w>\nal located</w>\n... ,</w>\n- __\nka w</w>\ndachsh und</w>\ndjo ker\ns work</w>\nqui ere</w>\nor um</w>\nðŁĲ ł</w>\nsom m\nc mt</w>\ningh our</w>\nskin ny\nlgb ti</w>\ngi ggles</w>\nbreak away</w>\nresear ched</w>\npar ity</w>\nmy al\nms l</w>\nre tained</w>\nsi vity</w>\nmake inindia</w>\nsol ves</w>\ndefam ation</w>\nwal tham\nsri racha</w>\nroad way</w>\nconcep tu\nal in\niw ant\nå Ī\ndel ft</w>\ntender loin</w>\nga ins\nfaul ts</w>\nsw ire</w>\nst ellen\npol lo</w>\ndy ne</w>\nbornon thisday</w>\nasdf ghj\nsq l\nsali m</w>\nadvis es</w>\nvo ip</w>\nìĹĳ ìĨ\nun touched</w>\nshe il\nontari o\nuph ill</w>\nso bre</w>\nde shi</w>\nnov ella</w>\ndu tton</w>\ncraw fish</w>\nØ§Ù Ĩ\nma a\ntw ine</w>\nkal in\nðŁĩµðŁĩ Ń</w>\nye ss\nbrook s\nhoo siers</w>\nton ka</w>\numbrel las</w>\nay ers</w>\nate am</w>\nacqu iring</w>\nsu ction</w>\nÃ¤ n\nwi es\ntari ans</w>\nsoci o</w>\nmat tb\nshepher ds</w>\no so\ncharity tuesday</w>\ns logans</w>\nninj as</w>\nal bat\nby te</w>\nbash ir</w>\ntrampol ine</w>\nmydayin la</w>\ni ja</w>\nbas el\nror y\ngol die</w>\nfi rec\nun noticed</w>\npecu liar</w>\nsch a\nker son</w>\nmour ns</w>\nliquid ity</w>\nqu ipment</w>\nhi bs</w>\nar s\naeron au\nslide show</w>\nsla bs</w>\ndelici ousness</w>\nsk itchen</w>\nhta fc</w>\nfull erton</w>\ncre ighton</w>\naer ob\nprocrastin ation</w>\naz ores</w>\nwhite hall</w>\nuss occer</w>\nmedi ation</w>\ndjoker nole</w>\nand me</w>\num en</w>\nnoxi ous</w>\njo ss</w>\nili fe</w>\nanni vers\nsudan ese</w>\net res</w>\nunder mine</w>\nwhole foods</w>\ndiso be\nkor i</w>\nade le\neli z\ncan ti\nal on</w>\ngymna sium</w>\nsarko die</w>\nmeteoro logist</w>\nyl de</w>\nste en\nstamp collecting</w>\nnas al</w>\nlo tt</w>\nfran ks</w>\nex ol</w>\nack i</w>\ngood year</w>\nanimal rights</w>\ny les</w>\nvio lets</w>\nmm es</w>\ns thel\nra pping</w>\ntu scan</w>\nwai ver</w>\ntur ner\neat local</w>\nnorthe asthour</w>\nanim ations</w>\ntom morow</w>\nt sh\nff ame</w>\nbra e\npe tron\nglam our\nbr yn</w>\nd cs</w>\nbal es</w>\nðŁĶ ¶\nbro v\nbre v</w>\nb ons</w>\nphysi que</w>\ncar ne</w>\nx e\nelix ir</w>\nvol ved</w>\nl oma</w>\nìľ ł\næ ĺ\nvan u\nri gs</w>\nbal ance\nva res</w>\nbon ita</w>\nsprink le</w>\nperfec to</w>\ndi on\nle ak\ncalcu tta</w>\no ba\nd ma</w>\nc mon</w>\ntun er</w>\npneu monia</w>\nbo gus</w>\napolo ge\ncl ough</w>\nbor ne\n)) ))\nrevi ved</w>\no varian</w>\nner f</w>\nc legg</w>\nfan fest</w>\ncho u</w>\nreali zes</w>\nmc n\nli gu\nleg alize</w>\njust saying</w>\nfor ster</w>\nbo sni\nk hi</w>\nin dom\nhei del\nen cryp\nsi ss\ned di\nmar bles</w>\nbrisban e\ny ing\npre paid</w>\nwal sall</w>\ncooper ate</w>\norche str\nmar isa</w>\nho wie</w>\nche wy</w>\nbren ner</w>\nandro meda</w>\ne gan</w>\nsto cki\ncav endish</w>\nag an\nban o</w>\nde ir\ngo g</w>\nbl k\nre thinking</w>\nch ig\nrhe u\nsni p</w>\np eng\nsemin ole</w>\nm swx</w>\nan nex\nlyn da</w>\nlewisham ilton</w>\ncu mul\ntb l</w>\ndolph in\nagu ero</w>\n........ ....</w>\npre lude</w>\nat our</w>\ngr anger</w>\ntoo ting</w>\nro tun\ndis ar\nhome items</w>\nda res</w>\n**** ****\nðŁĳ Ĩ\ncompre h\njin x</w>\nas well</w>\niri e</w>\ncircul ating</w>\nðŁĲ ¥</w>\nover board</w>\ncultiv ate</w>\nrhe tt</w>\noriente ering</w>\nca k</w>\nbal kans</w>\ns itt\njas min\nbritney spears</w>\nro tor</w>\nse aling</w>\ng bc</w>\noc ci\nf as</w>\neman cip\ncom er\nwar time</w>\ntic kle</w>\nson ny\npac es</w>\nlog g</w>\nat rix</w>\nsr p</w>\ng win\ndo bbs</w>\nuz be\nthe wanted</w>\ndru sh</w>\nex tru\nm icky</w>\nhonore es</w>\ndar win\nre dux</w>\nmm j</w>\nram i</w>\njalape Ã±o</w>\nio c</w>\ndo ver\nju ju</w>\nwhit ney\ns eng\nen ly</w>\nau ch</w>\narchipel ago</w>\nvigil ant</w>\nman gal\nwil dest</w>\nparano id</w>\nhal i</w>\nbb ly</w>\nsanc tioned</w>\nreal ms</w>\ncon co\nu ddin</w>\nc sk</w>\nplay time</w>\nlibr a</w>\nsav ag\noc tane</w>\nrec tan\nre turn\npar rish</w>\nmor rha\ncc p</w>\nc mu</w>\nsa iled</w>\nse vent\nro sie\npil ing</w>\nhe w</w>\nboar ded</w>\nseg ments</w>\nneph ro\n( .</w>\ncr ats</w>\nbak es</w>\nðŁį ¸\nback tothe\nsibl ing\nkirk land</w>\nke o\ngu wa\nbre ads</w>\nðŁĺľ ðŁĺľ</w>\nt q</w>\nharas sed</w>\nga u</w>\nwil bur</w>\nj isoo</w>\nep er</w>\nli sam\ntri ppin</w>\nsh ino\nru kh\nbeast mode</w>\ncho a</w>\ninst aweather\nrich land</w>\ngar i</w>\nfe z</w>\ncowboy snation</w>\nfur suit</w>\nk run\na en\nsycam ore</w>\nse gun\nent ennial</w>\ndi h</w>\no ax\ndemsin philly</w>\nðŁĻ Ģ</w>\nsn hl</w>\npen nies</w>\npass words</w>\nma kin\nty e</w>\nd eng\nkni gh\njeep life</w>\nhel pline</w>\na for\nzz zz</w>\nste amy</w>\npic ker</w>\niter ate</w>\nhappen ingnow</w>\nki b\nbloom berg\nmartyr dom</w>\nbul ly\nassor tment</w>\na hora</w>\nzo e\nno i\nillu stri\nagar wal</w>\np sc</w>\nelectr onica</w>\nrecruit er</w>\ngar diner</w>\nrad ha</w>\nnaf ta</w>\ndot net</w>\npi ero</w>\ngeor g</w>\nbel s</w>\nðŁĺĤ ðŁĺį</w>\ntuberculo sis</w>\nrun nin</w>\nmor is\nhaul ing</w>\nev oc\nbre thren</w>\nsha ir</w>\nframe works</w>\na stu\nri gid</w>\nku ma\nkre me</w>\njin nah</w>\ninsu rers</w>\nny u\nf ere</w>\nnol lywood</w>\ngood vibes</w>\n- ...</w>\ntoi le\nsk ril\ninstaweather pro</w>\ncze ch\npa vel</w>\none piece</w>\nnike plus</w>\nfi let</w>\ncav ity</w>\nðŁı½ âĢįâĻĤï¸ı</w>\nðŁİ £</w>\ndra stic</w>\ndail ys\nsiam ese</w>\nre bu\noste o\nlar k\nf re</w>\nsh elling</w>\np Ã©\nglad ys</w>\nðŁıĢ ðŁıĢ\ngusta ve</w>\nsubmer ged</w>\ngrand stand</w>\natt u</w>\nwon t\nf pv</w>\nb ley</w>\njon i</w>\nang ames</w>\nweigh ted</w>\nal ou\nà¤ ¶</w>\nles bians</w>\nf j\nanni es</w>\nam l</w>\ndor ia</w>\ndav in\nbe ta\ncan c\nmadewith unity</w>\nha j</w>\nbad lands</w>\nmu l</w>\nblu ec\npa wn</w>\ncov ington</w>\nneuro logy</w>\nhtt weets</w>\ndysle xia</w>\nthel ove</w>\nne at\nfork lift</w>\nautom ate</w>\nune ven</w>\nmonte ss\nhe in</w>\nha g</w>\nrel ics</w>\ncompetiti veness</w>\ncan elo</w>\nmar tens</w>\nbullet proof</w>\nsk ittles</w>\ng ya</w>\npri mo</w>\nameric afirst</w>\nwoo o</w>\nabor tions</w>\n?? !!</w>\nma che\nld ers</w>\nrl ly</w>\npreli ms</w>\ndirec t\ncour se\nswa in</w>\nsuper cell</w>\nec centric</w>\nsting ray</w>\nple ts</w>\nwil cox</w>\nwest in</w>\nokan agan</w>\nkir an\ncar bo\nbomb ings</w>\nra rest</w>\nbo h\ngaw d</w>\ndi gg\nmo ana</w>\nenti rety</w>\nen closed</w>\ndodge ball</w>\npar ton</w>\nmilky way</w>\nat r</w>\nthorough bred</w>\nre ally\nqant as</w>\nepiph any</w>\nine e\naero smith</w>\nspi eth</w>\nar thro\nell ini</w>\ndu bu\nbra ving</w>\nâļ½ âļ½\nre structuring</w>\nillumin ate</w>\nequ ili\nmp i</w>\nash ton\npony tail</w>\nma scots</w>\nflat tering</w>\ncru m\nast a</w>\nà® °</w>\nstranger things</w>\nbar nab\nØ± ÙĬ\nmake shift</w>\ngot cha</w>\nwill am\ncho irs</w>\nkilom etres</w>\ngho sh</w>\neu than\ndol ly\nun ning</w>\nthe ar\ncre we</w>\nw sw</w>\nj ace</w>\ndis miss</w>\nke an\nho ta</w>\nkh at\n~ ></w>\nthir u\nren dez\nhart man</w>\ntee ssi\ncas ca\nz ah</w>\nhydr ange\nfo d</w>\naw p</w>\nmzan si</w>\nthick er</w>\nnago ya</w>\nne va</w>\nsti que</w>\ncast el\ndam ian\nthere by</w>\nji ang\nale k</w>\nmusic islife</w>\nra q</w>\ncalla han</w>\ngou ache</w>\nsomal iland</w>\nsean hannity</w>\nra heem</w>\nlo se\nelo ve\nwhar ton</w>\nrectan gular</w>\nillustr ating</w>\nhar ne\nauti sma\nscra pped</w>\nell and</w>\ndecre e</w>\nnag pur</w>\nki pp\nso re\nn md</w>\nma as\ngun a</w>\ngart ner\nbel li\nthen ight</w>\nje on</w>\ngendere quality</w>\ngi ver</w>\na el</w>\ngar ments</w>\nne u</w>\nmardi gras</w>\nmar sden</w>\nro wer</w>\npollu ted</w>\ncamer aman</w>\nvin od</w>\nbe asley</w>\ncro c</w>\nji u\nhollyo aks</w>\nanesthe sia</w>\nal les</w>\nste ward</w>\nlati mes</w>\nðŁĩºðŁĩ¸ðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸</w>\ntic ian</w>\ngor ia</w>\ncome dic</w>\nðŁ¤Ķ ðŁ¤ĶðŁ¤Ķ</w>\nnai ve</w>\nsli ons</w>\nł Ī\nbur glar</w>\nðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃðŁĺŃ</w>\nyork shi\nse Ã±\nfan boy</w>\nlau rel\ninci dence</w>\npotom ac</w>\nrober ta</w>\npresi den\npr yor</w>\nos bourne</w>\nw ku</w>\nte me\npal ae\nðŁ¥ º\nre boun\nitu de\nred dish</w>\nk hand\ncoloni alism</w>\nnorth carolina</w>\nðĿ Ĵ\nmanne quin</w>\nlady bird</w>\nta sty\nknowledge able</w>\ng shore</w>\nðŁĮ Į</w>\nà® ©</w>\nqu aker</w>\nsalz burg</w>\nmed alists</w>\nchy na</w>\nbridesma id</w>\nma ori</w>\nro p</w>\noutra ged</w>\nin adequate</w>\ntruck ers</w>\nal ana</w>\nìĿ ¼\nri x\noooo oooo</w>\ncommand ments</w>\nlam beth</w>\naa j</w>\neco friendly</w>\nbla z\nmorecam be</w>\nboun cy</w>\nrou x</w>\nrai ded</w>\nmi zed</w>\nsh c</w>\ngaw x</w>\nlabor atories</w>\nru bs</w>\nrest room</w>\nconsult ations</w>\nca jun\nvirgin i\nso ir</w>\nrev ue</w>\nple in</w>\nwag er</w>\nç ¹\nwe do</w>\ngrowing up\n! ðŁĺĬ</w>\nface ted</w>\nsin ners</w>\nho vering</w>\nti ene</w>\nseas oning</w>\nan ja</w>\nleg go</w>\nil is</w>\nfla x</w>\ndev o</w>\nash ram</w>\nmati sse</w>\nker i</w>\ngo wer</w>\nbo tox</w>\nmar shes</w>\nunh cr</w>\nts m</w>\nopti mus</w>\ndun i</w>\nstu ffs</w>\nso k</w>\norder ly</w>\nn bad\nislam ophobia</w>\nraviol i</w>\nfab er\ncre ds</w>\nwon ka</w>\nin fusion</w>\nover weight</w>\ndaily news</w>\nassi mil\nacol lege</w>\nmedalli on</w>\nkili manjaro</w>\nsti ff\ntham es\nsun ken</w>\nth ard</w>\nmy dubai</w>\nhilari ously</w>\nhan nel</w>\nplu mber</w>\nfair view</w>\nsepar ating</w>\nrasc al</w>\nqui en</w>\nnecess ities</w>\nconfeder ation</w>\nll ll</w>\n: ]</w>\nweak nesses</w>\nbron co\nra ffles</w>\nel ot</w>\nãĤ¸ ãĥ\nadvent calendar</w>\nðŁİ ¹</w>\nstra vel</w>\ntun ic</w>\nk su</w>\nim peach</w>\ne spionage</w>\n! -</w>\ndi ment</w>\ncur rant</w>\nbio de\ncommu ting</w>\nby ron\nðŁĴĵ ðŁĴĵ</w>\nshad ed</w>\ntr uro</w>\ncray ons</w>\nar ne</w>\nh sc</w>\nfre aked</w>\ndram ati\nfle ek</w>\nu cd</w>\nmarl borough</w>\n^ -\ncross ings</w>\nmal o</w>\nblack ops</w>\nbin ance</w>\ncho ked</w>\nchen ey</w>\npl o</w>\nge stures</w>\nval edic\nryan air</w>\nrem ington</w>\nv cs</w>\nmc kee</w>\nec z\nbe gs</w>\nnail art</w>\nmayor of\nhappy fathersday</w>\nwar t\npet itions</w>\nn ingly</w>\nclean energy</w>\nbro x</w>\nsl alom</w>\nexist ent</w>\nab ay</w>\nug liest</w>\ntom p\nstom a</w>\nsel by</w>\ngoal scorer</w>\nben ji</w>\noverwhel mingly</w>\nlan s\nsemiconduc tor</w>\nsouth korea</w>\nre scheduled</w>\nsk yl\nen listed</w>\ndow ski</w>\nsi del\nrosen berg</w>\nnas ser</w>\nwhite head</w>\npri us</w>\nhar are</w>\nen n</w>\nry der\ní Ĥ\nmon g</w>\nclas ico</w>\ntranspor ter</w>\npo tty</w>\nis me</w>\n** ***</w>\nvic e\nsk it</w>\node ssa</w>\nl mp</w>\nher n</w>\nraci ally</w>\npin oy\nparagu ay</w>\nobitu ary</w>\ngo es\nbu cha</w>\nside walks</w>\nangu lar\nun constitutional</w>\ntransiti oning</w>\ni bu\ngu ys\nun packing</w>\noooo oo\nblack girl\nber gs</w>\nÂ ¯</w>\nwordof theday</w>\ntrump train</w>\nthunder bolt</w>\nm si\nfasci sts</w>\nà¤ ¬</w>\nt sk</w>\ncollap ses</w>\nraje sh</w>\nloveis love</w>\nmigr ating</w>\nset back</w>\nðŁĺĬ âĿ¤ï¸ı</w>\nt els</w>\nsafety first</w>\nnar rated</w>\njae joong</w>\nun answered</w>\nlique ur</w>\nen nes</w>\ndal go</w>\nbill ings</w>\nsalt water</w>\nmer maids</w>\nlon gs</w>\nclap ham</w>\nwe arec\npic collage</w>\nn ach</w>\nh ace</w>\npois oned</w>\nlo th</w>\nag na</w>\nadel rey</w>\nguar dia</w>\npoli shing</w>\npeace keeping</w>\nd all</w>\np isa</w>\nla pland</w>\nprocess ors</w>\nde andre</w>\nso bs</w>\np once</w>\ndra ins</w>\nc be</w>\nðŁİ¥ :</w>\nspla sh\nmeat ball</w>\nfon tana</w>\nworcester shirehour</w>\nne v</w>\nbri sk</w>\nb int\nac r</w>\npo x</w>\ncay enne</w>\nskril lex</w>\nj fc</w>\nhahahaha hahaha</w>\ngla s</w>\nen gul\ntempor al</w>\noni zed</w>\ncon cre\ncom pose</w>\nvibr ations</w>\nplant ers</w>\nfer t</w>\ncriticalrole fanart</w>\nt bli\nsch allenge</w>\nhuck abee</w>\nmunici pal\niam bic\nradi os</w>\nne vis</w>\ndura bility</w>\nmc cla\nhorse back</w>\ninst itutes</w>\nful fill\natta ch\nate ur</w>\nak an\nresi sting</w>\nillumin ation</w>\nhand le\nhair care</w>\nom ent</w>\nmacle od</w>\nka iser\ng no</w>\nbear down</w>\nly f</w>\ngl omer\ndistor tion</w>\nz m</w>\nsan k</w>\nroo sters</w>\nis now</w>\nas ports</w>\nag en</w>\nwo ken</w>\nst george\nro mper</w>\nmy le\neconom ists</w>\nru to</w>\nt will</w>\nhealth and\nd ito</w>\nws l</w>\ntair p</w>\npra kash\nmic heal</w>\nh ts</w>\nw rights</w>\nkat su</w>\nfioren tina</w>\ndefen seman</w>\nd itch\nvar sity\ntexan scheer</w>\nba ham\nsc anned</w>\nwe il</w>\nseduc tive</w>\nðŁĳį ðŁı½</w>\nfu e</w>\ner win</w>\ndav ison</w>\nter ran\nmoo ds</w>\nwool f</w>\nre source\n@ .</w>\ncu sh\nðŁį °\nregre ssion</w>\ncur led</w>\nla zer</w>\njo anne\nab bott\nmo z</w>\ndown ers</w>\nmm mmmm</w>\nvalent ina</w>\nk hair\ndream t</w>\ncro ok</w>\nche k</w>\nste aming</w>\nnephe ws</w>\ncl eric</w>\nas ober\nindefin itely</w>\nw ye</w>\nus news</w>\njoy ce\nflu shing</w>\nwynonna earp</w>\nron do</w>\nkis s\nhot dog</w>\nbar ns</w>\nsax ophon\nfar ley</w>\ngas p</w>\ndecre asing</w>\nal way</w>\npe x</w>\nl sd</w>\nshi ft\np outine</w>\nra zz\nrescu ing</w>\nni ko</w>\nho ch\ncc l</w>\nu aap</w>\nn ts</w>\nm car\nil wx</w>\nconqu ering</w>\nket tering</w>\nstur dy</w>\ndelay ing</w>\nsto k</w>\nvani shed</w>\ncath ar\nbin gham\nin v</w>\nic hiro</w>\nhe mo\nbudge ting</w>\n[... ]</w>\nbe ss</w>\nsebasti an\nslow ed</w>\nðĿ ĳ\nmusli m\nstun s</w>\nacton climate</w>\nve a</w>\nse ton</w>\nrose tta</w>\noun t\nhard in</w>\nflu id\nca w</w>\nðŁ¥ Ĥ\nyach t\nun l</w>\nsp hy\nprovoc ative</w>\nor ic</w>\nis back</w>\n__ _\nnicol as\ngy an</w>\nloo se\nfl in</w>\nreb ate</w>\n: ::</w>\n! \"@</w>\ncom icon</w>\nshe ff</w>\ndown stream</w>\nchic hester</w>\nbeach life</w>\nmom life</w>\ndiabe te\nar ra</w>\nvan e</w>\nok u</w>\nye o</w>\nman go\ntry out</w>\napp ell\nhe irs</w>\narjun a</w>\ndd u</w>\nna veen</w>\nmovi c</w>\nsoci alists</w>\ns back</w>\ncriteri on</w>\nsoyu z</w>\nk her</w>\nda z</w>\nyol anda</w>\nwine oclock</w>\nre ina</w>\none w</w>\nleon ard\nen dez</w>\nu bs</w>\nsupport local</w>\nfacilit ated</w>\ncarameli zed</w>\nb pa</w>\nvuel ta</w>\nmy tho\nm ami</w>\nspe are</w>\nnbap layoffs</w>\nfe vre</w>\nnick jonas</w>\nim print</w>\nc so</w>\ncraig slist</w>\nla salle</w>\ngi deon</w>\nha doop</w>\ndis regard</w>\nw ud</w>\ntu c</w>\nma gee</w>\nacou stics</w>\nta a</w>\nqui e\npol a</w>\ncr t</w>\ndw yer</w>\ndis sec\ncapit ol\nmen tion\nkn oll</w>\nhe igh\nfin ders</w>\nplac ements</w>\nl se</w>\nindi ra</w>\ngur i</w>\nmadhuri dixit</w>\nkingdom s</w>\niambic pent</w>\ngeor gina</w>\nje ky\nconflic ting</w>\nbay an</w>\naga tha</w>\nuph old</w>\ndr on\nvic ar</w>\nex pat</w>\nperiph eral</w>\npe ssi\nfa f</w>\nance stor</w>\n? ..</w>\nwid get</w>\npun c\ncomm enced</w>\nbeav s</w>\nair waves</w>\nad dis</w>\npo a</w>\nde sses</w>\nco den\nvu e\nru pee</w>\nkar in</w>\nspo ck</w>\nm sy</w>\nà¸ °\npr ick\nfill more</w>\nti fication</w>\nthing sto\nsar de\nem ile</w>\npere ira</w>\nn ad</w>\nbright ening</w>\narre sting</w>\nwo king</w>\nusc g</w>\nsp ill\nraspberry pi</w>\nhu go\nite c</w>\nis ma\ncuff links</w>\noptimi zed</w>\noc c</w>\nmi wx</w>\nen ka</w>\nel ited\nafford able\nsa kh</w>\ncoron ado</w>\nho h</w>\nat ul</w>\nai oli</w>\njim cantore</w>\naccoun ted</w>\nvin ay\nher mit</w>\ngroo ves</w>\nran ch\nr illa\nwe tter</w>\nou tof\nveter in\nni kov</w>\nki an\nfair banks</w>\nram apho\nn iti\nk ko</w>\nru sty\nne stle</w>\ntv xq</w>\nshahe er</w>\nâĿ¤âĿ¤ âĿ¤âĿ¤</w>\npenn ant</w>\ngem stones</w>\ndem debate</w>\nðŁĲ Ĭ</w>\nauton ews</w>\nsupport indiefilm</w>\nmach o</w>\nve x</w>\nnew sat</w>\nne ti\nconce ssions</w>\ncan died</w>\nyof the\nmac au\nden ds</w>\ncricke ters</w>\nsan iti\nmari ano</w>\ngh at</w>\nar toftheday</w>\n¡ ľ\ne gos</w>\ngen oa</w>\nchat bots</w>\nbri er</w>\nal labout\nmon ty\nspi ed</w>\nr tr</w>\ncomfor t\nsni ppets</w>\nreal time\ngra in\nexam ined</w>\nen lightening</w>\ntt u</w>\ngod bless</w>\nrelease the\nsing ular</w>\nki ans</w>\nha ka</w>\nsor ren\ndefe ct</w>\nmar g</w>\nequ ities</w>\nd orian</w>\nsu ka</w>\nper l\naishwar ya</w>\npul lover</w>\npreci sion\nfair way</w>\nne ve</w>\nrive ting</w>\nvill anova</w>\nen com\nak o\npassion ately</w>\neuropale ague</w>\nsiem pre</w>\nx vi</w>\nenligh tened</w>\nc fr</w>\nâĺħâĺħ âĺħâĺħ</w>\nwast eland</w>\nis f</w>\nnew comers</w>\nemergen cy\namphi theatre</w>\n- .</w>\ntext books</w>\nfigur ative</w>\ntre mb\npe sc\nab hin\nab bot</w>\nac acia</w>\nhar ds</w>\npor sche\nkau ai</w>\nel isa</w>\ncar rick</w>\nabo u</w>\nelli er</w>\nbe ch\nneu tron</w>\ngalap agos</w>\nru ben\nin nis\nhow to</w>\nnun s</w>\nsab ine</w>\ni ac</w>\nclin ched</w>\nno tori\nfi ves</w>\ncairn gor\nper i</w>\ngr c</w>\nðŁĴ¯ ðŁĴ¯</w>\nmal m\ntwelf th</w>\ndi ff\nrout ines</w>\nmarty n</w>\nlin den\nsynthesi zer</w>\nnu mber\ngame cube</w>\nfal kirk</w>\nbyz antine</w>\nqueu ing</w>\ngr ill\nscal able</w>\nchar red</w>\nrou ting</w>\nher bali\ngri zz</w>\nðŁĺŃðŁĺŃ ðŁĺŃ\ntol l\ntermin als</w>\nl pc</w>\nab d</w>\nwar mups</w>\nremo vable</w>\nÂ¯ \\\nvi go</w>\npap aya</w>\nne ve\nlov ingly</w>\njo kers</w>\nib les</w>\nsse tt</w>\npoten ti\npel e</w>\ngi gi\nsadi q</w>\nleg acy\nson o</w>\nru pees</w>\nretar ded</w>\nele e</w>\npar r</w>\nfi ance</w>\ney re</w>\nsay ers</w>\npend ants</w>\nmak nae</w>\nal bans</w>\nadap ting</w>\np ff</w>\npu berty</w>\nji u</w>\ning rad</w>\nhypocr ite</w>\ndiplom ats</w>\nphys ical\nrob by</w>\nbon sai</w>\nãģ ·\nf att\ncatal unya</w>\nâľ ĸï¸ı</w>\nro ma\nmore land</w>\nso e\nconver sions</w>\nstl blues</w>\nshol m</w>\ngra ssy</w>\npra do</w>\non u\nassaul ting</w>\n> _\nsett es</w>\ndis graceful</w>\naph ra\nâļ½ï¸ı âļ½ï¸ı</w>\nà¤ ª</w>\nkil n</w>\ngoal tender</w>\ns ru\nphilanthro pist</w>\nb als</w>\nth n\nstu den\nsando val</w>\ndogre scue</w>\neli ons</w>\nasse ssed</w>\nlar go</w>\nhec tares</w>\nsh rm</w>\nsa if</w>\ncle avage</w>\nno ches</w>\nn ene</w>\nfat alities</w>\ncur ing</w>\nclean ser</w>\nal es\np vp</w>\nsouth bank</w>\npizz eria</w>\nmarsh als</w>\nkni fe\nan dover</w>\ntbli ghtning</w>\nsr sly</w>\nou te</w>\ndigi mon</w>\ntimesof india</w>\nprome the\nle bo\nf su\nwit z\nrever e</w>\nman as\nmam ba</w>\nch ica</w>\ngu an\nexhibit or</w>\ncsr racing</w>\nd ere</w>\nxx xxx</w>\ngu sta</w>\nstory time</w>\nston ey</w>\norgan ics</w>\nand u\nse am</w>\nmin ogue</w>\nanushka sharma</w>\nab a\nðŁİĻ ï¸ı</w>\nugand an</w>\nchro matic</w>\nas sn</w>\ndocument aries</w>\nsh t</w>\nru paul</w>\nloy d</w>\nk ats</w>\ne us</w>\nite ch\nme dusa</w>\npan ty\nkel logg</w>\net to</w>\ntalla de\nsha a</w>\ndo st</w>\np ms</w>\nmari ana</w>\nje ster</w>\ncroo ks</w>\nðŁĶ ¬</w>\nmin danao</w>\nind hoven</w>\nðŁ¤ ª\nle xi\ntv n</w>\njan is</w>\nco te\nãģ Ĩ\nser rano</w>\niw m</w>\nðŁĲ ¬</w>\nk ke</w>\ndistribu tors</w>\ncap u\ncounterfe it</w>\ncamp site</w>\nag gie\nðŁĺ ¼</w>\nchhat tisgarh</w>\n~ @</w>\nstate u</w>\nsan di\nprevent able</w>\ncl s</w>\ncan ne\nmm c</w>\ni ver</w>\nsa haran</w>\npal is\nnight out</w>\ndo s\nap ia</w>\nabsc bn\nmanag erial</w>\naro se</w>\nmo wx</w>\naro sa</w>\nðŁĮ ³\nunder dog</w>\nremo ver</w>\nastronom ers</w>\nlent ils</w>\nsu scep\nsmoo ther</w>\npend leton</w>\nfau cet</w>\ne mory</w>\ndal mati\naf cb</w>\ntic us</w>\nexem pt</w>\nen rol\nd heim</w>\nðŁĲ º\nrestric tion</w>\nstar fish</w>\nsto w\nsnor kel\nthunder birds</w>\nshe ad\nhomo sexual</w>\ndy n\nas li</w>\nandre tti</w>\ndou che</w>\ndom o</w>\ntar mac</w>\nslu mber</w>\npr onto</w>\nfirst dayof\nmini ature\nmari achi</w>\nargu s</w>\nrecomm ending</w>\nmobi les</w>\nin ce</w>\nillustri ous</w>\nor c</w>\nadver ts</w>\ngr its</w>\nwea sel</w>\npag oda</w>\nover pass</w>\ngre ys</w>\nmaxi mus</w>\narma gh</w>\nwood land\nsun ni</w>\nðŁĴ ī\në Ŀ\nti one\nsoci o\nho s\nðŁ¤Ĺ ðŁ¤Ĺ</w>\nwind sor\nsubsequ ent</w>\nmunch ies</w>\nid h</w>\nexclu ding</w>\ne mi\ncu th\nz ai\nweek days</w>\nlaw suits</w>\nbarn ard</w>\nØ ª</w>\npe tting</w>\nnet es</w>\nmul ligan</w>\npharmac ists</w>\nra quel</w>\ne ton</w>\ncran ston</w>\ngil ded</w>\ncle ary</w>\nce ph\nra a</w>\npam per</w>\nlombar di</w>\nas in</w>\nsher ry\npro d\nfor te\nari anism</w>\nbuffalob ills</w>\næľ ¬\nðŁĶ¥ #</w>\nuu u\njust ices</w>\ncar ina</w>\nnat in</w>\nmas low</w>\ndro oling</w>\ncog nac</w>\ncam ber\nel ong\nr dr</w>\nin en</w>\nconvic tions</w>\nam use</w>\ntro ck</w>\nharm less</w>\nvisit ation</w>\ngen omic</w>\nbl and\nbeno it</w>\nchim p</w>\ntuscal oosa</w>\ngre asy</w>\nx po</w>\ngil t</w>\nse q</w>\nper mitted</w>\nchristma seve</w>\nbook s\nmu e\nold school\nhuman right\nbe ati\nðŁĶ Ŀ\nsh at</w>\nsculp ting</w>\nh wan</w>\nfern andes</w>\nsci utto</w>\nfu entes</w>\nendeav ors</w>\nmaid stone</w>\nun paralleled</w>\nshou ted</w>\nqueen of\nmer c</w>\nband ic\nve da</w>\nsel angor</w>\npi le\nja han\nintimid ating</w>\ndisapp ears</w>\ncl ich\nza ha</w>\nw urst</w>\nhi v\nfod ils</w>\ncor dless</w>\naaaa aa</w>\nhy dra\nbel inda</w>\ne els</w>\nbu f\nsu staining</w>\nrugby league</w>\nno c</w>\nbrig itte</w>\n( ðŁĵ¸:</w>\ntromb one</w>\nsoo the</w>\nsmo g</w>\nad p</w>\nstab le\ning ley</w>\ndiagno se</w>\nms g\nwe ss</w>\ntic keting</w>\none e</w>\nnsw pol</w>\ne up\nauto psy</w>\nadity anath</w>\nsun down</w>\nriver front</w>\nsi ya</w>\np is</w>\nhier archy</w>\ndur ango</w>\ndi jk</w>\nren shaw</w>\nhe aps</w>\nepide mi\ndavid bowie</w>\ninterne tof\ndd i</w>\nnation ality</w>\nmb ar\nair y</w>\nwin der\nw alia</w>\nelli ott\nc x\nbav arian</w>\npl att\nan tw\nwi wx</w>\nsof ter</w>\nne ha</w>\nh eller</w>\nth and\ndani ela</w>\nbo ast</w>\ndegra dation</w>\nðŁĴ¦ ðŁĴ¦</w>\ntransform ing\nman e\nav ut</w>\nðŁĺĪ ðŁĺĪ</w>\nvo ter\nthe e\nt ate\npu ff\nin door\nsop roud</w>\nboy ce</w>\nboris johnson</w>\nwait in</w>\nimmun ology</w>\nðŁıĨðŁıĨ ðŁıĨ</w>\nâĿ Į\nstreet food</w>\nliz asober\ncavali er</w>\nc elia</w>\nneed le\nmotor ing</w>\ng ato</w>\n, )</w>\nra de\nharve st\nt ms</w>\njar pad</w>\non ey\nair men</w>\nv re\nimpair ment</w>\nabhi shek</w>\nsnoo p\nl ant</w>\nfam ously</w>\nbl ou\ns ze\ng ander</w>\nun touch\ntu f\ndee jay</w>\ncol lateral</w>\nb ind</w>\nðŁļ ©</w>\npin ning</w>\nic n</w>\n' ;</w>\nthe economist</w>\nul tram\nworldwater day</w>\nti poff</w>\nthe i\nfeed ers</w>\ncampa ign\nsc umb\nday weekend</w>\nyo m</w>\npe dic</w>\nh ough</w>\nps v</w>\npl in\non de</w>\nboston marathon</w>\naz zy</w>\n* _*</w>\ncon ley</w>\nthi ago</w>\nhoo o</w>\ngal erie</w>\nluci d</w>\nje tt</w>\ngl itz</w>\nfinal fantasy</w>\nachiev ers</w>\ny ung\nperegr ine</w>\nop hi\ndam es</w>\nbiom ar\nâĺĢï¸ı âĺĢï¸ı\nsk c</w>\nl ics</w>\nfl ank</w>\nar rahman</w>\nho of</w>\nuphol stery</w>\nt ats</w>\nwo z\nÂ ¿\nsnor ing</w>\nra er</w>\nl ju\nap d</w>\npl ating</w>\nkan u</w>\nim ation</w>\nfragr ances</w>\nm ra\nmor ay</w>\nmo tt\nim muni\nhearti es</w>\nbho pal</w>\ntim ers</w>\ng ata</w>\ncolor way</w>\ncar nation</w>\nwin get</w>\nsi ghs</w>\ns ville\noptimi st</w>\nchate au\nolympi ans</w>\nci o\nsinger songwriter</w>\nny o</w>\nfi bers</w>\nbur ch</w>\nag ro</w>\nmil ne</w>\nig bo</w>\ncr amer</w>\nation als</w>\ndan ube</w>\npad ma\nnor mani</w>\nen forced</w>\nbre ck\nboeh ner</w>\nar den\nsur rendered</w>\npros thetic</w>\nom a\nha iled</w>\ncalcul ations</w>\nw fa\nbi b\nfcb live</w>\nfon da</w>\nwest coast</w>\nque sts</w>\nfriend ly\nto wie</w>\nfit ch</w>\nbal ot\nstar dom</w>\nscrat ching</w>\nho sa</w>\nthi ka</w>\no ven\nstro ke\nout post</w>\npharmaceu ticals</w>\nhi kari</w>\nmu y</w>\naf d</w>\nfallon tonight</w>\nsqu at\nor u\ndra ined</w>\nchocol at</w>\në¯ ¼</w>\nwor ths</w>\nri b\nmu j\nthat s\nresiden te\nit el</w>\nboo st\nmi gos</w>\nmul led</w>\nla a</w>\netsy shop</w>\ndon keys</w>\nme k</w>\np tc</w>\nflin ders</w>\ne hs</w>\nro hit\nmu ir\ng ad</w>\ncompos itions</w>\nåĨ Ļ\ncombu stion</w>\ni kh\nyemen i</w>\nwav ed</w>\ngar ci\nak os</w>\noo ds</w>\nfu sion\nse que\ns lan\npl ur\nkic chasu\nshenan do\ns ams</w>\nworl den\nhoro witz</w>\nwith me</w>\nmic robes</w>\nk ki</w>\nðŁĴĶ ðŁĴĶ\nw su\npatch work</w>\nfre er\ny aki</w>\nthe art\nsymboli sm</w>\nmil er</w>\nbt n</w>\nma bu\nside kick</w>\nmotiv ates</w>\nsag itt\nnatur als</w>\nserv iced</w>\nps ori\npa ola</w>\nqu ig\ni badan</w>\ngi ggs</w>\në ³\nsciento logy</w>\nsi oux\nsalam at</w>\nd res</w>\ncad bury</w>\nd hawan</w>\nci Ã³n</w>\n_ '</w>\nswa pping</w>\nmaris ka</w>\njames bond</w>\nexplo sives</w>\nay les\naf er\ns agu\ncen sor</w>\ntom a</w>\njeff erson\nring ed</w>\npar tist</w>\nir responsible</w>\naguil ar</w>\nvac ay</w>\nequ itable</w>\naltrin cham</w>\nac ur\nman ish</w>\nger min\nschoo led</w>\npu tter</w>\ned ad</w>\nnav al\ntoast y</w>\nsol areclipse</w>\ndish u</w>\ncoy ne</w>\nac co</w>\nmu ck\nmar an\nel os</w>\nlen der</w>\ncro ix</w>\nworth less</w>\nha ber\ngun men</w>\nðŁį ĵ\nzen ith</w>\nt enders</w>\nhur st\nhol tz</w>\nitali ans</w>\ncar low</w>\nu cd\ncharacteri stic</w>\nbun g</w>\nav l\nu th</w>\nsa sia</w>\nrs l</w>\nred man</w>\nneighbor ing</w>\ngreen peace</w>\nsti ps</w>\nfollow party</w>\ny gk</w>\nen os</w>\nomni bus</w>\nna issance</w>\nchri ssy\nsecu re\ncall back</w>\nji hoon</w>\nmemor y\nblock er</w>\nl anta</w>\ndaf fodils</w>\nbil t\nffer ty</w>\nfau st</w>\nie c</w>\nnipp les</w>\nso g</w>\nm nd</w>\njagu ar\nbol dly</w>\nab poli</w>\npro position</w>\ngun sense</w>\nevan sville</w>\ncu tters</w>\nwe go\ndou n</w>\ndo x\nstal lions</w>\nka j\nshi ppers</w>\nj awa\nvol o</w>\nle ven\npap rika</w>\nkov ich</w>\njor di</w>\ninduc tees</w>\napp alling</w>\ndial ysis</w>\nallevi ate</w>\nâĢĶ âĢĶ</w>\npie ter</w>\nmid wi\nq tr</w>\njuli ette</w>\ninter mission</w>\nhaw ks\nact ment</w>\none ill</w>\nk lin\nvam ps</w>\nfam ous\ncou ld\nautom obi\nda an</w>\nwest end</w>\nelli p\nnh c</w>\nmel anch\nweb series</w>\nton gue\nsnat ched</w>\nsmy th</w>\ntan gible</w>\nsl i</w>\ne asing</w>\nbar stool\nover lay</w>\nafford ability</w>\nting ed</w>\nter as</w>\nay ush\nwanna one</w>\nrh ine</w>\ndan a\nsh ana</w>\nkend al</w>\nfer tile</w>\nw ir</w>\nrepl eni\nlar vae</w>\nis ro</w>\ncon vos</w>\nab brevi\nu cc\nhun gry\nbur rows</w>\nag er\nnav i</w>\nmat in</w>\ndu per</w>\ncer n</w>\nma don\nķ ï¸ı</w>\né ģ\ntu ps</w>\nhy att\nsh ep</w>\nfriday night\nwis er</w>\nhei di\nhat ton</w>\np gh\nfoun tain\nwrist bands</w>\nahmadi yya</w>\naeri al\nsubscri bed</w>\nso los</w>\nm ace</w>\nsla yed</w>\nfor fe\ndul ce</w>\nchrist mass\narun jaitley</w>\nviol ate</w>\nob stru\nni eces</w>\nw vu\nidy l\nfa ze</w>\npre serves</w>\ninfr inge\npremi ers</w>\ninter vals</w>\nagen cy\n( Â©</w>\nstand alone</w>\ndi mes</w>\nbo er\nparam eters</w>\nge tit\nðŁĺĺðŁĺĺ ðŁĺĺðŁĺĺ</w>\ntu lane</w>\nfor given</w>\nscol l</w>\nmb ps</w>\nsmash bros</w>\nrob bi\nprima vera</w>\nali st\nghost ly</w>\nay at\nye ats</w>\nimpre ssionist</w>\near phones</w>\ncaul field</w>\nwai kiki</w>\nsal ute\nsc ou\nmu ay\nlouis vuitton</w>\nbak hta\nado g</w>\ninven tions</w>\nhur d</w>\nforec lo\nstream line</w>\nthalai var</w>\nch snews</w>\nwill ard</w>\nt sn\neuro parl</w>\ncru sher</w>\nmy sore</w>\ngro wer</w>\nra ping</w>\npat ti\ng den</w>\nsm w</w>\nmuf ti</w>\nkid man</w>\nab r\nsoun ders</w>\nskep tical</w>\nðŁĶ İ</w>\nsun dar\ni me\nfer g</w>\nfeather weight</w>\nar lington\npas qu\nag azine</w>\nwearab le\nnati c</w>\nmccl ure</w>\ninter mitt\nhor de</w>\nsix ties</w>\ncar te</w>\nbha v\nze al\nexperi ential</w>\nador ned</w>\nsom mer</w>\neno te</w>\nhypo thesis</w>\nstin ky</w>\npro to</w>\ndead lines</w>\nvo gel</w>\nmus ings</w>\nmonc ton</w>\ngu ter\nf le</w>\naci on\nvoice of\nta sha</w>\ninhabit ants</w>\ntype face</w>\ns ba</w>\nbts x\nðŁĶ Ĵ</w>\nwor x</w>\nu hc</w>\njo ko\ncell ars</w>\ngor o</w>\ncontinu um</w>\n... &</w>\nweather cee</w>\nha p\nsr k\nris ers</w>\nlonely planet</w>\nun named</w>\nco eur</w>\nðŁį Į</w>\nthe world\nili ke\nfa sten\nami go</w>\nri ba</w>\nramapho sa</w>\nstaf fers</w>\nhad ley</w>\n? ?\"</w>\nfi ore</w>\nsal ut\nhu ff</w>\nbez os</w>\nÑ ĭ\nra der</w>\nkam ala</w>\nin line</w>\nfill ers</w>\num atic</w>\nall in\nshat ter</w>\nre in</w>\no ku\nch ases</w>\nfla gged</w>\nbaby metal</w>\nwater stones</w>\nts b</w>\ncut out</w>\nop hel\naam a\nrockab illy</w>\nsto lic</w>\njet blue</w>\nich ick</w>\ndown ton\nuzbe kistan</w>\npat na</w>\nla q</w>\ngr ange\n) _/\nsubsi di\nsc p</w>\nnewsc ast</w>\nit sa\ntwee tyour\ne mor\narchae ologists</w>\nuni fication</w>\npor ta</w>\nq x</w>\nprotec tors</w>\npro hib\ncharis ma</w>\ncar tag\nren fre\nscul pt</w>\nguwa hati</w>\nde ma</w>\nboo p</w>\nunf pa</w>\ndex ter\nlay la</w>\nalleg es</w>\nsou ps</w>\nnever again</w>\nl ys</w>\ncal c</w>\nbar oness</w>\nvisu alize</w>\nger ber</w>\nabsor bed</w>\ni ers</w>\na han\nfon tein</w>\ndetec tors</w>\nverst appen</w>\nsv c</w>\nformul ated</w>\nac dc</w>\nli x</w>\nin competent</w>\nbh k</w>\nlour des</w>\nwater house</w>\nsnow ed</w>\nappreci ative</w>\nsig ma\nlizasober ano</w>\npen ned</w>\npay check</w>\ntall inn</w>\nfanc afe</w>\npar isi\nav alley</w>\nvi g</w>\nru fc</w>\nhard ship</w>\nso cute</w>\npo ise</w>\nì ¹\nroth schild</w>\nk ly</w>\n???? ????\nl hp</w>\nil ay\nf hs</w>\nam ad\nide als</w>\nbrad bury</w>\nbal boa</w>\nnic ot\nkid nap</w>\nwol ve\ntas manian</w>\nop t\nmatthi as</w>\nãĥ³ ãĤ\nsuper markets</w>\nmylittle pony</w>\nme lee</w>\nli ster</w>\ngr oun\nfe dora</w>\nkind ness\nen en</w>\nbra hms</w>\nÂ¯\\ _(</w>\nros well</w>\nmar lene</w>\nic u\nre formation</w>\nor ail</w>\nhe brides</w>\ndispar ities</w>\nterrac otta</w>\nswal lows</w>\nre id\ninflu encing</w>\nflu or\nden e</w>\ntum our</w>\nblon des</w>\nthunder bird</w>\nsh eva</w>\nmoga dishu</w>\nka b</w>\ncre eps</w>\ni ving</w>\nene ed\nanno y</w>\nâĶ Ģ\nintri gue</w>\nenqu iry</w>\nar aj</w>\ntur al\nkuber netes</w>\nend lessly</w>\ndivi dends</w>\ntor a</w>\nti sh\ncommemor ates</w>\nun ra\ntri b</w>\npon ty\nne m</w>\ndiss ent</w>\nbrew ingco</w>\nðŁĺ ½</w>\nnor mali\nbi of\n( ...</w>\nchil len</w>\nì£ ¼\nmell on</w>\nav is\nmccor mack</w>\ning ra\nenrich ed</w>\ncustome rexperience</w>\ntesto sterone</w>\nsnu g</w>\nsett i</w>\nger onimo</w>\ninqui rer</w>\nbre aches</w>\nvery thing</w>\nbloom ing\nmu ra\ndispo s\nbi de</w>\nde va</w>\nshade sof\nin trin\nsh ev\ns ven</w>\nnayanth ara</w>\ngan esha</w>\nc ws</w>\nber ta</w>\nlabel led</w>\nuse um</w>\nnick named</w>\nma han\ncar uso</w>\nap ur</w>\nðŁĳ Ĩ</w>\nw q\norphan age</w>\ndiscar ded</w>\nmag nu\nlu e</w>\nje on\nbridge port</w>\npac ing</w>\nmercur y\n( ðŁĵ¸</w>\nmarx ist</w>\namphi bious</w>\ntransplant ation</w>\nstit ching</w>\nthen burg</w>\ngradu al</w>\nãĤ Į</w>\nro ft</w>\nma ils</w>\nine c</w>\nguy ana</w>\ndopp elg\nver o\nre write</w>\nhead less</w>\nharb augh</w>\ngate way\ncar sforsale</w>\nsw i</w>\nst is</w>\nmach t</w>\nun de</w>\nsura baya</w>\nstap leton</w>\nnur turing</w>\nmil ner</w>\nya o</w>\nlma oooo</w>\nko sh</w>\narsen al\nk ame\ner ry\nar royo</w>\ndis misses</w>\nru bbed</w>\nrc b</w>\nlew d</w>\ndil u\nand or\nvi de</w>\nur in\ninter sec\nha ar\nal b\nyear swith\napp leton</w>\nÃ© al</w>\nul livan</w>\nsuc cu\nmonter rey</w>\nd mx</w>\nartem is</w>\nron nie\nfarm land</w>\ns football</w>\ngro tto</w>\nanth i</w>\nãĢ ģ</w>\nà® Ł</w>\nvid ya</w>\njimmy fallon</w>\nàµ į</w>\nt zer</w>\ngravit ational</w>\nw thr\nu hhh</w>\ne hr\ntin ker\nti juana</w>\nscran ton</w>\nram charan</w>\nbar clay</w>\nre van</w>\nm si</w>\nka p</w>\nwr s</w>\nwe thenorth</w>\ntor al</w>\nsat u</w>\ngro m</w>\nfac ep\nerick son</w>\nz yn\nse dge</w>\noo dle</w>\nspur sofficial</w>\nds p</w>\nsic ilian</w>\nsoli hull</w>\nrecei vers</w>\nladak h</w>\nhend rick</w>\nther i</w>\npresi ding</w>\nmc guinness</w>\nlitt ers</w>\ngun nar</w>\ngh oul</w>\nwi b</w>\nn tv</w>\nkar o</w>\nfro ck</w>\nb lau\nampli fy</w>\nall is</w>\nul lah</w>\nmemo irs</w>\nkh loe</w>\nintercep tions</w>\npet day</w>\nlo oney</w>\ncon fin\nch ay\npiyush goyal</w>\nfrequ encies</w>\nut z</w>\nevent ual</w>\nwarm ly</w>\nobli vion</w>\nan ka</w>\nta it</w>\nâĿ¤ï¸ı .</w>\ndirector ial</w>\nru lers</w>\nprince s\nmu ck</w>\nstur ridge</w>\ndeu ce</w>\nabri dged</w>\nbagu ette</w>\nun cles</w>\npen du\nmin ding</w>\nforre ster</w>\nav ila</w>\nwall er</w>\nwall street</w>\nment or\nhin o</w>\nhigh way\ncrom well</w>\nfanart friday</w>\nmb i</w>\nco yle</w>\na hi\ntro ve</w>\nspie gel</w>\npay tm</w>\nmcin tosh</w>\njan sen</w>\nnit i</w>\nnash ville\nlen o</w>\nleicester shire</w>\nle gos</w>\ndic t\nðŁĵ ½</w>\nsp ad\nbeverly hills</w>\nsy rah</w>\nsepar ates</w>\nz ain</w>\nun fit</w>\ndra gs</w>\ntan ia</w>\nover flowing</w>\nhri thik</w>\nhaw thorn</w>\nz ani</w>\nmac far\nfi de</w>\nto tem</w>\npe ds</w>\nfundament ally</w>\ncal ico</w>\nsin ner</w>\nj Ã¤\nhil de\nds d</w>\nten ay</w>\nta hit\nmil f</w>\nlie b</w>\ninform ing</w>\nup lift</w>\nra el</w>\nmortg ages</w>\nlec t</w>\nii ii</w>\nguillau me</w>\ncompos ites</w>\nold smobile</w>\nl end\ngar th\ncom mish</w>\nbapti zed</w>\nscorpi ons</w>\nru cker</w>\nbringback our\nalli ance\nthalap athy\ntal i</w>\nsp ans</w>\neri dge</w>\nwither spoon</w>\nlin da\nsky lar</w>\nkor n\nhom s</w>\nÄ į\nsil enced</w>\ncaf fe</w>\nar ty\ndist inguish</w>\nto wed</w>\npun g</w>\njessic a\near nest</w>\nbeau fort</w>\nt ama</w>\nstudy abroad</w>\nsi khs</w>\nnew bie</w>\nnav ratri</w>\nmar ble\nloun ging</w>\nlit ter\ndal it</w>\nso sa</w>\niz es</w>\ngra de\ncom promising</w>\ntr iton</w>\nde tta</w>\nv j\nchau ffe\nspec tral</w>\npowe red\nmontess ori</w>\nartic ulate</w>\nhal ton</w>\nal co</w>\nye y</w>\nmn twins</w>\nacoun ty</w>\nðŁĳı ðŁı¾</w>\nâī Ī</w>\nmad men</w>\nkal a\ngru m\nchi k</w>\nati s\nsu me</w>\nakh tar</w>\njob search</w>\nhigh lighter</w>\nbo ath\nâĦ ¹</w>\ntar zan</w>\nlam bo</w>\nâĽĦ ï¸ı</w>\nox fam</w>\ndump ster</w>\npretz els</w>\nmac os</w>\nincl ined</w>\nfac tual</w>\nadverti sers</w>\nshu i</w>\npu ree</w>\nml pfi\nanti dote</w>\ncap o</w>\npa str\nmerc ado</w>\nbut ton\nar min\nag g</w>\nlol la\nhorri bly</w>\ner rands</w>\nchristop he</w>\ntime snow</w>\nmonday motiv\nli ss\nscand als</w>\nmc i</w>\ndispropor tion\nâĺ İ</w>\nsur pass</w>\nsamar itan</w>\nso tho</w>\npu rest</w>\nfl att\ntrivi atuesday</w>\ndelec table</w>\nleop old</w>\nhermi one</w>\nchou dhary</w>\nen rich</w>\nÂ¡ Â¡</w>\nsubsi diary</w>\nine qualities</w>\nbachel or\nauto immune</w>\nla kota</w>\ni hop</w>\nad jec\nthe simpsons</w>\nsh es\nse k\ngret chen</w>\nup stream</w>\nhin akhan</w>\ncoper nic\nx tina</w>\nlu g</w>\ntough ness</w>\ne ad</w>\ncli pped</w>\nbi us</w>\nsl v</w>\nfah ren\ndee pak</w>\nca u</w>\nx an\nim mature</w>\ndig ni\nbo bs</w>\nshred ding</w>\nbut tery</w>\naccommod ations</w>\nde ven\nchun ks</w>\nsuper league</w>\nsky bet\nkil dare</w>\nje et\në į\nce k</w>\nwrec ks</w>\npro pane</w>\noh l\ntb d</w>\nquo i</w>\ntrum pp\nmi mo\nreluct ant</w>\nver ne</w>\no ic</w>\nma gh\nar nau\nse ver</w>\nli dge</w>\nstair way</w>\nkicchasu deep</w>\nðŁĶ º</w>\nmach ining</w>\naama admi\not i</w>\nc da</w>\nal it\npan y</w>\ninst alls</w>\nac ct</w>\ne shop</w>\ndi em</w>\nhard well</w>\nfulfill ment</w>\nsc afe</w>\nqu ack</w>\nextrac ts</w>\nswee tened</w>\nfi ghton</w>\nf di</w>\nd inger</w>\nwal tham</w>\nus ur\nrefe rees</w>\nseok jin</w>\ngran n</w>\naf rin</w>\nth n</w>\nsch af\npar cels</w>\nbet is</w>\namar ine</w>\nnom an\nkh tar</w>\nmor itz</w>\ncou pling</w>\nbar ons</w>\nðŁĲ ¸\nÃ ¸</w>\nsl p</w>\nsad ler</w>\nx ander</w>\ntri ad</w>\nmc millan</w>\nkh z</w>\ndivi ding</w>\nìĹĳìĨ Į</w>\ndar yl\nzed d</w>\nle ys\npla ques</w>\nflu ori\ntipper ary</w>\non nell</w>\ndi dier</w>\nlang ford</w>\nim c</w>\nthe sun</w>\nbir dies</w>\nar cha\nye ssss</w>\nt di</w>\ndar ia</w>\ncand ace</w>\nal tam\npal aces</w>\nch it</w>\nsant am\nevent ful</w>\nbook of\nad b</w>\nmon stax</w>\ncre ole</w>\nco el\nâĸ ½\nwe aren\nsten nis</w>\nshe ath</w>\nati sm</w>\ngron ingen</w>\nmlpfi m</w>\nle pre\nwrong ly</w>\nrsp ca</w>\nrendez vous</w>\nacknowle dging</w>\npel vic</w>\nsolic itor</w>\nsla ys</w>\nnue stra</w>\nlo d\nis lander</w>\nfer oci\nfashion show</w>\nra ss</w>\ndge on</w>\nadole scents</w>\nsma shes</w>\nnegli gence</w>\ngrate ful\nved ere</w>\nsw oop</w>\ning l\napol ice</w>\nvand alism</w>\ngan n</w>\njo ao</w>\ndi supdates</w>\nzimbab we\nunder age</w>\nradi ance</w>\nw of\nbour geo\npla s\ncr ani\ngh ue</w>\nwrec kem</w>\nwarran ts</w>\nre form\njim mie</w>\nat wood</w>\nys l</w>\nneil himself</w>\nl bj</w>\ni man\ntan to</w>\nnois se\nver bs</w>\nequip o</w>\nal together</w>\nmam ent</w>\nl ice</w>\ndou glass</w>\ntier ney</w>\npri med</w>\nj hal\nfurn itu\nbraz ili\nv ill</w>\npast els</w>\nn ison</w>\nu ff</w>\nparal ysis</w>\njay e</w>\nim po\nðŁĳ ģ</w>\nstrate gically</w>\npakistan is</w>\nwas sup</w>\nsuper bike</w>\nthank u</w>\ntru elove</w>\nsha ikh</w>\nisrael is</w>\nvi p\nto g</w>\nli en</w>\nla ker\ngrey hounds</w>\ncul ars</w>\nbian chi</w>\nbalot elli</w>\nar ran</w>\nloo s</w>\nstr ates</w>\nhe bron</w>\nar vo</w>\nsunder land\nthe al\ntomb stone</w>\nsand man</w>\nc pac</w>\nthanks giving\nlove him</w>\nlat ino\nan in</w>\naka if</w>\nĭ ãĤ\ntor quay</w>\ndi est</w>\nalli anz</w>\nðŁĺ ķ\ngolf club</w>\ncl lr\nwal cott</w>\nsch nau\npromp ted</w>\nnomin ating</w>\nlen nox</w>\nval et</w>\nmon ro\nmay ward\ne ph\nðŁĶ Ķ</w>\ninter oper\nr da</w>\nre flex\narm chair</w>\nê° ķ\nstri pper</w>\npor ti\nph arm</w>\nham za</w>\nni reland</w>\nne ue</w>\nh pv</w>\nport foli\nsun burn</w>\nfris bee</w>\nbe al</w>\nbapti ste</w>\nx h</w>\nty m</w>\npr ati\no vers\nhaz rat</w>\ndeser t\nder ry\nus ky</w>\nem mett</w>\nach arya</w>\n)_/ Â¯</w>\nshu d</w>\nmay a\nham ill\nra im\nnr c</w>\nfitt ings</w>\ncur vy</w>\nðŁı ĩ\nster ling\nà¥ Ģ\nwal kin</w>\nshort cuts</w>\nmil ly</w>\nast ur\nalpha be\npl i</w>\npe z\nmiss you</w>\nrad ford</w>\nml g</w>\nta eyang</w>\nnotjust lakes</w>\ndu mps</w>\nseren dip\nle ur</w>\nra ving</w>\ne ster</w>\nde priv\nabsc bn</w>\nðŁĳĩ ðŁı»\nscar city</w>\no cr\nmean ings</w>\ncap t\nda hl\nfer mentation</w>\nbri oche</w>\nto win</w>\nout lander\nmassi mo</w>\nen cro\nðŁ¥ ³\nbuil t\npo tam\nkir i</w>\ntm w</w>\nmonit ored</w>\nk ites</w>\npeoples vote</w>\ngray son\níģ ¬</w>\nafri ka</w>\na dies</w>\ni vote\ngy ne\ng annon</w>\ndi x\nc mc</w>\nou ral</w>\nfox andfriends</w>\nbel i</w>\nig ne</w>\ngl an</w>\nkatrin akaif</w>\nco politics</w>\nqual itative</w>\np si\nlu cci</w>\ndisc oura\nâĺ ®</w>\nkel li\ngau tam\ncarac as</w>\nreale st</w>\npu la\nin us</w>\nhill top</w>\nmake aw\natten borough</w>\ntw y\nr arity</w>\npeck ham</w>\nma hon\ncorn elius</w>\nclin icians</w>\nton line</w>\ntb i</w>\nparadi se\nka si\ninev it\nfresh ness</w>\ncolling wood</w>\nlun atic</w>\ndefen se\ncop d</w>\nin fra</w>\nwain wright</w>\nsains bury</w>\nalab am\nte ma</w>\nlac o\nchec ker</w>\nreleg ated</w>\ntren t\nstal ks</w>\nhuff post\nbhubanes war</w>\nast ral</w>\nshare your\nprim rose</w>\nhi me</w>\ncat an</w>\nend ment</w>\nen dow\ncle mens</w>\nmal oney</w>\nhil ary\ngame time</w>\nden ise\ncollabor ators</w>\nb wo\nradic als</w>\ngue tta</w>\nici on\nau a</w>\nsnap matic</w>\nsat chel</w>\nexcav ation</w>\nbase man</w>\ns Ã£o</w>\ngn ation</w>\nfel d\nsurve y\nshah zad</w>\nma st\nanirud hofficial</w>\ntru cker</w>\not ago</w>\ngeo graph\nethe l</w>\nâļ¡ï¸ı âļ¡ï¸ı</w>\ns ver\nmu tt</w>\ninternetof things</w>\nancho red</w>\nwh ouse</w>\nbang la</w>\nbal main</w>\nç¹ ĭãģ\nbreak fa\ná Ģ\ntwi ster</w>\nte tris</w>\nca v</w>\nstag s</w>\ng z\nau b</w>\nstor med</w>\nhel ens</w>\nyar mouth</w>\nst asy</w>\ngustav o</w>\nco sc\nvin son</w>\nup p</w>\nsc ricket</w>\nassump tions</w>\napp e</w>\nnu h</w>\nu er</w>\npre mise</w>\nn aga\ne amon\ncoron ary</w>\nna f</w>\nnorth side</w>\nel mer</w>\nro tar\nout lining</w>\nel f\nre surg\nkat elyn</w>\nin can\nhyster ia</w>\nce e\nam bani</w>\npro lly</w>\nĮ ãĤĬãģ\nax es</w>\nsan jose</w>\nrem brandt</w>\nmag pie</w>\neven ly</w>\nscor sese</w>\nqu aint</w>\nf g\nb buk</w>\nindian football</w>\nweare all\nspd wy</w>\npis ces</w>\nec g</w>\nâĺħâĺħâĺħâĺħ âĺħ</w>\npre orders</w>\n: |</w>\nni pple</w>\nsal azar</w>\nju me\njail break</w>\nmin n\nbas sett</w>\nze tta</w>\njef free\nad jun\ntic on</w>\nsan diego\ndrink local</w>\nchol era</w>\nsolic itors</w>\no bo\ncom post\nni an</w>\nwr a</w>\ntre ach\nic ic\nprofession al\ndel ve</w>\nleg ate</w>\nhistor ia</w>\ncro issant</w>\ncon noisse\nnam o\npalli ative</w>\nchem trails</w>\ni ority</w>\nglobal warming</w>\ncomic art</w>\nbehavi oural</w>\nre sted</w>\nli as</w>\ncli mates</w>\nŁ ãģĦ</w>\nrut land</w>\nnou rish</w>\nmenopau se</w>\nhot ties</w>\ndemen ti\nve spa</w>\nmel ville</w>\nanal ogue</w>\ntz man</w>\nstr ung</w>\nim perfect</w>\ngl are</w>\ncir cling</w>\nros berg</w>\nrec o</w>\noc ity\nlo ire</w>\nem be\ndo ssier</w>\nne el</w>\nnan do\nme a\ngal vani\nfin esse</w>\nag p</w>\nberke ley\nasi m</w>\nâĺº âĺº</w>\nquil ted</w>\nish ere</w>\nun matched</w>\npo tion</w>\nfor z\nat re\nselfi es\njuli ana</w>\nðŁļ ¶\nâĸ º\nmel ton</w>\nâłĢâłĢâłĢâłĢ âłĢâłĢâłĢâłĢ\nspin rilla</w>\npur cell</w>\ned p</w>\nat leti</w>\ntony awards</w>\nra ja\npro gno\nmol ten</w>\nstu ff\np ally</w>\nnobel prize</w>\nâĻ» ï¸ı</w>\nspiritu al\nspe ake\nsa sha\nbri um</w>\ntru ss</w>\ncritici ze</w>\nassassinscre ed</w>\nyor uba</w>\nu lo\nfire man</w>\nworkin progress</w>\nef cc</w>\nfla res</w>\nro bot\nhi kers</w>\ncl l\nshado wing</w>\npat sy</w>\nleh man</w>\nc ns</w>\nå ±\nguad al\nà± į</w>\nra pe\nr honda</w>\nparalle ls</w>\nson ja</w>\nlangu age\nland ings</w>\nz ola</w>\ncr amps</w>\nbur ning\napprais al</w>\njol la</w>\nham m</w>\nkas a</w>\ngul ly</w>\nf go</w>\nuly sses</w>\nri be\nðŁĴ Ħ\nib u</w>\neti enne</w>\nbri ar</w>\nfin ely</w>\ncomb ating</w>\ny ql</w>\ngo tham\nwe chat</w>\nto paz</w>\nprimar ies</w>\nl se\niz z</w>\nhel e</w>\ndispon ible</w>\ncy stic</w>\nbel ichick</w>\nth rush</w>\nkansas city</w>\nge om\nsoli di\nred bubble</w>\nby stand\ncambridge shire</w>\npar fait</w>\nast le</w>\now o</w>\nind ore</w>\nstom ping</w>\nsm elly</w>\nðŁ¤ ĸ</w>\nlocom o\nadm itting</w>\nhol me</w>\nclock wise</w>\nmin sk</w>\nmc co\nfor get\nev p</w>\ncam ra</w>\nab ella</w>\nyo tes</w>\nuniversit yof\nmÃ© xico</w>\nsilver ado</w>\nric ket\ncrom bie</w>\npu j\neradic ate</w>\ndeli ght\ny go\nglam ping</w>\nvic a</w>\ndu ggan</w>\ncoun ters</w>\ncf d</w>\nsc our\nreact js</w>\npu ram</w>\nparas ites</w>\nin ki\nvill en\nstel la\nli mbo</w>\nang as</w>\nk cr\nðŁĴļðŁĴļ ðŁĴļ</w>\nvap ori\nmum ford</w>\noli gar\nà ¼\nal oo</w>\nboo ties</w>\nad r</w>\nk elli</w>\ndru mmers</w>\nav ici\nnature uk</w>\nron al\nin trac\nun splash</w>\nle che</w>\ng oma</w>\nel ine\nenvir o</w>\nbi onic</w>\nbu eno</w>\nmi k</w>\nav in\nstar ling</w>\nem powers</w>\ncake day</w>\nboy cot\nðŁĴļ ðŁĴļ</w>\nðŁĮ¸ ðŁĮ¸\nv ach\nm ci\nfractu res</w>\nger i</w>\nsk ing\nexclu ded</w>\nlu ce</w>\nja ve\nig gy\nevi den\naki stan</w>\na wn</w>\nmor als</w>\nluci fer\nha ban\ntumb ling</w>\nsunday motivation</w>\nmo sley</w>\ncaptain america</w>\nsch icago</w>\nthe one</w>\nmo td</w>\nd ts</w>\nðŁĲ ¼</w>\nrep ell\nii i\nlocu st</w>\ngeo spatial</w>\nmer sey</w>\nimmer se</w>\ndesc end</w>\nber nade\nj s\nboat sales</w>\nwin der</w>\ncran k\nsing leton</w>\ncandid acy</w>\nben a</w>\nðŁı» âĢį\nhigh lander</w>\nol t</w>\nk prs</w>\nhealthy lifestyle</w>\nfour teen</w>\nend the\nith aca</w>\ncircul ated</w>\nr ans</w>\npre valent</w>\nha vas\nsplend or</w>\nroo ster\nkalamaz oo</w>\njewell ers</w>\nenne dy</w>\nrou sey</w>\nes y\ncann ons</w>\nornam ental</w>\n// //\nren don</w>\nwin ne\nmol ding</w>\neid mubarak</w>\ncoun tess</w>\nsimon a</w>\nha wa</w>\nfo es</w>\ndu ster</w>\nsb u</w>\npor tray</w>\nmar ries</w>\ngoo dday\ncho co\nachi ever</w>\nðŁĺ¹ ðŁĺ¹\npre neur</w>\ntr amp</w>\ntom i</w>\nn bat\ngarden chat</w>\nfarra khan</w>\never glades</w>\nab ru\nsou sa</w>\nse ce\nhomes wee\nterre strial</w>\nbar it\nsri devi</w>\nol u</w>\nmel inda</w>\nf rick</w>\ncan dies</w>\nðŁĺŃ ðŁĴķ</w>\nqu reshi</w>\nfamily fun</w>\nexor cist</w>\ncardin al\nny t\ndies el\ncu mulus</w>\ncapric orn</w>\nsi ology</w>\nlor na</w>\ndou gie</w>\nan die</w>\nsuper sport</w>\nc fl\nÐ¿ ÑĢÐ¸\nsay ang</w>\npe ek\nà¸ Ĭ</w>\nlo be</w>\nj em\ning lis</w>\ngg led</w>\nc sn</w>\namne sty\nchu ps</w>\nba es</w>\nsau er\nðŁı Ĳ\nmongo lian</w>\nen et</w>\nback street\ndr illed</w>\nacce ssing</w>\nce o\nb se</w>\nai ken</w>\npur r</w>\nwor sen\nwhe res\nwar k\ntesti fying</w>\nbu ri\nbla st\naw g</w>\nðŁĵ ĭ</w>\nre defining</w>\nhear ing\nu ci\nc mp\nbon i</w>\ntail oring</w>\nta ji\nnoc chi</w>\nem t</w>\nstephen king</w>\nne et</w>\ncompla ins</w>\ncampaig ner</w>\nluci ano</w>\ntwili ght\nti esto</w>\npas sports</w>\nflo yd\ncathe dr\nna ked\ncaregi ver</w>\nb coz</w>\nade cides</w>\nku ri\nly k</w>\nbr aries</w>\ndren ched</w>\ndisc lose</w>\nðŁĴª ðŁı½\nle blanc</w>\nje tty</w>\ngar ty</w>\nchip mun\nb su</w>\nrhyth mic</w>\nic z</w>\nfri d</w>\nanne x</w>\name x</w>\nsolo ist</w>\nlanc ers</w>\narro whead</w>\nspeci fication</w>\nsimul ated</w>\nna is\ninver te\nbo wing</w>\nwor ship\nf z</w>\nabo ss</w>\nsha q\nì¶ ķ\nchalleng ers</w>\nan arch\naamaadmi party</w>\nãħĭãħĭ ãħĭ</w>\nsuffol k\nso corro</w>\nsn ell</w>\ncla dding</w>\nabsor bing</w>\nshaw a</w>\nparticip ates</w>\nðŁį Ķ\nbook stores</w>\nbak u\nseap ort</w>\nko jima</w>\ngab y</w>\npack ard</w>\nelectr ician</w>\nlet it\nmo wing</w>\nfa wad\nyoung jae</w>\nhot mail</w>\nmen ing\nu rie</w>\nintim acy</w>\ncon ti\n: \")</w>\nlifeis good</w>\nin ciner\ni dri\ncraz iness</w>\njour nos</w>\nfran chi\nbott len\nal da</w>\nff es</w>\nk x</w>\nsouth we\nair a</w>\nclay ton\nsco ti\nf j</w>\nbri ga\nðŁ¤ĺ ðŁı»\ndemonstr ators</w>\ny z</w>\nstor k</w>\nna q\ncasc ades</w>\ntravel chat</w>\nplat a</w>\npad ma</w>\nfran ci\nat tain</w>\nbat girl</w>\nlom bard</w>\nhoo s</w>\nd dos</w>\nneon atal</w>\ndiscla imer</w>\nr ss\nr ant\ndi sen\ntex aste\nso cal\nfrac tal</w>\ncam ry</w>\nstri fe</w>\nsn acking</w>\nmu h</w>\nsant ander</w>\nmor ons</w>\ngra f\npar ades</w>\nhu ston</w>\ndru pal</w>\nmi ento</w>\nkir stel</w>\nhy de\nvom it</w>\nforti fied</w>\nsphin x</w>\nda v</w>\nbir yani</w>\nwin nings</w>\ns baseball</w>\nmer ged</w>\nlovel ondon</w>\nling ering</w>\ndream big</w>\ncar leton</w>\nliveli hood</w>\ndjan go</w>\nastri d</w>\ngri ds</w>\ndown e</w>\nbru ised</w>\ns ne</w>\nscarec row</w>\nhel ium</w>\nf nc</w>\nbi ggs</w>\nan ter\nrestor ative</w>\nem pires</w>\nab del\nlife style\nkiwan is</w>\ncolloqui um</w>\nme en</w>\npr ick</w>\nanti que\nze b</w>\nmi mic</w>\nedmon ds</w>\nðŁĳĬ ðŁĳĬ</w>\nq ing\npp el</w>\nmc gill\ninterpre ting</w>\nâŀ ķ</w>\nrash ad</w>\ndo ka</w>\nnarr ator</w>\nelectro magnetic</w>\nash by</w>\nsau ra\niran deal</w>\nâģ īï¸ı</w>\nkrish nan</w>\nin di</w>\nff en</w>\nbre a</w>\nos man</w>\nmultin ational</w>\nchi ppe\nrecruit ers</w>\naus biz</w>\np ounding</w>\nre gen\ncur sor</w>\nrefu sal</w>\nmac s</w>\nin ak\nax ial</w>\nwa ifu</w>\nup cycled</w>\nhindu stan</w>\ncas sini</w>\ncarly le</w>\nscrat ches</w>\nre ef\nman atee</w>\neat ery</w>\nðŁĵ ¢\nun condition\nsen pai</w>\non ther\ncomic book</w>\npro sciutto</w>\nde mar</w>\nmi se\nma ge\nfre ec\naye sha</w>\nal der</w>\nandroid games</w>\nley ton</w>\nho ck</w>\ndoor way</w>\nchicagof ire</w>\naali yah</w>\nsw elling</w>\nbi x\n. ðŁĺĤ</w>\nevan kirstel</w>\ntorpe do</w>\nkon stant\ngenevie ve</w>\nma ia</w>\nha user</w>\ndo torg</w>\nhide ous</w>\nfi k</w>\nsp raw\ne ek</w>\nz appa</w>\nwan dered</w>\n' '\nra jan</w>\nbam bi</w>\n( $)</w>\nwid ening</w>\ntool box</w>\nsa ir\nillumin ating</w>\npra ys</w>\nout patient</w>\ni w</w>\nday o</w>\nlo b</w>\nsw fl</w>\nsha des\ngu ms</w>\ncoo kin</w>\nko di\ngri ffin\ntraum ati\nste a</w>\nslaugh tered</w>\ngod bless\nair time</w>\npseu do</w>\nb sa</w>\nhau led</w>\nar if</w>\nà¸Ńà¸ ĩ\nle l</w>\nwc po</w>\nmil iti\nchar ters</w>\nworl da\nru k</w>\nk gs</w>\ndigital india</w>\nis able</w>\nidyl lic</w>\nesp ino\nmarie tta</w>\ne bo</w>\nteam canada</w>\nab our</w>\nwil ton</w>\nrock stars</w>\nfav ored</w>\nphys ic\nwrink le</w>\ntb r</w>\nd print</w>\nball arat</w>\nad al\nz ey\nðŁĺį ðŁĶ¥</w>\ntom lin</w>\nmt r</w>\npal sy</w>\nfener bah\ntight en</w>\nphil ia</w>\nir oning</w>\nry u\nb ant</w>\nenqu ire</w>\nca ir</w>\nabur ger</w>\ntru n</w>\ngreen berg</w>\nchau han</w>\nir ina</w>\nsh ani\ntrend setter</w>\npre tt\nzaf ar</w>\nalo ve\nv ici\npan ic\nno o</w>\nlu stre</w>\ndisrup ted</w>\nbal lis\nson sof\nmon si\ninst ac\nake st</w>\nëĭ ¤\nkw ame</w>\nhorror movies</w>\ndistric t\nsau cy</w>\nmb an</w>\nar mies</w>\nwith drawn</w>\nmed ics</w>\nloft us</w>\ner oom</w>\nbe kind</w>\nar ns</w>\nall on</w>\nun ison</w>\ndavi ds</w>\ncr at</w>\nnicot ine</w>\nso or\nsm x</w>\non co\ncospla ying</w>\nzombi es\nhar ms</w>\ne ger\nro sy</w>\nmoon shine</w>\nfe in\nce tt</w>\ndu brov\nreg ents</w>\nben itez</w>\nðŁĳıðŁı¼ ðŁĳıðŁı¼</w>\nste c</w>\nm alia</w>\nprioriti ze</w>\nic eland\nft se</w>\nv amo\nlam ont</w>\nhomo sexuality</w>\nbre es</w>\nregu i</w>\ncb p</w>\nte j</w>\nsky sports</w>\ndeter gent</w>\nsha sta</w>\nde rel\nconserv ancy</w>\ncolori zed</w>\naccol ades</w>\nvis o</w>\nshow your\nnan ow\nbice ps</w>\nus ability</w>\nbi m\ndailys ketch</w>\npearl jam</w>\nstran gest</w>\nmega deth</w>\nbroad casts</w>\nbar ren</w>\nar ton</w>\nchri ss\nconfi gu\nlu res</w>\nis the\ne ul\nrailway ana</w>\nglobal health</w>\ngi anni</w>\nu aap\ns lum</w>\nconsci ously</w>\nab re</w>\nn up\nbud get\nv ada</w>\ne sch\nreal ness</w>\ner ased</w>\nth unt</w>\nbe z</w>\narmist ice</w>\nðŁĳ ¹</w>\nsh run\no led</w>\ndriver less</w>\nðŁ¤· ðŁı»âĢįâĻĢï¸ı</w>\nwon dr\nsk an\nsal aam</w>\nmother land</w>\nh wang</w>\ngen o</w>\ngang nam</w>\ntw right</w>\nendor sing</w>\nen ic\nador ation</w>\npau sed</w>\npatric ks</w>\ndo cked</w>\nplat te</w>\nff xv</w>\nethnic ity</w>\nauto show</w>\nside show</w>\nafter life</w>\nre located</w>\norphan ed</w>\nfood network</w>\ndare to\nand ra\nsla ps</w>\nv live</w>\nswim s</w>\nre imagined</w>\nmist le\nre vise</w>\nreal ity\nbhar ti</w>\nðŁĴĻ ðŁĴĽ\nlate st\nprou dest</w>\ngra sses</w>\nlan yard</w>\nfresh est</w>\ncarcin oma</w>\nanom aly</w>\nzieg ler</w>\nsum ner</w>\nly rix</w>\ngor g</w>\nis d\nav el\nswild life</w>\nme squ\njohn cena</w>\neuro league</w>\nsab er\nmaster ful</w>\nyar ra</w>\ncogn ition</w>\njacob son</w>\nabo lic</w>\nsir loin</w>\nshuk la</w>\nmoj ito</w>\nsu pere\nst weet</w>\nme z</w>\ne sa\nrudol f</w>\ngur a</w>\nwhere you\ntt m</w>\nwin s\ntrust worthy</w>\nny k</w>\nbra den</w>\ntable top\ngood food</w>\nes on\nbe k\nlingui stic</w>\ngra ys</w>\nch ath\nh cs</w>\nmon i\nde ans</w>\ncu ssions</w>\nch ell</w>\nslo ws</w>\nhe mi</w>\nd app\nshar pie</w>\nboo sters</w>\na os</w>\nstr ack</w>\nse dona</w>\nmu eller\nhard wick</w>\nor nate</w>\nthor a</w>\nsal ud</w>\no twol\nch um\nmi ho</w>\nfor age</w>\nthel ittle\ntear ful</w>\nones elf</w>\nmin dy\nsm g</w>\ngmb h</w>\nemer ald\nðŁĶ´ âļªï¸ı\ntu tti</w>\nrecep tions</w>\nre vising</w>\ni brox</w>\ntope ka</w>\nsal ami</w>\nexpan se</w>\ni books</w>\ndob son</w>\ncli o</w>\nat s\nðŁļ Į</w>\nmo ha\nis ance</w>\nshu tters</w>\nmoo t</w>\njan ine</w>\nmarvel comics</w>\njor dani\npos er</w>\nkenne th\nhy ung\nde ja</w>\nase ball</w>\nspeci ality</w>\neu ston</w>\nclassic car</w>\nhad ith</w>\nðŁĲ ī</w>\nchas ing\niz o</w>\ngros ven\nag lia</w>\nthisdayin history</w>\nt row</w>\nom ile</w>\nhu ar\nby n\nsal ine</w>\ndiv ine\ndemon ic</w>\nty ran\nhan dover</w>\nrevit alization</w>\npa ella</w>\ncryp tic</w>\nse dg\nm end</w>\ndun kirk</w>\nbre d\nwal d\nsport scar</w>\na ard\nwhe aton</w>\nda ener\nk lan</w>\nbr t</w>\nbakhta war\nspi res</w>\nschu bert</w>\nro ti</w>\npoli sh\no se\nag ame</w>\nwonder con</w>\nprote stant</w>\nbo sa</w>\nðŁĺ Ł</w>\nd Ã¼\njoy ride</w>\nger trude</w>\nâĿ Ŀ</w>\ngil a</w>\nv h\ntw a</w>\ntra v</w>\nswal lowed</w>\nstar ve</w>\nla in\nent ren\nrei ki</w>\nsu kh\ncra ic</w>\naz u</w>\nweb page</w>\nkee fe</w>\nhypo the\nhir sch</w>\nhel le</w>\ncamp ground</w>\nw amy</w>\ntra vi\nsha hi</w>\nsan deep</w>\nru i</w>\nhan uman</w>\ndw p</w>\nreposit ory</w>\nno or\nno ff</w>\nun real\np ell</w>\nblack history</w>\nhar vick</w>\nma scar\npay ee</w>\npa sha</w>\ngastron omy</w>\nd ÃŃ\nai g</w>\nrosen thal</w>\nopen day</w>\nembelli shed</w>\nt tip</w>\nsun bathing</w>\ngo pack\nend ome\nï¸ı #</w>\ninvali d</w>\nfinal four</w>\nst fu</w>\nsquish y</w>\nra sta</w>\nmo sch\njam esc\ndie trich</w>\nsel a</w>\nmel b\nel vi\nt dp</w>\nsun i</w>\nsli t</w>\nj ha\nbi za</w>\nspi ked</w>\nl li\nl illard</w>\nvam pi\nsyno psis</w>\naz har</w>\nkendrick lamar</w>\nĮãĤĬãģ ŁãģĦ</w>\nheart less</w>\ncountry file</w>\nair play</w>\narrog ance</w>\npre e</w>\nvirtu oso</w>\nãħłãħł ãħłãħł\nraj u</w>\nle bu\nfor ward\ntu g\ndro s</w>\nmondaymotiv aton</w>\nconcep cion</w>\nthel o\npad i</w>\nlooo ol</w>\nÑĢ Ð¾Ð´\nit ss\neth ical\nend uro</w>\n__ :</w>\nexpend iture</w>\nmon ste\nmas king</w>\nterri ers</w>\nib is</w>\ne mber</w>\ncu mple</w>\npunctu ation</w>\npi per\nir vin</w>\nade e</w>\nyy yyyy</w>\nflash backs</w>\ncel sius</w>\ndon nie\nbo gota</w>\nben evol\nthe script</w>\nshil pa\npro se\nfin dia</w>\nze ke</w>\nne ko</w>\ndo ves</w>\nblues lyrix</w>\nfro sh</w>\nsowe to</w>\nmp lo\nal ai</w>\nsab i</w>\nraq qa</w>\nwf tv</w>\nstro ller</w>\nian somerhalder</w>\nðŁĶ ª\nan on\nmo seley</w>\n! ?!?</w>\nsta king</w>\nmol y</w>\ncar tri\nc sg</w>\nast or</w>\ntransc end\nma er\nde ux</w>\ncow girl</w>\nsas k\npun ter</w>\nma ken\no ates</w>\nlove tt</w>\ngrow ler</w>\nsag in\nv n\nssi ble</w>\nofficeof rg</w>\ny mc\nsab ar\nfaul ty</w>\nap ha</w>\nak on</w>\nðŁĳ «\nsnow don</w>\nae w</w>\nraise the\nðĿ ĵ\ngrue some</w>\nclement ine</w>\nsp ing</w>\nlat a</w>\nworlden viron\nmi mic\ncan aria</w>\nbakhtawar bz</w>\nao a</w>\nfal a\nãĤ Ń\navi va</w>\nyou uuu</w>\nthi gh\nla dders</w>\ngu mbo</w>\ntz ky</w>\nfu zz\nplastic pollution</w>\nest ate\nstrength ened</w>\nk ant</w>\ndr in</w>\ncal vert</w>\ntransform ational</w>\nfrigh tened</w>\nmac lean</w>\nelited angerous</w>\near thy</w>\nt son</w>\nto da</w>\nj nu</w>\n.. ,</w>\nmic hal\ni ban\nje ong\nis real</w>\nsim coe</w>\nexclu sives</w>\nblue bells</w>\nben e</w>\nte u\npil sner</w>\npens ke</w>\nathe ists</w>\nm pu\ncartag ena</w>\nðŁĴĹ ðŁĴĹ\nmillion aires</w>\nkk kk</w>\nit ar</w>\nsubscri ptions</w>\nremo te\nma fi\nhin ton</w>\nw cc\nho k</w>\nds b\nab leton</w>\nsevent y</w>\npun ks</w>\ne indhoven</w>\nsh one</w>\nmcfar lane</w>\nlim popo</w>\nempha si\nÃ ¼</w>\nsin fo</w>\npe tre\nman grove</w>\nch ino\nber tie</w>\nplay lists</w>\npush awards\np af\ndeb bie\nc do</w>\nr ino</w>\nðŁı¾ âĢįâĻĤï¸ı</w>\nfol ke\nbon nar\nth ine</w>\nsl an</w>\nhal ter</w>\nevi e</w>\naw some</w>\nvul tures</w>\nspar ky</w>\nseiz ures</w>\nâľ Ķ\nram one</w>\nine ffe\nal n\npro ctor</w>\nast ra\nthe voice\ngro te\nsci on</w>\ndead line\nam aya</w>\ntain ted</w>\npatter ned</w>\nexce eding</w>\ncross fit\nkay lee</w>\ndrop box</w>\nru shes</w>\ntack led</w>\nmo by</w>\nretro gamer</w>\nn cbd</w>\nbenef itting</w>\nshay kh</w>\nguild hall</w>\ngen try</w>\ndream cast</w>\ndread ed</w>\nbun dled</w>\nth aw</w>\nrevol ving</w>\nn pt</w>\nkylie jenner</w>\nimagin ative</w>\nron i</w>\nover came</w>\nfamily time</w>\nds burg</w>\ncar naval</w>\nrelation ship\nrecogni zable</w>\ncor oner</w>\nho le\nfan fic</w>\nemir ates\nbur ritos</w>\nanaly se</w>\nthin ner</w>\nne es</w>\ngalli poli</w>\nbl r</w>\ncat woman</w>\n-- >></w>\nau lt\nada ily</w>\nnau ghty\nili o</w>\nsolit aire</w>\nmtv br\njocel yn</w>\narun ach\nrep ent\nsouth gate</w>\nhy acin\nessenti al\nfent on</w>\nand um</w>\nit or\ngo pal</w>\nsl inger</w>\npo sei\naw il\nwi elding</w>\nra ila</w>\neli as\na sto\nÃ ¤</w>\ntend ency</w>\nstr ata</w>\nker t</w>\n< -</w>\nim acele\nda es\nsti mulus</w>\nhan ley</w>\nfit nes\nec stasy</w>\nlim ous\nha iling</w>\nðŁ¤ Ń</w>\nchis wick</w>\ntar ies</w>\nsla v</w>\npul i</w>\nmoderni zation</w>\nblack mail</w>\nb ingham</w>\nh fx\n+ +\nðŁĩ®ðŁĩ ³\nni v</w>\nwe a</w>\nprofess or\nk off</w>\nbol ster</w>\nsu ave</w>\nsequ ences</w>\npepper oni</w>\nnot te</w>\ndre n</w>\nãģ¨ ç¹ĭãģ\nhs v</w>\no ga</w>\nap tly</w>\nz ad\nexcel si\nrin ka</w>\nmol dova</w>\nmin n</w>\nma bel</w>\nconferen cing</w>\nbas ing\nof er\nob si\nhamill himself</w>\ncare less</w>\nbrief ed</w>\ninhe rent</w>\npar ish\ndub nation</w>\ntown sville</w>\nsar awak</w>\ngee ky</w>\ndoncaster isgreat</w>\nwas abi</w>\ngu p</w>\nphen o\ndra inthe\ncarrie underwood</w>\nble eds</w>\nbbc world</w>\nane w</w>\nalta f</w>\ndul wich</w>\nani ston</w>\nw ti</w>\nsumat ra</w>\ngra fton</w>\nbl n</w>\nme ster</w>\nbode ga</w>\nre go</w>\nes q</w>\nan jo</w>\nsump tuous</w>\nmai sie</w>\nï¿ ½\nwil t</w>\njak ob</w>\nel vis\nse pul\nmu ster</w>\nair pollution</w>\npresident e</w>\nhappy monday</w>\nexten sively</w>\nfl ondon</w>\nt ls</w>\nplay ing\npe ed</w>\ndin ho</w>\nvar dy</w>\npi ka</w>\nn iro</w>\nau cus</w>\nðŁį ¦\nnu ll</w>\nel ondon</w>\njuvent us\nimag ines</w>\ndis ab\nlit o</w>\nd ura</w>\nwork places</w>\npromo te\nmc caf\nwood work</w>\nwaw x</w>\nà® ª</w>\ntt ino</w>\nshar i</w>\nsem per\nbetter together</w>\nðŁĳĬ ðŁı»\nze bra\npon dering</w>\nen chil\nho m</w>\ncosm ic\ntan z\nmo cked</w>\nec cc</w>\nath ed</w>\nabo lish</w>\nprop eller</w>\nparis agreement</w>\nassemb lies</w>\nindu stry\nfraudul ent</w>\npe sa</w>\nchang min</w>\nax x\nðŁĴ µ\nirr ational</w>\ncu sa</w>\nramad han</w>\nocta via</w>\non elove</w>\njac ki\nbar ak\ntaxi der\nseri ous\nnathan fillion</w>\nmc en\nch k</w>\npo part</w>\ngrav ity\ncopp ola</w>\nreading fc</w>\nillu sions</w>\nj ig</w>\nww x</w>\nre sh</w>\nex porting</w>\nbuzz ard</w>\nâĻ ¤</w>\np cm</w>\nlan apar\nko s\narom as</w>\nantal ya</w>\nww dc</w>\nven a</w>\nphil a</w>\nball in\nðŁĳ Ħ</w>\nquin ta</w>\nma o\nf ery</w>\neigh ty</w>\nsentim ents</w>\nsafe guarding</w>\nr wa</w>\npu ffs</w>\nluc ille</w>\nde cath\nsl u</w>\nnu gent</w>\nde ter</w>\nbraz il\nze iss</w>\nsuper bowl\nsubsi dy</w>\nalter n\nhi dalgo</w>\nenz ymes</w>\nä ½\ntag ne</w>\nhair dresser</w>\nadri en</w>\nwalk out</w>\noppo ses</w>\ncan tina</w>\nbed side</w>\naf an\nðŁĶ Ĺ\nprophe tic</w>\ndan es</w>\nun successful</w>\nsuper charged</w>\npk k</w>\nexem ption</w>\nhart le\nsecu lar\ncli pping</w>\nbr s</w>\nunited way\nc net</w>\npat chy</w>\nha gan</w>\ne en\nâļ ľ\nvar a</w>\nsym pathi\nnever trump</w>\naffir mation</w>\nom f</w>\nny cfc</w>\nma ja</w>\nsur ro\nkeer th\nup scale</w>\nsandal wood</w>\nmon archy</w>\nkno bs</w>\nå ĭ\npo tholes</w>\nhunger games</w>\nter races</w>\nna sir</w>\ncoun sell\nwelcome to\nwa q\nse aman</w>\nm ita</w>\nstun ningly</w>\non theroad</w>\nin ability</w>\n) !!</w>\nbon go</w>\nant v</w>\nsp ut\nworldenviron mentday</w>\nresu sc\ny td</w>\nfi m</w>\neun hyuk</w>\nsa chin\nrose anne</w>\ncler mont</w>\nape c</w>\nam ina</w>\nv ening</w>\nn antes</w>\nal most\nsin us</w>\nex as</w>\nty l</w>\nti en</w>\nple ad</w>\nlanc s</w>\nbur naby</w>\nre k\njo om\nobserv ers</w>\ndisco graphy</w>\ncl g</w>\nâĻ ¦</w>\nsn ack\nr ti</w>\no ily</w>\ncrystal li\nbru te</w>\nweb development</w>\ntopp ings</w>\nla f\nan is</w>\nad der</w>\nreli ving</w>\ncar lin</w>\nbattle of\nwe g</w>\nsyri an\npon t\nn dc</w>\nlagh ate\nyu ma</w>\nsp p</w>\np iti\nro bbing</w>\nmart ing\nrey kja\nraj put</w>\nnc ds</w>\nkie wicz</w>\nâĢ¢ âĢ¢</w>\nvam pire\nsubstan tially</w>\nopio ids</w>\nnepal i</w>\nk line</w>\nar oo</w>\nunder stand\nlit t</w>\nu it</w>\nthro mbo\nsar ies</w>\nqu ot</w>\nb alling</w>\nt tr\ns gh</w>\nphilip p</w>\nbr ant</w>\nac l\nm ello</w>\nwhit taker</w>\n. ;</w>\ndefi ant</w>\nb gc</w>\nrepl ying</w>\nmir ren</w>\nmetamor pho\nsch wab</w>\nbul ge</w>\nutili zed</w>\npick ering</w>\npar don\nd sa</w>\nà¸ Ī\ndoo ley</w>\ncumul ative</w>\nÐ »\nur gency</w>\ne mir</w>\n+ /-</w>\n¦ Ī</w>\not as</w>\nâı ³</w>\nstation ed</w>\ngrape vine</w>\nar ac\nkaran johar</w>\nf ancy\nsau l\ncoo gs</w>\nlgbt q\nØ§Ù ħ\njav i</w>\nu mmer</w>\npl l\nden is\ndai pur</w>\npu ffin</w>\nlewi sham</w>\nfand om\nco pe\nves matter</w>\ns ve\nhel pless</w>\ndeo dor\nostr ich</w>\nkaz an</w>\nfriday the</w>\ncon dor</w>\nv x</w>\nsophom ores</w>\nrob les</w>\ncu tt</w>\ncli mbers</w>\në¦ ¬\nsle g</w>\nsn f</w>\nmac ys</w>\nhydr ating</w>\ngrou pe</w>\npo yn\nmou lin</w>\nhg tv</w>\nlmfa ooo</w>\nsulph ur</w>\nasdfghj kl</w>\nannab elle</w>\nhump back</w>\nbra ved</w>\nviswas am</w>\nmulti purpose</w>\nhu midi\nescor ted</w>\nbarb ican</w>\nf ad</w>\ncor sa</w>\nðŁ¤ «</w>\npi ppa</w>\nhere to\ncan y\nser gi\nor cas</w>\no vie\ned ou\ns any\nglob alization</w>\nman cini</w>\nfood truck</w>\nf is</w>\ndefi brill\nsch re\nsma fia</w>\nlove wins</w>\nla ut\nk aka</w>\nhol lande</w>\ngame on</w>\nresurg ence</w>\nout side\nolympi ad</w>\nint an\nabstr action</w>\nrapi d\npal om\ncal le\njas min</w>\nattack ers</w>\nswag g</w>\nmit ra</w>\nky lo</w>\nà® ²</w>\nher mitage</w>\ngor do</w>\ne ira</w>\nso sfam</w>\nroll out</w>\nexc ite</w>\nsy nod</w>\nmer rill</w>\nc als</w>\nas sa</w>\nliveli hoods</w>\nju ve\nthe black\ngopack go</w>\nant lers</w>\nalban ian</w>\nwool ly</w>\nqu iche</w>\npuri fication</w>\nare th</w>\nsmar thome</w>\nne k</w>\nall blacks</w>\nmex icans</w>\nis m\nger ms</w>\ncomple xion</w>\nmar ck</w>\nu shi</w>\nðŁĲ Ĳ\nchar l\nca stic</w>\ntill erson</w>\ngiuli ani</w>\nbiode gradable</w>\nmal bec</w>\nbo is\nju bil\nim es</w>\nr ame</w>\ngene tic\nesp nu</w>\nch ley</w>\nso ho\ngo pher\ng sc</w>\nbuu ren</w>\ncu be\nbridesma ids</w>\nwebin ars</w>\nto e\nmani pur</w>\nviol ently</w>\nnotic ias</w>\nex changing</w>\nchi ev\nreplac eable</w>\nmuay thai</w>\nbu ss</w>\nsp il\ninstal ment</w>\ndiv ya</w>\ncait lin\no lim\nfil tering</w>\nwhirl wind</w>\nsta red</w>\nprior it\npr am\npompe ii</w>\nmono logue</w>\nk ite\nbu ka</w>\nâĢ¦ ..</w>\nvac cine\nbre ro</w>\nwoz ni\nsol ent</w>\nre ferr\nmy rt\ngridi ron</w>\ngalatasar ay</w>\nfro ze</w>\nclare mont</w>\nðŁ¥ ĥ</w>\nvictori as\nssel dorf</w>\npa stures</w>\nnet neutrality</w>\nch or</w>\nðŁĳ ģ\nà² ¿</w>\nwe ho</w>\nsymp tom</w>\njo sel\nin ous</w>\ndragon con</w>\npower ball</w>\np te</w>\nfour thofjuly</w>\nec la\near buds</w>\nwhere abouts</w>\nsalt life</w>\ndepriv ation</w>\nch ter</w>\nwi ggle</w>\nsyste m\nps st</w>\nch az\nd any</w>\nri mo</w>\noax aca</w>\nlanapar rilla</w>\nbarcel on\nmelanch oly</w>\nway back\nho tro\nn si\nl illy\nkur o</w>\nja han</w>\nintellec t</w>\nboard game</w>\nðŁı Ĭ</w>\nsneak peek</w>\nk prc</w>\njail s</w>\ncand el\nzan zi\nmor timer</w>\nstar ch</w>\nra gs</w>\np fa</w>\nlong live\nk art\ngir ona</w>\ncro cker</w>\nchristop h</w>\nprecau tions</w>\nwar ship</w>\nper m</w>\nparen t\nvan gogh</w>\ngif ford</w>\nallegh eny</w>\nra yn\nut m</w>\nsten cil</w>\nrec alling</w>\npen ney</w>\nz azzle</w>\nìĥ Ŀ\nhin ds</w>\naren as</w>\nnu ev\nlaw ler</w>\ngu in</w>\ndo this</w>\nðŁĳ ķ</w>\nì¶ķ íķĺ\nwe g\nti b\nri din</w>\ncomplex es</w>\nturbul ent</w>\npe sos</w>\nde marcus</w>\nvall arta</w>\nsam sun\nkis ses\nhein rich</w>\ndeport es</w>\nwil ms\nur d</w>\nthen ext\ninki gayo</w>\nho wi\nfir sts</w>\ncarri age\nclean liness</w>\nmas war\nis ch</w>\nax el\nsi zzle</w>\nroad house</w>\nfr ans</w>\nent ourage</w>\nco bble\nboo th\nbenedic t\ntal on</w>\nfc u</w>\nyear ofthe\nray on</w>\nraider nation</w>\nfo yle</w>\nko val\npi anos</w>\nl pg</w>\nbur mese</w>\nman ure</w>\ngeo caching</w>\ncosc ino</w>\nb np</w>\nfer ra\nstro phy</w>\nmar ais</w>\nce es</w>\nlegen dof\nkat niss</w>\neno ch</w>\nav ed</w>\nyou know\nd prk</w>\nðŁĺ¢ ðŁĺ¢</w>\nsp un\npro st</w>\nsor rows</w>\ncent red</w>\nke a</w>\ngal icia</w>\n? ðŁ¤Ķ</w>\nÑĢÐ¾Ð´ Ð°</w>\nbou chard</w>\nðŁĴĻ ðŁĴľ\nyu i</w>\nseed lings</w>\njon ah\nreco vers</w>\nny rd</w>\nboard room</w>\nsu ma</w>\nmy japs</w>\ntun g\nsha i</w>\nir gc</w>\neli o</w>\nwag ons</w>\nka shi\npolic emen</w>\njohn nie</w>\nale coscino</w>\nshop ify</w>\ndot ted</w>\nde tri\nva w</w>\nto fficial</w>\nin your\nchal mers</w>\ntrac ed</w>\nno vi\nby es</w>\nari el\nnipp on</w>\nla pel</w>\ngri ez\nb gs</w>\nfool ing</w>\nd ita</w>\nvijay sethu\nnm wx</w>\nas ot</w>\nkr anti</w>\nhel m\nve di</w>\nsic kest</w>\nmo chi</w>\nk abo\nshru bs</w>\nhe red\nb sp</w>\nsq m</w>\nham r</w>\ndul kar</w>\nanth a</w>\nnr f</w>\navoid ance</w>\nat en</w>\npubli x</w>\nbe arers</w>\nnas i</w>\nha p</w>\nh ells</w>\nðŁĸ ¥</w>\nà¸ ·</w>\nthelast jedi</w>\noh wx</w>\nðŁį «\nwa hoo</w>\nthere se</w>\nrec aps</w>\nss nhq</w>\nbird photography</w>\nv ay\npet ti\npau lo\nbel vedere</w>\n( *\ngr l</w>\ndu vet</w>\nc pec</w>\nsa it\npor sch\nmeas urable</w>\navi ators</w>\nfre mantle</w>\nbre en</w>\non om\nme and\nlife saving</w>\neu ref</w>\nen don</w>\nembar as\naira sia</w>\nel is</w>\ndun kin\nstar magic\ns ill</w>\nporto bello</w>\nki efer</w>\nex e</w>\nmu ted</w>\nãģ ¦\nwe thepeople</w>\nlogi a</w>\nliber al\ntheforce awakens</w>\nmin ed</w>\nhaun ts</w>\nfreck les</w>\ncare taker</w>\ns india</w>\nâķ Ĳ\ndev lin</w>\nlist on</w>\ndirection er</w>\noh n</w>\nfi garo</w>\nem manuel\ndu bois</w>\ncl ones</w>\nbru ise</w>\nðŁİĪ ðŁİī</w>\ndisin fe\nder matology</w>\nas r</w>\ns watch</w>\ndis comfort</w>\ntam anna\npi day</w>\nmack en\nk atic</w>\ndelu sional</w>\nshaw nee</w>\ngu d\nal bino</w>\np ali\ndin gh\ncucu mbers</w>\ncoffe y</w>\nanticip ating</w>\ntreas ured</w>\nweb summit</w>\nshel tered</w>\nsav or</w>\npedago gy</w>\nm gs</w>\nsh ma</w>\ns bu\nden ali</w>\ncam pos</w>\nbubble gum</w>\no ir\nle aps</w>\ny ler</w>\nr one\nsansk rit</w>\nmin t\nmeat less\nfuturi st</w>\ndu de\na vel</w>\nprote sted</w>\nsqu ire</w>\nz aki</w>\nsz n</w>\nhar court</w>\ncycl one\nbour dain</w>\ngather ings</w>\nd ant\nadvent urer</w>\nparag on</w>\nalt man</w>\ndd ing\nban erjee</w>\nsnorkel ing</w>\nmother well</w>\nmis sy\nen der\nglo ws</w>\nki wis</w>\nchick pea</w>\npor o\ne fron</w>\napp t</w>\nu y</w>\nspeci fied</w>\ngab by\ne strada</w>\ncom bos</w>\nbour bon\nvin i</w>\nvar un\nsteph ani\nkey words</w>\ncar vings</w>\namit abh</w>\nwr ought</w>\ntw al\nre els</w>\nclu bbing</w>\nubi quit\ncri t</w>\nambed kar</w>\næ Ļ\nprun ing</w>\nvaccin ated</w>\nboe ing\ns ks</w>\nlo ona</w>\nhypno sis</w>\nedel man</w>\npho l</w>\nhe w\ncolo sse\nmckin sey</w>\nu on\nto te\nsacrific ing</w>\nox i</w>\nn ang\ne mu\nÐ¿ÑĢÐ¸ ÑĢÐ¾Ð´Ð°</w>\nm th</w>\nkers wednesday</w>\nargu ed</w>\ntimel apse</w>\nris king</w>\nregul ating</w>\nni gh</w>\nlikeli hood</w>\ncu bic\nau ction\nrein for\npi stor\nno ses</w>\nye l</w>\nsnu ggles</w>\npe i\njean ette</w>\nta ku</w>\nri th\nguy z</w>\nà¸ ŀ</w>\ny te</w>\nver ted</w>\npay soff</w>\njau regui</w>\nhoo ligans</w>\nprocedu ral</w>\nmi b</w>\nhar dy\nel eng\nchec kers</w>\nall ine</w>\nthe met</w>\nprou dof\nkeerth yofficial</w>\ncollabor ator</w>\nni u</w>\ninfl icted</w>\nadv ani</w>\nre twee\nmemor iam</w>\nf icial</w>\nti ghter</w>\nsal em\nre viewers</w>\nbr ics</w>\nben digo</w>\nam ell</w>\ntur kish\nsush maswar\npaul son</w>\npal awan</w>\nmol lie</w>\nstitch er</w>\ns burgh</w>\nir u</w>\nhay dn</w>\nen ers</w>\naro a</w>\nu zzi</w>\nsaraj evo</w>\nhel a</w>\napol lo\nnine ty</w>\nvac a</w>\nsp on</w>\nvent u\njel ena</w>\nhei fer</w>\navo ids</w>\nsp ine\npri ze\nmar ist</w>\nre creating</w>\nme de</w>\nwoo den\nfind lay</w>\nro fl</w>\nn di</w>\ncompreh end</w>\nyu go\ny Ã¼\nto work</w>\nu fos</w>\nson ar</w>\npi ston</w>\nrecor ding\ntent ative</w>\nart forsale</w>\npel lets</w>\nfre do</w>\nÙĪ Ø±\nmu ses</w>\ncustom ization</w>\npro found\nis ner</w>\nide ally</w>\nsi am</w>\nplan kton</w>\ncm dr</w>\nman ger</w>\nfran ken</w>\ncustomiz able</w>\nà¤ ®\nwalk away</w>\nswi vel</w>\nvast ly</w>\nno ton\nlex a</w>\nex moor</w>\nz as</w>\ntan te</w>\nreduc tions</w>\nlol ly</w>\nhip sters</w>\nbenef ited</w>\në ²\nww www</w>\nmascul ine</w>\nfi ji\ndre y\nph ill</w>\nane ous</w>\nnic ol</w>\nmen dez</w>\ndisapp ro\nch ner</w>\nthrough s</w>\nshen mue</w>\neast man</w>\nðŁĲ İ\nyu ck</w>\nunder tale</w>\nre ys</w>\ngo beavs</w>\neng en</w>\nc na</w>\nmer r\nbir k\nãģ¨ç¹ĭãģ ĮãĤĬãģŁãģĦ</w>\nâĥ£ @</w>\nyn na</w>\nste ed</w>\noffen der</w>\nat um</w>\nvani shing</w>\npresi denti\nlove them</w>\ng nocchi</w>\nfri ggin</w>\nper il</w>\nmad hya</w>\nag ne</w>\ndee jay\nmar nock</w>\nm tb\nfold able</w>\n@ ___</w>\nstand re\nbron x\nbow ski</w>\nfin ite</w>\ncro ckett</w>\nb sf</w>\nge tit</w>\nseren awilliams</w>\nmir o</w>\nignati us</w>\nsla y\nrin se</w>\nfon due</w>\nsel dom</w>\ns more</w>\ngan i</w>\ndy ce</w>\ndmit ry</w>\ncru mb\nlate post</w>\npri mark</w>\noh ana</w>\nflor als</w>\ndo a</w>\nremembrance day</w>\nd ds</w>\nazi one</w>\ntoon ami</w>\nair port\næĿ ±\nth ad\nfi st\ndine sh</w>\ndr who</w>\nad words</w>\nadmi rer</w>\npro je\nkyrgy z\nà «\nmanife station</w>\nle wan\nj ic\nthi bau\nle ased</w>\nvan ity\nnouri shed</w>\nnever theless</w>\naug mente\nfu elled</w>\nche ad\nwil shere</w>\nru di\np z</w>\nmy co\nmor ro</w>\nherbali fe</w>\nhardro ck\nde man</w>\ndre ality</w>\nsp ades</w>\nce vic\nbha i\nbar on\nultimat efan\nhou news</w>\nto bi</w>\nstru t</w>\nke el</w>\naffili ation</w>\nthe masters</w>\nsm al\nhu e\neste ban</w>\ncon v</w>\nom nic\ndatab ases</w>\nco v</w>\nter ti\nst g</w>\nsnoop dogg</w>\nmetab ol\nleth bridge</w>\nðŁı» âĢįâĻĢï¸ı\nyear ling</w>\nresidente vil</w>\nnws l</w>\niy aki</w>\ngriez mann</w>\nc ous</w>\nðŁĵĿ :</w>\ntor ian</w>\nsam i\nðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\ng are</w>\nalli ances</w>\nwhit field</w>\nwe ther</w>\nrefin ing</w>\ncoy i</w>\nkra ken</w>\nðŁĺĺ âĿ¤</w>\nsingul arity</w>\nlil i</w>\nh ns</w>\nbol dand\nwaw rinka</w>\nmisogy ny</w>\nlo vers\nc q</w>\nb dg</w>\nad ona</w>\ngar ter</w>\nwomen of\nsc d</w>\nrecogn ising</w>\nmun a</w>\nstr ou\nsign alling</w>\nlare do</w>\nhell boy</w>\nalek sand\nun available</w>\npedi atric\nas in\nmer ia</w>\nri shi\nfuturi sm</w>\nw ye\npolari zed</w>\ne we</w>\npro pel</w>\nin forms</w>\ncre ase</w>\n~ \"</w>\narti ston\nlike for\nheidel berg</w>\ner ra</w>\nlife in\nlen ny\ninter rupt</w>\ncohe rent</w>\nca z\nvick ers</w>\nle veled</w>\nf bs</w>\ncab ins</w>\nbu mmed</w>\napost les</w>\nwe h\nten don</w>\nsouven irs</w>\ninfu ri\npier ce\nasse t\nm las</w>\ngo th\ndi ggin</w>\nann as\nyl or</w>\nth waite</w>\nsw el\npan era</w>\nmur derers</w>\ncroo ked\nbs go</w>\nac u</w>\na on</w>\nre an</w>\none of\nko hl</w>\nbloo dh\npest icide</w>\nlost dog</w>\nfle xing</w>\nëĤ ĺ\nsu pra</w>\neter nally</w>\nðŁļ Ļ</w>\npa olo\nol an\nmom o\nis elle</w>\ncaptain marvel</w>\ns lou\nmistak enly</w>\nakhi lesh</w>\nmer t</w>\nil inan</w>\nbu on</w>\nbal kan</w>\nmir ro\nmill en\nder ail\ndam on\ntit i</w>\nbi os</w>\nre don\npic ard</w>\npar te</w>\nðŁ¤ Ł\nØ º\nson ics</w>\nfir sth\ndd c</w>\nveg ans</w>\ntur ban</w>\nni gan</w>\nlot tie</w>\nlyn don</w>\nstar buck\npink floyd</w>\nlife styles</w>\nam ara</w>\na she\nr sc</w>\nval a</w>\nsm er\ncw gc</w>\ncli ent\nbuen as</w>\njag an</w>\ncoo ps</w>\nðŁĳĳ ðŁĳĳ\nspeci alizes</w>\nsnag ged</w>\ng lar\nben net</w>\nwildlife wednesday</w>\nbow den</w>\npi k</w>\nart in</w>\nempor ium</w>\nar l</w>\nre ba</w>\npas ser</w>\ndisappo ints</w>\nadditi ve</w>\nâľĬ ðŁı½</w>\nbay er\nmissou la</w>\nha skell</w>\ncomm ences</w>\nni x\nne man</w>\nexplo ited</w>\nplastic surgery</w>\ncc d</w>\naso cial</w>\nvo t</w>\nsie gel</w>\nfro ome</w>\nkap am\nfar a</w>\ne ha</w>\npro bes</w>\nmw f</w>\nmeet ing\np bb\nak ins</w>\nmistle toe</w>\nkingdom hearts</w>\nfor kids</w>\nec r</w>\nbal e\nescor ts</w>\nadidas originals</w>\nk wa</w>\nk ts</w>\nhallo ffame</w>\nðŁĺį .</w>\nwag s</w>\npot ted</w>\no wing</w>\nhoney comb</w>\nhe fty</w>\nuro logy</w>\nmer le</w>\nb pd</w>\nstri pping</w>\nre ich\nk state\ngu ay\nyon ge</w>\nshak ti\ng loom</w>\nbat t</w>\nson om\nn ery</w>\nel ba</w>\nblan ks</w>\nhel le\ntriple ts</w>\nbom bay\nak arta</w>\nab ia</w>\ntransm itted</w>\nrol f</w>\nja is\nangular js</w>\nfi erc\nm ss</w>\ntrac e\nà¥ ĩ\ntom bs</w>\nold man</w>\nkom bucha</w>\nfo l</w>\ne health</w>\ncere als</w>\nare lli</w>\nin ari</w>\nðŁĴ ©\nwo l</w>\nliber ties</w>\nfa wn</w>\naf firm</w>\nnun avut</w>\nhyster ical</w>\nk drama</w>\nart es</w>\nâĢ¢âĢ¢âĢ¢âĢ¢ âĢ¢âĢ¢âĢ¢âĢ¢\nvalent in</w>\nman slaughter</w>\ngal es</w>\neo in</w>\nenergi zed</w>\ndel s</w>\nwith draws</w>\nst les</w>\nsar castic</w>\nram esh\nincredi bles</w>\nlock hart</w>\nya wn</w>\nultimatefan live</w>\noooooooo oooooooo\nmu en\nguru dev</w>\nte er</w>\npe eling</w>\nnew snow</w>\nlingui stics</w>\ndirec tv</w>\nag end\nuni lever</w>\nru ger</w>\nhan dedly</w>\nero se</w>\nli mel\nthe c\nroyal ties</w>\nfini shers</w>\nnr g</w>\nm gt</w>\nfid get</w>\ncom ps</w>\nbac on\naggre ssively</w>\nab it</w>\nch Ã¢\ntar de</w>\nslu gger</w>\nq anda</w>\ngre ening</w>\nd ats</w>\nensla ved</w>\nspec tor</w>\no ye\nfre ef\nb hand\nstop brexit</w>\nmis conceptions</w>\ncav a</w>\nðŁĺįðŁĺįðŁĺįðŁĺį ðŁĺįðŁĺįðŁĺįðŁĺį\nmultit asking</w>\nhou sel\nferre ira</w>\ncen time\nank les</w>\njo dh\nhel ly</w>\nfro me</w>\nout tuesday</w>\nnar nia</w>\nbal aji</w>\nl bloggers</w>\njyo ti</w>\nðŁį ĩ</w>\nlan cia</w>\ncap ri\ny ap\nnat ash\ndown fall</w>\n.\" âĢĶ</w>\nÃ ®\nligam ent</w>\ncoat ings</w>\nai ded</w>\nhi ko</w>\nfall ing\nencryp ted</w>\nyeg food</w>\ninfringe ment</w>\ncu di</w>\nce p</w>\nðŁĺį ðŁĺĤ</w>\ntra d\nsuper rugby</w>\ned win\nwh iche\nvi meo</w>\nlay ne</w>\nin vigor\nhe he\ndubrov nik</w>\nbie ber\nu tr\nsham an</w>\nop ers</w>\nham ill</w>\nen ig</w>\ndi f</w>\nar um</w>\nscrap book</w>\nmin h</w>\ndiver gence</w>\nmckin non</w>\nlife time\nguter res</w>\nwil le\nple as</w>\npatt y\nmic ron\nk z\ndom aine</w>\nru sher</w>\nm ds</w>\nches ney</w>\nscrew driver</w>\nâģ© ,</w>\nsle dge</w>\nhau er</w>\nchan a</w>\nstam ina</w>\nsprink ler</w>\npl n</w>\nhe ff\nbol ton\nom on\ncar rington</w>\naccor dion</w>\njor ge\ninter ception</w>\nin puts</w>\ngu ll\ntran scription</w>\nvanu atu</w>\nit ical</w>\neth os</w>\ntic h</w>\nspac ey</w>\npee king</w>\nu mi\nha ger\npsycho tic</w>\nilli an\nilli a</w>\nbonnar oo</w>\nan ese</w>\npu c\nlaghate parth</w>\nen hall</w>\neconom ical</w>\ndre dge</w>\n% -</w>\nu we</w>\ntu bular</w>\nscoun cil</w>\npe asants</w>\nfl er</w>\ntumb ler</w>\nhe p</w>\nford ham</w>\nrow ley</w>\niniti als</w>\nev asion</w>\ner nation</w>\nplu gins</w>\ncoch ran</w>\nc attle\nacid ity</w>\nðŁİĬ ðŁİī</w>\nre grann</w>\njump man</w>\nef ace</w>\nx ma\npatri archy</w>\nesco bar</w>\ncristi an</w>\ntip ton</w>\nnu eva</w>\nhack ney\nback seat</w>\nkill arney</w>\naid an\nsta dion</w>\nsimul taneous</w>\nida ho\na je\nu th\nfigu re\nclo s</w>\nbur k\nvolun tar\nrec ite</w>\nmacfar lane</w>\ncur few</w>\nbou do\nw gn\nsti x</w>\nsla p\nscrat ched</w>\nphilli p\njour ne\nex pelled</w>\nwa z</w>\nu ke\ntati ana</w>\nou e</w>\nho pp\ndimit ri</w>\nðŁĵ £\nmato logist</w>\nelectri fying</w>\nblu ffs</w>\nbill smafia</w>\naz cardinals</w>\ny aa\nx mas\nshar a</w>\nr ith</w>\ng ills</w>\ndre s\nbar ton\nauthori zation</w>\nimperi alism</w>\nhome of\nto do\nfoot path</w>\nband width</w>\nvisit spain</w>\nmoh sin</w>\nerup ted</w>\nmi ki</w>\ninsig nia</w>\nmike l</w>\nss h</w>\nger a</w>\nbank holiday\naw an\nt weak</w>\nstar craft</w>\ne al\nconstruc tion\nskelet ons</w>\nle ep\nine m</w>\nbar clay\nship wreck</w>\nmonsi eur</w>\nyo h</w>\nron t</w>\nform ative</w>\nser o\nle p\nhorse man</w>\nhoo sier</w>\nhaz mat</w>\ncylin ders</w>\ncen ti\nðŁĴ¥ðŁĴ¥ ðŁĴ¥</w>\nre em</w>\nna ire</w>\nmus ically</w>\ngras shopper</w>\nest onian</w>\ntermin ology</w>\nro main</w>\nblogger rt</w>\ntox in</w>\nstan ce\ncultiv ated</w>\nan ast\nðŁĲ į\nshi mano</w>\ngo pher</w>\nene i</w>\nrecycla ble</w>\ngam ification</w>\nfight for\nc q\navoc ados</w>\nke ys\neli ke\ngly cer\nshak ur</w>\nmobili zation</w>\ngal ley</w>\nexpla in\nex changed</w>\npe th</w>\nobe dience</w>\nilla ge</w>\nen nis\nãĥ ŀ\nwi v</w>\nwalla bies</w>\nma ar</w>\nig ers</w>\nfin tech\nfin alized</w>\nwo j\nmeaning less</w>\nin field</w>\nonna ise</w>\ne et</w>\nbron te</w>\npass ages</w>\nðŁĳ §\nstrick land</w>\nnorthern lights</w>\nlom ond</w>\nh tc\nwr ay</w>\nshi fter</w>\ndi alog</w>\nðŁį į</w>\n>> >>>></w>\nte atime</w>\nste ch\nsic huan</w>\nqu ill</w>\nfran ca\ncomple mentary</w>\nbar rington</w>\nmarcu s\nmal am</w>\ngoo oo</w>\nfor sa\nelec tra</w>\naf s</w>\nâĹ Ĩ</w>\ntri fe\nsn azzy</w>\nfo lia</w>\nand olan</w>\nafter dark</w>\nwood son</w>\nstra de</w>\nlitt lest</w>\no gun\ncon wy</w>\nco wards</w>\nðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤ</w>\níĬ ¸\nse ul\nmur phy\ndun ks</w>\nkapil shar\njo achim</w>\nwom ack</w>\nequal ity\naver ages</w>\na ine\nðŁ¦ Ī</w>\ntac ular</w>\ndis ability\nu ked\nmid century</w>\nbar thol\nteas ers</w>\ntab ern\nnj caa</w>\nsp out</w>\nop i</w>\nku bball</w>\nbl om\nso ar\npopu lism</w>\nmeth yl\nðŁĳĬ ðŁı¼\no spre\nalo ils</w>\nðŁĵ ĸ\nðŁĮ ļ\nx er\nsp illing</w>\npubl ica</w>\ncar dam\nadi sh</w>\nsa cha</w>\np kg</w>\nbu da</w>\nlyric ist</w>\ni bc</w>\ngru mp\nho ver</w>\nhal ep</w>\nanti body</w>\nanem one</w>\nâĻ¥âĻ¥ âĻ¥âĻ¥\nm cl\nlitho graph</w>\ncc u</w>\ns fest</w>\npath ic</w>\ncalli ster</w>\notta wa\ngun sn\nrut ger\nhali but</w>\nen vision</w>\ndifferenti ate</w>\nðŁļĢ ðŁļĢ\npir an\nlat el\nuc n</w>\ntrou bad\nra ine\nfierc ely</w>\nlearn english</w>\nlea se\nwex mondays</w>\nem it</w>\ndray ton</w>\nbur rell</w>\nscuba diving</w>\nhol ler</w>\ndr u</w>\nclo cked</w>\nw ral</w>\nap ro</w>\ntrans lucent</w>\nw bo</w>\npatri arch</w>\nmo ja\nlan nister</w>\nfish ery</w>\nne derland</w>\nmil dly</w>\nmi rai</w>\nma ko</w>\nja p</w>\nðŁĺ©ðŁĺ© ðŁĺ©</w>\npro statec\np anna</w>\nar ama</w>\nunder taking</w>\ntomp kins</w>\nne op\nsoli ds</w>\nsav oury</w>\ne ames</w>\ncut lery</w>\nwood bridge</w>\nsteam er</w>\nri zzo</w>\nwild cat\nrat na</w>\nlamin ated</w>\nkin eni</w>\njal ap\nai des</w>\nacknowle dges</w>\n?! ?!?!</w>\n! ðŁİī</w>\nw afc</w>\nmag gio</w>\nha ves</w>\ndar je\nof i</w>\ngr il\nv asi\nbru x\nmo hd</w>\nfake speare</w>\narn old\nr mb</w>\nfor be\nwal leye</w>\nro di\ntherapeu tics</w>\nstrate gi\nob ste\nmu dder</w>\ndownload able</w>\ndd ings</w>\nd ca</w>\nasi angames</w>\ncampe on\nappropri ation</w>\nth century</w>\nram atta</w>\ndra ped</w>\nbul lion</w>\nmu c</w>\none x</w>\nse greg\nophel ia</w>\nbod ily</w>\nâĿ¤ ðŁĺį</w>\nwi zar\nte ased</w>\nade my</w>\nto id</w>\nsur a</w>\nlazar us</w>\nsn ickers</w>\nma se\nlo h\nbow ed</w>\nbibli o\nx change</w>\nhar lan</w>\ngho shal</w>\nflavor ful</w>\nbha gat</w>\nalle z</w>\nwhiche ver</w>\nten stein</w>\ndisc er\norgan iser</w>\nmt g\ndream liner</w>\nt se\nhok kaido</w>\nmo k\nindulg ent</w>\nhick man</w>\nblin ded</w>\nal yn\naaa ah</w>\nsp ool</w>\nlough borough</w>\ninter pret\net v\naristo tle</w>\noptimi zing</w>\navici i</w>\nmadu rai</w>\nju li</w>\nnaw az\nmat chups</w>\nab ide</w>\npaint ing\nw elling</w>\nvel i</w>\noctag on</w>\nin scribed</w>\npo king</w>\nplac er</w>\nlife cycle</w>\nkili g</w>\ng sp</w>\neli ves</w>\ncle ments</w>\nna sheed</w>\nme sut</w>\nincarcer ated</w>\ndist illed</w>\nwal ang</w>\ndelic acy</w>\ndel gado</w>\nche z\nch ita</w>\nad ero</w>\ntu x</w>\npati l</w>\no do\nabh cosmetics</w>\ntv c</w>\np bc</w>\nin accurate</w>\nhardwork paysoff</w>\nball er\nquot ation</w>\nmerchandi sing</w>\nga stri\ndefen ses</w>\ndro gba</w>\nbex hill</w>\nban kno\nwin ona</w>\nsi eg\np gs</w>\nhahah ha</w>\nagu chi</w>\nsu bram\nmirac le\nde sch\nli bre\nba cher</w>\nent ine</w>\nbbcra di\nlou dest</w>\nr ps</w>\npi erc\nfr yer</w>\nstorm trooper</w>\nrafael nadal</w>\npas co</w>\nexhau stion</w>\nepic onetsy</w>\nrc tid</w>\nkel lie</w>\nga ines</w>\nd bz</w>\nsm riti\ns bridge</w>\nlim ited\ncla w\ntechnic al\nbio graphical</w>\nado red</w>\nà¸ °</w>\nexclu de</w>\nac adia</w>\nkey boards</w>\nfur man</w>\nso ca</w>\nsur u</w>\nni ps</w>\nsw aps</w>\nserver less</w>\nrun e</w>\npu ffy</w>\nnorth ampton\nnish ings</w>\nhen der\ncartri dges</w>\ngun shot</w>\nðŁĵ ¹</w>\nfil ament</w>\nrespon dents</w>\npey ton\nmountaine er</w>\nmer ging</w>\nlife span</w>\nintimid ation</w>\np afc</w>\nnl wx</w>\nexpan sive</w>\npur r\nf ck</w>\nca e</w>\nat ti\ntele thon</w>\nso hn</w>\nmend el\nlo pes</w>\ndor i</w>\nun broken</w>\nte red\ntast ings</w>\nin active</w>\ndisin tegr\nt assel</w>\nshare the\npi ano\nis lay</w>\nair space</w>\nz awa</w>\nricci ardo</w>\nming ton\nfresh er</w>\ncur ry\nre vs</w>\npharo ah</w>\nh mv</w>\nexhilar ating</w>\nwh oo</w>\nlin kin</w>\nkri spy</w>\ncompeten cy</w>\nste wards</w>\nne bu\nkat su\nad mins</w>\nbaz ar</w>\nas ar</w>\ngiving back</w>\ns summit</w>\nsong z</w>\nlin us</w>\nraj kumar</w>\nfarm ington</w>\nfanta sia</w>\nðŁĺ´ ðŁĺ´</w>\nso bri\nlis se</w>\nbarry more</w>\npri sm\nblo b</w>\nsen ew\nmono xide</w>\nexp ire</w>\neigh teen</w>\ndi pper</w>\nxi ao</w>\nkil t</w>\nhin ch\nbbc sport</w>\nbam boo\np ter\nex al\nðŁ¦ ĭ\nham lin</w>\nexpe ditions</w>\nstar gazing</w>\nfood security</w>\nwy lie</w>\nul f</w>\nst ingly</w>\non storm</w>\nlo eb</w>\nbro ome</w>\nbn ha</w>\npancre atic</w>\neli ve\n!!!!!!!! !!!</w>\nther apper</w>\northo pedic</w>\navengers endgame</w>\nantit rust</w>\nìļ °</w>\ngo te</w>\nom d</w>\noff side</w>\ngy llen\nwin eries</w>\nwhite water</w>\nad l</w>\nlu pita</w>\nexce eds</w>\nconsi sted</w>\nchew bacca</w>\nash leigh</w>\nnhl jets</w>\nis san\nsh ld</w>\nhay at</w>\ncran berries</w>\nðŁ¤ĺ ðŁı½</w>\nrock the\nspring training</w>\nfall out\ndairy free</w>\nwa j</w>\nun decided</w>\nso wn</w>\nrc n</w>\nnorth wales</w>\nhtt r</w>\nfu mble</w>\nd its</w>\ncomp elled</w>\npopu list</w>\nmin ted</w>\nblan chett</w>\n. ''</w>\npro pulsion</w>\nm illa</w>\nau berg\nher tz</w>\nh ta</w>\nu daipur</w>\nserendip ity</w>\nazte cs</w>\nals ace</w>\nðŁĲ ĳ</w>\nlu n</w>\nsho es\nchar li</w>\ngar za</w>\nðŁĴ Ł\npro biotics</w>\nfox tv</w>\nol is</w>\nmi ff\nloc alized</w>\ndiffu ser</w>\nsi gue</w>\nfun ko\nrend ous</w>\nðŁĴ ĳ</w>\njeky ll</w>\n"
  },
  {
    "path": "configs/sdxl/tokenizer/special_tokens_map.json",
    "content": "{\n  \"bos_token\": {\n    \"content\": \"<|startoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": true,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"eos_token\": {\n    \"content\": \"<|endoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": true,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"pad_token\": \"<|endoftext|>\",\n  \"unk_token\": {\n    \"content\": \"<|endoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": true,\n    \"rstrip\": false,\n    \"single_word\": false\n  }\n}\n"
  },
  {
    "path": "configs/sdxl/tokenizer/tokenizer_config.json",
    "content": "{\n  \"add_prefix_space\": false,\n  \"bos_token\": {\n    \"__type\": \"AddedToken\",\n    \"content\": \"<|startoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": true,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"clean_up_tokenization_spaces\": true,\n  \"do_lower_case\": true,\n  \"eos_token\": {\n    \"__type\": \"AddedToken\",\n    \"content\": \"<|endoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": true,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"errors\": \"replace\",\n  \"model_max_length\": 77,\n  \"pad_token\": \"<|endoftext|>\",\n  \"tokenizer_class\": \"CLIPTokenizer\",\n  \"unk_token\": {\n    \"__type\": \"AddedToken\",\n    \"content\": \"<|endoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": true,\n    \"rstrip\": false,\n    \"single_word\": false\n  }\n}\n"
  },
  {
    "path": "configs/sdxl/tokenizer/vocab.json",
    "content": "{\n  \"!\": 0,\n  \"!!\": 1443,\n  \"!!!\": 11194,\n  \"!!!!\": 4003,\n  \"!!!!!!!!\": 11281,\n  \"!!!!!!!!!!!!!!!!\": 30146,\n  \"!!!!!!!!!!!</w>\": 49339,\n  \"!!!!!!!!!!</w>\": 35579,\n  \"!!!!!!!!!</w>\": 28560,\n  \"!!!!!!!!</w>\": 21622,\n  \"!!!!!!!</w>\": 15203,\n  \"!!!!!!</w>\": 9168,\n  \"!!!!!</w>\": 5203,\n  \"!!!!</w>\": 2360,\n  \"!!!\\\"</w>\": 28048,\n  \"!!!)</w>\": 42532,\n  \"!!!</w>\": 995,\n  \"!!\\\"</w>\": 20556,\n  \"!!#</w>\": 34997,\n  \"!!)</w>\": 28352,\n  \"!!</w>\": 748,\n  \"!!@</w>\": 40705,\n  \"!\\\"</w>\": 2947,\n  \"!\\\"@</w>\": 43819,\n  \"!#</w>\": 9670,\n  \"!'</w>\": 13222,\n  \"!),</w>\": 37904,\n  \"!).</w>\": 26225,\n  \"!)</w>\": 4571,\n  \"!*</w>\": 37737,\n  \"!,</w>\": 29325,\n  \"!-</w>\": 43499,\n  \"!...</w>\": 22121,\n  \"!..</w>\": 35475,\n  \"!.</w>\": 22517,\n  \"!:)</w>\": 31671,\n  \"!:</w>\": 17545,\n  \"!</w>\": 256,\n  \"!?!</w>\": 29767,\n  \"!?!?</w>\": 47081,\n  \"!?</w>\": 6004,\n  \"!@</w>\": 15117,\n  \"!]</w>\": 34466,\n  \"!âĢ¦</w>\": 35068,\n  \"!âĿ¤ï¸ı</w>\": 32559,\n  \"!ðŁİī</w>\": 49085,\n  \"!ðŁĺĬ</w>\": 43434,\n  \"!ðŁĺį</w>\": 36438,\n  \"\\\"\": 1,\n  \"\\\"!</w>\": 10377,\n  \"\\\"\\\"\": 41530,\n  \"\\\"\\\"\\\"</w>\": 25539,\n  \"\\\"\\\"</w>\": 8575,\n  \"\\\"#</w>\": 8345,\n  \"\\\"'</w>\": 31065,\n  \"\\\"(</w>\": 32741,\n  \"\\\")</w>\": 13112,\n  \"\\\",</w>\": 4332,\n  \"\\\"-</w>\": 9375,\n  \"\\\"....</w>\": 37785,\n  \"\\\"...</w>\": 9049,\n  \"\\\"..</w>\": 25403,\n  \"\\\".</w>\": 2811,\n  \"\\\"/</w>\": 39486,\n  \"\\\":</w>\": 7811,\n  \"\\\";</w>\": 37549,\n  \"\\\"</w>\": 257,\n  \"\\\"?</w>\": 11727,\n  \"\\\"@</w>\": 1512,\n  \"\\\"@_</w>\": 20236,\n  \"\\\"[</w>\": 36930,\n  \"\\\"âĢ¦</w>\": 33993,\n  \"\\\"âĢĶ</w>\": 41151,\n  \"#\": 2,\n  \"##</w>\": 15483,\n  \"#...</w>\": 31491,\n  \"#:</w>\": 30144,\n  \"#</w>\": 258,\n  \"#@</w>\": 35062,\n  \"#âĢ¦</w>\": 12834,\n  \"#âĢİ</w>\": 34262,\n  \"$\": 3,\n  \"$$\": 24233,\n  \"$$$</w>\": 31859,\n  \"$$</w>\": 14929,\n  \"$)</w>\": 39460,\n  \"$.</w>\": 34682,\n  \"$</w>\": 259,\n  \"%\": 4,\n  \"%!</w>\": 35070,\n  \"%),</w>\": 37819,\n  \"%)</w>\": 16063,\n  \"%,</w>\": 14505,\n  \"%-</w>\": 48784,\n  \"%.</w>\": 12475,\n  \"%;</w>\": 33379,\n  \"%</w>\": 260,\n  \"&\": 5,\n  \"&&</w>\": 27791,\n  \"&</w>\": 261,\n  \"'\": 6,\n  \"'!</w>\": 13781,\n  \"'\\\"</w>\": 19479,\n  \"'#</w>\": 15319,\n  \"''\": 46594,\n  \"''</w>\": 8445,\n  \"')</w>\": 19175,\n  \"',</w>\": 5662,\n  \"'-</w>\": 26152,\n  \"'...</w>\": 20474,\n  \"'.</w>\": 4645,\n  \"':</w>\": 7182,\n  \"';</w>\": 44517,\n  \"'</w>\": 262,\n  \"'?</w>\": 17242,\n  \"'@</w>\": 26397,\n  \"'d</w>\": 1896,\n  \"'ll</w>\": 1342,\n  \"'m</w>\": 880,\n  \"'re</w>\": 982,\n  \"'s</w>\": 568,\n  \"'t</w>\": 713,\n  \"'ve</w>\": 1200,\n  \"'âĢ¦</w>\": 42120,\n  \"(\": 7,\n  \"(!)</w>\": 30253,\n  \"(\\\"</w>\": 18741,\n  \"(#</w>\": 6229,\n  \"($)</w>\": 46597,\n  \"($</w>\": 15186,\n  \"(&</w>\": 15042,\n  \"('</w>\": 18235,\n  \"((\": 22944,\n  \"(((</w>\": 33287,\n  \"((</w>\": 13796,\n  \"().</w>\": 41737,\n  \"()</w>\": 8475,\n  \"(*\": 48004,\n  \"(*</w>\": 39575,\n  \"(+</w>\": 12903,\n  \"(-</w>\": 20228,\n  \"(...</w>\": 45159,\n  \"(.</w>\": 43055,\n  \"(:</w>\": 8528,\n  \"(;</w>\": 23983,\n  \"(</w>\": 263,\n  \"(?)</w>\": 22885,\n  \"(@</w>\": 2181,\n  \"(Â£</w>\": 33987,\n  \"(Â©</w>\": 44886,\n  \"(ðŁĵ·:</w>\": 34610,\n  \"(ðŁĵ·</w>\": 37999,\n  \"(ðŁĵ¸:</w>\": 44422,\n  \"(ðŁĵ¸</w>\": 45204,\n  \")\": 8,\n  \")!!</w>\": 47518,\n  \")!</w>\": 7805,\n  \")\\\"</w>\": 13046,\n  \")#</w>\": 39981,\n  \")'</w>\": 23613,\n  \")(</w>\": 27956,\n  \"))\": 13720,\n  \"))))\": 42911,\n  \"))))</w>\": 34181,\n  \")))</w>\": 18305,\n  \"))</w>\": 5167,\n  \"),</w>\": 2361,\n  \")-</w>\": 19034,\n  \")...</w>\": 15274,\n  \")..</w>\": 41822,\n  \").</w>\": 1818,\n  \")/</w>\": 26616,\n  \"):</w>\": 4143,\n  \");</w>\": 19686,\n  \")</w>\": 264,\n  \")?</w>\": 18765,\n  \")@</w>\": 41928,\n  \")_/\": 45028,\n  \")_/Â¯</w>\": 45781,\n  \")âĢ¦</w>\": 41844,\n  \"*\": 9,\n  \"*)</w>\": 30956,\n  \"**\": 9825,\n  \"****\": 21326,\n  \"********\": 42974,\n  \"*****</w>\": 43571,\n  \"****</w>\": 25167,\n  \"***</w>\": 7829,\n  \"**</w>\": 4441,\n  \"*,</w>\": 41895,\n  \"*-*</w>\": 23568,\n  \"*.</w>\": 31304,\n  \"*</w>\": 265,\n  \"*_*</w>\": 44535,\n  \"+\": 10,\n  \"+)</w>\": 34810,\n  \"++\": 47298,\n  \"+++</w>\": 35986,\n  \"++</w>\": 19056,\n  \"+,</w>\": 35885,\n  \"+.</w>\": 25238,\n  \"+/-</w>\": 47614,\n  \"+</w>\": 266,\n  \",\": 11,\n  \",\\\"</w>\": 3823,\n  \",#</w>\": 11215,\n  \",&</w>\": 26905,\n  \",'</w>\": 10599,\n  \",)</w>\": 44493,\n  \",,\": 21340,\n  \",,,,</w>\": 33225,\n  \",,,</w>\": 14811,\n  \",,</w>\": 8844,\n  \",-</w>\": 29821,\n  \",...</w>\": 20365,\n  \",.</w>\": 41277,\n  \",</w>\": 267,\n  \",@</w>\": 13975,\n  \",âĢ¦</w>\": 14601,\n  \"-\": 12,\n  \"-\\\"</w>\": 18646,\n  \"-#</w>\": 10151,\n  \"-$</w>\": 24946,\n  \"-'</w>\": 28010,\n  \"-(</w>\": 33345,\n  \"-)</w>\": 3535,\n  \"-*</w>\": 21527,\n  \"--\": 2154,\n  \"----\": 5753,\n  \"--------\": 11772,\n  \"----------------\": 23122,\n  \"----</w>\": 30164,\n  \"----></w>\": 35999,\n  \"---</w>\": 11079,\n  \"---></w>\": 14518,\n  \"--</w>\": 2432,\n  \"--></w>\": 6422,\n  \"-->></w>\": 47252,\n  \"-.-</w>\": 32765,\n  \"-...</w>\": 43147,\n  \"-.</w>\": 44040,\n  \"-</w>\": 268,\n  \"-></w>\": 5081,\n  \"-@</w>\": 10087,\n  \"-_-</w>\": 27227,\n  \"-__\": 42718,\n  \"-âĢ¦</w>\": 30047,\n  \".\": 13,\n  \".!!</w>\": 37805,\n  \".!</w>\": 14030,\n  \".\\\"\": 18650,\n  \".\\\"-</w>\": 21234,\n  \".\\\"</w>\": 1081,\n  \".\\\"âĢĶ</w>\": 48703,\n  \".#</w>\": 5014,\n  \".'\\\"</w>\": 41558,\n  \".''</w>\": 49379,\n  \".'</w>\": 5938,\n  \".(</w>\": 22294,\n  \".)</w>\": 5376,\n  \".*</w>\": 26145,\n  \".,</w>\": 5276,\n  \".-</w>\": 12481,\n  \"..\": 608,\n  \"..!!</w>\": 23707,\n  \"..!</w>\": 17994,\n  \"..\\\"</w>\": 15229,\n  \"..#</w>\": 15735,\n  \"..,</w>\": 47143,\n  \"...\": 3002,\n  \"...!!!</w>\": 38351,\n  \"...!!</w>\": 39915,\n  \"...!</w>\": 16860,\n  \"...\\\"</w>\": 5240,\n  \"...#</w>\": 8195,\n  \"...&</w>\": 44979,\n  \"...'</w>\": 23167,\n  \"...(</w>\": 37981,\n  \"...)</w>\": 14040,\n  \"...,</w>\": 42717,\n  \"....\": 2386,\n  \"....\\\"</w>\": 26689,\n  \"....#</w>\": 20346,\n  \".....\": 34151,\n  \".....#</w>\": 38867,\n  \"........\": 8246,\n  \"................\": 24855,\n  \"............</w>\": 42965,\n  \"...........</w>\": 35008,\n  \"..........</w>\": 25526,\n  \".........</w>\": 19881,\n  \"........</w>\": 14720,\n  \".......</w>\": 9917,\n  \"......</w>\": 5590,\n  \".....</w>\": 3104,\n  \"....</w>\": 1390,\n  \"....@</w>\": 29790,\n  \"...:</w>\": 34570,\n  \"...</w>\": 678,\n  \"...?</w>\": 16388,\n  \"...@</w>\": 12672,\n  \"..</w>\": 852,\n  \"..?</w>\": 23875,\n  \"..@</w>\": 21124,\n  \"./</w>\": 31975,\n  \".:</w>\": 15811,\n  \".;</w>\": 47596,\n  \".</w>\": 269,\n  \".<</w>\": 29442,\n  \".?</w>\": 29294,\n  \".@</w>\": 1230,\n  \".]</w>\": 33511,\n  \".~</w>\": 42651,\n  \".âĢ¦</w>\": 18047,\n  \".âĿ¤ï¸ı</w>\": 39085,\n  \".âłĢ</w>\": 30097,\n  \".ðŁĺĤ</w>\": 46580,\n  \"/\": 14,\n  \"/#</w>\": 13217,\n  \"/$</w>\": 36266,\n  \"/-</w>\": 19811,\n  \"/.</w>\": 39382,\n  \"//\": 15348,\n  \"////\": 46271,\n  \"///</w>\": 22734,\n  \"//</w>\": 3502,\n  \"/</w>\": 270,\n  \"/@</w>\": 8216,\n  \"0\": 15,\n  \"0</w>\": 271,\n  \"1\": 16,\n  \"1</w>\": 272,\n  \"2\": 17,\n  \"2</w>\": 273,\n  \"3\": 18,\n  \"3</w>\": 274,\n  \"4\": 19,\n  \"4</w>\": 275,\n  \"5\": 20,\n  \"5</w>\": 276,\n  \"6\": 21,\n  \"6</w>\": 277,\n  \"7\": 22,\n  \"7</w>\": 278,\n  \"8\": 23,\n  \"8</w>\": 279,\n  \"9\": 24,\n  \"9</w>\": 280,\n  \":\": 25,\n  \":\\\"\": 29498,\n  \":\\\")</w>\": 46432,\n  \":\\\"</w>\": 12089,\n  \":#</w>\": 26625,\n  \":$</w>\": 33769,\n  \":'\": 8017,\n  \":'(</w>\": 21250,\n  \":')</w>\": 10701,\n  \":'</w>\": 23851,\n  \":((</w>\": 42496,\n  \":(</w>\": 5965,\n  \":)\": 11070,\n  \":))))</w>\": 42339,\n  \":)))</w>\": 21840,\n  \":))</w>\": 10164,\n  \":).</w>\": 39010,\n  \":)</w>\": 1408,\n  \":*</w>\": 12617,\n  \":-\": 13021,\n  \":-(</w>\": 25137,\n  \":-)</w>\": 4223,\n  \":-</w>\": 10323,\n  \":...</w>\": 42140,\n  \"://</w>\": 12441,\n  \":/</w>\": 13604,\n  \"::\": 33077,\n  \":::</w>\": 43818,\n  \"::</w>\": 9788,\n  \":</w>\": 281,\n  \":></w>\": 39677,\n  \":@</w>\": 14339,\n  \":]</w>\": 43486,\n  \":|</w>\": 45986,\n  \":âĢ¦</w>\": 22365,\n  \";\": 26,\n  \";))</w>\": 41873,\n  \";)</w>\": 3661,\n  \";-\": 35657,\n  \";-)</w>\": 10475,\n  \";;\": 34824,\n  \";;</w>\": 24492,\n  \";</w>\": 282,\n  \"<\": 27,\n  \"<-</w>\": 47280,\n  \"</</w>\": 34308,\n  \"<<\": 24588,\n  \"<</w>\": 283,\n  \"<<</w>\": 16482,\n  \"<<<</w>\": 35054,\n  \"<|endoftext|>\": 49407,\n  \"<|startoftext|>\": 49406,\n  \"=\": 28,\n  \"=))</w>\": 39587,\n  \"=)</w>\": 17840,\n  \"=</w>\": 284,\n  \"==\": 11748,\n  \"====\": 21734,\n  \"========\": 38952,\n  \"==></w>\": 29688,\n  \"=></w>\": 9714,\n  \">\": 29,\n  \">.<</w>\": 38507,\n  \">:</w>\": 36196,\n  \"></w>\": 285,\n  \"><</w>\": 28015,\n  \">>\": 8270,\n  \">></w>\": 2988,\n  \">>></w>\": 6395,\n  \">>>>\": 18461,\n  \">>>></w>\": 18435,\n  \">>>>></w>\": 32972,\n  \">>>>>></w>\": 48947,\n  \">>>>>>>>\": 41947,\n  \">_\": 44144,\n  \"?\": 30,\n  \"?!\": 9785,\n  \"?!!</w>\": 25342,\n  \"?!\\\"</w>\": 29315,\n  \"?!</w>\": 2835,\n  \"?!?!</w>\": 16349,\n  \"?!?!?!</w>\": 49084,\n  \"?!?!?</w>\": 37619,\n  \"?!?</w>\": 11395,\n  \"?\\\"</w>\": 3283,\n  \"?#</w>\": 24018,\n  \"?'</w>\": 13610,\n  \"?)</w>\": 9626,\n  \"?,</w>\": 41628,\n  \"?...</w>\": 22641,\n  \"?..</w>\": 43905,\n  \"?.</w>\": 41251,\n  \"?:</w>\": 21067,\n  \"?</w>\": 286,\n  \"??\": 5195,\n  \"??!!</w>\": 43219,\n  \"??!</w>\": 37341,\n  \"??\\\"</w>\": 44996,\n  \"??</w>\": 2197,\n  \"???\": 40017,\n  \"???</w>\": 3824,\n  \"????\": 15936,\n  \"????</w>\": 10362,\n  \"?????</w>\": 21370,\n  \"??????</w>\": 34589,\n  \"????????\": 45091,\n  \"?@</w>\": 29258,\n  \"?ðŁ¤Ķ</w>\": 47928,\n  \"@\": 31,\n  \"@#</w>\": 39397,\n  \"@.</w>\": 43730,\n  \"@/</w>\": 28639,\n  \"@</w>\": 287,\n  \"@@</w>\": 30314,\n  \"@_</w>\": 2692,\n  \"@__</w>\": 17042,\n  \"@___</w>\": 48308,\n  \"A\": 32,\n  \"A</w>\": 288,\n  \"B\": 33,\n  \"B</w>\": 289,\n  \"C\": 34,\n  \"C</w>\": 290,\n  \"D\": 35,\n  \"D</w>\": 291,\n  \"E\": 36,\n  \"E</w>\": 292,\n  \"F\": 37,\n  \"F</w>\": 293,\n  \"G\": 38,\n  \"G</w>\": 294,\n  \"H\": 39,\n  \"H</w>\": 295,\n  \"I\": 40,\n  \"I</w>\": 296,\n  \"J\": 41,\n  \"J</w>\": 297,\n  \"K\": 42,\n  \"K</w>\": 298,\n  \"L\": 43,\n  \"L</w>\": 299,\n  \"M\": 44,\n  \"M</w>\": 300,\n  \"N\": 45,\n  \"N</w>\": 301,\n  \"O\": 46,\n  \"O</w>\": 302,\n  \"P\": 47,\n  \"P</w>\": 303,\n  \"Q\": 48,\n  \"Q</w>\": 304,\n  \"R\": 49,\n  \"R</w>\": 305,\n  \"S\": 50,\n  \"S</w>\": 306,\n  \"T\": 51,\n  \"T</w>\": 307,\n  \"U\": 52,\n  \"U</w>\": 308,\n  \"V\": 53,\n  \"V</w>\": 309,\n  \"W\": 54,\n  \"W</w>\": 310,\n  \"X\": 55,\n  \"X</w>\": 311,\n  \"Y\": 56,\n  \"Y</w>\": 312,\n  \"Z\": 57,\n  \"Z</w>\": 313,\n  \"[\": 58,\n  \"[#</w>\": 11115,\n  \"[...\": 39975,\n  \"[...]</w>\": 43790,\n  \"[</w>\": 314,\n  \"[@</w>\": 15148,\n  \"[]</w>\": 22240,\n  \"\\\\\": 59,\n  \"\\\\'</w>\": 41239,\n  \"\\\\</w>\": 315,\n  \"]\": 60,\n  \"]\\\"</w>\": 39434,\n  \"],</w>\": 34067,\n  \"].</w>\": 26262,\n  \"]:</w>\": 21641,\n  \"]</w>\": 316,\n  \"][#</w>\": 39009,\n  \"][</w>\": 29329,\n  \"^\": 61,\n  \"^)</w>\": 30720,\n  \"^-\": 43516,\n  \"^.\": 31552,\n  \"^.^</w>\": 35791,\n  \"^</w>\": 317,\n  \"^^\": 34454,\n  \"^^</w>\": 9064,\n  \"^_\": 14423,\n  \"^_^</w>\": 15995,\n  \"_\": 62,\n  \"_'</w>\": 44701,\n  \"_(</w>\": 36951,\n  \"_)</w>\": 37393,\n  \"_*</w>\": 36237,\n  \"_,</w>\": 31417,\n  \"_-</w>\": 23193,\n  \"_.</w>\": 26841,\n  \"_/\": 37647,\n  \"_:</w>\": 13109,\n  \"_</w>\": 318,\n  \"__\": 2355,\n  \"__:</w>\": 47043,\n  \"__</w>\": 3838,\n  \"___\": 43812,\n  \"___</w>\": 13530,\n  \"____\": 4727,\n  \"____</w>\": 25350,\n  \"_____</w>\": 38803,\n  \"________\": 9549,\n  \"________________\": 20115,\n  \"`\": 63,\n  \"`</w>\": 319,\n  \"a\": 64,\n  \"a</w>\": 320,\n  \"aa\": 1821,\n  \"aa</w>\": 3894,\n  \"aaa\": 14376,\n  \"aaa</w>\": 9583,\n  \"aaaa\": 6727,\n  \"aaaa</w>\": 19336,\n  \"aaaaa</w>\": 31095,\n  \"aaaaaa</w>\": 44413,\n  \"aaaaaaaa\": 23126,\n  \"aaaah</w>\": 49151,\n  \"aaah</w>\": 35856,\n  \"aaay</w>\": 37846,\n  \"aab</w>\": 34108,\n  \"aac\": 23251,\n  \"aac</w>\": 11346,\n  \"aad\": 20464,\n  \"aad</w>\": 35894,\n  \"aaf\": 37638,\n  \"aaf</w>\": 31534,\n  \"aag\": 42174,\n  \"aah</w>\": 28990,\n  \"aaj\": 28727,\n  \"aaj</w>\": 43411,\n  \"aak\": 37739,\n  \"aal\": 22268,\n  \"aal</w>\": 30208,\n  \"aali\": 27896,\n  \"aaliyah</w>\": 46577,\n  \"aam\": 12943,\n  \"aam</w>\": 22775,\n  \"aama\": 45018,\n  \"aamaadmi\": 45563,\n  \"aamaadmiparty</w>\": 46406,\n  \"aamir</w>\": 27456,\n  \"aan\": 20705,\n  \"aan</w>\": 13426,\n  \"aand\": 38054,\n  \"aap\": 12023,\n  \"aap</w>\": 12052,\n  \"aapl</w>\": 34516,\n  \"aar\": 4695,\n  \"aar</w>\": 13234,\n  \"aard\": 46932,\n  \"aaron\": 13948,\n  \"aaron</w>\": 7709,\n  \"aas\": 28542,\n  \"aas</w>\": 32205,\n  \"aat\": 34018,\n  \"aat</w>\": 35004,\n  \"aau</w>\": 35426,\n  \"aay\": 38281,\n  \"aay</w>\": 40249,\n  \"aaz</w>\": 26770,\n  \"ab\": 596,\n  \"ab</w>\": 3937,\n  \"aba\": 44204,\n  \"aba</w>\": 11102,\n  \"abad\": 33444,\n  \"abad</w>\": 7155,\n  \"aban\": 41662,\n  \"aband\": 8595,\n  \"abandon</w>\": 28805,\n  \"abandoned</w>\": 11227,\n  \"abar\": 17860,\n  \"abar</w>\": 39805,\n  \"abas\": 25402,\n  \"abay</w>\": 43542,\n  \"abb\": 38954,\n  \"abb</w>\": 38297,\n  \"abba</w>\": 30870,\n  \"abbas\": 37494,\n  \"abbas</w>\": 24412,\n  \"abbey\": 31927,\n  \"abbey</w>\": 10132,\n  \"abbie</w>\": 39949,\n  \"abbo\": 13536,\n  \"abbot</w>\": 44046,\n  \"abbott\": 43737,\n  \"abbott</w>\": 15649,\n  \"abbrevi\": 44843,\n  \"abby\": 30586,\n  \"abby</w>\": 14694,\n  \"abc\": 13137,\n  \"abc</w>\": 5334,\n  \"abcnews</w>\": 31566,\n  \"abd</w>\": 44093,\n  \"abdel\": 46511,\n  \"abdomin\": 35335,\n  \"abdominal</w>\": 39328,\n  \"abdu\": 13361,\n  \"abduc\": 17884,\n  \"abducted</w>\": 31520,\n  \"abduction</w>\": 36984,\n  \"abdul\": 14227,\n  \"abdul</w>\": 15593,\n  \"abdullah</w>\": 21317,\n  \"abe\": 15856,\n  \"abe</w>\": 12734,\n  \"abee</w>\": 36037,\n  \"abel\": 31938,\n  \"abel</w>\": 25318,\n  \"abella</w>\": 46156,\n  \"aben\": 40865,\n  \"aber\": 7828,\n  \"aber</w>\": 41867,\n  \"aberdeen\": 30539,\n  \"aberdeen</w>\": 17236,\n  \"abh\": 27484,\n  \"abh</w>\": 33649,\n  \"abhcosmetics</w>\": 49189,\n  \"abhi\": 18113,\n  \"abhin\": 44045,\n  \"abhishek</w>\": 44502,\n  \"abi\": 16867,\n  \"abi</w>\": 14161,\n  \"abia</w>\": 48604,\n  \"abide</w>\": 49163,\n  \"abig\": 20863,\n  \"abigail</w>\": 25686,\n  \"abil\": 21135,\n  \"abilities</w>\": 8724,\n  \"ability\": 35146,\n  \"ability</w>\": 3024,\n  \"abit</w>\": 48668,\n  \"ablanc\": 33716,\n  \"able\": 10102,\n  \"able</w>\": 863,\n  \"abled</w>\": 10655,\n  \"ableg</w>\": 24055,\n  \"ables</w>\": 8486,\n  \"ableton</w>\": 47169,\n  \"ably</w>\": 6748,\n  \"abnormal</w>\": 40934,\n  \"abo\": 2889,\n  \"abo</w>\": 21861,\n  \"aboard</w>\": 11661,\n  \"abol\": 31768,\n  \"abolic</w>\": 46827,\n  \"abolish</w>\": 47403,\n  \"aboo</w>\": 42433,\n  \"abor\": 8416,\n  \"aboriginal</w>\": 20422,\n  \"abortion</w>\": 12336,\n  \"abortions</w>\": 43218,\n  \"aboss</w>\": 46401,\n  \"abou\": 36455,\n  \"abou</w>\": 44053,\n  \"abound</w>\": 41037,\n  \"abour</w>\": 46637,\n  \"about\": 20204,\n  \"about</w>\": 781,\n  \"abouts</w>\": 36339,\n  \"above\": 35019,\n  \"above</w>\": 4348,\n  \"aboy</w>\": 37077,\n  \"abpoli</w>\": 44779,\n  \"abq</w>\": 38767,\n  \"abr\": 44932,\n  \"abra\": 10694,\n  \"abra</w>\": 35087,\n  \"abraham\": 40623,\n  \"abraham</w>\": 15869,\n  \"abram\": 33255,\n  \"abrams</w>\": 29852,\n  \"abre\": 22472,\n  \"abre</w>\": 46756,\n  \"abri\": 28605,\n  \"abridged</w>\": 45333,\n  \"abroad</w>\": 11253,\n  \"abru\": 46295,\n  \"abs\": 18431,\n  \"abs</w>\": 11109,\n  \"absc\": 25389,\n  \"abscbn\": 44260,\n  \"abscbn</w>\": 45810,\n  \"absen\": 32453,\n  \"absence</w>\": 19240,\n  \"absent</w>\": 30363,\n  \"absol\": 4624,\n  \"absolu\": 7055,\n  \"absolut\": 4666,\n  \"absolute</w>\": 7501,\n  \"absolutely</w>\": 4703,\n  \"absor\": 14303,\n  \"absorb</w>\": 35806,\n  \"absorbed</w>\": 45059,\n  \"absorbing</w>\": 46412,\n  \"absorption</w>\": 42210,\n  \"abstr\": 7530,\n  \"abstract\": 23885,\n  \"abstract</w>\": 10197,\n  \"abstractart</w>\": 31170,\n  \"abstraction</w>\": 47696,\n  \"abstracts</w>\": 40065,\n  \"absur\": 21639,\n  \"absurd</w>\": 29757,\n  \"abt</w>\": 9850,\n  \"abu\": 9167,\n  \"abu</w>\": 11787,\n  \"abud\": 20180,\n  \"abudha\": 21450,\n  \"abudhabi</w>\": 25256,\n  \"abuja</w>\": 23371,\n  \"abun\": 20544,\n  \"abundance</w>\": 23236,\n  \"abundant</w>\": 31611,\n  \"abur\": 23377,\n  \"aburger</w>\": 46660,\n  \"abuse</w>\": 7678,\n  \"abused</w>\": 23855,\n  \"abuses</w>\": 37132,\n  \"abusing</w>\": 36558,\n  \"abusive</w>\": 26858,\n  \"abv</w>\": 34172,\n  \"aby\": 16342,\n  \"aby</w>\": 31378,\n  \"abyss</w>\": 33632,\n  \"abz</w>\": 42292,\n  \"ac\": 546,\n  \"ac</w>\": 2816,\n  \"aca</w>\": 9213,\n  \"acab\": 41388,\n  \"acacia</w>\": 44047,\n  \"acad</w>\": 32537,\n  \"acade\": 2892,\n  \"academia</w>\": 22662,\n  \"academic\": 31178,\n  \"academic</w>\": 7935,\n  \"academics</w>\": 26417,\n  \"academies</w>\": 42569,\n  \"academy\": 29968,\n  \"academy</w>\": 4041,\n  \"acadi\": 41455,\n  \"acadia</w>\": 49236,\n  \"acam\": 26172,\n  \"acan\": 42227,\n  \"acan</w>\": 26318,\n  \"acap\": 32357,\n  \"acar\": 22232,\n  \"acare</w>\": 16961,\n  \"acc\": 26805,\n  \"acc</w>\": 9318,\n  \"acca</w>\": 30883,\n  \"acce\": 8564,\n  \"acceler\": 10161,\n  \"accelerate</w>\": 23619,\n  \"accelerated</w>\": 38513,\n  \"accelerating</w>\": 41821,\n  \"acceleration</w>\": 39387,\n  \"accelerator</w>\": 25261,\n  \"accent\": 28110,\n  \"accent</w>\": 18931,\n  \"accents</w>\": 31738,\n  \"accenture</w>\": 41853,\n  \"accep\": 4616,\n  \"accept\": 16447,\n  \"accept</w>\": 9338,\n  \"acceptable</w>\": 14209,\n  \"acceptance</w>\": 17090,\n  \"accepted</w>\": 9159,\n  \"accepting</w>\": 12855,\n  \"accepts</w>\": 22338,\n  \"access\": 7596,\n  \"access</w>\": 3822,\n  \"accessi\": 10787,\n  \"accessibility</w>\": 23407,\n  \"accessible</w>\": 13977,\n  \"accessing</w>\": 46339,\n  \"accessories</w>\": 10220,\n  \"accessory</w>\": 20417,\n  \"acci\": 4263,\n  \"acci</w>\": 33943,\n  \"accident</w>\": 6608,\n  \"accidental</w>\": 24895,\n  \"accidentally</w>\": 11061,\n  \"accidents</w>\": 22072,\n  \"acclaimed</w>\": 21172,\n  \"acco</w>\": 44730,\n  \"accol\": 33858,\n  \"accolades</w>\": 46731,\n  \"accom\": 23658,\n  \"accommo\": 34495,\n  \"accommod\": 14386,\n  \"accommodate</w>\": 34708,\n  \"accommodation</w>\": 18066,\n  \"accommodations</w>\": 45536,\n  \"accomp\": 24985,\n  \"accompan\": 14746,\n  \"accompanied</w>\": 20715,\n  \"accompany</w>\": 34142,\n  \"accompanying</w>\": 38179,\n  \"accompli\": 10205,\n  \"accomplish</w>\": 25542,\n  \"accomplished</w>\": 16462,\n  \"accomplishment</w>\": 26100,\n  \"accomplishments</w>\": 24965,\n  \"accor\": 4182,\n  \"accord\": 34293,\n  \"accord</w>\": 28513,\n  \"according</w>\": 4717,\n  \"accordingly</w>\": 35535,\n  \"accordion</w>\": 48760,\n  \"accoun\": 3081,\n  \"account\": 18424,\n  \"account</w>\": 4684,\n  \"accountability</w>\": 19377,\n  \"accountable</w>\": 24216,\n  \"accountant</w>\": 31026,\n  \"accountants</w>\": 37222,\n  \"accounted</w>\": 43951,\n  \"accounting</w>\": 14805,\n  \"accounts</w>\": 9974,\n  \"accra</w>\": 31900,\n  \"accred\": 17451,\n  \"accreditation</w>\": 27015,\n  \"accredited</w>\": 27647,\n  \"acct</w>\": 45569,\n  \"accu\": 5618,\n  \"accumul\": 19275,\n  \"accumulation</w>\": 37112,\n  \"accur\": 6551,\n  \"accuracy</w>\": 18423,\n  \"accurate</w>\": 8858,\n  \"accurately</w>\": 24206,\n  \"accusations</w>\": 33615,\n  \"accuse</w>\": 39414,\n  \"accused</w>\": 9434,\n  \"accuses</w>\": 27496,\n  \"accusing</w>\": 41474,\n  \"acdc</w>\": 45067,\n  \"ace\": 2675,\n  \"ace</w>\": 804,\n  \"acea</w>\": 35219,\n  \"aceae</w>\": 38153,\n  \"acele\": 40868,\n  \"aceous</w>\": 33610,\n  \"acer\": 37990,\n  \"acer</w>\": 25809,\n  \"aces</w>\": 5725,\n  \"acet\": 28735,\n  \"acf</w>\": 38389,\n  \"ach\": 972,\n  \"ach</w>\": 987,\n  \"acha</w>\": 22686,\n  \"acharya</w>\": 45780,\n  \"achat</w>\": 32706,\n  \"ache\": 27771,\n  \"ache</w>\": 7214,\n  \"ached</w>\": 17048,\n  \"acher\": 38442,\n  \"acher</w>\": 17936,\n  \"achers</w>\": 25051,\n  \"aches</w>\": 14823,\n  \"achi\": 3264,\n  \"achi</w>\": 9087,\n  \"achiev\": 8160,\n  \"achieve\": 14798,\n  \"achieve</w>\": 8175,\n  \"achieved</w>\": 12359,\n  \"achievement</w>\": 8245,\n  \"achievements</w>\": 16114,\n  \"achiever</w>\": 46286,\n  \"achievers</w>\": 44544,\n  \"achieves</w>\": 40123,\n  \"achieving</w>\": 16120,\n  \"achilles</w>\": 33327,\n  \"achim</w>\": 42335,\n  \"aching</w>\": 12864,\n  \"acho</w>\": 33130,\n  \"achs</w>\": 41195,\n  \"aci\": 4359,\n  \"aci</w>\": 34100,\n  \"acia</w>\": 30163,\n  \"acial</w>\": 32422,\n  \"acid\": 35474,\n  \"acid</w>\": 10085,\n  \"acidity</w>\": 48800,\n  \"acids</w>\": 27751,\n  \"acies</w>\": 20162,\n  \"acin\": 39442,\n  \"acing</w>\": 9442,\n  \"acio</w>\": 26202,\n  \"acion\": 44965,\n  \"acion</w>\": 24968,\n  \"acional</w>\": 26435,\n  \"aciones</w>\": 35832,\n  \"acious</w>\": 16020,\n  \"acity</w>\": 7511,\n  \"aciÃ³n</w>\": 38175,\n  \"ack\": 877,\n  \"ack</w>\": 725,\n  \"acked</w>\": 5698,\n  \"acker\": 31201,\n  \"acker</w>\": 7940,\n  \"ackeray</w>\": 41843,\n  \"acki</w>\": 42857,\n  \"acking</w>\": 5515,\n  \"ackles</w>\": 28503,\n  \"acknow\": 13563,\n  \"acknowle\": 18100,\n  \"acknowledge</w>\": 25209,\n  \"acknowledged</w>\": 35913,\n  \"acknowledges</w>\": 49083,\n  \"acknowledging</w>\": 45645,\n  \"acks</w>\": 3858,\n  \"acl\": 47593,\n  \"acl</w>\": 23073,\n  \"acle</w>\": 6504,\n  \"acles</w>\": 34164,\n  \"aclu</w>\": 37354,\n  \"acm</w>\": 39317,\n  \"acmilan</w>\": 36500,\n  \"acne</w>\": 24195,\n  \"aco\": 9463,\n  \"aco</w>\": 8800,\n  \"acol\": 17431,\n  \"acollege</w>\": 43468,\n  \"acom\": 17224,\n  \"acom</w>\": 22342,\n  \"acon\": 11621,\n  \"acon</w>\": 11571,\n  \"aconf</w>\": 38851,\n  \"acons</w>\": 31599,\n  \"acor\": 22076,\n  \"acorn</w>\": 37537,\n  \"acos</w>\": 39943,\n  \"acosta</w>\": 31994,\n  \"acou\": 8794,\n  \"acoun\": 31295,\n  \"acounty</w>\": 45449,\n  \"acoustic</w>\": 10616,\n  \"acoustics</w>\": 43873,\n  \"acp</w>\": 19627,\n  \"acqu\": 7946,\n  \"acquainted</w>\": 40713,\n  \"acqui\": 12194,\n  \"acquire</w>\": 21576,\n  \"acquired</w>\": 15932,\n  \"acquires</w>\": 27376,\n  \"acquiring</w>\": 42785,\n  \"acquis\": 14207,\n  \"acquisition</w>\": 16543,\n  \"acquisitions</w>\": 39649,\n  \"acr</w>\": 43648,\n  \"acre\": 26749,\n  \"acre</w>\": 9493,\n  \"acres</w>\": 11630,\n  \"acro\": 21060,\n  \"acrob\": 40891,\n  \"acron\": 37770,\n  \"across</w>\": 2500,\n  \"acrosse</w>\": 40979,\n  \"acruz</w>\": 40455,\n  \"acry\": 10440,\n  \"acrylic</w>\": 12252,\n  \"acs</w>\": 11782,\n  \"act\": 10305,\n  \"act</w>\": 1393,\n  \"acted</w>\": 10971,\n  \"acti\": 4786,\n  \"acting</w>\": 6319,\n  \"action\": 12493,\n  \"action</w>\": 1816,\n  \"actions</w>\": 6271,\n  \"activ\": 3430,\n  \"activate</w>\": 26737,\n  \"activated</w>\": 22249,\n  \"activation</w>\": 26769,\n  \"active\": 19009,\n  \"active</w>\": 4046,\n  \"actively</w>\": 18645,\n  \"activi\": 7230,\n  \"activism</w>\": 20117,\n  \"activist</w>\": 10850,\n  \"activists</w>\": 12649,\n  \"activities</w>\": 6514,\n  \"activity</w>\": 6206,\n  \"actment</w>\": 44807,\n  \"acton\": 36167,\n  \"acton</w>\": 36697,\n  \"actonclimate</w>\": 43797,\n  \"actor\": 12181,\n  \"actor</w>\": 4035,\n  \"actors</w>\": 9255,\n  \"actorslife</w>\": 25117,\n  \"actorvijay</w>\": 34033,\n  \"actress</w>\": 5805,\n  \"actresses</w>\": 33639,\n  \"acts</w>\": 6816,\n  \"actu\": 2375,\n  \"actual</w>\": 7488,\n  \"actually</w>\": 2955,\n  \"acu\": 9204,\n  \"acu</w>\": 48475,\n  \"aculture</w>\": 38145,\n  \"acup\": 30869,\n  \"acup</w>\": 27278,\n  \"acupuncture</w>\": 40043,\n  \"acur\": 44719,\n  \"acura</w>\": 30120,\n  \"acus</w>\": 33710,\n  \"acute</w>\": 19734,\n  \"acy\": 18717,\n  \"acy</w>\": 2356,\n  \"ad\": 594,\n  \"ad</w>\": 680,\n  \"ada\": 25785,\n  \"ada</w>\": 1886,\n  \"adaily</w>\": 47254,\n  \"adal\": 46646,\n  \"adam\": 6037,\n  \"adam</w>\": 4944,\n  \"adamlambert</w>\": 27659,\n  \"adams</w>\": 7942,\n  \"adan</w>\": 41802,\n  \"adani</w>\": 37499,\n  \"adap\": 6341,\n  \"adapt</w>\": 22666,\n  \"adaptation</w>\": 16566,\n  \"adapted</w>\": 26657,\n  \"adapter</w>\": 21839,\n  \"adapting</w>\": 44120,\n  \"adaptive</w>\": 28672,\n  \"adar\": 27702,\n  \"adar</w>\": 32681,\n  \"adas</w>\": 23250,\n  \"adata</w>\": 39500,\n  \"aday\": 31367,\n  \"aday</w>\": 10280,\n  \"adays</w>\": 24337,\n  \"adb</w>\": 45630,\n  \"adc</w>\": 38201,\n  \"add\": 19408,\n  \"add</w>\": 3536,\n  \"addams</w>\": 38912,\n  \"added</w>\": 4149,\n  \"adder</w>\": 47557,\n  \"addi</w>\": 36378,\n  \"addic\": 5709,\n  \"addict</w>\": 14614,\n  \"addicted</w>\": 16275,\n  \"addiction</w>\": 11751,\n  \"addictive</w>\": 29638,\n  \"addicts</w>\": 29997,\n  \"adding</w>\": 8676,\n  \"addis</w>\": 43911,\n  \"addison</w>\": 32369,\n  \"additi\": 26927,\n  \"addition</w>\": 6698,\n  \"additional</w>\": 10666,\n  \"additions</w>\": 22575,\n  \"additive</w>\": 48546,\n  \"addo</w>\": 40001,\n  \"address</w>\": 5834,\n  \"addressed</w>\": 20817,\n  \"addresses</w>\": 12702,\n  \"addressing</w>\": 10594,\n  \"adds</w>\": 9944,\n  \"addy</w>\": 24746,\n  \"ade\": 2194,\n  \"ade</w>\": 1928,\n  \"adecides</w>\": 46374,\n  \"aded</w>\": 9994,\n  \"adee</w>\": 47054,\n  \"adel\": 4434,\n  \"adel</w>\": 27308,\n  \"adelaide\": 38193,\n  \"adelaide</w>\": 11611,\n  \"adele\": 42843,\n  \"adele</w>\": 21220,\n  \"adelrey</w>\": 43627,\n  \"ademy</w>\": 49123,\n  \"aden\": 28669,\n  \"aden</w>\": 28688,\n  \"adena</w>\": 23648,\n  \"adequ\": 18232,\n  \"adequate</w>\": 22281,\n  \"ader</w>\": 21365,\n  \"adero</w>\": 49185,\n  \"aders</w>\": 27672,\n  \"ades</w>\": 5793,\n  \"adh</w>\": 42301,\n  \"adhd</w>\": 32649,\n  \"adhe\": 21175,\n  \"adhesive</w>\": 38429,\n  \"adi\": 2486,\n  \"adi</w>\": 8779,\n  \"adia</w>\": 26874,\n  \"adic</w>\": 36780,\n  \"adid\": 8086,\n  \"adidas\": 22396,\n  \"adidas</w>\": 9589,\n  \"adidasoriginals</w>\": 48575,\n  \"adies</w>\": 45834,\n  \"adifference</w>\": 37217,\n  \"adilla</w>\": 41167,\n  \"ading</w>\": 15000,\n  \"adio</w>\": 15060,\n  \"adirond\": 36843,\n  \"adish</w>\": 49009,\n  \"adity\": 28596,\n  \"aditya</w>\": 37186,\n  \"adityanath</w>\": 44437,\n  \"adjac\": 32517,\n  \"adjacent</w>\": 33836,\n  \"adjec\": 45512,\n  \"adju\": 16413,\n  \"adjun\": 45995,\n  \"adjust\": 13784,\n  \"adjust</w>\": 28073,\n  \"adjustable</w>\": 20476,\n  \"adjusted</w>\": 30515,\n  \"adjusting</w>\": 41132,\n  \"adjustment</w>\": 36081,\n  \"adjustments</w>\": 36331,\n  \"adl</w>\": 49351,\n  \"adler</w>\": 30222,\n  \"adm\": 9892,\n  \"adm</w>\": 33604,\n  \"admi\": 11666,\n  \"admin</w>\": 12528,\n  \"admini\": 6434,\n  \"administr\": 12174,\n  \"administration</w>\": 9502,\n  \"administrative</w>\": 22424,\n  \"administrator</w>\": 22603,\n  \"administrators</w>\": 36123,\n  \"admins</w>\": 49297,\n  \"admir\": 17031,\n  \"admiral</w>\": 21013,\n  \"admiration</w>\": 39569,\n  \"admire</w>\": 17791,\n  \"admired</w>\": 36103,\n  \"admirer</w>\": 48344,\n  \"admiring</w>\": 29835,\n  \"admission</w>\": 11315,\n  \"admissions</w>\": 22463,\n  \"admit</w>\": 13769,\n  \"admits</w>\": 16332,\n  \"admitted</w>\": 20427,\n  \"admitting</w>\": 46148,\n  \"adn</w>\": 40339,\n  \"adnan</w>\": 42037,\n  \"ado\": 4775,\n  \"ado</w>\": 2933,\n  \"adobe\": 29256,\n  \"adobe</w>\": 16484,\n  \"adog</w>\": 44913,\n  \"adol\": 33512,\n  \"adole\": 22704,\n  \"adolescent</w>\": 36793,\n  \"adolescents</w>\": 45656,\n  \"adolf</w>\": 41179,\n  \"adon\": 25907,\n  \"adona</w>\": 48419,\n  \"adop\": 4183,\n  \"adopt\": 16441,\n  \"adopt</w>\": 11159,\n  \"adoptable</w>\": 36905,\n  \"adoptdont\": 19674,\n  \"adoptdontshop</w>\": 20089,\n  \"adopted</w>\": 12538,\n  \"adopting</w>\": 30158,\n  \"adoption</w>\": 11544,\n  \"adopts</w>\": 40853,\n  \"ador\": 4992,\n  \"ador</w>\": 9162,\n  \"adora</w>\": 40031,\n  \"adorable</w>\": 6298,\n  \"adoration</w>\": 46781,\n  \"adore</w>\": 15502,\n  \"adored</w>\": 49233,\n  \"adores</w>\": 30290,\n  \"adorned</w>\": 44953,\n  \"ados</w>\": 20079,\n  \"adox</w>\": 32188,\n  \"adp</w>\": 44426,\n  \"adr</w>\": 46189,\n  \"adren\": 24204,\n  \"adrenaline</w>\": 35552,\n  \"adri\": 5935,\n  \"adrian\": 25012,\n  \"adrian</w>\": 13163,\n  \"adriana</w>\": 41363,\n  \"adrid</w>\": 26562,\n  \"adrien</w>\": 47469,\n  \"adrienne</w>\": 40081,\n  \"ads</w>\": 2485,\n  \"adu\": 16882,\n  \"adu</w>\": 24446,\n  \"adukone</w>\": 30511,\n  \"adul\": 7222,\n  \"adult\": 42209,\n  \"adult</w>\": 7115,\n  \"adulthood</w>\": 40964,\n  \"adults</w>\": 9391,\n  \"adv\": 1647,\n  \"adv</w>\": 21018,\n  \"advan\": 33411,\n  \"advance\": 27291,\n  \"advance</w>\": 7022,\n  \"advanced</w>\": 7465,\n  \"advancement</w>\": 35437,\n  \"advances</w>\": 15852,\n  \"advancing</w>\": 21355,\n  \"advani</w>\": 48189,\n  \"advant\": 7017,\n  \"advantage</w>\": 8573,\n  \"advantaged</w>\": 38361,\n  \"advantages</w>\": 23506,\n  \"adven\": 41670,\n  \"advent\": 3071,\n  \"advent</w>\": 15199,\n  \"adventcalendar</w>\": 43492,\n  \"adventur\": 29627,\n  \"adventure\": 17251,\n  \"adventure</w>\": 4377,\n  \"adventurer</w>\": 48098,\n  \"adventures</w>\": 7941,\n  \"adventurous</w>\": 31179,\n  \"adver\": 4806,\n  \"adverse</w>\": 30348,\n  \"adversity</w>\": 32516,\n  \"advert</w>\": 19080,\n  \"adverti\": 5682,\n  \"advertise</w>\": 31473,\n  \"advertised</w>\": 38987,\n  \"advertisement</w>\": 18713,\n  \"advertiser</w>\": 41829,\n  \"advertisers</w>\": 45472,\n  \"advertising</w>\": 8158,\n  \"adverts</w>\": 44306,\n  \"advice</w>\": 4973,\n  \"advis\": 4634,\n  \"advise</w>\": 25962,\n  \"advised</w>\": 23196,\n  \"adviser</w>\": 20367,\n  \"advisers</w>\": 40984,\n  \"advises</w>\": 42761,\n  \"advising</w>\": 39648,\n  \"advisor</w>\": 12380,\n  \"advisors</w>\": 23197,\n  \"advisory</w>\": 10224,\n  \"advoc\": 6657,\n  \"advocacy</w>\": 14443,\n  \"advocate</w>\": 12044,\n  \"advocates</w>\": 17757,\n  \"adwords</w>\": 48343,\n  \"ady\": 41446,\n  \"ady</w>\": 8781,\n  \"ae\": 5548,\n  \"ae</w>\": 4542,\n  \"aea</w>\": 37048,\n  \"aed</w>\": 26912,\n  \"aege\": 42304,\n  \"ael\": 41533,\n  \"ael</w>\": 43340,\n  \"aen\": 43085,\n  \"aer\": 10195,\n  \"aeri\": 27685,\n  \"aerial\": 44866,\n  \"aerial</w>\": 12440,\n  \"aero\": 10196,\n  \"aero</w>\": 25026,\n  \"aerob\": 42824,\n  \"aeron\": 37286,\n  \"aeronau\": 42816,\n  \"aerop\": 27735,\n  \"aerosmith</w>\": 43253,\n  \"aerospace</w>\": 20530,\n  \"aes\": 10617,\n  \"aes</w>\": 35677,\n  \"aest</w>\": 40694,\n  \"aesthe\": 21181,\n  \"aesthetic</w>\": 16179,\n  \"aesthetics</w>\": 29295,\n  \"aew</w>\": 47108,\n  \"af\": 702,\n  \"af</w>\": 4391,\n  \"afa</w>\": 24953,\n  \"afan\": 47474,\n  \"afar\": 41637,\n  \"afar</w>\": 37866,\n  \"afb</w>\": 27022,\n  \"afc\": 29742,\n  \"afc</w>\": 6571,\n  \"afcb</w>\": 44276,\n  \"afcon</w>\": 30019,\n  \"afd</w>\": 44626,\n  \"afe\": 30487,\n  \"afe</w>\": 13912,\n  \"afer\": 44707,\n  \"aff\": 8849,\n  \"aff</w>\": 14864,\n  \"affair</w>\": 13998,\n  \"affairs</w>\": 9830,\n  \"affe\": 4556,\n  \"affect</w>\": 11361,\n  \"affected</w>\": 9715,\n  \"affecting</w>\": 18448,\n  \"affection\": 33780,\n  \"affection</w>\": 28381,\n  \"affectionate</w>\": 42578,\n  \"affects</w>\": 17285,\n  \"affili\": 12120,\n  \"affiliate</w>\": 18652,\n  \"affiliated</w>\": 37540,\n  \"affiliation</w>\": 48377,\n  \"affinity</w>\": 41451,\n  \"affir\": 25343,\n  \"affirm\": 42711,\n  \"affirm</w>\": 48625,\n  \"affirmation</w>\": 47495,\n  \"affl\": 34036,\n  \"affleck</w>\": 35584,\n  \"afford\": 7951,\n  \"afford</w>\": 13223,\n  \"affordability</w>\": 44828,\n  \"affordable\": 43944,\n  \"affordable</w>\": 8926,\n  \"afg</w>\": 33994,\n  \"afgh\": 9029,\n  \"afghan</w>\": 15919,\n  \"afghanistan</w>\": 9836,\n  \"afi\": 24074,\n  \"afi</w>\": 31958,\n  \"afil\": 27209,\n  \"afire</w>\": 42010,\n  \"afirst</w>\": 38601,\n  \"afl\": 15132,\n  \"afl</w>\": 14356,\n  \"aflo\": 41959,\n  \"afm</w>\": 38385,\n  \"afootball</w>\": 41694,\n  \"afor\": 43102,\n  \"afore\": 41468,\n  \"afp</w>\": 18311,\n  \"afraid</w>\": 9474,\n  \"afri\": 13888,\n  \"afric\": 2136,\n  \"africa</w>\": 3093,\n  \"african\": 17471,\n  \"african</w>\": 4736,\n  \"africans</w>\": 26534,\n  \"afridi</w>\": 37651,\n  \"afrika</w>\": 45833,\n  \"afrin</w>\": 45586,\n  \"afro\": 16267,\n  \"afro</w>\": 21795,\n  \"afs</w>\": 48960,\n  \"aft</w>\": 22693,\n  \"after\": 2278,\n  \"after</w>\": 953,\n  \"afterdark</w>\": 48966,\n  \"afterlife</w>\": 46790,\n  \"aftermath</w>\": 20958,\n  \"afterno\": 22330,\n  \"afternoon\": 39035,\n  \"afternoon</w>\": 2716,\n  \"afternoons</w>\": 31631,\n  \"afterparty</w>\": 35305,\n  \"afterwards</w>\": 23911,\n  \"ag\": 602,\n  \"ag</w>\": 5241,\n  \"aga\": 1050,\n  \"aga</w>\": 4654,\n  \"again</w>\": 1495,\n  \"against\": 23838,\n  \"against</w>\": 1601,\n  \"agame</w>\": 46943,\n  \"agan\": 42946,\n  \"agan</w>\": 9178,\n  \"agar\": 13199,\n  \"agar</w>\": 17544,\n  \"agarwal</w>\": 43117,\n  \"agas\": 20430,\n  \"agate</w>\": 25454,\n  \"agatha</w>\": 43896,\n  \"agave</w>\": 42671,\n  \"agawa</w>\": 39433,\n  \"agazine</w>\": 44942,\n  \"age\": 4758,\n  \"age</w>\": 805,\n  \"aged</w>\": 3889,\n  \"ageing</w>\": 25349,\n  \"agen\": 10101,\n  \"agen</w>\": 43696,\n  \"agencies</w>\": 13887,\n  \"agency\": 44885,\n  \"agency</w>\": 6270,\n  \"agend\": 48653,\n  \"agenda</w>\": 8728,\n  \"agent\": 21210,\n  \"agent</w>\": 6576,\n  \"agents</w>\": 10199,\n  \"agentsof\": 37074,\n  \"agentsofshield</w>\": 38801,\n  \"ager\": 44847,\n  \"ager</w>\": 10443,\n  \"agers</w>\": 22123,\n  \"ages</w>\": 2321,\n  \"agg</w>\": 45482,\n  \"aggarwal</w>\": 39386,\n  \"agger\": 27836,\n  \"aggi\": 36844,\n  \"aggie\": 44244,\n  \"aggie</w>\": 37618,\n  \"aggies</w>\": 31047,\n  \"aggio</w>\": 36685,\n  \"aggrav\": 35203,\n  \"aggre\": 10426,\n  \"aggreg\": 41968,\n  \"aggregate</w>\": 41318,\n  \"aggression</w>\": 28900,\n  \"aggressive</w>\": 16295,\n  \"aggressively</w>\": 48667,\n  \"agh\": 17917,\n  \"agh</w>\": 14402,\n  \"aghan</w>\": 31276,\n  \"agi\": 24036,\n  \"agi</w>\": 17645,\n  \"agic</w>\": 37652,\n  \"agile</w>\": 16276,\n  \"agility</w>\": 32161,\n  \"aging</w>\": 4336,\n  \"agio</w>\": 41746,\n  \"agirl</w>\": 35469,\n  \"agle\": 37035,\n  \"agle</w>\": 16702,\n  \"agles\": 36374,\n  \"agles</w>\": 22679,\n  \"aglia</w>\": 46912,\n  \"agm</w>\": 19162,\n  \"agn\": 36474,\n  \"agna</w>\": 43626,\n  \"agne\": 29374,\n  \"agne</w>\": 48303,\n  \"agnes</w>\": 26213,\n  \"agno\": 41540,\n  \"ago\": 6276,\n  \"ago</w>\": 1468,\n  \"agomez</w>\": 27127,\n  \"agon\": 26775,\n  \"agon</w>\": 14901,\n  \"agony</w>\": 36977,\n  \"agor\": 38920,\n  \"agos</w>\": 32657,\n  \"agov</w>\": 34227,\n  \"agp</w>\": 46048,\n  \"agr\": 36639,\n  \"agra\": 26660,\n  \"agra</w>\": 29830,\n  \"agram</w>\": 2447,\n  \"agre\": 3180,\n  \"agreat\": 37594,\n  \"agree</w>\": 5953,\n  \"agreed</w>\": 12774,\n  \"agreeing</w>\": 40720,\n  \"agreement</w>\": 8286,\n  \"agreements</w>\": 25865,\n  \"agrees</w>\": 17854,\n  \"agri\": 20527,\n  \"agri</w>\": 30326,\n  \"agricul\": 7234,\n  \"agricultural</w>\": 15440,\n  \"agriculture</w>\": 9720,\n  \"agro\": 33178,\n  \"agro</w>\": 44589,\n  \"agron\": 41314,\n  \"agroup</w>\": 40099,\n  \"ags</w>\": 16926,\n  \"agt</w>\": 39681,\n  \"agu\": 3922,\n  \"agu</w>\": 36544,\n  \"agua</w>\": 18482,\n  \"aguchi</w>\": 49206,\n  \"ague</w>\": 2095,\n  \"aguero</w>\": 42964,\n  \"agues</w>\": 7000,\n  \"aguil\": 27946,\n  \"aguilar</w>\": 44715,\n  \"ah\": 1772,\n  \"ah</w>\": 1288,\n  \"aha\": 12082,\n  \"aha</w>\": 8429,\n  \"ahah</w>\": 38661,\n  \"ahaha</w>\": 32423,\n  \"ahahaha</w>\": 42620,\n  \"aham\": 36036,\n  \"ahan\": 45061,\n  \"ahan</w>\": 19255,\n  \"ahar\": 31038,\n  \"ahar</w>\": 38760,\n  \"ahe\": 27688,\n  \"ahead</w>\": 3158,\n  \"ahem</w>\": 39995,\n  \"ahh</w>\": 13152,\n  \"ahhh</w>\": 14769,\n  \"ahhhh</w>\": 21054,\n  \"ahhhhh</w>\": 36392,\n  \"ahi\": 45349,\n  \"ahi</w>\": 24154,\n  \"ahl</w>\": 30433,\n  \"ahmad\": 32167,\n  \"ahmad</w>\": 16902,\n  \"ahmadi\": 38656,\n  \"ahmadiyya</w>\": 44865,\n  \"ahmed\": 19491,\n  \"ahmed</w>\": 12081,\n  \"ahmedabad</w>\": 26966,\n  \"ahn</w>\": 33405,\n  \"aho\": 28114,\n  \"aho</w>\": 38444,\n  \"ahora</w>\": 43113,\n  \"ahouse</w>\": 33197,\n  \"ahoy</w>\": 38652,\n  \"ahs</w>\": 16937,\n  \"ahu\": 11908,\n  \"ahu</w>\": 16515,\n  \"ai\": 2014,\n  \"ai</w>\": 2215,\n  \"aia</w>\": 27046,\n  \"aib</w>\": 34780,\n  \"aic\": 29454,\n  \"aid\": 13723,\n  \"aid</w>\": 5182,\n  \"aida</w>\": 33830,\n  \"aidan\": 48814,\n  \"aidan</w>\": 26945,\n  \"aide\": 31558,\n  \"aide</w>\": 9746,\n  \"aided</w>\": 48707,\n  \"aiden</w>\": 40020,\n  \"aides</w>\": 49082,\n  \"aids</w>\": 11759,\n  \"aig\": 27295,\n  \"aig</w>\": 46989,\n  \"aii</w>\": 22478,\n  \"aik</w>\": 42575,\n  \"aiken</w>\": 46342,\n  \"ail\": 1457,\n  \"ail</w>\": 9154,\n  \"ailed</w>\": 38919,\n  \"ailing</w>\": 29999,\n  \"ails</w>\": 27024,\n  \"aim\": 6787,\n  \"aim</w>\": 11255,\n  \"aime</w>\": 39872,\n  \"aimed</w>\": 20247,\n  \"aimee</w>\": 36318,\n  \"aiming</w>\": 21768,\n  \"aimo</w>\": 36706,\n  \"aims</w>\": 13326,\n  \"ain\": 8326,\n  \"ain</w>\": 2210,\n  \"aine\": 48983,\n  \"aine</w>\": 17634,\n  \"ains</w>\": 27621,\n  \"aint\": 29543,\n  \"aint</w>\": 13099,\n  \"ainted</w>\": 39933,\n  \"aioli</w>\": 43949,\n  \"air\": 1281,\n  \"air</w>\": 1922,\n  \"aira\": 35085,\n  \"aira</w>\": 46444,\n  \"airasia</w>\": 48020,\n  \"airbnb</w>\": 23098,\n  \"airborne</w>\": 22755,\n  \"airbus</w>\": 15324,\n  \"aircraft</w>\": 7706,\n  \"airdrop</w>\": 38434,\n  \"aire</w>\": 7682,\n  \"aired</w>\": 21938,\n  \"aires</w>\": 17034,\n  \"airfield</w>\": 40525,\n  \"airforce</w>\": 23511,\n  \"airing</w>\": 20453,\n  \"airline</w>\": 14847,\n  \"airlines</w>\": 8929,\n  \"airmen</w>\": 44499,\n  \"airplane</w>\": 16451,\n  \"airplanes</w>\": 33319,\n  \"airplay</w>\": 47024,\n  \"airpollution</w>\": 47362,\n  \"airport\": 48337,\n  \"airport</w>\": 3259,\n  \"airports</w>\": 21543,\n  \"airs</w>\": 18539,\n  \"airshow</w>\": 27139,\n  \"airsoft</w>\": 30134,\n  \"airspace</w>\": 49280,\n  \"airstrikes</w>\": 37220,\n  \"airtel</w>\": 34784,\n  \"airtime</w>\": 46617,\n  \"airwaves</w>\": 43910,\n  \"airways</w>\": 14299,\n  \"airy</w>\": 44453,\n  \"ais\": 7616,\n  \"ais</w>\": 11393,\n  \"aise</w>\": 30505,\n  \"aish\": 21946,\n  \"aisha</w>\": 40211,\n  \"aishwar\": 29687,\n  \"aishwarya</w>\": 44019,\n  \"aisle</w>\": 26917,\n  \"ait\": 25613,\n  \"ait</w>\": 40814,\n  \"aj\": 3990,\n  \"aj</w>\": 6342,\n  \"aja\": 42343,\n  \"aja</w>\": 19633,\n  \"ajax</w>\": 21933,\n  \"ajay\": 22494,\n  \"ajay</w>\": 28726,\n  \"ajaydevgn</w>\": 35515,\n  \"aje\": 48818,\n  \"aje</w>\": 33315,\n  \"ajes</w>\": 38791,\n  \"aji\": 26102,\n  \"aji</w>\": 21153,\n  \"ajit</w>\": 42261,\n  \"ajith</w>\": 24118,\n  \"ajo</w>\": 26958,\n  \"aju\": 36855,\n  \"ak\": 819,\n  \"ak</w>\": 1196,\n  \"aka\": 19154,\n  \"aka</w>\": 3412,\n  \"akaif</w>\": 45736,\n  \"akan\": 43678,\n  \"akan</w>\": 38244,\n  \"akapoor</w>\": 40064,\n  \"akarta</w>\": 48603,\n  \"akb</w>\": 41962,\n  \"akbar</w>\": 27180,\n  \"ake\": 10558,\n  \"ake</w>\": 5776,\n  \"aked</w>\": 6115,\n  \"aker\": 14245,\n  \"aker</w>\": 3074,\n  \"akers</w>\": 5788,\n  \"akes</w>\": 4764,\n  \"akest</w>\": 46679,\n  \"akh\": 14821,\n  \"akh</w>\": 30660,\n  \"akhan</w>\": 28158,\n  \"akhi\": 41660,\n  \"akhilesh</w>\": 48495,\n  \"akhtar</w>\": 45458,\n  \"aki\": 18173,\n  \"aki</w>\": 6592,\n  \"akin\": 24630,\n  \"akin</w>\": 13601,\n  \"aking</w>\": 1809,\n  \"akins</w>\": 48568,\n  \"akira</w>\": 34001,\n  \"akis</w>\": 27732,\n  \"akistan</w>\": 46221,\n  \"akley</w>\": 39908,\n  \"ako\": 44027,\n  \"ako</w>\": 14541,\n  \"akon</w>\": 47105,\n  \"akos</w>\": 44659,\n  \"akrish\": 37434,\n  \"akron</w>\": 26115,\n  \"aks</w>\": 2953,\n  \"aksh\": 28226,\n  \"akshay\": 21483,\n  \"akshay</w>\": 38914,\n  \"akshaykumar</w>\": 23624,\n  \"akshi</w>\": 42634,\n  \"aku\": 18151,\n  \"aku</w>\": 20815,\n  \"aky</w>\": 11977,\n  \"al\": 526,\n  \"al</w>\": 566,\n  \"ala\": 12783,\n  \"ala</w>\": 3449,\n  \"alab\": 6365,\n  \"alabam\": 45880,\n  \"alabama</w>\": 8422,\n  \"alach\": 24622,\n  \"alad\": 23074,\n  \"aladdin</w>\": 29951,\n  \"alai</w>\": 47072,\n  \"alain</w>\": 28999,\n  \"alam\": 16612,\n  \"alam</w>\": 16012,\n  \"alamo\": 41922,\n  \"alamo</w>\": 34632,\n  \"alan\": 9563,\n  \"alan</w>\": 5773,\n  \"alana</w>\": 43405,\n  \"aland\": 34304,\n  \"aland</w>\": 6819,\n  \"alar\": 34333,\n  \"alarm</w>\": 11321,\n  \"alarming</w>\": 37209,\n  \"alarms</w>\": 31236,\n  \"alarts</w>\": 31422,\n  \"alas\": 7276,\n  \"alas</w>\": 22412,\n  \"alaska</w>\": 9562,\n  \"alaskan</w>\": 33898,\n  \"alastair</w>\": 42062,\n  \"alay\": 30289,\n  \"alay</w>\": 36450,\n  \"alaya</w>\": 36397,\n  \"alb\": 45248,\n  \"alba</w>\": 25254,\n  \"alban\": 10882,\n  \"albania</w>\": 29170,\n  \"albanian</w>\": 47721,\n  \"albans</w>\": 44119,\n  \"albany</w>\": 17359,\n  \"albat\": 42797,\n  \"albeit</w>\": 38984,\n  \"alber\": 6413,\n  \"albert\": 34174,\n  \"albert</w>\": 9507,\n  \"alberta</w>\": 11048,\n  \"alberto</w>\": 22714,\n  \"albi\": 18512,\n  \"albino</w>\": 48062,\n  \"albion</w>\": 24071,\n  \"albu\": 2216,\n  \"album\": 40712,\n  \"album</w>\": 2431,\n  \"albums</w>\": 10705,\n  \"albuquerque</w>\": 31079,\n  \"alcat\": 35361,\n  \"alche\": 37909,\n  \"alchemist</w>\": 38913,\n  \"alchemy</w>\": 39501,\n  \"alco\": 6848,\n  \"alco</w>\": 45446,\n  \"alcohol</w>\": 9426,\n  \"alcoholic</w>\": 25098,\n  \"ald\": 4539,\n  \"ald</w>\": 2928,\n  \"alda</w>\": 46440,\n  \"alde\": 33114,\n  \"alden\": 17155,\n  \"alden</w>\": 27710,\n  \"aldenrichards</w>\": 20051,\n  \"alder\": 18220,\n  \"alder</w>\": 46571,\n  \"aldi</w>\": 23204,\n  \"aldo</w>\": 9933,\n  \"aldridge</w>\": 38084,\n  \"alds</w>\": 14285,\n  \"aldu\": 6505,\n  \"aldub\": 10532,\n  \"aldub</w>\": 15247,\n  \"ale\": 1440,\n  \"ale</w>\": 1336,\n  \"alea</w>\": 26518,\n  \"aleague</w>\": 38909,\n  \"alec\": 29804,\n  \"alec</w>\": 19954,\n  \"alecoscino</w>\": 47948,\n  \"aled</w>\": 4970,\n  \"alee</w>\": 24515,\n  \"alej\": 23440,\n  \"alejandro</w>\": 32950,\n  \"alek\": 26906,\n  \"alek</w>\": 43310,\n  \"aleksand\": 48429,\n  \"alem</w>\": 11825,\n  \"aleppo</w>\": 19258,\n  \"aler\": 25674,\n  \"aler</w>\": 27335,\n  \"alert</w>\": 4662,\n  \"alerts</w>\": 22144,\n  \"ales\": 44171,\n  \"ales</w>\": 5962,\n  \"aless\": 21864,\n  \"alessandro</w>\": 37344,\n  \"alestine</w>\": 31945,\n  \"alex\": 2959,\n  \"alex</w>\": 4134,\n  \"alexa</w>\": 16273,\n  \"alexand\": 10696,\n  \"alexander\": 25527,\n  \"alexander</w>\": 7563,\n  \"alexandra</w>\": 19054,\n  \"alexandre</w>\": 35711,\n  \"alexandria</w>\": 21171,\n  \"alexis\": 35023,\n  \"alexis</w>\": 14243,\n  \"aley</w>\": 21635,\n  \"alf</w>\": 27098,\n  \"alfa</w>\": 23482,\n  \"alfar\": 38870,\n  \"alfie</w>\": 28598,\n  \"alfon\": 31947,\n  \"alfonso</w>\": 41784,\n  \"alfre\": 20982,\n  \"alfred</w>\": 16553,\n  \"alfredo</w>\": 32291,\n  \"algae</w>\": 25654,\n  \"algar\": 36291,\n  \"algarve</w>\": 40290,\n  \"alge\": 24336,\n  \"algebra</w>\": 33694,\n  \"alger\": 18568,\n  \"algeria</w>\": 25257,\n  \"algon\": 33007,\n  \"algori\": 14912,\n  \"algorithm</w>\": 23295,\n  \"algorithms</w>\": 26039,\n  \"alham\": 23352,\n  \"alhamdulil\": 35129,\n  \"alhamdulillah</w>\": 38982,\n  \"ali\": 835,\n  \"ali</w>\": 3558,\n  \"alia</w>\": 2492,\n  \"aliaa</w>\": 36468,\n  \"alian</w>\": 3464,\n  \"alias</w>\": 40026,\n  \"alibaba</w>\": 39231,\n  \"alic\": 25265,\n  \"alice\": 23759,\n  \"alice</w>\": 9192,\n  \"alici\": 31630,\n  \"alicia</w>\": 20914,\n  \"alie</w>\": 8697,\n  \"alien\": 22846,\n  \"alien</w>\": 9639,\n  \"aliens</w>\": 14883,\n  \"alier</w>\": 39493,\n  \"alies</w>\": 38086,\n  \"alife\": 41347,\n  \"alife</w>\": 21100,\n  \"alig\": 21272,\n  \"alight</w>\": 36157,\n  \"align</w>\": 31160,\n  \"aligned</w>\": 29292,\n  \"alignment</w>\": 27267,\n  \"alik</w>\": 31141,\n  \"alike</w>\": 12665,\n  \"alim\": 42075,\n  \"alin\": 42746,\n  \"alin</w>\": 40063,\n  \"alina</w>\": 39529,\n  \"aline</w>\": 21799,\n  \"aling</w>\": 5169,\n  \"alion</w>\": 19049,\n  \"alis\": 21308,\n  \"alis</w>\": 20114,\n  \"alisa</w>\": 38918,\n  \"alisation</w>\": 42143,\n  \"alise</w>\": 36718,\n  \"alised</w>\": 25099,\n  \"alism</w>\": 5607,\n  \"alison\": 28653,\n  \"alison</w>\": 16970,\n  \"alist\": 44900,\n  \"alist</w>\": 3320,\n  \"alistair</w>\": 40551,\n  \"alistic</w>\": 22302,\n  \"alists</w>\": 5653,\n  \"alit\": 45566,\n  \"alities</w>\": 27925,\n  \"ality</w>\": 1694,\n  \"alive\": 40467,\n  \"alive</w>\": 4716,\n  \"aliz\": 30979,\n  \"alization</w>\": 8026,\n  \"alize</w>\": 10268,\n  \"alized</w>\": 6141,\n  \"alizer</w>\": 38922,\n  \"alizes</w>\": 26181,\n  \"alizing</w>\": 13023,\n  \"alk\": 30246,\n  \"alk</w>\": 21577,\n  \"alkal\": 33450,\n  \"alkaline</w>\": 39210,\n  \"all\": 813,\n  \"all</w>\": 615,\n  \"alla\": 13884,\n  \"alla</w>\": 14000,\n  \"allabout\": 43996,\n  \"allah</w>\": 6378,\n  \"allan\": 36552,\n  \"allan</w>\": 15404,\n  \"allblacks</w>\": 47728,\n  \"allday</w>\": 35862,\n  \"alle\": 4870,\n  \"alle</w>\": 29478,\n  \"alled</w>\": 7379,\n  \"alleg\": 7456,\n  \"allegations</w>\": 16992,\n  \"alleged</w>\": 12133,\n  \"allegedly</w>\": 14177,\n  \"alleges</w>\": 45051,\n  \"allegh\": 41479,\n  \"allegheny</w>\": 47851,\n  \"allegi\": 28832,\n  \"allegiance</w>\": 30955,\n  \"allen\": 16712,\n  \"allen</w>\": 6386,\n  \"allenge</w>\": 31387,\n  \"aller\": 10116,\n  \"aller</w>\": 30630,\n  \"allergic</w>\": 28809,\n  \"allergies</w>\": 28247,\n  \"allergy</w>\": 24408,\n  \"allery</w>\": 32542,\n  \"alles</w>\": 43354,\n  \"allevi\": 31682,\n  \"alleviate</w>\": 44799,\n  \"alley\": 36205,\n  \"alley</w>\": 10329,\n  \"allez</w>\": 49137,\n  \"alli\": 4123,\n  \"alli</w>\": 15268,\n  \"alliance\": 45404,\n  \"alliance</w>\": 8945,\n  \"alliances</w>\": 48403,\n  \"allianz</w>\": 45740,\n  \"allie</w>\": 25040,\n  \"allied</w>\": 20045,\n  \"allies</w>\": 17277,\n  \"alligator</w>\": 28574,\n  \"allin\": 45007,\n  \"allin</w>\": 22395,\n  \"alline</w>\": 48182,\n  \"alling</w>\": 2992,\n  \"allis</w>\": 45309,\n  \"allison\": 34602,\n  \"allison</w>\": 16578,\n  \"allman</w>\": 42611,\n  \"allo\": 8107,\n  \"allo</w>\": 18389,\n  \"allocated</w>\": 42716,\n  \"allocation</w>\": 35139,\n  \"allon</w>\": 46693,\n  \"allot\": 26363,\n  \"allotment</w>\": 33750,\n  \"allow\": 5645,\n  \"allow</w>\": 6722,\n  \"allowance</w>\": 35696,\n  \"allowed</w>\": 7885,\n  \"allowing</w>\": 12458,\n  \"allows</w>\": 9966,\n  \"alloy</w>\": 22467,\n  \"alls</w>\": 1997,\n  \"allstar\": 31247,\n  \"allstar</w>\": 22974,\n  \"allstars</w>\": 31198,\n  \"allthe\": 29253,\n  \"allu\": 20157,\n  \"alluarjun</w>\": 39333,\n  \"allure</w>\": 41814,\n  \"ally\": 7461,\n  \"ally</w>\": 769,\n  \"alm</w>\": 28303,\n  \"alma\": 32933,\n  \"alma</w>\": 18337,\n  \"alman\": 29394,\n  \"almanac</w>\": 41268,\n  \"almighty</w>\": 21898,\n  \"almond</w>\": 15646,\n  \"almonds</w>\": 30468,\n  \"almost\": 47534,\n  \"almost</w>\": 2671,\n  \"aln\": 47203,\n  \"alo\": 3435,\n  \"alo</w>\": 6183,\n  \"aloe</w>\": 30728,\n  \"alog</w>\": 15813,\n  \"alogue</w>\": 9101,\n  \"aloha</w>\": 23160,\n  \"aloils</w>\": 49002,\n  \"alom</w>\": 22236,\n  \"alon\": 14097,\n  \"alon</w>\": 42846,\n  \"alone</w>\": 4702,\n  \"along\": 8300,\n  \"along</w>\": 2528,\n  \"alongside</w>\": 8646,\n  \"alonso</w>\": 25704,\n  \"aloo</w>\": 46187,\n  \"alore</w>\": 14323,\n  \"alot</w>\": 16945,\n  \"alou\": 43180,\n  \"aloud</w>\": 30028,\n  \"alove\": 46669,\n  \"alove</w>\": 37045,\n  \"alp\": 32020,\n  \"alp</w>\": 39342,\n  \"alpac\": 30128,\n  \"alpaca</w>\": 42561,\n  \"alph\": 6720,\n  \"alpha\": 11807,\n  \"alpha</w>\": 8624,\n  \"alphabe\": 45796,\n  \"alphabet</w>\": 22335,\n  \"alphon\": 37865,\n  \"alpine</w>\": 17055,\n  \"alps</w>\": 18191,\n  \"already</w>\": 2426,\n  \"alright</w>\": 10866,\n  \"als\": 23982,\n  \"als</w>\": 938,\n  \"alsace</w>\": 49388,\n  \"also</w>\": 1446,\n  \"alt\": 9995,\n  \"alt</w>\": 10006,\n  \"alta\": 24470,\n  \"alta</w>\": 25378,\n  \"altaf</w>\": 47342,\n  \"altam\": 45624,\n  \"altar</w>\": 16385,\n  \"alter\": 4949,\n  \"alter</w>\": 21393,\n  \"altered</w>\": 25201,\n  \"altern\": 47463,\n  \"alternate</w>\": 15926,\n  \"alternati\": 16699,\n  \"alternative\": 37327,\n  \"alternative</w>\": 8248,\n  \"alternatives</w>\": 25041,\n  \"alth\": 23463,\n  \"alth</w>\": 5863,\n  \"although</w>\": 9421,\n  \"alti\": 35531,\n  \"alties</w>\": 17276,\n  \"altitude</w>\": 23241,\n  \"altman</w>\": 48100,\n  \"alto\": 35053,\n  \"alto</w>\": 17518,\n  \"altogether</w>\": 45689,\n  \"alton\": 41331,\n  \"alton</w>\": 36550,\n  \"altrin\": 38458,\n  \"altrincham</w>\": 44718,\n  \"alty</w>\": 5546,\n  \"alu\": 4776,\n  \"alu</w>\": 27991,\n  \"alum\": 5404,\n  \"alum</w>\": 10553,\n  \"alumin\": 14563,\n  \"alumini\": 22908,\n  \"aluminium</w>\": 23631,\n  \"aluminum</w>\": 15251,\n  \"alumna</w>\": 30313,\n  \"alumni</w>\": 6646,\n  \"alumnus</w>\": 23633,\n  \"alums</w>\": 30155,\n  \"alv\": 20928,\n  \"alvar\": 25196,\n  \"alvarez</w>\": 26924,\n  \"alvaro</w>\": 41941,\n  \"alves</w>\": 38547,\n  \"alvin</w>\": 27023,\n  \"alway\": 14046,\n  \"alway</w>\": 43764,\n  \"always\": 24997,\n  \"always</w>\": 1466,\n  \"alwx</w>\": 32768,\n  \"aly\": 6468,\n  \"aly</w>\": 12910,\n  \"alyn\": 49150,\n  \"alyss\": 29490,\n  \"alyssa</w>\": 18898,\n  \"alz\": 12936,\n  \"alz</w>\": 41128,\n  \"alzheim\": 15212,\n  \"alzheimer</w>\": 21151,\n  \"alzheimers</w>\": 34592,\n  \"am\": 548,\n  \"am</w>\": 687,\n  \"ama\": 18206,\n  \"ama</w>\": 1696,\n  \"amad\": 45095,\n  \"amade\": 37366,\n  \"amag\": 32049,\n  \"amal\": 15315,\n  \"amal</w>\": 36753,\n  \"aman\": 19890,\n  \"aman</w>\": 10110,\n  \"amand\": 14560,\n  \"amanda</w>\": 10036,\n  \"amar\": 6424,\n  \"amar</w>\": 19607,\n  \"amara</w>\": 48522,\n  \"amari\": 42565,\n  \"amarillo</w>\": 40449,\n  \"amarine</w>\": 45591,\n  \"amarketing</w>\": 30788,\n  \"amas\": 22716,\n  \"amas</w>\": 15667,\n  \"amat\": 38664,\n  \"amat</w>\": 25455,\n  \"amate\": 12453,\n  \"amateur</w>\": 14287,\n  \"amaya</w>\": 47210,\n  \"amaz\": 1185,\n  \"amaze</w>\": 24846,\n  \"amazed</w>\": 18944,\n  \"amazing\": 15949,\n  \"amazing</w>\": 1370,\n  \"amazingly</w>\": 20368,\n  \"amazon\": 13630,\n  \"amazon</w>\": 4140,\n  \"amb\": 9042,\n  \"amb</w>\": 16853,\n  \"amba</w>\": 27003,\n  \"ambani</w>\": 45967,\n  \"ambas\": 5634,\n  \"ambassad\": 5758,\n  \"ambassador</w>\": 6795,\n  \"ambassadors</w>\": 16832,\n  \"ambed\": 42089,\n  \"ambedkar</w>\": 48131,\n  \"amber\": 18292,\n  \"amber</w>\": 9986,\n  \"ambi\": 11844,\n  \"ambient</w>\": 23447,\n  \"ambigu\": 35702,\n  \"ambition</w>\": 20673,\n  \"ambitions</w>\": 34152,\n  \"ambitious</w>\": 18666,\n  \"ambro\": 17585,\n  \"ambrose</w>\": 24253,\n  \"ambu\": 34423,\n  \"ambul\": 13944,\n  \"ambulance</w>\": 15555,\n  \"ambush</w>\": 40725,\n  \"amc\": 24942,\n  \"amc</w>\": 16921,\n  \"amd</w>\": 20845,\n  \"ame\": 3995,\n  \"ame</w>\": 780,\n  \"amed</w>\": 5660,\n  \"ameen</w>\": 24229,\n  \"amel\": 31988,\n  \"amel</w>\": 10960,\n  \"ameli\": 21599,\n  \"amelia</w>\": 21433,\n  \"amell</w>\": 48198,\n  \"amen\": 18716,\n  \"amen</w>\": 12335,\n  \"amend\": 12425,\n  \"amendment</w>\": 15019,\n  \"amendments</w>\": 40901,\n  \"amenities</w>\": 30096,\n  \"ament</w>\": 27528,\n  \"amer\": 17081,\n  \"amer</w>\": 16147,\n  \"ameri\": 40422,\n  \"americ\": 1283,\n  \"america</w>\": 2224,\n  \"americafirst</w>\": 43216,\n  \"american\": 8746,\n  \"american</w>\": 2151,\n  \"americana</w>\": 26221,\n  \"americanair</w>\": 42538,\n  \"americani\": 39726,\n  \"americans</w>\": 6676,\n  \"americas\": 33343,\n  \"americas</w>\": 18142,\n  \"ames</w>\": 5469,\n  \"ameter</w>\": 23393,\n  \"amethy\": 30291,\n  \"amethyst</w>\": 31485,\n  \"amex</w>\": 46390,\n  \"amg</w>\": 21324,\n  \"amher\": 32311,\n  \"amherst</w>\": 39065,\n  \"ami\": 6100,\n  \"ami</w>\": 3065,\n  \"amic\": 25824,\n  \"amic</w>\": 21383,\n  \"amid\": 18908,\n  \"amid</w>\": 11953,\n  \"amide</w>\": 30952,\n  \"amidst</w>\": 25172,\n  \"amie</w>\": 36901,\n  \"amig\": 40294,\n  \"amiga</w>\": 35329,\n  \"amigo</w>\": 44991,\n  \"amigos</w>\": 28176,\n  \"amii\": 35462,\n  \"amiibo</w>\": 38871,\n  \"amily</w>\": 36732,\n  \"amin\": 14337,\n  \"amin</w>\": 20235,\n  \"amina</w>\": 47531,\n  \"amination</w>\": 30355,\n  \"amine</w>\": 35823,\n  \"aming</w>\": 3507,\n  \"amino</w>\": 33464,\n  \"amir\": 26029,\n  \"amir</w>\": 21973,\n  \"amis</w>\": 29829,\n  \"amish</w>\": 24958,\n  \"amit\": 15083,\n  \"amit</w>\": 25255,\n  \"amitabh</w>\": 48124,\n  \"amitshah</w>\": 32374,\n  \"aml</w>\": 43185,\n  \"amma</w>\": 29786,\n  \"amman</w>\": 29243,\n  \"ammo</w>\": 33474,\n  \"ammunition</w>\": 35060,\n  \"amn</w>\": 24073,\n  \"amne\": 14596,\n  \"amnesia</w>\": 41741,\n  \"amnesty\": 46330,\n  \"amnesty</w>\": 21177,\n  \"amo\": 4833,\n  \"amo</w>\": 11156,\n  \"amodi</w>\": 9826,\n  \"amon\": 17492,\n  \"amon</w>\": 24046,\n  \"among\": 12310,\n  \"among</w>\": 4265,\n  \"amongst</w>\": 12520,\n  \"amoo</w>\": 26977,\n  \"amor\": 19977,\n  \"amor</w>\": 15973,\n  \"amore\": 38937,\n  \"amore</w>\": 22691,\n  \"amores</w>\": 36338,\n  \"amos</w>\": 18133,\n  \"amoto</w>\": 25492,\n  \"amount</w>\": 6403,\n  \"amounts</w>\": 16747,\n  \"amour</w>\": 29908,\n  \"amovie</w>\": 41062,\n  \"amp\": 3521,\n  \"amp</w>\": 6259,\n  \"amped</w>\": 22640,\n  \"amphi\": 16379,\n  \"amphibious</w>\": 45206,\n  \"amphitheater</w>\": 41285,\n  \"amphitheatre</w>\": 44039,\n  \"ample</w>\": 34162,\n  \"amples</w>\": 14536,\n  \"ampli\": 15647,\n  \"amplifier</w>\": 31743,\n  \"amplify</w>\": 45308,\n  \"amps</w>\": 19252,\n  \"ampton\": 29410,\n  \"ampton</w>\": 9347,\n  \"amr</w>\": 30916,\n  \"amreading</w>\": 16546,\n  \"amrit\": 33849,\n  \"ams</w>\": 1396,\n  \"amster\": 9110,\n  \"amsterdam</w>\": 9441,\n  \"amtrak</w>\": 27855,\n  \"amu\": 11347,\n  \"amu</w>\": 32336,\n  \"amur\": 35014,\n  \"amura</w>\": 35487,\n  \"amus</w>\": 36269,\n  \"amuse\": 21421,\n  \"amuse</w>\": 44367,\n  \"amused</w>\": 30212,\n  \"amusement</w>\": 32570,\n  \"amusic</w>\": 20266,\n  \"amusing</w>\": 31789,\n  \"amwriting</w>\": 9660,\n  \"amy\": 10547,\n  \"amy</w>\": 5187,\n  \"an\": 514,\n  \"an</w>\": 550,\n  \"ana\": 6588,\n  \"ana</w>\": 1388,\n  \"anab\": 34742,\n  \"anada</w>\": 27948,\n  \"anag\": 12115,\n  \"anagh</w>\": 40774,\n  \"anaheim</w>\": 23728,\n  \"anak\": 34814,\n  \"anak</w>\": 38658,\n  \"anal\": 2785,\n  \"analo\": 34179,\n  \"analog</w>\": 19963,\n  \"analogue</w>\": 46031,\n  \"analy\": 4611,\n  \"analyse</w>\": 47246,\n  \"analyses</w>\": 39695,\n  \"analysis</w>\": 5296,\n  \"analyst</w>\": 14198,\n  \"analysts</w>\": 28075,\n  \"analytical</w>\": 34550,\n  \"analytics</w>\": 8558,\n  \"analyze</w>\": 28519,\n  \"analyzing</w>\": 32107,\n  \"anam\": 29525,\n  \"anan\": 37215,\n  \"anand\": 25073,\n  \"anand</w>\": 22083,\n  \"anap\": 41566,\n  \"anarch\": 46405,\n  \"anarchi\": 39879,\n  \"anarchy</w>\": 27707,\n  \"anas\": 31382,\n  \"anas</w>\": 12633,\n  \"anast\": 48902,\n  \"anasta\": 22915,\n  \"anastasi\": 36534,\n  \"anastasia</w>\": 37975,\n  \"anat\": 10045,\n  \"anath</w>\": 31277,\n  \"anatom\": 33759,\n  \"anatomy</w>\": 15376,\n  \"anc\": 1124,\n  \"anc</w>\": 17758,\n  \"anca</w>\": 14583,\n  \"ance\": 7165,\n  \"ance</w>\": 884,\n  \"anced</w>\": 5071,\n  \"ancer</w>\": 17415,\n  \"ancers</w>\": 37296,\n  \"ances</w>\": 3515,\n  \"ancestor</w>\": 43904,\n  \"ancestors</w>\": 24405,\n  \"ancestral</w>\": 41615,\n  \"ancestry</w>\": 30922,\n  \"anch\": 9489,\n  \"anche</w>\": 34679,\n  \"ancho\": 26610,\n  \"anchor\": 20030,\n  \"anchor</w>\": 13201,\n  \"anchorage</w>\": 31950,\n  \"anchored</w>\": 45926,\n  \"anchors</w>\": 37830,\n  \"anci\": 4192,\n  \"ancient\": 31495,\n  \"ancient</w>\": 5810,\n  \"ancies</w>\": 21647,\n  \"ancing</w>\": 7797,\n  \"anco</w>\": 15459,\n  \"ancy\": 16282,\n  \"ancy</w>\": 3633,\n  \"and\": 672,\n  \"and</w>\": 537,\n  \"anda</w>\": 2911,\n  \"andalu\": 31443,\n  \"andco</w>\": 36302,\n  \"ande\": 26889,\n  \"ande</w>\": 30354,\n  \"ander\": 3740,\n  \"ander</w>\": 3935,\n  \"anders</w>\": 10880,\n  \"andersen</w>\": 32661,\n  \"anderson\": 26683,\n  \"anderson</w>\": 6510,\n  \"andes</w>\": 24052,\n  \"andfriends</w>\": 36871,\n  \"andhi</w>\": 21617,\n  \"andhra</w>\": 32452,\n  \"andi\": 28870,\n  \"andi</w>\": 14354,\n  \"andie</w>\": 46318,\n  \"andme</w>\": 42831,\n  \"ando\": 35950,\n  \"ando</w>\": 5986,\n  \"andolan</w>\": 48965,\n  \"andon</w>\": 36488,\n  \"andor\": 45243,\n  \"andover</w>\": 44177,\n  \"andr\": 22661,\n  \"andra\": 46795,\n  \"andra</w>\": 21730,\n  \"andre\": 2657,\n  \"andre</w>\": 9400,\n  \"andrea</w>\": 10895,\n  \"andreas</w>\": 20444,\n  \"andrei</w>\": 42137,\n  \"andres</w>\": 25197,\n  \"andretti</w>\": 44291,\n  \"andrew\": 11717,\n  \"andrew</w>\": 4847,\n  \"andrews</w>\": 14506,\n  \"andri\": 37208,\n  \"andro\": 4417,\n  \"andro</w>\": 17980,\n  \"android\": 24284,\n  \"android</w>\": 5191,\n  \"androidgames</w>\": 46572,\n  \"andromeda</w>\": 42942,\n  \"andrÃ©</w>\": 35609,\n  \"ands</w>\": 32257,\n  \"andthe\": 22111,\n  \"andu\": 44200,\n  \"andum</w>\": 47266,\n  \"andy\": 9447,\n  \"andy</w>\": 2888,\n  \"ane\": 5846,\n  \"ane</w>\": 3051,\n  \"anec\": 33965,\n  \"anem\": 41395,\n  \"anemone</w>\": 49019,\n  \"aneous</w>\": 48273,\n  \"anes</w>\": 15381,\n  \"anese</w>\": 48778,\n  \"anesthe\": 30622,\n  \"anesthesia</w>\": 43353,\n  \"anew\": 39084,\n  \"anew</w>\": 47341,\n  \"anews</w>\": 20919,\n  \"aney</w>\": 22387,\n  \"anfield</w>\": 26993,\n  \"ang\": 883,\n  \"ang</w>\": 2704,\n  \"anga</w>\": 11641,\n  \"angames</w>\": 43178,\n  \"angan</w>\": 28264,\n  \"angas</w>\": 46180,\n  \"ange\": 2960,\n  \"ange</w>\": 3039,\n  \"angel\": 5029,\n  \"angel</w>\": 5130,\n  \"angela</w>\": 12354,\n  \"angeles</w>\": 7382,\n  \"angeli\": 15265,\n  \"angelic</w>\": 41038,\n  \"angelica</w>\": 38582,\n  \"angelina</w>\": 28890,\n  \"angelo</w>\": 14342,\n  \"angelou</w>\": 41328,\n  \"angels</w>\": 7809,\n  \"anger\": 32737,\n  \"anger</w>\": 6788,\n  \"angerous</w>\": 39716,\n  \"angers</w>\": 29756,\n  \"angh\": 34030,\n  \"angi\": 28003,\n  \"angi</w>\": 24301,\n  \"angie</w>\": 18859,\n  \"angle\": 21749,\n  \"angle</w>\": 6946,\n  \"angled</w>\": 32322,\n  \"angler</w>\": 22284,\n  \"anglers</w>\": 41608,\n  \"angles</w>\": 18627,\n  \"anglesey</w>\": 31850,\n  \"anglia</w>\": 32076,\n  \"anglic\": 28322,\n  \"anglican</w>\": 33284,\n  \"angling</w>\": 36824,\n  \"anglo\": 39515,\n  \"anglo</w>\": 30408,\n  \"ango</w>\": 19090,\n  \"angola</w>\": 36636,\n  \"angor</w>\": 41740,\n  \"angp</w>\": 19992,\n  \"angry\": 33910,\n  \"angry</w>\": 9054,\n  \"angs</w>\": 18441,\n  \"angst</w>\": 41714,\n  \"angu\": 11209,\n  \"angular\": 43584,\n  \"angular</w>\": 24981,\n  \"angularjs</w>\": 48608,\n  \"angus</w>\": 19688,\n  \"ani\": 1326,\n  \"ani</w>\": 3624,\n  \"ania</w>\": 9866,\n  \"anian</w>\": 9945,\n  \"anians</w>\": 39393,\n  \"anic</w>\": 23113,\n  \"anie\": 26697,\n  \"anie</w>\": 7671,\n  \"anil\": 28589,\n  \"anil</w>\": 34619,\n  \"anim\": 2190,\n  \"animal\": 10697,\n  \"animal</w>\": 4668,\n  \"animalrights</w>\": 42859,\n  \"animals</w>\": 4995,\n  \"animate</w>\": 40076,\n  \"animated</w>\": 13360,\n  \"animation</w>\": 10344,\n  \"animations</w>\": 42870,\n  \"animator</w>\": 42591,\n  \"anime\": 23314,\n  \"anime</w>\": 6469,\n  \"anin</w>\": 45735,\n  \"aning</w>\": 30972,\n  \"anir\": 27089,\n  \"anirud\": 35278,\n  \"anirudhofficial</w>\": 45917,\n  \"anis\": 40986,\n  \"anis</w>\": 47556,\n  \"anism</w>\": 20947,\n  \"anist</w>\": 16729,\n  \"anistan</w>\": 9727,\n  \"aniston</w>\": 47344,\n  \"anit\": 23683,\n  \"anita</w>\": 18544,\n  \"anium</w>\": 14794,\n  \"anj\": 22443,\n  \"anja</w>\": 43440,\n  \"anjali</w>\": 38834,\n  \"anjo</w>\": 47353,\n  \"ank\": 13339,\n  \"ank</w>\": 10029,\n  \"anka</w>\": 45324,\n  \"ankara</w>\": 34309,\n  \"ankle</w>\": 14777,\n  \"ankles</w>\": 48688,\n  \"ann\": 850,\n  \"ann</w>\": 5424,\n  \"anna\": 13821,\n  \"anna</w>\": 2160,\n  \"annab\": 22336,\n  \"annabelle</w>\": 47661,\n  \"annah\": 39166,\n  \"annah</w>\": 14327,\n  \"annak\": 41720,\n  \"annan</w>\": 32166,\n  \"annapolis</w>\": 34491,\n  \"annas\": 48467,\n  \"anne\": 9139,\n  \"anne</w>\": 4083,\n  \"anned</w>\": 27352,\n  \"anner</w>\": 12642,\n  \"annes</w>\": 24343,\n  \"annette</w>\": 36821,\n  \"annex\": 42958,\n  \"annex</w>\": 46389,\n  \"anni\": 2438,\n  \"anni</w>\": 13728,\n  \"annie\": 37270,\n  \"annie</w>\": 12173,\n  \"annies</w>\": 43184,\n  \"annihil\": 32734,\n  \"annis</w>\": 24742,\n  \"anniv</w>\": 31399,\n  \"anniver\": 29671,\n  \"annivers\": 42836,\n  \"anniversaire</w>\": 30882,\n  \"anniversary</w>\": 3048,\n  \"anno\": 9901,\n  \"anno</w>\": 26871,\n  \"annon</w>\": 26385,\n  \"annot\": 30411,\n  \"announ\": 1806,\n  \"announce</w>\": 3682,\n  \"announced</w>\": 4103,\n  \"announcement</w>\": 6932,\n  \"announcements</w>\": 23735,\n  \"announcer</w>\": 33626,\n  \"announces</w>\": 6500,\n  \"announcing</w>\": 11593,\n  \"annoy</w>\": 45138,\n  \"annoyed</w>\": 29863,\n  \"annoying</w>\": 15248,\n  \"annu\": 21698,\n  \"annual</w>\": 2906,\n  \"annually</w>\": 23703,\n  \"anny\": 34313,\n  \"anny</w>\": 5291,\n  \"ano\": 5617,\n  \"ano</w>\": 2658,\n  \"anom\": 21612,\n  \"anomaly</w>\": 46811,\n  \"anon\": 47079,\n  \"anon</w>\": 13667,\n  \"anonym\": 38605,\n  \"anonymous</w>\": 15036,\n  \"anoo\": 25690,\n  \"anor\": 13243,\n  \"anor</w>\": 16596,\n  \"anos</w>\": 20132,\n  \"another\": 29274,\n  \"another</w>\": 1380,\n  \"anova</w>\": 24116,\n  \"ans\": 24586,\n  \"ans</w>\": 885,\n  \"ansari</w>\": 40748,\n  \"ansel\": 40356,\n  \"answ\": 3369,\n  \"answe\": 14391,\n  \"answer</w>\": 4518,\n  \"answered</w>\": 14499,\n  \"answering</w>\": 18280,\n  \"answers</w>\": 8692,\n  \"ant\": 1103,\n  \"ant</w>\": 773,\n  \"anta</w>\": 3023,\n  \"antag\": 41745,\n  \"antal\": 39355,\n  \"antalya</w>\": 47440,\n  \"antan\": 32899,\n  \"antarc\": 21338,\n  \"antarctic</w>\": 27077,\n  \"antarctica</w>\": 22587,\n  \"ante\": 19311,\n  \"ante</w>\": 9769,\n  \"antebellum</w>\": 41683,\n  \"antelope</w>\": 39177,\n  \"anten\": 35517,\n  \"antenna</w>\": 26370,\n  \"anter\": 46508,\n  \"antes</w>\": 14927,\n  \"antgrasso</w>\": 39074,\n  \"anth\": 3737,\n  \"anth</w>\": 29741,\n  \"antha</w>\": 47981,\n  \"anthe\": 34167,\n  \"anthem</w>\": 12504,\n  \"anthi</w>\": 45261,\n  \"anthology</w>\": 21009,\n  \"anthony\": 17477,\n  \"anthony</w>\": 6113,\n  \"anthro\": 10019,\n  \"anthropo\": 18538,\n  \"anthropology</w>\": 32407,\n  \"anthus</w>\": 37639,\n  \"anti\": 3120,\n  \"anti</w>\": 3564,\n  \"antibio\": 18954,\n  \"antibiotic</w>\": 34387,\n  \"antibiotics</w>\": 29499,\n  \"antibody</w>\": 49018,\n  \"antic\": 8260,\n  \"anticip\": 11435,\n  \"anticipate</w>\": 38280,\n  \"anticipated</w>\": 18605,\n  \"anticipating</w>\": 48067,\n  \"anticipation</w>\": 26983,\n  \"antics</w>\": 37126,\n  \"antidote</w>\": 45476,\n  \"antifa</w>\": 35926,\n  \"antigua</w>\": 39910,\n  \"antine</w>\": 17641,\n  \"antino</w>\": 27818,\n  \"antioxid\": 23010,\n  \"antioxidant</w>\": 37452,\n  \"antioxidants</w>\": 34208,\n  \"antiqu\": 21745,\n  \"antique\": 46517,\n  \"antique</w>\": 9060,\n  \"antiques</w>\": 17365,\n  \"antis</w>\": 19748,\n  \"antisemitism</w>\": 36630,\n  \"antit\": 37833,\n  \"antitrust</w>\": 49343,\n  \"antlers</w>\": 47720,\n  \"antly</w>\": 5265,\n  \"anto\": 16826,\n  \"anto</w>\": 24486,\n  \"antoine</w>\": 25188,\n  \"anton\": 5497,\n  \"anton</w>\": 19644,\n  \"antoni\": 39958,\n  \"antonio\": 30497,\n  \"antonio</w>\": 7842,\n  \"antony</w>\": 30707,\n  \"antrim</w>\": 40252,\n  \"ants</w>\": 1589,\n  \"antv</w>\": 47520,\n  \"antw\": 44460,\n  \"antwer\": 26970,\n  \"antwerp</w>\": 33797,\n  \"antz</w>\": 25684,\n  \"anu\": 8537,\n  \"anu</w>\": 17152,\n  \"anup\": 29617,\n  \"anus</w>\": 27084,\n  \"anush\": 22765,\n  \"anushka\": 42080,\n  \"anushka</w>\": 39822,\n  \"anushkasharma</w>\": 44203,\n  \"anwar</w>\": 34261,\n  \"anxi\": 9021,\n  \"anxiety</w>\": 11103,\n  \"anxious</w>\": 27793,\n  \"any\": 1307,\n  \"any</w>\": 1504,\n  \"anya</w>\": 11173,\n  \"anybody</w>\": 10071,\n  \"anyi</w>\": 41632,\n  \"anymore</w>\": 7372,\n  \"anyone</w>\": 2302,\n  \"anything</w>\": 3582,\n  \"anytime</w>\": 13924,\n  \"anyway</w>\": 8931,\n  \"anyways</w>\": 19778,\n  \"anywhere</w>\": 8863,\n  \"anz\": 14445,\n  \"anz</w>\": 19425,\n  \"anza</w>\": 14669,\n  \"anzac</w>\": 31977,\n  \"ao\": 7313,\n  \"ao</w>\": 5703,\n  \"aoa</w>\": 47119,\n  \"aoc</w>\": 31918,\n  \"aofficial</w>\": 30840,\n  \"aoki</w>\": 33602,\n  \"aol</w>\": 40643,\n  \"aon\": 30928,\n  \"aon</w>\": 48476,\n  \"aor\": 32044,\n  \"aos</w>\": 46860,\n  \"ap\": 688,\n  \"ap</w>\": 2728,\n  \"apa\": 36954,\n  \"apa</w>\": 13537,\n  \"apac</w>\": 34320,\n  \"apache</w>\": 23921,\n  \"apal\": 38017,\n  \"apan</w>\": 36562,\n  \"apar\": 9161,\n  \"apark</w>\": 32528,\n  \"apart\": 6474,\n  \"apart</w>\": 7803,\n  \"aparthe\": 25121,\n  \"apartheid</w>\": 26597,\n  \"apartment</w>\": 8285,\n  \"apartments</w>\": 15791,\n  \"aparty</w>\": 26767,\n  \"apat\": 31755,\n  \"apathy</w>\": 18145,\n  \"apc</w>\": 20300,\n  \"apd</w>\": 44563,\n  \"ape\": 6098,\n  \"ape</w>\": 2609,\n  \"apec</w>\": 47530,\n  \"aper\": 13681,\n  \"aper</w>\": 5858,\n  \"apers</w>\": 15846,\n  \"apes</w>\": 9550,\n  \"apeu\": 19040,\n  \"apex\": 41935,\n  \"apex</w>\": 23712,\n  \"aph\": 16341,\n  \"aph</w>\": 29491,\n  \"apha</w>\": 47104,\n  \"apho\": 21758,\n  \"aphra\": 44147,\n  \"api\": 23342,\n  \"api</w>\": 14674,\n  \"apia</w>\": 44259,\n  \"apic\": 40679,\n  \"aping</w>\": 18456,\n  \"apink</w>\": 35725,\n  \"apis</w>\": 37575,\n  \"apk</w>\": 27648,\n  \"apo\": 4089,\n  \"apo</w>\": 19758,\n  \"apocaly\": 13932,\n  \"apocalypse</w>\": 17571,\n  \"apocalyptic</w>\": 35675,\n  \"apol\": 5023,\n  \"apolice</w>\": 45663,\n  \"apolis</w>\": 9598,\n  \"apollo\": 48213,\n  \"apollo</w>\": 11554,\n  \"apolo\": 31094,\n  \"apolog\": 25530,\n  \"apologe\": 42908,\n  \"apologi\": 14977,\n  \"apologies</w>\": 21959,\n  \"apologise</w>\": 39608,\n  \"apologize</w>\": 22879,\n  \"apologizes</w>\": 35298,\n  \"apology</w>\": 20768,\n  \"apor\": 21871,\n  \"apore</w>\": 6679,\n  \"apost\": 20309,\n  \"apostle</w>\": 33051,\n  \"apostles</w>\": 48457,\n  \"app\": 882,\n  \"app</w>\": 2231,\n  \"appa\": 4884,\n  \"appa</w>\": 13110,\n  \"appalach\": 30523,\n  \"appalachian</w>\": 36806,\n  \"appalling</w>\": 44797,\n  \"appar\": 26698,\n  \"apparatus</w>\": 37716,\n  \"apparel</w>\": 13972,\n  \"apparent</w>\": 23963,\n  \"apparently</w>\": 5287,\n  \"appe\": 3748,\n  \"appe</w>\": 45949,\n  \"appeal</w>\": 9625,\n  \"appealing</w>\": 25909,\n  \"appeals</w>\": 22447,\n  \"appear\": 5544,\n  \"appear</w>\": 9308,\n  \"appearance</w>\": 7238,\n  \"appearances</w>\": 17214,\n  \"appeared</w>\": 11561,\n  \"appearing</w>\": 18759,\n  \"appears</w>\": 8743,\n  \"appell\": 43833,\n  \"appen\": 37201,\n  \"appen</w>\": 26589,\n  \"apper</w>\": 18780,\n  \"appet\": 21686,\n  \"appeti\": 24179,\n  \"appetite</w>\": 24481,\n  \"appetizer</w>\": 36065,\n  \"applau\": 24713,\n  \"applaud</w>\": 42152,\n  \"applause</w>\": 22650,\n  \"apple\": 8629,\n  \"apple</w>\": 3055,\n  \"applemusic</w>\": 21390,\n  \"apples</w>\": 14032,\n  \"appleton</w>\": 45250,\n  \"appli\": 15495,\n  \"appliance</w>\": 33677,\n  \"appliances</w>\": 22134,\n  \"applic\": 4235,\n  \"applicable</w>\": 37927,\n  \"applicants</w>\": 28035,\n  \"application</w>\": 7241,\n  \"applications</w>\": 7341,\n  \"applied</w>\": 12636,\n  \"applies</w>\": 24910,\n  \"apply</w>\": 4356,\n  \"applying</w>\": 17965,\n  \"appo\": 5433,\n  \"appoint</w>\": 36190,\n  \"appointed</w>\": 11087,\n  \"appointment</w>\": 10890,\n  \"appointments</w>\": 23439,\n  \"appoints</w>\": 25132,\n  \"apprais\": 36972,\n  \"appraisal</w>\": 46108,\n  \"appreci\": 3474,\n  \"appreciate</w>\": 6263,\n  \"appreciated</w>\": 9264,\n  \"appreciates</w>\": 36573,\n  \"appreciating</w>\": 39352,\n  \"appreciation</w>\": 9212,\n  \"appreciationday</w>\": 37438,\n  \"appreciative</w>\": 45074,\n  \"appren\": 10582,\n  \"apprentic\": 15662,\n  \"apprentice\": 19122,\n  \"apprentice</w>\": 17985,\n  \"apprentices</w>\": 38252,\n  \"apprenticeship</w>\": 26939,\n  \"apprenticeships</w>\": 35425,\n  \"appro\": 2398,\n  \"approach\": 7781,\n  \"approach</w>\": 6241,\n  \"approached</w>\": 36499,\n  \"approaches</w>\": 14962,\n  \"approaching</w>\": 12164,\n  \"appropri\": 8446,\n  \"appropriate</w>\": 10768,\n  \"appropriately</w>\": 30383,\n  \"appropriation</w>\": 49110,\n  \"approval</w>\": 13549,\n  \"approve</w>\": 19064,\n  \"approved</w>\": 9412,\n  \"approves</w>\": 18107,\n  \"approx</w>\": 18266,\n  \"approxim\": 14201,\n  \"approximately</w>\": 16128,\n  \"apps</w>\": 7020,\n  \"appstore</w>\": 31377,\n  \"appt</w>\": 48112,\n  \"appy</w>\": 34420,\n  \"apr\": 39396,\n  \"apr</w>\": 11177,\n  \"apra\": 37027,\n  \"apric\": 25923,\n  \"apricot</w>\": 30815,\n  \"april\": 23548,\n  \"april</w>\": 2484,\n  \"apro\": 42712,\n  \"apro</w>\": 49051,\n  \"apron</w>\": 29502,\n  \"aps</w>\": 8868,\n  \"apse</w>\": 31843,\n  \"apt</w>\": 17921,\n  \"aptly</w>\": 47313,\n  \"apu\": 22166,\n  \"apur\": 36900,\n  \"apur</w>\": 45193,\n  \"aq\": 14018,\n  \"aq</w>\": 26862,\n  \"aqu\": 4458,\n  \"aqua</w>\": 18613,\n  \"aquaculture</w>\": 41885,\n  \"aquaman</w>\": 35098,\n  \"aquari\": 37605,\n  \"aquarium</w>\": 16814,\n  \"aquarius</w>\": 38879,\n  \"aquatic</w>\": 22658,\n  \"aque\": 35927,\n  \"aque</w>\": 37268,\n  \"aqui\": 36826,\n  \"aquino</w>\": 33796,\n  \"ar\": 516,\n  \"ar</w>\": 625,\n  \"ara\": 24161,\n  \"ara</w>\": 3340,\n  \"arab\": 5405,\n  \"arab</w>\": 12028,\n  \"arabia</w>\": 11746,\n  \"arabian</w>\": 24663,\n  \"arabic</w>\": 16709,\n  \"arabs</w>\": 39155,\n  \"arac\": 47620,\n  \"arach\": 37689,\n  \"arag\": 41502,\n  \"araj</w>\": 45142,\n  \"arak\": 23416,\n  \"aram\": 19223,\n  \"aram</w>\": 21473,\n  \"arama</w>\": 49066,\n  \"aran\": 20839,\n  \"aran</w>\": 19641,\n  \"aras</w>\": 36399,\n  \"arat</w>\": 30856,\n  \"arav\": 35836,\n  \"arbit\": 20267,\n  \"arbitr\": 22702,\n  \"arbitration</w>\": 34845,\n  \"arbor\": 33516,\n  \"arbor</w>\": 24878,\n  \"arboretum</w>\": 41719,\n  \"arc\": 4997,\n  \"arc</w>\": 11592,\n  \"arca\": 25189,\n  \"arca</w>\": 37612,\n  \"arcade</w>\": 13331,\n  \"arcadia</w>\": 38372,\n  \"arch\": 2458,\n  \"arch</w>\": 8557,\n  \"archa\": 45619,\n  \"archae\": 10121,\n  \"archaeological</w>\": 26163,\n  \"archaeologists</w>\": 45035,\n  \"archaeology</w>\": 14868,\n  \"archan\": 33359,\n  \"archbishop</w>\": 23994,\n  \"arche\": 22474,\n  \"archer</w>\": 21824,\n  \"archers</w>\": 38407,\n  \"archery</w>\": 23935,\n  \"arches</w>\": 30771,\n  \"archi\": 4479,\n  \"archie</w>\": 20557,\n  \"archipel\": 39750,\n  \"archipelago</w>\": 43025,\n  \"architec\": 3359,\n  \"architect</w>\": 12192,\n  \"architects</w>\": 13290,\n  \"architectural</w>\": 15360,\n  \"architecture\": 39038,\n  \"architecture</w>\": 4920,\n  \"archival</w>\": 39249,\n  \"archive\": 42257,\n  \"archive</w>\": 10548,\n  \"archived</w>\": 42379,\n  \"archives</w>\": 9411,\n  \"archy</w>\": 15643,\n  \"arctic\": 29716,\n  \"arctic</w>\": 9138,\n  \"ard\": 3793,\n  \"ard</w>\": 746,\n  \"arden\": 44600,\n  \"arden</w>\": 27057,\n  \"ardi\": 23932,\n  \"ardi</w>\": 19837,\n  \"ardo\": 35735,\n  \"ardo</w>\": 9394,\n  \"ards</w>\": 1654,\n  \"ardu\": 20906,\n  \"arduino</w>\": 25398,\n  \"are\": 1076,\n  \"are</w>\": 631,\n  \"area</w>\": 2445,\n  \"areas</w>\": 5429,\n  \"arec\": 18136,\n  \"areclipse</w>\": 36030,\n  \"ared</w>\": 5369,\n  \"arel</w>\": 12798,\n  \"arella</w>\": 24784,\n  \"arelli</w>\": 48619,\n  \"aren\": 4033,\n  \"aren</w>\": 4318,\n  \"arena</w>\": 5463,\n  \"arenas</w>\": 47860,\n  \"arent</w>\": 37487,\n  \"arer</w>\": 14857,\n  \"arers</w>\": 33159,\n  \"ares</w>\": 12224,\n  \"arest</w>\": 11708,\n  \"aret</w>\": 22247,\n  \"areth</w>\": 47725,\n  \"aretha</w>\": 42090,\n  \"areyou\": 37607,\n  \"arez</w>\": 13108,\n  \"arg</w>\": 27285,\n  \"argent\": 7812,\n  \"argentina</w>\": 9789,\n  \"argentine</w>\": 32582,\n  \"argon\": 40737,\n  \"argos</w>\": 37443,\n  \"argu\": 7440,\n  \"arguably</w>\": 30899,\n  \"argue</w>\": 19788,\n  \"argued</w>\": 48153,\n  \"argues</w>\": 30045,\n  \"arguing</w>\": 26549,\n  \"argument</w>\": 16224,\n  \"arguments</w>\": 24693,\n  \"argus</w>\": 44300,\n  \"argy\": 21066,\n  \"argyle</w>\": 36179,\n  \"argyll</w>\": 40667,\n  \"ari\": 1221,\n  \"ari</w>\": 3681,\n  \"aria</w>\": 8883,\n  \"arial</w>\": 42431,\n  \"arian\": 29980,\n  \"arian</w>\": 6953,\n  \"ariana</w>\": 14892,\n  \"arianag\": 23025,\n  \"arianagrande</w>\": 23321,\n  \"arianism</w>\": 44351,\n  \"arians</w>\": 19104,\n  \"arias</w>\": 22567,\n  \"arie</w>\": 18774,\n  \"ariel\": 47959,\n  \"ariel</w>\": 21025,\n  \"aries</w>\": 5213,\n  \"arif</w>\": 46621,\n  \"arily</w>\": 12993,\n  \"arin\": 29564,\n  \"arin</w>\": 18612,\n  \"arina</w>\": 29271,\n  \"arine</w>\": 29586,\n  \"aring</w>\": 2142,\n  \"ario</w>\": 8862,\n  \"arios</w>\": 25392,\n  \"aris</w>\": 15227,\n  \"arise</w>\": 26490,\n  \"arist</w>\": 12110,\n  \"aristo\": 25666,\n  \"aristotle</w>\": 49156,\n  \"arities</w>\": 31069,\n  \"arity</w>\": 16608,\n  \"arium</w>\": 11809,\n  \"arius</w>\": 21482,\n  \"ariz\": 6516,\n  \"arized</w>\": 40167,\n  \"arizon\": 28936,\n  \"arizona</w>\": 7106,\n  \"arjun\": 24565,\n  \"arjun</w>\": 20477,\n  \"arjuna</w>\": 43835,\n  \"ark\": 11921,\n  \"ark</w>\": 12010,\n  \"arkansas</w>\": 12227,\n  \"arkham</w>\": 36381,\n  \"arl</w>\": 48542,\n  \"arlington\": 44940,\n  \"arlington</w>\": 17865,\n  \"arly</w>\": 3637,\n  \"arm\": 5671,\n  \"arm</w>\": 4793,\n  \"arma\": 15887,\n  \"arma</w>\": 38716,\n  \"armad\": 37897,\n  \"armada</w>\": 34938,\n  \"armagh</w>\": 44313,\n  \"armani</w>\": 31314,\n  \"armb\": 37096,\n  \"armchair</w>\": 45757,\n  \"armed\": 40471,\n  \"armed</w>\": 8202,\n  \"armen\": 13145,\n  \"armenia</w>\": 22008,\n  \"armenian</w>\": 24891,\n  \"armies</w>\": 46686,\n  \"armin\": 45481,\n  \"arming</w>\": 19766,\n  \"armist\": 38150,\n  \"armistice</w>\": 46765,\n  \"armor</w>\": 16167,\n  \"armored</w>\": 28214,\n  \"armory</w>\": 38610,\n  \"armour</w>\": 18503,\n  \"armoured</w>\": 42514,\n  \"arms</w>\": 5706,\n  \"armstrong</w>\": 15005,\n  \"army\": 13541,\n  \"army</w>\": 3133,\n  \"armys</w>\": 27311,\n  \"arn\": 9348,\n  \"arn</w>\": 37597,\n  \"arnau\": 45556,\n  \"arne</w>\": 43509,\n  \"arney</w>\": 35962,\n  \"arnold\": 49096,\n  \"arnold</w>\": 13609,\n  \"arns</w>\": 46692,\n  \"aro\": 7514,\n  \"aro</w>\": 11551,\n  \"aroa</w>\": 48209,\n  \"arom\": 16831,\n  \"aroma\": 40143,\n  \"aroma</w>\": 26390,\n  \"aromas</w>\": 47439,\n  \"aromatherapy</w>\": 42584,\n  \"aromatic</w>\": 39669,\n  \"aron\": 30855,\n  \"aron</w>\": 28926,\n  \"aroo</w>\": 47581,\n  \"arora</w>\": 31897,\n  \"arosa</w>\": 44264,\n  \"arose</w>\": 44262,\n  \"around\": 35615,\n  \"around</w>\": 1630,\n  \"arqu\": 35654,\n  \"arquitec\": 41703,\n  \"arr\": 39106,\n  \"arr</w>\": 42489,\n  \"arra\": 32918,\n  \"arra</w>\": 43827,\n  \"arrahman</w>\": 44554,\n  \"arran</w>\": 45722,\n  \"arrang\": 16711,\n  \"arrange\": 15410,\n  \"arrange</w>\": 26311,\n  \"arranged</w>\": 22451,\n  \"arrangement</w>\": 23822,\n  \"arrangements</w>\": 23792,\n  \"arranging</w>\": 35321,\n  \"array</w>\": 17293,\n  \"arre\": 4374,\n  \"arrell</w>\": 28846,\n  \"arrest</w>\": 9320,\n  \"arrested</w>\": 5845,\n  \"arresting</w>\": 43930,\n  \"arrests</w>\": 20683,\n  \"arri\": 2115,\n  \"arrival</w>\": 9073,\n  \"arrivals</w>\": 19583,\n  \"arrive</w>\": 8851,\n  \"arrived</w>\": 3514,\n  \"arrives</w>\": 9905,\n  \"arriving</w>\": 10884,\n  \"arro\": 15729,\n  \"arrog\": 26997,\n  \"arrogance</w>\": 47025,\n  \"arrogant</w>\": 40582,\n  \"arrow\": 30920,\n  \"arrow</w>\": 11149,\n  \"arrowhead</w>\": 46393,\n  \"arrows</w>\": 24768,\n  \"arroyo</w>\": 45237,\n  \"ars\": 42815,\n  \"ars</w>\": 864,\n  \"arse</w>\": 22665,\n  \"arsen\": 5330,\n  \"arsenal\": 45234,\n  \"arsenal</w>\": 6084,\n  \"arsene</w>\": 32117,\n  \"arson</w>\": 29937,\n  \"art\": 1486,\n  \"art</w>\": 794,\n  \"arta</w>\": 12031,\n  \"arte\": 13482,\n  \"arte</w>\": 12947,\n  \"artem\": 40387,\n  \"artemis</w>\": 45256,\n  \"arten</w>\": 37043,\n  \"arter\": 29449,\n  \"artery</w>\": 40062,\n  \"artes</w>\": 48629,\n  \"artforsale</w>\": 48239,\n  \"artgallery</w>\": 31982,\n  \"arth\": 7146,\n  \"arth</w>\": 20265,\n  \"arthistory</w>\": 39313,\n  \"arthr\": 20807,\n  \"arthritis</w>\": 22916,\n  \"arthro\": 43255,\n  \"arthur\": 35660,\n  \"arthur</w>\": 8550,\n  \"arti\": 1635,\n  \"arti</w>\": 34601,\n  \"artic\": 3003,\n  \"articho\": 30937,\n  \"artichoke</w>\": 39647,\n  \"article</w>\": 3550,\n  \"articles</w>\": 11939,\n  \"articul\": 40343,\n  \"articulate</w>\": 45444,\n  \"artif\": 8950,\n  \"artifact</w>\": 37718,\n  \"artifacts</w>\": 30249,\n  \"artificial\": 19357,\n  \"artificial</w>\": 12040,\n  \"artificialintelligence</w>\": 20799,\n  \"artillery</w>\": 24465,\n  \"artin\": 33168,\n  \"artin</w>\": 48540,\n  \"artis</w>\": 41794,\n  \"artisan\": 36389,\n  \"artisan</w>\": 21535,\n  \"artisans</w>\": 40140,\n  \"artist\": 14326,\n  \"artist</w>\": 2456,\n  \"artiste</w>\": 41402,\n  \"artistic</w>\": 12421,\n  \"artiston\": 48443,\n  \"artistry</w>\": 38570,\n  \"artists</w>\": 4899,\n  \"artistson\": 32127,\n  \"artistsontwitter</w>\": 39469,\n  \"artlovers</w>\": 35617,\n  \"arto\": 28464,\n  \"artof\": 31751,\n  \"artoftheday</w>\": 43990,\n  \"arton</w>\": 46744,\n  \"arts\": 22040,\n  \"arts</w>\": 3812,\n  \"artsy</w>\": 31588,\n  \"arturo</w>\": 38591,\n  \"artwit</w>\": 36713,\n  \"artwork</w>\": 4188,\n  \"artworks</w>\": 26215,\n  \"arty\": 45417,\n  \"arty</w>\": 25916,\n  \"aru\": 13757,\n  \"aru</w>\": 23907,\n  \"aruba</w>\": 40131,\n  \"arugula</w>\": 40770,\n  \"arum</w>\": 48732,\n  \"arun\": 16105,\n  \"arun</w>\": 31877,\n  \"arunach\": 47260,\n  \"arunjaitley</w>\": 44874,\n  \"arus</w>\": 22644,\n  \"arvin\": 16971,\n  \"arvind\": 21209,\n  \"arvind</w>\": 41079,\n  \"arvindkejriwal</w>\": 22971,\n  \"arvo</w>\": 45726,\n  \"arwx</w>\": 29824,\n  \"ary\": 4617,\n  \"ary</w>\": 856,\n  \"arya</w>\": 23594,\n  \"aryan</w>\": 34966,\n  \"as\": 587,\n  \"as</w>\": 601,\n  \"asa\": 39676,\n  \"asa</w>\": 11914,\n  \"asad</w>\": 42376,\n  \"asaki</w>\": 22455,\n  \"asam\": 40603,\n  \"asan\": 22379,\n  \"asan</w>\": 17841,\n  \"asana</w>\": 42363,\n  \"asant</w>\": 25536,\n  \"asants</w>\": 37766,\n  \"asap\": 24199,\n  \"asap</w>\": 10822,\n  \"asar\": 24733,\n  \"asar</w>\": 49299,\n  \"asb</w>\": 31186,\n  \"asbe\": 32113,\n  \"asbestos</w>\": 33765,\n  \"asc\": 22720,\n  \"asc</w>\": 23305,\n  \"ascen\": 20767,\n  \"ascension</w>\": 35499,\n  \"ascent</w>\": 36625,\n  \"asci\": 12753,\n  \"asco\": 25578,\n  \"asco</w>\": 17488,\n  \"ascot</w>\": 23723,\n  \"ascri\": 15506,\n  \"asd</w>\": 36988,\n  \"asda</w>\": 29391,\n  \"asdf\": 36857,\n  \"asdfghj\": 42758,\n  \"asdfghjkl</w>\": 47660,\n  \"ase\": 8083,\n  \"ase</w>\": 894,\n  \"asean</w>\": 24472,\n  \"aseball</w>\": 46903,\n  \"ased</w>\": 2134,\n  \"asen\": 41085,\n  \"aser\": 39615,\n  \"aser</w>\": 7209,\n  \"ases</w>\": 3762,\n  \"asf</w>\": 25863,\n  \"asg</w>\": 34813,\n  \"ash\": 2067,\n  \"ash</w>\": 2612,\n  \"asha\": 40572,\n  \"asha</w>\": 13472,\n  \"ashamed</w>\": 20633,\n  \"ashby</w>\": 46531,\n  \"ashe\": 48523,\n  \"ashe</w>\": 31752,\n  \"asher</w>\": 37585,\n  \"ashes</w>\": 12587,\n  \"asheville</w>\": 28897,\n  \"ashford</w>\": 37796,\n  \"ashi\": 15563,\n  \"ashi</w>\": 15934,\n  \"ashish</w>\": 33145,\n  \"ashland</w>\": 39938,\n  \"ashleigh</w>\": 49356,\n  \"ashley\": 17825,\n  \"ashley</w>\": 8957,\n  \"asho\": 20273,\n  \"ashok</w>\": 38141,\n  \"ashore</w>\": 31194,\n  \"ashram</w>\": 43445,\n  \"ashton\": 43264,\n  \"ashton</w>\": 12228,\n  \"ashtra</w>\": 18118,\n  \"asi\": 3596,\n  \"asi</w>\": 12562,\n  \"asia</w>\": 5741,\n  \"asian\": 21737,\n  \"asian</w>\": 7128,\n  \"asiangames</w>\": 49108,\n  \"asians</w>\": 36771,\n  \"asics</w>\": 31097,\n  \"aside</w>\": 13676,\n  \"asif</w>\": 37302,\n  \"asim</w>\": 46050,\n  \"asin\": 48432,\n  \"asin</w>\": 44347,\n  \"asing</w>\": 4194,\n  \"asingly</w>\": 15803,\n  \"asion</w>\": 31753,\n  \"asis</w>\": 12398,\n  \"ask\": 11027,\n  \"ask</w>\": 2765,\n  \"asked</w>\": 3993,\n  \"asking</w>\": 5914,\n  \"asks</w>\": 7953,\n  \"asl</w>\": 41650,\n  \"asleep</w>\": 10749,\n  \"asley</w>\": 28206,\n  \"asli</w>\": 44290,\n  \"asm</w>\": 13851,\n  \"asma</w>\": 38497,\n  \"asmsg</w>\": 19839,\n  \"aso\": 30343,\n  \"aso</w>\": 27932,\n  \"asober\": 43749,\n  \"asocial</w>\": 48557,\n  \"ason</w>\": 1163,\n  \"asone</w>\": 31249,\n  \"asons</w>\": 4249,\n  \"asos</w>\": 37924,\n  \"asot</w>\": 47968,\n  \"asp\": 17814,\n  \"asp</w>\": 36666,\n  \"asparag\": 20301,\n  \"asparagus</w>\": 20604,\n  \"aspe\": 10894,\n  \"aspect</w>\": 19681,\n  \"aspects</w>\": 18203,\n  \"aspen\": 35695,\n  \"aspen</w>\": 25712,\n  \"asper\": 32991,\n  \"asph\": 28019,\n  \"asphalt</w>\": 30574,\n  \"aspir\": 12669,\n  \"aspirations</w>\": 36127,\n  \"aspire</w>\": 24836,\n  \"aspiring</w>\": 21862,\n  \"asports</w>\": 43695,\n  \"asr</w>\": 48052,\n  \"asroma</w>\": 41000,\n  \"ass\": 12664,\n  \"ass</w>\": 5301,\n  \"assa</w>\": 47715,\n  \"assad</w>\": 18699,\n  \"assam</w>\": 19930,\n  \"assan\": 26352,\n  \"assange</w>\": 27565,\n  \"assas\": 9603,\n  \"assassin\": 14366,\n  \"assassin</w>\": 20029,\n  \"assassinated</w>\": 40488,\n  \"assassination</w>\": 24907,\n  \"assassins</w>\": 34918,\n  \"assassinscre\": 36428,\n  \"assassinscreed</w>\": 46082,\n  \"assau\": 7908,\n  \"assaul\": 19596,\n  \"assault</w>\": 9679,\n  \"assaulted</w>\": 30785,\n  \"assaulting</w>\": 44143,\n  \"asse\": 3166,\n  \"asse</w>\": 38600,\n  \"assel</w>\": 37582,\n  \"assemb\": 5531,\n  \"assemble</w>\": 26169,\n  \"assembled</w>\": 22627,\n  \"assemblies</w>\": 47406,\n  \"assembling</w>\": 38670,\n  \"assembly\": 34542,\n  \"assembly</w>\": 7059,\n  \"assen</w>\": 38651,\n  \"asser\": 25665,\n  \"asses</w>\": 21596,\n  \"assess\": 9209,\n  \"assess</w>\": 23211,\n  \"assessed</w>\": 44160,\n  \"assessing</w>\": 31364,\n  \"assessment</w>\": 10590,\n  \"assessments</w>\": 32753,\n  \"asset\": 48463,\n  \"asset</w>\": 13039,\n  \"assets</w>\": 13170,\n  \"assi\": 2907,\n  \"assi</w>\": 39540,\n  \"assie</w>\": 31624,\n  \"assign\": 14190,\n  \"assigned</w>\": 25767,\n  \"assignment</w>\": 17342,\n  \"assignments</w>\": 34257,\n  \"assim</w>\": 36394,\n  \"assimil\": 43467,\n  \"assist\": 26558,\n  \"assist</w>\": 10286,\n  \"assistance</w>\": 11685,\n  \"assistant</w>\": 6799,\n  \"assistants</w>\": 31054,\n  \"assisted</w>\": 18095,\n  \"assisting</w>\": 24243,\n  \"assists</w>\": 12675,\n  \"assn</w>\": 44208,\n  \"asso</w>\": 17617,\n  \"assoc</w>\": 18891,\n  \"associ\": 3566,\n  \"associate</w>\": 11777,\n  \"associated</w>\": 11164,\n  \"associates</w>\": 17358,\n  \"association</w>\": 5578,\n  \"associations</w>\": 33209,\n  \"assor\": 38604,\n  \"assorted</w>\": 36701,\n  \"assortment</w>\": 43112,\n  \"asst</w>\": 24767,\n  \"assu\": 8328,\n  \"assume</w>\": 19294,\n  \"assumed</w>\": 37661,\n  \"assuming</w>\": 29422,\n  \"assump\": 41182,\n  \"assumption</w>\": 40773,\n  \"assumptions</w>\": 45948,\n  \"assurance</w>\": 28408,\n  \"assure</w>\": 39161,\n  \"assured</w>\": 25591,\n  \"assures</w>\": 41988,\n  \"assy\": 29940,\n  \"assy</w>\": 12963,\n  \"ast\": 1761,\n  \"ast</w>\": 1242,\n  \"asta</w>\": 43269,\n  \"aste\": 25033,\n  \"aste</w>\": 25579,\n  \"aster\": 11013,\n  \"aster</w>\": 9526,\n  \"asteroid</w>\": 32253,\n  \"asters</w>\": 33139,\n  \"asth\": 16684,\n  \"asthma</w>\": 24610,\n  \"asthour</w>\": 41238,\n  \"astic</w>\": 15876,\n  \"asting</w>\": 29984,\n  \"astle</w>\": 46141,\n  \"asto\": 47275,\n  \"aston\": 24760,\n  \"aston</w>\": 13879,\n  \"astoni\": 21962,\n  \"astonishing</w>\": 27110,\n  \"astonmartin</w>\": 40760,\n  \"astor\": 26391,\n  \"astor</w>\": 47086,\n  \"astoria</w>\": 34798,\n  \"astounding</w>\": 37748,\n  \"astr\": 37609,\n  \"astra\": 47205,\n  \"astra</w>\": 36079,\n  \"astral</w>\": 45889,\n  \"astri\": 31243,\n  \"astrid</w>\": 46499,\n  \"astro\": 8563,\n  \"astro</w>\": 15318,\n  \"astrology</w>\": 28526,\n  \"astron\": 7982,\n  \"astronaut</w>\": 18376,\n  \"astronauts</w>\": 29733,\n  \"astronom\": 23264,\n  \"astronomer</w>\": 40036,\n  \"astronomers</w>\": 44268,\n  \"astronomical</w>\": 39775,\n  \"astronomy</w>\": 17472,\n  \"astrophotography</w>\": 38559,\n  \"astros</w>\": 17598,\n  \"asts</w>\": 10452,\n  \"astu\": 43137,\n  \"astur\": 45795,\n  \"asu\": 13157,\n  \"asu</w>\": 16001,\n  \"asun\": 36044,\n  \"asure</w>\": 3813,\n  \"asus</w>\": 27269,\n  \"aswell</w>\": 42978,\n  \"asx</w>\": 38906,\n  \"asy\": 8524,\n  \"asy</w>\": 2333,\n  \"asylum</w>\": 15638,\n  \"asym\": 32539,\n  \"at\": 527,\n  \"at</w>\": 536,\n  \"ata</w>\": 4236,\n  \"atable</w>\": 23909,\n  \"atal\": 24877,\n  \"atal</w>\": 24797,\n  \"atan</w>\": 33446,\n  \"atar\": 20128,\n  \"atar</w>\": 7995,\n  \"atari</w>\": 21549,\n  \"atas</w>\": 30057,\n  \"atay\": 39518,\n  \"atc</w>\": 28383,\n  \"atch</w>\": 15938,\n  \"atd</w>\": 33890,\n  \"ate\": 992,\n  \"ate</w>\": 671,\n  \"ateam</w>\": 42784,\n  \"ateau</w>\": 16359,\n  \"atec\": 37352,\n  \"atech</w>\": 31306,\n  \"ated\": 14589,\n  \"ated</w>\": 943,\n  \"atedly</w>\": 24698,\n  \"atee</w>\": 32839,\n  \"ateful</w>\": 5419,\n  \"atelier</w>\": 29932,\n  \"ately</w>\": 3862,\n  \"atem\": 17116,\n  \"aten</w>\": 47984,\n  \"atene\": 30405,\n  \"ateneo</w>\": 33904,\n  \"ater\": 18597,\n  \"ater</w>\": 5877,\n  \"ateral</w>\": 18819,\n  \"aters</w>\": 22364,\n  \"ates\": 20370,\n  \"ates</w>\": 1150,\n  \"atest</w>\": 1705,\n  \"ateur</w>\": 43677,\n  \"atf</w>\": 28013,\n  \"ath\": 1374,\n  \"ath</w>\": 1649,\n  \"atha</w>\": 22530,\n  \"atham</w>\": 23383,\n  \"athan\": 41260,\n  \"athan</w>\": 26701,\n  \"athe\": 8963,\n  \"athed</w>\": 47402,\n  \"atheism</w>\": 25823,\n  \"atheist</w>\": 22571,\n  \"atheists</w>\": 47155,\n  \"athen\": 29112,\n  \"athena</w>\": 30705,\n  \"athens</w>\": 13524,\n  \"ather\": 6171,\n  \"ather</w>\": 1817,\n  \"athered</w>\": 34091,\n  \"athers</w>\": 17266,\n  \"athi</w>\": 28918,\n  \"athing</w>\": 36069,\n  \"athle\": 3310,\n  \"athlete</w>\": 7388,\n  \"athletes</w>\": 7125,\n  \"athletic\": 33182,\n  \"athletic</w>\": 9028,\n  \"athletics</w>\": 7019,\n  \"athlon</w>\": 14670,\n  \"athome</w>\": 38217,\n  \"athon</w>\": 4951,\n  \"aths</w>\": 28835,\n  \"athy\": 34488,\n  \"athy</w>\": 13183,\n  \"ati\": 591,\n  \"ati</w>\": 6751,\n  \"atia</w>\": 10908,\n  \"atic\": 20248,\n  \"atic</w>\": 2647,\n  \"atically</w>\": 13558,\n  \"atics</w>\": 15666,\n  \"atie</w>\": 30137,\n  \"aties</w>\": 40060,\n  \"atif</w>\": 41592,\n  \"atiku</w>\": 37912,\n  \"atile</w>\": 15474,\n  \"atility</w>\": 23373,\n  \"atime</w>\": 20158,\n  \"atin\": 36903,\n  \"atin</w>\": 23047,\n  \"atine</w>\": 39741,\n  \"ating\": 25653,\n  \"ating</w>\": 1074,\n  \"atio</w>\": 35401,\n  \"ation\": 2265,\n  \"ation</w>\": 656,\n  \"ational\": 14205,\n  \"ational</w>\": 3108,\n  \"ationals</w>\": 44593,\n  \"ationday</w>\": 20082,\n  \"ations</w>\": 986,\n  \"atis\": 45456,\n  \"atis</w>\": 41142,\n  \"atism</w>\": 45638,\n  \"ative\": 18422,\n  \"ative</w>\": 1648,\n  \"atively</w>\": 11929,\n  \"atives</w>\": 5629,\n  \"ativity</w>\": 25166,\n  \"atkins</w>\": 27734,\n  \"atkinson</w>\": 28908,\n  \"atl\": 5411,\n  \"atl</w>\": 10629,\n  \"atla\": 36043,\n  \"atlan\": 6818,\n  \"atlanta\": 39964,\n  \"atlanta</w>\": 6839,\n  \"atlantic\": 28804,\n  \"atlantic</w>\": 8189,\n  \"atlantis</w>\": 27790,\n  \"atlas</w>\": 15775,\n  \"atle\": 21170,\n  \"atleast</w>\": 33231,\n  \"atleti</w>\": 46067,\n  \"atletico</w>\": 27501,\n  \"atm</w>\": 14127,\n  \"atmo\": 8271,\n  \"atmosphere</w>\": 10506,\n  \"atmospheric</w>\": 24223,\n  \"ato\": 7987,\n  \"ato</w>\": 4364,\n  \"atoday</w>\": 26799,\n  \"atom\": 22418,\n  \"atom</w>\": 24031,\n  \"atomic</w>\": 18996,\n  \"atoms</w>\": 41434,\n  \"aton\": 31525,\n  \"aton</w>\": 10012,\n  \"atop</w>\": 17455,\n  \"ator\": 10748,\n  \"ator</w>\": 1962,\n  \"atore</w>\": 28314,\n  \"atorial</w>\": 32040,\n  \"atories</w>\": 35678,\n  \"atorium</w>\": 41306,\n  \"ators</w>\": 3389,\n  \"atory</w>\": 5920,\n  \"atos</w>\": 41643,\n  \"atour</w>\": 42967,\n  \"atown</w>\": 24000,\n  \"atp\": 38105,\n  \"atp</w>\": 19817,\n  \"atr</w>\": 43247,\n  \"atra\": 20227,\n  \"atra</w>\": 14401,\n  \"atravel</w>\": 36981,\n  \"atre\": 46057,\n  \"atri\": 13882,\n  \"atri</w>\": 38889,\n  \"atric\": 32238,\n  \"atric</w>\": 13652,\n  \"atrics</w>\": 36253,\n  \"atrist</w>\": 41879,\n  \"atrium</w>\": 29725,\n  \"atrix</w>\": 43003,\n  \"atro\": 18724,\n  \"atroc\": 36197,\n  \"atrocities</w>\": 37551,\n  \"atry</w>\": 28334,\n  \"ats\": 46890,\n  \"ats</w>\": 1032,\n  \"atsu</w>\": 26531,\n  \"att\": 1017,\n  \"att</w>\": 7103,\n  \"atta\": 7282,\n  \"atta</w>\": 9146,\n  \"attach\": 43676,\n  \"attach</w>\": 35653,\n  \"attached</w>\": 11038,\n  \"attachment</w>\": 28638,\n  \"attack\": 24971,\n  \"attack</w>\": 3815,\n  \"attacked</w>\": 12366,\n  \"attacker</w>\": 39288,\n  \"attackers</w>\": 47701,\n  \"attacking</w>\": 16813,\n  \"attacks</w>\": 7321,\n  \"attain</w>\": 46459,\n  \"attar</w>\": 37110,\n  \"attemp\": 4933,\n  \"attempt</w>\": 7409,\n  \"attempted</w>\": 17408,\n  \"attempting</w>\": 18195,\n  \"attempts</w>\": 15610,\n  \"atten\": 4084,\n  \"atten</w>\": 32408,\n  \"attenborough</w>\": 45860,\n  \"attend\": 9841,\n  \"attend</w>\": 5802,\n  \"attendance</w>\": 11928,\n  \"attendant</w>\": 35424,\n  \"attended</w>\": 8140,\n  \"attendees</w>\": 14648,\n  \"attending</w>\": 6696,\n  \"attends</w>\": 22248,\n  \"attention</w>\": 4936,\n  \"atters</w>\": 30675,\n  \"atthe\": 21489,\n  \"atti\": 49265,\n  \"atti</w>\": 16235,\n  \"attic</w>\": 26766,\n  \"attire</w>\": 21222,\n  \"attitude</w>\": 10648,\n  \"attitudes</w>\": 27611,\n  \"attle\": 14685,\n  \"attle</w>\": 5030,\n  \"attn</w>\": 25677,\n  \"attor\": 8856,\n  \"attorney</w>\": 10372,\n  \"attorneys</w>\": 29113,\n  \"attrac\": 7154,\n  \"attract</w>\": 17010,\n  \"attracted</w>\": 28493,\n  \"attracting</w>\": 31909,\n  \"attraction</w>\": 16807,\n  \"attractions</w>\": 22307,\n  \"attractive</w>\": 12231,\n  \"attracts</w>\": 31024,\n  \"attribu\": 24624,\n  \"attributed</w>\": 37520,\n  \"attributes</w>\": 40763,\n  \"attu</w>\": 43173,\n  \"atty</w>\": 36705,\n  \"atu\": 15191,\n  \"atu</w>\": 24295,\n  \"atuesday</w>\": 34841,\n  \"atul\": 1744,\n  \"atul</w>\": 43948,\n  \"atum</w>\": 48295,\n  \"atur\": 14986,\n  \"aturday</w>\": 29027,\n  \"ature\": 25305,\n  \"ature</w>\": 4490,\n  \"atures</w>\": 7358,\n  \"atus</w>\": 14795,\n  \"atv</w>\": 19598,\n  \"atwood</w>\": 45680,\n  \"atwork</w>\": 39680,\n  \"atx\": 34849,\n  \"atx</w>\": 20136,\n  \"aty\": 40974,\n  \"aty</w>\": 33107,\n  \"atz</w>\": 30432,\n  \"au\": 627,\n  \"au</w>\": 2566,\n  \"aua</w>\": 45906,\n  \"aub</w>\": 45938,\n  \"auberg\": 49382,\n  \"aubre\": 25899,\n  \"aubrey</w>\": 34110,\n  \"auburn\": 42269,\n  \"auburn</w>\": 14534,\n  \"auc\": 24489,\n  \"auch</w>\": 43024,\n  \"auck\": 14588,\n  \"auckland</w>\": 16072,\n  \"auction\": 48160,\n  \"auction</w>\": 6462,\n  \"auctioned</w>\": 41073,\n  \"auctions</w>\": 24876,\n  \"aucus</w>\": 47374,\n  \"aud\": 16107,\n  \"aud</w>\": 19711,\n  \"audi\": 5091,\n  \"audi</w>\": 10277,\n  \"audible</w>\": 33227,\n  \"audience</w>\": 6863,\n  \"audiences</w>\": 22328,\n  \"audio\": 13792,\n  \"audio</w>\": 5766,\n  \"audiobook</w>\": 26282,\n  \"audit\": 12505,\n  \"audit</w>\": 17625,\n  \"auditi\": 37377,\n  \"audition</w>\": 18673,\n  \"auditions</w>\": 21134,\n  \"auditor</w>\": 38050,\n  \"auditorium</w>\": 15063,\n  \"audre\": 16075,\n  \"audrey</w>\": 18812,\n  \"audu\": 27934,\n  \"audubon</w>\": 40275,\n  \"auer</w>\": 33460,\n  \"auf</w>\": 28924,\n  \"aug\": 15397,\n  \"aug</w>\": 5720,\n  \"auga</w>\": 22797,\n  \"augh\": 28310,\n  \"augh</w>\": 14005,\n  \"augmente\": 48356,\n  \"augmented</w>\": 32708,\n  \"augu\": 2610,\n  \"august\": 24353,\n  \"august</w>\": 3171,\n  \"augusta</w>\": 26144,\n  \"augustine</w>\": 27397,\n  \"augustus</w>\": 36835,\n  \"auk</w>\": 19058,\n  \"aul\": 20695,\n  \"aul</w>\": 34391,\n  \"ault\": 47253,\n  \"ault</w>\": 10219,\n  \"aun\": 10608,\n  \"aun</w>\": 38721,\n  \"aunt</w>\": 12685,\n  \"auntie</w>\": 23783,\n  \"aunty</w>\": 29528,\n  \"aur\": 8156,\n  \"aur</w>\": 17282,\n  \"aura</w>\": 27728,\n  \"aure\": 36010,\n  \"aureli\": 35980,\n  \"auror\": 30067,\n  \"aurora</w>\": 13500,\n  \"aus\": 10624,\n  \"aus</w>\": 7630,\n  \"ausa</w>\": 37384,\n  \"ausbiz</w>\": 46543,\n  \"ausch\": 33926,\n  \"auschwitz</w>\": 36523,\n  \"ausopen</w>\": 27831,\n  \"ausp\": 35039,\n  \"auspicious</w>\": 38806,\n  \"auspol</w>\": 8241,\n  \"aussi\": 19762,\n  \"aussie\": 40230,\n  \"aussie</w>\": 14424,\n  \"aussies</w>\": 35727,\n  \"aust\": 26301,\n  \"aust</w>\": 25418,\n  \"austen</w>\": 29885,\n  \"auster\": 25030,\n  \"austerity</w>\": 26982,\n  \"austin\": 12845,\n  \"austin</w>\": 5125,\n  \"austinmahone</w>\": 34678,\n  \"austr\": 2518,\n  \"australi\": 13798,\n  \"australia</w>\": 3444,\n  \"australian\": 23630,\n  \"australian</w>\": 6258,\n  \"australians</w>\": 31488,\n  \"austri\": 8946,\n  \"austria</w>\": 11960,\n  \"austrian</w>\": 20638,\n  \"ausv\": 35206,\n  \"ausvotes</w>\": 34661,\n  \"aut</w>\": 12343,\n  \"auth\": 2381,\n  \"auth</w>\": 38247,\n  \"authent\": 18158,\n  \"authentic\": 41266,\n  \"authentic</w>\": 10369,\n  \"authentication</w>\": 39746,\n  \"authenticity</w>\": 35734,\n  \"autho\": 34552,\n  \"author\": 14447,\n  \"author</w>\": 4358,\n  \"authored</w>\": 37928,\n  \"authori\": 19207,\n  \"authorities</w>\": 12729,\n  \"authority</w>\": 10524,\n  \"authorization</w>\": 48854,\n  \"authorized</w>\": 28463,\n  \"authors</w>\": 10765,\n  \"auti\": 8200,\n  \"autism\": 36256,\n  \"autism</w>\": 11244,\n  \"autisma\": 43324,\n  \"autistic</w>\": 29360,\n  \"auto\": 3917,\n  \"auto</w>\": 5668,\n  \"autobiography</w>\": 31509,\n  \"autodesk</w>\": 40415,\n  \"autograph\": 10657,\n  \"autograph</w>\": 13722,\n  \"autographed</w>\": 16309,\n  \"autographs</w>\": 17376,\n  \"autoimmune</w>\": 45509,\n  \"autom\": 4114,\n  \"automate</w>\": 43203,\n  \"automated</w>\": 19022,\n  \"automatic</w>\": 12126,\n  \"automatically</w>\": 20725,\n  \"automation</w>\": 12328,\n  \"automobi\": 44813,\n  \"automobile</w>\": 25258,\n  \"automotive</w>\": 12607,\n  \"auton\": 13100,\n  \"autonews</w>\": 43975,\n  \"autonom\": 17870,\n  \"autonomous</w>\": 20722,\n  \"autonomy</w>\": 39223,\n  \"autopsy</w>\": 44436,\n  \"autos</w>\": 31118,\n  \"autoshow</w>\": 46788,\n  \"auts</w>\": 21140,\n  \"autu\": 5445,\n  \"autum\": 31783,\n  \"autumn\": 28940,\n  \"autumn</w>\": 6110,\n  \"autumnal</w>\": 35481,\n  \"aux\": 18154,\n  \"aux</w>\": 8909,\n  \"auxiliary</w>\": 37778,\n  \"av\": 722,\n  \"av</w>\": 8484,\n  \"ava</w>\": 12385,\n  \"avage</w>\": 31505,\n  \"avail\": 1651,\n  \"avail</w>\": 16686,\n  \"availability</w>\": 17551,\n  \"available</w>\": 1685,\n  \"aval\": 18012,\n  \"avalan\": 23970,\n  \"avalanche</w>\": 25815,\n  \"avalley</w>\": 45082,\n  \"avalon</w>\": 30436,\n  \"avan\": 27971,\n  \"avan</w>\": 33351,\n  \"avant</w>\": 24305,\n  \"avar\": 33423,\n  \"avatar</w>\": 18219,\n  \"ave\": 10062,\n  \"ave</w>\": 4860,\n  \"avec</w>\": 25828,\n  \"aved</w>\": 47918,\n  \"avel\": 46817,\n  \"avel</w>\": 48088,\n  \"aven\": 5963,\n  \"aven</w>\": 32971,\n  \"aveng\": 21935,\n  \"avenger</w>\": 24799,\n  \"avengers\": 39413,\n  \"avengers</w>\": 12016,\n  \"avengersendgame</w>\": 49342,\n  \"avent\": 22700,\n  \"avenue</w>\": 7042,\n  \"aver\": 8788,\n  \"aver</w>\": 11403,\n  \"average</w>\": 6254,\n  \"averaged</w>\": 37310,\n  \"averages</w>\": 48982,\n  \"averaging</w>\": 35266,\n  \"avery</w>\": 20313,\n  \"aves</w>\": 14023,\n  \"avfc</w>\": 21304,\n  \"avg</w>\": 19452,\n  \"avgeek</w>\": 11114,\n  \"avi\": 3324,\n  \"avi</w>\": 11297,\n  \"avia</w>\": 38710,\n  \"avian</w>\": 24115,\n  \"aviation\": 27717,\n  \"aviation</w>\": 7617,\n  \"aviator</w>\": 38921,\n  \"aviators</w>\": 48011,\n  \"avici\": 46192,\n  \"avicii</w>\": 49158,\n  \"avid</w>\": 19118,\n  \"avier</w>\": 14598,\n  \"avila</w>\": 45339,\n  \"aville</w>\": 40689,\n  \"avin\": 46204,\n  \"avis\": 45163,\n  \"avis</w>\": 19765,\n  \"aviv</w>\": 22130,\n  \"aviva</w>\": 47122,\n  \"aviz</w>\": 27607,\n  \"avl\": 44749,\n  \"avo\": 4496,\n  \"avo</w>\": 32400,\n  \"avoc\": 12291,\n  \"avocado</w>\": 14135,\n  \"avocados</w>\": 48911,\n  \"avoi\": 16797,\n  \"avoid\": 30448,\n  \"avoid</w>\": 5983,\n  \"avoidance</w>\": 47983,\n  \"avoided</w>\": 32103,\n  \"avoiding</w>\": 22086,\n  \"avoids</w>\": 48220,\n  \"avon\": 22790,\n  \"avon</w>\": 17348,\n  \"avril</w>\": 37763,\n  \"avs</w>\": 31896,\n  \"avut</w>\": 44472,\n  \"avy</w>\": 29973,\n  \"aw\": 808,\n  \"aw</w>\": 5557,\n  \"awa\": 4820,\n  \"awa</w>\": 6872,\n  \"await</w>\": 20769,\n  \"awaited</w>\": 20092,\n  \"awaiting</w>\": 14872,\n  \"awaits</w>\": 15635,\n  \"awak\": 9776,\n  \"awak</w>\": 41387,\n  \"awake</w>\": 14695,\n  \"awaken</w>\": 35412,\n  \"awakening</w>\": 17017,\n  \"awakens</w>\": 23191,\n  \"awal\": 42447,\n  \"awal</w>\": 35090,\n  \"awan\": 48869,\n  \"awan</w>\": 20420,\n  \"awar\": 5745,\n  \"award\": 36310,\n  \"award</w>\": 2047,\n  \"awarded</w>\": 7368,\n  \"awarding</w>\": 37089,\n  \"awards\": 34528,\n  \"awards</w>\": 2320,\n  \"aware\": 4427,\n  \"aware</w>\": 7196,\n  \"awareness\": 19217,\n  \"awareness</w>\": 4823,\n  \"awarenessmonth</w>\": 34278,\n  \"awarenessweek</w>\": 35294,\n  \"away\": 21088,\n  \"away</w>\": 1520,\n  \"aways</w>\": 12782,\n  \"awaz</w>\": 18586,\n  \"awd</w>\": 34846,\n  \"awe\": 1693,\n  \"awe</w>\": 14106,\n  \"aweather\": 42142,\n  \"aweather</w>\": 28681,\n  \"awec</w>\": 38916,\n  \"aweed</w>\": 29724,\n  \"awesom\": 16727,\n  \"awesome\": 30390,\n  \"awesome</w>\": 1848,\n  \"awesomeness</w>\": 22430,\n  \"awful</w>\": 13617,\n  \"awg</w>\": 46350,\n  \"awgs</w>\": 35275,\n  \"awh</w>\": 39566,\n  \"awhile</w>\": 19171,\n  \"awi</w>\": 15167,\n  \"awil\": 47271,\n  \"awilliams</w>\": 42163,\n  \"awk\": 8888,\n  \"awk</w>\": 40943,\n  \"awkward\": 42337,\n  \"awkward</w>\": 10304,\n  \"awn</w>\": 46222,\n  \"awp</w>\": 43300,\n  \"aws</w>\": 19658,\n  \"awsome</w>\": 47196,\n  \"awson</w>\": 36286,\n  \"aww</w>\": 11568,\n  \"awww</w>\": 15634,\n  \"awwww</w>\": 26460,\n  \"awx</w>\": 28385,\n  \"ax\": 3165,\n  \"ax</w>\": 9203,\n  \"axe</w>\": 19861,\n  \"axel\": 47889,\n  \"axel</w>\": 32131,\n  \"axes</w>\": 45970,\n  \"axi\": 30672,\n  \"axial</w>\": 46550,\n  \"axis</w>\": 19614,\n  \"axle</w>\": 39003,\n  \"axx\": 47411,\n  \"ay\": 658,\n  \"ay</w>\": 551,\n  \"aya</w>\": 5917,\n  \"ayala</w>\": 39827,\n  \"ayama</w>\": 41194,\n  \"ayan\": 37781,\n  \"ayan</w>\": 16269,\n  \"ayana</w>\": 37400,\n  \"ayas</w>\": 40904,\n  \"ayat\": 44902,\n  \"ayat</w>\": 35720,\n  \"aye\": 21661,\n  \"aye</w>\": 12446,\n  \"ayer</w>\": 24852,\n  \"ayers</w>\": 42783,\n  \"ayesha</w>\": 46570,\n  \"ayi</w>\": 33025,\n  \"ayles\": 44706,\n  \"ayne</w>\": 35669,\n  \"ayo\": 21929,\n  \"ayo</w>\": 18708,\n  \"ayr\": 23002,\n  \"ayr</w>\": 36473,\n  \"ayrshire</w>\": 32687,\n  \"ays</w>\": 785,\n  \"ayu</w>\": 40769,\n  \"ayurve\": 27185,\n  \"ayurveda</w>\": 38986,\n  \"ayush\": 44831,\n  \"ayy</w>\": 32514,\n  \"ayyy</w>\": 41052,\n  \"az\": 854,\n  \"az</w>\": 5468,\n  \"aza</w>\": 22883,\n  \"azad</w>\": 37838,\n  \"azalea</w>\": 34087,\n  \"azam</w>\": 34727,\n  \"azar</w>\": 27911,\n  \"azcardinals</w>\": 48846,\n  \"aze\": 41157,\n  \"aze</w>\": 28485,\n  \"azer\": 19169,\n  \"azerbai\": 20649,\n  \"azerbaijan</w>\": 23888,\n  \"azhar</w>\": 47019,\n  \"azi\": 23914,\n  \"azi</w>\": 18452,\n  \"azine</w>\": 29140,\n  \"azione</w>\": 48335,\n  \"aziz\": 41205,\n  \"aziz</w>\": 29630,\n  \"azo</w>\": 41227,\n  \"azon</w>\": 36854,\n  \"azores</w>\": 42826,\n  \"azte\": 33270,\n  \"aztec</w>\": 34749,\n  \"aztecs</w>\": 49387,\n  \"azu\": 27701,\n  \"azu</w>\": 46963,\n  \"azul</w>\": 39807,\n  \"azure</w>\": 18514,\n  \"azwx</w>\": 30262,\n  \"azy</w>\": 24783,\n  \"azz\": 9817,\n  \"azz</w>\": 26453,\n  \"azza</w>\": 22255,\n  \"azzi</w>\": 18758,\n  \"azzle</w>\": 39974,\n  \"azzo</w>\": 26779,\n  \"azzur\": 37055,\n  \"azzy</w>\": 44534,\n  \"aÃ±\": 23716,\n  \"aÃ±os</w>\": 41634,\n  \"b\": 65,\n  \"b</w>\": 321,\n  \"ba\": 932,\n  \"ba</w>\": 1792,\n  \"baa</w>\": 33004,\n  \"baahu\": 34145,\n  \"baahubali</w>\": 38663,\n  \"bab\": 1202,\n  \"bab</w>\": 19039,\n  \"baba</w>\": 12631,\n  \"babe\": 31177,\n  \"babe</w>\": 7716,\n  \"babes</w>\": 14253,\n  \"babies</w>\": 6635,\n  \"babs</w>\": 36217,\n  \"babu</w>\": 21623,\n  \"baby\": 7268,\n  \"baby</w>\": 1794,\n  \"babygirl</w>\": 39554,\n  \"babylon</w>\": 31928,\n  \"babymetal</w>\": 45013,\n  \"babys\": 22266,\n  \"babysitting</w>\": 34186,\n  \"bac\": 2791,\n  \"bac</w>\": 25867,\n  \"bacca</w>\": 40708,\n  \"bach\": 11773,\n  \"bach</w>\": 8758,\n  \"bachchan</w>\": 17690,\n  \"bachel\": 11283,\n  \"bachelor\": 45508,\n  \"bachelor</w>\": 16766,\n  \"bachelore\": 26009,\n  \"bachelorette</w>\": 29093,\n  \"bacher</w>\": 49211,\n  \"back\": 1663,\n  \"back</w>\": 893,\n  \"backbone</w>\": 35635,\n  \"backdrop</w>\": 20802,\n  \"backed</w>\": 12721,\n  \"backer</w>\": 22183,\n  \"backers</w>\": 32934,\n  \"background</w>\": 5994,\n  \"backgrounds</w>\": 28215,\n  \"backing</w>\": 14935,\n  \"backlash</w>\": 31519,\n  \"backpack</w>\": 14894,\n  \"backpacking</w>\": 29524,\n  \"backpacks</w>\": 37063,\n  \"backs</w>\": 7562,\n  \"backseat</w>\": 48812,\n  \"backstage</w>\": 9236,\n  \"backstreet\": 46337,\n  \"backthe\": 26127,\n  \"backto\": 18703,\n  \"backtoschool</w>\": 28730,\n  \"backtothe\": 43059,\n  \"backup</w>\": 14415,\n  \"backward</w>\": 37964,\n  \"backwards</w>\": 21283,\n  \"backyard</w>\": 12608,\n  \"bacon\": 48666,\n  \"bacon</w>\": 7104,\n  \"bacter\": 11814,\n  \"bacteria</w>\": 16556,\n  \"bacterial</w>\": 26101,\n  \"bad\": 2564,\n  \"bad</w>\": 2103,\n  \"bada</w>\": 37475,\n  \"badan</w>\": 39149,\n  \"badass</w>\": 11616,\n  \"baddest</w>\": 38112,\n  \"baden</w>\": 36690,\n  \"bader</w>\": 42254,\n  \"badge</w>\": 11301,\n  \"badger\": 32686,\n  \"badger</w>\": 22363,\n  \"badgers</w>\": 22521,\n  \"badges</w>\": 20084,\n  \"badlands</w>\": 43192,\n  \"badly</w>\": 13684,\n  \"badminton</w>\": 21412,\n  \"badoo</w>\": 33192,\n  \"bados</w>\": 25755,\n  \"bae\": 32834,\n  \"bae</w>\": 6855,\n  \"baek\": 18557,\n  \"baek</w>\": 32702,\n  \"baekhyun</w>\": 21572,\n  \"baes</w>\": 46332,\n  \"baf\": 13616,\n  \"baff\": 35693,\n  \"bafta</w>\": 29199,\n  \"bag\": 3408,\n  \"bag</w>\": 3365,\n  \"bage</w>\": 9698,\n  \"bagel</w>\": 28777,\n  \"bagels</w>\": 37489,\n  \"baggage</w>\": 31402,\n  \"bagged</w>\": 34047,\n  \"bagh\": 21659,\n  \"bagh</w>\": 37271,\n  \"baghdad</w>\": 30763,\n  \"bago</w>\": 25105,\n  \"bags</w>\": 6136,\n  \"bagu\": 27749,\n  \"baguette</w>\": 45334,\n  \"bah\": 8372,\n  \"bah</w>\": 16685,\n  \"baha\": 29592,\n  \"baham\": 43718,\n  \"bahamas</w>\": 21224,\n  \"bahan</w>\": 28704,\n  \"bahn</w>\": 33452,\n  \"bahrain</w>\": 12503,\n  \"bai\": 6232,\n  \"bai</w>\": 23339,\n  \"bail\": 22933,\n  \"bail</w>\": 16986,\n  \"bailey\": 27535,\n  \"bailey</w>\": 10180,\n  \"bain\": 40784,\n  \"bain</w>\": 21593,\n  \"bair\": 29059,\n  \"baird</w>\": 40474,\n  \"bait</w>\": 18010,\n  \"baj\": 20713,\n  \"baja\": 40418,\n  \"baja</w>\": 28374,\n  \"bajo</w>\": 32619,\n  \"bak\": 4059,\n  \"bak</w>\": 23742,\n  \"bakar</w>\": 41414,\n  \"bake\": 20736,\n  \"bake</w>\": 11878,\n  \"baked</w>\": 10364,\n  \"baker\": 27303,\n  \"baker</w>\": 7743,\n  \"bakers\": 35293,\n  \"bakers</w>\": 40231,\n  \"bakersfield</w>\": 40149,\n  \"bakery</w>\": 13377,\n  \"bakes</w>\": 43057,\n  \"bakhta\": 44912,\n  \"bakhtawar\": 46937,\n  \"bakhtawarbz</w>\": 47118,\n  \"baking</w>\": 11467,\n  \"baku\": 46417,\n  \"baku</w>\": 31852,\n  \"bal\": 1398,\n  \"bal</w>\": 2282,\n  \"bala</w>\": 20291,\n  \"balaji</w>\": 48694,\n  \"balance\": 42894,\n  \"balance</w>\": 6827,\n  \"balanced</w>\": 15273,\n  \"balances</w>\": 37733,\n  \"balancing</w>\": 23541,\n  \"balboa</w>\": 45098,\n  \"balcony</w>\": 16169,\n  \"bald\": 11153,\n  \"bald</w>\": 14875,\n  \"baldhead</w>\": 29191,\n  \"baldwin</w>\": 16242,\n  \"bale\": 48573,\n  \"bale</w>\": 18873,\n  \"bales</w>\": 42879,\n  \"bali\": 16432,\n  \"bali</w>\": 10900,\n  \"balkan</w>\": 48499,\n  \"balkans</w>\": 42987,\n  \"ball\": 3807,\n  \"ball</w>\": 1069,\n  \"balla\": 42246,\n  \"ballad</w>\": 33472,\n  \"ballarat</w>\": 46645,\n  \"ballard</w>\": 31750,\n  \"baller\": 49194,\n  \"baller</w>\": 25655,\n  \"ballerina</w>\": 34962,\n  \"ballers</w>\": 34173,\n  \"ballet</w>\": 10703,\n  \"balli\": 29406,\n  \"ballin\": 47444,\n  \"ballin</w>\": 33057,\n  \"balling</w>\": 47588,\n  \"ballis\": 46675,\n  \"ballistic</w>\": 36667,\n  \"ballo\": 8871,\n  \"ballon</w>\": 36469,\n  \"balloon</w>\": 13634,\n  \"balloons</w>\": 18130,\n  \"ballot</w>\": 14185,\n  \"ballots</w>\": 35051,\n  \"ballpark</w>\": 26080,\n  \"ballroom</w>\": 15493,\n  \"balls</w>\": 6927,\n  \"bally\": 17275,\n  \"bally</w>\": 29451,\n  \"balm</w>\": 24962,\n  \"balmain</w>\": 45929,\n  \"balo\": 12395,\n  \"baloch</w>\": 23173,\n  \"balochistan</w>\": 21918,\n  \"balot\": 44615,\n  \"balotelli</w>\": 45721,\n  \"bals</w>\": 44154,\n  \"balsam\": 29121,\n  \"balsamic</w>\": 32654,\n  \"balt</w>\": 24441,\n  \"balti\": 8400,\n  \"baltic</w>\": 23817,\n  \"baltimore\": 38502,\n  \"baltimore</w>\": 9582,\n  \"balu\": 38093,\n  \"bam\": 6383,\n  \"bam</w>\": 12686,\n  \"bama</w>\": 20021,\n  \"bambam</w>\": 34538,\n  \"bambi</w>\": 46596,\n  \"bamboo\": 49322,\n  \"bamboo</w>\": 16748,\n  \"ban\": 1159,\n  \"ban</w>\": 2777,\n  \"bana</w>\": 18428,\n  \"banan\": 38410,\n  \"banana</w>\": 8922,\n  \"bananas</w>\": 19121,\n  \"banc\": 39252,\n  \"band\": 4613,\n  \"band</w>\": 1963,\n  \"banda</w>\": 31865,\n  \"bandai</w>\": 42054,\n  \"bandana</w>\": 39265,\n  \"bandcamp</w>\": 32229,\n  \"banded</w>\": 37804,\n  \"bandic\": 44400,\n  \"bandit</w>\": 27639,\n  \"bandits</w>\": 33940,\n  \"bandra</w>\": 41393,\n  \"bands</w>\": 7858,\n  \"bandung</w>\": 29512,\n  \"bandwagon</w>\": 36432,\n  \"bandwidth</w>\": 48859,\n  \"bane</w>\": 9597,\n  \"banerjee</w>\": 48102,\n  \"banff</w>\": 29565,\n  \"bang\": 3524,\n  \"bang</w>\": 6907,\n  \"bangalore</w>\": 14697,\n  \"banger</w>\": 24872,\n  \"bangers</w>\": 38311,\n  \"banging</w>\": 33033,\n  \"bangkok</w>\": 12351,\n  \"bangla\": 10339,\n  \"bangla</w>\": 45928,\n  \"bangladesh</w>\": 11245,\n  \"bangle</w>\": 37634,\n  \"bangor</w>\": 31190,\n  \"bangs</w>\": 27992,\n  \"bangtan</w>\": 39131,\n  \"bani</w>\": 19732,\n  \"banjo</w>\": 27014,\n  \"bank\": 7061,\n  \"bank</w>\": 2723,\n  \"banker</w>\": 27316,\n  \"bankers</w>\": 30599,\n  \"bankholiday\": 48868,\n  \"banking</w>\": 9566,\n  \"bankno\": 49201,\n  \"bankof\": 39120,\n  \"bankrup\": 21904,\n  \"bankrupt\": 23077,\n  \"bankrupt</w>\": 37288,\n  \"bankruptcy</w>\": 23978,\n  \"banks</w>\": 6367,\n  \"banksy</w>\": 33350,\n  \"bann\": 5304,\n  \"banned</w>\": 12012,\n  \"banner</w>\": 9185,\n  \"banners</w>\": 23145,\n  \"banning</w>\": 26246,\n  \"bannon</w>\": 29710,\n  \"bano</w>\": 42947,\n  \"banquet</w>\": 14254,\n  \"bans</w>\": 15146,\n  \"bant\": 23301,\n  \"bant</w>\": 46657,\n  \"banter</w>\": 25535,\n  \"bao\": 39487,\n  \"bao</w>\": 20408,\n  \"bap\": 7415,\n  \"bap</w>\": 23754,\n  \"bapti\": 15477,\n  \"baptism</w>\": 36765,\n  \"baptist</w>\": 13274,\n  \"baptiste</w>\": 45770,\n  \"baptized</w>\": 45400,\n  \"bar\": 1040,\n  \"bar</w>\": 2411,\n  \"bara</w>\": 19345,\n  \"barack\": 18670,\n  \"barack</w>\": 22481,\n  \"barackobama</w>\": 18885,\n  \"barak\": 47419,\n  \"barak</w>\": 16260,\n  \"barang\": 38446,\n  \"barb\": 24173,\n  \"barb</w>\": 20913,\n  \"barbados</w>\": 26992,\n  \"barbar\": 7906,\n  \"barbara</w>\": 10937,\n  \"barbarian</w>\": 42530,\n  \"barbe\": 18372,\n  \"barbecue</w>\": 23501,\n  \"barber\": 19517,\n  \"barber</w>\": 12296,\n  \"barbershop</w>\": 37707,\n  \"barbican</w>\": 47668,\n  \"barbie</w>\": 16923,\n  \"barca</w>\": 22942,\n  \"barcel\": 6134,\n  \"barcelon\": 47820,\n  \"barcelona</w>\": 6412,\n  \"barclay\": 48877,\n  \"barclay</w>\": 45276,\n  \"barclays</w>\": 29538,\n  \"bard\": 39812,\n  \"bard</w>\": 17514,\n  \"bare\": 16023,\n  \"bare</w>\": 14318,\n  \"barefoot</w>\": 30327,\n  \"barely</w>\": 12684,\n  \"bargain</w>\": 15076,\n  \"bargaining</w>\": 41282,\n  \"bargains</w>\": 34126,\n  \"barge</w>\": 28272,\n  \"bari\": 21428,\n  \"bari</w>\": 28016,\n  \"barista</w>\": 31078,\n  \"barit\": 46300,\n  \"bark\": 32333,\n  \"bark</w>\": 16560,\n  \"barker</w>\": 20618,\n  \"barking</w>\": 32676,\n  \"barkley</w>\": 30266,\n  \"barley</w>\": 22607,\n  \"barlow</w>\": 25483,\n  \"barn\": 10490,\n  \"barn</w>\": 10942,\n  \"barnab\": 43272,\n  \"barnard</w>\": 44332,\n  \"barne\": 42527,\n  \"barnes</w>\": 13102,\n  \"barnet</w>\": 41943,\n  \"barnett</w>\": 27650,\n  \"barney</w>\": 24563,\n  \"barns</w>\": 43759,\n  \"barnsley\": 37109,\n  \"barnsley</w>\": 32153,\n  \"baro\": 17422,\n  \"baro</w>\": 30817,\n  \"baron\": 48371,\n  \"baron</w>\": 19349,\n  \"baroness</w>\": 45056,\n  \"barons</w>\": 45596,\n  \"baroque</w>\": 25065,\n  \"barr\": 39473,\n  \"barr</w>\": 22492,\n  \"barra\": 28442,\n  \"barra</w>\": 33542,\n  \"barrabest</w>\": 41376,\n  \"barrac\": 40835,\n  \"barracks</w>\": 35822,\n  \"barre\": 13840,\n  \"barre</w>\": 38257,\n  \"barred</w>\": 33261,\n  \"barrel</w>\": 11703,\n  \"barrels</w>\": 22059,\n  \"barren</w>\": 46743,\n  \"barrett</w>\": 18701,\n  \"barri\": 8660,\n  \"barric\": 29189,\n  \"barrie</w>\": 27090,\n  \"barrier</w>\": 15706,\n  \"barriers</w>\": 16321,\n  \"barrington</w>\": 48954,\n  \"barron</w>\": 34881,\n  \"barrow\": 42568,\n  \"barrow</w>\": 24983,\n  \"barry\": 18028,\n  \"barry</w>\": 8461,\n  \"barrymore</w>\": 49310,\n  \"bars</w>\": 8616,\n  \"barstool\": 44826,\n  \"bart\": 14838,\n  \"bart</w>\": 12870,\n  \"bartender</w>\": 33498,\n  \"barthol\": 48989,\n  \"bartlett</w>\": 37130,\n  \"bartol\": 38209,\n  \"barton\": 48853,\n  \"barton</w>\": 20345,\n  \"baru</w>\": 16356,\n  \"barun\": 38278,\n  \"barunsob\": 41398,\n  \"barÃ§a</w>\": 32788,\n  \"bas\": 1244,\n  \"bas</w>\": 11420,\n  \"basa</w>\": 26142,\n  \"base\": 2776,\n  \"base</w>\": 4579,\n  \"baseball\": 23479,\n  \"baseball</w>\": 3470,\n  \"based\": 35196,\n  \"based</w>\": 2812,\n  \"basel\": 42803,\n  \"basel</w>\": 20903,\n  \"baseline</w>\": 40648,\n  \"baseman</w>\": 45910,\n  \"basement</w>\": 14792,\n  \"bases</w>\": 20496,\n  \"bash\": 20462,\n  \"bash</w>\": 10972,\n  \"bashing</w>\": 37545,\n  \"bashir</w>\": 42799,\n  \"basic\": 40452,\n  \"basic</w>\": 7696,\n  \"basically</w>\": 9125,\n  \"basics</w>\": 15825,\n  \"basil\": 19225,\n  \"basil</w>\": 14936,\n  \"basilica</w>\": 27879,\n  \"basin</w>\": 16117,\n  \"basing\": 47321,\n  \"basis</w>\": 12278,\n  \"baske\": 3713,\n  \"basket</w>\": 10338,\n  \"basketball\": 40023,\n  \"basketball</w>\": 3835,\n  \"baskets</w>\": 27787,\n  \"basking</w>\": 39769,\n  \"basque</w>\": 37175,\n  \"bass\": 22831,\n  \"bass</w>\": 5992,\n  \"bassett</w>\": 45992,\n  \"bassist</w>\": 26496,\n  \"bast\": 28092,\n  \"basti\": 8559,\n  \"bastille</w>\": 41874,\n  \"bat\": 2121,\n  \"bat</w>\": 6575,\n  \"bata</w>\": 39277,\n  \"batb</w>\": 33962,\n  \"batch</w>\": 9413,\n  \"bate\": 25034,\n  \"bate</w>\": 28277,\n  \"bateman</w>\": 41635,\n  \"bates</w>\": 21727,\n  \"batgirl</w>\": 46460,\n  \"bath\": 6064,\n  \"bath</w>\": 5713,\n  \"bathing</w>\": 20144,\n  \"bathro\": 21201,\n  \"bathroom</w>\": 8470,\n  \"bathrooms</w>\": 26434,\n  \"baths</w>\": 19442,\n  \"bathtub</w>\": 39942,\n  \"bathurst</w>\": 36365,\n  \"bati\": 23362,\n  \"bati</w>\": 37589,\n  \"batman\": 27811,\n  \"batman</w>\": 7223,\n  \"baton</w>\": 24331,\n  \"bats</w>\": 14984,\n  \"batsman</w>\": 35432,\n  \"batt\": 2407,\n  \"batt</w>\": 48595,\n  \"battalion</w>\": 20820,\n  \"batter\": 12654,\n  \"batter</w>\": 31855,\n  \"battered</w>\": 34375,\n  \"batteries</w>\": 16666,\n  \"battersea</w>\": 35839,\n  \"battery</w>\": 7870,\n  \"batting</w>\": 17401,\n  \"battle\": 7344,\n  \"battle</w>\": 3528,\n  \"battled</w>\": 37837,\n  \"battlefield</w>\": 16055,\n  \"battlefront</w>\": 42214,\n  \"battleof\": 47560,\n  \"battles</w>\": 14213,\n  \"battleship</w>\": 35165,\n  \"battling</w>\": 17268,\n  \"bau\": 6055,\n  \"bau</w>\": 34840,\n  \"bauer</w>\": 22903,\n  \"baugh</w>\": 41301,\n  \"baum</w>\": 19840,\n  \"bautista</w>\": 31881,\n  \"bav\": 21075,\n  \"bavaria</w>\": 39977,\n  \"bavarian</w>\": 44458,\n  \"baw\": 19808,\n  \"bax\": 21216,\n  \"baxter</w>\": 26168,\n  \"bay\": 3631,\n  \"bay</w>\": 2174,\n  \"baya</w>\": 31573,\n  \"bayan</w>\": 43895,\n  \"bayarea</w>\": 28260,\n  \"bayer\": 48548,\n  \"bayer</w>\": 29183,\n  \"bayern</w>\": 14666,\n  \"baylor</w>\": 21721,\n  \"bayou</w>\": 33955,\n  \"bays</w>\": 40156,\n  \"baz\": 10430,\n  \"baz</w>\": 25268,\n  \"bazaar</w>\": 20070,\n  \"bazar</w>\": 49298,\n  \"bb\": 1174,\n  \"bb</w>\": 3529,\n  \"bba</w>\": 27762,\n  \"bball</w>\": 15664,\n  \"bbb</w>\": 33535,\n  \"bbc\": 5123,\n  \"bbc</w>\": 5188,\n  \"bbcc\": 39052,\n  \"bbce\": 33818,\n  \"bbcnews</w>\": 29370,\n  \"bbcone</w>\": 28259,\n  \"bbcqt</w>\": 37343,\n  \"bbcr</w>\": 35802,\n  \"bbcra\": 17115,\n  \"bbcradi\": 49213,\n  \"bbcradio</w>\": 22876,\n  \"bbcsport</w>\": 49321,\n  \"bbcspringwatch</w>\": 37358,\n  \"bbctwo</w>\": 40395,\n  \"bbcworld</w>\": 47340,\n  \"bbe</w>\": 37559,\n  \"bbed</w>\": 9077,\n  \"bber</w>\": 7933,\n  \"bbers</w>\": 36494,\n  \"bbhutto\": 28085,\n  \"bbhuttozardari</w>\": 28135,\n  \"bbi</w>\": 37047,\n  \"bbin</w>\": 38553,\n  \"bbing</w>\": 9787,\n  \"bbins</w>\": 42504,\n  \"bbl</w>\": 21961,\n  \"bble\": 26570,\n  \"bble</w>\": 5924,\n  \"bbled</w>\": 37626,\n  \"bbles</w>\": 18093,\n  \"bblo\": 21231,\n  \"bbloggers</w>\": 26614,\n  \"bbly</w>\": 43031,\n  \"bbm</w>\": 25382,\n  \"bbmas</w>\": 22145,\n  \"bbn</w>\": 28427,\n  \"bbnaija</w>\": 20984,\n  \"bbo</w>\": 21892,\n  \"bbq\": 41270,\n  \"bbq</w>\": 6726,\n  \"bbs</w>\": 10002,\n  \"bbuk</w>\": 45978,\n  \"bby\": 11166,\n  \"bby</w>\": 3810,\n  \"bc\": 3116,\n  \"bc</w>\": 2162,\n  \"bcc</w>\": 41509,\n  \"bcci</w>\": 36138,\n  \"bce</w>\": 36510,\n  \"bcfc</w>\": 34359,\n  \"bch</w>\": 36684,\n  \"bcn</w>\": 25766,\n  \"bcoz</w>\": 46373,\n  \"bcpoli</w>\": 24389,\n  \"bcs</w>\": 24909,\n  \"bcu</w>\": 28299,\n  \"bd\": 24358,\n  \"bd</w>\": 11165,\n  \"bday\": 33022,\n  \"bday</w>\": 5781,\n  \"bdg</w>\": 48418,\n  \"bds</w>\": 26732,\n  \"be\": 571,\n  \"be</w>\": 655,\n  \"bea\": 21886,\n  \"bea</w>\": 20925,\n  \"beach\": 6068,\n  \"beach</w>\": 2117,\n  \"beaches</w>\": 12183,\n  \"beachlife</w>\": 43824,\n  \"beacon\": 36883,\n  \"beacon</w>\": 18858,\n  \"beacons</w>\": 39395,\n  \"bead\": 31621,\n  \"bead</w>\": 23557,\n  \"beaded</w>\": 26661,\n  \"beads</w>\": 14099,\n  \"beagle</w>\": 30044,\n  \"beak</w>\": 36498,\n  \"beal</w>\": 45769,\n  \"beale</w>\": 39717,\n  \"beam\": 35339,\n  \"beam</w>\": 13663,\n  \"beams</w>\": 23993,\n  \"bean\": 16471,\n  \"bean</w>\": 5328,\n  \"beanie</w>\": 21534,\n  \"beans</w>\": 8302,\n  \"bear\": 6375,\n  \"bear</w>\": 4298,\n  \"bearable</w>\": 38608,\n  \"bearcats</w>\": 33242,\n  \"beard\": 26157,\n  \"beard</w>\": 9052,\n  \"bearded</w>\": 28459,\n  \"beardown</w>\": 43687,\n  \"beards</w>\": 33020,\n  \"bearer</w>\": 30686,\n  \"bearers</w>\": 47986,\n  \"bearing</w>\": 18370,\n  \"bearings</w>\": 42083,\n  \"bearish</w>\": 34829,\n  \"bears</w>\": 6182,\n  \"beasley</w>\": 43349,\n  \"beast\": 20847,\n  \"beast</w>\": 6957,\n  \"beastmode</w>\": 43076,\n  \"beasts</w>\": 21771,\n  \"beat\": 3774,\n  \"beat</w>\": 3018,\n  \"beaten</w>\": 10864,\n  \"beater</w>\": 41974,\n  \"beati\": 44386,\n  \"beating</w>\": 10078,\n  \"beatles</w>\": 11961,\n  \"beatport</w>\": 31421,\n  \"beatrice</w>\": 36922,\n  \"beats</w>\": 6289,\n  \"beatthe\": 40550,\n  \"beatty</w>\": 39903,\n  \"beatz</w>\": 33363,\n  \"beau\": 1016,\n  \"beau</w>\": 14298,\n  \"beaufort</w>\": 45423,\n  \"beaumont</w>\": 32857,\n  \"beaut</w>\": 24559,\n  \"beauti\": 1154,\n  \"beauties</w>\": 14874,\n  \"beautiful\": 13662,\n  \"beautiful</w>\": 1215,\n  \"beautifully</w>\": 10627,\n  \"beauty\": 12881,\n  \"beauty</w>\": 2488,\n  \"beav\": 23260,\n  \"beaver\": 26432,\n  \"beaver</w>\": 22874,\n  \"beavers</w>\": 34513,\n  \"beavs</w>\": 43909,\n  \"bebe</w>\": 23331,\n  \"bec\": 6899,\n  \"bec</w>\": 10773,\n  \"became</w>\": 5464,\n  \"because\": 32714,\n  \"because</w>\": 1631,\n  \"becca</w>\": 27088,\n  \"bech\": 44055,\n  \"beck\": 8256,\n  \"beck</w>\": 10396,\n  \"becker</w>\": 26918,\n  \"beckett</w>\": 27249,\n  \"beckham</w>\": 18764,\n  \"becky\": 32406,\n  \"becky</w>\": 18921,\n  \"become</w>\": 2989,\n  \"becomes</w>\": 6766,\n  \"becoming</w>\": 6208,\n  \"bed\": 4152,\n  \"bed</w>\": 2722,\n  \"bedding</w>\": 31761,\n  \"bedford</w>\": 20779,\n  \"bedi</w>\": 39181,\n  \"bedro\": 18415,\n  \"bedroom</w>\": 8411,\n  \"bedrooms</w>\": 23996,\n  \"beds</w>\": 13914,\n  \"bedside</w>\": 47473,\n  \"bedtime</w>\": 22115,\n  \"bee\": 6097,\n  \"bee</w>\": 5028,\n  \"beech\": 32733,\n  \"beech</w>\": 27596,\n  \"beef\": 21703,\n  \"beef</w>\": 6529,\n  \"beek</w>\": 37915,\n  \"been\": 33986,\n  \"been</w>\": 1025,\n  \"beep</w>\": 33432,\n  \"beer\": 8885,\n  \"beer</w>\": 2544,\n  \"beers</w>\": 10907,\n  \"bees\": 36249,\n  \"bees</w>\": 9100,\n  \"beet\": 12582,\n  \"beet</w>\": 28621,\n  \"beethoven</w>\": 23656,\n  \"beetle</w>\": 16534,\n  \"beetles</w>\": 36317,\n  \"beetro\": 29251,\n  \"beetroot</w>\": 31638,\n  \"beets</w>\": 36087,\n  \"before\": 20898,\n  \"before</w>\": 1348,\n  \"beg\": 2219,\n  \"beg</w>\": 22401,\n  \"began</w>\": 8636,\n  \"begg\": 36769,\n  \"begging</w>\": 25371,\n  \"begin\": 19197,\n  \"begin</w>\": 4947,\n  \"beginner</w>\": 24351,\n  \"beginners</w>\": 21930,\n  \"beginning</w>\": 5791,\n  \"beginnings</w>\": 22581,\n  \"begins</w>\": 4635,\n  \"begs</w>\": 43531,\n  \"begun</w>\": 10514,\n  \"beh\": 21971,\n  \"beh</w>\": 41612,\n  \"beha\": 5737,\n  \"behalf</w>\": 11470,\n  \"behave</w>\": 28825,\n  \"behaved</w>\": 41617,\n  \"behavi\": 6149,\n  \"behaving</w>\": 40745,\n  \"behavior</w>\": 10461,\n  \"behavioral</w>\": 25135,\n  \"behaviors</w>\": 37741,\n  \"behaviour</w>\": 14655,\n  \"behavioural</w>\": 46019,\n  \"behe\": 42329,\n  \"behin\": 2335,\n  \"behind</w>\": 2403,\n  \"behindthe\": 21104,\n  \"behindthescenes</w>\": 26253,\n  \"behold</w>\": 15929,\n  \"bei\": 38991,\n  \"bei</w>\": 23227,\n  \"beige</w>\": 26677,\n  \"beij\": 11547,\n  \"beijing</w>\": 11796,\n  \"bein\": 39117,\n  \"bein</w>\": 24168,\n  \"being\": 13481,\n  \"being</w>\": 1265,\n  \"beings</w>\": 17998,\n  \"beingsalmankhan</w>\": 19637,\n  \"beir\": 20176,\n  \"beirut</w>\": 22352,\n  \"beit</w>\": 26963,\n  \"bek\": 46846,\n  \"bek</w>\": 26135,\n  \"bekind</w>\": 46691,\n  \"bel\": 1308,\n  \"bel</w>\": 3543,\n  \"bela</w>\": 30555,\n  \"belarus</w>\": 30849,\n  \"belated</w>\": 20256,\n  \"belfast\": 35100,\n  \"belfast</w>\": 10015,\n  \"belgi\": 7001,\n  \"belgian</w>\": 15008,\n  \"belgium</w>\": 10239,\n  \"belgrade</w>\": 30502,\n  \"beli\": 1859,\n  \"beli</w>\": 45842,\n  \"belichick</w>\": 46132,\n  \"belie\": 20854,\n  \"beliebers</w>\": 27714,\n  \"belief</w>\": 14802,\n  \"beliefs</w>\": 20575,\n  \"believ\": 4972,\n  \"believe\": 15819,\n  \"believe</w>\": 2649,\n  \"believed</w>\": 13380,\n  \"believein\": 24294,\n  \"believeinfilm</w>\": 37375,\n  \"believer</w>\": 26057,\n  \"believers</w>\": 28434,\n  \"believes</w>\": 12017,\n  \"believing</w>\": 19551,\n  \"belinda</w>\": 44415,\n  \"belize</w>\": 27990,\n  \"bell\": 5417,\n  \"bell</w>\": 3718,\n  \"bella\": 18282,\n  \"bella</w>\": 10418,\n  \"bellamy</w>\": 34461,\n  \"bellator</w>\": 31985,\n  \"belle\": 13587,\n  \"belle</w>\": 11496,\n  \"belles</w>\": 40678,\n  \"bellevue</w>\": 32715,\n  \"belli\": 43335,\n  \"bellletstalk</w>\": 42695,\n  \"bello</w>\": 21954,\n  \"bells</w>\": 12811,\n  \"bellum</w>\": 35493,\n  \"belly\": 25901,\n  \"belly</w>\": 10404,\n  \"belmont</w>\": 25612,\n  \"belo\": 8379,\n  \"belo</w>\": 41649,\n  \"belong\": 16453,\n  \"belong</w>\": 13596,\n  \"belonged</w>\": 39893,\n  \"belonging</w>\": 28193,\n  \"belongs</w>\": 14395,\n  \"beloved</w>\": 9363,\n  \"below</w>\": 3788,\n  \"bels</w>\": 43127,\n  \"belt\": 36416,\n  \"belt</w>\": 7373,\n  \"belts</w>\": 21888,\n  \"belvedere</w>\": 48003,\n  \"ben\": 1465,\n  \"ben</w>\": 3518,\n  \"bena</w>\": 46249,\n  \"bench\": 17770,\n  \"bench</w>\": 8771,\n  \"benches</w>\": 36349,\n  \"benchmark</w>\": 31775,\n  \"bend\": 22100,\n  \"bend</w>\": 13332,\n  \"bender</w>\": 22551,\n  \"bendigo</w>\": 48197,\n  \"bending</w>\": 33897,\n  \"bene\": 12091,\n  \"bene</w>\": 47151,\n  \"beneath</w>\": 16850,\n  \"bened\": 13216,\n  \"benedic\": 24402,\n  \"benedict\": 47896,\n  \"benedict</w>\": 18027,\n  \"benef\": 3260,\n  \"benefici\": 38593,\n  \"beneficial</w>\": 24660,\n  \"beneficiaries</w>\": 42160,\n  \"benefit</w>\": 6399,\n  \"benefited</w>\": 48266,\n  \"benefiting</w>\": 29474,\n  \"benefits</w>\": 5465,\n  \"benefitting</w>\": 47222,\n  \"benevol\": 47060,\n  \"benfica</w>\": 33873,\n  \"beng\": 6962,\n  \"bengal\": 17404,\n  \"bengal</w>\": 16374,\n  \"bengali</w>\": 33774,\n  \"bengals</w>\": 23737,\n  \"bengaluru</w>\": 21707,\n  \"benghazi</w>\": 25967,\n  \"benin</w>\": 40296,\n  \"benitez</w>\": 46711,\n  \"benjam\": 10550,\n  \"benjamin\": 38647,\n  \"benjamin</w>\": 12131,\n  \"benji</w>\": 43548,\n  \"benn</w>\": 39097,\n  \"bennet</w>\": 48536,\n  \"bennett</w>\": 12186,\n  \"benny\": 42369,\n  \"benny</w>\": 20595,\n  \"beno\": 35268,\n  \"benoit</w>\": 44373,\n  \"benson</w>\": 19578,\n  \"bent\": 9809,\n  \"bent</w>\": 18369,\n  \"bentley</w>\": 16859,\n  \"benton</w>\": 30812,\n  \"benz\": 27937,\n  \"benz</w>\": 13470,\n  \"ber\": 867,\n  \"ber</w>\": 1516,\n  \"bera</w>\": 32802,\n  \"bere\": 17458,\n  \"bered</w>\": 9193,\n  \"beren\": 33654,\n  \"beret</w>\": 41658,\n  \"berg\": 12022,\n  \"berg</w>\": 3294,\n  \"bergen</w>\": 22918,\n  \"berger\": 35933,\n  \"berger</w>\": 13873,\n  \"bergh</w>\": 35120,\n  \"bergman</w>\": 42597,\n  \"bergs</w>\": 43592,\n  \"berk\": 15633,\n  \"berke\": 14639,\n  \"berkeley\": 46049,\n  \"berkeley</w>\": 16667,\n  \"berkshire</w>\": 27300,\n  \"berlin\": 23532,\n  \"berlin</w>\": 5891,\n  \"berman</w>\": 21514,\n  \"bermu\": 21032,\n  \"bermuda</w>\": 24644,\n  \"bern\": 9195,\n  \"bern</w>\": 18382,\n  \"bernade\": 46242,\n  \"bernar\": 11962,\n  \"bernard</w>\": 14579,\n  \"bernardino</w>\": 35328,\n  \"bernardo\": 27137,\n  \"bernardo</w>\": 28696,\n  \"bernardokath</w>\": 29081,\n  \"bernat\": 40578,\n  \"berni\": 18798,\n  \"bernie\": 40093,\n  \"bernie</w>\": 10503,\n  \"berniesanders</w>\": 23745,\n  \"bernstein</w>\": 33936,\n  \"berra</w>\": 15089,\n  \"berries</w>\": 8319,\n  \"berry\": 15334,\n  \"berry</w>\": 3488,\n  \"bers</w>\": 6408,\n  \"berser\": 39037,\n  \"bert\": 17340,\n  \"bert</w>\": 2358,\n  \"berta</w>\": 45187,\n  \"berth</w>\": 28317,\n  \"bertie</w>\": 47182,\n  \"berto</w>\": 34073,\n  \"bertr\": 36962,\n  \"bertrand</w>\": 41594,\n  \"berts</w>\": 30205,\n  \"berty</w>\": 35973,\n  \"berwick</w>\": 40407,\n  \"bery</w>\": 11411,\n  \"bes\": 26911,\n  \"bes</w>\": 3635,\n  \"beside</w>\": 13519,\n  \"besides</w>\": 17596,\n  \"bespoke</w>\": 15612,\n  \"bess</w>\": 43791,\n  \"best\": 3419,\n  \"best</w>\": 949,\n  \"bestbuy</w>\": 29749,\n  \"bestest</w>\": 31199,\n  \"bestfan\": 23880,\n  \"bestfanarmy</w>\": 24590,\n  \"bestfriend\": 29832,\n  \"bestfriend</w>\": 11856,\n  \"bestfriends</w>\": 23555,\n  \"besti\": 35210,\n  \"bestie</w>\": 17188,\n  \"besties</w>\": 27346,\n  \"besto\": 28615,\n  \"bestof\": 27892,\n  \"bestof</w>\": 39533,\n  \"bestseller</w>\": 25841,\n  \"bestselling</w>\": 28632,\n  \"bet\": 1051,\n  \"bet</w>\": 4430,\n  \"beta\": 43188,\n  \"beta</w>\": 9505,\n  \"betes</w>\": 10255,\n  \"beth\": 9993,\n  \"beth</w>\": 4892,\n  \"bethan\": 18781,\n  \"bethany\": 39130,\n  \"bethany</w>\": 27952,\n  \"bethe\": 12624,\n  \"bethel</w>\": 33410,\n  \"bethesda</w>\": 32527,\n  \"bethle\": 30760,\n  \"bethlehem</w>\": 31827,\n  \"betis</w>\": 45590,\n  \"beto</w>\": 33721,\n  \"betra\": 18436,\n  \"betrayal</w>\": 33171,\n  \"betrayed</w>\": 35692,\n  \"bets</w>\": 17107,\n  \"betsy</w>\": 28946,\n  \"bett\": 17715,\n  \"bett</w>\": 20489,\n  \"betta</w>\": 36387,\n  \"bette</w>\": 35855,\n  \"better\": 10320,\n  \"better</w>\": 1539,\n  \"bettertogether</w>\": 47392,\n  \"betting</w>\": 14319,\n  \"betts</w>\": 38637,\n  \"betty\": 36175,\n  \"betty</w>\": 14350,\n  \"between</w>\": 1957,\n  \"beu\": 38660,\n  \"bev\": 40324,\n  \"bev</w>\": 30968,\n  \"bever\": 9924,\n  \"beverage</w>\": 18694,\n  \"beverages</w>\": 28521,\n  \"beverley</w>\": 39165,\n  \"beverly\": 30906,\n  \"beverly</w>\": 16728,\n  \"beverlyhills</w>\": 45363,\n  \"beware</w>\": 14532,\n  \"bewithyou</w>\": 36787,\n  \"bex\": 18676,\n  \"bex</w>\": 24748,\n  \"bexhill</w>\": 49200,\n  \"bey\": 3234,\n  \"bey</w>\": 6767,\n  \"beyon\": 11447,\n  \"beyonce</w>\": 16632,\n  \"beyoncÃ©</w>\": 19219,\n  \"beyond\": 22246,\n  \"beyond</w>\": 4432,\n  \"bez\": 28592,\n  \"bez</w>\": 46764,\n  \"bezos</w>\": 45000,\n  \"bf\": 19858,\n  \"bf</w>\": 7990,\n  \"bfc</w>\": 37183,\n  \"bff</w>\": 11984,\n  \"bffs</w>\": 31462,\n  \"bfi</w>\": 34244,\n  \"bg\": 16674,\n  \"bg</w>\": 11295,\n  \"bgc</w>\": 47598,\n  \"bgs</w>\": 47963,\n  \"bgt</w>\": 40665,\n  \"bh\": 9930,\n  \"bh</w>\": 13603,\n  \"bha\": 6144,\n  \"bha</w>\": 33068,\n  \"bhafc</w>\": 30779,\n  \"bhagat</w>\": 49136,\n  \"bhai\": 48370,\n  \"bhai</w>\": 20508,\n  \"bhak\": 34501,\n  \"bham\": 31874,\n  \"bham</w>\": 23491,\n  \"bhan\": 27356,\n  \"bhand\": 48679,\n  \"bhar\": 9108,\n  \"bharat\": 27454,\n  \"bharat</w>\": 17430,\n  \"bharti</w>\": 46803,\n  \"bhat\": 23784,\n  \"bhatt</w>\": 36143,\n  \"bhav\": 44950,\n  \"bhi\": 28943,\n  \"bhi</w>\": 21955,\n  \"bhk</w>\": 45070,\n  \"bhm</w>\": 38741,\n  \"bho\": 19721,\n  \"bhopal</w>\": 44573,\n  \"bhp</w>\": 29776,\n  \"bhs</w>\": 29195,\n  \"bhu\": 9172,\n  \"bhuban\": 38729,\n  \"bhubanes\": 41213,\n  \"bhubaneswar</w>\": 45888,\n  \"bhushan</w>\": 40884,\n  \"bhutan</w>\": 32391,\n  \"bhutto</w>\": 30153,\n  \"bi\": 717,\n  \"bi</w>\": 3035,\n  \"bia</w>\": 3841,\n  \"biaf\": 26961,\n  \"biafra</w>\": 36355,\n  \"bian\": 19531,\n  \"bian</w>\": 9027,\n  \"bianca</w>\": 25854,\n  \"bianchi</w>\": 45720,\n  \"bians</w>\": 28141,\n  \"bias</w>\": 11268,\n  \"biased</w>\": 22178,\n  \"bib\": 44607,\n  \"bib</w>\": 21022,\n  \"bibi</w>\": 31182,\n  \"bibl\": 20912,\n  \"bible\": 26738,\n  \"bible</w>\": 7583,\n  \"bibli\": 23465,\n  \"biblical</w>\": 22841,\n  \"biblio\": 49131,\n  \"bic\": 5960,\n  \"bic</w>\": 10675,\n  \"bice\": 35589,\n  \"biceps</w>\": 46735,\n  \"bick\": 27238,\n  \"bicy\": 9247,\n  \"bicycle</w>\": 11652,\n  \"bicycles</w>\": 31326,\n  \"bid\": 21035,\n  \"bid</w>\": 5553,\n  \"bidding</w>\": 23237,\n  \"bide</w>\": 45178,\n  \"biden</w>\": 19451,\n  \"bids</w>\": 16148,\n  \"bie\": 5561,\n  \"bie</w>\": 4173,\n  \"bieber\": 48725,\n  \"bieber</w>\": 7535,\n  \"bien\": 19176,\n  \"bien</w>\": 25742,\n  \"biennale</w>\": 33776,\n  \"biennial</w>\": 36609,\n  \"bier\": 27226,\n  \"bier</w>\": 23508,\n  \"bies</w>\": 7867,\n  \"big\": 1915,\n  \"big</w>\": 1205,\n  \"bigbaldhead</w>\": 30325,\n  \"bigbang\": 41680,\n  \"bigbang</w>\": 23734,\n  \"bigdata</w>\": 9440,\n  \"bige\": 37762,\n  \"bigfoot</w>\": 37095,\n  \"bigg\": 15312,\n  \"bigg</w>\": 35399,\n  \"biggboss</w>\": 27056,\n  \"bigger</w>\": 6806,\n  \"biggest\": 19483,\n  \"biggest</w>\": 3505,\n  \"biggie</w>\": 28392,\n  \"biggs</w>\": 46507,\n  \"bigh\": 18106,\n  \"bighit</w>\": 35508,\n  \"bigo\": 14278,\n  \"bigolive</w>\": 20735,\n  \"bigotry</w>\": 37269,\n  \"bigre\": 36330,\n  \"bih</w>\": 33471,\n  \"bihar</w>\": 22849,\n  \"bij\": 42478,\n  \"bik\": 30306,\n  \"bike\": 11686,\n  \"bike</w>\": 3701,\n  \"biker\": 36100,\n  \"biker</w>\": 23449,\n  \"bikers</w>\": 29468,\n  \"bikes</w>\": 9227,\n  \"bikin\": 12638,\n  \"biking</w>\": 19157,\n  \"bikini</w>\": 14531,\n  \"bil\": 3092,\n  \"bil</w>\": 20506,\n  \"bilateral</w>\": 25599,\n  \"bilbao</w>\": 34802,\n  \"bild</w>\": 35512,\n  \"bile</w>\": 25943,\n  \"bilingual</w>\": 29623,\n  \"bilities</w>\": 13582,\n  \"bility</w>\": 4694,\n  \"bill\": 4444,\n  \"bill</w>\": 2886,\n  \"billboard</w>\": 10856,\n  \"billboards</w>\": 34741,\n  \"billed</w>\": 37558,\n  \"billi\": 7693,\n  \"billie</w>\": 23990,\n  \"billing</w>\": 31797,\n  \"billings</w>\": 43615,\n  \"billion\": 14520,\n  \"billion</w>\": 5729,\n  \"billionaire</w>\": 19475,\n  \"billionaires</w>\": 41590,\n  \"billions</w>\": 20742,\n  \"bills</w>\": 9810,\n  \"billsmafia</w>\": 48845,\n  \"billy\": 15626,\n  \"billy</w>\": 6814,\n  \"bilt\": 44770,\n  \"bilt</w>\": 26654,\n  \"bim\": 46737,\n  \"bim</w>\": 24775,\n  \"bin\": 4849,\n  \"bin</w>\": 5346,\n  \"binance</w>\": 43520,\n  \"binary</w>\": 23497,\n  \"bind</w>\": 44513,\n  \"binder</w>\": 30541,\n  \"binding</w>\": 21287,\n  \"bine</w>\": 34848,\n  \"bing\": 24818,\n  \"bing</w>\": 5665,\n  \"binge</w>\": 22600,\n  \"bingham\": 43785,\n  \"bingham</w>\": 47296,\n  \"bingo</w>\": 18418,\n  \"bino\": 29172,\n  \"bino</w>\": 24313,\n  \"bins</w>\": 26934,\n  \"bint\": 43647,\n  \"bio\": 2830,\n  \"bio</w>\": 5162,\n  \"biode\": 43502,\n  \"biodegradable</w>\": 47740,\n  \"biodiversity</w>\": 17428,\n  \"biof\": 45158,\n  \"biographical</w>\": 49232,\n  \"biography</w>\": 15423,\n  \"biological</w>\": 18821,\n  \"biologist</w>\": 35149,\n  \"biology</w>\": 9796,\n  \"biom\": 13010,\n  \"biomar\": 44549,\n  \"biomass</w>\": 36746,\n  \"biome\": 26218,\n  \"biomed\": 29280,\n  \"biomedical</w>\": 33117,\n  \"bionic</w>\": 46201,\n  \"biop\": 15009,\n  \"biopic</w>\": 27942,\n  \"bios</w>\": 48505,\n  \"biotech</w>\": 22514,\n  \"biotechnology</w>\": 40375,\n  \"biotic</w>\": 33773,\n  \"biotics</w>\": 41371,\n  \"bious</w>\": 31845,\n  \"bipartisan</w>\": 32266,\n  \"bipolar</w>\": 37097,\n  \"bique</w>\": 27809,\n  \"bir\": 921,\n  \"bir</w>\": 16284,\n  \"birch\": 31569,\n  \"birch</w>\": 22907,\n  \"bird\": 6908,\n  \"bird</w>\": 3329,\n  \"birdie</w>\": 29612,\n  \"birdies</w>\": 45618,\n  \"birding</w>\": 15851,\n  \"birdman</w>\": 41915,\n  \"birdphotography</w>\": 47999,\n  \"birds\": 41951,\n  \"birds</w>\": 4337,\n  \"birdwatching</w>\": 33497,\n  \"birk\": 48289,\n  \"birken\": 40661,\n  \"birmin\": 37482,\n  \"birmingham\": 38580,\n  \"birmingham</w>\": 7720,\n  \"birth\": 1128,\n  \"birth</w>\": 5397,\n  \"birthday\": 7381,\n  \"birthday</w>\": 1166,\n  \"birthdays</w>\": 17954,\n  \"birthplace</w>\": 31429,\n  \"biryani</w>\": 46489,\n  \"bis\": 5064,\n  \"bis</w>\": 14461,\n  \"biscu\": 11532,\n  \"biscuit</w>\": 18731,\n  \"biscuits</w>\": 18248,\n  \"bisexual</w>\": 36829,\n  \"bish\": 33690,\n  \"bish</w>\": 31461,\n  \"bishop\": 20625,\n  \"bishop</w>\": 8024,\n  \"bishops</w>\": 31579,\n  \"bison</w>\": 19741,\n  \"bistro</w>\": 21770,\n  \"bit\": 3010,\n  \"bit</w>\": 2010,\n  \"bitcoin\": 30848,\n  \"bitcoin</w>\": 6366,\n  \"bite</w>\": 41613,\n  \"biting</w>\": 23016,\n  \"bits</w>\": 7747,\n  \"bitt</w>\": 39251,\n  \"bius</w>\": 45525,\n  \"bix\": 46579,\n  \"biz\": 8212,\n  \"biz</w>\": 5431,\n  \"biza</w>\": 47013,\n  \"bizar\": 14886,\n  \"bizarre</w>\": 16965,\n  \"bizhour</w>\": 39462,\n  \"bizitalk</w>\": 34929,\n  \"bj\": 4592,\n  \"bj</w>\": 18229,\n  \"bjj</w>\": 27437,\n  \"bjor\": 26525,\n  \"bjp\": 37264,\n  \"bjp</w>\": 6178,\n  \"bk\": 15099,\n  \"bk</w>\": 14083,\n  \"bkk</w>\": 36433,\n  \"bl\": 833,\n  \"bl</w>\": 9467,\n  \"bla\": 2205,\n  \"bla</w>\": 19630,\n  \"blac\": 21008,\n  \"black\": 2025,\n  \"black</w>\": 1449,\n  \"blackand\": 12809,\n  \"blackandwhite\": 23688,\n  \"blackandwhite</w>\": 19506,\n  \"blackandwhitephotography</w>\": 27544,\n  \"blackberry</w>\": 16470,\n  \"blackbird</w>\": 38526,\n  \"blackburn</w>\": 23789,\n  \"blackfish</w>\": 42193,\n  \"blackfriday</w>\": 16445,\n  \"blackgirl\": 43591,\n  \"blackhawks</w>\": 19203,\n  \"blackhistory</w>\": 46982,\n  \"blackhistorymonth</w>\": 20135,\n  \"blacklist</w>\": 30295,\n  \"blacklivesmatter</w>\": 23467,\n  \"blackmail</w>\": 47295,\n  \"blackops</w>\": 43519,\n  \"blackout</w>\": 21733,\n  \"blackpanther</w>\": 36592,\n  \"blackpink</w>\": 20339,\n  \"blackpool</w>\": 21031,\n  \"blacks</w>\": 16351,\n  \"blackwell</w>\": 42642,\n  \"blad</w>\": 36635,\n  \"bladder</w>\": 33593,\n  \"blade</w>\": 10264,\n  \"blades</w>\": 16893,\n  \"blah</w>\": 29212,\n  \"blaine</w>\": 32457,\n  \"blair\": 31824,\n  \"blair</w>\": 14749,\n  \"blake\": 20229,\n  \"blake</w>\": 9579,\n  \"blame</w>\": 10695,\n  \"blamed</w>\": 32906,\n  \"blames</w>\": 27841,\n  \"blaming</w>\": 29287,\n  \"blan\": 4609,\n  \"blanc\": 30936,\n  \"blanc</w>\": 13301,\n  \"blanca</w>\": 40670,\n  \"blanchard</w>\": 40177,\n  \"blanche</w>\": 34875,\n  \"blanchett</w>\": 49378,\n  \"blanco</w>\": 26801,\n  \"bland\": 44372,\n  \"bland</w>\": 30799,\n  \"blank</w>\": 15134,\n  \"blanket</w>\": 12878,\n  \"blankets</w>\": 24042,\n  \"blanks</w>\": 48599,\n  \"blasio</w>\": 35553,\n  \"blasphe\": 36622,\n  \"blast\": 46349,\n  \"blast</w>\": 5964,\n  \"blasted</w>\": 38976,\n  \"blaster</w>\": 36341,\n  \"blasting</w>\": 26178,\n  \"blasts</w>\": 23067,\n  \"blat\": 22048,\n  \"blatant</w>\": 41391,\n  \"blatt</w>\": 39138,\n  \"blau\": 45307,\n  \"blaz\": 43413,\n  \"blaze</w>\": 15497,\n  \"blazer</w>\": 17606,\n  \"blazers</w>\": 16984,\n  \"blazing</w>\": 25267,\n  \"bldg</w>\": 22981,\n  \"ble\": 1447,\n  \"ble</w>\": 1059,\n  \"bleach</w>\": 27034,\n  \"bleak</w>\": 40355,\n  \"bled</w>\": 12006,\n  \"bleed\": 23027,\n  \"bleed</w>\": 24791,\n  \"bleedblue</w>\": 39160,\n  \"bleeding</w>\": 20311,\n  \"bleeds</w>\": 47339,\n  \"blen\": 25651,\n  \"blend</w>\": 10780,\n  \"blended</w>\": 25813,\n  \"blender</w>\": 25066,\n  \"blending</w>\": 34307,\n  \"blends</w>\": 28572,\n  \"bler\": 31305,\n  \"bler</w>\": 11979,\n  \"blers</w>\": 26930,\n  \"bles</w>\": 5763,\n  \"bless\": 9640,\n  \"bless</w>\": 5387,\n  \"blessed</w>\": 4411,\n  \"blessing</w>\": 10729,\n  \"blessings</w>\": 11185,\n  \"bleu</w>\": 30114,\n  \"blew</w>\": 18176,\n  \"bley</w>\": 43176,\n  \"bli\": 1450,\n  \"bli</w>\": 28051,\n  \"blin\": 9678,\n  \"blin</w>\": 5406,\n  \"blind\": 17248,\n  \"blind</w>\": 8351,\n  \"blinded</w>\": 49149,\n  \"blindness</w>\": 38812,\n  \"blinds</w>\": 32449,\n  \"bling\": 39764,\n  \"bling</w>\": 7097,\n  \"blink</w>\": 18976,\n  \"bliss\": 28531,\n  \"bliss</w>\": 12893,\n  \"blissful</w>\": 42145,\n  \"blit\": 39327,\n  \"blitz\": 42151,\n  \"blitz</w>\": 17548,\n  \"blizz\": 13075,\n  \"blizzard</w>\": 16111,\n  \"blk\": 42950,\n  \"blk</w>\": 22872,\n  \"blm</w>\": 30957,\n  \"bln</w>\": 47348,\n  \"blo\": 1204,\n  \"blo</w>\": 25505,\n  \"blob</w>\": 49312,\n  \"bloc</w>\": 30961,\n  \"block\": 4638,\n  \"block</w>\": 4593,\n  \"blockade</w>\": 33489,\n  \"blockbuster</w>\": 19939,\n  \"blockchain</w>\": 6653,\n  \"blocked</w>\": 9106,\n  \"blocker</w>\": 44767,\n  \"blocking</w>\": 12652,\n  \"blocks</w>\": 10113,\n  \"blog\": 16376,\n  \"blog</w>\": 2589,\n  \"blogg\": 33282,\n  \"blogged</w>\": 41380,\n  \"blogger\": 21352,\n  \"blogger</w>\": 7806,\n  \"bloggerrt</w>\": 48898,\n  \"bloggers</w>\": 11627,\n  \"blogging</w>\": 18090,\n  \"blogpost</w>\": 41842,\n  \"blogs</w>\": 16682,\n  \"bloke</w>\": 24384,\n  \"blom\": 48996,\n  \"blon\": 7958,\n  \"blond</w>\": 32426,\n  \"blonde</w>\": 10711,\n  \"blondes</w>\": 45130,\n  \"blondie</w>\": 39236,\n  \"bloo\": 2373,\n  \"blood\": 9231,\n  \"blood</w>\": 3590,\n  \"blooded</w>\": 41946,\n  \"bloodh\": 48480,\n  \"bloods</w>\": 39539,\n  \"bloody\": 38568,\n  \"bloody</w>\": 9468,\n  \"bloom\": 7311,\n  \"bloom</w>\": 10257,\n  \"bloomberg\": 43109,\n  \"bloomberg</w>\": 21238,\n  \"bloomfield</w>\": 40342,\n  \"blooming\": 45175,\n  \"blooming</w>\": 19266,\n  \"bloomington</w>\": 34731,\n  \"blooms</w>\": 21439,\n  \"bloss\": 10017,\n  \"blossom</w>\": 14472,\n  \"blossoms</w>\": 21916,\n  \"blot</w>\": 41710,\n  \"blou\": 44506,\n  \"blouse</w>\": 23525,\n  \"blow\": 15230,\n  \"blow</w>\": 10211,\n  \"blower</w>\": 25832,\n  \"blowing</w>\": 12087,\n  \"blown</w>\": 11848,\n  \"blowout</w>\": 34857,\n  \"blows</w>\": 21063,\n  \"blr</w>\": 47250,\n  \"bls</w>\": 39458,\n  \"blu\": 1263,\n  \"blu</w>\": 10273,\n  \"blue\": 3829,\n  \"blue</w>\": 1746,\n  \"bluebells</w>\": 47150,\n  \"blueberries</w>\": 29551,\n  \"blueberry</w>\": 18251,\n  \"bluebird</w>\": 40747,\n  \"bluec\": 43194,\n  \"bluef\": 41174,\n  \"bluegrass</w>\": 26241,\n  \"bluejays</w>\": 18684,\n  \"blueprint</w>\": 30594,\n  \"blues\": 17566,\n  \"blues</w>\": 5159,\n  \"blueslyrix</w>\": 47068,\n  \"bluet\": 13469,\n  \"bluetooth</w>\": 14052,\n  \"bluewave</w>\": 40025,\n  \"bluff</w>\": 27232,\n  \"bluffs</w>\": 48844,\n  \"blum</w>\": 34818,\n  \"blumen\": 38714,\n  \"blun\": 34472,\n  \"blunt</w>\": 19305,\n  \"blur\": 12102,\n  \"blur</w>\": 27976,\n  \"bluray</w>\": 36818,\n  \"blurred</w>\": 38013,\n  \"blurry</w>\": 21977,\n  \"blush</w>\": 22889,\n  \"blvd</w>\": 12578,\n  \"bly\": 20930,\n  \"bly</w>\": 4426,\n  \"bm\": 4773,\n  \"bm</w>\": 15916,\n  \"bma</w>\": 42573,\n  \"bmc</w>\": 27807,\n  \"bmi</w>\": 40642,\n  \"bmo</w>\": 39083,\n  \"bms</w>\": 34074,\n  \"bmw\": 26637,\n  \"bmw</w>\": 7869,\n  \"bmx</w>\": 22535,\n  \"bn\": 10496,\n  \"bn</w>\": 7992,\n  \"bnb</w>\": 20010,\n  \"bnha</w>\": 49336,\n  \"bnp</w>\": 47910,\n  \"bnw</w>\": 35903,\n  \"bo\": 647,\n  \"bo</w>\": 2525,\n  \"boa</w>\": 14732,\n  \"boar\": 7837,\n  \"boar</w>\": 35473,\n  \"board\": 10419,\n  \"board</w>\": 1972,\n  \"boarded</w>\": 43052,\n  \"boarder</w>\": 37414,\n  \"boardgame</w>\": 47829,\n  \"boardgames</w>\": 32646,\n  \"boarding</w>\": 10086,\n  \"boardroom</w>\": 47937,\n  \"boards</w>\": 7963,\n  \"boardwalk</w>\": 29043,\n  \"boast</w>\": 44467,\n  \"boasts</w>\": 30309,\n  \"boat\": 12426,\n  \"boat</w>\": 4440,\n  \"boath\": 45461,\n  \"boating</w>\": 21951,\n  \"boats</w>\": 10080,\n  \"boatsales</w>\": 46244,\n  \"bob\": 8444,\n  \"bob</w>\": 4423,\n  \"boba</w>\": 39948,\n  \"bobb\": 16891,\n  \"bobble</w>\": 38796,\n  \"bobblehead</w>\": 33451,\n  \"bobby\": 17847,\n  \"bobby</w>\": 7816,\n  \"bobc\": 26153,\n  \"bobcat</w>\": 37896,\n  \"bobcats</w>\": 27568,\n  \"bobo</w>\": 38939,\n  \"bobs</w>\": 45533,\n  \"boc\": 27307,\n  \"boc</w>\": 39042,\n  \"boca</w>\": 26094,\n  \"bock</w>\": 24961,\n  \"bod\": 17904,\n  \"bod</w>\": 26340,\n  \"boda</w>\": 42030,\n  \"bode\": 28452,\n  \"bode</w>\": 40429,\n  \"bodega</w>\": 47350,\n  \"bodied</w>\": 36892,\n  \"bodies</w>\": 9799,\n  \"bodily</w>\": 49119,\n  \"body\": 7132,\n  \"body</w>\": 1774,\n  \"bodybuilding</w>\": 24538,\n  \"bodyguard</w>\": 35565,\n  \"boe\": 23476,\n  \"boe</w>\": 21773,\n  \"boeh\": 38002,\n  \"boehner</w>\": 44599,\n  \"boeing\": 48135,\n  \"boeing</w>\": 11857,\n  \"boer\": 44889,\n  \"boer</w>\": 40768,\n  \"bog\": 23426,\n  \"bog</w>\": 28318,\n  \"bogo</w>\": 35769,\n  \"bogota</w>\": 47059,\n  \"bogus</w>\": 42907,\n  \"boh\": 43238,\n  \"bohe\": 40541,\n  \"bohemi\": 21552,\n  \"bohemian</w>\": 25753,\n  \"boho</w>\": 25444,\n  \"boi\": 37129,\n  \"boi</w>\": 12673,\n  \"boil</w>\": 31332,\n  \"boiled</w>\": 23886,\n  \"boiler\": 28212,\n  \"boiler</w>\": 25615,\n  \"boiling</w>\": 32019,\n  \"bois\": 47742,\n  \"bois</w>\": 21640,\n  \"boise</w>\": 23304,\n  \"bok\": 26671,\n  \"bok</w>\": 15289,\n  \"boko</w>\": 30929,\n  \"boks</w>\": 40216,\n  \"bol\": 2860,\n  \"bol</w>\": 8413,\n  \"bola</w>\": 12840,\n  \"bold\": 26975,\n  \"bold</w>\": 8911,\n  \"boldand\": 48413,\n  \"boldly</w>\": 44778,\n  \"boli\": 12722,\n  \"bolic</w>\": 27343,\n  \"bolivia</w>\": 28628,\n  \"bollah</w>\": 36336,\n  \"bolly\": 25302,\n  \"bollywood\": 32448,\n  \"bollywood</w>\": 9604,\n  \"bolo</w>\": 40236,\n  \"bolog\": 22818,\n  \"bologna</w>\": 27513,\n  \"bolster</w>\": 47304,\n  \"bolt</w>\": 13131,\n  \"bolton\": 48757,\n  \"bolton</w>\": 16598,\n  \"bolts</w>\": 26028,\n  \"bom\": 3012,\n  \"bom</w>\": 19469,\n  \"bomb\": 18091,\n  \"bomb</w>\": 6331,\n  \"bombar\": 25544,\n  \"bombardier</w>\": 42700,\n  \"bombay\": 48602,\n  \"bombay</w>\": 23890,\n  \"bombed</w>\": 24542,\n  \"bomber</w>\": 15436,\n  \"bombers</w>\": 21786,\n  \"bombing</w>\": 14475,\n  \"bombings</w>\": 43236,\n  \"bombs</w>\": 14410,\n  \"bombshell</w>\": 36340,\n  \"bon\": 1871,\n  \"bon</w>\": 4216,\n  \"bona</w>\": 33342,\n  \"bonanza</w>\": 40304,\n  \"bond\": 37022,\n  \"bond</w>\": 6826,\n  \"bonded</w>\": 37390,\n  \"bondi</w>\": 40092,\n  \"bonding</w>\": 19609,\n  \"bonds</w>\": 15786,\n  \"bone\": 22502,\n  \"bone</w>\": 6195,\n  \"bones</w>\": 9476,\n  \"bonfire</w>\": 23151,\n  \"bongo</w>\": 47519,\n  \"boni\": 32269,\n  \"boni</w>\": 46356,\n  \"bonita</w>\": 42896,\n  \"bonjour</w>\": 33176,\n  \"bonkers</w>\": 39865,\n  \"bonn</w>\": 38969,\n  \"bonnar\": 47191,\n  \"bonnaroo</w>\": 48777,\n  \"bonne</w>\": 25844,\n  \"bonnet</w>\": 30636,\n  \"bonnie</w>\": 18555,\n  \"bono</w>\": 24476,\n  \"bons</w>\": 42883,\n  \"bonsai</w>\": 44129,\n  \"bonus</w>\": 8164,\n  \"bonuses</w>\": 35144,\n  \"boo\": 824,\n  \"boo</w>\": 7317,\n  \"boogie</w>\": 22639,\n  \"book\": 2828,\n  \"book</w>\": 1116,\n  \"bookboost</w>\": 31257,\n  \"bookclub</w>\": 34438,\n  \"bookday</w>\": 26327,\n  \"booked</w>\": 12584,\n  \"booker</w>\": 21302,\n  \"bookfest</w>\": 39381,\n  \"booking</w>\": 10145,\n  \"bookings</w>\": 18345,\n  \"booklet</w>\": 27405,\n  \"bookmark</w>\": 33596,\n  \"bookof\": 45629,\n  \"bookreview</w>\": 27362,\n  \"books\": 44382,\n  \"books</w>\": 2161,\n  \"bookshelf</w>\": 34821,\n  \"bookshop</w>\": 24705,\n  \"bookstore</w>\": 17999,\n  \"bookstores</w>\": 46416,\n  \"bookworm</w>\": 20743,\n  \"boom\": 9609,\n  \"boom</w>\": 7121,\n  \"boomer\": 33819,\n  \"boomer</w>\": 31766,\n  \"boomers</w>\": 37988,\n  \"booming</w>\": 33487,\n  \"boon\": 24979,\n  \"boon</w>\": 35821,\n  \"boone</w>\": 23453,\n  \"boop</w>\": 45047,\n  \"boost\": 44639,\n  \"boost</w>\": 6260,\n  \"boosted</w>\": 37631,\n  \"booster</w>\": 20877,\n  \"boosters</w>\": 46859,\n  \"boosting</w>\": 28480,\n  \"boosts</w>\": 29247,\n  \"boot\": 10843,\n  \"boot</w>\": 8087,\n  \"bootcamp</w>\": 22051,\n  \"booted</w>\": 42564,\n  \"booth\": 47895,\n  \"booth</w>\": 3971,\n  \"booths</w>\": 32653,\n  \"booties</w>\": 46188,\n  \"bootleg</w>\": 38139,\n  \"boots</w>\": 7319,\n  \"booze</w>\": 24341,\n  \"bop</w>\": 19720,\n  \"bor\": 1141,\n  \"bor</w>\": 15093,\n  \"bora</w>\": 24736,\n  \"bord</w>\": 36891,\n  \"bordeaux</w>\": 22009,\n  \"border\": 16304,\n  \"border</w>\": 6177,\n  \"borderlands</w>\": 38676,\n  \"borders</w>\": 13900,\n  \"bore\": 14084,\n  \"bore</w>\": 24638,\n  \"bored</w>\": 8933,\n  \"boredom</w>\": 31460,\n  \"boretum</w>\": 38902,\n  \"borg</w>\": 14770,\n  \"borgh\": 17180,\n  \"boring</w>\": 12519,\n  \"boris\": 31212,\n  \"boris</w>\": 15704,\n  \"borisjohnson</w>\": 44481,\n  \"born\": 17695,\n  \"born</w>\": 2683,\n  \"borne\": 42910,\n  \"borne</w>\": 9328,\n  \"borneo</w>\": 33332,\n  \"bornon\": 41811,\n  \"bornonthisday</w>\": 42757,\n  \"boro\": 26796,\n  \"boro</w>\": 7974,\n  \"borough\": 22761,\n  \"borough</w>\": 6203,\n  \"borrow</w>\": 22293,\n  \"borrowed</w>\": 28224,\n  \"borrowing</w>\": 41045,\n  \"borussia</w>\": 36764,\n  \"bos\": 14885,\n  \"bos</w>\": 9644,\n  \"bosa</w>\": 46946,\n  \"bosch\": 42009,\n  \"bosch</w>\": 19466,\n  \"bosco</w>\": 36960,\n  \"bose</w>\": 23142,\n  \"bosh</w>\": 42244,\n  \"bosni\": 42924,\n  \"bosnia</w>\": 31396,\n  \"boss\": 17935,\n  \"boss</w>\": 4206,\n  \"bosses</w>\": 23906,\n  \"boston\": 11540,\n  \"boston</w>\": 4399,\n  \"bostonmarathon</w>\": 44533,\n  \"bot\": 4136,\n  \"bot</w>\": 6947,\n  \"botan\": 12554,\n  \"botanic</w>\": 32560,\n  \"botanical</w>\": 21026,\n  \"botany</w>\": 22612,\n  \"botd</w>\": 34451,\n  \"both\": 36575,\n  \"both</w>\": 2212,\n  \"bother</w>\": 21125,\n  \"bothered</w>\": 27997,\n  \"botox</w>\": 43449,\n  \"bots</w>\": 13721,\n  \"botswana</w>\": 27584,\n  \"bott\": 3520,\n  \"bott</w>\": 37225,\n  \"bottle\": 37306,\n  \"bottle</w>\": 5392,\n  \"bottled</w>\": 29331,\n  \"bottlen\": 46439,\n  \"bottles</w>\": 9754,\n  \"bottling</w>\": 42006,\n  \"bottom\": 32314,\n  \"bottom</w>\": 5931,\n  \"bottoms</w>\": 31524,\n  \"bou\": 3728,\n  \"bou</w>\": 23165,\n  \"bouchard</w>\": 47930,\n  \"boudo\": 48827,\n  \"bought</w>\": 4142,\n  \"boul\": 24830,\n  \"boulder</w>\": 18260,\n  \"boule\": 17652,\n  \"boulevard</w>\": 19504,\n  \"boun\": 5993,\n  \"bounce</w>\": 14316,\n  \"bouncing</w>\": 32060,\n  \"bouncy</w>\": 43415,\n  \"bound\": 15140,\n  \"bound</w>\": 4567,\n  \"boundaries</w>\": 18690,\n  \"boundary</w>\": 21344,\n  \"bounds</w>\": 37469,\n  \"bounty</w>\": 21142,\n  \"bouquet</w>\": 20961,\n  \"bour\": 2934,\n  \"bour</w>\": 35486,\n  \"bourbon\": 48118,\n  \"bourbon</w>\": 14652,\n  \"bourdain</w>\": 48095,\n  \"bourg</w>\": 20690,\n  \"bourgeo\": 45672,\n  \"bourn</w>\": 39143,\n  \"bourne\": 13789,\n  \"bourne</w>\": 5192,\n  \"bournemouth</w>\": 20911,\n  \"bout\": 19982,\n  \"bout</w>\": 8123,\n  \"bouti\": 10926,\n  \"boutique</w>\": 12179,\n  \"bow\": 2297,\n  \"bow</w>\": 4040,\n  \"bowden</w>\": 48538,\n  \"bowed</w>\": 49130,\n  \"bowel</w>\": 36880,\n  \"bowen</w>\": 25368,\n  \"bower</w>\": 40414,\n  \"bowers</w>\": 42238,\n  \"bowie</w>\": 13036,\n  \"bowing</w>\": 46398,\n  \"bowl\": 26719,\n  \"bowl</w>\": 3814,\n  \"bowled</w>\": 39987,\n  \"bowler</w>\": 25528,\n  \"bowlers</w>\": 42632,\n  \"bowles</w>\": 41611,\n  \"bowling</w>\": 10390,\n  \"bowls</w>\": 17787,\n  \"bowman</w>\": 22052,\n  \"bows</w>\": 17000,\n  \"bowser</w>\": 38234,\n  \"bowski</w>\": 48311,\n  \"box\": 2774,\n  \"box</w>\": 2063,\n  \"boxed</w>\": 24190,\n  \"boxer\": 40394,\n  \"boxer</w>\": 15363,\n  \"boxers</w>\": 31019,\n  \"boxes</w>\": 8350,\n  \"boxing\": 33669,\n  \"boxing</w>\": 5554,\n  \"boy\": 2927,\n  \"boy</w>\": 1876,\n  \"boyband</w>\": 31568,\n  \"boyce</w>\": 44480,\n  \"boycot\": 46208,\n  \"boycott\": 31615,\n  \"boycott</w>\": 19559,\n  \"boyd</w>\": 18295,\n  \"boyfriend</w>\": 7328,\n  \"boyfriends</w>\": 36541,\n  \"boyle</w>\": 22802,\n  \"boys\": 25223,\n  \"boys</w>\": 2034,\n  \"boyz</w>\": 16152,\n  \"bp\": 23410,\n  \"bp</w>\": 11558,\n  \"bpa</w>\": 43855,\n  \"bpd</w>\": 48587,\n  \"bpl</w>\": 28901,\n  \"bpm</w>\": 40338,\n  \"bps</w>\": 37794,\n  \"br\": 711,\n  \"br</w>\": 7532,\n  \"bra\": 1195,\n  \"bra</w>\": 5860,\n  \"brac\": 6663,\n  \"brace\": 8376,\n  \"brace</w>\": 9183,\n  \"bracelet</w>\": 8969,\n  \"bracelets</w>\": 20027,\n  \"braces</w>\": 19249,\n  \"brack\": 25676,\n  \"bracket</w>\": 14780,\n  \"brackets</w>\": 36183,\n  \"brad\": 4848,\n  \"brad</w>\": 9405,\n  \"bradbury</w>\": 45097,\n  \"braden</w>\": 46842,\n  \"bradford</w>\": 15062,\n  \"bradley\": 31905,\n  \"bradley</w>\": 10952,\n  \"brador</w>\": 24062,\n  \"bradshaw</w>\": 37556,\n  \"brady\": 42494,\n  \"brady</w>\": 11117,\n  \"brae\": 42874,\n  \"brae</w>\": 40040,\n  \"brag</w>\": 30110,\n  \"bragg</w>\": 38545,\n  \"bragging</w>\": 38199,\n  \"brah\": 20276,\n  \"brahms</w>\": 45114,\n  \"brai\": 25048,\n  \"braid</w>\": 31067,\n  \"braided</w>\": 39997,\n  \"braids</w>\": 34221,\n  \"brain\": 9454,\n  \"brain</w>\": 4812,\n  \"brains</w>\": 17129,\n  \"brainstorming</w>\": 36607,\n  \"braised</w>\": 28363,\n  \"brake</w>\": 14937,\n  \"brakes</w>\": 23456,\n  \"bral</w>\": 31309,\n  \"bram\": 14815,\n  \"bram</w>\": 39456,\n  \"brampton</w>\": 35124,\n  \"bran\": 3684,\n  \"bran</w>\": 28348,\n  \"brance\": 36072,\n  \"brance</w>\": 15413,\n  \"branch</w>\": 7998,\n  \"branches</w>\": 15843,\n  \"brand\": 3910,\n  \"brand</w>\": 2896,\n  \"branded</w>\": 18097,\n  \"brandi</w>\": 41003,\n  \"branding</w>\": 10841,\n  \"brando</w>\": 41892,\n  \"brandon\": 20423,\n  \"brandon</w>\": 9166,\n  \"brands</w>\": 8681,\n  \"brandt</w>\": 22552,\n  \"brandy</w>\": 26232,\n  \"brane</w>\": 32340,\n  \"branson</w>\": 28280,\n  \"brant\": 28951,\n  \"brant</w>\": 47592,\n  \"braries</w>\": 46377,\n  \"brary</w>\": 24520,\n  \"bras</w>\": 22611,\n  \"brasil</w>\": 18991,\n  \"brass\": 24348,\n  \"brass</w>\": 11655,\n  \"brat\": 26717,\n  \"brat</w>\": 26631,\n  \"brate</w>\": 41864,\n  \"braun\": 39129,\n  \"braun</w>\": 29309,\n  \"brave\": 25461,\n  \"brave</w>\": 7769,\n  \"braved</w>\": 47663,\n  \"bravely</w>\": 42303,\n  \"bravery</w>\": 25831,\n  \"braves</w>\": 14422,\n  \"braving</w>\": 43258,\n  \"bravo\": 38613,\n  \"bravo</w>\": 13006,\n  \"braw\": 37871,\n  \"brawl</w>\": 26066,\n  \"braxton</w>\": 37451,\n  \"bray\": 26256,\n  \"bray</w>\": 22993,\n  \"braz\": 4625,\n  \"brazil\": 47459,\n  \"brazil</w>\": 6305,\n  \"brazili\": 45697,\n  \"brazilian</w>\": 12111,\n  \"brb</w>\": 25316,\n  \"brc</w>\": 40393,\n  \"bre\": 887,\n  \"bre</w>\": 7782,\n  \"brea\": 7318,\n  \"brea</w>\": 46538,\n  \"breach</w>\": 21363,\n  \"breaches</w>\": 45173,\n  \"bread\": 18886,\n  \"bread</w>\": 5066,\n  \"breads</w>\": 43064,\n  \"break\": 2206,\n  \"break</w>\": 2568,\n  \"breakable</w>\": 30691,\n  \"breakaway</w>\": 42732,\n  \"breakdown</w>\": 14519,\n  \"breaker</w>\": 14814,\n  \"breakers</w>\": 22270,\n  \"breakfa\": 45931,\n  \"breakfast\": 30210,\n  \"breakfast</w>\": 3290,\n  \"breaking\": 14698,\n  \"breaking</w>\": 2755,\n  \"breakingbad</w>\": 38032,\n  \"breakingnews</w>\": 23837,\n  \"breakout</w>\": 16752,\n  \"breaks</w>\": 7263,\n  \"breakthrough</w>\": 18802,\n  \"breakup</w>\": 38931,\n  \"breast\": 12930,\n  \"breast</w>\": 9475,\n  \"breastcancer\": 40813,\n  \"breastcancer</w>\": 30065,\n  \"breastfeeding</w>\": 29033,\n  \"breasts</w>\": 37637,\n  \"breath\": 9508,\n  \"breath</w>\": 9576,\n  \"breathe</w>\": 11364,\n  \"breathing</w>\": 14959,\n  \"breathtaking</w>\": 14709,\n  \"brecht</w>\": 34622,\n  \"breck\": 44598,\n  \"bred\": 46929,\n  \"bred</w>\": 16008,\n  \"bree\": 7892,\n  \"bree</w>\": 37138,\n  \"breed\": 28030,\n  \"breed</w>\": 13791,\n  \"breeders</w>\": 37472,\n  \"breeding</w>\": 16544,\n  \"breeds</w>\": 29021,\n  \"breen</w>\": 48013,\n  \"brees</w>\": 46721,\n  \"breeze</w>\": 13125,\n  \"breezy</w>\": 21451,\n  \"breit\": 23864,\n  \"breitbart</w>\": 37926,\n  \"brek\": 35494,\n  \"bremen</w>\": 39861,\n  \"bren\": 5209,\n  \"brenda</w>\": 23786,\n  \"brendan\": 35134,\n  \"brendan</w>\": 15414,\n  \"brendon</w>\": 36756,\n  \"brennan</w>\": 22372,\n  \"brenner</w>\": 42941,\n  \"brent\": 31439,\n  \"brent</w>\": 16355,\n  \"brentwood</w>\": 33108,\n  \"brero</w>\": 47781,\n  \"bres</w>\": 32561,\n  \"bret\": 38020,\n  \"bret</w>\": 32548,\n  \"brethren</w>\": 43134,\n  \"breton</w>\": 32290,\n  \"brett\": 22591,\n  \"brett</w>\": 12394,\n  \"brev</w>\": 42882,\n  \"brevi\": 39475,\n  \"brew\": 5048,\n  \"brew</w>\": 7253,\n  \"brewco</w>\": 33582,\n  \"brewed</w>\": 23238,\n  \"brewer</w>\": 20756,\n  \"breweries</w>\": 35277,\n  \"brewers</w>\": 17618,\n  \"brewery</w>\": 8850,\n  \"brewing</w>\": 8275,\n  \"brewingco</w>\": 45155,\n  \"brews</w>\": 21663,\n  \"brewster</w>\": 40274,\n  \"brex\": 22726,\n  \"brexit\": 27666,\n  \"brexit</w>\": 5801,\n  \"brgy</w>\": 35983,\n  \"bri\": 1036,\n  \"bri</w>\": 18636,\n  \"bria</w>\": 35890,\n  \"brian\": 9824,\n  \"brian</w>\": 4989,\n  \"brianna</w>\": 32308,\n  \"briar</w>\": 46119,\n  \"bribe</w>\": 40042,\n  \"bribery</w>\": 41792,\n  \"bric\": 27055,\n  \"brice</w>\": 40190,\n  \"brick\": 13937,\n  \"brick</w>\": 9518,\n  \"bricks</w>\": 21029,\n  \"brics</w>\": 48196,\n  \"brid\": 16995,\n  \"bridal\": 36875,\n  \"bridal</w>\": 14284,\n  \"bride\": 18342,\n  \"bride</w>\": 8964,\n  \"brides</w>\": 18067,\n  \"bridesma\": 28356,\n  \"bridesmaid</w>\": 43399,\n  \"bridesmaids</w>\": 47754,\n  \"bridg\": 20623,\n  \"bridge\": 8647,\n  \"bridge</w>\": 2465,\n  \"bridgeport</w>\": 45201,\n  \"bridges</w>\": 11811,\n  \"bridget</w>\": 27073,\n  \"bridgewater</w>\": 38732,\n  \"bridging</w>\": 38109,\n  \"brie</w>\": 26622,\n  \"brief\": 9435,\n  \"brief</w>\": 8954,\n  \"briefed</w>\": 47326,\n  \"briefing</w>\": 12991,\n  \"briefly</w>\": 26980,\n  \"briefs</w>\": 29557,\n  \"brien</w>\": 13504,\n  \"brier</w>\": 43995,\n  \"brig\": 11081,\n  \"briga\": 46448,\n  \"brigade</w>\": 16032,\n  \"briggs</w>\": 28108,\n  \"brigh\": 6710,\n  \"bright\": 10383,\n  \"bright</w>\": 4852,\n  \"brighten</w>\": 18208,\n  \"brightening</w>\": 43929,\n  \"brighter</w>\": 18507,\n  \"brightest</w>\": 26159,\n  \"brightly</w>\": 36298,\n  \"brightness</w>\": 42280,\n  \"brighton\": 28416,\n  \"brighton</w>\": 9470,\n  \"brigitte</w>\": 44421,\n  \"brill\": 27342,\n  \"brill</w>\": 28601,\n  \"brilli\": 3821,\n  \"brilliance</w>\": 28146,\n  \"brilliant</w>\": 4106,\n  \"brilliantly</w>\": 26803,\n  \"brin\": 25620,\n  \"bring\": 11596,\n  \"bring</w>\": 2430,\n  \"bringback\": 28969,\n  \"bringbackour\": 45403,\n  \"bringing</w>\": 4777,\n  \"brings</w>\": 5138,\n  \"brink\": 39296,\n  \"brink</w>\": 28796,\n  \"brioche</w>\": 45818,\n  \"bris\": 9385,\n  \"bris</w>\": 15783,\n  \"brisban\": 30431,\n  \"brisbane\": 42932,\n  \"brisbane</w>\": 12407,\n  \"brisk</w>\": 43646,\n  \"brisket</w>\": 31920,\n  \"bristol\": 18159,\n  \"bristol</w>\": 8010,\n  \"brit\": 2318,\n  \"brit</w>\": 20066,\n  \"britain\": 40802,\n  \"britain</w>\": 6272,\n  \"britanni\": 31373,\n  \"britannia</w>\": 36188,\n  \"brite</w>\": 33827,\n  \"briti\": 8155,\n  \"british\": 8651,\n  \"british</w>\": 3504,\n  \"britishmuseum</w>\": 41858,\n  \"britney\": 37192,\n  \"britney</w>\": 21853,\n  \"britneyspears</w>\": 42990,\n  \"brits</w>\": 21832,\n  \"britt\": 10811,\n  \"britt</w>\": 25976,\n  \"brittany\": 38187,\n  \"brittany</w>\": 18818,\n  \"britton</w>\": 37422,\n  \"brium</w>\": 46079,\n  \"brixton</w>\": 30056,\n  \"bro\": 927,\n  \"bro</w>\": 4410,\n  \"broad\": 3491,\n  \"broad</w>\": 12623,\n  \"broadband</w>\": 21050,\n  \"broadcast</w>\": 8967,\n  \"broadcaster</w>\": 29005,\n  \"broadcasting</w>\": 14403,\n  \"broadcasts</w>\": 46742,\n  \"broader</w>\": 36029,\n  \"broadway\": 34599,\n  \"broadway</w>\": 9092,\n  \"broc\": 15587,\n  \"broccoli</w>\": 19094,\n  \"broch\": 21419,\n  \"brochure</w>\": 25275,\n  \"brock\": 14841,\n  \"brock</w>\": 16745,\n  \"brodie</w>\": 42150,\n  \"brody</w>\": 29608,\n  \"broke\": 42165,\n  \"broke</w>\": 6509,\n  \"broken\": 26126,\n  \"broken</w>\": 5107,\n  \"broker\": 34032,\n  \"broker</w>\": 20449,\n  \"brokerage</w>\": 41327,\n  \"brokers</w>\": 28271,\n  \"brom\": 18972,\n  \"brom</w>\": 33296,\n  \"bromance</w>\": 35353,\n  \"bromley</w>\": 35715,\n  \"bron\": 4011,\n  \"bron</w>\": 10243,\n  \"bronco\": 43488,\n  \"bronco</w>\": 34370,\n  \"broncos</w>\": 12516,\n  \"bronson</w>\": 37042,\n  \"bronte</w>\": 48936,\n  \"bronx\": 48310,\n  \"bronx</w>\": 17183,\n  \"brony</w>\": 21084,\n  \"bronze</w>\": 8459,\n  \"broo\": 5204,\n  \"brooch</w>\": 21207,\n  \"brook\": 4782,\n  \"brook</w>\": 7322,\n  \"brooke\": 28576,\n  \"brooke</w>\": 12549,\n  \"brookes</w>\": 39707,\n  \"brooklyn\": 23253,\n  \"brooklyn</w>\": 6983,\n  \"brooks\": 42779,\n  \"brooks</w>\": 9991,\n  \"broom\": 32046,\n  \"broom</w>\": 28008,\n  \"broome</w>\": 49335,\n  \"bros</w>\": 7776,\n  \"broth</w>\": 29994,\n  \"brotha</w>\": 33974,\n  \"brother\": 12697,\n  \"brother</w>\": 3157,\n  \"brotherhood</w>\": 19059,\n  \"brothers</w>\": 4548,\n  \"brou\": 27874,\n  \"brough</w>\": 21033,\n  \"brought</w>\": 4222,\n  \"brov\": 42881,\n  \"brow\": 6547,\n  \"brow</w>\": 15895,\n  \"broward</w>\": 34719,\n  \"brown\": 6315,\n  \"brown</w>\": 2866,\n  \"browne</w>\": 28440,\n  \"brownie</w>\": 23045,\n  \"brownies</w>\": 22312,\n  \"browning</w>\": 32241,\n  \"browns</w>\": 14051,\n  \"brows</w>\": 14998,\n  \"browse</w>\": 19060,\n  \"browser</w>\": 19768,\n  \"browsing</w>\": 29318,\n  \"brox</w>\": 43539,\n  \"brs</w>\": 47485,\n  \"brt</w>\": 46936,\n  \"bru\": 1698,\n  \"bru</w>\": 31028,\n  \"bruce\": 21223,\n  \"bruce</w>\": 7085,\n  \"bruh</w>\": 17575,\n  \"bruins</w>\": 14736,\n  \"bruise</w>\": 48048,\n  \"bruised</w>\": 46502,\n  \"brum\": 23862,\n  \"brum</w>\": 28078,\n  \"brun\": 6870,\n  \"brunch</w>\": 9113,\n  \"brune\": 29057,\n  \"brunei</w>\": 41898,\n  \"brunette</w>\": 35528,\n  \"bruno</w>\": 14568,\n  \"brunomars</w>\": 41156,\n  \"brunswick</w>\": 24012,\n  \"brush\": 27969,\n  \"brush</w>\": 8594,\n  \"brushed</w>\": 30298,\n  \"brushes</w>\": 21550,\n  \"brushing</w>\": 35072,\n  \"brussels</w>\": 11020,\n  \"brut</w>\": 39499,\n  \"brutal\": 42144,\n  \"brutal</w>\": 14556,\n  \"brutality</w>\": 31348,\n  \"brutally</w>\": 28132,\n  \"brute</w>\": 47552,\n  \"brux\": 49093,\n  \"bry\": 6587,\n  \"bry</w>\": 28228,\n  \"bryan\": 16134,\n  \"bryan</w>\": 10412,\n  \"bryant</w>\": 12256,\n  \"bryce</w>\": 19895,\n  \"bryn\": 36569,\n  \"bryn</w>\": 42877,\n  \"bryson</w>\": 38990,\n  \"bs\": 11783,\n  \"bs</w>\": 1329,\n  \"bsa</w>\": 46619,\n  \"bsb</w>\": 23070,\n  \"bsbi\": 41728,\n  \"bsbibotany</w>\": 42086,\n  \"bsc</w>\": 32031,\n  \"bsd</w>\": 41848,\n  \"bse</w>\": 46341,\n  \"bsf</w>\": 48314,\n  \"bsgo</w>\": 48474,\n  \"bsp</w>\": 47977,\n  \"bst</w>\": 19698,\n  \"bsu</w>\": 46385,\n  \"bt\": 3317,\n  \"bt</w>\": 4205,\n  \"btc</w>\": 10315,\n  \"btcc</w>\": 30759,\n  \"btn</w>\": 44681,\n  \"bto</w>\": 35516,\n  \"btob</w>\": 29379,\n  \"btr</w>\": 39767,\n  \"bts\": 15154,\n  \"bts</w>\": 4007,\n  \"btsarmy</w>\": 30302,\n  \"btsbbmas</w>\": 35297,\n  \"btsx\": 44971,\n  \"btv</w>\": 38541,\n  \"btw</w>\": 9520,\n  \"btwn</w>\": 28284,\n  \"bu\": 609,\n  \"bu</w>\": 5831,\n  \"bub\": 27704,\n  \"bub</w>\": 33158,\n  \"bubb\": 9739,\n  \"bubba</w>\": 28149,\n  \"bubble\": 28687,\n  \"bubble</w>\": 10799,\n  \"bubblegum</w>\": 48078,\n  \"bubbles</w>\": 17648,\n  \"bubbly</w>\": 31034,\n  \"buc\": 8207,\n  \"buccane\": 32830,\n  \"buccaneers</w>\": 38058,\n  \"buch\": 22623,\n  \"bucha</w>\": 43582,\n  \"buchan\": 27237,\n  \"buchanan</w>\": 28975,\n  \"bucharest</w>\": 37013,\n  \"buck\": 6061,\n  \"buck</w>\": 11433,\n  \"bucket\": 22596,\n  \"bucket</w>\": 10498,\n  \"bucketlist</w>\": 30778,\n  \"buckets</w>\": 27168,\n  \"buckeye</w>\": 34549,\n  \"buckeyes</w>\": 30741,\n  \"buckingham</w>\": 28736,\n  \"buckle</w>\": 21948,\n  \"buckley</w>\": 25905,\n  \"bucks</w>\": 6103,\n  \"bucky</w>\": 35916,\n  \"bucs</w>\": 20011,\n  \"bud\": 2942,\n  \"bud</w>\": 10737,\n  \"buda\": 18520,\n  \"buda</w>\": 49012,\n  \"budapest</w>\": 19202,\n  \"budd\": 7296,\n  \"buddha</w>\": 13981,\n  \"buddhism</w>\": 23744,\n  \"buddhist</w>\": 18697,\n  \"buddies</w>\": 14543,\n  \"budding</w>\": 31992,\n  \"buddy\": 40948,\n  \"buddy</w>\": 6557,\n  \"budge\": 32005,\n  \"budget\": 46758,\n  \"budget</w>\": 5639,\n  \"budgeting</w>\": 43789,\n  \"budgets</w>\": 36419,\n  \"buds</w>\": 14665,\n  \"budweiser</w>\": 40900,\n  \"buen\": 15640,\n  \"buena</w>\": 30876,\n  \"buenas</w>\": 48529,\n  \"bueno</w>\": 46202,\n  \"buenos</w>\": 26055,\n  \"buf\": 44417,\n  \"buff\": 5456,\n  \"buff</w>\": 21416,\n  \"buffal\": 25836,\n  \"buffalo\": 31231,\n  \"buffalo</w>\": 8054,\n  \"buffalob\": 38831,\n  \"buffalobills</w>\": 44352,\n  \"buffe\": 13724,\n  \"buffer</w>\": 33050,\n  \"buffet</w>\": 17829,\n  \"buffett</w>\": 34081,\n  \"buffs</w>\": 28906,\n  \"buffy</w>\": 33356,\n  \"bug\": 14453,\n  \"bug</w>\": 8162,\n  \"bugatti</w>\": 35451,\n  \"buggy</w>\": 28963,\n  \"bugs</w>\": 13850,\n  \"buh</w>\": 31406,\n  \"buhari</w>\": 14661,\n  \"buick</w>\": 22000,\n  \"buil\": 1354,\n  \"build\": 22739,\n  \"build</w>\": 3289,\n  \"builder</w>\": 14474,\n  \"builders</w>\": 17694,\n  \"building\": 21206,\n  \"building</w>\": 2307,\n  \"buildings</w>\": 8866,\n  \"builds</w>\": 16449,\n  \"buildthe\": 41497,\n  \"built\": 45824,\n  \"built</w>\": 3874,\n  \"buk\": 28084,\n  \"buk</w>\": 24317,\n  \"buka</w>\": 47778,\n  \"bukit</w>\": 39888,\n  \"bul\": 2572,\n  \"bul</w>\": 10200,\n  \"bula</w>\": 18726,\n  \"bulaga</w>\": 41575,\n  \"bular</w>\": 32187,\n  \"bulb</w>\": 22373,\n  \"bulbs</w>\": 24808,\n  \"bulgar\": 15424,\n  \"bulgaria</w>\": 20295,\n  \"bulgarian</w>\": 38693,\n  \"bulge</w>\": 47603,\n  \"bulk</w>\": 19643,\n  \"bull\": 4537,\n  \"bull</w>\": 6029,\n  \"bulldo\": 37675,\n  \"bulldog\": 34828,\n  \"bulldog</w>\": 15611,\n  \"bulldogs</w>\": 13916,\n  \"bullet\": 14340,\n  \"bullet</w>\": 12465,\n  \"bulletin</w>\": 19638,\n  \"bulletproof</w>\": 43212,\n  \"bullets</w>\": 22117,\n  \"bullied</w>\": 34689,\n  \"bullies</w>\": 39050,\n  \"bullion</w>\": 49114,\n  \"bullish</w>\": 22142,\n  \"bullock</w>\": 33198,\n  \"bullpen</w>\": 38081,\n  \"bulls</w>\": 10313,\n  \"bully\": 43111,\n  \"bully</w>\": 20190,\n  \"bullying</w>\": 13548,\n  \"bum\": 27683,\n  \"bum</w>\": 14226,\n  \"bumble\": 25585,\n  \"bumble</w>\": 39303,\n  \"bumblebee</w>\": 36911,\n  \"bummed</w>\": 48456,\n  \"bump\": 9783,\n  \"bump</w>\": 15877,\n  \"bumped</w>\": 22495,\n  \"bumper</w>\": 17881,\n  \"bumping</w>\": 40196,\n  \"bumps</w>\": 21115,\n  \"bun\": 2591,\n  \"bun</w>\": 13665,\n  \"bunch</w>\": 7796,\n  \"bund</w>\": 41905,\n  \"bunde\": 18841,\n  \"bundesliga</w>\": 21582,\n  \"bundle</w>\": 11793,\n  \"bundled</w>\": 47228,\n  \"bundles</w>\": 29834,\n  \"bundy</w>\": 37332,\n  \"bung</w>\": 44748,\n  \"bungal\": 29549,\n  \"bungalow</w>\": 33696,\n  \"bunk</w>\": 41236,\n  \"bunker</w>\": 23615,\n  \"bunnies</w>\": 28998,\n  \"bunny\": 34198,\n  \"bunny</w>\": 9258,\n  \"buns</w>\": 22235,\n  \"bunting</w>\": 30695,\n  \"buon\": 31350,\n  \"buon</w>\": 48498,\n  \"bur\": 1039,\n  \"bur</w>\": 17362,\n  \"burbank</w>\": 34862,\n  \"burberry</w>\": 30412,\n  \"burch</w>\": 44588,\n  \"burden</w>\": 18687,\n  \"bure\": 11902,\n  \"bureau\": 32098,\n  \"bureau</w>\": 15400,\n  \"burg\": 19505,\n  \"burg</w>\": 3499,\n  \"burge\": 20522,\n  \"burger\": 22356,\n  \"burger</w>\": 6548,\n  \"burgers</w>\": 13007,\n  \"burgess</w>\": 26211,\n  \"burgh\": 18141,\n  \"burgh</w>\": 4965,\n  \"burgl\": 25554,\n  \"burglar</w>\": 43365,\n  \"burglary</w>\": 32573,\n  \"burgring</w>\": 40823,\n  \"burgundy</w>\": 23650,\n  \"buri\": 46348,\n  \"buri</w>\": 42614,\n  \"burial</w>\": 22012,\n  \"buried</w>\": 14233,\n  \"burk\": 48822,\n  \"burke</w>\": 15340,\n  \"burle\": 27891,\n  \"burlesque</w>\": 33732,\n  \"burlington</w>\": 23370,\n  \"burma</w>\": 30305,\n  \"burmese</w>\": 47906,\n  \"burn\": 7934,\n  \"burn</w>\": 4285,\n  \"burnaby</w>\": 47541,\n  \"burne</w>\": 27246,\n  \"burned</w>\": 15022,\n  \"burner</w>\": 23243,\n  \"burnett</w>\": 28558,\n  \"burnham</w>\": 36111,\n  \"burning\": 46107,\n  \"burning</w>\": 8405,\n  \"burnley</w>\": 24653,\n  \"burnout</w>\": 36078,\n  \"burns</w>\": 10234,\n  \"burnt</w>\": 15185,\n  \"burr</w>\": 30879,\n  \"burrell</w>\": 49045,\n  \"burrito</w>\": 23473,\n  \"burritos</w>\": 47245,\n  \"burroughs</w>\": 41337,\n  \"burrows</w>\": 44846,\n  \"burst</w>\": 13005,\n  \"bursting</w>\": 32566,\n  \"bursts</w>\": 37026,\n  \"burt</w>\": 27162,\n  \"burton\": 42354,\n  \"burton</w>\": 12704,\n  \"burundi</w>\": 33595,\n  \"bury\": 12276,\n  \"bury</w>\": 3899,\n  \"burys</w>\": 32362,\n  \"bus\": 1319,\n  \"bus</w>\": 2840,\n  \"busan</w>\": 40172,\n  \"busc\": 35000,\n  \"busch</w>\": 20475,\n  \"buses</w>\": 12879,\n  \"bush\": 11191,\n  \"bush</w>\": 6867,\n  \"bushes</w>\": 37578,\n  \"busiest</w>\": 32764,\n  \"busine\": 4598,\n  \"busines\": 25364,\n  \"business\": 8346,\n  \"business</w>\": 1716,\n  \"businesses</w>\": 7287,\n  \"businessman</w>\": 25635,\n  \"buss</w>\": 47764,\n  \"bust\": 31299,\n  \"bust</w>\": 9959,\n  \"busted</w>\": 18643,\n  \"buster\": 37219,\n  \"buster</w>\": 12094,\n  \"busters</w>\": 16362,\n  \"busting</w>\": 29622,\n  \"busy\": 39332,\n  \"busy</w>\": 4354,\n  \"but\": 2201,\n  \"but</w>\": 767,\n  \"butch</w>\": 35102,\n  \"butcher</w>\": 18732,\n  \"butchers</w>\": 42334,\n  \"bute</w>\": 39240,\n  \"butes</w>\": 14630,\n  \"butler\": 35867,\n  \"butler</w>\": 10702,\n  \"butt\": 12500,\n  \"butt</w>\": 31523,\n  \"butte</w>\": 31678,\n  \"butter\": 5427,\n  \"butter</w>\": 6952,\n  \"butterflies</w>\": 16232,\n  \"butterfly</w>\": 9738,\n  \"buttermilk</w>\": 40180,\n  \"butternut</w>\": 36867,\n  \"buttery</w>\": 45535,\n  \"button\": 45480,\n  \"button</w>\": 8007,\n  \"buttons</w>\": 16188,\n  \"butts</w>\": 25309,\n  \"buu\": 42313,\n  \"buuren</w>\": 47752,\n  \"buxton</w>\": 41370,\n  \"buy\": 11632,\n  \"buy</w>\": 2131,\n  \"buyer</w>\": 14682,\n  \"buyers</w>\": 14663,\n  \"buying</w>\": 6566,\n  \"buys</w>\": 15560,\n  \"buzz\": 7866,\n  \"buzz</w>\": 8706,\n  \"buzzard</w>\": 47434,\n  \"buzzer</w>\": 38064,\n  \"buzzfeed</w>\": 26613,\n  \"buzzing</w>\": 18511,\n  \"bv\": 18958,\n  \"bv</w>\": 35861,\n  \"bvb</w>\": 22454,\n  \"bw\": 17672,\n  \"bw</w>\": 15120,\n  \"bway</w>\": 26652,\n  \"bwfc</w>\": 40918,\n  \"bwo\": 45902,\n  \"bx</w>\": 33633,\n  \"by\": 1713,\n  \"by</w>\": 638,\n  \"bye\": 20076,\n  \"bye</w>\": 4460,\n  \"byes</w>\": 47958,\n  \"byl</w>\": 34994,\n  \"byn\": 46917,\n  \"byn</w>\": 11890,\n  \"byo\": 28039,\n  \"bypass</w>\": 26530,\n  \"byr\": 15534,\n  \"byrd</w>\": 30369,\n  \"byrne</w>\": 19676,\n  \"byron\": 43504,\n  \"byron</w>\": 19775,\n  \"bys</w>\": 26740,\n  \"bystand\": 46138,\n  \"byte</w>\": 42798,\n  \"bytes</w>\": 39538,\n  \"bythe\": 36621,\n  \"byu\": 41072,\n  \"byu</w>\": 23770,\n  \"byz\": 35406,\n  \"byzantine</w>\": 44081,\n  \"bz</w>\": 13631,\n  \"bÃ©\": 40365,\n  \"bÃ¼\": 38706,\n  \"c\": 66,\n  \"c</w>\": 322,\n  \"ca\": 772,\n  \"ca</w>\": 1684,\n  \"caa</w>\": 19316,\n  \"cab\": 3033,\n  \"cab</w>\": 11912,\n  \"cabaret</w>\": 26263,\n  \"cabbage</w>\": 18407,\n  \"cabe</w>\": 32731,\n  \"cabello</w>\": 34371,\n  \"caber\": 29062,\n  \"cabernet</w>\": 33730,\n  \"cabin</w>\": 14178,\n  \"cabine\": 23354,\n  \"cabinet</w>\": 9937,\n  \"cabinets</w>\": 33083,\n  \"cabins</w>\": 48455,\n  \"cable</w>\": 7925,\n  \"cables</w>\": 22408,\n  \"cabo\": 37318,\n  \"cabo</w>\": 28370,\n  \"cabrera</w>\": 42338,\n  \"cabs</w>\": 42048,\n  \"cac\": 8298,\n  \"cac</w>\": 23872,\n  \"cacao</w>\": 38022,\n  \"cache</w>\": 28993,\n  \"caching</w>\": 40655,\n  \"cactus</w>\": 19794,\n  \"cad\": 6297,\n  \"cad</w>\": 20166,\n  \"caday</w>\": 34187,\n  \"cadbury</w>\": 44698,\n  \"caddy</w>\": 41521,\n  \"cade\": 10497,\n  \"cade</w>\": 17306,\n  \"cadet</w>\": 22764,\n  \"cadets</w>\": 19160,\n  \"cadillac</w>\": 18156,\n  \"cae</w>\": 49264,\n  \"caer\": 28298,\n  \"caes\": 15740,\n  \"caesar</w>\": 21642,\n  \"caesars</w>\": 42162,\n  \"caf\": 3471,\n  \"caf</w>\": 20867,\n  \"cafc</w>\": 30748,\n  \"cafe\": 15201,\n  \"cafe</w>\": 4979,\n  \"cafes</w>\": 40166,\n  \"cafeteria</w>\": 32817,\n  \"caffe\": 18258,\n  \"caffe</w>\": 45416,\n  \"caffeine</w>\": 22487,\n  \"cafÃ©</w>\": 15304,\n  \"cag\": 15714,\n  \"cage</w>\": 11838,\n  \"cages</w>\": 37939,\n  \"cah</w>\": 40519,\n  \"cahill</w>\": 33185,\n  \"cai\": 38971,\n  \"cai</w>\": 36116,\n  \"cain</w>\": 13747,\n  \"caine</w>\": 16799,\n  \"cair\": 15804,\n  \"cair</w>\": 46659,\n  \"cairn\": 31264,\n  \"cairn</w>\": 42467,\n  \"cairngor\": 44067,\n  \"cairns</w>\": 32941,\n  \"cairo</w>\": 19615,\n  \"cait\": 14116,\n  \"caitlin\": 47768,\n  \"caitlin</w>\": 26809,\n  \"caitlyn</w>\": 35763,\n  \"cajun\": 43425,\n  \"cajun</w>\": 33044,\n  \"cak</w>\": 42986,\n  \"cake\": 15295,\n  \"cake</w>\": 2972,\n  \"cakeday</w>\": 46207,\n  \"cakes</w>\": 5950,\n  \"cal\": 1198,\n  \"cal</w>\": 6372,\n  \"cala</w>\": 32133,\n  \"calab\": 31795,\n  \"calais</w>\": 39886,\n  \"calam\": 28841,\n  \"calc</w>\": 45055,\n  \"calci\": 22824,\n  \"calcium</w>\": 27815,\n  \"calcu\": 15328,\n  \"calcul\": 15734,\n  \"calculate</w>\": 37656,\n  \"calculated</w>\": 40688,\n  \"calculations</w>\": 44605,\n  \"calculator</w>\": 26093,\n  \"calculus</w>\": 35104,\n  \"calcutta</w>\": 42901,\n  \"calder\": 29372,\n  \"calder</w>\": 36817,\n  \"caldwell</w>\": 30484,\n  \"cale</w>\": 32674,\n  \"caleb</w>\": 19619,\n  \"caled\": 28421,\n  \"calend\": 6057,\n  \"calendar</w>\": 7122,\n  \"calendars</w>\": 17229,\n  \"calf</w>\": 17508,\n  \"calgary\": 27415,\n  \"calgary</w>\": 10797,\n  \"calhoun</w>\": 38929,\n  \"cali\": 2857,\n  \"cali</w>\": 16337,\n  \"caliber</w>\": 32820,\n  \"calibr\": 32597,\n  \"calico</w>\": 45379,\n  \"calif</w>\": 30839,\n  \"califor\": 3526,\n  \"californi\": 21303,\n  \"california</w>\": 3729,\n  \"call\": 7950,\n  \"call</w>\": 1620,\n  \"calla\": 20658,\n  \"callahan</w>\": 43313,\n  \"callaway</w>\": 42596,\n  \"callback</w>\": 44764,\n  \"calle\": 47699,\n  \"calle</w>\": 38144,\n  \"called</w>\": 2726,\n  \"caller</w>\": 30666,\n  \"calli\": 16338,\n  \"callie</w>\": 36512,\n  \"calligraphy</w>\": 27775,\n  \"calling</w>\": 4597,\n  \"callister</w>\": 49026,\n  \"callme\": 42449,\n  \"callof\": 41280,\n  \"calls</w>\": 4572,\n  \"callum</w>\": 23224,\n  \"calm\": 34990,\n  \"calm</w>\": 7011,\n  \"calming</w>\": 30690,\n  \"calorie</w>\": 32679,\n  \"calories</w>\": 18029,\n  \"cals</w>\": 47714,\n  \"calum</w>\": 16405,\n  \"calvary</w>\": 40169,\n  \"calvert</w>\": 47134,\n  \"calves</w>\": 31857,\n  \"calvin\": 27642,\n  \"calvin</w>\": 17345,\n  \"caly\": 10244,\n  \"calyp\": 29851,\n  \"cam\": 1004,\n  \"cam</w>\": 5982,\n  \"camar\": 31991,\n  \"camber\": 44362,\n  \"cambo\": 14662,\n  \"cambodia</w>\": 17347,\n  \"cambridge\": 24651,\n  \"cambridge</w>\": 9334,\n  \"cambridgeshire</w>\": 46139,\n  \"camden\": 38735,\n  \"camden</w>\": 17984,\n  \"came</w>\": 1986,\n  \"camel\": 27005,\n  \"camel</w>\": 21914,\n  \"camels</w>\": 41357,\n  \"cameo</w>\": 19492,\n  \"camer\": 4961,\n  \"camera</w>\": 3934,\n  \"cameraman</w>\": 43347,\n  \"cameras</w>\": 12172,\n  \"camero\": 20320,\n  \"cameron\": 19634,\n  \"cameron</w>\": 8057,\n  \"camerondallas</w>\": 40587,\n  \"cameroon</w>\": 24061,\n  \"camil\": 37745,\n  \"camila</w>\": 19919,\n  \"camilla</w>\": 38897,\n  \"camille</w>\": 26741,\n  \"camino</w>\": 28529,\n  \"camo\": 28702,\n  \"camo</w>\": 19716,\n  \"camogie</w>\": 39547,\n  \"camou\": 23588,\n  \"camoufla\": 23667,\n  \"camouflage</w>\": 29049,\n  \"camp\": 2854,\n  \"camp</w>\": 2877,\n  \"campa\": 2793,\n  \"campaig\": 9448,\n  \"campaign\": 44524,\n  \"campaign</w>\": 3193,\n  \"campaigner</w>\": 46364,\n  \"campaigners</w>\": 40272,\n  \"campaigning</w>\": 19594,\n  \"campaigns</w>\": 15669,\n  \"campan\": 31765,\n  \"campbell\": 29094,\n  \"campbell</w>\": 8806,\n  \"campe\": 16672,\n  \"campeon\": 49109,\n  \"campeones</w>\": 30105,\n  \"camper\": 41914,\n  \"camper</w>\": 24522,\n  \"campers</w>\": 26619,\n  \"campfire</w>\": 32530,\n  \"campground</w>\": 46969,\n  \"camping</w>\": 9982,\n  \"campo</w>\": 27600,\n  \"campos</w>\": 48077,\n  \"camps</w>\": 12806,\n  \"campsite</w>\": 44243,\n  \"campu\": 19687,\n  \"campus</w>\": 4560,\n  \"campuses</w>\": 31895,\n  \"camra</w>\": 46155,\n  \"camry</w>\": 46472,\n  \"cams</w>\": 32590,\n  \"can\": 950,\n  \"can</w>\": 753,\n  \"cana</w>\": 28341,\n  \"canad\": 13193,\n  \"canada</w>\": 2698,\n  \"canadaday</w>\": 39800,\n  \"canadi\": 4329,\n  \"canadian\": 22160,\n  \"canadian</w>\": 5255,\n  \"canadians</w>\": 18989,\n  \"canadiens</w>\": 40932,\n  \"canal\": 28585,\n  \"canal</w>\": 9535,\n  \"canals</w>\": 38483,\n  \"canaria</w>\": 47117,\n  \"canary\": 40409,\n  \"canary</w>\": 24523,\n  \"canberra</w>\": 16719,\n  \"canc\": 43189,\n  \"cancel\": 12026,\n  \"cancel</w>\": 21546,\n  \"canceled</w>\": 25874,\n  \"cancell\": 28027,\n  \"cancellation</w>\": 38765,\n  \"cancelled</w>\": 13270,\n  \"cancels</w>\": 34089,\n  \"cancer\": 12690,\n  \"cancer</w>\": 3148,\n  \"cancers</w>\": 33201,\n  \"cancun</w>\": 34721,\n  \"cand\": 4986,\n  \"candace</w>\": 45623,\n  \"candel\": 47834,\n  \"candi\": 6034,\n  \"candice</w>\": 30024,\n  \"candid\": 7884,\n  \"candid</w>\": 19206,\n  \"candidacy</w>\": 46248,\n  \"candidate</w>\": 6475,\n  \"candidates</w>\": 8619,\n  \"candied</w>\": 43982,\n  \"candies</w>\": 46305,\n  \"candle\": 18995,\n  \"candle</w>\": 12674,\n  \"candlelight</w>\": 34724,\n  \"candles</w>\": 15472,\n  \"candy\": 20741,\n  \"candy</w>\": 6417,\n  \"cane\": 23644,\n  \"cane</w>\": 14716,\n  \"canelo</w>\": 43210,\n  \"canes</w>\": 21902,\n  \"cani\": 35592,\n  \"canine</w>\": 27380,\n  \"cann\": 4139,\n  \"cann</w>\": 23709,\n  \"cannab\": 7577,\n  \"cannabis\": 31837,\n  \"cannabis</w>\": 8861,\n  \"canne\": 44252,\n  \"canned</w>\": 27290,\n  \"cannes</w>\": 13773,\n  \"canni\": 26389,\n  \"canning</w>\": 38621,\n  \"cannon\": 28771,\n  \"cannon</w>\": 15661,\n  \"cannons</w>\": 46269,\n  \"cannot</w>\": 4785,\n  \"canny</w>\": 26986,\n  \"cano\": 31668,\n  \"cano</w>\": 25937,\n  \"canoe</w>\": 23503,\n  \"canola</w>\": 40389,\n  \"canon\": 17749,\n  \"canon</w>\": 9310,\n  \"canopy</w>\": 26061,\n  \"cans</w>\": 13707,\n  \"cant\": 13395,\n  \"cant</w>\": 5784,\n  \"canteen</w>\": 39230,\n  \"canter\": 19301,\n  \"canterbury</w>\": 22271,\n  \"canti\": 42845,\n  \"cantina</w>\": 47472,\n  \"canton\": 37735,\n  \"canton</w>\": 25363,\n  \"cantore</w>\": 41769,\n  \"cantwait</w>\": 33760,\n  \"canu\": 20171,\n  \"canucks</w>\": 24321,\n  \"canv\": 30714,\n  \"canvas\": 22441,\n  \"canvas</w>\": 7483,\n  \"canvass</w>\": 40054,\n  \"canvassing</w>\": 33783,\n  \"cany\": 47674,\n  \"canyon\": 41246,\n  \"canyon</w>\": 9755,\n  \"cao</w>\": 29207,\n  \"cap\": 1289,\n  \"cap</w>\": 3938,\n  \"capabilities</w>\": 19512,\n  \"capability</w>\": 25885,\n  \"capable</w>\": 14742,\n  \"capac\": 24665,\n  \"capacity</w>\": 8970,\n  \"capcom</w>\": 28342,\n  \"cape\": 10288,\n  \"cape</w>\": 6631,\n  \"capecod</w>\": 41339,\n  \"capes</w>\": 38785,\n  \"capetown</w>\": 20059,\n  \"capit\": 6889,\n  \"capita</w>\": 41833,\n  \"capital\": 11198,\n  \"capital</w>\": 5439,\n  \"capitalism</w>\": 20068,\n  \"capitalist</w>\": 37015,\n  \"capitals</w>\": 29579,\n  \"capitol\": 43880,\n  \"capitol</w>\": 11375,\n  \"capo</w>\": 45477,\n  \"capp\": 16718,\n  \"capped</w>\": 24659,\n  \"capping</w>\": 42656,\n  \"cappuccino</w>\": 37402,\n  \"capri\": 48699,\n  \"capri</w>\": 30982,\n  \"capric\": 28667,\n  \"capricorn</w>\": 46314,\n  \"caps</w>\": 23185,\n  \"capsu\": 15608,\n  \"capsul\": 40341,\n  \"capsule</w>\": 20627,\n  \"capsules</w>\": 32870,\n  \"capt\": 45815,\n  \"capt</w>\": 17369,\n  \"captain\": 14958,\n  \"captain</w>\": 4621,\n  \"captainamerica</w>\": 46229,\n  \"captainmarvel</w>\": 48492,\n  \"captains</w>\": 18706,\n  \"caption</w>\": 11327,\n  \"captions</w>\": 41878,\n  \"captiv\": 19776,\n  \"captivating</w>\": 30580,\n  \"captive</w>\": 29038,\n  \"captivity</w>\": 41141,\n  \"capture</w>\": 8818,\n  \"captured</w>\": 8020,\n  \"captures</w>\": 15305,\n  \"capturing</w>\": 19548,\n  \"capu\": 44241,\n  \"car\": 811,\n  \"car</w>\": 1615,\n  \"cara</w>\": 20016,\n  \"carab\": 32251,\n  \"carac\": 30029,\n  \"caracas</w>\": 45854,\n  \"caramel</w>\": 14788,\n  \"carameli\": 41739,\n  \"caramelized</w>\": 43854,\n  \"carat</w>\": 32981,\n  \"carav\": 13814,\n  \"caravan</w>\": 18566,\n  \"carb</w>\": 21379,\n  \"carbo\": 43235,\n  \"carbon\": 14038,\n  \"carbon</w>\": 7549,\n  \"carbs</w>\": 29313,\n  \"carcin\": 31587,\n  \"carcinoma</w>\": 46810,\n  \"card\": 10793,\n  \"card</w>\": 2601,\n  \"cardam\": 49008,\n  \"cardboard</w>\": 19845,\n  \"cardi\": 6211,\n  \"cardi</w>\": 29677,\n  \"cardiac</w>\": 21256,\n  \"cardiff\": 22488,\n  \"cardiff</w>\": 9781,\n  \"cardigan</w>\": 30501,\n  \"cardin\": 8457,\n  \"cardinal\": 46310,\n  \"cardinal</w>\": 16472,\n  \"cardinals</w>\": 12837,\n  \"cardio\": 15003,\n  \"cardio</w>\": 23455,\n  \"cardiology</w>\": 37276,\n  \"cardiovascular</w>\": 29291,\n  \"cardo</w>\": 40625,\n  \"cards</w>\": 4094,\n  \"care\": 2050,\n  \"care</w>\": 1776,\n  \"cared</w>\": 27675,\n  \"career\": 20609,\n  \"career</w>\": 3061,\n  \"careers</w>\": 10090,\n  \"careful</w>\": 11999,\n  \"carefully</w>\": 15789,\n  \"caregi\": 22042,\n  \"caregiver</w>\": 46372,\n  \"caregivers</w>\": 35909,\n  \"careless</w>\": 47325,\n  \"carers</w>\": 26484,\n  \"cares</w>\": 10968,\n  \"caretaker</w>\": 48037,\n  \"carey</w>\": 14895,\n  \"cargo</w>\": 12490,\n  \"cari\": 18497,\n  \"cari</w>\": 37273,\n  \"carib\": 9757,\n  \"caribbean</w>\": 10368,\n  \"caribou</w>\": 42135,\n  \"caric\": 25337,\n  \"caricature</w>\": 38857,\n  \"carina</w>\": 44357,\n  \"caring</w>\": 13083,\n  \"carl\": 8273,\n  \"carl</w>\": 9482,\n  \"carla</w>\": 25552,\n  \"carleton</w>\": 46496,\n  \"carlin</w>\": 47559,\n  \"carlisle</w>\": 23276,\n  \"carlo\": 17861,\n  \"carlo</w>\": 15266,\n  \"carlos</w>\": 9538,\n  \"carlow</w>\": 44745,\n  \"carls\": 39635,\n  \"carlson</w>\": 24114,\n  \"carlton</w>\": 18934,\n  \"carly\": 23166,\n  \"carly</w>\": 22689,\n  \"carlyle</w>\": 46555,\n  \"carmel\": 30757,\n  \"carmel</w>\": 25601,\n  \"carmen\": 41427,\n  \"carmen</w>\": 18834,\n  \"carmichael</w>\": 41657,\n  \"carn\": 21597,\n  \"carnage</w>\": 31385,\n  \"carnation</w>\": 44577,\n  \"carnaval</w>\": 47238,\n  \"carne\": 17053,\n  \"carne</w>\": 42885,\n  \"carnegie</w>\": 25287,\n  \"carney</w>\": 34194,\n  \"carni\": 8438,\n  \"carnival\": 36708,\n  \"carnival</w>\": 10577,\n  \"caro\": 30317,\n  \"caro</w>\": 29344,\n  \"carol\": 4242,\n  \"carol</w>\": 11489,\n  \"carole</w>\": 31955,\n  \"carolin\": 26418,\n  \"carolina</w>\": 7027,\n  \"caroline\": 31064,\n  \"caroline</w>\": 12641,\n  \"carols</w>\": 33269,\n  \"carolyn</w>\": 25825,\n  \"carou\": 32224,\n  \"carousel</w>\": 36665,\n  \"carp</w>\": 26085,\n  \"carpen\": 15584,\n  \"carpenter</w>\": 18475,\n  \"carpet</w>\": 6922,\n  \"carpets</w>\": 34612,\n  \"carr\": 26951,\n  \"carr</w>\": 17136,\n  \"carra\": 32332,\n  \"carre\": 31114,\n  \"carrera</w>\": 32952,\n  \"carri\": 4739,\n  \"carriage\": 47885,\n  \"carriage</w>\": 21087,\n  \"carrick</w>\": 44052,\n  \"carrie\": 30334,\n  \"carrie</w>\": 15848,\n  \"carried</w>\": 12960,\n  \"carrier</w>\": 12308,\n  \"carriers</w>\": 26865,\n  \"carries</w>\": 17982,\n  \"carrieunderwood</w>\": 47338,\n  \"carrington</w>\": 48759,\n  \"carroll\": 41911,\n  \"carroll</w>\": 14893,\n  \"carrot</w>\": 15435,\n  \"carrots</w>\": 19299,\n  \"carry\": 31863,\n  \"carry</w>\": 6998,\n  \"carrying</w>\": 9920,\n  \"cars</w>\": 3346,\n  \"carsforsale</w>\": 45222,\n  \"carson\": 41766,\n  \"carson</w>\": 13171,\n  \"cart\": 27705,\n  \"cart</w>\": 13065,\n  \"cartag\": 45042,\n  \"cartagena</w>\": 47157,\n  \"carte</w>\": 44949,\n  \"cartel</w>\": 30529,\n  \"carter\": 27330,\n  \"carter</w>\": 7260,\n  \"cartier</w>\": 32951,\n  \"carto\": 5487,\n  \"carton</w>\": 41812,\n  \"cartoon\": 33082,\n  \"cartoon</w>\": 7651,\n  \"cartoonist</w>\": 30793,\n  \"cartoons</w>\": 17673,\n  \"cartri\": 47084,\n  \"cartridge</w>\": 29432,\n  \"cartridges</w>\": 49249,\n  \"carts</w>\": 27581,\n  \"cartunesapp</w>\": 32888,\n  \"caruso</w>\": 45192,\n  \"carve</w>\": 40152,\n  \"carved</w>\": 15127,\n  \"carver</w>\": 28850,\n  \"carving</w>\": 19428,\n  \"carvings</w>\": 48123,\n  \"cary</w>\": 22844,\n  \"cas\": 1671,\n  \"cas</w>\": 13831,\n  \"casa</w>\": 14643,\n  \"casablanc\": 36572,\n  \"casablanca</w>\": 41950,\n  \"casc\": 36714,\n  \"casca\": 43296,\n  \"cascade</w>\": 29065,\n  \"cascades</w>\": 46454,\n  \"case\": 17698,\n  \"case</w>\": 2068,\n  \"cases</w>\": 6888,\n  \"casey\": 24899,\n  \"casey</w>\": 12836,\n  \"cash\": 11050,\n  \"cash</w>\": 5131,\n  \"cashback</w>\": 36368,\n  \"cashe\": 32233,\n  \"cashew</w>\": 39531,\n  \"cashi\": 29517,\n  \"cashier</w>\": 34547,\n  \"cashmere</w>\": 34566,\n  \"casi\": 38350,\n  \"casino</w>\": 10473,\n  \"casio</w>\": 32261,\n  \"cask</w>\": 26299,\n  \"casm</w>\": 35198,\n  \"casper</w>\": 35892,\n  \"cass</w>\": 22556,\n  \"cassandra</w>\": 35289,\n  \"casser\": 31093,\n  \"casserole</w>\": 36045,\n  \"cassette</w>\": 19717,\n  \"cassi\": 14942,\n  \"cassidy</w>\": 21757,\n  \"cassie</w>\": 29323,\n  \"cassini</w>\": 46554,\n  \"cast\": 2509,\n  \"cast</w>\": 1970,\n  \"caste</w>\": 32693,\n  \"casted</w>\": 33838,\n  \"castel\": 43306,\n  \"castell\": 31792,\n  \"caster\": 32101,\n  \"caster</w>\": 8449,\n  \"casters</w>\": 29721,\n  \"castic</w>\": 47737,\n  \"castillo</w>\": 30813,\n  \"casting</w>\": 7087,\n  \"castle\": 12496,\n  \"castle</w>\": 3540,\n  \"castles</w>\": 24766,\n  \"castro</w>\": 16950,\n  \"casts</w>\": 10595,\n  \"casu\": 15345,\n  \"casual</w>\": 10129,\n  \"casually</w>\": 18840,\n  \"casualties</w>\": 30244,\n  \"casualty</w>\": 31222,\n  \"cat\": 1481,\n  \"cat</w>\": 2368,\n  \"cata</w>\": 42279,\n  \"catal\": 12792,\n  \"catalan</w>\": 30532,\n  \"catalina</w>\": 36576,\n  \"catalo\": 34740,\n  \"catalog</w>\": 20036,\n  \"catalogue</w>\": 20985,\n  \"catalonia</w>\": 27039,\n  \"catalunya</w>\": 44132,\n  \"cataly\": 15894,\n  \"catalyst</w>\": 25387,\n  \"catan</w>\": 45893,\n  \"catap\": 39514,\n  \"catar\": 35801,\n  \"catastro\": 22736,\n  \"catastrophe</w>\": 41422,\n  \"catastrophic</w>\": 34448,\n  \"catch\": 18901,\n  \"catch</w>\": 3042,\n  \"catcher</w>\": 15965,\n  \"catchers</w>\": 39060,\n  \"catches</w>\": 17213,\n  \"catching</w>\": 8617,\n  \"catchy</w>\": 37114,\n  \"catday</w>\": 32243,\n  \"cate\": 6357,\n  \"cate</w>\": 24510,\n  \"cated</w>\": 31823,\n  \"categor\": 17006,\n  \"categori\": 40117,\n  \"categories</w>\": 19971,\n  \"category</w>\": 9432,\n  \"cater\": 16634,\n  \"cater</w>\": 38101,\n  \"catering</w>\": 16697,\n  \"caterpillar</w>\": 27111,\n  \"catfish</w>\": 26077,\n  \"cath\": 9196,\n  \"cath</w>\": 30811,\n  \"cathar\": 43784,\n  \"cathe\": 7174,\n  \"cathedr\": 46370,\n  \"cathedral</w>\": 7865,\n  \"catherine\": 35035,\n  \"catherine</w>\": 12339,\n  \"catho\": 7595,\n  \"cathol\": 16315,\n  \"catholic\": 20382,\n  \"catholic</w>\": 7757,\n  \"catholics</w>\": 36808,\n  \"cathy\": 40326,\n  \"cathy</w>\": 22731,\n  \"cation</w>\": 21367,\n  \"cato</w>\": 33558,\n  \"cats\": 38800,\n  \"cats</w>\": 3989,\n  \"catsofinstagram</w>\": 39901,\n  \"catsoftwitter</w>\": 17273,\n  \"catt\": 37339,\n  \"cattle\": 48799,\n  \"cattle</w>\": 13644,\n  \"caturday</w>\": 20892,\n  \"catwalk</w>\": 36565,\n  \"catwoman</w>\": 47251,\n  \"cau\": 1121,\n  \"cau</w>\": 45529,\n  \"caucus</w>\": 18847,\n  \"caught</w>\": 4520,\n  \"caul\": 23460,\n  \"cauley</w>\": 41682,\n  \"caulfield</w>\": 44906,\n  \"cauli\": 20123,\n  \"cauliflower</w>\": 23802,\n  \"cause\": 18982,\n  \"cause</w>\": 1394,\n  \"caused</w>\": 8940,\n  \"causes</w>\": 9775,\n  \"causeway</w>\": 35034,\n  \"causing</w>\": 10779,\n  \"caution</w>\": 15656,\n  \"cautious</w>\": 36579,\n  \"cav\": 4942,\n  \"cav</w>\": 45935,\n  \"cava</w>\": 48682,\n  \"caval\": 24537,\n  \"cavali\": 20783,\n  \"cavalier</w>\": 44488,\n  \"cavaliers</w>\": 30194,\n  \"cavalry</w>\": 32467,\n  \"cave\": 25441,\n  \"cave</w>\": 9654,\n  \"cavendish</w>\": 42945,\n  \"caver\": 41487,\n  \"caves</w>\": 22096,\n  \"cavi\": 27360,\n  \"caviar</w>\": 31228,\n  \"cavill</w>\": 40492,\n  \"cavity</w>\": 43156,\n  \"cavs</w>\": 16800,\n  \"caw\": 38405,\n  \"caw</w>\": 43804,\n  \"cawx</w>\": 26739,\n  \"cay\": 11876,\n  \"cay</w>\": 37399,\n  \"cayenne</w>\": 43650,\n  \"cayman</w>\": 33737,\n  \"caz\": 48451,\n  \"cb\": 4034,\n  \"cb</w>\": 8830,\n  \"cba</w>\": 38472,\n  \"cbb</w>\": 31487,\n  \"cbc\": 14096,\n  \"cbc</w>\": 14523,\n  \"cbd</w>\": 13176,\n  \"cbe</w>\": 43639,\n  \"cbi</w>\": 30875,\n  \"cbj</w>\": 35608,\n  \"cbn</w>\": 26579,\n  \"cbp</w>\": 46723,\n  \"cbr</w>\": 28762,\n  \"cbs\": 16788,\n  \"cbs</w>\": 8009,\n  \"cc\": 2976,\n  \"cc</w>\": 2021,\n  \"cca</w>\": 17987,\n  \"ccc</w>\": 21856,\n  \"ccd</w>\": 48556,\n  \"ccg</w>\": 37755,\n  \"cch\": 21789,\n  \"cchini</w>\": 28467,\n  \"cci\": 32942,\n  \"cci</w>\": 8196,\n  \"ccl</w>\": 43773,\n  \"ccm</w>\": 40435,\n  \"cco</w>\": 28786,\n  \"ccot</w>\": 24950,\n  \"ccp</w>\": 43045,\n  \"ccs</w>\": 30400,\n  \"cctv</w>\": 23097,\n  \"ccu</w>\": 49023,\n  \"cd\": 4308,\n  \"cd</w>\": 4480,\n  \"cda</w>\": 45565,\n  \"cdc\": 41098,\n  \"cdc</w>\": 25779,\n  \"cdn\": 8886,\n  \"cdn</w>\": 26802,\n  \"cdnpoli</w>\": 11645,\n  \"cdo</w>\": 47187,\n  \"cdp</w>\": 39624,\n  \"cds</w>\": 20784,\n  \"cdt</w>\": 18455,\n  \"ce\": 685,\n  \"ce</w>\": 629,\n  \"cea</w>\": 28355,\n  \"cean\": 34409,\n  \"cean</w>\": 37295,\n  \"cease\": 32856,\n  \"cease</w>\": 25499,\n  \"ceasefire</w>\": 38291,\n  \"cebu</w>\": 20146,\n  \"cec\": 29694,\n  \"cec</w>\": 40029,\n  \"cecil\": 26987,\n  \"cecil</w>\": 27169,\n  \"cecilia</w>\": 35440,\n  \"ced\": 25634,\n  \"ced</w>\": 2323,\n  \"cedar\": 24167,\n  \"cedar</w>\": 13799,\n  \"cedric</w>\": 36608,\n  \"cee\": 45966,\n  \"cee</w>\": 15015,\n  \"cees</w>\": 47914,\n  \"ceil\": 27275,\n  \"ceiling</w>\": 12374,\n  \"ceilings</w>\": 33770,\n  \"cek</w>\": 45544,\n  \"cel\": 2269,\n  \"cel</w>\": 7597,\n  \"cele\": 1314,\n  \"celeb\": 38862,\n  \"celeb</w>\": 19393,\n  \"celebr\": 1372,\n  \"celebrate\": 31414,\n  \"celebrate</w>\": 2694,\n  \"celebrated</w>\": 9184,\n  \"celebrates</w>\": 7564,\n  \"celebrating</w>\": 3382,\n  \"celebration</w>\": 4615,\n  \"celebrations</w>\": 10825,\n  \"celebratory</w>\": 34115,\n  \"celebrities</w>\": 17071,\n  \"celebrity\": 23981,\n  \"celebrity</w>\": 7320,\n  \"celebs</w>\": 19803,\n  \"celed</w>\": 25741,\n  \"celer\": 9621,\n  \"celery</w>\": 30990,\n  \"celeste</w>\": 29364,\n  \"celesti\": 29497,\n  \"celestial</w>\": 32669,\n  \"celi\": 25567,\n  \"celia</w>\": 44489,\n  \"celine</w>\": 33644,\n  \"cell\": 9316,\n  \"cell</w>\": 5533,\n  \"cellar</w>\": 24282,\n  \"cellars</w>\": 44976,\n  \"cellence</w>\": 34687,\n  \"cello</w>\": 23013,\n  \"cellphone</w>\": 39029,\n  \"cells</w>\": 8890,\n  \"cellu\": 16791,\n  \"cellular</w>\": 23268,\n  \"cels</w>\": 24021,\n  \"celsius</w>\": 47057,\n  \"celtic\": 21897,\n  \"celtic</w>\": 10523,\n  \"celticfc</w>\": 38612,\n  \"celtics</w>\": 16226,\n  \"cem</w>\": 41435,\n  \"ceme\": 10517,\n  \"cement</w>\": 4369,\n  \"cements</w>\": 19448,\n  \"cemetery</w>\": 11660,\n  \"cen\": 1306,\n  \"cen</w>\": 30106,\n  \"cena</w>\": 21591,\n  \"cence</w>\": 24410,\n  \"cency</w>\": 41259,\n  \"cene</w>\": 30038,\n  \"censor\": 24230,\n  \"censor</w>\": 44709,\n  \"censored</w>\": 30951,\n  \"censorship</w>\": 27284,\n  \"census</w>\": 23677,\n  \"cent\": 1784,\n  \"cent</w>\": 3662,\n  \"centenary</w>\": 22422,\n  \"centennial</w>\": 20895,\n  \"center\": 16651,\n  \"center</w>\": 2119,\n  \"centered</w>\": 24584,\n  \"centers</w>\": 14494,\n  \"centi\": 48889,\n  \"centime\": 48687,\n  \"centr\": 2370,\n  \"central\": 13448,\n  \"central</w>\": 3339,\n  \"centre\": 26310,\n  \"centre</w>\": 2916,\n  \"centred</w>\": 47925,\n  \"centres</w>\": 19354,\n  \"centri\": 30872,\n  \"centric</w>\": 19297,\n  \"centro</w>\": 37178,\n  \"cents</w>\": 11934,\n  \"centu\": 16818,\n  \"centuri\": 36816,\n  \"centuries</w>\": 19014,\n  \"century\": 26134,\n  \"century</w>\": 4275,\n  \"ceo\": 46340,\n  \"ceo</w>\": 3559,\n  \"ceos</w>\": 28332,\n  \"cep\": 2632,\n  \"cep</w>\": 48714,\n  \"ceph\": 44343,\n  \"cept</w>\": 3678,\n  \"ception</w>\": 12346,\n  \"cer\": 1364,\n  \"cer</w>\": 1925,\n  \"cera</w>\": 34608,\n  \"ceram\": 10677,\n  \"ceramic</w>\": 15112,\n  \"ceramics</w>\": 22438,\n  \"cere\": 3984,\n  \"cere</w>\": 22085,\n  \"cereal</w>\": 17581,\n  \"cereals</w>\": 48618,\n  \"cerebral</w>\": 39073,\n  \"ceremon\": 15796,\n  \"ceremonial</w>\": 33281,\n  \"ceremonies</w>\": 21547,\n  \"ceremony</w>\": 5193,\n  \"cern</w>\": 44851,\n  \"cers</w>\": 13638,\n  \"cert</w>\": 27522,\n  \"certain\": 8526,\n  \"certain</w>\": 7883,\n  \"certainly</w>\": 10883,\n  \"certainty</w>\": 20054,\n  \"certi\": 4888,\n  \"certific\": 9443,\n  \"certificate</w>\": 11786,\n  \"certificates</w>\": 25281,\n  \"certification</w>\": 14735,\n  \"certified</w>\": 9288,\n  \"cerv\": 25738,\n  \"cervical</w>\": 35953,\n  \"ces\": 28715,\n  \"ces</w>\": 1604,\n  \"cesar\": 37025,\n  \"cesar</w>\": 28603,\n  \"cess\": 2314,\n  \"cess</w>\": 1554,\n  \"cessna</w>\": 36596,\n  \"cest</w>\": 27245,\n  \"cester\": 15769,\n  \"cester</w>\": 12718,\n  \"cet</w>\": 14960,\n  \"cett</w>\": 46708,\n  \"ceu</w>\": 37457,\n  \"cevic\": 48369,\n  \"cey</w>\": 20971,\n  \"cf\": 10189,\n  \"cf</w>\": 11171,\n  \"cfa</w>\": 34521,\n  \"cfb</w>\": 32931,\n  \"cfc</w>\": 11577,\n  \"cfd</w>\": 46171,\n  \"cfl\": 46320,\n  \"cfl</w>\": 22332,\n  \"cfo</w>\": 26937,\n  \"cfp</w>\": 40756,\n  \"cfr</w>\": 44033,\n  \"cfs</w>\": 32835,\n  \"cg\": 27118,\n  \"cg</w>\": 14740,\n  \"cgc</w>\": 38775,\n  \"cgi</w>\": 30520,\n  \"ch\": 540,\n  \"ch</w>\": 634,\n  \"cha\": 1587,\n  \"cha</w>\": 4541,\n  \"chab\": 26670,\n  \"chad\": 13095,\n  \"chad</w>\": 12923,\n  \"chae\": 9460,\n  \"chaf\": 38123,\n  \"chag\": 27989,\n  \"chai\": 31590,\n  \"chai</w>\": 18919,\n  \"chain\": 13898,\n  \"chain</w>\": 3946,\n  \"chained</w>\": 34402,\n  \"chains</w>\": 14438,\n  \"chainsaw</w>\": 37617,\n  \"chainz</w>\": 39687,\n  \"chair\": 4728,\n  \"chair</w>\": 4269,\n  \"chaired</w>\": 31664,\n  \"chairing</w>\": 42205,\n  \"chairman</w>\": 6901,\n  \"chairperson</w>\": 31584,\n  \"chairs</w>\": 12033,\n  \"chak\": 13702,\n  \"chak</w>\": 41713,\n  \"chakra\": 38304,\n  \"chakra</w>\": 33241,\n  \"chal\": 7397,\n  \"chal</w>\": 30809,\n  \"chale</w>\": 38099,\n  \"chalet</w>\": 37907,\n  \"chalk\": 31362,\n  \"chalk</w>\": 17846,\n  \"chall\": 2073,\n  \"challeng\": 4138,\n  \"challenge\": 29462,\n  \"challenge</w>\": 2836,\n  \"challenged</w>\": 17380,\n  \"challenger</w>\": 18228,\n  \"challengers</w>\": 46404,\n  \"challenges</w>\": 6280,\n  \"challenging</w>\": 11754,\n  \"chalmers</w>\": 47955,\n  \"cham\": 1290,\n  \"cham</w>\": 19951,\n  \"chamber\": 18983,\n  \"chamber</w>\": 7642,\n  \"chamberlain</w>\": 32756,\n  \"chambers</w>\": 16501,\n  \"chamele\": 34759,\n  \"chameleon</w>\": 41317,\n  \"champ\": 36813,\n  \"champ</w>\": 6602,\n  \"champag\": 10283,\n  \"champagne</w>\": 11007,\n  \"champi\": 1680,\n  \"champion\": 2643,\n  \"champion</w>\": 3950,\n  \"champions</w>\": 4227,\n  \"championship</w>\": 3429,\n  \"championships</w>\": 7047,\n  \"championsleague</w>\": 27638,\n  \"champs</w>\": 6240,\n  \"chan\": 1255,\n  \"chan</w>\": 6704,\n  \"chana</w>\": 48752,\n  \"chanc\": 13931,\n  \"chance\": 32940,\n  \"chance</w>\": 2594,\n  \"chancellor</w>\": 15886,\n  \"chances</w>\": 10870,\n  \"chand\": 7126,\n  \"chand</w>\": 41508,\n  \"chandelier</w>\": 30570,\n  \"chandi\": 12482,\n  \"chandigarh</w>\": 34106,\n  \"chandler</w>\": 17595,\n  \"chandra\": 27082,\n  \"chandra</w>\": 25348,\n  \"chanel</w>\": 16951,\n  \"chang\": 2233,\n  \"chang</w>\": 16461,\n  \"change\": 11608,\n  \"change</w>\": 1799,\n  \"changeable</w>\": 41335,\n  \"changed</w>\": 4907,\n  \"changer</w>\": 18406,\n  \"changers</w>\": 35185,\n  \"changes</w>\": 4938,\n  \"changing\": 40384,\n  \"changing</w>\": 5621,\n  \"changmin</w>\": 47410,\n  \"chann\": 8804,\n  \"channel\": 25837,\n  \"channel</w>\": 3847,\n  \"channeling</w>\": 28197,\n  \"channels</w>\": 13961,\n  \"channing</w>\": 37417,\n  \"chant\": 18165,\n  \"chant</w>\": 13521,\n  \"chanting</w>\": 32111,\n  \"chants</w>\": 22723,\n  \"chanyeol</w>\": 18805,\n  \"chao</w>\": 31815,\n  \"chaos</w>\": 10853,\n  \"chaotic</w>\": 33501,\n  \"chap\": 3825,\n  \"chap</w>\": 21939,\n  \"chapel\": 40859,\n  \"chapel</w>\": 10137,\n  \"chaplain</w>\": 38348,\n  \"chaplin</w>\": 32545,\n  \"chapman</w>\": 17968,\n  \"chapp\": 20634,\n  \"chaps</w>\": 36823,\n  \"chapter</w>\": 6014,\n  \"chapters</w>\": 22936,\n  \"char\": 1054,\n  \"char</w>\": 16017,\n  \"chara</w>\": 35668,\n  \"charac\": 2792,\n  \"character\": 10997,\n  \"character</w>\": 4009,\n  \"characterdesign</w>\": 38149,\n  \"characteri\": 20920,\n  \"characteristic</w>\": 44747,\n  \"characteristics</w>\": 26037,\n  \"characters</w>\": 6564,\n  \"charan</w>\": 31851,\n  \"charcoal</w>\": 19268,\n  \"chard</w>\": 17524,\n  \"chardon\": 26599,\n  \"chardonnay</w>\": 28161,\n  \"charge\": 25032,\n  \"charge</w>\": 5948,\n  \"chargeable</w>\": 35664,\n  \"charged</w>\": 7916,\n  \"charger</w>\": 13090,\n  \"chargers</w>\": 17352,\n  \"charges</w>\": 8962,\n  \"charging</w>\": 12514,\n  \"chariot</w>\": 38811,\n  \"charis\": 24449,\n  \"charisma</w>\": 45041,\n  \"charismatic</w>\": 37205,\n  \"charitable</w>\": 23256,\n  \"charities</w>\": 18493,\n  \"charity\": 20008,\n  \"charity</w>\": 4607,\n  \"charitytuesday</w>\": 42794,\n  \"charl\": 47736,\n  \"charle\": 10217,\n  \"charles\": 27983,\n  \"charles</w>\": 5127,\n  \"charleston</w>\": 15478,\n  \"charley</w>\": 38027,\n  \"charli\": 21784,\n  \"charli</w>\": 49392,\n  \"charlie\": 16764,\n  \"charlie</w>\": 6393,\n  \"charlotte\": 18445,\n  \"charlotte</w>\": 7871,\n  \"charlottesville</w>\": 32027,\n  \"charlton</w>\": 27048,\n  \"charm</w>\": 10876,\n  \"charmed</w>\": 39790,\n  \"charming</w>\": 12177,\n  \"charms</w>\": 21944,\n  \"charred</w>\": 44085,\n  \"chart\": 42685,\n  \"chart</w>\": 5053,\n  \"charted</w>\": 27939,\n  \"charter\": 42345,\n  \"charter</w>\": 13569,\n  \"chartered</w>\": 31298,\n  \"charters</w>\": 46626,\n  \"charting</w>\": 39841,\n  \"charts</w>\": 10728,\n  \"chas\": 10717,\n  \"chas</w>\": 29838,\n  \"chase\": 21503,\n  \"chase</w>\": 3859,\n  \"chased</w>\": 30342,\n  \"chaser</w>\": 29560,\n  \"chasers</w>\": 34158,\n  \"chases</w>\": 45011,\n  \"chasing\": 46909,\n  \"chasing</w>\": 13376,\n  \"chassis</w>\": 29188,\n  \"chast\": 42176,\n  \"chasu\": 41352,\n  \"chat\": 5355,\n  \"chat</w>\": 2402,\n  \"chatbots</w>\": 43994,\n  \"chate\": 30377,\n  \"chateau\": 44582,\n  \"chateau</w>\": 23520,\n  \"chath\": 46849,\n  \"chatham</w>\": 32030,\n  \"chats</w>\": 13263,\n  \"chatt\": 21618,\n  \"chattanoo\": 28009,\n  \"chattanooga</w>\": 29866,\n  \"chatted</w>\": 34124,\n  \"chatter\": 33473,\n  \"chatter</w>\": 41103,\n  \"chatting</w>\": 12401,\n  \"chatur\": 33839,\n  \"chau\": 11263,\n  \"chau</w>\": 37536,\n  \"chauffe\": 45440,\n  \"chauhan</w>\": 46663,\n  \"chav\": 28997,\n  \"chavez</w>\": 27480,\n  \"chaw\": 39639,\n  \"chay\": 45317,\n  \"chaz\": 47815,\n  \"chc</w>\": 36233,\n  \"chd</w>\": 41645,\n  \"che\": 983,\n  \"che</w>\": 3842,\n  \"chea</w>\": 39580,\n  \"chead\": 48358,\n  \"cheap\": 27036,\n  \"cheap</w>\": 8678,\n  \"cheape\": 26164,\n  \"cheaper</w>\": 17776,\n  \"cheapest</w>\": 26640,\n  \"cheat</w>\": 18180,\n  \"cheated</w>\": 34285,\n  \"cheating</w>\": 19722,\n  \"chec\": 1113,\n  \"check\": 7672,\n  \"check</w>\": 1217,\n  \"checked</w>\": 10387,\n  \"checker</w>\": 45883,\n  \"checkers</w>\": 48181,\n  \"checking</w>\": 7441,\n  \"checklist</w>\": 26989,\n  \"checkout</w>\": 13101,\n  \"checkpoint</w>\": 27531,\n  \"checks</w>\": 13737,\n  \"ched\": 11341,\n  \"ched</w>\": 2146,\n  \"cheddar</w>\": 20551,\n  \"chee\": 5326,\n  \"chee</w>\": 20944,\n  \"cheek\": 40000,\n  \"cheek</w>\": 21227,\n  \"cheeks</w>\": 23019,\n  \"cheeky</w>\": 15068,\n  \"cheer\": 9733,\n  \"cheer</w>\": 6918,\n  \"cheered</w>\": 38111,\n  \"cheerful</w>\": 28882,\n  \"cheering</w>\": 14289,\n  \"cheerleader</w>\": 29072,\n  \"cheerleaders</w>\": 22343,\n  \"cheerleading</w>\": 36366,\n  \"cheers</w>\": 6562,\n  \"chees\": 15182,\n  \"cheese\": 10738,\n  \"cheese</w>\": 4108,\n  \"cheeseburger</w>\": 41200,\n  \"cheesecake</w>\": 17803,\n  \"cheeses</w>\": 36076,\n  \"cheesy</w>\": 22093,\n  \"cheetah</w>\": 27431,\n  \"chef\": 12137,\n  \"chef</w>\": 4895,\n  \"chefs</w>\": 14486,\n  \"chek</w>\": 43745,\n  \"chel\": 3084,\n  \"chel</w>\": 25970,\n  \"chell</w>\": 46854,\n  \"chelle</w>\": 30141,\n  \"chelms\": 34936,\n  \"chelmsford</w>\": 39890,\n  \"chelse\": 19071,\n  \"chelsea</w>\": 6031,\n  \"chelseafc</w>\": 25927,\n  \"chelten\": 18889,\n  \"cheltenham</w>\": 21589,\n  \"chem\": 5667,\n  \"chem</w>\": 13698,\n  \"chemi\": 7179,\n  \"chemical\": 39376,\n  \"chemical</w>\": 9208,\n  \"chemicals</w>\": 17426,\n  \"chemist</w>\": 23138,\n  \"chemistry</w>\": 8841,\n  \"chemo\": 33095,\n  \"chemo</w>\": 36348,\n  \"chemotherapy</w>\": 41412,\n  \"chemtrails</w>\": 46015,\n  \"chen\": 5907,\n  \"chen</w>\": 8983,\n  \"cheney</w>\": 43522,\n  \"cheng\": 32512,\n  \"cheng</w>\": 30190,\n  \"chenko</w>\": 29073,\n  \"chennai\": 28948,\n  \"chennai</w>\": 12791,\n  \"cheon</w>\": 11498,\n  \"cheque</w>\": 28168,\n  \"cher\": 3597,\n  \"cher</w>\": 3466,\n  \"cheri\": 26471,\n  \"cherish</w>\": 20053,\n  \"cherished</w>\": 42325,\n  \"cherno\": 35376,\n  \"chernobyl</w>\": 40554,\n  \"chero\": 19844,\n  \"cherokee</w>\": 22860,\n  \"cherries</w>\": 27248,\n  \"cherry\": 21470,\n  \"cherry</w>\": 7325,\n  \"chers</w>\": 5789,\n  \"chery</w>\": 38478,\n  \"cheryl\": 37784,\n  \"cheryl</w>\": 20600,\n  \"ches\": 18346,\n  \"ches</w>\": 1910,\n  \"chesa\": 28349,\n  \"chesapeake</w>\": 32909,\n  \"cheshire</w>\": 17130,\n  \"chesney</w>\": 48747,\n  \"chess\": 27170,\n  \"chess</w>\": 8397,\n  \"chest\": 18217,\n  \"chest</w>\": 10563,\n  \"chester\": 10466,\n  \"chester</w>\": 3343,\n  \"chesterfield</w>\": 32975,\n  \"chestnut</w>\": 21834,\n  \"chet</w>\": 9663,\n  \"chett</w>\": 24695,\n  \"chev\": 7152,\n  \"chev</w>\": 41145,\n  \"chevro\": 12850,\n  \"chevrolet</w>\": 13240,\n  \"chevron</w>\": 33792,\n  \"chevy</w>\": 16581,\n  \"chew\": 32645,\n  \"chew</w>\": 22642,\n  \"chewan</w>\": 23689,\n  \"chewbacca</w>\": 49355,\n  \"chewing</w>\": 31486,\n  \"chewy</w>\": 42940,\n  \"chey\": 26968,\n  \"chey</w>\": 31208,\n  \"cheyenne</w>\": 34805,\n  \"chez\": 49183,\n  \"chez</w>\": 10556,\n  \"chf</w>\": 33021,\n  \"chfield</w>\": 41619,\n  \"chhat\": 34127,\n  \"chhattisgarh</w>\": 44246,\n  \"chi\": 1337,\n  \"chi</w>\": 4039,\n  \"chia</w>\": 19147,\n  \"chiang</w>\": 33764,\n  \"chibi</w>\": 22306,\n  \"chic\": 2627,\n  \"chic</w>\": 9091,\n  \"chica</w>\": 44190,\n  \"chicag\": 16778,\n  \"chicago\": 15038,\n  \"chicago</w>\": 3530,\n  \"chicagof\": 40638,\n  \"chicagofire</w>\": 46576,\n  \"chicas</w>\": 40664,\n  \"chichester</w>\": 43823,\n  \"chick\": 3170,\n  \"chick</w>\": 11238,\n  \"chicken\": 26322,\n  \"chicken</w>\": 3717,\n  \"chickens</w>\": 21658,\n  \"chickpea</w>\": 48109,\n  \"chicks</w>\": 17810,\n  \"chico</w>\": 30379,\n  \"chie\": 40046,\n  \"chie</w>\": 12388,\n  \"chief\": 16830,\n  \"chief</w>\": 3455,\n  \"chiefs</w>\": 11419,\n  \"chiev\": 47761,\n  \"chiff\": 27407,\n  \"chiffon</w>\": 31817,\n  \"chig\": 42952,\n  \"chihu\": 22857,\n  \"chihuahu\": 25437,\n  \"chihuahua</w>\": 30181,\n  \"chik</w>\": 45455,\n  \"chil\": 1333,\n  \"child\": 4392,\n  \"child</w>\": 2913,\n  \"childcare</w>\": 31133,\n  \"childhood\": 34772,\n  \"childhood</w>\": 7551,\n  \"childish</w>\": 31939,\n  \"childre\": 2135,\n  \"children\": 11101,\n  \"children</w>\": 2153,\n  \"childrens\": 31551,\n  \"childrens</w>\": 21553,\n  \"childs</w>\": 39521,\n  \"chile</w>\": 10022,\n  \"chilean</w>\": 33186,\n  \"chili</w>\": 13033,\n  \"chill\": 6498,\n  \"chill</w>\": 6382,\n  \"chilled</w>\": 23540,\n  \"chillen</w>\": 45160,\n  \"chilli\": 26787,\n  \"chilli</w>\": 17067,\n  \"chillin</w>\": 10347,\n  \"chilling</w>\": 10179,\n  \"chillout</w>\": 39842,\n  \"chills</w>\": 25460,\n  \"chilly</w>\": 14450,\n  \"chim\": 10543,\n  \"chimney</w>\": 26821,\n  \"chimp</w>\": 44374,\n  \"chin\": 6555,\n  \"chin</w>\": 8979,\n  \"china\": 38943,\n  \"china</w>\": 2817,\n  \"chinatown</w>\": 28582,\n  \"chine\": 4013,\n  \"chinese\": 30568,\n  \"chinese</w>\": 4271,\n  \"ching\": 34621,\n  \"ching</w>\": 1439,\n  \"chino\": 47181,\n  \"chino</w>\": 27440,\n  \"chinook</w>\": 41577,\n  \"chinson</w>\": 33786,\n  \"chio</w>\": 19650,\n  \"chip\": 19271,\n  \"chip</w>\": 8730,\n  \"chipmun\": 46384,\n  \"chipot\": 17702,\n  \"chipotle</w>\": 19284,\n  \"chipp\": 39854,\n  \"chippe\": 46541,\n  \"chipped</w>\": 39892,\n  \"chipping</w>\": 40323,\n  \"chips</w>\": 8855,\n  \"chir\": 15564,\n  \"chiro\": 23413,\n  \"chiroprac\": 25987,\n  \"chiropractic</w>\": 34437,\n  \"chis\": 19920,\n  \"chistan</w>\": 20523,\n  \"chiswick</w>\": 47290,\n  \"chit\": 13515,\n  \"chit</w>\": 45626,\n  \"chita</w>\": 49184,\n  \"chitec\": 39862,\n  \"chive</w>\": 29222,\n  \"chives</w>\": 34921,\n  \"chk</w>\": 47424,\n  \"chl</w>\": 38592,\n  \"chley</w>\": 47748,\n  \"chlo\": 10374,\n  \"chloe\": 39966,\n  \"chloe</w>\": 13992,\n  \"chlor\": 23135,\n  \"chman</w>\": 35835,\n  \"chment</w>\": 20848,\n  \"chner</w>\": 48277,\n  \"cho\": 1327,\n  \"cho</w>\": 5150,\n  \"choa</w>\": 43077,\n  \"choc\": 32772,\n  \"choc</w>\": 21983,\n  \"choco\": 46285,\n  \"choco</w>\": 32692,\n  \"chocol\": 3443,\n  \"chocolat</w>\": 44631,\n  \"chocolate\": 29389,\n  \"chocolate</w>\": 3820,\n  \"chocolates</w>\": 24120,\n  \"choi</w>\": 23749,\n  \"choic\": 35606,\n  \"choice\": 23857,\n  \"choice</w>\": 4051,\n  \"choices</w>\": 11016,\n  \"choir</w>\": 9214,\n  \"choirs</w>\": 43277,\n  \"choke</w>\": 30231,\n  \"choked</w>\": 43521,\n  \"choker</w>\": 39642,\n  \"choking</w>\": 39993,\n  \"chol\": 19802,\n  \"cholera</w>\": 45999,\n  \"cholester\": 26861,\n  \"cholesterol</w>\": 27982,\n  \"chom\": 25151,\n  \"chon\": 20416,\n  \"chon</w>\": 21601,\n  \"chondri\": 37379,\n  \"chong</w>\": 26220,\n  \"choo\": 3869,\n  \"choo</w>\": 24437,\n  \"chool</w>\": 29578,\n  \"chools</w>\": 41958,\n  \"choose\": 22756,\n  \"choose</w>\": 5073,\n  \"chooses</w>\": 29923,\n  \"choosing</w>\": 13475,\n  \"chop\": 10458,\n  \"chop</w>\": 16663,\n  \"chopin</w>\": 42256,\n  \"chopped</w>\": 22580,\n  \"chopper</w>\": 24011,\n  \"chopping</w>\": 35375,\n  \"chopra</w>\": 24258,\n  \"chops</w>\": 26321,\n  \"chor\": 7567,\n  \"chor</w>\": 47795,\n  \"choral</w>\": 26684,\n  \"chord</w>\": 33005,\n  \"chords</w>\": 36152,\n  \"choreo\": 17443,\n  \"choreographer</w>\": 35952,\n  \"choreography</w>\": 32749,\n  \"chores</w>\": 40483,\n  \"chori\": 25718,\n  \"chorizo</w>\": 30802,\n  \"chorus</w>\": 20869,\n  \"chos</w>\": 26559,\n  \"chose</w>\": 11090,\n  \"chosen</w>\": 10044,\n  \"chou\": 16960,\n  \"chou</w>\": 42917,\n  \"choudhary</w>\": 45503,\n  \"chow\": 20257,\n  \"chow</w>\": 21657,\n  \"chowder</w>\": 37886,\n  \"chp</w>\": 35896,\n  \"chr</w>\": 36918,\n  \"chri\": 1135,\n  \"chris\": 9907,\n  \"chris</w>\": 2978,\n  \"chrisbrown</w>\": 41035,\n  \"chriss\": 46745,\n  \"chrissy\": 44762,\n  \"chrissy</w>\": 40485,\n  \"christ\": 1403,\n  \"christ</w>\": 6703,\n  \"christchurch</w>\": 27100,\n  \"christen\": 31956,\n  \"christensen</w>\": 42226,\n  \"christi\": 3328,\n  \"christi</w>\": 33213,\n  \"christian\": 11792,\n  \"christian</w>\": 4729,\n  \"christianity</w>\": 20000,\n  \"christians</w>\": 14842,\n  \"christie</w>\": 16084,\n  \"christin\": 30189,\n  \"christina</w>\": 15925,\n  \"christine\": 42610,\n  \"christine</w>\": 14712,\n  \"christma\": 12039,\n  \"christmas\": 18174,\n  \"christmas</w>\": 1677,\n  \"christmaseve</w>\": 44381,\n  \"christmass\": 44873,\n  \"christop\": 7917,\n  \"christoph</w>\": 47844,\n  \"christophe</w>\": 45486,\n  \"christopher\": 33349,\n  \"christopher</w>\": 9630,\n  \"christy</w>\": 28331,\n  \"chro\": 13207,\n  \"chromatic</w>\": 44207,\n  \"chrome\": 24843,\n  \"chrome</w>\": 9529,\n  \"chromo\": 35809,\n  \"chron\": 5577,\n  \"chron</w>\": 39781,\n  \"chronic\": 10115,\n  \"chronic</w>\": 13677,\n  \"chronicle</w>\": 20034,\n  \"chronicles</w>\": 18905,\n  \"chrono\": 29387,\n  \"chronograph</w>\": 38397,\n  \"chry\": 13508,\n  \"chrysler</w>\": 20078,\n  \"chs\": 40277,\n  \"chs</w>\": 8391,\n  \"chsnews</w>\": 44919,\n  \"cht</w>\": 11384,\n  \"chter</w>\": 47811,\n  \"chu\": 3799,\n  \"chu</w>\": 13622,\n  \"chubby</w>\": 29109,\n  \"chuck\": 13211,\n  \"chuck</w>\": 9894,\n  \"chuckle</w>\": 35733,\n  \"chucky</w>\": 42026,\n  \"chuffed</w>\": 27233,\n  \"chuk\": 25878,\n  \"chuk</w>\": 27221,\n  \"chul</w>\": 33001,\n  \"chum\": 46869,\n  \"chum</w>\": 41767,\n  \"chun\": 14693,\n  \"chun</w>\": 25391,\n  \"chung</w>\": 28418,\n  \"chunk</w>\": 30275,\n  \"chunks</w>\": 45538,\n  \"chunky</w>\": 27978,\n  \"chups</w>\": 46331,\n  \"chur\": 2309,\n  \"church\": 14956,\n  \"church</w>\": 2735,\n  \"churches</w>\": 15539,\n  \"churchill</w>\": 17527,\n  \"chus</w>\": 36246,\n  \"chut\": 28788,\n  \"chutney</w>\": 36261,\n  \"chy\": 15131,\n  \"chy</w>\": 8096,\n  \"chyna</w>\": 43398,\n  \"chÃ¢\": 48669,\n  \"ci\": 698,\n  \"ci</w>\": 5798,\n  \"cia</w>\": 4019,\n  \"cial</w>\": 1143,\n  \"cian</w>\": 32323,\n  \"ciao</w>\": 37677,\n  \"ciara</w>\": 31369,\n  \"cible</w>\": 28873,\n  \"cic\": 14539,\n  \"cic</w>\": 21517,\n  \"cid</w>\": 27359,\n  \"cide</w>\": 34178,\n  \"cider</w>\": 13547,\n  \"cides</w>\": 41326,\n  \"cie</w>\": 19730,\n  \"cier\": 24067,\n  \"cies</w>\": 6785,\n  \"cif</w>\": 35698,\n  \"cigar\": 26031,\n  \"cigar</w>\": 16525,\n  \"cigare\": 13044,\n  \"cigarette</w>\": 18548,\n  \"cigarettes</w>\": 22750,\n  \"cigars</w>\": 20750,\n  \"cii</w>\": 42408,\n  \"cil\": 9217,\n  \"cil</w>\": 2998,\n  \"cilan\": 33998,\n  \"cilantro</w>\": 34568,\n  \"cili\": 18977,\n  \"ciliation</w>\": 25294,\n  \"cim</w>\": 30021,\n  \"cin\": 2396,\n  \"cin</w>\": 25367,\n  \"cina</w>\": 39467,\n  \"cincin\": 13291,\n  \"cincinnati</w>\": 14197,\n  \"cinco</w>\": 25131,\n  \"cincode\": 40930,\n  \"cincodemayo</w>\": 42542,\n  \"cincy\": 30015,\n  \"cincy</w>\": 30286,\n  \"cinde\": 20660,\n  \"cinderella</w>\": 21515,\n  \"cindy\": 34439,\n  \"cindy</w>\": 18532,\n  \"cine\": 4015,\n  \"cine</w>\": 27451,\n  \"cinema\": 38251,\n  \"cinema</w>\": 6443,\n  \"cinemas</w>\": 14845,\n  \"cinematic</w>\": 25602,\n  \"cinemato\": 21919,\n  \"cinematographer</w>\": 39059,\n  \"cinematography</w>\": 33802,\n  \"ciner\": 39882,\n  \"cing</w>\": 4014,\n  \"cini</w>\": 25699,\n  \"cinnam\": 12768,\n  \"cinnamon</w>\": 13460,\n  \"cino</w>\": 18616,\n  \"cio\": 44584,\n  \"cio</w>\": 9954,\n  \"cion</w>\": 22024,\n  \"ciones</w>\": 37155,\n  \"cious</w>\": 38466,\n  \"cip\": 32884,\n  \"cir\": 2459,\n  \"cir</w>\": 41135,\n  \"circa</w>\": 10411,\n  \"circle\": 33574,\n  \"circle</w>\": 7117,\n  \"circles</w>\": 19411,\n  \"circling</w>\": 46036,\n  \"circu\": 5143,\n  \"circuit\": 35583,\n  \"circuit</w>\": 9801,\n  \"circuits</w>\": 33260,\n  \"circul\": 16618,\n  \"circular</w>\": 19733,\n  \"circulare\": 39525,\n  \"circulareconomy</w>\": 39878,\n  \"circulated</w>\": 46258,\n  \"circulating</w>\": 42980,\n  \"circulation</w>\": 27880,\n  \"circum\": 13406,\n  \"circumstances</w>\": 18786,\n  \"circus</w>\": 11833,\n  \"cirque</w>\": 36049,\n  \"cis\": 9459,\n  \"cis</w>\": 23513,\n  \"cisco\": 36689,\n  \"cisco</w>\": 19290,\n  \"cise</w>\": 19657,\n  \"cisely</w>\": 33434,\n  \"cision</w>\": 41957,\n  \"cism</w>\": 24166,\n  \"cist</w>\": 40906,\n  \"cit\": 4420,\n  \"cit</w>\": 31294,\n  \"citadel</w>\": 38036,\n  \"citation</w>\": 33581,\n  \"cite</w>\": 32641,\n  \"cited</w>\": 25069,\n  \"cites</w>\": 34490,\n  \"citi\": 4280,\n  \"citi</w>\": 30270,\n  \"cities</w>\": 5441,\n  \"citing</w>\": 29088,\n  \"citiz\": 5816,\n  \"citizen\": 11720,\n  \"citizen</w>\": 9814,\n  \"citizens</w>\": 7949,\n  \"citizenship</w>\": 17386,\n  \"cito</w>\": 42636,\n  \"citro\": 27941,\n  \"citroen</w>\": 35805,\n  \"citrus</w>\": 17379,\n  \"city\": 5002,\n  \"city</w>\": 1305,\n  \"cityfc</w>\": 28751,\n  \"cityo\": 25709,\n  \"cityof\": 11595,\n  \"cityscape</w>\": 40808,\n  \"ciu\": 39693,\n  \"cius</w>\": 42559,\n  \"civ\": 40039,\n  \"civic\": 32240,\n  \"civic</w>\": 11888,\n  \"civil\": 6923,\n  \"civil</w>\": 6450,\n  \"civilian</w>\": 21187,\n  \"civilians</w>\": 18076,\n  \"civilization</w>\": 22503,\n  \"civilwar</w>\": 34524,\n  \"ciÃ³n</w>\": 44700,\n  \"cj\": 15238,\n  \"cj</w>\": 15205,\n  \"ck\": 916,\n  \"ck</w>\": 868,\n  \"cke\": 25224,\n  \"cke</w>\": 40989,\n  \"cked</w>\": 3441,\n  \"cken\": 25566,\n  \"cker\": 15509,\n  \"cker</w>\": 4744,\n  \"ckers</w>\": 37073,\n  \"cket</w>\": 5525,\n  \"ckett</w>\": 33899,\n  \"ckey\": 15029,\n  \"ckey</w>\": 3657,\n  \"cki\": 36916,\n  \"cki</w>\": 41055,\n  \"cking</w>\": 4805,\n  \"cko</w>\": 28818,\n  \"cks</w>\": 2031,\n  \"cky\": 26229,\n  \"cky</w>\": 3083,\n  \"cl\": 969,\n  \"cl</w>\": 6482,\n  \"cla\": 940,\n  \"cla</w>\": 20636,\n  \"clad</w>\": 31606,\n  \"cladding</w>\": 46411,\n  \"clai\": 29459,\n  \"claim\": 4290,\n  \"claim</w>\": 6607,\n  \"claimed</w>\": 9010,\n  \"claiming</w>\": 15286,\n  \"claims</w>\": 6852,\n  \"clair\": 31441,\n  \"clair</w>\": 14039,\n  \"claire\": 20410,\n  \"claire</w>\": 10460,\n  \"clam\": 13588,\n  \"clam</w>\": 32598,\n  \"clamation</w>\": 21793,\n  \"clamp</w>\": 41501,\n  \"clams</w>\": 38849,\n  \"clan\": 29252,\n  \"clan</w>\": 14114,\n  \"clancy</w>\": 37227,\n  \"clans</w>\": 38279,\n  \"clap\": 30037,\n  \"clap</w>\": 25546,\n  \"clapham</w>\": 43619,\n  \"clapton</w>\": 37683,\n  \"clar\": 3617,\n  \"clara</w>\": 19468,\n  \"clare\": 18948,\n  \"clare</w>\": 15927,\n  \"claremont</w>\": 47789,\n  \"clarence</w>\": 29320,\n  \"clari\": 15175,\n  \"clarify</w>\": 37004,\n  \"clarinet</w>\": 41178,\n  \"clarity</w>\": 21323,\n  \"clark\": 13340,\n  \"clark</w>\": 7521,\n  \"clarke</w>\": 11548,\n  \"clarkson</w>\": 25706,\n  \"clas\": 32003,\n  \"clash\": 38367,\n  \"clash</w>\": 9359,\n  \"clashes</w>\": 25193,\n  \"clasico</w>\": 43567,\n  \"class\": 2876,\n  \"class</w>\": 1874,\n  \"classes</w>\": 6919,\n  \"classi\": 2507,\n  \"classic\": 9353,\n  \"classic</w>\": 2713,\n  \"classical\": 22179,\n  \"classical</w>\": 11355,\n  \"classicalmusic</w>\": 27806,\n  \"classiccar</w>\": 46906,\n  \"classiccars</w>\": 21064,\n  \"classics</w>\": 10634,\n  \"classification</w>\": 26612,\n  \"classified</w>\": 22056,\n  \"classmate</w>\": 37090,\n  \"classmates</w>\": 30062,\n  \"classof</w>\": 25345,\n  \"classroom</w>\": 9001,\n  \"classrooms</w>\": 25768,\n  \"classy</w>\": 11615,\n  \"clau\": 7526,\n  \"claude</w>\": 17461,\n  \"claudi\": 39439,\n  \"claudia</w>\": 21893,\n  \"claudio</w>\": 31230,\n  \"claus</w>\": 23317,\n  \"clause</w>\": 26151,\n  \"clave</w>\": 24111,\n  \"claw\": 49230,\n  \"claw</w>\": 19106,\n  \"claws</w>\": 29161,\n  \"clay\": 10402,\n  \"clay</w>\": 8823,\n  \"clays</w>\": 26128,\n  \"clayton\": 46445,\n  \"clayton</w>\": 19413,\n  \"clc</w>\": 31380,\n  \"cle\": 1321,\n  \"cle</w>\": 2537,\n  \"clean\": 3572,\n  \"clean</w>\": 3772,\n  \"cleaned</w>\": 17468,\n  \"cleanenergy</w>\": 43538,\n  \"cleaner</w>\": 15619,\n  \"cleaners</w>\": 33258,\n  \"cleaning</w>\": 7210,\n  \"cleanliness</w>\": 47886,\n  \"cleans</w>\": 40827,\n  \"cleanse</w>\": 28717,\n  \"cleanser</w>\": 44170,\n  \"cleansing</w>\": 25931,\n  \"cleanup</w>\": 22353,\n  \"clear\": 4631,\n  \"clear</w>\": 3143,\n  \"clearance</w>\": 17959,\n  \"cleared</w>\": 14880,\n  \"clearer</w>\": 37031,\n  \"clearing</w>\": 15481,\n  \"clearly</w>\": 7767,\n  \"clears</w>\": 29092,\n  \"clearwater</w>\": 32124,\n  \"cleary</w>\": 44342,\n  \"cleats</w>\": 33486,\n  \"cleavage</w>\": 44165,\n  \"cled</w>\": 12827,\n  \"clegg</w>\": 42915,\n  \"clemens</w>\": 45896,\n  \"clement\": 22592,\n  \"clement</w>\": 24714,\n  \"clemente</w>\": 42461,\n  \"clementine</w>\": 47112,\n  \"clements</w>\": 49175,\n  \"clemson\": 38170,\n  \"clemson</w>\": 19537,\n  \"clen\": 35547,\n  \"cleo</w>\": 40344,\n  \"cleop\": 36287,\n  \"cleopatra</w>\": 41212,\n  \"cler\": 11828,\n  \"clergy</w>\": 42635,\n  \"cleric</w>\": 43748,\n  \"clerk</w>\": 22230,\n  \"clermont</w>\": 47529,\n  \"cles</w>\": 8077,\n  \"cleve\": 37599,\n  \"clevel\": 7701,\n  \"cleveland\": 30716,\n  \"cleveland</w>\": 8430,\n  \"clever\": 30977,\n  \"clever</w>\": 13385,\n  \"clg</w>\": 47546,\n  \"cli\": 1503,\n  \"clich\": 44407,\n  \"click\": 16676,\n  \"click</w>\": 3585,\n  \"clicked</w>\": 29015,\n  \"clicking</w>\": 26542,\n  \"clicks</w>\": 31250,\n  \"client\": 48528,\n  \"client</w>\": 7467,\n  \"clients</w>\": 8114,\n  \"clif\": 13182,\n  \"cliff\": 23827,\n  \"cliff</w>\": 10625,\n  \"cliffe</w>\": 15170,\n  \"clifford</w>\": 24226,\n  \"cliffs</w>\": 20953,\n  \"clifton</w>\": 23878,\n  \"climat\": 37283,\n  \"climate\": 7854,\n  \"climate</w>\": 4589,\n  \"climateaction</w>\": 31622,\n  \"climatechange</w>\": 11055,\n  \"climates</w>\": 46022,\n  \"climax</w>\": 37033,\n  \"climb\": 7421,\n  \"climb</w>\": 10649,\n  \"climbed</w>\": 22528,\n  \"climber</w>\": 36910,\n  \"climbers</w>\": 47648,\n  \"climbing</w>\": 9877,\n  \"climbs</w>\": 29098,\n  \"clin\": 2879,\n  \"clinch</w>\": 30404,\n  \"clinched</w>\": 44064,\n  \"cline</w>\": 37460,\n  \"cling\": 37068,\n  \"cling</w>\": 4760,\n  \"clinic</w>\": 7926,\n  \"clinical\": 35133,\n  \"clinical</w>\": 9148,\n  \"clinicians</w>\": 45866,\n  \"clinics</w>\": 23330,\n  \"clint\": 37542,\n  \"clint</w>\": 21160,\n  \"clinton\": 34403,\n  \"clinton</w>\": 5820,\n  \"clio</w>\": 46889,\n  \"clip\": 39712,\n  \"clip</w>\": 9289,\n  \"clipped</w>\": 45524,\n  \"clipper</w>\": 42245,\n  \"clippers</w>\": 23319,\n  \"clipping</w>\": 47484,\n  \"clips</w>\": 16594,\n  \"clique</w>\": 34983,\n  \"clive\": 36086,\n  \"clive</w>\": 21509,\n  \"cll\": 46091,\n  \"cllr\": 45743,\n  \"cllr</w>\": 23034,\n  \"clo\": 1194,\n  \"cloak</w>\": 36528,\n  \"clock\": 19878,\n  \"clock</w>\": 6716,\n  \"clocked</w>\": 49049,\n  \"clocks</w>\": 25895,\n  \"clockwise</w>\": 46150,\n  \"clockwork</w>\": 42297,\n  \"clon\": 24477,\n  \"clone</w>\": 22854,\n  \"clones</w>\": 48047,\n  \"clooney</w>\": 33161,\n  \"clos</w>\": 48821,\n  \"close\": 10603,\n  \"close</w>\": 2660,\n  \"closed</w>\": 4552,\n  \"closely</w>\": 13478,\n  \"closer</w>\": 6377,\n  \"closes</w>\": 11354,\n  \"closest</w>\": 14975,\n  \"closet</w>\": 14221,\n  \"closeup</w>\": 35439,\n  \"closing</w>\": 7101,\n  \"closure</w>\": 13249,\n  \"closures</w>\": 22923,\n  \"cloth</w>\": 14559,\n  \"clothes</w>\": 7080,\n  \"clothing</w>\": 7425,\n  \"clou\": 4069,\n  \"cloud\": 12965,\n  \"cloud</w>\": 3887,\n  \"cloudcomputing</w>\": 41390,\n  \"clouds</w>\": 6244,\n  \"cloudy</w>\": 13106,\n  \"clough</w>\": 42909,\n  \"clover\": 39574,\n  \"clover</w>\": 22812,\n  \"clow\": 18386,\n  \"clown</w>\": 15329,\n  \"clowns</w>\": 30820,\n  \"cls</w>\": 44251,\n  \"clt\": 29651,\n  \"clt</w>\": 24236,\n  \"clu\": 996,\n  \"club\": 9642,\n  \"club</w>\": 1736,\n  \"clubbing</w>\": 48128,\n  \"clubhouse</w>\": 26553,\n  \"clubs</w>\": 9437,\n  \"clue</w>\": 14994,\n  \"clueless</w>\": 35350,\n  \"clues</w>\": 23764,\n  \"clusive</w>\": 41362,\n  \"cluster</w>\": 15595,\n  \"clusters</w>\": 33217,\n  \"clut\": 28507,\n  \"clutch</w>\": 13953,\n  \"clutter</w>\": 40804,\n  \"cly\": 12037,\n  \"clyde\": 39557,\n  \"clyde</w>\": 18469,\n  \"cm\": 10190,\n  \"cm</w>\": 3741,\n  \"cma\": 30554,\n  \"cma</w>\": 31388,\n  \"cmc</w>\": 45839,\n  \"cmdr</w>\": 48250,\n  \"cme</w>\": 34946,\n  \"cmo</w>\": 24589,\n  \"cmon</w>\": 42904,\n  \"cmp\": 46355,\n  \"cms</w>\": 22520,\n  \"cmt</w>\": 42727,\n  \"cmu</w>\": 43046,\n  \"cn\": 3886,\n  \"cn</w>\": 16200,\n  \"cna</w>\": 48287,\n  \"cnbc\": 41242,\n  \"cnbc</w>\": 24371,\n  \"cnblue</w>\": 36018,\n  \"cnc</w>\": 20571,\n  \"cnet</w>\": 47487,\n  \"cnews</w>\": 24319,\n  \"cng</w>\": 41496,\n  \"cnn\": 22405,\n  \"cnn</w>\": 8259,\n  \"cns</w>\": 46095,\n  \"cny</w>\": 31614,\n  \"co\": 622,\n  \"co</w>\": 1320,\n  \"coa</w>\": 29167,\n  \"coach\": 3275,\n  \"coach</w>\": 2312,\n  \"coached</w>\": 30228,\n  \"coachella</w>\": 20222,\n  \"coaches</w>\": 6924,\n  \"coaching</w>\": 7766,\n  \"coal\": 10227,\n  \"coal</w>\": 7919,\n  \"coalition</w>\": 12920,\n  \"coast\": 6398,\n  \"coast</w>\": 3720,\n  \"coastal\": 38246,\n  \"coastal</w>\": 10852,\n  \"coaster</w>\": 15944,\n  \"coasters</w>\": 31548,\n  \"coastguard</w>\": 40601,\n  \"coastline</w>\": 27959,\n  \"coasts</w>\": 42225,\n  \"coat\": 28869,\n  \"coat</w>\": 7356,\n  \"coated</w>\": 23401,\n  \"coates</w>\": 36899,\n  \"coating</w>\": 25369,\n  \"coatings</w>\": 48706,\n  \"coats</w>\": 18075,\n  \"cob\": 20140,\n  \"cob</w>\": 32863,\n  \"cobain</w>\": 36866,\n  \"cobalt</w>\": 30896,\n  \"cobb</w>\": 22719,\n  \"cobble\": 47894,\n  \"cobra</w>\": 21574,\n  \"coc\": 23036,\n  \"coc</w>\": 39498,\n  \"coca</w>\": 21197,\n  \"cocac\": 26393,\n  \"cocacola</w>\": 31248,\n  \"cocaine</w>\": 20534,\n  \"coch\": 18599,\n  \"cochran</w>\": 48798,\n  \"cochrane</w>\": 41752,\n  \"coco\": 11850,\n  \"coco</w>\": 13316,\n  \"cocoa</w>\": 18074,\n  \"cocon\": 8597,\n  \"coconut</w>\": 9581,\n  \"cod\": 16132,\n  \"cod</w>\": 11915,\n  \"code\": 11582,\n  \"code</w>\": 3217,\n  \"coded</w>\": 33703,\n  \"coden\": 43914,\n  \"coder</w>\": 41561,\n  \"codes</w>\": 14566,\n  \"codi\": 39711,\n  \"coding</w>\": 12647,\n  \"cody\": 23222,\n  \"cody</w>\": 12666,\n  \"coe</w>\": 15386,\n  \"coed</w>\": 41028,\n  \"coel\": 45633,\n  \"coer\": 41198,\n  \"coeur</w>\": 44986,\n  \"coffe\": 2255,\n  \"coffee\": 12898,\n  \"coffee</w>\": 2453,\n  \"coffees</w>\": 41184,\n  \"coffey</w>\": 48066,\n  \"cofficial</w>\": 18757,\n  \"coffin</w>\": 29907,\n  \"cog\": 26362,\n  \"cog</w>\": 35960,\n  \"cogn\": 12210,\n  \"cognac</w>\": 44361,\n  \"cognition</w>\": 46825,\n  \"cognitive</w>\": 16584,\n  \"cohe\": 20669,\n  \"cohen</w>\": 13381,\n  \"coherent</w>\": 48450,\n  \"cohort</w>\": 22782,\n  \"coil</w>\": 25307,\n  \"coim\": 41528,\n  \"coin\": 14651,\n  \"coin</w>\": 4170,\n  \"coinci\": 14015,\n  \"coincidence</w>\": 19807,\n  \"coins</w>\": 10530,\n  \"coke\": 39602,\n  \"coke</w>\": 14035,\n  \"col\": 754,\n  \"col</w>\": 9371,\n  \"cola</w>\": 15444,\n  \"colbert</w>\": 31647,\n  \"colby</w>\": 32068,\n  \"colchester</w>\": 31715,\n  \"cold\": 11146,\n  \"cold</w>\": 3153,\n  \"colder</w>\": 23859,\n  \"coldest</w>\": 31438,\n  \"coldplay</w>\": 27770,\n  \"cole\": 9305,\n  \"cole</w>\": 8166,\n  \"coleman</w>\": 15774,\n  \"coles\": 40265,\n  \"coles</w>\": 30398,\n  \"coli\": 18877,\n  \"coli</w>\": 15910,\n  \"colin\": 20989,\n  \"colin</w>\": 10238,\n  \"coliseum</w>\": 21836,\n  \"coll\": 25982,\n  \"coll</w>\": 23898,\n  \"colla\": 2929,\n  \"collab</w>\": 14013,\n  \"collabor\": 4437,\n  \"collaborate</w>\": 21271,\n  \"collaborated</w>\": 42265,\n  \"collaborating</w>\": 25545,\n  \"collaboration</w>\": 6642,\n  \"collaborations</w>\": 36520,\n  \"collaborative</w>\": 15841,\n  \"collaborator</w>\": 48186,\n  \"collaborators</w>\": 45901,\n  \"collage</w>\": 11258,\n  \"collagen</w>\": 36120,\n  \"collap\": 16881,\n  \"collapse</w>\": 16520,\n  \"collapsed</w>\": 25037,\n  \"collapses</w>\": 43601,\n  \"collar\": 39662,\n  \"collar</w>\": 13497,\n  \"collateral</w>\": 44512,\n  \"colle\": 1801,\n  \"colleague</w>\": 13067,\n  \"colleagues</w>\": 8203,\n  \"collec\": 1733,\n  \"collect</w>\": 10186,\n  \"collected</w>\": 11980,\n  \"collecti\": 18530,\n  \"collectible</w>\": 25680,\n  \"collectibles</w>\": 21519,\n  \"collecting</w>\": 10325,\n  \"collection</w>\": 2548,\n  \"collections</w>\": 12760,\n  \"collective</w>\": 10162,\n  \"collectively</w>\": 40687,\n  \"collector</w>\": 13522,\n  \"collectors</w>\": 20540,\n  \"collects</w>\": 31576,\n  \"colleen</w>\": 31020,\n  \"college\": 13512,\n  \"college</w>\": 2229,\n  \"colleges</w>\": 17357,\n  \"collegi\": 16311,\n  \"collegiate</w>\": 18068,\n  \"colli\": 8262,\n  \"collide</w>\": 27214,\n  \"collie</w>\": 30611,\n  \"collier</w>\": 35748,\n  \"collin\": 24056,\n  \"collin</w>\": 32116,\n  \"colling\": 32319,\n  \"collingwood</w>\": 45873,\n  \"collins</w>\": 8684,\n  \"collision</w>\": 15407,\n  \"collo\": 25115,\n  \"colloqui\": 37243,\n  \"colloquium</w>\": 46514,\n  \"collu\": 25658,\n  \"collusion</w>\": 33864,\n  \"colo\": 7300,\n  \"colo</w>\": 27288,\n  \"cologne</w>\": 22216,\n  \"cology</w>\": 19187,\n  \"colom\": 8987,\n  \"colombia</w>\": 12901,\n  \"colombian</w>\": 28701,\n  \"colombo</w>\": 33207,\n  \"colon\": 8280,\n  \"colon</w>\": 29050,\n  \"colonel</w>\": 22674,\n  \"coloni\": 22667,\n  \"colonial</w>\": 16530,\n  \"colonialism</w>\": 43385,\n  \"colonies</w>\": 38738,\n  \"colony</w>\": 18767,\n  \"color\": 4036,\n  \"color</w>\": 3140,\n  \"colorado\": 34580,\n  \"colorado</w>\": 6742,\n  \"colorec\": 41171,\n  \"colored</w>\": 11775,\n  \"colorful</w>\": 11444,\n  \"colori\": 28764,\n  \"coloring</w>\": 17696,\n  \"colorized</w>\": 46730,\n  \"colors</w>\": 5389,\n  \"colorstv</w>\": 28195,\n  \"colorway</w>\": 44576,\n  \"colossal</w>\": 40258,\n  \"colosse\": 48142,\n  \"colossus</w>\": 34022,\n  \"colour\": 10240,\n  \"colour</w>\": 4769,\n  \"coloured</w>\": 17111,\n  \"colourful</w>\": 15562,\n  \"colouring</w>\": 31803,\n  \"colours</w>\": 7626,\n  \"cols</w>\": 35726,\n  \"colt</w>\": 19726,\n  \"colton</w>\": 32249,\n  \"coltrane</w>\": 42333,\n  \"colts</w>\": 16135,\n  \"colum\": 4164,\n  \"columb\": 31043,\n  \"columbi\": 25947,\n  \"columbia</w>\": 9410,\n  \"columbus</w>\": 11273,\n  \"column</w>\": 10593,\n  \"columnist</w>\": 28958,\n  \"columns</w>\": 29056,\n  \"com\": 610,\n  \"com</w>\": 2464,\n  \"coma</w>\": 19620,\n  \"comb\": 3587,\n  \"comb</w>\": 16380,\n  \"combat\": 35083,\n  \"combat</w>\": 9275,\n  \"combating</w>\": 46121,\n  \"combe</w>\": 14363,\n  \"combin\": 25112,\n  \"combination</w>\": 11312,\n  \"combinations</w>\": 34950,\n  \"combine</w>\": 12919,\n  \"combined</w>\": 10427,\n  \"combines</w>\": 22991,\n  \"combining</w>\": 23561,\n  \"combo</w>\": 10155,\n  \"combos</w>\": 48117,\n  \"combs</w>\": 30694,\n  \"combu\": 35629,\n  \"combustion</w>\": 44654,\n  \"comcast</w>\": 30043,\n  \"come\": 4225,\n  \"come</w>\": 891,\n  \"comeback</w>\": 8234,\n  \"comedian</w>\": 13848,\n  \"comedians</w>\": 33758,\n  \"comedic</w>\": 43360,\n  \"comedy\": 19346,\n  \"comedy</w>\": 4749,\n  \"comer\": 42997,\n  \"comer</w>\": 20916,\n  \"comers</w>\": 34436,\n  \"comes</w>\": 2091,\n  \"comet</w>\": 21405,\n  \"comets</w>\": 40636,\n  \"comey</w>\": 22957,\n  \"comfor\": 6563,\n  \"comfort\": 44000,\n  \"comfort</w>\": 7808,\n  \"comfortable</w>\": 8652,\n  \"comfortably</w>\": 30392,\n  \"comforting</w>\": 33835,\n  \"comforts</w>\": 42243,\n  \"comfy</w>\": 15736,\n  \"comi\": 40781,\n  \"comic\": 7729,\n  \"comic</w>\": 4962,\n  \"comicart</w>\": 46018,\n  \"comicbook</w>\": 46564,\n  \"comicbooks</w>\": 22018,\n  \"comiccon</w>\": 18379,\n  \"comicon</w>\": 43820,\n  \"comics</w>\": 4256,\n  \"comin</w>\": 18164,\n  \"coming\": 14916,\n  \"coming</w>\": 1171,\n  \"comingsoon</w>\": 19894,\n  \"comm\": 965,\n  \"comm</w>\": 11413,\n  \"comman\": 39780,\n  \"command\": 18391,\n  \"command</w>\": 11350,\n  \"commander</w>\": 11265,\n  \"commanders</w>\": 41667,\n  \"commanding</w>\": 36933,\n  \"commandments</w>\": 43409,\n  \"commando</w>\": 31361,\n  \"commands</w>\": 38163,\n  \"comme</w>\": 29692,\n  \"commemor\": 9495,\n  \"commemorate</w>\": 21242,\n  \"commemorates</w>\": 45149,\n  \"commemorating</w>\": 28734,\n  \"commemoration</w>\": 29288,\n  \"commemorative</w>\": 24623,\n  \"commen\": 15795,\n  \"commence</w>\": 25059,\n  \"commenced</w>\": 43908,\n  \"commencement</w>\": 21666,\n  \"commences</w>\": 48551,\n  \"commend\": 37555,\n  \"commended</w>\": 40702,\n  \"comment\": 20035,\n  \"comment</w>\": 5761,\n  \"commentary</w>\": 14146,\n  \"commentator</w>\": 32016,\n  \"commented</w>\": 28328,\n  \"commenting</w>\": 37292,\n  \"comments</w>\": 6606,\n  \"commer\": 4028,\n  \"commerce</w>\": 8333,\n  \"commerci\": 15601,\n  \"commercial\": 31802,\n  \"commercial</w>\": 6287,\n  \"commercials</w>\": 30724,\n  \"commish</w>\": 45399,\n  \"commissi\": 6000,\n  \"commission</w>\": 5292,\n  \"commissioned</w>\": 16565,\n  \"commissioner</w>\": 10221,\n  \"commissioners</w>\": 30702,\n  \"commissioning</w>\": 29585,\n  \"commissions</w>\": 20668,\n  \"commit\": 3041,\n  \"commit</w>\": 11797,\n  \"commitment</w>\": 7770,\n  \"commitments</w>\": 32136,\n  \"commits</w>\": 20241,\n  \"committed</w>\": 7907,\n  \"committee</w>\": 5636,\n  \"committees</w>\": 40504,\n  \"committing</w>\": 21937,\n  \"commod\": 9496,\n  \"commodities</w>\": 30350,\n  \"commodity</w>\": 29041,\n  \"commodore</w>\": 31129,\n  \"common\": 8414,\n  \"common</w>\": 4176,\n  \"commonly</w>\": 20344,\n  \"commons</w>\": 16653,\n  \"commonwealth</w>\": 16569,\n  \"comms</w>\": 18832,\n  \"commu\": 9561,\n  \"commun\": 1515,\n  \"communal</w>\": 32809,\n  \"communi\": 16164,\n  \"communic\": 4784,\n  \"communicate</w>\": 19809,\n  \"communication</w>\": 7999,\n  \"communications</w>\": 10052,\n  \"communion</w>\": 28579,\n  \"communism</w>\": 35387,\n  \"communist</w>\": 18602,\n  \"communities</w>\": 6361,\n  \"community\": 14784,\n  \"community</w>\": 1927,\n  \"commute</w>\": 15898,\n  \"commuter</w>\": 27782,\n  \"commuters</w>\": 30823,\n  \"commuting</w>\": 43503,\n  \"como</w>\": 16236,\n  \"comp\": 2561,\n  \"comp</w>\": 11679,\n  \"compac\": 40014,\n  \"compact</w>\": 13690,\n  \"compan\": 1995,\n  \"companies</w>\": 5361,\n  \"companion</w>\": 14963,\n  \"companions</w>\": 37124,\n  \"company</w>\": 2634,\n  \"compar\": 7580,\n  \"comparable</w>\": 27092,\n  \"comparative</w>\": 33388,\n  \"compare</w>\": 13771,\n  \"compared</w>\": 10544,\n  \"compares</w>\": 25104,\n  \"comparing</w>\": 20564,\n  \"comparison</w>\": 14186,\n  \"comparisons</w>\": 40870,\n  \"compart\": 30072,\n  \"compartment</w>\": 40383,\n  \"compass</w>\": 19438,\n  \"compassion</w>\": 14463,\n  \"compassionate</w>\": 30193,\n  \"compati\": 17295,\n  \"compatibility</w>\": 41614,\n  \"compatible</w>\": 21286,\n  \"compe\": 5254,\n  \"compelled</w>\": 49375,\n  \"compelling</w>\": 21766,\n  \"compen\": 42079,\n  \"compens\": 15172,\n  \"compensation</w>\": 18663,\n  \"compet\": 2932,\n  \"compete</w>\": 10038,\n  \"competed</w>\": 27767,\n  \"competen\": 31853,\n  \"competence</w>\": 31165,\n  \"competency</w>\": 49293,\n  \"competent</w>\": 28113,\n  \"competes</w>\": 39826,\n  \"competing</w>\": 13068,\n  \"competit\": 15892,\n  \"competiti\": 32581,\n  \"competition</w>\": 3742,\n  \"competitions</w>\": 23259,\n  \"competitive</w>\": 10687,\n  \"competitiveness</w>\": 43209,\n  \"competitor</w>\": 26633,\n  \"competitors</w>\": 23638,\n  \"compilation</w>\": 20446,\n  \"compiled</w>\": 34579,\n  \"compla\": 7428,\n  \"complain</w>\": 19292,\n  \"complained</w>\": 42029,\n  \"complaining</w>\": 20812,\n  \"complains</w>\": 46363,\n  \"complaint</w>\": 20391,\n  \"complaints</w>\": 20020,\n  \"comple\": 1730,\n  \"complement</w>\": 36624,\n  \"complementary</w>\": 48953,\n  \"complete</w>\": 3263,\n  \"completed</w>\": 5976,\n  \"completely</w>\": 5989,\n  \"completes</w>\": 19321,\n  \"completing</w>\": 14949,\n  \"completion</w>\": 15915,\n  \"complex\": 16099,\n  \"complex</w>\": 6324,\n  \"complexes</w>\": 47870,\n  \"complexion</w>\": 47732,\n  \"complexity</w>\": 24815,\n  \"compli\": 5270,\n  \"compliance</w>\": 14658,\n  \"compliant</w>\": 29893,\n  \"complic\": 11460,\n  \"complicated</w>\": 16621,\n  \"complications</w>\": 29936,\n  \"compliment</w>\": 25116,\n  \"complimentary</w>\": 20948,\n  \"compliments</w>\": 25477,\n  \"comply</w>\": 36281,\n  \"component</w>\": 21284,\n  \"components</w>\": 16816,\n  \"compos\": 7783,\n  \"compose</w>\": 43659,\n  \"composed</w>\": 19916,\n  \"composer</w>\": 12104,\n  \"composers</w>\": 33314,\n  \"composing</w>\": 40412,\n  \"composite</w>\": 21606,\n  \"composites</w>\": 45395,\n  \"composition</w>\": 17510,\n  \"compositions</w>\": 44652,\n  \"compost\": 46002,\n  \"compost</w>\": 33307,\n  \"compound</w>\": 19980,\n  \"compounds</w>\": 33991,\n  \"compre\": 8483,\n  \"compreh\": 42976,\n  \"comprehen\": 12050,\n  \"comprehend</w>\": 48230,\n  \"comprehensive</w>\": 13854,\n  \"compress\": 33353,\n  \"compressed</w>\": 42359,\n  \"compression</w>\": 25638,\n  \"compressor</w>\": 39607,\n  \"compri\": 29445,\n  \"compromise</w>\": 26611,\n  \"compromised</w>\": 38576,\n  \"compromising</w>\": 45436,\n  \"comps</w>\": 48665,\n  \"compton</w>\": 28364,\n  \"compu\": 11639,\n  \"compul\": 25869,\n  \"compulsory</w>\": 39345,\n  \"computing</w>\": 12732,\n  \"comra\": 25553,\n  \"comrade</w>\": 30844,\n  \"comrades</w>\": 29282,\n  \"coms</w>\": 30493,\n  \"con\": 616,\n  \"con</w>\": 2457,\n  \"cona</w>\": 30605,\n  \"conan</w>\": 24750,\n  \"conce\": 9145,\n  \"concealed</w>\": 35419,\n  \"conceded</w>\": 37895,\n  \"conceived</w>\": 39725,\n  \"concentr\": 11085,\n  \"concentrate</w>\": 30846,\n  \"concentrated</w>\": 36776,\n  \"concentration</w>\": 18565,\n  \"concep\": 8389,\n  \"concepcion</w>\": 47035,\n  \"concept</w>\": 6353,\n  \"conceptart</w>\": 31162,\n  \"conception</w>\": 30510,\n  \"conceptions</w>\": 40307,\n  \"concepts</w>\": 16763,\n  \"conceptu\": 42745,\n  \"conceptual</w>\": 34070,\n  \"concer\": 2228,\n  \"concern</w>\": 12928,\n  \"concerned</w>\": 12020,\n  \"concerning</w>\": 21772,\n  \"concerns</w>\": 11134,\n  \"concert\": 32180,\n  \"concert</w>\": 3066,\n  \"concerto</w>\": 24710,\n  \"concerts</w>\": 14418,\n  \"concession</w>\": 38117,\n  \"concessions</w>\": 43981,\n  \"concier\": 28859,\n  \"concierge</w>\": 39850,\n  \"conclave</w>\": 38098,\n  \"conclu\": 9627,\n  \"conclude</w>\": 37525,\n  \"concluded</w>\": 27825,\n  \"concludes</w>\": 30634,\n  \"conclusion</w>\": 20932,\n  \"conclusions</w>\": 39507,\n  \"conco\": 43034,\n  \"concor\": 19913,\n  \"concord</w>\": 26448,\n  \"concordia</w>\": 35492,\n  \"concours</w>\": 36282,\n  \"concourse</w>\": 37793,\n  \"concre\": 43658,\n  \"concrete</w>\": 9637,\n  \"concussion</w>\": 28321,\n  \"condem\": 13287,\n  \"condemn</w>\": 27212,\n  \"condemned</w>\": 35145,\n  \"condemns</w>\": 32092,\n  \"conden\": 24816,\n  \"conditi\": 11170,\n  \"condition\": 36978,\n  \"condition</w>\": 7336,\n  \"conditional</w>\": 24671,\n  \"conditioned</w>\": 37014,\n  \"conditioner</w>\": 31239,\n  \"conditioning</w>\": 18181,\n  \"conditions</w>\": 5892,\n  \"condo</w>\": 19952,\n  \"condol\": 18661,\n  \"condolences</w>\": 20836,\n  \"condom</w>\": 39021,\n  \"condomin\": 42589,\n  \"condoms</w>\": 37878,\n  \"condor</w>\": 47643,\n  \"condos</w>\": 42342,\n  \"condu\": 40772,\n  \"conduc\": 5379,\n  \"conduct</w>\": 11647,\n  \"conducted</w>\": 13080,\n  \"conducting</w>\": 16787,\n  \"conductor</w>\": 22317,\n  \"conducts</w>\": 32084,\n  \"cone\": 39279,\n  \"cone</w>\": 10266,\n  \"cones</w>\": 26718,\n  \"coney</w>\": 41837,\n  \"conf</w>\": 6477,\n  \"confe\": 1968,\n  \"confeder\": 17104,\n  \"confederate</w>\": 24864,\n  \"confederation</w>\": 43484,\n  \"conferen\": 37961,\n  \"conference</w>\": 2230,\n  \"conferences</w>\": 22811,\n  \"conferencing</w>\": 47320,\n  \"confess</w>\": 38860,\n  \"confession</w>\": 22572,\n  \"confessions</w>\": 29404,\n  \"confetti</w>\": 37923,\n  \"confi\": 5005,\n  \"confidence</w>\": 8510,\n  \"confident</w>\": 12365,\n  \"confidential</w>\": 28712,\n  \"configu\": 46746,\n  \"configur\": 26950,\n  \"configuration</w>\": 33378,\n  \"confin\": 45316,\n  \"confined</w>\": 40973,\n  \"confir\": 3930,\n  \"confirm</w>\": 12130,\n  \"confirmation</w>\": 19645,\n  \"confirmed</w>\": 6346,\n  \"confirming</w>\": 38433,\n  \"confirms</w>\": 11803,\n  \"confis\": 36285,\n  \"confit</w>\": 42241,\n  \"confl\": 8173,\n  \"conflic\": 19029,\n  \"conflict</w>\": 10397,\n  \"conflicting</w>\": 43894,\n  \"conflicts</w>\": 28713,\n  \"confor\": 40933,\n  \"confron\": 20033,\n  \"confront</w>\": 38382,\n  \"confrontation</w>\": 41478,\n  \"confu\": 6890,\n  \"confuse</w>\": 37503,\n  \"confused</w>\": 10946,\n  \"confusing</w>\": 24683,\n  \"confusion</w>\": 20493,\n  \"cong</w>\": 24407,\n  \"conge\": 20013,\n  \"congestion</w>\": 24432,\n  \"congo</w>\": 20334,\n  \"congr\": 1227,\n  \"congrats</w>\": 1887,\n  \"congratul\": 1750,\n  \"congratulate</w>\": 16633,\n  \"congratulated</w>\": 42004,\n  \"congratulates</w>\": 24580,\n  \"congratulating</w>\": 30967,\n  \"congratulation</w>\": 24751,\n  \"congratulations</w>\": 1864,\n  \"congre\": 7947,\n  \"congreg\": 40727,\n  \"congregation</w>\": 32618,\n  \"congress\": 12452,\n  \"congress</w>\": 4599,\n  \"congressional</w>\": 15239,\n  \"congressman</w>\": 17145,\n  \"congresswoman</w>\": 37317,\n  \"coni\": 39031,\n  \"coni</w>\": 36651,\n  \"conj\": 41543,\n  \"conju\": 33821,\n  \"conjunction</w>\": 34226,\n  \"conley</w>\": 44536,\n  \"conline</w>\": 37593,\n  \"conn\": 41836,\n  \"conn</w>\": 20329,\n  \"conne\": 8437,\n  \"connec\": 29933,\n  \"connect</w>\": 19969,\n  \"connected</w>\": 27506,\n  \"connecting</w>\": 41429,\n  \"connection</w>\": 26840,\n  \"connections</w>\": 37161,\n  \"connie</w>\": 25739,\n  \"connoisse\": 46012,\n  \"connol\": 27739,\n  \"connolly</w>\": 29537,\n  \"connor\": 21984,\n  \"connor</w>\": 10218,\n  \"conom\": 2664,\n  \"conomy</w>\": 22529,\n  \"conor\": 29955,\n  \"conor</w>\": 19478,\n  \"conqu\": 13382,\n  \"conquer\": 38585,\n  \"conquer</w>\": 19821,\n  \"conquered</w>\": 27099,\n  \"conquering</w>\": 43778,\n  \"conquest</w>\": 35367,\n  \"conrad</w>\": 22073,\n  \"cons</w>\": 10311,\n  \"consci\": 9427,\n  \"conscience</w>\": 27310,\n  \"conscious</w>\": 14914,\n  \"consciously</w>\": 46755,\n  \"consciousness</w>\": 17894,\n  \"conse\": 34887,\n  \"consecu\": 12084,\n  \"consecutive</w>\": 12413,\n  \"consen\": 23110,\n  \"consensus</w>\": 25071,\n  \"consent</w>\": 21922,\n  \"consequ\": 13003,\n  \"consequence</w>\": 42262,\n  \"consequences</w>\": 15682,\n  \"conserv\": 4649,\n  \"conservancy</w>\": 46729,\n  \"conservation\": 37616,\n  \"conservation</w>\": 8322,\n  \"conservative</w>\": 11421,\n  \"conservatives</w>\": 17631,\n  \"conservatory</w>\": 32140,\n  \"conserve</w>\": 34231,\n  \"consi\": 2899,\n  \"consider\": 12471,\n  \"consider</w>\": 6734,\n  \"considerable</w>\": 38256,\n  \"considerably</w>\": 38510,\n  \"consideration</w>\": 24310,\n  \"considerations</w>\": 33700,\n  \"considered</w>\": 9487,\n  \"considering</w>\": 10761,\n  \"considers</w>\": 24691,\n  \"consist\": 10410,\n  \"consist</w>\": 33735,\n  \"consisted</w>\": 49354,\n  \"consistency</w>\": 25683,\n  \"consistent</w>\": 16439,\n  \"consistently</w>\": 23799,\n  \"consisting</w>\": 39241,\n  \"consists</w>\": 23458,\n  \"consol\": 27869,\n  \"consolation</w>\": 38888,\n  \"console</w>\": 13403,\n  \"consoles</w>\": 33136,\n  \"consoli\": 21586,\n  \"consolidation</w>\": 41111,\n  \"consor\": 27108,\n  \"consortium</w>\": 29988,\n  \"conspir\": 12680,\n  \"conspiracy</w>\": 15236,\n  \"const\": 3826,\n  \"constable</w>\": 29179,\n  \"constan\": 38718,\n  \"constance</w>\": 40682,\n  \"constant\": 32000,\n  \"constant</w>\": 13111,\n  \"constantine</w>\": 30640,\n  \"constantly</w>\": 14336,\n  \"constell\": 21913,\n  \"constellation</w>\": 25991,\n  \"constitu\": 6299,\n  \"constituency</w>\": 22464,\n  \"constituents</w>\": 32075,\n  \"constitution</w>\": 12157,\n  \"constitutional</w>\": 16091,\n  \"constra\": 28973,\n  \"constraints</w>\": 41910,\n  \"constru\": 3983,\n  \"construc\": 13321,\n  \"construct</w>\": 24467,\n  \"constructed</w>\": 16876,\n  \"constructing</w>\": 33653,\n  \"construction\": 48873,\n  \"construction</w>\": 4585,\n  \"constructive</w>\": 31810,\n  \"consu\": 4689,\n  \"consul\": 5295,\n  \"consul</w>\": 33630,\n  \"consulate</w>\": 34341,\n  \"consult\": 9438,\n  \"consult</w>\": 26727,\n  \"consultancy</w>\": 31735,\n  \"consultant</w>\": 14196,\n  \"consultants</w>\": 27203,\n  \"consultation</w>\": 15777,\n  \"consultations</w>\": 43424,\n  \"consulting</w>\": 15883,\n  \"consume</w>\": 28919,\n  \"consumed</w>\": 29653,\n  \"consumer\": 34408,\n  \"consumer</w>\": 10422,\n  \"consumers</w>\": 14014,\n  \"consuming</w>\": 30607,\n  \"consumption</w>\": 14904,\n  \"cont\": 2036,\n  \"cont</w>\": 21425,\n  \"contact\": 39367,\n  \"contact</w>\": 3523,\n  \"contacted</w>\": 37331,\n  \"contacts</w>\": 22789,\n  \"contag\": 29259,\n  \"contagious</w>\": 33984,\n  \"contain\": 9948,\n  \"contain</w>\": 15187,\n  \"contained</w>\": 23836,\n  \"container</w>\": 14913,\n  \"containers</w>\": 20448,\n  \"containing</w>\": 20281,\n  \"contains</w>\": 12844,\n  \"contamin\": 24662,\n  \"contaminated</w>\": 35773,\n  \"contamination</w>\": 31770,\n  \"conte\": 15402,\n  \"conte</w>\": 26882,\n  \"contempl\": 21924,\n  \"contemplating</w>\": 33854,\n  \"contempor\": 14538,\n  \"contemporary\": 16607,\n  \"contemporary</w>\": 8859,\n  \"contemporaryart</w>\": 20212,\n  \"contempt</w>\": 39293,\n  \"conten\": 42201,\n  \"contender</w>\": 23573,\n  \"contenders</w>\": 29711,\n  \"content\": 15526,\n  \"content</w>\": 4750,\n  \"contentmarketing</w>\": 20429,\n  \"contents</w>\": 14850,\n  \"contest\": 23103,\n  \"contest</w>\": 4576,\n  \"contestalert</w>\": 27313,\n  \"contestant</w>\": 25682,\n  \"contestants</w>\": 28062,\n  \"contested</w>\": 37845,\n  \"contests</w>\": 32210,\n  \"contex\": 42015,\n  \"context</w>\": 13089,\n  \"conti\": 46431,\n  \"conti</w>\": 40842,\n  \"contin\": 1918,\n  \"continent</w>\": 19623,\n  \"continental</w>\": 14089,\n  \"continents</w>\": 38642,\n  \"conting\": 27104,\n  \"contingent</w>\": 36467,\n  \"continu\": 4688,\n  \"continually</w>\": 34086,\n  \"continuation</w>\": 38964,\n  \"continue</w>\": 3942,\n  \"continued</w>\": 10150,\n  \"continues</w>\": 4305,\n  \"continuing</w>\": 11009,\n  \"continuity</w>\": 34035,\n  \"continuous</w>\": 17033,\n  \"continuously</w>\": 29634,\n  \"continuum</w>\": 44978,\n  \"contour</w>\": 34733,\n  \"contr\": 22871,\n  \"contra\": 9880,\n  \"contra</w>\": 38620,\n  \"contrac\": 7581,\n  \"contracep\": 35109,\n  \"contract</w>\": 6120,\n  \"contracting</w>\": 39091,\n  \"contractor</w>\": 21429,\n  \"contractors</w>\": 22427,\n  \"contracts</w>\": 16563,\n  \"contradic\": 27957,\n  \"contrary</w>\": 32805,\n  \"contrast</w>\": 18501,\n  \"contrasting</w>\": 40758,\n  \"contribu\": 4753,\n  \"contribute</w>\": 14112,\n  \"contributed</w>\": 19397,\n  \"contributes</w>\": 34203,\n  \"contributing</w>\": 21762,\n  \"contribution</w>\": 11116,\n  \"contributions</w>\": 14465,\n  \"contributor</w>\": 24553,\n  \"contributors</w>\": 32908,\n  \"contro\": 2372,\n  \"control\": 9963,\n  \"control</w>\": 3366,\n  \"controlled</w>\": 14140,\n  \"controller</w>\": 12929,\n  \"controllers</w>\": 30374,\n  \"controlling</w>\": 26427,\n  \"controls</w>\": 15746,\n  \"controversi\": 13674,\n  \"controversial</w>\": 14617,\n  \"controversy</w>\": 18659,\n  \"conv</w>\": 48382,\n  \"conve\": 18421,\n  \"conven\": 7283,\n  \"conveni\": 33278,\n  \"convenience</w>\": 17859,\n  \"convenient</w>\": 18978,\n  \"conveniently</w>\": 40844,\n  \"convention</w>\": 6752,\n  \"conventional</w>\": 20835,\n  \"conventions</w>\": 41404,\n  \"conver\": 6336,\n  \"convergence</w>\": 35381,\n  \"convers\": 4577,\n  \"conversation</w>\": 5690,\n  \"conversations</w>\": 12326,\n  \"converse</w>\": 24149,\n  \"conversion</w>\": 15111,\n  \"conversions</w>\": 44137,\n  \"convert</w>\": 20074,\n  \"converted</w>\": 20808,\n  \"converter</w>\": 34611,\n  \"convertible</w>\": 19608,\n  \"converting</w>\": 34674,\n  \"converts</w>\": 42470,\n  \"convey</w>\": 38342,\n  \"convic\": 11150,\n  \"convicted</w>\": 18668,\n  \"conviction</w>\": 24967,\n  \"convictions</w>\": 44366,\n  \"convin\": 12889,\n  \"convince</w>\": 20351,\n  \"convinced</w>\": 17388,\n  \"convincing</w>\": 27742,\n  \"convo</w>\": 19372,\n  \"convocation</w>\": 30674,\n  \"convos</w>\": 44842,\n  \"convoy</w>\": 30292,\n  \"conway</w>\": 21410,\n  \"conwy</w>\": 48971,\n  \"cony</w>\": 14501,\n  \"coo\": 1664,\n  \"coo</w>\": 21691,\n  \"coogs</w>\": 47624,\n  \"cook\": 9726,\n  \"cook</w>\": 5977,\n  \"cookbook</w>\": 21086,\n  \"cooke</w>\": 29979,\n  \"cooked</w>\": 11452,\n  \"cooker</w>\": 23806,\n  \"cookery</w>\": 38779,\n  \"cookie</w>\": 9367,\n  \"cookies</w>\": 8320,\n  \"cookin</w>\": 46610,\n  \"cooking\": 39248,\n  \"cooking</w>\": 6283,\n  \"cookout</w>\": 39743,\n  \"cooks</w>\": 24256,\n  \"cool\": 5594,\n  \"cool</w>\": 2077,\n  \"cooled</w>\": 37170,\n  \"cooler</w>\": 11078,\n  \"coolest</w>\": 10566,\n  \"cooling</w>\": 15291,\n  \"coom\": 41726,\n  \"coon\": 34260,\n  \"coon</w>\": 16958,\n  \"coop\": 39917,\n  \"coop</w>\": 18910,\n  \"cooper\": 7264,\n  \"cooper</w>\": 8133,\n  \"cooperate</w>\": 42936,\n  \"cooperation</w>\": 11785,\n  \"cooperative</w>\": 24517,\n  \"coops</w>\": 48531,\n  \"coordin\": 8187,\n  \"coordinate</w>\": 38250,\n  \"coordinated</w>\": 32540,\n  \"coordinating</w>\": 40075,\n  \"coordination</w>\": 25611,\n  \"coordinator</w>\": 13967,\n  \"coors</w>\": 36025,\n  \"cop\": 3196,\n  \"cop</w>\": 7070,\n  \"copa</w>\": 22749,\n  \"copd</w>\": 45876,\n  \"cope\": 47635,\n  \"cope</w>\": 12564,\n  \"copeland</w>\": 37604,\n  \"copen\": 15637,\n  \"copenhagen</w>\": 17390,\n  \"coper\": 41891,\n  \"copernic\": 45519,\n  \"copied</w>\": 36770,\n  \"copies</w>\": 9851,\n  \"coping</w>\": 30545,\n  \"copolitics</w>\": 45846,\n  \"copp\": 20937,\n  \"copped</w>\": 42229,\n  \"copper\": 24741,\n  \"copper</w>\": 10333,\n  \"coppola</w>\": 47427,\n  \"cops</w>\": 10719,\n  \"copter</w>\": 28049,\n  \"copy\": 11376,\n  \"copy</w>\": 4509,\n  \"copying</w>\": 38925,\n  \"copyright</w>\": 15778,\n  \"cor\": 851,\n  \"cor</w>\": 18559,\n  \"cora</w>\": 34953,\n  \"coral\": 31220,\n  \"coral</w>\": 12054,\n  \"corbett</w>\": 35699,\n  \"corbin</w>\": 35578,\n  \"corbyn</w>\": 14026,\n  \"cord\": 40893,\n  \"cord</w>\": 11181,\n  \"corden</w>\": 41999,\n  \"cordi\": 41681,\n  \"cordless</w>\": 44412,\n  \"cords</w>\": 22164,\n  \"core\": 19622,\n  \"core</w>\": 5000,\n  \"cores</w>\": 37874,\n  \"corey\": 31279,\n  \"corey</w>\": 15288,\n  \"corgi</w>\": 31320,\n  \"cori\": 26508,\n  \"coriander</w>\": 37491,\n  \"corin\": 17716,\n  \"corinthians</w>\": 34471,\n  \"cork\": 18148,\n  \"cork</w>\": 10376,\n  \"corn\": 5202,\n  \"corn</w>\": 5894,\n  \"cornelius</w>\": 45865,\n  \"cornell\": 38689,\n  \"cornell</w>\": 20859,\n  \"corner\": 18509,\n  \"corner</w>\": 5253,\n  \"corners</w>\": 19584,\n  \"cornerstone</w>\": 36280,\n  \"cornish</w>\": 23774,\n  \"cornwall\": 37903,\n  \"cornwall</w>\": 10777,\n  \"coron\": 13210,\n  \"corona</w>\": 25564,\n  \"coronado</w>\": 43946,\n  \"coronary</w>\": 45955,\n  \"coronation</w>\": 25014,\n  \"coroner</w>\": 47241,\n  \"corp\": 29203,\n  \"corp</w>\": 10918,\n  \"corpor\": 4258,\n  \"corporal</w>\": 42445,\n  \"corporate\": 33877,\n  \"corporate</w>\": 6838,\n  \"corporation</w>\": 11282,\n  \"corporations</w>\": 25482,\n  \"corps</w>\": 11330,\n  \"corpse</w>\": 29408,\n  \"corpus</w>\": 31672,\n  \"correc\": 5011,\n  \"correct</w>\": 8340,\n  \"corrected</w>\": 35628,\n  \"correction</w>\": 20843,\n  \"correctional</w>\": 38030,\n  \"corrections</w>\": 37507,\n  \"correctly</w>\": 15359,\n  \"correlation</w>\": 29218,\n  \"correspon\": 20203,\n  \"correspondent</w>\": 29996,\n  \"corri\": 12974,\n  \"corridor</w>\": 20592,\n  \"corrie</w>\": 23961,\n  \"corro\": 24936,\n  \"corro</w>\": 42033,\n  \"corrosion</w>\": 39191,\n  \"corru\": 6501,\n  \"corrup\": 30429,\n  \"corrupt</w>\": 15194,\n  \"corruption</w>\": 9141,\n  \"corsa</w>\": 47670,\n  \"corsair</w>\": 42367,\n  \"corset</w>\": 40408,\n  \"cortex</w>\": 40109,\n  \"cortez</w>\": 30461,\n  \"corvette</w>\": 24367,\n  \"cory\": 23221,\n  \"cory</w>\": 18329,\n  \"cos\": 5865,\n  \"cos</w>\": 5700,\n  \"cosby</w>\": 30324,\n  \"cosc\": 45944,\n  \"coscino</w>\": 47909,\n  \"cose</w>\": 26495,\n  \"cosm\": 37486,\n  \"cosme\": 9628,\n  \"cosmetic</w>\": 23918,\n  \"cosmetics</w>\": 12896,\n  \"cosmic\": 47398,\n  \"cosmic</w>\": 18304,\n  \"cosmo\": 12829,\n  \"cosmo</w>\": 32072,\n  \"cosmopolitan</w>\": 35518,\n  \"cosmos</w>\": 22151,\n  \"cospla\": 15149,\n  \"cosplay\": 42401,\n  \"cosplay</w>\": 6435,\n  \"cosplayer</w>\": 30215,\n  \"cosplaying</w>\": 46701,\n  \"cost\": 11360,\n  \"cost</w>\": 4713,\n  \"costa</w>\": 10480,\n  \"costar\": 28659,\n  \"costarica</w>\": 31272,\n  \"costco</w>\": 31045,\n  \"costello</w>\": 30667,\n  \"costing</w>\": 39193,\n  \"costly</w>\": 30170,\n  \"costs</w>\": 7628,\n  \"costu\": 5786,\n  \"costume</w>\": 7235,\n  \"costumes</w>\": 15150,\n  \"cosy</w>\": 22848,\n  \"cot\": 4718,\n  \"cot</w>\": 5871,\n  \"cote\": 44234,\n  \"cote</w>\": 20751,\n  \"cotland</w>\": 32576,\n  \"cotsw\": 23303,\n  \"cotswolds</w>\": 35546,\n  \"cott\": 8211,\n  \"cott</w>\": 11349,\n  \"cottage</w>\": 12155,\n  \"cottages</w>\": 34405,\n  \"cotton\": 22218,\n  \"cotton</w>\": 7050,\n  \"cou\": 1368,\n  \"couch</w>\": 12724,\n  \"cougar\": 35028,\n  \"cougar</w>\": 27042,\n  \"cougars</w>\": 20425,\n  \"cough\": 35631,\n  \"cough</w>\": 18498,\n  \"cougs</w>\": 28482,\n  \"coul\": 22483,\n  \"could\": 44812,\n  \"could</w>\": 1510,\n  \"couldn</w>\": 4072,\n  \"couldnt</w>\": 29042,\n  \"coulter</w>\": 42291,\n  \"coun\": 939,\n  \"counc\": 12927,\n  \"council\": 18187,\n  \"council</w>\": 3620,\n  \"councill\": 15732,\n  \"councillor</w>\": 21179,\n  \"councillors</w>\": 29695,\n  \"councilman</w>\": 40833,\n  \"councils</w>\": 29938,\n  \"counsel\": 13780,\n  \"counsel</w>\": 19814,\n  \"counseling</w>\": 25000,\n  \"counsell\": 47510,\n  \"counselling</w>\": 40581,\n  \"counselor</w>\": 26148,\n  \"counselors</w>\": 38688,\n  \"count\": 6073,\n  \"count</w>\": 5887,\n  \"countdown\": 39559,\n  \"countdown</w>\": 7500,\n  \"counted</w>\": 23149,\n  \"counter\": 10134,\n  \"counter</w>\": 7352,\n  \"counterfe\": 33067,\n  \"counterfeit</w>\": 44242,\n  \"counterpart</w>\": 39216,\n  \"counterparts</w>\": 42106,\n  \"counters</w>\": 46170,\n  \"countess</w>\": 46276,\n  \"counties</w>\": 12338,\n  \"counting</w>\": 9723,\n  \"countless</w>\": 21819,\n  \"countries</w>\": 5489,\n  \"country\": 7896,\n  \"country</w>\": 2157,\n  \"countryfile</w>\": 47023,\n  \"countrymusic</w>\": 30372,\n  \"countryside</w>\": 16303,\n  \"counts</w>\": 12264,\n  \"county\": 18734,\n  \"county</w>\": 2116,\n  \"coup\": 9871,\n  \"coup</w>\": 16479,\n  \"coupe</w>\": 16773,\n  \"couple\": 40136,\n  \"couple</w>\": 3377,\n  \"coupled</w>\": 37153,\n  \"couples</w>\": 14752,\n  \"coupling</w>\": 45595,\n  \"coupon</w>\": 14019,\n  \"coupons</w>\": 23945,\n  \"cour\": 1391,\n  \"coura\": 4436,\n  \"courage</w>\": 9828,\n  \"courageous</w>\": 25005,\n  \"courier</w>\": 27217,\n  \"cours</w>\": 21493,\n  \"course\": 43225,\n  \"course</w>\": 2613,\n  \"courses</w>\": 9464,\n  \"court\": 16837,\n  \"court</w>\": 2908,\n  \"courte\": 5088,\n  \"courtesy</w>\": 5228,\n  \"courthouse</w>\": 22205,\n  \"courtney\": 33601,\n  \"courtney</w>\": 15990,\n  \"courtroom</w>\": 41071,\n  \"courts</w>\": 13514,\n  \"courty\": 20121,\n  \"courtyard</w>\": 21900,\n  \"cous</w>\": 48397,\n  \"cousin</w>\": 7780,\n  \"cousins</w>\": 14073,\n  \"cout\": 29118,\n  \"coutinho</w>\": 35530,\n  \"couture</w>\": 14808,\n  \"cov\": 19384,\n  \"cov</w>\": 48385,\n  \"cove\": 21700,\n  \"cove</w>\": 14708,\n  \"coven\": 12483,\n  \"covenant</w>\": 29647,\n  \"coventry</w>\": 18007,\n  \"cover\": 13534,\n  \"cover</w>\": 2202,\n  \"coverage</w>\": 6810,\n  \"covered</w>\": 5603,\n  \"covering</w>\": 9462,\n  \"covers</w>\": 7745,\n  \"covert</w>\": 40134,\n  \"coveted</w>\": 36119,\n  \"covington</w>\": 43196,\n  \"cow\": 5076,\n  \"cow</w>\": 9706,\n  \"cowan</w>\": 42699,\n  \"coward</w>\": 33729,\n  \"cowards</w>\": 48972,\n  \"cowboy\": 25833,\n  \"cowboy</w>\": 13657,\n  \"cowboys</w>\": 11864,\n  \"cowboysnation</w>\": 43082,\n  \"cowell</w>\": 39015,\n  \"cowgirl</w>\": 47090,\n  \"coworker</w>\": 30727,\n  \"coworkers</w>\": 30821,\n  \"coworking</w>\": 36034,\n  \"cows</w>\": 15204,\n  \"cowx</w>\": 23831,\n  \"cox\": 25784,\n  \"cox</w>\": 11597,\n  \"coy\": 12765,\n  \"coy</w>\": 15742,\n  \"coyi</w>\": 48407,\n  \"coyle</w>\": 45348,\n  \"coyne</w>\": 44729,\n  \"coyo\": 16614,\n  \"coyote</w>\": 26586,\n  \"coyotes</w>\": 30423,\n  \"coys</w>\": 19736,\n  \"coz\": 39922,\n  \"coz</w>\": 14282,\n  \"cozy</w>\": 14873,\n  \"cp\": 7905,\n  \"cp</w>\": 9130,\n  \"cpa</w>\": 30095,\n  \"cpac</w>\": 45731,\n  \"cpc</w>\": 26125,\n  \"cpd</w>\": 23402,\n  \"cpec</w>\": 48007,\n  \"cpfc</w>\": 27553,\n  \"cpi</w>\": 41795,\n  \"cpl</w>\": 26852,\n  \"cpr</w>\": 25134,\n  \"cps</w>\": 27078,\n  \"cpt</w>\": 32892,\n  \"cpu</w>\": 27700,\n  \"cq\": 48910,\n  \"cq</w>\": 48417,\n  \"cr\": 1075,\n  \"cr</w>\": 3483,\n  \"cra\": 1184,\n  \"cra</w>\": 18362,\n  \"crab\": 27382,\n  \"crab</w>\": 11574,\n  \"crabs</w>\": 30908,\n  \"crack\": 11222,\n  \"crack</w>\": 10334,\n  \"crackdown</w>\": 29527,\n  \"cracked</w>\": 19826,\n  \"cracker</w>\": 16298,\n  \"crackers</w>\": 26200,\n  \"cracking</w>\": 13008,\n  \"cracks</w>\": 21426,\n  \"cracy</w>\": 24749,\n  \"cradle</w>\": 29384,\n  \"crae</w>\": 40438,\n  \"craf\": 10873,\n  \"craft\": 7717,\n  \"craft</w>\": 3588,\n  \"craftbeer</w>\": 12371,\n  \"crafted</w>\": 12424,\n  \"crafthour</w>\": 42324,\n  \"crafting</w>\": 26886,\n  \"crafts\": 33276,\n  \"crafts</w>\": 13383,\n  \"craftsman</w>\": 39528,\n  \"craftsmanship</w>\": 36682,\n  \"crafty</w>\": 32317,\n  \"craic</w>\": 46962,\n  \"craig\": 14042,\n  \"craig</w>\": 8061,\n  \"craigslist</w>\": 43865,\n  \"cram\": 29809,\n  \"cramer</w>\": 44592,\n  \"cramps</w>\": 46106,\n  \"cran\": 7761,\n  \"cranberries</w>\": 49361,\n  \"cranberry</w>\": 23824,\n  \"crane</w>\": 14626,\n  \"cranes</w>\": 26979,\n  \"crani\": 45674,\n  \"crank\": 46246,\n  \"crank</w>\": 32283,\n  \"cranston</w>\": 44340,\n  \"crap</w>\": 11899,\n  \"crappy</w>\": 30475,\n  \"crash\": 37150,\n  \"crash</w>\": 5033,\n  \"crashed</w>\": 16638,\n  \"crashes</w>\": 17013,\n  \"crashing</w>\": 24991,\n  \"crat</w>\": 46696,\n  \"crate</w>\": 24756,\n  \"crater</w>\": 22663,\n  \"crates</w>\": 30172,\n  \"cratic</w>\": 32175,\n  \"crative</w>\": 39999,\n  \"crats</w>\": 43056,\n  \"crave</w>\": 33397,\n  \"craven</w>\": 33625,\n  \"craving</w>\": 18344,\n  \"cravings</w>\": 34476,\n  \"craw\": 7400,\n  \"crawfish</w>\": 42772,\n  \"crawford</w>\": 15918,\n  \"crawl</w>\": 20106,\n  \"crawler</w>\": 41012,\n  \"crawley</w>\": 42316,\n  \"crawling</w>\": 37066,\n  \"cray\": 24184,\n  \"cray</w>\": 27032,\n  \"crayon</w>\": 41801,\n  \"crayons</w>\": 43508,\n  \"craz\": 25776,\n  \"craze</w>\": 30637,\n  \"craziest</w>\": 32690,\n  \"craziness</w>\": 46436,\n  \"crazy\": 17540,\n  \"crazy</w>\": 3578,\n  \"crc</w>\": 25618,\n  \"cre\": 798,\n  \"cre</w>\": 17762,\n  \"cream\": 23184,\n  \"cream</w>\": 3867,\n  \"creams</w>\": 41447,\n  \"creamy</w>\": 17206,\n  \"crease</w>\": 48441,\n  \"create\": 30949,\n  \"create</w>\": 3380,\n  \"created</w>\": 4080,\n  \"creates</w>\": 10361,\n  \"creati\": 6714,\n  \"creating</w>\": 5524,\n  \"creation\": 38293,\n  \"creation</w>\": 6900,\n  \"creations</w>\": 17411,\n  \"creative\": 15237,\n  \"creative</w>\": 4450,\n  \"creatives</w>\": 29352,\n  \"creativity</w>\": 9636,\n  \"creator</w>\": 10173,\n  \"creators</w>\": 17981,\n  \"creature</w>\": 14317,\n  \"creatures</w>\": 13938,\n  \"cred\": 7314,\n  \"cred</w>\": 22377,\n  \"credenti\": 29487,\n  \"credentials</w>\": 33422,\n  \"credi\": 21097,\n  \"credibility</w>\": 34984,\n  \"credible</w>\": 32983,\n  \"credit\": 21467,\n  \"credit</w>\": 3900,\n  \"credited</w>\": 32480,\n  \"credits</w>\": 10654,\n  \"creds</w>\": 43462,\n  \"cree\": 33961,\n  \"cree</w>\": 36014,\n  \"creed</w>\": 18845,\n  \"creek\": 26120,\n  \"creek</w>\": 5526,\n  \"creep\": 8153,\n  \"creep</w>\": 26084,\n  \"creeper</w>\": 38662,\n  \"creeping</w>\": 29697,\n  \"creeps</w>\": 45135,\n  \"creepy</w>\": 11943,\n  \"creighton</w>\": 42823,\n  \"creme</w>\": 22681,\n  \"creole</w>\": 45632,\n  \"crepe</w>\": 38611,\n  \"crescent</w>\": 18211,\n  \"cress</w>\": 39124,\n  \"crest\": 35985,\n  \"crest</w>\": 15760,\n  \"crested</w>\": 36656,\n  \"crete</w>\": 8584,\n  \"crew\": 21560,\n  \"crew</w>\": 3462,\n  \"crewe</w>\": 43284,\n  \"crews</w>\": 10463,\n  \"cri\": 1621,\n  \"cri</w>\": 38962,\n  \"crib</w>\": 23271,\n  \"cric\": 4328,\n  \"cricke\": 19098,\n  \"cricket\": 21859,\n  \"cricket</w>\": 5373,\n  \"cricketer</w>\": 28439,\n  \"cricketers</w>\": 43986,\n  \"cried</w>\": 15290,\n  \"cries</w>\": 19769,\n  \"crime\": 13872,\n  \"crime</w>\": 4896,\n  \"crimea</w>\": 28614,\n  \"crimes</w>\": 11827,\n  \"crimin\": 5874,\n  \"criminal\": 30197,\n  \"criminal</w>\": 8255,\n  \"criminals</w>\": 18783,\n  \"crimson</w>\": 19437,\n  \"cringe</w>\": 42588,\n  \"cripp\": 33588,\n  \"cris</w>\": 37818,\n  \"crises</w>\": 36403,\n  \"crisis</w>\": 5712,\n  \"crisp</w>\": 15145,\n  \"crispr</w>\": 39784,\n  \"crisps</w>\": 35744,\n  \"crispy</w>\": 16458,\n  \"criss</w>\": 29708,\n  \"cristi\": 12699,\n  \"cristian</w>\": 48808,\n  \"cristiano</w>\": 14807,\n  \"cristina</w>\": 33395,\n  \"cristo</w>\": 38315,\n  \"crit\": 3613,\n  \"crit</w>\": 48130,\n  \"criteri\": 33627,\n  \"criteria</w>\": 24849,\n  \"criterion</w>\": 43841,\n  \"criti\": 25333,\n  \"critic\": 12417,\n  \"critic</w>\": 19361,\n  \"critical\": 15314,\n  \"critical</w>\": 6808,\n  \"critically</w>\": 21570,\n  \"criticalrole\": 33606,\n  \"criticalrole</w>\": 22742,\n  \"criticalrolefanart</w>\": 43663,\n  \"critici\": 20333,\n  \"criticism</w>\": 17405,\n  \"criticize</w>\": 46081,\n  \"criticized</w>\": 41557,\n  \"critics</w>\": 16946,\n  \"critique</w>\": 32982,\n  \"critters</w>\": 35423,\n  \"crm</w>\": 22610,\n  \"cro\": 1192,\n  \"cro</w>\": 22522,\n  \"croati\": 28072,\n  \"croatia</w>\": 13323,\n  \"croatian</w>\": 34795,\n  \"croc</w>\": 43350,\n  \"croche\": 35352,\n  \"crochet</w>\": 17554,\n  \"crock\": 41685,\n  \"crocker</w>\": 47843,\n  \"crockett</w>\": 48313,\n  \"crocod\": 24519,\n  \"crocodile</w>\": 24757,\n  \"crocs</w>\": 38988,\n  \"croft</w>\": 16657,\n  \"croissant</w>\": 46011,\n  \"croix</w>\": 44735,\n  \"crom\": 25082,\n  \"crombie</w>\": 46162,\n  \"cromwell</w>\": 45345,\n  \"cron\": 17361,\n  \"croo\": 16443,\n  \"crook</w>\": 43744,\n  \"crooked\": 48473,\n  \"crooked</w>\": 25644,\n  \"crooks</w>\": 44226,\n  \"crop\": 40751,\n  \"crop</w>\": 9955,\n  \"cropped</w>\": 31139,\n  \"crops</w>\": 16290,\n  \"crore</w>\": 18274,\n  \"crores</w>\": 37281,\n  \"cros\": 16670,\n  \"crosby</w>\": 21095,\n  \"cross\": 5266,\n  \"cross</w>\": 3417,\n  \"crossed</w>\": 11731,\n  \"crosses</w>\": 20473,\n  \"crossfit\": 47214,\n  \"crossfit</w>\": 20395,\n  \"crossing</w>\": 8673,\n  \"crossings</w>\": 43517,\n  \"crossover</w>\": 17194,\n  \"crossroads</w>\": 27427,\n  \"crossword</w>\": 32945,\n  \"crou\": 31206,\n  \"crouch</w>\": 36506,\n  \"crow\": 3138,\n  \"crow</w>\": 16019,\n  \"crowd\": 12036,\n  \"crowd</w>\": 4570,\n  \"crowded</w>\": 20182,\n  \"crowdfunding</w>\": 17971,\n  \"crowds</w>\": 16092,\n  \"crowe</w>\": 33560,\n  \"crowley</w>\": 32287,\n  \"crown\": 22190,\n  \"crown</w>\": 6902,\n  \"crowned</w>\": 16109,\n  \"crowns</w>\": 33229,\n  \"crows</w>\": 27134,\n  \"croy\": 21676,\n  \"croydon</w>\": 27116,\n  \"crs</w>\": 28449,\n  \"crt</w>\": 43877,\n  \"cru\": 1815,\n  \"cru</w>\": 29788,\n  \"cruci\": 18499,\n  \"crucial</w>\": 12396,\n  \"crude</w>\": 20677,\n  \"cruel\": 16073,\n  \"cruel</w>\": 17573,\n  \"cruelty</w>\": 20675,\n  \"cruis\": 27721,\n  \"cruise\": 36425,\n  \"cruise</w>\": 6764,\n  \"cruiser</w>\": 21394,\n  \"cruises</w>\": 19214,\n  \"cruising</w>\": 19743,\n  \"crum\": 43268,\n  \"crumb\": 48327,\n  \"crumb</w>\": 39909,\n  \"crumble</w>\": 36595,\n  \"crumbs</w>\": 35893,\n  \"crun\": 17407,\n  \"crunch</w>\": 16620,\n  \"crunchy</w>\": 31366,\n  \"crusad\": 19133,\n  \"crusade</w>\": 36846,\n  \"crusader</w>\": 40171,\n  \"crusaders</w>\": 31319,\n  \"crush\": 22296,\n  \"crush</w>\": 7610,\n  \"crushed</w>\": 18270,\n  \"crusher</w>\": 44923,\n  \"crushes</w>\": 35844,\n  \"crushing</w>\": 20790,\n  \"crust</w>\": 23136,\n  \"crusted</w>\": 37314,\n  \"cruz\": 33689,\n  \"cruz</w>\": 8403,\n  \"cry\": 2837,\n  \"cry</w>\": 6290,\n  \"crying</w>\": 6828,\n  \"cryo\": 32215,\n  \"cryp\": 4865,\n  \"crypt</w>\": 37814,\n  \"cryptic</w>\": 46925,\n  \"crypto\": 8080,\n  \"crypto</w>\": 9608,\n  \"cryptocurrencies</w>\": 33329,\n  \"cryptocurrency</w>\": 12070,\n  \"cryst\": 15891,\n  \"crystal\": 17387,\n  \"crystal</w>\": 6517,\n  \"crystalli\": 47551,\n  \"crystals</w>\": 18350,\n  \"cs\": 11978,\n  \"cs</w>\": 2804,\n  \"csa</w>\": 26355,\n  \"csc\": 41727,\n  \"csc</w>\": 37266,\n  \"csd</w>\": 36913,\n  \"cse</w>\": 41659,\n  \"csg</w>\": 47085,\n  \"csgo</w>\": 28928,\n  \"csi\": 41750,\n  \"csi</w>\": 28070,\n  \"csk</w>\": 43036,\n  \"csm</w>\": 40061,\n  \"csn</w>\": 46329,\n  \"cso</w>\": 43864,\n  \"csp</w>\": 39243,\n  \"csr\": 32105,\n  \"csr</w>\": 24598,\n  \"csrracing</w>\": 44193,\n  \"css\": 41418,\n  \"css</w>\": 19846,\n  \"cst</w>\": 17016,\n  \"csu\": 35948,\n  \"csu</w>\": 31261,\n  \"csw</w>\": 41031,\n  \"ct\": 3381,\n  \"ct</w>\": 1122,\n  \"cta</w>\": 28397,\n  \"ctar</w>\": 27842,\n  \"ctc</w>\": 34123,\n  \"cte</w>\": 31410,\n  \"cted</w>\": 2910,\n  \"ctf</w>\": 35250,\n  \"cthulhu</w>\": 41064,\n  \"cting</w>\": 7985,\n  \"ction\": 17578,\n  \"ction</w>\": 1569,\n  \"ctions</w>\": 7021,\n  \"ctive</w>\": 9313,\n  \"cto</w>\": 17445,\n  \"ctor</w>\": 8108,\n  \"ctr\": 35602,\n  \"ctr</w>\": 18481,\n  \"cts</w>\": 6936,\n  \"ctto</w>\": 25118,\n  \"ctu\": 20834,\n  \"cture</w>\": 17668,\n  \"ctv\": 21213,\n  \"ctv</w>\": 27590,\n  \"cu\": 729,\n  \"cu</w>\": 11224,\n  \"cuando</w>\": 40388,\n  \"cub\": 16938,\n  \"cub</w>\": 19972,\n  \"cuba</w>\": 11576,\n  \"cuban</w>\": 15536,\n  \"cube\": 47753,\n  \"cube</w>\": 11353,\n  \"cubes</w>\": 31413,\n  \"cubic\": 48159,\n  \"cubic</w>\": 29614,\n  \"cubs</w>\": 9858,\n  \"cuck\": 26364,\n  \"cuckoo</w>\": 38062,\n  \"cucu\": 16705,\n  \"cucumber</w>\": 19787,\n  \"cucumbers</w>\": 48065,\n  \"cud\": 42684,\n  \"cudd\": 12820,\n  \"cuddle</w>\": 19568,\n  \"cuddles</w>\": 24001,\n  \"cuddling</w>\": 29696,\n  \"cuddly</w>\": 36208,\n  \"cudi</w>\": 48713,\n  \"cue</w>\": 13424,\n  \"cuer\": 39506,\n  \"cues</w>\": 35719,\n  \"cuff\": 34693,\n  \"cuff</w>\": 22414,\n  \"cufflinks</w>\": 43938,\n  \"cuffs</w>\": 37221,\n  \"cuis\": 9938,\n  \"cuisine</w>\": 10605,\n  \"cuk</w>\": 34838,\n  \"cul\": 1877,\n  \"cula</w>\": 35935,\n  \"cular</w>\": 10940,\n  \"culars</w>\": 45719,\n  \"cule</w>\": 31066,\n  \"cules</w>\": 18984,\n  \"culin\": 14772,\n  \"culinary</w>\": 16466,\n  \"cull\": 21880,\n  \"cull</w>\": 42061,\n  \"cullen</w>\": 25973,\n  \"culmin\": 33778,\n  \"culo\": 36305,\n  \"culprit</w>\": 41593,\n  \"cult</w>\": 11965,\n  \"cultiv\": 16781,\n  \"cultivate</w>\": 42983,\n  \"cultivated</w>\": 48901,\n  \"cultivation</w>\": 41539,\n  \"cultur\": 20780,\n  \"cultural\": 34908,\n  \"cultural</w>\": 6753,\n  \"culturally</w>\": 36783,\n  \"culture\": 20197,\n  \"culture</w>\": 3673,\n  \"cultured</w>\": 40176,\n  \"cultures</w>\": 19552,\n  \"culver</w>\": 42103,\n  \"cum\": 20142,\n  \"cum</w>\": 27119,\n  \"cumb\": 10858,\n  \"cumber\": 15309,\n  \"cumberbatch</w>\": 27541,\n  \"cumberland</w>\": 28747,\n  \"cumbri\": 32010,\n  \"cumbria</w>\": 17953,\n  \"cumin</w>\": 42285,\n  \"cumple</w>\": 47050,\n  \"cumul\": 42961,\n  \"cumulative</w>\": 47610,\n  \"cumulus</w>\": 46313,\n  \"cun\": 12423,\n  \"cun</w>\": 29532,\n  \"cunningham</w>\": 25321,\n  \"cuomo</w>\": 25681,\n  \"cup\": 5059,\n  \"cup</w>\": 1937,\n  \"cupboard</w>\": 32074,\n  \"cupcake</w>\": 17025,\n  \"cupcakes</w>\": 12747,\n  \"cupid</w>\": 34885,\n  \"cuppa</w>\": 28077,\n  \"cups</w>\": 11463,\n  \"cur\": 1092,\n  \"cur</w>\": 33073,\n  \"curated</w>\": 20341,\n  \"curator</w>\": 20753,\n  \"curb</w>\": 21931,\n  \"curd</w>\": 38881,\n  \"cure\": 36758,\n  \"cure</w>\": 9088,\n  \"cured</w>\": 26248,\n  \"cures</w>\": 38204,\n  \"curfew</w>\": 48826,\n  \"curi\": 12640,\n  \"curing</w>\": 44169,\n  \"curiosity</w>\": 21583,\n  \"curious</w>\": 9865,\n  \"curl</w>\": 24306,\n  \"curled</w>\": 43734,\n  \"curling</w>\": 18543,\n  \"curls</w>\": 24340,\n  \"curly</w>\": 20795,\n  \"curran</w>\": 40999,\n  \"currant</w>\": 43501,\n  \"curren\": 6142,\n  \"currencies</w>\": 23530,\n  \"currency</w>\": 7853,\n  \"current</w>\": 3653,\n  \"currently</w>\": 3792,\n  \"currents</w>\": 35450,\n  \"curric\": 16201,\n  \"curriculum</w>\": 17947,\n  \"currie</w>\": 39385,\n  \"curry\": 49285,\n  \"curry</w>\": 8051,\n  \"curse</w>\": 18479,\n  \"cursed</w>\": 26408,\n  \"cursor</w>\": 46546,\n  \"curt</w>\": 38137,\n  \"curtain</w>\": 17223,\n  \"curtains</w>\": 30223,\n  \"curti\": 39925,\n  \"curtis</w>\": 13808,\n  \"curve</w>\": 15792,\n  \"curved</w>\": 25789,\n  \"curves</w>\": 22814,\n  \"curvy</w>\": 45788,\n  \"cus</w>\": 2736,\n  \"cusa</w>\": 47414,\n  \"cuse</w>\": 37950,\n  \"cush\": 43731,\n  \"cushi\": 15333,\n  \"cushion</w>\": 20853,\n  \"cushions</w>\": 34163,\n  \"cussion</w>\": 16658,\n  \"cussions</w>\": 46853,\n  \"cust\": 20900,\n  \"custard</w>\": 26516,\n  \"custo\": 4376,\n  \"custody</w>\": 16176,\n  \"custom\": 2662,\n  \"custom</w>\": 4996,\n  \"custome\": 41323,\n  \"customer\": 24035,\n  \"customer</w>\": 5102,\n  \"customerexperience</w>\": 45167,\n  \"customers</w>\": 5528,\n  \"customerservice</w>\": 40611,\n  \"customiz\": 41793,\n  \"customizable</w>\": 48253,\n  \"customization</w>\": 48244,\n  \"customize</w>\": 32179,\n  \"customized</w>\": 23229,\n  \"customs</w>\": 16880,\n  \"cut\": 10511,\n  \"cut</w>\": 3032,\n  \"cute\": 16031,\n  \"cute</w>\": 2242,\n  \"cuteness</w>\": 19342,\n  \"cuter</w>\": 27151,\n  \"cutest</w>\": 8032,\n  \"cuth\": 44328,\n  \"cutie</w>\": 10733,\n  \"cuties\": 40939,\n  \"cuties</w>\": 23420,\n  \"cutiesaturday</w>\": 41883,\n  \"cutler</w>\": 40428,\n  \"cutlery</w>\": 49073,\n  \"cutout</w>\": 45016,\n  \"cuts</w>\": 7435,\n  \"cutt\": 27338,\n  \"cutt</w>\": 47647,\n  \"cutter</w>\": 19719,\n  \"cutters</w>\": 44783,\n  \"cutting</w>\": 7266,\n  \"cuz</w>\": 9215,\n  \"cv\": 13531,\n  \"cv</w>\": 13947,\n  \"cvs</w>\": 29603,\n  \"cw\": 10652,\n  \"cw</w>\": 11065,\n  \"cwc</w>\": 19179,\n  \"cwgc</w>\": 48527,\n  \"cws</w>\": 45186,\n  \"cx\": 44457,\n  \"cx</w>\": 14283,\n  \"cy\": 1470,\n  \"cy</w>\": 1678,\n  \"cyber\": 5830,\n  \"cyber</w>\": 10210,\n  \"cybercrime</w>\": 41772,\n  \"cybermonday</w>\": 36578,\n  \"cyberpunk</w>\": 36896,\n  \"cybersecurity</w>\": 10581,\n  \"cyborg</w>\": 36650,\n  \"cycl\": 9791,\n  \"cycle\": 19083,\n  \"cycle</w>\": 5072,\n  \"cycled</w>\": 31055,\n  \"cycles</w>\": 14605,\n  \"cycli\": 12201,\n  \"cycling\": 26353,\n  \"cycling</w>\": 6321,\n  \"cyclist</w>\": 20686,\n  \"cyclists</w>\": 20303,\n  \"cyclo\": 18122,\n  \"cyclone\": 48094,\n  \"cyclone</w>\": 20917,\n  \"cyclones</w>\": 34669,\n  \"cylin\": 18569,\n  \"cylinder</w>\": 22092,\n  \"cylinders</w>\": 48888,\n  \"cymb\": 36677,\n  \"cymru</w>\": 24005,\n  \"cyn\": 14324,\n  \"cynthi\": 41994,\n  \"cynthia</w>\": 23748,\n  \"cyp\": 14809,\n  \"cypress</w>\": 25347,\n  \"cypri\": 36481,\n  \"cyprus</w>\": 15263,\n  \"cyril</w>\": 36028,\n  \"cyrus</w>\": 14204,\n  \"cystic</w>\": 46131,\n  \"cyto\": 31864,\n  \"cz\": 22898,\n  \"cz</w>\": 22921,\n  \"cze\": 12152,\n  \"czech\": 43151,\n  \"czech</w>\": 16141,\n  \"cÃ©\": 36454,\n  \"cÃ©</w>\": 18317,\n  \"d\": 67,\n  \"d</w>\": 323,\n  \"da\": 925,\n  \"da</w>\": 1140,\n  \"daa</w>\": 32642,\n  \"daan</w>\": 44814,\n  \"dab\": 10413,\n  \"dab</w>\": 22900,\n  \"dac\": 16222,\n  \"dac</w>\": 27478,\n  \"daca</w>\": 28477,\n  \"dach\": 34166,\n  \"dachsh\": 41641,\n  \"dachshund</w>\": 42720,\n  \"dad\": 4346,\n  \"dad</w>\": 2639,\n  \"dada</w>\": 31325,\n  \"daddy\": 29466,\n  \"daddy</w>\": 6546,\n  \"dade</w>\": 23299,\n  \"dades</w>\": 28289,\n  \"dads</w>\": 12741,\n  \"dae\": 23358,\n  \"dae</w>\": 15422,\n  \"daener\": 46934,\n  \"daes\": 47282,\n  \"daesh</w>\": 35047,\n  \"daf\": 9972,\n  \"daf</w>\": 36704,\n  \"daffodils</w>\": 44769,\n  \"daft</w>\": 36347,\n  \"dag\": 11434,\n  \"dag</w>\": 25650,\n  \"dagger</w>\": 34251,\n  \"dah\": 16976,\n  \"dah</w>\": 11776,\n  \"dahl\": 45816,\n  \"dahl</w>\": 22621,\n  \"dahlia</w>\": 41768,\n  \"dai\": 13559,\n  \"dai</w>\": 10632,\n  \"dail\": 14676,\n  \"dailies</w>\": 21260,\n  \"daily\": 6689,\n  \"daily</w>\": 2873,\n  \"dailynews</w>\": 43466,\n  \"dailys\": 43160,\n  \"dailysketch</w>\": 46738,\n  \"daim\": 40421,\n  \"dain\": 32222,\n  \"dain</w>\": 28315,\n  \"daipur</w>\": 47631,\n  \"dair\": 19998,\n  \"dair</w>\": 42078,\n  \"dairy\": 25243,\n  \"dairy</w>\": 10302,\n  \"dairyfree</w>\": 49366,\n  \"dais\": 10502,\n  \"daisi\": 39947,\n  \"daisies</w>\": 40654,\n  \"daisy\": 39310,\n  \"daisy</w>\": 12865,\n  \"dak\": 6999,\n  \"dak</w>\": 16095,\n  \"dakar</w>\": 31137,\n  \"dakota\": 38522,\n  \"dakota</w>\": 12358,\n  \"dal\": 2476,\n  \"dal</w>\": 5601,\n  \"dala</w>\": 42675,\n  \"dalai</w>\": 41222,\n  \"dalail\": 35169,\n  \"dalailama</w>\": 35849,\n  \"dale\": 11533,\n  \"dale</w>\": 4677,\n  \"dalejr</w>\": 38207,\n  \"dales</w>\": 29031,\n  \"daley</w>\": 28544,\n  \"dalgo</w>\": 43614,\n  \"dali\": 36735,\n  \"dali</w>\": 25703,\n  \"dalit</w>\": 45432,\n  \"dall</w>\": 43631,\n  \"dalla\": 16772,\n  \"dallas\": 27414,\n  \"dallas</w>\": 5759,\n  \"dallascowboys</w>\": 33016,\n  \"dalmati\": 44275,\n  \"dalton</w>\": 21488,\n  \"daly</w>\": 24873,\n  \"dam\": 1880,\n  \"dam</w>\": 4926,\n  \"damage</w>\": 6822,\n  \"damaged</w>\": 13568,\n  \"damages</w>\": 28842,\n  \"damaging</w>\": 20610,\n  \"damas\": 23345,\n  \"damascus</w>\": 25396,\n  \"dame</w>\": 10069,\n  \"dames</w>\": 44548,\n  \"dami\": 17783,\n  \"damian\": 43307,\n  \"damian</w>\": 25375,\n  \"damien</w>\": 25090,\n  \"dammit</w>\": 31057,\n  \"damn\": 37409,\n  \"damn</w>\": 4451,\n  \"damned</w>\": 28428,\n  \"damon\": 48503,\n  \"damon</w>\": 18244,\n  \"damp</w>\": 26520,\n  \"dams</w>\": 37680,\n  \"dan\": 2257,\n  \"dan</w>\": 2284,\n  \"dana\": 44834,\n  \"dana</w>\": 13777,\n  \"danao</w>\": 38598,\n  \"danc\": 3945,\n  \"dance\": 10619,\n  \"dance</w>\": 2724,\n  \"danced</w>\": 32891,\n  \"dancehall</w>\": 33300,\n  \"dancer</w>\": 11400,\n  \"dancers</w>\": 13153,\n  \"dances</w>\": 24083,\n  \"dancing\": 33280,\n  \"dancing</w>\": 6226,\n  \"dand\": 12593,\n  \"dandelion</w>\": 38903,\n  \"dandy</w>\": 31932,\n  \"dane</w>\": 19330,\n  \"danes</w>\": 47477,\n  \"dang\": 4283,\n  \"dang</w>\": 14992,\n  \"danger\": 20083,\n  \"danger</w>\": 11212,\n  \"dangerous</w>\": 7350,\n  \"dangerously</w>\": 35012,\n  \"dangers</w>\": 23726,\n  \"dangle</w>\": 39907,\n  \"dani\": 3001,\n  \"dani</w>\": 17009,\n  \"daniel\": 7859,\n  \"daniel</w>\": 4981,\n  \"daniela</w>\": 44466,\n  \"danielle\": 30396,\n  \"danielle</w>\": 15292,\n  \"danielpadilla</w>\": 34702,\n  \"daniels</w>\": 16146,\n  \"danish</w>\": 15467,\n  \"dank</w>\": 31849,\n  \"dann\": 11951,\n  \"danny\": 14950,\n  \"danny</w>\": 7621,\n  \"dano</w>\": 29703,\n  \"dans</w>\": 16241,\n  \"dant\": 48097,\n  \"dant</w>\": 28237,\n  \"dante</w>\": 21911,\n  \"danube</w>\": 44594,\n  \"dany</w>\": 47816,\n  \"dao</w>\": 36099,\n  \"dap\": 12149,\n  \"dap</w>\": 38034,\n  \"daph\": 24591,\n  \"daphne</w>\": 31687,\n  \"dapl</w>\": 34478,\n  \"dapp\": 46857,\n  \"dapper</w>\": 26071,\n  \"daq</w>\": 25381,\n  \"dar\": 1377,\n  \"dar</w>\": 6242,\n  \"dara</w>\": 17064,\n  \"darby</w>\": 34366,\n  \"darcy</w>\": 32916,\n  \"dare\": 14833,\n  \"dare</w>\": 9863,\n  \"daredevil</w>\": 28849,\n  \"dares</w>\": 42973,\n  \"dareto\": 46794,\n  \"dari\": 16292,\n  \"dari</w>\": 14552,\n  \"daria</w>\": 45622,\n  \"daries</w>\": 18184,\n  \"daring</w>\": 28166,\n  \"dario</w>\": 33918,\n  \"darius</w>\": 32606,\n  \"darje\": 49089,\n  \"dark\": 5724,\n  \"dark</w>\": 3144,\n  \"darker</w>\": 18737,\n  \"darkest</w>\": 25898,\n  \"darkness</w>\": 10521,\n  \"darling</w>\": 13048,\n  \"darlings</w>\": 39961,\n  \"darlington</w>\": 34565,\n  \"darn</w>\": 26059,\n  \"darrell</w>\": 33522,\n  \"darren\": 20263,\n  \"darren</w>\": 12275,\n  \"darry\": 29200,\n  \"darryl</w>\": 35359,\n  \"darshan</w>\": 34564,\n  \"dart\": 14001,\n  \"dart</w>\": 19841,\n  \"darth\": 41304,\n  \"darth</w>\": 23164,\n  \"dartmoor</w>\": 31477,\n  \"dartmouth</w>\": 29667,\n  \"darts</w>\": 15246,\n  \"darwin\": 43013,\n  \"darwin</w>\": 20926,\n  \"daryl\": 45607,\n  \"daryl</w>\": 24532,\n  \"das\": 9940,\n  \"das</w>\": 7359,\n  \"dash\": 13858,\n  \"dash</w>\": 10206,\n  \"dashboard</w>\": 27679,\n  \"dashi\": 12876,\n  \"dashing</w>\": 33825,\n  \"dat\": 1717,\n  \"dat</w>\": 9445,\n  \"data\": 14876,\n  \"data</w>\": 2281,\n  \"datab\": 11941,\n  \"database</w>\": 14678,\n  \"databases</w>\": 48384,\n  \"datac\": 27329,\n  \"datacenter</w>\": 40133,\n  \"datasci\": 14496,\n  \"datascience</w>\": 15748,\n  \"dataviz</w>\": 28138,\n  \"date\": 34300,\n  \"date</w>\": 1524,\n  \"dated</w>\": 13564,\n  \"dates</w>\": 7228,\n  \"dating</w>\": 8534,\n  \"dation</w>\": 15311,\n  \"datlantic\": 34270,\n  \"dato</w>\": 36075,\n  \"dats</w>\": 48674,\n  \"dau\": 3162,\n  \"dau</w>\": 33828,\n  \"daugh\": 42523,\n  \"daughter</w>\": 3944,\n  \"daughters</w>\": 13585,\n  \"daun\": 29470,\n  \"dav\": 3700,\n  \"dav</w>\": 46488,\n  \"davao</w>\": 31502,\n  \"dave\": 10089,\n  \"dave</w>\": 5077,\n  \"daven\": 28350,\n  \"davenport</w>\": 34624,\n  \"davey</w>\": 33391,\n  \"davi\": 1732,\n  \"david\": 4640,\n  \"david</w>\": 2259,\n  \"davidbowie</w>\": 44448,\n  \"davido</w>\": 35989,\n  \"davids</w>\": 46695,\n  \"davidson</w>\": 13166,\n  \"davies</w>\": 13120,\n  \"davin\": 43187,\n  \"davis\": 24426,\n  \"davis</w>\": 5536,\n  \"davison</w>\": 43725,\n  \"davos</w>\": 31887,\n  \"davy</w>\": 41565,\n  \"daw\": 5971,\n  \"daw</w>\": 24404,\n  \"dawg</w>\": 18660,\n  \"dawgs</w>\": 26431,\n  \"dawn\": 30590,\n  \"dawn</w>\": 7689,\n  \"dawson</w>\": 18611,\n  \"dax</w>\": 29458,\n  \"day\": 1405,\n  \"day</w>\": 575,\n  \"daya</w>\": 38165,\n  \"daybreak</w>\": 33862,\n  \"daycare</w>\": 36363,\n  \"daydream</w>\": 41587,\n  \"dayin\": 20332,\n  \"daylight</w>\": 20809,\n  \"dayo\": 29856,\n  \"dayo</w>\": 46605,\n  \"dayof\": 16272,\n  \"dayofthe\": 38043,\n  \"days</w>\": 1161,\n  \"daysof\": 12379,\n  \"daysofcode</w>\": 36537,\n  \"daysto\": 29886,\n  \"daystogo</w>\": 42198,\n  \"dayswild</w>\": 42052,\n  \"daytime</w>\": 22830,\n  \"dayton\": 35729,\n  \"dayton</w>\": 20262,\n  \"daytona</w>\": 16335,\n  \"dayweekend</w>\": 44526,\n  \"dayz</w>\": 35949,\n  \"daz\": 15449,\n  \"daz</w>\": 43844,\n  \"daze</w>\": 33591,\n  \"dazz\": 17149,\n  \"dazzle</w>\": 41164,\n  \"dazzling</w>\": 28821,\n  \"db\": 19100,\n  \"db</w>\": 8128,\n  \"dbacks</w>\": 31175,\n  \"dbs</w>\": 40558,\n  \"dbz</w>\": 49226,\n  \"dc\": 5074,\n  \"dc</w>\": 2743,\n  \"dca</w>\": 49107,\n  \"dcc</w>\": 33747,\n  \"dccomics</w>\": 17610,\n  \"dcfc</w>\": 35526,\n  \"dci</w>\": 35336,\n  \"dcs</w>\": 42878,\n  \"dcu</w>\": 42647,\n  \"dd\": 1353,\n  \"dd</w>\": 3766,\n  \"dda</w>\": 35202,\n  \"ddad</w>\": 39049,\n  \"dday\": 32689,\n  \"dday</w>\": 26243,\n  \"ddc</w>\": 48513,\n  \"ddd</w>\": 24183,\n  \"dddd</w>\": 35362,\n  \"dden</w>\": 5013,\n  \"dder</w>\": 9300,\n  \"dders</w>\": 24827,\n  \"ddi</w>\": 44450,\n  \"ddin</w>\": 17175,\n  \"dding\": 48101,\n  \"dding</w>\": 8974,\n  \"ddings</w>\": 49106,\n  \"ddington</w>\": 29238,\n  \"ddle\": 17633,\n  \"ddle</w>\": 8357,\n  \"ddled</w>\": 38392,\n  \"ddles</w>\": 33901,\n  \"ddleston</w>\": 25647,\n  \"ddling</w>\": 30981,\n  \"ddlovato</w>\": 28244,\n  \"ddos</w>\": 46463,\n  \"ddr</w>\": 26027,\n  \"dds</w>\": 48334,\n  \"ddu</w>\": 43836,\n  \"ddy\": 14981,\n  \"ddy</w>\": 7876,\n  \"de\": 561,\n  \"de</w>\": 654,\n  \"dea</w>\": 18477,\n  \"deacon</w>\": 29155,\n  \"dead\": 3906,\n  \"dead</w>\": 2747,\n  \"deadliest</w>\": 40811,\n  \"deadline\": 47209,\n  \"deadline</w>\": 8458,\n  \"deadlines</w>\": 44959,\n  \"deadly</w>\": 10756,\n  \"deadpool</w>\": 21471,\n  \"deaf\": 28229,\n  \"deaf</w>\": 18358,\n  \"deal\": 7249,\n  \"deal</w>\": 2696,\n  \"dealer</w>\": 15218,\n  \"dealers</w>\": 21697,\n  \"dealership</w>\": 32096,\n  \"dealing</w>\": 13138,\n  \"deals</w>\": 4469,\n  \"dealt</w>\": 30101,\n  \"dean\": 13807,\n  \"dean</w>\": 5828,\n  \"deandre</w>\": 43635,\n  \"deans</w>\": 46852,\n  \"dear\": 15696,\n  \"dear</w>\": 3817,\n  \"dearest</w>\": 24880,\n  \"dearly</w>\": 31880,\n  \"deas</w>\": 34715,\n  \"death\": 7163,\n  \"death</w>\": 2767,\n  \"deaths</w>\": 12253,\n  \"deau</w>\": 12399,\n  \"deaux</w>\": 19883,\n  \"deb\": 2987,\n  \"deb</w>\": 25687,\n  \"debat\": 32082,\n  \"debate</w>\": 5196,\n  \"debates</w>\": 19239,\n  \"debating</w>\": 23472,\n  \"debbie\": 47186,\n  \"debbie</w>\": 16735,\n  \"debit</w>\": 32410,\n  \"debor\": 16738,\n  \"deborah\": 40997,\n  \"deborah</w>\": 22150,\n  \"debra</w>\": 33233,\n  \"debris</w>\": 19208,\n  \"debt</w>\": 8932,\n  \"debts</w>\": 38770,\n  \"debu\": 9790,\n  \"debun\": 33123,\n  \"debut\": 42608,\n  \"debut</w>\": 4085,\n  \"debuted</w>\": 25215,\n  \"debuting</w>\": 34817,\n  \"debuts</w>\": 17044,\n  \"dec\": 3063,\n  \"dec</w>\": 4628,\n  \"deca</w>\": 33428,\n  \"decad\": 29914,\n  \"decade</w>\": 11099,\n  \"decadent</w>\": 41716,\n  \"decades</w>\": 10488,\n  \"decal</w>\": 26678,\n  \"decals</w>\": 37606,\n  \"decan\": 40677,\n  \"decat\": 35334,\n  \"decath\": 47455,\n  \"decatur</w>\": 38540,\n  \"decay</w>\": 22703,\n  \"dece\": 3534,\n  \"deceased</w>\": 30035,\n  \"december</w>\": 3864,\n  \"decent</w>\": 10698,\n  \"decentr\": 28960,\n  \"decentralized</w>\": 38485,\n  \"decep\": 33529,\n  \"deception</w>\": 33046,\n  \"deci\": 2262,\n  \"decide</w>\": 8447,\n  \"decided</w>\": 4939,\n  \"decides</w>\": 17269,\n  \"deciding</w>\": 22513,\n  \"decision</w>\": 5575,\n  \"decisions</w>\": 9903,\n  \"decisive</w>\": 28690,\n  \"deck\": 24885,\n  \"deck</w>\": 6943,\n  \"decked</w>\": 39096,\n  \"decker</w>\": 21449,\n  \"decks</w>\": 23968,\n  \"decl\": 7091,\n  \"decla\": 10739,\n  \"declan</w>\": 42341,\n  \"declar\": 18040,\n  \"declaration</w>\": 19714,\n  \"declare</w>\": 19856,\n  \"declared</w>\": 13845,\n  \"declares</w>\": 23641,\n  \"declaring</w>\": 33273,\n  \"decline</w>\": 15084,\n  \"declined</w>\": 28911,\n  \"declines</w>\": 40478,\n  \"declining</w>\": 29221,\n  \"deco\": 26412,\n  \"deco</w>\": 16422,\n  \"decor\": 5148,\n  \"decor</w>\": 6928,\n  \"decorate</w>\": 23651,\n  \"decorated</w>\": 15917,\n  \"decorating</w>\": 16968,\n  \"decoration</w>\": 16029,\n  \"decorations</w>\": 19158,\n  \"decorative</w>\": 19289,\n  \"decre\": 12284,\n  \"decrease</w>\": 24703,\n  \"decreased</w>\": 33913,\n  \"decreasing</w>\": 43763,\n  \"decree</w>\": 43327,\n  \"ded\": 16744,\n  \"ded</w>\": 1241,\n  \"dedic\": 4701,\n  \"dedicate</w>\": 27610,\n  \"dedicated</w>\": 6770,\n  \"dedication</w>\": 10188,\n  \"dedly</w>\": 36204,\n  \"deduc\": 22799,\n  \"dee\": 5268,\n  \"dee</w>\": 6705,\n  \"deed</w>\": 30260,\n  \"deeds</w>\": 24516,\n  \"deejay\": 48304,\n  \"deejay</w>\": 44511,\n  \"deemed</w>\": 28102,\n  \"deen\": 26456,\n  \"deen</w>\": 12912,\n  \"deep\": 5462,\n  \"deep</w>\": 3383,\n  \"deepak</w>\": 45528,\n  \"deeper</w>\": 15224,\n  \"deepest</w>\": 22245,\n  \"deephouse</w>\": 35684,\n  \"deepi\": 19371,\n  \"deepika</w>\": 34120,\n  \"deepikap\": 29903,\n  \"deepikapadukone</w>\": 30646,\n  \"deeplear\": 22181,\n  \"deeplearning</w>\": 24362,\n  \"deeply</w>\": 11449,\n  \"deer\": 19454,\n  \"deer</w>\": 8700,\n  \"deere</w>\": 32901,\n  \"dees</w>\": 12547,\n  \"deets</w>\": 35537,\n  \"def\": 2044,\n  \"def</w>\": 11649,\n  \"defam\": 35670,\n  \"defamation</w>\": 42741,\n  \"default</w>\": 21650,\n  \"defe\": 4148,\n  \"defeat</w>\": 8477,\n  \"defeated</w>\": 8927,\n  \"defeating</w>\": 22594,\n  \"defeats</w>\": 16317,\n  \"defect</w>\": 44013,\n  \"defects</w>\": 37485,\n  \"defen\": 3619,\n  \"defence\": 30307,\n  \"defence</w>\": 9659,\n  \"defend\": 21970,\n  \"defend</w>\": 11397,\n  \"defended</w>\": 27161,\n  \"defender</w>\": 10618,\n  \"defenders</w>\": 20063,\n  \"defending</w>\": 13098,\n  \"defends</w>\": 20134,\n  \"defense\": 45875,\n  \"defense</w>\": 6021,\n  \"defenseman</w>\": 43714,\n  \"defenses</w>\": 49198,\n  \"defensive</w>\": 10824,\n  \"defi\": 17244,\n  \"defiance</w>\": 36186,\n  \"defiant</w>\": 47597,\n  \"defibrill\": 47684,\n  \"defic\": 18022,\n  \"defici\": 23387,\n  \"deficiency</w>\": 30685,\n  \"deficit</w>\": 20156,\n  \"defin\": 3188,\n  \"define</w>\": 14919,\n  \"defined</w>\": 15278,\n  \"defines</w>\": 28218,\n  \"defining</w>\": 20504,\n  \"definite</w>\": 40793,\n  \"definitely</w>\": 4824,\n  \"definition</w>\": 11405,\n  \"definitive</w>\": 25298,\n  \"defl\": 31467,\n  \"deforestation</w>\": 41330,\n  \"defstar</w>\": 36427,\n  \"defy</w>\": 39148,\n  \"defying</w>\": 38496,\n  \"deg</w>\": 38498,\n  \"degra\": 28939,\n  \"degradation</w>\": 44468,\n  \"degre\": 4653,\n  \"degree</w>\": 7119,\n  \"degrees</w>\": 8000,\n  \"deh</w>\": 35582,\n  \"dei\": 33833,\n  \"dei</w>\": 23279,\n  \"deir\": 42948,\n  \"deity</w>\": 42574,\n  \"deja</w>\": 46902,\n  \"dek</w>\": 23901,\n  \"dekalb</w>\": 37775,\n  \"del\": 1233,\n  \"del</w>\": 2003,\n  \"dela</w>\": 37986,\n  \"delaney</w>\": 31528,\n  \"delav\": 23706,\n  \"delavin\": 40477,\n  \"delavin</w>\": 40776,\n  \"delavinkisses</w>\": 40631,\n  \"delaware</w>\": 17547,\n  \"delay\": 12955,\n  \"delay</w>\": 10934,\n  \"delayed</w>\": 14567,\n  \"delaying</w>\": 43781,\n  \"delays</w>\": 11232,\n  \"dele\": 7922,\n  \"dele</w>\": 33431,\n  \"delec\": 38615,\n  \"delectable</w>\": 45500,\n  \"deleg\": 8046,\n  \"delegate</w>\": 27259,\n  \"delegates</w>\": 14623,\n  \"delegation</w>\": 14632,\n  \"delete</w>\": 19204,\n  \"deleted</w>\": 16588,\n  \"deleting</w>\": 41857,\n  \"delft</w>\": 42749,\n  \"delgado</w>\": 49182,\n  \"delhi\": 26723,\n  \"delhi</w>\": 5717,\n  \"deli\": 1932,\n  \"deli</w>\": 18601,\n  \"delia</w>\": 33193,\n  \"deliber\": 18316,\n  \"deliberate</w>\": 38271,\n  \"deliberately</w>\": 35163,\n  \"delic\": 13366,\n  \"delicacy</w>\": 49181,\n  \"delicate</w>\": 18768,\n  \"delici\": 19993,\n  \"delicious</w>\": 3959,\n  \"deliciously</w>\": 39589,\n  \"deliciousness</w>\": 42819,\n  \"delight\": 46165,\n  \"delight</w>\": 13073,\n  \"delighted</w>\": 5943,\n  \"delightful</w>\": 15513,\n  \"delights</w>\": 25330,\n  \"deline</w>\": 18797,\n  \"delines</w>\": 13562,\n  \"delish</w>\": 25093,\n  \"deliver\": 19561,\n  \"deliver</w>\": 7396,\n  \"delivered</w>\": 7278,\n  \"deliveries</w>\": 29336,\n  \"delivering</w>\": 9943,\n  \"delivers</w>\": 11753,\n  \"delivery</w>\": 5619,\n  \"dell\": 24381,\n  \"dell</w>\": 10242,\n  \"della</w>\": 22986,\n  \"delle</w>\": 35963,\n  \"deloit\": 29428,\n  \"deloitte</w>\": 38667,\n  \"dels</w>\": 48636,\n  \"delta\": 32250,\n  \"delta</w>\": 8768,\n  \"delu\": 18779,\n  \"delusional</w>\": 48059,\n  \"delux\": 13709,\n  \"deluxe</w>\": 14056,\n  \"delve</w>\": 46008,\n  \"dely</w>\": 15040,\n  \"dem\": 3251,\n  \"dem</w>\": 7825,\n  \"dema\": 40268,\n  \"dema</w>\": 45046,\n  \"deman</w>\": 48366,\n  \"demand\": 13072,\n  \"demand</w>\": 5650,\n  \"demanded</w>\": 33699,\n  \"demanding</w>\": 17099,\n  \"demands</w>\": 14241,\n  \"demar</w>\": 46566,\n  \"demarcus</w>\": 47873,\n  \"demb\": 35930,\n  \"demdebate</w>\": 43973,\n  \"deme\": 25143,\n  \"demean\": 37376,\n  \"demen\": 12604,\n  \"dementi\": 46028,\n  \"dementia</w>\": 14047,\n  \"demetri\": 39553,\n  \"demi\": 32879,\n  \"demi</w>\": 14480,\n  \"demise</w>\": 28756,\n  \"demo\": 2930,\n  \"demo</w>\": 7380,\n  \"democr\": 3573,\n  \"democracy</w>\": 7758,\n  \"democrat</w>\": 15431,\n  \"democratic</w>\": 9149,\n  \"democrats</w>\": 8865,\n  \"demographic</w>\": 31308,\n  \"demol\": 19382,\n  \"demolished</w>\": 26537,\n  \"demolition</w>\": 22237,\n  \"demon\": 5635,\n  \"demon</w>\": 12085,\n  \"demonetisation</w>\": 41338,\n  \"demonic</w>\": 46920,\n  \"demons</w>\": 18388,\n  \"demonstr\": 8579,\n  \"demonstrate</w>\": 22231,\n  \"demonstrated</w>\": 29477,\n  \"demonstrates</w>\": 24806,\n  \"demonstrating</w>\": 22107,\n  \"demonstration</w>\": 16722,\n  \"demonstrations</w>\": 33964,\n  \"demonstrators</w>\": 46450,\n  \"demos</w>\": 19304,\n  \"demp\": 22490,\n  \"dempsey</w>\": 30188,\n  \"dems</w>\": 10989,\n  \"demsin\": 42664,\n  \"demsinphilly</w>\": 43091,\n  \"den\": 1177,\n  \"den</w>\": 1181,\n  \"dena</w>\": 32431,\n  \"denali</w>\": 48076,\n  \"dence</w>\": 3370,\n  \"dency</w>\": 11659,\n  \"dend\": 37447,\n  \"dends</w>\": 43985,\n  \"dene</w>\": 45128,\n  \"dened</w>\": 19571,\n  \"deng\": 43098,\n  \"deng</w>\": 41788,\n  \"dengue</w>\": 41932,\n  \"denham</w>\": 39180,\n  \"deni\": 21995,\n  \"denial</w>\": 25716,\n  \"denied</w>\": 15780,\n  \"denies</w>\": 19565,\n  \"denim</w>\": 13606,\n  \"denis\": 47630,\n  \"denis</w>\": 18750,\n  \"denise\": 45900,\n  \"denise</w>\": 20899,\n  \"denmark</w>\": 13268,\n  \"dennis\": 32738,\n  \"dennis</w>\": 10534,\n  \"denny</w>\": 26808,\n  \"denomin\": 41016,\n  \"dens</w>\": 16533,\n  \"dense</w>\": 19353,\n  \"density</w>\": 22431,\n  \"dent\": 3593,\n  \"dent</w>\": 1258,\n  \"dental\": 24635,\n  \"dental</w>\": 8382,\n  \"dentally</w>\": 10346,\n  \"dented</w>\": 21923,\n  \"denti\": 4418,\n  \"dential</w>\": 5459,\n  \"dentist</w>\": 17816,\n  \"dentistry</w>\": 25754,\n  \"dently</w>\": 28817,\n  \"denton</w>\": 23567,\n  \"dents</w>\": 1517,\n  \"denver\": 27847,\n  \"denver</w>\": 8569,\n  \"deny</w>\": 18679,\n  \"denying</w>\": 32771,\n  \"denzel</w>\": 42503,\n  \"deo\": 26406,\n  \"deo</w>\": 12121,\n  \"deodor\": 47639,\n  \"deol</w>\": 41902,\n  \"deon\": 31466,\n  \"deon</w>\": 16079,\n  \"dep\": 6079,\n  \"dep</w>\": 24370,\n  \"depar\": 10794,\n  \"depart\": 5343,\n  \"depart</w>\": 30649,\n  \"departed</w>\": 32541,\n  \"departing</w>\": 26902,\n  \"department</w>\": 5744,\n  \"departments</w>\": 29523,\n  \"departs</w>\": 38998,\n  \"departure</w>\": 17850,\n  \"depe\": 36118,\n  \"depend\": 13894,\n  \"depend</w>\": 27371,\n  \"dependence</w>\": 40243,\n  \"dependent</w>\": 23280,\n  \"depending</w>\": 23673,\n  \"depends</w>\": 20497,\n  \"depic\": 11307,\n  \"depicted</w>\": 34637,\n  \"depicting</w>\": 24970,\n  \"depiction</w>\": 31071,\n  \"depicts</w>\": 29340,\n  \"deple\": 38504,\n  \"deplo\": 9356,\n  \"deplor\": 39232,\n  \"deploy</w>\": 26944,\n  \"deployed</w>\": 20009,\n  \"deploying</w>\": 42212,\n  \"deployment</w>\": 20183,\n  \"depo\": 14276,\n  \"depor\": 36110,\n  \"deport\": 23389,\n  \"deportation</w>\": 36617,\n  \"deported</w>\": 39320,\n  \"deportes</w>\": 47878,\n  \"depos\": 21266,\n  \"deposit</w>\": 16775,\n  \"deposits</w>\": 30740,\n  \"depot</w>\": 12589,\n  \"depp</w>\": 24941,\n  \"depre\": 7107,\n  \"depress\": 38869,\n  \"depressed</w>\": 23269,\n  \"depressing</w>\": 29235,\n  \"depression</w>\": 10023,\n  \"depri\": 28587,\n  \"depriv\": 45809,\n  \"deprivation</w>\": 47810,\n  \"deprived</w>\": 39140,\n  \"dept</w>\": 9201,\n  \"depth</w>\": 10350,\n  \"depths</w>\": 28855,\n  \"depu\": 6912,\n  \"deputies</w>\": 24914,\n  \"deputy</w>\": 7932,\n  \"der\": 839,\n  \"der</w>\": 801,\n  \"dera</w>\": 20696,\n  \"derail\": 48502,\n  \"derby\": 13904,\n  \"derby</w>\": 7177,\n  \"derbyshire</w>\": 22147,\n  \"derdale</w>\": 21513,\n  \"dere\": 5701,\n  \"dere</w>\": 44194,\n  \"dered</w>\": 3776,\n  \"derek\": 22461,\n  \"derek</w>\": 11205,\n  \"derel\": 46728,\n  \"derer</w>\": 11289,\n  \"derers</w>\": 20882,\n  \"deri\": 34573,\n  \"derick</w>\": 33908,\n  \"dering</w>\": 6076,\n  \"deriv\": 33458,\n  \"derived</w>\": 26461,\n  \"derland</w>\": 35488,\n  \"derman</w>\": 29740,\n  \"dermatology</w>\": 48051,\n  \"dern</w>\": 30086,\n  \"dero\": 37203,\n  \"dero</w>\": 34026,\n  \"derrick</w>\": 21798,\n  \"derry\": 45777,\n  \"derry</w>\": 20535,\n  \"ders\": 37307,\n  \"ders</w>\": 1923,\n  \"derson</w>\": 12677,\n  \"dery</w>\": 17172,\n  \"des\": 6797,\n  \"des</w>\": 1437,\n  \"desai</w>\": 35316,\n  \"desc\": 13866,\n  \"descen\": 32318,\n  \"descend\": 26004,\n  \"descend</w>\": 46241,\n  \"descendants</w>\": 36323,\n  \"descending</w>\": 36620,\n  \"descent</w>\": 19375,\n  \"desch\": 49209,\n  \"descri\": 4637,\n  \"describe</w>\": 10967,\n  \"described</w>\": 14671,\n  \"describes</w>\": 13678,\n  \"describing</w>\": 24239,\n  \"descrip\": 41832,\n  \"description</w>\": 13951,\n  \"descriptions</w>\": 40653,\n  \"desde</w>\": 42218,\n  \"dese\": 27195,\n  \"deser\": 3659,\n  \"desert\": 45776,\n  \"desert</w>\": 7301,\n  \"deserted</w>\": 41560,\n  \"deserve</w>\": 7043,\n  \"deserved</w>\": 10061,\n  \"deserves</w>\": 9079,\n  \"deserving</w>\": 26615,\n  \"desh\": 25320,\n  \"desh</w>\": 7448,\n  \"deshi</w>\": 42769,\n  \"desi\": 6772,\n  \"desi</w>\": 26635,\n  \"desig\": 1250,\n  \"design\": 8359,\n  \"design</w>\": 1681,\n  \"designated</w>\": 24119,\n  \"designation</w>\": 41155,\n  \"designed</w>\": 4486,\n  \"designer\": 35640,\n  \"designer</w>\": 5728,\n  \"designers</w>\": 12720,\n  \"designing</w>\": 13467,\n  \"designs</w>\": 6747,\n  \"designthinking</w>\": 32450,\n  \"desirable</w>\": 32368,\n  \"desire</w>\": 11858,\n  \"desired</w>\": 28631,\n  \"desires</w>\": 27598,\n  \"desk\": 11937,\n  \"desk</w>\": 6550,\n  \"desks</w>\": 41014,\n  \"desktop</w>\": 14345,\n  \"desmond</w>\": 27821,\n  \"desol\": 41258,\n  \"desp\": 3642,\n  \"despair</w>\": 28097,\n  \"desper\": 10144,\n  \"desperate</w>\": 15072,\n  \"desperately</w>\": 21993,\n  \"despic\": 32442,\n  \"despicable</w>\": 37158,\n  \"despite</w>\": 5325,\n  \"dess\": 7096,\n  \"dess</w>\": 10001,\n  \"dessert</w>\": 9753,\n  \"desserts</w>\": 22948,\n  \"desses</w>\": 43913,\n  \"dest\": 6540,\n  \"dest</w>\": 4549,\n  \"destin\": 4934,\n  \"destination\": 32191,\n  \"destination</w>\": 9179,\n  \"destinations</w>\": 16981,\n  \"destined</w>\": 28525,\n  \"destiny\": 39875,\n  \"destiny</w>\": 10867,\n  \"destro\": 8287,\n  \"destroy\": 8308,\n  \"destroy</w>\": 11930,\n  \"destroyed</w>\": 9965,\n  \"destroyer</w>\": 25291,\n  \"destroying</w>\": 19613,\n  \"destroys</w>\": 27634,\n  \"destruc\": 22945,\n  \"destruction</w>\": 14281,\n  \"destructive</w>\": 29591,\n  \"det\": 28966,\n  \"det</w>\": 15366,\n  \"deta\": 1914,\n  \"detached</w>\": 26252,\n  \"detail</w>\": 7657,\n  \"detailed</w>\": 12609,\n  \"detailing</w>\": 23163,\n  \"details</w>\": 2353,\n  \"detained</w>\": 20260,\n  \"dete\": 5606,\n  \"detec\": 17991,\n  \"detect</w>\": 22744,\n  \"detected</w>\": 26988,\n  \"detecting</w>\": 41290,\n  \"detection</w>\": 16220,\n  \"detective</w>\": 13672,\n  \"detectives</w>\": 27994,\n  \"detector</w>\": 27689,\n  \"detectors</w>\": 45063,\n  \"detention</w>\": 16908,\n  \"deter\": 10742,\n  \"deter</w>\": 47458,\n  \"detergent</w>\": 46726,\n  \"deterior\": 28512,\n  \"determin\": 8325,\n  \"determination</w>\": 17410,\n  \"determine</w>\": 16768,\n  \"determined</w>\": 14371,\n  \"determines</w>\": 42192,\n  \"determining</w>\": 39884,\n  \"deth</w>\": 38375,\n  \"deto\": 39710,\n  \"deton\": 39335,\n  \"detour</w>\": 31211,\n  \"detox</w>\": 22459,\n  \"detri\": 47951,\n  \"detro\": 6210,\n  \"detroit\": 19404,\n  \"detroit</w>\": 7073,\n  \"detta</w>\": 45438,\n  \"dette</w>\": 35750,\n  \"deu\": 21457,\n  \"deuce</w>\": 45332,\n  \"deus</w>\": 37625,\n  \"deut\": 14970,\n  \"deutsch\": 30389,\n  \"deutsche</w>\": 32760,\n  \"deutschland</w>\": 36878,\n  \"deux</w>\": 47089,\n  \"dev\": 2797,\n  \"dev</w>\": 3670,\n  \"deva</w>\": 45179,\n  \"devan\": 37072,\n  \"devast\": 12913,\n  \"devastated</w>\": 29865,\n  \"devastating</w>\": 19280,\n  \"devastation</w>\": 42452,\n  \"devel\": 1820,\n  \"develop\": 1966,\n  \"develop</w>\": 7708,\n  \"developed</w>\": 8763,\n  \"developer</w>\": 10929,\n  \"developers</w>\": 13248,\n  \"developing</w>\": 8131,\n  \"development</w>\": 2855,\n  \"developmental</w>\": 29347,\n  \"developments</w>\": 17393,\n  \"develops</w>\": 29895,\n  \"deven\": 45537,\n  \"devgn</w>\": 29871,\n  \"devi\": 12926,\n  \"devi</w>\": 20717,\n  \"deviant\": 25593,\n  \"deviantart</w>\": 26046,\n  \"device</w>\": 8163,\n  \"devices</w>\": 9067,\n  \"devil\": 8894,\n  \"devil</w>\": 8043,\n  \"deville</w>\": 34329,\n  \"devils</w>\": 11683,\n  \"devin\": 31193,\n  \"devin</w>\": 20996,\n  \"devine</w>\": 33019,\n  \"devlin</w>\": 48040,\n  \"devo\": 11861,\n  \"devo</w>\": 43444,\n  \"devon\": 16205,\n  \"devon</w>\": 10046,\n  \"devops</w>\": 21504,\n  \"devos</w>\": 40646,\n  \"devote\": 37777,\n  \"devoted</w>\": 24561,\n  \"devotees</w>\": 39759,\n  \"devotion</w>\": 25821,\n  \"devotional</w>\": 35456,\n  \"devs</w>\": 27374,\n  \"dew\": 31952,\n  \"dew</w>\": 16358,\n  \"dewey</w>\": 40399,\n  \"dex\": 10030,\n  \"dex</w>\": 13790,\n  \"dexpo</w>\": 42502,\n  \"dexter\": 45049,\n  \"dexter</w>\": 22781,\n  \"dey</w>\": 11829,\n  \"dez\": 23190,\n  \"dez</w>\": 8122,\n  \"df\": 12908,\n  \"df</w>\": 10468,\n  \"dfc</w>\": 41903,\n  \"dfs</w>\": 32880,\n  \"dfw</w>\": 20439,\n  \"dg\": 2394,\n  \"dg</w>\": 9742,\n  \"dgate</w>\": 41684,\n  \"dge\": 4016,\n  \"dge</w>\": 1360,\n  \"dged</w>\": 11830,\n  \"dgeon</w>\": 45655,\n  \"dgers</w>\": 8733,\n  \"dges</w>\": 5432,\n  \"dging</w>\": 9565,\n  \"dh\": 6669,\n  \"dh</w>\": 9960,\n  \"dha\": 11629,\n  \"dha</w>\": 27377,\n  \"dhabi</w>\": 22349,\n  \"dhaka</w>\": 32877,\n  \"dham\": 29635,\n  \"dham</w>\": 30838,\n  \"dhan\": 12542,\n  \"dhan</w>\": 28569,\n  \"dhanush\": 26162,\n  \"dhanush</w>\": 36200,\n  \"dhanushkraja</w>\": 29266,\n  \"dhar\": 12397,\n  \"dharma</w>\": 30536,\n  \"dhary</w>\": 28706,\n  \"dhawan</w>\": 44699,\n  \"dhe\": 29706,\n  \"dheim</w>\": 44280,\n  \"dhi\": 31553,\n  \"dhi</w>\": 26166,\n  \"dho\": 37834,\n  \"dhoni</w>\": 25698,\n  \"dhru\": 40257,\n  \"dhry</w>\": 39960,\n  \"dhs</w>\": 26849,\n  \"dhu\": 32387,\n  \"di\": 570,\n  \"di</w>\": 1618,\n  \"dia\": 7351,\n  \"dia</w>\": 3357,\n  \"diab\": 15954,\n  \"diabe\": 19167,\n  \"diabete\": 43826,\n  \"diabetes</w>\": 10319,\n  \"diabetic</w>\": 30230,\n  \"diablo</w>\": 23931,\n  \"diag\": 6851,\n  \"diagno\": 7736,\n  \"diagnose</w>\": 44429,\n  \"diagnosed</w>\": 16979,\n  \"diagnosis</w>\": 15715,\n  \"diagnostic</w>\": 26351,\n  \"diagnostics</w>\": 37723,\n  \"diagram</w>\": 22697,\n  \"dial\": 18416,\n  \"dial</w>\": 11381,\n  \"dialo\": 30709,\n  \"dialog</w>\": 48945,\n  \"dialogue</w>\": 11288,\n  \"dialogues</w>\": 40330,\n  \"dialysis</w>\": 44798,\n  \"diam\": 4347,\n  \"diameter</w>\": 27189,\n  \"diamon\": 8873,\n  \"diamond\": 18535,\n  \"diamond</w>\": 6235,\n  \"diamonds</w>\": 12687,\n  \"dian\": 16021,\n  \"dian</w>\": 4998,\n  \"diana</w>\": 12803,\n  \"diane</w>\": 15855,\n  \"dianne</w>\": 42299,\n  \"dians</w>\": 21041,\n  \"diaper</w>\": 34382,\n  \"diapers</w>\": 39659,\n  \"diar\": 25932,\n  \"diaries</w>\": 15541,\n  \"diary</w>\": 10380,\n  \"dias\": 22137,\n  \"dias</w>\": 29354,\n  \"diaspora</w>\": 28390,\n  \"diaz</w>\": 17688,\n  \"dic\": 1404,\n  \"dic</w>\": 6717,\n  \"dicap\": 30023,\n  \"dicaprio</w>\": 30755,\n  \"dice</w>\": 14406,\n  \"dick\": 14413,\n  \"dick</w>\": 9554,\n  \"dickens</w>\": 33421,\n  \"dict\": 45360,\n  \"dict</w>\": 15159,\n  \"dictat\": 26156,\n  \"dictator</w>\": 27399,\n  \"dictatorship</w>\": 37989,\n  \"dictionary</w>\": 19699,\n  \"did\": 1861,\n  \"did</w>\": 1335,\n  \"diddy</w>\": 33527,\n  \"didi</w>\": 34396,\n  \"didier</w>\": 45614,\n  \"didn</w>\": 2376,\n  \"didnt</w>\": 13057,\n  \"dido</w>\": 31725,\n  \"didyou\": 12295,\n  \"didyouknow</w>\": 12506,\n  \"die\": 3150,\n  \"die</w>\": 2082,\n  \"diec\": 27729,\n  \"diecast</w>\": 37936,\n  \"died</w>\": 3622,\n  \"diego\": 30940,\n  \"diego</w>\": 6306,\n  \"diem</w>\": 45571,\n  \"dience</w>\": 33686,\n  \"dient</w>\": 27231,\n  \"dier\": 29702,\n  \"dier</w>\": 16394,\n  \"dies\": 20104,\n  \"dies</w>\": 1862,\n  \"diesel\": 46312,\n  \"diesel</w>\": 10591,\n  \"diest</w>\": 45739,\n  \"diet\": 21295,\n  \"diet</w>\": 6582,\n  \"dietary</w>\": 29009,\n  \"dietrich</w>\": 47005,\n  \"diets</w>\": 35173,\n  \"dif\": 18656,\n  \"dif</w>\": 48731,\n  \"diff\": 44073,\n  \"diff</w>\": 20331,\n  \"diffe\": 1967,\n  \"differ</w>\": 34620,\n  \"differen\": 14903,\n  \"difference</w>\": 4731,\n  \"differences</w>\": 14003,\n  \"different</w>\": 2731,\n  \"differenti\": 21729,\n  \"differential</w>\": 34027,\n  \"differentiate</w>\": 49032,\n  \"differently</w>\": 18325,\n  \"diffic\": 6140,\n  \"difficult</w>\": 7405,\n  \"difficulties</w>\": 23468,\n  \"difficulty</w>\": 25245,\n  \"diffu\": 31603,\n  \"diffuser</w>\": 49400,\n  \"dig\": 1831,\n  \"dig</w>\": 9887,\n  \"dige\": 17820,\n  \"digest</w>\": 20413,\n  \"digestion</w>\": 40533,\n  \"digestive</w>\": 32304,\n  \"digg\": 43240,\n  \"digger</w>\": 35919,\n  \"diggin</w>\": 48466,\n  \"digging</w>\": 14971,\n  \"digi\": 15627,\n  \"digi</w>\": 39361,\n  \"digimon</w>\": 44181,\n  \"digit\": 14899,\n  \"digit</w>\": 27472,\n  \"digital\": 4704,\n  \"digital</w>\": 2794,\n  \"digitalart</w>\": 16987,\n  \"digitalhealth</w>\": 32190,\n  \"digitalindia</w>\": 46630,\n  \"digitally</w>\": 27543,\n  \"digitalmarketing</w>\": 15299,\n  \"digitaltransformation</w>\": 20047,\n  \"digiti\": 25935,\n  \"digits</w>\": 31710,\n  \"digni\": 45532,\n  \"dignit\": 39497,\n  \"dignity</w>\": 17744,\n  \"digo</w>\": 35701,\n  \"digs</w>\": 26877,\n  \"dih</w>\": 43089,\n  \"dii</w>\": 32755,\n  \"dijk</w>\": 44444,\n  \"dik\": 38854,\n  \"dik</w>\": 37747,\n  \"dike</w>\": 42683,\n  \"dil\": 7643,\n  \"dil</w>\": 17942,\n  \"dile\": 25428,\n  \"dilemma</w>\": 29787,\n  \"dilig\": 30664,\n  \"dill\": 12318,\n  \"dill</w>\": 27206,\n  \"dillon</w>\": 21056,\n  \"dilu\": 45242,\n  \"dim\": 19576,\n  \"dim</w>\": 17523,\n  \"dime</w>\": 24443,\n  \"dimen\": 10935,\n  \"dimension</w>\": 20479,\n  \"dimensional</w>\": 25252,\n  \"dimensions</w>\": 25086,\n  \"diment</w>\": 43500,\n  \"dimes</w>\": 44888,\n  \"dimini\": 37459,\n  \"dimit\": 22250,\n  \"dimitri</w>\": 48840,\n  \"dimp\": 38853,\n  \"din\": 1462,\n  \"din</w>\": 5673,\n  \"dina</w>\": 36815,\n  \"dinah</w>\": 30903,\n  \"dine\": 20951,\n  \"dine</w>\": 12989,\n  \"diner</w>\": 16963,\n  \"dinesh</w>\": 48341,\n  \"ding\": 7545,\n  \"ding</w>\": 796,\n  \"dinger</w>\": 45580,\n  \"dingh\": 48064,\n  \"dings</w>\": 5473,\n  \"dington</w>\": 24804,\n  \"dinho</w>\": 47370,\n  \"dini</w>\": 20196,\n  \"dining</w>\": 8658,\n  \"dinner\": 27548,\n  \"dinner</w>\": 2571,\n  \"dinners</w>\": 33570,\n  \"dino\": 9692,\n  \"dino</w>\": 14077,\n  \"dinosa\": 18955,\n  \"dinosaur</w>\": 15095,\n  \"dinosaurs</w>\": 20387,\n  \"dio\": 3779,\n  \"dio</w>\": 1521,\n  \"dioce\": 20763,\n  \"diocese</w>\": 27091,\n  \"dion\": 42899,\n  \"dion</w>\": 16250,\n  \"dior</w>\": 23655,\n  \"dios</w>\": 37563,\n  \"dious</w>\": 27417,\n  \"dioxide</w>\": 38102,\n  \"dip\": 19918,\n  \"dip</w>\": 11343,\n  \"dipl\": 8490,\n  \"diplo</w>\": 38115,\n  \"diplom\": 11169,\n  \"diploma</w>\": 21251,\n  \"diplomacy</w>\": 23798,\n  \"diplomat</w>\": 32828,\n  \"diplomatic</w>\": 23782,\n  \"diplomats</w>\": 44126,\n  \"dipped</w>\": 30610,\n  \"dipper</w>\": 49317,\n  \"dipping</w>\": 33544,\n  \"dips</w>\": 37522,\n  \"dir\": 4251,\n  \"dir</w>\": 8478,\n  \"dire\": 38355,\n  \"dire</w>\": 25664,\n  \"direc\": 1534,\n  \"direct\": 43224,\n  \"direct</w>\": 6016,\n  \"directed</w>\": 8392,\n  \"directing</w>\": 21817,\n  \"direction\": 15923,\n  \"direction</w>\": 5407,\n  \"directional</w>\": 38687,\n  \"directioner</w>\": 48042,\n  \"directioners</w>\": 22055,\n  \"directions</w>\": 16440,\n  \"directive</w>\": 40630,\n  \"directly</w>\": 9701,\n  \"director\": 20337,\n  \"director</w>\": 2681,\n  \"directorial</w>\": 45327,\n  \"directors</w>\": 11940,\n  \"directory</w>\": 25272,\n  \"directs</w>\": 34349,\n  \"directv</w>\": 48652,\n  \"dirk</w>\": 28171,\n  \"dirt\": 31415,\n  \"dirt</w>\": 11795,\n  \"dirty\": 20127,\n  \"dirty</w>\": 7615,\n  \"dis\": 1518,\n  \"dis</w>\": 6112,\n  \"disa\": 3882,\n  \"disab\": 47380,\n  \"disabilities</w>\": 17350,\n  \"disability\": 48986,\n  \"disability</w>\": 13261,\n  \"disabled</w>\": 13613,\n  \"disadvantaged</w>\": 40577,\n  \"disagree</w>\": 23199,\n  \"disapp\": 5384,\n  \"disappear\": 21148,\n  \"disappear</w>\": 25173,\n  \"disappearance</w>\": 35929,\n  \"disappeared</w>\": 23139,\n  \"disappearing</w>\": 35819,\n  \"disappears</w>\": 44406,\n  \"disappo\": 7605,\n  \"disappoint</w>\": 25446,\n  \"disappointed</w>\": 13794,\n  \"disappointing</w>\": 21941,\n  \"disappointment</w>\": 23884,\n  \"disappoints</w>\": 48545,\n  \"disappro\": 48276,\n  \"disar\": 42971,\n  \"disaster</w>\": 9072,\n  \"disasters</w>\": 26976,\n  \"disastrous</w>\": 35790,\n  \"disc\": 1472,\n  \"disc</w>\": 10712,\n  \"discar\": 40532,\n  \"discarded</w>\": 45197,\n  \"discer\": 49140,\n  \"dischar\": 22671,\n  \"discharge</w>\": 32485,\n  \"disci\": 9559,\n  \"discip\": 38951,\n  \"discipl\": 10467,\n  \"disciples</w>\": 39366,\n  \"disciplinary</w>\": 20232,\n  \"discipline</w>\": 18903,\n  \"disciplines</w>\": 42032,\n  \"discla\": 40248,\n  \"disclaimer</w>\": 46465,\n  \"disclo\": 17481,\n  \"disclose</w>\": 46379,\n  \"disclosed</w>\": 30905,\n  \"disclosure</w>\": 26502,\n  \"disco\": 2475,\n  \"disco</w>\": 11964,\n  \"discography</w>\": 47545,\n  \"discomfort</w>\": 48054,\n  \"discord</w>\": 23582,\n  \"discoun\": 18515,\n  \"discount</w>\": 7638,\n  \"discounted</w>\": 20993,\n  \"discounts</w>\": 18186,\n  \"discoura\": 45850,\n  \"discourse</w>\": 29441,\n  \"discover\": 10539,\n  \"discover</w>\": 4834,\n  \"discovered</w>\": 6986,\n  \"discoveries</w>\": 29308,\n  \"discovering</w>\": 17967,\n  \"discovers</w>\": 29719,\n  \"discovery\": 40491,\n  \"discovery</w>\": 8027,\n  \"discre\": 20616,\n  \"discrimin\": 11721,\n  \"discrimination</w>\": 14775,\n  \"discs</w>\": 29270,\n  \"discu\": 1984,\n  \"discus</w>\": 41828,\n  \"discuss</w>\": 4312,\n  \"discussed</w>\": 11300,\n  \"discusses</w>\": 8116,\n  \"discussing</w>\": 5900,\n  \"discussion</w>\": 5060,\n  \"discussions</w>\": 13806,\n  \"dise\": 4262,\n  \"disease</w>\": 5336,\n  \"diseases</w>\": 12035,\n  \"disen\": 46468,\n  \"disgrace</w>\": 29877,\n  \"disgraceful</w>\": 44146,\n  \"disgu\": 9793,\n  \"disguise</w>\": 27803,\n  \"disguised</w>\": 37149,\n  \"disgusted</w>\": 41977,\n  \"disgusting</w>\": 16218,\n  \"dish\": 11039,\n  \"dish</w>\": 4531,\n  \"disha</w>\": 42498,\n  \"dishes</w>\": 11412,\n  \"dishon\": 30777,\n  \"dishu</w>\": 44728,\n  \"dishwasher</w>\": 40524,\n  \"disin\": 19484,\n  \"disinfe\": 48050,\n  \"disintegr\": 49275,\n  \"disk</w>\": 17970,\n  \"dislike</w>\": 30796,\n  \"dism\": 30836,\n  \"dism</w>\": 38821,\n  \"dismant\": 36557,\n  \"dismiss</w>\": 43287,\n  \"dismissal</w>\": 42068,\n  \"dismissed</w>\": 30087,\n  \"dismisses</w>\": 45238,\n  \"disney\": 6729,\n  \"disney</w>\": 4696,\n  \"disneyland\": 39481,\n  \"disneyland</w>\": 13661,\n  \"disneyworld</w>\": 28469,\n  \"diso\": 26305,\n  \"disobe\": 42841,\n  \"dison</w>\": 19310,\n  \"disorder</w>\": 12635,\n  \"disorders</w>\": 17114,\n  \"disp\": 11073,\n  \"dispar\": 24633,\n  \"disparities</w>\": 45122,\n  \"dispat\": 28652,\n  \"dispatch</w>\": 26306,\n  \"dispen\": 19077,\n  \"dispenser</w>\": 40116,\n  \"disper\": 34499,\n  \"displa\": 9326,\n  \"displac\": 17718,\n  \"displaced</w>\": 22817,\n  \"displacement</w>\": 37931,\n  \"display</w>\": 4456,\n  \"displayed</w>\": 18967,\n  \"displaying</w>\": 26468,\n  \"displays</w>\": 15648,\n  \"dispo\": 13651,\n  \"dispon\": 38872,\n  \"disponible</w>\": 46130,\n  \"dispos\": 45177,\n  \"disposable</w>\": 37275,\n  \"disposal</w>\": 28231,\n  \"dispro\": 32927,\n  \"dispropor\": 40354,\n  \"disproportion\": 45492,\n  \"disregard</w>\": 43869,\n  \"disrespect</w>\": 34055,\n  \"disrespectful</w>\": 41723,\n  \"disru\": 13763,\n  \"disrup\": 14641,\n  \"disrupt</w>\": 25214,\n  \"disrupted</w>\": 46674,\n  \"disrupting</w>\": 42419,\n  \"disruption</w>\": 19635,\n  \"disruptive</w>\": 31554,\n  \"diss\": 10766,\n  \"diss</w>\": 35688,\n  \"dissec\": 43879,\n  \"dissemin\": 40463,\n  \"dissent</w>\": 45154,\n  \"disser\": 25560,\n  \"dissertation</w>\": 29448,\n  \"dissi\": 25088,\n  \"dissol\": 27398,\n  \"dissuper</w>\": 33461,\n  \"dist\": 5479,\n  \"dist</w>\": 12116,\n  \"distance</w>\": 7964,\n  \"distances</w>\": 37078,\n  \"distant</w>\": 18949,\n  \"distill\": 41586,\n  \"distilled</w>\": 49179,\n  \"distillery</w>\": 22200,\n  \"distin\": 11892,\n  \"distinct</w>\": 25056,\n  \"distinction</w>\": 28183,\n  \"distinctive</w>\": 25486,\n  \"distingui\": 15053,\n  \"distinguish</w>\": 45418,\n  \"distinguished</w>\": 16513,\n  \"distor\": 23781,\n  \"distortion</w>\": 43690,\n  \"distr\": 11885,\n  \"distract</w>\": 39309,\n  \"distracted</w>\": 24049,\n  \"distraction</w>\": 32039,\n  \"distress</w>\": 26866,\n  \"distressed</w>\": 37515,\n  \"distri\": 5987,\n  \"distribu\": 6138,\n  \"distribute</w>\": 32313,\n  \"distributed</w>\": 16419,\n  \"distributing</w>\": 35216,\n  \"distribution</w>\": 10484,\n  \"distributor</w>\": 28354,\n  \"distributors</w>\": 44240,\n  \"distric\": 3208,\n  \"district\": 46683,\n  \"district</w>\": 3506,\n  \"districts</w>\": 17565,\n  \"distur\": 11732,\n  \"disturb\": 33018,\n  \"disturb</w>\": 39449,\n  \"disturbance</w>\": 42416,\n  \"disturbed</w>\": 29967,\n  \"disturbing</w>\": 21476,\n  \"disupdates</w>\": 45667,\n  \"dit\": 5752,\n  \"dit</w>\": 2524,\n  \"dita</w>\": 47965,\n  \"ditch\": 43715,\n  \"ditch</w>\": 19291,\n  \"dited</w>\": 40392,\n  \"diti\": 2363,\n  \"dition\": 16452,\n  \"dition</w>\": 3015,\n  \"ditional</w>\": 4322,\n  \"ditions</w>\": 4503,\n  \"dito</w>\": 43705,\n  \"dits</w>\": 49374,\n  \"dity</w>\": 16436,\n  \"dium</w>\": 2903,\n  \"div\": 5293,\n  \"div</w>\": 14869,\n  \"diva</w>\": 13605,\n  \"divas</w>\": 23534,\n  \"dive\": 26042,\n  \"dive</w>\": 9058,\n  \"diver\": 13119,\n  \"diver</w>\": 22094,\n  \"divergence</w>\": 48735,\n  \"divergent</w>\": 36132,\n  \"divers\": 30241,\n  \"divers</w>\": 27038,\n  \"diverse</w>\": 11464,\n  \"diversi\": 24475,\n  \"diversion</w>\": 38457,\n  \"diversity\": 35634,\n  \"diversity</w>\": 6257,\n  \"diverted</w>\": 41049,\n  \"dives</w>\": 13893,\n  \"divi\": 8375,\n  \"divid\": 31337,\n  \"divide</w>\": 18842,\n  \"divided</w>\": 18689,\n  \"dividend</w>\": 32067,\n  \"dividends</w>\": 45146,\n  \"dividing</w>\": 45605,\n  \"divin\": 21838,\n  \"divine\": 46919,\n  \"divine</w>\": 10976,\n  \"diving</w>\": 9886,\n  \"divinity</w>\": 39754,\n  \"divisi\": 39196,\n  \"division</w>\": 5378,\n  \"divisional</w>\": 40912,\n  \"divisions</w>\": 33715,\n  \"divor\": 13543,\n  \"divorce</w>\": 17060,\n  \"divorced</w>\": 39437,\n  \"divya</w>\": 47767,\n  \"diwali</w>\": 18218,\n  \"dix\": 45838,\n  \"dix</w>\": 27620,\n  \"dixie</w>\": 24484,\n  \"dixit</w>\": 28279,\n  \"dixon</w>\": 16086,\n  \"diy\": 28472,\n  \"diy</w>\": 7845,\n  \"diya</w>\": 36459,\n  \"diz</w>\": 32740,\n  \"dized</w>\": 36232,\n  \"dizz\": 40239,\n  \"dizzy</w>\": 35464,\n  \"dj\": 3761,\n  \"dj</w>\": 3723,\n  \"djan\": 35338,\n  \"django</w>\": 46498,\n  \"dji\": 35284,\n  \"dji</w>\": 28379,\n  \"djing</w>\": 36113,\n  \"djo\": 19432,\n  \"djoker\": 42721,\n  \"djokernole</w>\": 42830,\n  \"djokovic</w>\": 27944,\n  \"djs</w>\": 18117,\n  \"dk\": 20702,\n  \"dk</w>\": 16196,\n  \"dl\": 12558,\n  \"dl</w>\": 9373,\n  \"dlc</w>\": 19079,\n  \"dle\": 11057,\n  \"dle</w>\": 3287,\n  \"dled</w>\": 23494,\n  \"dler</w>\": 40279,\n  \"dles</w>\": 7890,\n  \"dless</w>\": 14997,\n  \"dley</w>\": 12808,\n  \"dling</w>\": 18221,\n  \"dly</w>\": 3069,\n  \"dm\": 19070,\n  \"dm</w>\": 4667,\n  \"dma</w>\": 42903,\n  \"dman</w>\": 18826,\n  \"dmc</w>\": 28991,\n  \"dmit\": 31607,\n  \"dmitry</w>\": 48326,\n  \"dms</w>\": 19955,\n  \"dmv</w>\": 27508,\n  \"dmx</w>\": 45255,\n  \"dn\": 11552,\n  \"dn</w>\": 7459,\n  \"dna</w>\": 8790,\n  \"dnb</w>\": 35422,\n  \"dnc</w>\": 20237,\n  \"dnd</w>\": 11678,\n  \"dnr</w>\": 37051,\n  \"dns</w>\": 39245,\n  \"dnt</w>\": 26795,\n  \"do\": 639,\n  \"do</w>\": 818,\n  \"doa</w>\": 48332,\n  \"dob\": 29640,\n  \"doba</w>\": 35605,\n  \"dobbs</w>\": 43006,\n  \"dobson</w>\": 46888,\n  \"doc\": 3009,\n  \"doc</w>\": 7251,\n  \"doch</w>\": 25101,\n  \"dock\": 17311,\n  \"dock</w>\": 8997,\n  \"docked</w>\": 46784,\n  \"docker</w>\": 31152,\n  \"docking</w>\": 40845,\n  \"docks</w>\": 24091,\n  \"docs</w>\": 15157,\n  \"doctor\": 7872,\n  \"doctor</w>\": 5547,\n  \"doctoral</w>\": 23649,\n  \"doctorate</w>\": 39134,\n  \"doctors</w>\": 9705,\n  \"doctorwho</w>\": 12996,\n  \"doctr\": 28497,\n  \"doctrine</w>\": 35612,\n  \"docu\": 4433,\n  \"document\": 29293,\n  \"document</w>\": 15121,\n  \"documentaries</w>\": 44209,\n  \"documentary</w>\": 7881,\n  \"documentation</w>\": 31560,\n  \"documented</w>\": 22310,\n  \"documenting</w>\": 37876,\n  \"documents</w>\": 14105,\n  \"dod\": 13847,\n  \"dod</w>\": 30187,\n  \"dodd</w>\": 36748,\n  \"dodge\": 31263,\n  \"dodge</w>\": 12093,\n  \"dodgeball</w>\": 43244,\n  \"dodger</w>\": 31641,\n  \"dodgers</w>\": 12422,\n  \"dodgy</w>\": 37727,\n  \"doe</w>\": 13296,\n  \"does\": 2397,\n  \"does</w>\": 1897,\n  \"doesn</w>\": 2503,\n  \"doesnt</w>\": 17937,\n  \"dof\": 8277,\n  \"doff</w>\": 20193,\n  \"dofficial</w>\": 42516,\n  \"dog\": 4326,\n  \"dog</w>\": 1929,\n  \"dogcelebration</w>\": 41819,\n  \"dogday</w>\": 27475,\n  \"doge</w>\": 42187,\n  \"dogg</w>\": 20749,\n  \"doggie</w>\": 32237,\n  \"doggo</w>\": 42155,\n  \"doggy</w>\": 26359,\n  \"doglo\": 40733,\n  \"dogre\": 40030,\n  \"dogrescue</w>\": 44158,\n  \"dogs\": 42182,\n  \"dogs</w>\": 3255,\n  \"dogsoftwitter</w>\": 19415,\n  \"doh</w>\": 23581,\n  \"doha</w>\": 20908,\n  \"doherty</w>\": 31774,\n  \"doi</w>\": 36361,\n  \"doin</w>\": 15412,\n  \"doing\": 37408,\n  \"doing</w>\": 1960,\n  \"doit\": 32272,\n  \"doit</w>\": 28109,\n  \"doj</w>\": 25700,\n  \"dojo</w>\": 35901,\n  \"dok\": 40547,\n  \"dok</w>\": 41034,\n  \"doka</w>\": 46528,\n  \"dol\": 2287,\n  \"dol</w>\": 19170,\n  \"dola</w>\": 38005,\n  \"dolan</w>\": 27200,\n  \"dolby</w>\": 42414,\n  \"dolce\": 30033,\n  \"dolce</w>\": 30661,\n  \"dole</w>\": 41040,\n  \"doll\": 27031,\n  \"doll</w>\": 9286,\n  \"dollar\": 35092,\n  \"dollar</w>\": 7474,\n  \"dollars</w>\": 10669,\n  \"dolls</w>\": 15090,\n  \"dolly\": 43281,\n  \"dolly</w>\": 23821,\n  \"dolom\": 37137,\n  \"dolores</w>\": 40741,\n  \"dolph\": 8900,\n  \"dolph</w>\": 22257,\n  \"dolphin\": 42963,\n  \"dolphin</w>\": 16464,\n  \"dolphins</w>\": 14002,\n  \"dom\": 2164,\n  \"dom</w>\": 1919,\n  \"domain</w>\": 15492,\n  \"domaine</w>\": 48744,\n  \"domains</w>\": 36358,\n  \"dome\": 8515,\n  \"dome</w>\": 9827,\n  \"domen\": 37584,\n  \"domest\": 21936,\n  \"domestic\": 28189,\n  \"domestic</w>\": 9043,\n  \"domin\": 4361,\n  \"dominance</w>\": 30546,\n  \"dominant</w>\": 20565,\n  \"dominate</w>\": 21431,\n  \"dominated</w>\": 23048,\n  \"dominates</w>\": 34043,\n  \"dominating</w>\": 29303,\n  \"domination</w>\": 30919,\n  \"domingo</w>\": 24882,\n  \"dominic\": 39007,\n  \"dominic</w>\": 19095,\n  \"dominican</w>\": 22934,\n  \"dominion</w>\": 27155,\n  \"domino</w>\": 30752,\n  \"dominos</w>\": 39770,\n  \"domo</w>\": 44293,\n  \"doms</w>\": 30126,\n  \"don\": 1067,\n  \"don</w>\": 847,\n  \"dona</w>\": 26789,\n  \"donal\": 42375,\n  \"donald\": 5990,\n  \"donald</w>\": 4335,\n  \"donaldson</w>\": 37783,\n  \"donaldtrump</w>\": 6652,\n  \"donat\": 36384,\n  \"donate</w>\": 6429,\n  \"donated</w>\": 8705,\n  \"donates</w>\": 26960,\n  \"donating</w>\": 12621,\n  \"donation</w>\": 7924,\n  \"donations</w>\": 9928,\n  \"doncaster\": 38008,\n  \"doncaster</w>\": 25352,\n  \"doncasterisgreat</w>\": 47333,\n  \"done\": 5136,\n  \"done</w>\": 1700,\n  \"donegal</w>\": 24172,\n  \"donesia</w>\": 41281,\n  \"donet\": 33724,\n  \"donetsk</w>\": 33999,\n  \"dong\": 26242,\n  \"dong</w>\": 31478,\n  \"dongha\": 28365,\n  \"donghae</w>\": 28945,\n  \"donia</w>\": 24014,\n  \"donkey</w>\": 21415,\n  \"donkeys</w>\": 44644,\n  \"donna</w>\": 9158,\n  \"donne\": 30897,\n  \"donnein\": 38308,\n  \"donneinarte</w>\": 40193,\n  \"donnell</w>\": 35118,\n  \"donnelly</w>\": 39070,\n  \"donnie\": 47058,\n  \"donnie</w>\": 30609,\n  \"donny\": 37291,\n  \"donny</w>\": 32887,\n  \"dono\": 14840,\n  \"donor</w>\": 18013,\n  \"donors</w>\": 17887,\n  \"donovan</w>\": 21499,\n  \"dons</w>\": 22127,\n  \"dont\": 8094,\n  \"dont</w>\": 4632,\n  \"donut</w>\": 18471,\n  \"donuts</w>\": 13970,\n  \"doo\": 4543,\n  \"doo</w>\": 11643,\n  \"doodle</w>\": 9388,\n  \"doodled</w>\": 41030,\n  \"doodles</w>\": 22156,\n  \"doodling</w>\": 37548,\n  \"dooley</w>\": 47609,\n  \"doom\": 23263,\n  \"doom</w>\": 14344,\n  \"doomed</w>\": 33251,\n  \"doomsday</w>\": 41791,\n  \"doon</w>\": 36612,\n  \"doop</w>\": 33886,\n  \"door\": 7188,\n  \"door</w>\": 2489,\n  \"doors</w>\": 4228,\n  \"doorstep</w>\": 19533,\n  \"doorway</w>\": 46575,\n  \"dop\": 42381,\n  \"dop</w>\": 31722,\n  \"dope\": 42587,\n  \"dope</w>\": 10094,\n  \"doping</w>\": 30285,\n  \"dopp\": 21774,\n  \"doppelg\": 45216,\n  \"doppler</w>\": 42540,\n  \"dor\": 2766,\n  \"dor</w>\": 8695,\n  \"dora</w>\": 18104,\n  \"dorado</w>\": 32350,\n  \"dorchester</w>\": 32656,\n  \"dore</w>\": 39423,\n  \"dores</w>\": 34323,\n  \"dorf</w>\": 17296,\n  \"dori</w>\": 49270,\n  \"doria</w>\": 43186,\n  \"dorian</w>\": 44016,\n  \"doris</w>\": 24285,\n  \"dork</w>\": 36206,\n  \"dorm</w>\": 24263,\n  \"doro\": 15498,\n  \"doro</w>\": 37389,\n  \"dorothy</w>\": 20805,\n  \"dors</w>\": 31240,\n  \"dorset\": 42109,\n  \"dorset</w>\": 16047,\n  \"dorsey</w>\": 41607,\n  \"dortmund</w>\": 24290,\n  \"dory</w>\": 36135,\n  \"dos\": 44258,\n  \"dos</w>\": 5474,\n  \"dose</w>\": 11497,\n  \"doses</w>\": 37873,\n  \"dossier</w>\": 46042,\n  \"dost</w>\": 44222,\n  \"dot\": 7473,\n  \"dot</w>\": 7004,\n  \"dota</w>\": 23085,\n  \"dotcom</w>\": 12443,\n  \"dote</w>\": 31202,\n  \"dothis</w>\": 47864,\n  \"dotnet</w>\": 43124,\n  \"dotorg</w>\": 46587,\n  \"dots</w>\": 19019,\n  \"dotted</w>\": 47950,\n  \"dou\": 1756,\n  \"dou</w>\": 23608,\n  \"doub\": 19631,\n  \"double\": 13013,\n  \"double</w>\": 3200,\n  \"doubled</w>\": 24948,\n  \"doubleheader</w>\": 34668,\n  \"doubles</w>\": 12539,\n  \"doubling</w>\": 36850,\n  \"doubt\": 37071,\n  \"doubt</w>\": 8671,\n  \"doubts</w>\": 30894,\n  \"douche</w>\": 44292,\n  \"doug\": 20271,\n  \"doug</w>\": 10758,\n  \"dough\": 15785,\n  \"dough</w>\": 14983,\n  \"doughnut</w>\": 32555,\n  \"doughnuts</w>\": 31124,\n  \"dougie</w>\": 46317,\n  \"dougla\": 9140,\n  \"douglas</w>\": 10065,\n  \"douglass</w>\": 45692,\n  \"doun</w>\": 44785,\n  \"dov</w>\": 38856,\n  \"dova</w>\": 26551,\n  \"dove\": 27511,\n  \"dove</w>\": 18281,\n  \"dover\": 43019,\n  \"dover</w>\": 14683,\n  \"doves</w>\": 47067,\n  \"dow\": 8022,\n  \"dow</w>\": 10688,\n  \"dowell</w>\": 27344,\n  \"down\": 1833,\n  \"down</w>\": 1136,\n  \"downe</w>\": 46501,\n  \"downed</w>\": 35814,\n  \"downer</w>\": 42522,\n  \"downers</w>\": 43739,\n  \"downey</w>\": 29429,\n  \"downfall</w>\": 48702,\n  \"downhill</w>\": 27387,\n  \"downing</w>\": 28140,\n  \"download\": 35076,\n  \"download</w>\": 3794,\n  \"downloadable</w>\": 49105,\n  \"downloaded</w>\": 22961,\n  \"downloading</w>\": 30519,\n  \"downloads</w>\": 26481,\n  \"downpour</w>\": 39034,\n  \"downpours</w>\": 40160,\n  \"downs</w>\": 10706,\n  \"downside</w>\": 41937,\n  \"downstairs</w>\": 28174,\n  \"downstream</w>\": 43822,\n  \"downtime</w>\": 41964,\n  \"downton\": 45023,\n  \"downton</w>\": 42668,\n  \"downtown\": 18230,\n  \"downtown</w>\": 5061,\n  \"downward</w>\": 37430,\n  \"dowski</w>\": 43556,\n  \"dox\": 44786,\n  \"dox</w>\": 14510,\n  \"doyle</w>\": 17728,\n  \"doyou\": 27256,\n  \"doz</w>\": 31106,\n  \"dozen</w>\": 16401,\n  \"dozens</w>\": 17883,\n  \"dp\": 23820,\n  \"dp</w>\": 6465,\n  \"dprint</w>\": 46644,\n  \"dprinting</w>\": 16194,\n  \"dprk</w>\": 47920,\n  \"dps</w>\": 34288,\n  \"dq</w>\": 28741,\n  \"dr\": 1084,\n  \"dr</w>\": 1701,\n  \"dra\": 1114,\n  \"dra</w>\": 7402,\n  \"drac\": 20168,\n  \"dracing</w>\": 41253,\n  \"dracula</w>\": 25405,\n  \"draf\": 37426,\n  \"draft\": 30624,\n  \"draft</w>\": 5198,\n  \"drafted</w>\": 19129,\n  \"drafting</w>\": 33528,\n  \"drafts</w>\": 29194,\n  \"drag\": 8452,\n  \"drag</w>\": 12463,\n  \"dragged</w>\": 27884,\n  \"dragging</w>\": 37069,\n  \"dragon\": 9187,\n  \"dragon</w>\": 5471,\n  \"dragonball\": 40959,\n  \"dragoncon</w>\": 47802,\n  \"dragonfly</w>\": 32824,\n  \"dragons</w>\": 10203,\n  \"dragrace</w>\": 40762,\n  \"drags</w>\": 45368,\n  \"drain\": 23347,\n  \"drain</w>\": 19467,\n  \"drainage</w>\": 25953,\n  \"drained</w>\": 44630,\n  \"drains</w>\": 43638,\n  \"drainthe\": 47337,\n  \"drake\": 32504,\n  \"drake</w>\": 8958,\n  \"dral</w>\": 7503,\n  \"dram\": 6937,\n  \"dram</w>\": 32170,\n  \"drama</w>\": 5055,\n  \"dramas</w>\": 33467,\n  \"dramati\": 43512,\n  \"dramatic</w>\": 11240,\n  \"dramatically</w>\": 24495,\n  \"drank</w>\": 21712,\n  \"draped</w>\": 49113,\n  \"drastic</w>\": 43159,\n  \"drastically</w>\": 35478,\n  \"drau\": 18621,\n  \"draw\": 17675,\n  \"draw</w>\": 4001,\n  \"drawer</w>\": 23219,\n  \"drawers</w>\": 38975,\n  \"drawing\": 36996,\n  \"drawing</w>\": 3610,\n  \"drawings</w>\": 13397,\n  \"drawn</w>\": 8893,\n  \"draws</w>\": 12043,\n  \"dray\": 25562,\n  \"drayton</w>\": 49044,\n  \"drc</w>\": 21434,\n  \"dre\": 960,\n  \"dre</w>\": 14584,\n  \"dread\": 17412,\n  \"dread</w>\": 31403,\n  \"dreaded</w>\": 47227,\n  \"dreadful</w>\": 35846,\n  \"dreality</w>\": 48367,\n  \"dream\": 4595,\n  \"dream</w>\": 2984,\n  \"dreambig</w>\": 46495,\n  \"dreamcast</w>\": 47226,\n  \"dreamed</w>\": 27984,\n  \"dreamer</w>\": 25692,\n  \"dreamers</w>\": 27194,\n  \"dreaming</w>\": 11662,\n  \"dreamliner</w>\": 49143,\n  \"dreams</w>\": 4405,\n  \"dreamt</w>\": 43743,\n  \"dreamteam</w>\": 40090,\n  \"dreamy</w>\": 23517,\n  \"dred</w>\": 10903,\n  \"dredge</w>\": 48783,\n  \"dren\": 29068,\n  \"dren</w>\": 47309,\n  \"drenched</w>\": 46378,\n  \"dres\": 48852,\n  \"dres</w>\": 44697,\n  \"dresden</w>\": 34836,\n  \"dress\": 12622,\n  \"dress</w>\": 2595,\n  \"dressage</w>\": 36144,\n  \"dressed</w>\": 6559,\n  \"dresser</w>\": 26346,\n  \"dresses</w>\": 8184,\n  \"dressing</w>\": 6348,\n  \"drew\": 18792,\n  \"drew</w>\": 5281,\n  \"drex\": 33985,\n  \"drey\": 48271,\n  \"dri\": 1203,\n  \"dri</w>\": 28833,\n  \"drian</w>\": 36870,\n  \"dribb\": 42153,\n  \"dric</w>\": 23448,\n  \"dridge</w>\": 22956,\n  \"drie</w>\": 40170,\n  \"dried</w>\": 16037,\n  \"drier</w>\": 39877,\n  \"dries</w>\": 33857,\n  \"drif\": 33585,\n  \"drift</w>\": 18194,\n  \"drifting</w>\": 30276,\n  \"drill</w>\": 11626,\n  \"drilled</w>\": 46338,\n  \"drilling</w>\": 18634,\n  \"drills</w>\": 24378,\n  \"drin\": 3375,\n  \"drin</w>\": 47133,\n  \"drink\": 14131,\n  \"drink</w>\": 3979,\n  \"drinking</w>\": 5778,\n  \"drinklocal</w>\": 45998,\n  \"drinks</w>\": 6732,\n  \"drip</w>\": 24050,\n  \"dripping</w>\": 38787,\n  \"dris</w>\": 35804,\n  \"drive\": 11402,\n  \"drive</w>\": 2620,\n  \"driven</w>\": 9314,\n  \"driver\": 27563,\n  \"driver</w>\": 4383,\n  \"driverless</w>\": 46769,\n  \"drivers</w>\": 7384,\n  \"drives</w>\": 11441,\n  \"driveway</w>\": 26273,\n  \"driving\": 37800,\n  \"driving</w>\": 4161,\n  \"drizzle</w>\": 28240,\n  \"drm</w>\": 39674,\n  \"dro\": 1494,\n  \"dro</w>\": 12442,\n  \"drogba</w>\": 49199,\n  \"droid</w>\": 38016,\n  \"drome</w>\": 9157,\n  \"dron\": 43898,\n  \"dron</w>\": 23360,\n  \"drone\": 33557,\n  \"drone</w>\": 9397,\n  \"drones</w>\": 14006,\n  \"droo\": 30715,\n  \"drool</w>\": 41554,\n  \"drooling</w>\": 44360,\n  \"drop\": 16407,\n  \"drop</w>\": 3387,\n  \"dropbox</w>\": 47216,\n  \"dropped</w>\": 6792,\n  \"dropping</w>\": 8339,\n  \"drops</w>\": 6437,\n  \"dros</w>\": 47033,\n  \"drou\": 38558,\n  \"drought</w>\": 13935,\n  \"drove</w>\": 13753,\n  \"drow\": 21159,\n  \"drown</w>\": 28571,\n  \"drowned</w>\": 34005,\n  \"drowning</w>\": 24618,\n  \"drs</w>\": 21257,\n  \"dru\": 2275,\n  \"dru</w>\": 49048,\n  \"drug\": 20601,\n  \"drug</w>\": 5600,\n  \"drugs</w>\": 8021,\n  \"druid</w>\": 40297,\n  \"drum\": 13353,\n  \"drum</w>\": 8698,\n  \"drummer</w>\": 13618,\n  \"drummers</w>\": 46191,\n  \"drumming</w>\": 35480,\n  \"drummond</w>\": 42213,\n  \"drums</w>\": 11690,\n  \"drun\": 15488,\n  \"drunk\": 37398,\n  \"drunk</w>\": 8232,\n  \"drunken</w>\": 28196,\n  \"drupal</w>\": 46481,\n  \"drush</w>\": 43009,\n  \"drwho</w>\": 48342,\n  \"dry\": 13544,\n  \"dry</w>\": 4501,\n  \"dryer</w>\": 24425,\n  \"drying</w>\": 23203,\n  \"ds\": 3361,\n  \"ds</w>\": 646,\n  \"dsa</w>\": 47607,\n  \"dsb\": 47168,\n  \"dsb</w>\": 14257,\n  \"dsburg</w>\": 47237,\n  \"dsc</w>\": 37240,\n  \"dsd</w>\": 45383,\n  \"dsley</w>\": 40740,\n  \"dslr</w>\": 33740,\n  \"dsm</w>\": 39502,\n  \"dson</w>\": 40310,\n  \"dsp</w>\": 45291,\n  \"dss</w>\": 41580,\n  \"dstv</w>\": 35027,\n  \"dt\": 13104,\n  \"dt</w>\": 7427,\n  \"dthe\": 13863,\n  \"dtla</w>\": 31885,\n  \"dtm</w>\": 42407,\n  \"dts</w>\": 46233,\n  \"du\": 691,\n  \"du</w>\": 3686,\n  \"dua</w>\": 25244,\n  \"dual\": 39739,\n  \"dual</w>\": 5347,\n  \"duane</w>\": 38946,\n  \"dub\": 14526,\n  \"dub</w>\": 13144,\n  \"duba\": 5485,\n  \"dubai\": 32599,\n  \"dubai</w>\": 5985,\n  \"dubbed</w>\": 27740,\n  \"dublin\": 20707,\n  \"dublin</w>\": 6145,\n  \"dubnation</w>\": 47329,\n  \"dubois</w>\": 48046,\n  \"dubrov\": 46709,\n  \"dubrovnik</w>\": 48724,\n  \"dubs</w>\": 27013,\n  \"dubstep</w>\": 38303,\n  \"dubu\": 43257,\n  \"duc\": 979,\n  \"duc</w>\": 36446,\n  \"ducati</w>\": 28570,\n  \"ducation</w>\": 17197,\n  \"duce</w>\": 3660,\n  \"duchess</w>\": 21713,\n  \"duck\": 12708,\n  \"duck</w>\": 6910,\n  \"ducks</w>\": 11202,\n  \"duct</w>\": 26829,\n  \"dude\": 48087,\n  \"dude</w>\": 5710,\n  \"dudes</w>\": 14449,\n  \"dudley</w>\": 27324,\n  \"due</w>\": 2887,\n  \"duel</w>\": 27143,\n  \"dues</w>\": 37646,\n  \"duet</w>\": 25457,\n  \"duf\": 38713,\n  \"duff\": 38071,\n  \"duff</w>\": 21934,\n  \"duffy</w>\": 23599,\n  \"dug\": 22743,\n  \"dug</w>\": 21000,\n  \"dugg\": 40523,\n  \"duggan</w>\": 46169,\n  \"dugout</w>\": 36831,\n  \"duh</w>\": 26716,\n  \"dui</w>\": 29693,\n  \"duk</w>\": 14160,\n  \"duke\": 18402,\n  \"duke</w>\": 7732,\n  \"dukes</w>\": 27914,\n  \"dul\": 6738,\n  \"dulce</w>\": 44872,\n  \"dulil\": 32565,\n  \"dulkar</w>\": 47980,\n  \"dull</w>\": 19433,\n  \"dulu\": 28865,\n  \"duluth</w>\": 32109,\n  \"dulwich</w>\": 47343,\n  \"dum\": 13400,\n  \"dum</w>\": 11564,\n  \"dumb\": 15901,\n  \"dumb</w>\": 12464,\n  \"dumbass</w>\": 38980,\n  \"dummies</w>\": 40899,\n  \"dummy</w>\": 34246,\n  \"dump\": 12655,\n  \"dump</w>\": 17146,\n  \"dumped</w>\": 23768,\n  \"dumping</w>\": 31707,\n  \"dumplings</w>\": 35495,\n  \"dumps</w>\": 45804,\n  \"dumpster</w>\": 45467,\n  \"dun\": 2616,\n  \"dun</w>\": 18284,\n  \"dunbar</w>\": 41453,\n  \"duncan\": 31084,\n  \"duncan</w>\": 13502,\n  \"dundal\": 38185,\n  \"dundas</w>\": 39300,\n  \"dundee</w>\": 18619,\n  \"dune\": 32833,\n  \"dune</w>\": 28208,\n  \"dunedin</w>\": 40121,\n  \"dunes</w>\": 23526,\n  \"dung</w>\": 33712,\n  \"dungeon\": 28812,\n  \"dungeon</w>\": 22931,\n  \"dungeons</w>\": 42572,\n  \"dungeonsand\": 34970,\n  \"dungeonsanddragons</w>\": 35497,\n  \"dunham</w>\": 42501,\n  \"duni</w>\": 43454,\n  \"dunk</w>\": 17222,\n  \"dunkin\": 48022,\n  \"dunkin</w>\": 36415,\n  \"dunkirk</w>\": 46928,\n  \"dunks</w>\": 48977,\n  \"dunlop</w>\": 34753,\n  \"dunn</w>\": 19185,\n  \"dunne</w>\": 38538,\n  \"dunno</w>\": 24502,\n  \"duo</w>\": 8696,\n  \"dup\": 36805,\n  \"dup</w>\": 10445,\n  \"duper</w>\": 44850,\n  \"duplex</w>\": 41186,\n  \"duplic\": 28992,\n  \"dupont</w>\": 35994,\n  \"dur\": 4355,\n  \"dur</w>\": 23230,\n  \"dura\": 28173,\n  \"dura</w>\": 47382,\n  \"durability</w>\": 43671,\n  \"durable</w>\": 22285,\n  \"duran</w>\": 28185,\n  \"durango</w>\": 44443,\n  \"durant</w>\": 24861,\n  \"duras</w>\": 27518,\n  \"duration</w>\": 31663,\n  \"durban</w>\": 24474,\n  \"dure</w>\": 19108,\n  \"durga</w>\": 38456,\n  \"durham\": 26765,\n  \"durham</w>\": 14335,\n  \"during</w>\": 1590,\n  \"dus</w>\": 9931,\n  \"dusa</w>\": 28546,\n  \"dusk</w>\": 19708,\n  \"dust\": 29723,\n  \"dust</w>\": 8349,\n  \"dusted</w>\": 38274,\n  \"duster</w>\": 46280,\n  \"dustin\": 42423,\n  \"dustin</w>\": 21235,\n  \"dusting</w>\": 41756,\n  \"dusty</w>\": 22029,\n  \"dut\": 32625,\n  \"dutch\": 22277,\n  \"dutch</w>\": 7991,\n  \"duter\": 21624,\n  \"duterte</w>\": 22371,\n  \"duties</w>\": 19603,\n  \"dutt</w>\": 30081,\n  \"dutton</w>\": 42771,\n  \"duty</w>\": 6458,\n  \"duval</w>\": 42459,\n  \"duvet</w>\": 48006,\n  \"dux</w>\": 28562,\n  \"dv\": 4288,\n  \"dv</w>\": 26265,\n  \"dvd</w>\": 7170,\n  \"dvds</w>\": 36655,\n  \"dvn</w>\": 29811,\n  \"dvr</w>\": 29210,\n  \"dw\": 8455,\n  \"dw</w>\": 19997,\n  \"dwar\": 13487,\n  \"dwarf</w>\": 22643,\n  \"dwayne</w>\": 31395,\n  \"dwell\": 27549,\n  \"dwell</w>\": 18755,\n  \"dwelling</w>\": 37098,\n  \"dwight</w>\": 22473,\n  \"dwp</w>\": 46976,\n  \"dwts</w>\": 30220,\n  \"dwyer</w>\": 43878,\n  \"dx\": 22717,\n  \"dx</w>\": 15679,\n  \"dy\": 1444,\n  \"dy</w>\": 907,\n  \"dyce</w>\": 48325,\n  \"dye\": 37159,\n  \"dye</w>\": 15997,\n  \"dyed</w>\": 24906,\n  \"dyer</w>\": 29495,\n  \"dyes</w>\": 39874,\n  \"dying</w>\": 5115,\n  \"dyk</w>\": 12142,\n  \"dyke</w>\": 32632,\n  \"dylan\": 21004,\n  \"dylan</w>\": 9900,\n  \"dyn\": 44289,\n  \"dyn</w>\": 30669,\n  \"dynam\": 5735,\n  \"dynamic</w>\": 10057,\n  \"dynamics</w>\": 14329,\n  \"dynamite</w>\": 29003,\n  \"dynamo</w>\": 28281,\n  \"dynasty</w>\": 14593,\n  \"dyne</w>\": 42756,\n  \"dyou\": 11484,\n  \"dyour\": 22525,\n  \"dys\": 11022,\n  \"dys</w>\": 38384,\n  \"dysfunction</w>\": 36865,\n  \"dysfunctional</w>\": 40757,\n  \"dysle\": 33681,\n  \"dyslexia</w>\": 43199,\n  \"dyson</w>\": 34475,\n  \"dyssey</w>\": 17435,\n  \"dystop\": 28276,\n  \"dystopian</w>\": 38915,\n  \"dz\": 24421,\n  \"dz</w>\": 22913,\n  \"dÃ©\": 25466,\n  \"dÃ¼\": 46948,\n  \"dÃŃ\": 46988,\n  \"e\": 68,\n  \"e</w>\": 324,\n  \"ea\": 2150,\n  \"ea</w>\": 8100,\n  \"eable</w>\": 20693,\n  \"each\": 31442,\n  \"each</w>\": 2416,\n  \"eachother</w>\": 40792,\n  \"ead\": 42556,\n  \"ead</w>\": 45523,\n  \"eae</w>\": 27446,\n  \"eag\": 3743,\n  \"eager</w>\": 21551,\n  \"eagerly</w>\": 30094,\n  \"eagle\": 20207,\n  \"eagle</w>\": 7517,\n  \"eagles</w>\": 6920,\n  \"eal\": 48872,\n  \"ealing</w>\": 40484,\n  \"eames</w>\": 49072,\n  \"eamon\": 45954,\n  \"ean</w>\": 13327,\n  \"ear\": 1055,\n  \"ear</w>\": 8373,\n  \"earbuds</w>\": 47807,\n  \"eared</w>\": 9127,\n  \"earl\": 30573,\n  \"earl</w>\": 14235,\n  \"earle</w>\": 40292,\n  \"earlier</w>\": 4297,\n  \"earliest</w>\": 22097,\n  \"early\": 15840,\n  \"early</w>\": 2090,\n  \"earn\": 33977,\n  \"earn</w>\": 8465,\n  \"earned</w>\": 8898,\n  \"earnest</w>\": 45422,\n  \"earning</w>\": 14550,\n  \"earnings</w>\": 15912,\n  \"earns</w>\": 16760,\n  \"earp</w>\": 35296,\n  \"earphones</w>\": 44905,\n  \"earring</w>\": 28664,\n  \"earrings</w>\": 9136,\n  \"ears</w>\": 9861,\n  \"eart\": 7086,\n  \"earth\": 5184,\n  \"earth</w>\": 3475,\n  \"earthand\": 34229,\n  \"earthandclouds</w>\": 34480,\n  \"earthday</w>\": 19481,\n  \"earthquake</w>\": 10060,\n  \"earthquakes</w>\": 32895,\n  \"earthy</w>\": 47139,\n  \"earts</w>\": 38824,\n  \"eas\": 5740,\n  \"ease</w>\": 13574,\n  \"easier</w>\": 8817,\n  \"easiest</w>\": 26314,\n  \"easily</w>\": 8197,\n  \"easing</w>\": 44825,\n  \"easport\": 42251,\n  \"east\": 5022,\n  \"east</w>\": 2602,\n  \"eastbound</w>\": 28827,\n  \"eastbourne</w>\": 38455,\n  \"eastenders</w>\": 23545,\n  \"easter\": 14783,\n  \"easter</w>\": 4811,\n  \"eastern\": 34522,\n  \"eastern</w>\": 6311,\n  \"eastman</w>\": 48280,\n  \"easton</w>\": 29619,\n  \"eastside</w>\": 42650,\n  \"eastwood</w>\": 28270,\n  \"easy\": 18308,\n  \"easy</w>\": 3176,\n  \"eat\": 5418,\n  \"eat</w>\": 3384,\n  \"eaten</w>\": 16750,\n  \"eater</w>\": 24060,\n  \"eaters</w>\": 37645,\n  \"eatery</w>\": 46559,\n  \"eating</w>\": 4371,\n  \"eatlocal</w>\": 42868,\n  \"eaton</w>\": 28462,\n  \"eats</w>\": 13188,\n  \"eau</w>\": 17608,\n  \"eazy</w>\": 36536,\n  \"eb\": 12283,\n  \"eb</w>\": 8677,\n  \"eba</w>\": 40889,\n  \"ebay\": 34412,\n  \"ebay</w>\": 4099,\n  \"eber\": 34020,\n  \"ebo</w>\": 46635,\n  \"ebola</w>\": 15864,\n  \"ebon\": 22013,\n  \"ebony</w>\": 30651,\n  \"ebook</w>\": 13122,\n  \"ebooks</w>\": 25774,\n  \"ec\": 747,\n  \"ec</w>\": 10879,\n  \"eca</w>\": 18465,\n  \"ecar\": 34500,\n  \"ecb</w>\": 26205,\n  \"ecc</w>\": 33128,\n  \"eccc</w>\": 47401,\n  \"eccentric</w>\": 43228,\n  \"eccle\": 27494,\n  \"ece</w>\": 2163,\n  \"eces</w>\": 5905,\n  \"ecg</w>\": 45983,\n  \"ech\": 15797,\n  \"ech</w>\": 31147,\n  \"echel\": 41233,\n  \"echo\": 17366,\n  \"echo</w>\": 13989,\n  \"echoes</w>\": 32564,\n  \"eci\": 31936,\n  \"eck\": 25866,\n  \"eck</w>\": 15969,\n  \"ecker\": 39661,\n  \"ecker</w>\": 40890,\n  \"ecla\": 47806,\n  \"eclec\": 25114,\n  \"eclectic</w>\": 28382,\n  \"eclip\": 30841,\n  \"eclipse</w>\": 11505,\n  \"eclub</w>\": 38983,\n  \"eco\": 5106,\n  \"eco</w>\": 10077,\n  \"ecofriendly</w>\": 43412,\n  \"ecol\": 22706,\n  \"ecological</w>\": 25127,\n  \"ecology</w>\": 18578,\n  \"ecommerce</w>\": 15529,\n  \"econ\": 26755,\n  \"econ</w>\": 21158,\n  \"econom\": 2768,\n  \"economic\": 36649,\n  \"economic</w>\": 5259,\n  \"economical</w>\": 48782,\n  \"economically</w>\": 39406,\n  \"economics</w>\": 12625,\n  \"economies</w>\": 27136,\n  \"economist</w>\": 18836,\n  \"economists</w>\": 43701,\n  \"economy</w>\": 5644,\n  \"ecor\": 28962,\n  \"ecosystem</w>\": 15788,\n  \"ecosystems</w>\": 28725,\n  \"ecoun\": 27924,\n  \"ecr</w>\": 48572,\n  \"ecraft</w>\": 11439,\n  \"ecs</w>\": 23485,\n  \"ecstasy</w>\": 47286,\n  \"ecstatic</w>\": 36244,\n  \"ect</w>\": 25168,\n  \"ecu\": 13087,\n  \"ecu</w>\": 32919,\n  \"ecuador</w>\": 19813,\n  \"ecz\": 43530,\n  \"ed\": 843,\n  \"ed</w>\": 538,\n  \"eda</w>\": 10804,\n  \"edad</w>\": 44724,\n  \"eday\": 39258,\n  \"edc</w>\": 21245,\n  \"edchat</w>\": 14702,\n  \"edd</w>\": 35431,\n  \"eddi\": 42930,\n  \"eddie\": 22748,\n  \"eddie</w>\": 9517,\n  \"eddy</w>\": 25959,\n  \"ede\": 29632,\n  \"eded</w>\": 19555,\n  \"edel\": 20460,\n  \"edelman</w>\": 48139,\n  \"eden\": 23621,\n  \"eden</w>\": 13741,\n  \"eder</w>\": 16249,\n  \"edes</w>\": 36247,\n  \"edfringe</w>\": 27402,\n  \"edg\": 35955,\n  \"edgar\": 33543,\n  \"edgar</w>\": 17914,\n  \"edge\": 16914,\n  \"edge</w>\": 5461,\n  \"edged</w>\": 39188,\n  \"edges</w>\": 20938,\n  \"edgy</w>\": 35393,\n  \"edi\": 8750,\n  \"edi</w>\": 27148,\n  \"edible</w>\": 19795,\n  \"edic\": 25184,\n  \"edics</w>\": 30641,\n  \"edin\": 6524,\n  \"edinburgh\": 27574,\n  \"edinburgh</w>\": 8068,\n  \"eding</w>\": 5742,\n  \"edison</w>\": 25846,\n  \"edit\": 8239,\n  \"edit</w>\": 8013,\n  \"edited</w>\": 13945,\n  \"edith</w>\": 28597,\n  \"editing</w>\": 10178,\n  \"edition</w>\": 3062,\n  \"editions</w>\": 21664,\n  \"editor</w>\": 7661,\n  \"editorial</w>\": 12325,\n  \"editors</w>\": 19486,\n  \"edits</w>\": 24945,\n  \"edm\": 37843,\n  \"edm</w>\": 13539,\n  \"edmon\": 11275,\n  \"edmond</w>\": 41581,\n  \"edmonds</w>\": 46520,\n  \"edmonton\": 37311,\n  \"edmonton</w>\": 15058,\n  \"edmun\": 36561,\n  \"edmund</w>\": 27567,\n  \"edna</w>\": 39002,\n  \"edo\": 29145,\n  \"edo</w>\": 18096,\n  \"edon</w>\": 41467,\n  \"edor\": 30184,\n  \"edou\": 47678,\n  \"edp</w>\": 46066,\n  \"eds</w>\": 1941,\n  \"edsheeran</w>\": 30386,\n  \"edt</w>\": 15071,\n  \"edtech\": 41825,\n  \"edtech</w>\": 15262,\n  \"edu\": 11757,\n  \"edu</w>\": 11799,\n  \"eduardo</w>\": 30604,\n  \"educ\": 2200,\n  \"educate</w>\": 17563,\n  \"educated</w>\": 21447,\n  \"education\": 22358,\n  \"education</w>\": 2806,\n  \"educational</w>\": 10400,\n  \"educator</w>\": 19875,\n  \"educators</w>\": 15420,\n  \"edwar\": 27586,\n  \"edward\": 26184,\n  \"edward</w>\": 7450,\n  \"edwards</w>\": 12627,\n  \"edwin\": 48718,\n  \"edwin</w>\": 22471,\n  \"edy\": 17072,\n  \"edy</w>\": 4144,\n  \"ee\": 2644,\n  \"ee</w>\": 4708,\n  \"eed</w>\": 17513,\n  \"eee\": 24632,\n  \"eee</w>\": 9361,\n  \"eeee\": 11696,\n  \"eeee</w>\": 17570,\n  \"eeeee</w>\": 26938,\n  \"eeeeee</w>\": 41407,\n  \"eek</w>\": 46591,\n  \"eel</w>\": 27462,\n  \"eels</w>\": 44416,\n  \"eem</w>\": 27236,\n  \"een\": 47490,\n  \"een</w>\": 21230,\n  \"eer\": 35409,\n  \"eer</w>\": 31846,\n  \"eera</w>\": 36664,\n  \"eerie</w>\": 33846,\n  \"ees</w>\": 40308,\n  \"eet</w>\": 48935,\n  \"eez</w>\": 39033,\n  \"ef\": 1490,\n  \"ef</w>\": 1829,\n  \"efa</w>\": 16999,\n  \"eface</w>\": 48804,\n  \"efan\": 33556,\n  \"efc</w>\": 22065,\n  \"efcc</w>\": 46087,\n  \"efer</w>\": 26199,\n  \"eff\": 20548,\n  \"eff</w>\": 21715,\n  \"effe\": 2808,\n  \"effec\": 3943,\n  \"effect</w>\": 5436,\n  \"effective</w>\": 6837,\n  \"effectively</w>\": 17516,\n  \"effectiveness</w>\": 26847,\n  \"effects</w>\": 7331,\n  \"effic\": 36004,\n  \"efficacy</w>\": 39937,\n  \"effici\": 6670,\n  \"efficiency</w>\": 11823,\n  \"efficient</w>\": 11334,\n  \"efficiently</w>\": 32915,\n  \"effor\": 6356,\n  \"effort\": 40078,\n  \"effort</w>\": 6255,\n  \"effortless</w>\": 41639,\n  \"effortlessly</w>\": 42320,\n  \"efforts</w>\": 6847,\n  \"efish</w>\": 35813,\n  \"efl</w>\": 27172,\n  \"efron</w>\": 48111,\n  \"efs</w>\": 7389,\n  \"eg\": 8053,\n  \"eg</w>\": 14599,\n  \"ega</w>\": 41193,\n  \"egan</w>\": 42943,\n  \"eger\": 46704,\n  \"eger</w>\": 22767,\n  \"egg\": 13778,\n  \"egg</w>\": 5911,\n  \"eggplant</w>\": 34906,\n  \"eggs</w>\": 7099,\n  \"ego\": 34712,\n  \"ego</w>\": 14250,\n  \"egos</w>\": 43992,\n  \"egre\": 27044,\n  \"egret</w>\": 42002,\n  \"egy\": 5224,\n  \"egyp\": 10250,\n  \"egypt</w>\": 7267,\n  \"egyptian</w>\": 12428,\n  \"eh\": 9277,\n  \"eh</w>\": 9135,\n  \"eha</w>\": 48563,\n  \"ehealth</w>\": 48617,\n  \"ehr\": 45271,\n  \"ehs</w>\": 44648,\n  \"ei\": 4006,\n  \"ei</w>\": 18264,\n  \"eic\": 40251,\n  \"eid\": 28038,\n  \"eid</w>\": 13979,\n  \"eidmubarak</w>\": 46275,\n  \"eiffel</w>\": 29720,\n  \"eigh\": 13468,\n  \"eight</w>\": 7910,\n  \"eighteen</w>\": 49316,\n  \"eighth</w>\": 21237,\n  \"eighty</w>\": 47449,\n  \"eil\": 29457,\n  \"eileen</w>\": 31468,\n  \"ein\": 29944,\n  \"ein</w>\": 24524,\n  \"eindhoven</w>\": 47172,\n  \"eing</w>\": 7702,\n  \"einstein</w>\": 20587,\n  \"eira</w>\": 47708,\n  \"eis\": 13802,\n  \"eisen\": 25273,\n  \"eisenhower</w>\": 35562,\n  \"either</w>\": 6036,\n  \"ej\": 19887,\n  \"ej</w>\": 25009,\n  \"ejec\": 29771,\n  \"ek\": 4212,\n  \"ek</w>\": 2092,\n  \"el\": 544,\n  \"el</w>\": 832,\n  \"ela\": 11284,\n  \"ela</w>\": 3787,\n  \"elab</w>\": 38866,\n  \"elabor\": 26034,\n  \"elaborate</w>\": 33855,\n  \"elaine</w>\": 22523,\n  \"elan\": 17763,\n  \"elan</w>\": 18399,\n  \"eland\": 24930,\n  \"eland</w>\": 6275,\n  \"elas</w>\": 41078,\n  \"elast\": 27479,\n  \"elastic</w>\": 30282,\n  \"elba</w>\": 48598,\n  \"elbow</w>\": 21965,\n  \"eld</w>\": 5684,\n  \"elder\": 11791,\n  \"elder</w>\": 14416,\n  \"elderly</w>\": 15455,\n  \"elders</w>\": 28617,\n  \"eldest</w>\": 33503,\n  \"elding</w>\": 28223,\n  \"elds</w>\": 13466,\n  \"ele\": 2084,\n  \"ele</w>\": 9766,\n  \"eleague</w>\": 36577,\n  \"eleanor</w>\": 18604,\n  \"elearning</w>\": 29969,\n  \"elec\": 1564,\n  \"elec</w>\": 38768,\n  \"elect</w>\": 15336,\n  \"elected</w>\": 8828,\n  \"election\": 19312,\n  \"election</w>\": 4247,\n  \"electionday</w>\": 40540,\n  \"elections</w>\": 6949,\n  \"elector\": 16465,\n  \"electoral</w>\": 19544,\n  \"electr\": 3654,\n  \"electra</w>\": 48959,\n  \"electri\": 23927,\n  \"electric\": 19547,\n  \"electric</w>\": 5031,\n  \"electrical</w>\": 12176,\n  \"electrician</w>\": 46422,\n  \"electricity</w>\": 10950,\n  \"electrifying</w>\": 48843,\n  \"electro\": 11648,\n  \"electro</w>\": 23244,\n  \"electromagnetic</w>\": 46530,\n  \"electron</w>\": 33396,\n  \"electronic\": 33865,\n  \"electronic</w>\": 9273,\n  \"electronica</w>\": 43119,\n  \"electronics</w>\": 13081,\n  \"eled</w>\": 20357,\n  \"elee</w>\": 44112,\n  \"eleg\": 8075,\n  \"elegance</w>\": 19146,\n  \"elegant</w>\": 11124,\n  \"elek\": 34559,\n  \"elem</w>\": 25406,\n  \"element</w>\": 14909,\n  \"elementary</w>\": 8143,\n  \"elements</w>\": 10925,\n  \"elen\": 30654,\n  \"elen</w>\": 39164,\n  \"elena</w>\": 19421,\n  \"eleng\": 48180,\n  \"eleph\": 7554,\n  \"elephant</w>\": 10299,\n  \"elephants</w>\": 16871,\n  \"eler</w>\": 24646,\n  \"eless\": 15244,\n  \"eless</w>\": 30837,\n  \"elets</w>\": 19400,\n  \"elev\": 7921,\n  \"elevate</w>\": 26736,\n  \"elevated</w>\": 23967,\n  \"elevation</w>\": 23826,\n  \"elevator</w>\": 19021,\n  \"eleven\": 31617,\n  \"eleven</w>\": 17795,\n  \"elf\": 45961,\n  \"elf</w>\": 11924,\n  \"elfie</w>\": 39955,\n  \"elg\": 28790,\n  \"elgin</w>\": 31868,\n  \"eli\": 1018,\n  \"eli</w>\": 6292,\n  \"elia</w>\": 10956,\n  \"elian</w>\": 42508,\n  \"elias\": 47274,\n  \"elias</w>\": 29902,\n  \"elic\": 34743,\n  \"elic</w>\": 13492,\n  \"elie\": 38677,\n  \"elie</w>\": 26501,\n  \"elier</w>\": 14634,\n  \"elife\": 37429,\n  \"elife</w>\": 12719,\n  \"eligibility</w>\": 34937,\n  \"eligible</w>\": 16978,\n  \"elijah</w>\": 26065,\n  \"elike\": 48913,\n  \"elim\": 9296,\n  \"elimin\": 11386,\n  \"eliminate</w>\": 19655,\n  \"eliminated</w>\": 29075,\n  \"eliminating</w>\": 36619,\n  \"elimination</w>\": 24176,\n  \"elin\": 25353,\n  \"elin</w>\": 13458,\n  \"eline\": 46199,\n  \"eline</w>\": 7153,\n  \"eling</w>\": 9990,\n  \"elio</w>\": 47943,\n  \"elion</w>\": 30682,\n  \"elions</w>\": 44159,\n  \"eliot</w>\": 33326,\n  \"elis\": 23411,\n  \"elis</w>\": 48021,\n  \"elisa\": 25610,\n  \"elisa</w>\": 44051,\n  \"elisabeth</w>\": 33127,\n  \"elise</w>\": 27124,\n  \"elit\": 40882,\n  \"elite\": 32277,\n  \"elite</w>\": 6553,\n  \"elited\": 43943,\n  \"elitedangerous</w>\": 47138,\n  \"elites</w>\": 35975,\n  \"elius</w>\": 35623,\n  \"elive\": 49338,\n  \"elive</w>\": 23505,\n  \"elives</w>\": 49174,\n  \"elix\": 32926,\n  \"elixir</w>\": 42887,\n  \"eliz\": 42844,\n  \"eliza\": 6132,\n  \"eliza</w>\": 29992,\n  \"elizabeth\": 22397,\n  \"elizabeth</w>\": 7026,\n  \"elk\": 34013,\n  \"elk</w>\": 21896,\n  \"ell\": 826,\n  \"ell</w>\": 812,\n  \"ella\": 20692,\n  \"ella</w>\": 2957,\n  \"elland</w>\": 43326,\n  \"ellar</w>\": 38443,\n  \"ellas</w>\": 37053,\n  \"elle\": 12818,\n  \"elle</w>\": 4765,\n  \"elled</w>\": 13146,\n  \"ellen\": 14007,\n  \"ellen</w>\": 12312,\n  \"ellenshow</w>\": 34812,\n  \"eller\": 20927,\n  \"eller</w>\": 4465,\n  \"ellers</w>\": 19010,\n  \"elles</w>\": 24431,\n  \"elli\": 3367,\n  \"elli</w>\": 6673,\n  \"ellic\": 38905,\n  \"ellie</w>\": 16769,\n  \"ellier</w>\": 44054,\n  \"ellin</w>\": 40374,\n  \"elling</w>\": 2220,\n  \"ellington</w>\": 34477,\n  \"ellini</w>\": 43256,\n  \"elliot</w>\": 20761,\n  \"elliott\": 44456,\n  \"elliott</w>\": 13788,\n  \"ellip\": 44816,\n  \"ellis</w>\": 11553,\n  \"ellison</w>\": 32295,\n  \"ello</w>\": 2512,\n  \"ellor</w>\": 14594,\n  \"ells</w>\": 2433,\n  \"ellu\": 35560,\n  \"elly\": 8041,\n  \"elly</w>\": 20355,\n  \"elm\": 25199,\n  \"elm</w>\": 22082,\n  \"elman</w>\": 33622,\n  \"elmer</w>\": 45958,\n  \"elmo</w>\": 32150,\n  \"elo\": 6170,\n  \"elo</w>\": 13490,\n  \"elon\": 26381,\n  \"elon</w>\": 20406,\n  \"elondon</w>\": 47377,\n  \"elong\": 44363,\n  \"elonmusk</w>\": 37076,\n  \"elope</w>\": 23367,\n  \"eloqu\": 37795,\n  \"elos</w>\": 44733,\n  \"elot</w>\": 43490,\n  \"elove\": 43319,\n  \"elove</w>\": 19165,\n  \"elover</w>\": 21732,\n  \"elovers</w>\": 33946,\n  \"els\": 35958,\n  \"els</w>\": 1645,\n  \"elsa</w>\": 22050,\n  \"else\": 18857,\n  \"else</w>\": 3344,\n  \"elsewhere</w>\": 22906,\n  \"elson</w>\": 19624,\n  \"elt</w>\": 18692,\n  \"elton</w>\": 20758,\n  \"elu\": 14208,\n  \"elusive</w>\": 28903,\n  \"elves</w>\": 29111,\n  \"elvi\": 47008,\n  \"elvis\": 47359,\n  \"elvis</w>\": 14498,\n  \"elxn</w>\": 37726,\n  \"ely\": 12189,\n  \"ely</w>\": 1273,\n  \"elyn\": 29691,\n  \"elyn</w>\": 18126,\n  \"em\": 908,\n  \"em</w>\": 2270,\n  \"ema\": 7002,\n  \"ema</w>\": 11131,\n  \"emabiggest\": 23101,\n  \"emabiggestfans</w>\": 29587,\n  \"email\": 33537,\n  \"email</w>\": 4462,\n  \"emailed</w>\": 40470,\n  \"emailmarketing</w>\": 40188,\n  \"emails</w>\": 12871,\n  \"eman\": 24416,\n  \"eman</w>\": 36868,\n  \"emancip\": 42996,\n  \"emanuel</w>\": 35232,\n  \"emb\": 3692,\n  \"embar\": 8266,\n  \"embaras\": 48019,\n  \"embark</w>\": 33953,\n  \"embarra\": 11382,\n  \"embarrass\": 27183,\n  \"embarrassed</w>\": 28217,\n  \"embarrassing</w>\": 19653,\n  \"embarrassment</w>\": 41346,\n  \"embassy</w>\": 13598,\n  \"embe\": 46041,\n  \"embed\": 19703,\n  \"embedded</w>\": 22046,\n  \"embelli\": 32144,\n  \"embellished</w>\": 46992,\n  \"ember</w>\": 47049,\n  \"emblem</w>\": 21163,\n  \"embo\": 23065,\n  \"embr\": 35267,\n  \"embrac\": 16928,\n  \"embrace</w>\": 12118,\n  \"embraced</w>\": 35739,\n  \"embraces</w>\": 38404,\n  \"embracing</w>\": 22196,\n  \"embro\": 12550,\n  \"embroi\": 18667,\n  \"embroide\": 21530,\n  \"embroidered</w>\": 22381,\n  \"embroidery</w>\": 20823,\n  \"emc\": 20897,\n  \"emc</w>\": 31602,\n  \"emcee</w>\": 42038,\n  \"eme\": 22910,\n  \"eme</w>\": 21548,\n  \"emea</w>\": 40352,\n  \"emed</w>\": 11028,\n  \"emen</w>\": 22033,\n  \"ement\": 40841,\n  \"ement</w>\": 2057,\n  \"ements</w>\": 11058,\n  \"emer\": 3132,\n  \"emer</w>\": 25727,\n  \"emerald\": 46878,\n  \"emerald</w>\": 16980,\n  \"emerge</w>\": 22182,\n  \"emerged</w>\": 26425,\n  \"emergen\": 24096,\n  \"emergence</w>\": 39867,\n  \"emergencies</w>\": 35759,\n  \"emergency\": 44038,\n  \"emergency</w>\": 5897,\n  \"emerges</w>\": 30801,\n  \"emerging\": 38174,\n  \"emerging</w>\": 11113,\n  \"emeritus</w>\": 35333,\n  \"emerson</w>\": 24147,\n  \"emery</w>\": 32678,\n  \"emi\": 44327,\n  \"emi</w>\": 18525,\n  \"emil\": 26794,\n  \"emil</w>\": 40624,\n  \"emile</w>\": 43926,\n  \"emili\": 20709,\n  \"emilia</w>\": 34238,\n  \"emilio</w>\": 39722,\n  \"emily\": 14545,\n  \"emily</w>\": 7640,\n  \"emin\": 17227,\n  \"emin</w>\": 23995,\n  \"eminem</w>\": 22129,\n  \"eminent</w>\": 33779,\n  \"eming</w>\": 40398,\n  \"emir\": 13337,\n  \"emir</w>\": 47613,\n  \"emirates\": 47244,\n  \"emirates</w>\": 17867,\n  \"emission</w>\": 27761,\n  \"emissions</w>\": 14172,\n  \"emit</w>\": 49043,\n  \"emma\": 18177,\n  \"emma</w>\": 7445,\n  \"emmanuel\": 48045,\n  \"emmanuel</w>\": 20411,\n  \"emmett</w>\": 45779,\n  \"emmy\": 35625,\n  \"emmy</w>\": 17089,\n  \"emmys</w>\": 21875,\n  \"emo\": 3738,\n  \"emo</w>\": 19381,\n  \"emoji</w>\": 16327,\n  \"emojis</w>\": 27870,\n  \"emon</w>\": 34406,\n  \"emor\": 45034,\n  \"emory</w>\": 44274,\n  \"emotion</w>\": 17464,\n  \"emotional</w>\": 7357,\n  \"emotionally</w>\": 24088,\n  \"emotions</w>\": 12904,\n  \"emp\": 3831,\n  \"emp</w>\": 41004,\n  \"empathy</w>\": 22420,\n  \"emper\": 12522,\n  \"emperor</w>\": 13828,\n  \"empha\": 16237,\n  \"emphasi\": 47176,\n  \"emphasis</w>\": 29588,\n  \"empire\": 26212,\n  \"empire</w>\": 7614,\n  \"empires</w>\": 46510,\n  \"emplo\": 3409,\n  \"employ\": 37290,\n  \"employ</w>\": 39626,\n  \"employe\": 5037,\n  \"employed</w>\": 26567,\n  \"employee\": 36631,\n  \"employee</w>\": 9560,\n  \"employees</w>\": 7377,\n  \"employer</w>\": 21296,\n  \"employers</w>\": 17647,\n  \"employment</w>\": 10959,\n  \"empor\": 27386,\n  \"emporium</w>\": 48541,\n  \"empower\": 13612,\n  \"empower</w>\": 17230,\n  \"empowered</w>\": 29087,\n  \"empowering</w>\": 20086,\n  \"empowerment</w>\": 15747,\n  \"empowers</w>\": 46206,\n  \"empress</w>\": 26656,\n  \"empty\": 41203,\n  \"empty</w>\": 7893,\n  \"emra\": 39259,\n  \"ems</w>\": 2858,\n  \"emt</w>\": 46360,\n  \"emu\": 48149,\n  \"emu</w>\": 29296,\n  \"emul\": 23272,\n  \"emy\": 31076,\n  \"en\": 524,\n  \"en</w>\": 576,\n  \"ena</w>\": 3452,\n  \"enab\": 17308,\n  \"enable</w>\": 15642,\n  \"enabled</w>\": 23666,\n  \"enables</w>\": 23417,\n  \"enabling</w>\": 23590,\n  \"enam\": 41486,\n  \"enamel</w>\": 22746,\n  \"enary</w>\": 13132,\n  \"enas</w>\": 34536,\n  \"enation</w>\": 20860,\n  \"enberg</w>\": 15658,\n  \"enburg</w>\": 28430,\n  \"enc</w>\": 33169,\n  \"enca</w>\": 37774,\n  \"encan\": 30345,\n  \"encapsul\": 40874,\n  \"ence\": 6495,\n  \"ence</w>\": 954,\n  \"enced</w>\": 6549,\n  \"ences</w>\": 3777,\n  \"enchan\": 17290,\n  \"enchanted</w>\": 28258,\n  \"enchanting</w>\": 32531,\n  \"enchil\": 47396,\n  \"enci\": 32207,\n  \"encia</w>\": 30068,\n  \"encies</w>\": 18729,\n  \"encing</w>\": 10326,\n  \"enclosed</w>\": 43243,\n  \"enclosure</w>\": 37419,\n  \"encom\": 44026,\n  \"encore</w>\": 20549,\n  \"encoun\": 17309,\n  \"encounter</w>\": 13164,\n  \"encountered</w>\": 32492,\n  \"encounters</w>\": 25399,\n  \"encoura\": 6169,\n  \"encourage</w>\": 12090,\n  \"encouraged</w>\": 20299,\n  \"encouragement</w>\": 24959,\n  \"encourages</w>\": 23848,\n  \"encouraging</w>\": 15875,\n  \"encro\": 45822,\n  \"encry\": 28600,\n  \"encryp\": 42928,\n  \"encrypted</w>\": 48710,\n  \"encryption</w>\": 31423,\n  \"ency</w>\": 3484,\n  \"encyclo\": 32104,\n  \"encyclopedia</w>\": 38376,\n  \"end\": 945,\n  \"end</w>\": 806,\n  \"enda</w>\": 6735,\n  \"endale</w>\": 20290,\n  \"endange\": 13990,\n  \"endangered</w>\": 14931,\n  \"ende\": 11373,\n  \"ende</w>\": 40306,\n  \"endeav\": 18134,\n  \"endeavor</w>\": 40502,\n  \"endeavors</w>\": 44394,\n  \"endeavour</w>\": 38035,\n  \"ended</w>\": 2622,\n  \"endemic</w>\": 41241,\n  \"endent</w>\": 16265,\n  \"ender\": 48106,\n  \"ender</w>\": 12383,\n  \"enders</w>\": 7418,\n  \"endez</w>\": 43850,\n  \"endgame</w>\": 23042,\n  \"endi</w>\": 31359,\n  \"ending</w>\": 2695,\n  \"endings</w>\": 36516,\n  \"endish</w>\": 38841,\n  \"endless</w>\": 12688,\n  \"endlessly</w>\": 45145,\n  \"endment</w>\": 45894,\n  \"endo\": 13476,\n  \"endo</w>\": 15830,\n  \"endocr\": 36486,\n  \"endof\": 40786,\n  \"endome\": 46996,\n  \"endon</w>\": 48018,\n  \"endor\": 8092,\n  \"endorf</w>\": 37249,\n  \"endorse</w>\": 28819,\n  \"endorsed</w>\": 24307,\n  \"endorsement</w>\": 21205,\n  \"endorses</w>\": 34603,\n  \"endorsing</w>\": 46779,\n  \"endow\": 45895,\n  \"endra</w>\": 22321,\n  \"ends</w>\": 1339,\n  \"endthe\": 46256,\n  \"endu\": 26032,\n  \"endur\": 19557,\n  \"endurance</w>\": 21027,\n  \"endure</w>\": 32419,\n  \"enduring</w>\": 30851,\n  \"enduro</w>\": 47042,\n  \"ene\": 3297,\n  \"ene</w>\": 6049,\n  \"ened</w>\": 2494,\n  \"eneed\": 45137,\n  \"enegger</w>\": 33235,\n  \"enei</w>\": 48906,\n  \"enemies</w>\": 15824,\n  \"enemy</w>\": 10310,\n  \"enen</w>\": 45113,\n  \"ener\": 2244,\n  \"ener</w>\": 13600,\n  \"energ\": 39451,\n  \"energetic</w>\": 24197,\n  \"energi\": 23044,\n  \"energies</w>\": 42374,\n  \"energized</w>\": 48635,\n  \"energy\": 14974,\n  \"energy</w>\": 2650,\n  \"energye\": 32271,\n  \"energyefficiency</w>\": 40586,\n  \"eners</w>\": 48208,\n  \"enes</w>\": 42066,\n  \"eness</w>\": 11806,\n  \"enet</w>\": 46336,\n  \"enew\": 29672,\n  \"enews</w>\": 13442,\n  \"eney</w>\": 20706,\n  \"enez</w>\": 33110,\n  \"enf\": 38167,\n  \"enfield</w>\": 27808,\n  \"enfor\": 10592,\n  \"enforce</w>\": 40224,\n  \"enforced</w>\": 44597,\n  \"enforcement</w>\": 12460,\n  \"eng\": 1035,\n  \"eng</w>\": 6730,\n  \"enga</w>\": 22297,\n  \"engag\": 6793,\n  \"engage</w>\": 11089,\n  \"engaged</w>\": 11475,\n  \"engagement</w>\": 7281,\n  \"engaging</w>\": 13060,\n  \"enge\": 26279,\n  \"enge</w>\": 2742,\n  \"engel\": 38265,\n  \"engen</w>\": 48286,\n  \"enger</w>\": 6618,\n  \"engers</w>\": 7533,\n  \"engine\": 3355,\n  \"engine</w>\": 5857,\n  \"engineer\": 40151,\n  \"engineer</w>\": 8517,\n  \"engineered</w>\": 26580,\n  \"engineering</w>\": 5273,\n  \"engineers</w>\": 11494,\n  \"engines</w>\": 14487,\n  \"england\": 20904,\n  \"england</w>\": 3595,\n  \"english\": 15942,\n  \"english</w>\": 3469,\n  \"engra\": 17560,\n  \"engraved</w>\": 29421,\n  \"engraving</w>\": 33309,\n  \"engul\": 43655,\n  \"engv\": 28401,\n  \"enh\": 7449,\n  \"enhall</w>\": 48781,\n  \"enham</w>\": 24592,\n  \"enhan\": 26827,\n  \"enhance</w>\": 13993,\n  \"enhanced</w>\": 16070,\n  \"enhancement</w>\": 35601,\n  \"enhances</w>\": 38259,\n  \"enhancing</w>\": 25986,\n  \"eni\": 4395,\n  \"eni</w>\": 17538,\n  \"enic\": 46780,\n  \"enic</w>\": 28292,\n  \"enig\": 19754,\n  \"enig</w>\": 48730,\n  \"enight\": 32848,\n  \"enight</w>\": 20640,\n  \"enigma</w>\": 34998,\n  \"ening</w>\": 1133,\n  \"enium</w>\": 34380,\n  \"enix</w>\": 25720,\n  \"enjo\": 1498,\n  \"enjoy\": 12981,\n  \"enjoy</w>\": 2218,\n  \"enjoyable</w>\": 17444,\n  \"enjoyed</w>\": 5045,\n  \"enjoying</w>\": 3603,\n  \"enjoyment</w>\": 34905,\n  \"enjoys</w>\": 17024,\n  \"enka</w>\": 43942,\n  \"enko</w>\": 25312,\n  \"enlar\": 38136,\n  \"enligh\": 21364,\n  \"enlighten\": 28200,\n  \"enlightened</w>\": 44032,\n  \"enlightening</w>\": 44005,\n  \"enlightenment</w>\": 29255,\n  \"enlisted</w>\": 43555,\n  \"enly</w>\": 43023,\n  \"enn</w>\": 43563,\n  \"enna</w>\": 8095,\n  \"enne\": 21176,\n  \"enne</w>\": 11518,\n  \"ennedy</w>\": 46266,\n  \"ennes</w>\": 43613,\n  \"enni\": 7049,\n  \"ennial</w>\": 14220,\n  \"ennis\": 48923,\n  \"ennis</w>\": 26309,\n  \"eno\": 9429,\n  \"eno</w>\": 12843,\n  \"enoch</w>\": 47917,\n  \"enor\": 13955,\n  \"enormous</w>\": 20129,\n  \"enos</w>\": 44759,\n  \"enote</w>\": 44955,\n  \"enough</w>\": 2744,\n  \"enow</w>\": 26876,\n  \"enqu\": 28417,\n  \"enqui\": 22810,\n  \"enquire</w>\": 46658,\n  \"enquiries</w>\": 31901,\n  \"enquiry</w>\": 45141,\n  \"enri\": 18915,\n  \"enrich\": 20058,\n  \"enrich</w>\": 45504,\n  \"enriched</w>\": 45166,\n  \"enrichment</w>\": 32903,\n  \"enrique</w>\": 25489,\n  \"enrol\": 44279,\n  \"enroll\": 23739,\n  \"enroll</w>\": 30366,\n  \"enrolled</w>\": 36853,\n  \"enrollment</w>\": 24875,\n  \"enroute</w>\": 40548,\n  \"ens\": 41799,\n  \"ens</w>\": 1323,\n  \"ense\": 12657,\n  \"ense</w>\": 27658,\n  \"ensemble</w>\": 14843,\n  \"ensis</w>\": 32842,\n  \"ensla\": 37535,\n  \"enslaved</w>\": 48675,\n  \"ensure</w>\": 7492,\n  \"ensures</w>\": 29707,\n  \"ensuring</w>\": 19403,\n  \"ent\": 724,\n  \"ent</w>\": 621,\n  \"enta</w>\": 17681,\n  \"ental\": 32342,\n  \"ental</w>\": 6168,\n  \"entary</w>\": 9833,\n  \"entation</w>\": 37412,\n  \"ente\": 17433,\n  \"ente</w>\": 9935,\n  \"ented</w>\": 3800,\n  \"entennial</w>\": 43088,\n  \"enter\": 2963,\n  \"enter</w>\": 3819,\n  \"entered</w>\": 10679,\n  \"entering</w>\": 12580,\n  \"enterpri\": 7339,\n  \"enterprise</w>\": 9220,\n  \"enterprises</w>\": 21219,\n  \"enters</w>\": 15287,\n  \"entertain\": 5566,\n  \"entertain</w>\": 23510,\n  \"entertained</w>\": 30631,\n  \"entertainer</w>\": 28674,\n  \"entertaining</w>\": 13897,\n  \"entertainment</w>\": 6166,\n  \"entes</w>\": 24213,\n  \"enthr\": 36202,\n  \"enthusi\": 9631,\n  \"enthusiasm</w>\": 20525,\n  \"enthusiast</w>\": 27153,\n  \"enthusiastic</w>\": 22068,\n  \"enthusiasts</w>\": 27514,\n  \"enti\": 1938,\n  \"ential</w>\": 5194,\n  \"entially</w>\": 37695,\n  \"entic</w>\": 10340,\n  \"entine</w>\": 49212,\n  \"enting</w>\": 20526,\n  \"entire</w>\": 4709,\n  \"entirely</w>\": 13911,\n  \"entirety</w>\": 43242,\n  \"entit\": 15209,\n  \"entities</w>\": 38134,\n  \"entitled</w>\": 18680,\n  \"entity</w>\": 28455,\n  \"ently</w>\": 2922,\n  \"ento\": 21917,\n  \"ento</w>\": 8762,\n  \"entom\": 31676,\n  \"entourage</w>\": 47893,\n  \"entr\": 7129,\n  \"entrance</w>\": 9129,\n  \"entrata</w>\": 27304,\n  \"entre\": 34188,\n  \"entre</w>\": 19600,\n  \"entren\": 46959,\n  \"entrepre\": 4583,\n  \"entreprene\": 4789,\n  \"entrepreneu\": 26784,\n  \"entrepreneur\": 12119,\n  \"entrepreneur</w>\": 8033,\n  \"entrepreneurial</w>\": 28261,\n  \"entrepreneurs</w>\": 11054,\n  \"entrepreneurship</w>\": 12858,\n  \"entries</w>\": 13766,\n  \"entry</w>\": 5362,\n  \"ents</w>\": 870,\n  \"entu\": 6650,\n  \"enty</w>\": 5657,\n  \"enu\": 23430,\n  \"env\": 32280,\n  \"env</w>\": 39207,\n  \"envel\": 20052,\n  \"envelope</w>\": 27358,\n  \"envir\": 3512,\n  \"enviro</w>\": 46200,\n  \"environ\": 3599,\n  \"environment\": 33039,\n  \"environment</w>\": 5501,\n  \"environmental</w>\": 7831,\n  \"environmentally</w>\": 32855,\n  \"environments</w>\": 19577,\n  \"envision</w>\": 49031,\n  \"envoy</w>\": 29263,\n  \"envy</w>\": 21017,\n  \"eny</w>\": 20482,\n  \"enya</w>\": 36509,\n  \"enyc</w>\": 39520,\n  \"enz\": 25805,\n  \"enz</w>\": 31873,\n  \"enza</w>\": 25239,\n  \"enzie</w>\": 14839,\n  \"enzo</w>\": 31543,\n  \"enzyme</w>\": 40348,\n  \"enzymes</w>\": 47465,\n  \"eo\": 16054,\n  \"eo</w>\": 11712,\n  \"eoin</w>\": 48634,\n  \"eon</w>\": 31915,\n  \"eos</w>\": 17805,\n  \"ep\": 1178,\n  \"ep</w>\": 1117,\n  \"epa</w>\": 15866,\n  \"epage</w>\": 26931,\n  \"epaper</w>\": 33584,\n  \"epcot</w>\": 32524,\n  \"eper</w>\": 43071,\n  \"eph\": 45752,\n  \"eph</w>\": 41240,\n  \"ephe\": 25129,\n  \"epi\": 7219,\n  \"epi</w>\": 34641,\n  \"epic\": 12683,\n  \"epic</w>\": 4991,\n  \"epiconetsy</w>\": 49222,\n  \"epide\": 17382,\n  \"epidemi\": 44447,\n  \"epidemic</w>\": 21522,\n  \"epile\": 23150,\n  \"epilepsy</w>\": 29547,\n  \"epilo\": 31291,\n  \"epilots</w>\": 39766,\n  \"epiph\": 40561,\n  \"epiphany</w>\": 43251,\n  \"epis\": 24616,\n  \"episcop\": 28037,\n  \"episcopal</w>\": 31221,\n  \"episo\": 2708,\n  \"episode</w>\": 2965,\n  \"episodes</w>\": 11837,\n  \"epit\": 21967,\n  \"epitome</w>\": 35114,\n  \"epl</w>\": 25950,\n  \"epo\": 25810,\n  \"epp\": 39054,\n  \"epp</w>\": 39593,\n  \"eps</w>\": 4090,\n  \"epsilon</w>\": 40019,\n  \"epsom</w>\": 40364,\n  \"epstein</w>\": 34688,\n  \"eq\": 39331,\n  \"eq</w>\": 33692,\n  \"equ\": 2563,\n  \"equal\": 17373,\n  \"equal</w>\": 10433,\n  \"equality\": 48981,\n  \"equality</w>\": 9578,\n  \"equally</w>\": 18172,\n  \"equals</w>\": 30278,\n  \"equation</w>\": 28591,\n  \"equations</w>\": 38225,\n  \"eque\": 19518,\n  \"equestrian</w>\": 24728,\n  \"equi\": 8752,\n  \"equili\": 43262,\n  \"equine</w>\": 33801,\n  \"equinox</w>\": 32652,\n  \"equip\": 6526,\n  \"equip</w>\": 36979,\n  \"equipment</w>\": 6893,\n  \"equipo</w>\": 45688,\n  \"equipped</w>\": 18331,\n  \"equitable</w>\": 44717,\n  \"equities</w>\": 44015,\n  \"equity</w>\": 11293,\n  \"equivalent</w>\": 19489,\n  \"er\": 517,\n  \"er</w>\": 528,\n  \"era\": 30548,\n  \"era</w>\": 2072,\n  \"erable</w>\": 18801,\n  \"erad\": 24194,\n  \"eradic\": 36346,\n  \"eradicate</w>\": 46164,\n  \"eral</w>\": 6222,\n  \"eran</w>\": 13069,\n  \"eras\": 19325,\n  \"eras</w>\": 39090,\n  \"erase</w>\": 33893,\n  \"erased</w>\": 46762,\n  \"erasmus</w>\": 38935,\n  \"erc\": 5360,\n  \"erc</w>\": 32382,\n  \"erd</w>\": 25645,\n  \"erdo\": 21112,\n  \"erdogan</w>\": 24453,\n  \"ere\": 17907,\n  \"ere</w>\": 642,\n  \"erec\": 21526,\n  \"erected</w>\": 39365,\n  \"ered</w>\": 9097,\n  \"eres</w>\": 15751,\n  \"ergon\": 38120,\n  \"ergy</w>\": 19550,\n  \"eri\": 2769,\n  \"eri</w>\": 9509,\n  \"eria</w>\": 11634,\n  \"erial</w>\": 5409,\n  \"eric\": 1206,\n  \"eric</w>\": 5396,\n  \"erica</w>\": 13208,\n  \"erich</w>\": 26070,\n  \"erick\": 27434,\n  \"erick</w>\": 36959,\n  \"erickson</w>\": 45286,\n  \"ericsson</w>\": 39645,\n  \"eridge</w>\": 45408,\n  \"erie</w>\": 7005,\n  \"eries</w>\": 9099,\n  \"erik\": 22805,\n  \"erik</w>\": 16532,\n  \"erika</w>\": 25531,\n  \"erin\": 17532,\n  \"erin</w>\": 11333,\n  \"erina</w>\": 25176,\n  \"ering</w>\": 1785,\n  \"erit\": 23335,\n  \"eritrea</w>\": 30738,\n  \"erjee</w>\": 41665,\n  \"erly</w>\": 14380,\n  \"erm</w>\": 31649,\n  \"erman</w>\": 17990,\n  \"ern\": 6992,\n  \"ern</w>\": 12140,\n  \"ernal</w>\": 20868,\n  \"ernan</w>\": 34617,\n  \"ernation</w>\": 48796,\n  \"erne\": 33930,\n  \"ernest</w>\": 23006,\n  \"ernie</w>\": 23636,\n  \"ernity</w>\": 14653,\n  \"erno</w>\": 40812,\n  \"ernst</w>\": 30099,\n  \"ero\": 3211,\n  \"ero</w>\": 3732,\n  \"erock</w>\": 38206,\n  \"eron</w>\": 32837,\n  \"eroom</w>\": 46690,\n  \"eros</w>\": 30597,\n  \"erose</w>\": 48657,\n  \"erosion</w>\": 30174,\n  \"erotic</w>\": 30708,\n  \"erotica</w>\": 39126,\n  \"erous</w>\": 6384,\n  \"eroy</w>\": 36461,\n  \"erp</w>\": 28268,\n  \"err\": 22479,\n  \"err</w>\": 25346,\n  \"erra</w>\": 48446,\n  \"errands</w>\": 45485,\n  \"error</w>\": 12097,\n  \"errors</w>\": 21195,\n  \"erry\": 45236,\n  \"erry</w>\": 24124,\n  \"ers\": 4840,\n  \"ers</w>\": 612,\n  \"ersfc</w>\": 37925,\n  \"ership</w>\": 2884,\n  \"erson\": 25780,\n  \"erson</w>\": 6811,\n  \"ert\": 40325,\n  \"ert</w>\": 3112,\n  \"erta</w>\": 32007,\n  \"erton</w>\": 26245,\n  \"erts</w>\": 12921,\n  \"eru\": 36068,\n  \"erun</w>\": 41642,\n  \"erup\": 17093,\n  \"erupted</w>\": 48862,\n  \"eruption</w>\": 33705,\n  \"erville</w>\": 37557,\n  \"erwin</w>\": 43724,\n  \"ery\": 12467,\n  \"ery</w>\": 1692,\n  \"erz</w>\": 38711,\n  \"es\": 957,\n  \"es</w>\": 542,\n  \"esa\": 46834,\n  \"esa</w>\": 12489,\n  \"esanders</w>\": 23099,\n  \"esc\": 3330,\n  \"esc</w>\": 28420,\n  \"escal\": 15902,\n  \"escap\": 11499,\n  \"escape\": 32484,\n  \"escape</w>\": 7568,\n  \"escaped</w>\": 18707,\n  \"escapes</w>\": 29916,\n  \"escaping</w>\": 21767,\n  \"escar\": 39229,\n  \"escence</w>\": 37972,\n  \"esch\": 46760,\n  \"esch</w>\": 41945,\n  \"esco\": 32482,\n  \"escobar</w>\": 48807,\n  \"escor\": 24360,\n  \"escort</w>\": 24976,\n  \"escorted</w>\": 47667,\n  \"escorts</w>\": 48574,\n  \"escu\": 36517,\n  \"esday</w>\": 19553,\n  \"ese\": 18766,\n  \"ese</w>\": 2260,\n  \"esg</w>\": 41674,\n  \"esh\": 17119,\n  \"esh</w>\": 13407,\n  \"esha</w>\": 28799,\n  \"eshop\": 38451,\n  \"eshop</w>\": 45570,\n  \"eshopsuk</w>\": 39349,\n  \"esi</w>\": 30064,\n  \"esis</w>\": 12414,\n  \"esk\": 19359,\n  \"esl</w>\": 26201,\n  \"eso\": 29890,\n  \"eso</w>\": 28921,\n  \"esof\": 17047,\n  \"eson\": 46845,\n  \"esp\": 3849,\n  \"esp</w>\": 13870,\n  \"espa\": 37301,\n  \"espan\": 41731,\n  \"espaÃ±a</w>\": 41118,\n  \"especially</w>\": 4878,\n  \"esper\": 29216,\n  \"espino\": 46633,\n  \"espionage</w>\": 43498,\n  \"espn\": 22917,\n  \"espn</w>\": 7540,\n  \"espnu</w>\": 47747,\n  \"espo\": 34381,\n  \"esports</w>\": 16035,\n  \"espresso</w>\": 17098,\n  \"esq</w>\": 47352,\n  \"esqu\": 34616,\n  \"esque</w>\": 25877,\n  \"ess\": 3118,\n  \"ess</w>\": 9764,\n  \"essa</w>\": 39125,\n  \"essay</w>\": 12751,\n  \"essays</w>\": 27328,\n  \"esse</w>\": 22305,\n  \"essen</w>\": 30489,\n  \"essence</w>\": 17830,\n  \"essenti\": 11163,\n  \"essential\": 47264,\n  \"essential</w>\": 6895,\n  \"essentially</w>\": 30042,\n  \"essentials</w>\": 16191,\n  \"essex\": 30563,\n  \"essex</w>\": 11623,\n  \"est\": 2291,\n  \"est</w>\": 1509,\n  \"esta\": 41449,\n  \"esta</w>\": 10135,\n  \"estab\": 7010,\n  \"establi\": 8412,\n  \"establish</w>\": 19709,\n  \"established</w>\": 13143,\n  \"establishing</w>\": 29420,\n  \"establishment</w>\": 20213,\n  \"estas</w>\": 39072,\n  \"estate\": 47130,\n  \"estate</w>\": 6159,\n  \"estates</w>\": 26054,\n  \"este\": 12968,\n  \"este</w>\": 20579,\n  \"esteban</w>\": 48381,\n  \"esteem</w>\": 31541,\n  \"esteemed</w>\": 36293,\n  \"ester</w>\": 45808,\n  \"esthe\": 18468,\n  \"esther</w>\": 24393,\n  \"estim\": 8904,\n  \"estimate</w>\": 21883,\n  \"estimated</w>\": 16665,\n  \"estimates</w>\": 21957,\n  \"esto\": 31589,\n  \"esto</w>\": 23958,\n  \"estonia</w>\": 26260,\n  \"estonian</w>\": 48895,\n  \"estrada</w>\": 48116,\n  \"estre\": 31271,\n  \"estu\": 26272,\n  \"estuary</w>\": 35269,\n  \"esur\": 35758,\n  \"esville</w>\": 39187,\n  \"esy\": 46268,\n  \"et\": 1169,\n  \"et</w>\": 875,\n  \"eta</w>\": 8761,\n  \"etal</w>\": 25221,\n  \"etary</w>\": 13074,\n  \"etc</w>\": 5353,\n  \"etched</w>\": 40411,\n  \"etching</w>\": 41375,\n  \"ete\": 38820,\n  \"ete</w>\": 40245,\n  \"eter\": 8587,\n  \"eter</w>\": 17007,\n  \"eternal</w>\": 13732,\n  \"eternally</w>\": 48486,\n  \"eternity</w>\": 23832,\n  \"eters</w>\": 18392,\n  \"etf</w>\": 31661,\n  \"eth\": 4819,\n  \"eth</w>\": 5927,\n  \"ethan\": 24245,\n  \"ethan</w>\": 15958,\n  \"ethanol</w>\": 38166,\n  \"ethe\": 21312,\n  \"ethel</w>\": 45921,\n  \"ether\": 23349,\n  \"ethere\": 18705,\n  \"ethereal</w>\": 40925,\n  \"ethereum</w>\": 19612,\n  \"ethernet</w>\": 35026,\n  \"ethi\": 10327,\n  \"ethic</w>\": 39104,\n  \"ethical\": 47041,\n  \"ethical</w>\": 17679,\n  \"ethics</w>\": 13355,\n  \"ethiop\": 10897,\n  \"ethiopia</w>\": 13920,\n  \"ethiopian</w>\": 24507,\n  \"ethnic\": 30522,\n  \"ethnic</w>\": 16344,\n  \"ethnicity</w>\": 46787,\n  \"ethno\": 34225,\n  \"ethos</w>\": 48768,\n  \"eti\": 11188,\n  \"eti</w>\": 30394,\n  \"etienne</w>\": 46118,\n  \"eties</w>\": 15137,\n  \"etihad</w>\": 38489,\n  \"etiquette</w>\": 37957,\n  \"etis\": 38216,\n  \"etisation</w>\": 39733,\n  \"etna</w>\": 41940,\n  \"eto\": 27829,\n  \"eto</w>\": 33837,\n  \"eton</w>\": 44339,\n  \"etour</w>\": 41462,\n  \"etr\": 23012,\n  \"etres</w>\": 42838,\n  \"ets</w>\": 3442,\n  \"etsy\": 13237,\n  \"etsy</w>\": 6282,\n  \"etsym\": 22902,\n  \"etsymntt</w>\": 25416,\n  \"etsyshop</w>\": 44643,\n  \"ett\": 32729,\n  \"ett</w>\": 24998,\n  \"etta</w>\": 30466,\n  \"ette\": 19981,\n  \"ette</w>\": 5212,\n  \"ettes</w>\": 35326,\n  \"etto</w>\": 44219,\n  \"etty</w>\": 40759,\n  \"etu\": 36593,\n  \"etv\": 49155,\n  \"etv</w>\": 20325,\n  \"etwork</w>\": 20585,\n  \"ety\": 25920,\n  \"ety</w>\": 2746,\n  \"etz\": 36181,\n  \"etz</w>\": 25301,\n  \"eu\": 1506,\n  \"eu</w>\": 3238,\n  \"eucalyp\": 41068,\n  \"eucalyptus</w>\": 42351,\n  \"euchar\": 38362,\n  \"eugen\": 30678,\n  \"eugene</w>\": 17760,\n  \"eul\": 46749,\n  \"eun\": 16431,\n  \"eun</w>\": 26219,\n  \"eunhyuk</w>\": 47526,\n  \"eup\": 44435,\n  \"euph\": 21386,\n  \"euphoria</w>\": 41051,\n  \"eur\": 18343,\n  \"eur</w>\": 12018,\n  \"eura\": 32605,\n  \"eure\": 25311,\n  \"euref</w>\": 48017,\n  \"eureka</w>\": 31686,\n  \"euro\": 2039,\n  \"euro</w>\": 8463,\n  \"euroleague</w>\": 46821,\n  \"europa</w>\": 18290,\n  \"europale\": 42473,\n  \"europaleague</w>\": 44029,\n  \"europarl</w>\": 44922,\n  \"europe\": 4198,\n  \"europe</w>\": 3848,\n  \"european\": 26712,\n  \"european</w>\": 4759,\n  \"europeans</w>\": 37082,\n  \"euros</w>\": 22274,\n  \"eurovision</w>\": 17593,\n  \"eurozone</w>\": 42555,\n  \"eurusd</w>\": 40895,\n  \"eus</w>\": 44214,\n  \"euston</w>\": 46905,\n  \"euthan\": 43280,\n  \"euve</w>\": 40652,\n  \"eux</w>\": 25019,\n  \"ev\": 776,\n  \"ev</w>\": 10133,\n  \"eva</w>\": 6845,\n  \"evacu\": 13187,\n  \"evacuated</w>\": 26806,\n  \"evacuation</w>\": 27353,\n  \"eval\": 25139,\n  \"eval</w>\": 9703,\n  \"evalu\": 10314,\n  \"evaluate</w>\": 27174,\n  \"evaluating</w>\": 34541,\n  \"evaluation</w>\": 17640,\n  \"evan\": 12821,\n  \"evan</w>\": 12847,\n  \"evangel\": 20518,\n  \"evangeli\": 21372,\n  \"evangelical</w>\": 36151,\n  \"evangelist</w>\": 42275,\n  \"evankirstel</w>\": 46581,\n  \"evans</w>\": 8836,\n  \"evansville</w>\": 44782,\n  \"evapor\": 33352,\n  \"evasion</w>\": 48795,\n  \"eve\": 5732,\n  \"eve</w>\": 1866,\n  \"eved</w>\": 19820,\n  \"evel\": 39315,\n  \"evelyn</w>\": 26687,\n  \"evement</w>\": 8210,\n  \"even\": 6359,\n  \"even</w>\": 1427,\n  \"evening\": 34487,\n  \"evening</w>\": 2285,\n  \"evenings</w>\": 19994,\n  \"evenly</w>\": 45974,\n  \"event\": 10612,\n  \"event</w>\": 1655,\n  \"eventful</w>\": 45628,\n  \"evento</w>\": 38155,\n  \"eventprofs</w>\": 24980,\n  \"events</w>\": 3667,\n  \"eventu\": 14055,\n  \"eventual</w>\": 45321,\n  \"eventually</w>\": 14397,\n  \"ever\": 888,\n  \"ever</w>\": 1247,\n  \"everest</w>\": 21722,\n  \"everett</w>\": 25456,\n  \"everglades</w>\": 46294,\n  \"evergreen</w>\": 23852,\n  \"everlasting</w>\": 32849,\n  \"evers</w>\": 31914,\n  \"everton</w>\": 13315,\n  \"every\": 1091,\n  \"every</w>\": 1505,\n  \"everybody</w>\": 5901,\n  \"everyday\": 25049,\n  \"everyday</w>\": 5160,\n  \"everyone</w>\": 1584,\n  \"everything\": 36376,\n  \"everything</w>\": 2410,\n  \"everytime</w>\": 16911,\n  \"everywhere</w>\": 6364,\n  \"eves</w>\": 7323,\n  \"evi\": 5348,\n  \"evi</w>\": 36989,\n  \"evic\": 21336,\n  \"eviction</w>\": 37111,\n  \"eviden\": 46220,\n  \"evidence</w>\": 6439,\n  \"evident</w>\": 34529,\n  \"evie</w>\": 47195,\n  \"evil\": 23218,\n  \"evil</w>\": 6006,\n  \"eville</w>\": 16143,\n  \"eving</w>\": 24729,\n  \"evo\": 17962,\n  \"evo</w>\": 13169,\n  \"evoc\": 43133,\n  \"evol\": 5350,\n  \"evolu\": 7725,\n  \"evolution</w>\": 8902,\n  \"evolutionary</w>\": 30629,\n  \"evolve</w>\": 23406,\n  \"evolved</w>\": 22613,\n  \"evolving</w>\": 23675,\n  \"evp</w>\": 46154,\n  \"evs</w>\": 33576,\n  \"ew\": 11942,\n  \"ew</w>\": 15428,\n  \"ewan</w>\": 40247,\n  \"ewe</w>\": 48438,\n  \"ewing</w>\": 38873,\n  \"ews</w>\": 9878,\n  \"ex\": 659,\n  \"ex</w>\": 4118,\n  \"exac\": 5460,\n  \"exact</w>\": 12651,\n  \"exactly</w>\": 5840,\n  \"exagger\": 29766,\n  \"exal\": 49324,\n  \"exam\": 4428,\n  \"exam</w>\": 8785,\n  \"examination</w>\": 20970,\n  \"examine</w>\": 25728,\n  \"examined</w>\": 44004,\n  \"examiner</w>\": 29149,\n  \"examines</w>\": 28160,\n  \"examining</w>\": 30616,\n  \"example</w>\": 6228,\n  \"examples</w>\": 14790,\n  \"exams</w>\": 14028,\n  \"exas</w>\": 47536,\n  \"exc\": 1302,\n  \"excav\": 20733,\n  \"excavation</w>\": 45909,\n  \"exce\": 10999,\n  \"exceed</w>\": 32521,\n  \"exceeded</w>\": 36221,\n  \"exceeding</w>\": 47213,\n  \"exceeds</w>\": 49353,\n  \"excel\": 28351,\n  \"excel</w>\": 18754,\n  \"excell\": 3298,\n  \"excellence</w>\": 8171,\n  \"excellency</w>\": 36503,\n  \"excellent</w>\": 4239,\n  \"excelsi\": 47315,\n  \"excep\": 8882,\n  \"except</w>\": 8541,\n  \"exception</w>\": 25018,\n  \"exceptional</w>\": 13425,\n  \"exceptionally</w>\": 29306,\n  \"excer\": 17737,\n  \"excerpt</w>\": 20586,\n  \"excess</w>\": 22491,\n  \"excessive</w>\": 21332,\n  \"exchange</w>\": 6616,\n  \"exchanged</w>\": 48919,\n  \"exchanges</w>\": 29730,\n  \"exchanging</w>\": 47760,\n  \"excit\": 10510,\n  \"excite</w>\": 47711,\n  \"excited</w>\": 1889,\n  \"excitement</w>\": 11407,\n  \"exciting</w>\": 4300,\n  \"exclu\": 3114,\n  \"exclude</w>\": 49235,\n  \"excluded</w>\": 46216,\n  \"excluding</w>\": 44326,\n  \"exclusion</w>\": 40219,\n  \"exclusive</w>\": 3747,\n  \"exclusively</w>\": 13565,\n  \"exclusives</w>\": 47149,\n  \"excu\": 7324,\n  \"excur\": 27533,\n  \"excursion</w>\": 34869,\n  \"excuse</w>\": 9266,\n  \"excuses</w>\": 19388,\n  \"exe\": 3554,\n  \"exe</w>\": 48027,\n  \"exec</w>\": 15052,\n  \"execs</w>\": 35728,\n  \"execu\": 4360,\n  \"execute</w>\": 36405,\n  \"executed</w>\": 20432,\n  \"execution</w>\": 18085,\n  \"executive</w>\": 5944,\n  \"executives</w>\": 24357,\n  \"exem\": 19753,\n  \"exemp\": 28602,\n  \"exempl\": 36371,\n  \"exemplary</w>\": 39123,\n  \"exempli\": 41934,\n  \"exempt</w>\": 44278,\n  \"exemption</w>\": 47481,\n  \"exer\": 40295,\n  \"exerc\": 5932,\n  \"exercise</w>\": 7016,\n  \"exercises</w>\": 19669,\n  \"exercising</w>\": 39036,\n  \"exeter\": 32137,\n  \"exeter</w>\": 18837,\n  \"exfoli\": 38823,\n  \"exhau\": 11154,\n  \"exhaust</w>\": 21812,\n  \"exhausted</w>\": 21741,\n  \"exhausting</w>\": 40035,\n  \"exhaustion</w>\": 49221,\n  \"exhi\": 3022,\n  \"exhib\": 3783,\n  \"exhibit\": 24992,\n  \"exhibit</w>\": 8209,\n  \"exhibiting</w>\": 23889,\n  \"exhibition</w>\": 4219,\n  \"exhibitions</w>\": 28311,\n  \"exhibitor</w>\": 44192,\n  \"exhibitors</w>\": 38542,\n  \"exhibits</w>\": 30093,\n  \"exhilar\": 40262,\n  \"exhilarating</w>\": 49289,\n  \"exi\": 5297,\n  \"exico</w>\": 38712,\n  \"exile</w>\": 28566,\n  \"exist\": 10899,\n  \"exist</w>\": 9645,\n  \"existed</w>\": 23198,\n  \"existence</w>\": 13832,\n  \"existent</w>\": 43541,\n  \"existential</w>\": 38752,\n  \"existing</w>\": 12886,\n  \"exists</w>\": 14608,\n  \"exit</w>\": 9374,\n  \"exited</w>\": 37581,\n  \"exiting</w>\": 39577,\n  \"exits</w>\": 34943,\n  \"exmoor</w>\": 48260,\n  \"exo\": 15600,\n  \"exo</w>\": 5842,\n  \"exodus</w>\": 30098,\n  \"exol</w>\": 42856,\n  \"exop\": 35288,\n  \"exoplan\": 37980,\n  \"exor\": 24506,\n  \"exorcist</w>\": 46309,\n  \"exotic</w>\": 15639,\n  \"exp\": 9923,\n  \"exp</w>\": 19066,\n  \"expan\": 7512,\n  \"expand\": 10382,\n  \"expand</w>\": 13141,\n  \"expanded</w>\": 18390,\n  \"expanding</w>\": 15755,\n  \"expands</w>\": 22223,\n  \"expanse</w>\": 46886,\n  \"expansion</w>\": 10138,\n  \"expansive</w>\": 49261,\n  \"expat</w>\": 43900,\n  \"expe\": 2560,\n  \"expect\": 9802,\n  \"expect</w>\": 5716,\n  \"expectation</w>\": 34273,\n  \"expectations</w>\": 12529,\n  \"expected</w>\": 5573,\n  \"expecting</w>\": 12525,\n  \"expects</w>\": 24536,\n  \"expedition</w>\": 16761,\n  \"expeditions</w>\": 49327,\n  \"expelled</w>\": 48834,\n  \"expen\": 7216,\n  \"expend\": 29302,\n  \"expenditure</w>\": 47044,\n  \"expense</w>\": 28473,\n  \"expenses</w>\": 21797,\n  \"expensive</w>\": 9649,\n  \"exper\": 1533,\n  \"experi\": 4723,\n  \"experience\": 31867,\n  \"experience</w>\": 2415,\n  \"experienced</w>\": 10417,\n  \"experiences</w>\": 8233,\n  \"experiencing</w>\": 16643,\n  \"experiential</w>\": 44952,\n  \"experim\": 6697,\n  \"experiment</w>\": 13079,\n  \"experimental</w>\": 16539,\n  \"experimenting</w>\": 28263,\n  \"experiments</w>\": 21077,\n  \"expert</w>\": 6284,\n  \"expertise</w>\": 16555,\n  \"experts</w>\": 6960,\n  \"expi\": 26850,\n  \"expir\": 35077,\n  \"expire</w>\": 49315,\n  \"expired</w>\": 30200,\n  \"expires</w>\": 34739,\n  \"expl\": 3261,\n  \"expla\": 3517,\n  \"explain\": 48918,\n  \"explain</w>\": 7304,\n  \"explained</w>\": 14229,\n  \"explaining</w>\": 13136,\n  \"explains</w>\": 6655,\n  \"explan\": 13294,\n  \"explanation</w>\": 16577,\n  \"explanations</w>\": 34383,\n  \"explic\": 21011,\n  \"explicit</w>\": 33228,\n  \"explo\": 3586,\n  \"explode</w>\": 31262,\n  \"exploded</w>\": 28947,\n  \"explodes</w>\": 38119,\n  \"exploding</w>\": 34683,\n  \"exploit</w>\": 36953,\n  \"exploited</w>\": 48554,\n  \"explor\": 11958,\n  \"exploration</w>\": 14043,\n  \"explore\": 10405,\n  \"explore</w>\": 5147,\n  \"explorebc</w>\": 38754,\n  \"explorecanada</w>\": 36600,\n  \"explored</w>\": 25016,\n  \"explorer</w>\": 15776,\n  \"explorers</w>\": 28491,\n  \"explores</w>\": 13996,\n  \"exploring</w>\": 7584,\n  \"explosion</w>\": 13785,\n  \"explosions</w>\": 38646,\n  \"explosive</w>\": 18888,\n  \"explosives</w>\": 44705,\n  \"expo\": 7820,\n  \"expo</w>\": 6344,\n  \"expon\": 27905,\n  \"export</w>\": 14444,\n  \"exporting</w>\": 47433,\n  \"exports</w>\": 20088,\n  \"expose</w>\": 23181,\n  \"exposed</w>\": 12180,\n  \"exposes</w>\": 33575,\n  \"exposing</w>\": 28362,\n  \"exposition</w>\": 36943,\n  \"exposure</w>\": 11903,\n  \"expre\": 6085,\n  \"express\": 18553,\n  \"express</w>\": 5642,\n  \"expressed</w>\": 20777,\n  \"expresses</w>\": 31931,\n  \"expressing</w>\": 30207,\n  \"expression</w>\": 11357,\n  \"expressions</w>\": 20314,\n  \"expressive</w>\": 42060,\n  \"expressway</w>\": 31658,\n  \"exquis\": 16575,\n  \"exquisite</w>\": 17958,\n  \"ext\": 5711,\n  \"ext</w>\": 20072,\n  \"exten\": 5555,\n  \"extend</w>\": 14492,\n  \"extended</w>\": 9614,\n  \"extending</w>\": 25652,\n  \"extends</w>\": 20688,\n  \"extension</w>\": 10275,\n  \"extensions</w>\": 24525,\n  \"extensive</w>\": 16870,\n  \"extensively</w>\": 47365,\n  \"extent</w>\": 24913,\n  \"exter\": 9797,\n  \"exterior</w>\": 19352,\n  \"extermin\": 41671,\n  \"external</w>\": 15028,\n  \"extin\": 13553,\n  \"extinct</w>\": 24488,\n  \"extinction</w>\": 21186,\n  \"extingui\": 38567,\n  \"extor\": 35620,\n  \"extr\": 29082,\n  \"extra\": 6416,\n  \"extra</w>\": 4231,\n  \"extrac\": 18550,\n  \"extract</w>\": 18962,\n  \"extraction</w>\": 28789,\n  \"extracts</w>\": 45576,\n  \"extraordin\": 23628,\n  \"extraordinaire</w>\": 30909,\n  \"extraordinary</w>\": 10982,\n  \"extras</w>\": 29817,\n  \"extravag\": 22299,\n  \"extravaganza</w>\": 29461,\n  \"extre\": 3978,\n  \"extreme\": 38357,\n  \"extreme</w>\": 8331,\n  \"extremely</w>\": 6519,\n  \"extremism</w>\": 31493,\n  \"extremist</w>\": 36383,\n  \"extremists</w>\": 41425,\n  \"extru\": 43010,\n  \"ey\": 1541,\n  \"ey</w>\": 1477,\n  \"eyang</w>\": 28915,\n  \"eye\": 5034,\n  \"eye</w>\": 3272,\n  \"eyebrow</w>\": 34250,\n  \"eyebrows</w>\": 19923,\n  \"eyed</w>\": 15512,\n  \"eyeing</w>\": 34916,\n  \"eyel\": 17075,\n  \"eyelashes</w>\": 42074,\n  \"eyeliner</w>\": 33354,\n  \"eyeon</w>\": 25126,\n  \"eyes</w>\": 3095,\n  \"eyeshadow</w>\": 35213,\n  \"eyewear</w>\": 30165,\n  \"eyewitness</w>\": 36258,\n  \"eyou\": 31996,\n  \"eyour\": 40229,\n  \"eyre</w>\": 44115,\n  \"ez\": 10082,\n  \"ez</w>\": 8387,\n  \"eze\": 25993,\n  \"eze</w>\": 27229,\n  \"ezekiel</w>\": 41428,\n  \"ezra</w>\": 27552,\n  \"f\": 69,\n  \"f</w>\": 325,\n  \"fa\": 778,\n  \"fa</w>\": 2800,\n  \"faa</w>\": 27577,\n  \"fab\": 2833,\n  \"fab</w>\": 5492,\n  \"faber\": 43461,\n  \"faber</w>\": 42488,\n  \"fabi\": 29425,\n  \"fabian</w>\": 34539,\n  \"fabio</w>\": 31666,\n  \"fabric\": 16217,\n  \"fabric</w>\": 10033,\n  \"fabricated</w>\": 40851,\n  \"fabrication</w>\": 33476,\n  \"fabrics</w>\": 23159,\n  \"fabulous</w>\": 5189,\n  \"fac\": 1053,\n  \"fac</w>\": 35438,\n  \"facade</w>\": 29217,\n  \"face\": 2545,\n  \"face</w>\": 1710,\n  \"facebook\": 36156,\n  \"facebook</w>\": 2943,\n  \"faced</w>\": 10941,\n  \"faceli\": 32023,\n  \"facelift</w>\": 36380,\n  \"faceoff</w>\": 42710,\n  \"facep\": 45285,\n  \"faces</w>\": 4905,\n  \"faceted</w>\": 43435,\n  \"facetime</w>\": 24076,\n  \"facial</w>\": 11909,\n  \"facil\": 39973,\n  \"facilit\": 13567,\n  \"facilitate</w>\": 26733,\n  \"facilitated</w>\": 43853,\n  \"facilitating</w>\": 34796,\n  \"facilities</w>\": 10388,\n  \"facility</w>\": 8165,\n  \"facing</w>\": 7619,\n  \"fact\": 17189,\n  \"fact</w>\": 3598,\n  \"factfriday</w>\": 27953,\n  \"faction</w>\": 14629,\n  \"factor\": 21082,\n  \"factor</w>\": 8124,\n  \"factories</w>\": 36492,\n  \"factors</w>\": 12733,\n  \"factory\": 42483,\n  \"factory</w>\": 6072,\n  \"facts</w>\": 5085,\n  \"factual</w>\": 45471,\n  \"faculty</w>\": 9504,\n  \"facup</w>\": 25283,\n  \"fad\": 12632,\n  \"fad</w>\": 47669,\n  \"fade</w>\": 20486,\n  \"faded</w>\": 26051,\n  \"fades</w>\": 40441,\n  \"fading</w>\": 32882,\n  \"fadnavis</w>\": 38945,\n  \"faf\": 31052,\n  \"faf</w>\": 43903,\n  \"fag\": 25617,\n  \"fag</w>\": 39305,\n  \"fah\": 25495,\n  \"fah</w>\": 35429,\n  \"fahren\": 45527,\n  \"fai\": 20519,\n  \"fai</w>\": 26384,\n  \"fail\": 7105,\n  \"fail</w>\": 6801,\n  \"failed</w>\": 8314,\n  \"failing</w>\": 15757,\n  \"fails</w>\": 13388,\n  \"failure</w>\": 8732,\n  \"failures</w>\": 25442,\n  \"faint</w>\": 30807,\n  \"fair\": 3031,\n  \"fair</w>\": 2849,\n  \"fairbanks</w>\": 43962,\n  \"faire\": 34745,\n  \"faire</w>\": 20798,\n  \"fairfax</w>\": 29368,\n  \"fairfield</w>\": 29664,\n  \"fairgrounds</w>\": 38325,\n  \"fairi\": 28884,\n  \"fairies</w>\": 33590,\n  \"fairly</w>\": 14961,\n  \"fairmont</w>\": 41547,\n  \"fairness</w>\": 29388,\n  \"fairs</w>\": 8655,\n  \"fairtrade</w>\": 33361,\n  \"fairview</w>\": 43479,\n  \"fairway</w>\": 44022,\n  \"fairy\": 17021,\n  \"fairy</w>\": 10444,\n  \"fairytale</w>\": 28944,\n  \"fais\": 23542,\n  \"faisal</w>\": 35459,\n  \"fait</w>\": 20567,\n  \"faith\": 10653,\n  \"faith</w>\": 5080,\n  \"faithful</w>\": 15511,\n  \"faiz\": 41775,\n  \"fake\": 18794,\n  \"fake</w>\": 5777,\n  \"faken\": 22853,\n  \"fakenews</w>\": 26943,\n  \"fakespeare</w>\": 49095,\n  \"fal\": 2778,\n  \"fal</w>\": 40494,\n  \"fala\": 47120,\n  \"falcon\": 22498,\n  \"falcon</w>\": 13571,\n  \"falcons</w>\": 13834,\n  \"falk\": 34648,\n  \"falkirk</w>\": 44080,\n  \"fall\": 6489,\n  \"fall</w>\": 2359,\n  \"fallen</w>\": 8688,\n  \"falling\": 48709,\n  \"falling</w>\": 7293,\n  \"fallon\": 39596,\n  \"fallon</w>\": 21281,\n  \"fallontonight</w>\": 44627,\n  \"fallout\": 49365,\n  \"fallout</w>\": 16009,\n  \"falls</w>\": 4778,\n  \"falmouth</w>\": 38261,\n  \"false\": 38948,\n  \"false</w>\": 9078,\n  \"falsely</w>\": 42321,\n  \"fam\": 1058,\n  \"fam</w>\": 5128,\n  \"fame</w>\": 6573,\n  \"famed</w>\": 23302,\n  \"famer</w>\": 24554,\n  \"famil\": 3395,\n  \"famili\": 8488,\n  \"familia</w>\": 25622,\n  \"familiar</w>\": 10020,\n  \"families</w>\": 4612,\n  \"family\": 8137,\n  \"family</w>\": 1315,\n  \"familyfun</w>\": 46308,\n  \"familytime</w>\": 47236,\n  \"familytravel</w>\": 38222,\n  \"famine</w>\": 35847,\n  \"famous\": 44811,\n  \"famous</w>\": 4096,\n  \"famously</w>\": 44505,\n  \"fan\": 1675,\n  \"fan</w>\": 2261,\n  \"fanart\": 41059,\n  \"fanart</w>\": 7855,\n  \"fanartfriday</w>\": 45346,\n  \"fanatic</w>\": 36643,\n  \"fanatics</w>\": 39610,\n  \"fanbase</w>\": 36921,\n  \"fanboy</w>\": 43369,\n  \"fanc\": 29017,\n  \"fancafe</w>\": 45080,\n  \"fanci\": 35908,\n  \"fanclub</w>\": 31530,\n  \"fancy\": 47622,\n  \"fancy</w>\": 6733,\n  \"fand\": 19684,\n  \"fandom\": 47634,\n  \"fandom</w>\": 11534,\n  \"fanfest</w>\": 42916,\n  \"fanfic</w>\": 47243,\n  \"fang\": 14269,\n  \"fang</w>\": 27428,\n  \"fangirl</w>\": 28813,\n  \"fangirling</w>\": 39463,\n  \"fanning</w>\": 37282,\n  \"fanny</w>\": 30401,\n  \"fans\": 32454,\n  \"fans</w>\": 1840,\n  \"fansign</w>\": 25288,\n  \"fant\": 4467,\n  \"fanta\": 2703,\n  \"fantaken</w>\": 39412,\n  \"fantasia</w>\": 49306,\n  \"fantastic\": 31289,\n  \"fantastic</w>\": 2935,\n  \"fantasy\": 15124,\n  \"fantasy</w>\": 5267,\n  \"fantasyfootball</w>\": 35713,\n  \"fao</w>\": 31155,\n  \"faq</w>\": 28533,\n  \"far\": 1578,\n  \"far</w>\": 2384,\n  \"fara</w>\": 48562,\n  \"farage</w>\": 28340,\n  \"farah</w>\": 31547,\n  \"fare\": 8620,\n  \"fare</w>\": 6461,\n  \"fares</w>\": 27525,\n  \"farewell</w>\": 10734,\n  \"fargo</w>\": 18870,\n  \"fari\": 26197,\n  \"farley</w>\": 43761,\n  \"farm\": 9066,\n  \"farm</w>\": 3985,\n  \"farmer\": 19735,\n  \"farmer</w>\": 10474,\n  \"farmers\": 29752,\n  \"farmers</w>\": 6402,\n  \"farmersmarket</w>\": 41808,\n  \"farmhouse</w>\": 26293,\n  \"farming</w>\": 10399,\n  \"farmington</w>\": 49305,\n  \"farmland</w>\": 45258,\n  \"farms</w>\": 11277,\n  \"farn\": 27527,\n  \"faroo\": 39147,\n  \"farra\": 33657,\n  \"farrakhan</w>\": 46293,\n  \"farrell</w>\": 24234,\n  \"fart</w>\": 34664,\n  \"farther</w>\": 42233,\n  \"fas\": 4830,\n  \"fas</w>\": 42995,\n  \"fasci\": 17191,\n  \"fascin\": 7327,\n  \"fascinated</w>\": 32964,\n  \"fascinating</w>\": 8640,\n  \"fascism</w>\": 28213,\n  \"fascist</w>\": 23870,\n  \"fascists</w>\": 43598,\n  \"fash\": 42682,\n  \"fashi\": 2099,\n  \"fashion\": 6976,\n  \"fashion</w>\": 2444,\n  \"fashionable</w>\": 24597,\n  \"fashionblogger</w>\": 31726,\n  \"fashioned</w>\": 21563,\n  \"fashioni\": 26062,\n  \"fashionista</w>\": 30415,\n  \"fashions</w>\": 37601,\n  \"fashionshow</w>\": 45653,\n  \"fashionweek</w>\": 28684,\n  \"fass\": 42398,\n  \"fast\": 8509,\n  \"fast</w>\": 1953,\n  \"fasten\": 44990,\n  \"faster</w>\": 8835,\n  \"fastest</w>\": 9808,\n  \"fasting</w>\": 24656,\n  \"fat\": 4751,\n  \"fat</w>\": 5484,\n  \"fatal</w>\": 12124,\n  \"fatalities</w>\": 44168,\n  \"fatally</w>\": 34069,\n  \"fate\": 26315,\n  \"fate</w>\": 11734,\n  \"father\": 11607,\n  \"father</w>\": 3224,\n  \"fathers</w>\": 12780,\n  \"fathersday</w>\": 16731,\n  \"fati\": 13430,\n  \"fatigue</w>\": 23747,\n  \"fatima</w>\": 28202,\n  \"fats</w>\": 30151,\n  \"fatt\": 44131,\n  \"fatty</w>\": 22953,\n  \"fau\": 5571,\n  \"fau</w>\": 31381,\n  \"faucet</w>\": 44273,\n  \"faul\": 16230,\n  \"faulkner</w>\": 37840,\n  \"fault</w>\": 13862,\n  \"faults</w>\": 42752,\n  \"faulty</w>\": 47103,\n  \"fauna</w>\": 30808,\n  \"faust</w>\": 44772,\n  \"faux</w>\": 19429,\n  \"fav\": 1355,\n  \"fav</w>\": 5426,\n  \"fave</w>\": 7272,\n  \"faves</w>\": 18003,\n  \"favor\": 1766,\n  \"favor</w>\": 12160,\n  \"favorable</w>\": 35392,\n  \"favored</w>\": 46640,\n  \"favorite\": 35262,\n  \"favorite</w>\": 1916,\n  \"favorited</w>\": 36926,\n  \"favorites</w>\": 10564,\n  \"favors</w>\": 36085,\n  \"favour\": 3111,\n  \"favour</w>\": 20469,\n  \"favourite</w>\": 3342,\n  \"favourites</w>\": 16585,\n  \"favs</w>\": 18879,\n  \"faw\": 21800,\n  \"fawad\": 46425,\n  \"fawn</w>\": 48624,\n  \"fax\": 32535,\n  \"fax</w>\": 9337,\n  \"fay\": 8939,\n  \"fay</w>\": 40074,\n  \"faye</w>\": 30257,\n  \"fayette\": 32043,\n  \"fayette</w>\": 19782,\n  \"fayetteville</w>\": 37771,\n  \"fayre</w>\": 34982,\n  \"faz\": 26238,\n  \"faze</w>\": 44880,\n  \"fb\": 22637,\n  \"fb</w>\": 3307,\n  \"fball</w>\": 29663,\n  \"fbf</w>\": 20004,\n  \"fbi</w>\": 10293,\n  \"fbloggers</w>\": 41389,\n  \"fbs</w>\": 48454,\n  \"fc\": 4278,\n  \"fc</w>\": 1399,\n  \"fca</w>\": 24540,\n  \"fcb\": 26639,\n  \"fcb</w>\": 25045,\n  \"fcbarcelona</w>\": 32174,\n  \"fcbayern</w>\": 35033,\n  \"fcblive</w>\": 44608,\n  \"fcc</w>\": 21240,\n  \"fck\": 40080,\n  \"fck</w>\": 49263,\n  \"fcofficial</w>\": 27805,\n  \"fcs</w>\": 32095,\n  \"fcu</w>\": 47898,\n  \"fd\": 16972,\n  \"fd</w>\": 11525,\n  \"fda</w>\": 17823,\n  \"fdi</w>\": 45579,\n  \"fdn</w>\": 18563,\n  \"fdny</w>\": 41084,\n  \"fdr</w>\": 42298,\n  \"fe\": 623,\n  \"fe</w>\": 873,\n  \"fear\": 8744,\n  \"fear</w>\": 5402,\n  \"feared</w>\": 31154,\n  \"fearless</w>\": 17470,\n  \"fears</w>\": 13867,\n  \"fearthe\": 33449,\n  \"feasi\": 34977,\n  \"feast\": 37963,\n  \"feast</w>\": 9564,\n  \"feat\": 1703,\n  \"feat</w>\": 5611,\n  \"feather\": 24905,\n  \"feather</w>\": 17871,\n  \"feathers</w>\": 21138,\n  \"featherweight</w>\": 44939,\n  \"feature\": 30413,\n  \"feature</w>\": 4527,\n  \"featured</w>\": 4743,\n  \"features</w>\": 4643,\n  \"featuring</w>\": 3706,\n  \"feb</w>\": 4317,\n  \"febru\": 4202,\n  \"february</w>\": 4248,\n  \"fect</w>\": 31293,\n  \"fed\": 22518,\n  \"fed</w>\": 7035,\n  \"feder\": 4737,\n  \"federal</w>\": 6369,\n  \"federation</w>\": 15530,\n  \"federer</w>\": 18246,\n  \"federico</w>\": 40539,\n  \"fedex</w>\": 32603,\n  \"fedora</w>\": 45111,\n  \"feds</w>\": 30593,\n  \"fee\": 28242,\n  \"fee</w>\": 9224,\n  \"feed\": 6662,\n  \"feed</w>\": 5839,\n  \"feedback</w>\": 8683,\n  \"feeder</w>\": 24482,\n  \"feeders</w>\": 44523,\n  \"feeding</w>\": 9879,\n  \"feeds</w>\": 21788,\n  \"feel\": 2408,\n  \"feel</w>\": 2051,\n  \"feelin</w>\": 19903,\n  \"feeling\": 33087,\n  \"feeling</w>\": 3045,\n  \"feelings</w>\": 9452,\n  \"feels</w>\": 4808,\n  \"feelthe\": 22322,\n  \"feelthebern</w>\": 27743,\n  \"fees</w>\": 11765,\n  \"feet</w>\": 4804,\n  \"fei\": 23441,\n  \"fei</w>\": 34217,\n  \"fein\": 46707,\n  \"feinstein</w>\": 41313,\n  \"fel\": 2081,\n  \"fel</w>\": 20304,\n  \"feld\": 45913,\n  \"feld</w>\": 14219,\n  \"feldman</w>\": 41942,\n  \"feli\": 7498,\n  \"felic\": 25845,\n  \"felici\": 23379,\n  \"felicia</w>\": 41139,\n  \"felicidades</w>\": 41648,\n  \"felicity</w>\": 35123,\n  \"feline</w>\": 29471,\n  \"felipe</w>\": 27681,\n  \"felix\": 33455,\n  \"felix</w>\": 16514,\n  \"feliz\": 26104,\n  \"feliz</w>\": 20221,\n  \"fell\": 33540,\n  \"fell</w>\": 6266,\n  \"fella</w>\": 17586,\n  \"fellas</w>\": 18787,\n  \"feller</w>\": 29226,\n  \"fellow\": 12099,\n  \"fellow</w>\": 5242,\n  \"fellows</w>\": 15766,\n  \"fellowship</w>\": 13857,\n  \"felony</w>\": 31068,\n  \"felt</w>\": 5413,\n  \"fem\": 24574,\n  \"fem</w>\": 36615,\n  \"fema</w>\": 41721,\n  \"female\": 22062,\n  \"female</w>\": 3970,\n  \"females</w>\": 21028,\n  \"femi</w>\": 38607,\n  \"femin\": 11423,\n  \"femini\": 11894,\n  \"feminine</w>\": 24911,\n  \"feminism</w>\": 18784,\n  \"feminist</w>\": 14921,\n  \"feminists</w>\": 38809,\n  \"femme</w>\": 31331,\n  \"fen\": 5509,\n  \"fen</w>\": 25024,\n  \"fence</w>\": 12679,\n  \"fences</w>\": 34312,\n  \"fencing</w>\": 23489,\n  \"fender</w>\": 17117,\n  \"fener\": 41208,\n  \"fenerbah\": 46652,\n  \"feng</w>\": 33291,\n  \"fennel</w>\": 28689,\n  \"fent\": 26395,\n  \"fenton</w>\": 47265,\n  \"fenway</w>\": 29206,\n  \"fer\": 1765,\n  \"fer</w>\": 2897,\n  \"fera</w>\": 37705,\n  \"feral</w>\": 29972,\n  \"ferdin\": 25541,\n  \"ferdinand</w>\": 27591,\n  \"fere</w>\": 43144,\n  \"feren\": 35652,\n  \"ference</w>\": 19984,\n  \"ferg</w>\": 44938,\n  \"fergie</w>\": 39119,\n  \"fergu\": 10988,\n  \"fergus</w>\": 42041,\n  \"ferguson</w>\": 11904,\n  \"fermentation</w>\": 45817,\n  \"fermented</w>\": 36886,\n  \"fern\": 10747,\n  \"fern</w>\": 21685,\n  \"fernandes</w>\": 44391,\n  \"fernandez</w>\": 23436,\n  \"fernando</w>\": 17140,\n  \"ferns</w>\": 38277,\n  \"feroci\": 45652,\n  \"ferr\": 7256,\n  \"ferra\": 47911,\n  \"ferrari</w>\": 9606,\n  \"ferre\": 29626,\n  \"ferred</w>\": 10432,\n  \"ferreira</w>\": 48686,\n  \"ferrell</w>\": 41112,\n  \"ferrer</w>\": 38904,\n  \"ferri\": 42008,\n  \"ferries</w>\": 28489,\n  \"ferris</w>\": 27532,\n  \"ferry\": 38936,\n  \"ferry</w>\": 10278,\n  \"fers</w>\": 12378,\n  \"fert\": 14925,\n  \"fert</w>\": 43662,\n  \"fertil\": 41987,\n  \"fertile</w>\": 44837,\n  \"fertili\": 23912,\n  \"fertility</w>\": 23528,\n  \"fertilizer</w>\": 36786,\n  \"fery</w>\": 47448,\n  \"fes</w>\": 32300,\n  \"fest\": 17383,\n  \"fest</w>\": 2590,\n  \"festa</w>\": 42124,\n  \"festi\": 1943,\n  \"festiv\": 19222,\n  \"festival\": 20946,\n  \"festival</w>\": 2240,\n  \"festivals</w>\": 17834,\n  \"festive</w>\": 9533,\n  \"festivities</w>\": 21020,\n  \"fet\": 21409,\n  \"feta</w>\": 31705,\n  \"fetal</w>\": 42031,\n  \"fetch</w>\": 30271,\n  \"fete</w>\": 34629,\n  \"fett</w>\": 37979,\n  \"fetus</w>\": 26768,\n  \"feu\": 24912,\n  \"feu</w>\": 32990,\n  \"feud</w>\": 27365,\n  \"fever\": 40896,\n  \"fever</w>\": 9989,\n  \"fevre</w>\": 43861,\n  \"few</w>\": 1939,\n  \"fewer</w>\": 19128,\n  \"fex\": 41584,\n  \"fex</w>\": 26392,\n  \"fey\": 39069,\n  \"fey</w>\": 23298,\n  \"fez</w>\": 43081,\n  \"ff\": 1021,\n  \"ff</w>\": 1304,\n  \"ffa</w>\": 15355,\n  \"ffame</w>\": 42873,\n  \"ffc</w>\": 19832,\n  \"ffe\": 1138,\n  \"ffe</w>\": 8631,\n  \"ffect</w>\": 29151,\n  \"ffed</w>\": 8448,\n  \"ffee</w>\": 26377,\n  \"ffel</w>\": 22656,\n  \"ffen</w>\": 46537,\n  \"ffer\": 27369,\n  \"ffer</w>\": 11636,\n  \"ffers</w>\": 32163,\n  \"fferty</w>\": 44771,\n  \"ffes</w>\": 46441,\n  \"ffey</w>\": 30138,\n  \"fff</w>\": 28106,\n  \"ffi\": 19961,\n  \"ffic\": 4762,\n  \"ffice</w>\": 26044,\n  \"ffici\": 3639,\n  \"fficial\": 39818,\n  \"fficial</w>\": 6463,\n  \"fficiency</w>\": 27800,\n  \"fficient</w>\": 20424,\n  \"ffin\": 12779,\n  \"ffin</w>\": 7367,\n  \"ffing</w>\": 16592,\n  \"ffins</w>\": 17898,\n  \"ffl</w>\": 39490,\n  \"ffle</w>\": 7749,\n  \"ffler</w>\": 39819,\n  \"ffles</w>\": 19344,\n  \"ffman</w>\": 15823,\n  \"ffo</w>\": 42264,\n  \"ffs</w>\": 4424,\n  \"ffxiv</w>\": 26569,\n  \"ffxv</w>\": 46786,\n  \"ffy\": 26404,\n  \"ffy</w>\": 7795,\n  \"fg\": 45977,\n  \"fg</w>\": 6823,\n  \"fgm</w>\": 32178,\n  \"fgo</w>\": 46113,\n  \"fh\": 21649,\n  \"fh</w>\": 21010,\n  \"fhs</w>\": 45094,\n  \"fi\": 701,\n  \"fi</w>\": 3589,\n  \"fia</w>\": 8827,\n  \"fiable</w>\": 34373,\n  \"fianc\": 27752,\n  \"fiance</w>\": 44114,\n  \"fiancÃ©</w>\": 34039,\n  \"fiasco</w>\": 40944,\n  \"fiat</w>\": 16740,\n  \"fiawec</w>\": 39485,\n  \"fib</w>\": 40594,\n  \"fiba</w>\": 34993,\n  \"fiber\": 35074,\n  \"fiber</w>\": 12612,\n  \"fibers</w>\": 44587,\n  \"fibre</w>\": 21401,\n  \"fibro\": 21294,\n  \"fibrosis</w>\": 36307,\n  \"fic\": 1788,\n  \"fic</w>\": 2059,\n  \"fica</w>\": 26952,\n  \"fically</w>\": 14854,\n  \"fication</w>\": 4523,\n  \"fications</w>\": 12512,\n  \"ficial</w>\": 48192,\n  \"fics</w>\": 42505,\n  \"fiction</w>\": 6218,\n  \"fictional</w>\": 25570,\n  \"fid\": 34197,\n  \"fid</w>\": 23966,\n  \"fidd\": 25218,\n  \"fiddle</w>\": 35968,\n  \"fide</w>\": 45375,\n  \"fidel\": 21740,\n  \"fidel</w>\": 36837,\n  \"fidelity</w>\": 30109,\n  \"fidget</w>\": 48664,\n  \"fie\": 28487,\n  \"fie</w>\": 10348,\n  \"fied\": 29642,\n  \"fied</w>\": 2853,\n  \"fiel\": 1361,\n  \"field\": 7571,\n  \"field</w>\": 1570,\n  \"fielder</w>\": 11046,\n  \"fieldhouse</w>\": 37969,\n  \"fielding</w>\": 30465,\n  \"fields</w>\": 6494,\n  \"fieldwork</w>\": 33155,\n  \"fiends</w>\": 37869,\n  \"fier\": 11167,\n  \"fier</w>\": 10598,\n  \"fierc\": 48609,\n  \"fierce</w>\": 13896,\n  \"fiercely</w>\": 49039,\n  \"fiers</w>\": 16113,\n  \"fiery</w>\": 24557,\n  \"fies</w>\": 9537,\n  \"fiesta</w>\": 14580,\n  \"fif\": 5309,\n  \"fifa\": 21976,\n  \"fifa</w>\": 8516,\n  \"fifaworldcup</w>\": 38819,\n  \"fifawwc</w>\": 41329,\n  \"fife</w>\": 24374,\n  \"fifteen</w>\": 29504,\n  \"fifth\": 25515,\n  \"fifth</w>\": 8772,\n  \"fifthharmony</w>\": 31075,\n  \"fifty\": 24456,\n  \"fifty</w>\": 15978,\n  \"fig\": 4814,\n  \"fig</w>\": 20719,\n  \"figaro</w>\": 48044,\n  \"figh\": 23274,\n  \"fight\": 5262,\n  \"fight</w>\": 2757,\n  \"fighter\": 35884,\n  \"fighter</w>\": 6438,\n  \"fighters</w>\": 7371,\n  \"fightfor\": 48909,\n  \"fightfor</w>\": 35740,\n  \"fighting\": 38625,\n  \"fighting</w>\": 4652,\n  \"fighton</w>\": 45578,\n  \"fights</w>\": 12132,\n  \"figs</w>\": 38882,\n  \"figu\": 6390,\n  \"figur\": 16948,\n  \"figurative</w>\": 44042,\n  \"figure\": 48820,\n  \"figure</w>\": 5274,\n  \"figured</w>\": 15630,\n  \"figures</w>\": 8739,\n  \"figurine</w>\": 33306,\n  \"figuring</w>\": 31513,\n  \"fiji\": 48270,\n  \"fiji</w>\": 18285,\n  \"fik</w>\": 46589,\n  \"fil\": 1142,\n  \"fil</w>\": 14915,\n  \"fila</w>\": 30992,\n  \"filament</w>\": 49252,\n  \"file\": 12545,\n  \"file</w>\": 4512,\n  \"filed</w>\": 13864,\n  \"files</w>\": 7850,\n  \"filet</w>\": 43155,\n  \"fili\": 9590,\n  \"filing</w>\": 16576,\n  \"filip\": 14368,\n  \"filipino</w>\": 19153,\n  \"fill\": 15904,\n  \"fill</w>\": 6277,\n  \"filled</w>\": 5589,\n  \"filler</w>\": 32816,\n  \"fillers</w>\": 45005,\n  \"fillet</w>\": 39276,\n  \"filling</w>\": 9736,\n  \"fillion</w>\": 38048,\n  \"fillmore</w>\": 43922,\n  \"fills</w>\": 21750,\n  \"filly</w>\": 27690,\n  \"film\": 5117,\n  \"film</w>\": 1860,\n  \"filmed</w>\": 15801,\n  \"filmfare</w>\": 42224,\n  \"filmfest</w>\": 24508,\n  \"filmfestival</w>\": 28066,\n  \"filming</w>\": 6866,\n  \"filmmaker</w>\": 17202,\n  \"filmmakers</w>\": 24896,\n  \"filmmaking</w>\": 18226,\n  \"films</w>\": 5370,\n  \"fils</w>\": 40271,\n  \"filter</w>\": 7541,\n  \"filtered</w>\": 29926,\n  \"filtering</w>\": 47770,\n  \"filters</w>\": 18385,\n  \"filth</w>\": 39713,\n  \"filthy</w>\": 26899,\n  \"filtr\": 21408,\n  \"filtration</w>\": 42036,\n  \"fim</w>\": 47525,\n  \"fin\": 735,\n  \"fin</w>\": 10663,\n  \"fina</w>\": 34497,\n  \"final\": 11968,\n  \"final</w>\": 1755,\n  \"finale</w>\": 7844,\n  \"finalfantasy</w>\": 44543,\n  \"finalfour</w>\": 46999,\n  \"finalist</w>\": 12620,\n  \"finalists</w>\": 13422,\n  \"finalized</w>\": 48930,\n  \"finally</w>\": 1992,\n  \"finals</w>\": 4536,\n  \"finan\": 4807,\n  \"finance</w>\": 6117,\n  \"finances</w>\": 28767,\n  \"financi\": 12846,\n  \"financial\": 19783,\n  \"financial</w>\": 4930,\n  \"financially</w>\": 28124,\n  \"financing</w>\": 18375,\n  \"finch</w>\": 18523,\n  \"find\": 18638,\n  \"find</w>\": 1416,\n  \"finder</w>\": 15045,\n  \"finders</w>\": 43884,\n  \"findia</w>\": 47064,\n  \"finding\": 37455,\n  \"finding</w>\": 6002,\n  \"findings</w>\": 16529,\n  \"findlay</w>\": 48227,\n  \"findom</w>\": 36463,\n  \"finds</w>\": 6680,\n  \"findyour\": 25936,\n  \"findyourpark</w>\": 38924,\n  \"fine\": 12042,\n  \"fine</w>\": 3797,\n  \"fineart\": 7484,\n  \"fineart</w>\": 16005,\n  \"fineartamerica</w>\": 7724,\n  \"fined</w>\": 20094,\n  \"finely</w>\": 46120,\n  \"finer</w>\": 36681,\n  \"fines</w>\": 25053,\n  \"finesse</w>\": 46047,\n  \"finest</w>\": 7707,\n  \"fing\": 6485,\n  \"fing</w>\": 17955,\n  \"finger\": 13480,\n  \"finger</w>\": 8895,\n  \"fingerprint</w>\": 39579,\n  \"fingers</w>\": 9690,\n  \"fini\": 2405,\n  \"finish\": 42178,\n  \"finish</w>\": 3958,\n  \"finished</w>\": 3078,\n  \"finisher</w>\": 38636,\n  \"finishers</w>\": 48661,\n  \"finishes</w>\": 13078,\n  \"finishing</w>\": 7912,\n  \"finite</w>\": 48312,\n  \"finity\": 41463,\n  \"finity</w>\": 21273,\n  \"fink</w>\": 40158,\n  \"finland</w>\": 10775,\n  \"finley</w>\": 41652,\n  \"finn\": 28479,\n  \"finn</w>\": 16925,\n  \"finna</w>\": 35180,\n  \"finnish</w>\": 19616,\n  \"fino</w>\": 30083,\n  \"fins</w>\": 32810,\n  \"fintech\": 48929,\n  \"fintech</w>\": 8899,\n  \"fion\": 27476,\n  \"fiona</w>\": 20099,\n  \"fior\": 37086,\n  \"fiore</w>\": 44997,\n  \"fioren\": 33188,\n  \"fiorentina</w>\": 43713,\n  \"fios</w>\": 42521,\n  \"fir\": 770,\n  \"fir</w>\": 16233,\n  \"fire\": 2951,\n  \"fire</w>\": 1769,\n  \"firearm</w>\": 40311,\n  \"firearms</w>\": 23960,\n  \"fireball</w>\": 40543,\n  \"firec\": 42806,\n  \"fired</w>\": 8846,\n  \"firefighter</w>\": 20498,\n  \"firefighters</w>\": 12600,\n  \"firefly</w>\": 33997,\n  \"firefox</w>\": 35372,\n  \"fireman</w>\": 46085,\n  \"firen\": 34752,\n  \"firenze</w>\": 38445,\n  \"fireplace</w>\": 23050,\n  \"fires</w>\": 8749,\n  \"fireside</w>\": 36185,\n  \"firework</w>\": 40750,\n  \"fireworks</w>\": 10641,\n  \"firing</w>\": 15105,\n  \"firm\": 16936,\n  \"firm</w>\": 7705,\n  \"firmly</w>\": 29156,\n  \"firms</w>\": 13655,\n  \"firmware</w>\": 42691,\n  \"first\": 6853,\n  \"first</w>\": 874,\n  \"firstdayof\": 44297,\n  \"firsth\": 48512,\n  \"firsts</w>\": 47884,\n  \"firth</w>\": 26078,\n  \"fis\": 7846,\n  \"fis</w>\": 47683,\n  \"fiscal</w>\": 20825,\n  \"fischer</w>\": 26532,\n  \"fish\": 6431,\n  \"fish</w>\": 2759,\n  \"fisher\": 11175,\n  \"fisher</w>\": 9176,\n  \"fisheries</w>\": 24612,\n  \"fisherman</w>\": 25055,\n  \"fishermen</w>\": 28547,\n  \"fishers</w>\": 42065,\n  \"fishery</w>\": 49057,\n  \"fishes</w>\": 35470,\n  \"fishing\": 31703,\n  \"fishing</w>\": 4935,\n  \"fishy</w>\": 35665,\n  \"fist\": 48340,\n  \"fist</w>\": 17085,\n  \"fit\": 2366,\n  \"fit</w>\": 2478,\n  \"fitbit</w>\": 33768,\n  \"fitch</w>\": 44614,\n  \"fitfam</w>\": 20662,\n  \"fitnes\": 47285,\n  \"fitness\": 20044,\n  \"fitness</w>\": 4838,\n  \"fits</w>\": 6401,\n  \"fitt\": 32994,\n  \"fitted</w>\": 14863,\n  \"fitter</w>\": 42096,\n  \"fitters</w>\": 32364,\n  \"fitting</w>\": 11769,\n  \"fittings</w>\": 45787,\n  \"fitz\": 11120,\n  \"fitz</w>\": 25913,\n  \"fitzgerald</w>\": 20606,\n  \"fitzpatrick</w>\": 37141,\n  \"fiu</w>\": 38374,\n  \"five\": 19508,\n  \"five</w>\": 3127,\n  \"fives</w>\": 44066,\n  \"fix\": 4596,\n  \"fix</w>\": 6028,\n  \"fixed</w>\": 9393,\n  \"fixes</w>\": 25473,\n  \"fixing</w>\": 17423,\n  \"fixture</w>\": 17317,\n  \"fixtures</w>\": 19904,\n  \"fizz</w>\": 31242,\n  \"fj\": 43183,\n  \"fj</w>\": 46447,\n  \"fjor\": 31260,\n  \"fk</w>\": 12410,\n  \"fl\": 1082,\n  \"fl</w>\": 2685,\n  \"fla\": 1577,\n  \"fla</w>\": 20292,\n  \"flag\": 11536,\n  \"flag</w>\": 4859,\n  \"flagged</w>\": 45012,\n  \"flags</w>\": 12221,\n  \"flagship</w>\": 19779,\n  \"flagstaff</w>\": 40406,\n  \"flair</w>\": 24938,\n  \"flake</w>\": 21221,\n  \"flakes</w>\": 20934,\n  \"flam\": 10559,\n  \"flame\": 40351,\n  \"flame</w>\": 13484,\n  \"flamen\": 28826,\n  \"flamenco</w>\": 37362,\n  \"flames</w>\": 13441,\n  \"flamin\": 42693,\n  \"flaming</w>\": 34782,\n  \"flamingo</w>\": 30323,\n  \"flan\": 14572,\n  \"flanagan</w>\": 28641,\n  \"flanders</w>\": 34837,\n  \"flank</w>\": 44553,\n  \"flann\": 39510,\n  \"flannel</w>\": 37807,\n  \"flap</w>\": 35253,\n  \"flappy</w>\": 40241,\n  \"flare</w>\": 21185,\n  \"flares</w>\": 46088,\n  \"flash\": 6089,\n  \"flash</w>\": 5815,\n  \"flashback\": 14616,\n  \"flashback</w>\": 11988,\n  \"flashbackfriday</w>\": 15014,\n  \"flashbacks</w>\": 47056,\n  \"flashes</w>\": 31259,\n  \"flashing</w>\": 31764,\n  \"flashlight</w>\": 37256,\n  \"flask</w>\": 36194,\n  \"flat\": 8986,\n  \"flat</w>\": 6313,\n  \"flats</w>\": 17228,\n  \"flatt\": 45498,\n  \"flattering</w>\": 43267,\n  \"flaun\": 41421,\n  \"flav\": 7191,\n  \"flavo\": 28895,\n  \"flavor\": 31835,\n  \"flavor</w>\": 11818,\n  \"flavored</w>\": 29350,\n  \"flavorful</w>\": 49135,\n  \"flavors</w>\": 16930,\n  \"flavour</w>\": 17026,\n  \"flavoured</w>\": 42397,\n  \"flavours</w>\": 21083,\n  \"flaw\": 14268,\n  \"flaw</w>\": 34978,\n  \"flawed</w>\": 35136,\n  \"flawless</w>\": 15531,\n  \"flaws</w>\": 30492,\n  \"flax</w>\": 43443,\n  \"fle\": 2428,\n  \"fle</w>\": 44964,\n  \"flea</w>\": 24883,\n  \"fleck</w>\": 28143,\n  \"fled</w>\": 26731,\n  \"flee\": 19427,\n  \"flee</w>\": 30167,\n  \"fleece</w>\": 25038,\n  \"fleeing</w>\": 30543,\n  \"fleek</w>\": 43513,\n  \"fleet\": 35922,\n  \"fleet</w>\": 9147,\n  \"fleetwood</w>\": 28883,\n  \"fleming</w>\": 25769,\n  \"fler</w>\": 48789,\n  \"flesh</w>\": 17495,\n  \"flet\": 16102,\n  \"fletcher</w>\": 19810,\n  \"fleur</w>\": 28593,\n  \"flew</w>\": 13768,\n  \"flex\": 16426,\n  \"flex</w>\": 12038,\n  \"flexi\": 10032,\n  \"flexibility</w>\": 22547,\n  \"flexible</w>\": 14502,\n  \"flexing</w>\": 48483,\n  \"fli\": 2472,\n  \"flick\": 13746,\n  \"flick</w>\": 23414,\n  \"flickr</w>\": 17755,\n  \"flies</w>\": 8070,\n  \"flight\": 24701,\n  \"flight</w>\": 3795,\n  \"flights</w>\": 10515,\n  \"flin\": 24730,\n  \"flin</w>\": 43816,\n  \"flinders</w>\": 44647,\n  \"fling</w>\": 22768,\n  \"flint\": 28306,\n  \"flint</w>\": 18324,\n  \"flip\": 20385,\n  \"flip</w>\": 11035,\n  \"flipk\": 30829,\n  \"flipkart</w>\": 33154,\n  \"flipped</w>\": 28144,\n  \"flipping</w>\": 25881,\n  \"flips</w>\": 35089,\n  \"flir\": 24330,\n  \"flirt</w>\": 38352,\n  \"flirting</w>\": 35243,\n  \"flix</w>\": 40663,\n  \"flo\": 1945,\n  \"flo</w>\": 20711,\n  \"float</w>\": 16123,\n  \"floating</w>\": 12619,\n  \"floats</w>\": 33272,\n  \"flock\": 36297,\n  \"flock</w>\": 21822,\n  \"flondon</w>\": 47366,\n  \"floo\": 4062,\n  \"flood\": 23793,\n  \"flood</w>\": 7148,\n  \"flooded</w>\": 19706,\n  \"flooding</w>\": 10204,\n  \"floods</w>\": 16369,\n  \"floor\": 23657,\n  \"floor</w>\": 4125,\n  \"flooring</w>\": 19227,\n  \"floors</w>\": 15671,\n  \"flop</w>\": 22994,\n  \"floppy</w>\": 38267,\n  \"flops</w>\": 29146,\n  \"flor\": 15784,\n  \"flor</w>\": 41669,\n  \"flora</w>\": 18906,\n  \"floral</w>\": 10732,\n  \"florals</w>\": 48331,\n  \"floren\": 37706,\n  \"florence</w>\": 11617,\n  \"flores</w>\": 21537,\n  \"flori\": 3482,\n  \"florian</w>\": 41861,\n  \"florida\": 34264,\n  \"florida</w>\": 3966,\n  \"florist</w>\": 38403,\n  \"floss</w>\": 36453,\n  \"flotus</w>\": 35181,\n  \"flour</w>\": 18592,\n  \"flouri\": 23239,\n  \"flourish</w>\": 36038,\n  \"flow\": 2180,\n  \"flow</w>\": 5608,\n  \"flower\": 12772,\n  \"flower</w>\": 4055,\n  \"flowering</w>\": 19953,\n  \"flowers</w>\": 4023,\n  \"flowing</w>\": 14922,\n  \"flown</w>\": 25659,\n  \"flows</w>\": 16715,\n  \"floyd\": 46369,\n  \"floyd</w>\": 13656,\n  \"flu\": 3698,\n  \"flu</w>\": 13528,\n  \"fluctu\": 40181,\n  \"fluence</w>\": 38169,\n  \"fluent</w>\": 30025,\n  \"fluff</w>\": 31174,\n  \"fluffy\": 40346,\n  \"fluffy</w>\": 17054,\n  \"fluid\": 43803,\n  \"fluid</w>\": 16717,\n  \"fluids</w>\": 41490,\n  \"fluor\": 45127,\n  \"fluore\": 26974,\n  \"fluorescent</w>\": 35036,\n  \"fluori\": 45611,\n  \"flur\": 31591,\n  \"flush</w>\": 25777,\n  \"flushing</w>\": 43754,\n  \"flute</w>\": 23746,\n  \"flux</w>\": 25249,\n  \"flwx</w>\": 30907,\n  \"fly\": 5666,\n  \"fly</w>\": 3228,\n  \"flye\": 30873,\n  \"flyeagles\": 39927,\n  \"flyeaglesfly</w>\": 39931,\n  \"flyer</w>\": 11875,\n  \"flyers</w>\": 14181,\n  \"flyfishing</w>\": 31800,\n  \"flying\": 20782,\n  \"flying</w>\": 4610,\n  \"flyn\": 40676,\n  \"flynn</w>\": 15721,\n  \"flyo\": 33506,\n  \"flyover</w>\": 38083,\n  \"fm\": 13715,\n  \"fm</w>\": 3689,\n  \"fman</w>\": 25152,\n  \"fml</w>\": 26730,\n  \"fmr</w>\": 32875,\n  \"fn\": 22773,\n  \"fn</w>\": 21763,\n  \"fnc</w>\": 46506,\n  \"fo\": 898,\n  \"fo</w>\": 6157,\n  \"foal</w>\": 40386,\n  \"foam\": 30039,\n  \"foam</w>\": 14587,\n  \"foamed</w>\": 26711,\n  \"fob</w>\": 40315,\n  \"focal</w>\": 30934,\n  \"focu\": 5827,\n  \"focus</w>\": 4353,\n  \"focused</w>\": 9319,\n  \"focuses</w>\": 20093,\n  \"focusing</w>\": 15551,\n  \"fod\": 31015,\n  \"fod</w>\": 43299,\n  \"fodils</w>\": 44411,\n  \"foe</w>\": 22952,\n  \"foes</w>\": 46279,\n  \"fog</w>\": 9417,\n  \"foggy</w>\": 19770,\n  \"foil</w>\": 17302,\n  \"fol\": 1106,\n  \"fol</w>\": 48616,\n  \"fold\": 35201,\n  \"fold</w>\": 11021,\n  \"foldable</w>\": 48307,\n  \"folded</w>\": 25233,\n  \"folder</w>\": 25717,\n  \"folding</w>\": 15464,\n  \"folds</w>\": 24266,\n  \"foley</w>\": 22850,\n  \"foli\": 7713,\n  \"folia</w>\": 48964,\n  \"foliage</w>\": 26350,\n  \"folio</w>\": 10772,\n  \"folk\": 10665,\n  \"folk</w>\": 6032,\n  \"folke\": 47190,\n  \"folkl\": 27273,\n  \"folklore\": 22133,\n  \"folklore</w>\": 28620,\n  \"folklorethursday</w>\": 23270,\n  \"folks</w>\": 5422,\n  \"follo\": 41417,\n  \"follow\": 1964,\n  \"follow</w>\": 1979,\n  \"followart</w>\": 40957,\n  \"followback</w>\": 33863,\n  \"followed</w>\": 6499,\n  \"follower</w>\": 17039,\n  \"followers</w>\": 4856,\n  \"following</w>\": 3473,\n  \"followme</w>\": 29668,\n  \"followparty</w>\": 44757,\n  \"follows</w>\": 11287,\n  \"followthe\": 30747,\n  \"folly</w>\": 41408,\n  \"folsom</w>\": 42108,\n  \"fom\": 34540,\n  \"fon\": 5017,\n  \"fon</w>\": 38318,\n  \"fond</w>\": 19964,\n  \"fonda</w>\": 44609,\n  \"fondue</w>\": 48321,\n  \"fone</w>\": 40672,\n  \"font\": 37610,\n  \"font</w>\": 16248,\n  \"fontaine</w>\": 37864,\n  \"fontana</w>\": 43643,\n  \"fontein</w>\": 45062,\n  \"fonts</w>\": 32801,\n  \"foo\": 1183,\n  \"foo</w>\": 23435,\n  \"food\": 4586,\n  \"food</w>\": 1559,\n  \"foodand\": 38317,\n  \"foodbank</w>\": 31926,\n  \"foodie\": 30762,\n  \"foodie</w>\": 9847,\n  \"foodies</w>\": 22416,\n  \"foodnetwork</w>\": 46793,\n  \"foods</w>\": 7057,\n  \"foodsecurity</w>\": 49329,\n  \"foodtruck</w>\": 47682,\n  \"fool\": 23959,\n  \"fool</w>\": 12212,\n  \"fooled</w>\": 28761,\n  \"fooling</w>\": 47964,\n  \"foolish</w>\": 33824,\n  \"fools</w>\": 15946,\n  \"foot\": 6702,\n  \"foot</w>\": 4738,\n  \"footage</w>\": 11130,\n  \"footb\": 33466,\n  \"football\": 9376,\n  \"football</w>\": 1882,\n  \"footballer</w>\": 20646,\n  \"footballers</w>\": 30269,\n  \"footed</w>\": 38040,\n  \"footh\": 25951,\n  \"foothills</w>\": 37020,\n  \"footpath</w>\": 48858,\n  \"footprint</w>\": 23206,\n  \"footprints</w>\": 39640,\n  \"footsteps</w>\": 27289,\n  \"footwear</w>\": 22772,\n  \"footy\": 39866,\n  \"footy</w>\": 18922,\n  \"for\": 645,\n  \"for</w>\": 556,\n  \"forage</w>\": 46871,\n  \"foraging</w>\": 39056,\n  \"forall</w>\": 17824,\n  \"forbe\": 49098,\n  \"forbes</w>\": 13925,\n  \"forbi\": 24754,\n  \"forbidden</w>\": 25164,\n  \"force\": 12068,\n  \"force</w>\": 2869,\n  \"forced</w>\": 8201,\n  \"forces</w>\": 5381,\n  \"forchange</w>\": 35848,\n  \"forcing</w>\": 21573,\n  \"ford\": 3751,\n  \"ford</w>\": 1623,\n  \"fordfc</w>\": 28581,\n  \"fordham</w>\": 48792,\n  \"fords</w>\": 29351,\n  \"fordshire</w>\": 14645,\n  \"fore\": 1484,\n  \"fore</w>\": 1332,\n  \"forec\": 34155,\n  \"forecast</w>\": 7361,\n  \"forecasting</w>\": 38133,\n  \"forecasts</w>\": 27696,\n  \"foreclo\": 44916,\n  \"forefront</w>\": 37679,\n  \"foreground</w>\": 35186,\n  \"forehead</w>\": 25394,\n  \"foreig\": 26497,\n  \"foreign\": 42255,\n  \"foreign</w>\": 6046,\n  \"foreigners</w>\": 38549,\n  \"foreman</w>\": 36174,\n  \"foremost</w>\": 42128,\n  \"foren\": 16526,\n  \"forensic</w>\": 23158,\n  \"forensics</w>\": 38763,\n  \"forest\": 18760,\n  \"forest</w>\": 4167,\n  \"forestation</w>\": 33939,\n  \"forestry</w>\": 26281,\n  \"forests</w>\": 14095,\n  \"forever\": 14748,\n  \"forever</w>\": 3225,\n  \"forevery\": 40605,\n  \"forex\": 40200,\n  \"forex</w>\": 17395,\n  \"forfe\": 44871,\n  \"forge</w>\": 19232,\n  \"forged</w>\": 28105,\n  \"forget\": 46153,\n  \"forget</w>\": 2678,\n  \"forgets</w>\": 35613,\n  \"forgetting</w>\": 25452,\n  \"forgi\": 22080,\n  \"forgive</w>\": 15332,\n  \"forgiven</w>\": 44894,\n  \"forgiveness</w>\": 23585,\n  \"forgood</w>\": 39169,\n  \"forgot</w>\": 6483,\n  \"forgotten</w>\": 7994,\n  \"fork\": 24501,\n  \"fork</w>\": 13700,\n  \"forkids</w>\": 48571,\n  \"forklift</w>\": 43202,\n  \"forks</w>\": 28769,\n  \"forlife</w>\": 17624,\n  \"form\": 1157,\n  \"form</w>\": 1907,\n  \"forma</w>\": 38829,\n  \"formal</w>\": 12978,\n  \"formally</w>\": 24867,\n  \"format\": 16252,\n  \"format</w>\": 11874,\n  \"formation</w>\": 2510,\n  \"formations</w>\": 37715,\n  \"formative</w>\": 48882,\n  \"formats</w>\": 32085,\n  \"forme</w>\": 42085,\n  \"formed</w>\": 6528,\n  \"former</w>\": 2276,\n  \"formerly</w>\": 20866,\n  \"formid\": 38599,\n  \"formidable</w>\": 39834,\n  \"forming</w>\": 15443,\n  \"formity</w>\": 42290,\n  \"forms</w>\": 5161,\n  \"formu\": 8689,\n  \"formul\": 23923,\n  \"formula\": 24485,\n  \"formula</w>\": 10776,\n  \"formulae</w>\": 34586,\n  \"formulated</w>\": 45066,\n  \"forre\": 38876,\n  \"forrest</w>\": 25205,\n  \"forrester</w>\": 45338,\n  \"forsa\": 48958,\n  \"forsale</w>\": 13303,\n  \"forster</w>\": 42923,\n  \"forsy\": 29629,\n  \"forsyth</w>\": 40952,\n  \"fort\": 12300,\n  \"fort</w>\": 2921,\n  \"forte\": 44350,\n  \"forte</w>\": 27367,\n  \"forth\": 17068,\n  \"forth</w>\": 11932,\n  \"forthcoming</w>\": 19989,\n  \"forthe\": 12521,\n  \"forti\": 26984,\n  \"fortified</w>\": 46486,\n  \"fortn\": 14428,\n  \"fortnight</w>\": 39235,\n  \"fortnite\": 38734,\n  \"fortnite</w>\": 17890,\n  \"fortress</w>\": 19988,\n  \"fortun\": 6950,\n  \"fortunate</w>\": 19898,\n  \"fortunately</w>\": 34358,\n  \"fortune\": 40931,\n  \"fortune</w>\": 11451,\n  \"fortunes</w>\": 41989,\n  \"forty</w>\": 24399,\n  \"forum\": 37851,\n  \"forum</w>\": 4538,\n  \"forums</w>\": 31518,\n  \"forwar\": 34364,\n  \"forward\": 47031,\n  \"forward</w>\": 2342,\n  \"forwards</w>\": 38974,\n  \"foryou</w>\": 35150,\n  \"forz\": 46056,\n  \"forza\": 33293,\n  \"forza</w>\": 28089,\n  \"fos\": 36925,\n  \"fos</w>\": 22081,\n  \"foss\": 14240,\n  \"foss</w>\": 37911,\n  \"fossil\": 20419,\n  \"fossil</w>\": 15202,\n  \"fossilfriday</w>\": 26079,\n  \"fossils</w>\": 30652,\n  \"foster\": 26778,\n  \"foster</w>\": 8139,\n  \"fostering</w>\": 35996,\n  \"fosters</w>\": 37644,\n  \"foto\": 15908,\n  \"foto</w>\": 12823,\n  \"fotogra\": 23687,\n  \"fotografia</w>\": 40256,\n  \"fotos</w>\": 26124,\n  \"fou\": 14516,\n  \"fought</w>\": 10844,\n  \"foul</w>\": 19784,\n  \"foun\": 3154,\n  \"found\": 3454,\n  \"found</w>\": 1546,\n  \"foundation</w>\": 4058,\n  \"foundations</w>\": 25219,\n  \"founded</w>\": 12240,\n  \"founder</w>\": 5145,\n  \"founders</w>\": 14602,\n  \"founding</w>\": 15317,\n  \"foundry</w>\": 31426,\n  \"fountain\": 44863,\n  \"fountain</w>\": 13405,\n  \"fountains</w>\": 37411,\n  \"four\": 5113,\n  \"four</w>\": 2721,\n  \"foursquare</w>\": 34484,\n  \"fourteen</w>\": 46255,\n  \"fourth</w>\": 7516,\n  \"fourthofjuly</w>\": 47805,\n  \"fow\": 17084,\n  \"fowl</w>\": 31685,\n  \"fowler</w>\": 20980,\n  \"fox\": 5007,\n  \"fox</w>\": 3240,\n  \"foxandfriends</w>\": 45841,\n  \"foxes</w>\": 24145,\n  \"foxnews</w>\": 18830,\n  \"foxsports</w>\": 39267,\n  \"foxtv</w>\": 49396,\n  \"foxx</w>\": 32993,\n  \"foxy</w>\": 27945,\n  \"foy</w>\": 30284,\n  \"foyer</w>\": 38011,\n  \"foyle</w>\": 47902,\n  \"fp\": 28058,\n  \"fp</w>\": 8941,\n  \"fpl</w>\": 27970,\n  \"fpp</w>\": 36464,\n  \"fps</w>\": 25300,\n  \"fpv</w>\": 43175,\n  \"fr\": 936,\n  \"fr</w>\": 5512,\n  \"fra\": 3368,\n  \"fra</w>\": 15644,\n  \"frac\": 15607,\n  \"fracking</w>\": 21894,\n  \"fractal</w>\": 46471,\n  \"fraction</w>\": 26788,\n  \"fractu\": 25847,\n  \"fracture</w>\": 28995,\n  \"fractured</w>\": 37421,\n  \"fractures</w>\": 46213,\n  \"frag\": 13093,\n  \"fragile</w>\": 23579,\n  \"fragment</w>\": 39209,\n  \"fragments</w>\": 41424,\n  \"fragr\": 15403,\n  \"fragrance</w>\": 17874,\n  \"fragrances</w>\": 44567,\n  \"fragrant</w>\": 37030,\n  \"fram\": 27987,\n  \"frame\": 11029,\n  \"frame</w>\": 6481,\n  \"framed</w>\": 13135,\n  \"frames</w>\": 15479,\n  \"framework</w>\": 13195,\n  \"frameworks</w>\": 43136,\n  \"framing</w>\": 24539,\n  \"frampton</w>\": 41733,\n  \"fran\": 2118,\n  \"fran</w>\": 18878,\n  \"franc\": 3872,\n  \"franc</w>\": 42340,\n  \"franca\": 48952,\n  \"france\": 12045,\n  \"france</w>\": 3552,\n  \"frances</w>\": 20803,\n  \"francesca</w>\": 32327,\n  \"francesco</w>\": 25816,\n  \"franch\": 11756,\n  \"franchi\": 46438,\n  \"franchise</w>\": 13664,\n  \"franci\": 46458,\n  \"francis\": 22187,\n  \"francis</w>\": 7660,\n  \"francisco</w>\": 6887,\n  \"franco\": 17934,\n  \"franco</w>\": 17052,\n  \"francois</w>\": 29317,\n  \"frank\": 5390,\n  \"frank</w>\": 5229,\n  \"franken\": 20487,\n  \"franken</w>\": 48252,\n  \"frankenstein</w>\": 26410,\n  \"frankfur\": 17442,\n  \"frankfurt</w>\": 18598,\n  \"franki\": 39227,\n  \"frankie\": 38373,\n  \"frankie</w>\": 16215,\n  \"franklin\": 40935,\n  \"franklin</w>\": 9999,\n  \"frankly</w>\": 38015,\n  \"franks</w>\": 42855,\n  \"frans</w>\": 47892,\n  \"franz</w>\": 25449,\n  \"franÃ§\": 38381,\n  \"fraser\": 39082,\n  \"fraser</w>\": 16754,\n  \"frat\": 15225,\n  \"frat</w>\": 39292,\n  \"fraternity</w>\": 24433,\n  \"frau\": 23063,\n  \"fraud\": 40647,\n  \"fraud</w>\": 9961,\n  \"fraudul\": 42655,\n  \"fraudulent</w>\": 47408,\n  \"fray</w>\": 41154,\n  \"frazier</w>\": 32841,\n  \"frc</w>\": 41507,\n  \"fre\": 821,\n  \"fre</w>\": 43165,\n  \"freak\": 20352,\n  \"freak</w>\": 13701,\n  \"freaked</w>\": 43511,\n  \"freakin</w>\": 23900,\n  \"freaking</w>\": 11992,\n  \"freaks</w>\": 27009,\n  \"freaky</w>\": 31583,\n  \"freck\": 33328,\n  \"freckles</w>\": 48036,\n  \"fred\": 9486,\n  \"fred</w>\": 6678,\n  \"freddie\": 41890,\n  \"freddie</w>\": 17014,\n  \"freddy</w>\": 24394,\n  \"freder\": 10745,\n  \"frederic</w>\": 41165,\n  \"frederick\": 37103,\n  \"frederick</w>\": 18570,\n  \"fredo</w>\": 48241,\n  \"free\": 2065,\n  \"free</w>\": 1139,\n  \"freebie</w>\": 35865,\n  \"freebies</w>\": 28630,\n  \"freec\": 46569,\n  \"freed\": 12585,\n  \"freed</w>\": 23392,\n  \"freedom\": 17992,\n  \"freedom</w>\": 4511,\n  \"freedoms</w>\": 32500,\n  \"freef\": 48678,\n  \"freel\": 14174,\n  \"freelance</w>\": 21942,\n  \"freely</w>\": 24436,\n  \"freeman</w>\": 16450,\n  \"freep\": 32499,\n  \"freepalestine</w>\": 39242,\n  \"freer\": 44676,\n  \"frees\": 27455,\n  \"freestyle</w>\": 15594,\n  \"freeway</w>\": 24927,\n  \"freeze</w>\": 14187,\n  \"freezer</w>\": 25390,\n  \"freezing</w>\": 12499,\n  \"frei\": 30183,\n  \"freight</w>\": 17023,\n  \"fremantle</w>\": 48012,\n  \"fremont</w>\": 34578,\n  \"fren\": 2919,\n  \"french\": 13118,\n  \"french</w>\": 3461,\n  \"frenzy</w>\": 30084,\n  \"frequ\": 9211,\n  \"frequencies</w>\": 45319,\n  \"frequency</w>\": 18825,\n  \"frequent</w>\": 19836,\n  \"frequently</w>\": 22434,\n  \"fresco</w>\": 31609,\n  \"fresh\": 4065,\n  \"fresh</w>\": 2975,\n  \"fresher</w>\": 49284,\n  \"freshers</w>\": 35810,\n  \"freshest</w>\": 46809,\n  \"freshly</w>\": 16081,\n  \"freshman</w>\": 9381,\n  \"freshmen</w>\": 21292,\n  \"freshness</w>\": 45872,\n  \"freshwater</w>\": 24803,\n  \"fresno\": 40879,\n  \"fresno</w>\": 20995,\n  \"fret</w>\": 40510,\n  \"freud</w>\": 40787,\n  \"frey\": 22136,\n  \"frey</w>\": 9082,\n  \"fri\": 815,\n  \"fri</w>\": 6882,\n  \"friars</w>\": 30513,\n  \"fric\": 18981,\n  \"frick</w>\": 46304,\n  \"friction</w>\": 38563,\n  \"frid</w>\": 46388,\n  \"frida</w>\": 36001,\n  \"friday\": 6350,\n  \"friday</w>\": 1461,\n  \"fridayfeeling</w>\": 11952,\n  \"fridaymotivation</w>\": 38544,\n  \"fridaynight\": 44858,\n  \"fridayreads</w>\": 37736,\n  \"fridays</w>\": 15589,\n  \"fridaythe</w>\": 47642,\n  \"fridge</w>\": 13491,\n  \"fridges</w>\": 40734,\n  \"frie\": 36999,\n  \"fried\": 13743,\n  \"fried</w>\": 7310,\n  \"friedman</w>\": 29402,\n  \"friedrich</w>\": 34171,\n  \"friend\": 3017,\n  \"friend</w>\": 1625,\n  \"friendly\": 44612,\n  \"friendly</w>\": 4681,\n  \"friends\": 38875,\n  \"friends</w>\": 1574,\n  \"friendship\": 42674,\n  \"friendship</w>\": 7679,\n  \"friendships</w>\": 28840,\n  \"fries</w>\": 11369,\n  \"frifotos</w>\": 40493,\n  \"friger\": 20785,\n  \"friggin</w>\": 48300,\n  \"frigh\": 34831,\n  \"fright\": 24277,\n  \"fright</w>\": 40207,\n  \"frightened</w>\": 47136,\n  \"frightening</w>\": 39290,\n  \"fringe</w>\": 10640,\n  \"fris\": 37252,\n  \"frisbee</w>\": 45768,\n  \"frisco</w>\": 35945,\n  \"frit\": 34614,\n  \"fritz</w>\": 29860,\n  \"friyay</w>\": 38887,\n  \"frm</w>\": 12951,\n  \"fro\": 626,\n  \"fro</w>\": 26603,\n  \"frock</w>\": 45306,\n  \"frog\": 26494,\n  \"frog</w>\": 11438,\n  \"frogs</w>\": 20781,\n  \"from\": 8330,\n  \"from</w>\": 633,\n  \"frome</w>\": 48691,\n  \"fromhome</w>\": 41477,\n  \"fromthe\": 18756,\n  \"fron\": 1847,\n  \"fron</w>\": 18036,\n  \"front\": 10996,\n  \"front</w>\": 2184,\n  \"frontal</w>\": 35794,\n  \"frontier</w>\": 18253,\n  \"frontiers</w>\": 38396,\n  \"frontline</w>\": 29589,\n  \"frontman</w>\": 36775,\n  \"fronts</w>\": 26846,\n  \"froome</w>\": 48560,\n  \"frosh</w>\": 47069,\n  \"frost\": 39420,\n  \"frost</w>\": 11619,\n  \"frosted</w>\": 35988,\n  \"frosting</w>\": 33872,\n  \"frosty</w>\": 22760,\n  \"froze</w>\": 47788,\n  \"frozen\": 42464,\n  \"frozen</w>\": 8507,\n  \"frs</w>\": 26216,\n  \"fru\": 3248,\n  \"fruit\": 16771,\n  \"fruit</w>\": 5190,\n  \"fruitful</w>\": 31494,\n  \"fruits</w>\": 13282,\n  \"fruity</w>\": 22320,\n  \"frustr\": 16046,\n  \"frustrated</w>\": 25111,\n  \"frustrating</w>\": 31342,\n  \"frustration</w>\": 30535,\n  \"fry\": 33914,\n  \"fry</w>\": 13686,\n  \"fryer</w>\": 49217,\n  \"frying</w>\": 38516,\n  \"fs\": 23699,\n  \"fs</w>\": 3854,\n  \"fsa</w>\": 33373,\n  \"fsu\": 44185,\n  \"fsu</w>\": 19317,\n  \"ft\": 3391,\n  \"ft</w>\": 981,\n  \"fta</w>\": 41975,\n  \"ftc</w>\": 33752,\n  \"fted</w>\": 5612,\n  \"fter</w>\": 25063,\n  \"fthe\": 22886,\n  \"ftheday</w>\": 9823,\n  \"fting</w>\": 6174,\n  \"fton</w>\": 26605,\n  \"ftp</w>\": 42649,\n  \"fts</w>\": 3767,\n  \"ftse</w>\": 46717,\n  \"ftw</w>\": 19298,\n  \"fty</w>\": 17494,\n  \"fu\": 665,\n  \"fu</w>\": 9098,\n  \"fuch\": 42617,\n  \"fudge</w>\": 24270,\n  \"fue</w>\": 43723,\n  \"fuego</w>\": 41500,\n  \"fuel\": 21113,\n  \"fuel</w>\": 5945,\n  \"fueled</w>\": 28792,\n  \"fueling</w>\": 38793,\n  \"fuelled</w>\": 48357,\n  \"fuels</w>\": 19365,\n  \"fuentes</w>\": 44393,\n  \"fuer\": 29645,\n  \"fug\": 29227,\n  \"fugitive</w>\": 39257,\n  \"fuji\": 15573,\n  \"fuji</w>\": 21634,\n  \"fujifilm</w>\": 24765,\n  \"fuk</w>\": 31051,\n  \"fuku\": 20728,\n  \"fukushima</w>\": 33929,\n  \"ful\": 1814,\n  \"ful</w>\": 857,\n  \"fulbright</w>\": 41834,\n  \"fulfill\": 43675,\n  \"fulfill</w>\": 27467,\n  \"fulfilled</w>\": 29919,\n  \"fulfilling</w>\": 30621,\n  \"fulfillment</w>\": 45573,\n  \"fulham</w>\": 25574,\n  \"full\": 9407,\n  \"full</w>\": 1476,\n  \"fuller</w>\": 20225,\n  \"fullerton</w>\": 42822,\n  \"fullest</w>\": 35603,\n  \"fully\": 39142,\n  \"fully</w>\": 2401,\n  \"fulness</w>\": 10526,\n  \"fuls</w>\": 41606,\n  \"fulton</w>\": 26725,\n  \"fum</w>\": 38393,\n  \"fumble</w>\": 49373,\n  \"fun\": 1229,\n  \"fun</w>\": 1499,\n  \"func\": 8679,\n  \"function</w>\": 8093,\n  \"functional</w>\": 12885,\n  \"functionality</w>\": 33316,\n  \"functioning</w>\": 25479,\n  \"functions</w>\": 18001,\n  \"fund\": 19089,\n  \"fund</w>\": 4877,\n  \"fundam\": 11670,\n  \"fundament\": 18852,\n  \"fundamental</w>\": 17627,\n  \"fundamentally</w>\": 45378,\n  \"fundamentals</w>\": 27887,\n  \"funday</w>\": 15439,\n  \"funded</w>\": 10588,\n  \"funding</w>\": 5588,\n  \"fundra\": 6201,\n  \"fundraiser</w>\": 10049,\n  \"fundraising</w>\": 10755,\n  \"funds</w>\": 7066,\n  \"funer\": 40693,\n  \"funeral</w>\": 10606,\n  \"funfact</w>\": 31596,\n  \"funfactfriday</w>\": 40710,\n  \"fungal</w>\": 38838,\n  \"fungi</w>\": 27837,\n  \"fungus</w>\": 30677,\n  \"funk\": 37353,\n  \"funk</w>\": 13372,\n  \"funko\": 49402,\n  \"funko</w>\": 23697,\n  \"funky</w>\": 16492,\n  \"funnel</w>\": 27862,\n  \"funnier</w>\": 42232,\n  \"funniest</w>\": 15557,\n  \"funny\": 19124,\n  \"funny</w>\": 3789,\n  \"funrun</w>\": 34185,\n  \"fur\": 2395,\n  \"fur</w>\": 9686,\n  \"furi\": 40816,\n  \"furious</w>\": 17522,\n  \"furman</w>\": 49238,\n  \"furn\": 21348,\n  \"furnace</w>\": 31913,\n  \"furnished</w>\": 37388,\n  \"furnitu\": 45696,\n  \"furniture</w>\": 7993,\n  \"furry\": 33414,\n  \"furry</w>\": 15351,\n  \"fursuit\": 25306,\n  \"fursuit</w>\": 43083,\n  \"fursuitfriday</w>\": 27917,\n  \"further</w>\": 5583,\n  \"fury</w>\": 14404,\n  \"fus</w>\": 18419,\n  \"fuse</w>\": 23386,\n  \"fused</w>\": 38994,\n  \"fusion\": 44661,\n  \"fusion</w>\": 9364,\n  \"fuss</w>\": 26331,\n  \"fut\": 21460,\n  \"fut</w>\": 34049,\n  \"futbol</w>\": 33014,\n  \"futsal</w>\": 20558,\n  \"futu\": 33454,\n  \"futur\": 38840,\n  \"future\": 7959,\n  \"future</w>\": 1904,\n  \"futureof\": 22599,\n  \"futureofwork</w>\": 33202,\n  \"futures</w>\": 13488,\n  \"futuri\": 19068,\n  \"futurism</w>\": 48435,\n  \"futurist</w>\": 48086,\n  \"futuristic</w>\": 30987,\n  \"fuzz\": 47128,\n  \"fuzz</w>\": 40443,\n  \"fuzzy</w>\": 25876,\n  \"fv\": 29795,\n  \"fw\": 23934,\n  \"fw</w>\": 5277,\n  \"fwd</w>\": 27052,\n  \"fx\": 17807,\n  \"fx</w>\": 9025,\n  \"fy\": 8440,\n  \"fy</w>\": 2702,\n  \"fyi</w>\": 16014,\n  \"fying</w>\": 5294,\n  \"fz</w>\": 46400,\n  \"fÃ©\": 34072,\n  \"g\": 70,\n  \"g</w>\": 326,\n  \"ga\": 1275,\n  \"ga</w>\": 1531,\n  \"gaa</w>\": 10715,\n  \"gaal</w>\": 40867,\n  \"gaard</w>\": 24645,\n  \"gab\": 3927,\n  \"gab</w>\": 37382,\n  \"gabbana</w>\": 36272,\n  \"gabby\": 48115,\n  \"gabby</w>\": 24567,\n  \"gabe</w>\": 18916,\n  \"gabi</w>\": 41931,\n  \"gable</w>\": 33387,\n  \"gables</w>\": 40928,\n  \"gabri\": 8311,\n  \"gabriel\": 31684,\n  \"gabriel</w>\": 13244,\n  \"gabrielle</w>\": 33572,\n  \"gaby</w>\": 46420,\n  \"gac</w>\": 32520,\n  \"gad\": 7786,\n  \"gad</w>\": 44651,\n  \"gadget</w>\": 25525,\n  \"gadgets</w>\": 22840,\n  \"gado</w>\": 29489,\n  \"gae</w>\": 22003,\n  \"gael</w>\": 35663,\n  \"gaelic</w>\": 31173,\n  \"gaf\": 21354,\n  \"gaf</w>\": 32670,\n  \"gag\": 14121,\n  \"gag</w>\": 18844,\n  \"gaga</w>\": 9782,\n  \"gage</w>\": 21081,\n  \"gah</w>\": 27750,\n  \"gai\": 24214,\n  \"gai</w>\": 25153,\n  \"gaia</w>\": 41269,\n  \"gail\": 41160,\n  \"gail</w>\": 27676,\n  \"gain\": 21536,\n  \"gain</w>\": 6202,\n  \"gaine\": 35747,\n  \"gained</w>\": 14489,\n  \"gaines</w>\": 49225,\n  \"gainesville</w>\": 40427,\n  \"gaining</w>\": 15260,\n  \"gains\": 42751,\n  \"gains</w>\": 12107,\n  \"gal\": 2001,\n  \"gal</w>\": 4488,\n  \"gala</w>\": 7211,\n  \"galac\": 18864,\n  \"galactic</w>\": 25514,\n  \"galap\": 41115,\n  \"galapagos</w>\": 44057,\n  \"galat\": 39853,\n  \"galatasar\": 42413,\n  \"galatasaray</w>\": 47787,\n  \"galax\": 5647,\n  \"galaxies</w>\": 32435,\n  \"galaxy\": 32130,\n  \"galaxy</w>\": 6545,\n  \"gale\": 37658,\n  \"gale</w>\": 21380,\n  \"galerie</w>\": 44539,\n  \"gales</w>\": 48633,\n  \"gali\": 17546,\n  \"gali</w>\": 30552,\n  \"galicia</w>\": 47927,\n  \"galileo</w>\": 39671,\n  \"gall\": 3011,\n  \"gall</w>\": 33374,\n  \"galla\": 16847,\n  \"gallagher</w>\": 19168,\n  \"galleria</w>\": 40656,\n  \"galleries</w>\": 22304,\n  \"gallery\": 36648,\n  \"gallery</w>\": 3830,\n  \"galley</w>\": 48917,\n  \"galli\": 22568,\n  \"gallipoli</w>\": 47249,\n  \"gallo\": 37350,\n  \"gallo</w>\": 33265,\n  \"gallon</w>\": 24615,\n  \"gallons</w>\": 29335,\n  \"galloway</w>\": 27796,\n  \"galore</w>\": 22286,\n  \"gals</w>\": 20125,\n  \"galvani\": 46046,\n  \"galve\": 34328,\n  \"galveston</w>\": 36003,\n  \"galway\": 38045,\n  \"galway</w>\": 17112,\n  \"gam\": 1162,\n  \"gam</w>\": 34195,\n  \"gama</w>\": 35873,\n  \"gambia</w>\": 32988,\n  \"gamble</w>\": 26121,\n  \"gambling</w>\": 20287,\n  \"game\": 2882,\n  \"game</w>\": 1063,\n  \"gameart</w>\": 31490,\n  \"gameboy</w>\": 40951,\n  \"gamecube</w>\": 44079,\n  \"gameday</w>\": 9241,\n  \"gamedev</w>\": 7544,\n  \"gameinsight</w>\": 42626,\n  \"gameof\": 10987,\n  \"gameofthrones</w>\": 11822,\n  \"gameon</w>\": 47691,\n  \"gameplay</w>\": 16794,\n  \"gamer\": 12595,\n  \"gamer</w>\": 11598,\n  \"gamergate</w>\": 25961,\n  \"gamers</w>\": 16166,\n  \"gamersunite</w>\": 26423,\n  \"games\": 18551,\n  \"games</w>\": 1955,\n  \"gamescom</w>\": 37003,\n  \"gamestop</w>\": 39436,\n  \"gametime</w>\": 45899,\n  \"gami</w>\": 42025,\n  \"gamification</w>\": 48908,\n  \"gaming\": 28803,\n  \"gaming</w>\": 4017,\n  \"gamma</w>\": 22180,\n  \"gamo</w>\": 39325,\n  \"gan\": 1822,\n  \"gan</w>\": 1670,\n  \"gand\": 8399,\n  \"ganda</w>\": 27261,\n  \"gander</w>\": 44508,\n  \"gandhi</w>\": 12322,\n  \"ganesh</w>\": 30362,\n  \"ganesha</w>\": 45185,\n  \"gang\": 8066,\n  \"gang</w>\": 5674,\n  \"ganga</w>\": 36275,\n  \"gangnam</w>\": 46777,\n  \"gangs</w>\": 29844,\n  \"gangsta</w>\": 37365,\n  \"gangster</w>\": 26514,\n  \"gani</w>\": 48324,\n  \"gann</w>\": 45665,\n  \"gannon</w>\": 45837,\n  \"gano</w>\": 25304,\n  \"gao</w>\": 26556,\n  \"gaon</w>\": 19279,\n  \"gap\": 29906,\n  \"gap</w>\": 7609,\n  \"gaps</w>\": 25296,\n  \"gar\": 1099,\n  \"gar</w>\": 5824,\n  \"gara</w>\": 28710,\n  \"garage</w>\": 8474,\n  \"garbage</w>\": 13760,\n  \"garci\": 44658,\n  \"garcia</w>\": 10529,\n  \"gard\": 7751,\n  \"gard</w>\": 21003,\n  \"garda</w>\": 31906,\n  \"garde</w>\": 22649,\n  \"garden\": 4674,\n  \"garden</w>\": 2756,\n  \"gardenchat</w>\": 46292,\n  \"gardener</w>\": 28554,\n  \"gardeners</w>\": 38205,\n  \"gardening</w>\": 10483,\n  \"gardens</w>\": 6152,\n  \"gardiner</w>\": 43121,\n  \"gardner</w>\": 18710,\n  \"gare\": 5633,\n  \"gare</w>\": 48402,\n  \"gareth\": 37140,\n  \"gareth</w>\": 18175,\n  \"garfield</w>\": 26728,\n  \"garh</w>\": 16762,\n  \"gari\": 40898,\n  \"gari</w>\": 43080,\n  \"garis</w>\": 37839,\n  \"garland</w>\": 23418,\n  \"garlic</w>\": 9685,\n  \"garment</w>\": 31418,\n  \"garments</w>\": 43341,\n  \"garmin</w>\": 39885,\n  \"garner</w>\": 20340,\n  \"garnet</w>\": 37669,\n  \"garo</w>\": 30388,\n  \"garrett</w>\": 15881,\n  \"garri\": 21764,\n  \"garrison</w>\": 30108,\n  \"garros</w>\": 40425,\n  \"garry</w>\": 24398,\n  \"gars</w>\": 12055,\n  \"gart\": 18380,\n  \"gart</w>\": 18751,\n  \"garten</w>\": 14684,\n  \"garter</w>\": 48420,\n  \"garth\": 45398,\n  \"garth</w>\": 24469,\n  \"gartner\": 43334,\n  \"gartner</w>\": 29678,\n  \"garty</w>\": 46383,\n  \"garu</w>\": 31140,\n  \"garvey</w>\": 39511,\n  \"garwal</w>\": 38623,\n  \"gary\": 10535,\n  \"gary</w>\": 4516,\n  \"garza</w>\": 49393,\n  \"gas\": 5047,\n  \"gas</w>\": 2474,\n  \"gases</w>\": 36971,\n  \"gasoline</w>\": 27691,\n  \"gasp</w>\": 43762,\n  \"gaston</w>\": 40669,\n  \"gastri\": 49197,\n  \"gastro\": 23740,\n  \"gastron\": 30699,\n  \"gastronomy</w>\": 46987,\n  \"gat\": 5314,\n  \"gat</w>\": 18941,\n  \"gata</w>\": 44575,\n  \"gate\": 8071,\n  \"gate</w>\": 3302,\n  \"gated</w>\": 23997,\n  \"gates</w>\": 9472,\n  \"gateshead</w>\": 40051,\n  \"gateway\": 45221,\n  \"gateway</w>\": 14943,\n  \"gather\": 36345,\n  \"gather</w>\": 12602,\n  \"gathered</w>\": 14646,\n  \"gathering</w>\": 9197,\n  \"gatherings</w>\": 48096,\n  \"gathers</w>\": 39250,\n  \"gating</w>\": 27561,\n  \"gation</w>\": 11095,\n  \"gations</w>\": 33906,\n  \"gato</w>\": 44492,\n  \"gator\": 20216,\n  \"gator</w>\": 16390,\n  \"gatorade</w>\": 36354,\n  \"gators</w>\": 17173,\n  \"gatory</w>\": 24796,\n  \"gatsby</w>\": 32586,\n  \"gatwick</w>\": 37122,\n  \"gau\": 5919,\n  \"gau</w>\": 43068,\n  \"gauge</w>\": 18728,\n  \"gaunt\": 31862,\n  \"gauntlet</w>\": 37163,\n  \"gautam\": 45853,\n  \"gautam</w>\": 31356,\n  \"gauteng</w>\": 40333,\n  \"gav\": 8966,\n  \"gave</w>\": 3485,\n  \"gavin\": 32974,\n  \"gavin</w>\": 16389,\n  \"gaw\": 15405,\n  \"gawd</w>\": 43239,\n  \"gawx</w>\": 43420,\n  \"gay\": 7460,\n  \"gay</w>\": 5627,\n  \"gaya</w>\": 39477,\n  \"gaye</w>\": 41401,\n  \"gayle</w>\": 29998,\n  \"gayo</w>\": 36768,\n  \"gays</w>\": 28001,\n  \"gaz\": 4837,\n  \"gaz</w>\": 36475,\n  \"gaza\": 38391,\n  \"gaza</w>\": 10112,\n  \"gazaunderattack</w>\": 42458,\n  \"gaze</w>\": 23212,\n  \"gazette</w>\": 20443,\n  \"gazing</w>\": 28373,\n  \"gb\": 8727,\n  \"gb</w>\": 4619,\n  \"gba</w>\": 18528,\n  \"gbbo</w>\": 34474,\n  \"gbc</w>\": 42993,\n  \"gbp</w>\": 27391,\n  \"gbr</w>\": 31984,\n  \"gby</w>\": 40509,\n  \"gc\": 8577,\n  \"gc</w>\": 6043,\n  \"gcc</w>\": 26804,\n  \"gcse</w>\": 28763,\n  \"gcu</w>\": 34137,\n  \"gd\": 13264,\n  \"gd</w>\": 14604,\n  \"gdc</w>\": 32793,\n  \"gden</w>\": 44928,\n  \"gdp</w>\": 17100,\n  \"gdpr</w>\": 22963,\n  \"ge\": 619,\n  \"ge</w>\": 710,\n  \"gea</w>\": 26790,\n  \"gear\": 15532,\n  \"gear</w>\": 4802,\n  \"gearbox</w>\": 42454,\n  \"geared</w>\": 33903,\n  \"gearing</w>\": 19027,\n  \"gears</w>\": 21147,\n  \"geaux\": 36313,\n  \"gecko</w>\": 38616,\n  \"ged\": 17252,\n  \"ged</w>\": 3480,\n  \"geddon</w>\": 31720,\n  \"gedly</w>\": 13991,\n  \"gee\": 9806,\n  \"gee</w>\": 9071,\n  \"geek\": 17920,\n  \"geek</w>\": 7135,\n  \"geeks</w>\": 20110,\n  \"geeky</w>\": 47332,\n  \"geel\": 25906,\n  \"geelong</w>\": 34555,\n  \"gees</w>\": 38088,\n  \"geese</w>\": 26413,\n  \"geez</w>\": 42394,\n  \"geh\": 30320,\n  \"geist</w>\": 38290,\n  \"gel\": 7343,\n  \"gel</w>\": 5697,\n  \"gelato</w>\": 29577,\n  \"gels</w>\": 42552,\n  \"gely</w>\": 14637,\n  \"gem\": 14261,\n  \"gem</w>\": 7613,\n  \"gement</w>\": 19495,\n  \"gemini</w>\": 23086,\n  \"gemma</w>\": 23952,\n  \"gems</w>\": 14355,\n  \"gemstone</w>\": 27747,\n  \"gemstones</w>\": 43972,\n  \"gen\": 1024,\n  \"gen</w>\": 3278,\n  \"gence</w>\": 16088,\n  \"gency</w>\": 5245,\n  \"gend\": 33247,\n  \"gender\": 22976,\n  \"gender</w>\": 5906,\n  \"gendere\": 35824,\n  \"genderequality</w>\": 43338,\n  \"gene\": 5822,\n  \"gene</w>\": 7962,\n  \"genealo\": 24142,\n  \"genealogy</w>\": 29381,\n  \"gener\": 1832,\n  \"general\": 20576,\n  \"general</w>\": 3658,\n  \"generally</w>\": 19256,\n  \"generals</w>\": 30296,\n  \"generate</w>\": 16896,\n  \"generated</w>\": 19450,\n  \"generates</w>\": 33938,\n  \"generating</w>\": 23882,\n  \"generation\": 41211,\n  \"generation</w>\": 4883,\n  \"generational</w>\": 34506,\n  \"generations</w>\": 12247,\n  \"generative</w>\": 29472,\n  \"generator</w>\": 19399,\n  \"generators</w>\": 41917,\n  \"generic</w>\": 26978,\n  \"generosity</w>\": 23015,\n  \"generous</w>\": 12570,\n  \"generously</w>\": 35113,\n  \"genes</w>\": 19683,\n  \"genesis</w>\": 13518,\n  \"genetic\": 47746,\n  \"genetic</w>\": 13578,\n  \"genetically</w>\": 36745,\n  \"genetics</w>\": 18276,\n  \"geneva</w>\": 14799,\n  \"genevie\": 41633,\n  \"genevieve</w>\": 46584,\n  \"geni\": 22334,\n  \"genic</w>\": 15750,\n  \"genie</w>\": 24221,\n  \"genital</w>\": 32960,\n  \"genius</w>\": 8235,\n  \"geniuses</w>\": 41406,\n  \"geno\": 41544,\n  \"geno</w>\": 46776,\n  \"genoa</w>\": 43993,\n  \"genoci\": 14687,\n  \"genocide</w>\": 15903,\n  \"genome</w>\": 23991,\n  \"genomic</w>\": 44371,\n  \"genomics</w>\": 26227,\n  \"genre</w>\": 14249,\n  \"genres</w>\": 30340,\n  \"gens</w>\": 17449,\n  \"gent\": 3685,\n  \"gent</w>\": 7139,\n  \"gente</w>\": 34325,\n  \"gentle\": 7262,\n  \"gentle</w>\": 13577,\n  \"gentleman</w>\": 13293,\n  \"gentlemen</w>\": 11692,\n  \"gently</w>\": 17187,\n  \"gento</w>\": 28320,\n  \"gentri\": 41148,\n  \"gentry</w>\": 47225,\n  \"gents</w>\": 18862,\n  \"genu\": 9182,\n  \"genuine</w>\": 12184,\n  \"genuinely</w>\": 20006,\n  \"genus</w>\": 38161,\n  \"geny</w>\": 35323,\n  \"geo\": 5038,\n  \"geo</w>\": 11604,\n  \"geocaching</w>\": 47908,\n  \"geof\": 20629,\n  \"geoff\": 33697,\n  \"geoff</w>\": 20386,\n  \"geoffrey</w>\": 29520,\n  \"geograph\": 45920,\n  \"geographic</w>\": 22635,\n  \"geographical</w>\": 39380,\n  \"geography</w>\": 17101,\n  \"geological</w>\": 38380,\n  \"geology</w>\": 21578,\n  \"geom\": 46135,\n  \"geome\": 12958,\n  \"geometric</w>\": 22419,\n  \"geometry</w>\": 21731,\n  \"geon\": 20844,\n  \"geon</w>\": 7295,\n  \"geons</w>\": 15914,\n  \"geopol\": 39758,\n  \"geor\": 2549,\n  \"georg</w>\": 43126,\n  \"george\": 8377,\n  \"george</w>\": 3296,\n  \"georges</w>\": 25042,\n  \"georgetown</w>\": 22970,\n  \"georgie</w>\": 42115,\n  \"georgina</w>\": 43892,\n  \"geospatial</w>\": 46238,\n  \"geothermal</w>\": 38413,\n  \"geous</w>\": 3068,\n  \"ger\": 1291,\n  \"ger</w>\": 1502,\n  \"gera</w>\": 48867,\n  \"gerald\": 29901,\n  \"gerald</w>\": 13269,\n  \"gerard\": 35979,\n  \"gerard</w>\": 20826,\n  \"gerber</w>\": 45058,\n  \"gered</w>\": 40179,\n  \"geri\": 41664,\n  \"geri</w>\": 46214,\n  \"gering</w>\": 24077,\n  \"germain</w>\": 38786,\n  \"german\": 14972,\n  \"german</w>\": 4710,\n  \"germans</w>\": 28400,\n  \"germany</w>\": 4464,\n  \"germin\": 44721,\n  \"germs</w>\": 47731,\n  \"geronimo</w>\": 45171,\n  \"gerrard</w>\": 26538,\n  \"gerry\": 29825,\n  \"gerry</w>\": 23026,\n  \"gers</w>\": 3314,\n  \"gertrude</w>\": 46950,\n  \"gervais</w>\": 36527,\n  \"gery</w>\": 32845,\n  \"ges</w>\": 3316,\n  \"gest\": 11843,\n  \"gest</w>\": 2033,\n  \"gesture</w>\": 21780,\n  \"gestures</w>\": 43524,\n  \"get\": 5670,\n  \"get</w>\": 779,\n  \"geta\": 13155,\n  \"getaway</w>\": 16131,\n  \"gether</w>\": 27224,\n  \"getic</w>\": 20661,\n  \"getin\": 25822,\n  \"getit\": 44891,\n  \"getit</w>\": 48315,\n  \"getoutside</w>\": 35644,\n  \"gets\": 39448,\n  \"gets</w>\": 2127,\n  \"gett\": 6647,\n  \"gett</w>\": 27965,\n  \"gettable</w>\": 15620,\n  \"gette</w>\": 29800,\n  \"gettin</w>\": 13428,\n  \"getting\": 30885,\n  \"getting</w>\": 1500,\n  \"getty\": 31185,\n  \"getty</w>\": 13965,\n  \"gettys\": 35189,\n  \"gettysburg</w>\": 37062,\n  \"getyour\": 42159,\n  \"gey</w>\": 29289,\n  \"gf\": 28953,\n  \"gf</w>\": 10846,\n  \"gfriend</w>\": 35245,\n  \"gfs</w>\": 37553,\n  \"gg\": 1129,\n  \"gg</w>\": 3286,\n  \"gga</w>\": 26003,\n  \"ggan</w>\": 25626,\n  \"gge\": 21521,\n  \"gge</w>\": 31659,\n  \"gged</w>\": 6095,\n  \"gger\": 12367,\n  \"gger</w>\": 3493,\n  \"ggers</w>\": 7480,\n  \"ggg</w>\": 20143,\n  \"gggg</w>\": 33513,\n  \"ggi</w>\": 21662,\n  \"ggin</w>\": 17160,\n  \"gging</w>\": 4966,\n  \"ggins</w>\": 12444,\n  \"ggle\": 34981,\n  \"ggle</w>\": 11430,\n  \"ggled</w>\": 46328,\n  \"ggles</w>\": 14703,\n  \"ggling</w>\": 16523,\n  \"ggly</w>\": 39407,\n  \"ggs</w>\": 4797,\n  \"ggy\": 24935,\n  \"ggy</w>\": 6476,\n  \"gh\": 583,\n  \"gh</w>\": 790,\n  \"gha\": 10010,\n  \"gha</w>\": 25183,\n  \"gham\": 21456,\n  \"ghan\": 18945,\n  \"ghan</w>\": 6624,\n  \"ghana\": 30330,\n  \"ghana</w>\": 9731,\n  \"ghanaian</w>\": 34223,\n  \"ghani</w>\": 36699,\n  \"ghar\": 37334,\n  \"ghar</w>\": 36973,\n  \"ghat</w>\": 43989,\n  \"ghaz\": 37493,\n  \"ghc</w>\": 42139,\n  \"ghe\": 10754,\n  \"ghe</w>\": 28561,\n  \"ghead</w>\": 40783,\n  \"ghee</w>\": 34794,\n  \"gher\": 21542,\n  \"gher</w>\": 14796,\n  \"ghet\": 18447,\n  \"ghetti</w>\": 17485,\n  \"ghetto</w>\": 22403,\n  \"ghi\": 22436,\n  \"ghi</w>\": 22279,\n  \"ghibli</w>\": 40555,\n  \"ghj\": 38439,\n  \"ghlin</w>\": 24131,\n  \"gho\": 4307,\n  \"ghorn</w>\": 38094,\n  \"ghosh</w>\": 43279,\n  \"ghoshal</w>\": 49134,\n  \"ghost\": 11417,\n  \"ghost</w>\": 7108,\n  \"ghostbusters</w>\": 25462,\n  \"ghostly</w>\": 44901,\n  \"ghosts</w>\": 16737,\n  \"ghou\": 35843,\n  \"ghoul</w>\": 45302,\n  \"ghouse</w>\": 38238,\n  \"ghs</w>\": 14157,\n  \"ght\": 1413,\n  \"ght</w>\": 630,\n  \"ghted</w>\": 4963,\n  \"ghter</w>\": 2427,\n  \"ghters</w>\": 12994,\n  \"ghtful</w>\": 8334,\n  \"ghting</w>\": 3019,\n  \"ghtly</w>\": 6993,\n  \"ghtning</w>\": 39740,\n  \"ghton</w>\": 16353,\n  \"ghts</w>\": 1259,\n  \"ghty\": 20968,\n  \"ghty</w>\": 5866,\n  \"ghu\": 25808,\n  \"ghue</w>\": 45675,\n  \"ghyun</w>\": 25010,\n  \"ghz</w>\": 24325,\n  \"gi\": 707,\n  \"gi</w>\": 4478,\n  \"gia</w>\": 8864,\n  \"giac\": 35444,\n  \"giam\": 39623,\n  \"gian\": 17274,\n  \"gian</w>\": 12866,\n  \"gianni</w>\": 46752,\n  \"giant\": 23668,\n  \"giant</w>\": 4687,\n  \"giants</w>\": 7076,\n  \"giar\": 34241,\n  \"gib\": 9816,\n  \"gibb\": 18964,\n  \"gibbons</w>\": 31974,\n  \"gibbs</w>\": 26488,\n  \"gibility</w>\": 33297,\n  \"gible</w>\": 13159,\n  \"gibr\": 20206,\n  \"gibraltar</w>\": 23988,\n  \"gibson\": 37420,\n  \"gibson</w>\": 12178,\n  \"gic\": 27900,\n  \"gic</w>\": 2570,\n  \"gical</w>\": 32973,\n  \"gically</w>\": 26320,\n  \"gid\": 36774,\n  \"gid</w>\": 21413,\n  \"giddy</w>\": 40894,\n  \"gideon</w>\": 43867,\n  \"gidi</w>\": 30603,\n  \"gie\": 11459,\n  \"gie</w>\": 3991,\n  \"gier</w>\": 28974,\n  \"gies</w>\": 5505,\n  \"gif\": 11363,\n  \"gif</w>\": 11677,\n  \"gifford</w>\": 47850,\n  \"gifs</w>\": 37643,\n  \"gift\": 20569,\n  \"gift</w>\": 2733,\n  \"gifted</w>\": 15110,\n  \"giftide\": 20152,\n  \"giftideas</w>\": 23487,\n  \"gifting</w>\": 39546,\n  \"gifts</w>\": 5836,\n  \"gig\": 26981,\n  \"gig</w>\": 7471,\n  \"gigab\": 34530,\n  \"gigan\": 24104,\n  \"gigantic</w>\": 31507,\n  \"giggle</w>\": 36426,\n  \"giggles</w>\": 42731,\n  \"giggs</w>\": 44692,\n  \"gigi\": 44106,\n  \"gigi</w>\": 26171,\n  \"gigs</w>\": 20316,\n  \"gil\": 3997,\n  \"gil</w>\": 10088,\n  \"gila</w>\": 46952,\n  \"gilbert</w>\": 14154,\n  \"gilded</w>\": 44341,\n  \"giles</w>\": 24802,\n  \"gill\": 14280,\n  \"gill</w>\": 12003,\n  \"gille\": 29610,\n  \"gilles</w>\": 39590,\n  \"gillespie</w>\": 36242,\n  \"gillette</w>\": 38603,\n  \"gilli\": 13695,\n  \"gillian</w>\": 28753,\n  \"gills</w>\": 48851,\n  \"gilmore</w>\": 27603,\n  \"gilt</w>\": 44378,\n  \"gim\": 31284,\n  \"gimm\": 40692,\n  \"gimme</w>\": 21525,\n  \"gin\": 3374,\n  \"gin</w>\": 4941,\n  \"gina</w>\": 15604,\n  \"gine\": 27482,\n  \"ging\": 10829,\n  \"ging</w>\": 3905,\n  \"ginger\": 16287,\n  \"ginger</w>\": 9718,\n  \"gingerbread</w>\": 23692,\n  \"gini</w>\": 35768,\n  \"gino</w>\": 36521,\n  \"gins</w>\": 18328,\n  \"gio\": 16329,\n  \"gio</w>\": 8050,\n  \"gion</w>\": 41226,\n  \"gior\": 14920,\n  \"giorgio</w>\": 33271,\n  \"giorno</w>\": 33310,\n  \"gios</w>\": 41927,\n  \"gious</w>\": 14419,\n  \"giov\": 21404,\n  \"giovanni</w>\": 26574,\n  \"gipp\": 41351,\n  \"gir\": 1077,\n  \"gir</w>\": 25481,\n  \"gira\": 16949,\n  \"giraffe</w>\": 22826,\n  \"giri</w>\": 31709,\n  \"girl\": 3914,\n  \"girl</w>\": 1611,\n  \"girlfriend</w>\": 8217,\n  \"girlfriends</w>\": 30736,\n  \"girlpower</w>\": 37433,\n  \"girls\": 15480,\n  \"girls</w>\": 1917,\n  \"girly</w>\": 29605,\n  \"giro\": 39664,\n  \"giro</w>\": 26454,\n  \"girona</w>\": 47842,\n  \"giroud</w>\": 41177,\n  \"gis\": 16266,\n  \"gis</w>\": 12773,\n  \"gist</w>\": 21241,\n  \"git\": 16060,\n  \"git</w>\": 20918,\n  \"gita</w>\": 40838,\n  \"github</w>\": 31196,\n  \"giu\": 17931,\n  \"giuli\": 29762,\n  \"giuliani</w>\": 47739,\n  \"giuse\": 29385,\n  \"giuseppe</w>\": 33563,\n  \"give\": 4120,\n  \"give</w>\": 1781,\n  \"giveaway</w>\": 5310,\n  \"giveaways</w>\": 18974,\n  \"giveback</w>\": 41385,\n  \"given\": 33323,\n  \"given</w>\": 4302,\n  \"givenchy</w>\": 38245,\n  \"giver</w>\": 43339,\n  \"gives</w>\": 3926,\n  \"giveup</w>\": 35485,\n  \"giving\": 14673,\n  \"giving</w>\": 2339,\n  \"givingback</w>\": 49300,\n  \"givingtuesday</w>\": 23556,\n  \"giz\": 29237,\n  \"gk\": 38953,\n  \"gk</w>\": 18719,\n  \"gl\": 1849,\n  \"gl</w>\": 14751,\n  \"gla\": 1523,\n  \"gla</w>\": 36904,\n  \"glaci\": 14924,\n  \"glacial</w>\": 40782,\n  \"glacier</w>\": 19282,\n  \"glaciers</w>\": 42528,\n  \"glad\": 20841,\n  \"glad</w>\": 4761,\n  \"glades</w>\": 37432,\n  \"gladi\": 21742,\n  \"gladiator</w>\": 38477,\n  \"gladiators</w>\": 41087,\n  \"gladly</w>\": 41598,\n  \"gladys</w>\": 43168,\n  \"glam\": 8738,\n  \"glam</w>\": 16905,\n  \"glamorous</w>\": 22896,\n  \"glamour\": 42876,\n  \"glamour</w>\": 17499,\n  \"glamping</w>\": 46167,\n  \"glan\": 40482,\n  \"glan</w>\": 45844,\n  \"glance</w>\": 26557,\n  \"gland</w>\": 41441,\n  \"glar\": 48535,\n  \"glar</w>\": 41702,\n  \"glare</w>\": 46035,\n  \"glas\": 29935,\n  \"glas</w>\": 43654,\n  \"glasgo\": 6757,\n  \"glasgow\": 29990,\n  \"glasgow</w>\": 7363,\n  \"glass\": 16305,\n  \"glass</w>\": 3313,\n  \"glasses</w>\": 6116,\n  \"glaston\": 26848,\n  \"glastonbury</w>\": 28233,\n  \"glau\": 39171,\n  \"glaze</w>\": 28112,\n  \"glazed</w>\": 24122,\n  \"gle\": 7166,\n  \"gle</w>\": 2865,\n  \"glee\": 32379,\n  \"glee</w>\": 21614,\n  \"glen\": 6158,\n  \"glen</w>\": 11049,\n  \"glend\": 38332,\n  \"glendale</w>\": 33043,\n  \"glenn\": 32004,\n  \"glenn</w>\": 12861,\n  \"gler</w>\": 34649,\n  \"gley</w>\": 21998,\n  \"gli\": 5896,\n  \"gli</w>\": 28791,\n  \"glia</w>\": 22217,\n  \"glide</w>\": 37321,\n  \"glider</w>\": 41636,\n  \"glimp\": 12888,\n  \"glimpse</w>\": 13817,\n  \"glio</w>\": 29785,\n  \"glit\": 21079,\n  \"glitch</w>\": 29563,\n  \"glitter</w>\": 16528,\n  \"glitz</w>\": 44542,\n  \"glo\": 1721,\n  \"glo</w>\": 30474,\n  \"glob\": 13363,\n  \"global\": 6707,\n  \"global</w>\": 2779,\n  \"globalgoals</w>\": 33211,\n  \"globalhealth</w>\": 46751,\n  \"globalization</w>\": 47680,\n  \"globally</w>\": 17775,\n  \"globalwarming</w>\": 46017,\n  \"globe\": 19436,\n  \"globe</w>\": 9368,\n  \"globes</w>\": 38085,\n  \"glock</w>\": 38818,\n  \"glomer\": 43689,\n  \"gloom</w>\": 48594,\n  \"gloomy</w>\": 32199,\n  \"glori\": 7270,\n  \"gloria</w>\": 19244,\n  \"glorious</w>\": 9171,\n  \"glory\": 36107,\n  \"glory</w>\": 7285,\n  \"glos</w>\": 40633,\n  \"gloss\": 38258,\n  \"gloss</w>\": 22014,\n  \"glossy</w>\": 29802,\n  \"glou\": 15989,\n  \"gloucester\": 28133,\n  \"gloucester</w>\": 23835,\n  \"gloucestershire</w>\": 33789,\n  \"glove</w>\": 16078,\n  \"glover</w>\": 21594,\n  \"gloves</w>\": 12363,\n  \"glow\": 30472,\n  \"glow</w>\": 10111,\n  \"glowing</w>\": 18437,\n  \"glows</w>\": 48107,\n  \"glu\": 5952,\n  \"glu</w>\": 32281,\n  \"glucose</w>\": 34642,\n  \"glue</w>\": 22103,\n  \"glued</w>\": 38135,\n  \"gluten\": 15482,\n  \"gluten</w>\": 15524,\n  \"glutenfree</w>\": 16138,\n  \"gly\": 13027,\n  \"glycer\": 48914,\n  \"gm\": 18743,\n  \"gm</w>\": 5918,\n  \"gma</w>\": 18155,\n  \"gmail</w>\": 11119,\n  \"gman\": 41043,\n  \"gman</w>\": 36936,\n  \"gmb\": 35934,\n  \"gmb</w>\": 31799,\n  \"gmbh</w>\": 46877,\n  \"gmc</w>\": 27257,\n  \"gmo</w>\": 23486,\n  \"gms</w>\": 36987,\n  \"gmt</w>\": 13803,\n  \"gn\": 2455,\n  \"gn</w>\": 9831,\n  \"gna</w>\": 23009,\n  \"gnation</w>\": 45912,\n  \"gne</w>\": 25407,\n  \"gni\": 5104,\n  \"gnment</w>\": 25110,\n  \"gno\": 23376,\n  \"gno</w>\": 43686,\n  \"gnocchi</w>\": 48299,\n  \"gnome</w>\": 33643,\n  \"gnon</w>\": 20561,\n  \"go\": 650,\n  \"go</w>\": 861,\n  \"goa</w>\": 14399,\n  \"goal\": 9003,\n  \"goal</w>\": 3321,\n  \"goalie</w>\": 20723,\n  \"goalkeeper</w>\": 16601,\n  \"goals</w>\": 3295,\n  \"goalscorer</w>\": 43547,\n  \"goaltender</w>\": 44151,\n  \"goat\": 34082,\n  \"goat</w>\": 9530,\n  \"goats</w>\": 18393,\n  \"gob\": 29559,\n  \"gobeavs</w>\": 48285,\n  \"goblin</w>\": 26223,\n  \"goblue</w>\": 25232,\n  \"gobucks</w>\": 29175,\n  \"gocougs</w>\": 34202,\n  \"god\": 4190,\n  \"god</w>\": 1731,\n  \"godawgs</w>\": 40436,\n  \"godbless\": 46616,\n  \"godbless</w>\": 44007,\n  \"godd\": 16589,\n  \"goddamn</w>\": 28495,\n  \"goddard</w>\": 37827,\n  \"goddess</w>\": 10808,\n  \"godfather</w>\": 26222,\n  \"godfrey</w>\": 40148,\n  \"godis\": 38521,\n  \"godly</w>\": 42438,\n  \"gods\": 33620,\n  \"gods</w>\": 10328,\n  \"goducks</w>\": 35889,\n  \"godzilla</w>\": 23369,\n  \"goe\": 22084,\n  \"goers</w>\": 27784,\n  \"goes\": 43581,\n  \"goes</w>\": 2635,\n  \"gof\": 17537,\n  \"goff</w>\": 34399,\n  \"goftheday</w>\": 39360,\n  \"gofund\": 34445,\n  \"gofundme</w>\": 34686,\n  \"gog</w>\": 42949,\n  \"goggles</w>\": 31027,\n  \"gogh</w>\": 19697,\n  \"gogo</w>\": 22688,\n  \"gogreen</w>\": 36279,\n  \"gohawks</w>\": 34884,\n  \"goi</w>\": 24917,\n  \"goin</w>\": 13939,\n  \"going\": 25787,\n  \"going</w>\": 1245,\n  \"goku</w>\": 29550,\n  \"gol\": 1537,\n  \"gol</w>\": 18257,\n  \"gola</w>\": 41090,\n  \"gold\": 4999,\n  \"gold</w>\": 2209,\n  \"goldberg</w>\": 25161,\n  \"goldcoast</w>\": 34634,\n  \"golden\": 10763,\n  \"golden</w>\": 3878,\n  \"goldeng\": 20650,\n  \"goldenglobes</w>\": 26842,\n  \"goldfish</w>\": 40293,\n  \"goldie</w>\": 42805,\n  \"goldman</w>\": 27164,\n  \"golds\": 30526,\n  \"golds</w>\": 40283,\n  \"goldsmith</w>\": 40214,\n  \"gole\": 41297,\n  \"golf\": 9096,\n  \"golf</w>\": 3096,\n  \"golfclub</w>\": 45742,\n  \"golfer</w>\": 24579,\n  \"golfers</w>\": 28441,\n  \"golfing</w>\": 31379,\n  \"goli\": 29265,\n  \"goliath</w>\": 41602,\n  \"gom\": 7051,\n  \"goma</w>\": 46198,\n  \"gomes</w>\": 39128,\n  \"gomez</w>\": 16433,\n  \"gon\": 1854,\n  \"gon</w>\": 3379,\n  \"gona</w>\": 34835,\n  \"gone\": 35135,\n  \"gone</w>\": 3601,\n  \"gong</w>\": 28486,\n  \"gonna</w>\": 2562,\n  \"gonz\": 10587,\n  \"gonzaga</w>\": 36241,\n  \"gonzale\": 17512,\n  \"gonzales</w>\": 31265,\n  \"gonzalez</w>\": 18198,\n  \"goo\": 1381,\n  \"goo</w>\": 17882,\n  \"good\": 2185,\n  \"good</w>\": 886,\n  \"goodbye</w>\": 6968,\n  \"goodday\": 46284,\n  \"goode</w>\": 42076,\n  \"goodfood</w>\": 46844,\n  \"goodfriday</w>\": 40360,\n  \"goodie</w>\": 29213,\n  \"goodies</w>\": 13308,\n  \"goodluck</w>\": 19718,\n  \"goodman</w>\": 24146,\n  \"goodmorning</w>\": 14421,\n  \"goodness</w>\": 10531,\n  \"goodnight</w>\": 8540,\n  \"goodreads</w>\": 31629,\n  \"goods</w>\": 9340,\n  \"goodtimes</w>\": 22570,\n  \"goodvibes</w>\": 43146,\n  \"goodwill</w>\": 24902,\n  \"goodwin</w>\": 28080,\n  \"goodwood</w>\": 30008,\n  \"goody</w>\": 35937,\n  \"goodyear</w>\": 42858,\n  \"goofy</w>\": 26879,\n  \"goog\": 18581,\n  \"google\": 12195,\n  \"google</w>\": 3460,\n  \"googled</w>\": 40345,\n  \"googleplay</w>\": 37309,\n  \"goon</w>\": 15267,\n  \"goons</w>\": 30440,\n  \"goooo\": 35876,\n  \"goooo</w>\": 48957,\n  \"goose\": 21445,\n  \"goose</w>\": 13822,\n  \"goosebumps</w>\": 32254,\n  \"gop\": 18942,\n  \"gop</w>\": 6250,\n  \"gopack\": 46995,\n  \"gopackgo</w>\": 47719,\n  \"gopal</w>\": 47268,\n  \"gopdebate</w>\": 39806,\n  \"gopher\": 47750,\n  \"gopher</w>\": 48905,\n  \"gophers</w>\": 31957,\n  \"gopro</w>\": 17511,\n  \"gor\": 1747,\n  \"gor</w>\": 29827,\n  \"gordo</w>\": 47707,\n  \"gordon\": 20485,\n  \"gordon</w>\": 8244,\n  \"gore\": 30311,\n  \"gore</w>\": 17872,\n  \"gorg</w>\": 46815,\n  \"gorge\": 35548,\n  \"gorge</w>\": 20038,\n  \"gorgeous</w>\": 3241,\n  \"gori\": 12461,\n  \"goria</w>\": 43359,\n  \"gorilla\": 37910,\n  \"gorilla</w>\": 21994,\n  \"gorman</w>\": 35741,\n  \"goro</w>\": 44977,\n  \"gory</w>\": 7160,\n  \"gos\": 20517,\n  \"gos</w>\": 5693,\n  \"gosh</w>\": 15395,\n  \"gosling</w>\": 35320,\n  \"gosp\": 9617,\n  \"gospel</w>\": 11313,\n  \"goss\": 39734,\n  \"goss</w>\": 36924,\n  \"gossi\": 15684,\n  \"gossip</w>\": 18963,\n  \"got\": 10125,\n  \"got</w>\": 1005,\n  \"gota</w>\": 36693,\n  \"gotcha</w>\": 43275,\n  \"gote</w>\": 49345,\n  \"goth\": 48465,\n  \"goth</w>\": 20437,\n  \"gotham\": 46123,\n  \"gotham</w>\": 18299,\n  \"gothic</w>\": 15426,\n  \"goti\": 9497,\n  \"goto\": 39715,\n  \"gots</w>\": 35215,\n  \"gott\": 5089,\n  \"gott</w>\": 36466,\n  \"gotta</w>\": 4633,\n  \"gotten</w>\": 5889,\n  \"gotti</w>\": 41881,\n  \"gotv</w>\": 36089,\n  \"gou\": 10520,\n  \"gou</w>\": 36555,\n  \"gouache</w>\": 43314,\n  \"goul\": 33187,\n  \"gould</w>\": 31087,\n  \"gour\": 13580,\n  \"gourmet</w>\": 19111,\n  \"gov\": 4022,\n  \"gov</w>\": 4564,\n  \"gove</w>\": 36997,\n  \"govegan</w>\": 38886,\n  \"gover\": 10471,\n  \"gover</w>\": 16759,\n  \"govern\": 2351,\n  \"govern</w>\": 32404,\n  \"governance</w>\": 13386,\n  \"governing</w>\": 30946,\n  \"government</w>\": 3149,\n  \"governmental</w>\": 42609,\n  \"governments</w>\": 19582,\n  \"governor\": 17459,\n  \"governor</w>\": 6630,\n  \"governors</w>\": 26881,\n  \"govin\": 42451,\n  \"govt</w>\": 5345,\n  \"govuk</w>\": 28830,\n  \"gow\": 21885,\n  \"gow</w>\": 33788,\n  \"gowan</w>\": 31307,\n  \"gower</w>\": 43448,\n  \"gown</w>\": 13719,\n  \"gowns</w>\": 38029,\n  \"goyal</w>\": 35105,\n  \"gp\": 19329,\n  \"gp</w>\": 5051,\n  \"gpa</w>\": 24098,\n  \"gps</w>\": 13639,\n  \"gpu</w>\": 38561,\n  \"gq\": 40286,\n  \"gq</w>\": 31324,\n  \"gr\": 709,\n  \"gr</w>\": 6062,\n  \"gra\": 782,\n  \"gra</w>\": 15276,\n  \"grab</w>\": 4646,\n  \"grabbed</w>\": 22856,\n  \"grabbing</w>\": 26440,\n  \"grabs</w>\": 17076,\n  \"grac\": 11323,\n  \"grace\": 13225,\n  \"grace</w>\": 5142,\n  \"graced</w>\": 31894,\n  \"graceful</w>\": 25242,\n  \"graces</w>\": 38629,\n  \"graci\": 11174,\n  \"gracias</w>\": 16463,\n  \"gracie</w>\": 23235,\n  \"gracing</w>\": 37263,\n  \"gracious</w>\": 29044,\n  \"grad\": 19869,\n  \"grad</w>\": 7291,\n  \"gradable</w>\": 41529,\n  \"grade\": 45435,\n  \"grade</w>\": 3394,\n  \"graded</w>\": 13823,\n  \"grader</w>\": 23930,\n  \"graders</w>\": 10930,\n  \"grades</w>\": 10838,\n  \"gradient</w>\": 36885,\n  \"grading</w>\": 19016,\n  \"grads</w>\": 17811,\n  \"gradu\": 3230,\n  \"gradual</w>\": 45210,\n  \"gradually</w>\": 32192,\n  \"graduate</w>\": 6675,\n  \"graduated</w>\": 15128,\n  \"graduates</w>\": 12236,\n  \"graduating</w>\": 14819,\n  \"graduation</w>\": 8060,\n  \"grady</w>\": 33980,\n  \"graeme</w>\": 30192,\n  \"graf\": 46478,\n  \"graf</w>\": 39765,\n  \"graff\": 10656,\n  \"graffiti</w>\": 11676,\n  \"graft</w>\": 32698,\n  \"grafton</w>\": 47347,\n  \"graham\": 19805,\n  \"graham</w>\": 7711,\n  \"grail</w>\": 37184,\n  \"grain\": 44003,\n  \"grain</w>\": 12109,\n  \"grains</w>\": 25791,\n  \"gral</w>\": 25631,\n  \"gram\": 2949,\n  \"gram</w>\": 2338,\n  \"grammar</w>\": 16077,\n  \"grammy</w>\": 15388,\n  \"grammys</w>\": 18121,\n  \"grams</w>\": 6294,\n  \"gran\": 3892,\n  \"gran</w>\": 14493,\n  \"granada</w>\": 31172,\n  \"grand\": 3058,\n  \"grand</w>\": 2991,\n  \"grandad</w>\": 29148,\n  \"grandchildren</w>\": 36856,\n  \"granddaughter</w>\": 29460,\n  \"grande\": 37514,\n  \"grande</w>\": 10757,\n  \"grandes</w>\": 36382,\n  \"grandfather</w>\": 15346,\n  \"grandma</w>\": 10525,\n  \"grandmother</w>\": 17469,\n  \"grandpa</w>\": 14582,\n  \"grandparents</w>\": 21311,\n  \"grandprix</w>\": 39358,\n  \"grandson</w>\": 20766,\n  \"grandstand</w>\": 43172,\n  \"grange\": 45027,\n  \"grange</w>\": 23850,\n  \"granger</w>\": 42968,\n  \"granite</w>\": 18813,\n  \"grann</w>\": 45585,\n  \"granny</w>\": 22710,\n  \"granola</w>\": 34271,\n  \"grant\": 18682,\n  \"grant</w>\": 5442,\n  \"granted</w>\": 14156,\n  \"granth\": 41283,\n  \"grants</w>\": 15123,\n  \"grape\": 19131,\n  \"grape</w>\": 15959,\n  \"grapefruit</w>\": 28347,\n  \"grapes</w>\": 18580,\n  \"grapevine</w>\": 47619,\n  \"graph\": 1349,\n  \"graph</w>\": 4407,\n  \"graphene</w>\": 38387,\n  \"grapher</w>\": 14987,\n  \"graphers</w>\": 32088,\n  \"graphic\": 15653,\n  \"graphic</w>\": 4245,\n  \"graphical</w>\": 20878,\n  \"graphicdesign</w>\": 21907,\n  \"graphics</w>\": 9492,\n  \"graphies</w>\": 40164,\n  \"graphite</w>\": 29447,\n  \"graphs</w>\": 24670,\n  \"graphy</w>\": 4897,\n  \"grapp\": 30843,\n  \"gras\": 31517,\n  \"gras</w>\": 17584,\n  \"grasp</w>\": 34975,\n  \"grass\": 11584,\n  \"grass</w>\": 5922,\n  \"grasses</w>\": 46807,\n  \"grasshopper</w>\": 48894,\n  \"grassi</w>\": 42294,\n  \"grasso</w>\": 34808,\n  \"grassroots</w>\": 21991,\n  \"grassy</w>\": 44140,\n  \"grat\": 9221,\n  \"grate\": 32463,\n  \"grateful\": 45659,\n  \"grateful</w>\": 5730,\n  \"grati\": 36402,\n  \"gratis</w>\": 33638,\n  \"gratitude</w>\": 12614,\n  \"grav\": 20663,\n  \"grave\": 16606,\n  \"grave</w>\": 9981,\n  \"gravel</w>\": 27054,\n  \"graves</w>\": 17665,\n  \"graveyard</w>\": 31176,\n  \"gravit\": 26150,\n  \"gravitational</w>\": 45268,\n  \"gravity\": 47426,\n  \"gravity</w>\": 15160,\n  \"gravy</w>\": 21225,\n  \"gray\": 12703,\n  \"gray</w>\": 7048,\n  \"grays</w>\": 46848,\n  \"grayson\": 45831,\n  \"grayson</w>\": 25471,\n  \"grazi\": 42427,\n  \"grazie</w>\": 38698,\n  \"grazing</w>\": 29889,\n  \"grc</w>\": 44069,\n  \"gre\": 689,\n  \"gre</w>\": 17878,\n  \"grease</w>\": 24132,\n  \"greasy</w>\": 44376,\n  \"great\": 3265,\n  \"great</w>\": 830,\n  \"greate\": 31930,\n  \"greater\": 32725,\n  \"greater</w>\": 7033,\n  \"greatest\": 39080,\n  \"greatest</w>\": 4153,\n  \"greatly</w>\": 13978,\n  \"greatness</w>\": 14189,\n  \"greats</w>\": 21855,\n  \"greaves</w>\": 42350,\n  \"greco</w>\": 39103,\n  \"gree\": 9987,\n  \"gree</w>\": 30774,\n  \"greece</w>\": 6965,\n  \"greed</w>\": 26147,\n  \"greedy</w>\": 33301,\n  \"greek\": 23844,\n  \"greek</w>\": 6842,\n  \"greeks</w>\": 35866,\n  \"green\": 2762,\n  \"green</w>\": 1901,\n  \"greenberg</w>\": 46662,\n  \"greene</w>\": 16383,\n  \"greener</w>\": 31169,\n  \"greenery</w>\": 42493,\n  \"greenfield</w>\": 39924,\n  \"greeng\": 42077,\n  \"greenhouse</w>\": 20819,\n  \"greening</w>\": 48673,\n  \"greenland</w>\": 27345,\n  \"greenpeace</w>\": 44755,\n  \"greens</w>\": 10235,\n  \"greensboro</w>\": 33436,\n  \"greenville</w>\": 25156,\n  \"greenway</w>\": 35205,\n  \"greenwich</w>\": 18658,\n  \"greenwood</w>\": 25782,\n  \"greer</w>\": 34345,\n  \"greet\": 11042,\n  \"greet</w>\": 11997,\n  \"greeted</w>\": 24546,\n  \"greeting</w>\": 17754,\n  \"greetings</w>\": 11569,\n  \"greets</w>\": 25464,\n  \"greg\": 6894,\n  \"greg</w>\": 7943,\n  \"gregation</w>\": 20131,\n  \"gregg\": 39422,\n  \"gregg</w>\": 22929,\n  \"gregor\": 33856,\n  \"gregor</w>\": 16177,\n  \"gregory</w>\": 16253,\n  \"gren\": 13941,\n  \"gren</w>\": 20119,\n  \"grenade</w>\": 33679,\n  \"grenfell</w>\": 42107,\n  \"gres</w>\": 39670,\n  \"gress</w>\": 2752,\n  \"gret\": 30041,\n  \"greta</w>\": 33443,\n  \"gretchen</w>\": 45516,\n  \"grette</w>\": 38774,\n  \"grew</w>\": 10451,\n  \"grey\": 9190,\n  \"grey</w>\": 5046,\n  \"greyhound</w>\": 27363,\n  \"greyhounds</w>\": 45718,\n  \"greys</w>\": 44311,\n  \"greysanatomy</w>\": 36833,\n  \"gri\": 2169,\n  \"gri</w>\": 18484,\n  \"grid\": 29067,\n  \"grid</w>\": 9882,\n  \"gridi\": 41063,\n  \"gridiron</w>\": 47786,\n  \"grids</w>\": 46500,\n  \"grief</w>\": 21058,\n  \"grier</w>\": 22016,\n  \"griev\": 36400,\n  \"grieving</w>\": 42383,\n  \"griez\": 47962,\n  \"griezmann</w>\": 48396,\n  \"griff\": 17855,\n  \"griff</w>\": 35551,\n  \"griffi\": 28676,\n  \"griffin\": 46612,\n  \"griffin</w>\": 13161,\n  \"griffith</w>\": 24375,\n  \"griffiths</w>\": 34182,\n  \"gril\": 49091,\n  \"grill\": 44083,\n  \"grill</w>\": 9519,\n  \"grille</w>\": 34748,\n  \"grilled</w>\": 10691,\n  \"grilling</w>\": 28324,\n  \"grills</w>\": 39464,\n  \"grim\": 20383,\n  \"grim</w>\": 23635,\n  \"grime</w>\": 37101,\n  \"grimes</w>\": 25057,\n  \"grimm</w>\": 27865,\n  \"grims\": 34861,\n  \"grimsby</w>\": 41513,\n  \"grin\": 11033,\n  \"grin</w>\": 28697,\n  \"grinch</w>\": 40527,\n  \"grind\": 25730,\n  \"grind</w>\": 11810,\n  \"grinder</w>\": 31733,\n  \"grinding</w>\": 21541,\n  \"gring</w>\": 40135,\n  \"grip</w>\": 15521,\n  \"gripping</w>\": 34567,\n  \"grips</w>\": 27819,\n  \"gris</w>\": 29150,\n  \"grit\": 22037,\n  \"grit</w>\": 22087,\n  \"grits</w>\": 44307,\n  \"gritty</w>\": 33704,\n  \"grizz\": 14877,\n  \"grizz</w>\": 44088,\n  \"grizzlies</w>\": 25594,\n  \"grizzly</w>\": 29676,\n  \"grl</w>\": 48005,\n  \"gro\": 1464,\n  \"gro</w>\": 12691,\n  \"grocer\": 11633,\n  \"groceries</w>\": 32409,\n  \"grocery</w>\": 13826,\n  \"grom</w>\": 45284,\n  \"gron\": 22345,\n  \"groningen</w>\": 45639,\n  \"groo\": 9015,\n  \"groom\": 39883,\n  \"groom</w>\": 22813,\n  \"grooming</w>\": 25575,\n  \"groot</w>\": 37708,\n  \"groove\": 39484,\n  \"groove</w>\": 17680,\n  \"grooves</w>\": 43954,\n  \"groovy</w>\": 30143,\n  \"gros\": 26834,\n  \"gros</w>\": 32639,\n  \"gross\": 31080,\n  \"gross</w>\": 11541,\n  \"grosven\": 46911,\n  \"grote\": 47207,\n  \"grotto</w>\": 45260,\n  \"grou\": 1582,\n  \"groun\": 45110,\n  \"ground\": 9558,\n  \"ground</w>\": 2461,\n  \"groundbreaking</w>\": 21006,\n  \"grounded</w>\": 27799,\n  \"grounds</w>\": 8454,\n  \"groundwater</w>\": 39457,\n  \"group\": 19045,\n  \"group</w>\": 1771,\n  \"groupe</w>\": 47654,\n  \"groups</w>\": 6776,\n  \"grouse</w>\": 36327,\n  \"grove\": 31756,\n  \"grove</w>\": 7463,\n  \"grover</w>\": 31345,\n  \"groves</w>\": 27306,\n  \"grow\": 3179,\n  \"grow</w>\": 4559,\n  \"grower</w>\": 44925,\n  \"growers</w>\": 25689,\n  \"growing\": 28429,\n  \"growing</w>\": 4425,\n  \"growingup\": 43433,\n  \"growler</w>\": 47096,\n  \"grown\": 41762,\n  \"grown</w>\": 7120,\n  \"grows</w>\": 13352,\n  \"growth\": 17925,\n  \"growth</w>\": 4026,\n  \"growthhacking</w>\": 25963,\n  \"grp</w>\": 27321,\n  \"grt</w>\": 28557,\n  \"gru\": 5957,\n  \"grub</w>\": 34019,\n  \"grue\": 42047,\n  \"gruesome</w>\": 47111,\n  \"grum\": 45454,\n  \"grump\": 49015,\n  \"grumpy</w>\": 23610,\n  \"grun\": 16203,\n  \"grunge</w>\": 33745,\n  \"gry\": 16140,\n  \"gry</w>\": 5364,\n  \"gs\": 25818,\n  \"gs</w>\": 1345,\n  \"gsa</w>\": 40433,\n  \"gsc</w>\": 47751,\n  \"gshore</w>\": 43392,\n  \"gsm</w>\": 32181,\n  \"gsp</w>\": 49173,\n  \"gst</w>\": 22239,\n  \"gt\": 16151,\n  \"gt</w>\": 4725,\n  \"gta\": 14826,\n  \"gta</w>\": 15338,\n  \"gtaonline</w>\": 27292,\n  \"gtav</w>\": 27283,\n  \"gti</w>\": 39954,\n  \"gto</w>\": 39071,\n  \"gtr</w>\": 33407,\n  \"gts</w>\": 37338,\n  \"gtx</w>\": 35230,\n  \"gu\": 700,\n  \"gu</w>\": 12916,\n  \"gua</w>\": 23751,\n  \"guacam\": 37477,\n  \"guacamole</w>\": 40115,\n  \"guad\": 22966,\n  \"guadal\": 46097,\n  \"guadalu\": 36994,\n  \"guadalupe</w>\": 38360,\n  \"guam</w>\": 37325,\n  \"guan\": 44191,\n  \"guan</w>\": 42406,\n  \"guang\": 27019,\n  \"guangzhou</w>\": 37857,\n  \"guar\": 4119,\n  \"guaran\": 9242,\n  \"guarantee</w>\": 17421,\n  \"guaranteed</w>\": 14731,\n  \"guarantees</w>\": 40154,\n  \"guard\": 30776,\n  \"guard</w>\": 4901,\n  \"guarded</w>\": 40602,\n  \"guardi\": 12008,\n  \"guardia</w>\": 43628,\n  \"guardian\": 23713,\n  \"guardian</w>\": 9498,\n  \"guardians</w>\": 21479,\n  \"guarding</w>\": 24966,\n  \"guardiola</w>\": 32100,\n  \"guards</w>\": 12810,\n  \"guatem\": 19423,\n  \"guatemala</w>\": 21670,\n  \"guay\": 48591,\n  \"guay</w>\": 24247,\n  \"gubernat\": 41400,\n  \"gubernatorial</w>\": 41618,\n  \"gucci</w>\": 16779,\n  \"gud\": 48061,\n  \"gud</w>\": 22378,\n  \"gue\": 2030,\n  \"gue</w>\": 2917,\n  \"gued</w>\": 38893,\n  \"guel\": 23146,\n  \"guelph</w>\": 27660,\n  \"guer\": 10391,\n  \"guern\": 29277,\n  \"guernsey</w>\": 33982,\n  \"guerra</w>\": 38215,\n  \"guerrero</w>\": 31967,\n  \"guerrilla</w>\": 36715,\n  \"gues\": 39971,\n  \"gues</w>\": 12601,\n  \"guess\": 35506,\n  \"guess</w>\": 3135,\n  \"guessed</w>\": 28005,\n  \"guesses</w>\": 30623,\n  \"guessing</w>\": 21891,\n  \"guest\": 27349,\n  \"guest</w>\": 3781,\n  \"guests</w>\": 6212,\n  \"guet</w>\": 36797,\n  \"guetta</w>\": 45904,\n  \"guez</w>\": 12313,\n  \"gug\": 31358,\n  \"guggen\": 35086,\n  \"guggenheim</w>\": 37135,\n  \"gui\": 2587,\n  \"gui</w>\": 25746,\n  \"guid\": 11437,\n  \"guidance</w>\": 12508,\n  \"guide\": 21845,\n  \"guide</w>\": 3555,\n  \"guided</w>\": 13194,\n  \"guidelines</w>\": 16591,\n  \"guides</w>\": 14375,\n  \"guiding</w>\": 22759,\n  \"guido</w>\": 41818,\n  \"guil\": 5008,\n  \"guild\": 19755,\n  \"guild</w>\": 16597,\n  \"guildford</w>\": 34450,\n  \"guildhall</w>\": 47224,\n  \"guillau\": 41123,\n  \"guillaume</w>\": 45394,\n  \"guiller\": 33660,\n  \"guillermo</w>\": 39524,\n  \"guilt</w>\": 26354,\n  \"guilty</w>\": 9761,\n  \"guin\": 13284,\n  \"guin</w>\": 47863,\n  \"guine\": 13759,\n  \"guinea</w>\": 18537,\n  \"guinness</w>\": 16648,\n  \"guire</w>\": 18209,\n  \"guise</w>\": 42024,\n  \"guit\": 3759,\n  \"guitar\": 21746,\n  \"guitar</w>\": 5084,\n  \"guitarist</w>\": 13035,\n  \"guitars</w>\": 15023,\n  \"guj\": 34935,\n  \"gujar\": 12698,\n  \"gujarat</w>\": 14714,\n  \"guk</w>\": 20280,\n  \"gul\": 5530,\n  \"gul</w>\": 21350,\n  \"gula</w>\": 27426,\n  \"gular</w>\": 34969,\n  \"gulf\": 22101,\n  \"gulf</w>\": 11279,\n  \"gull\": 48764,\n  \"gull</w>\": 28778,\n  \"gulls</w>\": 37501,\n  \"gully</w>\": 46112,\n  \"gum\": 22041,\n  \"gum</w>\": 11235,\n  \"gumb\": 40147,\n  \"gumbo</w>\": 47126,\n  \"gummy</w>\": 34276,\n  \"gums</w>\": 46609,\n  \"gun\": 2748,\n  \"gun</w>\": 3496,\n  \"guna</w>\": 43333,\n  \"gundam</w>\": 26087,\n  \"gundy</w>\": 21162,\n  \"gunman</w>\": 32743,\n  \"gunmen</w>\": 44738,\n  \"gunn</w>\": 27473,\n  \"gunna</w>\": 24002,\n  \"gunnar</w>\": 45301,\n  \"gunner</w>\": 35285,\n  \"gunners</w>\": 37788,\n  \"guns</w>\": 7591,\n  \"gunsense</w>\": 44781,\n  \"gunshot</w>\": 49250,\n  \"gunsn\": 49028,\n  \"gup\": 38632,\n  \"gup</w>\": 47335,\n  \"gupta</w>\": 15905,\n  \"gur\": 3218,\n  \"gur</w>\": 30224,\n  \"gura</w>\": 46836,\n  \"gurgaon</w>\": 33240,\n  \"guri</w>\": 43888,\n  \"gurl</w>\": 25445,\n  \"gurmee\": 35482,\n  \"gurmeetramrahim</w>\": 36549,\n  \"guru\": 18629,\n  \"guru</w>\": 10800,\n  \"gurudev</w>\": 48647,\n  \"gus</w>\": 8018,\n  \"gust</w>\": 24629,\n  \"gusta\": 23024,\n  \"gusta</w>\": 44196,\n  \"gustav\": 32062,\n  \"gustav</w>\": 37921,\n  \"gustave</w>\": 43170,\n  \"gustavo</w>\": 45943,\n  \"gusto</w>\": 37937,\n  \"gusts</w>\": 20896,\n  \"gusty</w>\": 27589,\n  \"gut\": 24780,\n  \"gut</w>\": 13486,\n  \"guter\": 44963,\n  \"guterres</w>\": 48738,\n  \"guth\": 31696,\n  \"guthrie</w>\": 33164,\n  \"gutier\": 32773,\n  \"gutierrez</w>\": 33739,\n  \"guts</w>\": 25983,\n  \"gutted</w>\": 26524,\n  \"gutter</w>\": 40537,\n  \"guwa\": 43063,\n  \"guwahati</w>\": 45045,\n  \"guy\": 10008,\n  \"guy</w>\": 2149,\n  \"guyana</w>\": 45215,\n  \"guyen</w>\": 28031,\n  \"guys\": 43588,\n  \"guys</w>\": 1791,\n  \"guyz</w>\": 48170,\n  \"guzman</w>\": 37960,\n  \"gv\": 15462,\n  \"gv</w>\": 17336,\n  \"gw\": 7172,\n  \"gw</w>\": 15717,\n  \"gwen\": 32165,\n  \"gwen</w>\": 24182,\n  \"gwin\": 43005,\n  \"gwy\": 32226,\n  \"gwyne\": 36923,\n  \"gx</w>\": 40227,\n  \"gy\": 2168,\n  \"gy</w>\": 1164,\n  \"gya</w>\": 43214,\n  \"gyan</w>\": 43814,\n  \"gye\": 21728,\n  \"gyllen\": 49348,\n  \"gym\": 9902,\n  \"gym</w>\": 5222,\n  \"gymna\": 13517,\n  \"gymnasium</w>\": 42847,\n  \"gymnast</w>\": 42658,\n  \"gymnastics</w>\": 20116,\n  \"gyn</w>\": 39603,\n  \"gyne\": 45836,\n  \"gyp\": 40053,\n  \"gypsy</w>\": 22354,\n  \"gypt</w>\": 41921,\n  \"gz\": 45937,\n  \"gz</w>\": 35841,\n  \"gÃ¶\": 40778,\n  \"gÃ¼\": 31907,\n  \"h\": 71,\n  \"h</w>\": 327,\n  \"ha\": 560,\n  \"ha</w>\": 1429,\n  \"haa</w>\": 26814,\n  \"haal</w>\": 35869,\n  \"haan</w>\": 36284,\n  \"haar\": 45247,\n  \"haar</w>\": 35859,\n  \"haas</w>\": 27443,\n  \"haasan</w>\": 26601,\n  \"hab\": 20573,\n  \"hab</w>\": 20002,\n  \"haban\": 46225,\n  \"haber\": 44737,\n  \"habit\": 8491,\n  \"habit</w>\": 17215,\n  \"habitat</w>\": 11747,\n  \"habitats</w>\": 35344,\n  \"habits</w>\": 14540,\n  \"habs</w>\": 27489,\n  \"hac\": 20343,\n  \"hace</w>\": 43623,\n  \"haci\": 40674,\n  \"hack\": 6610,\n  \"hack</w>\": 11182,\n  \"hackathon</w>\": 25182,\n  \"hacked</w>\": 19575,\n  \"hacker</w>\": 22376,\n  \"hackers</w>\": 21498,\n  \"hacking</w>\": 12939,\n  \"hackney\": 48811,\n  \"hackney</w>\": 24928,\n  \"hacks</w>\": 19965,\n  \"had\": 10660,\n  \"had</w>\": 1100,\n  \"hadi</w>\": 39058,\n  \"hadid</w>\": 26415,\n  \"hadith</w>\": 46907,\n  \"hadley</w>\": 44995,\n  \"hadn</w>\": 21480,\n  \"hadoop</w>\": 43868,\n  \"hae\": 30723,\n  \"hae</w>\": 27193,\n  \"hafi\": 39914,\n  \"hag\": 26855,\n  \"hag</w>\": 43207,\n  \"hagan</w>\": 47489,\n  \"hagen</w>\": 14664,\n  \"hager\": 48773,\n  \"hagg\": 26324,\n  \"hague</w>\": 28988,\n  \"hah\": 18108,\n  \"hah</w>\": 13680,\n  \"haha\": 1913,\n  \"haha</w>\": 3060,\n  \"hahah\": 27253,\n  \"hahah</w>\": 15441,\n  \"hahaha</w>\": 4722,\n  \"hahahah\": 37513,\n  \"hahahah</w>\": 20096,\n  \"hahahaha\": 8058,\n  \"hahahaha</w>\": 9501,\n  \"hahahahah</w>\": 33334,\n  \"hahahahaha</w>\": 16347,\n  \"hahahahahaha</w>\": 26487,\n  \"hahahahahahaha</w>\": 43653,\n  \"hahahahahahahaha\": 36126,\n  \"hahahha</w>\": 49205,\n  \"hahn</w>\": 35596,\n  \"hai\": 8734,\n  \"hai</w>\": 5234,\n  \"haider</w>\": 42200,\n  \"haiku</w>\": 19542,\n  \"hail\": 15272,\n  \"hail</w>\": 8634,\n  \"hailed</w>\": 44604,\n  \"hailey</w>\": 27703,\n  \"hailing</w>\": 47288,\n  \"hails</w>\": 32571,\n  \"hailstate</w>\": 35063,\n  \"hain</w>\": 23861,\n  \"hair\": 4658,\n  \"hair</w>\": 2225,\n  \"haircare</w>\": 43682,\n  \"haircut</w>\": 14711,\n  \"hairdresser</w>\": 47468,\n  \"haired</w>\": 27202,\n  \"hairs</w>\": 27951,\n  \"hairstyle</w>\": 22324,\n  \"hairstyles</w>\": 40627,\n  \"hairy</w>\": 26513,\n  \"haiti</w>\": 17368,\n  \"haitian</w>\": 37577,\n  \"haj\": 27885,\n  \"haj</w>\": 43191,\n  \"haji</w>\": 41889,\n  \"hajj</w>\": 35576,\n  \"hak\": 25142,\n  \"hak</w>\": 40671,\n  \"haka</w>\": 44011,\n  \"hake\": 41663,\n  \"hal\": 1296,\n  \"hal</w>\": 8708,\n  \"hala</w>\": 25918,\n  \"halal</w>\": 34216,\n  \"halam\": 29061,\n  \"halamadrid</w>\": 31132,\n  \"halder</w>\": 32201,\n  \"hale\": 37038,\n  \"hale</w>\": 14701,\n  \"halen</w>\": 39204,\n  \"halep</w>\": 49017,\n  \"haley\": 37330,\n  \"haley</w>\": 16839,\n  \"half\": 7453,\n  \"half</w>\": 2349,\n  \"halftime</w>\": 13742,\n  \"halfway</w>\": 16736,\n  \"hali\": 9860,\n  \"hali</w>\": 43030,\n  \"halibut</w>\": 49030,\n  \"halifax</w>\": 13411,\n  \"hall\": 6850,\n  \"hall</w>\": 2140,\n  \"halla</w>\": 29569,\n  \"halle\": 27763,\n  \"halle</w>\": 32239,\n  \"hallelujah</w>\": 36993,\n  \"halli\": 32665,\n  \"hallmark\": 31040,\n  \"hallmark</w>\": 32053,\n  \"hallmarkchannel</w>\": 36840,\n  \"hallo\": 3463,\n  \"halloffame</w>\": 48578,\n  \"halloween\": 28537,\n  \"halloween</w>\": 3739,\n  \"halls</w>\": 18052,\n  \"hallucin\": 35385,\n  \"hallway</w>\": 26845,\n  \"halo\": 33331,\n  \"halo</w>\": 11918,\n  \"halsey</w>\": 34256,\n  \"halt</w>\": 25640,\n  \"halter</w>\": 47194,\n  \"halton</w>\": 45445,\n  \"ham\": 1522,\n  \"ham</w>\": 1714,\n  \"hama</w>\": 17944,\n  \"hamas</w>\": 14818,\n  \"hamburg</w>\": 18409,\n  \"hamburger</w>\": 33928,\n  \"hamid</w>\": 32377,\n  \"hamil\": 6725,\n  \"hamill\": 45784,\n  \"hamill</w>\": 48729,\n  \"hamillhimself</w>\": 47324,\n  \"hamilton\": 22448,\n  \"hamilton</w>\": 7684,\n  \"hamlet</w>\": 27722,\n  \"hamlin</w>\": 49326,\n  \"hamm</w>\": 46110,\n  \"hammer\": 15331,\n  \"hammer</w>\": 9401,\n  \"hammered</w>\": 37251,\n  \"hammers</w>\": 35649,\n  \"hammersmith</w>\": 42127,\n  \"hammock</w>\": 33682,\n  \"hammond</w>\": 21761,\n  \"hamont</w>\": 18518,\n  \"hamp\": 6665,\n  \"hamper</w>\": 27692,\n  \"hampshire</w>\": 16006,\n  \"hampstead</w>\": 37340,\n  \"hampton\": 36582,\n  \"hampton</w>\": 12285,\n  \"hamptons</w>\": 42415,\n  \"hamr</w>\": 47979,\n  \"hamradio</w>\": 36712,\n  \"hams</w>\": 25619,\n  \"hamster</w>\": 33313,\n  \"hamstring</w>\": 39990,\n  \"hamza</w>\": 45762,\n  \"han\": 1545,\n  \"han</w>\": 3565,\n  \"hana</w>\": 16801,\n  \"hand\": 1722,\n  \"hand</w>\": 2463,\n  \"handbag</w>\": 22654,\n  \"handbags</w>\": 35667,\n  \"handball</w>\": 27988,\n  \"handbook</w>\": 25147,\n  \"handcrafted</w>\": 22185,\n  \"handed</w>\": 10881,\n  \"handedly</w>\": 48656,\n  \"handel</w>\": 40072,\n  \"handful</w>\": 23725,\n  \"handheld</w>\": 26812,\n  \"handic\": 17812,\n  \"handicap</w>\": 27063,\n  \"handicapp\": 42349,\n  \"handing</w>\": 19196,\n  \"handle\": 43681,\n  \"handle</w>\": 7245,\n  \"handled</w>\": 26824,\n  \"handler</w>\": 29097,\n  \"handles</w>\": 22124,\n  \"handling</w>\": 14071,\n  \"handmade\": 18054,\n  \"handmade</w>\": 6737,\n  \"handmadehour</w>\": 25724,\n  \"handover</w>\": 46922,\n  \"hands</w>\": 3500,\n  \"handshake</w>\": 38418,\n  \"handsome</w>\": 7438,\n  \"handwriting</w>\": 29986,\n  \"handwritten</w>\": 35192,\n  \"handy</w>\": 13479,\n  \"hane</w>\": 28411,\n  \"hang\": 3351,\n  \"hang</w>\": 5592,\n  \"hangar</w>\": 33439,\n  \"hanged</w>\": 40807,\n  \"hanger</w>\": 28905,\n  \"hangin</w>\": 22670,\n  \"hanging</w>\": 4850,\n  \"hangout</w>\": 17572,\n  \"hangover</w>\": 20755,\n  \"hangs</w>\": 21785,\n  \"hani\": 39944,\n  \"hani</w>\": 18374,\n  \"hank\": 35993,\n  \"hank</w>\": 17655,\n  \"hanks</w>\": 29943,\n  \"hanley</w>\": 47284,\n  \"hann\": 5584,\n  \"hanna</w>\": 10075,\n  \"hannah\": 18622,\n  \"hannah</w>\": 9142,\n  \"hannel</w>\": 43477,\n  \"hanni\": 19493,\n  \"hannibal</w>\": 25149,\n  \"hannity</w>\": 24569,\n  \"hannover</w>\": 39976,\n  \"hanoi</w>\": 36134,\n  \"hanover</w>\": 33246,\n  \"hans\": 35172,\n  \"hans</w>\": 16628,\n  \"hansen</w>\": 19729,\n  \"hanson</w>\": 24602,\n  \"hant\": 40641,\n  \"hanuk\": 32774,\n  \"hanukkah</w>\": 34247,\n  \"hanuman</w>\": 46975,\n  \"hao</w>\": 27184,\n  \"hap\": 44981,\n  \"hap</w>\": 47988,\n  \"happ\": 784,\n  \"happen\": 21486,\n  \"happen</w>\": 4506,\n  \"happened</w>\": 4402,\n  \"happening</w>\": 4284,\n  \"happeningnow</w>\": 43107,\n  \"happenings</w>\": 41998,\n  \"happens</w>\": 4988,\n  \"happier</w>\": 14118,\n  \"happiest</w>\": 13811,\n  \"happily</w>\": 17316,\n  \"happiness</w>\": 5096,\n  \"happy\": 2952,\n  \"happy</w>\": 900,\n  \"happybirthday\": 9651,\n  \"happybirthday</w>\": 12207,\n  \"happydays</w>\": 25106,\n  \"happye\": 33922,\n  \"happyeaster</w>\": 38745,\n  \"happyfathersday</w>\": 43534,\n  \"happyfriday</w>\": 33340,\n  \"happyhalloween</w>\": 28750,\n  \"happyholidays</w>\": 32186,\n  \"happyhour</w>\": 32036,\n  \"happymonday</w>\": 47364,\n  \"happymothersday</w>\": 42425,\n  \"happynewyear</w>\": 18655,\n  \"happythanksgiving</w>\": 40593,\n  \"happyvalentinesday</w>\": 42403,\n  \"haps</w>\": 9114,\n  \"haq</w>\": 32445,\n  \"har\": 915,\n  \"har</w>\": 5888,\n  \"hara</w>\": 10367,\n  \"haram\": 35732,\n  \"haram</w>\": 22950,\n  \"haran</w>\": 27921,\n  \"harare</w>\": 43562,\n  \"haras\": 26644,\n  \"harass\": 16481,\n  \"harassed</w>\": 43067,\n  \"harassment</w>\": 16641,\n  \"harat</w>\": 28984,\n  \"harb\": 5856,\n  \"harbaugh</w>\": 45220,\n  \"harbor\": 40686,\n  \"harbor</w>\": 10202,\n  \"harbour\": 35430,\n  \"harbour</w>\": 10011,\n  \"harcourt</w>\": 48093,\n  \"hard\": 3312,\n  \"hard</w>\": 1626,\n  \"hardcover</w>\": 31123,\n  \"harden</w>\": 27350,\n  \"harder</w>\": 12274,\n  \"hardest</w>\": 15258,\n  \"hardin</w>\": 43802,\n  \"harding</w>\": 24382,\n  \"hardly</w>\": 17363,\n  \"hardro\": 28126,\n  \"hardrock\": 48365,\n  \"hardrock</w>\": 40739,\n  \"hards</w>\": 44048,\n  \"hardship</w>\": 45085,\n  \"hardt</w>\": 17922,\n  \"hardware</w>\": 11957,\n  \"hardwell</w>\": 45572,\n  \"hardwick</w>\": 46864,\n  \"hardwood</w>\": 28167,\n  \"hardwork\": 42554,\n  \"hardwork</w>\": 27404,\n  \"hardworking</w>\": 28095,\n  \"hardworkpaysoff</w>\": 49193,\n  \"hardy\": 48179,\n  \"hardy</w>\": 14113,\n  \"hare\": 27903,\n  \"hare</w>\": 18464,\n  \"harga</w>\": 39738,\n  \"hari\": 25472,\n  \"hari</w>\": 8981,\n  \"harlan</w>\": 49133,\n  \"harle\": 29096,\n  \"harlem</w>\": 17771,\n  \"harley\": 24702,\n  \"harley</w>\": 13632,\n  \"harleydavidson</w>\": 39183,\n  \"harlow</w>\": 34113,\n  \"harm\": 16656,\n  \"harm</w>\": 14452,\n  \"harman</w>\": 42434,\n  \"harmed</w>\": 39637,\n  \"harmful</w>\": 21725,\n  \"harmless</w>\": 44369,\n  \"harmon\": 10828,\n  \"harmon</w>\": 28729,\n  \"harmony</w>\": 10785,\n  \"harms</w>\": 46703,\n  \"harne\": 43323,\n  \"harness</w>\": 23205,\n  \"harold</w>\": 16917,\n  \"harp</w>\": 27339,\n  \"harper\": 31288,\n  \"harper</w>\": 12634,\n  \"harri\": 6639,\n  \"harrier</w>\": 37372,\n  \"harriet</w>\": 27154,\n  \"harrington</w>\": 34340,\n  \"harris\": 25356,\n  \"harris</w>\": 6925,\n  \"harrisburg</w>\": 40590,\n  \"harrison\": 34389,\n  \"harrison</w>\": 10540,\n  \"harro\": 18939,\n  \"harrogate</w>\": 30842,\n  \"harrow</w>\": 38807,\n  \"harry\": 11094,\n  \"harry</w>\": 3600,\n  \"harrypotter</w>\": 23375,\n  \"harsh\": 30596,\n  \"harsh</w>\": 16944,\n  \"hart\": 9335,\n  \"hart</w>\": 7752,\n  \"hartford</w>\": 23434,\n  \"harth</w>\": 35619,\n  \"hartle\": 47482,\n  \"hartley</w>\": 31268,\n  \"hartman</w>\": 43294,\n  \"haru</w>\": 35099,\n  \"harvard\": 28118,\n  \"harvard</w>\": 12848,\n  \"harve\": 6405,\n  \"harvest\": 44495,\n  \"harvest</w>\": 8971,\n  \"harvested</w>\": 35899,\n  \"harvesting</w>\": 26674,\n  \"harvey\": 33289,\n  \"harvey</w>\": 9586,\n  \"harvick</w>\": 46983,\n  \"haryana</w>\": 27661,\n  \"has\": 13855,\n  \"has</w>\": 791,\n  \"hasan</w>\": 30049,\n  \"hasbro</w>\": 37405,\n  \"hash\": 6338,\n  \"hash</w>\": 19199,\n  \"hashi</w>\": 41831,\n  \"hashmi</w>\": 35852,\n  \"hashtag\": 34015,\n  \"hashtag</w>\": 9238,\n  \"hashtags</w>\": 23514,\n  \"haskell</w>\": 48550,\n  \"hasn</w>\": 9143,\n  \"hass\": 9298,\n  \"hassan</w>\": 15829,\n  \"hassee</w>\": 37117,\n  \"hassel\": 32204,\n  \"hassle</w>\": 35762,\n  \"hast\": 18146,\n  \"hasta</w>\": 36623,\n  \"hastings</w>\": 22035,\n  \"hat\": 3447,\n  \"hat</w>\": 3801,\n  \"hatch\": 24202,\n  \"hatch</w>\": 17809,\n  \"hatchback</w>\": 42348,\n  \"hatched</w>\": 42158,\n  \"hate\": 23546,\n  \"hate</w>\": 3753,\n  \"hated</w>\": 21298,\n  \"hateful</w>\": 36418,\n  \"hater</w>\": 36917,\n  \"haters</w>\": 14027,\n  \"hates</w>\": 14957,\n  \"hatfield</w>\": 38448,\n  \"hath\": 27894,\n  \"hath</w>\": 34416,\n  \"hathaway</w>\": 31801,\n  \"hati</w>\": 26045,\n  \"hating</w>\": 25668,\n  \"hatred</w>\": 19046,\n  \"hats</w>\": 9812,\n  \"hatt\": 8747,\n  \"hatton</w>\": 44861,\n  \"hau\": 5152,\n  \"hauer</w>\": 48751,\n  \"haul\": 23743,\n  \"haul</w>\": 12332,\n  \"hauled</w>\": 46620,\n  \"hauling</w>\": 43132,\n  \"haun\": 9676,\n  \"haunt</w>\": 31039,\n  \"haunted</w>\": 14944,\n  \"haunting</w>\": 24034,\n  \"haunts</w>\": 48035,\n  \"haus\": 41755,\n  \"haus</w>\": 16478,\n  \"hausen</w>\": 33338,\n  \"hauser</w>\": 46586,\n  \"haute</w>\": 28854,\n  \"hav\": 13443,\n  \"hav</w>\": 20447,\n  \"havan</w>\": 36304,\n  \"havana</w>\": 23357,\n  \"havas\": 46261,\n  \"have\": 18053,\n  \"have</w>\": 720,\n  \"haven\": 33074,\n  \"haven</w>\": 3871,\n  \"havent</w>\": 29130,\n  \"haver\": 27876,\n  \"haves</w>\": 49088,\n  \"havin</w>\": 31937,\n  \"having</w>\": 1977,\n  \"havoc</w>\": 24447,\n  \"haw\": 2788,\n  \"haw</w>\": 26954,\n  \"hawa\": 6067,\n  \"hawa</w>\": 46278,\n  \"hawai\": 15800,\n  \"hawaii\": 32413,\n  \"hawaii</w>\": 8265,\n  \"hawaiian</w>\": 17734,\n  \"hawan</w>\": 27765,\n  \"hawk\": 14704,\n  \"hawk</w>\": 8218,\n  \"hawke</w>\": 38178,\n  \"hawker</w>\": 39051,\n  \"hawkeye</w>\": 38666,\n  \"hawkeyes</w>\": 34266,\n  \"hawking</w>\": 33437,\n  \"hawkins</w>\": 19740,\n  \"hawks\": 44806,\n  \"hawks</w>\": 5841,\n  \"hawthorn</w>\": 45372,\n  \"hawthorne</w>\": 36730,\n  \"hay\": 4871,\n  \"hay</w>\": 11367,\n  \"haya</w>\": 41325,\n  \"hayat</w>\": 49360,\n  \"hayden</w>\": 19806,\n  \"haydn</w>\": 48207,\n  \"haye\": 36583,\n  \"hayes</w>\": 13555,\n  \"hayley\": 39986,\n  \"hayley</w>\": 22204,\n  \"haynes</w>\": 30496,\n  \"hays</w>\": 41524,\n  \"hayward</w>\": 29400,\n  \"haz\": 5040,\n  \"haz</w>\": 39921,\n  \"hazard\": 26174,\n  \"hazard</w>\": 15178,\n  \"hazardous</w>\": 27102,\n  \"hazards</w>\": 30639,\n  \"haze</w>\": 22785,\n  \"hazel\": 19838,\n  \"hazel</w>\": 21882,\n  \"hazelnut</w>\": 35816,\n  \"hazi</w>\": 22740,\n  \"hazmat</w>\": 48887,\n  \"hazrat</w>\": 45775,\n  \"hazy</w>\": 32655,\n  \"hb\": 6854,\n  \"hb</w>\": 12576,\n  \"hbcu</w>\": 40008,\n  \"hbd\": 25277,\n  \"hbd</w>\": 13594,\n  \"hbo</w>\": 15252,\n  \"hc\": 15831,\n  \"hc</w>\": 7821,\n  \"hcs</w>\": 46850,\n  \"hd\": 11601,\n  \"hd</w>\": 4414,\n  \"hdd</w>\": 40508,\n  \"hdmi</w>\": 33302,\n  \"hdr</w>\": 28065,\n  \"he\": 651,\n  \"he</w>\": 797,\n  \"hea\": 27150,\n  \"hea</w>\": 32790,\n  \"head\": 1603,\n  \"head</w>\": 1375,\n  \"headache</w>\": 23849,\n  \"headaches</w>\": 38025,\n  \"headband</w>\": 28556,\n  \"headed</w>\": 6153,\n  \"header</w>\": 11077,\n  \"heading</w>\": 4409,\n  \"headless</w>\": 45219,\n  \"headlights</w>\": 42422,\n  \"headline</w>\": 10891,\n  \"headliner</w>\": 38880,\n  \"headlines</w>\": 14706,\n  \"headlining</w>\": 26971,\n  \"headphone</w>\": 37524,\n  \"headphones</w>\": 14906,\n  \"headquarters</w>\": 13041,\n  \"heads</w>\": 5174,\n  \"headset</w>\": 23883,\n  \"headshot</w>\": 34890,\n  \"heal\": 1231,\n  \"heal</w>\": 13833,\n  \"healed</w>\": 31456,\n  \"healer</w>\": 38328,\n  \"healey</w>\": 38985,\n  \"healing</w>\": 9295,\n  \"heals</w>\": 32384,\n  \"health\": 2145,\n  \"health</w>\": 1728,\n  \"healthand\": 43704,\n  \"healthcare\": 42500,\n  \"healthcare</w>\": 6023,\n  \"healthier</w>\": 18242,\n  \"healthtech</w>\": 42694,\n  \"healthy\": 10330,\n  \"healthy</w>\": 3782,\n  \"healthye\": 31532,\n  \"healthyeating</w>\": 33761,\n  \"healthyfood</w>\": 39996,\n  \"healthylifestyle</w>\": 46254,\n  \"healthyliving</w>\": 27293,\n  \"healy</w>\": 34299,\n  \"heap</w>\": 34781,\n  \"heaps</w>\": 44446,\n  \"hear\": 2749,\n  \"hear</w>\": 2584,\n  \"heard</w>\": 4063,\n  \"hearing\": 46353,\n  \"hearing</w>\": 5541,\n  \"hearings</w>\": 33175,\n  \"hearn</w>\": 36613,\n  \"hears</w>\": 25395,\n  \"heart\": 4975,\n  \"heart</w>\": 1936,\n  \"heartbeat</w>\": 29154,\n  \"heartbreak</w>\": 29281,\n  \"heartbreaking</w>\": 21322,\n  \"heartbroken</w>\": 35383,\n  \"hearted</w>\": 21679,\n  \"heartfelt</w>\": 22904,\n  \"hearth\": 31563,\n  \"hearthstone</w>\": 34054,\n  \"hearti\": 29345,\n  \"hearties</w>\": 44572,\n  \"heartland</w>\": 31923,\n  \"heartless</w>\": 47022,\n  \"heartnews</w>\": 40426,\n  \"hearts</w>\": 5516,\n  \"heartw\": 30002,\n  \"heartwarming</w>\": 34080,\n  \"hearty</w>\": 26994,\n  \"heat\": 12175,\n  \"heat</w>\": 4403,\n  \"heated</w>\": 17057,\n  \"heater</w>\": 23246,\n  \"heath\": 12794,\n  \"heath</w>\": 11719,\n  \"heather\": 20230,\n  \"heather</w>\": 12470,\n  \"heathrow</w>\": 24171,\n  \"heating</w>\": 12478,\n  \"heaton</w>\": 34557,\n  \"heats</w>\": 36106,\n  \"heatwave</w>\": 25726,\n  \"heav\": 2409,\n  \"heaven\": 15520,\n  \"heaven</w>\": 5545,\n  \"heavenly</w>\": 19117,\n  \"heavens</w>\": 26026,\n  \"heavier</w>\": 31253,\n  \"heaviest</w>\": 33268,\n  \"heavily</w>\": 14123,\n  \"heavy\": 12048,\n  \"heavy</w>\": 4200,\n  \"heavymetal</w>\": 39804,\n  \"heavyweight</w>\": 17448,\n  \"heb\": 24700,\n  \"heb</w>\": 34515,\n  \"hebdo</w>\": 41817,\n  \"hebrew</w>\": 27298,\n  \"hebrides</w>\": 45121,\n  \"hebron</w>\": 45725,\n  \"hec\": 18932,\n  \"heck\": 22985,\n  \"heck</w>\": 14427,\n  \"hectares</w>\": 44162,\n  \"hectic</w>\": 37245,\n  \"hector</w>\": 25852,\n  \"hed\": 18271,\n  \"hedge\": 16229,\n  \"hedge</w>\": 20294,\n  \"hedgehog</w>\": 21940,\n  \"hedges</w>\": 41345,\n  \"hee\": 18364,\n  \"hee</w>\": 15773,\n  \"heechul</w>\": 42487,\n  \"heed</w>\": 15118,\n  \"heel\": 33646,\n  \"heel</w>\": 16861,\n  \"heels</w>\": 10909,\n  \"heem</w>\": 30061,\n  \"heer</w>\": 40473,\n  \"hef\": 29473,\n  \"heff\": 48756,\n  \"hefty</w>\": 48584,\n  \"heg\": 41995,\n  \"heh</w>\": 25834,\n  \"hehe\": 48723,\n  \"hehe</w>\": 10658,\n  \"hehehe</w>\": 24138,\n  \"hei\": 6101,\n  \"hei</w>\": 29051,\n  \"heidel\": 42927,\n  \"heidelberg</w>\": 48445,\n  \"heidi\": 44860,\n  \"heidi</w>\": 23867,\n  \"heifer</w>\": 48219,\n  \"heigh\": 43883,\n  \"height</w>\": 10788,\n  \"heights</w>\": 8418,\n  \"heim\": 10931,\n  \"heim</w>\": 9768,\n  \"heimer</w>\": 39517,\n  \"hein\": 15487,\n  \"hein</w>\": 43206,\n  \"heine\": 28742,\n  \"heineken</w>\": 36874,\n  \"heinrich</w>\": 47877,\n  \"heinz</w>\": 32359,\n  \"heir\": 27083,\n  \"heir</w>\": 34007,\n  \"heirloom</w>\": 34232,\n  \"heirs</w>\": 43834,\n  \"heis\": 21849,\n  \"heisman</w>\": 34537,\n  \"heist</w>\": 31035,\n  \"heit</w>\": 37255,\n  \"hel\": 919,\n  \"hel</w>\": 11579,\n  \"hela</w>\": 48212,\n  \"held</w>\": 4042,\n  \"hele</w>\": 46129,\n  \"helen\": 17576,\n  \"helen</w>\": 11291,\n  \"helena</w>\": 23109,\n  \"helene</w>\": 41591,\n  \"helens</w>\": 45940,\n  \"heli\": 33874,\n  \"heli</w>\": 40183,\n  \"helicop\": 10035,\n  \"helicopter</w>\": 11956,\n  \"helicopters</w>\": 26922,\n  \"helium</w>\": 46505,\n  \"helix</w>\": 35247,\n  \"hell\": 8410,\n  \"hell</w>\": 4141,\n  \"hella</w>\": 19800,\n  \"hellboy</w>\": 48428,\n  \"helle\": 48600,\n  \"helle</w>\": 46968,\n  \"hellenic</w>\": 42544,\n  \"heller</w>\": 44464,\n  \"hello\": 12887,\n  \"hello</w>\": 3306,\n  \"hells</w>\": 47989,\n  \"helly</w>\": 48690,\n  \"helm\": 47970,\n  \"helm</w>\": 19520,\n  \"helmet</w>\": 11122,\n  \"helmets</w>\": 21843,\n  \"help\": 8641,\n  \"help</w>\": 1318,\n  \"helped</w>\": 4845,\n  \"helper</w>\": 29321,\n  \"helpers</w>\": 36316,\n  \"helpful</w>\": 12695,\n  \"helping</w>\": 3875,\n  \"helpless</w>\": 47638,\n  \"helpline</w>\": 43101,\n  \"helps</w>\": 5144,\n  \"helsin\": 17842,\n  \"helsinki</w>\": 19626,\n  \"hem\": 20270,\n  \"hem</w>\": 11148,\n  \"hemi\": 14256,\n  \"hemi</w>\": 46856,\n  \"heming\": 30819,\n  \"hemingway</w>\": 33470,\n  \"hemisphere</w>\": 32767,\n  \"hemmings</w>\": 34882,\n  \"hemo\": 43788,\n  \"hemp\": 28225,\n  \"hemp</w>\": 18467,\n  \"hems\": 32451,\n  \"hemsworth</w>\": 39428,\n  \"hen\": 2385,\n  \"hen</w>\": 8047,\n  \"hence</w>\": 23640,\n  \"hend\": 11560,\n  \"hender\": 49248,\n  \"henderson</w>\": 14348,\n  \"hendrick</w>\": 45296,\n  \"hendricks</w>\": 37588,\n  \"hendrix</w>\": 23605,\n  \"henge</w>\": 33104,\n  \"henley</w>\": 27853,\n  \"henna</w>\": 39455,\n  \"hennessy</w>\": 42667,\n  \"henri\": 19431,\n  \"henri</w>\": 21610,\n  \"henrik</w>\": 35772,\n  \"henry\": 16018,\n  \"henry</w>\": 5508,\n  \"hens</w>\": 31742,\n  \"henson</w>\": 32935,\n  \"hep\": 17724,\n  \"hep</w>\": 48791,\n  \"hepat\": 23767,\n  \"hepatitis</w>\": 32169,\n  \"hepburn</w>\": 26348,\n  \"her\": 1223,\n  \"her</w>\": 899,\n  \"hera</w>\": 38724,\n  \"heral\": 37809,\n  \"herald\": 27625,\n  \"herald</w>\": 12851,\n  \"herb\": 26116,\n  \"herb</w>\": 15302,\n  \"herbal</w>\": 21868,\n  \"herbali\": 44087,\n  \"herbalife</w>\": 48364,\n  \"herbert</w>\": 19935,\n  \"herbs</w>\": 17320,\n  \"hercules</w>\": 26539,\n  \"herd\": 36142,\n  \"herd</w>\": 18589,\n  \"here\": 9134,\n  \"here</w>\": 763,\n  \"hered\": 47976,\n  \"hereford</w>\": 35543,\n  \"heres</w>\": 13566,\n  \"hereto\": 47673,\n  \"heri</w>\": 31392,\n  \"herit\": 4720,\n  \"heritag\": 38273,\n  \"heritage\": 20962,\n  \"heritage</w>\": 5455,\n  \"herman\": 31890,\n  \"herman</w>\": 21568,\n  \"hermann</w>\": 40942,\n  \"hermes</w>\": 34563,\n  \"hermi\": 35265,\n  \"hermione</w>\": 45502,\n  \"hermit</w>\": 43953,\n  \"hermitage</w>\": 47706,\n  \"hermo\": 40967,\n  \"hermosa</w>\": 42531,\n  \"hern\": 30571,\n  \"hern</w>\": 43576,\n  \"hernandez</w>\": 17707,\n  \"hero\": 7338,\n  \"hero</w>\": 3756,\n  \"heroes\": 38010,\n  \"heroes</w>\": 5506,\n  \"heroic</w>\": 24255,\n  \"heroin</w>\": 23841,\n  \"heroine</w>\": 27420,\n  \"heron</w>\": 22593,\n  \"heros</w>\": 37642,\n  \"herr</w>\": 38537,\n  \"herrera</w>\": 27755,\n  \"herring</w>\": 30211,\n  \"hers</w>\": 25359,\n  \"herself</w>\": 9207,\n  \"hersh\": 20379,\n  \"hershey</w>\": 29734,\n  \"hert\": 26744,\n  \"hertfordshire</w>\": 41070,\n  \"herts</w>\": 35784,\n  \"herty</w>\": 23454,\n  \"hertz</w>\": 49383,\n  \"hes\": 30553,\n  \"hes</w>\": 12784,\n  \"hesit\": 23933,\n  \"hesitate</w>\": 34967,\n  \"hess</w>\": 41888,\n  \"hester</w>\": 31105,\n  \"het\": 37527,\n  \"het</w>\": 19678,\n  \"hetero\": 26405,\n  \"heu\": 20105,\n  \"heughan</w>\": 32298,\n  \"hew\": 48141,\n  \"hew</w>\": 43051,\n  \"hewitt</w>\": 28871,\n  \"hex\": 16255,\n  \"hex</w>\": 31241,\n  \"hey\": 10759,\n  \"hey</w>\": 2189,\n  \"hez\": 34591,\n  \"hezbollah</w>\": 37636,\n  \"hf\": 26606,\n  \"hf</w>\": 20603,\n  \"hfx\": 47297,\n  \"hg\": 23986,\n  \"hg</w>\": 26237,\n  \"hgtv</w>\": 47657,\n  \"hh\": 3280,\n  \"hh</w>\": 5180,\n  \"hhh</w>\": 8281,\n  \"hhhh\": 19391,\n  \"hhhh</w>\": 13121,\n  \"hhhhh</w>\": 24246,\n  \"hhhhhh</w>\": 37278,\n  \"hhs</w>\": 27006,\n  \"hi\": 677,\n  \"hi</w>\": 1883,\n  \"hia</w>\": 20672,\n  \"hiatus</w>\": 27823,\n  \"hib\": 15922,\n  \"hiber\": 38799,\n  \"hibis\": 36226,\n  \"hibiscus</w>\": 36460,\n  \"hibition</w>\": 24658,\n  \"hibs</w>\": 42814,\n  \"hic\": 3549,\n  \"hic</w>\": 38079,\n  \"hick\": 14813,\n  \"hickman</w>\": 49148,\n  \"hickory</w>\": 29905,\n  \"hicks</w>\": 23429,\n  \"hid\": 15552,\n  \"hid</w>\": 14451,\n  \"hidalgo</w>\": 47464,\n  \"hidden\": 28305,\n  \"hidden</w>\": 7029,\n  \"hiddleston</w>\": 31444,\n  \"hide\": 17725,\n  \"hide</w>\": 9379,\n  \"hideous</w>\": 46588,\n  \"hides</w>\": 30800,\n  \"hiding</w>\": 11371,\n  \"hie</w>\": 15763,\n  \"hier\": 23433,\n  \"hier</w>\": 29913,\n  \"hierarchy</w>\": 44442,\n  \"hifi</w>\": 38168,\n  \"hig\": 38108,\n  \"higgins</w>\": 21783,\n  \"high\": 1487,\n  \"high</w>\": 1400,\n  \"higher</w>\": 5321,\n  \"highered</w>\": 27072,\n  \"highest</w>\": 5317,\n  \"highland\": 32244,\n  \"highland</w>\": 16062,\n  \"highlander</w>\": 46251,\n  \"highlanders</w>\": 40445,\n  \"highlands</w>\": 16883,\n  \"highlight</w>\": 8264,\n  \"highlighted</w>\": 22252,\n  \"highlighter</w>\": 45460,\n  \"highlighting</w>\": 17344,\n  \"highlights</w>\": 6173,\n  \"highly</w>\": 5302,\n  \"highness</w>\": 38694,\n  \"highs</w>\": 15144,\n  \"highschool</w>\": 23102,\n  \"highway\": 45344,\n  \"highway</w>\": 7620,\n  \"highways</w>\": 28007,\n  \"higu\": 39115,\n  \"hihi</w>\": 36240,\n  \"hii</w>\": 42315,\n  \"hijab</w>\": 31407,\n  \"hika</w>\": 41356,\n  \"hikari</w>\": 44624,\n  \"hike</w>\": 9404,\n  \"hiked</w>\": 36471,\n  \"hiker</w>\": 40947,\n  \"hikers</w>\": 46090,\n  \"hikes</w>\": 27076,\n  \"hiking</w>\": 9118,\n  \"hiko</w>\": 48708,\n  \"hil\": 3508,\n  \"hil</w>\": 17927,\n  \"hila</w>\": 38837,\n  \"hilar\": 37337,\n  \"hilari\": 7784,\n  \"hilarious</w>\": 8358,\n  \"hilariously</w>\": 43476,\n  \"hilary\": 45898,\n  \"hilary</w>\": 25415,\n  \"hilde\": 45382,\n  \"hill\": 3671,\n  \"hill</w>\": 2682,\n  \"hillary\": 13257,\n  \"hillary</w>\": 7074,\n  \"hillaryclinton</w>\": 15357,\n  \"hilli\": 32513,\n  \"hills\": 24178,\n  \"hills</w>\": 5289,\n  \"hillsborough</w>\": 32157,\n  \"hillside</w>\": 37194,\n  \"hilltop</w>\": 45858,\n  \"hilly</w>\": 32483,\n  \"hilton\": 33621,\n  \"hilton</w>\": 14012,\n  \"him\": 4128,\n  \"him</w>\": 1269,\n  \"himach\": 29132,\n  \"himachal</w>\": 35461,\n  \"himalay\": 17552,\n  \"himalayan</w>\": 30318,\n  \"himalayas</w>\": 32872,\n  \"hime</w>\": 45892,\n  \"himself</w>\": 4530,\n  \"himss</w>\": 41730,\n  \"hin\": 1676,\n  \"hin</w>\": 37930,\n  \"hina</w>\": 40571,\n  \"hinakhan</w>\": 45518,\n  \"hinch\": 49320,\n  \"hind\": 34460,\n  \"hind</w>\": 23293,\n  \"hindi</w>\": 14967,\n  \"hinds</w>\": 47859,\n  \"hindu\": 17587,\n  \"hindu</w>\": 12053,\n  \"hinduism</w>\": 40592,\n  \"hindus</w>\": 25701,\n  \"hindustan</w>\": 46553,\n  \"hines</w>\": 37462,\n  \"hing\": 37968,\n  \"hini</w>\": 33564,\n  \"hino</w>\": 45343,\n  \"hint</w>\": 11868,\n  \"hinton</w>\": 47165,\n  \"hints</w>\": 20594,\n  \"hio</w>\": 32897,\n  \"hip\": 11725,\n  \"hip</w>\": 6584,\n  \"hipho\": 8819,\n  \"hiphop\": 26598,\n  \"hiphop</w>\": 10914,\n  \"hipp\": 13607,\n  \"hippie</w>\": 28637,\n  \"hippo\": 28398,\n  \"hippo</w>\": 36729,\n  \"hips</w>\": 30191,\n  \"hipstamatic</w>\": 31002,\n  \"hipster</w>\": 19987,\n  \"hipsters</w>\": 48265,\n  \"hir\": 4959,\n  \"hir</w>\": 14728,\n  \"hira</w>\": 42577,\n  \"hire\": 32356,\n  \"hire</w>\": 8243,\n  \"hired</w>\": 17602,\n  \"hires</w>\": 24133,\n  \"hiring</w>\": 7835,\n  \"hiro\": 17396,\n  \"hiro</w>\": 20588,\n  \"hiroshima</w>\": 33867,\n  \"hirsch</w>\": 46967,\n  \"his\": 15211,\n  \"his</w>\": 787,\n  \"hism</w>\": 23502,\n  \"hispan\": 16843,\n  \"hispanic</w>\": 22676,\n  \"hist\": 21710,\n  \"hist</w>\": 13779,\n  \"histo\": 33479,\n  \"histor\": 2993,\n  \"historia</w>\": 46010,\n  \"historian</w>\": 20697,\n  \"historians</w>\": 35200,\n  \"historic\": 30195,\n  \"historic</w>\": 5726,\n  \"historical\": 34154,\n  \"historical</w>\": 8039,\n  \"historically</w>\": 30445,\n  \"histories</w>\": 34736,\n  \"history\": 11142,\n  \"history</w>\": 1695,\n  \"historymonth</w>\": 19356,\n  \"historyof\": 35905,\n  \"hit\": 5453,\n  \"hit</w>\": 2341,\n  \"hitch\": 22937,\n  \"hitch</w>\": 36203,\n  \"hitler</w>\": 16518,\n  \"hitman</w>\": 33290,\n  \"hits</w>\": 4712,\n  \"hitter</w>\": 23538,\n  \"hitters</w>\": 39724,\n  \"hitting</w>\": 7957,\n  \"hiv\": 44410,\n  \"hiv</w>\": 11018,\n  \"hive\": 38162,\n  \"hive</w>\": 18521,\n  \"hiya</w>\": 42393,\n  \"hk\": 22648,\n  \"hk</w>\": 12307,\n  \"hl\": 8297,\n  \"hl</w>\": 5956,\n  \"hle</w>\": 32389,\n  \"hler</w>\": 35418,\n  \"hm\": 17913,\n  \"hm</w>\": 7631,\n  \"hmm</w>\": 13725,\n  \"hmmm</w>\": 17032,\n  \"hmmmm</w>\": 34598,\n  \"hms</w>\": 14625,\n  \"hmu</w>\": 21630,\n  \"hmv</w>\": 49288,\n  \"hn\": 22905,\n  \"hn</w>\": 7478,\n  \"hns</w>\": 48412,\n  \"ho\": 606,\n  \"ho</w>\": 2971,\n  \"hoa</w>\": 37517,\n  \"hoar\": 31628,\n  \"hoax</w>\": 33438,\n  \"hob\": 18212,\n  \"hobart</w>\": 31646,\n  \"hobb\": 16175,\n  \"hobbies</w>\": 36370,\n  \"hobbit</w>\": 23207,\n  \"hobbs</w>\": 34343,\n  \"hobby\": 41120,\n  \"hobby</w>\": 17557,\n  \"hobo\": 34613,\n  \"hobo</w>\": 41334,\n  \"hoboken</w>\": 41568,\n  \"hoc</w>\": 35880,\n  \"hoch\": 43772,\n  \"hock\": 34914,\n  \"hock</w>\": 46574,\n  \"hockey\": 16499,\n  \"hockey</w>\": 4111,\n  \"hoco</w>\": 34771,\n  \"hod\": 31062,\n  \"hodg\": 23660,\n  \"hodge</w>\": 40585,\n  \"hodges</w>\": 35061,\n  \"hodgson</w>\": 37044,\n  \"hoe\": 32502,\n  \"hoe</w>\": 11262,\n  \"hoek</w>\": 40073,\n  \"hoes</w>\": 21164,\n  \"hof\": 20186,\n  \"hof</w>\": 12789,\n  \"hofer</w>\": 38654,\n  \"hoff\": 32860,\n  \"hoff</w>\": 22751,\n  \"hofficial</w>\": 41949,\n  \"hoffman</w>\": 22026,\n  \"hog\": 12075,\n  \"hog</w>\": 13255,\n  \"hogan</w>\": 19757,\n  \"hogg</w>\": 42005,\n  \"hogs</w>\": 23242,\n  \"hogwarts</w>\": 29168,\n  \"hoh</w>\": 43947,\n  \"hoi\": 39295,\n  \"hok\": 26942,\n  \"hok</w>\": 47167,\n  \"hokies</w>\": 35168,\n  \"hokkaido</w>\": 49145,\n  \"hol\": 1187,\n  \"hol</w>\": 7349,\n  \"hola</w>\": 28724,\n  \"hold\": 36496,\n  \"hold</w>\": 3254,\n  \"holden</w>\": 21869,\n  \"holder</w>\": 7862,\n  \"holders</w>\": 10074,\n  \"holding</w>\": 5050,\n  \"holdings</w>\": 24832,\n  \"holds</w>\": 7286,\n  \"hole\": 47242,\n  \"hole</w>\": 5341,\n  \"holes</w>\": 11266,\n  \"holi\": 2093,\n  \"holi</w>\": 21926,\n  \"holic</w>\": 16348,\n  \"holics</w>\": 29782,\n  \"holiday\": 13168,\n  \"holiday</w>\": 2878,\n  \"holidays</w>\": 5372,\n  \"holiness</w>\": 37259,\n  \"holistic</w>\": 26300,\n  \"holl\": 27699,\n  \"holla</w>\": 26500,\n  \"holland\": 31608,\n  \"holland</w>\": 9978,\n  \"hollande</w>\": 47690,\n  \"holler</w>\": 49047,\n  \"holli\": 24019,\n  \"holliday</w>\": 41624,\n  \"hollow\": 41221,\n  \"hollow</w>\": 16691,\n  \"holloway</w>\": 29435,\n  \"holly\": 12731,\n  \"holly</w>\": 11923,\n  \"hollyo\": 41525,\n  \"hollyoaks</w>\": 43352,\n  \"hollywood\": 24655,\n  \"hollywood</w>\": 5518,\n  \"holm\": 34758,\n  \"holm</w>\": 12739,\n  \"holme</w>\": 46149,\n  \"holmes</w>\": 12756,\n  \"holo\": 10317,\n  \"holocau\": 14688,\n  \"holocaust</w>\": 16476,\n  \"hols</w>\": 33344,\n  \"holt</w>\": 18868,\n  \"holtz</w>\": 44743,\n  \"holy\": 13910,\n  \"holy</w>\": 4874,\n  \"hom\": 906,\n  \"hom</w>\": 47397,\n  \"homa</w>\": 9557,\n  \"homage</w>\": 17746,\n  \"home\": 2143,\n  \"home</w>\": 1137,\n  \"homebrew</w>\": 35046,\n  \"homec\": 33869,\n  \"homecoming</w>\": 9008,\n  \"homedecor</w>\": 15695,\n  \"homedepot</w>\": 38707,\n  \"homegrown</w>\": 32554,\n  \"homeitems</w>\": 42972,\n  \"homeland</w>\": 21633,\n  \"homeless\": 18403,\n  \"homeless</w>\": 9661,\n  \"homelessness</w>\": 19851,\n  \"homemade</w>\": 7889,\n  \"homeof\": 48856,\n  \"homeowner</w>\": 37267,\n  \"homeowners</w>\": 29882,\n  \"homepage</w>\": 29828,\n  \"homer\": 29307,\n  \"homer</w>\": 16931,\n  \"homers</w>\": 38333,\n  \"homes\": 19480,\n  \"homes</w>\": 5416,\n  \"homeschool</w>\": 40994,\n  \"homestead</w>\": 32609,\n  \"homeswee\": 46298,\n  \"hometown</w>\": 12238,\n  \"homework</w>\": 12495,\n  \"homicide</w>\": 21520,\n  \"homie</w>\": 12540,\n  \"homies</w>\": 18893,\n  \"homme</w>\": 26193,\n  \"homo\": 18129,\n  \"homo</w>\": 30504,\n  \"homophobia</w>\": 37875,\n  \"homophobic</w>\": 40975,\n  \"homosexual</w>\": 44288,\n  \"homosexuality</w>\": 46720,\n  \"homs</w>\": 45413,\n  \"hon\": 1279,\n  \"hon</w>\": 10296,\n  \"honda</w>\": 8553,\n  \"honduras</w>\": 29715,\n  \"hone</w>\": 38640,\n  \"honest\": 7814,\n  \"honest</w>\": 9602,\n  \"honestly</w>\": 9155,\n  \"honesty</w>\": 24939,\n  \"honey\": 9843,\n  \"honey</w>\": 6406,\n  \"honeycomb</w>\": 48583,\n  \"honeymoon</w>\": 22527,\n  \"hong\": 12144,\n  \"hong</w>\": 8598,\n  \"hongkong</w>\": 16659,\n  \"honi</w>\": 17918,\n  \"honolulu</w>\": 28096,\n  \"honor\": 9206,\n  \"honor</w>\": 3402,\n  \"honorable</w>\": 19498,\n  \"honorary</w>\": 15675,\n  \"honore\": 25868,\n  \"honored</w>\": 5494,\n  \"honoree</w>\": 38993,\n  \"honorees</w>\": 43012,\n  \"honoring</w>\": 10771,\n  \"honors</w>\": 10248,\n  \"honour</w>\": 8240,\n  \"honourable</w>\": 29855,\n  \"honoured</w>\": 11945,\n  \"honouring</w>\": 37754,\n  \"honours</w>\": 22558,\n  \"hoo\": 2300,\n  \"hoo</w>\": 7920,\n  \"hood\": 18681,\n  \"hood</w>\": 3222,\n  \"hooded</w>\": 33631,\n  \"hoodie</w>\": 13444,\n  \"hoodies</w>\": 25974,\n  \"hoods</w>\": 16664,\n  \"hoof</w>\": 44555,\n  \"hook\": 30488,\n  \"hook</w>\": 10395,\n  \"hookah</w>\": 34214,\n  \"hooked</w>\": 18138,\n  \"hookem</w>\": 31465,\n  \"hooker</w>\": 37891,\n  \"hooking</w>\": 35240,\n  \"hooks</w>\": 25068,\n  \"hooligans</w>\": 48176,\n  \"hoon</w>\": 21368,\n  \"hooo</w>\": 44538,\n  \"hoop\": 31516,\n  \"hoop</w>\": 19573,\n  \"hooper</w>\": 35221,\n  \"hoops</w>\": 9351,\n  \"hoor\": 22155,\n  \"hooray</w>\": 24940,\n  \"hoos</w>\": 46462,\n  \"hoosier</w>\": 48886,\n  \"hoosiers</w>\": 42780,\n  \"hoot</w>\": 29164,\n  \"hoover</w>\": 25691,\n  \"hop\": 10848,\n  \"hop</w>\": 5833,\n  \"hope\": 5263,\n  \"hope</w>\": 1683,\n  \"hoped</w>\": 30628,\n  \"hopeful</w>\": 21453,\n  \"hopefully</w>\": 7602,\n  \"hopeless</w>\": 35586,\n  \"hopes</w>\": 10018,\n  \"hoping</w>\": 7207,\n  \"hopkins</w>\": 17821,\n  \"hopp\": 48839,\n  \"hopped</w>\": 34220,\n  \"hopper</w>\": 21748,\n  \"hopping</w>\": 27606,\n  \"hoppy</w>\": 38359,\n  \"hops</w>\": 21137,\n  \"hor\": 1407,\n  \"hor</w>\": 33847,\n  \"hora</w>\": 26013,\n  \"horace</w>\": 39282,\n  \"horan</w>\": 26857,\n  \"horde</w>\": 44947,\n  \"hore</w>\": 15380,\n  \"horiz\": 8144,\n  \"horizon\": 17924,\n  \"horizon</w>\": 11920,\n  \"horizons</w>\": 29685,\n  \"horizontal</w>\": 25775,\n  \"hormon\": 27096,\n  \"hormone</w>\": 31283,\n  \"hormones</w>\": 35162,\n  \"horn\": 15771,\n  \"horn</w>\": 9607,\n  \"horne</w>\": 38143,\n  \"horned</w>\": 34526,\n  \"hornet</w>\": 28739,\n  \"hornets</w>\": 20124,\n  \"horns</w>\": 22109,\n  \"horny</w>\": 32622,\n  \"horo\": 21500,\n  \"horoscope</w>\": 38453,\n  \"horowitz</w>\": 44669,\n  \"horri\": 8656,\n  \"horrible</w>\": 13726,\n  \"horribly</w>\": 45484,\n  \"horrific</w>\": 25314,\n  \"horrifying</w>\": 38901,\n  \"horror\": 13787,\n  \"horror</w>\": 5032,\n  \"horrormovies</w>\": 46682,\n  \"horrors</w>\": 33321,\n  \"horse\": 8562,\n  \"horse</w>\": 4558,\n  \"horseback</w>\": 43673,\n  \"horseman</w>\": 48885,\n  \"horsepower</w>\": 36882,\n  \"horser\": 23096,\n  \"horseracing</w>\": 30693,\n  \"horses</w>\": 8809,\n  \"horseshoe</w>\": 29242,\n  \"horst</w>\": 37182,\n  \"hort</w>\": 19482,\n  \"horticul\": 27141,\n  \"horticulture</w>\": 39998,\n  \"horton</w>\": 25945,\n  \"hortons</w>\": 38422,\n  \"horus</w>\": 29794,\n  \"hos\": 44320,\n  \"hos</w>\": 25008,\n  \"hosa</w>\": 44618,\n  \"hose</w>\": 19662,\n  \"hoseok</w>\": 38817,\n  \"hosp\": 2847,\n  \"hosp</w>\": 37853,\n  \"hospice</w>\": 20533,\n  \"hospit\": 7180,\n  \"hospital\": 29399,\n  \"hospital</w>\": 3851,\n  \"hospitality</w>\": 11657,\n  \"hospitalized</w>\": 36915,\n  \"hospitals</w>\": 13816,\n  \"host\": 17403,\n  \"host</w>\": 3953,\n  \"hostage</w>\": 26119,\n  \"hoste\": 31700,\n  \"hosted</w>\": 6017,\n  \"hostel</w>\": 27225,\n  \"hostess</w>\": 39692,\n  \"hostile</w>\": 28074,\n  \"hosting</w>\": 4857,\n  \"hosts</w>\": 8718,\n  \"hot\": 2851,\n  \"hot</w>\": 2069,\n  \"hota</w>\": 43289,\n  \"hotdog</w>\": 43758,\n  \"hotel\": 14591,\n  \"hotel</w>\": 2738,\n  \"hotels</w>\": 8654,\n  \"hotline</w>\": 30516,\n  \"hotmail</w>\": 46427,\n  \"hotness</w>\": 39803,\n  \"hotra</w>\": 27109,\n  \"hotro\": 47823,\n  \"hotspot</w>\": 36606,\n  \"hotspur</w>\": 35176,\n  \"hotter</w>\": 23591,\n  \"hottest</w>\": 8279,\n  \"hottie</w>\": 22804,\n  \"hotties</w>\": 46027,\n  \"hou\": 1011,\n  \"hou</w>\": 10122,\n  \"hough</w>\": 44529,\n  \"houghton</w>\": 36133,\n  \"houn\": 39273,\n  \"houn</w>\": 33607,\n  \"hound\": 33996,\n  \"hound</w>\": 13561,\n  \"hounds</w>\": 21178,\n  \"hounews</w>\": 48373,\n  \"hour\": 14930,\n  \"hour</w>\": 2232,\n  \"hourly</w>\": 30918,\n  \"hours</w>\": 2382,\n  \"house\": 4107,\n  \"house</w>\": 1212,\n  \"housed</w>\": 37518,\n  \"household</w>\": 12412,\n  \"households</w>\": 27167,\n  \"housel\": 48685,\n  \"housemusic</w>\": 28468,\n  \"houseof\": 19928,\n  \"houses</w>\": 7791,\n  \"housewives</w>\": 38523,\n  \"housing\": 32924,\n  \"housing</w>\": 5734,\n  \"houston\": 16564,\n  \"houston</w>\": 5663,\n  \"hov</w>\": 40291,\n  \"hove</w>\": 29674,\n  \"hoven</w>\": 35559,\n  \"hover\": 36252,\n  \"hover</w>\": 49016,\n  \"hovering</w>\": 43437,\n  \"how\": 7470,\n  \"how</w>\": 829,\n  \"howar\": 37672,\n  \"howard\": 25447,\n  \"howard</w>\": 7632,\n  \"howdy</w>\": 42216,\n  \"howe\": 8179,\n  \"howe</w>\": 24614,\n  \"howell</w>\": 25297,\n  \"hower</w>\": 32920,\n  \"however</w>\": 8467,\n  \"howi\": 47883,\n  \"howie</w>\": 42939,\n  \"howl</w>\": 40332,\n  \"howling</w>\": 41771,\n  \"howto\": 38191,\n  \"howto</w>\": 44060,\n  \"hoy\": 39625,\n  \"hoy</w>\": 13278,\n  \"hoya</w>\": 40978,\n  \"hp\": 23753,\n  \"hp</w>\": 6371,\n  \"hpa</w>\": 30983,\n  \"hpc</w>\": 39936,\n  \"hpe</w>\": 33787,\n  \"hpv</w>\": 45765,\n  \"hq\": 33571,\n  \"hq</w>\": 4693,\n  \"hr\": 4810,\n  \"hr</w>\": 4086,\n  \"hra\": 21320,\n  \"hra</w>\": 17212,\n  \"hrc</w>\": 18139,\n  \"hrh</w>\": 29103,\n  \"hri\": 21068,\n  \"hrithik</w>\": 45371,\n  \"hrs</w>\": 7157,\n  \"hru</w>\": 24127,\n  \"hrw</w>\": 25064,\n  \"hs\": 9343,\n  \"hs</w>\": 2466,\n  \"hsbc</w>\": 31508,\n  \"hsc</w>\": 43510,\n  \"hse</w>\": 34057,\n  \"hsfb</w>\": 29539,\n  \"hsv</w>\": 47311,\n  \"ht\": 11123,\n  \"ht</w>\": 7801,\n  \"hta\": 23452,\n  \"hta</w>\": 49384,\n  \"htafc</w>\": 42821,\n  \"htc\": 48942,\n  \"htc</w>\": 17635,\n  \"html</w>\": 18231,\n  \"hts</w>\": 43710,\n  \"htt\": 10620,\n  \"http</w>\": 15066,\n  \"https</w>\": 30901,\n  \"httr</w>\": 49372,\n  \"httweets</w>\": 43198,\n  \"hu\": 845,\n  \"hu</w>\": 5949,\n  \"hua</w>\": 22138,\n  \"huan</w>\": 41405,\n  \"huang</w>\": 32013,\n  \"huar\": 46916,\n  \"huawe\": 17709,\n  \"huawei</w>\": 21128,\n  \"hub\": 18775,\n  \"hub</w>\": 7028,\n  \"hubb\": 23183,\n  \"hubbard</w>\": 33288,\n  \"hubble</w>\": 30421,\n  \"hubby</w>\": 16947,\n  \"hubert</w>\": 40699,\n  \"hubs</w>\": 29327,\n  \"huck\": 22909,\n  \"huckabee</w>\": 43666,\n  \"hud\": 7169,\n  \"hud</w>\": 28563,\n  \"hudder\": 22629,\n  \"huddersfield</w>\": 24220,\n  \"huddle</w>\": 33435,\n  \"hudson\": 25873,\n  \"hudson</w>\": 11260,\n  \"hue\": 48380,\n  \"hue</w>\": 21465,\n  \"hues</w>\": 38003,\n  \"huey</w>\": 39663,\n  \"huff\": 18746,\n  \"huff</w>\": 44999,\n  \"huffpost\": 45887,\n  \"hug\": 40790,\n  \"hug</w>\": 10359,\n  \"huge</w>\": 2699,\n  \"hugely</w>\": 24648,\n  \"hugged</w>\": 41333,\n  \"hugging</w>\": 27058,\n  \"hugh\": 8723,\n  \"hugh</w>\": 15385,\n  \"hughes</w>\": 11418,\n  \"hugo\": 43935,\n  \"hugo</w>\": 17132,\n  \"hugs</w>\": 14248,\n  \"huh</w>\": 13348,\n  \"huhu</w>\": 32134,\n  \"hui</w>\": 29978,\n  \"hul\": 7911,\n  \"hula</w>\": 40145,\n  \"hulk</w>\": 17637,\n  \"hull\": 25154,\n  \"hull</w>\": 10375,\n  \"hulu</w>\": 24666,\n  \"hum\": 5823,\n  \"hum</w>\": 16283,\n  \"human\": 3175,\n  \"human</w>\": 2751,\n  \"humane</w>\": 20220,\n  \"humanitarian</w>\": 14170,\n  \"humanities</w>\": 24949,\n  \"humanity</w>\": 9420,\n  \"humanright\": 44385,\n  \"humanrights</w>\": 14148,\n  \"humans</w>\": 8324,\n  \"humb\": 9988,\n  \"humber\": 30602,\n  \"humber</w>\": 38063,\n  \"humble\": 38703,\n  \"humble</w>\": 10889,\n  \"humbled</w>\": 19682,\n  \"humbling</w>\": 39757,\n  \"humbold\": 24739,\n  \"humboldt</w>\": 31389,\n  \"hume</w>\": 38197,\n  \"humid\": 14778,\n  \"humid</w>\": 27447,\n  \"humidi\": 47666,\n  \"humidity</w>\": 15469,\n  \"humil\": 27205,\n  \"humili\": 25332,\n  \"humility</w>\": 28535,\n  \"humming\": 26515,\n  \"hummingbird</w>\": 33072,\n  \"hummus</w>\": 31785,\n  \"humor\": 29369,\n  \"humor</w>\": 11186,\n  \"humorous</w>\": 38173,\n  \"humour</w>\": 19161,\n  \"hump\": 16673,\n  \"hump</w>\": 24529,\n  \"humpback</w>\": 47662,\n  \"humpday</w>\": 27693,\n  \"humph\": 19767,\n  \"humphrey</w>\": 31549,\n  \"hun\": 1616,\n  \"hun</w>\": 10795,\n  \"hundre\": 8505,\n  \"hundred</w>\": 11898,\n  \"hundreds</w>\": 8879,\n  \"hung</w>\": 13825,\n  \"hungar\": 19420,\n  \"hungarian</w>\": 23325,\n  \"hungary</w>\": 17232,\n  \"hunger\": 25565,\n  \"hunger</w>\": 10184,\n  \"hungergames</w>\": 47507,\n  \"hungover</w>\": 41110,\n  \"hungry\": 44845,\n  \"hungry</w>\": 8451,\n  \"hunk</w>\": 33912,\n  \"hunt\": 16498,\n  \"hunt</w>\": 5774,\n  \"hunted</w>\": 37373,\n  \"hunter\": 16531,\n  \"hunter</w>\": 6099,\n  \"hunters</w>\": 16115,\n  \"hunting\": 27830,\n  \"hunting</w>\": 7507,\n  \"huntington</w>\": 23521,\n  \"hunts</w>\": 34041,\n  \"huntsville</w>\": 34544,\n  \"hur\": 2305,\n  \"hur</w>\": 34523,\n  \"hurd</w>\": 44915,\n  \"hurdle</w>\": 27486,\n  \"hurdles</w>\": 25440,\n  \"huri</w>\": 42486,\n  \"hurley</w>\": 30166,\n  \"hurling</w>\": 24738,\n  \"huron</w>\": 36147,\n  \"hurrah</w>\": 40599,\n  \"hurric\": 6543,\n  \"hurrican\": 36105,\n  \"hurricane\": 24051,\n  \"hurricane</w>\": 8782,\n  \"hurricanes</w>\": 22357,\n  \"hurry</w>\": 10921,\n  \"hurst\": 44742,\n  \"hurst</w>\": 11760,\n  \"hurt</w>\": 7413,\n  \"hurting</w>\": 24017,\n  \"hurts</w>\": 13059,\n  \"hus\": 5111,\n  \"hus</w>\": 35853,\n  \"husband</w>\": 6179,\n  \"husbands</w>\": 33612,\n  \"hush</w>\": 28728,\n  \"husk\": 19246,\n  \"huskers</w>\": 26946,\n  \"huskies</w>\": 20988,\n  \"husky</w>\": 20421,\n  \"huss\": 13733,\n  \"hussain</w>\": 17940,\n  \"hussein</w>\": 31336,\n  \"hust\": 27279,\n  \"hustle</w>\": 15709,\n  \"huston</w>\": 46480,\n  \"hut\": 20924,\n  \"hut</w>\": 16503,\n  \"hutch\": 31018,\n  \"hutch</w>\": 33203,\n  \"hutchinson</w>\": 35721,\n  \"hutto\": 27662,\n  \"hutton</w>\": 38321,\n  \"hv\": 17209,\n  \"hv</w>\": 18593,\n  \"hvac</w>\": 27492,\n  \"hw\": 27491,\n  \"hw</w>\": 18876,\n  \"hwa</w>\": 32352,\n  \"hwan</w>\": 44390,\n  \"hwang</w>\": 46775,\n  \"hwy</w>\": 13812,\n  \"hy\": 1441,\n  \"hy</w>\": 17827,\n  \"hya</w>\": 31600,\n  \"hyacin\": 47263,\n  \"hyatt\": 44856,\n  \"hyatt</w>\": 25146,\n  \"hybri\": 9084,\n  \"hybrid</w>\": 10156,\n  \"hyd</w>\": 42382,\n  \"hyde\": 46484,\n  \"hyde</w>\": 16343,\n  \"hyder\": 13960,\n  \"hyderabad</w>\": 14801,\n  \"hydr\": 8031,\n  \"hydra\": 44414,\n  \"hydra</w>\": 40420,\n  \"hydrange\": 43298,\n  \"hydrate</w>\": 29628,\n  \"hydrated</w>\": 23300,\n  \"hydrating</w>\": 47653,\n  \"hydration</w>\": 24174,\n  \"hydrau\": 26017,\n  \"hydraulic</w>\": 26189,\n  \"hydro\": 8368,\n  \"hydro</w>\": 22595,\n  \"hydrogen</w>\": 20974,\n  \"hye\": 32724,\n  \"hye</w>\": 25792,\n  \"hygi\": 16277,\n  \"hygiene</w>\": 19591,\n  \"hymn</w>\": 41350,\n  \"hyo\": 38960,\n  \"hyo</w>\": 35078,\n  \"hyp\": 16964,\n  \"hype\": 30353,\n  \"hype</w>\": 11111,\n  \"hyped</w>\": 22507,\n  \"hyper\": 7997,\n  \"hyper</w>\": 22146,\n  \"hypertension</w>\": 40698,\n  \"hypno\": 23355,\n  \"hypnosis</w>\": 48138,\n  \"hypnoti\": 40440,\n  \"hypo\": 10252,\n  \"hypocr\": 30711,\n  \"hypocri\": 25606,\n  \"hypocrisy</w>\": 26296,\n  \"hypocrite</w>\": 44125,\n  \"hypothe\": 46966,\n  \"hypothesis</w>\": 44956,\n  \"hyster\": 24235,\n  \"hysteria</w>\": 45965,\n  \"hysterical</w>\": 48627,\n  \"hyuk</w>\": 20452,\n  \"hyun\": 11831,\n  \"hyun</w>\": 8589,\n  \"hyundai</w>\": 17094,\n  \"hyung\": 46901,\n  \"hyung</w>\": 16551,\n  \"hz</w>\": 32533,\n  \"i\": 72,\n  \"i</w>\": 328,\n  \"ia\": 12486,\n  \"ia</w>\": 1073,\n  \"iac\": 32838,\n  \"iac</w>\": 44063,\n  \"iaf</w>\": 40789,\n  \"iah</w>\": 35052,\n  \"iain</w>\": 30103,\n  \"ial\": 11530,\n  \"ial</w>\": 1974,\n  \"ials</w>\": 20940,\n  \"iam\": 3579,\n  \"iam</w>\": 11415,\n  \"iambic\": 43668,\n  \"iambicpent</w>\": 43891,\n  \"iamsrk</w>\": 15103,\n  \"ian\": 7723,\n  \"ian</w>\": 1800,\n  \"ians</w>\": 6451,\n  \"iansomerhalder</w>\": 47077,\n  \"iart\": 18413,\n  \"iartg</w>\": 18669,\n  \"ias\": 32303,\n  \"ias</w>\": 14620,\n  \"ib\": 3962,\n  \"ib</w>\": 13554,\n  \"iba</w>\": 39763,\n  \"ibadan</w>\": 44691,\n  \"iban\": 47145,\n  \"ibc</w>\": 49014,\n  \"ibd</w>\": 40732,\n  \"iber\": 23814,\n  \"ibi\": 12337,\n  \"ibis</w>\": 47048,\n  \"ibiza</w>\": 13853,\n  \"ible</w>\": 37792,\n  \"ibles</w>\": 44102,\n  \"ibm\": 23415,\n  \"ibm</w>\": 13918,\n  \"ibn</w>\": 25729,\n  \"ibooks</w>\": 46887,\n  \"ibra\": 15476,\n  \"ibrahi\": 40350,\n  \"ibrahim</w>\": 20816,\n  \"ibrox</w>\": 46883,\n  \"ibs</w>\": 41993,\n  \"ibu\": 43587,\n  \"ibu</w>\": 46117,\n  \"ic\": 535,\n  \"ic</w>\": 1029,\n  \"ica</w>\": 2576,\n  \"icago</w>\": 37492,\n  \"ical\": 6082,\n  \"ical</w>\": 1110,\n  \"ically</w>\": 3161,\n  \"icals</w>\": 13999,\n  \"ican\": 17653,\n  \"ican</w>\": 5246,\n  \"icans</w>\": 20511,\n  \"icar\": 37211,\n  \"ication</w>\": 21629,\n  \"icc</w>\": 12945,\n  \"ice\": 2739,\n  \"ice</w>\": 733,\n  \"iceberg</w>\": 33662,\n  \"icec\": 13636,\n  \"icecream</w>\": 21334,\n  \"iced</w>\": 8049,\n  \"icelan\": 34114,\n  \"iceland\": 46716,\n  \"iceland</w>\": 11935,\n  \"icelandic</w>\": 34705,\n  \"ices</w>\": 1931,\n  \"ich\": 5333,\n  \"ich</w>\": 1232,\n  \"icha\": 31453,\n  \"iche\": 28972,\n  \"iche</w>\": 21143,\n  \"ichi\": 21669,\n  \"ichi</w>\": 14647,\n  \"ichick</w>\": 45022,\n  \"ichiro</w>\": 43787,\n  \"ici\": 948,\n  \"ici</w>\": 22189,\n  \"icia</w>\": 11774,\n  \"icial\": 17543,\n  \"icial</w>\": 6397,\n  \"ician\": 40522,\n  \"ician</w>\": 5374,\n  \"icians</w>\": 6264,\n  \"iciary</w>\": 21329,\n  \"icic\": 46006,\n  \"icide</w>\": 6558,\n  \"icides</w>\": 28253,\n  \"icing</w>\": 7676,\n  \"icio</w>\": 24207,\n  \"icion\": 45905,\n  \"icious</w>\": 3325,\n  \"icist</w>\": 21165,\n  \"icists</w>\": 42171,\n  \"icity</w>\": 7243,\n  \"ick\": 1168,\n  \"ick</w>\": 1068,\n  \"icked</w>\": 39799,\n  \"icker</w>\": 40357,\n  \"ickers</w>\": 30701,\n  \"icki</w>\": 35468,\n  \"icking</w>\": 6619,\n  \"icks</w>\": 3727,\n  \"icky</w>\": 11587,\n  \"icn</w>\": 44516,\n  \"ico\": 13697,\n  \"ico</w>\": 3040,\n  \"icom\": 17693,\n  \"icom</w>\": 29796,\n  \"icon\": 13843,\n  \"icon</w>\": 5646,\n  \"iconic</w>\": 6959,\n  \"icons</w>\": 15553,\n  \"icop\": 9389,\n  \"icos</w>\": 32002,\n  \"ics</w>\": 1324,\n  \"ict</w>\": 6349,\n  \"icted</w>\": 36515,\n  \"iction</w>\": 40560,\n  \"icton</w>\": 36548,\n  \"icu\": 45118,\n  \"icu</w>\": 30443,\n  \"icular</w>\": 40660,\n  \"icus</w>\": 31459,\n  \"icy\": 28780,\n  \"icy</w>\": 3495,\n  \"icymi</w>\": 5315,\n  \"icz</w>\": 46387,\n  \"id\": 1568,\n  \"id</w>\": 1014,\n  \"ida\": 11032,\n  \"ida</w>\": 11600,\n  \"idad</w>\": 22462,\n  \"idaho\": 48817,\n  \"idaho</w>\": 15165,\n  \"idal</w>\": 39684,\n  \"idan</w>\": 17929,\n  \"idc</w>\": 22386,\n  \"ide\": 1909,\n  \"ide</w>\": 14104,\n  \"idea</w>\": 3612,\n  \"ideal</w>\": 8789,\n  \"ideally</w>\": 48247,\n  \"ideals</w>\": 45096,\n  \"ideas</w>\": 4452,\n  \"ident\": 7113,\n  \"identi\": 6009,\n  \"identical</w>\": 25587,\n  \"identification</w>\": 23337,\n  \"identified</w>\": 15217,\n  \"identifies</w>\": 35712,\n  \"identify</w>\": 10949,\n  \"identifying</w>\": 23589,\n  \"identities</w>\": 34292,\n  \"identity</w>\": 8892,\n  \"ideology</w>\": 25840,\n  \"iders</w>\": 8980,\n  \"ides</w>\": 31791,\n  \"idf</w>\": 28987,\n  \"idge</w>\": 35567,\n  \"idh</w>\": 44325,\n  \"idi\": 9611,\n  \"idi</w>\": 14264,\n  \"idio\": 15994,\n  \"idiot</w>\": 14087,\n  \"idiots</w>\": 20856,\n  \"idk</w>\": 8972,\n  \"idle</w>\": 34754,\n  \"idlib</w>\": 36199,\n  \"ido\": 6763,\n  \"ido</w>\": 29641,\n  \"idol\": 24866,\n  \"idol</w>\": 8884,\n  \"idols</w>\": 21398,\n  \"idr</w>\": 10106,\n  \"idri\": 46435,\n  \"idris</w>\": 41312,\n  \"ids</w>\": 6111,\n  \"idu</w>\": 28655,\n  \"idy\": 33058,\n  \"idyl\": 44879,\n  \"idyllic</w>\": 46632,\n  \"ie\": 6789,\n  \"ie</w>\": 1718,\n  \"iec</w>\": 44773,\n  \"ied</w>\": 10059,\n  \"ieee</w>\": 39860,\n  \"iel\": 27875,\n  \"iel</w>\": 22729,\n  \"ience</w>\": 1542,\n  \"ient</w>\": 13115,\n  \"ier\": 33173,\n  \"ier</w>\": 5912,\n  \"iers</w>\": 45060,\n  \"ies\": 27912,\n  \"ies</w>\": 963,\n  \"iest</w>\": 10818,\n  \"if\": 8063,\n  \"if</w>\": 878,\n  \"ifa</w>\": 37574,\n  \"ifc</w>\": 36524,\n  \"ife\": 41172,\n  \"ife</w>\": 19590,\n  \"iff\": 35753,\n  \"ification</w>\": 35755,\n  \"ified</w>\": 41403,\n  \"ift\": 31143,\n  \"iftar</w>\": 35153,\n  \"ifu</w>\": 41523,\n  \"ify</w>\": 32807,\n  \"ig\": 1089,\n  \"ig</w>\": 3072,\n  \"iga</w>\": 16493,\n  \"igan</w>\": 27468,\n  \"igans</w>\": 25419,\n  \"igbo</w>\": 44591,\n  \"ige</w>\": 10806,\n  \"igen</w>\": 33070,\n  \"iger\": 30758,\n  \"iger</w>\": 20685,\n  \"igers\": 40755,\n  \"igers</w>\": 48928,\n  \"iggy\": 46219,\n  \"iggy</w>\": 27604,\n  \"igh\": 2712,\n  \"igh</w>\": 5451,\n  \"ight\": 14571,\n  \"ight</w>\": 897,\n  \"ighton</w>\": 35292,\n  \"igi</w>\": 21901,\n  \"igle\": 29912,\n  \"iglesias</w>\": 39432,\n  \"ign\": 7303,\n  \"ign</w>\": 2326,\n  \"ignati\": 37573,\n  \"ignatius</w>\": 48318,\n  \"igne</w>\": 45843,\n  \"ignite</w>\": 25210,\n  \"ignition</w>\": 36115,\n  \"igno\": 15375,\n  \"ignor\": 7653,\n  \"ignorance</w>\": 22735,\n  \"ignorant</w>\": 26933,\n  \"ignore</w>\": 12304,\n  \"ignored</w>\": 20428,\n  \"ignores</w>\": 40129,\n  \"ignoring</w>\": 23969,\n  \"igor</w>\": 33024,\n  \"igs</w>\": 31344,\n  \"igu\": 21279,\n  \"ih\": 12162,\n  \"ih</w>\": 34135,\n  \"ihear\": 13043,\n  \"iheart\": 30332,\n  \"iheartawards</w>\": 18811,\n  \"iheartradio</w>\": 25934,\n  \"ihop</w>\": 45511,\n  \"ihri\": 39108,\n  \"ihrithik</w>\": 39326,\n  \"ii\": 5103,\n  \"ii</w>\": 2329,\n  \"iii\": 46236,\n  \"iii</w>\": 6572,\n  \"iiii\": 20133,\n  \"iiii</w>\": 45393,\n  \"iiot</w>\": 30704,\n  \"iit\": 39330,\n  \"iit</w>\": 33238,\n  \"ij\": 7337,\n  \"ija</w>\": 42802,\n  \"ik\": 3903,\n  \"ik</w>\": 10177,\n  \"ika</w>\": 18188,\n  \"ike\": 12329,\n  \"ike</w>\": 19696,\n  \"ikea</w>\": 20528,\n  \"iker</w>\": 38653,\n  \"ikh\": 44655,\n  \"ikh</w>\": 12758,\n  \"iklan\": 32028,\n  \"iklan</w>\": 29584,\n  \"iko\": 35659,\n  \"iko</w>\": 39272,\n  \"ikon\": 38543,\n  \"ikon</w>\": 19156,\n  \"iku</w>\": 17780,\n  \"il\": 543,\n  \"il</w>\": 958,\n  \"ila</w>\": 4344,\n  \"ilah</w>\": 32211,\n  \"ilan\": 13889,\n  \"ilan</w>\": 28076,\n  \"iland</w>\": 20957,\n  \"ilation</w>\": 16180,\n  \"ilay\": 45093,\n  \"ild\": 22278,\n  \"ild</w>\": 17164,\n  \"ile\": 18398,\n  \"ile</w>\": 989,\n  \"iled</w>\": 3358,\n  \"iler\": 22446,\n  \"iler</w>\": 3615,\n  \"ilers</w>\": 8975,\n  \"iles</w>\": 42274,\n  \"ili\": 2076,\n  \"ili</w>\": 19601,\n  \"ilia</w>\": 14855,\n  \"ilian</w>\": 10272,\n  \"iliary</w>\": 32585,\n  \"ilife</w>\": 42835,\n  \"ilike\": 44989,\n  \"ilinan</w>\": 48497,\n  \"iling</w>\": 3299,\n  \"ilio</w>\": 47256,\n  \"ilion</w>\": 12561,\n  \"ilis</w>\": 43442,\n  \"ilit\": 11178,\n  \"ilities</w>\": 5446,\n  \"ility</w>\": 1787,\n  \"ilive</w>\": 26478,\n  \"ill\": 828,\n  \"ill</w>\": 660,\n  \"illa\": 8877,\n  \"illa</w>\": 3043,\n  \"illac</w>\": 17218,\n  \"illage</w>\": 48922,\n  \"illard</w>\": 21920,\n  \"illary</w>\": 33667,\n  \"illas</w>\": 23404,\n  \"ille\": 18213,\n  \"ille</w>\": 5559,\n  \"illed</w>\": 2527,\n  \"illeg\": 35808,\n  \"illegal</w>\": 7983,\n  \"illegally</w>\": 24466,\n  \"illegals</w>\": 40490,\n  \"iller\": 23341,\n  \"iller</w>\": 2956,\n  \"illers</w>\": 30547,\n  \"illery</w>\": 14514,\n  \"illes</w>\": 20037,\n  \"illi\": 1086,\n  \"illi</w>\": 25187,\n  \"illia</w>\": 48776,\n  \"illiams</w>\": 30301,\n  \"illian\": 48775,\n  \"illian</w>\": 17355,\n  \"illic\": 37152,\n  \"illicit</w>\": 40998,\n  \"illie</w>\": 26083,\n  \"illin</w>\": 35868,\n  \"illing</w>\": 2803,\n  \"illini</w>\": 28957,\n  \"illino\": 8920,\n  \"illinois</w>\": 9414,\n  \"illion\": 35542,\n  \"illion</w>\": 2035,\n  \"illness</w>\": 11145,\n  \"illnesses</w>\": 33861,\n  \"illo\": 34153,\n  \"illo</w>\": 7588,\n  \"illon</w>\": 20516,\n  \"ills</w>\": 1900,\n  \"illu\": 3025,\n  \"illumin\": 11446,\n  \"illuminate</w>\": 43261,\n  \"illuminated</w>\": 28814,\n  \"illuminati</w>\": 34551,\n  \"illuminating</w>\": 46601,\n  \"illumination</w>\": 43680,\n  \"illus</w>\": 41386,\n  \"illusion</w>\": 20318,\n  \"illusions</w>\": 47429,\n  \"illustr\": 6268,\n  \"illustrate</w>\": 37468,\n  \"illustrated</w>\": 13151,\n  \"illustrates</w>\": 38129,\n  \"illustrating</w>\": 43322,\n  \"illustration</w>\": 6052,\n  \"illustrations</w>\": 17852,\n  \"illustrator</w>\": 16649,\n  \"illustri\": 43116,\n  \"illustrious</w>\": 44304,\n  \"illy\": 11707,\n  \"illy</w>\": 9532,\n  \"ilm</w>\": 36326,\n  \"ilo\": 4220,\n  \"ilo</w>\": 14835,\n  \"ilove\": 7183,\n  \"ilove</w>\": 32914,\n  \"iloveart</w>\": 41114,\n  \"ilovemy\": 28863,\n  \"iloveyou</w>\": 28829,\n  \"ils</w>\": 1543,\n  \"ilt</w>\": 25334,\n  \"ilton</w>\": 28494,\n  \"ilu\": 27337,\n  \"ilwx</w>\": 43777,\n  \"ily\": 4881,\n  \"ily</w>\": 1026,\n  \"ilya</w>\": 33377,\n  \"ilysm</w>\": 29228,\n  \"im\": 732,\n  \"im</w>\": 1496,\n  \"ima\": 2414,\n  \"ima</w>\": 6432,\n  \"imac</w>\": 40675,\n  \"imacele\": 47281,\n  \"imag\": 2316,\n  \"image\": 24101,\n  \"image</w>\": 2867,\n  \"imagery</w>\": 22828,\n  \"images</w>\": 4952,\n  \"imagin\": 18178,\n  \"imaginary</w>\": 30417,\n  \"imagination</w>\": 13783,\n  \"imaginative</w>\": 47233,\n  \"imagine\": 35752,\n  \"imagine</w>\": 4826,\n  \"imagined</w>\": 18478,\n  \"imagines</w>\": 47379,\n  \"imaging</w>\": 14231,\n  \"imagining</w>\": 27384,\n  \"imam\": 37552,\n  \"imam</w>\": 19024,\n  \"iman\": 45684,\n  \"iman</w>\": 16247,\n  \"imation</w>\": 44566,\n  \"imax</w>\": 32066,\n  \"imc</w>\": 45616,\n  \"imdanielpadilla</w>\": 36357,\n  \"imdb</w>\": 30407,\n  \"ime\": 44937,\n  \"ime</w>\": 31151,\n  \"imel\": 31594,\n  \"iment</w>\": 37157,\n  \"imer</w>\": 21802,\n  \"imes</w>\": 47744,\n  \"imf</w>\": 28403,\n  \"img</w>\": 24157,\n  \"imi</w>\": 23559,\n  \"imin\": 23942,\n  \"imit\": 23462,\n  \"imitation</w>\": 41630,\n  \"imma</w>\": 19487,\n  \"immac\": 25085,\n  \"immaculate</w>\": 29649,\n  \"immature</w>\": 45531,\n  \"immedi\": 7366,\n  \"immediate</w>\": 14440,\n  \"immediately</w>\": 10108,\n  \"immen\": 17278,\n  \"immense</w>\": 22722,\n  \"immensely</w>\": 35013,\n  \"immer\": 13954,\n  \"immerse</w>\": 46240,\n  \"immersion</w>\": 31861,\n  \"immersive</w>\": 27521,\n  \"immigr\": 5851,\n  \"immigrant</w>\": 16474,\n  \"immigrants</w>\": 14460,\n  \"immigration</w>\": 9588,\n  \"imminent</w>\": 27299,\n  \"immort\": 39244,\n  \"immortal</w>\": 24717,\n  \"immun\": 8961,\n  \"immune</w>\": 15606,\n  \"immuni\": 44571,\n  \"immunity</w>\": 26254,\n  \"immuno\": 24361,\n  \"immunology</w>\": 44483,\n  \"immunotherapy</w>\": 39185,\n  \"imo\": 26349,\n  \"imo</w>\": 13738,\n  \"imp\": 3335,\n  \"imp</w>\": 31037,\n  \"impac\": 7573,\n  \"impact\": 33036,\n  \"impact</w>\": 3844,\n  \"impacted</w>\": 21424,\n  \"impactful</w>\": 41631,\n  \"impacting</w>\": 29359,\n  \"impacts</w>\": 15069,\n  \"impair\": 36451,\n  \"impaired</w>\": 28028,\n  \"impairment</w>\": 44501,\n  \"impala</w>\": 36641,\n  \"impe\": 23612,\n  \"impeach\": 16874,\n  \"impeach</w>\": 43497,\n  \"impeachment</w>\": 32979,\n  \"impeachtrump</w>\": 38006,\n  \"impecc\": 34511,\n  \"impeccable</w>\": 40111,\n  \"impending</w>\": 34486,\n  \"imper\": 7727,\n  \"imperative</w>\": 39833,\n  \"imperfect</w>\": 46034,\n  \"imperi\": 30911,\n  \"imperial\": 32425,\n  \"imperial</w>\": 12361,\n  \"imperialism</w>\": 48855,\n  \"imperson\": 25551,\n  \"implant</w>\": 33106,\n  \"implants</w>\": 32202,\n  \"imple\": 7423,\n  \"implement</w>\": 17966,\n  \"implementation</w>\": 15102,\n  \"implemented</w>\": 24315,\n  \"implementing</w>\": 22862,\n  \"implic\": 15269,\n  \"implications</w>\": 19229,\n  \"implo\": 40337,\n  \"impo\": 45704,\n  \"import\": 2336,\n  \"import</w>\": 16294,\n  \"importance</w>\": 6821,\n  \"important</w>\": 2829,\n  \"importantly</w>\": 21580,\n  \"imported</w>\": 28798,\n  \"imports</w>\": 25286,\n  \"impose</w>\": 35879,\n  \"imposed</w>\": 25871,\n  \"imposing</w>\": 42289,\n  \"impossible</w>\": 9815,\n  \"impre\": 3763,\n  \"impress</w>\": 20015,\n  \"impressed</w>\": 9689,\n  \"impression</w>\": 14468,\n  \"impressionism</w>\": 36114,\n  \"impressionist</w>\": 44904,\n  \"impressions</w>\": 22276,\n  \"impressive</w>\": 6634,\n  \"imprint</w>\": 43863,\n  \"imprison\": 22141,\n  \"imprisoned</w>\": 32999,\n  \"imprisonment</w>\": 39024,\n  \"impro\": 2531,\n  \"impromp\": 28100,\n  \"impromptu</w>\": 28611,\n  \"improv</w>\": 22868,\n  \"improve</w>\": 4971,\n  \"improved</w>\": 9446,\n  \"improvement</w>\": 10790,\n  \"improvements</w>\": 16320,\n  \"improves</w>\": 18035,\n  \"improving</w>\": 10381,\n  \"improvis\": 32343,\n  \"improvised</w>\": 40886,\n  \"impulse</w>\": 29683,\n  \"impy</w>\": 42690,\n  \"imran\": 19647,\n  \"imran</w>\": 19212,\n  \"imrankhan\": 25956,\n  \"imrankhanpti</w>\": 26688,\n  \"ims</w>\": 17800,\n  \"imsa</w>\": 37262,\n  \"imv\": 35731,\n  \"imvkohli</w>\": 37136,\n  \"imwith\": 26822,\n  \"imwithher</w>\": 32651,\n  \"in\": 512,\n  \"in</w>\": 530,\n  \"ina\": 18026,\n  \"ina</w>\": 1366,\n  \"inability</w>\": 47517,\n  \"inaccurate</w>\": 49192,\n  \"inaction</w>\": 41916,\n  \"inactive</w>\": 49274,\n  \"inadequate</w>\": 43403,\n  \"inak\": 46549,\n  \"inal</w>\": 19178,\n  \"inals</w>\": 26438,\n  \"inan</w>\": 26204,\n  \"inappropriate</w>\": 26722,\n  \"inari</w>\": 48620,\n  \"inary</w>\": 11337,\n  \"inas\": 36731,\n  \"inas</w>\": 12362,\n  \"inated</w>\": 38530,\n  \"ination</w>\": 4706,\n  \"inau\": 10832,\n  \"inaugu\": 11309,\n  \"inaugur\": 11448,\n  \"inaugural</w>\": 11340,\n  \"inaugurated</w>\": 29011,\n  \"inauguration</w>\": 16805,\n  \"inbound</w>\": 24420,\n  \"inbox</w>\": 18683,\n  \"inc\": 14570,\n  \"inc</w>\": 4438,\n  \"incan\": 45964,\n  \"incar\": 18070,\n  \"incarcer\": 26334,\n  \"incarcerated</w>\": 49178,\n  \"incarceration</w>\": 39887,\n  \"incase</w>\": 30463,\n  \"ince</w>\": 44303,\n  \"incen\": 13259,\n  \"incense</w>\": 35059,\n  \"incentive</w>\": 29024,\n  \"incentives</w>\": 29813,\n  \"inception</w>\": 36653,\n  \"inch</w>\": 6523,\n  \"incheon</w>\": 30645,\n  \"inches</w>\": 10809,\n  \"inci\": 5747,\n  \"incidence</w>\": 43371,\n  \"incident</w>\": 10103,\n  \"incidents</w>\": 22120,\n  \"incindia</w>\": 26161,\n  \"inciner\": 46434,\n  \"incl\": 27857,\n  \"incl</w>\": 13338,\n  \"inclined</w>\": 45470,\n  \"inclu\": 1738,\n  \"include</w>\": 5942,\n  \"included</w>\": 7414,\n  \"includes</w>\": 6197,\n  \"including</w>\": 2814,\n  \"inclusion</w>\": 12079,\n  \"inclusive</w>\": 13393,\n  \"income</w>\": 8044,\n  \"incoming</w>\": 15416,\n  \"incomparable</w>\": 36027,\n  \"incompetent</w>\": 45069,\n  \"incomplete</w>\": 34040,\n  \"incon\": 42372,\n  \"inconvenience</w>\": 40563,\n  \"incorpor\": 19335,\n  \"incorporate</w>\": 34168,\n  \"incorporated</w>\": 29494,\n  \"incorporating</w>\": 40303,\n  \"incorrect</w>\": 31872,\n  \"incre\": 1870,\n  \"increase</w>\": 5230,\n  \"increased</w>\": 9156,\n  \"increases</w>\": 13797,\n  \"increasing</w>\": 10270,\n  \"increasingly</w>\": 16106,\n  \"incredi\": 2883,\n  \"incredible\": 22128,\n  \"incredible</w>\": 3457,\n  \"incredibleindia</w>\": 24680,\n  \"incredibles</w>\": 48641,\n  \"incredibly</w>\": 9513,\n  \"incu\": 38830,\n  \"incub\": 24587,\n  \"incubator</w>\": 35736,\n  \"incumb\": 32246,\n  \"incumbent</w>\": 38038,\n  \"incur\": 42356,\n  \"ind\": 5386,\n  \"ind</w>\": 4655,\n  \"inda</w>\": 15710,\n  \"inde\": 2645,\n  \"indeed</w>\": 10031,\n  \"indefin\": 29501,\n  \"indefinitely</w>\": 43750,\n  \"independ\": 4147,\n  \"independence\": 23117,\n  \"independence</w>\": 7955,\n  \"independenceday</w>\": 25971,\n  \"independent\": 33844,\n  \"independent</w>\": 7088,\n  \"independently</w>\": 39831,\n  \"inder</w>\": 29225,\n  \"index\": 35209,\n  \"index</w>\": 9458,\n  \"indhoven</w>\": 44229,\n  \"indi\": 1098,\n  \"indi</w>\": 46536,\n  \"india\": 27067,\n  \"india</w>\": 1762,\n  \"indian\": 7685,\n  \"indian</w>\": 3606,\n  \"indiana</w>\": 8615,\n  \"indianapolis</w>\": 17196,\n  \"indianfootball</w>\": 45979,\n  \"indians</w>\": 10271,\n  \"indic\": 7136,\n  \"indicate</w>\": 26679,\n  \"indicated</w>\": 39416,\n  \"indicates</w>\": 29412,\n  \"indication</w>\": 38539,\n  \"indicator</w>\": 24776,\n  \"indicators</w>\": 30054,\n  \"indicted</w>\": 34992,\n  \"indictment</w>\": 42278,\n  \"indie\": 5260,\n  \"indie</w>\": 9383,\n  \"indiedev</w>\": 10863,\n  \"indiefilm</w>\": 22588,\n  \"indiegame</w>\": 17969,\n  \"indiegamedev</w>\": 40466,\n  \"indiegames</w>\": 35864,\n  \"indiegogo</w>\": 38057,\n  \"indies</w>\": 23618,\n  \"indiffe\": 41372,\n  \"indigen\": 8348,\n  \"indigenous</w>\": 9303,\n  \"indigo</w>\": 21002,\n  \"indira</w>\": 43887,\n  \"indirec\": 26398,\n  \"indirect</w>\": 35416,\n  \"indivi\": 5649,\n  \"individu\": 9574,\n  \"individual</w>\": 8512,\n  \"individually</w>\": 33782,\n  \"individuals</w>\": 11990,\n  \"indo\": 26303,\n  \"indo</w>\": 18297,\n  \"indom\": 42926,\n  \"indone\": 6180,\n  \"indonesia</w>\": 7229,\n  \"indonesian</w>\": 19593,\n  \"indoor\": 44478,\n  \"indoor</w>\": 9546,\n  \"indoors</w>\": 22973,\n  \"indore</w>\": 46143,\n  \"indu\": 2298,\n  \"induc\": 7973,\n  \"induced</w>\": 24103,\n  \"inducted</w>\": 20596,\n  \"inductee</w>\": 39558,\n  \"inductees</w>\": 44796,\n  \"induction</w>\": 18338,\n  \"indul\": 19402,\n  \"indulg\": 28388,\n  \"indulge</w>\": 24851,\n  \"indulgence</w>\": 40856,\n  \"indulgent</w>\": 49147,\n  \"industri\": 5082,\n  \"industrial\": 30853,\n  \"industrial</w>\": 7520,\n  \"industries</w>\": 11700,\n  \"industry\": 47407,\n  \"industry</w>\": 3318,\n  \"indv\": 16942,\n  \"indy\": 9821,\n  \"indy</w>\": 10098,\n  \"indycar</w>\": 20484,\n  \"indyref</w>\": 22569,\n  \"ine\": 855,\n  \"ine</w>\": 715,\n  \"ineau</w>\": 38122,\n  \"inec</w>\": 45214,\n  \"ined</w>\": 2038,\n  \"inee\": 43252,\n  \"inee</w>\": 7986,\n  \"inees</w>\": 13056,\n  \"ineffe\": 47202,\n  \"inely</w>\": 18234,\n  \"inem</w>\": 48876,\n  \"inema</w>\": 29232,\n  \"inen</w>\": 44365,\n  \"inequalities</w>\": 45507,\n  \"inequality</w>\": 17372,\n  \"iner\": 17438,\n  \"iner</w>\": 5155,\n  \"iners</w>\": 41863,\n  \"ines</w>\": 2137,\n  \"inese</w>\": 35966,\n  \"iness</w>\": 1463,\n  \"inet</w>\": 8121,\n  \"inette</w>\": 38911,\n  \"inev\": 19527,\n  \"inevit\": 45871,\n  \"inevitable</w>\": 25004,\n  \"inews</w>\": 24300,\n  \"inexpensive</w>\": 38614,\n  \"iney</w>\": 30254,\n  \"inez</w>\": 12700,\n  \"inf\": 1529,\n  \"inf</w>\": 35241,\n  \"infamous</w>\": 18688,\n  \"infan\": 17219,\n  \"infant</w>\": 19192,\n  \"infantry</w>\": 21655,\n  \"infants</w>\": 34726,\n  \"infe\": 7164,\n  \"infec\": 26088,\n  \"infected</w>\": 26136,\n  \"infection</w>\": 14774,\n  \"infections</w>\": 22227,\n  \"infectious</w>\": 29157,\n  \"infeld</w>\": 25035,\n  \"infer\": 16258,\n  \"inferno</w>\": 31290,\n  \"infertility</w>\": 40701,\n  \"infield</w>\": 48933,\n  \"infiltr\": 28683,\n  \"infin\": 6246,\n  \"infinite</w>\": 12748,\n  \"infiniti</w>\": 34644,\n  \"infinity\": 34863,\n  \"infinity</w>\": 12895,\n  \"infl\": 7627,\n  \"inflam\": 16080,\n  \"inflammation</w>\": 24893,\n  \"inflammatory</w>\": 26831,\n  \"inflatable</w>\": 30135,\n  \"inflation</w>\": 17497,\n  \"inflicted</w>\": 48188,\n  \"influ\": 4835,\n  \"influen\": 13229,\n  \"influence</w>\": 9199,\n  \"influenced</w>\": 21183,\n  \"influencer</w>\": 25013,\n  \"influencers</w>\": 29891,\n  \"influences</w>\": 24926,\n  \"influencing</w>\": 45126,\n  \"influential</w>\": 17553,\n  \"influenza</w>\": 39897,\n  \"info\": 5680,\n  \"info</w>\": 2222,\n  \"infographic</w>\": 10076,\n  \"infographics</w>\": 33172,\n  \"infor\": 31773,\n  \"inform\": 10241,\n  \"inform</w>\": 19449,\n  \"informal</w>\": 25705,\n  \"informat\": 29625,\n  \"informatics</w>\": 35685,\n  \"information</w>\": 3204,\n  \"informative</w>\": 19364,\n  \"informed</w>\": 13876,\n  \"informing</w>\": 45388,\n  \"informs</w>\": 48440,\n  \"infosec</w>\": 17863,\n  \"infr\": 29718,\n  \"infra\": 7312,\n  \"infra</w>\": 45877,\n  \"infrared</w>\": 22867,\n  \"infrastructure</w>\": 9034,\n  \"infringe\": 44882,\n  \"infringement</w>\": 48712,\n  \"infront</w>\": 37668,\n  \"infu\": 15048,\n  \"infuri\": 48461,\n  \"infused</w>\": 21461,\n  \"infusion</w>\": 43464,\n  \"ing\": 653,\n  \"ing</w>\": 519,\n  \"inga</w>\": 15233,\n  \"ingco</w>\": 40444,\n  \"ingday</w>\": 16561,\n  \"ingdon</w>\": 38731,\n  \"inge\": 11790,\n  \"inge</w>\": 7071,\n  \"inged</w>\": 30046,\n  \"ingen</w>\": 19088,\n  \"ingeni\": 36884,\n  \"inger\": 33883,\n  \"inger</w>\": 3541,\n  \"ingfor\": 33430,\n  \"ingh\": 9170,\n  \"ingh</w>\": 30495,\n  \"ingham\": 24497,\n  \"ingham</w>\": 4291,\n  \"inghamshire</w>\": 39289,\n  \"inghour</w>\": 42728,\n  \"inging</w>\": 4066,\n  \"ingl\": 45662,\n  \"ingle\": 22228,\n  \"ingle</w>\": 17005,\n  \"ingles</w>\": 24490,\n  \"ingley</w>\": 44428,\n  \"inglis</w>\": 46327,\n  \"ingly</w>\": 4796,\n  \"ingnow</w>\": 34766,\n  \"ingo\": 30175,\n  \"ingo</w>\": 9012,\n  \"ingra\": 45165,\n  \"ingrad</w>\": 44124,\n  \"ingram</w>\": 26998,\n  \"ingredi\": 9272,\n  \"ingredient</w>\": 19799,\n  \"ingredients</w>\": 11788,\n  \"ingrid</w>\": 33496,\n  \"ings</w>\": 895,\n  \"ingthe\": 20170,\n  \"ingtips</w>\": 39373,\n  \"ington\": 11846,\n  \"ington</w>\": 2156,\n  \"ingu\": 8714,\n  \"ingual</w>\": 22795,\n  \"ingue</w>\": 36838,\n  \"ingui\": 12788,\n  \"inguish</w>\": 36146,\n  \"inha</w>\": 32612,\n  \"inhabit\": 36189,\n  \"inhabitants</w>\": 44968,\n  \"inhal\": 30786,\n  \"inhe\": 32617,\n  \"inher\": 24611,\n  \"inherent</w>\": 47327,\n  \"inherit\": 34322,\n  \"inheritance</w>\": 39341,\n  \"inherited</w>\": 39111,\n  \"inhi\": 25557,\n  \"inhibit\": 32196,\n  \"inho</w>\": 12984,\n  \"ini\": 6154,\n  \"ini</w>\": 3581,\n  \"inian</w>\": 36638,\n  \"inim\": 38717,\n  \"inindia</w>\": 34021,\n  \"ining</w>\": 1389,\n  \"inist</w>\": 30976,\n  \"init</w>\": 42670,\n  \"initi\": 4580,\n  \"initial</w>\": 13980,\n  \"initially</w>\": 28123,\n  \"initials</w>\": 48794,\n  \"initiated</w>\": 27756,\n  \"initiation</w>\": 41009,\n  \"initiative</w>\": 8152,\n  \"initiatives</w>\": 16549,\n  \"inity</w>\": 22126,\n  \"inj\": 5112,\n  \"injec\": 13688,\n  \"injection</w>\": 21438,\n  \"inju\": 5006,\n  \"injured</w>\": 7505,\n  \"injuries</w>\": 9481,\n  \"injury</w>\": 6223,\n  \"injustice</w>\": 20541,\n  \"ink\": 4547,\n  \"ink</w>\": 967,\n  \"inka</w>\": 40685,\n  \"inked</w>\": 29356,\n  \"inki\": 46176,\n  \"inkigayo</w>\": 47882,\n  \"inking</w>\": 37586,\n  \"inks</w>\": 20966,\n  \"inktober</w>\": 9387,\n  \"inland</w>\": 21943,\n  \"inlet</w>\": 35161,\n  \"inline</w>\": 45004,\n  \"inlove</w>\": 28415,\n  \"inmate</w>\": 32341,\n  \"inmates</w>\": 28216,\n  \"inmy\": 42657,\n  \"inn\": 27260,\n  \"inn</w>\": 5569,\n  \"inna</w>\": 35088,\n  \"inner\": 24512,\n  \"inner</w>\": 6955,\n  \"inning</w>\": 4415,\n  \"innings</w>\": 11580,\n  \"innis\": 44059,\n  \"inno\": 7961,\n  \"innocence</w>\": 26383,\n  \"innocent</w>\": 11241,\n  \"innov\": 2890,\n  \"innovate</w>\": 24549,\n  \"innovation\": 33063,\n  \"innovation</w>\": 4272,\n  \"innovations</w>\": 18817,\n  \"innovative</w>\": 8494,\n  \"innovator</w>\": 34735,\n  \"innovators</w>\": 27834,\n  \"ino\": 4211,\n  \"ino</w>\": 2691,\n  \"inoa</w>\": 25649,\n  \"inos</w>\": 21828,\n  \"inous</w>\": 47801,\n  \"inox</w>\": 22698,\n  \"input</w>\": 16952,\n  \"inputs</w>\": 48763,\n  \"inqu\": 10628,\n  \"inqui\": 18527,\n  \"inquirer</w>\": 45172,\n  \"inquiries</w>\": 29469,\n  \"inquiry</w>\": 15865,\n  \"inquis\": 31171,\n  \"inr</w>\": 36325,\n  \"ins\": 12786,\n  \"ins</w>\": 1041,\n  \"insan\": 7875,\n  \"insane</w>\": 10260,\n  \"insanely</w>\": 27846,\n  \"insanity</w>\": 26645,\n  \"inscribed</w>\": 49168,\n  \"inscription</w>\": 41127,\n  \"insec\": 15744,\n  \"insect</w>\": 21297,\n  \"insects</w>\": 18714,\n  \"insecure</w>\": 35112,\n  \"insecurity</w>\": 36964,\n  \"inser\": 13830,\n  \"insert</w>\": 18807,\n  \"insi\": 3453,\n  \"inside\": 19141,\n  \"inside</w>\": 2912,\n  \"insider</w>\": 13300,\n  \"insiders</w>\": 32171,\n  \"insig\": 40503,\n  \"insight</w>\": 8795,\n  \"insightful</w>\": 20354,\n  \"insights</w>\": 8729,\n  \"insignia</w>\": 48864,\n  \"insist</w>\": 35504,\n  \"insisted</w>\": 40423,\n  \"insists</w>\": 27255,\n  \"inski</w>\": 32630,\n  \"insky</w>\": 24607,\n  \"insol\": 42366,\n  \"insom\": 21755,\n  \"insomni\": 42040,\n  \"insomnia</w>\": 30598,\n  \"inson</w>\": 21007,\n  \"insp\": 1597,\n  \"inspec\": 7915,\n  \"inspect</w>\": 40815,\n  \"inspecting</w>\": 40565,\n  \"inspection</w>\": 15142,\n  \"inspections</w>\": 39513,\n  \"inspector</w>\": 20514,\n  \"inspir\": 2573,\n  \"inspiration</w>\": 4195,\n  \"inspirational\": 41936,\n  \"inspirational</w>\": 9855,\n  \"inspirations</w>\": 35093,\n  \"inspire\": 27901,\n  \"inspire</w>\": 8583,\n  \"inspired\": 39849,\n  \"inspired</w>\": 3516,\n  \"inspires</w>\": 17245,\n  \"inspiring\": 41847,\n  \"inspiring</w>\": 5705,\n  \"inspo</w>\": 26897,\n  \"inst\": 1264,\n  \"inst</w>\": 1581,\n  \"insta\": 22411,\n  \"insta</w>\": 11694,\n  \"instability</w>\": 41377,\n  \"instac\": 46678,\n  \"instaf\": 33800,\n  \"instag\": 14612,\n  \"instagood</w>\": 23718,\n  \"instagram\": 27910,\n  \"instagram</w>\": 2659,\n  \"instal\": 38805,\n  \"install\": 6940,\n  \"install</w>\": 11168,\n  \"installation</w>\": 9358,\n  \"installations</w>\": 27909,\n  \"installed</w>\": 8807,\n  \"installing</w>\": 18301,\n  \"installment</w>\": 25315,\n  \"installs</w>\": 45568,\n  \"instalment</w>\": 47766,\n  \"instance</w>\": 34572,\n  \"instant\": 38810,\n  \"instant</w>\": 10635,\n  \"instantly</w>\": 17703,\n  \"instap\": 23758,\n  \"instapic</w>\": 34378,\n  \"instaweather\": 43078,\n  \"instaweatherpro</w>\": 43150,\n  \"inste\": 3571,\n  \"instead</w>\": 4191,\n  \"instein</w>\": 13421,\n  \"instem</w>\": 27030,\n  \"instin\": 23382,\n  \"instinct</w>\": 30544,\n  \"institu\": 4257,\n  \"institute</w>\": 5861,\n  \"institutes</w>\": 43674,\n  \"institution</w>\": 18823,\n  \"institutional</w>\": 27442,\n  \"institutions</w>\": 15207,\n  \"instore</w>\": 41679,\n  \"instru\": 4544,\n  \"instruc\": 19648,\n  \"instruction</w>\": 19407,\n  \"instructional</w>\": 31022,\n  \"instructions</w>\": 17040,\n  \"instructor</w>\": 16087,\n  \"instructors</w>\": 31998,\n  \"instrument\": 42196,\n  \"instrument</w>\": 15806,\n  \"instrumental</w>\": 23041,\n  \"instruments</w>\": 14793,\n  \"instyle</w>\": 41321,\n  \"insu\": 8805,\n  \"insul\": 9615,\n  \"insulated</w>\": 42051,\n  \"insulation</w>\": 28194,\n  \"insulin</w>\": 29311,\n  \"insult</w>\": 26673,\n  \"insulting</w>\": 39646,\n  \"insults</w>\": 40451,\n  \"insur\": 5024,\n  \"insurance</w>\": 5870,\n  \"insured</w>\": 31321,\n  \"insurers</w>\": 43142,\n  \"insurtech</w>\": 28716,\n  \"int\": 1828,\n  \"int</w>\": 1207,\n  \"inta</w>\": 38314,\n  \"intact</w>\": 26870,\n  \"intake</w>\": 19539,\n  \"intan\": 47695,\n  \"inte\": 1598,\n  \"inte</w>\": 41900,\n  \"intech</w>\": 26504,\n  \"inted</w>\": 6147,\n  \"integr\": 5151,\n  \"integral</w>\": 27018,\n  \"integrate</w>\": 25735,\n  \"integrated</w>\": 12797,\n  \"integrating</w>\": 31555,\n  \"integration</w>\": 12583,\n  \"integrity</w>\": 14791,\n  \"intel\": 11778,\n  \"intel</w>\": 11426,\n  \"intellec\": 13281,\n  \"intellect</w>\": 47828,\n  \"intellectu\": 31966,\n  \"intellectual</w>\": 18069,\n  \"intelli\": 5324,\n  \"intellig\": 5632,\n  \"intelligence</w>\": 6846,\n  \"intelligent</w>\": 14063,\n  \"inten\": 2967,\n  \"intend</w>\": 36674,\n  \"intended</w>\": 16812,\n  \"intense</w>\": 10258,\n  \"intensi\": 22928,\n  \"intensity</w>\": 19956,\n  \"intensive</w>\": 21049,\n  \"intent</w>\": 18881,\n  \"intention</w>\": 26786,\n  \"intentional</w>\": 29536,\n  \"intentionally</w>\": 31215,\n  \"intentions</w>\": 26710,\n  \"inter\": 1006,\n  \"inter</w>\": 10093,\n  \"interact</w>\": 21736,\n  \"interacting</w>\": 35045,\n  \"interaction</w>\": 17650,\n  \"interactions</w>\": 22162,\n  \"interactive</w>\": 9456,\n  \"intercep\": 23676,\n  \"interception</w>\": 48762,\n  \"interceptions</w>\": 45313,\n  \"interchange</w>\": 34222,\n  \"intercontinental</w>\": 31983,\n  \"interdisciplinary</w>\": 38132,\n  \"intere\": 2008,\n  \"interest</w>\": 5095,\n  \"interested</w>\": 4620,\n  \"interesting</w>\": 3628,\n  \"interests</w>\": 16425,\n  \"interface</w>\": 18753,\n  \"interfaith</w>\": 38399,\n  \"interference</w>\": 29099,\n  \"interim</w>\": 19509,\n  \"interior\": 10700,\n  \"interior</w>\": 7305,\n  \"interiordesign</w>\": 12902,\n  \"interiors</w>\": 14836,\n  \"intermedi\": 20246,\n  \"intermediate</w>\": 24304,\n  \"intermission</w>\": 44805,\n  \"intermitt\": 44946,\n  \"intern\": 9976,\n  \"intern</w>\": 14068,\n  \"internal</w>\": 11285,\n  \"internally</w>\": 41134,\n  \"internation\": 42534,\n  \"international\": 8566,\n  \"international</w>\": 2436,\n  \"internationaldayof\": 41518,\n  \"internationally</w>\": 24059,\n  \"internationalwomensday</w>\": 17682,\n  \"interne\": 32713,\n  \"internet\": 30180,\n  \"internet</w>\": 4757,\n  \"internetof\": 44449,\n  \"internetofthings</w>\": 45925,\n  \"interns</w>\": 19902,\n  \"internship</w>\": 16661,\n  \"internships</w>\": 39410,\n  \"interoper\": 45754,\n  \"interpre\": 11162,\n  \"interpret\": 49154,\n  \"interpret</w>\": 40459,\n  \"interpretation</w>\": 20652,\n  \"interpreted</w>\": 42157,\n  \"interpreting</w>\": 46525,\n  \"interro\": 29548,\n  \"interrup\": 21609,\n  \"interrupt</w>\": 48449,\n  \"interrupted</w>\": 30288,\n  \"intersec\": 45246,\n  \"intersection</w>\": 19210,\n  \"interstate</w>\": 21963,\n  \"interstellar</w>\": 41506,\n  \"interval</w>\": 36032,\n  \"intervals</w>\": 44884,\n  \"interven\": 18245,\n  \"intervention</w>\": 16804,\n  \"interventions</w>\": 28848,\n  \"interview</w>\": 2885,\n  \"interviewed</w>\": 11688,\n  \"interviewing</w>\": 16399,\n  \"interviews</w>\": 9910,\n  \"intestin\": 37938,\n  \"intestinal</w>\": 38896,\n  \"inthe\": 7486,\n  \"inti\": 14459,\n  \"intim\": 38832,\n  \"intimacy</w>\": 46430,\n  \"intimate</w>\": 16382,\n  \"intimid\": 24041,\n  \"intimidating</w>\": 44405,\n  \"intimidation</w>\": 49258,\n  \"inting</w>\": 15571,\n  \"intl\": 38186,\n  \"intl</w>\": 14224,\n  \"intment</w>\": 9020,\n  \"intments</w>\": 21420,\n  \"into\": 35235,\n  \"into</w>\": 1095,\n  \"intoler\": 28534,\n  \"intolerance</w>\": 37808,\n  \"intothe\": 38511,\n  \"intra\": 20922,\n  \"intrac\": 46195,\n  \"intram\": 40956,\n  \"intre\": 29397,\n  \"intrepid</w>\": 39127,\n  \"intri\": 15421,\n  \"intric\": 23763,\n  \"intricate</w>\": 29616,\n  \"intrigu\": 18856,\n  \"intrigue</w>\": 45140,\n  \"intrigued</w>\": 40034,\n  \"intriguing</w>\": 24334,\n  \"intrin\": 45181,\n  \"intro\": 2999,\n  \"intro</w>\": 13224,\n  \"introduc\": 3621,\n  \"introduce</w>\": 9813,\n  \"introduced</w>\": 10446,\n  \"introduces</w>\": 12933,\n  \"introducing</w>\": 6256,\n  \"introduction</w>\": 11812,\n  \"introductory</w>\": 38121,\n  \"intru\": 22949,\n  \"ints</w>\": 2514,\n  \"intu\": 17225,\n  \"intuition</w>\": 40897,\n  \"intuitive</w>\": 35224,\n  \"inu\": 21131,\n  \"inuit</w>\": 41250,\n  \"inus</w>\": 45857,\n  \"inv\": 2279,\n  \"inv</w>\": 43786,\n  \"inva\": 10084,\n  \"invade</w>\": 34609,\n  \"invaded</w>\": 32596,\n  \"invaders</w>\": 35188,\n  \"invading</w>\": 40101,\n  \"invali\": 31592,\n  \"invalid</w>\": 46998,\n  \"invaluable</w>\": 33976,\n  \"invasi\": 38100,\n  \"invasion</w>\": 13378,\n  \"invasive</w>\": 19554,\n  \"inve\": 2024,\n  \"inven\": 26233,\n  \"invent\": 11665,\n  \"invent</w>\": 23558,\n  \"invented</w>\": 14100,\n  \"invention</w>\": 23607,\n  \"inventions</w>\": 44914,\n  \"inventor</w>\": 22836,\n  \"inventory</w>\": 19444,\n  \"inver\": 12061,\n  \"inverness</w>\": 33080,\n  \"inverte\": 46397,\n  \"inverted</w>\": 40709,\n  \"invest\": 4180,\n  \"invest</w>\": 9716,\n  \"invested</w>\": 22536,\n  \"investig\": 4626,\n  \"investigate</w>\": 15703,\n  \"investigated</w>\": 29180,\n  \"investigates</w>\": 29621,\n  \"investigating</w>\": 13713,\n  \"investigation</w>\": 8194,\n  \"investigations</w>\": 24020,\n  \"investigative</w>\": 30233,\n  \"investigator</w>\": 30528,\n  \"investigators</w>\": 24121,\n  \"investin\": 40195,\n  \"investing</w>\": 10554,\n  \"investment</w>\": 5605,\n  \"investments</w>\": 14675,\n  \"investor</w>\": 15490,\n  \"investors</w>\": 10486,\n  \"invests</w>\": 38378,\n  \"invic\": 25253,\n  \"invigor\": 48722,\n  \"invin\": 30252,\n  \"invincible</w>\": 38052,\n  \"invisible</w>\": 16093,\n  \"invit\": 12454,\n  \"invitation</w>\": 15032,\n  \"invitational</w>\": 14511,\n  \"invitations</w>\": 40120,\n  \"invite</w>\": 8109,\n  \"invited</w>\": 7731,\n  \"invites</w>\": 16034,\n  \"inviting</w>\": 14349,\n  \"invo\": 29417,\n  \"invol\": 4000,\n  \"involve</w>\": 26325,\n  \"involved</w>\": 5320,\n  \"involvement</w>\": 19502,\n  \"involves</w>\": 22652,\n  \"involving</w>\": 14786,\n  \"inwx</w>\": 35674,\n  \"iny</w>\": 23257,\n  \"inyour\": 47954,\n  \"io\": 3167,\n  \"io</w>\": 3752,\n  \"ioc</w>\": 43018,\n  \"iom\": 33000,\n  \"iom</w>\": 31135,\n  \"ion\": 14871,\n  \"ion</w>\": 3668,\n  \"ions</w>\": 26289,\n  \"ior\": 7354,\n  \"ior</w>\": 2498,\n  \"iority</w>\": 46016,\n  \"iors</w>\": 6427,\n  \"ios</w>\": 6614,\n  \"iot\": 32694,\n  \"iot</w>\": 6627,\n  \"iota</w>\": 37294,\n  \"ious</w>\": 6994,\n  \"iously</w>\": 38233,\n  \"iow\": 7439,\n  \"iowa\": 38847,\n  \"iowa</w>\": 8290,\n  \"ip\": 1719,\n  \"ip</w>\": 8600,\n  \"ipa</w>\": 11199,\n  \"ipad\": 39067,\n  \"ipad</w>\": 7491,\n  \"ipads</w>\": 35281,\n  \"ipc</w>\": 41981,\n  \"iphone\": 26030,\n  \"iphone</w>\": 4314,\n  \"iphones</w>\": 37561,\n  \"ipl</w>\": 13440,\n  \"ipment</w>\": 37824,\n  \"ipo\": 40218,\n  \"ipo</w>\": 24090,\n  \"ipod</w>\": 17889,\n  \"ipp\": 31706,\n  \"ips</w>\": 26910,\n  \"ipsw\": 22221,\n  \"ipswich</w>\": 24494,\n  \"iq\": 15554,\n  \"iq</w>\": 19996,\n  \"iqbal</w>\": 33553,\n  \"ir\": 582,\n  \"ir</w>\": 742,\n  \"ira\": 4923,\n  \"ira</w>\": 5371,\n  \"irah</w>\": 35724,\n  \"iran\": 19273,\n  \"iran</w>\": 5075,\n  \"irandeal</w>\": 46533,\n  \"irani</w>\": 37984,\n  \"iranian</w>\": 14158,\n  \"iraq</w>\": 8543,\n  \"iraqi</w>\": 18617,\n  \"irc</w>\": 41527,\n  \"ird</w>\": 2770,\n  \"ire\": 3013,\n  \"ire</w>\": 1454,\n  \"ired\": 32728,\n  \"ired</w>\": 2995,\n  \"ireland\": 32806,\n  \"ireland</w>\": 4157,\n  \"irene</w>\": 21600,\n  \"ires</w>\": 12435,\n  \"irez</w>\": 21581,\n  \"irgc</w>\": 47942,\n  \"iri\": 2155,\n  \"iri</w>\": 13880,\n  \"irical</w>\": 33366,\n  \"irie</w>\": 42979,\n  \"irina</w>\": 46664,\n  \"iring</w>\": 10169,\n  \"iris</w>\": 16437,\n  \"irish\": 9386,\n  \"irish</w>\": 4889,\n  \"irl\": 34494,\n  \"irl</w>\": 8570,\n  \"irling</w>\": 26493,\n  \"irls</w>\": 24344,\n  \"irma</w>\": 22406,\n  \"irn</w>\": 42603,\n  \"iro\": 23209,\n  \"iro</w>\": 7280,\n  \"iron\": 7699,\n  \"iron</w>\": 5391,\n  \"ironic</w>\": 24518,\n  \"ironically</w>\": 36779,\n  \"ironing</w>\": 46655,\n  \"ironman</w>\": 20330,\n  \"irons</w>\": 30032,\n  \"irony</w>\": 20681,\n  \"irport</w>\": 27769,\n  \"irr\": 24641,\n  \"irrational</w>\": 47413,\n  \"irregular</w>\": 38692,\n  \"irrelevant</w>\": 34677,\n  \"irresi\": 31200,\n  \"irresistible</w>\": 35252,\n  \"irresponsible</w>\": 44714,\n  \"irri\": 21484,\n  \"irrigation</w>\": 23761,\n  \"irrit\": 24218,\n  \"irs</w>\": 6086,\n  \"irst</w>\": 32701,\n  \"iru</w>\": 48206,\n  \"irvin</w>\": 47053,\n  \"irvine</w>\": 24201,\n  \"irving</w>\": 19738,\n  \"irwin</w>\": 23750,\n  \"iry</w>\": 7239,\n  \"is\": 595,\n  \"is</w>\": 533,\n  \"isa\": 11034,\n  \"isa</w>\": 6536,\n  \"isaac\": 37544,\n  \"isaac</w>\": 13659,\n  \"isab\": 13357,\n  \"isabel</w>\": 27466,\n  \"isabella</w>\": 26192,\n  \"isabelle</w>\": 31072,\n  \"isable</w>\": 46631,\n  \"isai\": 15365,\n  \"isaiah</w>\": 17952,\n  \"isak\": 40619,\n  \"isance</w>\": 46893,\n  \"isation</w>\": 7194,\n  \"isback</w>\": 43811,\n  \"isc</w>\": 39316,\n  \"isch</w>\": 47888,\n  \"isco</w>\": 5736,\n  \"iscoming</w>\": 26458,\n  \"isd\": 46816,\n  \"isd</w>\": 12002,\n  \"ise\": 7669,\n  \"ise</w>\": 1479,\n  \"ised</w>\": 2861,\n  \"iselle</w>\": 48491,\n  \"iser\": 23080,\n  \"iser</w>\": 5626,\n  \"isers</w>\": 34879,\n  \"ises</w>\": 5153,\n  \"isf</w>\": 44036,\n  \"isgreat</w>\": 34595,\n  \"ish\": 6844,\n  \"ish</w>\": 1061,\n  \"isha</w>\": 28050,\n  \"ishable</w>\": 37949,\n  \"ished</w>\": 35341,\n  \"ishere</w>\": 46053,\n  \"ishi\": 26224,\n  \"ishq\": 27996,\n  \"ishqba\": 32503,\n  \"ishqbaaaz</w>\": 36591,\n  \"isi\": 7233,\n  \"isi</w>\": 17880,\n  \"isil</w>\": 34636,\n  \"isin</w>\": 37676,\n  \"ising</w>\": 3426,\n  \"isis</w>\": 7531,\n  \"isk</w>\": 30171,\n  \"isl</w>\": 31368,\n  \"isla</w>\": 22807,\n  \"islam\": 6003,\n  \"islam</w>\": 8770,\n  \"islamabad</w>\": 19959,\n  \"islamic\": 31627,\n  \"islamic</w>\": 9552,\n  \"islamist</w>\": 38798,\n  \"islamophobia</w>\": 43459,\n  \"island\": 13408,\n  \"island</w>\": 2619,\n  \"islander</w>\": 45651,\n  \"islanders</w>\": 27804,\n  \"islands</w>\": 7145,\n  \"islay</w>\": 49279,\n  \"isle\": 19082,\n  \"isle</w>\": 11849,\n  \"isleof\": 24718,\n  \"isles</w>\": 21816,\n  \"islife</w>\": 26433,\n  \"islington</w>\": 34945,\n  \"ism\": 47730,\n  \"ism</w>\": 1935,\n  \"isma\": 43937,\n  \"ismail</w>\": 36140,\n  \"isme</w>\": 43570,\n  \"ismo</w>\": 41926,\n  \"isms</w>\": 18700,\n  \"isn</w>\": 2923,\n  \"isner</w>\": 48246,\n  \"isnow</w>\": 43694,\n  \"isnt</w>\": 19416,\n  \"iso\": 2462,\n  \"iso</w>\": 12263,\n  \"isol\": 11414,\n  \"isolated</w>\": 19044,\n  \"isolation</w>\": 26400,\n  \"ison\": 12949,\n  \"ison</w>\": 4553,\n  \"isons</w>\": 33318,\n  \"isoo</w>\": 35857,\n  \"isp\": 31397,\n  \"isp</w>\": 39041,\n  \"isra\": 3591,\n  \"israel\": 20837,\n  \"israel</w>\": 4779,\n  \"israeli</w>\": 8994,\n  \"israelis</w>\": 45713,\n  \"isreal</w>\": 47147,\n  \"isro</w>\": 44841,\n  \"iss\": 11738,\n  \"iss</w>\": 4950,\n  \"issa\": 38579,\n  \"issa</w>\": 7560,\n  \"issan\": 49358,\n  \"issance</w>\": 40828,\n  \"issant</w>\": 38828,\n  \"isse</w>\": 18986,\n  \"ission</w>\": 37946,\n  \"issu\": 2049,\n  \"issue</w>\": 3202,\n  \"issued</w>\": 9246,\n  \"issues</w>\": 4082,\n  \"issuing</w>\": 37226,\n  \"ist\": 9751,\n  \"ist</w>\": 2304,\n  \"istanbul</w>\": 12258,\n  \"istandwith\": 33820,\n  \"iste</w>\": 32563,\n  \"ister</w>\": 14555,\n  \"isthe\": 46748,\n  \"istic</w>\": 29556,\n  \"ists</w>\": 8426,\n  \"isu\": 17030,\n  \"isu</w>\": 23328,\n  \"it\": 529,\n  \"it</w>\": 585,\n  \"ita\": 36920,\n  \"ita</w>\": 2864,\n  \"itable</w>\": 8915,\n  \"ital\": 2306,\n  \"ital</w>\": 1660,\n  \"itali\": 11644,\n  \"italia</w>\": 11025,\n  \"italian\": 20264,\n  \"italian</w>\": 5175,\n  \"italians</w>\": 44744,\n  \"italk</w>\": 32894,\n  \"italy</w>\": 4052,\n  \"itan</w>\": 18383,\n  \"itans</w>\": 40711,\n  \"itar</w>\": 47161,\n  \"itarian</w>\": 11599,\n  \"itary</w>\": 17604,\n  \"itas\": 31634,\n  \"itas</w>\": 13436,\n  \"itate</w>\": 42457,\n  \"itated</w>\": 36744,\n  \"itation</w>\": 5070,\n  \"itative</w>\": 22892,\n  \"itc</w>\": 36449,\n  \"itch\": 2387,\n  \"itch</w>\": 8147,\n  \"itchen</w>\": 32664,\n  \"itchy</w>\": 41980,\n  \"ite\": 2732,\n  \"ite</w>\": 802,\n  \"iteam</w>\": 37828,\n  \"itec\": 3099,\n  \"itec</w>\": 43936,\n  \"itech\": 44215,\n  \"itech</w>\": 23040,\n  \"ited\": 8603,\n  \"ited</w>\": 1108,\n  \"itel</w>\": 44638,\n  \"itely</w>\": 4605,\n  \"item</w>\": 8532,\n  \"items</w>\": 6207,\n  \"iter\": 7938,\n  \"iter</w>\": 19773,\n  \"iteracy</w>\": 39634,\n  \"iterate</w>\": 43106,\n  \"iteration</w>\": 38790,\n  \"ites</w>\": 2454,\n  \"itez</w>\": 42131,\n  \"itf</w>\": 35436,\n  \"itfc</w>\": 36519,\n  \"ith\": 6133,\n  \"ith</w>\": 1757,\n  \"ithaca</w>\": 46257,\n  \"iti\": 760,\n  \"iti</w>\": 6165,\n  \"itia</w>\": 22634,\n  \"itian</w>\": 23365,\n  \"itic</w>\": 11950,\n  \"itical</w>\": 48767,\n  \"itics</w>\": 33967,\n  \"ities\": 41423,\n  \"ities</w>\": 1480,\n  \"itim\": 15676,\n  \"itiner\": 32803,\n  \"itinerary</w>\": 41564,\n  \"iting</w>\": 1257,\n  \"ition\": 25263,\n  \"ition</w>\": 1104,\n  \"itions</w>\": 5540,\n  \"itious</w>\": 13329,\n  \"itis\": 33539,\n  \"itis</w>\": 8388,\n  \"itive</w>\": 3067,\n  \"itly</w>\": 42240,\n  \"ito\": 22167,\n  \"ito</w>\": 4661,\n  \"iton</w>\": 21119,\n  \"itor\": 47267,\n  \"itor</w>\": 4584,\n  \"itors</w>\": 22005,\n  \"itos</w>\": 24560,\n  \"its\": 7140,\n  \"its</w>\": 902,\n  \"itsa\": 45032,\n  \"itself</w>\": 7290,\n  \"itsme\": 41125,\n  \"itss\": 47040,\n  \"itt\": 1031,\n  \"itt</w>\": 11228,\n  \"itta</w>\": 21233,\n  \"itte</w>\": 31962,\n  \"itted</w>\": 24429,\n  \"itten\": 30014,\n  \"itten</w>\": 4343,\n  \"itter</w>\": 11456,\n  \"itters</w>\": 13082,\n  \"itti</w>\": 28629,\n  \"ittin</w>\": 25646,\n  \"itting</w>\": 3147,\n  \"ittle\": 24208,\n  \"ittle</w>\": 21366,\n  \"ittles</w>\": 38989,\n  \"itton</w>\": 25707,\n  \"itty</w>\": 35096,\n  \"itu\": 1668,\n  \"itu</w>\": 32128,\n  \"itude\": 43382,\n  \"itude</w>\": 5012,\n  \"itudes</w>\": 20459,\n  \"itunes</w>\": 7007,\n  \"itup</w>\": 35838,\n  \"iture</w>\": 25547,\n  \"itus</w>\": 24364,\n  \"itutes</w>\": 32883,\n  \"itv\": 20159,\n  \"itv</w>\": 12805,\n  \"ity\": 2480,\n  \"ity</w>\": 696,\n  \"itya</w>\": 32055,\n  \"itz\": 14544,\n  \"itz</w>\": 7807,\n  \"iu\": 14292,\n  \"iu</w>\": 15575,\n  \"ium</w>\": 10762,\n  \"ius</w>\": 6740,\n  \"iv\": 6775,\n  \"iv</w>\": 9315,\n  \"iva</w>\": 42463,\n  \"ivan\": 15544,\n  \"ivan</w>\": 15689,\n  \"ivanka</w>\": 37914,\n  \"ive\": 26885,\n  \"ive</w>\": 8653,\n  \"ived</w>\": 15654,\n  \"iver\": 36849,\n  \"iver</w>\": 44254,\n  \"ives</w>\": 27333,\n  \"ivf</w>\": 39159,\n  \"iving</w>\": 45136,\n  \"ivory</w>\": 16776,\n  \"ivote\": 45835,\n  \"ivy\": 36939,\n  \"ivy</w>\": 16045,\n  \"iw\": 13058,\n  \"iw</w>\": 46604,\n  \"iwant\": 42747,\n  \"iwd</w>\": 16815,\n  \"iwm</w>\": 44237,\n  \"ix\": 13272,\n  \"ix</w>\": 8756,\n  \"iy\": 13704,\n  \"iya</w>\": 18595,\n  \"iyaki</w>\": 48395,\n  \"iz\": 2845,\n  \"iz</w>\": 8407,\n  \"iza</w>\": 37704,\n  \"ization</w>\": 10847,\n  \"ize</w>\": 10885,\n  \"ized</w>\": 7690,\n  \"izen</w>\": 34776,\n  \"izer</w>\": 23895,\n  \"izes</w>\": 45434,\n  \"izing</w>\": 17354,\n  \"izo</w>\": 46910,\n  \"izz\": 31779,\n  \"izz</w>\": 46128,\n  \"izzy</w>\": 28861,\n  \"j\": 73,\n  \"j</w>\": 329,\n  \"ja\": 1586,\n  \"ja</w>\": 2641,\n  \"jaan</w>\": 25052,\n  \"jab\": 8059,\n  \"jab</w>\": 9439,\n  \"jac\": 2293,\n  \"jac</w>\": 30198,\n  \"jace</w>\": 43286,\n  \"jack\": 2679,\n  \"jack</w>\": 3267,\n  \"jacked</w>\": 27923,\n  \"jacket</w>\": 6164,\n  \"jackets</w>\": 14745,\n  \"jacki\": 47418,\n  \"jackie\": 28023,\n  \"jackie</w>\": 11716,\n  \"jacking</w>\": 40929,\n  \"jackman</w>\": 35723,\n  \"jackpot</w>\": 23926,\n  \"jacks</w>\": 19649,\n  \"jackson\": 12321,\n  \"jackson</w>\": 4363,\n  \"jacksonville</w>\": 19263,\n  \"jaco\": 6840,\n  \"jacob\": 14385,\n  \"jacob</w>\": 9222,\n  \"jacobs</w>\": 17482,\n  \"jacobson</w>\": 46826,\n  \"jacqu\": 14495,\n  \"jacqueline</w>\": 22843,\n  \"jacques</w>\": 17799,\n  \"jad\": 12976,\n  \"jad</w>\": 38691,\n  \"jada</w>\": 37416,\n  \"jade\": 25123,\n  \"jade</w>\": 14513,\n  \"jaden</w>\": 37174,\n  \"jadine</w>\": 37445,\n  \"jae\": 16869,\n  \"jae</w>\": 15765,\n  \"jaejoong</w>\": 43610,\n  \"jaf\": 19362,\n  \"jag\": 7984,\n  \"jag</w>\": 36236,\n  \"jagan</w>\": 48530,\n  \"jagger</w>\": 30835,\n  \"jags</w>\": 31086,\n  \"jagu\": 10096,\n  \"jaguar\": 44777,\n  \"jaguar</w>\": 14757,\n  \"jaguars</w>\": 21854,\n  \"jah\": 20067,\n  \"jah</w>\": 11084,\n  \"jahan\": 44404,\n  \"jahan</w>\": 47827,\n  \"jai\": 10542,\n  \"jai</w>\": 13819,\n  \"jail\": 18574,\n  \"jail</w>\": 9332,\n  \"jailbreak</w>\": 45990,\n  \"jailed</w>\": 19456,\n  \"jails</w>\": 47833,\n  \"jaime</w>\": 24716,\n  \"jain</w>\": 21999,\n  \"jaipur</w>\": 23593,\n  \"jais\": 48607,\n  \"jait\": 28910,\n  \"jaitley</w>\": 32776,\n  \"jak\": 9225,\n  \"jak</w>\": 30589,\n  \"jakarta</w>\": 15471,\n  \"jake\": 13140,\n  \"jake</w>\": 7419,\n  \"jakob</w>\": 47358,\n  \"jal\": 8380,\n  \"jal</w>\": 26773,\n  \"jalan</w>\": 27270,\n  \"jalap\": 49081,\n  \"jalape\": 34263,\n  \"jalapeÃ±o</w>\": 43017,\n  \"jalen</w>\": 33548,\n  \"jam\": 1434,\n  \"jam</w>\": 5201,\n  \"jama\": 8977,\n  \"jama</w>\": 35366,\n  \"jamaica</w>\": 13019,\n  \"jamaican</w>\": 25144,\n  \"jamal</w>\": 26108,\n  \"jambo\": 35599,\n  \"jamboree</w>\": 38506,\n  \"jame\": 12341,\n  \"james\": 6963,\n  \"james</w>\": 2392,\n  \"jamesbond</w>\": 44704,\n  \"jamesc\": 47004,\n  \"jameson</w>\": 31731,\n  \"jami\": 15092,\n  \"jamie\": 16454,\n  \"jamie</w>\": 8078,\n  \"jamiedor\": 34310,\n  \"jamiedornan</w>\": 34896,\n  \"jammed</w>\": 35590,\n  \"jammin</w>\": 35223,\n  \"jamming</w>\": 25862,\n  \"jammu</w>\": 25926,\n  \"jams</w>\": 20243,\n  \"jan\": 1891,\n  \"jan</w>\": 3334,\n  \"jana</w>\": 18182,\n  \"jane\": 12389,\n  \"jane</w>\": 6736,\n  \"janeiro</w>\": 31740,\n  \"janet\": 29665,\n  \"janet</w>\": 15872,\n  \"jang\": 41526,\n  \"jang</w>\": 22074,\n  \"jani</w>\": 22606,\n  \"janice</w>\": 36048,\n  \"janine</w>\": 46896,\n  \"janis</w>\": 44233,\n  \"jann\": 35377,\n  \"jans</w>\": 22578,\n  \"jansen</w>\": 45354,\n  \"janu\": 3623,\n  \"january</w>\": 3697,\n  \"jap\": 2299,\n  \"jap</w>\": 49062,\n  \"japan\": 4502,\n  \"japan</w>\": 3400,\n  \"japanese\": 27211,\n  \"japanese</w>\": 4925,\n  \"japs</w>\": 42121,\n  \"jar\": 5120,\n  \"jar</w>\": 10837,\n  \"jard\": 25778,\n  \"jardin</w>\": 37371,\n  \"jare\": 17654,\n  \"jared\": 35597,\n  \"jared</w>\": 12571,\n  \"jaredle\": 36739,\n  \"jaredleto</w>\": 37106,\n  \"jaro</w>\": 35505,\n  \"jarpad</w>\": 44497,\n  \"jarre\": 23385,\n  \"jarrett</w>\": 30531,\n  \"jars</w>\": 27583,\n  \"jarvis</w>\": 29286,\n  \"jas\": 4492,\n  \"jas</w>\": 17559,\n  \"jasmin\": 42989,\n  \"jasmin</w>\": 47700,\n  \"jasmine</w>\": 17056,\n  \"jason\": 10009,\n  \"jason</w>\": 5395,\n  \"jasper</w>\": 19827,\n  \"jat\": 26106,\n  \"jau\": 26932,\n  \"jauregui</w>\": 48175,\n  \"jav\": 6234,\n  \"java</w>\": 12918,\n  \"javascri\": 16289,\n  \"javascript</w>\": 16423,\n  \"jave\": 46218,\n  \"javed</w>\": 42268,\n  \"javelin</w>\": 41701,\n  \"javi</w>\": 47627,\n  \"javier</w>\": 23307,\n  \"jaw\": 14804,\n  \"jaw</w>\": 17307,\n  \"jawa\": 44790,\n  \"jaws</w>\": 25491,\n  \"jax\": 22348,\n  \"jax</w>\": 12390,\n  \"jay\": 3427,\n  \"jay</w>\": 4155,\n  \"jaya</w>\": 21960,\n  \"jayanti</w>\": 37732,\n  \"jaye</w>\": 45703,\n  \"jayne</w>\": 35228,\n  \"jays</w>\": 12393,\n  \"jaz\": 3465,\n  \"jaz</w>\": 32874,\n  \"jazeera</w>\": 38260,\n  \"jazz\": 11488,\n  \"jazz</w>\": 4528,\n  \"jazzfest</w>\": 36683,\n  \"jazzy</w>\": 28191,\n  \"jb\": 21915,\n  \"jb</w>\": 13637,\n  \"jc\": 14991,\n  \"jc</w>\": 11517,\n  \"jd\": 18289,\n  \"jd</w>\": 14125,\n  \"jdm</w>\": 42013,\n  \"je\": 1013,\n  \"je</w>\": 8776,\n  \"jeal\": 9964,\n  \"jealous</w>\": 11093,\n  \"jealousy</w>\": 37654,\n  \"jean\": 13943,\n  \"jean</w>\": 6473,\n  \"jeanette</w>\": 48167,\n  \"jeanne</w>\": 29201,\n  \"jeans</w>\": 10157,\n  \"jeb</w>\": 35101,\n  \"jec\": 1347,\n  \"ject</w>\": 6070,\n  \"jed\": 12166,\n  \"jed</w>\": 38748,\n  \"jeddah</w>\": 40982,\n  \"jedi</w>\": 16681,\n  \"jee\": 29250,\n  \"jee</w>\": 14870,\n  \"jeep\": 16593,\n  \"jeep</w>\": 11286,\n  \"jeeplife</w>\": 43100,\n  \"jeet\": 45542,\n  \"jeet</w>\": 30944,\n  \"jef\": 10276,\n  \"jeff\": 6245,\n  \"jeff</w>\": 5550,\n  \"jefferson\": 44711,\n  \"jefferson</w>\": 13976,\n  \"jeffery</w>\": 41470,\n  \"jeffree\": 45994,\n  \"jeffrey\": 32886,\n  \"jeffrey</w>\": 16027,\n  \"jeho\": 42437,\n  \"jeky\": 43893,\n  \"jekyll</w>\": 49405,\n  \"jel\": 9794,\n  \"jelena</w>\": 48218,\n  \"jelly\": 19110,\n  \"jelly</w>\": 13762,\n  \"jellyfish</w>\": 30988,\n  \"jem\": 46326,\n  \"jem</w>\": 37530,\n  \"jen\": 2554,\n  \"jen</w>\": 12997,\n  \"jenkins</w>\": 16162,\n  \"jenn\": 33921,\n  \"jenn</w>\": 29869,\n  \"jenna</w>\": 17125,\n  \"jenner</w>\": 14260,\n  \"jenni\": 6774,\n  \"jennie</w>\": 28875,\n  \"jennifer\": 19786,\n  \"jennifer</w>\": 8613,\n  \"jennings</w>\": 21564,\n  \"jenny\": 20165,\n  \"jenny</w>\": 13414,\n  \"jens</w>\": 40806,\n  \"jensen\": 35558,\n  \"jensen</w>\": 19004,\n  \"jensenackles</w>\": 41011,\n  \"jeon\": 45200,\n  \"jeon</w>\": 43337,\n  \"jeong\": 47146,\n  \"jeong</w>\": 39264,\n  \"jeopar\": 22988,\n  \"jeopardy</w>\": 29613,\n  \"jer\": 2310,\n  \"jer</w>\": 35307,\n  \"jere\": 5614,\n  \"jeremi\": 22362,\n  \"jeremiah</w>\": 27301,\n  \"jeremy\": 14656,\n  \"jeremy</w>\": 8127,\n  \"jeremycorbyn</w>\": 37484,\n  \"jeric\": 25084,\n  \"jericho</w>\": 28892,\n  \"jerk</w>\": 23917,\n  \"jerky</w>\": 40079,\n  \"jermaine</w>\": 40722,\n  \"jerome</w>\": 19876,\n  \"jerry\": 18163,\n  \"jerry</w>\": 9164,\n  \"jersey\": 21921,\n  \"jersey</w>\": 4471,\n  \"jerseys</w>\": 15518,\n  \"jerus\": 12257,\n  \"jerusalem</w>\": 12557,\n  \"jes\": 7686,\n  \"jes</w>\": 35826,\n  \"jess\": 5313,\n  \"jess</w>\": 13758,\n  \"jesse\": 23112,\n  \"jesse</w>\": 11770,\n  \"jessi\": 24373,\n  \"jessic\": 14881,\n  \"jessica\": 45421,\n  \"jessica</w>\": 8178,\n  \"jessie</w>\": 19424,\n  \"jester</w>\": 44225,\n  \"jesu\": 19777,\n  \"jesuit</w>\": 33234,\n  \"jesus</w>\": 4070,\n  \"jet\": 11515,\n  \"jet</w>\": 6565,\n  \"jetblue</w>\": 45021,\n  \"jeter</w>\": 38450,\n  \"jets\": 38584,\n  \"jets</w>\": 10025,\n  \"jett</w>\": 44541,\n  \"jetty</w>\": 46382,\n  \"jew</w>\": 27450,\n  \"jewel\": 4880,\n  \"jewel</w>\": 17591,\n  \"jewell\": 9777,\n  \"jewellers</w>\": 46265,\n  \"jewellery</w>\": 11192,\n  \"jewelry\": 28018,\n  \"jewelry</w>\": 6039,\n  \"jewels</w>\": 20205,\n  \"jewish\": 29594,\n  \"jewish</w>\": 9104,\n  \"jews</w>\": 14200,\n  \"jf\": 31130,\n  \"jf</w>\": 33718,\n  \"jfc</w>\": 43652,\n  \"jfk</w>\": 18486,\n  \"jg\": 41986,\n  \"jg</w>\": 35138,\n  \"jh\": 24858,\n  \"jh</w>\": 21485,\n  \"jha\": 47012,\n  \"jha</w>\": 38092,\n  \"jhal\": 45695,\n  \"jhar\": 31546,\n  \"jharkhand</w>\": 39001,\n  \"jhb</w>\": 34631,\n  \"ji\": 3252,\n  \"ji</w>\": 2697,\n  \"jia</w>\": 32907,\n  \"jian</w>\": 33427,\n  \"jiang\": 43309,\n  \"jiang</w>\": 25762,\n  \"jic\": 48350,\n  \"jic</w>\": 40215,\n  \"jid</w>\": 24403,\n  \"jie</w>\": 40005,\n  \"jig\": 15136,\n  \"jig</w>\": 47430,\n  \"jigsaw</w>\": 32987,\n  \"jiha\": 23194,\n  \"jihad</w>\": 29637,\n  \"jihoon</w>\": 44765,\n  \"jil\": 36225,\n  \"jill\": 24136,\n  \"jill</w>\": 15254,\n  \"jillian</w>\": 37820,\n  \"jim\": 3190,\n  \"jim</w>\": 4550,\n  \"jima</w>\": 20679,\n  \"jimcantore</w>\": 43950,\n  \"jimenez</w>\": 35947,\n  \"jimi</w>\": 30565,\n  \"jimin</w>\": 16286,\n  \"jimmie</w>\": 45679,\n  \"jimmy\": 12215,\n  \"jimmy</w>\": 6817,\n  \"jimmyfallon</w>\": 45265,\n  \"jin\": 7927,\n  \"jin</w>\": 8485,\n  \"jind\": 40609,\n  \"jing\": 34933,\n  \"jing</w>\": 28607,\n  \"jingle</w>\": 28699,\n  \"jinnah</w>\": 43141,\n  \"jinping</w>\": 39308,\n  \"jinx</w>\": 42977,\n  \"jinyoung</w>\": 38051,\n  \"jio</w>\": 40501,\n  \"jis\": 25988,\n  \"jis</w>\": 23515,\n  \"jisoo</w>\": 43070,\n  \"jit\": 11947,\n  \"jit</w>\": 20308,\n  \"jitsu</w>\": 24530,\n  \"jiu\": 43351,\n  \"jiu</w>\": 44123,\n  \"jj\": 12502,\n  \"jj</w>\": 12790,\n  \"jk\": 20189,\n  \"jk</w>\": 9702,\n  \"jkt</w>\": 21494,\n  \"jl\": 25027,\n  \"jl</w>\": 22911,\n  \"jlo</w>\": 31017,\n  \"jm\": 24044,\n  \"jm</w>\": 18657,\n  \"jn\": 24576,\n  \"jn</w>\": 21717,\n  \"jnr</w>\": 37145,\n  \"jnu</w>\": 47142,\n  \"jo\": 683,\n  \"jo</w>\": 3804,\n  \"joachim</w>\": 48979,\n  \"joan\": 28064,\n  \"joan</w>\": 12710,\n  \"joann\": 35484,\n  \"joanna</w>\": 25357,\n  \"joanne\": 43736,\n  \"joanne</w>\": 25092,\n  \"joao</w>\": 45666,\n  \"joaqu\": 25140,\n  \"joaquin</w>\": 30745,\n  \"job\": 13114,\n  \"job</w>\": 2075,\n  \"jobs</w>\": 3735,\n  \"jobsearch</w>\": 45459,\n  \"joburg</w>\": 39343,\n  \"jocel\": 36879,\n  \"jocelyn</w>\": 47259,\n  \"jock</w>\": 34485,\n  \"jockey</w>\": 20126,\n  \"jodh\": 48689,\n  \"jodi\": 36812,\n  \"jodi</w>\": 26888,\n  \"jodie</w>\": 33100,\n  \"jody</w>\": 32959,\n  \"joe\": 9309,\n  \"joe</w>\": 3305,\n  \"joel\": 19819,\n  \"joel</w>\": 11429,\n  \"joes</w>\": 34756,\n  \"joey\": 16281,\n  \"joey</w>\": 10455,\n  \"jog\": 37967,\n  \"jog</w>\": 31691,\n  \"jogging</w>\": 37922,\n  \"joh\": 1201,\n  \"johan\": 17416,\n  \"johan</w>\": 27789,\n  \"johann</w>\": 31180,\n  \"johanna</w>\": 41494,\n  \"johannes</w>\": 37779,\n  \"johannesburg</w>\": 28377,\n  \"johansson</w>\": 41512,\n  \"johar</w>\": 34871,\n  \"john\": 2004,\n  \"john</w>\": 1742,\n  \"johncena</w>\": 46820,\n  \"johnnie</w>\": 47947,\n  \"johnny\": 14464,\n  \"johnny</w>\": 6904,\n  \"johns</w>\": 14515,\n  \"johnson\": 26036,\n  \"johnson</w>\": 4010,\n  \"johnston</w>\": 19791,\n  \"johnstone</w>\": 40766,\n  \"johor</w>\": 34750,\n  \"join\": 14737,\n  \"join</w>\": 1384,\n  \"joined</w>\": 4954,\n  \"joining</w>\": 5118,\n  \"joins</w>\": 5681,\n  \"joint</w>\": 6640,\n  \"jointhe\": 30422,\n  \"jointly</w>\": 37471,\n  \"joints</w>\": 27204,\n  \"jojo\": 41484,\n  \"jojo</w>\": 22075,\n  \"joke</w>\": 7198,\n  \"joker</w>\": 18200,\n  \"jokers</w>\": 44101,\n  \"jokes</w>\": 11336,\n  \"joking</w>\": 26112,\n  \"joko\": 44975,\n  \"jol\": 9174,\n  \"jol</w>\": 36470,\n  \"jolie</w>\": 31633,\n  \"jolla</w>\": 46109,\n  \"jolly</w>\": 21516,\n  \"jom\": 32152,\n  \"jon\": 3026,\n  \"jon</w>\": 6139,\n  \"jona\": 6629,\n  \"jonah\": 47934,\n  \"jonah</w>\": 27556,\n  \"jonas\": 42373,\n  \"jonas</w>\": 13650,\n  \"jonathan\": 19026,\n  \"jonathan</w>\": 7762,\n  \"jone\": 33934,\n  \"jones\": 19091,\n  \"jones</w>\": 3538,\n  \"jong\": 20214,\n  \"jong</w>\": 14726,\n  \"jonghyun</w>\": 29023,\n  \"jongin</w>\": 36957,\n  \"joni</w>\": 43177,\n  \"jonny\": 28454,\n  \"jonny</w>\": 21895,\n  \"joo\": 25807,\n  \"joo</w>\": 27680,\n  \"joom\": 47543,\n  \"joon</w>\": 18547,\n  \"joong</w>\": 26544,\n  \"jop\": 30486,\n  \"joplin</w>\": 42688,\n  \"jor\": 2482,\n  \"jor</w>\": 31595,\n  \"jordan\": 14644,\n  \"jordan</w>\": 4388,\n  \"jordani\": 46898,\n  \"jordi</w>\": 44795,\n  \"jorge\": 48761,\n  \"jorge</w>\": 18225,\n  \"jos\": 20560,\n  \"jos</w>\": 19661,\n  \"jose\": 4647,\n  \"jose</w>\": 7075,\n  \"josef</w>\": 36584,\n  \"josel\": 47800,\n  \"joseph\": 14163,\n  \"joseph</w>\": 6478,\n  \"josephine</w>\": 34866,\n  \"josh\": 9998,\n  \"josh</w>\": 5679,\n  \"joshi</w>\": 24786,\n  \"joshu\": 9112,\n  \"joshua</w>\": 11852,\n  \"josi\": 33583,\n  \"josie</w>\": 33167,\n  \"joss</w>\": 42834,\n  \"josÃ©</w>\": 27922,\n  \"jou\": 19921,\n  \"jou</w>\": 32029,\n  \"jour\": 2078,\n  \"jour</w>\": 17142,\n  \"journ\": 4563,\n  \"journal</w>\": 6626,\n  \"journalism</w>\": 10123,\n  \"journalist</w>\": 9914,\n  \"journalists</w>\": 12249,\n  \"journals</w>\": 24391,\n  \"journe\": 48833,\n  \"journey\": 32156,\n  \"journey</w>\": 3749,\n  \"journeys</w>\": 23329,\n  \"journo</w>\": 37034,\n  \"journos</w>\": 46437,\n  \"jovi</w>\": 33866,\n  \"joy\": 6308,\n  \"joy</w>\": 4273,\n  \"joyce\": 43753,\n  \"joyce</w>\": 15275,\n  \"joye\": 34052,\n  \"joyeux</w>\": 41876,\n  \"joyful</w>\": 24139,\n  \"joyous</w>\": 32245,\n  \"joyride</w>\": 46949,\n  \"joys</w>\": 22996,\n  \"jp\": 18249,\n  \"jp</w>\": 10557,\n  \"jpg</w>\": 36950,\n  \"jpn</w>\": 36212,\n  \"jr\": 13973,\n  \"jr</w>\": 3605,\n  \"js\": 46243,\n  \"js</w>\": 8006,\n  \"jst</w>\": 26523,\n  \"jt\": 39480,\n  \"jt</w>\": 18119,\n  \"ju\": 669,\n  \"ju</w>\": 9970,\n  \"jual</w>\": 38720,\n  \"juan\": 17148,\n  \"juan</w>\": 9274,\n  \"juana</w>\": 9081,\n  \"jubi\": 15485,\n  \"jubil\": 47743,\n  \"jubilee</w>\": 16907,\n  \"juco</w>\": 31570,\n  \"jud\": 8363,\n  \"juda\": 32478,\n  \"judah</w>\": 41066,\n  \"judaism</w>\": 42217,\n  \"judas</w>\": 39532,\n  \"judd</w>\": 29770,\n  \"judg\": 20012,\n  \"judge\": 16824,\n  \"judge</w>\": 5656,\n  \"judged</w>\": 33453,\n  \"judgement</w>\": 25246,\n  \"judges</w>\": 12575,\n  \"judging</w>\": 16570,\n  \"judgment</w>\": 24191,\n  \"judi\": 42546,\n  \"judice</w>\": 28032,\n  \"judicial</w>\": 19579,\n  \"judiciary</w>\": 24545,\n  \"judith</w>\": 24047,\n  \"judo</w>\": 27011,\n  \"judy\": 34663,\n  \"judy</w>\": 16510,\n  \"jug</w>\": 27619,\n  \"jugg\": 38628,\n  \"juic\": 38761,\n  \"juice\": 37954,\n  \"juice</w>\": 6916,\n  \"juices</w>\": 36757,\n  \"juicy</w>\": 17623,\n  \"juju</w>\": 43020,\n  \"juke\": 32519,\n  \"jukebox</w>\": 36411,\n  \"jul\": 34662,\n  \"jul</w>\": 15975,\n  \"jule\": 40819,\n  \"jules</w>\": 21996,\n  \"juli\": 3614,\n  \"juli</w>\": 49160,\n  \"julia</w>\": 10207,\n  \"julian\": 25459,\n  \"julian</w>\": 12643,\n  \"juliana</w>\": 46059,\n  \"julie\": 22534,\n  \"julie</w>\": 10505,\n  \"julien</w>\": 32595,\n  \"juliet</w>\": 20641,\n  \"juliette</w>\": 44804,\n  \"julio</w>\": 24888,\n  \"julius</w>\": 20870,\n  \"july</w>\": 2272,\n  \"jum\": 20791,\n  \"jumbo</w>\": 24678,\n  \"jume\": 45989,\n  \"jump\": 5519,\n  \"jump</w>\": 6423,\n  \"jumped</w>\": 16901,\n  \"jumper</w>\": 16558,\n  \"jumpers</w>\": 36485,\n  \"jumping</w>\": 11476,\n  \"jumpman</w>\": 48803,\n  \"jumps</w>\": 18911,\n  \"jumpsuit</w>\": 31044,\n  \"jun\": 1637,\n  \"jun</w>\": 7719,\n  \"junction</w>\": 11320,\n  \"june\": 23188,\n  \"june</w>\": 2345,\n  \"jung\": 13086,\n  \"jung</w>\": 13031,\n  \"jungkook</w>\": 20040,\n  \"jungle\": 42421,\n  \"jungle</w>\": 10865,\n  \"juni\": 4029,\n  \"junior\": 21167,\n  \"junior</w>\": 5027,\n  \"juniors</w>\": 16811,\n  \"juniper</w>\": 33829,\n  \"junk</w>\": 16000,\n  \"junkie</w>\": 27613,\n  \"junkies</w>\": 41207,\n  \"juno</w>\": 28845,\n  \"junto</w>\": 34282,\n  \"jupit\": 15270,\n  \"jupiter</w>\": 16212,\n  \"jur\": 15896,\n  \"jura\": 14715,\n  \"jurassic\": 28844,\n  \"jurassic</w>\": 21255,\n  \"jurgen</w>\": 39263,\n  \"juris\": 37010,\n  \"jurisdic\": 37714,\n  \"jury</w>\": 12931,\n  \"jus</w>\": 14999,\n  \"just\": 1770,\n  \"just</w>\": 761,\n  \"justi\": 14700,\n  \"justic\": 30399,\n  \"justice\": 16904,\n  \"justice</w>\": 3604,\n  \"justicefor\": 25812,\n  \"justiceleague</w>\": 41929,\n  \"justices</w>\": 44356,\n  \"justified</w>\": 34546,\n  \"justify</w>\": 28192,\n  \"justin\": 7537,\n  \"justin</w>\": 4394,\n  \"justinbieber</w>\": 12501,\n  \"justine</w>\": 34418,\n  \"justintrudeau</w>\": 32184,\n  \"justsaying</w>\": 42922,\n  \"juve\": 47717,\n  \"juve</w>\": 23092,\n  \"juven\": 12944,\n  \"juvenile</w>\": 19333,\n  \"juvent\": 13908,\n  \"juventus\": 47378,\n  \"juventus</w>\": 16208,\n  \"jux\": 33552,\n  \"juxta\": 34964,\n  \"jv\": 37932,\n  \"jv</w>\": 11805,\n  \"jw\": 30221,\n  \"jw</w>\": 24215,\n  \"jy\": 20979,\n  \"jyo\": 27378,\n  \"jyoti</w>\": 48696,\n  \"jÃ¤\": 45381,\n  \"k\": 74,\n  \"k</w>\": 330,\n  \"ka\": 1595,\n  \"ka</w>\": 1525,\n  \"kaa</w>\": 34496,\n  \"kab\": 6554,\n  \"kab</w>\": 45134,\n  \"kabaddi</w>\": 41749,\n  \"kabir</w>\": 38619,\n  \"kabo\": 47974,\n  \"kabul</w>\": 26160,\n  \"kac\": 21693,\n  \"kach\": 14341,\n  \"kad\": 10901,\n  \"kade</w>\": 41130,\n  \"kaduna</w>\": 38053,\n  \"kae\": 22542,\n  \"kaeper\": 30070,\n  \"kaepernick</w>\": 30713,\n  \"kaf\": 19870,\n  \"kag\": 13666,\n  \"kag</w>\": 31003,\n  \"kah\": 16068,\n  \"kah</w>\": 15463,\n  \"kahn</w>\": 35397,\n  \"kai\": 12752,\n  \"kai</w>\": 9601,\n  \"kaido</w>\": 40255,\n  \"kail\": 23623,\n  \"kaine</w>\": 39028,\n  \"kair\": 33027,\n  \"kaiser\": 43685,\n  \"kaiser</w>\": 29960,\n  \"kait\": 19326,\n  \"kaitlyn</w>\": 34948,\n  \"kaj\": 44788,\n  \"kaj</w>\": 40381,\n  \"kak\": 10401,\n  \"kak</w>\": 40128,\n  \"kaka</w>\": 47689,\n  \"kaku</w>\": 30900,\n  \"kal\": 4187,\n  \"kal</w>\": 18712,\n  \"kala\": 45453,\n  \"kala</w>\": 33105,\n  \"kalam</w>\": 40142,\n  \"kalamaz\": 42328,\n  \"kalamazoo</w>\": 46264,\n  \"kalb</w>\": 34483,\n  \"kale\": 17162,\n  \"kale</w>\": 16625,\n  \"kaleido\": 41144,\n  \"kali\": 17844,\n  \"kali</w>\": 26964,\n  \"kalin\": 42776,\n  \"kalyan</w>\": 23825,\n  \"kam\": 4104,\n  \"kam</w>\": 26011,\n  \"kamal\": 31371,\n  \"kamal</w>\": 28619,\n  \"kamala</w>\": 45003,\n  \"kame\": 45235,\n  \"kamen</w>\": 40738,\n  \"kami</w>\": 28707,\n  \"kamloops</w>\": 36602,\n  \"kamp\": 35179,\n  \"kamp</w>\": 29522,\n  \"kampala</w>\": 37134,\n  \"kan\": 2532,\n  \"kan</w>\": 8101,\n  \"kana</w>\": 35178,\n  \"kand\": 17478,\n  \"kane\": 32218,\n  \"kane</w>\": 9765,\n  \"kang\": 12226,\n  \"kang</w>\": 20789,\n  \"kangar\": 20622,\n  \"kangaroo</w>\": 25513,\n  \"kani\": 40907,\n  \"kani</w>\": 41948,\n  \"kann\": 18533,\n  \"kannada</w>\": 30053,\n  \"kano</w>\": 28201,\n  \"kans</w>\": 34012,\n  \"kansas\": 25507,\n  \"kansas</w>\": 6539,\n  \"kansascity</w>\": 46134,\n  \"kant\": 39923,\n  \"kant</w>\": 47132,\n  \"kanth</w>\": 24427,\n  \"kanu</w>\": 44565,\n  \"kany\": 13590,\n  \"kanye\": 29680,\n  \"kanye</w>\": 14965,\n  \"kanyewest</w>\": 31943,\n  \"kap\": 6804,\n  \"kap</w>\": 45279,\n  \"kapam\": 48561,\n  \"kapil\": 32337,\n  \"kapil</w>\": 42709,\n  \"kapilshar\": 48978,\n  \"kaplan</w>\": 37401,\n  \"kapoor</w>\": 9117,\n  \"kapp\": 36717,\n  \"kappa</w>\": 20239,\n  \"kapur</w>\": 42371,\n  \"kar\": 1813,\n  \"kar</w>\": 5933,\n  \"kara</w>\": 12552,\n  \"karab\": 40916,\n  \"karachi</w>\": 13671,\n  \"karak\": 40372,\n  \"karan\": 20077,\n  \"karan</w>\": 20931,\n  \"karanjohar</w>\": 47621,\n  \"karao\": 16262,\n  \"karaoke</w>\": 16640,\n  \"karate</w>\": 21211,\n  \"kardashi\": 13619,\n  \"kardashian</w>\": 14578,\n  \"kare\": 14310,\n  \"kare</w>\": 38354,\n  \"kareem</w>\": 38885,\n  \"kareena</w>\": 41569,\n  \"karen\": 17719,\n  \"karen</w>\": 10349,\n  \"kari\": 15339,\n  \"kari</w>\": 15161,\n  \"karim</w>\": 33477,\n  \"karin</w>\": 43917,\n  \"karina</w>\": 40250,\n  \"karl\": 20967,\n  \"karl</w>\": 13134,\n  \"karla</w>\": 42309,\n  \"karma</w>\": 17658,\n  \"karnat\": 13994,\n  \"karnataka</w>\": 15515,\n  \"karo</w>\": 45305,\n  \"kart\": 47841,\n  \"kart</w>\": 21310,\n  \"karthik</w>\": 41397,\n  \"karti\": 23053,\n  \"kartikeyan</w>\": 32584,\n  \"karting</w>\": 41655,\n  \"kas\": 6119,\n  \"kas</w>\": 14372,\n  \"kasa</w>\": 46111,\n  \"kash\": 6954,\n  \"kash</w>\": 21371,\n  \"kashi\": 47945,\n  \"kashmir\": 20251,\n  \"kashmir</w>\": 10783,\n  \"kashmiri</w>\": 35331,\n  \"kasi\": 45870,\n  \"kasi</w>\": 32819,\n  \"kasich</w>\": 39666,\n  \"kat\": 2844,\n  \"kat</w>\": 9341,\n  \"kata</w>\": 14558,\n  \"kate\": 11620,\n  \"kate</w>\": 6699,\n  \"katelyn</w>\": 45963,\n  \"kath\": 7386,\n  \"kath</w>\": 19745,\n  \"katharine</w>\": 41473,\n  \"katherine</w>\": 17687,\n  \"kathle\": 18721,\n  \"kathleen</w>\": 21709,\n  \"kathmandu</w>\": 34456,\n  \"kathniel</w>\": 36159,\n  \"kathr\": 14905,\n  \"kathryn\": 33142,\n  \"kathryn</w>\": 19999,\n  \"kathy\": 34775,\n  \"kathy</w>\": 18795,\n  \"kati\": 6515,\n  \"kati</w>\": 29928,\n  \"katic</w>\": 48058,\n  \"katie\": 24117,\n  \"katie</w>\": 9076,\n  \"katniss</w>\": 47916,\n  \"kato</w>\": 27573,\n  \"katrin\": 31282,\n  \"katrina</w>\": 21397,\n  \"katrinakaif</w>\": 45845,\n  \"kats</w>\": 44213,\n  \"katsu\": 49296,\n  \"katsu</w>\": 43712,\n  \"katy\": 17609,\n  \"katy</w>\": 14435,\n  \"katyperry</w>\": 28309,\n  \"katz</w>\": 30790,\n  \"kau\": 9299,\n  \"kau</w>\": 36895,\n  \"kauai</w>\": 44050,\n  \"kaufman</w>\": 37188,\n  \"kaur</w>\": 30518,\n  \"kav\": 10228,\n  \"kavan\": 18576,\n  \"kavanaugh</w>\": 20252,\n  \"kaw\": 10842,\n  \"kaw</w>\": 42719,\n  \"kawa</w>\": 33244,\n  \"kawaii</w>\": 26891,\n  \"kawasaki</w>\": 28227,\n  \"kawhi</w>\": 41220,\n  \"kay\": 4673,\n  \"kay</w>\": 9862,\n  \"kaya</w>\": 22752,\n  \"kayak</w>\": 27043,\n  \"kayaking</w>\": 28977,\n  \"kaye</w>\": 33003,\n  \"kayla</w>\": 17139,\n  \"kaylee</w>\": 47215,\n  \"kayo</w>\": 37021,\n  \"kaz\": 8812,\n  \"kaz</w>\": 39622,\n  \"kazakh\": 25451,\n  \"kazakhstan</w>\": 26720,\n  \"kazan</w>\": 47641,\n  \"kb\": 27381,\n  \"kb</w>\": 19960,\n  \"kbs</w>\": 27418,\n  \"kc\": 10869,\n  \"kc</w>\": 8638,\n  \"kca</w>\": 14347,\n  \"kcon</w>\": 39970,\n  \"kcr\": 46181,\n  \"kd\": 21826,\n  \"kd</w>\": 15597,\n  \"kday</w>\": 31074,\n  \"kdrama</w>\": 48628,\n  \"ke\": 643,\n  \"ke</w>\": 618,\n  \"kea</w>\": 47926,\n  \"kean\": 43288,\n  \"keane</w>\": 28635,\n  \"keanu</w>\": 40608,\n  \"kear\": 21562,\n  \"kearney</w>\": 36435,\n  \"keating</w>\": 40045,\n  \"keaton</w>\": 29975,\n  \"kebab</w>\": 36497,\n  \"ked\": 11730,\n  \"ked</w>\": 1243,\n  \"kee\": 9724,\n  \"kee</w>\": 6760,\n  \"keef</w>\": 42323,\n  \"keefe</w>\": 46965,\n  \"keegan</w>\": 31122,\n  \"keel</w>\": 48376,\n  \"keen\": 17714,\n  \"keen</w>\": 13218,\n  \"keenan</w>\": 36276,\n  \"keep\": 2924,\n  \"keep</w>\": 1726,\n  \"keeper</w>\": 7650,\n  \"keepers</w>\": 16130,\n  \"keepin</w>\": 41712,\n  \"keeping\": 38371,\n  \"keeping</w>\": 4873,\n  \"keepit\": 28044,\n  \"keeps</w>\": 6333,\n  \"keer\": 27412,\n  \"keerth\": 47500,\n  \"keerthyofficial</w>\": 48185,\n  \"kees</w>\": 10791,\n  \"keg</w>\": 32785,\n  \"keh\": 41272,\n  \"keh</w>\": 36983,\n  \"kei\": 18735,\n  \"kei</w>\": 24835,\n  \"keith\": 18762,\n  \"keith</w>\": 8252,\n  \"kej\": 15674,\n  \"kejri\": 16617,\n  \"kejriwal</w>\": 17334,\n  \"keke</w>\": 39195,\n  \"kel\": 2825,\n  \"kel</w>\": 7553,\n  \"kele\": 41765,\n  \"kell\": 16082,\n  \"kell</w>\": 40103,\n  \"keller</w>\": 21407,\n  \"kelley</w>\": 23776,\n  \"kelli\": 45852,\n  \"kelli</w>\": 46190,\n  \"kellie</w>\": 49224,\n  \"kellogg</w>\": 44218,\n  \"kelly\": 13417,\n  \"kelly</w>\": 5220,\n  \"kelown\": 31708,\n  \"kelowna</w>\": 32963,\n  \"kelsey\": 42295,\n  \"kelsey</w>\": 23018,\n  \"kelvin</w>\": 32859,\n  \"kem\": 31013,\n  \"kem</w>\": 17349,\n  \"kemp\": 18302,\n  \"kemp</w>\": 25325,\n  \"ken\": 1838,\n  \"ken</w>\": 1702,\n  \"kend\": 7497,\n  \"kendal</w>\": 44836,\n  \"kendall\": 34607,\n  \"kendall</w>\": 16238,\n  \"kendra</w>\": 36074,\n  \"kendrick\": 41787,\n  \"kendrick</w>\": 21953,\n  \"kendricklamar</w>\": 47020,\n  \"kenne\": 6209,\n  \"kennedy\": 38631,\n  \"kennedy</w>\": 9004,\n  \"kennel</w>\": 39595,\n  \"kenneth\": 46900,\n  \"kenneth</w>\": 17839,\n  \"kenney</w>\": 41373,\n  \"kenny\": 20185,\n  \"kenny</w>\": 9595,\n  \"kens</w>\": 29765,\n  \"kensing\": 21505,\n  \"kensington</w>\": 24988,\n  \"kent\": 13875,\n  \"kent</w>\": 8214,\n  \"kentu\": 9045,\n  \"kentucky\": 32230,\n  \"kentucky</w>\": 10014,\n  \"keny\": 17374,\n  \"kenya</w>\": 6181,\n  \"kenyan</w>\": 22624,\n  \"kenyans</w>\": 36263,\n  \"kenyatta</w>\": 31012,\n  \"kenzie</w>\": 38087,\n  \"keo\": 43062,\n  \"kept</w>\": 7737,\n  \"ker\": 2352,\n  \"ker</w>\": 1485,\n  \"keral\": 35122,\n  \"kerala</w>\": 11881,\n  \"kered</w>\": 26690,\n  \"kerel</w>\": 32232,\n  \"keri</w>\": 43447,\n  \"kermit</w>\": 40908,\n  \"kern</w>\": 40150,\n  \"kernel</w>\": 40684,\n  \"kerr</w>\": 20491,\n  \"kerri\": 41849,\n  \"kerry\": 24795,\n  \"kerry</w>\": 13097,\n  \"kers\": 30347,\n  \"kers</w>\": 2880,\n  \"kershaw</w>\": 40785,\n  \"kerson</w>\": 42810,\n  \"kerswednesday</w>\": 48152,\n  \"kert</w>\": 47279,\n  \"kes\": 38398,\n  \"kes</w>\": 1115,\n  \"kesh</w>\": 19751,\n  \"kesha</w>\": 36526,\n  \"kest</w>\": 15080,\n  \"ket\": 2715,\n  \"ket</w>\": 1236,\n  \"ketball</w>\": 38240,\n  \"ketch\": 22590,\n  \"ketch</w>\": 35371,\n  \"ketchup</w>\": 26724,\n  \"kete\": 25404,\n  \"keted</w>\": 41396,\n  \"keting</w>\": 15951,\n  \"keto\": 27485,\n  \"keto</w>\": 28754,\n  \"kets</w>\": 1632,\n  \"kett\": 23124,\n  \"kett</w>\": 10312,\n  \"kettering</w>\": 43779,\n  \"kettle\": 41992,\n  \"kettle</w>\": 24303,\n  \"kev\": 22758,\n  \"kev</w>\": 29419,\n  \"kevin\": 9419,\n  \"kevin</w>\": 4685,\n  \"kew\": 38014,\n  \"kew</w>\": 31409,\n  \"kex\": 30251,\n  \"key\": 2891,\n  \"key</w>\": 1458,\n  \"keyan</w>\": 27617,\n  \"keyboard</w>\": 13017,\n  \"keyboards</w>\": 49237,\n  \"keychain</w>\": 31050,\n  \"keye\": 40516,\n  \"keye</w>\": 20635,\n  \"keyes</w>\": 18336,\n  \"keynes</w>\": 32462,\n  \"keynote</w>\": 7556,\n  \"keys\": 48912,\n  \"keys</w>\": 6355,\n  \"keystone</w>\": 30688,\n  \"keyword</w>\": 42284,\n  \"keywords</w>\": 48122,\n  \"kf\": 33308,\n  \"kf</w>\": 42119,\n  \"kfc</w>\": 22032,\n  \"kg\": 36772,\n  \"kg</w>\": 7817,\n  \"kgs</w>\": 46629,\n  \"kh\": 2166,\n  \"kh</w>\": 7452,\n  \"kha\": 7333,\n  \"kha</w>\": 18929,\n  \"khair\": 43742,\n  \"khaki</w>\": 41646,\n  \"khal\": 13070,\n  \"khaled</w>\": 29343,\n  \"khali\": 11324,\n  \"khalid</w>\": 27166,\n  \"khalifa</w>\": 21389,\n  \"khalil</w>\": 36229,\n  \"kham\": 24892,\n  \"khan\": 13318,\n  \"khan</w>\": 3873,\n  \"khand\": 43384,\n  \"khand</w>\": 31110,\n  \"khanna</w>\": 29931,\n  \"khar\": 18340,\n  \"khar</w>\": 28578,\n  \"khart</w>\": 37458,\n  \"khat\": 43290,\n  \"khe\": 26360,\n  \"kher</w>\": 43843,\n  \"khi\": 39062,\n  \"khi</w>\": 42925,\n  \"khil\": 34101,\n  \"khloe</w>\": 45312,\n  \"kho\": 14022,\n  \"kho</w>\": 28774,\n  \"khou</w>\": 30656,\n  \"khs</w>\": 21239,\n  \"khtar</w>\": 45593,\n  \"khu\": 14041,\n  \"khur\": 32083,\n  \"khy\": 40917,\n  \"khz</w>\": 45604,\n  \"ki\": 848,\n  \"ki</w>\": 2608,\n  \"kia</w>\": 8712,\n  \"kian\": 43961,\n  \"kian</w>\": 25708,\n  \"kians</w>\": 44010,\n  \"kib\": 43108,\n  \"kiba\": 37207,\n  \"kic\": 24003,\n  \"kic</w>\": 27633,\n  \"kicchasu\": 44665,\n  \"kicchasudeep</w>\": 45560,\n  \"kick\": 4102,\n  \"kick</w>\": 4289,\n  \"kickass</w>\": 39299,\n  \"kickboxing</w>\": 36041,\n  \"kicked</w>\": 12479,\n  \"kicker</w>\": 26338,\n  \"kickin</w>\": 34597,\n  \"kicking</w>\": 7802,\n  \"kickoff</w>\": 10245,\n  \"kicks</w>\": 6989,\n  \"kickstart</w>\": 40780,\n  \"kickstarter</w>\": 13228,\n  \"kid\": 3948,\n  \"kid</w>\": 3551,\n  \"kidd</w>\": 24082,\n  \"kidding</w>\": 14535,\n  \"kiddo</w>\": 36360,\n  \"kiddos</w>\": 29205,\n  \"kidlit\": 39064,\n  \"kidlit</w>\": 33515,\n  \"kidlitart</w>\": 41600,\n  \"kidman</w>\": 44931,\n  \"kidnap</w>\": 45100,\n  \"kidnapp\": 16183,\n  \"kidnapped</w>\": 24737,\n  \"kidnapping</w>\": 32361,\n  \"kidney\": 37835,\n  \"kidney</w>\": 14610,\n  \"kids\": 15561,\n  \"kids</w>\": 1911,\n  \"kidz</w>\": 41938,\n  \"kie\": 8544,\n  \"kie</w>\": 3094,\n  \"kiefer</w>\": 48026,\n  \"kiel\": 40940,\n  \"kiel</w>\": 25509,\n  \"kien</w>\": 28782,\n  \"kier\": 20403,\n  \"kier</w>\": 35575,\n  \"kieran</w>\": 29231,\n  \"kies\": 36601,\n  \"kies</w>\": 4993,\n  \"kiest</w>\": 29755,\n  \"kiev</w>\": 24585,\n  \"kiewicz</w>\": 47574,\n  \"kigali</w>\": 40278,\n  \"kii</w>\": 39340,\n  \"kik</w>\": 36176,\n  \"kiki</w>\": 23962,\n  \"kiko</w>\": 40861,\n  \"kil\": 4912,\n  \"kil</w>\": 39337,\n  \"kildare</w>\": 45541,\n  \"kili\": 24386,\n  \"kilig</w>\": 49172,\n  \"kilimanjaro</w>\": 43470,\n  \"kilkenny</w>\": 33805,\n  \"kill\": 6163,\n  \"kill</w>\": 4367,\n  \"killa</w>\": 41355,\n  \"killarney</w>\": 48813,\n  \"killed</w>\": 3733,\n  \"killer\": 28230,\n  \"killer</w>\": 6613,\n  \"killers</w>\": 17614,\n  \"killin</w>\": 25903,\n  \"killing\": 37977,\n  \"killing</w>\": 5923,\n  \"killings</w>\": 24918,\n  \"kills</w>\": 9795,\n  \"kiln</w>\": 44150,\n  \"kilo\": 39281,\n  \"kilom\": 26285,\n  \"kilometers</w>\": 39192,\n  \"kilometres</w>\": 43278,\n  \"kilt</w>\": 49319,\n  \"kim\": 4639,\n  \"kim</w>\": 4606,\n  \"kimber\": 16796,\n  \"kimberley</w>\": 39859,\n  \"kimberly</w>\": 27465,\n  \"kimchi</w>\": 41027,\n  \"kimi</w>\": 31536,\n  \"kimkardashian</w>\": 35400,\n  \"kimmel</w>\": 27820,\n  \"kimono</w>\": 40024,\n  \"kin\": 1442,\n  \"kin</w>\": 2667,\n  \"kina</w>\": 28518,\n  \"kind\": 7204,\n  \"kind</w>\": 3044,\n  \"kinda</w>\": 6612,\n  \"kinder\": 12711,\n  \"kinder</w>\": 24159,\n  \"kindergarten</w>\": 16749,\n  \"kindle\": 24704,\n  \"kindle</w>\": 10746,\n  \"kindleunlimited</w>\": 32164,\n  \"kindly</w>\": 13952,\n  \"kindness\": 45112,\n  \"kindness</w>\": 10614,\n  \"kinds</w>\": 14879,\n  \"kine\": 17607,\n  \"kineni</w>\": 49080,\n  \"kinetic</w>\": 37699,\n  \"king\": 2365,\n  \"king</w>\": 674,\n  \"kingdom\": 21870,\n  \"kingdom</w>\": 7364,\n  \"kingdomhearts</w>\": 48570,\n  \"kingdoms</w>\": 43890,\n  \"kingfisher</w>\": 34330,\n  \"kingjames</w>\": 33153,\n  \"kingly</w>\": 33642,\n  \"kingof\": 27878,\n  \"kings\": 18590,\n  \"kings</w>\": 4232,\n  \"kingsley</w>\": 41807,\n  \"kingston\": 40736,\n  \"kingston</w>\": 15393,\n  \"kini</w>\": 41644,\n  \"kinky</w>\": 37006,\n  \"kinney</w>\": 37233,\n  \"kino</w>\": 39000,\n  \"kins\": 31060,\n  \"kins</w>\": 4386,\n  \"kinson</w>\": 12095,\n  \"kio\": 28210,\n  \"kio</w>\": 39401,\n  \"kiosk</w>\": 39146,\n  \"kip\": 27636,\n  \"kip</w>\": 15986,\n  \"kipp\": 43329,\n  \"kir\": 3476,\n  \"kir</w>\": 32949,\n  \"kira</w>\": 33038,\n  \"kiran\": 43234,\n  \"kiran</w>\": 36603,\n  \"kirby</w>\": 17065,\n  \"kiri\": 34170,\n  \"kiri</w>\": 45826,\n  \"kirk\": 10639,\n  \"kirk</w>\": 11508,\n  \"kirkland</w>\": 43061,\n  \"kiro</w>\": 39749,\n  \"kirstel</w>\": 46483,\n  \"kirsten</w>\": 31813,\n  \"kirsty</w>\": 37787,\n  \"kis\": 3199,\n  \"kis</w>\": 22796,\n  \"kish\": 25662,\n  \"kiss\": 43757,\n  \"kiss</w>\": 5946,\n  \"kissed</w>\": 22561,\n  \"kisses\": 47876,\n  \"kisses</w>\": 11220,\n  \"kissing</w>\": 18637,\n  \"kistan</w>\": 29580,\n  \"kit\": 4566,\n  \"kit</w>\": 4274,\n  \"kita</w>\": 29961,\n  \"kitch\": 3850,\n  \"kitchen\": 18131,\n  \"kitchen</w>\": 4485,\n  \"kitchener</w>\": 34428,\n  \"kitchens</w>\": 28301,\n  \"kite\": 47777,\n  \"kite</w>\": 19867,\n  \"kites</w>\": 45829,\n  \"kits</w>\": 13730,\n  \"kitt\": 10840,\n  \"kitten</w>\": 13063,\n  \"kittens</w>\": 17216,\n  \"kitties</w>\": 36013,\n  \"kitty\": 25067,\n  \"kitty</w>\": 8417,\n  \"kiwan\": 38709,\n  \"kiwanis</w>\": 46513,\n  \"kiwi</w>\": 22440,\n  \"kiwis</w>\": 48108,\n  \"kiya</w>\": 41610,\n  \"kj\": 27385,\n  \"kj</w>\": 28238,\n  \"kja\": 41048,\n  \"kjv</w>\": 37387,\n  \"kk\": 4390,\n  \"kk</w>\": 10849,\n  \"kka</w>\": 19002,\n  \"kke</w>\": 44239,\n  \"kker</w>\": 32399,\n  \"kki</w>\": 44672,\n  \"kkk</w>\": 20073,\n  \"kkkk\": 15834,\n  \"kkkk</w>\": 47160,\n  \"kkkkkkkk\": 31042,\n  \"kko</w>\": 43965,\n  \"kkr</w>\": 40855,\n  \"kl\": 8498,\n  \"kl</w>\": 14134,\n  \"kla\": 11249,\n  \"klan</w>\": 46935,\n  \"klar\": 41374,\n  \"klaus</w>\": 31788,\n  \"kle\": 7612,\n  \"kle</w>\": 7432,\n  \"klein\": 33475,\n  \"klein</w>\": 17579,\n  \"kley</w>\": 18594,\n  \"kli\": 31640,\n  \"klin\": 44809,\n  \"klin</w>\": 41647,\n  \"kline</w>\": 47580,\n  \"kling\": 40270,\n  \"klm</w>\": 38859,\n  \"klo\": 15296,\n  \"klopp</w>\": 26446,\n  \"kltu</w>\": 25978,\n  \"klu\": 21852,\n  \"kly</w>\": 45090,\n  \"km\": 29954,\n  \"km</w>\": 4590,\n  \"kman</w>\": 33312,\n  \"kms</w>\": 24996,\n  \"kn\": 4825,\n  \"kn</w>\": 23693,\n  \"knapp</w>\": 33945,\n  \"kne\": 6358,\n  \"knee</w>\": 9897,\n  \"knees</w>\": 19115,\n  \"kner</w>\": 31578,\n  \"knew</w>\": 5009,\n  \"kni\": 6312,\n  \"knick\": 33286,\n  \"knicks</w>\": 17657,\n  \"knife\": 44176,\n  \"knife</w>\": 8960,\n  \"knigh\": 43099,\n  \"knight\": 17949,\n  \"knight</w>\": 7355,\n  \"knights</w>\": 10385,\n  \"knit\": 18745,\n  \"knit</w>\": 14313,\n  \"knitted</w>\": 28151,\n  \"knitting</w>\": 18863,\n  \"knives</w>\": 20910,\n  \"kno\": 1482,\n  \"kno</w>\": 25362,\n  \"knob</w>\": 29736,\n  \"knobs</w>\": 47504,\n  \"knock\": 14195,\n  \"knock</w>\": 11583,\n  \"knocked</w>\": 15325,\n  \"knocking</w>\": 20380,\n  \"knockout</w>\": 22602,\n  \"knocks</w>\": 24296,\n  \"knoll</w>\": 43882,\n  \"knot</w>\": 18412,\n  \"knots</w>\": 32428,\n  \"know\": 4179,\n  \"know</w>\": 1038,\n  \"knowing</w>\": 9267,\n  \"knowledge\": 27864,\n  \"knowledge</w>\": 5510,\n  \"knowledgeable</w>\": 43391,\n  \"knowles</w>\": 32631,\n  \"known</w>\": 3102,\n  \"knows</w>\": 4309,\n  \"knowyour\": 30773,\n  \"knox\": 18630,\n  \"knox</w>\": 21833,\n  \"knoxville</w>\": 23232,\n  \"knu\": 14812,\n  \"knuck\": 21333,\n  \"knuckle</w>\": 42023,\n  \"knuckles</w>\": 40127,\n  \"knw</w>\": 40803,\n  \"ko\": 1313,\n  \"ko</w>\": 2448,\n  \"koala</w>\": 36654,\n  \"kobe\": 42644,\n  \"kobe</w>\": 14470,\n  \"kobo</w>\": 42390,\n  \"koch</w>\": 25331,\n  \"kochi</w>\": 36710,\n  \"kodak</w>\": 30425,\n  \"kodi\": 46611,\n  \"kof\": 17528,\n  \"koff</w>\": 47303,\n  \"kofi</w>\": 40400,\n  \"koh\": 13379,\n  \"koh</w>\": 31216,\n  \"kohl</w>\": 48479,\n  \"kohli</w>\": 17549,\n  \"koi</w>\": 28150,\n  \"kojima</w>\": 46419,\n  \"kok\": 32045,\n  \"kok</w>\": 11225,\n  \"koko\": 42426,\n  \"koko</w>\": 40003,\n  \"kol\": 7142,\n  \"kol</w>\": 31023,\n  \"kolkata</w>\": 18011,\n  \"kom\": 6686,\n  \"kom</w>\": 24181,\n  \"kombat</w>\": 29670,\n  \"kombucha</w>\": 48615,\n  \"komo</w>\": 31820,\n  \"kon\": 5743,\n  \"kon</w>\": 29519,\n  \"kona</w>\": 30203,\n  \"kong\": 31784,\n  \"kong</w>\": 6506,\n  \"konstant\": 46583,\n  \"koo\": 12225,\n  \"koo</w>\": 40472,\n  \"kook</w>\": 16003,\n  \"kool\": 36755,\n  \"kool</w>\": 26444,\n  \"kop\": 16623,\n  \"kop</w>\": 38999,\n  \"kor\": 6428,\n  \"kor</w>\": 24175,\n  \"kore\": 3919,\n  \"korea</w>\": 5915,\n  \"korean\": 31949,\n  \"korean</w>\": 8034,\n  \"kori</w>\": 42842,\n  \"korn\": 45412,\n  \"korn</w>\": 31492,\n  \"kors</w>\": 34535,\n  \"kos\": 47438,\n  \"kos</w>\": 22951,\n  \"kosh</w>\": 45233,\n  \"kosher</w>\": 36502,\n  \"koso\": 23892,\n  \"kosovo</w>\": 28343,\n  \"kot\": 23323,\n  \"kot</w>\": 20701,\n  \"kota</w>\": 21735,\n  \"koto\": 40945,\n  \"koto</w>\": 29977,\n  \"kou\": 18502,\n  \"kou</w>\": 39614,\n  \"kour\": 34134,\n  \"kov\": 17733,\n  \"kov</w>\": 15156,\n  \"kova</w>\": 26185,\n  \"koval\": 47903,\n  \"kovic</w>\": 16886,\n  \"kovich</w>\": 44794,\n  \"kovsky</w>\": 33384,\n  \"kow\": 29764,\n  \"kow</w>\": 23919,\n  \"kowski</w>\": 17649,\n  \"koz\": 29598,\n  \"kp\": 16174,\n  \"kp</w>\": 16894,\n  \"kpa</w>\": 38759,\n  \"kph</w>\": 41138,\n  \"kpk</w>\": 42094,\n  \"kpmg</w>\": 38243,\n  \"kpop\": 29534,\n  \"kpop</w>\": 15859,\n  \"kprc</w>\": 47832,\n  \"kprs</w>\": 46253,\n  \"kr\": 7309,\n  \"kr</w>\": 14107,\n  \"kra\": 5762,\n  \"kraft</w>\": 28057,\n  \"kraja</w>\": 29016,\n  \"kraken</w>\": 48408,\n  \"krakow</w>\": 40033,\n  \"kram\": 19075,\n  \"kramer</w>\": 27495,\n  \"kran\": 33243,\n  \"kranti</w>\": 47969,\n  \"krat\": 30470,\n  \"kre\": 8362,\n  \"kreme</w>\": 43140,\n  \"kremlin</w>\": 33979,\n  \"kri\": 3679,\n  \"kris\": 35251,\n  \"kris</w>\": 12261,\n  \"krish\": 11487,\n  \"krishna</w>\": 15863,\n  \"krishnan</w>\": 46535,\n  \"krispy</w>\": 49292,\n  \"krist\": 16490,\n  \"kristen\": 28881,\n  \"kristen</w>\": 16644,\n  \"kristi\": 26895,\n  \"kristin\": 35408,\n  \"kristin</w>\": 26785,\n  \"kristina</w>\": 33180,\n  \"krit\": 36265,\n  \"kro\": 16193,\n  \"kroger</w>\": 36344,\n  \"kron\": 25999,\n  \"kru\": 10609,\n  \"kruger</w>\": 32948,\n  \"krun\": 43084,\n  \"kry\": 13995,\n  \"krystal</w>\": 36554,\n  \"ks\": 10470,\n  \"ks</w>\": 662,\n  \"ksa</w>\": 25439,\n  \"ksh</w>\": 36594,\n  \"kst</w>\": 17420,\n  \"kstate\": 48590,\n  \"ksu</w>\": 43496,\n  \"kswx</w>\": 36180,\n  \"kt\": 17238,\n  \"kt</w>\": 7792,\n  \"ktm</w>\": 33989,\n  \"ktn\": 42170,\n  \"kton</w>\": 37848,\n  \"kts</w>\": 48577,\n  \"ktv\": 36444,\n  \"ku\": 1836,\n  \"ku</w>\": 4827,\n  \"kuala</w>\": 30336,\n  \"kubball</w>\": 48995,\n  \"kuber\": 41336,\n  \"kubernetes</w>\": 45144,\n  \"kubrick</w>\": 37032,\n  \"kuch</w>\": 39394,\n  \"kud\": 40818,\n  \"kudos</w>\": 14481,\n  \"kul\": 11325,\n  \"kul</w>\": 31514,\n  \"kum\": 18086,\n  \"kum</w>\": 28148,\n  \"kuma\": 43139,\n  \"kuma</w>\": 33920,\n  \"kumar\": 22329,\n  \"kumar</w>\": 7674,\n  \"kumb\": 31391,\n  \"kun\": 6849,\n  \"kun</w>\": 21842,\n  \"kung\": 39656,\n  \"kung</w>\": 22347,\n  \"kunst</w>\": 37881,\n  \"kup\": 39023,\n  \"kups</w>\": 27240,\n  \"kur\": 4862,\n  \"kurdi\": 23504,\n  \"kurdish</w>\": 21644,\n  \"kurdistan</w>\": 24459,\n  \"kurds</w>\": 20888,\n  \"kuri\": 46375,\n  \"kuro\": 28239,\n  \"kuro</w>\": 47826,\n  \"kurt\": 31903,\n  \"kurt</w>\": 14527,\n  \"kus\": 27618,\n  \"kus</w>\": 27505,\n  \"kush\": 22264,\n  \"kush</w>\": 24594,\n  \"kushner</w>\": 36716,\n  \"kut\": 17283,\n  \"kut</w>\": 36965,\n  \"kuwait</w>\": 19679,\n  \"kuya</w>\": 34815,\n  \"kuz\": 33253,\n  \"kv\": 27594,\n  \"kv</w>\": 34249,\n  \"kw\": 10072,\n  \"kw</w>\": 18339,\n  \"kwa\": 32784,\n  \"kwa</w>\": 48576,\n  \"kwame</w>\": 46681,\n  \"kwan\": 37100,\n  \"kwan</w>\": 39447,\n  \"kwang</w>\": 40260,\n  \"kwe\": 26050,\n  \"kwi\": 35327,\n  \"kwon</w>\": 36369,\n  \"kx\": 28190,\n  \"kx</w>\": 46442,\n  \"ky\": 2018,\n  \"ky</w>\": 2383,\n  \"kya</w>\": 29142,\n  \"kyc</w>\": 37758,\n  \"kyiv</w>\": 36422,\n  \"kyle\": 15847,\n  \"kyle</w>\": 7539,\n  \"kylie\": 28282,\n  \"kylie</w>\": 17983,\n  \"kyliejenner</w>\": 47232,\n  \"kylo</w>\": 47704,\n  \"kyo\": 13150,\n  \"kyo</w>\": 6281,\n  \"kyoto</w>\": 23223,\n  \"kyr\": 26329,\n  \"kyrgy\": 40013,\n  \"kyrgyz\": 48346,\n  \"kyrie</w>\": 21857,\n  \"kyu\": 28296,\n  \"kyu</w>\": 25490,\n  \"kyuhyun</w>\": 37229,\n  \"kyung</w>\": 41058,\n  \"kyungsoo</w>\": 30280,\n  \"kywx</w>\": 39940,\n  \"kz\": 48743,\n  \"kz</w>\": 36848,\n  \"kzn</w>\": 38264,\n  \"kÃ¶\": 32437,\n  \"l\": 75,\n  \"l</w>\": 331,\n  \"la\": 572,\n  \"la</w>\": 1210,\n  \"laa</w>\": 44642,\n  \"lab\": 3537,\n  \"lab</w>\": 4352,\n  \"labe\": 25749,\n  \"label\": 12235,\n  \"label</w>\": 9093,\n  \"labeled</w>\": 32720,\n  \"labeling</w>\": 36825,\n  \"labelled</w>\": 45188,\n  \"labels</w>\": 17413,\n  \"lable</w>\": 31879,\n  \"labor\": 11201,\n  \"labor</w>\": 7878,\n  \"laboratories</w>\": 43421,\n  \"laboratory</w>\": 17664,\n  \"laborday</w>\": 39324,\n  \"labou\": 32700,\n  \"labour\": 19586,\n  \"labour</w>\": 6019,\n  \"labourdoorstep</w>\": 37008,\n  \"labout\": 35961,\n  \"labra\": 37067,\n  \"labrador</w>\": 25409,\n  \"labs</w>\": 12021,\n  \"laby\": 29131,\n  \"labyrin\": 31782,\n  \"labyrinth</w>\": 35594,\n  \"lac\": 4477,\n  \"lac</w>\": 16189,\n  \"lace\": 30012,\n  \"lace</w>\": 5421,\n  \"laced</w>\": 36800,\n  \"laces</w>\": 23281,\n  \"lacey</w>\": 31754,\n  \"lach\": 30558,\n  \"lack\": 24915,\n  \"lack</w>\": 8069,\n  \"lacking</w>\": 30080,\n  \"lacks</w>\": 34388,\n  \"laco\": 45882,\n  \"lacrosse</w>\": 12915,\n  \"lacy</w>\": 38645,\n  \"lad\": 15991,\n  \"lad</w>\": 10707,\n  \"ladak\": 42312,\n  \"ladakh</w>\": 45295,\n  \"ladder</w>\": 16637,\n  \"ladders</w>\": 47125,\n  \"lade</w>\": 26447,\n  \"laden</w>\": 28634,\n  \"ladi\": 12934,\n  \"ladies\": 28932,\n  \"ladies</w>\": 3431,\n  \"lads</w>\": 9803,\n  \"lady\": 7275,\n  \"lady</w>\": 2909,\n  \"ladybird</w>\": 43389,\n  \"ladybug</w>\": 40038,\n  \"ladygaga</w>\": 21232,\n  \"laf\": 47555,\n  \"lafayette</w>\": 22683,\n  \"lag\": 30932,\n  \"lag</w>\": 20394,\n  \"laga</w>\": 30161,\n  \"lage</w>\": 24369,\n  \"lager\": 36811,\n  \"lager</w>\": 22989,\n  \"lagh\": 37237,\n  \"laghate\": 47565,\n  \"laghateparth</w>\": 48780,\n  \"lagi</w>\": 39786,\n  \"lago\": 42698,\n  \"lago</w>\": 31476,\n  \"lagoon</w>\": 22753,\n  \"lagos</w>\": 12728,\n  \"lagun\": 18500,\n  \"laguna</w>\": 23609,\n  \"lah\": 27315,\n  \"lah</w>\": 4299,\n  \"lahat</w>\": 42164,\n  \"lahore</w>\": 16733,\n  \"lai</w>\": 23947,\n  \"laid\": 42560,\n  \"laid</w>\": 11160,\n  \"lain\": 46958,\n  \"lain</w>\": 17151,\n  \"laine</w>\": 35860,\n  \"lair</w>\": 31981,\n  \"lais</w>\": 34923,\n  \"lak\": 12890,\n  \"lak</w>\": 26793,\n  \"lake\": 6441,\n  \"lake</w>\": 2553,\n  \"lakedistrict</w>\": 26437,\n  \"lakel\": 26133,\n  \"lakeland</w>\": 34306,\n  \"laker\": 45717,\n  \"lakers</w>\": 13570,\n  \"lakes</w>\": 9265,\n  \"lakeshore</w>\": 42595,\n  \"lakeside</w>\": 30915,\n  \"lakewood</w>\": 36417,\n  \"lakh</w>\": 21487,\n  \"lakhs</w>\": 37985,\n  \"lakings</w>\": 34289,\n  \"lakota</w>\": 45510,\n  \"laksh\": 24937,\n  \"lakshmi</w>\": 39682,\n  \"lal\": 12301,\n  \"lal</w>\": 19430,\n  \"lala</w>\": 33661,\n  \"lali\": 21726,\n  \"laliga</w>\": 32383,\n  \"lam\": 2022,\n  \"lam</w>\": 5704,\n  \"lama</w>\": 26049,\n  \"lamar\": 28678,\n  \"lamar</w>\": 17284,\n  \"lamb\": 19863,\n  \"lamb</w>\": 10034,\n  \"lambda</w>\": 36687,\n  \"lambert</w>\": 14574,\n  \"lambeth</w>\": 43410,\n  \"lambo</w>\": 45464,\n  \"lamborgh\": 18709,\n  \"lamborghini</w>\": 19462,\n  \"lambs</w>\": 30361,\n  \"lame</w>\": 23192,\n  \"lamin\": 22337,\n  \"laminated</w>\": 49079,\n  \"lamo\": 41461,\n  \"lamont</w>\": 46719,\n  \"lamp\": 26700,\n  \"lamp</w>\": 10725,\n  \"lampard</w>\": 39989,\n  \"lamps</w>\": 23424,\n  \"lan\": 1193,\n  \"lan</w>\": 4872,\n  \"lana</w>\": 15406,\n  \"lanapar\": 47437,\n  \"lanaparrilla</w>\": 47819,\n  \"lanc\": 11872,\n  \"lanca\": 15694,\n  \"lancashire</w>\": 20939,\n  \"lancaster</w>\": 16446,\n  \"lance\": 26025,\n  \"lance</w>\": 11609,\n  \"lancer</w>\": 38195,\n  \"lancers</w>\": 46392,\n  \"lancia</w>\": 48698,\n  \"lancs</w>\": 47540,\n  \"land\": 1567,\n  \"land</w>\": 973,\n  \"lande</w>\": 36556,\n  \"landed</w>\": 9873,\n  \"lander\": 37247,\n  \"lander</w>\": 9666,\n  \"landers</w>\": 20019,\n  \"landfall</w>\": 38465,\n  \"landfill</w>\": 34947,\n  \"landia</w>\": 41384,\n  \"landing</w>\": 8292,\n  \"landings</w>\": 46104,\n  \"landlord</w>\": 28938,\n  \"landlords</w>\": 35283,\n  \"landmark</w>\": 15208,\n  \"landmarks</w>\": 30393,\n  \"lando\": 25463,\n  \"lando</w>\": 7065,\n  \"landon</w>\": 32748,\n  \"landrover</w>\": 38125,\n  \"landry</w>\": 36137,\n  \"lands\": 40223,\n  \"lands</w>\": 2961,\n  \"landsc\": 4384,\n  \"landscape\": 21123,\n  \"landscape</w>\": 5727,\n  \"landscapephotography</w>\": 28125,\n  \"landscapes</w>\": 15344,\n  \"landscaping</w>\": 25642,\n  \"landslide</w>\": 31954,\n  \"lane\": 25534,\n  \"lane</w>\": 3980,\n  \"lanes</w>\": 10345,\n  \"laney</w>\": 38552,\n  \"lang\": 7969,\n  \"lang</w>\": 8578,\n  \"lange</w>\": 32021,\n  \"langford</w>\": 45615,\n  \"langley</w>\": 28595,\n  \"langu\": 4095,\n  \"language\": 46103,\n  \"language</w>\": 4781,\n  \"languages</w>\": 13527,\n  \"lani</w>\": 22964,\n  \"lanka</w>\": 16221,\n  \"lankan</w>\": 40531,\n  \"lannister</w>\": 49056,\n  \"lans\": 43550,\n  \"lansing</w>\": 30805,\n  \"lant</w>\": 44504,\n  \"lanta</w>\": 44768,\n  \"lantern</w>\": 17185,\n  \"lanterns</w>\": 33676,\n  \"lantic\": 32601,\n  \"lantic</w>\": 27678,\n  \"lants</w>\": 38425,\n  \"lanyard</w>\": 46808,\n  \"lao\": 32475,\n  \"lao</w>\": 29521,\n  \"laos</w>\": 34353,\n  \"lap\": 7213,\n  \"lap</w>\": 8639,\n  \"lapd</w>\": 32557,\n  \"lapel</w>\": 47961,\n  \"lapland</w>\": 43633,\n  \"laps</w>\": 18711,\n  \"lapse</w>\": 33365,\n  \"laptop</w>\": 10464,\n  \"laptops</w>\": 32189,\n  \"laq</w>\": 45026,\n  \"lar\": 1592,\n  \"lar</w>\": 1652,\n  \"lara</w>\": 19435,\n  \"lard</w>\": 40347,\n  \"lare\": 22415,\n  \"laredo</w>\": 48427,\n  \"large\": 40234,\n  \"large</w>\": 3638,\n  \"largely</w>\": 21418,\n  \"larger</w>\": 12567,\n  \"largest</w>\": 4960,\n  \"largo</w>\": 44161,\n  \"lari\": 34676,\n  \"lark\": 43164,\n  \"lark</w>\": 23536,\n  \"larkin</w>\": 34769,\n  \"larry\": 18642,\n  \"larry</w>\": 8242,\n  \"lars</w>\": 8669,\n  \"larsen</w>\": 39721,\n  \"larson</w>\": 27973,\n  \"larvae</w>\": 44840,\n  \"las\": 8295,\n  \"las</w>\": 2552,\n  \"lasag\": 31210,\n  \"lasagna</w>\": 40683,\n  \"lasalle</w>\": 43866,\n  \"laser\": 25607,\n  \"laser</w>\": 9885,\n  \"lasers</w>\": 37060,\n  \"lash\": 31995,\n  \"lash</w>\": 18480,\n  \"lashes</w>\": 21015,\n  \"lass\": 24203,\n  \"lass</w>\": 18263,\n  \"lassic</w>\": 39430,\n  \"last\": 10600,\n  \"last</w>\": 952,\n  \"lasted</w>\": 25711,\n  \"lasting</w>\": 13434,\n  \"lastnight</w>\": 30159,\n  \"lasts</w>\": 20141,\n  \"lasvegas</w>\": 17789,\n  \"lat\": 1591,\n  \"lat</w>\": 28437,\n  \"lata</w>\": 47114,\n  \"latam</w>\": 40012,\n  \"late\": 13267,\n  \"late</w>\": 2325,\n  \"latel\": 49035,\n  \"lately</w>\": 11824,\n  \"latepost</w>\": 48328,\n  \"later\": 24109,\n  \"later</w>\": 2941,\n  \"lateral</w>\": 26646,\n  \"latest\": 46805,\n  \"latest</w>\": 2053,\n  \"latex</w>\": 27520,\n  \"lati\": 16357,\n  \"latimes</w>\": 43356,\n  \"latin\": 16695,\n  \"latin</w>\": 9888,\n  \"latina</w>\": 27936,\n  \"latino\": 45734,\n  \"latino</w>\": 19470,\n  \"latinos</w>\": 40233,\n  \"lation</w>\": 6191,\n  \"latitude</w>\": 37392,\n  \"lative</w>\": 15719,\n  \"lator</w>\": 9291,\n  \"lators</w>\": 28278,\n  \"latt\": 33561,\n  \"latte</w>\": 17697,\n  \"latter</w>\": 26198,\n  \"latvia</w>\": 30034,\n  \"lau\": 1853,\n  \"lau</w>\": 23090,\n  \"lauderdale</w>\": 24352,\n  \"laugh\": 4969,\n  \"laugh</w>\": 6332,\n  \"laughed</w>\": 16746,\n  \"laughing</w>\": 8301,\n  \"laughs</w>\": 14322,\n  \"laughter</w>\": 10722,\n  \"laun\": 2944,\n  \"launch\": 31168,\n  \"launch</w>\": 2904,\n  \"launched</w>\": 6125,\n  \"launcher</w>\": 35782,\n  \"launches</w>\": 7023,\n  \"launching</w>\": 8565,\n  \"laundering</w>\": 34079,\n  \"laundry</w>\": 14797,\n  \"laur\": 15256,\n  \"laura\": 17091,\n  \"laura</w>\": 7763,\n  \"laure\": 16932,\n  \"laureate</w>\": 25675,\n  \"laurel\": 43370,\n  \"laurel</w>\": 19942,\n  \"lauren\": 10456,\n  \"lauren</w>\": 7634,\n  \"laurence</w>\": 29353,\n  \"laurent</w>\": 23226,\n  \"laurie</w>\": 20326,\n  \"laus\": 38895,\n  \"laus</w>\": 28111,\n  \"lause</w>\": 22269,\n  \"laut\": 47688,\n  \"lav\": 13767,\n  \"lav</w>\": 26919,\n  \"lava</w>\": 16765,\n  \"laven\": 15047,\n  \"lavender</w>\": 16033,\n  \"laver\": 28188,\n  \"lavish</w>\": 35443,\n  \"law\": 2874,\n  \"law</w>\": 2606,\n  \"lawful</w>\": 33845,\n  \"lawler</w>\": 47862,\n  \"lawless</w>\": 39468,\n  \"lawmaker</w>\": 37169,\n  \"lawmakers</w>\": 21190,\n  \"lawn\": 31675,\n  \"lawn</w>\": 11024,\n  \"lawrence\": 32221,\n  \"lawrence</w>\": 8820,\n  \"laws</w>\": 7306,\n  \"lawson</w>\": 22152,\n  \"lawsuit</w>\": 14346,\n  \"lawsuits</w>\": 44331,\n  \"lawyer</w>\": 10552,\n  \"lawyers</w>\": 14232,\n  \"lax\": 17750,\n  \"lax</w>\": 10024,\n  \"lay\": 7205,\n  \"lay</w>\": 6360,\n  \"laye\": 25995,\n  \"layer</w>\": 12411,\n  \"layered</w>\": 28520,\n  \"layers</w>\": 15900,\n  \"laying</w>\": 12333,\n  \"layla</w>\": 45050,\n  \"layne</w>\": 48721,\n  \"layo\": 21738,\n  \"layoffs</w>\": 29019,\n  \"layout</w>\": 17314,\n  \"lays</w>\": 19546,\n  \"layton</w>\": 38061,\n  \"laz\": 18806,\n  \"lazar\": 33075,\n  \"lazarus</w>\": 49126,\n  \"laze</w>\": 41559,\n  \"lazer</w>\": 43735,\n  \"lazio</w>\": 33010,\n  \"lazy\": 32614,\n  \"lazy</w>\": 10753,\n  \"lb\": 21958,\n  \"lb</w>\": 7422,\n  \"lbc</w>\": 37694,\n  \"lbj</w>\": 45683,\n  \"lbloggers</w>\": 48695,\n  \"lbs</w>\": 8912,\n  \"lc\": 9584,\n  \"lc</w>\": 7225,\n  \"lcd</w>\": 21356,\n  \"lcfc</w>\": 25339,\n  \"lcs</w>\": 32279,\n  \"ld\": 1431,\n  \"ld</w>\": 730,\n  \"lder</w>\": 6945,\n  \"lders</w>\": 43221,\n  \"ldn\": 37050,\n  \"ldn</w>\": 2517,\n  \"ldnont</w>\": 25827,\n  \"ldnt</w>\": 21690,\n  \"ldr</w>\": 37279,\n  \"lds</w>\": 31235,\n  \"le\": 534,\n  \"le</w>\": 579,\n  \"lea\": 2246,\n  \"lea</w>\": 13324,\n  \"leach</w>\": 35527,\n  \"lead\": 1328,\n  \"lead</w>\": 2784,\n  \"leader\": 14806,\n  \"leader</w>\": 3236,\n  \"leaderboard</w>\": 34519,\n  \"leaders</w>\": 3546,\n  \"leadership\": 36876,\n  \"leadership</w>\": 3652,\n  \"leading</w>\": 3833,\n  \"leads</w>\": 5335,\n  \"leaf\": 9377,\n  \"leaf</w>\": 7232,\n  \"leaflet</w>\": 38289,\n  \"leaflets</w>\": 39014,\n  \"leafs</w>\": 16688,\n  \"leafy</w>\": 42616,\n  \"leagu\": 13317,\n  \"league\": 16635,\n  \"league</w>\": 2313,\n  \"leagueof\": 26022,\n  \"leagueoflegends</w>\": 31737,\n  \"leagues</w>\": 19888,\n  \"leah\": 24350,\n  \"leah</w>\": 19308,\n  \"leak\": 42900,\n  \"leak</w>\": 15489,\n  \"leaked</w>\": 14353,\n  \"leaking</w>\": 34097,\n  \"leaks</w>\": 15657,\n  \"leam\": 39606,\n  \"lean\": 12447,\n  \"lean</w>\": 8208,\n  \"leaning</w>\": 24411,\n  \"leanne</w>\": 41448,\n  \"leans</w>\": 9357,\n  \"leap\": 29129,\n  \"leap</w>\": 15392,\n  \"leaps</w>\": 48080,\n  \"lear\": 1146,\n  \"lear</w>\": 27663,\n  \"learn\": 16959,\n  \"learn</w>\": 1768,\n  \"learned</w>\": 6048,\n  \"learnenglish</w>\": 49040,\n  \"learner</w>\": 33547,\n  \"learners</w>\": 19572,\n  \"learning\": 22632,\n  \"learning</w>\": 2378,\n  \"learns</w>\": 17569,\n  \"learnt</w>\": 18959,\n  \"leary</w>\": 36051,\n  \"lease\": 49041,\n  \"lease</w>\": 14394,\n  \"leased</w>\": 48352,\n  \"leash</w>\": 36192,\n  \"leasing</w>\": 29160,\n  \"least</w>\": 3651,\n  \"leather\": 21417,\n  \"leather</w>\": 5862,\n  \"leau</w>\": 26498,\n  \"leav\": 3198,\n  \"leave\": 37512,\n  \"leave</w>\": 3258,\n  \"leaves</w>\": 5579,\n  \"leaving</w>\": 5216,\n  \"leban\": 9360,\n  \"lebanese</w>\": 23819,\n  \"lebanon</w>\": 11695,\n  \"leblanc</w>\": 46381,\n  \"lebo\": 44184,\n  \"lebron</w>\": 11971,\n  \"lebu\": 47030,\n  \"lec\": 944,\n  \"lec</w>\": 35374,\n  \"leche</w>\": 46197,\n  \"lect</w>\": 45392,\n  \"lection</w>\": 18252,\n  \"lections</w>\": 30995,\n  \"lecture</w>\": 6617,\n  \"lecturer</w>\": 23795,\n  \"lectures</w>\": 21118,\n  \"led\": 8767,\n  \"led</w>\": 912,\n  \"ledge\": 23647,\n  \"ledge</w>\": 4815,\n  \"ledger</w>\": 26817,\n  \"leds</w>\": 36763,\n  \"lee\": 6224,\n  \"lee</w>\": 2592,\n  \"leed\": 16483,\n  \"leed</w>\": 40206,\n  \"leeds\": 38900,\n  \"leeds</w>\": 7420,\n  \"leek</w>\": 34585,\n  \"leeminho</w>\": 37831,\n  \"leen\": 35311,\n  \"leen</w>\": 15940,\n  \"leep\": 48875,\n  \"leep</w>\": 10191,\n  \"lees\": 29324,\n  \"lees</w>\": 34056,\n  \"lef\": 9152,\n  \"left\": 33949,\n  \"left</w>\": 1823,\n  \"leftist</w>\": 35143,\n  \"lefto\": 17437,\n  \"leftover</w>\": 26414,\n  \"leftovers</w>\": 28481,\n  \"lefty</w>\": 33935,\n  \"leg\": 1211,\n  \"leg</w>\": 4924,\n  \"lega</w>\": 38674,\n  \"legacy\": 44108,\n  \"legacy</w>\": 6447,\n  \"legal\": 17743,\n  \"legal</w>\": 3998,\n  \"legalization</w>\": 40584,\n  \"legalize</w>\": 42921,\n  \"legally</w>\": 14152,\n  \"legate</w>\": 46009,\n  \"lege</w>\": 8065,\n  \"legen\": 6105,\n  \"legend\": 5480,\n  \"legend</w>\": 3539,\n  \"legendary</w>\": 6053,\n  \"legendof\": 47915,\n  \"legends</w>\": 6396,\n  \"leges</w>\": 15356,\n  \"legg\": 18474,\n  \"legg</w>\": 32511,\n  \"legged</w>\": 25830,\n  \"leggings</w>\": 22895,\n  \"leggo</w>\": 43441,\n  \"legi\": 11183,\n  \"legion\": 35503,\n  \"legion</w>\": 14525,\n  \"legis\": 7200,\n  \"legislat\": 16486,\n  \"legislation</w>\": 14143,\n  \"legislative</w>\": 16755,\n  \"legislators</w>\": 31572,\n  \"legislature</w>\": 22309,\n  \"legit</w>\": 12563,\n  \"legitim\": 17656,\n  \"legitimate</w>\": 24491,\n  \"lego\": 28117,\n  \"lego</w>\": 7849,\n  \"legos</w>\": 45359,\n  \"legs</w>\": 7072,\n  \"leh\": 19105,\n  \"leh</w>\": 29298,\n  \"lehead</w>\": 28090,\n  \"lehigh</w>\": 34527,\n  \"lehman</w>\": 46094,\n  \"lei\": 15828,\n  \"lei</w>\": 21830,\n  \"leia</w>\": 32723,\n  \"leic\": 35073,\n  \"leica</w>\": 30206,\n  \"leice\": 10026,\n  \"leicester\": 28795,\n  \"leicester</w>\": 11510,\n  \"leicestershire</w>\": 45358,\n  \"leigh\": 14849,\n  \"leigh</w>\": 9292,\n  \"leighton</w>\": 30782,\n  \"leila</w>\": 41342,\n  \"lein\": 20026,\n  \"lein</w>\": 28551,\n  \"leinster</w>\": 32242,\n  \"leip\": 36401,\n  \"leipzig</w>\": 41860,\n  \"leis\": 13133,\n  \"leisure</w>\": 15849,\n  \"leit\": 35446,\n  \"leith</w>\": 34141,\n  \"lek\": 26626,\n  \"lek</w>\": 36535,\n  \"lel</w>\": 46623,\n  \"lele</w>\": 26075,\n  \"lem\": 10213,\n  \"lem</w>\": 8428,\n  \"leman</w>\": 24478,\n  \"lemans</w>\": 26694,\n  \"lement</w>\": 9693,\n  \"lements</w>\": 15833,\n  \"lemme</w>\": 23318,\n  \"lemon\": 12272,\n  \"lemon</w>\": 7184,\n  \"lemonade</w>\": 18884,\n  \"lemons</w>\": 29576,\n  \"lemore</w>\": 41147,\n  \"len\": 3687,\n  \"len</w>\": 2159,\n  \"lena</w>\": 22038,\n  \"lend\": 45397,\n  \"lend</w>\": 24987,\n  \"lender</w>\": 44734,\n  \"lenders</w>\": 42443,\n  \"lending</w>\": 20209,\n  \"lene</w>\": 17628,\n  \"leness</w>\": 36551,\n  \"leng\": 7861,\n  \"length</w>\": 10130,\n  \"lengths</w>\": 31858,\n  \"lengthy</w>\": 32624,\n  \"lenin</w>\": 41760,\n  \"lennon</w>\": 18360,\n  \"lennox</w>\": 45748,\n  \"lenny\": 48448,\n  \"lenny</w>\": 30124,\n  \"leno</w>\": 45357,\n  \"lenovo</w>\": 25886,\n  \"lens</w>\": 8666,\n  \"lenses</w>\": 21264,\n  \"lent\": 20943,\n  \"lent</w>\": 22605,\n  \"lentil</w>\": 41511,\n  \"lentils</w>\": 44269,\n  \"leo\": 24008,\n  \"leo</w>\": 8312,\n  \"leon\": 6581,\n  \"leon</w>\": 9763,\n  \"leonard\": 43849,\n  \"leonard</w>\": 13142,\n  \"leonardo</w>\": 20282,\n  \"leone</w>\": 22864,\n  \"leop\": 11234,\n  \"leopard</w>\": 15931,\n  \"leopards</w>\": 40996,\n  \"leopold</w>\": 45501,\n  \"lep\": 48884,\n  \"leppard</w>\": 41656,\n  \"lepre\": 45641,\n  \"ler\": 5587,\n  \"ler</w>\": 1803,\n  \"lero\": 15067,\n  \"lerosis</w>\": 35455,\n  \"leroy</w>\": 32441,\n  \"lers</w>\": 6247,\n  \"lery</w>\": 38184,\n  \"les\": 4339,\n  \"les</w>\": 840,\n  \"lesbian</w>\": 17419,\n  \"lesbians</w>\": 43182,\n  \"lesh</w>\": 32282,\n  \"lesley</w>\": 25506,\n  \"lesli\": 13649,\n  \"leslie</w>\": 16244,\n  \"lesn\": 39568,\n  \"lesnar</w>\": 42223,\n  \"less\": 3242,\n  \"less</w>\": 1285,\n  \"lesser</w>\": 20369,\n  \"lessly</w>\": 13103,\n  \"lessness</w>\": 24847,\n  \"lesson</w>\": 7714,\n  \"lessons</w>\": 7199,\n  \"lest\": 24372,\n  \"lest</w>\": 6794,\n  \"lester\": 23157,\n  \"lester</w>\": 24023,\n  \"lestwe\": 29726,\n  \"lestweforget</w>\": 30273,\n  \"let\": 1898,\n  \"let</w>\": 1094,\n  \"leta</w>\": 34319,\n  \"lete</w>\": 34078,\n  \"letes</w>\": 6815,\n  \"leth\": 30022,\n  \"leth</w>\": 42462,\n  \"lethal</w>\": 21905,\n  \"lethbridge</w>\": 48390,\n  \"leti</w>\": 34176,\n  \"letics</w>\": 14504,\n  \"letit\": 46423,\n  \"leto</w>\": 32203,\n  \"leton\": 37674,\n  \"leton</w>\": 7462,\n  \"lets\": 10448,\n  \"lets</w>\": 3243,\n  \"letsgo\": 16967,\n  \"letsgo</w>\": 29789,\n  \"letstalk</w>\": 35591,\n  \"lett\": 22428,\n  \"lett</w>\": 9778,\n  \"lette\": 41798,\n  \"lette</w>\": 10301,\n  \"letter\": 15567,\n  \"letter</w>\": 4861,\n  \"lettering</w>\": 26382,\n  \"letterman</w>\": 38447,\n  \"letters</w>\": 9181,\n  \"letting</w>\": 9510,\n  \"letto</w>\": 35449,\n  \"lettu\": 17933,\n  \"lettuce</w>\": 18573,\n  \"leu\": 15691,\n  \"leuke\": 31031,\n  \"leukemia</w>\": 32097,\n  \"leum</w>\": 21571,\n  \"leur</w>\": 45806,\n  \"lev\": 17022,\n  \"lev</w>\": 29950,\n  \"levan\": 42543,\n  \"leve\": 36271,\n  \"level\": 21682,\n  \"level</w>\": 2931,\n  \"leveled</w>\": 48453,\n  \"levels</w>\": 6295,\n  \"leven\": 44792,\n  \"leven</w>\": 34729,\n  \"lever\": 20178,\n  \"lever</w>\": 23094,\n  \"leverage</w>\": 24030,\n  \"leveraging</w>\": 37948,\n  \"levi\": 25630,\n  \"levi</w>\": 19113,\n  \"leviathan</w>\": 41736,\n  \"levin</w>\": 36949,\n  \"levine</w>\": 26594,\n  \"levit\": 22715,\n  \"levy</w>\": 17147,\n  \"lew\": 5063,\n  \"lew</w>\": 25329,\n  \"lewan\": 48349,\n  \"lewd</w>\": 45241,\n  \"lewes</w>\": 40431,\n  \"lewi\": 19589,\n  \"lewis\": 22043,\n  \"lewis</w>\": 6020,\n  \"lewisham\": 37385,\n  \"lewisham</w>\": 47633,\n  \"lewishamilton</w>\": 42960,\n  \"lewood</w>\": 37951,\n  \"lex\": 6586,\n  \"lex</w>\": 9658,\n  \"lexa</w>\": 48259,\n  \"lexi\": 44231,\n  \"lexi</w>\": 24679,\n  \"lexington</w>\": 22308,\n  \"lexus</w>\": 20694,\n  \"ley\": 2565,\n  \"ley</w>\": 1066,\n  \"leye</w>\": 37061,\n  \"leys\": 45609,\n  \"leys</w>\": 14834,\n  \"leyton</w>\": 46573,\n  \"lez</w>\": 26442,\n  \"lf\": 33960,\n  \"lf</w>\": 22078,\n  \"lfc\": 37826,\n  \"lfc</w>\": 8267,\n  \"lfw</w>\": 28514,\n  \"lg\": 4546,\n  \"lg</w>\": 11368,\n  \"lga</w>\": 39348,\n  \"lgb\": 25401,\n  \"lgbt\": 11743,\n  \"lgbt</w>\": 9592,\n  \"lgbti</w>\": 42730,\n  \"lgbtq\": 47625,\n  \"lgbtq</w>\": 14939,\n  \"lgm</w>\": 39389,\n  \"lh\": 27794,\n  \"lh</w>\": 31159,\n  \"lhp</w>\": 45092,\n  \"lhs</w>\": 33170,\n  \"li\": 554,\n  \"li</w>\": 4250,\n  \"lia\": 26118,\n  \"lia</w>\": 6964,\n  \"liability</w>\": 29139,\n  \"liaison</w>\": 39294,\n  \"liam\": 5258,\n  \"liam</w>\": 7167,\n  \"lian</w>\": 18058,\n  \"liance</w>\": 40864,\n  \"liar</w>\": 16334,\n  \"liars</w>\": 23863,\n  \"lias</w>\": 46021,\n  \"lib\": 10249,\n  \"lib</w>\": 13345,\n  \"libby</w>\": 36832,\n  \"libdems</w>\": 40869,\n  \"liber\": 3425,\n  \"liberal\": 48032,\n  \"liberal</w>\": 9985,\n  \"liberalism</w>\": 40018,\n  \"liberals</w>\": 15981,\n  \"liberated</w>\": 38690,\n  \"liberation</w>\": 19507,\n  \"liberia</w>\": 32208,\n  \"libertarian</w>\": 35067,\n  \"liberties</w>\": 48623,\n  \"liberty\": 23397,\n  \"liberty</w>\": 8480,\n  \"libr\": 2856,\n  \"libra</w>\": 43038,\n  \"librarian</w>\": 25148,\n  \"librarians</w>\": 37806,\n  \"libraries</w>\": 14277,\n  \"library\": 25713,\n  \"library</w>\": 3519,\n  \"libre\": 49210,\n  \"libre</w>\": 31681,\n  \"libs</w>\": 26401,\n  \"liby\": 36390,\n  \"libya</w>\": 16417,\n  \"libyan</w>\": 42319,\n  \"lic\": 2508,\n  \"lic</w>\": 3376,\n  \"lice</w>\": 45691,\n  \"licen\": 6706,\n  \"licence</w>\": 20550,\n  \"license</w>\": 10337,\n  \"licensed</w>\": 18752,\n  \"licenses</w>\": 36414,\n  \"licensing</w>\": 24219,\n  \"lich\": 23979,\n  \"lich</w>\": 25875,\n  \"lick\": 29197,\n  \"lick</w>\": 17541,\n  \"licking</w>\": 33013,\n  \"licks</w>\": 42117,\n  \"lics</w>\": 44552,\n  \"lid\": 39369,\n  \"lid</w>\": 17678,\n  \"lidge</w>\": 45558,\n  \"lido</w>\": 35683,\n  \"lids</w>\": 41609,\n  \"lie\": 6570,\n  \"lie</w>\": 2538,\n  \"lieb</w>\": 45387,\n  \"liebe</w>\": 37749,\n  \"lied</w>\": 6486,\n  \"lief</w>\": 38428,\n  \"lien</w>\": 45716,\n  \"lier</w>\": 3626,\n  \"liers</w>\": 19303,\n  \"lies\": 37236,\n  \"lies</w>\": 3205,\n  \"liest</w>\": 14020,\n  \"liet</w>\": 41107,\n  \"lieu\": 20401,\n  \"lieu</w>\": 35313,\n  \"lieutenant</w>\": 22538,\n  \"lif\": 16456,\n  \"life\": 2666,\n  \"life</w>\": 970,\n  \"lifeat\": 27801,\n  \"lifeboat</w>\": 37404,\n  \"lifecycle</w>\": 49171,\n  \"lifein\": 48447,\n  \"lifeis\": 24824,\n  \"lifeisgood</w>\": 46433,\n  \"lifel\": 15025,\n  \"lifeline</w>\": 38438,\n  \"lifelong</w>\": 21358,\n  \"lifeof\": 36061,\n  \"lifesaving</w>\": 48016,\n  \"lifespan</w>\": 49257,\n  \"lifestyle\": 46512,\n  \"lifestyle</w>\": 7037,\n  \"lifestyles</w>\": 48521,\n  \"lifetime\": 48737,\n  \"lifetime</w>\": 9107,\n  \"liff</w>\": 34404,\n  \"liffe</w>\": 38942,\n  \"lift\": 33146,\n  \"lift</w>\": 6779,\n  \"lifted</w>\": 16783,\n  \"lifter</w>\": 38555,\n  \"lifting</w>\": 10857,\n  \"lifts</w>\": 18291,\n  \"lig\": 19915,\n  \"lig</w>\": 38493,\n  \"liga</w>\": 16802,\n  \"ligam\": 31077,\n  \"ligament</w>\": 48705,\n  \"ligan</w>\": 27962,\n  \"ligans</w>\": 42133,\n  \"ligh\": 7510,\n  \"light\": 3885,\n  \"light</w>\": 1395,\n  \"lighted</w>\": 18404,\n  \"lighten</w>\": 32717,\n  \"lightening</w>\": 28170,\n  \"lighter</w>\": 14102,\n  \"lighthouse</w>\": 13717,\n  \"lighting</w>\": 5799,\n  \"lightly</w>\": 26878,\n  \"lightning</w>\": 7756,\n  \"lightroom</w>\": 41454,\n  \"lights</w>\": 3073,\n  \"lightweight</w>\": 16278,\n  \"ligu\": 42920,\n  \"ligue</w>\": 29196,\n  \"lik\": 4831,\n  \"lik</w>\": 18495,\n  \"like\": 9175,\n  \"like</w>\": 789,\n  \"liked</w>\": 7112,\n  \"likefor\": 48444,\n  \"likeli\": 40666,\n  \"likelihood</w>\": 48158,\n  \"likely</w>\": 5256,\n  \"liken\": 36084,\n  \"likes</w>\": 4724,\n  \"liking</w>\": 16810,\n  \"lil\": 6012,\n  \"lil</w>\": 4461,\n  \"lilac</w>\": 33647,\n  \"lili\": 26686,\n  \"lili</w>\": 48411,\n  \"lilies</w>\": 38110,\n  \"lillard</w>\": 47016,\n  \"lille</w>\": 38705,\n  \"lilli\": 40920,\n  \"lillian</w>\": 41563,\n  \"lilly\": 47825,\n  \"lilly</w>\": 21815,\n  \"lily\": 23803,\n  \"lily</w>\": 10647,\n  \"lim\": 2377,\n  \"lim</w>\": 17204,\n  \"lima</w>\": 17589,\n  \"limb\": 27061,\n  \"limb</w>\": 32363,\n  \"limbo</w>\": 46179,\n  \"limbs</w>\": 34886,\n  \"lime\": 17385,\n  \"lime</w>\": 11193,\n  \"limel\": 48658,\n  \"limer\": 16915,\n  \"limerick</w>\": 19501,\n  \"limestone</w>\": 27272,\n  \"limit\": 18933,\n  \"limit</w>\": 9973,\n  \"limitations</w>\": 32730,\n  \"limited\": 49229,\n  \"limited</w>\": 3472,\n  \"limiting</w>\": 35812,\n  \"limitless</w>\": 35833,\n  \"limits</w>\": 11966,\n  \"limo</w>\": 33166,\n  \"limous\": 47287,\n  \"limpopo</w>\": 47175,\n  \"lin\": 1254,\n  \"lin</w>\": 2424,\n  \"lina</w>\": 26110,\n  \"lincol\": 6239,\n  \"lincoln\": 16957,\n  \"lincoln</w>\": 7454,\n  \"lincolnshire</w>\": 29014,\n  \"lind\": 6492,\n  \"linda\": 45410,\n  \"linda</w>\": 10760,\n  \"linden\": 44076,\n  \"linden</w>\": 34832,\n  \"lindo</w>\": 38467,\n  \"lindsay\": 29846,\n  \"lindsay</w>\": 16858,\n  \"lindsey\": 29475,\n  \"lindsey</w>\": 18128,\n  \"line\": 3674,\n  \"line</w>\": 1148,\n  \"linear</w>\": 19816,\n  \"linebacker</w>\": 29848,\n  \"lined</w>\": 11842,\n  \"lineman</w>\": 31501,\n  \"linen</w>\": 20032,\n  \"liner</w>\": 11618,\n  \"liners</w>\": 24463,\n  \"lines</w>\": 3418,\n  \"liness</w>\": 28633,\n  \"lineup</w>\": 7316,\n  \"lineups</w>\": 33589,\n  \"ling\": 4851,\n  \"ling</w>\": 1358,\n  \"linger</w>\": 29593,\n  \"lingerie</w>\": 18473,\n  \"lingering</w>\": 46494,\n  \"lings</w>\": 11390,\n  \"lington\": 27673,\n  \"lington</w>\": 9002,\n  \"lingu\": 34449,\n  \"lingui\": 29942,\n  \"linguistic</w>\": 46847,\n  \"linguistics</w>\": 48651,\n  \"lining</w>\": 11589,\n  \"link\": 18433,\n  \"link</w>\": 2468,\n  \"linke\": 15088,\n  \"linked</w>\": 11059,\n  \"linkedin</w>\": 16302,\n  \"linkin\": 40287,\n  \"linkin</w>\": 49291,\n  \"linking</w>\": 23296,\n  \"links</w>\": 8113,\n  \"linn</w>\": 37431,\n  \"lino\": 41189,\n  \"lino</w>\": 34995,\n  \"lins</w>\": 6567,\n  \"linson</w>\": 15401,\n  \"linton</w>\": 36479,\n  \"linus</w>\": 49303,\n  \"linux</w>\": 14061,\n  \"lio</w>\": 19395,\n  \"lion\": 8872,\n  \"lion</w>\": 5567,\n  \"lionel</w>\": 19441,\n  \"lions</w>\": 7093,\n  \"lip\": 8630,\n  \"lip</w>\": 8546,\n  \"lipo\": 38795,\n  \"lipp\": 38074,\n  \"lips</w>\": 8847,\n  \"lipse</w>\": 10351,\n  \"lipstick</w>\": 15618,\n  \"liqu\": 6310,\n  \"lique\": 32680,\n  \"liqueur</w>\": 43612,\n  \"liqui\": 33817,\n  \"liquid\": 18366,\n  \"liquid</w>\": 10158,\n  \"liquidity</w>\": 42812,\n  \"liquor</w>\": 17828,\n  \"lis\": 7297,\n  \"lis</w>\": 12749,\n  \"lisa\": 25236,\n  \"lisa</w>\": 7424,\n  \"lisam\": 43072,\n  \"lisboa</w>\": 40052,\n  \"lisbon</w>\": 17708,\n  \"lish\": 12658,\n  \"lish</w>\": 2354,\n  \"lished</w>\": 22620,\n  \"lisle</w>\": 21529,\n  \"lism</w>\": 34390,\n  \"liss\": 45489,\n  \"liss</w>\": 35433,\n  \"lisse</w>\": 49309,\n  \"list\": 1734,\n  \"list</w>\": 1998,\n  \"lista</w>\": 37812,\n  \"listed</w>\": 6457,\n  \"listen\": 17454,\n  \"listen</w>\": 2672,\n  \"listened</w>\": 15347,\n  \"listener</w>\": 34819,\n  \"listeners</w>\": 26901,\n  \"listening</w>\": 3656,\n  \"listens</w>\": 25912,\n  \"lister</w>\": 45109,\n  \"listing</w>\": 8145,\n  \"listings</w>\": 21987,\n  \"liston</w>\": 48041,\n  \"lists</w>\": 12281,\n  \"lit\": 2213,\n  \"lit</w>\": 4350,\n  \"lita</w>\": 30100,\n  \"lite\": 29273,\n  \"lite</w>\": 13694,\n  \"litecoin</w>\": 39063,\n  \"liter\": 3085,\n  \"liter</w>\": 34904,\n  \"literacy</w>\": 12841,\n  \"literal</w>\": 24269,\n  \"literally</w>\": 4719,\n  \"literary</w>\": 13586,\n  \"literature</w>\": 11072,\n  \"litfest</w>\": 40369,\n  \"lith\": 37005,\n  \"lithium</w>\": 22794,\n  \"litho\": 31088,\n  \"lithograph</w>\": 49022,\n  \"lithu\": 21045,\n  \"lithuania</w>\": 27068,\n  \"liti\": 24292,\n  \"litigation</w>\": 31769,\n  \"lito</w>\": 47381,\n  \"litre</w>\": 25786,\n  \"litres</w>\": 39919,\n  \"litt\": 1216,\n  \"litt</w>\": 47583,\n  \"litter\": 45431,\n  \"litter</w>\": 17118,\n  \"litters</w>\": 45300,\n  \"little\": 7024,\n  \"little</w>\": 1274,\n  \"littlemix</w>\": 29731,\n  \"littlest</w>\": 48969,\n  \"litur\": 36830,\n  \"litz</w>\": 30357,\n  \"liu</w>\": 20466,\n  \"liv\": 13895,\n  \"liv</w>\": 19901,\n  \"livan</w>\": 12785,\n  \"live\": 3215,\n  \"live</w>\": 1064,\n  \"lived</w>\": 8867,\n  \"livel\": 17973,\n  \"liveli\": 26566,\n  \"livelihood</w>\": 46497,\n  \"livelihoods</w>\": 47716,\n  \"lively</w>\": 19663,\n  \"liveme</w>\": 35396,\n  \"livemusic</w>\": 15688,\n  \"liven\": 41057,\n  \"liveon\": 22815,\n  \"livepd\": 38742,\n  \"livepd</w>\": 31899,\n  \"liver\": 4755,\n  \"liver</w>\": 12639,\n  \"liverpool\": 29778,\n  \"liverpool</w>\": 5366,\n  \"livery</w>\": 23248,\n  \"lives</w>\": 3247,\n  \"livesmatter</w>\": 20348,\n  \"livestock</w>\": 22079,\n  \"livestream</w>\": 16844,\n  \"livetweet</w>\": 38546,\n  \"livin</w>\": 28061,\n  \"living\": 10965,\n  \"living</w>\": 2815,\n  \"livingston</w>\": 30551,\n  \"lix</w>\": 45068,\n  \"liz\": 8632,\n  \"liz</w>\": 12242,\n  \"liza</w>\": 28787,\n  \"lizard</w>\": 17221,\n  \"lizards</w>\": 41991,\n  \"lizasober\": 44487,\n  \"lizasoberano</w>\": 45076,\n  \"lizz\": 34430,\n  \"lizzie</w>\": 29530,\n  \"lizzy</w>\": 32306,\n  \"lj\": 34211,\n  \"lj</w>\": 32273,\n  \"lju\": 44562,\n  \"lk\": 39110,\n  \"lk</w>\": 26596,\n  \"lka</w>\": 21881,\n  \"ll\": 1657,\n  \"ll</w>\": 865,\n  \"lla</w>\": 15419,\n  \"llama</w>\": 36679,\n  \"llan\": 17281,\n  \"llan</w>\": 38728,\n  \"lland\": 31150,\n  \"llc</w>\": 17161,\n  \"lle\": 26550,\n  \"lle</w>\": 29732,\n  \"llen\": 41197,\n  \"ller</w>\": 7722,\n  \"llers</w>\": 26426,\n  \"lli\": 47015,\n  \"lli</w>\": 13368,\n  \"llis</w>\": 25518,\n  \"lll</w>\": 27177,\n  \"llll\": 34874,\n  \"llll</w>\": 43485,\n  \"llo</w>\": 19293,\n  \"lloy\": 10092,\n  \"lloyd\": 33339,\n  \"lloyd</w>\": 12400,\n  \"llp</w>\": 28042,\n  \"lls</w>\": 40535,\n  \"lly</w>\": 26379,\n  \"lm\": 6981,\n  \"lm</w>\": 15282,\n  \"lma\": 4493,\n  \"lmao</w>\": 5121,\n  \"lmaoo</w>\": 32623,\n  \"lmaooo</w>\": 33362,\n  \"lmaoooo</w>\": 45232,\n  \"lmfa\": 8928,\n  \"lmfao</w>\": 11068,\n  \"lmfaooo</w>\": 47658,\n  \"lmp</w>\": 43575,\n  \"lms</w>\": 30381,\n  \"ln\": 31644,\n  \"ln</w>\": 18654,\n  \"lng</w>\": 22339,\n  \"lnp</w>\": 39679,\n  \"lo\": 549,\n  \"lo</w>\": 2982,\n  \"loa</w>\": 39678,\n  \"load\": 4515,\n  \"load</w>\": 2834,\n  \"loaded</w>\": 6756,\n  \"loader</w>\": 28492,\n  \"loading</w>\": 9975,\n  \"loads</w>\": 8691,\n  \"loaf\": 26467,\n  \"loaf</w>\": 18273,\n  \"loan\": 28431,\n  \"loan</w>\": 8176,\n  \"loans</w>\": 14206,\n  \"lob\": 11197,\n  \"lob</w>\": 46606,\n  \"lobal</w>\": 34574,\n  \"lobb\": 27698,\n  \"lobby</w>\": 12449,\n  \"lobbying</w>\": 36047,\n  \"lobe</w>\": 46325,\n  \"lobes</w>\": 24148,\n  \"lobo</w>\": 39323,\n  \"lobos</w>\": 36586,\n  \"lobster</w>\": 13793,\n  \"loc\": 1378,\n  \"loc</w>\": 25826,\n  \"local\": 9202,\n  \"local</w>\": 2029,\n  \"localized</w>\": 49399,\n  \"locally</w>\": 15603,\n  \"locals</w>\": 15041,\n  \"locate</w>\": 20490,\n  \"located</w>\": 5677,\n  \"location</w>\": 4372,\n  \"locations</w>\": 9580,\n  \"loch\": 20188,\n  \"loch</w>\": 14101,\n  \"lock\": 7201,\n  \"lock</w>\": 4381,\n  \"lockdown</w>\": 35636,\n  \"locke</w>\": 29698,\n  \"locked</w>\": 8371,\n  \"locker</w>\": 14053,\n  \"lockhart</w>\": 48642,\n  \"lockheed</w>\": 36637,\n  \"locking</w>\": 19978,\n  \"locks</w>\": 13212,\n  \"lockscreen</w>\": 42439,\n  \"loco</w>\": 25555,\n  \"locom\": 22798,\n  \"locomo\": 46147,\n  \"locomotive</w>\": 30439,\n  \"locu\": 33635,\n  \"locust</w>\": 46237,\n  \"lod\": 45650,\n  \"lodge</w>\": 10504,\n  \"loe\": 30113,\n  \"loe</w>\": 25484,\n  \"loeb</w>\": 49334,\n  \"lof\": 15011,\n  \"loff</w>\": 31008,\n  \"loft\": 35707,\n  \"loft</w>\": 20049,\n  \"loftus</w>\": 46689,\n  \"log\": 3239,\n  \"log</w>\": 7383,\n  \"logan\": 20655,\n  \"logan</w>\": 10569,\n  \"logans</w>\": 40752,\n  \"logg</w>\": 43002,\n  \"logged</w>\": 31457,\n  \"logger</w>\": 39089,\n  \"logging</w>\": 24444,\n  \"logi\": 3177,\n  \"logia</w>\": 48031,\n  \"logic</w>\": 10670,\n  \"logical</w>\": 4791,\n  \"logically</w>\": 24782,\n  \"logie</w>\": 33445,\n  \"logies</w>\": 7378,\n  \"login</w>\": 31121,\n  \"logist</w>\": 7407,\n  \"logistics</w>\": 14755,\n  \"logists</w>\": 12233,\n  \"logne</w>\": 19911,\n  \"logo\": 31480,\n  \"logo</w>\": 5750,\n  \"logos</w>\": 24879,\n  \"logs</w>\": 22745,\n  \"logue</w>\": 27785,\n  \"logy\": 22721,\n  \"logy</w>\": 1659,\n  \"loh\": 49129,\n  \"loh</w>\": 37983,\n  \"loi</w>\": 35128,\n  \"loid</w>\": 31408,\n  \"loin</w>\": 21760,\n  \"loire</w>\": 46040,\n  \"lois</w>\": 27040,\n  \"lok\": 19908,\n  \"lok</w>\": 23575,\n  \"loki</w>\": 24435,\n  \"lol\": 10721,\n  \"lol</w>\": 1824,\n  \"lola</w>\": 19065,\n  \"lolita</w>\": 42615,\n  \"lolla\": 45483,\n  \"lolli\": 27906,\n  \"lollipop</w>\": 34605,\n  \"lolly</w>\": 48264,\n  \"lolo\": 16895,\n  \"lolo</w>\": 37481,\n  \"lolol</w>\": 25280,\n  \"lololol</w>\": 34738,\n  \"lolz</w>\": 35260,\n  \"lom\": 9279,\n  \"loma</w>\": 42889,\n  \"lombar\": 25493,\n  \"lombard</w>\": 46461,\n  \"lombardi</w>\": 44346,\n  \"lomond</w>\": 48941,\n  \"lon\": 1235,\n  \"lon</w>\": 6507,\n  \"london\": 6835,\n  \"london</w>\": 1789,\n  \"londonmarathon</w>\": 35018,\n  \"lone\": 22220,\n  \"lone</w>\": 13576,\n  \"lonel\": 28872,\n  \"loneliness</w>\": 30310,\n  \"lonely\": 34509,\n  \"lonely</w>\": 12368,\n  \"lonelyplanet</w>\": 44984,\n  \"long\": 4792,\n  \"long</w>\": 1538,\n  \"longe\": 25793,\n  \"longer</w>\": 5349,\n  \"longest</w>\": 10731,\n  \"longevity</w>\": 35354,\n  \"longh\": 20286,\n  \"longhorn</w>\": 41047,\n  \"longhorns</w>\": 38295,\n  \"longing</w>\": 38482,\n  \"longlive\": 47840,\n  \"longs</w>\": 43618,\n  \"longtime</w>\": 19685,\n  \"loo\": 731,\n  \"loo</w>\": 11804,\n  \"look\": 8874,\n  \"look</w>\": 1012,\n  \"lookalike</w>\": 38307,\n  \"lookbook</w>\": 39184,\n  \"looked</w>\": 4913,\n  \"lookin</w>\": 11254,\n  \"looking\": 36898,\n  \"looking</w>\": 1312,\n  \"lookout</w>\": 18330,\n  \"looks</w>\": 1606,\n  \"lool</w>\": 33125,\n  \"loom\": 37440,\n  \"loom</w>\": 17199,\n  \"looming</w>\": 35384,\n  \"looms</w>\": 30550,\n  \"loon</w>\": 28222,\n  \"loona</w>\": 48137,\n  \"looney</w>\": 45315,\n  \"looo\": 20902,\n  \"loool</w>\": 36016,\n  \"looool</w>\": 47038,\n  \"looooo\": 31484,\n  \"loop\": 19606,\n  \"loop</w>\": 10408,\n  \"loops</w>\": 21625,\n  \"loos</w>\": 45723,\n  \"loose\": 43815,\n  \"loose</w>\": 9786,\n  \"loot</w>\": 21518,\n  \"lop\": 36734,\n  \"lop</w>\": 17066,\n  \"lopes</w>\": 49269,\n  \"lopez</w>\": 12982,\n  \"lor\": 2179,\n  \"lor</w>\": 11335,\n  \"lord\": 18896,\n  \"lord</w>\": 3486,\n  \"lorde</w>\": 35483,\n  \"lords</w>\": 14969,\n  \"lore\": 12880,\n  \"lore</w>\": 27218,\n  \"loren\": 13602,\n  \"loren</w>\": 33398,\n  \"lorenzo</w>\": 21342,\n  \"lores</w>\": 34510,\n  \"loretta</w>\": 40863,\n  \"lori\": 20164,\n  \"lori</w>\": 23095,\n  \"lorna</w>\": 46316,\n  \"lorraine</w>\": 27602,\n  \"lorry</w>\": 31354,\n  \"los\": 32217,\n  \"los</w>\": 3087,\n  \"losange\": 14037,\n  \"losangeles</w>\": 14638,\n  \"lose\": 43318,\n  \"lose</w>\": 5354,\n  \"loser</w>\": 18168,\n  \"losers</w>\": 23201,\n  \"loses</w>\": 14263,\n  \"losing</w>\": 7918,\n  \"loss\": 34761,\n  \"loss</w>\": 4327,\n  \"losses</w>\": 16909,\n  \"lost\": 14258,\n  \"lost</w>\": 2624,\n  \"lostdog</w>\": 48482,\n  \"lot\": 5132,\n  \"lot</w>\": 1954,\n  \"loth</w>\": 43625,\n  \"lothian</w>\": 31360,\n  \"lothing</w>\": 42058,\n  \"lotion</w>\": 25260,\n  \"lotr</w>\": 34165,\n  \"lots</w>\": 2958,\n  \"lott</w>\": 42854,\n  \"lotta</w>\": 29125,\n  \"lotte\": 16535,\n  \"lotte</w>\": 7274,\n  \"lottery</w>\": 16975,\n  \"lottie</w>\": 48517,\n  \"lotto</w>\": 28265,\n  \"lotus</w>\": 13824,\n  \"lou\": 2207,\n  \"lou</w>\": 9745,\n  \"loubout\": 38369,\n  \"loud\": 22884,\n  \"loud</w>\": 7464,\n  \"louder</w>\": 25904,\n  \"loudest</w>\": 49214,\n  \"loudly</w>\": 39256,\n  \"lough\": 21927,\n  \"lough</w>\": 28045,\n  \"loughborough</w>\": 49153,\n  \"loui\": 42173,\n  \"louie</w>\": 25790,\n  \"louis\": 8916,\n  \"louis</w>\": 4459,\n  \"louisa</w>\": 40011,\n  \"louise\": 32275,\n  \"louise</w>\": 13076,\n  \"louisi\": 12187,\n  \"louisiana</w>\": 12946,\n  \"louisville</w>\": 13860,\n  \"louisvuitton</w>\": 44911,\n  \"loun\": 6466,\n  \"lounge</w>\": 7141,\n  \"lounging</w>\": 45430,\n  \"lour\": 29383,\n  \"lourdes</w>\": 45071,\n  \"louvre</w>\": 36995,\n  \"lov\": 8923,\n  \"lov</w>\": 21229,\n  \"lova</w>\": 37394,\n  \"lovable</w>\": 38565,\n  \"lovato</w>\": 18960,\n  \"love\": 2618,\n  \"love</w>\": 793,\n  \"lovecraft</w>\": 42405,\n  \"loved</w>\": 3249,\n  \"lovefl</w>\": 38884,\n  \"loveher</w>\": 38306,\n  \"lovehim</w>\": 45733,\n  \"loveis\": 30931,\n  \"loveisland</w>\": 30970,\n  \"loveislove</w>\": 43603,\n  \"loveit</w>\": 24764,\n  \"lovel\": 8999,\n  \"lovelies</w>\": 31412,\n  \"lovelondon</w>\": 46493,\n  \"lovely\": 33250,\n  \"lovely</w>\": 2165,\n  \"lovemy\": 20041,\n  \"lovemyjob</w>\": 40130,\n  \"loven\": 33754,\n  \"lover\": 28508,\n  \"lover</w>\": 7168,\n  \"lovers\": 48416,\n  \"lovers</w>\": 5973,\n  \"loves\": 37773,\n  \"loves</w>\": 3925,\n  \"lovethe\": 33040,\n  \"lovethem</w>\": 48298,\n  \"lovett</w>\": 47095,\n  \"lovewins</w>\": 47687,\n  \"loveyou\": 39226,\n  \"loveyou</w>\": 25964,\n  \"loveyour\": 26462,\n  \"lovin\": 33442,\n  \"lovin</w>\": 16354,\n  \"loving\": 29568,\n  \"loving</w>\": 3721,\n  \"lovingly</w>\": 44100,\n  \"low\": 1049,\n  \"low</w>\": 1042,\n  \"loway</w>\": 16104,\n  \"lowe</w>\": 17910,\n  \"lowed</w>\": 22733,\n  \"lowell</w>\": 24458,\n  \"lower\": 32578,\n  \"lower</w>\": 4909,\n  \"lowered</w>\": 34968,\n  \"lowering</w>\": 35261,\n  \"lowers</w>\": 36398,\n  \"lowes</w>\": 38515,\n  \"lowest</w>\": 12098,\n  \"lowing</w>\": 8283,\n  \"lowkey</w>\": 29481,\n  \"lowry</w>\": 27444,\n  \"lows</w>\": 4406,\n  \"lox</w>\": 41725,\n  \"loy\": 4519,\n  \"loy</w>\": 23929,\n  \"loyal</w>\": 13032,\n  \"loyalty</w>\": 14686,\n  \"loyd</w>\": 44212,\n  \"loyed</w>\": 29279,\n  \"loyment</w>\": 18307,\n  \"loyola</w>\": 32569,\n  \"lp\": 22282,\n  \"lp</w>\": 6392,\n  \"lpc</w>\": 44092,\n  \"lpg</w>\": 47905,\n  \"lpga</w>\": 34295,\n  \"lps</w>\": 32094,\n  \"lr\": 20572,\n  \"lr</w>\": 7041,\n  \"lrt</w>\": 32996,\n  \"ls\": 19051,\n  \"ls</w>\": 1268,\n  \"lsd</w>\": 43766,\n  \"lse\": 46127,\n  \"lse</w>\": 43886,\n  \"lsu\": 35428,\n  \"lsu</w>\": 15672,\n  \"lt\": 13642,\n  \"lt</w>\": 3333,\n  \"ltc</w>\": 27664,\n  \"ltd</w>\": 6802,\n  \"lte</w>\": 25202,\n  \"lton</w>\": 14237,\n  \"lu\": 664,\n  \"lu</w>\": 9657,\n  \"lub\": 22469,\n  \"lub</w>\": 11836,\n  \"lubbock</w>\": 37660,\n  \"lubric\": 40963,\n  \"luc\": 7013,\n  \"luc</w>\": 28014,\n  \"luca</w>\": 21053,\n  \"lucas\": 23425,\n  \"lucas</w>\": 10225,\n  \"lucci</w>\": 45849,\n  \"luce</w>\": 46217,\n  \"lucent</w>\": 41552,\n  \"lucer\": 36042,\n  \"luch\": 36646,\n  \"lucha</w>\": 38449,\n  \"luci\": 8787,\n  \"lucia</w>\": 22290,\n  \"luciano</w>\": 46365,\n  \"lucid</w>\": 44540,\n  \"lucie</w>\": 39461,\n  \"lucifer\": 46224,\n  \"lucifer</w>\": 27687,\n  \"lucille</w>\": 47454,\n  \"lucin\": 27523,\n  \"luck\": 9647,\n  \"luck</w>\": 2820,\n  \"luckiest</w>\": 42469,\n  \"luckily</w>\": 20100,\n  \"lucknow</w>\": 29407,\n  \"lucky\": 20495,\n  \"lucky</w>\": 4133,\n  \"lucrative</w>\": 41485,\n  \"lucy\": 17262,\n  \"lucy</w>\": 10120,\n  \"lud\": 14288,\n  \"lude</w>\": 28755,\n  \"ludo\": 40141,\n  \"ludwig</w>\": 30633,\n  \"lue</w>\": 45199,\n  \"luf\": 25264,\n  \"lufc</w>\": 17818,\n  \"luffy</w>\": 39047,\n  \"lufthan\": 37769,\n  \"lufthansa</w>\": 39145,\n  \"lug</w>\": 45521,\n  \"lugg\": 19673,\n  \"luggage</w>\": 20138,\n  \"luhan</w>\": 20975,\n  \"luigi</w>\": 28444,\n  \"luis\": 25231,\n  \"luis</w>\": 11339,\n  \"luiz</w>\": 39633,\n  \"lujah</w>\": 31639,\n  \"luk</w>\": 21652,\n  \"luka</w>\": 34878,\n  \"lukaku</w>\": 37177,\n  \"lukas</w>\": 37941,\n  \"luke\": 11970,\n  \"luke</w>\": 5652,\n  \"lul\": 20861,\n  \"lulla\": 37019,\n  \"lullaby</w>\": 41676,\n  \"lulu\": 32052,\n  \"lulu</w>\": 26935,\n  \"lum\": 18112,\n  \"lum</w>\": 5997,\n  \"lumb\": 36231,\n  \"lumber\": 27421,\n  \"lumber</w>\": 34692,\n  \"lumi\": 41437,\n  \"lumia</w>\": 31912,\n  \"lumin\": 15867,\n  \"luminous</w>\": 37913,\n  \"lump</w>\": 38704,\n  \"lumpur</w>\": 34411,\n  \"lun\": 3221,\n  \"lun</w>\": 49390,\n  \"luna</w>\": 14425,\n  \"lunar</w>\": 16043,\n  \"lunatic</w>\": 45874,\n  \"lunch\": 10954,\n  \"lunch</w>\": 2772,\n  \"luncheon</w>\": 15104,\n  \"lunches</w>\": 29705,\n  \"lunchtime</w>\": 14330,\n  \"lund\": 30975,\n  \"lund</w>\": 20181,\n  \"lunes</w>\": 35648,\n  \"lung\": 38479,\n  \"lung</w>\": 16271,\n  \"lungs</w>\": 27366,\n  \"lup</w>\": 27413,\n  \"lupita</w>\": 49352,\n  \"lupus</w>\": 36017,\n  \"lur\": 14439,\n  \"lure</w>\": 31376,\n  \"lures</w>\": 46747,\n  \"lurking</w>\": 29941,\n  \"lus</w>\": 7158,\n  \"lusci\": 38004,\n  \"luscious</w>\": 39935,\n  \"lush\": 40382,\n  \"lush</w>\": 16263,\n  \"lust\": 42071,\n  \"lust</w>\": 12662,\n  \"lustre</w>\": 46673,\n  \"luther\": 21848,\n  \"luther</w>\": 17208,\n  \"lutheran</w>\": 27341,\n  \"luton</w>\": 28288,\n  \"luv\": 24726,\n  \"luv</w>\": 8502,\n  \"lux\": 3439,\n  \"lux</w>\": 16704,\n  \"luxe</w>\": 26373,\n  \"luxemb\": 21314,\n  \"luxembour\": 22712,\n  \"luxembourg</w>\": 23949,\n  \"luxu\": 16112,\n  \"luxurious</w>\": 17292,\n  \"luxury\": 12083,\n  \"luxury</w>\": 5247,\n  \"luxurytravel</w>\": 29010,\n  \"luz</w>\": 41008,\n  \"lv\": 10862,\n  \"lv</w>\": 11184,\n  \"lvl</w>\": 31256,\n  \"lw\": 40515,\n  \"lw</w>\": 35115,\n  \"lx</w>\": 30789,\n  \"ly\": 1251,\n  \"ly</w>\": 597,\n  \"lydia</w>\": 24316,\n  \"lyf</w>\": 43688,\n  \"lyfe</w>\": 30787,\n  \"lyft</w>\": 32944,\n  \"lying</w>\": 7175,\n  \"lyk</w>\": 46376,\n  \"lyle</w>\": 36828,\n  \"lym\": 20087,\n  \"lyme</w>\": 31167,\n  \"lymph\": 30073,\n  \"lymphoma</w>\": 37648,\n  \"lyn\": 3957,\n  \"lyn</w>\": 5054,\n  \"lynch\": 31586,\n  \"lynch</w>\": 13560,\n  \"lynd\": 33416,\n  \"lynda</w>\": 42959,\n  \"lyndon</w>\": 48518,\n  \"lynn\": 25303,\n  \"lynn</w>\": 10667,\n  \"lynne</w>\": 26900,\n  \"lynx</w>\": 28941,\n  \"lyon</w>\": 17176,\n  \"lyons</w>\": 29453,\n  \"lyric\": 24366,\n  \"lyric</w>\": 21291,\n  \"lyrical</w>\": 33358,\n  \"lyricist</w>\": 49013,\n  \"lyrics</w>\": 9551,\n  \"lyrix</w>\": 46814,\n  \"lys</w>\": 45054,\n  \"lyte</w>\": 40059,\n  \"lywood</w>\": 4012,\n  \"lz</w>\": 30818,\n  \"lÃ©\": 39641,\n  \"m\": 76,\n  \"m</w>\": 332,\n  \"ma\": 577,\n  \"ma</w>\": 1226,\n  \"maa\": 42774,\n  \"maa</w>\": 21555,\n  \"maan</w>\": 33668,\n  \"maar</w>\": 48927,\n  \"maas\": 43332,\n  \"mab</w>\": 35639,\n  \"mabel</w>\": 47319,\n  \"mable</w>\": 23001,\n  \"mably</w>\": 40082,\n  \"mabu\": 44682,\n  \"mac\": 1961,\n  \"mac</w>\": 4945,\n  \"macar\": 21558,\n  \"macaroni</w>\": 41824,\n  \"macarthur</w>\": 36785,\n  \"macau\": 43984,\n  \"macau</w>\": 33370,\n  \"macbeth</w>\": 36321,\n  \"macbook</w>\": 20617,\n  \"macdonald</w>\": 20315,\n  \"mace</w>\": 44869,\n  \"maced\": 21102,\n  \"macedonia</w>\": 27071,\n  \"macfar\": 45374,\n  \"macfarlane</w>\": 48825,\n  \"mach\": 2637,\n  \"mach</w>\": 35091,\n  \"machado</w>\": 42318,\n  \"mache\": 43220,\n  \"macher</w>\": 29330,\n  \"machi\": 41783,\n  \"machin\": 17972,\n  \"machine\": 11539,\n  \"machine</w>\": 4169,\n  \"machinelearning</w>\": 13621,\n  \"machinery</w>\": 21858,\n  \"machines</w>\": 11108,\n  \"machining</w>\": 45562,\n  \"macho</w>\": 43977,\n  \"macht</w>\": 45225,\n  \"macin\": 36533,\n  \"mack\": 8590,\n  \"mack</w>\": 12145,\n  \"mackay</w>\": 32497,\n  \"macken\": 48057,\n  \"mackenzie</w>\": 22351,\n  \"mackerel</w>\": 35002,\n  \"mackin\": 26010,\n  \"macklemore</w>\": 41758,\n  \"macle\": 33843,\n  \"maclean</w>\": 47137,\n  \"macleod</w>\": 43684,\n  \"macmillan\": 36364,\n  \"macmillan</w>\": 35191,\n  \"macon</w>\": 35818,\n  \"macos</w>\": 45469,\n  \"macqu\": 38365,\n  \"macquarie</w>\": 40858,\n  \"macro\": 20891,\n  \"macro</w>\": 16626,\n  \"macron</w>\": 24859,\n  \"macs</w>\": 46548,\n  \"macy</w>\": 17113,\n  \"macys</w>\": 47652,\n  \"mad\": 2740,\n  \"mad</w>\": 3843,\n  \"mada</w>\": 37799,\n  \"madagas\": 24758,\n  \"madagascar</w>\": 25744,\n  \"madam\": 33634,\n  \"madam</w>\": 27538,\n  \"madame</w>\": 23507,\n  \"madd\": 31717,\n  \"madden</w>\": 19093,\n  \"maddie\": 39959,\n  \"maddie</w>\": 18875,\n  \"maddow</w>\": 32644,\n  \"maddy</w>\": 31734,\n  \"made\": 5388,\n  \"made</w>\": 1105,\n  \"madein\": 13670,\n  \"madeira</w>\": 33810,\n  \"madel\": 34532,\n  \"madele\": 29831,\n  \"madeleine</w>\": 33264,\n  \"madeline</w>\": 33905,\n  \"madewith\": 28627,\n  \"madewithunity</w>\": 43190,\n  \"madhu\": 23000,\n  \"madhuri\": 38346,\n  \"madhuridixit</w>\": 43889,\n  \"madhya</w>\": 48302,\n  \"madi\": 6527,\n  \"madi</w>\": 27282,\n  \"madison\": 24798,\n  \"madison</w>\": 8791,\n  \"madmen</w>\": 45452,\n  \"madness</w>\": 8755,\n  \"madon\": 44852,\n  \"madonna</w>\": 14137,\n  \"madra\": 27416,\n  \"madras</w>\": 42046,\n  \"madre</w>\": 42130,\n  \"madri\": 5529,\n  \"madrid</w>\": 5909,\n  \"mads</w>\": 41201,\n  \"madu\": 34913,\n  \"madurai</w>\": 49159,\n  \"maduro</w>\": 32912,\n  \"mae\": 16898,\n  \"mae</w>\": 17339,\n  \"maer\": 47088,\n  \"maestro</w>\": 24140,\n  \"mafi\": 47164,\n  \"mafia</w>\": 14890,\n  \"mag\": 1191,\n  \"mag</w>\": 4508,\n  \"maga</w>\": 8694,\n  \"magaz\": 2974,\n  \"magazine</w>\": 3113,\n  \"magazines</w>\": 22253,\n  \"magdal\": 29673,\n  \"mage\": 46568,\n  \"mage</w>\": 10923,\n  \"magee</w>\": 43872,\n  \"magenta</w>\": 38091,\n  \"magento</w>\": 42442,\n  \"mages</w>\": 31059,\n  \"maggi\": 29611,\n  \"maggie\": 41443,\n  \"maggie</w>\": 14524,\n  \"maggio</w>\": 49087,\n  \"magh\": 45555,\n  \"magi\": 19270,\n  \"magic\": 13061,\n  \"magic</w>\": 3778,\n  \"magical\": 36408,\n  \"magical</w>\": 7823,\n  \"magician</w>\": 26368,\n  \"magin\": 42678,\n  \"maging</w>\": 41310,\n  \"magn\": 10290,\n  \"magna</w>\": 34076,\n  \"magne\": 9921,\n  \"magnesium</w>\": 36379,\n  \"magnet</w>\": 18240,\n  \"magnetic</w>\": 13838,\n  \"magnets</w>\": 33030,\n  \"magni\": 24297,\n  \"magnific\": 9725,\n  \"magnificent</w>\": 10724,\n  \"magnitude</w>\": 22955,\n  \"magno\": 21184,\n  \"magnolia</w>\": 27123,\n  \"magnu\": 45198,\n  \"magnum</w>\": 23496,\n  \"magnus</w>\": 26275,\n  \"magpie</w>\": 45973,\n  \"mags</w>\": 31021,\n  \"maguire</w>\": 26470,\n  \"mah\": 7206,\n  \"mah</w>\": 10801,\n  \"maha\": 12237,\n  \"maha</w>\": 33983,\n  \"mahal</w>\": 22301,\n  \"mahan\": 45191,\n  \"mahar\": 11635,\n  \"maharaj</w>\": 38488,\n  \"maharashtra</w>\": 19328,\n  \"mahat\": 32434,\n  \"mahatma</w>\": 40530,\n  \"mahe\": 15756,\n  \"maher</w>\": 29826,\n  \"mahesh\": 33448,\n  \"mahesh</w>\": 22095,\n  \"mahi\": 32529,\n  \"mahi</w>\": 38659,\n  \"mahin\": 24113,\n  \"mahindra</w>\": 31285,\n  \"mahmoud</w>\": 41361,\n  \"mahog\": 30804,\n  \"mahogany</w>\": 33084,\n  \"mahon\": 45864,\n  \"mahon</w>\": 20371,\n  \"mahone</w>\": 26634,\n  \"mai\": 7138,\n  \"mai</w>\": 14595,\n  \"maia</w>\": 46585,\n  \"maid\": 23148,\n  \"maid</w>\": 10226,\n  \"maidan</w>\": 37346,\n  \"maiden\": 37011,\n  \"maiden</w>\": 13809,\n  \"maids</w>\": 27305,\n  \"maidstone</w>\": 44395,\n  \"mail\": 10478,\n  \"mail</w>\": 2614,\n  \"mailbox</w>\": 31482,\n  \"mailed</w>\": 42314,\n  \"mailing</w>\": 26680,\n  \"mailonline</w>\": 26021,\n  \"mails</w>\": 45213,\n  \"main\": 3904,\n  \"main</w>\": 2623,\n  \"maine\": 18639,\n  \"maine</w>\": 7836,\n  \"mained\": 15609,\n  \"mainedcm</w>\": 15845,\n  \"mainland</w>\": 27629,\n  \"mainly</w>\": 15280,\n  \"mains</w>\": 33656,\n  \"mainst\": 42102,\n  \"mainstream</w>\": 18034,\n  \"maintain</w>\": 12954,\n  \"maintained</w>\": 26665,\n  \"maintaining</w>\": 21964,\n  \"maintains</w>\": 38335,\n  \"mainten\": 9399,\n  \"maintenance</w>\": 9610,\n  \"mais</w>\": 28153,\n  \"maisie</w>\": 47355,\n  \"maison\": 37065,\n  \"maison</w>\": 27626,\n  \"mait\": 26387,\n  \"maize</w>\": 35386,\n  \"maj\": 2948,\n  \"maj</w>\": 28723,\n  \"maja</w>\": 47498,\n  \"maje\": 9852,\n  \"majestic</w>\": 15335,\n  \"majesty</w>\": 21188,\n  \"major\": 8008,\n  \"major</w>\": 3350,\n  \"majority</w>\": 10508,\n  \"majors</w>\": 23597,\n  \"mak\": 11271,\n  \"mak</w>\": 19253,\n  \"makar\": 42242,\n  \"makati</w>\": 39402,\n  \"make\": 3232,\n  \"make</w>\": 1078,\n  \"makeaw\": 45859,\n  \"makeinindia</w>\": 42739,\n  \"makeit\": 26308,\n  \"maken\": 47093,\n  \"makeover</w>\": 17926,\n  \"maker\": 15196,\n  \"maker</w>\": 4836,\n  \"makers</w>\": 6577,\n  \"makerspace</w>\": 42400,\n  \"makes</w>\": 2088,\n  \"makeshift</w>\": 43274,\n  \"makeu\": 41707,\n  \"makeup\": 26402,\n  \"makeup</w>\": 5853,\n  \"makeyourown\": 34090,\n  \"makeyourownlane</w>\": 34823,\n  \"maki</w>\": 34514,\n  \"makin\": 43096,\n  \"makin</w>\": 22407,\n  \"making\": 17976,\n  \"making</w>\": 1665,\n  \"makk\": 39852,\n  \"maknae</w>\": 44118,\n  \"mako</w>\": 49061,\n  \"mal\": 1662,\n  \"mal</w>\": 3796,\n  \"mala</w>\": 28290,\n  \"malade</w>\": 36928,\n  \"malaga</w>\": 35395,\n  \"malala</w>\": 41137,\n  \"malam</w>\": 48956,\n  \"malaria</w>\": 24929,\n  \"malawi</w>\": 23405,\n  \"malay\": 5323,\n  \"malay</w>\": 42430,\n  \"malayalam</w>\": 34860,\n  \"malaysi\": 39668,\n  \"malaysia</w>\": 8146,\n  \"malaysian</w>\": 21136,\n  \"malbec</w>\": 47741,\n  \"malcol\": 12645,\n  \"malcolm</w>\": 14139,\n  \"maldives</w>\": 16795,\n  \"male\": 11326,\n  \"male</w>\": 2801,\n  \"males</w>\": 14426,\n  \"malhotra</w>\": 28866,\n  \"mali\": 6701,\n  \"mali</w>\": 22669,\n  \"malia</w>\": 46714,\n  \"malibu</w>\": 21723,\n  \"malicious</w>\": 42147,\n  \"malign\": 41122,\n  \"malik</w>\": 11394,\n  \"mall\": 10984,\n  \"mall</w>\": 6220,\n  \"mallorca</w>\": 28082,\n  \"mallory</w>\": 38968,\n  \"malls</w>\": 36447,\n  \"malm\": 44071,\n  \"malnutrition</w>\": 41153,\n  \"malo</w>\": 43518,\n  \"malone</w>\": 19852,\n  \"maloney</w>\": 45897,\n  \"mals</w>\": 25370,\n  \"malt</w>\": 21688,\n  \"malta</w>\": 16989,\n  \"maltese</w>\": 39838,\n  \"malvern</w>\": 39356,\n  \"malware</w>\": 24153,\n  \"mam\": 4404,\n  \"mam</w>\": 17778,\n  \"mama</w>\": 7133,\n  \"mamamoo</w>\": 36012,\n  \"mamas</w>\": 42395,\n  \"mamba</w>\": 44189,\n  \"mament</w>\": 45690,\n  \"mami</w>\": 43858,\n  \"mamma</w>\": 34893,\n  \"mammal</w>\": 33385,\n  \"mammals</w>\": 31987,\n  \"mammoth</w>\": 28022,\n  \"man\": 723,\n  \"man</w>\": 786,\n  \"mana\": 29467,\n  \"mana</w>\": 15837,\n  \"manafort</w>\": 40108,\n  \"manag\": 1830,\n  \"manage</w>\": 9770,\n  \"managed</w>\": 7928,\n  \"management</w>\": 3319,\n  \"manager</w>\": 3898,\n  \"managerial</w>\": 44261,\n  \"managers</w>\": 12853,\n  \"manages</w>\": 29699,\n  \"managing</w>\": 10892,\n  \"manas\": 44188,\n  \"manatee</w>\": 46558,\n  \"mance</w>\": 2324,\n  \"manchester\": 24424,\n  \"manchester</w>\": 4651,\n  \"mancini</w>\": 47681,\n  \"mancity</w>\": 31538,\n  \"mancrush\": 36945,\n  \"mancrushmonday</w>\": 39307,\n  \"mand\": 4325,\n  \"mand</w>\": 27244,\n  \"mandala</w>\": 41106,\n  \"mandarin</w>\": 26455,\n  \"mandate</w>\": 26228,\n  \"mandatory</w>\": 19934,\n  \"mandel\": 34960,\n  \"mandela</w>\": 16280,\n  \"mandi\": 38961,\n  \"mandir</w>\": 35815,\n  \"mando</w>\": 34006,\n  \"mands</w>\": 12340,\n  \"mandu</w>\": 31440,\n  \"mandy\": 41505,\n  \"mandy</w>\": 24302,\n  \"mane\": 44471,\n  \"mane</w>\": 16044,\n  \"maneu\": 33216,\n  \"mang\": 25616,\n  \"mang</w>\": 31096,\n  \"manga</w>\": 11873,\n  \"mangal\": 43027,\n  \"manger</w>\": 48251,\n  \"mango\": 43831,\n  \"mango</w>\": 13962,\n  \"mangrove</w>\": 47180,\n  \"manhatt\": 10152,\n  \"manhattan</w>\": 10961,\n  \"mani\": 5654,\n  \"mani</w>\": 10718,\n  \"mania</w>\": 8435,\n  \"maniac</w>\": 31814,\n  \"maniacs</w>\": 41444,\n  \"manian</w>\": 40077,\n  \"manic\": 23017,\n  \"manic</w>\": 37825,\n  \"manicure</w>\": 33637,\n  \"manife\": 14379,\n  \"manifest</w>\": 34422,\n  \"manifestation</w>\": 48348,\n  \"manifesto</w>\": 20907,\n  \"manil\": 38827,\n  \"manila</w>\": 10969,\n  \"manipu\": 40261,\n  \"manipul\": 19237,\n  \"manipulation</w>\": 30277,\n  \"manipur</w>\": 47757,\n  \"manish\": 41759,\n  \"manish</w>\": 44720,\n  \"manit\": 15693,\n  \"manitoba</w>\": 20342,\n  \"manjaro</w>\": 41489,\n  \"mankind</w>\": 24155,\n  \"manly</w>\": 25194,\n  \"mann\": 19396,\n  \"mann</w>\": 4783,\n  \"manne\": 30160,\n  \"manned</w>\": 26139,\n  \"mannequin</w>\": 43388,\n  \"manner</w>\": 20700,\n  \"manners</w>\": 31693,\n  \"manning</w>\": 15996,\n  \"manny\": 37054,\n  \"manny</w>\": 20933,\n  \"mano\": 15753,\n  \"mano</w>\": 24016,\n  \"manoj</w>\": 41146,\n  \"manor\": 41830,\n  \"manor</w>\": 13614,\n  \"mans\": 28422,\n  \"mans</w>\": 7746,\n  \"mansfield</w>\": 25543,\n  \"manship</w>\": 15460,\n  \"mansion</w>\": 13404,\n  \"manslaughter</w>\": 48632,\n  \"manson</w>\": 26715,\n  \"mant\": 25122,\n  \"mant</w>\": 27037,\n  \"manta</w>\": 41431,\n  \"mantis</w>\": 39946,\n  \"mantle</w>\": 22159,\n  \"mantra</w>\": 25162,\n  \"manu\": 3404,\n  \"manu</w>\": 25799,\n  \"manual</w>\": 12268,\n  \"manuel\": 29171,\n  \"manuel</w>\": 9567,\n  \"manufac\": 5105,\n  \"manufacture</w>\": 27741,\n  \"manufactured</w>\": 24010,\n  \"manufacturer</w>\": 15668,\n  \"manufacturers</w>\": 18763,\n  \"manufacturing</w>\": 8386,\n  \"manure</w>\": 47907,\n  \"manus</w>\": 28181,\n  \"manuscript</w>\": 24365,\n  \"manuscripts</w>\": 40765,\n  \"manutd</w>\": 20994,\n  \"many\": 28484,\n  \"many</w>\": 1346,\n  \"manziel</w>\": 40637,\n  \"mao\": 47447,\n  \"mao</w>\": 25605,\n  \"maori</w>\": 43400,\n  \"map\": 25180,\n  \"map</w>\": 3923,\n  \"maple\": 21980,\n  \"maple</w>\": 10570,\n  \"mapleleafs</w>\": 41257,\n  \"mapoli</w>\": 28768,\n  \"mapp</w>\": 36894,\n  \"mapped</w>\": 41596,\n  \"mapping</w>\": 15231,\n  \"maps</w>\": 8765,\n  \"mapu\": 42082,\n  \"mar\": 675,\n  \"mar</w>\": 3091,\n  \"mara</w>\": 15655,\n  \"marais</w>\": 47913,\n  \"maran\": 44732,\n  \"marath\": 16274,\n  \"marathi</w>\": 34102,\n  \"marathon\": 40764,\n  \"marathon</w>\": 5910,\n  \"marau\": 38475,\n  \"marbella</w>\": 36182,\n  \"marble\": 45429,\n  \"marble</w>\": 13071,\n  \"marbles</w>\": 42931,\n  \"marc\": 14054,\n  \"marc</w>\": 9075,\n  \"marca</w>\": 38242,\n  \"marcel\": 17726,\n  \"marcel</w>\": 24652,\n  \"marcelo</w>\": 35939,\n  \"march\": 10638,\n  \"march</w>\": 2227,\n  \"marche</w>\": 36173,\n  \"marched</w>\": 37976,\n  \"marches</w>\": 38249,\n  \"marchfor\": 31721,\n  \"marching</w>\": 15082,\n  \"marchmadness</w>\": 28555,\n  \"marci\": 36698,\n  \"marcia</w>\": 41075,\n  \"marck</w>\": 47733,\n  \"marco\": 24719,\n  \"marco</w>\": 10924,\n  \"marcor\": 39945,\n  \"marcorubio</w>\": 41143,\n  \"marcos</w>\": 21696,\n  \"marcu\": 20760,\n  \"marcus\": 48955,\n  \"marcus</w>\": 9895,\n  \"mardi\": 39728,\n  \"mardi</w>\": 29229,\n  \"mardigras</w>\": 43343,\n  \"mare\": 26512,\n  \"mare</w>\": 8870,\n  \"mares</w>\": 19724,\n  \"marg</w>\": 44014,\n  \"margar\": 16838,\n  \"margare\": 10232,\n  \"margaret</w>\": 12185,\n  \"margarita</w>\": 25958,\n  \"margaritas</w>\": 42679,\n  \"margate</w>\": 37428,\n  \"margin\": 19464,\n  \"margin</w>\": 21357,\n  \"marginal</w>\": 38320,\n  \"margins</w>\": 33763,\n  \"margot</w>\": 37144,\n  \"mari\": 2603,\n  \"mari</w>\": 19322,\n  \"maria\": 41109,\n  \"maria</w>\": 6595,\n  \"mariachi</w>\": 44299,\n  \"mariah\": 31214,\n  \"mariah</w>\": 24789,\n  \"mariahcarey</w>\": 36538,\n  \"marian\": 41129,\n  \"marian</w>\": 24677,\n  \"mariana</w>\": 44224,\n  \"marianne</w>\": 32214,\n  \"mariano</w>\": 43988,\n  \"marie\": 20657,\n  \"marie</w>\": 7864,\n  \"marietta</w>\": 46634,\n  \"marig\": 41002,\n  \"marijuana</w>\": 9864,\n  \"maril\": 14611,\n  \"marilyn\": 38959,\n  \"marilyn</w>\": 18489,\n  \"marin\": 8910,\n  \"marin</w>\": 23992,\n  \"marina</w>\": 12060,\n  \"marinated</w>\": 33406,\n  \"marine\": 20674,\n  \"marine</w>\": 5746,\n  \"mariner</w>\": 39972,\n  \"mariners</w>\": 19086,\n  \"marines</w>\": 15018,\n  \"marino</w>\": 30878,\n  \"mario\": 39176,\n  \"mario</w>\": 7600,\n  \"marion\": 37765,\n  \"marion</w>\": 18397,\n  \"maris\": 21512,\n  \"maris</w>\": 33093,\n  \"marisa</w>\": 42938,\n  \"mariska</w>\": 44703,\n  \"marissa</w>\": 31219,\n  \"marist</w>\": 48223,\n  \"mariti\": 13124,\n  \"maritime</w>\": 14331,\n  \"marj\": 38639,\n  \"mark\": 3805,\n  \"mark</w>\": 2110,\n  \"marke\": 2399,\n  \"marked</w>\": 12360,\n  \"marker</w>\": 18170,\n  \"markers</w>\": 23664,\n  \"market\": 11614,\n  \"market</w>\": 2196,\n  \"marketer</w>\": 33482,\n  \"marketers</w>\": 23682,\n  \"marketing\": 19535,\n  \"marketing</w>\": 2905,\n  \"marketplace</w>\": 18241,\n  \"markets</w>\": 7292,\n  \"markham</w>\": 39817,\n  \"marking</w>\": 14705,\n  \"markings</w>\": 41046,\n  \"markle</w>\": 32672,\n  \"marko</w>\": 38338,\n  \"marks</w>\": 5466,\n  \"markus</w>\": 33725,\n  \"marl\": 24922,\n  \"marlborough</w>\": 43515,\n  \"marlene</w>\": 45117,\n  \"marley</w>\": 16504,\n  \"marlin</w>\": 34275,\n  \"marlins</w>\": 23309,\n  \"marlon</w>\": 32995,\n  \"marmalade</w>\": 39068,\n  \"marnock</w>\": 48305,\n  \"maro\": 27029,\n  \"maroon</w>\": 20501,\n  \"marqu\": 20704,\n  \"marque\": 13012,\n  \"marquee</w>\": 27725,\n  \"marquette</w>\": 37624,\n  \"marquez</w>\": 27317,\n  \"marquis</w>\": 33530,\n  \"marr</w>\": 32871,\n  \"marrake\": 37125,\n  \"marrakech</w>\": 39006,\n  \"marri\": 3839,\n  \"marriage\": 38047,\n  \"marriage</w>\": 7040,\n  \"marriages</w>\": 38190,\n  \"married</w>\": 6791,\n  \"marries</w>\": 46283,\n  \"marriott</w>\": 19211,\n  \"marrow</w>\": 31030,\n  \"marry</w>\": 13288,\n  \"marrying</w>\": 40507,\n  \"mars\": 41469,\n  \"mars</w>\": 7496,\n  \"marsden</w>\": 43344,\n  \"marse\": 26577,\n  \"marseille</w>\": 30365,\n  \"marsh\": 9237,\n  \"marsh</w>\": 13505,\n  \"marsha</w>\": 21491,\n  \"marshal</w>\": 26608,\n  \"marshall\": 30939,\n  \"marshall</w>\": 9811,\n  \"marshals</w>\": 44175,\n  \"marshes</w>\": 43450,\n  \"marshmal\": 21069,\n  \"marshmallow</w>\": 28530,\n  \"marshmallows</w>\": 39471,\n  \"mart\": 2348,\n  \"mart</w>\": 7772,\n  \"marta</w>\": 32858,\n  \"martens</w>\": 43211,\n  \"marth\": 34493,\n  \"martha</w>\": 16427,\n  \"marti\": 20577,\n  \"martial</w>\": 17088,\n  \"martialarts</w>\": 35895,\n  \"martian</w>\": 30214,\n  \"martin\": 6929,\n  \"martin</w>\": 3690,\n  \"martina</w>\": 34393,\n  \"martinez</w>\": 13913,\n  \"marting\": 47570,\n  \"martini</w>\": 22199,\n  \"martino</w>\": 41675,\n  \"martins</w>\": 30569,\n  \"marty\": 9926,\n  \"marty</w>\": 17169,\n  \"martyn</w>\": 44075,\n  \"martyr\": 36155,\n  \"martyr</w>\": 26067,\n  \"martyrdom</w>\": 43110,\n  \"martyred</w>\": 39114,\n  \"martyrs</w>\": 24707,\n  \"maru\": 37413,\n  \"maru</w>\": 31838,\n  \"marvel\": 13835,\n  \"marvel</w>\": 5996,\n  \"marvelcomics</w>\": 46897,\n  \"marvell\": 26576,\n  \"marvellous</w>\": 28402,\n  \"marvelous</w>\": 25487,\n  \"marvin</w>\": 19675,\n  \"marx\": 30559,\n  \"marx</w>\": 26001,\n  \"marxist</w>\": 45205,\n  \"mary\": 5146,\n  \"mary</w>\": 2676,\n  \"maryam\": 33636,\n  \"maryam</w>\": 36393,\n  \"maryland</w>\": 11379,\n  \"marys\": 40905,\n  \"marys</w>\": 40228,\n  \"mas\": 5226,\n  \"mas</w>\": 1412,\n  \"masa\": 24995,\n  \"masa</w>\": 41868,\n  \"masala</w>\": 31483,\n  \"masc\": 23564,\n  \"mascar\": 46984,\n  \"mascara</w>\": 31635,\n  \"mascot</w>\": 13983,\n  \"mascots</w>\": 43266,\n  \"mascul\": 25589,\n  \"masculine</w>\": 48269,\n  \"masculinity</w>\": 40465,\n  \"mase\": 49128,\n  \"maser\": 25798,\n  \"maserati</w>\": 30442,\n  \"mash\": 12317,\n  \"mash</w>\": 15680,\n  \"mashable</w>\": 41026,\n  \"mashed</w>\": 27395,\n  \"mashup</w>\": 27079,\n  \"masi\": 35965,\n  \"masjid</w>\": 31420,\n  \"mask\": 19262,\n  \"mask</w>\": 8306,\n  \"masked</w>\": 25757,\n  \"masking</w>\": 47046,\n  \"masks</w>\": 19055,\n  \"maslow</w>\": 44359,\n  \"mason\": 17424,\n  \"mason</w>\": 9699,\n  \"masonic</w>\": 36491,\n  \"masonry</w>\": 30764,\n  \"masons</w>\": 37195,\n  \"masqu\": 26593,\n  \"masquer\": 29604,\n  \"masquerade</w>\": 36944,\n  \"mass\": 4636,\n  \"mass</w>\": 4854,\n  \"massach\": 14484,\n  \"massachuse\": 14577,\n  \"massachusetts</w>\": 14756,\n  \"massacre</w>\": 14696,\n  \"massage</w>\": 13055,\n  \"masse\": 41735,\n  \"masses</w>\": 22978,\n  \"massey</w>\": 29868,\n  \"massi\": 17239,\n  \"massimo</w>\": 45821,\n  \"massive</w>\": 4818,\n  \"massively</w>\": 34297,\n  \"mast\": 45916,\n  \"mast</w>\": 27920,\n  \"master\": 4534,\n  \"master</w>\": 3498,\n  \"mastercard</w>\": 40542,\n  \"masterchef</w>\": 34809,\n  \"masterclass</w>\": 17529,\n  \"mastered</w>\": 32616,\n  \"masterful</w>\": 46823,\n  \"mastering</w>\": 28326,\n  \"mastermind</w>\": 34029,\n  \"masterpiece</w>\": 12066,\n  \"masterpieces</w>\": 37596,\n  \"masters</w>\": 6913,\n  \"mastery</w>\": 34800,\n  \"mastiff</w>\": 42311,\n  \"maswar\": 47887,\n  \"mat\": 905,\n  \"mat</w>\": 9063,\n  \"mata</w>\": 17270,\n  \"match\": 7733,\n  \"match</w>\": 2439,\n  \"matcha</w>\": 32433,\n  \"matchday</w>\": 15947,\n  \"matched</w>\": 17792,\n  \"matches</w>\": 8609,\n  \"matching</w>\": 11840,\n  \"matchup</w>\": 19355,\n  \"matchups</w>\": 49162,\n  \"mate\": 6137,\n  \"mate</w>\": 2936,\n  \"mated</w>\": 33813,\n  \"mateo</w>\": 34991,\n  \"mater</w>\": 23724,\n  \"materi\": 7084,\n  \"material</w>\": 7118,\n  \"materials</w>\": 8161,\n  \"maternal</w>\": 26131,\n  \"maternity</w>\": 23894,\n  \"mates</w>\": 5817,\n  \"math\": 13277,\n  \"math</w>\": 6025,\n  \"mathe\": 8725,\n  \"mathemat\": 11901,\n  \"mathematical</w>\": 25609,\n  \"mathematician</w>\": 41036,\n  \"mathematics</w>\": 20113,\n  \"mathew</w>\": 36333,\n  \"mathews</w>\": 37120,\n  \"mathi\": 23014,\n  \"mathieu</w>\": 40417,\n  \"maths</w>\": 14763,\n  \"mati\": 12716,\n  \"mati</w>\": 32268,\n  \"matic\": 36859,\n  \"matic</w>\": 7900,\n  \"matically</w>\": 38282,\n  \"matics</w>\": 23634,\n  \"matil\": 26751,\n  \"matilda</w>\": 36308,\n  \"matin</w>\": 44849,\n  \"matinee</w>\": 38525,\n  \"mating</w>\": 34346,\n  \"mation</w>\": 11701,\n  \"matisse</w>\": 43446,\n  \"mato\": 13127,\n  \"matologist</w>\": 48842,\n  \"matology</w>\": 27940,\n  \"matory</w>\": 25519,\n  \"matri\": 27041,\n  \"matrix</w>\": 18078,\n  \"mats</w>\": 22259,\n  \"matsu\": 30242,\n  \"matt\": 7972,\n  \"matt</w>\": 3972,\n  \"mattb\": 42791,\n  \"matte\": 31237,\n  \"matte</w>\": 19771,\n  \"mattel</w>\": 35365,\n  \"matteo</w>\": 33120,\n  \"matter\": 30471,\n  \"matter</w>\": 3828,\n  \"matters</w>\": 5708,\n  \"matth\": 41846,\n  \"matthe\": 5116,\n  \"matthew\": 17588,\n  \"matthew</w>\": 7008,\n  \"matthews</w>\": 16739,\n  \"matthi\": 29853,\n  \"matthias</w>\": 45104,\n  \"matti\": 39840,\n  \"mattress</w>\": 23438,\n  \"matty\": 31233,\n  \"matty</w>\": 29176,\n  \"matu\": 40616,\n  \"matur\": 22897,\n  \"mature</w>\": 14417,\n  \"maturity</w>\": 28047,\n  \"mau\": 8134,\n  \"mau</w>\": 23033,\n  \"maui</w>\": 20463,\n  \"maul\": 30725,\n  \"maur\": 10574,\n  \"maure\": 25191,\n  \"maureen</w>\": 31723,\n  \"maurice</w>\": 20200,\n  \"mauricio</w>\": 39066,\n  \"mauriti\": 28406,\n  \"mauritius</w>\": 29305,\n  \"mauro</w>\": 41691,\n  \"mav\": 25697,\n  \"maver\": 16700,\n  \"maverick</w>\": 27425,\n  \"mavericks</w>\": 30092,\n  \"mavs</w>\": 30665,\n  \"maw\": 39351,\n  \"maw</w>\": 42271,\n  \"mawards</w>\": 37682,\n  \"max\": 4898,\n  \"max</w>\": 3902,\n  \"maxi\": 8554,\n  \"maxi</w>\": 23266,\n  \"maxim\": 19892,\n  \"maxim</w>\": 38574,\n  \"maximize</w>\": 28673,\n  \"maximum</w>\": 13162,\n  \"maximus</w>\": 44312,\n  \"maxine</w>\": 38468,\n  \"maxwell</w>\": 19611,\n  \"maxx</w>\": 37466,\n  \"may\": 1686,\n  \"may</w>\": 1270,\n  \"maya\": 45783,\n  \"maya</w>\": 12987,\n  \"mayan</w>\": 37952,\n  \"maybe</w>\": 3746,\n  \"mayday</w>\": 29957,\n  \"mayer</w>\": 21196,\n  \"mayfair</w>\": 35171,\n  \"mayfield</w>\": 33933,\n  \"mayhem</w>\": 21502,\n  \"maymay\": 26600,\n  \"maymay</w>\": 33853,\n  \"maymayentrata</w>\": 30480,\n  \"maynard</w>\": 32487,\n  \"mayne</w>\": 35771,\n  \"mayo\": 22449,\n  \"mayo</w>\": 11280,\n  \"mayor\": 15429,\n  \"mayor</w>\": 4676,\n  \"mayoral</w>\": 28983,\n  \"mayorof\": 43533,\n  \"mayors</w>\": 28501,\n  \"mays</w>\": 35445,\n  \"maythe</w>\": 42281,\n  \"mayward\": 45751,\n  \"mayward</w>\": 23519,\n  \"mayweather</w>\": 22774,\n  \"maz\": 9177,\n  \"maz</w>\": 36215,\n  \"mazda</w>\": 18506,\n  \"maze</w>\": 21988,\n  \"mazz\": 29439,\n  \"maÃ±\": 37059,\n  \"maÃ±ana</w>\": 39354,\n  \"mb\": 758,\n  \"mb</w>\": 3996,\n  \"mba</w>\": 8329,\n  \"mban</w>\": 46685,\n  \"mbar\": 44452,\n  \"mbb</w>\": 10736,\n  \"mbc</w>\": 20137,\n  \"mbe\": 38395,\n  \"mbe</w>\": 27004,\n  \"mber\": 5467,\n  \"mber</w>\": 1034,\n  \"mberg</w>\": 26372,\n  \"mbers</w>\": 5443,\n  \"mbi</w>\": 45347,\n  \"mble\": 20310,\n  \"mble</w>\": 4756,\n  \"mbles</w>\": 28693,\n  \"mbling</w>\": 28604,\n  \"mbo\": 25733,\n  \"mbo</w>\": 11319,\n  \"mbps</w>\": 44896,\n  \"mbs</w>\": 10370,\n  \"mbta</w>\": 38979,\n  \"mbu</w>\": 42228,\n  \"mbuhari</w>\": 36752,\n  \"mc\": 1278,\n  \"mc</w>\": 4126,\n  \"mca\": 40570,\n  \"mca</w>\": 14635,\n  \"mcal\": 28663,\n  \"mcar\": 43776,\n  \"mcbride</w>\": 35080,\n  \"mcc</w>\": 21192,\n  \"mccabe</w>\": 37628,\n  \"mccaf\": 47385,\n  \"mccain</w>\": 20397,\n  \"mccall</w>\": 34844,\n  \"mccann</w>\": 27140,\n  \"mccar\": 9570,\n  \"mccarthy</w>\": 16974,\n  \"mccartney</w>\": 19958,\n  \"mccl\": 24709,\n  \"mccla\": 43672,\n  \"mccle\": 40139,\n  \"mcclure</w>\": 44945,\n  \"mcco\": 46152,\n  \"mccon\": 32638,\n  \"mccor\": 23057,\n  \"mccormack</w>\": 45164,\n  \"mccormick</w>\": 39088,\n  \"mccoy</w>\": 20218,\n  \"mccr\": 41996,\n  \"mccre\": 25393,\n  \"mccul\": 38833,\n  \"mccull\": 41782,\n  \"mcd</w>\": 28930,\n  \"mcder\": 27355,\n  \"mcdermott</w>\": 34504,\n  \"mcdon\": 12171,\n  \"mcdonald</w>\": 10741,\n  \"mcdonalds</w>\": 17674,\n  \"mcdonnell</w>\": 34360,\n  \"mcdowell</w>\": 34119,\n  \"mce\": 26864,\n  \"mcel\": 28752,\n  \"mcen\": 47423,\n  \"mcfad\": 36976,\n  \"mcfadden</w>\": 42105,\n  \"mcfar\": 29020,\n  \"mcfarlane</w>\": 47174,\n  \"mcfc</w>\": 16416,\n  \"mcfly</w>\": 38211,\n  \"mcg\": 42507,\n  \"mcg</w>\": 27995,\n  \"mcgee</w>\": 29223,\n  \"mcgill\": 46524,\n  \"mcgill</w>\": 35511,\n  \"mcgin\": 29596,\n  \"mcgowan</w>\": 40462,\n  \"mcgr\": 25169,\n  \"mcgra\": 29367,\n  \"mcgrath</w>\": 28759,\n  \"mcgraw</w>\": 40950,\n  \"mcgregor</w>\": 19642,\n  \"mcgu\": 34294,\n  \"mcguinness</w>\": 45299,\n  \"mcguire</w>\": 32635,\n  \"mci\": 46212,\n  \"mci</w>\": 45491,\n  \"mcil\": 30481,\n  \"mcin\": 18770,\n  \"mcintosh</w>\": 45353,\n  \"mcintyre</w>\": 33369,\n  \"mck\": 6781,\n  \"mckay</w>\": 33611,\n  \"mcke\": 27424,\n  \"mckee</w>\": 43529,\n  \"mcken\": 42619,\n  \"mckenna</w>\": 24924,\n  \"mckenzie</w>\": 25502,\n  \"mckin\": 15437,\n  \"mckinley</w>\": 39891,\n  \"mckinney</w>\": 33554,\n  \"mckinnon</w>\": 48736,\n  \"mckinsey</w>\": 48143,\n  \"mcl\": 49021,\n  \"mcla\": 12565,\n  \"mclaren\": 37381,\n  \"mclaren</w>\": 16789,\n  \"mclau\": 32285,\n  \"mclaughlin</w>\": 35346,\n  \"mcle\": 25299,\n  \"mclean</w>\": 28666,\n  \"mcleod</w>\": 40259,\n  \"mcm</w>\": 12251,\n  \"mcmahon</w>\": 24026,\n  \"mcmaster</w>\": 42703,\n  \"mcmillan</w>\": 45603,\n  \"mcn\": 42919,\n  \"mcnam\": 32682,\n  \"mcnamara</w>\": 37506,\n  \"mcne\": 42545,\n  \"mco</w>\": 33723,\n  \"mcqueen</w>\": 22544,\n  \"mcr\": 29884,\n  \"mcr</w>\": 16966,\n  \"mcs</w>\": 27020,\n  \"mcu</w>\": 30403,\n  \"md\": 8637,\n  \"md</w>\": 4732,\n  \"mdc\": 38773,\n  \"mdc</w>\": 41761,\n  \"mds</w>\": 48746,\n  \"mdt</w>\": 40822,\n  \"me\": 613,\n  \"me</w>\": 614,\n  \"mea\": 46045,\n  \"mea</w>\": 17711,\n  \"mead\": 12134,\n  \"mead</w>\": 21567,\n  \"meade</w>\": 37218,\n  \"meado\": 16402,\n  \"meadow\": 25213,\n  \"meadow</w>\": 17195,\n  \"meadows</w>\": 17178,\n  \"meal\": 29662,\n  \"meal</w>\": 5478,\n  \"meals</w>\": 11229,\n  \"mean\": 4189,\n  \"mean</w>\": 3450,\n  \"meand\": 48015,\n  \"meaning\": 14586,\n  \"meaning</w>\": 8342,\n  \"meaningful</w>\": 17480,\n  \"meaningless</w>\": 48932,\n  \"meanings</w>\": 45814,\n  \"means</w>\": 3494,\n  \"meant</w>\": 8674,\n  \"meantime</w>\": 27499,\n  \"meanwhile</w>\": 9650,\n  \"meas\": 5867,\n  \"measles</w>\": 38230,\n  \"measurable</w>\": 48010,\n  \"measure\": 15261,\n  \"measure</w>\": 10579,\n  \"measured</w>\": 23154,\n  \"measurement</w>\": 20973,\n  \"measurements</w>\": 29894,\n  \"measures</w>\": 11936,\n  \"measuring</w>\": 18064,\n  \"meat\": 10805,\n  \"meat</w>\": 6480,\n  \"meatball</w>\": 43642,\n  \"meatballs</w>\": 29233,\n  \"meath</w>\": 37920,\n  \"meatless\": 48085,\n  \"meats</w>\": 29558,\n  \"mec</w>\": 27432,\n  \"mecca</w>\": 36095,\n  \"mech</w>\": 38305,\n  \"mechan\": 6715,\n  \"mechanic</w>\": 24582,\n  \"mechanical</w>\": 14467,\n  \"mechanics</w>\": 20536,\n  \"mechanism</w>\": 22576,\n  \"mechanisms</w>\": 28610,\n  \"meck\": 41908,\n  \"med\": 1948,\n  \"med</w>\": 2177,\n  \"meda</w>\": 33614,\n  \"medal\": 29714,\n  \"medal</w>\": 6974,\n  \"medalist</w>\": 21040,\n  \"medalists</w>\": 43397,\n  \"medalli\": 31349,\n  \"medallion</w>\": 43469,\n  \"medallist</w>\": 41472,\n  \"medals</w>\": 14710,\n  \"mede</w>\": 48225,\n  \"meded</w>\": 27627,\n  \"medi\": 1436,\n  \"media\": 22064,\n  \"media</w>\": 1895,\n  \"mediac\": 37490,\n  \"median</w>\": 30491,\n  \"mediation</w>\": 42829,\n  \"medic\": 3602,\n  \"medic</w>\": 35441,\n  \"medicaid</w>\": 25421,\n  \"medical\": 18432,\n  \"medical</w>\": 4116,\n  \"medicare</w>\": 23710,\n  \"medication</w>\": 23771,\n  \"medications</w>\": 37181,\n  \"medicinal</w>\": 28772,\n  \"medicine</w>\": 5616,\n  \"medicines</w>\": 26541,\n  \"medics</w>\": 46688,\n  \"medieval\": 38956,\n  \"medieval</w>\": 10789,\n  \"medina</w>\": 27281,\n  \"mediocre</w>\": 41170,\n  \"medit\": 19130,\n  \"meditate</w>\": 38039,\n  \"meditation</w>\": 10827,\n  \"mediter\": 14194,\n  \"mediterran\": 14358,\n  \"mediterranean</w>\": 15327,\n  \"medium</w>\": 8675,\n  \"medley</w>\": 24793,\n  \"meds</w>\": 25075,\n  \"medtech</w>\": 42044,\n  \"medusa</w>\": 44216,\n  \"medway</w>\": 42286,\n  \"mee\": 1725,\n  \"mee</w>\": 14075,\n  \"meek</w>\": 28935,\n  \"meen\": 37940,\n  \"meen</w>\": 46515,\n  \"meer\": 26714,\n  \"meer</w>\": 27555,\n  \"meet\": 5714,\n  \"meet</w>\": 1633,\n  \"meeting\": 48566,\n  \"meeting</w>\": 2071,\n  \"meetings</w>\": 9980,\n  \"meets</w>\": 5972,\n  \"meetthe\": 27575,\n  \"meetup</w>\": 15430,\n  \"meg\": 11500,\n  \"meg</w>\": 16186,\n  \"mega\": 15979,\n  \"mega</w>\": 9068,\n  \"megab\": 38103,\n  \"megadeth</w>\": 46741,\n  \"megal\": 37650,\n  \"megam\": 26073,\n  \"megan\": 19127,\n  \"megan</w>\": 11503,\n  \"megap\": 33624,\n  \"megat\": 35581,\n  \"megh\": 31192,\n  \"meghan\": 39939,\n  \"meghan</w>\": 18261,\n  \"meh\": 10512,\n  \"meh</w>\": 22211,\n  \"mehta</w>\": 25031,\n  \"mei\": 22564,\n  \"mei</w>\": 25198,\n  \"meier</w>\": 29812,\n  \"mein\": 28857,\n  \"mein</w>\": 21466,\n  \"meister</w>\": 28407,\n  \"mek</w>\": 44645,\n  \"mel\": 1902,\n  \"mel</w>\": 6834,\n  \"mela</w>\": 35032,\n  \"melan\": 22261,\n  \"melanch\": 44818,\n  \"melancholy</w>\": 47821,\n  \"melani\": 34031,\n  \"melania</w>\": 32796,\n  \"melanie</w>\": 22153,\n  \"melanoma</w>\": 40862,\n  \"melb\": 47007,\n  \"melb</w>\": 28980,\n  \"melbourne\": 28387,\n  \"melbourne</w>\": 6995,\n  \"melee</w>\": 45108,\n  \"meli\": 28885,\n  \"melinda</w>\": 46303,\n  \"melis\": 18913,\n  \"melissa\": 41866,\n  \"melissa</w>\": 13030,\n  \"mell\": 22531,\n  \"mell</w>\": 41583,\n  \"mello</w>\": 47594,\n  \"mellon</w>\": 45162,\n  \"mellow</w>\": 32034,\n  \"melo\": 10354,\n  \"melo</w>\": 22374,\n  \"melodic</w>\": 41877,\n  \"melodies</w>\": 38412,\n  \"melody</w>\": 19119,\n  \"melon</w>\": 12146,\n  \"melrose</w>\": 36296,\n  \"melt\": 22209,\n  \"melt</w>\": 15957,\n  \"meltdown</w>\": 30613,\n  \"melted</w>\": 23037,\n  \"melting</w>\": 19247,\n  \"melton</w>\": 46062,\n  \"melts</w>\": 31446,\n  \"melville</w>\": 46030,\n  \"melvin</w>\": 31544,\n  \"mely</w>\": 6373,\n  \"mem\": 4937,\n  \"mem</w>\": 34944,\n  \"memb\": 2114,\n  \"member\": 29566,\n  \"member</w>\": 1640,\n  \"members</w>\": 2567,\n  \"membership</w>\": 11562,\n  \"membrane</w>\": 34088,\n  \"meme\": 35157,\n  \"meme</w>\": 9169,\n  \"memes</w>\": 12828,\n  \"memo\": 15967,\n  \"memo</w>\": 19334,\n  \"memoir</w>\": 20532,\n  \"memoirs</w>\": 45311,\n  \"memor\": 1858,\n  \"memorab\": 26271,\n  \"memorabilia</w>\": 27488,\n  \"memorable</w>\": 13172,\n  \"memorial\": 16285,\n  \"memorial</w>\": 4642,\n  \"memorialday</w>\": 21598,\n  \"memoriam</w>\": 48191,\n  \"memories</w>\": 4304,\n  \"memory\": 44766,\n  \"memory</w>\": 5137,\n  \"memph\": 10285,\n  \"memphis\": 38432,\n  \"memphis</w>\": 11298,\n  \"men\": 1552,\n  \"men</w>\": 1656,\n  \"mena</w>\": 23052,\n  \"menace</w>\": 29949,\n  \"mend\": 8151,\n  \"mend</w>\": 46927,\n  \"mendel\": 49268,\n  \"mendes</w>\": 18060,\n  \"mendez</w>\": 48275,\n  \"mendo\": 19327,\n  \"mendoza</w>\": 23680,\n  \"meng\": 37102,\n  \"meng</w>\": 37450,\n  \"mening\": 46428,\n  \"menon</w>\": 38255,\n  \"menopau\": 34974,\n  \"menopause</w>\": 46026,\n  \"mens\": 16924,\n  \"mens</w>\": 10495,\n  \"mensfashion</w>\": 27578,\n  \"menstru\": 28345,\n  \"menstrual</w>\": 40915,\n  \"menswear</w>\": 18803,\n  \"ment\": 1585,\n  \"ment</w>\": 777,\n  \"mental\": 8611,\n  \"mental</w>\": 3448,\n  \"mentalhealth\": 20593,\n  \"mentalhealth</w>\": 13022,\n  \"mentality</w>\": 26647,\n  \"mentally</w>\": 14307,\n  \"mentary</w>\": 4468,\n  \"mentation</w>\": 9512,\n  \"mentday</w>\": 40397,\n  \"mente\": 40302,\n  \"mente</w>\": 36396,\n  \"mented</w>\": 9249,\n  \"menting</w>\": 14471,\n  \"mention\": 43881,\n  \"mention</w>\": 6762,\n  \"mentioned</w>\": 11948,\n  \"mentioning</w>\": 34290,\n  \"mentions</w>\": 12334,\n  \"mento</w>\": 30582,\n  \"mentor\": 45342,\n  \"mentor</w>\": 11642,\n  \"mentoring</w>\": 19610,\n  \"mentors</w>\": 20945,\n  \"mentorship</w>\": 33878,\n  \"ments</w>\": 1827,\n  \"menu</w>\": 6225,\n  \"menus</w>\": 33534,\n  \"meo</w>\": 30792,\n  \"meow\": 39965,\n  \"meow</w>\": 17246,\n  \"mep</w>\": 27095,\n  \"mer\": 1316,\n  \"mer</w>\": 2452,\n  \"mera</w>\": 20028,\n  \"merc\": 34357,\n  \"merc</w>\": 44399,\n  \"mercado</w>\": 45479,\n  \"merce\": 8409,\n  \"mercede\": 34959,\n  \"mercedes\": 26403,\n  \"mercedes</w>\": 10685,\n  \"mercedesam\": 40107,\n  \"mercedesbenz</w>\": 32347,\n  \"mercen\": 40301,\n  \"mercer</w>\": 21632,\n  \"merch</w>\": 11504,\n  \"merchandi\": 14954,\n  \"merchandise</w>\": 16808,\n  \"merchandising</w>\": 49196,\n  \"merchant</w>\": 19563,\n  \"merchants</w>\": 34427,\n  \"merci\": 23364,\n  \"merci</w>\": 29378,\n  \"mercur\": 11471,\n  \"mercury\": 45203,\n  \"mercury</w>\": 12653,\n  \"mercy\": 33249,\n  \"mercy</w>\": 10815,\n  \"mere\": 29657,\n  \"mere</w>\": 10342,\n  \"mered\": 24657,\n  \"mered</w>\": 32297,\n  \"meredith</w>\": 25103,\n  \"merely</w>\": 28718,\n  \"merge</w>\": 30406,\n  \"merged</w>\": 46492,\n  \"merger</w>\": 24744,\n  \"merging</w>\": 49256,\n  \"meri\": 17993,\n  \"meri</w>\": 36109,\n  \"meria</w>\": 48433,\n  \"meric</w>\": 27097,\n  \"merica</w>\": 30561,\n  \"meridi\": 37901,\n  \"meridian</w>\": 31195,\n  \"mering</w>\": 41060,\n  \"meringue</w>\": 41661,\n  \"merino</w>\": 42648,\n  \"merit</w>\": 20830,\n  \"merkel</w>\": 24715,\n  \"merle</w>\": 48586,\n  \"merlin</w>\": 26517,\n  \"merlot</w>\": 40424,\n  \"mermaid</w>\": 16064,\n  \"mermaids</w>\": 43617,\n  \"mero</w>\": 19097,\n  \"merr\": 48288,\n  \"merri\": 21462,\n  \"merrill</w>\": 47713,\n  \"merritt</w>\": 36462,\n  \"merry\": 14167,\n  \"merry</w>\": 5779,\n  \"merrychristmas</w>\": 19672,\n  \"mers</w>\": 4199,\n  \"mersal</w>\": 36711,\n  \"mersey\": 25248,\n  \"mersey</w>\": 46239,\n  \"merseyside</w>\": 35382,\n  \"mert</w>\": 48496,\n  \"merton</w>\": 35315,\n  \"mery</w>\": 40873,\n  \"meryl</w>\": 35787,\n  \"mes\": 28432,\n  \"mes</w>\": 3029,\n  \"mesa</w>\": 18956,\n  \"mese</w>\": 42018,\n  \"mesh</w>\": 15030,\n  \"mesm\": 18695,\n  \"mesmer\": 38435,\n  \"mesmeri\": 25985,\n  \"mesmerizing</w>\": 35637,\n  \"meso\": 25537,\n  \"mesqu\": 46819,\n  \"mess\": 2490,\n  \"mess</w>\": 8188,\n  \"message</w>\": 3918,\n  \"messages</w>\": 9390,\n  \"messaging</w>\": 23234,\n  \"messe</w>\": 40391,\n  \"messed</w>\": 23580,\n  \"messenger</w>\": 17389,\n  \"messi\": 19394,\n  \"messi</w>\": 11252,\n  \"messiah</w>\": 28737,\n  \"messing</w>\": 23144,\n  \"messy</w>\": 15987,\n  \"mest</w>\": 23780,\n  \"mester</w>\": 47349,\n  \"mesut</w>\": 49177,\n  \"met\": 5249,\n  \"met</w>\": 2340,\n  \"meta\": 14803,\n  \"meta</w>\": 22701,\n  \"metab\": 16150,\n  \"metabol\": 48389,\n  \"metaboli\": 25573,\n  \"metabolic</w>\": 34311,\n  \"metabolism</w>\": 27824,\n  \"metal\": 8935,\n  \"metal</w>\": 4044,\n  \"metall\": 19084,\n  \"metallic</w>\": 17257,\n  \"metallica</w>\": 24079,\n  \"metals</w>\": 21375,\n  \"metam\": 28862,\n  \"metamor\": 39030,\n  \"metamorpho\": 47601,\n  \"metaph\": 24189,\n  \"metaphor</w>\": 34233,\n  \"metast\": 41973,\n  \"mete\": 11226,\n  \"meteor\": 26429,\n  \"meteor</w>\": 26823,\n  \"meteoro\": 25948,\n  \"meteorologist</w>\": 42849,\n  \"meter</w>\": 10104,\n  \"meters</w>\": 13247,\n  \"metgala</w>\": 30089,\n  \"meth\": 21867,\n  \"meth</w>\": 26177,\n  \"methane</w>\": 37565,\n  \"metho\": 5770,\n  \"method</w>\": 10284,\n  \"methodist</w>\": 25165,\n  \"methodo\": 28488,\n  \"methodology</w>\": 37316,\n  \"methods</w>\": 12200,\n  \"methyl\": 48999,\n  \"metmuseum</w>\": 28207,\n  \"meto\": 25679,\n  \"metoo</w>\": 24722,\n  \"metr\": 15086,\n  \"metre</w>\": 27889,\n  \"metres</w>\": 19798,\n  \"metric</w>\": 19950,\n  \"metrical</w>\": 40704,\n  \"metrics</w>\": 24396,\n  \"metro\": 7257,\n  \"metro</w>\": 6784,\n  \"metroid</w>\": 39957,\n  \"metropolis</w>\": 40476,\n  \"metropolitan</w>\": 19013,\n  \"metry</w>\": 20039,\n  \"mets</w>\": 9633,\n  \"mett</w>\": 28081,\n  \"metz</w>\": 40506,\n  \"meu</w>\": 34520,\n  \"mew</w>\": 40368,\n  \"mex\": 3213,\n  \"mex</w>\": 18387,\n  \"mexic\": 31728,\n  \"mexican\": 37442,\n  \"mexican</w>\": 8186,\n  \"mexicans</w>\": 47729,\n  \"mexico\": 31834,\n  \"mexico</w>\": 4604,\n  \"mey\": 28584,\n  \"mey</w>\": 27777,\n  \"meyer</w>\": 13963,\n  \"meyers</w>\": 32326,\n  \"mez\": 30615,\n  \"mez</w>\": 46833,\n  \"mezz\": 38771,\n  \"mf\": 18199,\n  \"mf</w>\": 11067,\n  \"mfa</w>\": 24107,\n  \"mfc</w>\": 39474,\n  \"mfg</w>\": 21912,\n  \"mfw</w>\": 27309,\n  \"mg\": 10003,\n  \"mg</w>\": 8014,\n  \"mga</w>\": 23954,\n  \"mgm</w>\": 27572,\n  \"mgmt</w>\": 22288,\n  \"mgr</w>\": 31500,\n  \"mgs</w>\": 48073,\n  \"mgt</w>\": 48663,\n  \"mh\": 9962,\n  \"mh</w>\": 10834,\n  \"mha</w>\": 41944,\n  \"mhealth</w>\": 41225,\n  \"mhs</w>\": 28815,\n  \"mhz</w>\": 31550,\n  \"mi\": 714,\n  \"mi</w>\": 2251,\n  \"mia</w>\": 5852,\n  \"miam\": 31053,\n  \"miami\": 15106,\n  \"miami</w>\": 4891,\n  \"mian</w>\": 24792,\n  \"miaw</w>\": 36046,\n  \"mib</w>\": 48178,\n  \"mic\": 1213,\n  \"mic</w>\": 3816,\n  \"mica</w>\": 41551,\n  \"micah</w>\": 33870,\n  \"mice</w>\": 19030,\n  \"mich\": 25628,\n  \"mich</w>\": 23029,\n  \"micha\": 2083,\n  \"michael\": 6051,\n  \"michael</w>\": 2511,\n  \"michaela</w>\": 41897,\n  \"michaeljackson</w>\": 33532,\n  \"michaels</w>\": 23868,\n  \"michal\": 47144,\n  \"miche\": 37966,\n  \"micheal</w>\": 43709,\n  \"michel\": 5158,\n  \"michel</w>\": 17153,\n  \"michelangelo</w>\": 41245,\n  \"michele</w>\": 20642,\n  \"michelin</w>\": 26330,\n  \"michelle\": 19028,\n  \"michelle</w>\": 8625,\n  \"michi\": 5658,\n  \"michigan\": 32344,\n  \"michigan</w>\": 6296,\n  \"mick\": 15171,\n  \"mick</w>\": 12592,\n  \"mickey\": 41813,\n  \"mickey</w>\": 13053,\n  \"micky</w>\": 43011,\n  \"micro\": 3160,\n  \"micro</w>\": 11374,\n  \"microbes</w>\": 44671,\n  \"microbi\": 19496,\n  \"microbial</w>\": 30335,\n  \"microbiology</w>\": 35348,\n  \"microbiome</w>\": 35148,\n  \"micron\": 48742,\n  \"microphone</w>\": 24643,\n  \"micropoetry</w>\": 35997,\n  \"microscope</w>\": 29114,\n  \"microscopy</w>\": 38431,\n  \"microsof\": 42424,\n  \"microsoft\": 38650,\n  \"microsoft</w>\": 7254,\n  \"microwave</w>\": 24240,\n  \"mics</w>\": 16554,\n  \"mid\": 2192,\n  \"mid</w>\": 4734,\n  \"midcentury</w>\": 48988,\n  \"midd\": 2983,\n  \"midday</w>\": 23390,\n  \"middle\": 9849,\n  \"middle</w>\": 3694,\n  \"middleeast</w>\": 32783,\n  \"middles\": 29769,\n  \"middlesbrough</w>\": 32436,\n  \"middlesex</w>\": 39154,\n  \"middleton</w>\": 23627,\n  \"middleweight</w>\": 35829,\n  \"midfield</w>\": 28116,\n  \"midfielder</w>\": 13423,\n  \"midget</w>\": 30734,\n  \"midi\": 39496,\n  \"midi</w>\": 27326,\n  \"midland</w>\": 24822,\n  \"midlands</w>\": 18062,\n  \"midnight\": 35746,\n  \"midnight</w>\": 6302,\n  \"mids</w>\": 40821,\n  \"midst</w>\": 24752,\n  \"midsummer</w>\": 35234,\n  \"midterm</w>\": 34365,\n  \"midterms</w>\": 32015,\n  \"midtown</w>\": 26069,\n  \"midway</w>\": 26536,\n  \"midweek</w>\": 29120,\n  \"midwest</w>\": 16627,\n  \"midwi\": 44802,\n  \"midwife</w>\": 37681,\n  \"midwives</w>\": 42355,\n  \"mie\": 20865,\n  \"mie</w>\": 10555,\n  \"miento</w>\": 46482,\n  \"mier</w>\": 36490,\n  \"mies</w>\": 8840,\n  \"miff\": 49398,\n  \"mig</w>\": 28743,\n  \"might</w>\": 2727,\n  \"mighty\": 26632,\n  \"mighty</w>\": 7815,\n  \"mign\": 41678,\n  \"migos</w>\": 44640,\n  \"migr\": 3736,\n  \"migra\": 28186,\n  \"migraine</w>\": 35360,\n  \"migrant</w>\": 18902,\n  \"migrants</w>\": 15814,\n  \"migrate</w>\": 41804,\n  \"migrating</w>\": 43604,\n  \"migration</w>\": 11891,\n  \"migu\": 12279,\n  \"miguel\": 33672,\n  \"miguel</w>\": 14436,\n  \"miho</w>\": 46870,\n  \"mii</w>\": 39896,\n  \"mik\": 15096,\n  \"mik</w>\": 46203,\n  \"mika\": 28609,\n  \"mika</w>\": 25185,\n  \"mike\": 5884,\n  \"mike</w>\": 3178,\n  \"mikel</w>\": 48865,\n  \"mikequind\": 33508,\n  \"mikequindazzi</w>\": 33551,\n  \"mikey\": 34934,\n  \"mikey</w>\": 23368,\n  \"mikha\": 30999,\n  \"mikhail</w>\": 38327,\n  \"miki</w>\": 48863,\n  \"miko</w>\": 35413,\n  \"miku</w>\": 37703,\n  \"mil\": 1469,\n  \"mil</w>\": 12826,\n  \"mila</w>\": 26183,\n  \"milan\": 30380,\n  \"milan</w>\": 8552,\n  \"milano</w>\": 18585,\n  \"milb</w>\": 42248,\n  \"mild</w>\": 16085,\n  \"mildly</w>\": 49059,\n  \"mile\": 7833,\n  \"mile</w>\": 6243,\n  \"mileage</w>\": 30579,\n  \"miler</w>\": 44680,\n  \"miles</w>\": 3446,\n  \"milestone</w>\": 13485,\n  \"milestones</w>\": 34025,\n  \"miley\": 25336,\n  \"miley</w>\": 14321,\n  \"mileycyrus</w>\": 28528,\n  \"milf</w>\": 45386,\n  \"milford</w>\": 35840,\n  \"mili\": 16698,\n  \"miliband</w>\": 41440,\n  \"milit\": 3715,\n  \"militant</w>\": 33629,\n  \"militants</w>\": 23974,\n  \"military\": 24498,\n  \"military</w>\": 4323,\n  \"militi\": 46625,\n  \"militia</w>\": 32114,\n  \"milk\": 13409,\n  \"milk</w>\": 5205,\n  \"milkshake</w>\": 29066,\n  \"milky\": 37320,\n  \"milky</w>\": 21120,\n  \"milkyway</w>\": 43246,\n  \"mill\": 4221,\n  \"mill</w>\": 6637,\n  \"milla</w>\": 49381,\n  \"millan\": 34930,\n  \"millan</w>\": 22188,\n  \"millar</w>\": 41851,\n  \"mille</w>\": 34066,\n  \"millen\": 48501,\n  \"millenni\": 10406,\n  \"millennial</w>\": 28357,\n  \"millennials</w>\": 18804,\n  \"millennium</w>\": 21116,\n  \"miller\": 21699,\n  \"miller</w>\": 5733,\n  \"milli\": 5340,\n  \"millie</w>\": 29283,\n  \"milling</w>\": 39133,\n  \"million\": 13154,\n  \"million</w>\": 2506,\n  \"millionaire</w>\": 25179,\n  \"millionaires</w>\": 47159,\n  \"millions</w>\": 8492,\n  \"mills</w>\": 10331,\n  \"millwall</w>\": 35902,\n  \"milly</w>\": 45794,\n  \"milne</w>\": 44590,\n  \"milner</w>\": 45230,\n  \"milo</w>\": 24548,\n  \"milton\": 39004,\n  \"milton</w>\": 17360,\n  \"milwau\": 13452,\n  \"milwaukee</w>\": 14259,\n  \"mim</w>\": 39379,\n  \"mimi</w>\": 27086,\n  \"mimic\": 47116,\n  \"mimic</w>\": 46519,\n  \"mimo\": 45551,\n  \"min\": 771,\n  \"min</w>\": 3331,\n  \"mina</w>\": 15281,\n  \"minaj</w>\": 25136,\n  \"minal</w>\": 40222,\n  \"minat</w>\": 33275,\n  \"mince</w>\": 32396,\n  \"mind\": 5890,\n  \"mind</w>\": 2575,\n  \"mindanao</w>\": 44228,\n  \"minded</w>\": 21330,\n  \"mindful</w>\": 28457,\n  \"mindfulness</w>\": 15707,\n  \"minding</w>\": 45337,\n  \"minds</w>\": 9244,\n  \"mindset</w>\": 14217,\n  \"mindy\": 46875,\n  \"mindy</w>\": 38551,\n  \"mine\": 20149,\n  \"mine</w>\": 3347,\n  \"minecraft</w>\": 15678,\n  \"mined</w>\": 48034,\n  \"minent</w>\": 12533,\n  \"miner\": 14109,\n  \"miner</w>\": 26572,\n  \"mineral</w>\": 17692,\n  \"minerals</w>\": 21169,\n  \"miners</w>\": 22119,\n  \"mines</w>\": 16211,\n  \"ming\": 10868,\n  \"ming</w>\": 2107,\n  \"mingham</w>\": 7590,\n  \"mingle</w>\": 38437,\n  \"mingly</w>\": 36909,\n  \"mington\": 49283,\n  \"mington</w>\": 23119,\n  \"minh</w>\": 48734,\n  \"minho</w>\": 21318,\n  \"mini\": 1810,\n  \"mini</w>\": 3954,\n  \"miniature\": 44298,\n  \"miniature</w>\": 16377,\n  \"miniatures</w>\": 38816,\n  \"minic\": 31522,\n  \"minim\": 10005,\n  \"minimal</w>\": 18458,\n  \"minimalism</w>\": 42594,\n  \"minimalist</w>\": 26641,\n  \"minimize</w>\": 38697,\n  \"minimum</w>\": 12244,\n  \"minindia</w>\": 28458,\n  \"mining</w>\": 8473,\n  \"minion</w>\": 28622,\n  \"minions</w>\": 27035,\n  \"minis\": 33409,\n  \"minis</w>\": 35976,\n  \"minister\": 25688,\n  \"minister</w>\": 3569,\n  \"ministerial</w>\": 33008,\n  \"ministers</w>\": 16406,\n  \"ministries</w>\": 27895,\n  \"ministry</w>\": 8742,\n  \"mink</w>\": 42017,\n  \"minn\": 45991,\n  \"minn</w>\": 47318,\n  \"minne\": 7083,\n  \"minneapolis</w>\": 16977,\n  \"minneso\": 9380,\n  \"minnesota</w>\": 9968,\n  \"minnie</w>\": 24493,\n  \"mino</w>\": 22791,\n  \"minogue</w>\": 44202,\n  \"minor</w>\": 8522,\n  \"minorities</w>\": 28119,\n  \"minority</w>\": 16210,\n  \"minors</w>\": 36789,\n  \"mins</w>\": 6196,\n  \"minsk</w>\": 46151,\n  \"minster</w>\": 11189,\n  \"mint\": 48084,\n  \"mint</w>\": 7506,\n  \"minted</w>\": 49377,\n  \"minton</w>\": 20050,\n  \"minu\": 29064,\n  \"minus</w>\": 15358,\n  \"minute\": 28931,\n  \"minute</w>\": 4497,\n  \"minutes</w>\": 3056,\n  \"mio</w>\": 26366,\n  \"mir\": 2750,\n  \"mir</w>\": 6585,\n  \"mira\": 21665,\n  \"mira</w>\": 22762,\n  \"mirac\": 13685,\n  \"miracle\": 49208,\n  \"miracle</w>\": 11543,\n  \"miracles</w>\": 23478,\n  \"miraculous</w>\": 38671,\n  \"mirage</w>\": 28679,\n  \"mirai</w>\": 49060,\n  \"mirand\": 32367,\n  \"miranda</w>\": 17590,\n  \"mire\": 38140,\n  \"mire</w>\": 30140,\n  \"miri\": 22273,\n  \"miriam</w>\": 30950,\n  \"miro\": 34851,\n  \"miro</w>\": 48317,\n  \"mirren</w>\": 47600,\n  \"mirro\": 48500,\n  \"mirror\": 29823,\n  \"mirror</w>\": 7220,\n  \"mirrors</w>\": 21823,\n  \"mirza</w>\": 36440,\n  \"mis\": 866,\n  \"mis</w>\": 11239,\n  \"mischief</w>\": 33896,\n  \"misconceptions</w>\": 48681,\n  \"misconduct</w>\": 30601,\n  \"mise\": 46567,\n  \"mise</w>\": 17267,\n  \"miser\": 33394,\n  \"miserable</w>\": 26196,\n  \"misery</w>\": 28360,\n  \"mises</w>\": 24390,\n  \"misfits</w>\": 42708,\n  \"mish\": 15494,\n  \"mish</w>\": 20981,\n  \"misha</w>\": 35434,\n  \"mishra</w>\": 33042,\n  \"misleading</w>\": 30862,\n  \"mism</w>\": 15948,\n  \"miso\": 27657,\n  \"miso</w>\": 33441,\n  \"misogy\": 31315,\n  \"misogyny</w>\": 48415,\n  \"miss\": 6984,\n  \"miss</w>\": 1526,\n  \"missal</w>\": 38337,\n  \"missed</w>\": 3955,\n  \"misses</w>\": 15844,\n  \"missi\": 3008,\n  \"missile</w>\": 14411,\n  \"missiles</w>\": 27868,\n  \"missin</w>\": 36209,\n  \"missing\": 23509,\n  \"missing</w>\": 3423,\n  \"mission\": 12738,\n  \"mission</w>\": 2406,\n  \"missionaries</w>\": 40580,\n  \"missionary</w>\": 27915,\n  \"missions</w>\": 6990,\n  \"mississ\": 26483,\n  \"mississauga</w>\": 28393,\n  \"mississi\": 11687,\n  \"mississippi</w>\": 12232,\n  \"missou\": 30710,\n  \"missoula</w>\": 48549,\n  \"missouri</w>\": 11835,\n  \"missuni\": 26347,\n  \"missuniverse</w>\": 28766,\n  \"missy\": 48105,\n  \"missy</w>\": 31515,\n  \"missyou</w>\": 45799,\n  \"mist\": 12610,\n  \"mist</w>\": 11946,\n  \"mistak\": 20478,\n  \"mistake</w>\": 11303,\n  \"mistaken</w>\": 29182,\n  \"mistakenly</w>\": 48494,\n  \"mistakes</w>\": 12824,\n  \"mister\": 26949,\n  \"mister</w>\": 18895,\n  \"mistle\": 46800,\n  \"mistletoe</w>\": 48569,\n  \"mistre\": 42039,\n  \"mistress</w>\": 24349,\n  \"mists</w>\": 28636,\n  \"misty</w>\": 18799,\n  \"misunderstood</w>\": 41574,\n  \"misuse</w>\": 40970,\n  \"mit\": 3303,\n  \"mit</w>\": 4551,\n  \"mita</w>\": 47514,\n  \"mitage</w>\": 27964,\n  \"mitch\": 6969,\n  \"mitch</w>\": 14150,\n  \"mitchell\": 39339,\n  \"mitchell</w>\": 9007,\n  \"mite</w>\": 26929,\n  \"mith\": 21752,\n  \"mith</w>\": 17948,\n  \"miti\": 17857,\n  \"mitigate</w>\": 42273,\n  \"mitigation</w>\": 35514,\n  \"mito\": 38254,\n  \"mitochondri\": 42132,\n  \"mitra</w>\": 47703,\n  \"mits</w>\": 24086,\n  \"mitsu\": 17905,\n  \"mitsubi\": 21604,\n  \"mitsubishi</w>\": 23030,\n  \"mitt\": 17321,\n  \"mitt</w>\": 21341,\n  \"mitted</w>\": 10307,\n  \"mitting</w>\": 27938,\n  \"mitz\": 41827,\n  \"mium</w>\": 35891,\n  \"miwx</w>\": 43941,\n  \"mix\": 3210,\n  \"mix</w>\": 3285,\n  \"mixed\": 29376,\n  \"mixed</w>\": 6780,\n  \"mixer</w>\": 17200,\n  \"mixers</w>\": 39175,\n  \"mixes</w>\": 19061,\n  \"mixing</w>\": 15588,\n  \"mixtape</w>\": 11044,\n  \"mixture</w>\": 28286,\n  \"miy\": 25695,\n  \"miya</w>\": 36257,\n  \"miz\": 20881,\n  \"miz</w>\": 30795,\n  \"mize</w>\": 19076,\n  \"mized</w>\": 43418,\n  \"mizing</w>\": 38715,\n  \"mizz\": 19985,\n  \"mizzou</w>\": 26165,\n  \"mj\": 13117,\n  \"mj</w>\": 14733,\n  \"mk\": 11581,\n  \"mk</w>\": 8937,\n  \"mke</w>\": 36642,\n  \"mkt</w>\": 24814,\n  \"ml\": 3627,\n  \"ml</w>\": 5780,\n  \"mla</w>\": 16723,\n  \"mlas</w>\": 48464,\n  \"mlb\": 21039,\n  \"mlb</w>\": 7482,\n  \"mley</w>\": 40329,\n  \"mlg</w>\": 45801,\n  \"mlin</w>\": 24556,\n  \"mlk</w>\": 17941,\n  \"mlkday</w>\": 39905,\n  \"mlm</w>\": 37611,\n  \"mln</w>\": 18971,\n  \"mlp</w>\": 23620,\n  \"mlpfi\": 45475,\n  \"mlpfim</w>\": 45640,\n  \"mls</w>\": 13077,\n  \"mm\": 1028,\n  \"mm</w>\": 2848,\n  \"mma\": 34140,\n  \"mma</w>\": 6096,\n  \"mmc</w>\": 44253,\n  \"mme</w>\": 13105,\n  \"mmed</w>\": 19570,\n  \"mmer\": 35717,\n  \"mmer</w>\": 7508,\n  \"mmers</w>\": 28128,\n  \"mmes</w>\": 42862,\n  \"mmi</w>\": 34147,\n  \"mming\": 21038,\n  \"mming</w>\": 16507,\n  \"mmings</w>\": 31357,\n  \"mmit</w>\": 41050,\n  \"mmj</w>\": 43015,\n  \"mmm\": 37908,\n  \"mmm</w>\": 7641,\n  \"mmmm\": 36312,\n  \"mmmm</w>\": 13180,\n  \"mmmmm</w>\": 21808,\n  \"mmmmmm</w>\": 43740,\n  \"mmo</w>\": 30418,\n  \"mmon</w>\": 41131,\n  \"mmor\": 36657,\n  \"mmorpg</w>\": 39476,\n  \"mms</w>\": 37803,\n  \"mmva</w>\": 42666,\n  \"mmy\": 28837,\n  \"mmy</w>\": 8722,\n  \"mn\": 5086,\n  \"mn</w>\": 4057,\n  \"mna</w>\": 34877,\n  \"mnd</w>\": 44776,\n  \"mnet</w>\": 34129,\n  \"mnf</w>\": 41105,\n  \"mnl</w>\": 32980,\n  \"mnleg</w>\": 42653,\n  \"mns</w>\": 39040,\n  \"mnt</w>\": 21477,\n  \"mntwins</w>\": 45448,\n  \"mnwild</w>\": 39044,\n  \"mnwx</w>\": 39592,\n  \"mo\": 617,\n  \"mo</w>\": 2080,\n  \"moa</w>\": 33174,\n  \"moana</w>\": 43241,\n  \"mob\": 2818,\n  \"mob</w>\": 12754,\n  \"mobi\": 9451,\n  \"mobil\": 26343,\n  \"mobil</w>\": 29815,\n  \"mobile\": 12935,\n  \"mobile</w>\": 3451,\n  \"mobiles</w>\": 44302,\n  \"mobili\": 20770,\n  \"mobility</w>\": 12546,\n  \"mobilization</w>\": 48916,\n  \"moby</w>\": 47219,\n  \"moc\": 41439,\n  \"moc</w>\": 36992,\n  \"mocha</w>\": 28425,\n  \"mochi</w>\": 47973,\n  \"mock\": 15641,\n  \"mock</w>\": 12759,\n  \"mocked</w>\": 47400,\n  \"mocking\": 28692,\n  \"mocking</w>\": 37870,\n  \"mocks</w>\": 35142,\n  \"mod\": 6362,\n  \"mod</w>\": 10893,\n  \"moda</w>\": 25814,\n  \"modal</w>\": 33157,\n  \"mode\": 20402,\n  \"mode</w>\": 6493,\n  \"model\": 4591,\n  \"model</w>\": 2863,\n  \"modeled</w>\": 39527,\n  \"modeling</w>\": 13706,\n  \"modelling</w>\": 19946,\n  \"models</w>\": 6176,\n  \"moder\": 2894,\n  \"moderate</w>\": 16435,\n  \"moderated</w>\": 27928,\n  \"moderating</w>\": 34242,\n  \"moderator</w>\": 32659,\n  \"modern\": 11706,\n  \"modern</w>\": 4077,\n  \"modernart</w>\": 34417,\n  \"moderni\": 24328,\n  \"modernism</w>\": 39601,\n  \"modernist</w>\": 36773,\n  \"modernization</w>\": 47294,\n  \"modes</w>\": 30454,\n  \"modest</w>\": 25436,\n  \"modi\": 9047,\n  \"modi</w>\": 7774,\n  \"modification</w>\": 37630,\n  \"modified</w>\": 17964,\n  \"modo</w>\": 36820,\n  \"mods</w>\": 23843,\n  \"modu\": 9036,\n  \"modular</w>\": 22437,\n  \"module</w>\": 16757,\n  \"modules</w>\": 30575,\n  \"moe\": 38655,\n  \"moe</w>\": 17938,\n  \"mof\": 30798,\n  \"moff\": 27160,\n  \"mog</w>\": 42362,\n  \"moga\": 41732,\n  \"mogadishu</w>\": 45133,\n  \"mogul</w>\": 41320,\n  \"moh\": 18979,\n  \"moh</w>\": 35388,\n  \"moha\": 46892,\n  \"moham\": 7923,\n  \"mohamed</w>\": 18472,\n  \"mohammad</w>\": 19926,\n  \"mohammed</w>\": 16168,\n  \"mohan\": 26521,\n  \"mohan</w>\": 23586,\n  \"mohawk</w>\": 34942,\n  \"mohd</w>\": 49094,\n  \"mohsin</w>\": 48861,\n  \"moi\": 20691,\n  \"moi</w>\": 21825,\n  \"moil</w>\": 30349,\n  \"moines</w>\": 32091,\n  \"moist\": 19831,\n  \"moist</w>\": 33263,\n  \"moisture</w>\": 20412,\n  \"moisturi\": 25942,\n  \"moj\": 34505,\n  \"moja\": 49055,\n  \"mojito</w>\": 46830,\n  \"mojo</w>\": 25204,\n  \"mok\": 49146,\n  \"mol\": 4246,\n  \"mol</w>\": 31582,\n  \"mold</w>\": 21846,\n  \"molding</w>\": 46274,\n  \"moldova</w>\": 47317,\n  \"mole\": 9927,\n  \"mole</w>\": 23529,\n  \"molecular</w>\": 19370,\n  \"molecule</w>\": 39233,\n  \"molecules</w>\": 35643,\n  \"molina</w>\": 34201,\n  \"mollie</w>\": 48203,\n  \"molly\": 24368,\n  \"molly</w>\": 12573,\n  \"molo\": 41510,\n  \"mology</w>\": 32255,\n  \"molten</w>\": 46071,\n  \"moly</w>\": 47083,\n  \"mom\": 1614,\n  \"mom</w>\": 2543,\n  \"moma</w>\": 33605,\n  \"mombasa</w>\": 40340,\n  \"moment\": 12197,\n  \"moment</w>\": 2495,\n  \"momento</w>\": 30078,\n  \"moments</w>\": 5251,\n  \"momentum</w>\": 15722,\n  \"momlife</w>\": 43825,\n  \"momma</w>\": 14508,\n  \"mommy</w>\": 12456,\n  \"momo\": 48490,\n  \"momo</w>\": 25980,\n  \"moms\": 28446,\n  \"moms</w>\": 10042,\n  \"momsdemand</w>\": 33744,\n  \"mon\": 749,\n  \"mon</w>\": 2173,\n  \"mona</w>\": 19143,\n  \"monaco</w>\": 14938,\n  \"monaghan</w>\": 39797,\n  \"monarch\": 27235,\n  \"monarch</w>\": 22619,\n  \"monarchs</w>\": 36750,\n  \"monarchy</w>\": 47503,\n  \"monaster\": 19422,\n  \"monastery</w>\": 21850,\n  \"monc\": 34847,\n  \"moncton</w>\": 44962,\n  \"mond\": 14522,\n  \"mond</w>\": 4475,\n  \"monday\": 6205,\n  \"monday</w>\": 2098,\n  \"mondaymorning</w>\": 40089,\n  \"mondaymotiv\": 45488,\n  \"mondaymotivation</w>\": 8198,\n  \"mondaymotivaton</w>\": 47034,\n  \"mondays</w>\": 13815,\n  \"monde</w>\": 29339,\n  \"mondo</w>\": 36207,\n  \"monds</w>\": 20317,\n  \"mone</w>\": 25990,\n  \"monet</w>\": 24499,\n  \"monetary</w>\": 26394,\n  \"moneti\": 38056,\n  \"money\": 12743,\n  \"money</w>\": 2327,\n  \"mong</w>\": 43566,\n  \"monger</w>\": 38928,\n  \"mongers</w>\": 27670,\n  \"mongo\": 20680,\n  \"mongolia</w>\": 27144,\n  \"mongolian</w>\": 46335,\n  \"moni\": 46851,\n  \"monia</w>\": 31161,\n  \"monic\": 30893,\n  \"monica</w>\": 13540,\n  \"monit\": 9014,\n  \"monitor</w>\": 10198,\n  \"monitored</w>\": 45828,\n  \"monitoring</w>\": 11030,\n  \"monitors</w>\": 30478,\n  \"monk\": 30557,\n  \"monk</w>\": 16424,\n  \"monkey\": 29597,\n  \"monkey</w>\": 9465,\n  \"monkeys</w>\": 15781,\n  \"monks</w>\": 29090,\n  \"monmouth</w>\": 36929,\n  \"mono\": 8220,\n  \"mono</w>\": 22537,\n  \"monochrome</w>\": 25576,\n  \"monogram</w>\": 39665,\n  \"monologue</w>\": 47776,\n  \"monopoly</w>\": 25241,\n  \"monoxide</w>\": 49314,\n  \"monro\": 45750,\n  \"monroe</w>\": 13625,\n  \"mons</w>\": 19885,\n  \"monsanto</w>\": 37592,\n  \"monsi\": 46677,\n  \"monsieur</w>\": 48879,\n  \"monsoon</w>\": 18872,\n  \"monsta</w>\": 30718,\n  \"monstax</w>\": 45631,\n  \"monste\": 47045,\n  \"monster\": 14454,\n  \"monster</w>\": 6060,\n  \"monsters</w>\": 11546,\n  \"mont\": 5186,\n  \"mont</w>\": 5382,\n  \"montag\": 37202,\n  \"montage</w>\": 32325,\n  \"montal\": 42126,\n  \"montan\": 28405,\n  \"montana</w>\": 11436,\n  \"monte\": 8711,\n  \"monte</w>\": 14667,\n  \"montene\": 28538,\n  \"montenegro</w>\": 30378,\n  \"monter\": 36673,\n  \"monterey</w>\": 23388,\n  \"monterrey</w>\": 45254,\n  \"montess\": 43205,\n  \"montessori</w>\": 45443,\n  \"montgom\": 13852,\n  \"montgomery</w>\": 14951,\n  \"month\": 7680,\n  \"month</w>\": 1924,\n  \"monthly</w>\": 8764,\n  \"months</w>\": 3109,\n  \"monthsary</w>\": 42420,\n  \"monton</w>\": 41961,\n  \"montp\": 39523,\n  \"montre\": 8434,\n  \"montreal</w>\": 9262,\n  \"montrose</w>\": 42347,\n  \"monty\": 43997,\n  \"monty</w>\": 24038,\n  \"monu\": 9748,\n  \"monument</w>\": 12019,\n  \"monumental</w>\": 31297,\n  \"monuments</w>\": 26916,\n  \"mony</w>\": 4117,\n  \"monza</w>\": 40380,\n  \"moo\": 4953,\n  \"moo</w>\": 24626,\n  \"mood\": 42358,\n  \"mood</w>\": 5394,\n  \"moods</w>\": 43727,\n  \"moody</w>\": 17170,\n  \"moom\": 36887,\n  \"moon\": 6334,\n  \"moon</w>\": 3293,\n  \"mooney</w>\": 37942,\n  \"moonlight</w>\": 20001,\n  \"moons</w>\": 29887,\n  \"moonshine</w>\": 46706,\n  \"moor\": 14817,\n  \"moor</w>\": 11877,\n  \"moore\": 28613,\n  \"moore</w>\": 6708,\n  \"moors</w>\": 32577,\n  \"moose\": 37562,\n  \"moose</w>\": 17338,\n  \"moot</w>\": 46895,\n  \"mop</w>\": 33900,\n  \"mopar</w>\": 41166,\n  \"mor\": 657,\n  \"mor</w>\": 18614,\n  \"mora</w>\": 29262,\n  \"moral</w>\": 11246,\n  \"morale</w>\": 39404,\n  \"morales</w>\": 27117,\n  \"morality</w>\": 34133,\n  \"morally</w>\": 42519,\n  \"morals</w>\": 46223,\n  \"moran</w>\": 21557,\n  \"moray</w>\": 44569,\n  \"more\": 5434,\n  \"more</w>\": 750,\n  \"morecam\": 37305,\n  \"morecambe</w>\": 43414,\n  \"mored</w>\": 20195,\n  \"moreland</w>\": 44135,\n  \"moreno</w>\": 24826,\n  \"morethan\": 30889,\n  \"morg\": 34284,\n  \"morgan\": 15432,\n  \"morgan</w>\": 6075,\n  \"morgen</w>\": 35106,\n  \"mori\": 25710,\n  \"mori</w>\": 29514,\n  \"moris\": 43131,\n  \"moritz</w>\": 45594,\n  \"morley</w>\": 40439,\n  \"mormon</w>\": 27715,\n  \"morn</w>\": 22393,\n  \"mornin</w>\": 28327,\n  \"morning\": 10769,\n  \"morning</w>\": 1119,\n  \"mornings</w>\": 12106,\n  \"moro</w>\": 31613,\n  \"moroc\": 11996,\n  \"moroccan</w>\": 27546,\n  \"morocco</w>\": 15228,\n  \"moron</w>\": 31875,\n  \"morons</w>\": 46477,\n  \"morow</w>\": 40779,\n  \"morph\": 23915,\n  \"morph</w>\": 41700,\n  \"morphe\": 38978,\n  \"morpho\": 38622,\n  \"morrha\": 43044,\n  \"morri\": 9876,\n  \"morris\": 22560,\n  \"morris</w>\": 9090,\n  \"morrison\": 40961,\n  \"morrison</w>\": 14094,\n  \"morrisons</w>\": 40965,\n  \"morrissey</w>\": 30040,\n  \"morro</w>\": 48363,\n  \"morrow</w>\": 21611,\n  \"mors</w>\": 13064,\n  \"morse</w>\": 25282,\n  \"mort\": 24257,\n  \"mort</w>\": 30583,\n  \"mortal\": 31883,\n  \"mortal</w>\": 14680,\n  \"mortality</w>\": 20347,\n  \"mortar</w>\": 27258,\n  \"mortg\": 12069,\n  \"mortgage</w>\": 13988,\n  \"mortgages</w>\": 45391,\n  \"mortimer</w>\": 47836,\n  \"morton</w>\": 20698,\n  \"morty</w>\": 37391,\n  \"mory</w>\": 22633,\n  \"mos\": 28658,\n  \"mos</w>\": 9593,\n  \"mosa\": 14164,\n  \"mosa</w>\": 23809,\n  \"mosaic</w>\": 17506,\n  \"mosch\": 47003,\n  \"mosco\": 9840,\n  \"moscow</w>\": 10371,\n  \"moseley</w>\": 47080,\n  \"moses</w>\": 18451,\n  \"mosley</w>\": 46228,\n  \"mosqu\": 15215,\n  \"mosque</w>\": 12694,\n  \"mosques</w>\": 41214,\n  \"mosquit\": 39699,\n  \"mosquito</w>\": 25083,\n  \"mosquitoes</w>\": 41870,\n  \"moss\": 25107,\n  \"moss</w>\": 12815,\n  \"most\": 7034,\n  \"most</w>\": 1096,\n  \"mostly</w>\": 8829,\n  \"mosul</w>\": 29165,\n  \"mot\": 16352,\n  \"mot</w>\": 15452,\n  \"mota</w>\": 42499,\n  \"motd</w>\": 46232,\n  \"motel</w>\": 26191,\n  \"moth\": 33208,\n  \"moth</w>\": 11736,\n  \"mother\": 7455,\n  \"mother</w>\": 3050,\n  \"motherhood</w>\": 32274,\n  \"motherland</w>\": 46774,\n  \"mothers</w>\": 10546,\n  \"mothersday</w>\": 15583,\n  \"motherwell</w>\": 48104,\n  \"moths</w>\": 29086,\n  \"moti\": 38210,\n  \"motif</w>\": 35373,\n  \"motion\": 32139,\n  \"motion</w>\": 7860,\n  \"motiv\": 3183,\n  \"motivate</w>\": 26771,\n  \"motivated</w>\": 16521,\n  \"motivates</w>\": 44684,\n  \"motivating</w>\": 37720,\n  \"motivation\": 26117,\n  \"motivation</w>\": 4193,\n  \"motivational\": 32832,\n  \"motivational</w>\": 20472,\n  \"motivationmonday</w>\": 28703,\n  \"motive</w>\": 36669,\n  \"motley</w>\": 42553,\n  \"motm</w>\": 41192,\n  \"moto\": 10646,\n  \"moto</w>\": 11431,\n  \"motocross</w>\": 34562,\n  \"motogp</w>\": 16615,\n  \"motor\": 3975,\n  \"motor</w>\": 7659,\n  \"motorbike</w>\": 33341,\n  \"motorcycle</w>\": 10297,\n  \"motorcycles</w>\": 24869,\n  \"motoring</w>\": 44491,\n  \"motorists</w>\": 32766,\n  \"motorola</w>\": 33738,\n  \"motors</w>\": 14989,\n  \"motorsport</w>\": 18371,\n  \"motorsports</w>\": 24264,\n  \"motorway</w>\": 31808,\n  \"motown</w>\": 32685,\n  \"mott\": 44570,\n  \"mott</w>\": 21708,\n  \"motto</w>\": 23338,\n  \"mou\": 2809,\n  \"mou</w>\": 25289,\n  \"moud</w>\": 37698,\n  \"moul\": 25725,\n  \"mould</w>\": 36743,\n  \"moulin</w>\": 47656,\n  \"moun\": 2023,\n  \"mound</w>\": 21414,\n  \"mount\": 20553,\n  \"mount</w>\": 5532,\n  \"mountain\": 14547,\n  \"mountain</w>\": 3965,\n  \"mountaine\": 24841,\n  \"mountaineer</w>\": 49255,\n  \"mountains</w>\": 5873,\n  \"mounted</w>\": 17897,\n  \"mounting</w>\": 29910,\n  \"mounts</w>\": 36767,\n  \"mour\": 9053,\n  \"mour</w>\": 42446,\n  \"moured</w>\": 29555,\n  \"mourinho</w>\": 18536,\n  \"mourn</w>\": 33592,\n  \"mourning</w>\": 24169,\n  \"mourns</w>\": 42811,\n  \"mous\": 24837,\n  \"mous</w>\": 17425,\n  \"mouse\": 33032,\n  \"mouse</w>\": 9301,\n  \"mousse</w>\": 31869,\n  \"moustache</w>\": 32795,\n  \"mouth\": 15152,\n  \"mouth</w>\": 4932,\n  \"mouths</w>\": 38518,\n  \"mov</w>\": 23950,\n  \"move\": 16624,\n  \"move</w>\": 2783,\n  \"moved</w>\": 6997,\n  \"movember</w>\": 23474,\n  \"movement</w>\": 5208,\n  \"movements</w>\": 19665,\n  \"mover</w>\": 37673,\n  \"movers</w>\": 33957,\n  \"moves</w>\": 6880,\n  \"movi\": 1707,\n  \"movic</w>\": 43838,\n  \"movie\": 11247,\n  \"movie</w>\": 2016,\n  \"movies</w>\": 4772,\n  \"moving\": 32160,\n  \"moving</w>\": 3584,\n  \"mow\": 31006,\n  \"mow</w>\": 36329,\n  \"mower</w>\": 30895,\n  \"mowing</w>\": 46424,\n  \"mowx</w>\": 44263,\n  \"moy\": 27276,\n  \"moy</w>\": 34205,\n  \"moyes</w>\": 37119,\n  \"moz\": 14761,\n  \"moz</w>\": 43738,\n  \"mozam\": 26648,\n  \"mozambique</w>\": 28831,\n  \"mozart</w>\": 22132,\n  \"mozz\": 26317,\n  \"mozzarella</w>\": 27845,\n  \"mp\": 1037,\n  \"mp</w>\": 1246,\n  \"mpa</w>\": 30749,\n  \"mpc</w>\": 38560,\n  \"mpd</w>\": 33814,\n  \"mped</w>\": 28134,\n  \"mper</w>\": 22803,\n  \"mpg\": 39830,\n  \"mpg</w>\": 37454,\n  \"mpgvip</w>\": 42149,\n  \"mph</w>\": 5306,\n  \"mpi</w>\": 43263,\n  \"mping</w>\": 27999,\n  \"mple</w>\": 21139,\n  \"mplo\": 47071,\n  \"mpls</w>\": 34298,\n  \"mpo</w>\": 33674,\n  \"mpp</w>\": 39570,\n  \"mps</w>\": 5504,\n  \"mption</w>\": 9717,\n  \"mpton</w>\": 27448,\n  \"mpu\": 47156,\n  \"mpus</w>\": 25864,\n  \"mpy</w>\": 17192,\n  \"mq\": 19103,\n  \"mqm</w>\": 24687,\n  \"mr\": 3139,\n  \"mr</w>\": 1982,\n  \"mra\": 44568,\n  \"mrc</w>\": 25897,\n  \"mri</w>\": 24773,\n  \"mrs\": 25003,\n  \"mrs</w>\": 4255,\n  \"mrt</w>\": 30256,\n  \"mru</w>\": 22370,\n  \"mrw</w>\": 15303,\n  \"ms\": 3525,\n  \"ms</w>\": 988,\n  \"msa</w>\": 36306,\n  \"msc\": 31826,\n  \"msc</w>\": 20529,\n  \"msd\": 25804,\n  \"msd</w>\": 36407,\n  \"msdhoni</w>\": 32850,\n  \"msf</w>\": 36239,\n  \"msg\": 44430,\n  \"msg</w>\": 10928,\n  \"msh\": 41751,\n  \"msi\": 43597,\n  \"msi</w>\": 45278,\n  \"msk\": 38501,\n  \"msl</w>\": 42736,\n  \"msm</w>\": 22210,\n  \"msn\": 18824,\n  \"msn</w>\": 41042,\n  \"msnbc</w>\": 20245,\n  \"mson\": 27773,\n  \"mson</w>\": 12298,\n  \"msp\": 41445,\n  \"msp</w>\": 22318,\n  \"mss\": 42136,\n  \"mss</w>\": 48610,\n  \"mst</w>\": 26335,\n  \"msu\": 26763,\n  \"msu</w>\": 17298,\n  \"mswx</w>\": 42957,\n  \"msy</w>\": 43919,\n  \"mt\": 4252,\n  \"mt</w>\": 3284,\n  \"mta</w>\": 28691,\n  \"mtb\": 48306,\n  \"mtb</w>\": 18747,\n  \"mtc</w>\": 42482,\n  \"mtg\": 49142,\n  \"mtg</w>\": 13648,\n  \"mth</w>\": 48151,\n  \"mtl</w>\": 22135,\n  \"mtn\": 26041,\n  \"mtn</w>\": 18953,\n  \"mtr</w>\": 46650,\n  \"mts</w>\": 38751,\n  \"mtv\": 8099,\n  \"mtv</w>\": 12555,\n  \"mtvbr\": 47258,\n  \"mtvhottest</w>\": 16751,\n  \"mtvstars</w>\": 19948,\n  \"mu\": 670,\n  \"mu</w>\": 6411,\n  \"mua</w>\": 21395,\n  \"muay\": 44910,\n  \"muaythai</w>\": 47763,\n  \"mubarak</w>\": 17957,\n  \"muc</w>\": 49115,\n  \"much\": 14300,\n  \"much</w>\": 1238,\n  \"mucha</w>\": 42191,\n  \"muchas</w>\": 26278,\n  \"mucho</w>\": 19864,\n  \"muck\": 44731,\n  \"muck</w>\": 45330,\n  \"mud\": 17491,\n  \"mud</w>\": 11673,\n  \"mudder</w>\": 49104,\n  \"muddy</w>\": 21524,\n  \"mue\": 44383,\n  \"mue</w>\": 40717,\n  \"mueller\": 46863,\n  \"mueller</w>\": 14719,\n  \"muen\": 48646,\n  \"muer\": 33840,\n  \"muf\": 33852,\n  \"mufc</w>\": 9013,\n  \"muffin</w>\": 22696,\n  \"muffins</w>\": 25922,\n  \"mufti</w>\": 44930,\n  \"mug\": 16339,\n  \"mug</w>\": 9722,\n  \"mugabe</w>\": 36441,\n  \"mughal</w>\": 37508,\n  \"mugs</w>\": 22852,\n  \"mugshot</w>\": 40028,\n  \"muh\": 36335,\n  \"muh</w>\": 46475,\n  \"muham\": 10043,\n  \"muhammad</w>\": 12259,\n  \"muir\": 44650,\n  \"muir</w>\": 24745,\n  \"muj\": 44635,\n  \"muk\": 17327,\n  \"muk</w>\": 32600,\n  \"mukher\": 34575,\n  \"mukherjee</w>\": 37862,\n  \"mul\": 1899,\n  \"mul</w>\": 43193,\n  \"mula</w>\": 40937,\n  \"mulator</w>\": 17463,\n  \"mulberry</w>\": 39221,\n  \"mule</w>\": 28695,\n  \"mull\": 17313,\n  \"mull</w>\": 35310,\n  \"mulled</w>\": 44641,\n  \"mullen</w>\": 30797,\n  \"muller</w>\": 33956,\n  \"mullet</w>\": 35010,\n  \"mulligan</w>\": 44336,\n  \"mullins</w>\": 41265,\n  \"mult\": 34219,\n  \"multi\": 3947,\n  \"multi</w>\": 6400,\n  \"multic\": 21683,\n  \"multicul\": 28004,\n  \"multicultural</w>\": 34667,\n  \"multil\": 27975,\n  \"multimedia</w>\": 27977,\n  \"multin\": 38996,\n  \"multinational</w>\": 46540,\n  \"multip\": 40314,\n  \"multiplayer</w>\": 27460,\n  \"multiple</w>\": 6470,\n  \"multipurpose</w>\": 47665,\n  \"multit\": 27814,\n  \"multitasking</w>\": 48684,\n  \"mulus</w>\": 26180,\n  \"mum\": 15565,\n  \"mum</w>\": 4030,\n  \"mumb\": 5850,\n  \"mumbai\": 24279,\n  \"mumbai</w>\": 6971,\n  \"mumford</w>\": 46184,\n  \"mummy</w>\": 16301,\n  \"mums</w>\": 17868,\n  \"mun\": 2617,\n  \"mun</w>\": 21059,\n  \"muna</w>\": 48424,\n  \"munch\": 23587,\n  \"munch</w>\": 33299,\n  \"munchies</w>\": 44324,\n  \"munchkin</w>\": 41305,\n  \"mund</w>\": 14244,\n  \"mundo</w>\": 20990,\n  \"muni\": 27327,\n  \"muni</w>\": 39795,\n  \"munich</w>\": 13526,\n  \"munici\": 12159,\n  \"municipal\": 43667,\n  \"municipal</w>\": 16600,\n  \"municipality</w>\": 29987,\n  \"munition</w>\": 32668,\n  \"munro</w>\": 36501,\n  \"munster</w>\": 27201,\n  \"mup</w>\": 21966,\n  \"muppet</w>\": 40598,\n  \"muppets</w>\": 40187,\n  \"mups</w>\": 42195,\n  \"mur\": 2144,\n  \"mur</w>\": 18293,\n  \"mura\": 45176,\n  \"mural</w>\": 12315,\n  \"murals</w>\": 31499,\n  \"murder\": 28136,\n  \"murder</w>\": 5787,\n  \"murdered</w>\": 13158,\n  \"murderer</w>\": 26956,\n  \"murderers</w>\": 48472,\n  \"murdering</w>\": 36055,\n  \"murders</w>\": 22409,\n  \"murdoch</w>\": 29037,\n  \"murphy\": 48976,\n  \"murphy</w>\": 8914,\n  \"murray\": 31978,\n  \"murray</w>\": 7513,\n  \"murs</w>\": 38783,\n  \"mus\": 2198,\n  \"mus</w>\": 8103,\n  \"musa</w>\": 30540,\n  \"musc\": 5696,\n  \"muscat</w>\": 33322,\n  \"muscle\": 27323,\n  \"muscle</w>\": 9269,\n  \"muscles</w>\": 16786,\n  \"muscular</w>\": 30606,\n  \"muse\": 2369,\n  \"muse</w>\": 15686,\n  \"museo</w>\": 36457,\n  \"muses</w>\": 48243,\n  \"museu\": 27087,\n  \"museum\": 15602,\n  \"museum</w>\": 2786,\n  \"museums</w>\": 15542,\n  \"museumweek</w>\": 37996,\n  \"mush\": 7635,\n  \"mushroom</w>\": 13011,\n  \"mushrooms</w>\": 14730,\n  \"musi\": 15628,\n  \"music\": 4110,\n  \"music</w>\": 1179,\n  \"musica</w>\": 26668,\n  \"musical\": 36002,\n  \"musical</w>\": 5173,\n  \"musically</w>\": 48893,\n  \"musicals</w>\": 36974,\n  \"musichistory</w>\": 37890,\n  \"musician</w>\": 11179,\n  \"musicians</w>\": 12498,\n  \"musicislife</w>\": 43311,\n  \"musicmonday</w>\": 35887,\n  \"musicvideo</w>\": 26764,\n  \"musik</w>\": 32986,\n  \"musings</w>\": 44961,\n  \"musique</w>\": 42250,\n  \"musk\": 32143,\n  \"musk</w>\": 19063,\n  \"muskete\": 32775,\n  \"musketeers</w>\": 37993,\n  \"musko\": 34987,\n  \"muskoka</w>\": 40832,\n  \"musli\": 4958,\n  \"muslim\": 43795,\n  \"muslim</w>\": 7060,\n  \"muslims</w>\": 10513,\n  \"muss\": 41493,\n  \"mussels</w>\": 33393,\n  \"must\": 6783,\n  \"must</w>\": 2048,\n  \"mustache</w>\": 23451,\n  \"mustaf\": 23596,\n  \"mustafa</w>\": 29000,\n  \"mustang\": 42361,\n  \"mustang</w>\": 13309,\n  \"mustangs</w>\": 22500,\n  \"mustard</w>\": 15794,\n  \"muster</w>\": 47361,\n  \"mustread</w>\": 28978,\n  \"mut\": 12598,\n  \"mut</w>\": 22839,\n  \"mutant</w>\": 28384,\n  \"mutation</w>\": 38626,\n  \"mutations</w>\": 39651,\n  \"mute</w>\": 31252,\n  \"muted</w>\": 48028,\n  \"muth</w>\": 34280,\n  \"mutil\": 39950,\n  \"mutt</w>\": 45924,\n  \"mutu\": 17574,\n  \"mutual</w>\": 15055,\n  \"mutuals</w>\": 31158,\n  \"muy</w>\": 44625,\n  \"mv\": 10580,\n  \"mv</w>\": 8269,\n  \"mvc</w>\": 40549,\n  \"mvp</w>\": 8905,\n  \"mw\": 16725,\n  \"mw</w>\": 11206,\n  \"mwc</w>\": 24289,\n  \"mwf</w>\": 48565,\n  \"mx\": 21947,\n  \"mx</w>\": 9575,\n  \"my\": 1152,\n  \"my</w>\": 607,\n  \"mya</w>\": 31401,\n  \"myal\": 42735,\n  \"myan\": 13761,\n  \"myanmar</w>\": 14764,\n  \"myart</w>\": 38826,\n  \"myco\": 48362,\n  \"mydayin\": 41896,\n  \"mydayinla</w>\": 42801,\n  \"mydubai</w>\": 43475,\n  \"mye\": 27551,\n  \"myel\": 40084,\n  \"myers</w>\": 15993,\n  \"myjaps</w>\": 47939,\n  \"myle\": 43700,\n  \"myles</w>\": 25511,\n  \"mylife</w>\": 30537,\n  \"mylittle\": 37757,\n  \"mylittlepony</w>\": 45107,\n  \"myo\": 16206,\n  \"myr\": 20272,\n  \"myra</w>\": 35694,\n  \"myri\": 34972,\n  \"myrt\": 47785,\n  \"myrtle</w>\": 27768,\n  \"mys</w>\": 11724,\n  \"myself</w>\": 3245,\n  \"mysore</w>\": 44924,\n  \"myspace</w>\": 41382,\n  \"myster\": 4669,\n  \"mysteries</w>\": 20605,\n  \"mysterious</w>\": 12650,\n  \"mystery\": 39828,\n  \"mystery</w>\": 6711,\n  \"mysti\": 28711,\n  \"mystic\": 36264,\n  \"mystic</w>\": 23722,\n  \"mystical</w>\": 34122,\n  \"myth\": 20322,\n  \"myth</w>\": 13878,\n  \"mythical</w>\": 34377,\n  \"mytho\": 43857,\n  \"mythology</w>\": 22496,\n  \"myths</w>\": 18675,\n  \"mz\": 29509,\n  \"mz</w>\": 33400,\n  \"mzan\": 36322,\n  \"mzansi</w>\": 43301,\n  \"mÃ¡\": 36842,\n  \"mÃ©\": 21890,\n  \"mÃ©xico</w>\": 46159,\n  \"mÃ¼\": 28142,\n  \"mÃ¼n\": 41235,\n  \"n\": 77,\n  \"n</w>\": 333,\n  \"na\": 1097,\n  \"na</w>\": 1272,\n  \"naa</w>\": 37738,\n  \"naacp</w>\": 32176,\n  \"nab\": 6951,\n  \"nab</w>\": 19440,\n  \"nabe\": 35111,\n  \"naby</w>\": 24800,\n  \"nac\": 14557,\n  \"nac</w>\": 18950,\n  \"nach\": 12168,\n  \"nach</w>\": 43622,\n  \"nacho</w>\": 35647,\n  \"nachos</w>\": 32847,\n  \"nacht</w>\": 37261,\n  \"nacional</w>\": 38782,\n  \"nad\": 6204,\n  \"nad</w>\": 43928,\n  \"nada</w>\": 31683,\n  \"nadal</w>\": 20814,\n  \"nade\": 24908,\n  \"nadi\": 30512,\n  \"nadia</w>\": 27487,\n  \"nadine</w>\": 23356,\n  \"nadu</w>\": 20936,\n  \"nae</w>\": 19374,\n  \"naf\": 16161,\n  \"naf</w>\": 45956,\n  \"nafta</w>\": 43123,\n  \"nag\": 6694,\n  \"nag</w>\": 23902,\n  \"naga\": 45953,\n  \"naga</w>\": 38997,\n  \"nagar</w>\": 17490,\n  \"nage</w>\": 41219,\n  \"nago\": 38349,\n  \"nagoya</w>\": 43303,\n  \"nagpur</w>\": 43328,\n  \"nah\": 26421,\n  \"nah</w>\": 11129,\n  \"nahi</w>\": 35244,\n  \"nai\": 6230,\n  \"nai</w>\": 10692,\n  \"naia</w>\": 31340,\n  \"naidu</w>\": 42429,\n  \"naija</w>\": 16326,\n  \"naik</w>\": 34424,\n  \"nail\": 19459,\n  \"nail</w>\": 9059,\n  \"nailart</w>\": 43532,\n  \"nailed</w>\": 19035,\n  \"nails</w>\": 8469,\n  \"nair</w>\": 27107,\n  \"naira</w>\": 39450,\n  \"naire</w>\": 48892,\n  \"nairobi</w>\": 17756,\n  \"nais\": 46396,\n  \"naissance</w>\": 44761,\n  \"naive</w>\": 43362,\n  \"naj\": 30985,\n  \"naji\": 32589,\n  \"nak\": 9248,\n  \"nak</w>\": 25550,\n  \"naked\": 46371,\n  \"naked</w>\": 11478,\n  \"naku\": 39864,\n  \"nal\": 14132,\n  \"nal</w>\": 3119,\n  \"nale</w>\": 27198,\n  \"nall</w>\": 32869,\n  \"nally</w>\": 26158,\n  \"nam\": 1410,\n  \"nam</w>\": 12344,\n  \"nama</w>\": 39586,\n  \"naman</w>\": 27635,\n  \"namaste</w>\": 35549,\n  \"name\": 18160,\n  \"name</w>\": 1981,\n  \"named</w>\": 3194,\n  \"nameis\": 40831,\n  \"nament</w>\": 3916,\n  \"naments</w>\": 16540,\n  \"names</w>\": 6130,\n  \"namesake</w>\": 41298,\n  \"nami\": 20393,\n  \"namibia</w>\": 23731,\n  \"naming</w>\": 19367,\n  \"namjoon</w>\": 31986,\n  \"namm</w>\": 35524,\n  \"namo\": 46013,\n  \"namo</w>\": 24854,\n  \"nan\": 4375,\n  \"nan</w>\": 7750,\n  \"nana</w>\": 18761,\n  \"nanaimo</w>\": 40518,\n  \"nancy\": 21511,\n  \"nancy</w>\": 11425,\n  \"nand\": 20435,\n  \"nandez</w>\": 12764,\n  \"nando\": 46044,\n  \"nang\": 48148,\n  \"nani</w>\": 27980,\n  \"nanny</w>\": 31104,\n  \"nano\": 15835,\n  \"nano</w>\": 22006,\n  \"nanop\": 34177,\n  \"nanotechnology</w>\": 42235,\n  \"nanow\": 46734,\n  \"nant</w>\": 22526,\n  \"nantes</w>\": 47533,\n  \"nantucket</w>\": 41573,\n  \"nao</w>\": 39319,\n  \"naom\": 34955,\n  \"naomi</w>\": 20173,\n  \"nap\": 6568,\n  \"nap</w>\": 11012,\n  \"napa</w>\": 20545,\n  \"napier</w>\": 40875,\n  \"napkin</w>\": 38930,\n  \"naples</w>\": 23560,\n  \"napo\": 18715,\n  \"napol\": 20122,\n  \"napoleon</w>\": 24969,\n  \"napoli</w>\": 22445,\n  \"napp\": 11359,\n  \"napping</w>\": 37657,\n  \"naps</w>\": 31317,\n  \"naq\": 46453,\n  \"nar\": 2977,\n  \"nar</w>\": 20145,\n  \"nara</w>\": 33823,\n  \"narcis\": 25229,\n  \"narcissi\": 35442,\n  \"narco\": 38461,\n  \"nard</w>\": 18216,\n  \"nare\": 34853,\n  \"naren\": 8468,\n  \"narendr\": 9807,\n  \"narendra</w>\": 25848,\n  \"narendramodi</w>\": 9853,\n  \"narnia</w>\": 48693,\n  \"narr\": 11845,\n  \"narrated</w>\": 43609,\n  \"narrative</w>\": 15933,\n  \"narratives</w>\": 35117,\n  \"narrator</w>\": 46529,\n  \"narrow\": 24006,\n  \"narrow</w>\": 16652,\n  \"narrowly</w>\": 29747,\n  \"naruto</w>\": 22732,\n  \"nas\": 3090,\n  \"nas</w>\": 15250,\n  \"nasa</w>\": 6841,\n  \"nasal</w>\": 42853,\n  \"nascar\": 25723,\n  \"nascar</w>\": 7868,\n  \"nasdaq</w>\": 26629,\n  \"nash\": 6771,\n  \"nash</w>\": 13620,\n  \"nasheed</w>\": 49176,\n  \"nashgrier</w>\": 33372,\n  \"nashville\": 45356,\n  \"nashville</w>\": 8585,\n  \"nasi</w>\": 47987,\n  \"nasir</w>\": 47509,\n  \"nassau</w>\": 34048,\n  \"nasser</w>\": 43559,\n  \"nasty\": 32930,\n  \"nasty</w>\": 8709,\n  \"nat\": 1276,\n  \"nat</w>\": 11310,\n  \"nata</w>\": 39392,\n  \"natal</w>\": 28516,\n  \"natali\": 20296,\n  \"natalia</w>\": 32978,\n  \"natalie\": 36634,\n  \"natalie</w>\": 13595,\n  \"natash\": 48701,\n  \"natasha</w>\": 23093,\n  \"nate\": 26643,\n  \"nate</w>\": 7587,\n  \"natgeo\": 33009,\n  \"natgeo</w>\": 25046,\n  \"nath\": 22203,\n  \"nath</w>\": 19843,\n  \"nathan\": 13028,\n  \"nathan</w>\": 9711,\n  \"nathanfillion</w>\": 47422,\n  \"nathaniel</w>\": 32667,\n  \"nati\": 1060,\n  \"nati</w>\": 13384,\n  \"natic</w>\": 44944,\n  \"natin</w>\": 44358,\n  \"nation\": 2317,\n  \"nation</w>\": 2670,\n  \"national\": 3126,\n  \"national</w>\": 1362,\n  \"nationalbestfriend\": 42222,\n  \"nationaldogday</w>\": 32227,\n  \"nationalism</w>\": 29867,\n  \"nationalist</w>\": 25058,\n  \"nationality</w>\": 44451,\n  \"nationally</w>\": 15130,\n  \"nationalpark</w>\": 33060,\n  \"nationalparks</w>\": 41204,\n  \"nationals</w>\": 10784,\n  \"nationaltrust</w>\": 34051,\n  \"nations</w>\": 7654,\n  \"nationwide</w>\": 13795,\n  \"native\": 20639,\n  \"native</w>\": 4562,\n  \"natives</w>\": 36060,\n  \"nativity</w>\": 33988,\n  \"natl\": 39225,\n  \"natl</w>\": 34465,\n  \"nato</w>\": 13139,\n  \"nats</w>\": 21106,\n  \"natu\": 2775,\n  \"natur\": 6800,\n  \"natural\": 13198,\n  \"natural</w>\": 3288,\n  \"naturally</w>\": 12995,\n  \"naturals</w>\": 44686,\n  \"nature\": 9382,\n  \"nature</w>\": 2625,\n  \"naturelovers</w>\": 41514,\n  \"naturephotography</w>\": 22533,\n  \"natures</w>\": 15616,\n  \"natureuk</w>\": 46193,\n  \"nau\": 5955,\n  \"nau</w>\": 32878,\n  \"naught</w>\": 41001,\n  \"naughty\": 47255,\n  \"naughty</w>\": 15101,\n  \"nautical</w>\": 31660,\n  \"nav\": 3413,\n  \"nav</w>\": 25308,\n  \"navajo</w>\": 35523,\n  \"naval\": 44725,\n  \"naval</w>\": 13273,\n  \"navar\": 24848,\n  \"navarro</w>\": 37104,\n  \"nave\": 42704,\n  \"naveen</w>\": 43837,\n  \"naver</w>\": 32534,\n  \"navi\": 16159,\n  \"navi</w>\": 44848,\n  \"navig\": 12507,\n  \"navigate</w>\": 24400,\n  \"navigating</w>\": 33134,\n  \"navigation</w>\": 20148,\n  \"navigator</w>\": 38910,\n  \"navis</w>\": 36377,\n  \"navratri</w>\": 45428,\n  \"navy\": 28414,\n  \"navy</w>\": 5598,\n  \"naw\": 16259,\n  \"naw</w>\": 30500,\n  \"nawaz\": 49161,\n  \"nawaz</w>\": 19523,\n  \"nax\": 38299,\n  \"nay\": 11704,\n  \"nay</w>\": 16182,\n  \"naya</w>\": 38917,\n  \"nayanth\": 38157,\n  \"nayanthara</w>\": 45184,\n  \"naz\": 6363,\n  \"naz</w>\": 35534,\n  \"nazi</w>\": 12972,\n  \"nazis</w>\": 21778,\n  \"nb\": 6459,\n  \"nb</w>\": 6813,\n  \"nba\": 22524,\n  \"nba</w>\": 5139,\n  \"nbad\": 43458,\n  \"nbaf\": 30127,\n  \"nbafinals</w>\": 33803,\n  \"nbap\": 41956,\n  \"nbaplayoffs</w>\": 43860,\n  \"nbat\": 46291,\n  \"nbc\": 9352,\n  \"nbc</w>\": 8799,\n  \"nbd</w>\": 24526,\n  \"nbl</w>\": 42652,\n  \"nc\": 5021,\n  \"nc</w>\": 4911,\n  \"nca\": 6921,\n  \"ncaa</w>\": 9418,\n  \"ncbd</w>\": 47221,\n  \"ncc\": 33195,\n  \"ncc</w>\": 36686,\n  \"ncds</w>\": 47573,\n  \"ncfc</w>\": 31274,\n  \"ncis</w>\": 33617,\n  \"ncpol</w>\": 40562,\n  \"ncr</w>\": 38474,\n  \"ncs</w>\": 42689,\n  \"nct\": 27723,\n  \"nct</w>\": 20319,\n  \"ncwx</w>\": 36166,\n  \"nd\": 5625,\n  \"nd</w>\": 1764,\n  \"nda</w>\": 32862,\n  \"ndc</w>\": 47564,\n  \"ndi</w>\": 48229,\n  \"ndp</w>\": 19257,\n  \"nds</w>\": 31347,\n  \"ndtv</w>\": 26261,\n  \"ne\": 557,\n  \"ne</w>\": 1422,\n  \"nea</w>\": 24068,\n  \"neal\": 33652,\n  \"neal</w>\": 16730,\n  \"near\": 11296,\n  \"near</w>\": 2252,\n  \"nearby</w>\": 13314,\n  \"nearest</w>\": 18985,\n  \"nearing</w>\": 26571,\n  \"nearly</w>\": 4816,\n  \"nears</w>\": 37710,\n  \"neat\": 43201,\n  \"neat</w>\": 15465,\n  \"neath</w>\": 18315,\n  \"neau</w>\": 31559,\n  \"neb\": 40209,\n  \"nebra\": 13371,\n  \"nebraska</w>\": 14565,\n  \"nebu\": 49295,\n  \"nebula</w>\": 22532,\n  \"nec\": 25109,\n  \"nec</w>\": 22992,\n  \"necess\": 6961,\n  \"necessarily</w>\": 25853,\n  \"necessary</w>\": 8955,\n  \"necessities</w>\": 43483,\n  \"necessity</w>\": 33163,\n  \"neck\": 6066,\n  \"neck</w>\": 6906,\n  \"necklace</w>\": 7385,\n  \"necklaces</w>\": 32276,\n  \"necks</w>\": 29701,\n  \"nectar</w>\": 33683,\n  \"ned\": 16030,\n  \"ned</w>\": 1369,\n  \"nederland</w>\": 49058,\n  \"nee\": 20494,\n  \"nee</w>\": 10601,\n  \"need\": 3229,\n  \"need</w>\": 1262,\n  \"needed</w>\": 4049,\n  \"needing</w>\": 22894,\n  \"needle\": 44490,\n  \"needle</w>\": 19886,\n  \"needles</w>\": 27250,\n  \"needless</w>\": 39984,\n  \"needs</w>\": 2536,\n  \"needy</w>\": 30150,\n  \"neel\": 33092,\n  \"neel</w>\": 46043,\n  \"neer\": 34245,\n  \"nees</w>\": 47248,\n  \"neet</w>\": 46362,\n  \"neg\": 5513,\n  \"negan</w>\": 42623,\n  \"negative</w>\": 8869,\n  \"negatively</w>\": 40254,\n  \"negativity</w>\": 34658,\n  \"neglec\": 18827,\n  \"neglect</w>\": 33680,\n  \"neglected</w>\": 31893,\n  \"negli\": 32594,\n  \"negligence</w>\": 45658,\n  \"negoti\": 10216,\n  \"negotiate</w>\": 32969,\n  \"negotiating</w>\": 35510,\n  \"negotiation</w>\": 36504,\n  \"negotiations</w>\": 20433,\n  \"negr\": 42190,\n  \"negro</w>\": 26554,\n  \"neh\": 40416,\n  \"neh</w>\": 41697,\n  \"neha</w>\": 44463,\n  \"nehru</w>\": 30316,\n  \"nei\": 9366,\n  \"neigh\": 4061,\n  \"neighb\": 6534,\n  \"neighbor\": 7759,\n  \"neighbor</w>\": 14485,\n  \"neighborhood</w>\": 9471,\n  \"neighborhoods</w>\": 26713,\n  \"neighboring</w>\": 44754,\n  \"neighbors</w>\": 13037,\n  \"neighbour\": 15858,\n  \"neighbour</w>\": 23719,\n  \"neighbourhood</w>\": 20312,\n  \"neighbours</w>\": 17594,\n  \"neil\": 13591,\n  \"neil</w>\": 8030,\n  \"neilhimself</w>\": 45682,\n  \"neill</w>\": 19324,\n  \"neither</w>\": 14398,\n  \"nek</w>\": 47727,\n  \"neko</w>\": 47066,\n  \"nel\": 5476,\n  \"nel</w>\": 2693,\n  \"nell\": 27081,\n  \"nell</w>\": 8117,\n  \"nelly</w>\": 21166,\n  \"nels</w>\": 19296,\n  \"nelson\": 24774,\n  \"nelson</w>\": 8586,\n  \"nem</w>\": 45153,\n  \"neman</w>\": 48553,\n  \"neme\": 30993,\n  \"nemesis</w>\": 37811,\n  \"nemo</w>\": 30441,\n  \"nen\": 17817,\n  \"nen</w>\": 15451,\n  \"nene</w>\": 44167,\n  \"neo\": 14562,\n  \"neo</w>\": 11017,\n  \"neon\": 21043,\n  \"neon</w>\": 13919,\n  \"neonatal</w>\": 46464,\n  \"neop\": 49069,\n  \"nep\": 20739,\n  \"nep</w>\": 41960,\n  \"nepal\": 25597,\n  \"nepal</w>\": 10066,\n  \"nepali</w>\": 47579,\n  \"neph\": 27926,\n  \"nephe\": 41810,\n  \"nephew</w>\": 11689,\n  \"nephews</w>\": 43747,\n  \"nephro\": 43054,\n  \"neptune</w>\": 30566,\n  \"ner\": 2064,\n  \"ner</w>\": 998,\n  \"nerd\": 24452,\n  \"nerd</w>\": 12273,\n  \"nerds</w>\": 22609,\n  \"nerdy</w>\": 33124,\n  \"nered</w>\": 17583,\n  \"nerf</w>\": 42914,\n  \"nering</w>\": 20226,\n  \"nero</w>\": 29048,\n  \"ners</w>\": 2129,\n  \"nerve</w>\": 18571,\n  \"nerves</w>\": 27813,\n  \"nervous</w>\": 13928,\n  \"nery</w>\": 48597,\n  \"nes\": 5457,\n  \"nes</w>\": 4980,\n  \"nesburg</w>\": 27159,\n  \"nese</w>\": 32220,\n  \"ness\": 7187,\n  \"ness</w>\": 1294,\n  \"nesses</w>\": 20107,\n  \"nessy</w>\": 32939,\n  \"nest\": 20302,\n  \"nest</w>\": 8719,\n  \"nesting</w>\": 28860,\n  \"nestle</w>\": 43967,\n  \"nestled</w>\": 38107,\n  \"nests</w>\": 41133,\n  \"net\": 1851,\n  \"net</w>\": 2315,\n  \"netany\": 23137,\n  \"netanyahu</w>\": 23583,\n  \"netball</w>\": 19761,\n  \"netes</w>\": 44335,\n  \"netfli\": 6304,\n  \"netflix\": 35325,\n  \"netflix</w>\": 6600,\n  \"nether\": 9946,\n  \"netherlands</w>\": 11060,\n  \"neti\": 43980,\n  \"netneutrality</w>\": 47794,\n  \"nets</w>\": 8582,\n  \"nett\": 23403,\n  \"nett</w>\": 6975,\n  \"nette</w>\": 13271,\n  \"network\": 23285,\n  \"network</w>\": 3304,\n  \"networking</w>\": 9818,\n  \"networks</w>\": 10004,\n  \"neu\": 3855,\n  \"neu</w>\": 43342,\n  \"neue</w>\": 45764,\n  \"neur\": 19001,\n  \"neur</w>\": 31976,\n  \"neural</w>\": 26388,\n  \"neuro\": 7401,\n  \"neuro</w>\": 36000,\n  \"neurological</w>\": 41718,\n  \"neurology</w>\": 43197,\n  \"neurons</w>\": 40442,\n  \"neuroscience</w>\": 23381,\n  \"neutr\": 17207,\n  \"neutral</w>\": 17011,\n  \"neutrality</w>\": 26511,\n  \"neutron</w>\": 44056,\n  \"nev\": 10236,\n  \"nev</w>\": 43645,\n  \"neva</w>\": 43304,\n  \"nevada</w>\": 13499,\n  \"neve\": 44099,\n  \"neve</w>\": 44023,\n  \"never\": 6746,\n  \"never</w>\": 1426,\n  \"neveragain</w>\": 45053,\n  \"neverforget</w>\": 19242,\n  \"nevergiveup</w>\": 42497,\n  \"neverland</w>\": 41483,\n  \"nevertheless</w>\": 48355,\n  \"nevertrump</w>\": 47494,\n  \"neville</w>\": 19269,\n  \"nevis</w>\": 43670,\n  \"new\": 1218,\n  \"new</w>\": 686,\n  \"newark</w>\": 20240,\n  \"newbie</w>\": 45427,\n  \"newborn</w>\": 18320,\n  \"newbury</w>\": 34169,\n  \"newcastle\": 41955,\n  \"newcastle</w>\": 9302,\n  \"newcomer</w>\": 30648,\n  \"newcomers</w>\": 44037,\n  \"newe\": 40068,\n  \"newell</w>\": 41436,\n  \"newer</w>\": 33099,\n  \"newest</w>\": 4990,\n  \"newfound\": 25250,\n  \"newfoundland</w>\": 28079,\n  \"newh\": 18546,\n  \"newin\": 31911,\n  \"newjersey</w>\": 32621,\n  \"newly\": 42186,\n  \"newly</w>\": 7056,\n  \"newman</w>\": 15815,\n  \"newmarket</w>\": 38617,\n  \"newmexico</w>\": 35238,\n  \"newmusic\": 32510,\n  \"newmusic</w>\": 17201,\n  \"newor\": 25969,\n  \"neworleans</w>\": 31205,\n  \"newport\": 42580,\n  \"newport</w>\": 14846,\n  \"newprofile\": 14633,\n  \"newprofilepic</w>\": 14754,\n  \"newrelease</w>\": 34793,\n  \"news\": 6216,\n  \"news</w>\": 1120,\n  \"newsat</w>\": 43979,\n  \"newsc\": 28656,\n  \"newscast</w>\": 45031,\n  \"newsle\": 10727,\n  \"newsletter</w>\": 11069,\n  \"newsnow</w>\": 48650,\n  \"newsp\": 7109,\n  \"newspaper</w>\": 8786,\n  \"newspapers</w>\": 22423,\n  \"newsroom</w>\": 23200,\n  \"newt</w>\": 37224,\n  \"newton\": 33122,\n  \"newton</w>\": 12606,\n  \"newtown</w>\": 31747,\n  \"newyear\": 22161,\n  \"newyear</w>\": 12999,\n  \"newyearseve</w>\": 37587,\n  \"newyork\": 18140,\n  \"newyork</w>\": 10454,\n  \"newyorkcity</w>\": 30460,\n  \"newyorker</w>\": 39732,\n  \"newzealand</w>\": 21117,\n  \"nex\": 6897,\n  \"nex</w>\": 39720,\n  \"next\": 12434,\n  \"next</w>\": 1131,\n  \"nextgen</w>\": 41933,\n  \"nexus</w>\": 19053,\n  \"ney\": 3857,\n  \"ney</w>\": 1438,\n  \"neymar</w>\": 21878,\n  \"neys</w>\": 12616,\n  \"nez</w>\": 27388,\n  \"nf\": 15195,\n  \"nf</w>\": 25643,\n  \"nfamily</w>\": 20098,\n  \"nfc</w>\": 23695,\n  \"nffc</w>\": 27893,\n  \"nfl\": 11219,\n  \"nfl</w>\": 4691,\n  \"nfldraft</w>\": 25002,\n  \"ng\": 10352,\n  \"ng</w>\": 5215,\n  \"nga</w>\": 35477,\n  \"ngc</w>\": 29046,\n  \"ngo\": 38740,\n  \"ngo</w>\": 24821,\n  \"ngos</w>\": 34627,\n  \"nguyen</w>\": 29947,\n  \"nh\": 3760,\n  \"nh</w>\": 10803,\n  \"nhc</w>\": 44817,\n  \"nhl\": 12290,\n  \"nhl</w>\": 8167,\n  \"nhlbruins</w>\": 39081,\n  \"nhljets</w>\": 49357,\n  \"nhm</w>\": 39483,\n  \"nhpolitics</w>\": 36125,\n  \"nhq</w>\": 42368,\n  \"nhra</w>\": 30052,\n  \"nhs\": 23282,\n  \"nhs</w>\": 7695,\n  \"ni\": 697,\n  \"ni</w>\": 3256,\n  \"nia</w>\": 3098,\n  \"niag\": 18071,\n  \"niagar\": 39298,\n  \"niagara</w>\": 18965,\n  \"niall\": 41354,\n  \"niall</w>\": 8327,\n  \"niallo\": 22855,\n  \"niallofficial</w>\": 23084,\n  \"niam\": 39347,\n  \"nian</w>\": 46003,\n  \"nib</w>\": 31049,\n  \"nic\": 2109,\n  \"nic</w>\": 6651,\n  \"nica</w>\": 29040,\n  \"nicar\": 25119,\n  \"nicaragua</w>\": 28423,\n  \"nice\": 28386,\n  \"nice</w>\": 1805,\n  \"nicely</w>\": 12303,\n  \"nicer</w>\": 29488,\n  \"nicest</w>\": 22967,\n  \"niche</w>\": 25279,\n  \"nichol\": 7668,\n  \"nicholas\": 39814,\n  \"nicholas</w>\": 13148,\n  \"nicholls</w>\": 38846,\n  \"nichols</w>\": 22730,\n  \"nicholson</w>\": 28745,\n  \"nick\": 4209,\n  \"nick</w>\": 4253,\n  \"nickel</w>\": 22034,\n  \"nickelo\": 28668,\n  \"nickelodeon</w>\": 33279,\n  \"nicki</w>\": 17738,\n  \"nickimin\": 27390,\n  \"nickiminaj</w>\": 27593,\n  \"nickjonas</w>\": 43862,\n  \"nickname</w>\": 24731,\n  \"nicknamed</w>\": 45190,\n  \"nicks</w>\": 15049,\n  \"nicky\": 28893,\n  \"nicky</w>\": 22091,\n  \"nico\": 20850,\n  \"nico</w>\": 17779,\n  \"nicol\": 9919,\n  \"nicol</w>\": 48274,\n  \"nicola</w>\": 21791,\n  \"nicolas\": 43813,\n  \"nicolas</w>\": 18918,\n  \"nicole\": 21246,\n  \"nicole</w>\": 10000,\n  \"nicot\": 45099,\n  \"nicotine</w>\": 46697,\n  \"nie\": 9524,\n  \"nie</w>\": 3501,\n  \"niece</w>\": 12795,\n  \"nieces</w>\": 44877,\n  \"niel\": 19109,\n  \"niel</w>\": 26837,\n  \"niels</w>\": 37154,\n  \"nielsen</w>\": 28372,\n  \"nier</w>\": 13014,\n  \"nies</w>\": 10586,\n  \"niest</w>\": 15007,\n  \"nieu\": 29781,\n  \"nific\": 4748,\n  \"nifty</w>\": 25604,\n  \"nig\": 27933,\n  \"nig</w>\": 28099,\n  \"nigan</w>\": 48516,\n  \"nigel\": 33919,\n  \"nigel</w>\": 15153,\n  \"niger\": 4524,\n  \"niger</w>\": 29920,\n  \"nigeri\": 40913,\n  \"nigeria</w>\": 6106,\n  \"nigerian</w>\": 12167,\n  \"nigerians</w>\": 25358,\n  \"nigh\": 13525,\n  \"nigh</w>\": 48157,\n  \"night\": 3870,\n  \"night</w>\": 930,\n  \"nightclub</w>\": 20418,\n  \"nighter</w>\": 41349,\n  \"nighting\": 36211,\n  \"nightingale</w>\": 40696,\n  \"nightlife</w>\": 28823,\n  \"nightly</w>\": 28868,\n  \"nightmare</w>\": 12867,\n  \"nightmares</w>\": 24032,\n  \"nightout</w>\": 44257,\n  \"nights</w>\": 4296,\n  \"nighttime</w>\": 38147,\n  \"nightw\": 39956,\n  \"nih</w>\": 25783,\n  \"nik\": 5126,\n  \"nik</w>\": 13705,\n  \"nike\": 16300,\n  \"nike</w>\": 5783,\n  \"nikeplus</w>\": 43154,\n  \"niki</w>\": 36136,\n  \"nikita</w>\": 37118,\n  \"nikk\": 38596,\n  \"nikki\": 23156,\n  \"nikki</w>\": 16689,\n  \"niko</w>\": 43771,\n  \"nikol\": 27430,\n  \"nikola</w>\": 42146,\n  \"nikon\": 25488,\n  \"nikon</w>\": 13849,\n  \"nikov</w>\": 43960,\n  \"nil\": 16852,\n  \"nil</w>\": 35030,\n  \"nile</w>\": 24252,\n  \"nim\": 30402,\n  \"nim</w>\": 42093,\n  \"nima</w>\": 42586,\n  \"nin\": 5794,\n  \"nin</w>\": 14145,\n  \"nina</w>\": 13891,\n  \"nine\": 16213,\n  \"nine</w>\": 7330,\n  \"ninety</w>\": 48214,\n  \"ning\": 6050,\n  \"ning</w>\": 762,\n  \"ningham</w>\": 23395,\n  \"ningly</w>\": 43537,\n  \"nings</w>\": 4588,\n  \"nington</w>\": 26214,\n  \"ninj\": 23225,\n  \"ninja</w>\": 11969,\n  \"ninjas</w>\": 42796,\n  \"nino</w>\": 25633,\n  \"ninten\": 6184,\n  \"nintendo\": 13969,\n  \"nintendo</w>\": 7886,\n  \"nintendoswitch</w>\": 16404,\n  \"ninth</w>\": 22770,\n  \"nip\": 33889,\n  \"nip</w>\": 22333,\n  \"nipp\": 24634,\n  \"nipple</w>\": 45987,\n  \"nipples</w>\": 44774,\n  \"nippon</w>\": 47960,\n  \"nips</w>\": 49241,\n  \"nir\": 15503,\n  \"nir</w>\": 40057,\n  \"nireland</w>\": 45763,\n  \"niro</w>\": 47373,\n  \"nirvana</w>\": 28300,\n  \"nis\": 5609,\n  \"nis</w>\": 3786,\n  \"nish\": 19834,\n  \"nish</w>\": 13256,\n  \"nished</w>\": 24141,\n  \"nishi\": 32386,\n  \"nishings</w>\": 49247,\n  \"nison</w>\": 45700,\n  \"niss</w>\": 39043,\n  \"nissan\": 37635,\n  \"nissan</w>\": 11082,\n  \"nist</w>\": 17782,\n  \"nister</w>\": 36640,\n  \"nit\": 4087,\n  \"nit</w>\": 19011,\n  \"nite</w>\": 8427,\n  \"niti\": 43964,\n  \"niti</w>\": 45355,\n  \"nitin</w>\": 37529,\n  \"nitro</w>\": 30726,\n  \"nitrogen</w>\": 30706,\n  \"niture</w>\": 7840,\n  \"nity</w>\": 12707,\n  \"niu</w>\": 48187,\n  \"niv</w>\": 47300,\n  \"niversary</w>\": 29643,\n  \"nix\": 48552,\n  \"nix</w>\": 32278,\n  \"nixon</w>\": 20671,\n  \"nj\": 8343,\n  \"nj</w>\": 6672,\n  \"njcaa</w>\": 48992,\n  \"njpw</w>\": 38992,\n  \"nk\": 22708,\n  \"nk</w>\": 17456,\n  \"nko\": 36353,\n  \"nl\": 12057,\n  \"nl</w>\": 7655,\n  \"nli</w>\": 37502,\n  \"nlp</w>\": 35680,\n  \"nlwx</w>\": 49260,\n  \"nm\": 15956,\n  \"nm</w>\": 11370,\n  \"nmd</w>\": 43331,\n  \"nme</w>\": 40454,\n  \"nmwx</w>\": 47967,\n  \"nn\": 8947,\n  \"nn</w>\": 12925,\n  \"nnn</w>\": 26277,\n  \"nnnn</w>\": 41420,\n  \"no\": 578,\n  \"no</w>\": 871,\n  \"noaa</w>\": 27557,\n  \"noah\": 28806,\n  \"noah</w>\": 11519,\n  \"nobel\": 33742,\n  \"nobel</w>\": 15605,\n  \"nobelprize</w>\": 46074,\n  \"noble\": 29430,\n  \"noble</w>\": 12051,\n  \"nobody</w>\": 7009,\n  \"noc\": 16988,\n  \"noc</w>\": 44420,\n  \"nocchi</w>\": 46359,\n  \"noch</w>\": 38672,\n  \"noche</w>\": 29689,\n  \"noches</w>\": 44166,\n  \"nock</w>\": 16993,\n  \"noctur\": 26291,\n  \"nocturnal</w>\": 41738,\n  \"nod</w>\": 18648,\n  \"nodapl</w>\": 39079,\n  \"node\": 31434,\n  \"node</w>\": 24871,\n  \"nodejs</w>\": 39262,\n  \"nodes</w>\": 40534,\n  \"noel\": 38406,\n  \"noel</w>\": 17496,\n  \"nof\": 29505,\n  \"noff</w>\": 46979,\n  \"nofilter</w>\": 16418,\n  \"nog</w>\": 31157,\n  \"noh</w>\": 40775,\n  \"noi\": 43115,\n  \"noi</w>\": 39889,\n  \"noida</w>\": 33404,\n  \"noir\": 39291,\n  \"noir</w>\": 12953,\n  \"nois\": 22057,\n  \"noise\": 41018,\n  \"noise</w>\": 9307,\n  \"noises</w>\": 31575,\n  \"noisse\": 45686,\n  \"noisy</w>\": 33495,\n  \"nokia</w>\": 17731,\n  \"nol\": 8055,\n  \"nola</w>\": 13289,\n  \"nolan</w>\": 17323,\n  \"nold</w>\": 40322,\n  \"nole</w>\": 34654,\n  \"noles</w>\": 40569,\n  \"nollywood</w>\": 43145,\n  \"nology</w>\": 42221,\n  \"nom\": 2981,\n  \"nom</w>\": 12799,\n  \"nomad</w>\": 27849,\n  \"noman\": 45592,\n  \"nomin\": 5643,\n  \"nominate</w>\": 17122,\n  \"nominated</w>\": 8710,\n  \"nominating</w>\": 45747,\n  \"nomination</w>\": 14136,\n  \"nominations</w>\": 17124,\n  \"nominee</w>\": 14122,\n  \"nominees</w>\": 17873,\n  \"nomnom</w>\": 26962,\n  \"nomore\": 35126,\n  \"noms</w>\": 35706,\n  \"non\": 4282,\n  \"non</w>\": 3353,\n  \"none\": 29644,\n  \"none</w>\": 8906,\n  \"nonetheless</w>\": 39675,\n  \"nonfiction</w>\": 31654,\n  \"nonprofit</w>\": 19315,\n  \"nonprofits</w>\": 37935,\n  \"nonsense</w>\": 19136,\n  \"nonstop</w>\": 30300,\n  \"nont</w>\": 25207,\n  \"noo\": 6759,\n  \"noo</w>\": 46672,\n  \"noodle</w>\": 19521,\n  \"noodles</w>\": 15782,\n  \"nook</w>\": 30088,\n  \"noon\": 37693,\n  \"noon</w>\": 2347,\n  \"noor\": 46978,\n  \"noor</w>\": 31323,\n  \"nope</w>\": 15625,\n  \"nor\": 1062,\n  \"nor</w>\": 6190,\n  \"nora</w>\": 25890,\n  \"norcal</w>\": 41970,\n  \"nord\": 19261,\n  \"nord</w>\": 36067,\n  \"nordic\": 36439,\n  \"nordic</w>\": 20734,\n  \"nordstrom</w>\": 38562,\n  \"norfolk\": 30232,\n  \"norfolk</w>\": 12202,\n  \"norm\": 10990,\n  \"norm</w>\": 22457,\n  \"norma</w>\": 35757,\n  \"normal\": 28748,\n  \"normal</w>\": 5967,\n  \"normali\": 45157,\n  \"normally</w>\": 15870,\n  \"norman\": 22027,\n  \"norman</w>\": 11338,\n  \"normandy</w>\": 23840,\n  \"normani</w>\": 44596,\n  \"norms</w>\": 33011,\n  \"norris</w>\": 21814,\n  \"norse</w>\": 36559,\n  \"norte</w>\": 35638,\n  \"north\": 3468,\n  \"north</w>\": 2188,\n  \"northampton\": 49246,\n  \"northampton</w>\": 26175,\n  \"northan\": 37081,\n  \"northbound</w>\": 24228,\n  \"northcarolina</w>\": 43386,\n  \"northe\": 24675,\n  \"northeast\": 42673,\n  \"northeast</w>\": 13009,\n  \"northeastern</w>\": 28297,\n  \"northeasthour</w>\": 42869,\n  \"norther\": 26908,\n  \"northern\": 17210,\n  \"northern</w>\": 5049,\n  \"northernlights</w>\": 48940,\n  \"northkorea</w>\": 38495,\n  \"northside</w>\": 45957,\n  \"northumber\": 22295,\n  \"northumberland</w>\": 22922,\n  \"northwales</w>\": 49371,\n  \"northwest</w>\": 12894,\n  \"northwestern</w>\": 23685,\n  \"norton</w>\": 18032,\n  \"norway</w>\": 8780,\n  \"norwe\": 14414,\n  \"norwegian</w>\": 15971,\n  \"norwich\": 37629,\n  \"norwich</w>\": 15812,\n  \"norwood</w>\": 37889,\n  \"nos</w>\": 13420,\n  \"nose\": 24192,\n  \"nose</w>\": 8231,\n  \"noses</w>\": 48163,\n  \"nostal\": 12076,\n  \"nostalgia</w>\": 16622,\n  \"nostalgic</w>\": 24468,\n  \"not\": 2534,\n  \"not</w>\": 783,\n  \"notable</w>\": 22023,\n  \"notch</w>\": 19476,\n  \"notdead</w>\": 42059,\n  \"note\": 10910,\n  \"note</w>\": 3246,\n  \"notebook</w>\": 16365,\n  \"notebooks</w>\": 37623,\n  \"noted</w>\": 22501,\n  \"notes</w>\": 5795,\n  \"nothin</w>\": 24291,\n  \"nothing\": 28412,\n  \"nothing</w>\": 2586,\n  \"noti\": 10686,\n  \"notic\": 6915,\n  \"notice</w>\": 6683,\n  \"noticeable</w>\": 40857,\n  \"noticed</w>\": 9324,\n  \"notices</w>\": 33459,\n  \"noticias</w>\": 47759,\n  \"noticing</w>\": 37571,\n  \"notification</w>\": 22512,\n  \"notifications</w>\": 23169,\n  \"notified</w>\": 39454,\n  \"noting</w>\": 38649,\n  \"notion</w>\": 37856,\n  \"notjust\": 33212,\n  \"notjustlakes</w>\": 45803,\n  \"notmy\": 39301,\n  \"noto\": 29878,\n  \"noton\": 48258,\n  \"notor\": 21711,\n  \"notori\": 44065,\n  \"notorious</w>\": 22489,\n  \"notre\": 24397,\n  \"notre</w>\": 15306,\n  \"notredame</w>\": 34077,\n  \"notsorry</w>\": 34361,\n  \"nott\": 9333,\n  \"nott</w>\": 34989,\n  \"notte</w>\": 47308,\n  \"nottingham</w>\": 12852,\n  \"notts</w>\": 25598,\n  \"nou\": 8751,\n  \"nou</w>\": 30953,\n  \"noun</w>\": 33663,\n  \"nouri\": 23796,\n  \"nourish</w>\": 46025,\n  \"nourished</w>\": 48354,\n  \"nous</w>\": 29485,\n  \"nouveau</w>\": 29948,\n  \"nouvel\": 34215,\n  \"nov\": 2264,\n  \"nov</w>\": 4293,\n  \"nova</w>\": 11236,\n  \"novak</w>\": 26465,\n  \"novasco\": 33785,\n  \"novascotia</w>\": 34744,\n  \"novation</w>\": 39753,\n  \"nove\": 30507,\n  \"novel\": 15044,\n  \"novel</w>\": 6080,\n  \"novelist</w>\": 27314,\n  \"novella</w>\": 42770,\n  \"novels</w>\": 16040,\n  \"novelty</w>\": 37750,\n  \"november</w>\": 3680,\n  \"nover</w>\": 37465,\n  \"novi\": 47957,\n  \"novice</w>\": 33743,\n  \"novo\": 27504,\n  \"novo</w>\": 36581,\n  \"now\": 2040,\n  \"now</w>\": 692,\n  \"nowadays</w>\": 26155,\n  \"nowhere</w>\": 14108,\n  \"nowplaying</w>\": 3708,\n  \"nowwatching</w>\": 30852,\n  \"nox</w>\": 27406,\n  \"noxi\": 39304,\n  \"noxious</w>\": 42833,\n  \"noy</w>\": 32787,\n  \"np\": 18205,\n  \"np</w>\": 6314,\n  \"npa</w>\": 42378,\n  \"npc</w>\": 33966,\n  \"npr\": 39941,\n  \"npr</w>\": 24078,\n  \"nps</w>\": 22025,\n  \"npt</w>\": 47231,\n  \"nr\": 6574,\n  \"nr</w>\": 9713,\n  \"nra</w>\": 17286,\n  \"nrc</w>\": 45786,\n  \"nrf</w>\": 47982,\n  \"nrg</w>\": 48662,\n  \"nrl\": 27142,\n  \"nrl</w>\": 18127,\n  \"ns\": 12405,\n  \"ns</w>\": 1373,\n  \"nsa</w>\": 23004,\n  \"nsc\": 32792,\n  \"nsd</w>\": 36659,\n  \"nsf</w>\": 34180,\n  \"nsfw</w>\": 19847,\n  \"nsi\": 47824,\n  \"nsw\": 21301,\n  \"nsw</w>\": 11693,\n  \"nswpol</w>\": 44434,\n  \"nt\": 10902,\n  \"nt</w>\": 3207,\n  \"ntr</w>\": 30845,\n  \"nts</w>\": 43775,\n  \"ntt</w>\": 22859,\n  \"ntv\": 24807,\n  \"ntv</w>\": 45304,\n  \"nu\": 1156,\n  \"nu</w>\": 9444,\n  \"nucle\": 25693,\n  \"nuclear\": 34136,\n  \"nuclear</w>\": 7279,\n  \"nude</w>\": 16630,\n  \"nudes</w>\": 32122,\n  \"nue\": 22834,\n  \"nuestra</w>\": 45649,\n  \"nuestro</w>\": 38590,\n  \"nuev\": 47861,\n  \"nueva</w>\": 48810,\n  \"nuevo</w>\": 30265,\n  \"nufc</w>\": 15720,\n  \"nuff</w>\": 37324,\n  \"nug\": 13471,\n  \"nugent</w>\": 47457,\n  \"nugget</w>\": 25448,\n  \"nuggets</w>\": 18970,\n  \"nuh</w>\": 45950,\n  \"nuit</w>\": 38815,\n  \"nuk</w>\": 39228,\n  \"nuke</w>\": 39399,\n  \"nul\": 29358,\n  \"null</w>\": 47376,\n  \"num\": 17896,\n  \"num</w>\": 30534,\n  \"numb\": 34639,\n  \"numb</w>\": 39427,\n  \"number\": 44078,\n  \"number</w>\": 2842,\n  \"numbered</w>\": 25975,\n  \"numbers</w>\": 6121,\n  \"numer\": 11442,\n  \"numerous</w>\": 17082,\n  \"numis\": 39100,\n  \"nun\": 12511,\n  \"nun</w>\": 28540,\n  \"nunavut</w>\": 48626,\n  \"nunes</w>\": 40697,\n  \"nuns</w>\": 44061,\n  \"nup\": 46757,\n  \"nur\": 3920,\n  \"nur</w>\": 33493,\n  \"nure\": 42480,\n  \"nurse\": 37547,\n  \"nurse</w>\": 10058,\n  \"nursery</w>\": 15540,\n  \"nurses</w>\": 12938,\n  \"nursing</w>\": 11126,\n  \"nurture</w>\": 38865,\n  \"nurturing</w>\": 45229,\n  \"nus\": 25157,\n  \"nus</w>\": 18239,\n  \"nut\": 10358,\n  \"nut</w>\": 6491,\n  \"nutcracker</w>\": 36733,\n  \"nutella</w>\": 27312,\n  \"nutr\": 6198,\n  \"nutri\": 15470,\n  \"nutrient</w>\": 32900,\n  \"nutrients</w>\": 24668,\n  \"nutriti\": 17978,\n  \"nutrition\": 41546,\n  \"nutrition</w>\": 7989,\n  \"nutritional</w>\": 26457,\n  \"nutritious</w>\": 30387,\n  \"nuts</w>\": 8644,\n  \"nutshell</w>\": 26659,\n  \"nutty</w>\": 39846,\n  \"nv\": 17217,\n  \"nv</w>\": 16985,\n  \"nvi\": 22847,\n  \"nvidia</w>\": 27325,\n  \"nw\": 7826,\n  \"nw</w>\": 7030,\n  \"nwa</w>\": 34237,\n  \"nwo</w>\": 40976,\n  \"nws\": 23333,\n  \"nws</w>\": 30998,\n  \"nwsl</w>\": 48394,\n  \"nwt</w>\": 25029,\n  \"nx\": 18810,\n  \"nx</w>\": 16997,\n  \"nxt\": 35037,\n  \"nxt</w>\": 17804,\n  \"ny\": 1383,\n  \"ny</w>\": 1350,\n  \"nya</w>\": 24165,\n  \"nyc\": 13304,\n  \"nyc</w>\": 2832,\n  \"nycc</w>\": 27187,\n  \"nycfc</w>\": 47497,\n  \"nye\": 40723,\n  \"nye</w>\": 13416,\n  \"nyfw</w>\": 21089,\n  \"nyk</w>\": 46841,\n  \"nylon</w>\": 25915,\n  \"nyo\": 41534,\n  \"nyo</w>\": 44586,\n  \"nypd\": 42293,\n  \"nypd</w>\": 18279,\n  \"nyr</w>\": 32538,\n  \"nyrd</w>\": 47936,\n  \"nys\": 36375,\n  \"nys</w>\": 23423,\n  \"nyse</w>\": 32650,\n  \"nyt\": 46311,\n  \"nyt</w>\": 12816,\n  \"nytimes</w>\": 13772,\n  \"nyu\": 43143,\n  \"nyu</w>\": 31355,\n  \"nz\": 10142,\n  \"nz</w>\": 7082,\n  \"o\": 78,\n  \"o</w>\": 334,\n  \"oa</w>\": 11994,\n  \"oahu</w>\": 37790,\n  \"oak\": 6010,\n  \"oak</w>\": 7221,\n  \"oakland\": 42663,\n  \"oakland</w>\": 12077,\n  \"oakley</w>\": 27810,\n  \"oaks</w>\": 16734,\n  \"oakville</w>\": 38500,\n  \"oasis</w>\": 18185,\n  \"oat\": 20095,\n  \"oat</w>\": 34132,\n  \"oates</w>\": 47094,\n  \"oath</w>\": 20108,\n  \"oatmeal</w>\": 26374,\n  \"oats</w>\": 24150,\n  \"oax\": 43090,\n  \"oaxaca</w>\": 47818,\n  \"ob\": 1411,\n  \"ob</w>\": 14908,\n  \"oba\": 42902,\n  \"oba</w>\": 15147,\n  \"obam\": 13174,\n  \"obama</w>\": 4276,\n  \"obamacare</w>\": 18005,\n  \"obe\": 11897,\n  \"obe</w>\": 29117,\n  \"obedience</w>\": 48921,\n  \"ober\": 15284,\n  \"obese</w>\": 41757,\n  \"obesity</w>\": 19499,\n  \"obey</w>\": 26926,\n  \"obi\": 21454,\n  \"obi</w>\": 18414,\n  \"obile</w>\": 20513,\n  \"obitu\": 39218,\n  \"obituary</w>\": 43580,\n  \"objec\": 7970,\n  \"object</w>\": 14115,\n  \"objective</w>\": 23663,\n  \"objectives</w>\": 30238,\n  \"objects</w>\": 13770,\n  \"obl\": 31452,\n  \"oblast</w>\": 42672,\n  \"obli\": 11416,\n  \"obligation</w>\": 34473,\n  \"obligations</w>\": 38232,\n  \"obligatory</w>\": 35020,\n  \"oblivion</w>\": 45323,\n  \"obo\": 46001,\n  \"obo</w>\": 26618,\n  \"obrien</w>\": 31946,\n  \"obs</w>\": 39162,\n  \"obsc\": 20392,\n  \"obscure</w>\": 33337,\n  \"obse\": 8433,\n  \"observ\": 9050,\n  \"observation</w>\": 20250,\n  \"observations</w>\": 27409,\n  \"observatory</w>\": 21236,\n  \"observe</w>\": 23217,\n  \"observed</w>\": 21267,\n  \"observer</w>\": 22077,\n  \"observers</w>\": 47544,\n  \"observing</w>\": 28359,\n  \"obsessed</w>\": 9744,\n  \"obsession</w>\": 15718,\n  \"obsi\": 47323,\n  \"obsole\": 35561,\n  \"obsolete</w>\": 40628,\n  \"obst\": 29398,\n  \"obstac\": 24075,\n  \"obstacle</w>\": 29751,\n  \"obstacles</w>\": 24480,\n  \"obste\": 49103,\n  \"obstru\": 44876,\n  \"obstruc\": 38762,\n  \"obstruction</w>\": 40240,\n  \"obtain</w>\": 26555,\n  \"obtained</w>\": 29322,\n  \"obvious</w>\": 13959,\n  \"obviously</w>\": 10068,\n  \"oc\": 1566,\n  \"oc</w>\": 6603,\n  \"oca</w>\": 31120,\n  \"ocal</w>\": 38148,\n  \"occ</w>\": 43940,\n  \"occa\": 8530,\n  \"occasion</w>\": 12280,\n  \"occasional</w>\": 33059,\n  \"occasionally</w>\": 32479,\n  \"occasions</w>\": 26154,\n  \"occer</w>\": 20804,\n  \"occi\": 42994,\n  \"occu\": 7863,\n  \"occult</w>\": 42529,\n  \"occup\": 11152,\n  \"occupation</w>\": 18624,\n  \"occupational</w>\": 30644,\n  \"occupied</w>\": 17271,\n  \"occupy\": 22453,\n  \"occupy</w>\": 24210,\n  \"occur\": 11264,\n  \"occur</w>\": 21813,\n  \"occurred</w>\": 19850,\n  \"occurrence</w>\": 40615,\n  \"occurring</w>\": 31335,\n  \"occurs</w>\": 26563,\n  \"ocd</w>\": 35904,\n  \"oce\": 3509,\n  \"ocean\": 12941,\n  \"ocean</w>\": 4918,\n  \"oceans</w>\": 16792,\n  \"och\": 29334,\n  \"och</w>\": 32011,\n  \"oche</w>\": 33045,\n  \"oci\": 9891,\n  \"ocity\": 46039,\n  \"ock\": 33579,\n  \"ock</w>\": 21313,\n  \"ocks</w>\": 22410,\n  \"oclock</w>\": 36274,\n  \"oco</w>\": 32553,\n  \"ocon</w>\": 33090,\n  \"ocr\": 45813,\n  \"ocre</w>\": 40320,\n  \"ocs</w>\": 27297,\n  \"oct</w>\": 4565,\n  \"octa\": 23444,\n  \"octag\": 37768,\n  \"octagon</w>\": 49167,\n  \"octane</w>\": 43040,\n  \"octavia</w>\": 47416,\n  \"octo\": 31032,\n  \"october</w>\": 3481,\n  \"octopus</w>\": 22327,\n  \"ocu\": 22709,\n  \"oculus</w>\": 30082,\n  \"od\": 4886,\n  \"od</w>\": 9719,\n  \"oda</w>\": 24777,\n  \"oday</w>\": 41954,\n  \"odd\": 15525,\n  \"odd</w>\": 11387,\n  \"oddly</w>\": 34213,\n  \"odds</w>\": 11555,\n  \"ode\": 19125,\n  \"ode</w>\": 19639,\n  \"odell</w>\": 41556,\n  \"odessa</w>\": 43574,\n  \"odi\": 12223,\n  \"odi</w>\": 18853,\n  \"odin</w>\": 35175,\n  \"odisha</w>\": 15737,\n  \"odo\": 49188,\n  \"odo</w>\": 40993,\n  \"odor</w>\": 39509,\n  \"odu\": 35095,\n  \"odu</w>\": 39904,\n  \"odyssey</w>\": 19991,\n  \"oe\": 24251,\n  \"oe</w>\": 11667,\n  \"oec\": 24288,\n  \"oecd</w>\": 30816,\n  \"oem</w>\": 29650,\n  \"oes</w>\": 3643,\n  \"of\": 684,\n  \"of</w>\": 539,\n  \"ofa</w>\": 29774,\n  \"ofc</w>\": 19877,\n  \"ofe\": 30000,\n  \"ofer\": 47322,\n  \"off\": 892,\n  \"off</w>\": 1007,\n  \"offe\": 8261,\n  \"offee</w>\": 34059,\n  \"offen\": 7231,\n  \"offence</w>\": 34594,\n  \"offences</w>\": 33972,\n  \"offended</w>\": 30765,\n  \"offender</w>\": 48294,\n  \"offenders</w>\": 35878,\n  \"offense</w>\": 15253,\n  \"offensive</w>\": 11037,\n  \"offer\": 20607,\n  \"offer</w>\": 3271,\n  \"offered</w>\": 9395,\n  \"offering</w>\": 6896,\n  \"offerings</w>\": 24535,\n  \"offers</w>\": 4679,\n  \"offic\": 3276,\n  \"office\": 18033,\n  \"office</w>\": 2171,\n  \"officeof\": 38750,\n  \"officeofrg</w>\": 47100,\n  \"officer</w>\": 4683,\n  \"officers</w>\": 6335,\n  \"offices</w>\": 10933,\n  \"offici\": 1401,\n  \"official\": 5768,\n  \"official</w>\": 1868,\n  \"officially</w>\": 4226,\n  \"officials</w>\": 7658,\n  \"officiel</w>\": 26548,\n  \"offl</w>\": 16851,\n  \"offline</w>\": 22724,\n  \"offro\": 32198,\n  \"offroad</w>\": 37173,\n  \"offs</w>\": 23987,\n  \"offseason</w>\": 25485,\n  \"offset</w>\": 28843,\n  \"offshore</w>\": 15496,\n  \"offside</w>\": 49347,\n  \"offspring</w>\": 38635,\n  \"offthe\": 38189,\n  \"ofi\": 36692,\n  \"ofi</w>\": 49090,\n  \"oficial</w>\": 18061,\n  \"oft</w>\": 16693,\n  \"oftball</w>\": 39768,\n  \"often</w>\": 4864,\n  \"ofthe\": 7592,\n  \"oftheday</w>\": 6988,\n  \"oftheweek</w>\": 20654,\n  \"oftheyear</w>\": 33975,\n  \"og\": 11542,\n  \"og</w>\": 8555,\n  \"oga</w>\": 47312,\n  \"ogden</w>\": 42011,\n  \"ogil\": 39013,\n  \"ography</w>\": 22399,\n  \"ogue</w>\": 24761,\n  \"ogun\": 48970,\n  \"oh\": 5648,\n  \"oh</w>\": 1779,\n  \"ohana</w>\": 48330,\n  \"ohh</w>\": 23076,\n  \"ohhh</w>\": 27697,\n  \"ohhhh</w>\": 40201,\n  \"ohi\": 5207,\n  \"ohio\": 18951,\n  \"ohio</w>\": 6155,\n  \"ohiostate</w>\": 41324,\n  \"ohl\": 45547,\n  \"ohl</w>\": 41095,\n  \"ohmy\": 29758,\n  \"ohn</w>\": 48043,\n  \"ohs</w>\": 39542,\n  \"ohwx</w>\": 47993,\n  \"oi\": 27357,\n  \"oi</w>\": 13934,\n  \"oic</w>\": 45554,\n  \"oid</w>\": 14758,\n  \"oids</w>\": 21847,\n  \"oil\": 11973,\n  \"oil</w>\": 2870,\n  \"oiland\": 32316,\n  \"oilandgas</w>\": 34130,\n  \"oilers</w>\": 21627,\n  \"oilpainting</w>\": 34279,\n  \"oils</w>\": 17886,\n  \"oily</w>\": 47550,\n  \"oir\": 48079,\n  \"oir</w>\": 37113,\n  \"ois</w>\": 23262,\n  \"oit\": 18453,\n  \"oitnb</w>\": 34865,\n  \"oj\": 30986,\n  \"oj</w>\": 34553,\n  \"ok\": 1944,\n  \"ok</w>\": 2481,\n  \"oka\": 42258,\n  \"oka</w>\": 19092,\n  \"okan\": 41263,\n  \"okanagan</w>\": 43233,\n  \"okay</w>\": 4917,\n  \"okc\": 42418,\n  \"okc</w>\": 18357,\n  \"oke\": 26636,\n  \"oke</w>\": 23598,\n  \"oki</w>\": 20390,\n  \"okin\": 30687,\n  \"okinawa</w>\": 35877,\n  \"okla\": 9431,\n  \"oklahoma</w>\": 10170,\n  \"oko\": 26892,\n  \"oko</w>\": 26095,\n  \"okstate</w>\": 36356,\n  \"oktoberfest</w>\": 32026,\n  \"oku\": 45010,\n  \"oku</w>\": 43829,\n  \"okwx</w>\": 27336,\n  \"ol\": 562,\n  \"ol</w>\": 2985,\n  \"ola\": 20499,\n  \"ola</w>\": 3373,\n  \"olaf</w>\": 39709,\n  \"olan\": 48489,\n  \"olan</w>\": 24227,\n  \"oland</w>\": 26452,\n  \"olas</w>\": 40800,\n  \"old\": 4931,\n  \"old</w>\": 896,\n  \"olde</w>\": 37731,\n  \"older</w>\": 7700,\n  \"oldest</w>\": 9285,\n  \"oldham</w>\": 29929,\n  \"oldie</w>\": 35280,\n  \"oldies</w>\": 36278,\n  \"oldman</w>\": 48614,\n  \"olds</w>\": 8580,\n  \"oldschool\": 44384,\n  \"oldschool</w>\": 25133,\n  \"oldsmobile</w>\": 45396,\n  \"ole\": 9089,\n  \"ole</w>\": 1947,\n  \"oled</w>\": 46768,\n  \"oler\": 24069,\n  \"oles</w>\": 16962,\n  \"olf</w>\": 16346,\n  \"olga</w>\": 34779,\n  \"oli\": 3811,\n  \"oli</w>\": 8810,\n  \"olic</w>\": 31341,\n  \"oligar\": 46185,\n  \"olim\": 47769,\n  \"olin\": 37823,\n  \"olin</w>\": 18283,\n  \"olina</w>\": 34711,\n  \"oline</w>\": 17441,\n  \"oling</w>\": 38033,\n  \"olini</w>\": 36040,\n  \"olis</w>\": 49397,\n  \"olithic</w>\": 35574,\n  \"olive\": 22486,\n  \"olive</w>\": 9898,\n  \"oliver\": 22882,\n  \"oliver</w>\": 9261,\n  \"olives</w>\": 27149,\n  \"olivi\": 20773,\n  \"olivia</w>\": 11697,\n  \"olivier</w>\": 23891,\n  \"oll\": 32270,\n  \"oll</w>\": 15510,\n  \"olla</w>\": 31908,\n  \"ollie</w>\": 24434,\n  \"olls</w>\": 42697,\n  \"olly</w>\": 23998,\n  \"olo\": 14628,\n  \"olo</w>\": 7606,\n  \"ological</w>\": 12345,\n  \"ologist</w>\": 23442,\n  \"ologists</w>\": 30912,\n  \"ology</w>\": 4627,\n  \"olor</w>\": 29245,\n  \"olph</w>\": 25077,\n  \"ols</w>\": 2236,\n  \"olsen</w>\": 26307,\n  \"olson</w>\": 28046,\n  \"olt</w>\": 46252,\n  \"olu\": 16502,\n  \"olu</w>\": 46302,\n  \"olulu</w>\": 27645,\n  \"oly\": 20323,\n  \"oly</w>\": 24823,\n  \"olym\": 3594,\n  \"olympi\": 13597,\n  \"olympia</w>\": 23965,\n  \"olympiad</w>\": 47694,\n  \"olympian</w>\": 25420,\n  \"olympians</w>\": 44583,\n  \"olympic\": 26099,\n  \"olympic</w>\": 6388,\n  \"olympics</w>\": 7629,\n  \"olympus</w>\": 30960,\n  \"om\": 547,\n  \"om</w>\": 3932,\n  \"oma\": 44603,\n  \"oma</w>\": 5358,\n  \"omaha</w>\": 16509,\n  \"oman\": 22088,\n  \"oman</w>\": 10871,\n  \"omar\": 19488,\n  \"omar</w>\": 13367,\n  \"omars</w>\": 37099,\n  \"omas</w>\": 36023,\n  \"omat\": 40788,\n  \"omb</w>\": 34447,\n  \"ombe</w>\": 35967,\n  \"omd</w>\": 49346,\n  \"ome\": 3693,\n  \"ome</w>\": 5832,\n  \"omed</w>\": 16835,\n  \"omega</w>\": 13465,\n  \"omelette</w>\": 38789,\n  \"omen\": 9969,\n  \"omen</w>\": 25469,\n  \"oment</w>\": 43683,\n  \"omeo</w>\": 39844,\n  \"omer\": 24087,\n  \"omer</w>\": 17902,\n  \"omes</w>\": 25736,\n  \"ometer</w>\": 20060,\n  \"ometric</w>\": 38702,\n  \"omez</w>\": 12541,\n  \"omf</w>\": 47496,\n  \"omfg</w>\": 12523,\n  \"omg\": 35233,\n  \"omg</w>\": 3186,\n  \"omi\": 24097,\n  \"omi</w>\": 10341,\n  \"omic\": 40536,\n  \"omic</w>\": 12793,\n  \"omics</w>\": 15138,\n  \"omile</w>\": 46915,\n  \"omin\": 16457,\n  \"omination</w>\": 42571,\n  \"oming</w>\": 10796,\n  \"ominous</w>\": 40914,\n  \"omni\": 18793,\n  \"omni</w>\": 39489,\n  \"omnibus</w>\": 44760,\n  \"omnic\": 48383,\n  \"omo\": 14478,\n  \"omo</w>\": 11066,\n  \"omon\": 48758,\n  \"omor\": 29431,\n  \"oms</w>\": 3770,\n  \"omusic</w>\": 38965,\n  \"omy\": 40805,\n  \"omy</w>\": 6884,\n  \"on\": 521,\n  \"on</w>\": 525,\n  \"ona</w>\": 2687,\n  \"onair</w>\": 29511,\n  \"onal</w>\": 918,\n  \"onboard</w>\": 21689,\n  \"once\": 16331,\n  \"once</w>\": 2654,\n  \"onceupon\": 28122,\n  \"onceuponatime</w>\": 33505,\n  \"onco\": 46700,\n  \"oncology</w>\": 24593,\n  \"ond\": 27918,\n  \"ond</w>\": 2636,\n  \"onda</w>\": 32643,\n  \"onday</w>\": 29864,\n  \"onde</w>\": 44532,\n  \"ondo</w>\": 29529,\n  \"ondon\": 42043,\n  \"ondon</w>\": 11851,\n  \"one\": 1980,\n  \"one</w>\": 637,\n  \"onec\": 27746,\n  \"oned\": 28012,\n  \"oned</w>\": 4698,\n  \"onedirection</w>\": 16245,\n  \"onee</w>\": 44433,\n  \"oneill</w>\": 44808,\n  \"onelove</w>\": 47417,\n  \"onent</w>\": 12147,\n  \"onents</w>\": 11709,\n  \"oneof\": 48478,\n  \"onep\": 20440,\n  \"onepiece</w>\": 43153,\n  \"oneplus</w>\": 25981,\n  \"oner\": 30055,\n  \"oner</w>\": 6071,\n  \"oners</w>\": 12324,\n  \"ones\": 20757,\n  \"ones</w>\": 1575,\n  \"oneself</w>\": 46874,\n  \"onesie</w>\": 33237,\n  \"oness</w>\": 25379,\n  \"onet</w>\": 36058,\n  \"oneteam</w>\": 41094,\n  \"onetsy</w>\": 33392,\n  \"onew</w>\": 43848,\n  \"onews</w>\": 18696,\n  \"onex</w>\": 49116,\n  \"oney\": 44498,\n  \"oney</w>\": 9408,\n  \"onf</w>\": 41790,\n  \"onfox</w>\": 29874,\n  \"ong\": 2787,\n  \"ong</w>\": 846,\n  \"onga</w>\": 30259,\n  \"ongchang</w>\": 35071,\n  \"ongi</w>\": 21754,\n  \"ongo</w>\": 31226,\n  \"ongoing</w>\": 10393,\n  \"ongs</w>\": 12143,\n  \"oni\": 4385,\n  \"oni</w>\": 8048,\n  \"onia</w>\": 8001,\n  \"onial</w>\": 27599,\n  \"onian</w>\": 21090,\n  \"onic\": 15838,\n  \"onic</w>\": 3711,\n  \"onica</w>\": 14631,\n  \"onics</w>\": 9779,\n  \"onie</w>\": 35249,\n  \"onies</w>\": 22601,\n  \"onimo</w>\": 41271,\n  \"oning</w>\": 5197,\n  \"onion</w>\": 10985,\n  \"onions</w>\": 15255,\n  \"onist</w>\": 10099,\n  \"onists</w>\": 19659,\n  \"onix</w>\": 27370,\n  \"onized</w>\": 43657,\n  \"onlin\": 31103,\n  \"online\": 12940,\n  \"online</w>\": 2027,\n  \"onlinemarketing</w>\": 41820,\n  \"onlineshopping</w>\": 38587,\n  \"only\": 11646,\n  \"only</w>\": 1033,\n  \"onlyin\": 32947,\n  \"onna\": 25438,\n  \"onna</w>\": 35458,\n  \"onnaise</w>\": 48934,\n  \"onne</w>\": 23466,\n  \"onnell</w>\": 45613,\n  \"ono\": 28165,\n  \"ono</w>\": 14388,\n  \"onom\": 48014,\n  \"onomy</w>\": 36873,\n  \"onpoli</w>\": 20708,\n  \"ons\": 26076,\n  \"ons</w>\": 708,\n  \"onsale</w>\": 36324,\n  \"onset</w>\": 30527,\n  \"onsite</w>\": 37336,\n  \"onstage</w>\": 21821,\n  \"onstorm</w>\": 49333,\n  \"ont\": 34303,\n  \"ont</w>\": 11157,\n  \"ontari\": 6739,\n  \"ontario\": 42766,\n  \"ontario</w>\": 7436,\n  \"onte</w>\": 34723,\n  \"onthe\": 12241,\n  \"onther\": 46563,\n  \"ontheroad</w>\": 47516,\n  \"onthisday</w>\": 6862,\n  \"onto\": 11745,\n  \"onto</w>\": 3141,\n  \"ontology</w>\": 37364,\n  \"ontour</w>\": 32155,\n  \"onu\": 44142,\n  \"onward</w>\": 34827,\n  \"onwards</w>\": 20682,\n  \"ony\": 9490,\n  \"ony</w>\": 2926,\n  \"onym\": 11483,\n  \"onymous</w>\": 13038,\n  \"onyx</w>\": 31353,\n  \"oo\": 574,\n  \"oo</w>\": 2822,\n  \"ood\": 16429,\n  \"ood</w>\": 738,\n  \"oodle</w>\": 45289,\n  \"oods</w>\": 44660,\n  \"oof</w>\": 42270,\n  \"ooh</w>\": 16806,\n  \"ook\": 22326,\n  \"ook</w>\": 8394,\n  \"ooks</w>\": 31082,\n  \"ool\": 37702,\n  \"ool</w>\": 929,\n  \"oom\": 22786,\n  \"oom</w>\": 15002,\n  \"oomf</w>\": 40607,\n  \"oon\": 35651,\n  \"oon</w>\": 7100,\n  \"ooo</w>\": 9571,\n  \"oooh</w>\": 28927,\n  \"oooo\": 4002,\n  \"oooo</w>\": 13643,\n  \"ooooo</w>\": 12532,\n  \"oooooo\": 43590,\n  \"oooooo</w>\": 20372,\n  \"ooooooo</w>\": 30859,\n  \"oooooooo\": 15473,\n  \"oooooooo</w>\": 43408,\n  \"oooooooooooooooo\": 48645,\n  \"oop</w>\": 7326,\n  \"ooper</w>\": 39906,\n  \"oops</w>\": 9116,\n  \"oor</w>\": 35239,\n  \"oos</w>\": 9896,\n  \"oosa</w>\": 30834,\n  \"oose</w>\": 38941,\n  \"oot</w>\": 17667,\n  \"ootball</w>\": 28914,\n  \"ootd</w>\": 16547,\n  \"ooth</w>\": 12682,\n  \"oott</w>\": 34316,\n  \"ooza</w>\": 22809,\n  \"op\": 676,\n  \"op</w>\": 3691,\n  \"opa</w>\": 28949,\n  \"opal</w>\": 28982,\n  \"opar\": 18167,\n  \"opath\": 33079,\n  \"opathic</w>\": 37521,\n  \"opathy</w>\": 28466,\n  \"opau\": 27239,\n  \"opd</w>\": 38288,\n  \"ope\": 31694,\n  \"ope</w>\": 11440,\n  \"opec</w>\": 33138,\n  \"opel</w>\": 36952,\n  \"open\": 3647,\n  \"open</w>\": 1488,\n  \"openaccess</w>\": 26591,\n  \"opend\": 28069,\n  \"opendata</w>\": 35709,\n  \"openday</w>\": 46991,\n  \"opened</w>\": 5303,\n  \"opener</w>\": 8998,\n  \"openhouse</w>\": 36091,\n  \"opening\": 33728,\n  \"opening</w>\": 2516,\n  \"openingday</w>\": 36359,\n  \"openings</w>\": 27643,\n  \"openly</w>\": 23005,\n  \"opens</w>\": 4801,\n  \"opensource</w>\": 29930,\n  \"oper\": 2796,\n  \"oper</w>\": 37533,\n  \"opera</w>\": 8056,\n  \"operate</w>\": 19306,\n  \"operated</w>\": 23031,\n  \"operates</w>\": 38675,\n  \"operating</w>\": 12218,\n  \"operation\": 27173,\n  \"operation</w>\": 7639,\n  \"operational</w>\": 18237,\n  \"operations</w>\": 8106,\n  \"operative</w>\": 28380,\n  \"operator</w>\": 15972,\n  \"operators</w>\": 19267,\n  \"opers</w>\": 48728,\n  \"opes</w>\": 37258,\n  \"oph\": 6796,\n  \"opha\": 38634,\n  \"ophel\": 45017,\n  \"ophelia</w>\": 49118,\n  \"ophi\": 44547,\n  \"ophile</w>\": 35915,\n  \"opho\": 12900,\n  \"ophobia</w>\": 21111,\n  \"ophobic</w>\": 29934,\n  \"ophon\": 25120,\n  \"ophone</w>\": 26345,\n  \"ophthal\": 33135,\n  \"ophy\": 28539,\n  \"opi\": 40056,\n  \"opi</w>\": 48994,\n  \"opin\": 7636,\n  \"opini\": 14825,\n  \"opinion</w>\": 7843,\n  \"opinions</w>\": 16192,\n  \"opio\": 17371,\n  \"opioid</w>\": 22833,\n  \"opioids</w>\": 47578,\n  \"opla\": 36270,\n  \"ople</w>\": 25663,\n  \"opol\": 15173,\n  \"opoly</w>\": 23729,\n  \"opor\": 39650,\n  \"opoulos</w>\": 42020,\n  \"opp\": 2020,\n  \"opp</w>\": 21024,\n  \"oppa</w>\": 23637,\n  \"oppo\": 7399,\n  \"oppo</w>\": 41770,\n  \"opponent</w>\": 17002,\n  \"opponents</w>\": 19664,\n  \"oppor\": 2914,\n  \"opportun\": 2939,\n  \"opportunities</w>\": 5978,\n  \"opportunity</w>\": 4004,\n  \"oppos\": 10091,\n  \"oppose</w>\": 23617,\n  \"opposed</w>\": 22509,\n  \"opposes</w>\": 47471,\n  \"opposing</w>\": 24376,\n  \"opposite</w>\": 12872,\n  \"opposition</w>\": 11062,\n  \"oppre\": 17341,\n  \"oppressed</w>\": 41492,\n  \"oppression</w>\": 30650,\n  \"opra</w>\": 28291,\n  \"oprah</w>\": 22562,\n  \"opry</w>\": 35340,\n  \"ops</w>\": 3054,\n  \"opt\": 45103,\n  \"opt</w>\": 27188,\n  \"opted</w>\": 42035,\n  \"opti\": 6580,\n  \"optic\": 25190,\n  \"optic</w>\": 24755,\n  \"optical</w>\": 16822,\n  \"optics</w>\": 27165,\n  \"optim\": 22331,\n  \"optimal</w>\": 25235,\n  \"optimi\": 9737,\n  \"optimis\": 39459,\n  \"optimism</w>\": 25226,\n  \"optimist</w>\": 44581,\n  \"optimistic</w>\": 23104,\n  \"optimization</w>\": 25125,\n  \"optimize</w>\": 30456,\n  \"optimized</w>\": 43939,\n  \"optimizing</w>\": 49157,\n  \"optimum</w>\": 35974,\n  \"optimus</w>\": 43453,\n  \"option</w>\": 8464,\n  \"optional</w>\": 25411,\n  \"options</w>\": 7063,\n  \"optome\": 35533,\n  \"opul\": 39858,\n  \"opus</w>\": 33295,\n  \"opy</w>\": 21835,\n  \"or\": 523,\n  \"or</w>\": 541,\n  \"ora</w>\": 4301,\n  \"orac\": 24673,\n  \"oracle\": 37308,\n  \"oracle</w>\": 15966,\n  \"orah</w>\": 40820,\n  \"orail</w>\": 45120,\n  \"oral\": 32490,\n  \"oral</w>\": 6007,\n  \"orama</w>\": 33619,\n  \"oran\": 32209,\n  \"oran</w>\": 28395,\n  \"orang\": 22116,\n  \"orange\": 13957,\n  \"orange</w>\": 4287,\n  \"oranges</w>\": 32417,\n  \"orangu\": 36112,\n  \"orb\": 28894,\n  \"orb</w>\": 36958,\n  \"orbit</w>\": 19713,\n  \"orbital</w>\": 40312,\n  \"orc</w>\": 44305,\n  \"orca</w>\": 18631,\n  \"orcas</w>\": 47676,\n  \"orch\": 11893,\n  \"orchar\": 40226,\n  \"orchard</w>\": 19530,\n  \"orche\": 8004,\n  \"orchestr\": 42937,\n  \"orchestra</w>\": 9573,\n  \"orchestral</w>\": 40285,\n  \"orchi\": 23696,\n  \"orchid</w>\": 18678,\n  \"orchids</w>\": 28376,\n  \"ord\": 26903,\n  \"ord</w>\": 11502,\n  \"orda\": 33462,\n  \"ordained</w>\": 38302,\n  \"order\": 24613,\n  \"order</w>\": 2191,\n  \"ordered</w>\": 8335,\n  \"ordering</w>\": 19588,\n  \"orderly</w>\": 43457,\n  \"orders</w>\": 6187,\n  \"ordin\": 4378,\n  \"ordinance</w>\": 38583,\n  \"ordinary</w>\": 8012,\n  \"ore\": 3580,\n  \"ore</w>\": 1423,\n  \"orean</w>\": 36696,\n  \"ored</w>\": 5133,\n  \"oregon\": 21759,\n  \"oregon</w>\": 8035,\n  \"oren\": 21645,\n  \"oreo</w>\": 21873,\n  \"oreos</w>\": 41688,\n  \"ores</w>\": 17328,\n  \"org\": 3401,\n  \"org</w>\": 5593,\n  \"organ\": 3338,\n  \"organ</w>\": 13213,\n  \"organi\": 3636,\n  \"organic\": 24080,\n  \"organic</w>\": 5980,\n  \"organics</w>\": 44199,\n  \"organis\": 13204,\n  \"organisation</w>\": 15868,\n  \"organisations</w>\": 20651,\n  \"organise</w>\": 36073,\n  \"organised</w>\": 13191,\n  \"organiser</w>\": 49141,\n  \"organisers</w>\": 35778,\n  \"organising</w>\": 22787,\n  \"organisms</w>\": 37041,\n  \"organiz\": 11107,\n  \"organization</w>\": 8064,\n  \"organizational</w>\": 29510,\n  \"organizations</w>\": 13453,\n  \"organize</w>\": 19973,\n  \"organized</w>\": 10681,\n  \"organizer</w>\": 23905,\n  \"organizers</w>\": 27191,\n  \"organizing</w>\": 15779,\n  \"organs</w>\": 29872,\n  \"orgs</w>\": 29500,\n  \"ori\": 1540,\n  \"ori</w>\": 8693,\n  \"oria</w>\": 11474,\n  \"orial</w>\": 8648,\n  \"orian</w>\": 21193,\n  \"oric</w>\": 43810,\n  \"orice</w>\": 41341,\n  \"orie</w>\": 18815,\n  \"orient\": 13149,\n  \"orient</w>\": 30770,\n  \"oriental</w>\": 23056,\n  \"orientation</w>\": 16873,\n  \"oriente\": 40390,\n  \"oriented</w>\": 24596,\n  \"orienteering</w>\": 42985,\n  \"ories</w>\": 5934,\n  \"orig\": 2273,\n  \"orig</w>\": 38463,\n  \"origami</w>\": 31832,\n  \"origin\": 2555,\n  \"origin</w>\": 12372,\n  \"original\": 18496,\n  \"original</w>\": 3117,\n  \"originally</w>\": 12849,\n  \"originals</w>\": 16953,\n  \"originated</w>\": 41823,\n  \"origins</w>\": 16291,\n  \"orin</w>\": 39863,\n  \"oring</w>\": 3006,\n  \"orio</w>\": 24308,\n  \"orioles</w>\": 21430,\n  \"orion</w>\": 21765,\n  \"oris</w>\": 37064,\n  \"orities</w>\": 7903,\n  \"ority</w>\": 5556,\n  \"orium</w>\": 12015,\n  \"ork\": 22202,\n  \"ork</w>\": 37235,\n  \"orkney</w>\": 34254,\n  \"orl</w>\": 39465,\n  \"orlando\": 32247,\n  \"orlando</w>\": 7827,\n  \"orleans</w>\": 11127,\n  \"orm</w>\": 38464,\n  \"orn\": 25412,\n  \"orn</w>\": 8130,\n  \"ornam\": 36122,\n  \"ornament</w>\": 23409,\n  \"ornamental</w>\": 46270,\n  \"ornaments</w>\": 28968,\n  \"ornate</w>\": 46865,\n  \"orni\": 27713,\n  \"ornithology</w>\": 38275,\n  \"orns</w>\": 19340,\n  \"oro\": 9848,\n  \"oro</w>\": 14573,\n  \"orous</w>\": 19286,\n  \"orph\": 17318,\n  \"orphan\": 22718,\n  \"orphan</w>\": 28994,\n  \"orphanage</w>\": 45196,\n  \"orphaned</w>\": 46792,\n  \"orphans</w>\": 36588,\n  \"orphe\": 39186,\n  \"orr</w>\": 32977,\n  \"ors</w>\": 1127,\n  \"orship</w>\": 20846,\n  \"ort</w>\": 1019,\n  \"ortega</w>\": 39727,\n  \"orth\": 22584,\n  \"orth</w>\": 24461,\n  \"ortho\": 11366,\n  \"orthodon\": 37730,\n  \"orthodox</w>\": 19008,\n  \"orthop\": 42123,\n  \"orthopedic</w>\": 49341,\n  \"ortiz</w>\": 23544,\n  \"orton</w>\": 37238,\n  \"oru\": 44629,\n  \"oru</w>\": 31281,\n  \"orum</w>\": 42724,\n  \"orwell</w>\": 41218,\n  \"ory\": 16983,\n  \"ory</w>\": 1985,\n  \"os\": 2211,\n  \"os</w>\": 1299,\n  \"osa\": 16340,\n  \"osa</w>\": 17237,\n  \"osaka</w>\": 21347,\n  \"osborne</w>\": 22402,\n  \"osbourne</w>\": 43376,\n  \"osc\": 5092,\n  \"oscar\": 21157,\n  \"oscar</w>\": 8191,\n  \"oscars</w>\": 11098,\n  \"osce</w>\": 37303,\n  \"oscill\": 38272,\n  \"ose\": 46942,\n  \"ose</w>\": 22541,\n  \"osh\": 30717,\n  \"osh</w>\": 35011,\n  \"osha</w>\": 33907,\n  \"oshi</w>\": 34770,\n  \"osi\": 25247,\n  \"osi</w>\": 17636,\n  \"osis</w>\": 13903,\n  \"osity</w>\": 12730,\n  \"oslo</w>\": 20547,\n  \"osm\": 31626,\n  \"osman</w>\": 46539,\n  \"oso\": 42793,\n  \"oso</w>\": 21285,\n  \"osp\": 24387,\n  \"ospre\": 49001,\n  \"osprey</w>\": 37893,\n  \"oss\": 29362,\n  \"oss</w>\": 34640,\n  \"ost\": 23701,\n  \"ost</w>\": 18749,\n  \"oste\": 20632,\n  \"osteo\": 43163,\n  \"oster\": 31781,\n  \"ostr\": 33673,\n  \"ostrich</w>\": 47640,\n  \"osu\": 29480,\n  \"osu</w>\": 19818,\n  \"oswald</w>\": 38471,\n  \"ot\": 1863,\n  \"ot</w>\": 2062,\n  \"ota\": 17509,\n  \"ota</w>\": 8741,\n  \"otago</w>\": 45919,\n  \"otaku</w>\": 40743,\n  \"otas</w>\": 47616,\n  \"otc</w>\": 37934,\n  \"otd</w>\": 5683,\n  \"ote\": 28511,\n  \"ote</w>\": 19744,\n  \"otes</w>\": 27280,\n  \"oth\": 33262,\n  \"oth</w>\": 33519,\n  \"other\": 9758,\n  \"other</w>\": 1010,\n  \"others</w>\": 3326,\n  \"otherwise</w>\": 12376,\n  \"oti\": 19567,\n  \"oti</w>\": 45564,\n  \"otic</w>\": 9671,\n  \"otis</w>\": 28246,\n  \"otive</w>\": 10877,\n  \"oto\": 23946,\n  \"oto</w>\": 23399,\n  \"otp</w>\": 29822,\n  \"otr</w>\": 38685,\n  \"ots</w>\": 5769,\n  \"ott\": 10167,\n  \"ott</w>\": 7936,\n  \"otta\": 7623,\n  \"otta</w>\": 20941,\n  \"ottawa\": 49027,\n  \"ottawa</w>\": 9019,\n  \"otte</w>\": 35214,\n  \"otter\": 34710,\n  \"otter</w>\": 22456,\n  \"otters</w>\": 38883,\n  \"otti</w>\": 36721,\n  \"ottnews</w>\": 33995,\n  \"otto</w>\": 17730,\n  \"ottoman</w>\": 27503,\n  \"otw</w>\": 35259,\n  \"otwol\": 46868,\n  \"ou\": 520,\n  \"ou</w>\": 6544,\n  \"ouat</w>\": 32954,\n  \"ouch</w>\": 13493,\n  \"oud</w>\": 1359,\n  \"oue</w>\": 48838,\n  \"ouf</w>\": 34618,\n  \"ough\": 4204,\n  \"ough</w>\": 991,\n  \"ought</w>\": 2253,\n  \"oughton</w>\": 36860,\n  \"oui</w>\": 39421,\n  \"ouk</w>\": 21796,\n  \"oul\": 20253,\n  \"oul</w>\": 8081,\n  \"ould</w>\": 859,\n  \"oulos</w>\": 32808,\n  \"oun\": 636,\n  \"oun</w>\": 20960,\n  \"ounce</w>\": 15027,\n  \"ounces</w>\": 30299,\n  \"ound\": 2013,\n  \"ound</w>\": 853,\n  \"oundation</w>\": 40132,\n  \"ounded</w>\": 9634,\n  \"ounding</w>\": 11944,\n  \"ounds</w>\": 2753,\n  \"oung\": 35875,\n  \"oung</w>\": 25341,\n  \"ounge</w>\": 29427,\n  \"ount\": 43801,\n  \"ount</w>\": 4172,\n  \"ounts</w>\": 10963,\n  \"oup</w>\": 32815,\n  \"our\": 727,\n  \"our</w>\": 581,\n  \"oura\": 29806,\n  \"oura</w>\": 36352,\n  \"ourable</w>\": 24126,\n  \"ourage</w>\": 34525,\n  \"oural</w>\": 45840,\n  \"oured</w>\": 6956,\n  \"ouri\": 12696,\n  \"ouring</w>\": 12000,\n  \"ourism</w>\": 25496,\n  \"ourke</w>\": 26480,\n  \"ourlives</w>\": 37541,\n  \"ouro\": 41224,\n  \"ours</w>\": 1491,\n  \"ourse</w>\": 15415,\n  \"ourselves</w>\": 10124,\n  \"ourt</w>\": 22960,\n  \"oury</w>\": 29484,\n  \"ous\": 1987,\n  \"ous</w>\": 879,\n  \"ouse\": 32048,\n  \"ouse</w>\": 7603,\n  \"ouses</w>\": 33666,\n  \"ously</w>\": 2501,\n  \"ousness</w>\": 10689,\n  \"ousy</w>\": 28302,\n  \"out\": 1130,\n  \"out</w>\": 620,\n  \"outa</w>\": 35187,\n  \"outage</w>\": 27320,\n  \"outages</w>\": 40353,\n  \"outback</w>\": 28532,\n  \"outbound</w>\": 41256,\n  \"outbreak</w>\": 20103,\n  \"outcome</w>\": 16552,\n  \"outcomes</w>\": 14016,\n  \"outdated</w>\": 38313,\n  \"outdoor\": 19184,\n  \"outdoor</w>\": 6368,\n  \"outdoors</w>\": 10469,\n  \"oute</w>\": 44180,\n  \"outed</w>\": 34435,\n  \"outer\": 30499,\n  \"outer</w>\": 14188,\n  \"outes</w>\": 39600,\n  \"outfield</w>\": 41826,\n  \"outfit</w>\": 6525,\n  \"outfits</w>\": 16366,\n  \"outfitters</w>\": 37725,\n  \"outfy</w>\": 34920,\n  \"outgoing</w>\": 27302,\n  \"outh\": 16933,\n  \"outh</w>\": 8111,\n  \"outine</w>\": 35452,\n  \"outing</w>\": 11251,\n  \"outlander\": 45820,\n  \"outlander</w>\": 17095,\n  \"outlaw\": 37498,\n  \"outlaw</w>\": 27340,\n  \"outlaws</w>\": 30935,\n  \"outlet</w>\": 16855,\n  \"outlets</w>\": 20822,\n  \"outline</w>\": 26894,\n  \"outlines</w>\": 29159,\n  \"outlining</w>\": 45960,\n  \"outlook</w>\": 12983,\n  \"outof\": 43958,\n  \"outpatient</w>\": 46603,\n  \"outpost</w>\": 44622,\n  \"output</w>\": 17255,\n  \"outra\": 14262,\n  \"outrage</w>\": 23577,\n  \"outraged</w>\": 43402,\n  \"outrageous</w>\": 29342,\n  \"outre\": 14373,\n  \"outreach</w>\": 15297,\n  \"outright</w>\": 38200,\n  \"outs</w>\": 5790,\n  \"outsi\": 22515,\n  \"outside\": 47693,\n  \"outside</w>\": 2782,\n  \"outsider</w>\": 41196,\n  \"outsiders</w>\": 41742,\n  \"outskirts</w>\": 42088,\n  \"outsourcing</w>\": 34543,\n  \"outstanding</w>\": 6387,\n  \"outta</w>\": 15807,\n  \"outtuesday</w>\": 48692,\n  \"outw\": 34650,\n  \"oux\": 40960,\n  \"oux</w>\": 14228,\n  \"ov\": 6420,\n  \"ov</w>\": 8479,\n  \"ova</w>\": 12762,\n  \"oval</w>\": 15039,\n  \"ovarian</w>\": 42913,\n  \"ovation</w>\": 24333,\n  \"ove\": 8649,\n  \"ove</w>\": 15456,\n  \"oven\": 44620,\n  \"oven</w>\": 12579,\n  \"over\": 1658,\n  \"over</w>\": 962,\n  \"overall</w>\": 6914,\n  \"overboard</w>\": 42982,\n  \"overcame</w>\": 47235,\n  \"overcast</w>\": 36942,\n  \"overcome</w>\": 14365,\n  \"overcoming</w>\": 29348,\n  \"overdose</w>\": 27017,\n  \"overdrive</w>\": 40088,\n  \"overdue</w>\": 30240,\n  \"overflow</w>\": 32885,\n  \"overflowing</w>\": 45370,\n  \"overhaul</w>\": 31531,\n  \"overhead</w>\": 20321,\n  \"overland</w>\": 38808,\n  \"overlay</w>\": 44827,\n  \"overload</w>\": 24327,\n  \"overlook</w>\": 35767,\n  \"overlooked</w>\": 27632,\n  \"overlooking</w>\": 17319,\n  \"overly</w>\": 28820,\n  \"overnight</w>\": 9913,\n  \"overpass</w>\": 44310,\n  \"overrated</w>\": 38214,\n  \"overs\": 45774,\n  \"overs</w>\": 17329,\n  \"overseas</w>\": 15100,\n  \"oversight</w>\": 32494,\n  \"oversized</w>\": 31557,\n  \"overtime</w>\": 19347,\n  \"overturned</w>\": 31048,\n  \"overview</w>\": 14789,\n  \"overwatch</w>\": 18124,\n  \"overweight</w>\": 43465,\n  \"overwhel\": 12204,\n  \"overwhelmed</w>\": 23459,\n  \"overwhelming</w>\": 20306,\n  \"overwhelmingly</w>\": 43549,\n  \"ovi\": 32508,\n  \"ovic</w>\": 22417,\n  \"ovich</w>\": 27623,\n  \"ovie\": 47677,\n  \"ovo\": 41920,\n  \"ovo</w>\": 18065,\n  \"ovski</w>\": 26167,\n  \"ow\": 2032,\n  \"ow</w>\": 2250,\n  \"owa</w>\": 32770,\n  \"owe</w>\": 19073,\n  \"owed</w>\": 37641,\n  \"owen\": 24838,\n  \"owen</w>\": 12056,\n  \"owens</w>\": 20664,\n  \"owes</w>\": 35069,\n  \"owing</w>\": 48582,\n  \"owl\": 34332,\n  \"owl</w>\": 9899,\n  \"owls</w>\": 18247,\n  \"own\": 3845,\n  \"own</w>\": 1758,\n  \"owned</w>\": 8536,\n  \"owner</w>\": 5019,\n  \"owners</w>\": 7712,\n  \"ownership</w>\": 16583,\n  \"owning</w>\": 24661,\n  \"owns</w>\": 17533,\n  \"owo</w>\": 46142,\n  \"ows</w>\": 27423,\n  \"owski</w>\": 22573,\n  \"ox\": 3282,\n  \"ox</w>\": 12071,\n  \"oxfam</w>\": 45466,\n  \"oxford\": 28588,\n  \"oxford</w>\": 8824,\n  \"oxfordshire</w>\": 37855,\n  \"oxi\": 33731,\n  \"oxi</w>\": 48147,\n  \"oxid\": 17701,\n  \"oxide</w>\": 28235,\n  \"oxo</w>\": 37088,\n  \"oxy\": 12432,\n  \"oxygen</w>\": 16214,\n  \"oy\": 6638,\n  \"oy</w>\": 12437,\n  \"oya</w>\": 38894,\n  \"oye\": 48677,\n  \"oyster\": 40545,\n  \"oyster</w>\": 17253,\n  \"oysters</w>\": 22672,\n  \"oz\": 10584,\n  \"oz</w>\": 6044,\n  \"ozar\": 31848,\n  \"ozil</w>\": 41365,\n  \"ozone</w>\": 37052,\n  \"ozzy</w>\": 39549,\n  \"p\": 79,\n  \"p</w>\": 335,\n  \"pa\": 765,\n  \"pa</w>\": 2217,\n  \"paa</w>\": 32812,\n  \"pab\": 9354,\n  \"pablo\": 42172,\n  \"pablo</w>\": 14473,\n  \"pac\": 2332,\n  \"pac</w>\": 7608,\n  \"pace\": 40600,\n  \"pace</w>\": 9450,\n  \"paced</w>\": 32611,\n  \"pacers</w>\": 23976,\n  \"paces</w>\": 43001,\n  \"paci\": 5699,\n  \"pacific\": 19723,\n  \"pacific</w>\": 6654,\n  \"pacing</w>\": 45202,\n  \"pack\": 2711,\n  \"pack</w>\": 3420,\n  \"package</w>\": 7053,\n  \"packaged</w>\": 29656,\n  \"packages</w>\": 14305,\n  \"packaging</w>\": 11658,\n  \"packard</w>\": 46421,\n  \"packed</w>\": 5883,\n  \"packer</w>\": 28209,\n  \"packers</w>\": 14294,\n  \"packet</w>\": 25022,\n  \"packets</w>\": 40448,\n  \"packing</w>\": 9829,\n  \"packs</w>\": 11086,\n  \"paco</w>\": 41364,\n  \"pacqui\": 28456,\n  \"pacquiao</w>\": 30485,\n  \"pact</w>\": 27182,\n  \"pad\": 3798,\n  \"pad</w>\": 7601,\n  \"padded</w>\": 42253,\n  \"paddington</w>\": 33162,\n  \"paddle\": 38276,\n  \"paddle</w>\": 20811,\n  \"paddling</w>\": 40645,\n  \"paddock</w>\": 29590,\n  \"paddy\": 33103,\n  \"paddy</w>\": 19855,\n  \"padi</w>\": 47037,\n  \"padilla</w>\": 22380,\n  \"padma\": 44595,\n  \"padma</w>\": 46457,\n  \"padre</w>\": 38343,\n  \"padres</w>\": 22829,\n  \"pads</w>\": 17353,\n  \"paedi\": 41488,\n  \"paella</w>\": 46924,\n  \"paf\": 47185,\n  \"pafc</w>\": 49259,\n  \"pag\": 4151,\n  \"pag</w>\": 30525,\n  \"pagan</w>\": 27854,\n  \"page\": 14996,\n  \"page</w>\": 2504,\n  \"pageant</w>\": 22139,\n  \"pages</w>\": 8082,\n  \"pagoda</w>\": 44309,\n  \"pah\": 41054,\n  \"pah</w>\": 26884,\n  \"pai\": 20624,\n  \"pai</w>\": 21198,\n  \"paid</w>\": 5057,\n  \"paige\": 33659,\n  \"paige</w>\": 16022,\n  \"paign</w>\": 31796,\n  \"pain\": 2141,\n  \"pain</w>\": 4495,\n  \"paine</w>\": 38069,\n  \"painful</w>\": 16361,\n  \"pains</w>\": 25639,\n  \"paint\": 7948,\n  \"paint</w>\": 5185,\n  \"paintball</w>\": 39730,\n  \"painted</w>\": 6433,\n  \"painter</w>\": 10888,\n  \"painters</w>\": 35703,\n  \"painting\": 49164,\n  \"painting</w>\": 3086,\n  \"paintings</w>\": 9956,\n  \"paints</w>\": 21672,\n  \"pair\": 19848,\n  \"pair</w>\": 4038,\n  \"paired</w>\": 12433,\n  \"pairing</w>\": 16313,\n  \"pairings</w>\": 41152,\n  \"pairs</w>\": 9950,\n  \"pais\": 16878,\n  \"paisley</w>\": 22954,\n  \"pajam\": 24110,\n  \"pajama</w>\": 40244,\n  \"pajamas</w>\": 37231,\n  \"pak\": 13186,\n  \"pak</w>\": 9094,\n  \"paki\": 3438,\n  \"pakistan\": 10713,\n  \"pakistan</w>\": 3994,\n  \"pakistani</w>\": 14050,\n  \"pakistanis</w>\": 45707,\n  \"pakv\": 38196,\n  \"pal\": 1850,\n  \"pal</w>\": 3611,\n  \"pala</w>\": 17895,\n  \"palace</w>\": 6381,\n  \"palaces</w>\": 45625,\n  \"palad\": 28371,\n  \"palae\": 43379,\n  \"palais</w>\": 35673,\n  \"palate</w>\": 34666,\n  \"palawan</w>\": 48202,\n  \"palazzo</w>\": 36006,\n  \"pale\": 4768,\n  \"pale</w>\": 12518,\n  \"paleo\": 36741,\n  \"paleo</w>\": 22198,\n  \"paler\": 38028,\n  \"palermo</w>\": 40635,\n  \"palestin\": 9449,\n  \"palestine</w>\": 11682,\n  \"palestinian</w>\": 11764,\n  \"palestinians</w>\": 21874,\n  \"palette</w>\": 13901,\n  \"pali\": 48063,\n  \"palin</w>\": 40153,\n  \"palis\": 44256,\n  \"pality</w>\": 27296,\n  \"pall\": 35817,\n  \"palla\": 21208,\n  \"palladium</w>\": 37888,\n  \"pallet</w>\": 39057,\n  \"palli\": 28954,\n  \"palliative</w>\": 46014,\n  \"pally</w>\": 46073,\n  \"palm\": 19651,\n  \"palm</w>\": 8612,\n  \"palma</w>\": 29888,\n  \"palmer\": 40112,\n  \"palmer</w>\": 13633,\n  \"palms</w>\": 27059,\n  \"palo</w>\": 31562,\n  \"palom\": 47698,\n  \"palooza</w>\": 25861,\n  \"pals</w>\": 11043,\n  \"palsy</w>\": 46651,\n  \"pam\": 8228,\n  \"pam</w>\": 18513,\n  \"pamela</w>\": 26991,\n  \"pamp\": 37653,\n  \"pamper</w>\": 44345,\n  \"pamph\": 41332,\n  \"pan\": 1072,\n  \"pan</w>\": 7437,\n  \"panam\": 24606,\n  \"panama</w>\": 15522,\n  \"panas\": 26207,\n  \"panasonic</w>\": 29750,\n  \"pancake</w>\": 18723,\n  \"pancakes</w>\": 15308,\n  \"panch\": 27251,\n  \"pancra\": 42472,\n  \"pancre\": 27708,\n  \"pancreatic</w>\": 49337,\n  \"pancy</w>\": 41625,\n  \"pand\": 5631,\n  \"panda</w>\": 12952,\n  \"pandas</w>\": 35119,\n  \"pande\": 38419,\n  \"pandey</w>\": 34895,\n  \"pandit</w>\": 41191,\n  \"pandor\": 30250,\n  \"pandora</w>\": 17727,\n  \"pandoramusic</w>\": 42344,\n  \"pane</w>\": 27470,\n  \"panel</w>\": 3724,\n  \"paneli\": 19410,\n  \"panelist</w>\": 39719,\n  \"panelists</w>\": 24619,\n  \"panels</w>\": 12735,\n  \"panera</w>\": 48471,\n  \"pang\": 16756,\n  \"pang</w>\": 23672,\n  \"panhandle</w>\": 40919,\n  \"pani</w>\": 36092,\n  \"panic\": 46671,\n  \"panic</w>\": 14124,\n  \"panini</w>\": 30410,\n  \"pann\": 42302,\n  \"panna</w>\": 49065,\n  \"pano</w>\": 36165,\n  \"panor\": 12962,\n  \"panorama</w>\": 19763,\n  \"panoramic</w>\": 22563,\n  \"pans</w>\": 35204,\n  \"pant</w>\": 22550,\n  \"panther\": 22825,\n  \"panther</w>\": 13262,\n  \"panthers</w>\": 10494,\n  \"panties</w>\": 32515,\n  \"panto</w>\": 28776,\n  \"pantry</w>\": 25608,\n  \"pants</w>\": 5003,\n  \"panty\": 44217,\n  \"pany</w>\": 45567,\n  \"panzer</w>\": 41159,\n  \"pao</w>\": 33790,\n  \"paola</w>\": 44689,\n  \"paolo\": 48488,\n  \"paolo</w>\": 21133,\n  \"pap\": 1884,\n  \"pap</w>\": 30756,\n  \"papa</w>\": 12211,\n  \"papar\": 32782,\n  \"paparazzi</w>\": 37842,\n  \"papaya</w>\": 44098,\n  \"paper\": 8680,\n  \"paper</w>\": 2802,\n  \"paperback</w>\": 17928,\n  \"papers</w>\": 8204,\n  \"paperwork</w>\": 35785,\n  \"papi</w>\": 35177,\n  \"papp\": 26361,\n  \"paprika</w>\": 44793,\n  \"papua</w>\": 32629,\n  \"par\": 699,\n  \"par</w>\": 9163,\n  \"para\": 18355,\n  \"para</w>\": 8976,\n  \"parach\": 23147,\n  \"parachute</w>\": 30122,\n  \"parad\": 37143,\n  \"parade</w>\": 5809,\n  \"parades</w>\": 46479,\n  \"paradi\": 6658,\n  \"paradig\": 27786,\n  \"paradigm</w>\": 33485,\n  \"paradise\": 45869,\n  \"paradise</w>\": 7247,\n  \"paradox</w>\": 33109,\n  \"parag\": 11866,\n  \"paragon</w>\": 48099,\n  \"paragra\": 24903,\n  \"paragraph</w>\": 28499,\n  \"paragu\": 38021,\n  \"paraguay</w>\": 43579,\n  \"paral\": 15143,\n  \"paralle\": 13184,\n  \"parallel</w>\": 18201,\n  \"paralleled</w>\": 42520,\n  \"parallels</w>\": 46101,\n  \"paraly\": 30255,\n  \"paralym\": 18727,\n  \"paralympic</w>\": 30806,\n  \"paralympics</w>\": 37162,\n  \"paralysis</w>\": 45702,\n  \"param\": 12250,\n  \"parame\": 27106,\n  \"paramedic</w>\": 34630,\n  \"paramedics</w>\": 35991,\n  \"parameters</w>\": 44890,\n  \"paramore</w>\": 34401,\n  \"paramount</w>\": 26642,\n  \"parano\": 30283,\n  \"paranoid</w>\": 43029,\n  \"paranor\": 16940,\n  \"paranormal</w>\": 19047,\n  \"parap\": 41091,\n  \"paras\": 15198,\n  \"parasite</w>\": 42460,\n  \"parasites</w>\": 46175,\n  \"parc</w>\": 30914,\n  \"parcel</w>\": 30367,\n  \"parcels</w>\": 45589,\n  \"pard</w>\": 18773,\n  \"pardon\": 47606,\n  \"pardon</w>\": 26565,\n  \"pare\": 18202,\n  \"pared</w>\": 5498,\n  \"paren\": 3106,\n  \"parent\": 47848,\n  \"parent</w>\": 10183,\n  \"parental</w>\": 28339,\n  \"parenthood</w>\": 23887,\n  \"parenting</w>\": 14529,\n  \"parents</w>\": 3731,\n  \"pares</w>\": 12420,\n  \"parfait</w>\": 46140,\n  \"pari\": 17961,\n  \"pari</w>\": 27979,\n  \"paris\": 13982,\n  \"paris</w>\": 3445,\n  \"parisagreement</w>\": 47405,\n  \"parish\": 47328,\n  \"parish</w>\": 13020,\n  \"parisi\": 45081,\n  \"parisian</w>\": 38512,\n  \"parity</w>\": 42734,\n  \"park\": 4985,\n  \"park</w>\": 1452,\n  \"parked</w>\": 16487,\n  \"parker\": 31119,\n  \"parker</w>\": 8365,\n  \"parkin\": 34868,\n  \"parking</w>\": 5984,\n  \"parkinson</w>\": 28129,\n  \"parkland</w>\": 31287,\n  \"parkrun</w>\": 25747,\n  \"parks</w>\": 6873,\n  \"parkway</w>\": 19882,\n  \"parl\": 30373,\n  \"parl</w>\": 29897,\n  \"parliam\": 5941,\n  \"parliament\": 41599,\n  \"parliament</w>\": 7151,\n  \"parliamentary</w>\": 17912,\n  \"parlor</w>\": 38253,\n  \"parlour</w>\": 37829,\n  \"parma</w>\": 36077,\n  \"parme\": 26295,\n  \"parmesan</w>\": 27274,\n  \"paro\": 17429,\n  \"parody</w>\": 24318,\n  \"parole</w>\": 32158,\n  \"parr</w>\": 44113,\n  \"parrish</w>\": 43043,\n  \"parrot</w>\": 23565,\n  \"parry</w>\": 40604,\n  \"parsley</w>\": 30077,\n  \"parsons</w>\": 22505,\n  \"part\": 1872,\n  \"part</w>\": 1551,\n  \"parte</w>\": 48508,\n  \"parth</w>\": 34790,\n  \"parti\": 10509,\n  \"partial</w>\": 18957,\n  \"partially</w>\": 21269,\n  \"partic\": 2871,\n  \"partici\": 9540,\n  \"particip\": 4400,\n  \"participant</w>\": 27674,\n  \"participants</w>\": 10237,\n  \"participate</w>\": 9433,\n  \"participated</w>\": 14252,\n  \"participates</w>\": 46414,\n  \"participating</w>\": 11535,\n  \"participation</w>\": 13529,\n  \"particle</w>\": 27716,\n  \"particles</w>\": 27012,\n  \"particul\": 11408,\n  \"particular</w>\": 14098,\n  \"particularly</w>\": 12170,\n  \"parties</w>\": 9032,\n  \"parting</w>\": 32844,\n  \"partisan</w>\": 20772,\n  \"partist</w>\": 44713,\n  \"partition</w>\": 42219,\n  \"partly</w>\": 21459,\n  \"partner\": 5210,\n  \"partner</w>\": 4568,\n  \"partnered</w>\": 21402,\n  \"partnering</w>\": 21182,\n  \"partners</w>\": 5568,\n  \"partnership</w>\": 6123,\n  \"partnerships</w>\": 17418,\n  \"parton</w>\": 43245,\n  \"partridge</w>\": 34872,\n  \"parts</w>\": 5149,\n  \"party\": 12877,\n  \"party</w>\": 1580,\n  \"partying</w>\": 25702,\n  \"pas\": 1341,\n  \"pas</w>\": 9525,\n  \"pasadena</w>\": 25892,\n  \"pascal</w>\": 28626,\n  \"pasco</w>\": 49220,\n  \"pascu\": 42692,\n  \"pash\": 23936,\n  \"pasha</w>\": 46986,\n  \"paso</w>\": 18542,\n  \"pasqu\": 44941,\n  \"pass\": 5016,\n  \"pass</w>\": 3511,\n  \"passage</w>\": 16477,\n  \"passages</w>\": 48937,\n  \"passed</w>\": 4957,\n  \"passenger</w>\": 12311,\n  \"passengers</w>\": 12781,\n  \"passer</w>\": 48544,\n  \"passes</w>\": 7633,\n  \"passi\": 32471,\n  \"passing</w>\": 6589,\n  \"passion\": 8822,\n  \"passion</w>\": 5332,\n  \"passionate</w>\": 10947,\n  \"passionately</w>\": 44028,\n  \"passions</w>\": 38441,\n  \"passive</w>\": 23171,\n  \"passover</w>\": 38426,\n  \"passport</w>\": 14739,\n  \"passports</w>\": 46368,\n  \"password</w>\": 20258,\n  \"passwords</w>\": 43095,\n  \"past\": 7315,\n  \"past</w>\": 2729,\n  \"pasta</w>\": 10441,\n  \"paste\": 34765,\n  \"paste</w>\": 17038,\n  \"pastel</w>\": 19457,\n  \"pastels</w>\": 45699,\n  \"pastor\": 19792,\n  \"pastor</w>\": 9664,\n  \"pastoral</w>\": 37191,\n  \"pastors</w>\": 30959,\n  \"pastr\": 45478,\n  \"pastries</w>\": 39409,\n  \"pastry</w>\": 18582,\n  \"pasture</w>\": 34764,\n  \"pastures</w>\": 47793,\n  \"pat\": 1300,\n  \"pat</w>\": 7036,\n  \"patag\": 29862,\n  \"patagonia</w>\": 32786,\n  \"patch\": 29284,\n  \"patch</w>\": 8721,\n  \"patches</w>\": 22104,\n  \"patchwork</w>\": 44675,\n  \"patchy</w>\": 47488,\n  \"pate\": 42122,\n  \"pate</w>\": 42098,\n  \"patel</w>\": 14168,\n  \"patent</w>\": 14692,\n  \"patented</w>\": 37277,\n  \"patents</w>\": 33911,\n  \"paterson</w>\": 36560,\n  \"path\": 7408,\n  \"path</w>\": 5035,\n  \"pathetic</w>\": 18222,\n  \"pathfinder</w>\": 35415,\n  \"pathi\": 34976,\n  \"pathi</w>\": 27347,\n  \"pathic</w>\": 49025,\n  \"patho\": 18534,\n  \"pathology</w>\": 23290,\n  \"paths</w>\": 16333,\n  \"pathway</w>\": 23488,\n  \"pathways</w>\": 24690,\n  \"pathy</w>\": 13330,\n  \"pati\": 2799,\n  \"pati</w>\": 26708,\n  \"patience</w>\": 13575,\n  \"patient\": 30139,\n  \"patient</w>\": 6262,\n  \"patiently</w>\": 22980,\n  \"patients</w>\": 5543,\n  \"patil</w>\": 49187,\n  \"patio</w>\": 14304,\n  \"pational</w>\": 30627,\n  \"patna</w>\": 45025,\n  \"patory</w>\": 41859,\n  \"patreon</w>\": 17165,\n  \"patri\": 4771,\n  \"patriarch</w>\": 49054,\n  \"patriarchy</w>\": 48806,\n  \"patric\": 12569,\n  \"patrice</w>\": 40731,\n  \"patricia</w>\": 18143,\n  \"patrick\": 12078,\n  \"patrick</w>\": 5286,\n  \"patricks</w>\": 46783,\n  \"patriot\": 28896,\n  \"patriot</w>\": 15692,\n  \"patrioti\": 35520,\n  \"patriotic</w>\": 20217,\n  \"patriotism</w>\": 35807,\n  \"patriots</w>\": 8707,\n  \"patro\": 31650,\n  \"patrol</w>\": 10073,\n  \"patrolling</w>\": 39344,\n  \"patrols</w>\": 35978,\n  \"patron\": 26658,\n  \"patron</w>\": 17683,\n  \"patrons</w>\": 28308,\n  \"pats</w>\": 24874,\n  \"patsy</w>\": 46093,\n  \"patt\": 12637,\n  \"patter\": 4982,\n  \"pattern</w>\": 7447,\n  \"patterned</w>\": 47212,\n  \"patterns</w>\": 11637,\n  \"patterson</w>\": 21384,\n  \"patti\": 44927,\n  \"patti</w>\": 26123,\n  \"pattinson</w>\": 32474,\n  \"patton</w>\": 29026,\n  \"patty\": 48741,\n  \"patty</w>\": 18321,\n  \"pau\": 1834,\n  \"pau</w>\": 35970,\n  \"paul\": 6035,\n  \"paul</w>\": 2597,\n  \"paula\": 37363,\n  \"paula</w>\": 16777,\n  \"pauline</w>\": 30438,\n  \"paulo\": 48002,\n  \"paulo</w>\": 21628,\n  \"pauls\": 41413,\n  \"pauls</w>\": 40010,\n  \"paulson</w>\": 48201,\n  \"pause</w>\": 19439,\n  \"paused</w>\": 46782,\n  \"pav\": 6661,\n  \"pave</w>\": 37107,\n  \"paved</w>\": 27898,\n  \"pavel</w>\": 43152,\n  \"pavement</w>\": 27669,\n  \"pavilion</w>\": 13374,\n  \"paving</w>\": 28651,\n  \"paw\": 14009,\n  \"paw</w>\": 16016,\n  \"pawan\": 29754,\n  \"pawankalyan</w>\": 33702,\n  \"pawn</w>\": 43195,\n  \"paws</w>\": 16714,\n  \"pax\": 20007,\n  \"pax</w>\": 19033,\n  \"paxton</w>\": 38347,\n  \"pay\": 2642,\n  \"pay</w>\": 3345,\n  \"payback</w>\": 36413,\n  \"paycheck</w>\": 45078,\n  \"payday</w>\": 26957,\n  \"payee</w>\": 46985,\n  \"payer</w>\": 41503,\n  \"paying</w>\": 8341,\n  \"payment</w>\": 10596,\n  \"payments</w>\": 11832,\n  \"payne</w>\": 12775,\n  \"paypal</w>\": 21442,\n  \"payroll</w>\": 31610,\n  \"pays</w>\": 10845,\n  \"paysoff</w>\": 48174,\n  \"paytm</w>\": 45352,\n  \"payton</w>\": 27348,\n  \"paz</w>\": 22267,\n  \"pb\": 20112,\n  \"pb</w>\": 10981,\n  \"pba</w>\": 28205,\n  \"pbb\": 48567,\n  \"pbb</w>\": 40589,\n  \"pbc</w>\": 49191,\n  \"pbl</w>\": 35166,\n  \"pbr</w>\": 32998,\n  \"pbs</w>\": 17908,\n  \"pc\": 6782,\n  \"pc</w>\": 3808,\n  \"pca</w>\": 35705,\n  \"pcb</w>\": 26235,\n  \"pcc</w>\": 36059,\n  \"pci</w>\": 38957,\n  \"pcm</w>\": 47436,\n  \"pcr</w>\": 35704,\n  \"pcs</w>\": 11917,\n  \"pcso</w>\": 31963,\n  \"pct</w>\": 22168,\n  \"pd\": 4387,\n  \"pd</w>\": 4675,\n  \"pdates</w>\": 16842,\n  \"pdc</w>\": 40498,\n  \"pdf</w>\": 15181,\n  \"pdp</w>\": 24601,\n  \"pdt</w>\": 21743,\n  \"pdx\": 25470,\n  \"pdx</w>\": 16153,\n  \"pe\": 661,\n  \"pe</w>\": 956,\n  \"pea</w>\": 13915,\n  \"peabo\": 34083,\n  \"peabody</w>\": 41244,\n  \"peac\": 34615,\n  \"peace\": 6249,\n  \"peace</w>\": 3021,\n  \"peaceful</w>\": 9461,\n  \"peacefully</w>\": 30530,\n  \"peacekeeping</w>\": 43630,\n  \"peach\": 10522,\n  \"peach</w>\": 11538,\n  \"peaches</w>\": 27216,\n  \"peak\": 18572,\n  \"peak</w>\": 6026,\n  \"peakdistrict</w>\": 41289,\n  \"peake</w>\": 24810,\n  \"peaked</w>\": 36391,\n  \"peaks</w>\": 14067,\n  \"pean\": 11563,\n  \"peanu\": 25843,\n  \"peanut</w>\": 12491,\n  \"peanuts</w>\": 26503,\n  \"pear\": 4910,\n  \"pear</w>\": 18820,\n  \"pearce</w>\": 25996,\n  \"pearl\": 21806,\n  \"pearl</w>\": 8560,\n  \"pearljam</w>\": 46739,\n  \"pearls</w>\": 19581,\n  \"pears</w>\": 39565,\n  \"pearson</w>\": 20461,\n  \"peas</w>\": 15937,\n  \"peasant</w>\": 40621,\n  \"peasants</w>\": 48788,\n  \"peat</w>\": 26914,\n  \"pebble</w>\": 28056,\n  \"pebbles</w>\": 40155,\n  \"pec\": 32447,\n  \"pec</w>\": 17611,\n  \"pecan</w>\": 32177,\n  \"peck\": 25186,\n  \"peck</w>\": 29234,\n  \"pecker</w>\": 30169,\n  \"peckham</w>\": 45863,\n  \"pecu\": 34200,\n  \"peculiar</w>\": 42808,\n  \"ped\": 13197,\n  \"ped</w>\": 2966,\n  \"pedago\": 34590,\n  \"pedagogy</w>\": 48072,\n  \"pedal\": 32943,\n  \"pedal</w>\": 19621,\n  \"pedals</w>\": 38535,\n  \"pede\": 12862,\n  \"pede</w>\": 19560,\n  \"pedestri\": 30027,\n  \"pedestrian</w>\": 18256,\n  \"pedestrians</w>\": 33895,\n  \"pedi\": 12967,\n  \"pedia</w>\": 11733,\n  \"pediatric\": 48431,\n  \"pediatric</w>\": 22071,\n  \"pedic\": 35319,\n  \"pedic</w>\": 44528,\n  \"pedro\": 29963,\n  \"pedro</w>\": 15114,\n  \"peds</w>\": 45377,\n  \"pee\": 12988,\n  \"pee</w>\": 11196,\n  \"peed</w>\": 47369,\n  \"peek\": 46323,\n  \"peek</w>\": 7569,\n  \"peeking</w>\": 48771,\n  \"peel\": 34386,\n  \"peel</w>\": 17158,\n  \"peeled</w>\": 33533,\n  \"peeling</w>\": 48649,\n  \"peep\": 25425,\n  \"peep</w>\": 16857,\n  \"peeps</w>\": 11681,\n  \"peer\": 32416,\n  \"peer</w>\": 14432,\n  \"peers</w>\": 21626,\n  \"pees</w>\": 31830,\n  \"peg\": 32182,\n  \"peg</w>\": 11207,\n  \"pegas\": 30018,\n  \"pegasus</w>\": 37822,\n  \"peggy</w>\": 24271,\n  \"pei\": 48166,\n  \"pei</w>\": 12917,\n  \"pel\": 4286,\n  \"pel</w>\": 7006,\n  \"pele</w>\": 44105,\n  \"pelican</w>\": 34131,\n  \"pelicans</w>\": 29363,\n  \"pell</w>\": 46981,\n  \"pelle\": 31267,\n  \"pelled</w>\": 32506,\n  \"pellegr\": 38529,\n  \"pellets</w>\": 48240,\n  \"pelo\": 40192,\n  \"pelo</w>\": 40238,\n  \"pelosi</w>\": 22169,\n  \"pelvic</w>\": 45646,\n  \"pemb\": 19880,\n  \"pembro\": 24084,\n  \"pembroke\": 36702,\n  \"pembroke</w>\": 40044,\n  \"pembrokeshire</w>\": 40695,\n  \"pen\": 1501,\n  \"pen</w>\": 5356,\n  \"pena</w>\": 35788,\n  \"penalties</w>\": 25417,\n  \"penalty</w>\": 11491,\n  \"penang</w>\": 29545,\n  \"penc\": 20065,\n  \"pence</w>\": 18002,\n  \"pencil\": 41303,\n  \"pencil</w>\": 11200,\n  \"pencils</w>\": 21909,\n  \"pend\": 3052,\n  \"pendant</w>\": 12415,\n  \"pendants</w>\": 44117,\n  \"pending</w>\": 12770,\n  \"pendleton</w>\": 44272,\n  \"pendu\": 45336,\n  \"penelope</w>\": 36703,\n  \"penetr\": 26058,\n  \"peng\": 42955,\n  \"peng</w>\": 39200,\n  \"pengu\": 8854,\n  \"penguin\": 28249,\n  \"penguin</w>\": 14952,\n  \"penguins</w>\": 16557,\n  \"peninsu\": 13464,\n  \"peninsula</w>\": 14070,\n  \"penn\": 7760,\n  \"penn</w>\": 11128,\n  \"pennant</w>\": 43971,\n  \"penned</w>\": 45077,\n  \"penney</w>\": 47856,\n  \"pennies</w>\": 43094,\n  \"pennsylvania</w>\": 13673,\n  \"penny\": 20400,\n  \"penny</w>\": 11388,\n  \"pens\": 13307,\n  \"pens</w>\": 13310,\n  \"pensac\": 30925,\n  \"pensacola</w>\": 33573,\n  \"pension\": 32840,\n  \"pension</w>\": 17764,\n  \"pensions</w>\": 29773,\n  \"penske</w>\": 47154,\n  \"pent\": 10699,\n  \"pent</w>\": 22725,\n  \"pentagon</w>\": 23133,\n  \"pente\": 33165,\n  \"penthouse</w>\": 32673,\n  \"penultimate</w>\": 36553,\n  \"peop\": 1030,\n  \"people\": 10573,\n  \"people</w>\": 1047,\n  \"peoples\": 28241,\n  \"peoples</w>\": 14627,\n  \"peopleschoice</w>\": 32418,\n  \"peoplesvote</w>\": 45830,\n  \"peoria</w>\": 36985,\n  \"pep\": 12761,\n  \"pep</w>\": 14898,\n  \"pepe</w>\": 24778,\n  \"pepp\": 34425,\n  \"pepper\": 14861,\n  \"pepper</w>\": 8253,\n  \"peppermint</w>\": 30321,\n  \"pepperoni</w>\": 47307,\n  \"peppers</w>\": 14650,\n  \"pepsi</w>\": 21307,\n  \"per\": 703,\n  \"per</w>\": 1284,\n  \"pera</w>\": 26294,\n  \"perce\": 24135,\n  \"perceived</w>\": 38436,\n  \"percent\": 16328,\n  \"percent</w>\": 9017,\n  \"percentage</w>\": 19477,\n  \"percep\": 28017,\n  \"perception</w>\": 20591,\n  \"perceptions</w>\": 38138,\n  \"perch</w>\": 34281,\n  \"perched</w>\": 40071,\n  \"percu\": 41722,\n  \"percussion</w>\": 23980,\n  \"percy</w>\": 23940,\n  \"pere\": 8665,\n  \"pere</w>\": 36300,\n  \"pered</w>\": 24509,\n  \"peregr\": 37479,\n  \"peregrine</w>\": 44546,\n  \"pereira</w>\": 43927,\n  \"peren\": 24564,\n  \"perenni\": 26996,\n  \"perennial</w>\": 34038,\n  \"perez</w>\": 15107,\n  \"perf</w>\": 22816,\n  \"perfe\": 1624,\n  \"perfec\": 6599,\n  \"perfect\": 17261,\n  \"perfect</w>\": 1878,\n  \"perfection</w>\": 9646,\n  \"perfectly</w>\": 8037,\n  \"perfecto</w>\": 42898,\n  \"perfor\": 2311,\n  \"perform\": 3866,\n  \"perform</w>\": 5940,\n  \"performan\": 8973,\n  \"performance</w>\": 2714,\n  \"performances</w>\": 9553,\n  \"performed</w>\": 9997,\n  \"performer</w>\": 17061,\n  \"performers</w>\": 18476,\n  \"performing</w>\": 5170,\n  \"performs</w>\": 13839,\n  \"perfu\": 14214,\n  \"perfume</w>\": 17525,\n  \"perhaps</w>\": 9297,\n  \"peri\": 12618,\n  \"peri</w>\": 44068,\n  \"perience</w>\": 19302,\n  \"peril\": 40119,\n  \"peril</w>\": 48301,\n  \"perimeter</w>\": 38499,\n  \"pering</w>\": 29746,\n  \"perio\": 5101,\n  \"period</w>\": 6131,\n  \"periodic</w>\": 36476,\n  \"periods</w>\": 24401,\n  \"periph\": 35308,\n  \"peripheral</w>\": 43901,\n  \"peris\": 19461,\n  \"periscope</w>\": 21668,\n  \"perk</w>\": 33424,\n  \"perkins</w>\": 20057,\n  \"perks</w>\": 17660,\n  \"perl\": 44018,\n  \"perm</w>\": 47847,\n  \"perman\": 9018,\n  \"permanent</w>\": 11144,\n  \"permanently</w>\": 25584,\n  \"perme\": 42456,\n  \"permission</w>\": 15822,\n  \"permit</w>\": 21950,\n  \"permits</w>\": 33267,\n  \"permitted</w>\": 44380,\n  \"pero</w>\": 23551,\n  \"perpe\": 15749,\n  \"perpetr\": 33376,\n  \"perpetu\": 30132,\n  \"perpetual</w>\": 32018,\n  \"perrie</w>\": 32691,\n  \"perry\": 28478,\n  \"perry</w>\": 7899,\n  \"pers\": 3688,\n  \"pers</w>\": 10710,\n  \"perse\": 27498,\n  \"persecu\": 22878,\n  \"persecution</w>\": 32009,\n  \"perseverance</w>\": 29820,\n  \"persi\": 11509,\n  \"persian</w>\": 19859,\n  \"persist\": 19412,\n  \"persist</w>\": 40938,\n  \"persistence</w>\": 34588,\n  \"persistent</w>\": 29028,\n  \"person\": 3510,\n  \"person</w>\": 2533,\n  \"persona</w>\": 18401,\n  \"personal\": 10114,\n  \"personal</w>\": 4121,\n  \"personalised</w>\": 24186,\n  \"personalities</w>\": 27888,\n  \"personality</w>\": 10386,\n  \"personalized</w>\": 17845,\n  \"personally</w>\": 13885,\n  \"personnel</w>\": 14546,\n  \"persons</w>\": 14592,\n  \"perspec\": 17997,\n  \"perspective</w>\": 8996,\n  \"perspectives</w>\": 18777,\n  \"persu\": 20972,\n  \"pert\": 36970,\n  \"pert</w>\": 16306,\n  \"perth\": 19067,\n  \"perth</w>\": 11011,\n  \"peru\": 20612,\n  \"peru</w>\": 12964,\n  \"peruvian</w>\": 30822,\n  \"pes\": 38368,\n  \"pes</w>\": 2598,\n  \"pesa</w>\": 47409,\n  \"pesc\": 44044,\n  \"pesh\": 33184,\n  \"peshaw\": 28524,\n  \"peshawar</w>\": 29230,\n  \"pesky</w>\": 42512,\n  \"pesos</w>\": 47872,\n  \"pessi\": 43902,\n  \"pest\": 20130,\n  \"pest</w>\": 9425,\n  \"pesticide</w>\": 48481,\n  \"pesticides</w>\": 37868,\n  \"pesto</w>\": 26186,\n  \"pests</w>\": 41919,\n  \"pet\": 2167,\n  \"pet</w>\": 3703,\n  \"peta</w>\": 28785,\n  \"petal\": 38430,\n  \"petal</w>\": 40469,\n  \"petals</w>\": 26064,\n  \"petday</w>\": 45314,\n  \"pete\": 14479,\n  \"pete</w>\": 8571,\n  \"peter\": 5093,\n  \"peter</w>\": 3696,\n  \"peterborough</w>\": 26012,\n  \"peters</w>\": 16336,\n  \"petersburg</w>\": 21052,\n  \"petersen</w>\": 39794,\n  \"peterson</w>\": 16877,\n  \"peth</w>\": 48920,\n  \"petit\": 36437,\n  \"petit</w>\": 21276,\n  \"petite</w>\": 27213,\n  \"petition</w>\": 10975,\n  \"petitions</w>\": 43536,\n  \"petr\": 29808,\n  \"petra</w>\": 31300,\n  \"petre\": 47179,\n  \"petri\": 31831,\n  \"petro\": 8716,\n  \"petrol</w>\": 18149,\n  \"petroleum</w>\": 22063,\n  \"petron\": 42875,\n  \"pets</w>\": 7663,\n  \"pett\": 27051,\n  \"petti\": 48001,\n  \"petting</w>\": 44334,\n  \"petty</w>\": 17324,\n  \"peu\": 21411,\n  \"peuge\": 22893,\n  \"peugeot</w>\": 24129,\n  \"pew\": 21608,\n  \"pew</w>\": 30783,\n  \"pewdie\": 41882,\n  \"pewdiepie</w>\": 42563,\n  \"pex</w>\": 43765,\n  \"pey\": 14966,\n  \"pey</w>\": 30933,\n  \"peyton\": 49254,\n  \"peyton</w>\": 20307,\n  \"pez\": 45798,\n  \"pez</w>\": 10482,\n  \"pf\": 16680,\n  \"pf</w>\": 12572,\n  \"pfa</w>\": 47839,\n  \"pfc</w>\": 35007,\n  \"pff</w>\": 44121,\n  \"pfi\": 29810,\n  \"pfw</w>\": 31229,\n  \"pg\": 12476,\n  \"pg</w>\": 5211,\n  \"pga</w>\": 13351,\n  \"pgat\": 36514,\n  \"pgatour</w>\": 40094,\n  \"pgh\": 44862,\n  \"pgh</w>\": 30031,\n  \"pgs</w>\": 49204,\n  \"ph\": 745,\n  \"ph</w>\": 2042,\n  \"pha\": 4443,\n  \"pha</w>\": 26255,\n  \"phal\": 19962,\n  \"phan\": 8731,\n  \"phan</w>\": 40126,\n  \"phant\": 36998,\n  \"phantom\": 37688,\n  \"phantom</w>\": 14490,\n  \"phar\": 5570,\n  \"phara\": 35792,\n  \"pharaoh</w>\": 40437,\n  \"pharm</w>\": 45761,\n  \"pharma</w>\": 17831,\n  \"pharmac\": 8193,\n  \"pharmaceu\": 19490,\n  \"pharmaceutical</w>\": 25217,\n  \"pharmaceuticals</w>\": 44623,\n  \"pharmacist</w>\": 41024,\n  \"pharmacists</w>\": 44337,\n  \"pharmacy</w>\": 15293,\n  \"pharo\": 42308,\n  \"pharoah</w>\": 49287,\n  \"pharrell</w>\": 31316,\n  \"phase</w>\": 8304,\n  \"phases</w>\": 35337,\n  \"phat</w>\": 42492,\n  \"phc</w>\": 41102,\n  \"phd\": 20875,\n  \"phd</w>\": 8472,\n  \"phdchat</w>\": 39564,\n  \"phdlife</w>\": 39638,\n  \"phe\": 4787,\n  \"phe</w>\": 19853,\n  \"pheasant</w>\": 41983,\n  \"phee</w>\": 41292,\n  \"phel\": 23711,\n  \"phelps</w>\": 27128,\n  \"phen\": 7718,\n  \"pheno\": 47336,\n  \"phenom\": 31673,\n  \"phenom</w>\": 39618,\n  \"phenomen\": 11304,\n  \"phenomena</w>\": 41538,\n  \"phenomenal</w>\": 15035,\n  \"phenomenon</w>\": 24464,\n  \"pher\": 9194,\n  \"pher</w>\": 19828,\n  \"phers</w>\": 29531,\n  \"pherson</w>\": 36421,\n  \"phew</w>\": 10295,\n  \"phi\": 2239,\n  \"phi</w>\": 12220,\n  \"phia</w>\": 9228,\n  \"phic</w>\": 3977,\n  \"phie</w>\": 30237,\n  \"phies</w>\": 17062,\n  \"phil\": 2821,\n  \"phil</w>\": 6199,\n  \"phila</w>\": 47443,\n  \"philadel\": 9428,\n  \"philadelphia</w>\": 9749,\n  \"philanthro\": 16587,\n  \"philanthropist</w>\": 44153,\n  \"philanthropy</w>\": 25047,\n  \"philately</w>\": 33695,\n  \"phile</w>\": 36543,\n  \"philharmon\": 25228,\n  \"philharmonic</w>\": 31699,\n  \"phili\": 4277,\n  \"philia</w>\": 46654,\n  \"philip\": 20748,\n  \"philip</w>\": 11074,\n  \"philipp\": 5623,\n  \"philipp</w>\": 47591,\n  \"philippe</w>\": 20942,\n  \"philippine</w>\": 17629,\n  \"philippines</w>\": 8149,\n  \"philips</w>\": 25175,\n  \"phill\": 42346,\n  \"phill</w>\": 48272,\n  \"philli\": 6456,\n  \"phillies</w>\": 18748,\n  \"phillip\": 48832,\n  \"phillip</w>\": 19323,\n  \"phillips</w>\": 11041,\n  \"philly\": 19545,\n  \"philly</w>\": 7785,\n  \"philos\": 8395,\n  \"philosop\": 20349,\n  \"philosoph\": 10187,\n  \"philosopher</w>\": 25220,\n  \"philosophical</w>\": 32628,\n  \"philosophy</w>\": 12213,\n  \"phils</w>\": 38573,\n  \"phin</w>\": 33816,\n  \"phine</w>\": 40985,\n  \"phins</w>\": 40210,\n  \"phish</w>\": 36897,\n  \"phishing</w>\": 36546,\n  \"phl</w>\": 25603,\n  \"pho\": 816,\n  \"pho</w>\": 22707,\n  \"phobia</w>\": 28749,\n  \"phoe\": 22673,\n  \"phoebe</w>\": 27582,\n  \"phoeni\": 6778,\n  \"phoenix\": 20615,\n  \"phoenix</w>\": 7793,\n  \"phol</w>\": 48140,\n  \"phon\": 19602,\n  \"phon</w>\": 31115,\n  \"phone\": 15486,\n  \"phone</w>\": 1951,\n  \"phones</w>\": 6351,\n  \"phony</w>\": 31925,\n  \"phora</w>\": 31363,\n  \"phosp\": 22638,\n  \"photo\": 1153,\n  \"photo</w>\": 1125,\n  \"photobomb</w>\": 37075,\n  \"photobook</w>\": 41894,\n  \"photog</w>\": 28115,\n  \"photogenic</w>\": 36108,\n  \"photogra\": 36754,\n  \"photograph\": 1688,\n  \"photograph</w>\": 8853,\n  \"photographed</w>\": 11573,\n  \"photographer</w>\": 5748,\n  \"photographers</w>\": 17141,\n  \"photographic</w>\": 22053,\n  \"photographing</w>\": 30074,\n  \"photographs</w>\": 15759,\n  \"photography\": 33183,\n  \"photography</w>\": 2108,\n  \"photom\": 32223,\n  \"photoo\": 11106,\n  \"photooftheday</w>\": 11933,\n  \"photos</w>\": 2479,\n  \"photoshoot</w>\": 11121,\n  \"photoshop</w>\": 12419,\n  \"photoshopped</w>\": 35738,\n  \"phouse</w>\": 27848,\n  \"php</w>\": 17370,\n  \"phra\": 12777,\n  \"phrase</w>\": 18809,\n  \"phrases</w>\": 35264,\n  \"phs</w>\": 16495,\n  \"phu\": 21274,\n  \"phuket</w>\": 34028,\n  \"phx\": 35466,\n  \"phx</w>\": 29507,\n  \"phy\": 6484,\n  \"phy</w>\": 4292,\n  \"phyl\": 35600,\n  \"phyllis</w>\": 37844,\n  \"phys\": 3734,\n  \"phys</w>\": 37894,\n  \"physi\": 13782,\n  \"physic\": 46641,\n  \"physical\": 44127,\n  \"physical</w>\": 6671,\n  \"physically</w>\": 18105,\n  \"physician</w>\": 21055,\n  \"physicians</w>\": 26702,\n  \"physicist</w>\": 29052,\n  \"physics</w>\": 9369,\n  \"physio\": 29574,\n  \"physio</w>\": 29177,\n  \"physiology</w>\": 32349,\n  \"physique</w>\": 42884,\n  \"phyto\": 42197,\n  \"pi\": 741,\n  \"pi</w>\": 5357,\n  \"pia</w>\": 8918,\n  \"pian</w>\": 24637,\n  \"pianist</w>\": 21048,\n  \"piano\": 49278,\n  \"piano</w>\": 7894,\n  \"pianos</w>\": 47904,\n  \"piazza</w>\": 28496,\n  \"pic\": 901,\n  \"pic</w>\": 1282,\n  \"pical</w>\": 5482,\n  \"picard</w>\": 48507,\n  \"picasso</w>\": 21481,\n  \"piccad\": 33876,\n  \"piccadilly</w>\": 37287,\n  \"piccollage</w>\": 43621,\n  \"pick\": 6379,\n  \"pick</w>\": 3142,\n  \"picked</w>\": 6018,\n  \"picker</w>\": 43105,\n  \"pickering</w>\": 47605,\n  \"picket</w>\": 33559,\n  \"picking</w>\": 9545,\n  \"pickle</w>\": 24570,\n  \"pickled</w>\": 21705,\n  \"pickles</w>\": 25001,\n  \"picks</w>\": 8551,\n  \"pickup</w>\": 15382,\n  \"pickups</w>\": 33383,\n  \"picnic</w>\": 12007,\n  \"pico</w>\": 23363,\n  \"picoftheday</w>\": 18319,\n  \"pics</w>\": 2559,\n  \"pict</w>\": 18778,\n  \"pictorial</w>\": 40640,\n  \"picture\": 11663,\n  \"picture</w>\": 1674,\n  \"pictured</w>\": 7647,\n  \"pictures</w>\": 3646,\n  \"picturesque</w>\": 24894,\n  \"pid</w>\": 5225,\n  \"piday</w>\": 48056,\n  \"pie\": 12065,\n  \"pie</w>\": 5319,\n  \"piece\": 39632,\n  \"piece</w>\": 2754,\n  \"pieces</w>\": 6194,\n  \"pied\": 24686,\n  \"pied</w>\": 12713,\n  \"piedmont</w>\": 39691,\n  \"pier\": 5641,\n  \"pier</w>\": 11348,\n  \"pierc\": 49216,\n  \"pierce\": 48462,\n  \"pierce</w>\": 16782,\n  \"pierced</w>\": 32799,\n  \"piercing</w>\": 22557,\n  \"piero</w>\": 43125,\n  \"pierre\": 34670,\n  \"pierre</w>\": 11985,\n  \"piers</w>\": 29030,\n  \"pies</w>\": 6898,\n  \"pieter</w>\": 44801,\n  \"pietro</w>\": 42169,\n  \"piff</w>\": 40719,\n  \"pig\": 12009,\n  \"pig</w>\": 9619,\n  \"pigeon</w>\": 18008,\n  \"pigeons</w>\": 32910,\n  \"piggy</w>\": 28245,\n  \"pigment</w>\": 40284,\n  \"pigs</w>\": 16228,\n  \"pik</w>\": 48539,\n  \"pika</w>\": 47372,\n  \"pikach\": 27268,\n  \"pikachu</w>\": 28107,\n  \"pike\": 33457,\n  \"pike</w>\": 14011,\n  \"pil\": 2893,\n  \"pil</w>\": 20645,\n  \"pilates</w>\": 29518,\n  \"pile\": 44403,\n  \"pile</w>\": 13930,\n  \"piled</w>\": 26873,\n  \"piles</w>\": 31968,\n  \"pilgri\": 13966,\n  \"pilgrim</w>\": 32662,\n  \"pilgrimage</w>\": 24335,\n  \"pilgrims</w>\": 31370,\n  \"piling</w>\": 43050,\n  \"pilip\": 27234,\n  \"pilipinas</w>\": 32392,\n  \"pill\": 14830,\n  \"pill</w>\": 19226,\n  \"pillar</w>\": 17322,\n  \"pillars</w>\": 22054,\n  \"pillow\": 42237,\n  \"pillow</w>\": 12182,\n  \"pillows</w>\": 26499,\n  \"pills</w>\": 23964,\n  \"pilo\": 37526,\n  \"pilot\": 31619,\n  \"pilot</w>\": 6687,\n  \"pilots</w>\": 15586,\n  \"pilsner</w>\": 47153,\n  \"pim\": 15285,\n  \"pim</w>\": 35472,\n  \"pimp\": 35789,\n  \"pin\": 2629,\n  \"pin</w>\": 5164,\n  \"pinball</w>\": 31679,\n  \"pinch</w>\": 26114,\n  \"pine\": 9398,\n  \"pine</w>\": 7374,\n  \"pineapple</w>\": 14831,\n  \"pines</w>\": 20338,\n  \"ping\": 23720,\n  \"ping</w>\": 2089,\n  \"pinion</w>\": 40557,\n  \"pink\": 11151,\n  \"pink</w>\": 3360,\n  \"pinkfloyd</w>\": 48520,\n  \"pinky</w>\": 29803,\n  \"pinn\": 31448,\n  \"pinnacle</w>\": 32754,\n  \"pinned</w>\": 12165,\n  \"pinning</w>\": 44515,\n  \"pino</w>\": 36633,\n  \"pinot\": 41399,\n  \"pinot</w>\": 21146,\n  \"pinoy\": 43578,\n  \"pinoy</w>\": 35258,\n  \"pins</w>\": 14619,\n  \"pinst\": 41173,\n  \"pint\": 42537,\n  \"pint</w>\": 13584,\n  \"pinterest</w>\": 15379,\n  \"pinto</w>\": 35992,\n  \"pints</w>\": 27935,\n  \"pinup</w>\": 37349,\n  \"pio</w>\": 22108,\n  \"pion\": 36728,\n  \"pion</w>\": 29190,\n  \"pione\": 7975,\n  \"pioneer\": 34892,\n  \"pioneer</w>\": 12459,\n  \"pioneering</w>\": 25933,\n  \"pioneers</w>\": 22383,\n  \"pious</w>\": 42441,\n  \"pip</w>\": 30854,\n  \"pipe\": 29333,\n  \"pipe</w>\": 10459,\n  \"pipel\": 12387,\n  \"pipeline</w>\": 14151,\n  \"pipelines</w>\": 39683,\n  \"piper\": 47052,\n  \"piper</w>\": 16293,\n  \"pipes</w>\": 16991,\n  \"piping</w>\": 40744,\n  \"pippa</w>\": 47672,\n  \"pir\": 4351,\n  \"pir</w>\": 38899,\n  \"piracy</w>\": 39452,\n  \"piran\": 49034,\n  \"pirate\": 38680,\n  \"pirate</w>\": 13592,\n  \"pirates</w>\": 10442,\n  \"pire\": 16613,\n  \"pires</w>\": 14988,\n  \"pis\": 9230,\n  \"pis</w>\": 44441,\n  \"pisa</w>\": 43632,\n  \"pisces</w>\": 45982,\n  \"piss</w>\": 20818,\n  \"pissed</w>\": 17989,\n  \"pist\": 15556,\n  \"pist</w>\": 32826,\n  \"pistachi\": 29760,\n  \"pistachio</w>\": 36320,\n  \"pistol</w>\": 20480,\n  \"piston</w>\": 48236,\n  \"pistons</w>\": 27242,\n  \"pistor\": 48162,\n  \"pit\": 2946,\n  \"pit</w>\": 7476,\n  \"pita</w>\": 27070,\n  \"pitbull</w>\": 25295,\n  \"pitch\": 8992,\n  \"pitch</w>\": 5872,\n  \"pitched</w>\": 28447,\n  \"pitcher</w>\": 13445,\n  \"pitchers</w>\": 27835,\n  \"pitches</w>\": 21005,\n  \"pitching</w>\": 16455,\n  \"piti\": 47568,\n  \"pits</w>\": 24144,\n  \"pitt\": 7607,\n  \"pitt</w>\": 15599,\n  \"pitts\": 9531,\n  \"pittsburgh</w>\": 10453,\n  \"pity</w>\": 24380,\n  \"pius</w>\": 39988,\n  \"pivo\": 18009,\n  \"pivot</w>\": 31805,\n  \"pivotal</w>\": 31432,\n  \"pix\": 6185,\n  \"pix</w>\": 13088,\n  \"pixar</w>\": 27493,\n  \"pixel\": 14384,\n  \"pixel</w>\": 13241,\n  \"pixelart</w>\": 18516,\n  \"pixels</w>\": 34099,\n  \"pixie</w>\": 35573,\n  \"piyu\": 30772,\n  \"piyush\": 36191,\n  \"piyushgoyal</w>\": 45318,\n  \"pizz\": 3897,\n  \"pizza</w>\": 4474,\n  \"pizzas</w>\": 30647,\n  \"pizzeria</w>\": 44174,\n  \"pj\": 12524,\n  \"pj</w>\": 17179,\n  \"pjnet</w>\": 22011,\n  \"pjs</w>\": 36009,\n  \"pk\": 10149,\n  \"pk</w>\": 10991,\n  \"pkg</w>\": 49011,\n  \"pkk</w>\": 47480,\n  \"pknot</w>\": 41779,\n  \"pkwy</w>\": 36827,\n  \"pl\": 712,\n  \"pl</w>\": 5678,\n  \"pla\": 841,\n  \"pla</w>\": 19945,\n  \"plac\": 2331,\n  \"place\": 14884,\n  \"place</w>\": 1445,\n  \"placed</w>\": 9729,\n  \"placement</w>\": 16724,\n  \"placements</w>\": 43885,\n  \"placer</w>\": 49170,\n  \"places</w>\": 4448,\n  \"placing</w>\": 18531,\n  \"plague</w>\": 25360,\n  \"plaid</w>\": 23291,\n  \"plain\": 22776,\n  \"plain</w>\": 10709,\n  \"plains</w>\": 16345,\n  \"plan\": 1740,\n  \"plan</w>\": 2970,\n  \"pland</w>\": 24801,\n  \"plane\": 22728,\n  \"plane</w>\": 5363,\n  \"planes</w>\": 12581,\n  \"planet\": 16833,\n  \"planet</w>\": 5172,\n  \"planetary</w>\": 28361,\n  \"planets</w>\": 22315,\n  \"plank</w>\": 30991,\n  \"plankton</w>\": 48249,\n  \"plann\": 6409,\n  \"planned</w>\": 8169,\n  \"planner</w>\": 18083,\n  \"planners</w>\": 33664,\n  \"planning</w>\": 4446,\n  \"plano</w>\": 34063,\n  \"plans</w>\": 4181,\n  \"plant\": 8521,\n  \"plant</w>\": 3912,\n  \"plantation</w>\": 20014,\n  \"plantbased</w>\": 33720,\n  \"planted</w>\": 14286,\n  \"planter</w>\": 34453,\n  \"planters</w>\": 43661,\n  \"planting</w>\": 13922,\n  \"plants</w>\": 5829,\n  \"plaque</w>\": 16097,\n  \"plaques</w>\": 45610,\n  \"plar</w>\": 26754,\n  \"plas\": 45673,\n  \"plasma</w>\": 24999,\n  \"plaster</w>\": 31980,\n  \"plastic\": 15645,\n  \"plastic</w>\": 6102,\n  \"plasticpollution</w>\": 47129,\n  \"plastics</w>\": 20999,\n  \"plasticsurgery</w>\": 48555,\n  \"plat\": 3172,\n  \"plata</w>\": 46456,\n  \"plate\": 28744,\n  \"plate</w>\": 5135,\n  \"plateau</w>\": 29301,\n  \"plated</w>\": 21161,\n  \"plates</w>\": 11485,\n  \"platform</w>\": 5549,\n  \"platforms</w>\": 13551,\n  \"platin\": 10267,\n  \"plating</w>\": 44564,\n  \"platinum</w>\": 10979,\n  \"plato</w>\": 41101,\n  \"platoon</w>\": 41254,\n  \"platt\": 44459,\n  \"platt</w>\": 40097,\n  \"platte</w>\": 46785,\n  \"platter</w>\": 29071,\n  \"platz</w>\": 40878,\n  \"plau\": 39139,\n  \"play\": 1222,\n  \"play</w>\": 1453,\n  \"playa</w>\": 23756,\n  \"playable</w>\": 33885,\n  \"playback</w>\": 39194,\n  \"playbook</w>\": 34856,\n  \"playboy</w>\": 24383,\n  \"played</w>\": 3432,\n  \"player\": 24503,\n  \"player</w>\": 2477,\n  \"players</w>\": 3030,\n  \"playful</w>\": 23871,\n  \"playground</w>\": 15861,\n  \"playhouse</w>\": 23254,\n  \"playin</w>\": 24674,\n  \"playing\": 47368,\n  \"playing</w>\": 1629,\n  \"playlist</w>\": 9180,\n  \"playlists</w>\": 47183,\n  \"playo\": 5804,\n  \"playoff</w>\": 9655,\n  \"playoffs</w>\": 9548,\n  \"plays</w>\": 5134,\n  \"playstation</w>\": 11332,\n  \"playtime</w>\": 43037,\n  \"playwright</w>\": 32070,\n  \"plaza</w>\": 8943,\n  \"plc</w>\": 16827,\n  \"ple\": 926,\n  \"ple</w>\": 1619,\n  \"plea</w>\": 21956,\n  \"plead</w>\": 47539,\n  \"pleads</w>\": 31425,\n  \"plear\": 21362,\n  \"pleas\": 8481,\n  \"pleas</w>\": 48740,\n  \"pleasant</w>\": 12271,\n  \"please\": 41074,\n  \"please</w>\": 1474,\n  \"pleased</w>\": 6107,\n  \"pleasing</w>\": 32893,\n  \"pleasure</w>\": 5854,\n  \"pleasures</w>\": 29513,\n  \"pledge</w>\": 11507,\n  \"pledged</w>\": 36799,\n  \"pledges</w>\": 26746,\n  \"pledis</w>\": 41202,\n  \"plein</w>\": 43429,\n  \"plenary</w>\": 19891,\n  \"plenty</w>\": 7524,\n  \"pler</w>\": 17677,\n  \"ples</w>\": 6248,\n  \"pless\": 39821,\n  \"pless</w>\": 17059,\n  \"plets</w>\": 43230,\n  \"plex\": 23765,\n  \"plex</w>\": 15241,\n  \"pley</w>\": 19543,\n  \"pli\": 30001,\n  \"pli</w>\": 45797,\n  \"plic\": 5806,\n  \"plicity</w>\": 19823,\n  \"plight</w>\": 40317,\n  \"plin\": 44531,\n  \"plin</w>\": 32335,\n  \"pline</w>\": 25376,\n  \"pling</w>\": 12899,\n  \"plings</w>\": 31184,\n  \"pll\": 47629,\n  \"pll</w>\": 25266,\n  \"pln</w>\": 48755,\n  \"plo\": 1778,\n  \"plo</w>\": 43523,\n  \"plor\": 34695,\n  \"plot</w>\": 9918,\n  \"plots</w>\": 25672,\n  \"plotting</w>\": 30751,\n  \"plough\": 33811,\n  \"plow</w>\": 38363,\n  \"pls</w>\": 5572,\n  \"plu\": 2052,\n  \"plug</w>\": 12628,\n  \"plugged</w>\": 23261,\n  \"plugin</w>\": 31278,\n  \"plugins</w>\": 48797,\n  \"plugs</w>\": 28083,\n  \"plum\": 26267,\n  \"plum</w>\": 16202,\n  \"plumb\": 21769,\n  \"plumber</w>\": 43478,\n  \"plumbing</w>\": 24647,\n  \"plume</w>\": 39495,\n  \"plun\": 15122,\n  \"plunge</w>\": 26506,\n  \"plur\": 44664,\n  \"plus</w>\": 3097,\n  \"plush</w>\": 18926,\n  \"pluto</w>\": 26380,\n  \"ply\": 17249,\n  \"ply</w>\": 28705,\n  \"plying</w>\": 36071,\n  \"plym\": 11907,\n  \"plymouth</w>\": 13786,\n  \"plz</w>\": 10538,\n  \"pm\": 13699,\n  \"pm</w>\": 990,\n  \"pmi</w>\": 41206,\n  \"pmln</w>\": 23208,\n  \"pmo\": 18782,\n  \"pmoindia</w>\": 20374,\n  \"pms</w>\": 44223,\n  \"pn\": 14431,\n  \"pn</w>\": 13774,\n  \"pnc</w>\": 37148,\n  \"pne\": 30966,\n  \"pneu\": 28714,\n  \"pneumonia</w>\": 42906,\n  \"png</w>\": 20992,\n  \"pnp</w>\": 25972,\n  \"pnpp\": 42175,\n  \"pnw</w>\": 31521,\n  \"po\": 628,\n  \"po</w>\": 3057,\n  \"poa</w>\": 43912,\n  \"poached</w>\": 27665,\n  \"poaching</w>\": 35140,\n  \"poc\": 13232,\n  \"poc</w>\": 27780,\n  \"pocaly\": 37987,\n  \"pocalypse</w>\": 42307,\n  \"poche\": 38336,\n  \"poche</w>\": 39022,\n  \"pocket\": 29147,\n  \"pocket</w>\": 8504,\n  \"pockets</w>\": 19566,\n  \"pocon\": 41850,\n  \"pod\": 3583,\n  \"pod</w>\": 7446,\n  \"podcast\": 39654,\n  \"podcast</w>\": 4294,\n  \"podcasting</w>\": 40106,\n  \"podcasts</w>\": 19392,\n  \"pode\": 33368,\n  \"poder\": 24960,\n  \"podernfamily</w>\": 26620,\n  \"podi\": 32853,\n  \"podium</w>\": 14093,\n  \"pods</w>\": 18776,\n  \"poe\": 4746,\n  \"poe</w>\": 19254,\n  \"poem</w>\": 9436,\n  \"poems</w>\": 15577,\n  \"poet\": 41019,\n  \"poet</w>\": 9872,\n  \"poetic</w>\": 26365,\n  \"poetry\": 20192,\n  \"poetry</w>\": 6038,\n  \"poetryday</w>\": 39255,\n  \"poets</w>\": 19804,\n  \"pof\": 40850,\n  \"poff</w>\": 28236,\n  \"pogba</w>\": 25998,\n  \"poign\": 29682,\n  \"poignant</w>\": 32138,\n  \"poin\": 9074,\n  \"point\": 13280,\n  \"point</w>\": 2301,\n  \"pointe</w>\": 24631,\n  \"pointed</w>\": 20703,\n  \"pointer</w>\": 29883,\n  \"pointers</w>\": 36760,\n  \"pointing</w>\": 19233,\n  \"pointless</w>\": 33586,\n  \"points</w>\": 3396,\n  \"pois\": 17008,\n  \"poise</w>\": 45087,\n  \"poised</w>\": 27354,\n  \"poison\": 30722,\n  \"poison</w>\": 17074,\n  \"poisoned</w>\": 43624,\n  \"poisoning</w>\": 25750,\n  \"poisonous</w>\": 37131,\n  \"pok\": 15387,\n  \"poke\": 6892,\n  \"poke</w>\": 23186,\n  \"pokemon\": 16239,\n  \"pokemon</w>\": 9528,\n  \"pokemongo</w>\": 23985,\n  \"poker\": 30735,\n  \"poker</w>\": 11865,\n  \"pokes</w>\": 40221,\n  \"poking</w>\": 49169,\n  \"pokÃ©\": 20656,\n  \"pokÃ©mon</w>\": 22066,\n  \"pol\": 977,\n  \"pol</w>\": 7649,\n  \"pola</w>\": 43876,\n  \"poland</w>\": 9834,\n  \"polar\": 21432,\n  \"polar</w>\": 12214,\n  \"polari\": 27919,\n  \"polaris</w>\": 37965,\n  \"polarized</w>\": 48437,\n  \"polaro\": 25237,\n  \"polaroid</w>\": 30427,\n  \"poldark</w>\": 41322,\n  \"pole\": 26682,\n  \"pole</w>\": 8170,\n  \"poles</w>\": 22585,\n  \"poli\": 9675,\n  \"poli</w>\": 5414,\n  \"polic\": 16126,\n  \"police\": 15535,\n  \"police</w>\": 2120,\n  \"policeman</w>\": 37713,\n  \"policemen</w>\": 47946,\n  \"polici\": 10819,\n  \"policies</w>\": 10993,\n  \"policing</w>\": 20969,\n  \"policy\": 30173,\n  \"policy</w>\": 4660,\n  \"polio</w>\": 30533,\n  \"polis</w>\": 16133,\n  \"polish\": 46941,\n  \"polish</w>\": 9632,\n  \"polished</w>\": 21478,\n  \"polishing</w>\": 43629,\n  \"polit\": 2247,\n  \"politan</w>\": 15337,\n  \"polite</w>\": 31497,\n  \"politi\": 40597,\n  \"politic\": 33333,\n  \"political\": 37744,\n  \"political</w>\": 4197,\n  \"politically</w>\": 24323,\n  \"politician</w>\": 15960,\n  \"politicians</w>\": 12914,\n  \"politico</w>\": 39403,\n  \"politics</w>\": 4929,\n  \"polk</w>\": 33317,\n  \"polka</w>\": 29476,\n  \"poll</w>\": 7032,\n  \"pollen</w>\": 27651,\n  \"pollin\": 19152,\n  \"pollinators</w>\": 36599,\n  \"polling</w>\": 18024,\n  \"pollo</w>\": 42755,\n  \"pollock</w>\": 37614,\n  \"polls</w>\": 11813,\n  \"pollu\": 8370,\n  \"polluted</w>\": 43346,\n  \"pollution</w>\": 10384,\n  \"polly</w>\": 31204,\n  \"polo\": 35928,\n  \"polo</w>\": 10229,\n  \"poly\": 6833,\n  \"poly</w>\": 18367,\n  \"polye\": 31730,\n  \"polyester</w>\": 38514,\n  \"polym\": 23626,\n  \"polymer</w>\": 29993,\n  \"polyne\": 38892,\n  \"polyvore</w>\": 24771,\n  \"pom\": 7548,\n  \"pom</w>\": 24280,\n  \"pome\": 27963,\n  \"pomegran\": 29326,\n  \"pomegranate</w>\": 32415,\n  \"pomer\": 35156,\n  \"pomona</w>\": 41690,\n  \"pompe\": 18352,\n  \"pompeii</w>\": 47775,\n  \"pompeo</w>\": 34351,\n  \"pompey</w>\": 35079,\n  \"pon\": 3809,\n  \"pon</w>\": 22391,\n  \"ponce</w>\": 43637,\n  \"pond</w>\": 10750,\n  \"ponder</w>\": 36863,\n  \"pondering</w>\": 47395,\n  \"ponds</w>\": 31033,\n  \"pone</w>\": 32183,\n  \"pong\": 40546,\n  \"pong</w>\": 17710,\n  \"ponies</w>\": 34157,\n  \"pons</w>\": 41255,\n  \"pont\": 47563,\n  \"pont</w>\": 22997,\n  \"ponte</w>\": 40892,\n  \"ponti\": 15527,\n  \"pontiac</w>\": 25373,\n  \"pontifex</w>\": 33566,\n  \"ponty\": 45152,\n  \"pony\": 24438,\n  \"pony</w>\": 12678,\n  \"ponytail</w>\": 43265,\n  \"poo\": 6601,\n  \"poo</w>\": 14389,\n  \"pooch</w>\": 37037,\n  \"poodle</w>\": 34961,\n  \"pooh</w>\": 27103,\n  \"pooja</w>\": 35676,\n  \"pool\": 12484,\n  \"pool</w>\": 2831,\n  \"poole</w>\": 26290,\n  \"pools</w>\": 18736,\n  \"poolside</w>\": 35509,\n  \"poon\": 33799,\n  \"poon</w>\": 36178,\n  \"poop</w>\": 23310,\n  \"poor\": 14528,\n  \"poor</w>\": 3665,\n  \"poorest</w>\": 40771,\n  \"poorly</w>\": 21101,\n  \"pop\": 6530,\n  \"pop</w>\": 2852,\n  \"popart</w>\": 47425,\n  \"popcorn</w>\": 15034,\n  \"pope\": 16994,\n  \"pope</w>\": 9283,\n  \"popefrancis</w>\": 37254,\n  \"poplar</w>\": 38726,\n  \"popo\": 38835,\n  \"popo</w>\": 35572,\n  \"popp\": 13156,\n  \"popped</w>\": 14934,\n  \"poppies</w>\": 30385,\n  \"poppin</w>\": 28536,\n  \"popping</w>\": 18152,\n  \"poppins</w>\": 41216,\n  \"poppy\": 32194,\n  \"poppy</w>\": 15447,\n  \"pops</w>\": 11705,\n  \"popsic\": 38481,\n  \"popu\": 3785,\n  \"popul\": 6593,\n  \"popular\": 15854,\n  \"popular</w>\": 4368,\n  \"popularity</w>\": 19235,\n  \"populated</w>\": 38420,\n  \"population</w>\": 8423,\n  \"populations</w>\": 23797,\n  \"populism</w>\": 48998,\n  \"populist</w>\": 49376,\n  \"popup</w>\": 33053,\n  \"por\": 817,\n  \"por</w>\": 7697,\n  \"pora</w>\": 23537,\n  \"porcel\": 19409,\n  \"porcelain</w>\": 20451,\n  \"porch</w>\": 17154,\n  \"pore</w>\": 28267,\n  \"pork\": 40379,\n  \"pork</w>\": 7897,\n  \"poro\": 48110,\n  \"porridge</w>\": 34924,\n  \"porsch\": 48009,\n  \"porsche\": 44049,\n  \"porsche</w>\": 8783,\n  \"port\": 1641,\n  \"port</w>\": 1418,\n  \"porta</w>\": 45037,\n  \"portable</w>\": 11949,\n  \"portage</w>\": 32087,\n  \"portal</w>\": 14982,\n  \"porte</w>\": 28654,\n  \"ported</w>\": 16879,\n  \"porter\": 28319,\n  \"porter</w>\": 10318,\n  \"porters</w>\": 15670,\n  \"portfoli\": 45766,\n  \"portfolio</w>\": 11938,\n  \"porth\": 37425,\n  \"porti\": 45760,\n  \"porting</w>\": 26052,\n  \"portion</w>\": 13739,\n  \"portions</w>\": 22914,\n  \"portland\": 38366,\n  \"portland</w>\": 8880,\n  \"portman</w>\": 34755,\n  \"porto\": 24853,\n  \"porto</w>\": 18947,\n  \"portobello</w>\": 48025,\n  \"portra\": 4175,\n  \"portrait\": 39312,\n  \"portrait</w>\": 5352,\n  \"portraits</w>\": 14203,\n  \"portray</w>\": 46282,\n  \"portrayal</w>\": 39238,\n  \"portrayed</w>\": 36093,\n  \"ports</w>\": 7734,\n  \"portsm\": 17063,\n  \"portsmouth</w>\": 19074,\n  \"portu\": 7159,\n  \"portugal</w>\": 9503,\n  \"portugue\": 17498,\n  \"portuguese</w>\": 18019,\n  \"pos\": 1780,\n  \"pos</w>\": 11839,\n  \"pose\": 25478,\n  \"pose</w>\": 4230,\n  \"posed</w>\": 5206,\n  \"posei\": 47270,\n  \"poser</w>\": 46899,\n  \"poses</w>\": 9773,\n  \"posey</w>\": 34852,\n  \"posh</w>\": 26748,\n  \"posing</w>\": 10518,\n  \"posit\": 28793,\n  \"positi\": 7895,\n  \"position</w>\": 4657,\n  \"positioned</w>\": 34482,\n  \"positioning</w>\": 30657,\n  \"positions</w>\": 12188,\n  \"positive\": 21811,\n  \"positive</w>\": 4844,\n  \"positively</w>\": 24688,\n  \"positivity</w>\": 19966,\n  \"poss</w>\": 39745,\n  \"posse\": 17414,\n  \"posse</w>\": 28413,\n  \"possess</w>\": 36810,\n  \"possessed</w>\": 36220,\n  \"possession</w>\": 16154,\n  \"possessions</w>\": 40588,\n  \"possi\": 2521,\n  \"possibilities</w>\": 17932,\n  \"possibility</w>\": 18517,\n  \"possible</w>\": 3134,\n  \"possibly</w>\": 8601,\n  \"possum</w>\": 38575,\n  \"post\": 3489,\n  \"post</w>\": 1549,\n  \"postage</w>\": 27570,\n  \"postal</w>\": 21687,\n  \"postcard</w>\": 14785,\n  \"postcards</w>\": 23922,\n  \"postdoc</w>\": 41013,\n  \"posted</w>\": 4752,\n  \"poster\": 22881,\n  \"poster</w>\": 3574,\n  \"posters</w>\": 9673,\n  \"postgame</w>\": 34873,\n  \"postgraduate</w>\": 31997,\n  \"posthum\": 42410,\n  \"posting</w>\": 7559,\n  \"postman</w>\": 38285,\n  \"postpon\": 23247,\n  \"postponed</w>\": 25097,\n  \"posts</w>\": 7824,\n  \"postseason</w>\": 24521,\n  \"posture</w>\": 29681,\n  \"posure</w>\": 35539,\n  \"pot\": 3547,\n  \"pot</w>\": 5168,\n  \"potam\": 45825,\n  \"potassi\": 36889,\n  \"potassium</w>\": 37147,\n  \"potat\": 5975,\n  \"potato</w>\": 8527,\n  \"potatoes</w>\": 11567,\n  \"potd</w>\": 28765,\n  \"pote</w>\": 41869,\n  \"poten\": 4454,\n  \"potent</w>\": 26082,\n  \"potenti\": 44104,\n  \"potential</w>\": 5100,\n  \"potentially</w>\": 16508,\n  \"potholes</w>\": 47506,\n  \"potion</w>\": 46055,\n  \"potom\": 38848,\n  \"potomac</w>\": 43372,\n  \"pots</w>\": 19234,\n  \"pott\": 28698,\n  \"potted</w>\": 48581,\n  \"potter\": 24975,\n  \"potter</w>\": 9026,\n  \"pottery</w>\": 18396,\n  \"potts</w>\": 39839,\n  \"potty</w>\": 43569,\n  \"potus</w>\": 8740,\n  \"pou\": 9423,\n  \"pouch</w>\": 26811,\n  \"poul\": 22485,\n  \"poultry</w>\": 31005,\n  \"poun\": 33719,\n  \"pound\": 33809,\n  \"pound</w>\": 10674,\n  \"pounding</w>\": 46544,\n  \"pounds</w>\": 10752,\n  \"pour\": 33112,\n  \"pour</w>\": 8180,\n  \"poured</w>\": 26621,\n  \"pouring</w>\": 16098,\n  \"pours</w>\": 26005,\n  \"pout</w>\": 39621,\n  \"poutine</w>\": 43768,\n  \"pov</w>\": 25731,\n  \"pover\": 8432,\n  \"pover</w>\": 29464,\n  \"poverty</w>\": 9095,\n  \"pow\": 1317,\n  \"pow</w>\": 17745,\n  \"powder\": 32427,\n  \"powder</w>\": 9674,\n  \"powe\": 36955,\n  \"powell</w>\": 13305,\n  \"power\": 2789,\n  \"power</w>\": 1807,\n  \"powerball</w>\": 47803,\n  \"powered\": 45442,\n  \"powered</w>\": 7332,\n  \"powerful</w>\": 4875,\n  \"powerhouse</w>\": 22858,\n  \"powering</w>\": 16231,\n  \"powerof\": 31961,\n  \"powerpoint</w>\": 38940,\n  \"powerrangers</w>\": 40620,\n  \"powers</w>\": 9422,\n  \"pox</w>\": 43649,\n  \"poy</w>\": 34737,\n  \"poyn\": 47655,\n  \"poz\": 39953,\n  \"pp\": 604,\n  \"pp</w>\": 4186,\n  \"ppa</w>\": 10416,\n  \"ppard</w>\": 23391,\n  \"ppc</w>\": 27778,\n  \"ppe\": 24573,\n  \"ppe</w>\": 11867,\n  \"pped</w>\": 1873,\n  \"ppel</w>\": 46523,\n  \"ppen</w>\": 30663,\n  \"pper\": 6719,\n  \"pper</w>\": 2440,\n  \"ppers</w>\": 5232,\n  \"ppery</w>\": 27833,\n  \"ppet</w>\": 20744,\n  \"ppets</w>\": 25849,\n  \"ppg</w>\": 27433,\n  \"ppi</w>\": 9594,\n  \"ppie</w>\": 33795,\n  \"ppin</w>\": 8076,\n  \"pping\": 22214,\n  \"pping</w>\": 1682,\n  \"ppings</w>\": 35687,\n  \"ppl</w>\": 6758,\n  \"pple</w>\": 12302,\n  \"ppm</w>\": 42053,\n  \"ppo</w>\": 10215,\n  \"ppor\": 37613,\n  \"ppp</w>\": 14017,\n  \"pps</w>\": 10683,\n  \"ppv</w>\": 38864,\n  \"ppy\": 30360,\n  \"ppy</w>\": 3860,\n  \"pr\": 766,\n  \"pr</w>\": 4150,\n  \"pra\": 1865,\n  \"pra</w>\": 19285,\n  \"prab\": 17901,\n  \"prabhas</w>\": 29959,\n  \"prabhu</w>\": 31529,\n  \"prac\": 2243,\n  \"practi\": 29995,\n  \"practic\": 5495,\n  \"practical</w>\": 10792,\n  \"practically</w>\": 25588,\n  \"practice</w>\": 3349,\n  \"practiced</w>\": 36749,\n  \"practices</w>\": 9040,\n  \"practicing</w>\": 12750,\n  \"practise</w>\": 38938,\n  \"practising</w>\": 36478,\n  \"practiti\": 19909,\n  \"practitioner</w>\": 32591,\n  \"practitioners</w>\": 29045,\n  \"prada</w>\": 29456,\n  \"pradesh</w>\": 15384,\n  \"prado</w>\": 44141,\n  \"prag\": 31025,\n  \"prague</w>\": 14940,\n  \"prairi\": 12629,\n  \"prairie</w>\": 14753,\n  \"praise</w>\": 10013,\n  \"praised</w>\": 27649,\n  \"praises</w>\": 23049,\n  \"praising</w>\": 36961,\n  \"prakash\": 43708,\n  \"prakash</w>\": 25366,\n  \"pram\": 47774,\n  \"pran\": 20048,\n  \"prank</w>\": 23654,\n  \"pras</w>\": 41562,\n  \"prasad</w>\": 29562,\n  \"prat\": 23069,\n  \"prati\": 45773,\n  \"pratt\": 37863,\n  \"pratt</w>\": 23396,\n  \"prawn</w>\": 33102,\n  \"prawns</w>\": 34903,\n  \"pray\": 12671,\n  \"pray</w>\": 6041,\n  \"prayed</w>\": 34665,\n  \"prayer\": 41452,\n  \"prayer</w>\": 6583,\n  \"prayers</w>\": 8393,\n  \"prayfor\": 18443,\n  \"praying</w>\": 11550,\n  \"prays</w>\": 46602,\n  \"prc</w>\": 28781,\n  \"pre\": 679,\n  \"pre</w>\": 2900,\n  \"preach</w>\": 22545,\n  \"preacher</w>\": 29357,\n  \"preaching</w>\": 23642,\n  \"precau\": 36532,\n  \"precautions</w>\": 47845,\n  \"prece\": 15361,\n  \"preci\": 5470,\n  \"precin\": 27908,\n  \"precinct</w>\": 32587,\n  \"precious</w>\": 8226,\n  \"precipit\": 27463,\n  \"precipitation</w>\": 33399,\n  \"precise</w>\": 24457,\n  \"precisely</w>\": 34954,\n  \"precision\": 44021,\n  \"precision</w>\": 15621,\n  \"pred\": 40370,\n  \"predat\": 13364,\n  \"predator</w>\": 20653,\n  \"predators</w>\": 25569,\n  \"prede\": 38454,\n  \"predecess\": 38963,\n  \"predic\": 4876,\n  \"predict</w>\": 16900,\n  \"predictable</w>\": 25344,\n  \"predicted</w>\": 18702,\n  \"predicting</w>\": 30414,\n  \"prediction</w>\": 16296,\n  \"predictions</w>\": 15125,\n  \"predictive</w>\": 29798,\n  \"predicts</w>\": 25960,\n  \"preds</w>\": 40125,\n  \"pree</w>\": 47026,\n  \"preet</w>\": 30131,\n  \"prefe\": 14542,\n  \"prefecture</w>\": 32890,\n  \"prefer\": 33426,\n  \"prefer</w>\": 11450,\n  \"preference</w>\": 35057,\n  \"preferences</w>\": 38118,\n  \"preferred</w>\": 18772,\n  \"prefers</w>\": 38528,\n  \"pregame</w>\": 18575,\n  \"pregn\": 7190,\n  \"pregnancy</w>\": 12769,\n  \"pregnant</w>\": 11195,\n  \"prehistoric</w>\": 32750,\n  \"prejudice</w>\": 28337,\n  \"preli\": 15523,\n  \"prelimin\": 19990,\n  \"preliminary</w>\": 20997,\n  \"prelims</w>\": 43223,\n  \"prelude</w>\": 42966,\n  \"prem\": 32090,\n  \"prem</w>\": 21724,\n  \"premature</w>\": 39253,\n  \"premi\": 2413,\n  \"premier\": 16996,\n  \"premier</w>\": 5539,\n  \"premiere</w>\": 5367,\n  \"premiered</w>\": 27652,\n  \"premieres</w>\": 19907,\n  \"premiering</w>\": 32615,\n  \"premierleague</w>\": 22608,\n  \"premiers</w>\": 44883,\n  \"premiership</w>\": 23665,\n  \"premiosm\": 38460,\n  \"premiosmtvmiaw</w>\": 38630,\n  \"premise</w>\": 45952,\n  \"premises</w>\": 27266,\n  \"premium</w>\": 8011,\n  \"pren\": 20801,\n  \"preneur</w>\": 46288,\n  \"preorder</w>\": 16703,\n  \"preorders</w>\": 45985,\n  \"prep\": 6430,\n  \"prep</w>\": 7277,\n  \"prepa\": 26270,\n  \"prepaid</w>\": 42934,\n  \"prepar\": 4968,\n  \"preparation</w>\": 11651,\n  \"preparations</w>\": 19135,\n  \"prepare</w>\": 7014,\n  \"prepared</w>\": 7677,\n  \"preparedness</w>\": 29492,\n  \"prepares</w>\": 16375,\n  \"preparing</w>\": 7365,\n  \"prepped</w>\": 34379,\n  \"prepping</w>\": 16459,\n  \"preps</w>\": 14765,\n  \"prequel</w>\": 40461,\n  \"pres\": 1385,\n  \"pres</w>\": 8529,\n  \"presale</w>\": 27135,\n  \"presby\": 30447,\n  \"presbyter\": 33959,\n  \"presbyterian</w>\": 35370,\n  \"preschool</w>\": 24354,\n  \"prescott</w>\": 29392,\n  \"prescri\": 14851,\n  \"prescribed</w>\": 36968,\n  \"prescription</w>\": 23061,\n  \"preseason</w>\": 13813,\n  \"presen\": 16742,\n  \"presence</w>\": 8848,\n  \"present\": 2344,\n  \"present</w>\": 2881,\n  \"presentation</w>\": 4594,\n  \"presentations</w>\": 16998,\n  \"presented</w>\": 4587,\n  \"presenter</w>\": 18587,\n  \"presenters</w>\": 32759,\n  \"presenting</w>\": 5339,\n  \"presents</w>\": 4215,\n  \"preserv\": 17616,\n  \"preservation</w>\": 21074,\n  \"preserve</w>\": 15570,\n  \"preserved</w>\": 23161,\n  \"preserves</w>\": 44881,\n  \"preserving</w>\": 32315,\n  \"presi\": 1697,\n  \"presiden\": 43374,\n  \"presidency</w>\": 18077,\n  \"president\": 19900,\n  \"president</w>\": 1940,\n  \"presidente</w>\": 47363,\n  \"presidenti\": 48297,\n  \"presidential</w>\": 8503,\n  \"presidents</w>\": 16726,\n  \"presiding</w>\": 45298,\n  \"presley</w>\": 30013,\n  \"press\": 4124,\n  \"press</w>\": 2124,\n  \"pressed</w>\": 20080,\n  \"presser</w>\": 27826,\n  \"presses</w>\": 33748,\n  \"pressing</w>\": 20893,\n  \"pressure</w>\": 6083,\n  \"pressures</w>\": 38487,\n  \"prest\": 41840,\n  \"presti\": 12245,\n  \"prestige</w>\": 29328,\n  \"prestigious</w>\": 15888,\n  \"presto</w>\": 42211,\n  \"preston\": 37335,\n  \"preston</w>\": 15179,\n  \"presu\": 21667,\n  \"presumably</w>\": 42562,\n  \"pret\": 9652,\n  \"preten\": 15871,\n  \"pretend</w>\": 18111,\n  \"pretending</w>\": 21306,\n  \"pretoria</w>\": 36080,\n  \"prett\": 46667,\n  \"prettier</w>\": 31745,\n  \"prettiest</w>\": 22866,\n  \"pretty\": 18286,\n  \"pretty</w>\": 2111,\n  \"pretz\": 24890,\n  \"pretzel</w>\": 36707,\n  \"pretzels</w>\": 45468,\n  \"prev\": 20274,\n  \"prevail</w>\": 31637,\n  \"prevalence</w>\": 41729,\n  \"prevalent</w>\": 46260,\n  \"preven\": 29382,\n  \"prevent\": 26436,\n  \"prevent</w>\": 7968,\n  \"preventable</w>\": 44250,\n  \"prevented</w>\": 35356,\n  \"preventing</w>\": 21756,\n  \"prevention</w>\": 9500,\n  \"preventive</w>\": 40949,\n  \"prevents</w>\": 31746,\n  \"preview</w>\": 4449,\n  \"previews</w>\": 20279,\n  \"previous</w>\": 9252,\n  \"previously</w>\": 13359,\n  \"prey</w>\": 17131,\n  \"prez</w>\": 17956,\n  \"pri\": 955,\n  \"pri</w>\": 23400,\n  \"pric\": 24275,\n  \"price\": 13254,\n  \"price</w>\": 2827,\n  \"priced</w>\": 16934,\n  \"priceless</w>\": 15743,\n  \"prices</w>\": 5954,\n  \"pricing</w>\": 14800,\n  \"prick\": 43921,\n  \"prick</w>\": 46516,\n  \"pride\": 15323,\n  \"pride</w>\": 3436,\n  \"pridemonth</w>\": 41410,\n  \"prie\": 22477,\n  \"priest\": 38756,\n  \"priest</w>\": 14222,\n  \"priests</w>\": 30005,\n  \"prim\": 22004,\n  \"prima\": 35611,\n  \"prima</w>\": 33277,\n  \"primal</w>\": 36604,\n  \"primar\": 21579,\n  \"primaries</w>\": 46126,\n  \"primarily</w>\": 29465,\n  \"primark</w>\": 48329,\n  \"primary\": 35024,\n  \"primary</w>\": 5814,\n  \"primavera</w>\": 44899,\n  \"prime\": 14162,\n  \"prime</w>\": 5183,\n  \"primed</w>\": 45694,\n  \"primer</w>\": 22388,\n  \"primetime</w>\": 29763,\n  \"primitive</w>\": 37467,\n  \"primo</w>\": 43215,\n  \"primrose</w>\": 45891,\n  \"prin\": 1588,\n  \"prince\": 9457,\n  \"prince</w>\": 4735,\n  \"princes\": 45329,\n  \"princes</w>\": 30136,\n  \"princess\": 24123,\n  \"princess</w>\": 5079,\n  \"princesses</w>\": 34161,\n  \"princeton</w>\": 22433,\n  \"princi\": 5129,\n  \"principal\": 33599,\n  \"principal</w>\": 8860,\n  \"principals</w>\": 27524,\n  \"principle</w>\": 19595,\n  \"principles</w>\": 13755,\n  \"print\": 17851,\n  \"print</w>\": 3557,\n  \"printable</w>\": 29648,\n  \"printed</w>\": 7978,\n  \"printer</w>\": 14521,\n  \"printers</w>\": 27881,\n  \"printing</w>\": 7369,\n  \"printmaking</w>\": 38669,\n  \"prints</w>\": 7704,\n  \"prior\": 20328,\n  \"prior</w>\": 10572,\n  \"priorit\": 47773,\n  \"prioriti\": 28822,\n  \"priorities</w>\": 15232,\n  \"prioritize</w>\": 46715,\n  \"priority</w>\": 12451,\n  \"priory</w>\": 38665,\n  \"prisc\": 32468,\n  \"priscilla</w>\": 42396,\n  \"prise</w>\": 23343,\n  \"prism\": 49311,\n  \"prism</w>\": 34356,\n  \"prison\": 9281,\n  \"prison</w>\": 6622,\n  \"prisoner</w>\": 21427,\n  \"prisoners</w>\": 17460,\n  \"prisons</w>\": 26607,\n  \"pristine</w>\": 30618,\n  \"prit\": 41668,\n  \"prit</w>\": 37523,\n  \"prith\": 39173,\n  \"prius</w>\": 43561,\n  \"priv\": 3270,\n  \"privacy</w>\": 10437,\n  \"private\": 20362,\n  \"private</w>\": 4439,\n  \"privately</w>\": 32970,\n  \"privati\": 27379,\n  \"privi\": 8367,\n  \"privileg\": 18015,\n  \"privilege</w>\": 11537,\n  \"privileged</w>\": 18166,\n  \"prix</w>\": 10875,\n  \"priya</w>\": 31275,\n  \"priyan\": 16488,\n  \"priyanka</w>\": 31959,\n  \"priyankach\": 30030,\n  \"priyankachopra</w>\": 30264,\n  \"prize\": 48222,\n  \"prize</w>\": 4521,\n  \"prized</w>\": 38769,\n  \"prizes</w>\": 9268,\n  \"prk</w>\": 37094,\n  \"pro\": 644,\n  \"pro</w>\": 2630,\n  \"proactive</w>\": 33364,\n  \"prob\": 17706,\n  \"prob</w>\": 24007,\n  \"probab\": 3907,\n  \"probability</w>\": 32637,\n  \"probable</w>\": 42444,\n  \"probably</w>\": 4047,\n  \"probation</w>\": 36531,\n  \"probe</w>\": 14359,\n  \"probes</w>\": 48564,\n  \"probiotics</w>\": 49395,\n  \"proble\": 2719,\n  \"problem</w>\": 4324,\n  \"problematic</w>\": 33767,\n  \"problems</w>\": 4671,\n  \"probs</w>\": 16330,\n  \"probz</w>\": 34243,\n  \"proc\": 38417,\n  \"proce\": 4076,\n  \"procedu\": 18204,\n  \"procedural</w>\": 48177,\n  \"procedure</w>\": 20163,\n  \"procedures</w>\": 21109,\n  \"proceed\": 26664,\n  \"proceed</w>\": 33894,\n  \"proceedings</w>\": 26953,\n  \"proceeds</w>\": 11882,\n  \"process\": 17291,\n  \"process</w>\": 4078,\n  \"processed</w>\": 23816,\n  \"processes</w>\": 15169,\n  \"processing</w>\": 11737,\n  \"procession</w>\": 26288,\n  \"processor</w>\": 22838,\n  \"processors</w>\": 43634,\n  \"proclaimed</w>\": 34489,\n  \"proclamation</w>\": 32065,\n  \"procra\": 25361,\n  \"procrastin\": 25586,\n  \"procrastination</w>\": 42825,\n  \"procreate</w>\": 39336,\n  \"proctor</w>\": 47204,\n  \"procu\": 21001,\n  \"procurement</w>\": 23733,\n  \"prod\": 44349,\n  \"prod</w>\": 11991,\n  \"prodi\": 27759,\n  \"prodigy</w>\": 31973,\n  \"produ\": 27852,\n  \"produc\": 1471,\n  \"produce</w>\": 7529,\n  \"produced</w>\": 7479,\n  \"producer</w>\": 7064,\n  \"producers</w>\": 13883,\n  \"produces</w>\": 19940,\n  \"producing</w>\": 13579,\n  \"product\": 32602,\n  \"product</w>\": 4306,\n  \"production</w>\": 4146,\n  \"productions</w>\": 14166,\n  \"productive</w>\": 9697,\n  \"productivity</w>\": 12800,\n  \"products</w>\": 3964,\n  \"prof\": 15043,\n  \"prof</w>\": 5488,\n  \"profe\": 2611,\n  \"profess\": 5486,\n  \"professi\": 3705,\n  \"profession\": 8104,\n  \"profession</w>\": 19671,\n  \"professional\": 46007,\n  \"professional</w>\": 4774,\n  \"professionalism</w>\": 41252,\n  \"professionally</w>\": 33892,\n  \"professionals</w>\": 10165,\n  \"professor\": 47302,\n  \"professor</w>\": 6092,\n  \"professors</w>\": 27758,\n  \"profici\": 34685,\n  \"profile\": 14291,\n  \"profile</w>\": 6444,\n  \"profiles</w>\": 22070,\n  \"profiling</w>\": 37123,\n  \"profit\": 16941,\n  \"profit</w>\": 7909,\n  \"profitable</w>\": 25465,\n  \"profits</w>\": 13410,\n  \"profound\": 48245,\n  \"profound</w>\": 22998,\n  \"profs</w>\": 19260,\n  \"prog</w>\": 22219,\n  \"progno\": 46070,\n  \"program\": 4162,\n  \"program</w>\": 2737,\n  \"programme</w>\": 6322,\n  \"programmer</w>\": 37001,\n  \"programmes</w>\": 20468,\n  \"programming</w>\": 10831,\n  \"programs</w>\": 7345,\n  \"progre\": 7069,\n  \"progress</w>\": 4421,\n  \"progressi\": 23297,\n  \"progressing</w>\": 32346,\n  \"progression</w>\": 24772,\n  \"progressive</w>\": 12208,\n  \"progressives</w>\": 41709,\n  \"prohi\": 41124,\n  \"prohib\": 45040,\n  \"prohibition</w>\": 34440,\n  \"proj</w>\": 39156,\n  \"proje\": 48345,\n  \"projec\": 1610,\n  \"project\": 15911,\n  \"project</w>\": 1965,\n  \"projected</w>\": 22873,\n  \"projection</w>\": 22384,\n  \"projections</w>\": 34638,\n  \"projector</w>\": 27816,\n  \"projects</w>\": 5090,\n  \"proli\": 19710,\n  \"prolife</w>\": 32126,\n  \"prolifer\": 39018,\n  \"prolific</w>\": 27839,\n  \"prolly</w>\": 45968,\n  \"prolon\": 35379,\n  \"prolonged</w>\": 41972,\n  \"prom\": 40363,\n  \"prom</w>\": 7944,\n  \"prome\": 34355,\n  \"promen\": 33578,\n  \"promenade</w>\": 35522,\n  \"promethe\": 44183,\n  \"promin\": 35217,\n  \"prominent</w>\": 19172,\n  \"promis\": 3963,\n  \"promise</w>\": 6745,\n  \"promised</w>\": 11516,\n  \"promises</w>\": 12064,\n  \"promising</w>\": 14183,\n  \"promo\": 3037,\n  \"promo</w>\": 6755,\n  \"promos</w>\": 35044,\n  \"promote\": 47384,\n  \"promote</w>\": 8003,\n  \"promoted</w>\": 16395,\n  \"promoter</w>\": 33081,\n  \"promotes</w>\": 20169,\n  \"promoting</w>\": 9695,\n  \"promotion</w>\": 9259,\n  \"promotional</w>\": 17619,\n  \"promotions</w>\": 19142,\n  \"promp\": 11671,\n  \"prompt</w>\": 20198,\n  \"prompted</w>\": 45746,\n  \"prompts</w>\": 33490,\n  \"proms</w>\": 37759,\n  \"pron\": 13285,\n  \"prone</w>\": 30964,\n  \"pronoun\": 23022,\n  \"pronounce</w>\": 40489,\n  \"pronounced</w>\": 34109,\n  \"pronto</w>\": 44296,\n  \"proof\": 17020,\n  \"proof</w>\": 5248,\n  \"proofing</w>\": 35679,\n  \"proofs</w>\": 41023,\n  \"prop\": 19123,\n  \"prop</w>\": 16254,\n  \"propag\": 12151,\n  \"propaganda</w>\": 14718,\n  \"propane</w>\": 45546,\n  \"propel</w>\": 48439,\n  \"propeller</w>\": 47404,\n  \"proper\": 3577,\n  \"proper</w>\": 8205,\n  \"properly</w>\": 12560,\n  \"properties</w>\": 10922,\n  \"property\": 26486,\n  \"property</w>\": 5043,\n  \"prophe\": 9662,\n  \"prophecy</w>\": 32501,\n  \"prophet</w>\": 15549,\n  \"prophetic</w>\": 47476,\n  \"prophets</w>\": 39441,\n  \"propor\": 35016,\n  \"proportion</w>\": 35775,\n  \"proportions</w>\": 39391,\n  \"propos\": 9455,\n  \"proposal</w>\": 12139,\n  \"proposals</w>\": 20568,\n  \"propose</w>\": 28471,\n  \"proposed</w>\": 10615,\n  \"proposes</w>\": 27133,\n  \"proposing</w>\": 42631,\n  \"proposition</w>\": 44780,\n  \"propri\": 28243,\n  \"props</w>\": 15249,\n  \"propulsion</w>\": 49380,\n  \"pros\": 33925,\n  \"pros</w>\": 14147,\n  \"prosciutto</w>\": 46565,\n  \"prose\": 47063,\n  \"prose</w>\": 28675,\n  \"prosecco</w>\": 28839,\n  \"prosecu\": 12136,\n  \"prosecution</w>\": 30902,\n  \"prosecutor</w>\": 23736,\n  \"prosecutors</w>\": 31656,\n  \"prosp\": 24242,\n  \"prospec\": 12693,\n  \"prospect</w>\": 11211,\n  \"prospective</w>\": 28034,\n  \"prospects</w>\": 15372,\n  \"prosper\": 16121,\n  \"prosper</w>\": 33526,\n  \"prosperity</w>\": 17203,\n  \"prosperous</w>\": 28252,\n  \"prost</w>\": 47923,\n  \"prostate</w>\": 28808,\n  \"prostatec\": 49064,\n  \"prosthetic</w>\": 44602,\n  \"prostitu\": 37333,\n  \"protag\": 28950,\n  \"protagonist</w>\": 38183,\n  \"prote\": 1845,\n  \"protec\": 5640,\n  \"protect\": 25563,\n  \"protect</w>\": 4817,\n  \"protected</w>\": 12266,\n  \"protecting</w>\": 11710,\n  \"protection</w>\": 6238,\n  \"protections</w>\": 33772,\n  \"protective</w>\": 17028,\n  \"protector</w>\": 20441,\n  \"protectors</w>\": 45039,\n  \"protects</w>\": 21889,\n  \"protein</w>\": 8088,\n  \"proteins</w>\": 28661,\n  \"protest</w>\": 6279,\n  \"protestant</w>\": 46945,\n  \"protested</w>\": 48089,\n  \"protester</w>\": 42073,\n  \"protesters</w>\": 12660,\n  \"protesting</w>\": 18788,\n  \"protestors</w>\": 27822,\n  \"protests</w>\": 12450,\n  \"proto\": 8672,\n  \"proto</w>\": 44958,\n  \"protocol</w>\": 19938,\n  \"protocols</w>\": 39631,\n  \"proton</w>\": 40009,\n  \"prototype</w>\": 16675,\n  \"prototyping</w>\": 42081,\n  \"prou\": 5739,\n  \"proud\": 11080,\n  \"proud</w>\": 1679,\n  \"prouder</w>\": 39585,\n  \"proudest</w>\": 46806,\n  \"proudly</w>\": 11203,\n  \"proudof\": 48184,\n  \"proudtobe\": 35043,\n  \"prov\": 23772,\n  \"prov</w>\": 35021,\n  \"prove</w>\": 10107,\n  \"proved</w>\": 16473,\n  \"proven\": 35405,\n  \"proven</w>\": 14569,\n  \"provence</w>\": 28067,\n  \"prover\": 18312,\n  \"proverb</w>\": 34419,\n  \"proverbs</w>\": 27016,\n  \"proves</w>\": 16119,\n  \"provi\": 2289,\n  \"provide</w>\": 4832,\n  \"provided</w>\": 9046,\n  \"providence</w>\": 19331,\n  \"provider</w>\": 14409,\n  \"providers</w>\": 17120,\n  \"provides</w>\": 7161,\n  \"providing</w>\": 7250,\n  \"provin\": 12074,\n  \"province</w>\": 8978,\n  \"provinces</w>\": 35050,\n  \"provincial</w>\": 16002,\n  \"proving</w>\": 18055,\n  \"provision</w>\": 30148,\n  \"provisional</w>\": 36008,\n  \"provisions</w>\": 39269,\n  \"provo\": 15367,\n  \"provoc\": 31618,\n  \"provocative</w>\": 43809,\n  \"provoking</w>\": 25510,\n  \"provost</w>\": 36627,\n  \"prow\": 38737,\n  \"prowrestling</w>\": 39825,\n  \"prox\": 41616,\n  \"proxim\": 31436,\n  \"proximity</w>\": 38298,\n  \"proxy</w>\": 31680,\n  \"prs</w>\": 23879,\n  \"pru\": 12961,\n  \"pruitt</w>\": 39453,\n  \"prun\": 29029,\n  \"pruning</w>\": 48133,\n  \"pry\": 31965,\n  \"pryor</w>\": 43375,\n  \"ps\": 3982,\n  \"ps</w>\": 814,\n  \"psa</w>\": 14031,\n  \"psal\": 13859,\n  \"psalm</w>\": 17995,\n  \"psalms</w>\": 35003,\n  \"psb</w>\": 37017,\n  \"psc</w>\": 43118,\n  \"psd</w>\": 28810,\n  \"pse\": 19737,\n  \"pse</w>\": 5423,\n  \"pseu\": 24919,\n  \"pseudo</w>\": 46618,\n  \"psg</w>\": 17123,\n  \"psi\": 45848,\n  \"psi</w>\": 24533,\n  \"psic\": 29299,\n  \"psis</w>\": 33041,\n  \"psl</w>\": 21373,\n  \"psn</w>\": 36781,\n  \"pso\": 27045,\n  \"pson</w>\": 7487,\n  \"psori\": 44688,\n  \"psp</w>\": 32769,\n  \"pss\": 35718,\n  \"pss</w>\": 42535,\n  \"psst</w>\": 47814,\n  \"pst</w>\": 12692,\n  \"psu\": 41286,\n  \"psu</w>\": 28338,\n  \"psv</w>\": 44530,\n  \"psy\": 3576,\n  \"psy</w>\": 11056,\n  \"psych\": 31041,\n  \"psych</w>\": 20509,\n  \"psyched\": 19932,\n  \"psyched</w>\": 35199,\n  \"psychedelic</w>\": 23292,\n  \"psychi\": 18147,\n  \"psychiatric</w>\": 30578,\n  \"psychiatry</w>\": 39706,\n  \"psychic</w>\": 24916,\n  \"psycho\": 6472,\n  \"psycho</w>\": 22154,\n  \"psychological</w>\": 18153,\n  \"psychologist</w>\": 32827,\n  \"psychology</w>\": 12352,\n  \"psychop\": 30112,\n  \"psychotic</w>\": 48774,\n  \"pt\": 11139,\n  \"pt</w>\": 1459,\n  \"pta</w>\": 11586,\n  \"ptbo</w>\": 40481,\n  \"ptc</w>\": 44646,\n  \"pte</w>\": 47804,\n  \"pter\": 49323,\n  \"pti\": 29375,\n  \"pti</w>\": 10491,\n  \"ptic</w>\": 20670,\n  \"ption</w>\": 3479,\n  \"ptions</w>\": 24963,\n  \"pto\": 31372,\n  \"pto</w>\": 34092,\n  \"pton</w>\": 19780,\n  \"pts</w>\": 5886,\n  \"ptsd</w>\": 23973,\n  \"ptv</w>\": 42402,\n  \"pu\": 755,\n  \"pu</w>\": 11780,\n  \"pub\": 20720,\n  \"pub</w>\": 6301,\n  \"puberty</w>\": 44122,\n  \"pubg</w>\": 31496,\n  \"publ\": 3434,\n  \"publi\": 1617,\n  \"public\": 3592,\n  \"public</w>\": 2122,\n  \"publica</w>\": 49007,\n  \"publication</w>\": 13538,\n  \"publications</w>\": 27334,\n  \"publichealth</w>\": 35872,\n  \"publicity</w>\": 20831,\n  \"publicly</w>\": 18554,\n  \"publish</w>\": 19032,\n  \"published</w>\": 4311,\n  \"publisher</w>\": 20455,\n  \"publishers</w>\": 25222,\n  \"publishes</w>\": 35633,\n  \"publishing</w>\": 10994,\n  \"publix</w>\": 47985,\n  \"pubs</w>\": 21099,\n  \"puc\": 48779,\n  \"puck</w>\": 17550,\n  \"pud\": 39234,\n  \"pudding</w>\": 14025,\n  \"puddle</w>\": 33545,\n  \"pue\": 20161,\n  \"pueblo</w>\": 33076,\n  \"puer\": 8968,\n  \"puerto</w>\": 12289,\n  \"puertor\": 22757,\n  \"puertorico</w>\": 26356,\n  \"puff\": 44477,\n  \"puff</w>\": 17184,\n  \"puffin</w>\": 47632,\n  \"puffs</w>\": 47453,\n  \"puffy</w>\": 49245,\n  \"pug\": 20950,\n  \"pug</w>\": 17739,\n  \"pugchat</w>\": 42266,\n  \"pugh</w>\": 41302,\n  \"puglia</w>\": 38345,\n  \"pugs</w>\": 39425,\n  \"puj\": 46163,\n  \"puja</w>\": 33753,\n  \"puk</w>\": 31811,\n  \"pul\": 2469,\n  \"pul</w>\": 40512,\n  \"pula\": 45856,\n  \"puli</w>\": 47293,\n  \"pulit\": 27745,\n  \"pulitzer</w>\": 31419,\n  \"pull\": 20155,\n  \"pull</w>\": 6857,\n  \"pulled</w>\": 8525,\n  \"pulling</w>\": 12897,\n  \"pullman</w>\": 40203,\n  \"pullover</w>\": 44020,\n  \"pulls</w>\": 16041,\n  \"pulmon\": 32613,\n  \"pulmonary</w>\": 39132,\n  \"pulp</w>\": 25410,\n  \"pulse\": 40091,\n  \"pulse</w>\": 12485,\n  \"pulses</w>\": 42177,\n  \"pulsion</w>\": 35398,\n  \"pum\": 37497,\n  \"puma</w>\": 20858,\n  \"pump\": 5179,\n  \"pump</w>\": 9173,\n  \"pumped</w>\": 12796,\n  \"pumping</w>\": 25150,\n  \"pumpkin\": 36386,\n  \"pumpkin</w>\": 8842,\n  \"pumpkins</w>\": 23787,\n  \"pumps</w>\": 18540,\n  \"pun\": 2707,\n  \"pun</w>\": 19929,\n  \"punc\": 43907,\n  \"punch\": 29332,\n  \"punch</w>\": 10730,\n  \"punched</w>\": 31689,\n  \"punches</w>\": 35279,\n  \"punching</w>\": 33468,\n  \"punctu\": 31565,\n  \"punctuation</w>\": 47051,\n  \"pundit</w>\": 41466,\n  \"pune\": 32593,\n  \"pune</w>\": 14488,\n  \"pung</w>\": 45420,\n  \"puni\": 11479,\n  \"punish</w>\": 34569,\n  \"punished</w>\": 31598,\n  \"punisher</w>\": 38509,\n  \"punishment</w>\": 19099,\n  \"punjab\": 19405,\n  \"punjab</w>\": 12883,\n  \"punjabi</w>\": 25430,\n  \"punk\": 28933,\n  \"punk</w>\": 7246,\n  \"punks</w>\": 47171,\n  \"puns</w>\": 35231,\n  \"punt</w>\": 32699,\n  \"punta</w>\": 34112,\n  \"punter</w>\": 47092,\n  \"pup\": 11926,\n  \"pup</w>\": 11302,\n  \"pupil</w>\": 27265,\n  \"pupils</w>\": 13628,\n  \"pupp\": 7116,\n  \"puppet</w>\": 18439,\n  \"puppets</w>\": 28475,\n  \"puppies</w>\": 14820,\n  \"puppy\": 25431,\n  \"puppy</w>\": 6829,\n  \"puppylove</w>\": 40849,\n  \"pups</w>\": 20778,\n  \"pur\": 1727,\n  \"pur</w>\": 6265,\n  \"pura</w>\": 25596,\n  \"puram</w>\": 46174,\n  \"purcell</w>\": 46065,\n  \"purch\": 8384,\n  \"purchase</w>\": 5481,\n  \"purchased</w>\": 13399,\n  \"purchases</w>\": 21887,\n  \"purchasing</w>\": 20718,\n  \"purdu\": 40691,\n  \"purdue</w>\": 22280,\n  \"pure\": 14202,\n  \"pure</w>\": 5979,\n  \"puree</w>\": 45474,\n  \"purely</w>\": 32459,\n  \"puremichigan</w>\": 39783,\n  \"purest</w>\": 45497,\n  \"purge</w>\": 33514,\n  \"puri\": 16910,\n  \"puri</w>\": 21974,\n  \"purification</w>\": 47724,\n  \"purity</w>\": 29780,\n  \"purple\": 17837,\n  \"purple</w>\": 5496,\n  \"purpose\": 33492,\n  \"purpose</w>\": 7391,\n  \"purposes</w>\": 22020,\n  \"purr\": 49262,\n  \"purr</w>\": 46343,\n  \"purse</w>\": 16480,\n  \"pursue</w>\": 19463,\n  \"pursuing</w>\": 26424,\n  \"pursuit</w>\": 16469,\n  \"purÃ©e</w>\": 40981,\n  \"pus</w>\": 13841,\n  \"pusa</w>\": 40825,\n  \"push\": 16028,\n  \"push</w>\": 6831,\n  \"pushaw\": 35407,\n  \"pushaward\": 35448,\n  \"pushawards\": 47184,\n  \"pushed</w>\": 16155,\n  \"pushes</w>\": 23828,\n  \"pushing</w>\": 11549,\n  \"put\": 29535,\n  \"put</w>\": 1983,\n  \"putin</w>\": 10693,\n  \"putnam</w>\": 40235,\n  \"puts</w>\": 7898,\n  \"putt</w>\": 30279,\n  \"putter</w>\": 44723,\n  \"putting</w>\": 5154,\n  \"puzz\": 19760,\n  \"puzzle</w>\": 12875,\n  \"puzzles</w>\": 27986,\n  \"pv\": 14517,\n  \"pv</w>\": 13495,\n  \"pvc</w>\": 26959,\n  \"pvp</w>\": 44172,\n  \"pvt</w>\": 29898,\n  \"pw\": 19419,\n  \"pw</w>\": 16067,\n  \"pwc</w>\": 22965,\n  \"px\": 24790,\n  \"px</w>\": 10262,\n  \"pxrtg</w>\": 36262,\n  \"py\": 4005,\n  \"py</w>\": 7504,\n  \"pye\": 31099,\n  \"pyeongchang</w>\": 36066,\n  \"pyg\": 41450,\n  \"pyram\": 14405,\n  \"pyramid</w>\": 18725,\n  \"pyramids</w>\": 36877,\n  \"pyrene\": 36740,\n  \"pyrenees</w>\": 39744,\n  \"pyro\": 39762,\n  \"python</w>\": 13370,\n  \"pz</w>\": 48361,\n  \"pÃ©\": 43167,\n  \"q\": 80,\n  \"q</w>\": 336,\n  \"qa\": 24944,\n  \"qa</w>\": 16360,\n  \"qad\": 27844,\n  \"qadri</w>\": 35672,\n  \"qaeda</w>\": 31246,\n  \"qanda</w>\": 48672,\n  \"qanon</w>\": 19182,\n  \"qant\": 35404,\n  \"qantas</w>\": 43250,\n  \"qatar\": 32804,\n  \"qatar</w>\": 10872,\n  \"qb</w>\": 8073,\n  \"qbs</w>\": 38188,\n  \"qc</w>\": 17406,\n  \"qe</w>\": 30974,\n  \"qf</w>\": 27215,\n  \"qi\": 25054,\n  \"qi</w>\": 11256,\n  \"qing\": 46522,\n  \"qing</w>\": 34339,\n  \"ql</w>\": 28366,\n  \"qld\": 23039,\n  \"qld</w>\": 13765,\n  \"qldpol</w>\": 42296,\n  \"qm</w>\": 42148,\n  \"qotd</w>\": 24504,\n  \"qpr</w>\": 24788,\n  \"qq\": 31960,\n  \"qr</w>\": 18193,\n  \"qs</w>\": 14364,\n  \"qt</w>\": 15013,\n  \"qtr</w>\": 44803,\n  \"qu\": 666,\n  \"qu</w>\": 28646,\n  \"qua</w>\": 20363,\n  \"quack</w>\": 45575,\n  \"quad\": 11656,\n  \"quad</w>\": 13419,\n  \"quadcopter</w>\": 39792,\n  \"quadru\": 35831,\n  \"quaid</w>\": 34265,\n  \"quail</w>\": 34392,\n  \"quaint</w>\": 45976,\n  \"quake</w>\": 8421,\n  \"quaker</w>\": 43395,\n  \"quakes</w>\": 24572,\n  \"qual\": 9979,\n  \"qual</w>\": 32405,\n  \"qualcomm</w>\": 38683,\n  \"quali\": 4574,\n  \"qualification</w>\": 21508,\n  \"qualifications</w>\": 35225,\n  \"qualified</w>\": 11927,\n  \"qualifier</w>\": 18733,\n  \"qualifiers</w>\": 21388,\n  \"qualifies</w>\": 35820,\n  \"qualify</w>\": 17019,\n  \"qualifying</w>\": 11895,\n  \"qualitative</w>\": 45847,\n  \"qualities</w>\": 20488,\n  \"quality\": 28545,\n  \"quality</w>\": 3027,\n  \"quan\": 11669,\n  \"quan</w>\": 27490,\n  \"quand</w>\": 28198,\n  \"quant\": 15050,\n  \"quanti\": 31540,\n  \"quantitative</w>\": 40583,\n  \"quantities</w>\": 33917,\n  \"quantity</w>\": 26920,\n  \"quantum</w>\": 15320,\n  \"quar\": 3856,\n  \"quare</w>\": 42549,\n  \"quarry</w>\": 27601,\n  \"quart\": 7851,\n  \"quarter\": 8816,\n  \"quarter</w>\": 6632,\n  \"quarterback</w>\": 16545,\n  \"quarterfinal</w>\": 37992,\n  \"quarterfinals</w>\": 28971,\n  \"quarterly</w>\": 23350,\n  \"quarters</w>\": 10146,\n  \"quartet</w>\": 18056,\n  \"quartz</w>\": 17752,\n  \"quat\": 25715,\n  \"quattro</w>\": 40300,\n  \"quay\": 40276,\n  \"quay</w>\": 17304,\n  \"que\": 1147,\n  \"que</w>\": 2319,\n  \"quebec</w>\": 15373,\n  \"queen\": 6407,\n  \"queen</w>\": 2997,\n  \"queenof\": 44398,\n  \"queens\": 22943,\n  \"queens</w>\": 9330,\n  \"queensland</w>\": 15168,\n  \"queer\": 38874,\n  \"queer</w>\": 18161,\n  \"quel\": 39774,\n  \"quel</w>\": 21879,\n  \"quen\": 23876,\n  \"quen</w>\": 38324,\n  \"quent\": 23808,\n  \"quentin</w>\": 27530,\n  \"quer\": 17378,\n  \"quer</w>\": 26859,\n  \"quered</w>\": 23210,\n  \"queries</w>\": 32958,\n  \"querque</w>\": 30338,\n  \"query</w>\": 27464,\n  \"ques\": 25328,\n  \"ques</w>\": 7715,\n  \"queso</w>\": 40110,\n  \"quest\": 31653,\n  \"quest</w>\": 4846,\n  \"questi\": 2391,\n  \"question\": 18961,\n  \"question</w>\": 4382,\n  \"questionable</w>\": 30733,\n  \"questioned</w>\": 31847,\n  \"questioning</w>\": 24887,\n  \"questions</w>\": 3883,\n  \"quests</w>\": 44611,\n  \"quet</w>\": 8513,\n  \"quets</w>\": 39055,\n  \"quetta</w>\": 38326,\n  \"quette</w>\": 18993,\n  \"queu\": 32705,\n  \"queue</w>\": 18549,\n  \"queues</w>\": 40649,\n  \"queuing</w>\": 44082,\n  \"quez</w>\": 18677,\n  \"quezon</w>\": 41117,\n  \"qui\": 1912,\n  \"qui</w>\": 18046,\n  \"quic\": 26474,\n  \"quiche</w>\": 47723,\n  \"quick\": 5969,\n  \"quick</w>\": 3712,\n  \"quicker</w>\": 29211,\n  \"quickest</w>\": 37734,\n  \"quickly</w>\": 7787,\n  \"quid</w>\": 30732,\n  \"quie\": 43875,\n  \"quien</w>\": 43482,\n  \"quiere</w>\": 42723,\n  \"quiero</w>\": 32567,\n  \"quiet\": 17853,\n  \"quiet</w>\": 7557,\n  \"quietly</w>\": 22208,\n  \"quig\": 44690,\n  \"quil\": 12305,\n  \"quill</w>\": 48951,\n  \"quilt</w>\": 23977,\n  \"quilted</w>\": 46052,\n  \"quin\": 8607,\n  \"quin</w>\": 17167,\n  \"quincy</w>\": 27640,\n  \"quind\": 32339,\n  \"quinn</w>\": 12306,\n  \"quinoa</w>\": 26703,\n  \"quins</w>\": 39701,\n  \"quint\": 26898,\n  \"quinta</w>\": 47446,\n  \"quinte\": 22098,\n  \"quintess\": 37538,\n  \"quintet</w>\": 35125,\n  \"quipment</w>\": 42813,\n  \"quir\": 15943,\n  \"quirky</w>\": 25044,\n  \"quis\": 15064,\n  \"quist</w>\": 25128,\n  \"quit\": 19358,\n  \"quit</w>\": 11140,\n  \"quite</w>\": 4135,\n  \"quito</w>\": 35828,\n  \"quits</w>\": 32505,\n  \"quitting</w>\": 33871,\n  \"quity</w>\": 33133,\n  \"quiz\": 31197,\n  \"quiz</w>\": 8344,\n  \"quizz\": 35041,\n  \"quo\": 3046,\n  \"quo</w>\": 28127,\n  \"quoi</w>\": 45549,\n  \"quot\": 5452,\n  \"quot</w>\": 47587,\n  \"quota</w>\": 42097,\n  \"quotation</w>\": 49195,\n  \"quote\": 15446,\n  \"quote</w>\": 4020,\n  \"quoted</w>\": 27706,\n  \"quoteoftheday</w>\": 19975,\n  \"quotes</w>\": 5808,\n  \"quoting</w>\": 31651,\n  \"qur</w>\": 37782,\n  \"quran</w>\": 19690,\n  \"qureshi</w>\": 46307,\n  \"qvist</w>\": 42322,\n  \"qx</w>\": 45038,\n  \"r\": 81,\n  \"r</w>\": 337,\n  \"ra\": 559,\n  \"ra</w>\": 1735,\n  \"raa</w>\": 44344,\n  \"rab\": 14816,\n  \"rab</w>\": 33224,\n  \"rabb\": 6875,\n  \"rabbi</w>\": 20959,\n  \"rabbit</w>\": 10274,\n  \"rabbits</w>\": 27028,\n  \"rabhu</w>\": 25806,\n  \"rable</w>\": 10182,\n  \"rac\": 1773,\n  \"rac</w>\": 30462,\n  \"raccoon</w>\": 29516,\n  \"race\": 10978,\n  \"race</w>\": 2471,\n  \"racec\": 18814,\n  \"racecourse</w>\": 25036,\n  \"raced</w>\": 36021,\n  \"racer</w>\": 16798,\n  \"racers</w>\": 33603,\n  \"races</w>\": 8605,\n  \"raceway</w>\": 24650,\n  \"rach\": 6876,\n  \"rach</w>\": 33429,\n  \"racha\": 21952,\n  \"racha</w>\": 35022,\n  \"rachael</w>\": 29095,\n  \"rachel\": 13511,\n  \"rachel</w>\": 8029,\n  \"raci\": 33381,\n  \"racial</w>\": 13801,\n  \"racially</w>\": 43577,\n  \"racing\": 23306,\n  \"racing</w>\": 3699,\n  \"racism</w>\": 11276,\n  \"racist</w>\": 9684,\n  \"racists</w>\": 41777,\n  \"rack\": 24600,\n  \"rack</w>\": 12034,\n  \"racket</w>\": 37691,\n  \"racks</w>\": 21191,\n  \"rad\": 4473,\n  \"rad</w>\": 8238,\n  \"rada</w>\": 30437,\n  \"radar</w>\": 9672,\n  \"radcliffe</w>\": 33096,\n  \"rade\": 44494,\n  \"rade</w>\": 17911,\n  \"rader</w>\": 45002,\n  \"radford</w>\": 45800,\n  \"radha</w>\": 43122,\n  \"radi\": 5772,\n  \"radial</w>\": 42028,\n  \"radiance</w>\": 45670,\n  \"radiant</w>\": 25614,\n  \"radiation</w>\": 18210,\n  \"radiator</w>\": 39372,\n  \"radic\": 18082,\n  \"radical</w>\": 13712,\n  \"radicals</w>\": 45903,\n  \"radio\": 7176,\n  \"radio</w>\": 2638,\n  \"radioactive</w>\": 34704,\n  \"radiodisney</w>\": 36483,\n  \"radiohead</w>\": 39472,\n  \"radiology</w>\": 29684,\n  \"radios</w>\": 43669,\n  \"radish</w>\": 37789,\n  \"radius</w>\": 37570,\n  \"rado</w>\": 29784,\n  \"rae\": 21646,\n  \"rae</w>\": 15051,\n  \"rael</w>\": 45390,\n  \"raer</w>\": 44561,\n  \"raf\": 11495,\n  \"raf</w>\": 11490,\n  \"rafa\": 14352,\n  \"rafa</w>\": 24850,\n  \"rafael\": 38221,\n  \"rafael</w>\": 19216,\n  \"rafaelnadal</w>\": 49219,\n  \"raff\": 34900,\n  \"raffic</w>\": 32928,\n  \"raffle</w>\": 13752,\n  \"raffles</w>\": 43489,\n  \"rafi\": 35304,\n  \"raft</w>\": 9233,\n  \"rafting</w>\": 36309,\n  \"rag\": 13958,\n  \"rag</w>\": 20687,\n  \"rage</w>\": 8593,\n  \"rages</w>\": 34253,\n  \"ragh\": 35642,\n  \"ragha\": 40972,\n  \"raging</w>\": 25015,\n  \"ragn\": 24125,\n  \"ragnar\": 34385,\n  \"ragnarok</w>\": 41856,\n  \"ragon</w>\": 34768,\n  \"rags</w>\": 47838,\n  \"rah\": 12277,\n  \"rah</w>\": 8766,\n  \"raheem</w>\": 43317,\n  \"rahim</w>\": 24152,\n  \"rahman</w>\": 19680,\n  \"rahu\": 13129,\n  \"rahul\": 37239,\n  \"rahul</w>\": 17440,\n  \"rahulg\": 27510,\n  \"rahulgandhi</w>\": 28293,\n  \"rai\": 9165,\n  \"rai</w>\": 9638,\n  \"raid</w>\": 6877,\n  \"raided</w>\": 43417,\n  \"raider\": 27368,\n  \"raider</w>\": 21455,\n  \"raidernation</w>\": 47901,\n  \"raiders</w>\": 11817,\n  \"raids</w>\": 26655,\n  \"rail\": 4573,\n  \"rail</w>\": 6879,\n  \"raila</w>\": 47273,\n  \"railminindia</w>\": 35557,\n  \"railroad</w>\": 17080,\n  \"rails</w>\": 23427,\n  \"railway\": 27614,\n  \"railway</w>\": 7856,\n  \"railwayana</w>\": 46750,\n  \"railways</w>\": 20765,\n  \"raim\": 45785,\n  \"rain\": 3128,\n  \"rain</w>\": 2443,\n  \"raina</w>\": 30564,\n  \"rainbow\": 24562,\n  \"rainbow</w>\": 6286,\n  \"rainbows</w>\": 30483,\n  \"raine\": 49038,\n  \"raine</w>\": 6871,\n  \"rained</w>\": 32310,\n  \"rainf\": 15024,\n  \"rainfall</w>\": 15350,\n  \"rainforest</w>\": 22823,\n  \"rainier</w>\": 37850,\n  \"raining</w>\": 13964,\n  \"rains</w>\": 14272,\n  \"rainy</w>\": 10222,\n  \"rais\": 14729,\n  \"raise\": 24249,\n  \"raise</w>\": 5078,\n  \"raised</w>\": 6027,\n  \"raiser</w>\": 33555,\n  \"raises</w>\": 13297,\n  \"raisethe\": 47109,\n  \"raisin</w>\": 36864,\n  \"raising</w>\": 6883,\n  \"raj\": 5958,\n  \"raj</w>\": 10813,\n  \"raja\": 46069,\n  \"raja</w>\": 19150,\n  \"rajan</w>\": 46595,\n  \"rajas\": 16185,\n  \"rajasthan</w>\": 18017,\n  \"raje\": 21899,\n  \"rajesh</w>\": 43602,\n  \"raji\": 27569,\n  \"rajini\": 29600,\n  \"rajini</w>\": 40622,\n  \"rajinikanth</w>\": 32922,\n  \"rajiv</w>\": 40197,\n  \"rajkumar</w>\": 49304,\n  \"rajput</w>\": 47572,\n  \"raju</w>\": 47029,\n  \"rak\": 13523,\n  \"rak</w>\": 26287,\n  \"rake\": 26825,\n  \"rake</w>\": 32712,\n  \"rakesh</w>\": 41083,\n  \"ral\": 8062,\n  \"ral</w>\": 1406,\n  \"rale\": 14192,\n  \"raleigh</w>\": 18207,\n  \"rall\": 23249,\n  \"rallies</w>\": 25230,\n  \"rally\": 18882,\n  \"rally</w>\": 5041,\n  \"rallying</w>\": 36836,\n  \"ralph\": 25290,\n  \"ralph</w>\": 12234,\n  \"ram\": 1976,\n  \"ram</w>\": 2007,\n  \"rama</w>\": 22112,\n  \"ramad\": 12736,\n  \"ramadan</w>\": 15547,\n  \"ramadhan</w>\": 47415,\n  \"raman</w>\": 39816,\n  \"ramapho\": 43963,\n  \"ramaphosa</w>\": 44993,\n  \"ramatta</w>\": 49112,\n  \"rambo</w>\": 41855,\n  \"ramcharan</w>\": 45275,\n  \"rame</w>\": 47745,\n  \"ramen</w>\": 18892,\n  \"ramesh\": 48640,\n  \"ramesh</w>\": 40186,\n  \"rami</w>\": 43016,\n  \"ramirez</w>\": 23877,\n  \"ramon</w>\": 27958,\n  \"ramone</w>\": 47201,\n  \"ramos</w>\": 21046,\n  \"ramp</w>\": 14271,\n  \"rampage</w>\": 32077,\n  \"rampant</w>\": 41985,\n  \"ramps</w>\": 35257,\n  \"rams</w>\": 10292,\n  \"ramsay</w>\": 26259,\n  \"ramsey</w>\": 19215,\n  \"ran\": 1433,\n  \"ran</w>\": 4031,\n  \"rana</w>\": 22143,\n  \"ranbir</w>\": 40881,\n  \"rance</w>\": 29034,\n  \"ranch\": 43955,\n  \"ranch</w>\": 10659,\n  \"rancho</w>\": 26258,\n  \"rand\": 5628,\n  \"rand</w>\": 18718,\n  \"randall</w>\": 23639,\n  \"rande</w>\": 21469,\n  \"randolph</w>\": 29899,\n  \"random\": 11396,\n  \"random</w>\": 6160,\n  \"randomly</w>\": 17272,\n  \"rands</w>\": 39153,\n  \"randy\": 29479,\n  \"randy</w>\": 13279,\n  \"rane</w>\": 28852,\n  \"rang\": 4043,\n  \"rang</w>\": 24377,\n  \"range\": 13627,\n  \"range</w>\": 3818,\n  \"ranger\": 31472,\n  \"ranger</w>\": 13593,\n  \"rangers</w>\": 7664,\n  \"ranges</w>\": 25685,\n  \"ranging</w>\": 25946,\n  \"rani\": 29264,\n  \"rani</w>\": 22631,\n  \"rank</w>\": 11501,\n  \"ranked</w>\": 8307,\n  \"rankin</w>\": 37539,\n  \"ranking</w>\": 12347,\n  \"rankings</w>\": 12596,\n  \"ranks</w>\": 14469,\n  \"rano</w>\": 18608,\n  \"rans</w>\": 46259,\n  \"ransom\": 28523,\n  \"ransom</w>\": 34646,\n  \"ransomware</w>\": 33815,\n  \"rant\": 46467,\n  \"rant</w>\": 9819,\n  \"rants</w>\": 34014,\n  \"ranveer\": 32402,\n  \"ranveer</w>\": 41482,\n  \"ranveerofficial</w>\": 42116,\n  \"rao</w>\": 16913,\n  \"rap\": 7773,\n  \"rap</w>\": 7348,\n  \"rape\": 46099,\n  \"rape</w>\": 10070,\n  \"raped</w>\": 23700,\n  \"rapha\": 22754,\n  \"raphael</w>\": 30091,\n  \"rapi\": 8610,\n  \"rapid\": 47697,\n  \"rapid</w>\": 12205,\n  \"rapidly</w>\": 16710,\n  \"rapids</w>\": 18848,\n  \"raping</w>\": 44926,\n  \"rapist</w>\": 33360,\n  \"rapp\": 19283,\n  \"rapper</w>\": 11860,\n  \"rappers</w>\": 30315,\n  \"rapping</w>\": 42864,\n  \"raps</w>\": 37887,\n  \"raptor</w>\": 26762,\n  \"raptors</w>\": 17035,\n  \"raq\": 39787,\n  \"raq</w>\": 43312,\n  \"raqqa</w>\": 47074,\n  \"raquel</w>\": 44338,\n  \"rar\": 26819,\n  \"rar</w>\": 24605,\n  \"rard</w>\": 21012,\n  \"rare\": 18992,\n  \"rare</w>\": 3865,\n  \"rarely</w>\": 17315,\n  \"rarest</w>\": 43237,\n  \"rarity</w>\": 45862,\n  \"ras\": 23492,\n  \"ras</w>\": 8224,\n  \"rasc\": 30085,\n  \"rascal</w>\": 43481,\n  \"rash\": 14917,\n  \"rash</w>\": 30608,\n  \"rashad</w>\": 46527,\n  \"rasheed</w>\": 41638,\n  \"rashi\": 19426,\n  \"rashid</w>\": 26757,\n  \"rasp\": 10487,\n  \"raspberries</w>\": 37742,\n  \"raspberry\": 40162,\n  \"raspberry</w>\": 13615,\n  \"raspberrypi</w>\": 43934,\n  \"rass</w>\": 45654,\n  \"rasta</w>\": 47002,\n  \"rat\": 3806,\n  \"rat</w>\": 8985,\n  \"rata</w>\": 28568,\n  \"ratchet</w>\": 25078,\n  \"rate</w>\": 5068,\n  \"rated</w>\": 8183,\n  \"rates</w>\": 6864,\n  \"rath\": 18268,\n  \"rath</w>\": 39772,\n  \"rather</w>\": 5252,\n  \"rati\": 11486,\n  \"rating</w>\": 10567,\n  \"ratings</w>\": 14176,\n  \"ratio</w>\": 15893,\n  \"ration\": 27002,\n  \"ration</w>\": 35662,\n  \"rational</w>\": 33086,\n  \"ratna</w>\": 49078,\n  \"ratri</w>\": 32288,\n  \"rats</w>\": 19043,\n  \"ratt\": 20737,\n  \"ratt</w>\": 34785,\n  \"rattle\": 40824,\n  \"rattle</w>\": 41839,\n  \"rau\": 27744,\n  \"raul</w>\": 30218,\n  \"raun\": 41169,\n  \"rav\": 14367,\n  \"rav</w>\": 23606,\n  \"rave\": 38784,\n  \"rave</w>\": 17601,\n  \"ravel</w>\": 27927,\n  \"raven\": 10269,\n  \"raven</w>\": 16803,\n  \"ravens</w>\": 17946,\n  \"ravi\": 22947,\n  \"ravi</w>\": 19538,\n  \"ravin\": 39099,\n  \"raving</w>\": 45807,\n  \"raviol\": 41104,\n  \"ravioli</w>\": 43460,\n  \"raw\": 10166,\n  \"raw</w>\": 6323,\n  \"rawlings</w>\": 40662,\n  \"rax</w>\": 38520,\n  \"ray\": 5312,\n  \"ray</w>\": 3077,\n  \"raya</w>\": 29991,\n  \"raymond</w>\": 16683,\n  \"rayn\": 47852,\n  \"rayon</w>\": 47900,\n  \"rays</w>\": 11064,\n  \"raz\": 9700,\n  \"raz</w>\": 19087,\n  \"raza</w>\": 37724,\n  \"razer</w>\": 33832,\n  \"razor\": 24934,\n  \"razor</w>\": 21300,\n  \"razz\": 43769,\n  \"rb\": 12740,\n  \"rb</w>\": 7477,\n  \"rbc</w>\": 37500,\n  \"rbi</w>\": 15687,\n  \"rbs</w>\": 29102,\n  \"rc\": 7575,\n  \"rc</w>\": 7457,\n  \"rca</w>\": 33942,\n  \"rcb</w>\": 45240,\n  \"rcmp</w>\": 31489,\n  \"rcn</w>\": 49370,\n  \"rctid</w>\": 49223,\n  \"rd\": 13501,\n  \"rd</w>\": 1973,\n  \"rda</w>\": 45755,\n  \"rdr</w>\": 44364,\n  \"rds</w>\": 32378,\n  \"re\": 515,\n  \"re</w>\": 810,\n  \"rea</w>\": 11521,\n  \"reach\": 4483,\n  \"reach</w>\": 4279,\n  \"reached</w>\": 6878,\n  \"reaches</w>\": 14462,\n  \"reaching</w>\": 11358,\n  \"react\": 36566,\n  \"react</w>\": 15065,\n  \"reacted</w>\": 42515,\n  \"reacting</w>\": 40595,\n  \"reaction</w>\": 7189,\n  \"reactions</w>\": 18438,\n  \"reactive</w>\": 42072,\n  \"reactjs</w>\": 46173,\n  \"reactor</w>\": 32037,\n  \"reacts</w>\": 23115,\n  \"read\": 933,\n  \"read</w>\": 1199,\n  \"reader</w>\": 9884,\n  \"readers</w>\": 10335,\n  \"readiness</w>\": 28131,\n  \"reading\": 17556,\n  \"reading</w>\": 2337,\n  \"readingfc</w>\": 47428,\n  \"readings</w>\": 23361,\n  \"reads</w>\": 6597,\n  \"ready\": 17351,\n  \"ready</w>\": 1112,\n  \"reagan</w>\": 17767,\n  \"real\": 2017,\n  \"real</w>\": 1532,\n  \"realdonaldtrump</w>\": 7025,\n  \"reale\": 5930,\n  \"realest</w>\": 45855,\n  \"realestate\": 32937,\n  \"realestate</w>\": 6569,\n  \"reali\": 4185,\n  \"realis</w>\": 38114,\n  \"realise</w>\": 14773,\n  \"realised</w>\": 17945,\n  \"realising</w>\": 39537,\n  \"realism</w>\": 20024,\n  \"realist</w>\": 30248,\n  \"realistic</w>\": 16157,\n  \"realities</w>\": 32443,\n  \"reality\": 46802,\n  \"reality</w>\": 5004,\n  \"realization</w>\": 40402,\n  \"realize</w>\": 7538,\n  \"realized</w>\": 10489,\n  \"realizes</w>\": 42918,\n  \"realizing</w>\": 23284,\n  \"reall\": 39686,\n  \"really\": 43249,\n  \"really</w>\": 1414,\n  \"realm</w>\": 23083,\n  \"realmadrid</w>\": 27866,\n  \"realms</w>\": 43033,\n  \"realness</w>\": 46761,\n  \"realtime\": 44002,\n  \"realtime</w>\": 38203,\n  \"realtor</w>\": 18038,\n  \"realtors</w>\": 31759,\n  \"realty</w>\": 20471,\n  \"ream\": 37242,\n  \"ream</w>\": 15219,\n  \"rean</w>\": 48477,\n  \"reap</w>\": 31334,\n  \"reaper</w>\": 29922,\n  \"rear\": 39652,\n  \"rear</w>\": 10223,\n  \"reas\": 9121,\n  \"reason\": 12882,\n  \"reason</w>\": 3893,\n  \"reasonable</w>\": 18558,\n  \"reasonably</w>\": 38589,\n  \"reasoning</w>\": 30341,\n  \"reasons</w>\": 5686,\n  \"reau</w>\": 32398,\n  \"reb\": 12370,\n  \"reb</w>\": 18796,\n  \"reba</w>\": 48543,\n  \"rebate</w>\": 43817,\n  \"rebe\": 25227,\n  \"rebec\": 10774,\n  \"rebecca</w>\": 12892,\n  \"rebel\": 8185,\n  \"rebel</w>\": 12248,\n  \"rebellion</w>\": 22170,\n  \"rebels</w>\": 13623,\n  \"rebirth</w>\": 33303,\n  \"reboot</w>\": 22385,\n  \"reborn</w>\": 30229,\n  \"reboun\": 43381,\n  \"rebound</w>\": 31280,\n  \"rebounds</w>\": 19190,\n  \"rebs</w>\": 28164,\n  \"rebu\": 43162,\n  \"rebuild</w>\": 20022,\n  \"rebuilding</w>\": 30880,\n  \"rebuilt</w>\": 33137,\n  \"rec\": 1020,\n  \"rec</w>\": 11243,\n  \"recall</w>\": 15151,\n  \"recalled</w>\": 32142,\n  \"recalling</w>\": 47855,\n  \"recalls</w>\": 24740,\n  \"recap\": 29816,\n  \"recap</w>\": 8337,\n  \"recaps</w>\": 47997,\n  \"recard</w>\": 35536,\n  \"rece\": 1890,\n  \"recei\": 2148,\n  \"receip\": 38503,\n  \"receipt</w>\": 30479,\n  \"receipts</w>\": 41181,\n  \"receive</w>\": 4800,\n  \"received</w>\": 4178,\n  \"receiver</w>\": 17659,\n  \"receivers</w>\": 45294,\n  \"receives</w>\": 10027,\n  \"receiving</w>\": 7252,\n  \"recent</w>\": 3969,\n  \"recently</w>\": 4482,\n  \"recep\": 17450,\n  \"reception</w>\": 8364,\n  \"receptions</w>\": 46881,\n  \"receptor</w>\": 41835,\n  \"recess</w>\": 38182,\n  \"recession</w>\": 27176,\n  \"recharge</w>\": 29396,\n  \"rechargeable</w>\": 37516,\n  \"reci\": 2037,\n  \"recipe\": 28923,\n  \"recipe</w>\": 4614,\n  \"recipeoftheday</w>\": 38727,\n  \"recipes</w>\": 9243,\n  \"recipi\": 10136,\n  \"recipient</w>\": 13703,\n  \"recipients</w>\": 18940,\n  \"recipro\": 41789,\n  \"recital</w>\": 23457,\n  \"recite</w>\": 48824,\n  \"reck\": 11715,\n  \"reckless</w>\": 26284,\n  \"reckon</w>\": 23854,\n  \"recl\": 42277,\n  \"reclaim</w>\": 35969,\n  \"reclaimed</w>\": 32648,\n  \"reco\": 2535,\n  \"reco</w>\": 46038,\n  \"recogn\": 6343,\n  \"recogni\": 5329,\n  \"recognise</w>\": 19824,\n  \"recognised</w>\": 20986,\n  \"recognising</w>\": 48423,\n  \"recognition</w>\": 9415,\n  \"recognizable</w>\": 47240,\n  \"recognize</w>\": 10905,\n  \"recognized</w>\": 9929,\n  \"recognizes</w>\": 26909,\n  \"recognizing</w>\": 19666,\n  \"recomm\": 4540,\n  \"recommend\": 11628,\n  \"recommend</w>\": 8942,\n  \"recommendation</w>\": 20118,\n  \"recommendations</w>\": 16516,\n  \"recommended</w>\": 11100,\n  \"recommending</w>\": 44301,\n  \"recommends</w>\": 22940,\n  \"recon\": 15371,\n  \"recon</w>\": 28996,\n  \"reconciliation</w>\": 26451,\n  \"reconstruction</w>\": 24955,\n  \"recor\": 1723,\n  \"record\": 21328,\n  \"record</w>\": 2717,\n  \"recorded</w>\": 9392,\n  \"recorder</w>\": 26747,\n  \"recording\": 48237,\n  \"recording</w>\": 6942,\n  \"recordings</w>\": 19715,\n  \"records</w>\": 4529,\n  \"recover</w>\": 16785,\n  \"recovered</w>\": 16444,\n  \"recovering</w>\": 19005,\n  \"recovers</w>\": 47935,\n  \"recovery</w>\": 6591,\n  \"recre\": 22148,\n  \"recreate</w>\": 29775,\n  \"recreated</w>\": 40888,\n  \"recreating</w>\": 48224,\n  \"recreation</w>\": 17331,\n  \"recreational</w>\": 24329,\n  \"recru\": 4745,\n  \"recruit\": 9011,\n  \"recruit</w>\": 15585,\n  \"recruited</w>\": 36518,\n  \"recruiter</w>\": 43120,\n  \"recruiters</w>\": 46542,\n  \"recruiting</w>\": 10533,\n  \"recruitment</w>\": 10541,\n  \"recruits</w>\": 22647,\n  \"recs</w>\": 33069,\n  \"rectan\": 43041,\n  \"rectangular</w>\": 43321,\n  \"rector</w>\": 41585,\n  \"recu\": 26798,\n  \"recur\": 19983,\n  \"recurring</w>\": 35912,\n  \"recy\": 6790,\n  \"recycla\": 40659,\n  \"recyclable</w>\": 48907,\n  \"recycle</w>\": 19366,\n  \"recycled</w>\": 16829,\n  \"recycling</w>\": 12566,\n  \"red\": 1893,\n  \"red</w>\": 736,\n  \"redbubble</w>\": 46137,\n  \"redbull\": 29483,\n  \"redbull</w>\": 29219,\n  \"redcarpet</w>\": 32259,\n  \"redcross</w>\": 30659,\n  \"redd\": 22149,\n  \"redd</w>\": 40618,\n  \"redding</w>\": 41061,\n  \"reddish</w>\": 43383,\n  \"reddit</w>\": 15226,\n  \"reddy</w>\": 23028,\n  \"rede\": 10913,\n  \"redeem</w>\": 37449,\n  \"redefining</w>\": 46352,\n  \"redemption</w>\": 20233,\n  \"redesign</w>\": 24188,\n  \"redesigned</w>\": 33111,\n  \"redevelopment</w>\": 30322,\n  \"redhead</w>\": 36267,\n  \"redi\": 7976,\n  \"redman</w>\": 44753,\n  \"redmond</w>\": 39627,\n  \"rednation\": 28180,\n  \"rednationrising</w>\": 28262,\n  \"redneck</w>\": 39105,\n  \"redness</w>\": 22626,\n  \"redo</w>\": 42524,\n  \"redon\": 48506,\n  \"redro\": 37722,\n  \"reds</w>\": 11221,\n  \"redskins</w>\": 19023,\n  \"redsox</w>\": 19144,\n  \"reduc\": 5015,\n  \"reduce</w>\": 6604,\n  \"reduced</w>\": 10821,\n  \"reduces</w>\": 20539,\n  \"reducing</w>\": 13836,\n  \"reduction</w>\": 12219,\n  \"reductions</w>\": 48263,\n  \"redux</w>\": 43014,\n  \"redvelvet</w>\": 41845,\n  \"redwings</w>\": 31058,\n  \"redwood</w>\": 31748,\n  \"ree\": 9282,\n  \"ree</w>\": 5813,\n  \"reebok</w>\": 26734,\n  \"reece</w>\": 30457,\n  \"reed\": 26209,\n  \"reed</w>\": 10435,\n  \"reedus</w>\": 32865,\n  \"reef\": 46557,\n  \"reef</w>\": 15624,\n  \"reefs</w>\": 34459,\n  \"reel\": 34467,\n  \"reel</w>\": 17166,\n  \"reels</w>\": 48127,\n  \"reem</w>\": 48891,\n  \"reen\": 21638,\n  \"reen</w>\": 23679,\n  \"rees</w>\": 18314,\n  \"reese</w>\": 20929,\n  \"reeves</w>\": 23060,\n  \"ref\": 4067,\n  \"ref</w>\": 9591,\n  \"refe\": 5624,\n  \"refer\": 18425,\n  \"refer</w>\": 22325,\n  \"referee</w>\": 20398,\n  \"referees</w>\": 45583,\n  \"referen\": 13535,\n  \"reference</w>\": 10214,\n  \"references</w>\": 24009,\n  \"referendum</w>\": 16732,\n  \"referr\": 47784,\n  \"referral</w>\": 30219,\n  \"referred</w>\": 22969,\n  \"referring</w>\": 29797,\n  \"refers</w>\": 30069,\n  \"refill</w>\": 37859,\n  \"refin\": 13455,\n  \"refined</w>\": 26098,\n  \"refinery</w>\": 31393,\n  \"refining</w>\": 48406,\n  \"reflec\": 4608,\n  \"reflect</w>\": 13373,\n  \"reflected</w>\": 28732,\n  \"reflecting</w>\": 19700,\n  \"reflection</w>\": 11884,\n  \"reflections</w>\": 16647,\n  \"reflective</w>\": 27008,\n  \"reflects</w>\": 15821,\n  \"reflex\": 45756,\n  \"reflex</w>\": 36050,\n  \"reform\": 45678,\n  \"reform</w>\": 8875,\n  \"reformation</w>\": 45119,\n  \"reformed</w>\": 40880,\n  \"reforms</w>\": 19274,\n  \"refr\": 34850,\n  \"refre\": 11995,\n  \"refresh\": 17836,\n  \"refresh</w>\": 23288,\n  \"refreshed</w>\": 35925,\n  \"refresher</w>\": 41481,\n  \"refreshing</w>\": 14159,\n  \"refreshments</w>\": 31127,\n  \"refriger\": 21076,\n  \"refrigerator</w>\": 36662,\n  \"refs</w>\": 35595,\n  \"refu\": 3545,\n  \"refuge\": 5638,\n  \"refuge</w>\": 17432,\n  \"refugee</w>\": 11556,\n  \"refugees\": 42687,\n  \"refugees</w>\": 8316,\n  \"refund</w>\": 28899,\n  \"refur\": 15519,\n  \"refurbi\": 18259,\n  \"refurbished</w>\": 26190,\n  \"refurbishment</w>\": 35803,\n  \"refusal</w>\": 46547,\n  \"refuse</w>\": 16412,\n  \"refused</w>\": 17190,\n  \"refuses</w>\": 20085,\n  \"refusing</w>\": 26704,\n  \"reg\": 5472,\n  \"reg</w>\": 12353,\n  \"regain</w>\": 37510,\n  \"regal\": 31512,\n  \"regal</w>\": 25028,\n  \"regan</w>\": 34062,\n  \"regar\": 5881,\n  \"regard</w>\": 21801,\n  \"regarded</w>\": 32017,\n  \"regarding</w>\": 8493,\n  \"regardless</w>\": 17220,\n  \"regards</w>\": 23079,\n  \"regatta</w>\": 26316,\n  \"regen\": 46545,\n  \"regency</w>\": 29341,\n  \"regeneration</w>\": 29257,\n  \"regent</w>\": 30455,\n  \"regents</w>\": 46710,\n  \"regg\": 12757,\n  \"reggae\": 37821,\n  \"reggae</w>\": 15214,\n  \"reggie</w>\": 21872,\n  \"regi\": 1608,\n  \"regime</w>\": 11378,\n  \"regiment</w>\": 18603,\n  \"regin\": 23287,\n  \"regina</w>\": 16841,\n  \"region\": 16542,\n  \"region</w>\": 4341,\n  \"regional</w>\": 5552,\n  \"regionals</w>\": 26043,\n  \"regions</w>\": 14530,\n  \"regis</w>\": 28094,\n  \"register</w>\": 3967,\n  \"registered</w>\": 10254,\n  \"registering</w>\": 33510,\n  \"registr\": 29193,\n  \"registration</w>\": 7302,\n  \"registrations</w>\": 38423,\n  \"registry</w>\": 30020,\n  \"rego</w>\": 47351,\n  \"regram</w>\": 30329,\n  \"regrann</w>\": 48802,\n  \"regre\": 8627,\n  \"regression</w>\": 43733,\n  \"regret</w>\": 14374,\n  \"regrets</w>\": 23231,\n  \"regu\": 3411,\n  \"regui</w>\": 46722,\n  \"regul\": 11847,\n  \"regular\": 14882,\n  \"regular</w>\": 6307,\n  \"regularly</w>\": 17263,\n  \"regulat\": 14575,\n  \"regulate</w>\": 33494,\n  \"regulated</w>\": 31384,\n  \"regulating</w>\": 48156,\n  \"regulation</w>\": 14267,\n  \"regulations</w>\": 16654,\n  \"regulator</w>\": 30364,\n  \"regulators</w>\": 35837,\n  \"regulatory</w>\": 17717,\n  \"reh\": 21492,\n  \"reha\": 10193,\n  \"rehab</w>\": 16973,\n  \"rehabil\": 17930,\n  \"rehabilitation</w>\": 21042,\n  \"rehear\": 7273,\n  \"rehearsal</w>\": 11482,\n  \"rehearsals</w>\": 17977,\n  \"rehearsing</w>\": 23125,\n  \"rehman</w>\": 39206,\n  \"rei\": 15343,\n  \"rei</w>\": 26033,\n  \"reic\": 41230,\n  \"reich\": 48589,\n  \"reich</w>\": 28929,\n  \"reid\": 45125,\n  \"reid</w>\": 11744,\n  \"reig\": 13092,\n  \"reign\": 41419,\n  \"reign</w>\": 14827,\n  \"reigning</w>\": 28409,\n  \"reigns</w>\": 21217,\n  \"reiki</w>\": 46960,\n  \"reilly</w>\": 28120,\n  \"reim\": 35421,\n  \"reimagined</w>\": 46799,\n  \"reimbur\": 39857,\n  \"rein\": 9240,\n  \"rein</w>\": 45009,\n  \"reina</w>\": 43847,\n  \"reinde\": 23810,\n  \"reindeer</w>\": 25072,\n  \"reinfor\": 48161,\n  \"reinforced</w>\": 41909,\n  \"reinst\": 33969,\n  \"reinvent</w>\": 38171,\n  \"reissue</w>\": 34042,\n  \"reiter\": 35394,\n  \"rejec\": 9958,\n  \"reject</w>\": 22435,\n  \"rejected</w>\": 17505,\n  \"rejection</w>\": 32264,\n  \"rejects</w>\": 23155,\n  \"rejo\": 20150,\n  \"rejoice</w>\": 24712,\n  \"rejuven\": 26332,\n  \"rek\": 47542,\n  \"rek</w>\": 19201,\n  \"rel\": 1825,\n  \"rel</w>\": 5233,\n  \"rela\": 4362,\n  \"reland</w>\": 15220,\n  \"relat\": 27192,\n  \"relatable</w>\": 31010,\n  \"relate</w>\": 17520,\n  \"related</w>\": 5880,\n  \"relates</w>\": 36064,\n  \"relating</w>\": 27373,\n  \"relation\": 4561,\n  \"relation</w>\": 16207,\n  \"relations</w>\": 10100,\n  \"relationship\": 47239,\n  \"relationship</w>\": 5837,\n  \"relationships</w>\": 10610,\n  \"relative</w>\": 17265,\n  \"relatively</w>\": 18351,\n  \"relatives</w>\": 21981,\n  \"relax\": 6777,\n  \"relax</w>\": 9035,\n  \"relaxation</w>\": 22194,\n  \"relaxed</w>\": 18999,\n  \"relaxing</w>\": 10256,\n  \"relay</w>\": 12403,\n  \"relays</w>\": 28404,\n  \"rele\": 1602,\n  \"release\": 29100,\n  \"release</w>\": 2706,\n  \"released</w>\": 3410,\n  \"releases</w>\": 7393,\n  \"releasethe\": 44008,\n  \"releasing</w>\": 10321,\n  \"releg\": 23378,\n  \"relegated</w>\": 45884,\n  \"relegation</w>\": 35040,\n  \"relent\": 22213,\n  \"relentless</w>\": 27207,\n  \"relessly</w>\": 33927,\n  \"relev\": 9349,\n  \"relevance</w>\": 31400,\n  \"relevant</w>\": 10568,\n  \"reli\": 2674,\n  \"reliability</w>\": 27220,\n  \"reliable</w>\": 13714,\n  \"reliance</w>\": 27727,\n  \"relic</w>\": 27802,\n  \"relics</w>\": 43208,\n  \"relief</w>\": 7518,\n  \"relies</w>\": 41579,\n  \"relieve</w>\": 28623,\n  \"relieved</w>\": 36597,\n  \"religi\": 4940,\n  \"religion</w>\": 8803,\n  \"religions</w>\": 31189,\n  \"religious</w>\": 8289,\n  \"relish</w>\": 35550,\n  \"relive</w>\": 23939,\n  \"reliving</w>\": 47558,\n  \"rell\": 28802,\n  \"rell</w>\": 7127,\n  \"rella</w>\": 9952,\n  \"relle</w>\": 31390,\n  \"reloaded</w>\": 38908,\n  \"relocated</w>\": 46791,\n  \"relocation</w>\": 39198,\n  \"rels</w>\": 23320,\n  \"relu\": 32058,\n  \"reluct\": 32549,\n  \"reluctant</w>\": 45552,\n  \"rely</w>\": 4158,\n  \"relying</w>\": 42168,\n  \"rem\": 15098,\n  \"rem</w>\": 21637,\n  \"rema\": 4569,\n  \"remain\": 29144,\n  \"remain</w>\": 6415,\n  \"remainder</w>\": 41672,\n  \"remained</w>\": 23714,\n  \"remaining</w>\": 11392,\n  \"remains</w>\": 6807,\n  \"remake</w>\": 16234,\n  \"remark\": 11136,\n  \"remarkable</w>\": 12404,\n  \"remarkably</w>\": 39087,\n  \"remarks</w>\": 15001,\n  \"remastered</w>\": 24932,\n  \"rematch</w>\": 26473,\n  \"rembrandt</w>\": 45972,\n  \"reme\": 20071,\n  \"remedi\": 18442,\n  \"remedies</w>\": 25581,\n  \"remedy</w>\": 25794,\n  \"remem\": 7966,\n  \"rememb\": 7062,\n  \"remember\": 22045,\n  \"remember</w>\": 2195,\n  \"remembered</w>\": 11763,\n  \"remembering</w>\": 8135,\n  \"remembers</w>\": 12551,\n  \"remembrance\": 40321,\n  \"remembrance</w>\": 15860,\n  \"remembranceday</w>\": 48333,\n  \"rement</w>\": 7173,\n  \"rements</w>\": 12667,\n  \"remi</w>\": 41693,\n  \"remin\": 3216,\n  \"remind</w>\": 9868,\n  \"reminded</w>\": 12309,\n  \"reminder</w>\": 5565,\n  \"reminders</w>\": 34121,\n  \"reminding</w>\": 19976,\n  \"reminds</w>\": 8303,\n  \"remington</w>\": 43527,\n  \"reminis\": 17723,\n  \"reminiscent</w>\": 41704,\n  \"reminiscing</w>\": 32552,\n  \"remix</w>\": 8519,\n  \"remixes</w>\": 31011,\n  \"remn\": 29127,\n  \"remnants</w>\": 39032,\n  \"remo\": 4064,\n  \"remo</w>\": 33259,\n  \"remodel\": 34159,\n  \"remodel</w>\": 37495,\n  \"remodeling</w>\": 41432,\n  \"remote\": 47163,\n  \"remote</w>\": 9687,\n  \"remotely</w>\": 32375,\n  \"removable</w>\": 44095,\n  \"removal</w>\": 13679,\n  \"remove</w>\": 9709,\n  \"removed</w>\": 10289,\n  \"remover</w>\": 44267,\n  \"removes</w>\": 29018,\n  \"removing</w>\": 18504,\n  \"remy</w>\": 30434,\n  \"ren\": 737,\n  \"ren</w>\": 2596,\n  \"rena</w>\": 12591,\n  \"renais\": 15409,\n  \"renaissance</w>\": 16007,\n  \"renal</w>\": 36096,\n  \"renamed</w>\": 31535,\n  \"renault</w>\": 17600,\n  \"rence\": 19245,\n  \"rence</w>\": 1553,\n  \"rences</w>\": 8545,\n  \"rend\": 33932,\n  \"rend</w>\": 22851,\n  \"render\": 39752,\n  \"render</w>\": 13024,\n  \"rendered</w>\": 23652,\n  \"rendering</w>\": 21339,\n  \"renders</w>\": 39419,\n  \"rendez\": 43293,\n  \"rendezvous</w>\": 45644,\n  \"rendition</w>\": 28891,\n  \"rendon</w>\": 46272,\n  \"rendous</w>\": 49403,\n  \"rends</w>\": 38842,\n  \"rene\": 15438,\n  \"rene</w>\": 12597,\n  \"renee</w>\": 23480,\n  \"reneg\": 29909,\n  \"renegade</w>\": 41229,\n  \"renergy</w>\": 37151,\n  \"renew\": 6645,\n  \"renew</w>\": 22015,\n  \"renewable\": 31269,\n  \"renewable</w>\": 15941,\n  \"renewableenergy</w>\": 33357,\n  \"renewables</w>\": 21619,\n  \"renewal</w>\": 21270,\n  \"renewed</w>\": 20524,\n  \"renfre\": 45043,\n  \"reng</w>\": 36795,\n  \"reno\": 11520,\n  \"reno</w>\": 12831,\n  \"renov\": 9984,\n  \"renovated</w>\": 23839,\n  \"renovation</w>\": 17121,\n  \"renovations</w>\": 31311,\n  \"renowned</w>\": 14727,\n  \"rens</w>\": 18183,\n  \"renshaw</w>\": 44445,\n  \"rent\": 17377,\n  \"rent</w>\": 1609,\n  \"rental</w>\": 12193,\n  \"rentals</w>\": 24105,\n  \"rented</w>\": 35932,\n  \"rential</w>\": 31692,\n  \"renting</w>\": 37662,\n  \"rently</w>\": 2615,\n  \"rents</w>\": 31109,\n  \"reo\": 15963,\n  \"reo</w>\": 26854,\n  \"reon</w>\": 15761,\n  \"reopen</w>\": 26883,\n  \"reopened</w>\": 32868,\n  \"reopening</w>\": 36663,\n  \"reopens</w>\": 40644,\n  \"rep\": 4229,\n  \"rep</w>\": 6487,\n  \"repair</w>\": 8419,\n  \"repaired</w>\": 32953,\n  \"repairing</w>\": 38534,\n  \"repairs</w>\": 16297,\n  \"repar\": 34065,\n  \"repe\": 5785,\n  \"repeal\": 42622,\n  \"repeal</w>\": 23938,\n  \"repeat</w>\": 10192,\n  \"repeated</w>\": 27904,\n  \"repeatedly</w>\": 26630,\n  \"repeating</w>\": 33834,\n  \"repeats</w>\": 39158,\n  \"repell\": 46235,\n  \"repent\": 47261,\n  \"reper\": 29085,\n  \"repet\": 38533,\n  \"repl\": 13047,\n  \"replac\": 6069,\n  \"replace</w>\": 9466,\n  \"replaceable</w>\": 47762,\n  \"replaced</w>\": 13200,\n  \"replacement</w>\": 10835,\n  \"replaces</w>\": 27781,\n  \"replacing</w>\": 18647,\n  \"replay</w>\": 16875,\n  \"repleni\": 44839,\n  \"replic\": 21651,\n  \"replica</w>\": 18125,\n  \"replied</w>\": 24238,\n  \"replies</w>\": 18808,\n  \"reply</w>\": 8965,\n  \"replying</w>\": 47599,\n  \"repor\": 2628,\n  \"report</w>\": 2417,\n  \"reported</w>\": 7598,\n  \"reportedly</w>\": 10953,\n  \"reporter</w>\": 11019,\n  \"reporters</w>\": 18454,\n  \"reporting</w>\": 9218,\n  \"reports</w>\": 4908,\n  \"reposit\": 41276,\n  \"repository</w>\": 46977,\n  \"repost\": 33147,\n  \"repost</w>\": 7217,\n  \"repostapp</w>\": 38388,\n  \"reposting</w>\": 20223,\n  \"reppin</w>\": 19163,\n  \"repping</w>\": 22574,\n  \"repre\": 3397,\n  \"represent\": 8293,\n  \"represent</w>\": 8406,\n  \"representation</w>\": 13520,\n  \"representative</w>\": 13175,\n  \"representatives</w>\": 15591,\n  \"represented</w>\": 12299,\n  \"representing</w>\": 7561,\n  \"represents</w>\": 14433,\n  \"repri\": 31854,\n  \"reproduction</w>\": 35714,\n  \"reproductive</w>\": 25522,\n  \"reps</w>\": 14265,\n  \"reptile</w>\": 36938,\n  \"reptiles</w>\": 38679,\n  \"republic\": 6376,\n  \"republic</w>\": 7185,\n  \"republican</w>\": 9842,\n  \"republicans</w>\": 12384,\n  \"repur\": 41852,\n  \"req</w>\": 42411,\n  \"requ\": 10664,\n  \"reque\": 9539,\n  \"request</w>\": 7813,\n  \"requested</w>\": 16199,\n  \"requesting</w>\": 33245,\n  \"requests</w>\": 17087,\n  \"requi\": 4863,\n  \"requiem</w>\": 40316,\n  \"require</w>\": 14437,\n  \"required</w>\": 8500,\n  \"requirement</w>\": 27146,\n  \"requirements</w>\": 12860,\n  \"requires</w>\": 13396,\n  \"requiring</w>\": 33425,\n  \"requis\": 42602,\n  \"rer\": 41295,\n  \"rer</w>\": 3407,\n  \"rera</w>\": 14301,\n  \"rero</w>\": 21860,\n  \"rers</w>\": 18869,\n  \"res\": 4466,\n  \"res</w>\": 934,\n  \"resc\": 3956,\n  \"rescheduled</w>\": 43553,\n  \"rescu\": 8618,\n  \"rescue\": 28567,\n  \"rescue</w>\": 5718,\n  \"rescued</w>\": 11919,\n  \"rescues</w>\": 32439,\n  \"rescuing</w>\": 43770,\n  \"rese\": 13000,\n  \"resear\": 6090,\n  \"research\": 25694,\n  \"research</w>\": 2379,\n  \"researched</w>\": 42733,\n  \"researcher</w>\": 18334,\n  \"researchers</w>\": 9522,\n  \"researching</w>\": 24544,\n  \"reseller</w>\": 35391,\n  \"resemb\": 16916,\n  \"resemblance</w>\": 26856,\n  \"resemble</w>\": 37230,\n  \"resembles</w>\": 35417,\n  \"reser\": 16420,\n  \"reserv\": 11906,\n  \"reservation</w>\": 20289,\n  \"reservations</w>\": 19307,\n  \"reserve</w>\": 6911,\n  \"reserved</w>\": 19796,\n  \"reserves</w>\": 19705,\n  \"reservoir</w>\": 20574,\n  \"reset</w>\": 26250,\n  \"resh</w>\": 47432,\n  \"reshi</w>\": 39435,\n  \"resi\": 2152,\n  \"residen\": 22311,\n  \"residence</w>\": 11672,\n  \"residences</w>\": 38855,\n  \"residency</w>\": 18545,\n  \"resident</w>\": 9016,\n  \"residente\": 44637,\n  \"residentevil</w>\": 48393,\n  \"residential</w>\": 11002,\n  \"residents</w>\": 6008,\n  \"resign</w>\": 23584,\n  \"resignation</w>\": 24779,\n  \"resigned</w>\": 31014,\n  \"resigns</w>\": 29738,\n  \"resil\": 10932,\n  \"resili\": 39212,\n  \"resilience</w>\": 15271,\n  \"resilient</w>\": 24694,\n  \"resin</w>\": 24156,\n  \"resist\": 37345,\n  \"resist</w>\": 9587,\n  \"resistance</w>\": 7392,\n  \"resistant</w>\": 17542,\n  \"resisting</w>\": 43679,\n  \"resolution</w>\": 9977,\n  \"resolutions</w>\": 26816,\n  \"resolve</w>\": 20787,\n  \"resolved</w>\": 28807,\n  \"reson\": 18092,\n  \"resonance</w>\": 42310,\n  \"resort</w>\": 6594,\n  \"resorts</w>\": 18839,\n  \"resource\": 43729,\n  \"resource</w>\": 9760,\n  \"resources</w>\": 6723,\n  \"respec\": 7466,\n  \"respect\": 31411,\n  \"respect</w>\": 4916,\n  \"respected</w>\": 19126,\n  \"respectful</w>\": 24379,\n  \"respecting</w>\": 36172,\n  \"respective</w>\": 25817,\n  \"respectively</w>\": 28794,\n  \"respects</w>\": 23553,\n  \"respir\": 20771,\n  \"respiratory</w>\": 24483,\n  \"respon\": 2421,\n  \"respond</w>\": 12355,\n  \"responded</w>\": 21121,\n  \"respondents</w>\": 49253,\n  \"responders</w>\": 25155,\n  \"responding</w>\": 18037,\n  \"responds</w>\": 17436,\n  \"response</w>\": 5399,\n  \"responses</w>\": 19006,\n  \"responsi\": 5490,\n  \"responsibilities</w>\": 30375,\n  \"responsibility</w>\": 11272,\n  \"responsible</w>\": 8936,\n  \"responsibly</w>\": 33675,\n  \"responsive</w>\": 21544,\n  \"ress\": 34651,\n  \"ress</w>\": 13629,\n  \"resso</w>\": 15133,\n  \"rest\": 10974,\n  \"rest</w>\": 2539,\n  \"restart</w>\": 37378,\n  \"restaur\": 3775,\n  \"restaurant\": 41930,\n  \"restaurant</w>\": 4489,\n  \"restaurants</w>\": 11714,\n  \"rested</w>\": 46020,\n  \"resting</w>\": 18044,\n  \"restless</w>\": 36724,\n  \"restling</w>\": 30076,\n  \"resto\": 11118,\n  \"resto</w>\": 41666,\n  \"restock</w>\": 34060,\n  \"restocked</w>\": 36966,\n  \"restor\": 8984,\n  \"restoration</w>\": 11989,\n  \"restorative</w>\": 46509,\n  \"restore</w>\": 14008,\n  \"restored</w>\": 14238,\n  \"restoring</w>\": 24406,\n  \"restra\": 25424,\n  \"restric\": 11036,\n  \"restricted</w>\": 27197,\n  \"restriction</w>\": 44282,\n  \"restrictions</w>\": 19884,\n  \"restroom</w>\": 43423,\n  \"restructuring</w>\": 43260,\n  \"rests</w>\": 33775,\n  \"resu\": 10095,\n  \"resul\": 2655,\n  \"result</w>\": 5659,\n  \"resulted</w>\": 26449,\n  \"resulting</w>\": 24581,\n  \"results</w>\": 3790,\n  \"resume</w>\": 15077,\n  \"resumes</w>\": 30268,\n  \"resur\": 14865,\n  \"resurg\": 45962,\n  \"resurgence</w>\": 47692,\n  \"resurrec\": 18487,\n  \"resurrection</w>\": 25811,\n  \"resusc\": 47523,\n  \"ret\": 20500,\n  \"ret</w>\": 10048,\n  \"reta\": 20153,\n  \"retail\": 14910,\n  \"retail</w>\": 6455,\n  \"retailer</w>\": 22549,\n  \"retailers</w>\": 19418,\n  \"retain</w>\": 24430,\n  \"retained</w>\": 42737,\n  \"retaining</w>\": 35571,\n  \"retains</w>\": 42583,\n  \"retali\": 33101,\n  \"retar\": 29964,\n  \"retarded</w>\": 44111,\n  \"retention</w>\": 26247,\n  \"rethink</w>\": 29078,\n  \"rethinking</w>\": 42951,\n  \"reti\": 4721,\n  \"retin\": 31270,\n  \"retina</w>\": 36919,\n  \"retire</w>\": 18846,\n  \"retired</w>\": 11477,\n  \"retirement</w>\": 9205,\n  \"retires</w>\": 29060,\n  \"retiring</w>\": 21200,\n  \"retrac\": 32735,\n  \"retreat</w>\": 11210,\n  \"retri\": 16918,\n  \"retriever</w>\": 28394,\n  \"retro\": 6535,\n  \"retro</w>\": 7755,\n  \"retrogamer</w>\": 47220,\n  \"retrogaming</w>\": 11316,\n  \"retrospective</w>\": 27105,\n  \"rett\": 41082,\n  \"rett</w>\": 8425,\n  \"rette</w>\": 33066,\n  \"return\": 43042,\n  \"return</w>\": 3458,\n  \"returned</w>\": 10476,\n  \"returning</w>\": 9290,\n  \"returns</w>\": 5020,\n  \"retwee\": 48190,\n  \"retweet</w>\": 3195,\n  \"retweeted</w>\": 12705,\n  \"retweeting</w>\": 32345,\n  \"retweets</w>\": 10160,\n  \"rety</w>\": 41550,\n  \"reu\": 20255,\n  \"reu</w>\": 40371,\n  \"reuben</w>\": 40450,\n  \"reunion</w>\": 10247,\n  \"reunite</w>\": 26179,\n  \"reunited</w>\": 13516,\n  \"reusable</w>\": 30395,\n  \"reuse</w>\": 26535,\n  \"reut\": 15210,\n  \"reuters</w>\": 15569,\n  \"rev\": 8424,\n  \"rev</w>\": 11789,\n  \"revamp</w>\": 29819,\n  \"revamped</w>\": 36420,\n  \"revan</w>\": 45277,\n  \"reve\": 3115,\n  \"reveal</w>\": 8052,\n  \"revealed</w>\": 7171,\n  \"revealing</w>\": 21321,\n  \"reveals</w>\": 6621,\n  \"revel\": 14133,\n  \"revelation</w>\": 24053,\n  \"revelations</w>\": 36163,\n  \"reven\": 10171,\n  \"revenge</w>\": 12717,\n  \"revenue</w>\": 10637,\n  \"revenues</w>\": 33348,\n  \"rever\": 14829,\n  \"rever</w>\": 41913,\n  \"revere</w>\": 44187,\n  \"reverend</w>\": 34407,\n  \"revers\": 20726,\n  \"reversal</w>\": 33367,\n  \"reverse</w>\": 12812,\n  \"reversed</w>\": 42485,\n  \"reversi\": 31601,\n  \"reversible</w>\": 34212,\n  \"revi\": 8317,\n  \"review</w>\": 2268,\n  \"reviewed</w>\": 16678,\n  \"reviewer</w>\": 36409,\n  \"reviewers</w>\": 48195,\n  \"reviewing</w>\": 20458,\n  \"reviews</w>\": 7227,\n  \"revise</w>\": 46801,\n  \"revised</w>\": 22806,\n  \"revising</w>\": 46882,\n  \"revision</w>\": 20335,\n  \"revisit</w>\": 26568,\n  \"revisited</w>\": 34302,\n  \"revisiting</w>\": 33144,\n  \"revit\": 26367,\n  \"revitalization</w>\": 46923,\n  \"revival</w>\": 14142,\n  \"revive</w>\": 26450,\n  \"revived</w>\": 42912,\n  \"revo\": 28660,\n  \"revol\": 13447,\n  \"revolt</w>\": 31697,\n  \"revolu\": 4900,\n  \"revolution\": 17699,\n  \"revolution</w>\": 6644,\n  \"revolutionary</w>\": 14734,\n  \"revolver</w>\": 38747,\n  \"revolving</w>\": 47230,\n  \"revs</w>\": 49286,\n  \"revue</w>\": 43428,\n  \"rew</w>\": 37564,\n  \"rewar\": 15857,\n  \"reward</w>\": 11223,\n  \"rewarded</w>\": 27163,\n  \"rewarding</w>\": 23351,\n  \"rewards</w>\": 15235,\n  \"rewatch</w>\": 35610,\n  \"rewatching</w>\": 41287,\n  \"rewind</w>\": 26867,\n  \"rewrite</w>\": 45218,\n  \"rex\": 13002,\n  \"rex</w>\": 10904,\n  \"rexperience</w>\": 33924,\n  \"rey\": 9681,\n  \"rey</w>\": 4517,\n  \"reyes</w>\": 18255,\n  \"reykja\": 47571,\n  \"reyn\": 11998,\n  \"reynolds</w>\": 14309,\n  \"reys</w>\": 48284,\n  \"rez\": 27597,\n  \"rez</w>\": 15192,\n  \"reza</w>\": 35888,\n  \"rf\": 35529,\n  \"rf</w>\": 16368,\n  \"rfc</w>\": 19003,\n  \"rfid</w>\": 40204,\n  \"rg\": 33055,\n  \"rg</w>\": 14897,\n  \"rgb</w>\": 36128,\n  \"rgv</w>\": 33685,\n  \"rh\": 8745,\n  \"rh</w>\": 22404,\n  \"rha\": 19473,\n  \"rhapso\": 32532,\n  \"rhapsody</w>\": 35774,\n  \"rhe\": 9186,\n  \"rhea</w>\": 28612,\n  \"rhetor\": 24359,\n  \"rhetoric</w>\": 29985,\n  \"rhett</w>\": 42984,\n  \"rheu\": 42953,\n  \"rhi\": 21212,\n  \"rhin\": 12269,\n  \"rhine\": 22863,\n  \"rhine</w>\": 44833,\n  \"rhinestone</w>\": 30450,\n  \"rhino\": 41744,\n  \"rhino</w>\": 20056,\n  \"rhinos</w>\": 30671,\n  \"rho\": 7637,\n  \"rhode\": 39302,\n  \"rhode</w>\": 27907,\n  \"rhodes</w>\": 17785,\n  \"rhon\": 25882,\n  \"rhonda</w>\": 46100,\n  \"rhp</w>\": 27199,\n  \"rhs</w>\": 24551,\n  \"rhu\": 23897,\n  \"rhubarb</w>\": 30213,\n  \"rhy\": 7740,\n  \"rhyme</w>\": 37356,\n  \"rhymes</w>\": 33143,\n  \"rhys</w>\": 28647,\n  \"rhyth\": 27069,\n  \"rhythm</w>\": 16172,\n  \"rhythmic</w>\": 46386,\n  \"rhythms</w>\": 40872,\n  \"ri\": 553,\n  \"ri</w>\": 2574,\n  \"ria</w>\": 3650,\n  \"rial</w>\": 15200,\n  \"rian</w>\": 7788,\n  \"rib\": 44634,\n  \"rib</w>\": 18298,\n  \"riba</w>\": 44992,\n  \"ribb\": 10081,\n  \"ribbon</w>\": 12114,\n  \"ribbons</w>\": 35271,\n  \"ribe\": 46115,\n  \"ribs</w>\": 17519,\n  \"ric\": 920,\n  \"ric</w>\": 4798,\n  \"rica</w>\": 14230,\n  \"rical</w>\": 18109,\n  \"rican</w>\": 30958,\n  \"ricardo</w>\": 23140,\n  \"ricci\": 35783,\n  \"ricciardo</w>\": 49282,\n  \"rice\": 36362,\n  \"rice</w>\": 4741,\n  \"rich\": 5223,\n  \"rich</w>\": 4021,\n  \"richar\": 9350,\n  \"richard\": 9080,\n  \"richard</w>\": 4470,\n  \"richards</w>\": 11372,\n  \"richardson</w>\": 15984,\n  \"riche\": 23286,\n  \"richer</w>\": 34138,\n  \"riches</w>\": 37093,\n  \"richest</w>\": 25572,\n  \"richi\": 38934,\n  \"richie</w>\": 19797,\n  \"richland</w>\": 43079,\n  \"richmond\": 34143,\n  \"richmond</w>\": 11292,\n  \"richter</w>\": 37591,\n  \"rick\": 6237,\n  \"rick</w>\": 3064,\n  \"ricket\": 46161,\n  \"ricket</w>\": 23671,\n  \"ricks</w>\": 23111,\n  \"ricky\": 19188,\n  \"ricky</w>\": 12814,\n  \"rico\": 37962,\n  \"rico</w>\": 11362,\n  \"ricotta</w>\": 38473,\n  \"rics</w>\": 7353,\n  \"ricul\": 6980,\n  \"rid\": 18103,\n  \"rid</w>\": 9874,\n  \"ridd\": 21990,\n  \"ridden</w>\": 32025,\n  \"riddle</w>\": 31839,\n  \"ride\": 15816,\n  \"ride</w>\": 2994,\n  \"rider\": 31056,\n  \"rider</w>\": 9707,\n  \"riders</w>\": 10826,\n  \"rides</w>\": 11308,\n  \"ridg\": 42646,\n  \"ridge\": 16580,\n  \"ridge</w>\": 6352,\n  \"ridic\": 9624,\n  \"ridiculous</w>\": 12659,\n  \"ridiculously</w>\": 25661,\n  \"ridin</w>\": 47869,\n  \"riding</w>\": 6765,\n  \"ridley</w>\": 27883,\n  \"rie\": 14824,\n  \"rie</w>\": 5322,\n  \"ried</w>\": 7552,\n  \"riel</w>\": 26696,\n  \"rien</w>\": 35237,\n  \"rier\": 40714,\n  \"rier</w>\": 13336,\n  \"ries\": 28179,\n  \"ries</w>\": 3059,\n  \"riesling</w>\": 36372,\n  \"rif\": 7044,\n  \"riff</w>\": 30359,\n  \"rifle</w>\": 15354,\n  \"rifles</w>\": 25678,\n  \"rift</w>\": 26681,\n  \"rig\": 18462,\n  \"rig</w>\": 13871,\n  \"riga</w>\": 36626,\n  \"rigged</w>\": 35897,\n  \"rigging</w>\": 38160,\n  \"riggs</w>\": 40328,\n  \"righ\": 15391,\n  \"right\": 13341,\n  \"right</w>\": 1155,\n  \"righte\": 20762,\n  \"righteous</w>\": 28169,\n  \"righteousness</w>\": 42481,\n  \"rightful</w>\": 42601,\n  \"rightly</w>\": 42669,\n  \"rights</w>\": 3336,\n  \"rigid</w>\": 43138,\n  \"rigor\": 36788,\n  \"rigorous</w>\": 41654,\n  \"rigs</w>\": 42893,\n  \"rihanna</w>\": 13744,\n  \"rij\": 41097,\n  \"rik\": 31136,\n  \"rik</w>\": 27832,\n  \"rika</w>\": 28580,\n  \"ril\": 12270,\n  \"ril</w>\": 2388,\n  \"riley\": 35056,\n  \"riley</w>\": 12260,\n  \"rill</w>\": 23705,\n  \"rilla\": 43956,\n  \"rilla</w>\": 18685,\n  \"rim\": 28147,\n  \"rim</w>\": 12199,\n  \"rime</w>\": 27064,\n  \"rimin\": 11527,\n  \"rimo</w>\": 47817,\n  \"rims</w>\": 34327,\n  \"rin\": 5859,\n  \"rin</w>\": 11739,\n  \"rina</w>\": 12869,\n  \"rine</w>\": 24952,\n  \"ring\": 8318,\n  \"ring</w>\": 2540,\n  \"ringed</w>\": 44712,\n  \"ringer</w>\": 35761,\n  \"ringing</w>\": 26035,\n  \"ringo</w>\": 38845,\n  \"rings</w>\": 5751,\n  \"rington</w>\": 12455,\n  \"rink</w>\": 21497,\n  \"rinka</w>\": 47316,\n  \"rino</w>\": 47188,\n  \"rinse</w>\": 48320,\n  \"rio\": 15681,\n  \"rio</w>\": 5782,\n  \"rion\": 31623,\n  \"rion</w>\": 34046,\n  \"rios</w>\": 32814,\n  \"riot\": 32636,\n  \"riot</w>\": 14218,\n  \"riots</w>\": 24844,\n  \"rious</w>\": 6340,\n  \"rip\": 10353,\n  \"rip</w>\": 4243,\n  \"ripe</w>\": 22832,\n  \"ripley</w>\": 41589,\n  \"ripp\": 25276,\n  \"ripped</w>\": 17815,\n  \"ripper</w>\": 35347,\n  \"ripping</w>\": 29126,\n  \"ripple</w>\": 24825,\n  \"rips</w>\": 30182,\n  \"rir</w>\": 36792,\n  \"ris\": 6108,\n  \"ris</w>\": 1999,\n  \"rise\": 13641,\n  \"rise</w>\": 3151,\n  \"risen</w>\": 23653,\n  \"risers</w>\": 44983,\n  \"rises</w>\": 13362,\n  \"riseup</w>\": 35760,\n  \"rish\": 18378,\n  \"rish</w>\": 18927,\n  \"rishi\": 48434,\n  \"rising\": 30452,\n  \"rising</w>\": 5448,\n  \"risis</w>\": 37998,\n  \"risk\": 27967,\n  \"risk</w>\": 4213,\n  \"risking</w>\": 48155,\n  \"risks</w>\": 12474,\n  \"risky</w>\": 27630,\n  \"risotto</w>\": 31471,\n  \"rist</w>\": 40610,\n  \"rit\": 5156,\n  \"rit</w>\": 17333,\n  \"rita</w>\": 16178,\n  \"ritchie</w>\": 30997,\n  \"rite\": 39318,\n  \"rite</w>\": 18429,\n  \"rites</w>\": 36160,\n  \"rith\": 48169,\n  \"rith</w>\": 48850,\n  \"riti\": 32904,\n  \"rito</w>\": 19379,\n  \"ritos</w>\": 33507,\n  \"ritt</w>\": 26092,\n  \"ritter</w>\": 34854,\n  \"ritu\": 13391,\n  \"ritual</w>\": 19712,\n  \"rituals</w>\": 31145,\n  \"ritz\": 39151,\n  \"ritz</w>\": 25627,\n  \"rium</w>\": 33884,\n  \"riv\": 25113,\n  \"rival\": 13412,\n  \"rival</w>\": 15629,\n  \"rivalry</w>\": 19511,\n  \"rivals</w>\": 15135,\n  \"rive\": 27588,\n  \"rive</w>\": 34917,\n  \"river\": 5239,\n  \"river</w>\": 2473,\n  \"rivera</w>\": 18275,\n  \"riverdale</w>\": 28304,\n  \"riverfront</w>\": 44439,\n  \"rivers</w>\": 10723,\n  \"riverside</w>\": 15809,\n  \"riveting</w>\": 44024,\n  \"riviera</w>\": 25851,\n  \"rix\": 43407,\n  \"rix</w>\": 9483,\n  \"riya</w>\": 36908,\n  \"riyad\": 31564,\n  \"riyadh</w>\": 33577,\n  \"riz\": 18426,\n  \"riz</w>\": 35411,\n  \"rizal</w>\": 41555,\n  \"rizio</w>\": 40191,\n  \"rizz\": 34826,\n  \"rizzo</w>\": 49076,\n  \"rj\": 26016,\n  \"rj</w>\": 20949,\n  \"rk\": 38725,\n  \"rk</w>\": 21422,\n  \"rl\": 18041,\n  \"rl</w>\": 14590,\n  \"rlly</w>\": 43222,\n  \"rly</w>\": 25954,\n  \"rm\": 20202,\n  \"rm</w>\": 8431,\n  \"rmb</w>\": 49097,\n  \"rms</w>\": 40529,\n  \"rn\": 13206,\n  \"rn</w>\": 7666,\n  \"rna</w>\": 24566,\n  \"rnb</w>\": 31556,\n  \"rnc</w>\": 35309,\n  \"rnli</w>\": 29748,\n  \"ro\": 532,\n  \"ro</w>\": 2795,\n  \"roa\": 8313,\n  \"roach</w>\": 31073,\n  \"road\": 4370,\n  \"road</w>\": 1759,\n  \"roadhouse</w>\": 47891,\n  \"roadmap</w>\": 30111,\n  \"roads</w>\": 6189,\n  \"roadsafety</w>\": 39992,\n  \"roadshow</w>\": 21168,\n  \"roadside</w>\": 26928,\n  \"roadster</w>\": 28920,\n  \"roadto\": 24681,\n  \"roadtrip</w>\": 15094,\n  \"roadway</w>\": 42744,\n  \"roam</w>\": 34045,\n  \"roaming</w>\": 29240,\n  \"roano\": 34184,\n  \"roanoke</w>\": 36587,\n  \"roar\": 34193,\n  \"roar</w>\": 18483,\n  \"roaring</w>\": 26428,\n  \"roast</w>\": 11404,\n  \"roasted</w>\": 10479,\n  \"roasting</w>\": 32228,\n  \"rob\": 2668,\n  \"rob</w>\": 6442,\n  \"robb\": 14059,\n  \"robb</w>\": 39673,\n  \"robbed</w>\": 24163,\n  \"robber</w>\": 35545,\n  \"robbers</w>\": 40852,\n  \"robbery</w>\": 16393,\n  \"robbi\": 44898,\n  \"robbie\": 37200,\n  \"robbie</w>\": 15970,\n  \"robbing</w>\": 47569,\n  \"robbins</w>\": 23461,\n  \"robby</w>\": 44128,\n  \"robe</w>\": 23116,\n  \"rober\": 4532,\n  \"robert\": 8811,\n  \"robert</w>\": 3929,\n  \"roberta</w>\": 43373,\n  \"roberto\": 42645,\n  \"roberto</w>\": 16227,\n  \"roberts</w>\": 10366,\n  \"robertson</w>\": 17643,\n  \"robes</w>\": 29304,\n  \"robi</w>\": 16743,\n  \"robin\": 6681,\n  \"robin</w>\": 7988,\n  \"robins</w>\": 35502,\n  \"robinson</w>\": 8523,\n  \"robles</w>\": 47646,\n  \"roblo\": 27481,\n  \"roblox</w>\": 37798,\n  \"robo\": 4672,\n  \"robo</w>\": 36057,\n  \"robot\": 46089,\n  \"robot</w>\": 8797,\n  \"robotic</w>\": 23975,\n  \"robotics</w>\": 13546,\n  \"robots</w>\": 13473,\n  \"robson</w>\": 31113,\n  \"robust</w>\": 22780,\n  \"robyn</w>\": 34533,\n  \"roc\": 3268,\n  \"roc</w>\": 13776,\n  \"rocco</w>\": 30009,\n  \"roch\": 23788,\n  \"rochdale</w>\": 41880,\n  \"roche</w>\": 31776,\n  \"rochelle</w>\": 40161,\n  \"rochester</w>\": 18057,\n  \"rock\": 2640,\n  \"rock</w>\": 2172,\n  \"rockab\": 39353,\n  \"rockabilly</w>\": 45019,\n  \"rocke\": 19914,\n  \"rocked</w>\": 16116,\n  \"rockefeller</w>\": 35476,\n  \"rocker</w>\": 29008,\n  \"rockers</w>\": 32338,\n  \"rocket\": 25435,\n  \"rocket</w>\": 8383,\n  \"rockets</w>\": 13292,\n  \"rockford</w>\": 41039,\n  \"rockies</w>\": 20621,\n  \"rockin</w>\": 12073,\n  \"rocking</w>\": 7081,\n  \"rockn\": 24442,\n  \"rocknroll</w>\": 27840,\n  \"rocks</w>\": 6135,\n  \"rockstar\": 23603,\n  \"rockstar</w>\": 18000,\n  \"rockstargames</w>\": 27516,\n  \"rockstars</w>\": 46639,\n  \"rockthe\": 49363,\n  \"rockwell</w>\": 34747,\n  \"rocky\": 33481,\n  \"rocky</w>\": 9648,\n  \"rod\": 9712,\n  \"rod</w>\": 8291,\n  \"roddy</w>\": 42332,\n  \"rode</w>\": 18449,\n  \"rodeo</w>\": 18250,\n  \"rodgers</w>\": 17612,\n  \"rodi\": 49100,\n  \"rodney</w>\": 21753,\n  \"rodri\": 11053,\n  \"rodrigo</w>\": 33944,\n  \"rodriguez</w>\": 14057,\n  \"rods</w>\": 28618,\n  \"roe\": 27671,\n  \"roe</w>\": 9996,\n  \"rof\": 33029,\n  \"rofl</w>\": 48228,\n  \"roft</w>\": 45212,\n  \"rog\": 34269,\n  \"rog</w>\": 34017,\n  \"rogen</w>\": 23380,\n  \"roger\": 13929,\n  \"roger</w>\": 7735,\n  \"rogerfederer</w>\": 40182,\n  \"rogers</w>\": 10661,\n  \"rogue\": 32575,\n  \"rogue</w>\": 15162,\n  \"roh\": 14933,\n  \"roh</w>\": 29840,\n  \"rohan</w>\": 39848,\n  \"rohing\": 23600,\n  \"rohingya</w>\": 26146,\n  \"rohit\": 44649,\n  \"rohit</w>\": 24299,\n  \"roi</w>\": 21877,\n  \"rok</w>\": 36807,\n  \"rol\": 3393,\n  \"rol</w>\": 7818,\n  \"roland\": 33713,\n  \"roland</w>\": 19569,\n  \"role\": 18485,\n  \"role</w>\": 3414,\n  \"roles</w>\": 11871,\n  \"rolex</w>\": 21093,\n  \"rolf</w>\": 48606,\n  \"roll\": 4711,\n  \"roll</w>\": 3341,\n  \"rolled</w>\": 11982,\n  \"roller\": 21034,\n  \"roller</w>\": 12342,\n  \"rollercoaster</w>\": 38248,\n  \"rollers</w>\": 36941,\n  \"rollin</w>\": 27545,\n  \"rolling\": 24250,\n  \"rolling</w>\": 6347,\n  \"rollingstones</w>\": 41309,\n  \"rollins</w>\": 27724,\n  \"rollout</w>\": 47710,\n  \"rollover</w>\": 39214,\n  \"rolls</w>\": 8614,\n  \"rolltide</w>\": 28101,\n  \"rom\": 11377,\n  \"rom</w>\": 19205,\n  \"roma\": 44134,\n  \"roma</w>\": 11631,\n  \"romain</w>\": 48897,\n  \"roman\": 4416,\n  \"roman</w>\": 7370,\n  \"romance</w>\": 7215,\n  \"romania</w>\": 15884,\n  \"romanian</w>\": 30866,\n  \"romano</w>\": 38409,\n  \"romans</w>\": 23066,\n  \"romantic\": 41457,\n  \"romantic</w>\": 8821,\n  \"rome\": 9406,\n  \"rome</w>\": 5243,\n  \"romeo</w>\": 14429,\n  \"romero</w>\": 23694,\n  \"romney</w>\": 19287,\n  \"romo</w>\": 32248,\n  \"romper</w>\": 43699,\n  \"ron\": 2393,\n  \"ron</w>\": 3372,\n  \"rona</w>\": 42385,\n  \"ronal\": 46194,\n  \"ronald</w>\": 15683,\n  \"ronaldo</w>\": 13463,\n  \"ronan</w>\": 34971,\n  \"rond\": 31935,\n  \"ronda</w>\": 37436,\n  \"rondo</w>\": 43756,\n  \"rone\": 48082,\n  \"rone</w>\": 32763,\n  \"roni</w>\": 47234,\n  \"ronnie\": 45257,\n  \"ronnie</w>\": 16421,\n  \"rons</w>\": 19536,\n  \"ront</w>\": 48881,\n  \"roo\": 1249,\n  \"roo</w>\": 31227,\n  \"rood</w>\": 38007,\n  \"roof\": 9120,\n  \"roof</w>\": 6449,\n  \"roofing</w>\": 24415,\n  \"roofs</w>\": 34635,\n  \"rooftop</w>\": 16319,\n  \"rook</w>\": 35918,\n  \"rookie</w>\": 9771,\n  \"rookies</w>\": 31917,\n  \"room\": 8845,\n  \"room</w>\": 1530,\n  \"roomie</w>\": 36851,\n  \"roommate</w>\": 19825,\n  \"roommates</w>\": 37323,\n  \"rooms</w>\": 6328,\n  \"rooney</w>\": 17712,\n  \"roos</w>\": 32938,\n  \"roosevel\": 17644,\n  \"roosevelt</w>\": 18488,\n  \"rooster\": 46263,\n  \"rooster</w>\": 30926,\n  \"roosters</w>\": 43693,\n  \"root\": 25930,\n  \"root</w>\": 9728,\n  \"rooted</w>\": 30428,\n  \"rooting</w>\": 25523,\n  \"roots</w>\": 8084,\n  \"rop</w>\": 43401,\n  \"rope</w>\": 9953,\n  \"ropes</w>\": 30506,\n  \"ror\": 8668,\n  \"ror</w>\": 2843,\n  \"rors</w>\": 12072,\n  \"rory\": 42804,\n  \"rory</w>\": 17813,\n  \"ros\": 5288,\n  \"ros</w>\": 6930,\n  \"rosa</w>\": 14393,\n  \"rosal\": 30397,\n  \"rosario</w>\": 33640,\n  \"rosary</w>\": 33098,\n  \"rosberg</w>\": 46037,\n  \"rose\": 6146,\n  \"rose</w>\": 3568,\n  \"roseanne</w>\": 47528,\n  \"rosel\": 33616,\n  \"rosemary</w>\": 19472,\n  \"rosen\": 13214,\n  \"rosen</w>\": 36424,\n  \"rosenberg</w>\": 43558,\n  \"rosenthal</w>\": 46990,\n  \"roses</w>\": 9061,\n  \"rosetta</w>\": 43800,\n  \"rosewood</w>\": 38686,\n  \"rosie\": 43049,\n  \"rosie</w>\": 16888,\n  \"ross\": 8801,\n  \"ross</w>\": 2158,\n  \"rosse</w>\": 11602,\n  \"rossi</w>\": 24817,\n  \"rosso</w>\": 33023,\n  \"roster</w>\": 12487,\n  \"roswell</w>\": 45116,\n  \"rosy</w>\": 46705,\n  \"rosÃ©</w>\": 28006,\n  \"rot\": 10055,\n  \"rot</w>\": 9643,\n  \"rotar\": 45959,\n  \"rotary</w>\": 14654,\n  \"rotating</w>\": 32265,\n  \"rotation</w>\": 18089,\n  \"rotc</w>\": 32252,\n  \"roth\": 17741,\n  \"roth</w>\": 19139,\n  \"rother\": 23174,\n  \"rotherham</w>\": 37687,\n  \"rothschild</w>\": 45089,\n  \"roti</w>\": 46940,\n  \"roto\": 34698,\n  \"rotor</w>\": 42991,\n  \"rots</w>\": 16642,\n  \"rott\": 34806,\n  \"rotten</w>\": 24324,\n  \"rotter\": 22614,\n  \"rotterdam</w>\": 23422,\n  \"rotun\": 42970,\n  \"rou\": 2964,\n  \"rou</w>\": 34783,\n  \"roud</w>\": 28375,\n  \"rouge</w>\": 16209,\n  \"rough\": 11699,\n  \"rough</w>\": 8511,\n  \"roughly</w>\": 21910,\n  \"roughs</w>\": 37598,\n  \"rouhani</w>\": 39912,\n  \"roulette</w>\": 39930,\n  \"roun\": 5602,\n  \"round\": 9403,\n  \"round</w>\": 2522,\n  \"roundabout</w>\": 29953,\n  \"rounded</w>\": 26973,\n  \"rounder</w>\": 37024,\n  \"rounding</w>\": 40208,\n  \"rounds</w>\": 11242,\n  \"roundtable</w>\": 19386,\n  \"roundup</w>\": 17503,\n  \"roup</w>\": 29220,\n  \"rourke</w>\": 38753,\n  \"rous\": 33645,\n  \"rous</w>\": 34531,\n  \"rousey</w>\": 46267,\n  \"rout\": 7502,\n  \"rout</w>\": 41778,\n  \"route</w>\": 5261,\n  \"router</w>\": 29962,\n  \"routes</w>\": 14923,\n  \"routine</w>\": 12319,\n  \"routines</w>\": 44074,\n  \"routing</w>\": 44086,\n  \"roux</w>\": 43416,\n  \"rov</w>\": 23971,\n  \"rove</w>\": 30130,\n  \"rover</w>\": 12776,\n  \"rovers</w>\": 16373,\n  \"row\": 5275,\n  \"row</w>\": 1044,\n  \"rowan</w>\": 26240,\n  \"rowdy</w>\": 32141,\n  \"rowe</w>\": 28323,\n  \"rowed</w>\": 22615,\n  \"rower</w>\": 43345,\n  \"rowers</w>\": 41806,\n  \"rowing</w>\": 12807,\n  \"rowland</w>\": 33037,\n  \"rowley</w>\": 48793,\n  \"rowling</w>\": 29371,\n  \"rown\": 22287,\n  \"rown</w>\": 25060,\n  \"rows</w>\": 9409,\n  \"rox\": 14111,\n  \"rox</w>\": 41033,\n  \"roxy</w>\": 28093,\n  \"roy\": 2128,\n  \"roy</w>\": 6354,\n  \"royal\": 6691,\n  \"royal</w>\": 3853,\n  \"royale</w>\": 20630,\n  \"royalnavy</w>\": 41545,\n  \"royals</w>\": 13335,\n  \"royalties</w>\": 48660,\n  \"royalty</w>\": 18296,\n  \"royalwedding</w>\": 27461,\n  \"royce</w>\": 18444,\n  \"royd</w>\": 41476,\n  \"royo</w>\": 39357,\n  \"roz\": 28989,\n  \"roz</w>\": 37250,\n  \"rp\": 17305,\n  \"rp</w>\": 8174,\n  \"rpa</w>\": 41872,\n  \"rpg</w>\": 12445,\n  \"rpm</w>\": 23715,\n  \"rps</w>\": 49215,\n  \"rr\": 5311,\n  \"rr</w>\": 9126,\n  \"rrp</w>\": 36967,\n  \"rrr</w>\": 18267,\n  \"rrrr\": 25561,\n  \"rrrr</w>\": 34444,\n  \"rs\": 6978,\n  \"rs</w>\": 1724,\n  \"rsa</w>\": 29437,\n  \"rsc</w>\": 48524,\n  \"rsd</w>\": 34426,\n  \"rsi</w>\": 39046,\n  \"rsl</w>\": 44752,\n  \"rsp\": 16381,\n  \"rspb\": 38508,\n  \"rspb</w>\": 36727,\n  \"rspca</w>\": 45643,\n  \"rss\": 46466,\n  \"rss</w>\": 22350,\n  \"rstats</w>\": 38700,\n  \"rsvp</w>\": 9774,\n  \"rt\": 8959,\n  \"rt</w>\": 8991,\n  \"rtc</w>\": 31648,\n  \"rte\": 33822,\n  \"rte</w>\": 23322,\n  \"rtg</w>\": 22028,\n  \"rti</w>\": 47549,\n  \"rtr</w>\": 43999,\n  \"rts</w>\": 8496,\n  \"rtw</w>\": 34673,\n  \"ru\": 681,\n  \"ru</w>\": 13735,\n  \"rub\": 15862,\n  \"rub</w>\": 22586,\n  \"rubb\": 19597,\n  \"rubbed</w>\": 45239,\n  \"rubber\": 31131,\n  \"rubber</w>\": 11331,\n  \"rubbing</w>\": 41262,\n  \"rubbish</w>\": 21108,\n  \"rubble</w>\": 42230,\n  \"ruben\": 44058,\n  \"ruben</w>\": 29722,\n  \"rubi\": 27856,\n  \"rubin</w>\": 34128,\n  \"rubio</w>\": 24244,\n  \"rubs</w>\": 43422,\n  \"ruby\": 24552,\n  \"ruby</w>\": 11493,\n  \"ruck\": 27449,\n  \"rucker</w>\": 45402,\n  \"rud\": 35256,\n  \"rudd</w>\": 31836,\n  \"rude</w>\": 16548,\n  \"rudi\": 48360,\n  \"rudol\": 40927,\n  \"rudolf</w>\": 46835,\n  \"rudolph</w>\": 30119,\n  \"rudy\": 38226,\n  \"rudy</w>\": 22131,\n  \"rue\": 38024,\n  \"rue</w>\": 19276,\n  \"rufc</w>\": 45084,\n  \"ruff\": 28177,\n  \"ruff</w>\": 30304,\n  \"rufus</w>\": 39322,\n  \"rug\": 4217,\n  \"rug</w>\": 19220,\n  \"rugby\": 15091,\n  \"rugby</w>\": 4964,\n  \"rugbyleague</w>\": 44419,\n  \"ruger</w>\": 48655,\n  \"rugged</w>\": 25225,\n  \"rugs</w>\": 29946,\n  \"rui</w>\": 46974,\n  \"ruin</w>\": 16256,\n  \"ruined</w>\": 17231,\n  \"ruining</w>\": 29952,\n  \"ruins</w>\": 16094,\n  \"ruiz</w>\": 27873,\n  \"ruk</w>\": 46628,\n  \"rukh\": 43075,\n  \"rukh</w>\": 27631,\n  \"rule\": 31643,\n  \"rule</w>\": 6175,\n  \"ruled</w>\": 16324,\n  \"ruler</w>\": 26286,\n  \"rulers</w>\": 45328,\n  \"rules</w>\": 5272,\n  \"ruling</w>\": 14690,\n  \"rum\": 9223,\n  \"rum</w>\": 11233,\n  \"rumb\": 42432,\n  \"rumble</w>\": 18900,\n  \"rumi</w>\": 31428,\n  \"rumor</w>\": 22254,\n  \"rumored</w>\": 36694,\n  \"rumors</w>\": 16160,\n  \"rumour</w>\": 34296,\n  \"rumours</w>\": 20716,\n  \"rump</w>\": 29366,\n  \"run\": 1639,\n  \"run</w>\": 1934,\n  \"runaway</w>\": 28851,\n  \"runchat</w>\": 25838,\n  \"rundown</w>\": 41100,\n  \"rune\": 33882,\n  \"rune</w>\": 49244,\n  \"runner\": 37370,\n  \"runner</w>\": 7913,\n  \"runners</w>\": 10571,\n  \"runnin</w>\": 43130,\n  \"running\": 24451,\n  \"running</w>\": 2761,\n  \"runoff</w>\": 38564,\n  \"runs</w>\": 5586,\n  \"runway</w>\": 13927,\n  \"rup\": 7996,\n  \"rup</w>\": 14980,\n  \"rupaul</w>\": 44211,\n  \"rupee</w>\": 43916,\n  \"rupees</w>\": 44110,\n  \"rupert</w>\": 25625,\n  \"rupt</w>\": 23055,\n  \"ruption</w>\": 35403,\n  \"rural\": 28801,\n  \"rural</w>\": 8737,\n  \"rus\": 35811,\n  \"rus</w>\": 5998,\n  \"rush\": 12148,\n  \"rush</w>\": 6973,\n  \"rushed</w>\": 28104,\n  \"rusher</w>\": 48745,\n  \"rushes</w>\": 47217,\n  \"rushing</w>\": 20284,\n  \"russ\": 6285,\n  \"russ</w>\": 20764,\n  \"russell\": 26122,\n  \"russell</w>\": 8150,\n  \"russi\": 2600,\n  \"russia</w>\": 4018,\n  \"russian\": 30731,\n  \"russian</w>\": 4868,\n  \"russians</w>\": 25413,\n  \"russo</w>\": 30679,\n  \"rust\": 28682,\n  \"rust</w>\": 14212,\n  \"rustic</w>\": 19822,\n  \"rusty\": 43966,\n  \"rusty</w>\": 22646,\n  \"rut\": 14973,\n  \"rut</w>\": 39102,\n  \"rutger\": 49029,\n  \"rutgers</w>\": 28934,\n  \"ruth\": 15798,\n  \"ruth</w>\": 12029,\n  \"ruther\": 26676,\n  \"rutherford</w>\": 31070,\n  \"ruthless</w>\": 36063,\n  \"rutland</w>\": 46024,\n  \"ruto</w>\": 43702,\n  \"ruz</w>\": 23275,\n  \"rv\": 17135,\n  \"rv</w>\": 17951,\n  \"rva</w>\": 24278,\n  \"rw\": 9085,\n  \"rw</w>\": 22926,\n  \"rwa</w>\": 47452,\n  \"rwand\": 31758,\n  \"rwanda</w>\": 15427,\n  \"rwby</w>\": 39698,\n  \"rwc</w>\": 32321,\n  \"rx\": 41188,\n  \"rx</w>\": 15945,\n  \"ry\": 1511,\n  \"ry</w>\": 913,\n  \"ryan\": 8682,\n  \"ryan</w>\": 4053,\n  \"ryanair</w>\": 43526,\n  \"ryder\": 43564,\n  \"ryder</w>\": 21805,\n  \"rye\": 24015,\n  \"rye</w>\": 17409,\n  \"rying</w>\": 7838,\n  \"ryn</w>\": 37728,\n  \"ryo\": 24460,\n  \"rys</w>\": 21654,\n  \"ryu\": 46656,\n  \"ryu</w>\": 34604,\n  \"rÃ©\": 29106,\n  \"s\": 82,\n  \"s</w>\": 338,\n  \"sa\": 774,\n  \"sa</w>\": 1344,\n  \"saa</w>\": 13429,\n  \"saab</w>\": 27158,\n  \"saad</w>\": 36530,\n  \"saas</w>\": 25761,\n  \"saat\": 33151,\n  \"sab\": 3233,\n  \"sab</w>\": 23213,\n  \"saba</w>\": 38344,\n  \"sabah</w>\": 32854,\n  \"saban</w>\": 41620,\n  \"sabar\": 47102,\n  \"sabbath</w>\": 26008,\n  \"sabc</w>\": 30010,\n  \"sabcnews</w>\": 41093,\n  \"saber\": 46822,\n  \"saber</w>\": 25624,\n  \"sabha</w>\": 23431,\n  \"sabi</w>\": 47073,\n  \"sabine</w>\": 44062,\n  \"sable</w>\": 19224,\n  \"sabot\": 30700,\n  \"sabotage</w>\": 40496,\n  \"sabre</w>\": 35110,\n  \"sabres</w>\": 29620,\n  \"sabrin\": 37029,\n  \"sabrina</w>\": 24994,\n  \"sac\": 3632,\n  \"sac</w>\": 12905,\n  \"sach\": 30168,\n  \"sacha</w>\": 49010,\n  \"sachin\": 47527,\n  \"sachin</w>\": 30297,\n  \"sachs</w>\": 31451,\n  \"sack\": 28964,\n  \"sack</w>\": 14979,\n  \"sacked</w>\": 27519,\n  \"sacks</w>\": 26441,\n  \"sacram\": 13334,\n  \"sacramento</w>\": 16065,\n  \"sacred\": 40612,\n  \"sacred</w>\": 12477,\n  \"sacri\": 15283,\n  \"sacrif\": 12117,\n  \"sacrific\": 16919,\n  \"sacrifice</w>\": 12556,\n  \"sacrificed</w>\": 31116,\n  \"sacrifices</w>\": 28858,\n  \"sacrificing</w>\": 48146,\n  \"sad\": 2810,\n  \"sad</w>\": 3719,\n  \"saddened</w>\": 27720,\n  \"saddest</w>\": 34925,\n  \"saddle\": 30469,\n  \"saddle</w>\": 20283,\n  \"sade</w>\": 27429,\n  \"sadh\": 40955,\n  \"sadi\": 22207,\n  \"sadie</w>\": 30333,\n  \"sadiq</w>\": 44107,\n  \"sadler</w>\": 45600,\n  \"sadly</w>\": 11603,\n  \"sadness</w>\": 20399,\n  \"sae\": 38633,\n  \"sae</w>\": 34883,\n  \"saeed</w>\": 29745,\n  \"saf\": 2125,\n  \"saf</w>\": 25760,\n  \"safar\": 23443,\n  \"safari</w>\": 14091,\n  \"safarilive</w>\": 34816,\n  \"safc</w>\": 27998,\n  \"safe\": 2901,\n  \"safe</w>\": 2996,\n  \"safeguard</w>\": 42249,\n  \"safeguarding</w>\": 47451,\n  \"safely</w>\": 11513,\n  \"safer\": 40124,\n  \"safer</w>\": 15504,\n  \"safest</w>\": 38973,\n  \"safety\": 19050,\n  \"safety</w>\": 3406,\n  \"safetyfirst</w>\": 43608,\n  \"saffron</w>\": 27529,\n  \"sag\": 6609,\n  \"sag</w>\": 30048,\n  \"saga</w>\": 15758,\n  \"sagan</w>\": 37193,\n  \"sagar</w>\": 42518,\n  \"sage\": 25800,\n  \"sage</w>\": 7509,\n  \"sages</w>\": 25979,\n  \"sagin\": 47097,\n  \"sagitt\": 44685,\n  \"sagu\": 44708,\n  \"sah\": 30943,\n  \"sah</w>\": 26342,\n  \"saha\": 36062,\n  \"sahara</w>\": 24599,\n  \"saharan</w>\": 44255,\n  \"sahi\": 24608,\n  \"sahib</w>\": 34150,\n  \"sai\": 16048,\n  \"sai</w>\": 10886,\n  \"said\": 40319,\n  \"said</w>\": 1946,\n  \"saif</w>\": 44164,\n  \"saig\": 36328,\n  \"saigon</w>\": 41081,\n  \"sail\": 7528,\n  \"sail</w>\": 12156,\n  \"sailed</w>\": 43047,\n  \"sailing</w>\": 11003,\n  \"sailor\": 28002,\n  \"sailor</w>\": 16076,\n  \"sailormoon</w>\": 40673,\n  \"sailors</w>\": 25355,\n  \"sails</w>\": 27526,\n  \"sain\": 21226,\n  \"sain</w>\": 40378,\n  \"sains\": 24860,\n  \"sainsbury</w>\": 45879,\n  \"sainsburys</w>\": 36934,\n  \"saint\": 11274,\n  \"saint</w>\": 5599,\n  \"saints</w>\": 8769,\n  \"saintsfc</w>\": 31102,\n  \"sair\": 46600,\n  \"sair</w>\": 30971,\n  \"saire</w>\": 28087,\n  \"saison</w>\": 33256,\n  \"sait\": 48008,\n  \"saj\": 33580,\n  \"sak\": 11511,\n  \"sak</w>\": 35900,\n  \"saka</w>\": 33609,\n  \"sake</w>\": 12874,\n  \"sakh</w>\": 43945,\n  \"saki</w>\": 40514,\n  \"saku\": 37550,\n  \"sakura</w>\": 24162,\n  \"sal\": 980,\n  \"sal</w>\": 6126,\n  \"sala</w>\": 17300,\n  \"salaam</w>\": 46773,\n  \"salad</w>\": 6188,\n  \"salads</w>\": 30948,\n  \"salah</w>\": 22516,\n  \"salam\": 19007,\n  \"salam</w>\": 33963,\n  \"salamat</w>\": 44696,\n  \"salami</w>\": 46885,\n  \"salaries</w>\": 33132,\n  \"salary</w>\": 16312,\n  \"salazar</w>\": 45988,\n  \"sale\": 17786,\n  \"sale</w>\": 1690,\n  \"saleh</w>\": 38353,\n  \"salem\": 48194,\n  \"salem</w>\": 16884,\n  \"sales\": 13347,\n  \"sales</w>\": 3765,\n  \"salesforce</w>\": 22680,\n  \"salesman</w>\": 37633,\n  \"salford</w>\": 25629,\n  \"sali\": 15411,\n  \"salim</w>\": 42760,\n  \"salinas</w>\": 41990,\n  \"saline</w>\": 46918,\n  \"salis\": 20667,\n  \"salis</w>\": 39378,\n  \"salisbury</w>\": 24763,\n  \"sall\": 27122,\n  \"sall</w>\": 20883,\n  \"salle</w>\": 23738,\n  \"sally\": 29542,\n  \"sally</w>\": 13349,\n  \"salman\": 13754,\n  \"salman</w>\": 16219,\n  \"salmankhan</w>\": 15177,\n  \"salmon\": 37040,\n  \"salmon</w>\": 9137,\n  \"salom\": 38268,\n  \"salon\": 33916,\n  \"salon</w>\": 11105,\n  \"saloon</w>\": 26038,\n  \"sals</w>\": 16307,\n  \"salsa</w>\": 16442,\n  \"salt\": 12763,\n  \"salt</w>\": 6611,\n  \"salted</w>\": 26313,\n  \"saltlife</w>\": 47809,\n  \"salts</w>\": 40559,\n  \"saltwater</w>\": 43616,\n  \"salty</w>\": 20678,\n  \"salu\": 31711,\n  \"salud</w>\": 46867,\n  \"salut\": 44998,\n  \"salute\": 44908,\n  \"salute</w>\": 9747,\n  \"salutes</w>\": 32762,\n  \"salv\": 8299,\n  \"salvador</w>\": 20874,\n  \"salvage</w>\": 33131,\n  \"salvation</w>\": 19534,\n  \"salvatore</w>\": 38772,\n  \"salz\": 33594,\n  \"salzburg</w>\": 43396,\n  \"sam\": 1644,\n  \"sam</w>\": 3730,\n  \"sama</w>\": 19272,\n  \"samanth\": 11465,\n  \"samantha</w>\": 15466,\n  \"samanthap\": 38266,\n  \"samanthaprabhu</w>\": 38643,\n  \"samar\": 21820,\n  \"samaritan</w>\": 45495,\n  \"samba</w>\": 37190,\n  \"same\": 23062,\n  \"same</w>\": 2208,\n  \"samheughan</w>\": 36255,\n  \"sami\": 48400,\n  \"sami</w>\": 24322,\n  \"sammy\": 31091,\n  \"sammy</w>\": 16758,\n  \"samo\": 30006,\n  \"samoa</w>\": 34932,\n  \"samp\": 31225,\n  \"sample</w>\": 9542,\n  \"sampler</w>\": 40629,\n  \"samples</w>\": 13387,\n  \"sampling</w>\": 19522,\n  \"sampson</w>\": 39983,\n  \"sams</w>\": 44667,\n  \"samson</w>\": 34659,\n  \"samsun\": 47875,\n  \"samsung\": 35369,\n  \"samsung</w>\": 8115,\n  \"samu\": 7646,\n  \"samuel\": 30612,\n  \"samuel</w>\": 12787,\n  \"samurai</w>\": 21739,\n  \"san\": 1489,\n  \"san</w>\": 2223,\n  \"sana</w>\": 19434,\n  \"sanantonio</w>\": 34714,\n  \"sanat\": 29091,\n  \"sanatomy</w>\": 36052,\n  \"sanc\": 7398,\n  \"sance</w>\": 15930,\n  \"sanchez</w>\": 13971,\n  \"sanctioned</w>\": 43032,\n  \"sanctions</w>\": 17790,\n  \"sanctu\": 12712,\n  \"sanctuary</w>\": 14044,\n  \"sand\": 2147,\n  \"sand</w>\": 5094,\n  \"sandal\": 36445,\n  \"sandal</w>\": 42185,\n  \"sandals</w>\": 20731,\n  \"sandalwood</w>\": 47502,\n  \"sandeep</w>\": 46973,\n  \"sander</w>\": 34111,\n  \"sanders</w>\": 10429,\n  \"sanderson</w>\": 36198,\n  \"sandi\": 44249,\n  \"sandiego\": 45997,\n  \"sandiego</w>\": 15793,\n  \"sandman</w>\": 45730,\n  \"sando\": 35921,\n  \"sandoval</w>\": 44157,\n  \"sandra\": 33733,\n  \"sandra</w>\": 13415,\n  \"sandro</w>\": 42389,\n  \"sands</w>\": 5936,\n  \"sandstone</w>\": 36796,\n  \"sandwich\": 17050,\n  \"sandwich</w>\": 8687,\n  \"sandwiches</w>\": 19667,\n  \"sandy\": 29679,\n  \"sandy</w>\": 10355,\n  \"sane</w>\": 23419,\n  \"sanford</w>\": 32330,\n  \"sanfrancisco</w>\": 20254,\n  \"sang\": 13235,\n  \"sang</w>\": 11684,\n  \"sange\": 12466,\n  \"sangria</w>\": 42665,\n  \"sani\": 39137,\n  \"sani</w>\": 34492,\n  \"sanitary</w>\": 33842,\n  \"sanitation</w>\": 25414,\n  \"saniti\": 43987,\n  \"sanity</w>\": 30517,\n  \"sanjay\": 31712,\n  \"sanjay</w>\": 25796,\n  \"sanje\": 40405,\n  \"sanjose</w>\": 45971,\n  \"sank</w>\": 43692,\n  \"sano</w>\": 34053,\n  \"sans</w>\": 16982,\n  \"sansk\": 39689,\n  \"sanskrit</w>\": 48083,\n  \"sant\": 8356,\n  \"sant</w>\": 23120,\n  \"santa\": 22175,\n  \"santa</w>\": 4555,\n  \"santac\": 28876,\n  \"santam\": 45627,\n  \"santana</w>\": 27033,\n  \"santander</w>\": 46476,\n  \"santi\": 13856,\n  \"santiago</w>\": 16568,\n  \"santo\": 29631,\n  \"santo</w>\": 18400,\n  \"santor\": 28448,\n  \"santorini</w>\": 39573,\n  \"santos</w>\": 16582,\n  \"sany\": 47679,\n  \"sao</w>\": 28026,\n  \"sap\": 8089,\n  \"sap</w>\": 11591,\n  \"sapi\": 40016,\n  \"sapp\": 13427,\n  \"sapp</w>\": 40729,\n  \"sapphire</w>\": 22044,\n  \"sar\": 1808,\n  \"sar</w>\": 9424,\n  \"sara\": 37196,\n  \"sara</w>\": 10063,\n  \"sarab\": 40716,\n  \"sarac\": 35722,\n  \"sarah\": 9086,\n  \"sarah</w>\": 5327,\n  \"saraj\": 42592,\n  \"sarajevo</w>\": 48211,\n  \"saras\": 20373,\n  \"sarasota</w>\": 31990,\n  \"sarato\": 24845,\n  \"saratoga</w>\": 29496,\n  \"sarawak</w>\": 47331,\n  \"sarcasm</w>\": 37246,\n  \"sarcastic</w>\": 48639,\n  \"sardar</w>\": 41786,\n  \"sarde\": 43925,\n  \"sardin\": 27383,\n  \"sardinia</w>\": 41025,\n  \"sare\": 13051,\n  \"saree</w>\": 30860,\n  \"sargent</w>\": 34864,\n  \"sari\": 42327,\n  \"sari</w>\": 20261,\n  \"saries</w>\": 47586,\n  \"sarkar</w>\": 30673,\n  \"sarko\": 33658,\n  \"sarkodie</w>\": 42848,\n  \"sarmy</w>\": 20954,\n  \"sart</w>\": 33006,\n  \"sary</w>\": 15398,\n  \"sas\": 3960,\n  \"sas</w>\": 5235,\n  \"sash</w>\": 35656,\n  \"sasha\": 46078,\n  \"sasha</w>\": 20894,\n  \"sasia</w>\": 44751,\n  \"sask\": 47091,\n  \"sask</w>\": 30416,\n  \"saskat\": 17102,\n  \"saskatchewan</w>\": 23899,\n  \"saskatoon</w>\": 31128,\n  \"sass</w>\": 31351,\n  \"sassy</w>\": 20827,\n  \"sat\": 1382,\n  \"sat</w>\": 3279,\n  \"sata</w>\": 41520,\n  \"satan</w>\": 19446,\n  \"satanic</w>\": 38224,\n  \"satchel</w>\": 45908,\n  \"sate</w>\": 35749,\n  \"satell\": 9031,\n  \"satellite</w>\": 10316,\n  \"satellites</w>\": 28483,\n  \"sath\": 29675,\n  \"sathletics</w>\": 30154,\n  \"sati\": 7038,\n  \"satin</w>\": 21803,\n  \"sation</w>\": 23674,\n  \"sations</w>\": 31232,\n  \"satire</w>\": 29875,\n  \"satis\": 9906,\n  \"satisf\": 22941,\n  \"satisfaction</w>\": 19925,\n  \"satisfied</w>\": 18101,\n  \"satisfy</w>\": 29444,\n  \"satisfying</w>\": 23755,\n  \"sato</w>\": 34376,\n  \"satu</w>\": 45283,\n  \"satur\": 1634,\n  \"saturated</w>\": 32466,\n  \"saturday\": 12537,\n  \"saturday</w>\": 1748,\n  \"saturdaymorning</w>\": 29053,\n  \"saturdaymotivation</w>\": 40843,\n  \"saturdays</w>\": 18930,\n  \"saturn</w>\": 17312,\n  \"saty\": 39426,\n  \"sau\": 2096,\n  \"sau</w>\": 19455,\n  \"sauce</w>\": 5520,\n  \"saucer</w>\": 42272,\n  \"sauces</w>\": 40367,\n  \"saucy</w>\": 46684,\n  \"saudi\": 24511,\n  \"saudi</w>\": 8548,\n  \"saudiarabia</w>\": 28680,\n  \"sauer\": 46333,\n  \"saul\": 47623,\n  \"saul</w>\": 23252,\n  \"sault</w>\": 40361,\n  \"sauna</w>\": 35460,\n  \"saunders</w>\": 23794,\n  \"saur</w>\": 13227,\n  \"saura\": 46532,\n  \"saurus</w>\": 22118,\n  \"saus</w>\": 36121,\n  \"sausage</w>\": 11855,\n  \"sausages</w>\": 31593,\n  \"sautÃ©\": 36290,\n  \"sautÃ©ed</w>\": 38517,\n  \"sauvi\": 30116,\n  \"sauvignon</w>\": 32745,\n  \"sav\": 2248,\n  \"sav</w>\": 26533,\n  \"sava</w>\": 40198,\n  \"savag\": 43039,\n  \"savage</w>\": 11859,\n  \"savannah</w>\": 18662,\n  \"save\": 5895,\n  \"save</w>\": 2673,\n  \"saved</w>\": 7137,\n  \"saveour\": 33390,\n  \"saver</w>\": 20987,\n  \"savers</w>\": 31416,\n  \"saves</w>\": 12907,\n  \"savethe\": 18031,\n  \"savi\": 14721,\n  \"saving\": 28498,\n  \"saving</w>\": 6979,\n  \"savings</w>\": 10651,\n  \"savior</w>\": 24762,\n  \"saviour</w>\": 35800,\n  \"savor</w>\": 48071,\n  \"savory</w>\": 32992,\n  \"savoury</w>\": 49071,\n  \"savoy</w>\": 39552,\n  \"savvy</w>\": 29278,\n  \"saw\": 12429,\n  \"saw</w>\": 2425,\n  \"sawa</w>\": 39613,\n  \"sawards</w>\": 29012,\n  \"sawyer</w>\": 27726,\n  \"sax\": 14169,\n  \"sax</w>\": 23766,\n  \"saxon</w>\": 31856,\n  \"saxophon\": 43760,\n  \"saxophone</w>\": 32296,\n  \"say\": 3047,\n  \"say</w>\": 1451,\n  \"saya</w>\": 35170,\n  \"sayang</w>\": 46322,\n  \"sayers</w>\": 44116,\n  \"sayin</w>\": 23662,\n  \"saying</w>\": 4455,\n  \"says</w>\": 1563,\n  \"saz</w>\": 35577,\n  \"sb\": 5576,\n  \"sb</w>\": 4977,\n  \"sba</w>\": 44970,\n  \"sback</w>\": 43840,\n  \"sband</w>\": 27539,\n  \"sbaseball</w>\": 46491,\n  \"sbball</w>\": 39190,\n  \"sbc</w>\": 31404,\n  \"sberg</w>\": 20358,\n  \"sbi</w>\": 41369,\n  \"sbk</w>\": 39211,\n  \"sboro</w>\": 18909,\n  \"sbridge</w>\": 49228,\n  \"sbs</w>\": 18883,\n  \"sbu\": 48075,\n  \"sbu</w>\": 46281,\n  \"sburg</w>\": 7390,\n  \"sburgh</w>\": 48205,\n  \"sbury</w>\": 14081,\n  \"sby\": 26519,\n  \"sby</w>\": 10287,\n  \"sc\": 663,\n  \"sc</w>\": 3219,\n  \"sca</w>\": 11001,\n  \"scab\": 31716,\n  \"scaf\": 28981,\n  \"scafe</w>\": 45574,\n  \"scaffolding</w>\": 41687,\n  \"scal\": 10859,\n  \"scala</w>\": 37997,\n  \"scalable</w>\": 44084,\n  \"scale\": 37817,\n  \"scale</w>\": 5879,\n  \"scaled</w>\": 41923,\n  \"scales</w>\": 22891,\n  \"scaling</w>\": 29116,\n  \"scallo\": 19936,\n  \"scallop</w>\": 39544,\n  \"scallops</w>\": 31430,\n  \"scalp</w>\": 38898,\n  \"scam\": 17620,\n  \"scam</w>\": 13215,\n  \"scamp</w>\": 28451,\n  \"scams</w>\": 34395,\n  \"scan\": 10650,\n  \"scan</w>\": 11261,\n  \"scanada</w>\": 27121,\n  \"scand\": 8110,\n  \"scandal\": 35420,\n  \"scandal</w>\": 11622,\n  \"scandals</w>\": 45490,\n  \"scandin\": 32014,\n  \"scandinavian</w>\": 35661,\n  \"scanned</w>\": 43719,\n  \"scanner</w>\": 24185,\n  \"scanning</w>\": 24092,\n  \"scans</w>\": 31251,\n  \"scap\": 35883,\n  \"scape\": 36005,\n  \"scape</w>\": 12314,\n  \"scapes</w>\": 31933,\n  \"scar\": 4171,\n  \"scar</w>\": 18088,\n  \"scarborough</w>\": 24254,\n  \"scarce</w>\": 38572,\n  \"scarcity</w>\": 45812,\n  \"scare\": 33536,\n  \"scare</w>\": 15920,\n  \"scarec\": 38814,\n  \"scarecrow</w>\": 46504,\n  \"scared</w>\": 9870,\n  \"scares</w>\": 34096,\n  \"scarf</w>\": 13365,\n  \"scari\": 27050,\n  \"scariest</w>\": 37213,\n  \"scarlet</w>\": 20389,\n  \"scarlett</w>\": 28325,\n  \"scars</w>\": 20747,\n  \"scarves</w>\": 29249,\n  \"scary</w>\": 9250,\n  \"scat\": 13899,\n  \"scattered</w>\": 22090,\n  \"scavenger</w>\": 36778,\n  \"scc</w>\": 19458,\n  \"scd</w>\": 48422,\n  \"scen\": 2204,\n  \"scenario</w>\": 20456,\n  \"scenarios</w>\": 31346,\n  \"scence</w>\": 33418,\n  \"scene</w>\": 3562,\n  \"scenery</w>\": 16025,\n  \"scenes</w>\": 5415,\n  \"scenic</w>\": 15394,\n  \"scent\": 36277,\n  \"scent</w>\": 7683,\n  \"scented</w>\": 27190,\n  \"scenter</w>\": 23059,\n  \"scentre</w>\": 39371,\n  \"scents</w>\": 26336,\n  \"scep\": 24439,\n  \"scfc</w>\": 38578,\n  \"sch\": 844,\n  \"sch</w>\": 7542,\n  \"scha\": 42809,\n  \"schaf\": 45588,\n  \"schaft</w>\": 41010,\n  \"schal\": 35568,\n  \"schalke</w>\": 41029,\n  \"schallenge</w>\": 43665,\n  \"schan\": 31328,\n  \"schar\": 15085,\n  \"schat</w>\": 31842,\n  \"schau\": 35830,\n  \"sche\": 3038,\n  \"sche</w>\": 7289,\n  \"schedu\": 4207,\n  \"schedule</w>\": 5521,\n  \"scheduled</w>\": 10986,\n  \"schedules</w>\": 28986,\n  \"scheduling</w>\": 32216,\n  \"scheer</w>\": 26776,\n  \"schel\": 39881,\n  \"schel</w>\": 38569,\n  \"schem\": 17720,\n  \"scheme</w>\": 9024,\n  \"schemes</w>\": 22958,\n  \"schen\": 22738,\n  \"scher\": 21925,\n  \"scher</w>\": 21299,\n  \"schi\": 13731,\n  \"schi</w>\": 24984,\n  \"schicago</w>\": 46230,\n  \"schiff</w>\": 39431,\n  \"schild</w>\": 32148,\n  \"schiz\": 33230,\n  \"schizoph\": 40004,\n  \"schizophre\": 41163,\n  \"schle\": 32022,\n  \"schmid\": 17375,\n  \"schmidt</w>\": 18463,\n  \"schnau\": 45745,\n  \"schnei\": 19941,\n  \"schneider</w>\": 22972,\n  \"schnit\": 40903,\n  \"scho\": 2493,\n  \"schoice</w>\": 23860,\n  \"schol\": 4498,\n  \"scholar\": 7192,\n  \"scholar</w>\": 12830,\n  \"scholarly</w>\": 41065,\n  \"scholars</w>\": 13818,\n  \"scholarship</w>\": 9070,\n  \"scholarships</w>\": 17866,\n  \"scholastic</w>\": 35743,\n  \"schoo\": 20721,\n  \"school\": 6063,\n  \"school</w>\": 1228,\n  \"schooled</w>\": 44722,\n  \"schoolers</w>\": 31455,\n  \"schooling</w>\": 28608,\n  \"schools</w>\": 3513,\n  \"schre\": 47685,\n  \"schri\": 25453,\n  \"schro\": 32381,\n  \"schu\": 11318,\n  \"schubert</w>\": 46939,\n  \"schul\": 14945,\n  \"schultz</w>\": 30308,\n  \"schulz</w>\": 39572,\n  \"schumacher</w>\": 39208,\n  \"schumer</w>\": 25313,\n  \"schur\": 42475,\n  \"schwab</w>\": 47602,\n  \"schwar\": 13985,\n  \"schwartz</w>\": 30617,\n  \"schwarz\": 27074,\n  \"schwarzenegger</w>\": 33860,\n  \"schwe\": 25324,\n  \"sci\": 2267,\n  \"sci</w>\": 8309,\n  \"sciart</w>\": 31704,\n  \"scicom\": 28606,\n  \"scicomm</w>\": 29573,\n  \"scien\": 39261,\n  \"science\": 10201,\n  \"science</w>\": 2497,\n  \"sciencefiction</w>\": 39170,\n  \"sciences</w>\": 11481,\n  \"scienti\": 4338,\n  \"scientific</w>\": 9750,\n  \"scientist</w>\": 11083,\n  \"scientists</w>\": 8045,\n  \"sciento\": 36193,\n  \"scientology</w>\": 44694,\n  \"scifi\": 41862,\n  \"scifi</w>\": 12230,\n  \"scion</w>\": 47208,\n  \"sciss\": 25667,\n  \"scissors</w>\": 30867,\n  \"sciutto</w>\": 44392,\n  \"sclerosis</w>\": 39446,\n  \"sclub</w>\": 20017,\n  \"sco\": 1065,\n  \"sco</w>\": 4763,\n  \"scoe</w>\": 31164,\n  \"scol\": 13599,\n  \"scoll</w>\": 44895,\n  \"scollege</w>\": 39536,\n  \"scom</w>\": 26407,\n  \"scon\": 17163,\n  \"scon</w>\": 29272,\n  \"scones</w>\": 36443,\n  \"sconf</w>\": 39704,\n  \"scoo\": 14199,\n  \"scooby</w>\": 34469,\n  \"scoop</w>\": 13829,\n  \"scoops</w>\": 41360,\n  \"scope</w>\": 7979,\n  \"scopes</w>\": 30328,\n  \"scopic</w>\": 23869,\n  \"scopy</w>\": 20018,\n  \"scor\": 8442,\n  \"score\": 12067,\n  \"score</w>\": 4431,\n  \"scoreboard</w>\": 30104,\n  \"scorecard</w>\": 38128,\n  \"scored</w>\": 6143,\n  \"scoreless</w>\": 33469,\n  \"scorer</w>\": 16572,\n  \"scorers</w>\": 26699,\n  \"scores</w>\": 7039,\n  \"scoring</w>\": 9198,\n  \"scorpi\": 15445,\n  \"scorpio</w>\": 34331,\n  \"scorpion</w>\": 28461,\n  \"scorpions</w>\": 45401,\n  \"scorsese</w>\": 45975,\n  \"scot\": 2496,\n  \"scot</w>\": 9271,\n  \"scotch</w>\": 16687,\n  \"scoti\": 46446,\n  \"scotia</w>\": 27859,\n  \"scotland\": 29174,\n  \"scotland</w>\": 4203,\n  \"scots</w>\": 17260,\n  \"scotsman</w>\": 39612,\n  \"scott\": 7775,\n  \"scott</w>\": 3664,\n  \"scotti\": 6227,\n  \"scottish\": 18039,\n  \"scottish</w>\": 7442,\n  \"scottsdale</w>\": 27817,\n  \"scotty\": 39697,\n  \"scotty</w>\": 26836,\n  \"scotus</w>\": 21720,\n  \"scou\": 44909,\n  \"scoun\": 16110,\n  \"scouncil</w>\": 48787,\n  \"scountry</w>\": 40432,\n  \"scour\": 46172,\n  \"scout\": 32213,\n  \"scout</w>\": 10786,\n  \"scouting</w>\": 19072,\n  \"scouts</w>\": 14837,\n  \"scow\": 27929,\n  \"scowboys</w>\": 31386,\n  \"scp</w>\": 45030,\n  \"scr</w>\": 36131,\n  \"scra\": 11187,\n  \"scrabble</w>\": 39488,\n  \"scram\": 17289,\n  \"scramble</w>\": 32688,\n  \"scrambled</w>\": 39026,\n  \"scran\": 41774,\n  \"scranton</w>\": 45274,\n  \"scrap\": 27950,\n  \"scrap</w>\": 21695,\n  \"scrapbook</w>\": 48733,\n  \"scrapped</w>\": 43325,\n  \"scraps</w>\": 40809,\n  \"scrat\": 9572,\n  \"scratch</w>\": 13258,\n  \"scratched</w>\": 48831,\n  \"scratches</w>\": 46556,\n  \"scratching</w>\": 44617,\n  \"scre\": 1795,\n  \"scream\": 31645,\n  \"scream</w>\": 13239,\n  \"screamed</w>\": 35427,\n  \"screaming</w>\": 12891,\n  \"screams</w>\": 23989,\n  \"screen\": 5351,\n  \"screen</w>\": 3750,\n  \"screened</w>\": 31450,\n  \"screening</w>\": 6688,\n  \"screenings</w>\": 27655,\n  \"screenplay</w>\": 30058,\n  \"screens</w>\": 12689,\n  \"screenshot\": 20637,\n  \"screenshot</w>\": 12646,\n  \"screenshots</w>\": 26783,\n  \"screenshotsaturday</w>\": 21406,\n  \"screenwriter</w>\": 37293,\n  \"screenwriting</w>\": 35465,\n  \"screw\": 25529,\n  \"screw</w>\": 14225,\n  \"screwdriver</w>\": 48748,\n  \"screwed</w>\": 30592,\n  \"screws</w>\": 38292,\n  \"scri\": 2139,\n  \"scrib\": 34259,\n  \"scribe</w>\": 36228,\n  \"scribed</w>\": 38334,\n  \"scricket</w>\": 45947,\n  \"scrim\": 21978,\n  \"scrimmage</w>\": 25216,\n  \"scrip\": 11955,\n  \"script</w>\": 8374,\n  \"scripted</w>\": 40513,\n  \"scription</w>\": 26604,\n  \"scriptions</w>\": 39512,\n  \"scripts</w>\": 20109,\n  \"scripture</w>\": 27186,\n  \"scro\": 30768,\n  \"scroll</w>\": 24160,\n  \"scrolling</w>\": 28889,\n  \"scrolls</w>\": 38113,\n  \"scroo\": 42263,\n  \"scru\": 7589,\n  \"scrub</w>\": 23432,\n  \"scrubs</w>\": 37919,\n  \"scrum</w>\": 29047,\n  \"scrump\": 39791,\n  \"scrumptious</w>\": 40987,\n  \"scrutiny</w>\": 34305,\n  \"scs</w>\": 26853,\n  \"sct</w>\": 39284,\n  \"scu\": 8181,\n  \"scu</w>\": 32135,\n  \"scuba\": 39053,\n  \"scuba</w>\": 20559,\n  \"scubadiving</w>\": 49046,\n  \"scue</w>\": 25955,\n  \"scul\": 4948,\n  \"scully</w>\": 36598,\n  \"sculp\": 6093,\n  \"sculpt</w>\": 45044,\n  \"sculpted</w>\": 41296,\n  \"sculpting</w>\": 44389,\n  \"sculptor</w>\": 29409,\n  \"sculpture</w>\": 8757,\n  \"sculptures</w>\": 20378,\n  \"scum</w>\": 29655,\n  \"scumb\": 44525,\n  \"scup</w>\": 21506,\n  \"scur\": 32742,\n  \"scwx</w>\": 41966,\n  \"scy\": 27471,\n  \"sd\": 3080,\n  \"sd</w>\": 4159,\n  \"sda</w>\": 25548,\n  \"sdale</w>\": 12327,\n  \"sday\": 5902,\n  \"sday</w>\": 1376,\n  \"sdays</w>\": 14491,\n  \"sdc</w>\": 40992,\n  \"sdcc</w>\": 13246,\n  \"sden</w>\": 17241,\n  \"sdf</w>\": 34681,\n  \"sdg</w>\": 20177,\n  \"sdgs</w>\": 16261,\n  \"sdk</w>\": 40015,\n  \"sdlive</w>\": 34561,\n  \"sdn</w>\": 41925,\n  \"sdsu</w>\": 41284,\n  \"se\": 567,\n  \"se</w>\": 611,\n  \"sea\": 5970,\n  \"sea</w>\": 2102,\n  \"seab\": 15728,\n  \"seabir\": 42558,\n  \"seac\": 35626,\n  \"seaf\": 9336,\n  \"seafood</w>\": 12472,\n  \"seag\": 15730,\n  \"seagu\": 38076,\n  \"seagull</w>\": 38858,\n  \"seagulls</w>\": 42215,\n  \"seahawks</w>\": 15341,\n  \"seal\": 21381,\n  \"seal</w>\": 10159,\n  \"sealed</w>\": 13358,\n  \"sealing</w>\": 42992,\n  \"seals</w>\": 18179,\n  \"seam\": 13710,\n  \"seam</w>\": 44201,\n  \"seaman</w>\": 47513,\n  \"seamless</w>\": 29373,\n  \"seamus</w>\": 40175,\n  \"sean\": 11406,\n  \"sean</w>\": 6077,\n  \"seanhannity</w>\": 43316,\n  \"seap\": 29983,\n  \"seaport</w>\": 46418,\n  \"sear\": 1612,\n  \"search\": 23129,\n  \"search</w>\": 1920,\n  \"searched</w>\": 28961,\n  \"searches</w>\": 26378,\n  \"searching</w>\": 10626,\n  \"seared</w>\": 29727,\n  \"sears</w>\": 26693,\n  \"seas\": 7329,\n  \"seas</w>\": 9556,\n  \"seascape</w>\": 42593,\n  \"seaside</w>\": 18867,\n  \"season\": 19288,\n  \"season</w>\": 1367,\n  \"seasonal</w>\": 14215,\n  \"seasoned</w>\": 28399,\n  \"seasoning</w>\": 43439,\n  \"seasons</w>\": 8635,\n  \"seat\": 19670,\n  \"seat</w>\": 4922,\n  \"seated</w>\": 23953,\n  \"seater</w>\": 37543,\n  \"seating</w>\": 16240,\n  \"seats</w>\": 6944,\n  \"seattle\": 24388,\n  \"seattle</w>\": 6274,\n  \"seau</w>\": 32263,\n  \"seaw\": 32658,\n  \"seaweed</w>\": 30204,\n  \"seaworld</w>\": 27422,\n  \"seb\": 35766,\n  \"seb</w>\": 25171,\n  \"sebasti\": 10324,\n  \"sebastian\": 43792,\n  \"sebastian</w>\": 13181,\n  \"sebring</w>\": 41086,\n  \"sec\": 2875,\n  \"sec</w>\": 5338,\n  \"seca</w>\": 37847,\n  \"secco</w>\": 27394,\n  \"sece\": 46297,\n  \"seclu\": 42392,\n  \"secon\": 1846,\n  \"second\": 9329,\n  \"second</w>\": 2241,\n  \"secondary</w>\": 13107,\n  \"seconds</w>\": 6541,\n  \"secre\": 2460,\n  \"secret\": 20710,\n  \"secret</w>\": 4145,\n  \"secretari\": 29515,\n  \"secretariat</w>\": 31767,\n  \"secretary</w>\": 6552,\n  \"secretly</w>\": 21400,\n  \"secrets</w>\": 9735,\n  \"secs</w>\": 28665,\n  \"sect</w>\": 15772,\n  \"section\": 34986,\n  \"section</w>\": 4853,\n  \"sectional</w>\": 21876,\n  \"sections</w>\": 20061,\n  \"sector</w>\": 6579,\n  \"sectors</w>\": 22173,\n  \"secu\": 4894,\n  \"secular\": 47483,\n  \"secular</w>\": 27560,\n  \"secur\": 2557,\n  \"secure\": 44763,\n  \"secure</w>\": 7515,\n  \"secured</w>\": 16848,\n  \"secures</w>\": 31567,\n  \"securing</w>\": 24759,\n  \"securities</w>\": 25080,\n  \"security\": 31245,\n  \"security</w>\": 2741,\n  \"sed\": 14034,\n  \"sed</w>\": 1252,\n  \"sedan</w>\": 24237,\n  \"sedg\": 46926,\n  \"sedge</w>\": 45288,\n  \"sedi\": 29269,\n  \"sedly</w>\": 31771,\n  \"sedona</w>\": 46862,\n  \"seduc\": 19933,\n  \"seductive</w>\": 43721,\n  \"see\": 1751,\n  \"see</w>\": 862,\n  \"seed\": 14064,\n  \"seed</w>\": 6488,\n  \"seeded</w>\": 33688,\n  \"seeding</w>\": 40050,\n  \"seedlings</w>\": 47933,\n  \"seeds</w>\": 9128,\n  \"seeing</w>\": 3214,\n  \"seek</w>\": 8839,\n  \"seeker</w>\": 28011,\n  \"seekers</w>\": 20732,\n  \"seeking</w>\": 8592,\n  \"seeks</w>\": 12594,\n  \"seem\": 20043,\n  \"seem</w>\": 7523,\n  \"seemed</w>\": 17240,\n  \"seemingly</w>\": 25917,\n  \"seems</w>\": 4453,\n  \"seen\": 36273,\n  \"seen</w>\": 2041,\n  \"seer</w>\": 32486,\n  \"sees</w>\": 7594,\n  \"seeyou\": 41279,\n  \"sef</w>\": 27453,\n  \"seg\": 10551,\n  \"sega</w>\": 16122,\n  \"segment</w>\": 15615,\n  \"segments</w>\": 43053,\n  \"segreg\": 49117,\n  \"segregation</w>\": 39086,\n  \"segu\": 33156,\n  \"segun\": 43087,\n  \"seh\": 27536,\n  \"seh</w>\": 41430,\n  \"sehun</w>\": 17705,\n  \"sei\": 13130,\n  \"sei</w>\": 15907,\n  \"sein</w>\": 24669,\n  \"seine</w>\": 41378,\n  \"seinfeld</w>\": 33706,\n  \"seis\": 25559,\n  \"seismic</w>\": 38459,\n  \"seiz\": 22171,\n  \"seize</w>\": 26624,\n  \"seized</w>\": 15826,\n  \"seizure</w>\": 36804,\n  \"seizures</w>\": 47199,\n  \"sek\": 45515,\n  \"sek</w>\": 25880,\n  \"sel\": 1000,\n  \"sel</w>\": 4098,\n  \"sela</w>\": 47006,\n  \"selamat</w>\": 37692,\n  \"selangor</w>\": 44402,\n  \"selby</w>\": 43546,\n  \"selca</w>\": 38606,\n  \"selcaday</w>\": 35924,\n  \"seldom</w>\": 48322,\n  \"sele\": 29137,\n  \"selec\": 3014,\n  \"select</w>\": 8690,\n  \"selected</w>\": 6881,\n  \"selecting</w>\": 32696,\n  \"selection</w>\": 6724,\n  \"selections</w>\": 24099,\n  \"selective</w>\": 28686,\n  \"selects</w>\": 32902,\n  \"selen\": 19970,\n  \"selena</w>\": 14677,\n  \"selenagomez</w>\": 27653,\n  \"seley</w>\": 30556,\n  \"self\": 10139,\n  \"self</w>\": 1322,\n  \"selfcare</w>\": 39560,\n  \"selfi\": 3007,\n  \"selfie\": 26735,\n  \"selfie</w>\": 3666,\n  \"selfies\": 46058,\n  \"selfies</w>\": 10050,\n  \"selfish</w>\": 26907,\n  \"selfless</w>\": 34236,\n  \"sell\": 10279,\n  \"sell</w>\": 5119,\n  \"seller</w>\": 11779,\n  \"sellers</w>\": 16562,\n  \"selling</w>\": 4396,\n  \"sells</w>\": 14306,\n  \"selma</w>\": 36652,\n  \"sels</w>\": 42070,\n  \"selves</w>\": 4505,\n  \"sely</w>\": 8402,\n  \"sem\": 8645,\n  \"sem</w>\": 17106,\n  \"sema</w>\": 31816,\n  \"seman\": 29119,\n  \"seman</w>\": 28378,\n  \"semana</w>\": 41780,\n  \"semb\": 36054,\n  \"seme\": 10855,\n  \"sement</w>\": 10714,\n  \"sements</w>\": 31449,\n  \"semester</w>\": 11905,\n  \"semi\": 11023,\n  \"semi</w>\": 6684,\n  \"semic\": 26967,\n  \"semicon\": 34315,\n  \"semiconduc\": 35646,\n  \"semiconductor</w>\": 43551,\n  \"semifinal</w>\": 22935,\n  \"semifinals</w>\": 21863,\n  \"semin\": 5595,\n  \"seminar</w>\": 7269,\n  \"seminars</w>\": 34870,\n  \"seminary</w>\": 31655,\n  \"seminole</w>\": 42956,\n  \"semis</w>\": 24013,\n  \"semit\": 22628,\n  \"semite</w>\": 23721,\n  \"semitic</w>\": 34894,\n  \"semitism</w>\": 25911,\n  \"semper\": 47391,\n  \"sen\": 1057,\n  \"sen</w>\": 2249,\n  \"sena</w>\": 21584,\n  \"senate\": 30703,\n  \"senate</w>\": 6843,\n  \"senator\": 20871,\n  \"senator</w>\": 8495,\n  \"senators</w>\": 16889,\n  \"send\": 27684,\n  \"send</w>\": 3625,\n  \"sending</w>\": 6985,\n  \"sends</w>\": 10817,\n  \"sene\": 25269,\n  \"seneca</w>\": 33419,\n  \"senegal</w>\": 28255,\n  \"senew\": 49313,\n  \"seng\": 43022,\n  \"seng</w>\": 29971,\n  \"senior\": 19865,\n  \"senior</w>\": 3415,\n  \"seniors</w>\": 8138,\n  \"senna</w>\": 36195,\n  \"senpai</w>\": 46562,\n  \"sens\": 5218,\n  \"sens</w>\": 22837,\n  \"sensation</w>\": 19383,\n  \"sensational</w>\": 23051,\n  \"sense\": 29162,\n  \"sense</w>\": 4747,\n  \"sensei</w>\": 36158,\n  \"senses</w>\": 21809,\n  \"sensi\": 38802,\n  \"sensible</w>\": 30635,\n  \"sensing</w>\": 29236,\n  \"sensiti\": 20531,\n  \"sensitive</w>\": 13734,\n  \"sensitivity</w>\": 27788,\n  \"sensor</w>\": 15330,\n  \"sensors</w>\": 20356,\n  \"sensory</w>\": 21831,\n  \"sensu\": 28157,\n  \"sensual</w>\": 40860,\n  \"sent\": 6200,\n  \"sent</w>\": 3676,\n  \"sentence</w>\": 12737,\n  \"sentenced</w>\": 17773,\n  \"sentences</w>\": 25858,\n  \"sentencing</w>\": 34394,\n  \"senti\": 19042,\n  \"sentim\": 25102,\n  \"sentiment</w>\": 25949,\n  \"sentimental</w>\": 40070,\n  \"sentiments</w>\": 47450,\n  \"sentin\": 20042,\n  \"sentinel</w>\": 23123,\n  \"senting</w>\": 3924,\n  \"seo\": 24743,\n  \"seo</w>\": 8622,\n  \"seok\": 34697,\n  \"seok</w>\": 22482,\n  \"seokjin</w>\": 45584,\n  \"seoul</w>\": 13253,\n  \"sep\": 3212,\n  \"sep</w>\": 10434,\n  \"separ\": 6859,\n  \"separate</w>\": 13886,\n  \"separated</w>\": 22163,\n  \"separately</w>\": 41904,\n  \"separates</w>\": 45365,\n  \"separati\": 39377,\n  \"separating</w>\": 43480,\n  \"separation</w>\": 22007,\n  \"sephora</w>\": 38414,\n  \"sepsis</w>\": 40205,\n  \"sept</w>\": 5380,\n  \"septe\": 3672,\n  \"september</w>\": 3707,\n  \"septic</w>\": 34690,\n  \"sepul\": 47360,\n  \"seq</w>\": 44379,\n  \"sequ\": 5491,\n  \"seque\": 44662,\n  \"sequel</w>\": 15701,\n  \"sequence</w>\": 18833,\n  \"sequences</w>\": 47306,\n  \"sequencing</w>\": 33484,\n  \"sequo\": 32781,\n  \"sequoia</w>\": 42404,\n  \"ser\": 803,\n  \"ser</w>\": 2771,\n  \"sera</w>\": 28250,\n  \"serbia</w>\": 19038,\n  \"serbian</w>\": 33687,\n  \"sere\": 35770,\n  \"seren\": 7880,\n  \"serena</w>\": 19519,\n  \"serenawilliams</w>\": 48316,\n  \"serendip\": 45805,\n  \"serendipity</w>\": 49386,\n  \"serene</w>\": 28269,\n  \"serenity</w>\": 24187,\n  \"serge\": 13477,\n  \"serge</w>\": 35700,\n  \"sergeant</w>\": 22049,\n  \"sergei</w>\": 39870,\n  \"sergey</w>\": 35390,\n  \"sergi\": 47675,\n  \"sergio</w>\": 18359,\n  \"seri\": 2763,\n  \"seri</w>\": 37509,\n  \"serial</w>\": 14216,\n  \"serie</w>\": 19752,\n  \"seriea</w>\": 32660,\n  \"series</w>\": 1857,\n  \"serious\": 47421,\n  \"serious</w>\": 4770,\n  \"seriously</w>\": 4885,\n  \"sermon</w>\": 24884,\n  \"sero\": 48883,\n  \"serpent\": 37084,\n  \"serpent</w>\": 35364,\n  \"serra</w>\": 39851,\n  \"serrano</w>\": 44236,\n  \"sers</w>\": 13509,\n  \"serum</w>\": 25385,\n  \"serv\": 1297,\n  \"serv</w>\": 24571,\n  \"servant</w>\": 20810,\n  \"servants</w>\": 29652,\n  \"serve\": 39202,\n  \"serve</w>\": 2838,\n  \"served</w>\": 4740,\n  \"server\": 36458,\n  \"server</w>\": 8398,\n  \"serverless</w>\": 49243,\n  \"servers</w>\": 22262,\n  \"serves</w>\": 9915,\n  \"servic\": 27115,\n  \"service\": 21496,\n  \"service</w>\": 2086,\n  \"serviced</w>\": 44687,\n  \"services</w>\": 3100,\n  \"servicing</w>\": 41300,\n  \"serving</w>\": 5722,\n  \"sery</w>\": 14279,\n  \"ses\": 23708,\n  \"ses</w>\": 1386,\n  \"sesame</w>\": 21706,\n  \"sese</w>\": 37128,\n  \"sesh</w>\": 24274,\n  \"session</w>\": 2550,\n  \"sessions</w>\": 6327,\n  \"set\": 7965,\n  \"set</w>\": 1167,\n  \"setback</w>\": 43605,\n  \"seth\": 20005,\n  \"seth</w>\": 11870,\n  \"sethu\": 38933,\n  \"setlist</w>\": 33141,\n  \"seton</w>\": 43799,\n  \"sets</w>\": 4650,\n  \"sett\": 4984,\n  \"sett</w>\": 17567,\n  \"sette</w>\": 14613,\n  \"setter</w>\": 23153,\n  \"settes</w>\": 44145,\n  \"setti</w>\": 45170,\n  \"setting</w>\": 5264,\n  \"settings</w>\": 18628,\n  \"settle</w>\": 15075,\n  \"settled</w>\": 18310,\n  \"settlement</w>\": 16494,\n  \"settlements</w>\": 36605,\n  \"settlers</w>\": 35671,\n  \"settles</w>\": 41498,\n  \"settling</w>\": 22036,\n  \"setup</w>\": 11092,\n  \"seu</w>\": 31539,\n  \"seul\": 48975,\n  \"seum</w>\": 18838,\n  \"seun\": 24209,\n  \"seung\": 32393,\n  \"seung</w>\": 33711,\n  \"seungri</w>\": 41627,\n  \"seuss</w>\": 34441,\n  \"sev\": 26585,\n  \"sev</w>\": 37600,\n  \"seva</w>\": 42604,\n  \"seve\": 21458,\n  \"seve</w>\": 22468,\n  \"sevel\": 17439,\n  \"seven\": 7874,\n  \"seven</w>\": 5757,\n  \"sevens</w>\": 29911,\n  \"sevent\": 43048,\n  \"seventeen</w>\": 19337,\n  \"seventh</w>\": 17568,\n  \"seventy</w>\": 47170,\n  \"sever\": 3250,\n  \"sever</w>\": 45557,\n  \"several</w>\": 5560,\n  \"severance</w>\": 26194,\n  \"severe</w>\": 6215,\n  \"severely</w>\": 24417,\n  \"severn</w>\": 34626,\n  \"severy\": 34207,\n  \"sevilla</w>\": 24947,\n  \"seville</w>\": 34988,\n  \"sew</w>\": 28640,\n  \"sewage</w>\": 32777,\n  \"sewer</w>\": 28294,\n  \"sewing</w>\": 15974,\n  \"sewn</w>\": 42118,\n  \"sex\": 3548,\n  \"sex</w>\": 5937,\n  \"sexi\": 20562,\n  \"sexiest</w>\": 25426,\n  \"sexism</w>\": 32059,\n  \"sexist</w>\": 33047,\n  \"sexu\": 14741,\n  \"sexual</w>\": 6749,\n  \"sexuality</w>\": 21244,\n  \"sexually</w>\": 23032,\n  \"sexy\": 21019,\n  \"sexy</w>\": 38127,\n  \"sey\": 6317,\n  \"sey</w>\": 2258,\n  \"seychel\": 36809,\n  \"seychelles</w>\": 38519,\n  \"seye</w>\": 35604,\n  \"seym\": 22657,\n  \"seymour</w>\": 25850,\n  \"seys</w>\": 15081,\n  \"sez</w>\": 42377,\n  \"seÃ±\": 43368,\n  \"sf\": 4435,\n  \"sf</w>\": 4915,\n  \"sfa</w>\": 32675,\n  \"sfam</w>\": 37649,\n  \"sfb</w>\": 27930,\n  \"sfc</w>\": 14129,\n  \"sfest</w>\": 49024,\n  \"sff</w>\": 42056,\n  \"sfgiants</w>\": 20923,\n  \"sfield</w>\": 11801,\n  \"sfo</w>\": 39182,\n  \"sfootball</w>\": 45259,\n  \"sfor\": 9115,\n  \"sford</w>\": 28917,\n  \"sforsale</w>\": 28888,\n  \"sfw</w>\": 18073,\n  \"sfx</w>\": 37995,\n  \"sg\": 9599,\n  \"sg</w>\": 7611,\n  \"sga</w>\": 33049,\n  \"sgate</w>\": 27558,\n  \"sgh</w>\": 47590,\n  \"sgo\": 5393,\n  \"sgo</w>\": 21044,\n  \"sgt</w>\": 13748,\n  \"sh\": 552,\n  \"sh</w>\": 849,\n  \"sha\": 1514,\n  \"sha</w>\": 3337,\n  \"shaa</w>\": 44221,\n  \"shab\": 8323,\n  \"shabbat</w>\": 38042,\n  \"shabby</w>\": 28838,\n  \"shack\": 23866,\n  \"shack</w>\": 18785,\n  \"shad\": 3182,\n  \"shad</w>\": 23874,\n  \"shade\": 34554,\n  \"shade</w>\": 10097,\n  \"shaded</w>\": 43506,\n  \"shades\": 46608,\n  \"shades</w>\": 9270,\n  \"shadesof\": 45180,\n  \"shading</w>\": 37348,\n  \"shado\": 9325,\n  \"shadow\": 15243,\n  \"shadow</w>\": 7068,\n  \"shadowhun\": 19931,\n  \"shadowhunters</w>\": 24834,\n  \"shadowing</w>\": 46092,\n  \"shadows</w>\": 12971,\n  \"shady</w>\": 22158,\n  \"shaf\": 12032,\n  \"shaft</w>\": 21545,\n  \"shag\": 22439,\n  \"shaggy</w>\": 42662,\n  \"shah\": 13203,\n  \"shah</w>\": 8439,\n  \"shahe\": 23643,\n  \"shaheed</w>\": 30060,\n  \"shaheer</w>\": 43969,\n  \"shahi</w>\": 46972,\n  \"shahid\": 25696,\n  \"shahid</w>\": 27138,\n  \"shahidkapoor</w>\": 29892,\n  \"shahzad</w>\": 45915,\n  \"shai</w>\": 47941,\n  \"shaikh</w>\": 45712,\n  \"shail\": 37603,\n  \"shair</w>\": 43135,\n  \"shak\": 8385,\n  \"shake\": 8206,\n  \"shake</w>\": 8251,\n  \"shaken</w>\": 38237,\n  \"shaker</w>\": 26210,\n  \"shakers</w>\": 38411,\n  \"shakes</w>\": 19668,\n  \"shakespe\": 9890,\n  \"shakespeare\": 22499,\n  \"shakespeare</w>\": 12488,\n  \"shakespearesunday</w>\": 32320,\n  \"shaking</w>\": 19101,\n  \"shakira</w>\": 40795,\n  \"shakti\": 48593,\n  \"shakti</w>\": 32458,\n  \"shakur</w>\": 48915,\n  \"shal\": 15056,\n  \"shal</w>\": 28175,\n  \"shale</w>\": 32864,\n  \"shall</w>\": 4742,\n  \"shallow</w>\": 23730,\n  \"shalom</w>\": 31339,\n  \"sham\": 6453,\n  \"sham</w>\": 9005,\n  \"shaman</w>\": 48727,\n  \"shambles</w>\": 40799,\n  \"shame\": 14776,\n  \"shame</w>\": 7593,\n  \"shameful</w>\": 28283,\n  \"shameless</w>\": 25380,\n  \"shaming</w>\": 40553,\n  \"shampoo</w>\": 23944,\n  \"shamrock</w>\": 34199,\n  \"shan\": 5171,\n  \"shan</w>\": 8834,\n  \"shana</w>\": 44835,\n  \"shand\": 29101,\n  \"shane\": 26863,\n  \"shane</w>\": 11572,\n  \"shang\": 11141,\n  \"shanghai</w>\": 12742,\n  \"shani\": 46665,\n  \"shank</w>\": 24685,\n  \"shankar</w>\": 24108,\n  \"shann\": 9932,\n  \"shannon\": 22842,\n  \"shannon</w>\": 13581,\n  \"shant\": 36610,\n  \"shap\": 5581,\n  \"shape\": 26925,\n  \"shape</w>\": 6448,\n  \"shaped</w>\": 10127,\n  \"shapes</w>\": 15377,\n  \"shaping</w>\": 18632,\n  \"shapiro</w>\": 32110,\n  \"shaq\": 46402,\n  \"shaq</w>\": 26843,\n  \"shar\": 1669,\n  \"shar</w>\": 36542,\n  \"shara</w>\": 48849,\n  \"sharapo\": 36489,\n  \"sharapova</w>\": 36671,\n  \"shard</w>\": 42207,\n  \"share\": 7585,\n  \"share</w>\": 1978,\n  \"shared</w>\": 5368,\n  \"shareholder</w>\": 38241,\n  \"shareholders</w>\": 34778,\n  \"sharepoint</w>\": 39213,\n  \"shares</w>\": 4974,\n  \"sharethe\": 49277,\n  \"shareyour\": 45890,\n  \"shari\": 27738,\n  \"shari</w>\": 47390,\n  \"sharia</w>\": 37244,\n  \"sharif</w>\": 15501,\n  \"sharing</w>\": 3567,\n  \"sharjah</w>\": 33420,\n  \"shark\": 15836,\n  \"shark</w>\": 7980,\n  \"sharks</w>\": 10047,\n  \"sharkweek</w>\": 39571,\n  \"sharma</w>\": 10105,\n  \"sharon\": 28722,\n  \"sharon</w>\": 14138,\n  \"sharp\": 17126,\n  \"sharp</w>\": 8157,\n  \"sharpe</w>\": 34374,\n  \"sharpen\": 41465,\n  \"sharpie</w>\": 46858,\n  \"sharply</w>\": 37185,\n  \"shasta</w>\": 46727,\n  \"shat\": 12169,\n  \"shat</w>\": 44388,\n  \"shatter</w>\": 45008,\n  \"shattered</w>\": 26820,\n  \"shau\": 13750,\n  \"shaun\": 23446,\n  \"shaun</w>\": 16669,\n  \"shav\": 11410,\n  \"shave</w>\": 17735,\n  \"shaved</w>\": 25571,\n  \"shaving</w>\": 24261,\n  \"shaw\": 6122,\n  \"shaw</w>\": 6805,\n  \"shawa</w>\": 46413,\n  \"shawl</w>\": 35132,\n  \"shawn\": 16677,\n  \"shawn</w>\": 10970,\n  \"shawnee</w>\": 48060,\n  \"shawnmendes</w>\": 27277,\n  \"shawty</w>\": 38026,\n  \"shay\": 10778,\n  \"shay</w>\": 18361,\n  \"shaykh</w>\": 47223,\n  \"shaz\": 18618,\n  \"shazam</w>\": 29063,\n  \"shc</w>\": 43419,\n  \"shd</w>\": 37729,\n  \"she\": 1729,\n  \"she</w>\": 1043,\n  \"shea</w>\": 20407,\n  \"shead\": 44287,\n  \"shead</w>\": 20434,\n  \"shealth\": 41743,\n  \"shealth</w>\": 22197,\n  \"shear\": 27974,\n  \"shear</w>\": 32108,\n  \"shearer</w>\": 40505,\n  \"sheath</w>\": 45637,\n  \"shed\": 16586,\n  \"shed</w>\": 1492,\n  \"shedding</w>\": 33608,\n  \"sheds</w>\": 25921,\n  \"shee\": 23450,\n  \"shee</w>\": 34321,\n  \"sheed</w>\": 26105,\n  \"sheehan</w>\": 41809,\n  \"sheen</w>\": 25025,\n  \"sheep\": 23604,\n  \"sheep</w>\": 9629,\n  \"sheer</w>\": 17577,\n  \"sheeran</w>\": 18561,\n  \"sheet</w>\": 7298,\n  \"sheets</w>\": 12744,\n  \"shef\": 8237,\n  \"sheff\": 38844,\n  \"sheff</w>\": 43821,\n  \"sheffiel\": 26940,\n  \"sheffield\": 41763,\n  \"sheffield</w>\": 10420,\n  \"sheffieldissuper</w>\": 33628,\n  \"sheh\": 31667,\n  \"sheikh</w>\": 15031,\n  \"sheil\": 42765,\n  \"sheila</w>\": 25734,\n  \"shek</w>\": 33285,\n  \"shel\": 3159,\n  \"shelby\": 36906,\n  \"shelby</w>\": 16885,\n  \"sheldon</w>\": 25079,\n  \"shelf</w>\": 10955,\n  \"shell\": 23374,\n  \"shell</w>\": 6648,\n  \"shelley</w>\": 22497,\n  \"shelling</w>\": 43166,\n  \"shells</w>\": 19265,\n  \"shelly</w>\": 37461,\n  \"shelter</w>\": 8599,\n  \"sheltered</w>\": 48070,\n  \"shelters</w>\": 24312,\n  \"shelton</w>\": 24471,\n  \"shelves</w>\": 16225,\n  \"shem</w>\": 40299,\n  \"shen\": 10154,\n  \"shen</w>\": 31098,\n  \"shenan\": 20965,\n  \"shenando\": 44666,\n  \"shenanigans</w>\": 26590,\n  \"shenko</w>\": 39751,\n  \"shenmue</w>\": 48279,\n  \"shenzhen</w>\": 38970,\n  \"shep\": 33757,\n  \"shep</w>\": 44857,\n  \"shepard</w>\": 26810,\n  \"shepher\": 11008,\n  \"shepherd</w>\": 13242,\n  \"shepherds</w>\": 42792,\n  \"sheppard</w>\": 37304,\n  \"sher\": 3570,\n  \"sher</w>\": 4510,\n  \"sheraton</w>\": 39400,\n  \"shere</w>\": 21507,\n  \"sheri\": 9235,\n  \"sheridan</w>\": 27085,\n  \"sheriff</w>\": 10309,\n  \"sherlock</w>\": 17294,\n  \"sherman</w>\": 17822,\n  \"sherry\": 44348,\n  \"sherry</w>\": 24689,\n  \"shers</w>\": 14141,\n  \"sherwood</w>\": 24527,\n  \"sheryl</w>\": 39773,\n  \"shes\": 45514,\n  \"shes</w>\": 2502,\n  \"shet\": 15850,\n  \"shetland</w>\": 29595,\n  \"shetty</w>\": 25533,\n  \"shev\": 45182,\n  \"sheva</w>\": 45132,\n  \"shh</w>\": 35025,\n  \"shhh</w>\": 36932,\n  \"shi\": 823,\n  \"shi</w>\": 3533,\n  \"shia</w>\": 23791,\n  \"shibu\": 36177,\n  \"shibuya</w>\": 41623,\n  \"shie</w>\": 26638,\n  \"shiel\": 33413,\n  \"shield</w>\": 8670,\n  \"shields</w>\": 19085,\n  \"shies</w>\": 35312,\n  \"shif\": 35317,\n  \"shift\": 43767,\n  \"shift</w>\": 6905,\n  \"shifted</w>\": 34429,\n  \"shifter</w>\": 48944,\n  \"shifting</w>\": 21992,\n  \"shifts</w>\": 23957,\n  \"shik</w>\": 36980,\n  \"shil\": 14370,\n  \"shill\": 32121,\n  \"shill</w>\": 30090,\n  \"shilpa\": 47062,\n  \"shilpa</w>\": 40690,\n  \"shim\": 11986,\n  \"shim</w>\": 32780,\n  \"shima</w>\": 14382,\n  \"shimano</w>\": 48904,\n  \"shimi</w>\": 40517,\n  \"shimmer</w>\": 38792,\n  \"shin\": 5664,\n  \"shin</w>\": 11784,\n  \"shinde</w>\": 41516,\n  \"shine\": 17582,\n  \"shine</w>\": 3780,\n  \"shinee</w>\": 19660,\n  \"shines</w>\": 16015,\n  \"shing\": 38641,\n  \"shing</w>\": 1743,\n  \"shining</w>\": 10485,\n  \"shino\": 43074,\n  \"shiny</w>\": 12190,\n  \"ship\": 7645,\n  \"ship</w>\": 1158,\n  \"shipment</w>\": 28553,\n  \"shipp\": 34709,\n  \"shipped</w>\": 15279,\n  \"shippers</w>\": 44789,\n  \"shipping</w>\": 5721,\n  \"ships</w>\": 3262,\n  \"shipwreck</w>\": 48878,\n  \"shipy\": 26828,\n  \"shipyard</w>\": 31273,\n  \"shir\": 1956,\n  \"shiraz</w>\": 35618,\n  \"shire\": 11975,\n  \"shire</w>\": 2968,\n  \"shirehour</w>\": 32456,\n  \"shirley</w>\": 18189,\n  \"shiro</w>\": 26048,\n  \"shirt\": 27576,\n  \"shirt</w>\": 2523,\n  \"shirtless</w>\": 28959,\n  \"shirts</w>\": 5803,\n  \"shistory</w>\": 34979,\n  \"shiv\": 18042,\n  \"shiv</w>\": 37121,\n  \"shiva\": 33881,\n  \"shiva</w>\": 21174,\n  \"shka</w>\": 38944,\n  \"shld</w>\": 49359,\n  \"shma</w>\": 48074,\n  \"shment</w>\": 8802,\n  \"shments</w>\": 18822,\n  \"sho\": 719,\n  \"sho</w>\": 13756,\n  \"shock\": 19617,\n  \"shock</w>\": 8736,\n  \"shocked</w>\": 15787,\n  \"shocker</w>\": 37971,\n  \"shockey</w>\": 22258,\n  \"shocking</w>\": 13394,\n  \"shocks</w>\": 31886,\n  \"shoe\": 16308,\n  \"shoe</w>\": 7342,\n  \"shoes\": 49391,\n  \"shoes</w>\": 4079,\n  \"shol\": 21472,\n  \"sholm</w>\": 44139,\n  \"shome</w>\": 42701,\n  \"shon\": 19526,\n  \"shon</w>\": 37621,\n  \"shone</w>\": 47173,\n  \"shoo\": 1975,\n  \"shook</w>\": 20730,\n  \"shoops</w>\": 29956,\n  \"shoot\": 12531,\n  \"shoot</w>\": 3704,\n  \"shooter</w>\": 13645,\n  \"shooters</w>\": 31902,\n  \"shooting</w>\": 3992,\n  \"shootings</w>\": 26753,\n  \"shootout</w>\": 20666,\n  \"shoots</w>\": 14144,\n  \"shop\": 5738,\n  \"shop</w>\": 1557,\n  \"shopify</w>\": 47949,\n  \"shoplocal</w>\": 21775,\n  \"shopp\": 38486,\n  \"shoppe</w>\": 38236,\n  \"shopped</w>\": 28088,\n  \"shopper</w>\": 24346,\n  \"shoppers</w>\": 22316,\n  \"shopping\": 42101,\n  \"shopping</w>\": 4266,\n  \"shops</w>\": 6467,\n  \"shopsmall</w>\": 35942,\n  \"shor\": 3209,\n  \"shore\": 14717,\n  \"shore</w>\": 5928,\n  \"shored\": 33140,\n  \"shoreditch</w>\": 35042,\n  \"shoreline</w>\": 34807,\n  \"shores</w>\": 18102,\n  \"short\": 6803,\n  \"short</w>\": 3005,\n  \"shortage</w>\": 19910,\n  \"shortages</w>\": 38730,\n  \"shortcuts</w>\": 45793,\n  \"shorten</w>\": 41711,\n  \"shorter</w>\": 20350,\n  \"shortest</w>\": 33717,\n  \"shortfilm</w>\": 37204,\n  \"shorth\": 37397,\n  \"shortlist</w>\": 28163,\n  \"shortlisted</w>\": 20631,\n  \"shortly</w>\": 11967,\n  \"shorts</w>\": 9680,\n  \"shorty</w>\": 33502,\n  \"shot\": 9805,\n  \"shot</w>\": 2000,\n  \"shotel</w>\": 42365,\n  \"shotgun</w>\": 21643,\n  \"shots</w>\": 5342,\n  \"shou\": 3890,\n  \"shoul\": 29847,\n  \"should\": 14947,\n  \"should</w>\": 1535,\n  \"shoulder</w>\": 8476,\n  \"shoulders</w>\": 18738,\n  \"shouldn</w>\": 9416,\n  \"shour</w>\": 20025,\n  \"shouse</w>\": 28671,\n  \"shout\": 7335,\n  \"shout</w>\": 5214,\n  \"shouted</w>\": 44397,\n  \"shouting</w>\": 26464,\n  \"shoutout</w>\": 8274,\n  \"shouts</w>\": 26709,\n  \"shovel</w>\": 31778,\n  \"show\": 2133,\n  \"show</w>\": 1080,\n  \"showbiz</w>\": 34156,\n  \"showcas\": 14290,\n  \"showcase</w>\": 7265,\n  \"showcased</w>\": 35786,\n  \"showcases</w>\": 26266,\n  \"showcasing</w>\": 17036,\n  \"showdown</w>\": 15576,\n  \"showed</w>\": 7150,\n  \"shower</w>\": 7777,\n  \"showers</w>\": 9893,\n  \"showing</w>\": 3649,\n  \"shown</w>\": 8506,\n  \"showroom</w>\": 16821,\n  \"shows</w>\": 2665,\n  \"showtime\": 40576,\n  \"showtime</w>\": 15442,\n  \"showyour\": 46733,\n  \"shp</w>\": 38341,\n  \"shq</w>\": 21145,\n  \"shr\": 10118,\n  \"shra\": 21360,\n  \"shradd\": 28172,\n  \"shraddha\": 35208,\n  \"shraddhakapoor</w>\": 40385,\n  \"shre\": 12101,\n  \"shred\": 19756,\n  \"shred</w>\": 33017,\n  \"shredded</w>\": 31772,\n  \"shredding</w>\": 45534,\n  \"shree</w>\": 37410,\n  \"shrek</w>\": 35009,\n  \"shrews\": 26411,\n  \"shrewsbury</w>\": 30921,\n  \"shri\": 8838,\n  \"shri</w>\": 11424,\n  \"shrimp</w>\": 12727,\n  \"shrin\": 24865,\n  \"shrine</w>\": 16156,\n  \"shrink</w>\": 34957,\n  \"shrinking</w>\": 41243,\n  \"shrm</w>\": 44163,\n  \"shro\": 15259,\n  \"shroff</w>\": 32081,\n  \"shrop\": 22630,\n  \"shropshire</w>\": 26344,\n  \"shru\": 14911,\n  \"shrub</w>\": 41464,\n  \"shrubs</w>\": 47975,\n  \"shrun\": 46767,\n  \"shs</w>\": 16184,\n  \"sht</w>\": 44210,\n  \"shti</w>\": 38927,\n  \"shu\": 2872,\n  \"shu</w>\": 17651,\n  \"shua</w>\": 33771,\n  \"shub</w>\": 40552,\n  \"shud</w>\": 45782,\n  \"shuff\": 42641,\n  \"shuffle</w>\": 21681,\n  \"shui</w>\": 45473,\n  \"shuk\": 29927,\n  \"shukla</w>\": 46829,\n  \"shul\": 30721,\n  \"shum\": 37383,\n  \"shun\": 24479,\n  \"shun</w>\": 39594,\n  \"shur\": 41032,\n  \"shut\": 8702,\n  \"shut</w>\": 8282,\n  \"shutdown</w>\": 16051,\n  \"shutout</w>\": 24385,\n  \"shuts</w>\": 28313,\n  \"shutt\": 31866,\n  \"shutter\": 36235,\n  \"shutter</w>\": 33902,\n  \"shutters</w>\": 46894,\n  \"shutting</w>\": 31383,\n  \"shuttle</w>\": 15842,\n  \"shwar</w>\": 41640,\n  \"shy\": 22678,\n  \"shy</w>\": 9682,\n  \"si\": 564,\n  \"si</w>\": 2990,\n  \"sia</w>\": 2357,\n  \"siam\": 29686,\n  \"siam</w>\": 48248,\n  \"siamese</w>\": 43161,\n  \"sian\": 28510,\n  \"sian</w>\": 6221,\n  \"sians</w>\": 26583,\n  \"sias</w>\": 28645,\n  \"siber\": 22206,\n  \"siberia</w>\": 39969,\n  \"siberian</w>\": 34058,\n  \"sibl\": 14338,\n  \"sible</w>\": 14507,\n  \"sibling\": 43060,\n  \"sibling</w>\": 23779,\n  \"siblings</w>\": 17156,\n  \"sic\": 8278,\n  \"sic</w>\": 1118,\n  \"sica</w>\": 34125,\n  \"sical</w>\": 33875,\n  \"sichuan</w>\": 48950,\n  \"sicilian</w>\": 45292,\n  \"sicily</w>\": 23179,\n  \"sick\": 11143,\n  \"sick</w>\": 5359,\n  \"sickest</w>\": 47972,\n  \"sickle</w>\": 41459,\n  \"sickness</w>\": 28898,\n  \"sics</w>\": 26297,\n  \"sid\": 10117,\n  \"sid</w>\": 15119,\n  \"sidd\": 19842,\n  \"siddi\": 35227,\n  \"side\": 5869,\n  \"side</w>\": 1145,\n  \"sided</w>\": 21061,\n  \"sidekick</w>\": 44683,\n  \"sidel\": 43557,\n  \"sideline</w>\": 32056,\n  \"sidelines</w>\": 31046,\n  \"sider</w>\": 30581,\n  \"siders</w>\": 41249,\n  \"sides</w>\": 7578,\n  \"sideshow</w>\": 46789,\n  \"sidewalk</w>\": 23278,\n  \"sidewalks</w>\": 43583,\n  \"sideways</w>\": 35593,\n  \"siding</w>\": 38758,\n  \"sidney</w>\": 22598,\n  \"sie\": 8533,\n  \"sie</w>\": 5685,\n  \"sieg\": 49203,\n  \"siege</w>\": 18460,\n  \"siegel</w>\": 48559,\n  \"siem\": 18434,\n  \"siemens</w>\": 30147,\n  \"siempre</w>\": 44030,\n  \"siena</w>\": 33336,\n  \"sienna</w>\": 40373,\n  \"sier\": 10028,\n  \"sier</w>\": 7444,\n  \"sierra</w>\": 13552,\n  \"siers</w>\": 35923,\n  \"sies</w>\": 16367,\n  \"siest</w>\": 18323,\n  \"sif</w>\": 29300,\n  \"sig\": 872,\n  \"sig</w>\": 19145,\n  \"sigh\": 36303,\n  \"sigh</w>\": 15505,\n  \"sighs</w>\": 44579,\n  \"sight\": 16897,\n  \"sight</w>\": 6329,\n  \"sighted</w>\": 33034,\n  \"sighting</w>\": 17507,\n  \"sightings</w>\": 30004,\n  \"sights</w>\": 17364,\n  \"sightseeing</w>\": 34210,\n  \"sigma\": 45075,\n  \"sigma</w>\": 15697,\n  \"sign\": 5538,\n  \"sign</w>\": 2292,\n  \"signage</w>\": 21156,\n  \"signal</w>\": 10781,\n  \"signaling</w>\": 38492,\n  \"signalling</w>\": 48426,\n  \"signals</w>\": 17150,\n  \"signation</w>\": 24347,\n  \"signature</w>\": 9189,\n  \"signatures</w>\": 21865,\n  \"signed</w>\": 3163,\n  \"signee</w>\": 39778,\n  \"signi\": 34023,\n  \"signific\": 6374,\n  \"significance</w>\": 23769,\n  \"significant</w>\": 8735,\n  \"significantly</w>\": 16187,\n  \"signing</w>\": 4401,\n  \"signingday</w>\": 40282,\n  \"signings</w>\": 27731,\n  \"signs</w>\": 4659,\n  \"signup</w>\": 40791,\n  \"sigue</w>\": 49401,\n  \"sii</w>\": 36672,\n  \"sik\": 19974,\n  \"sik</w>\": 22413,\n  \"sika</w>\": 31144,\n  \"sikh</w>\": 21829,\n  \"sikhs</w>\": 45426,\n  \"sil\": 1556,\n  \"sil</w>\": 8315,\n  \"sila</w>\": 41754,\n  \"sile\": 37620,\n  \"silen\": 39048,\n  \"silence</w>\": 8462,\n  \"silenced</w>\": 45415,\n  \"silent\": 30352,\n  \"silent</w>\": 8487,\n  \"silently</w>\": 42640,\n  \"silhou\": 20589,\n  \"silhouette</w>\": 26149,\n  \"silic\": 23830,\n  \"silicon\": 32412,\n  \"silicon</w>\": 17888,\n  \"silicone</w>\": 28221,\n  \"silk\": 25891,\n  \"silk</w>\": 9743,\n  \"silky</w>\": 29554,\n  \"sill\": 42468,\n  \"sill</w>\": 48024,\n  \"silly</w>\": 11883,\n  \"silon</w>\": 31841,\n  \"sils</w>\": 39708,\n  \"silva</w>\": 16489,\n  \"silve\": 37697,\n  \"silver\": 7525,\n  \"silver</w>\": 3467,\n  \"silverado</w>\": 46160,\n  \"silverstone</w>\": 29666,\n  \"silvia</w>\": 37289,\n  \"sim\": 5026,\n  \"sim</w>\": 10740,\n  \"sima</w>\": 35871,\n  \"simba</w>\": 39492,\n  \"simcoe</w>\": 47148,\n  \"sime\": 28329,\n  \"simi</w>\": 38073,\n  \"simil\": 7202,\n  \"similar</w>\": 8547,\n  \"similarities</w>\": 34716,\n  \"simm\": 13001,\n  \"simmons</w>\": 14699,\n  \"simo</w>\": 37171,\n  \"simon\": 8796,\n  \"simon</w>\": 6668,\n  \"simona</w>\": 46277,\n  \"simone</w>\": 19062,\n  \"simons</w>\": 33097,\n  \"simp\": 2542,\n  \"simple\": 19018,\n  \"simple</w>\": 4129,\n  \"simpler</w>\": 35489,\n  \"simplest</w>\": 39588,\n  \"simpli\": 16868,\n  \"simplicity</w>\": 21262,\n  \"simplified</w>\": 36647,\n  \"simplify</w>\": 35479,\n  \"simply\": 25637,\n  \"simply</w>\": 6151,\n  \"simpson\": 41805,\n  \"simpson</w>\": 11750,\n  \"simpsons</w>\": 21092,\n  \"sims</w>\": 14021,\n  \"simul\": 9845,\n  \"simulated</w>\": 46395,\n  \"simulation</w>\": 18610,\n  \"simulator</w>\": 20821,\n  \"simultaneous</w>\": 48816,\n  \"simultaneously</w>\": 28575,\n  \"sin\": 1303,\n  \"sin</w>\": 3421,\n  \"sina</w>\": 19541,\n  \"sinai</w>\": 33226,\n  \"sinatra</w>\": 27262,\n  \"sinc</w>\": 30464,\n  \"since</w>\": 1855,\n  \"sincere\": 24513,\n  \"sincere</w>\": 24886,\n  \"sincerely</w>\": 25673,\n  \"sinclair</w>\": 23100,\n  \"sind\": 39598,\n  \"sind</w>\": 30877,\n  \"sindh</w>\": 20754,\n  \"sindia</w>\": 48038,\n  \"sine\": 22741,\n  \"sine</w>\": 33793,\n  \"sinfo</w>\": 47178,\n  \"sing\": 1387,\n  \"sing</w>\": 1197,\n  \"singapo\": 27861,\n  \"singapore\": 28879,\n  \"singapore</w>\": 6754,\n  \"singer\": 33880,\n  \"singer</w>\": 5108,\n  \"singers</w>\": 15613,\n  \"singersongwriter</w>\": 44585,\n  \"singh\": 19445,\n  \"singh</w>\": 5715,\n  \"singing</w>\": 5864,\n  \"single\": 19524,\n  \"single</w>\": 2688,\n  \"singles</w>\": 12025,\n  \"singleton</w>\": 46247,\n  \"singly</w>\": 16619,\n  \"sings</w>\": 13635,\n  \"singul\": 34003,\n  \"singular</w>\": 44009,\n  \"singularity</w>\": 48410,\n  \"sinha</w>\": 29416,\n  \"sini\": 41781,\n  \"sini</w>\": 26319,\n  \"sinister</w>\": 31313,\n  \"sink\": 37232,\n  \"sink</w>\": 14551,\n  \"sinking</w>\": 27949,\n  \"sinks</w>\": 32710,\n  \"sinn</w>\": 36315,\n  \"sinner</w>\": 45380,\n  \"sinners</w>\": 43436,\n  \"sino</w>\": 29759,\n  \"sins</w>\": 9345,\n  \"sinthe\": 30737,\n  \"sinu\": 37351,\n  \"sinus</w>\": 47535,\n  \"sio</w>\": 10807,\n  \"siob\": 40954,\n  \"siology</w>\": 46315,\n  \"sion\": 5676,\n  \"sion</w>\": 1015,\n  \"sional</w>\": 14533,\n  \"sionally</w>\": 30754,\n  \"sions</w>\": 4060,\n  \"sioux\": 44695,\n  \"sioux</w>\": 24954,\n  \"sip</w>\": 16096,\n  \"sipping</w>\": 28527,\n  \"sir\": 10708,\n  \"sir</w>\": 3846,\n  \"sire</w>\": 28450,\n  \"siren</w>\": 33026,\n  \"sirens</w>\": 35907,\n  \"siri\": 13986,\n  \"siri</w>\": 18394,\n  \"sirius\": 23574,\n  \"sirius</w>\": 34999,\n  \"siriusxm</w>\": 29833,\n  \"sirloin</w>\": 46828,\n  \"sis\": 18132,\n  \"sis</w>\": 2580,\n  \"sisd</w>\": 27132,\n  \"sisi</w>\": 37892,\n  \"siss\": 42929,\n  \"sissy</w>\": 27564,\n  \"sist</w>\": 20520,\n  \"sista</w>\": 37448,\n  \"sister\": 17417,\n  \"sister</w>\": 3677,\n  \"sisterhood</w>\": 37313,\n  \"sisters</w>\": 6404,\n  \"sit\": 7387,\n  \"sit</w>\": 4037,\n  \"sitcom</w>\": 30426,\n  \"site\": 26792,\n  \"site</w>\": 1988,\n  \"sites</w>\": 7236,\n  \"sith</w>\": 41499,\n  \"sito</w>\": 42613,\n  \"sits</w>\": 12726,\n  \"sitt\": 42988,\n  \"sitter</w>\": 40777,\n  \"sittin</w>\": 40887,\n  \"sitting</w>\": 4919,\n  \"situ\": 5562,\n  \"situ</w>\": 42536,\n  \"situated</w>\": 22030,\n  \"situation</w>\": 7144,\n  \"situations</w>\": 19096,\n  \"sity\": 38177,\n  \"sity</w>\": 5477,\n  \"siu</w>\": 40174,\n  \"sium</w>\": 8090,\n  \"sius</w>\": 27595,\n  \"siva</w>\": 20991,\n  \"sivan</w>\": 36931,\n  \"sive\": 23572,\n  \"sive</w>\": 1875,\n  \"sively</w>\": 10343,\n  \"siveness</w>\": 39667,\n  \"sives</w>\": 23896,\n  \"sivity</w>\": 42738,\n  \"siwon</w>\": 29055,\n  \"six\": 5968,\n  \"six</w>\": 4093,\n  \"sixers</w>\": 25941,\n  \"sixteen</w>\": 28677,\n  \"sixth</w>\": 12909,\n  \"sixties</w>\": 44948,\n  \"sixty</w>\": 32588,\n  \"siya</w>\": 44440,\n  \"size\": 38377,\n  \"size</w>\": 3235,\n  \"sized</w>\": 9832,\n  \"sizes</w>\": 10253,\n  \"sizing</w>\": 28330,\n  \"sizz\": 23778,\n  \"sizzle</w>\": 47890,\n  \"sizzling</w>\": 35799,\n  \"sj\": 7536,\n  \"sj</w>\": 16010,\n  \"sjo\": 42012,\n  \"sk\": 909,\n  \"sk</w>\": 2058,\n  \"ska</w>\": 7495,\n  \"skag\": 31948,\n  \"skan\": 46772,\n  \"skar\": 27587,\n  \"skar</w>\": 26835,\n  \"skate\": 13740,\n  \"skate</w>\": 12745,\n  \"skateboard</w>\": 31777,\n  \"skateboarding</w>\": 31352,\n  \"skater</w>\": 30337,\n  \"skaters</w>\": 39824,\n  \"skates</w>\": 31479,\n  \"skc</w>\": 44551,\n  \"ske\": 6261,\n  \"ske</w>\": 25516,\n  \"skel\": 36564,\n  \"skelet\": 27075,\n  \"skeletal</w>\": 37369,\n  \"skeleton</w>\": 20062,\n  \"skeletons</w>\": 48874,\n  \"skell</w>\": 40801,\n  \"skep\": 27772,\n  \"skeptical</w>\": 44934,\n  \"sker\": 37640,\n  \"sker</w>\": 33600,\n  \"sket\": 3744,\n  \"sketch\": 11767,\n  \"sketch</w>\": 5269,\n  \"sketchbook</w>\": 18899,\n  \"sketched</w>\": 38581,\n  \"sketches</w>\": 17622,\n  \"sketching</w>\": 23228,\n  \"sketchy</w>\": 41582,\n  \"skey</w>\": 37453,\n  \"ski\": 3327,\n  \"ski</w>\": 3428,\n  \"skid\": 36574,\n  \"skid</w>\": 32099,\n  \"skier</w>\": 42585,\n  \"skies</w>\": 7244,\n  \"skiing</w>\": 14400,\n  \"skil\": 24543,\n  \"skill\": 15598,\n  \"skill</w>\": 10604,\n  \"skilled</w>\": 17535,\n  \"skillet</w>\": 40568,\n  \"skills</w>\": 4113,\n  \"skim\": 33191,\n  \"skin\": 5821,\n  \"skin</w>\": 3575,\n  \"skincare</w>\": 12648,\n  \"skine</w>\": 37300,\n  \"sking\": 46215,\n  \"skinned</w>\": 42199,\n  \"skinner</w>\": 30261,\n  \"skinny\": 42729,\n  \"skinny</w>\": 15457,\n  \"skins</w>\": 11594,\n  \"skip\": 39793,\n  \"skip</w>\": 14296,\n  \"skipped</w>\": 40639,\n  \"skipper</w>\": 22226,\n  \"skipping</w>\": 34867,\n  \"skir\": 8919,\n  \"skirt</w>\": 12386,\n  \"skirts</w>\": 24840,\n  \"skis</w>\": 32843,\n  \"skit</w>\": 43573,\n  \"skitchen</w>\": 42820,\n  \"skittles</w>\": 43213,\n  \"sko\": 15141,\n  \"sko</w>\": 23493,\n  \"skoda</w>\": 38668,\n  \"skool</w>\": 26743,\n  \"skril\": 43149,\n  \"skrillex</w>\": 43651,\n  \"sks</w>\": 48136,\n  \"sku\": 10836,\n  \"skul\": 17561,\n  \"skull\": 34068,\n  \"skull</w>\": 12092,\n  \"skulls</w>\": 31804,\n  \"skunk</w>\": 42194,\n  \"sky\": 3075,\n  \"sky</w>\": 2390,\n  \"skybet\": 45540,\n  \"skye</w>\": 21475,\n  \"skyl\": 43554,\n  \"skylar</w>\": 45411,\n  \"skyline</w>\": 14606,\n  \"skymap</w>\": 41734,\n  \"skynews</w>\": 40977,\n  \"skype</w>\": 17069,\n  \"skyrim</w>\": 33693,\n  \"skysports\": 39845,\n  \"skysports</w>\": 46725,\n  \"skywalker</w>\": 32936,\n  \"sl\": 2621,\n  \"sl</w>\": 7489,\n  \"sla\": 2725,\n  \"sla</w>\": 26707,\n  \"slab</w>\": 24241,\n  \"slabs</w>\": 42818,\n  \"slack\": 37108,\n  \"slack</w>\": 30142,\n  \"slade</w>\": 33546,\n  \"slain</w>\": 35972,\n  \"slalom</w>\": 43540,\n  \"slam\": 14891,\n  \"slam</w>\": 10131,\n  \"slammed</w>\": 29772,\n  \"slams</w>\": 18907,\n  \"slan\": 44663,\n  \"slan</w>\": 47193,\n  \"sland</w>\": 11294,\n  \"slang</w>\": 33655,\n  \"slap\": 48830,\n  \"slap</w>\": 21751,\n  \"slapped</w>\": 38861,\n  \"slaps</w>\": 46796,\n  \"slash</w>\": 19749,\n  \"slat\": 38966,\n  \"slate</w>\": 17919,\n  \"slated</w>\": 36094,\n  \"slater</w>\": 25968,\n  \"slaugh\": 26782,\n  \"slaughter</w>\": 19815,\n  \"slaughtered</w>\": 46615,\n  \"slav</w>\": 47292,\n  \"slava</w>\": 41797,\n  \"slave</w>\": 14029,\n  \"slavery</w>\": 15754,\n  \"slaves</w>\": 23833,\n  \"slaw</w>\": 28178,\n  \"slay\": 48319,\n  \"slay</w>\": 19380,\n  \"slayed</w>\": 44870,\n  \"slayer</w>\": 21605,\n  \"slaying</w>\": 27812,\n  \"slays</w>\": 45648,\n  \"slc</w>\": 21972,\n  \"sle\": 1709,\n  \"sleague</w>\": 23336,\n  \"sled</w>\": 28438,\n  \"sledge</w>\": 48750,\n  \"slee\": 17642,\n  \"slee</w>\": 38977,\n  \"sleek</w>\": 23187,\n  \"sleep\": 4656,\n  \"sleep</w>\": 3840,\n  \"sleeper</w>\": 28709,\n  \"sleeping</w>\": 6982,\n  \"sleepless</w>\": 39779,\n  \"sleepover</w>\": 39415,\n  \"sleeps</w>\": 16610,\n  \"sleepy\": 32572,\n  \"sleepy</w>\": 14497,\n  \"sleet</w>\": 36948,\n  \"sleeve\": 35270,\n  \"sleeve</w>\": 10536,\n  \"sleeveless</w>\": 38049,\n  \"sleeves</w>\": 19691,\n  \"sleg</w>\": 47650,\n  \"sleigh</w>\": 30865,\n  \"slender</w>\": 40331,\n  \"slept</w>\": 20388,\n  \"sler</w>\": 14066,\n  \"sley\": 17198,\n  \"sley</w>\": 6496,\n  \"sli\": 1811,\n  \"sli</w>\": 44824,\n  \"slic\": 19692,\n  \"slice</w>\": 13431,\n  \"sliced</w>\": 28121,\n  \"slices</w>\": 28424,\n  \"slick</w>\": 18341,\n  \"slide\": 27828,\n  \"slide</w>\": 8837,\n  \"slider</w>\": 37861,\n  \"sliders</w>\": 40700,\n  \"slides</w>\": 15939,\n  \"slideshow</w>\": 42817,\n  \"sliding</w>\": 21468,\n  \"slife</w>\": 15448,\n  \"sliga</w>\": 21080,\n  \"slight</w>\": 14297,\n  \"slightly</w>\": 8456,\n  \"sligo</w>\": 30424,\n  \"slike\": 38744,\n  \"slim\": 35226,\n  \"slim</w>\": 12364,\n  \"slime</w>\": 29107,\n  \"sling\": 28021,\n  \"sling</w>\": 32607,\n  \"slinger</w>\": 47269,\n  \"slions</w>\": 43363,\n  \"slip\": 39785,\n  \"slip</w>\": 12105,\n  \"slipknot</w>\": 41816,\n  \"slipped</w>\": 30344,\n  \"slipper</w>\": 39644,\n  \"slippers</w>\": 26509,\n  \"slippery</w>\": 30814,\n  \"slipping</w>\": 36301,\n  \"slips</w>\": 30632,\n  \"slist</w>\": 33749,\n  \"slit</w>\": 47011,\n  \"slive</w>\": 31652,\n  \"slo\": 4303,\n  \"slo</w>\": 36083,\n  \"sloan</w>\": 29110,\n  \"sloane</w>\": 41553,\n  \"slogan</w>\": 23398,\n  \"slogans</w>\": 42795,\n  \"slope</w>\": 22769,\n  \"slopes</w>\": 24066,\n  \"sloppy</w>\": 36154,\n  \"slot</w>\": 14500,\n  \"sloth</w>\": 30007,\n  \"slots</w>\": 19238,\n  \"slou\": 48493,\n  \"slovak\": 23315,\n  \"slovakia</w>\": 25994,\n  \"sloven\": 17018,\n  \"slovenia</w>\": 21037,\n  \"slow\": 6674,\n  \"slow</w>\": 5444,\n  \"slowdown</w>\": 38421,\n  \"slowed</w>\": 43793,\n  \"slower</w>\": 29181,\n  \"slowing</w>\": 29839,\n  \"slowly</w>\": 9568,\n  \"slows</w>\": 46855,\n  \"slp</w>\": 45599,\n  \"slr</w>\": 21325,\n  \"sls</w>\": 33651,\n  \"slt</w>\": 39283,\n  \"sltd</w>\": 36388,\n  \"slu\": 7224,\n  \"slu</w>\": 47456,\n  \"slug</w>\": 34190,\n  \"slugger</w>\": 48671,\n  \"slum</w>\": 46754,\n  \"slumber</w>\": 44295,\n  \"slump</w>\": 35588,\n  \"slur\": 30476,\n  \"slush</w>\": 39815,\n  \"slv</w>\": 45526,\n  \"sly\": 28145,\n  \"sly</w>\": 21062,\n  \"sm\": 978,\n  \"sm</w>\": 2764,\n  \"sma\": 4357,\n  \"sma</w>\": 11854,\n  \"smack\": 21280,\n  \"smack</w>\": 30026,\n  \"smackdown</w>\": 26138,\n  \"smafia</w>\": 47686,\n  \"smag</w>\": 32212,\n  \"smal\": 48379,\n  \"small\": 5244,\n  \"small</w>\": 2442,\n  \"smallbiz\": 41724,\n  \"smallbiz</w>\": 18987,\n  \"smallbusiness</w>\": 21316,\n  \"smalle\": 18490,\n  \"smaller</w>\": 12431,\n  \"smallest</w>\": 18686,\n  \"smalls</w>\": 41696,\n  \"sman</w>\": 9612,\n  \"smar\": 3201,\n  \"smart\": 5383,\n  \"smart</w>\": 4115,\n  \"smartcities</w>\": 34822,\n  \"smartcity</w>\": 33973,\n  \"smarter</w>\": 18990,\n  \"smartest</w>\": 37092,\n  \"smarthome</w>\": 47726,\n  \"smartphone</w>\": 11290,\n  \"smartphones</w>\": 22212,\n  \"smartwatch</w>\": 35798,\n  \"smash\": 17258,\n  \"smash</w>\": 10332,\n  \"smashbros</w>\": 44897,\n  \"smashed</w>\": 18410,\n  \"smashes</w>\": 45657,\n  \"smashing</w>\": 19632,\n  \"smatter</w>\": 16537,\n  \"smb</w>\": 30446,\n  \"smc\": 31375,\n  \"smc</w>\": 28312,\n  \"smd</w>\": 34582,\n  \"sme\": 11758,\n  \"sme</w>\": 15650,\n  \"smear</w>\": 37546,\n  \"smel\": 28476,\n  \"smell</w>\": 9688,\n  \"smelling</w>\": 32493,\n  \"smells</w>\": 14668,\n  \"smelly</w>\": 46145,\n  \"smen</w>\": 15961,\n  \"smer\": 48526,\n  \"smere</w>\": 39629,\n  \"smes</w>\": 26141,\n  \"smg</w>\": 46876,\n  \"smh</w>\": 9623,\n  \"smi\": 5655,\n  \"smi</w>\": 40049,\n  \"smil\": 33937,\n  \"smile\": 27641,\n  \"smile</w>\": 3490,\n  \"smiled</w>\": 34362,\n  \"smiles</w>\": 8726,\n  \"smiley</w>\": 22925,\n  \"smiling</w>\": 9200,\n  \"smir\": 24667,\n  \"smith\": 10527,\n  \"smith</w>\": 2915,\n  \"smiths</w>\": 27872,\n  \"smithson\": 25372,\n  \"smithsonian</w>\": 31209,\n  \"smm</w>\": 19510,\n  \"smma</w>\": 42370,\n  \"smo\": 2513,\n  \"smo</w>\": 13437,\n  \"smobile</w>\": 38923,\n  \"smog</w>\": 44425,\n  \"smoke\": 20381,\n  \"smoke</w>\": 6664,\n  \"smoked</w>\": 11161,\n  \"smoker</w>\": 32348,\n  \"smokers</w>\": 29571,\n  \"smokes</w>\": 40336,\n  \"smokey</w>\": 23670,\n  \"smokin</w>\": 32825,\n  \"smoking</w>\": 9038,\n  \"smoky</w>\": 25549,\n  \"smol\": 29939,\n  \"smol</w>\": 40403,\n  \"smoo\": 5430,\n  \"smooth\": 10958,\n  \"smooth</w>\": 8990,\n  \"smoother</w>\": 44271,\n  \"smoothie</w>\": 16668,\n  \"smoothies</w>\": 34458,\n  \"smoothly</w>\": 32380,\n  \"smore</w>\": 48323,\n  \"smp</w>\": 32260,\n  \"smriti\": 49227,\n  \"sms</w>\": 10409,\n  \"smt</w>\": 26672,\n  \"smtown</w>\": 26072,\n  \"smu\": 10878,\n  \"smu</w>\": 30458,\n  \"smug</w>\": 41021,\n  \"smugg\": 28130,\n  \"smuggling</w>\": 34146,\n  \"smur\": 24708,\n  \"smusic</w>\": 19191,\n  \"smw</w>\": 44929,\n  \"smx</w>\": 46699,\n  \"smy\": 14381,\n  \"smyth</w>\": 44822,\n  \"sn\": 1672,\n  \"sn</w>\": 5844,\n  \"sna\": 4032,\n  \"snack\": 47548,\n  \"snack</w>\": 10039,\n  \"snacking</w>\": 46474,\n  \"snacks</w>\": 12349,\n  \"snag\": 34789,\n  \"snag</w>\": 28043,\n  \"snagged</w>\": 48534,\n  \"snail</w>\": 23132,\n  \"snails</w>\": 34928,\n  \"snake\": 30133,\n  \"snake</w>\": 8798,\n  \"snakes</w>\": 19605,\n  \"snap\": 4578,\n  \"snap</w>\": 7404,\n  \"snapback</w>\": 31234,\n  \"snapchat</w>\": 7799,\n  \"snapmatic</w>\": 45907,\n  \"snapp\": 10185,\n  \"snapped</w>\": 15543,\n  \"snapper</w>\": 31677,\n  \"snapping</w>\": 31581,\n  \"snaps</w>\": 16890,\n  \"snapshot</w>\": 18243,\n  \"snar\": 30810,\n  \"snare</w>\": 40651,\n  \"snat\": 18457,\n  \"snatch</w>\": 35302,\n  \"snatched</w>\": 44821,\n  \"snation</w>\": 14362,\n  \"snazzy</w>\": 48963,\n  \"snc</w>\": 39918,\n  \"sne\": 3791,\n  \"sne</w>\": 46503,\n  \"sneak\": 27871,\n  \"sneak</w>\": 6917,\n  \"sneaker\": 31698,\n  \"sneaker</w>\": 24781,\n  \"sneakers</w>\": 17397,\n  \"sneaking</w>\": 34633,\n  \"sneakpeek</w>\": 47831,\n  \"sneaks</w>\": 40926,\n  \"sneaky</w>\": 21293,\n  \"snee\": 42095,\n  \"snell</w>\": 46410,\n  \"sner</w>\": 31424,\n  \"snes</w>\": 26667,\n  \"snews</w>\": 18623,\n  \"snf</w>\": 47651,\n  \"sng</w>\": 41549,\n  \"snhl</w>\": 43093,\n  \"sni\": 7186,\n  \"sni</w>\": 35570,\n  \"snickers</w>\": 49127,\n  \"sniff</w>\": 37841,\n  \"snip</w>\": 42954,\n  \"sniper</w>\": 22157,\n  \"snippet</w>\": 37531,\n  \"snippets</w>\": 44001,\n  \"snl</w>\": 16011,\n  \"sno\": 8567,\n  \"sno</w>\": 17802,\n  \"snoo\": 11352,\n  \"snooker</w>\": 25657,\n  \"snoop\": 44503,\n  \"snoop</w>\": 27754,\n  \"snoopdogg</w>\": 48388,\n  \"snoopy</w>\": 41967,\n  \"snooze</w>\": 40718,\n  \"snor\": 16590,\n  \"snoring</w>\": 44560,\n  \"snorkel\": 44285,\n  \"snorkeling</w>\": 48103,\n  \"snow\": 3880,\n  \"snow</w>\": 2583,\n  \"snowball</w>\": 39254,\n  \"snowboard</w>\": 33403,\n  \"snowboarding</w>\": 32397,\n  \"snowday</w>\": 37982,\n  \"snowden</w>\": 32154,\n  \"snowdon</w>\": 47107,\n  \"snowdonia</w>\": 36088,\n  \"snowed</w>\": 45073,\n  \"snowfall</w>\": 21714,\n  \"snowflake</w>\": 33447,\n  \"snowflakes</w>\": 38618,\n  \"snowing</w>\": 21443,\n  \"snowman</w>\": 22668,\n  \"snowstorm</w>\": 38777,\n  \"snowy</w>\": 14191,\n  \"snp</w>\": 15301,\n  \"sns</w>\": 36343,\n  \"snsd</w>\": 27961,\n  \"snt</w>\": 34834,\n  \"snu\": 9694,\n  \"snuck</w>\": 36522,\n  \"snug</w>\": 45169,\n  \"snuggle</w>\": 31327,\n  \"snuggles</w>\": 48165,\n  \"sny\": 17526,\n  \"snyder</w>\": 22106,\n  \"snz</w>\": 37678,\n  \"so\": 759,\n  \"so</w>\": 706,\n  \"soa</w>\": 39584,\n  \"soak</w>\": 24839,\n  \"soaked</w>\": 26592,\n  \"soaking</w>\": 26750,\n  \"soap\": 26086,\n  \"soap</w>\": 11088,\n  \"soaps</w>\": 40958,\n  \"soar\": 48997,\n  \"soar</w>\": 22241,\n  \"soaring</w>\": 27968,\n  \"soars</w>\": 41348,\n  \"sob\": 24900,\n  \"sob</w>\": 35507,\n  \"sobbing</w>\": 36691,\n  \"sober\": 30969,\n  \"sober</w>\": 24487,\n  \"sobre</w>\": 42768,\n  \"sobri\": 49308,\n  \"sobs</w>\": 43636,\n  \"soc\": 3253,\n  \"soc</w>\": 7741,\n  \"soca</w>\": 49239,\n  \"socal\": 46470,\n  \"socal</w>\": 20450,\n  \"soccer\": 16268,\n  \"soccer</w>\": 4233,\n  \"socceroos</w>\": 41997,\n  \"socent</w>\": 30831,\n  \"sochi</w>\": 21014,\n  \"soci\": 1720,\n  \"social\": 4803,\n  \"social</w>\": 2346,\n  \"socialism</w>\": 23372,\n  \"socialist</w>\": 18450,\n  \"socialists</w>\": 43839,\n  \"socially</w>\": 24555,\n  \"socialmedi\": 23813,\n  \"socialmedia</w>\": 9600,\n  \"socialmediamarketing</w>\": 31790,\n  \"societal</w>\": 40058,\n  \"societies</w>\": 25855,\n  \"society</w>\": 3757,\n  \"socio\": 44319,\n  \"socio</w>\": 42790,\n  \"sociology</w>\": 32373,\n  \"sock\": 29801,\n  \"sock</w>\": 18277,\n  \"socket</w>\": 28657,\n  \"socks</w>\": 8774,\n  \"socorro</w>\": 46409,\n  \"socute</w>\": 45086,\n  \"sod</w>\": 31435,\n  \"soda</w>\": 13533,\n  \"sodium</w>\": 29070,\n  \"soe\": 44136,\n  \"soe</w>\": 25498,\n  \"soever</w>\": 34024,\n  \"sof\": 1571,\n  \"sof</w>\": 41187,\n  \"sofa</w>\": 15723,\n  \"soff\": 35290,\n  \"soff</w>\": 30684,\n  \"sofficial</w>\": 20563,\n  \"sofi\": 41537,\n  \"sofia</w>\": 18914,\n  \"sofinstagram</w>\": 17301,\n  \"soft\": 12778,\n  \"soft</w>\": 3773,\n  \"softball</w>\": 8369,\n  \"softer</w>\": 44462,\n  \"softhe\": 23127,\n  \"softly</w>\": 34958,\n  \"software\": 35941,\n  \"software</w>\": 5847,\n  \"softwitter</w>\": 11311,\n  \"sog</w>\": 44775,\n  \"soggy</w>\": 41168,\n  \"sohn</w>\": 49267,\n  \"soho\": 47749,\n  \"soho</w>\": 17592,\n  \"soi</w>\": 40495,\n  \"soil\": 33417,\n  \"soil</w>\": 9216,\n  \"soils</w>\": 34891,\n  \"soir</w>\": 43427,\n  \"sok</w>\": 43456,\n  \"sol\": 1175,\n  \"sol</w>\": 9941,\n  \"sola</w>\": 40086,\n  \"solace</w>\": 42567,\n  \"solar\": 16990,\n  \"solar</w>\": 5199,\n  \"solareclipse</w>\": 44727,\n  \"sold\": 33116,\n  \"sold</w>\": 3939,\n  \"soldi\": 5098,\n  \"soldier</w>\": 9355,\n  \"soldiers</w>\": 7547,\n  \"sole\": 10519,\n  \"sole</w>\": 8576,\n  \"soleil</w>\": 33148,\n  \"solely</w>\": 27913,\n  \"solent</w>\": 47783,\n  \"soles</w>\": 22682,\n  \"soli\": 3911,\n  \"solic\": 19369,\n  \"solicitor</w>\": 45647,\n  \"solicitors</w>\": 46000,\n  \"solid\": 30626,\n  \"solid</w>\": 6148,\n  \"solidar\": 10415,\n  \"solidarity</w>\": 10983,\n  \"solidi\": 46136,\n  \"solids</w>\": 49070,\n  \"solihull</w>\": 45293,\n  \"solit\": 37039,\n  \"solitaire</w>\": 47257,\n  \"solitary</w>\": 33094,\n  \"solitude</w>\": 33199,\n  \"solo\": 17626,\n  \"solo</w>\": 5797,\n  \"soloist</w>\": 46391,\n  \"solom\": 15768,\n  \"solomon</w>\": 19785,\n  \"solos</w>\": 44868,\n  \"solst\": 20298,\n  \"solstice</w>\": 21359,\n  \"solu\": 2487,\n  \"solution</w>\": 4575,\n  \"solutions</w>\": 5140,\n  \"solve</w>\": 8917,\n  \"solved</w>\": 13451,\n  \"solves</w>\": 42740,\n  \"solving</w>\": 15581,\n  \"som\": 734,\n  \"som</w>\": 10672,\n  \"soma</w>\": 36170,\n  \"somal\": 40281,\n  \"somali</w>\": 26231,\n  \"somalia</w>\": 17051,\n  \"somaliland</w>\": 43315,\n  \"some\": 1132,\n  \"some</w>\": 836,\n  \"somebody</w>\": 8305,\n  \"someday</w>\": 17127,\n  \"somehow</w>\": 11735,\n  \"someone</w>\": 2100,\n  \"somer\": 9656,\n  \"somerhalder</w>\": 33990,\n  \"somerset</w>\": 14926,\n  \"somerville</w>\": 41409,\n  \"somes</w>\": 38124,\n  \"somethin</w>\": 33541,\n  \"something\": 28316,\n  \"something</w>\": 2006,\n  \"sometime</w>\": 21464,\n  \"sometimes</w>\": 4237,\n  \"somewhat</w>\": 17864,\n  \"somewhere</w>\": 8119,\n  \"somm\": 42726,\n  \"somme</w>\": 30625,\n  \"sommer</w>\": 44954,\n  \"somos</w>\": 24951,\n  \"son\": 1176,\n  \"son</w>\": 825,\n  \"sona</w>\": 21249,\n  \"sonam\": 40096,\n  \"sonar</w>\": 48235,\n  \"sonata</w>\": 37009,\n  \"sone</w>\": 29599,\n  \"song\": 6868,\n  \"song</w>\": 2295,\n  \"songs</w>\": 4641,\n  \"songwriter</w>\": 13034,\n  \"songwriters</w>\": 39583,\n  \"songwriting</w>\": 33567,\n  \"songz</w>\": 49302,\n  \"soni\": 34899,\n  \"soni</w>\": 35911,\n  \"sonia</w>\": 20409,\n  \"sonic\": 23785,\n  \"sonic</w>\": 9132,\n  \"sonics</w>\": 48511,\n  \"sonja</w>\": 46102,\n  \"sonline</w>\": 23412,\n  \"sonny\": 43000,\n  \"sonny</w>\": 20880,\n  \"sono</w>\": 44109,\n  \"sonom\": 48596,\n  \"sonoma</w>\": 26269,\n  \"sons</w>\": 5502,\n  \"sonsof\": 46676,\n  \"sont</w>\": 31063,\n  \"sonthe\": 40923,\n  \"sony\": 16042,\n  \"sony</w>\": 8748,\n  \"sonya</w>\": 39172,\n  \"soo\": 5517,\n  \"soo</w>\": 8602,\n  \"soom\": 39771,\n  \"soon\": 27559,\n  \"soon</w>\": 1745,\n  \"sooner</w>\": 18968,\n  \"sooners</w>\": 30449,\n  \"sooo</w>\": 11526,\n  \"soooo</w>\": 13658,\n  \"sooooo</w>\": 21199,\n  \"soooooo</w>\": 34859,\n  \"soor\": 46698,\n  \"soothe</w>\": 44424,\n  \"soothing</w>\": 27730,\n  \"sop\": 3974,\n  \"sop</w>\": 19194,\n  \"soph</w>\": 34963,\n  \"sophi\": 6192,\n  \"sophia</w>\": 16790,\n  \"sophie\": 38648,\n  \"sophie</w>\": 12357,\n  \"sophistic\": 17646,\n  \"sophisticated</w>\": 20833,\n  \"sophom\": 13696,\n  \"sophomore</w>\": 15242,\n  \"sophomores</w>\": 47645,\n  \"soprano</w>\": 28880,\n  \"soproud</w>\": 44479,\n  \"sor\": 1852,\n  \"sor</w>\": 16872,\n  \"sora</w>\": 38719,\n  \"sorbet</w>\": 39994,\n  \"sore\": 43330,\n  \"sore</w>\": 15454,\n  \"sored</w>\": 6731,\n  \"soren\": 38907,\n  \"sorg</w>\": 28152,\n  \"sori\": 38588,\n  \"sorority</w>\": 30059,\n  \"soros</w>\": 33248,\n  \"sorren\": 44012,\n  \"sorrow</w>\": 28020,\n  \"sorrows</w>\": 47924,\n  \"sorry\": 25745,\n  \"sorry</w>\": 3675,\n  \"sorrynotsorry</w>\": 37105,\n  \"sort</w>\": 8450,\n  \"sorta</w>\": 34700,\n  \"sorted</w>\": 13221,\n  \"sorting</w>\": 19198,\n  \"sorts</w>\": 12577,\n  \"sory</w>\": 16257,\n  \"sos\": 25145,\n  \"sos</w>\": 5792,\n  \"sosa</w>\": 45433,\n  \"sosfam</w>\": 47709,\n  \"sot\": 41542,\n  \"sot</w>\": 34116,\n  \"sothe\": 32145,\n  \"sotho</w>\": 45496,\n  \"soto</w>\": 27947,\n  \"sotto</w>\": 26047,\n  \"sotu</w>\": 32286,\n  \"sou\": 1101,\n  \"sou</w>\": 24293,\n  \"sought</w>\": 18874,\n  \"soul\": 8701,\n  \"soul</w>\": 3755,\n  \"soulful</w>\": 30196,\n  \"soulmate</w>\": 38130,\n  \"souls</w>\": 10951,\n  \"soun\": 19474,\n  \"sound\": 5236,\n  \"sound</w>\": 3608,\n  \"soundcheck</w>\": 31394,\n  \"soundcloud</w>\": 15190,\n  \"sounded</w>\": 28287,\n  \"sounders</w>\": 44933,\n  \"sounding</w>\": 21351,\n  \"sounds</w>\": 5694,\n  \"soundtrack</w>\": 11389,\n  \"soup</w>\": 7077,\n  \"soups</w>\": 45052,\n  \"sour\": 2235,\n  \"sour</w>\": 12049,\n  \"source\": 23698,\n  \"source</w>\": 3634,\n  \"sourced</w>\": 23340,\n  \"sources</w>\": 5124,\n  \"sourcing</w>\": 19574,\n  \"sourdough</w>\": 29921,\n  \"souri</w>\": 11674,\n  \"sous</w>\": 32093,\n  \"sousa</w>\": 46296,\n  \"sout\": 38156,\n  \"sout</w>\": 32732,\n  \"south\": 2938,\n  \"south</w>\": 2045,\n  \"southafrica</w>\": 15184,\n  \"southampton</w>\": 15767,\n  \"southbank</w>\": 44173,\n  \"southbound</w>\": 22932,\n  \"southeast</w>\": 13942,\n  \"southeastern</w>\": 26813,\n  \"southend</w>\": 25583,\n  \"souther\": 33330,\n  \"southern\": 17704,\n  \"southern</w>\": 5036,\n  \"southgate</w>\": 47262,\n  \"southkorea</w>\": 43552,\n  \"southport</w>\": 37446,\n  \"southside</w>\": 36436,\n  \"southsudan</w>\": 30419,\n  \"southwark</w>\": 39098,\n  \"southwe\": 46443,\n  \"southwest</w>\": 13320,\n  \"southwestern</w>\": 30157,\n  \"souven\": 20210,\n  \"souvenir</w>\": 24811,\n  \"souvenirs</w>\": 48460,\n  \"souza</w>\": 29424,\n  \"sov</w>\": 29737,\n  \"sover</w>\": 31876,\n  \"sovere\": 17736,\n  \"sovereign\": 29418,\n  \"sovereign</w>\": 26337,\n  \"sovereignty</w>\": 31701,\n  \"soviet</w>\": 14274,\n  \"sow</w>\": 33089,\n  \"sowe\": 36130,\n  \"soweto</w>\": 47070,\n  \"sown</w>\": 49369,\n  \"sox\": 39556,\n  \"sox</w>\": 8657,\n  \"soy\": 16524,\n  \"soy</w>\": 15010,\n  \"soybean</w>\": 34606,\n  \"soybeans</w>\": 40840,\n  \"soyu\": 39578,\n  \"soyuz</w>\": 43842,\n  \"sp\": 588,\n  \"sp</w>\": 4393,\n  \"spa\": 7852,\n  \"spa</w>\": 6692,\n  \"spac\": 10336,\n  \"space\": 7857,\n  \"space</w>\": 2138,\n  \"spacecraft</w>\": 25940,\n  \"spaces</w>\": 9006,\n  \"spaceship</w>\": 34317,\n  \"spacex</w>\": 22511,\n  \"spacey</w>\": 48770,\n  \"spacious</w>\": 24769,\n  \"spad\": 45362,\n  \"spade</w>\": 32562,\n  \"spades</w>\": 48368,\n  \"spaghetti</w>\": 18440,\n  \"spain</w>\": 5083,\n  \"spal\": 26018,\n  \"spam\": 29712,\n  \"spam</w>\": 14624,\n  \"span\": 4270,\n  \"span</w>\": 14537,\n  \"spandex</w>\": 41686,\n  \"spani\": 16721,\n  \"spaniel</w>\": 35435,\n  \"spanish\": 29966,\n  \"spanish</w>\": 6013,\n  \"spann</w>\": 25323,\n  \"spanning</w>\": 38638,\n  \"spans</w>\": 45407,\n  \"spaper\": 34548,\n  \"spar\": 3378,\n  \"spar</w>\": 34576,\n  \"spare</w>\": 12615,\n  \"spares</w>\": 39505,\n  \"spark\": 9555,\n  \"spark</w>\": 11047,\n  \"sparked</w>\": 32647,\n  \"sparkle</w>\": 18287,\n  \"sparkles</w>\": 36410,\n  \"sparkling</w>\": 17893,\n  \"sparkly</w>\": 30542,\n  \"sparks</w>\": 15046,\n  \"sparky</w>\": 47198,\n  \"sparring</w>\": 42161,\n  \"sparrow</w>\": 22888,\n  \"spart\": 10143,\n  \"sparta</w>\": 38401,\n  \"spartan\": 26582,\n  \"spartan</w>\": 24225,\n  \"spartans</w>\": 20457,\n  \"sparty</w>\": 36477,\n  \"spas\": 31714,\n  \"spati\": 19200,\n  \"spatial</w>\": 22022,\n  \"spaw\": 31605,\n  \"spawn</w>\": 29166,\n  \"spay\": 40634,\n  \"spc</w>\": 20492,\n  \"spca</w>\": 37018,\n  \"spd\": 37717,\n  \"spd</w>\": 28307,\n  \"spdwy</w>\": 45981,\n  \"spe\": 876,\n  \"spe</w>\": 36676,\n  \"speak\": 20599,\n  \"speak</w>\": 4208,\n  \"speake\": 46077,\n  \"speaker\": 25764,\n  \"speaker</w>\": 4914,\n  \"speakers</w>\": 7675,\n  \"speaking</w>\": 3714,\n  \"speaks</w>\": 5661,\n  \"spear\": 23277,\n  \"spear</w>\": 30420,\n  \"speare</w>\": 43859,\n  \"spears</w>\": 20242,\n  \"spec\": 1711,\n  \"spec</w>\": 18596,\n  \"speci\": 1969,\n  \"special\": 11422,\n  \"special</w>\": 1689,\n  \"specialist</w>\": 10630,\n  \"specialists</w>\": 21719,\n  \"speciality</w>\": 46904,\n  \"specialized</w>\": 23265,\n  \"specializes</w>\": 48533,\n  \"specially</w>\": 4513,\n  \"specials</w>\": 11983,\n  \"specialty</w>\": 18262,\n  \"species</w>\": 6330,\n  \"specific</w>\": 10528,\n  \"specifically</w>\": 17174,\n  \"specification</w>\": 46394,\n  \"specifications</w>\": 39705,\n  \"specified</w>\": 48114,\n  \"specimen</w>\": 30263,\n  \"specimens</w>\": 42715,\n  \"specs</w>\": 24093,\n  \"spect</w>\": 3416,\n  \"spectac\": 7242,\n  \"spectacle</w>\": 34342,\n  \"spectacular</w>\": 8404,\n  \"spectator</w>\": 32372,\n  \"spectators</w>\": 39306,\n  \"spective</w>\": 6633,\n  \"spector</w>\": 48676,\n  \"spectral</w>\": 45441,\n  \"spectre</w>\": 35998,\n  \"spectro\": 27646,\n  \"spectrum</w>\": 13532,\n  \"specul\": 19209,\n  \"speculation</w>\": 30898,\n  \"sped</w>\": 38813,\n  \"spee\": 4050,\n  \"speech\": 19556,\n  \"speech</w>\": 4902,\n  \"speeches</w>\": 25208,\n  \"speechless</w>\": 23152,\n  \"speed\": 6860,\n  \"speed</w>\": 4163,\n  \"speeding</w>\": 27264,\n  \"speeds</w>\": 22017,\n  \"speedway</w>\": 11480,\n  \"speedy</w>\": 21603,\n  \"spel\": 41887,\n  \"spell\": 22784,\n  \"spell</w>\": 11230,\n  \"spelled</w>\": 24339,\n  \"spelling</w>\": 15614,\n  \"spells</w>\": 25335,\n  \"spelt</w>\": 38316,\n  \"spen\": 5087,\n  \"spence</w>\": 33324,\n  \"spencer\": 27509,\n  \"spencer</w>\": 10678,\n  \"spend</w>\": 4664,\n  \"spending</w>\": 5961,\n  \"spends</w>\": 22508,\n  \"spent</w>\": 4429,\n  \"speople</w>\": 33035,\n  \"sper\": 8213,\n  \"sper</w>\": 15313,\n  \"sperm</w>\": 35781,\n  \"sperson</w>\": 22687,\n  \"spf</w>\": 34973,\n  \"spg</w>\": 34623,\n  \"sph\": 28909,\n  \"sph</w>\": 24684,\n  \"sphe\": 33691,\n  \"spher\": 18349,\n  \"sphere</w>\": 6987,\n  \"spheres</w>\": 37478,\n  \"spheric</w>\": 21744,\n  \"sphin\": 39237,\n  \"sphinx</w>\": 46487,\n  \"spho\": 20442,\n  \"sphoto</w>\": 38594,\n  \"sphy\": 43808,\n  \"spi\": 3174,\n  \"spi</w>\": 37080,\n  \"spic\": 17264,\n  \"spice\": 29761,\n  \"spice</w>\": 10141,\n  \"spiced</w>\": 24267,\n  \"spicer</w>\": 37627,\n  \"spices</w>\": 21194,\n  \"spicy</w>\": 10915,\n  \"spide\": 36801,\n  \"spider\": 11963,\n  \"spider</w>\": 7622,\n  \"spiderman\": 39808,\n  \"spiderman</w>\": 18427,\n  \"spiders</w>\": 23141,\n  \"spidey</w>\": 41706,\n  \"spie\": 28573,\n  \"spie</w>\": 28746,\n  \"spied</w>\": 43998,\n  \"spiegel</w>\": 45351,\n  \"spiel\": 28435,\n  \"spiel</w>\": 37690,\n  \"spielberg</w>\": 37569,\n  \"spies</w>\": 25374,\n  \"spieth</w>\": 43254,\n  \"spike\": 35306,\n  \"spike</w>\": 15310,\n  \"spiked</w>\": 47014,\n  \"spikes</w>\": 29582,\n  \"spil\": 47765,\n  \"spill\": 43933,\n  \"spill</w>\": 18006,\n  \"spilled</w>\": 33206,\n  \"spilling</w>\": 49006,\n  \"spills</w>\": 35796,\n  \"spin\": 6288,\n  \"spin</w>\": 9226,\n  \"spinach</w>\": 14747,\n  \"spinal</w>\": 23925,\n  \"spine\": 48221,\n  \"spine</w>\": 19646,\n  \"sping</w>\": 47113,\n  \"spinner</w>\": 29924,\n  \"spinning</w>\": 13987,\n  \"spino\": 40848,\n  \"spinoff</w>\": 42513,\n  \"spinrilla</w>\": 46064,\n  \"spins</w>\": 27243,\n  \"spion\": 39604,\n  \"spionage</w>\": 41838,\n  \"spir\": 3745,\n  \"spiral</w>\": 19873,\n  \"spiration</w>\": 38126,\n  \"spire</w>\": 27439,\n  \"spired</w>\": 40650,\n  \"spires</w>\": 46938,\n  \"spiri\": 4024,\n  \"spirit\": 18224,\n  \"spirit</w>\": 4071,\n  \"spirited</w>\": 34701,\n  \"spirits</w>\": 13192,\n  \"spiritu\": 7237,\n  \"spiritual\": 46076,\n  \"spiritual</w>\": 9473,\n  \"spirituality</w>\": 22165,\n  \"spiro\": 40085,\n  \"spit\": 18115,\n  \"spit</w>\": 23177,\n  \"spite</w>\": 26060,\n  \"spitfire</w>\": 31126,\n  \"spitting</w>\": 40721,\n  \"spl\": 2470,\n  \"spl</w>\": 33052,\n  \"spla\": 4809,\n  \"splac\": 16059,\n  \"splace</w>\": 38743,\n  \"splash\": 43641,\n  \"splash</w>\": 11879,\n  \"splat\": 15733,\n  \"splatoon</w>\": 22565,\n  \"splay</w>\": 3169,\n  \"splen\": 18552,\n  \"splend\": 29861,\n  \"splendid</w>\": 21016,\n  \"splendor</w>\": 46262,\n  \"splin\": 38090,\n  \"split\": 25443,\n  \"split</w>\": 9109,\n  \"splits</w>\": 34897,\n  \"splitting</w>\": 37210,\n  \"splus</w>\": 40866,\n  \"spn\": 35467,\n  \"spn</w>\": 19414,\n  \"spnfamily</w>\": 38566,\n  \"spo\": 1261,\n  \"spo</w>\": 21085,\n  \"spock</w>\": 43918,\n  \"spoil</w>\": 25600,\n  \"spoiled</w>\": 21399,\n  \"spoiler</w>\": 16512,\n  \"spoilers</w>\": 18326,\n  \"spoils</w>\": 42436,\n  \"spoilt</w>\": 35358,\n  \"spokane</w>\": 24528,\n  \"spoke\": 13890,\n  \"spoke</w>\": 6518,\n  \"spoken</w>\": 12979,\n  \"spokesman</w>\": 31632,\n  \"spokesperson</w>\": 26234,\n  \"spol\": 22476,\n  \"spol</w>\": 8132,\n  \"spoli</w>\": 34301,\n  \"spolice</w>\": 37406,\n  \"spon\": 1715,\n  \"spon</w>\": 48216,\n  \"sponge\": 22861,\n  \"sponge</w>\": 24345,\n  \"spongebob</w>\": 25089,\n  \"spons\": 5597,\n  \"sponsor\": 10424,\n  \"sponsor</w>\": 7574,\n  \"sponsored</w>\": 7197,\n  \"sponsoring</w>\": 16181,\n  \"sponsors</w>\": 11005,\n  \"sponsorship</w>\": 17632,\n  \"spontaneous</w>\": 32465,\n  \"spoo\": 11248,\n  \"spooky</w>\": 15369,\n  \"spool</w>\": 49152,\n  \"spoon\": 27001,\n  \"spoon</w>\": 14024,\n  \"spoons</w>\": 29661,\n  \"spor\": 1475,\n  \"spor</w>\": 33746,\n  \"sport\": 4379,\n  \"sport</w>\": 2364,\n  \"sporting\": 32620,\n  \"sporting</w>\": 8944,\n  \"sports\": 6436,\n  \"sports</w>\": 2054,\n  \"sportsc\": 40114,\n  \"sportscar</w>\": 46931,\n  \"sportscenter</w>\": 39157,\n  \"sportsman</w>\": 39020,\n  \"sportsmanship</w>\": 34858,\n  \"sportsnet</w>\": 34144,\n  \"sportswear</w>\": 39747,\n  \"sporty</w>\": 33346,\n  \"spot\": 3223,\n  \"spot</w>\": 3049,\n  \"spotify</w>\": 7193,\n  \"spotlight</w>\": 7901,\n  \"spots</w>\": 7670,\n  \"spotted</w>\": 4533,\n  \"spotter</w>\": 30742,\n  \"spotting</w>\": 15885,\n  \"spouse</w>\": 24724,\n  \"spout</w>\": 48993,\n  \"spp</w>\": 47567,\n  \"spr\": 1536,\n  \"spr</w>\": 19417,\n  \"spra\": 12966,\n  \"spraw\": 46590,\n  \"spray\": 37885,\n  \"spray</w>\": 10449,\n  \"sprayed</w>\": 40022,\n  \"spraying</w>\": 39224,\n  \"spre\": 18740,\n  \"spread\": 20620,\n  \"spread</w>\": 5284,\n  \"spreading</w>\": 11821,\n  \"spreads</w>\": 27579,\n  \"spree</w>\": 21851,\n  \"spri\": 35498,\n  \"spride</w>\": 26685,\n  \"spring\": 5166,\n  \"spring</w>\": 2420,\n  \"springbreak</w>\": 37753,\n  \"springer</w>\": 30117,\n  \"springfield</w>\": 16599,\n  \"springs</w>\": 7308,\n  \"springst</w>\": 32132,\n  \"springsteen</w>\": 28367,\n  \"springtime</w>\": 28285,\n  \"springtraining</w>\": 49364,\n  \"springwatch</w>\": 29239,\n  \"sprink\": 15817,\n  \"sprinkle</w>\": 42897,\n  \"sprinkler</w>\": 48754,\n  \"sprinkles</w>\": 37326,\n  \"sprint\": 29248,\n  \"sprint</w>\": 10751,\n  \"sprinter</w>\": 36947,\n  \"sprints</w>\": 36404,\n  \"sprite</w>\": 32544,\n  \"spro\": 13902,\n  \"spro</w>\": 37403,\n  \"sproject</w>\": 37802,\n  \"sproud</w>\": 37686,\n  \"sprout</w>\": 35863,\n  \"sprouts</w>\": 25756,\n  \"spru\": 17041,\n  \"spruce</w>\": 23812,\n  \"sprung</w>\": 32968,\n  \"sps</w>\": 13869,\n  \"spu\": 23566,\n  \"spun\": 47922,\n  \"spun</w>\": 32852,\n  \"spur\": 15206,\n  \"spur</w>\": 20361,\n  \"spurs</w>\": 10916,\n  \"spursofficial</w>\": 45290,\n  \"sput\": 47521,\n  \"spx</w>\": 20584,\n  \"spy\": 13861,\n  \"spy</w>\": 6656,\n  \"spyder</w>\": 39952,\n  \"spying</w>\": 36227,\n  \"sq\": 9370,\n  \"sq</w>\": 11590,\n  \"sqft</w>\": 41912,\n  \"sql\": 42759,\n  \"sql</w>\": 18938,\n  \"sqm</w>\": 47978,\n  \"sqn</w>\": 41209,\n  \"squ\": 1653,\n  \"squad\": 13892,\n  \"squad</w>\": 4234,\n  \"squadron</w>\": 18579,\n  \"squads</w>\": 36590,\n  \"square\": 19314,\n  \"square</w>\": 3999,\n  \"squared</w>\": 32967,\n  \"squares</w>\": 26972,\n  \"squash</w>\": 13312,\n  \"squat\": 44628,\n  \"squat</w>\": 30680,\n  \"squats</w>\": 40213,\n  \"sque\": 9721,\n  \"sque</w>\": 8097,\n  \"squee\": 14420,\n  \"squeeze</w>\": 21684,\n  \"squeezed</w>\": 40413,\n  \"squid\": 42057,\n  \"squid</w>\": 22553,\n  \"squir\": 9683,\n  \"squire</w>\": 48090,\n  \"squirrel</w>\": 14004,\n  \"squirrels</w>\": 26623,\n  \"squish\": 42607,\n  \"squishy</w>\": 47001,\n  \"sr\": 3437,\n  \"sr</w>\": 5428,\n  \"srbachchan</w>\": 32353,\n  \"src</w>\": 23445,\n  \"sre\": 17748,\n  \"sri\": 11051,\n  \"sri</w>\": 9276,\n  \"sridevi</w>\": 46301,\n  \"srilan\": 15559,\n  \"srilanka</w>\": 16922,\n  \"srin\": 26818,\n  \"srinagar</w>\": 33671,\n  \"srini\": 41899,\n  \"sriracha</w>\": 42743,\n  \"sris\": 27851,\n  \"srisri</w>\": 32966,\n  \"srk\": 44982,\n  \"srk</w>\": 11216,\n  \"srl</w>\": 33808,\n  \"srp</w>\": 43004,\n  \"srs</w>\": 41764,\n  \"srsly</w>\": 44179,\n  \"srt</w>\": 28139,\n  \"sru\": 44152,\n  \"srugby</w>\": 40526,\n  \"ss\": 690,\n  \"ss</w>\": 632,\n  \"ssa</w>\": 6088,\n  \"ssal\": 31330,\n  \"ssal</w>\": 35936,\n  \"ssb</w>\": 37511,\n  \"ssc\": 21692,\n  \"ssc</w>\": 20364,\n  \"ssd</w>\": 23107,\n  \"sse\": 9030,\n  \"sse</w>\": 8938,\n  \"ssed\": 38755,\n  \"ssed</w>\": 1804,\n  \"ssel\": 17402,\n  \"ssel</w>\": 19373,\n  \"sseldorf</w>\": 47792,\n  \"ssell</w>\": 42388,\n  \"ssels</w>\": 8355,\n  \"ssen\": 39408,\n  \"ssen</w>\": 22645,\n  \"sser</w>\": 20445,\n  \"sses</w>\": 1802,\n  \"ssett</w>\": 44103,\n  \"ssf</w>\": 33239,\n  \"ssg</w>\": 40707,\n  \"ssh</w>\": 48866,\n  \"ssi\": 834,\n  \"ssi</w>\": 14953,\n  \"ssia</w>\": 22238,\n  \"ssian</w>\": 31218,\n  \"ssible</w>\": 47099,\n  \"ssic\": 27774,\n  \"ssic</w>\": 17077,\n  \"ssie</w>\": 7572,\n  \"ssier</w>\": 26422,\n  \"ssil</w>\": 15026,\n  \"ssin</w>\": 42660,\n  \"ssing</w>\": 2112,\n  \"ssion\": 16050,\n  \"ssion</w>\": 1627,\n  \"ssional</w>\": 13727,\n  \"ssionism</w>\": 24787,\n  \"ssionist</w>\": 27682,\n  \"ssions</w>\": 4137,\n  \"ssive</w>\": 2734,\n  \"ssively</w>\": 28060,\n  \"ssl</w>\": 32195,\n  \"ssler</w>\": 30287,\n  \"ssly</w>\": 24904,\n  \"ssn</w>\": 39116,\n  \"ssnhq</w>\": 47998,\n  \"sso\": 25900,\n  \"sso</w>\": 7914,\n  \"ssoccer</w>\": 32546,\n  \"sson\": 36124,\n  \"sson</w>\": 7271,\n  \"ssor</w>\": 35152,\n  \"ssp</w>\": 31101,\n  \"ssr</w>\": 39880,\n  \"sss</w>\": 11176,\n  \"ssss\": 30676,\n  \"ssss</w>\": 15880,\n  \"sssss</w>\": 24298,\n  \"sst</w>\": 40396,\n  \"ssu</w>\": 35351,\n  \"ssummit</w>\": 49301,\n  \"ssus</w>\": 31286,\n  \"ssw</w>\": 36937,\n  \"ssy\": 22519,\n  \"ssy</w>\": 8661,\n  \"st\": 522,\n  \"st</w>\": 545,\n  \"sta\": 1363,\n  \"sta</w>\": 2745,\n  \"stab\": 7726,\n  \"stab</w>\": 29974,\n  \"stabbed</w>\": 24534,\n  \"stabbing</w>\": 25474,\n  \"stabil\": 42576,\n  \"stabili\": 23903,\n  \"stability</w>\": 16716,\n  \"stable\": 44427,\n  \"stable</w>\": 10492,\n  \"stables</w>\": 34218,\n  \"stac\": 10175,\n  \"stacey\": 41653,\n  \"stacey</w>\": 24262,\n  \"stache</w>\": 23616,\n  \"stack\": 24723,\n  \"stack</w>\": 11257,\n  \"stacked</w>\": 24990,\n  \"stacking</w>\": 39836,\n  \"stacks</w>\": 24734,\n  \"stacy</w>\": 26628,\n  \"stad\": 15832,\n  \"stad</w>\": 16485,\n  \"stade</w>\": 38198,\n  \"stadi\": 26587,\n  \"stadion</w>\": 48815,\n  \"stadium</w>\": 3390,\n  \"stadiums</w>\": 38852,\n  \"stadt</w>\": 22713,\n  \"staf\": 2367,\n  \"staff\": 31188,\n  \"staff</w>\": 2813,\n  \"staffer</w>\": 38494,\n  \"staffers</w>\": 44994,\n  \"staffing</w>\": 32932,\n  \"stafford</w>\": 25006,\n  \"staffordshire</w>\": 29198,\n  \"staffs</w>\": 36098,\n  \"stag\": 12088,\n  \"stag</w>\": 20277,\n  \"stage\": 23182,\n  \"stage</w>\": 2170,\n  \"staged</w>\": 19906,\n  \"stages</w>\": 12297,\n  \"staggering</w>\": 37315,\n  \"staging</w>\": 27026,\n  \"stagram</w>\": 19503,\n  \"stags</w>\": 45936,\n  \"stain\": 3933,\n  \"stain</w>\": 14603,\n  \"stained</w>\": 13751,\n  \"staining</w>\": 32523,\n  \"stainless</w>\": 12320,\n  \"stains</w>\": 32008,\n  \"stair\": 7240,\n  \"stair</w>\": 17662,\n  \"staircase</w>\": 22777,\n  \"stairs</w>\": 9577,\n  \"stairway</w>\": 45559,\n  \"stak\": 39144,\n  \"stake\": 15955,\n  \"stake</w>\": 7937,\n  \"stakeholder</w>\": 39122,\n  \"stakeholders</w>\": 22968,\n  \"stakes</w>\": 7519,\n  \"staking</w>\": 47082,\n  \"stal\": 3861,\n  \"stal</w>\": 5535,\n  \"stale</w>\": 42471,\n  \"stalert</w>\": 25450,\n  \"stalin</w>\": 28346,\n  \"stalk\": 40826,\n  \"stalk</w>\": 14878,\n  \"stalker</w>\": 26777,\n  \"stalking</w>\": 24721,\n  \"stalks</w>\": 45886,\n  \"stall\": 24636,\n  \"stall</w>\": 12058,\n  \"stalled</w>\": 40362,\n  \"stallion</w>\": 28273,\n  \"stallions</w>\": 44787,\n  \"stallone</w>\": 40969,\n  \"stalls</w>\": 25427,\n  \"stam\": 4663,\n  \"stamatic</w>\": 30904,\n  \"stamford</w>\": 27843,\n  \"stamina</w>\": 48753,\n  \"stamp\": 28694,\n  \"stamp</w>\": 12771,\n  \"stampcollecting</w>\": 42852,\n  \"stamped</w>\": 38356,\n  \"stampede</w>\": 25384,\n  \"stamps</w>\": 13827,\n  \"stan\": 2203,\n  \"stan</w>\": 2434,\n  \"stana</w>\": 33311,\n  \"stanbul</w>\": 11231,\n  \"stance\": 48900,\n  \"stance</w>\": 3542,\n  \"stances</w>\": 15054,\n  \"stand\": 1819,\n  \"stand</w>\": 2087,\n  \"standalone</w>\": 44887,\n  \"standard\": 35780,\n  \"standard</w>\": 5807,\n  \"standardi\": 30247,\n  \"standards</w>\": 9022,\n  \"standby</w>\": 36184,\n  \"standing\": 39934,\n  \"standing</w>\": 2862,\n  \"standings</w>\": 19835,\n  \"standoff</w>\": 31821,\n  \"standout</w>\": 23131,\n  \"standre\": 48309,\n  \"stands</w>\": 6446,\n  \"standup\": 35108,\n  \"standup</w>\": 24964,\n  \"standwith\": 19540,\n  \"stanford\": 36219,\n  \"stanford</w>\": 15087,\n  \"stang</w>\": 12536,\n  \"stani</w>\": 38228,\n  \"stanis\": 37711,\n  \"stanley\": 19048,\n  \"stanley</w>\": 10079,\n  \"stanleycup</w>\": 28662,\n  \"stans</w>\": 26564,\n  \"stant\": 41576,\n  \"stant</w>\": 4906,\n  \"stanton</w>\": 25400,\n  \"stap\": 10438,\n  \"staple</w>\": 22695,\n  \"staples</w>\": 23646,\n  \"stapleton</w>\": 45228,\n  \"star\": 993,\n  \"star</w>\": 1565,\n  \"starbuck\": 48519,\n  \"starbucks</w>\": 9499,\n  \"starch</w>\": 47837,\n  \"starcraft</w>\": 48871,\n  \"stardom</w>\": 44616,\n  \"stardust</w>\": 34337,\n  \"stare</w>\": 18094,\n  \"stared</w>\": 47772,\n  \"stares</w>\": 37916,\n  \"starfish</w>\": 44283,\n  \"stargate</w>\": 41099,\n  \"stargazing</w>\": 49328,\n  \"staring</w>\": 13800,\n  \"stark\": 40446,\n  \"stark</w>\": 15353,\n  \"starlight</w>\": 32197,\n  \"starling</w>\": 46205,\n  \"starmagic\": 48023,\n  \"starplus</w>\": 37815,\n  \"starr</w>\": 19186,\n  \"starred</w>\": 24180,\n  \"starrer</w>\": 41311,\n  \"starring</w>\": 6660,\n  \"starry</w>\": 30963,\n  \"stars</w>\": 2895,\n  \"starship</w>\": 37166,\n  \"start\": 17466,\n  \"start</w>\": 1572,\n  \"started</w>\": 2760,\n  \"starter</w>\": 7800,\n  \"starters</w>\": 22222,\n  \"starting</w>\": 2530,\n  \"startrek\": 30642,\n  \"startrek</w>\": 15349,\n  \"starts</w>\": 3105,\n  \"startu\": 6996,\n  \"startup\": 18049,\n  \"startup</w>\": 5882,\n  \"startups</w>\": 9056,\n  \"starve</w>\": 46957,\n  \"starving</w>\": 30473,\n  \"starwar\": 17287,\n  \"starwars\": 26239,\n  \"starwars</w>\": 7887,\n  \"starz</w>\": 25928,\n  \"stas</w>\": 19866,\n  \"stash</w>\": 27711,\n  \"stasy</w>\": 45942,\n  \"stat\": 3004,\n  \"stat</w>\": 15216,\n  \"state\": 3492,\n  \"state</w>\": 1295,\n  \"statec\": 33931,\n  \"stated</w>\": 19629,\n  \"statedept</w>\": 41458,\n  \"statefair</w>\": 40305,\n  \"statement</w>\": 5401,\n  \"statements</w>\": 19513,\n  \"staten</w>\": 38263,\n  \"stateof\": 35195,\n  \"states\": 22125,\n  \"states</w>\": 4218,\n  \"statesman</w>\": 35301,\n  \"stateu</w>\": 44248,\n  \"statewide</w>\": 29561,\n  \"stati\": 9622,\n  \"static</w>\": 16363,\n  \"stating</w>\": 35147,\n  \"station\": 13498,\n  \"station</w>\": 2631,\n  \"stationary</w>\": 29493,\n  \"stationed</w>\": 47618,\n  \"stationery</w>\": 33851,\n  \"stations</w>\": 10051,\n  \"statistical</w>\": 29349,\n  \"statistics</w>\": 14165,\n  \"stats</w>\": 7294,\n  \"statu\": 32481,\n  \"statue</w>\": 8222,\n  \"statues</w>\": 24363,\n  \"status</w>\": 6414,\n  \"stau\": 28550,\n  \"staur\": 3709,\n  \"stav\": 20285,\n  \"stax</w>\": 32235,\n  \"stay\": 4714,\n  \"stay</w>\": 2277,\n  \"stayed</w>\": 13805,\n  \"staying</w>\": 8993,\n  \"stays</w>\": 13311,\n  \"staytuned</w>\": 39285,\n  \"stc</w>\": 29859,\n  \"std</w>\": 30477,\n  \"ste\": 795,\n  \"ste</w>\": 2686,\n  \"stea</w>\": 46614,\n  \"stead\": 16101,\n  \"stead</w>\": 11031,\n  \"steadily</w>\": 35049,\n  \"steady</w>\": 12937,\n  \"steak\": 26955,\n  \"steak</w>\": 8913,\n  \"steakhouse</w>\": 35031,\n  \"steaks</w>\": 30655,\n  \"steal\": 37070,\n  \"steal</w>\": 10181,\n  \"stealing</w>\": 14242,\n  \"steals</w>\": 20224,\n  \"stealth</w>\": 25327,\n  \"steam\": 10962,\n  \"steam</w>\": 6972,\n  \"steamboat</w>\": 41121,\n  \"steamed</w>\": 29007,\n  \"steamer</w>\": 49075,\n  \"steaming</w>\": 43746,\n  \"steampunk</w>\": 24130,\n  \"steamy</w>\": 43104,\n  \"stec</w>\": 46713,\n  \"stech\": 48949,\n  \"stech</w>\": 32455,\n  \"sted\": 20426,\n  \"sted</w>\": 1356,\n  \"stee\": 31793,\n  \"steed</w>\": 48293,\n  \"steel\": 6938,\n  \"steel</w>\": 4726,\n  \"steele</w>\": 19460,\n  \"steelers</w>\": 14430,\n  \"steen\": 42851,\n  \"steen</w>\": 18625,\n  \"steep\": 28648,\n  \"steep</w>\": 20714,\n  \"steer</w>\": 27612,\n  \"steering</w>\": 19833,\n  \"stef\": 29158,\n  \"stefan\": 15004,\n  \"stefan</w>\": 18829,\n  \"stefani</w>\": 38319,\n  \"stefano</w>\": 30719,\n  \"steff\": 30075,\n  \"stein\": 13653,\n  \"stein</w>\": 5818,\n  \"steiner</w>\": 36314,\n  \"stel\": 9102,\n  \"stel</w>\": 10798,\n  \"stell\": 22355,\n  \"stella\": 46178,\n  \"stella</w>\": 17869,\n  \"stellar</w>\": 13810,\n  \"stellen\": 42754,\n  \"stem\": 24342,\n  \"stem</w>\": 6761,\n  \"stemc\": 40486,\n  \"stems</w>\": 31503,\n  \"sten\": 7652,\n  \"sten</w>\": 7877,\n  \"stencil</w>\": 47854,\n  \"stennis</w>\": 45636,\n  \"step\": 15572,\n  \"step</w>\": 3348,\n  \"steph\": 3522,\n  \"steph</w>\": 16251,\n  \"stephan</w>\": 37312,\n  \"stephani\": 48121,\n  \"stephanie</w>\": 14361,\n  \"stephen\": 10421,\n  \"stephen</w>\": 6078,\n  \"stephenking</w>\": 46361,\n  \"stephens</w>\": 22256,\n  \"stephenson</w>\": 37280,\n  \"stepped</w>\": 18384,\n  \"stepping</w>\": 15906,\n  \"steps</w>\": 5408,\n  \"ster\": 1022,\n  \"ster</w>\": 881,\n  \"stere\": 9229,\n  \"stered</w>\": 6935,\n  \"stereo\": 15992,\n  \"stereo</w>\": 17400,\n  \"stereotypes</w>\": 27890,\n  \"steria</w>\": 38804,\n  \"stering</w>\": 14175,\n  \"sterling\": 45790,\n  \"sterling</w>\": 9378,\n  \"stern\": 36254,\n  \"stern</w>\": 2945,\n  \"steroids</w>\": 37670,\n  \"sterone</w>\": 39418,\n  \"sters</w>\": 2132,\n  \"stery</w>\": 24232,\n  \"stest</w>\": 8556,\n  \"stev\": 11640,\n  \"steve\": 7412,\n  \"steve</w>\": 3803,\n  \"steven\": 10973,\n  \"steven</w>\": 8016,\n  \"stevens</w>\": 13877,\n  \"stevenson</w>\": 25091,\n  \"stevie\": 42104,\n  \"stevie</w>\": 18969,\n  \"stew</w>\": 17906,\n  \"stewar\": 28453,\n  \"steward\": 34980,\n  \"steward</w>\": 43355,\n  \"stewards</w>\": 49294,\n  \"stewardship</w>\": 36720,\n  \"stewart</w>\": 8120,\n  \"stfu</w>\": 47000,\n  \"stg</w>\": 48387,\n  \"stgeorge\": 43698,\n  \"sth\": 13456,\n  \"sth</w>\": 34004,\n  \"sthe\": 16491,\n  \"sthel\": 42863,\n  \"sti\": 860,\n  \"sti</w>\": 12439,\n  \"stia</w>\": 26492,\n  \"stible</w>\": 25835,\n  \"stic\": 5868,\n  \"stic</w>\": 1561,\n  \"stical</w>\": 16660,\n  \"stically</w>\": 19041,\n  \"stick\": 5483,\n  \"stick</w>\": 4987,\n  \"sticker</w>\": 11270,\n  \"stickers</w>\": 11613,\n  \"sticking</w>\": 21021,\n  \"sticks</w>\": 10016,\n  \"sticky</w>\": 18887,\n  \"stics</w>\": 5449,\n  \"stie\": 38164,\n  \"stie</w>\": 11000,\n  \"stier</w>\": 42069,\n  \"sties</w>\": 16428,\n  \"stiff\": 43471,\n  \"stiff</w>\": 21441,\n  \"stig\": 4088,\n  \"stig</w>\": 42551,\n  \"stigate</w>\": 15390,\n  \"stigma</w>\": 20619,\n  \"stik</w>\": 42247,\n  \"stil\": 21790,\n  \"stil</w>\": 37519,\n  \"stiles</w>\": 33028,\n  \"still\": 13209,\n  \"still</w>\": 1170,\n  \"stills</w>\": 20259,\n  \"stim\": 18269,\n  \"stime</w>\": 24711,\n  \"stimul\": 16434,\n  \"stimulate</w>\": 42380,\n  \"stimulating</w>\": 41237,\n  \"stimulation</w>\": 39530,\n  \"stimulus</w>\": 47283,\n  \"stin\": 2588,\n  \"stin</w>\": 4025,\n  \"stina</w>\": 22359,\n  \"stine</w>\": 7098,\n  \"sting\": 19868,\n  \"sting</w>\": 1271,\n  \"stingly</w>\": 49332,\n  \"stingray</w>\": 43229,\n  \"stink</w>\": 38213,\n  \"stinky</w>\": 44957,\n  \"stino</w>\": 40658,\n  \"stint</w>\": 33531,\n  \"stion</w>\": 10812,\n  \"stip\": 39869,\n  \"stips</w>\": 44756,\n  \"stique</w>\": 43305,\n  \"stir\": 12416,\n  \"stir</w>\": 19564,\n  \"stirling</w>\": 23128,\n  \"stirring</w>\": 39205,\n  \"stis</w>\": 45224,\n  \"stit\": 14110,\n  \"stitch\": 30003,\n  \"stitch</w>\": 14771,\n  \"stitched</w>\": 36540,\n  \"stitcher</w>\": 48204,\n  \"stitches</w>\": 32360,\n  \"stitching</w>\": 45208,\n  \"stitu\": 14585,\n  \"stitutes</w>\": 40479,\n  \"stive</w>\": 22426,\n  \"stix</w>\": 48829,\n  \"stjohn\": 36153,\n  \"stl\": 14179,\n  \"stl</w>\": 12527,\n  \"stlblues</w>\": 44138,\n  \"stlcards</w>\": 28644,\n  \"stle</w>\": 7698,\n  \"stles</w>\": 48638,\n  \"stlouis\": 40358,\n  \"stlouis</w>\": 39516,\n  \"stm</w>\": 28333,\n  \"stn</w>\": 27175,\n  \"sto\": 928,\n  \"sto</w>\": 5723,\n  \"stock\": 5899,\n  \"stock</w>\": 3206,\n  \"stocked</w>\": 23552,\n  \"stockholm</w>\": 16024,\n  \"stocki\": 42944,\n  \"stocking</w>\": 17335,\n  \"stockings</w>\": 28040,\n  \"stockmarket</w>\": 40359,\n  \"stockport</w>\": 35569,\n  \"stocks</w>\": 9321,\n  \"stockton</w>\": 26130,\n  \"stoday</w>\": 22392,\n  \"stok</w>\": 43782,\n  \"stoke\": 31338,\n  \"stoke</w>\": 13550,\n  \"stoked</w>\": 13160,\n  \"stokes</w>\": 27512,\n  \"stol\": 11401,\n  \"stol</w>\": 6700,\n  \"stole</w>\": 10995,\n  \"stolen</w>\": 8704,\n  \"stolic</w>\": 45020,\n  \"stom\": 2343,\n  \"stom</w>\": 38068,\n  \"stoma</w>\": 43545,\n  \"stomach</w>\": 14722,\n  \"stomp</w>\": 40165,\n  \"stomping</w>\": 46144,\n  \"ston\": 4101,\n  \"ston</w>\": 1839,\n  \"stone\": 7694,\n  \"stone</w>\": 2441,\n  \"stoned</w>\": 36248,\n  \"stonehenge</w>\": 42417,\n  \"stoner\": 35131,\n  \"stoner</w>\": 29115,\n  \"stones\": 42659,\n  \"stones</w>\": 6885,\n  \"stonewall</w>\": 39688,\n  \"stoney</w>\": 44198,\n  \"stony\": 41717,\n  \"stony</w>\": 35691,\n  \"stoo\": 24505,\n  \"stood</w>\": 9151,\n  \"stool\": 34413,\n  \"stool</w>\": 22314,\n  \"stop\": 6005,\n  \"stop</w>\": 1691,\n  \"stopbrexit</w>\": 48680,\n  \"stopp\": 15738,\n  \"stopped</w>\": 6015,\n  \"stopper</w>\": 32147,\n  \"stoppers</w>\": 34457,\n  \"stopping</w>\": 10735,\n  \"stops</w>\": 9822,\n  \"stopthe\": 26463,\n  \"stor\": 809,\n  \"stor</w>\": 17740,\n  \"storage</w>\": 6824,\n  \"store\": 17769,\n  \"store</w>\": 2183,\n  \"stored</w>\": 28257,\n  \"stores</w>\": 6370,\n  \"storey</w>\": 24025,\n  \"storians</w>\": 34628,\n  \"stories</w>\": 3784,\n  \"storing</w>\": 40087,\n  \"stork</w>\": 46452,\n  \"storm\": 7434,\n  \"storm</w>\": 2819,\n  \"stormed</w>\": 45939,\n  \"stormhour</w>\": 12161,\n  \"storming</w>\": 24842,\n  \"storms</w>\": 6464,\n  \"stormtrooper</w>\": 49218,\n  \"stormy</w>\": 20075,\n  \"stors</w>\": 7178,\n  \"story\": 6512,\n  \"story</w>\": 1134,\n  \"storyline</w>\": 37079,\n  \"storymonth</w>\": 23717,\n  \"storyteller</w>\": 35882,\n  \"storytelling</w>\": 14457,\n  \"storytime</w>\": 44197,\n  \"stos</w>\": 19281,\n  \"stou\": 37168,\n  \"stour\": 37361,\n  \"stour</w>\": 21928,\n  \"stout</w>\": 16550,\n  \"stove</w>\": 21423,\n  \"stow\": 44284,\n  \"stow</w>\": 17046,\n  \"stowe</w>\": 34196,\n  \"stown\": 28071,\n  \"stown</w>\": 7939,\n  \"stp</w>\": 30576,\n  \"stpatrick\": 21343,\n  \"stpatricksday</w>\": 22747,\n  \"str\": 807,\n  \"str</w>\": 15913,\n  \"stra\": 1894,\n  \"stra</w>\": 6253,\n  \"strack</w>\": 46861,\n  \"strada</w>\": 31134,\n  \"strade</w>\": 48968,\n  \"straigh\": 31016,\n  \"straight\": 22114,\n  \"straight</w>\": 4241,\n  \"strain</w>\": 16887,\n  \"strains</w>\": 38067,\n  \"strait</w>\": 22946,\n  \"straits</w>\": 41984,\n  \"stral</w>\": 23289,\n  \"stralia</w>\": 42510,\n  \"stran\": 18411,\n  \"strand\": 18214,\n  \"strand</w>\": 17826,\n  \"stranded</w>\": 22975,\n  \"strang\": 11138,\n  \"strange\": 33380,\n  \"strange</w>\": 7288,\n  \"strangely</w>\": 37566,\n  \"stranger\": 35541,\n  \"stranger</w>\": 14149,\n  \"strangers</w>\": 20684,\n  \"strangerthings</w>\": 43271,\n  \"strangest</w>\": 46740,\n  \"strap</w>\": 13946,\n  \"strapped</w>\": 40922,\n  \"straps</w>\": 31213,\n  \"stras\": 36814,\n  \"stras</w>\": 42125,\n  \"strasbourg</w>\": 39576,\n  \"strat\": 11345,\n  \"strat</w>\": 32925,\n  \"strata</w>\": 47278,\n  \"strate\": 3532,\n  \"strate</w>\": 28758,\n  \"strategi\": 49102,\n  \"strategic</w>\": 10246,\n  \"strategically</w>\": 45706,\n  \"strategies</w>\": 9942,\n  \"strategist</w>\": 37180,\n  \"strategy</w>\": 5637,\n  \"strates</w>\": 45724,\n  \"stratford</w>\": 23955,\n  \"strath\": 21997,\n  \"stration</w>\": 3156,\n  \"strato\": 28878,\n  \"strauss</w>\": 32033,\n  \"strava</w>\": 34625,\n  \"stravel</w>\": 43494,\n  \"straw\": 7430,\n  \"straw</w>\": 16438,\n  \"strawberries</w>\": 17796,\n  \"strawberry</w>\": 10233,\n  \"straws</w>\": 33048,\n  \"stray\": 30784,\n  \"stray</w>\": 15712,\n  \"stre\": 1079,\n  \"stre</w>\": 19652,\n  \"stread</w>\": 27797,\n  \"streak</w>\": 11749,\n  \"streaks</w>\": 42092,\n  \"stream\": 8659,\n  \"stream</w>\": 3322,\n  \"streamed</w>\": 26280,\n  \"streamer</w>\": 25178,\n  \"streamers</w>\": 19937,\n  \"streaming</w>\": 6278,\n  \"streamline</w>\": 44917,\n  \"streams</w>\": 13545,\n  \"stree\": 35082,\n  \"stree</w>\": 32438,\n  \"streep</w>\": 38701,\n  \"street\": 4839,\n  \"street</w>\": 2012,\n  \"streetart</w>\": 12948,\n  \"streetcar</w>\": 34268,\n  \"streetfood</w>\": 44486,\n  \"streetphotography</w>\": 20786,\n  \"streets</w>\": 6058,\n  \"streetstyle</w>\": 39118,\n  \"streetwear</w>\": 37298,\n  \"strel</w>\": 39685,\n  \"stren\": 4349,\n  \"streng\": 4472,\n  \"strength\": 15475,\n  \"strength</w>\": 5959,\n  \"strengthen</w>\": 16318,\n  \"strengthened</w>\": 47131,\n  \"strengthening</w>\": 23475,\n  \"strengthens</w>\": 40280,\n  \"strengths</w>\": 29268,\n  \"stress\": 17297,\n  \"stress</w>\": 5843,\n  \"stressed</w>\": 16497,\n  \"stresses</w>\": 32112,\n  \"stressful</w>\": 24268,\n  \"stressing</w>\": 35917,\n  \"stret\": 12265,\n  \"stretch</w>\": 10064,\n  \"stretched</w>\": 29393,\n  \"stretches</w>\": 32231,\n  \"stretching</w>\": 24423,\n  \"stri\": 1493,\n  \"stri</w>\": 27795,\n  \"stria</w>\": 39620,\n  \"strial</w>\": 30217,\n  \"strian</w>\": 12924,\n  \"stric\": 2607,\n  \"strick\": 25181,\n  \"strickland</w>\": 48939,\n  \"strict</w>\": 21585,\n  \"strictly</w>\": 16475,\n  \"stride</w>\": 36024,\n  \"strides</w>\": 37355,\n  \"stries</w>\": 18171,\n  \"strife</w>\": 46473,\n  \"strike\": 20774,\n  \"strike</w>\": 5767,\n  \"striker</w>\": 12448,\n  \"strikers</w>\": 33465,\n  \"strikes</w>\": 9280,\n  \"striking</w>\": 13392,\n  \"string\": 25512,\n  \"string</w>\": 9696,\n  \"strings</w>\": 15699,\n  \"strip</w>\": 9317,\n  \"stripe</w>\": 19368,\n  \"striped</w>\": 22192,\n  \"stripes</w>\": 14239,\n  \"stripped</w>\": 26602,\n  \"stripper</w>\": 45759,\n  \"stripping</w>\": 48588,\n  \"strips</w>\": 19000,\n  \"strive</w>\": 22140,\n  \"striving</w>\": 37671,\n  \"stro\": 3121,\n  \"stro</w>\": 6186,\n  \"stroke\": 44621,\n  \"stroke</w>\": 10403,\n  \"strokes</w>\": 26595,\n  \"strol\": 30123,\n  \"stroll</w>\": 15924,\n  \"stroller</w>\": 47076,\n  \"strolling</w>\": 40911,\n  \"strom</w>\": 14707,\n  \"stron\": 4165,\n  \"strong\": 10436,\n  \"strong</w>\": 2389,\n  \"stronger\": 27760,\n  \"stronger</w>\": 9245,\n  \"strongertogether</w>\": 38532,\n  \"strongest</w>\": 16171,\n  \"strongh\": 38678,\n  \"strongly</w>\": 15507,\n  \"strophy</w>\": 47912,\n  \"strou\": 48425,\n  \"stroud</w>\": 39895,\n  \"strous</w>\": 23752,\n  \"stru\": 1666,\n  \"struc\": 3311,\n  \"struck</w>\": 10861,\n  \"struction</w>\": 12497,\n  \"structural</w>\": 16899,\n  \"structure</w>\": 5285,\n  \"structured</w>\": 27147,\n  \"structures</w>\": 14171,\n  \"structuring</w>\": 37496,\n  \"strugg\": 5176,\n  \"struggle</w>\": 8443,\n  \"struggled</w>\": 32921,\n  \"struggles</w>\": 17446,\n  \"struggling</w>\": 12135,\n  \"struly\": 34118,\n  \"strum</w>\": 37632,\n  \"strung</w>\": 46033,\n  \"strust</w>\": 23920,\n  \"strut</w>\": 48375,\n  \"stry\": 17325,\n  \"stry</w>\": 2245,\n  \"sts</w>\": 1088,\n  \"stu\": 858,\n  \"stu</w>\": 23531,\n  \"stuart\": 32054,\n  \"stuart</w>\": 11723,\n  \"stub\": 27066,\n  \"stubborn</w>\": 38955,\n  \"stuck</w>\": 6596,\n  \"stud\": 22368,\n  \"stud</w>\": 13319,\n  \"studded</w>\": 29153,\n  \"studen\": 44156,\n  \"student\": 14681,\n  \"student</w>\": 2556,\n  \"students</w>\": 1712,\n  \"studi\": 5691,\n  \"studied</w>\": 21369,\n  \"studies</w>\": 6426,\n  \"studio\": 17798,\n  \"studio</w>\": 3155,\n  \"studios</w>\": 6231,\n  \"studs</w>\": 27571,\n  \"study\": 21051,\n  \"study</w>\": 3123,\n  \"studyabroad</w>\": 45425,\n  \"studying</w>\": 8826,\n  \"stuff\": 46072,\n  \"stuff</w>\": 3487,\n  \"stuffed</w>\": 11781,\n  \"stuffing</w>\": 31612,\n  \"stuffs</w>\": 43455,\n  \"stuk</w>\": 32424,\n  \"stumb\": 16784,\n  \"stumble</w>\": 39045,\n  \"stumbled</w>\": 21776,\n  \"stump</w>\": 32064,\n  \"stun\": 3088,\n  \"stun</w>\": 37959,\n  \"stunned</w>\": 34034,\n  \"stunner</w>\": 29965,\n  \"stunning</w>\": 3769,\n  \"stunningly</w>\": 47515,\n  \"stuns</w>\": 43796,\n  \"stunt</w>\": 19905,\n  \"stunts</w>\": 40118,\n  \"stupi\": 18975,\n  \"stupid\": 42600,\n  \"stupid</w>\": 8085,\n  \"stupidity</w>\": 33766,\n  \"stur\": 10676,\n  \"sturdy</w>\": 43780,\n  \"stures</w>\": 27223,\n  \"sturgeon</w>\": 31580,\n  \"sturi\": 21747,\n  \"sturridge</w>\": 45331,\n  \"stutt\": 30444,\n  \"stuttgart</w>\": 32219,\n  \"stv\": 27060,\n  \"stv</w>\": 9708,\n  \"stweet</w>\": 46832,\n  \"stweets</w>\": 39174,\n  \"stx</w>\": 42548,\n  \"sty\": 1421,\n  \"sty</w>\": 2920,\n  \"style\": 12356,\n  \"style</w>\": 1844,\n  \"styled</w>\": 17974,\n  \"styles</w>\": 6948,\n  \"styli\": 38577,\n  \"styling</w>\": 14597,\n  \"stylish</w>\": 10378,\n  \"stylist</w>\": 15928,\n  \"styn</w>\": 41394,\n  \"su\": 605,\n  \"su</w>\": 2937,\n  \"sua</w>\": 42448,\n  \"suarez</w>\": 21437,\n  \"suave</w>\": 47305,\n  \"sub\": 1783,\n  \"sub</w>\": 7765,\n  \"subaru</w>\": 21319,\n  \"subjec\": 16090,\n  \"subject</w>\": 10300,\n  \"subjects</w>\": 22099,\n  \"subli\": 16350,\n  \"sublime</w>\": 22367,\n  \"submarine</w>\": 19968,\n  \"submer\": 27156,\n  \"submerged</w>\": 43171,\n  \"submission</w>\": 16571,\n  \"submissions</w>\": 21566,\n  \"submit</w>\": 10423,\n  \"submitted</w>\": 15189,\n  \"submitting</w>\": 38788,\n  \"subram\": 49207,\n  \"subs</w>\": 16398,\n  \"subscri\": 5838,\n  \"subscribe</w>\": 9839,\n  \"subscribed</w>\": 44867,\n  \"subscriber</w>\": 36292,\n  \"subscribers</w>\": 17337,\n  \"subscription</w>\": 17979,\n  \"subscriptions</w>\": 47162,\n  \"subsequ\": 33598,\n  \"subsequent</w>\": 44323,\n  \"subsi\": 14856,\n  \"subsidi\": 45029,\n  \"subsidiary</w>\": 45506,\n  \"subsidies</w>\": 37685,\n  \"subsidy</w>\": 47462,\n  \"substan\": 17487,\n  \"substance</w>\": 19309,\n  \"substances</w>\": 36834,\n  \"substantial</w>\": 27171,\n  \"substantially</w>\": 47577,\n  \"substitu\": 18529,\n  \"substitute</w>\": 25340,\n  \"subtitles</w>\": 39479,\n  \"subtle</w>\": 16536,\n  \"subur\": 12517,\n  \"suburb</w>\": 37664,\n  \"suburban</w>\": 23570,\n  \"suburbs</w>\": 25317,\n  \"subway</w>\": 12196,\n  \"suc\": 1869,\n  \"succe\": 7981,\n  \"succeed</w>\": 13556,\n  \"succeeded</w>\": 41077,\n  \"succes\": 39019,\n  \"success\": 3695,\n  \"success</w>\": 3034,\n  \"successes</w>\": 29436,\n  \"successful</w>\": 4670,\n  \"successfully</w>\": 9934,\n  \"succession</w>\": 38491,\n  \"successive</w>\": 41319,\n  \"successor</w>\": 34774,\n  \"succu\": 45253,\n  \"succul\": 25671,\n  \"succulent</w>\": 35236,\n  \"such</w>\": 2046,\n  \"suction</w>\": 42786,\n  \"sud\": 8067,\n  \"sud</w>\": 33714,\n  \"sudan\": 31149,\n  \"sudan</w>\": 13474,\n  \"sudanese</w>\": 42837,\n  \"sudbury</w>\": 32488,\n  \"sudden\": 10833,\n  \"sudden</w>\": 15433,\n  \"suddenly</w>\": 11076,\n  \"sue\": 14045,\n  \"sue</w>\": 6641,\n  \"sued</w>\": 22225,\n  \"suede</w>\": 21036,\n  \"sues</w>\": 17105,\n  \"suf\": 21204,\n  \"suf</w>\": 22579,\n  \"sufc</w>\": 37091,\n  \"suff\": 4866,\n  \"suffe\": 13510,\n  \"suffer</w>\": 13557,\n  \"suffered</w>\": 14766,\n  \"suffering</w>\": 10140,\n  \"suffers</w>\": 22389,\n  \"sufficient</w>\": 28410,\n  \"suffol\": 13775,\n  \"suffolk\": 46408,\n  \"suffolk</w>\": 15685,\n  \"suffra\": 34596,\n  \"suffrage</w>\": 39567,\n  \"sufi</w>\": 39756,\n  \"sug\": 3189,\n  \"suga</w>\": 28757,\n  \"sugar\": 12418,\n  \"sugar</w>\": 5574,\n  \"sugge\": 6345,\n  \"suggest</w>\": 13356,\n  \"suggested</w>\": 18790,\n  \"suggesti\": 15033,\n  \"suggesting</w>\": 29792,\n  \"suggestion</w>\": 23741,\n  \"suggestions</w>\": 16052,\n  \"suggests</w>\": 13333,\n  \"suho</w>\": 32744,\n  \"sui</w>\": 24972,\n  \"suici\": 16372,\n  \"suicidal</w>\": 37165,\n  \"suicide\": 31310,\n  \"suicide</w>\": 8247,\n  \"suing</w>\": 18309,\n  \"suisse</w>\": 35964,\n  \"suit\": 11887,\n  \"suit</w>\": 3940,\n  \"suitable</w>\": 17476,\n  \"suitcase</w>\": 27792,\n  \"suite</w>\": 9346,\n  \"suited</w>\": 25919,\n  \"suites</w>\": 21523,\n  \"suits</w>\": 9949,\n  \"suk\": 24820,\n  \"suk</w>\": 6886,\n  \"suka</w>\": 44017,\n  \"suke</w>\": 25590,\n  \"sukh\": 46961,\n  \"suki</w>\": 32704,\n  \"sul\": 1767,\n  \"sul</w>\": 19879,\n  \"sula\": 34713,\n  \"sula</w>\": 26143,\n  \"sullivan</w>\": 14477,\n  \"sully</w>\": 37752,\n  \"sulph\": 37234,\n  \"sulphur</w>\": 47659,\n  \"sultan\": 35650,\n  \"sultan</w>\": 17049,\n  \"sum\": 7054,\n  \"sum</w>\": 8257,\n  \"suma</w>\": 47938,\n  \"sumat\": 32640,\n  \"sumatra</w>\": 47346,\n  \"sume</w>\": 45457,\n  \"sumi</w>\": 41248,\n  \"summ\": 1309,\n  \"summar\": 34657,\n  \"summari\": 31993,\n  \"summary</w>\": 13435,\n  \"summed</w>\": 34912,\n  \"summer\": 5500,\n  \"summer</w>\": 1673,\n  \"summers</w>\": 18254,\n  \"summerslam</w>\": 40264,\n  \"summertime</w>\": 19025,\n  \"summit\": 30011,\n  \"summit</w>\": 3768,\n  \"summon\": 27622,\n  \"summon</w>\": 39782,\n  \"sumner</w>\": 46813,\n  \"sumo</w>\": 33734,\n  \"sump\": 34252,\n  \"sumptuous</w>\": 47354,\n  \"sums</w>\": 13325,\n  \"sun\": 968,\n  \"sun</w>\": 2176,\n  \"sunbathing</w>\": 46994,\n  \"sunburn</w>\": 45767,\n  \"sund</w>\": 40735,\n  \"sundae</w>\": 38078,\n  \"sundance</w>\": 24128,\n  \"sundar\": 44936,\n  \"sunday\": 6649,\n  \"sunday</w>\": 1706,\n  \"sundayfunday</w>\": 21565,\n  \"sundaymorning</w>\": 24809,\n  \"sundaymotivation</w>\": 46227,\n  \"sundays</w>\": 15827,\n  \"sundaywith\": 26469,\n  \"sundaywithmarsha</w>\": 26662,\n  \"sunder\": 15097,\n  \"sunderland\": 45727,\n  \"sunderland</w>\": 18851,\n  \"sundown</w>\": 44438,\n  \"sune</w>\": 41096,\n  \"sunflower</w>\": 21559,\n  \"sunflowers</w>\": 39809,\n  \"sung\": 16903,\n  \"sung</w>\": 6047,\n  \"sunglasses</w>\": 12906,\n  \"suni\": 17663,\n  \"suni</w>\": 47010,\n  \"sunil</w>\": 32861,\n  \"sunite</w>\": 21382,\n  \"sunited</w>\": 35276,\n  \"sunk</w>\": 37534,\n  \"sunken</w>\": 43473,\n  \"sunlight</w>\": 17996,\n  \"sunni</w>\": 44315,\n  \"sunny\": 15632,\n  \"sunny</w>\": 5438,\n  \"sunrise</w>\": 5610,\n  \"suns</w>\": 18322,\n  \"sunscreen</w>\": 29355,\n  \"sunset\": 37880,\n  \"sunset</w>\": 3424,\n  \"sunsets</w>\": 17721,\n  \"sunshine\": 32761,\n  \"sunshine</w>\": 5385,\n  \"suny</w>\": 41308,\n  \"sup\": 19078,\n  \"sup</w>\": 8249,\n  \"supdates</w>\": 24177,\n  \"super\": 1642,\n  \"super</w>\": 1994,\n  \"superb</w>\": 8930,\n  \"superbike</w>\": 45709,\n  \"superbowl\": 47461,\n  \"superbowl</w>\": 16467,\n  \"supercar</w>\": 27021,\n  \"supercars</w>\": 32185,\n  \"supercell</w>\": 43227,\n  \"supercharged</w>\": 47479,\n  \"supere\": 46831,\n  \"superfood</w>\": 41715,\n  \"supergirl</w>\": 25771,\n  \"superhero</w>\": 14049,\n  \"superheroes</w>\": 23334,\n  \"superint\": 17615,\n  \"superintendent</w>\": 19020,\n  \"superior</w>\": 13205,\n  \"superjunior</w>\": 40475,\n  \"superleague</w>\": 45539,\n  \"superman</w>\": 11237,\n  \"supermarket</w>\": 19897,\n  \"supermarkets</w>\": 45106,\n  \"supermodel</w>\": 41963,\n  \"supermoon</w>\": 36571,\n  \"supernatural</w>\": 15484,\n  \"supernova</w>\": 39843,\n  \"superrugby</w>\": 48717,\n  \"supersonic</w>\": 42019,\n  \"supersport</w>\": 46319,\n  \"superst\": 38202,\n  \"superstar\": 32551,\n  \"superstar</w>\": 10472,\n  \"superstars</w>\": 25797,\n  \"supervis\": 12709,\n  \"supervised</w>\": 41316,\n  \"supervision</w>\": 36234,\n  \"supervisor</w>\": 20366,\n  \"supervisors</w>\": 37958,\n  \"superyacht</w>\": 42714,\n  \"supp\": 1023,\n  \"supper</w>\": 15727,\n  \"supple\": 31431,\n  \"supplement</w>\": 19924,\n  \"supplements</w>\": 21265,\n  \"supplied</w>\": 24106,\n  \"supplier</w>\": 18043,\n  \"suppliers</w>\": 24196,\n  \"supplies</w>\": 9384,\n  \"supply\": 25074,\n  \"supply</w>\": 6389,\n  \"supplychain</w>\": 31224,\n  \"supplying</w>\": 32739,\n  \"suppo\": 6941,\n  \"suppor\": 2104,\n  \"support\": 12062,\n  \"support</w>\": 1425,\n  \"supported</w>\": 8038,\n  \"supporter</w>\": 12992,\n  \"supporters</w>\": 7403,\n  \"supportindiefilm</w>\": 43976,\n  \"supporting</w>\": 3976,\n  \"supportive</w>\": 18313,\n  \"supportlocal</w>\": 43852,\n  \"supports</w>\": 8336,\n  \"supportsmall\": 30941,\n  \"supportsmallstreamers</w>\": 36097,\n  \"suppose</w>\": 18924,\n  \"supposed</w>\": 9119,\n  \"supposedly</w>\": 32302,\n  \"suppre\": 20542,\n  \"suppression</w>\": 36508,\n  \"supra</w>\": 48485,\n  \"supre\": 5875,\n  \"supremac\": 28643,\n  \"supremacist</w>\": 39005,\n  \"supremacy</w>\": 28913,\n  \"supreme\": 35222,\n  \"supreme</w>\": 7468,\n  \"supt</w>\": 23625,\n  \"sur\": 1090,\n  \"sur</w>\": 7123,\n  \"sura\": 33412,\n  \"sura</w>\": 49125,\n  \"surabaya</w>\": 45227,\n  \"surance</w>\": 22184,\n  \"surat</w>\": 30201,\n  \"sure\": 14320,\n  \"sure</w>\": 1650,\n  \"sured</w>\": 36869,\n  \"surely</w>\": 11409,\n  \"sures</w>\": 12725,\n  \"suresh\": 32118,\n  \"suresh</w>\": 31464,\n  \"sureshpp\": 41924,\n  \"sureshpprabhu</w>\": 42050,\n  \"surf\": 10176,\n  \"surf</w>\": 10322,\n  \"surface</w>\": 7744,\n  \"surfaces</w>\": 20746,\n  \"surfer</w>\": 24925,\n  \"surfers</w>\": 34842,\n  \"surfing</w>\": 15762,\n  \"surg\": 13045,\n  \"surge</w>\": 17457,\n  \"surgeon</w>\": 16039,\n  \"surgeons</w>\": 26000,\n  \"surger\": 5122,\n  \"surgeries</w>\": 34940,\n  \"surgery</w>\": 5344,\n  \"surgical</w>\": 16386,\n  \"suri\": 14130,\n  \"suri</w>\": 33952,\n  \"suring</w>\": 16817,\n  \"suriya</w>\": 17832,\n  \"surpass</w>\": 45494,\n  \"surpassed</w>\": 25648,\n  \"surplus</w>\": 29413,\n  \"surpri\": 3244,\n  \"surprise</w>\": 5099,\n  \"surprised</w>\": 8949,\n  \"surprises</w>\": 16920,\n  \"surprising</w>\": 14964,\n  \"surprisingly</w>\": 17367,\n  \"surreal</w>\": 18408,\n  \"surrealism</w>\": 41773,\n  \"surrender</w>\": 20964,\n  \"surrendered</w>\": 44601,\n  \"surrey\": 26489,\n  \"surrey</w>\": 14315,\n  \"surro\": 47499,\n  \"surroun\": 8250,\n  \"surround\": 26543,\n  \"surround</w>\": 22999,\n  \"surrounded</w>\": 13589,\n  \"surrounding</w>\": 12544,\n  \"surroundings</w>\": 26915,\n  \"surrounds</w>\": 39012,\n  \"suru</w>\": 49240,\n  \"surve\": 8952,\n  \"surveill\": 15408,\n  \"surveillance</w>\": 15578,\n  \"survey\": 45914,\n  \"survey</w>\": 6809,\n  \"surveying</w>\": 33085,\n  \"surveys</w>\": 25096,\n  \"survi\": 3440,\n  \"surviv\": 12922,\n  \"survival</w>\": 10172,\n  \"survive</w>\": 10431,\n  \"survived</w>\": 13483,\n  \"survives</w>\": 30927,\n  \"surviving</w>\": 18609,\n  \"survivor\": 31934,\n  \"survivor</w>\": 10944,\n  \"survivors</w>\": 13711,\n  \"surya</w>\": 37767,\n  \"sus\": 8091,\n  \"sus</w>\": 3036,\n  \"susa</w>\": 20546,\n  \"susan\": 19922,\n  \"susan</w>\": 10168,\n  \"suscep\": 44270,\n  \"sush\": 22298,\n  \"sushi</w>\": 11729,\n  \"sushmaswar\": 48200,\n  \"susie</w>\": 32284,\n  \"susp\": 7971,\n  \"suspec\": 10298,\n  \"suspect</w>\": 9065,\n  \"suspected</w>\": 15579,\n  \"suspects</w>\": 18265,\n  \"suspen\": 10578,\n  \"suspend</w>\": 41007,\n  \"suspended</w>\": 13126,\n  \"suspends</w>\": 39535,\n  \"suspense</w>\": 21556,\n  \"suspension</w>\": 15417,\n  \"suspici\": 25714,\n  \"suspicion</w>\": 34910,\n  \"suspicious</w>\": 19862,\n  \"sussex\": 31244,\n  \"sussex</w>\": 13266,\n  \"sustain\": 4644,\n  \"sustain</w>\": 28156,\n  \"sustainability</w>\": 9635,\n  \"sustainable\": 23645,\n  \"sustainable</w>\": 7078,\n  \"sustained</w>\": 22699,\n  \"sustaining</w>\": 44418,\n  \"sut\": 23984,\n  \"sut</w>\": 28956,\n  \"sutherland</w>\": 27592,\n  \"sutton\": 39359,\n  \"sutton</w>\": 18564,\n  \"suv</w>\": 15985,\n  \"suz\": 9957,\n  \"suzanne</w>\": 24617,\n  \"suzu\": 36289,\n  \"suzuki</w>\": 16892,\n  \"suzy</w>\": 26552,\n  \"sv\": 6508,\n  \"sv</w>\": 17083,\n  \"svc</w>\": 45065,\n  \"sve\": 47637,\n  \"sven\": 37786,\n  \"sven</w>\": 45183,\n  \"sver\": 45923,\n  \"sville\": 44580,\n  \"sville</w>\": 6741,\n  \"svp</w>\": 28465,\n  \"svt</w>\": 42014,\n  \"svu</w>\": 32123,\n  \"sw\": 1220,\n  \"sw</w>\": 4457,\n  \"swa\": 4707,\n  \"swa</w>\": 31916,\n  \"swach\": 20862,\n  \"swachhb\": 31898,\n  \"swachhbharat</w>\": 36927,\n  \"swag\": 8852,\n  \"swag</w>\": 8177,\n  \"swagg</w>\": 47702,\n  \"swagger</w>\": 35797,\n  \"swain</w>\": 43226,\n  \"swal\": 13433,\n  \"swallow</w>\": 28979,\n  \"swallowed</w>\": 46956,\n  \"swallows</w>\": 45124,\n  \"swam</w>\": 42539,\n  \"swami</w>\": 25021,\n  \"swamp\": 41953,\n  \"swamp</w>\": 16595,\n  \"swamy</w>\": 28445,\n  \"swan\": 8215,\n  \"swan</w>\": 12530,\n  \"swana</w>\": 24699,\n  \"swans</w>\": 19516,\n  \"swansea</w>\": 16567,\n  \"swanson</w>\": 34797,\n  \"swap</w>\": 15234,\n  \"swapped</w>\": 39077,\n  \"swapping</w>\": 44702,\n  \"swaps</w>\": 49242,\n  \"swar\": 11680,\n  \"swarm</w>\": 31577,\n  \"swarovski</w>\": 28515,\n  \"swat\": 32547,\n  \"swat</w>\": 26482,\n  \"swatch</w>\": 48053,\n  \"sway\": 26443,\n  \"sway</w>\": 26617,\n  \"swc</w>\": 42231,\n  \"swe\": 2350,\n  \"swe</w>\": 38070,\n  \"swear</w>\": 7406,\n  \"swearing</w>\": 32627,\n  \"sweat\": 10282,\n  \"sweat</w>\": 12663,\n  \"sweater</w>\": 11455,\n  \"sweaters</w>\": 31303,\n  \"sweating</w>\": 33215,\n  \"sweats</w>\": 39321,\n  \"sweatshirt</w>\": 22442,\n  \"sweaty</w>\": 28419,\n  \"sweden</w>\": 8760,\n  \"swedish</w>\": 11585,\n  \"swee\": 1812,\n  \"sweek</w>\": 30017,\n  \"sweeney</w>\": 27286,\n  \"sweep\": 23220,\n  \"sweep</w>\": 13669,\n  \"sweeping</w>\": 25719,\n  \"sweeps</w>\": 26887,\n  \"sweepstakes</w>\": 25992,\n  \"sweet\": 10957,\n  \"sweet</w>\": 2418,\n  \"sweetened</w>\": 45577,\n  \"sweeter</w>\": 32873,\n  \"sweetest</w>\": 15180,\n  \"sweethe\": 16316,\n  \"sweetheart</w>\": 18079,\n  \"sweetie</w>\": 24450,\n  \"sweetness</w>\": 29713,\n  \"sweets</w>\": 18045,\n  \"swel\": 48470,\n  \"swell\": 35538,\n  \"swell</w>\": 21490,\n  \"swelling</w>\": 46578,\n  \"swept</w>\": 23311,\n  \"swer\": 30514,\n  \"swfc</w>\": 30227,\n  \"swfl</w>\": 46607,\n  \"swi\": 3881,\n  \"swi</w>\": 45223,\n  \"swick</w>\": 17159,\n  \"swif\": 28548,\n  \"swift\": 34843,\n  \"swift</w>\": 8229,\n  \"swild\": 33909,\n  \"swild</w>\": 38696,\n  \"swildlife</w>\": 46818,\n  \"swim\": 4928,\n  \"swim</w>\": 7681,\n  \"swimmer</w>\": 25475,\n  \"swimmers</w>\": 27776,\n  \"swimming</w>\": 7411,\n  \"swims</w>\": 46798,\n  \"swimsuit</w>\": 25504,\n  \"swimwear</w>\": 31889,\n  \"swin\": 14554,\n  \"swin</w>\": 40798,\n  \"swindon</w>\": 29540,\n  \"swine</w>\": 31166,\n  \"swing\": 25292,\n  \"swing</w>\": 7429,\n  \"swinging</w>\": 26760,\n  \"swings</w>\": 29141,\n  \"swipe</w>\": 31828,\n  \"swire</w>\": 42753,\n  \"swirl</w>\": 35795,\n  \"swis\": 23611,\n  \"swish</w>\": 38571,\n  \"swiss\": 37917,\n  \"swiss</w>\": 9287,\n  \"swit\": 3726,\n  \"switch\": 22480,\n  \"switch</w>\": 5893,\n  \"switched</w>\": 22869,\n  \"switches</w>\": 33569,\n  \"switching</w>\": 21155,\n  \"swith\": 17299,\n  \"switzer\": 9835,\n  \"switzerland</w>\": 9912,\n  \"swivel</w>\": 48256,\n  \"swo\": 38673,\n  \"swol\": 29575,\n  \"swollen</w>\": 36129,\n  \"swoo\": 29744,\n  \"swood</w>\": 24158,\n  \"swoon</w>\": 37028,\n  \"swoop</w>\": 45661,\n  \"sword\": 33294,\n  \"sword</w>\": 11356,\n  \"swords</w>\": 27181,\n  \"swork</w>\": 42722,\n  \"sworld</w>\": 33305,\n  \"sworn</w>\": 21130,\n  \"sworth</w>\": 13322,\n  \"swt</w>\": 38878,\n  \"swx</w>\": 20597,\n  \"sx\": 9402,\n  \"sx</w>\": 17806,\n  \"sxsw</w>\": 13369,\n  \"sy\": 974,\n  \"sy</w>\": 2126,\n  \"sya</w>\": 35017,\n  \"sycam\": 34911,\n  \"sycamore</w>\": 43086,\n  \"syd\": 4525,\n  \"syd</w>\": 22504,\n  \"sydney\": 15878,\n  \"sydney</w>\": 5278,\n  \"syed</w>\": 27624,\n  \"syfy</w>\": 32047,\n  \"sykes</w>\": 27287,\n  \"syl\": 6452,\n  \"sylla\": 41708,\n  \"sylvania</w>\": 12011,\n  \"sylve\": 28369,\n  \"sylvester</w>\": 37214,\n  \"sylvia</w>\": 25670,\n  \"sym\": 3645,\n  \"sym</w>\": 40327,\n  \"symb\": 22987,\n  \"symbol</w>\": 13085,\n  \"symboli\": 22019,\n  \"symbolic</w>\": 33177,\n  \"symbolism</w>\": 44679,\n  \"symbols</w>\": 25476,\n  \"symmetry</w>\": 31427,\n  \"symp\": 11468,\n  \"sympathi\": 47493,\n  \"sympathy</w>\": 32477,\n  \"symph\": 9544,\n  \"symphonic</w>\": 42639,\n  \"symphony</w>\": 11180,\n  \"sympo\": 9730,\n  \"symposium</w>\": 9971,\n  \"symptom</w>\": 47799,\n  \"symptoms</w>\": 12956,\n  \"syn\": 3758,\n  \"syn</w>\": 36090,\n  \"synago\": 30945,\n  \"synagogue</w>\": 33518,\n  \"sync</w>\": 20081,\n  \"synchron\": 23943,\n  \"syndic\": 21098,\n  \"syndicate</w>\": 28779,\n  \"syndrome</w>\": 10927,\n  \"syner\": 22283,\n  \"synergy</w>\": 32012,\n  \"syno\": 31533,\n  \"synod</w>\": 47712,\n  \"synopsis</w>\": 47018,\n  \"synth\": 33841,\n  \"synth</w>\": 24462,\n  \"synthe\": 22604,\n  \"synthesi\": 33565,\n  \"synthesis</w>\": 21602,\n  \"synthesizer</w>\": 44077,\n  \"synthetic</w>\": 19917,\n  \"syou\": 26742,\n  \"syour\": 21718,\n  \"syrac\": 17279,\n  \"syracuse</w>\": 19640,\n  \"syrah</w>\": 45364,\n  \"syri\": 18917,\n  \"syria</w>\": 5563,\n  \"syrian\": 47562,\n  \"syrian</w>\": 10041,\n  \"syrians</w>\": 41392,\n  \"syrup</w>\": 16611,\n  \"sys</w>\": 26726,\n  \"syste\": 1933,\n  \"system\": 47813,\n  \"system</w>\": 2422,\n  \"systematic</w>\": 28586,\n  \"systemic</w>\": 33807,\n  \"systems</w>\": 4828,\n  \"sz\": 13438,\n  \"sz</w>\": 15879,\n  \"sze\": 44507,\n  \"szn</w>\": 48092,\n  \"sÃ£o</w>\": 45911,\n  \"sÃ©\": 37879,\n  \"t\": 83,\n  \"t</w>\": 339,\n  \"ta\": 648,\n  \"ta</w>\": 1397,\n  \"taa</w>\": 43874,\n  \"tab\": 2648,\n  \"tab</w>\": 14724,\n  \"tabby</w>\": 36145,\n  \"tabern\": 48991,\n  \"tability</w>\": 15770,\n  \"table\": 12108,\n  \"table</w>\": 2175,\n  \"tableau</w>\": 39723,\n  \"tables</w>\": 7822,\n  \"tablet</w>\": 12494,\n  \"tabletop\": 46843,\n  \"tabletop</w>\": 25773,\n  \"tablets</w>\": 20436,\n  \"tably</w>\": 24440,\n  \"taboo</w>\": 38400,\n  \"tabs</w>\": 29163,\n  \"tac\": 3145,\n  \"tac</w>\": 22653,\n  \"tache</w>\": 39239,\n  \"tack\": 6339,\n  \"tack</w>\": 34446,\n  \"tackle</w>\": 10294,\n  \"tackled</w>\": 47218,\n  \"tackles</w>\": 18021,\n  \"tackling</w>\": 19628,\n  \"taco\": 31924,\n  \"taco</w>\": 12436,\n  \"tacoma</w>\": 25397,\n  \"tacos</w>\": 14090,\n  \"tactic</w>\": 40377,\n  \"tactical</w>\": 17137,\n  \"tactics</w>\": 16410,\n  \"tacular</w>\": 48985,\n  \"tad\": 15890,\n  \"tad</w>\": 19860,\n  \"tado</w>\": 40846,\n  \"tae\": 15257,\n  \"tae</w>\": 15580,\n  \"taehyung</w>\": 24642,\n  \"taek\": 30753,\n  \"taekwondo</w>\": 39963,\n  \"taemin</w>\": 30600,\n  \"taeyang</w>\": 45802,\n  \"taeyeon</w>\": 27389,\n  \"taf\": 29660,\n  \"taft</w>\": 42141,\n  \"tag\": 3456,\n  \"tag</w>\": 3640,\n  \"tage</w>\": 2669,\n  \"tages</w>\": 39902,\n  \"tagged</w>\": 12969,\n  \"tagging</w>\": 25138,\n  \"tagne</w>\": 47467,\n  \"tags</w>\": 11606,\n  \"tah\": 14822,\n  \"tah</w>\": 7090,\n  \"tahit\": 45385,\n  \"tahoe</w>\": 26140,\n  \"tai\": 6511,\n  \"tai</w>\": 13040,\n  \"taiji</w>\": 30185,\n  \"tail\": 7156,\n  \"tail</w>\": 4132,\n  \"tailed</w>\": 20626,\n  \"tailgate</w>\": 23168,\n  \"tailgating</w>\": 42625,\n  \"tailo\": 27230,\n  \"tailor</w>\": 29870,\n  \"tailored</w>\": 28275,\n  \"tailoring</w>\": 46357,\n  \"tails</w>\": 16066,\n  \"tain\": 2841,\n  \"tain</w>\": 1908,\n  \"taine\": 21214,\n  \"taine</w>\": 32299,\n  \"tained</w>\": 10212,\n  \"taining</w>\": 7565,\n  \"tainment</w>\": 30063,\n  \"tains</w>\": 3952,\n  \"tainted</w>\": 47211,\n  \"taipei</w>\": 24356,\n  \"tair\": 29143,\n  \"tairp</w>\": 43707,\n  \"tait</w>\": 45325,\n  \"taiwan\": 36319,\n  \"taiwan</w>\": 12626,\n  \"taiwanese</w>\": 41416,\n  \"taj\": 28937,\n  \"taj</w>\": 24805,\n  \"taji\": 46358,\n  \"tak\": 15070,\n  \"tak</w>\": 14458,\n  \"taka\": 24070,\n  \"taka</w>\": 40968,\n  \"take\": 5052,\n  \"take</w>\": 1172,\n  \"takeaway</w>\": 25737,\n  \"takeaways</w>\": 32080,\n  \"takeme\": 41748,\n  \"taken</w>\": 2807,\n  \"takeoff</w>\": 32789,\n  \"takeover</w>\": 11863,\n  \"taker</w>\": 17939,\n  \"takers</w>\": 30775,\n  \"takes</w>\": 2633,\n  \"takin</w>\": 30890,\n  \"taking</w>\": 2019,\n  \"taku</w>\": 48168,\n  \"tal\": 976,\n  \"tal</w>\": 2066,\n  \"tala</w>\": 29845,\n  \"talaga</w>\": 35349,\n  \"talbot</w>\": 30585,\n  \"tale\": 33971,\n  \"tale</w>\": 7798,\n  \"talent\": 30435,\n  \"talent</w>\": 5114,\n  \"talented</w>\": 5331,\n  \"talents</w>\": 16136,\n  \"tales</w>\": 9469,\n  \"tali\": 12122,\n  \"tali</w>\": 45406,\n  \"taliban</w>\": 20788,\n  \"talis\": 36480,\n  \"tality</w>\": 15631,\n  \"talk\": 12462,\n  \"talk</w>\": 1841,\n  \"talked</w>\": 10153,\n  \"talkin</w>\": 26040,\n  \"talking\": 31463,\n  \"talking</w>\": 2578,\n  \"talks</w>\": 3237,\n  \"tall\": 11664,\n  \"tall</w>\": 7771,\n  \"talla\": 21528,\n  \"tallade\": 44220,\n  \"tallahassee</w>\": 37832,\n  \"taller</w>\": 23470,\n  \"tallest</w>\": 19774,\n  \"tallinn</w>\": 45079,\n  \"tally</w>\": 16323,\n  \"talon</w>\": 47897,\n  \"tam\": 2661,\n  \"tam</w>\": 12246,\n  \"tama</w>\": 45424,\n  \"tamanna\": 48055,\n  \"tamar\": 22901,\n  \"tamara</w>\": 35697,\n  \"tame\": 38557,\n  \"tame</w>\": 32778,\n  \"tamed</w>\": 40575,\n  \"tami</w>\": 39429,\n  \"tamil\": 23046,\n  \"tamil</w>\": 14033,\n  \"tamilnadu</w>\": 32371,\n  \"tamine</w>\": 42566,\n  \"tammy</w>\": 28396,\n  \"tampa</w>\": 10906,\n  \"tampab\": 37852,\n  \"tamu</w>\": 34105,\n  \"tan\": 2123,\n  \"tan</w>\": 5039,\n  \"tana</w>\": 21396,\n  \"tand\": 20244,\n  \"tandem</w>\": 33756,\n  \"tane\": 13344,\n  \"tane</w>\": 24923,\n  \"taneous</w>\": 22275,\n  \"taneously</w>\": 24422,\n  \"tang\": 10425,\n  \"tang</w>\": 20794,\n  \"tanger\": 31844,\n  \"tangerine</w>\": 42045,\n  \"tangible</w>\": 44823,\n  \"tangle</w>\": 36568,\n  \"tangled</w>\": 33587,\n  \"tango</w>\": 24089,\n  \"tani\": 31374,\n  \"tani</w>\": 32985,\n  \"tania</w>\": 45369,\n  \"tank\": 29858,\n  \"tank</w>\": 6172,\n  \"tanker</w>\": 25020,\n  \"tanks</w>\": 14223,\n  \"tann\": 19174,\n  \"tanner</w>\": 22001,\n  \"tanning</w>\": 27985,\n  \"tans</w>\": 27332,\n  \"tant\": 41383,\n  \"tant</w>\": 41695,\n  \"tante</w>\": 48262,\n  \"tanto</w>\": 45685,\n  \"tany\": 34410,\n  \"tanya</w>\": 26800,\n  \"tanz\": 47399,\n  \"tanzania</w>\": 15711,\n  \"tao\": 29084,\n  \"tao</w>\": 18923,\n  \"tap\": 17923,\n  \"tap</w>\": 7888,\n  \"tapas</w>\": 27361,\n  \"tape\": 18332,\n  \"tape</w>\": 5749,\n  \"taped</w>\": 33219,\n  \"tapes</w>\": 17903,\n  \"tapestry</w>\": 33525,\n  \"taping</w>\": 24355,\n  \"tapp\": 27644,\n  \"tapp</w>\": 27764,\n  \"tapped</w>\": 26649,\n  \"tapping</w>\": 27882,\n  \"tapro\": 34415,\n  \"taproom</w>\": 40266,\n  \"taps</w>\": 23267,\n  \"tar\": 2002,\n  \"tar</w>\": 6977,\n  \"tara</w>\": 15264,\n  \"tarak</w>\": 37813,\n  \"taran\": 32370,\n  \"tarantino</w>\": 41180,\n  \"tarde</w>\": 48670,\n  \"tardis</w>\": 35410,\n  \"tares</w>\": 34587,\n  \"targe\": 9620,\n  \"target\": 38556,\n  \"target</w>\": 5400,\n  \"targeted</w>\": 14968,\n  \"targeting</w>\": 15818,\n  \"targets</w>\": 12468,\n  \"tari\": 4238,\n  \"tari</w>\": 38012,\n  \"tarian</w>\": 11762,\n  \"tarians</w>\": 42789,\n  \"taries</w>\": 47291,\n  \"tariff</w>\": 40220,\n  \"tariffs</w>\": 28335,\n  \"tariq</w>\": 42526,\n  \"tarmac</w>\": 44294,\n  \"taro</w>\": 26264,\n  \"tarot</w>\": 23702,\n  \"tart\": 16707,\n  \"tart</w>\": 14120,\n  \"tartan</w>\": 35064,\n  \"tarts</w>\": 29799,\n  \"tary\": 31729,\n  \"tary</w>\": 5065,\n  \"tarzan</w>\": 45463,\n  \"tas\": 6538,\n  \"tas</w>\": 10163,\n  \"tash\": 35272,\n  \"tasha</w>\": 44967,\n  \"task\": 39189,\n  \"task</w>\": 10549,\n  \"tasks</w>\": 19453,\n  \"tasmania</w>\": 22429,\n  \"tasmanian</w>\": 45102,\n  \"tassel</w>\": 49276,\n  \"tast\": 10839,\n  \"taste\": 14314,\n  \"taste</w>\": 5219,\n  \"tasted</w>\": 22827,\n  \"tasteof\": 38097,\n  \"taster</w>\": 29743,\n  \"tastes</w>\": 13736,\n  \"tastic</w>\": 21337,\n  \"tasting</w>\": 7656,\n  \"tastings</w>\": 49273,\n  \"tasty\": 43390,\n  \"tasty</w>\": 8568,\n  \"tat\": 2652,\n  \"tat</w>\": 21592,\n  \"tata</w>\": 19300,\n  \"tate\": 44476,\n  \"tate</w>\": 13295,\n  \"tath\": 27566,\n  \"tati\": 31433,\n  \"tatiana</w>\": 48837,\n  \"tation</w>\": 5280,\n  \"tations</w>\": 32324,\n  \"tator</w>\": 18791,\n  \"tators</w>\": 37206,\n  \"tats</w>\": 44557,\n  \"tatt\": 9232,\n  \"tatted</w>\": 41605,\n  \"tattoo\": 15980,\n  \"tattoo</w>\": 6325,\n  \"tattooed</w>\": 28541,\n  \"tattoos</w>\": 14900,\n  \"tatum</w>\": 26103,\n  \"tau\": 6620,\n  \"tau</w>\": 20510,\n  \"taught</w>\": 9306,\n  \"taun\": 23910,\n  \"taunton</w>\": 40681,\n  \"taurus</w>\": 32881,\n  \"taver\": 37776,\n  \"tavern</w>\": 18644,\n  \"taw\": 33868,\n  \"taw</w>\": 40289,\n  \"tawa</w>\": 29035,\n  \"tawards</w>\": 14351,\n  \"tax\": 4581,\n  \"tax</w>\": 3879,\n  \"taxation</w>\": 36847,\n  \"taxes</w>\": 11462,\n  \"taxi\": 25160,\n  \"taxi</w>\": 11380,\n  \"taxider\": 47420,\n  \"taxis</w>\": 34009,\n  \"taxpay\": 17986,\n  \"taxpayer</w>\": 30978,\n  \"taxpayers</w>\": 25503,\n  \"tay\": 6542,\n  \"tay</w>\": 15073,\n  \"taya</w>\": 38484,\n  \"tayl\": 3913,\n  \"taylor\": 9044,\n  \"taylor</w>\": 3961,\n  \"taylorswift</w>\": 18936,\n  \"tayo</w>\": 33941,\n  \"taz\": 41475,\n  \"taz</w>\": 31870,\n  \"tb\": 1990,\n  \"tb</w>\": 7490,\n  \"tba</w>\": 34363,\n  \"tball\": 8390,\n  \"tball</w>\": 1467,\n  \"tbc</w>\": 31807,\n  \"tbd</w>\": 45548,\n  \"tbh</w>\": 13238,\n  \"tbi</w>\": 45868,\n  \"tbl</w>\": 42962,\n  \"tbli\": 43664,\n  \"tblightning</w>\": 44178,\n  \"tbo</w>\": 34255,\n  \"tbr</w>\": 46643,\n  \"tbs</w>\": 37368,\n  \"tbt</w>\": 2950,\n  \"tc\": 6820,\n  \"tc</w>\": 5454,\n  \"tca</w>\": 35116,\n  \"tch\": 10744,\n  \"tch</w>\": 4048,\n  \"tches</w>\": 42001,\n  \"tcm\": 21501,\n  \"tcm</w>\": 26588,\n  \"tcmparty</w>\": 24338,\n  \"tcot</w>\": 8995,\n  \"tcs</w>\": 39107,\n  \"tcu</w>\": 26791,\n  \"td\": 20578,\n  \"td</w>\": 3192,\n  \"tdf</w>\": 21844,\n  \"tdi</w>\": 45621,\n  \"tdp</w>\": 47009,\n  \"tds</w>\": 20238,\n  \"tdsb</w>\": 29836,\n  \"te\": 600,\n  \"te</w>\": 756,\n  \"tea\": 41053,\n  \"tea</w>\": 3274,\n  \"teach\": 2043,\n  \"teach</w>\": 6865,\n  \"teacher\": 18051,\n  \"teacher</w>\": 4008,\n  \"teachers</w>\": 5069,\n  \"teaches</w>\": 17110,\n  \"teaching</w>\": 5141,\n  \"teachings</w>\": 32119,\n  \"teal</w>\": 22821,\n  \"team\": 2085,\n  \"team</w>\": 1027,\n  \"teamcanada</w>\": 46636,\n  \"teamed</w>\": 20590,\n  \"teamgb</w>\": 40971,\n  \"teaming</w>\": 24392,\n  \"teammate</w>\": 17900,\n  \"teammates</w>\": 13921,\n  \"teams</w>\": 3891,\n  \"teamsisd</w>\": 34703,\n  \"teamusa</w>\": 28625,\n  \"teamwork</w>\": 14657,\n  \"teaparty</w>\": 33065,\n  \"teapo\": 35745,\n  \"teapot</w>\": 40749,\n  \"tear\": 15802,\n  \"tear</w>\": 11862,\n  \"tearful</w>\": 46873,\n  \"tearing</w>\": 24785,\n  \"tears</w>\": 7688,\n  \"teas\": 23003,\n  \"teas</w>\": 29314,\n  \"tease</w>\": 25163,\n  \"teased</w>\": 49122,\n  \"teaser</w>\": 8982,\n  \"teasers</w>\": 48990,\n  \"teases</w>\": 28509,\n  \"teasing</w>\": 36507,\n  \"teat\": 26376,\n  \"teatime</w>\": 48948,\n  \"teatro</w>\": 35756,\n  \"teau</w>\": 24931,\n  \"tebow</w>\": 37797,\n  \"tec\": 17381,\n  \"tec</w>\": 11612,\n  \"tech\": 1782,\n  \"tech</w>\": 2061,\n  \"techcrunch</w>\": 42110,\n  \"techn\": 6252,\n  \"technews</w>\": 31787,\n  \"technic\": 16639,\n  \"technic</w>\": 37666,\n  \"technical\": 49231,\n  \"technical</w>\": 7582,\n  \"technically</w>\": 23180,\n  \"technician</w>\": 22540,\n  \"technicians</w>\": 35513,\n  \"techno\": 2599,\n  \"techno</w>\": 17564,\n  \"technological</w>\": 23068,\n  \"technologies</w>\": 10040,\n  \"technology</w>\": 3089,\n  \"techs</w>\": 41353,\n  \"ted\": 4841,\n  \"ted</w>\": 775,\n  \"tedcruz</w>\": 27517,\n  \"teddy\": 25758,\n  \"teddy</w>\": 11798,\n  \"tedly</w>\": 8539,\n  \"tedu</w>\": 42517,\n  \"tedx\": 17950,\n  \"tedx</w>\": 41504,\n  \"tee\": 12676,\n  \"tee</w>\": 3385,\n  \"teed</w>\": 13692,\n  \"teen\": 5398,\n  \"teen</w>\": 4697,\n  \"teenage</w>\": 14069,\n  \"teenager</w>\": 19338,\n  \"teenagers</w>\": 25989,\n  \"teenchoice</w>\": 28203,\n  \"teens</w>\": 12375,\n  \"teenth</w>\": 20249,\n  \"teenwolf</w>\": 40067,\n  \"teeny</w>\": 41622,\n  \"teer</w>\": 48648,\n  \"tees</w>\": 9641,\n  \"teessi\": 43295,\n  \"teeth</w>\": 8225,\n  \"tega</w>\": 29508,\n  \"tegr\": 39801,\n  \"teh\": 18720,\n  \"teh</w>\": 29601,\n  \"tehran</w>\": 26399,\n  \"tein</w>\": 33223,\n  \"tej</w>\": 46724,\n  \"tek\": 17489,\n  \"tek</w>\": 18294,\n  \"tekken</w>\": 29843,\n  \"tel\": 4978,\n  \"tel</w>\": 2226,\n  \"telang\": 23469,\n  \"telangana</w>\": 26386,\n  \"tele\": 3103,\n  \"tele</w>\": 32851,\n  \"telecom</w>\": 21057,\n  \"telecommunications</w>\": 39900,\n  \"telegram</w>\": 26780,\n  \"telegraph</w>\": 14713,\n  \"telephone</w>\": 17243,\n  \"telescope</w>\": 19037,\n  \"telethon</w>\": 49266,\n  \"televised</w>\": 39470,\n  \"television</w>\": 8608,\n  \"telford</w>\": 38323,\n  \"tell\": 16069,\n  \"tell</w>\": 2330,\n  \"teller</w>\": 20415,\n  \"tellers</w>\": 42707,\n  \"telling</w>\": 5507,\n  \"tells</w>\": 5217,\n  \"tellu\": 42511,\n  \"telly</w>\": 31475,\n  \"tels</w>\": 43607,\n  \"telugu</w>\": 22927,\n  \"tely</w>\": 5630,\n  \"tem\": 2404,\n  \"tem</w>\": 17536,\n  \"tema</w>\": 45881,\n  \"teme\": 43378,\n  \"temp\": 2684,\n  \"temp</w>\": 11097,\n  \"tempe</w>\": 36723,\n  \"temper\": 5981,\n  \"temper</w>\": 35521,\n  \"temperature</w>\": 9543,\n  \"temperatures</w>\": 11575,\n  \"tempered</w>\": 40521,\n  \"tempest</w>\": 36053,\n  \"templ\": 16679,\n  \"template</w>\": 18591,\n  \"templates</w>\": 30498,\n  \"temple\": 21841,\n  \"temple</w>\": 5620,\n  \"temples</w>\": 24024,\n  \"tempo</w>\": 19625,\n  \"tempor\": 4858,\n  \"temporal</w>\": 43656,\n  \"temporarily</w>\": 23189,\n  \"temporary</w>\": 6513,\n  \"temps</w>\": 11668,\n  \"tempt</w>\": 28460,\n  \"temptation</w>\": 30118,\n  \"tempted</w>\": 26226,\n  \"tempting</w>\": 34876,\n  \"ten\": 1149,\n  \"ten</w>\": 2581,\n  \"tenant</w>\": 16954,\n  \"tenants</w>\": 26023,\n  \"tenay</w>\": 45384,\n  \"tenberg</w>\": 31329,\n  \"tend\": 17630,\n  \"tend</w>\": 21252,\n  \"tendency</w>\": 47277,\n  \"tender\": 23020,\n  \"tender</w>\": 9838,\n  \"tenderloin</w>\": 42750,\n  \"tenders</w>\": 44741,\n  \"tending</w>\": 35084,\n  \"tendon</w>\": 48459,\n  \"tends</w>\": 39962,\n  \"tene\": 24868,\n  \"tened</w>\": 13682,\n  \"tener</w>\": 29054,\n  \"teneri\": 28000,\n  \"tenerife</w>\": 29401,\n  \"teners</w>\": 41307,\n  \"teness</w>\": 18018,\n  \"teng\": 34016,\n  \"teng</w>\": 28474,\n  \"tennant</w>\": 29310,\n  \"tennes\": 9514,\n  \"tennessee</w>\": 10053,\n  \"tennis\": 31504,\n  \"tennis</w>\": 5298,\n  \"tenor</w>\": 30521,\n  \"tens</w>\": 14062,\n  \"tense</w>\": 23518,\n  \"tension</w>\": 15221,\n  \"tensions</w>\": 24224,\n  \"tenstein</w>\": 49139,\n  \"tent\": 18505,\n  \"tent</w>\": 10782,\n  \"tentative</w>\": 48238,\n  \"tenth</w>\": 27483,\n  \"tention</w>\": 12191,\n  \"tents</w>\": 30730,\n  \"tenure</w>\": 30739,\n  \"teo</w>\": 18665,\n  \"tep</w>\": 31806,\n  \"tequ\": 17502,\n  \"tequila</w>\": 18510,\n  \"ter\": 704,\n  \"ter</w>\": 652,\n  \"tera</w>\": 15155,\n  \"teras</w>\": 44830,\n  \"tere\": 11329,\n  \"tered\": 49272,\n  \"tered</w>\": 4389,\n  \"terence</w>\": 33806,\n  \"teresa</w>\": 19081,\n  \"teri</w>\": 30917,\n  \"teria</w>\": 22685,\n  \"terie</w>\": 42276,\n  \"tering</w>\": 7929,\n  \"term\": 40991,\n  \"term</w>\": 4780,\n  \"termin\": 4766,\n  \"terminal</w>\": 11816,\n  \"terminals</w>\": 44091,\n  \"terminator</w>\": 29609,\n  \"terminology</w>\": 48896,\n  \"terms</w>\": 8663,\n  \"tern\": 41572,\n  \"tern</w>\": 12959,\n  \"terns</w>\": 25251,\n  \"tero\": 20727,\n  \"tero</w>\": 24697,\n  \"terps</w>\": 41471,\n  \"terr\": 3921,\n  \"terra\": 22366,\n  \"terra</w>\": 18816,\n  \"terrac\": 28549,\n  \"terrace</w>\": 13820,\n  \"terraces</w>\": 47508,\n  \"terracotta</w>\": 45123,\n  \"terrain</w>\": 20184,\n  \"terran\": 43726,\n  \"terre\": 33888,\n  \"terre</w>\": 27537,\n  \"terrell</w>\": 39494,\n  \"terrence</w>\": 38746,\n  \"terrestrial</w>\": 46299,\n  \"terri\": 4504,\n  \"terri</w>\": 36722,\n  \"terrible</w>\": 9741,\n  \"terribly</w>\": 34558,\n  \"terrier</w>\": 14455,\n  \"terriers</w>\": 47047,\n  \"terrific</w>\": 13837,\n  \"terrified</w>\": 28204,\n  \"terrifying</w>\": 18526,\n  \"territ\": 10720,\n  \"territorial</w>\": 39163,\n  \"territories</w>\": 32846,\n  \"territory</w>\": 13936,\n  \"terror\": 9596,\n  \"terror</w>\": 9327,\n  \"terrori\": 6836,\n  \"terrorism</w>\": 10583,\n  \"terrorist</w>\": 10575,\n  \"terrorists</w>\": 12835,\n  \"terry\": 19378,\n  \"terry</w>\": 8561,\n  \"ters\": 24102,\n  \"ters</w>\": 1737,\n  \"terti\": 48386,\n  \"tery</w>\": 4184,\n  \"tes\": 8019,\n  \"tes</w>\": 3609,\n  \"tesco</w>\": 15434,\n  \"tese</w>\": 33320,\n  \"tesla</w>\": 12254,\n  \"tess\": 21807,\n  \"tess</w>\": 20840,\n  \"tessa</w>\": 32063,\n  \"test\": 7738,\n  \"test</w>\": 1628,\n  \"testam\": 23477,\n  \"testament</w>\": 24609,\n  \"tested</w>\": 10576,\n  \"tester</w>\": 32707,\n  \"testi\": 18373,\n  \"testic\": 42364,\n  \"testify</w>\": 33088,\n  \"testifying</w>\": 46347,\n  \"testim\": 12553,\n  \"testimonial</w>\": 28834,\n  \"testimony</w>\": 18672,\n  \"testing</w>\": 4967,\n  \"testo\": 42428,\n  \"testosterone</w>\": 45168,\n  \"tests</w>\": 8715,\n  \"tet\": 40468,\n  \"tet</w>\": 13275,\n  \"tetra\": 40902,\n  \"tetris</w>\": 45934,\n  \"teu\": 47152,\n  \"teuk</w>\": 39979,\n  \"teur</w>\": 27120,\n  \"tex\": 2056,\n  \"tex</w>\": 11728,\n  \"texan\": 35287,\n  \"texan</w>\": 38386,\n  \"texans</w>\": 17580,\n  \"texanscheer</w>\": 43717,\n  \"texas\": 15713,\n  \"texas</w>\": 3403,\n  \"texaste\": 46469,\n  \"text\": 18169,\n  \"text</w>\": 4160,\n  \"textbook</w>\": 25952,\n  \"textbooks</w>\": 44041,\n  \"texted</w>\": 29004,\n  \"textile</w>\": 19789,\n  \"textiles</w>\": 24326,\n  \"texting</w>\": 18600,\n  \"texts</w>\": 12767,\n  \"texture</w>\": 16505,\n  \"textured</w>\": 32168,\n  \"textures</w>\": 28063,\n  \"tey</w>\": 32395,\n  \"tez</w>\": 22664,\n  \"tf\": 18828,\n  \"tf</w>\": 5001,\n  \"tfc</w>\": 30186,\n  \"tfl</w>\": 29918,\n  \"tford</w>\": 22493,\n  \"tful</w>\": 17108,\n  \"tfw</w>\": 16741,\n  \"tg\": 7665,\n  \"tg</w>\": 11981,\n  \"tgif</w>\": 14483,\n  \"th\": 513,\n  \"th</w>\": 640,\n  \"tha\": 18470,\n  \"tha</w>\": 4715,\n  \"thab\": 38219,\n  \"thad\": 48339,\n  \"thai\": 28054,\n  \"thai</w>\": 8825,\n  \"thail\": 7258,\n  \"thailand</w>\": 7469,\n  \"thak\": 22801,\n  \"thakur</w>\": 38427,\n  \"thal\": 7967,\n  \"thal</w>\": 12323,\n  \"thala</w>\": 17784,\n  \"thalai\": 25206,\n  \"thalaivar</w>\": 44918,\n  \"thalap\": 39789,\n  \"thalapathy\": 45405,\n  \"thalapathy</w>\": 23324,\n  \"thall</w>\": 36007,\n  \"tham\": 11761,\n  \"tham</w>\": 8896,\n  \"thames\": 43472,\n  \"thames</w>\": 15321,\n  \"than\": 792,\n  \"than</w>\": 1126,\n  \"thand\": 44465,\n  \"thane</w>\": 21463,\n  \"thang</w>\": 24870,\n  \"thani</w>\": 31322,\n  \"thank\": 2790,\n  \"thank</w>\": 1144,\n  \"thanked</w>\": 32079,\n  \"thankful\": 38839,\n  \"thankful</w>\": 6217,\n  \"thankfully</w>\": 22089,\n  \"thanking</w>\": 21989,\n  \"thanks\": 5672,\n  \"thanks</w>\": 1085,\n  \"thanksgiving\": 45732,\n  \"thanksgiving</w>\": 6167,\n  \"thanku</w>\": 45710,\n  \"thankyou\": 18050,\n  \"thankyou</w>\": 9911,\n  \"thanniversary</w>\": 35564,\n  \"thanos</w>\": 36709,\n  \"thanx</w>\": 25095,\n  \"thar\": 14396,\n  \"thar</w>\": 38843,\n  \"thard</w>\": 43474,\n  \"that\": 6303,\n  \"that</w>\": 682,\n  \"thatcher</w>\": 32496,\n  \"thats\": 44636,\n  \"thats</w>\": 9254,\n  \"thaw\": 26081,\n  \"thaw</w>\": 47229,\n  \"thbewithyou</w>\": 41067,\n  \"thc</w>\": 20091,\n  \"thcentury</w>\": 49111,\n  \"thd</w>\": 28219,\n  \"thday</w>\": 37801,\n  \"the\": 599,\n  \"the</w>\": 518,\n  \"thea\": 15935,\n  \"thea</w>\": 25429,\n  \"thead</w>\": 25259,\n  \"theal\": 45728,\n  \"thealth</w>\": 31398,\n  \"thear\": 43283,\n  \"theart\": 44678,\n  \"theast</w>\": 8378,\n  \"theastern</w>\": 17877,\n  \"theat\": 2263,\n  \"theater\": 39438,\n  \"theater</w>\": 6128,\n  \"theaters</w>\": 14689,\n  \"theatre\": 19857,\n  \"theatre</w>\": 3292,\n  \"theatres</w>\": 21680,\n  \"theatrical</w>\": 26833,\n  \"theband</w>\": 27695,\n  \"thebeatles</w>\": 35645,\n  \"thebest\": 40883,\n  \"thebest</w>\": 25856,\n  \"thebig\": 24732,\n  \"theblack\": 47718,\n  \"thec\": 48659,\n  \"thed</w>\": 31405,\n  \"thedaily\": 33550,\n  \"theday</w>\": 4408,\n  \"thedream</w>\": 39417,\n  \"thee\": 44475,\n  \"thee</w>\": 15108,\n  \"theeconomist</w>\": 44518,\n  \"theellenshow</w>\": 35342,\n  \"thefilm</w>\": 31665,\n  \"theflash</w>\": 25434,\n  \"theforce\": 40002,\n  \"theforceawakens</w>\": 48033,\n  \"theft</w>\": 13286,\n  \"thefuture</w>\": 34287,\n  \"thegame</w>\": 24428,\n  \"thegood\": 28594,\n  \"thegreat\": 28721,\n  \"thei\": 44522,\n  \"their</w>\": 911,\n  \"theirs</w>\": 29297,\n  \"thel\": 5403,\n  \"thelast\": 23495,\n  \"thelastjedi</w>\": 47992,\n  \"theless</w>\": 27712,\n  \"theli\": 15277,\n  \"thelittle\": 46872,\n  \"thelo\": 47036,\n  \"thelove\": 40668,\n  \"thelove</w>\": 43200,\n  \"them\": 5435,\n  \"them</w>\": 1180,\n  \"themasters</w>\": 48378,\n  \"theme\": 38524,\n  \"theme</w>\": 5849,\n  \"themed</w>\": 10126,\n  \"themes</w>\": 17849,\n  \"themet</w>\": 48183,\n  \"themovie</w>\": 27062,\n  \"themselves</w>\": 6503,\n  \"then\": 5929,\n  \"then</w>\": 1594,\n  \"thenburg</w>\": 45209,\n  \"thene\": 17012,\n  \"thenew\": 24212,\n  \"thenext\": 47881,\n  \"thenight</w>\": 43336,\n  \"theno\": 37172,\n  \"thenorth</w>\": 34338,\n  \"theo\": 17043,\n  \"theo</w>\": 18084,\n  \"theod\": 26653,\n  \"theodore</w>\": 30743,\n  \"theological</w>\": 41162,\n  \"theology</w>\": 24095,\n  \"theon</w>\": 34653,\n  \"theone</w>\": 46231,\n  \"theopen</w>\": 41438,\n  \"theore\": 22690,\n  \"theoretical</w>\": 35585,\n  \"theori\": 34804,\n  \"theories</w>\": 23937,\n  \"theory</w>\": 7143,\n  \"thepeople</w>\": 33597,\n  \"thepersonal\": 29981,\n  \"thepersonalnetwork</w>\": 30016,\n  \"thephoto\": 18303,\n  \"thephotohour</w>\": 18607,\n  \"ther\": 1160,\n  \"ther</w>\": 743,\n  \"therap\": 4499,\n  \"therapeu\": 19332,\n  \"therapeutic</w>\": 23240,\n  \"therapeutics</w>\": 49101,\n  \"therapies</w>\": 30179,\n  \"therapist</w>\": 20608,\n  \"therapists</w>\": 34763,\n  \"therapper</w>\": 49340,\n  \"therapy</w>\": 5257,\n  \"there\": 5283,\n  \"there</w>\": 997,\n  \"thereal\": 8074,\n  \"thereal</w>\": 41140,\n  \"thereby</w>\": 43308,\n  \"thered</w>\": 10208,\n  \"therefore</w>\": 16865,\n  \"theres</w>\": 18494,\n  \"theresa</w>\": 14126,\n  \"therese</w>\": 47996,\n  \"theresistance</w>\": 22845,\n  \"theri\": 28967,\n  \"theri</w>\": 45297,\n  \"therine\": 26807,\n  \"therine</w>\": 9239,\n  \"thering</w>\": 7891,\n  \"therland</w>\": 25351,\n  \"thermal</w>\": 13689,\n  \"thermo\": 22303,\n  \"thermom\": 31138,\n  \"thermometer</w>\": 38172,\n  \"thermost\": 42391,\n  \"thern\": 10919,\n  \"thern</w>\": 3137,\n  \"thero\": 13165,\n  \"theroad</w>\": 29807,\n  \"therock</w>\": 30036,\n  \"theroy\": 38146,\n  \"thers</w>\": 1959,\n  \"thes\": 40556,\n  \"thes</w>\": 6460,\n  \"thescript</w>\": 47061,\n  \"these\": 40366,\n  \"these</w>\": 1071,\n  \"theses</w>\": 39388,\n  \"thesimpsons</w>\": 45513,\n  \"thesims</w>\": 34192,\n  \"thesis</w>\": 10673,\n  \"thessal\": 41491,\n  \"thessaloni\": 41753,\n  \"thest</w>\": 35343,\n  \"thesun</w>\": 45617,\n  \"theta</w>\": 27694,\n  \"thetic</w>\": 7954,\n  \"thetimes</w>\": 36039,\n  \"thevamp\": 33701,\n  \"thevoice\": 47206,\n  \"thevoice</w>\": 30258,\n  \"thewalkingdead</w>\": 18087,\n  \"thewanted</w>\": 43008,\n  \"theworld\": 44988,\n  \"theworld</w>\": 17475,\n  \"thex\": 35990,\n  \"they\": 15174,\n  \"they</w>\": 889,\n  \"theyre</w>\": 28266,\n  \"thfc</w>\": 17729,\n  \"thi\": 2362,\n  \"thi</w>\": 9111,\n  \"thia</w>\": 17943,\n  \"thiago</w>\": 44537,\n  \"thian</w>\": 23214,\n  \"thians</w>\": 28187,\n  \"thibau\": 48351,\n  \"thic\": 26107,\n  \"thic</w>\": 11794,\n  \"thick\": 18417,\n  \"thick</w>\": 11006,\n  \"thicker</w>\": 43302,\n  \"thickness</w>\": 40754,\n  \"thief</w>\": 18508,\n  \"thier</w>\": 25595,\n  \"thierry</w>\": 32929,\n  \"thieves</w>\": 17899,\n  \"thigh\": 47124,\n  \"thigh</w>\": 22877,\n  \"thighs</w>\": 30847,\n  \"thik</w>\": 20512,\n  \"thika</w>\": 44619,\n  \"thill</w>\": 31266,\n  \"thim\": 42331,\n  \"thin\": 2178,\n  \"thin</w>\": 7847,\n  \"thine</w>\": 47192,\n  \"thing\": 7499,\n  \"thing</w>\": 946,\n  \"things\": 30670,\n  \"things</w>\": 1739,\n  \"thingsto\": 43924,\n  \"thingy</w>\": 36888,\n  \"think\": 9820,\n  \"think</w>\": 1331,\n  \"thinkbig\": 26015,\n  \"thinkbigsundaywithmarsha</w>\": 26666,\n  \"thinker</w>\": 34577,\n  \"thinkers</w>\": 32779,\n  \"thinkin</w>\": 34443,\n  \"thinking</w>\": 3291,\n  \"thinks</w>\": 6109,\n  \"thinner</w>\": 47247,\n  \"thir\": 6030,\n  \"third\": 32102,\n  \"third</w>\": 3981,\n  \"thirds</w>\": 42582,\n  \"thirst</w>\": 23563,\n  \"thirsty\": 39731,\n  \"thirsty</w>\": 17521,\n  \"thirteen</w>\": 34209,\n  \"thirty</w>\": 20813,\n  \"thiru\": 43292,\n  \"this\": 4340,\n  \"this</w>\": 589,\n  \"thisday</w>\": 6532,\n  \"thisdayin\": 33641,\n  \"thisdayinhistory</w>\": 46913,\n  \"thisi\": 7299,\n  \"thisis\": 14887,\n  \"thismorning</w>\": 36245,\n  \"thistle</w>\": 29039,\n  \"thistory</w>\": 28904,\n  \"thium</w>\": 21804,\n  \"thletics</w>\": 17765,\n  \"thm</w>\": 10407,\n  \"thman</w>\": 30079,\n  \"thms</w>\": 19874,\n  \"thn\": 44155,\n  \"thn</w>\": 45587,\n  \"thnx</w>\": 25480,\n  \"tho\": 1325,\n  \"tho</w>\": 5025,\n  \"thof\": 18943,\n  \"thofjuly</w>\": 21613,\n  \"thol\": 29319,\n  \"thole</w>\": 31029,\n  \"tholes</w>\": 42465,\n  \"thology</w>\": 9881,\n  \"thom\": 2585,\n  \"thom</w>\": 24094,\n  \"thomas\": 12574,\n  \"thomas</w>\": 3888,\n  \"thome</w>\": 21289,\n  \"thomp\": 37274,\n  \"thompson\": 42181,\n  \"thompson</w>\": 8535,\n  \"thomson</w>\": 24151,\n  \"thon\": 38776,\n  \"thon</w>\": 8924,\n  \"thong</w>\": 37058,\n  \"thood</w>\": 15623,\n  \"thor\": 4130,\n  \"thor</w>\": 13691,\n  \"thora</w>\": 46866,\n  \"thorn\": 12957,\n  \"thorn</w>\": 18466,\n  \"thorne</w>\": 18025,\n  \"thorns</w>\": 33650,\n  \"thornton</w>\": 23592,\n  \"thorough\": 15294,\n  \"thorough</w>\": 34788,\n  \"thoroughbred</w>\": 43248,\n  \"thoroughly</w>\": 19750,\n  \"thorpe</w>\": 18099,\n  \"thos</w>\": 41965,\n  \"those</w>\": 1753,\n  \"thot</w>\": 33736,\n  \"thou\": 1513,\n  \"thou</w>\": 17781,\n  \"though</w>\": 2846,\n  \"thought\": 23948,\n  \"thought</w>\": 2449,\n  \"thoughtful</w>\": 19592,\n  \"thoughts</w>\": 3618,\n  \"thour</w>\": 27125,\n  \"thousand</w>\": 9344,\n  \"thousands</w>\": 7089,\n  \"thouse\": 40318,\n  \"thouse</w>\": 7819,\n  \"thoven</w>\": 23078,\n  \"thr\": 1111,\n  \"thr</w>\": 19138,\n  \"thra\": 17761,\n  \"thra</w>\": 32797,\n  \"thrash</w>\": 38262,\n  \"thre\": 1607,\n  \"thread\": 31108,\n  \"thread</w>\": 8815,\n  \"threads</w>\": 24957,\n  \"threat\": 7527,\n  \"threat</w>\": 7212,\n  \"threaten</w>\": 26097,\n  \"threatened</w>\": 16391,\n  \"threatening</w>\": 16400,\n  \"threatens</w>\": 20555,\n  \"threats</w>\": 12766,\n  \"three\": 21615,\n  \"three</w>\": 2097,\n  \"thren</w>\": 41776,\n  \"thresh\": 29779,\n  \"threshold</w>\": 33791,\n  \"threw</w>\": 12746,\n  \"thri\": 8713,\n  \"thrift</w>\": 27779,\n  \"thrill</w>\": 21023,\n  \"thrilled</w>\": 7879,\n  \"thriller</w>\": 9653,\n  \"thrilling</w>\": 20101,\n  \"thrills</w>\": 39829,\n  \"thrive</w>\": 17669,\n  \"thriving</w>\": 22677,\n  \"thro\": 2101,\n  \"thro</w>\": 28624,\n  \"throat</w>\": 16371,\n  \"thrombo\": 47585,\n  \"throne</w>\": 15999,\n  \"thrones</w>\": 8072,\n  \"throp</w>\": 34939,\n  \"throttle</w>\": 37139,\n  \"through\": 6091,\n  \"through</w>\": 1417,\n  \"throughout</w>\": 6721,\n  \"throughs</w>\": 48278,\n  \"throw\": 3315,\n  \"throw</w>\": 6293,\n  \"throwback\": 6001,\n  \"throwback</w>\": 5058,\n  \"throwbackthursday</w>\": 6326,\n  \"thrower</w>\": 40199,\n  \"throwing</w>\": 9734,\n  \"thrown</w>\": 15079,\n  \"throws</w>\": 14723,\n  \"thru\": 23856,\n  \"thru</w>\": 6162,\n  \"thrush</w>\": 46133,\n  \"thrust</w>\": 40202,\n  \"ths</w>\": 2079,\n  \"tht</w>\": 23554,\n  \"thu\": 3837,\n  \"thu</w>\": 14153,\n  \"thub</w>\": 25660,\n  \"thug\": 37212,\n  \"thug</w>\": 18137,\n  \"thugs</w>\": 27686,\n  \"thul\": 28368,\n  \"thulhu</w>\": 37560,\n  \"thum\": 14679,\n  \"thumb\": 19514,\n  \"thumb</w>\": 18674,\n  \"thumbnail</w>\": 32365,\n  \"thumbs</w>\": 17599,\n  \"thun\": 32267,\n  \"thunder\": 6161,\n  \"thunder</w>\": 8951,\n  \"thunderbird</w>\": 45131,\n  \"thunderbirds</w>\": 44286,\n  \"thunderbolt</w>\": 43596,\n  \"thunderstorm</w>\": 12005,\n  \"thunderstorms</w>\": 19525,\n  \"thunt</w>\": 46763,\n  \"thur\": 1837,\n  \"thur</w>\": 21704,\n  \"thurman</w>\": 41291,\n  \"thurs</w>\": 9908,\n  \"thursday\": 11218,\n  \"thursday</w>\": 2221,\n  \"thursdaymotivation</w>\": 39375,\n  \"thursdays</w>\": 21444,\n  \"thursdaythoughts</w>\": 14866,\n  \"thurst</w>\": 33970,\n  \"thus</w>\": 12457,\n  \"thusi\": 9488,\n  \"thwaite</w>\": 48469,\n  \"thweeksary</w>\": 30871,\n  \"thx</w>\": 5913,\n  \"thy\": 7804,\n  \"thy</w>\": 3362,\n  \"thyme</w>\": 29805,\n  \"thyro\": 25174,\n  \"thyroid</w>\": 32558,\n  \"ti\": 555,\n  \"ti</w>\": 2605,\n  \"tia</w>\": 6709,\n  \"tial</w>\": 2826,\n  \"tially</w>\": 14503,\n  \"tian\": 23011,\n  \"tian</w>\": 8125,\n  \"tians</w>\": 35182,\n  \"tiara</w>\": 38322,\n  \"tib\": 47868,\n  \"tibet\": 19927,\n  \"tibet</w>\": 22234,\n  \"tibetan</w>\": 24057,\n  \"tible</w>\": 11453,\n  \"tic\": 890,\n  \"tic</w>\": 1550,\n  \"tica</w>\": 9669,\n  \"tical\": 34191,\n  \"tical</w>\": 4342,\n  \"tically</w>\": 13375,\n  \"ticals</w>\": 30861,\n  \"tice</w>\": 3122,\n  \"tich</w>\": 48769,\n  \"tician</w>\": 43358,\n  \"ticism</w>\": 26491,\n  \"tick\": 24640,\n  \"tick</w>\": 15617,\n  \"ticket\": 25740,\n  \"ticket</w>\": 4500,\n  \"ticketing</w>\": 44432,\n  \"tickets</w>\": 2015,\n  \"ticking</w>\": 35842,\n  \"tickle</w>\": 42999,\n  \"ticks</w>\": 40269,\n  \"tico</w>\": 17670,\n  \"ticon</w>\": 45996,\n  \"tics</w>\": 2419,\n  \"ticul\": 15538,\n  \"ticus</w>\": 44277,\n  \"tid\": 26002,\n  \"tid</w>\": 23727,\n  \"tidal</w>\": 21949,\n  \"tide\": 15698,\n  \"tide</w>\": 9105,\n  \"tides</w>\": 25524,\n  \"tidy</w>\": 23858,\n  \"tie\": 14072,\n  \"tie</w>\": 3422,\n  \"tied</w>\": 9889,\n  \"tiem\": 34762,\n  \"tien</w>\": 47538,\n  \"tiene</w>\": 43438,\n  \"tier\": 14390,\n  \"tier</w>\": 6598,\n  \"tierney</w>\": 45693,\n  \"tiers</w>\": 24604,\n  \"ties\": 25556,\n  \"ties</w>\": 2499,\n  \"tiest</w>\": 18300,\n  \"tiesto</w>\": 46367,\n  \"tif</w>\": 23216,\n  \"tiff\": 11112,\n  \"tiff</w>\": 20699,\n  \"tiffany\": 30467,\n  \"tiffany</w>\": 14446,\n  \"tification</w>\": 43923,\n  \"tified</w>\": 40854,\n  \"tiful</w>\": 29123,\n  \"tify</w>\": 6677,\n  \"tig</w>\": 31999,\n  \"tiger\": 11954,\n  \"tiger</w>\": 6531,\n  \"tigers</w>\": 6934,\n  \"tigh\": 31365,\n  \"tight\": 25763,\n  \"tight</w>\": 9123,\n  \"tighten</w>\": 46653,\n  \"tighter</w>\": 48193,\n  \"tightly</w>\": 37568,\n  \"tights</w>\": 29581,\n  \"tijuana</w>\": 45273,\n  \"tik\": 24986,\n  \"tik</w>\": 32403,\n  \"tiki</w>\": 30107,\n  \"til\": 6124,\n  \"til</w>\": 1763,\n  \"tile\": 26217,\n  \"tile</w>\": 8227,\n  \"tiles</w>\": 10607,\n  \"tility</w>\": 38180,\n  \"till\": 17462,\n  \"till</w>\": 4267,\n  \"tilla</w>\": 26063,\n  \"tillerson</w>\": 47738,\n  \"tilly</w>\": 41199,\n  \"tilt</w>\": 23601,\n  \"tim\": 1292,\n  \"tim</w>\": 3863,\n  \"timate</w>\": 4754,\n  \"timb\": 26627,\n  \"timber\": 14441,\n  \"timber</w>\": 16246,\n  \"timberlake</w>\": 28274,\n  \"timbers</w>\": 39911,\n  \"timberwolves</w>\": 41190,\n  \"time\": 3764,\n  \"time</w>\": 788,\n  \"timed</w>\": 32727,\n  \"timehop</w>\": 19944,\n  \"timel\": 23549,\n  \"timelapse</w>\": 48154,\n  \"timeless</w>\": 15558,\n  \"timeline</w>\": 11492,\n  \"timely</w>\": 19250,\n  \"timeout</w>\": 41536,\n  \"timer</w>\": 19725,\n  \"timers</w>\": 44574,\n  \"times\": 26445,\n  \"times</w>\": 1661,\n  \"timesnow</w>\": 45487,\n  \"timesof\": 32522,\n  \"timesofindia</w>\": 44182,\n  \"timetable</w>\": 31971,\n  \"timeto\": 29187,\n  \"timing</w>\": 13624,\n  \"timm\": 22444,\n  \"timmy</w>\": 33252,\n  \"timo\": 13390,\n  \"timo</w>\": 33777,\n  \"timothy\": 42087,\n  \"timothy</w>\": 18560,\n  \"timp\": 42166,\n  \"tin\": 1310,\n  \"tin</w>\": 5420,\n  \"tina</w>\": 9257,\n  \"tinder</w>\": 24287,\n  \"tine</w>\": 22341,\n  \"ting\": 7451,\n  \"ting</w>\": 694,\n  \"tinged</w>\": 44829,\n  \"tings</w>\": 35332,\n  \"tini</w>\": 26839,\n  \"tink\": 39278,\n  \"tinker\": 45272,\n  \"tinker</w>\": 40910,\n  \"tino</w>\": 20538,\n  \"tins</w>\": 37359,\n  \"tint</w>\": 40497,\n  \"tinted</w>\": 42618,\n  \"tiny\": 21716,\n  \"tiny</w>\": 5591,\n  \"tio</w>\": 27562,\n  \"tion\": 2274,\n  \"tion</w>\": 740,\n  \"tional\": 22460,\n  \"tional</w>\": 2986,\n  \"tionality</w>\": 24514,\n  \"tionally</w>\": 12409,\n  \"tionary</w>\": 8381,\n  \"tione\": 44318,\n  \"tioned</w>\": 9083,\n  \"tioning</w>\": 15528,\n  \"tionist</w>\": 25732,\n  \"tions</w>\": 1371,\n  \"tious</w>\": 14255,\n  \"tip\": 15383,\n  \"tip</w>\": 4623,\n  \"tipoff</w>\": 44521,\n  \"tipp\": 32294,\n  \"tipped</w>\": 31878,\n  \"tipper\": 38095,\n  \"tipperary</w>\": 45612,\n  \"tipping</w>\": 27827,\n  \"tips</w>\": 3173,\n  \"tipton</w>\": 48809,\n  \"tiptuesday</w>\": 42112,\n  \"tique</w>\": 37772,\n  \"tir\": 25467,\n  \"tir</w>\": 38462,\n  \"tire\": 29128,\n  \"tire</w>\": 9362,\n  \"tired</w>\": 6533,\n  \"tireless</w>\": 39835,\n  \"tirelessly</w>\": 41548,\n  \"tires</w>\": 15533,\n  \"tiring</w>\": 42630,\n  \"tiru\": 36033,\n  \"tis\": 7839,\n  \"tis</w>\": 7394,\n  \"tise</w>\": 13745,\n  \"tisgarh</w>\": 40538,\n  \"tish\": 45148,\n  \"tish</w>\": 28784,\n  \"tism</w>\": 27113,\n  \"tiss\": 28155,\n  \"tissue</w>\": 15368,\n  \"tissues</w>\": 32172,\n  \"tist</w>\": 7902,\n  \"tista</w>\": 25580,\n  \"tists</w>\": 25944,\n  \"tit\": 1991,\n  \"tit</w>\": 13202,\n  \"tita</w>\": 40936,\n  \"titan\": 13496,\n  \"titan</w>\": 15516,\n  \"titanic</w>\": 20729,\n  \"titanium</w>\": 24409,\n  \"titans</w>\": 13066,\n  \"titi\": 17434,\n  \"titi</w>\": 48504,\n  \"title\": 28033,\n  \"title</w>\": 3644,\n  \"titled</w>\": 9939,\n  \"titles</w>\": 9780,\n  \"tito</w>\": 26838,\n  \"titus</w>\": 36102,\n  \"tium</w>\": 21975,\n  \"tiv\": 1835,\n  \"tiva</w>\": 41886,\n  \"tive\": 14640,\n  \"tive</w>\": 1420,\n  \"tively</w>\": 9883,\n  \"tiveness</w>\": 20955,\n  \"tives</w>\": 7570,\n  \"tivity</w>\": 9859,\n  \"tivo</w>\": 32162,\n  \"tix</w>\": 5835,\n  \"tiz</w>\": 19376,\n  \"tj\": 18890,\n  \"tj</w>\": 18988,\n  \"tk\": 22344,\n  \"tk</w>\": 20676,\n  \"tko</w>\": 37347,\n  \"tks</w>\": 38739,\n  \"tl\": 14325,\n  \"tl</w>\": 8190,\n  \"tland</w>\": 30697,\n  \"tlap</w>\": 41976,\n  \"tlc</w>\": 22047,\n  \"tle\": 39141,\n  \"tle</w>\": 5825,\n  \"tles</w>\": 39363,\n  \"tless</w>\": 17427,\n  \"tlot</w>\": 41080,\n  \"tls</w>\": 47367,\n  \"tly\": 37483,\n  \"tly</w>\": 1646,\n  \"tm\": 9430,\n  \"tm</w>\": 7789,\n  \"tman</w>\": 20796,\n  \"tmc</w>\": 35263,\n  \"tment</w>\": 26485,\n  \"tml\": 39445,\n  \"tmltalk</w>\": 42260,\n  \"tmnt</w>\": 32444,\n  \"tmobile</w>\": 34901,\n  \"tmr</w>\": 35906,\n  \"tmrw</w>\": 16496,\n  \"tms</w>\": 44496,\n  \"tmund</w>\": 23801,\n  \"tmw</w>\": 45827,\n  \"tmz</w>\": 37248,\n  \"tn\": 3827,\n  \"tn</w>\": 7248,\n  \"tna</w>\": 21150,\n  \"tnam</w>\": 8079,\n  \"tner</w>\": 34922,\n  \"tness</w>\": 35212,\n  \"tney</w>\": 9523,\n  \"tng</w>\": 35898,\n  \"tnt</w>\": 20659,\n  \"tnx</w>\": 38220,\n  \"to\": 580,\n  \"to</w>\": 531,\n  \"toa\": 17916,\n  \"toad</w>\": 26096,\n  \"toast\": 24654,\n  \"toast</w>\": 10920,\n  \"toasted</w>\": 23533,\n  \"toaster</w>\": 39061,\n  \"toasty</w>\": 44726,\n  \"tob</w>\": 24260,\n  \"tobac\": 12611,\n  \"tobacco</w>\": 13905,\n  \"tobago</w>\": 39482,\n  \"tobe\": 17534,\n  \"tobe</w>\": 28740,\n  \"tober\": 18162,\n  \"tober</w>\": 2925,\n  \"toberfest</w>\": 26249,\n  \"tobi\": 40335,\n  \"tobi</w>\": 48374,\n  \"tobias</w>\": 32464,\n  \"tobin</w>\": 42466,\n  \"toby\": 29659,\n  \"toby</w>\": 18333,\n  \"toc\": 41907,\n  \"toc</w>\": 30643,\n  \"tock</w>\": 25274,\n  \"tod\": 38239,\n  \"tod</w>\": 33568,\n  \"toda</w>\": 47141,\n  \"todas</w>\": 36150,\n  \"today\": 11800,\n  \"today</w>\": 721,\n  \"todayin\": 32957,\n  \"todays</w>\": 13513,\n  \"todayshow</w>\": 29739,\n  \"todd\": 10398,\n  \"todd</w>\": 9951,\n  \"toddler</w>\": 17772,\n  \"toddlers</w>\": 36719,\n  \"toddy</w>\": 38926,\n  \"todo\": 48857,\n  \"todo</w>\": 23087,\n  \"todos</w>\": 33355,\n  \"toe\": 47756,\n  \"toe</w>\": 11344,\n  \"toes</w>\": 16511,\n  \"tof\": 6659,\n  \"toff</w>\": 27319,\n  \"toffee</w>\": 34880,\n  \"tofficial</w>\": 47953,\n  \"tofthe\": 23678,\n  \"toftheday</w>\": 20566,\n  \"tofu</w>\": 24692,\n  \"tog</w>\": 45715,\n  \"toge\": 1903,\n  \"together\": 17858,\n  \"together</w>\": 1952,\n  \"togo</w>\": 26729,\n  \"tography</w>\": 33968,\n  \"toh</w>\": 26851,\n  \"toi\": 7472,\n  \"toi</w>\": 26941,\n  \"toid</w>\": 49124,\n  \"toile\": 43148,\n  \"toilet</w>\": 11071,\n  \"toilets</w>\": 24027,\n  \"toire</w>\": 39534,\n  \"tok\": 16690,\n  \"tok</w>\": 27010,\n  \"token\": 32634,\n  \"token</w>\": 17134,\n  \"tokens</w>\": 23562,\n  \"tokyo\": 35038,\n  \"tokyo</w>\": 6667,\n  \"tol\": 4678,\n  \"tol</w>\": 32962,\n  \"told</w>\": 3527,\n  \"tole\": 15677,\n  \"toledo</w>\": 19812,\n  \"toler\": 12150,\n  \"tolerance</w>\": 20377,\n  \"tolerant</w>\": 38536,\n  \"tolerate</w>\": 35556,\n  \"tolkien</w>\": 32989,\n  \"toll\": 44090,\n  \"toll</w>\": 14155,\n  \"tollywood</w>\": 42016,\n  \"tology</w>\": 34799,\n  \"tom\": 999,\n  \"tom</w>\": 2435,\n  \"toma\": 42360,\n  \"toma</w>\": 44710,\n  \"tomas\": 35944,\n  \"tomas</w>\": 27178,\n  \"tomat\": 12041,\n  \"tomato</w>\": 9867,\n  \"tomatoes</w>\": 13004,\n  \"tomb\": 37187,\n  \"tomb</w>\": 15582,\n  \"tombs</w>\": 48613,\n  \"tombstone</w>\": 45729,\n  \"tome\": 24137,\n  \"tome</w>\": 24283,\n  \"tomi</w>\": 46290,\n  \"tomlin</w>\": 46649,\n  \"tomlinson</w>\": 17484,\n  \"tommorow</w>\": 42871,\n  \"tommy\": 16573,\n  \"tommy</w>\": 8876,\n  \"tomo\": 31223,\n  \"tomo</w>\": 34434,\n  \"tomor\": 1277,\n  \"tomorrow\": 19728,\n  \"tomorrow</w>\": 1293,\n  \"tomorrowland</w>\": 34951,\n  \"tomorrows</w>\": 32258,\n  \"tomorrowspaper\": 35005,\n  \"tomorrowspaperstoday</w>\": 35190,\n  \"tomp\": 43544,\n  \"tompkins</w>\": 49068,\n  \"toms</w>\": 10545,\n  \"tomy</w>\": 18730,\n  \"ton\": 838,\n  \"ton</w>\": 917,\n  \"tona</w>\": 13459,\n  \"tone\": 32366,\n  \"tone</w>\": 8408,\n  \"toned</w>\": 29426,\n  \"toner</w>\": 40614,\n  \"tones</w>\": 14744,\n  \"tong</w>\": 21510,\n  \"tonga</w>\": 37882,\n  \"tongue\": 44820,\n  \"tongue</w>\": 13626,\n  \"tongues</w>\": 39837,\n  \"toni\": 17766,\n  \"toni</w>\": 17171,\n  \"tonic</w>\": 17808,\n  \"tonics</w>\": 34647,\n  \"tonight</w>\": 1009,\n  \"tonights</w>\": 23312,\n  \"tonite</w>\": 13449,\n  \"tonka</w>\": 42781,\n  \"tonline</w>\": 45867,\n  \"tonne</w>\": 42450,\n  \"tonnes</w>\": 24813,\n  \"tons</w>\": 7555,\n  \"tony\": 9150,\n  \"tony</w>\": 4767,\n  \"tonyawards</w>\": 46068,\n  \"too\": 1843,\n  \"too</w>\": 1256,\n  \"took</w>\": 2280,\n  \"tool\": 13718,\n  \"tool</w>\": 5999,\n  \"toolbox</w>\": 46599,\n  \"toolkit</w>\": 29849,\n  \"tools</w>\": 5771,\n  \"toom\": 27550,\n  \"toon\": 24664,\n  \"toon</w>\": 19701,\n  \"toonami</w>\": 48336,\n  \"toons</w>\": 35345,\n  \"toor\": 42590,\n  \"tooth\": 15316,\n  \"tooth</w>\": 12030,\n  \"toothbrush</w>\": 36841,\n  \"toothpaste</w>\": 37322,\n  \"tooting</w>\": 42969,\n  \"top\": 5534,\n  \"top</w>\": 1253,\n  \"topaz</w>\": 46125,\n  \"tope\": 32149,\n  \"tope</w>\": 42239,\n  \"topeka</w>\": 46884,\n  \"topia</w>\": 29618,\n  \"topic</w>\": 8720,\n  \"topical</w>\": 37464,\n  \"topics</w>\": 11916,\n  \"topless</w>\": 37415,\n  \"topo\": 23008,\n  \"topoli</w>\": 30152,\n  \"topp\": 19529,\n  \"topped</w>\": 12588,\n  \"topper</w>\": 31780,\n  \"toppers</w>\": 41651,\n  \"topping</w>\": 21071,\n  \"toppings</w>\": 47554,\n  \"topps</w>\": 20201,\n  \"tops</w>\": 8154,\n  \"topshop</w>\": 40953,\n  \"topus</w>\": 21495,\n  \"tor\": 937,\n  \"tor</w>\": 1208,\n  \"tora</w>\": 45147,\n  \"torah</w>\": 37945,\n  \"toral</w>\": 45282,\n  \"torch\": 31921,\n  \"torch</w>\": 15820,\n  \"tore\": 38066,\n  \"tore</w>\": 19385,\n  \"tored</w>\": 38046,\n  \"torg</w>\": 33214,\n  \"tori\": 17689,\n  \"tori</w>\": 17539,\n  \"toria</w>\": 23732,\n  \"torial</w>\": 28029,\n  \"torian</w>\": 48399,\n  \"tories</w>\": 14193,\n  \"torino</w>\": 29178,\n  \"torio</w>\": 34235,\n  \"torn\": 8572,\n  \"torn</w>\": 18023,\n  \"tornad\": 24676,\n  \"tornado</w>\": 9062,\n  \"tornadoes</w>\": 28254,\n  \"toro</w>\": 17892,\n  \"toron\": 37407,\n  \"toronto\": 16866,\n  \"toronto</w>\": 4514,\n  \"torpe\": 34093,\n  \"torpedo</w>\": 46582,\n  \"torquay</w>\": 45738,\n  \"torque</w>\": 31940,\n  \"torre\": 39563,\n  \"torre</w>\": 38009,\n  \"torrent</w>\": 42317,\n  \"torrential</w>\": 41158,\n  \"torres</w>\": 16049,\n  \"tors</w>\": 2546,\n  \"tortilla</w>\": 32683,\n  \"torto\": 24170,\n  \"tortoise</w>\": 30178,\n  \"torture</w>\": 16013,\n  \"tortured</w>\": 29900,\n  \"tory\": 29390,\n  \"tory</w>\": 4214,\n  \"tos</w>\": 6094,\n  \"tosc\": 37719,\n  \"tose</w>\": 38154,\n  \"tosh</w>\": 17109,\n  \"toshi\": 31744,\n  \"toss</w>\": 19656,\n  \"tossed</w>\": 31296,\n  \"tot\": 4618,\n  \"tot</w>\": 23659,\n  \"total\": 13507,\n  \"total</w>\": 4445,\n  \"totally</w>\": 5440,\n  \"totals</w>\": 25772,\n  \"tote\": 48145,\n  \"tote</w>\": 19031,\n  \"totem</w>\": 45376,\n  \"totes</w>\": 37199,\n  \"tothe\": 12222,\n  \"toto</w>\": 39823,\n  \"tots</w>\": 24978,\n  \"totten\": 14360,\n  \"tottenham</w>\": 14889,\n  \"tou\": 1879,\n  \"tou</w>\": 29261,\n  \"touch\": 9480,\n  \"touch</w>\": 4526,\n  \"touchdown</w>\": 18664,\n  \"touchdowns</w>\": 37905,\n  \"touched</w>\": 13190,\n  \"touches</w>\": 14832,\n  \"touching</w>\": 14088,\n  \"touchscreen</w>\": 39095,\n  \"tough\": 12063,\n  \"tough</w>\": 5499,\n  \"tougher</w>\": 33722,\n  \"toughest</w>\": 23773,\n  \"toughness</w>\": 45522,\n  \"toulou\": 27145,\n  \"toulouse</w>\": 30267,\n  \"tour\": 2710,\n  \"tour</w>\": 1760,\n  \"tourde\": 39247,\n  \"toured</w>\": 27654,\n  \"touri\": 4224,\n  \"touring</w>\": 11853,\n  \"tourism\": 23661,\n  \"tourism</w>\": 6556,\n  \"tourist</w>\": 12123,\n  \"tourists</w>\": 15546,\n  \"tournament</w>\": 4097,\n  \"tournaments</w>\": 23058,\n  \"tourney</w>\": 12603,\n  \"tours</w>\": 8948,\n  \"tous</w>\": 37424,\n  \"tout</w>\": 22300,\n  \"touts</w>\": 41274,\n  \"tov</w>\": 28970,\n  \"tow\": 11557,\n  \"tow</w>\": 18653,\n  \"toward</w>\": 8508,\n  \"towards</w>\": 4447,\n  \"towed</w>\": 45419,\n  \"towel</w>\": 15953,\n  \"towels</w>\": 26578,\n  \"tower\": 26669,\n  \"tower</w>\": 4730,\n  \"towering</w>\": 39444,\n  \"towers</w>\": 12701,\n  \"towie</w>\": 44613,\n  \"towin</w>\": 45819,\n  \"towing</w>\": 36963,\n  \"town\": 4068,\n  \"town</w>\": 1605,\n  \"townfc</w>\": 33981,\n  \"townhall</w>\": 33408,\n  \"townhouse</w>\": 40178,\n  \"towns</w>\": 14173,\n  \"townsend</w>\": 26826,\n  \"township</w>\": 14622,\n  \"townsville</w>\": 47330,\n  \"towork</w>\": 48233,\n  \"tox\": 7742,\n  \"tox</w>\": 16145,\n  \"toxic\": 27436,\n  \"toxic</w>\": 12348,\n  \"toxicity</w>\": 41234,\n  \"toxin</w>\": 48899,\n  \"toxins</w>\": 36618,\n  \"toy\": 14387,\n  \"toy</w>\": 5988,\n  \"toya</w>\": 37602,\n  \"toyo\": 7644,\n  \"toyota</w>\": 8908,\n  \"toys\": 39508,\n  \"toys</w>\": 7162,\n  \"tp\": 23760,\n  \"tp</w>\": 15188,\n  \"tpp</w>\": 29411,\n  \"tps</w>\": 35246,\n  \"tq</w>\": 43066,\n  \"tr\": 635,\n  \"tr</w>\": 6337,\n  \"tra\": 752,\n  \"tra</w>\": 2483,\n  \"trac\": 2266,\n  \"trace\": 48611,\n  \"trace</w>\": 14767,\n  \"traced</w>\": 47956,\n  \"traces</w>\": 30913,\n  \"tracey</w>\": 25558,\n  \"tracing</w>\": 27897,\n  \"track\": 10887,\n  \"track</w>\": 2700,\n  \"tracked</w>\": 27049,\n  \"tracker</w>\": 18123,\n  \"tracking</w>\": 10428,\n  \"tracklist</w>\": 39777,\n  \"tracks</w>\": 7579,\n  \"tract</w>\": 4690,\n  \"traction</w>\": 10644,\n  \"tractor</w>\": 14607,\n  \"tractors</w>\": 37854,\n  \"tracy\": 32984,\n  \"tracy</w>\": 15508,\n  \"trad\": 48716,\n  \"trad</w>\": 38037,\n  \"trade\": 10457,\n  \"trade</w>\": 3629,\n  \"traded</w>\": 18860,\n  \"trademark</w>\": 25011,\n  \"trader</w>\": 17700,\n  \"traders</w>\": 19112,\n  \"trades</w>\": 18519,\n  \"trading\": 40083,\n  \"trading</w>\": 6520,\n  \"tradio</w>\": 20689,\n  \"tradition\": 20838,\n  \"tradition</w>\": 8784,\n  \"traditional\": 41113,\n  \"traditional</w>\": 5604,\n  \"traditionally</w>\": 35532,\n  \"traditions</w>\": 18016,\n  \"traf\": 3227,\n  \"trafal\": 32461,\n  \"trafalgar</w>\": 36969,\n  \"traff\": 31571,\n  \"traffic\": 12080,\n  \"traffic</w>\": 3399,\n  \"trafficking</w>\": 15983,\n  \"trafford</w>\": 22912,\n  \"trage\": 12430,\n  \"tragedy</w>\": 14082,\n  \"tragic</w>\": 14828,\n  \"tragically</w>\": 39599,\n  \"trail\": 11523,\n  \"trail</w>\": 4921,\n  \"trailblazer</w>\": 41015,\n  \"trailblazers</w>\": 35954,\n  \"trailer</w>\": 4700,\n  \"trailers</w>\": 24862,\n  \"trailing</w>\": 37427,\n  \"trails</w>\": 10633,\n  \"train\": 9122,\n  \"train</w>\": 3231,\n  \"trained</w>\": 10874,\n  \"trainee</w>\": 25795,\n  \"trainees</w>\": 30382,\n  \"trainer</w>\": 9767,\n  \"trainers</w>\": 18871,\n  \"training\": 34508,\n  \"training</w>\": 2199,\n  \"trains</w>\": 9541,\n  \"trait</w>\": 35160,\n  \"traitor</w>\": 31760,\n  \"traitors</w>\": 42633,\n  \"traits</w>\": 25748,\n  \"trajec\": 42042,\n  \"trak</w>\": 24065,\n  \"tral</w>\": 14609,\n  \"tram\": 9800,\n  \"tram</w>\": 17500,\n  \"tramp</w>\": 46289,\n  \"trampol\": 32905,\n  \"trampoline</w>\": 42800,\n  \"tramrahim</w>\": 35220,\n  \"tran\": 1357,\n  \"tran</w>\": 22031,\n  \"trance\": 30584,\n  \"trance</w>\": 18671,\n  \"trancefamily</w>\": 39630,\n  \"trane</w>\": 35779,\n  \"tranqu\": 18912,\n  \"tranquil</w>\": 35764,\n  \"tranquility</w>\": 36688,\n  \"trans\": 1826,\n  \"trans</w>\": 8126,\n  \"transaction</w>\": 24881,\n  \"transactions</w>\": 21653,\n  \"transat\": 37872,\n  \"transatlantic</w>\": 40703,\n  \"transc\": 21073,\n  \"transcend\": 47087,\n  \"transcript</w>\": 39008,\n  \"transcription</w>\": 48765,\n  \"transfer\": 22659,\n  \"transfer</w>\": 7134,\n  \"transferred</w>\": 29700,\n  \"transferring</w>\": 40924,\n  \"transfers</w>\": 21621,\n  \"transform\": 8142,\n  \"transform</w>\": 12288,\n  \"transformation\": 34204,\n  \"transformation</w>\": 7832,\n  \"transformational</w>\": 47135,\n  \"transformationtuesday</w>\": 36511,\n  \"transformative</w>\": 38106,\n  \"transformed</w>\": 17453,\n  \"transformer</w>\": 38235,\n  \"transformers</w>\": 17843,\n  \"transforming\": 44470,\n  \"transforming</w>\": 19251,\n  \"transforms</w>\": 30312,\n  \"transgender</w>\": 17732,\n  \"transi\": 32236,\n  \"transit</w>\": 10174,\n  \"transiti\": 22939,\n  \"transition</w>\": 11391,\n  \"transitional</w>\": 41519,\n  \"transitioning</w>\": 43586,\n  \"transitions</w>\": 39374,\n  \"transl\": 12243,\n  \"translate</w>\": 22655,\n  \"translated</w>\": 20752,\n  \"translates</w>\": 36334,\n  \"translating</w>\": 42156,\n  \"translation</w>\": 12153,\n  \"translations</w>\": 41367,\n  \"translator</w>\": 36230,\n  \"translucent</w>\": 49052,\n  \"transm\": 18861,\n  \"transmission</w>\": 16103,\n  \"transmitted</w>\": 48605,\n  \"transmitter</w>\": 40457,\n  \"transp\": 11726,\n  \"transpa\": 18524,\n  \"transparen\": 16108,\n  \"transparency</w>\": 16828,\n  \"transparent</w>\": 19017,\n  \"transpl\": 16038,\n  \"transplant\": 41871,\n  \"transplant</w>\": 18771,\n  \"transplantation</w>\": 45207,\n  \"transpor\": 19406,\n  \"transport\": 10231,\n  \"transport</w>\": 7362,\n  \"transportation</w>\": 10911,\n  \"transported</w>\": 29089,\n  \"transporter</w>\": 43568,\n  \"transporting</w>\": 42259,\n  \"trap\": 36224,\n  \"trap</w>\": 9677,\n  \"trape\": 42435,\n  \"trapped</w>\": 15592,\n  \"traps</w>\": 28517,\n  \"tras</w>\": 30638,\n  \"trash\": 39215,\n  \"trash</w>\": 9798,\n  \"traum\": 22263,\n  \"trauma</w>\": 13846,\n  \"traumati\": 46613,\n  \"traumatic</w>\": 29958,\n  \"trav\": 7586,\n  \"trav</w>\": 46955,\n  \"trave\": 35357,\n  \"travel\": 2824,\n  \"travel</w>\": 1949,\n  \"travelblog</w>\": 35957,\n  \"travelblogger</w>\": 25494,\n  \"travelchat</w>\": 46455,\n  \"traveled</w>\": 20384,\n  \"traveler</w>\": 17794,\n  \"travelers</w>\": 20644,\n  \"travelgram</w>\": 40069,\n  \"traveling</w>\": 9365,\n  \"travelled</w>\": 23428,\n  \"traveller</w>\": 22546,\n  \"travellers</w>\": 29583,\n  \"travelling</w>\": 11190,\n  \"travelphotography</w>\": 22808,\n  \"travelpics</w>\": 32293,\n  \"travels</w>\": 11472,\n  \"traveltips</w>\": 36260,\n  \"traveltuesday</w>\": 16713,\n  \"traverse</w>\": 35058,\n  \"travi\": 46971,\n  \"travis\": 27441,\n  \"travis</w>\": 12287,\n  \"traw\": 42288,\n  \"trax</w>\": 34421,\n  \"tray\": 38470,\n  \"tray</w>\": 14621,\n  \"trays</w>\": 39798,\n  \"trc</w>\": 41803,\n  \"tre\": 975,\n  \"tre</w>\": 6033,\n  \"treach\": 46005,\n  \"tread\": 26182,\n  \"tread</w>\": 35658,\n  \"treadmill</w>\": 37780,\n  \"treas\": 8591,\n  \"treason</w>\": 28103,\n  \"treasure</w>\": 9922,\n  \"treasured</w>\": 48068,\n  \"treasurer</w>\": 26985,\n  \"treasures</w>\": 16500,\n  \"treasury</w>\": 20956,\n  \"treat\": 3968,\n  \"treat</w>\": 3901,\n  \"treated</w>\": 9772,\n  \"treating</w>\": 13842,\n  \"treatment</w>\": 4869,\n  \"treatments</w>\": 15839,\n  \"treats</w>\": 8878,\n  \"treaty</w>\": 19967,\n  \"treble</w>\": 33194,\n  \"trecht</w>\": 33812,\n  \"tree\": 13354,\n  \"tree</w>\": 2677,\n  \"treehouse</w>\": 42387,\n  \"trees</w>\": 4682,\n  \"trek\": 13236,\n  \"trek</w>\": 8136,\n  \"trekking</w>\": 25293,\n  \"trell</w>\": 35159,\n  \"tremb\": 44043,\n  \"tremend\": 14659,\n  \"tremendous</w>\": 15988,\n  \"tren\": 2579,\n  \"trench</w>\": 23846,\n  \"trenches</w>\": 38723,\n  \"trend\": 19986,\n  \"trend</w>\": 6643,\n  \"trending</w>\": 6087,\n  \"trends</w>\": 7015,\n  \"trendsetter</w>\": 46666,\n  \"trendy</w>\": 23072,\n  \"trent\": 45885,\n  \"trent</w>\": 15548,\n  \"trenton</w>\": 37470,\n  \"tres</w>\": 23569,\n  \"tress</w>\": 4733,\n  \"tresses</w>\": 24273,\n  \"trevor\": 23437,\n  \"trevor</w>\": 13219,\n  \"trex</w>\": 42114,\n  \"trey\": 36670,\n  \"trey</w>\": 16939,\n  \"tri\": 924,\n  \"tri</w>\": 9618,\n  \"triad</w>\": 45602,\n  \"trial</w>\": 5991,\n  \"trials</w>\": 10992,\n  \"triangle</w>\": 14615,\n  \"triathlon</w>\": 18080,\n  \"trib</w>\": 45151,\n  \"tribal</w>\": 16629,\n  \"tribe\": 19943,\n  \"tribe</w>\": 11365,\n  \"tribeca</w>\": 35184,\n  \"tribes</w>\": 26546,\n  \"tribu\": 3028,\n  \"tribun\": 14311,\n  \"tribunal</w>\": 32911,\n  \"tribune</w>\": 18556,\n  \"tribute</w>\": 5493,\n  \"tributes</w>\": 15537,\n  \"tric\": 9511,\n  \"tric</w>\": 4081,\n  \"trich</w>\": 39519,\n  \"trick\": 17177,\n  \"trick</w>\": 8172,\n  \"tricks</w>\": 13177,\n  \"tricky</w>\": 22319,\n  \"trics</w>\": 31437,\n  \"trident</w>\": 35491,\n  \"tridge</w>\": 18722,\n  \"tried</w>\": 4554,\n  \"tries</w>\": 4315,\n  \"trife\": 48962,\n  \"trigge\": 30509,\n  \"trigger</w>\": 16158,\n  \"triggered</w>\": 30924,\n  \"triggers</w>\": 37319,\n  \"tright</w>\": 29915,\n  \"tril\": 40626,\n  \"trill</w>\": 39297,\n  \"trilli\": 39350,\n  \"trillion</w>\": 20160,\n  \"trilo\": 15183,\n  \"trilogy</w>\": 16862,\n  \"trim</w>\": 14182,\n  \"trimmed</w>\": 40657,\n  \"trin\": 6628,\n  \"trinidad</w>\": 26244,\n  \"trinity\": 30744,\n  \"trinity</w>\": 12267,\n  \"trio</w>\": 10263,\n  \"trip\": 23421,\n  \"trip</w>\": 2529,\n  \"tripad\": 37189,\n  \"tripadvisor</w>\": 38708,\n  \"triple\": 16519,\n  \"triple</w>\": 7673,\n  \"triplets</w>\": 48601,\n  \"tripod</w>\": 36141,\n  \"tripoli</w>\": 40095,\n  \"trippin</w>\": 43073,\n  \"tripping</w>\": 35229,\n  \"trippy</w>\": 35137,\n  \"trips</w>\": 12292,\n  \"tris</w>\": 29690,\n  \"trish\": 40511,\n  \"trish</w>\": 37179,\n  \"trisha</w>\": 39152,\n  \"tristan</w>\": 25497,\n  \"trit\": 37087,\n  \"triton</w>\": 45437,\n  \"triu\": 14782,\n  \"trium\": 21065,\n  \"triumph\": 26507,\n  \"triumph</w>\": 15307,\n  \"triumphant</w>\": 41918,\n  \"trivi\": 21228,\n  \"trivia</w>\": 10642,\n  \"triviatuesday</w>\": 45499,\n  \"trix</w>\": 41017,\n  \"tro\": 1046,\n  \"tro</w>\": 3332,\n  \"trock</w>\": 44368,\n  \"trojan</w>\": 30653,\n  \"trojans</w>\": 25310,\n  \"trol\": 10306,\n  \"troll\": 39737,\n  \"troll</w>\": 17103,\n  \"trolley</w>\": 25124,\n  \"trolling</w>\": 28552,\n  \"trolls</w>\": 20890,\n  \"tromb\": 32390,\n  \"trombone</w>\": 44423,\n  \"tron\": 19057,\n  \"tron</w>\": 10684,\n  \"tronic</w>\": 34258,\n  \"tronics</w>\": 34397,\n  \"troom</w>\": 23691,\n  \"troop\": 12492,\n  \"troop</w>\": 24054,\n  \"trooper</w>\": 18327,\n  \"troopers</w>\": 23576,\n  \"troops</w>\": 10109,\n  \"trop</w>\": 31585,\n  \"trope</w>\": 41150,\n  \"trophies</w>\": 20998,\n  \"trophy\": 42676,\n  \"trophy</w>\": 6502,\n  \"tropic\": 21794,\n  \"tropic</w>\": 36736,\n  \"tropical\": 41699,\n  \"tropical</w>\": 8686,\n  \"tropics</w>\": 36940,\n  \"tros</w>\": 40456,\n  \"trose</w>\": 36022,\n  \"trot</w>\": 30453,\n  \"trotter</w>\": 38287,\n  \"trou\": 5181,\n  \"troubad\": 49037,\n  \"trouble\": 25669,\n  \"trouble</w>\": 7848,\n  \"troubled</w>\": 25568,\n  \"troubles</w>\": 27254,\n  \"trough</w>\": 39761,\n  \"troupe</w>\": 34803,\n  \"trous\": 19727,\n  \"trousers</w>\": 23172,\n  \"trout</w>\": 14853,\n  \"trove</w>\": 45350,\n  \"trow</w>\": 46914,\n  \"troy\": 26283,\n  \"troy</w>\": 12819,\n  \"trs</w>\": 24770,\n  \"tru\": 931,\n  \"tru</w>\": 25326,\n  \"truck\": 14781,\n  \"truck</w>\": 4629,\n  \"trucker</w>\": 45918,\n  \"truckers</w>\": 43404,\n  \"trucking</w>\": 26208,\n  \"trucks</w>\": 9569,\n  \"trude</w>\": 39017,\n  \"trudeau</w>\": 15752,\n  \"true\": 13096,\n  \"true</w>\": 2328,\n  \"truec\": 37583,\n  \"truelove</w>\": 45711,\n  \"truffle</w>\": 23064,\n  \"truffles</w>\": 37057,\n  \"truly</w>\": 4545,\n  \"trum\": 11766,\n  \"trum</w>\": 11399,\n  \"truman</w>\": 29414,\n  \"trump\": 9124,\n  \"trump</w>\": 1797,\n  \"trumpet</w>\": 23681,\n  \"trumpp\": 45550,\n  \"trumprussia</w>\": 39135,\n  \"trumps</w>\": 29793,\n  \"trumptrain</w>\": 43595,\n  \"trun\": 16163,\n  \"trun</w>\": 46661,\n  \"trunk</w>\": 18347,\n  \"trunks</w>\": 38531,\n  \"truro</w>\": 43507,\n  \"truss</w>\": 46080,\n  \"trust\": 17691,\n  \"trust</w>\": 3876,\n  \"truste\": 17356,\n  \"trusted</w>\": 16538,\n  \"trustee</w>\": 30803,\n  \"trustees</w>\": 28853,\n  \"trusting</w>\": 33221,\n  \"trusts</w>\": 27507,\n  \"trustworthy</w>\": 46840,\n  \"trusty</w>\": 37955,\n  \"truth\": 21335,\n  \"truth</w>\": 4319,\n  \"truths</w>\": 27179,\n  \"trx</w>\": 31620,\n  \"try\": 4487,\n  \"try</w>\": 1209,\n  \"tryin</w>\": 31085,\n  \"trying</w>\": 2551,\n  \"tryna</w>\": 15702,\n  \"tryout</w>\": 43832,\n  \"tryouts</w>\": 28053,\n  \"ts\": 2290,\n  \"ts</w>\": 590,\n  \"tsa</w>\": 25977,\n  \"tsal</w>\": 20438,\n  \"tsb</w>\": 45015,\n  \"tsc</w>\": 37437,\n  \"tsch</w>\": 38778,\n  \"tsd</w>\": 20611,\n  \"tse\": 49144,\n  \"tsfor\": 42654,\n  \"tsford</w>\": 32823,\n  \"tsh\": 42872,\n  \"tshirt</w>\": 14907,\n  \"tshirts</w>\": 29377,\n  \"tsi\": 40048,\n  \"tsi</w>\": 37867,\n  \"tsk</w>\": 43600,\n  \"tsla</w>\": 35681,\n  \"tsm</w>\": 43452,\n  \"tsman</w>\": 20046,\n  \"tsn\": 44921,\n  \"tsn</w>\": 26896,\n  \"tson\": 42353,\n  \"tson</w>\": 47140,\n  \"tsp</w>\": 34230,\n  \"tsu\": 13950,\n  \"tsu</w>\": 20175,\n  \"tsun\": 19155,\n  \"tsunami</w>\": 24286,\n  \"tsville</w>\": 29080,\n  \"tt\": 971,\n  \"tt</w>\": 1402,\n  \"tta</w>\": 2646,\n  \"ttc</w>\": 27668,\n  \"tte\": 23105,\n  \"tte</w>\": 3070,\n  \"tted</w>\": 15163,\n  \"tten\": 11351,\n  \"tten</w>\": 17479,\n  \"tter\": 18691,\n  \"tter</w>\": 5165,\n  \"tters</w>\": 6318,\n  \"ttes</w>\": 9293,\n  \"tti</w>\": 5237,\n  \"ttin</w>\": 36589,\n  \"tting</w>\": 1188,\n  \"ttino</w>\": 47389,\n  \"ttip</w>\": 46993,\n  \"ttle</w>\": 9253,\n  \"ttm</w>\": 46838,\n  \"tto\": 8759,\n  \"tto</w>\": 8105,\n  \"tton</w>\": 10562,\n  \"ttot</w>\": 12480,\n  \"ttp</w>\": 30828,\n  \"ttr\": 47589,\n  \"tts</w>\": 11570,\n  \"ttt</w>\": 17256,\n  \"tttt</w>\": 33119,\n  \"ttu</w>\": 44006,\n  \"ttv</w>\": 24281,\n  \"tty\": 11457,\n  \"tty</w>\": 1856,\n  \"tu\": 764,\n  \"tu</w>\": 5760,\n  \"tua</w>\": 41344,\n  \"tual</w>\": 4799,\n  \"tuan</w>\": 37297,\n  \"tub\": 34907,\n  \"tub</w>\": 15450,\n  \"tube\": 38229,\n  \"tube</w>\": 3308,\n  \"tuber\": 30371,\n  \"tuberculo\": 42606,\n  \"tuberculosis</w>\": 43129,\n  \"tubes</w>\": 22870,\n  \"tubing</w>\": 40794,\n  \"tubs</w>\": 41705,\n  \"tubular</w>\": 48786,\n  \"tuc\": 14456,\n  \"tuc</w>\": 43871,\n  \"tuck</w>\": 22398,\n  \"tucked</w>\": 26923,\n  \"tucker\": 39703,\n  \"tucker</w>\": 15726,\n  \"tucket</w>\": 32677,\n  \"tucson</w>\": 17250,\n  \"tudor</w>\": 24547,\n  \"tue</w>\": 17515,\n  \"tues\": 2283,\n  \"tues</w>\": 12113,\n  \"tuesday\": 10209,\n  \"tuesday</w>\": 2519,\n  \"tuesdaymotivation</w>\": 25432,\n  \"tuesdays</w>\": 23195,\n  \"tuesdaythoughts</w>\": 17988,\n  \"tuf\": 44510,\n  \"tuff</w>\": 38868,\n  \"tug\": 47032,\n  \"tug</w>\": 27902,\n  \"tuition</w>\": 21129,\n  \"tuk\": 39271,\n  \"tuk</w>\": 14993,\n  \"tul\": 9069,\n  \"tul</w>\": 40837,\n  \"tula</w>\": 36332,\n  \"tulane</w>\": 44893,\n  \"tulip</w>\": 28389,\n  \"tulips</w>\": 30886,\n  \"tulsa</w>\": 18850,\n  \"tum\": 12932,\n  \"tum</w>\": 8843,\n  \"tumb\": 8831,\n  \"tumble</w>\": 38284,\n  \"tumbler</w>\": 48790,\n  \"tumbling</w>\": 46226,\n  \"tumblr</w>\": 11841,\n  \"tummy</w>\": 26053,\n  \"tumor</w>\": 22616,\n  \"tumors</w>\": 39894,\n  \"tumour</w>\": 45129,\n  \"tun\": 1415,\n  \"tun</w>\": 21349,\n  \"tuna</w>\": 15037,\n  \"tundra</w>\": 39899,\n  \"tune\": 11427,\n  \"tune</w>\": 3300,\n  \"tuned</w>\": 5898,\n  \"tunein</w>\": 16809,\n  \"tuner</w>\": 42905,\n  \"tunes\": 31688,\n  \"tunes</w>\": 10810,\n  \"tunesapp</w>\": 32550,\n  \"tung\": 47940,\n  \"tung</w>\": 31092,\n  \"tuni\": 16270,\n  \"tunic</w>\": 43495,\n  \"tuning</w>\": 19585,\n  \"tunisia</w>\": 23346,\n  \"tunnel</w>\": 11096,\n  \"tunnels</w>\": 29814,\n  \"tuous</w>\": 28738,\n  \"tup\": 37956,\n  \"tup</w>\": 4507,\n  \"tupac</w>\": 31506,\n  \"tups</w>\": 44855,\n  \"tur\": 985,\n  \"tur</w>\": 17182,\n  \"tura</w>\": 16127,\n  \"tural\": 45143,\n  \"tural</w>\": 4261,\n  \"turb\": 18973,\n  \"turban</w>\": 48515,\n  \"turbine</w>\": 26880,\n  \"turbines</w>\": 38863,\n  \"turbo\": 23578,\n  \"turbo</w>\": 13668,\n  \"turbul\": 31100,\n  \"turbulent</w>\": 47871,\n  \"ture\": 4321,\n  \"ture</w>\": 941,\n  \"tured</w>\": 3987,\n  \"turer</w>\": 11993,\n  \"turers</w>\": 16956,\n  \"tures</w>\": 2400,\n  \"turf\": 36762,\n  \"turf</w>\": 12510,\n  \"turi\": 11896,\n  \"turin</w>\": 36251,\n  \"turing</w>\": 5812,\n  \"turismo</w>\": 30202,\n  \"turk\": 8254,\n  \"turk</w>\": 32507,\n  \"turkey\": 35977,\n  \"turkey</w>\": 4790,\n  \"turkeys</w>\": 37991,\n  \"turkish\": 48199,\n  \"turkish</w>\": 9278,\n  \"turks</w>\": 34344,\n  \"turmeric</w>\": 34044,\n  \"turmoil</w>\": 37751,\n  \"turn\": 5522,\n  \"turn</w>\": 2105,\n  \"turnaround</w>\": 32719,\n  \"turnbull</w>\": 27863,\n  \"turned</w>\": 3771,\n  \"turner\": 42867,\n  \"turner</w>\": 8777,\n  \"turning</w>\": 4976,\n  \"turno\": 21377,\n  \"turnout</w>\": 11654,\n  \"turnover</w>\": 30794,\n  \"turnpike</w>\": 38301,\n  \"turns</w>\": 3185,\n  \"turnt</w>\": 28887,\n  \"turntable</w>\": 37953,\n  \"turnup</w>\": 30591,\n  \"turo</w>\": 29224,\n  \"turquo\": 19390,\n  \"turquoise</w>\": 19899,\n  \"turt\": 13716,\n  \"turtle\": 35943,\n  \"turtle</w>\": 10912,\n  \"turtles</w>\": 17862,\n  \"tus\": 24828,\n  \"tus</w>\": 7079,\n  \"tusc\": 17909,\n  \"tuscal\": 42638,\n  \"tuscaloosa</w>\": 44375,\n  \"tuscan</w>\": 42865,\n  \"tuscany</w>\": 20885,\n  \"tuss\": 31741,\n  \"tut</w>\": 35121,\n  \"tutor\": 10054,\n  \"tutor</w>\": 27858,\n  \"tutorial</w>\": 12857,\n  \"tutorials</w>\": 30973,\n  \"tutoring</w>\": 37532,\n  \"tutti</w>\": 46880,\n  \"tutu</w>\": 35845,\n  \"tux\": 28720,\n  \"tux</w>\": 49186,\n  \"tuxedo</w>\": 40173,\n  \"tv\": 3197,\n  \"tv</w>\": 1583,\n  \"tvc</w>\": 49190,\n  \"tvd</w>\": 25889,\n  \"tvmiaw</w>\": 38554,\n  \"tvn</w>\": 44232,\n  \"tvs</w>\": 27114,\n  \"tvtime</w>\": 19947,\n  \"tvxq</w>\": 43968,\n  \"tw\": 966,\n  \"tw</w>\": 12842,\n  \"twa</w>\": 46954,\n  \"twain</w>\": 30689,\n  \"twal\": 48126,\n  \"tware</w>\": 5707,\n  \"twc</w>\": 41217,\n  \"twd\": 29440,\n  \"twd</w>\": 19343,\n  \"twdfamily</w>\": 38218,\n  \"twe\": 18365,\n  \"tweak</w>\": 48870,\n  \"tweaks</w>\": 42661,\n  \"twee\": 1330,\n  \"tweed</w>\": 26904,\n  \"tweeps</w>\": 14928,\n  \"tweet\": 11826,\n  \"tweet</w>\": 1842,\n  \"tweeta\": 32024,\n  \"tweetapicture\": 40596,\n  \"tweeted</w>\": 7841,\n  \"tweeter</w>\": 32876,\n  \"tweeters</w>\": 31713,\n  \"tweeting</w>\": 8901,\n  \"tweets</w>\": 3560,\n  \"tweetyour\": 45033,\n  \"twel\": 14476,\n  \"twelf\": 39443,\n  \"twelfth</w>\": 44072,\n  \"twell\": 38722,\n  \"twell</w>\": 30162,\n  \"twelve</w>\": 19694,\n  \"twent\": 27027,\n  \"twenti\": 35167,\n  \"twenty</w>\": 13016,\n  \"twentyon\": 39609,\n  \"twentyonepilots</w>\": 40007,\n  \"twer\": 13923,\n  \"twerk</w>\": 28506,\n  \"twi\": 5537,\n  \"twice</w>\": 6970,\n  \"twick\": 34326,\n  \"twickenham</w>\": 39619,\n  \"twil\": 12804,\n  \"twili\": 35754,\n  \"twilight\": 46366,\n  \"twilight</w>\": 14512,\n  \"twill</w>\": 43703,\n  \"twin\": 9342,\n  \"twin</w>\": 6769,\n  \"twine</w>\": 42775,\n  \"twinkle</w>\": 36545,\n  \"twinning</w>\": 30156,\n  \"twinpeaks</w>\": 32042,\n  \"twins</w>\": 8040,\n  \"twist</w>\": 10589,\n  \"twisted</w>\": 18233,\n  \"twister</w>\": 45933,\n  \"twists</w>\": 34149,\n  \"twit\": 1643,\n  \"twit</w>\": 18704,\n  \"twitart</w>\": 27709,\n  \"twitch\": 13251,\n  \"twitch</w>\": 9153,\n  \"twitter\": 7546,\n  \"twitter</w>\": 1989,\n  \"twitterkurds</w>\": 32722,\n  \"twitterstorians</w>\": 35389,\n  \"two\": 17211,\n  \"two</w>\": 1237,\n  \"twol\": 31964,\n  \"twood\": 40404,\n  \"twood</w>\": 13245,\n  \"twp</w>\": 33283,\n  \"twright</w>\": 46778,\n  \"twt</w>\": 6825,\n  \"twx</w>\": 26830,\n  \"twy\": 45861,\n  \"tx\": 6636,\n  \"tx</w>\": 5200,\n  \"txhsfb</w>\": 34757,\n  \"txlege</w>\": 26995,\n  \"txst</w>\": 40761,\n  \"txt</w>\": 24595,\n  \"txwx</w>\": 22995,\n  \"ty\": 1260,\n  \"ty</w>\": 744,\n  \"tya</w>\": 41273,\n  \"tycoon</w>\": 36803,\n  \"tye</w>\": 43097,\n  \"tyfree</w>\": 41215,\n  \"tyga</w>\": 41952,\n  \"tying</w>\": 22559,\n  \"tyl</w>\": 47537,\n  \"tyler\": 14787,\n  \"tyler</w>\": 7058,\n  \"tym</w>\": 45772,\n  \"tyne\": 27000,\n  \"tyne</w>\": 29729,\n  \"tyour\": 16823,\n  \"type\": 15673,\n  \"type</w>\": 3877,\n  \"typed</w>\": 40753,\n  \"typeface</w>\": 44969,\n  \"types</w>\": 7543,\n  \"typewriter</w>\": 42180,\n  \"typho\": 17486,\n  \"typhoon</w>\": 21110,\n  \"typic\": 21648,\n  \"typical</w>\": 9854,\n  \"typically</w>\": 23175,\n  \"typing</w>\": 20102,\n  \"typo\": 18831,\n  \"typo</w>\": 29076,\n  \"typography</w>\": 24332,\n  \"tyr\": 15590,\n  \"tyran\": 46921,\n  \"tyranny</w>\": 35402,\n  \"tyre\": 38330,\n  \"tyre</w>\": 16864,\n  \"tyres</w>\": 21376,\n  \"tyrone</w>\": 30226,\n  \"tyson</w>\": 16616,\n  \"tz\": 7710,\n  \"tz</w>\": 4983,\n  \"tzer</w>\": 45267,\n  \"tzky</w>\": 47127,\n  \"tzman</w>\": 46032,\n  \"tzu</w>\": 34354,\n  \"tÃ©\": 27208,\n  \"tÃ©</w>\": 39694,\n  \"u\": 84,\n  \"u</w>\": 340,\n  \"ua\": 34075,\n  \"ua</w>\": 8441,\n  \"uaap\": 46753,\n  \"uaap</w>\": 43774,\n  \"uab</w>\": 35587,\n  \"uae</w>\": 9752,\n  \"ual</w>\": 1921,\n  \"ually</w>\": 10767,\n  \"uan</w>\": 33062,\n  \"uas</w>\": 38339,\n  \"uav</w>\": 30303,\n  \"ub\": 18430,\n  \"ub</w>\": 13494,\n  \"uba</w>\": 29768,\n  \"ubc\": 42479,\n  \"ubc</w>\": 29455,\n  \"ube</w>\": 30892,\n  \"uber\": 25896,\n  \"uber</w>\": 10668,\n  \"ubi\": 26758,\n  \"ubio</w>\": 32867,\n  \"ubiquit\": 48129,\n  \"ubis\": 28248,\n  \"ubisoft</w>\": 32051,\n  \"ubs</w>\": 43851,\n  \"ubun\": 28184,\n  \"ubuntu</w>\": 30791,\n  \"uc\": 4903,\n  \"uc</w>\": 12438,\n  \"uca</w>\": 30942,\n  \"ucc\": 44844,\n  \"ucc</w>\": 29138,\n  \"ucci</w>\": 30746,\n  \"uccino</w>\": 30409,\n  \"ucd\": 44746,\n  \"ucd</w>\": 43514,\n  \"ucf</w>\": 24414,\n  \"uch\": 19465,\n  \"uch</w>\": 22394,\n  \"uchi\": 37473,\n  \"uci\": 46354,\n  \"uci</w>\": 28925,\n  \"uck</w>\": 34189,\n  \"ucl\": 12013,\n  \"ucl</w>\": 13647,\n  \"ucla\": 37667,\n  \"ucla</w>\": 17259,\n  \"ucn</w>\": 49036,\n  \"uconn</w>\": 30549,\n  \"ud\": 6560,\n  \"ud</w>\": 5765,\n  \"uda</w>\": 22800,\n  \"udaipur</w>\": 49385,\n  \"uddin</w>\": 43035,\n  \"ude\": 37016,\n  \"ude</w>\": 35194,\n  \"ue\": 16696,\n  \"ue</w>\": 1190,\n  \"uefa</w>\": 19189,\n  \"uel</w>\": 24231,\n  \"uer</w>\": 45951,\n  \"ues</w>\": 2526,\n  \"uf\": 17777,\n  \"uf</w>\": 19230,\n  \"ufc\": 20396,\n  \"ufc</w>\": 6490,\n  \"uff</w>\": 45701,\n  \"ufo</w>\": 19443,\n  \"ufos</w>\": 48234,\n  \"ug\": 3754,\n  \"ug</w>\": 16061,\n  \"uga</w>\": 16056,\n  \"ugand\": 25965,\n  \"uganda</w>\": 11125,\n  \"ugandan</w>\": 44206,\n  \"ugby</w>\": 30658,\n  \"ugh\": 39736,\n  \"ugh</w>\": 12755,\n  \"ugliest</w>\": 43543,\n  \"ugly\": 36070,\n  \"ugly</w>\": 8159,\n  \"ugu</w>\": 18144,\n  \"uh\": 17661,\n  \"uh</w>\": 9219,\n  \"uhc</w>\": 44974,\n  \"uhh</w>\": 35938,\n  \"uhhh</w>\": 45270,\n  \"uhm</w>\": 35614,\n  \"uhur\": 29434,\n  \"uhuru</w>\": 35690,\n  \"ui\": 17326,\n  \"ui</w>\": 11458,\n  \"uil</w>\": 29395,\n  \"uit\": 30696,\n  \"uit</w>\": 47584,\n  \"uj\": 33266,\n  \"uji</w>\": 39672,\n  \"uk\": 2294,\n  \"uk</w>\": 1432,\n  \"uka</w>\": 23294,\n  \"uke\": 48836,\n  \"uke</w>\": 28577,\n  \"uked\": 48987,\n  \"uki\": 37435,\n  \"uki</w>\": 9009,\n  \"ukin\": 34996,\n  \"ukip</w>\": 20360,\n  \"uklabour</w>\": 36902,\n  \"ukmfg</w>\": 38764,\n  \"uko</w>\": 33562,\n  \"ukone</w>\": 24682,\n  \"ukrain\": 15468,\n  \"ukraine</w>\": 7768,\n  \"ukrainian</w>\": 16927,\n  \"ukrunchat</w>\": 34481,\n  \"uku\": 29541,\n  \"uku</w>\": 36082,\n  \"ukulele</w>\": 39094,\n  \"ul\": 914,\n  \"ul</w>\": 6625,\n  \"ula\": 34104,\n  \"ula</w>\": 9506,\n  \"ular</w>\": 4927,\n  \"ulary</w>\": 21701,\n  \"ulate</w>\": 20467,\n  \"ulation</w>\": 32896,\n  \"ule</w>\": 35616,\n  \"ules</w>\": 26274,\n  \"ulf</w>\": 49331,\n  \"uli\": 41841,\n  \"uli</w>\": 22174,\n  \"ull\": 33254,\n  \"ulla</w>\": 30577,\n  \"ullah</w>\": 45310,\n  \"ullivan</w>\": 45252,\n  \"ulls</w>\": 37418,\n  \"ulo\": 46084,\n  \"ulo</w>\": 36738,\n  \"ulous\": 42490,\n  \"ulous</w>\": 4281,\n  \"ulously</w>\": 20167,\n  \"ulster\": 29709,\n  \"ulster</w>\": 24639,\n  \"ult</w>\": 4380,\n  \"ulti\": 11925,\n  \"ulties</w>\": 21884,\n  \"ultimat\": 16522,\n  \"ultimate\": 34684,\n  \"ultimate</w>\": 5377,\n  \"ultimatefan\": 48372,\n  \"ultimatefanlive</w>\": 48644,\n  \"ultimately</w>\": 23023,\n  \"ultr\": 25636,\n  \"ultra\": 11398,\n  \"ultra</w>\": 8118,\n  \"ultram\": 44519,\n  \"ultrasound</w>\": 29717,\n  \"ulture</w>\": 22272,\n  \"ulty</w>\": 8036,\n  \"ulu\": 41815,\n  \"ulu</w>\": 15659,\n  \"ulum</w>\": 17235,\n  \"uly\": 33220,\n  \"ulysses</w>\": 46114,\n  \"um\": 1622,\n  \"um</w>\": 1008,\n  \"uma\": 29982,\n  \"uma</w>\": 9256,\n  \"uman</w>\": 27112,\n  \"umar</w>\": 25656,\n  \"umass</w>\": 39390,\n  \"umatic</w>\": 45006,\n  \"umb\": 7493,\n  \"umber\": 19195,\n  \"umbrel\": 34773,\n  \"umbrella</w>\": 17143,\n  \"umbrellas</w>\": 42782,\n  \"umbria</w>\": 39287,\n  \"umc</w>\": 39491,\n  \"umd</w>\": 42067,\n  \"ume\": 38480,\n  \"umen</w>\": 42832,\n  \"uments</w>\": 25924,\n  \"umer</w>\": 23539,\n  \"umes</w>\": 21403,\n  \"umi\": 48772,\n  \"umi</w>\": 15458,\n  \"umich\": 41294,\n  \"umin</w>\": 31542,\n  \"umm\": 26129,\n  \"umm</w>\": 21215,\n  \"ummer</w>\": 47628,\n  \"ummm</w>\": 33665,\n  \"umni</w>\": 31739,\n  \"ump\": 22224,\n  \"umpire</w>\": 36214,\n  \"ums</w>\": 8643,\n  \"umu</w>\": 39788,\n  \"un\": 569,\n  \"un</w>\": 2271,\n  \"una</w>\": 6385,\n  \"unable</w>\": 17793,\n  \"unacceptable</w>\": 25234,\n  \"unanim\": 20800,\n  \"unanimous</w>\": 33520,\n  \"unanimously</w>\": 31798,\n  \"unanswered</w>\": 43611,\n  \"unarmed</w>\": 41541,\n  \"unas</w>\": 41366,\n  \"unavailable</w>\": 48430,\n  \"unaware</w>\": 33347,\n  \"unbeat\": 37056,\n  \"unbeatable</w>\": 40267,\n  \"unbeaten</w>\": 19228,\n  \"unbeliev\": 11383,\n  \"unbelievable</w>\": 13306,\n  \"unbelievably</w>\": 33781,\n  \"unborn</w>\": 37257,\n  \"unboxing</w>\": 32866,\n  \"unbreakable</w>\": 32956,\n  \"unbroken</w>\": 49271,\n  \"unc\": 24921,\n  \"unc</w>\": 15322,\n  \"uncanny</w>\": 32556,\n  \"uncertain</w>\": 30384,\n  \"uncertainty</w>\": 23956,\n  \"unch</w>\": 1527,\n  \"unchanged</w>\": 34272,\n  \"uncharted</w>\": 34560,\n  \"unci\": 25521,\n  \"unciation</w>\": 34117,\n  \"uncle\": 31537,\n  \"uncle</w>\": 8002,\n  \"unclear</w>\": 32955,\n  \"uncles</w>\": 45335,\n  \"uncomfortable</w>\": 22470,\n  \"uncommon</w>\": 34888,\n  \"uncondition\": 46561,\n  \"unconditional</w>\": 31112,\n  \"unconscious</w>\": 34791,\n  \"unconstitutional</w>\": 43585,\n  \"unconventional</w>\": 39440,\n  \"uncover</w>\": 33031,\n  \"uncovered</w>\": 28234,\n  \"uncture</w>\": 38736,\n  \"uncut</w>\": 41056,\n  \"und\": 9762,\n  \"und</w>\": 9732,\n  \"unda</w>\": 39932,\n  \"undant</w>\": 25377,\n  \"unday</w>\": 29338,\n  \"unde</w>\": 45226,\n  \"undead</w>\": 40105,\n  \"undecided</w>\": 49368,\n  \"undefeated</w>\": 15326,\n  \"undeni\": 38424,\n  \"under\": 1473,\n  \"under</w>\": 1798,\n  \"underage</w>\": 45669,\n  \"underattack</w>\": 35075,\n  \"undercover</w>\": 21595,\n  \"underdog</w>\": 44266,\n  \"undere\": 21675,\n  \"underestim\": 23348,\n  \"underestimate</w>\": 31794,\n  \"undergo</w>\": 31545,\n  \"undergoing</w>\": 26419,\n  \"undergrad</w>\": 38331,\n  \"undergraduate</w>\": 24320,\n  \"underground</w>\": 9396,\n  \"undering</w>\": 30826,\n  \"underlying</w>\": 31812,\n  \"undermine</w>\": 42839,\n  \"underneath</w>\": 20857,\n  \"underrated</w>\": 19494,\n  \"unders</w>\": 20376,\n  \"understand\": 47582,\n  \"understand</w>\": 4600,\n  \"understanding</w>\": 7522,\n  \"understands</w>\": 21607,\n  \"understatement</w>\": 38296,\n  \"understood</w>\": 17303,\n  \"undertaker</w>\": 40144,\n  \"undertaking</w>\": 49067,\n  \"undertale</w>\": 48283,\n  \"underthe\": 41161,\n  \"underwater</w>\": 14760,\n  \"underway</w>\": 6273,\n  \"underwear</w>\": 21154,\n  \"underwood</w>\": 21474,\n  \"underworld</w>\": 34760,\n  \"undi</w>\": 23845,\n  \"undisclosed</w>\": 39334,\n  \"undo</w>\": 35454,\n  \"undocumented</w>\": 35414,\n  \"undoub\": 38836,\n  \"undoubtedly</w>\": 42204,\n  \"undp</w>\": 26691,\n  \"une\": 4522,\n  \"une</w>\": 10966,\n  \"unearth\": 32716,\n  \"unearthed</w>\": 36632,\n  \"unemp\": 15139,\n  \"unemployed</w>\": 32721,\n  \"unemployment</w>\": 19350,\n  \"unes</w>\": 6394,\n  \"unesco</w>\": 16216,\n  \"uneven</w>\": 43204,\n  \"unex\": 9484,\n  \"unexpe\": 10802,\n  \"unexpec\": 31829,\n  \"unexpected</w>\": 12293,\n  \"unexpectedly</w>\": 35622,\n  \"unf\": 29285,\n  \"unfair</w>\": 22193,\n  \"unfinished</w>\": 26526,\n  \"unfit</w>\": 45367,\n  \"unfold</w>\": 38681,\n  \"unfollow</w>\": 38797,\n  \"unfor\": 14010,\n  \"unforgettable</w>\": 16173,\n  \"unfortun\": 10194,\n  \"unfortunate</w>\": 22361,\n  \"unfortunately</w>\": 12863,\n  \"unfpa</w>\": 45048,\n  \"ung\": 10439,\n  \"ung</w>\": 4334,\n  \"unga</w>\": 19151,\n  \"ungsoo</w>\": 25582,\n  \"unh\": 25365,\n  \"unhappy</w>\": 26528,\n  \"unhcr</w>\": 43451,\n  \"unhealthy</w>\": 30994,\n  \"uni\": 1107,\n  \"uni</w>\": 5926,\n  \"unic\": 7648,\n  \"unicef\": 38286,\n  \"unicef</w>\": 19259,\n  \"unicorn</w>\": 15660,\n  \"unicorns</w>\": 35183,\n  \"unidenti\": 33707,\n  \"unidentified</w>\": 35563,\n  \"unification</w>\": 45036,\n  \"unified</w>\": 20876,\n  \"uniform</w>\": 11075,\n  \"uniforms</w>\": 17838,\n  \"unil\": 32388,\n  \"unilever</w>\": 48654,\n  \"uniof\": 21218,\n  \"union\": 14210,\n  \"union</w>\": 3503,\n  \"unions</w>\": 18353,\n  \"unis\": 30482,\n  \"unis</w>\": 39266,\n  \"unisex</w>\": 27609,\n  \"unison</w>\": 46694,\n  \"unit\": 28522,\n  \"unit</w>\": 5695,\n  \"unite\": 15078,\n  \"unite</w>\": 11305,\n  \"uniteblue</w>\": 20935,\n  \"united\": 10898,\n  \"united</w>\": 2690,\n  \"unitedstates</w>\": 39636,\n  \"unitedway\": 47486,\n  \"unites</w>\": 32061,\n  \"uniting</w>\": 31318,\n  \"units</w>\": 10394,\n  \"unity\": 38300,\n  \"unity</w>\": 8581,\n  \"univ\": 36680,\n  \"univ</w>\": 14896,\n  \"univer\": 15574,\n  \"univers\": 5855,\n  \"universal\": 19148,\n  \"universal</w>\": 8754,\n  \"universe</w>\": 6104,\n  \"universi\": 41692,\n  \"universit\": 26019,\n  \"universities</w>\": 16408,\n  \"university\": 40728,\n  \"university</w>\": 2182,\n  \"universityof\": 46158,\n  \"unk</w>\": 5542,\n  \"unknown</w>\": 8685,\n  \"unl</w>\": 43807,\n  \"unlawful</w>\": 42305,\n  \"unle\": 19677,\n  \"unlea\": 23893,\n  \"unleash</w>\": 26706,\n  \"unleashed</w>\": 27955,\n  \"unless</w>\": 10602,\n  \"unlike</w>\": 16694,\n  \"unlikely</w>\": 18904,\n  \"unlimited</w>\": 11015,\n  \"unlock</w>\": 18649,\n  \"unlocked</w>\": 16770,\n  \"unlocking</w>\": 40810,\n  \"unlucky</w>\": 35029,\n  \"unlv</w>\": 42283,\n  \"unmanned</w>\": 36751,\n  \"unmatched</w>\": 46054,\n  \"unn</w>\": 38364,\n  \"unnamed</w>\": 44985,\n  \"unnecessary</w>\": 24100,\n  \"unner</w>\": 31481,\n  \"unning</w>\": 43282,\n  \"unnoticed</w>\": 42807,\n  \"uno\": 32446,\n  \"uno</w>\": 17078,\n  \"unofficial</w>\": 22506,\n  \"unpacking</w>\": 43589,\n  \"unpaid</w>\": 32811,\n  \"unparalleled</w>\": 44396,\n  \"unplugged</w>\": 31724,\n  \"unpopular</w>\": 40232,\n  \"unprece\": 23054,\n  \"unprecedented</w>\": 23344,\n  \"unpredictable</w>\": 38684,\n  \"unra\": 45150,\n  \"unreal\": 46980,\n  \"unreal</w>\": 15636,\n  \"unrelated</w>\": 38644,\n  \"unreleased</w>\": 29654,\n  \"unrest</w>\": 36452,\n  \"uns</w>\": 25908,\n  \"unsafe</w>\": 32071,\n  \"unsc</w>\": 36395,\n  \"unseen</w>\": 19069,\n  \"unsigned</w>\": 39346,\n  \"unsolved</w>\": 40836,\n  \"unsplash</w>\": 46196,\n  \"unstable</w>\": 34730,\n  \"unstopp\": 22105,\n  \"unstoppable</w>\": 23484,\n  \"unsuccessful</w>\": 47478,\n  \"unsung</w>\": 33015,\n  \"unsure</w>\": 26396,\n  \"unt\": 19654,\n  \"unt</w>\": 6537,\n  \"until</w>\": 1942,\n  \"untitled</w>\": 21309,\n  \"unto</w>\": 19801,\n  \"untold</w>\": 32206,\n  \"untouch\": 44509,\n  \"untouched</w>\": 42764,\n  \"unused</w>\": 29636,\n  \"unusual</w>\": 12613,\n  \"unusually</w>\": 36465,\n  \"unve\": 6685,\n  \"unveil</w>\": 20483,\n  \"unveiled</w>\": 13572,\n  \"unveiling</w>\": 20327,\n  \"unveils</w>\": 15057,\n  \"unwanted</w>\": 25285,\n  \"unwind</w>\": 34064,\n  \"unya</w>\": 37142,\n  \"uo\": 30874,\n  \"uo</w>\": 36162,\n  \"uof\": 11155,\n  \"uoft</w>\": 37329,\n  \"uon\": 48144,\n  \"uous</w>\": 40185,\n  \"up\": 1083,\n  \"up</w>\": 705,\n  \"upa</w>\": 31727,\n  \"upbeat</w>\": 39201,\n  \"upcoming</w>\": 4196,\n  \"upcycled</w>\": 46552,\n  \"upd\": 3226,\n  \"update</w>\": 2491,\n  \"updated</w>\": 5974,\n  \"updates</w>\": 4904,\n  \"updating</w>\": 22792,\n  \"uper\": 38082,\n  \"uper</w>\": 33056,\n  \"upfront</w>\": 42064,\n  \"upgrade</w>\": 10365,\n  \"upgraded</w>\": 18577,\n  \"upgrades</w>\": 21253,\n  \"upgrading</w>\": 34368,\n  \"uph\": 14128,\n  \"uphill</w>\": 42767,\n  \"uphol\": 26195,\n  \"uphold</w>\": 43897,\n  \"upholstery</w>\": 44556,\n  \"upl\": 41939,\n  \"uplift</w>\": 45389,\n  \"uplifting</w>\": 29546,\n  \"upload</w>\": 13968,\n  \"uploaded</w>\": 16793,\n  \"uploading</w>\": 30145,\n  \"upon\": 23524,\n  \"upon</w>\": 5067,\n  \"upp\": 19549,\n  \"upp</w>\": 45946,\n  \"upper\": 22465,\n  \"upper</w>\": 7067,\n  \"upri\": 15982,\n  \"upright</w>\": 29818,\n  \"uprising</w>\": 26006,\n  \"upro\": 28922,\n  \"ups</w>\": 6926,\n  \"upscale</w>\": 47501,\n  \"upset</w>\": 11214,\n  \"upsets</w>\": 42637,\n  \"upside</w>\": 15362,\n  \"upstairs</w>\": 21387,\n  \"upstate</w>\": 33335,\n  \"upstream</w>\": 45517,\n  \"upthe\": 31510,\n  \"upto</w>\": 26575,\n  \"upton</w>\": 31910,\n  \"uptown</w>\": 23807,\n  \"upward</w>\": 32526,\n  \"upwards</w>\": 34915,\n  \"uq</w>\": 39591,\n  \"ur\": 565,\n  \"ur</w>\": 1775,\n  \"ura\": 29337,\n  \"ura</w>\": 3544,\n  \"urable</w>\": 40194,\n  \"ural\": 23547,\n  \"ural</w>\": 33948,\n  \"uran</w>\": 16197,\n  \"uranium</w>\": 29850,\n  \"urban\": 7931,\n  \"urban</w>\": 5800,\n  \"urbanart</w>\": 40834,\n  \"urd</w>\": 47880,\n  \"urday</w>\": 19742,\n  \"urdu</w>\": 29976,\n  \"ure\": 5514,\n  \"ure</w>\": 726,\n  \"ured</w>\": 4210,\n  \"urer</w>\": 20864,\n  \"ures</w>\": 2288,\n  \"urg</w>\": 35995,\n  \"urge</w>\": 14852,\n  \"urged</w>\": 23790,\n  \"urgency</w>\": 47612,\n  \"urgent</w>\": 13693,\n  \"urgently</w>\": 34534,\n  \"urges</w>\": 16692,\n  \"urging</w>\": 27748,\n  \"uri\": 11052,\n  \"uri</w>\": 8699,\n  \"urie</w>\": 46429,\n  \"urin\": 45245,\n  \"urine</w>\": 28864,\n  \"uring</w>\": 1351,\n  \"url</w>\": 23464,\n  \"urn</w>\": 38075,\n  \"uro\": 17343,\n  \"uro</w>\": 5925,\n  \"urology</w>\": 48585,\n  \"urope</w>\": 14918,\n  \"urs</w>\": 4794,\n  \"urself</w>\": 31942,\n  \"urst</w>\": 19181,\n  \"urstruly\": 34751,\n  \"urstrulymahesh</w>\": 35314,\n  \"ursula</w>\": 38390,\n  \"urt</w>\": 24309,\n  \"uru\": 16322,\n  \"uru</w>\": 11768,\n  \"uruguay</w>\": 27931,\n  \"urus</w>\": 14246,\n  \"urve\": 24583,\n  \"ury\": 8642,\n  \"ury</w>\": 2106,\n  \"us\": 904,\n  \"us</w>\": 718,\n  \"usa\": 9491,\n  \"usa</w>\": 2547,\n  \"usability</w>\": 46736,\n  \"usable</w>\": 22890,\n  \"usaf</w>\": 25017,\n  \"usage</w>\": 19137,\n  \"usaid</w>\": 34507,\n  \"usair\": 36742,\n  \"usairforce</w>\": 42179,\n  \"usarmy</w>\": 19132,\n  \"usatoday</w>\": 40263,\n  \"usav\": 36056,\n  \"usb</w>\": 10281,\n  \"usc\": 13346,\n  \"usc</w>\": 14995,\n  \"uscg</w>\": 43932,\n  \"usd</w>\": 7485,\n  \"usda</w>\": 25829,\n  \"use\": 4419,\n  \"use</w>\": 1483,\n  \"used\": 32289,\n  \"used</w>\": 2026,\n  \"useful</w>\": 9784,\n  \"useless</w>\": 20154,\n  \"usemb\": 39700,\n  \"user\": 21248,\n  \"user</w>\": 7031,\n  \"username</w>\": 28162,\n  \"users</w>\": 7433,\n  \"uses</w>\": 5282,\n  \"useum</w>\": 45189,\n  \"usf\": 32385,\n  \"usf</w>\": 28942,\n  \"usgs</w>\": 35103,\n  \"ush\": 12001,\n  \"ush</w>\": 18335,\n  \"usher</w>\": 27411,\n  \"ushi</w>\": 47734,\n  \"usi</w>\": 25540,\n  \"usic\": 34909,\n  \"usic</w>\": 16753,\n  \"using</w>\": 1996,\n  \"usky</w>\": 45778,\n  \"usl</w>\": 42113,\n  \"usm</w>\": 40041,\n  \"usmc</w>\": 21678,\n  \"usmnt</w>\": 30662,\n  \"usn</w>\": 40579,\n  \"usnavy</w>\": 24500,\n  \"usnews</w>\": 43752,\n  \"uso</w>\": 21539,\n  \"usopen</w>\": 21782,\n  \"usp\": 26651,\n  \"usps</w>\": 39980,\n  \"usrc</w>\": 33274,\n  \"uss\": 11545,\n  \"uss</w>\": 9260,\n  \"ussia</w>\": 29553,\n  \"ussoccer</w>\": 42828,\n  \"ussr</w>\": 32697,\n  \"ust\": 35501,\n  \"ust</w>\": 24725,\n  \"usu\": 4254,\n  \"usu</w>\": 40434,\n  \"usual</w>\": 6129,\n  \"usually</w>\": 8296,\n  \"usur\": 45582,\n  \"uswnt</w>\": 35255,\n  \"ut\": 1419,\n  \"ut</w>\": 3641,\n  \"uta\": 42706,\n  \"uta</w>\": 25925,\n  \"utah\": 27474,\n  \"utah</w>\": 9312,\n  \"utc</w>\": 18196,\n  \"utd</w>\": 10493,\n  \"ute\": 16856,\n  \"ute</w>\": 3130,\n  \"uten\": 32089,\n  \"uter\": 39197,\n  \"utes</w>\": 2850,\n  \"uth\": 48819,\n  \"uth</w>\": 44750,\n  \"uti</w>\": 24568,\n  \"util\": 28824,\n  \"utili\": 17015,\n  \"utilities</w>\": 27210,\n  \"utility</w>\": 14941,\n  \"utilize</w>\": 36861,\n  \"utilized</w>\": 47604,\n  \"utilizing</w>\": 40212,\n  \"utm</w>\": 47853,\n  \"utmost</w>\": 42352,\n  \"uto\": 18866,\n  \"uto</w>\": 13683,\n  \"utopia</w>\": 34433,\n  \"utpol</w>\": 42605,\n  \"utr\": 48726,\n  \"utrecht</w>\": 37216,\n  \"uts</w>\": 11740,\n  \"utsa</w>\": 37528,\n  \"utt\": 17096,\n  \"uttar</w>\": 40168,\n  \"uttarak\": 33755,\n  \"uttarakhand</w>\": 35655,\n  \"utter\": 18769,\n  \"utter</w>\": 24558,\n  \"utterly</w>\": 21353,\n  \"utto</w>\": 42183,\n  \"utv</w>\": 36351,\n  \"utz</w>\": 45320,\n  \"uu\": 5702,\n  \"uu</w>\": 14553,\n  \"uuu\": 44355,\n  \"uuu</w>\": 27656,\n  \"uuuu\": 16720,\n  \"uuuu</w>\": 40797,\n  \"uv\": 23777,\n  \"uv</w>\": 15977,\n  \"uva</w>\": 23908,\n  \"uw\": 13933,\n  \"uw</w>\": 19166,\n  \"uwe</w>\": 48785,\n  \"uwu</w>\": 35544,\n  \"ux\": 9251,\n  \"ux</w>\": 6213,\n  \"uy\": 31929,\n  \"uy</w>\": 48113,\n  \"uz\": 19398,\n  \"uz</w>\": 36991,\n  \"uzbe\": 43007,\n  \"uzbekistan</w>\": 45024,\n  \"uzzi</w>\": 48210,\n  \"v\": 85,\n  \"v</w>\": 341,\n  \"va\": 4648,\n  \"va</w>\": 1892,\n  \"vaa</w>\": 37488,\n  \"vable</w>\": 23088,\n  \"vac\": 3125,\n  \"vac</w>\": 34085,\n  \"vaca</w>\": 48215,\n  \"vacancies</w>\": 26333,\n  \"vacancy</w>\": 21247,\n  \"vacant</w>\": 25262,\n  \"vacation\": 28336,\n  \"vacation</w>\": 6561,\n  \"vacations</w>\": 29002,\n  \"vacay</w>\": 44716,\n  \"vacc\": 13342,\n  \"vaccin\": 19164,\n  \"vaccinated</w>\": 48134,\n  \"vaccination</w>\": 32518,\n  \"vaccine\": 47780,\n  \"vaccine</w>\": 17493,\n  \"vaccines</w>\": 25860,\n  \"vach\": 46211,\n  \"vacu\": 16058,\n  \"vacuum</w>\": 18420,\n  \"vad\": 11880,\n  \"vada</w>\": 46759,\n  \"vader</w>\": 21908,\n  \"vae</w>\": 39384,\n  \"vag\": 13015,\n  \"vague</w>\": 42154,\n  \"vah</w>\": 26921,\n  \"vai\": 26893,\n  \"vai</w>\": 36802,\n  \"vail</w>\": 21189,\n  \"vain</w>\": 25538,\n  \"vais</w>\": 28719,\n  \"vaj\": 34206,\n  \"vak\": 16288,\n  \"vak</w>\": 41597,\n  \"val\": 1214,\n  \"val</w>\": 1560,\n  \"vala</w>\": 48525,\n  \"valdez</w>\": 40617,\n  \"vale\": 35554,\n  \"vale</w>\": 10820,\n  \"valedic\": 43525,\n  \"valen\": 12630,\n  \"valence</w>\": 30225,\n  \"valenci\": 34183,\n  \"valencia</w>\": 16559,\n  \"valent\": 3655,\n  \"valent</w>\": 15300,\n  \"valentin</w>\": 48631,\n  \"valentina</w>\": 43741,\n  \"valentine\": 11208,\n  \"valentine</w>\": 5876,\n  \"valentines</w>\": 10259,\n  \"valentinesday</w>\": 12369,\n  \"valentino</w>\": 29624,\n  \"valeri\": 31951,\n  \"valerie</w>\": 25592,\n  \"valet</w>\": 45749,\n  \"vali\": 8230,\n  \"valiant</w>\": 33804,\n  \"valid</w>\": 15126,\n  \"validation</w>\": 32536,\n  \"valkyrie</w>\": 42326,\n  \"vall\": 23523,\n  \"vall</w>\": 35295,\n  \"vallarta</w>\": 47874,\n  \"valle\": 24857,\n  \"valle</w>\": 29105,\n  \"valley\": 18354,\n  \"valley</w>\": 3136,\n  \"valleys</w>\": 28649,\n  \"valor</w>\": 30930,\n  \"vals</w>\": 7431,\n  \"valu\": 6291,\n  \"valuable</w>\": 10056,\n  \"valuation</w>\": 25894,\n  \"value\": 41358,\n  \"value</w>\": 4602,\n  \"valued</w>\": 17801,\n  \"values</w>\": 8857,\n  \"valve</w>\": 17001,\n  \"valves</w>\": 33517,\n  \"vam\": 9983,\n  \"vamo\": 46718,\n  \"vamos</w>\": 30346,\n  \"vamp\": 10680,\n  \"vampi\": 47017,\n  \"vampire\": 47576,\n  \"vampire</w>\": 13220,\n  \"vampires</w>\": 30868,\n  \"vamps</w>\": 44810,\n  \"van\": 2446,\n  \"van</w>\": 2451,\n  \"vana</w>\": 20543,\n  \"vanc\": 6320,\n  \"vance</w>\": 31447,\n  \"vancou\": 6750,\n  \"vancouver\": 31904,\n  \"vancouver</w>\": 7208,\n  \"vand\": 11691,\n  \"vandalism</w>\": 45664,\n  \"vander\": 16264,\n  \"vanderbilt</w>\": 33524,\n  \"vandy\": 39268,\n  \"vane</w>\": 43828,\n  \"vaness\": 13328,\n  \"vanessa</w>\": 16836,\n  \"vangogh</w>\": 47849,\n  \"vanguard</w>\": 27916,\n  \"vani\": 15396,\n  \"vani</w>\": 26459,\n  \"vania</w>\": 10998,\n  \"vanilla</w>\": 11974,\n  \"vanished</w>\": 43783,\n  \"vanishing</w>\": 48296,\n  \"vanity\": 48353,\n  \"vanity</w>\": 22938,\n  \"vans</w>\": 11711,\n  \"vant\": 26298,\n  \"vantage</w>\": 31749,\n  \"vanu\": 42892,\n  \"vanuatu</w>\": 48766,\n  \"vap\": 10462,\n  \"vape\": 25423,\n  \"vape</w>\": 20219,\n  \"vaping</w>\": 29403,\n  \"vapor\": 37167,\n  \"vapor</w>\": 30729,\n  \"vapori\": 46183,\n  \"var\": 3187,\n  \"var</w>\": 12998,\n  \"vara</w>\": 47492,\n  \"varan\": 36585,\n  \"varanasi</w>\": 39364,\n  \"vard\": 21866,\n  \"vard</w>\": 8773,\n  \"vardy</w>\": 47371,\n  \"vare\": 38159,\n  \"vares</w>\": 42895,\n  \"vargas</w>\": 32752,\n  \"vari\": 3354,\n  \"variable</w>\": 26416,\n  \"varian</w>\": 34334,\n  \"variant</w>\": 20293,\n  \"variants</w>\": 38312,\n  \"variation</w>\": 26420,\n  \"variations</w>\": 29025,\n  \"varied</w>\": 32334,\n  \"varies</w>\": 32543,\n  \"varieties</w>\": 23805,\n  \"variety</w>\": 8396,\n  \"various</w>\": 7395,\n  \"varsity\": 43716,\n  \"varsity</w>\": 8574,\n  \"varun\": 48120,\n  \"varun</w>\": 22069,\n  \"vary</w>\": 18855,\n  \"varying</w>\": 36456,\n  \"vas\": 5669,\n  \"vas</w>\": 5995,\n  \"vasc</w>\": 40995,\n  \"vascular</w>\": 19218,\n  \"vase</w>\": 20431,\n  \"vasi\": 49092,\n  \"vast\": 24413,\n  \"vast</w>\": 16414,\n  \"vastly</w>\": 48257,\n  \"vat\": 11588,\n  \"vat</w>\": 18363,\n  \"vatican</w>\": 21030,\n  \"vation</w>\": 37884,\n  \"vau\": 6391,\n  \"vaugh\": 25158,\n  \"vaughan</w>\": 21392,\n  \"vaughn</w>\": 29013,\n  \"vaul\": 27469,\n  \"vault</w>\": 15240,\n  \"vaus</w>\": 40217,\n  \"vaux\": 27403,\n  \"vauxhall</w>\": 29173,\n  \"vaw</w>\": 47952,\n  \"vay\": 48000,\n  \"vaz\": 38142,\n  \"vb\": 29365,\n  \"vb</w>\": 8778,\n  \"vball</w>\": 38329,\n  \"vc\": 28670,\n  \"vc</w>\": 7952,\n  \"vcs</w>\": 43528,\n  \"vcu</w>\": 40102,\n  \"vd</w>\": 9515,\n  \"vday</w>\": 42055,\n  \"ve\": 673,\n  \"ve</w>\": 563,\n  \"vea</w>\": 43798,\n  \"veal</w>\": 36616,\n  \"veau</w>\": 24419,\n  \"vec\": 19912,\n  \"vector\": 40453,\n  \"vector</w>\": 21533,\n  \"ved\": 19515,\n  \"ved</w>\": 1102,\n  \"veda</w>\": 44401,\n  \"vedere</w>\": 45660,\n  \"vedi</w>\": 47971,\n  \"vee\": 35708,\n  \"vee</w>\": 17073,\n  \"veen</w>\": 22432,\n  \"veer\": 21243,\n  \"veer</w>\": 22058,\n  \"veg\": 9048,\n  \"veg</w>\": 16460,\n  \"vega</w>\": 22930,\n  \"vegan\": 15705,\n  \"vegan</w>\": 5615,\n  \"vegans</w>\": 48514,\n  \"vegas\": 20288,\n  \"vegas</w>\": 4413,\n  \"vege\": 6219,\n  \"vegetable</w>\": 15725,\n  \"vegetables</w>\": 14119,\n  \"vegetarian</w>\": 14600,\n  \"vegetation</w>\": 33947,\n  \"veggie</w>\": 19401,\n  \"veggies</w>\": 16767,\n  \"vehic\": 3973,\n  \"vehicle</w>\": 5299,\n  \"vehicles</w>\": 8361,\n  \"veil</w>\": 23516,\n  \"vein</w>\": 29169,\n  \"veins</w>\": 28867,\n  \"veit</w>\": 30620,\n  \"vel\": 942,\n  \"vel</w>\": 1287,\n  \"vela</w>\": 34898,\n  \"veld</w>\": 34011,\n  \"veled</w>\": 15370,\n  \"veli</w>\": 49166,\n  \"veling</w>\": 37970,\n  \"vell\": 21173,\n  \"vell</w>\": 32997,\n  \"velo\": 14357,\n  \"velo</w>\": 33850,\n  \"velocity</w>\": 23811,\n  \"vels</w>\": 5109,\n  \"velve\": 37849,\n  \"velvet</w>\": 11063,\n  \"vely</w>\": 1708,\n  \"vember</w>\": 3477,\n  \"vement</w>\": 3129,\n  \"vements</w>\": 11104,\n  \"ven\": 1240,\n  \"ven</w>\": 1638,\n  \"vena</w>\": 47442,\n  \"vend\": 10851,\n  \"vending</w>\": 29202,\n  \"vendor</w>\": 21261,\n  \"vendors</w>\": 20353,\n  \"vene\": 5365,\n  \"veness</w>\": 10516,\n  \"venetian</w>\": 34336,\n  \"venezia</w>\": 34139,\n  \"venezu\": 10939,\n  \"venezuela</w>\": 12839,\n  \"venezuelan</w>\": 34699,\n  \"veng</w>\": 31526,\n  \"venge\": 27757,\n  \"vengeance</w>\": 32057,\n  \"veni</w>\": 31142,\n  \"venice</w>\": 11010,\n  \"vening</w>\": 47532,\n  \"venison</w>\": 40037,\n  \"venom\": 42491,\n  \"venom</w>\": 21588,\n  \"vens</w>\": 20884,\n  \"vent\": 4373,\n  \"vent</w>\": 5687,\n  \"ventil\": 39522,\n  \"ventilation</w>\": 35066,\n  \"venting</w>\": 15731,\n  \"vention</w>\": 4122,\n  \"vents</w>\": 12833,\n  \"ventu\": 48217,\n  \"ventura</w>\": 20921,\n  \"venture\": 37046,\n  \"venture</w>\": 12543,\n  \"ventures</w>\": 20829,\n  \"venue</w>\": 5097,\n  \"venues</w>\": 18120,\n  \"venus</w>\": 14691,\n  \"ver\": 624,\n  \"ver</w>\": 667,\n  \"vera</w>\": 13350,\n  \"verage</w>\": 3725,\n  \"verb</w>\": 34952,\n  \"verbal</w>\": 26522,\n  \"verbally</w>\": 39985,\n  \"verbs</w>\": 45687,\n  \"verde</w>\": 16935,\n  \"verdi</w>\": 42306,\n  \"verdict</w>\": 18030,\n  \"vere\": 11135,\n  \"vere</w>\": 34707,\n  \"vered</w>\": 2868,\n  \"verge</w>\": 23913,\n  \"veri\": 11638,\n  \"verification</w>\": 33521,\n  \"verified</w>\": 22555,\n  \"verify</w>\": 34722,\n  \"vering</w>\": 4630,\n  \"veriz\": 19707,\n  \"verizon</w>\": 21532,\n  \"verma</w>\": 41261,\n  \"vermont</w>\": 19241,\n  \"vern\": 2214,\n  \"vern</w>\": 12586,\n  \"verne</w>\": 45553,\n  \"vernon</w>\": 18348,\n  \"vero\": 45217,\n  \"vero</w>\": 38208,\n  \"verona</w>\": 31819,\n  \"veronic\": 39551,\n  \"veronica</w>\": 24039,\n  \"vers\": 1219,\n  \"vers</w>\": 2094,\n  \"versa</w>\": 35765,\n  \"versace</w>\": 25422,\n  \"versail\": 29857,\n  \"versailles</w>\": 32129,\n  \"versary</w>\": 2940,\n  \"versatile</w>\": 18110,\n  \"versatility</w>\": 41340,\n  \"verse\": 39466,\n  \"verse</w>\": 3131,\n  \"verses</w>\": 30769,\n  \"versi\": 8934,\n  \"version</w>\": 3273,\n  \"versions</w>\": 16190,\n  \"versity</w>\": 1906,\n  \"verst\": 42484,\n  \"verstappen</w>\": 45064,\n  \"versus</w>\": 14548,\n  \"versy</w>\": 18522,\n  \"vert</w>\": 11742,\n  \"verte\": 35158,\n  \"verted</w>\": 48173,\n  \"verti\": 30459,\n  \"vertical</w>\": 14293,\n  \"vertigo</w>\": 42477,\n  \"verton</w>\": 40632,\n  \"verts</w>\": 37265,\n  \"very\": 11698,\n  \"very</w>\": 1070,\n  \"veryday</w>\": 37944,\n  \"verything</w>\": 45174,\n  \"ves\": 9616,\n  \"ves</w>\": 1003,\n  \"vesmatter</w>\": 47636,\n  \"vespa</w>\": 46029,\n  \"vessel</w>\": 16387,\n  \"vessels</w>\": 22822,\n  \"vest\": 31657,\n  \"vest</w>\": 12473,\n  \"vesti\": 40349,\n  \"vests</w>\": 41906,\n  \"vet\": 12294,\n  \"vet</w>\": 5951,\n  \"veter\": 4330,\n  \"veteran\": 20797,\n  \"veteran</w>\": 8814,\n  \"veterans</w>\": 7092,\n  \"veteransday</w>\": 26409,\n  \"veterin\": 43959,\n  \"veterinary</w>\": 25458,\n  \"veto</w>\": 36570,\n  \"vets</w>\": 13113,\n  \"vette</w>\": 17045,\n  \"vettel</w>\": 28700,\n  \"vevo</w>\": 35141,\n  \"vex\": 36187,\n  \"vex</w>\": 43978,\n  \"vey\": 34792,\n  \"vey</w>\": 3884,\n  \"vez\": 35987,\n  \"vez</w>\": 17226,\n  \"vf</w>\": 25966,\n  \"vfl</w>\": 33726,\n  \"vfx</w>\": 30149,\n  \"vg\": 40591,\n  \"vg</w>\": 22346,\n  \"vh\": 46953,\n  \"vh</w>\": 23847,\n  \"vhs</w>\": 21932,\n  \"vi\": 603,\n  \"vi</w>\": 4259,\n  \"via</w>\": 1048,\n  \"viable</w>\": 25752,\n  \"viadu\": 37012,\n  \"viaduct</w>\": 39113,\n  \"vial</w>\": 39951,\n  \"vian\": 40487,\n  \"vian</w>\": 16124,\n  \"vibe\": 37974,\n  \"vibe</w>\": 12813,\n  \"vibes</w>\": 7764,\n  \"vibr\": 9527,\n  \"vibrant</w>\": 14270,\n  \"vibration</w>\": 37456,\n  \"vibrations</w>\": 43660,\n  \"vic\": 1555,\n  \"vic</w>\": 4412,\n  \"vica</w>\": 46168,\n  \"vicar</w>\": 43899,\n  \"vice\": 43572,\n  \"vice</w>\": 6931,\n  \"vicente</w>\": 39411,\n  \"vices</w>\": 8332,\n  \"vich</w>\": 24143,\n  \"vici\": 46670,\n  \"vicious</w>\": 25177,\n  \"vick\": 15116,\n  \"vick</w>\": 29704,\n  \"vickers</w>\": 48452,\n  \"vicki</w>\": 34927,\n  \"vicky\": 37176,\n  \"vicky</w>\": 25788,\n  \"victi\": 6861,\n  \"victim</w>\": 9133,\n  \"victims</w>\": 7131,\n  \"victor\": 2423,\n  \"victor</w>\": 10690,\n  \"victori\": 17555,\n  \"victoria\": 39286,\n  \"victoria</w>\": 6127,\n  \"victorian</w>\": 12350,\n  \"victorias\": 47791,\n  \"victories</w>\": 24577,\n  \"victorious</w>\": 24033,\n  \"victory\": 36668,\n  \"victory</w>\": 4127,\n  \"vid\": 17233,\n  \"vid</w>\": 9284,\n  \"vida</w>\": 19015,\n  \"vidal</w>\": 36678,\n  \"vide\": 1334,\n  \"vide</w>\": 45244,\n  \"video\": 9478,\n  \"video</w>\": 1455,\n  \"videogame</w>\": 35097,\n  \"videogames</w>\": 21149,\n  \"videos</w>\": 6081,\n  \"vids</w>\": 23035,\n  \"vidy\": 29639,\n  \"vidya</w>\": 45264,\n  \"vie\": 922,\n  \"vie</w>\": 8538,\n  \"vien\": 36493,\n  \"vienna</w>\": 12670,\n  \"vier\": 15352,\n  \"vier</w>\": 11987,\n  \"viera</w>\": 21114,\n  \"viernes</w>\": 33826,\n  \"vies</w>\": 22458,\n  \"viest</w>\": 31979,\n  \"viet\": 17558,\n  \"viet</w>\": 13128,\n  \"vietnam\": 19558,\n  \"vietnam</w>\": 8623,\n  \"vietnamese</w>\": 22382,\n  \"view\": 12004,\n  \"view</w>\": 1093,\n  \"viewed</w>\": 7226,\n  \"viewer</w>\": 15061,\n  \"viewers</w>\": 14275,\n  \"viewing</w>\": 7124,\n  \"viewpoint</w>\": 41604,\n  \"views</w>\": 2758,\n  \"vig\": 8549,\n  \"vig</w>\": 45083,\n  \"vigil\": 21538,\n  \"vigil</w>\": 19896,\n  \"vigilant</w>\": 43026,\n  \"vigne\": 40447,\n  \"vigne</w>\": 34581,\n  \"vigo</w>\": 44097,\n  \"vigor\": 26781,\n  \"vii</w>\": 17759,\n  \"viii</w>\": 20414,\n  \"vijay\": 12014,\n  \"vijay</w>\": 10823,\n  \"vijaysethu\": 47966,\n  \"vik\": 10764,\n  \"vik</w>\": 17181,\n  \"vika</w>\": 39562,\n  \"vikas</w>\": 37116,\n  \"viking\": 26663,\n  \"viking</w>\": 15897,\n  \"vikings</w>\": 11713,\n  \"vikram\": 41136,\n  \"vikram</w>\": 24314,\n  \"viktor</w>\": 36101,\n  \"vil\": 1338,\n  \"vil</w>\": 3000,\n  \"vila</w>\": 37505,\n  \"vile</w>\": 27247,\n  \"vill\": 10481,\n  \"vill</w>\": 45698,\n  \"villa\": 3203,\n  \"villa</w>\": 7754,\n  \"village\": 34584,\n  \"village</w>\": 4331,\n  \"villagers</w>\": 34283,\n  \"villages</w>\": 17621,\n  \"villain</w>\": 15425,\n  \"villains</w>\": 25271,\n  \"villanova</w>\": 44025,\n  \"villar\": 35164,\n  \"villas</w>\": 28907,\n  \"ville\": 11110,\n  \"ville</w>\": 1930,\n  \"villen\": 46177,\n  \"villi\": 36907,\n  \"vimeo</w>\": 48720,\n  \"vin\": 1379,\n  \"vin</w>\": 2558,\n  \"vina</w>\": 35682,\n  \"vinai\": 37396,\n  \"vinaigrette</w>\": 39876,\n  \"vinay\": 43952,\n  \"vince\": 32429,\n  \"vince</w>\": 6236,\n  \"vincen\": 33402,\n  \"vincent\": 29069,\n  \"vincent</w>\": 10357,\n  \"vinci</w>\": 30199,\n  \"vind</w>\": 20275,\n  \"vindic\": 39582,\n  \"vine\": 8471,\n  \"vine</w>\": 7721,\n  \"vinegar</w>\": 23834,\n  \"vines</w>\": 21268,\n  \"vineyard</w>\": 16527,\n  \"vineyards</w>\": 23082,\n  \"ving\": 5375,\n  \"ving</w>\": 903,\n  \"vingne</w>\": 42579,\n  \"vings</w>\": 22510,\n  \"vini</w>\": 48119,\n  \"vinnie</w>\": 40885,\n  \"vinny</w>\": 36794,\n  \"vino</w>\": 14509,\n  \"vinod</w>\": 43348,\n  \"vins</w>\": 34820,\n  \"vinson</w>\": 45945,\n  \"vintag\": 10936,\n  \"vintage\": 13654,\n  \"vintage</w>\": 3266,\n  \"viny\": 40990,\n  \"vinyl\": 22835,\n  \"vinyl</w>\": 5754,\n  \"vio\": 11913,\n  \"vio</w>\": 20324,\n  \"viol\": 3164,\n  \"viola</w>\": 27438,\n  \"violate</w>\": 44875,\n  \"violated</w>\": 38192,\n  \"violating</w>\": 37554,\n  \"violation</w>\": 22919,\n  \"violations</w>\": 21969,\n  \"violence</w>\": 5450,\n  \"violent</w>\": 11565,\n  \"violently</w>\": 47758,\n  \"violet</w>\": 16118,\n  \"violets</w>\": 42861,\n  \"violin</w>\": 17058,\n  \"violinist</w>\": 36299,\n  \"vion</w>\": 35496,\n  \"vious</w>\": 6418,\n  \"viously</w>\": 7149,\n  \"vip\": 45714,\n  \"vip</w>\": 7111,\n  \"viper</w>\": 27401,\n  \"vips</w>\": 41149,\n  \"vir\": 1790,\n  \"vir</w>\": 25319,\n  \"vira</w>\": 35910,\n  \"viral</w>\": 11653,\n  \"virat</w>\": 32473,\n  \"virgil</w>\": 39076,\n  \"virgin\": 5651,\n  \"virgin</w>\": 12103,\n  \"virgini\": 43426,\n  \"virginia</w>\": 6728,\n  \"virgo</w>\": 39978,\n  \"viro\": 32301,\n  \"viron\": 38309,\n  \"virtu\": 7977,\n  \"virtual\": 18059,\n  \"virtual</w>\": 7790,\n  \"virtually</w>\": 22475,\n  \"virtualreality</w>\": 32608,\n  \"virtue</w>\": 26860,\n  \"virtues</w>\": 42167,\n  \"virtuoso</w>\": 47027,\n  \"virus</w>\": 11808,\n  \"viruses</w>\": 34830,\n  \"vis\": 1301,\n  \"vis</w>\": 5337,\n  \"visa</w>\": 12802,\n  \"visas</w>\": 41228,\n  \"vise</w>\": 24977,\n  \"vised</w>\": 14810,\n  \"vish\": 12024,\n  \"vish</w>\": 29124,\n  \"vishal</w>\": 33648,\n  \"vishnu</w>\": 37816,\n  \"visi\": 1409,\n  \"visibility</w>\": 15921,\n  \"visible\": 36658,\n  \"visible</w>\": 8626,\n  \"vising</w>\": 37439,\n  \"vision\": 11147,\n  \"vision</w>\": 2515,\n  \"visional</w>\": 24627,\n  \"visionary</w>\": 22959,\n  \"visions</w>\": 13804,\n  \"visit\": 3388,\n  \"visit</w>\": 1600,\n  \"visitation</w>\": 44370,\n  \"visited</w>\": 5580,\n  \"visiting</w>\": 4680,\n  \"visitor</w>\": 13881,\n  \"visitors</w>\": 9160,\n  \"visits</w>\": 8489,\n  \"visitscotland</w>\": 28760,\n  \"visitspain</w>\": 48860,\n  \"vism</w>\": 15514,\n  \"viso</w>\": 46732,\n  \"visor</w>\": 24217,\n  \"vist</w>\": 21436,\n  \"vista</w>\": 13865,\n  \"visu\": 7739,\n  \"visual\": 17004,\n  \"visual</w>\": 7195,\n  \"visualization</w>\": 28500,\n  \"visualize</w>\": 45057,\n  \"visually</w>\": 25743,\n  \"visuals</w>\": 21315,\n  \"viswas\": 36513,\n  \"viswasam</w>\": 47664,\n  \"vit\": 4056,\n  \"vit</w>\": 35580,\n  \"vita</w>\": 15700,\n  \"vital\": 32525,\n  \"vital</w>\": 10585,\n  \"vitality</w>\": 36385,\n  \"vitam\": 9856,\n  \"vitamin</w>\": 13675,\n  \"vitamins</w>\": 22582,\n  \"vito</w>\": 36725,\n  \"vity</w>\": 4893,\n  \"vitz</w>\": 26188,\n  \"vius</w>\": 41571,\n  \"viv\": 21827,\n  \"viv</w>\": 35363,\n  \"viva</w>\": 17399,\n  \"vival\": 35920,\n  \"vive\": 18980,\n  \"vive</w>\": 24004,\n  \"vivek</w>\": 36243,\n  \"vivi\": 11625,\n  \"vivian</w>\": 30129,\n  \"vivid</w>\": 22984,\n  \"vivo\": 28091,\n  \"vivo</w>\": 25888,\n  \"vix\": 28976,\n  \"vix</w>\": 34811,\n  \"vixen</w>\": 38757,\n  \"vixx</w>\": 32106,\n  \"viz\": 28251,\n  \"viz</w>\": 31786,\n  \"vj\": 45439,\n  \"vj</w>\": 30827,\n  \"vk</w>\": 41893,\n  \"vl\": 37580,\n  \"vl</w>\": 36442,\n  \"vla\": 23686,\n  \"vlad</w>\": 41089,\n  \"vladi\": 19320,\n  \"vladimir</w>\": 21702,\n  \"vlive</w>\": 46797,\n  \"vlog</w>\": 18894,\n  \"vm\": 16204,\n  \"vm</w>\": 20269,\n  \"vma</w>\": 35666,\n  \"vmas</w>\": 30236,\n  \"vmware</w>\": 29615,\n  \"vn\": 47098,\n  \"vn</w>\": 25076,\n  \"vo\": 947,\n  \"vo</w>\": 3951,\n  \"voc\": 4105,\n  \"voc</w>\": 20855,\n  \"vocab\": 21346,\n  \"vocabulary</w>\": 23804,\n  \"vocal\": 34037,\n  \"vocal</w>\": 13147,\n  \"vocali\": 19134,\n  \"vocalist</w>\": 22102,\n  \"vocals</w>\": 17666,\n  \"vocation</w>\": 20521,\n  \"vocational</w>\": 33751,\n  \"vod\": 11820,\n  \"vod</w>\": 35854,\n  \"vodaf\": 28436,\n  \"vodafone</w>\": 38695,\n  \"vodka</w>\": 13646,\n  \"vogel</w>\": 44960,\n  \"vogue\": 24418,\n  \"vogue</w>\": 13178,\n  \"voic\": 29185,\n  \"voice\": 13179,\n  \"voice</w>\": 3386,\n  \"voiced</w>\": 34352,\n  \"voiceof\": 44966,\n  \"voiceover</w>\": 41979,\n  \"voices</w>\": 9144,\n  \"void</w>\": 21561,\n  \"voip</w>\": 42762,\n  \"voir</w>\": 16036,\n  \"vol\": 1343,\n  \"vol</w>\": 7945,\n  \"volatile</w>\": 41022,\n  \"volatility</w>\": 32355,\n  \"volcan\": 9916,\n  \"volcanic</w>\": 24072,\n  \"volcano</w>\": 14581,\n  \"volcanoes</w>\": 38055,\n  \"voli</w>\": 40138,\n  \"volk\": 13432,\n  \"volkswag\": 14407,\n  \"volkswagen</w>\": 15342,\n  \"volley\": 7130,\n  \"volley</w>\": 34656,\n  \"volleyball</w>\": 7458,\n  \"volo</w>\": 44791,\n  \"vols</w>\": 20404,\n  \"volt</w>\": 26430,\n  \"volta\": 29879,\n  \"volta</w>\": 33480,\n  \"voltage</w>\": 23118,\n  \"voltron</w>\": 39314,\n  \"volu\": 3563,\n  \"volume</w>\": 8284,\n  \"volumes</w>\": 22651,\n  \"volun\": 3356,\n  \"voluntar\": 48823,\n  \"voluntary</w>\": 23815,\n  \"volunte\": 3556,\n  \"volunteer\": 32331,\n  \"volunteer</w>\": 7114,\n  \"volunteered</w>\": 34000,\n  \"volunteering</w>\": 14902,\n  \"volunteers</w>\": 5939,\n  \"volution</w>\": 24043,\n  \"volved</w>\": 42888,\n  \"volvo\": 39991,\n  \"volvo</w>\": 16906,\n  \"vom\": 24198,\n  \"vomit</w>\": 46485,\n  \"von\": 11269,\n  \"von</w>\": 8497,\n  \"voo\": 19497,\n  \"voodoo</w>\": 26869,\n  \"voor\": 34291,\n  \"voor</w>\": 34464,\n  \"vor\": 8338,\n  \"vor</w>\": 5308,\n  \"vore</w>\": 18215,\n  \"vortex</w>\": 30071,\n  \"vos</w>\": 16863,\n  \"vot</w>\": 48558,\n  \"vote\": 6830,\n  \"vote</w>\": 2187,\n  \"voted</w>\": 6454,\n  \"votel\": 41379,\n  \"voter\": 44474,\n  \"voter</w>\": 14065,\n  \"voters</w>\": 8925,\n  \"votes</w>\": 6693,\n  \"voting</w>\": 5756,\n  \"vou\": 11045,\n  \"voucher</w>\": 18190,\n  \"vouchers</w>\": 23384,\n  \"vous</w>\": 10636,\n  \"vow</w>\": 34787,\n  \"vows</w>\": 21677,\n  \"vox\": 29215,\n  \"vox</w>\": 22692,\n  \"voy\": 10622,\n  \"voy</w>\": 15021,\n  \"voyage</w>\": 16299,\n  \"voyager</w>\": 29669,\n  \"vp\": 32758,\n  \"vp</w>\": 3896,\n  \"vpn</w>\": 38212,\n  \"vr\": 16840,\n  \"vr</w>\": 5921,\n  \"vre\": 44500,\n  \"vre</w>\": 17501,\n  \"vs\": 11385,\n  \"vs</w>\": 1547,\n  \"vsco\": 26752,\n  \"vsco</w>\": 32822,\n  \"vscocam</w>\": 34694,\n  \"vsky</w>\": 37791,\n  \"vss</w>\": 31919,\n  \"vt\": 31732,\n  \"vt</w>\": 10291,\n  \"vu\": 8664,\n  \"vu</w>\": 13230,\n  \"vue\": 43915,\n  \"vue</w>\": 19313,\n  \"vuel\": 31312,\n  \"vuelta</w>\": 43856,\n  \"vuitton</w>\": 26705,\n  \"vul\": 6856,\n  \"vulcan</w>\": 34767,\n  \"vulner\": 11213,\n  \"vulnerability</w>\": 28797,\n  \"vulnerable</w>\": 14332,\n  \"vulture</w>\": 34593,\n  \"vultures</w>\": 47197,\n  \"vv\": 19264,\n  \"vv</w>\": 35686,\n  \"vw\": 28650,\n  \"vw</w>\": 13250,\n  \"vx</w>\": 47644,\n  \"vy\": 11566,\n  \"vy</w>\": 5157,\n  \"w\": 86,\n  \"w</w>\": 342,\n  \"wa\": 869,\n  \"wa</w>\": 2663,\n  \"waa</w>\": 35874,\n  \"wab\": 19893,\n  \"wab</w>\": 36852,\n  \"wac\": 27445,\n  \"wac</w>\": 37947,\n  \"wack\": 22880,\n  \"wack</w>\": 38270,\n  \"wacky</w>\": 34318,\n  \"waco</w>\": 36035,\n  \"wad\": 11133,\n  \"wad</w>\": 30451,\n  \"wada</w>\": 40006,\n  \"wade\": 40237,\n  \"wade</w>\": 14180,\n  \"wadi</w>\": 37253,\n  \"waf\": 17638,\n  \"wafc</w>\": 49086,\n  \"waff\": 13940,\n  \"waffle</w>\": 20375,\n  \"waffles</w>\": 24205,\n  \"wag\": 5764,\n  \"wag</w>\": 19177,\n  \"wage</w>\": 10716,\n  \"wager</w>\": 43430,\n  \"wages</w>\": 19114,\n  \"wagner</w>\": 18081,\n  \"wagon</w>\": 13260,\n  \"wagons</w>\": 47944,\n  \"wags</w>\": 48580,\n  \"wah\": 24812,\n  \"wah</w>\": 18014,\n  \"wahl\": 27500,\n  \"wahlberg</w>\": 35151,\n  \"wahoo</w>\": 47995,\n  \"wai\": 11469,\n  \"wai</w>\": 21569,\n  \"waifu</w>\": 46551,\n  \"waikiki</w>\": 44907,\n  \"wain\": 28358,\n  \"wain</w>\": 20120,\n  \"wainwright</w>\": 45878,\n  \"waist\": 36946,\n  \"waist</w>\": 18459,\n  \"wait\": 10021,\n  \"wait</w>\": 1885,\n  \"waite</w>\": 24272,\n  \"waited</w>\": 18492,\n  \"waiter</w>\": 32946,\n  \"waitin</w>\": 44482,\n  \"waiting</w>\": 2680,\n  \"waitress</w>\": 39760,\n  \"waitrose</w>\": 37164,\n  \"waits</w>\": 21361,\n  \"waiver</w>\": 42866,\n  \"waj</w>\": 49367,\n  \"wak\": 11172,\n  \"wak</w>\": 36015,\n  \"waka</w>\": 42696,\n  \"wake\": 10501,\n  \"wake</w>\": 5731,\n  \"wakefield</w>\": 26358,\n  \"wakes</w>\": 29108,\n  \"wakeup\": 26328,\n  \"wakeup</w>\": 35380,\n  \"wakeupamerica</w>\": 37474,\n  \"waking</w>\": 13025,\n  \"wal\": 1056,\n  \"wal</w>\": 6903,\n  \"wala</w>\": 16468,\n  \"walang</w>\": 49180,\n  \"walcott</w>\": 45744,\n  \"wald\": 46930,\n  \"wald</w>\": 15724,\n  \"walden</w>\": 39311,\n  \"waldo</w>\": 32440,\n  \"waldorf</w>\": 38227,\n  \"wale\": 41247,\n  \"wale</w>\": 20336,\n  \"wales\": 25383,\n  \"wales</w>\": 5110,\n  \"walgreens</w>\": 38490,\n  \"wali\": 37576,\n  \"wali</w>\": 14768,\n  \"walia</w>\": 44455,\n  \"walk\": 8588,\n  \"walk</w>\": 2374,\n  \"walkaway</w>\": 48255,\n  \"walked</w>\": 8667,\n  \"walker\": 24735,\n  \"walker</w>\": 6150,\n  \"walkers</w>\": 23366,\n  \"walkin</w>\": 45792,\n  \"walking\": 12644,\n  \"walking</w>\": 3941,\n  \"walkingdead</w>\": 14948,\n  \"walkout</w>\": 47470,\n  \"walks</w>\": 8192,\n  \"walkway</w>\": 36614,\n  \"wall\": 4316,\n  \"wall</w>\": 2569,\n  \"walla\": 26007,\n  \"walla</w>\": 39982,\n  \"wallabies</w>\": 48926,\n  \"wallace</w>\": 12535,\n  \"wallart</w>\": 36223,\n  \"walled</w>\": 36567,\n  \"waller</w>\": 45340,\n  \"wallet</w>\": 12154,\n  \"wallets</w>\": 38550,\n  \"walleye</w>\": 49099,\n  \"wallis</w>\": 42206,\n  \"wallpaper</w>\": 10560,\n  \"wallpapers</w>\": 29841,\n  \"walls</w>\": 8258,\n  \"wallstreet</w>\": 45341,\n  \"wally</w>\": 26024,\n  \"walmart</w>\": 11972,\n  \"walnut</w>\": 16310,\n  \"walnuts</w>\": 38294,\n  \"walsall</w>\": 42935,\n  \"walsh</w>\": 12856,\n  \"walt\": 23535,\n  \"walt</w>\": 14312,\n  \"waltdisneyworld</w>\": 36505,\n  \"walter\": 31156,\n  \"walter</w>\": 10645,\n  \"walters</w>\": 25532,\n  \"waltham\": 42742,\n  \"waltham</w>\": 45581,\n  \"walton</w>\": 19485,\n  \"waltz</w>\": 35982,\n  \"wam\": 20503,\n  \"wamy</w>\": 46970,\n  \"wan\": 2060,\n  \"wan</w>\": 4557,\n  \"wana</w>\": 30830,\n  \"wand\": 14636,\n  \"wand</w>\": 28559,\n  \"wanda</w>\": 25070,\n  \"wander\": 12985,\n  \"wander</w>\": 24473,\n  \"wandered</w>\": 46593,\n  \"wanderers</w>\": 27540,\n  \"wandering</w>\": 22597,\n  \"wanderlust</w>\": 16129,\n  \"wane</w>\": 27459,\n  \"wang\": 19731,\n  \"wang</w>\": 11900,\n  \"wani</w>\": 21674,\n  \"wankers</w>\": 42189,\n  \"wann\": 23622,\n  \"wanna\": 35940,\n  \"wanna</w>\": 3836,\n  \"wannabe</w>\": 40730,\n  \"wannaone</w>\": 44832,\n  \"want\": 18356,\n  \"want</w>\": 1280,\n  \"wanted</w>\": 3146,\n  \"wanting</w>\": 12801,\n  \"wants</w>\": 3107,\n  \"wap\": 27393,\n  \"wap</w>\": 30368,\n  \"waq\": 47512,\n  \"war\": 984,\n  \"war</w>\": 2238,\n  \"wara</w>\": 21631,\n  \"warbler</w>\": 33891,\n  \"warcraft</w>\": 13660,\n  \"ward\": 7728,\n  \"ward</w>\": 1460,\n  \"warden</w>\": 27798,\n  \"wardly</w>\": 30780,\n  \"wardro\": 14247,\n  \"wardrobe</w>\": 15020,\n  \"wards</w>\": 2593,\n  \"ware\": 7416,\n  \"ware</w>\": 4476,\n  \"wareagle</w>\": 35716,\n  \"warehouse</w>\": 13054,\n  \"wareness\": 41601,\n  \"wareness</w>\": 35870,\n  \"wares</w>\": 30692,\n  \"warfare</w>\": 15739,\n  \"warhammer</w>\": 26832,\n  \"warhol</w>\": 27554,\n  \"wari</w>\": 20977,\n  \"wark\": 46346,\n  \"wark</w>\": 15164,\n  \"warlock</w>\": 42455,\n  \"warm\": 14725,\n  \"warm</w>\": 3616,\n  \"warmed</w>\": 36695,\n  \"warmer</w>\": 14328,\n  \"warmest</w>\": 30910,\n  \"warming</w>\": 8606,\n  \"warmly</w>\": 45322,\n  \"warmongers</w>\": 33205,\n  \"warms</w>\": 32917,\n  \"warmth</w>\": 19636,\n  \"warmup</w>\": 29904,\n  \"warmups</w>\": 44094,\n  \"warn</w>\": 19360,\n  \"warned</w>\": 16409,\n  \"warner\": 28564,\n  \"warner</w>\": 13402,\n  \"warning</w>\": 4994,\n  \"warnings</w>\": 18098,\n  \"warns</w>\": 14086,\n  \"waron\": 38947,\n  \"warp</w>\": 32411,\n  \"warped</w>\": 32125,\n  \"warran\": 17392,\n  \"warrant</w>\": 22554,\n  \"warrants</w>\": 45677,\n  \"warranty</w>\": 23999,\n  \"warren\": 23143,\n  \"warren</w>\": 9234,\n  \"warri\": 4109,\n  \"warrington</w>\": 31203,\n  \"warrior\": 18998,\n  \"warrior</w>\": 8148,\n  \"warriors</w>\": 6421,\n  \"wars</w>\": 3931,\n  \"warsaw</w>\": 21072,\n  \"warship</w>\": 47846,\n  \"wart\": 43535,\n  \"wart</w>\": 7346,\n  \"wartime</w>\": 42998,\n  \"warts</w>\": 21781,\n  \"warwick\": 23081,\n  \"warwick</w>\": 22215,\n  \"warwickshire</w>\": 36766,\n  \"wary</w>\": 36213,\n  \"was\": 3398,\n  \"was</w>\": 739,\n  \"wasabi</w>\": 47334,\n  \"wash\": 3363,\n  \"wash</w>\": 7810,\n  \"washed</w>\": 14092,\n  \"washer</w>\": 24085,\n  \"washes</w>\": 38950,\n  \"washing</w>\": 13029,\n  \"washington\": 16774,\n  \"washington</w>\": 4365,\n  \"washingtondc</w>\": 40225,\n  \"washingtonpost</w>\": 28426,\n  \"wasn</w>\": 5044,\n  \"wasnt</w>\": 29607,\n  \"wasp</w>\": 24889,\n  \"wasps</w>\": 35300,\n  \"wassup</w>\": 45708,\n  \"wast\": 28886,\n  \"waste\": 18157,\n  \"waste</w>\": 6065,\n  \"wasted</w>\": 18278,\n  \"wasteland</w>\": 44035,\n  \"wastewater</w>\": 34463,\n  \"wasting</w>\": 25577,\n  \"wat\": 800,\n  \"wat</w>\": 10621,\n  \"wata</w>\": 42509,\n  \"watch\": 7046,\n  \"watch</w>\": 1239,\n  \"watchdog</w>\": 35303,\n  \"watched</w>\": 5775,\n  \"watcher</w>\": 35971,\n  \"watchers</w>\": 28443,\n  \"watches</w>\": 9521,\n  \"watchin</w>\": 32432,\n  \"watching</w>\": 2113,\n  \"water\": 2505,\n  \"water</w>\": 1573,\n  \"watercolor</w>\": 14211,\n  \"watercolour</w>\": 18377,\n  \"waterfall</w>\": 16403,\n  \"waterfalls</w>\": 26692,\n  \"waterford</w>\": 24448,\n  \"waterfront</w>\": 16605,\n  \"waterhouse</w>\": 45072,\n  \"watering</w>\": 19871,\n  \"waterloo</w>\": 17465,\n  \"watermelon</w>\": 19889,\n  \"waterproof</w>\": 17613,\n  \"waters</w>\": 7753,\n  \"watershed</w>\": 33204,\n  \"waterstones</w>\": 45014,\n  \"waterways</w>\": 37395,\n  \"watford</w>\": 23162,\n  \"watfordfc</w>\": 37328,\n  \"wati</w>\": 27966,\n  \"watkins</w>\": 22539,\n  \"watson\": 35490,\n  \"watson</w>\": 9294,\n  \"watt\": 22899,\n  \"watt</w>\": 15805,\n  \"wattpad</w>\": 32351,\n  \"watts</w>\": 14750,\n  \"wau\": 9479,\n  \"wav\": 6054,\n  \"wave\": 17530,\n  \"wave</w>\": 4535,\n  \"waved</w>\": 44657,\n  \"waver\": 25997,\n  \"waves</w>\": 7882,\n  \"waving</w>\": 26545,\n  \"wavy</w>\": 31941,\n  \"waw\": 22039,\n  \"wawrinka</w>\": 48414,\n  \"wawx</w>\": 47387,\n  \"wax\": 18789,\n  \"wax</w>\": 11910,\n  \"waxing</w>\": 38781,\n  \"way\": 3079,\n  \"way</w>\": 923,\n  \"wayback\": 47822,\n  \"wayne\": 23632,\n  \"wayne</w>\": 7003,\n  \"ways</w>\": 1248,\n  \"waz\": 20889,\n  \"waz</w>\": 48835,\n  \"wb\": 10726,\n  \"wb</w>\": 12377,\n  \"wba</w>\": 22675,\n  \"wbb</w>\": 14482,\n  \"wbc</w>\": 26745,\n  \"wbo</w>\": 49053,\n  \"wbz</w>\": 35471,\n  \"wc\": 4842,\n  \"wc</w>\": 5755,\n  \"wcc\": 47166,\n  \"wcc</w>\": 34926,\n  \"wcpo</w>\": 46624,\n  \"wcs</w>\": 39916,\n  \"wcvb</w>\": 32709,\n  \"wcw</w>\": 9041,\n  \"wd\": 15998,\n  \"wd</w>\": 7494,\n  \"wdw</w>\": 40334,\n  \"we\": 598,\n  \"we</w>\": 649,\n  \"wea\": 37146,\n  \"wea</w>\": 47301,\n  \"weak\": 12128,\n  \"weak</w>\": 10128,\n  \"weaker</w>\": 39735,\n  \"weakness</w>\": 21448,\n  \"weaknesses</w>\": 43487,\n  \"weal\": 14759,\n  \"wealth\": 33150,\n  \"wealth</w>\": 7904,\n  \"wealthy</w>\": 22617,\n  \"weap\": 6156,\n  \"weapon\": 42612,\n  \"weapon</w>\": 10537,\n  \"weapons</w>\": 10007,\n  \"wear\": 12206,\n  \"wear</w>\": 2839,\n  \"wearab\": 22983,\n  \"wearable\": 44943,\n  \"wearable</w>\": 24973,\n  \"wearables</w>\": 30319,\n  \"weare\": 4264,\n  \"weare</w>\": 27867,\n  \"weareall\": 45980,\n  \"wearec\": 43620,\n  \"wearen\": 45635,\n  \"weareone\": 16149,\n  \"weareoneexo</w>\": 16448,\n  \"wearethe\": 40242,\n  \"wearing</w>\": 3309,\n  \"wears</w>\": 11869,\n  \"weary</w>\": 38766,\n  \"weasel</w>\": 44308,\n  \"weather\": 8808,\n  \"weather</w>\": 2237,\n  \"weathercee</w>\": 44980,\n  \"weatherchannel</w>\": 42138,\n  \"weav\": 22260,\n  \"weave</w>\": 22450,\n  \"weaver</w>\": 20297,\n  \"weaving</w>\": 27131,\n  \"web\": 2055,\n  \"web</w>\": 4601,\n  \"webb</w>\": 15708,\n  \"webber</w>\": 34248,\n  \"webcam\": 24211,\n  \"webcam</w>\": 22589,\n  \"webcamtoy</w>\": 27719,\n  \"webcast</w>\": 28256,\n  \"webcomic</w>\": 34286,\n  \"webcomics</w>\": 39811,\n  \"webdesign</w>\": 20470,\n  \"webdev</w>\": 37000,\n  \"webdevelopment</w>\": 47553,\n  \"weber</w>\": 20179,\n  \"webin\": 8460,\n  \"webinar</w>\": 8921,\n  \"webinars</w>\": 47755,\n  \"webpage</w>\": 46964,\n  \"webs</w>\": 32829,\n  \"webseries</w>\": 44819,\n  \"website</w>\": 3364,\n  \"websites</w>\": 19278,\n  \"webster</w>\": 19471,\n  \"websummit</w>\": 48069,\n  \"wec</w>\": 33152,\n  \"wechat</w>\": 46124,\n  \"wed\": 1687,\n  \"wed</w>\": 3478,\n  \"wedd\": 7576,\n  \"wedding\": 11204,\n  \"wedding</w>\": 3101,\n  \"weddings</w>\": 15964,\n  \"wedge</w>\": 21446,\n  \"wedges</w>\": 33179,\n  \"wedne\": 2380,\n  \"wednesday\": 9311,\n  \"wednesday</w>\": 2689,\n  \"wednesdaymotivation</w>\": 37860,\n  \"wednesdays</w>\": 24943,\n  \"wednesdaywisdom</w>\": 11445,\n  \"wedo</w>\": 43432,\n  \"weds</w>\": 19107,\n  \"wee\": 716,\n  \"wee</w>\": 8288,\n  \"weed\": 36935,\n  \"weed</w>\": 8015,\n  \"weeds</w>\": 26326,\n  \"week\": 1286,\n  \"week</w>\": 994,\n  \"weekday</w>\": 29244,\n  \"weekdays</w>\": 44330,\n  \"weekend\": 17205,\n  \"weekend</w>\": 1456,\n  \"weekender</w>\": 36547,\n  \"weekends</w>\": 14564,\n  \"weekly\": 34652,\n  \"weekly</w>\": 5885,\n  \"weeknd</w>\": 29925,\n  \"weeks</w>\": 2898,\n  \"weeksary</w>\": 24628,\n  \"ween\": 17517,\n  \"ween</w>\": 1599,\n  \"weep</w>\": 39270,\n  \"weeping</w>\": 36629,\n  \"weer</w>\": 32491,\n  \"weet</w>\": 17742,\n  \"weets</w>\": 13454,\n  \"wef</w>\": 23313,\n  \"weg\": 47867,\n  \"weg</w>\": 47561,\n  \"wego\": 44784,\n  \"wego</w>\": 28220,\n  \"weh\": 48458,\n  \"weh</w>\": 40313,\n  \"weho</w>\": 47798,\n  \"wei\": 6958,\n  \"wei</w>\": 20952,\n  \"weibo</w>\": 20613,\n  \"weigh\": 10565,\n  \"weigh</w>\": 17346,\n  \"weighed</w>\": 33210,\n  \"weighing</w>\": 24455,\n  \"weighs</w>\": 20481,\n  \"weight\": 12723,\n  \"weight</w>\": 3868,\n  \"weighted</w>\": 43179,\n  \"weightlifting</w>\": 36164,\n  \"weightloss</w>\": 20359,\n  \"weights</w>\": 21374,\n  \"weil</w>\": 43720,\n  \"weiler</w>\": 42203,\n  \"wein\": 29134,\n  \"wein</w>\": 37684,\n  \"weiner</w>\": 38822,\n  \"weinstein</w>\": 34367,\n  \"weir\": 11299,\n  \"weir</w>\": 25517,\n  \"weird\": 27981,\n  \"weird</w>\": 5613,\n  \"weirdest</w>\": 29482,\n  \"weirdo</w>\": 32476,\n  \"weis\": 26251,\n  \"weiser</w>\": 34833,\n  \"weiss</w>\": 24794,\n  \"wel\": 1267,\n  \"wel</w>\": 8042,\n  \"welch</w>\": 25820,\n  \"welcom\": 11578,\n  \"welcome\": 18318,\n  \"welcome</w>\": 1881,\n  \"welcomed</w>\": 12590,\n  \"welcomes</w>\": 9304,\n  \"welcometo\": 47511,\n  \"welcoming</w>\": 8775,\n  \"weld</w>\": 39776,\n  \"welding</w>\": 24956,\n  \"welfare</w>\": 12129,\n  \"well\": 3277,\n  \"well</w>\": 1123,\n  \"wellbeing</w>\": 14273,\n  \"weller</w>\": 40921,\n  \"welling</w>\": 49165,\n  \"wellington</w>\": 15389,\n  \"wellness\": 40574,\n  \"wellness</w>\": 9904,\n  \"wells\": 42705,\n  \"wells</w>\": 9804,\n  \"welove\": 13573,\n  \"welp</w>\": 28391,\n  \"wels</w>\": 20852,\n  \"welsh\": 19173,\n  \"welsh</w>\": 10977,\n  \"welt</w>\": 38595,\n  \"welter\": 37115,\n  \"welterweight</w>\": 39617,\n  \"wemb\": 15213,\n  \"wembley</w>\": 16579,\n  \"wen\": 6590,\n  \"wen</w>\": 11278,\n  \"wend\": 15166,\n  \"wendell</w>\": 42091,\n  \"wendy\": 31616,\n  \"wendy</w>\": 14074,\n  \"wenger</w>\": 21105,\n  \"went\": 18633,\n  \"went</w>\": 2437,\n  \"wentworth</w>\": 36423,\n  \"wentz</w>\": 39179,\n  \"wer\": 6316,\n  \"wer</w>\": 2980,\n  \"were\": 15461,\n  \"were</w>\": 1365,\n  \"wered</w>\": 6605,\n  \"weren</w>\": 13611,\n  \"werewolf</w>\": 32001,\n  \"werk</w>\": 30176,\n  \"werner</w>\": 29917,\n  \"wers</w>\": 7110,\n  \"wes\": 18620,\n  \"wes</w>\": 14738,\n  \"wesle\": 29606,\n  \"wesley</w>\": 17332,\n  \"wesleyan</w>\": 32509,\n  \"wesome</w>\": 33292,\n  \"wess</w>\": 44431,\n  \"west\": 2973,\n  \"west</w>\": 1593,\n  \"westbound</w>\": 29208,\n  \"westbrook</w>\": 26948,\n  \"westchester</w>\": 36675,\n  \"westcoast</w>\": 44610,\n  \"westend</w>\": 44815,\n  \"wester\": 9846,\n  \"western\": 17079,\n  \"western</w>\": 4463,\n  \"westfield</w>\": 32309,\n  \"westh\": 36798,\n  \"westin</w>\": 43232,\n  \"westlake</w>\": 41535,\n  \"westminster</w>\": 15158,\n  \"weston</w>\": 22771,\n  \"westside</w>\": 33762,\n  \"westwood</w>\": 26371,\n  \"westworld</w>\": 42287,\n  \"wet\": 12406,\n  \"wet</w>\": 6682,\n  \"weta</w>\": 40946,\n  \"wethenorth</w>\": 45281,\n  \"wethepeople</w>\": 48030,\n  \"wether\": 33794,\n  \"wether</w>\": 48405,\n  \"wetland</w>\": 37357,\n  \"wetlands</w>\": 26547,\n  \"wett</w>\": 41971,\n  \"wetter</w>\": 43957,\n  \"wewant\": 39280,\n  \"wewill\": 37241,\n  \"wex\": 17234,\n  \"wexford</w>\": 29876,\n  \"wexmondays</w>\": 49042,\n  \"wey\": 30376,\n  \"wey</w>\": 19781,\n  \"weymouth</w>\": 41433,\n  \"wf\": 14576,\n  \"wf</w>\": 22313,\n  \"wfa\": 44606,\n  \"wfc</w>\": 36431,\n  \"wfp</w>\": 35193,\n  \"wftv</w>\": 47075,\n  \"wg\": 21091,\n  \"wg</w>\": 25857,\n  \"wga</w>\": 32354,\n  \"wgn\": 48828,\n  \"wh\": 573,\n  \"wh</w>\": 13844,\n  \"wha\": 18994,\n  \"wha</w>\": 25884,\n  \"whal\": 38967,\n  \"whale\": 37083,\n  \"whale</w>\": 11650,\n  \"whales</w>\": 17722,\n  \"wham\": 42506,\n  \"whar\": 15517,\n  \"wharf</w>\": 22452,\n  \"wharton</w>\": 43320,\n  \"what\": 4268,\n  \"what</w>\": 768,\n  \"whatcha</w>\": 37160,\n  \"whate\": 6695,\n  \"whatever</w>\": 6743,\n  \"whati\": 23500,\n  \"whats\": 9263,\n  \"whats</w>\": 13084,\n  \"whatsapp</w>\": 10119,\n  \"whatsoever</w>\": 39928,\n  \"whatson\": 35632,\n  \"whatyou\": 30508,\n  \"whe\": 2009,\n  \"whead</w>\": 34583,\n  \"wheat\": 20505,\n  \"wheat</w>\": 10303,\n  \"wheaton</w>\": 46933,\n  \"wheel\": 7360,\n  \"wheel</w>\": 6744,\n  \"wheelchair</w>\": 17713,\n  \"wheeler</w>\": 18405,\n  \"wheeling</w>\": 34839,\n  \"wheels</w>\": 8025,\n  \"whel\": 9792,\n  \"whelan</w>\": 40715,\n  \"when\": 8753,\n  \"when</w>\": 827,\n  \"whenever</w>\": 10500,\n  \"where\": 7052,\n  \"where</w>\": 1234,\n  \"whereabouts</w>\": 47808,\n  \"whereas</w>\": 42234,\n  \"wheres\": 46345,\n  \"wherever</w>\": 14103,\n  \"whereyou\": 46837,\n  \"whether</w>\": 5903,\n  \"whew</w>\": 39016,\n  \"whey</w>\": 34556,\n  \"whi\": 4295,\n  \"whi</w>\": 33129,\n  \"which</w>\": 1448,\n  \"whiche\": 48719,\n  \"whichever</w>\": 49138,\n  \"whil\": 8499,\n  \"while</w>\": 1519,\n  \"whilst</w>\": 8596,\n  \"whim\": 27766,\n  \"whimsical</w>\": 42282,\n  \"whip</w>\": 14412,\n  \"whipped</w>\": 22323,\n  \"whipping</w>\": 41567,\n  \"whir\": 20873,\n  \"whirl\": 30962,\n  \"whirlwind</w>\": 47771,\n  \"whis\": 6024,\n  \"whiskey\": 41381,\n  \"whiskey</w>\": 11610,\n  \"whisky\": 37567,\n  \"whisky</w>\": 12599,\n  \"whisp\": 21986,\n  \"whispe\": 30356,\n  \"whisper</w>\": 27616,\n  \"whisperer</w>\": 41368,\n  \"whispering</w>\": 42599,\n  \"whispers</w>\": 29133,\n  \"whist\": 13640,\n  \"whistle\": 23972,\n  \"whistle</w>\": 19746,\n  \"whistleblower</w>\": 40410,\n  \"whistler</w>\": 29633,\n  \"whit\": 4398,\n  \"whit</w>\": 31498,\n  \"whitaker</w>\": 35851,\n  \"whitby</w>\": 30858,\n  \"white\": 4699,\n  \"white</w>\": 1579,\n  \"whiteboard</w>\": 40839,\n  \"whitec\": 24575,\n  \"whitehall</w>\": 42827,\n  \"whitehead</w>\": 43560,\n  \"whitehouse</w>\": 20776,\n  \"whitening</w>\": 35540,\n  \"whitepaper</w>\": 42713,\n  \"whites\": 35886,\n  \"whites</w>\": 18835,\n  \"whitesox</w>\": 28816,\n  \"whitewater</w>\": 49350,\n  \"whitfield</w>\": 48404,\n  \"whitley</w>\": 40564,\n  \"whitman</w>\": 32394,\n  \"whitney\": 43021,\n  \"whitney</w>\": 18048,\n  \"whitt\": 33784,\n  \"whittaker</w>\": 47595,\n  \"whl</w>\": 25801,\n  \"who\": 2969,\n  \"who</w>\": 822,\n  \"whoa</w>\": 16943,\n  \"whoever</w>\": 11137,\n  \"whois\": 41884,\n  \"whole\": 10360,\n  \"whole</w>\": 2954,\n  \"wholefoods</w>\": 42840,\n  \"wholesale</w>\": 18306,\n  \"wholesome</w>\": 35959,\n  \"whom\": 38158,\n  \"whom</w>\": 12873,\n  \"whoo\": 20003,\n  \"whoo</w>\": 49290,\n  \"whoop</w>\": 22060,\n  \"whoops</w>\": 28433,\n  \"whopping</w>\": 34384,\n  \"whore</w>\": 31690,\n  \"whos\": 41460,\n  \"whos</w>\": 27130,\n  \"whose</w>\": 6933,\n  \"whouse</w>\": 45927,\n  \"whs</w>\": 26292,\n  \"wht</w>\": 32470,\n  \"whufc</w>\": 31695,\n  \"whun\": 18272,\n  \"why\": 11040,\n  \"why</w>\": 1182,\n  \"whyte</w>\": 42386,\n  \"wi\": 820,\n  \"wi</w>\": 5585,\n  \"wib</w>\": 45303,\n  \"wic\": 7834,\n  \"wich\": 9759,\n  \"wich</w>\": 5238,\n  \"wichita</w>\": 22566,\n  \"wick\": 6798,\n  \"wick</w>\": 6479,\n  \"wicked\": 32579,\n  \"wicked</w>\": 12825,\n  \"wicker</w>\": 38096,\n  \"wicket</w>\": 19180,\n  \"wickets</w>\": 22110,\n  \"wicklow</w>\": 39039,\n  \"wicz</w>\": 30121,\n  \"wid\": 11886,\n  \"wid</w>\": 20886,\n  \"wide\": 19341,\n  \"wide</w>\": 3184,\n  \"widely</w>\": 16195,\n  \"widening</w>\": 46598,\n  \"wider</w>\": 21263,\n  \"widesp\": 20598,\n  \"widespread</w>\": 21258,\n  \"widget</w>\": 43906,\n  \"wido\": 28068,\n  \"widow</w>\": 19949,\n  \"widows</w>\": 42129,\n  \"width</w>\": 23571,\n  \"wie\": 21378,\n  \"wie</w>\": 9131,\n  \"wielding</w>\": 47272,\n  \"wien</w>\": 38131,\n  \"wiener</w>\": 40567,\n  \"wies\": 42788,\n  \"wif</w>\": 37572,\n  \"wife</w>\": 3607,\n  \"wifey</w>\": 35282,\n  \"wifi</w>\": 11026,\n  \"wig\": 23690,\n  \"wig</w>\": 12216,\n  \"wigan</w>\": 23130,\n  \"wiggins</w>\": 32329,\n  \"wiggle</w>\": 47812,\n  \"wight\": 41278,\n  \"wight</w>\": 15545,\n  \"wigs</w>\": 31207,\n  \"wii</w>\": 8005,\n  \"wiiu</w>\": 40980,\n  \"wiki\": 10373,\n  \"wiki</w>\": 24265,\n  \"wikileaks</w>\": 28731,\n  \"wikipedia</w>\": 15176,\n  \"wil\": 1352,\n  \"wil</w>\": 20581,\n  \"wilbur</w>\": 43069,\n  \"wilcox</w>\": 43231,\n  \"wild\": 2780,\n  \"wild</w>\": 3220,\n  \"wildatlantic\": 35500,\n  \"wildatlanticway</w>\": 35776,\n  \"wildcard</w>\": 37360,\n  \"wildcat\": 49077,\n  \"wildcat</w>\": 25870,\n  \"wildcats</w>\": 15909,\n  \"wilde</w>\": 23498,\n  \"wilder\": 14343,\n  \"wilder</w>\": 23499,\n  \"wilderness</w>\": 16506,\n  \"wildest</w>\": 43028,\n  \"wildfire</w>\": 22788,\n  \"wildfires</w>\": 29184,\n  \"wildflower\": 27628,\n  \"wildflower</w>\": 33181,\n  \"wildflowerhour</w>\": 31302,\n  \"wildflowers</w>\": 29136,\n  \"wildlife\": 13298,\n  \"wildlife</w>\": 5250,\n  \"wildlifephotography</w>\": 32307,\n  \"wildlifewednesday</w>\": 48537,\n  \"wildly</w>\": 35981,\n  \"wildoz</w>\": 40113,\n  \"wiley</w>\": 32747,\n  \"wilhelm</w>\": 39696,\n  \"wilkes</w>\": 39548,\n  \"wilkins</w>\": 36986,\n  \"wilkinson</w>\": 26797,\n  \"will\": 5062,\n  \"will</w>\": 751,\n  \"willam\": 43276,\n  \"willard</w>\": 44920,\n  \"wille\": 48739,\n  \"willem</w>\": 38044,\n  \"willi\": 2256,\n  \"william\": 8420,\n  \"william</w>\": 4705,\n  \"williams\": 38452,\n  \"williams</w>\": 4075,\n  \"williamsburg</w>\": 30683,\n  \"williamson</w>\": 20793,\n  \"willie</w>\": 13907,\n  \"willing\": 34160,\n  \"willing</w>\": 11718,\n  \"willingness</w>\": 40573,\n  \"willis</w>\": 18491,\n  \"willow\": 33887,\n  \"willow</w>\": 15665,\n  \"wills</w>\": 26913,\n  \"willy\": 34502,\n  \"willy</w>\": 19599,\n  \"wilmington</w>\": 28052,\n  \"wilms\": 47879,\n  \"wilshere</w>\": 48359,\n  \"wilson\": 23629,\n  \"wilson</w>\": 5622,\n  \"wilt\": 23394,\n  \"wilt</w>\": 47357,\n  \"wilton</w>\": 46638,\n  \"wiltshire</w>\": 28025,\n  \"wim\": 8662,\n  \"wim</w>\": 27580,\n  \"wimble\": 11752,\n  \"wimbledon</w>\": 12229,\n  \"win\": 831,\n  \"win</w>\": 1225,\n  \"winchester</w>\": 20647,\n  \"wind\": 6812,\n  \"wind</w>\": 3630,\n  \"winder\": 44454,\n  \"winder</w>\": 46245,\n  \"winding</w>\": 22390,\n  \"windmill</w>\": 34084,\n  \"windo\": 3110,\n  \"window\": 26675,\n  \"window</w>\": 4879,\n  \"windows</w>\": 5437,\n  \"winds\": 12668,\n  \"winds</w>\": 7012,\n  \"windshield</w>\": 33002,\n  \"windsor\": 44322,\n  \"windsor</w>\": 12884,\n  \"windy</w>\": 13446,\n  \"wine\": 7375,\n  \"wine</w>\": 2604,\n  \"winelover</w>\": 26357,\n  \"winemaker</w>\": 41588,\n  \"wineoclock</w>\": 43846,\n  \"wineries</w>\": 49349,\n  \"winery</w>\": 15500,\n  \"wines</w>\": 8263,\n  \"winetasting</w>\": 41288,\n  \"winewednesday</w>\": 35447,\n  \"wing\": 8141,\n  \"wing</w>\": 1340,\n  \"winged</w>\": 24993,\n  \"winger</w>\": 22727,\n  \"winget</w>\": 44578,\n  \"wings</w>\": 5178,\n  \"wink\": 34455,\n  \"wink</w>\": 25859,\n  \"winkle</w>\": 36430,\n  \"winn</w>\": 38104,\n  \"winne\": 46273,\n  \"winner\": 32961,\n  \"winner</w>\": 2520,\n  \"winners</w>\": 4320,\n  \"winni\": 13018,\n  \"winnie</w>\": 29022,\n  \"winning\": 42099,\n  \"winning</w>\": 2577,\n  \"winnings</w>\": 46490,\n  \"winnipeg</w>\": 14369,\n  \"winona</w>\": 49202,\n  \"wins\": 46839,\n  \"wins</w>\": 2718,\n  \"winslow</w>\": 39658,\n  \"winston</w>\": 14848,\n  \"winter\": 7340,\n  \"winter</w>\": 2541,\n  \"winters</w>\": 21587,\n  \"wintry</w>\": 39504,\n  \"wip</w>\": 10447,\n  \"wipe</w>\": 26761,\n  \"wiped</w>\": 31822,\n  \"wipes</w>\": 33463,\n  \"wir\": 16849,\n  \"wir</w>\": 44838,\n  \"wire\": 7558,\n  \"wire</w>\": 7794,\n  \"wired</w>\": 18935,\n  \"wireless</w>\": 9103,\n  \"wires</w>\": 24311,\n  \"wiring</w>\": 36434,\n  \"wirral</w>\": 34675,\n  \"wis\": 3392,\n  \"wis</w>\": 20405,\n  \"wiscon\": 9857,\n  \"wisconsin</w>\": 10265,\n  \"wisdom\": 42474,\n  \"wisdom</w>\": 5425,\n  \"wise\": 19116,\n  \"wise</w>\": 5558,\n  \"wisely</w>\": 26173,\n  \"wiser</w>\": 44859,\n  \"wish\": 11328,\n  \"wish</w>\": 2412,\n  \"wished</w>\": 25883,\n  \"wishes</w>\": 6045,\n  \"wishing</w>\": 5307,\n  \"wishlist</w>\": 31969,\n  \"wit\": 584,\n  \"wit</w>\": 8531,\n  \"witch\": 20139,\n  \"witch</w>\": 10083,\n  \"witchcraft</w>\": 35065,\n  \"witcher</w>\": 33684,\n  \"witches</w>\": 21673,\n  \"with\": 1435,\n  \"with</w>\": 593,\n  \"withdra\": 24696,\n  \"withdraw</w>\": 31670,\n  \"withdrawal</w>\": 25765,\n  \"withdrawn</w>\": 46687,\n  \"withdraws</w>\": 48637,\n  \"wither\": 39655,\n  \"witherspoon</w>\": 45409,\n  \"within</w>\": 4154,\n  \"withme</w>\": 44670,\n  \"without\": 32836,\n  \"without</w>\": 2193,\n  \"withstand</w>\": 42236,\n  \"withthe\": 36872,\n  \"withus</w>\": 30572,\n  \"withyou</w>\": 30351,\n  \"witne\": 12096,\n  \"witness</w>\": 8793,\n  \"witnessed</w>\": 20187,\n  \"witnesses</w>\": 22778,\n  \"witnessing</w>\": 33618,\n  \"wits</w>\": 30938,\n  \"witt\": 38194,\n  \"witt</w>\": 17168,\n  \"witter</w>\": 31597,\n  \"witty</w>\": 29970,\n  \"witz\": 44186,\n  \"witz</w>\": 13265,\n  \"wiv</w>\": 48925,\n  \"wives</w>\": 14378,\n  \"wiwx</w>\": 44461,\n  \"wiz\": 7730,\n  \"wiz</w>\": 23178,\n  \"wizar\": 49121,\n  \"wizard\": 30490,\n  \"wizard</w>\": 14295,\n  \"wizards</w>\": 19140,\n  \"wizkid</w>\": 40146,\n  \"wj\": 19739,\n  \"wj</w>\": 35453,\n  \"wk\": 11512,\n  \"wk</w>\": 11528,\n  \"wkend</w>\": 42336,\n  \"wknd</w>\": 20851,\n  \"wks</w>\": 25508,\n  \"wku</w>\": 43377,\n  \"wl\": 13299,\n  \"wl</w>\": 9613,\n  \"wm\": 20268,\n  \"wm</w>\": 15790,\n  \"wn\": 1186,\n  \"wn</w>\": 757,\n  \"wnba</w>\": 32358,\n  \"wned</w>\": 8628,\n  \"wns</w>\": 12950,\n  \"wnt</w>\": 22484,\n  \"wny</w>\": 24833,\n  \"wo\": 1613,\n  \"wo</w>\": 11132,\n  \"woah</w>\": 17751,\n  \"wob\": 35984,\n  \"woc</w>\": 39011,\n  \"wod</w>\": 41522,\n  \"woes</w>\": 27860,\n  \"wof\": 45671,\n  \"woj\": 48931,\n  \"wok</w>\": 28912,\n  \"woke</w>\": 9331,\n  \"woken</w>\": 43697,\n  \"woking</w>\": 43931,\n  \"wol\": 2798,\n  \"wol</w>\": 48622,\n  \"wold</w>\": 42399,\n  \"wolf\": 9453,\n  \"wolf</w>\": 5916,\n  \"wolfe</w>\": 24989,\n  \"wolff</w>\": 34369,\n  \"wolfgang</w>\": 34061,\n  \"wolfpack</w>\": 30887,\n  \"wolve\": 45101,\n  \"wolver\": 14334,\n  \"wolverhampton</w>\": 34518,\n  \"wolverine</w>\": 23353,\n  \"wolverines</w>\": 42003,\n  \"wolves</w>\": 9372,\n  \"wom\": 1087,\n  \"womack</w>\": 48980,\n  \"woman\": 15716,\n  \"woman</w>\": 2308,\n  \"womanc\": 35630,\n  \"womancrush\": 37721,\n  \"womancrushwednesday</w>\": 39714,\n  \"womanin\": 30562,\n  \"womaninbiz</w>\": 36482,\n  \"womb</w>\": 37023,\n  \"women\": 3648,\n  \"women</w>\": 1507,\n  \"womenin\": 13062,\n  \"womeninscience</w>\": 41343,\n  \"womeninstem</w>\": 29380,\n  \"womenintech</w>\": 31470,\n  \"womenof\": 48421,\n  \"womens\": 12822,\n  \"womens</w>\": 14408,\n  \"womensart</w>\": 38548,\n  \"womensday</w>\": 13956,\n  \"womenshi\": 22887,\n  \"womenshistorymonth</w>\": 24982,\n  \"womensmarch</w>\": 30102,\n  \"won\": 1528,\n  \"won</w>\": 1749,\n  \"wonder\": 2070,\n  \"wonder</w>\": 3936,\n  \"wondercon</w>\": 46944,\n  \"wondered</w>\": 15550,\n  \"wonderful</w>\": 2582,\n  \"wonderfully</w>\": 23245,\n  \"wondering</w>\": 8360,\n  \"wonderland</w>\": 13874,\n  \"wonders</w>\": 14048,\n  \"wonderwoman</w>\": 31000,\n  \"wondo</w>\": 38402,\n  \"wondr\": 46771,\n  \"wong</w>\": 17876,\n  \"wonka</w>\": 43463,\n  \"wont\": 43174,\n  \"wont</w>\": 15952,\n  \"woo\": 1867,\n  \"woo</w>\": 9322,\n  \"wood\": 3269,\n  \"wood</w>\": 1704,\n  \"woodbridge</w>\": 49074,\n  \"wooden\": 48226,\n  \"wooden</w>\": 9057,\n  \"woodland\": 44314,\n  \"woodland</w>\": 17447,\n  \"woodlands</w>\": 32430,\n  \"woodley</w>\": 40566,\n  \"woodpecker</w>\": 32684,\n  \"woods</w>\": 6267,\n  \"woodson</w>\": 48967,\n  \"woodstock</w>\": 29486,\n  \"woodward</w>\": 27419,\n  \"woodwork</w>\": 47386,\n  \"woodworking</w>\": 29267,\n  \"woody\": 38627,\n  \"woody</w>\": 17144,\n  \"woof\": 34234,\n  \"woof</w>\": 24028,\n  \"woohoo</w>\": 20172,\n  \"wook</w>\": 29192,\n  \"wool\": 9967,\n  \"wool</w>\": 13283,\n  \"woolf</w>\": 43728,\n  \"woolly</w>\": 47722,\n  \"woon</w>\": 33126,\n  \"wooo</w>\": 43217,\n  \"woop</w>\": 31884,\n  \"woot</w>\": 22466,\n  \"wor\": 641,\n  \"worcester\": 22172,\n  \"worcester</w>\": 19580,\n  \"worcestershire</w>\": 38440,\n  \"worcestershirehour</w>\": 43644,\n  \"word\": 8272,\n  \"word</w>\": 2653,\n  \"wordof\": 33500,\n  \"wordoftheday</w>\": 43594,\n  \"wordpress</w>\": 15193,\n  \"words\": 31007,\n  \"words</w>\": 2709,\n  \"wore</w>\": 8953,\n  \"work\": 1636,\n  \"work</w>\": 951,\n  \"workday</w>\": 29735,\n  \"worked</w>\": 5410,\n  \"worker</w>\": 8098,\n  \"workers</w>\": 4795,\n  \"workflow</w>\": 28502,\n  \"workforce</w>\": 14672,\n  \"workin\": 31825,\n  \"workin</w>\": 26323,\n  \"working\": 20806,\n  \"working</w>\": 1699,\n  \"workinprogress</w>\": 46086,\n  \"workout</w>\": 6773,\n  \"workouts</w>\": 22779,\n  \"workplace</w>\": 11959,\n  \"workplaces</w>\": 47383,\n  \"works</w>\": 2322,\n  \"workshop</w>\": 3832,\n  \"workshops</w>\": 12262,\n  \"workspace</w>\": 34470,\n  \"worl\": 5221,\n  \"world\": 2334,\n  \"world</w>\": 1002,\n  \"worlda\": 46627,\n  \"worldbank</w>\": 36759,\n  \"worldbookday</w>\": 31191,\n  \"worldcup\": 42525,\n  \"worldcup</w>\": 8650,\n  \"worlden\": 44668,\n  \"worldenviron\": 47115,\n  \"worldenvironmentday</w>\": 47522,\n  \"worldly</w>\": 36268,\n  \"worldo\": 41698,\n  \"worldof\": 22636,\n  \"worldre\": 33951,\n  \"worlds</w>\": 7691,\n  \"worldseries</w>\": 26695,\n  \"worldtour</w>\": 23202,\n  \"worldwater\": 41176,\n  \"worldwaterday</w>\": 44520,\n  \"worldwide</w>\": 6214,\n  \"worm\": 33709,\n  \"worm</w>\": 10945,\n  \"worms</w>\": 20231,\n  \"worn</w>\": 9037,\n  \"worried</w>\": 11911,\n  \"worries</w>\": 17684,\n  \"worry</w>\": 7534,\n  \"worrying</w>\": 24058,\n  \"worse</w>\": 8236,\n  \"worsen\": 46344,\n  \"worshi\": 31840,\n  \"worship\": 46399,\n  \"worship</w>\": 9023,\n  \"worst</w>\": 5719,\n  \"wort</w>\": 30209,\n  \"worth\": 10671,\n  \"worth</w>\": 2450,\n  \"worthing</w>\": 39929,\n  \"worthit</w>\": 40830,\n  \"worthless</w>\": 44736,\n  \"worths</w>\": 44633,\n  \"worthwhile</w>\": 36295,\n  \"worthy</w>\": 8881,\n  \"worx</w>\": 44973,\n  \"wot</w>\": 24863,\n  \"wou\": 5279,\n  \"would\": 39873,\n  \"would</w>\": 1311,\n  \"wouldn</w>\": 5878,\n  \"wouldnt</w>\": 41595,\n  \"wound</w>\": 19231,\n  \"wounded</w>\": 14859,\n  \"wounds</w>\": 21290,\n  \"woven</w>\": 19830,\n  \"wow\": 22191,\n  \"wow</w>\": 2781,\n  \"woz\": 44558,\n  \"wozni\": 47782,\n  \"wp\": 15378,\n  \"wp</w>\": 13302,\n  \"wpg</w>\": 35048,\n  \"wps</w>\": 33386,\n  \"wq\": 45195,\n  \"wr\": 1189,\n  \"wr</w>\": 8028,\n  \"wra\": 3852,\n  \"wra</w>\": 46004,\n  \"wral</w>\": 49050,\n  \"wrangler</w>\": 30923,\n  \"wrap</w>\": 7094,\n  \"wrapped</w>\": 9875,\n  \"wrapping</w>\": 15223,\n  \"wraps</w>\": 18236,\n  \"wrath</w>\": 29783,\n  \"wray</w>\": 48943,\n  \"wrc</w>\": 16004,\n  \"wre\": 3168,\n  \"wreath</w>\": 23091,\n  \"wrec\": 20879,\n  \"wreck\": 28775,\n  \"wreck</w>\": 15017,\n  \"wrecked</w>\": 32695,\n  \"wreckem</w>\": 45676,\n  \"wrecking</w>\": 36956,\n  \"wrecks</w>\": 45545,\n  \"wren\": 20191,\n  \"wren</w>\": 31970,\n  \"wrench</w>\": 30980,\n  \"wrest\": 4177,\n  \"wrestle\": 17097,\n  \"wrestle</w>\": 28086,\n  \"wrestlemania</w>\": 18849,\n  \"wrestler</w>\": 19790,\n  \"wrestlers</w>\": 25902,\n  \"wrestling\": 31292,\n  \"wrestling</w>\": 5904,\n  \"wrexham</w>\": 34479,\n  \"wri\": 7667,\n  \"wri</w>\": 42007,\n  \"wright\": 28616,\n  \"wright</w>\": 6991,\n  \"wrights</w>\": 43711,\n  \"wrigley</w>\": 33538,\n  \"wrink\": 22201,\n  \"wrinkle</w>\": 46642,\n  \"wrinkles</w>\": 35525,\n  \"wrist\": 19243,\n  \"wrist</w>\": 16139,\n  \"wristband</w>\": 36890,\n  \"wristbands</w>\": 44864,\n  \"writ\": 2902,\n  \"write\": 28874,\n  \"write</w>\": 4946,\n  \"writer\": 27886,\n  \"writer</w>\": 4422,\n  \"writers\": 18742,\n  \"writers</w>\": 7307,\n  \"writerslife</w>\": 25007,\n  \"writes</w>\": 8023,\n  \"writing\": 16053,\n  \"writing</w>\": 2979,\n  \"writingcommunity</w>\": 39178,\n  \"writings</w>\": 36259,\n  \"written</w>\": 5231,\n  \"wro\": 5447,\n  \"wrong\": 18381,\n  \"wrong</w>\": 3669,\n  \"wrongly</w>\": 45642,\n  \"wrote</w>\": 5796,\n  \"wrought</w>\": 48125,\n  \"wrs</w>\": 45280,\n  \"ws\": 6300,\n  \"ws</w>\": 799,\n  \"wsb\": 30681,\n  \"wsbtv</w>\": 38394,\n  \"wsj</w>\": 19764,\n  \"wski</w>\": 12548,\n  \"wsl</w>\": 43706,\n  \"wsoc</w>\": 40253,\n  \"wson</w>\": 33954,\n  \"wsop</w>\": 41231,\n  \"wsu\": 44674,\n  \"wsu</w>\": 32913,\n  \"wsw</w>\": 43285,\n  \"wt\": 15873,\n  \"wt</w>\": 12255,\n  \"wta</w>\": 25984,\n  \"wtc</w>\": 39718,\n  \"wtf</w>\": 6891,\n  \"wth</w>\": 23021,\n  \"wthr\": 45269,\n  \"wti</w>\": 47345,\n  \"wto</w>\": 36406,\n  \"wts</w>\": 32159,\n  \"wu\": 9710,\n  \"wu</w>\": 9837,\n  \"wud</w>\": 43870,\n  \"wul\": 35154,\n  \"wunder\": 36661,\n  \"wur\": 24040,\n  \"wurst</w>\": 44409,\n  \"wusa</w>\": 40021,\n  \"wut</w>\": 28590,\n  \"wv\": 18920,\n  \"wv</w>\": 14743,\n  \"wvu\": 44878,\n  \"wvu</w>\": 25879,\n  \"ww\": 3181,\n  \"ww</w>\": 4491,\n  \"wwc</w>\": 26505,\n  \"wwdc</w>\": 47441,\n  \"wwe\": 12112,\n  \"wwe</w>\": 5290,\n  \"wwen\": 23308,\n  \"wwenetwork</w>\": 37228,\n  \"wwenxt</w>\": 39898,\n  \"wwer\": 32038,\n  \"wwf</w>\": 23332,\n  \"wwfc</w>\": 42681,\n  \"wwg</w>\": 35322,\n  \"wwi</w>\": 20194,\n  \"wwii</w>\": 10261,\n  \"www\": 26074,\n  \"www</w>\": 9667,\n  \"wwwbigbaldhead</w>\": 30761,\n  \"wwww\": 34224,\n  \"wwww</w>\": 25200,\n  \"wwwww</w>\": 48268,\n  \"wwx</w>\": 47431,\n  \"wx\": 18192,\n  \"wx</w>\": 3561,\n  \"wy\": 4665,\n  \"wy</w>\": 7625,\n  \"wyatt</w>\": 21660,\n  \"wyd</w>\": 33113,\n  \"wye\": 48436,\n  \"wye</w>\": 43751,\n  \"wylie</w>\": 49330,\n  \"wyn\": 11802,\n  \"wyn</w>\": 17504,\n  \"wynn</w>\": 36117,\n  \"wynne</w>\": 35951,\n  \"wynonna\": 41456,\n  \"wynonnaearp</w>\": 43755,\n  \"wyoming</w>\": 18693,\n  \"x\": 87,\n  \"x</w>\": 343,\n  \"xa</w>\": 24831,\n  \"xan\": 45530,\n  \"xander</w>\": 45601,\n  \"xavi\": 36342,\n  \"xavier\": 41044,\n  \"xavier</w>\": 18567,\n  \"xb</w>\": 33678,\n  \"xbox\": 18063,\n  \"xbox</w>\": 7748,\n  \"xboxone</w>\": 27410,\n  \"xc</w>\": 12515,\n  \"xchange</w>\": 49132,\n  \"xd</w>\": 6380,\n  \"xe\": 42886,\n  \"xe</w>\": 19183,\n  \"xen\": 15568,\n  \"xer\": 49005,\n  \"xf</w>\": 35274,\n  \"xfactor</w>\": 25211,\n  \"xfinity</w>\": 35107,\n  \"xford</w>\": 34732,\n  \"xh</w>\": 45771,\n  \"xham</w>\": 25284,\n  \"xi\": 2467,\n  \"xi</w>\": 7376,\n  \"xia\": 19854,\n  \"xia</w>\": 20724,\n  \"xian</w>\": 42570,\n  \"xiao</w>\": 49318,\n  \"xiaomi</w>\": 27477,\n  \"xico</w>\": 38469,\n  \"xide</w>\": 17398,\n  \"xie\": 40122,\n  \"xie</w>\": 15976,\n  \"xii</w>\": 36525,\n  \"xiii</w>\": 28199,\n  \"xim\": 11217,\n  \"xin\": 27053,\n  \"xin</w>\": 41517,\n  \"xing</w>\": 14383,\n  \"xion</w>\": 24164,\n  \"xis</w>\": 35793,\n  \"xit</w>\": 5316,\n  \"xiumin</w>\": 36563,\n  \"xiv</w>\": 16125,\n  \"xj</w>\": 42453,\n  \"xl\": 36529,\n  \"xl</w>\": 8833,\n  \"xley</w>\": 38223,\n  \"xm</w>\": 18626,\n  \"xma\": 48805,\n  \"xmas\": 48848,\n  \"xmas</w>\": 6425,\n  \"xmen</w>\": 28708,\n  \"xn</w>\": 25388,\n  \"xo\": 26936,\n  \"xo</w>\": 9000,\n  \"xon\": 29186,\n  \"xon</w>\": 8482,\n  \"xox\": 11531,\n  \"xox</w>\": 34050,\n  \"xoxo</w>\": 13313,\n  \"xp</w>\": 15651,\n  \"xper\": 32200,\n  \"xperia</w>\": 37615,\n  \"xpo</w>\": 44377,\n  \"xpress</w>\": 31809,\n  \"xq</w>\": 40606,\n  \"xr</w>\": 26276,\n  \"xrp</w>\": 26965,\n  \"xs</w>\": 16397,\n  \"xt</w>\": 1052,\n  \"xtina</w>\": 45520,\n  \"xton\": 32666,\n  \"xton</w>\": 10597,\n  \"xtra</w>\": 26969,\n  \"xtre\": 27025,\n  \"xtreme</w>\": 33483,\n  \"xu\": 42063,\n  \"xu</w>\": 37198,\n  \"xv</w>\": 17768,\n  \"xvi</w>\": 44031,\n  \"xx\": 5675,\n  \"xx</w>\": 3553,\n  \"xxl</w>\": 29777,\n  \"xxx\": 33923,\n  \"xxx</w>\": 8352,\n  \"xxxx\": 32035,\n  \"xxxx</w>\": 22819,\n  \"xxxxx</w>\": 44195,\n  \"xy\": 20023,\n  \"xy</w>\": 11443,\n  \"y\": 88,\n  \"y</w>\": 344,\n  \"ya\": 5018,\n  \"ya</w>\": 1430,\n  \"yaa\": 48847,\n  \"yaa</w>\": 34498,\n  \"yaan</w>\": 34680,\n  \"yab\": 27737,\n  \"yach\": 9039,\n  \"yacht\": 43806,\n  \"yacht</w>\": 12859,\n  \"yachts</w>\": 29260,\n  \"yad\": 13276,\n  \"yad</w>\": 40047,\n  \"yadav</w>\": 26650,\n  \"yaf\": 38019,\n  \"yag\": 35081,\n  \"yah\": 16170,\n  \"yah</w>\": 12381,\n  \"yaho\": 37929,\n  \"yahoo\": 38152,\n  \"yahoo</w>\": 16846,\n  \"yak\": 11014,\n  \"yak</w>\": 29074,\n  \"yaki</w>\": 44677,\n  \"yaku\": 29572,\n  \"yakuza</w>\": 42628,\n  \"yal\": 16198,\n  \"yal</w>\": 13418,\n  \"yale\": 39926,\n  \"yale</w>\": 17157,\n  \"yall</w>\": 9210,\n  \"yam\": 6666,\n  \"yam</w>\": 19318,\n  \"yama</w>\": 23512,\n  \"yamaha</w>\": 18854,\n  \"yan\": 3949,\n  \"yan</w>\": 4788,\n  \"yana</w>\": 18698,\n  \"yand\": 38609,\n  \"yang\": 23818,\n  \"yang</w>\": 12605,\n  \"yani</w>\": 26439,\n  \"yankee</w>\": 21554,\n  \"yankees</w>\": 11889,\n  \"yann\": 40246,\n  \"yann</w>\": 38657,\n  \"yao</w>\": 45231,\n  \"yap\": 48700,\n  \"yap</w>\": 34468,\n  \"yar\": 6786,\n  \"yar</w>\": 23071,\n  \"yard\": 20234,\n  \"yard</w>\": 4313,\n  \"yards</w>\": 7550,\n  \"yarmouth</w>\": 45941,\n  \"yarn</w>\": 19702,\n  \"yarra</w>\": 46824,\n  \"yas\": 8168,\n  \"yas</w>\": 20570,\n  \"yash\": 30216,\n  \"yash</w>\": 37836,\n  \"yasi\": 37700,\n  \"yasss</w>\": 23873,\n  \"yat\": 29443,\n  \"yat</w>\": 34965,\n  \"yates</w>\": 27677,\n  \"yatra</w>\": 38932,\n  \"yav\": 41275,\n  \"yaw\": 31989,\n  \"yawn</w>\": 48643,\n  \"yay\": 20614,\n  \"yay</w>\": 6712,\n  \"yaya</w>\": 37608,\n  \"yaz\": 19348,\n  \"yaz</w>\": 42252,\n  \"yb\": 41785,\n  \"yb</w>\": 27615,\n  \"yc</w>\": 11931,\n  \"ycle</w>\": 38089,\n  \"yd\": 29896,\n  \"yd</w>\": 9534,\n  \"yday</w>\": 15899,\n  \"yds</w>\": 24819,\n  \"ye\": 693,\n  \"ye</w>\": 4582,\n  \"yea</w>\": 13687,\n  \"yeah\": 29405,\n  \"yeah</w>\": 3908,\n  \"year\": 5163,\n  \"year</w>\": 935,\n  \"yearbook</w>\": 21636,\n  \"yearling</w>\": 48392,\n  \"yearly</w>\": 24541,\n  \"yearof\": 31944,\n  \"yearofthe\": 47899,\n  \"years\": 30864,\n  \"years</w>\": 1151,\n  \"yearsof\": 14932,\n  \"yearswith\": 45249,\n  \"yeast</w>\": 25819,\n  \"yeats</w>\": 44903,\n  \"yed\": 28137,\n  \"yed</w>\": 3301,\n  \"yee\": 18114,\n  \"yee</w>\": 23108,\n  \"yeezy</w>\": 24901,\n  \"yeg\": 16854,\n  \"yeg</w>\": 11976,\n  \"yegfood</w>\": 48711,\n  \"yeh</w>\": 21331,\n  \"yel\": 3323,\n  \"yel</w>\": 48164,\n  \"yell</w>\": 30824,\n  \"yelled</w>\": 39199,\n  \"yelling</w>\": 26581,\n  \"yellow\": 12059,\n  \"yellow</w>\": 4481,\n  \"yellowstone</w>\": 29241,\n  \"yelp</w>\": 31674,\n  \"yemen\": 29276,\n  \"yemen</w>\": 12513,\n  \"yemeni</w>\": 44656,\n  \"yemi</w>\": 42267,\n  \"yen\": 29602,\n  \"yen</w>\": 17960,\n  \"yeo\": 32292,\n  \"yeo</w>\": 43830,\n  \"yeol</w>\": 15808,\n  \"yeon</w>\": 16602,\n  \"yep</w>\": 10964,\n  \"yer\": 15491,\n  \"yer</w>\": 2371,\n  \"yers</w>\": 3722,\n  \"yes\": 21620,\n  \"yes</w>\": 1958,\n  \"yess\": 42778,\n  \"yess</w>\": 40189,\n  \"yesss</w>\": 36210,\n  \"yessss</w>\": 45620,\n  \"yester\": 1905,\n  \"yesterday</w>\": 1926,\n  \"yesterdays</w>\": 36238,\n  \"yesung</w>\": 38527,\n  \"yet</w>\": 2296,\n  \"yeti</w>\": 34228,\n  \"yev</w>\": 39855,\n  \"yew</w>\": 34660,\n  \"yey</w>\": 45447,\n  \"yg</w>\": 16396,\n  \"ygk</w>\": 44758,\n  \"ygo\": 46166,\n  \"yh</w>\": 41978,\n  \"yi\": 5826,\n  \"yi</w>\": 14762,\n  \"yield</w>\": 16825,\n  \"yields</w>\": 24856,\n  \"yikes</w>\": 25094,\n  \"yin\": 26476,\n  \"yin</w>\": 23543,\n  \"ying\": 42933,\n  \"ying</w>\": 910,\n  \"yixing</w>\": 32120,\n  \"yk</w>\": 30965,\n  \"yl\": 2656,\n  \"yl</w>\": 4045,\n  \"ylan</w>\": 41875,\n  \"ylde</w>\": 42850,\n  \"yle\": 32305,\n  \"yle</w>\": 10770,\n  \"ylene</w>\": 34239,\n  \"yler</w>\": 48081,\n  \"yles</w>\": 42860,\n  \"ylon</w>\": 22375,\n  \"ylor</w>\": 48468,\n  \"ym\": 1786,\n  \"ym</w>\": 19587,\n  \"yman</w>\": 29077,\n  \"ymc\": 47101,\n  \"ymca</w>\": 22369,\n  \"yment</w>\": 8199,\n  \"ymes</w>\": 39968,\n  \"ymi</w>\": 5271,\n  \"ymm</w>\": 37133,\n  \"ymoun\": 41426,\n  \"ymouth</w>\": 36429,\n  \"yn\": 2823,\n  \"yn</w>\": 4100,\n  \"yne</w>\": 18238,\n  \"ynes</w>\": 18020,\n  \"ynn</w>\": 10499,\n  \"ynna</w>\": 48292,\n  \"ynwa</w>\": 27372,\n  \"yo\": 586,\n  \"yo</w>\": 3497,\n  \"yoda</w>\": 31922,\n  \"yof\": 5966,\n  \"yofficial</w>\": 21818,\n  \"yofthe\": 43983,\n  \"yog\": 34985,\n  \"yog</w>\": 36539,\n  \"yoga\": 25872,\n  \"yoga</w>\": 5523,\n  \"yogh\": 32626,\n  \"yoghurt</w>\": 33491,\n  \"yogi</w>\": 22766,\n  \"yogur\": 16137,\n  \"yogurt</w>\": 16819,\n  \"yoh</w>\": 48880,\n  \"yoke</w>\": 41969,\n  \"yoko\": 25929,\n  \"yoko</w>\": 32256,\n  \"yokohama</w>\": 42409,\n  \"yol\": 19387,\n  \"yol</w>\": 35218,\n  \"yolanda</w>\": 43845,\n  \"yolo</w>\": 20905,\n  \"yom\": 34718,\n  \"yom</w>\": 44527,\n  \"yon\": 10147,\n  \"yon</w>\": 7604,\n  \"yong\": 27960,\n  \"yong</w>\": 20887,\n  \"yonge</w>\": 48592,\n  \"yoo\": 25842,\n  \"yoo</w>\": 20775,\n  \"yoon\": 30863,\n  \"yoon</w>\": 22113,\n  \"yoona</w>\": 32736,\n  \"yoongi</w>\": 24037,\n  \"yor\": 2028,\n  \"yor</w>\": 21132,\n  \"york\": 5318,\n  \"york</w>\": 2705,\n  \"yorker</w>\": 23865,\n  \"yorkers</w>\": 41041,\n  \"yorks</w>\": 39093,\n  \"yorkshi\": 43367,\n  \"yorkshire\": 27007,\n  \"yorkshire</w>\": 8633,\n  \"yoruba</w>\": 46083,\n  \"yos</w>\": 35607,\n  \"yosemite</w>\": 25893,\n  \"yoshi\": 22920,\n  \"yoshi</w>\": 25354,\n  \"yot\": 22875,\n  \"yotes</w>\": 46157,\n  \"yotpo</w>\": 26113,\n  \"you\": 1562,\n  \"you</w>\": 592,\n  \"youare\": 33879,\n  \"youcan\": 32498,\n  \"youknow\": 47919,\n  \"youknow</w>\": 41088,\n  \"youn\": 1596,\n  \"young\": 6939,\n  \"young</w>\": 1888,\n  \"younger</w>\": 10414,\n  \"youngest</w>\": 12316,\n  \"youngjae</w>\": 46426,\n  \"youngster</w>\": 35881,\n  \"youngsters</w>\": 28098,\n  \"younow</w>\": 33831,\n  \"your\": 2130,\n  \"your</w>\": 695,\n  \"youre\": 28344,\n  \"youre</w>\": 19695,\n  \"yourown\": 28583,\n  \"yours</w>\": 3834,\n  \"yourself</w>\": 3053,\n  \"yourselves</w>\": 19747,\n  \"youth\": 10743,\n  \"youth</w>\": 3281,\n  \"youthful</w>\": 37480,\n  \"youths</w>\": 23614,\n  \"youts</w>\": 22737,\n  \"youtu\": 13868,\n  \"youtube\": 31258,\n  \"youtube</w>\": 3895,\n  \"youtuber</w>\": 24720,\n  \"youtubers</w>\": 36822,\n  \"youu</w>\": 35055,\n  \"youuu</w>\": 35324,\n  \"youuuu</w>\": 47123,\n  \"yoy</w>\": 41865,\n  \"yp\": 38370,\n  \"yp</w>\": 34734,\n  \"ypg</w>\": 37386,\n  \"yql</w>\": 46122,\n  \"yqr</w>\": 36881,\n  \"yr\": 18395,\n  \"yr</w>\": 4333,\n  \"yrs</w>\": 4822,\n  \"ys\": 1971,\n  \"ys</w>\": 961,\n  \"yser</w>\": 33121,\n  \"ysis</w>\": 4843,\n  \"ysl</w>\": 45681,\n  \"ysm</w>\": 23842,\n  \"yst\": 40528,\n  \"yt\": 36777,\n  \"yt</w>\": 14779,\n  \"ytd</w>\": 47524,\n  \"yte</w>\": 48172,\n  \"yu\": 3371,\n  \"yu</w>\": 8887,\n  \"yuan</w>\": 26236,\n  \"yuck</w>\": 48282,\n  \"yugo\": 48231,\n  \"yuh</w>\": 42547,\n  \"yui</w>\": 47932,\n  \"yuk\": 17037,\n  \"yuk</w>\": 24063,\n  \"yuki</w>\": 34010,\n  \"yukon</w>\": 27094,\n  \"yul\": 39832,\n  \"yum\": 6869,\n  \"yum</w>\": 7259,\n  \"yuma</w>\": 47566,\n  \"yummy</w>\": 7687,\n  \"yun\": 14976,\n  \"yun</w>\": 18288,\n  \"yung\": 44545,\n  \"yung</w>\": 17676,\n  \"yunho</w>\": 39748,\n  \"yup</w>\": 13231,\n  \"yur\": 42533,\n  \"yuri</w>\": 23823,\n  \"yusuf</w>\": 33222,\n  \"yuv\": 36784,\n  \"yves</w>\": 33698,\n  \"yvon\": 23327,\n  \"yvonne</w>\": 32583,\n  \"yvr</w>\": 29058,\n  \"yw\": 33741,\n  \"yx</w>\": 35624,\n  \"yxe</w>\": 34240,\n  \"yy\": 3433,\n  \"yy</w>\": 8321,\n  \"yya</w>\": 37444,\n  \"yyc\": 27542,\n  \"yyc</w>\": 11741,\n  \"yyj</w>\": 26203,\n  \"yyy</w>\": 11514,\n  \"yyyy\": 38749,\n  \"yyyy</w>\": 16955,\n  \"yyyyy</w>\": 26089,\n  \"yyyyyy</w>\": 47055,\n  \"yz\": 37579,\n  \"yz</w>\": 46451,\n  \"yÃ¼\": 48232,\n  \"z\": 89,\n  \"z</w>\": 345,\n  \"za\": 3710,\n  \"za</w>\": 2186,\n  \"zab\": 22982,\n  \"zable</w>\": 37002,\n  \"zac\": 25501,\n  \"zac</w>\": 19159,\n  \"zach\": 13401,\n  \"zach</w>\": 11815,\n  \"zachary</w>\": 32401,\n  \"zack\": 30567,\n  \"zack</w>\": 19120,\n  \"zad\": 47314,\n  \"zad</w>\": 27838,\n  \"zada</w>\": 34889,\n  \"zaf\": 21837,\n  \"zafar</w>\": 46668,\n  \"zag\": 26091,\n  \"zag</w>\": 29346,\n  \"zagre\": 34107,\n  \"zagreb</w>\": 35355,\n  \"zah\": 23258,\n  \"zah</w>\": 43297,\n  \"zaha</w>\": 44408,\n  \"zai\": 44329,\n  \"zai</w>\": 27065,\n  \"zain\": 34400,\n  \"zain</w>\": 45366,\n  \"zak\": 13050,\n  \"zak</w>\": 20738,\n  \"zaki</w>\": 48091,\n  \"zal\": 20552,\n  \"zal</w>\": 33298,\n  \"zam\": 7218,\n  \"zam</w>\": 41578,\n  \"zambia</w>\": 21671,\n  \"zan\": 7284,\n  \"zan</w>\": 17835,\n  \"zana</w>\": 39643,\n  \"zand\": 37712,\n  \"zane</w>\": 34786,\n  \"zani</w>\": 45373,\n  \"zania</w>\": 15059,\n  \"zano</w>\": 27637,\n  \"zanzi\": 47835,\n  \"zap\": 24134,\n  \"zapp\": 33504,\n  \"zappa</w>\": 46592,\n  \"zar\": 5458,\n  \"zar</w>\": 16392,\n  \"zara</w>\": 24454,\n  \"zardari</w>\": 20174,\n  \"zas</w>\": 48261,\n  \"zation</w>\": 3683,\n  \"zawa</w>\": 49281,\n  \"zay\": 7102,\n  \"zayed</w>\": 36726,\n  \"zayn\": 22292,\n  \"zayn</w>\": 10308,\n  \"zaynmalik</w>\": 25278,\n  \"zazzle</w>\": 47857,\n  \"ze\": 2254,\n  \"ze</w>\": 1298,\n  \"zeal\": 44951,\n  \"zealand</w>\": 7618,\n  \"zeb</w>\": 46518,\n  \"zebra\": 47394,\n  \"zebra</w>\": 22548,\n  \"zed\": 21047,\n  \"zed</w>\": 1993,\n  \"zedd</w>\": 45608,\n  \"zee\": 25468,\n  \"zee</w>\": 14080,\n  \"zeiss</w>\": 47460,\n  \"zeit\": 37898,\n  \"zeit</w>\": 37906,\n  \"zek</w>\": 40829,\n  \"zeke</w>\": 47065,\n  \"zel\": 10389,\n  \"zel</w>\": 12027,\n  \"zelda</w>\": 17138,\n  \"zell</w>\": 39526,\n  \"zen\": 8518,\n  \"zen</w>\": 3928,\n  \"zend\": 33478,\n  \"zendaya</w>\": 35956,\n  \"zenith</w>\": 44740,\n  \"zens</w>\": 15298,\n  \"zeph\": 40726,\n  \"zepp\": 22977,\n  \"zeppelin</w>\": 25408,\n  \"zer\": 6118,\n  \"zer</w>\": 3716,\n  \"zero\": 14867,\n  \"zero</w>\": 5848,\n  \"zers</w>\": 9547,\n  \"zes</w>\": 4073,\n  \"zest</w>\": 37709,\n  \"zet\": 34098,\n  \"zeta</w>\": 30954,\n  \"zetta</w>\": 45993,\n  \"zeus</w>\": 32800,\n  \"zey\": 46647,\n  \"zh\": 33389,\n  \"zh</w>\": 41621,\n  \"zhang</w>\": 21127,\n  \"zhen\": 37374,\n  \"zhen</w>\": 33236,\n  \"zhou</w>\": 17384,\n  \"zhu\": 42049,\n  \"zi\": 2651,\n  \"zi</w>\": 5819,\n  \"zia</w>\": 13764,\n  \"zid\": 30235,\n  \"zidane</w>\": 34643,\n  \"zie\": 29316,\n  \"zie</w>\": 8956,\n  \"zieg\": 40157,\n  \"ziegler</w>\": 46812,\n  \"ziel</w>\": 32151,\n  \"zier</w>\": 15399,\n  \"zies</w>\": 38001,\n  \"ziest</w>\": 28159,\n  \"zig\": 15950,\n  \"zig</w>\": 21345,\n  \"ziggy</w>\": 39274,\n  \"zik</w>\": 30125,\n  \"zika</w>\": 28783,\n  \"zil\": 25039,\n  \"zil</w>\": 33190,\n  \"zilla</w>\": 17879,\n  \"zim\": 8112,\n  \"zim</w>\": 22577,\n  \"zimbab\": 12373,\n  \"zimbabwe\": 45668,\n  \"zimbabwe</w>\": 13583,\n  \"zimmer\": 27452,\n  \"zimmer</w>\": 35211,\n  \"zimmerman</w>\": 38231,\n  \"zin\": 14085,\n  \"zin</w>\": 21278,\n  \"zinc</w>\": 27458,\n  \"zind\": 26206,\n  \"zindabad</w>\": 42208,\n  \"zine</w>\": 16100,\n  \"zing\": 25062,\n  \"zing</w>\": 3152,\n  \"zinger</w>\": 42027,\n  \"zio</w>\": 13906,\n  \"zion\": 31763,\n  \"zion</w>\": 20963,\n  \"zione</w>\": 36161,\n  \"zionist</w>\": 33078,\n  \"zip\": 26479,\n  \"zip</w>\": 16083,\n  \"zipper</w>\": 33670,\n  \"zir\": 31892,\n  \"zl</w>\": 39168,\n  \"zlat\": 32489,\n  \"zlatan</w>\": 37877,\n  \"zm</w>\": 43691,\n  \"zman</w>\": 24248,\n  \"zn</w>\": 18004,\n  \"zo\": 4397,\n  \"zo</w>\": 5056,\n  \"zodi\": 22660,\n  \"zodiac</w>\": 27753,\n  \"zoe\": 43114,\n  \"zoe</w>\": 16662,\n  \"zoey</w>\": 39871,\n  \"zog</w>\": 40680,\n  \"zol\": 25939,\n  \"zola</w>\": 46105,\n  \"zom\": 6623,\n  \"zombi\": 29452,\n  \"zombie</w>\": 11819,\n  \"zombies\": 46702,\n  \"zombies</w>\": 16517,\n  \"zon\": 15109,\n  \"zon</w>\": 14618,\n  \"zona</w>\": 42134,\n  \"zone\": 37197,\n  \"zone</w>\": 4442,\n  \"zones</w>\": 17247,\n  \"zoning</w>\": 36790,\n  \"zoo\": 8182,\n  \"zoo</w>\": 7147,\n  \"zoom\": 32671,\n  \"zoom</w>\": 13909,\n  \"zor\": 17605,\n  \"zou\": 38072,\n  \"zr</w>\": 39275,\n  \"zs</w>\": 35248,\n  \"zshq</w>\": 41442,\n  \"zt</w>\": 42629,\n  \"zu\": 4091,\n  \"zu</w>\": 14184,\n  \"zucchini</w>\": 29873,\n  \"zucker\": 26890,\n  \"zuckerberg</w>\": 30066,\n  \"zul\": 31146,\n  \"zulu</w>\": 32821,\n  \"zum</w>\": 35094,\n  \"zuma</w>\": 23326,\n  \"zumba</w>\": 32976,\n  \"zun\": 42440,\n  \"zur\": 17128,\n  \"zurich</w>\": 21288,\n  \"zw</w>\": 42188,\n  \"zx</w>\": 31604,\n  \"zy\": 6615,\n  \"zy</w>\": 2303,\n  \"zyk</w>\": 39112,\n  \"zyme</w>\": 36472,\n  \"zyn\": 45287,\n  \"zz\": 1544,\n  \"zz</w>\": 4943,\n  \"zza</w>\": 14642,\n  \"zzi</w>\": 13974,\n  \"zzie</w>\": 18635,\n  \"zzle</w>\": 7873,\n  \"zzled</w>\": 39075,\n  \"zzo</w>\": 14036,\n  \"zzy\": 21275,\n  \"zzy</w>\": 8353,\n  \"zzz</w>\": 20055,\n  \"zzzz\": 35742,\n  \"zzzz</w>\": 43103,\n  \"{\": 90,\n  \"{</w>\": 346,\n  \"{}</w>\": 39025,\n  \"|\": 91,\n  \"|#</w>\": 31183,\n  \"|</w>\": 347,\n  \"|@</w>\": 41677,\n  \"||</w>\": 7566,\n  \"}\": 92,\n  \"}</w>\": 348,\n  \"~\": 93,\n  \"~!</w>\": 31181,\n  \"~\\\"</w>\": 48442,\n  \"~</w>\": 349,\n  \"~></w>\": 43291,\n  \"~@</w>\": 44247,\n  \"~~\": 11461,\n  \"~~</w>\": 16671,\n  \"~~~</w>\": 32472,\n  \"~~~~\": 28295,\n  \"¡\": 94,\n  \"¡</w>\": 350,\n  \"¡ï¸ı\": 15113,\n  \"¡ï¸ı</w>\": 4174,\n  \"¡ľ\": 43991,\n  \"¢\": 95,\n  \"¢</w>\": 351,\n  \"£\": 96,\n  \"£</w>\": 352,\n  \"£ï¸ı</w>\": 18446,\n  \"¤\": 97,\n  \"¤</w>\": 353,\n  \"¥\": 98,\n  \"¥</w>\": 354,\n  \"¦\": 99,\n  \"¦</w>\": 355,\n  \"¦Ī</w>\": 47615,\n  \"§\": 100,\n  \"§</w>\": 356,\n  \"¨\": 101,\n  \"¨</w>\": 357,\n  \"©\": 102,\n  \"©</w>\": 358,\n  \"ª\": 103,\n  \"ª</w>\": 359,\n  \"«\": 104,\n  \"«</w>\": 360,\n  \"¬\": 105,\n  \"¬</w>\": 361,\n  \"¬ë\": 31736,\n  \"®\": 106,\n  \"®</w>\": 362,\n  \"¯\": 107,\n  \"¯</w>\": 363,\n  \"°\": 108,\n  \"°:</w>\": 21787,\n  \"°</w>\": 364,\n  \"°ï¸ı</w>\": 34777,\n  \"±\": 109,\n  \"±</w>\": 365,\n  \"±ï¸ı</w>\": 41020,\n  \"²\": 110,\n  \"²</w>\": 366,\n  \"³\": 111,\n  \"³</w>\": 367,\n  \"³ï¸ı\": 22195,\n  \"³ï¸ı</w>\": 24706,\n  \"´\": 112,\n  \"´</w>\": 368,\n  \"µ\": 113,\n  \"µ</w>\": 369,\n  \"µï¸ı</w>\": 27605,\n  \"¶\": 114,\n  \"¶</w>\": 370,\n  \"·\": 115,\n  \"·</w>\": 371,\n  \"¸\": 116,\n  \"¸</w>\": 372,\n  \"¸ë\": 19693,\n  \"¹\": 117,\n  \"¹</w>\": 373,\n  \"º\": 118,\n  \"º</w>\": 374,\n  \"»\": 119,\n  \"»</w>\": 375,\n  \"¼\": 120,\n  \"¼</w>\": 376,\n  \"½\": 121,\n  \"½</w>\": 377,\n  \"½ï¸ı</w>\": 31333,\n  \"¾\": 122,\n  \"¾</w>\": 378,\n  \"¿\": 123,\n  \"¿</w>\": 379,\n  \"À\": 124,\n  \"À</w>\": 380,\n  \"Á\": 125,\n  \"Á</w>\": 381,\n  \"Â\": 126,\n  \"Â</w>\": 382,\n  \"Â¡\": 26868,\n  \"Â¡</w>\": 10830,\n  \"Â¡Â¡</w>\": 45505,\n  \"Â¢</w>\": 41359,\n  \"Â£\": 31117,\n  \"Â£</w>\": 1950,\n  \"Â¥</w>\": 20199,\n  \"Â¨\": 19957,\n  \"Â¨Â¨\": 23089,\n  \"Â¨Â¨Â¨Â¨\": 41223,\n  \"Â©\": 31148,\n  \"Â©</w>\": 5811,\n  \"Â«</w>\": 14434,\n  \"Â®\": 30857,\n  \"Â®</w>\": 8436,\n  \"Â¯\": 38682,\n  \"Â¯</w>\": 43593,\n  \"Â¯\\\\\": 44096,\n  \"Â¯\\\\_(</w>\": 45115,\n  \"Â°\": 21305,\n  \"Â°</w>\": 6858,\n  \"Â²</w>\": 41175,\n  \"Â´\": 30560,\n  \"Â´</w>\": 12559,\n  \"Â·</w>\": 14844,\n  \"Âº</w>\": 28059,\n  \"Â»\": 31642,\n  \"Â»</w>\": 7599,\n  \"Â½</w>\": 33613,\n  \"Â¿\": 44559,\n  \"Â¿</w>\": 17133,\n  \"ÂŃ</w>\": 22618,\n  \"Ã\": 127,\n  \"Ã</w>\": 383,\n  \"Ã¡\": 7261,\n  \"Ã¡</w>\": 22229,\n  \"Ã¡n\": 38340,\n  \"Ã¡n</w>\": 21385,\n  \"Ã¢\": 26170,\n  \"Ã£\": 19339,\n  \"Ã£o</w>\": 21141,\n  \"Ã¤\": 10896,\n  \"Ã¤</w>\": 47276,\n  \"Ã¤n\": 42787,\n  \"Ã¥\": 23176,\n  \"Ã¦\": 42495,\n  \"Ã§\": 10067,\n  \"Ã§a</w>\": 22711,\n  \"Ã¨\": 12138,\n  \"Ã¨</w>\": 37761,\n  \"Ã¨re</w>\": 30272,\n  \"Ã¨s</w>\": 41210,\n  \"Ã©\": 3459,\n  \"Ã©</w>\": 4166,\n  \"Ã©al</w>\": 45251,\n  \"Ã©e</w>\": 13489,\n  \"Ã©s</w>\": 20507,\n  \"Ãª\": 27515,\n  \"Ã«\": 29526,\n  \"Ã«</w>\": 40520,\n  \"Ã®\": 48704,\n  \"Ã¯\": 35689,\n  \"Ã±\": 6445,\n  \"Ã±a</w>\": 17753,\n  \"Ã±o</w>\": 16574,\n  \"Ã±os</w>\": 40104,\n  \"Ã³\": 8891,\n  \"Ã³</w>\": 27733,\n  \"Ã³n</w>\": 13926,\n  \"Ã´\": 26815,\n  \"Ã¶\": 7255,\n  \"Ã¶</w>\": 37423,\n  \"Ã¶r\": 31762,\n  \"Ã¸\": 17483,\n  \"Ã¸</w>\": 45598,\n  \"Ãº\": 17963,\n  \"Ãº</w>\": 36019,\n  \"Ã¼\": 6522,\n  \"Ã¼</w>\": 47177,\n  \"Ã¼r\": 26132,\n  \"ÃĹ</w>\": 16165,\n  \"Ãł\": 36149,\n  \"Ãł</w>\": 21259,\n  \"ÃŃ\": 8366,\n  \"ÃŃ</w>\": 23928,\n  \"ÃŃa</w>\": 16609,\n  \"ÃŃn</w>\": 33623,\n  \"Ä\": 128,\n  \"Ä</w>\": 384,\n  \"Ä±\": 18562,\n  \"Ä±</w>\": 41901,\n  \"Äģ\": 23134,\n  \"Äĩ</w>\": 31719,\n  \"Äį\": 45414,\n  \"ÄŁ\": 26540,\n  \"Å\": 129,\n  \"Å</w>\": 385,\n  \"Å¡\": 35621,\n  \"ÅĤ\": 40419,\n  \"Åį\": 41267,\n  \"ÅŁ\": 21254,\n  \"ÅŁ</w>\": 40706,\n  \"Æ\": 130,\n  \"Æ</w>\": 386,\n  \"Ç\": 131,\n  \"Ç</w>\": 387,\n  \"È\": 132,\n  \"È</w>\": 388,\n  \"É\": 133,\n  \"É</w>\": 389,\n  \"Ê\": 134,\n  \"Ê</w>\": 390,\n  \"Ë\": 135,\n  \"Ë</w>\": 391,\n  \"Ì\": 136,\n  \"Ì</w>\": 392,\n  \"Ìĩ</w>\": 16384,\n  \"Í\": 137,\n  \"Í</w>\": 393,\n  \"Î\": 138,\n  \"Î</w>\": 394,\n  \"Ï\": 139,\n  \"Ï</w>\": 395,\n  \"Ïī</w>\": 38065,\n  \"Ð\": 140,\n  \"Ð</w>\": 396,\n  \"Ð°\": 16912,\n  \"Ð°</w>\": 27080,\n  \"Ð°Ð\": 31090,\n  \"Ð²\": 39813,\n  \"Ðµ\": 22176,\n  \"Ð¸\": 16701,\n  \"Ð¸Ð\": 29503,\n  \"Ðº\": 27152,\n  \"Ð»\": 47611,\n  \"Ð¼\": 38018,\n  \"Ð½\": 22705,\n  \"Ð¾\": 13506,\n  \"Ð¾</w>\": 29386,\n  \"Ð¾Ð\": 20978,\n  \"Ð¾Ð´\": 38416,\n  \"Ð¾ÑĤ\": 28599,\n  \"Ð¿\": 26302,\n  \"Ð¿ÑĢÐ¸\": 46321,\n  \"Ð¿ÑĢÐ¸ÑĢÐ¾Ð´Ð°</w>\": 48150,\n  \"Ñ\": 141,\n  \"Ñ</w>\": 397,\n  \"ÑĢ\": 16370,\n  \"ÑĢÐ¸\": 41092,\n  \"ÑĢÐ¾Ð´\": 47039,\n  \"ÑĢÐ¾Ð´Ð°</w>\": 47929,\n  \"Ñģ\": 23669,\n  \"ÑĤ\": 17875,\n  \"Ñĥ\": 39729,\n  \"ÑĦ\": 27993,\n  \"ÑĦÐ¾ÑĤ\": 35155,\n  \"ÑĦÐ¾ÑĤÐ¾</w>\": 38981,\n  \"Ñĭ\": 45001,\n  \"Ò\": 142,\n  \"Ò</w>\": 398,\n  \"Ó\": 143,\n  \"Ó</w>\": 399,\n  \"Ô\": 144,\n  \"Ô</w>\": 400,\n  \"Õ\": 145,\n  \"Õ</w>\": 401,\n  \"Ö\": 146,\n  \"Ö</w>\": 402,\n  \"×\": 147,\n  \"×</w>\": 403,\n  \"Ø\": 148,\n  \"Ø</w>\": 404,\n  \"Ø§\": 6042,\n  \"Ø§</w>\": 22625,\n  \"Ø§Ø\": 13189,\n  \"Ø§Ø±\": 40137,\n  \"Ø§Ù\": 8453,\n  \"Ø§ÙĦ\": 12973,\n  \"Ø§Ùħ\": 47626,\n  \"Ø§ÙĨ\": 42773,\n  \"Ø§ÙĨ</w>\": 33200,\n  \"Ø¨\": 16378,\n  \"Ø¨</w>\": 35330,\n  \"Ø©</w>\": 20915,\n  \"Øª\": 18197,\n  \"Øª</w>\": 44333,\n  \"Ø¬\": 26375,\n  \"Ø®\": 41495,\n  \"Ø¯\": 19872,\n  \"Ø¯</w>\": 35566,\n  \"Ø±\": 10948,\n  \"Ø±</w>\": 24933,\n  \"Ø±ÙĬ\": 43273,\n  \"Ø²\": 36169,\n  \"Ø³\": 17856,\n  \"Ø´\": 28770,\n  \"Øµ\": 27271,\n  \"Ø·\": 32050,\n  \"Ø¹\": 18843,\n  \"Øº\": 48510,\n  \"ØŃ\": 25722,\n  \"Ù\": 149,\n  \"Ù</w>\": 405,\n  \"Ùģ\": 24112,\n  \"ÙĤ\": 27585,\n  \"Ùĥ\": 33499,\n  \"ÙĦ\": 14251,\n  \"ÙĦ</w>\": 37899,\n  \"Ùħ\": 12986,\n  \"Ùħ</w>\": 29945,\n  \"ÙĨ\": 16655,\n  \"ÙĨ</w>\": 25386,\n  \"Ùĩ\": 34274,\n  \"Ùĩ</w>\": 31343,\n  \"ÙĪ\": 12203,\n  \"ÙĪ</w>\": 38310,\n  \"ÙĪØ±\": 48242,\n  \"ÙĬ\": 12046,\n  \"ÙĬ</w>\": 23853,\n  \"Ú\": 150,\n  \"Ú</w>\": 406,\n  \"Ú©\": 26475,\n  \"Û\": 151,\n  \"Û</w>\": 407,\n  \"Ûģ\": 40480,\n  \"ÛĮ\": 21452,\n  \"ÛĮ</w>\": 32703,\n  \"Ü\": 152,\n  \"Ü</w>\": 408,\n  \"Ý\": 153,\n  \"Ý</w>\": 409,\n  \"Þ\": 154,\n  \"Þ</w>\": 410,\n  \"ß\": 155,\n  \"ß</w>\": 411,\n  \"à\": 156,\n  \"à</w>\": 412,\n  \"à¤\": 3124,\n  \"à¤¤</w>\": 27263,\n  \"à¤¦</w>\": 29552,\n  \"à¤¨</w>\": 26090,\n  \"à¤ª</w>\": 44149,\n  \"à¤¬</w>\": 43599,\n  \"à¤®\": 48254,\n  \"à¤®</w>\": 26774,\n  \"à¤¯</w>\": 37299,\n  \"à¤°\": 39136,\n  \"à¤°</w>\": 19052,\n  \"à¤²</w>\": 30881,\n  \"à¤µ</w>\": 39545,\n  \"à¤¶</w>\": 43181,\n  \"à¤¸</w>\": 28505,\n  \"à¤¹</w>\": 29446,\n  \"à¤¾\": 37973,\n  \"à¤¾</w>\": 13343,\n  \"à¤¿</w>\": 26721,\n  \"à¤Ĥ</w>\": 30833,\n  \"à¤ķ</w>\": 22067,\n  \"à¤Ĺ</w>\": 42598,\n  \"à¤ľ</w>\": 39561,\n  \"à¥\": 7410,\n  \"à¥Ģ\": 45791,\n  \"à¥Ģ</w>\": 25751,\n  \"à¥ģ</w>\": 39653,\n  \"à¥ĩ\": 48612,\n  \"à¥ĩ</w>\": 25130,\n  \"à¥ĭ</w>\": 34452,\n  \"à¥į</w>\": 19389,\n  \"à¦\": 11322,\n  \"à¦¾</w>\": 41532,\n  \"à§\": 26339,\n  \"à¨\": 15741,\n  \"à©\": 32086,\n  \"àª\": 22990,\n  \"à«\": 48347,\n  \"à¬\": 32791,\n  \"à®\": 6022,\n  \"à®¤</w>\": 34691,\n  \"à®©</w>\": 43394,\n  \"à®ª</w>\": 47388,\n  \"à®®</w>\": 35463,\n  \"à®°</w>\": 43270,\n  \"à®²</w>\": 47705,\n  \"à®¾</w>\": 32831,\n  \"à®¿</w>\": 27126,\n  \"à®ķ</w>\": 36168,\n  \"à®Ł</w>\": 45263,\n  \"à¯\": 11259,\n  \"à¯ģ</w>\": 33115,\n  \"à¯į</w>\": 16631,\n  \"à°\": 12100,\n  \"à±\": 23550,\n  \"à±į</w>\": 46098,\n  \"à²\": 9992,\n  \"à²¿</w>\": 47797,\n  \"à³\": 20745,\n  \"à³į</w>\": 36148,\n  \"à´\": 15418,\n  \"àµ\": 27392,\n  \"àµį</w>\": 45266,\n  \"à¶\": 29881,\n  \"à·\": 30766,\n  \"à¸\": 1777,\n  \"à¸¡\": 26137,\n  \"à¸¡</w>\": 29570,\n  \"à¸¢\": 27241,\n  \"à¸¢</w>\": 33091,\n  \"à¸£\": 32225,\n  \"à¸£</w>\": 27331,\n  \"à¸¥\": 34696,\n  \"à¸¥</w>\": 32746,\n  \"à¸§\": 26990,\n  \"à¸§</w>\": 30245,\n  \"à¸ª\": 37883,\n  \"à¸ª</w>\": 35737,\n  \"à¸«\": 33064,\n  \"à¸°\": 43920,\n  \"à¸°</w>\": 49234,\n  \"à¸±</w>\": 14978,\n  \"à¸²\": 11529,\n  \"à¸²</w>\": 38476,\n  \"à¸²à¸\": 12330,\n  \"à¸´</w>\": 17092,\n  \"à¸µ\": 22421,\n  \"à¸µ</w>\": 20278,\n  \"à¸µà¹Ī</w>\": 31511,\n  \"à¸·</w>\": 47991,\n  \"à¸¸</w>\": 30524,\n  \"à¸¹</w>\": 35273,\n  \"à¸ģ</w>\": 30767,\n  \"à¸ģà¸\": 31474,\n  \"à¸Ħ</w>\": 31757,\n  \"à¸Ħà¸\": 39628,\n  \"à¸ĩ\": 24603,\n  \"à¸ĩ</w>\": 33382,\n  \"à¸Ī\": 47608,\n  \"à¸Ĭ</w>\": 46324,\n  \"à¸Ķ\": 31107,\n  \"à¸Ķ</w>\": 38825,\n  \"à¸ķ\": 40273,\n  \"à¸ķ</w>\": 41108,\n  \"à¸Ĺ</w>\": 36171,\n  \"à¸Ļ\": 17474,\n  \"à¸Ļ</w>\": 17639,\n  \"à¸Ļà¸\": 23121,\n  \"à¸ļ\": 33859,\n  \"à¸ļ</w>\": 39616,\n  \"à¸ŀ</w>\": 48171,\n  \"à¸Ń\": 13398,\n  \"à¸Ń</w>\": 32818,\n  \"à¸Ńà¸\": 14649,\n  \"à¸Ńà¸ĩ\": 46622,\n  \"à¹\": 4484,\n  \"à¹Ģ\": 13729,\n  \"à¹Ģà¸\": 14076,\n  \"à¹ģà¸\": 23916,\n  \"à¹Ĥ\": 33118,\n  \"à¹ĥ\": 40962,\n  \"à¹Ħà¸\": 31718,\n  \"à¹ĩ</w>\": 38699,\n  \"à¹Ī</w>\": 11722,\n  \"à¹ī</w>\": 13123,\n  \"à¹Į</w>\": 28353,\n  \"à¼\": 46186,\n  \"à½\": 39219,\n  \"á\": 157,\n  \"á</w>\": 413,\n  \"á´\": 19036,\n  \"áµ\": 17330,\n  \"áĢ\": 45932,\n  \"áĥ\": 24829,\n  \"áĥ¦</w>\": 32193,\n  \"â\": 158,\n  \"â</w>\": 414,\n  \"â¤\": 25087,\n  \"â¤µï¸ı</w>\": 36026,\n  \"â¬\": 7930,\n  \"â¬ħï¸ı</w>\": 42111,\n  \"â¬Ĩ\": 27718,\n  \"â¬Ĩï¸ı</w>\": 32798,\n  \"â¬ĩ\": 10917,\n  \"â¬ĩ</w>\": 39370,\n  \"â¬ĩï¸ı\": 25621,\n  \"â¬ĩï¸ı</w>\": 13984,\n  \"â¬ĩï¸ıâ¬ĩï¸ı\": 40159,\n  \"âĢ\": 728,\n  \"âĢ¢\": 9485,\n  \"âĢ¢</w>\": 2701,\n  \"âĢ¢âĢ¢\": 15006,\n  \"âĢ¢âĢ¢</w>\": 47575,\n  \"âĢ¢âĢ¢âĢ¢âĢ¢\": 27502,\n  \"âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢\": 48630,\n  \"âĢ¦\": 7095,\n  \"âĢ¦\\\"</w>\": 20215,\n  \"âĢ¦..</w>\": 47779,\n  \"âĢ¦.</w>\": 18615,\n  \"âĢ¦/</w>\": 29842,\n  \"âĢ¦</w>\": 959,\n  \"âĢ¦âĢ¦</w>\": 40066,\n  \"âĢ²</w>\": 32633,\n  \"âĢ³</w>\": 25061,\n  \"âĢ¼\": 6578,\n  \"âĢ¼ï¸ı\": 15622,\n  \"âĢ¼ï¸ı</w>\": 8310,\n  \"âĢ¼ï¸ıâĢ¼ï¸ı</w>\": 33218,\n  \"âĢĭ\": 17086,\n  \"âĢĭ</w>\": 9844,\n  \"âĢį\": 4244,\n  \"âĢįâĻ\": 5177,\n  \"âĢįâĻĢï¸ı\": 18897,\n  \"âĢįâĻĢï¸ı</w>\": 9605,\n  \"âĢįâĻĤ\": 8832,\n  \"âĢįâĻĤï¸ı\": 21779,\n  \"âĢįâĻĤï¸ı</w>\": 10613,\n  \"âĢİ</w>\": 31001,\n  \"âĢĲ</w>\": 34512,\n  \"âĢĵ\": 21070,\n  \"âĢĵ</w>\": 1224,\n  \"âĢĶ\": 6718,\n  \"âĢĶ</w>\": 2005,\n  \"âĢĶ></w>\": 26341,\n  \"âĢĶ@</w>\": 28470,\n  \"âĢĶâĢĶ\": 10037,\n  \"âĢĶâĢĶ</w>\": 44800,\n  \"âĢĶâĢĶâĢĶâĢĶ\": 17797,\n  \"âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ\": 34432,\n  \"âĢķ</w>\": 14236,\n  \"âģ\": 1667,\n  \"âģ£\": 31089,\n  \"âģ£</w>\": 16845,\n  \"âģ¦\": 2773,\n  \"âģ¦</w>\": 34855,\n  \"âģ¦@</w>\": 2859,\n  \"âģ¦âģ¦@</w>\": 27783,\n  \"âģ©\": 20097,\n  \"âģ©,</w>\": 48749,\n  \"âģ©.</w>\": 35777,\n  \"âģ©</w>\": 2918,\n  \"âģīï¸ı</w>\": 46534,\n  \"âģł\": 23881,\n  \"âģł</w>\": 13503,\n  \"âģłâģł</w>\": 33488,\n  \"âĤ\": 5227,\n  \"âĤ¬\": 34919,\n  \"âĤ¬</w>\": 6309,\n  \"âĤ¹</w>\": 21777,\n  \"âĥ\": 2805,\n  \"âĥ£\": 11250,\n  \"âĥ£</w>\": 3076,\n  \"âĥ£@</w>\": 48291,\n  \"âĦ\": 8604,\n  \"âĦ¢\": 29438,\n  \"âĦ¢</w>\": 11675,\n  \"âĦ¹</w>\": 45462,\n  \"âĨ\": 6059,\n  \"âĨĴ</w>\": 7481,\n  \"âĨĵ</w>\": 41603,\n  \"âĩ\": 27228,\n  \"âĪ\": 17788,\n  \"âī\": 22684,\n  \"âīĪ</w>\": 45451,\n  \"âĮ\": 17848,\n  \"âĮļ\": 31301,\n  \"âĮļï¸ı</w>\": 35931,\n  \"âı\": 7960,\n  \"âı©</w>\": 40847,\n  \"âı°</w>\": 12714,\n  \"âı±</w>\": 33149,\n  \"âı³</w>\": 47617,\n  \"âĵ\": 27400,\n  \"âĶ\": 13389,\n  \"âĶĢ\": 45139,\n  \"âĶģ\": 42022,\n  \"âķ\": 17027,\n  \"âķĲ\": 48039,\n  \"âĸ\": 4168,\n  \"âĸª\": 21203,\n  \"âĸª</w>\": 36628,\n  \"âĸªï¸ı</w>\": 24974,\n  \"âĸ«\": 39478,\n  \"âĸ¬\": 33798,\n  \"âĸ¬âĸ¬\": 36975,\n  \"âĸ¶\": 12509,\n  \"âĸ¶</w>\": 21126,\n  \"âĸ¶ï¸ı</w>\": 14442,\n  \"âĸº\": 46061,\n  \"âĸº</w>\": 12086,\n  \"âĸ½\": 45634,\n  \"âĸł</w>\": 36791,\n  \"âĹ\": 9323,\n  \"âĹĨ</w>\": 48961,\n  \"âĹı</w>\": 26999,\n  \"âĺ\": 1741,\n  \"âĺ®</w>\": 45851,\n  \"âĺ¹\": 28811,\n  \"âĺ¹ï¸ı</w>\": 39605,\n  \"âĺº\": 5010,\n  \"âĺº</w>\": 8703,\n  \"âĺºâĺº</w>\": 46051,\n  \"âĺºï¸ı\": 11506,\n  \"âĺºï¸ı</w>\": 7779,\n  \"âĺºï¸ıâĺºï¸ı</w>\": 41315,\n  \"âĺ¼</w>\": 38877,\n  \"âĺĢ\": 32146,\n  \"âĺĢ</w>\": 22242,\n  \"âĺĢï¸ı\": 12817,\n  \"âĺĢï¸ı</w>\": 8219,\n  \"âĺĢï¸ıâĺĢï¸ı\": 44550,\n  \"âĺģ\": 25195,\n  \"âĺģï¸ı</w>\": 35197,\n  \"âĺĥ\": 38972,\n  \"âĺħ\": 9339,\n  \"âĺħ</w>\": 10643,\n  \"âĺħâĺħ\": 12681,\n  \"âĺħâĺħ</w>\": 36644,\n  \"âĺħâĺħâĺħâĺħ\": 34431,\n  \"âĺħâĺħâĺħâĺħ</w>\": 44034,\n  \"âĺħâĺħâĺħâĺħâĺħ</w>\": 45984,\n  \"âĺĨ\": 23941,\n  \"âĺĨ</w>\": 13439,\n  \"âĺİ\": 24045,\n  \"âĺİ</w>\": 45493,\n  \"âĺİï¸ı</w>\": 27219,\n  \"âĺĳ\": 20983,\n  \"âĺĳ</w>\": 42300,\n  \"âĺĳï¸ı</w>\": 22291,\n  \"âĺĶï¸ı</w>\": 31238,\n  \"âĺķ\": 11454,\n  \"âĺķ</w>\": 26561,\n  \"âĺķï¸ı\": 25839,\n  \"âĺķï¸ı</w>\": 15499,\n  \"âĺĺ\": 23483,\n  \"âĺĺï¸ı</w>\": 31454,\n  \"âĺĿ\": 21982,\n  \"âĺĿï¸ı</w>\": 38891,\n  \"âĺŀ</w>\": 31255,\n  \"âĺłï¸ı</w>\": 34672,\n  \"âĻ\": 1548,\n  \"âĻ¡\": 11091,\n  \"âĻ¡</w>\": 6251,\n  \"âĻ¡âĻ¡\": 22360,\n  \"âĻ¡âĻ¡</w>\": 34267,\n  \"âĻ¡âĻ¡âĻ¡</w>\": 36611,\n  \"âĻ¤</w>\": 47435,\n  \"âĻ¥\": 4622,\n  \"âĻ¥</w>\": 3405,\n  \"âĻ¥âĻ¥\": 12975,\n  \"âĻ¥âĻ¥</w>\": 19604,\n  \"âĻ¥âĻ¥âĻ¥</w>\": 23255,\n  \"âĻ¥âĻ¥âĻ¥âĻ¥\": 49020,\n  \"âĻ¥ï¸ı\": 17774,\n  \"âĻ¥ï¸ı</w>\": 10561,\n  \"âĻ¥ï¸ıâĻ¥ï¸ı\": 40309,\n  \"âĻ¦\": 32376,\n  \"âĻ¦</w>\": 47547,\n  \"âĻ©\": 30339,\n  \"âĻ©âĻ«</w>\": 31636,\n  \"âĻª\": 27364,\n  \"âĻª</w>\": 12382,\n  \"âĻ«\": 39217,\n  \"âĻ«</w>\": 10814,\n  \"âĻ¬</w>\": 24753,\n  \"âĻ»\": 39611,\n  \"âĻ»ï¸ı</w>\": 46075,\n  \"âļ\": 2234,\n  \"âļ¡\": 40098,\n  \"âļ¡</w>\": 20712,\n  \"âļ¡ï¸ı\": 19500,\n  \"âļ¡ï¸ı</w>\": 11605,\n  \"âļ¡ï¸ıâļ¡ï¸ı</w>\": 45922,\n  \"âļª\": 11922,\n  \"âļª</w>\": 36373,\n  \"âļªï¸ı\": 22251,\n  \"âļªï¸ı</w>\": 17885,\n  \"âļ«\": 15374,\n  \"âļ«ï¸ı\": 26529,\n  \"âļ«ï¸ı</w>\": 24649,\n  \"âļ½\": 4867,\n  \"âļ½</w>\": 13173,\n  \"âļ½âļ½\": 43259,\n  \"âļ½ï¸ı\": 11342,\n  \"âļ½ï¸ı</w>\": 6768,\n  \"âļ½ï¸ıâļ½ï¸ı\": 30358,\n  \"âļ½ï¸ıâļ½ï¸ı</w>\": 44148,\n  \"âļ¾\": 11314,\n  \"âļ¾</w>\": 34717,\n  \"âļ¾ï¸ı\": 24727,\n  \"âļ¾ï¸ı</w>\": 14858,\n  \"âļĵ\": 23522,\n  \"âļĵï¸ı</w>\": 35299,\n  \"âļĶï¸ı</w>\": 29361,\n  \"âļľ\": 47491,\n  \"âļł</w>\": 39203,\n  \"âļłï¸ı\": 40966,\n  \"âļłï¸ı</w>\": 15596,\n  \"âĽ\": 7956,\n  \"âĽ³ï¸ı</w>\": 29204,\n  \"âĽĦ\": 30668,\n  \"âĽĦï¸ı</w>\": 45465,\n  \"âľ\": 1508,\n  \"âľ¨\": 7181,\n  \"âľ¨</w>\": 3531,\n  \"âľ¨âľ¨\": 35174,\n  \"âľ¨âľ¨</w>\": 21985,\n  \"âľ¨âľ¨âľ¨</w>\": 39424,\n  \"âľĤ\": 38602,\n  \"âľħ\": 29544,\n  \"âľħ</w>\": 5564,\n  \"âľĪ\": 10682,\n  \"âľĪ</w>\": 30712,\n  \"âľĪï¸ı\": 26176,\n  \"âľĪï¸ı</w>\": 13413,\n  \"âľĬ\": 12392,\n  \"âľĬ</w>\": 17819,\n  \"âľĬðŁı½</w>\": 48547,\n  \"âľĬðŁı¾</w>\": 41185,\n  \"âľĭ\": 39383,\n  \"âľĭ</w>\": 30239,\n  \"âľĮ\": 6419,\n  \"âľĮ</w>\": 12656,\n  \"âľĮï¸ı\": 21906,\n  \"âľĮï¸ı</w>\": 12239,\n  \"âľĮðŁı»</w>\": 30538,\n  \"âľĮðŁı¼</w>\": 30588,\n  \"âľį\": 20872,\n  \"âľįï¸ı</w>\": 30888,\n  \"âľı\": 32574,\n  \"âľıï¸ı</w>\": 40724,\n  \"âľĵ</w>\": 36700,\n  \"âľĶ\": 47200,\n  \"âľĶ</w>\": 13749,\n  \"âľĶï¸ı\": 40544,\n  \"âľĶï¸ı</w>\": 9191,\n  \"âľĸï¸ı</w>\": 44133,\n  \"âľĿ\": 42220,\n  \"âĿ\": 1045,\n  \"âĿ£\": 37007,\n  \"âĿ£</w>\": 25623,\n  \"âĿ£ï¸ı</w>\": 25240,\n  \"âĿ¤\": 1266,\n  \"âĿ¤</w>\": 2720,\n  \"âĿ¤âĿ¤\": 9033,\n  \"âĿ¤âĿ¤</w>\": 14058,\n  \"âĿ¤âĿ¤âĿ¤</w>\": 16708,\n  \"âĿ¤âĿ¤âĿ¤âĿ¤\": 37918,\n  \"âĿ¤âĿ¤âĿ¤âĿ¤</w>\": 43970,\n  \"âĿ¤ï¸ı\": 2626,\n  \"âĿ¤ï¸ı#</w>\": 30281,\n  \"âĿ¤ï¸ı.</w>\": 45326,\n  \"âĿ¤ï¸ı</w>\": 1752,\n  \"âĿ¤ï¸ı@</w>\": 31187,\n  \"âĿ¤ï¸ıâĿ¤ï¸ı\": 6713,\n  \"âĿ¤ï¸ıâĿ¤ï¸ı</w>\": 10363,\n  \"âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı</w>\": 12282,\n  \"âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı\": 39167,\n  \"âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı</w>\": 29880,\n  \"âĿ¤ï¸ıðŁĴĻ</w>\": 37380,\n  \"âĿ¤ï¸ıðŁĺį</w>\": 37272,\n  \"âĿ¤ï¸ıðŁĺĺ</w>\": 41800,\n  \"âĿ¤ðŁĺį</w>\": 49120,\n  \"âĿ¥</w>\": 36914,\n  \"âĿĦ\": 8501,\n  \"âĿĦ</w>\": 30494,\n  \"âĿĦï¸ı\": 16834,\n  \"âĿĦï¸ı</w>\": 12402,\n  \"âĿĦï¸ıâĿĦï¸ı\": 41626,\n  \"âĿĮ\": 44485,\n  \"âĿĮ</w>\": 17975,\n  \"âĿĵ</w>\": 29791,\n  \"âĿĹ\": 12868,\n  \"âĿĹ</w>\": 29079,\n  \"âĿĹï¸ı\": 28642,\n  \"âĿĹï¸ı</w>\": 17391,\n  \"âĿĿ</w>\": 46951,\n  \"âŀ\": 3257,\n  \"âŀ¡</w>\": 12854,\n  \"âŀ¡ï¸ı\": 31860,\n  \"âŀ¡ï¸ı</w>\": 4956,\n  \"âŀ¤</w>\": 18651,\n  \"âŀķ</w>\": 46526,\n  \"âŀĸ\": 21327,\n  \"âŀĸ</w>\": 34902,\n  \"âŀĸâŀĸ\": 23316,\n  \"âŀĸâŀĸâŀĸâŀĸ\": 40401,\n  \"âŀľ</w>\": 23775,\n  \"âł\": 5689,\n  \"âłĢ\": 9691,\n  \"âłĢ</w>\": 8621,\n  \"âłĢâłĢ\": 11466,\n  \"âłĢâłĢ</w>\": 39092,\n  \"âłĢâłĢâłĢâłĢ\": 20976,\n  \"âłĢâłĢâłĢâłĢâłĢâłĢâłĢâłĢ\": 46063,\n  \"âŃ\": 5527,\n  \"âŃĲ\": 6410,\n  \"âŃĲ</w>\": 19012,\n  \"âŃĲâŃĲ\": 32663,\n  \"âŃĲï¸ı\": 12427,\n  \"âŃĲï¸ı</w>\": 10251,\n  \"âŃĲï¸ıâŃĲï¸ı\": 18640,\n  \"âŃĲï¸ıâŃĲï¸ıâŃĲï¸ı</w>\": 40746,\n  \"ã\": 159,\n  \"ã</w>\": 415,\n  \"ãĢ\": 4092,\n  \"ãĢģ</w>\": 45262,\n  \"ãĢĤ\": 38060,\n  \"ãĢĤ</w>\": 38000,\n  \"ãĢĬ</w>\": 39920,\n  \"ãĢĭ</w>\": 32898,\n  \"ãĢĮ</w>\": 18116,\n  \"ãĢį</w>\": 19149,\n  \"ãĢİ</w>\": 26947,\n  \"ãĢı</w>\": 30293,\n  \"ãĢĲ</w>\": 12534,\n  \"ãĢĳ</w>\": 12990,\n  \"ãĢľ</w>\": 39581,\n  \"ãģ\": 4813,\n  \"ãģ¦\": 48029,\n  \"ãģ¨\": 34671,\n  \"ãģ¨ç¹ĭãģ\": 47310,\n  \"ãģ¨ç¹ĭãģĮãĤĬãģŁãģĦ</w>\": 48290,\n  \"ãģª\": 29104,\n  \"ãģ®\": 21575,\n  \"ãģ·\": 44130,\n  \"ãģĦ\": 33523,\n  \"ãģĦ</w>\": 38850,\n  \"ãģĨ\": 44235,\n  \"ãģį\": 42184,\n  \"ãĤ\": 3909,\n  \"ãĤ¢\": 26560,\n  \"ãĤ¤\": 19319,\n  \"ãĤ¤ãĥ\": 36294,\n  \"ãĤ«\": 37367,\n  \"ãĤ¯\": 31574,\n  \"ãĤ·\": 37665,\n  \"ãĤ¸\": 32234,\n  \"ãĤ¸ãĥ\": 43491,\n  \"ãĤ¹\": 22694,\n  \"ãĤ¹</w>\": 39220,\n  \"ãĤ¹ãĥ\": 32421,\n  \"ãĤ¿\": 34941,\n  \"ãĤĬãģ\": 40500,\n  \"ãĤĮ</w>\": 45211,\n  \"ãĤŃ\": 47121,\n  \"ãĥ\": 2429,\n  \"ãĥ©\": 23007,\n  \"ãĥª\": 32115,\n  \"ãĥ«\": 33257,\n  \"ãĥ¬\": 32965,\n  \"ãĥ³\": 17671,\n  \"ãĥ³</w>\": 26875,\n  \"ãĥ³ãĤ\": 45105,\n  \"ãĥ³ãĥ\": 25914,\n  \"ãĥ»\": 8415,\n  \"ãĥ»</w>\": 11158,\n  \"ãĥ»ãĥ»\": 13949,\n  \"ãĥ»ãĥ»ãĥ»</w>\": 14234,\n  \"ãĥ¼\": 13457,\n  \"ãĥ¼</w>\": 30391,\n  \"ãĥ¼ãĥ\": 18584,\n  \"ãĥĥ\": 28902,\n  \"ãĥĦ</w>\": 32173,\n  \"ãĥĪ\": 42384,\n  \"ãĥİ</w>\": 39967,\n  \"ãĥķãĤ\": 33371,\n  \"ãĥŀ\": 48924,\n  \"ãĥŃ\": 35827,\n  \"ãħ\": 5947,\n  \"ãħ¤\": 21096,\n  \"ãħ¤ãħ¤\": 22583,\n  \"ãħ¤ãħ¤ãħ¤ãħ¤\": 39329,\n  \"ãħĭ\": 13052,\n  \"ãħĭ</w>\": 25108,\n  \"ãħĭãħĭ\": 16604,\n  \"ãħĭãħĭ</w>\": 42581,\n  \"ãħĭãħĭãħĭ</w>\": 46407,\n  \"ãħĭãħĭãħĭãħĭ\": 39362,\n  \"ãħł\": 16089,\n  \"ãħł</w>\": 25781,\n  \"ãħłãħł\": 22021,\n  \"ãħłãħł</w>\": 34398,\n  \"ãħłãħłãħłãħł\": 47028,\n  \"ä\": 160,\n  \"ä</w>\": 416,\n  \"ä¸\": 19759,\n  \"ä¹\": 41854,\n  \"äº\": 21078,\n  \"äºº\": 36839,\n  \"ä»\": 37743,\n  \"ä½\": 47466,\n  \"å\": 161,\n  \"å</w>\": 417,\n  \"å¤\": 23170,\n  \"å¥\": 29290,\n  \"å®\": 27047,\n  \"å°\": 34720,\n  \"å±\": 46096,\n  \"å¸\": 42021,\n  \"å¹\": 38780,\n  \"åħ\": 34314,\n  \"åĨ\": 27972,\n  \"åĨĻ\": 44653,\n  \"åĪ\": 42748,\n  \"åĭ\": 47505,\n  \"åı\": 34517,\n  \"åĲ\": 41673,\n  \"åĽ\": 39027,\n  \"åľ\": 37746,\n  \"åŃ\": 35751,\n  \"æ\": 162,\n  \"æ</w>\": 418,\n  \"æĸ\": 29032,\n  \"æĹ\": 22265,\n  \"æĹ¥\": 39121,\n  \"æĹ¥</w>\": 37156,\n  \"æĺ\": 42891,\n  \"æĻ\": 48132,\n  \"æľ\": 19277,\n  \"æľ¬\": 44353,\n  \"æĿ\": 27667,\n  \"æĿ±\": 48338,\n  \"ç\": 163,\n  \"ç</w>\": 419,\n  \"ç¥\": 26369,\n  \"ç¥Ń</w>\": 42557,\n  \"çµ\": 37810,\n  \"ç¹\": 43431,\n  \"ç¹ĭãģ\": 45930,\n  \"çĶ\": 20211,\n  \"çĶŁ\": 33375,\n  \"çľ\": 33440,\n  \"çľŁ\": 41570,\n  \"è\": 164,\n  \"è</w>\": 420,\n  \"èª\": 34002,\n  \"èªķ\": 41293,\n  \"é\": 165,\n  \"é</w>\": 421,\n  \"éģ\": 44854,\n  \"éĩ\": 38283,\n  \"ê\": 166,\n  \"ê</w>\": 422,\n  \"ê°\": 21122,\n  \"ê°ĵ\": 41076,\n  \"ê°ĵìĦ¸ë¸Ĳ</w>\": 41689,\n  \"ê°ķ\": 45758,\n  \"ê²\": 35555,\n  \"ê³\": 36216,\n  \"êµ\": 31871,\n  \"ê·\": 42680,\n  \"ê¸\": 32495,\n  \"ê¹\": 24531,\n  \"ê¹Ģ\": 25203,\n  \"ë\": 167,\n  \"ë</w>\": 423,\n  \"ë¦\": 24621,\n  \"ë¦¬\": 47649,\n  \"ë§\": 28024,\n  \"ë§Ī\": 40027,\n  \"ëª\": 36311,\n  \"ë¯\": 19528,\n  \"ë¯¼\": 34442,\n  \"ë¯¼</w>\": 44632,\n  \"ë°\": 15810,\n  \"ë°©\": 23273,\n  \"ë°©íĥ\": 25081,\n  \"ë°©íĥĦ\": 25641,\n  \"ë°©íĥĦìĨĮëħĦëĭ\": 26068,\n  \"ë°©íĥĦìĨĮëħĦëĭ¨</w>\": 27129,\n  \"ë°ķ\": 40988,\n  \"ë²\": 48267,\n  \"ë³\": 44693,\n  \"ë¹\": 24193,\n  \"ëĤ\": 27252,\n  \"ëĤĺ\": 48484,\n  \"ëĭ\": 13094,\n  \"ëĭ¤\": 46680,\n  \"ëĭĪ\": 33708,\n  \"ëį\": 45543,\n  \"ëı\": 31972,\n  \"ëĵ\": 30850,\n  \"ëĿ\": 44317,\n  \"ì\": 168,\n  \"ì</w>\": 424,\n  \"ì£\": 39856,\n  \"ì£¼\": 45161,\n  \"ì¤\": 31153,\n  \"ì§\": 16279,\n  \"ì§Ģ\": 28836,\n  \"ì§Ħ</w>\": 38890,\n  \"ì°\": 40742,\n  \"ì¶\": 42476,\n  \"ì¶ķ\": 46403,\n  \"ì¶ķíķĺ\": 47866,\n  \"ì¹\": 45088,\n  \"ìĤ\": 31061,\n  \"ìĥ\": 30587,\n  \"ìĥĿ\": 47858,\n  \"ìĦ\": 15074,\n  \"ìĦ¸ë\": 29254,\n  \"ìĦ¸ë¸\": 29658,\n  \"ìĦ¸ë¸Ĳ</w>\": 41415,\n  \"ìĨ\": 15115,\n  \"ìĨĮë\": 20515,\n  \"ìĨĮëħ\": 21391,\n  \"ìĨĮëħĦëĭ\": 25887,\n  \"ìĪ\": 32757,\n  \"ìĬ\": 12125,\n  \"ìĬ¤\": 20305,\n  \"ìĬ¤</w>\": 23829,\n  \"ìĭ\": 23924,\n  \"ìķ\": 16071,\n  \"ìķĦ\": 23233,\n  \"ìĸ\": 31625,\n  \"ìĹ\": 13252,\n  \"ìĹĲ\": 37622,\n  \"ìĹĳ\": 31036,\n  \"ìĹĳìĨ\": 42763,\n  \"ìĹĳìĨĮ</w>\": 45606,\n  \"ìĺ\": 21144,\n  \"ìĻ\": 39405,\n  \"ìļ\": 18541,\n  \"ìļ°\": 38415,\n  \"ìļ°</w>\": 49344,\n  \"ìĽ\": 22543,\n  \"ìĽĲ</w>\": 36495,\n  \"ìľ\": 20909,\n  \"ìľł\": 42890,\n  \"ìĿ\": 8276,\n  \"ìĿ´\": 12286,\n  \"ìĿ´</w>\": 34746,\n  \"ìĿ´ì\": 37590,\n  \"ìĿ¼\": 43406,\n  \"ìŀ\": 20849,\n  \"ìł\": 20580,\n  \"ìłķ\": 34725,\n  \"í\": 169,\n  \"í</w>\": 425,\n  \"íģ\": 35641,\n  \"íģ¬</w>\": 45832,\n  \"íĤ\": 43565,\n  \"íĥ\": 15012,\n  \"íĥĢ\": 41126,\n  \"íĥľ\": 37663,\n  \"íĬ\": 23215,\n  \"íĬ¸\": 48974,\n  \"íĬ¸</w>\": 39820,\n  \"íĭ\": 34350,\n  \"íĶ\": 29450,\n  \"íķ\": 15197,\n  \"íķ´</w>\": 35286,\n  \"íķĺ\": 33992,\n  \"íĺ\": 15962,\n  \"íĺ¸</w>\": 39657,\n  \"íĺĦ</w>\": 34645,\n  \"íĻ\": 31882,\n  \"î\": 170,\n  \"î</w>\": 426,\n  \"îĢ\": 36288,\n  \"îĦ\": 35368,\n  \"îĮ\": 41006,\n  \"îĲ\": 16929,\n  \"îĲĴ\": 40100,\n  \"ï\": 171,\n  \"ï</w>\": 427,\n  \"ï¸\": 842,\n  \"ï¸İ</w>\": 24029,\n  \"ï¸ı\": 1392,\n  \"ï¸ı#</w>\": 46997,\n  \"ï¸ı:</w>\": 32604,\n  \"ï¸ı</w>\": 1001,\n  \"ï¸ı@</w>\": 34600,\n  \"ï¸ıâĥ£\": 17394,\n  \"ï¸ıâĥ£-</w>\": 40376,\n  \"ï¸ıâĥ£</w>\": 4603,\n  \"ï¿\": 27850,\n  \"ï¿½\": 47356,\n  \"ï¿½</w>\": 39802,\n  \"ð\": 172,\n  \"ð</w>\": 428,\n  \"ðĿ\": 6874,\n  \"ðĿĲ\": 15889,\n  \"ðĿĳ\": 43794,\n  \"ðĿĴ\": 43387,\n  \"ðĿĵ\": 47110,\n  \"ðĿĹ\": 18865,\n  \"ðĿĺ\": 26109,\n  \"ðĿĻ\": 29415,\n  \"ðŁ\": 558,\n  \"ðŁ¤\": 1793,\n  \"ðŁ¤£\": 9665,\n  \"ðŁ¤£</w>\": 9909,\n  \"ðŁ¤£ðŁ¤£\": 16430,\n  \"ðŁ¤£ðŁ¤£</w>\": 31009,\n  \"ðŁ¤£ðŁ¤£ðŁ¤£</w>\": 32262,\n  \"ðŁ¤¤\": 39550,\n  \"ðŁ¤¤</w>\": 26759,\n  \"ðŁ¤¦\": 17186,\n  \"ðŁ¤§</w>\": 40983,\n  \"ðŁ¤©\": 27351,\n  \"ðŁ¤©</w>\": 16074,\n  \"ðŁ¤ª\": 44230,\n  \"ðŁ¤ª</w>\": 24920,\n  \"ðŁ¤«</w>\": 47671,\n  \"ðŁ¤¯</w>\": 37595,\n  \"ðŁ¤·\": 13185,\n  \"ðŁ¤·ðŁı»âĢįâĻĢï¸ı</w>\": 46770,\n  \"ðŁ¤ĳ</w>\": 34801,\n  \"ðŁ¤ĵ\": 36580,\n  \"ðŁ¤ĵ</w>\": 18928,\n  \"ðŁ¤Ķ\": 12706,\n  \"ðŁ¤Ķ</w>\": 6497,\n  \"ðŁ¤ĶðŁ¤Ķ</w>\": 28490,\n  \"ðŁ¤ĶðŁ¤ĶðŁ¤Ķ</w>\": 43361,\n  \"ðŁ¤ĸ</w>\": 46146,\n  \"ðŁ¤Ĺ\": 16646,\n  \"ðŁ¤Ĺ</w>\": 10465,\n  \"ðŁ¤ĹðŁ¤Ĺ</w>\": 44321,\n  \"ðŁ¤ĺ\": 10623,\n  \"ðŁ¤ĺ</w>\": 17288,\n  \"ðŁ¤ĺðŁı»\": 46449,\n  \"ðŁ¤ĺðŁı»</w>\": 30891,\n  \"ðŁ¤ĺðŁı¼</w>\": 31458,\n  \"ðŁ¤ĺðŁı½</w>\": 49362,\n  \"ðŁ¤Ļ\": 23800,\n  \"ðŁ¤Ļ</w>\": 39101,\n  \"ðŁ¤Ŀ</w>\": 35242,\n  \"ðŁ¤ŀ\": 29463,\n  \"ðŁ¤ŀ</w>\": 38597,\n  \"ðŁ¤Ł\": 48509,\n  \"ðŁ¤ł</w>\": 36737,\n  \"ðŁ¤Ń</w>\": 47289,\n  \"ðŁ¥\": 4156,\n  \"ðŁ¥°\": 29246,\n  \"ðŁ¥°</w>\": 17597,\n  \"ðŁ¥³\": 45823,\n  \"ðŁ¥³</w>\": 28055,\n  \"ðŁ¥º\": 43380,\n  \"ðŁ¥º</w>\": 36858,\n  \"ðŁ¥Ĥ\": 43805,\n  \"ðŁ¥Ĥ</w>\": 25212,\n  \"ðŁ¥ĥ</w>\": 47790,\n  \"ðŁ¥ĩ\": 34372,\n  \"ðŁ¥ĩ</w>\": 20069,\n  \"ðŁ¥Ī</w>\": 35858,\n  \"ðŁ¥ī</w>\": 36782,\n  \"ðŁ¥Ĭ</w>\": 29275,\n  \"ðŁ¦\": 6040,\n  \"ðŁ¦ģ\": 36367,\n  \"ðŁ¦ģ</w>\": 26056,\n  \"ðŁ¦ĥ</w>\": 40184,\n  \"ðŁ¦Ħ</w>\": 37659,\n  \"ðŁ¦ħ</w>\": 28800,\n  \"ðŁ¦Ī</w>\": 48984,\n  \"ðŁ¦ĭ\": 49325,\n  \"ðŁ¦ĭ</w>\": 28985,\n  \"ðŁ§\": 8792,\n  \"ðŁ§¡\": 30996,\n  \"ðŁ§¡</w>\": 24578,\n  \"ðŁ§Ĳ</w>\": 33549,\n  \"ðŁħ\": 22010,\n  \"ðŁĨ\": 9536,\n  \"ðŁĨķ</w>\": 34956,\n  \"ðŁĨĺ</w>\": 39868,\n  \"ðŁĨļ</w>\": 16325,\n  \"ðŁĩ\": 1173,\n  \"ðŁĩ¦\": 12469,\n  \"ðŁĩ¦</w>\": 28565,\n  \"ðŁĩ¦ðŁĩ\": 33196,\n  \"ðŁĩ¦ðŁĩ·</w>\": 41629,\n  \"ðŁĩ¦ðŁĩº</w>\": 25192,\n  \"ðŁĩ§\": 14660,\n  \"ðŁĩ§ðŁĩ\": 37342,\n  \"ðŁĩ§ðŁĩª</w>\": 38794,\n  \"ðŁĩ§ðŁĩ·</w>\": 28182,\n  \"ðŁĩ¨\": 8889,\n  \"ðŁĩ¨ðŁĩ\": 8989,\n  \"ðŁĩ¨ðŁĩ¦\": 34324,\n  \"ðŁĩ¨ðŁĩ¦</w>\": 16364,\n  \"ðŁĩ¨ðŁĩ³</w>\": 36819,\n  \"ðŁĩ¨ðŁĩŃ</w>\": 41119,\n  \"ðŁĩ©\": 15222,\n  \"ðŁĩ©ðŁĩ\": 36350,\n  \"ðŁĩ©ðŁĩª</w>\": 21531,\n  \"ðŁĩª\": 11428,\n  \"ðŁĩª</w>\": 12331,\n  \"ðŁĩªðŁĩ\": 13917,\n  \"ðŁĩªðŁĩ¸</w>\": 22177,\n  \"ðŁĩªðŁĩº</w>\": 34655,\n  \"ðŁĩ«\": 12977,\n  \"ðŁĩ«ðŁĩ·\": 39109,\n  \"ðŁĩ«ðŁĩ·</w>\": 16223,\n  \"ðŁĩ¬\": 8129,\n  \"ðŁĩ¬ðŁĩ\": 8354,\n  \"ðŁĩ¬ðŁĩ§\": 23762,\n  \"ðŁĩ¬ðŁĩ§</w>\": 11559,\n  \"ðŁĩ®\": 8268,\n  \"ðŁĩ®ðŁĩ\": 8347,\n  \"ðŁĩ®ðŁĩª</w>\": 34148,\n  \"ðŁĩ®ðŁĩ³\": 47299,\n  \"ðŁĩ®ðŁĩ³</w>\": 23602,\n  \"ðŁĩ®ðŁĩ¹\": 42034,\n  \"ðŁĩ®ðŁĩ¹</w>\": 17070,\n  \"ðŁĩ¯\": 20090,\n  \"ðŁĩ¯ðŁĩ\": 22924,\n  \"ðŁĩ¯ðŁĩµ</w>\": 26527,\n  \"ðŁĩ°\": 28232,\n  \"ðŁĩ±\": 29533,\n  \"ðŁĩ±ðŁĩ\": 40941,\n  \"ðŁĩ²\": 16411,\n  \"ðŁĩ²ðŁĩ\": 17562,\n  \"ðŁĩ²ðŁĩ½</w>\": 32073,\n  \"ðŁĩ³\": 16645,\n  \"ðŁĩ³ðŁĩ\": 17747,\n  \"ðŁĩ³ðŁĩ±</w>\": 36747,\n  \"ðŁĩµ\": 12127,\n  \"ðŁĩµðŁĩ\": 13608,\n  \"ðŁĩµðŁĩ°</w>\": 37764,\n  \"ðŁĩµðŁĩ¹</w>\": 42621,\n  \"ðŁĩµðŁĩŃ</w>\": 42777,\n  \"ðŁĩ·\": 16026,\n  \"ðŁĩ·</w>\": 9869,\n  \"ðŁĩ·ðŁĩº</w>\": 37902,\n  \"ðŁĩ¸\": 19447,\n  \"ðŁĩ¸ðŁĩ\": 33325,\n  \"ðŁĩ¸ðŁĩª</w>\": 39260,\n  \"ðŁĩ¹\": 21810,\n  \"ðŁĩ¹ðŁĩ\": 36250,\n  \"ðŁĩº\": 4054,\n  \"ðŁĩº</w>\": 17467,\n  \"ðŁĩºðŁĩ\": 4131,\n  \"ðŁĩºðŁĩ¸\": 8907,\n  \"ðŁĩºðŁĩ¸</w>\": 5688,\n  \"ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸\": 18739,\n  \"ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸</w>\": 41411,\n  \"ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸</w>\": 43357,\n  \"ðŁĩ¿\": 25520,\n  \"ðŁĩ¿ðŁĩ¦</w>\": 36982,\n  \"ðŁĩŃ\": 30370,\n  \"ðŁĮ\": 1576,\n  \"ðŁĮ±\": 35318,\n  \"ðŁĮ±</w>\": 20665,\n  \"ðŁĮ²\": 34071,\n  \"ðŁĮ²</w>\": 28154,\n  \"ðŁĮ³\": 44265,\n  \"ðŁĮ³</w>\": 28543,\n  \"ðŁĮ´\": 20643,\n  \"ðŁĮ´</w>\": 15968,\n  \"ðŁĮµ</w>\": 40871,\n  \"ðŁĮ·\": 32328,\n  \"ðŁĮ·</w>\": 24259,\n  \"ðŁĮ¸\": 16314,\n  \"ðŁĮ¸</w>\": 10980,\n  \"ðŁĮ¸ðŁĮ¸\": 46210,\n  \"ðŁĮ¹\": 14990,\n  \"ðŁĮ¹</w>\": 10662,\n  \"ðŁĮ¹ðŁĮ¹\": 37933,\n  \"ðŁĮº\": 27608,\n  \"ðŁĮº</w>\": 19829,\n  \"ðŁĮ»\": 27196,\n  \"ðŁĮ»</w>\": 19772,\n  \"ðŁĮ¼\": 36484,\n  \"ðŁĮ¼</w>\": 26312,\n  \"ðŁĮ¾</w>\": 39796,\n  \"ðŁĮ¿\": 27736,\n  \"ðŁĮ¿</w>\": 18588,\n  \"ðŁĮĢ</w>\": 34348,\n  \"ðŁĮħ</w>\": 27547,\n  \"ðŁĮĪ\": 23038,\n  \"ðŁĮĪ</w>\": 13042,\n  \"ðŁĮĬ\": 20465,\n  \"ðŁĮĬ</w>\": 14302,\n  \"ðŁĮĮ</w>\": 43393,\n  \"ðŁĮį\": 34931,\n  \"ðŁĮį</w>\": 18641,\n  \"ðŁĮİ\": 31125,\n  \"ðŁĮİ</w>\": 16969,\n  \"ðŁĮı</w>\": 31527,\n  \"ðŁĮĲ</w>\": 33071,\n  \"ðŁĮĻ\": 42330,\n  \"ðŁĮĻ</w>\": 23283,\n  \"ðŁĮļ\": 49004,\n  \"ðŁĮļ</w>\": 27877,\n  \"ðŁĮŀ\": 21152,\n  \"ðŁĮŀ</w>\": 12980,\n  \"ðŁĮŁ\": 13196,\n  \"ðŁĮŁ</w>\": 8542,\n  \"ðŁĮŁðŁĮŁ\": 26014,\n  \"ðŁį\": 2011,\n  \"ðŁį¦\": 47375,\n  \"ðŁį¦</w>\": 32032,\n  \"ðŁį©</w>\": 38379,\n  \"ðŁįª</w>\": 38958,\n  \"ðŁį«\": 47994,\n  \"ðŁį«</w>\": 33401,\n  \"ðŁį°\": 43732,\n  \"ðŁį°</w>\": 30051,\n  \"ðŁį³</w>\": 37441,\n  \"ðŁį´\": 41531,\n  \"ðŁį´</w>\": 25338,\n  \"ðŁį·\": 24445,\n  \"ðŁį·</w>\": 18072,\n  \"ðŁį¸\": 43058,\n  \"ðŁį¸</w>\": 31217,\n  \"ðŁį¹</w>\": 35598,\n  \"ðŁįº\": 31081,\n  \"ðŁįº</w>\": 21590,\n  \"ðŁį»\": 22793,\n  \"ðŁį»</w>\": 13167,\n  \"ðŁį¾\": 27294,\n  \"ðŁį¾</w>\": 21656,\n  \"ðŁįĢ\": 22865,\n  \"ðŁįĢ</w>\": 15764,\n  \"ðŁįģ\": 29837,\n  \"ðŁįģ</w>\": 23075,\n  \"ðŁįĤ\": 35015,\n  \"ðŁįĤ</w>\": 25721,\n  \"ðŁįĥ\": 27157,\n  \"ðŁįĥ</w>\": 20147,\n  \"ðŁįĩ</w>\": 48697,\n  \"ðŁįĬ\": 35001,\n  \"ðŁįĬ</w>\": 28036,\n  \"ðŁįĭ</w>\": 39543,\n  \"ðŁįĮ</w>\": 44987,\n  \"ðŁįį</w>\": 48946,\n  \"ðŁįİ</w>\": 32069,\n  \"ðŁįĳ</w>\": 32889,\n  \"ðŁįĴ</w>\": 33160,\n  \"ðŁįĵ\": 44739,\n  \"ðŁįĵ</w>\": 33456,\n  \"ðŁįĶ\": 46415,\n  \"ðŁįĶ</w>\": 36031,\n  \"ðŁįķ\": 31469,\n  \"ðŁįķ</w>\": 23904,\n  \"ðŁįŃ</w>\": 42100,\n  \"ðŁİ\": 1165,\n  \"ðŁİ£</w>\": 43158,\n  \"ðŁİ¤\": 23490,\n  \"ðŁİ¤</w>\": 15690,\n  \"ðŁİ¥\": 22186,\n  \"ðŁİ¥:</w>\": 43640,\n  \"ðŁİ¥</w>\": 13233,\n  \"ðŁİ§\": 31254,\n  \"ðŁİ§</w>\": 14266,\n  \"ðŁİ¨\": 31953,\n  \"ðŁİ¨</w>\": 13461,\n  \"ðŁİ©</w>\": 37701,\n  \"ðŁİ«</w>\": 30331,\n  \"ðŁİ¬\": 36020,\n  \"ðŁİ¬</w>\": 18150,\n  \"ðŁİ®</w>\": 29312,\n  \"ðŁİ¯</w>\": 23114,\n  \"ðŁİµ\": 27435,\n  \"ðŁİµ</w>\": 14946,\n  \"ðŁİ¶\": 11755,\n  \"ðŁİ¶</w>\": 6011,\n  \"ðŁİ¶ðŁİ¶</w>\": 36283,\n  \"ðŁİ¸\": 29135,\n  \"ðŁİ¸</w>\": 22122,\n  \"ðŁİ¹</w>\": 43493,\n  \"ðŁİ¼\": 34949,\n  \"ðŁİ¼</w>\": 23757,\n  \"ðŁİ¾\": 41982,\n  \"ðŁİ¾</w>\": 24222,\n  \"ðŁİĢ\": 34347,\n  \"ðŁİĢ</w>\": 20151,\n  \"ðŁİģ\": 18368,\n  \"ðŁİģ</w>\": 13462,\n  \"ðŁİĤ\": 13026,\n  \"ðŁİĤ</w>\": 10392,\n  \"ðŁİĤðŁİĤ\": 39338,\n  \"ðŁİĥ\": 22622,\n  \"ðŁİĥ</w>\": 16780,\n  \"ðŁİĦ\": 12942,\n  \"ðŁİĦ</w>\": 11267,\n  \"ðŁİħ\": 17685,\n  \"ðŁİħ</w>\": 24276,\n  \"ðŁİĨ</w>\": 39222,\n  \"ðŁİĪ\": 16142,\n  \"ðŁİĪ</w>\": 14448,\n  \"ðŁİĪðŁİī</w>\": 48049,\n  \"ðŁİī\": 4310,\n  \"ðŁİī:</w>\": 17310,\n  \"ðŁİī</w>\": 3986,\n  \"ðŁİīðŁİ\": 11473,\n  \"ðŁİīðŁİĪ\": 40499,\n  \"ðŁİīðŁİĪ</w>\": 34008,\n  \"ðŁİīðŁİī\": 25159,\n  \"ðŁİīðŁİī</w>\": 13450,\n  \"ðŁİīðŁİīðŁİī</w>\": 20828,\n  \"ðŁİīðŁİĬ\": 31662,\n  \"ðŁİīðŁİĬ</w>\": 30781,\n  \"ðŁİĬ\": 22763,\n  \"ðŁİĬ</w>\": 22425,\n  \"ðŁİĬðŁİī</w>\": 48801,\n  \"ðŁİĵ\": 28916,\n  \"ðŁİĵ</w>\": 18744,\n  \"ðŁİĻ\": 29001,\n  \"ðŁİĻ</w>\": 29753,\n  \"ðŁİĻï¸ı</w>\": 44205,\n  \"ðŁİŁ\": 19248,\n  \"ðŁİŁ</w>\": 21107,\n  \"ðŁİŁï¸ı</w>\": 30243,\n  \"ðŁİŃ</w>\": 28856,\n  \"ðŁı\": 1109,\n  \"ðŁı¡</w>\": 27318,\n  \"ðŁı³ï¸ı\": 26844,\n  \"ðŁı³ï¸ıâĢį\": 27093,\n  \"ðŁı³ï¸ıâĢįðŁĮĪ</w>\": 32610,\n  \"ðŁı´\": 39690,\n  \"ðŁı´</w>\": 19704,\n  \"ðŁı»\": 5042,\n  \"ðŁı»</w>\": 3702,\n  \"ðŁı»âĢį\": 46250,\n  \"ðŁı»âĢįâĻĢï¸ı\": 48391,\n  \"ðŁı»âĢįâĻĢï¸ı</w>\": 23595,\n  \"ðŁı»âĢįâĻĤï¸ı</w>\": 30984,\n  \"ðŁı¼\": 6193,\n  \"ðŁı¼</w>\": 4027,\n  \"ðŁı¼âĢįâĻĢï¸ı</w>\": 28955,\n  \"ðŁı½\": 8514,\n  \"ðŁı½</w>\": 6114,\n  \"ðŁı½âĢįâĻĢï¸ı</w>\": 37036,\n  \"ðŁı½âĢįâĻĤï¸ı</w>\": 43157,\n  \"ðŁı¾\": 10230,\n  \"ðŁı¾</w>\": 7778,\n  \"ðŁı¾âĢįâĻĤï¸ı</w>\": 47189,\n  \"ðŁı¿\": 29854,\n  \"ðŁı¿</w>\": 21094,\n  \"ðŁıĢ\": 13708,\n  \"ðŁıĢ</w>\": 8813,\n  \"ðŁıĢðŁıĢ\": 43169,\n  \"ðŁıģ\": 29423,\n  \"ðŁıģ</w>\": 17473,\n  \"ðŁıĥ\": 16820,\n  \"ðŁıĥ</w>\": 32751,\n  \"ðŁıħ</w>\": 25500,\n  \"ðŁıĨ\": 9585,\n  \"ðŁıĨ</w>\": 5596,\n  \"ðŁıĨðŁıĨ\": 18946,\n  \"ðŁıĨðŁıĨ</w>\": 38269,\n  \"ðŁıĨðŁıĨðŁıĨ</w>\": 44484,\n  \"ðŁıĩ\": 45789,\n  \"ðŁıĩ</w>\": 40288,\n  \"ðŁıĪ\": 16144,\n  \"ðŁıĪ</w>\": 10477,\n  \"ðŁıī</w>\": 26020,\n  \"ðŁıĬ\": 33061,\n  \"ðŁıĬ</w>\": 47830,\n  \"ðŁıĮ\": 41116,\n  \"ðŁıı</w>\": 32460,\n  \"ðŁıĲ\": 46334,\n  \"ðŁıĲ</w>\": 29433,\n  \"ðŁıĴ</w>\": 37756,\n  \"ðŁıŁ\": 35914,\n  \"ðŁıŁ</w>\": 26472,\n  \"ðŁıŁï¸ı</w>\": 42627,\n  \"ðŁıł</w>\": 33727,\n  \"ðŁĲ\": 2074,\n  \"ðŁĲ¢</w>\": 37049,\n  \"ðŁĲ£</w>\": 39597,\n  \"ðŁĲ¥</w>\": 42981,\n  \"ðŁĲ¦</w>\": 37260,\n  \"ðŁĲ¬</w>\": 44238,\n  \"ðŁĲ¯\": 34825,\n  \"ðŁĲ¯</w>\": 26111,\n  \"ðŁĲ°\": 35378,\n  \"ðŁĲ°</w>\": 25050,\n  \"ðŁĲ±\": 35710,\n  \"ðŁĲ±</w>\": 22979,\n  \"ðŁĲ´</w>\": 33509,\n  \"ðŁĲ¶\": 14466,\n  \"ðŁĲ¶</w>\": 10631,\n  \"ðŁĲ·</w>\": 38408,\n  \"ðŁĲ¸\": 45597,\n  \"ðŁĲ¸</w>\": 40298,\n  \"ðŁĲº\": 44281,\n  \"ðŁĲº</w>\": 31445,\n  \"ðŁĲ»\": 30750,\n  \"ðŁĲ»</w>\": 25322,\n  \"ðŁĲ¼</w>\": 46234,\n  \"ðŁĲ¾\": 16057,\n  \"ðŁĲ¾</w>\": 11317,\n  \"ðŁĲ¾ðŁĲ¾</w>\": 42202,\n  \"ðŁĲī</w>\": 46908,\n  \"ðŁĲĬ</w>\": 43974,\n  \"ðŁĲį\": 48903,\n  \"ðŁĲį</w>\": 30177,\n  \"ðŁĲİ\": 48281,\n  \"ðŁĲİ</w>\": 32726,\n  \"ðŁĲĲ\": 47735,\n  \"ðŁĲĲ</w>\": 27954,\n  \"ðŁĲĳ</w>\": 49389,\n  \"ðŁĲķ</w>\": 41069,\n  \"ðŁĲĺ</w>\": 38733,\n  \"ðŁĲĿ\": 30619,\n  \"ðŁĲĿ</w>\": 20111,\n  \"ðŁĲŁ\": 42084,\n  \"ðŁĲŁ</w>\": 29989,\n  \"ðŁĲł</w>\": 42725,\n  \"ðŁĳ\": 964,\n  \"ðŁĳ£</w>\": 39755,\n  \"ðŁĳ§\": 48938,\n  \"ðŁĳ¨\": 18966,\n  \"ðŁĳ¨âĢį\": 25023,\n  \"ðŁĳ©\": 18800,\n  \"ðŁĳ©âĢį\": 26304,\n  \"ðŁĳ«\": 47106,\n  \"ðŁĳ«</w>\": 35457,\n  \"ðŁĳ®\": 42686,\n  \"ðŁĳ¯\": 25910,\n  \"ðŁĳ¯</w>\": 20582,\n  \"ðŁĳ¶\": 26187,\n  \"ðŁĳ¶</w>\": 33189,\n  \"ðŁĳ¸\": 26268,\n  \"ðŁĳ¸</w>\": 36645,\n  \"ðŁĳ¹</w>\": 46766,\n  \"ðŁĳ»\": 24625,\n  \"ðŁĳ»</w>\": 16243,\n  \"ðŁĳ¼\": 25270,\n  \"ðŁĳ¼</w>\": 31083,\n  \"ðŁĳ½\": 42677,\n  \"ðŁĳ½</w>\": 26257,\n  \"ðŁĳĢ\": 11524,\n  \"ðŁĳĢ</w>\": 5908,\n  \"ðŁĳĢðŁĳĢ</w>\": 31561,\n  \"ðŁĳģ\": 47796,\n  \"ðŁĳģ</w>\": 45705,\n  \"ðŁĳĦ</w>\": 47445,\n  \"ðŁĳħ\": 31833,\n  \"ðŁĳħ</w>\": 24672,\n  \"ðŁĳĨ\": 42975,\n  \"ðŁĳĨ</w>\": 45194,\n  \"ðŁĳĩ\": 7662,\n  \"ðŁĳĩ</w>\": 7475,\n  \"ðŁĳĩðŁı»\": 45811,\n  \"ðŁĳĩðŁı»</w>\": 32813,\n  \"ðŁĳĩðŁı¼</w>\": 37504,\n  \"ðŁĳĩðŁĳĩ\": 17915,\n  \"ðŁĳĩðŁĳĩ</w>\": 31891,\n  \"ðŁĳĩðŁĳĩðŁĳĩ</w>\": 35627,\n  \"ðŁĳĪ\": 32794,\n  \"ðŁĳĪ</w>\": 20832,\n  \"ðŁĳī\": 9477,\n  \"ðŁĳī</w>\": 3988,\n  \"ðŁĳīðŁı»</w>\": 23481,\n  \"ðŁĳīðŁı¼</w>\": 27534,\n  \"ðŁĳīðŁı½</w>\": 38059,\n  \"ðŁĳīðŁĳī</w>\": 41480,\n  \"ðŁĳĬ\": 8897,\n  \"ðŁĳĬ</w>\": 9704,\n  \"ðŁĳĬðŁı»\": 47393,\n  \"ðŁĳĬðŁı»</w>\": 29152,\n  \"ðŁĳĬðŁı¼\": 49000,\n  \"ðŁĳĬðŁı¼</w>\": 30115,\n  \"ðŁĳĬðŁĳĬ</w>\": 46521,\n  \"ðŁĳĭ\": 19351,\n  \"ðŁĳĭ</w>\": 17686,\n  \"ðŁĳĮ\": 4890,\n  \"ðŁĳĮ</w>\": 4494,\n  \"ðŁĳĮðŁı»\": 31818,\n  \"ðŁĳĮðŁı»</w>\": 18606,\n  \"ðŁĳĮðŁı¼\": 37655,\n  \"ðŁĳĮðŁı¼</w>\": 20031,\n  \"ðŁĳĮðŁı½</w>\": 35834,\n  \"ðŁĳĮðŁĳĮ\": 36139,\n  \"ðŁĳĮðŁĳĮ</w>\": 21435,\n  \"ðŁĳĮðŁĳĮðŁĳĮ</w>\": 40876,\n  \"ðŁĳį\": 4686,\n  \"ðŁĳį</w>\": 4201,\n  \"ðŁĳįðŁı»\": 25803,\n  \"ðŁĳįðŁı»</w>\": 15129,\n  \"ðŁĳįðŁı¼\": 37285,\n  \"ðŁĳįðŁı¼</w>\": 19689,\n  \"ðŁĳįðŁı½</w>\": 43722,\n  \"ðŁĳįðŁĳį\": 33012,\n  \"ðŁĳįðŁĳį</w>\": 18997,\n  \"ðŁĳįðŁĳįðŁĳį</w>\": 37284,\n  \"ðŁĳİ\": 39702,\n  \"ðŁĳİ</w>\": 32568,\n  \"ðŁĳı\": 3802,\n  \"ðŁĳı</w>\": 4829,\n  \"ðŁĳıðŁı»\": 19236,\n  \"ðŁĳıðŁı»</w>\": 17029,\n  \"ðŁĳıðŁı»ðŁĳıðŁı»\": 35254,\n  \"ðŁĳıðŁı¼\": 24496,\n  \"ðŁĳıðŁı¼</w>\": 19979,\n  \"ðŁĳıðŁı¼ðŁĳıðŁı¼</w>\": 46712,\n  \"ðŁĳıðŁı½\": 40796,\n  \"ðŁĳıðŁı½</w>\": 33978,\n  \"ðŁĳıðŁı¾</w>\": 45450,\n  \"ðŁĳıðŁĳı\": 10356,\n  \"ðŁĳıðŁĳı</w>\": 16706,\n  \"ðŁĳıðŁĳıðŁĳı</w>\": 17254,\n  \"ðŁĳĲ</w>\": 40877,\n  \"ðŁĳĳ\": 14955,\n  \"ðŁĳĳ</w>\": 8717,\n  \"ðŁĳĳðŁĳĳ\": 48532,\n  \"ðŁĳķ</w>\": 47865,\n  \"ðŁĳŁ</w>\": 41183,\n  \"ðŁĳł</w>\": 41264,\n  \"ðŁĳŃ\": 34175,\n  \"ðŁĳŃ</w>\": 27943,\n  \"ðŁĴ\": 837,\n  \"ðŁĴ¡</w>\": 24081,\n  \"ðŁĴ£\": 36862,\n  \"ðŁĴ£</w>\": 29006,\n  \"ðŁĴ¤\": 34706,\n  \"ðŁĴ¤</w>\": 25632,\n  \"ðŁĴ¥\": 12209,\n  \"ðŁĴ¥</w>\": 7347,\n  \"ðŁĴ¥ðŁĴ¥\": 27396,\n  \"ðŁĴ¥ðŁĴ¥</w>\": 39246,\n  \"ðŁĴ¥ðŁĴ¥ðŁĴ¥</w>\": 48890,\n  \"ðŁĴ¦\": 21180,\n  \"ðŁĴ¦</w>\": 14060,\n  \"ðŁĴ¦ðŁĴ¦</w>\": 44469,\n  \"ðŁĴ§</w>\": 34095,\n  \"ðŁĴ¨\": 27408,\n  \"ðŁĴ¨</w>\": 17891,\n  \"ðŁĴ©\": 48621,\n  \"ðŁĴ©</w>\": 28847,\n  \"ðŁĴª\": 5475,\n  \"ðŁĴª</w>\": 6440,\n  \"ðŁĴªðŁı»\": 31669,\n  \"ðŁĴªðŁı»</w>\": 21903,\n  \"ðŁĴªðŁı¼\": 32041,\n  \"ðŁĴªðŁı¼</w>\": 20759,\n  \"ðŁĴªðŁı½\": 46380,\n  \"ðŁĴªðŁı½</w>\": 31111,\n  \"ðŁĴªðŁı¾</w>\": 39398,\n  \"ðŁĴªðŁĴª</w>\": 24747,\n  \"ðŁĴªðŁĴªðŁĴª</w>\": 39913,\n  \"ðŁĴ«\": 25770,\n  \"ðŁĴ«</w>\": 12526,\n  \"ðŁĴ¬</w>\": 30947,\n  \"ðŁĴ¯\": 10611,\n  \"ðŁĴ¯</w>\": 7018,\n  \"ðŁĴ¯ðŁĴ¯\": 30234,\n  \"ðŁĴ¯ðŁĴ¯</w>\": 44070,\n  \"ðŁĴ°\": 20454,\n  \"ðŁĴ°</w>\": 14078,\n  \"ðŁĴ°ðŁĴ°\": 41747,\n  \"ðŁĴµ\": 47412,\n  \"ðŁĴµ</w>\": 38041,\n  \"ðŁĴ¸\": 37696,\n  \"ðŁĴ¸</w>\": 25957,\n  \"ðŁĴ»\": 33433,\n  \"ðŁĴ»</w>\": 18135,\n  \"ðŁĴ¿</w>\": 39541,\n  \"ðŁĴĢ\": 14888,\n  \"ðŁĴĢ</w>\": 12158,\n  \"ðŁĴĢðŁĴĢ\": 30884,\n  \"ðŁĴģ\": 13997,\n  \"ðŁĴģ</w>\": 14392,\n  \"ðŁĴĥ\": 9947,\n  \"ðŁĴĥ</w>\": 14333,\n  \"ðŁĴĥðŁı»</w>\": 38624,\n  \"ðŁĴĥðŁĴĥ\": 28041,\n  \"ðŁĴĦ\": 46116,\n  \"ðŁĴĦ</w>\": 34571,\n  \"ðŁĴħ\": 27457,\n  \"ðŁĴħ</w>\": 32414,\n  \"ðŁĴī\": 44316,\n  \"ðŁĴī</w>\": 30503,\n  \"ðŁĴĭ\": 12217,\n  \"ðŁĴĭ</w>\": 7417,\n  \"ðŁĴĭðŁĴĭ</w>\": 29214,\n  \"ðŁĴĮ</w>\": 40817,\n  \"ðŁĴį\": 35850,\n  \"ðŁĴį</w>\": 24898,\n  \"ðŁĴİ\": 25938,\n  \"ðŁĴİ</w>\": 15874,\n  \"ðŁĴĲ\": 27375,\n  \"ðŁĴĲ</w>\": 20554,\n  \"ðŁĴĳ</w>\": 49404,\n  \"ðŁĴĵ\": 20628,\n  \"ðŁĴĵ</w>\": 12568,\n  \"ðŁĴĵðŁĴĵ</w>\": 43505,\n  \"ðŁĴĶ\": 18880,\n  \"ðŁĴĶ</w>\": 10704,\n  \"ðŁĴĶðŁĴĶ\": 44673,\n  \"ðŁĴķ\": 5412,\n  \"ðŁĴķ</w>\": 3082,\n  \"ðŁĴķðŁĴķ\": 23106,\n  \"ðŁĴķðŁĴķ</w>\": 14117,\n  \"ðŁĴķðŁĴķðŁĴķ</w>\": 26772,\n  \"ðŁĴĸ\": 8466,\n  \"ðŁĴĸ</w>\": 5582,\n  \"ðŁĴĸðŁĴĸ\": 19562,\n  \"ðŁĴĸðŁĴĸ</w>\": 30595,\n  \"ðŁĴĸðŁĴĸðŁĴĸ</w>\": 33915,\n  \"ðŁĴĹ\": 10148,\n  \"ðŁĴĹ</w>\": 6690,\n  \"ðŁĴĹðŁĴĹ\": 47158,\n  \"ðŁĴĹðŁĴĹ</w>\": 24064,\n  \"ðŁĴĹðŁĴĹðŁĴĹ</w>\": 36990,\n  \"ðŁĴĺ\": 18223,\n  \"ðŁĴĺ</w>\": 10816,\n  \"ðŁĴĺðŁĴĺ</w>\": 40464,\n  \"ðŁĴĻ\": 5305,\n  \"ðŁĴĻ</w>\": 4074,\n  \"ðŁĴĻðŁĴĻ\": 17833,\n  \"ðŁĴĻðŁĴĻ</w>\": 27101,\n  \"ðŁĴĻðŁĴĻðŁĴĻ</w>\": 30698,\n  \"ðŁĴĻðŁĴĽ\": 46804,\n  \"ðŁĴĻðŁĴĽ</w>\": 26230,\n  \"ðŁĴĻðŁĴľ\": 47931,\n  \"ðŁĴĻðŁĴľ</w>\": 42541,\n  \"ðŁĴļ\": 8102,\n  \"ðŁĴļ</w>\": 6521,\n  \"ðŁĴļðŁĴļ\": 27497,\n  \"ðŁĴļðŁĴļ</w>\": 46209,\n  \"ðŁĴļðŁĴļðŁĴļ</w>\": 46182,\n  \"ðŁĴļðŁĴĽ</w>\": 41232,\n  \"ðŁĴĽ\": 8221,\n  \"ðŁĴĽ</w>\": 6233,\n  \"ðŁĴĽðŁĴĻ</w>\": 36337,\n  \"ðŁĴĽðŁĴļ\": 37994,\n  \"ðŁĴĽðŁĴĽ\": 32420,\n  \"ðŁĴľ\": 6832,\n  \"ðŁĴľ</w>\": 4882,\n  \"ðŁĴľðŁĴľ\": 17280,\n  \"ðŁĴľðŁĴľ</w>\": 28211,\n  \"ðŁĴľðŁĴľðŁĴľ</w>\": 31004,\n  \"ðŁĴĿ\": 36761,\n  \"ðŁĴĿ</w>\": 22002,\n  \"ðŁĴŀ\": 14862,\n  \"ðŁĴŀ</w>\": 8988,\n  \"ðŁĴŀðŁĴŀ</w>\": 36448,\n  \"ðŁĴŁ\": 49394,\n  \"ðŁĴŁ</w>\": 28828,\n  \"ðŁĴŃ</w>\": 33848,\n  \"ðŁĵ\": 1497,\n  \"ðŁĵ¢\": 46560,\n  \"ðŁĵ¢</w>\": 20901,\n  \"ðŁĵ£\": 48841,\n  \"ðŁĵ£</w>\": 21282,\n  \"ðŁĵ°:</w>\": 28952,\n  \"ðŁĵ°</w>\": 14985,\n  \"ðŁĵ±\": 36104,\n  \"ðŁĵ±</w>\": 20824,\n  \"ðŁĵ²</w>\": 19363,\n  \"ðŁĵ·\": 6966,\n  \"ðŁĵ·:</w>\": 8294,\n  \"ðŁĵ·</w>\": 5551,\n  \"ðŁĵ·@</w>\": 40032,\n  \"ðŁĵ¸\": 8401,\n  \"ðŁĵ¸:</w>\": 10379,\n  \"ðŁĵ¸</w>\": 6074,\n  \"ðŁĵ¸@</w>\": 39660,\n  \"ðŁĵ¹</w>\": 49251,\n  \"ðŁĵº\": 21792,\n  \"ðŁĵº:</w>\": 29728,\n  \"ðŁĵº</w>\": 10450,\n  \"ðŁĵ»\": 32711,\n  \"ðŁĵ»</w>\": 15882,\n  \"ðŁĵ½</w>\": 45361,\n  \"ðŁĵħ</w>\": 21277,\n  \"ðŁĵĨ</w>\": 23471,\n  \"ðŁĵĪ</w>\": 23359,\n  \"ðŁĵĬ</w>\": 22244,\n  \"ðŁĵĭ</w>\": 46351,\n  \"ðŁĵĮ</w>\": 22289,\n  \"ðŁĵį\": 25043,\n  \"ðŁĵį:</w>\": 36845,\n  \"ðŁĵį</w>\": 8903,\n  \"ðŁĵĸ\": 49003,\n  \"ðŁĵĸ</w>\": 23043,\n  \"ðŁĵļ\": 25433,\n  \"ðŁĵļ</w>\": 15566,\n  \"ðŁĵĿ\": 31888,\n  \"ðŁĵĿ:</w>\": 48398,\n  \"ðŁĵĿ</w>\": 15853,\n  \"ðŁĵŀ</w>\": 24022,\n  \"ðŁĶ\": 1428,\n  \"ðŁĶ¥\": 3191,\n  \"ðŁĶ¥#</w>\": 44354,\n  \"ðŁĶ¥</w>\": 3016,\n  \"ðŁĶ¥ðŁĶ¥\": 5692,\n  \"ðŁĶ¥ðŁĶ¥</w>\": 11771,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\": 11004,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥\": 23408,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\": 30989,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\": 48401,\n  \"ðŁĶ¥ðŁĶĹ</w>\": 35130,\n  \"ðŁĶª\": 47078,\n  \"ðŁĶª</w>\": 34545,\n  \"ðŁĶ«\": 38116,\n  \"ðŁĶ«</w>\": 20583,\n  \"ðŁĶ¬</w>\": 44227,\n  \"ðŁĶ®</w>\": 38077,\n  \"ðŁĶ´\": 12408,\n  \"ðŁĶ´</w>\": 10854,\n  \"ðŁĶ´âļªï¸ı\": 46879,\n  \"ðŁĶ´âļªï¸ı</w>\": 40055,\n  \"ðŁĶµ\": 17531,\n  \"ðŁĶµ</w>\": 17193,\n  \"ðŁĶµâļªï¸ı</w>\": 42412,\n  \"ðŁĶ¶\": 42880,\n  \"ðŁĶ¶</w>\": 36222,\n  \"ðŁĶ·</w>\": 37740,\n  \"ðŁĶ¸</w>\": 24200,\n  \"ðŁĶ¹</w>\": 19995,\n  \"ðŁĶº</w>\": 45561,\n  \"ðŁĶģ</w>\": 41299,\n  \"ðŁĶĬ\": 32580,\n  \"ðŁĶĬ</w>\": 20502,\n  \"ðŁĶİ</w>\": 44935,\n  \"ðŁĶĳ</w>\": 35127,\n  \"ðŁĶĴ</w>\": 44972,\n  \"ðŁĶĶ</w>\": 45753,\n  \"ðŁĶĹ\": 47475,\n  \"ðŁĶĹ</w>\": 14561,\n  \"ðŁĶĺ</w>\": 38995,\n  \"ðŁĶľ</w>\": 36011,\n  \"ðŁĶĿ\": 44387,\n  \"ðŁĶĿ</w>\": 29506,\n  \"ðŁķ\": 7692,\n  \"ðŁķº\": 33958,\n  \"ðŁķĬ\": 42624,\n  \"ðŁķĬ</w>\": 37760,\n  \"ðŁĸ\": 6269,\n  \"ðŁĸ¤\": 17603,\n  \"ðŁĸ¤</w>\": 10860,\n  \"ðŁĸ¥</w>\": 47990,\n  \"ðŁĹ\": 7045,\n  \"ðŁĹ£\": 33232,\n  \"ðŁĹ£</w>\": 18583,\n  \"ðŁĹ£ï¸ı</w>\": 37476,\n  \"ðŁĹĵ\": 34335,\n  \"ðŁĹĵ</w>\": 28773,\n  \"ðŁĹĵï¸ı</w>\": 39847,\n  \"ðŁĺ\": 668,\n  \"ðŁĺ¡\": 21968,\n  \"ðŁĺ¡</w>\": 17452,\n  \"ðŁĺ¡ðŁĺ¡\": 37223,\n  \"ðŁĺ¢\": 14308,\n  \"ðŁĺ¢</w>\": 9925,\n  \"ðŁĺ¢ðŁĺ¢\": 32923,\n  \"ðŁĺ¢ðŁĺ¢</w>\": 47921,\n  \"ðŁĺ£</w>\": 32718,\n  \"ðŁĺ¤\": 26872,\n  \"ðŁĺ¤</w>\": 20740,\n  \"ðŁĺ¥\": 38383,\n  \"ðŁĺ¥</w>\": 23951,\n  \"ðŁĺ¨</w>\": 38080,\n  \"ðŁĺ©\": 9051,\n  \"ðŁĺ©</w>\": 9494,\n  \"ðŁĺ©ðŁĺ©\": 22820,\n  \"ðŁĺ©ðŁĺ©</w>\": 38031,\n  \"ðŁĺ©ðŁĺ©ðŁĺ©</w>\": 49063,\n  \"ðŁĺª\": 38181,\n  \"ðŁĺª</w>\": 22243,\n  \"ðŁĺ«\": 25141,\n  \"ðŁĺ«</w>\": 22340,\n  \"ðŁĺ¬\": 23704,\n  \"ðŁĺ¬</w>\": 14549,\n  \"ðŁĺ®\": 40163,\n  \"ðŁĺ®</w>\": 21616,\n  \"ðŁĺ¯</w>\": 37858,\n  \"ðŁĺ°</w>\": 34728,\n  \"ðŁĺ±\": 10938,\n  \"ðŁĺ±</w>\": 9055,\n  \"ðŁĺ±ðŁĺ±\": 22061,\n  \"ðŁĺ±ðŁĺ±</w>\": 40767,\n  \"ðŁĺ±ðŁĺ±ðŁĺ±</w>\": 40909,\n  \"ðŁĺ²\": 40460,\n  \"ðŁĺ²</w>\": 24620,\n  \"ðŁĺ³\": 12047,\n  \"ðŁĺ³</w>\": 8223,\n  \"ðŁĺ³ðŁĺ³\": 32592,\n  \"ðŁĺ´\": 23527,\n  \"ðŁĺ´</w>\": 16415,\n  \"ðŁĺ´ðŁĺ´</w>\": 49307,\n  \"ðŁĺµ</w>\": 39368,\n  \"ðŁĺ¶</w>\": 35207,\n  \"ðŁĺ·\": 37943,\n  \"ðŁĺ·</w>\": 25759,\n  \"ðŁĺ¸</w>\": 36912,\n  \"ðŁĺ¹\": 26477,\n  \"ðŁĺ¹</w>\": 26573,\n  \"ðŁĺ¹ðŁĺ¹\": 46287,\n  \"ðŁĺº</w>\": 40613,\n  \"ðŁĺ»\": 15453,\n  \"ðŁĺ»</w>\": 12911,\n  \"ðŁĺ»ðŁĺ»\": 34414,\n  \"ðŁĺ¼</w>\": 44245,\n  \"ðŁĺ½</w>\": 45156,\n  \"ðŁĺĢ\": 12832,\n  \"ðŁĺĢ</w>\": 7334,\n  \"ðŁĺĢðŁĺĢ</w>\": 34503,\n  \"ðŁĺģ\": 6967,\n  \"ðŁĺģ</w>\": 4821,\n  \"ðŁĺģðŁĺģ\": 37900,\n  \"ðŁĺģðŁĺģ</w>\": 19213,\n  \"ðŁĺģðŁĺģðŁĺģ</w>\": 29083,\n  \"ðŁĺĤ\": 1424,\n  \"ðŁĺĤ)</w>\": 42643,\n  \"ðŁĺĤ.</w>\": 42550,\n  \"ðŁĺĤ</w>\": 1558,\n  \"ðŁĺĤâĿ¤ï¸ı</w>\": 36412,\n  \"ðŁĺĤðŁĳĮ</w>\": 42000,\n  \"ðŁĺĤðŁĺĤ\": 2286,\n  \"ðŁĺĤðŁĺĤ</w>\": 4112,\n  \"ðŁĺĤðŁĺĤðŁĺĤ\": 22233,\n  \"ðŁĺĤðŁĺĤðŁĺĤ</w>\": 4887,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ\": 9936,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 11522,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 19295,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 33415,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 48973,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ\": 28504,\n  \"ðŁĺĤðŁĺį</w>\": 43128,\n  \"ðŁĺĤðŁĺŃ\": 28965,\n  \"ðŁĺĤðŁĺŃ</w>\": 25802,\n  \"ðŁĺĥ\": 14079,\n  \"ðŁĺĥ</w>\": 8520,\n  \"ðŁĺĥðŁĺĥ</w>\": 38358,\n  \"ðŁĺĦ\": 12141,\n  \"ðŁĺĦ</w>\": 7624,\n  \"ðŁĺĦðŁĺĦ</w>\": 32312,\n  \"ðŁĺħ\": 15245,\n  \"ðŁĺħ</w>\": 9188,\n  \"ðŁĺħðŁĺħ</w>\": 39078,\n  \"ðŁĺĨ\": 16541,\n  \"ðŁĺĨ</w>\": 10943,\n  \"ðŁĺĨðŁĺĨ</w>\": 39503,\n  \"ðŁĺĩ\": 21694,\n  \"ðŁĺĩ</w>\": 13091,\n  \"ðŁĺĪ\": 14377,\n  \"ðŁĺĪ</w>\": 9756,\n  \"ðŁĺĪðŁĺĪ</w>\": 44473,\n  \"ðŁĺī\": 9740,\n  \"ðŁĺī</w>\": 4955,\n  \"ðŁĺīðŁĺī</w>\": 40430,\n  \"ðŁĺĬ\": 4692,\n  \"ðŁĺĬ</w>\": 3020,\n  \"ðŁĺĬâĿ¤ï¸ı</w>\": 43606,\n  \"ðŁĺĬðŁĺĬ\": 12838,\n  \"ðŁĺĬðŁĺĬ</w>\": 20842,\n  \"ðŁĺĬðŁĺĬðŁĺĬ</w>\": 28685,\n  \"ðŁĺĬðŁĺĬðŁĺĬðŁĺĬ\": 35519,\n  \"ðŁĺĭ\": 12391,\n  \"ðŁĺĭ</w>\": 7203,\n  \"ðŁĺĭðŁĺĭ</w>\": 33304,\n  \"ðŁĺĮ\": 19221,\n  \"ðŁĺĮ</w>\": 12163,\n  \"ðŁĺį\": 1796,\n  \"ðŁĺį#</w>\": 42357,\n  \"ðŁĺį.</w>\": 48579,\n  \"ðŁĺį</w>\": 1754,\n  \"ðŁĺįâĿ¤</w>\": 29122,\n  \"ðŁĺįâĿ¤ï¸ı</w>\": 21945,\n  \"ðŁĺįðŁĳĮ</w>\": 41005,\n  \"ðŁĺįðŁĴķ</w>\": 35946,\n  \"ðŁĺįðŁĶ¥</w>\": 46648,\n  \"ðŁĺįðŁĺĤ</w>\": 48715,\n  \"ðŁĺįðŁĺį\": 3663,\n  \"ðŁĺįðŁĺį</w>\": 6471,\n  \"ðŁĺįðŁĺįðŁĺį\": 30614,\n  \"ðŁĺįðŁĺįðŁĺį</w>\": 7703,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺį\": 16603,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺį</w>\": 18925,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺįðŁĺį</w>\": 32078,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺį\": 48683,\n  \"ðŁĺįðŁĺĺ\": 29646,\n  \"ðŁĺįðŁĺĺ</w>\": 19849,\n  \"ðŁĺįðŁĺŃ</w>\": 39555,\n  \"ðŁĺİ\": 7426,\n  \"ðŁĺİ</w>\": 4345,\n  \"ðŁĺİðŁĺİ</w>\": 24048,\n  \"ðŁĺİðŁĺİðŁĺİ</w>\": 39742,\n  \"ðŁĺı\": 11624,\n  \"ðŁĺı</w>\": 6909,\n  \"ðŁĺıðŁĺı</w>\": 38151,\n  \"ðŁĺĲ\": 38586,\n  \"ðŁĺĲ</w>\": 19618,\n  \"ðŁĺĳ\": 32469,\n  \"ðŁĺĳ</w>\": 18937,\n  \"ðŁĺĴ\": 20792,\n  \"ðŁĺĴ</w>\": 11702,\n  \"ðŁĺĵ</w>\": 28733,\n  \"ðŁĺĶ\": 19532,\n  \"ðŁĺĶ</w>\": 11432,\n  \"ðŁĺķ\": 45741,\n  \"ðŁĺķ</w>\": 20602,\n  \"ðŁĺĸ</w>\": 35006,\n  \"ðŁĺĺ\": 4240,\n  \"ðŁĺĺ</w>\": 3352,\n  \"ðŁĺĺâĿ¤</w>\": 48409,\n  \"ðŁĺĺâĿ¤ï¸ı</w>\": 39150,\n  \"ðŁĺĺðŁĺį</w>\": 38176,\n  \"ðŁĺĺðŁĺĺ\": 15663,\n  \"ðŁĺĺðŁĺĺ</w>\": 10507,\n  \"ðŁĺĺðŁĺĺðŁĺĺ</w>\": 20208,\n  \"ðŁĺĺðŁĺĺðŁĺĺðŁĺĺ</w>\": 44892,\n  \"ðŁĺĻ\": 36201,\n  \"ðŁĺĻ</w>\": 29209,\n  \"ðŁĺļ\": 24897,\n  \"ðŁĺļ</w>\": 19102,\n  \"ðŁĺĽ\": 24550,\n  \"ðŁĺĽ</w>\": 15745,\n  \"ðŁĺľ\": 13226,\n  \"ðŁĺľ</w>\": 7830,\n  \"ðŁĺľðŁĺľ</w>\": 43065,\n  \"ðŁĺĿ\": 20064,\n  \"ðŁĺĿ</w>\": 12970,\n  \"ðŁĺŀ\": 40458,\n  \"ðŁĺŀ</w>\": 21103,\n  \"ðŁĺŁ</w>\": 46947,\n  \"ðŁĺł</w>\": 34094,\n  \"ðŁĺŃ\": 2962,\n  \"ðŁĺŃ</w>\": 3915,\n  \"ðŁĺŃâĿ¤ï¸ı</w>\": 29567,\n  \"ðŁĺŃðŁĴķ</w>\": 46306,\n  \"ðŁĺŃðŁĺĤ</w>\": 38505,\n  \"ðŁĺŃðŁĺį</w>\": 36893,\n  \"ðŁĺŃðŁĺŃ\": 5300,\n  \"ðŁĺŃðŁĺŃ</w>\": 11834,\n  \"ðŁĺŃðŁĺŃðŁĺŃ\": 44089,\n  \"ðŁĺŃðŁĺŃðŁĺŃ</w>\": 13116,\n  \"ðŁĺŃðŁĺŃðŁĺŃðŁĺŃ\": 19793,\n  \"ðŁĺŃðŁĺŃðŁĺŃðŁĺŃ</w>\": 27322,\n  \"ðŁĺŃðŁĺŃðŁĺŃðŁĺŃðŁĺŃ</w>\": 43366,\n  \"ðŁĻ\": 1478,\n  \"ðŁĻĢ</w>\": 43092,\n  \"ðŁĻĤ\": 32006,\n  \"ðŁĻĤ</w>\": 14860,\n  \"ðŁĻĥ\": 27222,\n  \"ðŁĻĥ</w>\": 15652,\n  \"ðŁĻĦ\": 20648,\n  \"ðŁĻĦ</w>\": 13049,\n  \"ðŁĻħ\": 42702,\n  \"ðŁĻĨ\": 30050,\n  \"ðŁĻĨ</w>\": 35730,\n  \"ðŁĻĪ\": 12661,\n  \"ðŁĻĪ</w>\": 9516,\n  \"ðŁĻĪðŁĻĪ</w>\": 41796,\n  \"ðŁĻĬ\": 23684,\n  \"ðŁĻĬ</w>\": 16636,\n  \"ðŁĻĭ\": 19193,\n  \"ðŁĻĭ</w>\": 30274,\n  \"ðŁĻĮ\": 4366,\n  \"ðŁĻĮ</w>\": 4855,\n  \"ðŁĻĮðŁı»\": 26756,\n  \"ðŁĻĮðŁı»</w>\": 15799,\n  \"ðŁĻĮðŁı¼\": 26584,\n  \"ðŁĻĮðŁı¼</w>\": 15364,\n  \"ðŁĻĮðŁı½\": 36660,\n  \"ðŁĻĮðŁı½</w>\": 22962,\n  \"ðŁĻĮðŁı¾\": 38023,\n  \"ðŁĻĮðŁı¾</w>\": 26466,\n  \"ðŁĻĮðŁĻĮ\": 21202,\n  \"ðŁĻĮðŁĻĮ</w>\": 30430,\n  \"ðŁĻĮðŁĻĮðŁĻĮ</w>\": 37127,\n  \"ðŁĻı\": 4260,\n  \"ðŁĻı</w>\": 5503,\n  \"ðŁĻıðŁı»\": 25100,\n  \"ðŁĻıðŁı»</w>\": 16650,\n  \"ðŁĻıðŁı¼\": 31163,\n  \"ðŁĻıðŁı¼</w>\": 18952,\n  \"ðŁĻıðŁı½\": 34103,\n  \"ðŁĻıðŁı½</w>\": 21540,\n  \"ðŁĻıðŁı¾\": 34277,\n  \"ðŁĻıðŁı¾</w>\": 21979,\n  \"ðŁĻıðŁĻı\": 18227,\n  \"ðŁĻıðŁĻı</w>\": 26510,\n  \"ðŁĻıðŁĻıðŁĻı</w>\": 31702,\n  \"ðŁļ\": 2730,\n  \"ðŁļ¨\": 12198,\n  \"ðŁļ¨</w>\": 6056,\n  \"ðŁļ¨ðŁļ¨\": 36487,\n  \"ðŁļ¨ðŁļ¨</w>\": 21440,\n  \"ðŁļ¨ðŁļ¨ðŁļ¨</w>\": 41515,\n  \"ðŁļ©</w>\": 44514,\n  \"ðŁļ«</w>\": 35291,\n  \"ðŁļ²</w>\": 37085,\n  \"ðŁļ´\": 30825,\n  \"ðŁļ¶\": 46060,\n  \"ðŁļĢ\": 22400,\n  \"ðŁļĢ</w>\": 13542,\n  \"ðŁļĢðŁļĢ\": 49033,\n  \"ðŁļĤ</w>\": 38949,\n  \"ðŁļĮ</w>\": 46891,\n  \"ðŁļĹ\": 33054,\n  \"ðŁļĹ</w>\": 22783,\n  \"ðŁļĺ</w>\": 35825,\n  \"ðŁļĻ</w>\": 48487,\n  \"ðŁĽ\": 11306,\n  \"ñ\": 173,\n  \"ñ</w>\": 429,\n  \"ò\": 174,\n  \"ò</w>\": 430,\n  \"ó\": 175,\n  \"ó</w>\": 431,\n  \"ô\": 176,\n  \"ô</w>\": 432,\n  \"õ\": 177,\n  \"õ</w>\": 433,\n  \"ö\": 178,\n  \"ö</w>\": 434,\n  \"÷\": 179,\n  \"÷</w>\": 435,\n  \"ø\": 180,\n  \"ø</w>\": 436,\n  \"ù\": 181,\n  \"ù</w>\": 437,\n  \"ú\": 182,\n  \"ú</w>\": 438,\n  \"û\": 183,\n  \"û</w>\": 439,\n  \"ü\": 184,\n  \"ü</w>\": 440,\n  \"ý\": 185,\n  \"ý</w>\": 441,\n  \"þ\": 186,\n  \"þ</w>\": 442,\n  \"ÿ\": 187,\n  \"ÿ</w>\": 443,\n  \"Ā\": 188,\n  \"Ā</w>\": 444,\n  \"ā\": 189,\n  \"ā</w>\": 445,\n  \"Ă\": 190,\n  \"Ă</w>\": 446,\n  \"ă\": 191,\n  \"ă</w>\": 447,\n  \"Ą\": 192,\n  \"Ą</w>\": 448,\n  \"ą\": 193,\n  \"ą</w>\": 449,\n  \"Ć\": 194,\n  \"Ć</w>\": 450,\n  \"ć\": 195,\n  \"ć</w>\": 451,\n  \"Ĉ\": 196,\n  \"Ĉ</w>\": 452,\n  \"ĉ\": 197,\n  \"ĉ</w>\": 453,\n  \"Ċ\": 198,\n  \"Ċ</w>\": 454,\n  \"ċ\": 199,\n  \"ċ</w>\": 455,\n  \"Č\": 200,\n  \"Č</w>\": 456,\n  \"č\": 201,\n  \"č</w>\": 457,\n  \"Ď\": 202,\n  \"Ď</w>\": 458,\n  \"ď\": 203,\n  \"ď</w>\": 459,\n  \"Đ\": 204,\n  \"Đ</w>\": 460,\n  \"đ\": 205,\n  \"đ</w>\": 461,\n  \"Ē\": 206,\n  \"Ē</w>\": 462,\n  \"ē\": 207,\n  \"ē</w>\": 463,\n  \"Ĕ\": 208,\n  \"Ĕ</w>\": 464,\n  \"ĕ\": 209,\n  \"ĕ</w>\": 465,\n  \"Ė\": 210,\n  \"Ė</w>\": 466,\n  \"ė\": 211,\n  \"ė</w>\": 467,\n  \"Ę\": 212,\n  \"Ę</w>\": 468,\n  \"ę\": 213,\n  \"ę</w>\": 469,\n  \"Ě\": 214,\n  \"Ě</w>\": 470,\n  \"ě\": 215,\n  \"ě</w>\": 471,\n  \"Ĝ\": 216,\n  \"Ĝ</w>\": 472,\n  \"ĝ\": 217,\n  \"ĝ</w>\": 473,\n  \"Ğ\": 218,\n  \"Ğ</w>\": 474,\n  \"ğ\": 219,\n  \"ğ</w>\": 475,\n  \"Ġ\": 220,\n  \"Ġ</w>\": 476,\n  \"ġ\": 221,\n  \"ġ</w>\": 477,\n  \"Ģ\": 222,\n  \"Ģ</w>\": 478,\n  \"Ģï¸ı\": 9668,\n  \"Ģï¸ı</w>\": 5511,\n  \"ģ\": 223,\n  \"ģ</w>\": 479,\n  \"ģà¸\": 15016,\n  \"Ĥ\": 224,\n  \"Ĥ</w>\": 480,\n  \"Ĥâĸ\": 29036,\n  \"ĤâĸĤâĸ\": 30832,\n  \"ĥ\": 225,\n  \"ĥ</w>\": 481,\n  \"Ħ\": 226,\n  \"Ħ</w>\": 482,\n  \"Ħà¸\": 20537,\n  \"Ħë\": 34462,\n  \"Ħëĭ\": 25170,\n  \"ħ\": 227,\n  \"ħ</w>\": 483,\n  \"ħï¸ı</w>\": 33950,\n  \"Ĩ\": 228,\n  \"Ĩ</w>\": 484,\n  \"ĩ\": 229,\n  \"ĩ</w>\": 485,\n  \"Ī\": 230,\n  \"Ī</w>\": 486,\n  \"ī\": 231,\n  \"ī</w>\": 487,\n  \"īï¸ı</w>\": 37463,\n  \"Ĭ\": 232,\n  \"Ĭ</w>\": 488,\n  \"Ĭãģ\": 30294,\n  \"ĭ\": 233,\n  \"ĭ</w>\": 489,\n  \"ĭãģ\": 36218,\n  \"ĭãĤ\": 45737,\n  \"Į\": 234,\n  \"Į</w>\": 490,\n  \"ĮãĤĬãģ\": 45969,\n  \"ĮãĤĬãģŁãģĦ</w>\": 47021,\n  \"Įë\": 17003,\n  \"į\": 235,\n  \"į</w>\": 491,\n  \"İ\": 236,\n  \"İ</w>\": 492,\n  \"ı\": 237,\n  \"ı</w>\": 493,\n  \"Ĳ\": 238,\n  \"Ĳ</w>\": 494,\n  \"ĳ\": 239,\n  \"ĳ</w>\": 495,\n  \"Ĵ\": 240,\n  \"Ĵ</w>\": 496,\n  \"ĵ\": 241,\n  \"ĵ</w>\": 497,\n  \"Ķ\": 242,\n  \"Ķ</w>\": 498,\n  \"Ķë\": 37978,\n  \"Ķï¸ı\": 24395,\n  \"Ķï¸ı</w>\": 7443,\n  \"ķ\": 243,\n  \"ķ</w>\": 499,\n  \"ķãĤ\": 26609,\n  \"ķï¸ı</w>\": 44853,\n  \"ĸ\": 244,\n  \"ĸ</w>\": 500,\n  \"ĸï¸ı</w>\": 28877,\n  \"Ĺ\": 245,\n  \"Ĺ</w>\": 501,\n  \"ĺ\": 246,\n  \"ĺ</w>\": 502,\n  \"Ļ\": 247,\n  \"Ļ</w>\": 503,\n  \"ļ\": 248,\n  \"ļ</w>\": 504,\n  \"Ľ\": 249,\n  \"Ľ</w>\": 505,\n  \"ľ\": 250,\n  \"ľ</w>\": 506,\n  \"ľë\": 39810,\n  \"Ŀ\": 251,\n  \"Ŀ</w>\": 507,\n  \"ŀ\": 252,\n  \"ŀ</w>\": 508,\n  \"Ł\": 253,\n  \"Ł</w>\": 509,\n  \"ŁãģĦ</w>\": 46023,\n  \"ł\": 254,\n  \"ł</w>\": 510,\n  \"łï¸ı\": 27899,\n  \"łï¸ı</w>\": 12715,\n  \"łĪ\": 43364,\n  \"Ń\": 255,\n  \"Ń</w>\": 511\n}\n"
  },
  {
    "path": "configs/sdxl/tokenizer_2/merges.txt",
    "content": "#version: 0.2\ni n\nt h\na n\nr e\na r\ne r\nth e</w>\nin g</w>\no u\no n\ns t\no r\ne n\no n</w>\na l\na t\ne r</w>\ni t\ni n</w>\nt o</w>\nr o\ni s</w>\nl e\ni c\na t</w>\nan d</w>\ne d</w>\no f</w>\nc h\no r</w>\ne s</w>\ni l\ne l\ns t</w>\na c\no m\na m\nl o\na n</w>\na y</w>\ns h\nr i\nl i\nt i\nf or</w>\nn e\nð Ł\nr a\nh a\nd e\no l\nv e</w>\ns i\nu r\na l</w>\ns e\n' s</w>\nu n\nd i\nb e\nl a\nw h\no o\nd ay</w>\ne n</w>\nm a\nn o\nl e</w>\nt o\nou r</w>\ni r\ng h\nw it\ni t</w>\ny o\na s\ns p\nth is</w>\nt s</w>\nat i\nyo u</w>\nwit h</w>\na d\ni s\na b\nl y</w>\nw e\nth e\nt e\na s</w>\na g\nv i\np p\ns u\nh o\nm y</w>\n. .\nb u\nc om\ns e</w>\ner s</w>\nm e\nm e</w>\nal l</w>\nc on\nm o\nk e</w>\ng e\nou t</w>\nen t</w>\nc o\nf e\nv er\na r</w>\nf ro\na u\np o\nc e</w>\ngh t</w>\nar e</w>\ns s</w>\nfro m</w>\nc h</w>\nt r\nou n\non e</w>\nb y</w>\nd o\nt h</w>\nw or\ner e</w>\nk e\np ro\nf or\nd s</w>\nb o\nt a\nw e</w>\ng o\nh e\nt er</w>\nin g\nd e</w>\nb e</w>\nati on</w>\nm or\na y\ne x\nil l</w>\np e\nk s</w>\ns c\nl u\nf u\nq u\nv er</w>\nðŁ ĺ\nj u\nm u\nat e</w>\nan d\nv e\nk ing</w>\nm ar\no p\nh i\n.. .</w>\np re\na d</w>\nr u\nth at</w>\nj o\no f\nc e\nne w</w>\na m</w>\na p\ng re\ns s\nd u\nno w</w>\ny e\nt ing</w>\ny our</w>\nit y</w>\nn i\nc i\np ar\ng u\nf i\na f\np er\nt er\nu p</w>\ns o</w>\ng i\non s</w>\ng r\ng e</w>\nb r\np l\n' t</w>\nm i\nin e</w>\nwe e\nb i\nu s</w>\nsh o\nha ve</w>\nto day</w>\na v\nm an\nen t\nac k</w>\nur e</w>\nou r\nâ Ģ\nc u\nl d</w>\nlo o\ni m\nic e</w>\ns om\nf in\nre d</w>\nre n\noo d</w>\nw as</w>\nti on</w>\np i\ni r</w>\nth er</w>\nt y</w>\np h\nar d</w>\ne c\n! !</w>\nm on\nmor e</w>\nw ill</w>\nt ra\nc an</w>\nc ol\np u\nt e</w>\nw n</w>\nm b\ns o\nit i\nju st</w>\nn ing</w>\nh ere</w>\nt u\np a\np r\nbu t</w>\nwh at</w>\nal ly</w>\nf ir\nm in\nc a\nan t</w>\ns a\nt ed</w>\ne v\nm ent</w>\nf a\nge t</w>\nam e</w>\nab out</w>\ng ra\nno t</w>\nha pp\nay s</w>\nm an</w>\nh is</w>\nti me</w>\nli ke</w>\ng h</w>\nha s</w>\nth an\nlo ve</w>\nar t</w>\nst e\nd ing</w>\nh e</w>\nc re\nw s</w>\nw at\nd er</w>\nit e</w>\ns er\nac e</w>\nag e</w>\nen d</w>\nst r\na w\nst or\nr e</w>\nc ar\nel l</w>\nal l\np s</w>\nf ri\np ho\np or\nd o</w>\na k\nw i\nf re\nwh o</w>\nsh i\nb oo\ns on</w>\nel l\nwh en</w>\nil l\nho w</w>\ngre at</w>\nw in\ne l</w>\nb l\ns si\nal i\nsom e</w>\nðŁ Ĵ\nt on\nd er\nle s</w>\np la\nï ¸\ne d\ns ch\nh u\non g</w>\nd on</w>\nk i\ns h</w>\nan n\nc or\n. .</w>\noun d</w>\na z\nin e\nar y</w>\nfu l</w>\nst u\nou ld</w>\nst i\ng o</w>\nse e</w>\nab le</w>\nar s</w>\nl l</w>\nm is\nb er\nc k</w>\nw a\nen ts</w>\nn o</w>\nsi g\nf e</w>\nfir st</w>\ne t</w>\nsp e\nac k\ni f</w>\nou s</w>\n' m</w>\nst er</w>\na pp\nan g\nan ce</w>\nan s</w>\ng ood</w>\nb re\ne ver\nthe y</w>\nt ic\ncom e</w>\nof f\nb ack</w>\nas e</w>\ning s</w>\nol d</w>\ni ght</w>\nf o\nh er</w>\nhapp y</w>\np ic\nit s</w>\nv ing</w>\nu s\nm at\nh om\nd y</w>\ne m\ns k\ny ing</w>\nthe ir</w>\nle d</w>\nr y</w>\nu l\nh ar\nc k\nt on</w>\non al</w>\nh el\nr ic\nb ir\nvi e\nw ay</w>\nt ri\nd a\np le\nb ro\nst o\noo l</w>\nni ght</w>\ntr u\nb a\nre ad\nre s</w>\nye ar</w>\nf r\nt or\nal s</w>\nc oun\nc la\nt ure</w>\nv el\nat ed</w>\nle c\nen d\nth ing</w>\nv o\nic i\nbe st</w>\nc an\nwor k</w>\nla st</w>\naf ter</w>\nen ce</w>\np ri\np e</w>\ne s\ni l</w>\nâĢ ¦</w>\nd re\ny s</w>\no ver</w>\ni es</w>\nðŁ ĳ\ncom m\nt w\nin k</w>\ns un\nc l\nli fe</w>\nt t\na ch\nl and</w>\ns y\nt re\nt al\np ol\ns m\ndu c\ns al\nf t</w>\n' re</w>\nch e\nw ar\nt ur\nati ons</w>\nac h</w>\nm s</w>\nil e</w>\np m</w>\nou gh</w>\nat e\nst ar\nwee k</w>\n! !!</w>\nc lu\nth ere</w>\nn er</w>\nt om\ns el\nï¸ ı</w>\nwor ld</w>\nv es</w>\nc am\ngo t</w>\nin ter\nof f</w>\nu m</w>\nton ight</w>\no ther</w>\nh ou\nloo k</w>\nj e\ni d</w>\nsi on</w>\nbe au\nat t\nel i\nor t</w>\nre c\nf f\nst er\nsu pp\ng en\nbe en</w>\nil y</w>\nte am</w>\nm m\ni c</w>\npe op\nit t\nat s</w>\non ly</w>\nmb er</w>\nen g\nb ri\nm p\nk now</w>\nb ur\nb ar\nin s</w>\nlo w</w>\nsh e</w>\nro w</w>\nâ Ŀ\nt ro\npeop le</w>\nvi a</w>\nlo w\nag a\nbe t\nx t</w>\nf ac\nch ar\ne ar\nw al\ns en\nf am\nb le</w>\nn ati\nis h</w>\nn or\ng ame</w>\nli ve</w>\ns co\nle y</w>\nd on\nic k</w>\nb all</w>\nver y</w>\nthe se</w>\np an\ni a</w>\nat ing</w>\nc r\na re\ng ir\nma ke</w>\nst re\nsho w</w>\n. \"</w>\nf l\nu p\nd r\nthan ks</w>\nil li\nw om\nst s</w>\ni g\ns ur\never y\nc ur\nvie w</w>\nle t</w>\nin to</w>\nmo st</w>\nn a\nin di\ng ar\nha d</w>\ns ou\nv ed</w>\nan t\niti on</w>\nma de</w>\nf ol\nun i\nit ed</w>\nðŁ ı\nic al</w>\nth r\nread y</w>\nch ec\nd ra\nk es</w>\nboo k</w>\ne p</w>\nsi c</w>\nmor ning</w>\nne ws</w>\nc au\nc t</w>\nw ell</w>\nan c\npho to</w>\nth an</w>\nor s</w>\nbir th\ng g\nou t\nne xt</w>\nsom e\nen ing</w>\nstor y</w>\nch ri\ndo wn</w>\nhom e</w>\nf fe\nfre e</w>\nd a</w>\nb or\nf il\nci al</w>\nthan k</w>\nsi de</w>\nle ar\nqu e\nl ine</w>\nt en\nat es</w>\nye ars</w>\nm y\npho to\nbeau ti\nri ght</w>\nn u\nfor m\nshi p</w>\nb an\nth er\nd ays</w>\ng am\nas on</w>\ng y</w>\nðŁ İ\nbirth day</w>\nse t</w>\nic k\ne t\nst ill</w>\ncom ing</w>\nta ke</w>\nðŁ ĩ\nb b\ns ol\ns on\nd en\ne p\nmu sic</w>\nthe m</w>\nde n</w>\nwh y</w>\nf oo\nc ra\nam az\nw n\nh ol\nt ting</w>\nw r\nu e</w>\nma g\nc ro\nl an\nc lo\nb ra\na k</w>\ns ing</w>\nc al\nre ad</w>\n' ve</w>\njo h\nb ab\nd ri\nb lo\nbi g</w>\ner ic\nin t</w>\nt or</w>\ntr y</w>\nl a</w>\nle g\nhou se</w>\nm ic\nv al\nbeauti ful</w>\nl itt\nchec k</w>\nne w\nver s\ns w\nar i\npla y\nh er\nâĢ ĵ</w>\nw in</w>\nm a</w>\ncon gr\nsch ool</w>\nf un\n. @</w>\nhe al\nic h</w>\nd el\nwh ere</w>\nl on\nke t</w>\ntw o</w>\nmu ch</w>\nwat ch</w>\nv en\nd ed</w>\na st</w>\nk ed</w>\nb as\ngo ing</w>\nm p</w>\ne ver</w>\nw ays</w>\nro o\nde sig\nl y\ns ed</w>\nto p</w>\nl in\nch an\nto o</w>\nit ing</w>\nd ent</w>\ngh ts</w>\nt y\nsp o\nne ed</w>\nb lu\nin st\nbe ing</w>\nâĿ ¤\nw el\nl s</w>\nhi m</w>\nm ay</w>\nst ing</w>\nn a</w>\nel y</w>\nlitt le</w>\ng a\nn at\ntom or\nm c\nh on\nw ant</w>\na ir\npi c</w>\nam eric\np er</w>\nle ss</w>\nwee k\nve l</w>\na h</w>\nc ap\nch am\ng er\nti m\ntomor row</w>\nne ss</w>\nst ate</w>\nh al\nser v\nz e</w>\no s</w>\np at\nv is\nex c\ns in\nf f</w>\nc ity</w>\nc en\nan y\nb el\nsu mm\nt in\nw ould</w>\nloo king</w>\nk o\nce le\nfam ily</w>\nm er\npo w\nhel p</w>\nbu s\nc o</w>\nc le\nsel f</w>\nen s</w>\nic s</w>\nth o\nan i\nch o\nle ad\nb s</w>\nt wee\nth ink</w>\nfor e</w>\nch il\nvi de\ndi d</w>\nal e</w>\nch i\nv il\nen ds</w>\nw ing</w>\np as\n' ll</w>\nv ol\ns a</w>\ng s</w>\nman y</w>\nj ec\nbe fore</w>\ngra ph\nn y</w>\nur ing</w>\nw il\nd d\nbu il\nf av\nst ed</w>\ntr an\nl ing</w>\nou d</w>\nd ge</w>\nfi el\nnati onal</w>\nst a\nc er\nw ere</w>\nin a</w>\nse ason</w>\nc ou\nn ed</w>\namaz ing</w>\nti ons</w>\ncele br\nn s</w>\na th\nhe ad</w>\ns day</w>\nd ar\nlo c\nv in\nan other</w>\ng oo\ns at\nn y\njo in</w>\npre s\ns es</w>\ns ing\nan a</w>\nin ing</w>\n.. ..</w>\nc our\nï¸ ı\nac t</w>\ncau se</w>\nli ght</w>\nam s</w>\nt a</w>\nb al\nf c</w>\nhi gh</w>\noff ici\nt t</w>\nchri st\nd ic\nd ay\nra l</w>\nh or\n: )</w>\nvi si\nn am\no b\nma s</w>\ngh t\nre ally</w>\nt un\nfin d</w>\nthr ough</w>\npor t</w>\nu t\nti ve</w>\nst y\nn e</w>\nor e</w>\nðŁĺ Ĥ\nsupp ort</w>\nne ver</w>\nev en</w>\nðŁ Ķ\nh a</w>\ny a</w>\nl d\nu k</w>\nr an\nj am\nwi th\nme di\nd es</w>\nne y</w>\nch ing</w>\nal e\nh y\nk in\n! !\nd y\npl ace</w>\nal so</w>\nb le\nwh ich</w>\nbl ack</w>\nb li\ns ay</w>\npar k</w>\npl ay</w>\nir e</w>\nvide o</w>\nweek end</w>\na il\nke y</w>\np t</w>\nw ard</w>\nfri day</w>\nd in\nine ss</w>\ng ro\nb en\nal ways</w>\nt ball</w>\nag o</w>\nm il\nc y\npro duc\ndi sc\nun der\nple ase</w>\nsp or\nfu ll</w>\ne y</w>\nðŁ Ļ\nis e</w>\niti es</w>\nc at\nk no\nu se</w>\nfo re\nk er</w>\nar t\nhi gh\nop en</w>\ns an\ne f\nour s</w>\nsh ed</w>\nst ri\nd ro\naga in</w>\ni m</w>\nðŁ ĵ\nen jo\nfu n</w>\nge tting</w>\np en\ng er</w>\nc li\nan y</w>\never y</w>\ne u\nwom en</w>\nâ ľ\ne st</w>\nc ould</w>\nr y\n\" @</w>\nth ou\nsh a\ncomm un\nb er</w>\nd ents</w>\ndi s\nwh ile</w>\naw ay</w>\ndi o</w>\nh am\ng la\nd ate</w>\nk a</w>\nmis s</w>\nun ch</w>\nw on\nin f\nroo m</w>\ng a</w>\nre al</w>\nex per\ndi rec\nsh ould</w>\nsp r\ng ol\nl ong</w>\nbet ter</w>\nor i\ne y\ni ence</w>\nil s</w>\nz z\nh an\nf ound</w>\nv s</w>\nâ Ļ\npo st</w>\nti c</w>\npar t</w>\nm en\nren ce</w>\nce ss</w>\nv ic\ns il\nsho p</w>\nðŁĺ Ĥ</w>\nf ood</w>\nv al</w>\nsti c</w>\ny ou\ns ays</w>\ne lec\nst ar</w>\no c\nl and\ni d\nc tion</w>\nfiel d</w>\ns of\nst art</w>\nwat er</w>\nfri ends</w>\non es</w>\nðŁ Į\nf la\nf ar\nwh ite</w>\npar ty</w>\nin st</w>\ngr ou\nt v</w>\nevery one</w>\nm ent\nj a\nch a\npr in\nan ts</w>\nd uring</w>\nl at\nl ar\nwe st</w>\nth en</w>\nk a\ny oun\nin sp\nin te\nwe en</w>\nvisi t</w>\naga inst</w>\nre le\nhe ad\nc es</w>\nto wn</w>\nloo ks</w>\nth re\nre gi\nren t</w>\npro jec\ngir l</w>\nse ar\nw o\nm om\nc ar</w>\nh un\npu bli\nd i</w>\np le</w>\nc all</w>\nc ri\nu m\nfor d</w>\nper fe\nfri end</w>\nh ard</w>\nssi on</w>\nte st</w>\npla ying</w>\nar ound</w>\nbe cause</w>\nke ts</w>\nme et</w>\nsat ur\nar ti\nwor k\nj un\nv en</w>\nr un\nme mber</w>\npor t\nsu per\nt wit\ns am\nel s</w>\nt ly</w>\nad v\nati ve</w>\nat h</w>\ns ure</w>\nav ail\nla r</w>\ns qu\nar ds</w>\nev ent</w>\nm en</w>\nl l\no ver\nlo gy</w>\nit al</w>\ntim es</w>\nm al\nb ack\nc oo\nma king</w>\nst ru\nâ ģ\nit u\nsh ar\ng an</w>\nc as\ns n\nsumm er</w>\npic ture</w>\nf an\nh in\nchrist mas</w>\nc y</w>\npr oud</w>\ncham pi\ndesig n</w>\npp ing</w>\nho pe</w>\nc a</w>\navail able</w>\nma y\nwe d\nphoto graph\nspe cial</w>\nsal e</w>\nsto p</w>\ner y</w>\na we\nal ity</w>\nhi story</w>\nam a</w>\npre si\nb ru\nwor king</w>\nd one</w>\nd r</w>\nk en</w>\nfe at\nw ood</w>\nate st</w>\nsun day</w>\nmo vi\nvel y</w>\ns le\nf ace</w>\nsp ec\nstu dents</w>\nb y\nha m</w>\nsp on\nbus iness</w>\nd at\ni e</w>\ni p\nso ci\ng lo\nh and\nre cor\nr s</w>\nme e\nke ep</w>\np ur\nheal th</w>\nsh e\ncom ple\ngo d</w>\nda vi\ncol lec\nli st\nr a</w>\nclu b</w>\nt ers</w>\nin clu\nth ings</w>\npl an\nâ ĺ\njoh n</w>\nsh ing</w>\nat ul\nso on</w>\nblu e</w>\ng or\nsatur day</w>\nw on</w>\ncongr atul\nse e\nâĿ¤ ï¸ı</w>\ntho se</w>\nðŁĺ į</w>\nfin al</w>\nd ou\nit h</w>\no wn</w>\nro ad</w>\nt our</w>\na st\nindi a</w>\nti l</w>\nn d</w>\nf er\nfav or\nsu l\nlear n</w>\nfir e</w>\nju st\ngrou p</w>\na h\nr ac\nbo dy</w>\nu r</w>\nc are</w>\nà ¸\np lo\no h</w>\npo s\ngi ve</w>\nte ch\nsu b\nc ent\ner ing</w>\ny m\nil ity</w>\nf ic\nlon don</w>\nv ir\ngu ys</w>\nb a</w>\nðŁ ¤\nbab y</w>\nsc re\nðŁĺ į\ntru mp</w>\nun der</w>\nchan ge</w>\ni an</w>\ncol le\nss es</w>\nl er</w>\nss ed</w>\nn ice</w>\nann oun\npow er</w>\ns ar\na king</w>\nmin i\ns li\ns wee\nk ar\nfu l\nc ru\nac tion</w>\na ther</w>\n) .</w>\nst and\nde vel\na a\ng an\nle ft</w>\nlo l</w>\nre l\ntran s\nm ents</w>\nin t\ne f</w>\nman ag\ndi g\ngen er\ndo wn\np au\nti v\nk u\nth ur\nk en\nst on</w>\nf ans</w>\ntal k</w>\ntwee t</w>\nt oo\nsty le</w>\npro te\nse con\nfr on\nawe some</w>\ng l\np al\nne t\ns or\nla u\ng on\nsin ce</w>\nt ty</w>\nser ies</w>\nme mor\nb eli\nfil m</w>\ndi d\ndi es</w>\no t\ncongratul ations</w>\np ra\ne ve</w>\nw oo\noffici al</w>\nsu c\nin cre\nb on\npar t\npp ed</w>\ncla ss</w>\nsi ve</w>\nbo y</w>\ncu l\nperfe ct</w>\nt ou\nd am\nwel come</w>\nfoo tball</w>\nh i</w>\np ap\nwa it</w>\nad a</w>\ncongr ats</w>\nyoun g</w>\nexc ited</w>\nre ce\nj an\nv a</w>\nre d\nst ra\nmedi a</w>\n' d</w>\ndo es</w>\nle t\nmu l\nill s</w>\ngre en</w>\nm el\nto ge\nfu ture</w>\nye ster\nvers ity</w>\nfor m</w>\nta in</w>\ni de\nch es</w>\nki ds</w>\nqu i\nha ha\nde ta\nbi g\nfavor ite</w>\ngir ls</w>\ncon tin\ndo m</w>\nsear ch</w>\nu al</w>\na ir</w>\nd ers</w>\nmon th</w>\nc er</w>\nyester day</w>\ncommun ity</w>\nad e</w>\ndo g</w>\nvil le</w>\nic es</w>\nd eli\nsy ste\nru n</w>\nis m</w>\nhe art</w>\nc up</w>\nen ti\nfe w</w>\npresi dent</w>\ne ds</w>\nun til</w>\nfe sti\no k\nf lo\nsa id</w>\nol e</w>\nme d\ntra vel</w>\nÂ £</w>\nph one</w>\ntoge ther</w>\nfa st</w>\nlo t</w>\ngam es</w>\nsh ir\nbet ween</w>\ny es</w>\nth ers</w>\ndo ing</w>\nm ac\nat or</w>\nb and</w>\nfol low\nprojec t</w>\ndevel op\ndi ffe\ncon fe\nspe ci\nca st</w>\ny s\nbo ard</w>\nr d</w>\ni al</w>\nsh oo\nr am\nha ving</w>\nsh are</w>\nfol low</w>\non e\nn ame</w>\nm r</w>\npu t</w>\ndisc u\nor y</w>\nc ame</w>\nou s\ns ite</w>\ntwit ter</w>\nt b\nt it\nfin ally</w>\nz ed</w>\nsu per</w>\ncom pan\nus ing</w>\nall s</w>\nli st</w>\nr is</w>\nsho t</w>\ng al\nt ar\nde l</w>\njoh n\nâĢ Ķ</w>\nsome thing</w>\nra m</w>\ninte re\nwh e\nb it</w>\nðŁ į\nstre et</w>\noun d\na i\ntic kets</w>\nmovi e</w>\nre al\nk y\nta king</w>\no pp\nc c</w>\nl am\nm oun\nin ve\nbl ack\nus ed</w>\non line</w>\ny or\nloc al</w>\ngu e\nc ks</w>\no w\nge st</w>\nbo ys</w>\nilli on</w>\ncon t\nre ci\nin ed</w>\neu ro\nno w\nse en</w>\np h</w>\nte ach\nde f\nsou th</w>\nsu ch</w>\naw ard</w>\nmu st</w>\nis su\nca re\nfe el</w>\np lu\nl atest</w>\nspor ts</w>\nwe b\nte x\ne ment</w>\ns k</w>\nfi c</w>\nw an\nte ch</w>\no t</w>\nbo x</w>\nn er\nfre e\nt al</w>\na sh\nc ase</w>\nho t</w>\nwon der\nmee ting</w>\ner a</w>\nch all\nðŁ Ĳ\njo b</w>\nil i\nc ool</w>\nj our\nth s</w>\nm o</w>\nf el\ndi e</w>\nmic ha\ne le\nte am\nserv ice</w>\nst and</w>\nma kes</w>\np ing</w>\near ly</w>\ncom es</w>\ne k</w>\nho li\nv ers</w>\nag ue</w>\ns au\nthre e</w>\nmon day</w>\nfa shi\nsome one</w>\nth ro\nse a</w>\nb ad</w>\nsupp or\ntur n</w>\nur y</w>\nm ing</w>\nphotograph y</w>\nn ic\nmar k</w>\npre tty</w>\nss ing</w>\nwat ching</w>\nme mb\nar ri\ncoun ty</w>\nbe ach</w>\nfr an\ncen ter</w>\npol ice</w>\nb at\npubli c</w>\nt an\npre ss</w>\ns af\ns y</w>\nge ts</w>\nro y\nn ers</w>\ny our\nbu y</w>\nst ers</w>\nsho w\nas ed</w>\nchil dre\naf ric\nin es</w>\nsp ace</w>\nsc ri\nh all</w>\npa in\nar ing</w>\nhom e\nm ur\nheal th\nch ed</w>\ns and\nrece i\ngu y</w>\ne a\nameric an</w>\nre si\nchildre n</w>\n- -\ni ri\ning ton</w>\ncoun try</w>\nro ss</w>\nle n</w>\nann a</w>\nboo ks</w>\nb c</w>\ne ce</w>\nd om\nlo vely</w>\nk h\npe t\ng y\ng ri\nst age</w>\noff ice</w>\nro ck</w>\nm on</w>\nb ay</w>\nt able</w>\nsu n</w>\nm ed</w>\nth in\nl or\nf low\n( @</w>\nuni versity</w>\nstor e</w>\nfron t</w>\ngoo d\nz a</w>\nvo te</w>\nnor th</w>\nhe y</w>\nan im\nor der</w>\nmi d\nwith out</w>\na de\nre member</w>\nmar ket</w>\n? ?</w>\nmu s\ntra ining</w>\ne duc\nbu t\nco ver</w>\nst an\nsc en\nb la\nbre ak\nl ou\ns ame</w>\ng old</w>\na in</w>\no s\nbo th</w>\nl it\nver n\na i</w>\nal bu\np a</w>\nenjo y</w>\nbe g\nell ing</w>\nthur sday</w>\ninf o</w>\ns an</w>\nameric a</w>\nha ir</w>\nte l</w>\nmar ch</w>\ncon cer\ncolle ge</w>\nconfe rence</w>\nap p</w>\nh our</w>\nch ang\nâ ļ\ns our\nol s</w>\nwe ather</w>\nw ar</w>\np hi\nfesti val</w>\nsecon d</w>\ncu te</w>\npr ac\nen er\nstr y</w>\nle a\npol it\ns av\nse n</w>\no w</w>\nm i</w>\nne ar</w>\nou ght</w>\nz e\nco ffe\nw illi\nd an\nse y</w>\ndavi d</w>\ne se</w>\nf an</w>\nde ci\nthe at\nno v\nati on\ntr ac\nsc i\nre view</w>\nc el\ne m</w>\nu n</w>\nju ly</w>\nor ig\nti on\nd ru\nform er</w>\nst ay</w>\naf ter\nin v\ntoo k</w>\ndat a</w>\nb al</w>\ntu es\nd an</w>\nev ening</w>\nðŁĺĤ ðŁĺĤ\nd ol\nu res</w>\npro vi\nt s\ne st\nsig n</w>\nj ac\nu k\ns ong</w>\nye t</w>\nbo w\nin du\nj ap\nh oo\npo int</w>\nany one</w>\nz y</w>\ni st</w>\nh ur\nit al\nbuil ding</w>\nwom an</w>\nch ur\nj er\nper for\nco ach</w>\nle ague</w>\nce ss\nne t</w>\ni mag\nnati on\nbr it\nqu e</w>\naw ards</w>\nag es</w>\nwor ks</w>\nc ed</w>\nman ce</w>\nl ate</w>\nig n</w>\nmon ey</w>\ntru e</w>\ni i</w>\nt ell</w>\npl ac\np ac\nas y</w>\nwor ld\nbe hin\nim port\nread ing</w>\ngra m</w>\ngi ving</w>\nme t</w>\nh it</w>\nfor ward</w>\nst om\npres ent\njun e</w>\nso cial</w>\nno on</w>\nmar t\nhal f</w>\ns we\ngo vern\nk er\ndeta ils</w>\nli sh</w>\n_ _\nac y</w>\nsi a</w>\nber t</w>\nf all</w>\n! !!!</w>\n) ,</w>\nth i\nd iti\nsp ort</w>\nk ing\nf it\nst af\nc at</w>\nmu se\ncen tr\ny er</w>\ncon tro\nb loo\nwal k</w>\nac tu\ndid n</w>\nli m\nlear ning</w>\nre search</w>\nwed ne\nau th\nh ours</w>\nk y</w>\nf ar</w>\nh en\n.. ..\nit ch\nri l</w>\nstr ong</w>\nsk y</w>\nque sti\njam es</w>\nr on\nd g\nf ur\nc in\ndo es\napp ro\nmar ke\ntu res</w>\nful ly</w>\nch at</w>\nbehin d</w>\nte m\nfin i\nmis sion</w>\nb att\nfe el\nhe av\nevery thing</w>\nb ar</w>\nw ish</w>\npre mi\ni ma\nexper ience</w>\ne ach</w>\nre port</w>\nswee t</w>\ntic s</w>\nspr ing</w>\nre spon\nsyste m</w>\nvic tor\nl in</w>\nsa w</w>\nal ready</w>\ngh ter</w>\nf le\nã ĥ\nbr ing</w>\nalbu m</w>\n- -</w>\nell s</w>\nst an</w>\nto m</w>\ninter national</w>\nw ent</w>\nan ni\nmat ch</w>\npp er</w>\nst one</w>\nsm all</w>\nra in</w>\nfashi on</w>\nare a</w>\nv an\nag ram</w>\nk o</w>\nthou ght</w>\nwor th</w>\nv an</w>\nm er</w>\ncoffe e</w>\nit es</w>\ng n\narti st</w>\nc on</w>\nar ch\nc ir\nse cre\ngr ound</w>\nis o\nh and</w>\nco m</w>\nbri dge</w>\nh s</w>\nx i\nl ink</w>\npu l\nsp l\nr ace</w>\nf li\nri ver</w>\ng as</w>\ndi sco\nd al\nplay er</w>\nf it</w>\nphoto s</w>\nit y\no k</w>\nj or\ntr a</w>\nap ril</w>\nad s</w>\na di\nsol u\nbeau ty</w>\ndo or</w>\nme ss\nup date</w>\nali a</w>\nsch o\nen ed</w>\nmom ent</w>\nsco t\nsc ience</w>\ni or</w>\nti es</w>\nac ross</w>\nous ly</w>\nsh es</w>\ndoes n</w>\np age</w>\nwat er\nm illion</w>\ncla ssi\nl ic\nca st\nform ation</w>\nmicha el</w>\nell o</w>\ns mo\nin ts</w>\nvi sion</w>\nop ening</w>\nld n</w>\nau str\ntues day</w>\nwin ner</w>\npo ssi\nr ound</w>\nshir t</w>\ndi t</w>\nb o</w>\nu es</w>\nil led</w>\nal ong</w>\ntri p</w>\nstar ting</w>\nim pro\nk an\nper son</w>\nno t\nre co\nne eds</w>\nc le</w>\nli e</w>\nre st</w>\nr ing</w>\nwin ter</w>\nsi mp\nmo m</w>\nbe er</w>\nfac e\ntor s</w>\nus a</w>\ncollec tion</w>\nge or\nse ssion</w>\ntr ying</w>\nla s</w>\nla ke</w>\nj en\norig in\nstu dent</w>\nse cur\nv in</w>\npic s</w>\nex pe\ncom p\ngon na</w>\ne qu\nb ad\nle y\na u</w>\nmemb ers</w>\nbre ak</w>\nw all</w>\ngi c</w>\ndin ner</w>\nbu l\ninsp ir\nr i</w>\nmin d</w>\nic a</w>\nwin ning</w>\ntal king</w>\nt ren\ns is</w>\nt en</w>\nwonder ful</w>\ns now</w>\nhe ar</w>\nth om\nno thing</w>\ngu i\nst in\nblo g</w>\nfe st</w>\nb un\nle e</w>\nwar ds</w>\nch ance</w>\ndre ss</w>\nre n</w>\npau l</w>\np es</w>\ntech no\nru ssi\nc ard</w>\ne ast</w>\nmar i\nw ine</w>\nt i</w>\nla w</w>\nstr ic\nk i</w>\nap e</w>\nau gu\npro fe\nas h</w>\ncour se</w>\nma il</w>\nren tly</w>\nd un\nm un\nlo ve\nis land</w>\ndri ve</w>\ns l\nend ed</w>\nma in</w>\nlo st</w>\nnat ure</w>\nâĿ¤ ï¸ı\nch ic\nre por\np in\npr o</w>\nst ation</w>\nce p\nta kes</w>\ncompan y</w>\ngo es</w>\non d</w>\nma ch\nra dio</w>\nd ad</w>\nro ck\nj a</w>\np ay\nchampi on\ne e\nin de\ntt a</w>\nati c</w>\nt ab\nbeli eve</w>\nener gy</w>\nz i\nt at\nwor d</w>\non ce</w>\nre sul\ny l\nand re\nan o</w>\ninst agram</w>\nclo se</w>\nt am\ncu stom\nw a</w>\ncon om\nsho ws</w>\nli fe\nk in</w>\nro b\nt age</w>\nn ation</w>\nal most</w>\nlist en</w>\nsa ve</w>\nre li\nac e\nmar y</w>\ntre e</w>\nfor get</w>\nj ack\nwa iting</w>\ndirec tor</w>\nh ill</w>\nbor n</w>\nte mp\nf l</w>\nst e</w>\non a</w>\nsing le</w>\nwedne sday</w>\nun ited</w>\nin o</w>\n@ _</w>\nne l</w>\ncelebr ate</w>\nen ding</w>\nde al</w>\nj i</w>\ncan ada</w>\nhu ge</w>\ntr ack</w>\nâĢ ¢</w>\nf y</w>\nfan ta\nan g</w>\nyor k</w>\nrele ase</w>\np un\nep iso\nwor ds</w>\nt our\np ack\ni gh\nclassi c</w>\nperfor mance</w>\nke t\nafter noon</w>\nrecor d</w>\nwin s</w>\npro ble\nâĿ ¤</w>\nf our</w>\nb ed</w>\nban k</w>\nd ance</w>\ns la\ncal led</w>\nmi ght</w>\na p</w>\npa st</w>\nðŁ ļ\ndiffe rent</w>\nit e\ngi ft</w>\nssi ve</w>\nchur ch</w>\nc us</w>\npro gram</w>\nho tel</w>\nic e\nma d\nsecur ity</w>\nen ge</w>\nd c</w>\nen ough</w>\nst a</w>\ne ty</w>\nde ad</w>\ng un\nhe ar\nm ir\nhu man</w>\ngre ss</w>\noun ds</w>\npi ece</w>\nbre aking</w>\ngar den</w>\nfi ght</w>\nvie ws</w>\nf ish</w>\nstar ted</w>\nrun ning</w>\ngre en\nser i\ns m</w>\nas k</w>\nd or\nde ath</w>\ne conom\ner i\nir d</w>\ns er</w>\nl unch</w>\nâģ ¦\nbo x\nnat u\nba se\nb an</w>\nf al\nglo bal</w>\nwil d\nwo w</w>\nout side</w>\nmo ve</w>\nle ad</w>\nan al\nmuse um</w>\non g\nha w\npow er\nthan k\nb ac\nchar ac\ncam pa\ndig ital</w>\nr o</w>\nop er\nde v\nw ol\np ati\nf a</w>\nm ale</w>\npap er</w>\nill ing</w>\nc s</w>\nâ ĥ\neduc ation</w>\nta ken</w>\ne ffe\nm ou\ns ad\n\" .</w>\nbas ed</w>\nstaf f</w>\ninclu ding</w>\nli ving</w>\na c</w>\nch ina</w>\nmo b\nstor m</w>\nlu ck</w>\nph il\no o</w>\ny n\ntra vel\nk el\nti al</w>\npr ice</w>\nboo k\nimport ant</w>\nbi o\np ool</w>\nny c</w>\nf ab\nlo ad</w>\n? !</w>\nchall enge</w>\ncr y\nser ve</w>\nwe ar</w>\nbu s</w>\nta in\nnu mber</w>\nro r</w>\nk at\ni z\nth ough</w>\nho sp\nm m</w>\nfa ir</w>\nut es</w>\nho t\npo p</w>\nfi ed</w>\ncam p\ndevelop ment</w>\nli br\nc ali\nem s</w>\nâģ¦ @</w>\nb ol\nis ed</w>\nstand ing</w>\nmo del</w>\nit a</w>\ng le</w>\nbro wn</w>\nima ge</w>\nve red</w>\nfor ce</w>\no il</w>\npar tic\nsh u\nda ily</w>\nla w\nse c\ncla ss\ncam p</w>\nholi day</w>\ncl in\nk ers</w>\npres ent</w>\ngam e\nincre di\ner ship</w>\ninter view</w>\nb ill</w>\ndu e</w>\nand y</w>\nab o\nin nov\nke y\nac ade\np il\nmo der\nst ars</w>\nbr and</w>\nf er</w>\nwee ks</w>\ncon si\npr e</w>\nsa fe\nwr it\ndi um</w>\nla unch</w>\nmarke ting</w>\nann ual</w>\nas si\ncour t</w>\nla dy</w>\nc ted</w>\nand a</w>\nin side</w>\nchil d</w>\nopp or\nsm ith</w>\ncentr e</w>\ngu e</w>\nâģ ©</w>\nf ren\nst y</w>\nfor t</w>\nent ly</w>\nis n</w>\nke ep\nto ber</w>\non y</w>\nbo y\nal d</w>\ncol la\nde mo\nle vel</w>\ncom pet\nad o</w>\nb our\nfanta stic</w>\nm ate</w>\ns u</w>\nsou th\noppor tun\nvers ary</w>\nlat er</w>\nbu d\nface book</w>\nla un\nster n</w>\np it\n! \"</w>\nma j\ngr am\ntb t</w>\nfi re\nhapp y\na ks</w>\nwh ole</w>\nactu ally</w>\nill er</w>\nell a</w>\nlo ts</w>\nal ex\nan ge\nlan ds</w>\nðŁĺ Ń\nen ter\nr ou\nepiso de</w>\np ed</w>\nin ten\nsh ire</w>\nwh o\npl an</w>\nh o</w>\nca ke</w>\nwe st\nmag az\nfre sh</w>\nc c\nn ar\nch ris</w>\nwr iting</w>\nw er</w>\nn om\nl o</w>\nmi dd\ndre am</w>\no l</w>\nti onal</w>\nde b\n> ></w>\nbe come</w>\ns i</w>\ngr and</w>\nall ing</w>\nhi stor\nri de</w>\ni red</w>\nsaf e</w>\nque en</w>\nci l</w>\nin tro\nvi l</w>\nd ani\n.. .\nar tic\nst at\nsh ort</w>\nor ing</w>\nsel fi\nmis si\ndo c\nb it\ng all\nb om\ni re\nse lec\nd ition</w>\nðŁĶ ¥</w>\nfri end\nbe at</w>\ngh ting</w>\nðŁĺ Ĭ</w>\npe ace</w>\nex hi\nant a</w>\nab ility</w>\nil lu\nj on\nqu ality</w>\ntri bu\nm es</w>\nplay ers</w>\nfa ir\ncu t</w>\nc ab\nsuc cess</w>\nb i</w>\nsu s</w>\npro mo\nsch e\nan ge</w>\nic o</w>\ncomm it\ncat ch</w>\nill a</w>\nkin d</w>\nfeel ing</w>\nqu o\ns ay\nanni versary</w>\nspo t</w>\nmo ther</w>\nan e</w>\np end\nyour self</w>\nop s</w>\napp le</w>\nmin utes</w>\np o</w>\ngr and\nri es</w>\nha ha</w>\ncare er</w>\ned ition</w>\nde c\nric k</w>\nam i</w>\nconcer t</w>\niti ve</w>\nge ous</w>\nd ly</w>\nt te</w>\nadv ent\ni g</w>\nli ghts</w>\nak er</w>\nsk y\nâĥ £</w>\nr ay</w>\nfini shed</w>\nw ay\ns d\nac coun\nðŁĴ ķ</w>\nck y</w>\nch el\nlit er\npain ting</w>\nlo s</w>\nst un\ntechno logy</w>\nn as\nma r</w>\nb il\nafric a</w>\nki e</w>\ney es</w>\ngol f</w>\nplu s</w>\nni a</w>\nit ec\nserv ices</w>\nwed ding</w>\nkno wn</w>\nte le\n.. ...</w>\nstar ts</w>\npa ren\nw ants</w>\nati onal</w>\nmon ths</w>\nwin do\nfav our\ner t</w>\nmagaz ine</w>\nex clu\nre ve\nb c\norigin al</w>\ne ss\nn al</w>\nan ti\nst ro\nt ice</w>\nstu dy</w>\nà ¤\nv ac\nnation al\nfi ve</w>\nra in\nve ment</w>\nu te</w>\nver se</w>\nem er\nar my</w>\npossi ble</w>\ngue ss</w>\nval ley</w>\nther n</w>\ncro w\nm r\ncol or</w>\non to</w>\npic k</w>\ncle ar</w>\ndar k</w>\nt ac\nwan ted</w>\nit ting</w>\ncan cer</w>\ngovern ment</w>\ndi e\nri se</w>\nz ing</w>\ncol d</w>\nf oun\nstu dio</w>\nstr ation</w>\nbro ther</w>\na head</w>\nsh el\nmic ro\nic ally</w>\nd au\nsig ned</w>\nvi ol\na x\nas se\ni o\nw re\nspl ay</w>\nch ick\naugu st</w>\npl at\nti ps</w>\nsp i\nhu man\ne asy</w>\nlo gi\nmi ke</w>\ngro w\nag re\nw w\nsh ad\nmo tiv\nwi de</w>\ntur ns</w>\nom g</w>\nv ar\nde fin\nsu g\nj im\nðŁĶ ¥\nt d</w>\ncampa ign</w>\nnam ed</w>\nre tweet</w>\nco p\nt v\nle av\nk is\ndou ble</w>\ns mar\nissu e</w>\nvil la\nin formation</w>\nli es</w>\nsto ck</w>\nn t</w>\ndi stric\nsh or\nmi x\ner o\nse p\nme x\nsee ing</w>\nli ve\nre min\nco de</w>\ng ur\ns c</w>\nwil d</w>\nl un\nh ood</w>\nspo t\nfa ther</w>\nfore ver</w>\nup d\ntra f\nf ly</w>\nne ed\ngra du\ntra in</w>\nma ke\ns ab\nbe y\nsi ze</w>\nlead er</w>\ntal ks</w>\ne u</w>\nlo g\nfo x</w>\ngor geous</w>\nle ss\nle ts</w>\nsur pri\nmy self</w>\nno te</w>\nli ves</w>\nf ru\nlo ved</w>\nse ver\nde m\nj i\nso c\nh old</w>\ndo gs</w>\nn i</w>\nâ ŀ\nlea ve</w>\nair port</w>\nben ef\nex pl\nshi ps</w>\ncomple te</w>\nach i\ngre at\nvin tage</w>\nj ack</w>\nro c\nwoo d\npri v\noff er</w>\ney e</w>\nver sion</w>\nte a</w>\nco ach\noff ic\nw ell\ng en</w>\ns at</w>\nh h\nyou th</w>\no x\n? \"</w>\nm t</w>\nmi x</w>\ng g</w>\nd le</w>\nnatu ral</w>\nbuil d</w>\nbreak fast</w>\nthin king</w>\ntheat re</w>\nmo on</w>\nber g</w>\ngo als</w>\ngeor ge</w>\nen e\nexc ell\nil ing</w>\ntun e</w>\ny ed</w>\ng ate</w>\nm it\nnet work</w>\njo e</w>\nh ello</w>\nf b</w>\ntu be</w>\nwe aring</w>\nath le\nstru c\nhar d\ngla ss</w>\ng ers</w>\nthro w\ng es</w>\nb t\nindu stry</w>\nmanag ement</w>\nali st</w>\ngo al</w>\nstre am</w>\ny el\na vi\nici ous</w>\no thers</w>\ns ki\nchri sti\nbir d</w>\ne sc\nm in</w>\ntr o</w>\nl t</w>\nj an</w>\nim p\nri ghts</w>\nsh a</w>\nor gan\ncent ral</w>\nar a</w>\nro ll</w>\nfavour ite</w>\nche ster</w>\nel se</w>\np ay</w>\ncar s</w>\nm ine</w>\nste p</w>\nprac tice</w>\nmaj or</w>\nh ang\nðŁĺ ĺ</w>\nn on</w>\nv ari\neng ine\nvol un\ndi a</w>\ni led</w>\narch itec\np ink</w>\nd s\nth y</w>\nwa sh\nweb site</w>\nba g</w>\ncontro l</w>\nel li\nf ra\nan sw\nd ence</w>\ny u\nr on</w>\nol a</w>\ng in\ndr in\nli c</w>\ncou ple</w>\nsp ar\ng on</w>\ncre ate</w>\nc t\ncelebr ating</w>\nde ep</w>\ne at</w>\nte e</w>\nvo ice</w>\ndro p</w>\nvis it\nat ors</w>\nsta dium</w>\nf t\nw is\nro l\ngra de</w>\nfam il\npo ints</w>\nre pre\nw as\ntraf fic</w>\njap an</w>\nor g\nhon or</w>\ntex as</w>\nman u\nâĻ ¥</w>\nsafe ty</w>\nre r</w>\nb ag\nem plo\nrele ased</w>\nre gu\nak a</w>\nn av\nro le</w>\nsen ior</w>\nspec t</w>\ncro ss</w>\nlin es</w>\nbe st\np ack</w>\ns in</w>\nti e</w>\nmis sing</w>\nsun set</w>\nli ber\nis ing</w>\nj ay\nsk i</w>\nchampion ship</w>\nac tiv\nla dies</w>\nplay ed</w>\ny y\npu bl\nal o\npri de</w>\ns r\npa ki\nlu x\nsur vi\nck ed</w>\ne ts</w>\ncho col\naustr alia</w>\npar is</w>\nmi les</w>\nh at\nment al</w>\nal a</w>\nme an</w>\nmob ile</w>\nen a</w>\nin si\nf ound\nchi ef</w>\nt ag\nincredi ble</w>\nre turn</w>\nÃ ©\ngoo gle</w>\nfren ch</w>\ncre w</w>\nhal lo\nali an</w>\nj az\nch er</w>\nsil ver</w>\nnor th\neng lish</w>\nbase ball</w>\nc af\nlim ited</w>\nfollow ing</w>\napp reci\near th</w>\nk ir\nve mber</w>\nw ed</w>\np tion</w>\ng ed</w>\noc tober</w>\nfl ori\nc r</w>\nen cy</w>\nga ve</w>\nlor d</w>\nstu ff</w>\nber ry</w>\npo st\nsm ile</w>\nbro ad\nst ate\ngg er</w>\nme ans</w>\nic y</w>\ngu n</w>\ny o</w>\nma ster</w>\nbur g</w>\nhan ds</w>\nni e</w>\n/ /</w>\nuni on</w>\nbrit ish</w>\nbig gest</w>\ndistric t</w>\nam ing</w>\nh il\no ce\nper son\npas s</w>\nen vir\nscho ols</w>\narri ved</w>\nanc es</w>\ninsp ired</w>\nex pla\nbe n</w>\nlibr ary</w>\nbo tt\nam p\nste ph\ncont act</w>\nb ang\nm s\ncali for\nt old</w>\nbatt le</w>\nb b</w>\nchic ago</w>\nâľ ¨</w>\nstr ate\nsh i</w>\nde ce\n- )</w>\nad d</w>\nla b\nj ones</w>\nleg end</w>\ncast le</w>\ning er</w>\nst ance</w>\nbe l</w>\nur a</w>\nre fu\nlead ers</w>\npo t\nse x\nh ic\nartic le</w>\nki d</w>\nfr ance</w>\nx x</w>\nex e\ngui de</w>\nvolun te\npr int</w>\nal i</w>\nce o</w>\ntwee ts</w>\nw x</w>\nscen e</w>\nvol u\nant i</w>\nh an</w>\nas soci\nshar ing</w>\nro se</w>\nmini ster</w>\nsh er\nin ste\ncle an\ndemo cr\npo ster</w>\nsk in</w>\np sy\npro per\ncra zy</w>\ni am\no re\nin i</w>\nany thing</w>\npo d\nmo ving</w>\ncl ick</w>\nex plo\ncom b\ncra ft</w>\nf i</w>\nbloo d</w>\nis ra\npubl ic\nd ent\nol ym\neng land</w>\na si\nch er\nfac t</w>\nenvir on\nhar ry</w>\ng one</w>\nme dic\nenjo ying</w>\njust ice</w>\nj r</w>\nindi an</w>\nwi fe</w>\ns ound</w>\nt es</w>\ndra wing</w>\np al</w>\nide a</w>\ncr it\nju li\nil er</w>\nwar m</w>\ncl ar\nthou ghts</w>\ndef en\ncoun cil</w>\nintro duc\ndi ed</w>\njan u\nan i</w>\ns end</w>\nli er</w>\nm l\nintere sting</w>\ntra de</w>\nwin d</w>\nb ay\ns ac\nanc y</w>\nsour ce</w>\nb es</w>\norg ani\nar ly</w>\nlar ge</w>\nff ici\nta g</w>\nu t</w>\nde sp\no es</w>\ntit le</w>\nsy m\npic tures</w>\nop en\nwom en\nsho wing</w>\nri a</w>\nle ast</w>\nlead ership</w>\ncur rent</w>\nelec tr\nval ent\nlist ening</w>\nc key</w>\ngener al</w>\nde ser\ndu ce</w>\n; )</w>\nc ent</w>\nðŁĺį ðŁĺį\nsco tt</w>\npo or</w>\nselfi e</w>\nev ents</w>\ni on</w>\nwr ong</w>\nde v</w>\nh ill\nsep te\ncul ture</w>\nl ine\nsor ry</w>\ns ent</w>\nsi ster</w>\nce pt</w>\nk ri\nno vember</w>\nar i</w>\nannoun ce</w>\nz ation</w>\nbr an\ng ent\nd u</w>\nl en\nper s\nf m</w>\nmart in</w>\no p</w>\ne mb\nom e\nmidd le</w>\nsuc cess\npe ter</w>\njanu ary</w>\nf lu\nrac ing</w>\nd av\nbi ke</w>\nðŁı »</w>\npe t</w>\nshoo t</w>\nprofe ssi\nfeat uring</w>\nsepte mber</w>\nnow playing</w>\nsta ur\nz a\non ic</w>\nqu ick</w>\nbas ke\nspe aking</w>\nmil it\nz er</w>\nchick en</w>\nb ell</w>\ns ad</w>\nco ast</w>\nlo ving</w>\ny ers</w>\nd j</w>\npan el</w>\nver age</w>\ns wit\nic ks</w>\nb ou\ncalifor nia</w>\ns am</w>\nparen ts</w>\ner o</w>\nk illed</w>\nph ys\njo bs</w>\nmi gr\nan th\ne mo\nhallo ween</w>\nand er\nc m</w>\ncompet ition</w>\ne ag\ns ket\nsp ir\nmay be</w>\nexclu sive</w>\napp e\njour ney</w>\nscre en</w>\nfor d\ni o</w>\nh ate</w>\nu g\nsou l</w>\nher o</w>\nsoci ety</w>\nsy n\ngu it\nn h\nd j\nas es</w>\nim pre\nti me\nsal es</w>\nd d</w>\nf ts</w>\nsumm it</w>\nstun ning</w>\nom s</w>\ntur ned</w>\ncle an</w>\nsof t</w>\nbe at\nre staur\nde red</w>\nen ces</w>\nma gic</w>\ndi o\nsh ine</w>\ngu est</w>\nhealth y</w>\nexhi b\nstor ies</w>\npo pu\nn is</w>\nel a</w>\nbel ow</w>\nfun ny</w>\nresul ts</w>\ns ne\ncur rently</w>\nar d\ndown load</w>\nf light</w>\nm al</w>\nf ine</w>\np ad\nch u\nent ed</w>\nh at</w>\nðŁĳ ı\nste ve</w>\nj o</w>\nmar k\nr at\nb all\np c</w>\np on\nb by</w>\no li\nar ts</w>\nas ure</w>\nbow l</w>\natt ack</w>\nmi c</w>\nde ar</w>\nran ge</w>\nen ter</w>\nchocol ate</w>\nbr illi\nac cess</w>\n, \"</w>\n? ??</w>\nch ap\ncon st\nt n\nmat ter</w>\nblu e\ngall ery</w>\nem p\nwork shop</w>\nlead ing</w>\ny ours</w>\nbaske tball</w>\nw anna</w>\nth u\n_ _</w>\nmar ri\nsle ep</w>\nbi a</w>\nch e</w>\nma d</w>\nimp act</w>\no wn\nsi r</w>\nchan nel</w>\neuro pe</w>\ne sp\nk itch\nhosp ital</w>\nw ra\nroy al</w>\nf s</w>\nne u\nqu ar\nne y\nac ks</w>\nch ase</w>\npp y</w>\nst al\nat ely</w>\nti m</w>\ndece mber</w>\nr are</w>\nper form\ncre am</w>\nwe ight</w>\nch oo\nni ght\nha ven</w>\nfr anc\nkh an</w>\nbuil t</w>\nhel ping</w>\ntru st</w>\nty pe</w>\ngol den</w>\nta x</w>\ns now\ns wi\ndi sa\nquesti ons</w>\nve y</w>\nli ght\nc n\ncl oud</w>\nthom as</w>\nag ed</w>\nsh ou\nte ams</w>\ngr an\nre ason</w>\na a</w>\nyou tube</w>\nv p</w>\npi zz\nmanag er</w>\nbur y</w>\ncre dit</w>\ntre at</w>\nma x</w>\ni k\nma in\ng ing</w>\nde ad\npro bab\nye ah</w>\nã Ĥ\nbr and\nso li\npl ant</w>\nta yl\ngir l\nðŁĺ Ń</w>\nnam ent</w>\nau to\nmess age</w>\nko re\nn ur\nter r\nag u\nma p</w>\nsen ting</w>\nlo ves</w>\ngi ves</w>\ng ab\nz en</w>\nro bert</w>\ncon fir\nw ars</w>\no m</w>\nsta in\ncam era</w>\nand er</w>\nwon der</w>\na b</w>\nca p</w>\ns old</w>\nsu it</w>\nwal king</w>\ncontin ue</w>\neffe c\ndau ghter</w>\nd anc\ncha in</w>\nmul ti\nki d\ny an\nchampi on</w>\nv o</w>\nta ins</w>\nho st</w>\nmin i</w>\nmis sed</w>\nre sc\nly n\nfin ish</w>\ndel icious</w>\ns as\ntayl or</w>\ni b\npro mis\nproduc ts</w>\nmoun tain</w>\nflori da</w>\nregi ster</w>\ntre at\nrec ent</w>\nfe male</w>\nboo th</w>\nmat t</w>\nve hic\ns op\nmo tor\nsuppor ting</w>\nphi c</w>\nex tre\ndr ink</w>\nlan e</w>\nth ird</w>\np s\ncon stru\nce re\nfar m</w>\nðŁİ ī</w>\ntu red</w>\nðŁĳ ī</w>\nc ats</w>\na j\ngi e</w>\nshoo ting</w>\nas ked</w>\npaki stan</w>\nam e\nm b</w>\ng il\nleg al</w>\nsqu are</w>\nin vol\ndra w</w>\noo oo\n!! !!\nopportun ity</w>\np y\ne i\nb ts</w>\nteach er</w>\ncharac ter</w>\njohn son</w>\nbr on\nly wood</w>\nch ine\nc ing</w>\nc ine\nd ge\ngam ing</w>\nrussi a</w>\nci a</w>\nquo te</w>\nric h</w>\ngo v\nflow ers</w>\nsp iri\nst in</w>\ngrow th</w>\nðŁı ¼</w>\ncomm er\nj uni\nmu m</w>\nr an</w>\ns na\na ren\nc b\nac tor</w>\ncol or\nsi t</w>\npa ir</w>\nch i</w>\nbo w</w>\nacade my</w>\nhel d</w>\nr ang\nme tal</w>\ny l</w>\nac tive</w>\nprobab ly</w>\nt ch</w>\nneed ed</w>\nspe e\ncho ice</w>\nital y</w>\nry an</w>\nðŁĩ º\nflow er</w>\nv it\nm n</w>\nfound ation</w>\nb ak\nsi ons</w>\nne igh\nf loo\nhe ard</w>\nre mo\nfre sh\ning ing</w>\nre f\nto wn\ncl ou\nje sus</w>\nspiri t</w>\ncou ldn</w>\nz es</w>\nðŁĴ Ļ</w>\nwilli ams</w>\npro ce\nmoder n</w>\npro cess</w>\nsho es</w>\ncre ated</w>\ntri c</w>\nissu es</w>\nann e</w>\natt en\nde but</w>\nh r</w>\nn it\nsti g\na po\ne ps</w>\nz u\nã Ģ\nsi x</w>\ncar ds</w>\nlan gu\nfam ous</w>\ntour nament</w>\nse l</w>\ne bay</w>\ny n</w>\nst on\nk ick\nannoun ced</w>\nk am\nvo c\nbrilli ant</w>\nhou se\nche ese</w>\nwar ri\nmus ic\nho ckey</w>\nðŁĺĤ ðŁĺĤ</w>\nsk ills</w>\nau tom\nsmar t</w>\nmed ical</w>\nmon y</w>\ne x</w>\ngu ar\ngi ve\npers onal</w>\nven tion</w>\nal li\npre ss\nflo or</w>\nm c</w>\nvictor y</w>\nhi m\nsimp le</w>\nth or\nðŁĩº ðŁĩ\nta il</w>\nlu cky</w>\nale x</w>\nqu ite</w>\nbo t\nssi ons</w>\nchall eng\nc ann\namaz on</w>\nh ell</w>\nb ought</w>\n) :</w>\ned y</w>\nsecre t</w>\nproduc tion</w>\ninde pend\nde fe\nad ded</w>\np r</w>\np ag\nbe d\ngre atest</w>\nwith in</w>\nj ay</w>\nðŁ ¥\nire land</w>\nre ly</w>\ns d</w>\nte xt</w>\ndri ving</w>\npro gram\nspe ed</w>\ncol um\nstr on\nÃ ©</w>\nfore st</w>\nâ ĸ\nmach ine</w>\nco in</w>\nsc ar\noun t</w>\nbi e</w>\n¡ ï¸ı</w>\npor tra\ncomm on</w>\nwre st\nrecei ved</w>\nkno w\ninve st\npl ans</w>\nac cor\nad op\nter y</w>\nre ali\np p</w>\nk al\nart work</w>\nme an\ngo d\ninste ad</w>\nan ci\nmotiv ation</w>\nas ing</w>\ninspir ation</w>\nup coming</w>\npolit ical</w>\neuro pe\nm ers</w>\nheav y</w>\nðŁĳ į</w>\nfe bru\nscot land</w>\nou gh\nb t</w>\nbo ss</w>\nsche du\nspe ak</w>\nn ick\nu red</w>\nin o\ne k\nri sk</w>\ntor y</w>\npres ents</w>\nb on</w>\nru g\nst ates</w>\nexhib ition</w>\nil o\nm ill\nbr ought</w>\n: -)</w>\ntou ri\ncom e\noffici ally</w>\nchampi ons</w>\ndo ors</w>\nre p\npo se</w>\nex tra</w>\nk ings</w>\nsoc cer</w>\nsqu ad</w>\napp lic\nat a</w>\nsome times</w>\nt ari\nexcell ent</w>\nðŁĺ ĺ\nstra ight</w>\ncar ol\nri p</w>\nâĢ į\ngra phic</w>\nm ol\nelec tion</w>\nfebru ary</w>\nas ons</w>\nl i</w>\ndi r\nm t\nn ick</w>\nu su\nm rs</w>\ncom ics</w>\ninst itu\ncor por\nv i</w>\nðŁĻ ı\ntu ral</w>\ndi se\nac ci\nwe are\nam ong</w>\nsho pping</w>\nt ill</w>\nwh at\ncha ir</w>\nsp an\nchine se</w>\ninnov ation</w>\njo y</w>\nk it</w>\ncent ury</w>\nob ama</w>\nph ili\nf c\nre ach</w>\nc iti\nul ous</w>\nn on\nd ang\nhapp ening</w>\nbur n</w>\np el\nor ange</w>\nd v\nk ick</w>\ncla im\ning ham</w>\nph y</w>\nno v</w>\npod cast</w>\nwh i\nni ghts</w>\near lier</w>\nbe ar</w>\nla h</w>\nexc iting</w>\nor a</w>\ngi ven</w>\ns lo\nmemor ies</w>\ncontin ues</w>\nproduc t</w>\ngh o\nc d\nkno ws</w>\nðŁİ ī\npubli shed</w>\ndiscu ss</w>\ny ard</w>\ni phone</w>\ntri es</w>\nw all\nfe b</w>\nare n</w>\ntru th</w>\nwin ners</w>\ntu re\nditi onal</w>\nmilit ary</w>\nproble m</w>\nm and\ndo g\nlo ss</w>\nc ric\ncan adi\nve ter\nvilla ge</w>\n\" ,</w>\ny r</w>\nun g</w>\ndon ald</w>\nag ing</w>\nbir ds</w>\nsci enti\nle s\nth is\nregi on</w>\ntic al</w>\nitt en</w>\nil a</w>\nðŁĺ İ</w>\nd ad\ndi am\nabo ve</w>\nst ren\nli t</w>\np ir\nla b</w>\nfo cus</w>\nbus y</w>\nd ur\napp ly</w>\ns ma\nauth or</w>\nac i\nexe cu\ndom in\nre la\njack son</w>\nat o</w>\nwash ington</w>\nðŁĻ Į\nk ill</w>\npopu lar</w>\nce ment</w>\nro ad\ne ating</w>\nloc ation</w>\nv ent\nar re\nn an\ncu sto\nadvent ure</w>\nor din\nspor t\nul t</w>\nlo ck</w>\nquesti on</w>\ndri ver</w>\nland sc\non i\nk ins</w>\np d\njor dan</w>\nte red</w>\nk k\na f</w>\nchil d\ns p</w>\njust in</w>\nen i\ns elling</w>\nz o\nwh it\nbo ston</w>\npartic ip\nsig ning</w>\nhapp ened</w>\nhe at</w>\nm am\ndre ams</w>\nlo ws</w>\ngra ph</w>\nthe day</w>\nhead ing</w>\nbr o</w>\nble ssed</w>\nvi c</w>\nve gas</w>\nh d</w>\nin ning</w>\nro man\nand ro\nden ti\nu se\nc it\npro gress</w>\nwrit er</w>\nbo b</w>\nff s</w>\ngro wing</w>\nb ly</w>\naw are\nex am\nsp ent</w>\nbe t</w>\nsc ore</w>\nbey ond</w>\ndo cu\nad el\ns f\ncou ra\ncolla bor\nin c</w>\npriv ate</w>\nbo at</w>\n* *</w>\nz one</w>\np ha\nb ill\nto tal</w>\nplan ning</w>\nto wards</w>\nplac es</w>\npre view</w>\ncre ative</w>\ndam n</w>\nide as</w>\nse ems</w>\npo ten\nsay ing</w>\ndi splay</w>\ns w</w>\na qu\nlou is</w>\nby e</w>\nli l</w>\ne mail</w>\nwe stern</w>\nger many</w>\nell er</w>\nre s\nf ant\nment ary</w>\nde als</w>\nric hard</w>\njer sey</w>\nstren g\nra d\npizz a</w>\nmon d</w>\nw are</w>\nl ac\ng i</w>\nar chi\nc d</w>\nyel low</w>\nrec ently</w>\nre ach\nà ¹\nkitch en</w>\ndesig ned</w>\ntr y\ng al</w>\nrestaur ant</w>\nat ure</w>\nw w</w>\nj as\nl ma\nðŁĳ Į</w>\npa in</w>\nav o\nmin ute</w>\nsch ol\nther ap\ntic ket</w>\nd ry</w>\njap an\nditi ons</w>\nter ri\nsel ves</w>\nhapp en</w>\nt up</w>\nma g</w>\ncop y</w>\nsh er</w>\nfree dom</w>\nf ile</w>\nspeci ally</w>\ntor onto</w>\nlo ad\ng ary</w>\nre y</w>\nansw er</w>\nlo y\ncau ght</w>\npri ze</w>\nu ne\nfic ation</w>\nni ger\nsy d\ntou ch</w>\nfeat ure</w>\njaz z</w>\nrecor ds</w>\nhim self</w>\ndi sh</w>\nro ber\nspot ted</w>\nma ster\nwa ve</w>\nfin als</w>\nbu ll\nfor um</w>\nal d\nre comm\nch a</w>\na e</w>\nd oo\ninst ru\ntru ly</w>\nl g\nin k\nbro thers</w>\nde st</w>\nj im</w>\nm it</w>\nclo sed</w>\nis on</w>\ntri ed</w>\ns anta</w>\naf fe\nw an</w>\nhor se</w>\ng row</w>\ncamp us</w>\nrel ation\nnati ve</w>\njour n\ngo v</w>\no ct</w>\nk it\nb ound</w>\npart ner</w>\nre ma\ncrow d</w>\n! )</w>\nc alls</w>\nra il\nqu ali\nsolu tion</w>\ncon test</w>\ncon vers\nsn ap\nb ase</w>\nin iti\nta x\ny e</w>\nent repre\nit or</w>\nconstru ction</w>\nfoo d\npresent ed</w>\nn ings</w>\ncli mate</w>\nk m</w>\nmo del\nb j\nblo ck</w>\npresent ation</w>\ndre am\nfi x\nc alling</w>\nbus ine\ncon gress</w>\nunder stand</w>\nwe b</w>\nval ue</w>\nï¸ı âĥ£</w>\nmex ico</w>\nit ely</w>\nki m</w>\nchar ity</w>\nref lec\nbl an\nfl ying</w>\nanal y\nfamil ies</w>\nb and\nreci pe</w>\ncelebr ation</w>\nac cep\nar y\nto t\ng b</w>\nintere sted</w>\ncap tain</w>\nâĻ ¥\nti p</w>\nab sol\nbra z\ninve stig\no logy</w>\nde c</w>\ntru ck</w>\nver ing</w>\nc lear\ndon t</w>\ngo tta</w>\nad vis\nbeg ins</w>\nma ss\nde scri\nblo ck\nk im\ndavi d\nson gs</w>\nmemor ial</w>\nfeat ures</w>\nsu stain\n' .</w>\ngra b</w>\njo se\nv a\ncon serv\nse ts</w>\nman chester</w>\nfi ghting</w>\nde gre\nag a</w>\nin d</w>\nsle ep\npos ition</w>\nha ir\nsig ns</w>\npol icy</w>\nit o</w>\nal ert</w>\nst am\nsp end</w>\nw y\nabsol ut\nd m</w>\nanim al</w>\nmy ster\nsuccess ful</w>\nproble ms</w>\nro bo\nk ay\ngar den\np d</w>\nmay or</w>\nd ale</w>\nt ol\noff ers</w>\nvis iting</w>\nfriend ly</w>\ntre es</w>\noffic er</w>\naccoun t</w>\nke vin</w>\nðŁĳ į\ngi ant</w>\ncontin u\ncon su\ntr act</w>\nn fl</w>\nðŁĺ Ĭ\nh q</w>\nb ility</w>\na ar\ndis ney</w>\nte en</w>\non ed</w>\nwh ite\ntra iler</w>\nde dic\nal one</w>\nabsolut ely</w>\ndig ital\nwilli am</w>\nin ation</w>\ns wa\ne e</w>\nenti re</w>\nger man</w>\nro ll\nh its</w>\nco st</w>\nst ay\nth a</w>\nali ve</w>\naccor ding</w>\nco t\nliter ally</w>\nher it\nre ti\nhaha ha</w>\nexper i\nli kes</w>\ng t</w>\nste el</w>\n__ __\nch air\nchristi an</w>\nto wer</w>\ndiffe rence</w>\nm d</w>\ntre ss</w>\nmi d</w>\nprin ce</w>\nafric an</w>\nfe der\nfoo t</w>\ncar ri\nser ved</w>\nr ice</w>\nsh all</w>\nfeat ured</w>\nck er</w>\nrec ru\npo e\nsen se</w>\nni fic\ncom edy</w>\ncont ent</w>\nf at\npo sted</w>\ncon tribu\ntim ate</w>\nli ver\nmb le</w>\ninter net</w>\nag e\neurope an</w>\ncl ing</w>\ngla d</w>\nff ic\nsc o</w>\nak es</w>\nel le</w>\nter min\nton y</w>\np ale\ncol our</w>\nseri ous</w>\npat ri\nmovi es</w>\nb m\nprofessi onal</w>\nad o\nal u\nbr inging</w>\nf alls</w>\nisra el</w>\nter m</w>\nlangu age</w>\nbro ok\nman n</w>\ncommun ic\ncan not</w>\nac ti\np he\ny an</w>\nentrepre ne\ntur key</w>\nlog ical</w>\nlon g\nar m</w>\nur s</w>\nwork ers</w>\ning ly</w>\ngg s</w>\nri c</w>\ntu al</w>\nrecei ve</w>\nop ens</w>\nge ar</w>\nsoci al\nfe et</w>\nc king</w>\nad ver\nfin an\nfe els</w>\nsp la\nh r\nea ster</w>\nbra in</w>\nã ģ\nfi g\nle dge</w>\nne arly</w>\nprote ct</w>\nma ssive</w>\ne th\naw a\nðŁĺ ģ</w>\ny rs</w>\naware ness</w>\ndefin itely</w>\nk n\nimag ine</w>\nk u</w>\nsyste ms</w>\nðŁĳ ı</w>\nf as\nli k\nprovi de</w>\nam o\ndisco ver</w>\ninf lu\nma ker</w>\ng az\nfit ness</w>\nstre et\ner s\nte d\nw c\nys is</w>\npos itive</w>\nhel ped</w>\nque st</w>\nandre w</w>\nbra d\nb in\nhang ing</w>\nl ing\nbri ght</w>\nse ction</w>\nma ss</w>\nðŁĻ Į</w>\nfollow ers</w>\nho sting</w>\ntem por\nfla g</w>\na ve</w>\nlet ter</w>\nk ur\nre qui\nof ten</w>\ncry p\nsu ff\nâļ ½\nrussi an</w>\ntreat ment</w>\nal le\nha y\nl an</w>\nkeep ing</w>\nhol y</w>\npower ful</w>\npre dic\nfun d</w>\ne specially</w>\nwindo w</w>\nje wel\nil y\nðŁĴ ľ</w>\ngener ation</w>\napp a\nseri ously</w>\no d\nðŁĺĤðŁĺĤ ðŁĺĤ</w>\ncer ti\niri sh</w>\nðŁĳ Į\nmi ami</w>\nbe th</w>\nv ity</w>\nse cu\nche f</w>\ncri me</w>\ngraph y</w>\nma x\narti sts</w>\nre volu\ngu ard</w>\nspee ch</w>\nu c\nupd ates</w>\nfac es</w>\nst ant</w>\nchang ed</w>\nrepor ts</w>\nlow er</w>\npe ar\nn c</w>\nk il\nloo ked</w>\nspe aker</w>\ns f</w>\nre spect</w>\nok ay</w>\noce an</w>\ns itting</w>\narchitec ture</w>\ntra il</w>\nse at</w>\ni ra\nle g</w>\njapan ese</w>\nd am</w>\nu lar</w>\nsw im\npolit ics</w>\nfinan cial</w>\nol d\nmou th</w>\nat temp\nde stin\nfi shing</w>\natten tion</w>\nme m\nchang es</w>\ndeci ded</w>\nreli gi\ng in</w>\nc av\nz z</w>\nad am</w>\nma c</w>\nwr ite</w>\nbeg in</w>\nsc ul\nal ter\nis s</w>\nath on</w>\nimag es</w>\nm oo\njo ined</w>\nðŁĺ ī</w>\nâŀ ¡ï¸ı</w>\npas sed</w>\nmu sli\nh ir\nlar gest</w>\ncam er\ncom ic</w>\ngh ted</w>\nrug by</w>\nbur gh</w>\ngg ing</w>\nte sting</w>\npre par\nlau gh\nal ed</w>\nimpro ve</w>\nbeli ev\nadv ice</w>\nsha res</w>\nhe art\ntur ning</w>\ns b</w>\nt el\ncaf e</w>\nn es</w>\ndani el</w>\npat ter\nt z</w>\nse tt\npar k\nc and\nst ick</w>\nhapp ens</w>\nbri an</w>\nne west</w>\ne pic</w>\nad or\nki es</w>\nwar ning</w>\nanim als</w>\ncusto m</w>\nar c\ndi an</w>\ngol d\ncor e</w>\nt f</w>\nc ity\npan ts</w>\nre ality</w>\ncon fi\nin ju\nfo x\ngu il\nk new</w>\nâĺ º\ncor rec\nitu de</w>\nd den</w>\n. #</w>\nre duc\npas s\nf on\ny a\now ner</w>\nre turns</w>\nn c\ne ast\nap ol\nin sur\nth o</w>\nsi m\njuni or</w>\nbe e</w>\nang el\natt le</w>\nelec tric</w>\nhor ror</w>\ncra sh</w>\ne ye\npat h</w>\nsou thern</w>\nemplo ye\nge o\nt an</w>\nha z\nr ally</w>\nðŁı »\nproper ty</w>\nwas n</w>\nenjo yed</w>\ngre y</w>\ng as\nbre w\nnor thern</w>\nhol ding</w>\ng p</w>\nta ke\nch art</w>\nly n</w>\ndr ama</w>\nz o</w>\npa id</w>\nthrow back</w>\ncu p\ndiscu ssion</w>\ndown town</w>\nw ill\nle w\nb is\nt ary</w>\nbre ad</w>\nup on</w>\nr ate</w>\nteach ers</w>\nit ation</w>\nanc ed</w>\ncy cle</w>\nchoo se</w>\nd c\nir an</w>\nco w\nda ve</w>\nra ise</w>\nprin cess</w>\nfa ith</w>\n- ></w>\nindu stri\nsp ain</w>\nguit ar</w>\nfac ts</w>\nm n\nsp en\ncour te\ngo tt\nprojec ts</w>\nau di\no sc\npe ter\ns and</w>\nintere st</w>\nhapp iness</w>\nven ue</w>\nsol di\nsurpri se</w>\npoten tial</w>\nper io\ncustom er</w>\ni i\ng ni\nmanu fac\ne co\nbro ken</w>\nsing er</w>\nvel s</w>\nwal es</w>\nhu s\nin j\nf our\ntal ent</w>\nd ying</w>\nmat the\nfil m\njo ining</w>\ns ell</w>\nj ar\nlma o</w>\nsur ger\nbb c\nsour ces</w>\nau stin</w>\nni k\nchar les</w>\nf am</w>\nprin ci\nange l</w>\ncas h</w>\nlo t\no red</w>\npla ys</w>\npl ate</w>\ndon e\nmemor y</w>\nbr ings</w>\nn ba</w>\nsolu tions</w>\nteach ing</w>\ngr ace</w>\ncir cu\nhel ps</w>\nfoun der</w>\nmar y\nexpl ore</w>\nde cor\npar ts</w>\nch o</w>\ninte gr\nha u\nis es</w>\npu tting</w>\nin er</w>\nr it\nv y</w>\nmic hel\nblu es</w>\nevery day</w>\nfor ms</w>\nbi o</w>\nye ar\np in</w>\nt ter</w>\nspr ing\n) )</w>\npo t</w>\nal ing</w>\nperform ing</w>\nsh an\nplan et</w>\nmus ical</w>\nhead s</w>\nit alian</w>\nstru gg\nâĢį âĻ\nw ings</w>\npu mp\nh h</w>\ntr ou\na id</w>\npri me</w>\near th\npa int</w>\nmon t\nam y</w>\nbb c</w>\nfab ulous</w>\nfru it</w>\nandro id</w>\nbour ne</w>\ncere mony</w>\nenti al</w>\n? ?\ndeb ate</w>\non ing</w>\ndra ft</w>\nsol ar</w>\nt x</w>\nj am</w>\ncor n\n!! !!!</w>\nbro o\nmil k</w>\npo sed</w>\no hi\nmo vement</w>\nb ren\npart ner\np g</w>\net te</w>\nar ies</w>\nsh out</w>\nn g</w>\nleav ing</w>\nt ells</w>\nsen s\nta ste</w>\nkel ly</w>\nwor l\ngy m</w>\nric h\ne gy\npi d</w>\nma s\nâ Ĥ\ncourte sy</w>\nfran k</w>\nincre ase</w>\nwr itten</w>\npp ers</w>\nre l</w>\nha i</w>\ns as</w>\ns ound\ntt i</w>\nw ich</w>\nri ver\n.. .\"</w>\na g</w>\nfel low</w>\nro me</w>\nsm all\ngen cy</w>\nic an</w>\nlux ury</w>\npro of</w>\nme t\nwild life</w>\nmom ents</w>\nra ther</w>\ncor ner</w>\ncom pe\ncanadi an</w>\nlik ely</w>\ntherap y</w>\nli am\neconom ic</w>\nindi e\nrou te</w>\nfi ght\nho pe\nse tting</w>\nant ly</w>\ncro ss\nfant asy</w>\nde e\nsket ch</w>\ncomp li\nym i</w>\nru les</w>\nengine ering</w>\nfig ure</w>\nro w\n. ,</w>\nf w</w>\nsyd ney</w>\nw ou\nt ation</w>\ndre w</w>\nus es</w>\nthe re\nsp read</w>\nstruc ture</w>\npat rick</w>\nappa rently</w>\nro s\nh ills</w>\nw we</w>\nann y</w>\ncom mission</w>\ndi v\nf ying</w>\ncon sul\nanal ysis</w>\nex i\nten nis</w>\nvehic le</w>\nðŁĺŃ ðŁĺŃ\nas s</w>\nhigh ly</w>\nop ened</w>\nb ann\nðŁĴ Ļ\nmp h</w>\nwi shing</w>\nv or</w>\nfi f\ngive away</w>\nr r\nra y\nje ss\ng at\nic ymi</w>\nx it</w>\nhigh est</w>\nyor k\npi e</w>\ninvol ved</w>\nhigh er</w>\nri e</w>\nmal ay\nint elli\ndesp ite</w>\nche e\nsar ah</w>\nbe an</w>\nreco gni\nar sen\ntal ented</w>\npas sion</w>\nic h\nab c</w>\nlead s</w>\ndise ase</w>\nv is</w>\nse c</w>\npre senting</w>\nm illi\nhol e</w>\nsho ts</w>\nde part\nsurger y</w>\ngov t</w>\nb in</w>\ndu al</w>\ne vi\nlon ger</w>\nev ol\nscre en\nportra it</w>\net c</w>\nlo se</w>\nch at\np en</w>\np i</w>\nom a</w>\ns ick</w>\ner c\ncompan ies</w>\nen try</w>\nplan e</w>\ngr y</w>\nven e\nliver pool</w>\npremi ere</w>\nsha red</w>\na red</w>\nfil ms</w>\nir a</w>\nholi days</w>\ncric ket</w>\nici an</w>\nv ing\n. )</w>\nul timate</w>\ndi vision</w>\ncon duc\nse pt</w>\nfor ces</w>\nmon t</w>\ns mart\ndisa pp\nsun shine</w>\nin d\nb less</w>\nma de\ncol ors</w>\nfran k\nir on</w>\nbott le</w>\ns go\nm ood</w>\nj ason</w>\ner ic</w>\nbir th</w>\nte en\nrespon se</w>\ntar get</w>\nstate ment</w>\nfe ar</w>\nth el\nal um\nar ab\nbl in</w>\ndirec tion</w>\nste ps</w>\ner ial</w>\nwor ked</w>\nat l\nðŁĴ ķ\nfel t</w>\npol i</w>\nscen es</w>\nhom es</w>\nb ell\ne at\nate ful</w>\nt in</w>\nl ace</w>\nfol ks</w>\np se</w>\nan n</w>\nwis dom</w>\nfa v</w>\nbut ter\ns r</w>\nare as</w>\nsm oo\nbi z</w>\ndg es</w>\napp o\nmo re\nthe m\neffe ct</w>\nwindo ws</w>\nsun ny</w>\ncap ital</w>\ntot ally</w>\nc ities</w>\ngr ant</w>\nmb ers</w>\ns low</w>\nau tu\nil ities</w>\nw ro\nri sing</w>\nst ics</w>\nviol ence</w>\ni gh</w>\nqu ot\nh it\nt c</w>\nherit age</w>\nbu ff\nne s\nz ar\nden tial</w>\nex ac\ned ge</w>\nde ep\naren a</w>\nbe came</w>\nbenef its</w>\nmar ks</w>\nmb er\na z</w>\nam es</w>\npre ci\ndra gon</w>\nre g\nd ings</w>\ndo s</w>\nðŁĴ ª\nn el\ns ity</w>\nme al</w>\ndi st\nleg end\npur chase</w>\npic al</w>\nst ick\nf at</w>\ndu ba\nprofe ss\ncar to\npro f</w>\ncoun tries</w>\nrespon si\nse qu\nfa b</w>\ntribu te</w>\nhon ored</w>\nprac tic\npur ple</w>\nan ton\npa red</w>\nt ough</w>\nsumm er\nenviron ment</w>\ns ons</w>\nðŁĻ ı</w>\nm ps</w>\ngi es</w>\nher oes</w>\nt elling</w>\nhen ry</w>\nf en\nknow ledge</w>\nĢ ï¸ı</w>\nf r</w>\nne g\nu re\nac king</w>\nhear ts</w>\ns oo\nhol lywood</w>\nju mp\nsau ce</w>\nschedu le</w>\ntur n\nyo ga</w>\ncre ating</w>\nc ket</w>\ncre ek</w>\nâ Ń\ncustom ers</w>\nma dri\ngu l\nasse mb\nmoun t</w>\nc ell</w>\nto p\nst al</w>\ndav is</w>\nt wi\nsig n\npremi er</w>\niti ons</w>\nhe aring</w>\nun k</w>\npati ents</w>\napp ear\nheav en</w>\nal ty</w>\ndoc tor</w>\na e\nplat form</w>\nje ff</w>\nðŁĵ ·</w>\nregi onal</w>\nbi d</w>\nbox ing</w>\nex ten\nor ity</w>\na w</w>\nw ise</w>\nil le</w>\nsever al</w>\nbi e\ns itu\nsy ria</w>\nâľ ħ</w>\nremin der</w>\nenter tain\nli on</w>\npart ners</w>\nin n</w>\nph ar\nf au\npl s</w>\nexpe cted</w>\nsug ar</w>\ndeci sion</w>\ns b\nch ron\nassoci ation</w>\nleav es</w>\nvis ited</w>\nsh ap\nðŁĴ ĸ</w>\nfur ther</w>\nh ann\nw i</w>\nrun s</w>\nl er\nfun ding</w>\nfil led</w>\n.. ....</w>\ntin y</w>\nhan g</w>\nor g</w>\nco ol\nse min\nðŁı Ĩ</w>\nspon s\nnav y</w>\nsa int</w>\ndru g</w>\nd al</w>\nr oun\nco vered</w>\ntra ditional</w>\ninvest ment</w>\nde te\nal ism</w>\nf low</w>\nn is\nsun rise</w>\nfe at</w>\nf ted</w>\nwe ird</w>\nje re\nve gan</w>\nmedic ine</w>\nan o\nac cu\ndeli very</w>\ntemp le</w>\nchang ing</w>\nwil son</w>\nphili pp\nre fe\nn d\nis er</w>\ng ay</w>\nr and\nati ves</w>\nt ely</w>\np and\nintelli g\ng are\nam bas\nde mon\ncommit tee</w>\nstrate gy</w>\nrefu ge\nbud get</w>\nprote c\npi er\nex press</w>\nnom in\neconom y</w>\nal low\nic on</w>\ngal ax\no h\nindi vi\ndem and</w>\nvir gin\nlu ke</w>\nali sts</w>\nman i\ns mi\nju dge</w>\nent y</w>\nmic hi\nresul t</w>\nam ed</w>\nspe aks</w>\n' ,</w>\nhou ston</w>\nsh in\nb ing</w>\nfl y\nch em\nau to</w>\nv as\nge t\nar m\nthank s\nd in</w>\ngan g</w>\nx x\nsi on\nloc ated</w>\np l</w>\njo sh</w>\nin fo\njo ins</w>\nadver ti\not d</w>\nel d</w>\nsi e</w>\nre asons</w>\nv ent</w>\nðŁĩºðŁĩ ¸</w>\nâ ł\nconvers ation</w>\nstu di\nðŁĶ¥ ðŁĶ¥\ngo s</w>\ns ounds</w>\nun it</w>\nmu sc\nge l</w>\nack ed</w>\npac i\nco s</w>\nde re\nu u\na o</w>\nla m</w>\ninspir ing</w>\nar ms</w>\ntw are</w>\nmat ters</w>\nad dic\ndu de</w>\nex t\ncri sis</w>\nb ath</w>\nme et\nsing h</w>\nexpe ct</w>\ndel hi</w>\nresc ue</w>\nwor st</w>\nau g</w>\nshi pping</w>\nser ving</w>\nst o</w>\ndar k\nac es</w>\nhistor ic</w>\nlandsc ape</w>\ndesig ner</w>\nb illion</w>\ngr ateful</w>\nwa ke</w>\ne ve\nm iller</w>\nhou sing</w>\ndy nam\nis co</w>\nbe ha\nsh op\npr ou\ne as\na sia</w>\ne ding</w>\nk on\ndepart ment</w>\naw ar\nmar ine</w>\nin ci\nphotograph er</w>\nta pe</w>\nlo go</w>\nr ings</w>\nd it\n-- --\nvin yl</w>\nw c</w>\nvo ting</w>\nse ven</w>\nambas sad\ndal las</w>\nt u</w>\ncom ment</w>\nk ra\nb les</w>\nw ag\nu d</w>\nau dio</w>\nstri ke</w>\noffici al\no ts</w>\nme tho\nto ols</w>\nra di\nal an</w>\nhun t</w>\nwat ched</w>\na ke</w>\nfa ke</w>\ndrin king</w>\nmer ry</w>\nm l</w>\nb day</w>\nri o</w>\nni ke</w>\nc ant</w>\nre pe\nco stu\nmur der</w>\nak ers</w>\nch ers</w>\nou ts</w>\nbeg inning</w>\nso s</w>\nad es</w>\nn in\nnot es</w>\nwro te</w>\nsol o</w>\nc i</w>\nli ghting</w>\nur ban</w>\nbre xit</w>\natt end</w>\nshir ts</w>\npla yo\nac tress</w>\npl ic\nstand ard</w>\nquot es</w>\npar ade</w>\nanci ent</w>\nÂ ©</w>\ntur ing</w>\nre e</w>\npri mary</w>\nfla sh</w>\nciti z\nmat es</w>\nste in</w>\nz i</w>\nclin ton</w>\nsk in\ngen e\nhu m\ng ar</w>\nt le</w>\ny i\nfo cu\nde an</w>\npl ants</w>\ncy ber\nb u</w>\nom e</w>\nho p</w>\nad dress</w>\nti x</w>\ngi fts</w>\nrelation ship</w>\nsub scri\nfe ed</w>\nexac tly</w>\nhaw ks</w>\nex o</w>\nstre ss</w>\ns n</w>\narre sted</w>\nan e\nsof tware</w>\nz ero</w>\nthe me</w>\nmu mb\nim migr\nmi a</w>\nmake up</w>\nple asure</w>\nuni vers\nhar b\neng ine</w>\nap er</w>\nr in\nbr a</w>\ninstitu te</w>\nle ather</w>\nal th</w>\nsing ing</w>\nco s\ngh ty</w>\nme as\nst ic\nsi de\ninsur ance</w>\nco t</w>\npit ch</w>\nmoun tains</w>\ncri min\nsu pre\nvalent ine</w>\nat er</w>\nwou ldn</w>\nsc ale</w>\nrel ated</w>\nre gar\nstar tup</w>\npack ed</w>\nmi ke\nweek ly</w>\np ts</w>\ncoun t</w>\nha r</w>\ngott en</w>\nmin d\nber lin</w>\ncon ditions</w>\nswit ch</w>\ncor n</w>\nsa ve\ng li\nemer gency</w>\ntun ed</w>\nsto ck\ndiscu ssing</w>\nevery body</w>\ns day\nwhe ther</w>\nwrest ling</w>\nec es</w>\ngen der</w>\nch en\nðŁĳ Ģ</w>\nmadri d</w>\nmar athon</w>\ne gg</w>\ni er</w>\nth x</w>\nas king</w>\nkore a</w>\nwol f</w>\nay a</w>\ng m</w>\ng au\nat ory</w>\nv r</w>\ngra ss</w>\nk illing</w>\nb ble</w>\nur o</w>\nun i</w>\ne th</w>\nsh ore</w>\nth en\nre ale\nbot tom</w>\nex erc\nk ar</w>\nor ies</w>\nad ri\nsan ds</w>\nse x</w>\n. '</w>\nvolunte ers</w>\nper form</w>\npar liam\ninclu de</w>\ndeli ghted</w>\nexecu tive</w>\nfu el</w>\nkis s</w>\nã ħ\nchar ge</w>\nh u</w>\nca kes</w>\nve t</w>\ng lu\nagre e</w>\npr ices</w>\nn au\nh l</w>\ng ru\nra j\nstreng th</w>\nb ic\nsp ending</w>\nal es</w>\nav en\nb last</w>\n: (</w>\nyo f\nnor mal</w>\nsi x\nqu ick\nse a\nd aw\nmee ts</w>\nlo vers</w>\nupd ated</w>\npo tat\ncomple ted</w>\ncoo k</w>\nopportun ities</w>\np ure</w>\norgan ic</w>\ntem per\nc am</w>\navo id</w>\npar king</w>\nduba i</w>\nand o</w>\ndi stri\nto y</w>\ncomple tely</w>\ndon ald\ntri al</w>\nbas s</w>\nb oun\nback ground</w>\nv as</w>\nmar vel</w>\nlu m</w>\nru s</w>\nt ool</w>\ncom missi\nthrow back\nfin ding</w>\nis lam\n! ?</w>\nst op\ne vil</w>\nor al</w>\nresi dents</w>\ni denti\no ak\nðŁİ ¶</w>\nl il\nspan ish</w>\nchap ter</w>\nsto pped</w>\ndirec t</w>\nho sted</w>\npic ked</w>\nlab our</w>\nlew is</w>\ndefen se</w>\nà ®\nhealth care</w>\nwh is\nmat h</w>\npe ak</w>\nra ised</w>\nfi x</w>\nbu ll</w>\nth ir\nchel sea</w>\nfol k</w>\ntr e</w>\ncan di\npau l\nei ther</w>\nad am\npoe try</w>\njewel ry</w>\nðŁ ¦\npr ay</w>\nØ §\ng c</w>\no z</w>\nwi shes</w>\nfore ign</w>\nsun g</w>\nlear ned</w>\nen e</w>\nn ing\nmicha el\nillu stration</w>\nlegend ary</w>\nw av\nb au\nðŁļ ¨</w>\ncal end\nstre ets</w>\nâ Ĩ\nmon ster</w>\nbu ck\ng r</w>\nscho ol\nba th\nwa ste</w>\nne ck\nha wa\nbe ach\nre plac\njec t</w>\non er</w>\nfac tory</w>\ncoun t\nðŁĵ ¸</w>\nmor gan</w>\nder ing</w>\nse an</w>\nsteph en</w>\nde p\nno vel</w>\nvide os</w>\nic al\npress ure</w>\narsen al</w>\nex pre\nir s</w>\ntren ding</w>\nss a</w>\nfla sh\nre sear\nthr ough\nprofess or</w>\nscul p\nto s</w>\ngg ed</w>\nmm a</w>\nbe e\na pe\nhun ter</w>\nam i\nhe i\npla stic</w>\nbu cks</w>\nuni verse</w>\nle gen\nniger ia</w>\nple ased</w>\nri s\nthin ks</w>\nautu mn</w>\ni ds</w>\nd is</w>\nanth ony</w>\nðŁı ½</w>\nak ed</w>\ngla sses</w>\nfin ance</w>\nz er\nk as\ncon tract</w>\nnu mbers</w>\nsh aw\npartner ship</w>\nt il\nlaun ched</w>\ns al</w>\nvictor ia</w>\ntheat er</w>\nusu al</w>\nnam es</w>\nperio d</w>\neli za\ni th\nbar cel\nro cks</w>\nbag s</w>\nmat e\ndistri bu\nj on</w>\ndi ffic\nali zed</w>\ncur ren\nsco red</w>\nb ha\ndu blin</w>\nro se\nin ted</w>\nsoli d</w>\nbeha vi\nwal ker</w>\nsimp ly</w>\ngarden s</w>\nhead ed</w>\nin i\nohi o</w>\nwe ap\nf o</w>\ngl en\ne state</w>\nran dom</w>\nth under\nthr u</w>\nk ill\njac ket</w>\nit i</w>\nentertain ment</w>\nthanks giving</w>\nent al</w>\nen coura\nel o\na ther\ntan k</w>\nhigh lights</w>\nf ting</w>\nru le</w>\nmodel s</w>\nbor der</w>\nbj p</w>\nhus band</w>\nin done\nken ya</w>\nbe ars</w>\nal o</w>\nn inten\npi x\nstr o</w>\nor ders</w>\nsal ad</w>\nro ads</w>\nn or</w>\nl ation</w>\nsop hi\nðŁı ¼\npi eces</w>\nb one</w>\nmin s</w>\ninclu des</w>\nnu tr\nphi l</w>\ns ent\nfun dra\nga in</w>\nbor ough</w>\nn ad\nmon day\nactiv ity</w>\nit ems</w>\nbe coming</w>\nken ne\nde tro\ncar di\ngue sts</w>\nu x</w>\nworld wide</w>\nsever e</w>\nnew s\nthank ful</w>\nfic tion</w>\nve ge\nm all</w>\nsi an</w>\ner al</w>\ninj ury</w>\nle e\nmen u</w>\ndanc ing</w>\nscot ti\nexam ple</w>\n( #</w>\nna i\nstudi os</w>\nba i\nðŁĴ Ľ</w>\nj av\ndiam ond</w>\nvin ce</w>\nric k\nprote ction</w>\nlin col\ncham ps</w>\nappro ach</w>\nd ar</w>\nm ile</w>\nclou ds</w>\nje ff\nin fin\nl ers</w>\np les</w>\npe ace\ngo p</w>\nâĻ ¡</w>\ntech n\nstr a</w>\na verage</w>\nef fort</w>\nintroduc ing</w>\ndi versity</w>\naustr alian</w>\nam p</w>\nboo st</w>\ns ke\npati ent</w>\nappreci ate</w>\nici ans</w>\npu r</w>\nf ell</w>\nwoo ds</w>\nillu str\nðŁ ĸ\nag ency</w>\nac tions</w>\nbrit ain</w>\nunder way</w>\nse attle</w>\nel and</w>\nag o\nf ill</w>\nstre aming</w>\npro test</w>\nchalleng es</w>\nky o</w>\net sy</w>\ncoo king</w>\nexper t</w>\nru ss\nrain bow</w>\ncommer cial</w>\nsp in\nbe ats</w>\nc ry</w>\nval u\nel i</w>\nth row</w>\ngr ams</w>\nle vels</w>\nmichi gan</w>\nc ad\nador able</w>\nconst itu\nw s\npu b</w>\nmid night</w>\nth at\nnet fli\nbraz il</w>\ndie go</w>\nregu lar</w>\njo y\nâĤ ¬</w>\nli qu\nea stern</w>\nk ni\nfl at</w>\nn p</w>\nbro wn\nw er\nse y\ntt ers</w>\nac ting</w>\nv anc\ncy cling</w>\nprogram me</w>\nra w</w>\ncomple x</w>\ntat too</w>\nthrowback thursday</w>\nse ssions</w>\nro oms</w>\nsi ght</w>\nspeci es</w>\nbom b</w>\nlau gh</w>\nke eps</w>\nmo on\noffic ers</w>\ncon ver\nt r</w>\nha sh\nt ack\nri ous</w>\nad ap\na j</w>\nreco gn\nex po</w>\nsug ge\nconfir med</w>\nrol ling</w>\ndre ssing</w>\nic t</w>\nfri day\nph ones</w>\nri dge</w>\ncon cept</w>\nro y</w>\nke ys</w>\nef for\nc ate\nk ne\nev en\nl ay</w>\ncommun ities</w>\nmo d\nn az\nevery where</w>\nal ab\nbit coin</w>\nban ks</w>\nout door</w>\nfeder al</w>\nsto res</w>\nh p</w>\nc al</w>\nm ely</w>\nsig nific\nbe ar\nre public\nclo ser</w>\nal lah</w>\npic k\nx d</w>\npal ace</w>\nch ill</w>\nb am\ner ous</w>\nun a</w>\nal len</w>\nout standing</w>\nolym pic</w>\nsupp ly</w>\nfi gu\nv au\nl p</w>\nchar lie</w>\nun es</w>\n> >></w>\nlegen ds</w>\nici al</w>\nco ast\nbenef it</w>\nmul ti</w>\nf its</w>\nfar mers</w>\nam ount</w>\nsi sters</w>\nhar ve\nhon ey</w>\nque en\nb ers</w>\npl ann\nâŃ Ĳ\nm u</w>\nbarcel ona</w>\nal ber\nstat us</w>\nre main</w>\nex tra\nc andy</w>\nvi ous</w>\nâľ Į\no v\nwarri ors</w>\n-- ></w>\nju mp</w>\nam ar\nx mas</w>\nstu dies</w>\ni ors</w>\nk or\ndon ate</w>\npre p\nfi sh\nim a</w>\npain ted</w>\nad mini\nco splay</w>\nspor ts\ndro ps</w>\nfi ghter</w>\nevi dence</w>\nðŁĴ ª</w>\nla ke\nro b</w>\ncine ma</w>\npro file</w>\nÃ ±\nstan ds</w>\nleg acy</w>\nsh ape</w>\nro of</w>\nci vil</w>\ni ans</w>\nsy l\nsh am\nvo ted</w>\nre tail</w>\nph illi\nli sted</w>\ndu ty</w>\nn b\nth es</w>\nf are</w>\nau ction</w>\nffici al</w>\nstor ms</w>\nd p</w>\nl oun\nsh ops</w>\nal y\nani me</w>\nmulti ple</w>\nðŁĺį ðŁĺį</w>\npsy cho\nje an</w>\nap art\ncandi date</w>\ngg y</w>\ncon f</w>\njose ph</w>\nw ick</w>\nme at</w>\nfr ame</w>\nc l</w>\nfor got</w>\nph y\nf ing\nli ed</w>\nre p</w>\nse ed</w>\nf all\nu fc</w>\nnu t</w>\nlin d\nmo de</w>\nfiel ds</w>\nen ce\ns ley</w>\nðŁ¤ Ķ</w>\nch ill\nfollow ed</w>\nannoun ces</w>\ncor ru\ntro phy</w>\nthem selves</w>\nac le</w>\nal du\nk ong</w>\nl on</w>\ns v\nbro ke</w>\nander son</w>\nta i\nstor y\ntempor ary</w>\nactiv ities</w>\nk ati\nari z\ncry stal</w>\nspo ke</w>\nextre mely</w>\ntra ding</w>\nðŁĴ ļ</w>\nÃ ¼\nin ch</w>\ned in\nout fit</w>\nequ ip\nma di\nform ed</w>\nbe ef</w>\npo p\nti ger</w>\nthis day</w>\nti red</w>\nneigh b\nre tro\nis a</w>\nun t</w>\nt as\nkan sas</w>\nde st\nsecon ds</w>\nta y\nhur ric\no u</w>\ngalax y</w>\ndad dy</w>\nbro w\nbur ger</w>\nen ced</w>\nde sk</w>\nac cur\nsecre tary</w>\nel ite</w>\nk ab\nch in\ntouri sm</w>\nbud dy</w>\nici de</w>\ndre ssed</w>\nu d\nvac ation</w>\nche ers</w>\ncom for\ncharac ters</w>\nj et</w>\nbu ying</w>\nl ins</w>\nn ap\nreale state</w>\nli e\naf c</w>\ni ii</w>\nf ame</w>\nn r\nb at</w>\nag ent</w>\nma kers</w>\nâĢ ¼\nsec tor</w>\nop ti\nle on\ndi et</w>\npra yer</w>\nhi p</w>\nmi r</w>\nle x\nbr y\nan a\npas sing</w>\nw en\nreco very</w>\nak i</w>\npo pul\nres ort</w>\nmar ia</w>\nstu ck</w>\nread s</w>\nti er</w>\nperfe c\nnetfli x</w>\np oo\ncham p</w>\no c</w>\nre duce</w>\nwe red</w>\ncomm ents</w>\ncla im</w>\nacci dent</w>\ns ag\nh ack\nsal t</w>\nkin da</w>\nk iller</w>\ni os</w>\nz y\nex change</w>\nlec ture</w>\neng er</w>\nic king</w>\nt au\nreve als</w>\npri son</w>\nz om\ngh an</w>\nu l</w>\njour nal</w>\ni ot</w>\ntr in\njon a\ngovern or</w>\ncap e</w>\nquar ter</w>\nspec tive</w>\nimpre ssive</w>\nbab ies</w>\nt x\nm ill</w>\no y\nhar ri\njo int</w>\nsu e</w>\ncollabor ation</w>\ntren d</w>\nrevolu tion</w>\nre new\nalum ni</w>\nge tt\nsh ell</w>\nsun day\nent u\nni c</w>\ndonald trump</w>\nblock chain</w>\npaci fic</w>\nexpla ins</w>\nsp y</w>\nad voc\npar adi\nto f\nstar ring</w>\np av\nfe ed\nbr ac\nsmo ke</w>\nham p\ny am\nto kyo</w>\nsi mon</w>\nd h\ne ffici\nphys ical</w>\nn j</w>\nell i</w>\ns low\ngradu ate</w>\nameric ans</w>\nti fy</w>\nf red</w>\nap ore</w>\nfin ds</w>\nrob in\nwe t</w>\nnot ice</w>\nse mi</w>\nun ve\nk om\npil ot</w>\nscre ening</w>\nda ily\nðŁĴ Ĺ</w>\nroy al\nsp a</w>\nvo tes</w>\nn ag\nwh ate\natt ending</w>\nexper im\nad dition</w>\nk ate</w>\nsto l</w>\nm ali\nfoo t\nchri st</w>\nch an</w>\nde e</w>\nlic en\nglo bal\nmo ore</w>\nti a</w>\nbri gh\nmyster y</w>\ny ay</w>\nâĿ¤ï¸ı âĿ¤ï¸ı\ncre ati\nme chan\nclo ck</w>\ndi c</w>\nâĢ Ķ\npp er\nal ph\nthrough out</w>\nal low</w>\nre sources</w>\nselec tion</w>\nham il\nbb q</w>\naa aa\nvirgin ia</w>\ndis ney\nen g</w>\nso red</w>\ndrin ks</w>\nf ancy</w>\nconsi der</w>\nend a</w>\njan e</w>\nhand made</w>\ndu l\non tari\ni us</w>\ns ville</w>\ncolor ado</w>\nwhate ver</w>\nwhe el</w>\npromis e</w>\nne ver\ndesig ns</w>\nab ly</w>\nsex ual</w>\nvanc ou\nat i</w>\ncon vention</w>\ncul tural</w>\nsing apore</w>\npro mo</w>\nload ed</w>\ngla sgo\npp l</w>\nn oo\nke e</w>\nste m</w>\nmen tion</w>\ni do\ncru ise</w>\nri ding</w>\nbe comes</w>\nbe y</w>\nâļ½ ï¸ı</w>\ntw in</w>\ndedic ated</w>\nna sh\nde si\nwork out</w>\njen ni\ni v\ngrou ps</w>\nrela x\npho eni\nli ft</w>\nmix ed</w>\nm ck\np c\nmu st\nme tro</w>\nci es</w>\ny ar\na im\nang er</w>\ni e\nrec y\nmarri ed</w>\ndro pped</w>\neng ag\nle st</w>\nambassad or</w>\nop h\nde s\nw ick\nassi stant</w>\nnat ur\nfa il</w>\nl td</w>\nshor t\nk ap\nsha w</w>\nbi gger</w>\nrema ins</w>\ncrit ical</w>\nsur vey</w>\nco verage</w>\ner son</w>\nwin d\nn b</w>\nbil ly</w>\nlet es</w>\nac ts</w>\njim my</w>\nat lan\nal and</w>\nt c\nimport ance</w>\ndam age</w>\nf g</w>\nstor age</w>\ntw t</w>\nbon d</w>\nbal ance</w>\ncr ying</w>\npu ppy</w>\nvo te\npu sh</w>\nðŁĴ ľ\npol y\nme l</w>\nlon don\nterr ori\neffec tive</w>\ncorpor ate</w>\natl anta</w>\njac o\nnas a</w>\ngre ek</w>\nsen ate</w>\ni sh\nev a</w>\nintellig ence</w>\neffor ts</w>\nal co\nk un\nh all\ndi ag\nclaim s</w>\nfir st\nh b\nba e</w>\nv ul\npu ll</w>\nÂ °</w>\nse par\nspe ed\nvic ti\non thisday</w>\naudi ence</w>\nr ates</w>\nte ach</w>\nfil ming</w>\nbu sh</w>\nson g\ny um\nbr un\nra ine</w>\naw a</w>\npar ks</w>\nð Ŀ\nra bb\nra ch\nra id</w>\nreach ed</w>\nra il</w>\nmo ves</w>\nselec ted</w>\nfr i</w>\nra ising</w>\nom y</w>\nst ones</w>\nsu k</w>\nfranc isco</w>\ncas es</w>\ncap it\ncon fu\nw tf</w>\npo ke\nequip ment</w>\ngre g\ness ential</w>\noff ering</w>\nne x\npi es</w>\nbe c\ncre ation</w>\nchair man</w>\ncro wn</w>\nw al</w>\njohn ny</w>\nshi ft</w>\nne ck</w>\nban g</w>\nbir d\nðŁĺ ı</w>\ndu ck</w>\nre serve</w>\nde pu\nma sters</w>\nover all</w>\nno tic\nju ice</w>\nsne ak</w>\nche er</w>\ncla sses</w>\neag les</w>\nn ca\ncar pet</w>\nci vil\ncoach es</w>\nhar ris</w>\nu ps</w>\nb alls</w>\ndec or</w>\nmar tin\nro s</w>\nv ice</w>\nannoun cement</w>\nwho se</w>\nti gers</w>\nste red</w>\nc ts</w>\ndr am\nste el\nyoun g\ninst all\nsupp o\nrecor ding</w>\nde ck</w>\nse ats</w>\nl der</w>\nang le</w>\nbo t</w>\nsty les</w>\nelec tions</w>\nfor tun\nn ab\nbut ter</w>\nari an</w>\nka sh\nin ner</w>\nou red</w>\nbe ast</w>\nwe i\nic onic</w>\nexper ts</w>\nne cess\nb eng\njam es\nli a</w>\ngre ece</w>\nðŁĵ ·\nðŁĺ ģ\ngood bye</w>\nm itch\ntw ice</w>\nmumb ai</w>\nste am</w>\nru sh</w>\nmed al</w>\nne tt</w>\nfashi on\nt ar</w>\nr s\nsav ing</w>\nric ul\nl m\nsleep ing</w>\nbrook lyn</w>\nmis s\nsen ding</w>\ndisco vered</w>\nsp here</w>\nof theday</w>\nk icks</w>\nmissi ons</w>\nw right</w>\ner n\nght ly</w>\ni ous</w>\nmel bourne</w>\nstar tu\nmo ved</w>\ncar ry</w>\nd ak\nag ues</w>\nbel gi\ne ma\nway ne</w>\ndo t</w>\ner ie</w>\npe l</w>\nit unes</w>\nmatthe w</w>\nno body</w>\nest ab\ncal m</w>\nwin ds</w>\nlu c\nprep are</w>\ntren ds</w>\nexerc ise</w>\nadv ant\nðŁĴ ¯</w>\nathle tics</w>\napp s</w>\nc tions</w>\nadv ance</w>\nlaun ches</w>\nlitt le\nreal donaldtrump</w>\neliza beth</w>\ncarol ina</w>\nhu b</w>\nhi dden</w>\nn w</w>\nus er</w>\npol l</w>\ngreat er</w>\nmo st\nf ed</w>\np at</w>\nlife style</w>\ns ati\nsco res</w>\nmarri age</w>\nl r</w>\naven ue</w>\nde serve</w>\nri f\nðŁ Ĺ\nwat ch\nchampion ships</w>\ngr ay</w>\nen ni\ncot ton</w>\ng om\nwhe re\npack age</w>\nsu m\nab solu\nnew ly</w>\nfoo ds</w>\nty ler</w>\nassemb ly</w>\nmusli m</w>\nban k\nre memb\nop tions</w>\nproduc er</w>\nland o</w>\nfun ds</w>\nu pper</w>\nshad ow</w>\npro gre\nco p</w>\ning e</w>\nleg s</w>\ndetro it</w>\nhill ary</w>\njo se</w>\ngi ants</w>\nsou p</w>\nsustain able</w>\nt us</w>\nclo thes</w>\nroc king</w>\nn z</w>\nmin ne\nmat eri\nbru ce</w>\near t\nca sting</w>\nindepend ent</w>\nthou sands</w>\nta h</w>\nde cl\nveter ans</w>\nli ons</w>\nwra p</w>\nâĢ ¦\nde ss\nbl ing</w>\nst ine</w>\ne ggs</w>\no on</w>\nclo sing</w>\nz ay\nat t</w>\nbac on</w>\nfa il\nariz ona</w>\nde pre\ngho st</w>\nnew sp\nw ers</w>\nvi p</w>\nli ked</w>\nid ent\nvolunte er</w>\nad ult</w>\npu pp\ncir cle</w>\nmat erial</w>\ndegre e</w>\ngro wn</w>\nboo m</w>\ncalend ar</w>\nsu r</w>\nvie wing</w>\nath letes</w>\nch and\nre ll</w>\nasi an</w>\nen tr\nvol ley\nvicti ms</w>\nbo dy\nm ama</w>\ntrans fer</w>\nge ek</w>\nin dic\nsav ed</w>\nma i\ng ent</w>\nit s\nloun ge</w>\nk ol\nthe ory</w>\nsitu ation</w>\nis lands</w>\nar th\nz oo</w>\nfloo d</w>\nvi ously</w>\nshow ed</w>\nparliam ent</w>\nch ev\nel ine</w>\nat trac\nab ad</w>\nta il\nh rs</w>\nlu s</w>\npor tu\ngor y</w>\nprovi des</w>\nto ys</w>\nde ath\nin fe\nan ce\ng le\nli am</w>\nlo ver</w>\nhu d\ndv d</w>\nreve aled</w>\ng w\nre ment</w>\nca the\nl ying</w>\nra dio\nder by</w>\nstor s</w>\nche mi\nhosp it\nâľ ¨\n' :</w>\nilo ve\nle mon</w>\nre public</w>\ns ni\nne ss\ndo or\nre action</w>\npre gn\nfla v\nschol ar\nspo tify</w>\nis ation</w>\nvis ual</w>\naw are</w>\nspon sored</w>\njo ke</w>\nless ons</w>\nleg is\nlo ck\nsi mil\nðŁĺ ĭ</w>\nkin d\nla y\nma h\nho ping</w>\nvancou ver</w>\nas er</w>\nclean ing</w>\ngal a</w>\nthre at</w>\nla p\nach e</w>\nro mance</w>\nex pen\nre post</w>\nz am\ne pi\nmir ror</w>\no ak</w>\nad ul\nbat man</w>\ns lu\nl c</w>\nvie wed</w>\nre views</w>\nd ates</w>\nindone sia</w>\nacti vi\noff en\nlea f</w>\ni si\nag ricul\ncostu me</w>\ns ites</w>\nspir itu\nappear ance</w>\nir y</w>\nst air\napplic ation</w>\nspec tac\nic ity</w>\nski es</w>\nhand le</w>\npun k</w>\nparadi se</w>\nt n</w>\nde al\nprovi ding</w>\ndo c</w>\nrecei ving</w>\nbre w</w>\nmicro soft</w>\nÃ ¶\nfer r\nme tro\nth ail\ny um</w>\ncar ter</w>\nÃ ¡\ngent le\nbre aks</w>\ncoo per\nshow case</w>\ncu tting</w>\negy pt</w>\nbab y\nsemin ar</w>\ngl ori\nss on</w>\nfa ve</w>\nre hear\nlo tte</w>\nla dy\nal as\npre p</w>\ndeli vered</w>\nnu clear</w>\nir o</w>\nengag ement</w>\nat ta\ncon ven\nz an\ngl ory</w>\nhol ds</w>\nbusine sses</w>\nstr ange</w>\nsch e</w>\nit self</w>\ngra d</w>\nmar kets</w>\nf alling</w>\nst ats</w>\nge on</w>\nbu dd\nli s\nshe et</w>\nthi si\nco lo\ndeser t</w>\nregi stration</w>\nig n\nexpla in</w>\ninter ior</w>\nla ws</w>\nwrit ers</w>\nspr ings</w>\nk r\nfri ed</w>\nblo om\ninf ra\na o\ncre d\npa st\nline up</w>\nbo o</w>\nbre a\nboo ts</w>\ncelebr ity</w>\natt acks</w>\nbro ok</w>\nev es</w>\nex cu\ncher ry</w>\noo p</w>\nfas cin\nboy friend</w>\nse as\nn ine</w>\neffec ts</w>\npo wered</w>\nk ha\nðŁĺ Ģ</w>\nsh out\ncon dition</w>\ni j\nher o\nenter pri\nwin ter\napplic ations</w>\nsho e</w>\ng el\nbatt le\npro grams</w>\nw art</w>\nðŁĴ ¥</w>\nra p</w>\nho l</w>\ndang erous</w>\ndi a\ncoun ter</w>\nric s</w>\ni or\nk night</w>\nco at</w>\nemo tional</w>\nat ures</w>\nd as</w>\nwhe el\nfore cast</w>\ntran sport</w>\nglasgo w</w>\nking dom</w>\nprepar ing</w>\nim medi\nff in</w>\nawar ded</w>\nprin ting</w>\nro man</w>\nfight ers</w>\nany more</w>\nbel t</w>\np ine</w>\nwin e\nx i</w>\nemploye es</w>\nlogi es</w>\nal led</w>\nde mo</w>\nbirth day\nange les</w>\nlo g</w>\ndri vers</w>\nneck lace</w>\nk ath\ns it\nathle te</w>\nef s</w>\ns burg</w>\npur pose</w>\nresi stance</w>\nrele ases</w>\nt is</w>\nvari ous</w>\ndeli ver</w>\nch al\ns anc\nopp o\ncra w\nneu ro\ndr a</w>\nsuppor ters</w>\nsna p</w>\ndiffic ult</w>\nswe ar</w>\nlogi st</w>\npa th\nattemp t</w>\nà ¥\nswim ming</w>\nste ve\nhur t</w>\ninclu ded</w>\nb ap\nwa re\nðŁĴ ĭ</w>\nend ers</w>\nja ke</w>\nle eds</w>\ncli mb\nl b</w>\nim ple\nli sa</w>\nclo thing</w>\nðŁĺ İ\nd t</w>\ncom pla\nsw ing</w>\nstra w\nv als</w>\nk le</w>\nus ers</w>\nstor m\ncu ts</w>\nontari o</w>\np an</w>\nhand some</w>\ni ow\nar gu\nchec king</w>\nscotti sh</w>\nĶ ï¸ı</w>\nsi er</w>\nem ma</w>\npo d</w>\npatter n</w>\nde sh</w>\nen h\ned ward</w>\nt ing\nk h</w>\nhal f\nlincol n</w>\nmo ther\nal leg\nr c</w>\nvolley ball</w>\nd n</w>\ng ay\nall y\nle ton</w>\ngro ve</w>\nl oud</w>\nadv anced</w>\nre spec\ncli ent</w>\nsupre me</w>\nthail and</w>\nho w\ngi g</w>\nto i\ndo t\ndol lar</w>\nðŁĳ ĩ</w>\np it</w>\nr b</w>\nh n</w>\nproduc ed</w>\ngg ers</w>\nâĨ Ĵ</w>\nml b</w>\ncan vas</w>\nfin eart\nus d</w>\nin the\np son</w>\nactu al</w>\ns l</w>\nt b</w>\nip ad</w>\nen sure</w>\nu mb\nw d</w>\nsk a</w>\nmar s</w>\nk end\nf eli\nth ing\ncount down</w>\nabsolu te</w>\nr out\ndra l</w>\np y</w>\ninju red</w>\nmin t</w>\nhun ting</w>\nmm er</w>\ns age</w>\nli gh\nac ity</w>\nex pan\nmur ray</w>\nar o\nsec ure</w>\nfour th</w>\neag le</w>\nreli ef</w>\nst akes</w>\nindustri al</w>\nclar k</w>\nunder standing</w>\nsee m</w>\npl enty</w>\nsil ver\ncla u\nthre at\nsa il\npro duce</w>\nab str\nis is</w>\nb r</w>\neng ers</w>\nwor ry</w>\nbie ber</w>\ns j\njust in\nreali ze</w>\nky le</w>\nesp n</w>\nfil ter</w>\ns ch</w>\nty pes</w>\ngame dev</w>\nd ing\ntwit ter\nsoldi ers</w>\np om\ncar bon</w>\ny ards</w>\nchild hood</w>\nri ed</w>\nke l</w>\nele ph\nt ons</w>\nkey note</w>\nqui et</w>\nwi re\npo sting</w>\nis sa</w>\nrepre senting</w>\nbac ks</w>\nalex ander</w>\ncelebr ates</w>\nta ining</w>\n| |</w>\nch or\nesc ape</w>\npe ek</w>\nti ves</w>\nfiel d\nssi e</w>\nim pac\nspons or</w>\nr c\nwe dd\ncann ab\nsi des</w>\ntrac ks</w>\ncom par\ncon trac\ntechn ical</w>\nbi ble</w>\nexpl oring</w>\nsh are\ntra v\nn ate</w>\nill o</w>\nsc ru\nm ingham</w>\ngun s</w>\nof the\nsh ame</w>\nse es</w>\nca tho\nac cess\nce l</w>\nrepor ted</w>\nÂ »</w>\nmari o</w>\np ad</w>\nhope fully</w>\nou se</w>\ny on</w>\ndisapp o\nol o</w>\np itt\npa c</w>\nga p</w>\ncru sh</w>\ns g</w>\nk le\nge m</w>\nemp ire</w>\ndir ty</w>\na is\navi ation</w>\nze aland</w>\nfac ing</w>\nhigh way</w>\nd anny</w>\nspi der</w>\not ta\nðŁĺ Ħ</w>\nw y</w>\ncol ours</w>\nin fl\nco sts</w>\nolym pics</w>\nau s</w>\nh m</w>\nho ward</w>\npas ses</w>\nlau ren</w>\nmu sh\nop in\nr ho\ndisc ount</w>\noper ation</w>\nem ily</w>\nmm m</w>\ncham ber</w>\nd il\nto yo\nshi p\nsam u\npic tured</w>\nun ic\npo l</w>\nkeep er</w>\ncarto on</w>\nst en\nig nor\nn ations</w>\nn l</w>\nta sting</w>\ndeta il</w>\noffici als</w>\nmo tor</w>\nfranc is</w>\ned itor</w>\nðŁĳ ĩ\npe ts</w>\nrang ers</w>\nt g\nr n</w>\nw ri\nnic hol\ni se\nspo ts</w>\nani e</w>\nchec k\ntri ple</w>\nku mar</w>\nspe akers</w>\nic ing</w>\npre pared</w>\nab use</w>\nfriend ship</w>\nmon th\nswi m</w>\nair e</w>\nsc ent</w>\nhamil ton</w>\nindi an\nj es\nyum my</w>\nte ars</w>\nda wn</w>\ni zed</w>\nworl ds</w>\nðŁ ķ\nb illi\nst one\nn hs</w>\nba sic</w>\np or</w>\nst le</w>\nir on\nol der</w>\ncle vel\ne ing</w>\nðŁĺįðŁĺį ðŁĺį</w>\nprin ts</w>\nfir m</w>\nair craft</w>\nfin est</w>\ndevel op</w>\naar on</w>\nt z\ngra ham</w>\nown ers</w>\nfo li\nless on</w>\nqu es</w>\nbab e</w>\ncra ft\nph en\nju n</w>\nbir mingham</w>\nv ine</w>\nll er</w>\ni an\nfineart america</w>\nevol u\nst ab\nim per\nwar d\ncom ic\nwi z\ninv ited</w>\ndu ke</w>\nmat ch\npor ts</w>\nro ger</w>\ndiag no\nke pt</w>\nte st\nvis u\nr hy\nso c</w>\nto x\nb aker</w>\nsur face</w>\nco vers</w>\nman s</w>\nb its</w>\nx box</w>\nff le</w>\nn an</w>\ngar d\nh art</w>\nwat ers</w>\nv illa</w>\nre tro</w>\nlight ning</w>\ncatho lic</w>\ndemocr acy</w>\nneigh bor\npen n\ncr an\njona than</w>\nla ura</w>\nvi bes</w>\nsu b</w>\ncoach ing</w>\nclear ly</w>\nuk raine</w>\nbra ve</w>\ncommit ment</w>\nt all</w>\nmar t</w>\nra p\nmo di</w>\nsco tt\nbro s</w>\nshow er</w>\nðŁı ¾</w>\nâĺº ï¸ı</w>\ncou sin</w>\nappro ach\nbr e</w>\ncom pos\nhil ari\nphil ly</w>\ng ad\nquick ly</w>\nri an</w>\nt m</w>\nvir tual</w>\nhou ses</w>\nk t</w>\nphoeni x</w>\nw ire</w>\nff y</w>\nb unch</w>\nanc ing</w>\ntal e</w>\nsnap chat</w>\nstar ter</w>\nh t</w>\nk icking</w>\nap art</w>\nth y\n) !</w>\nblo gger</w>\nit z</w>\ncom fort</w>\nang els</w>\nw ash</w>\n\" :</w>\nar gent\nre quest</w>\nhon est\nmi ghty</w>\nbo bby</w>\nk g</w>\nro l</w>\nthou se</w>\nex po\nh c</w>\ntab les</w>\nmag ical</w>\npo sts</w>\nde m</w>\nn w\nor lando</w>\nab er\n* **</w>\nðŁĺ ľ</w>\nenviron mental</w>\ntrans formation</w>\nmi le\nw ic\nhir ing</w>\nma ine</w>\nbo ar\nr ying</w>\nti s\nnit ure</w>\ntwee ted</w>\nanton io</w>\nopin ion</w>\nfin ale</w>\ndi y</w>\nf is\nth in</w>\ntrou ble</w>\nle go</w>\nfi les</w>\nqu art\nsp a\ncurren cy</w>\ncli mate\nfan art</w>\nrail way</w>\nsp ace\nban ds</w>\ndani el\nmo tion</w>\nl eng\nhol der</w>\noc cu\nmar ie</w>\ncathe dral</w>\nbu zz\nbi es</w>\nnas car</w>\nbm w</w>\nbat tery</w>\nchar lotte</w>\ndoc tor\nzz le</w>\nse ven\nin san\nd dy</w>\nst en</w>\nlab or</w>\nthr illed</w>\nse ren\ndocu mentary</w>\nwav es</w>\ncer tain</w>\ncan did\nallow ed</w>\nninten do</w>\nstar wars</w>\nta p</w>\nhome made</w>\nd les</w>\nther ing</w>\nbre e\nemp ty</w>\npi ano</w>\npos iti\ncoun try\npor k</w>\npu ts</w>\nper ry</w>\nm atic</w>\nspot light</w>\nti st</w>\nor ities</w>\nwe alth</w>\nc p\nbar bar\ncommit ted</w>\nas sau\npro fit</w>\ne ight</w>\nhu l\nfini shing</w>\nrun ner</w>\nss o</w>\ninsp ec\nchar ged</w>\nchrist op\nlo sing</w>\nco al</w>\nho o</w>\nele v\nde le\nmo ham\ndon ation</w>\nc able</w>\nclin ic</w>\nj in\nmanag ed</w>\nter ing</w>\nâ ¬\nur ban\ndepu ty</w>\nbb er</w>\nbur n\nacade mic</w>\no tt</w>\nsta ke</w>\nit er\nsto wn</w>\nack er</w>\nadvent ures</w>\nad ams</w>\ngre g</w>\npro m</w>\nvo l</w>\nac qu\ncon gre\npa int\ncitiz ens</w>\nc all\naf ford\nv c</w>\nas ks</w>\nthe tic</w>\nindepend ence</w>\nâ Ľ\nh itting</w>\nbl on\nfu ture\nâ ı\nin no\ngen e</w>\nbo ards</w>\ndi stance</w>\nse t\nre mem\nth al\npre vent</w>\nl ang\nob jec\nsu sp\nmat t\nin duc\nbor o</w>\npi one\nre di\nvir tu\nprin ted</w>\nsco pe</w>\nshar k</w>\nsuc ce\na stron\nil legal</w>\nj ag\nc ting</w>\nine e</w>\nat o\nrob in</w>\nnutr ition</w>\nb f</w>\ndu tch</w>\nb n</w>\nfur niture</w>\nfor gotten</w>\nat ar</w>\nru p\nhy per\nbran ch</w>\ncommunic ation</w>\ndegre es</w>\non ia</w>\nun cle</w>\npromo te</w>\nor che\nwi i</w>\nj s</w>\nbut ton</w>\nma jor\nc bs</w>\nbri stol</w>\npremi um</w>\nordin ary</w>\ne dit</w>\nm g</w>\nwe ed</w>\nst even</w>\n: '\ngu s</w>\nte s\ncap tured</w>\ndru gs</w>\ndo w\nwr ites</w>\nbi shop</w>\nwhe els</w>\nali zation</w>\ndisco very</w>\nw r</w>\nrach el</w>\nne il</w>\nhy dr\ncu test</w>\nentreprene ur</w>\nkore an</w>\nore gon</w>\nul ty</w>\nperfec tly</w>\nsuppor ted</w>\nhistor ical</w>\nt wins</w>\nell y\nwe l</w>\nde vil</w>\nin come</w>\nscienti sts</w>\nde leg\nh en</w>\non i</w>\nic ed</w>\ngi o</w>\ncur ry</w>\nreve al</w>\ne g\nbuff alo</w>\nn ol\nop era</w>\ncamer on</w>\nhaha haha\nj ab\ngradu ation</w>\ncra ig</w>\nr al\ni f\norgani zation</w>\nle ge</w>\ng ang\nsu d\nedin burgh</w>\nl ack</w>\nfli es</w>\ng ate\nthr ones</w>\nq b</w>\nthe real\ne leg\npp in</w>\nc les</w>\njam ie</w>\ntn am</w>\ncryp to\nou l</w>\np ages</w>\na se\nroo ts</w>\nstu pid</w>\na did\nboo t</w>\nprote in</w>\ns ap\nsi um</w>\nsu s\nend or\nfun ction</w>\ndon t\nen na</w>\nch y</w>\nsqu e</w>\nwor ker</w>\nm tv\ne a</w>\nk an</w>\nðŁĴ ļ\nmu s</w>\nprofessi on\nt to</w>\noper ations</w>\nal lo\nc tor</w>\ninv ite</w>\nsc and\nou th</w>\nz im\nlin ks</w>\ncli ents</w>\nsam sung</w>\ndiscu sses</w>\nn ell</w>\nul tra</w>\nsome where</w>\nste wart</w>\nine t</w>\nde z</w>\nb out</w>\nfac tor</w>\nti an</w>\ntr ans</w>\njere my</w>\nd b</w>\nðŁĩ ¬\nor n</w>\ndevelop ing</w>\nspo l</w>\ncoo per</w>\nma u\nrememb ering</w>\ntre k</w>\nfamil y\nsen iors</w>\nfo ster</w>\natt ended</w>\nw ing\ntrans form\nele mentary</w>\nhor iz\nli sting</w>\nmalay sia</w>\nit ch</w>\nwarri or</w>\nphilipp ines</w>\nruss ell</w>\nm end\niniti ative</w>\ncre ep\nto ps</w>\nbr iti\na ur\nshar p</w>\nadverti sing</w>\nug ly</w>\nachi ev\nmateri als</w>\nbu g</w>\ndev ice</w>\nbon us</w>\nfac ility</w>\ncol e</w>\nnh l</w>\ny as\nplann ed</w>\npol e</w>\nexcell ence</w>\ntr ick</w>\ncon fl\nr p</w>\nachi eve</w>\nlo an</w>\nswa g</w>\njess ica</w>\nho we\np our</w>\nsc u\nz oo\nr ated</w>\ndre sses</w>\nre bel\nmex ican</w>\nco ordin\nme ss</w>\natlan tic</w>\nt l</w>\nosc ar</w>\nwal ks</w>\nphar mac\ninvestig ation</w>\n... #</w>\ncc i</w>\neas ily</w>\nmonday motivation</w>\ny ment</w>\nau ti\nfor ced</w>\nar med</w>\ncolle agues</w>\npap ers</w>\npro per</w>\nsha ke\nbu c\nle an</w>\nexhi bit</w>\ne vement</w>\nco tt\nbi z\nsp er\nk ent</w>\nsw an\n/ @</w>\ngirl friend</w>\nhaw k</w>\nâĺ Ģï¸ı</w>\nmon o\nðŁĴ Ľ\nstat ue</w>\nðŁĺ ³</w>\nra s</w>\nte eth</w>\npreci ous</w>\nt ile</w>\np am\nswi ft</w>\nv ali\nno se</w>\ndr unk</w>\nexperi ences</w>\ncome back</w>\ngen ius</w>\nwor se</w>\nsh ef\nra d</w>\ned it\nhon our</w>\nau spol</w>\nlar ry</w>\nh ire</w>\ngor don</w>\nachi evement</w>\n.... ....\nsu icide</w>\nalter native</w>\nsu p</w>\nsur roun\nsha ke</w>\nke ith</w>\npe pper</w>\ntur k\ncrimin al</w>\nbe ck\nsu m</w>\nw alls</w>\ncn n</w>\nan tic\nof fe\ncol li\nwin es</w>\nhigh light</w>\nhawa ii</w>\nemb ar\nl fc</w>\nðŁĩ ®\nm v</w>\n> >\nat mo\nwor d\ncar l\nshout out</w>\nbre wing</w>\nì Ŀ\ndo f\ns ic\nhot test</w>\ncol on\nhh h</w>\nshu t</w>\nlow ing</w>\nvolu me</w>\napart ment</w>\nagre ement</w>\nde stro\nwe e</w>\nreligi ous</w>\niow a</w>\nro d</w>\nland ing</w>\nre present\nðŁĵ· :</w>\nla s\nusu ally</w>\nh l\nc ac\nsal v\nal ong\nlaugh ing</w>\nbe ans</w>\nremin ds</w>\npha se</w>\nsome body</w>\nma sk</w>\nran ked</w>\ndest roy\nsc i</w>\nâĢ¼ ï¸ı</w>\ngab ri\nle o</w>\nro a\nfa iled</w>\nsi l</w>\nrefuge es</w>\nre vi\nr ing\nber ries</w>\ncoo kies</w>\ny y</w>\nconserv ation</w>\nsh ab\nhuman s</w>\nde termin\na in\nni all</w>\nas su\nmb a</w>\nfro m\nextre me</w>\nvic es</w>\ncommer ce</w>\nght ful</w>\nor dered</w>\nsuppor ts</w>\nre cap</w>\nv or\ndro pping</w>\ncorrec t</w>\npay ing</w>\nmean ing</w>\nn j\nqui z</w>\n\" #</w>\nbusine ss\nðŁĩ® ðŁĩ\nindi gen\ndu st</w>\nbox es</w>\nbl ind</w>\nx xx</w>\nzz y</w>\nðŁĩ¬ ðŁĩ\nss els</w>\ns ant\ndd le</w>\nhilari ous</w>\ndesig n\nwonder ing</w>\nvehic les</w>\nk re\nju d\nrece ption</w>\npar ker</w>\nÃ Ń\npri vi\nhy dro\nsof tball</w>\npol lu\nlo cked</w>\nba h\ne ar</w>\nscri pt</w>\ndi vi\nbr ace\ngeor ge\nthe ast</w>\nbel o\nj al\ntion ary</w>\ndent al</w>\nroc ket</w>\npur ch\nsh ak\nmanufac turing</w>\ne z</w>\nit is</w>\ncon cep\ntb all\nch s</w>\ndirec ted</w>\npra yers</w>\noo k</w>\nphil os\nvari ety</w>\nche ss</w>\nser ver</w>\ng and\nbal ti\nðŁĵ ¸\nsel y</w>\ncru z</w>\nspectac ular</w>\nbur ning</w>\nre present</w>\ni z</w>\nt one</w>\nmer ce\nh ell\nbed room</w>\nestab li\nbo l</w>\ncom mon\nãĥ »\nab or\nkit ty</w>\nhei ghts</w>\nre pair</w>\nwilli am\nqu ake</w>\nalab ama</w>\npopul ation</w>\nre v\nre tt</w>\ni sts</w>\nn ite</w>\nle m</w>\na ha</w>\nclevel and</w>\nr m</w>\npo ver\nob se\nmon tre\nman ia</w>\nÂ ®</w>\ncon ne\ncar ni\nsh ah</w>\nf y\nu a</w>\nsc or\nstrugg le</w>\nbo b\n' '</w>\nappro pri\ndeci de</w>\nff ed</w>\nca ster</w>\ns ort</w>\nhun gry</w>\ndra g\nØ§ Ù\ngr ounds</w>\nd w\nsli ghtly</w>\ncar din\ndead line</w>\nbron ze</w>\nweb in\nbar ry</w>\nsil ence</w>\ne uro</w>\nop tion</w>\near n</w>\nðŁĴ ĸ\nhowe ver</w>\nna ren\nna ils</w>\nbath room</w>\nv ine\nph d</w>\nmin ing</w>\ngar age</w>\n( )</w>\nshou lder</w>\ndefe at</w>\ndi r</w>\no v</w>\nliber ty</w>\nple as\nx on</w>\ncom pre\na v</w>\nj in</w>\nab les</w>\nsil ent</w>\nfam ili\nvis its</w>\ndi pl\nha bit\nmilli ons</w>\nregar ding</w>\ninnov ative</w>\nsen ator</w>\nr ts</w>\nv on</w>\nk l\nwh il\nrequi red</w>\nâĿ Ħ\nlu v</w>\npresi dential</w>\npo cket</w>\nhun dre\nsho wn</w>\nfro zen</w>\nto ward</w>\nfa st\nconfi dence</w>\nr ough</w>\nindivi dual</w>\nqu et</w>\nðŁı ½\ndom e\nfi fa</w>\nengine er</w>\nz en\nre mix</w>\nðŁĺ ĥ</w>\npl ant\nmin or</w>\nrobin son</w>\nas y\npul led</w>\ncer tain\npotat o</w>\n( :</w>\npre s</w>\noc ca\nw it</w>\nit em</w>\nsi e\nd ating</w>\nthom pson</w>\nown ed</w>\nan u\nvi e</w>\nte dly</w>\ngood night</w>\nex cept</w>\nðŁĮ Ł</w>\nira q</w>\nki e\nren ces</w>\nli p</w>\nsimil ar</w>\nsau di</w>\nvi g\narth ur</w>\npic ks</w>\nmil an</w>\nhon da</w>\nma xi\no g</w>\nste st</w>\nar ch</w>\nanaly tics</w>\nba sti\npear l</w>\nter ry</w>\nhor se\nast ro\nac ce\nlaun ching</w>\ninter national\ns no\nta sty</w>\nden ver</w>\nir l</w>\npe te</w>\ntor n\nadvant age</w>\nvar sity</w>\n\" \"</w>\nsol e</w>\ng c\nlan g</w>\ndemon str\nol ds</w>\nun ity</w>\nne ts</w>\ninsp ire</w>\ncre te</w>\nnash ville</w>\nnel son</w>\ne ter\nwal k\nhy un</w>\nm ack\ntre as\nsee king</w>\nra ge</w>\nbru sh</w>\nab and\nwhil st</w>\nco con\nh ong</w>\nshel ter</w>\ni p</w>\npossi bly</w>\nso o</w>\nit ed\nâ Ħ\nrac es</w>\nwar ming</w>\nqu in\ntele vision</w>\nmat ches</w>\nra pi\nment al\npal m</w>\njenni fer</w>\nrol ls</w>\nindi ana</w>\nb ars</w>\ncat ching</w>\nresc u\ncandid ates</w>\nfa re\nâł Ģ</w>\nse o</w>\nvie tnam</w>\nalph a</w>\nmichel le</w>\nvisi ble</w>\nre gre\nwn ed</w>\napp le\nli p\nf fe</w>\nli z\nyork shire</w>\nha il</w>\nse asons</w>\nbe gan</w>\nm d\nk c</w>\nla p</w>\nfascin ating</w>\nhel p\nur y\nu ms</w>\nnu ts</w>\nse m\nalong side</w>\nbri dge\nori al</w>\no ve\nworld cup</w>\nbriti sh\ncomfor table</w>\ni ve</w>\nhot els</w>\nfair s</w>\nhor ri\nso x</w>\nd ining</w>\nstre am\nbar ri\nss y</w>\nw im\nter ms</w>\nv u\npe re\nl ens</w>\nwal ked</w>\nr or\nl ars</w>\nshi eld</w>\ndou bt</w>\npro to\ncro ssing</w>\nme ant</w>\nmedi um</w>\nad ding</w>\ne b</w>\nche ap</w>\nfun c\npap er\nbran ds</w>\nry an\nfeed back</w>\ncol lins</w>\nun known</w>\ntro pical</w>\nsand wich</w>\nfal len</w>\nfor mu\nselec t</w>\nlo ads</w>\nansw ers</w>\nor i</w>\nmag a</w>\nd or</w>\ndu o</w>\nali e</w>\ndru m</w>\nur i</w>\nde er</w>\nsou l\nsh ut\nâĺ º</w>\nsto len</w>\ndon ated</w>\nbu zz</w>\npatri ots</w>\nha l</w>\nna sty</w>\nnomin ated</w>\nmon te\nki a</w>\nth ri\ning u\nte sts</w>\npe tro\nðŁĳ ĳ</w>\nho sts</w>\nne st</w>\nto pic</w>\npat ch</w>\nm my</w>\nhu gh\nab ilities</w>\nma the\ns miles</w>\ng b\nag enda</w>\ninsi ghts</w>\nchi p</w>\nph an\nfail ure</w>\ndg ers</w>\nha i\nsignific ant</w>\nsho ck</w>\nru ral</w>\ngl am\nfigu res</w>\npot us</w>\no ta</w>\nmini stry</w>\nappe ars</w>\nfe ar\nr h\nameric an\nh att\nson y</w>\nfi res</w>\ne di\nn ou\ne qui\nwh en\nunivers al</w>\nmad ness</w>\ni x</w>\nsculp ture</w>\nb ach</w>\nt to\nswe den</w>\net a</w>\nen to</w>\ndevelop ed</w>\nmonth ly</w>\nma ps</w>\nra h</w>\nle d\ndel ta</w>\nsa ints</w>\nis lam</w>\nben ch</w>\nfif th</w>\nv ard</w>\nso cks</w>\nwel coming</w>\nj e</w>\ntur ner</w>\nv b</w>\nad i</w>\nnor way</w>\nad y</w>\nhurric ane</w>\npor sche</w>\ntra dition</w>\nex am</w>\nnewsp aper</w>\nlu ci\na ver\nide al</w>\nd na</w>\nmadi son</w>\nðŁ §\nwit ness</w>\nac ou\ninsi ght</w>\nsi mon\nrobo t</w>\nsna ke</w>\nn bc</w>\nac o</w>\nro ss\nsh ment</w>\nreligi on</w>\nch ann\nin su\ncamp bell</w>\ninst alled</w>\nwe ather\nhor ses</w>\nol i</w>\nrober t\nk az\nðŁı Ģ</w>\nveter an</w>\nth read</w>\nquar ter\nea sier</w>\ncap ture</w>\nhi pho\nlaw rence</w>\nroman tic</w>\npas sion\ncl ay</w>\nox ford</w>\nth ai</w>\nstu dying</w>\nfi a</w>\nelec ted</w>\nmost ly</w>\nc b</w>\ntu mb\nâĢįâĻ Ĥ\nx l</w>\nsh an</w>\nfa ster</w>\nev ans</w>\nsli de</w>\nsh ri\nsee k</w>\nmi es</w>\nchemi stry</w>\npump kin</w>\ntu m</w>\n, ,</w>\nro om\nfi red</w>\nli ps</w>\npres ence</w>\naf f\nbrew ery</w>\narri ve</w>\nsw ag\nphoto graph</w>\npen gu\nchi ps</w>\nat tor\nval ues</w>\naccur ate</w>\ncon temporary</w>\nprinci pal</w>\ncannab is</w>\nari o</w>\nany where</w>\ngi a</w>\ndemocr ats</w>\nbuil dings</w>\nli ved</w>\nap s</w>\nneg ative</w>\nm are</w>\nbal lo\nli on\ndiam on\nloo k\nre form</w>\ntom my</w>\nil la\ntre ats</w>\nhundre ds</w>\nport land</w>\nwor thy</w>\nex cep\nar ia</w>\nido l</w>\nbe er\ncd n\ny u</w>\naw k\nðŁĩ ¨\nc ells</w>\nÃ ³\nident ity</w>\ndra wn</w>\nde vil\nf inger</w>\nth am</w>\nðŁĳ Ĭ\near ned</w>\nfin tech</w>\ndol ph\ntwee ting</w>\nevolu tion</w>\nðŁĵ į</w>\nest im\nm vp</w>\nn one</w>\nðŁĩºðŁĩ ¸\ntoyo ta</w>\nau x</w>\nmar in\nb old</w>\nl bs</w>\nste ak</w>\nmur phy</w>\nit able</w>\nlou is\nsol ve</w>\npi a</w>\nsk ir\nill ino\nwebin ar</w>\nban ana</w>\nlo v\nth on</w>\nvo ters</w>\nafford able</w>\ndefe ated</w>\nlm fa\nair lines</w>\nsuper b</w>\nany way</w>\ndeb t</w>\nbo red</w>\nver si\nme tal\nresponsi ble</w>\nm k</w>\ns se</w>\nf ay\ncau sed</w>\nf p</w>\nrecomm end</w>\npla za</w>\nspor ting</w>\nalli ance</w>\nau stri\nn n\nt ours</w>\nsurpri sed</w>\narti f\nth under</w>\nsur ve\nwor e</w>\nbri ef</w>\nnecess ary</w>\nz ie</w>\nash ley</w>\ndra ke</w>\nr t\nkni fe</w>\nim mun\nchar ges</w>\na the\nbri de</w>\nrep ly</w>\ng av\nbroad cast</w>\npu er\nbrace let</w>\ncap acity</w>\nharve st</w>\nid k</w>\nperfor man\nd ding</w>\nil ers</w>\npar a</w>\njam a\npro vince</w>\nch in</w>\nid ers</w>\nhar i</w>\nte aser</w>\nch en</w>\nre stor\nr at</w>\nfl at\ncol om\nðŁĴ ŀ</w>\nðŁĩ¨ ðŁĩ\nsmoo th</w>\nr t</w>\np itch\nstay ing</w>\nisra eli</w>\nt cot</w>\nper spective</w>\ndo ck</w>\nopen er</w>\nlo vel\nx o</w>\nclass room</w>\nl ington</w>\ngo al\nkenne dy</w>\nsh am</w>\nsp aces</w>\nmitch ell</w>\nhome coming</w>\nuk i</w>\nclaim ed</w>\nrecru it\ning o</w>\nmu fc</w>\nmon it\ng roo\nresi dent</w>\nper cent</w>\nper man\notta wa</w>\nint ment</w>\nan xi\nstand ards</w>\nwor ship</w>\nsche me</w>\nf x</w>\npot ter</w>\nbi an</w>\nathle tic</w>\naf gh\ns se\nsat ell\npar ties</w>\nâĿ¤ âĿ¤\ninfra structure</w>\nrela x</w>\nmo du\nwor n</w>\nsmo king</w>\ny ach\npractic es</w>\nwc w</w>\nam b\ndome stic</w>\ntay lor\nk entu\nprovi ded</w>\nmo di\nve g\n\" ...</w>\nob serv\nðŁĺ ©\nbe ard</w>\nm our\nan gry</w>\nðŁĺ ±</w>\nstartu ps</w>\nwoo den</w>\ndi ve</w>\nna il</w>\nanti que</w>\nro ses</w>\ntorn ado</w>\nm at</w>\n^ ^</w>\nsu spect</w>\nfar m\nde vices</w>\nme ga</w>\ntu l\nscholar ship</w>\nge e</w>\ndisa ster</w>\narri val</w>\npo in\nmar c</w>\nkati e</w>\nbb ed</w>\nfal se</w>\ndeser ves</w>\nric hard\nju ana</w>\nfre y</w>\ntion ed</w>\nhy bri\nr w\nsar ah\nach i</w>\nc ure</w>\no le\nmor ris</w>\nch ic</w>\nbroad way</w>\nla bel</w>\npa k</w>\npover ty</w>\ngol f\ne red</w>\nf u</w>\ner ies</w>\nbe es</w>\nalo gue</w>\nst el\nwire less</w>\nje wish</w>\nti de</w>\nblo cked</w>\nlife time</w>\nb har\nsp lit</w>\nam ster\nth i</w>\njo shu\nbr unch</w>\nha ps</w>\ns for\noo ps</w>\nka poor</w>\nhi king</w>\nsuppo sed</w>\nro of\nre as\ntra in\nti ght</w>\ntru mp\nbas ically</w>\nr r</w>\nea red</w>\nsee ds</w>\nentr ance</w>\nc p</w>\nwi e</w>\nson ic</w>\nvic tim</w>\nhe re\ne h</w>\near rings</w>\nsal mon</w>\narc tic</w>\nan ne\ndou gla\ncorru ption</w>\nhann ah</w>\nha sn</w>\nvo ices</w>\ncon ce\natt a</w>\nfle et</w>\nclin ical</w>\ndemocr atic</w>\nton y\nst ood</w>\nle f\ntwit ch</w>\na il</w>\nhonest ly</w>\nincre ased</w>\ndro me</w>\ndon na</w>\naccep ted</w>\nvisit ors</w>\nap ar\nad or</w>\np ar</w>\njer ry</w>\nra i\nbrand on</w>\nab u\n!! !!!!</w>\nme me</w>\nin gh\nglori ous</w>\nb hu\npu mp</w>\nj ol\nli ke\nfi sher</w>\nma z\nag an</w>\ndestin ation</w>\nplay list</w>\nle tters</w>\ngen u\nbr ace</w>\ncelebr ated</w>\nbann er</w>\nr he\ndra gon\nðŁĺ ħ</w>\nsig nature</w>\ngre y\nâľ Ķï¸ı</w>\nal ice</w>\nbe red</w>\nph er\nber n\nca th\nga thering</w>\nsc oring</w>\ninflu ence</w>\nsm iling</w>\nde pt</w>\nlo cal\na x</w>\nac u\nreti rement</w>\nhon or\nher self</w>\nchem ical</w>\nasse ss\ny all</w>\nfre qu\nappreci ation</w>\nac a</w>\ncho ir</w>\ncu z</w>\nso il</w>\nc il\nrepor ting</w>\nu h</w>\nenterpri se</w>\ngr at\njaco b</w>\nru m\nfe e</w>\nj ak\nsp in</w>\nbi kes</w>\nphi a</w>\nste re\np is\nbloo d\nt att\nra ft</w>\nwar ren</w>\nsh eri\nback stage</w>\nmar sh\nhash tag</w>\nther ine</w>\nre in\ngame day</w>\nguar an\nreci pes</w>\nmin ds</w>\nstron ger</w>\nissu ed</w>\nbic y\nn ak\nment ed</w>\nsc ary</w>\nu x\npre vious</w>\ntt le</w>\nth ats</w>\nac tors</w>\nu ma</w>\ntin a</w>\nbun ny</w>\npromo tion</w>\nu ss</w>\noli ver</w>\nmontre al</w>\nwhat s\nappreci ated</w>\nla kes</w>\nexcu se</w>\nkno wing</w>\npri zes</w>\nmusc le</w>\nshad es</w>\nsco t</w>\ning redi\nelectr onic</w>\nju an</w>\ncomb at</w>\ns ri</w>\ne h\nturk ish</w>\nl om\nstri kes</w>\npri son\nre e\npo pe</w>\nvi d</w>\nol dest</w>\ndol l</w>\nsw iss</w>\ncerti fied</w>\ncli p</w>\nre turning</w>\nlat or</w>\nle igh</w>\ntt es</w>\nwat son</w>\nheal ing</w>\nel im\nper haps</w>\nha ss\nk au\nd der</w>\nmou se</w>\nnew castle</w>\nindigen ous</w>\nwel comes</w>\nco le\ntau ght</w>\nno ise</w>\nappe ar</w>\njo e\ncan on</w>\nwedne sday\nu tah</w>\nc tive</w>\ndri ven</w>\ni v</w>\nc ell\nstri p</w>\nac c</w>\nfocu sed</w>\nar rest</w>\nsto cks</w>\nwo o</w>\nâ Ĺ\nnotic ed</w>\nshad o\ndi spla\nter ror</w>\nbor ne</w>\nsecon d\nque ens</w>\nwo ke</w>\nja il</w>\nno tt\ncam bridge</w>\nhar t\nse af\nfa x</w>\nac cept</w>\nâĺ ħ\ngoo ds</w>\nk at</w>\nt win\nh s\nthou sand</w>\ns ins</w>\nsu ite</w>\namp ton</w>\nar n\nrele v\nric har\nhoo ps</w>\nn bc\nclass ic\np ab\nsoldi er</w>\nde plo\nle ans</w>\ninstall ation</w>\ncla sh</w>\nle ban\nee e</w>\nti re</w>\nbelo ved</w>\nfu sion</w>\ntravel ing</w>\nne i\ncoo kie</w>\nglo be</w>\nphys ics</w>\ns q\nco l</w>\nwol ves</w>\nd l</w>\nex it</w>\n\" -</w>\nfoo tball\nle af\nster ling</w>\nhi de</w>\nminne so\nfresh man</w>\nnatu re\nindi e</w>\nsupp lies</w>\nbri s\niri sh\nink tober</w>\ndoo dle</w>\nic op\nmess ages</w>\nadul ts</w>\nrecor ded</w>\nfix ed</w>\nar do</w>\noffe red</w>\nunder ground</w>\ndr one</w>\np ine\nma inten\nand re</w>\nham mer</w>\ns x\nr ound\nhi ke</w>\nbra d</w>\nro me\nfu ll\non ey</w>\nro ws</w>\ncolum bia</w>\narchi ves</w>\nappro ved</w>\nbat ch</w>\nillino is</w>\nrecogn ition</w>\nshou ldn</w>\nfo g</w>\nnca a</w>\nke vin\nhuman ity</w>\nal though</w>\npow ers</w>\np ou\ns ar</w>\npe st</w>\nalco hol</w>\ncon sci\nphil adel\nen o\nt m\nok la\ncate gory</w>\nparticip ate</w>\naccu sed</w>\nbri ef\npo em</w>\nclu bs</w>\nconsul t\nja b</w>\nbig data</w>\namster dam</w>\nac ing</w>\ncerti fic\nn u</w>\nd at</w>\nimpro ved</w>\nand y\ncampa ig\npale stin\np ace</w>\nmo bi\nfeel ings</w>\nwol f\nbra in\npro pos\ninter active</w>\nprin ce\ninde x</w>\nc is\ncha e\npeace ful</w>\nco vering</w>\nac o\ncour ses</w>\nmon key</w>\nre place</w>\nb l</w>\nbloo dy</w>\ntal es</w>\nbrigh ton</w>\nneighbor hood</w>\ng ates</w>\nspiritu al</w>\naf raid</w>\nbre ast</w>\nb ones</w>\nðŁĳ ī\nvide o\nw au\ntou ch\ninju ries</w>\ncar l</w>\nri x</w>\nune x\nâĢ ¢\nfre d\nconsi dered</w>\nthu si\nan ch\non y\nu sa\ngraph ics</w>\nac re</w>\nðŁĺ ©</w>\ncom memor\ncom mod\ngo ti\nguar dian</w>\nstar bucks</w>\npre vention</w>\nhaha haha</w>\nadmini stration</w>\nportu gal</w>\nfac ulty</w>\nbet a</w>\nul a</w>\nal bert</w>\nbre ath\ner i</w>\nle tting</w>\ntr ic\nment ation</w>\nincredi bly</w>\nten nes\nv d</w>\nðŁĻ Ī</w>\ned die</w>\nbr ick</w>\ngr ill</w>\nbt w</w>\nwat ches</w>\nresear chers</w>\nt ney</w>\nni e\np as</w>\na ster</w>\nvi br\npoke mon</w>\nch rome</w>\ngo at</w>\npitt s\nil ly</w>\nfesti ve</w>\ny d</w>\ncan al</w>\nðŁ Ĩ\nfi es</w>\ncar los</w>\nre que\npartic i\ntra ins</w>\nsam ple</w>\ntemper ature</w>\nsym ph\npic king</w>\nin door</w>\nz ers</w>\nplayo ffs</w>\n____ ____\nap es</w>\nly rics</w>\nislam ic</w>\nperforman ces</w>\nd ick</w>\nspar k\nse as</w>\nhom a</w>\ngr ound\ndisc i\nemploye e</w>\ncom mu\nalas ka</w>\nal an\nfe ast</w>\ndg ing</w>\nban king</w>\nmanu el</w>\nslow ly</w>\ntru cks</w>\nmc car\noo o</w>\nsc rat\norche stra</w>\nindivi du\nm x</w>\nbre ath</w>\nstair s</w>\nequ ality</w>\nbla ke</w>\nloc ations</w>\ncocon ut</w>\nbalti more</w>\naa a</w>\nl c\nðŁı Ĩ\nhar vey</w>\nresi st</w>\nimmigr ation</w>\nadid as</w>\nfil i\nre f</w>\nlg bt</w>\nmo s</w>\npp i</w>\nken ny</w>\nterr or\nban e</w>\napol is</w>\ns g\nsocial media</w>\nka i</w>\nhon est</w>\nas sas\nbol lywood</w>\nâĢįâĻ Ģï¸ı</w>\nferr ari</w>\nhor n</w>\ncryp to</w>\nbo om\nmainten ance</w>\ni di\ns man</w>\nw l</w>\next ended</w>\nin sul\nve s\ngo sp\ntr i</w>\npi g</w>\ntar ge\ncel er\nst ati\nsm h</w>\nri dic\nappe al</w>\n? )</w>\ncon clu\ncos me\nshe ep</w>\nchristop her</w>\nen thusi\npo lish</w>\nme ts</w>\noun ded</w>\nsustain ability</w>\ncreati vity</w>\ncon crete</w>\nra i</w>\nali en</w>\nble ss\nte es</w>\nclu b\nro t</w>\nbo s</w>\nex ist</w>\nperfe ction</w>\nlu ck\nrock y</w>\nexpen sive</w>\nmean while</w>\nhappy birthday\npre t\nthr iller</w>\nca ve</w>\nplayo ff</w>\nsom er\nl u</w>\nle x</w>\ndef ence</w>\nam writing</w>\nhome less</w>\npro phe\nch et</w>\npast or</w>\nðŁ¤ £\nland er</w>\nww w</w>\nĢ ï¸ı\ntic a</w>\n! #</w>\no tic</w>\nrad ar</w>\npo sters</w>\npow der</w>\npo li\nha un\ntra p</w>\nbl in\nassau lt</w>\nshor ts</w>\nre y\nsh y</w>\nsqu ir\nrac ist</w>\ngar lic</w>\nfu r</w>\nremo te</w>\nsm ell</w>\nimpre ssed</w>\nfing ers</w>\nâł Ģ\ndin o\nle ment</w>\ns nu\npromo ting</w>\nstr ing</w>\nproduc tive</w>\nb age</w>\nma son</w>\nra z\ndirec tly</w>\nj k</w>\nev al</w>\nðŁĳ Ĭ</w>\ndoc tors</w>\nco w</w>\nri der</w>\nst v</w>\nre move</w>\nw u\nna than</w>\nro d\nn r</w>\n= ></w>\naffe cted</w>\ninve st</w>\nmp tion</w>\ng inger</w>\no d</w>\nagricul ture</w>\ns que\nmu g</w>\ncoun ting</w>\nke e\nmag nific\ncoo k\nani stan</w>\nroo t</w>\nplac ed</w>\nsym po\ngh ana</w>\nun d</w>\nche er\nthro wing</w>\nsecre ts</w>\nf illing</w>\nopti mi\nbutter fly</w>\nbu bb\nðŁĺ ī\nterri ble</w>\nd g</w>\nsil k</w>\nobse ssed</w>\nlo u</w>\nai de</w>\nsal ute</w>\nmon u\nphiladel phia</w>\nscienti fic</w>\ni st\nu ae</w>\ndess ert</w>\nbott les</w>\ncan yon</w>\nðŁĺ Ī</w>\ncar ib\no ther\nw ich\nre source</w>\nguil ty</w>\nun d\nle on</w>\ne ss</w>\nkan e</w>\nel e</w>\ntra iner</w>\nhe im</w>\nan te</w>\nman age</w>\nroo kie</w>\ntre ated</w>\npo ses</w>\nrs vp</w>\ncau ses</w>\naw ak\nje well\nle tt</w>\non ics</w>\ntit les</w>\ncardi ff</w>\ng aga</w>\nbu mp\nuse ful</w>\n? !\nloo se</w>\nbb ing</w>\n: :</w>\nargent ina</w>\nde bu\ncy cl\nwh el\ndis gu\nj el\nk ills</w>\nbio logy</w>\nex ter\ntra sh</w>\nbo dies</w>\ntr am\ncircu it</w>\nexpe ct\nla ds</w>\nw ells</w>\nsho t\nge e\nnaren dr\nfa stest</w>\nb ent\nb ills</w>\nmar shall</w>\nh ats</w>\nintro duce</w>\nciti zen</w>\nim possible</w>\ngi b\naz z\nnet working</w>\nr ant</w>\nthin k\nin dy\nst ops</w>\nf theday</w>\nbri an\n* *\namo di</w>\ndom e</w>\ncoura ge</w>\npac king</w>\naf fairs</w>\ng n</w>\nsi zed</w>\nent ary</w>\npol and</w>\nswit zer\nafgh anistan</w>\nw u</w>\nten der</w>\nsubscri be</w>\nmo sco\natt end\nrepublic an</w>\nhon ey\nâĢ ĭ</w>\nsi mul\nwe ster\nfoo die</w>\nor o\nmidd le\nab t</w>\nco pies</w>\nma je\nnarendr amodi</w>\nty pical</w>\ninspir ational</w>\nvit am\nwis con\ncu bs</w>\ntiv ity</w>\nh ali\ne ars</w>\nk ay</w>\nd are</w>\nmari juana</w>\ncu rious</w>\nan ia</w>\ntom ato</w>\nre mind</w>\nðŁĩ ·</w>\nsc ared</w>\ncou p\npo et</w>\nland ed</w>\nri d</w>\nwra pped</w>\nmor ri\nclimb ing</w>\ne ws</w>\nfe eding</w>\ncon tra\ntho logy</w>\ngri d</w>\nti vely</w>\nread er</w>\nla ser</w>\ndi ving</w>\ndi g</w>\nlat in</w>\nti ed</w>\nshake spe\no ci\nad m\nshow ers</w>\nchu ck</w>\nmar cus</w>\noo s</w>\nkne e</w>\no live</w>\now l</w>\ndy lan</w>\nan no\ng ym\ndeci sions</w>\nwell ness</w>\narri ves</w>\nsati s\nchri s\nthur s</w>\nðŁ¤ £</w>\ninter views</w>\nthank you</w>\nswitzer land</w>\nover night</w>\njourn alist</w>\nser ves</w>\nvol can\n.... ...</w>\nplo t</w>\nnic ol\ncar rying</w>\nmag ne\ntre asure</w>\nex p\nbe ver\nðŁĺ ¢</w>\nmar ty\nmo le\ndon ations</w>\nrecogni zed</w>\nb h\ndu s</w>\nsh ann\nal do</w>\nsuccess fully</w>\nent e</w>\nðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ\ncab inet</w>\ncu is\ntit led</w>\nd as\nso l</w>\nstrate gies</w>\ndeli vering</w>\nad ds</w>\nani an</w>\nne ther\nðŁĴ ĥ\ncon tain\nsu its</w>\npa irs</w>\nto dd</w>\nrel la</w>\nro pe</w>\nci o</w>\ncro p</w>\npaint ings</w>\nsu z\nre jec\nbu st</w>\nd h</w>\nfra ud</w>\nm h\ncontro l\nje al\ndestroy ed</w>\nal lows</w>\nwo ol\nminneso ta</w>\nom en\nj u</w>\nsympo sium</w>\nd af\nlim it</w>\naccoun ts</w>\nload ing</w>\ninter n\nre solution</w>\nhol land</w>\nqu al\nmeet ings</w>\ngra ve</w>\ncam ping</w>\nv am\nre nov\nliber al</w>\nam ber</w>\ngre e\nhu mb\nfe ver</w>\nel ing</w>\nbroo ks</w>\nà ²\nbe th\nad ed</w>\nal t\nro e</w>\nperform ed</w>\njo sh\nfrank lin</w>\nnic ole</w>\nde ss</w>\nbb s</w>\nm g\nnet works</w>\nmin im\nal t</w>\nweap ons</w>\ngu y\njas on\ng ha\nharb our</w>\nat on</w>\npra ise</w>\nkentu cky</w>\nbel fast</w>\nst icks</w>\nblo ss\nho pes</w>\nan thro\nfamili ar</w>\nwa it\nch ile</w>\ndepre ssion</w>\nla x</w>\nje ts</w>\nle ice\nrecei ves</w>\nsi er\nan k</w>\nde x\ninde ed</w>\nfle xi\nfab ric</w>\nlam b</w>\nhel icop\nam anda</w>\nâĢĶ âĢĶ\ncompe te</w>\nsn ack</w>\ntechno logies</w>\nsy rian</w>\nmom s</w>\nmu ham\ncho sen</w>\nan at\ndev on</w>\nshar ks</w>\nre t</w>\nfundra iser</w>\nselfi es</w>\nst ations</w>\ncommunic ations</w>\ntennes see</w>\ntu tor\nro t\nvalu able</w>\ndynam ic</w>\nnur se</w>\ni ed</w>\nearth quake</w>\ndeser ved</w>\na ve\nsar a</w>\nstre tch</w>\ndougla s</w>\nne pal</w>\nÃ §\nob viously</w>\nd ame</w>\nra pe</w>\nany body</w>\nk w\npat rol</w>\nhol ders</w>\nh anna</w>\ninfo graphic</w>\nec o</w>\nbe ating</w>\nstan ley</w>\nbo ats</w>\nri bb\ne z\nwit ch</w>\ninv a\nac id</w>\nboar ding</w>\n- @</w>\ngi l</w>\nda ve\ncare ers</w>\nopp os\nl loy\nin ter</w>\ndo pe</w>\nre su\nj agu\nsh ade</w>\nin dy</w>\non ist</w>\nrel ations</w>\nag en\nab le\ninci dent</w>\nme ter</w>\nshar ma</w>\nid r</w>\npro ve</w>\nimmedi ately</w>\ntro ops</w>\nam an</w>\ng low</w>\ngaz a</w>\nblo cks</w>\nperson al\nchron ic\nall er\nsi d\nsh r\nwhats app</w>\nlu cy</w>\nar chae\nho u</w>\njourn alism</w>\nour selves</w>\ngo t\nthe med</w>\nshap ed</w>\nwe ak</w>\ncas ual</w>\nleng th</w>\nsla m</w>\nab bey</w>\ne v</w>\ncoun ter\nest a</w>\nreci pi\ncha pel</w>\nexpan sion</w>\nsel f\nsuff ering</w>\nsp ice</w>\nn z\nsp art\ndesp er\nboo king</w>\nquart ers</w>\ny on\nðŁĴ Ĺ\np k\ncontinu ed</w>\n- #</w>\nman hatt\ntal ked</w>\nsh en\ncom bo</w>\nhybri d</w>\nje ans</w>\nliqu id</w>\nse al</w>\nre tweets</w>\nac celer\ncollec tive</w>\nt as</w>\n: ))</w>\nprofession als</w>\nra w\no tt\nsu san</w>\nir ing</w>\nokla homa</w>\nre ven\nsurvi val</w>\ncre ator</w>\ntran sit</w>\nst ac\nsur f\ni k</w>\ned iting</w>\nch illing</w>\nbai ley</w>\nste al</w>\nra ble</w>\npa rent</w>\nhun ger</w>\nsn app\ncollec t</w>\nphilos oph\ndedic ation</w>\nc f\nc m\nle ep</w>\nrepe at</w>\nre ha\nun fortun\na er\na ero\nabstr act</w>\nmon itor</w>\nag ents</w>\nbu l</w>\nsci ence\nharb or</w>\ndrag ons</w>\nfloo ding</w>\nac compli\nd ash</w>\njuli a</w>\nthe red</w>\ntues day\ncy ber</w>\nb low</w>\nta ined</w>\nle m\nrefe rence</w>\npp o</w>\nne goti\nchar le\ncon nor</w>\nau lt</w>\naccess ories</w>\ncommissi oner</w>\nrain y</w>\nre ar</w>\nadvis ory</w>\nluc as</w>\nma id</w>\nco al\nk av\npol o</w>\nðŁı ¾\ntran sport\nmar gare\nstraw berry</w>\nbur ns</w>\ngre ens</w>\nne v\npartici pants</w>\ncol in</w>\nbelgi um</w>\ncol our\nin form\nd ell</w>\nbr on</w>\ncal y\nkick off</w>\nstrate gic</w>\nre union</w>\nhon ors</w>\nli b\negy p\nâŃĲ ï¸ı</w>\nhy po\nsi zes</w>\nregi stered</w>\nbet es</w>\nrelax ing</w>\nbloo m</w>\ninten se</w>\nvalent ines</w>\ninsan e</w>\nw wii</w>\np x</w>\ntri o</w>\nbla de</w>\nwiscon sin</w>\ncon e</w>\nplat in\nali ze</w>\nra ven\nincre asing</w>\nindi ans</w>\nil ian</w>\nbl u</w>\nrabb it</w>\nexten sion</w>\nje f\nau di</w>\nfer ry</w>\ns ell\na day</w>\nus b</w>\nswe at\ncham pag\nmetho d</w>\nmem ph\nassi st</w>\ns by</w>\nca pe\nremo ved</w>\nmag n\nv t</w>\nr ams</w>\nf bi</w>\ntack le</w>\nphe w</w>\nh on</w>\nmotor cycle</w>\nsu spec\neleph ant</w>\nsub ject</w>\nlet te</w>\nda iry</w>\nwhe at</w>\nawk ward</w>\nac t\ntro l\nmit ted</w>\nzay n</w>\nsheri ff</w>\nene my</w>\ncon s</w>\nke tt</w>\nbul ls</w>\nev alu\nbt c</w>\nsatell ite</w>\nho lo\npor ter</w>\ndia betes</w>\nbet ter\nrele asing</w>\nsur f</w>\n: -</w>\nse basti\ncollec ting</w>\nen cing</w>\ne thi\ngo ds</w>\nal ley</w>\nhealth y\nm ills</w>\nsma sh</w>\nco pper</w>\ncr ack</w>\nread ers</w>\nsp ac\nlicen se</w>\nbas ket</w>\nbang la\nen tic</w>\nom i</w>\nm ere</w>\nsi vely</w>\nanim ation</w>\nlan es</w>\ndent ally</w>\nchill in</w>\nfi e</w>\nk aren</w>\ndep th</w>\nli pse</w>\nn g\nri p\nmel o\nsand y</w>\nðŁĳı ðŁĳı\nvin cent</w>\nnu t\nhu g</w>\nwho le\ncre ates</w>\n? ???</w>\nâĿ¤ï¸ı âĿ¤ï¸ı</w>\nbak ed</w>\nup grade</w>\nrober ts</w>\nhar a</w>\ncarib bean</w>\nauth entic</w>\nmb s</w>\nmosco w</w>\nattor ney</w>\nwi ki\nch lo\nhu ll</w>\ncor k</w>\n\" !</w>\nsty lish</w>\nðŁĵ¸ :</w>\ndi ary</w>\nimpro ving</w>\nex pand\nbri ght\npollu tion</w>\nk nights</w>\nperson ality</w>\nchec ked</w>\nfac ilities</w>\nz el\nbow ling</w>\ngu er\nðŁİ Ĥ</w>\non going</w>\nun its</w>\nhoo k</w>\nbe ck</w>\nconfl ict</w>\nto dd\nfar ming</w>\neduc ational</w>\nk ak\ncla y\nstro ke</w>\nbel ly</w>\nexplo re\nmill enni\nth m</w>\nloo p</w>\nsm s</w>\nconsi st\ncir ca</w>\nbr yan</w>\nd ab\nyoun ger</w>\nsoli dar\npp a</w>\nexperi enced</w>\nb ella</w>\nbo ard\nshef field</w>\nsteph en\nconsu mer</w>\nsub mit</w>\nspon sor\nt ang\nag gre\ncomb ined</w>\ntrac king</w>\nsand ers</w>\nb az\nsurvi ve</w>\nfer red</w>\nequ al</w>\nse p</w>\nre ed</w>\nstr ong\npriv acy</w>\nst ap\nun g\nac ry\npa sta</w>\npir ates</w>\nag er</w>\nfair y</w>\ndu p</w>\nintroduc ed</w>\nwi p</w>\nlet s\nspr ay</w>\nðŁĵ º</w>\ngre w</w>\na sts</w>\npitts burgh</w>\nnew york</w>\njo ey</w>\nlau ren\ntra de\nch op\npi pe</w>\ncla ire</w>\nbehavi or</w>\nv ap\ncre ws</w>\nlap top</w>\nðŁ¤ Ĺ</w>\nche ster\ndisci pl\nd f</w>\nout doors</w>\nk s\ngo ver\nsuper star</w>\ncas ino</w>\nfar mer</w>\n; -)</w>\nre turned</w>\nðŁı Ī</w>\nma il\nroa sted</w>\nco sta</w>\nv ill\npe z</w>\ngard ening</w>\ndistribu tion</w>\nsh ining</w>\ninve stors</w>\nra sp\ndec ades</w>\nreali zed</w>\nbar n\np ti</w>\nst able</w>\nut d</w>\npan thers</w>\nm ens</w>\nb n\nca de\nbu cket</w>\nyn n</w>\nwhen ever</w>\nwa ke\nda is\nber nie</w>\nlo dge</w>\nju lie</w>\natmo sphere</w>\nðŁĺĺ ðŁĺĺ</w>\nmajor ity</w>\npar ti\nexc it\ncu t\nme h\nmusli ms</w>\nbe gun</w>\nfli ghts</w>\nvene ss</w>\nce me\npo sing</w>\nso le\ng ou\ndark ness</w>\npe ach\ncel tic</w>\nauth ority</w>\ngrand ma</w>\nful ness</w>\nsmi th\nspeci fic</w>\ngar cia</w>\nco ins</w>\ngood ness</w>\naldu b\nrecru iting</w>\nden nis</w>\ngar y\nsle eve</w>\nweap on</w>\npl z</w>\ndisco ver\nharri son</w>\nrecruit ment</w>\nja i\nch im\ncom pared</w>\ntom s</w>\nmo thers</w>\nam y\narchi ve</w>\nt ask</w>\nben jam\nse g\nlaw yer</w>\nal um</w>\ninve sting</w>\nmi e</w>\nche z</w>\nj p</w>\na ke\nfl am\nwall paper</w>\nâĻ¥ ï¸ı</w>\nt ton</w>\nche st</w>\nfavor ites</w>\nwe igh\ncoo lest</w>\nr ating</w>\nrelev ant</w>\nlo gan</w>\nma ple</w>\nrun ners</w>\npri or</w>\npeop le\nma ur\nterrori st</w>\nte sted</w>\ncarni val</w>\nsu spen\nme asure</w>\nm v\ncyber security</w>\napp ren\nterror ism</w>\no z\nv ital</w>\nni es</w>\ngon z\nfun ded</w>\ntwi st</w>\nassess ment</w>\ndie sel</w>\nen for\ncolum n</w>\nad dressing</w>\nca sts</w>\npay ment</w>\nx ton</w>\nfi er</w>\n, '</w>\nla st\nne e</w>\nun less</w>\nclo se\nsk ill</w>\ncuis ine</w>\nfun eral</w>\nti les</w>\na un\nk ru\nrelation ships</w>\nðŁĴ ¯\nev ent\nâĢįâĻĤ ï¸ı</w>\nkind ness</w>\npro posed</w>\nacou stic</w>\na es\ndefen der</w>\ndan ce\nh tt\nw at</w>\nvo y\nðŁ¤ ĺ\nau s\ncli ff</w>\nsear ching</w>\nbeauti fully</w>\nin qu\nat l</w>\nspeci alist</w>\nðŁĲ ¶</w>\nda i</w>\ntra ils</w>\nclass ics</w>\ninst ant</w>\nv ous</w>\nre venue</w>\nmar ch\nkir k\nfr inge</w>\nfire works</w>\ntri via</w>\nâĺ ħ</w>\ntr action</w>\nwal ter</w>\nmo to\nl ily</w>\natt itude</w>\ncli mb</w>\nsc an\nsav ings</w>\nc w\nfa ith\ncred its</w>\nab led</w>\ngra ff\nauto graph\nhe he</w>\nran ch</w>\nha d\nro gers</w>\nðŁĮ ¹</w>\nf in</w>\nre qu\nfol k\nad ditional</w>\nlyn n</w>\nu ber</w>\ndol lars</w>\nlo gic</w>\nwor th\nso m</w>\nthe sis</w>\np ound</w>\nbi c</w>\nst ur\ncer am\nspen cer</w>\nen tered</w>\nv amp\norgani zed</w>\nâľ Ī\npp s</w>\ntr on</w>\nmerce des</w>\nno ti\ncompet itive</w>\ndo w</w>\nous ness</w>\nvic tor</w>\ngr illed</w>\nna i</w>\npu tin</w>\nab ra\nbl ame</w>\nalex and\nanim al\ndec ent</w>\np ent\ninter ior\n:' )</w>\nbut ler</w>\nbal let</w>\nðŁĴ Ķ</w>\nalbu ms</w>\ndown s</w>\nla d</w>\nsi r\npla in</w>\np ers</w>\nblon de</w>\ndis c</w>\npaki stan\nse ment</w>\nga a</w>\nw age</w>\nch as\nman i</w>\nco ps</w>\nterr it\nlo l\nlau ghter</w>\nri vers</w>\nmagnific ent</w>\nlam p</w>\nw b\nnew sle\nchar ts</w>\nble ssing</w>\np unch</w>\nlon gest</w>\nfl oral</w>\ncu tie</w>\nfare well</w>\nsto pping</w>\nmb b</w>\nbu d</w>\nchee se\nde cla\nsi m</w>\nmc donald</w>\nde ter\nyou th\nt ch\nfre der\nkin dle</w>\nfer n\nat or\nas leep</w>\np ond</w>\nspr int</w>\np ounds</w>\nla zy</w>\ngh e\nfundra ising</w>\ndead ly</w>\ngran de</w>\ndou g</w>\nhe y\nlin da</w>\nconsi dering</w>\ni um</w>\ngol den\nvi k\nauth ors</w>\ndi ss\nu ally</w>\nappropri ate</w>\nmor ning\ny le</w>\nhon oring</w>\nfoli o</w>\nbe c</w>\nre bec\nfin land</w>\nformu la</w>\ncorn wall</w>\nsh ay\ncau sing</w>\nbl end</w>\nsig nal</w>\nt ent</w>\nkash mir</w>\nnation als</w>\nhar mony</w>\nsc out</w>\nacce ssi\nhe ight</w>\nmedi eval</w>\nimpro vement</w>\nke es</w>\nprac tical</w>\ncar d\nde par\nhu n</w>\nom ing</w>\ncal gary</w>\nste l</w>\nbu bble</w>\ngur u</w>\nma h</w>\nunex pe\nn h</w>\ned a</w>\nme at\ni ge</w>\nsi o</w>\ngod dess</w>\nin ches</w>\ntun es</w>\nbr itt\nsti on</w>\nra j</w>\nâĻ «</w>\nmer cy</w>\nðŁĴ ĺ</w>\nsen ds</w>\ni est</w>\npol ici\nval e</w>\nreduc ed</w>\nas ap</w>\nvi jay</w>\ndefen sive</w>\ncelebr ations</w>\nri ders</w>\nmed itation</w>\nhar mon\ng ing\nÂ ¡</w>\nprogram ming</w>\nin au\nsud den\nm h</w>\nreplac ement</w>\nsk u\nj ar</w>\ngra des</w>\nta st\nk itt\nbrand ing</w>\nk aw\nboo t\nf ought</w>\np ays</w>\ng f</w>\niz ation</w>\nho p\nk k</w>\nactivi st</w>\nv end\ncoast al</w>\ncha os</w>\nðŁĶ ´</w>\nse me\nbill board</w>\nli fting</w>\ncu mb\nsc al\nðŁĸ ¤</w>\nstru ck</w>\nl v\nindie dev</w>\nbeat en</w>\njun gle</w>\nal right</w>\ndestin y</w>\nm ing\nk c\nch ances</w>\nom an</w>\nq atar</w>\ncra f\ntra ined</w>\npri x</w>\nchar m</w>\no tive</w>\ns mu\ne c</w>\nand ers</w>\nhand ed</w>\nal ban\ncertain ly</w>\narri ving</w>\ni ze</w>\nsa i</w>\ntr ack\npain ter</w>\nhu mble</w>\nappo intment</w>\nhead line</w>\nmanag ing</w>\nmo d</w>\nas pe\nandre a</w>\nÃ ¤\nethi op\nun ited\nexi st\nbal i</w>\nk ad\nn t\nd red</w>\nre x</w>\nrecogni ze</w>\ntam pa</w>\nbe ers</w>\nati a</w>\nhe els</w>\nno te\ntransport ation</w>\ntur tle</w>\nre de\nhipho p</w>\nsp icy</w>\nsp urs</w>\nâ¬ ĩ\ncor p</w>\nther n\nto ast</w>\nhur ry</w>\nproper ties</w>\nma ge</w>\nmar co</w>\nele ments</w>\nbou ti\nsyn drome</w>\nms g</w>\ndevelop er</w>\ngra ders</w>\nhe im\nre sil\noff ices</w>\ndel ay</w>\ndi men\nvin tag\nbarbar a</w>\nðŁĺ ±\nvene zu\ncu lar</w>\nfac ed</w>\nbar n</w>\nðŁĺ Ĩ</w>\nsurvi vor</w>\nwor m</w>\nconfu sed</w>\npassion ate</w>\nØ ±\nidenti fy</w>\nelectr icity</w>\nsou ls</w>\nbrad ley</w>\nrepor tedly</w>\nlun ch\nshel f</w>\neli a</w>\nswee t\nsmoo th\nemplo yment</w>\nam el</w>\nmanhatt an</w>\nste am\noun ts</w>\nye p</w>\nli ving\nun e</w>\ndescri be</w>\nca res</w>\nman ila</w>\nsha wn</w>\nac ted</w>\nbas h</w>\nst even\nre st\npet ition</w>\ndiv ine</w>\nwel sh</w>\nrac e\nplatin um</w>\nðŁĮ ¸</w>\np b</w>\nextra ordinary</w>\nsolidar ity</w>\nm all\non ion</w>\nschedu led</w>\ngame of\nfer gu\nde ms</w>\nnor m\np k</w>\ntri als</w>\npolici es</w>\npubli shing</w>\nst ole</w>\nfron t\ncharac ter\nvan ia</w>\nex ce\nsti e</w>\nsc a</w>\nresi dential</w>\nsa iling</w>\nðŁĶ¥ðŁĶ¥ ðŁĶ¥</w>\nspons ors</w>\nth ick</w>\nchampag ne</w>\nshe pher\ncontinu ing</w>\nven ice</w>\nper th</w>\nna p</w>\na ster\ny ak\nun limited</w>\ncho ices</w>\nne o</w>\nhi v</w>\nrepor ter</w>\nbru ssels</w>\nf old</w>\ndy s\nse mi\nla wn</w>\nit alia</w>\nwi fi</w>\nas k\nem ed</w>\nfr ame\nmonit oring</w>\nste ad</w>\ni da\ngr in\nis a\nfli p</w>\nre stric\noffen sive</w>\natta ched</w>\ndi sh\nwh y\nphilli ps</w>\ngre et\np als</w>\nmix tape</w>\nv ou\nfiel der</w>\nspar k</w>\nalber ta</w>\ng len</w>\nca sh\ns ri\nu ri\nro dri\nentreprene urs</w>\nclimate change</w>\np sy</w>\nd le\nem ents</w>\nlin ked</w>\nnether lands</w>\nacci dentally</w>\noppos ition</w>\nvel vet</w>\nra ys</w>\nc w</w>\nom o</w>\nm f</w>\nlmfa o</w>\nnewsle tter</w>\n: )\ntoi let</w>\nliter ature</w>\ndi sp\nphili p</w>\nuni form</w>\nsudden ly</w>\nhead er</w>\ncool er</w>\n-- -</w>\nprou d\nbri g\nnis san</w>\nscienti st</w>\nj ah</w>\ncon centr\npac ks</w>\nappo inted</w>\nso ap</w>\neng age</w>\ncho se</w>\nâĻ ¡\nse tup</w>\njeal ous</w>\nhar ry\ng ation</w>\ntun nel</w>\nte mp</w>\nosc ars</w>\ndec ade</w>\nrecomm ended</w>\nchild ren\nab a</w>\nanxi ety</w>\nve ments</w>\nsal on</w>\npho too\norgani z\nmach ines</w>\nab s</w>\nvil le\nhy pe</w>\nti ff\nemer ging</w>\nav geek</w>\n[ #</w>\ncontribu tion</w>\nbra dy</w>\nre sto\ng mail</w>\nfit z\nphoto shoot</w>\nhel met</w>\nh t\neleg ant</w>\nug anda</w>\nnur sing</w>\nor leans</w>\npen n</w>\nna h</w>\nfoo tage</w>\nem a</w>\nw o</w>\nw ad\nconcer ns</w>\nve re\nre mark\nwho ever</w>\nstr ang\np t\nqu it</w>\nsh ang\nhistor y\ns ick\nperman ent</w>\nill ness</w>\ncol d\nvisi on\nhe m</w>\nar row</w>\ncon vic\npin k\noc cup\nbal d\nex hau\nu of\nam o</w>\non t</w>\nãĥ »</w>\nadop t</w>\nla id</w>\nsmo ked</w>\ninter pre\ness enti\nassoci ated</w>\nb d</w>\nbb y\nfi er\ninst all</w>\ndipl om\ncon diti\nc f</w>\nw ak\nany a</w>\ngr aci\nfi sher\ns ss</w>\nap r</w>\nil it\nmus ician</w>\nsymph ony</w>\ncor d</w>\nh ack</w>\nle gi\nl v</w>\nbless ings</w>\nhum or</w>\nsc ra\ne ti\nmin ster</w>\ntrav elling</w>\nbu sh\njewell ery</w>\nli me</w>\n!! !\npregn ant</w>\npe e</w>\nlo b\ncap ital\nip a</w>\npen cil</w>\nla bor\nduc ks</w>\nprou dly</w>\nwedd ing\ndere k</w>\nm w</w>\npe g</w>\nvalent ine\nan gu\nre treat</w>\npro spect</w>\ndang er</w>\nvul ner\nup set</w>\n, #</w>\nsr k</w>\nx im\nthur sday\nn fl\nkis ses</w>\nre ds</w>\ncr ack\nre ward</w>\nc u</w>\nko k</w>\nme te\naband oned</w>\nit t</w>\nme als</w>\nsp ell</w>\nstan bul</w>\ndel ays</w>\nru m</w>\nle op\ngu m</w>\nno va</w>\nsuper man</w>\nch ick</w>\nm is</w>\ndram atic</w>\ninno cent</w>\nr ounds</w>\nre c</w>\nauti sm</w>\nbangla desh</w>\nmor al</w>\nmo vie\nsp oo\nk la\nâĥ £\nou ting</w>\nmess i</w>\nab road</w>\nloo kin</w>\na im</w>\nq i</w>\nst ack</w>\ncolla ge</w>\nà ¯\nhud son</w>\nsc an</w>\nho e</w>\nch au\noc cur\ncomm ander</w>\nho les</w>\nðŁİ Ħ</w>\nbi as</w>\nv on\nstick er</w>\nma k\nresponsi bility</w>\ncolum bus</w>\nsa int\ned mon\nrac ism</w>\nfar ms</w>\nw en</w>\ngul f</w>\nmay o</w>\n!!!! !!!!\ncorpor ation</w>\nba chel\nel a\ninter nal</w>\nje ep</w>\nfol lows</w>\ndi alogue</w>\nde rer</w>\nsmart phone</w>\nhe len</w>\nrich mond</w>\nequ ity</w>\ns land</w>\nb g</w>\nne ar\nav i</w>\nmemph is</w>\nwe ir\ndiscu ssed</w>\nbad ge</w>\np up</w>\nmi stake</w>\nphen omen\nun ite</w>\nðŁ Ľ\nde pic\nri des</w>\nin augu\nn at</w>\nsof twitter</w>\ncomb ination</w>\ngosp el</w>\nâļ ¾\nad mission</w>\nretro gaming</w>\nðŁĲ ¾</w>\nsch u\nmb o</w>\njun ction</w>\nal arm</w>\nà ¦\ngr ac\nkh ali\nk ul\nm ale\ncap tion</w>\nwi sh\nte re\ncor ps</w>\nru bber</w>\nplay station</w>\ner in</w>\neffici ent</w>\nl or</w>\njo kes</w>\nin ary</w>\nnor man</w>\nlu is</w>\ninaugu ral</w>\nch ed\nâļ½ ï¸ı\ndi p</w>\nto e</w>\nstr at\naa c</w>\nam u\npi er</w>\nco tt</w>\ncomm and</w>\ntt en\nsn oo\ncu be</w>\nclo ses</w>\nclass ical</w>\ns word</w>\nexpre ssion</w>\nreach ing</w>\nn app\nco st\naffe ct</w>\nric o</w>\ngi f\nbrea the</w>\ntri be</w>\nor tho\nh ay</w>\nl g</w>\nfri es</w>\nn m</w>\nhi ding</w>\nrichar ds</w>\nen de\nmic ro</w>\ncapit ol</w>\ncop y\nro m\nregi me</w>\nmary land</w>\ntax i</w>\ndi al</w>\nembar ra\nun believ\nch t</w>\nv s\nelim in\no dd</w>\npen ny</w>\nsound track</w>\nl ings</w>\ntrans ition</w>\nrema ining</w>\na is</w>\nmali k</w>\n? !?</w>\nrand om\ndef end</w>\nul tra\ntru m</w>\ndanc er</w>\nst ol\ndri ve\na ver</w>\nro ast</w>\ndefin ition</w>\nse an\nexcit ement</w>\npartic ul\nsu rely</w>\nsh av\nber y</w>\ndi shes</w>\ncom m</w>\nis ol\ni am</w>\nob li\ngho st\nhugh es</w>\nchi efs</w>\nb as</w>\nconserv ative</w>\nspeci al\nfe min\nsh ri</w>\nn ancy</w>\ninte l</w>\ntu ne\nðŁĩ ª\njo el</w>\ngg le</w>\nmo to</w>\nðŁĺ Ķ</w>\nbu ck</w>\nd ag\nantic ip\nmont ana</w>\ngu id\nfro g</w>\nec raft</w>\nop e</w>\ndri ves</w>\nnu mer\nx y</w>\ncolor ful</w>\nwednesday wisdom</w>\nillu min\nbey on\ninau gur\ndeep ly</w>\npre fer</w>\nfor tune</w>\ncoo ked</w>\nti ble</w>\nâĺ ķ\nswe ater</w>\nit ter</w>\ntt y\nu i</w>\ngi e\ncom plic\n~ ~\ntax es</w>\ncu ps</w>\ndi verse</w>\nsam anth\nâłĢ âłĢ\nba king</w>\nsy mp\nwa i\nbe half</w>\nmer cur\ntravel s</w>\nðŁİī ðŁİ\nor ia</w>\neng aged</w>\njump ing</w>\nreti red</w>\nn aked</w>\np uni\nspeed way</w>\nsci ences</w>\nrehear sal</w>\non ym\ndy ou\npl ates</w>\nr ati\nkri sh\njaz z\ncar ol</w>\nra f</w>\npen alty</w>\ntim eline</w>\nru by</w>\nengine ers</w>\nra f\nbel le</w>\ndo se</w>\nche on</w>\nesc ap\nme g\nran k</w>\nor d</w>\nme gan</w>\nmer ch</w>\nec lipse</w>\nâĺº ï¸ı\nple dge</w>\nkir k</w>\nper si\nleice ster</w>\nsa k\nw k\nsaf ely</w>\nyy y</w>\nje t\npromis ed</w>\nj c</w>\nen ne</w>\nno ah</w>\nre no\nre a</w>\nðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ</w>\ntra il\nðŁĳ Ģ\nf d</w>\nsoo o</w>\nri min\nw k</w>\nà¸ ²\ni al\nx ox\nbis cu\nd ale\nfan dom</w>\nparticip ating</w>\nfla g\nprivi lege</w>\npe ach</w>\nmach ine\nbo ston\ngro ss</w>\no g\nmir acle</w>\nadop tion</w>\nu ss\nmon sters</w>\nbe ij\nclar ke</w>\npu shing</w>\npra ying</w>\nar o</w>\nd n\nell is</w>\napol lo</w>\nod ds</w>\nrefuge e</w>\nto w\nb p</w>\nðŁĩ¬ðŁĩ §</w>\nh end\napp eared</w>\nmemb ership</w>\npe an\ndu m</w>\nviol ent</w>\nv y\npotat oes</w>\naw w</w>\ngreet ings</w>\nt ts</w>\nac on</w>\nsh ane</w>\nphotograph ed</w>\ncra b</w>\ntemper atures</w>\ncu ba</w>\nc fc</w>\nwel com\nhe l</w>\nin nings</w>\nm k\nco de\nkno ck</w>\ngra ss\nswe dish</w>\np ta</w>\nick y</w>\nv at\nlin ing</w>\ns q</w>\nsa p</w>\nar c</w>\nannoun cing</w>\nsk ins</w>\ncit yof\nbr ing\nco x</w>\ngam er</w>\nit arian</w>\ni da</w>\nh d\nros se</w>\nsad ly</w>\nge o</w>\nâļ ¡ï¸ı</w>\ntag s</w>\nfa ther\nchan ge\nl ance</w>\nwhis key</w>\nadel aide</w>\nte c</w>\nstick ers</w>\nmarke t\nclass y</w>\nbad ass</w>\nflo rence</w>\nlin er</w>\nfro st</w>\nk ate\nac on\nscand al</w>\nes sex</w>\nðŁĺ ı\nvi vi\ndr ill</w>\nblo ggers</w>\nrecomm end\nd ha\nac res</w>\nro ma</w>\nbu y\ngro cer\ner ia</w>\nma har\nff er</w>\npatter ns</w>\nver i\ncom pu\nst ev\nang a</w>\nment or</w>\ndo o</w>\nit ali\ncdn poli</w>\non ly\nconduc t</w>\nelec tro\nde f</w>\nwh ale</w>\nprepar ation</w>\nbicy cle</w>\nvi ral</w>\nturn out</w>\nbra ss</w>\nqu ad\nhospit ality</w>\npack aging</w>\nden cy</w>\nceme tery</w>\nabo ard</w>\ndre aming</w>\npic ture\nt all\ninv ent\nad mi\no e</w>\ntem ps</w>\nqu an\nfun dam\npro mp\nresi dence</w>\nmu d</w>\nsour i</w>\nâĦ ¢</w>\ngraff iti</w>\ngi f</w>\nd nd</w>\ncom p</w>\ns war\npe eps</w>\npale stine</w>\ndevil s</w>\nsan g</w>\nassi stance</w>\nbi ke\nmissi ssi\ninter viewed</w>\nne phew</w>\ndru ms</w>\nv and\ngentle men</w>\nn sw</w>\ninst a</w>\nleban on</w>\nee ee\noli via</w>\nver y\nrou gh\nindustri es</w>\nm ation</w>\nðŁĺ Ĵ</w>\nbar rel</w>\nn ay\npo ps</w>\nmoder n\nill y\nare st</w>\non ents</w>\nprotec ting</w>\nv ans</w>\ne o</w>\nvi kings</w>\nrestaur ants</w>\nre ck\njac kie</w>\nandre w\nw illing</w>\nhe ath</w>\ncitiz en\ndisc rimin\nà¹ Ī</w>\nstu art</w>\nm ys</w>\nhi p\ntran sp\n\" ?</w>\nte x</w>\nsu shi</w>\nke d\ncro ssed</w>\ndist ur\npe dia</w>\nf ate</w>\nsome how</w>\nmo th</w>\nproce ssing</w>\nis s\nr in</w>\nu ts</w>\nyy c</w>\nver t</w>\nlg bt\nre id</w>\non to\narab ia</w>\nhabit at</w>\n= =\nstre ak</w>\nsimp son</w>\naddic tion</w>\nwim ble\ndeli vers</w>\nchalleng ing</w>\nðŁİ ¶\nfran ch\ne du\ns me\nai ds</w>\nhur st</w>\nth am\ntari an</w>\nremem bered</w>\npalestin ian</w>\nfe es</w>\ntru m\nsket ch\nur u</w>\nfit ting</w>\njes se</w>\nðŁĶ¥ ðŁĶ¥</w>\n---- ----\nba ch\nici a</w>\ncolo red</w>\nda h</w>\nassoci ate</w>\nint el\ns eller</w>\np u</w>\nstu ffed</w>\nac s</w>\nb s\nsh in</w>\ncooper ation</w>\ncertific ate</w>\nab u</w>\ningredi ents</w>\nre v</w>\nin ge\nel der\nchristi an\nbun dle</w>\nth ic</w>\ndir t</w>\nbeij ing</w>\ncomm it</w>\nted dy</w>\ned u</w>\nto day\ns field</w>\nw yn\nconfir ms</w>\nlo o</w>\nj v</w>\nene ss</w>\nal pha\nvir us</w>\nari um</w>\ngr ind</w>\nbri dges</w>\nintroduc tion</w>\npol ls</w>\nbac ter\nz ach</w>\ntermin al</w>\nra iders</w>\nfla vor</w>\nzom bie</w>\nvo d\nsp reading</w>\ngameof thrones</w>\neffici ency</w>\nlat ely</w>\nale m</w>\ntwee t\ncri mes</w>\ncl er\nde y</w>\ndg ed</w>\nhy un\npay ments</w>\ncir cus</w>\nðŁĺŃ ðŁĺŃ</w>\nmis souri</w>\nlu b</w>\nepiso des</w>\nc age</w>\npo s</w>\nmat ching</w>\ntumb lr</w>\nlin ed</w>\nge st\nam bi\nnar r\ning ton\nregu l\nblo wn</w>\nis le</w>\nco co\non don</w>\njoshu a</w>\ntour ing</w>\nsm a</w>\nsau sage</w>\nbest friend</w>\nbo eing</w>\ndesi re</w>\nsav age</w>\nra pper</w>\nde vo\nte ar</w>\ntake over</w>\ncow boys</w>\npo ker</w>\npar ag\npp e</w>\nh int</w>\nwe ars</w>\nse th</w>\nro les</w>\nl anc\nman ga</w>\nform at</w>\nfl yer</w>\nc ay\nmo or</w>\nba ke</w>\nspla sh</w>\nv ad\nker ala</w>\nproce eds</w>\nsil ly</w>\nreflec tion</w>\ndi str\nwi d\nsu it\nci vic</w>\nyan kees</w>\nby n</w>\nmigr ation</w>\ndi stin\nor ch\nfe mini\nquali fying</w>\ntu ri\no be\nhun dred</w>\ncra p</w>\nwan g</w>\nmathe mat\nbu re\nexpo sure</w>\nfergu son</w>\nseme ster</w>\nre serv\npl ym\na hu\nfac ial</w>\nwa x</w>\nwor ried</w>\nca b</w>\nvi o\nas a</w>\nco d</w>\nto pics</w>\np cs</w>\nhal o</w>\nrescu ed</w>\nhoriz on</w>\nar k\nâļ ª\nhol ly</w>\nel f</w>\nul ti\npu p\nquali fied</w>\nattend ance</w>\nati vely</w>\ndestro y</w>\ny c</w>\nfor th</w>\nphotoo ftheday</w>\nc ents</w>\nic eland</w>\nmeas ures</w>\nde sk\nport folio</w>\nartic les</w>\ndirec tors</w>\ndat ab\ne w\ncreep y</w>\noun ding</w>\nhon oured</w>\nmi st</w>\nj it\nmen tioned</w>\nport able</w>\niti c</w>\nd ann\nfriday feeling</w>\nam id</w>\nti ger\nscri p\nhelicop ter</w>\nhard ware</w>\nexpl or\nwork place</w>\naustri a</w>\nbeat les</w>\nber nar\nspi der\ndisc o</w>\ncul t</w>\nlim its</w>\nshor tly</w>\nfin al\nnin ja</w>\nlu ke\nle bron</w>\nwal mart</w>\no il\nvan illa</w>\nshi re\nye g</w>\nak y</w>\nc s\nbl er</w>\ncollec ted</w>\nt g</w>\nrol led</w>\nspeci als</w>\nb ff</w>\npier re</w>\nsh im\nvi er</w>\nflash back</w>\nrestor ation</w>\nindividu als</w>\npro d</w>\nfre aking</w>\ntu rer</w>\no a</w>\nre fre\nmor oc\ngre et</w>\nre yn\ncare ful</w>\nour ing</w>\nu sh\nis d</w>\ng ill</w>\nvie w\nthunder storm</w>\nb led</w>\npic nic</w>\nguar di\npi g\nar k</w>\nsyl vania</w>\nbann ed</w>\nu cl\nvi jay\nori um</w>\nav engers</w>\nbeliev es</w>\neu r</w>\nmonu ment</w>\nconcer ned</w>\nla bs</w>\nber g\na ap\nvi sh\nsing les</w>\ncan cel\nz el</w>\nar ab</w>\nru th</w>\ntoo th</w>\nar ta</w>\nsh af\nchair s</w>\nr ack</w>\ndise ases</w>\ncrow d\ncl y\nfle x</w>\nchrist ma\nartif icial</w>\ntom at\nfin e\ndra ws</w>\nadvoc ate</w>\nfran ce\nÙ Ĭ\nðŁĺ ³\nheav y\ns our</w>\ncompre hen\nno ble</w>\naa p</w>\nhin du</w>\ncor al</w>\ng ars</w>\now en</w>\nn l\nst all</w>\nyel low\nmar ina</w>\nin ver\nsuppor t\ntou gh\npromis es</w>\npi e\nmaster piece</w>\nsco re\nfor ce\nmor tg\ncrypto currency</w>\no x</w>\nr ors</w>\nrock in</w>\npro vin\nho g\nno stal\noak land</w>\npat rick\ninclu sion</w>\ntra ffic\nah med</w>\na ha\nlux ury\ncon secu\nde mon</w>\nâĸ º</w>\nb lowing</w>\nst ag\n: \"</w>\nencoura ge</w>\nben e\nsku ll</w>\ndo dge</w>\nbu ster</w>\nkin son</w>\nwit ne\ner ror</w>\nlo west</w>\nfel low\nà °\nsh re\nbl ur\nvir gin</w>\ncompos er</w>\nsli p</w>\nmor nings</w>\nga ins</w>\ntab le\ngra in</w>\nari st</w>\nbraz ilian</w>\nw we\ntu es</w>\nribb on</w>\nan ag\ndi st</w>\nsac rif\nem brace</w>\nentreprene ur\naf fili\nde o</w>\nt ali\ntouri st</w>\nfat al</w>\nì Ĭ\nautom atic</w>\nðŁĩ µ\nwe ak\nwel fare</w>\nconfir m</w>\nbenjam in</w>\nfi ghts</w>\nalleg ed</w>\nme ad\nstrugg ling</w>\npro secu\nche f\nÃ ¨\npropos al</w>\ner n</w>\nðŁĺ Ħ\ndy k</w>\non gs</w>\nhon g\nm ack</w>\nmel on</w>\non ent</w>\nru sh\nd ap\ntol er\npro pag\nc ze\ntrans lation</w>\nwal let</w>\ncott age</w>\nsa il</w>\nconstitu tion</w>\nðŁĴ Ģ</w>\nmun ici\nfav or</w>\nstorm hour</w>\ni h\nðŁĺ Į</w>\napproach ing</w>\npin ned</w>\nj ed\nniger ian</w>\nn ach\nsh at\nparticul arly</w>\nmc don\ncamer as</w>\nanni e</w>\nadmini str\nhe at\nelectr ical</w>\nchar ming</w>\ngib son</w>\nbouti que</w>\nex posed</w>\nac tor\npil low</w>\nbeach es</w>\ngenu ine</w>\nmargare t</w>\nben nett</w>\nlou isi\npos itions</w>\nel y\nshin y</w>\nten tion</w>\narchitec t</w>\nren tal</w>\nac qui\ngoo gle\nsub way</w>\nmom ent\nðŁļ ¨\nri m</w>\nmetho ds</w>\ncy cli\nnor folk</w>\nÙ Ī\nover whel\nra pid</w>\nwe ar\nhappy birthday</w>\nprogre ssive</w>\nðŁĴ ¥\nco gn\npap a</w>\nf ool</w>\nphilosoph y</w>\npol ar</w>\njim my\nwi g</w>\nðŁĴ ĭ\noper ating</w>\nreduc tion</w>\nph i</w>\nfla gs</w>\nto the\no di\na res</w>\nk oo\nk ang\nar kansas</w>\nash ton</w>\nwimble don</w>\nsci fi</w>\nattrac tive</w>\nmississi ppi</w>\nlogi sts</w>\nral ph</w>\nla bel\ngradu ates</w>\nma ha\nhome town</w>\nâľĮ ï¸ı</w>\nfoun ded</w>\non the\nli z</w>\ntrans l\nmini mum</w>\npre sti\nta m</w>\ngener ations</w>\nre bel</w>\njourn alists</w>\npar am\nmc m</w>\nacry lic</w>\ndeath s</w>\ntes la</w>\nw t</w>\nbry ant</w>\njer us\ni stanbul</w>\nmuham mad</w>\nri ley</w>\nk ris</w>\nwork shops</w>\nis o</w>\ncoun ts</w>\nstre t\nprote cted</w>\ntrin ity</w>\nman ual</w>\nr hin\nr il\npleas ant</w>\nle mon\nner d</w>\nhar der</w>\ndar ren</w>\nbur y\nra h\nbas is</w>\nmi gu\nocca sion</w>\nli sts</w>\nâĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ı</w>\ne b\nde cre\nhamp ton</w>\nìĿ ´\ntra vis</w>\ntrans form</w>\npuer to</w>\nnh l\nav oc\ntri ps</w>\nunexpe cted</w>\nve t\ndi dyou\nbar ber</w>\nst ages</w>\nm son</w>\nre presented</w>\nfor t\nl al\npp le</w>\nnic ely</w>\nignor e</w>\nqu il\nqu inn</w>\nh k</w>\ncarri er</w>\nremin ded</w>\nam ong\npass enger</w>\nel len</w>\ngue z</w>\nsc ape</w>\nmu ral</w>\nyoun gest</w>\nma sh\nd ill\nrout ine</w>\nstain less</w>\njack son\ngand hi</w>\nth al</w>\non ers</w>\nedit orial</w>\nconvers ations</w>\nsd ale</w>\nautom ation</w>\ni ke\nà¸² à¸\nðŁĩ ª</w>\nhau l</w>\nla ying</w>\nmen tions</w>\nam en</w>\nabor tion</w>\ni bi\ncoun ties</w>\nca therine</w>\nman ds</w>\njam e\nroll er</w>\nau t</w>\nn am</w>\no logical</w>\ncep tion</w>\nran king</w>\ntox ic</w>\nsn acks</w>\nvictor ian</w>\nbang kok</w>\npsycho logy</w>\nre g</w>\nang ela</w>\nrespon d</w>\nsty le\nsophi e</w>\ndak ota</w>\nachiev ed</w>\nmar ked</w>\nimper ial</w>\nin as</w>\nglo ves</w>\nsli m</w>\nconfi dent</w>\natt acked</w>\ngg er\nlon ely</w>\nvalentine sday</w>\nre b\ncraft beer</w>\norig in</w>\nzim bab\nce iling</w>\nte ens</w>\nother wise</w>\nw b</w>\nf ers</w>\nday sof\nadvis or</w>\ny ah</w>\nâĻ ª</w>\nen der</w>\nrepublic ans</w>\nav a</w>\nskir t</w>\npi pel\nchi e</w>\njan e\nja x</w>\nðŁĺ ĭ\nâľ Ĭ\nj ays</w>\nbre tt</w>\nbal o\ncru cial</w>\nd har\nas is</w>\nde au</w>\nlloy d</w>\nchat ting</w>\nâĿĦ ï¸ı</w>\nrel ay</w>\nremark able</w>\nn s\nwe t\nbris bane</w>\nðŁĶ ´\ntion ally</w>\nf k</w>\nla yer</w>\nhouse hold</w>\nconsecu tive</w>\nes is</w>\npend ant</w>\nst ir\ncrit ic\nsu gar\nphoto shop</w>\npa res</w>\narti stic</w>\ndo dgers</w>\nc un\ncra fted</w>\nam end\nbo at\nâŃĲ ï¸ı\negyp tian</w>\nsa w\ntra ge\nsmall er</w>\nox y\npa ired</w>\nnex t\ni res</w>\ntac o</w>\no y</w>\nu c</w>\nst i</w>\na erial</w>\n: //</w>\ndr o</w>\ndot com</w>\ngg ins</w>\nr pg</w>\nay e</w>\nle an\nstri ker</w>\nlo bby</w>\nprote sts</w>\npri ority</w>\ncongre ss\nam ate\ninv it\nr ington</w>\nmom my</w>\nth us</w>\nallow ing</w>\npione er</w>\nenfor cement</w>\ng ori\ntal k\ndra g</w>\ndu mb</w>\nbul let</w>\nsan ge\ner y\ntar gets</w>\nðŁĩ ¦\nhe ather</w>\nconsi der\nseaf ood</w>\nve st</w>\nris ks</w>\n% .</w>\np g\nsac red</w>\nhe ating</w>\nkick ed</w>\ntto t</w>\n. -</w>\nchan di\nco ven\npo ol\npul se</w>\ni a\nro ster</w>\nshakespe are</w>\nes a</w>\ncar go</w>\npean ut</w>\ntro op\nac tion\ntab let</w>\nhome work</w>\ncast le\nstru ction</w>\nmus icians</w>\nfree zing</w>\nbu tt\njustin bieber</w>\nj j\nbah rain</w>\nan them</w>\nau dit\ndidyou know</w>\nna vig\nguid ance</w>\nâĸ ¶\ntur f</w>\nn un\nfic ations</w>\nye men</w>\nchar ging</w>\nx c</w>\nbron cos</w>\nsu bur\np ale</w>\nbor ing</w>\namong st</w>\nfor the\nem per\nom fg</w>\np j\nexpe cting</w>\nðŁĴ «</w>\nst l</w>\nad min</w>\nexpect ations</w>\nsw an</w>\nshoo t\noooo o</w>\nmin ent</w>\nãĢ Ĳ</w>\nwall ace</w>\nstan g</w>\nsatur day\nadop ted</w>\ndou bles</w>\nhom ie</w>\nome z</w>\nd han\nvent ure</w>\nsurroun ding</w>\nfi le\nmob ility</w>\nde es</w>\nw ski</w>\nbroo ke</w>\nemb ro\nre members</w>\nkar a</w>\ntest im\nbo tan\nm tv</w>\nsacrif ice</w>\njerus alem</w>\nd l\nÂ ´</w>\nproper ly</w>\nili on</w>\nas i</w>\nleg it</w>\nco pe</w>\nm cla\nrecy cling</w>\nlar ger</w>\nðŁĴ ĵ</w>\npat ric\ngener ous</w>\nja red</w>\np f</w>\nmol ly</w>\nthom as\nju dges</w>\nh b</w>\nsor ts</w>\nbl vd</w>\no ven</w>\nenter ing</w>\nplan es</w>\nbe et\nintegr ation</w>\nboo ked</w>\nfre ed\nver n</w>\nash es</w>\nto pped</w>\nde pot</w>\nwelcom ed</w>\nren a</w>\nm ick</w>\nd and\nsee ks</w>\ngam er\nran kings</w>\nren e</w>\nmu t\nwhis ky</w>\nfire fighters</w>\ngu es</w>\nga ther</w>\ntour ney</w>\nde men\ny ang</w>\nnew ton</w>\nautom otive</w>\nback yard</w>\ndeta iled</w>\nmi st\nto bac\nfi ber</w>\nun usual</w>\ngrat itude</w>\nsp are</w>\nne ys</w>\n: *</w>\nper i\nflo ating</w>\nfin alist</w>\ndon ating</w>\ndre ss\nbro ad</w>\nbe the\neconom ics</w>\ntai wan</w>\ned wards</w>\nplu g</w>\npra iri\nval en\nbab a</w>\nf ad\nan as</w>\nhar per</w>\ndis order</w>\napp lied</w>\np att\nbi kin\nli ver</w>\ncu ri\ncarol ine</w>\nann er</w>\njuli an</w>\nwal king\nmal col\nscreen shot</w>\nco ding</w>\nskin care</w>\nactivi sts</w>\nmyster ious</w>\nex act</w>\nblo cking</w>\nmercur y</w>\nbat ter\ndu mp\nâľ Į</w>\nen se\nli sh\nridic ulous</w>\nprote sters</w>\nðŁĻ Ī\nlu st</w>\nswe at</w>\nas s\nali ke</w>\nco dy</w>\nre ments</w>\nwin ds\nas pir\nvi enna</w>\npra y\n.. .@</w>\nbo i</w>\ncand le</w>\nassi sts</w>\nte e\nder son</w>\np ony</w>\nf ence</w>\ncon spir\nâĺħ âĺħ\noo th</w>\ne pic\nba rely</w>\na unt</w>\nb am</w>\ndiamon ds</w>\nend less</w>\nscre ens</w>\ncan cer\ngr o</w>\np st</w>\npro spec\nmo sque</w>\nhelp ful</w>\nou ri\nbro ther\ngu jar\ncri sti\nine z</w>\nto wers</w>\nad dresses</w>\ngra y\nbur ton</w>\nre tweeted</w>\nðŁ¤ Ķ\nn ity</w>\ndu ck\nsuper vis\njo an</w>\nkin der\nsanc tu\npi ed</w>\nâı °</w>\nł ï¸ı</w>\nm ati\nreven ge</w>\nce ster</w>\neli fe</w>\ndesig ners</w>\nback ed</w>\nbo li\nwei ght\ncou ch</w>\nsu res</w>\ns its</w>\nshri mp</w>\nla gos</w>\nauth orities</w>\nos ity</w>\nhol ly\ncompu ting</w>\nfac tors</w>\nab e</w>\npan els</w>\nram ad\nsent ence</w>\nmissi on\nhol m</w>\nr b\nd ads</w>\nshang hai</w>\nmon ey\nshe ets</w>\nsk ate</w>\nthre w</w>\ncup cakes</w>\ninfin ite</w>\nl is</w>\npractic ing</w>\ness ay</w>\nka i\nas ci\nmo b</w>\nu gh</w>\nhol mes</w>\nre gg\nik h</w>\nmo ck</w>\ncollec tions</w>\npe p\no va</w>\nsal t\nnan dez</w>\nco y\nthre ats</w>\ntex ts</w>\ncin nam\npregn ancy</w>\npen ding</w>\nstam p</w>\nflow er\ng is</w>\nagre ed</w>\npay ne</w>\nro ver</w>\nph ra\nsof t\nf fin\nfa thers</w>\npass engers</w>\naw ays</w>\nal a\nh es</w>\nli van</w>\nin s\nsamu el</w>\ningu i\nh of</w>\nj j</w>\nchen nai</w>\ncat al\nom ic</w>\nhe ath\nni ece</w>\npump ed</w>\nintegr ated</w>\nare l</w>\nno m</w>\nproduc tivity</w>\nwan ting</w>\nvis a</w>\ndi ana</w>\ntw il\nit v</w>\ncam ps</w>\nro wing</w>\nd ley</w>\nblack and\ngu ards</w>\nb ells</w>\nre verse</w>\nvi be</w>\nric ky</w>\nmo ss</w>\nny t</w>\nâĺ Ģï¸ı\nel le\ntro y</w>\ncu dd\nev an\nwomen s\nfo to</w>\nmi stakes</w>\nwick ed</w>\nmi l</w>\nc led</w>\nme mes</w>\nco smo\nschol ar</w>\nren o</w>\nðŁĺ Ģ\nv ents</w>\n# âĢ¦</w>\nterrori sts</w>\nca sey</w>\ncardin als</w>\nðŁĺĬ ðŁĺĬ\nvenezu ela</w>\nbol a</w>\nliter acy</w>\nt w</w>\nen o</w>\ncon tains</w>\nau stin\nfin anci\nev an</w>\nhar vard</w>\norigin ally</w>\nchev ro\nher ald</w>\nnott ingham</w>\nmanag ers</w>\nâŀ ¡</w>\naccep ting</w>\nwal sh</w>\ntutor ial</w>\nentrepreneur ship</w>\nyach t</w>\nrequi rements</w>\nglen n</w>\npe de\nunfortun ately</w>\nach ing</w>\ndais y</w>\ngi an</w>\nnight mare</w>\nâĿ Ĺ\nr ina</w>\nb art</w>\nema ils</w>\noppo site</w>\nwho m</w>\nsa ke</w>\npu zzle</w>\nda shi\npar ty\nblan ket</w>\nbus es</w>\nlo re\nbeau ty\nreas on\npun jab</w>\nwinds or</w>\nfunc tional</w>\nexi sting</w>\nhel lo\ngli mp\ncon vin\nla k\nscre aming</w>\nrebec ca</w>\nbli ss</w>\nnorth west</w>\ninfin ity</w>\ncosme tics</w>\npul ling</w>\ncoffe e\npl ing</w>\nop ho\ncolom bia</w>\ninterior design</w>\n( +</w>\nemo tions</w>\nsa c</w>\nsun glasses</w>\nsav es</w>\nd f\nsix th</w>\nal y</w>\nðŁĺ »</w>\nde en</w>\ndev ast\npolit icians</w>\nlac rosse</w>\ng u</w>\npe i</w>\njav a</w>\ncomb ine</w>\ncoal ition</w>\ner ts</w>\nsurvi v\nch ad</w>\nstri an</w>\nn n</w>\nde vi\ncoun c\nconcer n</w>\ncontro ller</w>\nbre ast\nj ury</w>\ntu m\nintroduc es</w>\nla di\nmobi le\nal z\nste ady</w>\nnur ses</w>\nh acking</w>\non line\noce an\nðŁİ Ħ\na am\nju ven\nic c</w>\nlouisi ana</w>\nar te</w>\nstreet art</w>\nis on\nwn s</w>\nfr m</w>\np anda</w>\nno ir</w>\nmain tain</w>\ndel ay\nsymp toms</w>\nthor n\nge ome\nter n</w>\ncarri ed</w>\np ru\npan or\nas sy</w>\nper u</w>\nclou d\nsp ra\npe di\ne ste\ntag ged</w>\nðŁĺ Ŀ</w>\nshado ws</w>\nnaz i</w>\nØ§Ù Ħ\ncor ri\nâĻ¥ âĻ¥\nj ad\nðŁĩ «\nform al</w>\nspo ken</w>\nðŁĮ ŀ</w>\nenjo y\nlo pez</w>\nout look</w>\nin ho</w>\nw ander\nÙ ħ\nma ya</w>\npe e\nd ine</w>\nãĢ ĳ</w>\nbrief ing</w>\nsuppor ter</w>\nar ily</w>\nght ers</w>\nnatur ally</w>\ndoctor who</w>\nj en</w>\nv ar</w>\nnew year</w>\nre se\nsi mm\nre x\ncon sequ\ntomat oes</w>\nbur st</w>\nbra vo</w>\nbur gers</w>\ncr acking</w>\nnor theast</w>\nbi om\nmush room</w>\nmar que\ndou ble\nni er</w>\nv ag\ntw enty</w>\nkey board</w>\nwin ni\njama ica</w>\npar ish</w>\n: -\nmental health</w>\nali zing</w>\nren der</w>\nwa king</w>\nðŁİ Ĥ\ng ly\nna than\nwa shing</w>\nmel issa</w>\njun g</w>\nloy al</w>\nchil i</w>\nsong writer</w>\nguit arist</w>\nbo wie</w>\nneighb ors</w>\nonym ous</w>\nas set</w>\nta i</w>\nhead quarters</w>\nðŁĮ Ī</w>\ni hear\nci gare\nsur g\n) \"</w>\nre pl\ndar ling</w>\nðŁĻ Ħ</w>\nz ak\nsa re\nãħ ĭ\nmic key</w>\nware house</w>\nmass age</w>\nine es</w>\ndid nt</w>\ni w\nhur ts</w>\neng aging</w>\nmag ic\nwomen in\nk itten</w>\nmor s</w>\nc art</w>\ntit ans</w>\ncolle ague</w>\ncompe ting</w>\ner an</w>\nk hal\nmar ble</w>\ndem and\ndel ight</w>\net ary</w>\nbli zz\nlou ise</w>\nm ls</w>\nfini shes</w>\nexperim ent</w>\nconduc ted</w>\nelectr onics</w>\nitt ers</w>\ncar ing</w>\nwh ats</w>\nsym bol</w>\njun g\ne cu\npi x</w>\ncon text</w>\nchar ger</w>\nðŁĺ ĩ</w>\nre ig\nfra g\në ĭ\nch ad\ntru e\nker ry</w>\ndef ending</w>\na int</w>\nau ton\ncheck out</w>\nbar nes</w>\nless ly</w>\nd t\nm me</w>\nclou dy</w>\nsecond ary</w>\nare z</w>\n_ :</w>\napp a</w>\nconst ant</w>\n\" )</w>\nve ts</w>\njo b\ni ent</w>\nðŁĺŃðŁĺŃ ðŁĺŃ</w>\nm j\nfren ch\ndi ver\ndavi es</w>\nhh hh</w>\ne book</w>\nà¹ ī</w>\nmar iti\nbree ze</w>\nsusp ended</w>\nmat o\nvi et</w>\nra hu\nse i\nbol t</w>\nen ary</w>\nle is\nkar l</w>\nfr amed</w>\nexpla ining</w>\nab c\nde aling</w>\nnat o</w>\nja ke\nexp and</w>\nleon ard</w>\nestabli shed</w>\ndu b</w>\nar men\nel led</w>\nvoc al</w>\nnichol as</w>\nori ent\nk yo\nillustr ated</w>\nah h</w>\ndanc ers</w>\nmilli on\nge ta\npo pp\nas u\nmur dered</w>\ngi ble</w>\nsto ked</w>\ngri ffin</w>\nmaxi mum</w>\nadri an</w>\nen counter</w>\nther o\ndavid son</w>\nðŁį »</w>\nholi day\nev o</w>\nasse ts</w>\ncar son</w>\nmemor able</w>\nâļ ½</w>\nob am\nrepresent ative</w>\ncb d</w>\ntr icks</w>\nvo gue</w>\nvo ice\nmm mm</w>\nsebasti an</w>\ncli f\nath y</w>\npar alle\nðŁ¤ ·\npa k\nev acu\ne ats</w>\nØ§ Ø\ntou ched</w>\norgan ised</w>\nspir its</w>\ncan ad\ngui ded</w>\nframe work</w>\nðŁĮ Ł\npe d\nnatur al\nag ar\nreplac ed</w>\nanch or</w>\nti t</w>\nsha h\norgan is\nsuper ior</w>\nr n\nch ro\neric a</w>\nst ill\ncor on\nchu ck\nloc ks</w>\nor gan</w>\nro sen\nsc am</w>\nben ed\n/ #</w>\nke en</w>\ntre vor</w>\nvamp ire</w>\nsor ted</w>\n! '</w>\naf ford</w>\nin tro</w>\ngr ace\nðŁĺ ľ\nsau r</w>\nkick starter</w>\ninflu en\nv u</w>\ny up</w>\npo c\nðŁİ ¥</w>\na ar</w>\ns ang\ntre k\net sy\ntb h</w>\nscre am</w>\nchevro let</w>\npix el</w>\nshepher d</w>\nan or\ngabri el</w>\ntw ood</w>\nsd cc</w>\nme ters</w>\ndevelop ers</w>\nclo sure</w>\nv w</w>\ntwit ch\nì Ĺ\nse oul</w>\npr ice\nho g</w>\nn ish</w>\nhill ary\nscrat ch</w>\nin cen\nwag on</w>\ndis ability</w>\npan ther</w>\nch ats</w>\ng d\nwit z</w>\nsus sex</w>\nl ate\nden mark</w>\nger ald</w>\ncancel led</w>\nnet te</w>\ni x\nnav al</w>\nbap tist</w>\nte t</w>\ny ad\nma th\nho y</w>\nr andy</w>\npo int\nintel lec\nfru its</w>\nw ool</w>\ngu in\npr on\nthe ft</w>\ncon dem\nmar ry</w>\nn ola</w>\narchitec ts</w>\ncin cin\nroc kets</w>\ngentle man</w>\nex plan\nt ate</w>\ndo e</w>\nra ises</w>\nwild life\nw l\ninsi der</w>\nblan c</w>\nw p</w>\nfor sale</w>\nny c\npo well</w>\nunbeliev able</w>\npen s\ngoo dies</w>\nmu stang</w>\np ens</w>\nst ays</w>\nsqu ash</w>\nxox o</w>\nnear by</w>\never ton</w>\nco co</w>\nle agu\nk han\nstu d</w>\nsouth west</w>\ncon struc\ns worth</w>\ncro atia</w>\nle a</w>\nsu ms</w>\naim s</w>\ne an</w>\nvan ess\niti ous</w>\npa thy</w>\narc ade</w>\nb end</w>\nsugge sts</w>\nsac ram\nroy als</w>\nri er</w>\nem ir\nin cl</w>\nan k\nclar k\nri ght\nvac c\nà¤ ¾</w>\ntan e\nli b</w>\nu sc\nsal es\nhu h</w>\ns ally</w>\nver a</w>\np ga</w>\ngro ws</w>\ndru m\ntre e\neth ics</w>\nsug gest</w>\nis ab\nse aled</w>\npre viously</w>\nanim ated</w>\nab du\nri ses</w>\nglo b\npre dat\nscar f</w>\ndel ic\nom ar</w>\nll i</w>\nsx sw</w>\npy thon</w>\nne bra\nfun k</w>\nreflec t</w>\npav ilion</w>\ntic ally</w>\nch asing</w>\nbak ery</w>\ninva sion</w>\nko h\nbeliev ed</w>\nco hen</w>\ncon qu\ncra fts</w>\nnat i</w>\ncle ver</w>\ngovern ance</w>\nsam ples</w>\nfa ils</w>\nâ Ķ\nti mo\nr itu\nstri king</w>\ninclu sive</w>\nsho cking</w>\ncan t\nrequi res</w>\ndra wings</w>\nà¸ Ń\npurch ased</w>\ndu m\nz ach\nwar ner</w>\ncon sole</w>\nman sion</w>\nfoun tain</w>\ncircu m\ne sh</w>\nis land\nmil k\npro fits</w>\nhali fax</w>\nri val\nâľĪ ï¸ı</w>\njen ny</w>\nsand ra</w>\nny e</w>\nk elly\ny al</w>\nqu ad</w>\nno s</w>\ninste in</w>\nfin alists</w>\nmid fielder</w>\ncu e</w>\nexcep tional</w>\na an</w>\nsa pp\ngett in</w>\nsa a</w>\nf ati\nsl ice</w>\nvol k\ns wal\nla sting</w>\nsum mary</w>\nit as</w>\nsm o</w>\ns z\nâĺ Ĩ</w>\nip l</w>\nfl ames</w>\nene ws</w>\nha v\nhoo die</w>\npitch er</w>\nwin dy</w>\nre vol\ncentr al\nton ite</w>\nðŁİī ðŁİī</w>\nsol ved</w>\nmil wau\norganiz ations</w>\nwee ts</w>\nre fin\ns th\nãĥ ¼\nel in</w>\nton a</w>\ncinnam on</w>\nðŁİ ¨</w>\nðŁİ ģ</w>\nron aldo</w>\npen insu\nome ga</w>\nel ds</w>\ndesig ning</w>\ne igh\nblu et\nben z</w>\nnu g\nash a</w>\nrobo ts</w>\nsu dan</w>\nchoo sing</w>\nen do\nser ge\nclo sely</w>\nhand y</w>\nfing er\nbe ing\nar te\nsurvi ved</w>\nfl ame</w>\nmile stone</w>\ngu t</w>\nd war\nfu tures</w>\nÃ© e</w>\nel o</w>\nfri dge</w>\neli c</w>\nou ch</w>\nu b</w>\np v</w>\ntit an\ncol lar</w>\nst ation\nnev ada</w>\naur ora</w>\nr d\ndun can</w>\nâģ ł</w>\nbri en</w>\nmar sh</w>\nÐ ¾\nto tal\nch ry\ns ers</w>\nsu ffe\nra chel\ncolle ge\nto days</w>\ncour ts</w>\nch it\nre united</w>\ngym na\ngen esis</w>\nbe side</w>\nre presentation</w>\nch ant</w>\ncollec tor</w>\nra k\nath ens</w>\nni gh\nmun ich</w>\nlangu ages</w>\nfl u</w>\nparticip ation</w>\n__ _</w>\nc v\nspec trum</w>\nso da</w>\nco ver\nrefe ren\nab bo\nap a</w>\npublic ation</w>\ned m</w>\nmon ica</w>\nar my\nðŁļ Ģ</w>\ndiv or\ndr y\nstre ams</w>\nrobo tics</w>\nci der</w>\nbull ying</w>\nappro val</w>\nsto ke</w>\nplat forms</w>\nsier ra</w>\nex tin\ni b</w>\nha yes</w>\nsucce ed</w>\nsuff er</w>\nat ically</w>\nda i\nlyn ch</w>\nh ound</w>\ndel ines</w>\nack now\nd ated</w>\nexclu sively</w>\nhe res</w>\nfac ilit\ndam aged</w>\nchar ter</w>\nla kers</w>\nfal con</w>\nunve iled</w>\nwel ove\ne ase</w>\npati ence</w>\nl one</w>\ngent le</w>\ngene tic</w>\nproduc ing</w>\ng our\nshann on</w>\nbil ities</w>\nzimbab we</w>\np int</w>\ndau ghters</w>\nliter ary</w>\nbel le\ncl am\nsurroun ded</w>\nk any\nne il\npir ate</w>\nrang er</w>\nhb d</w>\nnat alie</w>\nbel ong</w>\nolym pi\nemb assy</w>\nsc ol\nen er</w>\nak in</w>\nlo ren\nb h</w>\n: /</w>\ndi va</w>\nden im</w>\nhi pp\nðŁĩµ ðŁĩ\narn old</w>\n? '</w>\nwe ren</w>\nem power\ndis abled</w>\nman or</w>\nrasp berry</w>\nb af\naw ful</w>\ndru mmer</w>\nkar dashi\nn ash</w>\nmachine learning</w>\nch u</w>\nrebel s</w>\ntim ing</w>\nmon roe</w>\nton gue</w>\nran ge\npup ils</w>\nre ss</w>\namaz on\nb z</w>\nhar ley</w>\npal mer</w>\nballo on</w>\ns ings</w>\nic ec\nj b</w>\nc ers</w>\ng ps</w>\nwhi st\nri se\nl t\noo oo</w>\nc attle</w>\nshoo ter</w>\nvod ka</w>\nuc l</w>\nmt g</w>\nle sli\njon as</w>\ndi spo\nat ric</w>\nste in\nvintag e\nfir ms</w>\nflo yd</w>\ncow boy</w>\nsoo oo</w>\nis aac</w>\nwar craft</w>\ndisney land</w>\nbeauti ful\nbe am</w>\nfranch ise</w>\nbu n</w>\nk ag\nan on</w>\ntur bo</w>\nswee p</w>\nmade in\nkar achi</w>\ndete ctive</w>\npenn sylvania</w>\ncontro versi\nvitam in</w>\na side</w>\nchron ic</w>\ndescri bes</w>\nremo val</w>\nha h</w>\nap er\nten ed</w>\nu to</w>\nbad ly</w>\nmir ac\nf ry</w>\nye a</w>\nin jec\nther mal</w>\ncomp act</w>\nth or</w>\nte ed</w>\nur gent</w>\nl ite</w>\ng illi\nsop hom\nic o\nche m</w>\np m\nfor k</w>\nfre ak</w>\nch ak\nrecipi ent</w>\ni y\nni k</w>\nmodel ing</w>\nc ans</w>\nðŁı Ģ\ndel ux\nse am\nsurviv ors</w>\nrad ical</w>\ninvestig ating</w>\nreli able</w>\nf m\ntur t\nligh thouse</w>\nto ol\ngo wn</w>\n) )\nbo ts</w>\nauto graph</w>\na id\nbu ffe\nh mm</w>\nhorri ble</w>\nssi onal</w>\nann i</w>\nà¹ Ģ\nk its</w>\nsch i\neter nal</w>\nhu ss\nsens itive</w>\nr u</w>\ntast es</w>\nchec ks</w>\nim o</w>\npor tion</w>\nsk ate\ne den</w>\nhalf time</w>\nfri ed\nri hanna</w>\nti se</w>\nfl ick\nca in</w>\ns gt</w>\nâľ Ķ</w>\nsh au\nsta ined</w>\nra ffle</w>\ndro ve</w>\nsal man\nprinci ples</w>\nsh o</w>\nar u\nje ss</w>\ngu ine\ngar bage</w>\nmy an\njel ly</w>\ndis ru\nz ia</w>\nq ld</w>\nent ries</w>\nla v\nfle w</w>\nad mit</w>\nobjec ts</w>\ncomp are</w>\nny times</w>\ncann es</w>\np n</w>\nsuff ol\nro c</w>\nd ana</w>\ne gg\nhi st</w>\ncoun sel\n' !</w>\nphy si\nimag ination</w>\nad just\nexplo sion</w>\nplym outh</w>\nhor ror\nelli ott</w>\nbour ne\nde x</w>\nbre ed</w>\nau dio\nlob ster</w>\ndisappo inted</w>\nnation wide</w>\n( (</w>\nincre ases</w>\naustr ali\nce dar</w>\nstar ing</w>\nrac ial</w>\ne is\ng mt</w>\nvisi ons</w>\nstay ed</w>\ndiscu ssions</w>\nde an\ncur tis</w>\nmai den</w>\nstel lar</w>\nhapp iest</w>\nh wy</w>\npre season</w>\ncar av\nmon days</w>\nhospit als</w>\nglimp se</w>\nschol ars</w>\nja i</w>\nter race</w>\nann a\ngoo se</w>\ngra ded</w>\nlot us</w>\nhun g</w>\ngrocer y</w>\nstam ps</w>\nemper or</w>\nsc oop</w>\nin ser\nc as</w>\nexist ence</w>\nhe al</w>\nfal cons</w>\nmar vel\nreduc ing</w>\nterri fic</w>\nmagne tic</w>\nperfor ms</w>\nbar re\np us</w>\ntre ating</w>\nic on\nw h</w>\ndecla red</w>\ntra uma</w>\ndo d\ncome dian</w>\nnik on</w>\nbu gs</w>\nas m</w>\nmont gom\nibi za</w>\ncomprehen sive</w>\nha s\nsan ti\nfellow ship</w>\nda sh\np sal\nlouis ville</w>\nsp y\nfau lt</w>\nd the\nfi led</w>\nvi sta</w>\nde sc\nfe ars</w>\nyou tu\nsp s</w>\nes p</w>\nri g</w>\ncri me\nber ger</w>\nwonder land</w>\nk ent\nin formed</w>\nstev ens</w>\nmy th</w>\nast on</w>\nir i</w>\nvisit or</w>\nat ri\nproduc ers</w>\nal la\nperson ally</w>\nsepar ate</w>\nagen cies</w>\naf ri\nil an\nspo ke\nn ina</w>\nsqu ad\ndi ves</w>\nde pend\nli v\nfier ce</w>\nenter taining</w>\ncha in\nsc at\nbor ders</w>\npal ette</w>\nsp ro\nos is</w>\nder by\ntobac co</w>\nzi o</w>\nwilli e</w>\nju vent\nzoo m</w>\nhol y\nenti rely</w>\naf e</w>\nmart inez</w>\nbe ds</w>\npe a</w>\nbull dogs</w>\nðŁĩª ðŁĩ\nib m</w>\nne on</w>\nethiop ia</w>\nteam mates</w>\nplan ting</w>\ntw er\nany time</w>\nfor bes</w>\nÃ³ n</w>\nrun way</w>\nner vous</w>\nro ger\np ile</w>\nch anc\napo caly\nu w\no i</w>\ndr ought</w>\nterrit ory</w>\nbr ick\ncre atures</w>\ngo in</w>\nw aff\ngre n\nsou theast</w>\nje an\nam bul\ned ited</w>\nstra p</w>\nc v</w>\naar on\nãĥ» ãĥ»\nt su\ndescri ption</w>\nkin dly</w>\nclu tch</w>\nim mer\nen or\nwomen sday</w>\nor ange\nra g\nob vious</w>\nhy der\nchann els</w>\nman go</w>\nme yer</w>\nra ining</w>\nge tty</w>\npil gri\ncoordin ator</w>\nup load</w>\nninten do\ndon uts</w>\nsan chez</w>\napp arel</w>\nj r\nzz i</w>\n, @</w>\njeff erson</w>\naccessi ble</w>\ngreat ly</w>\ne id</w>\niniti al</w>\nbudd ha</w>\npar is\nma scot</w>\nâ¬ĩ ï¸ı</w>\nsch war\nsi ri\nsp inning</w>\nmortg age</w>\ne cho</w>\nend ange\nge dly</w>\nchlo e</w>\nenh ance</w>\nkar nat\nk ry\nexplo res</w>\nðŁĴ ģ\naf fair</w>\nic als</w>\nall a</w>\ndar t\ndolph ins</w>\ndiffe rences</w>\nsquir rel</w>\nau gh</w>\ndr ones</w>\nell en\nre store</w>\npa w\nun for\npi ke</w>\nhil ton</w>\ncolla b</w>\nconsu mers</w>\nco inci\nout comes</w>\npp p</w>\na q\ncoup on</w>\nli est</w>\nsi ms</w>\nk ho\nav es</w>\nspo on</w>\npu dding</w>\ncor byn</w>\nhat ers</w>\nex ams</w>\nsla ve</w>\n. !</w>\np sa</w>\napp les</w>\ntam il</w>\nse d\nco ke</w>\nzz o</w>\nlo sange\ncar bon\ncla ir</w>\n... )</w>\nk hu\ncra ig\nexplor ation</w>\nsanctu ary</w>\nsu e\nal way\ndemen tia</w>\nwon ders</w>\nsuper hero</w>\npakistan i</w>\nbrown s</w>\nbluet ooth</w>\nlo cker</w>\nmar c\nev entu\ndelux e</w>\nrodri guez</w>\nâĿ¤ âĿ¤</w>\nro bb\nðŁĴ ¦</w>\nlin ux</w>\nten s</w>\nintellig ent</w>\nse ed\nvo ter</w>\ns ler</w>\npe aks</w>\ninter n</w>\nteen age</w>\npeninsu la</w>\nhand ling</w>\nti e\ncou sins</w>\nwen dy</w>\nme e</w>\nà¹Ģ à¸\ndin o</w>\nðŁĴ °</w>\nðŁĺ ĥ\nze e</w>\ns bury</w>\ntrage dy</w>\nb k</w>\nbo re\nz in\nwar ns</w>\nidi ot</w>\ntou ching</w>\ncontin ental</w>\ntac os</w>\nsaf ari</w>\nwa shed</w>\npo dium</w>\nmorri son</w>\nfore sts</w>\nc bc\nal on\npartic ular</w>\nbe ads</w>\ninv ented</w>\nlo ch</w>\nli ghter</w>\nwhere ver</w>\ni de</w>\ndocu ments</w>\na we</w>\nk r</w>\nno where</w>\nmin er\nst it\nro x\ncontribu te</w>\nhar dy</w>\ncl an</w>\nob ject</w>\nca it\nðŁĴķ ðŁĴķ</w>\nhapp ier</w>\nvege tables</w>\nt art</w>\ng ag\nnom inee</w>\nheav ily</w>\npan ic</w>\nj d</w>\nthere sa</w>\nat m</w>\nu ph\ns fc</w>\nsu ri\ndrin k\nn al\nre vel\nk l</w>\navoc ado</w>\nnom ination</w>\nma donna</w>\nshar on</w>\nmalcol m</w>\ncontrol led</w>\nsh ers</w>\nrevi val</w>\nlegis lation</w>\nshoo ts</w>\nn in</w>\ncomm entary</w>\npro s</w>\nhuman rights</w>\nstr anger</w>\nmit ch</w>\npipel ine</w>\nleg ally</w>\nth u</w>\ngil bert</w>\ntol l</w>\ngran ted</w>\ngh s</w>\nir anian</w>\nrefre shing</w>\ndu k</w>\nab i</w>\npri me\njose ph\nmo sa\nstati stics</w>\nproduc tions</w>\nmer ry\npat el</w>\nsa x\nhuman itarian</w>\nstruc tures</w>\ne missions</w>\ntown s</w>\nfre el\nster ing</w>\nrat ings</w>\nalle gedly</w>\ncab in</w>\nst l\nw ade</w>\nfl yers</w>\ntri m</w>\npromis ing</w>\nz u</w>\nbal lot</w>\ncompar ison</w>\nfree ze</w>\nou ter</w>\ngreat ness</w>\nas sign\nsnow y</w>\nr ale\ntor ies</w>\nmed iter\nkno ck\nconsult ant</w>\ncincin nati</w>\nanaly st</w>\nsc oo\nje ws</w>\nappro xim\npu re\nportra its</w>\ncy rus</w>\nation al\nlo ans</w>\nacqu is\nel u\naccep table</w>\nuni on\nwater color</w>\nru st</w>\nbatt les</w>\nper fu\nseas onal</w>\nser ial</w>\nmind set</w>\nri ot</w>\nfel d</w>\nenni al</w>\nclo set</w>\npri est</w>\ntan ks</w>\nint l</w>\nscre w</w>\nbu m</w>\nab dul\nou x</w>\nexpla ined</w>\nric a</w>\nimag ing</w>\nlaw yers</w>\nbu ried</w>\nãĥ»ãĥ» ãĥ»</w>\near l</w>\nâĢ ķ</w>\nl ton</w>\nresto red</w>\nstri pes</w>\nfo ss\nde mands</w>\nste aling</w>\nalex is</w>\nmun d</w>\nak er\nur us</w>\nwar dro\nhu gs</w>\ngen re</w>\ne go</w>\nÙ Ħ\nparticip ated</w>\nbab es</w>\nban quet</w>\nti ous</w>\nhe mi\nds b</w>\nlo st\nmilwau kee</w>\njen ner</w>\nge m\nou tra\nlo ses</w>\nid i</w>\nre ps</w>\nðŁİ §</w>\nregu lation</w>\nfla w\nf ang\nvibr ant</w>\nram p</w>\nra ins</w>\nwell being</w>\nso viet</w>\nvie wers</w>\nde po\nlibr aries</w>\nbi go\nser y</w>\ng ill\nde struction</w>\nco z</w>\nc x</w>\nbri dal</w>\nal ds</w>\nplan ted</w>\namate ur</w>\nlu d\nche ering</w>\nshow cas\npro file\ni u\nver tical</w>\npack ers</w>\nwiz ard</w>\nski p</w>\ns light</w>\nbe au</w>\nair ways</w>\nmu ch\nre ra</w>\nðŁĮ Ĭ</w>\nab sor\npati o</w>\npack ages</w>\ns ells</w>\nment ally</w>\nðŁĺ ¢\nreyn olds</w>\nk are\ntri bun\nwal t</w>\nkn it</w>\nta ste\nsur rey</w>\nboun ce</w>\ncre ature</w>\nb are</w>\nbet ting</w>\nsu re\nmi ley</w>\nlaugh s</w>\nal ore</w>\ncy n\nt l\narti st\nann ah</w>\nwar mer</w>\ndynam ics</w>\nlunch time</w>\nmariti me</w>\nvulner able</w>\nðŁĴ ĥ</w>\nwol ver\ndur ham</w>\nconst antly</w>\nam in\nsi bl\n: @</w>\nbul let\nk ach\nangel o</w>\nwil der\ndoo m</w>\ndesk top</w>\nlaw suit</w>\nk ca</w>\nhen derson</w>\ninv iting</w>\nbet ty</w>\nta wards</w>\nra fa\nle aked</w>\nand i</w>\nge ms</w>\naf l</w>\nvel o\nmediter ran\npro be</w>\nto tten\nsteph anie</w>\nsn ation</w>\ncom be</w>\nq s</w>\nover come</w>\nassas sin\nra v\nfil ip\nwinni peg</w>\nsh il\ndetermin ed</w>\nk as</w>\nou tre\nregre t</w>\ngui des</w>\naa a\nðŁĺ Ī\nwi ves</w>\nmani fe\ner ly</w>\nsm y\nsh ima</w>\nx ing</w>\npix el\njac ob\nac commod\nto y\non o</w>\npo o</w>\nti er\nan swe\nðŁĴ ģ</w>\nro sa</w>\nle ase</w>\nbel ongs</w>\nth ar\neventu ally</w>\nnei ther</w>\ngo a</w>\nski ing</w>\nat ra</w>\nag h</w>\nbroad casting</w>\nf ury</w>\npy ram\nd ice</w>\nvolk swag\nwom ens</w>\nprovi der</w>\nbom bs</w>\nmiss ile</w>\nwhi p</w>\nd ick\nnor we\nback up</w>\nel der</w>\nmat ure</w>\nconcer ts</w>\ngi ous</w>\nsque e\ngood morning</w>\nbra ves</w>\n^ _\nau ssie</w>\nlun a</w>\nmal es</w>\nhe ck</w>\nfor tn\nrome o</w>\nsteel ers</w>\np n\npe er</w>\nre presents</w>\nÂ «</w>\nkat y</w>\nmigu el</w>\nrequ ire</w>\ncha ins</w>\nl ur\nimmedi ate</w>\nti mber\nâĸ¶ ï¸ı</w>\nadvoc acy</w>\nex port</w>\nan z\ntiff any</w>\nauth or\nðŁİ Ī</w>\ndu des</w>\nchil ly</w>\nhi d</w>\nhar m</w>\nbu g\nmon ster\nterri er</w>\ntu c\nstory telling</w>\nta k</w>\nin ti\nimmigr ants</w>\nb is</w>\nreach es</w>\ncom passion</w>\njohn ny\ncontribu tions</w>\nðŁĲ ¶\nmechan ical</w>\nimpre ssion</w>\nran ks</w>\nko be</w>\nmen ting</w>\nbloss om</w>\npab lo</w>\nbuil der</w>\nbom bing</w>\ntw el\nsul livan</w>\nom o\npe te\nde mi</w>\nku dos</w>\nw bb</w>\nt gif</w>\nmass ach\nneighb or</w>\nche fs</w>\neng ines</w>\npun e</w>\nga ined</w>\nphan tom</w>\ns days</w>\next end</w>\ngr an</w>\ncent ers</w>\njac qu\ndat asci\nsleep y</w>\nel vis</w>\nanswe red</w>\ns lot</w>\ncon y</w>\nflexi ble</w>\nti ally</w>\nle tics</w>\n% ,</w>\nandre ws</w>\nsi ble</w>\nmom ma</w>\nvin o</w>\ndo x</w>\ninvit ational</w>\ntwil ight</w>\nj ade</w>\nill ery</w>\njoh ns</w>\nf ou\np v\n-- -></w>\nbreak down</w>\nbilli on\nprin ter</w>\nmon d\nc bc</w>\nmag gie</w>\nlegi on</w>\ndu b\nkur t</w>\npo or\nparen ting</w>\nregi ons</w>\nbikin i</w>\nbe ware</w>\nsi onal</w>\nau burn</w>\nkid ding</w>\namp les</w>\nsp an</w>\ncon tempor\nc ic\nha bits</w>\nak o</w>\npre fe\nbud dies</w>\nit z\nem ily\nperson nel</w>\nmoun tain\nver sus</w>\nðŁĺ ¬</w>\near ning</w>\ns ink</w>\ndar i</w>\nu u</w>\ns win\ni ster</w>\nbru tal</w>\nn ac\nkat a</w>\nclo th</w>\nam and\nðŁĶ Ĺ</w>\nne o\nalu min\nweek ends</w>\nnebra ska</w>\nco des</w>\ndelay ed</w>\nbrun o</w>\npro ven</w>\nin c\ni ght\nfl an\nor o</w>\nlam bert</w>\nregu lat\nw f\nmassach use\nkardashi an</w>\nbern ard</w>\nfi esta</w>\nvolcan o</w>\ngrand pa</w>\nanc a</w>\nd re</w>\nst itu\nmean ing\nfo am</w>\nau ck\nat ed\nr l</w>\nhot el\npers ons</w>\ndy nasty</w>\nell or</w>\nma i</w>\nam ne\nsty ling</w>\navi er</w>\ne g</w>\nvege tarian</w>\n, âĢ¦</w>\nfoun ders</w>\nsta in</w>\ng d</w>\ncy cles</w>\nsky line</w>\ntrac tor</w>\nexi sts</w>\ntra l</w>\nkid ney</w>\nmar il\ninst ag\nse tte</w>\naddic t</w>\ntri angle</w>\nflash back\ncontroversi al</w>\nz on</w>\np ins</w>\ni as</w>\ntr ay</w>\ntown ship</w>\ndeleg ates</w>\nsp am</w>\nh ms</w>\ncr ane</w>\npeop les</w>\no lo\nfac tion</w>\nbut es</w>\non ica</w>\ndeleg ation</w>\nnew profile\neli er</w>\nmc a</w>\nw and\ng ely</w>\nlosange les</w>\nber ke\nti ve\ndis rup\nzz a</w>\ncas a</w>\njor dan\nford shire</w>\nga thered</w>\nic hi</w>\natten dees</w>\nà¸Ń à¸\npe ppers</w>\nco in\nbour bon</w>\nern ity</w>\nro tary</w>\nbehavi our</w>\njere my\nteam work</w>\ncompli ance</w>\ntre mend\nðŁĩ §\nbu hari</w>\ncam bo\nbu yers</w>\nha gen</w>\nbu ds</w>\nbay ern</w>\nmon te</w>\nsm ells</w>\nan za</w>\nath lon</w>\ndescri bed</w>\nwork force</w>\ngi ving\nap i</w>\ninvest ments</w>\nda il\nsel ena</w>\ndatab ase</w>\nth um\nmor tal</w>\nstu dent\nbu yer</w>\ndo ver</w>\ngar ten</w>\natt le\nloy alty</w>\ngen oci\nholo cau\ntheat ers</w>\nru ling</w>\nven us</w>\npat ent</w>\nch un\nab by</w>\nawa ke</w>\nmass acre</w>\nbang alore</w>\nbreak ing\nsimm ons</w>\nju sti\nhal e</w>\ned chat</w>\ngg les</w>\nhaw k\nmar king</w>\nhead lines</w>\nstro m</w>\nco ve</w>\nbreath taking</w>\nmed als</w>\nhair cut</w>\nchrist ine</w>\ntele graph</w>\ngujar at</w>\nju ra\ncan e</w>\nsho re\npropag anda</w>\nmu eller</w>\n.... ....</w>\nsa vi\nstom ach</w>\nthro ws</w>\nta b</w>\nwar m\nj ong</w>\nreno wned</w>\nhi r</w>\nra is\nmush rooms</w>\nguaran teed</w>\nbo a</w>\nm j</w>\nrevolu tionary</w>\ncerti fication</w>\nbru ins</w>\njo in\nw es</w>\npas sport</w>\nc g</w>\nsex u\ncap able</w>\nw v</w>\nton es</w>\njac kets</w>\nac compan\nspin ach</w>\nfore ver\nbla ir</w>\nwat ts</w>\ng l</w>\ncou ples</w>\nprairi e</w>\nnewprofile pic</w>\nlogi stics</w>\nmassachuse tts</w>\njagu ar</w>\no id</w>\nwe al\nunder water</w>\nmo z\ny i</w>\nma ths</w>\nmyan mar</w>\npre ps</w>\nsuffe red</w>\ntr ace</w>\nwal i</w>\nah hh</w>\nbor g</w>\nst itch</w>\ncu lin\nreal ise</w>\ninfe ction</w>\ndiscrimin ation</w>\nsh ame\nan kle</w>\nhu mid\ny t</w>\nbrac ket</w>\ntru ck\ntri u\nea ster\ncommun ity\npost card</w>\ninvol ving</w>\nty ler\ncar amel</w>\nover view</w>\nex amples</w>\nintegr ity</w>\nbase ment</w>\ninstru ments</w>\nani um</w>\nat us</w>\ngh er</w>\nlaun dry</w>\nachi eve\ngen eva</w>\npr icing</w>\nhyder abad</w>\nbeli ef</w>\nme ta\nj aw\naccoun ting</w>\nlead er\ncristi ano</w>\ncou ture</w>\ncy p\nvis ed</w>\n, ,,</w>\nk nu\nh ick\nbreak er</w>\nbr am\nra b\nmo or\nham as</w>\ngradu ating</w>\npupp ies</w>\nak h\nta h\nach es</w>\nri e\nop ini\ng ta\nre ign</w>\ntra gic</w>\nre ver\np ill\npine apple</w>\ntou ches</w>\nda re\nle ys</w>\nil o</w>\ninter iors</w>\nsc outs</w>\nbar t\nen zie</w>\ndon o\nbro ck\nchristi ans</w>\nense mble</w>\nÂ ·</w>\ncine mas</w>\nnew port</w>\nair line</w>\nwin ston</w>\nle igh\ncont ents</w>\npre scri\nur ge</w>\ntr out</w>\nfic ally</w>\nil ia</w>\nsub si\nare r</w>\nâļ¾ ï¸ı</w>\nw ounded</w>\nðŁĻ Ĥ</w>\npe pper\nðŁĴ ŀ\nfit ted</w>\naf f</w>\nre sur\nthursday thoughts</w>\nz ero\narchae ology</w>\ndi v</w>\nje e</w>\ni on\nawa iting</w>\nco zy</w>\nbeauti es</w>\nbal d</w>\ndat a\ngri zz\nstal k</w>\nkin ds</w>\ncle ared</w>\njess ic\nregu lar\nali ens</w>\nplac e\nbo s\nbi zar\nthisi s\nðŁĴ Ģ\ntotten ham</w>\nma fia</w>\ns lam\nari ana</w>\ncar roll</w>\nback pack</w>\ncare y</w>\nuni v</w>\nr g</w>\npe p</w>\ndig it\ntatt oos</w>\nag on</w>\nvolunte ering</w>\ndiffe ren\nconsu mption</w>\nka thr\nhead phones</w>\nt shirt</w>\no b</w>\nele ment</w>\nre tail\nsh ru\nal gori\ncontain er</w>\nconsci ous</w>\nfi l</w>\ncom ing\nra sh\nu rope</w>\ndef ine</w>\ngi or\nfemini st</w>\nflow ing</w>\nrout es</w>\ngl aci\nfer t\nsomer set</w>\nant es</w>\ntwee ps</w>\n$ $</w>\nh our\nendange red</w>\nyear sof\nro h\npo pped</w>\nbac king</w>\nba sil</w>\nbra ke</w>\nmon aco</w>\nlgbt q</w>\npra gue</w>\nut ility</w>\ncas si\ngate way</w>\nhaun ted</w>\nsch ul\nðŁİ µ</w>\nshou ld\nwalking dead</w>\ncomple ting</w>\ndann y\nmontgom ery</w>\npengu in</w>\nss i</w>\nmer chandi\nðŁĳ ĳ\nchur ch\nh ates</w>\ncap tain\nbrea thing</w>\nce t</w>\nfair ly</w>\napproach es</w>\ncompan ion</w>\nsurpri sing</w>\nkany e</w>\npe y\nhin di</w>\ntarge ted</w>\nlor ds</w>\nde ut\ndi gging</w>\nger man\nru t\nener gy\nclose st</w>\ny un\napo logi\nà¸ ±</w>\ns ack</w>\nru p</w>\ndd y\nport al</w>\nd ough</w>\nb ats</w>\nðŁĵ °</w>\nat ur\ngraph er</w>\npi res</w>\nmo tors</w>\nðŁĮ ¹\nj c\ndan g</w>\ntu k</w>\nclu e</w>\nus c</w>\npag e\nd less</w>\nbro ws</w>\nju s</w>\nad ing</w>\nre marks</w>\noo m</w>\ncar dio\nste fan\narm strong</w>\nâĢ¢ âĢ¢\nni est</w>\nbelgi an</w>\nbi op\nso y</w>\nlo f\ní ĥ\nq t</w>\nflashback friday</w>\nce e</w>\nģ à¸\nwre ck</w>\nmar ines</w>\namend ment</w>\nwardro be</w>\nvo y</w>\nbur ned</w>\nguit ars</w>\nra inf\nli fel\nssi l</w>\noun ce</w>\nexter nal</w>\nc key\nme sh</w>\nshe ikh</w>\ninv itation</w>\nsugge sti\npop corn</w>\nphenomen al</w>\nan onymous</w>\ntun a</w>\nchic ago\no val</w>\ndel y</w>\nloc als</w>\n( &</w>\npro f\nno vel\nfin der</w>\nspar ks</w>\nla ven\nin fu\nnic ks</w>\nqu ant\nra e</w>\nexe c</w>\ndist ingui\nst ances</w>\nmu tual</w>\nsh al\nunve ils</w>\nedmon ton</w>\nzan ia</w>\na dio</w>\nvie wer</w>\nbrad ford</w>\naudit orium</w>\nqu is\nre act</w>\nhtt p</w>\nl ero\nchee ky</w>\nimpac ts</w>\nta k\ned t</w>\ndesper ate</w>\nt ay</w>\nì Ħ\nsett le</w>\nbar gain</w>\nresu me</w>\nun ite\nthro wn</w>\nke st</w>\nse ys</w>\nmar ching</w>\nam it\ndecl ine</w>\nsch ar\nme tr\nstan ford</w>\nlin ke\nber ra</w>\ndol ls</w>\nrug by\njam i\nb or</w>\nroad trip</w>\ndino saur</w>\nmi k\nsun der\nre m\nb k\nover seas</w>\nnau ghty</w>\nimple mentation</w>\niam srk</w>\nlun cheon</w>\nfir ing</w>\nmi ami\npere z</w>\nthe e</w>\nz on\ngi fted</w>\ncon version</w>\nceram ic</w>\n¡ ï¸ı\npe dro</w>\nì Ĩ\nv ick\n! @</w>\nhe ed</w>\nsi d</w>\nb w</w>\ndocu ment</w>\npl un\ngr ants</w>\nfant asy\npredic tions</w>\nvali d</w>\ncar ved</w>\ngradu ated</w>\nðŁĳį ðŁı»</w>\nnation ally</w>\nch y\naf l\nre sso</w>\nblan k</w>\nri vals</w>\nj ig\ne ties</w>\nom ics</w>\nune mp\nb ound\nsk o\ninspec tion</w>\npar al\nhigh s</w>\ncri sp</w>\nb ans</w>\nob a</w>\n[ @</w>\nco spla\ncostu mes</w>\nrec all</w>\nmou th\nni gel</w>\nb ts\nter a</w>\nko v</w>\ndo cs</w>\nwest minster</w>\ndic t</w>\ngra vity</w>\nkar i</w>\nro gue</w>\nt ted</w>\nwar k</w>\nida ho</w>\nw end\naw i</w>\nqueen sland</w>\nproce sses</w>\ncli ffe</w>\nm ick\ncom pens\nop ol\nthe y\ncl ari\nwiki pedia</w>\nsalman khan</w>\nhaz ard</w>\npre ston</w>\nswee test</w>\npd f</w>\nche es\ntr ilo\nsouth africa</w>\nbur nt</w>\n( $</w>\ncon tain</w>\nt p</w>\nsub mitted</w>\nsound cloud</w>\nat u\nre z</w>\nword press</w>\ncorru pt</w>\nn f\nma ker\ní ķ\npar as\nadv ent</w>\nri al</w>\nca fe\nfo ssil</w>\n!!!! !!!</w>\nco ws</w>\nc j</w>\nsp ur\ninstitu tions</w>\nland mark</w>\nent it\nre ut\nh is\nalz heim\nwe mb\nregg ae</w>\nmo squ\nst at</w>\nidenti fied</w>\ndeal er</w>\nre am</w>\nre land</w>\nten sion</w>\nðŁĩ ©\nwra pping</w>\ndeep er</w>\nfr at\nred dit</w>\nar is</w>\nmoroc co</w>\n.. \"</w>\nb low\nma pping</w>\npri orities</w>\ning a</w>\nswa p</w>\nre wards</w>\nconspir acy</w>\ncreati ve\nc j\ncongre ssional</w>\nvau lt</w>\nple x</w>\nsophom ore</w>\nshad ow\nele ss\nðŁĺ ħ\ndar ts</w>\naldu b</w>\nanno ying</w>\npro ps</w>\nn as</w>\nalumin um</w>\nh bo</w>\noffen se</w>\nj ill</w>\noni ons</w>\nla ur\nta e\nhar dest</w>\nsh ro\nga ining</w>\nmeas ure\ned tech</w>\ncyp rus</w>\ntar a</w>\nang eli\ncar lo</w>\ngo on</w>\nall i</w>\nim plic\nju pit\nresil ience</w>\nha il\nbal anced</w>\n) ...</w>\njoy ce</w>\ngr a</w>\nth eli\ndefin ed</w>\nshi pped</w>\nmain ly</w>\nmin a</w>\nl m</w>\nsac ri\no ber\np im\nclaim ing</w>\nent ers</w>\nco rey</w>\nbo k</w>\ncri ed</w>\ncool ing</w>\ndani elle</w>\npharmac y</w>\nthor ough\nca ke\nk lo\noutre ach</w>\nz ens</w>\ndigital marketing</w>\nval ent</w>\nsn p</w>\nher b</w>\nmr w</w>\ncaf Ã©</w>\ncap tures</w>\nno tre</w>\ntriu mph</w>\npan cakes</w>\ncu mber\nspi ke</w>\nd ation</w>\nbi gg\nsp er</w>\ncrit ical\nam al\ntoo th\nfoun ding</w>\na stro</w>\n' #</w>\nquan tum</w>\nth ames</w>\nun c</w>\npri de\nair bus</w>\nkno cked</w>\nun defeated</w>\nmediterran ean</w>\ncal cu\nclo wn</w>\nsens or</w>\nham mer\nfor give</w>\ncu shi\nber ry\nmaje stic</w>\nelec t</w>\npolit an</w>\ng ta</w>\nk ari\nbur ke</w>\nsea hawks</w>\nvolkswag en</w>\nre i\nlandsc apes</w>\ncas u\ngrand father</w>\nlist ened</w>\n/ /\nstar trek</w>\nrainf all</w>\nfur ry</w>\nvi er\nstar k</w>\nrif le</w>\nff a</w>\nleg es</w>\nhillary clinton</w>\nmin us</w>\ncorrec tly</w>\narchitec tural</w>\npre ce\nup side</w>\nbox er</w>\nðŁĻĮ ðŁı¼</w>\nis ai\nde t</w>\npro vo\ntis sue</w>\nspoo ky</w>\nve led</w>\nre con\nprospec ts</w>\nque bec</w>\nâļ «\nig no\nanat omy</w>\nshap es</w>\nw p\np interest</w>\nhor e</w>\nan es</w>\npick up</w>\nti p\npra desh</w>\nhu gh</w>\nco e</w>\npo k\ngram my</w>\nwell ington</w>\nsti gate</w>\nri gh\nlea p</w>\nking ston</w>\nscen ic</w>\ngo sh</w>\nv ani\nau g\ns ary</w>\nzi er</w>\nbure au</w>\nlin son</w>\ncon te\nfra gr\nall an</w>\ng aw\nlan a</w>\ncolli sion</w>\nsurve ill\nren ais\nar range\ns ali\ndo in</w>\nbr ance</w>\nbren dan</w>\nour se</w>\nin coming</w>\nsuspen sion</w>\nà ´\nl la</w>\neduc ators</w>\nin tri\nda e</w>\nbio graphy</w>\nbul gar\nvilla in</w>\ngo thic</w>\nrw anda</w>\ne w</w>\nmay or\nmeet up</w>\ndemocr at</w>\nmor gan\nsu dden</w>\nte sco</w>\ncar rot</w>\nbom ber</w>\nmck in\nre ne\nfun day</w>\nagricul tural</w>\nhaha h</w>\nshow time</w>\nform ing</w>\ncol a</w>\nscor pi\nquo te\npo ppy</w>\ns life</w>\nd az\ntu b</w>\nne n</w>\nmo t</w>\nðŁĺ »\ns ore</w>\nelder ly</w>\no ve</w>\nskin ny</w>\num i</w>\nanc o</w>\nman ship</w>\nwe re\ng v\nk ah</w>\nfol ding</w>\nne at</w>\nsamanth a</w>\ndan ish</w>\nuk rain\nhumid ity</w>\nnu tri\njak arta</w>\ncand les</w>\noooo oooo\nat ile</w>\nstreng th\ni bra\nbap ti\ncharle ston</w>\nfr ames</w>\ngirl s\nclear ing</w>\nglu ten\n# #</w>\nsuper natural</w>\nju bi\nph one\nhe in\ndr un\nle ak</w>\ninvest or</w>\ny er\ndom ain</w>\nball room</w>\nmi sh\napp li\noff shore</w>\nbla ze</w>\ndor o\nâĺķ ï¸ı</w>\nwin ery</w>\nshar if</w>\nad ore</w>\nn ir\nsaf er</w>\nsi gh</w>\nas cri\nstrong ly</w>\ntrac y</w>\nck er\nol l</w>\nfaith ful</w>\ney ed</w>\ndeli ghtful</w>\nvis m</w>\nkarnat aka</w>\ntit an</w>\nwh ar\njer seys</w>\nre fur\nheav en\ngri p</w>\npan ama</w>\npre li\nglu ten</w>\no dd\ncont ent\npon ti\ntion ing</w>\ne commerce</w>\nfeder ation</w>\nflaw less</w>\nge ar\nti res</w>\nby r\npol ice\ncu ban</w>\ntri butes</w>\ntic ul\nchur ches</w>\nnur sery</w>\ndi aries</w>\nmuse ums</w>\nsnapp ed</w>\ni van\nwi ght</w>\ntouri sts</w>\nramad an</w>\nt rent</w>\nprophe t</w>\nwon dered</w>\nfocu sing</w>\nhi d\nic ons</w>\ni q\nambul ance</w>\npi st\nfun niest</w>\ntime less</w>\nsr ilan\nbu ys</w>\nki ds\ncolour ful</w>\na shi\nch ir\nmu m\nðŁĵ ļ</w>\nlet ter\nx en\nreut ers</w>\npre serve</w>\nin ting</w>\nste p\nfu ji\nuni ver\ni u</w>\nshow down</w>\npo ems</w>\nsurveill ance</w>\nsuspec ted</w>\nta e</w>\nsol ving</w>\ntom b</w>\nmother sday</w>\ncar pen\nrecru it</w>\npil ots</w>\nbro c\nmix ing</w>\nfri days</w>\nty r\nrepresent atives</w>\ntra pped</w>\nabdu l</w>\nfree style</w>\nclu ster</w>\nâļ łï¸ı</w>\nk d</w>\nsk ill\npit t</w>\nex o\ncommer ci\nmuse um\nloc ally</w>\ng ina</w>\nno bel</w>\nimmun e</w>\nfr ac\ncap su\nmain ed\nattemp ts</w>\nbull dog</w>\nbe spoke</w>\nsing ers</w>\nsp elling</w>\nseg ment</w>\nnat ures</w>\ntic k</w>\nlip stick</w>\nclean er</w>\ngett able</w>\npreci sion</w>\nâĢ¼ ï¸ı\nth ood</w>\nre ef</w>\nno pe</w>\nbill y\ndi gi\nmu si\nri val</w>\nfigu red</w>\ntal ity</w>\nsun ny\nber k\naw ww</w>\nawa its</w>\nun real</w>\nco pen\nasy lum</w>\nex otic</w>\nbu en\nmo ck\nen able</w>\narch y</w>\nfr a</w>\npla stic\nal mond</w>\namp li\ndispla ys</w>\nabbo tt</w>\ns me</w>\nx p</w>\nðŁĻ ĥ</w>\ngraph ic\ni ved</w>\nmar a</w>\ncau tion</w>\nlea ks</w>\nen berg</w>\nul u</w>\nunic orn</w>\ncann on</w>\nappren tic\nðŁĺĺ ðŁĺĺ\nb ball</w>\nwil low</w>\nat ics</w>\nam as</w>\nmanufac turer</w>\ncampaig ns</w>\nport ers</w>\nflo ors</w>\nl su</w>\nty pe\nke j\nhonor ary</w>\nit im\nto le\nmin ecraft</w>\nd x</w>\nma sh</w>\nri o\nconsequ ences</w>\nron ald</w>\ngo ssi\nsuffol k</w>\nmu se</w>\nr bi</w>\nlive music</w>\ni van</w>\nðŁİ ¤</w>\nle u\npatri ot</w>\nman it\nlan ca\nhome decor</w>\nde ar\nsig ma</w>\nti de\nstr ings</w>\nv ita</w>\nsequ el</w>\ntry na</w>\ninve stigate</w>\nbor is</w>\nve gan\nbarri er</w>\nmind fulness</w>\nweb b</w>\nhu stle</w>\nin da</w>\ntan zania</w>\nstr ay</w>\ntex as\nc ag\ndiagno sis</w>\nwom an\ng w</w>\nob session</w>\nl ative</w>\nnu fc</w>\nfl ynn</w>\nmoment um</w>\nsof a</w>\nwal d</w>\nvege table</w>\ntu cker</w>\nsupp er</w>\nse ab\nar ro\nse ag\nven ting</w>\ncounc ill\nsp lat\ncal cul\n.. #</w>\ncom fy</w>\nodi sha</w>\nsto pp\nwar fare</w>\nca es\nà ¨\nco y</w>\nprice less</w>\nin sec\nðŁĺ Ľ</w>\ncontro ls</w>\nempower ment</w>\ndatasci ence</w>\nper pe\ngen ic</w>\ne res</w>\ntru deau</w>\nman o\nsla very</w>\nexpand ing</w>\nma he\nfa iling</w>\ns aga</w>\nphotograph s</w>\ncre st</w>\nre on</w>\nsurf ing</w>\nhi e</w>\nðŁį Ģ</w>\nja e</w>\nfel lows</w>\nsouth ampton</w>\nsol om\nce ster\ntab ility</w>\nhor n\nse ct</w>\nhe e</w>\ncole man</w>\nat las</w>\nexplo rer</w>\nconsul tation</w>\ncopy right</w>\norgani zing</w>\nden ied</w>\nmon keys</w>\nnoo dles</w>\nbr is</w>\nfl or\ndou gh\nbon ds</w>\nsho cked</w>\neco system</w>\ncare fully</w>\nw m</w>\napart ments</w>\ncur ve</w>\nsan diego</w>\nmust ard</w>\ncomm en\ncere mon\ne ch\nru th\nðŁĻĮ ðŁı»</w>\nhawa i\nfil med</w>\nte ar\nas ingly</w>\nca ir\nwat t</w>\ninstru ment</w>\nou tta</w>\nye ol</w>\nriver side</w>\në °\n. :</w>\nnor wich</w>\nalo g</w>\nmigr ants</w>\nnew man</w>\nri de\nspr ink\ntarge ting</w>\nbeli eve\ntor ch</w>\nreflec ts</w>\nper mission</w>\nff man</w>\nene mies</w>\nbas ics</w>\nse ized</w>\nsun days</w>\nle i\nhass an</w>\nen do</w>\nh c\nst ad\nle ments</w>\nkk kk\nnan o\nshar k\nman a</w>\non ic\ntreat ments</w>\near ly\ncollabor ative</w>\nshu ttle</w>\nbran ches</w>\nmis ses</w>\nmained cm</w>\nap ers</w>\nky le\ncarri e</w>\nleis ure</w>\nsh et\nbir ding</w>\nadv ances</w>\nðŁĵ Ŀ</w>\npopu lar\ndi ane</w>\na be\nre war\nneigh bour\nk pop</w>\nremem brance</w>\nplay ground</w>\nru b\nkrish na</w>\ne bola</w>\ninqu iry</w>\nep a</w>\nlu min\norgan isation</w>\nabra ham</w>\nnorm ally</w>\npre ten\njan et</w>\nw t\nðŁĴ İ</w>\nencoura ging</w>\na stic</w>\nbu mp</w>\nsyd ney\ns z</w>\nss ss</w>\ngar rett</w>\nðŁĵ »</w>\nconsul ting</w>\nroman ia</w>\nspo tting</w>\nchanc ellor</w>\nar ma\npresti gious</w>\nðĿ Ĳ\nt ad\ncry st\ncompe tit\nrati o</w>\ncat aly\nbro w</w>\nj ur\nvi king</w>\ncommu te</w>\ny day</w>\nla yers</w>\ndu mb\nesc al\ngenoci de</w>\nf ill\ngu pta</w>\nste pping</w>\nse i</w>\nfo to\nwild cats</w>\ncol i</w>\nprojec t\near nings</w>\nst r</w>\nge ons</w>\ncomple tion</w>\nb m</w>\ndecor ated</w>\ncraw ford</w>\naf ghan</w>\nsc are</w>\nvisi bility</w>\nhi b\ndirec tion\nstro ll</w>\nchrist ina</w>\nalter nate</w>\ncl are</w>\nsty list</w>\nbe hold</w>\ns ance</w>\nleop ard</w>\nacqui red</w>\nnarr ative</w>\nash i</w>\nthe a\n?? ??\npe as</w>\nat ch</w>\nsli des</w>\nle en</w>\nrenew able</w>\neng lish\nqu ir\nco aster</w>\nr x</w>\nfo ols</w>\nmatch day</w>\nmis m</w>\namaz ing\nz ig\nke ting</w>\nwon t</w>\nto wel</w>\ndi ab\nsta ke\nn m\nmel t</w>\ne than</w>\ngra pe</w>\npolit ician</w>\nsm en</w>\ní ĺ\nre o\nwedd ings</w>\ncat cher</w>\nor acle</w>\nme mo\nðŁĮ ´</w>\nec k</w>\nrob bie</w>\nnorwe gian</w>\noper ator</w>\nam or</w>\nse wing</w>\nju l</w>\nx ie</w>\nu v</w>\nfif ty</w>\nme ga\ntatt oo\nliber als</w>\nu pri\ntraffic king</w>\nrichard son</w>\nsu v</w>\nki p</w>\nmess y</w>\ntremend ous</w>\ngl ou\ncour tney</w>\nla d\nstere o\nmy ers</w>\ni dio\n^_ ^</w>\nman ning</w>\ndy e</w>\nw d\nthr one</w>\njun k</w>\nas u</w>\nprovin cial</w>\nk ook</w>\nwr c</w>\nfine art</w>\nhamp shire</w>\nrenais sance</w>\nb red</w>\nfall out</w>\ns j</w>\nsn l</w>\nal am</w>\ntor ture</w>\nfy i</w>\nsh ines</w>\npa w</w>\nch ar</w>\nhen ry\nc row</w>\naci ous</w>\ndi an\npa ige</w>\nba re\nstock holm</w>\nscen ery</w>\nðŁĩ ·\njef frey</w>\npu sh\ndecor ation</w>\nne d\ncu te\nbrig ade</w>\nlaven der</w>\ninv ites</w>\ne sports</w>\nvo ir</w>\ndri ed</w>\ntran spl\nsur geon</w>\nno vels</w>\npul ls</w>\nson y\nlun ar</w>\nman e</w>\ni vy</w>\nfru str\ndor set</w>\nsa i\ntor res</w>\nssi on\nshut down</w>\nsuggesti ons</w>\nwrit ing\ne o\nbattle field</w>\nu ga</w>\nðŁĲ ¾\nvac u\nspl ac\ng it\nu g</w>\nhigh land</w>\n% )</w>\nmer maid</w>\nsacram ento</w>\nta ils</w>\np w</w>\nka h\nt ell\nenh anced</w>\nì ķ\nauck land</w>\ncru el\nðŁ¤ ©</w>\nau dre\nsail or</w>\ngram mar</w>\ng love</w>\nde on</w>\ninfl am\nfresh ly</w>\nk ell\nzi p</w>\nchristi e</w>\nmil d</w>\ndi xon</w>\ninstru ctor</w>\ng ence</w>\nãħ ł\nsub jec\nconstitu tional</w>\ncrow ds</w>\nin visible</w>\nru ins</w>\nda k</w>\nsi p</w>\npla que</w>\np ouring</w>\ncomple x\nz ine</w>\nste ad\nf let\ntrans mission</w>\nlo way</w>\nar un\nincre asingly</w>\nau d\ntransp aren\ncro wned</w>\nsc oun\nblizz ard</w>\nlux u\nfi ers</w>\nachieve ments</w>\nhun ters</w>\nrock ed</w>\nbas in</w>\nvio let</w>\npro ves</w>\nachiev ing</w>\npro sper\nse ga</w>\nflo at</w>\nvi an</w>\nxi v</w>\npol ic\ntur a</w>\napproxim ately</w>\nwander lust</w>\nkeep ers</w>\ngeta way</w>\nco d\npol is</w>\nbr yan\ncol ts</w>\ntal ents</w>\nyo gur\ngluten free</w>\nwri st</w>\ngr y\ncze ch</w>\nðŁİ Ī\nev ille</w>\nðŁı Ī\nto x</w>\ndani els</w>\nam er</w>\nbi ds</w>\nweare one\nme tab\ng t\nboy z</w>\npd x</w>\npos session</w>\npu shed</w>\nshr ine</w>\nreali stic</w>\ntri gger</w>\nna vi\nru mors</w>\nn af\njen kins</w>\ntr un\ncomm uni\nÃ Ĺ</w>\ngam ers</w>\narm or</w>\nmoham med</w>\nbal cony</w>\ny ah\nstron gest</w>\nrhy thm</w>\nunfor gettable</w>\nk p\nho bb\ncusto dy</w>\ngreg or</w>\nr ita</w>\naes thetic</w>\nil ation</w>\nsponsor ing</w>\nn ay</w>\nkid napp\nsh s</w>\nra jas\nme g</w>\nsignific antly</w>\nbutt ons</w>\nla c</w>\nver sions</w>\nessenti als</w>\nopini ons</w>\nk ro\nd printing</w>\nwi dely</w>\nd k</w>\nur an</w>\ny al\nreque sted</w>\nc n</w>\ncur ric\nplu m</w>\ngr un\nv m\ndev on\nm yo\nrel ation</w>\njuvent us</w>\nrou ge</w>\nmin ority</w>\nmin es</w>\njupit er</w>\nn ine\noxy gen</w>\nfran kie</w>\nune sco</w>\nfab ric\ndisgu sting</w>\nsal man</w>\ndete ction</w>\nlan ka</w>\nd ac\nðŁĩ« ðŁĩ·</w>\nargu ment</w>\nshel ves</w>\ncel tics</w>\nrober to</w>\npi gs</w>\nhe dge\nfau l\npow ering</w>\nbutter flies</w>\nfi r</w>\nre make</w>\natt i</w>\ncom o</w>\nemp ha\nkend all</w>\npoke mon\nse ating</w>\nd ans</w>\nbald win</w>\nðŁĳ »</w>\nlesli e</w>\none direction</w>\nti mber</w>\nim an</w>\nfon t</w>\ne der</w>\ndi on</w>\nste ph</w>\nfor mat\ngre gory</w>\npro p</w>\nhe x\nru in</w>\nsor y</w>\ninf er\nn aw\nbar ak</w>\nsd gs</w>\nkar ao\nlu sh</w>\nv ander\nend ent</w>\ng is\na fro\nsoc cer\nay an</w>\nt uni\nlun g</w>\nda yof\nalex a</w>\nmar ath\naddic ted</w>\nag ile</w>\nhy gi\nlight weight</w>\nì §\nmand ela</w>\njo ey\nanc y\nhu m</w>\nbi r</w>\nmemor ial\njim in</w>\nging er\nv ak\njav ascri\ncro ps</w>\norig ins</w>\nd ari\npi per</w>\nim port</w>\naggre ssive</w>\npredic tion</w>\nre pairs</w>\ncr acker</w>\nvoy age</w>\nni ke\nmu mmy</w>\nlinke din</w>\ncountry side</w>\nbor der\ngla ss\nper t</w>\ns als</w>\nsho e\nautograph ed</w>\nwal nut</w>\ncolle gi\nsal ary</w>\npa iring</w>\nðŁĮ ¸\ncath ol\nswee the\ndefe ats</w>\nstreng then</w>\nroof top</w>\nimpro vements</w>\nbarri ers</w>\nur u\nt ally</w>\nru led</w>\nðŁĨ ļ</w>\nnai ja</w>\nemo ji</w>\nper cent\ngi o\npro bs</w>\non ce\nadm its</w>\npa ths</w>\nli ar</w>\nday tona</w>\npe ters</w>\ncal i</w>\ncal li\nmu g\no sa\nap h\nab y\nhy de</w>\neth nic</w>\npla ins</w>\nol f</w>\nhaha hahaha</w>\nholi c</w>\n?! ?!</w>\nsu bli\nbl acks</w>\nmo t\ngh ton</w>\nlo vin</w>\nb rent</w>\nbar u</w>\nl ati\nde w</w>\nate au</w>\nq a</w>\npain ful</w>\nbu sters</w>\nst atic</w>\nðŁĩ¨ðŁĩ ¦</w>\nnote book</w>\nout fits</w>\nsi es</w>\nr f</w>\nfloo ds</w>\nÑ Ģ\nthro at</w>\nsu ici\nro vers</w>\nbeng al</w>\npre pares</w>\nblo g\nmini ature</w>\nØ ¨\nam phi\ncom b</w>\nr sp\nin timate</w>\ngreen e</w>\nÌ ĩ</w>\nal tar</w>\nsurg ical</w>\nves sel</w>\n... ?</w>\ngav in</w>\ng ator</w>\nthreat ened</w>\nz ar</w>\nrob bery</w>\ndi er</w>\npromo ted</w>\ny g</w>\nx s</w>\nsu bs</w>\ninter viewing</w>\nthreat ening</w>\ndo zen</w>\nme ado\nwater fall</w>\nnintendo switch</w>\ncal um</w>\nmini sters</w>\ndro p\nunivers ities</w>\nwar ned</w>\ntac tics</w>\nðŁĩ ²\nrefu se</w>\nad ju\nv ast</w>\nðŁĺ ´</w>\nmc fc</w>\nlib ya</w>\nno filter</w>\ndistribu ted</w>\nre ser\nron nie</w>\nde co</w>\njavascri pt</w>\nmon k</w>\nintere sts</w>\nfle x\nmar tha</w>\nsti es</w>\noo d\nðŁ¤£ ðŁ¤£\ne un\nb ali\ng omez</w>\nsti mul\nmoder ate</w>\nd ity</w>\nir is</w>\nstra w</w>\nconsist ent</w>\ndirec tions</w>\nadop t\nsal sa</w>\ncro o\nreco vered</w>\nblack friday</w>\nlan caster</w>\naccep t\nweareone exo</w>\nbuil ds</w>\nfree man</w>\nair plane</w>\nditi on\nbel ong\njam ie\npit ching</w>\nli f\nom in\ncri spy</w>\npre pping</w>\nve g</w>\nchan g</w>\naccompli shed</w>\ngraci as</w>\ndolph in</w>\nelec tor\nculin ary</w>\nsuper bowl</w>\nwal a</w>\npur suit</w>\nblack berry</w>\nbe an\ncardin al</w>\npro ved</w>\nimmigr ant</w>\nstric tly</w>\nholocau st</w>\npass age</w>\nha us</w>\ncou p</w>\npur se</w>\nhar ass\n< <</w>\nle ed\nado be</w>\nst ad</w>\nlegis lat\npar ked</w>\npri yan\nsil va</w>\nkri st\ns the\nfun ky</w>\nig a</w>\nsett lement</w>\nph s</w>\nt mrw</w>\nstre ssed</w>\nhun t\nho ckey\ntreas ures</w>\ncham bers</w>\nol u\nhu t</w>\nmar ley</w>\ntex ture</w>\nwilder ness</w>\nmm ing</w>\npoten tially</w>\nom aha</w>\nju dy</w>\nto es</w>\nspo iler</w>\ndistingui shed</w>\nfeli x</w>\nah u</w>\nrecommend ations</w>\nzom bies</w>\nhit ler</w>\ntri ple\ncolla pse</w>\nmotiv ated</w>\nulti mat\ngg ling</w>\nso y\nci gar</w>\nfo ren\nvine yard</w>\ngl itter</w>\nfin dings</w>\ncolon ial</w>\nhun ter\neri k</w>\nden s</w>\nbeet le</w>\nlot te\nsub tle</w>\ns matter</w>\ntru sted</w>\nexperim ental</w>\nnam ents</w>\nðŁĺ Ĩ\nregi on\nacquis ition</w>\nbre eding</w>\nquarter back</w>\nam reading</w>\noo td</w>\nru de</w>\niniti atives</w>\nst out</w>\nhy ung</w>\nout come</w>\nal fred</w>\nmic s</w>\nexper tise</w>\nbacter ia</w>\npengu ins</w>\njump er</w>\nvalen cia</w>\nbar k</w>\ning day</w>\nsell ers</w>\ncontrac ts</w>\nhou ston\ncommissi oned</w>\nadap tation</w>\nswan sea</w>\nsanti ago</w>\ncommon wealth</w>\nju dging</w>\nsub mission</w>\nsco rer</w>\ntom my\nÃ± o</w>\nex quis\nfil ing</w>\nexplan ation</w>\nalli son</w>\nwemb ley</w>\nri dge\nchev y</w>\nsan tos</w>\nown ership</w>\ncogn itive</w>\nfavour ites</w>\nsh ed\nphil anthro\ndele ted</w>\ngo dd\ns nor\ngui delines</w>\nff ing</w>\nje ep\ncli ps</w>\nsw amp</w>\nan or</w>\nguil d</w>\nbol ton</w>\nspring field</w>\nmunici pal</w>\ngoal keeper</w>\nye on</w>\nðŁĺįðŁĺį ðŁĺįðŁĺį\nãħĭ ãħĭ\nwater front</w>\ngra ve\ncontempor ary\nar ity</w>\nÃŃ a</w>\nsle eps</w>\nsy rup</w>\nal am\npi re\nco yo\nmoto gp</w>\nty son</w>\nkej ri\ncir cul\nsing ly</w>\ncr unch</w>\ncomplic ated</w>\nnostal gia</w>\nk op\nmo ve\nk ale</w>\nmac ro</w>\nmid west</w>\nh ans</w>\ntri bal</w>\nnu de</w>\nà¯ į</w>\nbey once</w>\ncongratul ate</w>\ncat er\nleagu e\nðŁĻ Ĭ</w>\nla dder</w>\ncra shed</w>\ntech nic\nkarao ke</w>\nharass ment</w>\nro ts</w>\nexperi encing</w>\nkri sten</w>\nðŁĩ ³\nðŁ¤ Ĺ\nreflec tions</w>\nguin ness</w>\nillustr ator</w>\nðŁĻı ðŁı»</w>\ncen ter\nnar row</w>\ncomm ons</w>\nregul ations</w>\nÙ Ĩ\nhar m\ncro ft</w>\ncu ssion</w>\nhong kong</w>\nst ical</w>\nintern ship</w>\nzo e</w>\ncho p</w>\nhoo ds</w>\nestim ated</w>\nbatter ies</w>\nberke ley</w>\nsmooth ie</w>\nshau n</w>\ncro s\n~ ~</w>\ncam pe\nhu mp\nb g\nproto type</w>\ncl ick\nshaw n\nre viewed</w>\ntem pl\np f\njed i</w>\nblo gs</w>\nray mond</w>\nas th\nba h</w>\nav ail</w>\nscot ch</w>\nleaf s</w>\nnik ki</w>\nto k\nhol low</w>\nur ges</w>\nof t</w>\nun like</w>\nlat in\nu e\ncat ering</w>\nmil i\nalter nati\nma ver\nÐ ¸\nag le</w>\npre order</w>\nlu x</w>\ncu cu\nðŁĳı ðŁĳı</w>\nt art\nâĿ¤âĿ¤ âĿ¤</w>\narab ic</w>\nrapi dly</w>\nar rang\nall en\ntravel tuesday</w>\npa ws</w>\nflo ws</w>\nst ability</w>\nflu id</w>\nca pp\ncan berra</w>\nuu uu\nsp ani\ndemon stration</w>\nm la</w>\nplac ement</w>\nm w\npresi dents</w>\nawe som\nbever ly</w>\nani st</w>\nne al</w>\nfather sday</w>\nreferen dum</w>\nla hore</w>\no aks</w>\ndeb bie</w>\nhalf way</w>\ngho sts</w>\nde bor\nmatthe ws</w>\nfi at</w>\nt fw</w>\npre sen\nrob i</w>\nde d\nbro ck</w>\nlaugh ed</w>\nam ounts</w>\nbam boo</w>\nkinder garten</w>\neat en</w>\nmtv hottest</w>\nbreak out</w>\nu sic</w>\nfra ser</w>\nlegis lative</w>\np ang\nmodu le</w>\nsam my</w>\ngo ver</w>\near ns</w>\nexpe dition</w>\ngar h</w>\nconcep ts</w>\nchar lie\nla va</w>\nbachel or</w>\nveg gies</w>\ndeter mine</w>\nel lie</w>\nun locked</w>\nfru it\ndal la\ncou pe</w>\nwash ington\ndepo sit</w>\niv ory</w>\npau la</w>\nchic ag\ngu cci</w>\nðŁİ ĥ</w>\ncul tiv\npier ce</w>\nli fted</w>\nstu mb\nre cover</w>\nmusc les</w>\nconduc ting</w>\ncb s\nmcla ren</w>\nsophi a</w>\ncel lu\noce ans</w>\nup loaded</w>\ngame play</w>\nmal dives</w>\nkim ber\navo i\nrac er</w>\nca ine</w>\ncav s</w>\nh ana</w>\nli ga</w>\nra ven</w>\ninter vention</w>\ninaugur ation</w>\noo h</w>\nat traction</w>\nmerchandi se</w>\ntune in</w>\nli king</w>\njuni ors</w>\nint ended</w>\natt acking</w>\naqu arium</w>\ni wd</w>\ncomp onents</w>\nsur ing</w>\ncent u\nyogur t</w>\nðŁı ĥ\nshow room</w>\nop tical</w>\nty our\nju dge\nyi eld</w>\nan to\npl c</w>\ntransparen cy</w>\nrecy cled</w>\nchi ef\nar om\nambassad ors</w>\nplan et\nâĿĦ ï¸ı\nom ed</w>\nvaness a</w>\ncour t\nmar gar\nhal ey</w>\nv r\nreg ina</w>\npd ates</w>\nhi span\nlive stream</w>\nâģ £</w>\nya hoo</w>\ngal la\nsecu red</w>\nw ir\nbene ath</w>\noff l</w>\nn il\nam b</w>\nye g\nout let</w>\nu te\npe ep</w>\nlind say</w>\nbent ley</w>\n... !</w>\nhe el</w>\ntrilo gy</w>\nvo s</w>\nty re</w>\nthere fore</w>\ntor onto\nab i\nsimp li\nja e\nexten sive</w>\neleph ants</w>\ns or</w>\norient ation</w>\nim peach\nre play</w>\nconstru cted</w>\npeter son</w>\npa is\npor ted</w>\ncustom s</w>\ncolla p\nad u\nhigh lands</w>\nsal em</w>\nshel by</w>\nko vic</w>\nstra in</w>\nro sie</w>\nsen ators</w>\nsnap s</w>\nbo bb\nsuz uki</w>\nbla des</w>\nk p</w>\nlo lo\ngener ate</w>\nsi ght\nma e\nstruc tural</w>\npredic t</w>\njump ed</w>\nah mad</w>\nsun g\njust ice\ngla m</w>\nvol vo</w>\njubi lee</w>\nde tention</w>\nlo sses</w>\npu ri\nevery time</w>\nÐ °\nra o</w>\ned ge\nli mer\nrese mb\nhar old</w>\nre tri\nsacri fic\nsurpri ses</w>\nam c</w>\nsrilan ka</w>\nbar bie</w>\nmen s\nfin n</w>\nag s</w>\nukrain ian</w>\nem brac\nî Ĳ\nflav ors</w>\nhom er</w>\nlau re\nou th\npr iced</w>\nver de</w>\nfir m\nah s</w>\ncu b\ntre y</w>\npar anor\npro fit\nin dv\nwho a</w>\nhar sh</w>\nal ot</w>\ncrit ics</w>\nhu bby</w>\nfi gur\ngi ra\nca stro</w>\nchan el</w>\nin put</w>\norigin als</w>\nten ant</w>\nyy yy</w>\nture rs</w>\nlincol n\nco on</w>\nlear n\nch ou\nac are</w>\no les</w>\ndin er</w>\nhy p\nbizar re</w>\nmc r</w>\nlet sgo\ndecor ating</w>\nðŁĮ İ</w>\nal ison</w>\nar vin\nf d\nreha b</w>\nmccar thy</w>\nlot tery</w>\nda h\nminne apolis</w>\neli gible</w>\ndiagno sed</w>\nemer ald</w>\ndestin ations</w>\ns ans</w>\nor y\nbla zers</w>\nn v</w>\nba il</w>\ndigital art</w>\nno c\nmal ta</w>\nsol ar\npi pes</w>\nalleg ations</w>\nno ck</w>\npo pe\nbri d\npremi er\nn x</w>\npresent ations</w>\nef a</w>\nbo ws</w>\nval ve</w>\nopp onent</w>\nĮ ë\nvisu al\ning le</w>\ncate gor\ne ter</w>\npo is\ndan i</w>\nat tract</w>\nneu tral</w>\nth ene\ncra shes</w>\nfred die</w>\nut ili\nc st</w>\nawak ening</w>\nslo ven\nquali fy</w>\npro of\nfair y\nle v\nfre ight</w>\nenjo ys</w>\ncup cake</w>\nflav our</w>\nâ ķ\nprotec tive</w>\nðŁĳı ðŁı»</w>\nis u\nad mir\nh mmm</w>\ncontinu ous</w>\nai res</w>\nrap tors</w>\nshowcas ing</w>\ny uk\npa ste</w>\nfollow er</w>\ninstru ctions</w>\nsp ru\n@ __</w>\nthe o\ndebu ts</w>\nve tte</w>\nsto w</w>\nes of\nach ed</w>\nsul tan</w>\nsand wich\nsom alia</w>\nfranc o</w>\ncar ne\nflu ffy</w>\nal pine</w>\njas mine</w>\nhe ated</w>\nviol in</w>\nple ss</w>\ndivor ce</w>\nper former</w>\nphi es</w>\nport sm\ndar a</w>\nkir by</w>\nlo p</w>\nchill i</w>\nfor th\nsky pe</w>\nðŁĩ®ðŁĩ ¹</w>\ncelebr ities</w>\ned y\nve e</w>\npo ison</w>\ney el\ngra bs</w>\nssi c</w>\nun o</w>\nwester n\nrail road</w>\nam er\nnumer ous</w>\ns v</w>\nfo w\nfi st</w>\nâĢ ĭ\nreque sts</w>\nmar tial</w>\nem my</w>\naccept ance</w>\nlau ra\nà¸ ´</w>\ner up\nhyun dai</w>\nout lander</w>\nu tt\nwrest le\nesp resso</w>\ndemand ing</w>\ng dp</w>\ngeo graphy</w>\nsas kat\ntro ll</w>\nconfe der\nsu es</w>\nse m</w>\nbe ts</w>\nt ful</w>\nto sh</w>\nteach es</w>\ncol oured</w>\ngal way</w>\nmac y</w>\ndis orders</w>\nbb cra\nat em\nfen der</w>\nlit ter</w>\ne sh\nprovi ders</w>\nrenov ation</w>\nnomin ate</w>\nps g</w>\nnomin ations</w>\njen na</w>\nshar p\nsome day</w>\nz ur\nbra ins</w>\nche shire</w>\npre y</w>\nhu go</w>\nÂ ¿</w>\nto ken</w>\nr v\ncar r</w>\ntac tical</w>\nzel da</w>\nkay la</w>\nfern ando</w>\nphotograph ers</w>\nj our</w>\numb rella</w>\nwoo dy</w>\ncongress man</w>\ndu mp</w>\nle vy</w>\nju an\nd azz\nsign als</w>\nla in</w>\nan u</w>\nmic hel</w>\npor ch</w>\nal den\nsibl ings</w>\ny ale</w>\npe el</w>\nsw ick</w>\ngg in</w>\nll c</w>\nk ale\ns con\nil d</w>\npat reon</w>\nre el</w>\nqu in</w>\nwit t</w>\nmar ty</w>\nmoo dy</w>\nton i</w>\nder y</w>\ng ators</w>\nspeci fically</w>\ndd in</w>\nly on</w>\ntr ick\nmeado ws</w>\np j</w>\nbor gh\nvi k</w>\ntu r</w>\nbron x</w>\npu ff</w>\nlan tern</w>\nðŁ¤ ¦\ng ently</w>\nbe stie</w>\nfac t\nrefu sed</w>\nfas ci\nmp y</w>\nðŁĶ µ</w>\ncross over</w>\nmead ow</w>\nindian apolis</w>\nduc ation</w>\nsle y\nloo m</w>\nmix er</w>\nnew music</w>\nfilm maker</w>\nprosper ity</w>\nli m</w>\nweek end\ncre amy</w>\nneu tr\nlu ther</w>\nh v\nnor thern\ntw o\nh ra</w>\ncat ches</w>\nappear ances</w>\nha bit</w>\nkitt ens</w>\nn v\nilla c</w>\ninf an\nregar dless</w>\nliz ard</w>\ndun k</w>\ncur tain</w>\nac om\nin tu\nve z</w>\ne min\nfl ats</w>\ncalend ars</w>\nem power</w>\nru ined</w>\nhun gary</w>\nvi d\nwe x\nu lum</w>\naber deen</w>\no sa</w>\nk t\nma ssi\nse emed</w>\ns den</w>\n' ?</w>\ntele phone</w>\nde fi\ninsp ires</w>\nme ow</w>\nz ones</w>\nbl ind\npl y\ntuc son</w>\nadvent ure\nge d\noy ster</w>\nðŁĳıðŁĳı ðŁĳı</w>\nout put</w>\ntt t</w>\nmetal lic</w>\nsma sh\nucl a</w>\nsco ts</w>\nperfe ct\nlu cy\nregular ly</w>\nsp ic\nrel ative</w>\nath ers</w>\nmis e</w>\nbatt ling</w>\ndeci des</w>\nmat a</w>\noccu pied</w>\nrandom ly</w>\ncat softwitter</w>\ngi an\nball y\nal ties</w>\nal lies</w>\nim men\nsy rac\nðŁĴľ ðŁĴľ\nl lan\nau r</w>\nk ut\nlam ar</w>\naffe cts</w>\nn ra</w>\nstar war\nðŁ¤ ĺ</w>\nsc ram\nen chan\npro cess\nluxu rious</w>\nar ray</w>\nsher lock</w>\ncomp ati\ndor f</w>\nstre ss\nm su</w>\ns with\nsal a</w>\nsof instagram</w>\nfo il</w>\nunder stood</w>\nqu ay</w>\nr p\nc ade</w>\nja w</w>\nen ab\nen coun\nðŁİī :</w>\ndo ck\nsatur n</w>\nmu ll\nlay out</w>\nra rely</w>\nhapp ily</w>\nfix ture</w>\nor ph\nover looking</w>\nher bs</w>\nm itt\npil lar</w>\nnol an</w>\npe tty</w>\nstr y\nu i\nmu k\no res</w>\no vers</w>\ná µ\nre creation</w>\nwe sley</w>\nri t</w>\nkejri wal</w>\nsto cking</w>\ng v</w>\nsubscri bers</w>\nmoo se</w>\nma e</w>\nber t\nopp re\nassign ment</w>\nu ro\nhigh lighting</w>\ncal vin</w>\nwe igh</w>\ncambo dia</w>\nav on</w>\nke m</w>\ndis abilities</w>\nread y\nchar gers</w>\np ads</w>\niz ing</w>\nilli an</w>\ntru ste\ncol leges</w>\nassoci ates</w>\nalban y</w>\nmil ton</w>\ncr on\nbu r</w>\nhar dly</w>\nsi ghts</w>\nanti ques</w>\ne cho\nsurpri singly</w>\nha iti</w>\ncap t</w>\nph p</w>\nop io\nine quality</w>\nequ al\nken y\nsch mid\nautograph s</w>\nren t\nqu er\ncit rus</w>\nchalleng ed</w>\nte c\nepi de\nfe st\nz hou</w>\nli me\ncitizen ship</w>\ncry stal\nconvin ced</w>\nmess enger</w>\ncopen hagen</w>\nâĿĹ ï¸ı</w>\nwar ran\ndevelop ments</w>\nï¸ı âĥ£\nfore x</w>\nhi ro\nsne akers</w>\nxi de</w>\nvi va</w>\nstere o</w>\nbat ting</w>\nss el\nho st\nbeng al\ncritic ism</w>\nq c</w>\ncr un\nattemp ted</w>\nry e</w>\ndetermin ation</w>\ncre ations</w>\nd read\nlabel s</w>\npos se\nanc er</w>\njoh an\nsi ster\npartner ships</w>\nles bian</w>\nk st</w>\nguaran tee</w>\nbar o\nfix ing</w>\nma son\nm ous</w>\nchem icals</w>\nt less</w>\nbio diversity</w>\npar o\nbhar at</w>\nac ol\nrefu ge</w>\nen te\nt iti\ndys sey</w>\nrespon ds</w>\nlef to\nin er\nse vel\nrahu l</w>\nol ine</w>\nfrank fur\ncho reo\nenjoy able</w>\nc to</w>\nstrugg les</w>\nwood land</w>\nheavy weight</w>\ngen s</w>\nrece p\nac cred\nðŁĺ ¡</w>\ntrans formed</w>\nlist en\nat op</w>\nn k</w>\nsur ge</w>\nbe re\ngover nor\nprison ers</w>\nclau de</w>\nt ill\nmu lator</w>\nemo tion</w>\nwater loo</w>\nstar t\nðŁĩ º</w>\nclean ed</w>\ngrand mother</w>\nfear less</w>\nafric an\nastron omy</w>\nðŁı ģ</w>\nà¸ Ļ\nthe world</w>\nsu itable</w>\nanth ony\nk and\ntt en</w>\nmeaning ful</w>\ndisc lo\njaco bs</w>\nÃ ¸\ntom linson</w>\nghe tti</w>\nty pho\nsub stan\nas co</w>\nte k\nnag ar</w>\nmu d\nam on\nvacc ine</w>\nf ty</w>\nfle sh</w>\nno el</w>\ninfl ation</w>\nportu gue\nglam our</w>\ntra m</w>\nv re</w>\nte qu\nroun dup</w>\nw yn</w>\nrejec ted</w>\nmosa ic</w>\nsi ghting</w>\ncal f</w>\no ta\ncom position</w>\ngo pro</w>\ngonz ale\ne ed</w>\nb ard</w>\ntu e</w>\neffec tively</w>\nwe en\nal to</w>\nri bs</w>\nrel ate</w>\nthir sty</w>\nfu rious</w>\ndi m</w>\nch ard</w>\nperfu me</w>\ns ny\nchur chill</w>\nk of\nmaster class</w>\nwa ve\nðŁĶ µ\ner in\nown s</w>\nto be\nsk illed</w>\nte m</w>\ngo f\nen i</w>\ntor i</w>\ncra zy\nl ick</w>\nresi stant</w>\nici al\nag ar</w>\n! :</w>\ng ali\ndel aware</w>\nbl itz</w>\nkoh li</w>\npu ck</w>\navail ability</w>\nhi malay\ninflu ential</w>\ncro chet</w>\nvictor i\nread ing\nho bby</w>\nvie t\nj as</w>\nen gra\nsk ul\nðŁĩ² ðŁĩ\neduc ate</w>\ntech no</w>\ndistric ts</w>\nblu es\nse tt</w>\nseven th</w>\nlear ns</w>\nee ee</w>\napocaly pse</w>\nhang out</w>\ncru el</w>\nmu tu\nbru h</w>\nhel en\nshe er</w>\nc tion\nkle in</w>\ntex ans</w>\nce real</w>\nsh ine\nne red</w>\ngra s</w>\nam bro\nf ella</w>\nhin du\nmatthe w\nli ma</w>\nmir anda</w>\nje wel</w>\nso ho</w>\neuro vision</w>\nneighb ours</w>\nchand ler</w>\nbe sides</w>\nðŁ¥ °</w>\nast ros</w>\nthu mbs</w>\nren ault</w>\nra ve</w>\nhi red</w>\nðŁĸ ¤\nit ary</w>\nz or\nbla zer</w>\nk ine\nea u</w>\nkat y\ndc comics</w>\npe c</w>\nro dgers</w>\nwater proof</w>\nkill ers</w>\nsuper int\npre serv\nas so</w>\nbrew ers</w>\npromo tional</w>\nsc am\nvilla ges</w>\nsket ches</w>\nju icy</w>\nfor life</w>\nau dit</w>\nso lo\nfundam ental</w>\nlen e</w>\nphilipp ine</w>\nt end\nconserv atives</w>\nsponsor ship</w>\ndd le\na ine</w>\nh tc</w>\nos i</w>\nhul k</w>\nw af\nà¸ Ļ</w>\nevalu ation</w>\nant ine</w>\nsle e\nrobert son</w>\nroo sevel\nag i</w>\nsophi stic\nemplo yers</w>\nbubb les</w>\nko wski</w>\ninter action</w>\nsh u</w>\nbou le\nic an\nj are\nhan k</w>\nleg itim\nk nicks</w>\nkar ma</w>\nrecei ver</w>\nper ks</w>\nu h\nsta ir</w>\nsun i\nlabor atory</w>\ngra ves</w>\nvoc als</w>\noo t</w>\nc ture</w>\nthri ve</w>\ntic o</w>\nãĥ ³\nb w\ncarto ons</w>\nmcdon alds</w>\ndra w\ny ung</w>\npl er</w>\nli d</w>\neth ical</w>\ngroo ve</w>\nent a</w>\ninternational womensday</w>\npat ron</w>\nwor ries</w>\nðŁİ ħ\nðŁĳ ĭ</w>\nka therine</w>\ndi az</w>\ntor i\nbach chan</w>\ntru st\nmin eral</w>\nic om\nbuil ders</w>\nbor n\ncol oring</w>\nlat te</w>\nca se\nrevolu tion\ntra der</w>\nox id\nchi pot\ninst antly</w>\nsou thern\nse hun</w>\npro b\nher nandez</w>\nlis bon</w>\nhu awe\np ong</w>\nme a</w>\nro oney</w>\nwheel chair</w>\nke en\nbe tt\ncor in\nregulat ory</w>\ndi splac\nka ren\nsch em\nsun sets</w>\nwh ales</w>\nremin is\nhe p\nhi de\nmar cel\npand ora</w>\ndo yle</w>\nth fc</w>\not to</w>\nno kia</w>\ntrans gender</w>\nko v\nhawai ian</w>\nsha ve</w>\nso vere\nexc er\nnick i</w>\npu g</w>\nst or</w>\nro th\nwee t</w>\nleg al\ndig nity</w>\npo w</w>\nhom age</w>\nðŁĩ³ ðŁĩ\ns re\ncan on\nla x\nwo ah</w>\nquart z</w>\nÃ± a</w>\ngree ting</w>\nflick r</w>\nnai robi</w>\nadvoc ates</w>\nan c</w>\nvi i</w>\neu gene</w>\nth ra\nc re</w>\nel an\npen sion</w>\nth letics</w>\nton i\nre agan</w>\nx v</w>\nsto re\nben ch\nhar lem</w>\ntodd ler</w>\nsent enced</w>\nâĻ¥ ï¸ı\nglob ally</w>\nche aper</w>\nu f\nma m</w>\nnic o</w>\nik u</w>\ntho u</w>\nni st</w>\ndam i\nth ala</w>\nrho des</w>\nsal e\nbow ls</w>\nâ Ī\nlas vegas</w>\nsanc tions</w>\nadm ire</w>\nmat ched</w>\nun able</w>\ntravel er</w>\nele ven</w>\nstraw berries</w>\nâĢĶâĢĶ âĢĶâĢĶ\nstu dio\njac ques</w>\nim s</w>\nvalu ed</w>\ns no</w>\ncheese cake</w>\nn xt</w>\ne os</w>\ns x</w>\nf x\nton ic</w>\nhat ch</w>\nchic ks</w>\ngra ds</w>\nhand ic\nr ory</w>\nas p\nri pped</w>\ndenti st</w>\nn en\nlu fc</w>\nâľ Ĭ</w>\ndi ge\nhop kins</w>\nsher man</w>\nf da</w>\nfor all</w>\nash ley\nstr and</w>\nh y</w>\nliqu or</w>\nbuffe t</w>\ness ence</w>\nphar ma</w>\nsuri ya</w>\nðŁĴĻ ðŁĴĻ\nfesti vals</w>\nz an</w>\nre fresh\npur ple\nuni forms</w>\nkenne th</w>\n= )</w>\nas an</w>\nhel sin\ntransform ers</w>\nk ali\nperson alized</w>\nchal k</w>\nbo bby\nâ Į\nthe mes</w>\ndepar ture</w>\nprin t\nillustr ations</w>\nqui et\nagre es</w>\ngri ff\nØ ³\nm iti\ntoge ther\nconven ience</w>\nab ar\ncar lo\nturt les</w>\ninfo sec</w>\nsome what</w>\nar lington</w>\nscholar ships</w>\nemir ates</w>\nmu ms</w>\nst ella</w>\nauton om\nfe ather</w>\ng ore</w>\nnom inees</w>\nfragr ance</w>\nÑ Ĥ\nw ong</w>\nthea stern</w>\ngr e</w>\nz illa</w>\nis i</w>\nbump er</w>\ngo o</w>\ndo zens</w>\nab duc\nâļª ï¸ı</w>\no ils</w>\ndon ors</w>\nsil icon</w>\ni pod</w>\nfortn ite</w>\nðŁĴ ¨</w>\ntor o</w>\nspark ling</w>\nconsci ousness</w>\npal a</w>\nnu m\nmoun ted</w>\nffin s</w>\nthi eves</w>\nteam mate</w>\npra b\nom er</w>\nta pes</w>\nbo d\nmit su\nste w</w>\ne re\np bs</w>\ntu sc\nlo we</w>\nra de</w>\nparliam entary</w>\nh m\ned gar</w>\nðŁĳĩ ðŁĳĩ\nto a\na gh\nhon i</w>\ns late</w>\nge ek\nap t</w>\nhard t</w>\nta p\nhoriz on\ngrow th\nmake over</w>\nhi l</w>\npaper back</w>\nid an</w>\nreha bil\ngi u\npossi bilities</w>\nlet tu\nfran co\nbo ss\nach er</w>\ndoes nt</w>\nmo e</w>\nta ker</w>\nhuss ain</w>\nml k</w>\ndi l</w>\nth ia</w>\nham a</w>\nreal ised</w>\nraven s</w>\ncurric ulum</w>\nm ith</w>\nk night\nted x\nr v</w>\nisai ah</w>\ncumb ria</w>\nbirth days</w>\nf ing</w>\npre z</w>\nmu barak</w>\nexquis ite</w>\nclear ance</w>\ny en</w>\npar i\nev o\nÃ º\nmodi fied</w>\napp lying</w>\nimple ment</w>\ndisco vering</w>\nchap man</w>\nindie game</w>\ndis k</w>\ncrowd funding</w>\nmach in\nli vel\nsty led</w>\nâĿ Į</w>\nma king\nrehear sals</w>\nnutr iti\nsubscri ption</w>\nand ro</w>\ncre ators</w>\ncar ries</w>\nky lie</w>\ncam den</w>\nappren tice</w>\ntax pay\nc ca</w>\ntuesday thoughts</w>\npis sed</w>\ner man</w>\ndete c\nfreed om\nmer i\n.. !</w>\npsal m</w>\nsun light</w>\nper spec\nbe ings</w>\nbook store</w>\nrock star</w>\nfun ctions</w>\np ence</w>\nfav es</w>\nz n</w>\nobam acare</w>\nsp ill</w>\ncoven try</w>\npi geon</w>\npi vo\nba it</w>\nkol kata</w>\nav al\ndon or</w>\nwa h</w>\nprivi leg\ntra ditions</w>\nrajas than</w>\nten ess</w>\nportugue se</w>\nyn es</w>\ntack les</w>\nde fic\ntor n</w>\npol ling</w>\nthor ne</w>\nin a\nbened ict</w>\nbar ry\ncal ories</w>\nver dict</w>\nsave the\nnor ton</w>\noff ice\nmain stream</w>\nimpro ves</w>\nfr on</w>\nrespon ding</w>\nreal tor</w>\nscotti sh\nde clar\nr l\nshi v\nsupp lier</w>\nre sting</w>\nswee ts</w>\nqu i</w>\n. âĢ¦</w>\nwhit ney</w>\nstartu p\nthank you\nteach er\nh alls</w>\nha ve\nhand made\npro ving</w>\nquar tet</w>\nro chester</w>\nli an</w>\nvirtu al\nmend es</w>\nof icial</w>\nmid lands</w>\nx box\nmeas uring</w>\no vo</w>\naccommod ation</w>\nbri des</w>\ncollegi ate</w>\nintellec tual</w>\nin car\nni ag\nðŁį ·</w>\nsf w</w>\ncoco a</w>\nco ats</w>\ncivil ians</w>\npresi dency</w>\nmat rix</w>\nsweethe art</w>\ntri athlon</w>\nwag ner</w>\nra dic\nplann er</w>\nthe o</w>\nexecu tion</w>\nk um\nthe walkingdead</w>\nsc ar</w>\nro tation</w>\nblo gging</w>\nbom b\nre son\nbb les</w>\nst are</w>\nassi sted</w>\ne do</w>\nbrand ed</w>\nwar nings</w>\nthor pe</w>\nacknow le\nsatis fied</w>\nsho res</w>\nri d\ndor a</w>\nphys ically</w>\nbi gh\nappro ves</w>\nha h\nric al</w>\nvers atile</w>\npret end</w>\nlu m\nab hi\nye e\nsp it\nãĢ Į</w>\ndj s</w>\nash tra</w>\nj t</w>\nven ues</w>\ngram mys</w>\ncy clo\ntr acker</w>\nover watch</w>\nrepl ica</w>\nel yn</w>\nnr l</w>\nlind sey</w>\nhom o\nballo ons</w>\nkitch en\nsi s\nam os</w>\nende av\nðŁĴ »</w>\na rec\nthu g</w>\nhoo ked</w>\nhr c</w>\nnew york\nbur gh\nameric as</w>\npatric ia</w>\nug u</w>\nap athy</w>\nha st\npsy chi\ncor k\npetro l</w>\nðŁİ ¬</w>\nak u\npo pping</w>\npsycho logical</w>\nau x\ng ma</w>\ncad illac</w>\nwa ste\nauth ent\nbri stol\nnam e\nque er</w>\nto ber\njer ry\ncom in</w>\nch ant\nprivileg ed</w>\nop ar\nlo ser</w>\ntex t\nmar ker</w>\nstri es</w>\nequ ally</w>\nak i\nchrist mas\ngare th</w>\nble w</w>\nem ma\nimag in\nse als</w>\nche at</w>\nconditi oning</w>\nj ana</w>\nren s</w>\ndar ies</w>\no asis</w>\ndisc ounts</w>\ncoun cil\ni ka</w>\nshir ley</w>\nvou cher</w>\nal ps</w>\nw x\nq r</w>\ndri ft</w>\nattemp ting</w>\nut c</w>\nØ ª\ngonzale z</w>\nm f\njo ker</w>\nparalle l</w>\npa re\naspe cts</w>\nproce du\nn p\nam a\nrale igh</w>\nbright en</w>\ngu ire</w>\nradi ation</w>\ncre scent</w>\nho b\nil le\nstr and\nv ore</w>\nn ard</w>\nche st\ndi wali</w>\nav atar</w>\nal der\nd ling</w>\npa thetic</w>\nðŁĴ ĺ\nspir it\njor ge</w>\nfilm making</w>\nðŁĻı ðŁĻı\nchalleng er</w>\nb j</w>\ndown town\nht ml</w>\nade qu\ntwi sted</w>\nin ely</w>\n( '</w>\nwra ps</w>\noper ational</w>\ny ne</w>\nn us</w>\nmag net</w>\nmarket place</w>\nhealth ier</w>\nsnap shot</w>\ndam on</w>\ninter ven\nfe derer</w>\now ls</w>\nbiscu its</w>\nj p\nro deo</w>\nblue berry</w>\nlec tion</w>\nfron tier</w>\nsumm ers</w>\nre yes</w>\npede strian</w>\ngo l</w>\ncaf fe\nrefur bi\nbou lder</w>\nme ghan</w>\nspeci alty</w>\nla ss</w>\ne i</w>\nsuspec ts</w>\nappro x</w>\nrr r</w>\nra th\nst im\ncru shed</w>\nhe d\nwh un\nlo af</w>\ncr ore</w>\nriver a</w>\ngene tics</w>\nso ck</w>\nwa sted</w>\nny pd</w>\nansw ering</w>\ndo ve</w>\nbel la\nol in</w>\ndu n</w>\nfi ji</w>\npre tty\nspar kle</w>\ny un</w>\nj d\neuro pa</w>\nli fts</w>\nam ber\nmu r</w>\nte k</w>\nboy d</w>\nroy alty</w>\nin do</w>\nri b</w>\ngo tham</w>\nti est</w>\ninst alling</w>\nke mp\nthe photo\ncos mic</w>\n) ))</w>\nwhole sale</w>\nloy ment</w>\neas y\nsu ing</w>\nsett led</w>\naf p</w>\npro ver\nsuppor tive</w>\nre es</w>\nne ath</w>\ndeli ber\nc Ã©</w>\nwel come\npic oftheday</w>\nnew born</w>\npat ty</w>\nsun s</w>\nsi est</w>\nfl int</w>\ndiffe rently</w>\nspo ilers</w>\ntroop er</w>\ng ins</w>\ncor y</w>\nlook out</w>\nequi pped</w>\nta pe\nto by</w>\nresear cher</w>\nu sh</w>\nke yes</w>\nal ma</w>\ninduc tion</w>\nk w</w>\nk har\nsl ick</w>\nbri de\ne ur\ncra ving</w>\nbook ings</w>\nch es\ntr unk</w>\nvern on</w>\nsp her\ncryst als</w>\nrel atively</w>\npom pe\nuni ons</w>\nval ley\npar a\nw ant\nok c</w>\nde af</w>\nser gio</w>\nlen non</w>\nsh ay</w>\ncr a</w>\nv at</w>\nhe e\nt we\nliqu id\npol y</w>\nðŁİ ģ\nb ent</w>\nbe aring</w>\nmotor sport</w>\nbar be\nte sti\nhan i</w>\nfin ancing</w>\nastron aut</w>\nwater colour</w>\nri sh\ncomic con</w>\ngar t\nwr ong\nber n</w>\nit an</w>\nste pped</w>\nfil ters</w>\nc low\nme x</w>\ndem ons</w>\nall o</w>\nexpand ed</w>\ncomm and\net ers</w>\ngo ats</w>\nsi ri</w>\ny r\npot tery</w>\nmari on</w>\ni le\nel an</w>\nsan to</w>\nperson a</w>\ndu ke\nhom eless\nli ghted</w>\nwheel er</w>\nchang er</w>\ncab bage</w>\nsur real</w>\nham burg</w>\nsma shed</w>\nstr an\nk not</w>\ni art\nob i</w>\nbe dro\ndi al\nth ick\nb ingo</w>\nfu s</w>\nvacu um</w>\ncon ve\nati ve\naccur acy</w>\naccoun t\nre fer\nri z\nspider man</w>\nban a</w>\nr ite</w>\nu b\nab s\nmedic al\nlin k\nsi em\n> >>></w>\nbe tra\ng lowing</w>\nre actions</w>\npupp et</w>\nspa ghetti</w>\nang s</w>\nre medi\npray for\nroy ce</w>\nchar lotte\n£ ï¸ı</w>\ngh et\naffe cting</w>\nro de</w>\nsoci alist</w>\nmo ses</w>\naz i</w>\no it\nre porters</w>\ncd t</w>\nap ing</w>\ns nat\nminim al</w>\nwa ist</w>\nsie ge</w>\n>> >>\nri g\nschmid t</w>\nh are</w>\nec a</w>\nthor n</w>\nhe mp</w>\nes the\ncly de</w>\nth a\ndon ut</w>\nmoham ed</w>\nling erie</w>\nle gg\ncarpen ter</w>\nperform ers</w>\nde a</w>\nimag ined</w>\ncur se</w>\nla sh</w>\nct r</w>\nagu a</w>\nro ar</w>\ngr i</w>\nro le\nj fk</w>\nresur rec\nroosevel t</w>\nmaril yn</w>\nsm alle\nwill is</w>\nwa ited</w>\nchar ities</w>\nthe res</w>\nli k</w>\norigin al\ncar i\nc ough</w>\ncru ci\nla gun\ncontra st</w>\nk ou\narm our</w>\nre moving</w>\nt ent\nmaz da</w>\nbri ghter</w>\nthi ef</w>\ncor ner\ntequ ila</w>\nbuzz ing</w>\nal bi\np am</w>\naz ure</w>\ndisc oun\npixel art</w>\npossi bility</w>\nham ont</w>\ntra des</w>\nbu da\nhi ve</w>\nvers y</w>\nfin ch</w>\ntran spa\nem i</w>\nterri fying</w>\nin qui\ng ba</w>\nsub stitu\ncollec ti\nplac ing</w>\ncin dy</w>\nk ann\npa tho\ndiamon d\nmour inho</w>\nguine a</w>\nanthro po\nair s</w>\npu mps</w>\nì ļ\npas o</w>\ncur ling</w>\nan ita</w>\nresi dency</w>\nne wh\njo on</w>\ncigare tte</w>\nque ue</w>\nex trac\ngam es\nspl en\nex press\npublic ly</w>\nbon nie</w>\ntribun e</w>\nba ek\nreason able</w>\nc or</w>\ntimo thy</w>\nshe eran</w>\nÄ ±\nf dn</w>\nsu tton</w>\nconcentr ation</w>\ncarav an</w>\nx avier</w>\nal ger\ncy lin\nfreder ick</w>\nner ve</w>\npe ak\nlettu ce</w>\nj ail\npre game</w>\nkav an\nup graded</w>\neco logy</w>\nsquad ron</w>\ngra pes</w>\ngoo g\npa stry</w>\nðŁĹ £</w>\nãĥ¼ ãĥ\nmil ano</w>\nawa z</w>\npresen ter</w>\nðŁĮ ¿</w>\nher d</w>\nking s\ntem plate</w>\nfl our</w>\nh v</w>\nk ley</w>\ni ya</w>\nspe c</w>\nat er\nfrankfur t</w>\nco ch\ntex ting</w>\ndel i</w>\ncommuni st</w>\nregi ment</w>\nele anor</w>\nanticip ated</w>\nðŁĳĮ ðŁı»</w>\nthephoto hour</w>\nran o</w>\nsurvi ving</w>\nsimul ation</w>\ndaw son</w>\nar in</w>\naqu a</w>\nm or</w>\nâĢ¦ .</w>\ncin o</w>\nira qi</w>\nsh az\ndun dee</w>\nwe s\ndra u\nhann ah\ns news</w>\noccup ation</w>\nste en</w>\nx m</w>\nang les</w>\nsett ings</w>\ngur u\nkno x\nor ca</w>\nshap ing</w>\nw ent\ndr illing</w>\nzz ie</w>\nbr i</w>\nkis sing</w>\nfin d\nma ine\nâŃĲï¸ı âŃĲï¸ı\nðŁĮ į</w>\nlar ry\nbu sted</w>\nta vern</w>\nacti vely</w>\n- \"</w>\nreplac ing</w>\nno d</w>\nun lock</w>\n. \"\nâŀ ¤</w>\naffili ate</w>\nto w</w>\nl n</w>\nhappy newyear</w>\ndi f\nj m</w>\ngreen wich</w>\ncontro versy</w>\ndaw g</w>\ncon dol\nsav annah</w>\ncompens ation</w>\ntouch down</w>\nte o</w>\namb itious</w>\nembro i\nconvic ted</w>\niart g</w>\nbar ack\ntr ance</w>\ntestim ony</w>\nau dition</w>\nthum b</w>\nmy ths</w>\nbe x\nque z</w>\norch id</w>\nden y</w>\nentit led</w>\nhoo d\ngr ant\nin box</w>\nblue jays</w>\nr illa</w>\nsmalle st</w>\nbur den</w>\nin famous</w>\ndivi ded</w>\nboun daries</w>\nt ter\nel t</w>\nwy oming</w>\nbe verage</w>\nme sm\none ws</w>\nbudd hist</w>\ny ana</w>\nas sad</w>\nis ms</w>\nbar rett</w>\npredic ted</w>\nback to\ntw it</w>\ne there\ncap tains</w>\nescap ed</w>\nay o</w>\nlam borgh\ngard ner</w>\nla ps</w>\nk al</w>\nadverti sement</w>\ninsec ts</w>\nna po\nam en\nac y\nr and</w>\ng k</w>\nte h\nk athle\ntri dge</w>\npan cake</w>\nat ro\npyram id</w>\nbu la</w>\nparal ym\ngau ge</w>\nen cies</w>\ntom y</w>\nbiscu it</w>\nbut cher</w>\nquali fier</w>\ncoun ty\nke i\npo ols</w>\ndar ker</w>\nshould ers</w>\nðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸\nsp re\n( \"</w>\nwrit ers\ng m\nðŁİ ĵ</w>\nk nit\nhu ff\nmt b</w>\nphilli es</w>\no st</w>\nden is</w>\ng art</w>\nlicen sed</w>\ninter face</w>\nex cel</w>\nd well</w>\nfrom the\nco fficial</w>\naz zi</w>\nappear ing</w>\nfore st\nn ana</w>\nke ith\nmanufac turers</w>\nbeck ham</w>\n) ?</w>\ne se\ncol ony</w>\ndelic ate</w>\nut ter\nmc in\ntranspl ant</w>\npre ferred</w>\npar d</w>\nari e</w>\nhu b\npo ds</w>\nperspec tives</w>\npic t</w>\ndel u\napp er</w>\nbe than\np mo\ncrimin als</w>\nfemin ism</w>\nsh ack</w>\ncircum stances</w>\nfel las</w>\nprote sting</w>\nwa x\nsugge sted</w>\nt ator</w>\ndre w\nom ni\nfa ke\nkath y</w>\nre b</w>\ndel ine</w>\nber ni\nmi sty</w>\nðŁĳ ©\ner able</w>\nbreak through</w>\nmen swear</w>\nmillenni als</w>\nchan yeol</w>\nla z\ninser t</w>\nrep lies</w>\nphra se</w>\nn x\nihear tawards</w>\naudre y</w>\ngran ite</w>\nrac ec\nori e</w>\nter ra</w>\ninnov ations</w>\nbritt any</w>\nat eral</w>\npe ar</w>\nbio logical</w>\nsh ments</w>\ninstitu tion</w>\nm sn\nfrequ ency</w>\nd man</w>\nneg lec\nt f\nste fan</w>\nfox news</w>\nty po\ncomm s</w>\nsequ ence</w>\ncar men</w>\nwh ites</w>\neconom ist</w>\nexe ter</w>\nse um</w>\nre sorts</w>\ncas ually</w>\nbun de\ndivi de</w>\nØ ¹\nga g</w>\ncre ed</w>\nreti re</w>\ncau cus</w>\nrapi ds</w>\nwrestle mania</w>\ntul sa</w>\nsunder land</w>\nfundam ent\no di</w>\nyam aha</w>\nv ary</w>\nintri gu\nel se\nbe acon</w>\nan gie</w>\ntra ded</w>\ntran sm\ng ents</w>\nkn itting</w>\ngal ac\nðĿ Ĺ\nu to\nsea side</w>\nhol t</w>\nre rs</w>\nfar go</w>\ntrain ers</w>\nmon soon</w>\nb ale</w>\nsou ght</w>\nmad die</w>\nh w</w>\nco li\nfr an</w>\nfav s</w>\nðŁĴ Ķ\nint ent</w>\nr ally\ns bs</w>\nlemon ade</w>\nbarack obama</w>\nbre ad\nstick y</w>\nexplo sive</w>\nchel ten\nt j\nas soc</w>\nram en</w>\nhom ies</w>\nv log</w>\nmi ster</w>\nlor d\nâĢįâĻ Ģï¸ı\naly ssa</w>\nsketch book</w>\nru mble</w>\ncat ch\nmigr ant</w>\ndiscipl ine</w>\nun likely</w>\nchronic les</w>\nfl ora</w>\nsl ams</w>\nam id\ns boro</w>\ncoo p</w>\nju mps</w>\ntran qu\nmel is\nsof ia</w>\nen ri\ngab e</w>\nsy ri\nnicol as</w>\ncha i</w>\nw v\nbe cky</w>\nfoo ty</w>\nta o</w>\nsuppo se</w>\nðŁĺįðŁĺį ðŁĺįðŁĺį</w>\nplu sh</w>\nri sh</w>\nðŁ¤ ĵ</w>\nk ha</w>\nsatur days</w>\nac cent</w>\nhe c\nlim it\ncarl ton</w>\nwi red</w>\ntaylor swift</w>\nðŁĺ ĳ</w>\nsq l</w>\nhar ro\nrecipi ents</w>\ng at</w>\ngo p\nth of\namaz ed</w>\ngh an\nðŁıĨ ðŁıĨ\npor to</w>\ncla re\ndi stant</w>\nna c</w>\nohi o\nðŁĻı ðŁı¼</w>\nmt n</w>\nanti bio\ndino sa\nme sa</w>\npar tial</w>\nb v\nlear nt</w>\nlov ato</w>\nquesti on\nex tract</w>\ngossi p</w>\ngi bb\nniag ara</w>\nðŁĳ ¨\ndispla yed</w>\nso oner</w>\nste vie</w>\nnug gets</w>\nml n</w>\nbro m\ntur b\ngive aways</w>\nstu pi\nbl ink</w>\nc ili\nconven ient</w>\nmo h\nvi ve\nf ric\ncau se\ncham ber\ncu les</w>\nne arest</w>\nis se</w>\nsmall biz</w>\nt j</w>\ncanadi ans</w>\nsmar ter</w>\nbra sil</w>\nra re\nque tte</w>\nw ha\ncand le\nat omic</w>\nðŁĳį ðŁĳį</w>\nwarri or\nrelax ed</w>\nstri ps</w>\nne ur\nk ka</w>\nr fc</w>\njen sen</w>\nreco vering</w>\nrespon ses</w>\nsal am\northo dox</w>\nacti ve\nell ers</w>\nn it</w>\nâŃ Ĳ</w>\nmetro politan</w>\ncentu ries</w>\nvi da</w>\ngra ding</w>\ntranspa rent</w>\nsim ple\ndo ts</w>\nsuperint endent</w>\nelev ator</w>\nautom ated</w>\nred skins</w>\nima m</w>\nsummer time</w>\njona than\nge aring</w>\nmichel le\nconfl ic\nm ice</w>\nto te</w>\npubli sh</w>\npa x</w>\n) -</w>\nna iled</w>\ná ´\ntele scope</w>\nser bia</w>\nba b</w>\nape u\nst ically</w>\nsen ti\nr ats</w>\nisol ated</w>\ngrou p\nhat red</w>\nparanor mal</w>\nstan ley\nali on</w>\nsafe ty\nl s\nà¤ °</w>\nnex us</w>\nalexand ra</w>\nmas ks</w>\n+ +</w>\ntr on\nau k</w>\nbrother hood</w>\nbrow se</w>\nmix es</w>\nsim one</w>\nmu sk</w>\nappro ve</w>\nlo la</w>\nex p</w>\nper th\nfu turi\nun seen</w>\nd m\nchel se\nsc outing</w>\no we</w>\nportsm outh</w>\nk ram\nmi ze</w>\ndi spen\nsu p\nd lc</w>\nadver t</w>\ntere sa</w>\nis le\ncy cle\nmet all\nshi elds</w>\nmarin ers</w>\nra z</w>\ning en</w>\nfun d\nan go</w>\njon es\no ka</w>\nmad den</w>\nbroc coli</w>\ndomin ic</w>\nsitu ations</w>\nmer o</w>\ncric ke\npuni shment</w>\nd b\nsha king</w>\nðŁĺ ļ</w>\nm q\nari ans</w>\nle h\ncla w</w>\nwe ds</w>\nd ure</w>\nni el\nj elly\ngour met</w>\ntra ders</w>\nle vi</w>\nw ages</w>\nkne es</w>\nwi se\nheaven ly</w>\navi d</w>\nmelo dy</w>\nz ack</w>\nban anas</w>\napprentic e\npro p\nfun ny\no de\nrespec ted</w>\nme gan\nfe wer</w>\ndra fted</w>\nmed it\ngra pe\nus army</w>\ncru sad\nvo cali\nprepar ations</w>\nnon sense</w>\nus age</w>\nth r</w>\nro th</w>\nwiz ards</w>\ninsi de\npromo tions</w>\nmon a</w>\nred sox</w>\nsi g</w>\neleg ance</w>\nch ia</w>\nuniver sal\nãĢ į</w>\nra ja</w>\nun ga</w>\npol lin\nfilip ino</w>\nak a\nt sun\nik on</w>\nbi king</w>\ndecor ations</w>\nz ac</w>\ncade ts</w>\nhum our</w>\nag m</w>\nre ppin</w>\nvac cin\nelo ve</w>\nu w</w>\ndia be\ngalla gher</w>\naz er\ndo l</w>\na while</w>\npro minent</w>\nwel sh\nt ann\n' )</w>\nbi en\nwa g</w>\nin al</w>\nc wc</w>\nwic ket</w>\nur st</w>\nq anon</w>\nx e</w>\nout door\ndun n</w>\nstar r</w>\nco logy</w>\nric ky\nu efa</w>\nreb ounds</w>\ns music</w>\ninf ant</w>\nðŁĻ ĭ\nso p</w>\nu mber\nhand ing</w>\nbeg in\nsor ting</w>\nha sh</w>\nsp ati\nre k</w>\nbuda pest</w>\nblack hawks</w>\ndele te</w>\nro m</w>\ncan did</w>\nauth ori\nde bris</w>\nspe cul\ninter section</w>\nmarri ott</w>\nim ran</w>\nðŁĺģ ðŁĺģ</w>\ncru ises</w>\nram sey</w>\nrafa el</w>\naware ness\nvas cular</w>\nbeyon cÃ©</w>\nru g</w>\nðŁĺ Į\nfesti v\nar am\ns able</w>\nbas il\np ill</w>\nflo oring</w>\nun beaten</w>\nimplic ations</w>\nu f</w>\nw ound</w>\nfor ge</w>\npoin ting</w>\npo ts</w>\npopular ity</w>\nðŁĳı ðŁı»\nmani pul\ns lots</w>\ndeb ates</w>\nabs ence</w>\nver mont</w>\nnever forget</w>\nwri st\ngl oria</w>\nren ce\nhu sk\nmel ting</w>\nðŁİ Ł\nbr aces</w>\ntim ely</w>\ntransform ing</w>\nam ps</w>\nma k</w>\npo e</w>\nah an</w>\ngener ally</w>\nnd p</w>\nale ppo</w>\nunic ef</w>\npro fs</w>\nnor d\nma sk\njackson ville</w>\nv v\nsh ells</w>\nbloom ing</w>\noper ators</w>\nchar coal</w>\nne ville</w>\nma gi\nchi p\nsam a</w>\nir an\nre forms</w>\naccu mul\nru e</w>\næ ľ\nweb sites</w>\nga on</w>\ndevast ating</w>\nsto s</w>\nglaci er</w>\nra pp\nchipot le</w>\npr a</w>\nor ous</w>\nrom ney</w>\nseas on\ndecor ative</w>\nc isco</w>\ndit ch</w>\ncompla in</w>\nll o</w>\nassu me</w>\nðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤ</w>\nn els</w>\ncent ric</w>\nft w</w>\ncar rots</w>\ntat a</w>\ncan ter\nper ience</w>\nli ers</w>\ndemo s</w>\nbl unt</w>\noper ate</w>\nreserv ations</w>\nle ah</w>\nsub stance</w>\ndi son</w>\nan te\nelec tion\nv ue</w>\nsqu are\nnon profit</w>\nca a</w>\nf su</w>\ny am</w>\nãĤ ¤\nv ladi\ncomple tes</w>\nmar i</w>\nphilli p</w>\nne ill</w>\ner as\nka it\nmen do\nmahar ashtra</w>\ng p\ndan e</w>\nprovi dence</w>\nther apeu\njuven ile</w>\nme mo</w>\nin corpor\naa aa</w>\nseven teen</w>\nteen ager</w>\nÃ £\nor ns</w>\nwi de\ncu teness</w>\ntw d</w>\nff les</w>\nbar a</w>\ncom edy\nover time</w>\ny az\nbar on</w>\nunemp loyment</w>\nðŁĳ ĭ\nexter ior</w>\nden se</w>\ncent res</w>\nmatch up</w>\nhistory month</w>\nartif icial\nqu it\ne sk\nwar n</w>\ncr itic</w>\nj af\nðŁĵ ²</w>\ninform ative</w>\nfu els</w>\nrecy cle</w>\nnam ing</w>\nstri pe</w>\nsol ic\nmole cular</w>\ndee pi\ncon vo</w>\ns sel</w>\nna e</w>\nde scent</w>\nti z</w>\naccoun tability</w>\nter ry\nr ito</w>\nsl ay</w>\nem o</w>\ndem ol\nsens ation</w>\nco v\ntor e</w>\nround table</w>\ny ol\nexcu ses</w>\nà¥ į</w>\ntur quo\nhh hh\npod casts</w>\ncele b</w>\nme ssi\nli o</w>\nman n\ncontribu ted</w>\nu z\ngener ator</w>\nele ts</w>\nveg gie</w>\nindu l\nen suring</w>\ndetro it\npun jab\ntran spor\ninstru ction</w>\nad d\npor cel\npan eli\ncir cles</w>\npersi st\nclay ton</w>\nsp n</w>\ndog softwitter</w>\nis nt</w>\nsp r</w>\nretail ers</w>\np w\nhun gar\nel ena</w>\nmon aster\ngu atem\nje ssie</w>\nan z</w>\nra shi\nfle e\ncar ving</w>\nfau x</w>\nl al</w>\nhen ri\nd jo\ndu ll</w>\ns ana</w>\nlar a</w>\nglo be\ncri mson</w>\ncom pass</w>\npau se</w>\nna b</w>\nlion el</w>\nba ths</w>\nu fo</w>\ninvent ory</w>\nsin gh\nsat an</w>\nðŁĩ ¸\nce ments</w>\nin form</w>\ngener ated</w>\nbi den</w>\nav g</w>\ntas ks</w>\nde er\nsa u</w>\nja iled</w>\npa stel</w>\nsc c</w>\nna il\nsteel e</w>\nper is\nlamborgh ini</w>\npur sue</w>\nmar gin\nu ch\nbo sch</w>\ndra in</w>\ncl ara</w>\nbo m</w>\nlat ino</w>\nweb ster</w>\nrose mary</w>\nr ha\ns oun\nbillion aire</w>\nnot ch</w>\npercent age</w>\ncon or</w>\n' \"</w>\nhom es\nearth day</w>\nh ort</w>\nbig gest\ndi sin\nwal ton</w>\nedit ors</w>\nim ma</w>\nom ar\nequi valent</w>\npharmac eu\nah med\ncam eo</w>\nhan ni\nunder rated</w>\nge ment</w>\nmicro bi\nv oo\nhonor able</w>\nobe sity</w>\nâļ ¡ï¸ı\nlimer ick</w>\ninvol vement</w>\nst agram</w>\nboule vard</w>\nbur g\nblackand white</w>\nliber ation</w>\nfi ve\ninter im</w>\nsm m</w>\nrival ry</w>\ncap abilities</w>\nstat ements</w>\nthu mb\nve d\nsw ans</w>\nbar ber\ne que\nseren a</w>\nhel m</w>\nnoo dle</w>\nsam pling</w>\nn awaz</w>\nsing le\nthunder storms</w>\nsh on\nin ev\në ¯\nto pp\norch ard</w>\nbi an\nðŁĺ Ķ\ndoor step</w>\nsalv ation</w>\nmarke ting\nr ons</w>\ncle mson</w>\nra vi</w>\nin take</w>\nstand with\nsin a</w>\nha iku</w>\nple y</w>\nelector al</w>\nph illy\nla ys</w>\nelectr ic\ncap turing</w>\nu pp\ner gy</w>\nbeliev ing</w>\ncul tures</w>\nes day</w>\ninva sive</w>\ned ed</w>\nspee ch\nend ur\nviet nam\nboy cott</w>\npe de</w>\ndeli ver\nðŁĴĸ ðŁĴĸ\nmer chant</w>\nst ir</w>\nden ies</w>\npoc kets</w>\no ti\ncu ddle</w>\nro land</w>\nmm ed</w>\nden ed</w>\nlear ners</w>\nhoo p</w>\nsour cing</w>\nh acked</w>\ndi m\nenviron ments</w>\nben son</w>\njud icial</w>\nwor cester</w>\npear ls</w>\ngovern ments</w>\narri vals</w>\ncor ners</w>\ntun ing</w>\nla bour\ny m</w>\nor dering</w>\nle wi\ni fe</w>\nhygi ene</w>\nthou ghtful</w>\nindone sian</w>\ncampaig ning</w>\nprinci ple</w>\nassau l\nru bb\nat v</w>\nwil ly</w>\nen tre</w>\nil i</w>\nph on\ndu ties</w>\nâĻ¥ âĻ¥</w>\nsn akes</w>\nlo op\nam ar</w>\nconver tible</w>\nbon ding</w>\nment oring</w>\nmax well</w>\nethere um</w>\ndestro ying</w>\nax is</w>\nca iro</w>\nfin nish</w>\nsho ck\nðŁĺ Ĳ</w>\ncal eb</w>\ncom a</w>\npe dal</w>\nco re\ncontin ent</w>\nel son</w>\ntemp o</w>\nhelsin ki</w>\nac p</w>\ntack ling</w>\nst ated</w>\nbl a</w>\ndou b\nsma shing</w>\na ja</w>\ncamer on\ndisru ption</w>\nwarm th</w>\nbeing salmankhan</w>\nbullet in</w>\no de</w>\nsyrac use</w>\nar an</w>\nmc gregor</w>\nbul k</w>\nan ton</w>\nconfir mation</w>\nsp ine</w>\nim ran\ninstru c\njac ks</w>\nchi o</w>\npal m\nstr e</w>\nembarra ssing</w>\nun t\nelimin ate</w>\nto ss</w>\nc ise</w>\na ws</w>\noni sts</w>\nsh inee</w>\njo s</w>\nho se</w>\nli vely</w>\nopp onents</w>\nmo vements</w>\nrecogni zing</w>\nsandwich es</w>\nsh akes</w>\nexerc ises</w>\nse at\nprofe ssion</w>\nmerry christmas</w>\nlu gg\nadopt dont\nmar vin</w>\nbyr ne</w>\nun le\nhe t</w>\nku wait</w>\nrah man</w>\naspe ct</w>\nhumb led</w>\ngen es</w>\nf and\nlong time</w>\n) ;</w>\ncam pu\nan gus</w>\nðŁĳį ðŁı¼</w>\nq uran</w>\nsle eves</w>\ns lic\n¸ ë\ntwel ve</w>\nyour e</w>\ni ke</w>\ngo gh</w>\nb st</w>\ndic tionary</w>\nreflec ting</w>\nto on</w>\nyar n</w>\nem bed\nðŁı ´</w>\nre serves</w>\nfloo ded</w>\nver iz\ndu sk</w>\nestab lish</w>\npro li\nau d</w>\nritu al</w>\nor bit</w>\ndeclar ation</w>\nrecor dings</w>\ncam o</w>\ncas sette</w>\ngood luck</w>\ncu tter</w>\nbo p</w>\nb ho\nche ating</w>\npaci fic\nma res</w>\ntim er</w>\ncol t</w>\ntr ous\ntomor row\nhan sen</w>\nci e</w>\nw ang\nban i</w>\ncircu lar</w>\nac ute</w>\nfar mer\nco ys</w>\np se\nir ving</w>\nw j\nhaw kins</w>\nb ison</w>\nur day</w>\ncru ising</w>\no te</w>\nk ath</w>\nwhi stle</w>\nyour selves</w>\nant is</w>\nsla sh</w>\nthorough ly</w>\nke sh</w>\nser ie</w>\nex em\nen ig\nguil d\nsh red\nho gan</w>\nap o</w>\nä ¸\npu zz\nne tball</w>\nau ssi\npanor ama</w>\nws j</w>\nav is</w>\nar ming</w>\nhum ph\nbrow ser</w>\ncri es</w>\nfo ggy</w>\nmat te</w>\nðŁĮ »</w>\nit er</w>\ntal lest</w>\nby ron</w>\ncap tiv\nje su\nany ways</w>\nflag ship</w>\np ton</w>\nwe y</w>\nfay ette</w>\nfinanci al\nf oul</w>\nsolom on</w>\njenni fer\ncucu mber</w>\nar gue</w>\ntex tile</w>\nwrest ler</w>\njohn ston</w>\npa stor\nðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃ\ncac tus</w>\nedi ble</w>\nre served</w>\nric hie</w>\nmet res</w>\ningredi ent</w>\nh ella</w>\nun to</w>\nch ol\ncele bs</w>\npo ets</w>\ngra ham\nhay den</w>\ncoinci dence</w>\nb aw\ncommunic ate</w>\nflet cher</w>\n/ -</w>\ntole do</w>\necu ador</w>\ncoun sel</w>\ns laughter</w>\nline ar</w>\nat p</w>\nos u</w>\njo el\nev ed</w>\nconqu er</w>\nru stic</w>\nplic ity</w>\nrecogn ise</w>\nroom mate</w>\ncr acked</w>\njas per</w>\nph er</w>\nðŁĮ º</w>\nwo ven</w>\nmo ist\nff c</w>\nste ering</w>\nni sh\nstand ings</w>\nfrequ ent</w>\nar di</w>\nhaz el\nas msg</w>\nbau m</w>\nd art</w>\nsi dd\nnat h</w>\nch ero\ncard board</w>\nc ss</w>\nn sfw</w>\npa ir\nðŁĺį ðŁĺĺ</w>\noccur red</w>\nhomeless ness</w>\nmal one</w>\nph e</w>\nxi a\npad dy</w>\ndecl are</w>\ntheat re\nb f\nper sian</w>\nta d</w>\nax e</w>\nsusp icious</w>\nlam b\nmu cho</w>\nsen ior\nst as</w>\nk ite</w>\nst ing\ngra d\nk af\nwat ering</w>\nØ ¯\nspi ral</w>\nth ms</w>\neduc ator</w>\njer ome</w>\nof c</w>\nclo ck\nsu l</w>\npe mb\n.... .....</w>\npark way</w>\nde aux</w>\nrestric tions</w>\nm ons</w>\nneed le</w>\ne j\nle agues</w>\nwater melon</w>\nam an\npl enary</w>\nmax im\nw ab\ncoming soon</w>\nbry ce</w>\nvi gil</w>\nsuper market</w>\nfortun ate</w>\nturquo ise</w>\npresi dent\nli v</w>\ninter ns</w>\nfeel in</w>\nfix tures</w>\nstun t</w>\nst aged</w>\npremi eres</w>\nlo k\nprac titi\nshor tage</w>\nlog ne</w>\nve c\ncon cor\nroc ke\nli g\ncom posed</w>\nsyn thetic</w>\ndi p\ncam ila</w>\nch is\nj ou\nsu san\neye brows</w>\nsupp lement</w>\nsatis faction</w>\nmoham mad</w>\nti bet\nhouse of\npu n</w>\nas sam</w>\nshado whun\npsy ched\nse duc\nmand atory</w>\nher bert</w>\nsc allo\nstream ers</w>\nproto col</w>\nblock buster</w>\nproduc es</w>\nsch nei\nlau rel</w>\ntri be\ntime hop</w>\npl a</w>\nmod elling</w>\ntv time</w>\nmtv stars</w>\nwi dow</w>\nme tric</w>\nch am</w>\ncon do</w>\nflow ering</w>\nale c</w>\nd ms</w>\ninten sity</w>\nÂ ¨\nmccar tney</w>\nislam abad</w>\nk b</w>\nf fi\nph al\nanal og</w>\nf ond</w>\nh acks</w>\npositi vity</w>\ntreat y</w>\nsub marine</w>\nconne ct</w>\nsel en\ncategor ies</w>\ncu b</w>\norgani ze</w>\nsi k\nquote oftheday</w>\nremin ding</w>\nam or\nloc king</w>\nðŁĳı ðŁı¼</w>\ncomp ound</w>\net te\nb out\nrec ur\nfe rence</w>\nmi zz\ntren d\nhip ster</w>\nfor tress</w>\nforth coming</w>\npreli min\no dyssey</w>\nang p</w>\ndel ici\neven ings</w>\nðŁĶ ¹</w>\ni q</w>\nd w</w>\nda ir\nkathr yn</w>\nchristian ity</w>\nmoon light</w>\nha b</w>\nwh oo\nf bf</w>\nse th\ngenu inely</w>\npa x\nchar ity\ndeplo yed</w>\nb nb</w>\nbu cs</w>\nju dg\ncon ge\nplant ation</w>\nim press</w>\ncar a</w>\nsc lub</w>\nsco py</w>\nland ers</w>\ncompla ints</w>\nb ama</w>\nre build</w>\nx y\nreal ism</w>\nsh our</w>\nle in\nbrac elets</w>\nmer a</w>\nassas sin</w>\nan chor\nðŁĳĮ ðŁı¼</w>\nlin en</w>\ncon fron\nchronic le</w>\ncomm ent\ncat alog</w>\nil les</w>\ngor ge</w>\nme try</w>\njung kook</w>\nlove my\nsent in\nse em\nfit ness\nalli ed</w>\nts man</w>\ndigital transformation</w>\npr an\nlo ft</w>\nmin ton</w>\nalden richards</w>\nen vel\ncher ish</w>\ncertain ty</w>\nzz z</w>\nrhin o</w>\nper kins</w>\nen rich\ncape town</w>\nome ter</w>\nsec tions</w>\nske leton</w>\ndef enders</w>\nðŁĺ Ŀ\npen c\nbri t</w>\nja h\ncapital ism</w>\nðŁ¥ ĩ</w>\nbaz aar</w>\nre me\nex t</w>\nkk k</w>\nconver t</w>\nstor my</w>\nb ye\nkar an\nchry sler</w>\nad os</w>\npre ssed</w>\nsyn c</w>\nation day</w>\ndang er\nbad ges</w>\nrefu ses</w>\nem powering</w>\nly m\nex ports</w>\nadoptdont shop</w>\nðŁĩ ¯\nth c</w>\nawa ited</w>\nfocu ses</w>\nfin ed</w>\no at\nhaha hah</w>\nâģ ©\nn family</w>\nfi ona</w>\nluck ily</w>\nthr illing</w>\nty ping</w>\nout break</w>\ndi es\nhe u\ncraw l</w>\nne sses</w>\no ath</w>\nscri pts</w>\ngee ks</w>\nðŁĲ Ŀ</w>\np b\nmathemat ics</w>\nal is</w>\n________ ________\ngymna stics</w>\nacti vism</w>\nrecommend ation</w>\ngre n</w>\nwa in</w>\ncour ty\nn apol\ncau li\nhor nets</w>\ng als</w>\njo ckey</w>\ndir ty\nat ar\nenor mous</w>\npe st\ngreg ation</w>\nan os</w>\nii ii\ndef ends</w>\nblack historymonth</w>\nat x</w>\nmb c</w>\nlugg age</w>\nwit ch\nco b\nla sts</w>\ncu m\ngg g</w>\nba thing</w>\nn ar</w>\nce bu</w>\nðŁį ĥ</w>\nnavig ation</w>\nmin e\nre jo\nðŁİ Ģ</w>\ngif tide\nre ta\nuse less</w>\npu ll\ndefic it</w>\nal lu\nati me</w>\nit v\ntr illion</w>\npu e\nac ies</w>\nproce dure</w>\nl ori\njen ny\nc ad</w>\nul ously</w>\ndr ac\npromo tes</w>\ning the\ncan u\nwoo hoo</w>\nna omi</w>\nzar dari</w>\nts u</w>\nbe ir\nsd g</w>\nle ver\nwe ber</w>\nab ud\nlun d</w>\ncrow ded</w>\ndeplo yment</w>\nter rain</w>\nken ny\nho f\nwitne ssed</w>\nlo ch\nj k\nbul ly</w>\nw ren\npoe try\ndo ff</w>\nww i</w>\nmo red</w>\ndin i</w>\ncul ture\npromp t</w>\nÂ ¥</w>\nmaur ice</w>\nto pps</w>\nr m\ncor respon\nab out\njewel s</w>\ngi br\neag le\nðŁĺĺ ðŁĺĺðŁĺĺ</w>\nl ending</w>\nsou ven\nç Ķ\ncontemporary art</w>\nestabli shment</w>\nj ong\nâĢ¦ \"</w>\ngat or\npatri otic</w>\nmc coy</w>\nv ape</w>\nhuman e</w>\nfeli z</w>\ncoach ella</w>\nre posting</w>\nste als</w>\nfu ller</w>\nn ering</w>\nat ra\n( -</w>\nbla ke\nhe ather\nwor ms</w>\ndiscipl inary</w>\nrede mption</w>\ny ard\nam in</w>\n\" @_</w>\nd nc</w>\nt ds</w>\nk appa</w>\nne wark</w>\ncomm its</w>\nspe ars</w>\nj ams</w>\nt and\nmsn bc</w>\ninter medi\naim ed</w>\nat ic\nteen th</w>\nobserv ation</w>\nkash mir\nkavan augh</w>\nou l\nsan francisco</w>\nre u\nbel ated</w>\ncho w\npass word</w>\nst ills</w>\ndeta ined</w>\nsar i</w>\nday ton</w>\ndar ren\nitali an\nar th</w>\namu sic</w>\nar bit\nw m\nv m</w>\nhe m\ndou g\nmy r\na sho\npre v\nvin d</w>\nbra h\nsta g</w>\nà¸ µ</w>\npre views</w>\ngu k</w>\ncon taining</w>\nleon ardo</w>\nsad dle</w>\nru shing</w>\nst av\nlon gh\ngam bling</w>\nve gas\nreserv ation</w>\nend ale</w>\nbal a</w>\nfl a</w>\nvari ant</w>\nhe dge</w>\nbulgar ia</w>\nnat ali\nwe aver</w>\nsol st\nencoura ged</w>\nap c</w>\nas parag\nne st\ncycli sts</w>\nfe l</w>\nìĬ ¤\noverwhel ming</w>\npey ton</w>\nj it</w>\na post\nmb le\nble eding</w>\nneighbour hood</w>\na very</w>\nexpre ssions</w>\nmac donald</w>\ngi gs</w>\nmon ds</w>\nillu sion</w>\nn ct</w>\ncam ero\nover head</w>\nmy th\nol y\nvi o</w>\net v</w>\nlau rie</w>\nunve iling</w>\npri or\ncon n</w>\niron man</w>\ndi ff</w>\nday in\ncrit ici\ncon go</w>\nre vision</w>\nwal e</w>\ndirec tor\np ines</w>\nblack pink</w>\ngar ner</w>\ncur ated</w>\nmanit oba</w>\nh ac\ncommon ly</w>\nbar ton</w>\n.... #</w>\nmor tality</w>\nlive smatter</w>\nphilos op\nshor ter</w>\ncon vince</w>\nfre ak\nvend ors</w>\ninsi ghtful</w>\nel ly</w>\nsens ors</w>\ne led</w>\ns berg</w>\nweight loss</w>\nu kip</w>\nsp ur</w>\npriv ate\nqu a</w>\nss c</w>\n, ...</w>\nsupervis or</w>\nadvis er</w>\namaz ingly</w>\nless er</w>\nat es\nmah on</w>\noooo oo</w>\nsar as\npmo india</w>\nwaff le</w>\nun ders</w>\ntoler ance</w>\nsculp tures</w>\nher sh\nkno cking</w>\nsmo ke\ncathol ic\ngri m\ntra veled</w>\nfli p\nge off</w>\ndinosa urs</w>\nsle pt</w>\nscar let</w>\nok i</w>\ncompla int</w>\nob sc\nnam i\nla g</w>\ncross fit</w>\nu fc\nmc cain</w>\nrefe ree</w>\nsad ness</w>\npen ny\nli eu\nmo de\nki er\nvol s</w>\nw is</w>\nel on</w>\nshe a</w>\nba o</w>\nson ia</w>\ncla ire\nem manuel</w>\nmoist ure</w>\ndi gest</w>\nvi ii</w>\nt eller</w>\nch on\naccess ory</w>\nnight club</w>\nfoss il\naw an</w>\nhu sky</w>\nab original</w>\nbrand on\nffici ent</w>\ncou gars</w>\nste d\nad mitted</w>\nigno red</w>\ncontent marketing</w>\nag as\nv ase</w>\nexecu ted</w>\nnegoti ations</w>\nshe ad</w>\nn and\ntab lets</w>\ngo th</w>\nts al</w>\nd fw</w>\non ep\nprotec tor</w>\nsp ho\ngaz ette</w>\nandre as</w>\nss er</w>\ncomp ilation</w>\nha v</w>\ncontain ers</w>\nbro ker</w>\nsoc al</w>\nporcel ain</w>\nhy uk</w>\nair ing</w>\nðŁĴ °\npubli sher</w>\nscen ario</w>\nspart ans</w>\nre viewing</w>\nitu des</w>\ned el\npear son</w>\nba sh\nmau i</w>\na ad\nðŁĮ Ĭ\nli u</w>\nul ate</w>\nprogram mes</w>\nfav our</w>\nweb design</w>\nreal ty</w>\nmotiv ational</w>\ncro sses</w>\n' ...</w>\nbus ch</w>\nadjust able</w>\nar jun</w>\nmist ak\ndimen sion</w>\npi stol</w>\nweigh s</w>\nen y</w>\nunve il</w>\nindy car</w>\ngor don\nf ade</w>\nfran ken\nqual ities</w>\nbet t</w>\nloc ate</w>\nker r</w>\nsp c</w>\nconfu sion</w>\nne e\nluck y\nbas es</w>\ndep ends</w>\nfire fighter</w>\nol a\nre t\nmar oon</w>\nðŁĶ Ĭ</w>\nw am\ndefin ing</w>\nwhe at\nbi l</w>\nÃ© s</w>\nb hai</w>\npsy ch</w>\nta u</w>\nic ans</w>\nthi k</w>\nob ile</w>\ninspec tor</w>\nìĨ Įë\nill on</w>\ngo s\nev angel\nfa i\nsi st</w>\nvoc ation</w>\nbur ge\nchi stan</w>\nrenew ed</w>\nenthusi asm</w>\nen ting</w>\nag ri\nike a</w>\nm sc</w>\naero space</w>\nsens iti\nmemo ir</w>\nhosp ice</w>\nco caine</w>\nder ry</w>\nmechan ics</w>\nĦ à¸\ntin o</w>\nreduc es</w>\ncollec tors</w>\nin justice</w>\nsupp re\nv ana</w>\nab un\nnap a</w>\nsu sa</w>\nos lo</w>\ne ff\nen core</w>\nlic ence</w>\nched dar</w>\nz al\nmoun t\nðŁĴ Ĳ</w>\nthreat ens</w>\n!! \"</w>\narchi e</w>\nfu tsal</w>\nscu ba</w>\njo s\ngn on</w>\nse xi\ns official</w>\ncompar ing</w>\ndomin ant</w>\ntof theday</w>\nfa it</w>\npropos als</w>\ngi ft\ny as</w>\ncn c</w>\nl r\nha b\nreser voir</w>\nbeli efs</w>\ngener al\nmar ti\nt d\nest e</w>\nì ł\nwi l</w>\nðŁĳ ¯</w>\nðŁĶ «</w>\nsp x</w>\net work</w>\nexcer pt</w>\ne instein</w>\nhir o</w>\nsil hou\nteam ed</w>\nper ception</w>\ncorri dor</w>\nmental health\nhin ts</w>\nben ny</w>\ninduc ted</w>\nsw x</w>\nwi desp\nspe ak\ncher yl</w>\ndru g\nðŁĺ ķ</w>\nh f</w>\nasparag us</w>\nmyster ies</w>\nfitz gerald</w>\noff er\ntherap ist</w>\ncare er\ndam aging</w>\nts d</w>\nper u\nwei bo</w>\ny ay\nphoeni x\ndisc re\nmac book</w>\nbar ker</w>\nstig ma</w>\nsp read\nroc kies</w>\nkang ar\nbri dg\npa i\nbi shop\nta iled</w>\ncapsu le</w>\nðŁĴ ĵ\nge of\nroy ale</w>\nshort listed</w>\no ste\nash amed</w>\nch app\nkey e</w>\ncl a</w>\nscreen shot\naustri an</w>\nnati ve\nen ight</w>\njuli et</w>\nmichel e</w>\nðŁĮ ´\ntravel ers</w>\npi l</w>\nfootball er</w>\nwin chester</w>\nðŁĻ Ħ\nazer bai\ngold eng\norganis ations</w>\ninterpre tation</w>\npredat or</w>\nofthe week</w>\nlo gan\npok Ã©\nmari e\ncal la\nt nt</w>\ncin de\nge tic</w>\nfit fam</w>\ngra v\now ens</w>\nðŁĮ ±</w>\nshoot out</w>\nsal is\ncommissi ons</w>\nco he\np tic</w>\nni xon</w>\nhi a</w>\namb ition</w>\nmar ine\ncruel ty</w>\nt k</w>\ncru de</w>\nsal ty</w>\njim a</w>\nmon go\nir ony</w>\non wards</w>\narre sts</w>\nstrang ers</w>\nig er</w>\ncycli st</w>\nra g</w>\nexten ds</w>\ntra dio</w>\nbour g</w>\nmo i\nel la\ne able</w>\nlex us</w>\nau l\nder a</w>\nhistor ian</w>\nmor ton</w>\nti ff</w>\nman ner</w>\nko t</w>\nd k\npo inted</w>\nmar qu\na an\nen ey</w>\ndu blin\non poli</w>\nem ili\nsecre t\nfl o</w>\nâļ ¡</w>\nba j\nste ep</w>\naccompan ied</w>\nrum ours</w>\ndev i</w>\npurch asing</w>\nfi g</w>\npu b\nsch oo\nautonom ous</w>\ngo alie</w>\nx ia</w>\nautom atically</w>\nre vers\nter o\nfu ku\ntitan ic</w>\nshoo k</w>\nsand als</w>\nsee kers</w>\nexc av\nnor dic</w>\nbigo live</w>\nba ke\nr att\nz ak</w>\nne p\nðŁĺ ¤</w>\ncand y\nbilli ons</w>\nbook worm</w>\npp et</w>\nà ³\nsur faces</w>\nsc ars</w>\nphil ip\ndo gg</w>\nci gars</w>\nco te</w>\ntransl ated</w>\ncur ator</w>\nsin dh</w>\nhan gover</w>\nbre wer</w>\non es\nel ton</w>\nðŁĴª ðŁı¼</w>\nmar cu\nelli ot</w>\nrigh te\ndi oce\nru ss</w>\nrail ways</w>\ngrand son</w>\nas cen\napo logy</w>\nawa it</w>\nmob ili\nre spir\nparti san</w>\noli vi\nstri ke\nyo o</w>\nwhite house</w>\nexpre ssed</w>\npu ps</w>\nbed ford</w>\ncul tur\nfro gs</w>\nfly ing\ncav ali\nc ds</w>\nfri ger\nstreet photography</w>\nre solve</w>\ntali ban</w>\nkan g</w>\ncru shing</w>\nju m\nðŁĺ Ĵ\nwilliam son</w>\ntan g</w>\ncur ly</w>\nt man</w>\nveter an\nfa ire</w>\nartificial intelligence</w>\nun anim\npre n\nback drop</w>\nfr ances</w>\noc cer</w>\ndoro thy</w>\nwork ing\nar thr\nconver ted</w>\nday light</w>\nserv ant</w>\npad dle</w>\ncompla ining</w>\nthir ty</w>\nnad al</w>\nak u</w>\nibra him</w>\nad dressed</w>\np iss</w>\ngreen house</w>\nbatt alion</w>\nsi mulator</w>\nout lets</w>\nembroi dery</w>\nðŁĵ ±</w>\nfis cal</w>\nger ard</w>\nsas sy</w>\nðŁİī ðŁİīðŁİī</w>\nvent ures</w>\nmer it</w>\npublic ity</w>\nðŁĳ Ī</w>\nsophistic ated</w>\nc tu\nconven tional</w>\ncondol ences</w>\nisra el\ntra dition\nar an\nte ss</w>\ngla d\nðŁĺĬ ðŁĺĬ</w>\ncorrec tion</w>\nge on\nam d</w>\nor ship</w>\nbe ast\nch ment</w>\nì ŀ\nnic o\nwk nd</w>\nwel s</w>\ncushi on</w>\nbeli e\nvo c</w>\nidio ts</w>\nunder neath</w>\npu ma</w>\ncorn ell</w>\nen ation</w>\nlu l\nswa ch\nab ig\nu rer</w>\nmi e\nform erly</w>\nca f</w>\ner nal</w>\nchor us</w>\njuli us</w>\nsen ator\nâľ į\nwh ir\nsalv ador</w>\nph d\nuni fied</w>\nboo ster</w>\ngraph ical</w>\nw rec\nson ny</w>\nmi z\ndere rs</w>\ns all</w>\nven s</w>\ntusc any</w>\nwi d</w>\ny ong</w>\nkur ds</w>\nw az\ntrol ls</w>\nmac ro\ncat urday</w>\npre ssing</w>\nsa sha</w>\ncent ennial</w>\ngu sts</w>\nem c\nbe fore\nden ise</w>\ncu st\nðŁĵ ¢</w>\nlo oo\nbase l</w>\neng land\ny olo</w>\nar du\nmanife sto</w>\ndo ha</w>\nì ľ\nkni ves</w>\nbourne mouth</w>\nbi bl\nbar b</w>\nal icia</w>\nØ ©</w>\ncom er</w>\ncycl one</w>\ng it</w>\nane ws</w>\ncharacter i\nvent ura</w>\nin tra\nsf giants</w>\nhu t\nbe a</w>\ndar win</w>\nell er\nal v\nre ese</w>\nbl y\nkar an</w>\nconclu sion</w>\nman ny</w>\nfla kes</w>\nunite blue</w>\nnad u</w>\nco pp\ned ges</w>\nlanca shire</w>\ni als</w>\no tta</w>\nphilipp e</w>\nl ent\nche e</w>\nment ors</w>\nfesti val\nan ism</w>\ncompli mentary</w>\nr j</w>\npu g\nd ine\nwe i</w>\ncli ffs</w>\nsar my</w>\nti veness</w>\ntreas ury</w>\nil and</w>\nafter math</w>\nrabb i</w>\nou n</w>\nbou quet</w>\nherit age\nzi on</w>\nsur render</w>\nshen an\nin ks</w>\nkar l\ngh ty\npol icing</w>\nexam ination</w>\nce y</w>\nper su\nmeasure ment</w>\nhydro gen</w>\nlu han</w>\nâłĢâłĢ âłĢâłĢ\nwar i</w>\nÐ¾ Ð\nj y\nfow ler</w>\nmis h</w>\nal fre\nâĺ ĳ\nbb naija</w>\ncat alogue</w>\nrecogn ised</w>\nsa ver</w>\nhu skies</w>\ncol in\nmun do</w>\nsi va</w>\np ng</w>\ndiscoun ted</w>\nman utd</w>\nfre sno</w>\nde vin</w>\nprelimin ary</w>\ntro phies</w>\npla stics</w>\ndu g</w>\npro cu\nindi go</w>\ng ard</w>\ndy lan\npit ches</w>\nground breaking</w>\nin son</w>\nbl ac\nan thology</w>\nf h</w>\nexpl ic\nr ard</w>\nadmi ral</w>\nso chi</w>\nla shes</w>\nsplen did</w>\nen vy</w>\nad v</w>\nsex y\nfestiv ities</w>\nstic king</w>\nbi b</w>\nthr ill</w>\nop p</w>\nari el</w>\nbotan ical</w>\nendur ance</w>\nfe males</w>\nbr icks</w>\nvat ican</w>\nblack pool</w>\nber mu\nbr ough</w>\nroll er\nbi d\nsue de</w>\nsloven ia</w>\nmm ing\nml b\nmed alist</w>\ndi ans</w>\nrehabil itation</w>\nne on\ns go</w>\nli thu\nram os</w>\nz ed\npi anist</w>\ninten sive</w>\nbroad band</w>\nstu dy\npeter sburg</w>\nlu ca</w>\nah hhh</w>\nphys ician</w>\ndill on</w>\ntele com</w>\ngri ef</w>\nmu n</w>\nac ro\nsi ded</w>\ns ly</w>\nblo ws</w>\nclassic cars</w>\ntri um\nar gy\n? :</w>\nh ri\nmarsh mal\nâĢ ĵ\nto pping</w>\nwar saw</w>\ntran sc\npreserv ation</w>\nb av\nre friger\nexperim ents</w>\nä º\ngl it\nsli ga</w>\ng age</w>\nfac tor\nflav ours</w>\nbr ony</w>\nsp o</w>\ncook book</w>\ncarri age</w>\naw ay\nny fw</w>\non ian</w>\nw g\nsimp sons</w>\nro lex</w>\nðŁı ¿</w>\ncro sby</w>\nãħ ¤\ncre di\nsyn dic\npu bs</w>\nali fe</w>\npoor ly</w>\nmac ed\nðŁĺ ŀ</w>\nbehin dthe\nw enger</w>\nn ats</w>\nðŁİ Ł</w>\nrubb ish</w>\nprocedu res</w>\ntypho on</w>\nopho bia</w>\ner do\nfu el\nvi era</w>\nbu mps</w>\nmillenni um</w>\nnew zealand</w>\nlec tures</w>\nit on</w>\nmil ky</w>\nrespon ded</w>\nê °\nlandsc ape\n.. @</w>\nbo ther</w>\nâĸ ¶</w>\nz hang</w>\nhuawe i</w>\ntu ition</w>\ns worn</w>\nin u\ny or</w>\npa olo</w>\nau ditions</w>\nab il\nmalay sian</w>\nho ps</w>\nfe athers</w>\nmp le</w>\nau ts</w>\nÃ£ o</w>\nboun ty</w>\nic he</w>\nì ĺ\nsh q</w>\npin ot</w>\nge ars</w>\ndisapp ear\nvideo games</w>\nt na</w>\nalzheim er</w>\nðŁĮ ŀ\na ji</w>\nunder wear</w>\nswit ching</w>\nsign age</w>\no scar\nec on</w>\ndro w\ncl int</w>\npl ated</w>\ngun dy</w>\nemb lem</w>\nho es</w>\nici st</w>\nnel ly</w>\njuni or\nroad show</w>\nminer als</w>\nat le\nalexand ria</w>\nac claimed</w>\nv ell\nshi va</w>\nad he\nen ne\namne sty</w>\nh ounds</w>\ncouncill or</w>\nðŁĴ ¦\naes the\npart nering</w>\ninflu enced</w>\nmag no\nfl are</w>\nextin ction</w>\ncivil ian</w>\nmaje sty</w>\nva il</w>\nlaw makers</w>\nrac ks</w>\nmc c</w>\nori an</w>\nsp ices</w>\ner rors</w>\nmay er</w>\nco ca</w>\npa i</w>\ns ooooo</w>\nreti ring</w>\nba thro\nðŁĻĮ ðŁĻĮ\nâĸ ª\nsu f\nendor sement</w>\nbuil ding\nbroo ch</w>\npal la\narvin d\nag ent\nkar ate</w>\nr hi\nc tv\nta ine\num m</w>\nba x\nreig ns</w>\nuni of\nenterpri ses</w>\nadel e</w>\nfla ke</w>\nat tire</w>\nbru ce\nba hamas</w>\ngra vy</w>\nsa in\nche ek</w>\ntri vi\nlo v</w>\ne en</w>\nbb lo\nlady gaga</w>\nitt a</w>\n. \"-</w>\ndu stin</w>\nobserv atory</w>\neigh th</w>\nbloom berg</w>\nkh s</w>\nf cc</w>\ngi st</w>\ncommemor ate</w>\nve er\nsexu ality</w>\ned c</w>\nnic ole\nvac ancy</w>\nu ser\nson a</w>\n:' (</w>\ndipl oma</w>\nt end</w>\nup grades</w>\nÅ Ł\njura ssic</w>\ncardi ac</w>\ndr s</w>\nwidesp read</w>\nÃ ł</w>\ndail ies</w>\nvend or</w>\nsim plicity</w>\nwi der</w>\nlen ses</w>\nsupp lements</w>\nde pos\nob served</w>\nvin es</w>\nparti ally</w>\nrenew al</w>\ncollabor ate</w>\nali g\nfin ity</w>\nph u\nzz y\npe tit</w>\nðŁĵ ħ</w>\nz in</w>\ni gu\nsm ack\nfall on</w>\nðŁĵ £</w>\nback wards</w>\ncomp onent</w>\no so</w>\ncompati ble</w>\nbin ding</w>\nzur ich</w>\nthom e</w>\nw ounds</w>\nly ric</w>\nfresh men</w>\nsne aky</w>\nfi bro\ndi et\nemplo yer</w>\nin sect</w>\nh ated</w>\nsch er</w>\nraz or</w>\nn sw\nboo ker</w>\ncalifor ni\nav fc</w>\nÂ °\npreten ding</w>\npep si</w>\nal is\nun titled</w>\nk art</w>\ngrand parents</w>\ne the\no ck</w>\nlux emb\nvisu als</w>\nsmall business</w>\nabdul lah</w>\nmin ho</w>\nsu baru</w>\nh ra\nreve aling</w>\nheart breaking</w>\nclar ity</w>\nam g</w>\nsl r</w>\n** **\nâŀ ĸ\nrecor d\nici ary</w>\nmin ded</w>\nye h</w>\nexce ssive</w>\nknu ck\nicec ream</w>\ntru th\nev ic\nta stic</w>\nant arc\nren dering</w>\n, ,\nmit t</w>\nloren zo</w>\nst patrick\nbound ary</w>\nzi g</w>\nvo cab\nosa ka</w>\nfur n\ntu n</w>\ngu l</w>\ns ounding</w>\nblo gger\nutter ly</w>\ng af\nadv ancing</w>\nl cd</w>\nmar gin</w>\nlifel ong</w>\nsolst ice</w>\nsh ra\nwa its</w>\nple ar\nbre ach</w>\nen ligh\nad er</w>\nitt le</w>\nc ation</w>\nho on</w>\nstu died</w>\n?? ???</w>\nk ash</w>\nev angeli\nps l</w>\nwei ghts</w>\nmet als</w>\nty res</w>\ntur no\nwi e\ncar b</w>\ng ale</w>\nse al\nsun ite</w>\nam ic</w>\npatter son</w>\nÃ¡ n</w>\neu ph\nup stairs</w>\nquali fiers</w>\nkhali fa</w>\napple music</w>\nìĨĮë ħ\nvau ghan</w>\nal ter</w>\ncru iser</w>\nmu a</w>\nt ana</w>\nkat rina</w>\nid ols</w>\nspo iled</w>\nsecre tly</w>\nfi bre</w>\npart nered</w>\num es</w>\ngi ov\ncom et</w>\nscreenshot saturday</w>\nk eller</w>\nfil tr\nfe t\ncon way</w>\npe u\nbad minton</w>\ngi d</w>\nm ound</w>\ndon key</w>\nbu ff</w>\nlea ther\nlar gely</w>\nbro ch\nint ments</w>\nam use\nr k</w>\nsto ve</w>\nimpac ted</w>\ncon t</w>\ncr acks</w>\nprison er</w>\nbar i\ncontrac tor</w>\nori oles</w>\ndomin ate</w>\npol ar\nam elia</w>\ndr c</w>\nðŁĳĮ ðŁĳĮ</w>\nvi st</w>\nsu arez</w>\ninjec tion</w>\nblo oms</w>\nðŁļ¨ ðŁļ¨</w>\nsti ff</w>\npay pal</w>\nsno wing</w>\nthur sdays</w>\ngoo se\nwe dge</w>\neduc ated</w>\nweak ness</w>\nde cker</w>\nabud ha\nbree zy</w>\nÛ Į\nhope ful</w>\no bi\nrai der</w>\ngh am\nde u\nse ve\npar tly</w>\nfu t\ninfu sed</w>\nmer ri\nthan e</w>\nsome time</w>\nhu e</w>\nme in</w>\ncre dit\nsli ding</w>\nran de</w>\ncher ry\ndead pool</w>\nsh ol\nar am</w>\nunder wood</w>\nsky e</w>\ndistur bing</w>\nm nt</w>\npoli shed</w>\nguardi ans</w>\nha dn</w>\npic asso</w>\nari us</w>\nak shay\nir ri\nj h</w>\nhapp en\nla kh</w>\ndal ton</w>\nat the\ns well</w>\nmar sha</w>\nre h\ncour s</w>\nj kt</w>\ntop us</w>\nserv ice\nr ink</w>\nhack ers</w>\ndono van</w>\nhor o\ntc m\nmay hem</w>\ncha se\ndev ops</w>\nken sing\nsc up</w>\nsh ere</w>\nquali fication</w>\nc live</w>\nton g</w>\nn ancy\nmar is\nder dale</w>\nber man</w>\ncinde rella</w>\njol ly</w>\nci c</w>\nloo t</w>\ncollecti bles</w>\nhom icide</w>\ng ge\nepide mic</w>\nsu ites</w>\nmu ddy</w>\ngi mme</w>\ne rec\n- *</w>\ntal la\nlis le</w>\nembro ide\nðŁĩ© ðŁĩª</w>\nveriz on</w>\nve ctor</w>\nbe anie</w>\narti san</w>\nga in\nflo res</w>\nvi gil\nu so</w>\nðŁĻı ðŁı½</w>\ngrin ding</w>\ngh er\nair ports</w>\nrespon sive</w>\nshaf t</w>\ncan cel</w>\nceremon ies</w>\ne me</w>\nat ari</w>\nbru shes</w>\neag er</w>\nbo hemi\nchildren s</w>\nyan kee</w>\nma a</w>\nsuspen se</w>\nmor an</w>\nmac ar\nsun flower</w>\ncre w\nvo id</w>\nke ar\nfashi oned</w>\njen nings</w>\nsunday funday</w>\nsub missions</w>\nme ad</w>\nher man</w>\nwa i</w>\ncrit ically</w>\nle um</w>\nbaek hyun</w>\nfor cing</w>\nco bra</w>\nãģ ®\nacqu ire</w>\nal k</w>\nge ology</w>\npri mar\nimport antly</w>\nire z</w>\nbunde sliga</w>\ncuri osity</w>\nsen a</w>\nstric t</w>\ncon soli\nwin ters</w>\nven om</w>\nchelten ham</w>\nðŁį º</w>\ncen a</w>\nt at</w>\nba in</w>\nglo ver</w>\nunder cover</w>\nas ses</w>\ncar n\nmemorial day</w>\nam eli\ni rene</w>\nch on</w>\nsyn thesis</w>\nspe edy</w>\nmitsu bi\nsla yer</w>\ncompos ite</w>\nunder stands</w>\npe w\ninter rup\nhen ri</w>\nmor row</w>\nan om\nthof july</w>\ng lee</w>\nthre e\nðŁĺ ®</w>\nand hi</w>\nch att\nrenew ables</w>\nye s\ntrans fers</w>\n!!!! !!!!</w>\nbab u</w>\ndu ter\nlo ops</w>\npe ers</w>\no ilers</w>\npau lo</w>\nic ation</w>\nh mu</w>\nwar a</w>\nmer cer</w>\nhom eland</w>\nfu ji</w>\nale y</w>\nyear book</w>\nre m</w>\nre en\nab sur\nbo is</w>\n] :</w>\ncaes ar</w>\nshot gun</w>\nkur dish</w>\no ren\nra e\nanci es</w>\nty pic\nf h\ndef ault</w>\nre plic\nlu k</w>\ntrans actions</w>\nr ys</w>\ninfan try</w>\nðŁį ¾</w>\ncho w</w>\nchick ens</w>\nba gh\nwy att</w>\nay e\ngg i</w>\nbre ws</w>\ned itions</w>\nmi ra\ncommen cement</w>\npre su\nperis cope</w>\nic hi\nguatem ala</w>\nzam bia</w>\npain ts</w>\nwit ches</w>\nwan i</w>\nun dere\ncro y\nvo ws</w>\nus mc</w>\nhear ted</w>\ntheat res</w>\nshu ffle</w>\nle vel\nmul tic\nsquee ze</w>\nfer n</w>\napp et\npost al</w>\nmal t</w>\non board</w>\nld nt</w>\nco o</w>\ns sc\nk ac\nðŁĺ ĩ\nsc rap</w>\nmar cos</w>\ndeal ers</w>\nann u\nmill er\nco ve\nul ary</w>\nvladi mir</w>\nbe ef\nth ur</w>\npick led</w>\nse same</w>\nbengal uru</w>\nmo tt</w>\nkathle en</w>\nhi st\nno tor\ndr ank</w>\ndu chess</w>\nsnow fall</w>\ne ff</w>\ntin y\nj n</w>\nsy our\nspeci alists</w>\nscot us</w>\nbay lor</w>\neve rest</w>\nmali bu</w>\npre m</w>\nharm ful</w>\nl ali\nb ates</w>\ng ye\ndifferen ti\nand ra</w>\ngeome try</w>\nel over</w>\nblack out</w>\n== ==\nko ta</w>\ninter act</w>\nasi an\nla yo\nsamu rai</w>\nfi del\nexhau sted</w>\ngla di\npd t</w>\nspher ic</w>\nanti qu\nguit ar\nstu ri\nho pper</w>\nang le\nf ills</w>\nsla p</w>\nmi th\nrod ney</w>\nong i</w>\nin som\npre venting</w>\ncassi dy</w>\nap ho\nore gon\nlo in</w>\nham mond</w>\ncontribu ting</w>\nf n</w>\ngar ri\nori on</w>\ncomp elling</w>\nescap ing</w>\naim ing</w>\nplu mb\nbi stro</w>\nbe asts</w>\nconcer ning</w>\nbo e</w>\ndo pp\nshop local</w>\nstumb led</w>\nâĤ ¹</w>\nnaz is</w>\nâĢįâĻĤ ï¸ı\ngest ure</w>\nwar ts</w>\nus open</w>\nhi ggins</w>\nchar li\nhang s</w>\nbom bers</w>\n° :</w>\nfe eds</w>\nc ch\nst il\nnic ola</w>\nðŁĵ º\nclam ation</w>\ntro pic\naf ro</w>\nou k</w>\nexpen ses</w>\nder rick</w>\nal ine</w>\nfa w\nreg ard</w>\nim er</w>\nsat in</w>\nthi um</w>\nry der</w>\npear l\nte ss\nmm mmm</w>\nsen ses</w>\nðŁĩ ¹\npositi ve\nexhau st</w>\noccu r</w>\nnor ris</w>\nlil ly</w>\nis les</w>\ndirec ting</w>\nyo fficial</w>\ncount less</w>\nsam ar\non stage</w>\nflo ck</w>\nmir rors</w>\narch er</w>\nmo i</w>\nk d\nvi v\nin os</w>\nsi kh</w>\nle i</w>\nsen sory</w>\nbr its</w>\nkno x</w>\nchest nut</w>\nop y</w>\ncoli seum</w>\nz af\ndi vin\nadap ter</w>\n:) ))</w>\ntem ple\nku n</w>\nhel mets</w>\nt df</w>\ngu ide\nm old</w>\no ids</w>\nlu ther\nhe is\nmonaster y</w>\nsp ree</w>\nk lu\nbrit ney</w>\njagu ars</w>\ngre ats</w>\nc cc</w>\nky rie</w>\nmachin ery</w>\ncric ket\nre ro</w>\nab o</w>\naspir ing</w>\nsemi finals</w>\nale ss\nsig natures</w>\nvar d\nme th\nher bal</w>\nhol den</w>\nking dom\nap or\nreg gie</w>\nore o</w>\npalestin ians</w>\nem mys</w>\nsec tional</w>\nro i</w>\nney mar</w>\nqu el</w>\ncu ll\nl ka</w>\nhaz el</w>\nestim ate</w>\nul ties</w>\ngo w\nbe a\npurch ases</w>\nbel ts</w>\nprotec ts</w>\nm Ã©\ngue ssing</w>\nbb o</w>\nclau dia</w>\nfr acking</w>\njon ny</w>\nel k</w>\ncel tic\nal mighty</w>\nra je\ncourty ard</w>\nig i</w>\ncan es</w>\nðŁĴª ðŁı»</w>\nbank rup\nle thal</w>\nâľĮ ï¸ı\ngraphic design</w>\nvad er</w>\npenc ils</w>\nrough ly</w>\ndan te</w>\nm fg</w>\nconst ell\ncam el</w>\nj b\nbloss oms</w>\nen to\nbalo chistan</w>\ncine mato\nill ard</w>\njer sey\ncon sent</w>\ndent ed</w>\ncon templ\nsch er\nhol i</w>\nlou gh\nst our</w>\na yo\nbegin ners</w>\ncur b</w>\nv hs</w>\na jax</w>\ndu ff</w>\nav eng\ndom est\ncommit ting</w>\nai red</w>\ncha p</w>\nhedge hog</w>\ndisappo inting</w>\nfreel ance</w>\nin land</w>\nchar ms</w>\nðŁĺį âĿ¤ï¸ı</w>\nai sh\nm x\nbuck le</w>\nti dal</w>\nper mit</w>\nbo ating</w>\nra cha\nkend rick</w>\nb ello</w>\nb hi</w>\nple a</w>\nestim ates</w>\nl b\napo logies</w>\njay a</w>\nbb l</w>\nast oni\ninter state</w>\nmain taining</w>\nel bow</w>\nmu p</w>\nep it\nðŁĺ ¡\nviol ations</w>\ndef end\nbe h\nsl c</w>\nam ir</w>\npur i</w>\nti um</w>\nfi fa\nblur ry</w>\nscri m\nðŁĻı ðŁı¾</w>\nma ple\nrel atives</w>\nâĺ Ŀ\ncho c</w>\ncon nor\nâľ¨ âľ¨</w>\nwhi sp\nlist ings</w>\nma ze</w>\nthan king</w>\nri dd\ngrass roots</w>\nshi fting</w>\ndesper ately</w>\ngor illa</w>\nden i\nju les</w>\nstra th\ng ley</w>\nja in</w>\nbu ick</w>\nt anner</w>\nðŁĴ Ŀ</w>\nga e</w>\npri m\nit ors</w>\nn ano</w>\nsepar ation</w>\narmen ia</w>\nbor deaux</w>\nðŁ ħ\npj net</w>\nbu rial</w>\ne bon\nglo ss</w>\nre new</w>\ngri er</w>\nspe eds</w>\ncomic books</w>\nsym boli\npur poses</w>\nãħł ãħł\nspati al</w>\nno table</w>\nci on</w>\nn ps</w>\nho ffman</w>\nnor man\nrt g</w>\ndu sty</w>\nsitu ated</w>\ntr an</w>\nk fc</w>\nem en</w>\nnic kel</w>\nhast ings</w>\nsett ling</w>\ngr it\nl ena</w>\nw aw\nart s\ngu m\nca regi\nle wis\nsapp hire</w>\nrememb er\nembed ded</w>\nt lc</w>\nbl at\nserge ant</w>\nel sa</w>\nboot camp</w>\nbow man</w>\nphoto graphic</w>\npill ars</w>\ndirection ers</w>\nclassi fied</w>\nno is\nve er</w>\nbarre ls</w>\nwh oop</w>\nðŁĺ± ðŁĺ±\nfe male\npetro leum</w>\nmedi a\ne fc</w>\npokÃ© mon</w>\nà¤ ķ</w>\nenthusi astic</w>\nvar un</w>\npro files</w>\npedi atric</w>\nacci dents</w>\ncon rad</w>\njan g</w>\njo jo</w>\nac or\nob server</w>\nl f</w>\nlive stock</w>\nfor gi\nfo s</w>\nel m</w>\nan and</w>\ngo e\nc ere</w>\navoi ding</w>\ngri t</w>\nom an\nthank fully</w>\nscat tered</w>\nnick y</w>\ncylin der</w>\nchees y</w>\ndi ver</w>\nmahe sh</w>\ncav es</w>\near liest</w>\nqu inte\nsubjec ts</w>\nb end\ngul f\nvocali st</w>\nglu e</w>\npat ches</w>\nun stopp\nsny der</w>\ndemonstr ating</w>\npi o</w>\nhor ns</w>\nwic kets</w>\nand the\nr ama</w>\nyo on</w>\nstra ight\nbed time</w>\nor ang\nbul lets</w>\nsa urus</w>\nmin ers</w>\ninci dents</w>\n! ...</w>\nðŁİ ¸</w>\nag ers</w>\nhand les</w>\nstat es\nin ity</w>\nd ons</w>\nincredi ble\nemin em</w>\navi v</w>\nru dy</w>\nmoz art</w>\nfolk lore\nappli ances</w>\nmt l</w>\nfre y\ndi as\nhu a</w>\npage ant</w>\nstri ve</w>\nim prison\nbul lish</w>\nr ana</w>\nal erts</w>\nbb mas</w>\nhy per</w>\nderby shire</w>\nre cre\nre dd\ndebor ah</w>\ncosmo s</w>\nlaw son</w>\nmel anie</w>\npsy cho</w>\nho or\ndoo dles</w>\nsni per</w>\nshad y</w>\nman tle</w>\ncanadi an\nnew year\ninter actions</w>\nsepar ated</w>\ncor ds</w>\nspiritu ality</w>\nap u\nit o\np ct</w>\npel osi</w>\nrebel lion</w>\nse iz\nwor cester\nsec tors</w>\nul i</w>\nsan ta\nÐ µ\nðŁĩªðŁĩ ¸</w>\nbi ased</w>\nclass ical\ngam ma</w>\ndee plear\nemer ge</w>\nback er</w>\nsur ance</w>\nhand crafted</w>\nðŁİ ¥\nfranc is\nmill an</w>\nic i</w>\ncro wn\nwo w\nstri ped</w>\nun fair</w>\nrelax ation</w>\n³ ï¸ı\nembrac ing</w>\nshe alth</w>\npale o</w>\nmartin i</w>\ndist illery</w>\nwr ink\nor k\nna th\nhay ley</w>\ncour thouse</w>\nsi ber\nsa di\nquiet ly</w>\nmel t\nm sm</w>\nme h</w>\nsmart phones</w>\nrel ent\npp ing\nwar wick</w>\nco logne</w>\ngli a</w>\ncot ton\npro g</w>\nlon e\nip sw\nstar ters</w>\nexpan ds</w>\nu mp\nsu ed</w>\nski pper</w>\ninfe ctions</w>\ning le\nÃ ¡</w>\ncler k</w>\ndemonstr ate</w>\nac ar\nðŁĺĤðŁĺĤ ðŁĺĤ\nti bet</w>\nbun s</w>\nalo m</w>\ndemol ition</w>\nssi a</w>\ng st</w>\n[ ]</w>\nso ar</w>\nâĺ Ģ</w>\nðŁĺ ª</w>\nðŁĵ Ĭ</w>\ndee pest</w>\nbeyon d\nare t</w>\natt ends</w>\nactiv ated</w>\ndi mit\nâļª ï¸ı\nhigh lighted</w>\nmagaz ines</w>\nrum or</w>\naz za</w>\nsteph ens</w>\ndol ph</w>\nsho ckey</w>\nmat s</w>\nwe av\nmel an\nserv ers</w>\ntra um\nku sh\næ Ĺ\nbab ys\npa z</w>\na al\nla use</w>\nbreak ers</w>\ncanter bury</w>\nul ture</w>\nmi ri\neuro s</w>\ntane ous</w>\nimpre ssions</w>\ndu tch\nil d\ngh i</w>\npur due</w>\nadequ ate</w>\nl p\nsy ner\nang ler</w>\ndu rable</w>\ngal ore</w>\nro wn\nmg mt</w>\nðŁĵ Į</w>\nlu cia</w>\nâĺĳ ï¸ı</w>\nzay n\nbor row</w>\n. (</w>\nnorth umber\ncru sh\neng a</w>\nsu sh\nextra vag\nt out</w>\nma hal</w>\nali stic</w>\nther mo\ngall eries</w>\nes se</w>\nchi bi</w>\nattrac tions</w>\nlex ington</w>\nlegislat ure</w>\ndocu mented</w>\nresi den\nbrow nies</w>\nw f</w>\nst ool</w>\nplan ets</w>\nsho ppers</w>\nconduc tor</w>\nms p</w>\ntr icky</w>\nfru ity</w>\nend ra</w>\nfeel the\nwhi pped</w>\nhair style</w>\nre fer</w>\noo k\noc topus</w>\naudi ences</w>\nku mar\nafter no\nop tim\nc fl</w>\nni p</w>\ngen i\nalpha bet</w>\nann ab\nlam in\naccep ts</w>\nl ng</w>\nðŁĺ «</w>\nt ine</w>\nac om</w>\ncheer leaders</w>\nt k\ngr on\nv g</w>\nk ung</w>\nja x\ndha bi</w>\nr ss</w>\nmack enzie</w>\nbeir ut</w>\nclean up</w>\ngy psy</w>\nst ell\nbur ger\nhurric anes</w>\neduc ation\nst ina</w>\nâĻ¡ âĻ¡\nunfortun ate</w>\njere mi\nbad ger</w>\nat ers</w>\n: âĢ¦</w>\nter ra\nsubli me</w>\nstu d\ny mca</w>\nmr u</w>\nduter te</w>\nbren nan</w>\nbul b</w>\nmel o</w>\nyl on</w>\nhack er</w>\nc red</w>\ngu d</w>\nas an\npad illa</w>\nembroide red</w>\nvietnam ese</w>\npione ers</w>\nprojec tion</w>\nre boot</w>\nid c</w>\nan ey</w>\npri mer</w>\nsuff ers</w>\nwin ding</w>\np on</w>\nsto day</w>\nmor n</w>\nu ch</w>\nall in</w>\nadid as\neliza beth\ntu ck</w>\no graphy</w>\nðŁļ Ģ\nbe g</w>\nos borne</w>\nghet to</w>\nr h</w>\ncn n\nir ma</w>\nma kin</w>\ncab les</w>\nmur ders</w>\noc ks</w>\ninst a\nal as</w>\nsi k</w>\ncu ff</w>\nla re\nfoo dies</w>\no vic</w>\nat om\ngeome tric</w>\nem pathy</w>\nà¸ µ\ncent enary</w>\nnewsp apers</w>\nadministr ative</w>\nðŁİ Ĭ</w>\nsti ve</w>\ncontrac tors</w>\nle tt\ntas mania</w>\nawesom eness</w>\nden sity</w>\nve en</w>\nprince ton</w>\nfrequ ently</w>\nre ject</w>\ngh i\nmodu lar</w>\nceram ics</w>\nsh ag\nki wi</w>\ncan vas\nsweat shirt</w>\nan j\nti mm\nnapol i</w>\nil er\nappe als</w>\nhamil ton\nma yo\nwe ave</w>\narrang ed</w>\nwhar f</w>\noccu py\nb vb</w>\nas aki</w>\not ter</w>\nnor m</w>\nvi es</w>\nde tox</w>\ntion al\ndere k\nid ad</w>\nad missions</w>\nconstitu ency</w>\nu pper\nwoo t</w>\nallo y</w>\nse ve</w>\nlu b\nun comfortable</w>\ned win</w>\nab re\nd wight</w>\nar che\nvirtu ally</w>\nsp ol\npri e\nai i</w>\ner r\nswit ch\nbar ack</w>\nse ok</w>\ncou l\nwn t</w>\npou l\no live\ncaffe ine</w>\ncardi ff\nnotor ious</w>\nde mp\nex cess</w>\nbar r</w>\nt ford</w>\na jay\nbump ed</w>\nmy thology</w>\nshel ley</w>\nfal con\nshakespe are\nmust angs</w>\nno ted</w>\nbon e\ncivil ization</w>\nsy d</w>\npar sons</w>\nun official</w>\nhy ped</w>\nsp ends</w>\noppo sed</w>\nv ings</w>\nspace x</w>\nnoti fication</w>\ndeci ding</w>\nbio tech</w>\nout si\nsal ah</w>\n! .</w>\nfe d\nss y\nc ms</w>\nbad gers</w>\ncr o</w>\nela ine</w>\nn ba\ndy our\nn ant</w>\nhoney moon</w>\nclimb ed</w>\nconom y</w>\nath a</w>\nm ell\nne bula</w>\nnature photography</w>\njuli e\nbm x</w>\ninve sted</w>\nmon o</w>\nlieu tenant</w>\nwat kins</w>\ntechn ician</w>\no se</w>\nka e\nì Ľ\nmc queen</w>\npre ach</w>\ntrav eller</w>\nflexi bility</w>\nze bra</w>\nreta iler</w>\np ant</w>\nben der</w>\nbrand t</w>\nsqu id</w>\nwar rant</w>\nveri fied</w>\ncas s</w>\npier cing</w>\nhon ours</w>\nt ying</w>\nmor ris\nkis sed</w>\nop rah</w>\npanor amic</w>\nme i\nsplat oon</w>\nwich ita</w>\nari as</w>\ngal li\nindy ref</w>\ngood times</w>\nathe ist</w>\nconfe ssion</w>\now ski</w>\nre pping</w>\nad ditions</w>\nmechan ism</w>\nz im</w>\nj ans</w>\nsu f</w>\ncho pped</w>\nbeg innings</w>\nvitam ins</w>\nãħ¤ ãħ¤\nor th\npo les</w>\nru b</w>\nantarc tica</w>\nindie film</w>\nweb cam</w>\nket ch\nbre tt\ncle ment\nher on</w>\ndefe ating</w>\nhydr o</w>\nbuc ket\nwand ering</w>\nsid ney</w>\nfuture of\nb inge</w>\non ies</w>\nknock out</w>\nadministr ator</w>\nsyn the\nl ent</w>\njan i</w>\nbar ley</w>\npremier league</w>\nner ds</w>\ncr m</w>\nbra s</w>\nbot any</w>\nevol ved</w>\nrot ter\nro wed</w>\ntum or</w>\nweal thy</w>\nÂ Ń</w>\nmon arch</w>\nli shed</w>\nda hl</w>\nðŁİ ĥ\nbu ch\nken yan</w>\nØ §</w>\nred ness</w>\nassemb led</w>\nse mit\nhud der\nshro p\nran i</w>\nlear ning\nmor y</w>\niti a</w>\ngeo graphic</w>\nworl dof\nf b\npho sp\nboo gie</w>\nam ped</w>\n? ...</w>\nche w</w>\ndwar f</w>\nar us</w>\ns sen</w>\nru sty</w>\nrecru its</w>\nh k\ngar de</w>\napp lause</w>\nvol umes</w>\ninvol ves</w>\nta c</w>\nhand bag</w>\ntrans late</w>\nffe l</w>\nse ym\naqu atic</w>\ntrans fer\nzo di\nand r\nacade mia</w>\ncr ater</w>\nte z</w>\nar se</w>\nadap t</w>\ncol oni\nsnow man</w>\nmal i</w>\nhang in</w>\ndi schar\noy sters</w>\npho e\ncolon el</w>\nw ba</w>\nhispan ic</w>\nthri ving</w>\nsh y\nag les</w>\nsales force</w>\ncre me</w>\nso les</w>\nla fayette</w>\nâ ī\nter ia</w>\nach a</w>\nsp erson</w>\ngo go</w>\ncar ly</w>\nthe ore\nam ore</w>\nvo x</w>\naf t</w>\nãĤ ¹\nstap le</w>\nmu ffin</w>\ndi agram</w>\nino x</w>\nsu stained</w>\nav ent\nme ta</w>\narbit r\ndec ay</w>\nado le\nÐ ½\nec ol\nph o</w>\nn k\no cu\ngr anny</w>\nÃ§ a</w>\nluxemb our\nstad t</w>\nalber to</w>\nle vit\nam as\nd x\nor phan\nco bb</w>\nas c\nlo gy\nimmen se</w>\nchan ts</w>\noff line</w>\np ent</w>\nbre x\nw inger</w>\nplan e\ni el</w>\nnichol s</w>\nca thy</w>\nnar uto</w>\nlow ed</w>\n/ //</w>\nignor ance</w>\ncat astro\nyou ts</w>\nsch en\nbuil d\nhaz i</w>\ns ine\ncritical role</w>\ndu g\ndete ct</w>\nlo gs</w>\nen amel</w>\nstpatrick sday</w>\ned die\nco pa</w>\ncigare ttes</w>\nho ff</w>\nkay a</w>\nla goon</w>\nra pha\nair borne</w>\nchoo se\npuer tor\nke v\ngui ding</w>\nfro sty</w>\nbor ough\nmir a</w>\nðŁİ Ĭ\ncade t</w>\nanu sh\nyo gi</w>\ne ger</w>\nfl ing</w>\nslo pe</w>\nnin th</w>\nwe ston</w>\nfoot wear</w>\nf n\nmay weather</w>\na am</w>\npla in\nstair case</w>\nwitne sses</w>\nwork outs</w>\nro bust</w>\ndex ter</w>\nco hort</w>\nðŁļ Ĺ</w>\nsp ell\nha ze</w>\no om\norgan ising</w>\nwild fire</w>\ncont acts</w>\nav on\nmin o</w>\nupd ating</w>\nðŁį »\nli thium</w>\ning ual</w>\nk is</w>\nau ga</w>\nlo com\nde duc\nu da</w>\nth ak\nboy le</w>\nmp er</w>\nhot tie</w>\neri k\nre vised</w>\nis la</w>\ntravel photography</w>\noo za</w>\nen qui\nconfe rences</w>\nclo ver</w>\ng room</w>\ncur ves</w>\nlive on\nper f</w>\ndisplac ed</w>\nbo log\nxx xx</w>\nðŁĺ© ðŁĺ©\nte al</w>\nve ssels</w>\nrain forest</w>\ncal ci\npan ther\ngira ffe</w>\nta sted</w>\nimag ery</w>\npad res</w>\nday time</w>\nbas s\nri pe</w>\nopio id</w>\nnu e\nvin yl\ninvent or</w>\nsen s</w>\nprocess or</w>\nmu t</w>\ngad gets</w>\nbibl ical</w>\nshann on\njacqu eline</w>\ncar y</w>\nthe resistance</w>\nali en\nn vi\nco sy</w>\nbi har</w>\nfo ley</w>\nren d</w>\nmu gs</w>\nfa ken\ncl one</w>\nni allo\ngra bbed</w>\nchi hu\npower house</w>\nn tt</w>\nchero kee</w>\nspon ge\nimple menting</w>\nrh ine\nle one</w>\nðŁį Ģ\npret tiest</w>\ninfra red</w>\nimpro v</w>\nswit ched</w>\ntu bes</w>\ncon tr\nbl k</w>\nprojec ted</w>\nbe aver</w>\nyo t\nbbcra dio</w>\nthi gh</w>\nper secu\napologi ze</w>\nw ack\npo ster\noli ver\naz a</w>\nlou d\n( ?)</w>\nf the\nwomen shi\nspar row</w>\nblu sh</w>\nus able</w>\nsc ales</w>\nit ative</w>\npeu ge\nne eding</w>\nlegg ings</w>\nglam orous</w>\nmat ur\nc z\nwat t\nda b</w>\ntam ar\net sym\nbau er</w>\nheart felt</w>\nh n\nelse where</w>\nbir ch</w>\nalu mini\nhu ck\ne me\nj l</w>\ntraf ford</w>\nd z</w>\npor tions</w>\nana sta\narthr itis</w>\nesp n\nber gen</w>\nviol ation</w>\nyo shi\nc z</w>\nnorthumber land</w>\nclo sures</w>\nðŁĩ¯ ðŁĩ\nsmi ley</w>\nr w</w>\ntel ugu</w>\ninten si\ngre gg</w>\nve ga</w>\ndun geon</w>\nsouth bound</w>\nba il\ndomin ican</w>\nsemi final</w>\nchap ters</w>\nh itch\nvan ity</w>\ntrans iti\nrecomm ends</w>\nsati sf\nbar ca</w>\nqueen s\n( (\nde struc\nstra it</w>\nra vi\ndess erts</w>\nin tru\nhar am</w>\nk os</w>\nfo e</w>\nfat ty</w>\npais ley</w>\nmagn itude</w>\ndri dge</w>\ncom ey</w>\nschem es</w>\nvision ary</w>\nour t</w>\ndown loaded</w>\nðŁĻĮ ðŁı½</w>\ngd pr</w>\nlan i</w>\np wc</w>\ngu ad\nnic est</w>\nstake holders</w>\nre ferred</w>\ngeorge town</w>\narvind kejriwal</w>\nschnei der</w>\nin doors</w>\nall star</w>\nstrand ed</w>\ngen der\nze pp\nma sses</w>\nðŁĲ ±</w>\npati ently</w>\nbl dg</w>\nz ab\nwe arab\nvi vid</w>\nhe ck\nd ella</w>\nsy mb\nje opar\nla ger</w>\nà ª\ncomb ines</w>\nne c</w>\nbr ay</w>\nflo p</w>\ntx wx</w>\njo ys</w>\npon t</w>\npro found</w>\nsur round</w>\nmad hu\nma ble</w>\nay r\nte as\nn sa</w>\nopen ly</w>\ner nest</w>\nãĥ ©\nto po\ng na</w>\nanti oxid\nti an\ne tr\nc ello</w>\nma thi\ngener osity</w>\nb iting</w>\nman ic\nkel sey</w>\nchee ks</w>\nten der\nw th</w>\npron oun\nultimat ely</w>\ngu sta\nari anag\nger ry</w>\nble ed\nred dy</w>\nmic h</w>\nmitsubi shi</w>\noper ated</w>\nsex ually</w>\nma u</w>\ncl lr</w>\nvi ds</w>\nco c\nmel ted</w>\nðŁĮ Ī\nq ld\nite ch</w>\ninstru mental</w>\nend game</w>\nðŁĵ ĸ</w>\nener gi\nbrow nie</w>\ntam il\nat in</w>\ndomin ated</w>\npra ises</w>\nfire place</w>\nsens ational</w>\nmen a</w>\nk arti\nun prece\nru pt</w>\nori ental</w>\nmc cor\ntour naments</w>\nscen ter</w>\nre eves</w>\nprescri ption</w>\nsam e\nfra u\ntru ffle</w>\nem bo\nroman s</w>\nbla sts</w>\ntechno logical</w>\npr at\nb sb</w>\ny ar</w>\ntren dy</w>\nac l</w>\nal ad\nðŁį ģ</w>\no hh</w>\nbankrup t\ntho ven</w>\nregar ds</w>\nis er\nwar wick\nvine yards</w>\nreal m</w>\nniallo fficial</w>\ndo ta</w>\nge mini</w>\nto do</w>\nv able</w>\nÂ¨ Â¨\nla u</w>\nwre ath</w>\nju ve</w>\nnat asha</w>\nle ver</w>\nlor i</w>\nhor ser\ncc tv</w>\nair bnb</w>\nes anders</w>\nsin clair</w>\nema biggest\nhigh school</w>\ncon test\noptimi stic</w>\nt te\nðŁĴķ ðŁĴķ\nss d</w>\nye e</w>\nhel ena</w>\ncon sen\nric ks</w>\njes se\nan ic</w>\nðŁİ ¯</w>\nre acts</w>\nro be</w>\nindepend ence\nvol tage</w>\nm ington</w>\ns ant</w>\nà¸Ļ à¸\n-------- --------\nsentin el</w>\nke tt\nrehear sing</w>\naaaa aaaa\nsof the\nstir ling</w>\nsear ch\nwi gan</w>\nstand out</w>\nsna il</w>\npent agon</w>\nÄ ģ\nch lor\ncru st</w>\nnet any\nchemi st</w>\ndisapp eared</w>\nric ardo</w>\nsp iders</w>\nbo se</w>\nwar ren\nme ssing</w>\nbann ers</w>\ngu el\npar ach\nma id\ncoun ted</w>\nepi le\nbon fire</w>\nspeech less</w>\nse tter</w>\nmeas ured</w>\nrejec ts</w>\nnik ki\nle ster\nforen sic</w>\nfab rics</w>\nalo ha</w>\npre served</w>\nwat ford</w>\ndeta iling</w>\ndar th</w>\nbo u</w>\ncar ly\n... '</w>\ntail gate</w>\nnoti fications</w>\nå ¤\npas sive</w>\ntrous ers</w>\nbalo ch</w>\nro ther\ntypic ally</w>\nÃ ¥\nsp it</w>\nwi z</w>\nsic ily</w>\ntechnic ally</w>\nex pose</w>\nst age\nhu bb\ncre am\ncap s</w>\npo ke</w>\nsle ek</w>\nju ne\ntempor arily</w>\nde z\nawak ens</w>\nl ame</w>\n_ -</w>\nji ha\ntues days</w>\nadvis ed</w>\nadvis ors</w>\nexi sted</w>\ndis agree</w>\nnews room</w>\nlo sers</w>\nworld tour</w>\ndr ying</w>\nal di</w>\nhar ness</w>\nfoot print</w>\nhobb it</w>\np mln</w>\ni ro\nque red</w>\nasse ss</w>\ngaz e</w>\nsa b</w>\nth ian</w>\ní Ĭ\nti f</w>\nob serve</w>\nev il\ndra wer</w>\nswee p\ncor y\nco dy\nkyo to</w>\ncal lum</w>\nn inj\nlau rent</w>\nbe i</w>\nsket ching</w>\ncustom ized</w>\ndu r</w>\nregre ts</w>\nknox ville</w>\nìķ Ħ\nmess aging</w>\ngrac ie</w>\nabun dance</w>\nbi dding</w>\nbre wed</w>\nfl ouri\ntherapeu tic</w>\nalt itude</w>\nho gs</w>\nbur ner</w>\nelec tro</w>\nwonder fully</w>\nhe ater</w>\npost pon\nli very</w>\nr all\nad as</w>\na ac\nsau l</w>\nbrook lyn\nplay house</w>\nâĻ¥âĻ¥ âĻ¥</w>\nchar itable</w>\nin y</w>\nz ah\ncompet itions</w>\nbe av\nplu gged</w>\no is</w>\ndo om\nastron om\nspeci alized</w>\nmax i</w>\nta ps</w>\ncellu lar</w>\ndepre ssed</w>\nfolklore thursday</w>\ncri b</w>\ne mul\në° ©\nfi gh\nru z</w>\ncar lisle</w>\nspe ar\nside walk</w>\nde i</w>\ndepend ent</w>\nlac es</w>\nnh s\nðŁĮ Ļ</w>\nreali zing</w>\nnet work\nric he\nre gin\nre fresh</w>\nst ral</w>\npa thology</w>\npla id</w>\npsyched elic</w>\nhin d</w>\nu ka</w>\nalgori thm</w>\nlin king</w>\nprogre ssi\nfe y</w>\nd ade</w>\nhydr ated</w>\nb ant\nfam ed</w>\ncot sw\nbo ise</w>\nas c</w>\nrac ing\nja vier</w>\nww en\nmar lins</w>\npoo p</w>\nswe pt</w>\ntoni ghts</w>\nwe f</w>\nani me\nslo vak\nâŀĸ âŀĸ\ncla us</w>\nlem me</w>\ncli ppers</w>\nre ls</w>\narianag rande</w>\nr te</w>\nko t\nthal apathy</w>\nhungar ian</w>\nzu ma</w>\ny von\nis u</w>\njour neys</w>\nclin ics</w>\nbe be</w>\nww f</w>\nn ws\nsuper heroes</w>\ner it\nsle ague</w>\nidenti fication</w>\nmo tto</w>\nba i</w>\nsour ced</w>\nill er\nap i\npri se</w>\nunprece dented</w>\ndam as\ntuni sia</w>\ndra in\nundere stim\ne ther\nquarter ly</w>\nrewar ding</w>\nal ham\nwolver ine</w>\ncab ine\nhyp no\nnad ine</w>\nhav ana</w>\nda e\nðŁĵ Ī</w>\ndr on</w>\nread ings</w>\nb ati\npic o</w>\nmer ci\niti an</w>\nwal kers</w>\nel ope</w>\nmi key</w>\ngod zilla</w>\nbur lington</w>\nabu ja</w>\nsocial ism</w>\nat ility</w>\nsh ell\nharry potter</w>\ng no\nab ur\nre leg\nfel ici\nro gen</w>\nneuro science</w>\ninst in\nath am</w>\nvou chers</w>\nj arre\nfu se</w>\ndef ici\nmonte rey</w>\nde port\nmid day</w>\npp ard</w>\nfre ed</w>\name ter</w>\nwil t\nn ingham</w>\npr att</w>\nliber ty\nslo gan</w>\no to</w>\npr i</w>\nco ated</w>\nc pd</w>\nne tt\nil las</w>\nmal awi</w>\nevol ve</w>\naccessi bility</w>\nðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥\nor nament</w>\nb p\nel is\nson line</w>\nchi ro\nfl ick</w>\nib m\nar ak\nen ables</w>\ngar land</w>\nsan e</w>\ncu ties</w>\ntri p\nrotter dam</w>\nn ys</w>\nlam ps</w>\nlu cas\nbo g\nra ils</w>\ntravel led</w>\nhic ks</w>\nen u\nsab ha</w>\nscru b</w>\nhi er\nhart ford</w>\nfo o</w>\nfer nandez</w>\ntre vor\nmat tress</w>\nappo intments</w>\nale j\nfe i\no logist</w>\nsaf ar\noc ta\nsr c</w>\nsha un\nambi ent</w>\ndri c</w>\nbi ker</w>\nshe e\nmust ache</w>\nh ta\nbo one</w>\nher ty</w>\ncar dio</w>\nbra kes</w>\nrec ital</w>\nconsi sts</w>\noverwhel med</w>\ncau l\nrobb ins</w>\nim it\nal th\nur l</w>\nbi bli\non ne</w>\nblack livesmatter</w>\ndiffic ulties</w>\ntel ang\ntall er</w>\nðŁĵ Ĩ</w>\ndeb ating</w>\nbur rito</w>\nmo vember</w>\nstrength ening</w>\nbo e\nte stam\nmirac les</w>\nbase ball\nre nee</w>\nðŁĳī ðŁı»</w>\nal fa</w>\nâĺ ĺ\nunstopp able</w>\nec s</w>\ng mo</w>\ngiftide as</w>\npath way</w>\nfen cing</w>\nðŁİ ¤\nb ham</w>\nra s\nsk o</w>\nd led</w>\nthel ast\nmagn um</w>\nbin ary</w>\nwil de</w>\nwil der</w>\nwh ati\nbarbe cue</w>\nh ism</w>\ncan oe</w>\nkur di\neli ve</w>\nadvant ages</w>\nmad ame</w>\nbi er</w>\nmis sing\nenter tain</w>\nair force</w>\ny ama</w>\nc is</w>\nhash tags</w>\nj is</w>\nve il</w>\ndream y</w>\nten se</w>\nmay ward</w>\nch ateau</w>\nhunt ington</w>\nâļ ĵ\nv all\nup on\nbl ouse</w>\ndun es</w>\nðŁĺ ´\nfert ility</w>\nm ole</w>\ncurren cies</w>\nst u</w>\nber lin\ntoa sted</w>\ndiv as</w>\nwal t\nlar k</w>\npor a</w>\nhit ter</w>\num er</w>\nchil led</w>\nbal ancing</w>\nfa is\ny in</w>\nor tiz</w>\neast enders</w>\nh ate\nur al\nap ril\ntim el\nà ±\nper o</w>\nsto cked</w>\nrespec ts</w>\nth t</w>\nbest friends</w>\ngiving tuesday</w>\nbe ad</w>\ninv ent</w>\nim i</w>\nnap les</w>\ncomb ining</w>\ntok ens</w>\nthir st</w>\nma sc\npar rot</w>\nsp u\ndent on</w>\n* -*</w>\nt res</w>\nsubur ban</w>\nwid th</w>\nsi ve\ncon tender</w>\nsiri us\nlo k</w>\ntroop ers</w>\noutra ge</w>\ntur bo\nfrag ile</w>\nme ssed</w>\ndo h</w>\ndisc ord</w>\nnetany ahu</w>\nre sign</w>\nforgi veness</w>\nmo han</w>\nmun ch\ncam ou\nidenti fying</w>\nenab ling</w>\nhot ter</w>\nthorn ton</w>\njai pur</w>\nar ya</w>\nðŁı» âĢįâĻĢï¸ı</w>\nmu staf\nmaj ors</w>\no ke</w>\ndu ffy</w>\nroh ing\ntil t</w>\nðŁĩ®ðŁĩ ³</w>\nrock star\nshe ep\nhend rix</w>\nra v</w>\nin vention</w>\ndo u</w>\nlagun a</w>\ngru mpy</w>\nsw is\nim pe\n) '</w>\nyou ths</w>\nbun ker</w>\nst ache</w>\noppo se</w>\nindi es</w>\nacceler ate</w>\nml p</w>\ned en\nw ann\nk ail\nakshay kumar</w>\nsu pt</w>\npol ym\nmidd leton</w>\nextra ordin\nwil son\naustrali an\nalumini um</w>\nway ne\nalum nus</w>\nmat ics</w>\ngri m</w>\ner nie</w>\nopp a</w>\ncompetit ors</w>\nrand all</w>\nh ence</w>\ndecla res</w>\npre aching</w>\nsha he\ncan e\nsustain able\nstap les</w>\nle dge\nad ena</w>\ndoctor al</w>\nbur gundy</w>\ndecor ate</w>\nren dered</w>\nri sen</w>\npr ank</w>\ndi or</w>\nbee thoven</w>\nflo or\nac com\nto t</w>\nho dg\ntouri sm\nsay in</w>\nobjec tive</w>\nmar kers</w>\npremi ership</w>\nen abled</w>\ncamou fla\ngi ant\nÑ ģ\nsmo key</w>\nric ket</w>\npan g</w>\nde pending</w>\ns ation</w>\nevol ving</w>\ninter cep\ncen sus</w>\ntof the\nre en</w>\nmendo za</w>\ntrum pet</w>\nmarke ters</w>\nan it\nðŁĻ Ĭ\nnorth western</w>\nv la\nfoto gra\nblackand white\nche wan</w>\nwi g\ntro om</w>\nginger bread</w>\nk n</w>\nro mero</w>\nn fc</w>\nor chi\nfun ko</w>\nsour ce\nf s\nra ped</w>\no st\ntar ot</w>\nann ually</w>\nðŁĺ ¬\nr ill</w>\ndel av\n.. !!</w>\nse s\ncan n</w>\nmedic are</w>\nph el\nape x</w>\nguardi an\nrema ined</w>\nr pm</w>\na Ã±\nstory month</w>\ninstag ood</w>\nneighb our</w>\np ing\nsem ite</w>\nmy stic</w>\nas cot</w>\nmat er</w>\nhand ful</w>\ndang ers</w>\nti d</w>\nana heim</w>\nopol y</w>\nsh allow</w>\nnami bia</w>\ntor ia</w>\nprocu rement</w>\nbig bang</w>\nannoun cements</w>\nprosecu tor</w>\nbeng als</w>\nsal le</w>\nen roll\nga stro\nsugge stion</w>\nba k</w>\nha ul\nbudd hism</w>\nberni esanders</w>\nflu te</w>\nfati gue</w>\ncyn thia</w>\ncho i</w>\nir win</w>\ngu a</w>\nstr ous</w>\nh p\nba p</w>\nsatisf ying</w>\nplay a</w>\nðŁİ ¼</w>\ninst ap\nal ice\nt p\nirri gation</w>\nðŁĩ¬ðŁĩ §\nin tric\nclu es</w>\nple x\nsa x</w>\nhe pat\ndump ed</w>\nsignific ance</w>\nby u</w>\nmedic ation</w>\npro v\ntough est</w>\ncorn ish</w>\nâŀ ľ</w>\nkel ley</w>\nu v\nsi zz\nsi bling</w>\nme st</w>\ndi stor\ndiplom atic</w>\naun tie</w>\nb hat\nson ic\nbren da</w>\npump kins</w>\nro ch\nblack burn</w>\nur ged</w>\nshi a</w>\narrange ments</w>\nfloo d\nsa unders</w>\nlec turer</w>\nnou ri\npopul ations</w>\ndiplom acy</w>\nconsist ently</w>\nðŁ¤ Ļ\nt mund</w>\ncauli flower</w>\nl ily\nvocab ulary</w>\nvari eties</w>\ncoo ker</w>\nup town</w>\nqu ent\nmo sa</w>\nre inde\nvelo city</w>\nspru ce</w>\nsocial medi\ni ber\nvolun tary</w>\nproce ssed</w>\nbal tic</w>\ny ang\nleban ese</w>\nd p\ndol ly</w>\narrange ment</w>\ny uri</w>\ncran berry</w>\nkal yan</w>\nelev ation</w>\ncli ff\npu shes</w>\nìĬ ¤</w>\nsil ic\nco wx</w>\neter nity</w>\nsla ves</w>\nvine gar</w>\nglou cester</w>\ncon tained</w>\nbreaking news</w>\naga inst\nrenov ated</w>\nnorm andy</w>\nhero in</w>\nys m</w>\nmo ds</w>\ngre ek\nun di</w>\ntren ch</w>\nv h</w>\nencoura ges</w>\nhead ache</w>\ngr ange</w>\n: '</w>\never green</w>\nÙ Ĭ</w>\nreck on</w>\nab used</w>\nth ru\ncho ice\nti dy</w>\ncol der</w>\nscho ice</w>\nha in</w>\nbru m\nli ars</w>\nbre it\nyor ker</w>\nsh ack\nhe idi</w>\nmicha els</w>\nsco pic</w>\nfasci st</w>\nplay ful</w>\nca c</w>\nyas ss</w>\nsh ad</w>\n.. ?</w>\nqu en\nram irez</w>\nclif ton</w>\npr s</w>\nbest fan\nâģ ł\ngener ating</w>\nhead set</w>\ndisappo intment</w>\nabstr act\nbo iled</w>\nparen thood</w>\nazerbai jan</w>\nexhib iting</w>\nbom bay</w>\noli vier</w>\nko so\nun lea\nmat ernity</w>\niz er</w>\nsi ves</w>\nr hu\ncol l</w>\nsaskat chewan</w>\nfre akin</w>\nde k</w>\nna g</w>\nstab ili\nðŁį ķ</w>\norgani zer</w>\nbo sses</w>\nar u</w>\nu va</w>\nat able</w>\nta un\nafter wards</w>\nfert ili\nver ge</w>\naz i\nmor ph\nà¹ ģà¸\njer k</w>\ncosme tic</w>\nko w</w>\nstru st</w>\nap ache</w>\npost cards</w>\nfor mul\nì ĭ\nspin al</w>\njack pot</w>\nelec tri\nÃ Ń</w>\nlo y</w>\ngra der</w>\ndiab lo</w>\nar di\nhe sit\nf w\narch ery</w>\npa sh\nthe ories</w>\nrepe al</w>\nre live</w>\nper cy</w>\nâĺ Ĩ\nim in\nsyn chron\nsham poo</w>\ncoup ons</w>\no to\nla i</w>\nthou ght\nluxembour g</w>\nmo v</w>\nðŁĺ ¥</w>\nge mma</w>\nse ated</w>\nm ga</w>\nstrat ford</w>\nun certainty</w>\nshi fts</w>\nest o</w>\nfo ol\nfire arms</w>\ncor rie</w>\nki ki</w>\nappa rent</w>\np ills</w>\nolym pia</w>\nfi d</w>\nelev ated</w>\nde cks</w>\nignor ing</w>\nav alan\nro v</w>\nwhist le\np tsd</w>\nmilit ants</w>\nrobo tic</w>\npac ers</w>\nquil t</w>\nbankrupt cy</w>\nlic h\nper cussion</w>\ncelebr ity\nal s\n( ;</w>\nsu t\npokemon go</w>\nh g\noff s</w>\ngibr altar</w>\nscre ams</w>\nbilli e</w>\ngen ome</w>\nmar in</w>\nbe ams</w>\narch bishop</w>\nem in</w>\nbedro oms</w>\ng ated</w>\nol ly</w>\nwarran ty</w>\nat own</w>\ncudd les</w>\ngun na</w>\nk ic\nvi ve</w>\ncy mru</w>\nnar row\npro b</w>\nle o\nrefe rences</w>\nmanufac tured</w>\ncho pper</w>\nbrun swick</w>\nsem is</w>\ndon ia</w>\nr ye\nman o</w>\nhur ting</w>\n? #</w>\nhol li\ninvestig ations</w>\nc els</w>\nðŁĵ ŀ</w>\nle ster</w>\ntemp les</w>\nsto rey</w>\nmc mahon</w>\ntoi lets</w>\nwo of</w>\nï¸ İ</w>\nle verage</w>\nat om</w>\nnight mares</w>\nvictor ious</w>\nhaun ting</w>\ncustom er\nag i\nyo ongi</w>\nmon ty</w>\nver onica</w>\nw ur\ninti mid\nblan kets</w>\nvolu tion</w>\nj m\nâĺ İ\nam on</w>\njud ith</w>\nðŁĺİ ðŁĺİ</w>\ndistr acted</w>\ndri p</w>\nhurric ane\nand es</w>\nrevel ation</w>\ntro op</w>\nab leg</w>\ncol lin\ntibet an</w>\nwor rying</w>\ninter nationally</w>\neat er</w>\ncamero on</w>\nbrad or</w>\ny uk</w>\nðŁĴĹ ðŁĴĹ</w>\ntra k</w>\nslo pes</w>\nci er\nne a</w>\nol er\nta ka\nalbi on</w>\nvolcan ic</w>\nam n</w>\na fi\nob stac\nface time</w>\nger ing</w>\nn pr</w>\nmetall ica</w>\norgan ic\nðŁĴ ¡</w>\nki dd</w>\nd ances</w>\npemb ro\nwash er</w>\nm its</w>\nom er\nemo tionally</w>\ntan go</w>\nip o</w>\ndo cks</w>\nscan ning</w>\nspec s</w>\ntho m</w>\nthe ology</w>\nemer gen\nom i\ng pa</w>\nselec tions</w>\nun necessary</w>\nima ge\nter s\ninduc ed</w>\ngi gan\nrent als</w>\nsupp lied</w>\nm fa</w>\nshan kar</w>\nlat er\npa jam\ncla ve</w>\nÙ ģ\nma hin\ncarl son</w>\navi an</w>\nano va</w>\nkati e\naj ith</w>\ndesign ated</w>\nchocol ates</w>\ninvestig ators</w>\ngla zed</w>\nprin cess\ner ry</w>\nra gn\nou rable</w>\nhr u</w>\nsun dance</w>\npeuge ot</w>\nsteam punk</w>\ngh lin</w>\ngre ase</w>\nhi res</w>\nz ap\nper ce\nj ill\ntom e\nhe hehe</w>\njoy ful</w>\nmae stro</w>\nni shed</w>\ngene alo\nv ich</w>\np its</w>\nfox es</w>\ngood man</w>\nemer son</w>\nlo bes</w>\ncon verse</w>\no ats</w>\nthom son</w>\nra him</w>\nmal ware</w>\nah i</w>\nman kind</w>\nre sin</w>\nim g</w>\nsw ood</w>\nkin der</w>\nsc roll</w>\nar a\nsak ura</w>\nro bbed</w>\nxi on</w>\nny a</w>\nc ism</w>\nce dar\nbe in</w>\nmour ning</w>\ntor to\nheath row</w>\ndone gal</w>\nbar b\nhydr ation</w>\nk or</w>\nelim ination</w>\nsu pdates</w>\nhill s\nappe ti\nstar red</w>\nko m</w>\ngw en</w>\ndd d</w>\ncra y\nsc anner</w>\npersonal ised</w>\nseren ity</w>\nre design</w>\nmeta ph\nbox ed</w>\njudg ment</w>\nno se\në ¹\ner ad\nac ne</w>\nsupp liers</w>\nener getic</w>\nv om\nas ap\nðŁĶ ¸</w>\nir vine</w>\nhat ch\nla ss\nad ren\nwaff les</w>\naccur ately</w>\nici o</w>\nitt le\nse un\noccup y</w>\nweb cam\nthene w\nent es</w>\nga i\nj w</w>\naccoun table</w>\nvis or</w>\nir rit\nlicen sing</w>\nhudder sfield</w>\ngen ie</w>\nðŁİ ¾</w>\natmo spheric</w>\nten sions</w>\nspart an</w>\nclif ford</w>\nol an</w>\nnorth bound</w>\name en</w>\ncen sor\nu el</w>\nster y</w>\n$ $\nfar rell</w>\nhy ster\ncl t</w>\nse dan</w>\nrep lied</w>\ndescri bing</w>\nmicro wave</w>\nsla b</w>\npro sp\nassi sting</w>\nru bio</w>\ne than\nhh hhh</w>\ngu ay</w>\nz man</w>\nra ise\nroll ing\no e\nn ile</w>\nambro se</w>\nscar borough</w>\nhero ic</w>\ncoo ks</w>\nmor t\nchop ra</w>\nðŁĮ ·</w>\nto b</w>\nshav ing</w>\nstac ey</w>\ndor m</w>\nmotor sports</w>\nwi ki</w>\nfol ds</w>\nsp iced</w>\nstress ful</w>\nliter al</w>\nfu dge</w>\npe ggy</w>\nwa ite</w>\ntre sses</w>\nse sh</w>\npr ic\nðŁİ ħ</w>\nfri ght\nr va</w>\nmumb ai\npo m</w>\ntt v</w>\ncel lar</w>\ntom e</w>\nandro id\ndor is</w>\ntsun ami</w>\ntin der</w>\no ec\nm wc</w>\ndor tmund</w>\nno thin</w>\nl iti\nso u</w>\nbelieve in\nat u</w>\nkno cks</w>\nmag ni\nss sss</w>\nro hit</w>\nine ws</w>\nang i</w>\nm andy</w>\nke ttle</w>\nintermedi ate</w>\nav ant</w>\ncur l</w>\nendor sed</w>\nori o</w>\nur t</w>\nconsider ation</w>\nwi res</w>\nshel ters</w>\nb ino</w>\nvik ram</w>\nimple mented</w>\nly dia</w>\nbu k</w>\nparo dy</w>\nc news</w>\nunder graduate</w>\ncanu cks</w>\nsam i</w>\npolit ically</w>\nro tten</w>\ngh z</w>\ntex tiles</w>\nover load</w>\nmoder ni\nrecre ational</w>\nfli r\nbat on</w>\ntypo graphy</w>\nov ation</w>\nintrigu ing</w>\npilgri mage</w>\nal ge\nad ays</w>\ntcm party</w>\nsp elled</w>\ncur ls</w>\nboo ze</w>\nste m\nann es</w>\nir ls</w>\nspon ge</w>\nsho pper</w>\nsig nation</w>\nbra ss\nmi stress</w>\nle ah\nbeg inner</w>\nlau derdale</w>\naugu st\npre school</w>\nta ping</w>\ntai pei</w>\nexecu tives</w>\nb d\nrhe tor\nesc or\nimmun o\ndeeplear ning</w>\nstat ues</w>\nit us</w>\nmanu script</w>\nly ric\ncor vette</w>\nmol ly\nla ge</w>\nde p</w>\ncn bc</w>\nle st\nje ssi\nfi fe</w>\ngriff ith</w>\noppo sing</w>\nran g</w>\ndr ills</w>\nrespec tful</w>\np ity</w>\nd ell\nhar ding</w>\nplay boy</w>\nblo ke</w>\nshut out</w>\nk ili\no sp\nse attle\nbc poli</w>\nmis es</w>\njourn als</w>\nteam ing</w>\nes ther</w>\nfre ddy</w>\nĶ ï¸ı\nmetr ics</w>\nno tre\ngar ry</w>\nfor ty</w>\nnavi gate</w>\nperio ds</w>\nbened ic\nj id</w>\nda w</w>\nance stors</w>\nrestor ing</w>\ncon g</w>\naller gy</w>\ntit anium</w>\nc ence</w>\nlean ing</w>\nab bas</w>\nv ast\nuc f</w>\nroof ing</w>\ne man\nseve rely</w>\nvo gue\nve au</w>\nin bound</w>\nd z\ntane ously</w>\nstret ching</w>\nman chester\ndr yer</w>\ndav is\nkan th</w>\nthe game</w>\nit ted</w>\nre tain</w>\nel les</w>\nconge stion</w>\nfrat ernity</w>\nol lie</w>\nlo ki</w>\nfre ely</w>\ncho o</w>\npon y\nsc ep\ntab ly</w>\nbal t</w>\nrock n\ndi me</w>\nlo gging</w>\nðŁį ·\nad u</w>\nha voc</w>\nwater ford</w>\nchar is\nswee tie</w>\nrun ning\nner d\nerdo gan</w>\nz ara</w>\nweigh ing</w>\nfif ty\npre cise</w>\nlow ell</w>\nkurdi stan</w>\nr yo\nor th</w>\nsyn th</w>\nlin ers</w>\nphenomen on</w>\nart illery</w>\nil legally</w>\nconstru ct</w>\nnostal gic</w>\ngar th</w>\nal ta\nshel ton</w>\na sean</w>\nw ander</w>\ndur ban</w>\ndi versi\nbon o</w>\ncl on\nle man</w>\nsh un\nobstac les</w>\nappet ite</w>\nfe eder</w>\nrespir atory</w>\ndi xie</w>\nformu la\nan to</w>\nso ber</w>\nextin ct</w>\nau c\ning les</w>\nlegitim ate</w>\n; ;</w>\nmin nie</w>\nipsw ich</w>\ndram atically</w>\nðŁĳı ðŁı¼\ningh am\nmilit ary\nmon et</w>\nus navy</w>\nfor k\ndun no</w>\nplay er\nq otd</w>\nst oo\nex or\nethiop ian</w>\nfilm fest</w>\npe red</w>\nc ate</w>\nsau di\nin ner\nsin cere\ntion ality</w>\nale e</w>\nde eds</w>\ncooper ative</w>\nir onic</w>\ncro cod\nbr ary</w>\npost season</w>\ncam per</w>\ncan ary</w>\ne in</w>\nexten sions</w>\nnb d</w>\nsher wood</w>\nspo kane</w>\nhu mp</w>\njit su</w>\nê ¹\ndar yl</w>\np si</w>\nstab bed</w>\noffer ings</w>\nexpe cts</w>\ncav al\nbody building</w>\nfr aming</w>\nf ca</w>\nye arly</w>\nbom bed</w>\nsk il\nresear ching</w>\njud iciary</w>\ngree ted</w>\ntu dor</w>\nmil o</w>\ninnov ate</w>\nðŁĺ Ľ\nr hs</w>\nru by\ncontribu tor</w>\nfam er</w>\nsoci ally</w>\nm lin</w>\nfi ery</w>\nut ter</w>\nbeau t</w>\nit os</w>\nde voted</w>\nrain bow\nbar ney</w>\npe ren\nar jun\nr na</w>\ngab by</w>\nut i</w>\nhann ity</w>\npick le</w>\nser v</w>\nqu akes</w>\npp e\nfe m\nwh itec\nj n\nvictor ies</w>\nðŁ§ ¡</w>\ngol fer</w>\ncongratul ates</w>\nresul ting</w>\nmechan ic</w>\nur ve\ncen tered</w>\nkie v</w>\nan s\nin cub\n< <\nc mo</w>\nbestfan army</w>\ndap h\nen ham</w>\non cology</w>\nku sh</w>\nt xt</w>\nori ented</w>\nfashion able</w>\nc sr</w>\nsa hara</w>\nr ack\npd p</w>\nhan son</w>\nà¸ ĩ\nti ers</w>\nra r</w>\npan am\nin sky</w>\nsa hi\ntestam ent</w>\nasth ma</w>\nin her\nfisher ies</w>\nor der\nho we</w>\ngall on</w>\nep is\nsuz anne</w>\ndrow ning</w>\npaneli sts</w>\nðŁĺ ²</w>\në ¦\nal ach\ncommemor ative</w>\nat tribu\nðŁĳ »\nmo o</w>\nvisi onal</w>\nweek sary</w>\ngu st</w>\nak in\npoin te</w>\nee e\ndi spar\nni pp\ndent al\nst all\npi an</w>\nbor e</w>\nul ster</w>\ntic k\nir r\ntae hyung</w>\nmicro phone</w>\nbermu da</w>\nga ard</w>\nel er</w>\nplumb ing</w>\nhu gely</w>\nâļ« ï¸ı</w>\nrace way</w>\ncam bridge\nmar cel</w>\nburn ley</w>\nto ast\nholly wood\nfa sting</w>\nme red\nhib ition</w>\nca pped</w>\nbenef icial</w>\now ning</w>\ncont amin\narab ian</w>\nto on\ncap ac\nhul u</w>\nsm ir\nnutri ents</w>\nse in</w>\ngraph s</w>\ncon ditional</w>\nðŁĳ ħ</w>\nor ac\nplay in</w>\nnor the\ntor nad\nmar ian</w>\nju mbo</w>\nlex i</w>\nincredible india</w>\nroad to\nuk one</w>\nconfu sing</w>\nsp h</w>\nshan k</w>\npi ed\nmq m</w>\npositi vely</w>\nsher ry</w>\npath ways</w>\nconsi ders</w>\ntof u</w>\nargu ments</w>\nresil ient</w>\nche tt</w>\nwith dra\nter o</w>\nated ly</w>\nsw ana</w>\nhe b\nfli ght\nhar ley\ndecre ase</w>\nkind le\nbook shop</w>\n³ ï¸ı</w>\nmarty rs</w>\nsm ur\nmc cl\nconcer to</w>\nsti me</w>\nrejo ice</w>\napp lau\ncle ment</w>\nmer kel</w>\njai me</w>\nim mortal</w>\nisle of\nmar co\nyoutu ber</w>\nstal king</w>\nme too</w>\nst ack\nsp ouse</w>\nu st</w>\nlu v\nâļ¾ ï¸ı\neque strian</w>\nev ing</w>\nfl in\nnick name</w>\nthe big\nas ar\nst acks</w>\nwal ker\nbor a</w>\nkidnapp ed</w>\nhur ling</w>\nhumb old\nrec alls</w>\nco pper\nann is</w>\nse o\nmer ger</w>\nmu ir</w>\nad dy</w>\nðŁĴª ðŁĴª</w>\nbe x</w>\ncr acy</w>\ncon an</w>\ncongratul ation</w>\nmid st</w>\nâĻ ¬</w>\nfor bi\nop tic</w>\ncr ate</w>\ncrocod ile</w>\nmad agas\nsecur ing</w>\nast on\no gue</w>\nsavi or</w>\nsalis bury</w>\nlove it</w>\nfuji film</w>\ncast les</w>\nas st</w>\nar rows</w>\nsp acious</w>\ntr s</w>\npoly vore</w>\nprogre ssion</w>\nm ri</w>\nnel son\nbi m</w>\nindic ator</w>\no da</w>\npe pe</w>\nre signation</w>\ngu t\nsne aker</w>\nlog ically</w>\naz y</w>\nare lla</w>\nte aring</w>\njo shi</w>\nssion ism</w>\nq pr</w>\nmari ah</w>\np x\nble ed</w>\nmi an</w>\nmed ley</w>\nwe iss</w>\nker ry\ngat ory</w>\nat al</w>\nmadi son\nav enger</w>\nnab y</w>\npl and</w>\ngi les</w>\nfresh water</w>\nd ington</w>\nta j</w>\ndemonstr ates</w>\nn tv\nbul bs</w>\nsunday morning</w>\npe ake</w>\nsouven ir</w>\nwa h\nton nes</w>\nm kt</w>\ncomplex ity</w>\ncon den\nross i</w>\nb ing\ny ds</w>\nsu k\nn go</w>\nmid land</w>\nol y</w>\nlife is\nri pple</w>\nmo reno</w>\ndd ers</w>\ntu s\ná ĥ\nbou l\nx a</w>\nhol dings</w>\nwn y</w>\nshadowhun ters</w>\nke i</w>\nasp ire</w>\nm ous\now en\nso ak</w>\nskir ts</w>\nmoun taine\nstor ming</w>\nch rome\nri ots</w>\nsar ato\namaz e</w>\nless ness</w>\nnav ar\ncrit eria</w>\nra fa</w>\nindul ge</w>\nay er</w>\npor to\nnam o</w>\n........ ........\nyi elds</w>\nval le\nj h\nmac ron</w>\nsa ins\ndur ant</w>\ntra ilers</w>\nwo t</w>\nconfeder ate</w>\nsh rin\nid ol\nform ally</w>\nten e\nmotor cycles</w>\nthan g</w>\nno de</w>\nbang er</w>\ndal y</w>\np ats</w>\nenroll ment</w>\nau ctions</w>\nat al\nar bor</w>\nlo gos</w>\nde arest</w>\ntrans action</w>\ndom ingo</w>\nfle a</w>\nser mon</w>\nde ck\nsin cere</w>\nquesti oning</w>\njuli o</w>\nwas p</w>\npre tz\narmen ian</w>\nk ham\ninflam mation</w>\npicture sque</w>\nacci dental</w>\nfilm makers</w>\nðŁĺ ļ\nðŁĴ į</w>\nca sey\nso b\nyee zy</w>\ngood will</w>\nparag ra\nss ly</w>\nfe ather\ndy ed</w>\nassassin ation</w>\nna de\nb cs</w>\napp lies</w>\nfemin ine</w>\nfe u\next ent</w>\ndepu ties</w>\nl ack\npsy chic</w>\ngo i</w>\nkill ings</w>\npse u\nðŁ¤ ª</w>\nun c\nmar l\ntan e</w>\nmck enna</w>\nsur fer</w>\ninflu ences</w>\nfree way</w>\nhack ney</w>\nmal aria</w>\nel and\nte au</w>\nrema stered</w>\nØ ±</w>\nraz or\ngg y\ncor ro\nlak sh\nfla ir</w>\nhonest y</w>\nhoor ay</w>\nde pp</w>\nam c\nwedne sdays</w>\nq a\ned its</w>\n- $</w>\nse villa</w>\ndou bled</w>\nhuman ities</w>\nc cot</w>\nsom os</w>\nr ine</w>\naf a</w>\nsi oux</w>\nre construction</w>\nwel ding</w>\nth reads</w>\nam ish</w>\nencoura gement</w>\npo der\nbo ck</w>\nbal m</w>\np tions</w>\nstand up</w>\naccompli shments</w>\nguar ding</w>\nconvic tion</w>\nac ion</w>\nnapo leon</w>\ndepic ting</w>\natt ack\nsu i</w>\nwear able</w>\nâĸª ï¸ı</w>\npot ter\nesc ort</w>\nvis e</w>\nto ts</w>\nbo on\nevent profs</w>\nangu lar</w>\nwomenshi storymonth</w>\nbar row</w>\nsch i</w>\nac comp\nti k\nl end</w>\nkensing ton</w>\nwol fe</w>\nst acked</w>\ncra shing</w>\nexhi bit\nwing ed</w>\nsab rina</w>\nma sa\nk ms</w>\nalway s\net t</w>\npla sma</w>\ncounsel ing</w>\npick les</w>\nnfl draft</w>\nmr s\ninev itable</w>\ncoura geous</w>\nstaf ford</w>\nwriters life</w>\nho s</w>\ne j</w>\ngh yun</w>\ntrade mark</w>\nadri an\ninfluen cer</w>\ncoron ation</w>\nra ging</w>\nexplo red</w>\nusa f</w>\nexcep tion</w>\neu x</w>\ntan ker</w>\nsw ami</w>\npac ket</w>\nðŁĳ¨ âĢį\nf en</w>\nshe en</w>\na ero</w>\nj l\nre gal</w>\nnw t</w>\nau ster\nmeh ta</w>\nchar ge\na ste\nb ate\ninf eld</w>\nracec ourse</w>\ncollap sed</w>\nfle ece</w>\nz il\nal lie</w>\nalternati ves</w>\ngeor ges</w>\nðŁĵ į\nquir ky</w>\nfc b</w>\nnat geo</w>\nphilanthro py</w>\nbra i\nevery day\nðŁĲ °</w>\nach ers</w>\nja an</w>\nfin es</w>\nq i\nfisher man</w>\ndistin ct</w>\ngri mes</w>\nnation alist</w>\ncomm ence</w>\nro wn</w>\nâĢ ³</w>\nz ing\nf ter</w>\nhr w</w>\nbaro que</w>\nbl ender</w>\nkitt y\nhoo ks</w>\nc ited</w>\nw anda</w>\nconsen sus</w>\nreinde er</w>\nan and\nsupp ly\nme ds</w>\nv n</w>\nol ph</w>\nrat chet</w>\nshel don</w>\nsecur ities</w>\në°© íĥ\ncro m\nmosqu ito</w>\nj eric\nim mac\ndimen sions</w>\nâ ¤\ndi ssi\nsponge bob</w>\ndami en</w>\nsteven son</w>\njo anne</w>\ndel ish</w>\nyi kes</w>\nthan x</w>\nsurve ys</w>\npostpon ed</w>\nalco holic</w>\nal ised</w>\nðŁĻı ðŁı»\ndo ch</w>\nsen tim\nmered ith</w>\ncom pares</w>\nb ago</w>\nhappy days</w>\nmo ss\nãħ ĭ</w>\nne c\ngn ment</w>\nfrustr ated</w>\ncomb in\nri v\nec lec\ncol lo\ncompli ment</w>\nactor slife</w>\nct to</w>\nnic ar\nop hon\napar the\nman t\nja de\ntrol ley</w>\noptimi zation</w>\neye on</w>\neco logical</w>\nqui st</w>\nep he\nà¥ ĩ</w>\ncin co</w>\nappo ints</w>\nold school</w>\nc pr</w>\nbehavi oral</w>\nmin aj</w>\n:- (</w>\ntag ging</w>\nev al\njo aqu\nðŁĺ «\nha k\nde me\njama ican</w>\nso s\nhy att</w>\nhand book</w>\nlibr arian</w>\nhanni bal</w>\npump ing</w>\nch om\nf man</w>\nga i</w>\nhu ll\nrespon ders</w>\ngreen ville</w>\nn us\nvau gh\nðŁİī ðŁİī\nta xi\ngold berg</w>\nman tra</w>\nte ase</w>\nforbi dden</w>\nmetho dist</w>\nati vity</w>\n* ***</w>\nec t</w>\nmc gr\nĦ ëĭ\nse b</w>\namid st</w>\ndisapp ear</w>\nthy ro\nphili ps</w>\ner ina</w>\nv icious</w>\nstream er</w>\nmillion aire</w>\nma p\nstr ick\nhack athon</w>\ngh a</w>\ned ic\nmi ka</w>\npe ck\nill i</w>\nanto ine</w>\nar ca\nop tic\nma ure\nðŁĩ¦ ðŁĩº</w>\ncla shes</w>\nman ly</w>\nâĺ ģ\nal var\nand res</w>\nme i</w>\nel m\nww ww</w>\nal tered</w>\nl te</w>\nê¹ Ģ\nmo jo</w>\nfor rest</w>\nthal ai\nnon t</w>\nspee ches</w>\nacknow ledge</w>\nign ite</w>\nx factor</w>\nðŁ¥ Ĥ</w>\nmead ow\ndisru pt</w>\ndebu ted</w>\nscrim mage</w>\npharmaceu tical</w>\nfi dd\nfound ations</w>\nphilosop her</w>\net al</w>\npubli shers</w>\nbo ys\nc ke\nru gged</w>\nopti mism</w>\nre be\nphil harmon\nnar cis\nral lies</w>\nlu is\ngo blue</w>\nfol ded</w>\nun acceptable</w>\noptim al</w>\nli sa\npol aro\n+ .</w>\nen za</w>\nâĿ £ï¸ı</w>\nmon opoly</w>\ngrace ful</w>\ndair y\ndu a</w>\ndiffic ulty</w>\njudge ment</w>\no si\nmer sey\nflu x</w>\nnew found\nter ns</w>\ndimen sional</w>\nin vic\nal ba</w>\nam it</w>\nabudha bi</w>\nalger ia</w>\nautom obile</w>\nthe ad</w>\nlo tion</w>\nacceler ator</w>\nvac ant</w>\niti on\nlu f\nal ic\npl l</w>\nbla zing</w>\nba z</w>\nsen e\nðŁĳ ¼\nvilla ins</w>\ndirec tory</w>\neis en\nto ck</w>\nbroch ure</w>\nri pp\nhb d\nzayn malik</w>\nnic he</w>\nlo lol</w>\ncertific ates</w>\nmor se</w>\nfac up</w>\nx ham</w>\nun wanted</w>\nim ports</w>\ncarne gie</w>\nfan sign</w>\nmo u</w>\nr alph\ndestroy er</w>\nsw ing\ntrek king</w>\ncili ation</w>\npit bull</w>\ng aps</w>\nho well</w>\ndefin itive</w>\nmc le\nf ps</w>\net z</w>\nbol ly\nlyn n\ngan o</w>\nat ure\nfur suit\nco il</w>\nna v</w>\nbut ts</w>\ntro jans</w>\neu re\nen ko</w>\nsch umer</w>\nhorri fic</w>\ninstall ment</w>\nbr b</w>\nsubur bs</w>\na bel</w>\nvi r</w>\nde sh\ncun ningham</w>\nðŁĲ »</w>\nspan n</w>\nsch we\nke mp</w>\ntr u</w>\nste alth</w>\nqu es\nle w</w>\ndeli ghts</w>\nko ch</w>\nhu mili\ncr iti\nil t</w>\nsp ells</w>\nmi ley\ncar ic\nðŁį ´</w>\nlc fc</w>\nsubstitu te</w>\noun g</w>\n? !!</w>\naf fir\npredic table</w>\nclass of</w>\ner r</w>\ncy press</w>\nchand ra</w>\nage ing</w>\n__ __</w>\nther land</w>\ndon caster</w>\nel in\nyo shi</w>\nsail ors</w>\nhar ris\njo anna</w>\nniger ians</w>\nh ers</w>\npla gue</w>\npro cra\nk no</w>\ncan ton</w>\nbusine s\nun h\npra kash</w>\nc in</w>\nbow en</w>\nco ating</w>\nm als</w>\nbe gging</w>\nsmith son\nponti ac</w>\nsp ies</w>\ndam ian</w>\npl ine</w>\nund ant</w>\nal ta</w>\none ss</w>\nshame less</w>\nda q</w>\nbb m</w>\nwal es\nstam pede</w>\nser um</w>\nÙ Ĩ</w>\ncataly st</w>\nx n</w>\nab sc\nfree zer</w>\nch un</w>\nari os</w>\nmc cre\nfore head</w>\nhe ars</w>\ndamas cus</w>\ntac oma</w>\nardu ino</w>\nencoun ters</w>\nstan ton</w>\nlg b\nab as\n\" ..</w>\nke te\ndrac ula</w>\nele m</w>\ng ne</w>\nzepp elin</w>\nla brador</w>\npul p</w>\nop tional</w>\nor n\nrussi ans</w>\nsan itation</w>\nhil ary</w>\netsym ntt</w>\npen alties</w>\nau st</w>\nig ans</w>\nolympi an</w>\nmedic aid</w>\nvers ace</w>\nva pe\nre stra\npe ep\nsexi est</w>\nst alls</w>\ndi le\nthe a</w>\npunjab i</w>\npupp y\ntuesday motivation</w>\nðŁĵ ļ\nthe flash</w>\nroc ket\nmo dest</w>\nchihu ahu\non na\nk sa</w>\nhur dles</w>\nca ve\nfail ures</w>\nsp lit\nbo ho</w>\ngur l</w>\ndisappo int</w>\nho ward\nnug get</w>\nfran z</w>\nstal ert</w>\nkaz akh\nfor getting</w>\nsch ri\nag ate</w>\nam at</w>\neve rett</w>\ndu et</w>\nveter inary</w>\njuli an\nch ills</w>\nbra ve\nghost busters</w>\nlan do\ngre ets</w>\nprofit able</w>\nd Ã©\nti r\nze e\nom en</w>\npd x\ngray son</w>\nhar i\nfix es</w>\nstab bing</w>\nswim mer</w>\nsymb ols</w>\ncompli ments</w>\npo se\nfunc tioning</w>\nth nx</w>\ngi r</w>\ncorpor ations</w>\nbar low</w>\nlo e</w>\noff season</w>\ndistin ctive</w>\nmarvel ous</w>\nnik on\nenri que</w>\nky u</w>\nja ws</w>\namo to</w>\nlom bar\ntravel blogger</w>\nfa h\nouri sm</w>\ntri stan</w>\nso e</w>\nce ase</w>\nðŁı ħ</w>\nz ac\nmck enzie</w>\ntaxpay ers</w>\nswim suit</w>\nbl o</w>\nles ley</w>\nkan sas\nw ks</w>\nki el</w>\nprovo king</w>\nmy les</w>\nstr ing\nkangar oo</w>\ngalac tic</w>\nfif th\ns ke</w>\nwe ir</w>\nll is</w>\nmat ory</w>\nðŁĩ ¿\nun ci\nre productive</w>\nroo ting</w>\nti des</w>\ngad get</w>\n.... ......</w>\nalex ander\nbow ler</w>\nscre w\napo log\neri ka</w>\nwal ters</w>\nshet ty</w>\nlan e\nban ter</w>\nas ant</w>\nme so\nv ain</w>\n\" \"\"</w>\nus i</w>\nfer din\naccomp lish</w>\nman sfield</w>\nbom bar\ncollabor ating</w>\ncla p</w>\nit ure</w>\ns da</w>\nsmo ky</w>\nna k</w>\nim person\ncar la</w>\ncom ra\nbur gl\nlo co</w>\nti es\nin hi\ntrac ey</w>\nse is\ndiss er\nrr rr\ndra y\nprote ct\ncor ona</w>\nhun ger\nck en\nc eli\ntrou bled</w>\npredat ors</w>\nfic tional</w>\nshav ed</w>\nriche st</w>\nmetab oli\nful ham</w>\ngro oming</w>\nmono chrome</w>\nwa sting</w>\nas co\nast e</w>\nti sta</w>\nremedi es</w>\nung soo</w>\nsouth end</w>\nperman ently</w>\nbu mble\nprocra stin\nident ical</w>\npractic ally</w>\nma scul\nsu ke</w>\nassu red</w>\nval erie</w>\ndevi ant\ngrizz lies</w>\nthi er</w>\npur a</w>\nne pal\nnot ts</w>\nbil ateral</w>\nspo il</w>\ncar mel</w>\ncine matic</w>\nph l</w>\nni fty</w>\nma o</w>\nhypo cri\nla ser\npan try</w>\nmathemat ical</w>\nel isa\ncoordin ation</w>\nbel mont</w>\na it\nradi ant</w>\nbo iler</w>\nman g\nf ag\ncr c</w>\nh ams</w>\nbr in\nâ¬ĩ ï¸ı\nfamil ia</w>\nâĿ £</w>\nsab er</w>\nru pert</w>\ngg an</w>\nrit z</w>\nmic h\nsal ford</w>\nle vi\ngra l</w>\nðŁĴ ¤</w>\nn ino</w>\nce d\nbusiness man</w>\nul tr\nsim ply\ncompre ssion</w>\npa ins</w>\nhal t</w>\në°©íĥ Ħ\nlandsc aping</w>\nn f</w>\ncroo ked</w>\ner d</w>\nitt in</w>\nddle ston</w>\nsur passed</w>\nino a</w>\nda g</w>\nbl en\nexten ding</w>\nat ing\nal gae</w>\nball er</w>\nu mar</w>\nsnoo ker</w>\ncol lu\nflo wn</w>\nthu b</w>\nridic ulously</w>\nki sh\nop le</w>\ndi re</w>\nas ser\nari sto\nsc iss\nh ating</w>\ntrou ble\nsyl via</w>\nsuc cul\nplo ts</w>\nsincere ly</w>\nal er\nlaure ate</w>\nbr ack\natt n</w>\nrif les</w>\nme to\ncollec tible</w>\ncu omo</w>\nconte stant</w>\nconsist ency</w>\nant z</w>\nrang es</w>\nabig ail</w>\nde b</w>\nmini ster\ngrow ers</w>\nan oo\nhoo ver</w>\ndream er</w>\nnu cle\nresear ch\nmi y\nsha hid\nma v\nd honi</w>\ncin i</w>\ndo j</w>\nhin dus</w>\npart ying</w>\ndal i</w>\nalon so</w>\ninform al</w>\nclark son</w>\nit ton</w>\nki an</w>\ncit yo\nmor i\nla sted</w>\nas pen</w>\nlibr ary\nsusp ici\nqu at\nden ial</w>\nfol der</w>\nch ori\nswee ping</w>\neni x</w>\nðŁį Ĥ</w>\nØ Ń\nnas car\nhandmade hour</w>\nmou l\nheat wave</w>\nem er</w>\nexam ine</w>\nib n</w>\ngr ind\npo v</w>\ntion ist</w>\nm bo\nshe ila</w>\nintegr ate</w>\nom es</w>\ntake away</w>\ncer v\ncon nie</w>\ntic ket\nce led</w>\nbi en</w>\nvisu ally</w>\nmadagas car</w>\nsor ry\ngu i</w>\npark run</w>\ntra its</w>\nla be\npois oning</w>\nà¥ Ģ</w>\nvi able</w>\nbohemi an</w>\ndenti stry</w>\nbad os</w>\nspr outs</w>\nmask ed</w>\nte ddy\nðŁĺ ·</w>\nsa f</w>\nsa as</w>\nji ang</w>\nti ght\nspe aker\nwithdra wal</w>\nbc n</w>\nas signed</w>\nclass rooms</w>\nfle ming</w>\nðŁĴ «\nsuper girl</w>\ntot als</w>\ntable top</w>\ne books</w>\nhorizon tal</w>\ncra z\nflu sh</w>\nj ard\nc dc</w>\ner son\nãħ ł</w>\ngreen wood</w>\nni h</w>\nco x\nad a\nlit re</w>\ngo ing\nv icky</w>\ncur ved</w>\nlou ie</w>\ngra ins</w>\nhy e</w>\nlon ge\nreme dy</w>\ntra inee</w>\nsan jay</w>\nsuper stars</w>\nma ser\nman u</w>\ns age\nwh l</w>\nðŁĺĤ ðŁĺŃ</w>\nðŁĳį ðŁı»\nm sd\nen z\nrab hu</w>\nj oo\ngh u\nac er</w>\ne po\nresurrec tion</w>\njustice for\nbl ended</w>\nmo da</w>\navalan che</w>\nfrance sco</w>\nre spective</w>\ng s\nye ast</w>\nwel ch</w>\ndevo tion</w>\nge tin\nathe ism</w>\nam ic\ncarol yn</w>\nlo c</w>\nld nont</w>\nave c</w>\nus da</w>\nle gged</w>\nbra very</w>\nb lower</w>\ncow boy\nhe h</w>\nsti ble</w>\nbuff al\nchann el\nrun chat</w>\nâĺķ ï¸ı\nide ology</w>\nbest seller</w>\ny oo\npe anu\nbon ne</w>\nfel ic\nedi son</w>\nfr actu\nnaren dra</w>\npp ets</w>\nseym our</w>\nri viera</w>\nhe ctor</w>\nnecess arily</w>\nbi anca</w>\nsoci eties</w>\nthe best</w>\nw g</w>\nsent ences</w>\nwin k</w>\nvacc ines</w>\npal ooza</w>\njam ming</w>\nas f</w>\nmp us</w>\nagre ements</w>\nec k\nba c</w>\nhon ore\ncom pul\nwild cat</w>\nim posed</w>\nyo ga\nhud son\ncan celed</w>\nl ich</w>\nfu zzy</w>\nes que</w>\nch uk\nw vu</w>\nse k</w>\nfli pping</w>\nr hon\nwi shed</w>\nwh a</w>\ncap ability</w>\nlen ovo</w>\nìĨĮëħ Ħëĭ\nvi vo</w>\ntv d</w>\nnor a</w>\nsil k\npas adena</w>\nyo semite</w>\nvalu ation</w>\nclo cks</w>\nu ber\nmr c</w>\ndar kest</w>\nau bre\nss o\nbell y\nwrest lers</w>\nkill in</w>\nlou der</w>\nbuck ley</w>\nge el\nad on\nun s</w>\nappe aling</w>\nðŁĳ ¯\nsemit ism</w>\nlist ens</w>\nfit z</w>\nãĥ³ ãĥ\nny lon</w>\nar ty</w>\nseem ingly</w>\nhal a</w>\nsu ited</w>\net y\nshe ds</w>\nmu ffins</w>\nap ric\num ents</w>\nu ta</w>\njam mu</w>\nchelse afc</w>\nstar z</w>\nyo ko\nroo t\nclean sing</w>\ndi ar\npione ering</w>\nihear tradio</w>\ndig iti\nfin dyour\ncan o</w>\nðŁĴ İ\nz ol\nspac ecraft</w>\nsix ers</w>\nmoi sturi\nb ile</w>\nti sts</w>\nhor ton</w>\nrang ing</w>\ncolum bi\nmete oro\nsenti ment</w>\nep l</w>\nfoo th\ntext book</w>\ndrain age</w>\nr ly</w>\nsc ue</w>\nimran khan\nðŁĴ ¸</w>\nmargar ita</w>\ned dy</w>\npredic ts</w>\ngamer gate</w>\nadvis e</w>\ngrowth hacking</w>\nlove you</w>\nug and\nv f</w>\nbeng hazi</w>\ns later</w>\nne wor\nch el</w>\nindependence day</w>\np np</w>\ncul len</w>\nhoo dies</w>\nnum bered</w>\nbrit t</w>\nt sa</w>\nkl tu</w>\ns ages</w>\nmom o</w>\nonep lus</w>\ncol l\ngu ts</w>\nw ta</w>\nmesm eri\nenh ancing</w>\nchiro prac\nj is\nteen agers</w>\nm one</w>\nconstell ation</w>\nsweep stakes</w>\ne ze\nslovak ia</w>\nla ye\npear ce</w>\nwa ver\npo gba</w>\nk ron\nsur geons</w>\nmar x</w>\nti d\ngg a</w>\ndesc end\np ours</w>\nupri sing</w>\nwal la\nsab bath</w>\nbachel ore\nmack in\nk am</w>\npeter borough</w>\nhor a</w>\nðŁĮŁ ðŁĮŁ\nthink big\nr j\nhy drau\nsp al\nunivers it\nðŁı ī</w>\nmail online</w>\nleague of\nten ants</w>\nw ally</w>\nlan ce\nheav ens</w>\ndd r</w>\nbol ts</w>\nam ir\ni phone\nci gar\nen du\nre i</w>\nel abor\nr inging</w>\njohn son\ncharacteri stics</w>\nsal oon</w>\nalgori thms</w>\ntal kin</w>\nm tn\ndi ve\nregion als</w>\nff ice</w>\nhat i</w>\ndeviant art</w>\nso tto</w>\nshir o</w>\nl ama</w>\nk we\nf aded</w>\npor ting</w>\ntu mmy</w>\nest ates</w>\nbuen os</w>\nðŁ¦ ģ</w>\nbeli ever</w>\npen etr\ndar n</w>\nsp ite</w>\ncan opy</w>\nfashi oni\nt illa</w>\npet als</w>\neli jah</w>\nbra wl</w>\nmarty r</w>\në°©íĥĦ ìĨĮëħĦëĭ\nmid town</w>\neric h</w>\nd apper</w>\nsm town</w>\nme gam\nww w\nle le</w>\non s\ncat fish</w>\nfir th</w>\nfossil friday</w>\nball park</w>\nth aw\npot ent</w>\nilli e</w>\ncre ep</w>\ncar p</w>\nso ap\ngun dam</w>\ninfe c\nyy yyy</w>\nà¤ ¨</w>\nz ag\nrit t</w>\ncalcu lator</w>\nbo ca</w>\nok o</w>\nto ad</w>\nthreat en</w>\nrefin ed</w>\nolym pic\naccompli shment</w>\nbacter ial</w>\na ji\ntat um</w>\nfeli z\nshe ed</w>\nj at\nth ic\njam al</w>\nðĿ ĺ\nlin a</w>\nðŁĲ ¯</w>\njo king</w>\nyot po</w>\npin ch</w>\nak ron</w>\nher b\nmotiv ation\nli a\nho stage</w>\ncre ek\ngam ble</w>\nruss ell\npatt i</w>\nfo tos</w>\nc pc</w>\nbro ken\nback the\ncla ys</w>\nu mm\nstock ton</w>\nmat ernal</w>\nÃ¼ r\nla kel\ncent ury\nbe k</w>\ninfe cted</w>\nà¸ ¡\nsmack down</w>\nman ned</w>\nta hoe</w>\nsm es</w>\nbas a</w>\nsu la</w>\naugu sta</w>\n. *</w>\nrohing ya</w>\ngre ed</w>\ncounsel or</w>\nsilhou ette</w>\ngra vit\ncla use</w>\n' -</w>\nbo bc\nocca sions</w>\nnow adays</w>\ndic tat\nbe ard\nn ally</w>\nbrigh test</w>\nkab ul</w>\ninc india</w>\ndhan ush\narchae ological</w>\nche ape\nmizz ou</w>\nd hi</w>\nov ski</w>\nbax ter</w>\nasse mble</w>\nÃ ¢\ngi gi</w>\nac am\nwis ely</w>\nhaz ard\nnorth ampton</w>\nâľĪ ï¸ı\nme th</w>\nbla sting</w>\nre unite</w>\nmu lus</w>\nali zes</w>\nt read\nmil a</w>\ned ward\nko va</w>\npe sto</w>\nðŁĳ ¶\nvit z</w>\nhydrau lic</w>\nrefurbi shed</w>\nmo tel</w>\nisab ella</w>\nhom me</w>\nsever ance</w>\nuph ol\nmis erable</w>\nf ari\nlat ter</w>\nef er</w>\ncrack ers</w>\nes l</w>\nac io</w>\nyy j</w>\nin an</w>\nec b</w>\nz ind\npan as\ntru cking</w>\nre ed\nsh aker</w>\nburge ss</w>\nem pire\nag nes</w>\nn ington</w>\nart works</w>\nfr s</w>\nti le\nbi ome\neu n</w>\nch ong</w>\nameric ana</w>\ngod father</w>\ngo blin</w>\ni shi\n! ).</w>\ntemp ted</w>\ngen omics</w>\nmand ate</w>\nck y\nðŁĴĻ ðŁĴĽ</w>\nsom ali</w>\nbr andy</w>\nin ven\nspoke sperson</w>\npc b</w>\nyu an</w>\nh g</w>\nfa z\nstarwar s\nro wan</w>\nblue grass</w>\ndon g\nd day</w>\ntrin idad</w>\ner ton</w>\nban ning</w>\nre tention</w>\ncu red</w>\ntober fest</w>\nre set</w>\nwe is\ndeta ched</w>\nbehindthe scenes</w>\nimmun ity</w>\nph a</w>\nbra y\nðŁĳ ½</w>\nran cho</w>\nram say</w>\nest onia</w>\nnd tv</w>\n] .</w>\ncab aret</w>\ntar o</w>\nd v</w>\nshow cases</w>\nplu m\nðŁĳ ¸\nson oma</w>\npre pa\nmemor ab\ne stu\ndrive way</w>\nu les</w>\nmagn us</w>\nx r</w>\nnn n</w>\nmuch as</w>\nen ge\nstre amed</w>\nfore stry</w>\naudio book</w>\ntro y\nreck less</w>\nkil om\nru ler</w>\nra k</w>\nproce ssion</w>\ni ons</w>\npo ole</w>\nnoc tur\nwh s</w>\nfarm house</w>\nper a</w>\npar me\nhypocri sy</w>\ns ics</w>\nv ant\ncas k</w>\nholi stic</w>\nau st\nÐ ¿\nin do\nðŁĳ© âĢį\ndi so\ndisp atch</w>\nol sen</w>\nmake it\nen nis</w>\ncent re\nar range</w>\nðŁĮ ¼</w>\nsal ted</w>\nea siest</w>\nf ate\nreg atta</w>\nmo zz\nac an</w>\nsin i</w>\ng ically</w>\nch ops</w>\nchick en\nwork in</w>\nha gg\ninvol ve</w>\nwee ds</w>\nbook day</w>\nwake up\nky r\nmichel in</w>\nfu ss</w>\nre juven\nvac ancies</w>\nincar cer\nm st</w>\nsc ents</w>\nsovere ign</w>\nkick er</w>\nà §\nbo d</w>\nâĢĶ ></w>\nsa h</w>\nmob il\nshrop shire</w>\noph one</w>\ndress er</w>\nmis suni\nhep burn</w>\ni mo\nfoli age</w>\ndiagno stic</w>\nas san\ncycl ing\nguil t</w>\nc sa</w>\npuertor ico</w>\nwin elover</w>\nwake field</w>\ndo ggy</w>\nk he\npa pp\nco g\nal lot\ncu ck\npoe tic</w>\nmi o</w>\nre vit\nmag ician</w>\nç ¥\nant enna</w>\nwest wood</w>\nmber g</w>\nlux e</w>\noat meal</w>\nØ ¬\nte at\nffe e</w>\nsear ches</w>\nl ly</w>\nplu to</w>\nel on\nlet tering</w>\ninno cence</w>\nfa i</w>\nann on</w>\ntelang ana</w>\nma it\nneu ral</w>\ncan ni\nar oma</w>\na stor\nfe x</w>\nco cac\nmon etary</w>\nf ent\nun sure</w>\n' @</w>\nindi rec\nteh ran</w>\nisol ation</w>\nli bs</w>\nmake up\nmerce des\nff y\nhe tero\nde o\nsco m</w>\ncur sed</w>\nveteran sday</w>\nfranken stein</w>\nshre ws\nde co\nge ese</w>\nlefto ver</w>\nha did</w>\nvari able</w>\nacade mics</w>\ncarol in\nunder going</w>\nvari ation</w>\nna h\nssi er</w>\ngamer sunite</w>\npur suing</w>\nemer ged</w>\nll ers</w>\ncontrol ling</w>\nro aring</w>\nmete or\nvol t</w>\ndaw gs</w>\nbe aver\nis life</w>\nbathro oms</w>\naci onal</w>\npre vent\nlake district</w>\nin als</w>\ny ani</w>\ngra bbing</w>\nsac ks</w>\nle z</w>\nsw ay\nk ool</w>\ntime s\nklo pp</w>\nla de</w>\ncon cord</w>\nresul ted</w>\nrevi ve</w>\nrecon ciliation</w>\nol and</w>\naz z</w>\ngir o</w>\nmand arin</w>\nde en\nnutriti onal</w>\nis coming</w>\nvan i</w>\naw www</w>\nder ived</w>\nlove your\nstop the\nshou ting</w>\nnov ak</w>\nðŁĻĮ ðŁı¾</w>\nlo af\ndispla ying</w>\nsunday with\nma guire</w>\nch eri\nðŁı Ł</w>\nre match</w>\nqu ic\nÚ ©\ny in\nðŁĺ ¹\nili ve</w>\nz ip\nour ke</w>\ndown loads</w>\nsw at</w>\nmissi ss\ncare rs</w>\nt ment</w>\nproper ty\nhahahaha haha</w>\ngi bbs</w>\nsur rey\nar ise</w>\ntic ism</w>\nsti a</w>\nir ling</w>\nfro g\nco se</w>\nbas sist</w>\nfore ig\nlea u</w>\npil lows</w>\nhol la</w>\neli e</w>\ndisclo sure</w>\npeanu ts</w>\ninte ch</w>\nww c</w>\nplun ge</w>\ntrium ph\ncor i\nsli ppers</w>\nðŁĻı ðŁĻı</w>\nneutr ality</w>\nma re\nhair y</w>\ngang ster</w>\nhu mming\ncust ard</w>\nmer lin</w>\nale a</w>\ns by\ndam p</w>\nmo han\nver bal</w>\nj st</w>\ngu tted</w>\nb jor\nun finished</w>\nðŁĩ¯ðŁĩ µ</w>\nun happy</w>\nâļ« ï¸ı\nby pass</w>\nat su</w>\nfis cher</w>\nsa v</w>\nafric ans</w>\nre use</w>\nmid way</w>\ndemo lished</w>\nger rard</w>\nher cules</w>\nÄ Ł\nmedic ines</w>\ncl icking</w>\nsur round\njo ong</w>\nwav ing</w>\ntri bes</w>\nwet lands</w>\noffici el</w>\nargu ing</w>\nl le\ndo va</w>\nsu zy</w>\nclub house</w>\nne gro</w>\nob tain</w>\nga o</w>\ngl ance</w>\nassi st\nch os</w>\nãĤ ¢\nâĺ ķ</w>\nadri d</w>\noccur s</w>\nst ans</w>\npar don</w>\nlivel i\nemplo yed</w>\nre visit</w>\nff xiv</w>\nbb le\nne aring</w>\nmin er</w>\nðŁĺ ¹</w>\ngiov anni</w>\nup to</w>\nmar vell\nmar se\nto wels</w>\ncb n</w>\nengine ered</w>\ny elling</w>\nspart an\nsi ans</w>\nðŁĻĮ ðŁı¼\nse v\ncoyo te</w>\nsta di\nt cm</w>\napp en</w>\nshenan igans</w>\nopen access</w>\nso aked</w>\nma squ\nle vine</w>\nstro kes</w>\nl k</w>\naparthe id</w>\nhipho p\nchar don\nmay may\nha asan</w>\nstri pped</w>\nfr o</w>\nscri ption</w>\nf ton</w>\nh f\npri sons</w>\nmarsh al</w>\nķ ãĤ\nan cho\ncom promise</w>\nclassi fication</w>\nbuzz feed</w>\nbblo ggers</w>\ndeser ving</w>\n) /</w>\ns way</w>\nob o</w>\ncamp ers</w>\npoder nfamily</w>\np oured</w>\nbri e</w>\nsquir rels</w>\nse ize</w>\n: #</w>\nle k\nti mb\nst acy</w>\nnas daq</w>\nrepe atedly</w>\nbr at</w>\nmi ghty\ncompetit or</w>\nmah one</w>\nde si</w>\no ke\nbm w\nshi e</w>\nf cb\ncheape st</w>\nminim alist</w>\npar amount</w>\nn ate\nhar as\ninsan ity</w>\nlat eral</w>\nment ality</w>\nmo zam\nta pped</w>\nyad av</w>\nu sp\nb way</w>\nthe od\nbil t</w>\nra ids</w>\nem press</w>\nadap ted</w>\npat ron\nnut shell</w>\nag ra\nbe aded</w>\nsundaywith marsha</w>\nvi king\nproce ed\nmain tained</w>\nthinkbig sundaywithmarsha</w>\nsn es</w>\nmus ica</w>\nto wer\nch ab\nbo k\nsm t</w>\ninsul t</w>\nharve sting</w>\nwindo w\nru ther\nbe ige</w>\ndec al</w>\nindic ate</w>\nma iling</w>\nri ft</w>\npo le\nander son\nch oral</w>\nsp ride</w>\nl ili\nev elyn</w>\nimrankhan pti</w>\n.... \"</w>\nke red</w>\nun dp</w>\nwater falls</w>\nse ars</w>\nle mans</w>\nworld series</w>\nri el</w>\nani e\napp ar\nscore rs</w>\nlam p\na than</w>\nphys icians</w>\nqu inoa</w>\nrefu sing</w>\nvu itton</w>\nunle ash</w>\ns la</w>\npat i</w>\nshou ts</w>\ninten tions</w>\nfo amed</w>\neurope an\nneighbor hoods</w>\nme er\nman son</w>\ndu h</w>\nbr at\ncon es</w>\nbow l\nkazakh stan</w>\nà¤ ¿</w>\nin appropriate</w>\ndel hi\nketch up</w>\nful ton</w>\ns ys</w>\nconsul t</w>\ngar field</w>\nto go</w>\nf ml</w>\nf led</w>\nb ds</w>\nfacilit ate</w>\nree bok</w>\nselfi e\nelev ate</w>\nactiv ate</w>\nbi ble\nca wx</w>\nb ys</w>\ncam ille</w>\nsy ou\nsk ool</w>\nher t\nw bc</w>\nple dges</w>\nrecor der</w>\npo sh</w>\nac re\nso aking</w>\nmat il\nv sco\nshoot ings</w>\npla r</w>\ne con\nðŁĻĮ ðŁı»\nrashi d</w>\nu bi\nðŁ¤ ¤</w>\nsw inging</w>\nwi pe</w>\nrap tor</w>\nm su\nmusic video</w>\ndur ham\nat tic</w>\napar ty</w>\nfe tus</w>\nactiv ation</w>\naa z</w>\nmotiv ate</w>\nðŁĴķ ðŁĴķðŁĴķ</w>\nj al</w>\nà¤ ®</w>\nag on\nsche er</w>\nstal ker</w>\nfo ster\naz zo</w>\ntele gram</w>\nvi gor\ns laugh\nscreen shots</w>\nentrepre neu\nkri stin</w>\ninten tion</w>\nch illi\nfr action</w>\ndon a</w>\nge a</w>\ntc u</w>\ns ite\nla k</w>\nem il\nd nt</w>\nbor o\nwil kinson</w>\nre cu\nato day</w>\nt anya</w>\nbl anco</w>\ncd n</w>\nbrilli antly</w>\ng cc</w>\nac c\nevacu ated</w>\nther ine\nden ny</w>\ncait lin</w>\nshe pard</w>\npou ch</w>\nhand held</w>\nsou theastern</w>\nha a</w>\nÃ ´\nre solutions</w>\nled ger</w>\nsr in\nr ar\nshat tered</w>\nchim ney</w>\nim with\nmete or</w>\nhand led</w>\nra ke\ntown send</w>\nen han\nshi py\nduc t</w>\ntw x</w>\ninflam matory</w>\nwar hammer</w>\ntheat rical</w>\ngro s\nsk ar</w>\nsco tty</w>\nni el</w>\ntit o</w>\ntin i</w>\nconne ction</w>\n_ .</w>\ngoldeng lobes</w>\nsha q</w>\nðŁı ³ï¸ı\nhall way</w>\nfron ts</w>\neffec tiveness</w>\ngla ston\nd hs</w>\nex pi\nto h</w>\nc pl</w>\nsc s</w>\nre o</w>\nha g\nresemb lance</w>\nhor an</w>\nabu sive</w>\nqu er</w>\nvirtu e</w>\ncho lester\na q</w>\nshan e\nm ce\ncarri ers</w>\ndi stress</w>\nre wind</w>\nÂ ¡\nvoo doo</w>\nint act</w>\nann o</w>\nðŁĺ ¤\npi led</w>\nadi a</w>\nãĥ ³</w>\nen ow</w>\ndi gs</w>\nlight ly</w>\ngoo fy</w>\nturb ine</w>\ngovernor s</w>\ncon te</w>\nre open</w>\npa h</w>\ni ve\ncra fting</w>\nswee ps</w>\njo di</w>\nan de\nzu cker\nkaw aii</w>\no ko\nv ai\nout line</w>\nkri sti\nts n</w>\ninsp o</w>\nqu int\nfil thy</w>\nlyn ne</w>\nlisten ers</w>\ndepar ting</w>\nor d\nt weed</w>\n, &</w>\nale k\nsel fish</w>\nnor ther\nrecogni zes</w>\ni ps</w>\nbe s\na ed</w>\nw ills</w>\npe at</w>\nsurround ings</w>\nmon uments</w>\nais le</w>\nbe cker</w>\nla v</w>\nquant ity</w>\nv ah</w>\nhelicop ters</w>\ntu cked</w>\nalv arez</w>\nsha pe\no bey</w>\nad diti\nroad side</w>\nm ite</w>\nbl ers</w>\nep age</w>\nj au\nignor ant</w>\nb ins</w>\nlu lu</w>\nx o\nc fo</w>\nee eee</w>\napprentice ship</w>\nshef fiel\nto i</w>\nho k\nfaken ews</w>\ndeplo y</w>\naid an</w>\nhusk ers</w>\nãĢ İ</w>\nwest brook</w>\nmi ster\nconfi gur\ncar r\nfic a</w>\nproceed ings</w>\nha w</w>\nste ak\nmur derer</w>\npay day</w>\na jo</w>\np vc</w>\ndon ates</w>\nbi af\nnom nom</w>\nbe it</w>\nk ali</w>\nx rp</w>\nahmed abad</w>\nse mic\nche y\nx tra</w>\nan twer\nhead lining</w>\nsqu ares</w>\nroun ded</w>\nflu ore\nbol d\ndisa sters</w>\nam oo</w>\ngener ic</w>\ncran es</w>\nbrief ly</w>\ngi g\nauster ity</w>\nanticip ation</w>\nfor ti\ntreas urer</w>\ncann y</w>\nce cil\ndete cted</w>\ncheck list</w>\nà¸ §\npam ela</w>\nbar bados</w>\nan field</w>\nhear ty</w>\ntx lege</w>\nperen ni\narro g\ning ram</w>\nâĹ ı</w>\nty ne\nspo on\nr ation\nam ba</w>\nm be</w>\ncam el\nh hs</w>\nyork shire\nreflec tive</w>\nfre aks</w>\nto k</w>\nju do</w>\npartic les</w>\ndu bs</w>\nban jo</w>\naccred itation</w>\nprover bs</w>\nover dose</w>\ninte gral</w>\ngu ang\nmc s</w>\nsuper car</w>\naf b</w>\nal vin</w>\nail s</w>\nx tre\nst aging</w>\ntw ent\nrabb its</w>\nmar o\ninste m</w>\ndol l\ncr ay</w>\nsant ana</w>\nble ach</w>\nmini ons</w>\nche ap\nman t</w>\ndi vers</w>\ncatal onia</w>\nlo is</w>\nmat ri\ncou gar</w>\nkay ak</w>\ne gre\np so\na ia</w>\nå ®\nchar lton</w>\ntr acked</w>\nsc ari\npe tt\nf wd</w>\nx in\ngra vel</w>\nbr ic\nbigg boss</w>\nar den</w>\nhu gging</w>\npal ms</w>\nst v\nli mb\nthe movie</w>\nhandic ap</w>\nri me</w>\nz ai</w>\nstu b\nindi a\nlithu ania</w>\nrhy th\np ita</w>\nmaced onia</w>\nhigh ered</w>\nbrid get</w>\nschwar z\nske let\nhi kes</w>\nant arctic</w>\nc ps</w>\nmash up</w>\nÐ °</w>\nn ell\nchand ra\nhe ir\nan us</w>\nsher idan</w>\nmi mi</w>\nmuse u\nbec ca</w>\nan ir\nbar rie</w>\ndioce se</w>\ncompar able</w>\nðŁı³ï¸ı âĢį\nyuk on</w>\nme p</w>\nhor mon\nmer ic</w>\nal f</w>\ncon quered</w>\nchrist church</w>\nðŁĴĻ ðŁĴĻ</w>\nhazard ous</w>\npoo h</w>\ncont ing\nretro spective</w>\npar ame\nna ir</w>\ncon sor\nho tra</w>\nastoni shing</w>\ncater pillar</w>\nu man</w>\nti sm</w>\nt vs</w>\nserv ic\ncroy don</w>\nmor ales</w>\nc g\ncu m</w>\nte ur</w>\nscan ada</w>\ns all\nmagno lia</w>\nel ise</w>\nth our</w>\nà® ¿</w>\nag omez</w>\nphel ps</w>\në°©íĥĦìĨĮëħĦëĭ ¨</w>\nwh os</w>\nweav ing</w>\nsi sd</w>\npro poses</w>\ncro ws</w>\npre sale</w>\neconom ies</w>\nbernar do\nsha hid</w>\nair show</w>\nmc cann</w>\nhor ticul\nnr l\ndu el</w>\nmongo lia</w>\ntou lou\nrequi rement</w>\nstruc tured</w>\ned i</w>\no lives</w>\nhe a\ncu ter</w>\nÐ º\nenthusi ast</w>\nharri et</w>\ndomin ion</w>\nsub mer\nðŁį ĥ\nsa ab</w>\nnes burg</w>\nmo ff\ndef ended</w>\nbur t</w>\nrewar ded</w>\ngold man</w>\nop tics</w>\nkhali d</w>\nhouse holds</w>\nbuc kets</w>\nce cil</w>\nche ss\nsubstan tial</w>\nef l</w>\noper ation\nevalu ate</w>\nst n</w>\nrece ssion</w>\nl ll</w>\ntom as</w>\ntru ths</w>\nak bar</w>\ns words</w>\np act</w>\nembarra ss\nha o</w>\nay urve\nscrip ture</w>\nny cc</w>\nop t</w>\ndi ameter</w>\nsc ented</w>\norgani zers</w>\nre lat\nha e</w>\ndream ers</w>\nde se\nðŁĮ »\nrestric ted</w>\nn ale</w>\nr hp</w>\ndol an</w>\nmun ster</w>\nha ired</w>\nconsult ants</w>\njo ints</w>\nhu mil\nd ill</w>\nrelent less</w>\nt Ã©\naf il\nut ilities</w>\njapan ese\ncondem n</w>\npet ite</w>\ncolli de</w>\nq f</w>\npeach es</w>\ncou rier</w>\nl ore</w>\nâĺİ ï¸ı</w>\nreli ability</w>\nch uk</w>\nðŁĻ ĥ\nstu res</w>\nge ther</w>\nho stel</w>\nbi er\n- _-</w>\nâ ĩ\ne ze</w>\nta ilo\ndi ent</w>\nblu ff</w>\nchu ffed</w>\npil ip\nmon arch\ne em</w>\nbu chan\nb ick\nop au\nku ps</w>\nà¸ ¢\npist ons</w>\nsp ins</w>\nm and</w>\nce st</w>\nbur ne</w>\nv ile</w>\ncher ries</w>\nbec kett</w>\nneed les</w>\npan ch\në Ĥ\nhaha h\ntrou bles</w>\ninsi sts</w>\ndo you\ng mc</w>\nmor tar</w>\ndeleg ate</w>\nin n\ng anda</w>\nsin atra</w>\nà¤ ¤</w>\nspee ding</w>\npu pil</w>\npre mises</w>\nali gnment</w>\npi kach\nas us</w>\nj alan</w>\nØ µ\nlime stone</w>\nfol kl\nparme san</w>\nce il\nmo y\nshawn mendes</w>\nac up</w>\nhu st\not es</w>\nmed ina</w>\nma di</w>\ngta v</w>\ncensor ship</w>\nar g</w>\nswe eney</w>\nsy kes</w>\ncol o</w>\nfoot steps</w>\ncann ed</w>\nadv ance\ngta online</w>\nhealthy living</w>\nðŁį ¾\na ig\np ality</w>\noc s</w>\nhe brew</w>\nim minent</w>\nberk shire</w>\njeremi ah</w>\nout going</w>\nbak er\nentr ata</w>\nma ids</w>\ngro ves</w>\nbo c\na del</w>\nm fw</w>\ncon science</w>\narm ys</w>\nnut ella</w>\nconte stalert</w>\nnovel ist</w>\nla h\nban ker</w>\nmarque z</w>\nðŁı ¡</w>\nto ff</w>\nout age</w>\ngr p</w>\nðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃ</w>\nmusc le\ndu dley</w>\nnvi dia</w>\nmi di</w>\nm uni\ness ays</w>\ndat ac\ncar ter\nà¸ £</w>\nt ans</w>\ni ves</w>\npublic ations</w>\nal er</w>\nok wx</w>\nil u\ncu tt\nhar p</w>\nout law</w>\nluther an</w>\nbr ill\nbo lic</w>\ndo well</w>\ngreen land</w>\nbe sties</w>\npath i</w>\npay ton</w>\ngue st\nhar den</w>\nðŁ¤ ©\nann ed</w>\nevacu ation</w>\npo ised</w>\nmc der\nb han\no i\nenvel ope</w>\nci d</w>\nca vi\nta pas</w>\nbook review</w>\ngrey hound</w>\nâĻ ª\nfe ud</w>\nlun gs</w>\nfor te</w>\nrai der\nff er\noni x</w>\ndep end</w>\nyn wa</w>\nrel ating</w>\nde vs</w>\nðŁĴ Ĳ\nacqui res</w>\nd ha</w>\nj yo\npriv ati\ncan ine</w>\nk b\ncra b\nsar din\nimag ining</w>\nk j\nem por\ndown hill</w>\nne z</w>\nta eyeon</w>\nnick imin\ngb p</w>\nà µ\nw ap\nsec co</w>\nma shed</w>\nðŁĴ¥ ðŁĴ¥\naugu stine</w>\ndiss ol\ndic tator</w>\nâ ĵ\nvi per</w>\ned fringe</w>\nvau x\nhard work</w>\nbook let</w>\nno x</w>\nchi ff\nðŁĴ ¨\nobserv ations</w>\nxbox one</w>\nu sher</w>\nke er\nlu p</w>\ndal las\ncal gary\nma dra\ndi ous</w>\nk bs</w>\nwood ward</w>\nhero ine</w>\nlu mber\nsea world</w>\no ws</w>\nmc ke\nmaver ick</w>\ngu la</w>\ncross roads</w>\nfan g</w>\ns ade</w>\nnik ol\nchee tah</w>\nme c</w>\npp g</w>\ner ick\nðŁİ µ\ntox ic\nbj j</w>\nviol a</w>\nsp ire</w>\nch ino</w>\ntra vis\ninstitu tional</w>\nha as</w>\nlow ry</w>\nw ac\nea e</w>\nhu mid</w>\nmp ton</w>\nru ck\nje w</w>\nc ine</w>\nzim mer\nse f</w>\nbhar at\nfre es\naam ir</w>\nðŁĴ ħ\nz inc</w>\nwan e</w>\nmulti player</w>\nroyal wedding</w>\ne el</w>\npreci pit\nqu ery</w>\nkimber ly</w>\nisa bel</w>\nful fill</w>\nig an</w>\nvau l\npan e</w>\nsc y\ndig it</w>\ngun n</w>\nu tah\ndog day</w>\nfi on\nxia omi</w>\nda c</w>\nel ast\ncha vez</w>\nro blo\ng ine\nten th</w>\nab h\nke to\nhur dle</w>\nna dia</w>\nmemorab ilia</w>\nha bs</w>\nqu an</w>\nh w\nhv ac</w>\npix ar</w>\nec cle\nkram er</w>\naccu ses</w>\nðŁĴļ ðŁĴļ\nper se\nmean time</w>\nwa hl\natle tico</w>\nâĢ¢âĢ¢ âĢ¢âĢ¢\nott oman</w>\nno vo\nk us</w>\nconne cted</w>\ntru sts</w>\nd mv</w>\nspen cer\nrahu lg\ndo ve\nsto kes</w>\nbolog na</w>\nenthusi asts</w>\nÃ ª\nrockstar games</w>\nted cruz</w>\ndu ras</w>\ns acked</w>\nlate x</w>\nimmer sive</w>\ncer t</w>\nlu cin\nprinci pals</w>\nfa res</w>\nsa ils</w>\nfar n\nam ent</w>\nsaf fron</w>\nquent in</w>\ncheck point</w>\nfer ris</w>\nex cur\nðŁĳī ðŁı¼</w>\nbai ley\nse h\nter re</w>\nmad am</w>\ns band</w>\nwan derers</w>\ncumber batch</w>\nyy c\ndigit ally</w>\nblackandwhite photography</w>\nroll in</w>\nmoroc can</w>\nðŁĮ ħ</w>\ndin ner\nd well\nto om\nm ye\nez ra</w>\ncp fc</w>\nwar hol</w>\nme er</w>\njon ah</w>\nno aa</w>\ns gate</w>\nso on\nsecu lar</w>\ng ating</w>\nti o</w>\ndri ver\nsi ssy</w>\nassan ge</w>\nta th\ned mund</w>\nbobc ats</w>\nra ji\npo stage</w>\nstu ds</w>\nm gm</w>\nkat o</w>\nedin burgh\nmeet the\nshir t\nfa a</w>\nmens fashion</w>\nsp reads</w>\nwi m</w>\ncar ts</w>\nphoe be</w>\nj ars</w>\nbot swana</w>\nÙ Ĥ\ned war\nsk ar\nri ve\ngu sty</w>\nc tv</w>\nferdin and</w>\nsu therland</w>\nnickimin aj</w>\nk v\nsi us</w>\nbee ch</w>\nre z\ndesi res</w>\non ial</w>\ncamp o</w>\nquar ry</w>\nlor raine</w>\ngil more</w>\nig gy</w>\nµ ï¸ı</w>\nho pping</w>\navi z</w>\nðŁĮ º\nuni sex</w>\ndedic ate</w>\natt itudes</w>\nste er</w>\njun kie</w>\nrail way\ny b</w>\nwhi sper</w>\nkey an</w>\nk us\nju g</w>\ndi x</w>\na ins</w>\nsum mon\nov ich</w>\nsy ed</w>\nher ald\nma ison</w>\nme ded</w>\nwild flower\nmain land</w>\nri sky</w>\nru kh</w>\nover looked</w>\nki c</w>\ndestro ys</w>\nnam an</w>\nki p\nz ano</w>\nchampion sleague</w>\nban dit</w>\nquin cy</w>\nsmi le\ncal vin\nopen ings</w>\nta pp\nol ulu</w>\nspec tro\naccred ited</w>\nap k</w>\npra ised</w>\nbar nett</w>\npol len</w>\npremi ered</w>\nselen agomez</w>\ntou red</w>\nscreen ings</w>\nuu u</w>\nmis o\nen se</w>\nadam lambert</w>\nguel ph</w>\nhar yana</w>\nhu tto\nle ar</w>\nl tc</w>\npo ached</w>\nbrex it\næ Ŀ\ntt c</w>\npa vement</w>\nmon gers</w>\nro e\nad ers</w>\nling ton\nparticip ant</w>\nca red</w>\nga il</w>\ny ates</w>\nlan tic</w>\ndash board</w>\njo o</w>\nfeli pe</w>\nssi onist</w>\nbu m\ns end\na eri\nthu gs</w>\nluci fer</w>\na he\ndete ctor</w>\nfil ly</w>\ngas oline</w>\nham per</w>\nhump day</w>\nthe ta</w>\nthe band</w>\nfore casts</w>\no hhh</w>\nlo bb\nhol l\ncp u</w>\naz u\nad ar\nhai ley</w>\nbu b\ncar t\nquo ted</w>\nan archy</w>\npan cre\ntwit art</w>\nal den</w>\nst ash</w>\nthe less</w>\nor ni\nbelie bers</w>\nmor mon</w>\npartic le</w>\navi ation\nâ¬ Ĩ\nwebcam toy</w>\nsad dened</w>\ncru is\nham let</w>\nn ct\nroll ins</w>\nmarque e</w>\nsaw yer</w>\nreli ance</w>\na ura</w>\ndi ec\nsoo thing</w>\nsig nings</w>\nak is</w>\nÃ ³</w>\nat kins</w>\naer op\nðŁĮ ¿\ny ab\nsh ari\ncon nol\ndu bbed</w>\nmanufac ture</w>\nconvin cing</w>\nfeelthe bern</w>\nra u\npu lit\non ec\ngem stone</w>\nur ging</w>\nbag u\nga h</w>\naci ds</w>\nfi anc\nzodi ac</w>\nsn oop</w>\nher rera</w>\niniti ated</w>\nven ge\nprofess ors</w>\npro di\nstron ger\ne mission</w>\nbb a</w>\nhal le\nta pp</w>\nhaw an</w>\nwh im\ncompe ted</w>\nmyr tle</w>\nir port</w>\ncold play</w>\nach e\nske p\nm son\nss ic\ncalli graphy</w>\nswim mers</w>\nme y</w>\npp c</w>\nthri ft</w>\npo c</w>\nre places</w>\ncommu ter</w>\nâģ¦ âģ¦@</w>\ngo ers</w>\nlo gue</w>\npara dig\nbas kets</w>\nsensiti vity</w>\njoh an</w>\natl antis</w>\n& &</w>\nsuit case</w>\nanxi ous</w>\nl h\nstr i</w>\ngal loway</w>\nstre ad</w>\nwar den</w>\ngr ounded</w>\nffici ency</w>\nli feat\nreli c</w>\ndisgu ise</w>\nisland ers</w>\nf cofficial</w>\nclassical music</w>\nb mc</w>\nen field</w>\nbi que</w>\noak ley</w>\nbat man\nsla ying</w>\nner ves</w>\nmul tit\ncalci um</w>\nprojec tor</w>\nscott sdale</w>\nant ino</w>\ngri ps</w>\nkim mel</w>\ndes mond</w>\nprote stors</w>\nhi atus</w>\nmetaboli sm</w>\nconclu ded</w>\npress er</w>\nti pping</w>\nsli de\ne to\nhun ting\naus open</w>\nri k</w>\npp ery</w>\ninnov ators</w>\npitch ers</w>\nag ger\nfun gi</w>\nz ad</w>\nproli fic</w>\nrockn roll</w>\nbl ames</w>\nct ar</w>\nstam ford</w>\nq ad\nmozz arella</w>\ninsan ely</w>\nden ver\nph ouse</w>\nnom ad</w>\nï ¿\ns ris\npro du\nhen ley</w>\npag an</w>\nam trak</w>\nru bi\nin cl\ntu tor</w>\nsco tia</w>\nwo es</w>\nsing apo\nfun nel</w>\nturn bull</w>\nknow ledge\ngri mm</w>\nreal madrid</w>\nwe are</w>\nmissi les</w>\ncon sol\nemo jis</w>\nsne ak\nsmi ths</w>\nru iz</w>\nbr ou\ni el\nha ver\nðŁĮ ļ</w>\nkin gof\nbasil ica</w>\ncircul ation</w>\nprin ters</w>\nta pping</w>\nri dley</w>\ndra gged</w>\nha j\nwrit er\nfundament als</w>\npersonal ities</w>\nme tre</w>\nstereo types</w>\nbur le\nbest of\nn ffc</w>\nha th\nmini stries</w>\na ali\ntrac ing</w>\npav ed</w>\nł ï¸ı\ng ic\ninsp ire\ntu g</w>\nha re\nrepe ated</w>\nex pon\nlol li\nrho de</w>\npre cin\ninstall ations</w>\ninstag ram\naz ar</w>\ni es\nsole ly</w>\ndu kes</w>\nmission ary</w>\nvan guard</w>\nfursuit friday</w>\non d\npol ari\nma st</w>\nhar an</w>\njos Ã©</w>\njack ed</w>\nec oun\nal ities</w>\nne ph\nra vel</w>\nmoder ated</w>\nsco w\ns fb</w>\nuru guay</w>\nas o</w>\nni g\nau du\np ints</w>\nlat ina</w>\nben z\nm itting</w>\nchar ted</w>\nmat ology</w>\ncit ro\nbiop ic</w>\nðŁĳ Ń</w>\ndjo kovic</w>\nfox y</w>\nagu il\nso to</w>\nan ada</w>\nsin king</w>\nsc rap\nhair s</w>\nbethan y</w>\nfact friday</w>\nðŁĲ Ĳ</w>\nunlea shed</w>\n) (</w>\ncontra dic\nram on</w>\ncoast line</w>\ny ong\nsn sd</w>\nli gan</w>\np ome\nmit age</w>\nge tt</w>\nwat i</w>\nri sk\nso aring</w>\nbru sh\nf pl</w>\nav an\nå Ĩ\nlar son</w>\nsh ear\nmul til\nblu r</w>\nmulti media</w>\nchun ky</w>\npar i</w>\nn ani</w>\nweir d\ncholester ol</w>\nchar les\ndream ed</w>\ntan ning</w>\npuzz les</w>\nfr am\nhand ball</w>\nch ag\nbeli ze</w>\nal u</w>\nbang s</w>\nÑ Ħ\ndetec tives</w>\nmc g</w>\nish q\nbo thered</w>\nsaf c</w>\nmp ing</w>\nten eri\ng ays</w>\nsail or\nan gi\nmul ticul\ngue ssed</w>\nros Ã©</w>\nhigh ways</w>\nbro om</w>\nchatt anoo\n- '</w>\nsee ker</w>\non ed\nat f</w>\nlu c</w>\n> <</w>\nbar i</w>\nper cep\njewel ry\nas ph\nsor row</w>\nsl ing\nmam moth</w>\njac kie\në §\nwilt shire</w>\nsa o</w>\ncan cell\nim paired</w>\ntor ial</w>\nbre ed\nguy en</w>\njud ice</w>\ntit le\npro spective</w>\napplic ants</w>\nðŁį Ĭ</w>\nepis cop\ne id\nb yo\nstock ings</w>\nðŁĴĥ ðŁĴĥ\nll p</w>\nsna g</w>\nkeep it\nl ough</w>\nol son</w>\nmatur ity</w>\n!! !\"</w>\ncop ter</w>\ni sha</w>\nbl i</w>\nwil mington</w>\ntr youts</w>\nth ai\nðŁ¥ ³</w>\npe bble</w>\nkra ft</w>\nf p\nÂ º</w>\nssi vely</w>\nli vin</w>\ncontest ants</w>\ntex tures</w>\njo an\nh dr</w>\nfilm festival</w>\nprov ence</w>\nwi do\nop end\nc si</w>\nsto wn\ncro ati\nad just</w>\nhost ile</w>\nanaly sts</w>\nil an</w>\ncu ppa</w>\nbru m</w>\nnewfound land</w>\ngood win</w>\nme tt</w>\nmall orca</w>\nplu gs</w>\nbu k\nbb hutto\nwrest le</w>\nsa ire</w>\nsho pped</w>\nfor za</w>\nle head</w>\nvi vo\nba st\nro xy</w>\nreg is</w>\nhard working</w>\nhon olulu</w>\ndesp air</w>\nyoung sters</w>\nni g</w>\nimpro mp\nroll tide</w>\nde emed</w>\ntre ason</w>\nru shed</w>\nfor ged</w>\nff f</w>\npikach u</w>\nbri ggs</w>\ndo it</w>\nac cent\nla us</w>\ngla ze</w>\ncompet ent</w>\na ho\nphoto g</w>\nmid field</w>\nle go\nhar vard\nmin orities</w>\nre illy</w>\nslic ed</w>\nonce upon\niniti ally</w>\nfinanci ally</w>\nlandscape photography</w>\nhar dro\nqu o</w>\nmm ers</w>\npar kinson</w>\nsmu gg\nread iness</w>\nbru tally</w>\nglou cester\nmp ed</w>\nbbhutto zardari</w>\nmur der\nye d\ndat aviz</w>\nsr t</w>\ndow ning</w>\nbi ans</w>\nm Ã¼\nfle ck</w>\nfli pped</w>\ns ly\nbrilli ance</w>\nri m\nk um</w>\nbubb a</w>\nko i</w>\nknit ted</w>\nsor g</w>\nma is</w>\nðŁĮ ²</w>\nti ss\nsu stain</w>\nsen su\nak han</w>\nzi est</w>\nexam ines</w>\nchardon nay</w>\nuser name</w>\nshort list</w>\nre bs</w>\non o\ndar ing</w>\nhard wood</w>\nche que</w>\nrighte ous</w>\nlight ening</w>\ndir k</w>\nshra dd\ndu ra\ndown stairs</w>\nsh al</w>\nami gos</w>\nru ff\ns law</w>\nri es\nred nation\nman us</w>\nðŁĩ§ ðŁĩ·</w>\ndistin ction</w>\nu bun\ndur an</w>\nmi gra\nthi ans</w>\nla ver\ndomest ic\nk x\njaz zy</w>\njusti fy</w>\nbelong ing</w>\ninsul ation</w>\ncolor stv</w>\ndrun ken</w>\nchann eling</w>\nqu and</w>\nxi ii</w>\nenligh ten\nkan o</w>\nfati ma</w>\nteen choice</w>\nterri fied</w>\np ba</w>\nas ley</w>\nmet museum</w>\ndun e</w>\npack er</w>\nki o\nðŁĴľ ðŁĴľ</w>\nbo iler\nfas cism</w>\nar mored</w>\nback grounds</w>\nin mates</w>\nembarra ssed</w>\ndefin es</w>\nth d</w>\nwe go</w>\nsilic one</w>\nlo on</w>\nel ding</w>\nbor rowed</w>\nhe mp\nak sh\nkaw asaki</w>\nbr y</w>\nde af\nkill er\ndispo sal</w>\nðŁĩ °\nglaston bury</w>\nun covered</w>\no xide</w>\npo ff</w>\nd ant</w>\nk j</w>\nku ro\ndri zzle</w>\npeop les\nfe e\npro pri\ndd lovato</w>\npi ggy</w>\not is</w>\naller gies</w>\nu bis\npengu in\nser a</w>\nvi z\nprosp erous</w>\nici des</w>\ntornad oes</w>\nsene gal</w>\nweb cast</w>\nsto red</w>\nenchan ted</w>\nbb cone</w>\nbay area</w>\nentrepreneu rial</w>\nrednation rising</w>\nexperim enting</w>\nang an</w>\nlot to</w>\nthey re</w>\npor e</w>\ner p</w>\nseren e</w>\neast wood</w>\nbro kers</w>\nbar ge</w>\nstal lion</w>\ntimber lake</w>\ntailo red</w>\ndy stop\nb ate</w>\nlat ors</w>\ndi xit</w>\nbran son</w>\ndynam o</w>\nky lie\nshame ful</w>\nbt wn</w>\nspring time</w>\nmix ture</w>\ns ounded</w>\nlu ton</w>\ndad es</w>\nmal a</w>\nop ra</w>\nen ic</w>\nrahulg andhi</w>\nse wer</w>\n~~ ~~\nky u\nnor theastern</w>\nca er\nbc u</w>\nnir vana</w>\nkitch ens</w>\nous y</w>\nal m</w>\nriver dale</w>\nhid den\nfl int\nsp d</w>\npat rons</w>\nkaty perry</w>\nau gh\nexhib itions</w>\nsm c</w>\nshu ts</w>\nat ore</w>\nda in</w>\nsome thing\nber th</w>\nbo g</w>\npor ter\ngen to</w>\ncon cussion</w>\nang lic\nro we</w>\ngr illing</w>\nscar lett</w>\nmaster ing</w>\nmor nin</w>\ncomm ented</w>\nsi me\nsi zing</w>\nchrist y</w>\nce os</w>\nst m</w>\nat ry</w>\ntari ffs</w>\nvac ation\npre judice</w>\np su</w>\nparen tal</w>\nfar age</w>\ncan a</w>\ncap com</w>\nkoso vo</w>\nyou re\nmen stru\nstal in</w>\ngrape fruit</w>\nbr an</w>\nche sa\ndav en\nexc el\n!! )</w>\nà¹ Į</w>\ndistribu tor</w>\nce a</w>\nbride sma\nmillenni al</w>\nwa in\nob serving</w>\nmis ery</w>\nplan etary</w>\nexpo sing</w>\nbra ised</w>\ncomp ton</w>\ndon gha\nq l</w>\nspring steen</w>\nth ul\nsyl ve\ncab o</w>\npal ad\nniel sen</w>\ngaz ing</w>\nba ja</w>\nr oud</w>\norchi ds</w>\njohan nesburg</w>\nse man</w>\nd ji</w>\noper ative</w>\naffe ction</w>\neclec tic</w>\nat c</w>\nmut ant</w>\naw x</w>\nnic e\nmel bourne\nindu lg\ntu lip</w>\ndias pora</w>\nwel p</w>\nbig gie</w>\nmississ auga</w>\nretri ever</w>\nor an</w>\ntam my</w>\nc ta</w>\nhipp o\nseas oned</w>\nger mans</w>\neng v\nmarvell ous</w>\nim f</w>\nrela ys</w>\nmon tan\nmaur iti\nme ister</w>\nas surance</w>\nreig ning</w>\nsu fficient</w>\nhan e</w>\nno thing\npos se</w>\nnav y\nin love</w>\nbrigh ton\nen qu\nch ung</w>\nsweat y</w>\nes c</w>\ncal ed\nman s\nnicar agua</w>\nsl ices</w>\nmo cha</w>\nwashington post</w>\nbb n</w>\ndam ned</w>\ngrow ing\nen burg</w>\nlo an\nme s\nwh oops</w>\nbeliev ers</w>\nspi el\nvo daf\nl at</w>\ns led</w>\ncricke ter</w>\nbrown e</w>\ngolf ers</w>\nbar ra\nwat chers</w>\nlu igi</w>\nsw amy</w>\nmom s\npit ched</w>\nsan tor\ncr s</w>\nsi re</w>\nsc amp</w>\nbo de\nste war\njon ny\nent ity</w>\npac qui\nmind ful</w>\nmin india</w>\nbear ded</w>\ntemp t</w>\nscorpi on</w>\neat on</w>\nauthori zed</w>\nar to\ns vp</w>\nop athy</w>\ncch ini</w>\nhouse music</w>\ndisney world</w>\nâĢĶ @</w>\npro pose</w>\ndi y\nexpen se</w>\nten g</w>\npupp ets</w>\nsm el\nd aca</w>\nper ry\nfin n\nboo sting</w>\nlefto vers</w>\ncou gs</w>\nsatell ites</w>\nman y\naz e</w>\ng ong</w>\nfi e\nmetho do\nfer ries</w>\nðŁ¤Ķ ðŁ¤Ķ</w>\nexplore rs</w>\nload er</w>\nattrac ted</w>\nil ton</w>\ngodd amn</w>\npi azza</w>\ndoc tr\nsav ing\nparagra ph</w>\nvisu alization</w>\nmay ors</w>\nwork flow</w>\nack les</w>\nðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ\nà¤ ¸</w>\ntwer k</w>\nclu t\nlo ver\nte ases</w>\nsi an\no te\ndeter ior\naccor d</w>\nl fw</w>\nswar ovski</w>\nnat al</w>\ntra ps</w>\nk ina</w>\nanaly ze</w>\nlaye red</w>\nbever ages</w>\nun it\nran som\npe shaw\ndest ined</w>\nastro logy</w>\nsi pping</w>\nmiley cyrus</w>\ncam ino</w>\nmarshmal low</w>\nbli ss\nout back</w>\nfa q</w>\nint oler\nhumil ity</w>\npo ppin</w>\nhallo ween\nmon tene\nop hy\nnu n</w>\ntattoo ed</w>\na as\nðŁĮ ³</w>\ndale y</w>\nqual ity\ndu sa</w>\nfisher men</w>\nswi f\nter rac\nst au\nle in</w>\ntrol ling</w>\nship ment</w>\ngarden er</w>\nmarch madness</w>\nhead band</w>\ngr t</w>\nbur nett</w>\nw and</w>\n!!!! !!!!!</w>\ngh e</w>\ndu x</w>\nhu d</w>\nwar ner\nðŁĩ ¦</w>\nex ile</w>\nrescu e\nrat a</w>\nd han</w>\nduc ati</w>\ndro wn</w>\nbl ends</w>\nspi e\nalli gator</w>\nsimul taneously</w>\nbroo ke\nu ke</w>\nk har</w>\ncomm union</w>\nri ka</w>\nford fc</w>\nchin atown</w>\nyou rown\nme y\ncan al\nsyste matic</w>\nde pri\nox ford\nan il\nw ut</w>\nequ ation</w>\nbe z\nfle ur</w>\nthe good\nlang ley</w>\nad ity\ned ith</w>\nal fie</w>\nÐ¾ ÑĤ\nen cry\nbr ill</w>\nex emp\nce sar</w>\nmb ling</w>\nab ri\nsc icom\nj ing</w>\nschool ing</w>\nmi ka\nmechan isms</w>\nimpromp tu</w>\nrhe a</w>\nmoo re\ncrime a</w>\nbe sto\nwri ght\nel ders</w>\nro ds</w>\nkam al</w>\nfolkl ore</w>\nbe et</w>\nmini on</w>\nreli eve</w>\nthr o</w>\nteam usa</w>\npas cal</w>\nmade with\nboli via</w>\nitt i</w>\nfree bies</w>\ndesi red</w>\nbest selling</w>\nl iness</w>\nla den</w>\nke ane</w>\nmi sts</w>\nhipp ie</w>\natta chment</w>\n@ /</w>\nse w</w>\nflan agan</w>\nâĿĹ ï¸ı\nsupre mac\nstl cards</w>\nsi as</w>\nq u</w>\nrh ys</w>\nste ep\nval leys</w>\nv w\npav ing</w>\ndisp at\nal ison\npor te</w>\nid u</w>\nnew sc\nsoc ket</w>\nmo s\nco star\nre vo\nprote ins</w>\nstanley cup</w>\nm cal\near ring</w>\nse cs</w>\nmc lean</w>\ncap ric\nnick elo\nad en\nv c\nshou se</w>\nadap tive</w>\nmaxi mize</w>\nentertain er</w>\npro se</w>\ngri ffi\nsix teen</w>\nlam ar\nmi rage</w>\nsaudi arabia</w>\nawe ather</w>\nru st\nin filtr\nfashion week</w>\nðŁĺĬðŁĺĬ ðŁĺĬ</w>\nselec tive</w>\nbubb le\na den</w>\nfen nel</w>\ndeci sive</w>\nm ta</w>\nmock ing\nmb les</w>\nst amp\nmu le</w>\nbernar do</w>\ngr in</w>\npo tt\nj ingle</w>\nvet tel</w>\ncolom bian</w>\ncam o\nmotivation monday</w>\nba han</w>\np ly</w>\ndh ary</w>\nk ami</w>\nx men</w>\nsleep er</w>\ngar a</w>\nmy sti\nconfi dential</w>\nconflic ts</w>\np neu\nce s\ninsur tech</w>\nclean se</w>\nme rely</w>\nva is</w>\ntu x\nthe great\nshar on\nma j</w>\nhol a</w>\neco systems</w>\naj ay</w>\naa j\nhu sh</w>\nhar mon</w>\nbackto school</w>\nwiki leaks</w>\nreflec ted</w>\nðŁĺ ĵ</w>\ncommemor ating</w>\nac et\nbuck ingham</w>\nmessi ah</w>\ntu ous</w>\nhor net</w>\nto be</w>\nd q</w>\nhe ine\nmi g</w>\npl ate\nnichol son</w>\nsp ie</w>\ncumber land</w>\nnor mal\npho bia</w>\nhappy halloween</w>\ncity fc</w>\nmc el\ngilli an</w>\nke to</w>\nlu de</w>\nde mise</w>\nsu ga</w>\nstr ate</w>\nmcgr ath</w>\nvisit scotland</w>\nfoo led</w>\ncb r</w>\ngc se</w>\ncol ori\npo td</w>\nmissuni verse</w>\nfin ances</w>\nma poli</w>\nfor ks</w>\nØ ´\ncann on\nmedic inal</w>\nðŁĹ ĵ</w>\nkh o</w>\nwre ck\npan to</w>\nbag el</w>\ngu ll</w>\nsyndic ate</w>\nic y\npr c</w>\nki en</w>\nzi ka</w>\nti sh</w>\npe ta</w>\nc co</w>\nli za</w>\nch ut\nex traction</w>\nel g\ngl i</w>\nfu eled</w>\npos it\nrespec tively</w>\nleice ster\nbr ink</w>\nvulner ability</w>\nim ported</w>\ne sha</w>\nðŁ¦ ħ</w>\nr ural\nre ll\ngam ing\natlan tic\naband on</w>\nno ah\nre solved</w>\npro state</w>\naller gic</w>\nps d</w>\nâĺ ¹\ndun geon\nfang irl</w>\nillumin ated</w>\nm hs</w>\nwhite sox</w>\nd ently</w>\nck o</w>\nendor se</w>\nover ly</w>\ndazz ling</w>\nprior iti\nnight life</w>\nut il\nbe have</w>\nflam en\neast bound</w>\nðŁĴ Ł</w>\nilove you</w>\ngov uk</w>\nmozam bique</w>\nalle gi\ndr i</w>\ntestim onial</w>\nath s</w>\nì§ Ģ\nmm y\nshab by</w>\npro secco</w>\nfriend ships</w>\ncal am\ndam ages</w>\noff set</w>\njura ssic\njun o</w>\narre ll</w>\nðŁĴ ©</w>\ninterven tions</w>\ndare devil</w>\ncar ver</w>\nrun away</w>\nran e</w>\ntruste es</w>\nha ute</w>\ndep ths</w>\nðŁİ Ń</w>\nme in\nsacrific es</w>\ncon cier\nne sting</w>\ni zzy</w>\nme tam\nilove my\nur ine</w>\ndu lu\nmal hotra</w>\nve ins</w>\nnight ly</w>\nco at\nan di\nhe witt</w>\nlon el\nci ble</w>\nwr ite\njen nie</w>\nsant ac\nĸ ï¸ı</w>\nstr ato\nsingapo re\nsop rano</w>\nkri sten\ncheer ful</w>\nflee twood</w>\nfa iri\nm eli\nwa st\ntur nt</w>\nsfor sale</w>\nsc rolling</w>\nangel ina</w>\nren dition</w>\njeric ho</w>\nnick y\nor b\nfla vo\npatri ot\nash eville</w>\nsick ness</w>\nre fund</w>\naggre ssion</w>\nb pl</w>\nãĥ ĥ\nelu sive</w>\nthi story</w>\nhang er</w>\nbu ffs</w>\nvil las</w>\nat kinson</w>\nsp h\nja it\ndecl ined</w>\nwo k</w>\nsupre macy</w>\noo tball</w>\ney ang</w>\nðŁİ ĵ\ns ford</w>\nath i</w>\nconsu me</w>\nroad ster</w>\ne so</w>\nu pro\nreci pe\nau f</w>\nuc i</w>\nar on</w>\noo oh</w>\ncs go</w>\nre ich</w>\nmc d</w>\nmin ute\nladi es\npun k\nrut gers</w>\nmee k</w>\nariz on\nta j\nland lord</w>\nde gra\nautu mn\nlyn x</w>\nus f</w>\nb hi\nfairy tale</w>\ndongha e</w>\nbet sy</w>\nexplo ded</w>\nchen nai\nop a</w>\npro tag\nbr ant\nðŁĵ °:</w>\ng f\npal li\nðŁı¼ âĢįâĻĢï¸ı</w>\nsu t</w>\nill ini</w>\ncolum nist</w>\nshir tless</w>\nde centr\nsear ched</w>\nec or\nbu ggy</w>\ns ack\nðŁĺĤ ðŁĺŃ\nde t\nther i\nor naments</w>\nbring back\nto v</w>\nquarter finals</w>\nic he\ncon stra\ngi er</w>\nbuchan an</w>\nvi x\nkay aking</w>\nmu stread</w>\nswal low</w>\nmel b</w>\nsc af\nop al</w>\nmay oral</w>\nhar at</w>\nðŁ¦ ĭ</w>\nschedu les</w>\nid f</w>\nha gue</w>\nro z\na ah</w>\nd mc</w>\ndu plic\nca che</w>\norph an</w>\nfrac ture</w>\nrec on</w>\nch av\nbun nies</w>\nal ain</w>\nmustaf a</w>\nðŁİ Ļ\nvac ations</w>\ndynam ite</w>\ntex ted</w>\nbroad caster</w>\nðŁĴ £</w>\nste amed</w>\nrock er</w>\ndi etary</w>\nluxury travel</w>\ninaugur ated</w>\nsa wards</w>\nvaugh n</w>\nlincoln shire</w>\nclick ed</w>\nkra ja</w>\nf anc\nremo ves</w>\nlayo ffs</w>\nmc far\nbre eds</w>\nwin nie</w>\njon ghyun</w>\nincen tive</w>\nvari ations</w>\npat ton</w>\natur day</w>\npersist ent</w>\npr un\npi ers</w>\ndal es</w>\næ ĸ\nbreast feeding</w>\nr ance</w>\nta wa</w>\nĤ âĸ\nmur doch</w>\ncap tive</w>\nthi stle</w>\nnic a</w>\ncommod ity</w>\ncou ldnt</w>\nboard walk</w>\ngraci ous</w>\npractiti oners</w>\nn gc</w>\nscru m</w>\nner o</w>\ncamoufla ge</w>\ncol on</w>\nhe i</w>\nphys icist</w>\nsaturday morning</w>\nten er</w>\nsi won</w>\ncolum ns</w>\nbru ne\ny vr</w>\nba ir\nreti res</w>\nhal am\ncab er\nshaz am</w>\nmin u\ncas cade</w>\nmilk shake</w>\ngri d\nd ren\nvin cent\nso dium</w>\nplat ter</w>\ncheer leader</w>\nchen ko</w>\ny ak</w>\nelimin ated</w>\nty po</w>\ny man</w>\nre think</w>\nâĿ Ĺ</w>\nts ville</w>\nbernardo kath</w>\nex tr\nðŁĺģ ðŁĺģðŁĺģ</w>\nta o\nre per\nmo ths</w>\nem powered</w>\nc iting</w>\ntranspor ted</w>\nmon ks</w>\nsan at\ncle ars</w>\nbachelore tte</w>\ncamp bell\nracha el</w>\nhar le\nhand ler</w>\nclimb s</w>\ninter ference</w>\nrele ase\nsh and\nr bs</w>\nhr h</w>\nãģ ª\nval le</w>\nr Ã©\nsli me</w>\nw akes</w>\nchu bby</w>\nslo an</w>\nel ves</w>\nath en\nattor neys</w>\nmicro scope</w>\nston er</w>\nsc aling</w>\no be</w>\nc out\nse man\nmid week</w>\nbal sam\nðŁĺį âĿ¤</w>\nti ful</w>\nv ish</w>\nlo tta</w>\nri pping</w>\nre mn\nti re\nle ap\nha vent</w>\nla by\nhi mach\nwhisp ers</w>\nwe in\nðŁİ ¸\nwild flowers</w>\nse le\nu cc</w>\nli ability</w>\naz ine</w>\nsw ings</w>\nk ya</w>\nta ir\nre main\ne do\nflo ps</w>\npoc ket\ngrand ad</w>\nexam iner</w>\ngr is</w>\nffe ct</w>\nðŁĳĬ ðŁı»</w>\nstud ded</w>\nheart beat</w>\nde acon</w>\nfirm ly</w>\ninfec tious</w>\nste f\nout lines</w>\nle asing</w>\ncla ws</w>\nsen se\ntab s</w>\nhoo t</w>\nmo sul</w>\nspa wn</w>\nco a</w>\nhog warts</w>\nve in</w>\nalban ia</w>\nmanu el\nb ino\nvaux hall</w>\nscot land\ngo bucks</w>\nmat ty</w>\nphy sio</w>\ntor ino</w>\nconst able</w>\ninvestig ated</w>\ns lower</w>\nmistak en</w>\nbay er</w>\nwild fires</w>\nvo ic\nx on\ntime to\nchas sis</w>\nbar ric\npi on</w>\nbald head</w>\nwoo k</w>\nregi str\ndra fts</w>\nb hs</w>\nli gue</w>\nl ick\nstaf fordshire</w>\nbaf ta</w>\ndar ry\nje anne</w>\nven ding</w>\ncor p\nâĽ ³ï¸ı</w>\nkid dos</w>\nfen way</w>\nca o</w>\nwest bound</w>\nðŁĺ Ļ</w>\ndv r</w>\nquick er</w>\nbla h</w>\ngoo die</w>\nðŁĴĭ ðŁĴĭ</w>\nvo x\nesp er\nfac ade</w>\ncor relation</w>\nred bull</w>\nrou p</w>\ndecl ining</w>\nchi ve</w>\nmc gee</w>\ntur o</w>\nin der</w>\nf eller</w>\nfu g\nil ysm</w>\nmar di</w>\npeshaw ar</w>\nki eran</w>\nine ma</w>\nmeat balls</w>\npe ck</w>\ndepre ssing</w>\nsen sing</w>\ngi z\ndd ington</w>\nspring watch</w>\nro aming</w>\nyellow stone</w>\nhorse shoe</w>\nam man</w>\nweek day</w>\nol or</w>\nðŁ¥ °\nboo sts</w>\nspr int\nscar ves</w>\nje e\nbee tro\ncl an\nall the\nìĦ ¸ë\nenlighten ment</w>\nado be\nre generation</w>\n? @</w>\ncont ag\nyach ts</w>\nto u</w>\nmor a</w>\nen voy</w>\nr ani\ngo li\ndhanush kraja</w>\nwood working</w>\nstreng ths</w>\nse di\ndisc s</w>\nar ina</w>\nsc on</w>\nlit e\nano ther\nðŁ¥ Ĭ</w>\nye men\ngu ern\nsav vy</w>\nlo yed</w>\nbiom ed\nheart break</w>\ncomra des</w>\nmilli e</w>\npat ch\nun f\njar vis</w>\nbl aming</w>\ncommemor ation</w>\nge y</w>\nå ¥\ncardio vascular</w>\nalig ned</w>\ndocu ment\n. ?</w>\naesthe tics</w>\nem u</w>\nthe irs</w>\nle h</w>\nps ic\nsi f</w>\npl ateau</w>\nex pend\ndomin ating</w>\nrob es</w>\nmauriti us</w>\nexcep tionally</w>\nhom er\ndiscover ies</w>\nbra un</w>\nten nant</w>\ninsul in</w>\nðŁİ ®</w>\ncar bs</w>\nte as</w>\n? !\"</w>\nzi e\nfranco is</w>\nbrow sing</w>\nth ol\ncla rence</w>\nhel per</w>\nob tained</w>\ncas sie</w>\nle es\n! ,</w>\npome gran\nhu bs</w>\npresti ge</w>\n] [</w>\nmach er</w>\nbott led</w>\npun ch\npi pe\no ch\ngall ons</w>\ndeliver ies</w>\nu ra\nun day</w>\nmon de</w>\ndepic ts</w>\nre gency</w>\noutra geous</w>\nkhal ed</w>\ncar o</w>\nhe arti\nza g</w>\ndevelop mental</w>\nover coming</w>\nstati stical</w>\nflavo red</w>\nfor ds</w>\ncre atives</w>\nlau rence</w>\ndi as</w>\nsun screen</w>\nin ked</w>\npre acher</w>\nn ul\nimpac ting</w>\nauti stic</w>\nâļ Ķï¸ı</w>\no ss\npel icans</w>\ncele ste</w>\nv b\nru mp</w>\nmc gra\nfair fax</w>\nhu mor\nbbc news</w>\nrow ling</w>\ncal der\nseam less</w>\nag ne\np ti\nmix ed\nt shirts</w>\nmer ci</w>\nb tob</w>\nwomen instem</w>\ngenealo gy</w>\npre ven\nl our\ncra dle</w>\ngi use\nÐ ¾</w>\nchron o\nfair ness</w>\nchocol ate\ntor y\nas da</w>\npre scott</w>\nstret ched</w>\nal man\nu il</w>\nre charge</w>\nin tre\nob st\nhosp ital\nhay ward</w>\nteneri fe</w>\nfried man</w>\nvap ing</w>\nconfe ssions</w>\nye ah\nbal li\nluck now</w>\ncor pse</w>\nsculp tor</w>\namp ton\nt pp</w>\nindic ates</w>\nsur plus</w>\ntru man</w>\nðĿ Ļ\nsin ha</w>\nin vo\nsovere ign\nke v</w>\nestabli shing</w>\nengra ved</w>\nassu ming</w>\nðŁı ģ\nsou za</w>\nfab i\nton ed</w>\noun ge</w>\ndel oit\ndow ney</w>\nno ble\nom or\ncar tridge</w>\nðŁı Ĳ</w>\nu hur\nhol loway</w>\nsucce sses</w>\nr sa</w>\nâĦ ¢\nma zz\ntw d\ndisc ourse</w>\n. <</w>\ny at\nsatis fy</w>\ncom pri\nà¤ ¹</w>\ngraph ite</w>\ndisser tation</w>\nar ter\ní Ķ\nb ally</w>\nzom bi\nly ons</w>\na ic\nu bc</w>\npra da</w>\ne il\nda x</w>\ncla i\ngrand daughter</w>\nextravag anza</w>\nchall enge\nðŁ¤ ŀ\npo ver</w>\nprimar ily</w>\ndad dy\nman a\nbi kers</w>\ninqui ries</w>\nda un\nfel ine</w>\ngener ative</w>\nhe f\nbenef iting</w>\nlind sey\npol ka</w>\ndemonstr ated</w>\nal le</w>\nrand y\no su\nlow key</w>\nweir dest</w>\nred bull\nour y</w>\nn ous</w>\nwood stock</w>\ncre denti\nnic er</w>\ng ado</w>\naly ss\nap h</w>\nprepa redness</w>\nstation ary</w>\nincorpor ated</w>\ndy er</w>\nsarato ga</w>\ncele sti\n: \"\nantibio tics</w>\nor gs</w>\ninde fin\nap ron</w>\nÐ¸ Ð\nfif teen</w>\nno f\nðŁĶ Ŀ</w>\nph x</w>\nte ga</w>\nm z\norganiz ational</w>\non air</w>\nband ung</w>\npleas ures</w>\nmor i</w>\nsecre tari\nrac coon</w>\nca shi\npil ates</w>\nk on</w>\ngeof frey</w>\nla o</w>\nkam p</w>\ndepart ments</w>\nback packing</w>\nan am\nÃ «\ncrack down</w>\naun ty</w>\non do</w>\nli zzie</w>\nph ers</w>\ncu n</w>\nðŁĩ ±\nk pop\npu t\ninten tional</w>\nconnol ly</w>\nbar clays</w>\nhs fb</w>\nswin don</w>\nu ku\ns ally\na int\nâľ ħ\npen ang</w>\nup lifting</w>\nepile psy</w>\ninter ro\nbun gal\ngo ku</w>\nblue berries</w>\nà¤ ¦</w>\nu ssia</w>\nsil ky</w>\nmou red</w>\ni stic</w>\nbri efs</w>\nme ats</w>\ngo b\nch aser</w>\nstate wide</w>\npra sad</w>\ngl itch</w>\nar in\nban ff</w>\nmemb er\nðŁĺŃ âĿ¤ï¸ı</w>\nlo ving\nhall a</w>\nà¸ ¡</w>\nsmo kers</w>\nyak u\nscicom m</w>\nphysi o\nsw ol\nlem ons</w>\ngel ato</w>\nch ool</w>\ncapit als</w>\nki stan</w>\nti ghts</w>\nspi kes</w>\ntrav ellers</w>\nik lan</w>\ncommissi oning</w>\nar ine</w>\nemabiggest fans</w>\nempha sis</w>\nfront line</w>\npad dock</w>\ndestruc tive</w>\nba ha\nl inger</w>\nje wish\nshet land</w>\nmc gin\nmon key\nko z\ns one</w>\nraj ini\nte h</w>\ny en\nc vs</w>\nmasqu er\ngir ly</w>\nwe sle\nwas nt</w>\nbro dy</w>\ntermin ator</w>\ngil le\nmag gi\nbir die</w>\njeopar dy</w>\ncu bic</w>\nvm ware</w>\nintric ate</w>\nan up\nto pia</w>\neast on</w>\nsab res</w>\ninvestig ates</w>\nbu sting</w>\nbil ingual</w>\nvalent ino</w>\nin format\nfer re\nadvent ur\nhydr ate</w>\nfor sy\naz iz</w>\nsan to\ne de\nwhist ler</w>\ncontinu ously</w>\nd ham\nun used</w>\nji had</w>\naddic tive</w>\nvi dy\ndo b\ni do</w>\nfi ed\nni versary</w>\nn one\nfu er\nðŁĺį ðŁĺĺ\ncoven ant</w>\nprin table</w>\nimmac ulate</w>\no em</w>\ncl t\nserv ants</w>\nconsu med</w>\nun released</w>\nsc um</w>\npack aged</w>\nme re\nìĦ¸ë ¸\nto by\nta f\nspo ons</w>\nme al\nf ball</w>\nfair field</w>\njan et\nsilver stone</w>\ndart mouth</w>\nfollow me</w>\nvoy ager</w>\nkom bat</w>\nanni ver\nene w\nmag dal\nho ve</w>\nsa th\ngrizz ly</w>\ncar di</w>\ngart ner</w>\nsand y\nkan ye\npost ure</w>\npo ign\nim pulse</w>\nradio logy</w>\nhoriz ons</w>\nsi am\naish war\n= =></w>\nno che</w>\ntr is</w>\nel yn\ncom me</w>\ndu i</w>\nce c\ncouncill ors</w>\ncudd ling</w>\ncreep ing</w>\nloc ke</w>\nmanag es</w>\ntrans ferred</w>\nne cks</w>\ndi er\ndan o</w>\nv ick</w>\nlun ches</w>\nd he\nen sures</w>\ncri ss</w>\nul ster\nbann on</w>\ncont enders</w>\nsp am\nsweet ness</w>\nmed al\nhon duras</w>\narc tic\nultra sound</w>\nin fr\ndisco vers</w>\nei ffel</w>\nca sters</w>\nru ben</w>\ndu st\nawe ed</w>\natri um</w>\nlest we\nse ared</w>\nðŁĵº :</w>\nty ne</w>\nex changes</w>\nlittle mix</w>\nl le</w>\nastron auts</w>\nhersh ey</w>\nwork day</w>\nkno b</w>\nso v</w>\nre signs</w>\ntoday show</w>\nder man</w>\nan th</w>\naf c\nta ster</w>\nsw oo\nsa eed</w>\nper ing</w>\nnarrow ly</w>\nrn li</w>\nbest buy</w>\npanas onic</w>\nobst acle</w>\nfarmer s\nðŁİ Ļ</w>\npa wan\nki est</w>\nang ers</w>\nabsur d</w>\noh my\nsin o</w>\npist achi\nsp ice\ngiu li\nprime time</w>\nko w\nk ens</w>\nex agger\n! ?!</w>\nu ba</w>\nmidd les\nju dd</w>\ne jec\nslam med</w>\npen sions</w>\nof a</w>\nre create</w>\nb hp</w>\nxx l</w>\nliver pool\nthre sh\npur ity</w>\nni eu\nhol ics</w>\nwr ath</w>\nra do</w>\ngli o</w>\nam ma</w>\ndile mma</w>\ncr u</w>\nlets go</w>\n.... @</w>\nâĿ ĵ</w>\nsugge sting</w>\ntru mps</w>\nhor us</w>\nf v\nic om</w>\nrefer ring</w>\npredic tive</w>\ntar ts</w>\nge tte</w>\nso ck\nglo ssy</w>\npin ky</w>\nal ec\nthy me</w>\nou ra\nthero ad</w>\npe tr\ncr am\np fi\ndv n</w>\nme ier</w>\nincen tives</w>\ntun nels</w>\nmobi l</w>\nrec ap\nextra s</w>\nupri ght</w>\nrev amp</w>\nper severance</w>\n, -</w>\not p</w>\nmir ror\nar wx</w>\nger ry\nma her</w>\ng or</w>\nhom epage</w>\nam is</w>\nag ra</w>\nmade le\nbest friend\nsirius xm</w>\nbun dles</w>\nadmir ing</w>\nt dsb</w>\nðŁį ģ\nch as</w>\nslow ing</w>\nro h</w>\nwall papers</w>\nâĢ¦ /</w>\ntek ken</w>\ngang s</w>\ntal a</w>\nlind say\nshou l\nline backer</w>\ntool kit</w>\nur anium</w>\ncaly p\nab rams</w>\nmat thi\nðŁı ¿\nhon ourable</w>\nda yo\nver sail\ntan k\nst c</w>\nfr itz</w>\nspl end\npat ag\nanno yed</w>\non day</w>\ndevast ated</w>\nchattanoo ga</w>\nnational ism</w>\nmas sey</w>\njen n</w>\ntail or</w>\ndev gn</w>\norg ans</w>\nzu cchini</w>\non fox</w>\nsat ire</w>\nwex ford</w>\ndis grace</w>\nno to\nvol ta\nâĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ıâĿ¤ï¸ı</w>\nà ¶\nhome owners</w>\npoin ter</w>\nm cr\nau sten</w>\nday sto\nmo ons</w>\npal ma</w>\ngra zing</w>\ne so\ninfluen cers</w>\nshahid kapoor</w>\ncompli ant</w>\nmeasure ments</w>\ndevelop s</w>\ny d\npar l</w>\np vt</w>\nrand olph</w>\ntor tured</w>\nger ald\neli as</w>\ndeepi kap\nwar mup</w>\nhick ory</w>\ng ap\nco ffin</w>\nam our</w>\nre neg\nmoun ting</w>\nseven s</w>\nig le\nhi er</w>\ndec ad\ntri ght</w>\nesc apes</w>\nwer ner</w>\nt fl</w>\nful filled</w>\nni ger</w>\nsour dough</w>\nre aper</w>\nchoo ses</w>\nspin ner</w>\nweek nd</w>\nfil tered</w>\nsh uk\nkat i</w>\nold ham</w>\nopen source</w>\nkh anna</w>\nat elier</w>\nconne c\nopho bic</w>\ngla s\ncomplic ations</w>\nar son</w>\ncounc ils</w>\nsm ol\nas sy\nlur king</w>\nling ui\nhan ks</w>\ne in\nÙ ħ</w>\nru gs</w>\nn guyen</w>\nnou veau</w>\nmen ace</w>\nle v</w>\nalad din</w>\nru ining</w>\nround about</w>\nk m\ncon or\nshoo ps</w>\nmay day</w>\ntraum atic</w>\nprab has</w>\nka iser</w>\nk ita</w>\nrou ter</w>\npe dro\nre tar\nstun ner</w>\nspani sh\ndistur bed</w>\nacade my\ne learning</w>\nwit ty</w>\nsen g</w>\nfer al</w>\nav y</w>\nsta b</w>\nke aton</w>\nur du</w>\nko to</w>\nhu i</w>\ncoo ke</w>\nari an\nthe personal\nu ma\nse ap\na sting</w>\nrhetor ic</w>\nhand writing</w>\nmunici pality</w>\nconsor tium</w>\nðŁĲ Ł</w>\nglasgo w\nra ya</w>\neli za</w>\npolym er</w>\nbro th</w>\nprac ti\ncorrespon dent</w>\naddic ts</w>\ngay le</w>\nail ing</w>\no fe\np li\nhear tw\nst itch\nsight ings</w>\nprie sts</w>\nsam o\nslo th</w>\ngood wood</w>\nroc co</w>\nsab c</w>\nsumm it\nl ace\npres ley</w>\nitt en\ncin cy\nthepersonal network</w>\ns week</w>\npe gas\naf con</w>\nregi stry</w>\nci m</w>\nle th\ndic ap\ncand ice</w>\nflu ent</w>\nsm ack</w>\npede stri\nal oud</w>\ncar ac\npriyan kach\np gh</w>\nir ons</w>\ndol ce\nlat via</w>\ndece ased</w>\nthero ck</w>\ncla p\ncen e</w>\nfo am\nmorris sey</w>\ngre t\nessenti ally</w>\ncom cast</w>\nbe agle</w>\nargu es</w>\ning ed</w>\n- âĢ¦</w>\nsa g</w>\nha san</w>\nðŁĻ Ĩ\nðŁį °</w>\nnh ra</w>\nkann ada</w>\nindic ators</w>\non er\nbri xton</w>\nat as</w>\nscreen play</w>\nsor ority</w>\nsha heed</w>\nhe em</w>\nclass mates</w>\ntain ment</w>\nes i</w>\nbreast cancer</w>\nzucker berg</w>\naur or\nen cia</w>\nref ers</w>\nkae per\nvor tex</w>\ncom part\nlym ph\nphotograph ing</w>\nste ff\nrest ling</w>\npar sley</w>\nmom ento</w>\nth man</w>\nlac king</w>\ndu tt</w>\nocu lus</w>\nfin o</w>\nfren zy</w>\nra sc\nder n</w>\ndis missed</w>\nnoo k</w>\nmet gala</w>\nsh ill</w>\nrapha el</w>\nmaver icks</w>\nexhib its</w>\neag erly</w>\nc pa</w>\namen ities</w>\n. âłĢ</w>\nexo dus</w>\nern st</w>\nlit a</w>\ndeal t</w>\nwomens march</w>\ni ain</w>\nscore board</w>\ncampe ones</w>\nc en</w>\nti ki</w>\ngarri son</w>\nfidel ity</w>\nbra g</w>\nroad map</w>\npsy chop\nlo e\nble u</w>\nðŁĳĬ ðŁı¼</w>\nsau vi\nspr inger</w>\ntemp tation</w>\nru dolph</w>\nac ura</w>\nwic z</w>\nparach ute</w>\nstro l\nlen ny</w>\nzi k</w>\ndom s</w>\nnb af\nal pac\nvivi an</w>\nro ve</w>\npre et</w>\nperpe tu\nsna ke\nair soft</w>\ninfl atable</w>\nprin ces</w>\nati e</w>\nffe y</w>\npati ent\nm ire</w>\nchel le</w>\nsl ack</w>\ngroo vy</w>\n# :</w>\nup loading</w>\n!!!!!!!! !!!!!!!!\nsiem ens</w>\nprovi sion</w>\nv fx</w>\nneed y</w>\nf ats</w>\nto poli</w>\nbhu tto</w>\nsa thletics</w>\nalu ms</w>\nt winning</w>\nsouth western</w>\nadop ting</w>\nlast night</w>\nman ne\nla ga</w>\ntw ell</w>\nac ia</w>\n-- --</w>\neye wear</w>\nhur ley</w>\nfle e</w>\nsa ch\npe cker</w>\ncost ly</w>\nis k</w>\ncr ates</w>\npolic y\nero sion</w>\nin go\nwer k</w>\nðŁĲ į</w>\ntorto ise</w>\ntherap ies</w>\ninter net\nchihuahu a</w>\nri ps</w>\nfre i\ned or\ntai ji</w>\nt fc</w>\ndo d</w>\ndemp sey</w>\nchrist in\nchen g</w>\nhi ps</w>\ngra eme</w>\ncom passionate</w>\ncavali ers</w>\nhistor ic\nsoul ful</w>\ncrimin al\nja c</w>\nvin ci</w>\nexpi red</w>\nsur at</w>\nturi smo</w>\nk ona</w>\nse aweed</w>\nber ts</w>\nle ica</w>\nexpre ssing</w>\na al</w>\nwor t</w>\nbreak fast\nher ring</w>\nam used</w>\nrhu barb</w>\nmar tian</w>\ncospla yer</w>\ny ash\nstri al</w>\nra ul</w>\nrefer ral</w>\ndw ts</w>\nj w\nad ler</w>\ncur tains</w>\ngu r</w>\nval ence</w>\ntyr one</w>\nsw fc</w>\ncoach ed</w>\nre born</w>\ndiabe tic</w>\ncho ke</w>\nnor folk\ninvestig ative</w>\nðŁĴ¯ ðŁĴ¯\nz id\nv mas</w>\nphi e</w>\nobjec tives</w>\nâľ ĭ</w>\nover due</w>\ndi vers\nmat su\nðŁİŁ ï¸ı</w>\ncasu alties</w>\nà¸ §</w>\nal k\nstand ardi\nre alist</w>\narti facts</w>\npand or\nke x\nin vin\n( !)</w>\nine y</w>\npar aly\nmr t</w>\nfay e</w>\nthe voice</w>\non ga</w>\nde ed</w>\nskin ner</w>\naz wx</w>\nspeci men</w>\npriyankach opra</w>\nnu evo</w>\nbar kley</w>\ntoulou se</w>\nresu mes</w>\nfootball ers</w>\ncit i</w>\nfe tch</w>\nÃ¨ re</w>\nlestwe forget</w>\nðŁĻ ĭ</w>\nch unk</w>\ndri fting</w>\nmanipul ation</w>\nequ als</w>\npu tt</w>\nky ungsoo</w>\nâĿ¤ï¸ı #</w>\nela stic</w>\npar ano\nfo y</w>\ndo ping</w>\ncin cy</w>\nss ler</w>\ninterrup ted</w>\nal ay\nado res</w>\name thy\ncon voy</w>\nãĢ ı</w>\nĬ ãģ\nblack list</w>\ngener als</w>\nsa chin</w>\nbru shed</w>\noun ces</w>\nnon stop</w>\nilli ams</w>\nbt sarmy</w>\nu av</w>\nru ff</w>\nbur ma</w>\nbi k\ndefen ce\nschul tz</w>\nbo asts</w>\nlonel iness</w>\ngo re\ntrans forms</w>\nalum na</w>\n@ @</w>\nra ppers</w>\nne hru</w>\ncar o\nhimalay an</w>\nwearab les</w>\nge h\npepper mint</w>\nre development</w>\nflam ingo</w>\ncos by</w>\nbig baldhead</w>\nag ri</w>\nbare foot</w>\nsco pes</w>\nre gram</w>\ngh ana\nðŁİ «</w>\ni heart\nsa die</w>\ncarri e\nmicrobi al</w>\nku ala</w>\nsk ater</w>\nquer que</w>\nâĻ ©\ngen res</w>\nreas oning</w>\nch ased</w>\nas o\nsli pped</w>\nen can\nvam os</w>\nker s\nad verse</w>\nmo il</w>\ncommod ities</w>\nwith you</w>\nsil ent\nhy pe\nan de</w>\nam ination</w>\nwhi spe\nlit z</w>\nâļ½ï¸ı âļ½ï¸ı\nri ff</w>\npp y\nlam bs</w>\ngan esh</w>\nab sent</w>\nregu lator</w>\nmarse ille</w>\nen roll</w>\npar cel</w>\nwa p</w>\nby rd</w>\nðŁĩ Ń\ntu ber\ncountry music</w>\npar l\ncontro llers</w>\nresponsi bilities</w>\nwe y\nch ate\nmontene gro</w>\nchic o</w>\nmil an\nl ms</w>\ntra inees</w>\nappropri ately</w>\nun certain</w>\npopp ies</w>\ned sheeran</w>\nnutr itious</w>\ngar o</w>\ndeut sch\nawe some\nãĥ ¼</w>\ncomfor tably</w>\nland marks</w>\net i</w>\nre usable</w>\ndaniel le\nro sal\nco les</w>\njust ic\nc cs</w>\nf anny</w>\nni m\nmc u</w>\nclin ch</w>\nat ene\nmer ge</w>\nim db</w>\nang lo</w>\nuc cino</w>\npan ini</w>\nan not\nbur berry</w>\nfeat ure\npredic ting</w>\nfashioni sta</w>\ns ask</w>\nimag inary</w>\nmm o</w>\nsouth sudan</w>\nspe ar</w>\nhu bble</w>\njo inthe\ncoyo tes</w>\nsli go</w>\nko dak</w>\nsit com</w>\npolaro id</w>\nroo ted</w>\ncorru p\nðŁĻĮ ðŁĻĮ</w>\nbris ban\nat z</w>\nah l</w>\nre my</w>\ntal ent\naval on</w>\nra da</w>\npau line</w>\nlocom otive</w>\ngo ons</w>\nne mo</w>\nmaser ati</w>\nic u</w>\nstu tt\nhistor ically</w>\nsm b</w>\npres by\navo id\nso oners</w>\nrhine stone</w>\nw ad</w>\nri sing\ntro t</w>\nmo des</w>\nreg ent</w>\noptimi ze</w>\nre ece</w>\nsm u</w>\nver ti\nnewyork city</w>\ncor tez</w>\nra c</w>\nin case</w>\nsin c</w>\nfiel ding</w>\ne tta</w>\ntiff any\nal monds</w>\nsad dle\nk rat\nmat ter\ng low\nstar ving</w>\ngl o</w>\ncra ppy</w>\nsl ur\nst d</w>\nmonit ors</w>\nrecei pt</w>\nmaymay entrata</w>\nmc il\nun is\nrain bows</w>\ncal dwell</w>\npacqui ao</w>\nj op\na fe\nhoo k\nes sen</w>\nwiz ard\nmedi an</w>\nfla ws</w>\ncom s</w>\nâĿ Ħ</w>\ning h</w>\nha ynes</w>\nanton io\ntem plates</w>\nou ter\nna w</w>\ncardi gan</w>\nbel grade</w>\nðŁĴ ī</w>\nhom o</w>\na ise</w>\nro pes</w>\nno ve\nwhat you\ntri gge\nconcep tion</w>\nad ukone</w>\nna di\nfri ars</w>\nsw er\nadju sted</w>\nhot line</w>\nsan ity</w>\nkau r</w>\ndown loading</w>\nc gi</w>\nten or</w>\neth nic\napp alach\nà¸ ¸</w>\npa g</w>\ngol ds\non set</w>\ninvestig ator</w>\ncar tel</w>\npeace fully</w>\njarre tt</w>\ncat alan</w>\npoli o</w>\nn um</w>\nfru stration</w>\ndhar ma</w>\nmy life</w>\nâľĮ ðŁı»</w>\naber deen\nmu sa</w>\nbin der</w>\nspark ly</w>\nfle eing</w>\ninstin ct</w>\nco ping</w>\ndomin ance</w>\nill ers</w>\ner a\nu conn</w>\nlo oms</w>\nliving ston</w>\ngal i</w>\nhe s\nc ma\nbel a</w>\nse ley</w>\nmon k\nla ch\nmar x\nÂ ´\nm erica</w>\nwoman in\nes sex\nra ina</w>\njim i</w>\nnep tune</w>\nz ack\nchine se\nmart ins</w>\nchand elier</w>\nher n\nwith us</w>\near l\nasph alt</w>\nmodu les</w>\nst p</w>\nul la</w>\npsychi atric</w>\nmile age</w>\ncaptiv ating</w>\nsi der</w>\nmen to</w>\nmor t</w>\ntran ce\ntal bot</w>\nab by\nì ĥ\nâľĮ ðŁı¼</w>\nj ak</w>\ndaw n\nturn up</w>\nscre wed</w>\nfe ds</w>\nblue print</w>\nðŁĴĸ ðŁĴĸ</w>\nhar sh\ner os</w>\ninsom nia</w>\nban kers</w>\nta emin</w>\nmis conduct</w>\nhu mber\ngi di</w>\nedu ardo</w>\ncon a</w>\nmusc ular</w>\nconsu ming</w>\nra sh</w>\ndon nie</w>\ndi pped</w>\ncol lie</w>\nsamu el\nmelt down</w>\nðŁĺįðŁĺį ðŁĺį\nme z\nexam ining</w>\nschwar tz</w>\npri stine</w>\nðŁĲ Ŀ\nve it</w>\nful filling</w>\nan esthe\ngue sses</w>\ndra ft\nsom me</w>\nsoli d\npati onal</w>\nho ped</w>\nevolu tionary</w>\nall er</w>\nenter tained</w>\nsli ps</w>\nlud wig</w>\nconclu des</w>\nsen sible</w>\nbon net</w>\ncra ze</w>\ntra s</w>\nhaz ards</w>\nconst antine</w>\ned ics</w>\nstar trek\nto c</w>\noccu pational</w>\nin cheon</w>\ndeepikap adukone</w>\npizz as</w>\nnew comer</w>\nde part</w>\noppre ssion</w>\nebon y</w>\nfoss ils</w>\ntro jan</w>\nel en\nste aks</w>\nk hou</w>\npositi oning</w>\nug by</w>\nred cross</w>\nak h</w>\ndol ce</w>\nus mnt</w>\npp en</w>\ndil ig\nma vs</w>\ncall er</w>\ncost ello</w>\nâĽ Ħ\ndy n</w>\nthing s\nrhin os</w>\na xi\nsar kar</w>\ncon vocation</w>\natt ers</w>\nss ss\nfun gus</w>\neu gen\nruss o</w>\nsqu at</w>\nw sb\neli on</w>\nwilliam sburg</w>\ns off</w>\ndefici ency</w>\nbe arer</w>\no kin\nkey stone</w>\nt wain</w>\ncal ming</w>\nbreak able</w>\nwa res</w>\nhorser acing</w>\ncom bs</w>\nbun ting</w>\nu it\nt land</w>\nðŁĴĻðŁĴĻ ðŁĴĻ</w>\nga stron\nsab ot\nick ers</w>\ncommissi oners</w>\nsen ate\nii ot</w>\nath ena</w>\nnit rogen</w>\nan tony</w>\nero tic</w>\ndi alo\nmis sou\nhypo cr\nâľ Ī</w>\nkaeper nick</w>\ncan v\nd roo\nclevel and\no sh\nmon sta</w>\nstefan o</w>\n^ )</w>\nsh ul\npo ison\nha e\ncommerci als</w>\nma ul\nnit ro</w>\nco worker</w>\nalo e</w>\nvap or</w>\nt ents</w>\nrussi an\nqu id</w>\nquestion able</w>\nmid get</w>\npo ker\ngirl friends</w>\nsin the\nerit rea</w>\nten ure</w>\ndepos its</w>\nbuc keyes</w>\nspot ter</w>\ntheod ore</w>\ntrin ity\njoaqu in</w>\nu cci</w>\nfollow the\ncaf c</w>\nmp a</w>\nðŁĲ »\nplo tting</w>\ndom ino</w>\nta ek\nsion ally</w>\ndicap rio</w>\npa p</w>\ncar mel\nig er\nbt cc</w>\nbeth le\nwww bigbaldhead</w>\nfoo die\nbagh dad</w>\nmason ry</w>\noff ended</w>\nà ·\nà¸ ģ</w>\nsc ro\nvers es</w>\nori ent</w>\nar ches</w>\npi yu\nknow your\ngre e</w>\nta kers</w>\ngu ard\ndish on\nbucket list</w>\nbha fc</w>\nwar dly</w>\nðŁİīðŁİ Ĭ</w>\nleigh ton</w>\npe w</w>\nstra y\nassaul ted</w>\nin hal\nly fe</w>\namar keting</w>\nl x</w>\nkat z</w>\nubun tu</w>\nme o</w>\ncarto onist</w>\nturno ver</w>\nmi z</w>\ndis like</w>\nmul len</w>\nmo f\nbl and</w>\nhi des</w>\nemer ges</w>\nchori zo</w>\ntruste e</w>\nma hog\nlan sing</w>\nparalym pic</w>\nfa int</w>\nfa una</w>\nch al</w>\nsn ar\ncat h</w>\nbent on</w>\ncast illo</w>\nsli ppery</w>\napric ot</w>\noec d</w>\nbar o</w>\nl z</w>\nhe ming\nclow ns</w>\nco workers</w>\nperu vian</w>\ncommu ters</w>\ny ell</w>\nðŁļ ´\nunder ing</w>\nv j</w>\ntt p</w>\nfli pk\nw ana</w>\nsoc ent</w>\nĤâĸ Ĥâĸ\nà¤ Ĥ</w>\noo sa</w>\njag ger</w>\ndi sm\ne less</w>\nd ham</w>\ncali f</w>\na official</w>\nec lip\nharro gate</w>\ngra pp\ncom rade</w>\nn tr</w>\nconcentr ate</w>\nthi ghs</w>\nbit coin\nbel arus</w>\në ĵ\nend uring</w>\nnow watching</w>\nindustri al\npi p</w>\nar on\nar at</w>\nÂ ®\nwhit by</w>\noooo ooo</w>\nsa ree</w>\ntic als</w>\nmis leading</w>\nyo on\nyear s\nsle igh</w>\nroman ian</w>\nsciss ors</w>\nvam pires</w>\nac up\nab ba</w>\nth weeksary</w>\ncent ri\nfl ye\nu o\nc bi</w>\nbu ena</w>\nsin d</w>\nmar ino</w>\nbur r</w>\nre building</w>\nà¤ ²</w>\nanniver saire</w>\nac ca</w>\nðŁĴĢ ðŁĴĢ\ngett ing\ntu lips</w>\nwolf pack</w>\nâľį ï¸ı</w>\nmore than\nta kin</w>\nðŁ¤ĺ ðŁı»</w>\nu be</w>\nmon ic\ndou bts</w>\nmo wer</w>\nco balt</w>\ndon ne\nspecul ation</w>\nargu ably</w>\nkak u</w>\nhtt ps</w>\nprosecu tion</w>\ndin ah</w>\nstam atic</w>\ndisclo sed</w>\nbever ly\nfl wx</w>\ncra bs</w>\nextraordin aire</w>\nwar mest</w>\nimper i\no logists</w>\ntrac es</w>\npar c</w>\nlake side</w>\nam r</w>\nter i</w>\nhour ly</w>\ndomin ation</w>\nar row\nshrews bury</w>\nance stry</w>\nwr angler</w>\ntrigge red</w>\npen sac\nroo ster</w>\nsurvi ves</w>\na on\nbo ko</w>\nval or</w>\nlove is\nla g\npe y</w>\nfo cal</w>\nout laws</w>\nbl anc\nartic ho\nwit s</w>\nmarsh all\ndie go\nsupport small\nu ca</w>\nsa h\nje et</w>\nsyn ago\ngover ning</w>\nðŁĴ ¬</w>\nsal ads</w>\ncre ate\nmiri am</w>\ncen sored</w>\nami de</w>\nno u</w>\nz eta</w>\nallegi ance</w>\n* )</w>\nbl m</w>\nric an</w>\npa stors</w>\noly mpus</w>\nblo c</w>\nwhir l\nstar ry</w>\npr one</w>\ny k</w>\np ne\ncongratul ating</w>\nbe v</w>\nso ber\nlove island</w>\nsa ir</w>\nan ing</w>\ntutor ials</w>\nq e</w>\nlun d\nin ist</w>\ncle ver\ntaxpay er</w>\nali z\nwren ch</w>\ndd ling</w>\ncap ri</w>\nh pa</w>\nðŁı» âĢįâĻĤï¸ı</w>\nna j\no j\nfuturi stic</w>\njelly fish</w>\nðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥</w>\ncel ery</w>\nplan k</w>\nfil a</w>\nne me\nun healthy</w>\nlec tions</w>\nðŁ§ ¡\nrit chie</w>\nn ws</w>\nmi kha\nwonder woman</w>\nâĢ İ</w>\nhip stamatic</w>\nka g</w>\nðŁĴľðŁĴľ ðŁĴľ</w>\npoul try</w>\nmo w\nwor ds\nlo ff</w>\nðŁ¤£ ðŁ¤£</w>\nrelat able</w>\nre mixes</w>\nkeny atta</w>\nke m\nre signed</w>\nfo d\nstra igh\nj lo</w>\nhu tch\nbox ers</w>\ncolle en</w>\nmag s</w>\ninstruc tional</w>\nko l</w>\nattrac ts</w>\npra g\naccount ant</w>\ngo ggles</w>\nbr u</w>\nth ole</w>\nmar row</w>\nleu ke\noc to\npon ds</w>\nbubb ly</w>\nhe ist</w>\nìĹ ĳ\nim p</w>\na har\nha unt</w>\nhall mark\npsy ch\nkkkk kkkk\ncol umb\njump suit</w>\ncost co</w>\nsi delines</w>\nag gies</w>\nover turned</w>\nni b</w>\nkey chain</w>\nfu k</w>\nf af\nmi am\nassist ants</w>\ncy cled</w>\nri der\ndam mit</w>\nred wings</w>\nmag es</w>\nkin s\nì Ĥ\nho d\nson t</w>\ncarol ine\n\" '</w>\ncu le</w>\nbra id</w>\nfel ony</w>\nar ities</w>\nruther ford</w>\ndepic tion</w>\nisab elle</w>\nro ach</w>\nk day</w>\nfifth harmony</w>\nem y\nli gam\nbari sta</w>\nalbu querque</w>\ngro ss\nðŁį º\noo ks</w>\nðŁĳ ¼</w>\ndun can\ntry in</w>\njag s</w>\ng ould</w>\nli tho\nâģ £\nÐ° Ð\nsam my\ntun g</w>\ncas ser\napo lo\naaaa a</w>\nman g</w>\nas ics</w>\nsh en</w>\np ye\ntur bul\nss p</w>\nsaint sfc</w>\non lin\nn anny</w>\nhe ster</w>\ndo z</w>\nà¸ Ķ\nth read\nren ts</w>\nkh and</w>\nðŁĴª ðŁı½</w>\nun conditional</w>\nrob son</w>\ncar re\nph on</w>\nsacrific ed</w>\nÂ £\nauto s</w>\npar ker\noc a</w>\nlog in</w>\nkee gan</w>\nhard cover</w>\ndough nuts</w>\nðŁĮ İ\nspit fire</w>\nrefresh ments</w>\nsaskat oon</w>\ncommod ore</w>\nj f\nrub ber\nhalam adrid</w>\nchild care</w>\nstra da</w>\nio m</w>\nri k\ndak ar</w>\nther mom\ncro pped</w>\ngar u</w>\nali k</w>\nven i</w>\ni ft\nsi ka</w>\nritu als</w>\nz ul\ne ch</w>\nÂ ©\nsu dan\nl land\ni me</w>\ndo cker</w>\nì ¤\nfe ared</w>\nfa o</w>\nwal ter\nno g</w>\nmutu als</w>\nl h</w>\nali gn</w>\nmon ia</w>\nconcep tart</w>\nðŁĻı ðŁı¼\nsco e</w>\ncompet ence</w>\nsw ine</w>\nly me</w>\nlaun ch\ngreen er</w>\nabstract art</w>\ninqu is\ngran ada</w>\nga elic</w>\nflu ff</w>\nd backs</w>\ngrave yard</w>\nba be\nacade mic\nadventur ous</w>\njoh ann</w>\n~ !</w>\nbi bi</w>\n| #</w>\npl ings</w>\ngett y\nas b</w>\nâĿ¤ï¸ı @</w>\nstaf f\nreligi ons</w>\nbang or</w>\nworld bookday</w>\nme gh\nde vin\nash ore</w>\nmeri dian</w>\ngi thub</w>\nqui z\nall stars</w>\nbe stest</w>\nir resi\nack er\ndo te</w>\nwar rington</w>\npol ly</w>\nnewor leans</w>\ncr ou\nwi gs</w>\nche y</w>\nsmithson ian</w>\nla sag\nde tour</w>\nbor is\nstra ps</w>\nmari ah\ninten tionally</w>\nko h</w>\nðŁį ¸</w>\nssi an</w>\nmar issa</w>\ncor al\nepiscop al</w>\ncasu alty</w>\ntom o\nsupply chain</w>\nsam p\non go</w>\nro o</w>\ncavi ar</w>\np fw</w>\nclau dio</w>\nbuff alo\ns ations</w>\nmat ty\nsnap back</w>\nl ds</w>\nal arms</w>\nmat te\nâĺ Ķï¸ı</w>\nconditi oner</w>\nd ors</w>\nhe x</w>\nfi zz</w>\na stri\nsus sex\nsecur ity\nqa eda</w>\nall star\ncocac ola</w>\nas one</w>\ncl icks</w>\nsc ans</w>\nmu te</w>\nhe avier</w>\nðŁİ §\nâĺ ŀ</w>\nlv l</w>\nbook boost</w>\nyoutu be\nfla shes</w>\nf jor\nc su</w>\nexplo de</w>\ndo dge\ncair n\ngonz ales</w>\nth ill</w>\npel le\nhart ley</w>\nrenew able\nre tin\ne stre\ncostar ica</w>\nshipy ard</w>\nnc fc</w>\npri ya</w>\na ghan</w>\nan ath</w>\nplu gin</w>\nco rey\nre bound</w>\nor u</w>\nkat rin\nhor mone</w>\ngi m\nmahin dra</w>\ns sus</w>\npark land</w>\nhar per\nfanta stic\ninfer no</w>\nep ilo\nwrest ling\nfe ct</w>\nc it</w>\nac oun\nto ssed</w>\nmonu mental</w>\nchar tered</w>\nbu st\npe tra</w>\nâĮ ļ\nwildflower hour</w>\nsweat ers</w>\n* .</w>\nbl er\nate ch</w>\ngo wan</w>\ndemo graphic</w>\nbra l</w>\nsuici de\nrenov ations</w>\nvu el\nsin ister</w>\nar mani</w>\nmiso gy\nph arrell</w>\nnap s</w>\nun iting</w>\ncrusad ers</w>\ncor gi</w>\ninsu red</w>\nthan i</w>\nno or</w>\ng q</w>\nd ada</w>\nbicy cles</w>\nsnu ggle</w>\nsch an\nten berg</w>\nss al\nfe mme</w>\nbo il</w>\n½ ï¸ı</w>\nre ap</w>\noccur ring</w>\nhus sein</w>\ndivi d\nsto ke\nsh alom</w>\nna ia</w>\no lic</w>\nfrustr ating</w>\nÙ ĩ</w>\nig s</w>\ngro ver</w>\nscen arios</w>\nn ds</w>\nbru tality</w>\nmed alli\nbu on\nsas s</w>\nskate boarding</w>\nony x</w>\nlor ry</w>\nny u</w>\ngau tam</w>\nmm ings</w>\ngu g\nend i</w>\nlo thian</w>\ncomm ando</w>\nchal k\nph ora</w>\nasse ssing</w>\nti gh\ncrun chy</w>\nad ay\nis l</w>\nci ara</w>\npilgri ms</w>\nkam al\np to\nbrit anni\nt ani\nsm c\nl ure</w>\napp store</w>\nab y</w>\ngolf ing</w>\ncl c</w>\nfa u</w>\nan as\nshu tting</w>\nregul ated</w>\ncarn age</w>\nscow boys</w>\nall enge</w>\nc ma</w>\nhumbold t</w>\nrel le</w>\nku mb\nher i</w>\nrefin ery</w>\nsound check</w>\nd wayne</w>\nbos nia</w>\ni sp\nthe alth</w>\nanni v</w>\nrelev ance</w>\nmy a</w>\nbag gage</w>\ndre ad</w>\ns bc</w>\nth ed</w>\nbu h</w>\nhi jab</w>\nlo id</w>\nke w</w>\nc te</w>\nrespec t\nlovel ies</w>\ncu bes</w>\ncelebr ate\ndir t\nsav ers</w>\n_ ,</w>\ngar ment</w>\npulit zer</w>\nmas jid</w>\nbeat port</w>\nal arts</w>\nencry ption</w>\ns ner</w>\nple ads</w>\nfound ry</w>\nsym metry</w>\nru mi</w>\nbirth place</w>\nscallo ps</w>\nsupp le\npivo tal</w>\nt ati\nno de\nso d</w>\npro xim\ntr ics</w>\ncol dest</w>\nbren t\nmand u</w>\ncla ir\ne ach\nand alu\nhi ddleston</w>\nðŁĲ º</w>\nmel ts</w>\nv ance</w>\npin n\nse ments</w>\nscre ened</w>\nsa chs</w>\no bl\nic ha\nâĺĺ ï¸ı</w>\nschool ers</w>\nheal ed</w>\nlo gged</w>\nðŁ¤ĺ ðŁı¼</w>\nic us</w>\nbore dom</w>\nb ish</w>\nb ffs</w>\ntal king\nsure sh</w>\nhoo kem</w>\nde on\nde fl\nei leen</w>\nðŁį ķ\nwomen intech</w>\nri sotto</w>\nrang er\nadverti se</w>\nà¸ ģà¸\ntel ly</w>\nla go</w>\ndart moor</w>\nd ong</w>\nsk ates</w>\nlo go\nun ner</w>\nmail box</w>\nma sala</w>\nlo oooo\namethy st</w>\nche wing</w>\nc bb</w>\naustrali ans</w>\nrc mp</w>\ngame art</w>\n# ...</w>\nkor n</w>\nextre mism</w>\nfruit ful</w>\nanci ent\npu bg</w>\npol ite</w>\nwh it</w>\nmur als</w>\nm gr</w>\nline man</w>\ndav ao</w>\nste ms</w>\nten nis\nav age</w>\ntu pac</w>\ngigan tic</w>\nhs bc</w>\nauto biography</w>\nup the\nà¸µ à¹Ī</w>\nre gal\nfig uring</w>\nku l</w>\nmis sy</w>\nhoo p\ngra s\nfor ums</w>\nback lash</w>\nabduc ted</w>\np nw</w>\nmin ic\nbu tt</w>\nbott oms</w>\nat on\nven g</w>\nðŁĮ ı</w>\ndel aney</w>\nprab hu</w>\nfan club</w>\nover haul</w>\nhealth ye\nsy no\naa f</w>\nren amed</w>\nkim i</w>\nun cle\nman city</w>\nse u</w>\nqu anti\neste em</w>\num in</w>\nen zo</w>\nmel vin</w>\nunder go</w>\nj har\nfar ah</w>\ncoast ers</w>\nhumph rey</w>\nmh z</w>\nchildren s\n^ .\nd hi\ndisrup tive</w>\nintegr ating</w>\nr nb</w>\nover sized</w>\na ide\nne au</w>\ndocu mentation</w>\nðŁĳĢ ðŁĳĢ</w>\npal o</w>\nhear th\nri yad\npun ctu\nabc news</w>\nsecu res</w>\nboy band</w>\nbir ch\nju co</w>\ntra ff\nlegislat ors</w>\nbay a</w>\nãĤ ¯\nno ises</w>\ncollec ts</w>\ns warm</w>\nk ner</w>\nbi shops</w>\nstur geon</w>\nsnapp ing</w>\nmo l</w>\nfre aky</w>\nchair person</w>\ntro p</w>\nlyn ch\ncar cin\nart sy</w>\ne sto\ncha i\nfl ur\ninv ali\nsau sages</w>\nim el\nj or</w>\nfun fact</w>\nwit ter</w>\npuni shed</w>\nac ons</w>\nh ya</w>\nre versi\nem c</w>\ndif fu\nz x</w>\nsp aw\ncla d</w>\nd mit\nhol land\nfre sco</w>\npay roll</w>\nab undant</w>\nstu ffing</w>\nmor o</w>\nc ny</w>\nboy cott\nwend y\nele ven\npro voc\npil ot\ntr x</w>\nbe ad\nclimate action</w>\nri on\nassi e</w>\nì ĸ\no sm\nislam ic\nho ar\ngood reads</w>\nal ici\nafterno ons</w>\nspoke sman</w>\njo lie</w>\nit as\nmasc ara</w>\nâĻ© âĻ«</w>\npre vail</w>\nbeetro ot</w>\nlu jah</w>\nk li\ndod ger</w>\nÂ »\nru le\nl n\nscre am\nho bart</w>\ncol bert</w>\nr tc</w>\ner m</w>\npat ro\nquo ting</w>\ns live</w>\nque st\nnon fiction</w>\nsemin ary</w>\nprosecu tors</w>\nve st\nexpress way</w>\ng ge</w>\nnau tical</w>\net f</w>\nðŁİīðŁİ Ĭ\ndur ation</w>\ncha ired</w>\nthe film</w>\nfab io</w>\nshe h\ncan o\nðŁĴª ðŁı»\nwith draw</w>\n! :)</w>\ncor pus</w>\nphen om\nyel p</w>\nla wn\nent om\nsnapp er</w>\nbut te</w>\npin ball</w>\npro xy</w>\nlibr e</w>\nalle vi\nn ada</w>\ngabri el\nfo wl</w>\neure ka</w>\ndaph ne</w>\ntu nes\npun ched</w>\nwh ore</w>\njo g</w>\nren tial</w>\nman ners</w>\no pe\nwh ufc</w>\ngu th\nrevol t</w>\nsne aker\nphilharmon ic</w>\nho ste\nsovereign ty</w>\nðŁĻıðŁĻı ðŁĻı</w>\nfish ing\nsci art</w>\nfe ta</w>\ni pp\ndump ing</w>\nkel own\ngir i</w>\ndig its</w>\nsal u\nsan jay\ntwee ters</w>\nsp as\ncol chester</w>\nsc ab\nma dd\nà¹ Ħà¸\nÄ ĩ</w>\nged don</w>\nmarch for\ndo p</w>\nmaure en</w>\nun plugged</w>\ndi do</w>\nfashion blogger</w>\nup a</w>\nmex ic\ntar y\npol ye\njame son</w>\nv t\ngrin der</w>\nmad dy</w>\nconsult ancy</w>\n¬ ë\nleagueof legends</w>\nac cents</w>\num ni</w>\njane iro</w>\ntu ss\nh ens</w>\nampli fier</w>\nto shi\npret tier</w>\npre vents</w>\nnew town</w>\nred wood</w>\nvant age</w>\nball ard</w>\nar tof\na she</w>\na sion</w>\nlac ey</w>\nap at\ngro ve\nà¸ Ħ</w>\nrw and\nreal tors</w>\ntra itor</w>\nbed ding</w>\nÃ¶ r\nzi on\nfla shing</w>\ncam pan\nboom er</w>\nsecretari at</w>\nab ol\nliti gation</w>\ncont amination</w>\nse dly</w>\nshred ded</w>\nin for\ndo herty</w>\nbench mark</w>\nro che</w>\nskate board</w>\nsho vel</w>\ni zz\nto pper</w>\no ster\nlaby rin\nautu m\nk ong\nhum mus</w>\nvi z</w>\ntech news</w>\nkla us</w>\nam using</w>\nsocialmedi amarketing</w>\ni des</w>\ncast ell\nste e\nunderestim ate</w>\ncal ab\npa ign</w>\nb illing</w>\nunanim ously</w>\ng mb</w>\nfly fishing</w>\nhath away</w>\ncommerci al\ncolour ing</w>\nskul ls</w>\npivo t</w>\nte p</w>\ntb c</w>\nmotor way</w>\nx press</w>\nconstruc tive</w>\npu k</w>\nunder lying</w>\nkir sten</w>\nmani ac</w>\ncha o</w>\nse ma</w>\nchiff on</w>\nðŁĳĮ ðŁı»\nver ona</w>\nkom o</w>\nstan doff</w>\nwi ped</w>\nc ated</w>\nbla ir\nwor kin\nm sc\nbethle hem</w>\nswi pe</w>\nunexpe c\npe es</w>\npe tri\norig ami</w>\nðŁĳ ħ\nmex ico\nflav or\nru dd</w>\ncannab is\nmar u</w>\nri ddle</w>\nwor shi\nsil on</w>\nsch at</w>\nap se</w>\ntang er\nbi ous</w>\ne er</w>\nquesti oned</w>\no zar\ndan k</w>\nangle sey</w>\nchar an</w>\nbak u</w>\ncompe ten\nre pri\nbat ter</w>\nsa xon</w>\ncal ves</w>\nleng ths</w>\n$ $$</w>\nâŀ ¡ï¸ı\nimmer sion</w>\nga unt\ncar ry\ncy to\nb anda</w>\nshu tt\nexperi ence\nel gin</w>\nmous se</w>\nta z</w>\nê µ\nin correct</w>\nen z</w>\nb ham\nmor on</w>\nso ver</w>\nar un</w>\nti pped</w>\nla ble</w>\nde arly</w>\nbau tista</w>\ní Ļ\nmor tal\nwoo p</w>\ndt la</w>\nsho cks</w>\ndav os</w>\nðŁĵ Ŀ\nswim wear</w>\nher man\nðŁĳĩ ðŁĳĩ</w>\nz ir\nneglec ted</w>\ngrac ed</w>\ncampu ses</w>\nav s</w>\nar ora</w>\nswach hb\nlive pd</w>\nac cra</w>\nenqui ries</w>\nshoo ters</w>\nkur t\nvancou ver\nbrad ley\ngar da</w>\ng Ã¼\nol la</w>\nattrac ting</w>\nup ton</w>\nne win\nlu mia</w>\nfurn ace</w>\nev ers</w>\ne on</w>\nsw a</w>\nroo kies</w>\na oc</w>\nv ss</w>\nbris ket</w>\ntor ch\nyo da</w>\nheart land</w>\ntac o\nph ony</w>\nfood bank</w>\nab bey\nbab ylon</w>\nu y\ngre ate\nexpre sses</w>\nd andy</w>\nsc apes</w>\nsurvi vor\nron d\ne ci\nha vin</w>\nab el\nchil dish</w>\ntor que</w>\nwav y</w>\nur self</w>\nkanye west</w>\nyear of\nale stine</w>\no brien</w>\nal fon\nsk ag\nkore an\nanchor age</w>\nval eri\nde w\nðŁİ ¨\nland slide</w>\ncar ole</w>\nchrist en\ngo phers</w>\naf i</w>\npriyan ka</w>\nq q\npower of\nit te</w>\npc so</w>\ntw ol\npr y\nintellec tu\nguer rero</w>\npi les</w>\nwish list</w>\nw ren</w>\ntime table</w>\në ı\nprodi gy</w>\ngibb ons</w>\n. /</w>\nne ur</w>\nanz ac</w>\nmur ray\nvie st</w>\npla ster</w>\nla ir</w>\nart gallery</w>\ninter continental</w>\ng br</w>\nbell ator</w>\nnam joon</w>\nmam mals</w>\nam el\ny aw\nsaras ota</w>\ncam ar\nbud ding</w>\nsum mari\naco sta</w>\nla sh\ney ou\npost graduate</w>\ninstruc tors</w>\nti g</w>\nconst ant\nwere wolf</w>\nic os</w>\ncla s\nglen n\nbud ge\nðŁĻ Ĥ\ner ta</w>\nsta ins</w>\npersecu tion</w>\ncumb ri\no ch</w>\nsyner gy</w>\nhu ang</w>\nscand in\nmid terms</w>\ncomment ator</w>\nregar ded</w>\nperpe tual</w>\nbo iling</w>\nal p\nlan ge</w>\nsch le\nfac eli\ntwee ta\nri dden</w>\nok toberfest</w>\ncharlotte sville</w>\nik lan\njo u</w>\nch atham</w>\nb sc</w>\nðŁį ¦</w>\nstra uss</w>\nmel low</w>\nxx xx\nhappy hour</w>\nre actor</w>\nww er\ndistr action</w>\nat orial</w>\nðŁĴª ðŁı¼\ntwin peaks</w>\nfay ette\na or\nko k\nbro om\nsy fy</w>\nou se\nam ag\nØ ·\nubis oft</w>\nlu lu\nhall mark</w>\nstu art\nit ya</w>\nsi deline</w>\nvenge ance</w>\nre lu\nsex ism</w>\nboun cing</w>\nun ites</w>\ngu stav\nte ssa</w>\nstu mp</w>\npro clamation</w>\nima x</w>\ndivid end</w>\ncol by</w>\nðŁį İ</w>\nplay wright</w>\nun safe</w>\nco smo</w>\nðŁĩ²ðŁĩ ½</w>\ncup board</w>\nconstitu ents</w>\nang lia</w>\nram page</w>\nðŁĺįðŁĺį ðŁĺįðŁĺįðŁĺį</w>\nthan ked</w>\ntake aways</w>\nshro ff</w>\nde bat\nkh ur\nconduc ts</w>\nformat s</w>\nà ©\nport age</w>\ngraph ers</w>\nu ten\npre m\nmo ines</w>\ncondem ns</w>\ns ous</w>\nl ps</w>\nf cs</w>\ndeal ership</w>\nleuke mia</w>\nbure au\nski d</w>\nguardi ola</w>\nca ster\nthir d\navoi ded</w>\nen cyclo\nc sr\nvi xx</w>\nanaly zing</w>\nshe ar</w>\ndulu th</w>\nshap iro</w>\nchan ting</w>\nstre sses</w>\nas be\nmil itia</w>\nãĥ ª\ncol lin</w>\narsen e</w>\nsure sh\nteach ings</w>\nyi xing</w>\nsh ill\nnu des</w>\nsv u</w>\nclear water</w>\nwar ped</w>\npro life</w>\nartist son\nit u</w>\nversail les</w>\ngalax y\nax el</w>\nspring st</w>\ncal a</w>\nhu hu</w>\nsc u</w>\ncommit ments</w>\nexe ter\npoign ant</w>\nmo tion\nconserv atory</w>\nrow dy</w>\nrec alled</w>\nmu sk\nemb elli\nso the\nâĺ Ģ\nsto pper</w>\nsch ild</w>\nto pe\nel mo</w>\nzi el</w>\nj om\nbarn sley</w>\nsnow den</w>\non tour</w>\njour ney\nhills borough</w>\npar ole</w>\nw ts</w>\nmo ving\nag ility</w>\ntiv o</w>\nff ers</w>\nkindle unlimited</w>\ng wen\nann an</w>\nah mad\ntex tured</w>\nhepat itis</w>\ndra m</w>\ninsi ders</w>\ntis sues</w>\nãĥ Ħ</w>\nfc barcelona</w>\ncr atic</w>\nna acp</w>\npe can</w>\nf gm</w>\ncustom ize</w>\nconcer t\ng sm</w>\npe g\np one</w>\njustin trudeau</w>\nsuper cars</w>\nhappy holidays</w>\nbu lar</w>\nado x</w>\nlap tops</w>\ndigital health</w>\ndestin ation\ngradu ally</w>\náĥ ¦</w>\npopp y\nss l</w>\ninhi bit\nstar light</w>\nof fro\nglo omy</w>\nx per\nhal der</w>\nim plants</w>\nle to</w>\nhass el\na as</w>\nun told</w>\nen ci\nliber ia</w>\nor an\ncon tests</w>\nil ah</w>\nsma g</w>\nsc out\nmari anne</w>\ncr yo\nschedu ling</w>\nlo s\nkan e\nstutt gart</w>\nne se</w>\nlaw rence\nda in\npho tom\ncar ou\nà¸ £\ng wy\nnational dogday</w>\nroa sting</w>\nband camp</w>\nkentu cky\nstret ches</w>\nke rel</w>\nca she\nãĤ ¸\nsta x</w>\ntran si\ndog gie</w>\nat ric\nhal le</w>\nci vic\nbrow ning</w>\nlein ster</w>\ncat day</w>\nhigh land\njoy ous</w>\nin cumb\nor lando\nro mo</w>\ncol ton</w>\ndel ta\ncar ab\nro tc</w>\naster oid</w>\ngoose bumps</w>\nmo logy</w>\nyo ko</w>\nan ds</w>\ntomor rows</w>\nred carpet</w>\nsm p</w>\nca sio</w>\nðŁ¤£ðŁ¤£ ðŁ¤£</w>\nse au</w>\nrejec tion</w>\nrot ating</w>\nbi partisan</w>\nth un\nmat i</w>\nbon i\nol l\nener gye\ndo it\nl j</w>\nmother hood</w>\nlou ise\nneck laces</w>\nel ite\nni x</w>\nl cs</w>\nen v\ngl u</w>\nle sh</w>\ncran k</w>\nsu sie</w>\nm clau\nso tu</w>\ncrow ley</w>\nrat ri</w>\nuse d\nbre ton</w>\nalfre do</w>\nye o\ntravel pics</w>\nti pp\nelli son</w>\nsax ophone</w>\nme red</w>\nheu ghan</w>\nta ine</w>\nf es</w>\nvi ro\nsuppo sedly</w>\ni as\ndige stive</w>\ny le\nli zzy</w>\nwildlife photography</w>\nbri anna</w>\nwest field</w>\nra ined</w>\nam her\nðŁĺĦ ðŁĺĦ</w>\ndistribu te</w>\nbott om\npre serving</w>\noil and\ncraf ty</w>\nde scen\ncol ling\nshakespeare sunday</w>\nr wc</w>\nang led</w>\nci an</w>\nt ations</w>\nmon tage</w>\nme yers</w>\nfrance sca</w>\nðŁĮ ·\nwi ggins</w>\nsan ford</w>\nvolunte er\ncar ra\nbar k\nvari ed</w>\npl in</w>\nam u</w>\nkap il\nrock ers</w>\nqu ind\nbr ane</w>\nin mate</w>\nent al\nimpro vis\nmichi gan\nre tweeting</w>\nprogre ssing</w>\nmercedes benz</w>\nsmo ker</w>\nphysi ology</w>\ndor ado</w>\nwatt pad</w>\nh wa</w>\nsr bachchan</w>\nw ga</w>\nvol atility</w>\nhi re\nac ap\nwn ba</w>\nhein z</w>\nstit ches</w>\nkidnapp ing</w>\nbur ys</w>\nlim b</w>\nf itters</w>\nthumb nail</w>\nton e\nmir and\ndesi rable</w>\nad dison</w>\ntar an\ntamil nadu</w>\nspec tator</w>\nsoci ology</w>\namit shah</w>\nremo tely</w>\nâĻ ¦\nham id</w>\nr ds</w>\ng lee\nsmooth ly</w>\nsch ro\ner c</w>\nlali ga</w>\nhe als</w>\nus f\nni shi\nd hu\nun il\nh le</w>\ntro mb\nbhu tan</w>\npilip inas</w>\nse ung\nwhit man</w>\nte y</w>\nmin ce</w>\nsnow boarding</w>\nre au</w>\nk ker</w>\nav o</w>\nzach ary</w>\nran veer\nti k</w>\ngover n</w>\nqu al</w>\nbeck y\nanthropo logy</w>\natt en</w>\ngrocer ies</w>\nde bit</w>\nwar p</w>\nsil icon\nhawa ii\nðŁĴ ħ</w>\npomegran ate</w>\npe er\norang es</w>\npeople schoice</w>\nend ure</w>\nðŁĴĽ ðŁĴĽ\nãĤ¹ ãĥ\nac ial</w>\na haha</w>\nstu k</w>\nimper ial\nbl ond</w>\npow der\nkno ts</w>\nvin ce\nwood lands</w>\nden a</w>\nwatch in</w>\nmat cha</w>\nma hat\ngalax ies</w>\nmiddles brough</w>\nk Ã¶\nstre e</w>\nresc ues</w>\nwal do</w>\nlero y</w>\ndesp ic\nreal ities</w>\ntm nt</w>\nha q</w>\nun o\npe c\nbolly wood\nblin ds</w>\ndesign thinking</w>\nhe ms\nand hra</w>\nab sen\nfan s\nste ch</w>\nshire hour</w>\nbla ine</w>\nshak ti</w>\npu rely</w>\nðŁı ı</w>\ntra fal\nke ynes</w>\ngr ate\nto bias</w>\nspon taneous</w>\nsatur ated</w>\ncaval ry</w>\npri sc\nðŁĺ ĳ\nwh t</w>\npas si\n~~ ~</w>\nvir at</w>\npatt inson</w>\nla o\nweir do</w>\nsym pathy</w>\nju da\nocca sionally</w>\ncred ited</w>\nstat u\nes co\nhil ly</w>\nesc ape\ndischar ge</w>\nse er</w>\nmay nard</w>\nsud bury</w>\nz lat\nor al\nwe er</w>\nencoun tered</w>\nsm elling</w>\nover sight</w>\nê ¸\nthat cher</w>\nmack ay</w>\nyou can\nfre ep\nfreed oms</w>\nprophe cy</w>\nho e\nishq ba\ndra ke\nqu its</w>\npel led</w>\ntur k</w>\no vi\nwesle yan</w>\nnew music\nleg g</w>\nch eng\nh illi\nay y</w>\npan ties</w>\nad versity</w>\nad jac\nvaccin ation</w>\nju ke\nga c</w>\nexce ed</w>\ntime sof\nsta ining</w>\nep cot</w>\nv ital\nup ward</w>\nbethe sda</w>\napar k</w>\nma hi\ncamp fire</w>\nenchan ting</w>\nrha pso\nh z</w>\nna ver</w>\nfa x\nvali dation</w>\nac ad</w>\nny r</w>\nas ym\ncoordin ated</w>\ndepar ted</w>\nall ery</w>\nvar ies</w>\nspr ite</w>\nchap lin</w>\nss occer</w>\ns wat\nbre t</w>\nrelu ct\ntunes app</w>\nsuper star\nreminis cing</w>\no co</w>\nhome grown</w>\ndough nut</w>\nun canny</w>\nla pd</w>\nthyro id</w>\n! âĿ¤ï¸ı</w>\nbotan ic</w>\nbre s</w>\nsp ade</w>\ni ste</w>\necho es</w>\ndu lil\nbur sting</w>\nqui ero</w>\nðŁĳ İ</w>\nloy ola</w>\namuse ment</w>\nha ils</w>\nsleep y\nburgl ary</w>\nâľ ı\nro gue\ncot land</w>\nmo ors</w>\nlow er\nwic ked\nðŁĶ Ĭ\ncompet iti\nargent ine</w>\nyvon ne</w>\nkarti keyan</w>\nili ary</w>\ngat sby</w>\nprecin ct</w>\nsix ty</w>\nna ji\ncam s</w>\npractiti oner</w>\nðŁĺ³ ðŁĺ³\npu ne\nneg li\njuli en</w>\ninv aded</w>\ncali br\ncla m</w>\nduba i\nmu k</w>\nlan tic\nproduc t\nfe dex</w>\nï¸ı :</w>\neu ra\ndari us</w>\ns ling</w>\nvirtual reality</w>\nhome stead</w>\nðŁı³ï¸ıâĢį ðŁĮĪ</w>\npac ed</w>\nin ha</w>\npul mon\nla zy\npremi ering</w>\nma stered</w>\nin he\ncon gregation</w>\nba jo</w>\nsport ing\nnew jersey</w>\nhor ny</w>\nlma oo</w>\nleng thy</w>\ndu t\nyo gh\nswe aring</w>\nphilosoph ical</w>\npap ua</w>\nin ski</w>\nknow les</w>\ndy ke</w>\nâĢ ²</w>\nto ken\nmc guire</w>\nri ot\nprobab ility</w>\nmc con\ngro s</w>\nsu mat\nc ite</w>\nda a</w>\non da</w>\nmad dow</w>\nche w\nboard games</w>\nspar ked</w>\nre claimed</w>\nad hd</w>\nny se</w>\nimwith her</w>\nequ inox</w>\nboo ths</w>\nbalsam ic</w>\nha zy</w>\ndor chester</w>\nag os</w>\nse aw\nmoder ator</w>\nseri ea</w>\nander sen</w>\npilgri m</w>\nâŃĲ âŃĲ\nitch en</w>\nhal li\nx ton\nnathan iel</w>\nmun ition</w>\ncelesti al</w>\nga f</w>\nzo om\nmark le</w>\npen thouse</w>\ncal e</w>\ns fa</w>\nbar king</w>\ntu cket</w>\nem ery</w>\ncal orie</w>\nli que\nad ar</w>\nmc nam\ntor tilla</w>\nwood pecker</w>\nmo town</w>\nbad ger\nayr shire</w>\nscram ble</w>\ndd ay\ncra ziest</w>\nper rie</w>\ncho co</w>\ncast e</w>\ni ot\nwre cked</w>\nselec ting</w>\nuss r</w>\ngra ft</w>\npun t</w>\nlab ou\nir st</w>\nba ek</w>\nÛ Į</w>\nsu ki</w>\nque u\nach at</w>\nte ster</w>\naug mented</w>\nwc vb</w>\nsin ks</w>\nðŁĵ »\nra ke</w>\ninter ne\nbe cause\nbelle vue</w>\nune arth\nlight en</w>\nðŁĺ £</w>\nturn around</w>\nlabe led</w>\nunemp loyed</w>\ntwitter kurds</w>\nle ia</w>\nh ye\ngreat er\nðŁĲ İ</w>\ntim ed</w>\ni red\ne tt\nlimit ations</w>\ncab e</w>\ns out</w>\nbee ch\nanni hil\nre trac\nyo ona</w>\nang er\nden nis\nsupp lying</w>\ndi z</w>\n\" (</w>\nsc ur\ngun man</w>\nsu ho</w>\nsauvi gnon</w>\nà¸ ¥</w>\nwi ley</w>\nland on</w>\nchoreo graphy</w>\npre historic</w>\nðŁı ĥ</w>\nvar gas</w>\nassess ments</w>\npinn acle</w>\ndi i</w>\nchamber lain</w>\nì Ī\nv p\npresent ers</w>\ndeut sche</w>\nsun shine\nsal utes</w>\nr one</w>\nbu siest</w>\n- .-</w>\nmotor ists</w>\nhemi sphere</w>\nal wx</w>\nps p</w>\now a</w>\nden ying</w>\ncho c\ngu tier\nhan uk\nmus kete\njait ley</w>\nse wage</w>\nt ame</w>\nthin kers</w>\nshi m</w>\nse quo\npap ar\nmiddle east</w>\nk wa\nke g</w>\npatag onia</w>\nno y</w>\nbar Ã§a</w>\ntake off</w>\nhe a</w>\nà ¬\nn sc\ng dc</w>\nðŁĳ Ī\nmou stache</w>\nmel ania</w>\nthr a</w>\nâ¬Ĩ ï¸ı</w>\npier ced</w>\nze us</w>\nfon ts</w>\nber a</w>\nit iner\nq atar\ncontr ary</w>\nire land\ni fy</w>\nou los</w>\ncommun al</w>\nfin s</w>\nun paid</w>\npa a</w>\nðŁĳĩ ðŁı»</w>\nri os</w>\nou p</w>\nf iller</w>\ncafe teria</w>\nà¸ Ń</w>\nkas i</w>\ncali ber</w>\nz ulu</w>\nv sco</w>\nts ford</w>\ndragon fly</w>\nsmo kin</w>\npi st</w>\npsycho logist</w>\ndiplom at</w>\nwe bs</w>\nbuc cane\nà® ¾</w>\nmotiv ational\ndu ne\nba e\nc fs</w>\nwith out\ner on</w>\ni ac\nate e</w>\npen sion\nfra zier</w>\nen sis</w>\nsk is</w>\npar ting</w>\nger y</w>\nterrit ories</w>\nnach os</w>\neni ght\never lasting</w>\nmsd honi</w>\ntel e</w>\nsp un</w>\npo di\nsab ah</w>\nenviron mentally</w>\nce ase\nbeau mont</w>\nmar ta</w>\nkel vin</w>\nho ff\nsun il</w>\nn da</w>\nco b</w>\nsh ale</w>\nree dus</w>\nun boxing</w>\nu bio</w>\nre opened</w>\nn all</w>\ncapsu les</w>\nmar r</w>\nhimalay as</w>\nswee ter</w>\nja z</w>\nf mr</w>\ntwee ter</w>\ndha ka</w>\nna u</w>\nde mi\nd fs</w>\nta urus</w>\nfad ing</w>\nit utes</w>\nci p\nover flow</w>\njef frey\ndon ny</w>\ncar tunesapp</w>\nðŁį ĳ</w>\nprefe cture</w>\ndanc ed</w>\nc pt</w>\nple asing</w>\nital k</w>\nearth quakes</w>\nul ation</w>\nhi o</w>\nãĢ ĭ</w>\nant an\nnutri ent</w>\nde ere</w>\nselec ts</w>\nenrich ment</w>\nr iti\ntram pol\nbl amed</w>\nj ia</w>\ncontribu tors</w>\nchesa peake</w>\npi geons</w>\ntribun al</w>\nmad uro</w>\nw su</w>\nilo ve</w>\neffici ently</w>\ndar cy</w>\nwar ms</w>\nar ra\nec u</w>\nho wer</w>\nstrugg led</w>\nrajini kanth</w>\nðŁĺ¢ ðŁĺ¢\nhou sing\nstr at</w>\neli x\ndisp ro\nraf fic</w>\nthi erry</w>\nna sty\nc fb</w>\nstaf fing</w>\nal ma\nback ers</w>\nhen son</w>\nsky walker</w>\nreale state\nroo s</w>\nness y</w>\nchan ce\ncair ns</w>\nc ci\npe dal\nly ft</w>\ncross word</w>\nwait er</w>\nonly in\nkru ger</w>\nk ir</w>\nalej andro</w>\ncar tier</w>\ncar rera</w>\nre paired</w>\nou at</w>\nun clear</w>\nun breakable</w>\ntoday in\nqu eries</w>\njo dy</w>\ngen ital</w>\nwin ner\nto l</w>\nkelown a</w>\nfascin ated</w>\nãĥ ¬\nsris ri</w>\nsqu ared</w>\nspr ung</w>\nnegoti ate</w>\npriv ately</w>\nav en</w>\n>> >>></w>\ng ical</w>\ngav in\nchester field</w>\nzu mba</w>\nor r</w>\nnat alia</w>\nimpeach ment</w>\nmn l</w>\ncar at</w>\ncriti que</w>\ncredi ble</w>\ntrac y\ntan i</w>\nmusi k</w>\njig saw</w>\ngam bia</w>\ntol kien</w>\nfe u</w>\nas per\nsav ory</w>\nfo xx</w>\nf itt\nmar lon</w>\nl rt</w>\nv ell</w>\np br</w>\nimprison ed</w>\ni om\nchu l</w>\nwind shield</w>\nkay e</w>\nba a</w>\nchor d</w>\ns art</w>\nal gon\nminister ial</w>\nnat geo\nla zio</w>\nnor ms</w>\nðŁĳį ðŁĳį\nlic king</w>\nfut bol</w>\nun sung</w>\ndalla scowboys</w>\nsh red</w>\ndistur b\ndev ine</w>\nbe ards</w>\nch f</w>\nb day\nro sso</w>\nig or</w>\nay i</w>\nsi ren</w>\nk air\nsti les</w>\nro f\nmag nets</w>\nun cover</w>\nmou se\nbang ing</w>\nsi ghted</w>\nspe ople</w>\nimpac t\nrow land</w>\nkir a</w>\nenviron ment\nlove the\np sis</w>\nmish ra</w>\ngl endale</w>\nca jun</w>\no che</w>\nde ception</w>\nsex ist</w>\nstra ws</w>\ns ga</w>\nbuff er</w>\napost le</w>\nsp l</w>\npop up</w>\nðŁļ Ĺ\nr g\nup er</w>\nball in</w>\ni dy\nocca sional</w>\nnational park</w>\nðŁı Ĭ\nu an</w>\ninnov ation\nà¸ «\nte aparty</w>\nre tte</w>\ncounter fe\nb ha</w>\nrec s</w>\nig en</w>\nðŁĮ Ĳ</w>\nhumming bird</w>\ncu r</w>\nha ven\nla zar\npue blo</w>\n: :\nzi onist</w>\nop ath\ninver ness</w>\npromo ter</w>\ncarto on\ncabine ts</w>\nmahog any</w>\nsurve ying</w>\nr ational</w>\nfeel ing\ntesti fy</w>\nso w</w>\noc on</w>\nà¸ ¢</w>\nne el\nmar is</w>\nsol itary</w>\nche mo\nrad cliffe</w>\nsim ons</w>\nros ary</w>\nnew er</w>\njo die</w>\nre tali\npra wn</w>\npad dy\nhen ge</w>\nk ala</w>\nim plant</w>\nat y</w>\nbren twood</w>\npar adox</w>\nene z</w>\nre designed</w>\np our\nwy d</w>\nal de\nà¯ ģ</w>\nsol d\nbiomed ical</w>\nà¹ Ĥ\ntt tt</w>\nmat teo</w>\nys er</w>\nnew ton\nde bun\nner dy</w>\nloo l</w>\nwo on</w>\nelisa beth</w>\nec c</w>\nwh i</w>\nach o</w>\nsalv age</w>\nsal aries</w>\nqu ity</w>\nnavig ating</w>\noph thal\ncon soles</w>\nre built</w>\no pec</w>\nast ers</w>\nsho red\nset list</w>\nkathr yn\nrhy mes</w>\nre visiting</w>\nash ish</w>\nli ft\nre post\nsole il</w>\nâı ±</w>\nweal th\nsa at\nwe c</w>\nking james</w>\nflipk art</w>\nfield work</w>\nse gu\nmo dal</w>\nbu b</w>\nare rs</w>\nðŁį Ĵ</w>\nclo oney</w>\npad dington</w>\nnecess ity</w>\nguth rie</w>\npen te\nli mo</w>\njo sie</w>\nar tin\nen c</w>\nl hs</w>\nbetra yal</w>\ninfo graphics</w>\ni er\nmo a</w>\nhear ings</w>\nbon jour</w>\nsym bolic</w>\nag ro\nwed ges</w>\nkrist ina</w>\nwild flower</w>\nathle tic\nphotograph y\npe sh\nca hill</w>\nchi lean</w>\ngou l\nfi oren\nðŁĳ ¶</w>\nz il</w>\nsk im\nbad oo</w>\ndeli a</w>\ntre ble</w>\nn cc\nðŁĩ¦ ðŁĩ\na house</w>\nbul lock</w>\nsol itude</w>\nØ§Ù Ĩ</w>\ncan cers</w>\nfutureof work</w>\nhu tch</w>\nwater shed</w>\nwar mongers</w>\nsp illed</w>\ncolom bo</w>\nmo th\nassoci ations</w>\nweigh ed</w>\nglobal goals</w>\nnot just\nchrist i</w>\ntor g</w>\nswe ating</w>\nman eu\nclu sters</w>\nâĢ¼ï¸ı âĢ¼ï¸ı</w>\nta ped</w>\nul y\ntru sting</w>\nyu suf</w>\nte in</w>\nra b</w>\n, ,,,</w>\nsin ai</w>\naudi ble</w>\nexplic it</w>\ncro wns</w>\nsch iz\nat least</w>\nðŁĹ £\nde bra</w>\nje suit</w>\nene gger</w>\nz hen</w>\none sie</w>\ni it</w>\nss f</w>\ngur gaon</w>\nchak ra</w>\nbear cats</w>\nk ran\nk awa</w>\nreque sting</w>\nhan over</w>\ng end\nsor os</w>\nmer cy\nlovel y\ndo omed</w>\ntim my</w>\nku z\nul l\nab ram\nsa ison</w>\nãĥ «\nclean ers</w>\nre mo</w>\ncircu its</w>\nbar red</w>\no th\nmo ist</w>\nmadele ine</w>\ngall o</w>\nu j\nper mits</w>\nhea viest</w>\ncar ols</w>\naz te\ngior gio</w>\nflo ats</w>\ndecl aring</w>\nus rc</w>\nmin at</w>\ncraf ts\npri ma</w>\nconven i\nnickelo deon</w>\ndanc ing\nceremon ial</w>\nblo gg\ntw p</w>\nanglic an</w>\nshe k</w>\nk nick\n( ((</w>\nhubb ard</w>\nharve y\nhit man</w>\nfen g</w>\nwe some</w>\nfor za\ns word\nop us</w>\nbro m</w>\ngi bility</w>\nz al</w>\nm unch</w>\ndance hall</w>\ngre edy</w>\nhd mi</w>\nre birth</w>\nðŁĺĭ ðŁĺĭ</w>\ns world</w>\nfigur ine</w>\ncom post</w>\nk f\nengra ving</w>\ngior no</w>\nst ana</w>\nk man</w>\nham ster</w>\ncompos ers</w>\naj e</w>\nfunc tionality</w>\npol k</w>\nis ons</w>\nair planes</w>\nte se</w>\nhor rors</w>\nmusc at</w>\ngi ven\nsp ence</w>\nðŁĩ¸ ðŁĩ\neli ot</w>\nach illes</w>\nfre ck\ncrypto currencies</w>\nsou ther\nhal o\nbor neo</w>\npolit ic\nhahahaha h</w>\nup state</w>\nsi ena</w>\nobsc ure</w>\nhau sen</w>\nlloy d\nhappy friday</w>\nmotor bike</w>\nbon a</w>\nameric as\nhol s</w>\n- (</w>\nspor ty</w>\nun aware</w>\nreven ues</w>\nchristop her\nbank sy</w>\nav an</w>\nev apor\ncom press\neyel iner</w>\nto dos</w>\nbuff y</w>\nrenewable energy</w>\nly rical</w>\nar chan\nrapi st</w>\nfair trade</w>\nlma ooo</w>\nbeat z</w>\npro active</w>\nla pse</w>\nir ical</w>\nrevers al</w>\npo de\nmcin tyre</w>\nmac au</w>\nãĥ ķãĤ\nnash grier</w>\nf sa</w>\ng all</w>\nçĶ Ł\nperpe tr\nil ya</w>\nconfigur ation</w>\n% ;</w>\nstr ange\nrac i\nà¸ ĩ</w>\npic kups</w>\nkov sky</w>\nmam mal</w>\nw ps</w>\ng able</w>\ncompar ative</w>\nz h\nsave our\nda vey</w>\non etsy</w>\nmu ssels</w>\nmis er\ncri stina</w>\nelectr on</w>\ncra ve</w>\nlo ren</w>\nprecipit ation</w>\nm z</w>\nðŁį «</w>\nvin cen\nsnow board</w>\nno ida</w>\nah n</w>\nmarin ated</w>\ng tr</w>\ntown hall</w>\nmin is\nbethe l</w>\nadv an\nsu ra\nshi el\nfur ry\nðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ</w>\nlyn d\nso il\nsc ence</w>\nsen eca</w>\nshar jah</w>\ndick ens</w>\ncredenti als</w>\nav ar\nper k</w>\nrequ iring</w>\npre fer\nj ian</w>\nde ca</w>\nr ach</w>\ning for\ndel e</w>\nbe ep</w>\nðŁĴ »\ncis ely</w>\nhu ddle</w>\ngreen sboro</w>\nhaw king</w>\nho ax</w>\nhang ar</w>\nç ľ\nmis o</w>\nlo vin\ngre ta</w>\nab ad\nlogi e</w>\nat an</w>\nsnow flake</w>\nmahe sh\nfear the\nal kal\nbobb lehead</w>\nba hn</w>\nju dged</w>\nfu tu\nfeli x\nðŁį ĵ</w>\npi ke\nder iv\nnotic es</w>\nau er</w>\ndis super</w>\nor da\nwi pes</w>\nam ino</w>\nstri kers</w>\nfoo tb\ndram as</w>\npun ching</w>\nscore less</w>\nheming way</w>\nbi h</w>\nbal lad</w>\nchat ter\nam mo</w>\nkle in\nfabric ation</w>\nkari m</w>\nz end\nhi sto\nvol ta</w>\nrock y\nmarke ter</w>\nxtre me</w>\nsequ encing</w>\nparadig m</w>\ncle ats</w>\nboom ing</w>\nâģł âģł</w>\nblock ade</w>\npromp ts</w>\nyogh urt</w>\npur pose\nnu r</w>\nregu late</w>\nnois y</w>\ning rid</w>\nbird watching</w>\nbar tender</w>\nÙ ĥ\nwor dof\ncha otic</w>\nshor ty</w>\nel dest</w>\nz app\nonceupon atime</w>\nfl yo\nrit os</w>\nmike quind\nðŁĲ ´</w>\nregi stering</w>\n. ]</w>\nad ol\ngg gg</w>\npur ge</w>\nkid lit</w>\nar bor\nval ves</w>\nsynago gue</w>\no th</w>\nunanim ous</w>\nveri fication</w>\ndar rell</w>\nãģ Ħ\nvander bilt</w>\ntape stry</w>\npro sper</w>\ndid dy</w>\ndra fting</w>\nde cep\nmarqu is</w>\nst int</w>\nmichael jackson</w>\npee led</w>\nmen us</w>\nbb b</w>\nsc are\nema il\nwri gley</w>\nit is\nf ell\nsome thin</w>\nbar ra</w>\ned gar\ndi pping</w>\npu ddle</w>\nsla de</w>\nlear ner</w>\njal en</w>\nðŁ§ Ĳ</w>\nthe daily\nmikequind azzi</w>\nju x\niq bal</w>\nmckin ney</w>\nra iser</w>\nef an\ndr one\ncat o</w>\npic ket</w>\ncro we</w>\nl att\nuk o</w>\ngiuse ppe</w>\nhin i</w>\nsynthe si\nponti fex</w>\nsong writing</w>\nto d</w>\nswit ches</w>\ndin ners</w>\nh q\ngabri elle</w>\npensac ola</w>\ncir cle\nexpo ses</w>\nev s</w>\nriyad h</w>\npro men\no ck\nsa j\ncit ation</w>\nbrew co</w>\njo si\nep aper</w>\ndri f\npoint less</w>\ntang led</w>\ncri pp\nline ups</w>\nfairi es</w>\ndaz e</w>\nmour n</w>\nbla dder</w>\nsal z\nbur undi</w>\nbook mark</w>\nthe people</w>\nsub sequ\nprinci pal\nsk er</w>\ncourt ney\na oki</w>\nrac ers</w>\nad m</w>\nmom a</w>\ncritical role\nhou n</w>\nshed ding</w>\nsa ka</w>\nace ous</w>\nmck ay</w>\nhus bands</w>\nÂ ½</w>\nme da</w>\naccu sations</w>\nro sel\nnc is</w>\nwitne ssing</w>\nor ama</w>\ngo ds\nhil ton\nel man</w>\nÃŃ n</w>\nmeg ap\ncra ven</w>\nannoun cer</w>\ncrit eri\nsheffiel dissuper</w>\nmilit ant</w>\nconsu l</w>\nhoo ded</w>\naby ss</w>\nb x</w>\nma dam\nlo cu\nmary am\nmanic ure</w>\ngrat is</w>\nac tresses</w>\nros ario</w>\nthis dayin\nking ly</w>\ngn ome</w>\ncel ine</w>\nr ous\nhe el\nlil ac</w>\nvish al</w>\nab h</w>\nthor ns</w>\ns ls</w>\nne al\nconstruc ting</w>\nbe ren\ns lang</w>\nma ins</w>\nfar ra\nsar ko\npai ge\ngu iller\nl ala</w>\nice berg</w>\nnou n</w>\nplann ers</w>\nu mmm</w>\nou ses</w>\nill ary</w>\nma an</w>\nbox ing\nzi pper</w>\nsrin agar</w>\nmigu el\no str\nmp o</w>\nresponsi bly</w>\nlan terns</w>\nappli ance</w>\nx b</w>\ngren ade</w>\nneglec t</w>\ndy sle\nham mock</w>\nne ctar</w>\nwit cher</w>\nr gv</w>\ndi ence</w>\nser bian</w>\nseed ed</w>\ncru z\nbi sh\nsp he\ne q</w>\nsky rim</w>\nalge bra</w>\nphil ately</w>\nbungal ow</w>\nge off\ny ves</w>\ndemand ed</w>\nconsider ations</w>\nthe vamp\npawan kalyan</w>\nco ded</w>\ngrit ty</w>\nerup tion</w>\nse infeld</w>\nuni denti\nëĭ Ī\nwor m\nac us</w>\nse ung</w>\ndun g</w>\nro land\nsu d</w>\ndi visions</w>\nab lanc\nshor test</w>\nj f</w>\np oun\nplant based</w>\nbe to</w>\ntough er</w>\nmc o</w>\ndon et\nmark us</w>\nv fl</w>\nðŁı ł</w>\nopen ing\nco ward</w>\ncaber net</w>\no xi\nburle sque</w>\nsand ra\nsu mo</w>\nconsi st</w>\ntho t</w>\ncay man</w>\nmotor ola</w>\ngutier rez</w>\nd slr</w>\ny w\nno bel\nnov ice</w>\nmoms demand</w>\ngrun ge</w>\nsp or</w>\nd cc</w>\npre sses</w>\nsli st</w>\nallot ment</w>\nvoc ational</w>\nft c</w>\npu ja</w>\nlo ven\nutt arak\ntan dem</w>\nsh ep\ncome dians</w>\nanat om\ncant wait</w>\nhealthye ating</w>\nwest side</w>\nmar gins</w>\nchi ang</w>\nasbe stos</w>\nstupi dity</w>\nproble matic</w>\nfit bit</w>\n: $</w>\nceil ings</w>\nshu a</w>\nprotec tions</w>\nbio tic</w>\nbeng ali</w>\nre sts</w>\nbien nale</w>\ntim o</w>\ncul min\ne minent</w>\naffe ction\nunbeliev ably</w>\nindividu ally</w>\ncanvas sing</w>\nwh itt\nnov asco\nchin son</w>\nh pe</w>\ngo w</w>\ngloucester shire</w>\npa o</w>\nthresh old</w>\nchev ron</w>\ns ine</w>\nwe ther\npp ie</w>\naqu ino</w>\nantwer p</w>\nâĸ ¬\npo on\ninst af\nequ ine</w>\ncinemato graphy</w>\nnbaf inals</w>\nvali ant</w>\nkil kenny</w>\nte rence</w>\nsyste mic</w>\nsr l</w>\np ound\nmade ira</w>\npl ough\ntre cht</w>\nmat ed</w>\nmp d</w>\nransom ware</w>\nph in</w>\nli qui\nbb ce\nboom er\ni standwith\ncon ju\nr te\nnar a</w>\nfoo lish</w>\nda shing</w>\nvier nes</w>\nbr ite</w>\nda u</w>\njuni per</w>\nai da</w>\nyou now</w>\nra zer</w>\nde i\nrepe ating</w>\ncomfor ting</w>\nadjac ent</w>\ne to</w>\nca sted</w>\nchat ur\nmu er\nsyn th\nsan itary</w>\nmac le\nindepend ent\nlaw ful</w>\ne erie</w>\nh or</w>\nðŁĴ Ń</w>\nam rit\nvel o</w>\nstation ery</w>\nmu f\nmay may</w>\ncontempl ating</w>\nelabor ate</w>\ngre gor\ndri es</w>\nac col\nà¸ ļ\nschwarz enegger</w>\nill nesses</w>\nday break</w>\nfollow back</w>\ncollu sion</w>\nelectr onic\njo vi</w>\nhiro shima</w>\nta w\nhom ec\nmic ah</w>\nqu itting</w>\nfro sting</w>\nben fica</w>\nhel i\ns ical</w>\npic cad\ncorpor ate\nment orship</w>\nyou are\nsing er\nshi va\nru ne\ning er\nri um</w>\nplay able</w>\ndoo p</w>\nwil low\nter re\nni p\nat d</w>\nwar bler</w>\nprofession ally</w>\ner ase</w>\nproce ed</w>\npedestri ans</w>\nmis chief</w>\nben ding</w>\nalas kan</w>\nc kett</w>\nmo p</w>\ndd les</w>\nshut ter</w>\nge ared</w>\natene o</w>\nma deline</w>\ng ations</w>\no sha</w>\nder ick</w>\nsw ild\nan gry\npat ents</w>\nhun k</w>\ndecre ased</w>\nfr y\nðŁĴĸðŁĴĸ ðŁĴĸ</w>\nsal on\nquant ities</w>\nd ario</w>\nni gel\nku ma</w>\njen n\nhapp ye\nxx x\nrex perience</w>\npro s\nau sch\nrele ssly</w>\nham burger</w>\nfuku shima</w>\ner ne\nstat ec\nren d\nmay field</w>\nj one\nlef ty</w>\nbern stein</w>\nsm il\ngener ates</w>\nfore station</w>\nband its</w>\nta yo</w>\nr ca</w>\nac ci</w>\nrodri go</w>\nkn app</w>\nelo vers</w>\nvege tation</w>\nu ral</w>\nle ft\nħ ï¸ı</w>\nworl dre\nsur i</w>\nembar k</w>\nw son</w>\nba you</w>\nmu ller</w>\nmo vers</w>\nðŁķ º\npresby ter\nl f\ncre e\nbat b</w>\nsal am</w>\ndemonstr ations</w>\nan ec\nn pc</w>\nit ics</w>\nto graphy</w>\nre inst\nthur st</w>\ntal e\noff ences</w>\nsmart city</w>\nbro tha</w>\nofthe year</w>\nin valuable</w>\near n\nðŁĳı ðŁı½</w>\nkre mlin</w>\ngra dy</w>\ntown fc</w>\nguern sey</w>\nma ha</w>\ncontag ious</w>\ndre x\nbe en\n( Â£</w>\nnati vity</w>\nk tm</w>\nsomer halder</w>\ncomp ounds</w>\níķ ĺ\n\" âĢ¦</w>\naf g</w>\nott news</w>\nh ound\nfire fly</w>\ncil an\ndonet sk</w>\nvolunte ered</w>\nak ira</w>\nè ª\nsing ul\nst h</w>\ndro wned</w>\nmand o</w>\nhe ir</w>\nðŁİīðŁİ Ī</w>\ntax is</w>\ny uki</w>\nvel d</w>\nk ans</w>\nel k\nran ts</w>\nhash tag\nt eng\nro g</w>\na at\ngru b</w>\ne ber\nin india</w>\ncolo ssus</w>\nsig ni\nso ever</w>\nmile stones</w>\nder o</w>\ndifferen tial</w>\nphu ket</w>\nmaster mind</w>\nan gh\nmel ani\nbro ker\nactor vijay</w>\nstun ned</w>\ncontinu ity</w>\naf fl\nvo cal\nperenni al</w>\nfianc Ã©</w>\nin complete</w>\nhun ts</w>\nre issue</w>\ndomin ates</w>\ntur meric</w>\nro am</w>\nri on</w>\nbag ged</w>\nnas sau</w>\nfu t</w>\nx ox</w>\nnational trust</w>\njo ye\nsan o</w>\nhearth stone</w>\ndis respect</w>\nle es</w>\nh se</w>\nsiber ian</w>\noffe e</w>\nre stock</w>\nwolf gang</w>\nre gan</w>\nplan o</w>\nun wind</w>\nre par\nmil le</w>\n] ,</w>\nskul l\nfat ally</w>\nconcep tual</w>\nðŁĮ ²\nf Ã©\nber to</w>\nb ms</w>\nu a\nmag na</w>\nnotre dame</w>\nle te</w>\nla undering</w>\nheartw arming</w>\nbuffe tt</w>\ngo at\npe abo\nwind mill</w>\nv ac</w>\ncontinu ally</w>\naz alea</w>\nmem brane</w>\ncan cels</w>\nmake yourown\nathe red</w>\np to</w>\ntor pe\nðŁĺ ł</w>\nðŁĴ §</w>\nsc ares</w>\nle aking</w>\nz et\npix els</w>\nac i</w>\nkh il\nmarath i</w>\nðŁĻı ðŁı½\nu la\ntam u</w>\nchandi garh</w>\nz agre\naa b</w>\npronoun ced</w>\naubre y</w>\nsand er</w>\npun ta</w>\nhar low</w>\nic elan\ncelebr atory</w>\nso t</w>\nunci ation</w>\nstru ly\nmc dowell</w>\ndeepi ka</w>\nremin ders</w>\nmy stical</w>\nct c</w>\nchat ted</w>\ns ica</w>\nbar gains</w>\nch hat\nru bin</w>\nm net</w>\noiland gas</w>\npel ican</w>\no at</w>\nmor ality</w>\nk our\ni h</w>\nnu clear\ngc u</w>\nric her</w>\nvene zia</w>\nm ma\nle ith</w>\nac company</w>\nrich mond\nsports net</w>\nba ahu\nsmu ggling</w>\nmm i</w>\nðŁĩ®ðŁĩ ª</w>\ntwi sts</w>\nsahi b</w>\n.... .\namb itions</w>\nil lo\nhistor ical\nfo rec\nshow biz</w>\npon ies</w>\nchas ers</w>\nremo del\nwill ing\nprince sses</w>\nam ple</w>\ncushi ons</w>\nac les</w>\nlot r</w>\nda ch\nan the\nin corporate</w>\nnew bury</w>\nki ri\nfried rich</w>\nab v</w>\nball ers</w>\nalber t\nðŁĳ Ń\nlet i</w>\nnan op\nci de</w>\nanal o\nn sf</w>\n)) ))</w>\ngriffi ths</w>\nvalen ci\nro ano\nfun run</w>\nbabys itting</w>\nca day</w>\nent re\nu ck</w>\nslu g</w>\ntic al\nthe sims</w>\nro ar\ncar ney</w>\ng am</w>\nsto we</w>\nfi d\nbun ny\nsham rock</w>\npe cu\nmol ina</w>\ngo cougs</w>\ncon tributes</w>\ntransform ation\nmo y</w>\nv aj\nsever y\nantioxid ants</w>\nthir teen</w>\nsight seeing</w>\nl j\nreversi ble</w>\nodd ly</w>\nhoo kah</w>\nnou vel\nhal al</w>\nfe i</w>\nstab les</w>\nmul t\nho pped</w>\nbra ids</w>\ninter change</w>\nghana ian</w>\nww ww\neth no\ncon junction</w>\nago v</w>\nye ti</w>\nearth and\nts p</w>\ncon serve</w>\nheir loom</w>\nmetaph or</w>\nwoo f\ntor io</w>\nself less</w>\nn wa</w>\nem ilia</w>\nyl ene</w>\ny xe</w>\ngi ar\nmoder ating</w>\npro bz</w>\nb fi</w>\nne er\ndu mmy</w>\nhanuk kah</w>\nwe bber</w>\nk v</w>\neye brow</w>\ndag ger</w>\nsu mp\nra ges</w>\nork ney</w>\ntb o</w>\nhal sey</w>\nassign ments</w>\ntr onic</w>\nscri b\nco on\nan war</w>\n# âĢİ</w>\njal ape\nflori da\nqu aid</w>\nhaw keyes</w>\nâĻ¡ âĻ¡</w>\nstreet car</w>\nro g\ndat lantic\ngran ola</w>\nun changed</w>\nexpect ation</w>\nÙ ĩ\nmar lin</w>\ngu mmy</w>\nðŁĻı ðŁı¾\nawareness month</w>\noil painting</w>\nmu th</w>\nper ch</w>\njun to</w>\nvilla gers</w>\nmor g\nche ated</w>\nweb comic</w>\nthe future</w>\nd ps</w>\nla kings</w>\nmen tioning</w>\nvo or\nident ities</w>\naccor d\nmc gu\nl pga</w>\nrum our</w>\nmassi vely</w>\nm pls</w>\nheal y</w>\nd ate\nsp oli</w>\nre visited</w>\non t\nal and\nscru tiny</w>\nlakel and</w>\nbl ending</w>\n< /</w>\nan kara</w>\njami edor\nmetab olic</w>\nf ences</w>\nann y\nå ħ\nsemic on\noo tt</w>\nspace ship</w>\nwack y</w>\nle ta</w>\nap ac</w>\nshe e</w>\nin herit\ndo res</w>\nðŁĩ¨ðŁĩ ¦\ngent e</w>\ntw ick\nri ms</w>\ngal ve\nde ville</w>\nking fisher</w>\nscorpi o</w>\now l\nal ar\nvari an</w>\nðŁĹ ĵ\nvene tian</w>\nstar dust</w>\nthen orth</w>\nq ing</w>\nhar rington</w>\nconsul ate</w>\nspectac le</w>\nho bbs</w>\ntur ks</w>\ngre er</w>\nmat ing</w>\nðŁİ Ģ\nðŁĮ Ģ</w>\ndirec ts</w>\ní ĭ\npompe o</w>\nvo iced</w>\nla os</w>\ntz u</w>\npro me\npri sm</w>\nmer c\nfortun ately</w>\nbc fc</w>\nmcdon nell</w>\nnot sorry</w>\nsmi led</w>\nt ba</w>\nfor war\nmid term</w>\ndar by</w>\nwe instein</w>\nup grading</w>\nwol ff</w>\nbron co</w>\ncab ello</w>\nðŁ¥ ĩ\nfi able</w>\nshar pe</w>\nbat tered</w>\nsat o</w>\nmyth ical</w>\ninstap ic</w>\npre pped</w>\neni um</w>\ne spo\ndi aper</w>\nexplan ations</w>\nwho pping</w>\nragn ar\npe el\nantibio tic</w>\nl acks</w>\nharri son\nli sm</w>\nau l</w>\nqu ail</w>\nmartin a</w>\nsent encing</w>\nsc ams</w>\ndi di</w>\ntr onics</w>\nãħł ãħł</w>\ngo ff</w>\nza in\nparam ore</w>\ncha ined</w>\nclin ton\nli ff</w>\ncott ages</w>\nem on</w>\nreve rend</w>\nconsu mer\nce an\nt any\nlum pur</w>\ne bay\nsto ol\nðŁĺ» ðŁĺ»\nta pro\nh ath</w>\nmodern art</w>\njust ine</w>\nprover b</w>\napp y</w>\ntra x</w>\nmani fest</w>\nam bu\nnai k</w>\npe pp\nr sd</w>\nmer chants</w>\nkitch ener</w>\nshi fted</w>\nli zz\nâĺħâĺħ âĺħâĺħ\nâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶ\nuto pia</w>\ntom o</w>\nou ted</w>\ncom ers</w>\nchiroprac tic</w>\nbook club</w>\ncin dy\npro hibition</w>\nse uss</w>\në¯ ¼\nthin kin</w>\nrr rr</w>\ngo fund\nt ack</w>\nom b</w>\ncatastro phic</w>\nling u\nguild ford</w>\nbo td</w>\nà¥ ĭ</w>\nplan ter</w>\n^ ^\nwin k\nkath mandu</w>\nsto ppers</w>\nsmooth ies</w>\nre efs</w>\nhin d\nbell amy</w>\nĦ ë\nwaste water</w>\nvo or</w>\nnat l</w>\n! ]</w>\nre el\ny ap</w>\nscoo by</w>\nwork space</w>\ncorin thians</w>\nbl un\nobli gation</w>\ng bbo</w>\ndy son</w>\ncra vings</w>\nell ington</w>\ndap l</w>\nwre xham</w>\nearthand clouds</w>\nuk runchat</w>\npositi oned</w>\nkal b</w>\nfour square</w>\njo ck</w>\nim pending</w>\neven ing\nath y\npro claimed</w>\nc ites</w>\nann apolis</w>\nsan i</w>\nmar th\nir l\naccom mo\nka a</w>\nfin a</w>\ny aa</w>\ndi sper\nec ar\nbha k\nwill y\nðŁĺĢ ðŁĺĢ</w>\nmcder mott</w>\nmo j\ngener ational</w>\nu said</w>\ntrain ing\nlon ely\nlo res</w>\nimpe cc\nâĢ Ĳ</w>\nbeav ers</w>\nma ki</w>\nhe b</w>\naap l</w>\nå ı\nwolver hampton</w>\nleader board</w>\nme u</w>\nc fa</w>\neaster n\nhu r</w>\ncivil war</w>\nou rage</w>\nhor ned</w>\nle high</w>\nawar ds\nevi dent</w>\ngi gab\nr ous</w>\nma del\nro byn</w>\nur gently</w>\nk ors</w>\nen as</w>\nheis man</w>\nbam bam</w>\nfab ian</w>\nf om\nevalu ating</w>\nassemb ly\nout sourcing</w>\nhun tsville</w>\nðŁĶ ª</w>\njusti fied</w>\ncashi er</w>\nsp aper\nbuc keye</w>\nanaly tical</w>\nillumin ati</w>\nau tho\no j</w>\nsha de\ngeel ong</w>\nwh ey</w>\nhe aton</w>\nterri bly</w>\nele k\nun charted</w>\nsd live</w>\nmoto cross</w>\nher mes</w>\ndar shan</w>\ndar lington</w>\ncash mere</w>\ngri pping</w>\ncilan tro</w>\npun ish</w>\n... :</w>\nðŁĴ Ħ</w>\ninst ance</w>\nder i\nlo bal</w>\nmuk her\nsp ar</w>\nthin ker</w>\nfre mont</w>\ncom piled</w>\ncolor ado\nvig ne</w>\nsm d</w>\nwhe ad</w>\nvilla ge\nle ek</w>\nformula e</w>\nta res</w>\npersist ence</w>\n?? ????</w>\nped ago\nhe z\nalzheim ers</w>\nvul ture</w>\noff ence</w>\nis great</w>\nsuff ra\nkick in</w>\nh mmmm</w>\nbroad way\nï¸ı @</w>\nart i</w>\nalli son\nendor ses</w>\nry u</w>\nlolli pop</w>\nsoy bean</w>\nkend all\ncer a</w>\ninv ade</w>\n( ðŁĵ·:</w>\nconver ter</w>\ncar pets</w>\nho bo\nfr it\npe ac\nes qu\nern an</w>\nou f</w>\nan il</w>\ndi ffer</w>\nch ing\nbre cht</w>\nsp g</w>\ndaven port</w>\nstra va</w>\nsever n</w>\nn gos</w>\nstor ians</w>\nfe te</w>\nparame dic</w>\nj hb</w>\nal amo</w>\nsne aking</w>\ngold coast</w>\nroof s</w>\nisi l</w>\ndepic ted</w>\nprojec tions</w>\nnu mb\no ss</w>\nep i</w>\nglu cose</w>\nzid ane</w>\ninfin iti</w>\níĺ Ħ</w>\nran som</w>\nton ics</w>\nfal k\ng ler</w>\nou tw\nre ss\nweek ly\nthe on</w>\nn ole</w>\nðŁĩªðŁĩ º</w>\nvol ley</w>\nsum mar\nneg ativity</w>\nsam son</w>\nye w</w>\naus votes</w>\nju l\nju dy\nf art</w>\npra yed</w>\npal ate</w>\nmulticul tural</w>\ndouble header</w>\ncycl ones</w>\npier re\nãģ ¨\nâĺ łï¸ı</w>\nrt w</w>\nconver ting</w>\nwir ral</w>\nl ari\nir relevant</w>\naustin mahone</w>\nan che</w>\nya an</w>\nsd f</w>\n$ .</w>\nexplo ding</w>\nulti mate\nprof ici\ngofund me</w>\ncell ence</w>\nep stein</w>\nbul lied</w>\nsep tic</w>\nà® ¤</w>\nlu mber</w>\ncu ff\nvsco cam</w>\npl or\nà¸ ¥\nse ok\nro to\nvenezu elan</w>\nsor ta</w>\nspir ited</w>\ndaniel padilla</w>\nteam sisd</w>\nradio active</w>\nicelan dic</w>\nðŁĴ ¤\nver e</w>\naccommo date</w>\nshi pp\not ter\nol ina</w>\ne go\nsu la\nsan antonio</w>\nde as</w>\nsimil arities</w>\nâļ ¾</w>\ny om\nbro ward</w>\nå °\ncan cun</w>\nveri fy</w>\non te</w>\ncandle light</w>\nìł ķ\ninf ants</w>\naz am</w>\nðŁĺ °</w>\nle ven</w>\nun stable</w>\nbloom ington</w>\nx ford</w>\ncon tour</w>\ny p</w>\ninnov ator</w>\nhistor ies</w>\npo y</w>\nlolo lol</w>\nex pires</w>\ncat alo\nbill boards</w>\nan ab\nel ic\nnovasco tia</w>\nfa ire\nìĿ ´</w>\nrock well</w>\ngr ille</w>\naz tec</w>\njoh or</w>\nur struly\nfi ren\ndun lop</w>\nid le</w>\nport man</w>\njo es</w>\ntx hsfb</w>\nhol m\ncham ele\nunder world</w>\nlo ss\nti em\ntherap ists</w>\npast ure</w>\npa ste\ning now</w>\nvul can</w>\nra gon</w>\nlar kin</w>\no shi</w>\nho co</w>\nchild hood\numb rel\nsuccess or</w>\nkath y\niz en</w>\n° ï¸ı</w>\nshare holders</w>\nol ga</w>\nai b</w>\nhe ap</w>\nfl aming</w>\nro u</w>\nair tel</w>\nrat t</w>\nz ane</w>\nvo w</w>\nthor ough</w>\nsn ag\npar th</w>\nun conscious</w>\nve y\nnew release</w>\ngh ee</w>\ncroati an</w>\nfacilit ating</w>\nswan son</w>\nastor ia</w>\nto logy</w>\nmaster y</w>\nðŁ¤ ĳ</w>\nbil bao</w>\ntrou pe</w>\nthe ori\nchey enne</w>\nro tt\nshore line</w>\ngra sso</w>\nmaster chef</w>\n+ )</w>\nvi x</w>\nellen show</w>\nas g</w>\nan ak\nku ya</w>\nsafar ilive</w>\ndebu ting</w>\nblu m</w>\nlist ener</w>\nv ins</w>\nbook shelf</w>\nsmart cities</w>\nmakeyourown lane</w>\n; ;\nðŁĲ ¯\nri zz\non ward</w>\nbull dog\nbear ish</w>\nvir uses</w>\nfri gh\nlin den</w>\nwe iser</w>\nsn t</w>\ngon a</w>\ndre sden</w>\nfl anders</w>\ncu k</w>\nwheel ing</w>\nba u</w>\natu esday</w>\nsurf ers</w>\nswi ft\nmc call</w>\narbitr ation</w>\naw d</w>\nmon c\nb ine</w>\nat x\nre fr\nmi ro\npo sey</w>\nn are\nrit ter</w>\nâģ ¦</w>\nplay book</w>\nblow out</w>\nsports manship</w>\ns oooooo</w>\nmalay alam</w>\ngri ms\nbur bank</w>\ninfin ity\nsar gent</w>\noit nb</w>\njoseph ine</w>\nski pping</w>\npar kin\nexcur sion</w>\nsemin ars</w>\njo har</w>\npar tridge</w>\npost game</w>\nll ll\nblan che</w>\ntemp ting</w>\nm na</w>\nlu ka</w>\nis ers</w>\nto ffee</w>\nbar ron</w>\nhe mmings</w>\nsa e</w>\ngo hawks</w>\ncu pid</w>\nli mbs</w>\ncon se\nun common</w>\nz ada</w>\nhead shot</w>\nso ils</w>\npione er\nmam ma</w>\nsem itic</w>\npan dey</w>\njamiedor nan</w>\nspl its</w>\nvel a</w>\nson i\nra ff\nt mobile</w>\nâŀ ĸ</w>\npra wns</w>\nlit er</w>\nenjo yment</w>\negg plant</w>\ntu b\ncultur al\nus ic\nsuspici on</w>\nsy cam\nsumm ed</w>\nma du\nho ck\nup wards</w>\neye ing</w>\nri ve</w>\nassas sins</w>\nâĤ ¬\nout fy</w>\nchi ves</w>\nt ner</w>\nla is</w>\npor ridge</w>\nsad dest</w>\nw cc</w>\nvick i</w>\nsna ils</w>\nbiz italk</w>\nmill an\nðŁĮ į\nsam oa</w>\nj ing\nmi key\ngu j\nchel ms\neli gibility</w>\narma da</w>\nthro p</w>\nsurger ies</w>\nãĤ ¿\nmo hawk</w>\nex its</w>\nme m</w>\nis lington</w>\nc me</w>\nland fill</w>\nkait lyn</w>\nðŁİ ¼\ncombin ations</w>\ntomorrow land</w>\nver b</w>\ncor a</w>\npre cisely</w>\nna om\nðŁĨ ķ</w>\nshr ink</w>\nsof tly</w>\nmerce de\nmand el\npoo dle</w>\nball erina</w>\nsop h</w>\njux ta\ny at</w>\nary an</w>\nhesit ate</w>\nlo wered</w>\ngu lar</w>\ndungeon sand\nron an</w>\nmy ri\nsp f</w>\nmen opau\ngra sp</w>\npa thi\nfe asi\nfla w</w>\nshi story</w>\nste ward\ngg le\nfay re</w>\ncli que</w>\ncredi bility</w>\nyo g\nsec tion\nmu sko\nse ville</w>\nno tt</w>\ncal m\nmate o</w>\nindic ted</w>\nfi ba</w>\nby l</w>\nlin o</w>\nu kin\n!! #</w>\nenig ma</w>\nsiri us</w>\nbu sc\nðŁį Ĭ\nmac kerel</w>\npsal ms</w>\na at</w>\ntomorrow spaper\nðŁĺ ĸ</w>\np fc</w>\n........ ...</w>\nshre k</w>\nmul let</w>\no sh</w>\ndanger ously</w>\nimmen sely</w>\nam ur\nðŁį Ĥ\npro por\nsy a</w>\nlondon marathon</w>\nabo ve\nobli gatory</w>\npro v</w>\nra cha</w>\nalex is\npri mary\nsh h</w>\nether net</w>\nd stv</w>\ncou gar\nun lucky</w>\nni l</w>\nsteak house</w>\nmel a</w>\nfc bayern</w>\ncause way</w>\nca therine\nfluore scent</w>\nnx t\nto kyo\nau sp\nreleg ation</w>\nqui zz\nshored itch</w>\nproud tobe\npromo s</w>\ninter acting</w>\nhome brew</w>\nda esh</w>\nw pg</w>\nstead ily</w>\nprovin ces</w>\nbal lots</w>\ni ah</w>\nal to\n< <<</w>\nyou u</w>\nri ley\nprefe rence</w>\ntra verse</w>\nincen se</w>\nam munition</w>\nho dges</w>\n# @</w>\nhail state</w>\ntart an</w>\nwitch craft</w>\nvent ilation</w>\nliber tarian</w>\n! âĢ¦</w>\now es</w>\n% !</w>\nong chang</w>\nbru shing</w>\nle ic\nfi ber\nunder attack</w>\ndown load\nex pir\nhy o</w>\npompe y</w>\nmc bride</w>\ny ag\nstre e\ncom bat\nten ding</w>\nai ra\ngug gen\nab ra</w>\nin na</w>\nfli ps</w>\naw al</w>\nm ach</w>\ndol lar\ninspir ations</w>\nz um</w>\no du\nit ty</w>\nvideo game</w>\naqu aman</w>\nhar u</w>\nbel fast\nje b</w>\nbut ch</w>\nus gs</w>\ncalcu lus</w>\ngo yal</w>\nmor gen</w>\nx finity</w>\nstand up\ncontrac ep\nsab re</w>\nna be\nin secure</w>\ngener ously</w>\nepit ome</w>\nl w</w>\nt ca</w>\nnarr atives</w>\ndon nell</w>\npand as</w>\nber gh</w>\ntu t</w>\nker al\nfel icity</w>\nbr ampton</w>\nquinte t</w>\nnom ore\nðŁĶ ĳ</w>\nlo i</w>\nalham dulil\nðŁĶ¥ ðŁĶĹ</w>\nston er\nshaw l</w>\nclin ical\nbren dan\ngon e\nfla wed</w>\ntri ppy</w>\nj g</w>\nal location</w>\npo aching</w>\nve vo</w>\nmo cks</w>\nlef tist</w>\nbon uses</w>\ncondem ned</w>\nabil ity\nst ating</w>\nmicrobi ome</w>\nbio logist</w>\nfor you</w>\nwahl berg</w>\nss or</w>\nift ar</w>\nw ul\nÑĦ Ð¾ÑĤ\npom er\nme me\nver te\ntre ll</w>\ntra it</w>\nin let</w>\nhormon es</w>\ndeliber ately</w>\nvill ar\nbattle ship</w>\np bl</w>\ntw enti\nho kies</w>\ndal ail\nsay a</w>\nmay fair</w>\nhan s\ndie ts</w>\nâľ¨ âľ¨\nod in</w>\nhot spur</w>\npap i</w>\nk ana</w>\nk amp\nfin na</w>\nflo tus</w>\nti ans</w>\nunic orns</w>\ntribe ca</w>\nchang ers</w>\nfore ground</w>\nout a</w>\ninv aders</w>\ngett ys\ntomorrowspaper stoday</w>\nmac millan</w>\nhand written</w>\nw fp</w>\nu de</w>\nstate of\nbase d\nâĺģ ï¸ı</w>\ncas m</w>\npsy ched</w>\nhistor ians</w>\nfol d\nd da</w>\nag grav\np ans</w>\ngreen way</w>\nau sv\nðŁĺ ¶</w>\nshradd ha\ninde x\nbe sti\nzim mer</w>\nt ness</w>\neye shadow</w>\not te</w>\ngo ts</w>\ndistribu ting</w>\npro min\nyo l</w>\nace a</w>\ntram rahim</w>\nhoo per</w>\nsupre me\njam min</w>\nintu itive</w>\nquali fications</w>\nsli m\nsid di\njay ne</w>\ntri pping</w>\ng tx</w>\npun s</w>\ne manuel</w>\nom g\nmid summer</w>\nin to\nsuccul ent</w>\nri en</w>\nnew mexico</w>\no or</w>\nhoo king</w>\nin f</w>\nðŁ¤ Ŀ</w>\nflir ting</w>\nna hi</w>\ng friend</w>\nt ps</w>\nhel ix</w>\nz s</w>\non ie</w>\nct f</w>\nkri s\nirresi stible</w>\nfla p</w>\nðŁĳıðŁı» ðŁĳıðŁı»\nus wnt</w>\nru d\nram ps</w>\npin oy</w>\not w</w>\nlol z</w>\nlow ering</w>\nfavor ite\nt mc</w>\nphra ses</w>\nher mi\naver aging</w>\nem br\nben o\nestu ary</w>\nsle eve\nribb ons</w>\nta sh\nà¸ ¹</w>\nx f</w>\naw gs</w>\nsun ited</w>\nbrew eries</w>\nanir ud\npun ches</w>\nol die</w>\nip ads</w>\nwi fey</w>\nland lords</w>\nd ji\ngun ner</w>\níķ ´</w>\ntex an\nex op\ncas sandra</w>\ns off\nðŁļ «</w>\nigh ton</w>\nbak ers\nawareness week</w>\nv all</w>\near p</w>\nbts bbmas</w>\napologi zes</w>\nâļĵ ï¸ı</w>\nwas ps</w>\nstates man</w>\nsnat ch</w>\nwatch dog</w>\nra fi\nafter party</w>\nspi ke\nj er</w>\nperi ph\nr nc</w>\nmu ll</w>\nle en\nshi es</w>\nli eu</w>\nurstruly mahesh</w>\nmer ton</w>\nde sai</w>\nshi f\nðŁĮ ±\npe dic\ngos ling</w>\narrang ing</w>\nww g</w>\ngen y</w>\nyou uu</w>\nnetfli x\ne ttes</w>\nk wi\nbernar dino</w>\nam iga</w>\nØ ¨</w>\nkashmir i</w>\nt ings</w>\nemer itus</w>\nde cat\nab domin\ndc i</w>\npha ses</w>\nd jan\nbe am\nop ry</w>\ni shed</w>\nthe ellenshow</w>\nthe st</w>\nhabit ats</w>\nto ons</w>\nmclau ghlin</w>\nri pper</w>\nmicro biology</w>\ntal aga</w>\nclu eless</w>\nss u</w>\ncro che\nbro mance</w>\nlonge vity</w>\nzagre b</w>\nprev ented</w>\ntra ve\nspo ilt</w>\ndarry l</w>\nmigra ine</w>\nal cat\ndd dd</w>\nvi v</w>\nser pent</w>\nmat tel</w>\njam a</w>\ncon quest</w>\nî Ħ\nsam sung\npresbyter ian</w>\nket ch</w>\nfire fox</w>\nmo tif</w>\nle c</w>\ncho pping</w>\ncher no\nj ann\nðŁĲ °\npro lon\nwake up</w>\nconver gence</w>\nmersey side</w>\nheart broken</w>\nlo oming</w>\nhal lucin\nmai ze</w>\ncommun ism</w>\nmo h</w>\ntwitter storians</w>\nserge y</w>\nres eller</w>\nfavor able</w>\ned gy</w>\nre iter\nmal aga</w>\nlive me</w>\nka hn</w>\npul sion</w>\nbig g</w>\nkim kardashian</w>\nati o</w>\ntyr anny</w>\nru ption</w>\nq ant\npro ven\nby z\npu shaw\nkri stin\ne er\ntar dis</w>\nri z</w>\nawak en</w>\nmi ko</w>\nun documented</w>\npath finder</w>\nindirec t</w>\nresemb les</w>\nh ler</w>\nconce aled</w>\nscand al\nre im\nd nb</w>\ncr itters</w>\nattend ant</w>\napprentice ships</w>\naa u</w>\nscre amed</w>\nl su\nfa h</w>\nhar bour\ned d</w>\nbat sman</w>\nli ss</w>\nmi sha</w>\nspani el</w>\nit f</w>\nadvan cement</w>\nfa c</w>\nclose up</w>\ncecil ia</w>\nmedi c</w>\nnarcis si\nlav ish</w>\ngi ac\nma ys</w>\nle it\nwine wednesday</w>\npushaw ard\nlet to</w>\ncurren ts</w>\nbug atti</w>\nout ine</w>\nw j</w>\nun do</w>\nler osis</w>\ndevo tional</w>\nðŁĳ «</w>\non na</w>\nfais al</w>\nsa una</w>\nhimach al</w>\nam ii\nà® ®</w>\ndi zzy</w>\nscreen writing</w>\nph x\nsp n\nick i</w>\nag irl</w>\nfi shes</w>\nwb z</w>\npi m</w>\nbo ar</w>\nac id\n! ..</w>\nrocke feller</w>\nn ga</w>\ndra stically</w>\nsimpli fy</w>\ndru mming</w>\nautum nal</w>\ngur mee\nlor de</w>\njo ann\ngive up</w>\nb our</w>\nam ura</w>\nder land</w>\nsim pler</w>\nwat son\ntri dent</w>\nconcor dia</w>\nbel lum</w>\nbre k\ndum plings</w>\nvi on</w>\ndungeonsand dragons</w>\nsp ri\nascen sion</w>\nwil datlantic\nu st\nrob ins</w>\nlegi on\ninsi st</w>\njar o</w>\ngue ss\nso b</w>\nbigh it</w>\npool side</w>\nnegoti ating</w>\nmc gill</w>\nbil d</w>\ntechn icians</w>\nmiti gation</w>\najay devgn</w>\nb to</w>\nant en\ncosmo politan</w>\nðŁĺĬðŁĺĬ ðŁĺĬðŁĺĬ\npatri oti\ntemp er</w>\npromen ade</w>\nnav ajo</w>\nnam m</w>\nwrink les</w>\ndc fc</w>\nle ach</w>\nbru nette</w>\nr f\ncout inho</w>\nal ti\ntradition ally</w>\nop tome\nna z</w>\naccord ingly</w>\nrec ard</w>\nde ets</w>\nsw ell\npo sure</w>\nwhit ening</w>\nstrang er\nilli on\nhere ford</w>\nu wu</w>\nro bber</w>\ncotsw olds</w>\ncl en\ngor ge\nnam aste</w>\nre lish</w>\ngri ff</w>\nadren aline</w>\nbla sio</w>\nval e\nê ²\ntoler ate</w>\nrail minindia</w>\njen sen\nho ven</w>\nel lu\nob sole\neisen hower</w>\nunidenti fied</w>\nthan niversary</w>\nbody guard</w>\nØ ¯</w>\ni dge</w>\nsch al\nstock port</w>\nsn i</w>\nre taining</w>\npo po</w>\npix ie</w>\noli thic</w>\nki er</w>\nha jj</w>\nsa z</w>\ncor bin</w>\n!!!! !!!!!!</w>\nv it</w>\nme gat\nde h</w>\ncircu it\naf fleck</w>\ntheore tical</w>\nhope less</w>\nu ab</w>\nslu mp</w>\nb ice\njam med</w>\nlet stalk</w>\ncan i\nside ways</w>\nlabyrin th</w>\nre fs</w>\nha hn</w>\njare d\nðŁį ¹</w>\njam bo\nph yl\nenhan cement</w>\nc tr\nful lest</w>\nse ye</w>\ndo ba</w>\ncho ic\nyo s</w>\ncb j</w>\nandr Ã©</w>\nre watch</w>\npri ma\ndoctr ine</w>\nfor gets</w>\nu hm</w>\nar ound\nu le</w>\nart lovers</w>\nshi raz</w>\nhar th</w>\nex tor\nÅ ¡\nunexpec tedly</w>\neli us</w>\ny x</w>\nem my\nse ac\nðŁĳĩðŁĳĩ ðŁĳĩ</w>\ncorrec ted</w>\ncom bu\nwom anc\ncou gh\nwhat son\npubli shes</w>\ndivers ity\nback bone</w>\nlock down</w>\nmesmeri zing</w>\nnor te</w>\nma b</w>\ndesig ner\ní ģ\nra gh\nmole cules</w>\nget outside</w>\nthe beatles</w>\nsemicon duc\nnach o</w>\nlun es</w>\nham mers</w>\nsul tan\no on\nfe ren\natt ach</w>\nar qu\nuttarak hand</w>\ns ash</w>\n; -\ntre ad</w>\ni ko\nar thur\nscandin avian</w>\nr ation</w>\nga el</w>\ncharge able</w>\nfish y</w>\nv ma</w>\nhand bags</w>\nchar a</w>\nay ne</w>\nde fam\nsett lers</w>\nqad ri</w>\npal ais</w>\nin wx</w>\napocaly ptic</w>\npoo ja</w>\na es</w>\nat ories</w>\nproof ing</w>\nn lp</w>\nts la</w>\nv ina</w>\nli do</w>\ndee phouse</w>\ninformat ics</w>\nv v</w>\npp ings</w>\ndi ss</w>\nÃ ¯\nuhur u</w>\nst ony</w>\nbetra yed</w>\nb aff\nmy ra</w>\nas pen\nallow ance</w>\ntam ara</w>\nci f</w>\ncor bett</w>\nser ge</w>\ndi go</w>\nambi gu\npain ters</w>\np cr</w>\np ca</w>\nnom s</w>\nlo ft\nve e\nopend ata</w>\nðŁĲ ±\nalex andre</w>\nidenti fies</w>\nfantasy football</w>\nre production</w>\nbrom ley</w>\nware agle</w>\nmm er\np ss\ncu es</w>\nay at</w>\nhut chinson</w>\nsar ac\njack man</w>\nira h</w>\nap ink</w>\ncol s</w>\naussi es</w>\nex ecs</w>\nday ton\nðŁĻ Ĩ</w>\nim v\nhar am\nchuck le</w>\nauthent icity</w>\nar do\nincub ator</w>\nà¸ ª</w>\nphoto shopped</w>\nembrac ed</w>\nfight for</w>\ngor man</w>\nzz zz\nschol astic</w>\ncri sps</w>\nte apo\nmid night\nga ine\ncol lier</w>\ns ate</w>\nde tte</w>\nå Ń\nimag ine\ni ff\ntw ili\ni fication</w>\nteat ro</w>\nnor ma</w>\nes ur\nemergen cies</w>\nrise up</w>\nr inger</w>\nhass le</w>\ncait lyn</w>\ntranqu il</w>\nvers a</w>\nse b\nover look</w>\ngin i</w>\nbo go</w>\nse re\nmay ne</w>\nhenri k</w>\ncontamin ated</w>\nrhapso dy</w>\npro portion</w>\nwildatlantic way</w>\nâģ© .</w>\norganis ers</w>\ntran e</w>\nstand ard\nsper m</w>\nlaun cher</w>\nric ci\nher ts</w>\npaper work</w>\nshowcas ed</w>\nmer yl</w>\npen a</w>\np imp\ndisa strous</w>\n^. ^</w>\nphar a\nx is</w>\nfron tal</w>\nsw irl</w>\nsp ills</w>\nswag ger</w>\nsmart watch</w>\nsizz ling</w>\nsavi our</w>\ncat ar\nbb cr</w>\nrefurbi shment</w>\ndr is</w>\ncitro en</w>\nabsor b</w>\npatrioti sm</w>\nil leg\nchro mo\nfresh ers</w>\nru s\nlim iting</w>\nef ish</w>\ndown ed</w>\nman dir</w>\nhazel nut</w>\np all\nmac on</w>\ndisappear ing</w>\nquali fies</w>\nbo on</w>\nbar racks</w>\nam ine</w>\ngen dere\nðŁļ ĺ</w>\nj es</w>\nãĥ Ń\nqu ito</w>\nmiddle weight</w>\nsch au\nquad ru\naci ones</w>\nlimit less</w>\nðŁĳĮ ðŁı½</w>\nch man</w>\nar av\nregulat ors</w>\nit up</w>\nbatter sea</w>\nmil ford</w>\ng z</w>\ntic king</w>\ngh ou\ncru shes</w>\ntu tu</w>\ndread ful</w>\nfam ine</w>\nfor change</w>\ndalail ama</w>\nðŁĴ į\nwhit aker</w>\nhash mi</w>\nh us</w>\nvo d</w>\nbet te</w>\naa ah</w>\niso o</w>\nðŁ¥ Ī</w>\nha ar</w>\nla ine</w>\nb v</w>\nall day</w>\nspr out</w>\nindie games</w>\nfree bie</w>\ngree ks</w>\nbut ler\nill in</w>\nha al</w>\nware ness</w>\nsi ma</w>\npublic health</w>\ngam a</w>\nwa a</w>\noun g\ngoo oo\nokin awa</w>\noff enders</w>\nim pose</w>\nho c</w>\nyoung ster</w>\nstory teller</w>\nsc ap\nfigh ter\n+ ,</w>\nwhit es\nmusic monday</w>\nre za</w>\ngo ducks</w>\nbri a</w>\nmi um</w>\ncas per</w>\ncru mbs</w>\na ad</w>\nmarti alarts</w>\nch p</w>\nri gged</w>\ntn g</w>\nharve sted</w>\nsa k</w>\ndo jo</w>\nmill wall</w>\nb nw</w>\noc d</w>\nhistor yof\nt mr</w>\nsi rens</w>\nfan ci\ncaregi vers</w>\nvir a</w>\nson i</w>\nrecur ring</w>\nacknowle dged</w>\nðŁı Ł\noph ile</w>\nbu cky</w>\nstre ssing</w>\nroo k</w>\ndi gger</w>\nvi val\nsan do\nfle et\nsi ers</w>\nsel caday</w>\nrefre shed</w>\nanti fa</w>\na que\npo lo\ndisappear ance</w>\nde mb\nâĮļ ï¸ı</w>\nren ted</w>\nber ger\ng mb\ncu la</w>\nss al</w>\ngoo dy</w>\nu hh</w>\nmarcel o</w>\nw anna\nsoft ware\nshop small</w>\nturt le\ntom as\nfri sco</w>\nðŁĺį ðŁĴķ</w>\njim enez</w>\nc su\nday z</w>\nan do\nwyn ne</w>\nchoreo grapher</w>\ncerv ical</w>\ntrail blazers</w>\ned g\nzend aya</w>\ntravel blog</w>\nel s\nwhole some</w>\nco g</w>\nlab out\nar ney</w>\ndel le</w>\nsu isse</w>\nma si\nine se</w>\nom be</w>\nfi ddle</w>\nre claim</w>\npa u</w>\nwat cher</w>\nsla in</w>\nber ty</w>\nopti mum</w>\nel ites</w>\nmin is</w>\ntur key\npatro ls</w>\nger ard\nau reli\nwild ly</w>\nwal tz</w>\nbr gy</w>\nw ob\ncre st\n+ ++</w>\nve z\nfro sted</w>\ndavi do</w>\nthe x\nparam edics</w>\np into</w>\nhan k\ndu pont</w>\nur g</w>\nfo stering</w>\nmicro poetry</w>\nspec tre</w>\n---- ></w>\nne uro</w>\nfri da</w>\nmusic al\ngalve ston</w>\ne ffic\nsc ape\npal azzo</w>\nth all</w>\npro visional</w>\np js</w>\nau re\nðŁĶ ľ</w>\nmam amoo</w>\nkit ties</w>\ncre e</w>\nwa k</w>\nlo ool</w>\nlu pus</w>\ncn blue</w>\nÃ º</w>\nðŁİ ¬\nrac ed</w>\ntro se</w>\nom as</w>\nstri de</w>\nco ors</w>\nâ¤ µï¸ı</w>\nin comparable</w>\ncy ril</w>\nbroad er</w>\narec lipse</w>\nðŁį Ķ</w>\ninter val</w>\nti ru\nco working</w>\nw aco</w>\na ham\na bee</w>\nflouri sh</w>\nthe times</w>\nol ini</w>\nkick boxing</w>\nlu cer\nat la\nas un\ncasser ole</w>\nmi aw</w>\nlobb ying</w>\njan ice</w>\ncir que</w>\nre flex</w>\nle ary</w>\nsanat omy</w>\ntem pest</w>\nse mb\nmur dering</w>\nus av\nro bo</w>\non et</w>\np cc</w>\nnati ves</w>\nlife of\nsa ha\nruth less</w>\nrel ates</w>\nappeti zer</w>\npye ongchang</w>\nnor d</w>\ner u\na thing</w>\nug ly\npl ying</w>\nbran ce\norgan ise</w>\nkend ra</w>\ndat o</w>\nchees es</w>\npar ma</w>\nburn out</w>\na stra</w>\npre toria</w>\nadjust ment</w>\nuk u</w>\nsl o</w>\nli ken\nfav ors</w>\ncli ve\nbe ets</w>\nsnow donia</w>\ngo tv</w>\nsy n</w>\nopen house</w>\npan i</w>\nportra yed</w>\nsl ated</w>\nme cca</w>\nren al</w>\nsupportsmall streamers</w>\nstaf fs</w>\nda o</w>\nbi ker\nvik tor</w>\ntit us</w>\nadmi red</w>\nðŁĵ ±\nhurric an\nhe ats</w>\ngl ory\nphoto genic</w>\nmer i</w>\nde por\nburn ham</w>\nor angu\ndj ing</w>\nimpre ssionism</w>\nign ition</w>\nca i</w>\nw ynn</w>\nde pe\ncove ted</w>\ncolla gen</w>\nsau s</w>\nor nam\nadministr ators</w>\nss on\nnh politics</w>\nhahahaha hahahaha\naspir ations</w>\nr gb</w>\nswol len</w>\nso we\nsc r</w>\ndiver gent</w>\nhou ghton</w>\nhan oi</w>\nd ory</w>\nni ki</w>\nland ry</w>\nb cci</w>\nðŁĳĮ ðŁĳĮ\nis mail</w>\ntri pod</w>\nher d\nbhat t</w>\ndress age</w>\ntab by</w>\ningu ish</w>\nhur on</w>\nà³ į</w>\nÃ ł\nto das</w>\nevangel ical</w>\nchor ds</w>\nst john\nslo ppy</w>\nmarty r\nface book\nali ght</w>\nsen sei</w>\nkath niel</w>\nr ites</w>\nzi one</w>\nu o</w>\nrevel ations</w>\nweight lifting</w>\npan o</w>\nnc wx</w>\nac ton\nà® ķ</w>\nØ ²\nsom a</w>\nà¸ Ĺ</w>\nrespec ting</w>\nmar che</w>\nfore man</w>\nbe tty\nki k</w>\nshi bu\npo on</w>\nargy le</w>\nk swx</w>\net z\nmar bella</w>\nbrac kets</w>\nstand by</w>\nfire side</w>\ndefi ance</w>\nv ex\nbritanni a</w>\nin habit\nappo int</w>\npiyu sh\nle ash</w>\nsci ento\nfla sk</w>\nsen na</w>\n> :</w>\nat roc\nsand erson</w>\nid lib</w>\ndhan ush</w>\nðŁĺ Ļ\nen thr\nhit ch</w>\nde dly</w>\nal ley\ndor k</w>\nmon do</w>\ncudd ly</w>\nmis sin</w>\nye sss</w>\nnight ing\nj pn</w>\nw ary</w>\nump ire</w>\nma z</w>\nê ³\nbab s</w>\nĭ ãģ\nstan ford\nposse ssed</w>\nexce eded</w>\nðŁĶ ¶</w>\nwall art</w>\ntra p\nj il\nhi bis\nsp ying</w>\nscri be</w>\nkhali l</w>\ntrans lator</w>\nlu mb\ndi zed</w>\nch c</w>\nsuper vision</w>\nshut ter\nja g</w>\n_ *</w>\nyester days</w>\nms f</w>\nhi hi</w>\ngonz aga</w>\ngille spie</w>\nvive k</w>\nec static</w>\nthis morning</w>\nch us</w>\ned es</w>\nston ed</w>\nbe es\nðŁĩ¹ ðŁĩ\ntur in</w>\nho ver\nat rics</w>\nster n\nsam heughan</w>\nauti sm\nmi ya</w>\neye witness</w>\nwrit ings</w>\ntravel tips</w>\nchut ney</w>\npx rtg</w>\nkeny ans</w>\nmy stic\nk rit\n/ $</w>\nred head</w>\nworld ly</w>\nam us</w>\nop la\nle ve\ngab bana</w>\nse en\no clock</w>\ngang a</w>\nkeen an</w>\nsc ent\nol dies</w>\ngo green</w>\ncorner stone</w>\ncomp ly</w>\ncon cours</w>\nðŁİ¶ ðŁİ¶</w>\nha an</w>\ncon fis\naw son</w>\ncle op\nî Ģ\nsu zu\nsau tÃ©\nal gar\nsubscri ber</w>\neste emed</w>\nãĤ¤ ãĥ\nworth while</w>\nmel rose</w>\nflo ck\nbri ghtly</w>\nviol inist</w>\np ere</w>\nsli pping</w>\nand co</w>\nsi gh\nha van</w>\ncu lo\nm sa</w>\nfibro sis</w>\nmatil da</w>\nra fting</w>\naw ard\në ª\nmm mm\nge aux\nste iner</w>\nsin n</w>\nhelp ers</w>\nbeet les</w>\nai mee</w>\ntai wan\npistachi o</w>\nmac beth</w>\nm zan\ndescend ants</w>\non sale</w>\nin r</w>\nil m</w>\ngrou se</w>\nsa ig\nmo w</w>\nbi gre\nadjust ments</w>\ntu la</w>\nmathe w</w>\ntransl ates</w>\nmu h\nbol lah</w>\nðŁĴĽ ðŁĴĻ</w>\namo res</w>\nab outs</w>\nbomb shell</w>\nbla ster</w>\nx avi\ns ns</w>\nk roger</w>\nga ther\nerad ic\ndaf t</w>\nchem o</w>\nben ches</w>\nðŁĩ© ðŁĩ\nut v</w>\nour a</w>\nn ko\ngator ade</w>\nbiaf ra</w>\nok state</w>\nim danielpadilla</w>\ndom ains</w>\nopen ingday</w>\nkid do</w>\ndo i</w>\nric e\nday care</w>\nmac millan\nba thurst</w>\ncheer leading</w>\nðŁ¦ ģ\ncash back</w>\nk won</w>\nhob bies</w>\nexem pl\nries ling</w>\nâļ ª</w>\nag les\nny s\nevery thing\nnav is</w>\nad di</w>\nmagne sium</w>\nfaceli ft</w>\nark ham</w>\ngrand es</w>\nextre mist</w>\ndon at\nvit ality</w>\npump kin\nbe tta</w>\nsl td</w>\narti san\nli by\npe aked</w>\nah hhhh</w>\nmary am</w>\nassi m</w>\nun sc</w>\nment e</w>\nal aya</w>\nlow ers</w>\nar as</w>\ngri ev\nle ip\ngr ati\ncri ses</w>\nspr ints</w>\nexe cute</w>\nw to</w>\nms d</w>\nmag ical\nre viewer</w>\nspark les</w>\njuke box</w>\nðŁĺĤ âĿ¤ï¸ı</w>\npay back</w>\nlicen ses</w>\ndun kin</w>\nbel t\nlake wood</w>\nh ateful</w>\nbud gets</w>\nrev amped</w>\nph erson</w>\nky iv</w>\nwent worth</w>\nro sen</w>\ncru ise\ngi ggle</w>\ndef star</w>\nassassin scre\nym outh</w>\nwin kle</w>\nw fc</w>\nband wagon</w>\nb kk</w>\nw iring</w>\nkear ney</w>\nsouth side</w>\npe tit\n! ðŁĺį</w>\nnor dic\nmir za</w>\nmu gabe</w>\nv l</w>\nscon es</w>\nk tv\nsand al\ndu c</w>\nm alls</w>\nðŁĴŀ ðŁĴŀ</w>\nit c</w>\nal ay</w>\nim pair\nun rest</w>\nflo ss</w>\nc Ã©\nab ou\nvar ying</w>\nmuse o</w>\nser ver\ndi ya</w>\nhibis cus</w>\nero y</w>\nmer ritt</w>\nfin dom</w>\nf pp</w>\nun usually</w>\ngo tt</w>\nconting ent</w>\nali aa</w>\nball on</w>\njo l</w>\nhi ked</w>\nzy me</w>\nay r</w>\nag n\nga z</w>\nperio dic</w>\nspar ty</w>\npracti sing</w>\nlin ton</w>\ntal is\ncy pri\nwomanin biz</w>\nradio disney</w>\nðŁĮ ¼\njump ers</w>\nendo cr\nðŁļ¨ ðŁļ¨\nand on</w>\nshar apo\nmi er</w>\nma sonic</w>\nfac tories</w>\nvi en\nbb ers</w>\nìĽ Ĳ</w>\nhol d\nke bab</w>\nbe ak</w>\napproach ed</w>\nac milan</w>\nmun ro</w>\nko sher</w>\nexcell ency</w>\nnegoti ation</w>\nwalt disneyworld</w>\ncr ouch</w>\nte asing</w>\nsuppre ssion</w>\nen ya</w>\nb ce</w>\ntransformation tuesday</w>\ncal lie</w>\nvis was\np gat\nic ted</w>\nend ings</w>\nesc u\nrecru ited</w>\nit fc</w>\ncollabor ations</w>\ng ino</w>\nsnu ck</w>\nausch witz</w>\ni fc</w>\nx ii</w>\nke sha</w>\nger vais</w>\nclo ak</w>\nx l\nsa ad</w>\nprob ation</w>\npre cau\nmac in\nanasta si\nle k</w>\ne azy</w>\ndaysof code</w>\nmariah carey</w>\nyo g</w>\nstit ched</w>\nboy friends</w>\nsh ar</w>\nph ile</w>\nag u</w>\ntwin kle</w>\nphi shing</w>\nweek ender</w>\nic ton</w>\ngurmee tramrahim</w>\nal ton</w>\nl eness</w>\nall an\npen ultimate</w>\nkry stal</w>\ngo u</w>\nlan de</w>\ndis mant\nab using</w>\nnor se</w>\npat erson</w>\ned mun\nap an</w>\nxi umin</w>\nsk el\ncat walk</w>\nre act\nwal led</w>\nt angle</w>\nbr yn\nve to</w>\nsuper moon</w>\ncas ablanc\nappreci ates</w>\nski d\nbo th\ncatal ina</w>\nele ague</w>\ncyber monday</w>\ncau tious</w>\nðŁ¤ ĵ\nnov o</w>\nhamp ton\nha ye\njose f</w>\nvar an\nlo bos</w>\nroano ke</w>\norph ans</w>\ntt in</w>\nsqu ads</w>\nishqba aaz</w>\nblack panther</w>\ne tu\nk sh</w>\ncru mble</w>\ncess na</w>\nreli eved</w>\nscul ly</w>\npollin ators</w>\nexplore canada</w>\nki es\nkam loops</w>\nkir an</w>\npri mal</w>\nsett lements</w>\nhot spot</w>\nbrain storming</w>\nce dric</w>\nbi ennial</w>\nsh ant\nâĻ¡âĻ¡ âĻ¡</w>\ndo on</w>\nhear n</w>\nwalk way</w>\nfe m</w>\nve al</w>\ndeport ation</w>\ntox ins</w>\nelimin ating</w>\ndescen ding</w>\nby the\nbla sphe\nha sta</w>\ncomple ment</w>\nas cent</w>\nri ga</w>\nprovo st</w>\nâĸ ª</w>\nwee ping</w>\nanti semitism</w>\nemploye e\nunearth ed</w>\npin o</w>\nnatali e\nbla d</w>\nang ola</w>\nlock heed</w>\nin ian</w>\nag r\nni ster</w>\nim pala</w>\nm ke</w>\nfan atic</w>\nâĺħ âĺħ</w>\nðŁĳ ¸</w>\nlu ch\nsimpli fied</w>\ngall ery\neconom ic\ncy borg</w>\ncon i</w>\nsel ma</w>\nin ception</w>\nko ala</w>\ndv ds</w>\ncre sted</w>\nm mor\nvisi ble\nn sd</w>\nðŁĻĮ ðŁı½\nw under\nrefriger ator</w>\nre opening</w>\ne era</w>\ncarou sel</w>\nas p</w>\nballi stic</w>\nvictor y\nmo tive</w>\ntre y\nsharapo va</w>\nsi i</w>\nmon ter\nint end</w>\nwest chester</w>\nsp e</w>\ncy mb\nvi dal</w>\nll ama</w>\nuni v\nfin er</w>\ncrafts manship</w>\njazz fest</w>\nb ch</w>\nag gio</w>\nn cc</w>\nlamb da</w>\ntranqu ility</w>\ncis co\nba den</w>\nso bbing</w>\nof i\ngo ta</w>\nru mored</w>\nwar med</w>\nore an</w>\nac ton</w>\nmar ci\ngh ani</w>\nâľ ĵ</w>\nas sorted</w>\npembro ke\npen elope</w>\nda f</w>\nat ty</w>\naim o</w>\npretz el</w>\ncarni val\nthan os</w>\nko chi</w>\nmer sal</w>\nham radio</w>\nar twit</w>\ncas c\nguer rilla</w>\nkush ner</w>\nk app\nal ise</w>\ntodd lers</w>\nsteward ship</w>\no tti</w>\nter ri</w>\ntem pe</w>\nrest less</w>\nvit o</w>\nzay ed</w>\nrsp b</w>\npi on\nhi ppo</w>\nhaw thorne</w>\nin as\nam ily</w>\nnut cracker</w>\nlo p\nd ali\ntro pic</w>\nðŁ¤ ł</w>\nul o</w>\njare dle\npy rene\npale o\nusa ir\nm ould</w>\nit ated</w>\ngene tically</w>\nbiom ass</w>\nðŁĩ³ðŁĩ ±</w>\ndo dd</w>\npractic ed</w>\nmonarch s</w>\nun manned</w>\nm buhari</w>\nam al</w>\nphoto gra\nko ol\nbren don</w>\nju ices</w>\ncu re\nworld bank</w>\npoin ters</w>\nðŁĴ Ŀ\ntur f\nle ds</w>\nbor ussia</w>\nbapti sm</w>\nwarwick shire</w>\nmoun ts</w>\ngay o</w>\nbe gg\nco pied</w>\nasi ans</w>\nk g\nmoder nist</w>\ngi d\nfront man</w>\nconcentr ated</w>\ny t\nsc avenger</w>\niron ically</w>\nadi c</w>\nps n</w>\nðŁ¥ ī</w>\ncultur ally</w>\nyu v\nmac arthur</w>\nfertili zer</w>\nbe withyou</w>\nri gor\nmin ors</w>\nz oning</w>\nâĸ ł</w>\nri r</w>\nadole scent</w>\nvin ny</w>\nren g</w>\nsand stone</w>\ngu et</w>\nwe sth\nple dged</w>\nlac ed</w>\nsp ide\nv ai</w>\nty coon</w>\nseiz ure</w>\ndu p\nappalach ian</w>\nro k</w>\ncathol ics</w>\nsey chel\nposse ss</w>\nla ger\njo di\ncham p\nstra s\nd ina</w>\ncent uri\ncal der</w>\nblur ay</w>\nðŁĩ¨ðŁĩ ³</w>\nmo do</w>\nan nette</w>\nyoutu bers</w>\nchap s</w>\nang ling</w>\nlabel ing</w>\na qui\npk wy</w>\nly le</w>\nbi sexual</w>\nlit ur\ndug out</w>\nli bby</w>\ngrey sanatomy</w>\nsub stances</w>\naugust us</w>\nrall ying</w>\nfi del</w>\ning ue</w>\näº º\nhallmark channel</w>\ntooth brush</w>\nm Ã¡\nadi rond\nag gi\nðŁĵį :</w>\ncru sade</w>\ntax ation</w>\nk z</w>\ni ver\ndou bling</w>\nroom ie</w>\nwa b</w>\nen rolled</w>\naz on</w>\na ju\ngrand children</w>\nas df\nðŁ¥ º</w>\nmat ic\nough ton</w>\nutili ze</w>\nðŁĴ £\npon der</w>\nrais in</w>\ndys function</w>\nco bain</w>\nbutter nut</w>\ne man</w>\nsu red</w>\ndri an</w>\nand friends</w>\nwith the\non omy</w>\nheine ken</w>\nbri dal\nleader ship\npyram ids</w>\ndeutsch land</w>\njo cel\nbo wel</w>\ny qr</w>\nhorse power</w>\nbe acon\ning eni\ngra dient</w>\nfer mented</w>\nmo om\nthing y</w>\npot assi\nwrist band</w>\nbor d</w>\nbo died</w>\nðŁĺŃ ðŁĺį</w>\nma pp</w>\nka u</w>\ncyber punk</w>\nph ish</w>\nloo king\nco ates</w>\nap ur\nam ie</w>\nuk labour</w>\nat in\ng la</w>\nadop table</w>\nshel by\nv illi\nri ya</w>\nm ingly</w>\ncli mber</w>\nbumble bee</w>\nðŁĺ ¸</w>\nc sd</w>\nâĿ ¥</w>\nhospit alized</w>\nc ki\nhat er</w>\nch r</w>\nre tina</w>\nit a\nfan base</w>\nbeat rice</w>\ngwy ne\ngo ss</w>\nfo s\nfavor ited</w>\nswachhb harat</w>\nmal ade</w>\nmon mouth</w>\n\" [</w>\nsi van</w>\nsh hh</w>\ncommand ing</w>\nsains burys</w>\nwee d\ng man</w>\nss w</w>\nrep tile</w>\niv y\ntro pics</w>\nroll ers</w>\nover cast</w>\nex position</w>\nmasquer ade</w>\nman crush\nwa ist\nspr inter</w>\nsle et</w>\nle vin</w>\nj pg</w>\n_ (</w>\no pel</w>\nexplo it</w>\nap a\npo we\nwrec king</w>\njong in</w>\nor b</w>\ner ick</w>\nbo sco</w>\npra ising</w>\nber tr\nto wing</w>\nin security</w>\nku t</w>\nresto cked</w>\nrr p</w>\nprescri bed</w>\ntrafal gar</w>\nper t\ng ases</w>\napp rais\ng har</w>\nmusic als</w>\nâĸ¬ âĸ¬\nmc fad\nag ony</w>\nconditi on\nequi p</w>\nshi k</w>\natra vel</w>\nðŁĩ¿ ðŁĩ¦</w>\nke h</w>\nabduc tion</w>\npe oria</w>\nwil kins</w>\ng ms</w>\nas d</w>\nev i</w>\nðŁĴĹ ðŁĴĹðŁĴĹ</w>\nu z</w>\nmo c</w>\nhalle lujah</w>\nguad alu\nlou vre</w>\ndra wing\ngo ve</w>\nph ant\nfri e\nweb dev</w>\nprogram mer</w>\nz able</w>\ngames com</w>\nclari fy</w>\nli th\nkin ky</w>\nâĿ £\nlabour doorstep</w>\nson ata</w>\nju ris\nmai den\nvi adu\nbuch arest</w>\nconditi oned</w>\ncapit alist</w>\nu de\nps b</w>\nsp ca</w>\nlul la\nfooth ills</w>\nkay o</w>\nbon d\nwom b</w>\nroun der</w>\nce sar\nbur sts</w>\nap ra\nsw oon</w>\nsab rin\nfra grant</w>\ncle arer</w>\nku brick</w>\ncli max</w>\njour no</w>\nag le\nðŁı½ âĢįâĻĢï¸ı</w>\npoo ch</w>\nhal e\nsol it\nsal mon\norganis ms</w>\nbron son</w>\nart en</w>\nhodg son</w>\nalo ve</w>\nvent ure\nbb i</w>\nae a</w>\nðŁĲ ¢</w>\nld n\nd nr</w>\no zone</w>\nel las</w>\nman ny\nazz ur\nun beat\ntru ffles</w>\nth ong</w>\nma Ã±\nlas ers</w>\nley e</w>\ngettys burg</w>\nback packs</w>\nor is</w>\nma ison\ncraw ling</w>\nla bra\ncl ing\ndra gging</w>\nste al\ndou bt\nde van\nck ers</w>\nagent sof\nphoto bomb</w>\nelon musk</w>\nabo y</w>\ndist ances</w>\nstory line</w>\nsp i</w>\nnor than\neurope ans</w>\nwh ale\nser pent\nðŁļ ²</w>\nfi or\ntr it\nox o</w>\nawar ding</w>\nclass mate</w>\nsu fc</w>\nsmar test</w>\nrich es</w>\npr k</w>\nbig foot</w>\nar mb\nbi polar</w>\ndw elling</w>\nom ars</w>\nk wan\ngri me</w>\nm eng\nfreder ick\nnavar ro</w>\nsorry notsorry</w>\njaredle to</w>\npa ve</w>\nsl ack\nbarn sley\natt ar</w>\nevic tion</w>\naccumul ation</w>\no ir</w>\ncat chy</w>\nwel ter\nvik as</w>\nhas see</w>\nnik ita</w>\nmo yes</w>\nmathe ws</w>\nshi v</w>\ngat wick</w>\npro filing</w>\ncompan ions</w>\nmar rake\nan tics</w>\nðŁĻĮðŁĻĮ ðŁĻĮ</w>\nse se</w>\nbo i\nbart lett</w>\npoison ous</w>\nab uses</w>\nym m</w>\nkam pala</w>\nguggen heim</w>\nimv kohli</w>\ndol om\nbre e</w>\nthro ttle</w>\ngare th\nfitz patrick</w>\nun ya</w>\npar ad\nmar got</w>\nj nr</w>\nwe a\npotassi um</w>\np nc</w>\ndisgu ised</w>\ncra sh\nren ergy</w>\nill ic\ncoup led</w>\nni els</w>\nci ones</w>\næĹ ¥</w>\nim ent</w>\ndespic able</w>\nd ye\nwhat cha</w>\nconne ctions</w>\nparalym pics</w>\ngaunt let</w>\nwait rose</w>\nsuici dal</w>\nstar ship</w>\nvap or\nst ou\nlaw maker</w>\ncoo led</w>\nsi mo</w>\nthen o\noffro ad</w>\nja den</w>\nbas que</w>\nvick y\nlu kaku</w>\ncentr o</w>\ntri sh</w>\nstrate gist</w>\nmedic ations</w>\nhor st</w>\nb fc</w>\ngra il</w>\nsharp ly</w>\nad itya</w>\ntom b\nkau fman</w>\ntri pad\nsam ba</w>\npastor al</w>\nbrit ney\nsag an</w>\nhill side</w>\nmas ons</w>\nsar a\nz one\nx u</w>\nto tes</w>\nrob bie\napp en\nmon tag\nder o\nshort film</w>\ncharis matic</w>\ntat ors</w>\nki ba\nand ri\nal arming</w>\nsplit ting</w>\nic ar\nth ug\nscari est</w>\nsylve ster</w>\nan an\nu trecht</w>\na difference</w>\nme ade</w>\nbu ster\nair strikes</w>\ncu ffs</w>\naccount ants</w>\nðŁĺ¡ ðŁĺ¡\nnew t</w>\nbo tt</w>\nissu ing</w>\ncl ancy</w>\nwwen etwork</w>\nkyu hyun</w>\nrese mble</w>\npajam as</w>\nsin k\nkin ney</w>\nsul ph\nor k</w>\nli es\nla gh\nor ton</w>\nra hul\nd sc</w>\nwe will\nre am\ncollo qui\nshar ia</w>\nhec tic</w>\nsar casm</w>\nland er\ntm z</w>\nendor f</w>\nro z</w>\nham mered</w>\nfri s\nw adi</w>\npope francis</w>\nhe it</w>\nflash light</w>\nun born</w>\nop es</w>\nhol iness</w>\nðŁĲ ¦</w>\nnach t</w>\nim sa</w>\ngr acing</w>\nbj p\nver ts</w>\nc sc</w>\nhome owner</w>\na que</w>\nbigo try</w>\nanni e\nbag h</w>\nâĿ¤ï¸ı ðŁĺį</w>\ncar i</w>\nthom p\ndispo sable</w>\ncardio logy</w>\npat ented</w>\nhh hhhh</w>\nld r</w>\nstephen son</w>\ncro res</w>\nfan ning</w>\ncli mat\nðŁĳį ðŁĳįðŁĳį</w>\nðŁĳį ðŁı¼\naer on\npiccad illy</w>\nbank rupt</w>\nsil via</w>\nemplo y\ndon ny\ncommen ting</w>\nscreen writer</w>\nio ta</w>\nce an</w>\nanc ers</w>\ntu an</w>\nstreet wear</w>\nà¤ ¯</w>\nsk ine</w>\nesp a\nasi f</w>\nos ce</w>\nshe ppard</w>\nmore cam\nbott le\nder s\norac le\ngoogle play</w>\naver aged</w>\nedmon ton\nsteph an</w>\nsister hood</w>\ncru sted</w>\nstag gering</w>\nmethodo logy</w>\ncongress woman</w>\nc abo\ntri ggers</w>\nmil ky\ngli de</w>\ntooth paste</w>\nroom mates</w>\nnu ff</w>\ngu am</w>\nsprink les</w>\nalternati ve\nwat fordfc</w>\nuof t</w>\nhal ey\ncont acted</w>\nbun dy</w>\npro stitu\ngh ar\npre ston\non site</w>\nhil ar\ng ts</w>\nc att\nhamp stead</w>\n? ?!</w>\nðŁĩ§ ðŁĩ\nbbc qt</w>\naless andro</w>\nresi st\nma idan</w>\nt ko</w>\nshad ing</w>\npin up</w>\ngal lo\nsin u\nat ec\nfun k\nac lu</w>\nstri des</w>\nrhy me</w>\nwet land</w>\nbbc springwatch</w>\nt ins</w>\nwild card</w>\nst our\nflamen co</w>\npau la\nonto logy</w>\ngang sta</w>\nam ade\nãĤ «\nt bs</w>\nskelet al</w>\nrun ner\njard in</w>\nharri er</w>\nhun ted</w>\nz hen\nbelievein film</w>\nde mean\nau diti\nre start</w>\nchon dri\nâĿ¤ï¸ı ðŁĴĻ</w>\nmcla ren\nga b</w>\nsh um\nau sa</w>\nlewi sham\ny pg</w>\nk jv</w>\nfur nished</w>\ndor o</w>\nbon ded</w>\nmor ty</w>\nlat itude</w>\n_ )</w>\nlo va</w>\nwater ways</w>\nvin ai\nshor th\ndrun k\nc ay</w>\nay ana</w>\nkap lan</w>\ncapp uccino</w>\nspr o</w>\nlife boat</w>\nhas bro</w>\nspol ice</w>\ntor on\ndo ing\ndam n\nsh ree</w>\nfoun tains</w>\nent ation</w>\nmar u\nboar der</w>\nto pless</w>\nj ada</w>\nchan ning</w>\nul ls</w>\nen closure</w>\ngib son\nfractu red</w>\nbrit ton</w>\nÃ ¶</w>\nt ous</w>\npor th\ndra f\ntra iling</w>\nmar gate</w>\neli fe\ndown ward</w>\nlin n</w>\ngla des</w>\ngirl power</w>\nak rish\nu ki\nron da</w>\nts c</w>\nappreci ationday</w>\nvis ing</w>\nlo om\nðŁį ³</w>\nmex ican\nar gos</w>\ny ya</w>\njad ine</w>\nsouth port</w>\nd end\nsi sta</w>\nrede em</w>\nmen g</w>\nbra xton</w>\nantioxid ant</w>\ns key</w>\nmp g</w>\nfin ding\nvibr ation</w>\nce u</w>\nkh art</w>\ndi mini\ncl ine</w>\nshel ly</w>\nhin es</w>\nī ï¸ı</w>\nto pical</w>\nno ver</w>\nma xx</w>\nprim itive</w>\nillustr ate</w>\nb ounds</w>\ntren ton</w>\njoin tly</w>\nbreed ers</w>\nu chi\nwakeup america</w>\nb ada</w>\nðŁĹ £ï¸ı</w>\ngu acam\nsp heres</w>\npere gr\nyouth ful</w>\nlo lo</w>\nbir min\nt ly\njeremy corbyn</w>\ndefe cts</w>\nco sm\na rent</w>\nv aa</w>\nbag els</w>\nmedi ac\ncori ander</w>\nic ago</w>\ng haz\nab bas\nre model</w>\nstruc turing</w>\npu m\nout law\nad ani</w>\nr bc</w>\ngul ls</w>\nn li</w>\nconfu se</w>\nðŁĳĩ ðŁı¼</w>\nvil a</w>\nmcnam ara</w>\ncorrec tions</w>\nmug hal</w>\nser i</w>\nre gain</w>\nss b</w>\nlea ve\nhaha hah\ngran de\ndi stressed</w>\nre chargeable</w>\nho a</w>\nhou sed</w>\nsti l</w>\nattribu ted</w>\nopath ic</w>\ndi ps</w>\npri t</w>\nhead phone</w>\nconclu de</w>\npil o\nhe t\nut sa</w>\nnit in</w>\nje m</w>\nsni ppet</w>\ntutor ing</w>\nop er</w>\nsun k</w>\nen sla\ncha u</w>\nac orn</w>\nquinte ss\nran kin</w>\naffili ated</w>\nour lives</w>\ncl int\nse ater</w>\nisa ac\nba shing</w>\nsme ar</w>\nnur se\ndoo dling</w>\n\" ;</w>\nsa ku\natroc ities</w>\nim am\ng fs</w>\nviol ating</w>\ncomm end\nbrad shaw</w>\ner ville</w>\nb illed</w>\nb be</w>\nthul hu</w>\ni phones</w>\nmoo se\ndi os</w>\nre w</w>\nme thane</w>\nstrang ely</w>\nwhis ky\nti ghtly</w>\nspiel berg</w>\nradi us</w>\nnotic ing</w>\nwi f</w>\nig nati\ni fa</w>\nap is</w>\nw ali\nha itian</w>\nbu shes</w>\ny z\nv l\nex ited</w>\nasse l</w>\ntru ec\ndom en\nash er</w>\nin king</w>\nnewyear seve</w>\nhend ricks</w>\nbat i</w>\nìĿ´ ì\nrich ter</w>\nmon santo</w>\ncon line</w>\nagre at\nðŁ¤ ¯</w>\nmaster pieces</w>\nar n</w>\nrough s</w>\ncle ve\nse v</w>\nfashi ons</w>\nto ya</w>\nsh ail\ncop eland</w>\naqu ari\ndec als</w>\nare you\ny aya</w>\na str\nfon t\nml m</w>\nar ca</w>\npp or\npol lock</w>\nxper ia</w>\nconserv ation\nchain saw</w>\nag gie</w>\n?! ?!?</w>\nsi le\nsh on</w>\nìĹ Ĳ\nnote books</w>\nmarque tte</w>\nde us</w>\nbb led</w>\nspic er</w>\nmc cabe</w>\nnor wich\nmodi fication</w>\nboo sted</w>\nstru m</w>\nsales man</w>\nbang le</w>\nnis san\nhez bollah</w>\nbrea sts</w>\na af\nanth us</w>\nsk er\now ed</w>\nher os</w>\ngi fs</w>\nfo sters</w>\neat ers</w>\ndu es</w>\n_ /\nlymph oma</w>\nsf am</w>\nme gal\nafri di</w>\nag ic</w>\np amp\njeal ousy</w>\nðŁĳĮ ðŁı¼\ncalcul ate</w>\nnapp ing</w>\ng ale\nðŁ¦ Ħ</w>\nlub bock</w>\nassu med</w>\nren ting</w>\níĥ ľ\nsubur b</w>\nãĤ ·\ntech nic</w>\nu cla\nin front</w>\ngar net</w>\nster oids</w>\nstri ving</w>\nho war\nmo ver</w>\nle ton\nbull do\nis in</w>\nci ao</w>\nsn z</w>\nfore front</w>\nd ams</w>\nmid wife</w>\nma wards</w>\ncla pton</w>\nwe in</w>\nsubsi dies</w>\nspr oud</w>\nrother ham</w>\nphan tom\nar ach\nspi el</w>\nrac ket</w>\nsel amat</w>\nno on\nl bc</w>\nenti ally</w>\nðŁĴ ¸\nsil ve\nm oud</w>\nkine tic</w>\ny asi\nðŁİ ©</w>\no ol\nmi ku</w>\ni za</w>\nfer a</w>\nflo ren\nbarber shop</w>\ngroo t</w>\nz est</w>\nne ars</w>\nstan is\nz and\npolice man</w>\njuris dic\nform ations</w>\nappar atus</w>\nsp d\narti fact</w>\nto sc\nmotiv ating</w>\nwomanc rush\nre dro\ndiagno stics</w>\nra za</w>\nout fitters</w>\nel xn</w>\ndod gy</w>\nry n</w>\nsh d</w>\northo don\nol de</w>\njay anti</w>\nbal ances</w>\nquic kest</w>\ncan ton\nfriday reads</w>\n! *</w>\nna a</w>\na ak\nðŁĶ ·</w>\nbehavi ors</w>\nrasp berries</w>\nä »\npolit ical\ncam il\nå ľ\ndi k</w>\nast ounding</w>\nlie be</w>\nnovel ty</w>\ntur moil</w>\nsul ly</w>\nspring break</w>\nhon ouring</w>\ncc g</w>\nðŁı Ĵ</w>\nmy little\nky c</w>\npro ms</w>\nðŁķ Ĭ</w>\nÃ ¨</w>\nbi ge\nav ril</w>\nðŁĩµðŁĩ °</w>\nmari on\nas ants</w>\nsur ya</w>\noc tag\nluf than\nac ron\nfayette ville</w>\nti que</w>\nlove s\nen ca</w>\nde kalb</w>\nta ver\nde vote\naux iliary</w>\njoh annes</w>\ntread mill</w>\nay an\nqu r</w>\ndonald son</w>\ncher yl\n\" ....</w>\ns ven\nkir sty</w>\ngun ners</w>\nra dish</w>\no ahu</w>\nv sky</w>\ni ble</w>\ncon course</w>\nb ps</w>\nelo qu\nash ford</w>\nte bow</w>\nroblo x</w>\nma da</w>\ndri ving\nth day</w>\nspro ject</w>\nm ms</w>\nband ed</w>\n. !!</w>\nlibr arians</w>\nflan nel</w>\nintoler ance</w>\nher al\nç µ\nneme sis</w>\nlist a</w>\ntar ak</w>\ncry pt</w>\nstar plus</w>\nvish nu</w>\nsc ale\ncr is</w>\n% ),</w>\nj illian</w>\nregg ae\npegas us</w>\nol in\nip ment</w>\nman ic</w>\nl fc\ngodd ard</w>\nite am</w>\nparl our</w>\nanch ors</w>\nlee minho</w>\ntalla hassee</w>\nant it\nd ho\nkid ney\ny ash</w>\nbatt led</w>\naz ad</w>\ngar is</w>\nfaul kner</w>\nsni ff</w>\npapar azzi</w>\ned m\nphy llis</w>\ncon tested</w>\naa ay</w>\nse ca</w>\nk ton</w>\nvel ve\nrain ier</w>\nfor um\ntam pab\nho sp</w>\ntrac tors</w>\nox fordshire</w>\nno tion</w>\nguang zhou</w>\nðŁĺ ¯</w>\nref ill</w>\nwednesday motivation</w>\nsli der</w>\nmukher jee</w>\npr att\nfon taine</w>\nalph on\naf ar</w>\nts i</w>\npest icides</w>\nfi ends</w>\nmo cking</w>\nbra w\ntran sat\ndo ses</w>\nco res</w>\nhom ophobia</w>\ndocu menting</w>\nzlat an</w>\ncon doms</w>\ns Ã©\nsun set\nkun st</w>\nton ga</w>\nà¸ ª\nv ation</w>\nsp ray\nchow der</w>\nra ps</w>\npalla dium</w>\nnor wood</w>\nmusic history</w>\nhoo ker</w>\nsi si</w>\nosp rey</w>\nph ys</w>\nconce ded</w>\nbob cat</w>\nar mad\nze it\nÙ Ħ</w>\nðŁĺģ ðŁĺģ\nmer idi\nðŁĩ· ðŁĩº</w>\ncorn wall\n! ),</w>\ntouch downs</w>\nze it</w>\nchal et</w>\nmm m\nal che\ngor illa\nfo ss</w>\nati ku</w>\nlumin ous</w>\nivan ka</w>\nbe ek</w>\nsta res</w>\nsw iss\nâĿ¤âĿ¤ âĿ¤âĿ¤\nscru bs</w>\nme ath</w>\ngusta v</w>\njo gging</w>\nconfe tti</w>\nas os</w>\ners fc</w>\nbreit bart</w>\napplic able</w>\nautho red</w>\nya ho\nh in</w>\ndisplac ement</w>\nj v\nðŁĮ¹ ðŁĮ¹\not c</w>\nnon profits</w>\ndiec ast</w>\ngu sto</w>\ninte stin\nc ages</w>\nme en\nlu kas</w>\nmoon ey</w>\nðŁĺ ·\nvery day</w>\ntor ah</w>\nis sion</w>\nwa c</w>\nlever aging</w>\nish able</w>\ncu se</w>\nle wood</w>\nmay an</w>\nturn table</w>\nju ice\ntru sty</w>\ntu p\neti quette</w>\nsupervis ors</w>\nstu n</w>\ngu zman</w>\nconfe ren\nric o\nfe ast\nback ward</w>\npol aris</w>\nmic he\njo g\nh ing\nfield house</w>\nvel ing</w>\nsho cker</w>\nesc ence</w>\nà¤ ¾\nvi be\nanasta sia</w>\nmar ched</w>\nkill ing\nĶ ë\nfe tt</w>\nexop lan\n... (</w>\nsnow day</w>\nlo h</w>\nir ani</w>\nla khs</w>\ndel a</w>\npo caly\nboom ers</w>\ndictat orship</w>\nac er\ntur keys</w>\nquarter final</w>\nmuskete ers</w>\nðŁĴĽ ðŁĴļ\nsf x</w>\nmuseum week</w>\nsc ala</w>\nri sis</w>\n( ðŁĵ·</w>\nãĢ Ĥ</w>\nz ies</w>\nbo eh\nhu es</w>\nlu sci\ndol a</w>\nimpeach trump</w>\nroo d</w>\ndon caster\ntor re</w>\nhero es\nfo yer</w>\ntar i</w>\nblur red</w>\nke w\nfrank ly</w>\ndro id</w>\nap al\nÐ ¼\ny af\nbre t\npar agu\ncac ao</w>\nðŁĻĮ ðŁı¾\nru e\nhead aches</w>\nshaw ty</w>\nchar ley</w>\npal er\ngo wns</w>\ncorrec tional</w>\nðŁĺ© ðŁĺ©</w>\nbreaking bad</w>\nol ing</w>\nda p</w>\nendeav our</w>\ncit adel</w>\ntra d</w>\nincumb ent</w>\nmedit ate</w>\nfoo ted</w>\nðŁĴ µ</w>\nshab bat</w>\ndayof the\nwil lem</w>\ngal way\nto red</w>\nmarri age\nf illion</w>\nsleeve less</w>\naud itor</w>\njin young</w>\ninvin cible</w>\nkad una</w>\na and\nvolcan oes</w>\nmon eti\nindie gogo</w>\nbuccane ers</w>\nðŁĳī ðŁı½</w>\nãĢ Ĥ\nlay ton</w>\ncuck oo</w>\nhu mber</w>\nbuzz er</w>\nÏ ī</w>\nto re\nstra ins</w>\nsto m</w>\npa ine</w>\ns we</w>\ndu ff\nz ou\nsi mi</w>\nli pp\nur n</w>\nse agu\nðŁĶ ®</w>\nsun dae</w>\nhi c</w>\nðŁĺ ¨</w>\nbull pen</w>\nu per\nflyo ver</w>\nal dridge</w>\nglo bes</w>\nali es</w>\nken zie</w>\nge es</w>\ny cle</w>\nsp lin\nmag enta</w>\nj ha</w>\nbal u\ngh orn</w>\nti pper\nwick er</w>\ntaste of\ncon clave</w>\nch ale</w>\ninv asi\ncat er</w>\ndio xide</w>\nme gab\nwin n</w>\nat p\ntransform ative</w>\nnest led</w>\nhi g\nbri dging</w>\nlil ies</w>\nchee red</w>\nbad dest</w>\nsc rolls</w>\nreal is</w>\ndipl o</w>\nðŁĶ «\nconce ssion</w>\nprefe rences</w>\nexplo des</w>\ner gon\nintroduc tory</w>\nine au</w>\nch af\nsom es</w>\nland rover</w>\nspir ation</w>\nsex y</w>\nsco recard</w>\nillustr ates</w>\nsoul mate</w>\nwi en</w>\ninter disciplinary</w>\nfore casting</w>\nent ities</w>\nglu ed</w>\nen lar\ncur t</w>\npercep tions</w>\nboot leg</w>\nmi re\nasho k</w>\nv az\nhor ne</w>\ncal le</w>\nac ulture</w>\nther oy\nnight time</w>\noc al</w>\ncharacter design</w>\nar mist\nðŁĺı ðŁĺı</w>\nyah oo\nac eae</w>\nto se</w>\neven to</w>\nsou t\nnay anth\nwh om\nv are\nri gging</w>\ngen us</w>\nhi ve\ncom mands</w>\nsti e\nday a</w>\nethan ol</w>\nen f\nhi fi</w>\nflu ence</w>\ncle mson\nre invent</w>\nthermom eter</w>\nhumor ous</w>\nemer ging\naci Ã³n</w>\nðŁĺĺ ðŁĺį</w>\ns ity\nhaw ke</w>\naccompan ying</w>\nt ility</w>\nðŁĺ ª\nre cess</w>\nprotag onist</w>\nl ery</w>\ndun dal\nint l\nbritt any\nq bs</w>\noff the\nmarri ages</w>\nhow to\nviol ated</w>\nadel aide\nwit t\nlanc er</w>\npak v\nhu me</w>\nst ade</w>\nbra gging</w>\nou tright</w>\nad c</w>\nsuper st\nreal time</w>\ncu res</w>\ngarden ers</w>\nero ck</w>\ndale jr</w>\nver o</w>\nbar tol\nmo ti\nmc fly</w>\nv pn</w>\nst ink</w>\nover rated</w>\nguer ra</w>\ne tis\nath ome</w>\ntwd family</w>\nth ab\ntn x</w>\nrafa el\nfamily travel</w>\nx ley</w>\nsat anic</w>\nequ ations</w>\nru dy\nwal dorf</w>\nstan i</w>\ntu be\nmeas les</w>\nzimmer man</w>\nobli gations</w>\ni ously</w>\nbow ser</w>\ntrans former</w>\nsho ppe</w>\nshak en</w>\ngh ouse</w>\nto d\nke tball</w>\nshare holder</w>\nmar ca</w>\nkp mg</w>\nak an</w>\ngiven chy</w>\ncoast al\nau th</w>\nroller coaster</w>\nmar ches</w>\ncoordin ate</w>\ncine ma\napprentic es</w>\npar lor</w>\nmit o\nmen on</w>\nconsider able</w>\nbar re</w>\nglo ss\nenh ances</w>\njaz eera</w>\nfal mouth</w>\nthra sh</w>\nstat en</w>\nk zn</w>\neng el\nsamanth ap\nflo ppy</w>\nsal om\nðŁıĨ ðŁıĨ</w>\nw ack</w>\ndeliber ate</w>\nosc ill\nherit ag\ndu sted</w>\norni thology</w>\npad dle\nfer ns</w>\nbar un\ncl ans</w>\nanticip ate</w>\na ay\nmat ically</w>\né ĩ\ntu mble</w>\npost man</w>\nunic ef\ntro tter</w>\nop d</w>\nleaf let</w>\nge ist</w>\ncease fire</w>\nscre ws</w>\ncre ation\nwal nuts</w>\nlongh orns</w>\nunder statement</w>\nab b</w>\nproxim ity</w>\nna x\nun ity\nturn pike</w>\norda ined</w>\ndub step</w>\nchak ra\nme ch</w>\nlove her</w>\nlook alike</w>\ndonne in\nvir on\nÙ Ī</w>\nbang ers</w>\nvari ants</w>\nout dated</w>\nin ta</w>\ncri sto</w>\nsp elt</w>\nfood and\nf on</w>\nstefan i</w>\nmargin al</w>\nhu tton</w>\nti ara</w>\ntel ford</w>\nqu en</w>\nfair grounds</w>\nque tta</w>\nmikha il</w>\nheal er</w>\nv ball</w>\nty re\nunder grad</w>\ngl end\nhom ers</w>\nscri bed</w>\nmain tains</w>\npo che\nmis sal</w>\nmar ko</w>\nu as</w>\nÃ¡ n\nsh p</w>\ncon vey</w>\npad re</w>\nsab a</w>\npu glia</w>\nmadhu ri\npa xton</w>\nchap lain</w>\nn ago\nca si\n... !!!</w>\nfli rt</w>\nsal eh</w>\nk are</w>\ndi re\nstam ped</w>\nextre me\nðŁĺĥ ðŁĺĥ</w>\nho ppy</w>\nguadalu pe</w>\nadvant aged</w>\neu char\np low</w>\nun n</w>\nmac qu\nport land\ncla sh\npe s\nlou bout\ny p\nkeep ing\narca dia</w>\nfran kie\nfi u</w>\nde th</w>\nencyclo pedia</w>\nsi ze\ninve sts</w>\nðŁį ©</w>\ngeo logical</w>\nfran Ã§\ncon front</w>\nðŁĺ ¥\nd ys</w>\naf m</w>\ntex an</w>\ngraph ene</w>\nrepost app</w>\nac f</w>\nur sula</w>\ngaz a\ndd led</w>\nfu m</w>\nwsb tv</w>\nm be\nfron tiers</w>\nchrono graph</w>\nke s\ninter faith</w>\ntab oo</w>\nspar ta</w>\nwon do</w>\nflori st</w>\nem braces</w>\nca w\nno el\narch ers</w>\nðŁĲ ·</w>\nroman o</w>\nban an\nsh akers</w>\nmelo dies</w>\ngeo thermal</w>\nse phora</w>\nìļ °\nÐ¾Ð ´\npro c\nhand shake</w>\npan de\npopul ated</w>\nslow down</w>\nhor tons</w>\nregistr ations</w>\nun deni\nlan ts</w>\npas sover</w>\nthak ur</w>\nli ef</w>\nadhe sive</w>\npe tal\nmicro scopy</w>\nmemph is\nconfir ming</w>\nair drop</w>\nmesm er\nperce ived</w>\nming le</w>\nlifel ine</w>\ngh j\nworcester shire</w>\npas sions</w>\nach er\nel lar</w>\nah o</w>\nfiren ze</w>\nbar ang\nletter man</w>\nhat field</w>\nlu cha</w>\nje ter</w>\ne shop\nwilliam s\nhoro scope</w>\npre de\neast bourne</w>\ndur ga</w>\ndi version</w>\nal trin\nseis mic</w>\npremi osm\nnar co\nti r</w>\nori g</w>\nor m</w>\nland fall</w>\nci ous</w>\nlin do</w>\nmax ine</w>\nx ico</w>\ntra y\nos wald</w>\nc ba</w>\nric otta</w>\nn cr</w>\nmar au\nà¸ ²</w>\ngladi ator</w>\nch ery</w>\nlun g\nu me\npo psic\nlon ging</w>\ncan als</w>\nta ya</w>\ndecentr alized</w>\nsho pp\npres sures</w>\nmahar aj</w>\neti had</w>\nwal greens</w>\nsucce ssion</w>\nsign aling</w>\nli g</w>\nstaf fer</w>\nnorth korea</w>\ndef ying</w>\nas ma</w>\nde g</w>\nperi meter</w>\noak ville</w>\nm sk\nbalti more\nrece ip\nde ple\nðŁĺŃ ðŁĺĤ</w>\njambo ree</w>\n> .<</w>\nrsp b\npuni sher</w>\nconsider ably</w>\nin tothe\npari sian</w>\nacceler ated</w>\npolye ster</w>\nlow es</w>\nfr ying</w>\nsautÃ© ed</w>\nmou ths</w>\nseychel les</w>\nra x</w>\ngo dis\ndak ota\nhouse wives</w>\nthe me\nmat inee</w>\nblack bird</w>\nye sung</w>\npre fers</w>\npelle gr\nin ated</w>\ntrun ks</w>\nstronger together</w>\nre pet\nre pairing</w>\nped als</w>\ntoler ant</w>\nher r</w>\ndun ne</w>\nindic ation</w>\ndecat ur</w>\nb tv</w>\nexhibit ors</w>\nik on\nfriday motivation</w>\nbra gg</w>\nlive tweet</w>\nal ves</w>\nwomens art</w>\nforeig ners</w>\nwal lets</w>\nmin dy</w>\nlan ey</w>\nbb in</w>\ntv miaw</w>\nlif ter</w>\ntar get\ntam e\ndr ou\nastro photography</w>\nmp c</w>\ng pu</w>\nnord strom</w>\nfric tion</w>\nrun off</w>\nlov able</w>\nsp nfamily</w>\next ingui\nbloo dy\nsch el</w>\narti stry</w>\nsw ish</w>\nscar ce</w>\nph ils</w>\nmax im</w>\npos sum</w>\ncom promised</w>\nsty li\nsc fc</w>\nis sa\nbirmin gham\nsket ched</w>\nangel ica</w>\nordin ance</w>\nje ts\nconqu er\nðŁĺ Ĳ\nonline shopping</w>\ns ori\nreason ably</w>\nnue stro</w>\nar turo</w>\nch l</w>\nbenef ici\nspho to</w>\nwel t</w>\nni kk\nðŁ¤ ŀ</w>\ndan ao</w>\nfor mid\nas se</w>\naf irst</w>\nâľ Ĥ\ngil lette</w>\nas sor\nan onym\nsel ca</w>\nfe mi</w>\nbear able</w>\ny and\nar mory</w>\ncre pe</w>\nceltic fc</w>\nbra vo\nin expensive</w>\nde lec\nge cko</w>\nnew market</w>\nsnow flakes</w>\nkab ir</w>\ncon tra</w>\ncan ning</w>\nmor pho\ngar wal</w>\nðŁĴĥ ðŁı»</w>\nfight ing\nmu tation</w>\nwoo dy\nju gg\ngr aces</w>\npremiosm tvmiaw</w>\nkenne dy\ngu p\nsa e\nop ha\noff spring</w>\nfini sher</w>\nbet ts</w>\nspan ning</w>\nmar j\nh one</w>\nsh ing\ncontin ents</w>\nsamanthap rabhu</w>\nun related</w>\nl acy</w>\nexplo sions</w>\nbenjam in\nsophi e\nno ting</w>\nmicro soft\nas sen</w>\na hoy</w>\ni ker</w>\nho fer</w>\nmo e\nah madi\nyan n</w>\nan ak</w>\nma hi</w>\nbe u\naha h</w>\ncreep er</w>\nbaahu bali</w>\nam at\npri ory</w>\nhaw keye</w>\ndeloit te</w>\nsko da</w>\nprint making</w>\nassemb ling</w>\nmirac ulous</w>\nno ch</w>\nsw o\nleg a</w>\noper ates</w>\nborder lands</w>\neli e\nstron gh\nrep tiles</w>\npir ate\nun fold</w>\nÂ ¯\nqual comm</w>\nun predictable</w>\not r</w>\nrose wood</w>\ndirec tional</w>\ncounsel ors</w>\ncorn ell\nliber ated</w>\nj ad</w>\nir regular</w>\nbulgar ian</w>\nhigh ness</w>\nvodaf one</w>\nsw ild</w>\nmini mize</w>\ngra zie</w>\nà¹ ĩ</w>\nr stats</w>\nstre ep</w>\nome tric</w>\nhumb le\nlu mp</w>\nl ille</w>\nb Ã¼\nhome depot</w>\ntripad visor</w>\nki wan\na via</w>\ner z</w>\nex ico</w>\ndu f\nblu men\nmi zing</w>\nar ma</w>\nin im\ncon stan\nsor a</w>\nju al</w>\nau n</w>\ntw ell\ntren ches</w>\nher a</w>\nr k\npo plar</w>\nrecipe oftheday</w>\nll an</w>\nbhu ban\nshort ages</w>\ning don</w>\nbridge water</w>\nðŁĲ ĺ</w>\nfortn ite\ncam den\nun cture</w>\npro w\ncolon ies</w>\nt ks</w>\nn go\nb hm</w>\nlive pd\nspl ace</w>\nsli ke\nhappye aster</w>\nter rence</w>\nrevol ver</w>\nj ed</w>\nyy yy\noffice of\nm ts</w>\nexist ential</w>\nr ourke</w>\nexplore bc</w>\nsse d\npri est\nvix en</w>\nsi ding</w>\nk pa</w>\na har</w>\nju ic\nob struc\nforen sics</w>\nuk mfg</w>\ncancell ation</w>\nwe ary</w>\nab q</w>\nele c</w>\npri zed</w>\ndeb ts</w>\nme zz\nsalv atore</w>\nm dc\ngre tte</w>\nc gc</w>\nth on\nsnow storm</w>\nts ch</w>\ncook ery</w>\nå ¹\nwa xing</w>\nn acional</w>\nmur s</w>\nra ve\ncap es</w>\nger main</w>\ndri pping</w>\nsub mitting</w>\nome lette</w>\niter ation</w>\naj es</w>\nshim mer</w>\nfu eling</w>\nðŁĩ§ ðŁĩª</w>\nli po\nbo bble</w>\nun follow</w>\nislam ist</w>\nhi ber\ncat s\nagentsof shield</w>\nsen si\n____ _</w>\nster ia</w>\ninst al\nausp icious</w>\nhar row</w>\nover land</w>\nfemini sts</w>\ninst ant\nchar iot</w>\nblind ness</w>\nsp ed</w>\nsc arec\nnu it</w>\nmini atures</w>\nho seok</w>\nglo ck</w>\nfifa worldcup</w>\ne te\ndis m</w>\nwe iner</w>\nex foli\near ts</w>\nà¸ Ķ</w>\nmy art</w>\nman il\niss ant</w>\nform a</w>\nin cu\nbuffal ob\nin tim\nmc cul\nanj ali</w>\npo po\nun doub\nhil a</w>\nfun gal</w>\nthank ful\nfu tur\nen dish</w>\nren ds</w>\nth ar</w>\nshe ff\nring o</w>\nnichol ls</w>\nio wa\npo tom\ncl ams</w>\nãģ Ħ</w>\nacon f</w>\nstadi ums</w>\ndi mp\ndi k\nresiden ces</w>\ndo v</w>\ncaric ature</w>\nseagu ll</w>\nkl m</w>\nconfe ss</w>\nsla pped</w>\ncele b\nturb ines</w>\npp v</w>\nnur ture</w>\nel ab</w>\n.... .#</w>\ntu ff</w>\nde press\nal far\namii bo</w>\ndi spon\ne wing</w>\nque er\nfriend s\nfor re\nâĺ ¼</w>\nsw t</w>\naqu arius</w>\nhead liner</w>\ncur d</w>\nfi gs</w>\no tters</w>\nlove fl</w>\nkare em</w>\ngo vegan</w>\nfri yay</w>\nconsol ation</w>\nat ri</w>\nì§ Ħ</w>\nâĺĿ ï¸ı</w>\npoly ne\ngu ed</w>\no ya</w>\nla us\nintestin al</w>\ncam illa</w>\nscal p</w>\npi r</w>\nleed s\nhorri fying</w>\nbore tum</w>\ndand elion</w>\nfer rer</w>\nell ic\nas x</w>\nso ren\nre loaded</w>\nale ague</w>\nnavig ator</w>\nine tte</w>\nadd ams</w>\nal chemist</w>\nak shay</w>\ndystop ian</w>\nawe c</w>\nn aya</w>\nal isa</w>\nai led</w>\nag or\navi ator</w>\nali zer</w>\nsmo bile</w>\nfindyour park</w>\ncop ying</w>\nto ddy</w>\nsh ti</w>\nmon ger</w>\ncal houn</w>\nnap kin</w>\nbreak up</w>\ny atra</w>\nse thu\nric hi\neras mus</w>\nfer ry\nam ore\nprac tise</w>\nbo bo</w>\npower point</w>\noo se</w>\nli ffe</w>\nchin a\nsh ka</w>\nfad navis</w>\ndu ane</w>\nwar on\nfal se\nðŁļ Ĥ</w>\nwa shes</w>\ndisc ip\n==== ====\ng k\nab b\nstub born</w>\nmedi eval\np ci</w>\nðŁį ª</w>\nmaril yn\nh yo\nman di\ncr i</w>\nprede cess\ncontinu ation</w>\nom usic</w>\ns lat\nwh al\nmall ory</w>\nbon n</w>\nshen zhen</w>\nca i\nâĺ ĥ\nsa fest</w>\nfor wards</w>\ndra wers</w>\nbla sted</w>\nsle e</w>\nmor phe\nmb ta</w>\ndumb ass</w>\nÑĦÐ¾ÑĤ Ð¾</w>\nalhamdulil lah</w>\nec lub</w>\nal beit</w>\nheal ey</w>\nayurve da</w>\nadverti sed</w>\ncro cs</w>\nitt les</w>\nbry son</w>\nbe i\nnj pw</w>\nhonore e</w>\nfu sed</w>\nðŁĶ ĺ</w>\nmul tin\nn aga</w>\nde parts</w>\nko p</w>\nkin o</w>\njhar khand</w>\ned na</w>\nax le</w>\nmil ton\nsupremac ist</w>\nmarrake ch</w>\ndomin ic\ntran script</w>\n] [#</w>\n: ).</w>\nwo c</w>\nsur rounds</w>\no gil\nleaf lets</w>\nco well</w>\nwhe w</w>\ntru de</w>\nproli fer\nsucce s\nsports man</w>\ncon dom</w>\npo che</w>\nk up\nimprison ment</w>\n{ }</w>\nscram bled</w>\nå Ľ\nka ine</w>\ncell phone</w>\nmetam or\ncon i\nremn ants</w>\nee z</w>\ndown pour</w>\nafterno on\nexerc ising</w>\nber ser\narchitec ture\nwick low</w>\nm ns</w>\nis p</w>\nbo c</w>\nn iss</w>\nmn wild</w>\nstu mble</w>\nr si</w>\nlu ffy</w>\nsil en\ndd ad</w>\nbul lies</w>\nhaw ker</w>\nbb cc\nscu ba\ne pp\nque ts</w>\nfor aging</w>\npal let</w>\nha di</w>\ncinemato grapher</w>\ncat chers</w>\nto aster</w>\nk hi\nlite coin</w>\nkid lit\namher st</w>\nmaur icio</w>\nip ad\nmar malade</w>\nfe y\ndon nelly</w>\ng to</w>\nest as</w>\ncere bral</w>\nant grasso</w>\nzz led</w>\nvir gil</w>\nswa pped</w>\nðŁĺħ ðŁĺħ</w>\nno dapl</w>\ngreate st\nnhl bruins</w>\nfra ser\nb mo</w>\nane w\n. âĿ¤ï¸ı</w>\nse gregation</w>\nremark ably</w>\nmccor mick</w>\nlo gger</w>\ner as</w>\ncontrac ting</w>\nâłĢ âłĢ</w>\nyor ks</w>\nuku lele</w>\ntouch screen</w>\nde cked</w>\nben n</w>\nsouth wark</w>\nra vin\nnu mis\nðŁ¤ Ļ</w>\nru t</w>\ngre co</w>\neth ic</w>\nred neck</w>\nar r\nt cs</w>\nih ri\nðŁĩ« ðŁĩ·\nl k\ninher ited</w>\nzy k</w>\nviadu ct</w>\nmarty red</w>\nhi gu\nss n</w>\nbe in\nstreet style</w>\nfer gie</w>\nbank of\næĹ ¥\nstake holder</w>\nexempl ary</w>\ncre ss</w>\ness a</w>\nero tica</w>\nintre pid</w>\ngom es</w>\nbra un\nbethan y\nbang tan</w>\npulmon ary</w>\nm illing</w>\ndoctor ate</w>\ntrump russia</w>\nà¤ °\ns ani\nbl att</w>\npla u\ndepri ved</w>\nt le\nful ly\nbour n</w>\nst ak\nlufthan sa</w>\nkio sk</w>\nfar oo\ndef y</w>\nbad an</w>\nðŁĺĺ âĿ¤ï¸ı</w>\nrit z\ntri sha</w>\nran ds</w>\nmiddle sex</w>\narab s</w>\npro j</w>\nsport scenter</w>\nrepe ats</w>\niv f</w>\nbleed blue</w>\nas sure</w>\no bs</w>\nterrit orial</w>\nele n</w>\nbever ley</w>\nann ah\nâĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ıâĿ¤ï¸ı\nz l</w>\nfor good</w>\nscience fiction</w>\ngla u\nson ya</w>\npri th\nst weets</w>\nmix ers</w>\nmari o\nant elope</w>\nwriting community</w>\nwent z</w>\nden ham</w>\nbe di</w>\nsf o</w>\nharley davidson</w>\nlook book</w>\nimmuno therapy</w>\nor phe\nes ville</w>\ned ged</w>\ntas k\nsb ball</w>\ncorro sion</w>\nkilom eters</w>\nco sting</w>\nplay back</w>\nke ke</w>\ndi visi\nu ter\nre location</w>\nyel led</w>\npen g</w>\nup beat</w>\nser ve\nâļ ł</w>\nhal en</w>\nstir ring</w>\nreh man</w>\nen v</w>\nschu macher</w>\nfrag ment</w>\nalkal ine</w>\nsb k</w>\nresil i\nshare point</w>\nrol lover</w>\ntra sh\ncounter part</w>\nâĻ «\nob itu\nà ½\nãĤ ¹</w>\nmul berry</w>\nðŁİ Ĩ</w>\nauton omy</w>\nspra ying</w>\nnat l\nlove you\nfran ki\nnu k</w>\nesc ar\ncan teen</w>\nali baba</w>\nde plor\nmole cule</w>\npu d\nfort night</w>\nblon die</w>\nsp hin\nportra yal</w>\nta che</w>\nbu te</w>\nconsi sting</w>\nfreep alestine</w>\nc sp</w>\nim mort\nd ns</w>\nðŁĴ¥ ðŁĴ¥</w>\ntour de\ncoo king\narchi val</w>\nga thers</w>\nbit t</w>\nb anc\npre mature</w>\nsnow ball</w>\npoetry day</w>\nlou dly</w>\nfug itive</w>\ned ay\nem ra\nðŁĩ¸ ðŁĩª</w>\nsci en\nnode js</w>\njur gen</w>\nje ong</w>\nband ana</w>\nun is</w>\nfox sports</w>\nv andy\npro visions</w>\nwee p</w>\ntu k\ni ko</w>\nh oun\nzig gy</w>\nz r</w>\nfil let</w>\nbat a</w>\ntin k\ncon e\nwe want\nk ilo\nhor ace</w>\nsl t</w>\nsc t</w>\nstay tuned</w>\nvictor ia\numb ria</w>\natt acker</w>\ningham shire</w>\nfright ening</w>\nno ir\nfr at</w>\ncon tempt</w>\nlia ison</w>\nho i\nbr ink\ntr ill</w>\nni agar\nkick ass</w>\ndun das</w>\nnot my\nrho de\nbu mble</w>\nno xi\nfa g</w>\nspec tators</w>\nmancrush monday</w>\njin ping</w>\ndistr act</w>\ndais y\nwal den</w>\nportra it\nar thistory</w>\nvol tron</w>\nev el\nis c</w>\nac m</w>\nr ite\nna o</w>\nde ported</w>\nswe ats</w>\nru fus</w>\nlo bo</w>\nlabor day</w>\ngam o</w>\nihri thik</w>\nbl it\nabdomin al</w>\nãħ¤ãħ¤ ãħ¤ãħ¤\ni it\ne q\nbu sy\nallu arjun</w>\nun disclosed</w>\nde ton\npro create</w>\nki l</w>\nðŁİĤ ðŁİĤ\nmitch ell\nki i</w>\ninherit ance</w>\nal p</w>\njo burg</w>\npat rolling</w>\ncompul sory</w>\nun signed</w>\nni am\nl ga</w>\neshop suk</w>\ntr illi\nma w\nappreci ating</w>\nrock ab\nmaÃ± ana</w>\nan tal\nmal vern</w>\nroy o</w>\ngrand prix</w>\nsut ton\ngo ftheday</w>\ndig i</w>\nãħĭãħĭ ãħĭãħĭ\nt les</w>\nvaran asi</w>\nerec ted</w>\ndiscip les</w>\ncont act\nðŁĺ µ</w>\nli d\nâ¬ ĩ</w>\nscen tre</w>\nradi ator</w>\ning tips</w>\ntrans itions</w>\nthursday motivation</w>\nchem ical\nsepar ati\nsal is</w>\nmi m</w>\ngeo graphical</w>\nbook fest</w>\n/ .</w>\nâľ ĭ\nv ae</w>\ncur rie</w>\nag garwal</w>\nacceler ation</w>\nthe ses</w>\nlg m</w>\nu mass</w>\npro portions</w>\nnat a</w>\nani ans</w>\nku ch</w>\nbe acons</w>\nap r\n@ #</w>\nðŁĴª ðŁı¾</w>\nnu ke</w>\nsher aton</w>\nki o</w>\nma kati</w>\npolit ico</w>\nmor ale</w>\nì Ļ\neconom ically</w>\ngg ly</w>\nss en\npa stries</w>\nintern ships</w>\nvic ente</w>\nfanta ken</w>\naveng ers\naccu se</w>\nslee pover</w>\nindic ated</w>\nthe dream</w>\nster one</w>\nren ders</w>\nfro st\nou i</w>\ngre gg\nd ore</w>\nâľ¨ âľ¨âľ¨</w>\npu gs</w>\nsat y\nnu mb</w>\nhems worth</w>\ntam i</w>\nla ssic</w>\nschi ff</w>\nigle sias</w>\nag awa</w>\n] \"</w>\nre shi</w>\ngame stop</w>\ndivor ced</w>\ntheat er\nclau di\nun conventional</w>\nprophe ts</w>\nac in\ntwel f\ntow ering</w>\nt ml\nsc lerosis</w>\nk wan</w>\nge ts\ndistur b</w>\nna ira</w>\nener g\npir acy</w>\npru itt</w>\nnoti fied</w>\nhen na</w>\nbra m</w>\nground water</w>\nbl s</w>\nopti mis\n$ )</w>\nluci e</w>\nbiz hour</w>\nfang irling</w>\ngr ills</w>\nor l</w>\nver se\nc ina</w>\nlaw less</w>\nartistson twitter</w>\ntele vised</w>\nmarshmal lows</w>\nradio head</w>\nbar r\nm fc</w>\nbre vi\nmmor pg</w>\ng aya</w>\nâĸ «\nsub titles</w>\nj t\ndisney land\nto bago</w>\nnh m</w>\ngroo ve\nfi awec</w>\n\" /</w>\nba o\nscra bble</w>\nom ni</w>\nff l</w>\num c</w>\nsi mba</w>\nali er</w>\nter rell</w>\nplu me</w>\nmi di\ndig nit\nco c</w>\nbru t</w>\nad ata</w>\nalche my</w>\nd sm</w>\nðŁĺĨ ðŁĺĨ</w>\nwin try</w>\nspa res</w>\ncu er\nconclu sions</w>\nto ys\nod or</w>\nfl ann\ngar vey</w>\nscrip tions</w>\ninspec tions</w>\ncat ap\nang lo\nst louis</w>\nheim er</w>\nat ay\ntr ich</w>\nen yc</w>\nchil ds</w>\nvent il\nmont p\nguiller mo</w>\ncircu lare\nz ell</w>\nmode led</w>\ncraf tsman</w>\nal ina</w>\nstimul ation</w>\ncashe w</w>\nju das</w>\nbest of</w>\nto ire</w>\nsusp ends</w>\nscol lege</w>\nreal ising</w>\nby tes</w>\nbloo ds</w>\nas si</w>\nðŁĴ ¿</w>\no hs</w>\nðŁį ĭ</w>\nscallo p</w>\nà¤ µ</w>\ngi fting</w>\ncamo gie</w>\nwil kes</w>\no zzy</w>\nðŁ¤ ¤\nver onic\nsav oy</w>\ndeme tri\nbaby girl</w>\nðŁĺį ðŁĺŃ</w>\nso x\ncly de\ninduc tee</w>\ncount down\nself care</w>\nà¤ ľ</w>\nvi ka</w>\ntor re\nphd chat</w>\npe ars</w>\naw h</w>\nsuff rage</w>\nle sn\nadmir ation</w>\nmp p</w>\nshark week</w>\nschul z</w>\nsantor ini</w>\nclo ver\n( *</w>\nstras bourg</w>\nex iting</w>\nso yu\nfinger print</w>\nche a</w>\nãĢ ľ</w>\nvin dic\nsong writers</w>\nso a</w>\nprou der</w>\nnam a</w>\n= ))</w>\nsimple st</w>\ndelici ously</w>\ngil les</w>\nu q</w>\nmn wx</w>\nep p</w>\nsh un</w>\nken nel</w>\nfall on\nðŁĲ £</w>\nsin d\ntra gically</w>\nout es</w>\nmodern ism</w>\nco ke\ngy n</w>\nspi on\nâĺ¹ ï¸ı</w>\nle am\ncompress or</w>\napolog ise</w>\ntwent yon\nfan atics</w>\nâĻ »\nsco tsman</w>\nsa wa</w>\nko u</w>\nas er\nà¸ ļ</w>\nwelter weight</w>\nphen om</w>\ntwick enham</w>\nstri a</w>\np out</w>\nka z</w>\ngi am\ncd p</w>\nho y\nemplo y</w>\nred mond</w>\nà¸ Ħà¸\nsm ere</w>\ntrance family</w>\nproto cols</w>\npie ce\nlu iz</w>\niter acy</w>\ncarl s\nunited states</w>\nhar med</w>\nphd life</w>\nch aw\nfoot prints</w>\nl Ã©\ncho ker</w>\nz ana</w>\nsli pper</w>\neric sson</w>\ninsul ting</w>\narticho ke</w>\nadvis ing</w>\nacquis itions</w>\nop or\nmut ations</w>\nre ar\nà¥ ģ</w>\npod cast\nwi ther\nkun g\níĺ ¸</w>\nwin slow</w>\ndi apers</w>\nðŁĵ¸ @</w>\nec ker\ncol lar\nhu ey</w>\ngi ro\nmono gram</w>\nkas ich</w>\nsi veness</w>\nmalay si\narom atic</w>\ngre s</w>\ngali leo</w>\nu ji</w>\nrob b</w>\ndr m</w>\nnone theless</w>\nas a\n: ></w>\nlo a</w>\nl np</w>\nat work</w>\nag t</w>\nlaksh mi</w>\npipel ines</w>\nid al</w>\nstre l</w>\nre all\nchain z</w>\nstone wall</w>\nsan sk\nðŁı ´\npied mont</w>\nhoste ss</w>\nci u\nt Ã©</w>\nanaly ses</w>\nwil helm</w>\nscott y\nrw by</w>\nmosqu it\nuse mb\nqu ins</w>\nðŁĳ İ\ntu cker\ns conf</w>\nspeci fications</w>\npsychi atry</w>\nbroo kes</w>\ns ils</w>\nol af</w>\nde to\nco di\ncli p\nfil th</w>\nwomancrush wednesday</w>\ngo to\nang erous</w>\nbe ale</w>\nw tc</w>\npaneli st</w>\nne x</w>\nlar sen</w>\nemili o</w>\ntab leau</w>\nh itters</w>\nconce ived</w>\nameric ani\nor tega</w>\nmar di\nÑ ĥ\npain tball</w>\nthir sty\nnew yorker</w>\netis ation</w>\ngo ss\nwe aker</w>\nu gh\ntro ll\nhar ga</w>\ndu al\nght ning</w>\nat ine</w>\nðŁĺİ ðŁĺİðŁĺİ</w>\ncook out</w>\npyrene es</w>\npo ss</w>\nauthent ication</w>\nsports wear</w>\nyun ho</w>\nkir o</w>\narchi pel\nshen ko</w>\nren der\nnov ation</w>\ndivin ity</w>\nðŁĳ £</w>\nsu fi</w>\nhumb ling</w>\nge opol\ndevote es</w>\nwait ress</w>\ntr ough</w>\npy ro\ni ba</w>\nbl ing\ngra f</w>\nepilo ts</w>\nbt r</w>\nof tball</w>\nbas king</w>\ndomin os</w>\nso om\nr ath</w>\nsher yl</w>\nqu el\nastronom ical</w>\nwel d</w>\ntrack list</w>\nsig nee</w>\nslee pless</w>\ncom man\nch ron</w>\nsumm on</w>\npure michigan</w>\ncri spr</w>\nsli p\nla gi</w>\nra q\num u</w>\nthal ap\nchar med</w>\nscru mp\nquad copter</w>\nski p\npeter sen</w>\nmun i</w>\nðŁĮ ¾</w>\nmon aghan</w>\ntra ys</w>\nick ed</w>\ncanad aday</w>\nte gr\nï¿ ½</w>\nhot ness</w>\nheavy metal</w>\nab ar</w>\ngop debate</w>\naz ul</w>\nspider man\nsun flowers</w>\nľ ë\nweb comics</w>\nbar d\nÐ ²\nnichol as\nslu sh</w>\nram an</w>\nmark ham</w>\nffici al\nff ler</w>\níĬ ¸</w>\nple ss\nanush ka</w>\nto to</w>\nsk aters</w>\npro wrestling</w>\ncompet es</w>\nay ala</w>\nmyster y\nthr ills</w>\nmp g\nindepend ently</w>\ny ul\nimper ative</w>\nformid able</w>\ntire less</w>\nst acking</w>\nton gues</w>\nmal tese</w>\npot ts</w>\nmat ti\nchar ting</w>\nchill out</w>\nsuper nova</w>\nome o</w>\nsky sports\nnu tty</w>\nðŁĹĵ ï¸ı</w>\nro han</w>\ninsp ired\nconcier ge</w>\nser ra</w>\nma kk\ngal at\nchi pp\nye v</w>\nì £\nreim bur\nop ul\nkimber ley</w>\ni eee</w>\nbre men</w>\nch itec\nor in</w>\nnak u\nbon kers</w>\nfoo ty\nemer gence</w>\nðŁĨ ĺ</w>\nsti p\nserge i</w>\nzo ey</w>\nai me</w>\nwou ld\ndy es</w>\ndestin y\nvinai grette</w>\ndri er</w>\ncirculare conomy</w>\nan archi\nss r</w>\nsch el\ncin er\ngro om\ndetermin ing</w>\ngar min</w>\ncal ais</w>\nincarcer ation</w>\nbu kit</w>\nno i</w>\nchelms ford</w>\nmckin ley</w>\nchi pped</w>\nbelong ed</w>\ntu mors</w>\nstr oud</w>\nmi i</w>\ninfluen za</w>\nwwen xt</w>\ntun dra</w>\ntele communications</w>\ncat sofinstagram</w>\nt ages</w>\nbeat ty</w>\no du</w>\nml kday</w>\noo per</w>\ndang le</w>\nak ley</w>\ncru mb</w>\nanti gua</w>\nti mbers</w>\nrou hani</w>\nðŁĴª ðŁĴªðŁĴª</w>\nha fi\n... !!</w>\nw cs</w>\ncoo p\nsn c</w>\nlit res</w>\nãĢ Ĭ</w>\nha z</w>\nco z\nk ant\ngreen field</w>\ncur ti\ny ale\nflye agles\nwhat soever</w>\nwor thing</w>\nrou lette</w>\nflyeagles fly</w>\nun da</w>\na inted</w>\nstand ing\nlusci ous</w>\nh pc</w>\neffic acy</w>\nash land</w>\nme ghan\nky wx</w>\nn pr\nbath tub</w>\nac os</w>\nh ani\nmar cor\nman tis</w>\nda isi\nbo ba</w>\nab bie</w>\nmu til\nvi al</w>\nspy der</w>\npo z\ng ti</w>\nel fie</w>\nnigh tw\nmetro id</w>\nanton i\nmad die\ndh ry</w>\ndar lings</w>\nten ds</w>\ntaek wondo</w>\natlan ta\nme ow\nchlo e\nãĥ İ</w>\nym es</w>\nsiber ia</w>\nk con</w>\ngu es\nmar iner</w>\nfac il\nazz le</w>\n[ ...\nhan nover</w>\nbav aria</w>\nvir go</w>\nte uk</w>\nu sps</w>\n) #</w>\nwall a</w>\nsam pson</w>\nneed less</w>\nver bally</w>\nhay ley\nbow led</w>\npi us</w>\nlam pard</w>\nham string</w>\nvol vo\nroad safety</w>\ncho king</w>\nsor bet</w>\na hem</w>\nhealthy food</w>\nbrai ded</w>\nhorticul ture</w>\ncr ative</w>\nche ek\nad do</w>\nthe force\nko ko</w>\nschiz oph\nj ie</w>\nw ada</w>\ntwentyon epilots</w>\nh bcu</w>\npro ton</w>\npau ls</w>\nlou isa</w>\nlat am</w>\nkyr gy\ncom pac\nsd k</w>\nsap i\n?? ?\nliber alism</w>\nep silon</w>\nai den</w>\nw usa</w>\nspra yed</w>\nbaske tball\nkim ono</w>\nblue wave</w>\nali as</w>\në§ Ī\nmug shot</w>\nce c</w>\ndo gre\nad ora</w>\nðŁĵ· @</w>\nkra kow</w>\nintrigu ed</w>\nexhau sting</w>\nastron omer</w>\nven ison</w>\nlady bug</w>\nci v\nbra e</w>\nus m</w>\nbri be</w>\nacup uncture</w>\npembro ke</w>\nke ating</w>\nchi e\ny ad</w>\nt si\nsm i</w>\nsee ding</w>\ngate shead</w>\nlis boa</w>\ngy p\ncanv ass</w>\nðŁĶ´ âļªï¸ı</w>\nop i\nni r</w>\nsoci etal</w>\nly te</w>\nati es</w>\nc sm</w>\nar tery</w>\nal in</w>\naka poor</w>\nabstr acts</w>\nâĢ¦ âĢ¦</w>\nteen wolf</w>\nne we\ntravel gram</w>\nsentim ental</w>\nper ched</w>\nhan del</w>\nho ek</w>\nf ay</w>\ncoordin ating</w>\nanim ate</w>\nman ian</w>\neffor t\njer ky</w>\nf ck\nadri enne</w>\nma bly</w>\ntra ding\nmy el\nspi ro\nsol a</w>\nstor ing</w>\nover drive</w>\nmonday morning</w>\ndream team</w>\npul se\nbon di</w>\nber nie\npgat our</w>\ntri poli</w>\nson am\nplat t</w>\nâļ ¡\nag roup</w>\nîĲ Ĵ\ninv ading</w>\nv cu</w>\nk ell</w>\nÃ± os</w>\nun dead</w>\npod casting</w>\nmercede sam\nmana fort</w>\ncor tex</w>\nque so</w>\nimpecc able</w>\npal mer\nwil doz</w>\nsport sc\nguacam ole</w>\ndispen ser</w>\ncate gori\nstun ts</w>\nper il\ninvit ations</w>\ndune din</w>\nxi e\nachi eves</w>\nsaf er\npre ds</w>\nph an</w>\nknuck les</w>\nk ak</w>\nigno res</w>\nlovemy job</w>\naru ba</w>\nound ation</w>\ndatac enter</w>\nco vert</w>\ngr ing</w>\ncou ple\nØ§ Ø±\nvol i</w>\nmc cle\narti sans</w>\nlu do\nkal am</w>\narom a\nunder taker</w>\nhu la</w>\nwiz kid</w>\ngu mb\ngod frey</w>\nbakers field</w>\nker n</w>\nengine er\ncar ve</w>\npal in</w>\nguaran tees</w>\npe bbles</w>\nb ays</w>\nzi eg\nfin k</w>\nâ¬ĩï¸ı â¬ĩï¸ı\ndown pours</w>\nro chelle</w>\nrasp berry\nðŁĺ ®\ngra phies</w>\nstom p</w>\ncaf es</w>\nari zed</w>\nutt ar</w>\ncal vary</w>\ndri e</w>\ncrusad er</w>\nbus an</w>\ntux edo</w>\nsi u</w>\nseam us</w>\ncul tured</w>\nblan chard</w>\ntown house</w>\nge red</w>\nbutter milk</w>\nflu ctu\nroger federer</w>\nhel i</w>\nðŁ¦ ĥ</w>\nu ous</w>\nram esh</w>\nmu ppets</w>\nemail marketing</w>\nye ss</w>\nbr ice</w>\nri zio</w>\npel o\ndonnein arte</w>\nu rable</w>\ninve stin\nbump ing</w>\nraji v</w>\nsav a</w>\nthro wer</w>\nfore x\no hhhh</w>\nth rust</w>\npull man</w>\nr fid</w>\nsep sis</w>\nle ed</w>\nfri ght</w>\nroun ding</w>\nne b\nph ins</w>\nai sha</w>\nutili zing</w>\nsqu ats</w>\ngold smith</w>\nj ic</w>\nbo ks</w>\nvau s</w>\ni po\nexclu sion</w>\ntari ff</w>\npo kes</w>\nmin al</w>\nland s\nen force</w>\nwashington dc</w>\nor char\ng x</w>\nmar ys</w>\ney our\naussi e\nbak ers</w>\nun popular</w>\nlatin os</w>\nlar ge\npu tnam</w>\nbol o</w>\nwa de\npel o</w>\ndi zz\nob struction</w>\nfla ppy</w>\nweare the\ndepend ence</w>\npajam a</w>\ne te</w>\ny ann\ne wan</w>\ndisc la\na ay</w>\nkar ina</w>\ne ic\nan trim</w>\nw soc</w>\nneg atively</w>\nkai do</w>\nfotogra fia</w>\ndh ru\ncolo ssal</w>\nmcle od</w>\nk wang</w>\nmani pu\nex hilar\nus atoday</w>\nsummer slam</w>\nco les\ntapro om</w>\nunbeat able</w>\nde ma\ntic ks</w>\nk ling\nfil s</w>\ncampaig ners</w>\nà¸ ķ\nbrew ster</w>\naudu bon</w>\nqu ay\nch s\nki gali</w>\nd ler</w>\nstrength ens</w>\nsom al\nsign ingday</w>\ngol ds</w>\npig ment</w>\norche stral</w>\ng q\nlin kin\nðŁı ĩ</w>\nta w</w>\nalgar ve</w>\nho v</w>\near le</w>\ngold fish</w>\nam ig\nex er\nben in</w>\ndru id</w>\nðŁĲ ¸</w>\nshe m</w>\nquat tro</w>\nmer cen\nmen te\nincorpor ating</w>\nbon anza</w>\nstate fair</w>\nen de</w>\nconcep tions</w>\ne es</w>\nâĻ¥ï¸ı âĻ¥ï¸ı\nd son</w>\nfire arm</w>\norb ital</w>\nwe h</w>\nmulti p\nfo b</w>\nrequi em</w>\np light</w>\nthou se\nsa id\noc re</w>\nremem brance\nn old</w>\nchi pping</w>\nbe v\ner t\nca thy\nsy m</w>\nri ggs</w>\nm ley</w>\ndialo gues</w>\nsl ender</w>\nhow l</w>\ngau teng</w>\nwd w</w>\nto bi\nsmo kes</w>\nim plo\nb pm</w>\nad n</w>\nmom basa</w>\ncap sul\nbloom field</w>\nartic ul\ncle o</w>\ngoog led</w>\nflu ffy\nl ard</w>\nen zyme</w>\nve sti\nibra hi\nfl ame\ne mea</w>\nout ages</w>\ndispro por\nble ak</w>\nan sel\nick er</w>\nst louis\nstock market</w>\ngood friday</w>\nsau lt</w>\nstal led</w>\npro m\nep som</w>\nb Ã©\nthe se\nsau ces</w>\nme w</w>\nlit fest</w>\npre d\nre u</w>\nkar ak\nsi enna</w>\nell in</w>\nbio technology</w>\nï¸ıâĥ£ -</w>\ntac tic</w>\nsa in</w>\npor k\nmon za</w>\nka j</w>\nlu sh\ncompart ment</w>\nchang ing\nshraddha kapoor</w>\nfo al</w>\nar tem\ncu ando</w>\ncan ola</w>\nori ente\nme sse</w>\nd ited</w>\nbr c</w>\nbox er\nbbc two</w>\ns st</w>\nment day</w>\nem ing</w>\nde wey</w>\nkof i</w>\nâŀĸâŀĸ âŀĸâŀĸ\nreali zation</w>\nsmo l</w>\ntw ood\nsan je\nflag staff</w>\nber wick</w>\ncor set</w>\ncan ary\nwhistle blower</w>\net ched</w>\ncom posing</w>\nsquee zed</w>\nbow er</w>\nauto desk</w>\nne h\nmathi eu</w>\nba ja\nÅ Ĥ\nhy dra</w>\nda im\nam eri\ninsi sted</w>\nmer lot</w>\ngar ros</w>\nheart news</w>\ngaine sville</w>\ncut ler</w>\nbo de</w>\nðŁĺī ðŁĺī</w>\nlew es</w>\nscoun try</w>\ng sa</w>\nus u</w>\ncc m</w>\ngod awgs</w>\nphara oh</w>\ncra e</w>\nmor ley</w>\nhyp noti\nf ades</w>\nneur ons</w>\nfu zz</w>\ning co</w>\nhigh landers</w>\nstar k\nvig ne\npac kets</w>\namar illo</w>\nreu ben</w>\ninsul ts</w>\nbas ic\nvec tor\nn me</w>\nac ruz</w>\ntro s</w>\ntransm itter</w>\nðŁĺ ŀ\ninterpre t</w>\nðŁĺ ²\npre quel</w>\nmc gowan</w>\ndis semin\nðŁĴĺ ðŁĴĺ</w>\nmascul inity</w>\nindie gamedev</w>\nali ve\nte t\npe tal</w>\nema iled</w>\nar med\nko o</w>\nhe er</w>\nba ird</w>\nsuper junior</w>\nmetro polis</w>\ndelav in\ndecl ines</w>\nstit utes</w>\nÛ ģ\np tbo</w>\ng lan\ncho res</w>\ne aling</w>\nchri ssy</w>\nste mc\nvi an\nassassin ated</w>\npron ounce</w>\nilleg als</w>\ndiscover y\ncav ill</w>\nfri fotos</w>\nf al</w>\nso i</w>\nsabot age</w>\nt int</w>\np dc</w>\nðŁİīðŁİ Ī\nãĤ Ĭãģ\nji o</w>\nendeav or</w>\nin sig\ncommit tees</w>\nshe arer</w>\nme tz</w>\nmar rying</w>\nh dd</w>\ng by</w>\nfre t</w>\ntri sh\npu l</w>\nscrip ted</w>\nsa ki</w>\nl w\nke ye\nshim i</w>\nnan aimo</w>\nca h</w>\nÃ «</w>\ntem pered</w>\nici an\ndu gg\ndish washer</w>\nair field</w>\ns rugby</w>\ngr inch</w>\ny st\nr ms</w>\nmahat ma</w>\nlan kan</w>\ndisc ar\ndige stion</w>\nno des</w>\nl ls</w>\nom ic\ngu tter</w>\ntis garh</w>\nfeder ico</w>\nelection day</w>\nbo he\nmaster card</w>\nfire ball</w>\nâľ Ķï¸ı\noy ster\np ong\ndo k\nen route</w>\nm vc</w>\nbeat the\nali stair</w>\nshu b</w>\nsh aming</w>\ncherno byl</w>\nghi bli</w>\nthe s\npin ion</w>\nd bs</w>\nsal ts</w>\nic tion</w>\nepi ph\nnc pol</w>\nin convenience</w>\nwhit ley</w>\ninspec ting</w>\nwood ley</w>\nwi ener</w>\nskil let</w>\nno les</w>\nm ca\nh ina</w>\na sha\nwilling ness</w>\nwell ness\ntam ed</w>\nshow time\ndis advantaged</w>\nber nat\nus n</w>\nmission aries</w>\ncoun selling</w>\narrog ant</w>\nquant itative</w>\nleg alization</w>\nho dge</w>\nenergye fficiency</w>\ncameron dallas</w>\npos sessions</w>\np bb</w>\nharris burg</w>\nv g\nhindu ism</w>\nhappy thanksgiving</w>\nfi b</w>\nre acting</w>\ntweeta picture\npol iti\nmu ppet</w>\nhur rah</w>\npac e\ncoast guard</w>\nguar ded</w>\nas am\npar ry</w>\nfore very\nx q</w>\noom f</w>\nke anu</w>\nj ind\nri st</w>\ncustomer service</w>\nsac red\nðŁĺ º</w>\nton er</w>\noccur rence</w>\nmat u\nval dez</w>\nred d</w>\nis ak\npower rangers</w>\npe asant</w>\nraj ini</w>\nabra ham\ne mil</w>\ncar do</w>\ntr il\nhair styles</w>\nobsole te</w>\nsam pler</w>\ndirec tive</w>\ndelavin kisses</w>\nver ton</w>\nglo s</w>\nsp ay\npaler mo</w>\ncom ets</w>\nman ziel</w>\nchicag of\nski pped</w>\npic torial</w>\nh ant\nb mi</w>\na ol</w>\nre opens</w>\npad dling</w>\ndevo s</w>\nfra ud\nbas eline</w>\nque ues</w>\nsp ired</w>\nsn are</w>\neu ve</w>\ndescri ptions</w>\ndaisi es</w>\nca ching</w>\ngall eria</w>\ntri mmed</w>\nstin o</w>\nrecy cla\nic ular</w>\nbir ken\nraw lings</w>\nfli x</w>\nchic as</w>\nb gt</w>\nlik eli\nargy ll</w>\nthel ove\nga ston</w>\nbl anca</w>\nha k</w>\nf one</w>\nsailor moon</w>\nh aci\nima c</w>\nfl yn\nde can\nbel les</w>\nap ic\nzo g</w>\ntaun ton</w>\ncon stance</w>\nlasag na</w>\nker nel</w>\nin ka</w>\nhar bor\ncollec tively</w>\ncalcul ated</w>\nav ille</w>\nshil pa</w>\npur du\ngi mm\nfun er\na est</w>\npembroke shire</w>\nnighting ale</w>\nn unes</w>\nhyper tension</w>\nhu bert</w>\nsli ders</w>\ninfer tility</w>\ncomm ended</w>\ntransat lantic</w>\nmetr ical</w>\n!! @</w>\nÅ Ł</w>\nss g</w>\nbac ca</w>\ninver ted</w>\nfun factfriday</w>\nit ans</w>\nalbu m\nacqu ainted</w>\nri er\nwhel an</w>\nsar ab\nmu e</w>\nsnoo ze</w>\npi ff</w>\nagre eing</w>\nsp itting</w>\njer maine</w>\nn ye\nâľı ï¸ı</w>\nam bush</w>\nze ph\ncon greg\nunivers ity\ns app</w>\nwann abe</w>\npat rice</w>\nib d</w>\ndo glo\nfri dges</w>\nsun d</w>\nking ston\nar gon\nkam en</w>\nhardro ck</w>\nds ley</w>\ndo lores</w>\nì °\nota ku</w>\npi ping</w>\nbe having</w>\nâŃĲï¸ıâŃĲï¸ı âŃĲï¸ı</w>\nblue bird</w>\nan sari</w>\nteapo t</w>\nfire work</w>\ncro p\nlog ans</w>\nty ped</w>\nthick ness</w>\nig ers\nc fp</w>\ndys functional</w>\ncontra sting</w>\net ty</w>\naston martin</w>\ntx st</w>\ndra grace</w>\nat tributes</w>\nmarath on\nmanu scripts</w>\njohn stone</w>\nðŁĺ± ðŁĺ±</w>\nbo er</w>\nay u</w>\naru gula</w>\npoo rest</w>\ncon du\nassu mption</w>\nanag h</w>\nno h</w>\ndelav in</w>\nsit ter</w>\ng Ã¶\nmor ow</w>\nkick start</w>\ncom i\ngl acial</w>\nghe ad</w>\nba in\nker shaw</w>\nen dof\nfre ud</w>\nom at\ni af</w>\nhu g\nsign up</w>\neach other</w>\ndefin ite</w>\ntu bing</w>\nshak ira</w>\nðŁĳı ðŁı½\nuu uu</w>\nsw in</w>\nsham bles</w>\nol as</w>\nsk ell</w>\nbrit ain\nkn w</w>\nclu tter</w>\nom y\nj ens</w>\nhang ed</w>\ncity scape</w>\nscra ps</w>\nun locking</w>\ndead liest</w>\ner no</w>\nbreast cancer\na it</w>\ninspec t</w>\nfu ri\nðŁĴ Į</w>\nku d\nju le\nor ah</w>\nmi ds</w>\nm dt</w>\nbur gring</w>\nr attle\npu sa</w>\nstal k\ncle ans</w>\niss ance</w>\nz ek</w>\nworth it</w>\nnam eis\nmusko ka</w>\ncouncil man</w>\nurban art</w>\nbar rac\nun solved</w>\ntu l</w>\ng ita</w>\nwhite board</w>\nsoy beans</w>\nem ent\ncont i</w>\nsaturday motivation</w>\nconveni ently</w>\ndoc king</w>\nt ado</w>\nâı ©</w>\nsp ino\npuppy love</w>\npo f\nfabric ated</w>\nrobb ers</w>\nadop ts</w>\nti fied</w>\nkk r</w>\nindulg ence</w>\nnotic eable</w>\nmacqu arie</w>\nchap el\nsensu al</w>\nki ko</w>\nmelan oma</w>\nlore tta</w>\nli ance</w>\nab en\nsp lus</w>\nga al</w>\nac ele\nlib dems</w>\ncompar isons</w>\nðŁĮ µ</w>\nrhy thms</w>\nmer y</w>\nen capsul\nnap ier</w>\nðŁĳĮ ðŁĳĮðŁĳĮ</w>\nðŁĳ Ĳ</w>\nplat z</w>\nfre sno\nre formed</w>\nran bir</w>\nel it\nthe best\nbhu shan</w>\nvin nie</w>\nimpro vised</w>\ns ittin</w>\nre created</w>\ne ba</w>\nec ker</w>\nac rob\npon te</w>\ncor d\ngi ddy</w>\neur usd</w>\nfe ver\nintu ition</w>\ngar i\ndum mies</w>\nbud weiser</w>\namend ments</w>\nte tra\nsch nit\nay as</w>\nmar ys\nci st</w>\nk ani\nker mit</w>\nðŁĺ±ðŁĺ± ðŁĺ±</w>\ntin ker</w>\nstrol ling</w>\ndi visional</w>\nniger i\nomin ous</w>\nmenstru al</w>\nkar ab\nk hy\nbw fc</w>\npan handle</w>\nl illi\nwell er</w>\nstra pped</w>\nson the\ntransfer ring</w>\nethe real</w>\nsne aks</w>\nru dol\ngab les</w>\njac king</w>\ncin code\nfor tune\ncanadi ens</w>\ncon for\nab normal</w>\nfrank lin\ntit a</w>\nmu la</w>\npersi st</w>\ncu ties\nki el\nðŁĩ± ðŁĩ\nher mann</w>\naw k</w>\nfi asco</w>\nko to\nwe ta</w>\nhi ker</w>\nbudd y\npreven tive</w>\nmcgra w</w>\ngame boy</w>\nforsy th</w>\ntop shop</w>\nsi ob\nsad h\nin tram\nfollow art</w>\nso aps</w>\ndragon ball\nou x\nmorri son\nà¹ ĥ\nlu bric\nadul thood</w>\nmorri sons</w>\nâļ łï¸ı\nher mo\nta ka</w>\nstall one</w>\nmis use</w>\nteam gb</w>\nra gha\ncon fined</w>\nat y\nhom ophobic</w>\nnw o</w>\nsky news</w>\nho ya</w>\nac rosse</w>\nwi iu</w>\npur Ã©e</w>\njed dah</w>\nðŁ¤ §</w>\nadvis ers</w>\nph ine</w>\nan is\nscrump tious</w>\në° ķ\nc ke</w>\nvin y\nter m\ns dc</w>\no do</w>\nhome school</w>\nvas c</w>\nleop ards</w>\ndebor ah\nillic it</w>\ncur ran</w>\nas roma</w>\nnau ght</w>\nmar ig\nbrand i</w>\nem p</w>\nðŁĺį ðŁĳĮ</w>\nî Į\nsu spend</w>\nlu z</w>\niniti ation</w>\nsch aft</w>\njensen ackles</w>\ncraw ler</w>\npost doc</w>\ndes ks</w>\ntrail blazer</w>\nden omin\ntri x</w>\nno ise\npo et\n± ï¸ı</w>\ns mug</w>\nvol atile</w>\nproof s</w>\npharmac ist</w>\nsardin ia</w>\nmash able</w>\nkim chi</w>\nco ed</w>\nschal ke</w>\ndoo dled</w>\nc sw</w>\nsh ur\nro x</w>\ndo k</w>\nchris brown</w>\nmathemat ician</w>\nab ound</w>\nang elic</w>\nrock ford</w>\nd ole</w>\nyor kers</w>\nms n</w>\ng man\nxavi er\nbor rowing</w>\nmark ings</w>\nlongh orn</w>\nk ja\ndiver ted</w>\nmm it</w>\neuph oria</w>\nay yy</w>\nte a\npa h\nck i</w>\nun cut</w>\nli ven\nky ung</w>\nfan art\nmer ing</w>\nred ding</w>\namo vie</w>\ngri di\nc thulhu</w>\nschol arly</w>\nju dah</w>\nth bewithyou</w>\neu calyp\nðŁĲ ķ</w>\nhert fordshire</w>\ncour troom</w>\nby u\nauc tioned</w>\nple ase\nmar cia</w>\nê° ĵ\nsucce eded</w>\nel as</w>\narvin d</w>\nt lot</w>\nsaig on</w>\nre tt\nra kesh</w>\nfd ny</w>\nas en\nse bring</w>\ngladi ators</w>\nyou know</w>\nv lad</w>\ngol a</w>\npar ap\nÑĢ Ð¸\nsab cnews</w>\none team</w>\noh l</w>\nsun e</w>\nri j\ncd c\nstar gate</w>\nrun down</w>\nplat o</w>\nph c</w>\nchat ter</w>\nra viol\nmn f</w>\nmand ala</w>\nli et</w>\nà¸ ķ</w>\nmari a\nhun gover</w>\nconsoli dation</w>\nfer rell</w>\ntradition al\nilove art</w>\ngal ap\nðŁı Į\nque zon</w>\nespa Ã±a</w>\nðŁĩ¨ðŁĩ Ń</w>\nho bby\nsteam boat</w>\nmali gn\nguil lau\npro hi\nits me\níĥ Ģ\nin scription</w>\nal z</w>\nmari an\nk ade</w>\nmm on</w>\nadju sting</w>\nne sts</w>\nintern ally</w>\nci r</w>\nvik ram\nmal ala</w>\nk ph</w>\nfel icia</w>\nthe real</w>\ncap tivity</w>\nat is</w>\nmarcor ubio</w>\nkale ido\nche v</w>\nmano j</w>\nle more</w>\ngent ri\nvi ps</w>\ntro pe</w>\n\" âĢĶ</w>\npair ings</w>\nmal nutrition</w>\nfr ay</w>\ndesig nation</w>\nbrun omars</w>\naz e\ntor rential</w>\npan zer</w>\nga il\nunder the\nthe ological</w>\nschizoph re\ndazz le</w>\nfreder ic</w>\nmo par</w>\nad illa</w>\nso ggy</w>\nra un\nmedi ocre</w>\ncolo rec\ni fe\np inst\nblu ef\nÂ ²</w>\nworld water\ngir oud</w>\nclar inet</w>\nad olf</w>\ntar antino</w>\nreceip ts</w>\nassu mp\nðŁĳ Ł</w>\ncoffe es</w>\nâľĬ ðŁı¾</w>\ndu plex</w>\ns of</w>\nr x\nlin o\ntimber wolves</w>\npan dit</w>\nmo tm</w>\ne ga</w>\nay ama</w>\nach s</w>\noutsi der</w>\nll en\nco er\ntil ly</w>\ncheese burger</w>\nma ds</w>\nple dis</w>\nemp ty\nnational parks</w>\naz iz\np mi</w>\njun kies</w>\nf ener\nsq n</w>\nÃ¨ s</w>\ngener ation\ncleop atra</w>\nbhuban es\nmosqu es</w>\nty free</w>\npopp ins</w>\ntw c</w>\nor well</w>\nn age</w>\nka whi</w>\nhol low\ndal ai</w>\nÂ¨Â¨ Â¨Â¨\nou ro\nm health</w>\ngi on</w>\naz o</w>\nvis as</w>\nreneg ade</w>\nre ic\nw sop</w>\nðŁĴļ ðŁĴĽ</w>\ne chel\ntox icity</w>\nmÃ¼ n\nbun k</w>\nstimul ating</w>\nasth our</w>\n\\ '</w>\nep h</w>\nende mic</w>\ncn bc\nshrin king</w>\npeabo dy</w>\nmichel angelo</w>\ncan yon\nwal e\nsu mi</w>\nsi ders</w>\ninu it</w>\n? .</w>\nprofession alism</w>\ndr acing</w>\nplat oon</w>\np ons</w>\nout bound</w>\nmaple leafs</w>\nde sol\ncen cy</w>\na than\nver ma</w>\nru bbing</w>\nok an\nðŁĳ ł</w>\nmull ins</w>\nauthent ic\nÅ į\nalman ac</w>\nga ia</w>\nbb q\non imo</w>\nke h\nty a</w>\ntou ts</w>\ny av\nre posit\n, .</w>\nwi ght\nse eyou\ncal lof\ndone sia</w>\nbar gaining</w>\ngr anth\nsd su</w>\namphi theater</w>\np su\nre watching</w>\nwine tasting</w>\npeak district</w>\ndete cting</w>\nthur man</w>\nphe e</w>\nèª ķ\nu mich\nre r\nsculp ted</w>\ngo le\nname sake</w>\nðŁĶ ģ</w>\nserv icing</w>\nbau gh</w>\npu gh</w>\npen cil\ndar th\nmunch kin</w>\nat orium</w>\nten ers</w>\nsun y</w>\nrolling stones</w>\nmag ing</w>\nstar rer</w>\ni dris</w>\nfe instein</w>\nag ron\nâĺºï¸ı âĺºï¸ı</w>\nsupervis ed</w>\nchamele on</w>\naggre gate</w>\nsucce ssive</w>\nmo gul</w>\ninst yle</w>\npol dark</w>\ncustom e\nohio state</w>\nha ya</w>\nci des</w>\nbroker age</w>\nangel ou</w>\nfifa wwc</w>\nde forestation</w>\nal ton\npam ph\nhu gged</w>\nho bo</w>\nchange able</w>\nku ber\nbur roughs</w>\ndemon etisation</w>\ncape cod</w>\nvers atility</w>\nor ice</w>\nle ila</w>\nwomenin science</w>\ntu a</w>\nhe dges</w>\nembarrass ment</w>\nali fe\nso ars</w>\nni ghter</w>\nhy mn</w>\ngi pp\nchas u\ntech s</w>\nni all\nk illa</w>\nhi ka</w>\ncam els</w>\nvalu e\nÂ ¢</w>\nsc oops</w>\nmah moud</w>\nclu sive</w>\nadri ana</w>\npac o</w>\noz il</w>\nun as</w>\ntransl ations</w>\nwhispe rer</w>\ns bi</w>\nbu xton</w>\nbio tics</w>\nindi ffe\nken ney</w>\nk lar\net ching</w>\nbarra best</w>\ninst ability</w>\nse ine</w>\nvo tel\nblo gged</w>\nwhis key\nmy space</w>\nt ant\nlan dia</w>\ngive back</w>\nillu s</w>\naw ak</w>\nac ab\nf bloggers</w>\ncloud computing</w>\nblat ant</w>\nsyri ans</w>\nband ra</w>\nsty n</w>\nan em\nke ted</w>\nkar thik</w>\nbarun sob\npin ot\ngu bernat\ngay e</w>\narti ste</w>\ni fied</w>\nconven tions</w>\nhu an</w>\ngeni uses</w>\neeee ee</w>\nfol ly</w>\nsomer ville</w>\npride month</w>\nðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸</w>\nchemo therapy</w>\npaul s\nbak ar</w>\nìĦ¸ë¸ Ĳ</w>\ntaiwan ese</w>\nfol lo\nc ss\nre ign\nnn nn</w>\nfla un\ncatastro phe</w>\niti es\nfrag ments</w>\nextre mists</w>\nym oun\ncar men\neze kiel</w>\nconne cting</w>\nse h</w>\nman ta</w>\nremodel ing</w>\nwe ymouth</w>\nat oms</w>\nce m</w>\nne well</w>\nlu mi\nthe open</w>\nmo c\nmili band</w>\ng land</w>\nz shq</w>\nmag gie\nmani acs</w>\nm sp\nad y\ncre ams</w>\nle anne</w>\ne sta\npy g\naf finity</w>\npray er\ndun bar</w>\nligh troom</w>\nac adi\nwyn onna\nroman tic\nstate dept</w>\nsick le</w>\nwh os\nlam o\net our</w>\nfin ity\nshru b</w>\nshar pen\npun dit</w>\ned on</w>\naf ore\nmar s\njeff ery</w>\nter ps</w>\nmedal list</w>\nkath arine</w>\naccu sing</w>\nta z\nroy d</w>\nfrom home</w>\nconfron tation</w>\nalle gh\nðŁĳī ðŁĳī</w>\nrefresh er</w>\nran veer</w>\nnever land</w>\njo jo\nlu crative</w>\nen am\nca ver\npa edi\nman jaro</w>\nflu ids</w>\nthe ssal\noppre ssed</w>\nmu ss\njoh anna</w>\nØ ®\ncn g</w>\nbuil dthe\nsett les</w>\ns ith</w>\nfu ego</w>\ncl amp</w>\nar ag\npay er</w>\nted x</w>\nmand y\ninter stellar</w>\nfr c</w>\nch and</w>\nb cc</w>\nmo lo\nlen til</w>\njohan sson</w>\ngrims by</w>\nnature lovers</w>\nðŁļ¨ ðŁļ¨ðŁļ¨</w>\nshin de</w>\nx in</w>\ninternational dayof\ntransiti onal</w>\nsat a</w>\ncad dy</w>\nwo d</w>\nif u</w>\nha ys</w>\nholl yo\nj ang\nir c</w>\nco im\ngrad able</w>\n\" \"\nðŁį ´\nà¦ ¾</w>\na el\nn yo\nwest lake</w>\ntime out</w>\nsof i\nphenom ena</w>\ncultiv ation</w>\nag no\nun armed</w>\nso t\ncon j\ngen o\nroyal navy</w>\nnutriti on\nfair mont</w>\nti relessly</w>\nsn g</w>\nre ty</w>\nmic a</w>\nlu cent</w>\nslo ane</w>\ndroo l</w>\nriz al</w>\nod ell</w>\ncritici zed</w>\n. '\"</w>\nla ze</w>\ndeser ted</w>\nco der</w>\npra s</w>\nl illian</w>\nitiner ary</w>\ndav y</w>\nan ap\nwhi pping</w>\nhobo ken</w>\nkare ena</w>\nçľ Ł\nvi us</w>\nter n\nnan tucket</w>\nmis understood</w>\nbu laga</w>\nst ant\nchin ook</w>\nz am</w>\nreli es</w>\nd ss</w>\ned mond</w>\nsket chy</w>\nm ell</w>\nfe x\nrec tor</w>\ndist ill\nday dream</w>\nwine maker</w>\nri pley</w>\nbillion aires</w>\nhel ene</w>\nati f</w>\ncul prit</w>\nbertr and</w>\nwou ldnt</w>\nma pped</w>\nv ak</w>\ngla dly</w>\nparliam ent\nkidlit art</w>\nware ness\ngoli ath</w>\nâĨ ĵ</w>\nview point</w>\ntat ted</w>\nfu ls</w>\ndor sey</w>\nang lers</w>\nli ds</w>\nki ya</w>\nbow les</w>\nbe h</w>\nb ite</w>\ncompati bility</w>\nance stral</w>\npro x\nbeha ved</w>\ngubernat orial</w>\nch field</w>\nsab an</w>\nz h</w>\nteen y</w>\nshibu ya</w>\nholli day</w>\npan cy</w>\nâĿĦï¸ı âĿĦï¸ı\nseun gri</w>\n? ,</w>\nðŁĩ¦ ðŁĩ·</w>\nim itation</w>\nimpac tful</w>\nany i</w>\ngene vie\naÃ± os</w>\nbate man</w>\ngli der</w>\naf ar\nra sheed</w>\neffor tless</w>\nsh war</w>\ndach sh\ner un</w>\nat os</w>\nkin i</w>\nch d</w>\nkha ki</w>\nk lin</w>\nfelici dades</w>\nbel o</w>\nas l</w>\nto ppers</w>\nfin ley</w>\nstac ey\nrigor ous</w>\nkar ting</w>\nle ppard</w>\ncar michael</w>\nbe ret</w>\nc se</w>\nak hi\nmer ingue</w>\nab an\nha ke\nger i\ner jee</w>\nre sto</w>\ncomm anders</w>\npr it\nfl or</w>\nad ven\nex termin\nremain der</w>\nå Ĳ\nes g</w>\nmartin o</w>\nlulla by</w>\n| @</w>\nmi gn\nin store</w>\nbig bang\ncor di\ncau ley</w>\nante bellum</w>\ndg ate</w>\ncro ck\nspan dex</w>\nscaf folding</w>\nore os</w>\nê°ĵ ìĦ¸ë¸Ĳ</w>\npom ona</w>\nma uro</w>\nuni versi\nre mi</w>\naf ootball</w>\nt ant</w>\nsm alls</w>\nne h</w>\nworl do\ntropic al\nmor ph</w>\njav elin</w>\ngla r</w>\narqu itec\nreminis cent</w>\ntu bs</w>\nspide y</w>\nmake u\nsyl la\nprogressi ves</w>\nblo t</w>\nshor ten</w>\nkeep in</w>\nch ak</w>\nang st</w>\nsuper food</w>\ndecad ent</w>\nston y\nneuro logical</w>\nar boretum</w>\nann ak\nfe ma</w>\nper cu\ndis respectful</w>\nsmall biz\nlo x</w>\nco om\nc sc\nbs bi\npre valence</w>\nhim ss</w>\nesp an\nmo ga\nfr ampton</w>\nsky map</w>\nmas se\nlevi athan</w>\n( ).</w>\nnoctur nal</w>\ncar ameli\nang or</w>\namne sia</w>\noutsi ders</w>\nshe alth\nrhin o\nant ag\nag io</w>\nðŁĴ° ðŁĴ°\ntake me\nkab addi</w>\nc si\nm sh\ncoch rane</w>\nthessal oni\nsil a</w>\nha us\ndu sting</w>\nobe se</w>\nmack lemore</w>\nmani sh\nlen in</w>\nm dc</w>\ngro wn\nshef field\ns rs</w>\nke le\ncar son\nch um</w>\ndah lia</w>\ncan tore</w>\nopp o</w>\nhow ling</w>\ncyber crime</w>\nsur realism</w>\nsc ran\nfa iz\nthre n</w>\nrac ists</w>\nr out</w>\npk not</w>\nse mana</w>\nsin i\nmc cull\nma chi\nalfon so</w>\ny b\nsar dar</w>\nkend rick\nden g</w>\nreci pro\non f</w>\ndoom sday</w>\nbri bery</w>\ncustom iz\nart is</w>\nc pi</w>\nðŁĻĪ ðŁĻĪ</w>\nsla va</w>\nlet te\nen s\nâĿ¤ï¸ı ðŁĺĺ</w>\ncra yon</w>\nad an</w>\ntr c</w>\nmigr ate</w>\nsimp son\nrow ers</w>\nking sley</w>\nfarmers market</w>\nshee han</w>\nne phe\nbor non\ncar ton</w>\nmic key\nall ure</w>\nu lu\nsli pknot</w>\nheb do</w>\ngui do</w>\ndog celebration</w>\nonline marketing</w>\nacceler ating</w>\n) ..</w>\norigin ated</w>\nmacar oni</w>\ned tech\nout field</w>\nmit z\ndisc us</w>\nadverti ser</w>\nman or\nha shi</w>\ndescri p\ncap ita</w>\nful bright</w>\nrecep tor</w>\ncon n\ncon ey</w>\nspion age</w>\nr attle</w>\npre st\nu li\nblog post</w>\nacker ay</w>\n) âĢ¦</w>\nred velvet</w>\nmat th\ninspir ing\nb sd</w>\nker ri\npo con\nmil lar</w>\nre pur\naccent ure</w>\nä ¹\nram bo</w>\nragnar ok</w>\ndele ting</w>\nbritish museum</w>\npat ory</w>\nleip zig</w>\nflori an</w>\nsci fi\nin ers</w>\nbr ate</w>\nyo y</w>\nmelis sa\nab er</w>\nma sa</w>\npo te</w>\nmosquit oes</w>\ntranspl ant\nr pa</w>\n; ))</w>\nbast ille</w>\nyl an</w>\njoye ux</w>\nmelo dic</w>\ncap tions</w>\natri st</w>\nroch dale</w>\ngott i</w>\npew die\ncuties aturday</w>\nwho is\naqu aculture</w>\ntiv a</w>\nsp el\nhe ss</w>\nha ji</w>\nfred die\nco per\nbrand o</w>\nv k</w>\nphoto book</w>\n* ,</w>\nmy dayin\nmicha ela</w>\nbrune i</w>\nsr ini\nin te</w>\nÄ ±</w>\nde ol</w>\nd fc</w>\nsepar ately</w>\nbun d</w>\nve sts</w>\nto c\nme ck\nrein forced</w>\nconstra ints</w>\ncar roll\nsq ft</w>\nre ver</w>\ncam per\nbird man</w>\nin action</w>\ngener ators</w>\ntriumph ant</w>\npe sts</w>\no vo\ngy pt</w>\nal amo\nsc aled</w>\nsuresh pp\nsd n</w>\nis mo</w>\ngi os</w>\n) @</w>\njustic eleague</w>\nrestaur ant\ngab i</w>\nden gue</w>\nnext gen</w>\nexemp li\nap ex\ninspir ational\ndown side</w>\nkid z</w>\nu pl\net na</w>\nalvar o</w>\nfel dman</w>\nbar net</w>\nm ha</w>\nes ch</w>\nbloo ded</w>\n>>>> >>>>\nkan i</w>\nho fficial</w>\ncasablanc a</w>\nbir ds\nty ga</w>\nsw amp\no day</w>\nnew castle\nnb ap\nci sion</w>\ncho ols</w>\naf lo\nne p</w>\nmon ton</w>\nak b</w>\nsuper model</w>\ndown time</w>\nth os</w>\nsc wx</w>\nsnoo py</w>\nag greg\nyo ke</w>\nnor cal</w>\nwe tt</w>\nprolon ged</w>\nme tast\nbeat er</w>\nf ta</w>\nt lap</w>\ndisgu sted</w>\ny h</w>\nvoice over</w>\nitch y</w>\nip c</w>\nðŁİ ¾\nphe asant</w>\nstra its</w>\nram pant</w>\nj g\nfer til\nassu res</w>\nfortun es</w>\nsal inas</w>\nliz ards</w>\nkett le\ni bs</w>\ncyn thi\nhe g\nmc cr\nsoccer oos</w>\nhappen ings</w>\ncor den</w>\nðŁĺĤ ðŁĳĮ</w>\nt ches</w>\negre t</w>\nwolver ines</w>\ncongratul ated</w>\nho gg</w>\nbott ling</w>\nwr i</w>\nfer ri\nbo sch\naf ire</w>\nog den</w>\ns jo\nj dm</w>\nsv t</w>\ncon tex\ntol lywood</w>\nmin k</w>\nme se</w>\nsuper sonic</w>\nop oulos</w>\nå ¸\nâĶ ģ\nknuck le</w>\ngu ise</w>\ngam i</w>\nchu cky</w>\nz inger</w>\nradi al</w>\ncompla ined</w>\nbo da</w>\nfe tal</w>\ndiscipl ines</w>\ncor ro</w>\nðŁĩ®ðŁĩ ¹\nop ted</w>\nfiltr ation</w>\nad nan</w>\nem cee</w>\nmi stre\ninsom ni\nfer gus</w>\ntra jec\non don\nmed tech</w>\ntanger ine</w>\nmadra s</w>\ngru e\ncab s</w>\nz hu\nsureshpp rabhu</w>\ninsul ated</w>\nday swild</w>\npp m</w>\nband ai</w>\nv day</w>\ns ff</w>\nsqu id\nlo thing</w>\nnot dead</w>\nexpre ssive</w>\ncu ll</w>\nala stair</w>\nx u\nup front</w>\nfish ers</w>\nen es</w>\num d</w>\ndis missal</w>\nsti er</w>\nsel s</w>\nlu st\nre active</w>\nprote ster</w>\neyel ashes</w>\nal im\ngoo de</w>\ngre eng\nda ir</w>\ncom pen\nanush ka\nproto typing</w>\nma pu\nbear ings</w>\nðŁĲ Ł\nfor me</w>\nbsbi botany</w>\ntimo thy\nout skirts</w>\nam bed\nare tha</w>\nwend ell</w>\nstre aks</w>\nni m</w>\nk pk</w>\nsne e\nfit ter</w>\nquo ta</w>\np ate</w>\nwin ning\nðŁį Ń</w>\nsho pping\nma inst\ncul ver</w>\nste vie\nmcfad den</w>\ncounter parts</w>\ngren fell</w>\nfol som</w>\ndor set\ntech crunch</w>\nâ¬ ħï¸ı</w>\ntip tuesday</w>\nus l</w>\ntre x</w>\ngeor gie</w>\nranveer official</w>\nlic ks</w>\nse wn</w>\nk f</w>\n' âĢ¦</w>\njap s</w>\np ate\north op\nfe sta</w>\nstra s</w>\nmon tal\nhammer smith</w>\nfore most</w>\nwido ws</w>\nmad re</w>\nite z</w>\nmito chondri\nlig ans</w>\nz ona</w>\ncari bou</w>\nm ss\nandre i</w>\nweather channel</w>\ngh c</w>\n: ...</w>\nta ft</w>\nawe ather\nal isation</w>\nbru tal\nbliss ful</w>\nnik ola</w>\nmal icious</w>\nq m</w>\nmpg vip</w>\nbro die</w>\nbl itz\napplau d</w>\ndri bb\nv ague</w>\ndog go</w>\ntransl ating</w>\ninterpre ted</w>\nhat ched</w>\nge tyour\nbenefici aries</w>\nspar ring</w>\ncaes ars</w>\naw illiams</w>\nla hat</w>\nbro ke\nti mp\nvirtu es</w>\nrel ying</w>\npie tro</w>\nk tn\nici sts</w>\npab lo\nlou i\na ag\npn pp\ncha st\npul ses</w>\nfini sh\nusair force</w>\ntype writer</w>\nthomp son\ndog s\nut to</w>\nãģ į\nsand al</w>\nnew ly\ndo ge</w>\nz w</w>\nwan kers</w>\nne gr\nmu cha</w>\ndetermin es</w>\nblack fish</w>\nsk unk</w>\nmu ps</w>\ninstru ment\nphy to\ndaysto go</w>\nskin ned</w>\nhai der</w>\ncon ten\nðŁĲ¾ ðŁĲ¾</w>\nwe iler</w>\nundoub tedly</w>\nchair ing</w>\nwall is</w>\nsh ard</w>\nzind abad</w>\nadul t\nabsor ption</w>\npre sto</w>\ndeplo ying</w>\ndrum mond</w>\nbattle front</w>\nseag ulls</w>\nhow dy</w>\njuda ism</w>\ndes de</w>\npart ition</w>\nâľ Ŀ\nno logy</w>\nnational bestfriend\nlesn ar</w>\nfilm fare</w>\nco asts</w>\nchristen sen</w>\nac an\nmb u</w>\nco pped</w>\nru bble</w>\nsw c</w>\nfun nier</w>\nfar ther</w>\nwhere as</w>\nnano technology</w>\nwith stand</w>\npil low\nbow ers</w>\nto pe</w>\nit ly</w>\ncon fit</w>\nma kar\ncomfor ts</w>\nbo sh</w>\ncli pper</w>\nbal la\nsti k</w>\nmil b</w>\nsafe guard</w>\nmusi que</w>\neas port\nya z</w>\npad ded</w>\nbad er</w>\nfore ign\nchop in</w>\narchi ve\no ka\ntran sporting</w>\ntml talk</w>\naj it</w>\nconsequ ence</w>\nsc roo\nff o</w>\ncollabor ated</w>\npug chat</w>\nye mi</w>\njav ed</w>\nau burn\no of</w>\nma w</w>\nsau cer</w>\nmiti gate</w>\ni les</w>\nevangeli st</w>\nter ie</w>\nre cl\nindic tment</w>\ncat a</w>\nbright ness</w>\nmay the</w>\nwhim sical</w>\nun lv</w>\nkey word</w>\ncu min</w>\nmed way</w>\nwest world</w>\ntra w\nim posing</w>\nform ity</w>\ncoul ter</w>\nab z</w>\nny pd\ngrass i</w>\nkel sey\nqld pol</w>\nclock work</w>\nf dr</w>\ndi anne</w>\nâĺ ĳ</w>\nad h</w>\np ann\nbra vely</w>\nae ge\nun lawful</w>\nver di</w>\npocaly pse</w>\nphar o\nkar la</w>\nreson ance</w>\nma stiff</w>\nla dak\nbu u\nma iled</w>\nhi i</w>\ncraw ley</w>\ntor rent</w>\nmach ado</w>\nliby an</w>\neffort lessly</w>\nfal sely</w>\nq vist</w>\nke ef</w>\ncraf thour</w>\ncheri shed</w>\nval kyrie</w>\ns ari\nkal amaz\nbe he\nðŁĮ Ļ\nth im\nro ddy</w>\ncol trane</w>\nbut chers</w>\nach im</w>\nwk end</w>\nawk ward\ncab rera</w>\n:) )))</w>\nfran c</w>\ndecl an</w>\ncon dos</w>\na ja\npandor amusic</w>\nchar ter\nph ill\nmon trose</w>\nhatch back</w>\nhandic app\ngre aves</w>\neucalyp tus</w>\nut most</w>\nt son\nbur ton\nmid wives</w>\nin cur\nðŁĺį #</w>\nmoo d\ncompre ssed</w>\ntom a\nmust ang\nmo g</w>\nas ana</w>\nte stic\nsho tel</w>\nin sol\ncor sair</w>\nnh q</w>\nben ny\nsm ma</w>\nkap ur</w>\nin con\njon as\nener gies</w>\ndon al\nas ad</w>\nse z</w>\nn pa</w>\narchi ved</w>\nstimul ate</w>\ndo p\nhy d</w>\ngri eving</w>\nãĥ Ī\nron a</w>\nwhy te</w>\ntree house</w>\nss ell</w>\nsand ro</w>\nko bo</w>\nther most\nse clu\nhi ya</w>\nge ez</w>\nmam as</w>\nprisc illa</w>\nflav oured</w>\nfas s\nw old</w>\nmaker space</w>\ncospla y\np tv</w>\nhappy valentinesday</w>\nsequo ia</w>\nlove craft</w>\ngu an</w>\nd tm</w>\nci i</w>\nyoko hama</w>\npos thum\nre q</w>\nðŁĶµ âļªï¸ı</w>\ngalat asar\ndol by</w>\nhamp tons</w>\ndisturb ance</w>\nstone henge</w>\nok c\ndisrup ting</w>\nmonth sary</w>\njun gle\nhead lights</w>\ndu stin\nmicro sof\nhappy mothersday</w>\nko ko\ngra zi\nte sto\nna idu</w>\nmal ay</w>\nari al</w>\nru mb\nab oo</w>\nhar man</w>\ntra pe\nspo ils</w>\nje ho\ngo dly</w>\nlock screen</w>\nz un\npi ous</w>\nma gento</w>\nl enders</w>\nprob able</w>\ncorpor al</w>\nm our</w>\naw al\nsu a</w>\ncall me\nton ne</w>\ngo vin\ndevast ation</w>\nx j</w>\ngear box</w>\nwar lock</w>\nper me\nit ate</w>\ngaza underattack</w>\ndu val</w>\nparas ite</w>\nclement e</w>\nle th</w>\ni va</w>\nfro zen\ntho les</w>\nto bin</w>\ncair n</w>\ns ill\nluc kiest</w>\nconver ts</w>\nst ale</w>\npan cra\neuro pale\nwis dom\nsch ur\nì ¶\nverti go</w>\nbi j\nu bc\nnu re\nrighte ousness</w>\nmt c</w>\nfactor y\nver st\nrevers ed</w>\nhur i</w>\nhee chul</w>\nfab er</w>\nar r</w>\nul ous\nven om\nph at</w>\ngreen ery</w>\nbra dy\nÃ ¦\n: ((</w>\nnever giveup</w>\ndi sha</w>\nmo ta</w>\nhealth care\ndun ham</w>\ndex po</w>\nden zel</w>\nbb ins</w>\nf ics</w>\nwh am\nmc g\neli an</w>\nwat a</w>\nstr alia</w>\ntel lu\npe sky</w>\nspin off</w>\nar moured</w>\nre acted</w>\ndo fficial</w>\nte du</w>\nsag ar</w>\nmor ally</w>\nparalle led</w>\nfi os</w>\ndow ner</w>\ndau gh\nre do</w>\nworld cup\ntari q</w>\nbar ne\nglaci ers</w>\noc cult</w>\nbarbar ian</w>\nher mosa</w>\n!! !)</w>\ny ur\ninter nation\np ss</w>\nsit u</w>\np int\namerican air</w>\nsw am</w>\ndopp ler</w>\nðŁĴĻ ðŁĴľ</w>\ncincode mayo</w>\nle van\nhell enic</w>\nmc ne\nju di\nyu h</w>\nst x</w>\nqu are</w>\nðŁĺĤ .</w>\nsti g</w>\ng els</w>\nmot ley</w>\nhard work\neuro zone</w>\ne ad\nç¥ Ń</w>\nseab ir\nci us</w>\nla id\nalpac a</w>\npresu mably</w>\npewdie pie</w>\nboo ted</w>\nam ari\ntam ine</w>\nsol ace</w>\nbar row\nacade mies</w>\nx ian</w>\nom ination</w>\ndun geons</w>\nb ma</w>\nde ity</w>\nai k</w>\nstab il\nhir a</w>\naffection ate</w>\nving ne</w>\nnew port\nãħĭ ãħĭ</w>\nthir ds</w>\nre tains</w>\naroma therapy</w>\nski er</w>\nni ma</w>\ndo pe\ncr inge</w>\ncon domin\nto or\nanim ator</w>\nsar aj\nseas cape</w>\nminim alism</w>\nlake shore</w>\ncalla way</w>\nberg man</w>\nà¤ Ĺ</w>\nwhisp ering</w>\nstupi d\nri ghtful</w>\nrequ is\nir n</w>\nse va</w>\nut pol</w>\ntuber culo\nsqu ish\nde but\ngovern mental</w>\nchrist ine\nall man</w>\nweap on\ns ito</w>\nbur i</w>\nlo lita</w>\nleaf y</w>\nfu ch\ntin ted</w>\nmck en\na hahaha</w>\nðŁĩµðŁĩ ¹</w>\nrepe al\nne gan</w>\nðŁķ Ĭ\ntail gating</w>\ngame insight</w>\nðŁıŁ ï¸ı</w>\nyaku za</w>\nz t</w>\nti ring</w>\npro posing</w>\nbow lers</w>\ntra itors</w>\nak shi</w>\ncler gy</w>\ncit o</w>\nup sets</w>\ntu scal\nsymph onic</w>\nsil ently</w>\nshu ff\nblack well</w>\nðŁĺĤ )</w>\nko be\nrober to\nri dg\ndc u</w>\nmer ino</w>\nft p</w>\neast side</w>\n. ~</w>\nnb l</w>\nmn leg</w>\nts for\nfrau dul\nca pping</w>\nin my\ngymna st</w>\nston es\nss in</w>\ntwe aks</w>\nshag gy</w>\noak land\ndem sin\nsang ria</w>\nmm va</w>\nhen nessy</w>\ndown ton</w>\nri ghtly</w>\nin it</w>\naga ve</w>\nob last</w>\nnorthe ast\nfriend ship\ndal a</w>\ntro phy\nðŁĳ ½\nmag in\nmargar itas</w>\nê ·\nww fc</w>\nfa sh\ndi ke</w>\ncu d\nchar t\nðŁĳ ®\nrefuge es\njop lin</w>\nn cs</w>\nimp y</w>\nfirm ware</w>\npas cu\nflam in\nhealth tech</w>\nbell letstalk</w>\nw aka</w>\nol ls</w>\nla go\nco wan</w>\nbombar dier</w>\nsh ome</w>\nðŁĻ ħ\nmc master</w>\nna ve\nwell s\nu ta\ntell ers</w>\nmis fits</w>\nkap il</w>\nface off</w>\naf firm\na pro\nwhit epaper</w>\nsuper yacht</w>\nspeci mens</w>\nal located</w>\n... ,</w>\n- __\nka w</w>\ndachsh und</w>\ndjo ker\ns work</w>\nqui ere</w>\nor um</w>\nðŁĲ ł</w>\nsom m\nc mt</w>\ningh our</w>\nskin ny\nlgb ti</w>\ngi ggles</w>\nbreak away</w>\nresear ched</w>\npar ity</w>\nmy al\nms l</w>\nre tained</w>\nsi vity</w>\nmake inindia</w>\nsol ves</w>\ndefam ation</w>\nwal tham\nsri racha</w>\nroad way</w>\nconcep tu\nal in\niw ant\nå Ī\ndel ft</w>\ntender loin</w>\nga ins\nfaul ts</w>\nsw ire</w>\nst ellen\npol lo</w>\ndy ne</w>\nbornon thisday</w>\nasdf ghj\nsq l\nsali m</w>\nadvis es</w>\nvo ip</w>\nìĹĳ ìĨ\nun touched</w>\nshe il\nontari o\nuph ill</w>\nso bre</w>\nde shi</w>\nnov ella</w>\ndu tton</w>\ncraw fish</w>\nØ§Ù Ĩ\nma a\ntw ine</w>\nkal in\nðŁĩµðŁĩ Ń</w>\nye ss\nbrook s\nhoo siers</w>\nton ka</w>\numbrel las</w>\nay ers</w>\nate am</w>\nacqu iring</w>\nsu ction</w>\nÃ¤ n\nwi es\ntari ans</w>\nsoci o</w>\nmat tb\nshepher ds</w>\no so\ncharity tuesday</w>\ns logans</w>\nninj as</w>\nal bat\nby te</w>\nbash ir</w>\ntrampol ine</w>\nmydayin la</w>\ni ja</w>\nbas el\nror y\ngol die</w>\nfi rec\nun noticed</w>\npecu liar</w>\nsch a\nker son</w>\nmour ns</w>\nliquid ity</w>\nqu ipment</w>\nhi bs</w>\nar s\naeron au\nslide show</w>\nsla bs</w>\ndelici ousness</w>\nsk itchen</w>\nhta fc</w>\nfull erton</w>\ncre ighton</w>\naer ob\nprocrastin ation</w>\naz ores</w>\nwhite hall</w>\nuss occer</w>\nmedi ation</w>\ndjoker nole</w>\nand me</w>\num en</w>\nnoxi ous</w>\njo ss</w>\nili fe</w>\nanni vers\nsudan ese</w>\net res</w>\nunder mine</w>\nwhole foods</w>\ndiso be\nkor i</w>\nade le\neli z\ncan ti\nal on</w>\ngymna sium</w>\nsarko die</w>\nmeteoro logist</w>\nyl de</w>\nste en\nstamp collecting</w>\nnas al</w>\nlo tt</w>\nfran ks</w>\nex ol</w>\nack i</w>\ngood year</w>\nanimal rights</w>\ny les</w>\nvio lets</w>\nmm es</w>\ns thel\nra pping</w>\ntu scan</w>\nwai ver</w>\ntur ner\neat local</w>\nnorthe asthour</w>\nanim ations</w>\ntom morow</w>\nt sh\nff ame</w>\nbra e\npe tron\nglam our\nbr yn</w>\nd cs</w>\nbal es</w>\nðŁĶ ¶\nbro v\nbre v</w>\nb ons</w>\nphysi que</w>\ncar ne</w>\nx e\nelix ir</w>\nvol ved</w>\nl oma</w>\nìľ ł\næ ĺ\nvan u\nri gs</w>\nbal ance\nva res</w>\nbon ita</w>\nsprink le</w>\nperfec to</w>\ndi on\nle ak\ncalcu tta</w>\no ba\nd ma</w>\nc mon</w>\ntun er</w>\npneu monia</w>\nbo gus</w>\napolo ge\ncl ough</w>\nbor ne\n)) ))\nrevi ved</w>\no varian</w>\nner f</w>\nc legg</w>\nfan fest</w>\ncho u</w>\nreali zes</w>\nmc n\nli gu\nleg alize</w>\njust saying</w>\nfor ster</w>\nbo sni\nk hi</w>\nin dom\nhei del\nen cryp\nsi ss\ned di\nmar bles</w>\nbrisban e\ny ing\npre paid</w>\nwal sall</w>\ncooper ate</w>\norche str\nmar isa</w>\nho wie</w>\nche wy</w>\nbren ner</w>\nandro meda</w>\ne gan</w>\nsto cki\ncav endish</w>\nag an\nban o</w>\nde ir\ngo g</w>\nbl k\nre thinking</w>\nch ig\nrhe u\nsni p</w>\np eng\nsemin ole</w>\nm swx</w>\nan nex\nlyn da</w>\nlewisham ilton</w>\ncu mul\ntb l</w>\ndolph in\nagu ero</w>\n........ ....</w>\npre lude</w>\nat our</w>\ngr anger</w>\ntoo ting</w>\nro tun\ndis ar\nhome items</w>\nda res</w>\n**** ****\nðŁĳ Ĩ\ncompre h\njin x</w>\nas well</w>\niri e</w>\ncircul ating</w>\nðŁĲ ¥</w>\nover board</w>\ncultiv ate</w>\nrhe tt</w>\noriente ering</w>\nca k</w>\nbal kans</w>\ns itt\njas min\nbritney spears</w>\nro tor</w>\nse aling</w>\ng bc</w>\noc ci\nf as</w>\neman cip\ncom er\nwar time</w>\ntic kle</w>\nson ny\npac es</w>\nlog g</w>\nat rix</w>\nsr p</w>\ng win\ndo bbs</w>\nuz be\nthe wanted</w>\ndru sh</w>\nex tru\nm icky</w>\nhonore es</w>\ndar win\nre dux</w>\nmm j</w>\nram i</w>\njalape Ã±o</w>\nio c</w>\ndo ver\nju ju</w>\nwhit ney\ns eng\nen ly</w>\nau ch</w>\narchipel ago</w>\nvigil ant</w>\nman gal\nwil dest</w>\nparano id</w>\nhal i</w>\nbb ly</w>\nsanc tioned</w>\nreal ms</w>\ncon co\nu ddin</w>\nc sk</w>\nplay time</w>\nlibr a</w>\nsav ag\noc tane</w>\nrec tan\nre turn\npar rish</w>\nmor rha\ncc p</w>\nc mu</w>\nsa iled</w>\nse vent\nro sie\npil ing</w>\nhe w</w>\nboar ded</w>\nseg ments</w>\nneph ro\n( .</w>\ncr ats</w>\nbak es</w>\nðŁį ¸\nback tothe\nsibl ing\nkirk land</w>\nke o\ngu wa\nbre ads</w>\nðŁĺľ ðŁĺľ</w>\nt q</w>\nharas sed</w>\nga u</w>\nwil bur</w>\nj isoo</w>\nep er</w>\nli sam\ntri ppin</w>\nsh ino\nru kh\nbeast mode</w>\ncho a</w>\ninst aweather\nrich land</w>\ngar i</w>\nfe z</w>\ncowboy snation</w>\nfur suit</w>\nk run\na en\nsycam ore</w>\nse gun\nent ennial</w>\ndi h</w>\no ax\ndemsin philly</w>\nðŁĻ Ģ</w>\nsn hl</w>\npen nies</w>\npass words</w>\nma kin\nty e</w>\nd eng\nkni gh\njeep life</w>\nhel pline</w>\na for\nzz zz</w>\nste amy</w>\npic ker</w>\niter ate</w>\nhappen ingnow</w>\nki b\nbloom berg\nmartyr dom</w>\nbul ly\nassor tment</w>\na hora</w>\nzo e\nno i\nillu stri\nagar wal</w>\np sc</w>\nelectr onica</w>\nrecruit er</w>\ngar diner</w>\nrad ha</w>\nnaf ta</w>\ndot net</w>\npi ero</w>\ngeor g</w>\nbel s</w>\nðŁĺĤ ðŁĺį</w>\ntuberculo sis</w>\nrun nin</w>\nmor is\nhaul ing</w>\nev oc\nbre thren</w>\nsha ir</w>\nframe works</w>\na stu\nri gid</w>\nku ma\nkre me</w>\njin nah</w>\ninsu rers</w>\nny u\nf ere</w>\nnol lywood</w>\ngood vibes</w>\n- ...</w>\ntoi le\nsk ril\ninstaweather pro</w>\ncze ch\npa vel</w>\none piece</w>\nnike plus</w>\nfi let</w>\ncav ity</w>\nðŁı½ âĢįâĻĤï¸ı</w>\nðŁİ £</w>\ndra stic</w>\ndail ys\nsiam ese</w>\nre bu\noste o\nlar k\nf re</w>\nsh elling</w>\np Ã©\nglad ys</w>\nðŁıĢ ðŁıĢ\ngusta ve</w>\nsubmer ged</w>\ngrand stand</w>\natt u</w>\nwon t\nf pv</w>\nb ley</w>\njon i</w>\nang ames</w>\nweigh ted</w>\nal ou\nà¤ ¶</w>\nles bians</w>\nf j\nanni es</w>\nam l</w>\ndor ia</w>\ndav in\nbe ta\ncan c\nmadewith unity</w>\nha j</w>\nbad lands</w>\nmu l</w>\nblu ec\npa wn</w>\ncov ington</w>\nneuro logy</w>\nhtt weets</w>\ndysle xia</w>\nthel ove</w>\nne at\nfork lift</w>\nautom ate</w>\nune ven</w>\nmonte ss\nhe in</w>\nha g</w>\nrel ics</w>\ncompetiti veness</w>\ncan elo</w>\nmar tens</w>\nbullet proof</w>\nsk ittles</w>\ng ya</w>\npri mo</w>\nameric afirst</w>\nwoo o</w>\nabor tions</w>\n?? !!</w>\nma che\nld ers</w>\nrl ly</w>\npreli ms</w>\ndirec t\ncour se\nswa in</w>\nsuper cell</w>\nec centric</w>\nsting ray</w>\nple ts</w>\nwil cox</w>\nwest in</w>\nokan agan</w>\nkir an\ncar bo\nbomb ings</w>\nra rest</w>\nbo h\ngaw d</w>\ndi gg\nmo ana</w>\nenti rety</w>\nen closed</w>\ndodge ball</w>\npar ton</w>\nmilky way</w>\nat r</w>\nthorough bred</w>\nre ally\nqant as</w>\nepiph any</w>\nine e\naero smith</w>\nspi eth</w>\nar thro\nell ini</w>\ndu bu\nbra ving</w>\nâļ½ âļ½\nre structuring</w>\nillumin ate</w>\nequ ili\nmp i</w>\nash ton\npony tail</w>\nma scots</w>\nflat tering</w>\ncru m\nast a</w>\nà® °</w>\nstranger things</w>\nbar nab\nØ± ÙĬ\nmake shift</w>\ngot cha</w>\nwill am\ncho irs</w>\nkilom etres</w>\ngho sh</w>\neu than\ndol ly\nun ning</w>\nthe ar\ncre we</w>\nw sw</w>\nj ace</w>\ndis miss</w>\nke an\nho ta</w>\nkh at\n~ ></w>\nthir u\nren dez\nhart man</w>\ntee ssi\ncas ca\nz ah</w>\nhydr ange\nfo d</w>\naw p</w>\nmzan si</w>\nthick er</w>\nnago ya</w>\nne va</w>\nsti que</w>\ncast el\ndam ian\nthere by</w>\nji ang\nale k</w>\nmusic islife</w>\nra q</w>\ncalla han</w>\ngou ache</w>\nsomal iland</w>\nsean hannity</w>\nra heem</w>\nlo se\nelo ve\nwhar ton</w>\nrectan gular</w>\nillustr ating</w>\nhar ne\nauti sma\nscra pped</w>\nell and</w>\ndecre e</w>\nnag pur</w>\nki pp\nso re\nn md</w>\nma as\ngun a</w>\ngart ner\nbel li\nthen ight</w>\nje on</w>\ngendere quality</w>\ngi ver</w>\na el</w>\ngar ments</w>\nne u</w>\nmardi gras</w>\nmar sden</w>\nro wer</w>\npollu ted</w>\ncamer aman</w>\nvin od</w>\nbe asley</w>\ncro c</w>\nji u\nhollyo aks</w>\nanesthe sia</w>\nal les</w>\nste ward</w>\nlati mes</w>\nðŁĩºðŁĩ¸ðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸</w>\ntic ian</w>\ngor ia</w>\ncome dic</w>\nðŁ¤Ķ ðŁ¤ĶðŁ¤Ķ</w>\nnai ve</w>\nsli ons</w>\nł Ī\nbur glar</w>\nðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃðŁĺŃ</w>\nyork shi\nse Ã±\nfan boy</w>\nlau rel\ninci dence</w>\npotom ac</w>\nrober ta</w>\npresi den\npr yor</w>\nos bourne</w>\nw ku</w>\nte me\npal ae\nðŁ¥ º\nre boun\nitu de\nred dish</w>\nk hand\ncoloni alism</w>\nnorth carolina</w>\nðĿ Ĵ\nmanne quin</w>\nlady bird</w>\nta sty\nknowledge able</w>\ng shore</w>\nðŁĮ Į</w>\nà® ©</w>\nqu aker</w>\nsalz burg</w>\nmed alists</w>\nchy na</w>\nbridesma id</w>\nma ori</w>\nro p</w>\noutra ged</w>\nin adequate</w>\ntruck ers</w>\nal ana</w>\nìĿ ¼\nri x\noooo oooo</w>\ncommand ments</w>\nlam beth</w>\naa j</w>\neco friendly</w>\nbla z\nmorecam be</w>\nboun cy</w>\nrou x</w>\nrai ded</w>\nmi zed</w>\nsh c</w>\ngaw x</w>\nlabor atories</w>\nru bs</w>\nrest room</w>\nconsult ations</w>\nca jun\nvirgin i\nso ir</w>\nrev ue</w>\nple in</w>\nwag er</w>\nç ¹\nwe do</w>\ngrowing up\n! ðŁĺĬ</w>\nface ted</w>\nsin ners</w>\nho vering</w>\nti ene</w>\nseas oning</w>\nan ja</w>\nleg go</w>\nil is</w>\nfla x</w>\ndev o</w>\nash ram</w>\nmati sse</w>\nker i</w>\ngo wer</w>\nbo tox</w>\nmar shes</w>\nunh cr</w>\nts m</w>\nopti mus</w>\ndun i</w>\nstu ffs</w>\nso k</w>\norder ly</w>\nn bad\nislam ophobia</w>\nraviol i</w>\nfab er\ncre ds</w>\nwon ka</w>\nin fusion</w>\nover weight</w>\ndaily news</w>\nassi mil\nacol lege</w>\nmedalli on</w>\nkili manjaro</w>\nsti ff\ntham es\nsun ken</w>\nth ard</w>\nmy dubai</w>\nhilari ously</w>\nhan nel</w>\nplu mber</w>\nfair view</w>\nsepar ating</w>\nrasc al</w>\nqui en</w>\nnecess ities</w>\nconfeder ation</w>\nll ll</w>\n: ]</w>\nweak nesses</w>\nbron co\nra ffles</w>\nel ot</w>\nãĤ¸ ãĥ\nadvent calendar</w>\nðŁİ ¹</w>\nstra vel</w>\ntun ic</w>\nk su</w>\nim peach</w>\ne spionage</w>\n! -</w>\ndi ment</w>\ncur rant</w>\nbio de\ncommu ting</w>\nby ron\nðŁĴĵ ðŁĴĵ</w>\nshad ed</w>\ntr uro</w>\ncray ons</w>\nar ne</w>\nh sc</w>\nfre aked</w>\ndram ati\nfle ek</w>\nu cd</w>\nmarl borough</w>\n^ -\ncross ings</w>\nmal o</w>\nblack ops</w>\nbin ance</w>\ncho ked</w>\nchen ey</w>\npl o</w>\nge stures</w>\nval edic\nryan air</w>\nrem ington</w>\nv cs</w>\nmc kee</w>\nec z\nbe gs</w>\nnail art</w>\nmayor of\nhappy fathersday</w>\nwar t\npet itions</w>\nn ingly</w>\nclean energy</w>\nbro x</w>\nsl alom</w>\nexist ent</w>\nab ay</w>\nug liest</w>\ntom p\nstom a</w>\nsel by</w>\ngoal scorer</w>\nben ji</w>\noverwhel mingly</w>\nlan s\nsemiconduc tor</w>\nsouth korea</w>\nre scheduled</w>\nsk yl\nen listed</w>\ndow ski</w>\nsi del\nrosen berg</w>\nnas ser</w>\nwhite head</w>\npri us</w>\nhar are</w>\nen n</w>\nry der\ní Ĥ\nmon g</w>\nclas ico</w>\ntranspor ter</w>\npo tty</w>\nis me</w>\n** ***</w>\nvic e\nsk it</w>\node ssa</w>\nl mp</w>\nher n</w>\nraci ally</w>\npin oy\nparagu ay</w>\nobitu ary</w>\ngo es\nbu cha</w>\nside walks</w>\nangu lar\nun constitutional</w>\ntransiti oning</w>\ni bu\ngu ys\nun packing</w>\noooo oo\nblack girl\nber gs</w>\nÂ ¯</w>\nwordof theday</w>\ntrump train</w>\nthunder bolt</w>\nm si\nfasci sts</w>\nà¤ ¬</w>\nt sk</w>\ncollap ses</w>\nraje sh</w>\nloveis love</w>\nmigr ating</w>\nset back</w>\nðŁĺĬ âĿ¤ï¸ı</w>\nt els</w>\nsafety first</w>\nnar rated</w>\njae joong</w>\nun answered</w>\nlique ur</w>\nen nes</w>\ndal go</w>\nbill ings</w>\nsalt water</w>\nmer maids</w>\nlon gs</w>\nclap ham</w>\nwe arec\npic collage</w>\nn ach</w>\nh ace</w>\npois oned</w>\nlo th</w>\nag na</w>\nadel rey</w>\nguar dia</w>\npoli shing</w>\npeace keeping</w>\nd all</w>\np isa</w>\nla pland</w>\nprocess ors</w>\nde andre</w>\nso bs</w>\np once</w>\ndra ins</w>\nc be</w>\nðŁİ¥ :</w>\nspla sh\nmeat ball</w>\nfon tana</w>\nworcester shirehour</w>\nne v</w>\nbri sk</w>\nb int\nac r</w>\npo x</w>\ncay enne</w>\nskril lex</w>\nj fc</w>\nhahahaha hahaha</w>\ngla s</w>\nen gul\ntempor al</w>\noni zed</w>\ncon cre\ncom pose</w>\nvibr ations</w>\nplant ers</w>\nfer t</w>\ncriticalrole fanart</w>\nt bli\nsch allenge</w>\nhuck abee</w>\nmunici pal\niam bic\nradi os</w>\nne vis</w>\ndura bility</w>\nmc cla\nhorse back</w>\ninst itutes</w>\nful fill\natta ch\nate ur</w>\nak an\nresi sting</w>\nillumin ation</w>\nhand le\nhair care</w>\nom ent</w>\nmacle od</w>\nka iser\ng no</w>\nbear down</w>\nly f</w>\ngl omer\ndistor tion</w>\nz m</w>\nsan k</w>\nroo sters</w>\nis now</w>\nas ports</w>\nag en</w>\nwo ken</w>\nst george\nro mper</w>\nmy le\neconom ists</w>\nru to</w>\nt will</w>\nhealth and\nd ito</w>\nws l</w>\ntair p</w>\npra kash\nmic heal</w>\nh ts</w>\nw rights</w>\nkat su</w>\nfioren tina</w>\ndefen seman</w>\nd itch\nvar sity\ntexan scheer</w>\nba ham\nsc anned</w>\nwe il</w>\nseduc tive</w>\nðŁĳį ðŁı½</w>\nfu e</w>\ner win</w>\ndav ison</w>\nter ran\nmoo ds</w>\nwool f</w>\nre source\n@ .</w>\ncu sh\nðŁį °\nregre ssion</w>\ncur led</w>\nla zer</w>\njo anne\nab bott\nmo z</w>\ndown ers</w>\nmm mmmm</w>\nvalent ina</w>\nk hair\ndream t</w>\ncro ok</w>\nche k</w>\nste aming</w>\nnephe ws</w>\ncl eric</w>\nas ober\nindefin itely</w>\nw ye</w>\nus news</w>\njoy ce\nflu shing</w>\nwynonna earp</w>\nron do</w>\nkis s\nhot dog</w>\nbar ns</w>\nsax ophon\nfar ley</w>\ngas p</w>\ndecre asing</w>\nal way</w>\npe x</w>\nl sd</w>\nshi ft\np outine</w>\nra zz\nrescu ing</w>\nni ko</w>\nho ch\ncc l</w>\nu aap</w>\nn ts</w>\nm car\nil wx</w>\nconqu ering</w>\nket tering</w>\nstur dy</w>\ndelay ing</w>\nsto k</w>\nvani shed</w>\ncath ar\nbin gham\nin v</w>\nic hiro</w>\nhe mo\nbudge ting</w>\n[... ]</w>\nbe ss</w>\nsebasti an\nslow ed</w>\nðĿ ĳ\nmusli m\nstun s</w>\nacton climate</w>\nve a</w>\nse ton</w>\nrose tta</w>\noun t\nhard in</w>\nflu id\nca w</w>\nðŁ¥ Ĥ\nyach t\nun l</w>\nsp hy\nprovoc ative</w>\nor ic</w>\nis back</w>\n__ _\nnicol as\ngy an</w>\nloo se\nfl in</w>\nreb ate</w>\n: ::</w>\n! \"@</w>\ncom icon</w>\nshe ff</w>\ndown stream</w>\nchic hester</w>\nbeach life</w>\nmom life</w>\ndiabe te\nar ra</w>\nvan e</w>\nok u</w>\nye o</w>\nman go\ntry out</w>\napp ell\nhe irs</w>\narjun a</w>\ndd u</w>\nna veen</w>\nmovi c</w>\nsoci alists</w>\ns back</w>\ncriteri on</w>\nsoyu z</w>\nk her</w>\nda z</w>\nyol anda</w>\nwine oclock</w>\nre ina</w>\none w</w>\nleon ard\nen dez</w>\nu bs</w>\nsupport local</w>\nfacilit ated</w>\ncarameli zed</w>\nb pa</w>\nvuel ta</w>\nmy tho\nm ami</w>\nspe are</w>\nnbap layoffs</w>\nfe vre</w>\nnick jonas</w>\nim print</w>\nc so</w>\ncraig slist</w>\nla salle</w>\ngi deon</w>\nha doop</w>\ndis regard</w>\nw ud</w>\ntu c</w>\nma gee</w>\nacou stics</w>\nta a</w>\nqui e\npol a</w>\ncr t</w>\ndw yer</w>\ndis sec\ncapit ol\nmen tion\nkn oll</w>\nhe igh\nfin ders</w>\nplac ements</w>\nl se</w>\nindi ra</w>\ngur i</w>\nmadhuri dixit</w>\nkingdom s</w>\niambic pent</w>\ngeor gina</w>\nje ky\nconflic ting</w>\nbay an</w>\naga tha</w>\nuph old</w>\ndr on\nvic ar</w>\nex pat</w>\nperiph eral</w>\npe ssi\nfa f</w>\nance stor</w>\n? ..</w>\nwid get</w>\npun c\ncomm enced</w>\nbeav s</w>\nair waves</w>\nad dis</w>\npo a</w>\nde sses</w>\nco den\nvu e\nru pee</w>\nkar in</w>\nspo ck</w>\nm sy</w>\nà¸ °\npr ick\nfill more</w>\nti fication</w>\nthing sto\nsar de\nem ile</w>\npere ira</w>\nn ad</w>\nbright ening</w>\narre sting</w>\nwo king</w>\nusc g</w>\nsp ill\nraspberry pi</w>\nhu go\nite c</w>\nis ma\ncuff links</w>\noptimi zed</w>\noc c</w>\nmi wx</w>\nen ka</w>\nel ited\nafford able\nsa kh</w>\ncoron ado</w>\nho h</w>\nat ul</w>\nai oli</w>\njim cantore</w>\naccoun ted</w>\nvin ay\nher mit</w>\ngroo ves</w>\nran ch\nr illa\nwe tter</w>\nou tof\nveter in\nni kov</w>\nki an\nfair banks</w>\nram apho\nn iti\nk ko</w>\nru sty\nne stle</w>\ntv xq</w>\nshahe er</w>\nâĿ¤âĿ¤ âĿ¤âĿ¤</w>\npenn ant</w>\ngem stones</w>\ndem debate</w>\nðŁĲ Ĭ</w>\nauton ews</w>\nsupport indiefilm</w>\nmach o</w>\nve x</w>\nnew sat</w>\nne ti\nconce ssions</w>\ncan died</w>\nyof the\nmac au\nden ds</w>\ncricke ters</w>\nsan iti\nmari ano</w>\ngh at</w>\nar toftheday</w>\n¡ ľ\ne gos</w>\ngen oa</w>\nchat bots</w>\nbri er</w>\nal labout\nmon ty\nspi ed</w>\nr tr</w>\ncomfor t\nsni ppets</w>\nreal time\ngra in\nexam ined</w>\nen lightening</w>\ntt u</w>\ngod bless</w>\nrelease the\nsing ular</w>\nki ans</w>\nha ka</w>\nsor ren\ndefe ct</w>\nmar g</w>\nequ ities</w>\nd orian</w>\nsu ka</w>\nper l\naishwar ya</w>\npul lover</w>\npreci sion\nfair way</w>\nne ve</w>\nrive ting</w>\nvill anova</w>\nen com\nak o\npassion ately</w>\neuropale ague</w>\nsiem pre</w>\nx vi</w>\nenligh tened</w>\nc fr</w>\nâĺħâĺħ âĺħâĺħ</w>\nwast eland</w>\nis f</w>\nnew comers</w>\nemergen cy\namphi theatre</w>\n- .</w>\ntext books</w>\nfigur ative</w>\ntre mb\npe sc\nab hin\nab bot</w>\nac acia</w>\nhar ds</w>\npor sche\nkau ai</w>\nel isa</w>\ncar rick</w>\nabo u</w>\nelli er</w>\nbe ch\nneu tron</w>\ngalap agos</w>\nru ben\nin nis\nhow to</w>\nnun s</w>\nsab ine</w>\ni ac</w>\nclin ched</w>\nno tori\nfi ves</w>\ncairn gor\nper i</w>\ngr c</w>\nðŁĴ¯ ðŁĴ¯</w>\nmal m\ntwelf th</w>\ndi ff\nrout ines</w>\nmarty n</w>\nlin den\nsynthesi zer</w>\nnu mber\ngame cube</w>\nfal kirk</w>\nbyz antine</w>\nqueu ing</w>\ngr ill\nscal able</w>\nchar red</w>\nrou ting</w>\nher bali\ngri zz</w>\nðŁĺŃðŁĺŃ ðŁĺŃ\ntol l\ntermin als</w>\nl pc</w>\nab d</w>\nwar mups</w>\nremo vable</w>\nÂ¯ \\\nvi go</w>\npap aya</w>\nne ve\nlov ingly</w>\njo kers</w>\nib les</w>\nsse tt</w>\npoten ti\npel e</w>\ngi gi\nsadi q</w>\nleg acy\nson o</w>\nru pees</w>\nretar ded</w>\nele e</w>\npar r</w>\nfi ance</w>\ney re</w>\nsay ers</w>\npend ants</w>\nmak nae</w>\nal bans</w>\nadap ting</w>\np ff</w>\npu berty</w>\nji u</w>\ning rad</w>\nhypocr ite</w>\ndiplom ats</w>\nphys ical\nrob by</w>\nbon sai</w>\nãģ ·\nf att\ncatal unya</w>\nâľ ĸï¸ı</w>\nro ma\nmore land</w>\nso e\nconver sions</w>\nstl blues</w>\nshol m</w>\ngra ssy</w>\npra do</w>\non u\nassaul ting</w>\n> _\nsett es</w>\ndis graceful</w>\naph ra\nâļ½ï¸ı âļ½ï¸ı</w>\nà¤ ª</w>\nkil n</w>\ngoal tender</w>\ns ru\nphilanthro pist</w>\nb als</w>\nth n\nstu den\nsando val</w>\ndogre scue</w>\neli ons</w>\nasse ssed</w>\nlar go</w>\nhec tares</w>\nsh rm</w>\nsa if</w>\ncle avage</w>\nno ches</w>\nn ene</w>\nfat alities</w>\ncur ing</w>\nclean ser</w>\nal es\np vp</w>\nsouth bank</w>\npizz eria</w>\nmarsh als</w>\nkni fe\nan dover</w>\ntbli ghtning</w>\nsr sly</w>\nou te</w>\ndigi mon</w>\ntimesof india</w>\nprome the\nle bo\nf su\nwit z\nrever e</w>\nman as\nmam ba</w>\nch ica</w>\ngu an\nexhibit or</w>\ncsr racing</w>\nd ere</w>\nxx xxx</w>\ngu sta</w>\nstory time</w>\nston ey</w>\norgan ics</w>\nand u\nse am</w>\nmin ogue</w>\nanushka sharma</w>\nab a\nðŁİĻ ï¸ı</w>\nugand an</w>\nchro matic</w>\nas sn</w>\ndocument aries</w>\nsh t</w>\nru paul</w>\nloy d</w>\nk ats</w>\ne us</w>\nite ch\nme dusa</w>\npan ty\nkel logg</w>\net to</w>\ntalla de\nsha a</w>\ndo st</w>\np ms</w>\nmari ana</w>\nje ster</w>\ncroo ks</w>\nðŁĶ ¬</w>\nmin danao</w>\nind hoven</w>\nðŁ¤ ª\nle xi\ntv n</w>\njan is</w>\nco te\nãģ Ĩ\nser rano</w>\niw m</w>\nðŁĲ ¬</w>\nk ke</w>\ndistribu tors</w>\ncap u\ncounterfe it</w>\ncamp site</w>\nag gie\nðŁĺ ¼</w>\nchhat tisgarh</w>\n~ @</w>\nstate u</w>\nsan di\nprevent able</w>\ncl s</w>\ncan ne\nmm c</w>\ni ver</w>\nsa haran</w>\npal is\nnight out</w>\ndo s\nap ia</w>\nabsc bn\nmanag erial</w>\naro se</w>\nmo wx</w>\naro sa</w>\nðŁĮ ³\nunder dog</w>\nremo ver</w>\nastronom ers</w>\nlent ils</w>\nsu scep\nsmoo ther</w>\npend leton</w>\nfau cet</w>\ne mory</w>\ndal mati\naf cb</w>\ntic us</w>\nexem pt</w>\nen rol\nd heim</w>\nðŁĲ º\nrestric tion</w>\nstar fish</w>\nsto w\nsnor kel\nthunder birds</w>\nshe ad\nhomo sexual</w>\ndy n\nas li</w>\nandre tti</w>\ndou che</w>\ndom o</w>\ntar mac</w>\nslu mber</w>\npr onto</w>\nfirst dayof\nmini ature\nmari achi</w>\nargu s</w>\nrecomm ending</w>\nmobi les</w>\nin ce</w>\nillustri ous</w>\nor c</w>\nadver ts</w>\ngr its</w>\nwea sel</w>\npag oda</w>\nover pass</w>\ngre ys</w>\nmaxi mus</w>\narma gh</w>\nwood land\nsun ni</w>\nðŁĴ ī\në Ŀ\nti one\nsoci o\nho s\nðŁ¤Ĺ ðŁ¤Ĺ</w>\nwind sor\nsubsequ ent</w>\nmunch ies</w>\nid h</w>\nexclu ding</w>\ne mi\ncu th\nz ai\nweek days</w>\nlaw suits</w>\nbarn ard</w>\nØ ª</w>\npe tting</w>\nnet es</w>\nmul ligan</w>\npharmac ists</w>\nra quel</w>\ne ton</w>\ncran ston</w>\ngil ded</w>\ncle ary</w>\nce ph\nra a</w>\npam per</w>\nlombar di</w>\nas in</w>\nsher ry\npro d\nfor te\nari anism</w>\nbuffalob ills</w>\næľ ¬\nðŁĶ¥ #</w>\nuu u\njust ices</w>\ncar ina</w>\nnat in</w>\nmas low</w>\ndro oling</w>\ncog nac</w>\ncam ber\nel ong\nr dr</w>\nin en</w>\nconvic tions</w>\nam use</w>\ntro ck</w>\nharm less</w>\nvisit ation</w>\ngen omic</w>\nbl and\nbeno it</w>\nchim p</w>\ntuscal oosa</w>\ngre asy</w>\nx po</w>\ngil t</w>\nse q</w>\nper mitted</w>\nchristma seve</w>\nbook s\nmu e\nold school\nhuman right\nbe ati\nðŁĶ Ŀ\nsh at</w>\nsculp ting</w>\nh wan</w>\nfern andes</w>\nsci utto</w>\nfu entes</w>\nendeav ors</w>\nmaid stone</w>\nun paralleled</w>\nshou ted</w>\nqueen of\nmer c</w>\nband ic\nve da</w>\nsel angor</w>\npi le\nja han\nintimid ating</w>\ndisapp ears</w>\ncl ich\nza ha</w>\nw urst</w>\nhi v\nfod ils</w>\ncor dless</w>\naaaa aa</w>\nhy dra\nbel inda</w>\ne els</w>\nbu f\nsu staining</w>\nrugby league</w>\nno c</w>\nbrig itte</w>\n( ðŁĵ¸:</w>\ntromb one</w>\nsoo the</w>\nsmo g</w>\nad p</w>\nstab le\ning ley</w>\ndiagno se</w>\nms g\nwe ss</w>\ntic keting</w>\none e</w>\nnsw pol</w>\ne up\nauto psy</w>\nadity anath</w>\nsun down</w>\nriver front</w>\nsi ya</w>\np is</w>\nhier archy</w>\ndur ango</w>\ndi jk</w>\nren shaw</w>\nhe aps</w>\nepide mi\ndavid bowie</w>\ninterne tof\ndd i</w>\nnation ality</w>\nmb ar\nair y</w>\nwin der\nw alia</w>\nelli ott\nc x\nbav arian</w>\npl att\nan tw\nwi wx</w>\nsof ter</w>\nne ha</w>\nh eller</w>\nth and\ndani ela</w>\nbo ast</w>\ndegra dation</w>\nðŁĴ¦ ðŁĴ¦</w>\ntransform ing\nman e\nav ut</w>\nðŁĺĪ ðŁĺĪ</w>\nvo ter\nthe e\nt ate\npu ff\nin door\nsop roud</w>\nboy ce</w>\nboris johnson</w>\nwait in</w>\nimmun ology</w>\nðŁıĨðŁıĨ ðŁıĨ</w>\nâĿ Į\nstreet food</w>\nliz asober\ncavali er</w>\nc elia</w>\nneed le\nmotor ing</w>\ng ato</w>\n, )</w>\nra de\nharve st\nt ms</w>\njar pad</w>\non ey\nair men</w>\nv re\nimpair ment</w>\nabhi shek</w>\nsnoo p\nl ant</w>\nfam ously</w>\nbl ou\ns ze\ng ander</w>\nun touch\ntu f\ndee jay</w>\ncol lateral</w>\nb ind</w>\nðŁļ ©</w>\npin ning</w>\nic n</w>\n' ;</w>\nthe economist</w>\nul tram\nworldwater day</w>\nti poff</w>\nthe i\nfeed ers</w>\ncampa ign\nsc umb\nday weekend</w>\nyo m</w>\npe dic</w>\nh ough</w>\nps v</w>\npl in\non de</w>\nboston marathon</w>\naz zy</w>\n* _*</w>\ncon ley</w>\nthi ago</w>\nhoo o</w>\ngal erie</w>\nluci d</w>\nje tt</w>\ngl itz</w>\nfinal fantasy</w>\nachiev ers</w>\ny ung\nperegr ine</w>\nop hi\ndam es</w>\nbiom ar\nâĺĢï¸ı âĺĢï¸ı\nsk c</w>\nl ics</w>\nfl ank</w>\nar rahman</w>\nho of</w>\nuphol stery</w>\nt ats</w>\nwo z\nÂ ¿\nsnor ing</w>\nra er</w>\nl ju\nap d</w>\npl ating</w>\nkan u</w>\nim ation</w>\nfragr ances</w>\nm ra\nmor ay</w>\nmo tt\nim muni\nhearti es</w>\nbho pal</w>\ntim ers</w>\ng ata</w>\ncolor way</w>\ncar nation</w>\nwin get</w>\nsi ghs</w>\ns ville\noptimi st</w>\nchate au\nolympi ans</w>\nci o\nsinger songwriter</w>\nny o</w>\nfi bers</w>\nbur ch</w>\nag ro</w>\nmil ne</w>\nig bo</w>\ncr amer</w>\nation als</w>\ndan ube</w>\npad ma\nnor mani</w>\nen forced</w>\nbre ck\nboeh ner</w>\nar den\nsur rendered</w>\npros thetic</w>\nom a\nha iled</w>\ncalcul ations</w>\nw fa\nbi b\nfcb live</w>\nfon da</w>\nwest coast</w>\nque sts</w>\nfriend ly\nto wie</w>\nfit ch</w>\nbal ot\nstar dom</w>\nscrat ching</w>\nho sa</w>\nthi ka</w>\no ven\nstro ke\nout post</w>\npharmaceu ticals</w>\nhi kari</w>\nmu y</w>\naf d</w>\nfallon tonight</w>\nsqu at\nor u\ndra ined</w>\nchocol at</w>\në¯ ¼</w>\nwor ths</w>\nri b\nmu j\nthat s\nresiden te\nit el</w>\nboo st\nmi gos</w>\nmul led</w>\nla a</w>\netsy shop</w>\ndon keys</w>\nme k</w>\np tc</w>\nflin ders</w>\ne hs</w>\nro hit\nmu ir\ng ad</w>\ncompos itions</w>\nåĨ Ļ\ncombu stion</w>\ni kh\nyemen i</w>\nwav ed</w>\ngar ci\nak os</w>\noo ds</w>\nfu sion\nse que\ns lan\npl ur\nkic chasu\nshenan do\ns ams</w>\nworl den\nhoro witz</w>\nwith me</w>\nmic robes</w>\nk ki</w>\nðŁĴĶ ðŁĴĶ\nw su\npatch work</w>\nfre er\ny aki</w>\nthe art\nsymboli sm</w>\nmil er</w>\nbt n</w>\nma bu\nside kick</w>\nmotiv ates</w>\nsag itt\nnatur als</w>\nserv iced</w>\nps ori\npa ola</w>\nqu ig\ni badan</w>\ngi ggs</w>\në ³\nsciento logy</w>\nsi oux\nsalam at</w>\nd res</w>\ncad bury</w>\nd hawan</w>\nci Ã³n</w>\n_ '</w>\nswa pping</w>\nmaris ka</w>\njames bond</w>\nexplo sives</w>\nay les\naf er\ns agu\ncen sor</w>\ntom a</w>\njeff erson\nring ed</w>\npar tist</w>\nir responsible</w>\naguil ar</w>\nvac ay</w>\nequ itable</w>\naltrin cham</w>\nac ur\nman ish</w>\nger min\nschoo led</w>\npu tter</w>\ned ad</w>\nnav al\ntoast y</w>\nsol areclipse</w>\ndish u</w>\ncoy ne</w>\nac co</w>\nmu ck\nmar an\nel os</w>\nlen der</w>\ncro ix</w>\nworth less</w>\nha ber\ngun men</w>\nðŁį ĵ\nzen ith</w>\nt enders</w>\nhur st\nhol tz</w>\nitali ans</w>\ncar low</w>\nu cd\ncharacteri stic</w>\nbun g</w>\nav l\nu th</w>\nsa sia</w>\nrs l</w>\nred man</w>\nneighbor ing</w>\ngreen peace</w>\nsti ps</w>\nfollow party</w>\ny gk</w>\nen os</w>\nomni bus</w>\nna issance</w>\nchri ssy\nsecu re\ncall back</w>\nji hoon</w>\nmemor y\nblock er</w>\nl anta</w>\ndaf fodils</w>\nbil t\nffer ty</w>\nfau st</w>\nie c</w>\nnipp les</w>\nso g</w>\nm nd</w>\njagu ar\nbol dly</w>\nab poli</w>\npro position</w>\ngun sense</w>\nevan sville</w>\ncu tters</w>\nwe go\ndou n</w>\ndo x\nstal lions</w>\nka j\nshi ppers</w>\nj awa\nvol o</w>\nle ven\npap rika</w>\nkov ich</w>\njor di</w>\ninduc tees</w>\napp alling</w>\ndial ysis</w>\nallevi ate</w>\nâĢĶ âĢĶ</w>\npie ter</w>\nmid wi\nq tr</w>\njuli ette</w>\ninter mission</w>\nhaw ks\nact ment</w>\none ill</w>\nk lin\nvam ps</w>\nfam ous\ncou ld\nautom obi\nda an</w>\nwest end</w>\nelli p\nnh c</w>\nmel anch\nweb series</w>\nton gue\nsnat ched</w>\nsmy th</w>\ntan gible</w>\nsl i</w>\ne asing</w>\nbar stool\nover lay</w>\nafford ability</w>\nting ed</w>\nter as</w>\nay ush\nwanna one</w>\nrh ine</w>\ndan a\nsh ana</w>\nkend al</w>\nfer tile</w>\nw ir</w>\nrepl eni\nlar vae</w>\nis ro</w>\ncon vos</w>\nab brevi\nu cc\nhun gry\nbur rows</w>\nag er\nnav i</w>\nmat in</w>\ndu per</w>\ncer n</w>\nma don\nķ ï¸ı</w>\né ģ\ntu ps</w>\nhy att\nsh ep</w>\nfriday night\nwis er</w>\nhei di\nhat ton</w>\np gh\nfoun tain\nwrist bands</w>\nahmadi yya</w>\naeri al\nsubscri bed</w>\nso los</w>\nm ace</w>\nsla yed</w>\nfor fe\ndul ce</w>\nchrist mass\narun jaitley</w>\nviol ate</w>\nob stru\nni eces</w>\nw vu\nidy l\nfa ze</w>\npre serves</w>\ninfr inge\npremi ers</w>\ninter vals</w>\nagen cy\n( Â©</w>\nstand alone</w>\ndi mes</w>\nbo er\nparam eters</w>\nge tit\nðŁĺĺðŁĺĺ ðŁĺĺðŁĺĺ</w>\ntu lane</w>\nfor given</w>\nscol l</w>\nmb ps</w>\nsmash bros</w>\nrob bi\nprima vera</w>\nali st\nghost ly</w>\nay at\nye ats</w>\nimpre ssionist</w>\near phones</w>\ncaul field</w>\nwai kiki</w>\nsal ute\nsc ou\nmu ay\nlouis vuitton</w>\nbak hta\nado g</w>\ninven tions</w>\nhur d</w>\nforec lo\nstream line</w>\nthalai var</w>\nch snews</w>\nwill ard</w>\nt sn\neuro parl</w>\ncru sher</w>\nmy sore</w>\ngro wer</w>\nra ping</w>\npat ti\ng den</w>\nsm w</w>\nmuf ti</w>\nkid man</w>\nab r\nsoun ders</w>\nskep tical</w>\nðŁĶ İ</w>\nsun dar\ni me\nfer g</w>\nfeather weight</w>\nar lington\npas qu\nag azine</w>\nwearab le\nnati c</w>\nmccl ure</w>\ninter mitt\nhor de</w>\nsix ties</w>\ncar te</w>\nbha v\nze al\nexperi ential</w>\nador ned</w>\nsom mer</w>\neno te</w>\nhypo thesis</w>\nstin ky</w>\npro to</w>\ndead lines</w>\nvo gel</w>\nmus ings</w>\nmonc ton</w>\ngu ter\nf le</w>\naci on\nvoice of\nta sha</w>\ninhabit ants</w>\ntype face</w>\ns ba</w>\nbts x\nðŁĶ Ĵ</w>\nwor x</w>\nu hc</w>\njo ko\ncell ars</w>\ngor o</w>\ncontinu um</w>\n... &</w>\nweather cee</w>\nha p\nsr k\nris ers</w>\nlonely planet</w>\nun named</w>\nco eur</w>\nðŁį Į</w>\nthe world\nili ke\nfa sten\nami go</w>\nri ba</w>\nramapho sa</w>\nstaf fers</w>\nhad ley</w>\n? ?\"</w>\nfi ore</w>\nsal ut\nhu ff</w>\nbez os</w>\nÑ ĭ\nra der</w>\nkam ala</w>\nin line</w>\nfill ers</w>\num atic</w>\nall in\nshat ter</w>\nre in</w>\no ku\nch ases</w>\nfla gged</w>\nbaby metal</w>\nwater stones</w>\nts b</w>\ncut out</w>\nop hel\naam a\nrockab illy</w>\nsto lic</w>\njet blue</w>\nich ick</w>\ndown ton\nuzbe kistan</w>\npat na</w>\nla q</w>\ngr ange\n) _/\nsubsi di\nsc p</w>\nnewsc ast</w>\nit sa\ntwee tyour\ne mor\narchae ologists</w>\nuni fication</w>\npor ta</w>\nq x</w>\nprotec tors</w>\npro hib\ncharis ma</w>\ncar tag\nren fre\nscul pt</w>\nguwa hati</w>\nde ma</w>\nboo p</w>\nunf pa</w>\ndex ter\nlay la</w>\nalleg es</w>\nsou ps</w>\nnever again</w>\nl ys</w>\ncal c</w>\nbar oness</w>\nvisu alize</w>\nger ber</w>\nabsor bed</w>\ni ers</w>\na han\nfon tein</w>\ndetec tors</w>\nverst appen</w>\nsv c</w>\nformul ated</w>\nac dc</w>\nli x</w>\nin competent</w>\nbh k</w>\nlour des</w>\nwater house</w>\nsnow ed</w>\nappreci ative</w>\nsig ma\nlizasober ano</w>\npen ned</w>\npay check</w>\ntall inn</w>\nfanc afe</w>\npar isi\nav alley</w>\nvi g</w>\nru fc</w>\nhard ship</w>\nso cute</w>\npo ise</w>\nì ¹\nroth schild</w>\nk ly</w>\n???? ????\nl hp</w>\nil ay\nf hs</w>\nam ad\nide als</w>\nbrad bury</w>\nbal boa</w>\nnic ot\nkid nap</w>\nwol ve\ntas manian</w>\nop t\nmatthi as</w>\nãĥ³ ãĤ\nsuper markets</w>\nmylittle pony</w>\nme lee</w>\nli ster</w>\ngr oun\nfe dora</w>\nkind ness\nen en</w>\nbra hms</w>\nÂ¯\\ _(</w>\nros well</w>\nmar lene</w>\nic u\nre formation</w>\nor ail</w>\nhe brides</w>\ndispar ities</w>\nterrac otta</w>\nswal lows</w>\nre id\ninflu encing</w>\nflu or\nden e</w>\ntum our</w>\nblon des</w>\nthunder bird</w>\nsh eva</w>\nmoga dishu</w>\nka b</w>\ncre eps</w>\ni ving</w>\nene ed\nanno y</w>\nâĶ Ģ\nintri gue</w>\nenqu iry</w>\nar aj</w>\ntur al\nkuber netes</w>\nend lessly</w>\ndivi dends</w>\ntor a</w>\nti sh\ncommemor ates</w>\nun ra\ntri b</w>\npon ty\nne m</w>\ndiss ent</w>\nbrew ingco</w>\nðŁĺ ½</w>\nnor mali\nbi of\n( ...</w>\nchil len</w>\nì£ ¼\nmell on</w>\nav is\nmccor mack</w>\ning ra\nenrich ed</w>\ncustome rexperience</w>\ntesto sterone</w>\nsnu g</w>\nsett i</w>\nger onimo</w>\ninqui rer</w>\nbre aches</w>\nvery thing</w>\nbloom ing\nmu ra\ndispo s\nbi de</w>\nde va</w>\nshade sof\nin trin\nsh ev\ns ven</w>\nnayanth ara</w>\ngan esha</w>\nc ws</w>\nber ta</w>\nlabel led</w>\nuse um</w>\nnick named</w>\nma han\ncar uso</w>\nap ur</w>\nðŁĳ Ĩ</w>\nw q\norphan age</w>\ndiscar ded</w>\nmag nu\nlu e</w>\nje on\nbridge port</w>\npac ing</w>\nmercur y\n( ðŁĵ¸</w>\nmarx ist</w>\namphi bious</w>\ntransplant ation</w>\nstit ching</w>\nthen burg</w>\ngradu al</w>\nãĤ Į</w>\nro ft</w>\nma ils</w>\nine c</w>\nguy ana</w>\ndopp elg\nver o\nre write</w>\nhead less</w>\nharb augh</w>\ngate way\ncar sforsale</w>\nsw i</w>\nst is</w>\nmach t</w>\nun de</w>\nsura baya</w>\nstap leton</w>\nnur turing</w>\nmil ner</w>\nya o</w>\nlma oooo</w>\nko sh</w>\narsen al\nk ame\ner ry\nar royo</w>\ndis misses</w>\nru bbed</w>\nrc b</w>\nlew d</w>\ndil u\nand or\nvi de</w>\nur in\ninter sec\nha ar\nal b\nyear swith\napp leton</w>\nÃ© al</w>\nul livan</w>\nsuc cu\nmonter rey</w>\nd mx</w>\nartem is</w>\nron nie\nfarm land</w>\ns football</w>\ngro tto</w>\nanth i</w>\nãĢ ģ</w>\nà® Ł</w>\nvid ya</w>\njimmy fallon</w>\nàµ į</w>\nt zer</w>\ngravit ational</w>\nw thr\nu hhh</w>\ne hr\ntin ker\nti juana</w>\nscran ton</w>\nram charan</w>\nbar clay</w>\nre van</w>\nm si</w>\nka p</w>\nwr s</w>\nwe thenorth</w>\ntor al</w>\nsat u</w>\ngro m</w>\nfac ep\nerick son</w>\nz yn\nse dge</w>\noo dle</w>\nspur sofficial</w>\nds p</w>\nsic ilian</w>\nsoli hull</w>\nrecei vers</w>\nladak h</w>\nhend rick</w>\nther i</w>\npresi ding</w>\nmc guinness</w>\nlitt ers</w>\ngun nar</w>\ngh oul</w>\nwi b</w>\nn tv</w>\nkar o</w>\nfro ck</w>\nb lau\nampli fy</w>\nall is</w>\nul lah</w>\nmemo irs</w>\nkh loe</w>\nintercep tions</w>\npet day</w>\nlo oney</w>\ncon fin\nch ay\npiyush goyal</w>\nfrequ encies</w>\nut z</w>\nevent ual</w>\nwarm ly</w>\nobli vion</w>\nan ka</w>\nta it</w>\nâĿ¤ï¸ı .</w>\ndirector ial</w>\nru lers</w>\nprince s\nmu ck</w>\nstur ridge</w>\ndeu ce</w>\nabri dged</w>\nbagu ette</w>\nun cles</w>\npen du\nmin ding</w>\nforre ster</w>\nav ila</w>\nwall er</w>\nwall street</w>\nment or\nhin o</w>\nhigh way\ncrom well</w>\nfanart friday</w>\nmb i</w>\nco yle</w>\na hi\ntro ve</w>\nspie gel</w>\npay tm</w>\nmcin tosh</w>\njan sen</w>\nnit i</w>\nnash ville\nlen o</w>\nleicester shire</w>\nle gos</w>\ndic t\nðŁĵ ½</w>\nsp ad\nbeverly hills</w>\nsy rah</w>\nsepar ates</w>\nz ain</w>\nun fit</w>\ndra gs</w>\ntan ia</w>\nover flowing</w>\nhri thik</w>\nhaw thorn</w>\nz ani</w>\nmac far\nfi de</w>\nto tem</w>\npe ds</w>\nfundament ally</w>\ncal ico</w>\nsin ner</w>\nj Ã¤\nhil de\nds d</w>\nten ay</w>\nta hit\nmil f</w>\nlie b</w>\ninform ing</w>\nup lift</w>\nra el</w>\nmortg ages</w>\nlec t</w>\nii ii</w>\nguillau me</w>\ncompos ites</w>\nold smobile</w>\nl end\ngar th\ncom mish</w>\nbapti zed</w>\nscorpi ons</w>\nru cker</w>\nbringback our\nalli ance\nthalap athy\ntal i</w>\nsp ans</w>\neri dge</w>\nwither spoon</w>\nlin da\nsky lar</w>\nkor n\nhom s</w>\nÄ į\nsil enced</w>\ncaf fe</w>\nar ty\ndist inguish</w>\nto wed</w>\npun g</w>\njessic a\near nest</w>\nbeau fort</w>\nt ama</w>\nstudy abroad</w>\nsi khs</w>\nnew bie</w>\nnav ratri</w>\nmar ble\nloun ging</w>\nlit ter\ndal it</w>\nso sa</w>\niz es</w>\ngra de\ncom promising</w>\ntr iton</w>\nde tta</w>\nv j\nchau ffe\nspec tral</w>\npowe red\nmontess ori</w>\nartic ulate</w>\nhal ton</w>\nal co</w>\nye y</w>\nmn twins</w>\nacoun ty</w>\nðŁĳı ðŁı¾</w>\nâī Ī</w>\nmad men</w>\nkal a\ngru m\nchi k</w>\nati s\nsu me</w>\nakh tar</w>\njob search</w>\nhigh lighter</w>\nbo ath\nâĦ ¹</w>\ntar zan</w>\nlam bo</w>\nâĽĦ ï¸ı</w>\nox fam</w>\ndump ster</w>\npretz els</w>\nmac os</w>\nincl ined</w>\nfac tual</w>\nadverti sers</w>\nshu i</w>\npu ree</w>\nml pfi\nanti dote</w>\ncap o</w>\npa str\nmerc ado</w>\nbut ton\nar min\nag g</w>\nlol la\nhorri bly</w>\ner rands</w>\nchristop he</w>\ntime snow</w>\nmonday motiv\nli ss\nscand als</w>\nmc i</w>\ndispropor tion\nâĺ İ</w>\nsur pass</w>\nsamar itan</w>\nso tho</w>\npu rest</w>\nfl att\ntrivi atuesday</w>\ndelec table</w>\nleop old</w>\nhermi one</w>\nchou dhary</w>\nen rich</w>\nÂ¡ Â¡</w>\nsubsi diary</w>\nine qualities</w>\nbachel or\nauto immune</w>\nla kota</w>\ni hop</w>\nad jec\nthe simpsons</w>\nsh es\nse k\ngret chen</w>\nup stream</w>\nhin akhan</w>\ncoper nic\nx tina</w>\nlu g</w>\ntough ness</w>\ne ad</w>\ncli pped</w>\nbi us</w>\nsl v</w>\nfah ren\ndee pak</w>\nca u</w>\nx an\nim mature</w>\ndig ni\nbo bs</w>\nshred ding</w>\nbut tery</w>\naccommod ations</w>\nde ven\nchun ks</w>\nsuper league</w>\nsky bet\nkil dare</w>\nje et\në į\nce k</w>\nwrec ks</w>\npro pane</w>\noh l\ntb d</w>\nquo i</w>\ntrum pp\nmi mo\nreluct ant</w>\nver ne</w>\no ic</w>\nma gh\nar nau\nse ver</w>\nli dge</w>\nstair way</w>\nkicchasu deep</w>\nðŁĶ º</w>\nmach ining</w>\naama admi\not i</w>\nc da</w>\nal it\npan y</w>\ninst alls</w>\nac ct</w>\ne shop</w>\ndi em</w>\nhard well</w>\nfulfill ment</w>\nsc afe</w>\nqu ack</w>\nextrac ts</w>\nswee tened</w>\nfi ghton</w>\nf di</w>\nd inger</w>\nwal tham</w>\nus ur\nrefe rees</w>\nseok jin</w>\ngran n</w>\naf rin</w>\nth n</w>\nsch af\npar cels</w>\nbet is</w>\namar ine</w>\nnom an\nkh tar</w>\nmor itz</w>\ncou pling</w>\nbar ons</w>\nðŁĲ ¸\nÃ ¸</w>\nsl p</w>\nsad ler</w>\nx ander</w>\ntri ad</w>\nmc millan</w>\nkh z</w>\ndivi ding</w>\nìĹĳìĨ Į</w>\ndar yl\nzed d</w>\nle ys\npla ques</w>\nflu ori\ntipper ary</w>\non nell</w>\ndi dier</w>\nlang ford</w>\nim c</w>\nthe sun</w>\nbir dies</w>\nar cha\nye ssss</w>\nt di</w>\ndar ia</w>\ncand ace</w>\nal tam\npal aces</w>\nch it</w>\nsant am\nevent ful</w>\nbook of\nad b</w>\nmon stax</w>\ncre ole</w>\nco el\nâĸ ½\nwe aren\nsten nis</w>\nshe ath</w>\nati sm</w>\ngron ingen</w>\nmlpfi m</w>\nle pre\nwrong ly</w>\nrsp ca</w>\nrendez vous</w>\nacknowle dging</w>\npel vic</w>\nsolic itor</w>\nsla ys</w>\nnue stra</w>\nlo d\nis lander</w>\nfer oci\nfashion show</w>\nra ss</w>\ndge on</w>\nadole scents</w>\nsma shes</w>\nnegli gence</w>\ngrate ful\nved ere</w>\nsw oop</w>\ning l\napol ice</w>\nvand alism</w>\ngan n</w>\njo ao</w>\ndi supdates</w>\nzimbab we\nunder age</w>\nradi ance</w>\nw of\nbour geo\npla s\ncr ani\ngh ue</w>\nwrec kem</w>\nwarran ts</w>\nre form\njim mie</w>\nat wood</w>\nys l</w>\nneil himself</w>\nl bj</w>\ni man\ntan to</w>\nnois se\nver bs</w>\nequip o</w>\nal together</w>\nmam ent</w>\nl ice</w>\ndou glass</w>\ntier ney</w>\npri med</w>\nj hal\nfurn itu\nbraz ili\nv ill</w>\npast els</w>\nn ison</w>\nu ff</w>\nparal ysis</w>\njay e</w>\nim po\nðŁĳ ģ</w>\nstrate gically</w>\npakistan is</w>\nwas sup</w>\nsuper bike</w>\nthank u</w>\ntru elove</w>\nsha ikh</w>\nisrael is</w>\nvi p\nto g</w>\nli en</w>\nla ker\ngrey hounds</w>\ncul ars</w>\nbian chi</w>\nbalot elli</w>\nar ran</w>\nloo s</w>\nstr ates</w>\nhe bron</w>\nar vo</w>\nsunder land\nthe al\ntomb stone</w>\nsand man</w>\nc pac</w>\nthanks giving\nlove him</w>\nlat ino\nan in</w>\naka if</w>\nĭ ãĤ\ntor quay</w>\ndi est</w>\nalli anz</w>\nðŁĺ ķ\ngolf club</w>\ncl lr\nwal cott</w>\nsch nau\npromp ted</w>\nnomin ating</w>\nlen nox</w>\nval et</w>\nmon ro\nmay ward\ne ph\nðŁĶ Ķ</w>\ninter oper\nr da</w>\nre flex\narm chair</w>\nê° ķ\nstri pper</w>\npor ti\nph arm</w>\nham za</w>\nni reland</w>\nne ue</w>\nh pv</w>\nport foli\nsun burn</w>\nfris bee</w>\nbe al</w>\nbapti ste</w>\nx h</w>\nty m</w>\npr ati\no vers\nhaz rat</w>\ndeser t\nder ry\nus ky</w>\nem mett</w>\nach arya</w>\n)_/ Â¯</w>\nshu d</w>\nmay a\nham ill\nra im\nnr c</w>\nfitt ings</w>\ncur vy</w>\nðŁı ĩ\nster ling\nà¥ Ģ\nwal kin</w>\nshort cuts</w>\nmil ly</w>\nast ur\nalpha be\npl i</w>\npe z\nmiss you</w>\nrad ford</w>\nml g</w>\nta eyang</w>\nnotjust lakes</w>\ndu mps</w>\nseren dip\nle ur</w>\nra ving</w>\ne ster</w>\nde priv\nabsc bn</w>\nðŁĳĩ ðŁı»\nscar city</w>\no cr\nmean ings</w>\ncap t\nda hl\nfer mentation</w>\nbri oche</w>\nto win</w>\nout lander\nmassi mo</w>\nen cro\nðŁ¥ ³\nbuil t\npo tam\nkir i</w>\ntm w</w>\nmonit ored</w>\nk ites</w>\npeoples vote</w>\ngray son\níģ ¬</w>\nafri ka</w>\na dies</w>\ni vote\ngy ne\ng annon</w>\ndi x\nc mc</w>\nou ral</w>\nfox andfriends</w>\nbel i</w>\nig ne</w>\ngl an</w>\nkatrin akaif</w>\nco politics</w>\nqual itative</w>\np si\nlu cci</w>\ndisc oura\nâĺ ®</w>\nkel li\ngau tam\ncarac as</w>\nreale st</w>\npu la\nin us</w>\nhill top</w>\nmake aw\natten borough</w>\ntw y\nr arity</w>\npeck ham</w>\nma hon\ncorn elius</w>\nclin icians</w>\nton line</w>\ntb i</w>\nparadi se\nka si\ninev it\nfresh ness</w>\ncolling wood</w>\nlun atic</w>\ndefen se\ncop d</w>\nin fra</w>\nwain wright</w>\nsains bury</w>\nalab am\nte ma</w>\nlac o\nchec ker</w>\nreleg ated</w>\ntren t\nstal ks</w>\nhuff post\nbhubanes war</w>\nast ral</w>\nshare your\nprim rose</w>\nhi me</w>\ncat an</w>\nend ment</w>\nen dow\ncle mens</w>\nmal oney</w>\nhil ary\ngame time</w>\nden ise\ncollabor ators</w>\nb wo\nradic als</w>\ngue tta</w>\nici on\nau a</w>\nsnap matic</w>\nsat chel</w>\nexcav ation</w>\nbase man</w>\ns Ã£o</w>\ngn ation</w>\nfel d\nsurve y\nshah zad</w>\nma st\nanirud hofficial</w>\ntru cker</w>\not ago</w>\ngeo graph\nethe l</w>\nâļ¡ï¸ı âļ¡ï¸ı</w>\ns ver\nmu tt</w>\ninternetof things</w>\nancho red</w>\nwh ouse</w>\nbang la</w>\nbal main</w>\nç¹ ĭãģ\nbreak fa\ná Ģ\ntwi ster</w>\nte tris</w>\nca v</w>\nstag s</w>\ng z\nau b</w>\nstor med</w>\nhel ens</w>\nyar mouth</w>\nst asy</w>\ngustav o</w>\nco sc\nvin son</w>\nup p</w>\nsc ricket</w>\nassump tions</w>\napp e</w>\nnu h</w>\nu er</w>\npre mise</w>\nn aga\ne amon\ncoron ary</w>\nna f</w>\nnorth side</w>\nel mer</w>\nro tar\nout lining</w>\nel f\nre surg\nkat elyn</w>\nin can\nhyster ia</w>\nce e\nam bani</w>\npro lly</w>\nĮ ãĤĬãģ\nax es</w>\nsan jose</w>\nrem brandt</w>\nmag pie</w>\neven ly</w>\nscor sese</w>\nqu aint</w>\nf g\nb buk</w>\nindian football</w>\nweare all\nspd wy</w>\npis ces</w>\nec g</w>\nâĺħâĺħâĺħâĺħ âĺħ</w>\npre orders</w>\n: |</w>\nni pple</w>\nsal azar</w>\nju me\njail break</w>\nmin n\nbas sett</w>\nze tta</w>\njef free\nad jun\ntic on</w>\nsan diego\ndrink local</w>\nchol era</w>\nsolic itors</w>\no bo\ncom post\nni an</w>\nwr a</w>\ntre ach\nic ic\nprofession al\ndel ve</w>\nleg ate</w>\nhistor ia</w>\ncro issant</w>\ncon noisse\nnam o\npalli ative</w>\nchem trails</w>\ni ority</w>\nglobal warming</w>\ncomic art</w>\nbehavi oural</w>\nre sted</w>\nli as</w>\ncli mates</w>\nŁ ãģĦ</w>\nrut land</w>\nnou rish</w>\nmenopau se</w>\nhot ties</w>\ndemen ti\nve spa</w>\nmel ville</w>\nanal ogue</w>\ntz man</w>\nstr ung</w>\nim perfect</w>\ngl are</w>\ncir cling</w>\nros berg</w>\nrec o</w>\noc ity\nlo ire</w>\nem be\ndo ssier</w>\nne el</w>\nnan do\nme a\ngal vani\nfin esse</w>\nag p</w>\nberke ley\nasi m</w>\nâĺº âĺº</w>\nquil ted</w>\nish ere</w>\nun matched</w>\npo tion</w>\nfor z\nat re\nselfi es\njuli ana</w>\nðŁļ ¶\nâĸ º\nmel ton</w>\nâłĢâłĢâłĢâłĢ âłĢâłĢâłĢâłĢ\nspin rilla</w>\npur cell</w>\ned p</w>\nat leti</w>\ntony awards</w>\nra ja\npro gno\nmol ten</w>\nstu ff\np ally</w>\nnobel prize</w>\nâĻ» ï¸ı</w>\nspiritu al\nspe ake\nsa sha\nbri um</w>\ntru ss</w>\ncritici ze</w>\nassassinscre ed</w>\nyor uba</w>\nu lo\nfire man</w>\nworkin progress</w>\nef cc</w>\nfla res</w>\nro bot\nhi kers</w>\ncl l\nshado wing</w>\npat sy</w>\nleh man</w>\nc ns</w>\nå ±\nguad al\nà± į</w>\nra pe\nr honda</w>\nparalle ls</w>\nson ja</w>\nlangu age\nland ings</w>\nz ola</w>\ncr amps</w>\nbur ning\napprais al</w>\njol la</w>\nham m</w>\nkas a</w>\ngul ly</w>\nf go</w>\nuly sses</w>\nri be\nðŁĴ Ħ\nib u</w>\neti enne</w>\nbri ar</w>\nfin ely</w>\ncomb ating</w>\ny ql</w>\ngo tham\nwe chat</w>\nto paz</w>\nprimar ies</w>\nl se\niz z</w>\nhel e</w>\ndispon ible</w>\ncy stic</w>\nbel ichick</w>\nth rush</w>\nkansas city</w>\nge om\nsoli di\nred bubble</w>\nby stand\ncambridge shire</w>\npar fait</w>\nast le</w>\now o</w>\nind ore</w>\nstom ping</w>\nsm elly</w>\nðŁ¤ ĸ</w>\nlocom o\nadm itting</w>\nhol me</w>\nclock wise</w>\nmin sk</w>\nmc co\nfor get\nev p</w>\ncam ra</w>\nab ella</w>\nyo tes</w>\nuniversit yof\nmÃ© xico</w>\nsilver ado</w>\nric ket\ncrom bie</w>\npu j\neradic ate</w>\ndeli ght\ny go\nglam ping</w>\nvic a</w>\ndu ggan</w>\ncoun ters</w>\ncf d</w>\nsc our\nreact js</w>\npu ram</w>\nparas ites</w>\nin ki\nvill en\nstel la\nli mbo</w>\nang as</w>\nk cr\nðŁĴļðŁĴļ ðŁĴļ</w>\nvap ori\nmum ford</w>\noli gar\nà ¼\nal oo</w>\nboo ties</w>\nad r</w>\nk elli</w>\ndru mmers</w>\nav ici\nnature uk</w>\nron al\nin trac\nun splash</w>\nle che</w>\ng oma</w>\nel ine\nenvir o</w>\nbi onic</w>\nbu eno</w>\nmi k</w>\nav in\nstar ling</w>\nem powers</w>\ncake day</w>\nboy cot\nðŁĴļ ðŁĴļ</w>\nðŁĮ¸ ðŁĮ¸\nv ach\nm ci\nfractu res</w>\nger i</w>\nsk ing\nexclu ded</w>\nlu ce</w>\nja ve\nig gy\nevi den\naki stan</w>\na wn</w>\nmor als</w>\nluci fer\nha ban\ntumb ling</w>\nsunday motivation</w>\nmo sley</w>\ncaptain america</w>\nsch icago</w>\nthe one</w>\nmo td</w>\nd ts</w>\nðŁĲ ¼</w>\nrep ell\nii i\nlocu st</w>\ngeo spatial</w>\nmer sey</w>\nimmer se</w>\ndesc end</w>\nber nade\nj s\nboat sales</w>\nwin der</w>\ncran k\nsing leton</w>\ncandid acy</w>\nben a</w>\nðŁı» âĢį\nhigh lander</w>\nol t</w>\nk prs</w>\nhealthy lifestyle</w>\nfour teen</w>\nend the\nith aca</w>\ncircul ated</w>\nr ans</w>\npre valent</w>\nha vas\nsplend or</w>\nroo ster\nkalamaz oo</w>\njewell ers</w>\nenne dy</w>\nrou sey</w>\nes y\ncann ons</w>\nornam ental</w>\n// //\nren don</w>\nwin ne\nmol ding</w>\neid mubarak</w>\ncoun tess</w>\nsimon a</w>\nha wa</w>\nfo es</w>\ndu ster</w>\nsb u</w>\npor tray</w>\nmar ries</w>\ngoo dday\ncho co\nachi ever</w>\nðŁĺ¹ ðŁĺ¹\npre neur</w>\ntr amp</w>\ntom i</w>\nn bat\ngarden chat</w>\nfarra khan</w>\never glades</w>\nab ru\nsou sa</w>\nse ce\nhomes wee\nterre strial</w>\nbar it\nsri devi</w>\nol u</w>\nmel inda</w>\nf rick</w>\ncan dies</w>\nðŁĺŃ ðŁĴķ</w>\nqu reshi</w>\nfamily fun</w>\nexor cist</w>\ncardin al\nny t\ndies el\ncu mulus</w>\ncapric orn</w>\nsi ology</w>\nlor na</w>\ndou gie</w>\nan die</w>\nsuper sport</w>\nc fl\nÐ¿ ÑĢÐ¸\nsay ang</w>\npe ek\nà¸ Ĭ</w>\nlo be</w>\nj em\ning lis</w>\ngg led</w>\nc sn</w>\namne sty\nchu ps</w>\nba es</w>\nsau er\nðŁı Ĳ\nmongo lian</w>\nen et</w>\nback street\ndr illed</w>\nacce ssing</w>\nce o\nb se</w>\nai ken</w>\npur r</w>\nwor sen\nwhe res\nwar k\ntesti fying</w>\nbu ri\nbla st\naw g</w>\nðŁĵ ĭ</w>\nre defining</w>\nhear ing\nu ci\nc mp\nbon i</w>\ntail oring</w>\nta ji\nnoc chi</w>\nem t</w>\nstephen king</w>\nne et</w>\ncompla ins</w>\ncampaig ner</w>\nluci ano</w>\ntwili ght\nti esto</w>\npas sports</w>\nflo yd\ncathe dr\nna ked\ncaregi ver</w>\nb coz</w>\nade cides</w>\nku ri\nly k</w>\nbr aries</w>\ndren ched</w>\ndisc lose</w>\nðŁĴª ðŁı½\nle blanc</w>\nje tty</w>\ngar ty</w>\nchip mun\nb su</w>\nrhyth mic</w>\nic z</w>\nfri d</w>\nanne x</w>\name x</w>\nsolo ist</w>\nlanc ers</w>\narro whead</w>\nspeci fication</w>\nsimul ated</w>\nna is\ninver te\nbo wing</w>\nwor ship\nf z</w>\nabo ss</w>\nsha q\nì¶ ķ\nchalleng ers</w>\nan arch\naamaadmi party</w>\nãħĭãħĭ ãħĭ</w>\nsuffol k\nso corro</w>\nsn ell</w>\ncla dding</w>\nabsor bing</w>\nshaw a</w>\nparticip ates</w>\nðŁį Ķ\nbook stores</w>\nbak u\nseap ort</w>\nko jima</w>\ngab y</w>\npack ard</w>\nelectr ician</w>\nlet it\nmo wing</w>\nfa wad\nyoung jae</w>\nhot mail</w>\nmen ing\nu rie</w>\nintim acy</w>\ncon ti\n: \")</w>\nlifeis good</w>\nin ciner\ni dri\ncraz iness</w>\njour nos</w>\nfran chi\nbott len\nal da</w>\nff es</w>\nk x</w>\nsouth we\nair a</w>\nclay ton\nsco ti\nf j</w>\nbri ga\nðŁ¤ĺ ðŁı»\ndemonstr ators</w>\ny z</w>\nstor k</w>\nna q\ncasc ades</w>\ntravel chat</w>\nplat a</w>\npad ma</w>\nfran ci\nat tain</w>\nbat girl</w>\nlom bard</w>\nhoo s</w>\nd dos</w>\nneon atal</w>\ndiscla imer</w>\nr ss\nr ant\ndi sen\ntex aste\nso cal\nfrac tal</w>\ncam ry</w>\nstri fe</w>\nsn acking</w>\nmu h</w>\nsant ander</w>\nmor ons</w>\ngra f\npar ades</w>\nhu ston</w>\ndru pal</w>\nmi ento</w>\nkir stel</w>\nhy de\nvom it</w>\nforti fied</w>\nsphin x</w>\nda v</w>\nbir yani</w>\nwin nings</w>\ns baseball</w>\nmer ged</w>\nlovel ondon</w>\nling ering</w>\ndream big</w>\ncar leton</w>\nliveli hood</w>\ndjan go</w>\nastri d</w>\ngri ds</w>\ndown e</w>\nbru ised</w>\ns ne</w>\nscarec row</w>\nhel ium</w>\nf nc</w>\nbi ggs</w>\nan ter\nrestor ative</w>\nem pires</w>\nab del\nlife style\nkiwan is</w>\ncolloqui um</w>\nme en</w>\npr ick</w>\nanti que\nze b</w>\nmi mic</w>\nedmon ds</w>\nðŁĳĬ ðŁĳĬ</w>\nq ing\npp el</w>\nmc gill\ninterpre ting</w>\nâŀ ķ</w>\nrash ad</w>\ndo ka</w>\nnarr ator</w>\nelectro magnetic</w>\nash by</w>\nsau ra\niran deal</w>\nâģ īï¸ı</w>\nkrish nan</w>\nin di</w>\nff en</w>\nbre a</w>\nos man</w>\nmultin ational</w>\nchi ppe\nrecruit ers</w>\naus biz</w>\np ounding</w>\nre gen\ncur sor</w>\nrefu sal</w>\nmac s</w>\nin ak\nax ial</w>\nwa ifu</w>\nup cycled</w>\nhindu stan</w>\ncas sini</w>\ncarly le</w>\nscrat ches</w>\nre ef\nman atee</w>\neat ery</w>\nðŁĵ ¢\nun condition\nsen pai</w>\non ther\ncomic book</w>\npro sciutto</w>\nde mar</w>\nmi se\nma ge\nfre ec\naye sha</w>\nal der</w>\nandroid games</w>\nley ton</w>\nho ck</w>\ndoor way</w>\nchicagof ire</w>\naali yah</w>\nsw elling</w>\nbi x\n. ðŁĺĤ</w>\nevan kirstel</w>\ntorpe do</w>\nkon stant\ngenevie ve</w>\nma ia</w>\nha user</w>\ndo torg</w>\nhide ous</w>\nfi k</w>\nsp raw\ne ek</w>\nz appa</w>\nwan dered</w>\n' '\nra jan</w>\nbam bi</w>\n( $)</w>\nwid ening</w>\ntool box</w>\nsa ir\nillumin ating</w>\npra ys</w>\nout patient</w>\ni w</w>\nday o</w>\nlo b</w>\nsw fl</w>\nsha des\ngu ms</w>\ncoo kin</w>\nko di\ngri ffin\ntraum ati\nste a</w>\nslaugh tered</w>\ngod bless\nair time</w>\npseu do</w>\nb sa</w>\nhau led</w>\nar if</w>\nà¸Ńà¸ ĩ\nle l</w>\nwc po</w>\nmil iti\nchar ters</w>\nworl da\nru k</w>\nk gs</w>\ndigital india</w>\nis able</w>\nidyl lic</w>\nesp ino\nmarie tta</w>\ne bo</w>\nteam canada</w>\nab our</w>\nwil ton</w>\nrock stars</w>\nfav ored</w>\nphys ic\nwrink le</w>\ntb r</w>\nd print</w>\nball arat</w>\nad al\nz ey\nðŁĺį ðŁĶ¥</w>\ntom lin</w>\nmt r</w>\npal sy</w>\nfener bah\ntight en</w>\nphil ia</w>\nir oning</w>\nry u\nb ant</w>\nenqu ire</w>\nca ir</w>\nabur ger</w>\ntru n</w>\ngreen berg</w>\nchau han</w>\nir ina</w>\nsh ani\ntrend setter</w>\npre tt\nzaf ar</w>\nalo ve\nv ici\npan ic\nno o</w>\nlu stre</w>\ndisrup ted</w>\nbal lis\nson sof\nmon si\ninst ac\nake st</w>\nëĭ ¤\nkw ame</w>\nhorror movies</w>\ndistric t\nsau cy</w>\nmb an</w>\nar mies</w>\nwith drawn</w>\nmed ics</w>\nloft us</w>\ner oom</w>\nbe kind</w>\nar ns</w>\nall on</w>\nun ison</w>\ndavi ds</w>\ncr at</w>\nnicot ine</w>\nso or\nsm x</w>\non co\ncospla ying</w>\nzombi es\nhar ms</w>\ne ger\nro sy</w>\nmoon shine</w>\nfe in\nce tt</w>\ndu brov\nreg ents</w>\nben itez</w>\nðŁĳıðŁı¼ ðŁĳıðŁı¼</w>\nste c</w>\nm alia</w>\nprioriti ze</w>\nic eland\nft se</w>\nv amo\nlam ont</w>\nhomo sexuality</w>\nbre es</w>\nregu i</w>\ncb p</w>\nte j</w>\nsky sports</w>\ndeter gent</w>\nsha sta</w>\nde rel\nconserv ancy</w>\ncolori zed</w>\naccol ades</w>\nvis o</w>\nshow your\nnan ow\nbice ps</w>\nus ability</w>\nbi m\ndailys ketch</w>\npearl jam</w>\nstran gest</w>\nmega deth</w>\nbroad casts</w>\nbar ren</w>\nar ton</w>\nchri ss\nconfi gu\nlu res</w>\nis the\ne ul\nrailway ana</w>\nglobal health</w>\ngi anni</w>\nu aap\ns lum</w>\nconsci ously</w>\nab re</w>\nn up\nbud get\nv ada</w>\ne sch\nreal ness</w>\ner ased</w>\nth unt</w>\nbe z</w>\narmist ice</w>\nðŁĳ ¹</w>\nsh run\no led</w>\ndriver less</w>\nðŁ¤· ðŁı»âĢįâĻĢï¸ı</w>\nwon dr\nsk an\nsal aam</w>\nmother land</w>\nh wang</w>\ngen o</w>\ngang nam</w>\ntw right</w>\nendor sing</w>\nen ic\nador ation</w>\npau sed</w>\npatric ks</w>\ndo cked</w>\nplat te</w>\nff xv</w>\nethnic ity</w>\nauto show</w>\nside show</w>\nafter life</w>\nre located</w>\norphan ed</w>\nfood network</w>\ndare to\nand ra\nsla ps</w>\nv live</w>\nswim s</w>\nre imagined</w>\nmist le\nre vise</w>\nreal ity\nbhar ti</w>\nðŁĴĻ ðŁĴĽ\nlate st\nprou dest</w>\ngra sses</w>\nlan yard</w>\nfresh est</w>\ncarcin oma</w>\nanom aly</w>\nzieg ler</w>\nsum ner</w>\nly rix</w>\ngor g</w>\nis d\nav el\nswild life</w>\nme squ\njohn cena</w>\neuro league</w>\nsab er\nmaster ful</w>\nyar ra</w>\ncogn ition</w>\njacob son</w>\nabo lic</w>\nsir loin</w>\nshuk la</w>\nmoj ito</w>\nsu pere\nst weet</w>\nme z</w>\ne sa\nrudol f</w>\ngur a</w>\nwhere you\ntt m</w>\nwin s\ntrust worthy</w>\nny k</w>\nbra den</w>\ntable top\ngood food</w>\nes on\nbe k\nlingui stic</w>\ngra ys</w>\nch ath\nh cs</w>\nmon i\nde ans</w>\ncu ssions</w>\nch ell</w>\nslo ws</w>\nhe mi</w>\nd app\nshar pie</w>\nboo sters</w>\na os</w>\nstr ack</w>\nse dona</w>\nmu eller\nhard wick</w>\nor nate</w>\nthor a</w>\nsal ud</w>\no twol\nch um\nmi ho</w>\nfor age</w>\nthel ittle\ntear ful</w>\nones elf</w>\nmin dy\nsm g</w>\ngmb h</w>\nemer ald\nðŁĶ´ âļªï¸ı\ntu tti</w>\nrecep tions</w>\nre vising</w>\ni brox</w>\ntope ka</w>\nsal ami</w>\nexpan se</w>\ni books</w>\ndob son</w>\ncli o</w>\nat s\nðŁļ Į</w>\nmo ha\nis ance</w>\nshu tters</w>\nmoo t</w>\njan ine</w>\nmarvel comics</w>\njor dani\npos er</w>\nkenne th\nhy ung\nde ja</w>\nase ball</w>\nspeci ality</w>\neu ston</w>\nclassic car</w>\nhad ith</w>\nðŁĲ ī</w>\nchas ing\niz o</w>\ngros ven\nag lia</w>\nthisdayin history</w>\nt row</w>\nom ile</w>\nhu ar\nby n\nsal ine</w>\ndiv ine\ndemon ic</w>\nty ran\nhan dover</w>\nrevit alization</w>\npa ella</w>\ncryp tic</w>\nse dg\nm end</w>\ndun kirk</w>\nbre d\nwal d\nsport scar</w>\na ard\nwhe aton</w>\nda ener\nk lan</w>\nbr t</w>\nbakhta war\nspi res</w>\nschu bert</w>\nro ti</w>\npoli sh\no se\nag ame</w>\nwonder con</w>\nprote stant</w>\nbo sa</w>\nðŁĺ Ł</w>\nd Ã¼\njoy ride</w>\nger trude</w>\nâĿ Ŀ</w>\ngil a</w>\nv h\ntw a</w>\ntra v</w>\nswal lowed</w>\nstar ve</w>\nla in\nent ren\nrei ki</w>\nsu kh\ncra ic</w>\naz u</w>\nweb page</w>\nkee fe</w>\nhypo the\nhir sch</w>\nhel le</w>\ncamp ground</w>\nw amy</w>\ntra vi\nsha hi</w>\nsan deep</w>\nru i</w>\nhan uman</w>\ndw p</w>\nreposit ory</w>\nno or\nno ff</w>\nun real\np ell</w>\nblack history</w>\nhar vick</w>\nma scar\npay ee</w>\npa sha</w>\ngastron omy</w>\nd ÃŃ\nai g</w>\nrosen thal</w>\nopen day</w>\nembelli shed</w>\nt tip</w>\nsun bathing</w>\ngo pack\nend ome\nï¸ı #</w>\ninvali d</w>\nfinal four</w>\nst fu</w>\nsquish y</w>\nra sta</w>\nmo sch\njam esc\ndie trich</w>\nsel a</w>\nmel b\nel vi\nt dp</w>\nsun i</w>\nsli t</w>\nj ha\nbi za</w>\nspi ked</w>\nl li\nl illard</w>\nvam pi\nsyno psis</w>\naz har</w>\nkendrick lamar</w>\nĮãĤĬãģ ŁãģĦ</w>\nheart less</w>\ncountry file</w>\nair play</w>\narrog ance</w>\npre e</w>\nvirtu oso</w>\nãħłãħł ãħłãħł\nraj u</w>\nle bu\nfor ward\ntu g\ndro s</w>\nmondaymotiv aton</w>\nconcep cion</w>\nthel o\npad i</w>\nlooo ol</w>\nÑĢ Ð¾Ð´\nit ss\neth ical\nend uro</w>\n__ :</w>\nexpend iture</w>\nmon ste\nmas king</w>\nterri ers</w>\nib is</w>\ne mber</w>\ncu mple</w>\npunctu ation</w>\npi per\nir vin</w>\nade e</w>\nyy yyyy</w>\nflash backs</w>\ncel sius</w>\ndon nie\nbo gota</w>\nben evol\nthe script</w>\nshil pa\npro se\nfin dia</w>\nze ke</w>\nne ko</w>\ndo ves</w>\nblues lyrix</w>\nfro sh</w>\nsowe to</w>\nmp lo\nal ai</w>\nsab i</w>\nraq qa</w>\nwf tv</w>\nstro ller</w>\nian somerhalder</w>\nðŁĶ ª\nan on\nmo seley</w>\n! ?!?</w>\nsta king</w>\nmol y</w>\ncar tri\nc sg</w>\nast or</w>\ntransc end\nma er\nde ux</w>\ncow girl</w>\nsas k\npun ter</w>\nma ken\no ates</w>\nlove tt</w>\ngrow ler</w>\nsag in\nv n\nssi ble</w>\nofficeof rg</w>\ny mc\nsab ar\nfaul ty</w>\nap ha</w>\nak on</w>\nðŁĳ «\nsnow don</w>\nae w</w>\nraise the\nðĿ ĵ\ngrue some</w>\nclement ine</w>\nsp ing</w>\nlat a</w>\nworlden viron\nmi mic\ncan aria</w>\nbakhtawar bz</w>\nao a</w>\nfal a\nãĤ Ń\navi va</w>\nyou uuu</w>\nthi gh\nla dders</w>\ngu mbo</w>\ntz ky</w>\nfu zz\nplastic pollution</w>\nest ate\nstrength ened</w>\nk ant</w>\ndr in</w>\ncal vert</w>\ntransform ational</w>\nfrigh tened</w>\nmac lean</w>\nelited angerous</w>\near thy</w>\nt son</w>\nto da</w>\nj nu</w>\n.. ,</w>\nmic hal\ni ban\nje ong\nis real</w>\nsim coe</w>\nexclu sives</w>\nblue bells</w>\nben e</w>\nte u\npil sner</w>\npens ke</w>\nathe ists</w>\nm pu\ncartag ena</w>\nðŁĴĹ ðŁĴĹ\nmillion aires</w>\nkk kk</w>\nit ar</w>\nsubscri ptions</w>\nremo te\nma fi\nhin ton</w>\nw cc\nho k</w>\nds b\nab leton</w>\nsevent y</w>\npun ks</w>\ne indhoven</w>\nsh one</w>\nmcfar lane</w>\nlim popo</w>\nempha si\nÃ ¼</w>\nsin fo</w>\npe tre\nman grove</w>\nch ino\nber tie</w>\nplay lists</w>\npush awards\np af\ndeb bie\nc do</w>\nr ino</w>\nðŁı¾ âĢįâĻĤï¸ı</w>\nfol ke\nbon nar\nth ine</w>\nsl an</w>\nhal ter</w>\nevi e</w>\naw some</w>\nvul tures</w>\nspar ky</w>\nseiz ures</w>\nâľ Ķ\nram one</w>\nine ffe\nal n\npro ctor</w>\nast ra\nthe voice\ngro te\nsci on</w>\ndead line\nam aya</w>\ntain ted</w>\npatter ned</w>\nexce eding</w>\ncross fit\nkay lee</w>\ndrop box</w>\nru shes</w>\ntack led</w>\nmo by</w>\nretro gamer</w>\nn cbd</w>\nbenef itting</w>\nshay kh</w>\nguild hall</w>\ngen try</w>\ndream cast</w>\ndread ed</w>\nbun dled</w>\nth aw</w>\nrevol ving</w>\nn pt</w>\nkylie jenner</w>\nimagin ative</w>\nron i</w>\nover came</w>\nfamily time</w>\nds burg</w>\ncar naval</w>\nrelation ship\nrecogni zable</w>\ncor oner</w>\nho le\nfan fic</w>\nemir ates\nbur ritos</w>\nanaly se</w>\nthin ner</w>\nne es</w>\ngalli poli</w>\nbl r</w>\ncat woman</w>\n-- >></w>\nau lt\nada ily</w>\nnau ghty\nili o</w>\nsolit aire</w>\nmtv br\njocel yn</w>\narun ach\nrep ent\nsouth gate</w>\nhy acin\nessenti al\nfent on</w>\nand um</w>\nit or\ngo pal</w>\nsl inger</w>\npo sei\naw il\nwi elding</w>\nra ila</w>\neli as\na sto\nÃ ¤</w>\ntend ency</w>\nstr ata</w>\nker t</w>\n< -</w>\nim acele\nda es\nsti mulus</w>\nhan ley</w>\nfit nes\nec stasy</w>\nlim ous\nha iling</w>\nðŁ¤ Ń</w>\nchis wick</w>\ntar ies</w>\nsla v</w>\npul i</w>\nmoderni zation</w>\nblack mail</w>\nb ingham</w>\nh fx\n+ +\nðŁĩ®ðŁĩ ³\nni v</w>\nwe a</w>\nprofess or\nk off</w>\nbol ster</w>\nsu ave</w>\nsequ ences</w>\npepper oni</w>\nnot te</w>\ndre n</w>\nãģ¨ ç¹ĭãģ\nhs v</w>\no ga</w>\nap tly</w>\nz ad\nexcel si\nrin ka</w>\nmol dova</w>\nmin n</w>\nma bel</w>\nconferen cing</w>\nbas ing\nof er\nob si\nhamill himself</w>\ncare less</w>\nbrief ed</w>\ninhe rent</w>\npar ish\ndub nation</w>\ntown sville</w>\nsar awak</w>\ngee ky</w>\ndoncaster isgreat</w>\nwas abi</w>\ngu p</w>\nphen o\ndra inthe\ncarrie underwood</w>\nble eds</w>\nbbc world</w>\nane w</w>\nalta f</w>\ndul wich</w>\nani ston</w>\nw ti</w>\nsumat ra</w>\ngra fton</w>\nbl n</w>\nme ster</w>\nbode ga</w>\nre go</w>\nes q</w>\nan jo</w>\nsump tuous</w>\nmai sie</w>\nï¿ ½\nwil t</w>\njak ob</w>\nel vis\nse pul\nmu ster</w>\nair pollution</w>\npresident e</w>\nhappy monday</w>\nexten sively</w>\nfl ondon</w>\nt ls</w>\nplay ing\npe ed</w>\ndin ho</w>\nvar dy</w>\npi ka</w>\nn iro</w>\nau cus</w>\nðŁį ¦\nnu ll</w>\nel ondon</w>\njuvent us\nimag ines</w>\ndis ab\nlit o</w>\nd ura</w>\nwork places</w>\npromo te\nmc caf\nwood work</w>\nwaw x</w>\nà® ª</w>\ntt ino</w>\nshar i</w>\nsem per\nbetter together</w>\nðŁĳĬ ðŁı»\nze bra\npon dering</w>\nen chil\nho m</w>\ncosm ic\ntan z\nmo cked</w>\nec cc</w>\nath ed</w>\nabo lish</w>\nprop eller</w>\nparis agreement</w>\nassemb lies</w>\nindu stry\nfraudul ent</w>\npe sa</w>\nchang min</w>\nax x\nðŁĴ µ\nirr ational</w>\ncu sa</w>\nramad han</w>\nocta via</w>\non elove</w>\njac ki\nbar ak\ntaxi der\nseri ous\nnathan fillion</w>\nmc en\nch k</w>\npo part</w>\ngrav ity\ncopp ola</w>\nreading fc</w>\nillu sions</w>\nj ig</w>\nww x</w>\nre sh</w>\nex porting</w>\nbuzz ard</w>\nâĻ ¤</w>\np cm</w>\nlan apar\nko s\narom as</w>\nantal ya</w>\nww dc</w>\nven a</w>\nphil a</w>\nball in\nðŁĳ Ħ</w>\nquin ta</w>\nma o\nf ery</w>\neigh ty</w>\nsentim ents</w>\nsafe guarding</w>\nr wa</w>\npu ffs</w>\nluc ille</w>\nde cath\nsl u</w>\nnu gent</w>\nde ter</w>\nbraz il\nze iss</w>\nsuper bowl\nsubsi dy</w>\nalter n\nhi dalgo</w>\nenz ymes</w>\nä ½\ntag ne</w>\nhair dresser</w>\nadri en</w>\nwalk out</w>\noppo ses</w>\ncan tina</w>\nbed side</w>\naf an\nðŁĶ Ĺ\nprophe tic</w>\ndan es</w>\nun successful</w>\nsuper charged</w>\npk k</w>\nexem ption</w>\nhart le\nsecu lar\ncli pping</w>\nbr s</w>\nunited way\nc net</w>\npat chy</w>\nha gan</w>\ne en\nâļ ľ\nvar a</w>\nsym pathi\nnever trump</w>\naffir mation</w>\nom f</w>\nny cfc</w>\nma ja</w>\nsur ro\nkeer th\nup scale</w>\nsandal wood</w>\nmon archy</w>\nkno bs</w>\nå ĭ\npo tholes</w>\nhunger games</w>\nter races</w>\nna sir</w>\ncoun sell\nwelcome to\nwa q\nse aman</w>\nm ita</w>\nstun ningly</w>\non theroad</w>\nin ability</w>\n) !!</w>\nbon go</w>\nant v</w>\nsp ut\nworldenviron mentday</w>\nresu sc\ny td</w>\nfi m</w>\neun hyuk</w>\nsa chin\nrose anne</w>\ncler mont</w>\nape c</w>\nam ina</w>\nv ening</w>\nn antes</w>\nal most\nsin us</w>\nex as</w>\nty l</w>\nti en</w>\nple ad</w>\nlanc s</w>\nbur naby</w>\nre k\njo om\nobserv ers</w>\ndisco graphy</w>\ncl g</w>\nâĻ ¦</w>\nsn ack\nr ti</w>\no ily</w>\ncrystal li\nbru te</w>\nweb development</w>\ntopp ings</w>\nla f\nan is</w>\nad der</w>\nreli ving</w>\ncar lin</w>\nbattle of\nwe g</w>\nsyri an\npon t\nn dc</w>\nlagh ate\nyu ma</w>\nsp p</w>\np iti\nro bbing</w>\nmart ing\nrey kja\nraj put</w>\nnc ds</w>\nkie wicz</w>\nâĢ¢ âĢ¢</w>\nvam pire\nsubstan tially</w>\nopio ids</w>\nnepal i</w>\nk line</w>\nar oo</w>\nunder stand\nlit t</w>\nu it</w>\nthro mbo\nsar ies</w>\nqu ot</w>\nb alling</w>\nt tr\ns gh</w>\nphilip p</w>\nbr ant</w>\nac l\nm ello</w>\nwhit taker</w>\n. ;</w>\ndefi ant</w>\nb gc</w>\nrepl ying</w>\nmir ren</w>\nmetamor pho\nsch wab</w>\nbul ge</w>\nutili zed</w>\npick ering</w>\npar don\nd sa</w>\nà¸ Ī\ndoo ley</w>\ncumul ative</w>\nÐ »\nur gency</w>\ne mir</w>\n+ /-</w>\n¦ Ī</w>\not as</w>\nâı ³</w>\nstation ed</w>\ngrape vine</w>\nar ac\nkaran johar</w>\nf ancy\nsau l\ncoo gs</w>\nlgbt q\nØ§Ù ħ\njav i</w>\nu mmer</w>\npl l\nden is\ndai pur</w>\npu ffin</w>\nlewi sham</w>\nfand om\nco pe\nves matter</w>\ns ve\nhel pless</w>\ndeo dor\nostr ich</w>\nkaz an</w>\nfriday the</w>\ncon dor</w>\nv x</w>\nsophom ores</w>\nrob les</w>\ncu tt</w>\ncli mbers</w>\në¦ ¬\nsle g</w>\nsn f</w>\nmac ys</w>\nhydr ating</w>\ngrou pe</w>\npo yn\nmou lin</w>\nhg tv</w>\nlmfa ooo</w>\nsulph ur</w>\nasdfghj kl</w>\nannab elle</w>\nhump back</w>\nbra ved</w>\nviswas am</w>\nmulti purpose</w>\nhu midi\nescor ted</w>\nbarb ican</w>\nf ad</w>\ncor sa</w>\nðŁ¤ «</w>\npi ppa</w>\nhere to\ncan y\nser gi\nor cas</w>\no vie\ned ou\ns any\nglob alization</w>\nman cini</w>\nfood truck</w>\nf is</w>\ndefi brill\nsch re\nsma fia</w>\nlove wins</w>\nla ut\nk aka</w>\nhol lande</w>\ngame on</w>\nresurg ence</w>\nout side\nolympi ad</w>\nint an\nabstr action</w>\nrapi d\npal om\ncal le\njas min</w>\nattack ers</w>\nswag g</w>\nmit ra</w>\nky lo</w>\nà® ²</w>\nher mitage</w>\ngor do</w>\ne ira</w>\nso sfam</w>\nroll out</w>\nexc ite</w>\nsy nod</w>\nmer rill</w>\nc als</w>\nas sa</w>\nliveli hoods</w>\nju ve\nthe black\ngopack go</w>\nant lers</w>\nalban ian</w>\nwool ly</w>\nqu iche</w>\npuri fication</w>\nare th</w>\nsmar thome</w>\nne k</w>\nall blacks</w>\nmex icans</w>\nis m\nger ms</w>\ncomple xion</w>\nmar ck</w>\nu shi</w>\nðŁĲ Ĳ\nchar l\nca stic</w>\ntill erson</w>\ngiuli ani</w>\nbiode gradable</w>\nmal bec</w>\nbo is\nju bil\nim es</w>\nr ame</w>\ngene tic\nesp nu</w>\nch ley</w>\nso ho\ngo pher\ng sc</w>\nbuu ren</w>\ncu be\nbridesma ids</w>\nwebin ars</w>\nto e\nmani pur</w>\nviol ently</w>\nnotic ias</w>\nex changing</w>\nchi ev\nreplac eable</w>\nmuay thai</w>\nbu ss</w>\nsp il\ninstal ment</w>\ndiv ya</w>\ncait lin\no lim\nfil tering</w>\nwhirl wind</w>\nsta red</w>\nprior it\npr am\npompe ii</w>\nmono logue</w>\nk ite\nbu ka</w>\nâĢ¦ ..</w>\nvac cine\nbre ro</w>\nwoz ni\nsol ent</w>\nre ferr\nmy rt\ngridi ron</w>\ngalatasar ay</w>\nfro ze</w>\nclare mont</w>\nðŁ¥ ĥ</w>\nvictori as\nssel dorf</w>\npa stures</w>\nnet neutrality</w>\nch or</w>\nðŁĳ ģ\nà² ¿</w>\nwe ho</w>\nsymp tom</w>\njo sel\nin ous</w>\ndragon con</w>\npower ball</w>\np te</w>\nfour thofjuly</w>\nec la\near buds</w>\nwhere abouts</w>\nsalt life</w>\ndepriv ation</w>\nch ter</w>\nwi ggle</w>\nsyste m\nps st</w>\nch az\nd any</w>\nri mo</w>\noax aca</w>\nlanapar rilla</w>\nbarcel on\nmelanch oly</w>\nway back\nho tro\nn si\nl illy\nkur o</w>\nja han</w>\nintellec t</w>\nboard game</w>\nðŁı Ĭ</w>\nsneak peek</w>\nk prc</w>\njail s</w>\ncand el\nzan zi\nmor timer</w>\nstar ch</w>\nra gs</w>\np fa</w>\nlong live\nk art\ngir ona</w>\ncro cker</w>\nchristop h</w>\nprecau tions</w>\nwar ship</w>\nper m</w>\nparen t\nvan gogh</w>\ngif ford</w>\nallegh eny</w>\nra yn\nut m</w>\nsten cil</w>\nrec alling</w>\npen ney</w>\nz azzle</w>\nìĥ Ŀ\nhin ds</w>\naren as</w>\nnu ev\nlaw ler</w>\ngu in</w>\ndo this</w>\nðŁĳ ķ</w>\nì¶ķ íķĺ\nwe g\nti b\nri din</w>\ncomplex es</w>\nturbul ent</w>\npe sos</w>\nde marcus</w>\nvall arta</w>\nsam sun\nkis ses\nhein rich</w>\ndeport es</w>\nwil ms\nur d</w>\nthen ext\ninki gayo</w>\nho wi\nfir sts</w>\ncarri age\nclean liness</w>\nmas war\nis ch</w>\nax el\nsi zzle</w>\nroad house</w>\nfr ans</w>\nent ourage</w>\nco bble\nboo th\nbenedic t\ntal on</w>\nfc u</w>\nyear ofthe\nray on</w>\nraider nation</w>\nfo yle</w>\nko val\npi anos</w>\nl pg</w>\nbur mese</w>\nman ure</w>\ngeo caching</w>\ncosc ino</w>\nb np</w>\nfer ra\nstro phy</w>\nmar ais</w>\nce es</w>\nlegen dof\nkat niss</w>\neno ch</w>\nav ed</w>\nyou know\nd prk</w>\nðŁĺ¢ ðŁĺ¢</w>\nsp un\npro st</w>\nsor rows</w>\ncent red</w>\nke a</w>\ngal icia</w>\n? ðŁ¤Ķ</w>\nÑĢÐ¾Ð´ Ð°</w>\nbou chard</w>\nðŁĴĻ ðŁĴľ\nyu i</w>\nseed lings</w>\njon ah\nreco vers</w>\nny rd</w>\nboard room</w>\nsu ma</w>\nmy japs</w>\ntun g\nsha i</w>\nir gc</w>\neli o</w>\nwag ons</w>\nka shi\npolic emen</w>\njohn nie</w>\nale coscino</w>\nshop ify</w>\ndot ted</w>\nde tri\nva w</w>\nto fficial</w>\nin your\nchal mers</w>\ntrac ed</w>\nno vi\nby es</w>\nari el\nnipp on</w>\nla pel</w>\ngri ez\nb gs</w>\nfool ing</w>\nd ita</w>\nvijay sethu\nnm wx</w>\nas ot</w>\nkr anti</w>\nhel m\nve di</w>\nsic kest</w>\nmo chi</w>\nk abo\nshru bs</w>\nhe red\nb sp</w>\nsq m</w>\nham r</w>\ndul kar</w>\nanth a</w>\nnr f</w>\navoid ance</w>\nat en</w>\npubli x</w>\nbe arers</w>\nnas i</w>\nha p</w>\nh ells</w>\nðŁĸ ¥</w>\nà¸ ·</w>\nthelast jedi</w>\noh wx</w>\nðŁį «\nwa hoo</w>\nthere se</w>\nrec aps</w>\nss nhq</w>\nbird photography</w>\nv ay\npet ti\npau lo\nbel vedere</w>\n( *\ngr l</w>\ndu vet</w>\nc pec</w>\nsa it\npor sch\nmeas urable</w>\navi ators</w>\nfre mantle</w>\nbre en</w>\non om\nme and\nlife saving</w>\neu ref</w>\nen don</w>\nembar as\naira sia</w>\nel is</w>\ndun kin\nstar magic\ns ill</w>\nporto bello</w>\nki efer</w>\nex e</w>\nmu ted</w>\nãģ ¦\nwe thepeople</w>\nlogi a</w>\nliber al\ntheforce awakens</w>\nmin ed</w>\nhaun ts</w>\nfreck les</w>\ncare taker</w>\ns india</w>\nâķ Ĳ\ndev lin</w>\nlist on</w>\ndirection er</w>\noh n</w>\nfi garo</w>\nem manuel\ndu bois</w>\ncl ones</w>\nbru ise</w>\nðŁİĪ ðŁİī</w>\ndisin fe\nder matology</w>\nas r</w>\ns watch</w>\ndis comfort</w>\ntam anna\npi day</w>\nmack en\nk atic</w>\ndelu sional</w>\nshaw nee</w>\ngu d\nal bino</w>\np ali\ndin gh\ncucu mbers</w>\ncoffe y</w>\nanticip ating</w>\ntreas ured</w>\nweb summit</w>\nshel tered</w>\nsav or</w>\npedago gy</w>\nm gs</w>\nsh ma</w>\ns bu\nden ali</w>\ncam pos</w>\nbubble gum</w>\no ir\nle aps</w>\ny ler</w>\nr one\nsansk rit</w>\nmin t\nmeat less\nfuturi st</w>\ndu de\na vel</w>\nprote sted</w>\nsqu ire</w>\nz aki</w>\nsz n</w>\nhar court</w>\ncycl one\nbour dain</w>\ngather ings</w>\nd ant\nadvent urer</w>\nparag on</w>\nalt man</w>\ndd ing\nban erjee</w>\nsnorkel ing</w>\nmother well</w>\nmis sy\nen der\nglo ws</w>\nki wis</w>\nchick pea</w>\npor o\ne fron</w>\napp t</w>\nu y</w>\nspeci fied</w>\ngab by\ne strada</w>\ncom bos</w>\nbour bon\nvin i</w>\nvar un\nsteph ani\nkey words</w>\ncar vings</w>\namit abh</w>\nwr ought</w>\ntw al\nre els</w>\nclu bbing</w>\nubi quit\ncri t</w>\nambed kar</w>\næ Ļ\nprun ing</w>\nvaccin ated</w>\nboe ing\ns ks</w>\nlo ona</w>\nhypno sis</w>\nedel man</w>\npho l</w>\nhe w\ncolo sse\nmckin sey</w>\nu on\nto te\nsacrific ing</w>\nox i</w>\nn ang\ne mu\nÐ¿ÑĢÐ¸ ÑĢÐ¾Ð´Ð°</w>\nm th</w>\nkers wednesday</w>\nargu ed</w>\ntimel apse</w>\nris king</w>\nregul ating</w>\nni gh</w>\nlikeli hood</w>\ncu bic\nau ction\nrein for\npi stor\nno ses</w>\nye l</w>\nsnu ggles</w>\npe i\njean ette</w>\nta ku</w>\nri th\nguy z</w>\nà¸ ŀ</w>\ny te</w>\nver ted</w>\npay soff</w>\njau regui</w>\nhoo ligans</w>\nprocedu ral</w>\nmi b</w>\nhar dy\nel eng\nchec kers</w>\nall ine</w>\nthe met</w>\nprou dof\nkeerth yofficial</w>\ncollabor ator</w>\nni u</w>\ninfl icted</w>\nadv ani</w>\nre twee\nmemor iam</w>\nf icial</w>\nti ghter</w>\nsal em\nre viewers</w>\nbr ics</w>\nben digo</w>\nam ell</w>\ntur kish\nsush maswar\npaul son</w>\npal awan</w>\nmol lie</w>\nstitch er</w>\ns burgh</w>\nir u</w>\nhay dn</w>\nen ers</w>\naro a</w>\nu zzi</w>\nsaraj evo</w>\nhel a</w>\napol lo\nnine ty</w>\nvac a</w>\nsp on</w>\nvent u\njel ena</w>\nhei fer</w>\navo ids</w>\nsp ine\npri ze\nmar ist</w>\nre creating</w>\nme de</w>\nwoo den\nfind lay</w>\nro fl</w>\nn di</w>\ncompreh end</w>\nyu go\ny Ã¼\nto work</w>\nu fos</w>\nson ar</w>\npi ston</w>\nrecor ding\ntent ative</w>\nart forsale</w>\npel lets</w>\nfre do</w>\nÙĪ Ø±\nmu ses</w>\ncustom ization</w>\npro found\nis ner</w>\nide ally</w>\nsi am</w>\nplan kton</w>\ncm dr</w>\nman ger</w>\nfran ken</w>\ncustomiz able</w>\nà¤ ®\nwalk away</w>\nswi vel</w>\nvast ly</w>\nno ton\nlex a</w>\nex moor</w>\nz as</w>\ntan te</w>\nreduc tions</w>\nlol ly</w>\nhip sters</w>\nbenef ited</w>\në ²\nww www</w>\nmascul ine</w>\nfi ji\ndre y\nph ill</w>\nane ous</w>\nnic ol</w>\nmen dez</w>\ndisapp ro\nch ner</w>\nthrough s</w>\nshen mue</w>\neast man</w>\nðŁĲ İ\nyu ck</w>\nunder tale</w>\nre ys</w>\ngo beavs</w>\neng en</w>\nc na</w>\nmer r\nbir k\nãģ¨ç¹ĭãģ ĮãĤĬãģŁãģĦ</w>\nâĥ£ @</w>\nyn na</w>\nste ed</w>\noffen der</w>\nat um</w>\nvani shing</w>\npresi denti\nlove them</w>\ng nocchi</w>\nfri ggin</w>\nper il</w>\nmad hya</w>\nag ne</w>\ndee jay\nmar nock</w>\nm tb\nfold able</w>\n@ ___</w>\nstand re\nbron x\nbow ski</w>\nfin ite</w>\ncro ckett</w>\nb sf</w>\nge tit</w>\nseren awilliams</w>\nmir o</w>\nignati us</w>\nsla y\nrin se</w>\nfon due</w>\nsel dom</w>\ns more</w>\ngan i</w>\ndy ce</w>\ndmit ry</w>\ncru mb\nlate post</w>\npri mark</w>\noh ana</w>\nflor als</w>\ndo a</w>\nremembrance day</w>\nd ds</w>\nazi one</w>\ntoon ami</w>\nair port\næĿ ±\nth ad\nfi st\ndine sh</w>\ndr who</w>\nad words</w>\nadmi rer</w>\npro je\nkyrgy z\nà «\nmanife station</w>\nle wan\nj ic\nthi bau\nle ased</w>\nvan ity\nnouri shed</w>\nnever theless</w>\naug mente\nfu elled</w>\nche ad\nwil shere</w>\nru di\np z</w>\nmy co\nmor ro</w>\nherbali fe</w>\nhardro ck\nde man</w>\ndre ality</w>\nsp ades</w>\nce vic\nbha i\nbar on\nultimat efan\nhou news</w>\nto bi</w>\nstru t</w>\nke el</w>\naffili ation</w>\nthe masters</w>\nsm al\nhu e\neste ban</w>\ncon v</w>\nom nic\ndatab ases</w>\nco v</w>\nter ti\nst g</w>\nsnoop dogg</w>\nmetab ol\nleth bridge</w>\nðŁı» âĢįâĻĢï¸ı\nyear ling</w>\nresidente vil</w>\nnws l</w>\niy aki</w>\ngriez mann</w>\nc ous</w>\nðŁĵĿ :</w>\ntor ian</w>\nsam i\nðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\ng are</w>\nalli ances</w>\nwhit field</w>\nwe ther</w>\nrefin ing</w>\ncoy i</w>\nkra ken</w>\nðŁĺĺ âĿ¤</w>\nsingul arity</w>\nlil i</w>\nh ns</w>\nbol dand\nwaw rinka</w>\nmisogy ny</w>\nlo vers\nc q</w>\nb dg</w>\nad ona</w>\ngar ter</w>\nwomen of\nsc d</w>\nrecogn ising</w>\nmun a</w>\nstr ou\nsign alling</w>\nlare do</w>\nhell boy</w>\nalek sand\nun available</w>\npedi atric\nas in\nmer ia</w>\nri shi\nfuturi sm</w>\nw ye\npolari zed</w>\ne we</w>\npro pel</w>\nin forms</w>\ncre ase</w>\n~ \"</w>\narti ston\nlike for\nheidel berg</w>\ner ra</w>\nlife in\nlen ny\ninter rupt</w>\ncohe rent</w>\nca z\nvick ers</w>\nle veled</w>\nf bs</w>\ncab ins</w>\nbu mmed</w>\napost les</w>\nwe h\nten don</w>\nsouven irs</w>\ninfu ri\npier ce\nasse t\nm las</w>\ngo th\ndi ggin</w>\nann as\nyl or</w>\nth waite</w>\nsw el\npan era</w>\nmur derers</w>\ncroo ked\nbs go</w>\nac u</w>\na on</w>\nre an</w>\none of\nko hl</w>\nbloo dh\npest icide</w>\nlost dog</w>\nfle xing</w>\nëĤ ĺ\nsu pra</w>\neter nally</w>\nðŁļ Ļ</w>\npa olo\nol an\nmom o\nis elle</w>\ncaptain marvel</w>\ns lou\nmistak enly</w>\nakhi lesh</w>\nmer t</w>\nil inan</w>\nbu on</w>\nbal kan</w>\nmir ro\nmill en\nder ail\ndam on\ntit i</w>\nbi os</w>\nre don\npic ard</w>\npar te</w>\nðŁ¤ Ł\nØ º\nson ics</w>\nfir sth\ndd c</w>\nveg ans</w>\ntur ban</w>\nni gan</w>\nlot tie</w>\nlyn don</w>\nstar buck\npink floyd</w>\nlife styles</w>\nam ara</w>\na she\nr sc</w>\nval a</w>\nsm er\ncw gc</w>\ncli ent\nbuen as</w>\njag an</w>\ncoo ps</w>\nðŁĳĳ ðŁĳĳ\nspeci alizes</w>\nsnag ged</w>\ng lar\nben net</w>\nwildlife wednesday</w>\nbow den</w>\npi k</w>\nart in</w>\nempor ium</w>\nar l</w>\nre ba</w>\npas ser</w>\ndisappo ints</w>\nadditi ve</w>\nâľĬ ðŁı½</w>\nbay er\nmissou la</w>\nha skell</w>\ncomm ences</w>\nni x\nne man</w>\nexplo ited</w>\nplastic surgery</w>\ncc d</w>\naso cial</w>\nvo t</w>\nsie gel</w>\nfro ome</w>\nkap am\nfar a</w>\ne ha</w>\npro bes</w>\nmw f</w>\nmeet ing\np bb\nak ins</w>\nmistle toe</w>\nkingdom hearts</w>\nfor kids</w>\nec r</w>\nbal e\nescor ts</w>\nadidas originals</w>\nk wa</w>\nk ts</w>\nhallo ffame</w>\nðŁĺį .</w>\nwag s</w>\npot ted</w>\no wing</w>\nhoney comb</w>\nhe fty</w>\nuro logy</w>\nmer le</w>\nb pd</w>\nstri pping</w>\nre ich\nk state\ngu ay\nyon ge</w>\nshak ti\ng loom</w>\nbat t</w>\nson om\nn ery</w>\nel ba</w>\nblan ks</w>\nhel le\ntriple ts</w>\nbom bay\nak arta</w>\nab ia</w>\ntransm itted</w>\nrol f</w>\nja is\nangular js</w>\nfi erc\nm ss</w>\ntrac e\nà¥ ĩ\ntom bs</w>\nold man</w>\nkom bucha</w>\nfo l</w>\ne health</w>\ncere als</w>\nare lli</w>\nin ari</w>\nðŁĴ ©\nwo l</w>\nliber ties</w>\nfa wn</w>\naf firm</w>\nnun avut</w>\nhyster ical</w>\nk drama</w>\nart es</w>\nâĢ¢âĢ¢âĢ¢âĢ¢ âĢ¢âĢ¢âĢ¢âĢ¢\nvalent in</w>\nman slaughter</w>\ngal es</w>\neo in</w>\nenergi zed</w>\ndel s</w>\nwith draws</w>\nst les</w>\nsar castic</w>\nram esh\nincredi bles</w>\nlock hart</w>\nya wn</w>\nultimatefan live</w>\noooooooo oooooooo\nmu en\nguru dev</w>\nte er</w>\npe eling</w>\nnew snow</w>\nlingui stics</w>\ndirec tv</w>\nag end\nuni lever</w>\nru ger</w>\nhan dedly</w>\nero se</w>\nli mel\nthe c\nroyal ties</w>\nfini shers</w>\nnr g</w>\nm gt</w>\nfid get</w>\ncom ps</w>\nbac on\naggre ssively</w>\nab it</w>\nch Ã¢\ntar de</w>\nslu gger</w>\nq anda</w>\ngre ening</w>\nd ats</w>\nensla ved</w>\nspec tor</w>\no ye\nfre ef\nb hand\nstop brexit</w>\nmis conceptions</w>\ncav a</w>\nðŁĺįðŁĺįðŁĺįðŁĺį ðŁĺįðŁĺįðŁĺįðŁĺį\nmultit asking</w>\nhou sel\nferre ira</w>\ncen time\nank les</w>\njo dh\nhel ly</w>\nfro me</w>\nout tuesday</w>\nnar nia</w>\nbal aji</w>\nl bloggers</w>\njyo ti</w>\nðŁį ĩ</w>\nlan cia</w>\ncap ri\ny ap\nnat ash\ndown fall</w>\n.\" âĢĶ</w>\nÃ ®\nligam ent</w>\ncoat ings</w>\nai ded</w>\nhi ko</w>\nfall ing\nencryp ted</w>\nyeg food</w>\ninfringe ment</w>\ncu di</w>\nce p</w>\nðŁĺį ðŁĺĤ</w>\ntra d\nsuper rugby</w>\ned win\nwh iche\nvi meo</w>\nlay ne</w>\nin vigor\nhe he\ndubrov nik</w>\nbie ber\nu tr\nsham an</w>\nop ers</w>\nham ill</w>\nen ig</w>\ndi f</w>\nar um</w>\nscrap book</w>\nmin h</w>\ndiver gence</w>\nmckin non</w>\nlife time\nguter res</w>\nwil le\nple as</w>\npatt y\nmic ron\nk z\ndom aine</w>\nru sher</w>\nm ds</w>\nches ney</w>\nscrew driver</w>\nâģ© ,</w>\nsle dge</w>\nhau er</w>\nchan a</w>\nstam ina</w>\nsprink ler</w>\npl n</w>\nhe ff\nbol ton\nom on\ncar rington</w>\naccor dion</w>\njor ge\ninter ception</w>\nin puts</w>\ngu ll\ntran scription</w>\nvanu atu</w>\nit ical</w>\neth os</w>\ntic h</w>\nspac ey</w>\npee king</w>\nu mi\nha ger\npsycho tic</w>\nilli an\nilli a</w>\nbonnar oo</w>\nan ese</w>\npu c\nlaghate parth</w>\nen hall</w>\neconom ical</w>\ndre dge</w>\n% -</w>\nu we</w>\ntu bular</w>\nscoun cil</w>\npe asants</w>\nfl er</w>\ntumb ler</w>\nhe p</w>\nford ham</w>\nrow ley</w>\niniti als</w>\nev asion</w>\ner nation</w>\nplu gins</w>\ncoch ran</w>\nc attle\nacid ity</w>\nðŁİĬ ðŁİī</w>\nre grann</w>\njump man</w>\nef ace</w>\nx ma\npatri archy</w>\nesco bar</w>\ncristi an</w>\ntip ton</w>\nnu eva</w>\nhack ney\nback seat</w>\nkill arney</w>\naid an\nsta dion</w>\nsimul taneous</w>\nida ho\na je\nu th\nfigu re\nclo s</w>\nbur k\nvolun tar\nrec ite</w>\nmacfar lane</w>\ncur few</w>\nbou do\nw gn\nsti x</w>\nsla p\nscrat ched</w>\nphilli p\njour ne\nex pelled</w>\nwa z</w>\nu ke\ntati ana</w>\nou e</w>\nho pp\ndimit ri</w>\nðŁĵ £\nmato logist</w>\nelectri fying</w>\nblu ffs</w>\nbill smafia</w>\naz cardinals</w>\ny aa\nx mas\nshar a</w>\nr ith</w>\ng ills</w>\ndre s\nbar ton\nauthori zation</w>\nimperi alism</w>\nhome of\nto do\nfoot path</w>\nband width</w>\nvisit spain</w>\nmoh sin</w>\nerup ted</w>\nmi ki</w>\ninsig nia</w>\nmike l</w>\nss h</w>\nger a</w>\nbank holiday\naw an\nt weak</w>\nstar craft</w>\ne al\nconstruc tion\nskelet ons</w>\nle ep\nine m</w>\nbar clay\nship wreck</w>\nmonsi eur</w>\nyo h</w>\nron t</w>\nform ative</w>\nser o\nle p\nhorse man</w>\nhoo sier</w>\nhaz mat</w>\ncylin ders</w>\ncen ti\nðŁĴ¥ðŁĴ¥ ðŁĴ¥</w>\nre em</w>\nna ire</w>\nmus ically</w>\ngras shopper</w>\nest onian</w>\ntermin ology</w>\nro main</w>\nblogger rt</w>\ntox in</w>\nstan ce\ncultiv ated</w>\nan ast\nðŁĲ į\nshi mano</w>\ngo pher</w>\nene i</w>\nrecycla ble</w>\ngam ification</w>\nfight for\nc q\navoc ados</w>\nke ys\neli ke\ngly cer\nshak ur</w>\nmobili zation</w>\ngal ley</w>\nexpla in\nex changed</w>\npe th</w>\nobe dience</w>\nilla ge</w>\nen nis\nãĥ ŀ\nwi v</w>\nwalla bies</w>\nma ar</w>\nig ers</w>\nfin tech\nfin alized</w>\nwo j\nmeaning less</w>\nin field</w>\nonna ise</w>\ne et</w>\nbron te</w>\npass ages</w>\nðŁĳ §\nstrick land</w>\nnorthern lights</w>\nlom ond</w>\nh tc\nwr ay</w>\nshi fter</w>\ndi alog</w>\nðŁį į</w>\n>> >>>></w>\nte atime</w>\nste ch\nsic huan</w>\nqu ill</w>\nfran ca\ncomple mentary</w>\nbar rington</w>\nmarcu s\nmal am</w>\ngoo oo</w>\nfor sa\nelec tra</w>\naf s</w>\nâĹ Ĩ</w>\ntri fe\nsn azzy</w>\nfo lia</w>\nand olan</w>\nafter dark</w>\nwood son</w>\nstra de</w>\nlitt lest</w>\no gun\ncon wy</w>\nco wards</w>\nðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤ</w>\níĬ ¸\nse ul\nmur phy\ndun ks</w>\nkapil shar\njo achim</w>\nwom ack</w>\nequal ity\naver ages</w>\na ine\nðŁ¦ Ī</w>\ntac ular</w>\ndis ability\nu ked\nmid century</w>\nbar thol\nteas ers</w>\ntab ern\nnj caa</w>\nsp out</w>\nop i</w>\nku bball</w>\nbl om\nso ar\npopu lism</w>\nmeth yl\nðŁĳĬ ðŁı¼\no spre\nalo ils</w>\nðŁĵ ĸ\nðŁĮ ļ\nx er\nsp illing</w>\npubl ica</w>\ncar dam\nadi sh</w>\nsa cha</w>\np kg</w>\nbu da</w>\nlyric ist</w>\ni bc</w>\ngru mp\nho ver</w>\nhal ep</w>\nanti body</w>\nanem one</w>\nâĻ¥âĻ¥ âĻ¥âĻ¥\nm cl\nlitho graph</w>\ncc u</w>\ns fest</w>\npath ic</w>\ncalli ster</w>\notta wa\ngun sn\nrut ger\nhali but</w>\nen vision</w>\ndifferenti ate</w>\nðŁļĢ ðŁļĢ\npir an\nlat el\nuc n</w>\ntrou bad\nra ine\nfierc ely</w>\nlearn english</w>\nlea se\nwex mondays</w>\nem it</w>\ndray ton</w>\nbur rell</w>\nscuba diving</w>\nhol ler</w>\ndr u</w>\nclo cked</w>\nw ral</w>\nap ro</w>\ntrans lucent</w>\nw bo</w>\npatri arch</w>\nmo ja\nlan nister</w>\nfish ery</w>\nne derland</w>\nmil dly</w>\nmi rai</w>\nma ko</w>\nja p</w>\nðŁĺ©ðŁĺ© ðŁĺ©</w>\npro statec\np anna</w>\nar ama</w>\nunder taking</w>\ntomp kins</w>\nne op\nsoli ds</w>\nsav oury</w>\ne ames</w>\ncut lery</w>\nwood bridge</w>\nsteam er</w>\nri zzo</w>\nwild cat\nrat na</w>\nlamin ated</w>\nkin eni</w>\njal ap\nai des</w>\nacknowle dges</w>\n?! ?!?!</w>\n! ðŁİī</w>\nw afc</w>\nmag gio</w>\nha ves</w>\ndar je\nof i</w>\ngr il\nv asi\nbru x\nmo hd</w>\nfake speare</w>\narn old\nr mb</w>\nfor be\nwal leye</w>\nro di\ntherapeu tics</w>\nstrate gi\nob ste\nmu dder</w>\ndownload able</w>\ndd ings</w>\nd ca</w>\nasi angames</w>\ncampe on\nappropri ation</w>\nth century</w>\nram atta</w>\ndra ped</w>\nbul lion</w>\nmu c</w>\none x</w>\nse greg\nophel ia</w>\nbod ily</w>\nâĿ¤ ðŁĺį</w>\nwi zar\nte ased</w>\nade my</w>\nto id</w>\nsur a</w>\nlazar us</w>\nsn ickers</w>\nma se\nlo h\nbow ed</w>\nbibli o\nx change</w>\nhar lan</w>\ngho shal</w>\nflavor ful</w>\nbha gat</w>\nalle z</w>\nwhiche ver</w>\nten stein</w>\ndisc er\norgan iser</w>\nmt g\ndream liner</w>\nt se\nhok kaido</w>\nmo k\nindulg ent</w>\nhick man</w>\nblin ded</w>\nal yn\naaa ah</w>\nsp ool</w>\nlough borough</w>\ninter pret\net v\naristo tle</w>\noptimi zing</w>\navici i</w>\nmadu rai</w>\nju li</w>\nnaw az\nmat chups</w>\nab ide</w>\npaint ing\nw elling</w>\nvel i</w>\noctag on</w>\nin scribed</w>\npo king</w>\nplac er</w>\nlife cycle</w>\nkili g</w>\ng sp</w>\neli ves</w>\ncle ments</w>\nna sheed</w>\nme sut</w>\nincarcer ated</w>\ndist illed</w>\nwal ang</w>\ndelic acy</w>\ndel gado</w>\nche z\nch ita</w>\nad ero</w>\ntu x</w>\npati l</w>\no do\nabh cosmetics</w>\ntv c</w>\np bc</w>\nin accurate</w>\nhardwork paysoff</w>\nball er\nquot ation</w>\nmerchandi sing</w>\nga stri\ndefen ses</w>\ndro gba</w>\nbex hill</w>\nban kno\nwin ona</w>\nsi eg\np gs</w>\nhahah ha</w>\nagu chi</w>\nsu bram\nmirac le\nde sch\nli bre\nba cher</w>\nent ine</w>\nbbcra di\nlou dest</w>\nr ps</w>\npi erc\nfr yer</w>\nstorm trooper</w>\nrafael nadal</w>\npas co</w>\nexhau stion</w>\nepic onetsy</w>\nrc tid</w>\nkel lie</w>\nga ines</w>\nd bz</w>\nsm riti\ns bridge</w>\nlim ited\ncla w\ntechnic al\nbio graphical</w>\nado red</w>\nà¸ °</w>\nexclu de</w>\nac adia</w>\nkey boards</w>\nfur man</w>\nso ca</w>\nsur u</w>\nni ps</w>\nsw aps</w>\nserver less</w>\nrun e</w>\npu ffy</w>\nnorth ampton\nnish ings</w>\nhen der\ncartri dges</w>\ngun shot</w>\nðŁĵ ¹</w>\nfil ament</w>\nrespon dents</w>\npey ton\nmountaine er</w>\nmer ging</w>\nlife span</w>\nintimid ation</w>\np afc</w>\nnl wx</w>\nexpan sive</w>\npur r\nf ck</w>\nca e</w>\nat ti\ntele thon</w>\nso hn</w>\nmend el\nlo pes</w>\ndor i</w>\nun broken</w>\nte red\ntast ings</w>\nin active</w>\ndisin tegr\nt assel</w>\nshare the\npi ano\nis lay</w>\nair space</w>\nz awa</w>\nricci ardo</w>\nming ton\nfresh er</w>\ncur ry\nre vs</w>\npharo ah</w>\nh mv</w>\nexhilar ating</w>\nwh oo</w>\nlin kin</w>\nkri spy</w>\ncompeten cy</w>\nste wards</w>\nne bu\nkat su\nad mins</w>\nbaz ar</w>\nas ar</w>\ngiving back</w>\ns summit</w>\nsong z</w>\nlin us</w>\nraj kumar</w>\nfarm ington</w>\nfanta sia</w>\nðŁĺ´ ðŁĺ´</w>\nso bri\nlis se</w>\nbarry more</w>\npri sm\nblo b</w>\nsen ew\nmono xide</w>\nexp ire</w>\neigh teen</w>\ndi pper</w>\nxi ao</w>\nkil t</w>\nhin ch\nbbc sport</w>\nbam boo\np ter\nex al\nðŁ¦ ĭ\nham lin</w>\nexpe ditions</w>\nstar gazing</w>\nfood security</w>\nwy lie</w>\nul f</w>\nst ingly</w>\non storm</w>\nlo eb</w>\nbro ome</w>\nbn ha</w>\npancre atic</w>\neli ve\n!!!!!!!! !!!</w>\nther apper</w>\northo pedic</w>\navengers endgame</w>\nantit rust</w>\nìļ °</w>\ngo te</w>\nom d</w>\noff side</w>\ngy llen\nwin eries</w>\nwhite water</w>\nad l</w>\nlu pita</w>\nexce eds</w>\nconsi sted</w>\nchew bacca</w>\nash leigh</w>\nnhl jets</w>\nis san\nsh ld</w>\nhay at</w>\ncran berries</w>\nðŁ¤ĺ ðŁı½</w>\nrock the\nspring training</w>\nfall out\ndairy free</w>\nwa j</w>\nun decided</w>\nso wn</w>\nrc n</w>\nnorth wales</w>\nhtt r</w>\nfu mble</w>\nd its</w>\ncomp elled</w>\npopu list</w>\nmin ted</w>\nblan chett</w>\n. ''</w>\npro pulsion</w>\nm illa</w>\nau berg\nher tz</w>\nh ta</w>\nu daipur</w>\nserendip ity</w>\nazte cs</w>\nals ace</w>\nðŁĲ ĳ</w>\nlu n</w>\nsho es\nchar li</w>\ngar za</w>\nðŁĴ Ł\npro biotics</w>\nfox tv</w>\nol is</w>\nmi ff\nloc alized</w>\ndiffu ser</w>\nsi gue</w>\nfun ko\nrend ous</w>\nðŁĴ ĳ</w>\njeky ll</w>\n"
  },
  {
    "path": "configs/sdxl/tokenizer_2/special_tokens_map.json",
    "content": "{\n  \"bos_token\": {\n    \"content\": \"<|startoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": true,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"eos_token\": {\n    \"content\": \"<|endoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": true,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"pad_token\": \"!\",\n  \"unk_token\": {\n    \"content\": \"<|endoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": true,\n    \"rstrip\": false,\n    \"single_word\": false\n  }\n}\n"
  },
  {
    "path": "configs/sdxl/tokenizer_2/tokenizer_config.json",
    "content": "{\n  \"add_prefix_space\": false,\n  \"bos_token\": {\n    \"__type\": \"AddedToken\",\n    \"content\": \"<|startoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": true,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"clean_up_tokenization_spaces\": true,\n  \"do_lower_case\": true,\n  \"eos_token\": {\n    \"__type\": \"AddedToken\",\n    \"content\": \"<|endoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": true,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"errors\": \"replace\",\n  \"model_max_length\": 77,\n  \"pad_token\": \"!\",\n  \"tokenizer_class\": \"CLIPTokenizer\",\n  \"unk_token\": {\n    \"__type\": \"AddedToken\",\n    \"content\": \"<|endoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": true,\n    \"rstrip\": false,\n    \"single_word\": false\n  }\n}\n"
  },
  {
    "path": "configs/sdxl/tokenizer_2/vocab.json",
    "content": "{\n  \"!\": 0,\n  \"!!\": 1443,\n  \"!!!\": 11194,\n  \"!!!!\": 4003,\n  \"!!!!!!!!\": 11281,\n  \"!!!!!!!!!!!!!!!!\": 30146,\n  \"!!!!!!!!!!!</w>\": 49339,\n  \"!!!!!!!!!!</w>\": 35579,\n  \"!!!!!!!!!</w>\": 28560,\n  \"!!!!!!!!</w>\": 21622,\n  \"!!!!!!!</w>\": 15203,\n  \"!!!!!!</w>\": 9168,\n  \"!!!!!</w>\": 5203,\n  \"!!!!</w>\": 2360,\n  \"!!!\\\"</w>\": 28048,\n  \"!!!)</w>\": 42532,\n  \"!!!</w>\": 995,\n  \"!!\\\"</w>\": 20556,\n  \"!!#</w>\": 34997,\n  \"!!)</w>\": 28352,\n  \"!!</w>\": 748,\n  \"!!@</w>\": 40705,\n  \"!\\\"</w>\": 2947,\n  \"!\\\"@</w>\": 43819,\n  \"!#</w>\": 9670,\n  \"!'</w>\": 13222,\n  \"!),</w>\": 37904,\n  \"!).</w>\": 26225,\n  \"!)</w>\": 4571,\n  \"!*</w>\": 37737,\n  \"!,</w>\": 29325,\n  \"!-</w>\": 43499,\n  \"!...</w>\": 22121,\n  \"!..</w>\": 35475,\n  \"!.</w>\": 22517,\n  \"!:)</w>\": 31671,\n  \"!:</w>\": 17545,\n  \"!</w>\": 256,\n  \"!?!</w>\": 29767,\n  \"!?!?</w>\": 47081,\n  \"!?</w>\": 6004,\n  \"!@</w>\": 15117,\n  \"!]</w>\": 34466,\n  \"!âĢ¦</w>\": 35068,\n  \"!âĿ¤ï¸ı</w>\": 32559,\n  \"!ðŁİī</w>\": 49085,\n  \"!ðŁĺĬ</w>\": 43434,\n  \"!ðŁĺį</w>\": 36438,\n  \"\\\"\": 1,\n  \"\\\"!</w>\": 10377,\n  \"\\\"\\\"\": 41530,\n  \"\\\"\\\"\\\"</w>\": 25539,\n  \"\\\"\\\"</w>\": 8575,\n  \"\\\"#</w>\": 8345,\n  \"\\\"'</w>\": 31065,\n  \"\\\"(</w>\": 32741,\n  \"\\\")</w>\": 13112,\n  \"\\\",</w>\": 4332,\n  \"\\\"-</w>\": 9375,\n  \"\\\"....</w>\": 37785,\n  \"\\\"...</w>\": 9049,\n  \"\\\"..</w>\": 25403,\n  \"\\\".</w>\": 2811,\n  \"\\\"/</w>\": 39486,\n  \"\\\":</w>\": 7811,\n  \"\\\";</w>\": 37549,\n  \"\\\"</w>\": 257,\n  \"\\\"?</w>\": 11727,\n  \"\\\"@</w>\": 1512,\n  \"\\\"@_</w>\": 20236,\n  \"\\\"[</w>\": 36930,\n  \"\\\"âĢ¦</w>\": 33993,\n  \"\\\"âĢĶ</w>\": 41151,\n  \"#\": 2,\n  \"##</w>\": 15483,\n  \"#...</w>\": 31491,\n  \"#:</w>\": 30144,\n  \"#</w>\": 258,\n  \"#@</w>\": 35062,\n  \"#âĢ¦</w>\": 12834,\n  \"#âĢİ</w>\": 34262,\n  \"$\": 3,\n  \"$$\": 24233,\n  \"$$$</w>\": 31859,\n  \"$$</w>\": 14929,\n  \"$)</w>\": 39460,\n  \"$.</w>\": 34682,\n  \"$</w>\": 259,\n  \"%\": 4,\n  \"%!</w>\": 35070,\n  \"%),</w>\": 37819,\n  \"%)</w>\": 16063,\n  \"%,</w>\": 14505,\n  \"%-</w>\": 48784,\n  \"%.</w>\": 12475,\n  \"%;</w>\": 33379,\n  \"%</w>\": 260,\n  \"&\": 5,\n  \"&&</w>\": 27791,\n  \"&</w>\": 261,\n  \"'\": 6,\n  \"'!</w>\": 13781,\n  \"'\\\"</w>\": 19479,\n  \"'#</w>\": 15319,\n  \"''\": 46594,\n  \"''</w>\": 8445,\n  \"')</w>\": 19175,\n  \"',</w>\": 5662,\n  \"'-</w>\": 26152,\n  \"'...</w>\": 20474,\n  \"'.</w>\": 4645,\n  \"':</w>\": 7182,\n  \"';</w>\": 44517,\n  \"'</w>\": 262,\n  \"'?</w>\": 17242,\n  \"'@</w>\": 26397,\n  \"'d</w>\": 1896,\n  \"'ll</w>\": 1342,\n  \"'m</w>\": 880,\n  \"'re</w>\": 982,\n  \"'s</w>\": 568,\n  \"'t</w>\": 713,\n  \"'ve</w>\": 1200,\n  \"'âĢ¦</w>\": 42120,\n  \"(\": 7,\n  \"(!)</w>\": 30253,\n  \"(\\\"</w>\": 18741,\n  \"(#</w>\": 6229,\n  \"($)</w>\": 46597,\n  \"($</w>\": 15186,\n  \"(&</w>\": 15042,\n  \"('</w>\": 18235,\n  \"((\": 22944,\n  \"(((</w>\": 33287,\n  \"((</w>\": 13796,\n  \"().</w>\": 41737,\n  \"()</w>\": 8475,\n  \"(*\": 48004,\n  \"(*</w>\": 39575,\n  \"(+</w>\": 12903,\n  \"(-</w>\": 20228,\n  \"(...</w>\": 45159,\n  \"(.</w>\": 43055,\n  \"(:</w>\": 8528,\n  \"(;</w>\": 23983,\n  \"(</w>\": 263,\n  \"(?)</w>\": 22885,\n  \"(@</w>\": 2181,\n  \"(Â£</w>\": 33987,\n  \"(Â©</w>\": 44886,\n  \"(ðŁĵ·:</w>\": 34610,\n  \"(ðŁĵ·</w>\": 37999,\n  \"(ðŁĵ¸:</w>\": 44422,\n  \"(ðŁĵ¸</w>\": 45204,\n  \")\": 8,\n  \")!!</w>\": 47518,\n  \")!</w>\": 7805,\n  \")\\\"</w>\": 13046,\n  \")#</w>\": 39981,\n  \")'</w>\": 23613,\n  \")(</w>\": 27956,\n  \"))\": 13720,\n  \"))))\": 42911,\n  \"))))</w>\": 34181,\n  \")))</w>\": 18305,\n  \"))</w>\": 5167,\n  \"),</w>\": 2361,\n  \")-</w>\": 19034,\n  \")...</w>\": 15274,\n  \")..</w>\": 41822,\n  \").</w>\": 1818,\n  \")/</w>\": 26616,\n  \"):</w>\": 4143,\n  \");</w>\": 19686,\n  \")</w>\": 264,\n  \")?</w>\": 18765,\n  \")@</w>\": 41928,\n  \")_/\": 45028,\n  \")_/Â¯</w>\": 45781,\n  \")âĢ¦</w>\": 41844,\n  \"*\": 9,\n  \"*)</w>\": 30956,\n  \"**\": 9825,\n  \"****\": 21326,\n  \"********\": 42974,\n  \"*****</w>\": 43571,\n  \"****</w>\": 25167,\n  \"***</w>\": 7829,\n  \"**</w>\": 4441,\n  \"*,</w>\": 41895,\n  \"*-*</w>\": 23568,\n  \"*.</w>\": 31304,\n  \"*</w>\": 265,\n  \"*_*</w>\": 44535,\n  \"+\": 10,\n  \"+)</w>\": 34810,\n  \"++\": 47298,\n  \"+++</w>\": 35986,\n  \"++</w>\": 19056,\n  \"+,</w>\": 35885,\n  \"+.</w>\": 25238,\n  \"+/-</w>\": 47614,\n  \"+</w>\": 266,\n  \",\": 11,\n  \",\\\"</w>\": 3823,\n  \",#</w>\": 11215,\n  \",&</w>\": 26905,\n  \",'</w>\": 10599,\n  \",)</w>\": 44493,\n  \",,\": 21340,\n  \",,,,</w>\": 33225,\n  \",,,</w>\": 14811,\n  \",,</w>\": 8844,\n  \",-</w>\": 29821,\n  \",...</w>\": 20365,\n  \",.</w>\": 41277,\n  \",</w>\": 267,\n  \",@</w>\": 13975,\n  \",âĢ¦</w>\": 14601,\n  \"-\": 12,\n  \"-\\\"</w>\": 18646,\n  \"-#</w>\": 10151,\n  \"-$</w>\": 24946,\n  \"-'</w>\": 28010,\n  \"-(</w>\": 33345,\n  \"-)</w>\": 3535,\n  \"-*</w>\": 21527,\n  \"--\": 2154,\n  \"----\": 5753,\n  \"--------\": 11772,\n  \"----------------\": 23122,\n  \"----</w>\": 30164,\n  \"----></w>\": 35999,\n  \"---</w>\": 11079,\n  \"---></w>\": 14518,\n  \"--</w>\": 2432,\n  \"--></w>\": 6422,\n  \"-->></w>\": 47252,\n  \"-.-</w>\": 32765,\n  \"-...</w>\": 43147,\n  \"-.</w>\": 44040,\n  \"-</w>\": 268,\n  \"-></w>\": 5081,\n  \"-@</w>\": 10087,\n  \"-_-</w>\": 27227,\n  \"-__\": 42718,\n  \"-âĢ¦</w>\": 30047,\n  \".\": 13,\n  \".!!</w>\": 37805,\n  \".!</w>\": 14030,\n  \".\\\"\": 18650,\n  \".\\\"-</w>\": 21234,\n  \".\\\"</w>\": 1081,\n  \".\\\"âĢĶ</w>\": 48703,\n  \".#</w>\": 5014,\n  \".'\\\"</w>\": 41558,\n  \".''</w>\": 49379,\n  \".'</w>\": 5938,\n  \".(</w>\": 22294,\n  \".)</w>\": 5376,\n  \".*</w>\": 26145,\n  \".,</w>\": 5276,\n  \".-</w>\": 12481,\n  \"..\": 608,\n  \"..!!</w>\": 23707,\n  \"..!</w>\": 17994,\n  \"..\\\"</w>\": 15229,\n  \"..#</w>\": 15735,\n  \"..,</w>\": 47143,\n  \"...\": 3002,\n  \"...!!!</w>\": 38351,\n  \"...!!</w>\": 39915,\n  \"...!</w>\": 16860,\n  \"...\\\"</w>\": 5240,\n  \"...#</w>\": 8195,\n  \"...&</w>\": 44979,\n  \"...'</w>\": 23167,\n  \"...(</w>\": 37981,\n  \"...)</w>\": 14040,\n  \"...,</w>\": 42717,\n  \"....\": 2386,\n  \"....\\\"</w>\": 26689,\n  \"....#</w>\": 20346,\n  \".....\": 34151,\n  \".....#</w>\": 38867,\n  \"........\": 8246,\n  \"................\": 24855,\n  \"............</w>\": 42965,\n  \"...........</w>\": 35008,\n  \"..........</w>\": 25526,\n  \".........</w>\": 19881,\n  \"........</w>\": 14720,\n  \".......</w>\": 9917,\n  \"......</w>\": 5590,\n  \".....</w>\": 3104,\n  \"....</w>\": 1390,\n  \"....@</w>\": 29790,\n  \"...:</w>\": 34570,\n  \"...</w>\": 678,\n  \"...?</w>\": 16388,\n  \"...@</w>\": 12672,\n  \"..</w>\": 852,\n  \"..?</w>\": 23875,\n  \"..@</w>\": 21124,\n  \"./</w>\": 31975,\n  \".:</w>\": 15811,\n  \".;</w>\": 47596,\n  \".</w>\": 269,\n  \".<</w>\": 29442,\n  \".?</w>\": 29294,\n  \".@</w>\": 1230,\n  \".]</w>\": 33511,\n  \".~</w>\": 42651,\n  \".âĢ¦</w>\": 18047,\n  \".âĿ¤ï¸ı</w>\": 39085,\n  \".âłĢ</w>\": 30097,\n  \".ðŁĺĤ</w>\": 46580,\n  \"/\": 14,\n  \"/#</w>\": 13217,\n  \"/$</w>\": 36266,\n  \"/-</w>\": 19811,\n  \"/.</w>\": 39382,\n  \"//\": 15348,\n  \"////\": 46271,\n  \"///</w>\": 22734,\n  \"//</w>\": 3502,\n  \"/</w>\": 270,\n  \"/@</w>\": 8216,\n  \"0\": 15,\n  \"0</w>\": 271,\n  \"1\": 16,\n  \"1</w>\": 272,\n  \"2\": 17,\n  \"2</w>\": 273,\n  \"3\": 18,\n  \"3</w>\": 274,\n  \"4\": 19,\n  \"4</w>\": 275,\n  \"5\": 20,\n  \"5</w>\": 276,\n  \"6\": 21,\n  \"6</w>\": 277,\n  \"7\": 22,\n  \"7</w>\": 278,\n  \"8\": 23,\n  \"8</w>\": 279,\n  \"9\": 24,\n  \"9</w>\": 280,\n  \":\": 25,\n  \":\\\"\": 29498,\n  \":\\\")</w>\": 46432,\n  \":\\\"</w>\": 12089,\n  \":#</w>\": 26625,\n  \":$</w>\": 33769,\n  \":'\": 8017,\n  \":'(</w>\": 21250,\n  \":')</w>\": 10701,\n  \":'</w>\": 23851,\n  \":((</w>\": 42496,\n  \":(</w>\": 5965,\n  \":)\": 11070,\n  \":))))</w>\": 42339,\n  \":)))</w>\": 21840,\n  \":))</w>\": 10164,\n  \":).</w>\": 39010,\n  \":)</w>\": 1408,\n  \":*</w>\": 12617,\n  \":-\": 13021,\n  \":-(</w>\": 25137,\n  \":-)</w>\": 4223,\n  \":-</w>\": 10323,\n  \":...</w>\": 42140,\n  \"://</w>\": 12441,\n  \":/</w>\": 13604,\n  \"::\": 33077,\n  \":::</w>\": 43818,\n  \"::</w>\": 9788,\n  \":</w>\": 281,\n  \":></w>\": 39677,\n  \":@</w>\": 14339,\n  \":]</w>\": 43486,\n  \":|</w>\": 45986,\n  \":âĢ¦</w>\": 22365,\n  \";\": 26,\n  \";))</w>\": 41873,\n  \";)</w>\": 3661,\n  \";-\": 35657,\n  \";-)</w>\": 10475,\n  \";;\": 34824,\n  \";;</w>\": 24492,\n  \";</w>\": 282,\n  \"<\": 27,\n  \"<-</w>\": 47280,\n  \"</</w>\": 34308,\n  \"<<\": 24588,\n  \"<</w>\": 283,\n  \"<<</w>\": 16482,\n  \"<<<</w>\": 35054,\n  \"<|endoftext|>\": 49407,\n  \"<|startoftext|>\": 49406,\n  \"=\": 28,\n  \"=))</w>\": 39587,\n  \"=)</w>\": 17840,\n  \"=</w>\": 284,\n  \"==\": 11748,\n  \"====\": 21734,\n  \"========\": 38952,\n  \"==></w>\": 29688,\n  \"=></w>\": 9714,\n  \">\": 29,\n  \">.<</w>\": 38507,\n  \">:</w>\": 36196,\n  \"></w>\": 285,\n  \"><</w>\": 28015,\n  \">>\": 8270,\n  \">></w>\": 2988,\n  \">>></w>\": 6395,\n  \">>>>\": 18461,\n  \">>>></w>\": 18435,\n  \">>>>></w>\": 32972,\n  \">>>>>></w>\": 48947,\n  \">>>>>>>>\": 41947,\n  \">_\": 44144,\n  \"?\": 30,\n  \"?!\": 9785,\n  \"?!!</w>\": 25342,\n  \"?!\\\"</w>\": 29315,\n  \"?!</w>\": 2835,\n  \"?!?!</w>\": 16349,\n  \"?!?!?!</w>\": 49084,\n  \"?!?!?</w>\": 37619,\n  \"?!?</w>\": 11395,\n  \"?\\\"</w>\": 3283,\n  \"?#</w>\": 24018,\n  \"?'</w>\": 13610,\n  \"?)</w>\": 9626,\n  \"?,</w>\": 41628,\n  \"?...</w>\": 22641,\n  \"?..</w>\": 43905,\n  \"?.</w>\": 41251,\n  \"?:</w>\": 21067,\n  \"?</w>\": 286,\n  \"??\": 5195,\n  \"??!!</w>\": 43219,\n  \"??!</w>\": 37341,\n  \"??\\\"</w>\": 44996,\n  \"??</w>\": 2197,\n  \"???\": 40017,\n  \"???</w>\": 3824,\n  \"????\": 15936,\n  \"????</w>\": 10362,\n  \"?????</w>\": 21370,\n  \"??????</w>\": 34589,\n  \"????????\": 45091,\n  \"?@</w>\": 29258,\n  \"?ðŁ¤Ķ</w>\": 47928,\n  \"@\": 31,\n  \"@#</w>\": 39397,\n  \"@.</w>\": 43730,\n  \"@/</w>\": 28639,\n  \"@</w>\": 287,\n  \"@@</w>\": 30314,\n  \"@_</w>\": 2692,\n  \"@__</w>\": 17042,\n  \"@___</w>\": 48308,\n  \"A\": 32,\n  \"A</w>\": 288,\n  \"B\": 33,\n  \"B</w>\": 289,\n  \"C\": 34,\n  \"C</w>\": 290,\n  \"D\": 35,\n  \"D</w>\": 291,\n  \"E\": 36,\n  \"E</w>\": 292,\n  \"F\": 37,\n  \"F</w>\": 293,\n  \"G\": 38,\n  \"G</w>\": 294,\n  \"H\": 39,\n  \"H</w>\": 295,\n  \"I\": 40,\n  \"I</w>\": 296,\n  \"J\": 41,\n  \"J</w>\": 297,\n  \"K\": 42,\n  \"K</w>\": 298,\n  \"L\": 43,\n  \"L</w>\": 299,\n  \"M\": 44,\n  \"M</w>\": 300,\n  \"N\": 45,\n  \"N</w>\": 301,\n  \"O\": 46,\n  \"O</w>\": 302,\n  \"P\": 47,\n  \"P</w>\": 303,\n  \"Q\": 48,\n  \"Q</w>\": 304,\n  \"R\": 49,\n  \"R</w>\": 305,\n  \"S\": 50,\n  \"S</w>\": 306,\n  \"T\": 51,\n  \"T</w>\": 307,\n  \"U\": 52,\n  \"U</w>\": 308,\n  \"V\": 53,\n  \"V</w>\": 309,\n  \"W\": 54,\n  \"W</w>\": 310,\n  \"X\": 55,\n  \"X</w>\": 311,\n  \"Y\": 56,\n  \"Y</w>\": 312,\n  \"Z\": 57,\n  \"Z</w>\": 313,\n  \"[\": 58,\n  \"[#</w>\": 11115,\n  \"[...\": 39975,\n  \"[...]</w>\": 43790,\n  \"[</w>\": 314,\n  \"[@</w>\": 15148,\n  \"[]</w>\": 22240,\n  \"\\\\\": 59,\n  \"\\\\'</w>\": 41239,\n  \"\\\\</w>\": 315,\n  \"]\": 60,\n  \"]\\\"</w>\": 39434,\n  \"],</w>\": 34067,\n  \"].</w>\": 26262,\n  \"]:</w>\": 21641,\n  \"]</w>\": 316,\n  \"][#</w>\": 39009,\n  \"][</w>\": 29329,\n  \"^\": 61,\n  \"^)</w>\": 30720,\n  \"^-\": 43516,\n  \"^.\": 31552,\n  \"^.^</w>\": 35791,\n  \"^</w>\": 317,\n  \"^^\": 34454,\n  \"^^</w>\": 9064,\n  \"^_\": 14423,\n  \"^_^</w>\": 15995,\n  \"_\": 62,\n  \"_'</w>\": 44701,\n  \"_(</w>\": 36951,\n  \"_)</w>\": 37393,\n  \"_*</w>\": 36237,\n  \"_,</w>\": 31417,\n  \"_-</w>\": 23193,\n  \"_.</w>\": 26841,\n  \"_/\": 37647,\n  \"_:</w>\": 13109,\n  \"_</w>\": 318,\n  \"__\": 2355,\n  \"__:</w>\": 47043,\n  \"__</w>\": 3838,\n  \"___\": 43812,\n  \"___</w>\": 13530,\n  \"____\": 4727,\n  \"____</w>\": 25350,\n  \"_____</w>\": 38803,\n  \"________\": 9549,\n  \"________________\": 20115,\n  \"`\": 63,\n  \"`</w>\": 319,\n  \"a\": 64,\n  \"a</w>\": 320,\n  \"aa\": 1821,\n  \"aa</w>\": 3894,\n  \"aaa\": 14376,\n  \"aaa</w>\": 9583,\n  \"aaaa\": 6727,\n  \"aaaa</w>\": 19336,\n  \"aaaaa</w>\": 31095,\n  \"aaaaaa</w>\": 44413,\n  \"aaaaaaaa\": 23126,\n  \"aaaah</w>\": 49151,\n  \"aaah</w>\": 35856,\n  \"aaay</w>\": 37846,\n  \"aab</w>\": 34108,\n  \"aac\": 23251,\n  \"aac</w>\": 11346,\n  \"aad\": 20464,\n  \"aad</w>\": 35894,\n  \"aaf\": 37638,\n  \"aaf</w>\": 31534,\n  \"aag\": 42174,\n  \"aah</w>\": 28990,\n  \"aaj\": 28727,\n  \"aaj</w>\": 43411,\n  \"aak\": 37739,\n  \"aal\": 22268,\n  \"aal</w>\": 30208,\n  \"aali\": 27896,\n  \"aaliyah</w>\": 46577,\n  \"aam\": 12943,\n  \"aam</w>\": 22775,\n  \"aama\": 45018,\n  \"aamaadmi\": 45563,\n  \"aamaadmiparty</w>\": 46406,\n  \"aamir</w>\": 27456,\n  \"aan\": 20705,\n  \"aan</w>\": 13426,\n  \"aand\": 38054,\n  \"aap\": 12023,\n  \"aap</w>\": 12052,\n  \"aapl</w>\": 34516,\n  \"aar\": 4695,\n  \"aar</w>\": 13234,\n  \"aard\": 46932,\n  \"aaron\": 13948,\n  \"aaron</w>\": 7709,\n  \"aas\": 28542,\n  \"aas</w>\": 32205,\n  \"aat\": 34018,\n  \"aat</w>\": 35004,\n  \"aau</w>\": 35426,\n  \"aay\": 38281,\n  \"aay</w>\": 40249,\n  \"aaz</w>\": 26770,\n  \"ab\": 596,\n  \"ab</w>\": 3937,\n  \"aba\": 44204,\n  \"aba</w>\": 11102,\n  \"abad\": 33444,\n  \"abad</w>\": 7155,\n  \"aban\": 41662,\n  \"aband\": 8595,\n  \"abandon</w>\": 28805,\n  \"abandoned</w>\": 11227,\n  \"abar\": 17860,\n  \"abar</w>\": 39805,\n  \"abas\": 25402,\n  \"abay</w>\": 43542,\n  \"abb\": 38954,\n  \"abb</w>\": 38297,\n  \"abba</w>\": 30870,\n  \"abbas\": 37494,\n  \"abbas</w>\": 24412,\n  \"abbey\": 31927,\n  \"abbey</w>\": 10132,\n  \"abbie</w>\": 39949,\n  \"abbo\": 13536,\n  \"abbot</w>\": 44046,\n  \"abbott\": 43737,\n  \"abbott</w>\": 15649,\n  \"abbrevi\": 44843,\n  \"abby\": 30586,\n  \"abby</w>\": 14694,\n  \"abc\": 13137,\n  \"abc</w>\": 5334,\n  \"abcnews</w>\": 31566,\n  \"abd</w>\": 44093,\n  \"abdel\": 46511,\n  \"abdomin\": 35335,\n  \"abdominal</w>\": 39328,\n  \"abdu\": 13361,\n  \"abduc\": 17884,\n  \"abducted</w>\": 31520,\n  \"abduction</w>\": 36984,\n  \"abdul\": 14227,\n  \"abdul</w>\": 15593,\n  \"abdullah</w>\": 21317,\n  \"abe\": 15856,\n  \"abe</w>\": 12734,\n  \"abee</w>\": 36037,\n  \"abel\": 31938,\n  \"abel</w>\": 25318,\n  \"abella</w>\": 46156,\n  \"aben\": 40865,\n  \"aber\": 7828,\n  \"aber</w>\": 41867,\n  \"aberdeen\": 30539,\n  \"aberdeen</w>\": 17236,\n  \"abh\": 27484,\n  \"abh</w>\": 33649,\n  \"abhcosmetics</w>\": 49189,\n  \"abhi\": 18113,\n  \"abhin\": 44045,\n  \"abhishek</w>\": 44502,\n  \"abi\": 16867,\n  \"abi</w>\": 14161,\n  \"abia</w>\": 48604,\n  \"abide</w>\": 49163,\n  \"abig\": 20863,\n  \"abigail</w>\": 25686,\n  \"abil\": 21135,\n  \"abilities</w>\": 8724,\n  \"ability\": 35146,\n  \"ability</w>\": 3024,\n  \"abit</w>\": 48668,\n  \"ablanc\": 33716,\n  \"able\": 10102,\n  \"able</w>\": 863,\n  \"abled</w>\": 10655,\n  \"ableg</w>\": 24055,\n  \"ables</w>\": 8486,\n  \"ableton</w>\": 47169,\n  \"ably</w>\": 6748,\n  \"abnormal</w>\": 40934,\n  \"abo\": 2889,\n  \"abo</w>\": 21861,\n  \"aboard</w>\": 11661,\n  \"abol\": 31768,\n  \"abolic</w>\": 46827,\n  \"abolish</w>\": 47403,\n  \"aboo</w>\": 42433,\n  \"abor\": 8416,\n  \"aboriginal</w>\": 20422,\n  \"abortion</w>\": 12336,\n  \"abortions</w>\": 43218,\n  \"aboss</w>\": 46401,\n  \"abou\": 36455,\n  \"abou</w>\": 44053,\n  \"abound</w>\": 41037,\n  \"abour</w>\": 46637,\n  \"about\": 20204,\n  \"about</w>\": 781,\n  \"abouts</w>\": 36339,\n  \"above\": 35019,\n  \"above</w>\": 4348,\n  \"aboy</w>\": 37077,\n  \"abpoli</w>\": 44779,\n  \"abq</w>\": 38767,\n  \"abr\": 44932,\n  \"abra\": 10694,\n  \"abra</w>\": 35087,\n  \"abraham\": 40623,\n  \"abraham</w>\": 15869,\n  \"abram\": 33255,\n  \"abrams</w>\": 29852,\n  \"abre\": 22472,\n  \"abre</w>\": 46756,\n  \"abri\": 28605,\n  \"abridged</w>\": 45333,\n  \"abroad</w>\": 11253,\n  \"abru\": 46295,\n  \"abs\": 18431,\n  \"abs</w>\": 11109,\n  \"absc\": 25389,\n  \"abscbn\": 44260,\n  \"abscbn</w>\": 45810,\n  \"absen\": 32453,\n  \"absence</w>\": 19240,\n  \"absent</w>\": 30363,\n  \"absol\": 4624,\n  \"absolu\": 7055,\n  \"absolut\": 4666,\n  \"absolute</w>\": 7501,\n  \"absolutely</w>\": 4703,\n  \"absor\": 14303,\n  \"absorb</w>\": 35806,\n  \"absorbed</w>\": 45059,\n  \"absorbing</w>\": 46412,\n  \"absorption</w>\": 42210,\n  \"abstr\": 7530,\n  \"abstract\": 23885,\n  \"abstract</w>\": 10197,\n  \"abstractart</w>\": 31170,\n  \"abstraction</w>\": 47696,\n  \"abstracts</w>\": 40065,\n  \"absur\": 21639,\n  \"absurd</w>\": 29757,\n  \"abt</w>\": 9850,\n  \"abu\": 9167,\n  \"abu</w>\": 11787,\n  \"abud\": 20180,\n  \"abudha\": 21450,\n  \"abudhabi</w>\": 25256,\n  \"abuja</w>\": 23371,\n  \"abun\": 20544,\n  \"abundance</w>\": 23236,\n  \"abundant</w>\": 31611,\n  \"abur\": 23377,\n  \"aburger</w>\": 46660,\n  \"abuse</w>\": 7678,\n  \"abused</w>\": 23855,\n  \"abuses</w>\": 37132,\n  \"abusing</w>\": 36558,\n  \"abusive</w>\": 26858,\n  \"abv</w>\": 34172,\n  \"aby\": 16342,\n  \"aby</w>\": 31378,\n  \"abyss</w>\": 33632,\n  \"abz</w>\": 42292,\n  \"ac\": 546,\n  \"ac</w>\": 2816,\n  \"aca</w>\": 9213,\n  \"acab\": 41388,\n  \"acacia</w>\": 44047,\n  \"acad</w>\": 32537,\n  \"acade\": 2892,\n  \"academia</w>\": 22662,\n  \"academic\": 31178,\n  \"academic</w>\": 7935,\n  \"academics</w>\": 26417,\n  \"academies</w>\": 42569,\n  \"academy\": 29968,\n  \"academy</w>\": 4041,\n  \"acadi\": 41455,\n  \"acadia</w>\": 49236,\n  \"acam\": 26172,\n  \"acan\": 42227,\n  \"acan</w>\": 26318,\n  \"acap\": 32357,\n  \"acar\": 22232,\n  \"acare</w>\": 16961,\n  \"acc\": 26805,\n  \"acc</w>\": 9318,\n  \"acca</w>\": 30883,\n  \"acce\": 8564,\n  \"acceler\": 10161,\n  \"accelerate</w>\": 23619,\n  \"accelerated</w>\": 38513,\n  \"accelerating</w>\": 41821,\n  \"acceleration</w>\": 39387,\n  \"accelerator</w>\": 25261,\n  \"accent\": 28110,\n  \"accent</w>\": 18931,\n  \"accents</w>\": 31738,\n  \"accenture</w>\": 41853,\n  \"accep\": 4616,\n  \"accept\": 16447,\n  \"accept</w>\": 9338,\n  \"acceptable</w>\": 14209,\n  \"acceptance</w>\": 17090,\n  \"accepted</w>\": 9159,\n  \"accepting</w>\": 12855,\n  \"accepts</w>\": 22338,\n  \"access\": 7596,\n  \"access</w>\": 3822,\n  \"accessi\": 10787,\n  \"accessibility</w>\": 23407,\n  \"accessible</w>\": 13977,\n  \"accessing</w>\": 46339,\n  \"accessories</w>\": 10220,\n  \"accessory</w>\": 20417,\n  \"acci\": 4263,\n  \"acci</w>\": 33943,\n  \"accident</w>\": 6608,\n  \"accidental</w>\": 24895,\n  \"accidentally</w>\": 11061,\n  \"accidents</w>\": 22072,\n  \"acclaimed</w>\": 21172,\n  \"acco</w>\": 44730,\n  \"accol\": 33858,\n  \"accolades</w>\": 46731,\n  \"accom\": 23658,\n  \"accommo\": 34495,\n  \"accommod\": 14386,\n  \"accommodate</w>\": 34708,\n  \"accommodation</w>\": 18066,\n  \"accommodations</w>\": 45536,\n  \"accomp\": 24985,\n  \"accompan\": 14746,\n  \"accompanied</w>\": 20715,\n  \"accompany</w>\": 34142,\n  \"accompanying</w>\": 38179,\n  \"accompli\": 10205,\n  \"accomplish</w>\": 25542,\n  \"accomplished</w>\": 16462,\n  \"accomplishment</w>\": 26100,\n  \"accomplishments</w>\": 24965,\n  \"accor\": 4182,\n  \"accord\": 34293,\n  \"accord</w>\": 28513,\n  \"according</w>\": 4717,\n  \"accordingly</w>\": 35535,\n  \"accordion</w>\": 48760,\n  \"accoun\": 3081,\n  \"account\": 18424,\n  \"account</w>\": 4684,\n  \"accountability</w>\": 19377,\n  \"accountable</w>\": 24216,\n  \"accountant</w>\": 31026,\n  \"accountants</w>\": 37222,\n  \"accounted</w>\": 43951,\n  \"accounting</w>\": 14805,\n  \"accounts</w>\": 9974,\n  \"accra</w>\": 31900,\n  \"accred\": 17451,\n  \"accreditation</w>\": 27015,\n  \"accredited</w>\": 27647,\n  \"acct</w>\": 45569,\n  \"accu\": 5618,\n  \"accumul\": 19275,\n  \"accumulation</w>\": 37112,\n  \"accur\": 6551,\n  \"accuracy</w>\": 18423,\n  \"accurate</w>\": 8858,\n  \"accurately</w>\": 24206,\n  \"accusations</w>\": 33615,\n  \"accuse</w>\": 39414,\n  \"accused</w>\": 9434,\n  \"accuses</w>\": 27496,\n  \"accusing</w>\": 41474,\n  \"acdc</w>\": 45067,\n  \"ace\": 2675,\n  \"ace</w>\": 804,\n  \"acea</w>\": 35219,\n  \"aceae</w>\": 38153,\n  \"acele\": 40868,\n  \"aceous</w>\": 33610,\n  \"acer\": 37990,\n  \"acer</w>\": 25809,\n  \"aces</w>\": 5725,\n  \"acet\": 28735,\n  \"acf</w>\": 38389,\n  \"ach\": 972,\n  \"ach</w>\": 987,\n  \"acha</w>\": 22686,\n  \"acharya</w>\": 45780,\n  \"achat</w>\": 32706,\n  \"ache\": 27771,\n  \"ache</w>\": 7214,\n  \"ached</w>\": 17048,\n  \"acher\": 38442,\n  \"acher</w>\": 17936,\n  \"achers</w>\": 25051,\n  \"aches</w>\": 14823,\n  \"achi\": 3264,\n  \"achi</w>\": 9087,\n  \"achiev\": 8160,\n  \"achieve\": 14798,\n  \"achieve</w>\": 8175,\n  \"achieved</w>\": 12359,\n  \"achievement</w>\": 8245,\n  \"achievements</w>\": 16114,\n  \"achiever</w>\": 46286,\n  \"achievers</w>\": 44544,\n  \"achieves</w>\": 40123,\n  \"achieving</w>\": 16120,\n  \"achilles</w>\": 33327,\n  \"achim</w>\": 42335,\n  \"aching</w>\": 12864,\n  \"acho</w>\": 33130,\n  \"achs</w>\": 41195,\n  \"aci\": 4359,\n  \"aci</w>\": 34100,\n  \"acia</w>\": 30163,\n  \"acial</w>\": 32422,\n  \"acid\": 35474,\n  \"acid</w>\": 10085,\n  \"acidity</w>\": 48800,\n  \"acids</w>\": 27751,\n  \"acies</w>\": 20162,\n  \"acin\": 39442,\n  \"acing</w>\": 9442,\n  \"acio</w>\": 26202,\n  \"acion\": 44965,\n  \"acion</w>\": 24968,\n  \"acional</w>\": 26435,\n  \"aciones</w>\": 35832,\n  \"acious</w>\": 16020,\n  \"acity</w>\": 7511,\n  \"aciÃ³n</w>\": 38175,\n  \"ack\": 877,\n  \"ack</w>\": 725,\n  \"acked</w>\": 5698,\n  \"acker\": 31201,\n  \"acker</w>\": 7940,\n  \"ackeray</w>\": 41843,\n  \"acki</w>\": 42857,\n  \"acking</w>\": 5515,\n  \"ackles</w>\": 28503,\n  \"acknow\": 13563,\n  \"acknowle\": 18100,\n  \"acknowledge</w>\": 25209,\n  \"acknowledged</w>\": 35913,\n  \"acknowledges</w>\": 49083,\n  \"acknowledging</w>\": 45645,\n  \"acks</w>\": 3858,\n  \"acl\": 47593,\n  \"acl</w>\": 23073,\n  \"acle</w>\": 6504,\n  \"acles</w>\": 34164,\n  \"aclu</w>\": 37354,\n  \"acm</w>\": 39317,\n  \"acmilan</w>\": 36500,\n  \"acne</w>\": 24195,\n  \"aco\": 9463,\n  \"aco</w>\": 8800,\n  \"acol\": 17431,\n  \"acollege</w>\": 43468,\n  \"acom\": 17224,\n  \"acom</w>\": 22342,\n  \"acon\": 11621,\n  \"acon</w>\": 11571,\n  \"aconf</w>\": 38851,\n  \"acons</w>\": 31599,\n  \"acor\": 22076,\n  \"acorn</w>\": 37537,\n  \"acos</w>\": 39943,\n  \"acosta</w>\": 31994,\n  \"acou\": 8794,\n  \"acoun\": 31295,\n  \"acounty</w>\": 45449,\n  \"acoustic</w>\": 10616,\n  \"acoustics</w>\": 43873,\n  \"acp</w>\": 19627,\n  \"acqu\": 7946,\n  \"acquainted</w>\": 40713,\n  \"acqui\": 12194,\n  \"acquire</w>\": 21576,\n  \"acquired</w>\": 15932,\n  \"acquires</w>\": 27376,\n  \"acquiring</w>\": 42785,\n  \"acquis\": 14207,\n  \"acquisition</w>\": 16543,\n  \"acquisitions</w>\": 39649,\n  \"acr</w>\": 43648,\n  \"acre\": 26749,\n  \"acre</w>\": 9493,\n  \"acres</w>\": 11630,\n  \"acro\": 21060,\n  \"acrob\": 40891,\n  \"acron\": 37770,\n  \"across</w>\": 2500,\n  \"acrosse</w>\": 40979,\n  \"acruz</w>\": 40455,\n  \"acry\": 10440,\n  \"acrylic</w>\": 12252,\n  \"acs</w>\": 11782,\n  \"act\": 10305,\n  \"act</w>\": 1393,\n  \"acted</w>\": 10971,\n  \"acti\": 4786,\n  \"acting</w>\": 6319,\n  \"action\": 12493,\n  \"action</w>\": 1816,\n  \"actions</w>\": 6271,\n  \"activ\": 3430,\n  \"activate</w>\": 26737,\n  \"activated</w>\": 22249,\n  \"activation</w>\": 26769,\n  \"active\": 19009,\n  \"active</w>\": 4046,\n  \"actively</w>\": 18645,\n  \"activi\": 7230,\n  \"activism</w>\": 20117,\n  \"activist</w>\": 10850,\n  \"activists</w>\": 12649,\n  \"activities</w>\": 6514,\n  \"activity</w>\": 6206,\n  \"actment</w>\": 44807,\n  \"acton\": 36167,\n  \"acton</w>\": 36697,\n  \"actonclimate</w>\": 43797,\n  \"actor\": 12181,\n  \"actor</w>\": 4035,\n  \"actors</w>\": 9255,\n  \"actorslife</w>\": 25117,\n  \"actorvijay</w>\": 34033,\n  \"actress</w>\": 5805,\n  \"actresses</w>\": 33639,\n  \"acts</w>\": 6816,\n  \"actu\": 2375,\n  \"actual</w>\": 7488,\n  \"actually</w>\": 2955,\n  \"acu\": 9204,\n  \"acu</w>\": 48475,\n  \"aculture</w>\": 38145,\n  \"acup\": 30869,\n  \"acup</w>\": 27278,\n  \"acupuncture</w>\": 40043,\n  \"acur\": 44719,\n  \"acura</w>\": 30120,\n  \"acus</w>\": 33710,\n  \"acute</w>\": 19734,\n  \"acy\": 18717,\n  \"acy</w>\": 2356,\n  \"ad\": 594,\n  \"ad</w>\": 680,\n  \"ada\": 25785,\n  \"ada</w>\": 1886,\n  \"adaily</w>\": 47254,\n  \"adal\": 46646,\n  \"adam\": 6037,\n  \"adam</w>\": 4944,\n  \"adamlambert</w>\": 27659,\n  \"adams</w>\": 7942,\n  \"adan</w>\": 41802,\n  \"adani</w>\": 37499,\n  \"adap\": 6341,\n  \"adapt</w>\": 22666,\n  \"adaptation</w>\": 16566,\n  \"adapted</w>\": 26657,\n  \"adapter</w>\": 21839,\n  \"adapting</w>\": 44120,\n  \"adaptive</w>\": 28672,\n  \"adar\": 27702,\n  \"adar</w>\": 32681,\n  \"adas</w>\": 23250,\n  \"adata</w>\": 39500,\n  \"aday\": 31367,\n  \"aday</w>\": 10280,\n  \"adays</w>\": 24337,\n  \"adb</w>\": 45630,\n  \"adc</w>\": 38201,\n  \"add\": 19408,\n  \"add</w>\": 3536,\n  \"addams</w>\": 38912,\n  \"added</w>\": 4149,\n  \"adder</w>\": 47557,\n  \"addi</w>\": 36378,\n  \"addic\": 5709,\n  \"addict</w>\": 14614,\n  \"addicted</w>\": 16275,\n  \"addiction</w>\": 11751,\n  \"addictive</w>\": 29638,\n  \"addicts</w>\": 29997,\n  \"adding</w>\": 8676,\n  \"addis</w>\": 43911,\n  \"addison</w>\": 32369,\n  \"additi\": 26927,\n  \"addition</w>\": 6698,\n  \"additional</w>\": 10666,\n  \"additions</w>\": 22575,\n  \"additive</w>\": 48546,\n  \"addo</w>\": 40001,\n  \"address</w>\": 5834,\n  \"addressed</w>\": 20817,\n  \"addresses</w>\": 12702,\n  \"addressing</w>\": 10594,\n  \"adds</w>\": 9944,\n  \"addy</w>\": 24746,\n  \"ade\": 2194,\n  \"ade</w>\": 1928,\n  \"adecides</w>\": 46374,\n  \"aded</w>\": 9994,\n  \"adee</w>\": 47054,\n  \"adel\": 4434,\n  \"adel</w>\": 27308,\n  \"adelaide\": 38193,\n  \"adelaide</w>\": 11611,\n  \"adele\": 42843,\n  \"adele</w>\": 21220,\n  \"adelrey</w>\": 43627,\n  \"ademy</w>\": 49123,\n  \"aden\": 28669,\n  \"aden</w>\": 28688,\n  \"adena</w>\": 23648,\n  \"adequ\": 18232,\n  \"adequate</w>\": 22281,\n  \"ader</w>\": 21365,\n  \"adero</w>\": 49185,\n  \"aders</w>\": 27672,\n  \"ades</w>\": 5793,\n  \"adh</w>\": 42301,\n  \"adhd</w>\": 32649,\n  \"adhe\": 21175,\n  \"adhesive</w>\": 38429,\n  \"adi\": 2486,\n  \"adi</w>\": 8779,\n  \"adia</w>\": 26874,\n  \"adic</w>\": 36780,\n  \"adid\": 8086,\n  \"adidas\": 22396,\n  \"adidas</w>\": 9589,\n  \"adidasoriginals</w>\": 48575,\n  \"adies</w>\": 45834,\n  \"adifference</w>\": 37217,\n  \"adilla</w>\": 41167,\n  \"ading</w>\": 15000,\n  \"adio</w>\": 15060,\n  \"adirond\": 36843,\n  \"adish</w>\": 49009,\n  \"adity\": 28596,\n  \"aditya</w>\": 37186,\n  \"adityanath</w>\": 44437,\n  \"adjac\": 32517,\n  \"adjacent</w>\": 33836,\n  \"adjec\": 45512,\n  \"adju\": 16413,\n  \"adjun\": 45995,\n  \"adjust\": 13784,\n  \"adjust</w>\": 28073,\n  \"adjustable</w>\": 20476,\n  \"adjusted</w>\": 30515,\n  \"adjusting</w>\": 41132,\n  \"adjustment</w>\": 36081,\n  \"adjustments</w>\": 36331,\n  \"adl</w>\": 49351,\n  \"adler</w>\": 30222,\n  \"adm\": 9892,\n  \"adm</w>\": 33604,\n  \"admi\": 11666,\n  \"admin</w>\": 12528,\n  \"admini\": 6434,\n  \"administr\": 12174,\n  \"administration</w>\": 9502,\n  \"administrative</w>\": 22424,\n  \"administrator</w>\": 22603,\n  \"administrators</w>\": 36123,\n  \"admins</w>\": 49297,\n  \"admir\": 17031,\n  \"admiral</w>\": 21013,\n  \"admiration</w>\": 39569,\n  \"admire</w>\": 17791,\n  \"admired</w>\": 36103,\n  \"admirer</w>\": 48344,\n  \"admiring</w>\": 29835,\n  \"admission</w>\": 11315,\n  \"admissions</w>\": 22463,\n  \"admit</w>\": 13769,\n  \"admits</w>\": 16332,\n  \"admitted</w>\": 20427,\n  \"admitting</w>\": 46148,\n  \"adn</w>\": 40339,\n  \"adnan</w>\": 42037,\n  \"ado\": 4775,\n  \"ado</w>\": 2933,\n  \"adobe\": 29256,\n  \"adobe</w>\": 16484,\n  \"adog</w>\": 44913,\n  \"adol\": 33512,\n  \"adole\": 22704,\n  \"adolescent</w>\": 36793,\n  \"adolescents</w>\": 45656,\n  \"adolf</w>\": 41179,\n  \"adon\": 25907,\n  \"adona</w>\": 48419,\n  \"adop\": 4183,\n  \"adopt\": 16441,\n  \"adopt</w>\": 11159,\n  \"adoptable</w>\": 36905,\n  \"adoptdont\": 19674,\n  \"adoptdontshop</w>\": 20089,\n  \"adopted</w>\": 12538,\n  \"adopting</w>\": 30158,\n  \"adoption</w>\": 11544,\n  \"adopts</w>\": 40853,\n  \"ador\": 4992,\n  \"ador</w>\": 9162,\n  \"adora</w>\": 40031,\n  \"adorable</w>\": 6298,\n  \"adoration</w>\": 46781,\n  \"adore</w>\": 15502,\n  \"adored</w>\": 49233,\n  \"adores</w>\": 30290,\n  \"adorned</w>\": 44953,\n  \"ados</w>\": 20079,\n  \"adox</w>\": 32188,\n  \"adp</w>\": 44426,\n  \"adr</w>\": 46189,\n  \"adren\": 24204,\n  \"adrenaline</w>\": 35552,\n  \"adri\": 5935,\n  \"adrian\": 25012,\n  \"adrian</w>\": 13163,\n  \"adriana</w>\": 41363,\n  \"adrid</w>\": 26562,\n  \"adrien</w>\": 47469,\n  \"adrienne</w>\": 40081,\n  \"ads</w>\": 2485,\n  \"adu\": 16882,\n  \"adu</w>\": 24446,\n  \"adukone</w>\": 30511,\n  \"adul\": 7222,\n  \"adult\": 42209,\n  \"adult</w>\": 7115,\n  \"adulthood</w>\": 40964,\n  \"adults</w>\": 9391,\n  \"adv\": 1647,\n  \"adv</w>\": 21018,\n  \"advan\": 33411,\n  \"advance\": 27291,\n  \"advance</w>\": 7022,\n  \"advanced</w>\": 7465,\n  \"advancement</w>\": 35437,\n  \"advances</w>\": 15852,\n  \"advancing</w>\": 21355,\n  \"advani</w>\": 48189,\n  \"advant\": 7017,\n  \"advantage</w>\": 8573,\n  \"advantaged</w>\": 38361,\n  \"advantages</w>\": 23506,\n  \"adven\": 41670,\n  \"advent\": 3071,\n  \"advent</w>\": 15199,\n  \"adventcalendar</w>\": 43492,\n  \"adventur\": 29627,\n  \"adventure\": 17251,\n  \"adventure</w>\": 4377,\n  \"adventurer</w>\": 48098,\n  \"adventures</w>\": 7941,\n  \"adventurous</w>\": 31179,\n  \"adver\": 4806,\n  \"adverse</w>\": 30348,\n  \"adversity</w>\": 32516,\n  \"advert</w>\": 19080,\n  \"adverti\": 5682,\n  \"advertise</w>\": 31473,\n  \"advertised</w>\": 38987,\n  \"advertisement</w>\": 18713,\n  \"advertiser</w>\": 41829,\n  \"advertisers</w>\": 45472,\n  \"advertising</w>\": 8158,\n  \"adverts</w>\": 44306,\n  \"advice</w>\": 4973,\n  \"advis\": 4634,\n  \"advise</w>\": 25962,\n  \"advised</w>\": 23196,\n  \"adviser</w>\": 20367,\n  \"advisers</w>\": 40984,\n  \"advises</w>\": 42761,\n  \"advising</w>\": 39648,\n  \"advisor</w>\": 12380,\n  \"advisors</w>\": 23197,\n  \"advisory</w>\": 10224,\n  \"advoc\": 6657,\n  \"advocacy</w>\": 14443,\n  \"advocate</w>\": 12044,\n  \"advocates</w>\": 17757,\n  \"adwords</w>\": 48343,\n  \"ady\": 41446,\n  \"ady</w>\": 8781,\n  \"ae\": 5548,\n  \"ae</w>\": 4542,\n  \"aea</w>\": 37048,\n  \"aed</w>\": 26912,\n  \"aege\": 42304,\n  \"ael\": 41533,\n  \"ael</w>\": 43340,\n  \"aen\": 43085,\n  \"aer\": 10195,\n  \"aeri\": 27685,\n  \"aerial\": 44866,\n  \"aerial</w>\": 12440,\n  \"aero\": 10196,\n  \"aero</w>\": 25026,\n  \"aerob\": 42824,\n  \"aeron\": 37286,\n  \"aeronau\": 42816,\n  \"aerop\": 27735,\n  \"aerosmith</w>\": 43253,\n  \"aerospace</w>\": 20530,\n  \"aes\": 10617,\n  \"aes</w>\": 35677,\n  \"aest</w>\": 40694,\n  \"aesthe\": 21181,\n  \"aesthetic</w>\": 16179,\n  \"aesthetics</w>\": 29295,\n  \"aew</w>\": 47108,\n  \"af\": 702,\n  \"af</w>\": 4391,\n  \"afa</w>\": 24953,\n  \"afan\": 47474,\n  \"afar\": 41637,\n  \"afar</w>\": 37866,\n  \"afb</w>\": 27022,\n  \"afc\": 29742,\n  \"afc</w>\": 6571,\n  \"afcb</w>\": 44276,\n  \"afcon</w>\": 30019,\n  \"afd</w>\": 44626,\n  \"afe\": 30487,\n  \"afe</w>\": 13912,\n  \"afer\": 44707,\n  \"aff\": 8849,\n  \"aff</w>\": 14864,\n  \"affair</w>\": 13998,\n  \"affairs</w>\": 9830,\n  \"affe\": 4556,\n  \"affect</w>\": 11361,\n  \"affected</w>\": 9715,\n  \"affecting</w>\": 18448,\n  \"affection\": 33780,\n  \"affection</w>\": 28381,\n  \"affectionate</w>\": 42578,\n  \"affects</w>\": 17285,\n  \"affili\": 12120,\n  \"affiliate</w>\": 18652,\n  \"affiliated</w>\": 37540,\n  \"affiliation</w>\": 48377,\n  \"affinity</w>\": 41451,\n  \"affir\": 25343,\n  \"affirm\": 42711,\n  \"affirm</w>\": 48625,\n  \"affirmation</w>\": 47495,\n  \"affl\": 34036,\n  \"affleck</w>\": 35584,\n  \"afford\": 7951,\n  \"afford</w>\": 13223,\n  \"affordability</w>\": 44828,\n  \"affordable\": 43944,\n  \"affordable</w>\": 8926,\n  \"afg</w>\": 33994,\n  \"afgh\": 9029,\n  \"afghan</w>\": 15919,\n  \"afghanistan</w>\": 9836,\n  \"afi\": 24074,\n  \"afi</w>\": 31958,\n  \"afil\": 27209,\n  \"afire</w>\": 42010,\n  \"afirst</w>\": 38601,\n  \"afl\": 15132,\n  \"afl</w>\": 14356,\n  \"aflo\": 41959,\n  \"afm</w>\": 38385,\n  \"afootball</w>\": 41694,\n  \"afor\": 43102,\n  \"afore\": 41468,\n  \"afp</w>\": 18311,\n  \"afraid</w>\": 9474,\n  \"afri\": 13888,\n  \"afric\": 2136,\n  \"africa</w>\": 3093,\n  \"african\": 17471,\n  \"african</w>\": 4736,\n  \"africans</w>\": 26534,\n  \"afridi</w>\": 37651,\n  \"afrika</w>\": 45833,\n  \"afrin</w>\": 45586,\n  \"afro\": 16267,\n  \"afro</w>\": 21795,\n  \"afs</w>\": 48960,\n  \"aft</w>\": 22693,\n  \"after\": 2278,\n  \"after</w>\": 953,\n  \"afterdark</w>\": 48966,\n  \"afterlife</w>\": 46790,\n  \"aftermath</w>\": 20958,\n  \"afterno\": 22330,\n  \"afternoon\": 39035,\n  \"afternoon</w>\": 2716,\n  \"afternoons</w>\": 31631,\n  \"afterparty</w>\": 35305,\n  \"afterwards</w>\": 23911,\n  \"ag\": 602,\n  \"ag</w>\": 5241,\n  \"aga\": 1050,\n  \"aga</w>\": 4654,\n  \"again</w>\": 1495,\n  \"against\": 23838,\n  \"against</w>\": 1601,\n  \"agame</w>\": 46943,\n  \"agan\": 42946,\n  \"agan</w>\": 9178,\n  \"agar\": 13199,\n  \"agar</w>\": 17544,\n  \"agarwal</w>\": 43117,\n  \"agas\": 20430,\n  \"agate</w>\": 25454,\n  \"agatha</w>\": 43896,\n  \"agave</w>\": 42671,\n  \"agawa</w>\": 39433,\n  \"agazine</w>\": 44942,\n  \"age\": 4758,\n  \"age</w>\": 805,\n  \"aged</w>\": 3889,\n  \"ageing</w>\": 25349,\n  \"agen\": 10101,\n  \"agen</w>\": 43696,\n  \"agencies</w>\": 13887,\n  \"agency\": 44885,\n  \"agency</w>\": 6270,\n  \"agend\": 48653,\n  \"agenda</w>\": 8728,\n  \"agent\": 21210,\n  \"agent</w>\": 6576,\n  \"agents</w>\": 10199,\n  \"agentsof\": 37074,\n  \"agentsofshield</w>\": 38801,\n  \"ager\": 44847,\n  \"ager</w>\": 10443,\n  \"agers</w>\": 22123,\n  \"ages</w>\": 2321,\n  \"agg</w>\": 45482,\n  \"aggarwal</w>\": 39386,\n  \"agger\": 27836,\n  \"aggi\": 36844,\n  \"aggie\": 44244,\n  \"aggie</w>\": 37618,\n  \"aggies</w>\": 31047,\n  \"aggio</w>\": 36685,\n  \"aggrav\": 35203,\n  \"aggre\": 10426,\n  \"aggreg\": 41968,\n  \"aggregate</w>\": 41318,\n  \"aggression</w>\": 28900,\n  \"aggressive</w>\": 16295,\n  \"aggressively</w>\": 48667,\n  \"agh\": 17917,\n  \"agh</w>\": 14402,\n  \"aghan</w>\": 31276,\n  \"agi\": 24036,\n  \"agi</w>\": 17645,\n  \"agic</w>\": 37652,\n  \"agile</w>\": 16276,\n  \"agility</w>\": 32161,\n  \"aging</w>\": 4336,\n  \"agio</w>\": 41746,\n  \"agirl</w>\": 35469,\n  \"agle\": 37035,\n  \"agle</w>\": 16702,\n  \"agles\": 36374,\n  \"agles</w>\": 22679,\n  \"aglia</w>\": 46912,\n  \"agm</w>\": 19162,\n  \"agn\": 36474,\n  \"agna</w>\": 43626,\n  \"agne\": 29374,\n  \"agne</w>\": 48303,\n  \"agnes</w>\": 26213,\n  \"agno\": 41540,\n  \"ago\": 6276,\n  \"ago</w>\": 1468,\n  \"agomez</w>\": 27127,\n  \"agon\": 26775,\n  \"agon</w>\": 14901,\n  \"agony</w>\": 36977,\n  \"agor\": 38920,\n  \"agos</w>\": 32657,\n  \"agov</w>\": 34227,\n  \"agp</w>\": 46048,\n  \"agr\": 36639,\n  \"agra\": 26660,\n  \"agra</w>\": 29830,\n  \"agram</w>\": 2447,\n  \"agre\": 3180,\n  \"agreat\": 37594,\n  \"agree</w>\": 5953,\n  \"agreed</w>\": 12774,\n  \"agreeing</w>\": 40720,\n  \"agreement</w>\": 8286,\n  \"agreements</w>\": 25865,\n  \"agrees</w>\": 17854,\n  \"agri\": 20527,\n  \"agri</w>\": 30326,\n  \"agricul\": 7234,\n  \"agricultural</w>\": 15440,\n  \"agriculture</w>\": 9720,\n  \"agro\": 33178,\n  \"agro</w>\": 44589,\n  \"agron\": 41314,\n  \"agroup</w>\": 40099,\n  \"ags</w>\": 16926,\n  \"agt</w>\": 39681,\n  \"agu\": 3922,\n  \"agu</w>\": 36544,\n  \"agua</w>\": 18482,\n  \"aguchi</w>\": 49206,\n  \"ague</w>\": 2095,\n  \"aguero</w>\": 42964,\n  \"agues</w>\": 7000,\n  \"aguil\": 27946,\n  \"aguilar</w>\": 44715,\n  \"ah\": 1772,\n  \"ah</w>\": 1288,\n  \"aha\": 12082,\n  \"aha</w>\": 8429,\n  \"ahah</w>\": 38661,\n  \"ahaha</w>\": 32423,\n  \"ahahaha</w>\": 42620,\n  \"aham\": 36036,\n  \"ahan\": 45061,\n  \"ahan</w>\": 19255,\n  \"ahar\": 31038,\n  \"ahar</w>\": 38760,\n  \"ahe\": 27688,\n  \"ahead</w>\": 3158,\n  \"ahem</w>\": 39995,\n  \"ahh</w>\": 13152,\n  \"ahhh</w>\": 14769,\n  \"ahhhh</w>\": 21054,\n  \"ahhhhh</w>\": 36392,\n  \"ahi\": 45349,\n  \"ahi</w>\": 24154,\n  \"ahl</w>\": 30433,\n  \"ahmad\": 32167,\n  \"ahmad</w>\": 16902,\n  \"ahmadi\": 38656,\n  \"ahmadiyya</w>\": 44865,\n  \"ahmed\": 19491,\n  \"ahmed</w>\": 12081,\n  \"ahmedabad</w>\": 26966,\n  \"ahn</w>\": 33405,\n  \"aho\": 28114,\n  \"aho</w>\": 38444,\n  \"ahora</w>\": 43113,\n  \"ahouse</w>\": 33197,\n  \"ahoy</w>\": 38652,\n  \"ahs</w>\": 16937,\n  \"ahu\": 11908,\n  \"ahu</w>\": 16515,\n  \"ai\": 2014,\n  \"ai</w>\": 2215,\n  \"aia</w>\": 27046,\n  \"aib</w>\": 34780,\n  \"aic\": 29454,\n  \"aid\": 13723,\n  \"aid</w>\": 5182,\n  \"aida</w>\": 33830,\n  \"aidan\": 48814,\n  \"aidan</w>\": 26945,\n  \"aide\": 31558,\n  \"aide</w>\": 9746,\n  \"aided</w>\": 48707,\n  \"aiden</w>\": 40020,\n  \"aides</w>\": 49082,\n  \"aids</w>\": 11759,\n  \"aig\": 27295,\n  \"aig</w>\": 46989,\n  \"aii</w>\": 22478,\n  \"aik</w>\": 42575,\n  \"aiken</w>\": 46342,\n  \"ail\": 1457,\n  \"ail</w>\": 9154,\n  \"ailed</w>\": 38919,\n  \"ailing</w>\": 29999,\n  \"ails</w>\": 27024,\n  \"aim\": 6787,\n  \"aim</w>\": 11255,\n  \"aime</w>\": 39872,\n  \"aimed</w>\": 20247,\n  \"aimee</w>\": 36318,\n  \"aiming</w>\": 21768,\n  \"aimo</w>\": 36706,\n  \"aims</w>\": 13326,\n  \"ain\": 8326,\n  \"ain</w>\": 2210,\n  \"aine\": 48983,\n  \"aine</w>\": 17634,\n  \"ains</w>\": 27621,\n  \"aint\": 29543,\n  \"aint</w>\": 13099,\n  \"ainted</w>\": 39933,\n  \"aioli</w>\": 43949,\n  \"air\": 1281,\n  \"air</w>\": 1922,\n  \"aira\": 35085,\n  \"aira</w>\": 46444,\n  \"airasia</w>\": 48020,\n  \"airbnb</w>\": 23098,\n  \"airborne</w>\": 22755,\n  \"airbus</w>\": 15324,\n  \"aircraft</w>\": 7706,\n  \"airdrop</w>\": 38434,\n  \"aire</w>\": 7682,\n  \"aired</w>\": 21938,\n  \"aires</w>\": 17034,\n  \"airfield</w>\": 40525,\n  \"airforce</w>\": 23511,\n  \"airing</w>\": 20453,\n  \"airline</w>\": 14847,\n  \"airlines</w>\": 8929,\n  \"airmen</w>\": 44499,\n  \"airplane</w>\": 16451,\n  \"airplanes</w>\": 33319,\n  \"airplay</w>\": 47024,\n  \"airpollution</w>\": 47362,\n  \"airport\": 48337,\n  \"airport</w>\": 3259,\n  \"airports</w>\": 21543,\n  \"airs</w>\": 18539,\n  \"airshow</w>\": 27139,\n  \"airsoft</w>\": 30134,\n  \"airspace</w>\": 49280,\n  \"airstrikes</w>\": 37220,\n  \"airtel</w>\": 34784,\n  \"airtime</w>\": 46617,\n  \"airwaves</w>\": 43910,\n  \"airways</w>\": 14299,\n  \"airy</w>\": 44453,\n  \"ais\": 7616,\n  \"ais</w>\": 11393,\n  \"aise</w>\": 30505,\n  \"aish\": 21946,\n  \"aisha</w>\": 40211,\n  \"aishwar\": 29687,\n  \"aishwarya</w>\": 44019,\n  \"aisle</w>\": 26917,\n  \"ait\": 25613,\n  \"ait</w>\": 40814,\n  \"aj\": 3990,\n  \"aj</w>\": 6342,\n  \"aja\": 42343,\n  \"aja</w>\": 19633,\n  \"ajax</w>\": 21933,\n  \"ajay\": 22494,\n  \"ajay</w>\": 28726,\n  \"ajaydevgn</w>\": 35515,\n  \"aje\": 48818,\n  \"aje</w>\": 33315,\n  \"ajes</w>\": 38791,\n  \"aji\": 26102,\n  \"aji</w>\": 21153,\n  \"ajit</w>\": 42261,\n  \"ajith</w>\": 24118,\n  \"ajo</w>\": 26958,\n  \"aju\": 36855,\n  \"ak\": 819,\n  \"ak</w>\": 1196,\n  \"aka\": 19154,\n  \"aka</w>\": 3412,\n  \"akaif</w>\": 45736,\n  \"akan\": 43678,\n  \"akan</w>\": 38244,\n  \"akapoor</w>\": 40064,\n  \"akarta</w>\": 48603,\n  \"akb</w>\": 41962,\n  \"akbar</w>\": 27180,\n  \"ake\": 10558,\n  \"ake</w>\": 5776,\n  \"aked</w>\": 6115,\n  \"aker\": 14245,\n  \"aker</w>\": 3074,\n  \"akers</w>\": 5788,\n  \"akes</w>\": 4764,\n  \"akest</w>\": 46679,\n  \"akh\": 14821,\n  \"akh</w>\": 30660,\n  \"akhan</w>\": 28158,\n  \"akhi\": 41660,\n  \"akhilesh</w>\": 48495,\n  \"akhtar</w>\": 45458,\n  \"aki\": 18173,\n  \"aki</w>\": 6592,\n  \"akin\": 24630,\n  \"akin</w>\": 13601,\n  \"aking</w>\": 1809,\n  \"akins</w>\": 48568,\n  \"akira</w>\": 34001,\n  \"akis</w>\": 27732,\n  \"akistan</w>\": 46221,\n  \"akley</w>\": 39908,\n  \"ako\": 44027,\n  \"ako</w>\": 14541,\n  \"akon</w>\": 47105,\n  \"akos</w>\": 44659,\n  \"akrish\": 37434,\n  \"akron</w>\": 26115,\n  \"aks</w>\": 2953,\n  \"aksh\": 28226,\n  \"akshay\": 21483,\n  \"akshay</w>\": 38914,\n  \"akshaykumar</w>\": 23624,\n  \"akshi</w>\": 42634,\n  \"aku\": 18151,\n  \"aku</w>\": 20815,\n  \"aky</w>\": 11977,\n  \"al\": 526,\n  \"al</w>\": 566,\n  \"ala\": 12783,\n  \"ala</w>\": 3449,\n  \"alab\": 6365,\n  \"alabam\": 45880,\n  \"alabama</w>\": 8422,\n  \"alach\": 24622,\n  \"alad\": 23074,\n  \"aladdin</w>\": 29951,\n  \"alai</w>\": 47072,\n  \"alain</w>\": 28999,\n  \"alam\": 16612,\n  \"alam</w>\": 16012,\n  \"alamo\": 41922,\n  \"alamo</w>\": 34632,\n  \"alan\": 9563,\n  \"alan</w>\": 5773,\n  \"alana</w>\": 43405,\n  \"aland\": 34304,\n  \"aland</w>\": 6819,\n  \"alar\": 34333,\n  \"alarm</w>\": 11321,\n  \"alarming</w>\": 37209,\n  \"alarms</w>\": 31236,\n  \"alarts</w>\": 31422,\n  \"alas\": 7276,\n  \"alas</w>\": 22412,\n  \"alaska</w>\": 9562,\n  \"alaskan</w>\": 33898,\n  \"alastair</w>\": 42062,\n  \"alay\": 30289,\n  \"alay</w>\": 36450,\n  \"alaya</w>\": 36397,\n  \"alb\": 45248,\n  \"alba</w>\": 25254,\n  \"alban\": 10882,\n  \"albania</w>\": 29170,\n  \"albanian</w>\": 47721,\n  \"albans</w>\": 44119,\n  \"albany</w>\": 17359,\n  \"albat\": 42797,\n  \"albeit</w>\": 38984,\n  \"alber\": 6413,\n  \"albert\": 34174,\n  \"albert</w>\": 9507,\n  \"alberta</w>\": 11048,\n  \"alberto</w>\": 22714,\n  \"albi\": 18512,\n  \"albino</w>\": 48062,\n  \"albion</w>\": 24071,\n  \"albu\": 2216,\n  \"album\": 40712,\n  \"album</w>\": 2431,\n  \"albums</w>\": 10705,\n  \"albuquerque</w>\": 31079,\n  \"alcat\": 35361,\n  \"alche\": 37909,\n  \"alchemist</w>\": 38913,\n  \"alchemy</w>\": 39501,\n  \"alco\": 6848,\n  \"alco</w>\": 45446,\n  \"alcohol</w>\": 9426,\n  \"alcoholic</w>\": 25098,\n  \"ald\": 4539,\n  \"ald</w>\": 2928,\n  \"alda</w>\": 46440,\n  \"alde\": 33114,\n  \"alden\": 17155,\n  \"alden</w>\": 27710,\n  \"aldenrichards</w>\": 20051,\n  \"alder\": 18220,\n  \"alder</w>\": 46571,\n  \"aldi</w>\": 23204,\n  \"aldo</w>\": 9933,\n  \"aldridge</w>\": 38084,\n  \"alds</w>\": 14285,\n  \"aldu\": 6505,\n  \"aldub\": 10532,\n  \"aldub</w>\": 15247,\n  \"ale\": 1440,\n  \"ale</w>\": 1336,\n  \"alea</w>\": 26518,\n  \"aleague</w>\": 38909,\n  \"alec\": 29804,\n  \"alec</w>\": 19954,\n  \"alecoscino</w>\": 47948,\n  \"aled</w>\": 4970,\n  \"alee</w>\": 24515,\n  \"alej\": 23440,\n  \"alejandro</w>\": 32950,\n  \"alek\": 26906,\n  \"alek</w>\": 43310,\n  \"aleksand\": 48429,\n  \"alem</w>\": 11825,\n  \"aleppo</w>\": 19258,\n  \"aler\": 25674,\n  \"aler</w>\": 27335,\n  \"alert</w>\": 4662,\n  \"alerts</w>\": 22144,\n  \"ales\": 44171,\n  \"ales</w>\": 5962,\n  \"aless\": 21864,\n  \"alessandro</w>\": 37344,\n  \"alestine</w>\": 31945,\n  \"alex\": 2959,\n  \"alex</w>\": 4134,\n  \"alexa</w>\": 16273,\n  \"alexand\": 10696,\n  \"alexander\": 25527,\n  \"alexander</w>\": 7563,\n  \"alexandra</w>\": 19054,\n  \"alexandre</w>\": 35711,\n  \"alexandria</w>\": 21171,\n  \"alexis\": 35023,\n  \"alexis</w>\": 14243,\n  \"aley</w>\": 21635,\n  \"alf</w>\": 27098,\n  \"alfa</w>\": 23482,\n  \"alfar\": 38870,\n  \"alfie</w>\": 28598,\n  \"alfon\": 31947,\n  \"alfonso</w>\": 41784,\n  \"alfre\": 20982,\n  \"alfred</w>\": 16553,\n  \"alfredo</w>\": 32291,\n  \"algae</w>\": 25654,\n  \"algar\": 36291,\n  \"algarve</w>\": 40290,\n  \"alge\": 24336,\n  \"algebra</w>\": 33694,\n  \"alger\": 18568,\n  \"algeria</w>\": 25257,\n  \"algon\": 33007,\n  \"algori\": 14912,\n  \"algorithm</w>\": 23295,\n  \"algorithms</w>\": 26039,\n  \"alham\": 23352,\n  \"alhamdulil\": 35129,\n  \"alhamdulillah</w>\": 38982,\n  \"ali\": 835,\n  \"ali</w>\": 3558,\n  \"alia</w>\": 2492,\n  \"aliaa</w>\": 36468,\n  \"alian</w>\": 3464,\n  \"alias</w>\": 40026,\n  \"alibaba</w>\": 39231,\n  \"alic\": 25265,\n  \"alice\": 23759,\n  \"alice</w>\": 9192,\n  \"alici\": 31630,\n  \"alicia</w>\": 20914,\n  \"alie</w>\": 8697,\n  \"alien\": 22846,\n  \"alien</w>\": 9639,\n  \"aliens</w>\": 14883,\n  \"alier</w>\": 39493,\n  \"alies</w>\": 38086,\n  \"alife\": 41347,\n  \"alife</w>\": 21100,\n  \"alig\": 21272,\n  \"alight</w>\": 36157,\n  \"align</w>\": 31160,\n  \"aligned</w>\": 29292,\n  \"alignment</w>\": 27267,\n  \"alik</w>\": 31141,\n  \"alike</w>\": 12665,\n  \"alim\": 42075,\n  \"alin\": 42746,\n  \"alin</w>\": 40063,\n  \"alina</w>\": 39529,\n  \"aline</w>\": 21799,\n  \"aling</w>\": 5169,\n  \"alion</w>\": 19049,\n  \"alis\": 21308,\n  \"alis</w>\": 20114,\n  \"alisa</w>\": 38918,\n  \"alisation</w>\": 42143,\n  \"alise</w>\": 36718,\n  \"alised</w>\": 25099,\n  \"alism</w>\": 5607,\n  \"alison\": 28653,\n  \"alison</w>\": 16970,\n  \"alist\": 44900,\n  \"alist</w>\": 3320,\n  \"alistair</w>\": 40551,\n  \"alistic</w>\": 22302,\n  \"alists</w>\": 5653,\n  \"alit\": 45566,\n  \"alities</w>\": 27925,\n  \"ality</w>\": 1694,\n  \"alive\": 40467,\n  \"alive</w>\": 4716,\n  \"aliz\": 30979,\n  \"alization</w>\": 8026,\n  \"alize</w>\": 10268,\n  \"alized</w>\": 6141,\n  \"alizer</w>\": 38922,\n  \"alizes</w>\": 26181,\n  \"alizing</w>\": 13023,\n  \"alk\": 30246,\n  \"alk</w>\": 21577,\n  \"alkal\": 33450,\n  \"alkaline</w>\": 39210,\n  \"all\": 813,\n  \"all</w>\": 615,\n  \"alla\": 13884,\n  \"alla</w>\": 14000,\n  \"allabout\": 43996,\n  \"allah</w>\": 6378,\n  \"allan\": 36552,\n  \"allan</w>\": 15404,\n  \"allblacks</w>\": 47728,\n  \"allday</w>\": 35862,\n  \"alle\": 4870,\n  \"alle</w>\": 29478,\n  \"alled</w>\": 7379,\n  \"alleg\": 7456,\n  \"allegations</w>\": 16992,\n  \"alleged</w>\": 12133,\n  \"allegedly</w>\": 14177,\n  \"alleges</w>\": 45051,\n  \"allegh\": 41479,\n  \"allegheny</w>\": 47851,\n  \"allegi\": 28832,\n  \"allegiance</w>\": 30955,\n  \"allen\": 16712,\n  \"allen</w>\": 6386,\n  \"allenge</w>\": 31387,\n  \"aller\": 10116,\n  \"aller</w>\": 30630,\n  \"allergic</w>\": 28809,\n  \"allergies</w>\": 28247,\n  \"allergy</w>\": 24408,\n  \"allery</w>\": 32542,\n  \"alles</w>\": 43354,\n  \"allevi\": 31682,\n  \"alleviate</w>\": 44799,\n  \"alley\": 36205,\n  \"alley</w>\": 10329,\n  \"allez</w>\": 49137,\n  \"alli\": 4123,\n  \"alli</w>\": 15268,\n  \"alliance\": 45404,\n  \"alliance</w>\": 8945,\n  \"alliances</w>\": 48403,\n  \"allianz</w>\": 45740,\n  \"allie</w>\": 25040,\n  \"allied</w>\": 20045,\n  \"allies</w>\": 17277,\n  \"alligator</w>\": 28574,\n  \"allin\": 45007,\n  \"allin</w>\": 22395,\n  \"alline</w>\": 48182,\n  \"alling</w>\": 2992,\n  \"allis</w>\": 45309,\n  \"allison\": 34602,\n  \"allison</w>\": 16578,\n  \"allman</w>\": 42611,\n  \"allo\": 8107,\n  \"allo</w>\": 18389,\n  \"allocated</w>\": 42716,\n  \"allocation</w>\": 35139,\n  \"allon</w>\": 46693,\n  \"allot\": 26363,\n  \"allotment</w>\": 33750,\n  \"allow\": 5645,\n  \"allow</w>\": 6722,\n  \"allowance</w>\": 35696,\n  \"allowed</w>\": 7885,\n  \"allowing</w>\": 12458,\n  \"allows</w>\": 9966,\n  \"alloy</w>\": 22467,\n  \"alls</w>\": 1997,\n  \"allstar\": 31247,\n  \"allstar</w>\": 22974,\n  \"allstars</w>\": 31198,\n  \"allthe\": 29253,\n  \"allu\": 20157,\n  \"alluarjun</w>\": 39333,\n  \"allure</w>\": 41814,\n  \"ally\": 7461,\n  \"ally</w>\": 769,\n  \"alm</w>\": 28303,\n  \"alma\": 32933,\n  \"alma</w>\": 18337,\n  \"alman\": 29394,\n  \"almanac</w>\": 41268,\n  \"almighty</w>\": 21898,\n  \"almond</w>\": 15646,\n  \"almonds</w>\": 30468,\n  \"almost\": 47534,\n  \"almost</w>\": 2671,\n  \"aln\": 47203,\n  \"alo\": 3435,\n  \"alo</w>\": 6183,\n  \"aloe</w>\": 30728,\n  \"alog</w>\": 15813,\n  \"alogue</w>\": 9101,\n  \"aloha</w>\": 23160,\n  \"aloils</w>\": 49002,\n  \"alom</w>\": 22236,\n  \"alon\": 14097,\n  \"alon</w>\": 42846,\n  \"alone</w>\": 4702,\n  \"along\": 8300,\n  \"along</w>\": 2528,\n  \"alongside</w>\": 8646,\n  \"alonso</w>\": 25704,\n  \"aloo</w>\": 46187,\n  \"alore</w>\": 14323,\n  \"alot</w>\": 16945,\n  \"alou\": 43180,\n  \"aloud</w>\": 30028,\n  \"alove\": 46669,\n  \"alove</w>\": 37045,\n  \"alp\": 32020,\n  \"alp</w>\": 39342,\n  \"alpac\": 30128,\n  \"alpaca</w>\": 42561,\n  \"alph\": 6720,\n  \"alpha\": 11807,\n  \"alpha</w>\": 8624,\n  \"alphabe\": 45796,\n  \"alphabet</w>\": 22335,\n  \"alphon\": 37865,\n  \"alpine</w>\": 17055,\n  \"alps</w>\": 18191,\n  \"already</w>\": 2426,\n  \"alright</w>\": 10866,\n  \"als\": 23982,\n  \"als</w>\": 938,\n  \"alsace</w>\": 49388,\n  \"also</w>\": 1446,\n  \"alt\": 9995,\n  \"alt</w>\": 10006,\n  \"alta\": 24470,\n  \"alta</w>\": 25378,\n  \"altaf</w>\": 47342,\n  \"altam\": 45624,\n  \"altar</w>\": 16385,\n  \"alter\": 4949,\n  \"alter</w>\": 21393,\n  \"altered</w>\": 25201,\n  \"altern\": 47463,\n  \"alternate</w>\": 15926,\n  \"alternati\": 16699,\n  \"alternative\": 37327,\n  \"alternative</w>\": 8248,\n  \"alternatives</w>\": 25041,\n  \"alth\": 23463,\n  \"alth</w>\": 5863,\n  \"although</w>\": 9421,\n  \"alti\": 35531,\n  \"alties</w>\": 17276,\n  \"altitude</w>\": 23241,\n  \"altman</w>\": 48100,\n  \"alto\": 35053,\n  \"alto</w>\": 17518,\n  \"altogether</w>\": 45689,\n  \"alton\": 41331,\n  \"alton</w>\": 36550,\n  \"altrin\": 38458,\n  \"altrincham</w>\": 44718,\n  \"alty</w>\": 5546,\n  \"alu\": 4776,\n  \"alu</w>\": 27991,\n  \"alum\": 5404,\n  \"alum</w>\": 10553,\n  \"alumin\": 14563,\n  \"alumini\": 22908,\n  \"aluminium</w>\": 23631,\n  \"aluminum</w>\": 15251,\n  \"alumna</w>\": 30313,\n  \"alumni</w>\": 6646,\n  \"alumnus</w>\": 23633,\n  \"alums</w>\": 30155,\n  \"alv\": 20928,\n  \"alvar\": 25196,\n  \"alvarez</w>\": 26924,\n  \"alvaro</w>\": 41941,\n  \"alves</w>\": 38547,\n  \"alvin</w>\": 27023,\n  \"alway\": 14046,\n  \"alway</w>\": 43764,\n  \"always\": 24997,\n  \"always</w>\": 1466,\n  \"alwx</w>\": 32768,\n  \"aly\": 6468,\n  \"aly</w>\": 12910,\n  \"alyn\": 49150,\n  \"alyss\": 29490,\n  \"alyssa</w>\": 18898,\n  \"alz\": 12936,\n  \"alz</w>\": 41128,\n  \"alzheim\": 15212,\n  \"alzheimer</w>\": 21151,\n  \"alzheimers</w>\": 34592,\n  \"am\": 548,\n  \"am</w>\": 687,\n  \"ama\": 18206,\n  \"ama</w>\": 1696,\n  \"amad\": 45095,\n  \"amade\": 37366,\n  \"amag\": 32049,\n  \"amal\": 15315,\n  \"amal</w>\": 36753,\n  \"aman\": 19890,\n  \"aman</w>\": 10110,\n  \"amand\": 14560,\n  \"amanda</w>\": 10036,\n  \"amar\": 6424,\n  \"amar</w>\": 19607,\n  \"amara</w>\": 48522,\n  \"amari\": 42565,\n  \"amarillo</w>\": 40449,\n  \"amarine</w>\": 45591,\n  \"amarketing</w>\": 30788,\n  \"amas\": 22716,\n  \"amas</w>\": 15667,\n  \"amat\": 38664,\n  \"amat</w>\": 25455,\n  \"amate\": 12453,\n  \"amateur</w>\": 14287,\n  \"amaya</w>\": 47210,\n  \"amaz\": 1185,\n  \"amaze</w>\": 24846,\n  \"amazed</w>\": 18944,\n  \"amazing\": 15949,\n  \"amazing</w>\": 1370,\n  \"amazingly</w>\": 20368,\n  \"amazon\": 13630,\n  \"amazon</w>\": 4140,\n  \"amb\": 9042,\n  \"amb</w>\": 16853,\n  \"amba</w>\": 27003,\n  \"ambani</w>\": 45967,\n  \"ambas\": 5634,\n  \"ambassad\": 5758,\n  \"ambassador</w>\": 6795,\n  \"ambassadors</w>\": 16832,\n  \"ambed\": 42089,\n  \"ambedkar</w>\": 48131,\n  \"amber\": 18292,\n  \"amber</w>\": 9986,\n  \"ambi\": 11844,\n  \"ambient</w>\": 23447,\n  \"ambigu\": 35702,\n  \"ambition</w>\": 20673,\n  \"ambitions</w>\": 34152,\n  \"ambitious</w>\": 18666,\n  \"ambro\": 17585,\n  \"ambrose</w>\": 24253,\n  \"ambu\": 34423,\n  \"ambul\": 13944,\n  \"ambulance</w>\": 15555,\n  \"ambush</w>\": 40725,\n  \"amc\": 24942,\n  \"amc</w>\": 16921,\n  \"amd</w>\": 20845,\n  \"ame\": 3995,\n  \"ame</w>\": 780,\n  \"amed</w>\": 5660,\n  \"ameen</w>\": 24229,\n  \"amel\": 31988,\n  \"amel</w>\": 10960,\n  \"ameli\": 21599,\n  \"amelia</w>\": 21433,\n  \"amell</w>\": 48198,\n  \"amen\": 18716,\n  \"amen</w>\": 12335,\n  \"amend\": 12425,\n  \"amendment</w>\": 15019,\n  \"amendments</w>\": 40901,\n  \"amenities</w>\": 30096,\n  \"ament</w>\": 27528,\n  \"amer\": 17081,\n  \"amer</w>\": 16147,\n  \"ameri\": 40422,\n  \"americ\": 1283,\n  \"america</w>\": 2224,\n  \"americafirst</w>\": 43216,\n  \"american\": 8746,\n  \"american</w>\": 2151,\n  \"americana</w>\": 26221,\n  \"americanair</w>\": 42538,\n  \"americani\": 39726,\n  \"americans</w>\": 6676,\n  \"americas\": 33343,\n  \"americas</w>\": 18142,\n  \"ames</w>\": 5469,\n  \"ameter</w>\": 23393,\n  \"amethy\": 30291,\n  \"amethyst</w>\": 31485,\n  \"amex</w>\": 46390,\n  \"amg</w>\": 21324,\n  \"amher\": 32311,\n  \"amherst</w>\": 39065,\n  \"ami\": 6100,\n  \"ami</w>\": 3065,\n  \"amic\": 25824,\n  \"amic</w>\": 21383,\n  \"amid\": 18908,\n  \"amid</w>\": 11953,\n  \"amide</w>\": 30952,\n  \"amidst</w>\": 25172,\n  \"amie</w>\": 36901,\n  \"amig\": 40294,\n  \"amiga</w>\": 35329,\n  \"amigo</w>\": 44991,\n  \"amigos</w>\": 28176,\n  \"amii\": 35462,\n  \"amiibo</w>\": 38871,\n  \"amily</w>\": 36732,\n  \"amin\": 14337,\n  \"amin</w>\": 20235,\n  \"amina</w>\": 47531,\n  \"amination</w>\": 30355,\n  \"amine</w>\": 35823,\n  \"aming</w>\": 3507,\n  \"amino</w>\": 33464,\n  \"amir\": 26029,\n  \"amir</w>\": 21973,\n  \"amis</w>\": 29829,\n  \"amish</w>\": 24958,\n  \"amit\": 15083,\n  \"amit</w>\": 25255,\n  \"amitabh</w>\": 48124,\n  \"amitshah</w>\": 32374,\n  \"aml</w>\": 43185,\n  \"amma</w>\": 29786,\n  \"amman</w>\": 29243,\n  \"ammo</w>\": 33474,\n  \"ammunition</w>\": 35060,\n  \"amn</w>\": 24073,\n  \"amne\": 14596,\n  \"amnesia</w>\": 41741,\n  \"amnesty\": 46330,\n  \"amnesty</w>\": 21177,\n  \"amo\": 4833,\n  \"amo</w>\": 11156,\n  \"amodi</w>\": 9826,\n  \"amon\": 17492,\n  \"amon</w>\": 24046,\n  \"among\": 12310,\n  \"among</w>\": 4265,\n  \"amongst</w>\": 12520,\n  \"amoo</w>\": 26977,\n  \"amor\": 19977,\n  \"amor</w>\": 15973,\n  \"amore\": 38937,\n  \"amore</w>\": 22691,\n  \"amores</w>\": 36338,\n  \"amos</w>\": 18133,\n  \"amoto</w>\": 25492,\n  \"amount</w>\": 6403,\n  \"amounts</w>\": 16747,\n  \"amour</w>\": 29908,\n  \"amovie</w>\": 41062,\n  \"amp\": 3521,\n  \"amp</w>\": 6259,\n  \"amped</w>\": 22640,\n  \"amphi\": 16379,\n  \"amphibious</w>\": 45206,\n  \"amphitheater</w>\": 41285,\n  \"amphitheatre</w>\": 44039,\n  \"ample</w>\": 34162,\n  \"amples</w>\": 14536,\n  \"ampli\": 15647,\n  \"amplifier</w>\": 31743,\n  \"amplify</w>\": 45308,\n  \"amps</w>\": 19252,\n  \"ampton\": 29410,\n  \"ampton</w>\": 9347,\n  \"amr</w>\": 30916,\n  \"amreading</w>\": 16546,\n  \"amrit\": 33849,\n  \"ams</w>\": 1396,\n  \"amster\": 9110,\n  \"amsterdam</w>\": 9441,\n  \"amtrak</w>\": 27855,\n  \"amu\": 11347,\n  \"amu</w>\": 32336,\n  \"amur\": 35014,\n  \"amura</w>\": 35487,\n  \"amus</w>\": 36269,\n  \"amuse\": 21421,\n  \"amuse</w>\": 44367,\n  \"amused</w>\": 30212,\n  \"amusement</w>\": 32570,\n  \"amusic</w>\": 20266,\n  \"amusing</w>\": 31789,\n  \"amwriting</w>\": 9660,\n  \"amy\": 10547,\n  \"amy</w>\": 5187,\n  \"an\": 514,\n  \"an</w>\": 550,\n  \"ana\": 6588,\n  \"ana</w>\": 1388,\n  \"anab\": 34742,\n  \"anada</w>\": 27948,\n  \"anag\": 12115,\n  \"anagh</w>\": 40774,\n  \"anaheim</w>\": 23728,\n  \"anak\": 34814,\n  \"anak</w>\": 38658,\n  \"anal\": 2785,\n  \"analo\": 34179,\n  \"analog</w>\": 19963,\n  \"analogue</w>\": 46031,\n  \"analy\": 4611,\n  \"analyse</w>\": 47246,\n  \"analyses</w>\": 39695,\n  \"analysis</w>\": 5296,\n  \"analyst</w>\": 14198,\n  \"analysts</w>\": 28075,\n  \"analytical</w>\": 34550,\n  \"analytics</w>\": 8558,\n  \"analyze</w>\": 28519,\n  \"analyzing</w>\": 32107,\n  \"anam\": 29525,\n  \"anan\": 37215,\n  \"anand\": 25073,\n  \"anand</w>\": 22083,\n  \"anap\": 41566,\n  \"anarch\": 46405,\n  \"anarchi\": 39879,\n  \"anarchy</w>\": 27707,\n  \"anas\": 31382,\n  \"anas</w>\": 12633,\n  \"anast\": 48902,\n  \"anasta\": 22915,\n  \"anastasi\": 36534,\n  \"anastasia</w>\": 37975,\n  \"anat\": 10045,\n  \"anath</w>\": 31277,\n  \"anatom\": 33759,\n  \"anatomy</w>\": 15376,\n  \"anc\": 1124,\n  \"anc</w>\": 17758,\n  \"anca</w>\": 14583,\n  \"ance\": 7165,\n  \"ance</w>\": 884,\n  \"anced</w>\": 5071,\n  \"ancer</w>\": 17415,\n  \"ancers</w>\": 37296,\n  \"ances</w>\": 3515,\n  \"ancestor</w>\": 43904,\n  \"ancestors</w>\": 24405,\n  \"ancestral</w>\": 41615,\n  \"ancestry</w>\": 30922,\n  \"anch\": 9489,\n  \"anche</w>\": 34679,\n  \"ancho\": 26610,\n  \"anchor\": 20030,\n  \"anchor</w>\": 13201,\n  \"anchorage</w>\": 31950,\n  \"anchored</w>\": 45926,\n  \"anchors</w>\": 37830,\n  \"anci\": 4192,\n  \"ancient\": 31495,\n  \"ancient</w>\": 5810,\n  \"ancies</w>\": 21647,\n  \"ancing</w>\": 7797,\n  \"anco</w>\": 15459,\n  \"ancy\": 16282,\n  \"ancy</w>\": 3633,\n  \"and\": 672,\n  \"and</w>\": 537,\n  \"anda</w>\": 2911,\n  \"andalu\": 31443,\n  \"andco</w>\": 36302,\n  \"ande\": 26889,\n  \"ande</w>\": 30354,\n  \"ander\": 3740,\n  \"ander</w>\": 3935,\n  \"anders</w>\": 10880,\n  \"andersen</w>\": 32661,\n  \"anderson\": 26683,\n  \"anderson</w>\": 6510,\n  \"andes</w>\": 24052,\n  \"andfriends</w>\": 36871,\n  \"andhi</w>\": 21617,\n  \"andhra</w>\": 32452,\n  \"andi\": 28870,\n  \"andi</w>\": 14354,\n  \"andie</w>\": 46318,\n  \"andme</w>\": 42831,\n  \"ando\": 35950,\n  \"ando</w>\": 5986,\n  \"andolan</w>\": 48965,\n  \"andon</w>\": 36488,\n  \"andor\": 45243,\n  \"andover</w>\": 44177,\n  \"andr\": 22661,\n  \"andra\": 46795,\n  \"andra</w>\": 21730,\n  \"andre\": 2657,\n  \"andre</w>\": 9400,\n  \"andrea</w>\": 10895,\n  \"andreas</w>\": 20444,\n  \"andrei</w>\": 42137,\n  \"andres</w>\": 25197,\n  \"andretti</w>\": 44291,\n  \"andrew\": 11717,\n  \"andrew</w>\": 4847,\n  \"andrews</w>\": 14506,\n  \"andri\": 37208,\n  \"andro\": 4417,\n  \"andro</w>\": 17980,\n  \"android\": 24284,\n  \"android</w>\": 5191,\n  \"androidgames</w>\": 46572,\n  \"andromeda</w>\": 42942,\n  \"andrÃ©</w>\": 35609,\n  \"ands</w>\": 32257,\n  \"andthe\": 22111,\n  \"andu\": 44200,\n  \"andum</w>\": 47266,\n  \"andy\": 9447,\n  \"andy</w>\": 2888,\n  \"ane\": 5846,\n  \"ane</w>\": 3051,\n  \"anec\": 33965,\n  \"anem\": 41395,\n  \"anemone</w>\": 49019,\n  \"aneous</w>\": 48273,\n  \"anes</w>\": 15381,\n  \"anese</w>\": 48778,\n  \"anesthe\": 30622,\n  \"anesthesia</w>\": 43353,\n  \"anew\": 39084,\n  \"anew</w>\": 47341,\n  \"anews</w>\": 20919,\n  \"aney</w>\": 22387,\n  \"anfield</w>\": 26993,\n  \"ang\": 883,\n  \"ang</w>\": 2704,\n  \"anga</w>\": 11641,\n  \"angames</w>\": 43178,\n  \"angan</w>\": 28264,\n  \"angas</w>\": 46180,\n  \"ange\": 2960,\n  \"ange</w>\": 3039,\n  \"angel\": 5029,\n  \"angel</w>\": 5130,\n  \"angela</w>\": 12354,\n  \"angeles</w>\": 7382,\n  \"angeli\": 15265,\n  \"angelic</w>\": 41038,\n  \"angelica</w>\": 38582,\n  \"angelina</w>\": 28890,\n  \"angelo</w>\": 14342,\n  \"angelou</w>\": 41328,\n  \"angels</w>\": 7809,\n  \"anger\": 32737,\n  \"anger</w>\": 6788,\n  \"angerous</w>\": 39716,\n  \"angers</w>\": 29756,\n  \"angh\": 34030,\n  \"angi\": 28003,\n  \"angi</w>\": 24301,\n  \"angie</w>\": 18859,\n  \"angle\": 21749,\n  \"angle</w>\": 6946,\n  \"angled</w>\": 32322,\n  \"angler</w>\": 22284,\n  \"anglers</w>\": 41608,\n  \"angles</w>\": 18627,\n  \"anglesey</w>\": 31850,\n  \"anglia</w>\": 32076,\n  \"anglic\": 28322,\n  \"anglican</w>\": 33284,\n  \"angling</w>\": 36824,\n  \"anglo\": 39515,\n  \"anglo</w>\": 30408,\n  \"ango</w>\": 19090,\n  \"angola</w>\": 36636,\n  \"angor</w>\": 41740,\n  \"angp</w>\": 19992,\n  \"angry\": 33910,\n  \"angry</w>\": 9054,\n  \"angs</w>\": 18441,\n  \"angst</w>\": 41714,\n  \"angu\": 11209,\n  \"angular\": 43584,\n  \"angular</w>\": 24981,\n  \"angularjs</w>\": 48608,\n  \"angus</w>\": 19688,\n  \"ani\": 1326,\n  \"ani</w>\": 3624,\n  \"ania</w>\": 9866,\n  \"anian</w>\": 9945,\n  \"anians</w>\": 39393,\n  \"anic</w>\": 23113,\n  \"anie\": 26697,\n  \"anie</w>\": 7671,\n  \"anil\": 28589,\n  \"anil</w>\": 34619,\n  \"anim\": 2190,\n  \"animal\": 10697,\n  \"animal</w>\": 4668,\n  \"animalrights</w>\": 42859,\n  \"animals</w>\": 4995,\n  \"animate</w>\": 40076,\n  \"animated</w>\": 13360,\n  \"animation</w>\": 10344,\n  \"animations</w>\": 42870,\n  \"animator</w>\": 42591,\n  \"anime\": 23314,\n  \"anime</w>\": 6469,\n  \"anin</w>\": 45735,\n  \"aning</w>\": 30972,\n  \"anir\": 27089,\n  \"anirud\": 35278,\n  \"anirudhofficial</w>\": 45917,\n  \"anis\": 40986,\n  \"anis</w>\": 47556,\n  \"anism</w>\": 20947,\n  \"anist</w>\": 16729,\n  \"anistan</w>\": 9727,\n  \"aniston</w>\": 47344,\n  \"anit\": 23683,\n  \"anita</w>\": 18544,\n  \"anium</w>\": 14794,\n  \"anj\": 22443,\n  \"anja</w>\": 43440,\n  \"anjali</w>\": 38834,\n  \"anjo</w>\": 47353,\n  \"ank\": 13339,\n  \"ank</w>\": 10029,\n  \"anka</w>\": 45324,\n  \"ankara</w>\": 34309,\n  \"ankle</w>\": 14777,\n  \"ankles</w>\": 48688,\n  \"ann\": 850,\n  \"ann</w>\": 5424,\n  \"anna\": 13821,\n  \"anna</w>\": 2160,\n  \"annab\": 22336,\n  \"annabelle</w>\": 47661,\n  \"annah\": 39166,\n  \"annah</w>\": 14327,\n  \"annak\": 41720,\n  \"annan</w>\": 32166,\n  \"annapolis</w>\": 34491,\n  \"annas\": 48467,\n  \"anne\": 9139,\n  \"anne</w>\": 4083,\n  \"anned</w>\": 27352,\n  \"anner</w>\": 12642,\n  \"annes</w>\": 24343,\n  \"annette</w>\": 36821,\n  \"annex\": 42958,\n  \"annex</w>\": 46389,\n  \"anni\": 2438,\n  \"anni</w>\": 13728,\n  \"annie\": 37270,\n  \"annie</w>\": 12173,\n  \"annies</w>\": 43184,\n  \"annihil\": 32734,\n  \"annis</w>\": 24742,\n  \"anniv</w>\": 31399,\n  \"anniver\": 29671,\n  \"annivers\": 42836,\n  \"anniversaire</w>\": 30882,\n  \"anniversary</w>\": 3048,\n  \"anno\": 9901,\n  \"anno</w>\": 26871,\n  \"annon</w>\": 26385,\n  \"annot\": 30411,\n  \"announ\": 1806,\n  \"announce</w>\": 3682,\n  \"announced</w>\": 4103,\n  \"announcement</w>\": 6932,\n  \"announcements</w>\": 23735,\n  \"announcer</w>\": 33626,\n  \"announces</w>\": 6500,\n  \"announcing</w>\": 11593,\n  \"annoy</w>\": 45138,\n  \"annoyed</w>\": 29863,\n  \"annoying</w>\": 15248,\n  \"annu\": 21698,\n  \"annual</w>\": 2906,\n  \"annually</w>\": 23703,\n  \"anny\": 34313,\n  \"anny</w>\": 5291,\n  \"ano\": 5617,\n  \"ano</w>\": 2658,\n  \"anom\": 21612,\n  \"anomaly</w>\": 46811,\n  \"anon\": 47079,\n  \"anon</w>\": 13667,\n  \"anonym\": 38605,\n  \"anonymous</w>\": 15036,\n  \"anoo\": 25690,\n  \"anor\": 13243,\n  \"anor</w>\": 16596,\n  \"anos</w>\": 20132,\n  \"another\": 29274,\n  \"another</w>\": 1380,\n  \"anova</w>\": 24116,\n  \"ans\": 24586,\n  \"ans</w>\": 885,\n  \"ansari</w>\": 40748,\n  \"ansel\": 40356,\n  \"answ\": 3369,\n  \"answe\": 14391,\n  \"answer</w>\": 4518,\n  \"answered</w>\": 14499,\n  \"answering</w>\": 18280,\n  \"answers</w>\": 8692,\n  \"ant\": 1103,\n  \"ant</w>\": 773,\n  \"anta</w>\": 3023,\n  \"antag\": 41745,\n  \"antal\": 39355,\n  \"antalya</w>\": 47440,\n  \"antan\": 32899,\n  \"antarc\": 21338,\n  \"antarctic</w>\": 27077,\n  \"antarctica</w>\": 22587,\n  \"ante\": 19311,\n  \"ante</w>\": 9769,\n  \"antebellum</w>\": 41683,\n  \"antelope</w>\": 39177,\n  \"anten\": 35517,\n  \"antenna</w>\": 26370,\n  \"anter\": 46508,\n  \"antes</w>\": 14927,\n  \"antgrasso</w>\": 39074,\n  \"anth\": 3737,\n  \"anth</w>\": 29741,\n  \"antha</w>\": 47981,\n  \"anthe\": 34167,\n  \"anthem</w>\": 12504,\n  \"anthi</w>\": 45261,\n  \"anthology</w>\": 21009,\n  \"anthony\": 17477,\n  \"anthony</w>\": 6113,\n  \"anthro\": 10019,\n  \"anthropo\": 18538,\n  \"anthropology</w>\": 32407,\n  \"anthus</w>\": 37639,\n  \"anti\": 3120,\n  \"anti</w>\": 3564,\n  \"antibio\": 18954,\n  \"antibiotic</w>\": 34387,\n  \"antibiotics</w>\": 29499,\n  \"antibody</w>\": 49018,\n  \"antic\": 8260,\n  \"anticip\": 11435,\n  \"anticipate</w>\": 38280,\n  \"anticipated</w>\": 18605,\n  \"anticipating</w>\": 48067,\n  \"anticipation</w>\": 26983,\n  \"antics</w>\": 37126,\n  \"antidote</w>\": 45476,\n  \"antifa</w>\": 35926,\n  \"antigua</w>\": 39910,\n  \"antine</w>\": 17641,\n  \"antino</w>\": 27818,\n  \"antioxid\": 23010,\n  \"antioxidant</w>\": 37452,\n  \"antioxidants</w>\": 34208,\n  \"antiqu\": 21745,\n  \"antique\": 46517,\n  \"antique</w>\": 9060,\n  \"antiques</w>\": 17365,\n  \"antis</w>\": 19748,\n  \"antisemitism</w>\": 36630,\n  \"antit\": 37833,\n  \"antitrust</w>\": 49343,\n  \"antlers</w>\": 47720,\n  \"antly</w>\": 5265,\n  \"anto\": 16826,\n  \"anto</w>\": 24486,\n  \"antoine</w>\": 25188,\n  \"anton\": 5497,\n  \"anton</w>\": 19644,\n  \"antoni\": 39958,\n  \"antonio\": 30497,\n  \"antonio</w>\": 7842,\n  \"antony</w>\": 30707,\n  \"antrim</w>\": 40252,\n  \"ants</w>\": 1589,\n  \"antv</w>\": 47520,\n  \"antw\": 44460,\n  \"antwer\": 26970,\n  \"antwerp</w>\": 33797,\n  \"antz</w>\": 25684,\n  \"anu\": 8537,\n  \"anu</w>\": 17152,\n  \"anup\": 29617,\n  \"anus</w>\": 27084,\n  \"anush\": 22765,\n  \"anushka\": 42080,\n  \"anushka</w>\": 39822,\n  \"anushkasharma</w>\": 44203,\n  \"anwar</w>\": 34261,\n  \"anxi\": 9021,\n  \"anxiety</w>\": 11103,\n  \"anxious</w>\": 27793,\n  \"any\": 1307,\n  \"any</w>\": 1504,\n  \"anya</w>\": 11173,\n  \"anybody</w>\": 10071,\n  \"anyi</w>\": 41632,\n  \"anymore</w>\": 7372,\n  \"anyone</w>\": 2302,\n  \"anything</w>\": 3582,\n  \"anytime</w>\": 13924,\n  \"anyway</w>\": 8931,\n  \"anyways</w>\": 19778,\n  \"anywhere</w>\": 8863,\n  \"anz\": 14445,\n  \"anz</w>\": 19425,\n  \"anza</w>\": 14669,\n  \"anzac</w>\": 31977,\n  \"ao\": 7313,\n  \"ao</w>\": 5703,\n  \"aoa</w>\": 47119,\n  \"aoc</w>\": 31918,\n  \"aofficial</w>\": 30840,\n  \"aoki</w>\": 33602,\n  \"aol</w>\": 40643,\n  \"aon\": 30928,\n  \"aon</w>\": 48476,\n  \"aor\": 32044,\n  \"aos</w>\": 46860,\n  \"ap\": 688,\n  \"ap</w>\": 2728,\n  \"apa\": 36954,\n  \"apa</w>\": 13537,\n  \"apac</w>\": 34320,\n  \"apache</w>\": 23921,\n  \"apal\": 38017,\n  \"apan</w>\": 36562,\n  \"apar\": 9161,\n  \"apark</w>\": 32528,\n  \"apart\": 6474,\n  \"apart</w>\": 7803,\n  \"aparthe\": 25121,\n  \"apartheid</w>\": 26597,\n  \"apartment</w>\": 8285,\n  \"apartments</w>\": 15791,\n  \"aparty</w>\": 26767,\n  \"apat\": 31755,\n  \"apathy</w>\": 18145,\n  \"apc</w>\": 20300,\n  \"apd</w>\": 44563,\n  \"ape\": 6098,\n  \"ape</w>\": 2609,\n  \"apec</w>\": 47530,\n  \"aper\": 13681,\n  \"aper</w>\": 5858,\n  \"apers</w>\": 15846,\n  \"apes</w>\": 9550,\n  \"apeu\": 19040,\n  \"apex\": 41935,\n  \"apex</w>\": 23712,\n  \"aph\": 16341,\n  \"aph</w>\": 29491,\n  \"apha</w>\": 47104,\n  \"apho\": 21758,\n  \"aphra\": 44147,\n  \"api\": 23342,\n  \"api</w>\": 14674,\n  \"apia</w>\": 44259,\n  \"apic\": 40679,\n  \"aping</w>\": 18456,\n  \"apink</w>\": 35725,\n  \"apis</w>\": 37575,\n  \"apk</w>\": 27648,\n  \"apo\": 4089,\n  \"apo</w>\": 19758,\n  \"apocaly\": 13932,\n  \"apocalypse</w>\": 17571,\n  \"apocalyptic</w>\": 35675,\n  \"apol\": 5023,\n  \"apolice</w>\": 45663,\n  \"apolis</w>\": 9598,\n  \"apollo\": 48213,\n  \"apollo</w>\": 11554,\n  \"apolo\": 31094,\n  \"apolog\": 25530,\n  \"apologe\": 42908,\n  \"apologi\": 14977,\n  \"apologies</w>\": 21959,\n  \"apologise</w>\": 39608,\n  \"apologize</w>\": 22879,\n  \"apologizes</w>\": 35298,\n  \"apology</w>\": 20768,\n  \"apor\": 21871,\n  \"apore</w>\": 6679,\n  \"apost\": 20309,\n  \"apostle</w>\": 33051,\n  \"apostles</w>\": 48457,\n  \"app\": 882,\n  \"app</w>\": 2231,\n  \"appa\": 4884,\n  \"appa</w>\": 13110,\n  \"appalach\": 30523,\n  \"appalachian</w>\": 36806,\n  \"appalling</w>\": 44797,\n  \"appar\": 26698,\n  \"apparatus</w>\": 37716,\n  \"apparel</w>\": 13972,\n  \"apparent</w>\": 23963,\n  \"apparently</w>\": 5287,\n  \"appe\": 3748,\n  \"appe</w>\": 45949,\n  \"appeal</w>\": 9625,\n  \"appealing</w>\": 25909,\n  \"appeals</w>\": 22447,\n  \"appear\": 5544,\n  \"appear</w>\": 9308,\n  \"appearance</w>\": 7238,\n  \"appearances</w>\": 17214,\n  \"appeared</w>\": 11561,\n  \"appearing</w>\": 18759,\n  \"appears</w>\": 8743,\n  \"appell\": 43833,\n  \"appen\": 37201,\n  \"appen</w>\": 26589,\n  \"apper</w>\": 18780,\n  \"appet\": 21686,\n  \"appeti\": 24179,\n  \"appetite</w>\": 24481,\n  \"appetizer</w>\": 36065,\n  \"applau\": 24713,\n  \"applaud</w>\": 42152,\n  \"applause</w>\": 22650,\n  \"apple\": 8629,\n  \"apple</w>\": 3055,\n  \"applemusic</w>\": 21390,\n  \"apples</w>\": 14032,\n  \"appleton</w>\": 45250,\n  \"appli\": 15495,\n  \"appliance</w>\": 33677,\n  \"appliances</w>\": 22134,\n  \"applic\": 4235,\n  \"applicable</w>\": 37927,\n  \"applicants</w>\": 28035,\n  \"application</w>\": 7241,\n  \"applications</w>\": 7341,\n  \"applied</w>\": 12636,\n  \"applies</w>\": 24910,\n  \"apply</w>\": 4356,\n  \"applying</w>\": 17965,\n  \"appo\": 5433,\n  \"appoint</w>\": 36190,\n  \"appointed</w>\": 11087,\n  \"appointment</w>\": 10890,\n  \"appointments</w>\": 23439,\n  \"appoints</w>\": 25132,\n  \"apprais\": 36972,\n  \"appraisal</w>\": 46108,\n  \"appreci\": 3474,\n  \"appreciate</w>\": 6263,\n  \"appreciated</w>\": 9264,\n  \"appreciates</w>\": 36573,\n  \"appreciating</w>\": 39352,\n  \"appreciation</w>\": 9212,\n  \"appreciationday</w>\": 37438,\n  \"appreciative</w>\": 45074,\n  \"appren\": 10582,\n  \"apprentic\": 15662,\n  \"apprentice\": 19122,\n  \"apprentice</w>\": 17985,\n  \"apprentices</w>\": 38252,\n  \"apprenticeship</w>\": 26939,\n  \"apprenticeships</w>\": 35425,\n  \"appro\": 2398,\n  \"approach\": 7781,\n  \"approach</w>\": 6241,\n  \"approached</w>\": 36499,\n  \"approaches</w>\": 14962,\n  \"approaching</w>\": 12164,\n  \"appropri\": 8446,\n  \"appropriate</w>\": 10768,\n  \"appropriately</w>\": 30383,\n  \"appropriation</w>\": 49110,\n  \"approval</w>\": 13549,\n  \"approve</w>\": 19064,\n  \"approved</w>\": 9412,\n  \"approves</w>\": 18107,\n  \"approx</w>\": 18266,\n  \"approxim\": 14201,\n  \"approximately</w>\": 16128,\n  \"apps</w>\": 7020,\n  \"appstore</w>\": 31377,\n  \"appt</w>\": 48112,\n  \"appy</w>\": 34420,\n  \"apr\": 39396,\n  \"apr</w>\": 11177,\n  \"apra\": 37027,\n  \"apric\": 25923,\n  \"apricot</w>\": 30815,\n  \"april\": 23548,\n  \"april</w>\": 2484,\n  \"apro\": 42712,\n  \"apro</w>\": 49051,\n  \"apron</w>\": 29502,\n  \"aps</w>\": 8868,\n  \"apse</w>\": 31843,\n  \"apt</w>\": 17921,\n  \"aptly</w>\": 47313,\n  \"apu\": 22166,\n  \"apur\": 36900,\n  \"apur</w>\": 45193,\n  \"aq\": 14018,\n  \"aq</w>\": 26862,\n  \"aqu\": 4458,\n  \"aqua</w>\": 18613,\n  \"aquaculture</w>\": 41885,\n  \"aquaman</w>\": 35098,\n  \"aquari\": 37605,\n  \"aquarium</w>\": 16814,\n  \"aquarius</w>\": 38879,\n  \"aquatic</w>\": 22658,\n  \"aque\": 35927,\n  \"aque</w>\": 37268,\n  \"aqui\": 36826,\n  \"aquino</w>\": 33796,\n  \"ar\": 516,\n  \"ar</w>\": 625,\n  \"ara\": 24161,\n  \"ara</w>\": 3340,\n  \"arab\": 5405,\n  \"arab</w>\": 12028,\n  \"arabia</w>\": 11746,\n  \"arabian</w>\": 24663,\n  \"arabic</w>\": 16709,\n  \"arabs</w>\": 39155,\n  \"arac\": 47620,\n  \"arach\": 37689,\n  \"arag\": 41502,\n  \"araj</w>\": 45142,\n  \"arak\": 23416,\n  \"aram\": 19223,\n  \"aram</w>\": 21473,\n  \"arama</w>\": 49066,\n  \"aran\": 20839,\n  \"aran</w>\": 19641,\n  \"aras</w>\": 36399,\n  \"arat</w>\": 30856,\n  \"arav\": 35836,\n  \"arbit\": 20267,\n  \"arbitr\": 22702,\n  \"arbitration</w>\": 34845,\n  \"arbor\": 33516,\n  \"arbor</w>\": 24878,\n  \"arboretum</w>\": 41719,\n  \"arc\": 4997,\n  \"arc</w>\": 11592,\n  \"arca\": 25189,\n  \"arca</w>\": 37612,\n  \"arcade</w>\": 13331,\n  \"arcadia</w>\": 38372,\n  \"arch\": 2458,\n  \"arch</w>\": 8557,\n  \"archa\": 45619,\n  \"archae\": 10121,\n  \"archaeological</w>\": 26163,\n  \"archaeologists</w>\": 45035,\n  \"archaeology</w>\": 14868,\n  \"archan\": 33359,\n  \"archbishop</w>\": 23994,\n  \"arche\": 22474,\n  \"archer</w>\": 21824,\n  \"archers</w>\": 38407,\n  \"archery</w>\": 23935,\n  \"arches</w>\": 30771,\n  \"archi\": 4479,\n  \"archie</w>\": 20557,\n  \"archipel\": 39750,\n  \"archipelago</w>\": 43025,\n  \"architec\": 3359,\n  \"architect</w>\": 12192,\n  \"architects</w>\": 13290,\n  \"architectural</w>\": 15360,\n  \"architecture\": 39038,\n  \"architecture</w>\": 4920,\n  \"archival</w>\": 39249,\n  \"archive\": 42257,\n  \"archive</w>\": 10548,\n  \"archived</w>\": 42379,\n  \"archives</w>\": 9411,\n  \"archy</w>\": 15643,\n  \"arctic\": 29716,\n  \"arctic</w>\": 9138,\n  \"ard\": 3793,\n  \"ard</w>\": 746,\n  \"arden\": 44600,\n  \"arden</w>\": 27057,\n  \"ardi\": 23932,\n  \"ardi</w>\": 19837,\n  \"ardo\": 35735,\n  \"ardo</w>\": 9394,\n  \"ards</w>\": 1654,\n  \"ardu\": 20906,\n  \"arduino</w>\": 25398,\n  \"are\": 1076,\n  \"are</w>\": 631,\n  \"area</w>\": 2445,\n  \"areas</w>\": 5429,\n  \"arec\": 18136,\n  \"areclipse</w>\": 36030,\n  \"ared</w>\": 5369,\n  \"arel</w>\": 12798,\n  \"arella</w>\": 24784,\n  \"arelli</w>\": 48619,\n  \"aren\": 4033,\n  \"aren</w>\": 4318,\n  \"arena</w>\": 5463,\n  \"arenas</w>\": 47860,\n  \"arent</w>\": 37487,\n  \"arer</w>\": 14857,\n  \"arers</w>\": 33159,\n  \"ares</w>\": 12224,\n  \"arest</w>\": 11708,\n  \"aret</w>\": 22247,\n  \"areth</w>\": 47725,\n  \"aretha</w>\": 42090,\n  \"areyou\": 37607,\n  \"arez</w>\": 13108,\n  \"arg</w>\": 27285,\n  \"argent\": 7812,\n  \"argentina</w>\": 9789,\n  \"argentine</w>\": 32582,\n  \"argon\": 40737,\n  \"argos</w>\": 37443,\n  \"argu\": 7440,\n  \"arguably</w>\": 30899,\n  \"argue</w>\": 19788,\n  \"argued</w>\": 48153,\n  \"argues</w>\": 30045,\n  \"arguing</w>\": 26549,\n  \"argument</w>\": 16224,\n  \"arguments</w>\": 24693,\n  \"argus</w>\": 44300,\n  \"argy\": 21066,\n  \"argyle</w>\": 36179,\n  \"argyll</w>\": 40667,\n  \"ari\": 1221,\n  \"ari</w>\": 3681,\n  \"aria</w>\": 8883,\n  \"arial</w>\": 42431,\n  \"arian\": 29980,\n  \"arian</w>\": 6953,\n  \"ariana</w>\": 14892,\n  \"arianag\": 23025,\n  \"arianagrande</w>\": 23321,\n  \"arianism</w>\": 44351,\n  \"arians</w>\": 19104,\n  \"arias</w>\": 22567,\n  \"arie</w>\": 18774,\n  \"ariel\": 47959,\n  \"ariel</w>\": 21025,\n  \"aries</w>\": 5213,\n  \"arif</w>\": 46621,\n  \"arily</w>\": 12993,\n  \"arin\": 29564,\n  \"arin</w>\": 18612,\n  \"arina</w>\": 29271,\n  \"arine</w>\": 29586,\n  \"aring</w>\": 2142,\n  \"ario</w>\": 8862,\n  \"arios</w>\": 25392,\n  \"aris</w>\": 15227,\n  \"arise</w>\": 26490,\n  \"arist</w>\": 12110,\n  \"aristo\": 25666,\n  \"aristotle</w>\": 49156,\n  \"arities</w>\": 31069,\n  \"arity</w>\": 16608,\n  \"arium</w>\": 11809,\n  \"arius</w>\": 21482,\n  \"ariz\": 6516,\n  \"arized</w>\": 40167,\n  \"arizon\": 28936,\n  \"arizona</w>\": 7106,\n  \"arjun\": 24565,\n  \"arjun</w>\": 20477,\n  \"arjuna</w>\": 43835,\n  \"ark\": 11921,\n  \"ark</w>\": 12010,\n  \"arkansas</w>\": 12227,\n  \"arkham</w>\": 36381,\n  \"arl</w>\": 48542,\n  \"arlington\": 44940,\n  \"arlington</w>\": 17865,\n  \"arly</w>\": 3637,\n  \"arm\": 5671,\n  \"arm</w>\": 4793,\n  \"arma\": 15887,\n  \"arma</w>\": 38716,\n  \"armad\": 37897,\n  \"armada</w>\": 34938,\n  \"armagh</w>\": 44313,\n  \"armani</w>\": 31314,\n  \"armb\": 37096,\n  \"armchair</w>\": 45757,\n  \"armed\": 40471,\n  \"armed</w>\": 8202,\n  \"armen\": 13145,\n  \"armenia</w>\": 22008,\n  \"armenian</w>\": 24891,\n  \"armies</w>\": 46686,\n  \"armin\": 45481,\n  \"arming</w>\": 19766,\n  \"armist\": 38150,\n  \"armistice</w>\": 46765,\n  \"armor</w>\": 16167,\n  \"armored</w>\": 28214,\n  \"armory</w>\": 38610,\n  \"armour</w>\": 18503,\n  \"armoured</w>\": 42514,\n  \"arms</w>\": 5706,\n  \"armstrong</w>\": 15005,\n  \"army\": 13541,\n  \"army</w>\": 3133,\n  \"armys</w>\": 27311,\n  \"arn\": 9348,\n  \"arn</w>\": 37597,\n  \"arnau\": 45556,\n  \"arne</w>\": 43509,\n  \"arney</w>\": 35962,\n  \"arnold\": 49096,\n  \"arnold</w>\": 13609,\n  \"arns</w>\": 46692,\n  \"aro\": 7514,\n  \"aro</w>\": 11551,\n  \"aroa</w>\": 48209,\n  \"arom\": 16831,\n  \"aroma\": 40143,\n  \"aroma</w>\": 26390,\n  \"aromas</w>\": 47439,\n  \"aromatherapy</w>\": 42584,\n  \"aromatic</w>\": 39669,\n  \"aron\": 30855,\n  \"aron</w>\": 28926,\n  \"aroo</w>\": 47581,\n  \"arora</w>\": 31897,\n  \"arosa</w>\": 44264,\n  \"arose</w>\": 44262,\n  \"around\": 35615,\n  \"around</w>\": 1630,\n  \"arqu\": 35654,\n  \"arquitec\": 41703,\n  \"arr\": 39106,\n  \"arr</w>\": 42489,\n  \"arra\": 32918,\n  \"arra</w>\": 43827,\n  \"arrahman</w>\": 44554,\n  \"arran</w>\": 45722,\n  \"arrang\": 16711,\n  \"arrange\": 15410,\n  \"arrange</w>\": 26311,\n  \"arranged</w>\": 22451,\n  \"arrangement</w>\": 23822,\n  \"arrangements</w>\": 23792,\n  \"arranging</w>\": 35321,\n  \"array</w>\": 17293,\n  \"arre\": 4374,\n  \"arrell</w>\": 28846,\n  \"arrest</w>\": 9320,\n  \"arrested</w>\": 5845,\n  \"arresting</w>\": 43930,\n  \"arrests</w>\": 20683,\n  \"arri\": 2115,\n  \"arrival</w>\": 9073,\n  \"arrivals</w>\": 19583,\n  \"arrive</w>\": 8851,\n  \"arrived</w>\": 3514,\n  \"arrives</w>\": 9905,\n  \"arriving</w>\": 10884,\n  \"arro\": 15729,\n  \"arrog\": 26997,\n  \"arrogance</w>\": 47025,\n  \"arrogant</w>\": 40582,\n  \"arrow\": 30920,\n  \"arrow</w>\": 11149,\n  \"arrowhead</w>\": 46393,\n  \"arrows</w>\": 24768,\n  \"arroyo</w>\": 45237,\n  \"ars\": 42815,\n  \"ars</w>\": 864,\n  \"arse</w>\": 22665,\n  \"arsen\": 5330,\n  \"arsenal\": 45234,\n  \"arsenal</w>\": 6084,\n  \"arsene</w>\": 32117,\n  \"arson</w>\": 29937,\n  \"art\": 1486,\n  \"art</w>\": 794,\n  \"arta</w>\": 12031,\n  \"arte\": 13482,\n  \"arte</w>\": 12947,\n  \"artem\": 40387,\n  \"artemis</w>\": 45256,\n  \"arten</w>\": 37043,\n  \"arter\": 29449,\n  \"artery</w>\": 40062,\n  \"artes</w>\": 48629,\n  \"artforsale</w>\": 48239,\n  \"artgallery</w>\": 31982,\n  \"arth\": 7146,\n  \"arth</w>\": 20265,\n  \"arthistory</w>\": 39313,\n  \"arthr\": 20807,\n  \"arthritis</w>\": 22916,\n  \"arthro\": 43255,\n  \"arthur\": 35660,\n  \"arthur</w>\": 8550,\n  \"arti\": 1635,\n  \"arti</w>\": 34601,\n  \"artic\": 3003,\n  \"articho\": 30937,\n  \"artichoke</w>\": 39647,\n  \"article</w>\": 3550,\n  \"articles</w>\": 11939,\n  \"articul\": 40343,\n  \"articulate</w>\": 45444,\n  \"artif\": 8950,\n  \"artifact</w>\": 37718,\n  \"artifacts</w>\": 30249,\n  \"artificial\": 19357,\n  \"artificial</w>\": 12040,\n  \"artificialintelligence</w>\": 20799,\n  \"artillery</w>\": 24465,\n  \"artin\": 33168,\n  \"artin</w>\": 48540,\n  \"artis</w>\": 41794,\n  \"artisan\": 36389,\n  \"artisan</w>\": 21535,\n  \"artisans</w>\": 40140,\n  \"artist\": 14326,\n  \"artist</w>\": 2456,\n  \"artiste</w>\": 41402,\n  \"artistic</w>\": 12421,\n  \"artiston\": 48443,\n  \"artistry</w>\": 38570,\n  \"artists</w>\": 4899,\n  \"artistson\": 32127,\n  \"artistsontwitter</w>\": 39469,\n  \"artlovers</w>\": 35617,\n  \"arto\": 28464,\n  \"artof\": 31751,\n  \"artoftheday</w>\": 43990,\n  \"arton</w>\": 46744,\n  \"arts\": 22040,\n  \"arts</w>\": 3812,\n  \"artsy</w>\": 31588,\n  \"arturo</w>\": 38591,\n  \"artwit</w>\": 36713,\n  \"artwork</w>\": 4188,\n  \"artworks</w>\": 26215,\n  \"arty\": 45417,\n  \"arty</w>\": 25916,\n  \"aru\": 13757,\n  \"aru</w>\": 23907,\n  \"aruba</w>\": 40131,\n  \"arugula</w>\": 40770,\n  \"arum</w>\": 48732,\n  \"arun\": 16105,\n  \"arun</w>\": 31877,\n  \"arunach\": 47260,\n  \"arunjaitley</w>\": 44874,\n  \"arus</w>\": 22644,\n  \"arvin\": 16971,\n  \"arvind\": 21209,\n  \"arvind</w>\": 41079,\n  \"arvindkejriwal</w>\": 22971,\n  \"arvo</w>\": 45726,\n  \"arwx</w>\": 29824,\n  \"ary\": 4617,\n  \"ary</w>\": 856,\n  \"arya</w>\": 23594,\n  \"aryan</w>\": 34966,\n  \"as\": 587,\n  \"as</w>\": 601,\n  \"asa\": 39676,\n  \"asa</w>\": 11914,\n  \"asad</w>\": 42376,\n  \"asaki</w>\": 22455,\n  \"asam\": 40603,\n  \"asan\": 22379,\n  \"asan</w>\": 17841,\n  \"asana</w>\": 42363,\n  \"asant</w>\": 25536,\n  \"asants</w>\": 37766,\n  \"asap\": 24199,\n  \"asap</w>\": 10822,\n  \"asar\": 24733,\n  \"asar</w>\": 49299,\n  \"asb</w>\": 31186,\n  \"asbe\": 32113,\n  \"asbestos</w>\": 33765,\n  \"asc\": 22720,\n  \"asc</w>\": 23305,\n  \"ascen\": 20767,\n  \"ascension</w>\": 35499,\n  \"ascent</w>\": 36625,\n  \"asci\": 12753,\n  \"asco\": 25578,\n  \"asco</w>\": 17488,\n  \"ascot</w>\": 23723,\n  \"ascri\": 15506,\n  \"asd</w>\": 36988,\n  \"asda</w>\": 29391,\n  \"asdf\": 36857,\n  \"asdfghj\": 42758,\n  \"asdfghjkl</w>\": 47660,\n  \"ase\": 8083,\n  \"ase</w>\": 894,\n  \"asean</w>\": 24472,\n  \"aseball</w>\": 46903,\n  \"ased</w>\": 2134,\n  \"asen\": 41085,\n  \"aser\": 39615,\n  \"aser</w>\": 7209,\n  \"ases</w>\": 3762,\n  \"asf</w>\": 25863,\n  \"asg</w>\": 34813,\n  \"ash\": 2067,\n  \"ash</w>\": 2612,\n  \"asha\": 40572,\n  \"asha</w>\": 13472,\n  \"ashamed</w>\": 20633,\n  \"ashby</w>\": 46531,\n  \"ashe\": 48523,\n  \"ashe</w>\": 31752,\n  \"asher</w>\": 37585,\n  \"ashes</w>\": 12587,\n  \"asheville</w>\": 28897,\n  \"ashford</w>\": 37796,\n  \"ashi\": 15563,\n  \"ashi</w>\": 15934,\n  \"ashish</w>\": 33145,\n  \"ashland</w>\": 39938,\n  \"ashleigh</w>\": 49356,\n  \"ashley\": 17825,\n  \"ashley</w>\": 8957,\n  \"asho\": 20273,\n  \"ashok</w>\": 38141,\n  \"ashore</w>\": 31194,\n  \"ashram</w>\": 43445,\n  \"ashton\": 43264,\n  \"ashton</w>\": 12228,\n  \"ashtra</w>\": 18118,\n  \"asi\": 3596,\n  \"asi</w>\": 12562,\n  \"asia</w>\": 5741,\n  \"asian\": 21737,\n  \"asian</w>\": 7128,\n  \"asiangames</w>\": 49108,\n  \"asians</w>\": 36771,\n  \"asics</w>\": 31097,\n  \"aside</w>\": 13676,\n  \"asif</w>\": 37302,\n  \"asim</w>\": 46050,\n  \"asin\": 48432,\n  \"asin</w>\": 44347,\n  \"asing</w>\": 4194,\n  \"asingly</w>\": 15803,\n  \"asion</w>\": 31753,\n  \"asis</w>\": 12398,\n  \"ask\": 11027,\n  \"ask</w>\": 2765,\n  \"asked</w>\": 3993,\n  \"asking</w>\": 5914,\n  \"asks</w>\": 7953,\n  \"asl</w>\": 41650,\n  \"asleep</w>\": 10749,\n  \"asley</w>\": 28206,\n  \"asli</w>\": 44290,\n  \"asm</w>\": 13851,\n  \"asma</w>\": 38497,\n  \"asmsg</w>\": 19839,\n  \"aso\": 30343,\n  \"aso</w>\": 27932,\n  \"asober\": 43749,\n  \"asocial</w>\": 48557,\n  \"ason</w>\": 1163,\n  \"asone</w>\": 31249,\n  \"asons</w>\": 4249,\n  \"asos</w>\": 37924,\n  \"asot</w>\": 47968,\n  \"asp\": 17814,\n  \"asp</w>\": 36666,\n  \"asparag\": 20301,\n  \"asparagus</w>\": 20604,\n  \"aspe\": 10894,\n  \"aspect</w>\": 19681,\n  \"aspects</w>\": 18203,\n  \"aspen\": 35695,\n  \"aspen</w>\": 25712,\n  \"asper\": 32991,\n  \"asph\": 28019,\n  \"asphalt</w>\": 30574,\n  \"aspir\": 12669,\n  \"aspirations</w>\": 36127,\n  \"aspire</w>\": 24836,\n  \"aspiring</w>\": 21862,\n  \"asports</w>\": 43695,\n  \"asr</w>\": 48052,\n  \"asroma</w>\": 41000,\n  \"ass\": 12664,\n  \"ass</w>\": 5301,\n  \"assa</w>\": 47715,\n  \"assad</w>\": 18699,\n  \"assam</w>\": 19930,\n  \"assan\": 26352,\n  \"assange</w>\": 27565,\n  \"assas\": 9603,\n  \"assassin\": 14366,\n  \"assassin</w>\": 20029,\n  \"assassinated</w>\": 40488,\n  \"assassination</w>\": 24907,\n  \"assassins</w>\": 34918,\n  \"assassinscre\": 36428,\n  \"assassinscreed</w>\": 46082,\n  \"assau\": 7908,\n  \"assaul\": 19596,\n  \"assault</w>\": 9679,\n  \"assaulted</w>\": 30785,\n  \"assaulting</w>\": 44143,\n  \"asse\": 3166,\n  \"asse</w>\": 38600,\n  \"assel</w>\": 37582,\n  \"assemb\": 5531,\n  \"assemble</w>\": 26169,\n  \"assembled</w>\": 22627,\n  \"assemblies</w>\": 47406,\n  \"assembling</w>\": 38670,\n  \"assembly\": 34542,\n  \"assembly</w>\": 7059,\n  \"assen</w>\": 38651,\n  \"asser\": 25665,\n  \"asses</w>\": 21596,\n  \"assess\": 9209,\n  \"assess</w>\": 23211,\n  \"assessed</w>\": 44160,\n  \"assessing</w>\": 31364,\n  \"assessment</w>\": 10590,\n  \"assessments</w>\": 32753,\n  \"asset\": 48463,\n  \"asset</w>\": 13039,\n  \"assets</w>\": 13170,\n  \"assi\": 2907,\n  \"assi</w>\": 39540,\n  \"assie</w>\": 31624,\n  \"assign\": 14190,\n  \"assigned</w>\": 25767,\n  \"assignment</w>\": 17342,\n  \"assignments</w>\": 34257,\n  \"assim</w>\": 36394,\n  \"assimil\": 43467,\n  \"assist\": 26558,\n  \"assist</w>\": 10286,\n  \"assistance</w>\": 11685,\n  \"assistant</w>\": 6799,\n  \"assistants</w>\": 31054,\n  \"assisted</w>\": 18095,\n  \"assisting</w>\": 24243,\n  \"assists</w>\": 12675,\n  \"assn</w>\": 44208,\n  \"asso</w>\": 17617,\n  \"assoc</w>\": 18891,\n  \"associ\": 3566,\n  \"associate</w>\": 11777,\n  \"associated</w>\": 11164,\n  \"associates</w>\": 17358,\n  \"association</w>\": 5578,\n  \"associations</w>\": 33209,\n  \"assor\": 38604,\n  \"assorted</w>\": 36701,\n  \"assortment</w>\": 43112,\n  \"asst</w>\": 24767,\n  \"assu\": 8328,\n  \"assume</w>\": 19294,\n  \"assumed</w>\": 37661,\n  \"assuming</w>\": 29422,\n  \"assump\": 41182,\n  \"assumption</w>\": 40773,\n  \"assumptions</w>\": 45948,\n  \"assurance</w>\": 28408,\n  \"assure</w>\": 39161,\n  \"assured</w>\": 25591,\n  \"assures</w>\": 41988,\n  \"assy\": 29940,\n  \"assy</w>\": 12963,\n  \"ast\": 1761,\n  \"ast</w>\": 1242,\n  \"asta</w>\": 43269,\n  \"aste\": 25033,\n  \"aste</w>\": 25579,\n  \"aster\": 11013,\n  \"aster</w>\": 9526,\n  \"asteroid</w>\": 32253,\n  \"asters</w>\": 33139,\n  \"asth\": 16684,\n  \"asthma</w>\": 24610,\n  \"asthour</w>\": 41238,\n  \"astic</w>\": 15876,\n  \"asting</w>\": 29984,\n  \"astle</w>\": 46141,\n  \"asto\": 47275,\n  \"aston\": 24760,\n  \"aston</w>\": 13879,\n  \"astoni\": 21962,\n  \"astonishing</w>\": 27110,\n  \"astonmartin</w>\": 40760,\n  \"astor\": 26391,\n  \"astor</w>\": 47086,\n  \"astoria</w>\": 34798,\n  \"astounding</w>\": 37748,\n  \"astr\": 37609,\n  \"astra\": 47205,\n  \"astra</w>\": 36079,\n  \"astral</w>\": 45889,\n  \"astri\": 31243,\n  \"astrid</w>\": 46499,\n  \"astro\": 8563,\n  \"astro</w>\": 15318,\n  \"astrology</w>\": 28526,\n  \"astron\": 7982,\n  \"astronaut</w>\": 18376,\n  \"astronauts</w>\": 29733,\n  \"astronom\": 23264,\n  \"astronomer</w>\": 40036,\n  \"astronomers</w>\": 44268,\n  \"astronomical</w>\": 39775,\n  \"astronomy</w>\": 17472,\n  \"astrophotography</w>\": 38559,\n  \"astros</w>\": 17598,\n  \"asts</w>\": 10452,\n  \"astu\": 43137,\n  \"astur\": 45795,\n  \"asu\": 13157,\n  \"asu</w>\": 16001,\n  \"asun\": 36044,\n  \"asure</w>\": 3813,\n  \"asus</w>\": 27269,\n  \"aswell</w>\": 42978,\n  \"asx</w>\": 38906,\n  \"asy\": 8524,\n  \"asy</w>\": 2333,\n  \"asylum</w>\": 15638,\n  \"asym\": 32539,\n  \"at\": 527,\n  \"at</w>\": 536,\n  \"ata</w>\": 4236,\n  \"atable</w>\": 23909,\n  \"atal\": 24877,\n  \"atal</w>\": 24797,\n  \"atan</w>\": 33446,\n  \"atar\": 20128,\n  \"atar</w>\": 7995,\n  \"atari</w>\": 21549,\n  \"atas</w>\": 30057,\n  \"atay\": 39518,\n  \"atc</w>\": 28383,\n  \"atch</w>\": 15938,\n  \"atd</w>\": 33890,\n  \"ate\": 992,\n  \"ate</w>\": 671,\n  \"ateam</w>\": 42784,\n  \"ateau</w>\": 16359,\n  \"atec\": 37352,\n  \"atech</w>\": 31306,\n  \"ated\": 14589,\n  \"ated</w>\": 943,\n  \"atedly</w>\": 24698,\n  \"atee</w>\": 32839,\n  \"ateful</w>\": 5419,\n  \"atelier</w>\": 29932,\n  \"ately</w>\": 3862,\n  \"atem\": 17116,\n  \"aten</w>\": 47984,\n  \"atene\": 30405,\n  \"ateneo</w>\": 33904,\n  \"ater\": 18597,\n  \"ater</w>\": 5877,\n  \"ateral</w>\": 18819,\n  \"aters</w>\": 22364,\n  \"ates\": 20370,\n  \"ates</w>\": 1150,\n  \"atest</w>\": 1705,\n  \"ateur</w>\": 43677,\n  \"atf</w>\": 28013,\n  \"ath\": 1374,\n  \"ath</w>\": 1649,\n  \"atha</w>\": 22530,\n  \"atham</w>\": 23383,\n  \"athan\": 41260,\n  \"athan</w>\": 26701,\n  \"athe\": 8963,\n  \"athed</w>\": 47402,\n  \"atheism</w>\": 25823,\n  \"atheist</w>\": 22571,\n  \"atheists</w>\": 47155,\n  \"athen\": 29112,\n  \"athena</w>\": 30705,\n  \"athens</w>\": 13524,\n  \"ather\": 6171,\n  \"ather</w>\": 1817,\n  \"athered</w>\": 34091,\n  \"athers</w>\": 17266,\n  \"athi</w>\": 28918,\n  \"athing</w>\": 36069,\n  \"athle\": 3310,\n  \"athlete</w>\": 7388,\n  \"athletes</w>\": 7125,\n  \"athletic\": 33182,\n  \"athletic</w>\": 9028,\n  \"athletics</w>\": 7019,\n  \"athlon</w>\": 14670,\n  \"athome</w>\": 38217,\n  \"athon</w>\": 4951,\n  \"aths</w>\": 28835,\n  \"athy\": 34488,\n  \"athy</w>\": 13183,\n  \"ati\": 591,\n  \"ati</w>\": 6751,\n  \"atia</w>\": 10908,\n  \"atic\": 20248,\n  \"atic</w>\": 2647,\n  \"atically</w>\": 13558,\n  \"atics</w>\": 15666,\n  \"atie</w>\": 30137,\n  \"aties</w>\": 40060,\n  \"atif</w>\": 41592,\n  \"atiku</w>\": 37912,\n  \"atile</w>\": 15474,\n  \"atility</w>\": 23373,\n  \"atime</w>\": 20158,\n  \"atin\": 36903,\n  \"atin</w>\": 23047,\n  \"atine</w>\": 39741,\n  \"ating\": 25653,\n  \"ating</w>\": 1074,\n  \"atio</w>\": 35401,\n  \"ation\": 2265,\n  \"ation</w>\": 656,\n  \"ational\": 14205,\n  \"ational</w>\": 3108,\n  \"ationals</w>\": 44593,\n  \"ationday</w>\": 20082,\n  \"ations</w>\": 986,\n  \"atis\": 45456,\n  \"atis</w>\": 41142,\n  \"atism</w>\": 45638,\n  \"ative\": 18422,\n  \"ative</w>\": 1648,\n  \"atively</w>\": 11929,\n  \"atives</w>\": 5629,\n  \"ativity</w>\": 25166,\n  \"atkins</w>\": 27734,\n  \"atkinson</w>\": 28908,\n  \"atl\": 5411,\n  \"atl</w>\": 10629,\n  \"atla\": 36043,\n  \"atlan\": 6818,\n  \"atlanta\": 39964,\n  \"atlanta</w>\": 6839,\n  \"atlantic\": 28804,\n  \"atlantic</w>\": 8189,\n  \"atlantis</w>\": 27790,\n  \"atlas</w>\": 15775,\n  \"atle\": 21170,\n  \"atleast</w>\": 33231,\n  \"atleti</w>\": 46067,\n  \"atletico</w>\": 27501,\n  \"atm</w>\": 14127,\n  \"atmo\": 8271,\n  \"atmosphere</w>\": 10506,\n  \"atmospheric</w>\": 24223,\n  \"ato\": 7987,\n  \"ato</w>\": 4364,\n  \"atoday</w>\": 26799,\n  \"atom\": 22418,\n  \"atom</w>\": 24031,\n  \"atomic</w>\": 18996,\n  \"atoms</w>\": 41434,\n  \"aton\": 31525,\n  \"aton</w>\": 10012,\n  \"atop</w>\": 17455,\n  \"ator\": 10748,\n  \"ator</w>\": 1962,\n  \"atore</w>\": 28314,\n  \"atorial</w>\": 32040,\n  \"atories</w>\": 35678,\n  \"atorium</w>\": 41306,\n  \"ators</w>\": 3389,\n  \"atory</w>\": 5920,\n  \"atos</w>\": 41643,\n  \"atour</w>\": 42967,\n  \"atown</w>\": 24000,\n  \"atp\": 38105,\n  \"atp</w>\": 19817,\n  \"atr</w>\": 43247,\n  \"atra\": 20227,\n  \"atra</w>\": 14401,\n  \"atravel</w>\": 36981,\n  \"atre\": 46057,\n  \"atri\": 13882,\n  \"atri</w>\": 38889,\n  \"atric\": 32238,\n  \"atric</w>\": 13652,\n  \"atrics</w>\": 36253,\n  \"atrist</w>\": 41879,\n  \"atrium</w>\": 29725,\n  \"atrix</w>\": 43003,\n  \"atro\": 18724,\n  \"atroc\": 36197,\n  \"atrocities</w>\": 37551,\n  \"atry</w>\": 28334,\n  \"ats\": 46890,\n  \"ats</w>\": 1032,\n  \"atsu</w>\": 26531,\n  \"att\": 1017,\n  \"att</w>\": 7103,\n  \"atta\": 7282,\n  \"atta</w>\": 9146,\n  \"attach\": 43676,\n  \"attach</w>\": 35653,\n  \"attached</w>\": 11038,\n  \"attachment</w>\": 28638,\n  \"attack\": 24971,\n  \"attack</w>\": 3815,\n  \"attacked</w>\": 12366,\n  \"attacker</w>\": 39288,\n  \"attackers</w>\": 47701,\n  \"attacking</w>\": 16813,\n  \"attacks</w>\": 7321,\n  \"attain</w>\": 46459,\n  \"attar</w>\": 37110,\n  \"attemp\": 4933,\n  \"attempt</w>\": 7409,\n  \"attempted</w>\": 17408,\n  \"attempting</w>\": 18195,\n  \"attempts</w>\": 15610,\n  \"atten\": 4084,\n  \"atten</w>\": 32408,\n  \"attenborough</w>\": 45860,\n  \"attend\": 9841,\n  \"attend</w>\": 5802,\n  \"attendance</w>\": 11928,\n  \"attendant</w>\": 35424,\n  \"attended</w>\": 8140,\n  \"attendees</w>\": 14648,\n  \"attending</w>\": 6696,\n  \"attends</w>\": 22248,\n  \"attention</w>\": 4936,\n  \"atters</w>\": 30675,\n  \"atthe\": 21489,\n  \"atti\": 49265,\n  \"atti</w>\": 16235,\n  \"attic</w>\": 26766,\n  \"attire</w>\": 21222,\n  \"attitude</w>\": 10648,\n  \"attitudes</w>\": 27611,\n  \"attle\": 14685,\n  \"attle</w>\": 5030,\n  \"attn</w>\": 25677,\n  \"attor\": 8856,\n  \"attorney</w>\": 10372,\n  \"attorneys</w>\": 29113,\n  \"attrac\": 7154,\n  \"attract</w>\": 17010,\n  \"attracted</w>\": 28493,\n  \"attracting</w>\": 31909,\n  \"attraction</w>\": 16807,\n  \"attractions</w>\": 22307,\n  \"attractive</w>\": 12231,\n  \"attracts</w>\": 31024,\n  \"attribu\": 24624,\n  \"attributed</w>\": 37520,\n  \"attributes</w>\": 40763,\n  \"attu</w>\": 43173,\n  \"atty</w>\": 36705,\n  \"atu\": 15191,\n  \"atu</w>\": 24295,\n  \"atuesday</w>\": 34841,\n  \"atul\": 1744,\n  \"atul</w>\": 43948,\n  \"atum</w>\": 48295,\n  \"atur\": 14986,\n  \"aturday</w>\": 29027,\n  \"ature\": 25305,\n  \"ature</w>\": 4490,\n  \"atures</w>\": 7358,\n  \"atus</w>\": 14795,\n  \"atv</w>\": 19598,\n  \"atwood</w>\": 45680,\n  \"atwork</w>\": 39680,\n  \"atx\": 34849,\n  \"atx</w>\": 20136,\n  \"aty\": 40974,\n  \"aty</w>\": 33107,\n  \"atz</w>\": 30432,\n  \"au\": 627,\n  \"au</w>\": 2566,\n  \"aua</w>\": 45906,\n  \"aub</w>\": 45938,\n  \"auberg\": 49382,\n  \"aubre\": 25899,\n  \"aubrey</w>\": 34110,\n  \"auburn\": 42269,\n  \"auburn</w>\": 14534,\n  \"auc\": 24489,\n  \"auch</w>\": 43024,\n  \"auck\": 14588,\n  \"auckland</w>\": 16072,\n  \"auction\": 48160,\n  \"auction</w>\": 6462,\n  \"auctioned</w>\": 41073,\n  \"auctions</w>\": 24876,\n  \"aucus</w>\": 47374,\n  \"aud\": 16107,\n  \"aud</w>\": 19711,\n  \"audi\": 5091,\n  \"audi</w>\": 10277,\n  \"audible</w>\": 33227,\n  \"audience</w>\": 6863,\n  \"audiences</w>\": 22328,\n  \"audio\": 13792,\n  \"audio</w>\": 5766,\n  \"audiobook</w>\": 26282,\n  \"audit\": 12505,\n  \"audit</w>\": 17625,\n  \"auditi\": 37377,\n  \"audition</w>\": 18673,\n  \"auditions</w>\": 21134,\n  \"auditor</w>\": 38050,\n  \"auditorium</w>\": 15063,\n  \"audre\": 16075,\n  \"audrey</w>\": 18812,\n  \"audu\": 27934,\n  \"audubon</w>\": 40275,\n  \"auer</w>\": 33460,\n  \"auf</w>\": 28924,\n  \"aug\": 15397,\n  \"aug</w>\": 5720,\n  \"auga</w>\": 22797,\n  \"augh\": 28310,\n  \"augh</w>\": 14005,\n  \"augmente\": 48356,\n  \"augmented</w>\": 32708,\n  \"augu\": 2610,\n  \"august\": 24353,\n  \"august</w>\": 3171,\n  \"augusta</w>\": 26144,\n  \"augustine</w>\": 27397,\n  \"augustus</w>\": 36835,\n  \"auk</w>\": 19058,\n  \"aul\": 20695,\n  \"aul</w>\": 34391,\n  \"ault\": 47253,\n  \"ault</w>\": 10219,\n  \"aun\": 10608,\n  \"aun</w>\": 38721,\n  \"aunt</w>\": 12685,\n  \"auntie</w>\": 23783,\n  \"aunty</w>\": 29528,\n  \"aur\": 8156,\n  \"aur</w>\": 17282,\n  \"aura</w>\": 27728,\n  \"aure\": 36010,\n  \"aureli\": 35980,\n  \"auror\": 30067,\n  \"aurora</w>\": 13500,\n  \"aus\": 10624,\n  \"aus</w>\": 7630,\n  \"ausa</w>\": 37384,\n  \"ausbiz</w>\": 46543,\n  \"ausch\": 33926,\n  \"auschwitz</w>\": 36523,\n  \"ausopen</w>\": 27831,\n  \"ausp\": 35039,\n  \"auspicious</w>\": 38806,\n  \"auspol</w>\": 8241,\n  \"aussi\": 19762,\n  \"aussie\": 40230,\n  \"aussie</w>\": 14424,\n  \"aussies</w>\": 35727,\n  \"aust\": 26301,\n  \"aust</w>\": 25418,\n  \"austen</w>\": 29885,\n  \"auster\": 25030,\n  \"austerity</w>\": 26982,\n  \"austin\": 12845,\n  \"austin</w>\": 5125,\n  \"austinmahone</w>\": 34678,\n  \"austr\": 2518,\n  \"australi\": 13798,\n  \"australia</w>\": 3444,\n  \"australian\": 23630,\n  \"australian</w>\": 6258,\n  \"australians</w>\": 31488,\n  \"austri\": 8946,\n  \"austria</w>\": 11960,\n  \"austrian</w>\": 20638,\n  \"ausv\": 35206,\n  \"ausvotes</w>\": 34661,\n  \"aut</w>\": 12343,\n  \"auth\": 2381,\n  \"auth</w>\": 38247,\n  \"authent\": 18158,\n  \"authentic\": 41266,\n  \"authentic</w>\": 10369,\n  \"authentication</w>\": 39746,\n  \"authenticity</w>\": 35734,\n  \"autho\": 34552,\n  \"author\": 14447,\n  \"author</w>\": 4358,\n  \"authored</w>\": 37928,\n  \"authori\": 19207,\n  \"authorities</w>\": 12729,\n  \"authority</w>\": 10524,\n  \"authorization</w>\": 48854,\n  \"authorized</w>\": 28463,\n  \"authors</w>\": 10765,\n  \"auti\": 8200,\n  \"autism\": 36256,\n  \"autism</w>\": 11244,\n  \"autisma\": 43324,\n  \"autistic</w>\": 29360,\n  \"auto\": 3917,\n  \"auto</w>\": 5668,\n  \"autobiography</w>\": 31509,\n  \"autodesk</w>\": 40415,\n  \"autograph\": 10657,\n  \"autograph</w>\": 13722,\n  \"autographed</w>\": 16309,\n  \"autographs</w>\": 17376,\n  \"autoimmune</w>\": 45509,\n  \"autom\": 4114,\n  \"automate</w>\": 43203,\n  \"automated</w>\": 19022,\n  \"automatic</w>\": 12126,\n  \"automatically</w>\": 20725,\n  \"automation</w>\": 12328,\n  \"automobi\": 44813,\n  \"automobile</w>\": 25258,\n  \"automotive</w>\": 12607,\n  \"auton\": 13100,\n  \"autonews</w>\": 43975,\n  \"autonom\": 17870,\n  \"autonomous</w>\": 20722,\n  \"autonomy</w>\": 39223,\n  \"autopsy</w>\": 44436,\n  \"autos</w>\": 31118,\n  \"autoshow</w>\": 46788,\n  \"auts</w>\": 21140,\n  \"autu\": 5445,\n  \"autum\": 31783,\n  \"autumn\": 28940,\n  \"autumn</w>\": 6110,\n  \"autumnal</w>\": 35481,\n  \"aux\": 18154,\n  \"aux</w>\": 8909,\n  \"auxiliary</w>\": 37778,\n  \"av\": 722,\n  \"av</w>\": 8484,\n  \"ava</w>\": 12385,\n  \"avage</w>\": 31505,\n  \"avail\": 1651,\n  \"avail</w>\": 16686,\n  \"availability</w>\": 17551,\n  \"available</w>\": 1685,\n  \"aval\": 18012,\n  \"avalan\": 23970,\n  \"avalanche</w>\": 25815,\n  \"avalley</w>\": 45082,\n  \"avalon</w>\": 30436,\n  \"avan\": 27971,\n  \"avan</w>\": 33351,\n  \"avant</w>\": 24305,\n  \"avar\": 33423,\n  \"avatar</w>\": 18219,\n  \"ave\": 10062,\n  \"ave</w>\": 4860,\n  \"avec</w>\": 25828,\n  \"aved</w>\": 47918,\n  \"avel\": 46817,\n  \"avel</w>\": 48088,\n  \"aven\": 5963,\n  \"aven</w>\": 32971,\n  \"aveng\": 21935,\n  \"avenger</w>\": 24799,\n  \"avengers\": 39413,\n  \"avengers</w>\": 12016,\n  \"avengersendgame</w>\": 49342,\n  \"avent\": 22700,\n  \"avenue</w>\": 7042,\n  \"aver\": 8788,\n  \"aver</w>\": 11403,\n  \"average</w>\": 6254,\n  \"averaged</w>\": 37310,\n  \"averages</w>\": 48982,\n  \"averaging</w>\": 35266,\n  \"avery</w>\": 20313,\n  \"aves</w>\": 14023,\n  \"avfc</w>\": 21304,\n  \"avg</w>\": 19452,\n  \"avgeek</w>\": 11114,\n  \"avi\": 3324,\n  \"avi</w>\": 11297,\n  \"avia</w>\": 38710,\n  \"avian</w>\": 24115,\n  \"aviation\": 27717,\n  \"aviation</w>\": 7617,\n  \"aviator</w>\": 38921,\n  \"aviators</w>\": 48011,\n  \"avici\": 46192,\n  \"avicii</w>\": 49158,\n  \"avid</w>\": 19118,\n  \"avier</w>\": 14598,\n  \"avila</w>\": 45339,\n  \"aville</w>\": 40689,\n  \"avin\": 46204,\n  \"avis\": 45163,\n  \"avis</w>\": 19765,\n  \"aviv</w>\": 22130,\n  \"aviva</w>\": 47122,\n  \"aviz</w>\": 27607,\n  \"avl\": 44749,\n  \"avo\": 4496,\n  \"avo</w>\": 32400,\n  \"avoc\": 12291,\n  \"avocado</w>\": 14135,\n  \"avocados</w>\": 48911,\n  \"avoi\": 16797,\n  \"avoid\": 30448,\n  \"avoid</w>\": 5983,\n  \"avoidance</w>\": 47983,\n  \"avoided</w>\": 32103,\n  \"avoiding</w>\": 22086,\n  \"avoids</w>\": 48220,\n  \"avon\": 22790,\n  \"avon</w>\": 17348,\n  \"avril</w>\": 37763,\n  \"avs</w>\": 31896,\n  \"avut</w>\": 44472,\n  \"avy</w>\": 29973,\n  \"aw\": 808,\n  \"aw</w>\": 5557,\n  \"awa\": 4820,\n  \"awa</w>\": 6872,\n  \"await</w>\": 20769,\n  \"awaited</w>\": 20092,\n  \"awaiting</w>\": 14872,\n  \"awaits</w>\": 15635,\n  \"awak\": 9776,\n  \"awak</w>\": 41387,\n  \"awake</w>\": 14695,\n  \"awaken</w>\": 35412,\n  \"awakening</w>\": 17017,\n  \"awakens</w>\": 23191,\n  \"awal\": 42447,\n  \"awal</w>\": 35090,\n  \"awan\": 48869,\n  \"awan</w>\": 20420,\n  \"awar\": 5745,\n  \"award\": 36310,\n  \"award</w>\": 2047,\n  \"awarded</w>\": 7368,\n  \"awarding</w>\": 37089,\n  \"awards\": 34528,\n  \"awards</w>\": 2320,\n  \"aware\": 4427,\n  \"aware</w>\": 7196,\n  \"awareness\": 19217,\n  \"awareness</w>\": 4823,\n  \"awarenessmonth</w>\": 34278,\n  \"awarenessweek</w>\": 35294,\n  \"away\": 21088,\n  \"away</w>\": 1520,\n  \"aways</w>\": 12782,\n  \"awaz</w>\": 18586,\n  \"awd</w>\": 34846,\n  \"awe\": 1693,\n  \"awe</w>\": 14106,\n  \"aweather\": 42142,\n  \"aweather</w>\": 28681,\n  \"awec</w>\": 38916,\n  \"aweed</w>\": 29724,\n  \"awesom\": 16727,\n  \"awesome\": 30390,\n  \"awesome</w>\": 1848,\n  \"awesomeness</w>\": 22430,\n  \"awful</w>\": 13617,\n  \"awg</w>\": 46350,\n  \"awgs</w>\": 35275,\n  \"awh</w>\": 39566,\n  \"awhile</w>\": 19171,\n  \"awi</w>\": 15167,\n  \"awil\": 47271,\n  \"awilliams</w>\": 42163,\n  \"awk\": 8888,\n  \"awk</w>\": 40943,\n  \"awkward\": 42337,\n  \"awkward</w>\": 10304,\n  \"awn</w>\": 46222,\n  \"awp</w>\": 43300,\n  \"aws</w>\": 19658,\n  \"awsome</w>\": 47196,\n  \"awson</w>\": 36286,\n  \"aww</w>\": 11568,\n  \"awww</w>\": 15634,\n  \"awwww</w>\": 26460,\n  \"awx</w>\": 28385,\n  \"ax\": 3165,\n  \"ax</w>\": 9203,\n  \"axe</w>\": 19861,\n  \"axel\": 47889,\n  \"axel</w>\": 32131,\n  \"axes</w>\": 45970,\n  \"axi\": 30672,\n  \"axial</w>\": 46550,\n  \"axis</w>\": 19614,\n  \"axle</w>\": 39003,\n  \"axx\": 47411,\n  \"ay\": 658,\n  \"ay</w>\": 551,\n  \"aya</w>\": 5917,\n  \"ayala</w>\": 39827,\n  \"ayama</w>\": 41194,\n  \"ayan\": 37781,\n  \"ayan</w>\": 16269,\n  \"ayana</w>\": 37400,\n  \"ayas</w>\": 40904,\n  \"ayat\": 44902,\n  \"ayat</w>\": 35720,\n  \"aye\": 21661,\n  \"aye</w>\": 12446,\n  \"ayer</w>\": 24852,\n  \"ayers</w>\": 42783,\n  \"ayesha</w>\": 46570,\n  \"ayi</w>\": 33025,\n  \"ayles\": 44706,\n  \"ayne</w>\": 35669,\n  \"ayo\": 21929,\n  \"ayo</w>\": 18708,\n  \"ayr\": 23002,\n  \"ayr</w>\": 36473,\n  \"ayrshire</w>\": 32687,\n  \"ays</w>\": 785,\n  \"ayu</w>\": 40769,\n  \"ayurve\": 27185,\n  \"ayurveda</w>\": 38986,\n  \"ayush\": 44831,\n  \"ayy</w>\": 32514,\n  \"ayyy</w>\": 41052,\n  \"az\": 854,\n  \"az</w>\": 5468,\n  \"aza</w>\": 22883,\n  \"azad</w>\": 37838,\n  \"azalea</w>\": 34087,\n  \"azam</w>\": 34727,\n  \"azar</w>\": 27911,\n  \"azcardinals</w>\": 48846,\n  \"aze\": 41157,\n  \"aze</w>\": 28485,\n  \"azer\": 19169,\n  \"azerbai\": 20649,\n  \"azerbaijan</w>\": 23888,\n  \"azhar</w>\": 47019,\n  \"azi\": 23914,\n  \"azi</w>\": 18452,\n  \"azine</w>\": 29140,\n  \"azione</w>\": 48335,\n  \"aziz\": 41205,\n  \"aziz</w>\": 29630,\n  \"azo</w>\": 41227,\n  \"azon</w>\": 36854,\n  \"azores</w>\": 42826,\n  \"azte\": 33270,\n  \"aztec</w>\": 34749,\n  \"aztecs</w>\": 49387,\n  \"azu\": 27701,\n  \"azu</w>\": 46963,\n  \"azul</w>\": 39807,\n  \"azure</w>\": 18514,\n  \"azwx</w>\": 30262,\n  \"azy</w>\": 24783,\n  \"azz\": 9817,\n  \"azz</w>\": 26453,\n  \"azza</w>\": 22255,\n  \"azzi</w>\": 18758,\n  \"azzle</w>\": 39974,\n  \"azzo</w>\": 26779,\n  \"azzur\": 37055,\n  \"azzy</w>\": 44534,\n  \"aÃ±\": 23716,\n  \"aÃ±os</w>\": 41634,\n  \"b\": 65,\n  \"b</w>\": 321,\n  \"ba\": 932,\n  \"ba</w>\": 1792,\n  \"baa</w>\": 33004,\n  \"baahu\": 34145,\n  \"baahubali</w>\": 38663,\n  \"bab\": 1202,\n  \"bab</w>\": 19039,\n  \"baba</w>\": 12631,\n  \"babe\": 31177,\n  \"babe</w>\": 7716,\n  \"babes</w>\": 14253,\n  \"babies</w>\": 6635,\n  \"babs</w>\": 36217,\n  \"babu</w>\": 21623,\n  \"baby\": 7268,\n  \"baby</w>\": 1794,\n  \"babygirl</w>\": 39554,\n  \"babylon</w>\": 31928,\n  \"babymetal</w>\": 45013,\n  \"babys\": 22266,\n  \"babysitting</w>\": 34186,\n  \"bac\": 2791,\n  \"bac</w>\": 25867,\n  \"bacca</w>\": 40708,\n  \"bach\": 11773,\n  \"bach</w>\": 8758,\n  \"bachchan</w>\": 17690,\n  \"bachel\": 11283,\n  \"bachelor\": 45508,\n  \"bachelor</w>\": 16766,\n  \"bachelore\": 26009,\n  \"bachelorette</w>\": 29093,\n  \"bacher</w>\": 49211,\n  \"back\": 1663,\n  \"back</w>\": 893,\n  \"backbone</w>\": 35635,\n  \"backdrop</w>\": 20802,\n  \"backed</w>\": 12721,\n  \"backer</w>\": 22183,\n  \"backers</w>\": 32934,\n  \"background</w>\": 5994,\n  \"backgrounds</w>\": 28215,\n  \"backing</w>\": 14935,\n  \"backlash</w>\": 31519,\n  \"backpack</w>\": 14894,\n  \"backpacking</w>\": 29524,\n  \"backpacks</w>\": 37063,\n  \"backs</w>\": 7562,\n  \"backseat</w>\": 48812,\n  \"backstage</w>\": 9236,\n  \"backstreet\": 46337,\n  \"backthe\": 26127,\n  \"backto\": 18703,\n  \"backtoschool</w>\": 28730,\n  \"backtothe\": 43059,\n  \"backup</w>\": 14415,\n  \"backward</w>\": 37964,\n  \"backwards</w>\": 21283,\n  \"backyard</w>\": 12608,\n  \"bacon\": 48666,\n  \"bacon</w>\": 7104,\n  \"bacter\": 11814,\n  \"bacteria</w>\": 16556,\n  \"bacterial</w>\": 26101,\n  \"bad\": 2564,\n  \"bad</w>\": 2103,\n  \"bada</w>\": 37475,\n  \"badan</w>\": 39149,\n  \"badass</w>\": 11616,\n  \"baddest</w>\": 38112,\n  \"baden</w>\": 36690,\n  \"bader</w>\": 42254,\n  \"badge</w>\": 11301,\n  \"badger\": 32686,\n  \"badger</w>\": 22363,\n  \"badgers</w>\": 22521,\n  \"badges</w>\": 20084,\n  \"badlands</w>\": 43192,\n  \"badly</w>\": 13684,\n  \"badminton</w>\": 21412,\n  \"badoo</w>\": 33192,\n  \"bados</w>\": 25755,\n  \"bae\": 32834,\n  \"bae</w>\": 6855,\n  \"baek\": 18557,\n  \"baek</w>\": 32702,\n  \"baekhyun</w>\": 21572,\n  \"baes</w>\": 46332,\n  \"baf\": 13616,\n  \"baff\": 35693,\n  \"bafta</w>\": 29199,\n  \"bag\": 3408,\n  \"bag</w>\": 3365,\n  \"bage</w>\": 9698,\n  \"bagel</w>\": 28777,\n  \"bagels</w>\": 37489,\n  \"baggage</w>\": 31402,\n  \"bagged</w>\": 34047,\n  \"bagh\": 21659,\n  \"bagh</w>\": 37271,\n  \"baghdad</w>\": 30763,\n  \"bago</w>\": 25105,\n  \"bags</w>\": 6136,\n  \"bagu\": 27749,\n  \"baguette</w>\": 45334,\n  \"bah\": 8372,\n  \"bah</w>\": 16685,\n  \"baha\": 29592,\n  \"baham\": 43718,\n  \"bahamas</w>\": 21224,\n  \"bahan</w>\": 28704,\n  \"bahn</w>\": 33452,\n  \"bahrain</w>\": 12503,\n  \"bai\": 6232,\n  \"bai</w>\": 23339,\n  \"bail\": 22933,\n  \"bail</w>\": 16986,\n  \"bailey\": 27535,\n  \"bailey</w>\": 10180,\n  \"bain\": 40784,\n  \"bain</w>\": 21593,\n  \"bair\": 29059,\n  \"baird</w>\": 40474,\n  \"bait</w>\": 18010,\n  \"baj\": 20713,\n  \"baja\": 40418,\n  \"baja</w>\": 28374,\n  \"bajo</w>\": 32619,\n  \"bak\": 4059,\n  \"bak</w>\": 23742,\n  \"bakar</w>\": 41414,\n  \"bake\": 20736,\n  \"bake</w>\": 11878,\n  \"baked</w>\": 10364,\n  \"baker\": 27303,\n  \"baker</w>\": 7743,\n  \"bakers\": 35293,\n  \"bakers</w>\": 40231,\n  \"bakersfield</w>\": 40149,\n  \"bakery</w>\": 13377,\n  \"bakes</w>\": 43057,\n  \"bakhta\": 44912,\n  \"bakhtawar\": 46937,\n  \"bakhtawarbz</w>\": 47118,\n  \"baking</w>\": 11467,\n  \"baku\": 46417,\n  \"baku</w>\": 31852,\n  \"bal\": 1398,\n  \"bal</w>\": 2282,\n  \"bala</w>\": 20291,\n  \"balaji</w>\": 48694,\n  \"balance\": 42894,\n  \"balance</w>\": 6827,\n  \"balanced</w>\": 15273,\n  \"balances</w>\": 37733,\n  \"balancing</w>\": 23541,\n  \"balboa</w>\": 45098,\n  \"balcony</w>\": 16169,\n  \"bald\": 11153,\n  \"bald</w>\": 14875,\n  \"baldhead</w>\": 29191,\n  \"baldwin</w>\": 16242,\n  \"bale\": 48573,\n  \"bale</w>\": 18873,\n  \"bales</w>\": 42879,\n  \"bali\": 16432,\n  \"bali</w>\": 10900,\n  \"balkan</w>\": 48499,\n  \"balkans</w>\": 42987,\n  \"ball\": 3807,\n  \"ball</w>\": 1069,\n  \"balla\": 42246,\n  \"ballad</w>\": 33472,\n  \"ballarat</w>\": 46645,\n  \"ballard</w>\": 31750,\n  \"baller\": 49194,\n  \"baller</w>\": 25655,\n  \"ballerina</w>\": 34962,\n  \"ballers</w>\": 34173,\n  \"ballet</w>\": 10703,\n  \"balli\": 29406,\n  \"ballin\": 47444,\n  \"ballin</w>\": 33057,\n  \"balling</w>\": 47588,\n  \"ballis\": 46675,\n  \"ballistic</w>\": 36667,\n  \"ballo\": 8871,\n  \"ballon</w>\": 36469,\n  \"balloon</w>\": 13634,\n  \"balloons</w>\": 18130,\n  \"ballot</w>\": 14185,\n  \"ballots</w>\": 35051,\n  \"ballpark</w>\": 26080,\n  \"ballroom</w>\": 15493,\n  \"balls</w>\": 6927,\n  \"bally\": 17275,\n  \"bally</w>\": 29451,\n  \"balm</w>\": 24962,\n  \"balmain</w>\": 45929,\n  \"balo\": 12395,\n  \"baloch</w>\": 23173,\n  \"balochistan</w>\": 21918,\n  \"balot\": 44615,\n  \"balotelli</w>\": 45721,\n  \"bals</w>\": 44154,\n  \"balsam\": 29121,\n  \"balsamic</w>\": 32654,\n  \"balt</w>\": 24441,\n  \"balti\": 8400,\n  \"baltic</w>\": 23817,\n  \"baltimore\": 38502,\n  \"baltimore</w>\": 9582,\n  \"balu\": 38093,\n  \"bam\": 6383,\n  \"bam</w>\": 12686,\n  \"bama</w>\": 20021,\n  \"bambam</w>\": 34538,\n  \"bambi</w>\": 46596,\n  \"bamboo\": 49322,\n  \"bamboo</w>\": 16748,\n  \"ban\": 1159,\n  \"ban</w>\": 2777,\n  \"bana</w>\": 18428,\n  \"banan\": 38410,\n  \"banana</w>\": 8922,\n  \"bananas</w>\": 19121,\n  \"banc\": 39252,\n  \"band\": 4613,\n  \"band</w>\": 1963,\n  \"banda</w>\": 31865,\n  \"bandai</w>\": 42054,\n  \"bandana</w>\": 39265,\n  \"bandcamp</w>\": 32229,\n  \"banded</w>\": 37804,\n  \"bandic\": 44400,\n  \"bandit</w>\": 27639,\n  \"bandits</w>\": 33940,\n  \"bandra</w>\": 41393,\n  \"bands</w>\": 7858,\n  \"bandung</w>\": 29512,\n  \"bandwagon</w>\": 36432,\n  \"bandwidth</w>\": 48859,\n  \"bane</w>\": 9597,\n  \"banerjee</w>\": 48102,\n  \"banff</w>\": 29565,\n  \"bang\": 3524,\n  \"bang</w>\": 6907,\n  \"bangalore</w>\": 14697,\n  \"banger</w>\": 24872,\n  \"bangers</w>\": 38311,\n  \"banging</w>\": 33033,\n  \"bangkok</w>\": 12351,\n  \"bangla\": 10339,\n  \"bangla</w>\": 45928,\n  \"bangladesh</w>\": 11245,\n  \"bangle</w>\": 37634,\n  \"bangor</w>\": 31190,\n  \"bangs</w>\": 27992,\n  \"bangtan</w>\": 39131,\n  \"bani</w>\": 19732,\n  \"banjo</w>\": 27014,\n  \"bank\": 7061,\n  \"bank</w>\": 2723,\n  \"banker</w>\": 27316,\n  \"bankers</w>\": 30599,\n  \"bankholiday\": 48868,\n  \"banking</w>\": 9566,\n  \"bankno\": 49201,\n  \"bankof\": 39120,\n  \"bankrup\": 21904,\n  \"bankrupt\": 23077,\n  \"bankrupt</w>\": 37288,\n  \"bankruptcy</w>\": 23978,\n  \"banks</w>\": 6367,\n  \"banksy</w>\": 33350,\n  \"bann\": 5304,\n  \"banned</w>\": 12012,\n  \"banner</w>\": 9185,\n  \"banners</w>\": 23145,\n  \"banning</w>\": 26246,\n  \"bannon</w>\": 29710,\n  \"bano</w>\": 42947,\n  \"banquet</w>\": 14254,\n  \"bans</w>\": 15146,\n  \"bant\": 23301,\n  \"bant</w>\": 46657,\n  \"banter</w>\": 25535,\n  \"bao\": 39487,\n  \"bao</w>\": 20408,\n  \"bap\": 7415,\n  \"bap</w>\": 23754,\n  \"bapti\": 15477,\n  \"baptism</w>\": 36765,\n  \"baptist</w>\": 13274,\n  \"baptiste</w>\": 45770,\n  \"baptized</w>\": 45400,\n  \"bar\": 1040,\n  \"bar</w>\": 2411,\n  \"bara</w>\": 19345,\n  \"barack\": 18670,\n  \"barack</w>\": 22481,\n  \"barackobama</w>\": 18885,\n  \"barak\": 47419,\n  \"barak</w>\": 16260,\n  \"barang\": 38446,\n  \"barb\": 24173,\n  \"barb</w>\": 20913,\n  \"barbados</w>\": 26992,\n  \"barbar\": 7906,\n  \"barbara</w>\": 10937,\n  \"barbarian</w>\": 42530,\n  \"barbe\": 18372,\n  \"barbecue</w>\": 23501,\n  \"barber\": 19517,\n  \"barber</w>\": 12296,\n  \"barbershop</w>\": 37707,\n  \"barbican</w>\": 47668,\n  \"barbie</w>\": 16923,\n  \"barca</w>\": 22942,\n  \"barcel\": 6134,\n  \"barcelon\": 47820,\n  \"barcelona</w>\": 6412,\n  \"barclay\": 48877,\n  \"barclay</w>\": 45276,\n  \"barclays</w>\": 29538,\n  \"bard\": 39812,\n  \"bard</w>\": 17514,\n  \"bare\": 16023,\n  \"bare</w>\": 14318,\n  \"barefoot</w>\": 30327,\n  \"barely</w>\": 12684,\n  \"bargain</w>\": 15076,\n  \"bargaining</w>\": 41282,\n  \"bargains</w>\": 34126,\n  \"barge</w>\": 28272,\n  \"bari\": 21428,\n  \"bari</w>\": 28016,\n  \"barista</w>\": 31078,\n  \"barit\": 46300,\n  \"bark\": 32333,\n  \"bark</w>\": 16560,\n  \"barker</w>\": 20618,\n  \"barking</w>\": 32676,\n  \"barkley</w>\": 30266,\n  \"barley</w>\": 22607,\n  \"barlow</w>\": 25483,\n  \"barn\": 10490,\n  \"barn</w>\": 10942,\n  \"barnab\": 43272,\n  \"barnard</w>\": 44332,\n  \"barne\": 42527,\n  \"barnes</w>\": 13102,\n  \"barnet</w>\": 41943,\n  \"barnett</w>\": 27650,\n  \"barney</w>\": 24563,\n  \"barns</w>\": 43759,\n  \"barnsley\": 37109,\n  \"barnsley</w>\": 32153,\n  \"baro\": 17422,\n  \"baro</w>\": 30817,\n  \"baron\": 48371,\n  \"baron</w>\": 19349,\n  \"baroness</w>\": 45056,\n  \"barons</w>\": 45596,\n  \"baroque</w>\": 25065,\n  \"barr\": 39473,\n  \"barr</w>\": 22492,\n  \"barra\": 28442,\n  \"barra</w>\": 33542,\n  \"barrabest</w>\": 41376,\n  \"barrac\": 40835,\n  \"barracks</w>\": 35822,\n  \"barre\": 13840,\n  \"barre</w>\": 38257,\n  \"barred</w>\": 33261,\n  \"barrel</w>\": 11703,\n  \"barrels</w>\": 22059,\n  \"barren</w>\": 46743,\n  \"barrett</w>\": 18701,\n  \"barri\": 8660,\n  \"barric\": 29189,\n  \"barrie</w>\": 27090,\n  \"barrier</w>\": 15706,\n  \"barriers</w>\": 16321,\n  \"barrington</w>\": 48954,\n  \"barron</w>\": 34881,\n  \"barrow\": 42568,\n  \"barrow</w>\": 24983,\n  \"barry\": 18028,\n  \"barry</w>\": 8461,\n  \"barrymore</w>\": 49310,\n  \"bars</w>\": 8616,\n  \"barstool\": 44826,\n  \"bart\": 14838,\n  \"bart</w>\": 12870,\n  \"bartender</w>\": 33498,\n  \"barthol\": 48989,\n  \"bartlett</w>\": 37130,\n  \"bartol\": 38209,\n  \"barton\": 48853,\n  \"barton</w>\": 20345,\n  \"baru</w>\": 16356,\n  \"barun\": 38278,\n  \"barunsob\": 41398,\n  \"barÃ§a</w>\": 32788,\n  \"bas\": 1244,\n  \"bas</w>\": 11420,\n  \"basa</w>\": 26142,\n  \"base\": 2776,\n  \"base</w>\": 4579,\n  \"baseball\": 23479,\n  \"baseball</w>\": 3470,\n  \"based\": 35196,\n  \"based</w>\": 2812,\n  \"basel\": 42803,\n  \"basel</w>\": 20903,\n  \"baseline</w>\": 40648,\n  \"baseman</w>\": 45910,\n  \"basement</w>\": 14792,\n  \"bases</w>\": 20496,\n  \"bash\": 20462,\n  \"bash</w>\": 10972,\n  \"bashing</w>\": 37545,\n  \"bashir</w>\": 42799,\n  \"basic\": 40452,\n  \"basic</w>\": 7696,\n  \"basically</w>\": 9125,\n  \"basics</w>\": 15825,\n  \"basil\": 19225,\n  \"basil</w>\": 14936,\n  \"basilica</w>\": 27879,\n  \"basin</w>\": 16117,\n  \"basing\": 47321,\n  \"basis</w>\": 12278,\n  \"baske\": 3713,\n  \"basket</w>\": 10338,\n  \"basketball\": 40023,\n  \"basketball</w>\": 3835,\n  \"baskets</w>\": 27787,\n  \"basking</w>\": 39769,\n  \"basque</w>\": 37175,\n  \"bass\": 22831,\n  \"bass</w>\": 5992,\n  \"bassett</w>\": 45992,\n  \"bassist</w>\": 26496,\n  \"bast\": 28092,\n  \"basti\": 8559,\n  \"bastille</w>\": 41874,\n  \"bat\": 2121,\n  \"bat</w>\": 6575,\n  \"bata</w>\": 39277,\n  \"batb</w>\": 33962,\n  \"batch</w>\": 9413,\n  \"bate\": 25034,\n  \"bate</w>\": 28277,\n  \"bateman</w>\": 41635,\n  \"bates</w>\": 21727,\n  \"batgirl</w>\": 46460,\n  \"bath\": 6064,\n  \"bath</w>\": 5713,\n  \"bathing</w>\": 20144,\n  \"bathro\": 21201,\n  \"bathroom</w>\": 8470,\n  \"bathrooms</w>\": 26434,\n  \"baths</w>\": 19442,\n  \"bathtub</w>\": 39942,\n  \"bathurst</w>\": 36365,\n  \"bati\": 23362,\n  \"bati</w>\": 37589,\n  \"batman\": 27811,\n  \"batman</w>\": 7223,\n  \"baton</w>\": 24331,\n  \"bats</w>\": 14984,\n  \"batsman</w>\": 35432,\n  \"batt\": 2407,\n  \"batt</w>\": 48595,\n  \"battalion</w>\": 20820,\n  \"batter\": 12654,\n  \"batter</w>\": 31855,\n  \"battered</w>\": 34375,\n  \"batteries</w>\": 16666,\n  \"battersea</w>\": 35839,\n  \"battery</w>\": 7870,\n  \"batting</w>\": 17401,\n  \"battle\": 7344,\n  \"battle</w>\": 3528,\n  \"battled</w>\": 37837,\n  \"battlefield</w>\": 16055,\n  \"battlefront</w>\": 42214,\n  \"battleof\": 47560,\n  \"battles</w>\": 14213,\n  \"battleship</w>\": 35165,\n  \"battling</w>\": 17268,\n  \"bau\": 6055,\n  \"bau</w>\": 34840,\n  \"bauer</w>\": 22903,\n  \"baugh</w>\": 41301,\n  \"baum</w>\": 19840,\n  \"bautista</w>\": 31881,\n  \"bav\": 21075,\n  \"bavaria</w>\": 39977,\n  \"bavarian</w>\": 44458,\n  \"baw\": 19808,\n  \"bax\": 21216,\n  \"baxter</w>\": 26168,\n  \"bay\": 3631,\n  \"bay</w>\": 2174,\n  \"baya</w>\": 31573,\n  \"bayan</w>\": 43895,\n  \"bayarea</w>\": 28260,\n  \"bayer\": 48548,\n  \"bayer</w>\": 29183,\n  \"bayern</w>\": 14666,\n  \"baylor</w>\": 21721,\n  \"bayou</w>\": 33955,\n  \"bays</w>\": 40156,\n  \"baz\": 10430,\n  \"baz</w>\": 25268,\n  \"bazaar</w>\": 20070,\n  \"bazar</w>\": 49298,\n  \"bb\": 1174,\n  \"bb</w>\": 3529,\n  \"bba</w>\": 27762,\n  \"bball</w>\": 15664,\n  \"bbb</w>\": 33535,\n  \"bbc\": 5123,\n  \"bbc</w>\": 5188,\n  \"bbcc\": 39052,\n  \"bbce\": 33818,\n  \"bbcnews</w>\": 29370,\n  \"bbcone</w>\": 28259,\n  \"bbcqt</w>\": 37343,\n  \"bbcr</w>\": 35802,\n  \"bbcra\": 17115,\n  \"bbcradi\": 49213,\n  \"bbcradio</w>\": 22876,\n  \"bbcsport</w>\": 49321,\n  \"bbcspringwatch</w>\": 37358,\n  \"bbctwo</w>\": 40395,\n  \"bbcworld</w>\": 47340,\n  \"bbe</w>\": 37559,\n  \"bbed</w>\": 9077,\n  \"bber</w>\": 7933,\n  \"bbers</w>\": 36494,\n  \"bbhutto\": 28085,\n  \"bbhuttozardari</w>\": 28135,\n  \"bbi</w>\": 37047,\n  \"bbin</w>\": 38553,\n  \"bbing</w>\": 9787,\n  \"bbins</w>\": 42504,\n  \"bbl</w>\": 21961,\n  \"bble\": 26570,\n  \"bble</w>\": 5924,\n  \"bbled</w>\": 37626,\n  \"bbles</w>\": 18093,\n  \"bblo\": 21231,\n  \"bbloggers</w>\": 26614,\n  \"bbly</w>\": 43031,\n  \"bbm</w>\": 25382,\n  \"bbmas</w>\": 22145,\n  \"bbn</w>\": 28427,\n  \"bbnaija</w>\": 20984,\n  \"bbo</w>\": 21892,\n  \"bbq\": 41270,\n  \"bbq</w>\": 6726,\n  \"bbs</w>\": 10002,\n  \"bbuk</w>\": 45978,\n  \"bby\": 11166,\n  \"bby</w>\": 3810,\n  \"bc\": 3116,\n  \"bc</w>\": 2162,\n  \"bcc</w>\": 41509,\n  \"bcci</w>\": 36138,\n  \"bce</w>\": 36510,\n  \"bcfc</w>\": 34359,\n  \"bch</w>\": 36684,\n  \"bcn</w>\": 25766,\n  \"bcoz</w>\": 46373,\n  \"bcpoli</w>\": 24389,\n  \"bcs</w>\": 24909,\n  \"bcu</w>\": 28299,\n  \"bd\": 24358,\n  \"bd</w>\": 11165,\n  \"bday\": 33022,\n  \"bday</w>\": 5781,\n  \"bdg</w>\": 48418,\n  \"bds</w>\": 26732,\n  \"be\": 571,\n  \"be</w>\": 655,\n  \"bea\": 21886,\n  \"bea</w>\": 20925,\n  \"beach\": 6068,\n  \"beach</w>\": 2117,\n  \"beaches</w>\": 12183,\n  \"beachlife</w>\": 43824,\n  \"beacon\": 36883,\n  \"beacon</w>\": 18858,\n  \"beacons</w>\": 39395,\n  \"bead\": 31621,\n  \"bead</w>\": 23557,\n  \"beaded</w>\": 26661,\n  \"beads</w>\": 14099,\n  \"beagle</w>\": 30044,\n  \"beak</w>\": 36498,\n  \"beal</w>\": 45769,\n  \"beale</w>\": 39717,\n  \"beam\": 35339,\n  \"beam</w>\": 13663,\n  \"beams</w>\": 23993,\n  \"bean\": 16471,\n  \"bean</w>\": 5328,\n  \"beanie</w>\": 21534,\n  \"beans</w>\": 8302,\n  \"bear\": 6375,\n  \"bear</w>\": 4298,\n  \"bearable</w>\": 38608,\n  \"bearcats</w>\": 33242,\n  \"beard\": 26157,\n  \"beard</w>\": 9052,\n  \"bearded</w>\": 28459,\n  \"beardown</w>\": 43687,\n  \"beards</w>\": 33020,\n  \"bearer</w>\": 30686,\n  \"bearers</w>\": 47986,\n  \"bearing</w>\": 18370,\n  \"bearings</w>\": 42083,\n  \"bearish</w>\": 34829,\n  \"bears</w>\": 6182,\n  \"beasley</w>\": 43349,\n  \"beast\": 20847,\n  \"beast</w>\": 6957,\n  \"beastmode</w>\": 43076,\n  \"beasts</w>\": 21771,\n  \"beat\": 3774,\n  \"beat</w>\": 3018,\n  \"beaten</w>\": 10864,\n  \"beater</w>\": 41974,\n  \"beati\": 44386,\n  \"beating</w>\": 10078,\n  \"beatles</w>\": 11961,\n  \"beatport</w>\": 31421,\n  \"beatrice</w>\": 36922,\n  \"beats</w>\": 6289,\n  \"beatthe\": 40550,\n  \"beatty</w>\": 39903,\n  \"beatz</w>\": 33363,\n  \"beau\": 1016,\n  \"beau</w>\": 14298,\n  \"beaufort</w>\": 45423,\n  \"beaumont</w>\": 32857,\n  \"beaut</w>\": 24559,\n  \"beauti\": 1154,\n  \"beauties</w>\": 14874,\n  \"beautiful\": 13662,\n  \"beautiful</w>\": 1215,\n  \"beautifully</w>\": 10627,\n  \"beauty\": 12881,\n  \"beauty</w>\": 2488,\n  \"beav\": 23260,\n  \"beaver\": 26432,\n  \"beaver</w>\": 22874,\n  \"beavers</w>\": 34513,\n  \"beavs</w>\": 43909,\n  \"bebe</w>\": 23331,\n  \"bec\": 6899,\n  \"bec</w>\": 10773,\n  \"became</w>\": 5464,\n  \"because\": 32714,\n  \"because</w>\": 1631,\n  \"becca</w>\": 27088,\n  \"bech\": 44055,\n  \"beck\": 8256,\n  \"beck</w>\": 10396,\n  \"becker</w>\": 26918,\n  \"beckett</w>\": 27249,\n  \"beckham</w>\": 18764,\n  \"becky\": 32406,\n  \"becky</w>\": 18921,\n  \"become</w>\": 2989,\n  \"becomes</w>\": 6766,\n  \"becoming</w>\": 6208,\n  \"bed\": 4152,\n  \"bed</w>\": 2722,\n  \"bedding</w>\": 31761,\n  \"bedford</w>\": 20779,\n  \"bedi</w>\": 39181,\n  \"bedro\": 18415,\n  \"bedroom</w>\": 8411,\n  \"bedrooms</w>\": 23996,\n  \"beds</w>\": 13914,\n  \"bedside</w>\": 47473,\n  \"bedtime</w>\": 22115,\n  \"bee\": 6097,\n  \"bee</w>\": 5028,\n  \"beech\": 32733,\n  \"beech</w>\": 27596,\n  \"beef\": 21703,\n  \"beef</w>\": 6529,\n  \"beek</w>\": 37915,\n  \"been\": 33986,\n  \"been</w>\": 1025,\n  \"beep</w>\": 33432,\n  \"beer\": 8885,\n  \"beer</w>\": 2544,\n  \"beers</w>\": 10907,\n  \"bees\": 36249,\n  \"bees</w>\": 9100,\n  \"beet\": 12582,\n  \"beet</w>\": 28621,\n  \"beethoven</w>\": 23656,\n  \"beetle</w>\": 16534,\n  \"beetles</w>\": 36317,\n  \"beetro\": 29251,\n  \"beetroot</w>\": 31638,\n  \"beets</w>\": 36087,\n  \"before\": 20898,\n  \"before</w>\": 1348,\n  \"beg\": 2219,\n  \"beg</w>\": 22401,\n  \"began</w>\": 8636,\n  \"begg\": 36769,\n  \"begging</w>\": 25371,\n  \"begin\": 19197,\n  \"begin</w>\": 4947,\n  \"beginner</w>\": 24351,\n  \"beginners</w>\": 21930,\n  \"beginning</w>\": 5791,\n  \"beginnings</w>\": 22581,\n  \"begins</w>\": 4635,\n  \"begs</w>\": 43531,\n  \"begun</w>\": 10514,\n  \"beh\": 21971,\n  \"beh</w>\": 41612,\n  \"beha\": 5737,\n  \"behalf</w>\": 11470,\n  \"behave</w>\": 28825,\n  \"behaved</w>\": 41617,\n  \"behavi\": 6149,\n  \"behaving</w>\": 40745,\n  \"behavior</w>\": 10461,\n  \"behavioral</w>\": 25135,\n  \"behaviors</w>\": 37741,\n  \"behaviour</w>\": 14655,\n  \"behavioural</w>\": 46019,\n  \"behe\": 42329,\n  \"behin\": 2335,\n  \"behind</w>\": 2403,\n  \"behindthe\": 21104,\n  \"behindthescenes</w>\": 26253,\n  \"behold</w>\": 15929,\n  \"bei\": 38991,\n  \"bei</w>\": 23227,\n  \"beige</w>\": 26677,\n  \"beij\": 11547,\n  \"beijing</w>\": 11796,\n  \"bein\": 39117,\n  \"bein</w>\": 24168,\n  \"being\": 13481,\n  \"being</w>\": 1265,\n  \"beings</w>\": 17998,\n  \"beingsalmankhan</w>\": 19637,\n  \"beir\": 20176,\n  \"beirut</w>\": 22352,\n  \"beit</w>\": 26963,\n  \"bek\": 46846,\n  \"bek</w>\": 26135,\n  \"bekind</w>\": 46691,\n  \"bel\": 1308,\n  \"bel</w>\": 3543,\n  \"bela</w>\": 30555,\n  \"belarus</w>\": 30849,\n  \"belated</w>\": 20256,\n  \"belfast\": 35100,\n  \"belfast</w>\": 10015,\n  \"belgi\": 7001,\n  \"belgian</w>\": 15008,\n  \"belgium</w>\": 10239,\n  \"belgrade</w>\": 30502,\n  \"beli\": 1859,\n  \"beli</w>\": 45842,\n  \"belichick</w>\": 46132,\n  \"belie\": 20854,\n  \"beliebers</w>\": 27714,\n  \"belief</w>\": 14802,\n  \"beliefs</w>\": 20575,\n  \"believ\": 4972,\n  \"believe\": 15819,\n  \"believe</w>\": 2649,\n  \"believed</w>\": 13380,\n  \"believein\": 24294,\n  \"believeinfilm</w>\": 37375,\n  \"believer</w>\": 26057,\n  \"believers</w>\": 28434,\n  \"believes</w>\": 12017,\n  \"believing</w>\": 19551,\n  \"belinda</w>\": 44415,\n  \"belize</w>\": 27990,\n  \"bell\": 5417,\n  \"bell</w>\": 3718,\n  \"bella\": 18282,\n  \"bella</w>\": 10418,\n  \"bellamy</w>\": 34461,\n  \"bellator</w>\": 31985,\n  \"belle\": 13587,\n  \"belle</w>\": 11496,\n  \"belles</w>\": 40678,\n  \"bellevue</w>\": 32715,\n  \"belli\": 43335,\n  \"bellletstalk</w>\": 42695,\n  \"bello</w>\": 21954,\n  \"bells</w>\": 12811,\n  \"bellum</w>\": 35493,\n  \"belly\": 25901,\n  \"belly</w>\": 10404,\n  \"belmont</w>\": 25612,\n  \"belo\": 8379,\n  \"belo</w>\": 41649,\n  \"belong\": 16453,\n  \"belong</w>\": 13596,\n  \"belonged</w>\": 39893,\n  \"belonging</w>\": 28193,\n  \"belongs</w>\": 14395,\n  \"beloved</w>\": 9363,\n  \"below</w>\": 3788,\n  \"bels</w>\": 43127,\n  \"belt\": 36416,\n  \"belt</w>\": 7373,\n  \"belts</w>\": 21888,\n  \"belvedere</w>\": 48003,\n  \"ben\": 1465,\n  \"ben</w>\": 3518,\n  \"bena</w>\": 46249,\n  \"bench\": 17770,\n  \"bench</w>\": 8771,\n  \"benches</w>\": 36349,\n  \"benchmark</w>\": 31775,\n  \"bend\": 22100,\n  \"bend</w>\": 13332,\n  \"bender</w>\": 22551,\n  \"bendigo</w>\": 48197,\n  \"bending</w>\": 33897,\n  \"bene\": 12091,\n  \"bene</w>\": 47151,\n  \"beneath</w>\": 16850,\n  \"bened\": 13216,\n  \"benedic\": 24402,\n  \"benedict\": 47896,\n  \"benedict</w>\": 18027,\n  \"benef\": 3260,\n  \"benefici\": 38593,\n  \"beneficial</w>\": 24660,\n  \"beneficiaries</w>\": 42160,\n  \"benefit</w>\": 6399,\n  \"benefited</w>\": 48266,\n  \"benefiting</w>\": 29474,\n  \"benefits</w>\": 5465,\n  \"benefitting</w>\": 47222,\n  \"benevol\": 47060,\n  \"benfica</w>\": 33873,\n  \"beng\": 6962,\n  \"bengal\": 17404,\n  \"bengal</w>\": 16374,\n  \"bengali</w>\": 33774,\n  \"bengals</w>\": 23737,\n  \"bengaluru</w>\": 21707,\n  \"benghazi</w>\": 25967,\n  \"benin</w>\": 40296,\n  \"benitez</w>\": 46711,\n  \"benjam\": 10550,\n  \"benjamin\": 38647,\n  \"benjamin</w>\": 12131,\n  \"benji</w>\": 43548,\n  \"benn</w>\": 39097,\n  \"bennet</w>\": 48536,\n  \"bennett</w>\": 12186,\n  \"benny\": 42369,\n  \"benny</w>\": 20595,\n  \"beno\": 35268,\n  \"benoit</w>\": 44373,\n  \"benson</w>\": 19578,\n  \"bent\": 9809,\n  \"bent</w>\": 18369,\n  \"bentley</w>\": 16859,\n  \"benton</w>\": 30812,\n  \"benz\": 27937,\n  \"benz</w>\": 13470,\n  \"ber\": 867,\n  \"ber</w>\": 1516,\n  \"bera</w>\": 32802,\n  \"bere\": 17458,\n  \"bered</w>\": 9193,\n  \"beren\": 33654,\n  \"beret</w>\": 41658,\n  \"berg\": 12022,\n  \"berg</w>\": 3294,\n  \"bergen</w>\": 22918,\n  \"berger\": 35933,\n  \"berger</w>\": 13873,\n  \"bergh</w>\": 35120,\n  \"bergman</w>\": 42597,\n  \"bergs</w>\": 43592,\n  \"berk\": 15633,\n  \"berke\": 14639,\n  \"berkeley\": 46049,\n  \"berkeley</w>\": 16667,\n  \"berkshire</w>\": 27300,\n  \"berlin\": 23532,\n  \"berlin</w>\": 5891,\n  \"berman</w>\": 21514,\n  \"bermu\": 21032,\n  \"bermuda</w>\": 24644,\n  \"bern\": 9195,\n  \"bern</w>\": 18382,\n  \"bernade\": 46242,\n  \"bernar\": 11962,\n  \"bernard</w>\": 14579,\n  \"bernardino</w>\": 35328,\n  \"bernardo\": 27137,\n  \"bernardo</w>\": 28696,\n  \"bernardokath</w>\": 29081,\n  \"bernat\": 40578,\n  \"berni\": 18798,\n  \"bernie\": 40093,\n  \"bernie</w>\": 10503,\n  \"berniesanders</w>\": 23745,\n  \"bernstein</w>\": 33936,\n  \"berra</w>\": 15089,\n  \"berries</w>\": 8319,\n  \"berry\": 15334,\n  \"berry</w>\": 3488,\n  \"bers</w>\": 6408,\n  \"berser\": 39037,\n  \"bert\": 17340,\n  \"bert</w>\": 2358,\n  \"berta</w>\": 45187,\n  \"berth</w>\": 28317,\n  \"bertie</w>\": 47182,\n  \"berto</w>\": 34073,\n  \"bertr\": 36962,\n  \"bertrand</w>\": 41594,\n  \"berts</w>\": 30205,\n  \"berty</w>\": 35973,\n  \"berwick</w>\": 40407,\n  \"bery</w>\": 11411,\n  \"bes\": 26911,\n  \"bes</w>\": 3635,\n  \"beside</w>\": 13519,\n  \"besides</w>\": 17596,\n  \"bespoke</w>\": 15612,\n  \"bess</w>\": 43791,\n  \"best\": 3419,\n  \"best</w>\": 949,\n  \"bestbuy</w>\": 29749,\n  \"bestest</w>\": 31199,\n  \"bestfan\": 23880,\n  \"bestfanarmy</w>\": 24590,\n  \"bestfriend\": 29832,\n  \"bestfriend</w>\": 11856,\n  \"bestfriends</w>\": 23555,\n  \"besti\": 35210,\n  \"bestie</w>\": 17188,\n  \"besties</w>\": 27346,\n  \"besto\": 28615,\n  \"bestof\": 27892,\n  \"bestof</w>\": 39533,\n  \"bestseller</w>\": 25841,\n  \"bestselling</w>\": 28632,\n  \"bet\": 1051,\n  \"bet</w>\": 4430,\n  \"beta\": 43188,\n  \"beta</w>\": 9505,\n  \"betes</w>\": 10255,\n  \"beth\": 9993,\n  \"beth</w>\": 4892,\n  \"bethan\": 18781,\n  \"bethany\": 39130,\n  \"bethany</w>\": 27952,\n  \"bethe\": 12624,\n  \"bethel</w>\": 33410,\n  \"bethesda</w>\": 32527,\n  \"bethle\": 30760,\n  \"bethlehem</w>\": 31827,\n  \"betis</w>\": 45590,\n  \"beto</w>\": 33721,\n  \"betra\": 18436,\n  \"betrayal</w>\": 33171,\n  \"betrayed</w>\": 35692,\n  \"bets</w>\": 17107,\n  \"betsy</w>\": 28946,\n  \"bett\": 17715,\n  \"bett</w>\": 20489,\n  \"betta</w>\": 36387,\n  \"bette</w>\": 35855,\n  \"better\": 10320,\n  \"better</w>\": 1539,\n  \"bettertogether</w>\": 47392,\n  \"betting</w>\": 14319,\n  \"betts</w>\": 38637,\n  \"betty\": 36175,\n  \"betty</w>\": 14350,\n  \"between</w>\": 1957,\n  \"beu\": 38660,\n  \"bev\": 40324,\n  \"bev</w>\": 30968,\n  \"bever\": 9924,\n  \"beverage</w>\": 18694,\n  \"beverages</w>\": 28521,\n  \"beverley</w>\": 39165,\n  \"beverly\": 30906,\n  \"beverly</w>\": 16728,\n  \"beverlyhills</w>\": 45363,\n  \"beware</w>\": 14532,\n  \"bewithyou</w>\": 36787,\n  \"bex\": 18676,\n  \"bex</w>\": 24748,\n  \"bexhill</w>\": 49200,\n  \"bey\": 3234,\n  \"bey</w>\": 6767,\n  \"beyon\": 11447,\n  \"beyonce</w>\": 16632,\n  \"beyoncÃ©</w>\": 19219,\n  \"beyond\": 22246,\n  \"beyond</w>\": 4432,\n  \"bez\": 28592,\n  \"bez</w>\": 46764,\n  \"bezos</w>\": 45000,\n  \"bf\": 19858,\n  \"bf</w>\": 7990,\n  \"bfc</w>\": 37183,\n  \"bff</w>\": 11984,\n  \"bffs</w>\": 31462,\n  \"bfi</w>\": 34244,\n  \"bg\": 16674,\n  \"bg</w>\": 11295,\n  \"bgc</w>\": 47598,\n  \"bgs</w>\": 47963,\n  \"bgt</w>\": 40665,\n  \"bh\": 9930,\n  \"bh</w>\": 13603,\n  \"bha\": 6144,\n  \"bha</w>\": 33068,\n  \"bhafc</w>\": 30779,\n  \"bhagat</w>\": 49136,\n  \"bhai\": 48370,\n  \"bhai</w>\": 20508,\n  \"bhak\": 34501,\n  \"bham\": 31874,\n  \"bham</w>\": 23491,\n  \"bhan\": 27356,\n  \"bhand\": 48679,\n  \"bhar\": 9108,\n  \"bharat\": 27454,\n  \"bharat</w>\": 17430,\n  \"bharti</w>\": 46803,\n  \"bhat\": 23784,\n  \"bhatt</w>\": 36143,\n  \"bhav\": 44950,\n  \"bhi\": 28943,\n  \"bhi</w>\": 21955,\n  \"bhk</w>\": 45070,\n  \"bhm</w>\": 38741,\n  \"bho\": 19721,\n  \"bhopal</w>\": 44573,\n  \"bhp</w>\": 29776,\n  \"bhs</w>\": 29195,\n  \"bhu\": 9172,\n  \"bhuban\": 38729,\n  \"bhubanes\": 41213,\n  \"bhubaneswar</w>\": 45888,\n  \"bhushan</w>\": 40884,\n  \"bhutan</w>\": 32391,\n  \"bhutto</w>\": 30153,\n  \"bi\": 717,\n  \"bi</w>\": 3035,\n  \"bia</w>\": 3841,\n  \"biaf\": 26961,\n  \"biafra</w>\": 36355,\n  \"bian\": 19531,\n  \"bian</w>\": 9027,\n  \"bianca</w>\": 25854,\n  \"bianchi</w>\": 45720,\n  \"bians</w>\": 28141,\n  \"bias</w>\": 11268,\n  \"biased</w>\": 22178,\n  \"bib\": 44607,\n  \"bib</w>\": 21022,\n  \"bibi</w>\": 31182,\n  \"bibl\": 20912,\n  \"bible\": 26738,\n  \"bible</w>\": 7583,\n  \"bibli\": 23465,\n  \"biblical</w>\": 22841,\n  \"biblio\": 49131,\n  \"bic\": 5960,\n  \"bic</w>\": 10675,\n  \"bice\": 35589,\n  \"biceps</w>\": 46735,\n  \"bick\": 27238,\n  \"bicy\": 9247,\n  \"bicycle</w>\": 11652,\n  \"bicycles</w>\": 31326,\n  \"bid\": 21035,\n  \"bid</w>\": 5553,\n  \"bidding</w>\": 23237,\n  \"bide</w>\": 45178,\n  \"biden</w>\": 19451,\n  \"bids</w>\": 16148,\n  \"bie\": 5561,\n  \"bie</w>\": 4173,\n  \"bieber\": 48725,\n  \"bieber</w>\": 7535,\n  \"bien\": 19176,\n  \"bien</w>\": 25742,\n  \"biennale</w>\": 33776,\n  \"biennial</w>\": 36609,\n  \"bier\": 27226,\n  \"bier</w>\": 23508,\n  \"bies</w>\": 7867,\n  \"big\": 1915,\n  \"big</w>\": 1205,\n  \"bigbaldhead</w>\": 30325,\n  \"bigbang\": 41680,\n  \"bigbang</w>\": 23734,\n  \"bigdata</w>\": 9440,\n  \"bige\": 37762,\n  \"bigfoot</w>\": 37095,\n  \"bigg\": 15312,\n  \"bigg</w>\": 35399,\n  \"biggboss</w>\": 27056,\n  \"bigger</w>\": 6806,\n  \"biggest\": 19483,\n  \"biggest</w>\": 3505,\n  \"biggie</w>\": 28392,\n  \"biggs</w>\": 46507,\n  \"bigh\": 18106,\n  \"bighit</w>\": 35508,\n  \"bigo\": 14278,\n  \"bigolive</w>\": 20735,\n  \"bigotry</w>\": 37269,\n  \"bigre\": 36330,\n  \"bih</w>\": 33471,\n  \"bihar</w>\": 22849,\n  \"bij\": 42478,\n  \"bik\": 30306,\n  \"bike\": 11686,\n  \"bike</w>\": 3701,\n  \"biker\": 36100,\n  \"biker</w>\": 23449,\n  \"bikers</w>\": 29468,\n  \"bikes</w>\": 9227,\n  \"bikin\": 12638,\n  \"biking</w>\": 19157,\n  \"bikini</w>\": 14531,\n  \"bil\": 3092,\n  \"bil</w>\": 20506,\n  \"bilateral</w>\": 25599,\n  \"bilbao</w>\": 34802,\n  \"bild</w>\": 35512,\n  \"bile</w>\": 25943,\n  \"bilingual</w>\": 29623,\n  \"bilities</w>\": 13582,\n  \"bility</w>\": 4694,\n  \"bill\": 4444,\n  \"bill</w>\": 2886,\n  \"billboard</w>\": 10856,\n  \"billboards</w>\": 34741,\n  \"billed</w>\": 37558,\n  \"billi\": 7693,\n  \"billie</w>\": 23990,\n  \"billing</w>\": 31797,\n  \"billings</w>\": 43615,\n  \"billion\": 14520,\n  \"billion</w>\": 5729,\n  \"billionaire</w>\": 19475,\n  \"billionaires</w>\": 41590,\n  \"billions</w>\": 20742,\n  \"bills</w>\": 9810,\n  \"billsmafia</w>\": 48845,\n  \"billy\": 15626,\n  \"billy</w>\": 6814,\n  \"bilt\": 44770,\n  \"bilt</w>\": 26654,\n  \"bim\": 46737,\n  \"bim</w>\": 24775,\n  \"bin\": 4849,\n  \"bin</w>\": 5346,\n  \"binance</w>\": 43520,\n  \"binary</w>\": 23497,\n  \"bind</w>\": 44513,\n  \"binder</w>\": 30541,\n  \"binding</w>\": 21287,\n  \"bine</w>\": 34848,\n  \"bing\": 24818,\n  \"bing</w>\": 5665,\n  \"binge</w>\": 22600,\n  \"bingham\": 43785,\n  \"bingham</w>\": 47296,\n  \"bingo</w>\": 18418,\n  \"bino\": 29172,\n  \"bino</w>\": 24313,\n  \"bins</w>\": 26934,\n  \"bint\": 43647,\n  \"bio\": 2830,\n  \"bio</w>\": 5162,\n  \"biode\": 43502,\n  \"biodegradable</w>\": 47740,\n  \"biodiversity</w>\": 17428,\n  \"biof\": 45158,\n  \"biographical</w>\": 49232,\n  \"biography</w>\": 15423,\n  \"biological</w>\": 18821,\n  \"biologist</w>\": 35149,\n  \"biology</w>\": 9796,\n  \"biom\": 13010,\n  \"biomar\": 44549,\n  \"biomass</w>\": 36746,\n  \"biome\": 26218,\n  \"biomed\": 29280,\n  \"biomedical</w>\": 33117,\n  \"bionic</w>\": 46201,\n  \"biop\": 15009,\n  \"biopic</w>\": 27942,\n  \"bios</w>\": 48505,\n  \"biotech</w>\": 22514,\n  \"biotechnology</w>\": 40375,\n  \"biotic</w>\": 33773,\n  \"biotics</w>\": 41371,\n  \"bious</w>\": 31845,\n  \"bipartisan</w>\": 32266,\n  \"bipolar</w>\": 37097,\n  \"bique</w>\": 27809,\n  \"bir\": 921,\n  \"bir</w>\": 16284,\n  \"birch\": 31569,\n  \"birch</w>\": 22907,\n  \"bird\": 6908,\n  \"bird</w>\": 3329,\n  \"birdie</w>\": 29612,\n  \"birdies</w>\": 45618,\n  \"birding</w>\": 15851,\n  \"birdman</w>\": 41915,\n  \"birdphotography</w>\": 47999,\n  \"birds\": 41951,\n  \"birds</w>\": 4337,\n  \"birdwatching</w>\": 33497,\n  \"birk\": 48289,\n  \"birken\": 40661,\n  \"birmin\": 37482,\n  \"birmingham\": 38580,\n  \"birmingham</w>\": 7720,\n  \"birth\": 1128,\n  \"birth</w>\": 5397,\n  \"birthday\": 7381,\n  \"birthday</w>\": 1166,\n  \"birthdays</w>\": 17954,\n  \"birthplace</w>\": 31429,\n  \"biryani</w>\": 46489,\n  \"bis\": 5064,\n  \"bis</w>\": 14461,\n  \"biscu\": 11532,\n  \"biscuit</w>\": 18731,\n  \"biscuits</w>\": 18248,\n  \"bisexual</w>\": 36829,\n  \"bish\": 33690,\n  \"bish</w>\": 31461,\n  \"bishop\": 20625,\n  \"bishop</w>\": 8024,\n  \"bishops</w>\": 31579,\n  \"bison</w>\": 19741,\n  \"bistro</w>\": 21770,\n  \"bit\": 3010,\n  \"bit</w>\": 2010,\n  \"bitcoin\": 30848,\n  \"bitcoin</w>\": 6366,\n  \"bite</w>\": 41613,\n  \"biting</w>\": 23016,\n  \"bits</w>\": 7747,\n  \"bitt</w>\": 39251,\n  \"bius</w>\": 45525,\n  \"bix\": 46579,\n  \"biz\": 8212,\n  \"biz</w>\": 5431,\n  \"biza</w>\": 47013,\n  \"bizar\": 14886,\n  \"bizarre</w>\": 16965,\n  \"bizhour</w>\": 39462,\n  \"bizitalk</w>\": 34929,\n  \"bj\": 4592,\n  \"bj</w>\": 18229,\n  \"bjj</w>\": 27437,\n  \"bjor\": 26525,\n  \"bjp\": 37264,\n  \"bjp</w>\": 6178,\n  \"bk\": 15099,\n  \"bk</w>\": 14083,\n  \"bkk</w>\": 36433,\n  \"bl\": 833,\n  \"bl</w>\": 9467,\n  \"bla\": 2205,\n  \"bla</w>\": 19630,\n  \"blac\": 21008,\n  \"black\": 2025,\n  \"black</w>\": 1449,\n  \"blackand\": 12809,\n  \"blackandwhite\": 23688,\n  \"blackandwhite</w>\": 19506,\n  \"blackandwhitephotography</w>\": 27544,\n  \"blackberry</w>\": 16470,\n  \"blackbird</w>\": 38526,\n  \"blackburn</w>\": 23789,\n  \"blackfish</w>\": 42193,\n  \"blackfriday</w>\": 16445,\n  \"blackgirl\": 43591,\n  \"blackhawks</w>\": 19203,\n  \"blackhistory</w>\": 46982,\n  \"blackhistorymonth</w>\": 20135,\n  \"blacklist</w>\": 30295,\n  \"blacklivesmatter</w>\": 23467,\n  \"blackmail</w>\": 47295,\n  \"blackops</w>\": 43519,\n  \"blackout</w>\": 21733,\n  \"blackpanther</w>\": 36592,\n  \"blackpink</w>\": 20339,\n  \"blackpool</w>\": 21031,\n  \"blacks</w>\": 16351,\n  \"blackwell</w>\": 42642,\n  \"blad</w>\": 36635,\n  \"bladder</w>\": 33593,\n  \"blade</w>\": 10264,\n  \"blades</w>\": 16893,\n  \"blah</w>\": 29212,\n  \"blaine</w>\": 32457,\n  \"blair\": 31824,\n  \"blair</w>\": 14749,\n  \"blake\": 20229,\n  \"blake</w>\": 9579,\n  \"blame</w>\": 10695,\n  \"blamed</w>\": 32906,\n  \"blames</w>\": 27841,\n  \"blaming</w>\": 29287,\n  \"blan\": 4609,\n  \"blanc\": 30936,\n  \"blanc</w>\": 13301,\n  \"blanca</w>\": 40670,\n  \"blanchard</w>\": 40177,\n  \"blanche</w>\": 34875,\n  \"blanchett</w>\": 49378,\n  \"blanco</w>\": 26801,\n  \"bland\": 44372,\n  \"bland</w>\": 30799,\n  \"blank</w>\": 15134,\n  \"blanket</w>\": 12878,\n  \"blankets</w>\": 24042,\n  \"blanks</w>\": 48599,\n  \"blasio</w>\": 35553,\n  \"blasphe\": 36622,\n  \"blast\": 46349,\n  \"blast</w>\": 5964,\n  \"blasted</w>\": 38976,\n  \"blaster</w>\": 36341,\n  \"blasting</w>\": 26178,\n  \"blasts</w>\": 23067,\n  \"blat\": 22048,\n  \"blatant</w>\": 41391,\n  \"blatt</w>\": 39138,\n  \"blau\": 45307,\n  \"blaz\": 43413,\n  \"blaze</w>\": 15497,\n  \"blazer</w>\": 17606,\n  \"blazers</w>\": 16984,\n  \"blazing</w>\": 25267,\n  \"bldg</w>\": 22981,\n  \"ble\": 1447,\n  \"ble</w>\": 1059,\n  \"bleach</w>\": 27034,\n  \"bleak</w>\": 40355,\n  \"bled</w>\": 12006,\n  \"bleed\": 23027,\n  \"bleed</w>\": 24791,\n  \"bleedblue</w>\": 39160,\n  \"bleeding</w>\": 20311,\n  \"bleeds</w>\": 47339,\n  \"blen\": 25651,\n  \"blend</w>\": 10780,\n  \"blended</w>\": 25813,\n  \"blender</w>\": 25066,\n  \"blending</w>\": 34307,\n  \"blends</w>\": 28572,\n  \"bler\": 31305,\n  \"bler</w>\": 11979,\n  \"blers</w>\": 26930,\n  \"bles</w>\": 5763,\n  \"bless\": 9640,\n  \"bless</w>\": 5387,\n  \"blessed</w>\": 4411,\n  \"blessing</w>\": 10729,\n  \"blessings</w>\": 11185,\n  \"bleu</w>\": 30114,\n  \"blew</w>\": 18176,\n  \"bley</w>\": 43176,\n  \"bli\": 1450,\n  \"bli</w>\": 28051,\n  \"blin\": 9678,\n  \"blin</w>\": 5406,\n  \"blind\": 17248,\n  \"blind</w>\": 8351,\n  \"blinded</w>\": 49149,\n  \"blindness</w>\": 38812,\n  \"blinds</w>\": 32449,\n  \"bling\": 39764,\n  \"bling</w>\": 7097,\n  \"blink</w>\": 18976,\n  \"bliss\": 28531,\n  \"bliss</w>\": 12893,\n  \"blissful</w>\": 42145,\n  \"blit\": 39327,\n  \"blitz\": 42151,\n  \"blitz</w>\": 17548,\n  \"blizz\": 13075,\n  \"blizzard</w>\": 16111,\n  \"blk\": 42950,\n  \"blk</w>\": 22872,\n  \"blm</w>\": 30957,\n  \"bln</w>\": 47348,\n  \"blo\": 1204,\n  \"blo</w>\": 25505,\n  \"blob</w>\": 49312,\n  \"bloc</w>\": 30961,\n  \"block\": 4638,\n  \"block</w>\": 4593,\n  \"blockade</w>\": 33489,\n  \"blockbuster</w>\": 19939,\n  \"blockchain</w>\": 6653,\n  \"blocked</w>\": 9106,\n  \"blocker</w>\": 44767,\n  \"blocking</w>\": 12652,\n  \"blocks</w>\": 10113,\n  \"blog\": 16376,\n  \"blog</w>\": 2589,\n  \"blogg\": 33282,\n  \"blogged</w>\": 41380,\n  \"blogger\": 21352,\n  \"blogger</w>\": 7806,\n  \"bloggerrt</w>\": 48898,\n  \"bloggers</w>\": 11627,\n  \"blogging</w>\": 18090,\n  \"blogpost</w>\": 41842,\n  \"blogs</w>\": 16682,\n  \"bloke</w>\": 24384,\n  \"blom\": 48996,\n  \"blon\": 7958,\n  \"blond</w>\": 32426,\n  \"blonde</w>\": 10711,\n  \"blondes</w>\": 45130,\n  \"blondie</w>\": 39236,\n  \"bloo\": 2373,\n  \"blood\": 9231,\n  \"blood</w>\": 3590,\n  \"blooded</w>\": 41946,\n  \"bloodh\": 48480,\n  \"bloods</w>\": 39539,\n  \"bloody\": 38568,\n  \"bloody</w>\": 9468,\n  \"bloom\": 7311,\n  \"bloom</w>\": 10257,\n  \"bloomberg\": 43109,\n  \"bloomberg</w>\": 21238,\n  \"bloomfield</w>\": 40342,\n  \"blooming\": 45175,\n  \"blooming</w>\": 19266,\n  \"bloomington</w>\": 34731,\n  \"blooms</w>\": 21439,\n  \"bloss\": 10017,\n  \"blossom</w>\": 14472,\n  \"blossoms</w>\": 21916,\n  \"blot</w>\": 41710,\n  \"blou\": 44506,\n  \"blouse</w>\": 23525,\n  \"blow\": 15230,\n  \"blow</w>\": 10211,\n  \"blower</w>\": 25832,\n  \"blowing</w>\": 12087,\n  \"blown</w>\": 11848,\n  \"blowout</w>\": 34857,\n  \"blows</w>\": 21063,\n  \"blr</w>\": 47250,\n  \"bls</w>\": 39458,\n  \"blu\": 1263,\n  \"blu</w>\": 10273,\n  \"blue\": 3829,\n  \"blue</w>\": 1746,\n  \"bluebells</w>\": 47150,\n  \"blueberries</w>\": 29551,\n  \"blueberry</w>\": 18251,\n  \"bluebird</w>\": 40747,\n  \"bluec\": 43194,\n  \"bluef\": 41174,\n  \"bluegrass</w>\": 26241,\n  \"bluejays</w>\": 18684,\n  \"blueprint</w>\": 30594,\n  \"blues\": 17566,\n  \"blues</w>\": 5159,\n  \"blueslyrix</w>\": 47068,\n  \"bluet\": 13469,\n  \"bluetooth</w>\": 14052,\n  \"bluewave</w>\": 40025,\n  \"bluff</w>\": 27232,\n  \"bluffs</w>\": 48844,\n  \"blum</w>\": 34818,\n  \"blumen\": 38714,\n  \"blun\": 34472,\n  \"blunt</w>\": 19305,\n  \"blur\": 12102,\n  \"blur</w>\": 27976,\n  \"bluray</w>\": 36818,\n  \"blurred</w>\": 38013,\n  \"blurry</w>\": 21977,\n  \"blush</w>\": 22889,\n  \"blvd</w>\": 12578,\n  \"bly\": 20930,\n  \"bly</w>\": 4426,\n  \"bm\": 4773,\n  \"bm</w>\": 15916,\n  \"bma</w>\": 42573,\n  \"bmc</w>\": 27807,\n  \"bmi</w>\": 40642,\n  \"bmo</w>\": 39083,\n  \"bms</w>\": 34074,\n  \"bmw\": 26637,\n  \"bmw</w>\": 7869,\n  \"bmx</w>\": 22535,\n  \"bn\": 10496,\n  \"bn</w>\": 7992,\n  \"bnb</w>\": 20010,\n  \"bnha</w>\": 49336,\n  \"bnp</w>\": 47910,\n  \"bnw</w>\": 35903,\n  \"bo\": 647,\n  \"bo</w>\": 2525,\n  \"boa</w>\": 14732,\n  \"boar\": 7837,\n  \"boar</w>\": 35473,\n  \"board\": 10419,\n  \"board</w>\": 1972,\n  \"boarded</w>\": 43052,\n  \"boarder</w>\": 37414,\n  \"boardgame</w>\": 47829,\n  \"boardgames</w>\": 32646,\n  \"boarding</w>\": 10086,\n  \"boardroom</w>\": 47937,\n  \"boards</w>\": 7963,\n  \"boardwalk</w>\": 29043,\n  \"boast</w>\": 44467,\n  \"boasts</w>\": 30309,\n  \"boat\": 12426,\n  \"boat</w>\": 4440,\n  \"boath\": 45461,\n  \"boating</w>\": 21951,\n  \"boats</w>\": 10080,\n  \"boatsales</w>\": 46244,\n  \"bob\": 8444,\n  \"bob</w>\": 4423,\n  \"boba</w>\": 39948,\n  \"bobb\": 16891,\n  \"bobble</w>\": 38796,\n  \"bobblehead</w>\": 33451,\n  \"bobby\": 17847,\n  \"bobby</w>\": 7816,\n  \"bobc\": 26153,\n  \"bobcat</w>\": 37896,\n  \"bobcats</w>\": 27568,\n  \"bobo</w>\": 38939,\n  \"bobs</w>\": 45533,\n  \"boc\": 27307,\n  \"boc</w>\": 39042,\n  \"boca</w>\": 26094,\n  \"bock</w>\": 24961,\n  \"bod\": 17904,\n  \"bod</w>\": 26340,\n  \"boda</w>\": 42030,\n  \"bode\": 28452,\n  \"bode</w>\": 40429,\n  \"bodega</w>\": 47350,\n  \"bodied</w>\": 36892,\n  \"bodies</w>\": 9799,\n  \"bodily</w>\": 49119,\n  \"body\": 7132,\n  \"body</w>\": 1774,\n  \"bodybuilding</w>\": 24538,\n  \"bodyguard</w>\": 35565,\n  \"boe\": 23476,\n  \"boe</w>\": 21773,\n  \"boeh\": 38002,\n  \"boehner</w>\": 44599,\n  \"boeing\": 48135,\n  \"boeing</w>\": 11857,\n  \"boer\": 44889,\n  \"boer</w>\": 40768,\n  \"bog\": 23426,\n  \"bog</w>\": 28318,\n  \"bogo</w>\": 35769,\n  \"bogota</w>\": 47059,\n  \"bogus</w>\": 42907,\n  \"boh\": 43238,\n  \"bohe\": 40541,\n  \"bohemi\": 21552,\n  \"bohemian</w>\": 25753,\n  \"boho</w>\": 25444,\n  \"boi\": 37129,\n  \"boi</w>\": 12673,\n  \"boil</w>\": 31332,\n  \"boiled</w>\": 23886,\n  \"boiler\": 28212,\n  \"boiler</w>\": 25615,\n  \"boiling</w>\": 32019,\n  \"bois\": 47742,\n  \"bois</w>\": 21640,\n  \"boise</w>\": 23304,\n  \"bok\": 26671,\n  \"bok</w>\": 15289,\n  \"boko</w>\": 30929,\n  \"boks</w>\": 40216,\n  \"bol\": 2860,\n  \"bol</w>\": 8413,\n  \"bola</w>\": 12840,\n  \"bold\": 26975,\n  \"bold</w>\": 8911,\n  \"boldand\": 48413,\n  \"boldly</w>\": 44778,\n  \"boli\": 12722,\n  \"bolic</w>\": 27343,\n  \"bolivia</w>\": 28628,\n  \"bollah</w>\": 36336,\n  \"bolly\": 25302,\n  \"bollywood\": 32448,\n  \"bollywood</w>\": 9604,\n  \"bolo</w>\": 40236,\n  \"bolog\": 22818,\n  \"bologna</w>\": 27513,\n  \"bolster</w>\": 47304,\n  \"bolt</w>\": 13131,\n  \"bolton\": 48757,\n  \"bolton</w>\": 16598,\n  \"bolts</w>\": 26028,\n  \"bom\": 3012,\n  \"bom</w>\": 19469,\n  \"bomb\": 18091,\n  \"bomb</w>\": 6331,\n  \"bombar\": 25544,\n  \"bombardier</w>\": 42700,\n  \"bombay\": 48602,\n  \"bombay</w>\": 23890,\n  \"bombed</w>\": 24542,\n  \"bomber</w>\": 15436,\n  \"bombers</w>\": 21786,\n  \"bombing</w>\": 14475,\n  \"bombings</w>\": 43236,\n  \"bombs</w>\": 14410,\n  \"bombshell</w>\": 36340,\n  \"bon\": 1871,\n  \"bon</w>\": 4216,\n  \"bona</w>\": 33342,\n  \"bonanza</w>\": 40304,\n  \"bond\": 37022,\n  \"bond</w>\": 6826,\n  \"bonded</w>\": 37390,\n  \"bondi</w>\": 40092,\n  \"bonding</w>\": 19609,\n  \"bonds</w>\": 15786,\n  \"bone\": 22502,\n  \"bone</w>\": 6195,\n  \"bones</w>\": 9476,\n  \"bonfire</w>\": 23151,\n  \"bongo</w>\": 47519,\n  \"boni\": 32269,\n  \"boni</w>\": 46356,\n  \"bonita</w>\": 42896,\n  \"bonjour</w>\": 33176,\n  \"bonkers</w>\": 39865,\n  \"bonn</w>\": 38969,\n  \"bonnar\": 47191,\n  \"bonnaroo</w>\": 48777,\n  \"bonne</w>\": 25844,\n  \"bonnet</w>\": 30636,\n  \"bonnie</w>\": 18555,\n  \"bono</w>\": 24476,\n  \"bons</w>\": 42883,\n  \"bonsai</w>\": 44129,\n  \"bonus</w>\": 8164,\n  \"bonuses</w>\": 35144,\n  \"boo\": 824,\n  \"boo</w>\": 7317,\n  \"boogie</w>\": 22639,\n  \"book\": 2828,\n  \"book</w>\": 1116,\n  \"bookboost</w>\": 31257,\n  \"bookclub</w>\": 34438,\n  \"bookday</w>\": 26327,\n  \"booked</w>\": 12584,\n  \"booker</w>\": 21302,\n  \"bookfest</w>\": 39381,\n  \"booking</w>\": 10145,\n  \"bookings</w>\": 18345,\n  \"booklet</w>\": 27405,\n  \"bookmark</w>\": 33596,\n  \"bookof\": 45629,\n  \"bookreview</w>\": 27362,\n  \"books\": 44382,\n  \"books</w>\": 2161,\n  \"bookshelf</w>\": 34821,\n  \"bookshop</w>\": 24705,\n  \"bookstore</w>\": 17999,\n  \"bookstores</w>\": 46416,\n  \"bookworm</w>\": 20743,\n  \"boom\": 9609,\n  \"boom</w>\": 7121,\n  \"boomer\": 33819,\n  \"boomer</w>\": 31766,\n  \"boomers</w>\": 37988,\n  \"booming</w>\": 33487,\n  \"boon\": 24979,\n  \"boon</w>\": 35821,\n  \"boone</w>\": 23453,\n  \"boop</w>\": 45047,\n  \"boost\": 44639,\n  \"boost</w>\": 6260,\n  \"boosted</w>\": 37631,\n  \"booster</w>\": 20877,\n  \"boosters</w>\": 46859,\n  \"boosting</w>\": 28480,\n  \"boosts</w>\": 29247,\n  \"boot\": 10843,\n  \"boot</w>\": 8087,\n  \"bootcamp</w>\": 22051,\n  \"booted</w>\": 42564,\n  \"booth\": 47895,\n  \"booth</w>\": 3971,\n  \"booths</w>\": 32653,\n  \"booties</w>\": 46188,\n  \"bootleg</w>\": 38139,\n  \"boots</w>\": 7319,\n  \"booze</w>\": 24341,\n  \"bop</w>\": 19720,\n  \"bor\": 1141,\n  \"bor</w>\": 15093,\n  \"bora</w>\": 24736,\n  \"bord</w>\": 36891,\n  \"bordeaux</w>\": 22009,\n  \"border\": 16304,\n  \"border</w>\": 6177,\n  \"borderlands</w>\": 38676,\n  \"borders</w>\": 13900,\n  \"bore\": 14084,\n  \"bore</w>\": 24638,\n  \"bored</w>\": 8933,\n  \"boredom</w>\": 31460,\n  \"boretum</w>\": 38902,\n  \"borg</w>\": 14770,\n  \"borgh\": 17180,\n  \"boring</w>\": 12519,\n  \"boris\": 31212,\n  \"boris</w>\": 15704,\n  \"borisjohnson</w>\": 44481,\n  \"born\": 17695,\n  \"born</w>\": 2683,\n  \"borne\": 42910,\n  \"borne</w>\": 9328,\n  \"borneo</w>\": 33332,\n  \"bornon\": 41811,\n  \"bornonthisday</w>\": 42757,\n  \"boro\": 26796,\n  \"boro</w>\": 7974,\n  \"borough\": 22761,\n  \"borough</w>\": 6203,\n  \"borrow</w>\": 22293,\n  \"borrowed</w>\": 28224,\n  \"borrowing</w>\": 41045,\n  \"borussia</w>\": 36764,\n  \"bos\": 14885,\n  \"bos</w>\": 9644,\n  \"bosa</w>\": 46946,\n  \"bosch\": 42009,\n  \"bosch</w>\": 19466,\n  \"bosco</w>\": 36960,\n  \"bose</w>\": 23142,\n  \"bosh</w>\": 42244,\n  \"bosni\": 42924,\n  \"bosnia</w>\": 31396,\n  \"boss\": 17935,\n  \"boss</w>\": 4206,\n  \"bosses</w>\": 23906,\n  \"boston\": 11540,\n  \"boston</w>\": 4399,\n  \"bostonmarathon</w>\": 44533,\n  \"bot\": 4136,\n  \"bot</w>\": 6947,\n  \"botan\": 12554,\n  \"botanic</w>\": 32560,\n  \"botanical</w>\": 21026,\n  \"botany</w>\": 22612,\n  \"botd</w>\": 34451,\n  \"both\": 36575,\n  \"both</w>\": 2212,\n  \"bother</w>\": 21125,\n  \"bothered</w>\": 27997,\n  \"botox</w>\": 43449,\n  \"bots</w>\": 13721,\n  \"botswana</w>\": 27584,\n  \"bott\": 3520,\n  \"bott</w>\": 37225,\n  \"bottle\": 37306,\n  \"bottle</w>\": 5392,\n  \"bottled</w>\": 29331,\n  \"bottlen\": 46439,\n  \"bottles</w>\": 9754,\n  \"bottling</w>\": 42006,\n  \"bottom\": 32314,\n  \"bottom</w>\": 5931,\n  \"bottoms</w>\": 31524,\n  \"bou\": 3728,\n  \"bou</w>\": 23165,\n  \"bouchard</w>\": 47930,\n  \"boudo\": 48827,\n  \"bought</w>\": 4142,\n  \"boul\": 24830,\n  \"boulder</w>\": 18260,\n  \"boule\": 17652,\n  \"boulevard</w>\": 19504,\n  \"boun\": 5993,\n  \"bounce</w>\": 14316,\n  \"bouncing</w>\": 32060,\n  \"bouncy</w>\": 43415,\n  \"bound\": 15140,\n  \"bound</w>\": 4567,\n  \"boundaries</w>\": 18690,\n  \"boundary</w>\": 21344,\n  \"bounds</w>\": 37469,\n  \"bounty</w>\": 21142,\n  \"bouquet</w>\": 20961,\n  \"bour\": 2934,\n  \"bour</w>\": 35486,\n  \"bourbon\": 48118,\n  \"bourbon</w>\": 14652,\n  \"bourdain</w>\": 48095,\n  \"bourg</w>\": 20690,\n  \"bourgeo\": 45672,\n  \"bourn</w>\": 39143,\n  \"bourne\": 13789,\n  \"bourne</w>\": 5192,\n  \"bournemouth</w>\": 20911,\n  \"bout\": 19982,\n  \"bout</w>\": 8123,\n  \"bouti\": 10926,\n  \"boutique</w>\": 12179,\n  \"bow\": 2297,\n  \"bow</w>\": 4040,\n  \"bowden</w>\": 48538,\n  \"bowed</w>\": 49130,\n  \"bowel</w>\": 36880,\n  \"bowen</w>\": 25368,\n  \"bower</w>\": 40414,\n  \"bowers</w>\": 42238,\n  \"bowie</w>\": 13036,\n  \"bowing</w>\": 46398,\n  \"bowl\": 26719,\n  \"bowl</w>\": 3814,\n  \"bowled</w>\": 39987,\n  \"bowler</w>\": 25528,\n  \"bowlers</w>\": 42632,\n  \"bowles</w>\": 41611,\n  \"bowling</w>\": 10390,\n  \"bowls</w>\": 17787,\n  \"bowman</w>\": 22052,\n  \"bows</w>\": 17000,\n  \"bowser</w>\": 38234,\n  \"bowski</w>\": 48311,\n  \"box\": 2774,\n  \"box</w>\": 2063,\n  \"boxed</w>\": 24190,\n  \"boxer\": 40394,\n  \"boxer</w>\": 15363,\n  \"boxers</w>\": 31019,\n  \"boxes</w>\": 8350,\n  \"boxing\": 33669,\n  \"boxing</w>\": 5554,\n  \"boy\": 2927,\n  \"boy</w>\": 1876,\n  \"boyband</w>\": 31568,\n  \"boyce</w>\": 44480,\n  \"boycot\": 46208,\n  \"boycott\": 31615,\n  \"boycott</w>\": 19559,\n  \"boyd</w>\": 18295,\n  \"boyfriend</w>\": 7328,\n  \"boyfriends</w>\": 36541,\n  \"boyle</w>\": 22802,\n  \"boys\": 25223,\n  \"boys</w>\": 2034,\n  \"boyz</w>\": 16152,\n  \"bp\": 23410,\n  \"bp</w>\": 11558,\n  \"bpa</w>\": 43855,\n  \"bpd</w>\": 48587,\n  \"bpl</w>\": 28901,\n  \"bpm</w>\": 40338,\n  \"bps</w>\": 37794,\n  \"br\": 711,\n  \"br</w>\": 7532,\n  \"bra\": 1195,\n  \"bra</w>\": 5860,\n  \"brac\": 6663,\n  \"brace\": 8376,\n  \"brace</w>\": 9183,\n  \"bracelet</w>\": 8969,\n  \"bracelets</w>\": 20027,\n  \"braces</w>\": 19249,\n  \"brack\": 25676,\n  \"bracket</w>\": 14780,\n  \"brackets</w>\": 36183,\n  \"brad\": 4848,\n  \"brad</w>\": 9405,\n  \"bradbury</w>\": 45097,\n  \"braden</w>\": 46842,\n  \"bradford</w>\": 15062,\n  \"bradley\": 31905,\n  \"bradley</w>\": 10952,\n  \"brador</w>\": 24062,\n  \"bradshaw</w>\": 37556,\n  \"brady\": 42494,\n  \"brady</w>\": 11117,\n  \"brae\": 42874,\n  \"brae</w>\": 40040,\n  \"brag</w>\": 30110,\n  \"bragg</w>\": 38545,\n  \"bragging</w>\": 38199,\n  \"brah\": 20276,\n  \"brahms</w>\": 45114,\n  \"brai\": 25048,\n  \"braid</w>\": 31067,\n  \"braided</w>\": 39997,\n  \"braids</w>\": 34221,\n  \"brain\": 9454,\n  \"brain</w>\": 4812,\n  \"brains</w>\": 17129,\n  \"brainstorming</w>\": 36607,\n  \"braised</w>\": 28363,\n  \"brake</w>\": 14937,\n  \"brakes</w>\": 23456,\n  \"bral</w>\": 31309,\n  \"bram\": 14815,\n  \"bram</w>\": 39456,\n  \"brampton</w>\": 35124,\n  \"bran\": 3684,\n  \"bran</w>\": 28348,\n  \"brance\": 36072,\n  \"brance</w>\": 15413,\n  \"branch</w>\": 7998,\n  \"branches</w>\": 15843,\n  \"brand\": 3910,\n  \"brand</w>\": 2896,\n  \"branded</w>\": 18097,\n  \"brandi</w>\": 41003,\n  \"branding</w>\": 10841,\n  \"brando</w>\": 41892,\n  \"brandon\": 20423,\n  \"brandon</w>\": 9166,\n  \"brands</w>\": 8681,\n  \"brandt</w>\": 22552,\n  \"brandy</w>\": 26232,\n  \"brane</w>\": 32340,\n  \"branson</w>\": 28280,\n  \"brant\": 28951,\n  \"brant</w>\": 47592,\n  \"braries</w>\": 46377,\n  \"brary</w>\": 24520,\n  \"bras</w>\": 22611,\n  \"brasil</w>\": 18991,\n  \"brass\": 24348,\n  \"brass</w>\": 11655,\n  \"brat\": 26717,\n  \"brat</w>\": 26631,\n  \"brate</w>\": 41864,\n  \"braun\": 39129,\n  \"braun</w>\": 29309,\n  \"brave\": 25461,\n  \"brave</w>\": 7769,\n  \"braved</w>\": 47663,\n  \"bravely</w>\": 42303,\n  \"bravery</w>\": 25831,\n  \"braves</w>\": 14422,\n  \"braving</w>\": 43258,\n  \"bravo\": 38613,\n  \"bravo</w>\": 13006,\n  \"braw\": 37871,\n  \"brawl</w>\": 26066,\n  \"braxton</w>\": 37451,\n  \"bray\": 26256,\n  \"bray</w>\": 22993,\n  \"braz\": 4625,\n  \"brazil\": 47459,\n  \"brazil</w>\": 6305,\n  \"brazili\": 45697,\n  \"brazilian</w>\": 12111,\n  \"brb</w>\": 25316,\n  \"brc</w>\": 40393,\n  \"bre\": 887,\n  \"bre</w>\": 7782,\n  \"brea\": 7318,\n  \"brea</w>\": 46538,\n  \"breach</w>\": 21363,\n  \"breaches</w>\": 45173,\n  \"bread\": 18886,\n  \"bread</w>\": 5066,\n  \"breads</w>\": 43064,\n  \"break\": 2206,\n  \"break</w>\": 2568,\n  \"breakable</w>\": 30691,\n  \"breakaway</w>\": 42732,\n  \"breakdown</w>\": 14519,\n  \"breaker</w>\": 14814,\n  \"breakers</w>\": 22270,\n  \"breakfa\": 45931,\n  \"breakfast\": 30210,\n  \"breakfast</w>\": 3290,\n  \"breaking\": 14698,\n  \"breaking</w>\": 2755,\n  \"breakingbad</w>\": 38032,\n  \"breakingnews</w>\": 23837,\n  \"breakout</w>\": 16752,\n  \"breaks</w>\": 7263,\n  \"breakthrough</w>\": 18802,\n  \"breakup</w>\": 38931,\n  \"breast\": 12930,\n  \"breast</w>\": 9475,\n  \"breastcancer\": 40813,\n  \"breastcancer</w>\": 30065,\n  \"breastfeeding</w>\": 29033,\n  \"breasts</w>\": 37637,\n  \"breath\": 9508,\n  \"breath</w>\": 9576,\n  \"breathe</w>\": 11364,\n  \"breathing</w>\": 14959,\n  \"breathtaking</w>\": 14709,\n  \"brecht</w>\": 34622,\n  \"breck\": 44598,\n  \"bred\": 46929,\n  \"bred</w>\": 16008,\n  \"bree\": 7892,\n  \"bree</w>\": 37138,\n  \"breed\": 28030,\n  \"breed</w>\": 13791,\n  \"breeders</w>\": 37472,\n  \"breeding</w>\": 16544,\n  \"breeds</w>\": 29021,\n  \"breen</w>\": 48013,\n  \"brees</w>\": 46721,\n  \"breeze</w>\": 13125,\n  \"breezy</w>\": 21451,\n  \"breit\": 23864,\n  \"breitbart</w>\": 37926,\n  \"brek\": 35494,\n  \"bremen</w>\": 39861,\n  \"bren\": 5209,\n  \"brenda</w>\": 23786,\n  \"brendan\": 35134,\n  \"brendan</w>\": 15414,\n  \"brendon</w>\": 36756,\n  \"brennan</w>\": 22372,\n  \"brenner</w>\": 42941,\n  \"brent\": 31439,\n  \"brent</w>\": 16355,\n  \"brentwood</w>\": 33108,\n  \"brero</w>\": 47781,\n  \"bres</w>\": 32561,\n  \"bret\": 38020,\n  \"bret</w>\": 32548,\n  \"brethren</w>\": 43134,\n  \"breton</w>\": 32290,\n  \"brett\": 22591,\n  \"brett</w>\": 12394,\n  \"brev</w>\": 42882,\n  \"brevi\": 39475,\n  \"brew\": 5048,\n  \"brew</w>\": 7253,\n  \"brewco</w>\": 33582,\n  \"brewed</w>\": 23238,\n  \"brewer</w>\": 20756,\n  \"breweries</w>\": 35277,\n  \"brewers</w>\": 17618,\n  \"brewery</w>\": 8850,\n  \"brewing</w>\": 8275,\n  \"brewingco</w>\": 45155,\n  \"brews</w>\": 21663,\n  \"brewster</w>\": 40274,\n  \"brex\": 22726,\n  \"brexit\": 27666,\n  \"brexit</w>\": 5801,\n  \"brgy</w>\": 35983,\n  \"bri\": 1036,\n  \"bri</w>\": 18636,\n  \"bria</w>\": 35890,\n  \"brian\": 9824,\n  \"brian</w>\": 4989,\n  \"brianna</w>\": 32308,\n  \"briar</w>\": 46119,\n  \"bribe</w>\": 40042,\n  \"bribery</w>\": 41792,\n  \"bric\": 27055,\n  \"brice</w>\": 40190,\n  \"brick\": 13937,\n  \"brick</w>\": 9518,\n  \"bricks</w>\": 21029,\n  \"brics</w>\": 48196,\n  \"brid\": 16995,\n  \"bridal\": 36875,\n  \"bridal</w>\": 14284,\n  \"bride\": 18342,\n  \"bride</w>\": 8964,\n  \"brides</w>\": 18067,\n  \"bridesma\": 28356,\n  \"bridesmaid</w>\": 43399,\n  \"bridesmaids</w>\": 47754,\n  \"bridg\": 20623,\n  \"bridge\": 8647,\n  \"bridge</w>\": 2465,\n  \"bridgeport</w>\": 45201,\n  \"bridges</w>\": 11811,\n  \"bridget</w>\": 27073,\n  \"bridgewater</w>\": 38732,\n  \"bridging</w>\": 38109,\n  \"brie</w>\": 26622,\n  \"brief\": 9435,\n  \"brief</w>\": 8954,\n  \"briefed</w>\": 47326,\n  \"briefing</w>\": 12991,\n  \"briefly</w>\": 26980,\n  \"briefs</w>\": 29557,\n  \"brien</w>\": 13504,\n  \"brier</w>\": 43995,\n  \"brig\": 11081,\n  \"briga\": 46448,\n  \"brigade</w>\": 16032,\n  \"briggs</w>\": 28108,\n  \"brigh\": 6710,\n  \"bright\": 10383,\n  \"bright</w>\": 4852,\n  \"brighten</w>\": 18208,\n  \"brightening</w>\": 43929,\n  \"brighter</w>\": 18507,\n  \"brightest</w>\": 26159,\n  \"brightly</w>\": 36298,\n  \"brightness</w>\": 42280,\n  \"brighton\": 28416,\n  \"brighton</w>\": 9470,\n  \"brigitte</w>\": 44421,\n  \"brill\": 27342,\n  \"brill</w>\": 28601,\n  \"brilli\": 3821,\n  \"brilliance</w>\": 28146,\n  \"brilliant</w>\": 4106,\n  \"brilliantly</w>\": 26803,\n  \"brin\": 25620,\n  \"bring\": 11596,\n  \"bring</w>\": 2430,\n  \"bringback\": 28969,\n  \"bringbackour\": 45403,\n  \"bringing</w>\": 4777,\n  \"brings</w>\": 5138,\n  \"brink\": 39296,\n  \"brink</w>\": 28796,\n  \"brioche</w>\": 45818,\n  \"bris\": 9385,\n  \"bris</w>\": 15783,\n  \"brisban\": 30431,\n  \"brisbane\": 42932,\n  \"brisbane</w>\": 12407,\n  \"brisk</w>\": 43646,\n  \"brisket</w>\": 31920,\n  \"bristol\": 18159,\n  \"bristol</w>\": 8010,\n  \"brit\": 2318,\n  \"brit</w>\": 20066,\n  \"britain\": 40802,\n  \"britain</w>\": 6272,\n  \"britanni\": 31373,\n  \"britannia</w>\": 36188,\n  \"brite</w>\": 33827,\n  \"briti\": 8155,\n  \"british\": 8651,\n  \"british</w>\": 3504,\n  \"britishmuseum</w>\": 41858,\n  \"britney\": 37192,\n  \"britney</w>\": 21853,\n  \"britneyspears</w>\": 42990,\n  \"brits</w>\": 21832,\n  \"britt\": 10811,\n  \"britt</w>\": 25976,\n  \"brittany\": 38187,\n  \"brittany</w>\": 18818,\n  \"britton</w>\": 37422,\n  \"brium</w>\": 46079,\n  \"brixton</w>\": 30056,\n  \"bro\": 927,\n  \"bro</w>\": 4410,\n  \"broad\": 3491,\n  \"broad</w>\": 12623,\n  \"broadband</w>\": 21050,\n  \"broadcast</w>\": 8967,\n  \"broadcaster</w>\": 29005,\n  \"broadcasting</w>\": 14403,\n  \"broadcasts</w>\": 46742,\n  \"broader</w>\": 36029,\n  \"broadway\": 34599,\n  \"broadway</w>\": 9092,\n  \"broc\": 15587,\n  \"broccoli</w>\": 19094,\n  \"broch\": 21419,\n  \"brochure</w>\": 25275,\n  \"brock\": 14841,\n  \"brock</w>\": 16745,\n  \"brodie</w>\": 42150,\n  \"brody</w>\": 29608,\n  \"broke\": 42165,\n  \"broke</w>\": 6509,\n  \"broken\": 26126,\n  \"broken</w>\": 5107,\n  \"broker\": 34032,\n  \"broker</w>\": 20449,\n  \"brokerage</w>\": 41327,\n  \"brokers</w>\": 28271,\n  \"brom\": 18972,\n  \"brom</w>\": 33296,\n  \"bromance</w>\": 35353,\n  \"bromley</w>\": 35715,\n  \"bron\": 4011,\n  \"bron</w>\": 10243,\n  \"bronco\": 43488,\n  \"bronco</w>\": 34370,\n  \"broncos</w>\": 12516,\n  \"bronson</w>\": 37042,\n  \"bronte</w>\": 48936,\n  \"bronx\": 48310,\n  \"bronx</w>\": 17183,\n  \"brony</w>\": 21084,\n  \"bronze</w>\": 8459,\n  \"broo\": 5204,\n  \"brooch</w>\": 21207,\n  \"brook\": 4782,\n  \"brook</w>\": 7322,\n  \"brooke\": 28576,\n  \"brooke</w>\": 12549,\n  \"brookes</w>\": 39707,\n  \"brooklyn\": 23253,\n  \"brooklyn</w>\": 6983,\n  \"brooks\": 42779,\n  \"brooks</w>\": 9991,\n  \"broom\": 32046,\n  \"broom</w>\": 28008,\n  \"broome</w>\": 49335,\n  \"bros</w>\": 7776,\n  \"broth</w>\": 29994,\n  \"brotha</w>\": 33974,\n  \"brother\": 12697,\n  \"brother</w>\": 3157,\n  \"brotherhood</w>\": 19059,\n  \"brothers</w>\": 4548,\n  \"brou\": 27874,\n  \"brough</w>\": 21033,\n  \"brought</w>\": 4222,\n  \"brov\": 42881,\n  \"brow\": 6547,\n  \"brow</w>\": 15895,\n  \"broward</w>\": 34719,\n  \"brown\": 6315,\n  \"brown</w>\": 2866,\n  \"browne</w>\": 28440,\n  \"brownie</w>\": 23045,\n  \"brownies</w>\": 22312,\n  \"browning</w>\": 32241,\n  \"browns</w>\": 14051,\n  \"brows</w>\": 14998,\n  \"browse</w>\": 19060,\n  \"browser</w>\": 19768,\n  \"browsing</w>\": 29318,\n  \"brox</w>\": 43539,\n  \"brs</w>\": 47485,\n  \"brt</w>\": 46936,\n  \"bru\": 1698,\n  \"bru</w>\": 31028,\n  \"bruce\": 21223,\n  \"bruce</w>\": 7085,\n  \"bruh</w>\": 17575,\n  \"bruins</w>\": 14736,\n  \"bruise</w>\": 48048,\n  \"bruised</w>\": 46502,\n  \"brum\": 23862,\n  \"brum</w>\": 28078,\n  \"brun\": 6870,\n  \"brunch</w>\": 9113,\n  \"brune\": 29057,\n  \"brunei</w>\": 41898,\n  \"brunette</w>\": 35528,\n  \"bruno</w>\": 14568,\n  \"brunomars</w>\": 41156,\n  \"brunswick</w>\": 24012,\n  \"brush\": 27969,\n  \"brush</w>\": 8594,\n  \"brushed</w>\": 30298,\n  \"brushes</w>\": 21550,\n  \"brushing</w>\": 35072,\n  \"brussels</w>\": 11020,\n  \"brut</w>\": 39499,\n  \"brutal\": 42144,\n  \"brutal</w>\": 14556,\n  \"brutality</w>\": 31348,\n  \"brutally</w>\": 28132,\n  \"brute</w>\": 47552,\n  \"brux\": 49093,\n  \"bry\": 6587,\n  \"bry</w>\": 28228,\n  \"bryan\": 16134,\n  \"bryan</w>\": 10412,\n  \"bryant</w>\": 12256,\n  \"bryce</w>\": 19895,\n  \"bryn\": 36569,\n  \"bryn</w>\": 42877,\n  \"bryson</w>\": 38990,\n  \"bs\": 11783,\n  \"bs</w>\": 1329,\n  \"bsa</w>\": 46619,\n  \"bsb</w>\": 23070,\n  \"bsbi\": 41728,\n  \"bsbibotany</w>\": 42086,\n  \"bsc</w>\": 32031,\n  \"bsd</w>\": 41848,\n  \"bse</w>\": 46341,\n  \"bsf</w>\": 48314,\n  \"bsgo</w>\": 48474,\n  \"bsp</w>\": 47977,\n  \"bst</w>\": 19698,\n  \"bsu</w>\": 46385,\n  \"bt\": 3317,\n  \"bt</w>\": 4205,\n  \"btc</w>\": 10315,\n  \"btcc</w>\": 30759,\n  \"btn</w>\": 44681,\n  \"bto</w>\": 35516,\n  \"btob</w>\": 29379,\n  \"btr</w>\": 39767,\n  \"bts\": 15154,\n  \"bts</w>\": 4007,\n  \"btsarmy</w>\": 30302,\n  \"btsbbmas</w>\": 35297,\n  \"btsx\": 44971,\n  \"btv</w>\": 38541,\n  \"btw</w>\": 9520,\n  \"btwn</w>\": 28284,\n  \"bu\": 609,\n  \"bu</w>\": 5831,\n  \"bub\": 27704,\n  \"bub</w>\": 33158,\n  \"bubb\": 9739,\n  \"bubba</w>\": 28149,\n  \"bubble\": 28687,\n  \"bubble</w>\": 10799,\n  \"bubblegum</w>\": 48078,\n  \"bubbles</w>\": 17648,\n  \"bubbly</w>\": 31034,\n  \"buc\": 8207,\n  \"buccane\": 32830,\n  \"buccaneers</w>\": 38058,\n  \"buch\": 22623,\n  \"bucha</w>\": 43582,\n  \"buchan\": 27237,\n  \"buchanan</w>\": 28975,\n  \"bucharest</w>\": 37013,\n  \"buck\": 6061,\n  \"buck</w>\": 11433,\n  \"bucket\": 22596,\n  \"bucket</w>\": 10498,\n  \"bucketlist</w>\": 30778,\n  \"buckets</w>\": 27168,\n  \"buckeye</w>\": 34549,\n  \"buckeyes</w>\": 30741,\n  \"buckingham</w>\": 28736,\n  \"buckle</w>\": 21948,\n  \"buckley</w>\": 25905,\n  \"bucks</w>\": 6103,\n  \"bucky</w>\": 35916,\n  \"bucs</w>\": 20011,\n  \"bud\": 2942,\n  \"bud</w>\": 10737,\n  \"buda\": 18520,\n  \"buda</w>\": 49012,\n  \"budapest</w>\": 19202,\n  \"budd\": 7296,\n  \"buddha</w>\": 13981,\n  \"buddhism</w>\": 23744,\n  \"buddhist</w>\": 18697,\n  \"buddies</w>\": 14543,\n  \"budding</w>\": 31992,\n  \"buddy\": 40948,\n  \"buddy</w>\": 6557,\n  \"budge\": 32005,\n  \"budget\": 46758,\n  \"budget</w>\": 5639,\n  \"budgeting</w>\": 43789,\n  \"budgets</w>\": 36419,\n  \"buds</w>\": 14665,\n  \"budweiser</w>\": 40900,\n  \"buen\": 15640,\n  \"buena</w>\": 30876,\n  \"buenas</w>\": 48529,\n  \"bueno</w>\": 46202,\n  \"buenos</w>\": 26055,\n  \"buf\": 44417,\n  \"buff\": 5456,\n  \"buff</w>\": 21416,\n  \"buffal\": 25836,\n  \"buffalo\": 31231,\n  \"buffalo</w>\": 8054,\n  \"buffalob\": 38831,\n  \"buffalobills</w>\": 44352,\n  \"buffe\": 13724,\n  \"buffer</w>\": 33050,\n  \"buffet</w>\": 17829,\n  \"buffett</w>\": 34081,\n  \"buffs</w>\": 28906,\n  \"buffy</w>\": 33356,\n  \"bug\": 14453,\n  \"bug</w>\": 8162,\n  \"bugatti</w>\": 35451,\n  \"buggy</w>\": 28963,\n  \"bugs</w>\": 13850,\n  \"buh</w>\": 31406,\n  \"buhari</w>\": 14661,\n  \"buick</w>\": 22000,\n  \"buil\": 1354,\n  \"build\": 22739,\n  \"build</w>\": 3289,\n  \"builder</w>\": 14474,\n  \"builders</w>\": 17694,\n  \"building\": 21206,\n  \"building</w>\": 2307,\n  \"buildings</w>\": 8866,\n  \"builds</w>\": 16449,\n  \"buildthe\": 41497,\n  \"built\": 45824,\n  \"built</w>\": 3874,\n  \"buk\": 28084,\n  \"buk</w>\": 24317,\n  \"buka</w>\": 47778,\n  \"bukit</w>\": 39888,\n  \"bul\": 2572,\n  \"bul</w>\": 10200,\n  \"bula</w>\": 18726,\n  \"bulaga</w>\": 41575,\n  \"bular</w>\": 32187,\n  \"bulb</w>\": 22373,\n  \"bulbs</w>\": 24808,\n  \"bulgar\": 15424,\n  \"bulgaria</w>\": 20295,\n  \"bulgarian</w>\": 38693,\n  \"bulge</w>\": 47603,\n  \"bulk</w>\": 19643,\n  \"bull\": 4537,\n  \"bull</w>\": 6029,\n  \"bulldo\": 37675,\n  \"bulldog\": 34828,\n  \"bulldog</w>\": 15611,\n  \"bulldogs</w>\": 13916,\n  \"bullet\": 14340,\n  \"bullet</w>\": 12465,\n  \"bulletin</w>\": 19638,\n  \"bulletproof</w>\": 43212,\n  \"bullets</w>\": 22117,\n  \"bullied</w>\": 34689,\n  \"bullies</w>\": 39050,\n  \"bullion</w>\": 49114,\n  \"bullish</w>\": 22142,\n  \"bullock</w>\": 33198,\n  \"bullpen</w>\": 38081,\n  \"bulls</w>\": 10313,\n  \"bully\": 43111,\n  \"bully</w>\": 20190,\n  \"bullying</w>\": 13548,\n  \"bum\": 27683,\n  \"bum</w>\": 14226,\n  \"bumble\": 25585,\n  \"bumble</w>\": 39303,\n  \"bumblebee</w>\": 36911,\n  \"bummed</w>\": 48456,\n  \"bump\": 9783,\n  \"bump</w>\": 15877,\n  \"bumped</w>\": 22495,\n  \"bumper</w>\": 17881,\n  \"bumping</w>\": 40196,\n  \"bumps</w>\": 21115,\n  \"bun\": 2591,\n  \"bun</w>\": 13665,\n  \"bunch</w>\": 7796,\n  \"bund</w>\": 41905,\n  \"bunde\": 18841,\n  \"bundesliga</w>\": 21582,\n  \"bundle</w>\": 11793,\n  \"bundled</w>\": 47228,\n  \"bundles</w>\": 29834,\n  \"bundy</w>\": 37332,\n  \"bung</w>\": 44748,\n  \"bungal\": 29549,\n  \"bungalow</w>\": 33696,\n  \"bunk</w>\": 41236,\n  \"bunker</w>\": 23615,\n  \"bunnies</w>\": 28998,\n  \"bunny\": 34198,\n  \"bunny</w>\": 9258,\n  \"buns</w>\": 22235,\n  \"bunting</w>\": 30695,\n  \"buon\": 31350,\n  \"buon</w>\": 48498,\n  \"bur\": 1039,\n  \"bur</w>\": 17362,\n  \"burbank</w>\": 34862,\n  \"burberry</w>\": 30412,\n  \"burch</w>\": 44588,\n  \"burden</w>\": 18687,\n  \"bure\": 11902,\n  \"bureau\": 32098,\n  \"bureau</w>\": 15400,\n  \"burg\": 19505,\n  \"burg</w>\": 3499,\n  \"burge\": 20522,\n  \"burger\": 22356,\n  \"burger</w>\": 6548,\n  \"burgers</w>\": 13007,\n  \"burgess</w>\": 26211,\n  \"burgh\": 18141,\n  \"burgh</w>\": 4965,\n  \"burgl\": 25554,\n  \"burglar</w>\": 43365,\n  \"burglary</w>\": 32573,\n  \"burgring</w>\": 40823,\n  \"burgundy</w>\": 23650,\n  \"buri\": 46348,\n  \"buri</w>\": 42614,\n  \"burial</w>\": 22012,\n  \"buried</w>\": 14233,\n  \"burk\": 48822,\n  \"burke</w>\": 15340,\n  \"burle\": 27891,\n  \"burlesque</w>\": 33732,\n  \"burlington</w>\": 23370,\n  \"burma</w>\": 30305,\n  \"burmese</w>\": 47906,\n  \"burn\": 7934,\n  \"burn</w>\": 4285,\n  \"burnaby</w>\": 47541,\n  \"burne</w>\": 27246,\n  \"burned</w>\": 15022,\n  \"burner</w>\": 23243,\n  \"burnett</w>\": 28558,\n  \"burnham</w>\": 36111,\n  \"burning\": 46107,\n  \"burning</w>\": 8405,\n  \"burnley</w>\": 24653,\n  \"burnout</w>\": 36078,\n  \"burns</w>\": 10234,\n  \"burnt</w>\": 15185,\n  \"burr</w>\": 30879,\n  \"burrell</w>\": 49045,\n  \"burrito</w>\": 23473,\n  \"burritos</w>\": 47245,\n  \"burroughs</w>\": 41337,\n  \"burrows</w>\": 44846,\n  \"burst</w>\": 13005,\n  \"bursting</w>\": 32566,\n  \"bursts</w>\": 37026,\n  \"burt</w>\": 27162,\n  \"burton\": 42354,\n  \"burton</w>\": 12704,\n  \"burundi</w>\": 33595,\n  \"bury\": 12276,\n  \"bury</w>\": 3899,\n  \"burys</w>\": 32362,\n  \"bus\": 1319,\n  \"bus</w>\": 2840,\n  \"busan</w>\": 40172,\n  \"busc\": 35000,\n  \"busch</w>\": 20475,\n  \"buses</w>\": 12879,\n  \"bush\": 11191,\n  \"bush</w>\": 6867,\n  \"bushes</w>\": 37578,\n  \"busiest</w>\": 32764,\n  \"busine\": 4598,\n  \"busines\": 25364,\n  \"business\": 8346,\n  \"business</w>\": 1716,\n  \"businesses</w>\": 7287,\n  \"businessman</w>\": 25635,\n  \"buss</w>\": 47764,\n  \"bust\": 31299,\n  \"bust</w>\": 9959,\n  \"busted</w>\": 18643,\n  \"buster\": 37219,\n  \"buster</w>\": 12094,\n  \"busters</w>\": 16362,\n  \"busting</w>\": 29622,\n  \"busy\": 39332,\n  \"busy</w>\": 4354,\n  \"but\": 2201,\n  \"but</w>\": 767,\n  \"butch</w>\": 35102,\n  \"butcher</w>\": 18732,\n  \"butchers</w>\": 42334,\n  \"bute</w>\": 39240,\n  \"butes</w>\": 14630,\n  \"butler\": 35867,\n  \"butler</w>\": 10702,\n  \"butt\": 12500,\n  \"butt</w>\": 31523,\n  \"butte</w>\": 31678,\n  \"butter\": 5427,\n  \"butter</w>\": 6952,\n  \"butterflies</w>\": 16232,\n  \"butterfly</w>\": 9738,\n  \"buttermilk</w>\": 40180,\n  \"butternut</w>\": 36867,\n  \"buttery</w>\": 45535,\n  \"button\": 45480,\n  \"button</w>\": 8007,\n  \"buttons</w>\": 16188,\n  \"butts</w>\": 25309,\n  \"buu\": 42313,\n  \"buuren</w>\": 47752,\n  \"buxton</w>\": 41370,\n  \"buy\": 11632,\n  \"buy</w>\": 2131,\n  \"buyer</w>\": 14682,\n  \"buyers</w>\": 14663,\n  \"buying</w>\": 6566,\n  \"buys</w>\": 15560,\n  \"buzz\": 7866,\n  \"buzz</w>\": 8706,\n  \"buzzard</w>\": 47434,\n  \"buzzer</w>\": 38064,\n  \"buzzfeed</w>\": 26613,\n  \"buzzing</w>\": 18511,\n  \"bv\": 18958,\n  \"bv</w>\": 35861,\n  \"bvb</w>\": 22454,\n  \"bw\": 17672,\n  \"bw</w>\": 15120,\n  \"bway</w>\": 26652,\n  \"bwfc</w>\": 40918,\n  \"bwo\": 45902,\n  \"bx</w>\": 33633,\n  \"by\": 1713,\n  \"by</w>\": 638,\n  \"bye\": 20076,\n  \"bye</w>\": 4460,\n  \"byes</w>\": 47958,\n  \"byl</w>\": 34994,\n  \"byn\": 46917,\n  \"byn</w>\": 11890,\n  \"byo\": 28039,\n  \"bypass</w>\": 26530,\n  \"byr\": 15534,\n  \"byrd</w>\": 30369,\n  \"byrne</w>\": 19676,\n  \"byron\": 43504,\n  \"byron</w>\": 19775,\n  \"bys</w>\": 26740,\n  \"bystand\": 46138,\n  \"byte</w>\": 42798,\n  \"bytes</w>\": 39538,\n  \"bythe\": 36621,\n  \"byu\": 41072,\n  \"byu</w>\": 23770,\n  \"byz\": 35406,\n  \"byzantine</w>\": 44081,\n  \"bz</w>\": 13631,\n  \"bÃ©\": 40365,\n  \"bÃ¼\": 38706,\n  \"c\": 66,\n  \"c</w>\": 322,\n  \"ca\": 772,\n  \"ca</w>\": 1684,\n  \"caa</w>\": 19316,\n  \"cab\": 3033,\n  \"cab</w>\": 11912,\n  \"cabaret</w>\": 26263,\n  \"cabbage</w>\": 18407,\n  \"cabe</w>\": 32731,\n  \"cabello</w>\": 34371,\n  \"caber\": 29062,\n  \"cabernet</w>\": 33730,\n  \"cabin</w>\": 14178,\n  \"cabine\": 23354,\n  \"cabinet</w>\": 9937,\n  \"cabinets</w>\": 33083,\n  \"cabins</w>\": 48455,\n  \"cable</w>\": 7925,\n  \"cables</w>\": 22408,\n  \"cabo\": 37318,\n  \"cabo</w>\": 28370,\n  \"cabrera</w>\": 42338,\n  \"cabs</w>\": 42048,\n  \"cac\": 8298,\n  \"cac</w>\": 23872,\n  \"cacao</w>\": 38022,\n  \"cache</w>\": 28993,\n  \"caching</w>\": 40655,\n  \"cactus</w>\": 19794,\n  \"cad\": 6297,\n  \"cad</w>\": 20166,\n  \"caday</w>\": 34187,\n  \"cadbury</w>\": 44698,\n  \"caddy</w>\": 41521,\n  \"cade\": 10497,\n  \"cade</w>\": 17306,\n  \"cadet</w>\": 22764,\n  \"cadets</w>\": 19160,\n  \"cadillac</w>\": 18156,\n  \"cae</w>\": 49264,\n  \"caer\": 28298,\n  \"caes\": 15740,\n  \"caesar</w>\": 21642,\n  \"caesars</w>\": 42162,\n  \"caf\": 3471,\n  \"caf</w>\": 20867,\n  \"cafc</w>\": 30748,\n  \"cafe\": 15201,\n  \"cafe</w>\": 4979,\n  \"cafes</w>\": 40166,\n  \"cafeteria</w>\": 32817,\n  \"caffe\": 18258,\n  \"caffe</w>\": 45416,\n  \"caffeine</w>\": 22487,\n  \"cafÃ©</w>\": 15304,\n  \"cag\": 15714,\n  \"cage</w>\": 11838,\n  \"cages</w>\": 37939,\n  \"cah</w>\": 40519,\n  \"cahill</w>\": 33185,\n  \"cai\": 38971,\n  \"cai</w>\": 36116,\n  \"cain</w>\": 13747,\n  \"caine</w>\": 16799,\n  \"cair\": 15804,\n  \"cair</w>\": 46659,\n  \"cairn\": 31264,\n  \"cairn</w>\": 42467,\n  \"cairngor\": 44067,\n  \"cairns</w>\": 32941,\n  \"cairo</w>\": 19615,\n  \"cait\": 14116,\n  \"caitlin\": 47768,\n  \"caitlin</w>\": 26809,\n  \"caitlyn</w>\": 35763,\n  \"cajun\": 43425,\n  \"cajun</w>\": 33044,\n  \"cak</w>\": 42986,\n  \"cake\": 15295,\n  \"cake</w>\": 2972,\n  \"cakeday</w>\": 46207,\n  \"cakes</w>\": 5950,\n  \"cal\": 1198,\n  \"cal</w>\": 6372,\n  \"cala</w>\": 32133,\n  \"calab\": 31795,\n  \"calais</w>\": 39886,\n  \"calam\": 28841,\n  \"calc</w>\": 45055,\n  \"calci\": 22824,\n  \"calcium</w>\": 27815,\n  \"calcu\": 15328,\n  \"calcul\": 15734,\n  \"calculate</w>\": 37656,\n  \"calculated</w>\": 40688,\n  \"calculations</w>\": 44605,\n  \"calculator</w>\": 26093,\n  \"calculus</w>\": 35104,\n  \"calcutta</w>\": 42901,\n  \"calder\": 29372,\n  \"calder</w>\": 36817,\n  \"caldwell</w>\": 30484,\n  \"cale</w>\": 32674,\n  \"caleb</w>\": 19619,\n  \"caled\": 28421,\n  \"calend\": 6057,\n  \"calendar</w>\": 7122,\n  \"calendars</w>\": 17229,\n  \"calf</w>\": 17508,\n  \"calgary\": 27415,\n  \"calgary</w>\": 10797,\n  \"calhoun</w>\": 38929,\n  \"cali\": 2857,\n  \"cali</w>\": 16337,\n  \"caliber</w>\": 32820,\n  \"calibr\": 32597,\n  \"calico</w>\": 45379,\n  \"calif</w>\": 30839,\n  \"califor\": 3526,\n  \"californi\": 21303,\n  \"california</w>\": 3729,\n  \"call\": 7950,\n  \"call</w>\": 1620,\n  \"calla\": 20658,\n  \"callahan</w>\": 43313,\n  \"callaway</w>\": 42596,\n  \"callback</w>\": 44764,\n  \"calle\": 47699,\n  \"calle</w>\": 38144,\n  \"called</w>\": 2726,\n  \"caller</w>\": 30666,\n  \"calli\": 16338,\n  \"callie</w>\": 36512,\n  \"calligraphy</w>\": 27775,\n  \"calling</w>\": 4597,\n  \"callister</w>\": 49026,\n  \"callme\": 42449,\n  \"callof\": 41280,\n  \"calls</w>\": 4572,\n  \"callum</w>\": 23224,\n  \"calm\": 34990,\n  \"calm</w>\": 7011,\n  \"calming</w>\": 30690,\n  \"calorie</w>\": 32679,\n  \"calories</w>\": 18029,\n  \"cals</w>\": 47714,\n  \"calum</w>\": 16405,\n  \"calvary</w>\": 40169,\n  \"calvert</w>\": 47134,\n  \"calves</w>\": 31857,\n  \"calvin\": 27642,\n  \"calvin</w>\": 17345,\n  \"caly\": 10244,\n  \"calyp\": 29851,\n  \"cam\": 1004,\n  \"cam</w>\": 5982,\n  \"camar\": 31991,\n  \"camber\": 44362,\n  \"cambo\": 14662,\n  \"cambodia</w>\": 17347,\n  \"cambridge\": 24651,\n  \"cambridge</w>\": 9334,\n  \"cambridgeshire</w>\": 46139,\n  \"camden\": 38735,\n  \"camden</w>\": 17984,\n  \"came</w>\": 1986,\n  \"camel\": 27005,\n  \"camel</w>\": 21914,\n  \"camels</w>\": 41357,\n  \"cameo</w>\": 19492,\n  \"camer\": 4961,\n  \"camera</w>\": 3934,\n  \"cameraman</w>\": 43347,\n  \"cameras</w>\": 12172,\n  \"camero\": 20320,\n  \"cameron\": 19634,\n  \"cameron</w>\": 8057,\n  \"camerondallas</w>\": 40587,\n  \"cameroon</w>\": 24061,\n  \"camil\": 37745,\n  \"camila</w>\": 19919,\n  \"camilla</w>\": 38897,\n  \"camille</w>\": 26741,\n  \"camino</w>\": 28529,\n  \"camo\": 28702,\n  \"camo</w>\": 19716,\n  \"camogie</w>\": 39547,\n  \"camou\": 23588,\n  \"camoufla\": 23667,\n  \"camouflage</w>\": 29049,\n  \"camp\": 2854,\n  \"camp</w>\": 2877,\n  \"campa\": 2793,\n  \"campaig\": 9448,\n  \"campaign\": 44524,\n  \"campaign</w>\": 3193,\n  \"campaigner</w>\": 46364,\n  \"campaigners</w>\": 40272,\n  \"campaigning</w>\": 19594,\n  \"campaigns</w>\": 15669,\n  \"campan\": 31765,\n  \"campbell\": 29094,\n  \"campbell</w>\": 8806,\n  \"campe\": 16672,\n  \"campeon\": 49109,\n  \"campeones</w>\": 30105,\n  \"camper\": 41914,\n  \"camper</w>\": 24522,\n  \"campers</w>\": 26619,\n  \"campfire</w>\": 32530,\n  \"campground</w>\": 46969,\n  \"camping</w>\": 9982,\n  \"campo</w>\": 27600,\n  \"campos</w>\": 48077,\n  \"camps</w>\": 12806,\n  \"campsite</w>\": 44243,\n  \"campu\": 19687,\n  \"campus</w>\": 4560,\n  \"campuses</w>\": 31895,\n  \"camra</w>\": 46155,\n  \"camry</w>\": 46472,\n  \"cams</w>\": 32590,\n  \"can\": 950,\n  \"can</w>\": 753,\n  \"cana</w>\": 28341,\n  \"canad\": 13193,\n  \"canada</w>\": 2698,\n  \"canadaday</w>\": 39800,\n  \"canadi\": 4329,\n  \"canadian\": 22160,\n  \"canadian</w>\": 5255,\n  \"canadians</w>\": 18989,\n  \"canadiens</w>\": 40932,\n  \"canal\": 28585,\n  \"canal</w>\": 9535,\n  \"canals</w>\": 38483,\n  \"canaria</w>\": 47117,\n  \"canary\": 40409,\n  \"canary</w>\": 24523,\n  \"canberra</w>\": 16719,\n  \"canc\": 43189,\n  \"cancel\": 12026,\n  \"cancel</w>\": 21546,\n  \"canceled</w>\": 25874,\n  \"cancell\": 28027,\n  \"cancellation</w>\": 38765,\n  \"cancelled</w>\": 13270,\n  \"cancels</w>\": 34089,\n  \"cancer\": 12690,\n  \"cancer</w>\": 3148,\n  \"cancers</w>\": 33201,\n  \"cancun</w>\": 34721,\n  \"cand\": 4986,\n  \"candace</w>\": 45623,\n  \"candel\": 47834,\n  \"candi\": 6034,\n  \"candice</w>\": 30024,\n  \"candid\": 7884,\n  \"candid</w>\": 19206,\n  \"candidacy</w>\": 46248,\n  \"candidate</w>\": 6475,\n  \"candidates</w>\": 8619,\n  \"candied</w>\": 43982,\n  \"candies</w>\": 46305,\n  \"candle\": 18995,\n  \"candle</w>\": 12674,\n  \"candlelight</w>\": 34724,\n  \"candles</w>\": 15472,\n  \"candy\": 20741,\n  \"candy</w>\": 6417,\n  \"cane\": 23644,\n  \"cane</w>\": 14716,\n  \"canelo</w>\": 43210,\n  \"canes</w>\": 21902,\n  \"cani\": 35592,\n  \"canine</w>\": 27380,\n  \"cann\": 4139,\n  \"cann</w>\": 23709,\n  \"cannab\": 7577,\n  \"cannabis\": 31837,\n  \"cannabis</w>\": 8861,\n  \"canne\": 44252,\n  \"canned</w>\": 27290,\n  \"cannes</w>\": 13773,\n  \"canni\": 26389,\n  \"canning</w>\": 38621,\n  \"cannon\": 28771,\n  \"cannon</w>\": 15661,\n  \"cannons</w>\": 46269,\n  \"cannot</w>\": 4785,\n  \"canny</w>\": 26986,\n  \"cano\": 31668,\n  \"cano</w>\": 25937,\n  \"canoe</w>\": 23503,\n  \"canola</w>\": 40389,\n  \"canon\": 17749,\n  \"canon</w>\": 9310,\n  \"canopy</w>\": 26061,\n  \"cans</w>\": 13707,\n  \"cant\": 13395,\n  \"cant</w>\": 5784,\n  \"canteen</w>\": 39230,\n  \"canter\": 19301,\n  \"canterbury</w>\": 22271,\n  \"canti\": 42845,\n  \"cantina</w>\": 47472,\n  \"canton\": 37735,\n  \"canton</w>\": 25363,\n  \"cantore</w>\": 41769,\n  \"cantwait</w>\": 33760,\n  \"canu\": 20171,\n  \"canucks</w>\": 24321,\n  \"canv\": 30714,\n  \"canvas\": 22441,\n  \"canvas</w>\": 7483,\n  \"canvass</w>\": 40054,\n  \"canvassing</w>\": 33783,\n  \"cany\": 47674,\n  \"canyon\": 41246,\n  \"canyon</w>\": 9755,\n  \"cao</w>\": 29207,\n  \"cap\": 1289,\n  \"cap</w>\": 3938,\n  \"capabilities</w>\": 19512,\n  \"capability</w>\": 25885,\n  \"capable</w>\": 14742,\n  \"capac\": 24665,\n  \"capacity</w>\": 8970,\n  \"capcom</w>\": 28342,\n  \"cape\": 10288,\n  \"cape</w>\": 6631,\n  \"capecod</w>\": 41339,\n  \"capes</w>\": 38785,\n  \"capetown</w>\": 20059,\n  \"capit\": 6889,\n  \"capita</w>\": 41833,\n  \"capital\": 11198,\n  \"capital</w>\": 5439,\n  \"capitalism</w>\": 20068,\n  \"capitalist</w>\": 37015,\n  \"capitals</w>\": 29579,\n  \"capitol\": 43880,\n  \"capitol</w>\": 11375,\n  \"capo</w>\": 45477,\n  \"capp\": 16718,\n  \"capped</w>\": 24659,\n  \"capping</w>\": 42656,\n  \"cappuccino</w>\": 37402,\n  \"capri\": 48699,\n  \"capri</w>\": 30982,\n  \"capric\": 28667,\n  \"capricorn</w>\": 46314,\n  \"caps</w>\": 23185,\n  \"capsu\": 15608,\n  \"capsul\": 40341,\n  \"capsule</w>\": 20627,\n  \"capsules</w>\": 32870,\n  \"capt\": 45815,\n  \"capt</w>\": 17369,\n  \"captain\": 14958,\n  \"captain</w>\": 4621,\n  \"captainamerica</w>\": 46229,\n  \"captainmarvel</w>\": 48492,\n  \"captains</w>\": 18706,\n  \"caption</w>\": 11327,\n  \"captions</w>\": 41878,\n  \"captiv\": 19776,\n  \"captivating</w>\": 30580,\n  \"captive</w>\": 29038,\n  \"captivity</w>\": 41141,\n  \"capture</w>\": 8818,\n  \"captured</w>\": 8020,\n  \"captures</w>\": 15305,\n  \"capturing</w>\": 19548,\n  \"capu\": 44241,\n  \"car\": 811,\n  \"car</w>\": 1615,\n  \"cara</w>\": 20016,\n  \"carab\": 32251,\n  \"carac\": 30029,\n  \"caracas</w>\": 45854,\n  \"caramel</w>\": 14788,\n  \"carameli\": 41739,\n  \"caramelized</w>\": 43854,\n  \"carat</w>\": 32981,\n  \"carav\": 13814,\n  \"caravan</w>\": 18566,\n  \"carb</w>\": 21379,\n  \"carbo\": 43235,\n  \"carbon\": 14038,\n  \"carbon</w>\": 7549,\n  \"carbs</w>\": 29313,\n  \"carcin\": 31587,\n  \"carcinoma</w>\": 46810,\n  \"card\": 10793,\n  \"card</w>\": 2601,\n  \"cardam\": 49008,\n  \"cardboard</w>\": 19845,\n  \"cardi\": 6211,\n  \"cardi</w>\": 29677,\n  \"cardiac</w>\": 21256,\n  \"cardiff\": 22488,\n  \"cardiff</w>\": 9781,\n  \"cardigan</w>\": 30501,\n  \"cardin\": 8457,\n  \"cardinal\": 46310,\n  \"cardinal</w>\": 16472,\n  \"cardinals</w>\": 12837,\n  \"cardio\": 15003,\n  \"cardio</w>\": 23455,\n  \"cardiology</w>\": 37276,\n  \"cardiovascular</w>\": 29291,\n  \"cardo</w>\": 40625,\n  \"cards</w>\": 4094,\n  \"care\": 2050,\n  \"care</w>\": 1776,\n  \"cared</w>\": 27675,\n  \"career\": 20609,\n  \"career</w>\": 3061,\n  \"careers</w>\": 10090,\n  \"careful</w>\": 11999,\n  \"carefully</w>\": 15789,\n  \"caregi\": 22042,\n  \"caregiver</w>\": 46372,\n  \"caregivers</w>\": 35909,\n  \"careless</w>\": 47325,\n  \"carers</w>\": 26484,\n  \"cares</w>\": 10968,\n  \"caretaker</w>\": 48037,\n  \"carey</w>\": 14895,\n  \"cargo</w>\": 12490,\n  \"cari\": 18497,\n  \"cari</w>\": 37273,\n  \"carib\": 9757,\n  \"caribbean</w>\": 10368,\n  \"caribou</w>\": 42135,\n  \"caric\": 25337,\n  \"caricature</w>\": 38857,\n  \"carina</w>\": 44357,\n  \"caring</w>\": 13083,\n  \"carl\": 8273,\n  \"carl</w>\": 9482,\n  \"carla</w>\": 25552,\n  \"carleton</w>\": 46496,\n  \"carlin</w>\": 47559,\n  \"carlisle</w>\": 23276,\n  \"carlo\": 17861,\n  \"carlo</w>\": 15266,\n  \"carlos</w>\": 9538,\n  \"carlow</w>\": 44745,\n  \"carls\": 39635,\n  \"carlson</w>\": 24114,\n  \"carlton</w>\": 18934,\n  \"carly\": 23166,\n  \"carly</w>\": 22689,\n  \"carlyle</w>\": 46555,\n  \"carmel\": 30757,\n  \"carmel</w>\": 25601,\n  \"carmen\": 41427,\n  \"carmen</w>\": 18834,\n  \"carmichael</w>\": 41657,\n  \"carn\": 21597,\n  \"carnage</w>\": 31385,\n  \"carnation</w>\": 44577,\n  \"carnaval</w>\": 47238,\n  \"carne\": 17053,\n  \"carne</w>\": 42885,\n  \"carnegie</w>\": 25287,\n  \"carney</w>\": 34194,\n  \"carni\": 8438,\n  \"carnival\": 36708,\n  \"carnival</w>\": 10577,\n  \"caro\": 30317,\n  \"caro</w>\": 29344,\n  \"carol\": 4242,\n  \"carol</w>\": 11489,\n  \"carole</w>\": 31955,\n  \"carolin\": 26418,\n  \"carolina</w>\": 7027,\n  \"caroline\": 31064,\n  \"caroline</w>\": 12641,\n  \"carols</w>\": 33269,\n  \"carolyn</w>\": 25825,\n  \"carou\": 32224,\n  \"carousel</w>\": 36665,\n  \"carp</w>\": 26085,\n  \"carpen\": 15584,\n  \"carpenter</w>\": 18475,\n  \"carpet</w>\": 6922,\n  \"carpets</w>\": 34612,\n  \"carr\": 26951,\n  \"carr</w>\": 17136,\n  \"carra\": 32332,\n  \"carre\": 31114,\n  \"carrera</w>\": 32952,\n  \"carri\": 4739,\n  \"carriage\": 47885,\n  \"carriage</w>\": 21087,\n  \"carrick</w>\": 44052,\n  \"carrie\": 30334,\n  \"carrie</w>\": 15848,\n  \"carried</w>\": 12960,\n  \"carrier</w>\": 12308,\n  \"carriers</w>\": 26865,\n  \"carries</w>\": 17982,\n  \"carrieunderwood</w>\": 47338,\n  \"carrington</w>\": 48759,\n  \"carroll\": 41911,\n  \"carroll</w>\": 14893,\n  \"carrot</w>\": 15435,\n  \"carrots</w>\": 19299,\n  \"carry\": 31863,\n  \"carry</w>\": 6998,\n  \"carrying</w>\": 9920,\n  \"cars</w>\": 3346,\n  \"carsforsale</w>\": 45222,\n  \"carson\": 41766,\n  \"carson</w>\": 13171,\n  \"cart\": 27705,\n  \"cart</w>\": 13065,\n  \"cartag\": 45042,\n  \"cartagena</w>\": 47157,\n  \"carte</w>\": 44949,\n  \"cartel</w>\": 30529,\n  \"carter\": 27330,\n  \"carter</w>\": 7260,\n  \"cartier</w>\": 32951,\n  \"carto\": 5487,\n  \"carton</w>\": 41812,\n  \"cartoon\": 33082,\n  \"cartoon</w>\": 7651,\n  \"cartoonist</w>\": 30793,\n  \"cartoons</w>\": 17673,\n  \"cartri\": 47084,\n  \"cartridge</w>\": 29432,\n  \"cartridges</w>\": 49249,\n  \"carts</w>\": 27581,\n  \"cartunesapp</w>\": 32888,\n  \"caruso</w>\": 45192,\n  \"carve</w>\": 40152,\n  \"carved</w>\": 15127,\n  \"carver</w>\": 28850,\n  \"carving</w>\": 19428,\n  \"carvings</w>\": 48123,\n  \"cary</w>\": 22844,\n  \"cas\": 1671,\n  \"cas</w>\": 13831,\n  \"casa</w>\": 14643,\n  \"casablanc\": 36572,\n  \"casablanca</w>\": 41950,\n  \"casc\": 36714,\n  \"casca\": 43296,\n  \"cascade</w>\": 29065,\n  \"cascades</w>\": 46454,\n  \"case\": 17698,\n  \"case</w>\": 2068,\n  \"cases</w>\": 6888,\n  \"casey\": 24899,\n  \"casey</w>\": 12836,\n  \"cash\": 11050,\n  \"cash</w>\": 5131,\n  \"cashback</w>\": 36368,\n  \"cashe\": 32233,\n  \"cashew</w>\": 39531,\n  \"cashi\": 29517,\n  \"cashier</w>\": 34547,\n  \"cashmere</w>\": 34566,\n  \"casi\": 38350,\n  \"casino</w>\": 10473,\n  \"casio</w>\": 32261,\n  \"cask</w>\": 26299,\n  \"casm</w>\": 35198,\n  \"casper</w>\": 35892,\n  \"cass</w>\": 22556,\n  \"cassandra</w>\": 35289,\n  \"casser\": 31093,\n  \"casserole</w>\": 36045,\n  \"cassette</w>\": 19717,\n  \"cassi\": 14942,\n  \"cassidy</w>\": 21757,\n  \"cassie</w>\": 29323,\n  \"cassini</w>\": 46554,\n  \"cast\": 2509,\n  \"cast</w>\": 1970,\n  \"caste</w>\": 32693,\n  \"casted</w>\": 33838,\n  \"castel\": 43306,\n  \"castell\": 31792,\n  \"caster\": 32101,\n  \"caster</w>\": 8449,\n  \"casters</w>\": 29721,\n  \"castic</w>\": 47737,\n  \"castillo</w>\": 30813,\n  \"casting</w>\": 7087,\n  \"castle\": 12496,\n  \"castle</w>\": 3540,\n  \"castles</w>\": 24766,\n  \"castro</w>\": 16950,\n  \"casts</w>\": 10595,\n  \"casu\": 15345,\n  \"casual</w>\": 10129,\n  \"casually</w>\": 18840,\n  \"casualties</w>\": 30244,\n  \"casualty</w>\": 31222,\n  \"cat\": 1481,\n  \"cat</w>\": 2368,\n  \"cata</w>\": 42279,\n  \"catal\": 12792,\n  \"catalan</w>\": 30532,\n  \"catalina</w>\": 36576,\n  \"catalo\": 34740,\n  \"catalog</w>\": 20036,\n  \"catalogue</w>\": 20985,\n  \"catalonia</w>\": 27039,\n  \"catalunya</w>\": 44132,\n  \"cataly\": 15894,\n  \"catalyst</w>\": 25387,\n  \"catan</w>\": 45893,\n  \"catap\": 39514,\n  \"catar\": 35801,\n  \"catastro\": 22736,\n  \"catastrophe</w>\": 41422,\n  \"catastrophic</w>\": 34448,\n  \"catch\": 18901,\n  \"catch</w>\": 3042,\n  \"catcher</w>\": 15965,\n  \"catchers</w>\": 39060,\n  \"catches</w>\": 17213,\n  \"catching</w>\": 8617,\n  \"catchy</w>\": 37114,\n  \"catday</w>\": 32243,\n  \"cate\": 6357,\n  \"cate</w>\": 24510,\n  \"cated</w>\": 31823,\n  \"categor\": 17006,\n  \"categori\": 40117,\n  \"categories</w>\": 19971,\n  \"category</w>\": 9432,\n  \"cater\": 16634,\n  \"cater</w>\": 38101,\n  \"catering</w>\": 16697,\n  \"caterpillar</w>\": 27111,\n  \"catfish</w>\": 26077,\n  \"cath\": 9196,\n  \"cath</w>\": 30811,\n  \"cathar\": 43784,\n  \"cathe\": 7174,\n  \"cathedr\": 46370,\n  \"cathedral</w>\": 7865,\n  \"catherine\": 35035,\n  \"catherine</w>\": 12339,\n  \"catho\": 7595,\n  \"cathol\": 16315,\n  \"catholic\": 20382,\n  \"catholic</w>\": 7757,\n  \"catholics</w>\": 36808,\n  \"cathy\": 40326,\n  \"cathy</w>\": 22731,\n  \"cation</w>\": 21367,\n  \"cato</w>\": 33558,\n  \"cats\": 38800,\n  \"cats</w>\": 3989,\n  \"catsofinstagram</w>\": 39901,\n  \"catsoftwitter</w>\": 17273,\n  \"catt\": 37339,\n  \"cattle\": 48799,\n  \"cattle</w>\": 13644,\n  \"caturday</w>\": 20892,\n  \"catwalk</w>\": 36565,\n  \"catwoman</w>\": 47251,\n  \"cau\": 1121,\n  \"cau</w>\": 45529,\n  \"caucus</w>\": 18847,\n  \"caught</w>\": 4520,\n  \"caul\": 23460,\n  \"cauley</w>\": 41682,\n  \"caulfield</w>\": 44906,\n  \"cauli\": 20123,\n  \"cauliflower</w>\": 23802,\n  \"cause\": 18982,\n  \"cause</w>\": 1394,\n  \"caused</w>\": 8940,\n  \"causes</w>\": 9775,\n  \"causeway</w>\": 35034,\n  \"causing</w>\": 10779,\n  \"caution</w>\": 15656,\n  \"cautious</w>\": 36579,\n  \"cav\": 4942,\n  \"cav</w>\": 45935,\n  \"cava</w>\": 48682,\n  \"caval\": 24537,\n  \"cavali\": 20783,\n  \"cavalier</w>\": 44488,\n  \"cavaliers</w>\": 30194,\n  \"cavalry</w>\": 32467,\n  \"cave\": 25441,\n  \"cave</w>\": 9654,\n  \"cavendish</w>\": 42945,\n  \"caver\": 41487,\n  \"caves</w>\": 22096,\n  \"cavi\": 27360,\n  \"caviar</w>\": 31228,\n  \"cavill</w>\": 40492,\n  \"cavity</w>\": 43156,\n  \"cavs</w>\": 16800,\n  \"caw\": 38405,\n  \"caw</w>\": 43804,\n  \"cawx</w>\": 26739,\n  \"cay\": 11876,\n  \"cay</w>\": 37399,\n  \"cayenne</w>\": 43650,\n  \"cayman</w>\": 33737,\n  \"caz\": 48451,\n  \"cb\": 4034,\n  \"cb</w>\": 8830,\n  \"cba</w>\": 38472,\n  \"cbb</w>\": 31487,\n  \"cbc\": 14096,\n  \"cbc</w>\": 14523,\n  \"cbd</w>\": 13176,\n  \"cbe</w>\": 43639,\n  \"cbi</w>\": 30875,\n  \"cbj</w>\": 35608,\n  \"cbn</w>\": 26579,\n  \"cbp</w>\": 46723,\n  \"cbr</w>\": 28762,\n  \"cbs\": 16788,\n  \"cbs</w>\": 8009,\n  \"cc\": 2976,\n  \"cc</w>\": 2021,\n  \"cca</w>\": 17987,\n  \"ccc</w>\": 21856,\n  \"ccd</w>\": 48556,\n  \"ccg</w>\": 37755,\n  \"cch\": 21789,\n  \"cchini</w>\": 28467,\n  \"cci\": 32942,\n  \"cci</w>\": 8196,\n  \"ccl</w>\": 43773,\n  \"ccm</w>\": 40435,\n  \"cco</w>\": 28786,\n  \"ccot</w>\": 24950,\n  \"ccp</w>\": 43045,\n  \"ccs</w>\": 30400,\n  \"cctv</w>\": 23097,\n  \"ccu</w>\": 49023,\n  \"cd\": 4308,\n  \"cd</w>\": 4480,\n  \"cda</w>\": 45565,\n  \"cdc\": 41098,\n  \"cdc</w>\": 25779,\n  \"cdn\": 8886,\n  \"cdn</w>\": 26802,\n  \"cdnpoli</w>\": 11645,\n  \"cdo</w>\": 47187,\n  \"cdp</w>\": 39624,\n  \"cds</w>\": 20784,\n  \"cdt</w>\": 18455,\n  \"ce\": 685,\n  \"ce</w>\": 629,\n  \"cea</w>\": 28355,\n  \"cean\": 34409,\n  \"cean</w>\": 37295,\n  \"cease\": 32856,\n  \"cease</w>\": 25499,\n  \"ceasefire</w>\": 38291,\n  \"cebu</w>\": 20146,\n  \"cec\": 29694,\n  \"cec</w>\": 40029,\n  \"cecil\": 26987,\n  \"cecil</w>\": 27169,\n  \"cecilia</w>\": 35440,\n  \"ced\": 25634,\n  \"ced</w>\": 2323,\n  \"cedar\": 24167,\n  \"cedar</w>\": 13799,\n  \"cedric</w>\": 36608,\n  \"cee\": 45966,\n  \"cee</w>\": 15015,\n  \"cees</w>\": 47914,\n  \"ceil\": 27275,\n  \"ceiling</w>\": 12374,\n  \"ceilings</w>\": 33770,\n  \"cek</w>\": 45544,\n  \"cel\": 2269,\n  \"cel</w>\": 7597,\n  \"cele\": 1314,\n  \"celeb\": 38862,\n  \"celeb</w>\": 19393,\n  \"celebr\": 1372,\n  \"celebrate\": 31414,\n  \"celebrate</w>\": 2694,\n  \"celebrated</w>\": 9184,\n  \"celebrates</w>\": 7564,\n  \"celebrating</w>\": 3382,\n  \"celebration</w>\": 4615,\n  \"celebrations</w>\": 10825,\n  \"celebratory</w>\": 34115,\n  \"celebrities</w>\": 17071,\n  \"celebrity\": 23981,\n  \"celebrity</w>\": 7320,\n  \"celebs</w>\": 19803,\n  \"celed</w>\": 25741,\n  \"celer\": 9621,\n  \"celery</w>\": 30990,\n  \"celeste</w>\": 29364,\n  \"celesti\": 29497,\n  \"celestial</w>\": 32669,\n  \"celi\": 25567,\n  \"celia</w>\": 44489,\n  \"celine</w>\": 33644,\n  \"cell\": 9316,\n  \"cell</w>\": 5533,\n  \"cellar</w>\": 24282,\n  \"cellars</w>\": 44976,\n  \"cellence</w>\": 34687,\n  \"cello</w>\": 23013,\n  \"cellphone</w>\": 39029,\n  \"cells</w>\": 8890,\n  \"cellu\": 16791,\n  \"cellular</w>\": 23268,\n  \"cels</w>\": 24021,\n  \"celsius</w>\": 47057,\n  \"celtic\": 21897,\n  \"celtic</w>\": 10523,\n  \"celticfc</w>\": 38612,\n  \"celtics</w>\": 16226,\n  \"cem</w>\": 41435,\n  \"ceme\": 10517,\n  \"cement</w>\": 4369,\n  \"cements</w>\": 19448,\n  \"cemetery</w>\": 11660,\n  \"cen\": 1306,\n  \"cen</w>\": 30106,\n  \"cena</w>\": 21591,\n  \"cence</w>\": 24410,\n  \"cency</w>\": 41259,\n  \"cene</w>\": 30038,\n  \"censor\": 24230,\n  \"censor</w>\": 44709,\n  \"censored</w>\": 30951,\n  \"censorship</w>\": 27284,\n  \"census</w>\": 23677,\n  \"cent\": 1784,\n  \"cent</w>\": 3662,\n  \"centenary</w>\": 22422,\n  \"centennial</w>\": 20895,\n  \"center\": 16651,\n  \"center</w>\": 2119,\n  \"centered</w>\": 24584,\n  \"centers</w>\": 14494,\n  \"centi\": 48889,\n  \"centime\": 48687,\n  \"centr\": 2370,\n  \"central\": 13448,\n  \"central</w>\": 3339,\n  \"centre\": 26310,\n  \"centre</w>\": 2916,\n  \"centred</w>\": 47925,\n  \"centres</w>\": 19354,\n  \"centri\": 30872,\n  \"centric</w>\": 19297,\n  \"centro</w>\": 37178,\n  \"cents</w>\": 11934,\n  \"centu\": 16818,\n  \"centuri\": 36816,\n  \"centuries</w>\": 19014,\n  \"century\": 26134,\n  \"century</w>\": 4275,\n  \"ceo\": 46340,\n  \"ceo</w>\": 3559,\n  \"ceos</w>\": 28332,\n  \"cep\": 2632,\n  \"cep</w>\": 48714,\n  \"ceph\": 44343,\n  \"cept</w>\": 3678,\n  \"ception</w>\": 12346,\n  \"cer\": 1364,\n  \"cer</w>\": 1925,\n  \"cera</w>\": 34608,\n  \"ceram\": 10677,\n  \"ceramic</w>\": 15112,\n  \"ceramics</w>\": 22438,\n  \"cere\": 3984,\n  \"cere</w>\": 22085,\n  \"cereal</w>\": 17581,\n  \"cereals</w>\": 48618,\n  \"cerebral</w>\": 39073,\n  \"ceremon\": 15796,\n  \"ceremonial</w>\": 33281,\n  \"ceremonies</w>\": 21547,\n  \"ceremony</w>\": 5193,\n  \"cern</w>\": 44851,\n  \"cers</w>\": 13638,\n  \"cert</w>\": 27522,\n  \"certain\": 8526,\n  \"certain</w>\": 7883,\n  \"certainly</w>\": 10883,\n  \"certainty</w>\": 20054,\n  \"certi\": 4888,\n  \"certific\": 9443,\n  \"certificate</w>\": 11786,\n  \"certificates</w>\": 25281,\n  \"certification</w>\": 14735,\n  \"certified</w>\": 9288,\n  \"cerv\": 25738,\n  \"cervical</w>\": 35953,\n  \"ces\": 28715,\n  \"ces</w>\": 1604,\n  \"cesar\": 37025,\n  \"cesar</w>\": 28603,\n  \"cess\": 2314,\n  \"cess</w>\": 1554,\n  \"cessna</w>\": 36596,\n  \"cest</w>\": 27245,\n  \"cester\": 15769,\n  \"cester</w>\": 12718,\n  \"cet</w>\": 14960,\n  \"cett</w>\": 46708,\n  \"ceu</w>\": 37457,\n  \"cevic\": 48369,\n  \"cey</w>\": 20971,\n  \"cf\": 10189,\n  \"cf</w>\": 11171,\n  \"cfa</w>\": 34521,\n  \"cfb</w>\": 32931,\n  \"cfc</w>\": 11577,\n  \"cfd</w>\": 46171,\n  \"cfl\": 46320,\n  \"cfl</w>\": 22332,\n  \"cfo</w>\": 26937,\n  \"cfp</w>\": 40756,\n  \"cfr</w>\": 44033,\n  \"cfs</w>\": 32835,\n  \"cg\": 27118,\n  \"cg</w>\": 14740,\n  \"cgc</w>\": 38775,\n  \"cgi</w>\": 30520,\n  \"ch\": 540,\n  \"ch</w>\": 634,\n  \"cha\": 1587,\n  \"cha</w>\": 4541,\n  \"chab\": 26670,\n  \"chad\": 13095,\n  \"chad</w>\": 12923,\n  \"chae\": 9460,\n  \"chaf\": 38123,\n  \"chag\": 27989,\n  \"chai\": 31590,\n  \"chai</w>\": 18919,\n  \"chain\": 13898,\n  \"chain</w>\": 3946,\n  \"chained</w>\": 34402,\n  \"chains</w>\": 14438,\n  \"chainsaw</w>\": 37617,\n  \"chainz</w>\": 39687,\n  \"chair\": 4728,\n  \"chair</w>\": 4269,\n  \"chaired</w>\": 31664,\n  \"chairing</w>\": 42205,\n  \"chairman</w>\": 6901,\n  \"chairperson</w>\": 31584,\n  \"chairs</w>\": 12033,\n  \"chak\": 13702,\n  \"chak</w>\": 41713,\n  \"chakra\": 38304,\n  \"chakra</w>\": 33241,\n  \"chal\": 7397,\n  \"chal</w>\": 30809,\n  \"chale</w>\": 38099,\n  \"chalet</w>\": 37907,\n  \"chalk\": 31362,\n  \"chalk</w>\": 17846,\n  \"chall\": 2073,\n  \"challeng\": 4138,\n  \"challenge\": 29462,\n  \"challenge</w>\": 2836,\n  \"challenged</w>\": 17380,\n  \"challenger</w>\": 18228,\n  \"challengers</w>\": 46404,\n  \"challenges</w>\": 6280,\n  \"challenging</w>\": 11754,\n  \"chalmers</w>\": 47955,\n  \"cham\": 1290,\n  \"cham</w>\": 19951,\n  \"chamber\": 18983,\n  \"chamber</w>\": 7642,\n  \"chamberlain</w>\": 32756,\n  \"chambers</w>\": 16501,\n  \"chamele\": 34759,\n  \"chameleon</w>\": 41317,\n  \"champ\": 36813,\n  \"champ</w>\": 6602,\n  \"champag\": 10283,\n  \"champagne</w>\": 11007,\n  \"champi\": 1680,\n  \"champion\": 2643,\n  \"champion</w>\": 3950,\n  \"champions</w>\": 4227,\n  \"championship</w>\": 3429,\n  \"championships</w>\": 7047,\n  \"championsleague</w>\": 27638,\n  \"champs</w>\": 6240,\n  \"chan\": 1255,\n  \"chan</w>\": 6704,\n  \"chana</w>\": 48752,\n  \"chanc\": 13931,\n  \"chance\": 32940,\n  \"chance</w>\": 2594,\n  \"chancellor</w>\": 15886,\n  \"chances</w>\": 10870,\n  \"chand\": 7126,\n  \"chand</w>\": 41508,\n  \"chandelier</w>\": 30570,\n  \"chandi\": 12482,\n  \"chandigarh</w>\": 34106,\n  \"chandler</w>\": 17595,\n  \"chandra\": 27082,\n  \"chandra</w>\": 25348,\n  \"chanel</w>\": 16951,\n  \"chang\": 2233,\n  \"chang</w>\": 16461,\n  \"change\": 11608,\n  \"change</w>\": 1799,\n  \"changeable</w>\": 41335,\n  \"changed</w>\": 4907,\n  \"changer</w>\": 18406,\n  \"changers</w>\": 35185,\n  \"changes</w>\": 4938,\n  \"changing\": 40384,\n  \"changing</w>\": 5621,\n  \"changmin</w>\": 47410,\n  \"chann\": 8804,\n  \"channel\": 25837,\n  \"channel</w>\": 3847,\n  \"channeling</w>\": 28197,\n  \"channels</w>\": 13961,\n  \"channing</w>\": 37417,\n  \"chant\": 18165,\n  \"chant</w>\": 13521,\n  \"chanting</w>\": 32111,\n  \"chants</w>\": 22723,\n  \"chanyeol</w>\": 18805,\n  \"chao</w>\": 31815,\n  \"chaos</w>\": 10853,\n  \"chaotic</w>\": 33501,\n  \"chap\": 3825,\n  \"chap</w>\": 21939,\n  \"chapel\": 40859,\n  \"chapel</w>\": 10137,\n  \"chaplain</w>\": 38348,\n  \"chaplin</w>\": 32545,\n  \"chapman</w>\": 17968,\n  \"chapp\": 20634,\n  \"chaps</w>\": 36823,\n  \"chapter</w>\": 6014,\n  \"chapters</w>\": 22936,\n  \"char\": 1054,\n  \"char</w>\": 16017,\n  \"chara</w>\": 35668,\n  \"charac\": 2792,\n  \"character\": 10997,\n  \"character</w>\": 4009,\n  \"characterdesign</w>\": 38149,\n  \"characteri\": 20920,\n  \"characteristic</w>\": 44747,\n  \"characteristics</w>\": 26037,\n  \"characters</w>\": 6564,\n  \"charan</w>\": 31851,\n  \"charcoal</w>\": 19268,\n  \"chard</w>\": 17524,\n  \"chardon\": 26599,\n  \"chardonnay</w>\": 28161,\n  \"charge\": 25032,\n  \"charge</w>\": 5948,\n  \"chargeable</w>\": 35664,\n  \"charged</w>\": 7916,\n  \"charger</w>\": 13090,\n  \"chargers</w>\": 17352,\n  \"charges</w>\": 8962,\n  \"charging</w>\": 12514,\n  \"chariot</w>\": 38811,\n  \"charis\": 24449,\n  \"charisma</w>\": 45041,\n  \"charismatic</w>\": 37205,\n  \"charitable</w>\": 23256,\n  \"charities</w>\": 18493,\n  \"charity\": 20008,\n  \"charity</w>\": 4607,\n  \"charitytuesday</w>\": 42794,\n  \"charl\": 47736,\n  \"charle\": 10217,\n  \"charles\": 27983,\n  \"charles</w>\": 5127,\n  \"charleston</w>\": 15478,\n  \"charley</w>\": 38027,\n  \"charli\": 21784,\n  \"charli</w>\": 49392,\n  \"charlie\": 16764,\n  \"charlie</w>\": 6393,\n  \"charlotte\": 18445,\n  \"charlotte</w>\": 7871,\n  \"charlottesville</w>\": 32027,\n  \"charlton</w>\": 27048,\n  \"charm</w>\": 10876,\n  \"charmed</w>\": 39790,\n  \"charming</w>\": 12177,\n  \"charms</w>\": 21944,\n  \"charred</w>\": 44085,\n  \"chart\": 42685,\n  \"chart</w>\": 5053,\n  \"charted</w>\": 27939,\n  \"charter\": 42345,\n  \"charter</w>\": 13569,\n  \"chartered</w>\": 31298,\n  \"charters</w>\": 46626,\n  \"charting</w>\": 39841,\n  \"charts</w>\": 10728,\n  \"chas\": 10717,\n  \"chas</w>\": 29838,\n  \"chase\": 21503,\n  \"chase</w>\": 3859,\n  \"chased</w>\": 30342,\n  \"chaser</w>\": 29560,\n  \"chasers</w>\": 34158,\n  \"chases</w>\": 45011,\n  \"chasing\": 46909,\n  \"chasing</w>\": 13376,\n  \"chassis</w>\": 29188,\n  \"chast\": 42176,\n  \"chasu\": 41352,\n  \"chat\": 5355,\n  \"chat</w>\": 2402,\n  \"chatbots</w>\": 43994,\n  \"chate\": 30377,\n  \"chateau\": 44582,\n  \"chateau</w>\": 23520,\n  \"chath\": 46849,\n  \"chatham</w>\": 32030,\n  \"chats</w>\": 13263,\n  \"chatt\": 21618,\n  \"chattanoo\": 28009,\n  \"chattanooga</w>\": 29866,\n  \"chatted</w>\": 34124,\n  \"chatter\": 33473,\n  \"chatter</w>\": 41103,\n  \"chatting</w>\": 12401,\n  \"chatur\": 33839,\n  \"chau\": 11263,\n  \"chau</w>\": 37536,\n  \"chauffe\": 45440,\n  \"chauhan</w>\": 46663,\n  \"chav\": 28997,\n  \"chavez</w>\": 27480,\n  \"chaw\": 39639,\n  \"chay\": 45317,\n  \"chaz\": 47815,\n  \"chc</w>\": 36233,\n  \"chd</w>\": 41645,\n  \"che\": 983,\n  \"che</w>\": 3842,\n  \"chea</w>\": 39580,\n  \"chead\": 48358,\n  \"cheap\": 27036,\n  \"cheap</w>\": 8678,\n  \"cheape\": 26164,\n  \"cheaper</w>\": 17776,\n  \"cheapest</w>\": 26640,\n  \"cheat</w>\": 18180,\n  \"cheated</w>\": 34285,\n  \"cheating</w>\": 19722,\n  \"chec\": 1113,\n  \"check\": 7672,\n  \"check</w>\": 1217,\n  \"checked</w>\": 10387,\n  \"checker</w>\": 45883,\n  \"checkers</w>\": 48181,\n  \"checking</w>\": 7441,\n  \"checklist</w>\": 26989,\n  \"checkout</w>\": 13101,\n  \"checkpoint</w>\": 27531,\n  \"checks</w>\": 13737,\n  \"ched\": 11341,\n  \"ched</w>\": 2146,\n  \"cheddar</w>\": 20551,\n  \"chee\": 5326,\n  \"chee</w>\": 20944,\n  \"cheek\": 40000,\n  \"cheek</w>\": 21227,\n  \"cheeks</w>\": 23019,\n  \"cheeky</w>\": 15068,\n  \"cheer\": 9733,\n  \"cheer</w>\": 6918,\n  \"cheered</w>\": 38111,\n  \"cheerful</w>\": 28882,\n  \"cheering</w>\": 14289,\n  \"cheerleader</w>\": 29072,\n  \"cheerleaders</w>\": 22343,\n  \"cheerleading</w>\": 36366,\n  \"cheers</w>\": 6562,\n  \"chees\": 15182,\n  \"cheese\": 10738,\n  \"cheese</w>\": 4108,\n  \"cheeseburger</w>\": 41200,\n  \"cheesecake</w>\": 17803,\n  \"cheeses</w>\": 36076,\n  \"cheesy</w>\": 22093,\n  \"cheetah</w>\": 27431,\n  \"chef\": 12137,\n  \"chef</w>\": 4895,\n  \"chefs</w>\": 14486,\n  \"chek</w>\": 43745,\n  \"chel\": 3084,\n  \"chel</w>\": 25970,\n  \"chell</w>\": 46854,\n  \"chelle</w>\": 30141,\n  \"chelms\": 34936,\n  \"chelmsford</w>\": 39890,\n  \"chelse\": 19071,\n  \"chelsea</w>\": 6031,\n  \"chelseafc</w>\": 25927,\n  \"chelten\": 18889,\n  \"cheltenham</w>\": 21589,\n  \"chem\": 5667,\n  \"chem</w>\": 13698,\n  \"chemi\": 7179,\n  \"chemical\": 39376,\n  \"chemical</w>\": 9208,\n  \"chemicals</w>\": 17426,\n  \"chemist</w>\": 23138,\n  \"chemistry</w>\": 8841,\n  \"chemo\": 33095,\n  \"chemo</w>\": 36348,\n  \"chemotherapy</w>\": 41412,\n  \"chemtrails</w>\": 46015,\n  \"chen\": 5907,\n  \"chen</w>\": 8983,\n  \"cheney</w>\": 43522,\n  \"cheng\": 32512,\n  \"cheng</w>\": 30190,\n  \"chenko</w>\": 29073,\n  \"chennai\": 28948,\n  \"chennai</w>\": 12791,\n  \"cheon</w>\": 11498,\n  \"cheque</w>\": 28168,\n  \"cher\": 3597,\n  \"cher</w>\": 3466,\n  \"cheri\": 26471,\n  \"cherish</w>\": 20053,\n  \"cherished</w>\": 42325,\n  \"cherno\": 35376,\n  \"chernobyl</w>\": 40554,\n  \"chero\": 19844,\n  \"cherokee</w>\": 22860,\n  \"cherries</w>\": 27248,\n  \"cherry\": 21470,\n  \"cherry</w>\": 7325,\n  \"chers</w>\": 5789,\n  \"chery</w>\": 38478,\n  \"cheryl\": 37784,\n  \"cheryl</w>\": 20600,\n  \"ches\": 18346,\n  \"ches</w>\": 1910,\n  \"chesa\": 28349,\n  \"chesapeake</w>\": 32909,\n  \"cheshire</w>\": 17130,\n  \"chesney</w>\": 48747,\n  \"chess\": 27170,\n  \"chess</w>\": 8397,\n  \"chest\": 18217,\n  \"chest</w>\": 10563,\n  \"chester\": 10466,\n  \"chester</w>\": 3343,\n  \"chesterfield</w>\": 32975,\n  \"chestnut</w>\": 21834,\n  \"chet</w>\": 9663,\n  \"chett</w>\": 24695,\n  \"chev\": 7152,\n  \"chev</w>\": 41145,\n  \"chevro\": 12850,\n  \"chevrolet</w>\": 13240,\n  \"chevron</w>\": 33792,\n  \"chevy</w>\": 16581,\n  \"chew\": 32645,\n  \"chew</w>\": 22642,\n  \"chewan</w>\": 23689,\n  \"chewbacca</w>\": 49355,\n  \"chewing</w>\": 31486,\n  \"chewy</w>\": 42940,\n  \"chey\": 26968,\n  \"chey</w>\": 31208,\n  \"cheyenne</w>\": 34805,\n  \"chez\": 49183,\n  \"chez</w>\": 10556,\n  \"chf</w>\": 33021,\n  \"chfield</w>\": 41619,\n  \"chhat\": 34127,\n  \"chhattisgarh</w>\": 44246,\n  \"chi\": 1337,\n  \"chi</w>\": 4039,\n  \"chia</w>\": 19147,\n  \"chiang</w>\": 33764,\n  \"chibi</w>\": 22306,\n  \"chic\": 2627,\n  \"chic</w>\": 9091,\n  \"chica</w>\": 44190,\n  \"chicag\": 16778,\n  \"chicago\": 15038,\n  \"chicago</w>\": 3530,\n  \"chicagof\": 40638,\n  \"chicagofire</w>\": 46576,\n  \"chicas</w>\": 40664,\n  \"chichester</w>\": 43823,\n  \"chick\": 3170,\n  \"chick</w>\": 11238,\n  \"chicken\": 26322,\n  \"chicken</w>\": 3717,\n  \"chickens</w>\": 21658,\n  \"chickpea</w>\": 48109,\n  \"chicks</w>\": 17810,\n  \"chico</w>\": 30379,\n  \"chie\": 40046,\n  \"chie</w>\": 12388,\n  \"chief\": 16830,\n  \"chief</w>\": 3455,\n  \"chiefs</w>\": 11419,\n  \"chiev\": 47761,\n  \"chiff\": 27407,\n  \"chiffon</w>\": 31817,\n  \"chig\": 42952,\n  \"chihu\": 22857,\n  \"chihuahu\": 25437,\n  \"chihuahua</w>\": 30181,\n  \"chik</w>\": 45455,\n  \"chil\": 1333,\n  \"child\": 4392,\n  \"child</w>\": 2913,\n  \"childcare</w>\": 31133,\n  \"childhood\": 34772,\n  \"childhood</w>\": 7551,\n  \"childish</w>\": 31939,\n  \"childre\": 2135,\n  \"children\": 11101,\n  \"children</w>\": 2153,\n  \"childrens\": 31551,\n  \"childrens</w>\": 21553,\n  \"childs</w>\": 39521,\n  \"chile</w>\": 10022,\n  \"chilean</w>\": 33186,\n  \"chili</w>\": 13033,\n  \"chill\": 6498,\n  \"chill</w>\": 6382,\n  \"chilled</w>\": 23540,\n  \"chillen</w>\": 45160,\n  \"chilli\": 26787,\n  \"chilli</w>\": 17067,\n  \"chillin</w>\": 10347,\n  \"chilling</w>\": 10179,\n  \"chillout</w>\": 39842,\n  \"chills</w>\": 25460,\n  \"chilly</w>\": 14450,\n  \"chim\": 10543,\n  \"chimney</w>\": 26821,\n  \"chimp</w>\": 44374,\n  \"chin\": 6555,\n  \"chin</w>\": 8979,\n  \"china\": 38943,\n  \"china</w>\": 2817,\n  \"chinatown</w>\": 28582,\n  \"chine\": 4013,\n  \"chinese\": 30568,\n  \"chinese</w>\": 4271,\n  \"ching\": 34621,\n  \"ching</w>\": 1439,\n  \"chino\": 47181,\n  \"chino</w>\": 27440,\n  \"chinook</w>\": 41577,\n  \"chinson</w>\": 33786,\n  \"chio</w>\": 19650,\n  \"chip\": 19271,\n  \"chip</w>\": 8730,\n  \"chipmun\": 46384,\n  \"chipot\": 17702,\n  \"chipotle</w>\": 19284,\n  \"chipp\": 39854,\n  \"chippe\": 46541,\n  \"chipped</w>\": 39892,\n  \"chipping</w>\": 40323,\n  \"chips</w>\": 8855,\n  \"chir\": 15564,\n  \"chiro\": 23413,\n  \"chiroprac\": 25987,\n  \"chiropractic</w>\": 34437,\n  \"chis\": 19920,\n  \"chistan</w>\": 20523,\n  \"chiswick</w>\": 47290,\n  \"chit\": 13515,\n  \"chit</w>\": 45626,\n  \"chita</w>\": 49184,\n  \"chitec\": 39862,\n  \"chive</w>\": 29222,\n  \"chives</w>\": 34921,\n  \"chk</w>\": 47424,\n  \"chl</w>\": 38592,\n  \"chley</w>\": 47748,\n  \"chlo\": 10374,\n  \"chloe\": 39966,\n  \"chloe</w>\": 13992,\n  \"chlor\": 23135,\n  \"chman</w>\": 35835,\n  \"chment</w>\": 20848,\n  \"chner</w>\": 48277,\n  \"cho\": 1327,\n  \"cho</w>\": 5150,\n  \"choa</w>\": 43077,\n  \"choc\": 32772,\n  \"choc</w>\": 21983,\n  \"choco\": 46285,\n  \"choco</w>\": 32692,\n  \"chocol\": 3443,\n  \"chocolat</w>\": 44631,\n  \"chocolate\": 29389,\n  \"chocolate</w>\": 3820,\n  \"chocolates</w>\": 24120,\n  \"choi</w>\": 23749,\n  \"choic\": 35606,\n  \"choice\": 23857,\n  \"choice</w>\": 4051,\n  \"choices</w>\": 11016,\n  \"choir</w>\": 9214,\n  \"choirs</w>\": 43277,\n  \"choke</w>\": 30231,\n  \"choked</w>\": 43521,\n  \"choker</w>\": 39642,\n  \"choking</w>\": 39993,\n  \"chol\": 19802,\n  \"cholera</w>\": 45999,\n  \"cholester\": 26861,\n  \"cholesterol</w>\": 27982,\n  \"chom\": 25151,\n  \"chon\": 20416,\n  \"chon</w>\": 21601,\n  \"chondri\": 37379,\n  \"chong</w>\": 26220,\n  \"choo\": 3869,\n  \"choo</w>\": 24437,\n  \"chool</w>\": 29578,\n  \"chools</w>\": 41958,\n  \"choose\": 22756,\n  \"choose</w>\": 5073,\n  \"chooses</w>\": 29923,\n  \"choosing</w>\": 13475,\n  \"chop\": 10458,\n  \"chop</w>\": 16663,\n  \"chopin</w>\": 42256,\n  \"chopped</w>\": 22580,\n  \"chopper</w>\": 24011,\n  \"chopping</w>\": 35375,\n  \"chopra</w>\": 24258,\n  \"chops</w>\": 26321,\n  \"chor\": 7567,\n  \"chor</w>\": 47795,\n  \"choral</w>\": 26684,\n  \"chord</w>\": 33005,\n  \"chords</w>\": 36152,\n  \"choreo\": 17443,\n  \"choreographer</w>\": 35952,\n  \"choreography</w>\": 32749,\n  \"chores</w>\": 40483,\n  \"chori\": 25718,\n  \"chorizo</w>\": 30802,\n  \"chorus</w>\": 20869,\n  \"chos</w>\": 26559,\n  \"chose</w>\": 11090,\n  \"chosen</w>\": 10044,\n  \"chou\": 16960,\n  \"chou</w>\": 42917,\n  \"choudhary</w>\": 45503,\n  \"chow\": 20257,\n  \"chow</w>\": 21657,\n  \"chowder</w>\": 37886,\n  \"chp</w>\": 35896,\n  \"chr</w>\": 36918,\n  \"chri\": 1135,\n  \"chris\": 9907,\n  \"chris</w>\": 2978,\n  \"chrisbrown</w>\": 41035,\n  \"chriss\": 46745,\n  \"chrissy\": 44762,\n  \"chrissy</w>\": 40485,\n  \"christ\": 1403,\n  \"christ</w>\": 6703,\n  \"christchurch</w>\": 27100,\n  \"christen\": 31956,\n  \"christensen</w>\": 42226,\n  \"christi\": 3328,\n  \"christi</w>\": 33213,\n  \"christian\": 11792,\n  \"christian</w>\": 4729,\n  \"christianity</w>\": 20000,\n  \"christians</w>\": 14842,\n  \"christie</w>\": 16084,\n  \"christin\": 30189,\n  \"christina</w>\": 15925,\n  \"christine\": 42610,\n  \"christine</w>\": 14712,\n  \"christma\": 12039,\n  \"christmas\": 18174,\n  \"christmas</w>\": 1677,\n  \"christmaseve</w>\": 44381,\n  \"christmass\": 44873,\n  \"christop\": 7917,\n  \"christoph</w>\": 47844,\n  \"christophe</w>\": 45486,\n  \"christopher\": 33349,\n  \"christopher</w>\": 9630,\n  \"christy</w>\": 28331,\n  \"chro\": 13207,\n  \"chromatic</w>\": 44207,\n  \"chrome\": 24843,\n  \"chrome</w>\": 9529,\n  \"chromo\": 35809,\n  \"chron\": 5577,\n  \"chron</w>\": 39781,\n  \"chronic\": 10115,\n  \"chronic</w>\": 13677,\n  \"chronicle</w>\": 20034,\n  \"chronicles</w>\": 18905,\n  \"chrono\": 29387,\n  \"chronograph</w>\": 38397,\n  \"chry\": 13508,\n  \"chrysler</w>\": 20078,\n  \"chs\": 40277,\n  \"chs</w>\": 8391,\n  \"chsnews</w>\": 44919,\n  \"cht</w>\": 11384,\n  \"chter</w>\": 47811,\n  \"chu\": 3799,\n  \"chu</w>\": 13622,\n  \"chubby</w>\": 29109,\n  \"chuck\": 13211,\n  \"chuck</w>\": 9894,\n  \"chuckle</w>\": 35733,\n  \"chucky</w>\": 42026,\n  \"chuffed</w>\": 27233,\n  \"chuk\": 25878,\n  \"chuk</w>\": 27221,\n  \"chul</w>\": 33001,\n  \"chum\": 46869,\n  \"chum</w>\": 41767,\n  \"chun\": 14693,\n  \"chun</w>\": 25391,\n  \"chung</w>\": 28418,\n  \"chunk</w>\": 30275,\n  \"chunks</w>\": 45538,\n  \"chunky</w>\": 27978,\n  \"chups</w>\": 46331,\n  \"chur\": 2309,\n  \"church\": 14956,\n  \"church</w>\": 2735,\n  \"churches</w>\": 15539,\n  \"churchill</w>\": 17527,\n  \"chus</w>\": 36246,\n  \"chut\": 28788,\n  \"chutney</w>\": 36261,\n  \"chy\": 15131,\n  \"chy</w>\": 8096,\n  \"chyna</w>\": 43398,\n  \"chÃ¢\": 48669,\n  \"ci\": 698,\n  \"ci</w>\": 5798,\n  \"cia</w>\": 4019,\n  \"cial</w>\": 1143,\n  \"cian</w>\": 32323,\n  \"ciao</w>\": 37677,\n  \"ciara</w>\": 31369,\n  \"cible</w>\": 28873,\n  \"cic\": 14539,\n  \"cic</w>\": 21517,\n  \"cid</w>\": 27359,\n  \"cide</w>\": 34178,\n  \"cider</w>\": 13547,\n  \"cides</w>\": 41326,\n  \"cie</w>\": 19730,\n  \"cier\": 24067,\n  \"cies</w>\": 6785,\n  \"cif</w>\": 35698,\n  \"cigar\": 26031,\n  \"cigar</w>\": 16525,\n  \"cigare\": 13044,\n  \"cigarette</w>\": 18548,\n  \"cigarettes</w>\": 22750,\n  \"cigars</w>\": 20750,\n  \"cii</w>\": 42408,\n  \"cil\": 9217,\n  \"cil</w>\": 2998,\n  \"cilan\": 33998,\n  \"cilantro</w>\": 34568,\n  \"cili\": 18977,\n  \"ciliation</w>\": 25294,\n  \"cim</w>\": 30021,\n  \"cin\": 2396,\n  \"cin</w>\": 25367,\n  \"cina</w>\": 39467,\n  \"cincin\": 13291,\n  \"cincinnati</w>\": 14197,\n  \"cinco</w>\": 25131,\n  \"cincode\": 40930,\n  \"cincodemayo</w>\": 42542,\n  \"cincy\": 30015,\n  \"cincy</w>\": 30286,\n  \"cinde\": 20660,\n  \"cinderella</w>\": 21515,\n  \"cindy\": 34439,\n  \"cindy</w>\": 18532,\n  \"cine\": 4015,\n  \"cine</w>\": 27451,\n  \"cinema\": 38251,\n  \"cinema</w>\": 6443,\n  \"cinemas</w>\": 14845,\n  \"cinematic</w>\": 25602,\n  \"cinemato\": 21919,\n  \"cinematographer</w>\": 39059,\n  \"cinematography</w>\": 33802,\n  \"ciner\": 39882,\n  \"cing</w>\": 4014,\n  \"cini</w>\": 25699,\n  \"cinnam\": 12768,\n  \"cinnamon</w>\": 13460,\n  \"cino</w>\": 18616,\n  \"cio\": 44584,\n  \"cio</w>\": 9954,\n  \"cion</w>\": 22024,\n  \"ciones</w>\": 37155,\n  \"cious</w>\": 38466,\n  \"cip\": 32884,\n  \"cir\": 2459,\n  \"cir</w>\": 41135,\n  \"circa</w>\": 10411,\n  \"circle\": 33574,\n  \"circle</w>\": 7117,\n  \"circles</w>\": 19411,\n  \"circling</w>\": 46036,\n  \"circu\": 5143,\n  \"circuit\": 35583,\n  \"circuit</w>\": 9801,\n  \"circuits</w>\": 33260,\n  \"circul\": 16618,\n  \"circular</w>\": 19733,\n  \"circulare\": 39525,\n  \"circulareconomy</w>\": 39878,\n  \"circulated</w>\": 46258,\n  \"circulating</w>\": 42980,\n  \"circulation</w>\": 27880,\n  \"circum\": 13406,\n  \"circumstances</w>\": 18786,\n  \"circus</w>\": 11833,\n  \"cirque</w>\": 36049,\n  \"cis\": 9459,\n  \"cis</w>\": 23513,\n  \"cisco\": 36689,\n  \"cisco</w>\": 19290,\n  \"cise</w>\": 19657,\n  \"cisely</w>\": 33434,\n  \"cision</w>\": 41957,\n  \"cism</w>\": 24166,\n  \"cist</w>\": 40906,\n  \"cit\": 4420,\n  \"cit</w>\": 31294,\n  \"citadel</w>\": 38036,\n  \"citation</w>\": 33581,\n  \"cite</w>\": 32641,\n  \"cited</w>\": 25069,\n  \"cites</w>\": 34490,\n  \"citi\": 4280,\n  \"citi</w>\": 30270,\n  \"cities</w>\": 5441,\n  \"citing</w>\": 29088,\n  \"citiz\": 5816,\n  \"citizen\": 11720,\n  \"citizen</w>\": 9814,\n  \"citizens</w>\": 7949,\n  \"citizenship</w>\": 17386,\n  \"cito</w>\": 42636,\n  \"citro\": 27941,\n  \"citroen</w>\": 35805,\n  \"citrus</w>\": 17379,\n  \"city\": 5002,\n  \"city</w>\": 1305,\n  \"cityfc</w>\": 28751,\n  \"cityo\": 25709,\n  \"cityof\": 11595,\n  \"cityscape</w>\": 40808,\n  \"ciu\": 39693,\n  \"cius</w>\": 42559,\n  \"civ\": 40039,\n  \"civic\": 32240,\n  \"civic</w>\": 11888,\n  \"civil\": 6923,\n  \"civil</w>\": 6450,\n  \"civilian</w>\": 21187,\n  \"civilians</w>\": 18076,\n  \"civilization</w>\": 22503,\n  \"civilwar</w>\": 34524,\n  \"ciÃ³n</w>\": 44700,\n  \"cj\": 15238,\n  \"cj</w>\": 15205,\n  \"ck\": 916,\n  \"ck</w>\": 868,\n  \"cke\": 25224,\n  \"cke</w>\": 40989,\n  \"cked</w>\": 3441,\n  \"cken\": 25566,\n  \"cker\": 15509,\n  \"cker</w>\": 4744,\n  \"ckers</w>\": 37073,\n  \"cket</w>\": 5525,\n  \"ckett</w>\": 33899,\n  \"ckey\": 15029,\n  \"ckey</w>\": 3657,\n  \"cki\": 36916,\n  \"cki</w>\": 41055,\n  \"cking</w>\": 4805,\n  \"cko</w>\": 28818,\n  \"cks</w>\": 2031,\n  \"cky\": 26229,\n  \"cky</w>\": 3083,\n  \"cl\": 969,\n  \"cl</w>\": 6482,\n  \"cla\": 940,\n  \"cla</w>\": 20636,\n  \"clad</w>\": 31606,\n  \"cladding</w>\": 46411,\n  \"clai\": 29459,\n  \"claim\": 4290,\n  \"claim</w>\": 6607,\n  \"claimed</w>\": 9010,\n  \"claiming</w>\": 15286,\n  \"claims</w>\": 6852,\n  \"clair\": 31441,\n  \"clair</w>\": 14039,\n  \"claire\": 20410,\n  \"claire</w>\": 10460,\n  \"clam\": 13588,\n  \"clam</w>\": 32598,\n  \"clamation</w>\": 21793,\n  \"clamp</w>\": 41501,\n  \"clams</w>\": 38849,\n  \"clan\": 29252,\n  \"clan</w>\": 14114,\n  \"clancy</w>\": 37227,\n  \"clans</w>\": 38279,\n  \"clap\": 30037,\n  \"clap</w>\": 25546,\n  \"clapham</w>\": 43619,\n  \"clapton</w>\": 37683,\n  \"clar\": 3617,\n  \"clara</w>\": 19468,\n  \"clare\": 18948,\n  \"clare</w>\": 15927,\n  \"claremont</w>\": 47789,\n  \"clarence</w>\": 29320,\n  \"clari\": 15175,\n  \"clarify</w>\": 37004,\n  \"clarinet</w>\": 41178,\n  \"clarity</w>\": 21323,\n  \"clark\": 13340,\n  \"clark</w>\": 7521,\n  \"clarke</w>\": 11548,\n  \"clarkson</w>\": 25706,\n  \"clas\": 32003,\n  \"clash\": 38367,\n  \"clash</w>\": 9359,\n  \"clashes</w>\": 25193,\n  \"clasico</w>\": 43567,\n  \"class\": 2876,\n  \"class</w>\": 1874,\n  \"classes</w>\": 6919,\n  \"classi\": 2507,\n  \"classic\": 9353,\n  \"classic</w>\": 2713,\n  \"classical\": 22179,\n  \"classical</w>\": 11355,\n  \"classicalmusic</w>\": 27806,\n  \"classiccar</w>\": 46906,\n  \"classiccars</w>\": 21064,\n  \"classics</w>\": 10634,\n  \"classification</w>\": 26612,\n  \"classified</w>\": 22056,\n  \"classmate</w>\": 37090,\n  \"classmates</w>\": 30062,\n  \"classof</w>\": 25345,\n  \"classroom</w>\": 9001,\n  \"classrooms</w>\": 25768,\n  \"classy</w>\": 11615,\n  \"clau\": 7526,\n  \"claude</w>\": 17461,\n  \"claudi\": 39439,\n  \"claudia</w>\": 21893,\n  \"claudio</w>\": 31230,\n  \"claus</w>\": 23317,\n  \"clause</w>\": 26151,\n  \"clave</w>\": 24111,\n  \"claw\": 49230,\n  \"claw</w>\": 19106,\n  \"claws</w>\": 29161,\n  \"clay\": 10402,\n  \"clay</w>\": 8823,\n  \"clays</w>\": 26128,\n  \"clayton\": 46445,\n  \"clayton</w>\": 19413,\n  \"clc</w>\": 31380,\n  \"cle\": 1321,\n  \"cle</w>\": 2537,\n  \"clean\": 3572,\n  \"clean</w>\": 3772,\n  \"cleaned</w>\": 17468,\n  \"cleanenergy</w>\": 43538,\n  \"cleaner</w>\": 15619,\n  \"cleaners</w>\": 33258,\n  \"cleaning</w>\": 7210,\n  \"cleanliness</w>\": 47886,\n  \"cleans</w>\": 40827,\n  \"cleanse</w>\": 28717,\n  \"cleanser</w>\": 44170,\n  \"cleansing</w>\": 25931,\n  \"cleanup</w>\": 22353,\n  \"clear\": 4631,\n  \"clear</w>\": 3143,\n  \"clearance</w>\": 17959,\n  \"cleared</w>\": 14880,\n  \"clearer</w>\": 37031,\n  \"clearing</w>\": 15481,\n  \"clearly</w>\": 7767,\n  \"clears</w>\": 29092,\n  \"clearwater</w>\": 32124,\n  \"cleary</w>\": 44342,\n  \"cleats</w>\": 33486,\n  \"cleavage</w>\": 44165,\n  \"cled</w>\": 12827,\n  \"clegg</w>\": 42915,\n  \"clemens</w>\": 45896,\n  \"clement\": 22592,\n  \"clement</w>\": 24714,\n  \"clemente</w>\": 42461,\n  \"clementine</w>\": 47112,\n  \"clements</w>\": 49175,\n  \"clemson\": 38170,\n  \"clemson</w>\": 19537,\n  \"clen\": 35547,\n  \"cleo</w>\": 40344,\n  \"cleop\": 36287,\n  \"cleopatra</w>\": 41212,\n  \"cler\": 11828,\n  \"clergy</w>\": 42635,\n  \"cleric</w>\": 43748,\n  \"clerk</w>\": 22230,\n  \"clermont</w>\": 47529,\n  \"cles</w>\": 8077,\n  \"cleve\": 37599,\n  \"clevel\": 7701,\n  \"cleveland\": 30716,\n  \"cleveland</w>\": 8430,\n  \"clever\": 30977,\n  \"clever</w>\": 13385,\n  \"clg</w>\": 47546,\n  \"cli\": 1503,\n  \"clich\": 44407,\n  \"click\": 16676,\n  \"click</w>\": 3585,\n  \"clicked</w>\": 29015,\n  \"clicking</w>\": 26542,\n  \"clicks</w>\": 31250,\n  \"client\": 48528,\n  \"client</w>\": 7467,\n  \"clients</w>\": 8114,\n  \"clif\": 13182,\n  \"cliff\": 23827,\n  \"cliff</w>\": 10625,\n  \"cliffe</w>\": 15170,\n  \"clifford</w>\": 24226,\n  \"cliffs</w>\": 20953,\n  \"clifton</w>\": 23878,\n  \"climat\": 37283,\n  \"climate\": 7854,\n  \"climate</w>\": 4589,\n  \"climateaction</w>\": 31622,\n  \"climatechange</w>\": 11055,\n  \"climates</w>\": 46022,\n  \"climax</w>\": 37033,\n  \"climb\": 7421,\n  \"climb</w>\": 10649,\n  \"climbed</w>\": 22528,\n  \"climber</w>\": 36910,\n  \"climbers</w>\": 47648,\n  \"climbing</w>\": 9877,\n  \"climbs</w>\": 29098,\n  \"clin\": 2879,\n  \"clinch</w>\": 30404,\n  \"clinched</w>\": 44064,\n  \"cline</w>\": 37460,\n  \"cling\": 37068,\n  \"cling</w>\": 4760,\n  \"clinic</w>\": 7926,\n  \"clinical\": 35133,\n  \"clinical</w>\": 9148,\n  \"clinicians</w>\": 45866,\n  \"clinics</w>\": 23330,\n  \"clint\": 37542,\n  \"clint</w>\": 21160,\n  \"clinton\": 34403,\n  \"clinton</w>\": 5820,\n  \"clio</w>\": 46889,\n  \"clip\": 39712,\n  \"clip</w>\": 9289,\n  \"clipped</w>\": 45524,\n  \"clipper</w>\": 42245,\n  \"clippers</w>\": 23319,\n  \"clipping</w>\": 47484,\n  \"clips</w>\": 16594,\n  \"clique</w>\": 34983,\n  \"clive\": 36086,\n  \"clive</w>\": 21509,\n  \"cll\": 46091,\n  \"cllr\": 45743,\n  \"cllr</w>\": 23034,\n  \"clo\": 1194,\n  \"cloak</w>\": 36528,\n  \"clock\": 19878,\n  \"clock</w>\": 6716,\n  \"clocked</w>\": 49049,\n  \"clocks</w>\": 25895,\n  \"clockwise</w>\": 46150,\n  \"clockwork</w>\": 42297,\n  \"clon\": 24477,\n  \"clone</w>\": 22854,\n  \"clones</w>\": 48047,\n  \"clooney</w>\": 33161,\n  \"clos</w>\": 48821,\n  \"close\": 10603,\n  \"close</w>\": 2660,\n  \"closed</w>\": 4552,\n  \"closely</w>\": 13478,\n  \"closer</w>\": 6377,\n  \"closes</w>\": 11354,\n  \"closest</w>\": 14975,\n  \"closet</w>\": 14221,\n  \"closeup</w>\": 35439,\n  \"closing</w>\": 7101,\n  \"closure</w>\": 13249,\n  \"closures</w>\": 22923,\n  \"cloth</w>\": 14559,\n  \"clothes</w>\": 7080,\n  \"clothing</w>\": 7425,\n  \"clou\": 4069,\n  \"cloud\": 12965,\n  \"cloud</w>\": 3887,\n  \"cloudcomputing</w>\": 41390,\n  \"clouds</w>\": 6244,\n  \"cloudy</w>\": 13106,\n  \"clough</w>\": 42909,\n  \"clover\": 39574,\n  \"clover</w>\": 22812,\n  \"clow\": 18386,\n  \"clown</w>\": 15329,\n  \"clowns</w>\": 30820,\n  \"cls</w>\": 44251,\n  \"clt\": 29651,\n  \"clt</w>\": 24236,\n  \"clu\": 996,\n  \"club\": 9642,\n  \"club</w>\": 1736,\n  \"clubbing</w>\": 48128,\n  \"clubhouse</w>\": 26553,\n  \"clubs</w>\": 9437,\n  \"clue</w>\": 14994,\n  \"clueless</w>\": 35350,\n  \"clues</w>\": 23764,\n  \"clusive</w>\": 41362,\n  \"cluster</w>\": 15595,\n  \"clusters</w>\": 33217,\n  \"clut\": 28507,\n  \"clutch</w>\": 13953,\n  \"clutter</w>\": 40804,\n  \"cly\": 12037,\n  \"clyde\": 39557,\n  \"clyde</w>\": 18469,\n  \"cm\": 10190,\n  \"cm</w>\": 3741,\n  \"cma\": 30554,\n  \"cma</w>\": 31388,\n  \"cmc</w>\": 45839,\n  \"cmdr</w>\": 48250,\n  \"cme</w>\": 34946,\n  \"cmo</w>\": 24589,\n  \"cmon</w>\": 42904,\n  \"cmp\": 46355,\n  \"cms</w>\": 22520,\n  \"cmt</w>\": 42727,\n  \"cmu</w>\": 43046,\n  \"cn\": 3886,\n  \"cn</w>\": 16200,\n  \"cna</w>\": 48287,\n  \"cnbc\": 41242,\n  \"cnbc</w>\": 24371,\n  \"cnblue</w>\": 36018,\n  \"cnc</w>\": 20571,\n  \"cnet</w>\": 47487,\n  \"cnews</w>\": 24319,\n  \"cng</w>\": 41496,\n  \"cnn\": 22405,\n  \"cnn</w>\": 8259,\n  \"cns</w>\": 46095,\n  \"cny</w>\": 31614,\n  \"co\": 622,\n  \"co</w>\": 1320,\n  \"coa</w>\": 29167,\n  \"coach\": 3275,\n  \"coach</w>\": 2312,\n  \"coached</w>\": 30228,\n  \"coachella</w>\": 20222,\n  \"coaches</w>\": 6924,\n  \"coaching</w>\": 7766,\n  \"coal\": 10227,\n  \"coal</w>\": 7919,\n  \"coalition</w>\": 12920,\n  \"coast\": 6398,\n  \"coast</w>\": 3720,\n  \"coastal\": 38246,\n  \"coastal</w>\": 10852,\n  \"coaster</w>\": 15944,\n  \"coasters</w>\": 31548,\n  \"coastguard</w>\": 40601,\n  \"coastline</w>\": 27959,\n  \"coasts</w>\": 42225,\n  \"coat\": 28869,\n  \"coat</w>\": 7356,\n  \"coated</w>\": 23401,\n  \"coates</w>\": 36899,\n  \"coating</w>\": 25369,\n  \"coatings</w>\": 48706,\n  \"coats</w>\": 18075,\n  \"cob\": 20140,\n  \"cob</w>\": 32863,\n  \"cobain</w>\": 36866,\n  \"cobalt</w>\": 30896,\n  \"cobb</w>\": 22719,\n  \"cobble\": 47894,\n  \"cobra</w>\": 21574,\n  \"coc\": 23036,\n  \"coc</w>\": 39498,\n  \"coca</w>\": 21197,\n  \"cocac\": 26393,\n  \"cocacola</w>\": 31248,\n  \"cocaine</w>\": 20534,\n  \"coch\": 18599,\n  \"cochran</w>\": 48798,\n  \"cochrane</w>\": 41752,\n  \"coco\": 11850,\n  \"coco</w>\": 13316,\n  \"cocoa</w>\": 18074,\n  \"cocon\": 8597,\n  \"coconut</w>\": 9581,\n  \"cod\": 16132,\n  \"cod</w>\": 11915,\n  \"code\": 11582,\n  \"code</w>\": 3217,\n  \"coded</w>\": 33703,\n  \"coden\": 43914,\n  \"coder</w>\": 41561,\n  \"codes</w>\": 14566,\n  \"codi\": 39711,\n  \"coding</w>\": 12647,\n  \"cody\": 23222,\n  \"cody</w>\": 12666,\n  \"coe</w>\": 15386,\n  \"coed</w>\": 41028,\n  \"coel\": 45633,\n  \"coer\": 41198,\n  \"coeur</w>\": 44986,\n  \"coffe\": 2255,\n  \"coffee\": 12898,\n  \"coffee</w>\": 2453,\n  \"coffees</w>\": 41184,\n  \"coffey</w>\": 48066,\n  \"cofficial</w>\": 18757,\n  \"coffin</w>\": 29907,\n  \"cog\": 26362,\n  \"cog</w>\": 35960,\n  \"cogn\": 12210,\n  \"cognac</w>\": 44361,\n  \"cognition</w>\": 46825,\n  \"cognitive</w>\": 16584,\n  \"cohe\": 20669,\n  \"cohen</w>\": 13381,\n  \"coherent</w>\": 48450,\n  \"cohort</w>\": 22782,\n  \"coil</w>\": 25307,\n  \"coim\": 41528,\n  \"coin\": 14651,\n  \"coin</w>\": 4170,\n  \"coinci\": 14015,\n  \"coincidence</w>\": 19807,\n  \"coins</w>\": 10530,\n  \"coke\": 39602,\n  \"coke</w>\": 14035,\n  \"col\": 754,\n  \"col</w>\": 9371,\n  \"cola</w>\": 15444,\n  \"colbert</w>\": 31647,\n  \"colby</w>\": 32068,\n  \"colchester</w>\": 31715,\n  \"cold\": 11146,\n  \"cold</w>\": 3153,\n  \"colder</w>\": 23859,\n  \"coldest</w>\": 31438,\n  \"coldplay</w>\": 27770,\n  \"cole\": 9305,\n  \"cole</w>\": 8166,\n  \"coleman</w>\": 15774,\n  \"coles\": 40265,\n  \"coles</w>\": 30398,\n  \"coli\": 18877,\n  \"coli</w>\": 15910,\n  \"colin\": 20989,\n  \"colin</w>\": 10238,\n  \"coliseum</w>\": 21836,\n  \"coll\": 25982,\n  \"coll</w>\": 23898,\n  \"colla\": 2929,\n  \"collab</w>\": 14013,\n  \"collabor\": 4437,\n  \"collaborate</w>\": 21271,\n  \"collaborated</w>\": 42265,\n  \"collaborating</w>\": 25545,\n  \"collaboration</w>\": 6642,\n  \"collaborations</w>\": 36520,\n  \"collaborative</w>\": 15841,\n  \"collaborator</w>\": 48186,\n  \"collaborators</w>\": 45901,\n  \"collage</w>\": 11258,\n  \"collagen</w>\": 36120,\n  \"collap\": 16881,\n  \"collapse</w>\": 16520,\n  \"collapsed</w>\": 25037,\n  \"collapses</w>\": 43601,\n  \"collar\": 39662,\n  \"collar</w>\": 13497,\n  \"collateral</w>\": 44512,\n  \"colle\": 1801,\n  \"colleague</w>\": 13067,\n  \"colleagues</w>\": 8203,\n  \"collec\": 1733,\n  \"collect</w>\": 10186,\n  \"collected</w>\": 11980,\n  \"collecti\": 18530,\n  \"collectible</w>\": 25680,\n  \"collectibles</w>\": 21519,\n  \"collecting</w>\": 10325,\n  \"collection</w>\": 2548,\n  \"collections</w>\": 12760,\n  \"collective</w>\": 10162,\n  \"collectively</w>\": 40687,\n  \"collector</w>\": 13522,\n  \"collectors</w>\": 20540,\n  \"collects</w>\": 31576,\n  \"colleen</w>\": 31020,\n  \"college\": 13512,\n  \"college</w>\": 2229,\n  \"colleges</w>\": 17357,\n  \"collegi\": 16311,\n  \"collegiate</w>\": 18068,\n  \"colli\": 8262,\n  \"collide</w>\": 27214,\n  \"collie</w>\": 30611,\n  \"collier</w>\": 35748,\n  \"collin\": 24056,\n  \"collin</w>\": 32116,\n  \"colling\": 32319,\n  \"collingwood</w>\": 45873,\n  \"collins</w>\": 8684,\n  \"collision</w>\": 15407,\n  \"collo\": 25115,\n  \"colloqui\": 37243,\n  \"colloquium</w>\": 46514,\n  \"collu\": 25658,\n  \"collusion</w>\": 33864,\n  \"colo\": 7300,\n  \"colo</w>\": 27288,\n  \"cologne</w>\": 22216,\n  \"cology</w>\": 19187,\n  \"colom\": 8987,\n  \"colombia</w>\": 12901,\n  \"colombian</w>\": 28701,\n  \"colombo</w>\": 33207,\n  \"colon\": 8280,\n  \"colon</w>\": 29050,\n  \"colonel</w>\": 22674,\n  \"coloni\": 22667,\n  \"colonial</w>\": 16530,\n  \"colonialism</w>\": 43385,\n  \"colonies</w>\": 38738,\n  \"colony</w>\": 18767,\n  \"color\": 4036,\n  \"color</w>\": 3140,\n  \"colorado\": 34580,\n  \"colorado</w>\": 6742,\n  \"colorec\": 41171,\n  \"colored</w>\": 11775,\n  \"colorful</w>\": 11444,\n  \"colori\": 28764,\n  \"coloring</w>\": 17696,\n  \"colorized</w>\": 46730,\n  \"colors</w>\": 5389,\n  \"colorstv</w>\": 28195,\n  \"colorway</w>\": 44576,\n  \"colossal</w>\": 40258,\n  \"colosse\": 48142,\n  \"colossus</w>\": 34022,\n  \"colour\": 10240,\n  \"colour</w>\": 4769,\n  \"coloured</w>\": 17111,\n  \"colourful</w>\": 15562,\n  \"colouring</w>\": 31803,\n  \"colours</w>\": 7626,\n  \"cols</w>\": 35726,\n  \"colt</w>\": 19726,\n  \"colton</w>\": 32249,\n  \"coltrane</w>\": 42333,\n  \"colts</w>\": 16135,\n  \"colum\": 4164,\n  \"columb\": 31043,\n  \"columbi\": 25947,\n  \"columbia</w>\": 9410,\n  \"columbus</w>\": 11273,\n  \"column</w>\": 10593,\n  \"columnist</w>\": 28958,\n  \"columns</w>\": 29056,\n  \"com\": 610,\n  \"com</w>\": 2464,\n  \"coma</w>\": 19620,\n  \"comb\": 3587,\n  \"comb</w>\": 16380,\n  \"combat\": 35083,\n  \"combat</w>\": 9275,\n  \"combating</w>\": 46121,\n  \"combe</w>\": 14363,\n  \"combin\": 25112,\n  \"combination</w>\": 11312,\n  \"combinations</w>\": 34950,\n  \"combine</w>\": 12919,\n  \"combined</w>\": 10427,\n  \"combines</w>\": 22991,\n  \"combining</w>\": 23561,\n  \"combo</w>\": 10155,\n  \"combos</w>\": 48117,\n  \"combs</w>\": 30694,\n  \"combu\": 35629,\n  \"combustion</w>\": 44654,\n  \"comcast</w>\": 30043,\n  \"come\": 4225,\n  \"come</w>\": 891,\n  \"comeback</w>\": 8234,\n  \"comedian</w>\": 13848,\n  \"comedians</w>\": 33758,\n  \"comedic</w>\": 43360,\n  \"comedy\": 19346,\n  \"comedy</w>\": 4749,\n  \"comer\": 42997,\n  \"comer</w>\": 20916,\n  \"comers</w>\": 34436,\n  \"comes</w>\": 2091,\n  \"comet</w>\": 21405,\n  \"comets</w>\": 40636,\n  \"comey</w>\": 22957,\n  \"comfor\": 6563,\n  \"comfort\": 44000,\n  \"comfort</w>\": 7808,\n  \"comfortable</w>\": 8652,\n  \"comfortably</w>\": 30392,\n  \"comforting</w>\": 33835,\n  \"comforts</w>\": 42243,\n  \"comfy</w>\": 15736,\n  \"comi\": 40781,\n  \"comic\": 7729,\n  \"comic</w>\": 4962,\n  \"comicart</w>\": 46018,\n  \"comicbook</w>\": 46564,\n  \"comicbooks</w>\": 22018,\n  \"comiccon</w>\": 18379,\n  \"comicon</w>\": 43820,\n  \"comics</w>\": 4256,\n  \"comin</w>\": 18164,\n  \"coming\": 14916,\n  \"coming</w>\": 1171,\n  \"comingsoon</w>\": 19894,\n  \"comm\": 965,\n  \"comm</w>\": 11413,\n  \"comman\": 39780,\n  \"command\": 18391,\n  \"command</w>\": 11350,\n  \"commander</w>\": 11265,\n  \"commanders</w>\": 41667,\n  \"commanding</w>\": 36933,\n  \"commandments</w>\": 43409,\n  \"commando</w>\": 31361,\n  \"commands</w>\": 38163,\n  \"comme</w>\": 29692,\n  \"commemor\": 9495,\n  \"commemorate</w>\": 21242,\n  \"commemorates</w>\": 45149,\n  \"commemorating</w>\": 28734,\n  \"commemoration</w>\": 29288,\n  \"commemorative</w>\": 24623,\n  \"commen\": 15795,\n  \"commence</w>\": 25059,\n  \"commenced</w>\": 43908,\n  \"commencement</w>\": 21666,\n  \"commences</w>\": 48551,\n  \"commend\": 37555,\n  \"commended</w>\": 40702,\n  \"comment\": 20035,\n  \"comment</w>\": 5761,\n  \"commentary</w>\": 14146,\n  \"commentator</w>\": 32016,\n  \"commented</w>\": 28328,\n  \"commenting</w>\": 37292,\n  \"comments</w>\": 6606,\n  \"commer\": 4028,\n  \"commerce</w>\": 8333,\n  \"commerci\": 15601,\n  \"commercial\": 31802,\n  \"commercial</w>\": 6287,\n  \"commercials</w>\": 30724,\n  \"commish</w>\": 45399,\n  \"commissi\": 6000,\n  \"commission</w>\": 5292,\n  \"commissioned</w>\": 16565,\n  \"commissioner</w>\": 10221,\n  \"commissioners</w>\": 30702,\n  \"commissioning</w>\": 29585,\n  \"commissions</w>\": 20668,\n  \"commit\": 3041,\n  \"commit</w>\": 11797,\n  \"commitment</w>\": 7770,\n  \"commitments</w>\": 32136,\n  \"commits</w>\": 20241,\n  \"committed</w>\": 7907,\n  \"committee</w>\": 5636,\n  \"committees</w>\": 40504,\n  \"committing</w>\": 21937,\n  \"commod\": 9496,\n  \"commodities</w>\": 30350,\n  \"commodity</w>\": 29041,\n  \"commodore</w>\": 31129,\n  \"common\": 8414,\n  \"common</w>\": 4176,\n  \"commonly</w>\": 20344,\n  \"commons</w>\": 16653,\n  \"commonwealth</w>\": 16569,\n  \"comms</w>\": 18832,\n  \"commu\": 9561,\n  \"commun\": 1515,\n  \"communal</w>\": 32809,\n  \"communi\": 16164,\n  \"communic\": 4784,\n  \"communicate</w>\": 19809,\n  \"communication</w>\": 7999,\n  \"communications</w>\": 10052,\n  \"communion</w>\": 28579,\n  \"communism</w>\": 35387,\n  \"communist</w>\": 18602,\n  \"communities</w>\": 6361,\n  \"community\": 14784,\n  \"community</w>\": 1927,\n  \"commute</w>\": 15898,\n  \"commuter</w>\": 27782,\n  \"commuters</w>\": 30823,\n  \"commuting</w>\": 43503,\n  \"como</w>\": 16236,\n  \"comp\": 2561,\n  \"comp</w>\": 11679,\n  \"compac\": 40014,\n  \"compact</w>\": 13690,\n  \"compan\": 1995,\n  \"companies</w>\": 5361,\n  \"companion</w>\": 14963,\n  \"companions</w>\": 37124,\n  \"company</w>\": 2634,\n  \"compar\": 7580,\n  \"comparable</w>\": 27092,\n  \"comparative</w>\": 33388,\n  \"compare</w>\": 13771,\n  \"compared</w>\": 10544,\n  \"compares</w>\": 25104,\n  \"comparing</w>\": 20564,\n  \"comparison</w>\": 14186,\n  \"comparisons</w>\": 40870,\n  \"compart\": 30072,\n  \"compartment</w>\": 40383,\n  \"compass</w>\": 19438,\n  \"compassion</w>\": 14463,\n  \"compassionate</w>\": 30193,\n  \"compati\": 17295,\n  \"compatibility</w>\": 41614,\n  \"compatible</w>\": 21286,\n  \"compe\": 5254,\n  \"compelled</w>\": 49375,\n  \"compelling</w>\": 21766,\n  \"compen\": 42079,\n  \"compens\": 15172,\n  \"compensation</w>\": 18663,\n  \"compet\": 2932,\n  \"compete</w>\": 10038,\n  \"competed</w>\": 27767,\n  \"competen\": 31853,\n  \"competence</w>\": 31165,\n  \"competency</w>\": 49293,\n  \"competent</w>\": 28113,\n  \"competes</w>\": 39826,\n  \"competing</w>\": 13068,\n  \"competit\": 15892,\n  \"competiti\": 32581,\n  \"competition</w>\": 3742,\n  \"competitions</w>\": 23259,\n  \"competitive</w>\": 10687,\n  \"competitiveness</w>\": 43209,\n  \"competitor</w>\": 26633,\n  \"competitors</w>\": 23638,\n  \"compilation</w>\": 20446,\n  \"compiled</w>\": 34579,\n  \"compla\": 7428,\n  \"complain</w>\": 19292,\n  \"complained</w>\": 42029,\n  \"complaining</w>\": 20812,\n  \"complains</w>\": 46363,\n  \"complaint</w>\": 20391,\n  \"complaints</w>\": 20020,\n  \"comple\": 1730,\n  \"complement</w>\": 36624,\n  \"complementary</w>\": 48953,\n  \"complete</w>\": 3263,\n  \"completed</w>\": 5976,\n  \"completely</w>\": 5989,\n  \"completes</w>\": 19321,\n  \"completing</w>\": 14949,\n  \"completion</w>\": 15915,\n  \"complex\": 16099,\n  \"complex</w>\": 6324,\n  \"complexes</w>\": 47870,\n  \"complexion</w>\": 47732,\n  \"complexity</w>\": 24815,\n  \"compli\": 5270,\n  \"compliance</w>\": 14658,\n  \"compliant</w>\": 29893,\n  \"complic\": 11460,\n  \"complicated</w>\": 16621,\n  \"complications</w>\": 29936,\n  \"compliment</w>\": 25116,\n  \"complimentary</w>\": 20948,\n  \"compliments</w>\": 25477,\n  \"comply</w>\": 36281,\n  \"component</w>\": 21284,\n  \"components</w>\": 16816,\n  \"compos\": 7783,\n  \"compose</w>\": 43659,\n  \"composed</w>\": 19916,\n  \"composer</w>\": 12104,\n  \"composers</w>\": 33314,\n  \"composing</w>\": 40412,\n  \"composite</w>\": 21606,\n  \"composites</w>\": 45395,\n  \"composition</w>\": 17510,\n  \"compositions</w>\": 44652,\n  \"compost\": 46002,\n  \"compost</w>\": 33307,\n  \"compound</w>\": 19980,\n  \"compounds</w>\": 33991,\n  \"compre\": 8483,\n  \"compreh\": 42976,\n  \"comprehen\": 12050,\n  \"comprehend</w>\": 48230,\n  \"comprehensive</w>\": 13854,\n  \"compress\": 33353,\n  \"compressed</w>\": 42359,\n  \"compression</w>\": 25638,\n  \"compressor</w>\": 39607,\n  \"compri\": 29445,\n  \"compromise</w>\": 26611,\n  \"compromised</w>\": 38576,\n  \"compromising</w>\": 45436,\n  \"comps</w>\": 48665,\n  \"compton</w>\": 28364,\n  \"compu\": 11639,\n  \"compul\": 25869,\n  \"compulsory</w>\": 39345,\n  \"computing</w>\": 12732,\n  \"comra\": 25553,\n  \"comrade</w>\": 30844,\n  \"comrades</w>\": 29282,\n  \"coms</w>\": 30493,\n  \"con\": 616,\n  \"con</w>\": 2457,\n  \"cona</w>\": 30605,\n  \"conan</w>\": 24750,\n  \"conce\": 9145,\n  \"concealed</w>\": 35419,\n  \"conceded</w>\": 37895,\n  \"conceived</w>\": 39725,\n  \"concentr\": 11085,\n  \"concentrate</w>\": 30846,\n  \"concentrated</w>\": 36776,\n  \"concentration</w>\": 18565,\n  \"concep\": 8389,\n  \"concepcion</w>\": 47035,\n  \"concept</w>\": 6353,\n  \"conceptart</w>\": 31162,\n  \"conception</w>\": 30510,\n  \"conceptions</w>\": 40307,\n  \"concepts</w>\": 16763,\n  \"conceptu\": 42745,\n  \"conceptual</w>\": 34070,\n  \"concer\": 2228,\n  \"concern</w>\": 12928,\n  \"concerned</w>\": 12020,\n  \"concerning</w>\": 21772,\n  \"concerns</w>\": 11134,\n  \"concert\": 32180,\n  \"concert</w>\": 3066,\n  \"concerto</w>\": 24710,\n  \"concerts</w>\": 14418,\n  \"concession</w>\": 38117,\n  \"concessions</w>\": 43981,\n  \"concier\": 28859,\n  \"concierge</w>\": 39850,\n  \"conclave</w>\": 38098,\n  \"conclu\": 9627,\n  \"conclude</w>\": 37525,\n  \"concluded</w>\": 27825,\n  \"concludes</w>\": 30634,\n  \"conclusion</w>\": 20932,\n  \"conclusions</w>\": 39507,\n  \"conco\": 43034,\n  \"concor\": 19913,\n  \"concord</w>\": 26448,\n  \"concordia</w>\": 35492,\n  \"concours</w>\": 36282,\n  \"concourse</w>\": 37793,\n  \"concre\": 43658,\n  \"concrete</w>\": 9637,\n  \"concussion</w>\": 28321,\n  \"condem\": 13287,\n  \"condemn</w>\": 27212,\n  \"condemned</w>\": 35145,\n  \"condemns</w>\": 32092,\n  \"conden\": 24816,\n  \"conditi\": 11170,\n  \"condition\": 36978,\n  \"condition</w>\": 7336,\n  \"conditional</w>\": 24671,\n  \"conditioned</w>\": 37014,\n  \"conditioner</w>\": 31239,\n  \"conditioning</w>\": 18181,\n  \"conditions</w>\": 5892,\n  \"condo</w>\": 19952,\n  \"condol\": 18661,\n  \"condolences</w>\": 20836,\n  \"condom</w>\": 39021,\n  \"condomin\": 42589,\n  \"condoms</w>\": 37878,\n  \"condor</w>\": 47643,\n  \"condos</w>\": 42342,\n  \"condu\": 40772,\n  \"conduc\": 5379,\n  \"conduct</w>\": 11647,\n  \"conducted</w>\": 13080,\n  \"conducting</w>\": 16787,\n  \"conductor</w>\": 22317,\n  \"conducts</w>\": 32084,\n  \"cone\": 39279,\n  \"cone</w>\": 10266,\n  \"cones</w>\": 26718,\n  \"coney</w>\": 41837,\n  \"conf</w>\": 6477,\n  \"confe\": 1968,\n  \"confeder\": 17104,\n  \"confederate</w>\": 24864,\n  \"confederation</w>\": 43484,\n  \"conferen\": 37961,\n  \"conference</w>\": 2230,\n  \"conferences</w>\": 22811,\n  \"conferencing</w>\": 47320,\n  \"confess</w>\": 38860,\n  \"confession</w>\": 22572,\n  \"confessions</w>\": 29404,\n  \"confetti</w>\": 37923,\n  \"confi\": 5005,\n  \"confidence</w>\": 8510,\n  \"confident</w>\": 12365,\n  \"confidential</w>\": 28712,\n  \"configu\": 46746,\n  \"configur\": 26950,\n  \"configuration</w>\": 33378,\n  \"confin\": 45316,\n  \"confined</w>\": 40973,\n  \"confir\": 3930,\n  \"confirm</w>\": 12130,\n  \"confirmation</w>\": 19645,\n  \"confirmed</w>\": 6346,\n  \"confirming</w>\": 38433,\n  \"confirms</w>\": 11803,\n  \"confis\": 36285,\n  \"confit</w>\": 42241,\n  \"confl\": 8173,\n  \"conflic\": 19029,\n  \"conflict</w>\": 10397,\n  \"conflicting</w>\": 43894,\n  \"conflicts</w>\": 28713,\n  \"confor\": 40933,\n  \"confron\": 20033,\n  \"confront</w>\": 38382,\n  \"confrontation</w>\": 41478,\n  \"confu\": 6890,\n  \"confuse</w>\": 37503,\n  \"confused</w>\": 10946,\n  \"confusing</w>\": 24683,\n  \"confusion</w>\": 20493,\n  \"cong</w>\": 24407,\n  \"conge\": 20013,\n  \"congestion</w>\": 24432,\n  \"congo</w>\": 20334,\n  \"congr\": 1227,\n  \"congrats</w>\": 1887,\n  \"congratul\": 1750,\n  \"congratulate</w>\": 16633,\n  \"congratulated</w>\": 42004,\n  \"congratulates</w>\": 24580,\n  \"congratulating</w>\": 30967,\n  \"congratulation</w>\": 24751,\n  \"congratulations</w>\": 1864,\n  \"congre\": 7947,\n  \"congreg\": 40727,\n  \"congregation</w>\": 32618,\n  \"congress\": 12452,\n  \"congress</w>\": 4599,\n  \"congressional</w>\": 15239,\n  \"congressman</w>\": 17145,\n  \"congresswoman</w>\": 37317,\n  \"coni\": 39031,\n  \"coni</w>\": 36651,\n  \"conj\": 41543,\n  \"conju\": 33821,\n  \"conjunction</w>\": 34226,\n  \"conley</w>\": 44536,\n  \"conline</w>\": 37593,\n  \"conn\": 41836,\n  \"conn</w>\": 20329,\n  \"conne\": 8437,\n  \"connec\": 29933,\n  \"connect</w>\": 19969,\n  \"connected</w>\": 27506,\n  \"connecting</w>\": 41429,\n  \"connection</w>\": 26840,\n  \"connections</w>\": 37161,\n  \"connie</w>\": 25739,\n  \"connoisse\": 46012,\n  \"connol\": 27739,\n  \"connolly</w>\": 29537,\n  \"connor\": 21984,\n  \"connor</w>\": 10218,\n  \"conom\": 2664,\n  \"conomy</w>\": 22529,\n  \"conor\": 29955,\n  \"conor</w>\": 19478,\n  \"conqu\": 13382,\n  \"conquer\": 38585,\n  \"conquer</w>\": 19821,\n  \"conquered</w>\": 27099,\n  \"conquering</w>\": 43778,\n  \"conquest</w>\": 35367,\n  \"conrad</w>\": 22073,\n  \"cons</w>\": 10311,\n  \"consci\": 9427,\n  \"conscience</w>\": 27310,\n  \"conscious</w>\": 14914,\n  \"consciously</w>\": 46755,\n  \"consciousness</w>\": 17894,\n  \"conse\": 34887,\n  \"consecu\": 12084,\n  \"consecutive</w>\": 12413,\n  \"consen\": 23110,\n  \"consensus</w>\": 25071,\n  \"consent</w>\": 21922,\n  \"consequ\": 13003,\n  \"consequence</w>\": 42262,\n  \"consequences</w>\": 15682,\n  \"conserv\": 4649,\n  \"conservancy</w>\": 46729,\n  \"conservation\": 37616,\n  \"conservation</w>\": 8322,\n  \"conservative</w>\": 11421,\n  \"conservatives</w>\": 17631,\n  \"conservatory</w>\": 32140,\n  \"conserve</w>\": 34231,\n  \"consi\": 2899,\n  \"consider\": 12471,\n  \"consider</w>\": 6734,\n  \"considerable</w>\": 38256,\n  \"considerably</w>\": 38510,\n  \"consideration</w>\": 24310,\n  \"considerations</w>\": 33700,\n  \"considered</w>\": 9487,\n  \"considering</w>\": 10761,\n  \"considers</w>\": 24691,\n  \"consist\": 10410,\n  \"consist</w>\": 33735,\n  \"consisted</w>\": 49354,\n  \"consistency</w>\": 25683,\n  \"consistent</w>\": 16439,\n  \"consistently</w>\": 23799,\n  \"consisting</w>\": 39241,\n  \"consists</w>\": 23458,\n  \"consol\": 27869,\n  \"consolation</w>\": 38888,\n  \"console</w>\": 13403,\n  \"consoles</w>\": 33136,\n  \"consoli\": 21586,\n  \"consolidation</w>\": 41111,\n  \"consor\": 27108,\n  \"consortium</w>\": 29988,\n  \"conspir\": 12680,\n  \"conspiracy</w>\": 15236,\n  \"const\": 3826,\n  \"constable</w>\": 29179,\n  \"constan\": 38718,\n  \"constance</w>\": 40682,\n  \"constant\": 32000,\n  \"constant</w>\": 13111,\n  \"constantine</w>\": 30640,\n  \"constantly</w>\": 14336,\n  \"constell\": 21913,\n  \"constellation</w>\": 25991,\n  \"constitu\": 6299,\n  \"constituency</w>\": 22464,\n  \"constituents</w>\": 32075,\n  \"constitution</w>\": 12157,\n  \"constitutional</w>\": 16091,\n  \"constra\": 28973,\n  \"constraints</w>\": 41910,\n  \"constru\": 3983,\n  \"construc\": 13321,\n  \"construct</w>\": 24467,\n  \"constructed</w>\": 16876,\n  \"constructing</w>\": 33653,\n  \"construction\": 48873,\n  \"construction</w>\": 4585,\n  \"constructive</w>\": 31810,\n  \"consu\": 4689,\n  \"consul\": 5295,\n  \"consul</w>\": 33630,\n  \"consulate</w>\": 34341,\n  \"consult\": 9438,\n  \"consult</w>\": 26727,\n  \"consultancy</w>\": 31735,\n  \"consultant</w>\": 14196,\n  \"consultants</w>\": 27203,\n  \"consultation</w>\": 15777,\n  \"consultations</w>\": 43424,\n  \"consulting</w>\": 15883,\n  \"consume</w>\": 28919,\n  \"consumed</w>\": 29653,\n  \"consumer\": 34408,\n  \"consumer</w>\": 10422,\n  \"consumers</w>\": 14014,\n  \"consuming</w>\": 30607,\n  \"consumption</w>\": 14904,\n  \"cont\": 2036,\n  \"cont</w>\": 21425,\n  \"contact\": 39367,\n  \"contact</w>\": 3523,\n  \"contacted</w>\": 37331,\n  \"contacts</w>\": 22789,\n  \"contag\": 29259,\n  \"contagious</w>\": 33984,\n  \"contain\": 9948,\n  \"contain</w>\": 15187,\n  \"contained</w>\": 23836,\n  \"container</w>\": 14913,\n  \"containers</w>\": 20448,\n  \"containing</w>\": 20281,\n  \"contains</w>\": 12844,\n  \"contamin\": 24662,\n  \"contaminated</w>\": 35773,\n  \"contamination</w>\": 31770,\n  \"conte\": 15402,\n  \"conte</w>\": 26882,\n  \"contempl\": 21924,\n  \"contemplating</w>\": 33854,\n  \"contempor\": 14538,\n  \"contemporary\": 16607,\n  \"contemporary</w>\": 8859,\n  \"contemporaryart</w>\": 20212,\n  \"contempt</w>\": 39293,\n  \"conten\": 42201,\n  \"contender</w>\": 23573,\n  \"contenders</w>\": 29711,\n  \"content\": 15526,\n  \"content</w>\": 4750,\n  \"contentmarketing</w>\": 20429,\n  \"contents</w>\": 14850,\n  \"contest\": 23103,\n  \"contest</w>\": 4576,\n  \"contestalert</w>\": 27313,\n  \"contestant</w>\": 25682,\n  \"contestants</w>\": 28062,\n  \"contested</w>\": 37845,\n  \"contests</w>\": 32210,\n  \"contex\": 42015,\n  \"context</w>\": 13089,\n  \"conti\": 46431,\n  \"conti</w>\": 40842,\n  \"contin\": 1918,\n  \"continent</w>\": 19623,\n  \"continental</w>\": 14089,\n  \"continents</w>\": 38642,\n  \"conting\": 27104,\n  \"contingent</w>\": 36467,\n  \"continu\": 4688,\n  \"continually</w>\": 34086,\n  \"continuation</w>\": 38964,\n  \"continue</w>\": 3942,\n  \"continued</w>\": 10150,\n  \"continues</w>\": 4305,\n  \"continuing</w>\": 11009,\n  \"continuity</w>\": 34035,\n  \"continuous</w>\": 17033,\n  \"continuously</w>\": 29634,\n  \"continuum</w>\": 44978,\n  \"contour</w>\": 34733,\n  \"contr\": 22871,\n  \"contra\": 9880,\n  \"contra</w>\": 38620,\n  \"contrac\": 7581,\n  \"contracep\": 35109,\n  \"contract</w>\": 6120,\n  \"contracting</w>\": 39091,\n  \"contractor</w>\": 21429,\n  \"contractors</w>\": 22427,\n  \"contracts</w>\": 16563,\n  \"contradic\": 27957,\n  \"contrary</w>\": 32805,\n  \"contrast</w>\": 18501,\n  \"contrasting</w>\": 40758,\n  \"contribu\": 4753,\n  \"contribute</w>\": 14112,\n  \"contributed</w>\": 19397,\n  \"contributes</w>\": 34203,\n  \"contributing</w>\": 21762,\n  \"contribution</w>\": 11116,\n  \"contributions</w>\": 14465,\n  \"contributor</w>\": 24553,\n  \"contributors</w>\": 32908,\n  \"contro\": 2372,\n  \"control\": 9963,\n  \"control</w>\": 3366,\n  \"controlled</w>\": 14140,\n  \"controller</w>\": 12929,\n  \"controllers</w>\": 30374,\n  \"controlling</w>\": 26427,\n  \"controls</w>\": 15746,\n  \"controversi\": 13674,\n  \"controversial</w>\": 14617,\n  \"controversy</w>\": 18659,\n  \"conv</w>\": 48382,\n  \"conve\": 18421,\n  \"conven\": 7283,\n  \"conveni\": 33278,\n  \"convenience</w>\": 17859,\n  \"convenient</w>\": 18978,\n  \"conveniently</w>\": 40844,\n  \"convention</w>\": 6752,\n  \"conventional</w>\": 20835,\n  \"conventions</w>\": 41404,\n  \"conver\": 6336,\n  \"convergence</w>\": 35381,\n  \"convers\": 4577,\n  \"conversation</w>\": 5690,\n  \"conversations</w>\": 12326,\n  \"converse</w>\": 24149,\n  \"conversion</w>\": 15111,\n  \"conversions</w>\": 44137,\n  \"convert</w>\": 20074,\n  \"converted</w>\": 20808,\n  \"converter</w>\": 34611,\n  \"convertible</w>\": 19608,\n  \"converting</w>\": 34674,\n  \"converts</w>\": 42470,\n  \"convey</w>\": 38342,\n  \"convic\": 11150,\n  \"convicted</w>\": 18668,\n  \"conviction</w>\": 24967,\n  \"convictions</w>\": 44366,\n  \"convin\": 12889,\n  \"convince</w>\": 20351,\n  \"convinced</w>\": 17388,\n  \"convincing</w>\": 27742,\n  \"convo</w>\": 19372,\n  \"convocation</w>\": 30674,\n  \"convos</w>\": 44842,\n  \"convoy</w>\": 30292,\n  \"conway</w>\": 21410,\n  \"conwy</w>\": 48971,\n  \"cony</w>\": 14501,\n  \"coo\": 1664,\n  \"coo</w>\": 21691,\n  \"coogs</w>\": 47624,\n  \"cook\": 9726,\n  \"cook</w>\": 5977,\n  \"cookbook</w>\": 21086,\n  \"cooke</w>\": 29979,\n  \"cooked</w>\": 11452,\n  \"cooker</w>\": 23806,\n  \"cookery</w>\": 38779,\n  \"cookie</w>\": 9367,\n  \"cookies</w>\": 8320,\n  \"cookin</w>\": 46610,\n  \"cooking\": 39248,\n  \"cooking</w>\": 6283,\n  \"cookout</w>\": 39743,\n  \"cooks</w>\": 24256,\n  \"cool\": 5594,\n  \"cool</w>\": 2077,\n  \"cooled</w>\": 37170,\n  \"cooler</w>\": 11078,\n  \"coolest</w>\": 10566,\n  \"cooling</w>\": 15291,\n  \"coom\": 41726,\n  \"coon\": 34260,\n  \"coon</w>\": 16958,\n  \"coop\": 39917,\n  \"coop</w>\": 18910,\n  \"cooper\": 7264,\n  \"cooper</w>\": 8133,\n  \"cooperate</w>\": 42936,\n  \"cooperation</w>\": 11785,\n  \"cooperative</w>\": 24517,\n  \"coops</w>\": 48531,\n  \"coordin\": 8187,\n  \"coordinate</w>\": 38250,\n  \"coordinated</w>\": 32540,\n  \"coordinating</w>\": 40075,\n  \"coordination</w>\": 25611,\n  \"coordinator</w>\": 13967,\n  \"coors</w>\": 36025,\n  \"cop\": 3196,\n  \"cop</w>\": 7070,\n  \"copa</w>\": 22749,\n  \"copd</w>\": 45876,\n  \"cope\": 47635,\n  \"cope</w>\": 12564,\n  \"copeland</w>\": 37604,\n  \"copen\": 15637,\n  \"copenhagen</w>\": 17390,\n  \"coper\": 41891,\n  \"copernic\": 45519,\n  \"copied</w>\": 36770,\n  \"copies</w>\": 9851,\n  \"coping</w>\": 30545,\n  \"copolitics</w>\": 45846,\n  \"copp\": 20937,\n  \"copped</w>\": 42229,\n  \"copper\": 24741,\n  \"copper</w>\": 10333,\n  \"coppola</w>\": 47427,\n  \"cops</w>\": 10719,\n  \"copter</w>\": 28049,\n  \"copy\": 11376,\n  \"copy</w>\": 4509,\n  \"copying</w>\": 38925,\n  \"copyright</w>\": 15778,\n  \"cor\": 851,\n  \"cor</w>\": 18559,\n  \"cora</w>\": 34953,\n  \"coral\": 31220,\n  \"coral</w>\": 12054,\n  \"corbett</w>\": 35699,\n  \"corbin</w>\": 35578,\n  \"corbyn</w>\": 14026,\n  \"cord\": 40893,\n  \"cord</w>\": 11181,\n  \"corden</w>\": 41999,\n  \"cordi\": 41681,\n  \"cordless</w>\": 44412,\n  \"cords</w>\": 22164,\n  \"core\": 19622,\n  \"core</w>\": 5000,\n  \"cores</w>\": 37874,\n  \"corey\": 31279,\n  \"corey</w>\": 15288,\n  \"corgi</w>\": 31320,\n  \"cori\": 26508,\n  \"coriander</w>\": 37491,\n  \"corin\": 17716,\n  \"corinthians</w>\": 34471,\n  \"cork\": 18148,\n  \"cork</w>\": 10376,\n  \"corn\": 5202,\n  \"corn</w>\": 5894,\n  \"cornelius</w>\": 45865,\n  \"cornell\": 38689,\n  \"cornell</w>\": 20859,\n  \"corner\": 18509,\n  \"corner</w>\": 5253,\n  \"corners</w>\": 19584,\n  \"cornerstone</w>\": 36280,\n  \"cornish</w>\": 23774,\n  \"cornwall\": 37903,\n  \"cornwall</w>\": 10777,\n  \"coron\": 13210,\n  \"corona</w>\": 25564,\n  \"coronado</w>\": 43946,\n  \"coronary</w>\": 45955,\n  \"coronation</w>\": 25014,\n  \"coroner</w>\": 47241,\n  \"corp\": 29203,\n  \"corp</w>\": 10918,\n  \"corpor\": 4258,\n  \"corporal</w>\": 42445,\n  \"corporate\": 33877,\n  \"corporate</w>\": 6838,\n  \"corporation</w>\": 11282,\n  \"corporations</w>\": 25482,\n  \"corps</w>\": 11330,\n  \"corpse</w>\": 29408,\n  \"corpus</w>\": 31672,\n  \"correc\": 5011,\n  \"correct</w>\": 8340,\n  \"corrected</w>\": 35628,\n  \"correction</w>\": 20843,\n  \"correctional</w>\": 38030,\n  \"corrections</w>\": 37507,\n  \"correctly</w>\": 15359,\n  \"correlation</w>\": 29218,\n  \"correspon\": 20203,\n  \"correspondent</w>\": 29996,\n  \"corri\": 12974,\n  \"corridor</w>\": 20592,\n  \"corrie</w>\": 23961,\n  \"corro\": 24936,\n  \"corro</w>\": 42033,\n  \"corrosion</w>\": 39191,\n  \"corru\": 6501,\n  \"corrup\": 30429,\n  \"corrupt</w>\": 15194,\n  \"corruption</w>\": 9141,\n  \"corsa</w>\": 47670,\n  \"corsair</w>\": 42367,\n  \"corset</w>\": 40408,\n  \"cortex</w>\": 40109,\n  \"cortez</w>\": 30461,\n  \"corvette</w>\": 24367,\n  \"cory\": 23221,\n  \"cory</w>\": 18329,\n  \"cos\": 5865,\n  \"cos</w>\": 5700,\n  \"cosby</w>\": 30324,\n  \"cosc\": 45944,\n  \"coscino</w>\": 47909,\n  \"cose</w>\": 26495,\n  \"cosm\": 37486,\n  \"cosme\": 9628,\n  \"cosmetic</w>\": 23918,\n  \"cosmetics</w>\": 12896,\n  \"cosmic\": 47398,\n  \"cosmic</w>\": 18304,\n  \"cosmo\": 12829,\n  \"cosmo</w>\": 32072,\n  \"cosmopolitan</w>\": 35518,\n  \"cosmos</w>\": 22151,\n  \"cospla\": 15149,\n  \"cosplay\": 42401,\n  \"cosplay</w>\": 6435,\n  \"cosplayer</w>\": 30215,\n  \"cosplaying</w>\": 46701,\n  \"cost\": 11360,\n  \"cost</w>\": 4713,\n  \"costa</w>\": 10480,\n  \"costar\": 28659,\n  \"costarica</w>\": 31272,\n  \"costco</w>\": 31045,\n  \"costello</w>\": 30667,\n  \"costing</w>\": 39193,\n  \"costly</w>\": 30170,\n  \"costs</w>\": 7628,\n  \"costu\": 5786,\n  \"costume</w>\": 7235,\n  \"costumes</w>\": 15150,\n  \"cosy</w>\": 22848,\n  \"cot\": 4718,\n  \"cot</w>\": 5871,\n  \"cote\": 44234,\n  \"cote</w>\": 20751,\n  \"cotland</w>\": 32576,\n  \"cotsw\": 23303,\n  \"cotswolds</w>\": 35546,\n  \"cott\": 8211,\n  \"cott</w>\": 11349,\n  \"cottage</w>\": 12155,\n  \"cottages</w>\": 34405,\n  \"cotton\": 22218,\n  \"cotton</w>\": 7050,\n  \"cou\": 1368,\n  \"couch</w>\": 12724,\n  \"cougar\": 35028,\n  \"cougar</w>\": 27042,\n  \"cougars</w>\": 20425,\n  \"cough\": 35631,\n  \"cough</w>\": 18498,\n  \"cougs</w>\": 28482,\n  \"coul\": 22483,\n  \"could\": 44812,\n  \"could</w>\": 1510,\n  \"couldn</w>\": 4072,\n  \"couldnt</w>\": 29042,\n  \"coulter</w>\": 42291,\n  \"coun\": 939,\n  \"counc\": 12927,\n  \"council\": 18187,\n  \"council</w>\": 3620,\n  \"councill\": 15732,\n  \"councillor</w>\": 21179,\n  \"councillors</w>\": 29695,\n  \"councilman</w>\": 40833,\n  \"councils</w>\": 29938,\n  \"counsel\": 13780,\n  \"counsel</w>\": 19814,\n  \"counseling</w>\": 25000,\n  \"counsell\": 47510,\n  \"counselling</w>\": 40581,\n  \"counselor</w>\": 26148,\n  \"counselors</w>\": 38688,\n  \"count\": 6073,\n  \"count</w>\": 5887,\n  \"countdown\": 39559,\n  \"countdown</w>\": 7500,\n  \"counted</w>\": 23149,\n  \"counter\": 10134,\n  \"counter</w>\": 7352,\n  \"counterfe\": 33067,\n  \"counterfeit</w>\": 44242,\n  \"counterpart</w>\": 39216,\n  \"counterparts</w>\": 42106,\n  \"counters</w>\": 46170,\n  \"countess</w>\": 46276,\n  \"counties</w>\": 12338,\n  \"counting</w>\": 9723,\n  \"countless</w>\": 21819,\n  \"countries</w>\": 5489,\n  \"country\": 7896,\n  \"country</w>\": 2157,\n  \"countryfile</w>\": 47023,\n  \"countrymusic</w>\": 30372,\n  \"countryside</w>\": 16303,\n  \"counts</w>\": 12264,\n  \"county\": 18734,\n  \"county</w>\": 2116,\n  \"coup\": 9871,\n  \"coup</w>\": 16479,\n  \"coupe</w>\": 16773,\n  \"couple\": 40136,\n  \"couple</w>\": 3377,\n  \"coupled</w>\": 37153,\n  \"couples</w>\": 14752,\n  \"coupling</w>\": 45595,\n  \"coupon</w>\": 14019,\n  \"coupons</w>\": 23945,\n  \"cour\": 1391,\n  \"coura\": 4436,\n  \"courage</w>\": 9828,\n  \"courageous</w>\": 25005,\n  \"courier</w>\": 27217,\n  \"cours</w>\": 21493,\n  \"course\": 43225,\n  \"course</w>\": 2613,\n  \"courses</w>\": 9464,\n  \"court\": 16837,\n  \"court</w>\": 2908,\n  \"courte\": 5088,\n  \"courtesy</w>\": 5228,\n  \"courthouse</w>\": 22205,\n  \"courtney\": 33601,\n  \"courtney</w>\": 15990,\n  \"courtroom</w>\": 41071,\n  \"courts</w>\": 13514,\n  \"courty\": 20121,\n  \"courtyard</w>\": 21900,\n  \"cous</w>\": 48397,\n  \"cousin</w>\": 7780,\n  \"cousins</w>\": 14073,\n  \"cout\": 29118,\n  \"coutinho</w>\": 35530,\n  \"couture</w>\": 14808,\n  \"cov\": 19384,\n  \"cov</w>\": 48385,\n  \"cove\": 21700,\n  \"cove</w>\": 14708,\n  \"coven\": 12483,\n  \"covenant</w>\": 29647,\n  \"coventry</w>\": 18007,\n  \"cover\": 13534,\n  \"cover</w>\": 2202,\n  \"coverage</w>\": 6810,\n  \"covered</w>\": 5603,\n  \"covering</w>\": 9462,\n  \"covers</w>\": 7745,\n  \"covert</w>\": 40134,\n  \"coveted</w>\": 36119,\n  \"covington</w>\": 43196,\n  \"cow\": 5076,\n  \"cow</w>\": 9706,\n  \"cowan</w>\": 42699,\n  \"coward</w>\": 33729,\n  \"cowards</w>\": 48972,\n  \"cowboy\": 25833,\n  \"cowboy</w>\": 13657,\n  \"cowboys</w>\": 11864,\n  \"cowboysnation</w>\": 43082,\n  \"cowell</w>\": 39015,\n  \"cowgirl</w>\": 47090,\n  \"coworker</w>\": 30727,\n  \"coworkers</w>\": 30821,\n  \"coworking</w>\": 36034,\n  \"cows</w>\": 15204,\n  \"cowx</w>\": 23831,\n  \"cox\": 25784,\n  \"cox</w>\": 11597,\n  \"coy\": 12765,\n  \"coy</w>\": 15742,\n  \"coyi</w>\": 48407,\n  \"coyle</w>\": 45348,\n  \"coyne</w>\": 44729,\n  \"coyo\": 16614,\n  \"coyote</w>\": 26586,\n  \"coyotes</w>\": 30423,\n  \"coys</w>\": 19736,\n  \"coz\": 39922,\n  \"coz</w>\": 14282,\n  \"cozy</w>\": 14873,\n  \"cp\": 7905,\n  \"cp</w>\": 9130,\n  \"cpa</w>\": 30095,\n  \"cpac</w>\": 45731,\n  \"cpc</w>\": 26125,\n  \"cpd</w>\": 23402,\n  \"cpec</w>\": 48007,\n  \"cpfc</w>\": 27553,\n  \"cpi</w>\": 41795,\n  \"cpl</w>\": 26852,\n  \"cpr</w>\": 25134,\n  \"cps</w>\": 27078,\n  \"cpt</w>\": 32892,\n  \"cpu</w>\": 27700,\n  \"cq\": 48910,\n  \"cq</w>\": 48417,\n  \"cr\": 1075,\n  \"cr</w>\": 3483,\n  \"cra\": 1184,\n  \"cra</w>\": 18362,\n  \"crab\": 27382,\n  \"crab</w>\": 11574,\n  \"crabs</w>\": 30908,\n  \"crack\": 11222,\n  \"crack</w>\": 10334,\n  \"crackdown</w>\": 29527,\n  \"cracked</w>\": 19826,\n  \"cracker</w>\": 16298,\n  \"crackers</w>\": 26200,\n  \"cracking</w>\": 13008,\n  \"cracks</w>\": 21426,\n  \"cracy</w>\": 24749,\n  \"cradle</w>\": 29384,\n  \"crae</w>\": 40438,\n  \"craf\": 10873,\n  \"craft\": 7717,\n  \"craft</w>\": 3588,\n  \"craftbeer</w>\": 12371,\n  \"crafted</w>\": 12424,\n  \"crafthour</w>\": 42324,\n  \"crafting</w>\": 26886,\n  \"crafts\": 33276,\n  \"crafts</w>\": 13383,\n  \"craftsman</w>\": 39528,\n  \"craftsmanship</w>\": 36682,\n  \"crafty</w>\": 32317,\n  \"craic</w>\": 46962,\n  \"craig\": 14042,\n  \"craig</w>\": 8061,\n  \"craigslist</w>\": 43865,\n  \"cram\": 29809,\n  \"cramer</w>\": 44592,\n  \"cramps</w>\": 46106,\n  \"cran\": 7761,\n  \"cranberries</w>\": 49361,\n  \"cranberry</w>\": 23824,\n  \"crane</w>\": 14626,\n  \"cranes</w>\": 26979,\n  \"crani\": 45674,\n  \"crank\": 46246,\n  \"crank</w>\": 32283,\n  \"cranston</w>\": 44340,\n  \"crap</w>\": 11899,\n  \"crappy</w>\": 30475,\n  \"crash\": 37150,\n  \"crash</w>\": 5033,\n  \"crashed</w>\": 16638,\n  \"crashes</w>\": 17013,\n  \"crashing</w>\": 24991,\n  \"crat</w>\": 46696,\n  \"crate</w>\": 24756,\n  \"crater</w>\": 22663,\n  \"crates</w>\": 30172,\n  \"cratic</w>\": 32175,\n  \"crative</w>\": 39999,\n  \"crats</w>\": 43056,\n  \"crave</w>\": 33397,\n  \"craven</w>\": 33625,\n  \"craving</w>\": 18344,\n  \"cravings</w>\": 34476,\n  \"craw\": 7400,\n  \"crawfish</w>\": 42772,\n  \"crawford</w>\": 15918,\n  \"crawl</w>\": 20106,\n  \"crawler</w>\": 41012,\n  \"crawley</w>\": 42316,\n  \"crawling</w>\": 37066,\n  \"cray\": 24184,\n  \"cray</w>\": 27032,\n  \"crayon</w>\": 41801,\n  \"crayons</w>\": 43508,\n  \"craz\": 25776,\n  \"craze</w>\": 30637,\n  \"craziest</w>\": 32690,\n  \"craziness</w>\": 46436,\n  \"crazy\": 17540,\n  \"crazy</w>\": 3578,\n  \"crc</w>\": 25618,\n  \"cre\": 798,\n  \"cre</w>\": 17762,\n  \"cream\": 23184,\n  \"cream</w>\": 3867,\n  \"creams</w>\": 41447,\n  \"creamy</w>\": 17206,\n  \"crease</w>\": 48441,\n  \"create\": 30949,\n  \"create</w>\": 3380,\n  \"created</w>\": 4080,\n  \"creates</w>\": 10361,\n  \"creati\": 6714,\n  \"creating</w>\": 5524,\n  \"creation\": 38293,\n  \"creation</w>\": 6900,\n  \"creations</w>\": 17411,\n  \"creative\": 15237,\n  \"creative</w>\": 4450,\n  \"creatives</w>\": 29352,\n  \"creativity</w>\": 9636,\n  \"creator</w>\": 10173,\n  \"creators</w>\": 17981,\n  \"creature</w>\": 14317,\n  \"creatures</w>\": 13938,\n  \"cred\": 7314,\n  \"cred</w>\": 22377,\n  \"credenti\": 29487,\n  \"credentials</w>\": 33422,\n  \"credi\": 21097,\n  \"credibility</w>\": 34984,\n  \"credible</w>\": 32983,\n  \"credit\": 21467,\n  \"credit</w>\": 3900,\n  \"credited</w>\": 32480,\n  \"credits</w>\": 10654,\n  \"creds</w>\": 43462,\n  \"cree\": 33961,\n  \"cree</w>\": 36014,\n  \"creed</w>\": 18845,\n  \"creek\": 26120,\n  \"creek</w>\": 5526,\n  \"creep\": 8153,\n  \"creep</w>\": 26084,\n  \"creeper</w>\": 38662,\n  \"creeping</w>\": 29697,\n  \"creeps</w>\": 45135,\n  \"creepy</w>\": 11943,\n  \"creighton</w>\": 42823,\n  \"creme</w>\": 22681,\n  \"creole</w>\": 45632,\n  \"crepe</w>\": 38611,\n  \"crescent</w>\": 18211,\n  \"cress</w>\": 39124,\n  \"crest\": 35985,\n  \"crest</w>\": 15760,\n  \"crested</w>\": 36656,\n  \"crete</w>\": 8584,\n  \"crew\": 21560,\n  \"crew</w>\": 3462,\n  \"crewe</w>\": 43284,\n  \"crews</w>\": 10463,\n  \"cri\": 1621,\n  \"cri</w>\": 38962,\n  \"crib</w>\": 23271,\n  \"cric\": 4328,\n  \"cricke\": 19098,\n  \"cricket\": 21859,\n  \"cricket</w>\": 5373,\n  \"cricketer</w>\": 28439,\n  \"cricketers</w>\": 43986,\n  \"cried</w>\": 15290,\n  \"cries</w>\": 19769,\n  \"crime\": 13872,\n  \"crime</w>\": 4896,\n  \"crimea</w>\": 28614,\n  \"crimes</w>\": 11827,\n  \"crimin\": 5874,\n  \"criminal\": 30197,\n  \"criminal</w>\": 8255,\n  \"criminals</w>\": 18783,\n  \"crimson</w>\": 19437,\n  \"cringe</w>\": 42588,\n  \"cripp\": 33588,\n  \"cris</w>\": 37818,\n  \"crises</w>\": 36403,\n  \"crisis</w>\": 5712,\n  \"crisp</w>\": 15145,\n  \"crispr</w>\": 39784,\n  \"crisps</w>\": 35744,\n  \"crispy</w>\": 16458,\n  \"criss</w>\": 29708,\n  \"cristi\": 12699,\n  \"cristian</w>\": 48808,\n  \"cristiano</w>\": 14807,\n  \"cristina</w>\": 33395,\n  \"cristo</w>\": 38315,\n  \"crit\": 3613,\n  \"crit</w>\": 48130,\n  \"criteri\": 33627,\n  \"criteria</w>\": 24849,\n  \"criterion</w>\": 43841,\n  \"criti\": 25333,\n  \"critic\": 12417,\n  \"critic</w>\": 19361,\n  \"critical\": 15314,\n  \"critical</w>\": 6808,\n  \"critically</w>\": 21570,\n  \"criticalrole\": 33606,\n  \"criticalrole</w>\": 22742,\n  \"criticalrolefanart</w>\": 43663,\n  \"critici\": 20333,\n  \"criticism</w>\": 17405,\n  \"criticize</w>\": 46081,\n  \"criticized</w>\": 41557,\n  \"critics</w>\": 16946,\n  \"critique</w>\": 32982,\n  \"critters</w>\": 35423,\n  \"crm</w>\": 22610,\n  \"cro\": 1192,\n  \"cro</w>\": 22522,\n  \"croati\": 28072,\n  \"croatia</w>\": 13323,\n  \"croatian</w>\": 34795,\n  \"croc</w>\": 43350,\n  \"croche\": 35352,\n  \"crochet</w>\": 17554,\n  \"crock\": 41685,\n  \"crocker</w>\": 47843,\n  \"crockett</w>\": 48313,\n  \"crocod\": 24519,\n  \"crocodile</w>\": 24757,\n  \"crocs</w>\": 38988,\n  \"croft</w>\": 16657,\n  \"croissant</w>\": 46011,\n  \"croix</w>\": 44735,\n  \"crom\": 25082,\n  \"crombie</w>\": 46162,\n  \"cromwell</w>\": 45345,\n  \"cron\": 17361,\n  \"croo\": 16443,\n  \"crook</w>\": 43744,\n  \"crooked\": 48473,\n  \"crooked</w>\": 25644,\n  \"crooks</w>\": 44226,\n  \"crop\": 40751,\n  \"crop</w>\": 9955,\n  \"cropped</w>\": 31139,\n  \"crops</w>\": 16290,\n  \"crore</w>\": 18274,\n  \"crores</w>\": 37281,\n  \"cros\": 16670,\n  \"crosby</w>\": 21095,\n  \"cross\": 5266,\n  \"cross</w>\": 3417,\n  \"crossed</w>\": 11731,\n  \"crosses</w>\": 20473,\n  \"crossfit\": 47214,\n  \"crossfit</w>\": 20395,\n  \"crossing</w>\": 8673,\n  \"crossings</w>\": 43517,\n  \"crossover</w>\": 17194,\n  \"crossroads</w>\": 27427,\n  \"crossword</w>\": 32945,\n  \"crou\": 31206,\n  \"crouch</w>\": 36506,\n  \"crow\": 3138,\n  \"crow</w>\": 16019,\n  \"crowd\": 12036,\n  \"crowd</w>\": 4570,\n  \"crowded</w>\": 20182,\n  \"crowdfunding</w>\": 17971,\n  \"crowds</w>\": 16092,\n  \"crowe</w>\": 33560,\n  \"crowley</w>\": 32287,\n  \"crown\": 22190,\n  \"crown</w>\": 6902,\n  \"crowned</w>\": 16109,\n  \"crowns</w>\": 33229,\n  \"crows</w>\": 27134,\n  \"croy\": 21676,\n  \"croydon</w>\": 27116,\n  \"crs</w>\": 28449,\n  \"crt</w>\": 43877,\n  \"cru\": 1815,\n  \"cru</w>\": 29788,\n  \"cruci\": 18499,\n  \"crucial</w>\": 12396,\n  \"crude</w>\": 20677,\n  \"cruel\": 16073,\n  \"cruel</w>\": 17573,\n  \"cruelty</w>\": 20675,\n  \"cruis\": 27721,\n  \"cruise\": 36425,\n  \"cruise</w>\": 6764,\n  \"cruiser</w>\": 21394,\n  \"cruises</w>\": 19214,\n  \"cruising</w>\": 19743,\n  \"crum\": 43268,\n  \"crumb\": 48327,\n  \"crumb</w>\": 39909,\n  \"crumble</w>\": 36595,\n  \"crumbs</w>\": 35893,\n  \"crun\": 17407,\n  \"crunch</w>\": 16620,\n  \"crunchy</w>\": 31366,\n  \"crusad\": 19133,\n  \"crusade</w>\": 36846,\n  \"crusader</w>\": 40171,\n  \"crusaders</w>\": 31319,\n  \"crush\": 22296,\n  \"crush</w>\": 7610,\n  \"crushed</w>\": 18270,\n  \"crusher</w>\": 44923,\n  \"crushes</w>\": 35844,\n  \"crushing</w>\": 20790,\n  \"crust</w>\": 23136,\n  \"crusted</w>\": 37314,\n  \"cruz\": 33689,\n  \"cruz</w>\": 8403,\n  \"cry\": 2837,\n  \"cry</w>\": 6290,\n  \"crying</w>\": 6828,\n  \"cryo\": 32215,\n  \"cryp\": 4865,\n  \"crypt</w>\": 37814,\n  \"cryptic</w>\": 46925,\n  \"crypto\": 8080,\n  \"crypto</w>\": 9608,\n  \"cryptocurrencies</w>\": 33329,\n  \"cryptocurrency</w>\": 12070,\n  \"cryst\": 15891,\n  \"crystal\": 17387,\n  \"crystal</w>\": 6517,\n  \"crystalli\": 47551,\n  \"crystals</w>\": 18350,\n  \"cs\": 11978,\n  \"cs</w>\": 2804,\n  \"csa</w>\": 26355,\n  \"csc\": 41727,\n  \"csc</w>\": 37266,\n  \"csd</w>\": 36913,\n  \"cse</w>\": 41659,\n  \"csg</w>\": 47085,\n  \"csgo</w>\": 28928,\n  \"csi\": 41750,\n  \"csi</w>\": 28070,\n  \"csk</w>\": 43036,\n  \"csm</w>\": 40061,\n  \"csn</w>\": 46329,\n  \"cso</w>\": 43864,\n  \"csp</w>\": 39243,\n  \"csr\": 32105,\n  \"csr</w>\": 24598,\n  \"csrracing</w>\": 44193,\n  \"css\": 41418,\n  \"css</w>\": 19846,\n  \"cst</w>\": 17016,\n  \"csu\": 35948,\n  \"csu</w>\": 31261,\n  \"csw</w>\": 41031,\n  \"ct\": 3381,\n  \"ct</w>\": 1122,\n  \"cta</w>\": 28397,\n  \"ctar</w>\": 27842,\n  \"ctc</w>\": 34123,\n  \"cte</w>\": 31410,\n  \"cted</w>\": 2910,\n  \"ctf</w>\": 35250,\n  \"cthulhu</w>\": 41064,\n  \"cting</w>\": 7985,\n  \"ction\": 17578,\n  \"ction</w>\": 1569,\n  \"ctions</w>\": 7021,\n  \"ctive</w>\": 9313,\n  \"cto</w>\": 17445,\n  \"ctor</w>\": 8108,\n  \"ctr\": 35602,\n  \"ctr</w>\": 18481,\n  \"cts</w>\": 6936,\n  \"ctto</w>\": 25118,\n  \"ctu\": 20834,\n  \"cture</w>\": 17668,\n  \"ctv\": 21213,\n  \"ctv</w>\": 27590,\n  \"cu\": 729,\n  \"cu</w>\": 11224,\n  \"cuando</w>\": 40388,\n  \"cub\": 16938,\n  \"cub</w>\": 19972,\n  \"cuba</w>\": 11576,\n  \"cuban</w>\": 15536,\n  \"cube\": 47753,\n  \"cube</w>\": 11353,\n  \"cubes</w>\": 31413,\n  \"cubic\": 48159,\n  \"cubic</w>\": 29614,\n  \"cubs</w>\": 9858,\n  \"cuck\": 26364,\n  \"cuckoo</w>\": 38062,\n  \"cucu\": 16705,\n  \"cucumber</w>\": 19787,\n  \"cucumbers</w>\": 48065,\n  \"cud\": 42684,\n  \"cudd\": 12820,\n  \"cuddle</w>\": 19568,\n  \"cuddles</w>\": 24001,\n  \"cuddling</w>\": 29696,\n  \"cuddly</w>\": 36208,\n  \"cudi</w>\": 48713,\n  \"cue</w>\": 13424,\n  \"cuer\": 39506,\n  \"cues</w>\": 35719,\n  \"cuff\": 34693,\n  \"cuff</w>\": 22414,\n  \"cufflinks</w>\": 43938,\n  \"cuffs</w>\": 37221,\n  \"cuis\": 9938,\n  \"cuisine</w>\": 10605,\n  \"cuk</w>\": 34838,\n  \"cul\": 1877,\n  \"cula</w>\": 35935,\n  \"cular</w>\": 10940,\n  \"culars</w>\": 45719,\n  \"cule</w>\": 31066,\n  \"cules</w>\": 18984,\n  \"culin\": 14772,\n  \"culinary</w>\": 16466,\n  \"cull\": 21880,\n  \"cull</w>\": 42061,\n  \"cullen</w>\": 25973,\n  \"culmin\": 33778,\n  \"culo\": 36305,\n  \"culprit</w>\": 41593,\n  \"cult</w>\": 11965,\n  \"cultiv\": 16781,\n  \"cultivate</w>\": 42983,\n  \"cultivated</w>\": 48901,\n  \"cultivation</w>\": 41539,\n  \"cultur\": 20780,\n  \"cultural\": 34908,\n  \"cultural</w>\": 6753,\n  \"culturally</w>\": 36783,\n  \"culture\": 20197,\n  \"culture</w>\": 3673,\n  \"cultured</w>\": 40176,\n  \"cultures</w>\": 19552,\n  \"culver</w>\": 42103,\n  \"cum\": 20142,\n  \"cum</w>\": 27119,\n  \"cumb\": 10858,\n  \"cumber\": 15309,\n  \"cumberbatch</w>\": 27541,\n  \"cumberland</w>\": 28747,\n  \"cumbri\": 32010,\n  \"cumbria</w>\": 17953,\n  \"cumin</w>\": 42285,\n  \"cumple</w>\": 47050,\n  \"cumul\": 42961,\n  \"cumulative</w>\": 47610,\n  \"cumulus</w>\": 46313,\n  \"cun\": 12423,\n  \"cun</w>\": 29532,\n  \"cunningham</w>\": 25321,\n  \"cuomo</w>\": 25681,\n  \"cup\": 5059,\n  \"cup</w>\": 1937,\n  \"cupboard</w>\": 32074,\n  \"cupcake</w>\": 17025,\n  \"cupcakes</w>\": 12747,\n  \"cupid</w>\": 34885,\n  \"cuppa</w>\": 28077,\n  \"cups</w>\": 11463,\n  \"cur\": 1092,\n  \"cur</w>\": 33073,\n  \"curated</w>\": 20341,\n  \"curator</w>\": 20753,\n  \"curb</w>\": 21931,\n  \"curd</w>\": 38881,\n  \"cure\": 36758,\n  \"cure</w>\": 9088,\n  \"cured</w>\": 26248,\n  \"cures</w>\": 38204,\n  \"curfew</w>\": 48826,\n  \"curi\": 12640,\n  \"curing</w>\": 44169,\n  \"curiosity</w>\": 21583,\n  \"curious</w>\": 9865,\n  \"curl</w>\": 24306,\n  \"curled</w>\": 43734,\n  \"curling</w>\": 18543,\n  \"curls</w>\": 24340,\n  \"curly</w>\": 20795,\n  \"curran</w>\": 40999,\n  \"currant</w>\": 43501,\n  \"curren\": 6142,\n  \"currencies</w>\": 23530,\n  \"currency</w>\": 7853,\n  \"current</w>\": 3653,\n  \"currently</w>\": 3792,\n  \"currents</w>\": 35450,\n  \"curric\": 16201,\n  \"curriculum</w>\": 17947,\n  \"currie</w>\": 39385,\n  \"curry\": 49285,\n  \"curry</w>\": 8051,\n  \"curse</w>\": 18479,\n  \"cursed</w>\": 26408,\n  \"cursor</w>\": 46546,\n  \"curt</w>\": 38137,\n  \"curtain</w>\": 17223,\n  \"curtains</w>\": 30223,\n  \"curti\": 39925,\n  \"curtis</w>\": 13808,\n  \"curve</w>\": 15792,\n  \"curved</w>\": 25789,\n  \"curves</w>\": 22814,\n  \"curvy</w>\": 45788,\n  \"cus</w>\": 2736,\n  \"cusa</w>\": 47414,\n  \"cuse</w>\": 37950,\n  \"cush\": 43731,\n  \"cushi\": 15333,\n  \"cushion</w>\": 20853,\n  \"cushions</w>\": 34163,\n  \"cussion</w>\": 16658,\n  \"cussions</w>\": 46853,\n  \"cust\": 20900,\n  \"custard</w>\": 26516,\n  \"custo\": 4376,\n  \"custody</w>\": 16176,\n  \"custom\": 2662,\n  \"custom</w>\": 4996,\n  \"custome\": 41323,\n  \"customer\": 24035,\n  \"customer</w>\": 5102,\n  \"customerexperience</w>\": 45167,\n  \"customers</w>\": 5528,\n  \"customerservice</w>\": 40611,\n  \"customiz\": 41793,\n  \"customizable</w>\": 48253,\n  \"customization</w>\": 48244,\n  \"customize</w>\": 32179,\n  \"customized</w>\": 23229,\n  \"customs</w>\": 16880,\n  \"cut\": 10511,\n  \"cut</w>\": 3032,\n  \"cute\": 16031,\n  \"cute</w>\": 2242,\n  \"cuteness</w>\": 19342,\n  \"cuter</w>\": 27151,\n  \"cutest</w>\": 8032,\n  \"cuth\": 44328,\n  \"cutie</w>\": 10733,\n  \"cuties\": 40939,\n  \"cuties</w>\": 23420,\n  \"cutiesaturday</w>\": 41883,\n  \"cutler</w>\": 40428,\n  \"cutlery</w>\": 49073,\n  \"cutout</w>\": 45016,\n  \"cuts</w>\": 7435,\n  \"cutt\": 27338,\n  \"cutt</w>\": 47647,\n  \"cutter</w>\": 19719,\n  \"cutters</w>\": 44783,\n  \"cutting</w>\": 7266,\n  \"cuz</w>\": 9215,\n  \"cv\": 13531,\n  \"cv</w>\": 13947,\n  \"cvs</w>\": 29603,\n  \"cw\": 10652,\n  \"cw</w>\": 11065,\n  \"cwc</w>\": 19179,\n  \"cwgc</w>\": 48527,\n  \"cws</w>\": 45186,\n  \"cx\": 44457,\n  \"cx</w>\": 14283,\n  \"cy\": 1470,\n  \"cy</w>\": 1678,\n  \"cyber\": 5830,\n  \"cyber</w>\": 10210,\n  \"cybercrime</w>\": 41772,\n  \"cybermonday</w>\": 36578,\n  \"cyberpunk</w>\": 36896,\n  \"cybersecurity</w>\": 10581,\n  \"cyborg</w>\": 36650,\n  \"cycl\": 9791,\n  \"cycle\": 19083,\n  \"cycle</w>\": 5072,\n  \"cycled</w>\": 31055,\n  \"cycles</w>\": 14605,\n  \"cycli\": 12201,\n  \"cycling\": 26353,\n  \"cycling</w>\": 6321,\n  \"cyclist</w>\": 20686,\n  \"cyclists</w>\": 20303,\n  \"cyclo\": 18122,\n  \"cyclone\": 48094,\n  \"cyclone</w>\": 20917,\n  \"cyclones</w>\": 34669,\n  \"cylin\": 18569,\n  \"cylinder</w>\": 22092,\n  \"cylinders</w>\": 48888,\n  \"cymb\": 36677,\n  \"cymru</w>\": 24005,\n  \"cyn\": 14324,\n  \"cynthi\": 41994,\n  \"cynthia</w>\": 23748,\n  \"cyp\": 14809,\n  \"cypress</w>\": 25347,\n  \"cypri\": 36481,\n  \"cyprus</w>\": 15263,\n  \"cyril</w>\": 36028,\n  \"cyrus</w>\": 14204,\n  \"cystic</w>\": 46131,\n  \"cyto\": 31864,\n  \"cz\": 22898,\n  \"cz</w>\": 22921,\n  \"cze\": 12152,\n  \"czech\": 43151,\n  \"czech</w>\": 16141,\n  \"cÃ©\": 36454,\n  \"cÃ©</w>\": 18317,\n  \"d\": 67,\n  \"d</w>\": 323,\n  \"da\": 925,\n  \"da</w>\": 1140,\n  \"daa</w>\": 32642,\n  \"daan</w>\": 44814,\n  \"dab\": 10413,\n  \"dab</w>\": 22900,\n  \"dac\": 16222,\n  \"dac</w>\": 27478,\n  \"daca</w>\": 28477,\n  \"dach\": 34166,\n  \"dachsh\": 41641,\n  \"dachshund</w>\": 42720,\n  \"dad\": 4346,\n  \"dad</w>\": 2639,\n  \"dada</w>\": 31325,\n  \"daddy\": 29466,\n  \"daddy</w>\": 6546,\n  \"dade</w>\": 23299,\n  \"dades</w>\": 28289,\n  \"dads</w>\": 12741,\n  \"dae\": 23358,\n  \"dae</w>\": 15422,\n  \"daener\": 46934,\n  \"daes\": 47282,\n  \"daesh</w>\": 35047,\n  \"daf\": 9972,\n  \"daf</w>\": 36704,\n  \"daffodils</w>\": 44769,\n  \"daft</w>\": 36347,\n  \"dag\": 11434,\n  \"dag</w>\": 25650,\n  \"dagger</w>\": 34251,\n  \"dah\": 16976,\n  \"dah</w>\": 11776,\n  \"dahl\": 45816,\n  \"dahl</w>\": 22621,\n  \"dahlia</w>\": 41768,\n  \"dai\": 13559,\n  \"dai</w>\": 10632,\n  \"dail\": 14676,\n  \"dailies</w>\": 21260,\n  \"daily\": 6689,\n  \"daily</w>\": 2873,\n  \"dailynews</w>\": 43466,\n  \"dailys\": 43160,\n  \"dailysketch</w>\": 46738,\n  \"daim\": 40421,\n  \"dain\": 32222,\n  \"dain</w>\": 28315,\n  \"daipur</w>\": 47631,\n  \"dair\": 19998,\n  \"dair</w>\": 42078,\n  \"dairy\": 25243,\n  \"dairy</w>\": 10302,\n  \"dairyfree</w>\": 49366,\n  \"dais\": 10502,\n  \"daisi\": 39947,\n  \"daisies</w>\": 40654,\n  \"daisy\": 39310,\n  \"daisy</w>\": 12865,\n  \"dak\": 6999,\n  \"dak</w>\": 16095,\n  \"dakar</w>\": 31137,\n  \"dakota\": 38522,\n  \"dakota</w>\": 12358,\n  \"dal\": 2476,\n  \"dal</w>\": 5601,\n  \"dala</w>\": 42675,\n  \"dalai</w>\": 41222,\n  \"dalail\": 35169,\n  \"dalailama</w>\": 35849,\n  \"dale\": 11533,\n  \"dale</w>\": 4677,\n  \"dalejr</w>\": 38207,\n  \"dales</w>\": 29031,\n  \"daley</w>\": 28544,\n  \"dalgo</w>\": 43614,\n  \"dali\": 36735,\n  \"dali</w>\": 25703,\n  \"dalit</w>\": 45432,\n  \"dall</w>\": 43631,\n  \"dalla\": 16772,\n  \"dallas\": 27414,\n  \"dallas</w>\": 5759,\n  \"dallascowboys</w>\": 33016,\n  \"dalmati\": 44275,\n  \"dalton</w>\": 21488,\n  \"daly</w>\": 24873,\n  \"dam\": 1880,\n  \"dam</w>\": 4926,\n  \"damage</w>\": 6822,\n  \"damaged</w>\": 13568,\n  \"damages</w>\": 28842,\n  \"damaging</w>\": 20610,\n  \"damas\": 23345,\n  \"damascus</w>\": 25396,\n  \"dame</w>\": 10069,\n  \"dames</w>\": 44548,\n  \"dami\": 17783,\n  \"damian\": 43307,\n  \"damian</w>\": 25375,\n  \"damien</w>\": 25090,\n  \"dammit</w>\": 31057,\n  \"damn\": 37409,\n  \"damn</w>\": 4451,\n  \"damned</w>\": 28428,\n  \"damon\": 48503,\n  \"damon</w>\": 18244,\n  \"damp</w>\": 26520,\n  \"dams</w>\": 37680,\n  \"dan\": 2257,\n  \"dan</w>\": 2284,\n  \"dana\": 44834,\n  \"dana</w>\": 13777,\n  \"danao</w>\": 38598,\n  \"danc\": 3945,\n  \"dance\": 10619,\n  \"dance</w>\": 2724,\n  \"danced</w>\": 32891,\n  \"dancehall</w>\": 33300,\n  \"dancer</w>\": 11400,\n  \"dancers</w>\": 13153,\n  \"dances</w>\": 24083,\n  \"dancing\": 33280,\n  \"dancing</w>\": 6226,\n  \"dand\": 12593,\n  \"dandelion</w>\": 38903,\n  \"dandy</w>\": 31932,\n  \"dane</w>\": 19330,\n  \"danes</w>\": 47477,\n  \"dang\": 4283,\n  \"dang</w>\": 14992,\n  \"danger\": 20083,\n  \"danger</w>\": 11212,\n  \"dangerous</w>\": 7350,\n  \"dangerously</w>\": 35012,\n  \"dangers</w>\": 23726,\n  \"dangle</w>\": 39907,\n  \"dani\": 3001,\n  \"dani</w>\": 17009,\n  \"daniel\": 7859,\n  \"daniel</w>\": 4981,\n  \"daniela</w>\": 44466,\n  \"danielle\": 30396,\n  \"danielle</w>\": 15292,\n  \"danielpadilla</w>\": 34702,\n  \"daniels</w>\": 16146,\n  \"danish</w>\": 15467,\n  \"dank</w>\": 31849,\n  \"dann\": 11951,\n  \"danny\": 14950,\n  \"danny</w>\": 7621,\n  \"dano</w>\": 29703,\n  \"dans</w>\": 16241,\n  \"dant\": 48097,\n  \"dant</w>\": 28237,\n  \"dante</w>\": 21911,\n  \"danube</w>\": 44594,\n  \"dany</w>\": 47816,\n  \"dao</w>\": 36099,\n  \"dap\": 12149,\n  \"dap</w>\": 38034,\n  \"daph\": 24591,\n  \"daphne</w>\": 31687,\n  \"dapl</w>\": 34478,\n  \"dapp\": 46857,\n  \"dapper</w>\": 26071,\n  \"daq</w>\": 25381,\n  \"dar\": 1377,\n  \"dar</w>\": 6242,\n  \"dara</w>\": 17064,\n  \"darby</w>\": 34366,\n  \"darcy</w>\": 32916,\n  \"dare\": 14833,\n  \"dare</w>\": 9863,\n  \"daredevil</w>\": 28849,\n  \"dares</w>\": 42973,\n  \"dareto\": 46794,\n  \"dari\": 16292,\n  \"dari</w>\": 14552,\n  \"daria</w>\": 45622,\n  \"daries</w>\": 18184,\n  \"daring</w>\": 28166,\n  \"dario</w>\": 33918,\n  \"darius</w>\": 32606,\n  \"darje\": 49089,\n  \"dark\": 5724,\n  \"dark</w>\": 3144,\n  \"darker</w>\": 18737,\n  \"darkest</w>\": 25898,\n  \"darkness</w>\": 10521,\n  \"darling</w>\": 13048,\n  \"darlings</w>\": 39961,\n  \"darlington</w>\": 34565,\n  \"darn</w>\": 26059,\n  \"darrell</w>\": 33522,\n  \"darren\": 20263,\n  \"darren</w>\": 12275,\n  \"darry\": 29200,\n  \"darryl</w>\": 35359,\n  \"darshan</w>\": 34564,\n  \"dart\": 14001,\n  \"dart</w>\": 19841,\n  \"darth\": 41304,\n  \"darth</w>\": 23164,\n  \"dartmoor</w>\": 31477,\n  \"dartmouth</w>\": 29667,\n  \"darts</w>\": 15246,\n  \"darwin\": 43013,\n  \"darwin</w>\": 20926,\n  \"daryl\": 45607,\n  \"daryl</w>\": 24532,\n  \"das\": 9940,\n  \"das</w>\": 7359,\n  \"dash\": 13858,\n  \"dash</w>\": 10206,\n  \"dashboard</w>\": 27679,\n  \"dashi\": 12876,\n  \"dashing</w>\": 33825,\n  \"dat\": 1717,\n  \"dat</w>\": 9445,\n  \"data\": 14876,\n  \"data</w>\": 2281,\n  \"datab\": 11941,\n  \"database</w>\": 14678,\n  \"databases</w>\": 48384,\n  \"datac\": 27329,\n  \"datacenter</w>\": 40133,\n  \"datasci\": 14496,\n  \"datascience</w>\": 15748,\n  \"dataviz</w>\": 28138,\n  \"date\": 34300,\n  \"date</w>\": 1524,\n  \"dated</w>\": 13564,\n  \"dates</w>\": 7228,\n  \"dating</w>\": 8534,\n  \"dation</w>\": 15311,\n  \"datlantic\": 34270,\n  \"dato</w>\": 36075,\n  \"dats</w>\": 48674,\n  \"dau\": 3162,\n  \"dau</w>\": 33828,\n  \"daugh\": 42523,\n  \"daughter</w>\": 3944,\n  \"daughters</w>\": 13585,\n  \"daun\": 29470,\n  \"dav\": 3700,\n  \"dav</w>\": 46488,\n  \"davao</w>\": 31502,\n  \"dave\": 10089,\n  \"dave</w>\": 5077,\n  \"daven\": 28350,\n  \"davenport</w>\": 34624,\n  \"davey</w>\": 33391,\n  \"davi\": 1732,\n  \"david\": 4640,\n  \"david</w>\": 2259,\n  \"davidbowie</w>\": 44448,\n  \"davido</w>\": 35989,\n  \"davids</w>\": 46695,\n  \"davidson</w>\": 13166,\n  \"davies</w>\": 13120,\n  \"davin\": 43187,\n  \"davis\": 24426,\n  \"davis</w>\": 5536,\n  \"davison</w>\": 43725,\n  \"davos</w>\": 31887,\n  \"davy</w>\": 41565,\n  \"daw\": 5971,\n  \"daw</w>\": 24404,\n  \"dawg</w>\": 18660,\n  \"dawgs</w>\": 26431,\n  \"dawn\": 30590,\n  \"dawn</w>\": 7689,\n  \"dawson</w>\": 18611,\n  \"dax</w>\": 29458,\n  \"day\": 1405,\n  \"day</w>\": 575,\n  \"daya</w>\": 38165,\n  \"daybreak</w>\": 33862,\n  \"daycare</w>\": 36363,\n  \"daydream</w>\": 41587,\n  \"dayin\": 20332,\n  \"daylight</w>\": 20809,\n  \"dayo\": 29856,\n  \"dayo</w>\": 46605,\n  \"dayof\": 16272,\n  \"dayofthe\": 38043,\n  \"days</w>\": 1161,\n  \"daysof\": 12379,\n  \"daysofcode</w>\": 36537,\n  \"daysto\": 29886,\n  \"daystogo</w>\": 42198,\n  \"dayswild</w>\": 42052,\n  \"daytime</w>\": 22830,\n  \"dayton\": 35729,\n  \"dayton</w>\": 20262,\n  \"daytona</w>\": 16335,\n  \"dayweekend</w>\": 44526,\n  \"dayz</w>\": 35949,\n  \"daz\": 15449,\n  \"daz</w>\": 43844,\n  \"daze</w>\": 33591,\n  \"dazz\": 17149,\n  \"dazzle</w>\": 41164,\n  \"dazzling</w>\": 28821,\n  \"db\": 19100,\n  \"db</w>\": 8128,\n  \"dbacks</w>\": 31175,\n  \"dbs</w>\": 40558,\n  \"dbz</w>\": 49226,\n  \"dc\": 5074,\n  \"dc</w>\": 2743,\n  \"dca</w>\": 49107,\n  \"dcc</w>\": 33747,\n  \"dccomics</w>\": 17610,\n  \"dcfc</w>\": 35526,\n  \"dci</w>\": 35336,\n  \"dcs</w>\": 42878,\n  \"dcu</w>\": 42647,\n  \"dd\": 1353,\n  \"dd</w>\": 3766,\n  \"dda</w>\": 35202,\n  \"ddad</w>\": 39049,\n  \"dday\": 32689,\n  \"dday</w>\": 26243,\n  \"ddc</w>\": 48513,\n  \"ddd</w>\": 24183,\n  \"dddd</w>\": 35362,\n  \"dden</w>\": 5013,\n  \"dder</w>\": 9300,\n  \"dders</w>\": 24827,\n  \"ddi</w>\": 44450,\n  \"ddin</w>\": 17175,\n  \"dding\": 48101,\n  \"dding</w>\": 8974,\n  \"ddings</w>\": 49106,\n  \"ddington</w>\": 29238,\n  \"ddle\": 17633,\n  \"ddle</w>\": 8357,\n  \"ddled</w>\": 38392,\n  \"ddles</w>\": 33901,\n  \"ddleston</w>\": 25647,\n  \"ddling</w>\": 30981,\n  \"ddlovato</w>\": 28244,\n  \"ddos</w>\": 46463,\n  \"ddr</w>\": 26027,\n  \"dds</w>\": 48334,\n  \"ddu</w>\": 43836,\n  \"ddy\": 14981,\n  \"ddy</w>\": 7876,\n  \"de\": 561,\n  \"de</w>\": 654,\n  \"dea</w>\": 18477,\n  \"deacon</w>\": 29155,\n  \"dead\": 3906,\n  \"dead</w>\": 2747,\n  \"deadliest</w>\": 40811,\n  \"deadline\": 47209,\n  \"deadline</w>\": 8458,\n  \"deadlines</w>\": 44959,\n  \"deadly</w>\": 10756,\n  \"deadpool</w>\": 21471,\n  \"deaf\": 28229,\n  \"deaf</w>\": 18358,\n  \"deal\": 7249,\n  \"deal</w>\": 2696,\n  \"dealer</w>\": 15218,\n  \"dealers</w>\": 21697,\n  \"dealership</w>\": 32096,\n  \"dealing</w>\": 13138,\n  \"deals</w>\": 4469,\n  \"dealt</w>\": 30101,\n  \"dean\": 13807,\n  \"dean</w>\": 5828,\n  \"deandre</w>\": 43635,\n  \"deans</w>\": 46852,\n  \"dear\": 15696,\n  \"dear</w>\": 3817,\n  \"dearest</w>\": 24880,\n  \"dearly</w>\": 31880,\n  \"deas</w>\": 34715,\n  \"death\": 7163,\n  \"death</w>\": 2767,\n  \"deaths</w>\": 12253,\n  \"deau</w>\": 12399,\n  \"deaux</w>\": 19883,\n  \"deb\": 2987,\n  \"deb</w>\": 25687,\n  \"debat\": 32082,\n  \"debate</w>\": 5196,\n  \"debates</w>\": 19239,\n  \"debating</w>\": 23472,\n  \"debbie\": 47186,\n  \"debbie</w>\": 16735,\n  \"debit</w>\": 32410,\n  \"debor\": 16738,\n  \"deborah\": 40997,\n  \"deborah</w>\": 22150,\n  \"debra</w>\": 33233,\n  \"debris</w>\": 19208,\n  \"debt</w>\": 8932,\n  \"debts</w>\": 38770,\n  \"debu\": 9790,\n  \"debun\": 33123,\n  \"debut\": 42608,\n  \"debut</w>\": 4085,\n  \"debuted</w>\": 25215,\n  \"debuting</w>\": 34817,\n  \"debuts</w>\": 17044,\n  \"dec\": 3063,\n  \"dec</w>\": 4628,\n  \"deca</w>\": 33428,\n  \"decad\": 29914,\n  \"decade</w>\": 11099,\n  \"decadent</w>\": 41716,\n  \"decades</w>\": 10488,\n  \"decal</w>\": 26678,\n  \"decals</w>\": 37606,\n  \"decan\": 40677,\n  \"decat\": 35334,\n  \"decath\": 47455,\n  \"decatur</w>\": 38540,\n  \"decay</w>\": 22703,\n  \"dece\": 3534,\n  \"deceased</w>\": 30035,\n  \"december</w>\": 3864,\n  \"decent</w>\": 10698,\n  \"decentr\": 28960,\n  \"decentralized</w>\": 38485,\n  \"decep\": 33529,\n  \"deception</w>\": 33046,\n  \"deci\": 2262,\n  \"decide</w>\": 8447,\n  \"decided</w>\": 4939,\n  \"decides</w>\": 17269,\n  \"deciding</w>\": 22513,\n  \"decision</w>\": 5575,\n  \"decisions</w>\": 9903,\n  \"decisive</w>\": 28690,\n  \"deck\": 24885,\n  \"deck</w>\": 6943,\n  \"decked</w>\": 39096,\n  \"decker</w>\": 21449,\n  \"decks</w>\": 23968,\n  \"decl\": 7091,\n  \"decla\": 10739,\n  \"declan</w>\": 42341,\n  \"declar\": 18040,\n  \"declaration</w>\": 19714,\n  \"declare</w>\": 19856,\n  \"declared</w>\": 13845,\n  \"declares</w>\": 23641,\n  \"declaring</w>\": 33273,\n  \"decline</w>\": 15084,\n  \"declined</w>\": 28911,\n  \"declines</w>\": 40478,\n  \"declining</w>\": 29221,\n  \"deco\": 26412,\n  \"deco</w>\": 16422,\n  \"decor\": 5148,\n  \"decor</w>\": 6928,\n  \"decorate</w>\": 23651,\n  \"decorated</w>\": 15917,\n  \"decorating</w>\": 16968,\n  \"decoration</w>\": 16029,\n  \"decorations</w>\": 19158,\n  \"decorative</w>\": 19289,\n  \"decre\": 12284,\n  \"decrease</w>\": 24703,\n  \"decreased</w>\": 33913,\n  \"decreasing</w>\": 43763,\n  \"decree</w>\": 43327,\n  \"ded\": 16744,\n  \"ded</w>\": 1241,\n  \"dedic\": 4701,\n  \"dedicate</w>\": 27610,\n  \"dedicated</w>\": 6770,\n  \"dedication</w>\": 10188,\n  \"dedly</w>\": 36204,\n  \"deduc\": 22799,\n  \"dee\": 5268,\n  \"dee</w>\": 6705,\n  \"deed</w>\": 30260,\n  \"deeds</w>\": 24516,\n  \"deejay\": 48304,\n  \"deejay</w>\": 44511,\n  \"deemed</w>\": 28102,\n  \"deen\": 26456,\n  \"deen</w>\": 12912,\n  \"deep\": 5462,\n  \"deep</w>\": 3383,\n  \"deepak</w>\": 45528,\n  \"deeper</w>\": 15224,\n  \"deepest</w>\": 22245,\n  \"deephouse</w>\": 35684,\n  \"deepi\": 19371,\n  \"deepika</w>\": 34120,\n  \"deepikap\": 29903,\n  \"deepikapadukone</w>\": 30646,\n  \"deeplear\": 22181,\n  \"deeplearning</w>\": 24362,\n  \"deeply</w>\": 11449,\n  \"deer\": 19454,\n  \"deer</w>\": 8700,\n  \"deere</w>\": 32901,\n  \"dees</w>\": 12547,\n  \"deets</w>\": 35537,\n  \"def\": 2044,\n  \"def</w>\": 11649,\n  \"defam\": 35670,\n  \"defamation</w>\": 42741,\n  \"default</w>\": 21650,\n  \"defe\": 4148,\n  \"defeat</w>\": 8477,\n  \"defeated</w>\": 8927,\n  \"defeating</w>\": 22594,\n  \"defeats</w>\": 16317,\n  \"defect</w>\": 44013,\n  \"defects</w>\": 37485,\n  \"defen\": 3619,\n  \"defence\": 30307,\n  \"defence</w>\": 9659,\n  \"defend\": 21970,\n  \"defend</w>\": 11397,\n  \"defended</w>\": 27161,\n  \"defender</w>\": 10618,\n  \"defenders</w>\": 20063,\n  \"defending</w>\": 13098,\n  \"defends</w>\": 20134,\n  \"defense\": 45875,\n  \"defense</w>\": 6021,\n  \"defenseman</w>\": 43714,\n  \"defenses</w>\": 49198,\n  \"defensive</w>\": 10824,\n  \"defi\": 17244,\n  \"defiance</w>\": 36186,\n  \"defiant</w>\": 47597,\n  \"defibrill\": 47684,\n  \"defic\": 18022,\n  \"defici\": 23387,\n  \"deficiency</w>\": 30685,\n  \"deficit</w>\": 20156,\n  \"defin\": 3188,\n  \"define</w>\": 14919,\n  \"defined</w>\": 15278,\n  \"defines</w>\": 28218,\n  \"defining</w>\": 20504,\n  \"definite</w>\": 40793,\n  \"definitely</w>\": 4824,\n  \"definition</w>\": 11405,\n  \"definitive</w>\": 25298,\n  \"defl\": 31467,\n  \"deforestation</w>\": 41330,\n  \"defstar</w>\": 36427,\n  \"defy</w>\": 39148,\n  \"defying</w>\": 38496,\n  \"deg</w>\": 38498,\n  \"degra\": 28939,\n  \"degradation</w>\": 44468,\n  \"degre\": 4653,\n  \"degree</w>\": 7119,\n  \"degrees</w>\": 8000,\n  \"deh</w>\": 35582,\n  \"dei\": 33833,\n  \"dei</w>\": 23279,\n  \"deir\": 42948,\n  \"deity</w>\": 42574,\n  \"deja</w>\": 46902,\n  \"dek</w>\": 23901,\n  \"dekalb</w>\": 37775,\n  \"del\": 1233,\n  \"del</w>\": 2003,\n  \"dela</w>\": 37986,\n  \"delaney</w>\": 31528,\n  \"delav\": 23706,\n  \"delavin\": 40477,\n  \"delavin</w>\": 40776,\n  \"delavinkisses</w>\": 40631,\n  \"delaware</w>\": 17547,\n  \"delay\": 12955,\n  \"delay</w>\": 10934,\n  \"delayed</w>\": 14567,\n  \"delaying</w>\": 43781,\n  \"delays</w>\": 11232,\n  \"dele\": 7922,\n  \"dele</w>\": 33431,\n  \"delec\": 38615,\n  \"delectable</w>\": 45500,\n  \"deleg\": 8046,\n  \"delegate</w>\": 27259,\n  \"delegates</w>\": 14623,\n  \"delegation</w>\": 14632,\n  \"delete</w>\": 19204,\n  \"deleted</w>\": 16588,\n  \"deleting</w>\": 41857,\n  \"delft</w>\": 42749,\n  \"delgado</w>\": 49182,\n  \"delhi\": 26723,\n  \"delhi</w>\": 5717,\n  \"deli\": 1932,\n  \"deli</w>\": 18601,\n  \"delia</w>\": 33193,\n  \"deliber\": 18316,\n  \"deliberate</w>\": 38271,\n  \"deliberately</w>\": 35163,\n  \"delic\": 13366,\n  \"delicacy</w>\": 49181,\n  \"delicate</w>\": 18768,\n  \"delici\": 19993,\n  \"delicious</w>\": 3959,\n  \"deliciously</w>\": 39589,\n  \"deliciousness</w>\": 42819,\n  \"delight\": 46165,\n  \"delight</w>\": 13073,\n  \"delighted</w>\": 5943,\n  \"delightful</w>\": 15513,\n  \"delights</w>\": 25330,\n  \"deline</w>\": 18797,\n  \"delines</w>\": 13562,\n  \"delish</w>\": 25093,\n  \"deliver\": 19561,\n  \"deliver</w>\": 7396,\n  \"delivered</w>\": 7278,\n  \"deliveries</w>\": 29336,\n  \"delivering</w>\": 9943,\n  \"delivers</w>\": 11753,\n  \"delivery</w>\": 5619,\n  \"dell\": 24381,\n  \"dell</w>\": 10242,\n  \"della</w>\": 22986,\n  \"delle</w>\": 35963,\n  \"deloit\": 29428,\n  \"deloitte</w>\": 38667,\n  \"dels</w>\": 48636,\n  \"delta\": 32250,\n  \"delta</w>\": 8768,\n  \"delu\": 18779,\n  \"delusional</w>\": 48059,\n  \"delux\": 13709,\n  \"deluxe</w>\": 14056,\n  \"delve</w>\": 46008,\n  \"dely</w>\": 15040,\n  \"dem\": 3251,\n  \"dem</w>\": 7825,\n  \"dema\": 40268,\n  \"dema</w>\": 45046,\n  \"deman</w>\": 48366,\n  \"demand\": 13072,\n  \"demand</w>\": 5650,\n  \"demanded</w>\": 33699,\n  \"demanding</w>\": 17099,\n  \"demands</w>\": 14241,\n  \"demar</w>\": 46566,\n  \"demarcus</w>\": 47873,\n  \"demb\": 35930,\n  \"demdebate</w>\": 43973,\n  \"deme\": 25143,\n  \"demean\": 37376,\n  \"demen\": 12604,\n  \"dementi\": 46028,\n  \"dementia</w>\": 14047,\n  \"demetri\": 39553,\n  \"demi\": 32879,\n  \"demi</w>\": 14480,\n  \"demise</w>\": 28756,\n  \"demo\": 2930,\n  \"demo</w>\": 7380,\n  \"democr\": 3573,\n  \"democracy</w>\": 7758,\n  \"democrat</w>\": 15431,\n  \"democratic</w>\": 9149,\n  \"democrats</w>\": 8865,\n  \"demographic</w>\": 31308,\n  \"demol\": 19382,\n  \"demolished</w>\": 26537,\n  \"demolition</w>\": 22237,\n  \"demon\": 5635,\n  \"demon</w>\": 12085,\n  \"demonetisation</w>\": 41338,\n  \"demonic</w>\": 46920,\n  \"demons</w>\": 18388,\n  \"demonstr\": 8579,\n  \"demonstrate</w>\": 22231,\n  \"demonstrated</w>\": 29477,\n  \"demonstrates</w>\": 24806,\n  \"demonstrating</w>\": 22107,\n  \"demonstration</w>\": 16722,\n  \"demonstrations</w>\": 33964,\n  \"demonstrators</w>\": 46450,\n  \"demos</w>\": 19304,\n  \"demp\": 22490,\n  \"dempsey</w>\": 30188,\n  \"dems</w>\": 10989,\n  \"demsin\": 42664,\n  \"demsinphilly</w>\": 43091,\n  \"den\": 1177,\n  \"den</w>\": 1181,\n  \"dena</w>\": 32431,\n  \"denali</w>\": 48076,\n  \"dence</w>\": 3370,\n  \"dency</w>\": 11659,\n  \"dend\": 37447,\n  \"dends</w>\": 43985,\n  \"dene</w>\": 45128,\n  \"dened</w>\": 19571,\n  \"deng\": 43098,\n  \"deng</w>\": 41788,\n  \"dengue</w>\": 41932,\n  \"denham</w>\": 39180,\n  \"deni\": 21995,\n  \"denial</w>\": 25716,\n  \"denied</w>\": 15780,\n  \"denies</w>\": 19565,\n  \"denim</w>\": 13606,\n  \"denis\": 47630,\n  \"denis</w>\": 18750,\n  \"denise\": 45900,\n  \"denise</w>\": 20899,\n  \"denmark</w>\": 13268,\n  \"dennis\": 32738,\n  \"dennis</w>\": 10534,\n  \"denny</w>\": 26808,\n  \"denomin\": 41016,\n  \"dens</w>\": 16533,\n  \"dense</w>\": 19353,\n  \"density</w>\": 22431,\n  \"dent\": 3593,\n  \"dent</w>\": 1258,\n  \"dental\": 24635,\n  \"dental</w>\": 8382,\n  \"dentally</w>\": 10346,\n  \"dented</w>\": 21923,\n  \"denti\": 4418,\n  \"dential</w>\": 5459,\n  \"dentist</w>\": 17816,\n  \"dentistry</w>\": 25754,\n  \"dently</w>\": 28817,\n  \"denton</w>\": 23567,\n  \"dents</w>\": 1517,\n  \"denver\": 27847,\n  \"denver</w>\": 8569,\n  \"deny</w>\": 18679,\n  \"denying</w>\": 32771,\n  \"denzel</w>\": 42503,\n  \"deo\": 26406,\n  \"deo</w>\": 12121,\n  \"deodor\": 47639,\n  \"deol</w>\": 41902,\n  \"deon\": 31466,\n  \"deon</w>\": 16079,\n  \"dep\": 6079,\n  \"dep</w>\": 24370,\n  \"depar\": 10794,\n  \"depart\": 5343,\n  \"depart</w>\": 30649,\n  \"departed</w>\": 32541,\n  \"departing</w>\": 26902,\n  \"department</w>\": 5744,\n  \"departments</w>\": 29523,\n  \"departs</w>\": 38998,\n  \"departure</w>\": 17850,\n  \"depe\": 36118,\n  \"depend\": 13894,\n  \"depend</w>\": 27371,\n  \"dependence</w>\": 40243,\n  \"dependent</w>\": 23280,\n  \"depending</w>\": 23673,\n  \"depends</w>\": 20497,\n  \"depic\": 11307,\n  \"depicted</w>\": 34637,\n  \"depicting</w>\": 24970,\n  \"depiction</w>\": 31071,\n  \"depicts</w>\": 29340,\n  \"deple\": 38504,\n  \"deplo\": 9356,\n  \"deplor\": 39232,\n  \"deploy</w>\": 26944,\n  \"deployed</w>\": 20009,\n  \"deploying</w>\": 42212,\n  \"deployment</w>\": 20183,\n  \"depo\": 14276,\n  \"depor\": 36110,\n  \"deport\": 23389,\n  \"deportation</w>\": 36617,\n  \"deported</w>\": 39320,\n  \"deportes</w>\": 47878,\n  \"depos\": 21266,\n  \"deposit</w>\": 16775,\n  \"deposits</w>\": 30740,\n  \"depot</w>\": 12589,\n  \"depp</w>\": 24941,\n  \"depre\": 7107,\n  \"depress\": 38869,\n  \"depressed</w>\": 23269,\n  \"depressing</w>\": 29235,\n  \"depression</w>\": 10023,\n  \"depri\": 28587,\n  \"depriv\": 45809,\n  \"deprivation</w>\": 47810,\n  \"deprived</w>\": 39140,\n  \"dept</w>\": 9201,\n  \"depth</w>\": 10350,\n  \"depths</w>\": 28855,\n  \"depu\": 6912,\n  \"deputies</w>\": 24914,\n  \"deputy</w>\": 7932,\n  \"der\": 839,\n  \"der</w>\": 801,\n  \"dera</w>\": 20696,\n  \"derail\": 48502,\n  \"derby\": 13904,\n  \"derby</w>\": 7177,\n  \"derbyshire</w>\": 22147,\n  \"derdale</w>\": 21513,\n  \"dere\": 5701,\n  \"dere</w>\": 44194,\n  \"dered</w>\": 3776,\n  \"derek\": 22461,\n  \"derek</w>\": 11205,\n  \"derel\": 46728,\n  \"derer</w>\": 11289,\n  \"derers</w>\": 20882,\n  \"deri\": 34573,\n  \"derick</w>\": 33908,\n  \"dering</w>\": 6076,\n  \"deriv\": 33458,\n  \"derived</w>\": 26461,\n  \"derland</w>\": 35488,\n  \"derman</w>\": 29740,\n  \"dermatology</w>\": 48051,\n  \"dern</w>\": 30086,\n  \"dero\": 37203,\n  \"dero</w>\": 34026,\n  \"derrick</w>\": 21798,\n  \"derry\": 45777,\n  \"derry</w>\": 20535,\n  \"ders\": 37307,\n  \"ders</w>\": 1923,\n  \"derson</w>\": 12677,\n  \"dery</w>\": 17172,\n  \"des\": 6797,\n  \"des</w>\": 1437,\n  \"desai</w>\": 35316,\n  \"desc\": 13866,\n  \"descen\": 32318,\n  \"descend\": 26004,\n  \"descend</w>\": 46241,\n  \"descendants</w>\": 36323,\n  \"descending</w>\": 36620,\n  \"descent</w>\": 19375,\n  \"desch\": 49209,\n  \"descri\": 4637,\n  \"describe</w>\": 10967,\n  \"described</w>\": 14671,\n  \"describes</w>\": 13678,\n  \"describing</w>\": 24239,\n  \"descrip\": 41832,\n  \"description</w>\": 13951,\n  \"descriptions</w>\": 40653,\n  \"desde</w>\": 42218,\n  \"dese\": 27195,\n  \"deser\": 3659,\n  \"desert\": 45776,\n  \"desert</w>\": 7301,\n  \"deserted</w>\": 41560,\n  \"deserve</w>\": 7043,\n  \"deserved</w>\": 10061,\n  \"deserves</w>\": 9079,\n  \"deserving</w>\": 26615,\n  \"desh\": 25320,\n  \"desh</w>\": 7448,\n  \"deshi</w>\": 42769,\n  \"desi\": 6772,\n  \"desi</w>\": 26635,\n  \"desig\": 1250,\n  \"design\": 8359,\n  \"design</w>\": 1681,\n  \"designated</w>\": 24119,\n  \"designation</w>\": 41155,\n  \"designed</w>\": 4486,\n  \"designer\": 35640,\n  \"designer</w>\": 5728,\n  \"designers</w>\": 12720,\n  \"designing</w>\": 13467,\n  \"designs</w>\": 6747,\n  \"designthinking</w>\": 32450,\n  \"desirable</w>\": 32368,\n  \"desire</w>\": 11858,\n  \"desired</w>\": 28631,\n  \"desires</w>\": 27598,\n  \"desk\": 11937,\n  \"desk</w>\": 6550,\n  \"desks</w>\": 41014,\n  \"desktop</w>\": 14345,\n  \"desmond</w>\": 27821,\n  \"desol\": 41258,\n  \"desp\": 3642,\n  \"despair</w>\": 28097,\n  \"desper\": 10144,\n  \"desperate</w>\": 15072,\n  \"desperately</w>\": 21993,\n  \"despic\": 32442,\n  \"despicable</w>\": 37158,\n  \"despite</w>\": 5325,\n  \"dess\": 7096,\n  \"dess</w>\": 10001,\n  \"dessert</w>\": 9753,\n  \"desserts</w>\": 22948,\n  \"desses</w>\": 43913,\n  \"dest\": 6540,\n  \"dest</w>\": 4549,\n  \"destin\": 4934,\n  \"destination\": 32191,\n  \"destination</w>\": 9179,\n  \"destinations</w>\": 16981,\n  \"destined</w>\": 28525,\n  \"destiny\": 39875,\n  \"destiny</w>\": 10867,\n  \"destro\": 8287,\n  \"destroy\": 8308,\n  \"destroy</w>\": 11930,\n  \"destroyed</w>\": 9965,\n  \"destroyer</w>\": 25291,\n  \"destroying</w>\": 19613,\n  \"destroys</w>\": 27634,\n  \"destruc\": 22945,\n  \"destruction</w>\": 14281,\n  \"destructive</w>\": 29591,\n  \"det\": 28966,\n  \"det</w>\": 15366,\n  \"deta\": 1914,\n  \"detached</w>\": 26252,\n  \"detail</w>\": 7657,\n  \"detailed</w>\": 12609,\n  \"detailing</w>\": 23163,\n  \"details</w>\": 2353,\n  \"detained</w>\": 20260,\n  \"dete\": 5606,\n  \"detec\": 17991,\n  \"detect</w>\": 22744,\n  \"detected</w>\": 26988,\n  \"detecting</w>\": 41290,\n  \"detection</w>\": 16220,\n  \"detective</w>\": 13672,\n  \"detectives</w>\": 27994,\n  \"detector</w>\": 27689,\n  \"detectors</w>\": 45063,\n  \"detention</w>\": 16908,\n  \"deter\": 10742,\n  \"deter</w>\": 47458,\n  \"detergent</w>\": 46726,\n  \"deterior\": 28512,\n  \"determin\": 8325,\n  \"determination</w>\": 17410,\n  \"determine</w>\": 16768,\n  \"determined</w>\": 14371,\n  \"determines</w>\": 42192,\n  \"determining</w>\": 39884,\n  \"deth</w>\": 38375,\n  \"deto\": 39710,\n  \"deton\": 39335,\n  \"detour</w>\": 31211,\n  \"detox</w>\": 22459,\n  \"detri\": 47951,\n  \"detro\": 6210,\n  \"detroit\": 19404,\n  \"detroit</w>\": 7073,\n  \"detta</w>\": 45438,\n  \"dette</w>\": 35750,\n  \"deu\": 21457,\n  \"deuce</w>\": 45332,\n  \"deus</w>\": 37625,\n  \"deut\": 14970,\n  \"deutsch\": 30389,\n  \"deutsche</w>\": 32760,\n  \"deutschland</w>\": 36878,\n  \"deux</w>\": 47089,\n  \"dev\": 2797,\n  \"dev</w>\": 3670,\n  \"deva</w>\": 45179,\n  \"devan\": 37072,\n  \"devast\": 12913,\n  \"devastated</w>\": 29865,\n  \"devastating</w>\": 19280,\n  \"devastation</w>\": 42452,\n  \"devel\": 1820,\n  \"develop\": 1966,\n  \"develop</w>\": 7708,\n  \"developed</w>\": 8763,\n  \"developer</w>\": 10929,\n  \"developers</w>\": 13248,\n  \"developing</w>\": 8131,\n  \"development</w>\": 2855,\n  \"developmental</w>\": 29347,\n  \"developments</w>\": 17393,\n  \"develops</w>\": 29895,\n  \"deven\": 45537,\n  \"devgn</w>\": 29871,\n  \"devi\": 12926,\n  \"devi</w>\": 20717,\n  \"deviant\": 25593,\n  \"deviantart</w>\": 26046,\n  \"device</w>\": 8163,\n  \"devices</w>\": 9067,\n  \"devil\": 8894,\n  \"devil</w>\": 8043,\n  \"deville</w>\": 34329,\n  \"devils</w>\": 11683,\n  \"devin\": 31193,\n  \"devin</w>\": 20996,\n  \"devine</w>\": 33019,\n  \"devlin</w>\": 48040,\n  \"devo\": 11861,\n  \"devo</w>\": 43444,\n  \"devon\": 16205,\n  \"devon</w>\": 10046,\n  \"devops</w>\": 21504,\n  \"devos</w>\": 40646,\n  \"devote\": 37777,\n  \"devoted</w>\": 24561,\n  \"devotees</w>\": 39759,\n  \"devotion</w>\": 25821,\n  \"devotional</w>\": 35456,\n  \"devs</w>\": 27374,\n  \"dew\": 31952,\n  \"dew</w>\": 16358,\n  \"dewey</w>\": 40399,\n  \"dex\": 10030,\n  \"dex</w>\": 13790,\n  \"dexpo</w>\": 42502,\n  \"dexter\": 45049,\n  \"dexter</w>\": 22781,\n  \"dey</w>\": 11829,\n  \"dez\": 23190,\n  \"dez</w>\": 8122,\n  \"df\": 12908,\n  \"df</w>\": 10468,\n  \"dfc</w>\": 41903,\n  \"dfs</w>\": 32880,\n  \"dfw</w>\": 20439,\n  \"dg\": 2394,\n  \"dg</w>\": 9742,\n  \"dgate</w>\": 41684,\n  \"dge\": 4016,\n  \"dge</w>\": 1360,\n  \"dged</w>\": 11830,\n  \"dgeon</w>\": 45655,\n  \"dgers</w>\": 8733,\n  \"dges</w>\": 5432,\n  \"dging</w>\": 9565,\n  \"dh\": 6669,\n  \"dh</w>\": 9960,\n  \"dha\": 11629,\n  \"dha</w>\": 27377,\n  \"dhabi</w>\": 22349,\n  \"dhaka</w>\": 32877,\n  \"dham\": 29635,\n  \"dham</w>\": 30838,\n  \"dhan\": 12542,\n  \"dhan</w>\": 28569,\n  \"dhanush\": 26162,\n  \"dhanush</w>\": 36200,\n  \"dhanushkraja</w>\": 29266,\n  \"dhar\": 12397,\n  \"dharma</w>\": 30536,\n  \"dhary</w>\": 28706,\n  \"dhawan</w>\": 44699,\n  \"dhe\": 29706,\n  \"dheim</w>\": 44280,\n  \"dhi\": 31553,\n  \"dhi</w>\": 26166,\n  \"dho\": 37834,\n  \"dhoni</w>\": 25698,\n  \"dhru\": 40257,\n  \"dhry</w>\": 39960,\n  \"dhs</w>\": 26849,\n  \"dhu\": 32387,\n  \"di\": 570,\n  \"di</w>\": 1618,\n  \"dia\": 7351,\n  \"dia</w>\": 3357,\n  \"diab\": 15954,\n  \"diabe\": 19167,\n  \"diabete\": 43826,\n  \"diabetes</w>\": 10319,\n  \"diabetic</w>\": 30230,\n  \"diablo</w>\": 23931,\n  \"diag\": 6851,\n  \"diagno\": 7736,\n  \"diagnose</w>\": 44429,\n  \"diagnosed</w>\": 16979,\n  \"diagnosis</w>\": 15715,\n  \"diagnostic</w>\": 26351,\n  \"diagnostics</w>\": 37723,\n  \"diagram</w>\": 22697,\n  \"dial\": 18416,\n  \"dial</w>\": 11381,\n  \"dialo\": 30709,\n  \"dialog</w>\": 48945,\n  \"dialogue</w>\": 11288,\n  \"dialogues</w>\": 40330,\n  \"dialysis</w>\": 44798,\n  \"diam\": 4347,\n  \"diameter</w>\": 27189,\n  \"diamon\": 8873,\n  \"diamond\": 18535,\n  \"diamond</w>\": 6235,\n  \"diamonds</w>\": 12687,\n  \"dian\": 16021,\n  \"dian</w>\": 4998,\n  \"diana</w>\": 12803,\n  \"diane</w>\": 15855,\n  \"dianne</w>\": 42299,\n  \"dians</w>\": 21041,\n  \"diaper</w>\": 34382,\n  \"diapers</w>\": 39659,\n  \"diar\": 25932,\n  \"diaries</w>\": 15541,\n  \"diary</w>\": 10380,\n  \"dias\": 22137,\n  \"dias</w>\": 29354,\n  \"diaspora</w>\": 28390,\n  \"diaz</w>\": 17688,\n  \"dic\": 1404,\n  \"dic</w>\": 6717,\n  \"dicap\": 30023,\n  \"dicaprio</w>\": 30755,\n  \"dice</w>\": 14406,\n  \"dick\": 14413,\n  \"dick</w>\": 9554,\n  \"dickens</w>\": 33421,\n  \"dict\": 45360,\n  \"dict</w>\": 15159,\n  \"dictat\": 26156,\n  \"dictator</w>\": 27399,\n  \"dictatorship</w>\": 37989,\n  \"dictionary</w>\": 19699,\n  \"did\": 1861,\n  \"did</w>\": 1335,\n  \"diddy</w>\": 33527,\n  \"didi</w>\": 34396,\n  \"didier</w>\": 45614,\n  \"didn</w>\": 2376,\n  \"didnt</w>\": 13057,\n  \"dido</w>\": 31725,\n  \"didyou\": 12295,\n  \"didyouknow</w>\": 12506,\n  \"die\": 3150,\n  \"die</w>\": 2082,\n  \"diec\": 27729,\n  \"diecast</w>\": 37936,\n  \"died</w>\": 3622,\n  \"diego\": 30940,\n  \"diego</w>\": 6306,\n  \"diem</w>\": 45571,\n  \"dience</w>\": 33686,\n  \"dient</w>\": 27231,\n  \"dier\": 29702,\n  \"dier</w>\": 16394,\n  \"dies\": 20104,\n  \"dies</w>\": 1862,\n  \"diesel\": 46312,\n  \"diesel</w>\": 10591,\n  \"diest</w>\": 45739,\n  \"diet\": 21295,\n  \"diet</w>\": 6582,\n  \"dietary</w>\": 29009,\n  \"dietrich</w>\": 47005,\n  \"diets</w>\": 35173,\n  \"dif\": 18656,\n  \"dif</w>\": 48731,\n  \"diff\": 44073,\n  \"diff</w>\": 20331,\n  \"diffe\": 1967,\n  \"differ</w>\": 34620,\n  \"differen\": 14903,\n  \"difference</w>\": 4731,\n  \"differences</w>\": 14003,\n  \"different</w>\": 2731,\n  \"differenti\": 21729,\n  \"differential</w>\": 34027,\n  \"differentiate</w>\": 49032,\n  \"differently</w>\": 18325,\n  \"diffic\": 6140,\n  \"difficult</w>\": 7405,\n  \"difficulties</w>\": 23468,\n  \"difficulty</w>\": 25245,\n  \"diffu\": 31603,\n  \"diffuser</w>\": 49400,\n  \"dig\": 1831,\n  \"dig</w>\": 9887,\n  \"dige\": 17820,\n  \"digest</w>\": 20413,\n  \"digestion</w>\": 40533,\n  \"digestive</w>\": 32304,\n  \"digg\": 43240,\n  \"digger</w>\": 35919,\n  \"diggin</w>\": 48466,\n  \"digging</w>\": 14971,\n  \"digi\": 15627,\n  \"digi</w>\": 39361,\n  \"digimon</w>\": 44181,\n  \"digit\": 14899,\n  \"digit</w>\": 27472,\n  \"digital\": 4704,\n  \"digital</w>\": 2794,\n  \"digitalart</w>\": 16987,\n  \"digitalhealth</w>\": 32190,\n  \"digitalindia</w>\": 46630,\n  \"digitally</w>\": 27543,\n  \"digitalmarketing</w>\": 15299,\n  \"digitaltransformation</w>\": 20047,\n  \"digiti\": 25935,\n  \"digits</w>\": 31710,\n  \"digni\": 45532,\n  \"dignit\": 39497,\n  \"dignity</w>\": 17744,\n  \"digo</w>\": 35701,\n  \"digs</w>\": 26877,\n  \"dih</w>\": 43089,\n  \"dii</w>\": 32755,\n  \"dijk</w>\": 44444,\n  \"dik\": 38854,\n  \"dik</w>\": 37747,\n  \"dike</w>\": 42683,\n  \"dil\": 7643,\n  \"dil</w>\": 17942,\n  \"dile\": 25428,\n  \"dilemma</w>\": 29787,\n  \"dilig\": 30664,\n  \"dill\": 12318,\n  \"dill</w>\": 27206,\n  \"dillon</w>\": 21056,\n  \"dilu\": 45242,\n  \"dim\": 19576,\n  \"dim</w>\": 17523,\n  \"dime</w>\": 24443,\n  \"dimen\": 10935,\n  \"dimension</w>\": 20479,\n  \"dimensional</w>\": 25252,\n  \"dimensions</w>\": 25086,\n  \"diment</w>\": 43500,\n  \"dimes</w>\": 44888,\n  \"dimini\": 37459,\n  \"dimit\": 22250,\n  \"dimitri</w>\": 48840,\n  \"dimp\": 38853,\n  \"din\": 1462,\n  \"din</w>\": 5673,\n  \"dina</w>\": 36815,\n  \"dinah</w>\": 30903,\n  \"dine\": 20951,\n  \"dine</w>\": 12989,\n  \"diner</w>\": 16963,\n  \"dinesh</w>\": 48341,\n  \"ding\": 7545,\n  \"ding</w>\": 796,\n  \"dinger</w>\": 45580,\n  \"dingh\": 48064,\n  \"dings</w>\": 5473,\n  \"dington</w>\": 24804,\n  \"dinho</w>\": 47370,\n  \"dini</w>\": 20196,\n  \"dining</w>\": 8658,\n  \"dinner\": 27548,\n  \"dinner</w>\": 2571,\n  \"dinners</w>\": 33570,\n  \"dino\": 9692,\n  \"dino</w>\": 14077,\n  \"dinosa\": 18955,\n  \"dinosaur</w>\": 15095,\n  \"dinosaurs</w>\": 20387,\n  \"dio\": 3779,\n  \"dio</w>\": 1521,\n  \"dioce\": 20763,\n  \"diocese</w>\": 27091,\n  \"dion\": 42899,\n  \"dion</w>\": 16250,\n  \"dior</w>\": 23655,\n  \"dios</w>\": 37563,\n  \"dious</w>\": 27417,\n  \"dioxide</w>\": 38102,\n  \"dip\": 19918,\n  \"dip</w>\": 11343,\n  \"dipl\": 8490,\n  \"diplo</w>\": 38115,\n  \"diplom\": 11169,\n  \"diploma</w>\": 21251,\n  \"diplomacy</w>\": 23798,\n  \"diplomat</w>\": 32828,\n  \"diplomatic</w>\": 23782,\n  \"diplomats</w>\": 44126,\n  \"dipped</w>\": 30610,\n  \"dipper</w>\": 49317,\n  \"dipping</w>\": 33544,\n  \"dips</w>\": 37522,\n  \"dir\": 4251,\n  \"dir</w>\": 8478,\n  \"dire\": 38355,\n  \"dire</w>\": 25664,\n  \"direc\": 1534,\n  \"direct\": 43224,\n  \"direct</w>\": 6016,\n  \"directed</w>\": 8392,\n  \"directing</w>\": 21817,\n  \"direction\": 15923,\n  \"direction</w>\": 5407,\n  \"directional</w>\": 38687,\n  \"directioner</w>\": 48042,\n  \"directioners</w>\": 22055,\n  \"directions</w>\": 16440,\n  \"directive</w>\": 40630,\n  \"directly</w>\": 9701,\n  \"director\": 20337,\n  \"director</w>\": 2681,\n  \"directorial</w>\": 45327,\n  \"directors</w>\": 11940,\n  \"directory</w>\": 25272,\n  \"directs</w>\": 34349,\n  \"directv</w>\": 48652,\n  \"dirk</w>\": 28171,\n  \"dirt\": 31415,\n  \"dirt</w>\": 11795,\n  \"dirty\": 20127,\n  \"dirty</w>\": 7615,\n  \"dis\": 1518,\n  \"dis</w>\": 6112,\n  \"disa\": 3882,\n  \"disab\": 47380,\n  \"disabilities</w>\": 17350,\n  \"disability\": 48986,\n  \"disability</w>\": 13261,\n  \"disabled</w>\": 13613,\n  \"disadvantaged</w>\": 40577,\n  \"disagree</w>\": 23199,\n  \"disapp\": 5384,\n  \"disappear\": 21148,\n  \"disappear</w>\": 25173,\n  \"disappearance</w>\": 35929,\n  \"disappeared</w>\": 23139,\n  \"disappearing</w>\": 35819,\n  \"disappears</w>\": 44406,\n  \"disappo\": 7605,\n  \"disappoint</w>\": 25446,\n  \"disappointed</w>\": 13794,\n  \"disappointing</w>\": 21941,\n  \"disappointment</w>\": 23884,\n  \"disappoints</w>\": 48545,\n  \"disappro\": 48276,\n  \"disar\": 42971,\n  \"disaster</w>\": 9072,\n  \"disasters</w>\": 26976,\n  \"disastrous</w>\": 35790,\n  \"disc\": 1472,\n  \"disc</w>\": 10712,\n  \"discar\": 40532,\n  \"discarded</w>\": 45197,\n  \"discer\": 49140,\n  \"dischar\": 22671,\n  \"discharge</w>\": 32485,\n  \"disci\": 9559,\n  \"discip\": 38951,\n  \"discipl\": 10467,\n  \"disciples</w>\": 39366,\n  \"disciplinary</w>\": 20232,\n  \"discipline</w>\": 18903,\n  \"disciplines</w>\": 42032,\n  \"discla\": 40248,\n  \"disclaimer</w>\": 46465,\n  \"disclo\": 17481,\n  \"disclose</w>\": 46379,\n  \"disclosed</w>\": 30905,\n  \"disclosure</w>\": 26502,\n  \"disco\": 2475,\n  \"disco</w>\": 11964,\n  \"discography</w>\": 47545,\n  \"discomfort</w>\": 48054,\n  \"discord</w>\": 23582,\n  \"discoun\": 18515,\n  \"discount</w>\": 7638,\n  \"discounted</w>\": 20993,\n  \"discounts</w>\": 18186,\n  \"discoura\": 45850,\n  \"discourse</w>\": 29441,\n  \"discover\": 10539,\n  \"discover</w>\": 4834,\n  \"discovered</w>\": 6986,\n  \"discoveries</w>\": 29308,\n  \"discovering</w>\": 17967,\n  \"discovers</w>\": 29719,\n  \"discovery\": 40491,\n  \"discovery</w>\": 8027,\n  \"discre\": 20616,\n  \"discrimin\": 11721,\n  \"discrimination</w>\": 14775,\n  \"discs</w>\": 29270,\n  \"discu\": 1984,\n  \"discus</w>\": 41828,\n  \"discuss</w>\": 4312,\n  \"discussed</w>\": 11300,\n  \"discusses</w>\": 8116,\n  \"discussing</w>\": 5900,\n  \"discussion</w>\": 5060,\n  \"discussions</w>\": 13806,\n  \"dise\": 4262,\n  \"disease</w>\": 5336,\n  \"diseases</w>\": 12035,\n  \"disen\": 46468,\n  \"disgrace</w>\": 29877,\n  \"disgraceful</w>\": 44146,\n  \"disgu\": 9793,\n  \"disguise</w>\": 27803,\n  \"disguised</w>\": 37149,\n  \"disgusted</w>\": 41977,\n  \"disgusting</w>\": 16218,\n  \"dish\": 11039,\n  \"dish</w>\": 4531,\n  \"disha</w>\": 42498,\n  \"dishes</w>\": 11412,\n  \"dishon\": 30777,\n  \"dishu</w>\": 44728,\n  \"dishwasher</w>\": 40524,\n  \"disin\": 19484,\n  \"disinfe\": 48050,\n  \"disintegr\": 49275,\n  \"disk</w>\": 17970,\n  \"dislike</w>\": 30796,\n  \"dism\": 30836,\n  \"dism</w>\": 38821,\n  \"dismant\": 36557,\n  \"dismiss</w>\": 43287,\n  \"dismissal</w>\": 42068,\n  \"dismissed</w>\": 30087,\n  \"dismisses</w>\": 45238,\n  \"disney\": 6729,\n  \"disney</w>\": 4696,\n  \"disneyland\": 39481,\n  \"disneyland</w>\": 13661,\n  \"disneyworld</w>\": 28469,\n  \"diso\": 26305,\n  \"disobe\": 42841,\n  \"dison</w>\": 19310,\n  \"disorder</w>\": 12635,\n  \"disorders</w>\": 17114,\n  \"disp\": 11073,\n  \"dispar\": 24633,\n  \"disparities</w>\": 45122,\n  \"dispat\": 28652,\n  \"dispatch</w>\": 26306,\n  \"dispen\": 19077,\n  \"dispenser</w>\": 40116,\n  \"disper\": 34499,\n  \"displa\": 9326,\n  \"displac\": 17718,\n  \"displaced</w>\": 22817,\n  \"displacement</w>\": 37931,\n  \"display</w>\": 4456,\n  \"displayed</w>\": 18967,\n  \"displaying</w>\": 26468,\n  \"displays</w>\": 15648,\n  \"dispo\": 13651,\n  \"dispon\": 38872,\n  \"disponible</w>\": 46130,\n  \"dispos\": 45177,\n  \"disposable</w>\": 37275,\n  \"disposal</w>\": 28231,\n  \"dispro\": 32927,\n  \"dispropor\": 40354,\n  \"disproportion\": 45492,\n  \"disregard</w>\": 43869,\n  \"disrespect</w>\": 34055,\n  \"disrespectful</w>\": 41723,\n  \"disru\": 13763,\n  \"disrup\": 14641,\n  \"disrupt</w>\": 25214,\n  \"disrupted</w>\": 46674,\n  \"disrupting</w>\": 42419,\n  \"disruption</w>\": 19635,\n  \"disruptive</w>\": 31554,\n  \"diss\": 10766,\n  \"diss</w>\": 35688,\n  \"dissec\": 43879,\n  \"dissemin\": 40463,\n  \"dissent</w>\": 45154,\n  \"disser\": 25560,\n  \"dissertation</w>\": 29448,\n  \"dissi\": 25088,\n  \"dissol\": 27398,\n  \"dissuper</w>\": 33461,\n  \"dist\": 5479,\n  \"dist</w>\": 12116,\n  \"distance</w>\": 7964,\n  \"distances</w>\": 37078,\n  \"distant</w>\": 18949,\n  \"distill\": 41586,\n  \"distilled</w>\": 49179,\n  \"distillery</w>\": 22200,\n  \"distin\": 11892,\n  \"distinct</w>\": 25056,\n  \"distinction</w>\": 28183,\n  \"distinctive</w>\": 25486,\n  \"distingui\": 15053,\n  \"distinguish</w>\": 45418,\n  \"distinguished</w>\": 16513,\n  \"distor\": 23781,\n  \"distortion</w>\": 43690,\n  \"distr\": 11885,\n  \"distract</w>\": 39309,\n  \"distracted</w>\": 24049,\n  \"distraction</w>\": 32039,\n  \"distress</w>\": 26866,\n  \"distressed</w>\": 37515,\n  \"distri\": 5987,\n  \"distribu\": 6138,\n  \"distribute</w>\": 32313,\n  \"distributed</w>\": 16419,\n  \"distributing</w>\": 35216,\n  \"distribution</w>\": 10484,\n  \"distributor</w>\": 28354,\n  \"distributors</w>\": 44240,\n  \"distric\": 3208,\n  \"district\": 46683,\n  \"district</w>\": 3506,\n  \"districts</w>\": 17565,\n  \"distur\": 11732,\n  \"disturb\": 33018,\n  \"disturb</w>\": 39449,\n  \"disturbance</w>\": 42416,\n  \"disturbed</w>\": 29967,\n  \"disturbing</w>\": 21476,\n  \"disupdates</w>\": 45667,\n  \"dit\": 5752,\n  \"dit</w>\": 2524,\n  \"dita</w>\": 47965,\n  \"ditch\": 43715,\n  \"ditch</w>\": 19291,\n  \"dited</w>\": 40392,\n  \"diti\": 2363,\n  \"dition\": 16452,\n  \"dition</w>\": 3015,\n  \"ditional</w>\": 4322,\n  \"ditions</w>\": 4503,\n  \"dito</w>\": 43705,\n  \"dits</w>\": 49374,\n  \"dity</w>\": 16436,\n  \"dium</w>\": 2903,\n  \"div\": 5293,\n  \"div</w>\": 14869,\n  \"diva</w>\": 13605,\n  \"divas</w>\": 23534,\n  \"dive\": 26042,\n  \"dive</w>\": 9058,\n  \"diver\": 13119,\n  \"diver</w>\": 22094,\n  \"divergence</w>\": 48735,\n  \"divergent</w>\": 36132,\n  \"divers\": 30241,\n  \"divers</w>\": 27038,\n  \"diverse</w>\": 11464,\n  \"diversi\": 24475,\n  \"diversion</w>\": 38457,\n  \"diversity\": 35634,\n  \"diversity</w>\": 6257,\n  \"diverted</w>\": 41049,\n  \"dives</w>\": 13893,\n  \"divi\": 8375,\n  \"divid\": 31337,\n  \"divide</w>\": 18842,\n  \"divided</w>\": 18689,\n  \"dividend</w>\": 32067,\n  \"dividends</w>\": 45146,\n  \"dividing</w>\": 45605,\n  \"divin\": 21838,\n  \"divine\": 46919,\n  \"divine</w>\": 10976,\n  \"diving</w>\": 9886,\n  \"divinity</w>\": 39754,\n  \"divisi\": 39196,\n  \"division</w>\": 5378,\n  \"divisional</w>\": 40912,\n  \"divisions</w>\": 33715,\n  \"divor\": 13543,\n  \"divorce</w>\": 17060,\n  \"divorced</w>\": 39437,\n  \"divya</w>\": 47767,\n  \"diwali</w>\": 18218,\n  \"dix\": 45838,\n  \"dix</w>\": 27620,\n  \"dixie</w>\": 24484,\n  \"dixit</w>\": 28279,\n  \"dixon</w>\": 16086,\n  \"diy\": 28472,\n  \"diy</w>\": 7845,\n  \"diya</w>\": 36459,\n  \"diz</w>\": 32740,\n  \"dized</w>\": 36232,\n  \"dizz\": 40239,\n  \"dizzy</w>\": 35464,\n  \"dj\": 3761,\n  \"dj</w>\": 3723,\n  \"djan\": 35338,\n  \"django</w>\": 46498,\n  \"dji\": 35284,\n  \"dji</w>\": 28379,\n  \"djing</w>\": 36113,\n  \"djo\": 19432,\n  \"djoker\": 42721,\n  \"djokernole</w>\": 42830,\n  \"djokovic</w>\": 27944,\n  \"djs</w>\": 18117,\n  \"dk\": 20702,\n  \"dk</w>\": 16196,\n  \"dl\": 12558,\n  \"dl</w>\": 9373,\n  \"dlc</w>\": 19079,\n  \"dle\": 11057,\n  \"dle</w>\": 3287,\n  \"dled</w>\": 23494,\n  \"dler</w>\": 40279,\n  \"dles</w>\": 7890,\n  \"dless</w>\": 14997,\n  \"dley</w>\": 12808,\n  \"dling</w>\": 18221,\n  \"dly</w>\": 3069,\n  \"dm\": 19070,\n  \"dm</w>\": 4667,\n  \"dma</w>\": 42903,\n  \"dman</w>\": 18826,\n  \"dmc</w>\": 28991,\n  \"dmit\": 31607,\n  \"dmitry</w>\": 48326,\n  \"dms</w>\": 19955,\n  \"dmv</w>\": 27508,\n  \"dmx</w>\": 45255,\n  \"dn\": 11552,\n  \"dn</w>\": 7459,\n  \"dna</w>\": 8790,\n  \"dnb</w>\": 35422,\n  \"dnc</w>\": 20237,\n  \"dnd</w>\": 11678,\n  \"dnr</w>\": 37051,\n  \"dns</w>\": 39245,\n  \"dnt</w>\": 26795,\n  \"do\": 639,\n  \"do</w>\": 818,\n  \"doa</w>\": 48332,\n  \"dob\": 29640,\n  \"doba</w>\": 35605,\n  \"dobbs</w>\": 43006,\n  \"dobson</w>\": 46888,\n  \"doc\": 3009,\n  \"doc</w>\": 7251,\n  \"doch</w>\": 25101,\n  \"dock\": 17311,\n  \"dock</w>\": 8997,\n  \"docked</w>\": 46784,\n  \"docker</w>\": 31152,\n  \"docking</w>\": 40845,\n  \"docks</w>\": 24091,\n  \"docs</w>\": 15157,\n  \"doctor\": 7872,\n  \"doctor</w>\": 5547,\n  \"doctoral</w>\": 23649,\n  \"doctorate</w>\": 39134,\n  \"doctors</w>\": 9705,\n  \"doctorwho</w>\": 12996,\n  \"doctr\": 28497,\n  \"doctrine</w>\": 35612,\n  \"docu\": 4433,\n  \"document\": 29293,\n  \"document</w>\": 15121,\n  \"documentaries</w>\": 44209,\n  \"documentary</w>\": 7881,\n  \"documentation</w>\": 31560,\n  \"documented</w>\": 22310,\n  \"documenting</w>\": 37876,\n  \"documents</w>\": 14105,\n  \"dod\": 13847,\n  \"dod</w>\": 30187,\n  \"dodd</w>\": 36748,\n  \"dodge\": 31263,\n  \"dodge</w>\": 12093,\n  \"dodgeball</w>\": 43244,\n  \"dodger</w>\": 31641,\n  \"dodgers</w>\": 12422,\n  \"dodgy</w>\": 37727,\n  \"doe</w>\": 13296,\n  \"does\": 2397,\n  \"does</w>\": 1897,\n  \"doesn</w>\": 2503,\n  \"doesnt</w>\": 17937,\n  \"dof\": 8277,\n  \"doff</w>\": 20193,\n  \"dofficial</w>\": 42516,\n  \"dog\": 4326,\n  \"dog</w>\": 1929,\n  \"dogcelebration</w>\": 41819,\n  \"dogday</w>\": 27475,\n  \"doge</w>\": 42187,\n  \"dogg</w>\": 20749,\n  \"doggie</w>\": 32237,\n  \"doggo</w>\": 42155,\n  \"doggy</w>\": 26359,\n  \"doglo\": 40733,\n  \"dogre\": 40030,\n  \"dogrescue</w>\": 44158,\n  \"dogs\": 42182,\n  \"dogs</w>\": 3255,\n  \"dogsoftwitter</w>\": 19415,\n  \"doh</w>\": 23581,\n  \"doha</w>\": 20908,\n  \"doherty</w>\": 31774,\n  \"doi</w>\": 36361,\n  \"doin</w>\": 15412,\n  \"doing\": 37408,\n  \"doing</w>\": 1960,\n  \"doit\": 32272,\n  \"doit</w>\": 28109,\n  \"doj</w>\": 25700,\n  \"dojo</w>\": 35901,\n  \"dok\": 40547,\n  \"dok</w>\": 41034,\n  \"doka</w>\": 46528,\n  \"dol\": 2287,\n  \"dol</w>\": 19170,\n  \"dola</w>\": 38005,\n  \"dolan</w>\": 27200,\n  \"dolby</w>\": 42414,\n  \"dolce\": 30033,\n  \"dolce</w>\": 30661,\n  \"dole</w>\": 41040,\n  \"doll\": 27031,\n  \"doll</w>\": 9286,\n  \"dollar\": 35092,\n  \"dollar</w>\": 7474,\n  \"dollars</w>\": 10669,\n  \"dolls</w>\": 15090,\n  \"dolly\": 43281,\n  \"dolly</w>\": 23821,\n  \"dolom\": 37137,\n  \"dolores</w>\": 40741,\n  \"dolph\": 8900,\n  \"dolph</w>\": 22257,\n  \"dolphin\": 42963,\n  \"dolphin</w>\": 16464,\n  \"dolphins</w>\": 14002,\n  \"dom\": 2164,\n  \"dom</w>\": 1919,\n  \"domain</w>\": 15492,\n  \"domaine</w>\": 48744,\n  \"domains</w>\": 36358,\n  \"dome\": 8515,\n  \"dome</w>\": 9827,\n  \"domen\": 37584,\n  \"domest\": 21936,\n  \"domestic\": 28189,\n  \"domestic</w>\": 9043,\n  \"domin\": 4361,\n  \"dominance</w>\": 30546,\n  \"dominant</w>\": 20565,\n  \"dominate</w>\": 21431,\n  \"dominated</w>\": 23048,\n  \"dominates</w>\": 34043,\n  \"dominating</w>\": 29303,\n  \"domination</w>\": 30919,\n  \"domingo</w>\": 24882,\n  \"dominic\": 39007,\n  \"dominic</w>\": 19095,\n  \"dominican</w>\": 22934,\n  \"dominion</w>\": 27155,\n  \"domino</w>\": 30752,\n  \"dominos</w>\": 39770,\n  \"domo</w>\": 44293,\n  \"doms</w>\": 30126,\n  \"don\": 1067,\n  \"don</w>\": 847,\n  \"dona</w>\": 26789,\n  \"donal\": 42375,\n  \"donald\": 5990,\n  \"donald</w>\": 4335,\n  \"donaldson</w>\": 37783,\n  \"donaldtrump</w>\": 6652,\n  \"donat\": 36384,\n  \"donate</w>\": 6429,\n  \"donated</w>\": 8705,\n  \"donates</w>\": 26960,\n  \"donating</w>\": 12621,\n  \"donation</w>\": 7924,\n  \"donations</w>\": 9928,\n  \"doncaster\": 38008,\n  \"doncaster</w>\": 25352,\n  \"doncasterisgreat</w>\": 47333,\n  \"done\": 5136,\n  \"done</w>\": 1700,\n  \"donegal</w>\": 24172,\n  \"donesia</w>\": 41281,\n  \"donet\": 33724,\n  \"donetsk</w>\": 33999,\n  \"dong\": 26242,\n  \"dong</w>\": 31478,\n  \"dongha\": 28365,\n  \"donghae</w>\": 28945,\n  \"donia</w>\": 24014,\n  \"donkey</w>\": 21415,\n  \"donkeys</w>\": 44644,\n  \"donna</w>\": 9158,\n  \"donne\": 30897,\n  \"donnein\": 38308,\n  \"donneinarte</w>\": 40193,\n  \"donnell</w>\": 35118,\n  \"donnelly</w>\": 39070,\n  \"donnie\": 47058,\n  \"donnie</w>\": 30609,\n  \"donny\": 37291,\n  \"donny</w>\": 32887,\n  \"dono\": 14840,\n  \"donor</w>\": 18013,\n  \"donors</w>\": 17887,\n  \"donovan</w>\": 21499,\n  \"dons</w>\": 22127,\n  \"dont\": 8094,\n  \"dont</w>\": 4632,\n  \"donut</w>\": 18471,\n  \"donuts</w>\": 13970,\n  \"doo\": 4543,\n  \"doo</w>\": 11643,\n  \"doodle</w>\": 9388,\n  \"doodled</w>\": 41030,\n  \"doodles</w>\": 22156,\n  \"doodling</w>\": 37548,\n  \"dooley</w>\": 47609,\n  \"doom\": 23263,\n  \"doom</w>\": 14344,\n  \"doomed</w>\": 33251,\n  \"doomsday</w>\": 41791,\n  \"doon</w>\": 36612,\n  \"doop</w>\": 33886,\n  \"door\": 7188,\n  \"door</w>\": 2489,\n  \"doors</w>\": 4228,\n  \"doorstep</w>\": 19533,\n  \"doorway</w>\": 46575,\n  \"dop\": 42381,\n  \"dop</w>\": 31722,\n  \"dope\": 42587,\n  \"dope</w>\": 10094,\n  \"doping</w>\": 30285,\n  \"dopp\": 21774,\n  \"doppelg\": 45216,\n  \"doppler</w>\": 42540,\n  \"dor\": 2766,\n  \"dor</w>\": 8695,\n  \"dora</w>\": 18104,\n  \"dorado</w>\": 32350,\n  \"dorchester</w>\": 32656,\n  \"dore</w>\": 39423,\n  \"dores</w>\": 34323,\n  \"dorf</w>\": 17296,\n  \"dori</w>\": 49270,\n  \"doria</w>\": 43186,\n  \"dorian</w>\": 44016,\n  \"doris</w>\": 24285,\n  \"dork</w>\": 36206,\n  \"dorm</w>\": 24263,\n  \"doro\": 15498,\n  \"doro</w>\": 37389,\n  \"dorothy</w>\": 20805,\n  \"dors</w>\": 31240,\n  \"dorset\": 42109,\n  \"dorset</w>\": 16047,\n  \"dorsey</w>\": 41607,\n  \"dortmund</w>\": 24290,\n  \"dory</w>\": 36135,\n  \"dos\": 44258,\n  \"dos</w>\": 5474,\n  \"dose</w>\": 11497,\n  \"doses</w>\": 37873,\n  \"dossier</w>\": 46042,\n  \"dost</w>\": 44222,\n  \"dot\": 7473,\n  \"dot</w>\": 7004,\n  \"dota</w>\": 23085,\n  \"dotcom</w>\": 12443,\n  \"dote</w>\": 31202,\n  \"dothis</w>\": 47864,\n  \"dotnet</w>\": 43124,\n  \"dotorg</w>\": 46587,\n  \"dots</w>\": 19019,\n  \"dotted</w>\": 47950,\n  \"dou\": 1756,\n  \"dou</w>\": 23608,\n  \"doub\": 19631,\n  \"double\": 13013,\n  \"double</w>\": 3200,\n  \"doubled</w>\": 24948,\n  \"doubleheader</w>\": 34668,\n  \"doubles</w>\": 12539,\n  \"doubling</w>\": 36850,\n  \"doubt\": 37071,\n  \"doubt</w>\": 8671,\n  \"doubts</w>\": 30894,\n  \"douche</w>\": 44292,\n  \"doug\": 20271,\n  \"doug</w>\": 10758,\n  \"dough\": 15785,\n  \"dough</w>\": 14983,\n  \"doughnut</w>\": 32555,\n  \"doughnuts</w>\": 31124,\n  \"dougie</w>\": 46317,\n  \"dougla\": 9140,\n  \"douglas</w>\": 10065,\n  \"douglass</w>\": 45692,\n  \"doun</w>\": 44785,\n  \"dov</w>\": 38856,\n  \"dova</w>\": 26551,\n  \"dove\": 27511,\n  \"dove</w>\": 18281,\n  \"dover\": 43019,\n  \"dover</w>\": 14683,\n  \"doves</w>\": 47067,\n  \"dow\": 8022,\n  \"dow</w>\": 10688,\n  \"dowell</w>\": 27344,\n  \"down\": 1833,\n  \"down</w>\": 1136,\n  \"downe</w>\": 46501,\n  \"downed</w>\": 35814,\n  \"downer</w>\": 42522,\n  \"downers</w>\": 43739,\n  \"downey</w>\": 29429,\n  \"downfall</w>\": 48702,\n  \"downhill</w>\": 27387,\n  \"downing</w>\": 28140,\n  \"download\": 35076,\n  \"download</w>\": 3794,\n  \"downloadable</w>\": 49105,\n  \"downloaded</w>\": 22961,\n  \"downloading</w>\": 30519,\n  \"downloads</w>\": 26481,\n  \"downpour</w>\": 39034,\n  \"downpours</w>\": 40160,\n  \"downs</w>\": 10706,\n  \"downside</w>\": 41937,\n  \"downstairs</w>\": 28174,\n  \"downstream</w>\": 43822,\n  \"downtime</w>\": 41964,\n  \"downton\": 45023,\n  \"downton</w>\": 42668,\n  \"downtown\": 18230,\n  \"downtown</w>\": 5061,\n  \"downward</w>\": 37430,\n  \"dowski</w>\": 43556,\n  \"dox\": 44786,\n  \"dox</w>\": 14510,\n  \"doyle</w>\": 17728,\n  \"doyou\": 27256,\n  \"doz</w>\": 31106,\n  \"dozen</w>\": 16401,\n  \"dozens</w>\": 17883,\n  \"dp\": 23820,\n  \"dp</w>\": 6465,\n  \"dprint</w>\": 46644,\n  \"dprinting</w>\": 16194,\n  \"dprk</w>\": 47920,\n  \"dps</w>\": 34288,\n  \"dq</w>\": 28741,\n  \"dr\": 1084,\n  \"dr</w>\": 1701,\n  \"dra\": 1114,\n  \"dra</w>\": 7402,\n  \"drac\": 20168,\n  \"dracing</w>\": 41253,\n  \"dracula</w>\": 25405,\n  \"draf\": 37426,\n  \"draft\": 30624,\n  \"draft</w>\": 5198,\n  \"drafted</w>\": 19129,\n  \"drafting</w>\": 33528,\n  \"drafts</w>\": 29194,\n  \"drag\": 8452,\n  \"drag</w>\": 12463,\n  \"dragged</w>\": 27884,\n  \"dragging</w>\": 37069,\n  \"dragon\": 9187,\n  \"dragon</w>\": 5471,\n  \"dragonball\": 40959,\n  \"dragoncon</w>\": 47802,\n  \"dragonfly</w>\": 32824,\n  \"dragons</w>\": 10203,\n  \"dragrace</w>\": 40762,\n  \"drags</w>\": 45368,\n  \"drain\": 23347,\n  \"drain</w>\": 19467,\n  \"drainage</w>\": 25953,\n  \"drained</w>\": 44630,\n  \"drains</w>\": 43638,\n  \"drainthe\": 47337,\n  \"drake\": 32504,\n  \"drake</w>\": 8958,\n  \"dral</w>\": 7503,\n  \"dram\": 6937,\n  \"dram</w>\": 32170,\n  \"drama</w>\": 5055,\n  \"dramas</w>\": 33467,\n  \"dramati\": 43512,\n  \"dramatic</w>\": 11240,\n  \"dramatically</w>\": 24495,\n  \"drank</w>\": 21712,\n  \"draped</w>\": 49113,\n  \"drastic</w>\": 43159,\n  \"drastically</w>\": 35478,\n  \"drau\": 18621,\n  \"draw\": 17675,\n  \"draw</w>\": 4001,\n  \"drawer</w>\": 23219,\n  \"drawers</w>\": 38975,\n  \"drawing\": 36996,\n  \"drawing</w>\": 3610,\n  \"drawings</w>\": 13397,\n  \"drawn</w>\": 8893,\n  \"draws</w>\": 12043,\n  \"dray\": 25562,\n  \"drayton</w>\": 49044,\n  \"drc</w>\": 21434,\n  \"dre\": 960,\n  \"dre</w>\": 14584,\n  \"dread\": 17412,\n  \"dread</w>\": 31403,\n  \"dreaded</w>\": 47227,\n  \"dreadful</w>\": 35846,\n  \"dreality</w>\": 48367,\n  \"dream\": 4595,\n  \"dream</w>\": 2984,\n  \"dreambig</w>\": 46495,\n  \"dreamcast</w>\": 47226,\n  \"dreamed</w>\": 27984,\n  \"dreamer</w>\": 25692,\n  \"dreamers</w>\": 27194,\n  \"dreaming</w>\": 11662,\n  \"dreamliner</w>\": 49143,\n  \"dreams</w>\": 4405,\n  \"dreamt</w>\": 43743,\n  \"dreamteam</w>\": 40090,\n  \"dreamy</w>\": 23517,\n  \"dred</w>\": 10903,\n  \"dredge</w>\": 48783,\n  \"dren\": 29068,\n  \"dren</w>\": 47309,\n  \"drenched</w>\": 46378,\n  \"dres\": 48852,\n  \"dres</w>\": 44697,\n  \"dresden</w>\": 34836,\n  \"dress\": 12622,\n  \"dress</w>\": 2595,\n  \"dressage</w>\": 36144,\n  \"dressed</w>\": 6559,\n  \"dresser</w>\": 26346,\n  \"dresses</w>\": 8184,\n  \"dressing</w>\": 6348,\n  \"drew\": 18792,\n  \"drew</w>\": 5281,\n  \"drex\": 33985,\n  \"drey\": 48271,\n  \"dri\": 1203,\n  \"dri</w>\": 28833,\n  \"drian</w>\": 36870,\n  \"dribb\": 42153,\n  \"dric</w>\": 23448,\n  \"dridge</w>\": 22956,\n  \"drie</w>\": 40170,\n  \"dried</w>\": 16037,\n  \"drier</w>\": 39877,\n  \"dries</w>\": 33857,\n  \"drif\": 33585,\n  \"drift</w>\": 18194,\n  \"drifting</w>\": 30276,\n  \"drill</w>\": 11626,\n  \"drilled</w>\": 46338,\n  \"drilling</w>\": 18634,\n  \"drills</w>\": 24378,\n  \"drin\": 3375,\n  \"drin</w>\": 47133,\n  \"drink\": 14131,\n  \"drink</w>\": 3979,\n  \"drinking</w>\": 5778,\n  \"drinklocal</w>\": 45998,\n  \"drinks</w>\": 6732,\n  \"drip</w>\": 24050,\n  \"dripping</w>\": 38787,\n  \"dris</w>\": 35804,\n  \"drive\": 11402,\n  \"drive</w>\": 2620,\n  \"driven</w>\": 9314,\n  \"driver\": 27563,\n  \"driver</w>\": 4383,\n  \"driverless</w>\": 46769,\n  \"drivers</w>\": 7384,\n  \"drives</w>\": 11441,\n  \"driveway</w>\": 26273,\n  \"driving\": 37800,\n  \"driving</w>\": 4161,\n  \"drizzle</w>\": 28240,\n  \"drm</w>\": 39674,\n  \"dro\": 1494,\n  \"dro</w>\": 12442,\n  \"drogba</w>\": 49199,\n  \"droid</w>\": 38016,\n  \"drome</w>\": 9157,\n  \"dron\": 43898,\n  \"dron</w>\": 23360,\n  \"drone\": 33557,\n  \"drone</w>\": 9397,\n  \"drones</w>\": 14006,\n  \"droo\": 30715,\n  \"drool</w>\": 41554,\n  \"drooling</w>\": 44360,\n  \"drop\": 16407,\n  \"drop</w>\": 3387,\n  \"dropbox</w>\": 47216,\n  \"dropped</w>\": 6792,\n  \"dropping</w>\": 8339,\n  \"drops</w>\": 6437,\n  \"dros</w>\": 47033,\n  \"drou\": 38558,\n  \"drought</w>\": 13935,\n  \"drove</w>\": 13753,\n  \"drow\": 21159,\n  \"drown</w>\": 28571,\n  \"drowned</w>\": 34005,\n  \"drowning</w>\": 24618,\n  \"drs</w>\": 21257,\n  \"dru\": 2275,\n  \"dru</w>\": 49048,\n  \"drug\": 20601,\n  \"drug</w>\": 5600,\n  \"drugs</w>\": 8021,\n  \"druid</w>\": 40297,\n  \"drum\": 13353,\n  \"drum</w>\": 8698,\n  \"drummer</w>\": 13618,\n  \"drummers</w>\": 46191,\n  \"drumming</w>\": 35480,\n  \"drummond</w>\": 42213,\n  \"drums</w>\": 11690,\n  \"drun\": 15488,\n  \"drunk\": 37398,\n  \"drunk</w>\": 8232,\n  \"drunken</w>\": 28196,\n  \"drupal</w>\": 46481,\n  \"drush</w>\": 43009,\n  \"drwho</w>\": 48342,\n  \"dry\": 13544,\n  \"dry</w>\": 4501,\n  \"dryer</w>\": 24425,\n  \"drying</w>\": 23203,\n  \"ds\": 3361,\n  \"ds</w>\": 646,\n  \"dsa</w>\": 47607,\n  \"dsb\": 47168,\n  \"dsb</w>\": 14257,\n  \"dsburg</w>\": 47237,\n  \"dsc</w>\": 37240,\n  \"dsd</w>\": 45383,\n  \"dsley</w>\": 40740,\n  \"dslr</w>\": 33740,\n  \"dsm</w>\": 39502,\n  \"dson</w>\": 40310,\n  \"dsp</w>\": 45291,\n  \"dss</w>\": 41580,\n  \"dstv</w>\": 35027,\n  \"dt\": 13104,\n  \"dt</w>\": 7427,\n  \"dthe\": 13863,\n  \"dtla</w>\": 31885,\n  \"dtm</w>\": 42407,\n  \"dts</w>\": 46233,\n  \"du\": 691,\n  \"du</w>\": 3686,\n  \"dua</w>\": 25244,\n  \"dual\": 39739,\n  \"dual</w>\": 5347,\n  \"duane</w>\": 38946,\n  \"dub\": 14526,\n  \"dub</w>\": 13144,\n  \"duba\": 5485,\n  \"dubai\": 32599,\n  \"dubai</w>\": 5985,\n  \"dubbed</w>\": 27740,\n  \"dublin\": 20707,\n  \"dublin</w>\": 6145,\n  \"dubnation</w>\": 47329,\n  \"dubois</w>\": 48046,\n  \"dubrov\": 46709,\n  \"dubrovnik</w>\": 48724,\n  \"dubs</w>\": 27013,\n  \"dubstep</w>\": 38303,\n  \"dubu\": 43257,\n  \"duc\": 979,\n  \"duc</w>\": 36446,\n  \"ducati</w>\": 28570,\n  \"ducation</w>\": 17197,\n  \"duce</w>\": 3660,\n  \"duchess</w>\": 21713,\n  \"duck\": 12708,\n  \"duck</w>\": 6910,\n  \"ducks</w>\": 11202,\n  \"duct</w>\": 26829,\n  \"dude\": 48087,\n  \"dude</w>\": 5710,\n  \"dudes</w>\": 14449,\n  \"dudley</w>\": 27324,\n  \"due</w>\": 2887,\n  \"duel</w>\": 27143,\n  \"dues</w>\": 37646,\n  \"duet</w>\": 25457,\n  \"duf\": 38713,\n  \"duff\": 38071,\n  \"duff</w>\": 21934,\n  \"duffy</w>\": 23599,\n  \"dug\": 22743,\n  \"dug</w>\": 21000,\n  \"dugg\": 40523,\n  \"duggan</w>\": 46169,\n  \"dugout</w>\": 36831,\n  \"duh</w>\": 26716,\n  \"dui</w>\": 29693,\n  \"duk</w>\": 14160,\n  \"duke\": 18402,\n  \"duke</w>\": 7732,\n  \"dukes</w>\": 27914,\n  \"dul\": 6738,\n  \"dulce</w>\": 44872,\n  \"dulil\": 32565,\n  \"dulkar</w>\": 47980,\n  \"dull</w>\": 19433,\n  \"dulu\": 28865,\n  \"duluth</w>\": 32109,\n  \"dulwich</w>\": 47343,\n  \"dum\": 13400,\n  \"dum</w>\": 11564,\n  \"dumb\": 15901,\n  \"dumb</w>\": 12464,\n  \"dumbass</w>\": 38980,\n  \"dummies</w>\": 40899,\n  \"dummy</w>\": 34246,\n  \"dump\": 12655,\n  \"dump</w>\": 17146,\n  \"dumped</w>\": 23768,\n  \"dumping</w>\": 31707,\n  \"dumplings</w>\": 35495,\n  \"dumps</w>\": 45804,\n  \"dumpster</w>\": 45467,\n  \"dun\": 2616,\n  \"dun</w>\": 18284,\n  \"dunbar</w>\": 41453,\n  \"duncan\": 31084,\n  \"duncan</w>\": 13502,\n  \"dundal\": 38185,\n  \"dundas</w>\": 39300,\n  \"dundee</w>\": 18619,\n  \"dune\": 32833,\n  \"dune</w>\": 28208,\n  \"dunedin</w>\": 40121,\n  \"dunes</w>\": 23526,\n  \"dung</w>\": 33712,\n  \"dungeon\": 28812,\n  \"dungeon</w>\": 22931,\n  \"dungeons</w>\": 42572,\n  \"dungeonsand\": 34970,\n  \"dungeonsanddragons</w>\": 35497,\n  \"dunham</w>\": 42501,\n  \"duni</w>\": 43454,\n  \"dunk</w>\": 17222,\n  \"dunkin\": 48022,\n  \"dunkin</w>\": 36415,\n  \"dunkirk</w>\": 46928,\n  \"dunks</w>\": 48977,\n  \"dunlop</w>\": 34753,\n  \"dunn</w>\": 19185,\n  \"dunne</w>\": 38538,\n  \"dunno</w>\": 24502,\n  \"duo</w>\": 8696,\n  \"dup\": 36805,\n  \"dup</w>\": 10445,\n  \"duper</w>\": 44850,\n  \"duplex</w>\": 41186,\n  \"duplic\": 28992,\n  \"dupont</w>\": 35994,\n  \"dur\": 4355,\n  \"dur</w>\": 23230,\n  \"dura\": 28173,\n  \"dura</w>\": 47382,\n  \"durability</w>\": 43671,\n  \"durable</w>\": 22285,\n  \"duran</w>\": 28185,\n  \"durango</w>\": 44443,\n  \"durant</w>\": 24861,\n  \"duras</w>\": 27518,\n  \"duration</w>\": 31663,\n  \"durban</w>\": 24474,\n  \"dure</w>\": 19108,\n  \"durga</w>\": 38456,\n  \"durham\": 26765,\n  \"durham</w>\": 14335,\n  \"during</w>\": 1590,\n  \"dus</w>\": 9931,\n  \"dusa</w>\": 28546,\n  \"dusk</w>\": 19708,\n  \"dust\": 29723,\n  \"dust</w>\": 8349,\n  \"dusted</w>\": 38274,\n  \"duster</w>\": 46280,\n  \"dustin\": 42423,\n  \"dustin</w>\": 21235,\n  \"dusting</w>\": 41756,\n  \"dusty</w>\": 22029,\n  \"dut\": 32625,\n  \"dutch\": 22277,\n  \"dutch</w>\": 7991,\n  \"duter\": 21624,\n  \"duterte</w>\": 22371,\n  \"duties</w>\": 19603,\n  \"dutt</w>\": 30081,\n  \"dutton</w>\": 42771,\n  \"duty</w>\": 6458,\n  \"duval</w>\": 42459,\n  \"duvet</w>\": 48006,\n  \"dux</w>\": 28562,\n  \"dv\": 4288,\n  \"dv</w>\": 26265,\n  \"dvd</w>\": 7170,\n  \"dvds</w>\": 36655,\n  \"dvn</w>\": 29811,\n  \"dvr</w>\": 29210,\n  \"dw\": 8455,\n  \"dw</w>\": 19997,\n  \"dwar\": 13487,\n  \"dwarf</w>\": 22643,\n  \"dwayne</w>\": 31395,\n  \"dwell\": 27549,\n  \"dwell</w>\": 18755,\n  \"dwelling</w>\": 37098,\n  \"dwight</w>\": 22473,\n  \"dwp</w>\": 46976,\n  \"dwts</w>\": 30220,\n  \"dwyer</w>\": 43878,\n  \"dx\": 22717,\n  \"dx</w>\": 15679,\n  \"dy\": 1444,\n  \"dy</w>\": 907,\n  \"dyce</w>\": 48325,\n  \"dye\": 37159,\n  \"dye</w>\": 15997,\n  \"dyed</w>\": 24906,\n  \"dyer</w>\": 29495,\n  \"dyes</w>\": 39874,\n  \"dying</w>\": 5115,\n  \"dyk</w>\": 12142,\n  \"dyke</w>\": 32632,\n  \"dylan\": 21004,\n  \"dylan</w>\": 9900,\n  \"dyn\": 44289,\n  \"dyn</w>\": 30669,\n  \"dynam\": 5735,\n  \"dynamic</w>\": 10057,\n  \"dynamics</w>\": 14329,\n  \"dynamite</w>\": 29003,\n  \"dynamo</w>\": 28281,\n  \"dynasty</w>\": 14593,\n  \"dyne</w>\": 42756,\n  \"dyou\": 11484,\n  \"dyour\": 22525,\n  \"dys\": 11022,\n  \"dys</w>\": 38384,\n  \"dysfunction</w>\": 36865,\n  \"dysfunctional</w>\": 40757,\n  \"dysle\": 33681,\n  \"dyslexia</w>\": 43199,\n  \"dyson</w>\": 34475,\n  \"dyssey</w>\": 17435,\n  \"dystop\": 28276,\n  \"dystopian</w>\": 38915,\n  \"dz\": 24421,\n  \"dz</w>\": 22913,\n  \"dÃ©\": 25466,\n  \"dÃ¼\": 46948,\n  \"dÃŃ\": 46988,\n  \"e\": 68,\n  \"e</w>\": 324,\n  \"ea\": 2150,\n  \"ea</w>\": 8100,\n  \"eable</w>\": 20693,\n  \"each\": 31442,\n  \"each</w>\": 2416,\n  \"eachother</w>\": 40792,\n  \"ead\": 42556,\n  \"ead</w>\": 45523,\n  \"eae</w>\": 27446,\n  \"eag\": 3743,\n  \"eager</w>\": 21551,\n  \"eagerly</w>\": 30094,\n  \"eagle\": 20207,\n  \"eagle</w>\": 7517,\n  \"eagles</w>\": 6920,\n  \"eal\": 48872,\n  \"ealing</w>\": 40484,\n  \"eames</w>\": 49072,\n  \"eamon\": 45954,\n  \"ean</w>\": 13327,\n  \"ear\": 1055,\n  \"ear</w>\": 8373,\n  \"earbuds</w>\": 47807,\n  \"eared</w>\": 9127,\n  \"earl\": 30573,\n  \"earl</w>\": 14235,\n  \"earle</w>\": 40292,\n  \"earlier</w>\": 4297,\n  \"earliest</w>\": 22097,\n  \"early\": 15840,\n  \"early</w>\": 2090,\n  \"earn\": 33977,\n  \"earn</w>\": 8465,\n  \"earned</w>\": 8898,\n  \"earnest</w>\": 45422,\n  \"earning</w>\": 14550,\n  \"earnings</w>\": 15912,\n  \"earns</w>\": 16760,\n  \"earp</w>\": 35296,\n  \"earphones</w>\": 44905,\n  \"earring</w>\": 28664,\n  \"earrings</w>\": 9136,\n  \"ears</w>\": 9861,\n  \"eart\": 7086,\n  \"earth\": 5184,\n  \"earth</w>\": 3475,\n  \"earthand\": 34229,\n  \"earthandclouds</w>\": 34480,\n  \"earthday</w>\": 19481,\n  \"earthquake</w>\": 10060,\n  \"earthquakes</w>\": 32895,\n  \"earthy</w>\": 47139,\n  \"earts</w>\": 38824,\n  \"eas\": 5740,\n  \"ease</w>\": 13574,\n  \"easier</w>\": 8817,\n  \"easiest</w>\": 26314,\n  \"easily</w>\": 8197,\n  \"easing</w>\": 44825,\n  \"easport\": 42251,\n  \"east\": 5022,\n  \"east</w>\": 2602,\n  \"eastbound</w>\": 28827,\n  \"eastbourne</w>\": 38455,\n  \"eastenders</w>\": 23545,\n  \"easter\": 14783,\n  \"easter</w>\": 4811,\n  \"eastern\": 34522,\n  \"eastern</w>\": 6311,\n  \"eastman</w>\": 48280,\n  \"easton</w>\": 29619,\n  \"eastside</w>\": 42650,\n  \"eastwood</w>\": 28270,\n  \"easy\": 18308,\n  \"easy</w>\": 3176,\n  \"eat\": 5418,\n  \"eat</w>\": 3384,\n  \"eaten</w>\": 16750,\n  \"eater</w>\": 24060,\n  \"eaters</w>\": 37645,\n  \"eatery</w>\": 46559,\n  \"eating</w>\": 4371,\n  \"eatlocal</w>\": 42868,\n  \"eaton</w>\": 28462,\n  \"eats</w>\": 13188,\n  \"eau</w>\": 17608,\n  \"eazy</w>\": 36536,\n  \"eb\": 12283,\n  \"eb</w>\": 8677,\n  \"eba</w>\": 40889,\n  \"ebay\": 34412,\n  \"ebay</w>\": 4099,\n  \"eber\": 34020,\n  \"ebo</w>\": 46635,\n  \"ebola</w>\": 15864,\n  \"ebon\": 22013,\n  \"ebony</w>\": 30651,\n  \"ebook</w>\": 13122,\n  \"ebooks</w>\": 25774,\n  \"ec\": 747,\n  \"ec</w>\": 10879,\n  \"eca</w>\": 18465,\n  \"ecar\": 34500,\n  \"ecb</w>\": 26205,\n  \"ecc</w>\": 33128,\n  \"eccc</w>\": 47401,\n  \"eccentric</w>\": 43228,\n  \"eccle\": 27494,\n  \"ece</w>\": 2163,\n  \"eces</w>\": 5905,\n  \"ecg</w>\": 45983,\n  \"ech\": 15797,\n  \"ech</w>\": 31147,\n  \"echel\": 41233,\n  \"echo\": 17366,\n  \"echo</w>\": 13989,\n  \"echoes</w>\": 32564,\n  \"eci\": 31936,\n  \"eck\": 25866,\n  \"eck</w>\": 15969,\n  \"ecker\": 39661,\n  \"ecker</w>\": 40890,\n  \"ecla\": 47806,\n  \"eclec\": 25114,\n  \"eclectic</w>\": 28382,\n  \"eclip\": 30841,\n  \"eclipse</w>\": 11505,\n  \"eclub</w>\": 38983,\n  \"eco\": 5106,\n  \"eco</w>\": 10077,\n  \"ecofriendly</w>\": 43412,\n  \"ecol\": 22706,\n  \"ecological</w>\": 25127,\n  \"ecology</w>\": 18578,\n  \"ecommerce</w>\": 15529,\n  \"econ\": 26755,\n  \"econ</w>\": 21158,\n  \"econom\": 2768,\n  \"economic\": 36649,\n  \"economic</w>\": 5259,\n  \"economical</w>\": 48782,\n  \"economically</w>\": 39406,\n  \"economics</w>\": 12625,\n  \"economies</w>\": 27136,\n  \"economist</w>\": 18836,\n  \"economists</w>\": 43701,\n  \"economy</w>\": 5644,\n  \"ecor\": 28962,\n  \"ecosystem</w>\": 15788,\n  \"ecosystems</w>\": 28725,\n  \"ecoun\": 27924,\n  \"ecr</w>\": 48572,\n  \"ecraft</w>\": 11439,\n  \"ecs</w>\": 23485,\n  \"ecstasy</w>\": 47286,\n  \"ecstatic</w>\": 36244,\n  \"ect</w>\": 25168,\n  \"ecu\": 13087,\n  \"ecu</w>\": 32919,\n  \"ecuador</w>\": 19813,\n  \"ecz\": 43530,\n  \"ed\": 843,\n  \"ed</w>\": 538,\n  \"eda</w>\": 10804,\n  \"edad</w>\": 44724,\n  \"eday\": 39258,\n  \"edc</w>\": 21245,\n  \"edchat</w>\": 14702,\n  \"edd</w>\": 35431,\n  \"eddi\": 42930,\n  \"eddie\": 22748,\n  \"eddie</w>\": 9517,\n  \"eddy</w>\": 25959,\n  \"ede\": 29632,\n  \"eded</w>\": 19555,\n  \"edel\": 20460,\n  \"edelman</w>\": 48139,\n  \"eden\": 23621,\n  \"eden</w>\": 13741,\n  \"eder</w>\": 16249,\n  \"edes</w>\": 36247,\n  \"edfringe</w>\": 27402,\n  \"edg\": 35955,\n  \"edgar\": 33543,\n  \"edgar</w>\": 17914,\n  \"edge\": 16914,\n  \"edge</w>\": 5461,\n  \"edged</w>\": 39188,\n  \"edges</w>\": 20938,\n  \"edgy</w>\": 35393,\n  \"edi\": 8750,\n  \"edi</w>\": 27148,\n  \"edible</w>\": 19795,\n  \"edic\": 25184,\n  \"edics</w>\": 30641,\n  \"edin\": 6524,\n  \"edinburgh\": 27574,\n  \"edinburgh</w>\": 8068,\n  \"eding</w>\": 5742,\n  \"edison</w>\": 25846,\n  \"edit\": 8239,\n  \"edit</w>\": 8013,\n  \"edited</w>\": 13945,\n  \"edith</w>\": 28597,\n  \"editing</w>\": 10178,\n  \"edition</w>\": 3062,\n  \"editions</w>\": 21664,\n  \"editor</w>\": 7661,\n  \"editorial</w>\": 12325,\n  \"editors</w>\": 19486,\n  \"edits</w>\": 24945,\n  \"edm\": 37843,\n  \"edm</w>\": 13539,\n  \"edmon\": 11275,\n  \"edmond</w>\": 41581,\n  \"edmonds</w>\": 46520,\n  \"edmonton\": 37311,\n  \"edmonton</w>\": 15058,\n  \"edmun\": 36561,\n  \"edmund</w>\": 27567,\n  \"edna</w>\": 39002,\n  \"edo\": 29145,\n  \"edo</w>\": 18096,\n  \"edon</w>\": 41467,\n  \"edor\": 30184,\n  \"edou\": 47678,\n  \"edp</w>\": 46066,\n  \"eds</w>\": 1941,\n  \"edsheeran</w>\": 30386,\n  \"edt</w>\": 15071,\n  \"edtech\": 41825,\n  \"edtech</w>\": 15262,\n  \"edu\": 11757,\n  \"edu</w>\": 11799,\n  \"eduardo</w>\": 30604,\n  \"educ\": 2200,\n  \"educate</w>\": 17563,\n  \"educated</w>\": 21447,\n  \"education\": 22358,\n  \"education</w>\": 2806,\n  \"educational</w>\": 10400,\n  \"educator</w>\": 19875,\n  \"educators</w>\": 15420,\n  \"edwar\": 27586,\n  \"edward\": 26184,\n  \"edward</w>\": 7450,\n  \"edwards</w>\": 12627,\n  \"edwin\": 48718,\n  \"edwin</w>\": 22471,\n  \"edy\": 17072,\n  \"edy</w>\": 4144,\n  \"ee\": 2644,\n  \"ee</w>\": 4708,\n  \"eed</w>\": 17513,\n  \"eee\": 24632,\n  \"eee</w>\": 9361,\n  \"eeee\": 11696,\n  \"eeee</w>\": 17570,\n  \"eeeee</w>\": 26938,\n  \"eeeeee</w>\": 41407,\n  \"eek</w>\": 46591,\n  \"eel</w>\": 27462,\n  \"eels</w>\": 44416,\n  \"eem</w>\": 27236,\n  \"een\": 47490,\n  \"een</w>\": 21230,\n  \"eer\": 35409,\n  \"eer</w>\": 31846,\n  \"eera</w>\": 36664,\n  \"eerie</w>\": 33846,\n  \"ees</w>\": 40308,\n  \"eet</w>\": 48935,\n  \"eez</w>\": 39033,\n  \"ef\": 1490,\n  \"ef</w>\": 1829,\n  \"efa</w>\": 16999,\n  \"eface</w>\": 48804,\n  \"efan\": 33556,\n  \"efc</w>\": 22065,\n  \"efcc</w>\": 46087,\n  \"efer</w>\": 26199,\n  \"eff\": 20548,\n  \"eff</w>\": 21715,\n  \"effe\": 2808,\n  \"effec\": 3943,\n  \"effect</w>\": 5436,\n  \"effective</w>\": 6837,\n  \"effectively</w>\": 17516,\n  \"effectiveness</w>\": 26847,\n  \"effects</w>\": 7331,\n  \"effic\": 36004,\n  \"efficacy</w>\": 39937,\n  \"effici\": 6670,\n  \"efficiency</w>\": 11823,\n  \"efficient</w>\": 11334,\n  \"efficiently</w>\": 32915,\n  \"effor\": 6356,\n  \"effort\": 40078,\n  \"effort</w>\": 6255,\n  \"effortless</w>\": 41639,\n  \"effortlessly</w>\": 42320,\n  \"efforts</w>\": 6847,\n  \"efish</w>\": 35813,\n  \"efl</w>\": 27172,\n  \"efron</w>\": 48111,\n  \"efs</w>\": 7389,\n  \"eg\": 8053,\n  \"eg</w>\": 14599,\n  \"ega</w>\": 41193,\n  \"egan</w>\": 42943,\n  \"eger\": 46704,\n  \"eger</w>\": 22767,\n  \"egg\": 13778,\n  \"egg</w>\": 5911,\n  \"eggplant</w>\": 34906,\n  \"eggs</w>\": 7099,\n  \"ego\": 34712,\n  \"ego</w>\": 14250,\n  \"egos</w>\": 43992,\n  \"egre\": 27044,\n  \"egret</w>\": 42002,\n  \"egy\": 5224,\n  \"egyp\": 10250,\n  \"egypt</w>\": 7267,\n  \"egyptian</w>\": 12428,\n  \"eh\": 9277,\n  \"eh</w>\": 9135,\n  \"eha</w>\": 48563,\n  \"ehealth</w>\": 48617,\n  \"ehr\": 45271,\n  \"ehs</w>\": 44648,\n  \"ei\": 4006,\n  \"ei</w>\": 18264,\n  \"eic\": 40251,\n  \"eid\": 28038,\n  \"eid</w>\": 13979,\n  \"eidmubarak</w>\": 46275,\n  \"eiffel</w>\": 29720,\n  \"eigh\": 13468,\n  \"eight</w>\": 7910,\n  \"eighteen</w>\": 49316,\n  \"eighth</w>\": 21237,\n  \"eighty</w>\": 47449,\n  \"eil\": 29457,\n  \"eileen</w>\": 31468,\n  \"ein\": 29944,\n  \"ein</w>\": 24524,\n  \"eindhoven</w>\": 47172,\n  \"eing</w>\": 7702,\n  \"einstein</w>\": 20587,\n  \"eira</w>\": 47708,\n  \"eis\": 13802,\n  \"eisen\": 25273,\n  \"eisenhower</w>\": 35562,\n  \"either</w>\": 6036,\n  \"ej\": 19887,\n  \"ej</w>\": 25009,\n  \"ejec\": 29771,\n  \"ek\": 4212,\n  \"ek</w>\": 2092,\n  \"el\": 544,\n  \"el</w>\": 832,\n  \"ela\": 11284,\n  \"ela</w>\": 3787,\n  \"elab</w>\": 38866,\n  \"elabor\": 26034,\n  \"elaborate</w>\": 33855,\n  \"elaine</w>\": 22523,\n  \"elan\": 17763,\n  \"elan</w>\": 18399,\n  \"eland\": 24930,\n  \"eland</w>\": 6275,\n  \"elas</w>\": 41078,\n  \"elast\": 27479,\n  \"elastic</w>\": 30282,\n  \"elba</w>\": 48598,\n  \"elbow</w>\": 21965,\n  \"eld</w>\": 5684,\n  \"elder\": 11791,\n  \"elder</w>\": 14416,\n  \"elderly</w>\": 15455,\n  \"elders</w>\": 28617,\n  \"eldest</w>\": 33503,\n  \"elding</w>\": 28223,\n  \"elds</w>\": 13466,\n  \"ele\": 2084,\n  \"ele</w>\": 9766,\n  \"eleague</w>\": 36577,\n  \"eleanor</w>\": 18604,\n  \"elearning</w>\": 29969,\n  \"elec\": 1564,\n  \"elec</w>\": 38768,\n  \"elect</w>\": 15336,\n  \"elected</w>\": 8828,\n  \"election\": 19312,\n  \"election</w>\": 4247,\n  \"electionday</w>\": 40540,\n  \"elections</w>\": 6949,\n  \"elector\": 16465,\n  \"electoral</w>\": 19544,\n  \"electr\": 3654,\n  \"electra</w>\": 48959,\n  \"electri\": 23927,\n  \"electric\": 19547,\n  \"electric</w>\": 5031,\n  \"electrical</w>\": 12176,\n  \"electrician</w>\": 46422,\n  \"electricity</w>\": 10950,\n  \"electrifying</w>\": 48843,\n  \"electro\": 11648,\n  \"electro</w>\": 23244,\n  \"electromagnetic</w>\": 46530,\n  \"electron</w>\": 33396,\n  \"electronic\": 33865,\n  \"electronic</w>\": 9273,\n  \"electronica</w>\": 43119,\n  \"electronics</w>\": 13081,\n  \"eled</w>\": 20357,\n  \"elee</w>\": 44112,\n  \"eleg\": 8075,\n  \"elegance</w>\": 19146,\n  \"elegant</w>\": 11124,\n  \"elek\": 34559,\n  \"elem</w>\": 25406,\n  \"element</w>\": 14909,\n  \"elementary</w>\": 8143,\n  \"elements</w>\": 10925,\n  \"elen\": 30654,\n  \"elen</w>\": 39164,\n  \"elena</w>\": 19421,\n  \"eleng\": 48180,\n  \"eleph\": 7554,\n  \"elephant</w>\": 10299,\n  \"elephants</w>\": 16871,\n  \"eler</w>\": 24646,\n  \"eless\": 15244,\n  \"eless</w>\": 30837,\n  \"elets</w>\": 19400,\n  \"elev\": 7921,\n  \"elevate</w>\": 26736,\n  \"elevated</w>\": 23967,\n  \"elevation</w>\": 23826,\n  \"elevator</w>\": 19021,\n  \"eleven\": 31617,\n  \"eleven</w>\": 17795,\n  \"elf\": 45961,\n  \"elf</w>\": 11924,\n  \"elfie</w>\": 39955,\n  \"elg\": 28790,\n  \"elgin</w>\": 31868,\n  \"eli\": 1018,\n  \"eli</w>\": 6292,\n  \"elia</w>\": 10956,\n  \"elian</w>\": 42508,\n  \"elias\": 47274,\n  \"elias</w>\": 29902,\n  \"elic\": 34743,\n  \"elic</w>\": 13492,\n  \"elie\": 38677,\n  \"elie</w>\": 26501,\n  \"elier</w>\": 14634,\n  \"elife\": 37429,\n  \"elife</w>\": 12719,\n  \"eligibility</w>\": 34937,\n  \"eligible</w>\": 16978,\n  \"elijah</w>\": 26065,\n  \"elike\": 48913,\n  \"elim\": 9296,\n  \"elimin\": 11386,\n  \"eliminate</w>\": 19655,\n  \"eliminated</w>\": 29075,\n  \"eliminating</w>\": 36619,\n  \"elimination</w>\": 24176,\n  \"elin\": 25353,\n  \"elin</w>\": 13458,\n  \"eline\": 46199,\n  \"eline</w>\": 7153,\n  \"eling</w>\": 9990,\n  \"elio</w>\": 47943,\n  \"elion</w>\": 30682,\n  \"elions</w>\": 44159,\n  \"eliot</w>\": 33326,\n  \"elis\": 23411,\n  \"elis</w>\": 48021,\n  \"elisa\": 25610,\n  \"elisa</w>\": 44051,\n  \"elisabeth</w>\": 33127,\n  \"elise</w>\": 27124,\n  \"elit\": 40882,\n  \"elite\": 32277,\n  \"elite</w>\": 6553,\n  \"elited\": 43943,\n  \"elitedangerous</w>\": 47138,\n  \"elites</w>\": 35975,\n  \"elius</w>\": 35623,\n  \"elive\": 49338,\n  \"elive</w>\": 23505,\n  \"elives</w>\": 49174,\n  \"elix\": 32926,\n  \"elixir</w>\": 42887,\n  \"eliz\": 42844,\n  \"eliza\": 6132,\n  \"eliza</w>\": 29992,\n  \"elizabeth\": 22397,\n  \"elizabeth</w>\": 7026,\n  \"elk\": 34013,\n  \"elk</w>\": 21896,\n  \"ell\": 826,\n  \"ell</w>\": 812,\n  \"ella\": 20692,\n  \"ella</w>\": 2957,\n  \"elland</w>\": 43326,\n  \"ellar</w>\": 38443,\n  \"ellas</w>\": 37053,\n  \"elle\": 12818,\n  \"elle</w>\": 4765,\n  \"elled</w>\": 13146,\n  \"ellen\": 14007,\n  \"ellen</w>\": 12312,\n  \"ellenshow</w>\": 34812,\n  \"eller\": 20927,\n  \"eller</w>\": 4465,\n  \"ellers</w>\": 19010,\n  \"elles</w>\": 24431,\n  \"elli\": 3367,\n  \"elli</w>\": 6673,\n  \"ellic\": 38905,\n  \"ellie</w>\": 16769,\n  \"ellier</w>\": 44054,\n  \"ellin</w>\": 40374,\n  \"elling</w>\": 2220,\n  \"ellington</w>\": 34477,\n  \"ellini</w>\": 43256,\n  \"elliot</w>\": 20761,\n  \"elliott\": 44456,\n  \"elliott</w>\": 13788,\n  \"ellip\": 44816,\n  \"ellis</w>\": 11553,\n  \"ellison</w>\": 32295,\n  \"ello</w>\": 2512,\n  \"ellor</w>\": 14594,\n  \"ells</w>\": 2433,\n  \"ellu\": 35560,\n  \"elly\": 8041,\n  \"elly</w>\": 20355,\n  \"elm\": 25199,\n  \"elm</w>\": 22082,\n  \"elman</w>\": 33622,\n  \"elmer</w>\": 45958,\n  \"elmo</w>\": 32150,\n  \"elo\": 6170,\n  \"elo</w>\": 13490,\n  \"elon\": 26381,\n  \"elon</w>\": 20406,\n  \"elondon</w>\": 47377,\n  \"elong\": 44363,\n  \"elonmusk</w>\": 37076,\n  \"elope</w>\": 23367,\n  \"eloqu\": 37795,\n  \"elos</w>\": 44733,\n  \"elot</w>\": 43490,\n  \"elove\": 43319,\n  \"elove</w>\": 19165,\n  \"elover</w>\": 21732,\n  \"elovers</w>\": 33946,\n  \"els\": 35958,\n  \"els</w>\": 1645,\n  \"elsa</w>\": 22050,\n  \"else\": 18857,\n  \"else</w>\": 3344,\n  \"elsewhere</w>\": 22906,\n  \"elson</w>\": 19624,\n  \"elt</w>\": 18692,\n  \"elton</w>\": 20758,\n  \"elu\": 14208,\n  \"elusive</w>\": 28903,\n  \"elves</w>\": 29111,\n  \"elvi\": 47008,\n  \"elvis\": 47359,\n  \"elvis</w>\": 14498,\n  \"elxn</w>\": 37726,\n  \"ely\": 12189,\n  \"ely</w>\": 1273,\n  \"elyn\": 29691,\n  \"elyn</w>\": 18126,\n  \"em\": 908,\n  \"em</w>\": 2270,\n  \"ema\": 7002,\n  \"ema</w>\": 11131,\n  \"emabiggest\": 23101,\n  \"emabiggestfans</w>\": 29587,\n  \"email\": 33537,\n  \"email</w>\": 4462,\n  \"emailed</w>\": 40470,\n  \"emailmarketing</w>\": 40188,\n  \"emails</w>\": 12871,\n  \"eman\": 24416,\n  \"eman</w>\": 36868,\n  \"emancip\": 42996,\n  \"emanuel</w>\": 35232,\n  \"emb\": 3692,\n  \"embar\": 8266,\n  \"embaras\": 48019,\n  \"embark</w>\": 33953,\n  \"embarra\": 11382,\n  \"embarrass\": 27183,\n  \"embarrassed</w>\": 28217,\n  \"embarrassing</w>\": 19653,\n  \"embarrassment</w>\": 41346,\n  \"embassy</w>\": 13598,\n  \"embe\": 46041,\n  \"embed\": 19703,\n  \"embedded</w>\": 22046,\n  \"embelli\": 32144,\n  \"embellished</w>\": 46992,\n  \"ember</w>\": 47049,\n  \"emblem</w>\": 21163,\n  \"embo\": 23065,\n  \"embr\": 35267,\n  \"embrac\": 16928,\n  \"embrace</w>\": 12118,\n  \"embraced</w>\": 35739,\n  \"embraces</w>\": 38404,\n  \"embracing</w>\": 22196,\n  \"embro\": 12550,\n  \"embroi\": 18667,\n  \"embroide\": 21530,\n  \"embroidered</w>\": 22381,\n  \"embroidery</w>\": 20823,\n  \"emc\": 20897,\n  \"emc</w>\": 31602,\n  \"emcee</w>\": 42038,\n  \"eme\": 22910,\n  \"eme</w>\": 21548,\n  \"emea</w>\": 40352,\n  \"emed</w>\": 11028,\n  \"emen</w>\": 22033,\n  \"ement\": 40841,\n  \"ement</w>\": 2057,\n  \"ements</w>\": 11058,\n  \"emer\": 3132,\n  \"emer</w>\": 25727,\n  \"emerald\": 46878,\n  \"emerald</w>\": 16980,\n  \"emerge</w>\": 22182,\n  \"emerged</w>\": 26425,\n  \"emergen\": 24096,\n  \"emergence</w>\": 39867,\n  \"emergencies</w>\": 35759,\n  \"emergency\": 44038,\n  \"emergency</w>\": 5897,\n  \"emerges</w>\": 30801,\n  \"emerging\": 38174,\n  \"emerging</w>\": 11113,\n  \"emeritus</w>\": 35333,\n  \"emerson</w>\": 24147,\n  \"emery</w>\": 32678,\n  \"emi\": 44327,\n  \"emi</w>\": 18525,\n  \"emil\": 26794,\n  \"emil</w>\": 40624,\n  \"emile</w>\": 43926,\n  \"emili\": 20709,\n  \"emilia</w>\": 34238,\n  \"emilio</w>\": 39722,\n  \"emily\": 14545,\n  \"emily</w>\": 7640,\n  \"emin\": 17227,\n  \"emin</w>\": 23995,\n  \"eminem</w>\": 22129,\n  \"eminent</w>\": 33779,\n  \"eming</w>\": 40398,\n  \"emir\": 13337,\n  \"emir</w>\": 47613,\n  \"emirates\": 47244,\n  \"emirates</w>\": 17867,\n  \"emission</w>\": 27761,\n  \"emissions</w>\": 14172,\n  \"emit</w>\": 49043,\n  \"emma\": 18177,\n  \"emma</w>\": 7445,\n  \"emmanuel\": 48045,\n  \"emmanuel</w>\": 20411,\n  \"emmett</w>\": 45779,\n  \"emmy\": 35625,\n  \"emmy</w>\": 17089,\n  \"emmys</w>\": 21875,\n  \"emo\": 3738,\n  \"emo</w>\": 19381,\n  \"emoji</w>\": 16327,\n  \"emojis</w>\": 27870,\n  \"emon</w>\": 34406,\n  \"emor\": 45034,\n  \"emory</w>\": 44274,\n  \"emotion</w>\": 17464,\n  \"emotional</w>\": 7357,\n  \"emotionally</w>\": 24088,\n  \"emotions</w>\": 12904,\n  \"emp\": 3831,\n  \"emp</w>\": 41004,\n  \"empathy</w>\": 22420,\n  \"emper\": 12522,\n  \"emperor</w>\": 13828,\n  \"empha\": 16237,\n  \"emphasi\": 47176,\n  \"emphasis</w>\": 29588,\n  \"empire\": 26212,\n  \"empire</w>\": 7614,\n  \"empires</w>\": 46510,\n  \"emplo\": 3409,\n  \"employ\": 37290,\n  \"employ</w>\": 39626,\n  \"employe\": 5037,\n  \"employed</w>\": 26567,\n  \"employee\": 36631,\n  \"employee</w>\": 9560,\n  \"employees</w>\": 7377,\n  \"employer</w>\": 21296,\n  \"employers</w>\": 17647,\n  \"employment</w>\": 10959,\n  \"empor\": 27386,\n  \"emporium</w>\": 48541,\n  \"empower\": 13612,\n  \"empower</w>\": 17230,\n  \"empowered</w>\": 29087,\n  \"empowering</w>\": 20086,\n  \"empowerment</w>\": 15747,\n  \"empowers</w>\": 46206,\n  \"empress</w>\": 26656,\n  \"empty\": 41203,\n  \"empty</w>\": 7893,\n  \"emra\": 39259,\n  \"ems</w>\": 2858,\n  \"emt</w>\": 46360,\n  \"emu\": 48149,\n  \"emu</w>\": 29296,\n  \"emul\": 23272,\n  \"emy\": 31076,\n  \"en\": 524,\n  \"en</w>\": 576,\n  \"ena</w>\": 3452,\n  \"enab\": 17308,\n  \"enable</w>\": 15642,\n  \"enabled</w>\": 23666,\n  \"enables</w>\": 23417,\n  \"enabling</w>\": 23590,\n  \"enam\": 41486,\n  \"enamel</w>\": 22746,\n  \"enary</w>\": 13132,\n  \"enas</w>\": 34536,\n  \"enation</w>\": 20860,\n  \"enberg</w>\": 15658,\n  \"enburg</w>\": 28430,\n  \"enc</w>\": 33169,\n  \"enca</w>\": 37774,\n  \"encan\": 30345,\n  \"encapsul\": 40874,\n  \"ence\": 6495,\n  \"ence</w>\": 954,\n  \"enced</w>\": 6549,\n  \"ences</w>\": 3777,\n  \"enchan\": 17290,\n  \"enchanted</w>\": 28258,\n  \"enchanting</w>\": 32531,\n  \"enchil\": 47396,\n  \"enci\": 32207,\n  \"encia</w>\": 30068,\n  \"encies</w>\": 18729,\n  \"encing</w>\": 10326,\n  \"enclosed</w>\": 43243,\n  \"enclosure</w>\": 37419,\n  \"encom\": 44026,\n  \"encore</w>\": 20549,\n  \"encoun\": 17309,\n  \"encounter</w>\": 13164,\n  \"encountered</w>\": 32492,\n  \"encounters</w>\": 25399,\n  \"encoura\": 6169,\n  \"encourage</w>\": 12090,\n  \"encouraged</w>\": 20299,\n  \"encouragement</w>\": 24959,\n  \"encourages</w>\": 23848,\n  \"encouraging</w>\": 15875,\n  \"encro\": 45822,\n  \"encry\": 28600,\n  \"encryp\": 42928,\n  \"encrypted</w>\": 48710,\n  \"encryption</w>\": 31423,\n  \"ency</w>\": 3484,\n  \"encyclo\": 32104,\n  \"encyclopedia</w>\": 38376,\n  \"end\": 945,\n  \"end</w>\": 806,\n  \"enda</w>\": 6735,\n  \"endale</w>\": 20290,\n  \"endange\": 13990,\n  \"endangered</w>\": 14931,\n  \"ende\": 11373,\n  \"ende</w>\": 40306,\n  \"endeav\": 18134,\n  \"endeavor</w>\": 40502,\n  \"endeavors</w>\": 44394,\n  \"endeavour</w>\": 38035,\n  \"ended</w>\": 2622,\n  \"endemic</w>\": 41241,\n  \"endent</w>\": 16265,\n  \"ender\": 48106,\n  \"ender</w>\": 12383,\n  \"enders</w>\": 7418,\n  \"endez</w>\": 43850,\n  \"endgame</w>\": 23042,\n  \"endi</w>\": 31359,\n  \"ending</w>\": 2695,\n  \"endings</w>\": 36516,\n  \"endish</w>\": 38841,\n  \"endless</w>\": 12688,\n  \"endlessly</w>\": 45145,\n  \"endment</w>\": 45894,\n  \"endo\": 13476,\n  \"endo</w>\": 15830,\n  \"endocr\": 36486,\n  \"endof\": 40786,\n  \"endome\": 46996,\n  \"endon</w>\": 48018,\n  \"endor\": 8092,\n  \"endorf</w>\": 37249,\n  \"endorse</w>\": 28819,\n  \"endorsed</w>\": 24307,\n  \"endorsement</w>\": 21205,\n  \"endorses</w>\": 34603,\n  \"endorsing</w>\": 46779,\n  \"endow\": 45895,\n  \"endra</w>\": 22321,\n  \"ends</w>\": 1339,\n  \"endthe\": 46256,\n  \"endu\": 26032,\n  \"endur\": 19557,\n  \"endurance</w>\": 21027,\n  \"endure</w>\": 32419,\n  \"enduring</w>\": 30851,\n  \"enduro</w>\": 47042,\n  \"ene\": 3297,\n  \"ene</w>\": 6049,\n  \"ened</w>\": 2494,\n  \"eneed\": 45137,\n  \"enegger</w>\": 33235,\n  \"enei</w>\": 48906,\n  \"enemies</w>\": 15824,\n  \"enemy</w>\": 10310,\n  \"enen</w>\": 45113,\n  \"ener\": 2244,\n  \"ener</w>\": 13600,\n  \"energ\": 39451,\n  \"energetic</w>\": 24197,\n  \"energi\": 23044,\n  \"energies</w>\": 42374,\n  \"energized</w>\": 48635,\n  \"energy\": 14974,\n  \"energy</w>\": 2650,\n  \"energye\": 32271,\n  \"energyefficiency</w>\": 40586,\n  \"eners</w>\": 48208,\n  \"enes</w>\": 42066,\n  \"eness</w>\": 11806,\n  \"enet</w>\": 46336,\n  \"enew\": 29672,\n  \"enews</w>\": 13442,\n  \"eney</w>\": 20706,\n  \"enez</w>\": 33110,\n  \"enf\": 38167,\n  \"enfield</w>\": 27808,\n  \"enfor\": 10592,\n  \"enforce</w>\": 40224,\n  \"enforced</w>\": 44597,\n  \"enforcement</w>\": 12460,\n  \"eng\": 1035,\n  \"eng</w>\": 6730,\n  \"enga</w>\": 22297,\n  \"engag\": 6793,\n  \"engage</w>\": 11089,\n  \"engaged</w>\": 11475,\n  \"engagement</w>\": 7281,\n  \"engaging</w>\": 13060,\n  \"enge\": 26279,\n  \"enge</w>\": 2742,\n  \"engel\": 38265,\n  \"engen</w>\": 48286,\n  \"enger</w>\": 6618,\n  \"engers</w>\": 7533,\n  \"engine\": 3355,\n  \"engine</w>\": 5857,\n  \"engineer\": 40151,\n  \"engineer</w>\": 8517,\n  \"engineered</w>\": 26580,\n  \"engineering</w>\": 5273,\n  \"engineers</w>\": 11494,\n  \"engines</w>\": 14487,\n  \"england\": 20904,\n  \"england</w>\": 3595,\n  \"english\": 15942,\n  \"english</w>\": 3469,\n  \"engra\": 17560,\n  \"engraved</w>\": 29421,\n  \"engraving</w>\": 33309,\n  \"engul\": 43655,\n  \"engv\": 28401,\n  \"enh\": 7449,\n  \"enhall</w>\": 48781,\n  \"enham</w>\": 24592,\n  \"enhan\": 26827,\n  \"enhance</w>\": 13993,\n  \"enhanced</w>\": 16070,\n  \"enhancement</w>\": 35601,\n  \"enhances</w>\": 38259,\n  \"enhancing</w>\": 25986,\n  \"eni\": 4395,\n  \"eni</w>\": 17538,\n  \"enic\": 46780,\n  \"enic</w>\": 28292,\n  \"enig\": 19754,\n  \"enig</w>\": 48730,\n  \"enight\": 32848,\n  \"enight</w>\": 20640,\n  \"enigma</w>\": 34998,\n  \"ening</w>\": 1133,\n  \"enium</w>\": 34380,\n  \"enix</w>\": 25720,\n  \"enjo\": 1498,\n  \"enjoy\": 12981,\n  \"enjoy</w>\": 2218,\n  \"enjoyable</w>\": 17444,\n  \"enjoyed</w>\": 5045,\n  \"enjoying</w>\": 3603,\n  \"enjoyment</w>\": 34905,\n  \"enjoys</w>\": 17024,\n  \"enka</w>\": 43942,\n  \"enko</w>\": 25312,\n  \"enlar\": 38136,\n  \"enligh\": 21364,\n  \"enlighten\": 28200,\n  \"enlightened</w>\": 44032,\n  \"enlightening</w>\": 44005,\n  \"enlightenment</w>\": 29255,\n  \"enlisted</w>\": 43555,\n  \"enly</w>\": 43023,\n  \"enn</w>\": 43563,\n  \"enna</w>\": 8095,\n  \"enne\": 21176,\n  \"enne</w>\": 11518,\n  \"ennedy</w>\": 46266,\n  \"ennes</w>\": 43613,\n  \"enni\": 7049,\n  \"ennial</w>\": 14220,\n  \"ennis\": 48923,\n  \"ennis</w>\": 26309,\n  \"eno\": 9429,\n  \"eno</w>\": 12843,\n  \"enoch</w>\": 47917,\n  \"enor\": 13955,\n  \"enormous</w>\": 20129,\n  \"enos</w>\": 44759,\n  \"enote</w>\": 44955,\n  \"enough</w>\": 2744,\n  \"enow</w>\": 26876,\n  \"enqu\": 28417,\n  \"enqui\": 22810,\n  \"enquire</w>\": 46658,\n  \"enquiries</w>\": 31901,\n  \"enquiry</w>\": 45141,\n  \"enri\": 18915,\n  \"enrich\": 20058,\n  \"enrich</w>\": 45504,\n  \"enriched</w>\": 45166,\n  \"enrichment</w>\": 32903,\n  \"enrique</w>\": 25489,\n  \"enrol\": 44279,\n  \"enroll\": 23739,\n  \"enroll</w>\": 30366,\n  \"enrolled</w>\": 36853,\n  \"enrollment</w>\": 24875,\n  \"enroute</w>\": 40548,\n  \"ens\": 41799,\n  \"ens</w>\": 1323,\n  \"ense\": 12657,\n  \"ense</w>\": 27658,\n  \"ensemble</w>\": 14843,\n  \"ensis</w>\": 32842,\n  \"ensla\": 37535,\n  \"enslaved</w>\": 48675,\n  \"ensure</w>\": 7492,\n  \"ensures</w>\": 29707,\n  \"ensuring</w>\": 19403,\n  \"ent\": 724,\n  \"ent</w>\": 621,\n  \"enta</w>\": 17681,\n  \"ental\": 32342,\n  \"ental</w>\": 6168,\n  \"entary</w>\": 9833,\n  \"entation</w>\": 37412,\n  \"ente\": 17433,\n  \"ente</w>\": 9935,\n  \"ented</w>\": 3800,\n  \"entennial</w>\": 43088,\n  \"enter\": 2963,\n  \"enter</w>\": 3819,\n  \"entered</w>\": 10679,\n  \"entering</w>\": 12580,\n  \"enterpri\": 7339,\n  \"enterprise</w>\": 9220,\n  \"enterprises</w>\": 21219,\n  \"enters</w>\": 15287,\n  \"entertain\": 5566,\n  \"entertain</w>\": 23510,\n  \"entertained</w>\": 30631,\n  \"entertainer</w>\": 28674,\n  \"entertaining</w>\": 13897,\n  \"entertainment</w>\": 6166,\n  \"entes</w>\": 24213,\n  \"enthr\": 36202,\n  \"enthusi\": 9631,\n  \"enthusiasm</w>\": 20525,\n  \"enthusiast</w>\": 27153,\n  \"enthusiastic</w>\": 22068,\n  \"enthusiasts</w>\": 27514,\n  \"enti\": 1938,\n  \"ential</w>\": 5194,\n  \"entially</w>\": 37695,\n  \"entic</w>\": 10340,\n  \"entine</w>\": 49212,\n  \"enting</w>\": 20526,\n  \"entire</w>\": 4709,\n  \"entirely</w>\": 13911,\n  \"entirety</w>\": 43242,\n  \"entit\": 15209,\n  \"entities</w>\": 38134,\n  \"entitled</w>\": 18680,\n  \"entity</w>\": 28455,\n  \"ently</w>\": 2922,\n  \"ento\": 21917,\n  \"ento</w>\": 8762,\n  \"entom\": 31676,\n  \"entourage</w>\": 47893,\n  \"entr\": 7129,\n  \"entrance</w>\": 9129,\n  \"entrata</w>\": 27304,\n  \"entre\": 34188,\n  \"entre</w>\": 19600,\n  \"entren\": 46959,\n  \"entrepre\": 4583,\n  \"entreprene\": 4789,\n  \"entrepreneu\": 26784,\n  \"entrepreneur\": 12119,\n  \"entrepreneur</w>\": 8033,\n  \"entrepreneurial</w>\": 28261,\n  \"entrepreneurs</w>\": 11054,\n  \"entrepreneurship</w>\": 12858,\n  \"entries</w>\": 13766,\n  \"entry</w>\": 5362,\n  \"ents</w>\": 870,\n  \"entu\": 6650,\n  \"enty</w>\": 5657,\n  \"enu\": 23430,\n  \"env\": 32280,\n  \"env</w>\": 39207,\n  \"envel\": 20052,\n  \"envelope</w>\": 27358,\n  \"envir\": 3512,\n  \"enviro</w>\": 46200,\n  \"environ\": 3599,\n  \"environment\": 33039,\n  \"environment</w>\": 5501,\n  \"environmental</w>\": 7831,\n  \"environmentally</w>\": 32855,\n  \"environments</w>\": 19577,\n  \"envision</w>\": 49031,\n  \"envoy</w>\": 29263,\n  \"envy</w>\": 21017,\n  \"eny</w>\": 20482,\n  \"enya</w>\": 36509,\n  \"enyc</w>\": 39520,\n  \"enz\": 25805,\n  \"enz</w>\": 31873,\n  \"enza</w>\": 25239,\n  \"enzie</w>\": 14839,\n  \"enzo</w>\": 31543,\n  \"enzyme</w>\": 40348,\n  \"enzymes</w>\": 47465,\n  \"eo\": 16054,\n  \"eo</w>\": 11712,\n  \"eoin</w>\": 48634,\n  \"eon</w>\": 31915,\n  \"eos</w>\": 17805,\n  \"ep\": 1178,\n  \"ep</w>\": 1117,\n  \"epa</w>\": 15866,\n  \"epage</w>\": 26931,\n  \"epaper</w>\": 33584,\n  \"epcot</w>\": 32524,\n  \"eper</w>\": 43071,\n  \"eph\": 45752,\n  \"eph</w>\": 41240,\n  \"ephe\": 25129,\n  \"epi\": 7219,\n  \"epi</w>\": 34641,\n  \"epic\": 12683,\n  \"epic</w>\": 4991,\n  \"epiconetsy</w>\": 49222,\n  \"epide\": 17382,\n  \"epidemi\": 44447,\n  \"epidemic</w>\": 21522,\n  \"epile\": 23150,\n  \"epilepsy</w>\": 29547,\n  \"epilo\": 31291,\n  \"epilots</w>\": 39766,\n  \"epiph\": 40561,\n  \"epiphany</w>\": 43251,\n  \"epis\": 24616,\n  \"episcop\": 28037,\n  \"episcopal</w>\": 31221,\n  \"episo\": 2708,\n  \"episode</w>\": 2965,\n  \"episodes</w>\": 11837,\n  \"epit\": 21967,\n  \"epitome</w>\": 35114,\n  \"epl</w>\": 25950,\n  \"epo\": 25810,\n  \"epp\": 39054,\n  \"epp</w>\": 39593,\n  \"eps</w>\": 4090,\n  \"epsilon</w>\": 40019,\n  \"epsom</w>\": 40364,\n  \"epstein</w>\": 34688,\n  \"eq\": 39331,\n  \"eq</w>\": 33692,\n  \"equ\": 2563,\n  \"equal\": 17373,\n  \"equal</w>\": 10433,\n  \"equality\": 48981,\n  \"equality</w>\": 9578,\n  \"equally</w>\": 18172,\n  \"equals</w>\": 30278,\n  \"equation</w>\": 28591,\n  \"equations</w>\": 38225,\n  \"eque\": 19518,\n  \"equestrian</w>\": 24728,\n  \"equi\": 8752,\n  \"equili\": 43262,\n  \"equine</w>\": 33801,\n  \"equinox</w>\": 32652,\n  \"equip\": 6526,\n  \"equip</w>\": 36979,\n  \"equipment</w>\": 6893,\n  \"equipo</w>\": 45688,\n  \"equipped</w>\": 18331,\n  \"equitable</w>\": 44717,\n  \"equities</w>\": 44015,\n  \"equity</w>\": 11293,\n  \"equivalent</w>\": 19489,\n  \"er\": 517,\n  \"er</w>\": 528,\n  \"era\": 30548,\n  \"era</w>\": 2072,\n  \"erable</w>\": 18801,\n  \"erad\": 24194,\n  \"eradic\": 36346,\n  \"eradicate</w>\": 46164,\n  \"eral</w>\": 6222,\n  \"eran</w>\": 13069,\n  \"eras\": 19325,\n  \"eras</w>\": 39090,\n  \"erase</w>\": 33893,\n  \"erased</w>\": 46762,\n  \"erasmus</w>\": 38935,\n  \"erc\": 5360,\n  \"erc</w>\": 32382,\n  \"erd</w>\": 25645,\n  \"erdo\": 21112,\n  \"erdogan</w>\": 24453,\n  \"ere\": 17907,\n  \"ere</w>\": 642,\n  \"erec\": 21526,\n  \"erected</w>\": 39365,\n  \"ered</w>\": 9097,\n  \"eres</w>\": 15751,\n  \"ergon\": 38120,\n  \"ergy</w>\": 19550,\n  \"eri\": 2769,\n  \"eri</w>\": 9509,\n  \"eria</w>\": 11634,\n  \"erial</w>\": 5409,\n  \"eric\": 1206,\n  \"eric</w>\": 5396,\n  \"erica</w>\": 13208,\n  \"erich</w>\": 26070,\n  \"erick\": 27434,\n  \"erick</w>\": 36959,\n  \"erickson</w>\": 45286,\n  \"ericsson</w>\": 39645,\n  \"eridge</w>\": 45408,\n  \"erie</w>\": 7005,\n  \"eries</w>\": 9099,\n  \"erik\": 22805,\n  \"erik</w>\": 16532,\n  \"erika</w>\": 25531,\n  \"erin\": 17532,\n  \"erin</w>\": 11333,\n  \"erina</w>\": 25176,\n  \"ering</w>\": 1785,\n  \"erit\": 23335,\n  \"eritrea</w>\": 30738,\n  \"erjee</w>\": 41665,\n  \"erly</w>\": 14380,\n  \"erm</w>\": 31649,\n  \"erman</w>\": 17990,\n  \"ern\": 6992,\n  \"ern</w>\": 12140,\n  \"ernal</w>\": 20868,\n  \"ernan</w>\": 34617,\n  \"ernation</w>\": 48796,\n  \"erne\": 33930,\n  \"ernest</w>\": 23006,\n  \"ernie</w>\": 23636,\n  \"ernity</w>\": 14653,\n  \"erno</w>\": 40812,\n  \"ernst</w>\": 30099,\n  \"ero\": 3211,\n  \"ero</w>\": 3732,\n  \"erock</w>\": 38206,\n  \"eron</w>\": 32837,\n  \"eroom</w>\": 46690,\n  \"eros</w>\": 30597,\n  \"erose</w>\": 48657,\n  \"erosion</w>\": 30174,\n  \"erotic</w>\": 30708,\n  \"erotica</w>\": 39126,\n  \"erous</w>\": 6384,\n  \"eroy</w>\": 36461,\n  \"erp</w>\": 28268,\n  \"err\": 22479,\n  \"err</w>\": 25346,\n  \"erra</w>\": 48446,\n  \"errands</w>\": 45485,\n  \"error</w>\": 12097,\n  \"errors</w>\": 21195,\n  \"erry\": 45236,\n  \"erry</w>\": 24124,\n  \"ers\": 4840,\n  \"ers</w>\": 612,\n  \"ersfc</w>\": 37925,\n  \"ership</w>\": 2884,\n  \"erson\": 25780,\n  \"erson</w>\": 6811,\n  \"ert\": 40325,\n  \"ert</w>\": 3112,\n  \"erta</w>\": 32007,\n  \"erton</w>\": 26245,\n  \"erts</w>\": 12921,\n  \"eru\": 36068,\n  \"erun</w>\": 41642,\n  \"erup\": 17093,\n  \"erupted</w>\": 48862,\n  \"eruption</w>\": 33705,\n  \"erville</w>\": 37557,\n  \"erwin</w>\": 43724,\n  \"ery\": 12467,\n  \"ery</w>\": 1692,\n  \"erz</w>\": 38711,\n  \"es\": 957,\n  \"es</w>\": 542,\n  \"esa\": 46834,\n  \"esa</w>\": 12489,\n  \"esanders</w>\": 23099,\n  \"esc\": 3330,\n  \"esc</w>\": 28420,\n  \"escal\": 15902,\n  \"escap\": 11499,\n  \"escape\": 32484,\n  \"escape</w>\": 7568,\n  \"escaped</w>\": 18707,\n  \"escapes</w>\": 29916,\n  \"escaping</w>\": 21767,\n  \"escar\": 39229,\n  \"escence</w>\": 37972,\n  \"esch\": 46760,\n  \"esch</w>\": 41945,\n  \"esco\": 32482,\n  \"escobar</w>\": 48807,\n  \"escor\": 24360,\n  \"escort</w>\": 24976,\n  \"escorted</w>\": 47667,\n  \"escorts</w>\": 48574,\n  \"escu\": 36517,\n  \"esday</w>\": 19553,\n  \"ese\": 18766,\n  \"ese</w>\": 2260,\n  \"esg</w>\": 41674,\n  \"esh\": 17119,\n  \"esh</w>\": 13407,\n  \"esha</w>\": 28799,\n  \"eshop\": 38451,\n  \"eshop</w>\": 45570,\n  \"eshopsuk</w>\": 39349,\n  \"esi</w>\": 30064,\n  \"esis</w>\": 12414,\n  \"esk\": 19359,\n  \"esl</w>\": 26201,\n  \"eso\": 29890,\n  \"eso</w>\": 28921,\n  \"esof\": 17047,\n  \"eson\": 46845,\n  \"esp\": 3849,\n  \"esp</w>\": 13870,\n  \"espa\": 37301,\n  \"espan\": 41731,\n  \"espaÃ±a</w>\": 41118,\n  \"especially</w>\": 4878,\n  \"esper\": 29216,\n  \"espino\": 46633,\n  \"espionage</w>\": 43498,\n  \"espn\": 22917,\n  \"espn</w>\": 7540,\n  \"espnu</w>\": 47747,\n  \"espo\": 34381,\n  \"esports</w>\": 16035,\n  \"espresso</w>\": 17098,\n  \"esq</w>\": 47352,\n  \"esqu\": 34616,\n  \"esque</w>\": 25877,\n  \"ess\": 3118,\n  \"ess</w>\": 9764,\n  \"essa</w>\": 39125,\n  \"essay</w>\": 12751,\n  \"essays</w>\": 27328,\n  \"esse</w>\": 22305,\n  \"essen</w>\": 30489,\n  \"essence</w>\": 17830,\n  \"essenti\": 11163,\n  \"essential\": 47264,\n  \"essential</w>\": 6895,\n  \"essentially</w>\": 30042,\n  \"essentials</w>\": 16191,\n  \"essex\": 30563,\n  \"essex</w>\": 11623,\n  \"est\": 2291,\n  \"est</w>\": 1509,\n  \"esta\": 41449,\n  \"esta</w>\": 10135,\n  \"estab\": 7010,\n  \"establi\": 8412,\n  \"establish</w>\": 19709,\n  \"established</w>\": 13143,\n  \"establishing</w>\": 29420,\n  \"establishment</w>\": 20213,\n  \"estas</w>\": 39072,\n  \"estate\": 47130,\n  \"estate</w>\": 6159,\n  \"estates</w>\": 26054,\n  \"este\": 12968,\n  \"este</w>\": 20579,\n  \"esteban</w>\": 48381,\n  \"esteem</w>\": 31541,\n  \"esteemed</w>\": 36293,\n  \"ester</w>\": 45808,\n  \"esthe\": 18468,\n  \"esther</w>\": 24393,\n  \"estim\": 8904,\n  \"estimate</w>\": 21883,\n  \"estimated</w>\": 16665,\n  \"estimates</w>\": 21957,\n  \"esto\": 31589,\n  \"esto</w>\": 23958,\n  \"estonia</w>\": 26260,\n  \"estonian</w>\": 48895,\n  \"estrada</w>\": 48116,\n  \"estre\": 31271,\n  \"estu\": 26272,\n  \"estuary</w>\": 35269,\n  \"esur\": 35758,\n  \"esville</w>\": 39187,\n  \"esy\": 46268,\n  \"et\": 1169,\n  \"et</w>\": 875,\n  \"eta</w>\": 8761,\n  \"etal</w>\": 25221,\n  \"etary</w>\": 13074,\n  \"etc</w>\": 5353,\n  \"etched</w>\": 40411,\n  \"etching</w>\": 41375,\n  \"ete\": 38820,\n  \"ete</w>\": 40245,\n  \"eter\": 8587,\n  \"eter</w>\": 17007,\n  \"eternal</w>\": 13732,\n  \"eternally</w>\": 48486,\n  \"eternity</w>\": 23832,\n  \"eters</w>\": 18392,\n  \"etf</w>\": 31661,\n  \"eth\": 4819,\n  \"eth</w>\": 5927,\n  \"ethan\": 24245,\n  \"ethan</w>\": 15958,\n  \"ethanol</w>\": 38166,\n  \"ethe\": 21312,\n  \"ethel</w>\": 45921,\n  \"ether\": 23349,\n  \"ethere\": 18705,\n  \"ethereal</w>\": 40925,\n  \"ethereum</w>\": 19612,\n  \"ethernet</w>\": 35026,\n  \"ethi\": 10327,\n  \"ethic</w>\": 39104,\n  \"ethical\": 47041,\n  \"ethical</w>\": 17679,\n  \"ethics</w>\": 13355,\n  \"ethiop\": 10897,\n  \"ethiopia</w>\": 13920,\n  \"ethiopian</w>\": 24507,\n  \"ethnic\": 30522,\n  \"ethnic</w>\": 16344,\n  \"ethnicity</w>\": 46787,\n  \"ethno\": 34225,\n  \"ethos</w>\": 48768,\n  \"eti\": 11188,\n  \"eti</w>\": 30394,\n  \"etienne</w>\": 46118,\n  \"eties</w>\": 15137,\n  \"etihad</w>\": 38489,\n  \"etiquette</w>\": 37957,\n  \"etis\": 38216,\n  \"etisation</w>\": 39733,\n  \"etna</w>\": 41940,\n  \"eto\": 27829,\n  \"eto</w>\": 33837,\n  \"eton</w>\": 44339,\n  \"etour</w>\": 41462,\n  \"etr\": 23012,\n  \"etres</w>\": 42838,\n  \"ets</w>\": 3442,\n  \"etsy\": 13237,\n  \"etsy</w>\": 6282,\n  \"etsym\": 22902,\n  \"etsymntt</w>\": 25416,\n  \"etsyshop</w>\": 44643,\n  \"ett\": 32729,\n  \"ett</w>\": 24998,\n  \"etta</w>\": 30466,\n  \"ette\": 19981,\n  \"ette</w>\": 5212,\n  \"ettes</w>\": 35326,\n  \"etto</w>\": 44219,\n  \"etty</w>\": 40759,\n  \"etu\": 36593,\n  \"etv\": 49155,\n  \"etv</w>\": 20325,\n  \"etwork</w>\": 20585,\n  \"ety\": 25920,\n  \"ety</w>\": 2746,\n  \"etz\": 36181,\n  \"etz</w>\": 25301,\n  \"eu\": 1506,\n  \"eu</w>\": 3238,\n  \"eucalyp\": 41068,\n  \"eucalyptus</w>\": 42351,\n  \"euchar\": 38362,\n  \"eugen\": 30678,\n  \"eugene</w>\": 17760,\n  \"eul\": 46749,\n  \"eun\": 16431,\n  \"eun</w>\": 26219,\n  \"eunhyuk</w>\": 47526,\n  \"eup\": 44435,\n  \"euph\": 21386,\n  \"euphoria</w>\": 41051,\n  \"eur\": 18343,\n  \"eur</w>\": 12018,\n  \"eura\": 32605,\n  \"eure\": 25311,\n  \"euref</w>\": 48017,\n  \"eureka</w>\": 31686,\n  \"euro\": 2039,\n  \"euro</w>\": 8463,\n  \"euroleague</w>\": 46821,\n  \"europa</w>\": 18290,\n  \"europale\": 42473,\n  \"europaleague</w>\": 44029,\n  \"europarl</w>\": 44922,\n  \"europe\": 4198,\n  \"europe</w>\": 3848,\n  \"european\": 26712,\n  \"european</w>\": 4759,\n  \"europeans</w>\": 37082,\n  \"euros</w>\": 22274,\n  \"eurovision</w>\": 17593,\n  \"eurozone</w>\": 42555,\n  \"eurusd</w>\": 40895,\n  \"eus</w>\": 44214,\n  \"euston</w>\": 46905,\n  \"euthan\": 43280,\n  \"euve</w>\": 40652,\n  \"eux</w>\": 25019,\n  \"ev\": 776,\n  \"ev</w>\": 10133,\n  \"eva</w>\": 6845,\n  \"evacu\": 13187,\n  \"evacuated</w>\": 26806,\n  \"evacuation</w>\": 27353,\n  \"eval\": 25139,\n  \"eval</w>\": 9703,\n  \"evalu\": 10314,\n  \"evaluate</w>\": 27174,\n  \"evaluating</w>\": 34541,\n  \"evaluation</w>\": 17640,\n  \"evan\": 12821,\n  \"evan</w>\": 12847,\n  \"evangel\": 20518,\n  \"evangeli\": 21372,\n  \"evangelical</w>\": 36151,\n  \"evangelist</w>\": 42275,\n  \"evankirstel</w>\": 46581,\n  \"evans</w>\": 8836,\n  \"evansville</w>\": 44782,\n  \"evapor\": 33352,\n  \"evasion</w>\": 48795,\n  \"eve\": 5732,\n  \"eve</w>\": 1866,\n  \"eved</w>\": 19820,\n  \"evel\": 39315,\n  \"evelyn</w>\": 26687,\n  \"evement</w>\": 8210,\n  \"even\": 6359,\n  \"even</w>\": 1427,\n  \"evening\": 34487,\n  \"evening</w>\": 2285,\n  \"evenings</w>\": 19994,\n  \"evenly</w>\": 45974,\n  \"event\": 10612,\n  \"event</w>\": 1655,\n  \"eventful</w>\": 45628,\n  \"evento</w>\": 38155,\n  \"eventprofs</w>\": 24980,\n  \"events</w>\": 3667,\n  \"eventu\": 14055,\n  \"eventual</w>\": 45321,\n  \"eventually</w>\": 14397,\n  \"ever\": 888,\n  \"ever</w>\": 1247,\n  \"everest</w>\": 21722,\n  \"everett</w>\": 25456,\n  \"everglades</w>\": 46294,\n  \"evergreen</w>\": 23852,\n  \"everlasting</w>\": 32849,\n  \"evers</w>\": 31914,\n  \"everton</w>\": 13315,\n  \"every\": 1091,\n  \"every</w>\": 1505,\n  \"everybody</w>\": 5901,\n  \"everyday\": 25049,\n  \"everyday</w>\": 5160,\n  \"everyone</w>\": 1584,\n  \"everything\": 36376,\n  \"everything</w>\": 2410,\n  \"everytime</w>\": 16911,\n  \"everywhere</w>\": 6364,\n  \"eves</w>\": 7323,\n  \"evi\": 5348,\n  \"evi</w>\": 36989,\n  \"evic\": 21336,\n  \"eviction</w>\": 37111,\n  \"eviden\": 46220,\n  \"evidence</w>\": 6439,\n  \"evident</w>\": 34529,\n  \"evie</w>\": 47195,\n  \"evil\": 23218,\n  \"evil</w>\": 6006,\n  \"eville</w>\": 16143,\n  \"eving</w>\": 24729,\n  \"evo\": 17962,\n  \"evo</w>\": 13169,\n  \"evoc\": 43133,\n  \"evol\": 5350,\n  \"evolu\": 7725,\n  \"evolution</w>\": 8902,\n  \"evolutionary</w>\": 30629,\n  \"evolve</w>\": 23406,\n  \"evolved</w>\": 22613,\n  \"evolving</w>\": 23675,\n  \"evp</w>\": 46154,\n  \"evs</w>\": 33576,\n  \"ew\": 11942,\n  \"ew</w>\": 15428,\n  \"ewan</w>\": 40247,\n  \"ewe</w>\": 48438,\n  \"ewing</w>\": 38873,\n  \"ews</w>\": 9878,\n  \"ex\": 659,\n  \"ex</w>\": 4118,\n  \"exac\": 5460,\n  \"exact</w>\": 12651,\n  \"exactly</w>\": 5840,\n  \"exagger\": 29766,\n  \"exal\": 49324,\n  \"exam\": 4428,\n  \"exam</w>\": 8785,\n  \"examination</w>\": 20970,\n  \"examine</w>\": 25728,\n  \"examined</w>\": 44004,\n  \"examiner</w>\": 29149,\n  \"examines</w>\": 28160,\n  \"examining</w>\": 30616,\n  \"example</w>\": 6228,\n  \"examples</w>\": 14790,\n  \"exams</w>\": 14028,\n  \"exas</w>\": 47536,\n  \"exc\": 1302,\n  \"excav\": 20733,\n  \"excavation</w>\": 45909,\n  \"exce\": 10999,\n  \"exceed</w>\": 32521,\n  \"exceeded</w>\": 36221,\n  \"exceeding</w>\": 47213,\n  \"exceeds</w>\": 49353,\n  \"excel\": 28351,\n  \"excel</w>\": 18754,\n  \"excell\": 3298,\n  \"excellence</w>\": 8171,\n  \"excellency</w>\": 36503,\n  \"excellent</w>\": 4239,\n  \"excelsi\": 47315,\n  \"excep\": 8882,\n  \"except</w>\": 8541,\n  \"exception</w>\": 25018,\n  \"exceptional</w>\": 13425,\n  \"exceptionally</w>\": 29306,\n  \"excer\": 17737,\n  \"excerpt</w>\": 20586,\n  \"excess</w>\": 22491,\n  \"excessive</w>\": 21332,\n  \"exchange</w>\": 6616,\n  \"exchanged</w>\": 48919,\n  \"exchanges</w>\": 29730,\n  \"exchanging</w>\": 47760,\n  \"excit\": 10510,\n  \"excite</w>\": 47711,\n  \"excited</w>\": 1889,\n  \"excitement</w>\": 11407,\n  \"exciting</w>\": 4300,\n  \"exclu\": 3114,\n  \"exclude</w>\": 49235,\n  \"excluded</w>\": 46216,\n  \"excluding</w>\": 44326,\n  \"exclusion</w>\": 40219,\n  \"exclusive</w>\": 3747,\n  \"exclusively</w>\": 13565,\n  \"exclusives</w>\": 47149,\n  \"excu\": 7324,\n  \"excur\": 27533,\n  \"excursion</w>\": 34869,\n  \"excuse</w>\": 9266,\n  \"excuses</w>\": 19388,\n  \"exe\": 3554,\n  \"exe</w>\": 48027,\n  \"exec</w>\": 15052,\n  \"execs</w>\": 35728,\n  \"execu\": 4360,\n  \"execute</w>\": 36405,\n  \"executed</w>\": 20432,\n  \"execution</w>\": 18085,\n  \"executive</w>\": 5944,\n  \"executives</w>\": 24357,\n  \"exem\": 19753,\n  \"exemp\": 28602,\n  \"exempl\": 36371,\n  \"exemplary</w>\": 39123,\n  \"exempli\": 41934,\n  \"exempt</w>\": 44278,\n  \"exemption</w>\": 47481,\n  \"exer\": 40295,\n  \"exerc\": 5932,\n  \"exercise</w>\": 7016,\n  \"exercises</w>\": 19669,\n  \"exercising</w>\": 39036,\n  \"exeter\": 32137,\n  \"exeter</w>\": 18837,\n  \"exfoli\": 38823,\n  \"exhau\": 11154,\n  \"exhaust</w>\": 21812,\n  \"exhausted</w>\": 21741,\n  \"exhausting</w>\": 40035,\n  \"exhaustion</w>\": 49221,\n  \"exhi\": 3022,\n  \"exhib\": 3783,\n  \"exhibit\": 24992,\n  \"exhibit</w>\": 8209,\n  \"exhibiting</w>\": 23889,\n  \"exhibition</w>\": 4219,\n  \"exhibitions</w>\": 28311,\n  \"exhibitor</w>\": 44192,\n  \"exhibitors</w>\": 38542,\n  \"exhibits</w>\": 30093,\n  \"exhilar\": 40262,\n  \"exhilarating</w>\": 49289,\n  \"exi\": 5297,\n  \"exico</w>\": 38712,\n  \"exile</w>\": 28566,\n  \"exist\": 10899,\n  \"exist</w>\": 9645,\n  \"existed</w>\": 23198,\n  \"existence</w>\": 13832,\n  \"existent</w>\": 43541,\n  \"existential</w>\": 38752,\n  \"existing</w>\": 12886,\n  \"exists</w>\": 14608,\n  \"exit</w>\": 9374,\n  \"exited</w>\": 37581,\n  \"exiting</w>\": 39577,\n  \"exits</w>\": 34943,\n  \"exmoor</w>\": 48260,\n  \"exo\": 15600,\n  \"exo</w>\": 5842,\n  \"exodus</w>\": 30098,\n  \"exol</w>\": 42856,\n  \"exop\": 35288,\n  \"exoplan\": 37980,\n  \"exor\": 24506,\n  \"exorcist</w>\": 46309,\n  \"exotic</w>\": 15639,\n  \"exp\": 9923,\n  \"exp</w>\": 19066,\n  \"expan\": 7512,\n  \"expand\": 10382,\n  \"expand</w>\": 13141,\n  \"expanded</w>\": 18390,\n  \"expanding</w>\": 15755,\n  \"expands</w>\": 22223,\n  \"expanse</w>\": 46886,\n  \"expansion</w>\": 10138,\n  \"expansive</w>\": 49261,\n  \"expat</w>\": 43900,\n  \"expe\": 2560,\n  \"expect\": 9802,\n  \"expect</w>\": 5716,\n  \"expectation</w>\": 34273,\n  \"expectations</w>\": 12529,\n  \"expected</w>\": 5573,\n  \"expecting</w>\": 12525,\n  \"expects</w>\": 24536,\n  \"expedition</w>\": 16761,\n  \"expeditions</w>\": 49327,\n  \"expelled</w>\": 48834,\n  \"expen\": 7216,\n  \"expend\": 29302,\n  \"expenditure</w>\": 47044,\n  \"expense</w>\": 28473,\n  \"expenses</w>\": 21797,\n  \"expensive</w>\": 9649,\n  \"exper\": 1533,\n  \"experi\": 4723,\n  \"experience\": 31867,\n  \"experience</w>\": 2415,\n  \"experienced</w>\": 10417,\n  \"experiences</w>\": 8233,\n  \"experiencing</w>\": 16643,\n  \"experiential</w>\": 44952,\n  \"experim\": 6697,\n  \"experiment</w>\": 13079,\n  \"experimental</w>\": 16539,\n  \"experimenting</w>\": 28263,\n  \"experiments</w>\": 21077,\n  \"expert</w>\": 6284,\n  \"expertise</w>\": 16555,\n  \"experts</w>\": 6960,\n  \"expi\": 26850,\n  \"expir\": 35077,\n  \"expire</w>\": 49315,\n  \"expired</w>\": 30200,\n  \"expires</w>\": 34739,\n  \"expl\": 3261,\n  \"expla\": 3517,\n  \"explain\": 48918,\n  \"explain</w>\": 7304,\n  \"explained</w>\": 14229,\n  \"explaining</w>\": 13136,\n  \"explains</w>\": 6655,\n  \"explan\": 13294,\n  \"explanation</w>\": 16577,\n  \"explanations</w>\": 34383,\n  \"explic\": 21011,\n  \"explicit</w>\": 33228,\n  \"explo\": 3586,\n  \"explode</w>\": 31262,\n  \"exploded</w>\": 28947,\n  \"explodes</w>\": 38119,\n  \"exploding</w>\": 34683,\n  \"exploit</w>\": 36953,\n  \"exploited</w>\": 48554,\n  \"explor\": 11958,\n  \"exploration</w>\": 14043,\n  \"explore\": 10405,\n  \"explore</w>\": 5147,\n  \"explorebc</w>\": 38754,\n  \"explorecanada</w>\": 36600,\n  \"explored</w>\": 25016,\n  \"explorer</w>\": 15776,\n  \"explorers</w>\": 28491,\n  \"explores</w>\": 13996,\n  \"exploring</w>\": 7584,\n  \"explosion</w>\": 13785,\n  \"explosions</w>\": 38646,\n  \"explosive</w>\": 18888,\n  \"explosives</w>\": 44705,\n  \"expo\": 7820,\n  \"expo</w>\": 6344,\n  \"expon\": 27905,\n  \"export</w>\": 14444,\n  \"exporting</w>\": 47433,\n  \"exports</w>\": 20088,\n  \"expose</w>\": 23181,\n  \"exposed</w>\": 12180,\n  \"exposes</w>\": 33575,\n  \"exposing</w>\": 28362,\n  \"exposition</w>\": 36943,\n  \"exposure</w>\": 11903,\n  \"expre\": 6085,\n  \"express\": 18553,\n  \"express</w>\": 5642,\n  \"expressed</w>\": 20777,\n  \"expresses</w>\": 31931,\n  \"expressing</w>\": 30207,\n  \"expression</w>\": 11357,\n  \"expressions</w>\": 20314,\n  \"expressive</w>\": 42060,\n  \"expressway</w>\": 31658,\n  \"exquis\": 16575,\n  \"exquisite</w>\": 17958,\n  \"ext\": 5711,\n  \"ext</w>\": 20072,\n  \"exten\": 5555,\n  \"extend</w>\": 14492,\n  \"extended</w>\": 9614,\n  \"extending</w>\": 25652,\n  \"extends</w>\": 20688,\n  \"extension</w>\": 10275,\n  \"extensions</w>\": 24525,\n  \"extensive</w>\": 16870,\n  \"extensively</w>\": 47365,\n  \"extent</w>\": 24913,\n  \"exter\": 9797,\n  \"exterior</w>\": 19352,\n  \"extermin\": 41671,\n  \"external</w>\": 15028,\n  \"extin\": 13553,\n  \"extinct</w>\": 24488,\n  \"extinction</w>\": 21186,\n  \"extingui\": 38567,\n  \"extor\": 35620,\n  \"extr\": 29082,\n  \"extra\": 6416,\n  \"extra</w>\": 4231,\n  \"extrac\": 18550,\n  \"extract</w>\": 18962,\n  \"extraction</w>\": 28789,\n  \"extracts</w>\": 45576,\n  \"extraordin\": 23628,\n  \"extraordinaire</w>\": 30909,\n  \"extraordinary</w>\": 10982,\n  \"extras</w>\": 29817,\n  \"extravag\": 22299,\n  \"extravaganza</w>\": 29461,\n  \"extre\": 3978,\n  \"extreme\": 38357,\n  \"extreme</w>\": 8331,\n  \"extremely</w>\": 6519,\n  \"extremism</w>\": 31493,\n  \"extremist</w>\": 36383,\n  \"extremists</w>\": 41425,\n  \"extru\": 43010,\n  \"ey\": 1541,\n  \"ey</w>\": 1477,\n  \"eyang</w>\": 28915,\n  \"eye\": 5034,\n  \"eye</w>\": 3272,\n  \"eyebrow</w>\": 34250,\n  \"eyebrows</w>\": 19923,\n  \"eyed</w>\": 15512,\n  \"eyeing</w>\": 34916,\n  \"eyel\": 17075,\n  \"eyelashes</w>\": 42074,\n  \"eyeliner</w>\": 33354,\n  \"eyeon</w>\": 25126,\n  \"eyes</w>\": 3095,\n  \"eyeshadow</w>\": 35213,\n  \"eyewear</w>\": 30165,\n  \"eyewitness</w>\": 36258,\n  \"eyou\": 31996,\n  \"eyour\": 40229,\n  \"eyre</w>\": 44115,\n  \"ez\": 10082,\n  \"ez</w>\": 8387,\n  \"eze\": 25993,\n  \"eze</w>\": 27229,\n  \"ezekiel</w>\": 41428,\n  \"ezra</w>\": 27552,\n  \"f\": 69,\n  \"f</w>\": 325,\n  \"fa\": 778,\n  \"fa</w>\": 2800,\n  \"faa</w>\": 27577,\n  \"fab\": 2833,\n  \"fab</w>\": 5492,\n  \"faber\": 43461,\n  \"faber</w>\": 42488,\n  \"fabi\": 29425,\n  \"fabian</w>\": 34539,\n  \"fabio</w>\": 31666,\n  \"fabric\": 16217,\n  \"fabric</w>\": 10033,\n  \"fabricated</w>\": 40851,\n  \"fabrication</w>\": 33476,\n  \"fabrics</w>\": 23159,\n  \"fabulous</w>\": 5189,\n  \"fac\": 1053,\n  \"fac</w>\": 35438,\n  \"facade</w>\": 29217,\n  \"face\": 2545,\n  \"face</w>\": 1710,\n  \"facebook\": 36156,\n  \"facebook</w>\": 2943,\n  \"faced</w>\": 10941,\n  \"faceli\": 32023,\n  \"facelift</w>\": 36380,\n  \"faceoff</w>\": 42710,\n  \"facep\": 45285,\n  \"faces</w>\": 4905,\n  \"faceted</w>\": 43435,\n  \"facetime</w>\": 24076,\n  \"facial</w>\": 11909,\n  \"facil\": 39973,\n  \"facilit\": 13567,\n  \"facilitate</w>\": 26733,\n  \"facilitated</w>\": 43853,\n  \"facilitating</w>\": 34796,\n  \"facilities</w>\": 10388,\n  \"facility</w>\": 8165,\n  \"facing</w>\": 7619,\n  \"fact\": 17189,\n  \"fact</w>\": 3598,\n  \"factfriday</w>\": 27953,\n  \"faction</w>\": 14629,\n  \"factor\": 21082,\n  \"factor</w>\": 8124,\n  \"factories</w>\": 36492,\n  \"factors</w>\": 12733,\n  \"factory\": 42483,\n  \"factory</w>\": 6072,\n  \"facts</w>\": 5085,\n  \"factual</w>\": 45471,\n  \"faculty</w>\": 9504,\n  \"facup</w>\": 25283,\n  \"fad\": 12632,\n  \"fad</w>\": 47669,\n  \"fade</w>\": 20486,\n  \"faded</w>\": 26051,\n  \"fades</w>\": 40441,\n  \"fading</w>\": 32882,\n  \"fadnavis</w>\": 38945,\n  \"faf\": 31052,\n  \"faf</w>\": 43903,\n  \"fag\": 25617,\n  \"fag</w>\": 39305,\n  \"fah\": 25495,\n  \"fah</w>\": 35429,\n  \"fahren\": 45527,\n  \"fai\": 20519,\n  \"fai</w>\": 26384,\n  \"fail\": 7105,\n  \"fail</w>\": 6801,\n  \"failed</w>\": 8314,\n  \"failing</w>\": 15757,\n  \"fails</w>\": 13388,\n  \"failure</w>\": 8732,\n  \"failures</w>\": 25442,\n  \"faint</w>\": 30807,\n  \"fair\": 3031,\n  \"fair</w>\": 2849,\n  \"fairbanks</w>\": 43962,\n  \"faire\": 34745,\n  \"faire</w>\": 20798,\n  \"fairfax</w>\": 29368,\n  \"fairfield</w>\": 29664,\n  \"fairgrounds</w>\": 38325,\n  \"fairi\": 28884,\n  \"fairies</w>\": 33590,\n  \"fairly</w>\": 14961,\n  \"fairmont</w>\": 41547,\n  \"fairness</w>\": 29388,\n  \"fairs</w>\": 8655,\n  \"fairtrade</w>\": 33361,\n  \"fairview</w>\": 43479,\n  \"fairway</w>\": 44022,\n  \"fairy\": 17021,\n  \"fairy</w>\": 10444,\n  \"fairytale</w>\": 28944,\n  \"fais\": 23542,\n  \"faisal</w>\": 35459,\n  \"fait</w>\": 20567,\n  \"faith\": 10653,\n  \"faith</w>\": 5080,\n  \"faithful</w>\": 15511,\n  \"faiz\": 41775,\n  \"fake\": 18794,\n  \"fake</w>\": 5777,\n  \"faken\": 22853,\n  \"fakenews</w>\": 26943,\n  \"fakespeare</w>\": 49095,\n  \"fal\": 2778,\n  \"fal</w>\": 40494,\n  \"fala\": 47120,\n  \"falcon\": 22498,\n  \"falcon</w>\": 13571,\n  \"falcons</w>\": 13834,\n  \"falk\": 34648,\n  \"falkirk</w>\": 44080,\n  \"fall\": 6489,\n  \"fall</w>\": 2359,\n  \"fallen</w>\": 8688,\n  \"falling\": 48709,\n  \"falling</w>\": 7293,\n  \"fallon\": 39596,\n  \"fallon</w>\": 21281,\n  \"fallontonight</w>\": 44627,\n  \"fallout\": 49365,\n  \"fallout</w>\": 16009,\n  \"falls</w>\": 4778,\n  \"falmouth</w>\": 38261,\n  \"false\": 38948,\n  \"false</w>\": 9078,\n  \"falsely</w>\": 42321,\n  \"fam\": 1058,\n  \"fam</w>\": 5128,\n  \"fame</w>\": 6573,\n  \"famed</w>\": 23302,\n  \"famer</w>\": 24554,\n  \"famil\": 3395,\n  \"famili\": 8488,\n  \"familia</w>\": 25622,\n  \"familiar</w>\": 10020,\n  \"families</w>\": 4612,\n  \"family\": 8137,\n  \"family</w>\": 1315,\n  \"familyfun</w>\": 46308,\n  \"familytime</w>\": 47236,\n  \"familytravel</w>\": 38222,\n  \"famine</w>\": 35847,\n  \"famous\": 44811,\n  \"famous</w>\": 4096,\n  \"famously</w>\": 44505,\n  \"fan\": 1675,\n  \"fan</w>\": 2261,\n  \"fanart\": 41059,\n  \"fanart</w>\": 7855,\n  \"fanartfriday</w>\": 45346,\n  \"fanatic</w>\": 36643,\n  \"fanatics</w>\": 39610,\n  \"fanbase</w>\": 36921,\n  \"fanboy</w>\": 43369,\n  \"fanc\": 29017,\n  \"fancafe</w>\": 45080,\n  \"fanci\": 35908,\n  \"fanclub</w>\": 31530,\n  \"fancy\": 47622,\n  \"fancy</w>\": 6733,\n  \"fand\": 19684,\n  \"fandom\": 47634,\n  \"fandom</w>\": 11534,\n  \"fanfest</w>\": 42916,\n  \"fanfic</w>\": 47243,\n  \"fang\": 14269,\n  \"fang</w>\": 27428,\n  \"fangirl</w>\": 28813,\n  \"fangirling</w>\": 39463,\n  \"fanning</w>\": 37282,\n  \"fanny</w>\": 30401,\n  \"fans\": 32454,\n  \"fans</w>\": 1840,\n  \"fansign</w>\": 25288,\n  \"fant\": 4467,\n  \"fanta\": 2703,\n  \"fantaken</w>\": 39412,\n  \"fantasia</w>\": 49306,\n  \"fantastic\": 31289,\n  \"fantastic</w>\": 2935,\n  \"fantasy\": 15124,\n  \"fantasy</w>\": 5267,\n  \"fantasyfootball</w>\": 35713,\n  \"fao</w>\": 31155,\n  \"faq</w>\": 28533,\n  \"far\": 1578,\n  \"far</w>\": 2384,\n  \"fara</w>\": 48562,\n  \"farage</w>\": 28340,\n  \"farah</w>\": 31547,\n  \"fare\": 8620,\n  \"fare</w>\": 6461,\n  \"fares</w>\": 27525,\n  \"farewell</w>\": 10734,\n  \"fargo</w>\": 18870,\n  \"fari\": 26197,\n  \"farley</w>\": 43761,\n  \"farm\": 9066,\n  \"farm</w>\": 3985,\n  \"farmer\": 19735,\n  \"farmer</w>\": 10474,\n  \"farmers\": 29752,\n  \"farmers</w>\": 6402,\n  \"farmersmarket</w>\": 41808,\n  \"farmhouse</w>\": 26293,\n  \"farming</w>\": 10399,\n  \"farmington</w>\": 49305,\n  \"farmland</w>\": 45258,\n  \"farms</w>\": 11277,\n  \"farn\": 27527,\n  \"faroo\": 39147,\n  \"farra\": 33657,\n  \"farrakhan</w>\": 46293,\n  \"farrell</w>\": 24234,\n  \"fart</w>\": 34664,\n  \"farther</w>\": 42233,\n  \"fas\": 4830,\n  \"fas</w>\": 42995,\n  \"fasci\": 17191,\n  \"fascin\": 7327,\n  \"fascinated</w>\": 32964,\n  \"fascinating</w>\": 8640,\n  \"fascism</w>\": 28213,\n  \"fascist</w>\": 23870,\n  \"fascists</w>\": 43598,\n  \"fash\": 42682,\n  \"fashi\": 2099,\n  \"fashion\": 6976,\n  \"fashion</w>\": 2444,\n  \"fashionable</w>\": 24597,\n  \"fashionblogger</w>\": 31726,\n  \"fashioned</w>\": 21563,\n  \"fashioni\": 26062,\n  \"fashionista</w>\": 30415,\n  \"fashions</w>\": 37601,\n  \"fashionshow</w>\": 45653,\n  \"fashionweek</w>\": 28684,\n  \"fass\": 42398,\n  \"fast\": 8509,\n  \"fast</w>\": 1953,\n  \"fasten\": 44990,\n  \"faster</w>\": 8835,\n  \"fastest</w>\": 9808,\n  \"fasting</w>\": 24656,\n  \"fat\": 4751,\n  \"fat</w>\": 5484,\n  \"fatal</w>\": 12124,\n  \"fatalities</w>\": 44168,\n  \"fatally</w>\": 34069,\n  \"fate\": 26315,\n  \"fate</w>\": 11734,\n  \"father\": 11607,\n  \"father</w>\": 3224,\n  \"fathers</w>\": 12780,\n  \"fathersday</w>\": 16731,\n  \"fati\": 13430,\n  \"fatigue</w>\": 23747,\n  \"fatima</w>\": 28202,\n  \"fats</w>\": 30151,\n  \"fatt\": 44131,\n  \"fatty</w>\": 22953,\n  \"fau\": 5571,\n  \"fau</w>\": 31381,\n  \"faucet</w>\": 44273,\n  \"faul\": 16230,\n  \"faulkner</w>\": 37840,\n  \"fault</w>\": 13862,\n  \"faults</w>\": 42752,\n  \"faulty</w>\": 47103,\n  \"fauna</w>\": 30808,\n  \"faust</w>\": 44772,\n  \"faux</w>\": 19429,\n  \"fav\": 1355,\n  \"fav</w>\": 5426,\n  \"fave</w>\": 7272,\n  \"faves</w>\": 18003,\n  \"favor\": 1766,\n  \"favor</w>\": 12160,\n  \"favorable</w>\": 35392,\n  \"favored</w>\": 46640,\n  \"favorite\": 35262,\n  \"favorite</w>\": 1916,\n  \"favorited</w>\": 36926,\n  \"favorites</w>\": 10564,\n  \"favors</w>\": 36085,\n  \"favour\": 3111,\n  \"favour</w>\": 20469,\n  \"favourite</w>\": 3342,\n  \"favourites</w>\": 16585,\n  \"favs</w>\": 18879,\n  \"faw\": 21800,\n  \"fawad\": 46425,\n  \"fawn</w>\": 48624,\n  \"fax\": 32535,\n  \"fax</w>\": 9337,\n  \"fay\": 8939,\n  \"fay</w>\": 40074,\n  \"faye</w>\": 30257,\n  \"fayette\": 32043,\n  \"fayette</w>\": 19782,\n  \"fayetteville</w>\": 37771,\n  \"fayre</w>\": 34982,\n  \"faz\": 26238,\n  \"faze</w>\": 44880,\n  \"fb\": 22637,\n  \"fb</w>\": 3307,\n  \"fball</w>\": 29663,\n  \"fbf</w>\": 20004,\n  \"fbi</w>\": 10293,\n  \"fbloggers</w>\": 41389,\n  \"fbs</w>\": 48454,\n  \"fc\": 4278,\n  \"fc</w>\": 1399,\n  \"fca</w>\": 24540,\n  \"fcb\": 26639,\n  \"fcb</w>\": 25045,\n  \"fcbarcelona</w>\": 32174,\n  \"fcbayern</w>\": 35033,\n  \"fcblive</w>\": 44608,\n  \"fcc</w>\": 21240,\n  \"fck\": 40080,\n  \"fck</w>\": 49263,\n  \"fcofficial</w>\": 27805,\n  \"fcs</w>\": 32095,\n  \"fcu</w>\": 47898,\n  \"fd\": 16972,\n  \"fd</w>\": 11525,\n  \"fda</w>\": 17823,\n  \"fdi</w>\": 45579,\n  \"fdn</w>\": 18563,\n  \"fdny</w>\": 41084,\n  \"fdr</w>\": 42298,\n  \"fe\": 623,\n  \"fe</w>\": 873,\n  \"fear\": 8744,\n  \"fear</w>\": 5402,\n  \"feared</w>\": 31154,\n  \"fearless</w>\": 17470,\n  \"fears</w>\": 13867,\n  \"fearthe\": 33449,\n  \"feasi\": 34977,\n  \"feast\": 37963,\n  \"feast</w>\": 9564,\n  \"feat\": 1703,\n  \"feat</w>\": 5611,\n  \"feather\": 24905,\n  \"feather</w>\": 17871,\n  \"feathers</w>\": 21138,\n  \"featherweight</w>\": 44939,\n  \"feature\": 30413,\n  \"feature</w>\": 4527,\n  \"featured</w>\": 4743,\n  \"features</w>\": 4643,\n  \"featuring</w>\": 3706,\n  \"feb</w>\": 4317,\n  \"febru\": 4202,\n  \"february</w>\": 4248,\n  \"fect</w>\": 31293,\n  \"fed\": 22518,\n  \"fed</w>\": 7035,\n  \"feder\": 4737,\n  \"federal</w>\": 6369,\n  \"federation</w>\": 15530,\n  \"federer</w>\": 18246,\n  \"federico</w>\": 40539,\n  \"fedex</w>\": 32603,\n  \"fedora</w>\": 45111,\n  \"feds</w>\": 30593,\n  \"fee\": 28242,\n  \"fee</w>\": 9224,\n  \"feed\": 6662,\n  \"feed</w>\": 5839,\n  \"feedback</w>\": 8683,\n  \"feeder</w>\": 24482,\n  \"feeders</w>\": 44523,\n  \"feeding</w>\": 9879,\n  \"feeds</w>\": 21788,\n  \"feel\": 2408,\n  \"feel</w>\": 2051,\n  \"feelin</w>\": 19903,\n  \"feeling\": 33087,\n  \"feeling</w>\": 3045,\n  \"feelings</w>\": 9452,\n  \"feels</w>\": 4808,\n  \"feelthe\": 22322,\n  \"feelthebern</w>\": 27743,\n  \"fees</w>\": 11765,\n  \"feet</w>\": 4804,\n  \"fei\": 23441,\n  \"fei</w>\": 34217,\n  \"fein\": 46707,\n  \"feinstein</w>\": 41313,\n  \"fel\": 2081,\n  \"fel</w>\": 20304,\n  \"feld\": 45913,\n  \"feld</w>\": 14219,\n  \"feldman</w>\": 41942,\n  \"feli\": 7498,\n  \"felic\": 25845,\n  \"felici\": 23379,\n  \"felicia</w>\": 41139,\n  \"felicidades</w>\": 41648,\n  \"felicity</w>\": 35123,\n  \"feline</w>\": 29471,\n  \"felipe</w>\": 27681,\n  \"felix\": 33455,\n  \"felix</w>\": 16514,\n  \"feliz\": 26104,\n  \"feliz</w>\": 20221,\n  \"fell\": 33540,\n  \"fell</w>\": 6266,\n  \"fella</w>\": 17586,\n  \"fellas</w>\": 18787,\n  \"feller</w>\": 29226,\n  \"fellow\": 12099,\n  \"fellow</w>\": 5242,\n  \"fellows</w>\": 15766,\n  \"fellowship</w>\": 13857,\n  \"felony</w>\": 31068,\n  \"felt</w>\": 5413,\n  \"fem\": 24574,\n  \"fem</w>\": 36615,\n  \"fema</w>\": 41721,\n  \"female\": 22062,\n  \"female</w>\": 3970,\n  \"females</w>\": 21028,\n  \"femi</w>\": 38607,\n  \"femin\": 11423,\n  \"femini\": 11894,\n  \"feminine</w>\": 24911,\n  \"feminism</w>\": 18784,\n  \"feminist</w>\": 14921,\n  \"feminists</w>\": 38809,\n  \"femme</w>\": 31331,\n  \"fen\": 5509,\n  \"fen</w>\": 25024,\n  \"fence</w>\": 12679,\n  \"fences</w>\": 34312,\n  \"fencing</w>\": 23489,\n  \"fender</w>\": 17117,\n  \"fener\": 41208,\n  \"fenerbah\": 46652,\n  \"feng</w>\": 33291,\n  \"fennel</w>\": 28689,\n  \"fent\": 26395,\n  \"fenton</w>\": 47265,\n  \"fenway</w>\": 29206,\n  \"fer\": 1765,\n  \"fer</w>\": 2897,\n  \"fera</w>\": 37705,\n  \"feral</w>\": 29972,\n  \"ferdin\": 25541,\n  \"ferdinand</w>\": 27591,\n  \"fere</w>\": 43144,\n  \"feren\": 35652,\n  \"ference</w>\": 19984,\n  \"ferg</w>\": 44938,\n  \"fergie</w>\": 39119,\n  \"fergu\": 10988,\n  \"fergus</w>\": 42041,\n  \"ferguson</w>\": 11904,\n  \"fermentation</w>\": 45817,\n  \"fermented</w>\": 36886,\n  \"fern\": 10747,\n  \"fern</w>\": 21685,\n  \"fernandes</w>\": 44391,\n  \"fernandez</w>\": 23436,\n  \"fernando</w>\": 17140,\n  \"ferns</w>\": 38277,\n  \"feroci\": 45652,\n  \"ferr\": 7256,\n  \"ferra\": 47911,\n  \"ferrari</w>\": 9606,\n  \"ferre\": 29626,\n  \"ferred</w>\": 10432,\n  \"ferreira</w>\": 48686,\n  \"ferrell</w>\": 41112,\n  \"ferrer</w>\": 38904,\n  \"ferri\": 42008,\n  \"ferries</w>\": 28489,\n  \"ferris</w>\": 27532,\n  \"ferry\": 38936,\n  \"ferry</w>\": 10278,\n  \"fers</w>\": 12378,\n  \"fert\": 14925,\n  \"fert</w>\": 43662,\n  \"fertil\": 41987,\n  \"fertile</w>\": 44837,\n  \"fertili\": 23912,\n  \"fertility</w>\": 23528,\n  \"fertilizer</w>\": 36786,\n  \"fery</w>\": 47448,\n  \"fes</w>\": 32300,\n  \"fest\": 17383,\n  \"fest</w>\": 2590,\n  \"festa</w>\": 42124,\n  \"festi\": 1943,\n  \"festiv\": 19222,\n  \"festival\": 20946,\n  \"festival</w>\": 2240,\n  \"festivals</w>\": 17834,\n  \"festive</w>\": 9533,\n  \"festivities</w>\": 21020,\n  \"fet\": 21409,\n  \"feta</w>\": 31705,\n  \"fetal</w>\": 42031,\n  \"fetch</w>\": 30271,\n  \"fete</w>\": 34629,\n  \"fett</w>\": 37979,\n  \"fetus</w>\": 26768,\n  \"feu\": 24912,\n  \"feu</w>\": 32990,\n  \"feud</w>\": 27365,\n  \"fever\": 40896,\n  \"fever</w>\": 9989,\n  \"fevre</w>\": 43861,\n  \"few</w>\": 1939,\n  \"fewer</w>\": 19128,\n  \"fex\": 41584,\n  \"fex</w>\": 26392,\n  \"fey\": 39069,\n  \"fey</w>\": 23298,\n  \"fez</w>\": 43081,\n  \"ff\": 1021,\n  \"ff</w>\": 1304,\n  \"ffa</w>\": 15355,\n  \"ffame</w>\": 42873,\n  \"ffc</w>\": 19832,\n  \"ffe\": 1138,\n  \"ffe</w>\": 8631,\n  \"ffect</w>\": 29151,\n  \"ffed</w>\": 8448,\n  \"ffee</w>\": 26377,\n  \"ffel</w>\": 22656,\n  \"ffen</w>\": 46537,\n  \"ffer\": 27369,\n  \"ffer</w>\": 11636,\n  \"ffers</w>\": 32163,\n  \"fferty</w>\": 44771,\n  \"ffes</w>\": 46441,\n  \"ffey</w>\": 30138,\n  \"fff</w>\": 28106,\n  \"ffi\": 19961,\n  \"ffic\": 4762,\n  \"ffice</w>\": 26044,\n  \"ffici\": 3639,\n  \"fficial\": 39818,\n  \"fficial</w>\": 6463,\n  \"fficiency</w>\": 27800,\n  \"fficient</w>\": 20424,\n  \"ffin\": 12779,\n  \"ffin</w>\": 7367,\n  \"ffing</w>\": 16592,\n  \"ffins</w>\": 17898,\n  \"ffl</w>\": 39490,\n  \"ffle</w>\": 7749,\n  \"ffler</w>\": 39819,\n  \"ffles</w>\": 19344,\n  \"ffman</w>\": 15823,\n  \"ffo</w>\": 42264,\n  \"ffs</w>\": 4424,\n  \"ffxiv</w>\": 26569,\n  \"ffxv</w>\": 46786,\n  \"ffy\": 26404,\n  \"ffy</w>\": 7795,\n  \"fg\": 45977,\n  \"fg</w>\": 6823,\n  \"fgm</w>\": 32178,\n  \"fgo</w>\": 46113,\n  \"fh\": 21649,\n  \"fh</w>\": 21010,\n  \"fhs</w>\": 45094,\n  \"fi\": 701,\n  \"fi</w>\": 3589,\n  \"fia</w>\": 8827,\n  \"fiable</w>\": 34373,\n  \"fianc\": 27752,\n  \"fiance</w>\": 44114,\n  \"fiancÃ©</w>\": 34039,\n  \"fiasco</w>\": 40944,\n  \"fiat</w>\": 16740,\n  \"fiawec</w>\": 39485,\n  \"fib</w>\": 40594,\n  \"fiba</w>\": 34993,\n  \"fiber\": 35074,\n  \"fiber</w>\": 12612,\n  \"fibers</w>\": 44587,\n  \"fibre</w>\": 21401,\n  \"fibro\": 21294,\n  \"fibrosis</w>\": 36307,\n  \"fic\": 1788,\n  \"fic</w>\": 2059,\n  \"fica</w>\": 26952,\n  \"fically</w>\": 14854,\n  \"fication</w>\": 4523,\n  \"fications</w>\": 12512,\n  \"ficial</w>\": 48192,\n  \"fics</w>\": 42505,\n  \"fiction</w>\": 6218,\n  \"fictional</w>\": 25570,\n  \"fid\": 34197,\n  \"fid</w>\": 23966,\n  \"fidd\": 25218,\n  \"fiddle</w>\": 35968,\n  \"fide</w>\": 45375,\n  \"fidel\": 21740,\n  \"fidel</w>\": 36837,\n  \"fidelity</w>\": 30109,\n  \"fidget</w>\": 48664,\n  \"fie\": 28487,\n  \"fie</w>\": 10348,\n  \"fied\": 29642,\n  \"fied</w>\": 2853,\n  \"fiel\": 1361,\n  \"field\": 7571,\n  \"field</w>\": 1570,\n  \"fielder</w>\": 11046,\n  \"fieldhouse</w>\": 37969,\n  \"fielding</w>\": 30465,\n  \"fields</w>\": 6494,\n  \"fieldwork</w>\": 33155,\n  \"fiends</w>\": 37869,\n  \"fier\": 11167,\n  \"fier</w>\": 10598,\n  \"fierc\": 48609,\n  \"fierce</w>\": 13896,\n  \"fiercely</w>\": 49039,\n  \"fiers</w>\": 16113,\n  \"fiery</w>\": 24557,\n  \"fies</w>\": 9537,\n  \"fiesta</w>\": 14580,\n  \"fif\": 5309,\n  \"fifa\": 21976,\n  \"fifa</w>\": 8516,\n  \"fifaworldcup</w>\": 38819,\n  \"fifawwc</w>\": 41329,\n  \"fife</w>\": 24374,\n  \"fifteen</w>\": 29504,\n  \"fifth\": 25515,\n  \"fifth</w>\": 8772,\n  \"fifthharmony</w>\": 31075,\n  \"fifty\": 24456,\n  \"fifty</w>\": 15978,\n  \"fig\": 4814,\n  \"fig</w>\": 20719,\n  \"figaro</w>\": 48044,\n  \"figh\": 23274,\n  \"fight\": 5262,\n  \"fight</w>\": 2757,\n  \"fighter\": 35884,\n  \"fighter</w>\": 6438,\n  \"fighters</w>\": 7371,\n  \"fightfor\": 48909,\n  \"fightfor</w>\": 35740,\n  \"fighting\": 38625,\n  \"fighting</w>\": 4652,\n  \"fighton</w>\": 45578,\n  \"fights</w>\": 12132,\n  \"figs</w>\": 38882,\n  \"figu\": 6390,\n  \"figur\": 16948,\n  \"figurative</w>\": 44042,\n  \"figure\": 48820,\n  \"figure</w>\": 5274,\n  \"figured</w>\": 15630,\n  \"figures</w>\": 8739,\n  \"figurine</w>\": 33306,\n  \"figuring</w>\": 31513,\n  \"fiji\": 48270,\n  \"fiji</w>\": 18285,\n  \"fik</w>\": 46589,\n  \"fil\": 1142,\n  \"fil</w>\": 14915,\n  \"fila</w>\": 30992,\n  \"filament</w>\": 49252,\n  \"file\": 12545,\n  \"file</w>\": 4512,\n  \"filed</w>\": 13864,\n  \"files</w>\": 7850,\n  \"filet</w>\": 43155,\n  \"fili\": 9590,\n  \"filing</w>\": 16576,\n  \"filip\": 14368,\n  \"filipino</w>\": 19153,\n  \"fill\": 15904,\n  \"fill</w>\": 6277,\n  \"filled</w>\": 5589,\n  \"filler</w>\": 32816,\n  \"fillers</w>\": 45005,\n  \"fillet</w>\": 39276,\n  \"filling</w>\": 9736,\n  \"fillion</w>\": 38048,\n  \"fillmore</w>\": 43922,\n  \"fills</w>\": 21750,\n  \"filly</w>\": 27690,\n  \"film\": 5117,\n  \"film</w>\": 1860,\n  \"filmed</w>\": 15801,\n  \"filmfare</w>\": 42224,\n  \"filmfest</w>\": 24508,\n  \"filmfestival</w>\": 28066,\n  \"filming</w>\": 6866,\n  \"filmmaker</w>\": 17202,\n  \"filmmakers</w>\": 24896,\n  \"filmmaking</w>\": 18226,\n  \"films</w>\": 5370,\n  \"fils</w>\": 40271,\n  \"filter</w>\": 7541,\n  \"filtered</w>\": 29926,\n  \"filtering</w>\": 47770,\n  \"filters</w>\": 18385,\n  \"filth</w>\": 39713,\n  \"filthy</w>\": 26899,\n  \"filtr\": 21408,\n  \"filtration</w>\": 42036,\n  \"fim</w>\": 47525,\n  \"fin\": 735,\n  \"fin</w>\": 10663,\n  \"fina</w>\": 34497,\n  \"final\": 11968,\n  \"final</w>\": 1755,\n  \"finale</w>\": 7844,\n  \"finalfantasy</w>\": 44543,\n  \"finalfour</w>\": 46999,\n  \"finalist</w>\": 12620,\n  \"finalists</w>\": 13422,\n  \"finalized</w>\": 48930,\n  \"finally</w>\": 1992,\n  \"finals</w>\": 4536,\n  \"finan\": 4807,\n  \"finance</w>\": 6117,\n  \"finances</w>\": 28767,\n  \"financi\": 12846,\n  \"financial\": 19783,\n  \"financial</w>\": 4930,\n  \"financially</w>\": 28124,\n  \"financing</w>\": 18375,\n  \"finch</w>\": 18523,\n  \"find\": 18638,\n  \"find</w>\": 1416,\n  \"finder</w>\": 15045,\n  \"finders</w>\": 43884,\n  \"findia</w>\": 47064,\n  \"finding\": 37455,\n  \"finding</w>\": 6002,\n  \"findings</w>\": 16529,\n  \"findlay</w>\": 48227,\n  \"findom</w>\": 36463,\n  \"finds</w>\": 6680,\n  \"findyour\": 25936,\n  \"findyourpark</w>\": 38924,\n  \"fine\": 12042,\n  \"fine</w>\": 3797,\n  \"fineart\": 7484,\n  \"fineart</w>\": 16005,\n  \"fineartamerica</w>\": 7724,\n  \"fined</w>\": 20094,\n  \"finely</w>\": 46120,\n  \"finer</w>\": 36681,\n  \"fines</w>\": 25053,\n  \"finesse</w>\": 46047,\n  \"finest</w>\": 7707,\n  \"fing\": 6485,\n  \"fing</w>\": 17955,\n  \"finger\": 13480,\n  \"finger</w>\": 8895,\n  \"fingerprint</w>\": 39579,\n  \"fingers</w>\": 9690,\n  \"fini\": 2405,\n  \"finish\": 42178,\n  \"finish</w>\": 3958,\n  \"finished</w>\": 3078,\n  \"finisher</w>\": 38636,\n  \"finishers</w>\": 48661,\n  \"finishes</w>\": 13078,\n  \"finishing</w>\": 7912,\n  \"finite</w>\": 48312,\n  \"finity\": 41463,\n  \"finity</w>\": 21273,\n  \"fink</w>\": 40158,\n  \"finland</w>\": 10775,\n  \"finley</w>\": 41652,\n  \"finn\": 28479,\n  \"finn</w>\": 16925,\n  \"finna</w>\": 35180,\n  \"finnish</w>\": 19616,\n  \"fino</w>\": 30083,\n  \"fins</w>\": 32810,\n  \"fintech\": 48929,\n  \"fintech</w>\": 8899,\n  \"fion\": 27476,\n  \"fiona</w>\": 20099,\n  \"fior\": 37086,\n  \"fiore</w>\": 44997,\n  \"fioren\": 33188,\n  \"fiorentina</w>\": 43713,\n  \"fios</w>\": 42521,\n  \"fir\": 770,\n  \"fir</w>\": 16233,\n  \"fire\": 2951,\n  \"fire</w>\": 1769,\n  \"firearm</w>\": 40311,\n  \"firearms</w>\": 23960,\n  \"fireball</w>\": 40543,\n  \"firec\": 42806,\n  \"fired</w>\": 8846,\n  \"firefighter</w>\": 20498,\n  \"firefighters</w>\": 12600,\n  \"firefly</w>\": 33997,\n  \"firefox</w>\": 35372,\n  \"fireman</w>\": 46085,\n  \"firen\": 34752,\n  \"firenze</w>\": 38445,\n  \"fireplace</w>\": 23050,\n  \"fires</w>\": 8749,\n  \"fireside</w>\": 36185,\n  \"firework</w>\": 40750,\n  \"fireworks</w>\": 10641,\n  \"firing</w>\": 15105,\n  \"firm\": 16936,\n  \"firm</w>\": 7705,\n  \"firmly</w>\": 29156,\n  \"firms</w>\": 13655,\n  \"firmware</w>\": 42691,\n  \"first\": 6853,\n  \"first</w>\": 874,\n  \"firstdayof\": 44297,\n  \"firsth\": 48512,\n  \"firsts</w>\": 47884,\n  \"firth</w>\": 26078,\n  \"fis\": 7846,\n  \"fis</w>\": 47683,\n  \"fiscal</w>\": 20825,\n  \"fischer</w>\": 26532,\n  \"fish\": 6431,\n  \"fish</w>\": 2759,\n  \"fisher\": 11175,\n  \"fisher</w>\": 9176,\n  \"fisheries</w>\": 24612,\n  \"fisherman</w>\": 25055,\n  \"fishermen</w>\": 28547,\n  \"fishers</w>\": 42065,\n  \"fishery</w>\": 49057,\n  \"fishes</w>\": 35470,\n  \"fishing\": 31703,\n  \"fishing</w>\": 4935,\n  \"fishy</w>\": 35665,\n  \"fist\": 48340,\n  \"fist</w>\": 17085,\n  \"fit\": 2366,\n  \"fit</w>\": 2478,\n  \"fitbit</w>\": 33768,\n  \"fitch</w>\": 44614,\n  \"fitfam</w>\": 20662,\n  \"fitnes\": 47285,\n  \"fitness\": 20044,\n  \"fitness</w>\": 4838,\n  \"fits</w>\": 6401,\n  \"fitt\": 32994,\n  \"fitted</w>\": 14863,\n  \"fitter</w>\": 42096,\n  \"fitters</w>\": 32364,\n  \"fitting</w>\": 11769,\n  \"fittings</w>\": 45787,\n  \"fitz\": 11120,\n  \"fitz</w>\": 25913,\n  \"fitzgerald</w>\": 20606,\n  \"fitzpatrick</w>\": 37141,\n  \"fiu</w>\": 38374,\n  \"five\": 19508,\n  \"five</w>\": 3127,\n  \"fives</w>\": 44066,\n  \"fix\": 4596,\n  \"fix</w>\": 6028,\n  \"fixed</w>\": 9393,\n  \"fixes</w>\": 25473,\n  \"fixing</w>\": 17423,\n  \"fixture</w>\": 17317,\n  \"fixtures</w>\": 19904,\n  \"fizz</w>\": 31242,\n  \"fj\": 43183,\n  \"fj</w>\": 46447,\n  \"fjor\": 31260,\n  \"fk</w>\": 12410,\n  \"fl\": 1082,\n  \"fl</w>\": 2685,\n  \"fla\": 1577,\n  \"fla</w>\": 20292,\n  \"flag\": 11536,\n  \"flag</w>\": 4859,\n  \"flagged</w>\": 45012,\n  \"flags</w>\": 12221,\n  \"flagship</w>\": 19779,\n  \"flagstaff</w>\": 40406,\n  \"flair</w>\": 24938,\n  \"flake</w>\": 21221,\n  \"flakes</w>\": 20934,\n  \"flam\": 10559,\n  \"flame\": 40351,\n  \"flame</w>\": 13484,\n  \"flamen\": 28826,\n  \"flamenco</w>\": 37362,\n  \"flames</w>\": 13441,\n  \"flamin\": 42693,\n  \"flaming</w>\": 34782,\n  \"flamingo</w>\": 30323,\n  \"flan\": 14572,\n  \"flanagan</w>\": 28641,\n  \"flanders</w>\": 34837,\n  \"flank</w>\": 44553,\n  \"flann\": 39510,\n  \"flannel</w>\": 37807,\n  \"flap</w>\": 35253,\n  \"flappy</w>\": 40241,\n  \"flare</w>\": 21185,\n  \"flares</w>\": 46088,\n  \"flash\": 6089,\n  \"flash</w>\": 5815,\n  \"flashback\": 14616,\n  \"flashback</w>\": 11988,\n  \"flashbackfriday</w>\": 15014,\n  \"flashbacks</w>\": 47056,\n  \"flashes</w>\": 31259,\n  \"flashing</w>\": 31764,\n  \"flashlight</w>\": 37256,\n  \"flask</w>\": 36194,\n  \"flat\": 8986,\n  \"flat</w>\": 6313,\n  \"flats</w>\": 17228,\n  \"flatt\": 45498,\n  \"flattering</w>\": 43267,\n  \"flaun\": 41421,\n  \"flav\": 7191,\n  \"flavo\": 28895,\n  \"flavor\": 31835,\n  \"flavor</w>\": 11818,\n  \"flavored</w>\": 29350,\n  \"flavorful</w>\": 49135,\n  \"flavors</w>\": 16930,\n  \"flavour</w>\": 17026,\n  \"flavoured</w>\": 42397,\n  \"flavours</w>\": 21083,\n  \"flaw\": 14268,\n  \"flaw</w>\": 34978,\n  \"flawed</w>\": 35136,\n  \"flawless</w>\": 15531,\n  \"flaws</w>\": 30492,\n  \"flax</w>\": 43443,\n  \"fle\": 2428,\n  \"fle</w>\": 44964,\n  \"flea</w>\": 24883,\n  \"fleck</w>\": 28143,\n  \"fled</w>\": 26731,\n  \"flee\": 19427,\n  \"flee</w>\": 30167,\n  \"fleece</w>\": 25038,\n  \"fleeing</w>\": 30543,\n  \"fleek</w>\": 43513,\n  \"fleet\": 35922,\n  \"fleet</w>\": 9147,\n  \"fleetwood</w>\": 28883,\n  \"fleming</w>\": 25769,\n  \"fler</w>\": 48789,\n  \"flesh</w>\": 17495,\n  \"flet\": 16102,\n  \"fletcher</w>\": 19810,\n  \"fleur</w>\": 28593,\n  \"flew</w>\": 13768,\n  \"flex\": 16426,\n  \"flex</w>\": 12038,\n  \"flexi\": 10032,\n  \"flexibility</w>\": 22547,\n  \"flexible</w>\": 14502,\n  \"flexing</w>\": 48483,\n  \"fli\": 2472,\n  \"flick\": 13746,\n  \"flick</w>\": 23414,\n  \"flickr</w>\": 17755,\n  \"flies</w>\": 8070,\n  \"flight\": 24701,\n  \"flight</w>\": 3795,\n  \"flights</w>\": 10515,\n  \"flin\": 24730,\n  \"flin</w>\": 43816,\n  \"flinders</w>\": 44647,\n  \"fling</w>\": 22768,\n  \"flint\": 28306,\n  \"flint</w>\": 18324,\n  \"flip\": 20385,\n  \"flip</w>\": 11035,\n  \"flipk\": 30829,\n  \"flipkart</w>\": 33154,\n  \"flipped</w>\": 28144,\n  \"flipping</w>\": 25881,\n  \"flips</w>\": 35089,\n  \"flir\": 24330,\n  \"flirt</w>\": 38352,\n  \"flirting</w>\": 35243,\n  \"flix</w>\": 40663,\n  \"flo\": 1945,\n  \"flo</w>\": 20711,\n  \"float</w>\": 16123,\n  \"floating</w>\": 12619,\n  \"floats</w>\": 33272,\n  \"flock\": 36297,\n  \"flock</w>\": 21822,\n  \"flondon</w>\": 47366,\n  \"floo\": 4062,\n  \"flood\": 23793,\n  \"flood</w>\": 7148,\n  \"flooded</w>\": 19706,\n  \"flooding</w>\": 10204,\n  \"floods</w>\": 16369,\n  \"floor\": 23657,\n  \"floor</w>\": 4125,\n  \"flooring</w>\": 19227,\n  \"floors</w>\": 15671,\n  \"flop</w>\": 22994,\n  \"floppy</w>\": 38267,\n  \"flops</w>\": 29146,\n  \"flor\": 15784,\n  \"flor</w>\": 41669,\n  \"flora</w>\": 18906,\n  \"floral</w>\": 10732,\n  \"florals</w>\": 48331,\n  \"floren\": 37706,\n  \"florence</w>\": 11617,\n  \"flores</w>\": 21537,\n  \"flori\": 3482,\n  \"florian</w>\": 41861,\n  \"florida\": 34264,\n  \"florida</w>\": 3966,\n  \"florist</w>\": 38403,\n  \"floss</w>\": 36453,\n  \"flotus</w>\": 35181,\n  \"flour</w>\": 18592,\n  \"flouri\": 23239,\n  \"flourish</w>\": 36038,\n  \"flow\": 2180,\n  \"flow</w>\": 5608,\n  \"flower\": 12772,\n  \"flower</w>\": 4055,\n  \"flowering</w>\": 19953,\n  \"flowers</w>\": 4023,\n  \"flowing</w>\": 14922,\n  \"flown</w>\": 25659,\n  \"flows</w>\": 16715,\n  \"floyd\": 46369,\n  \"floyd</w>\": 13656,\n  \"flu\": 3698,\n  \"flu</w>\": 13528,\n  \"fluctu\": 40181,\n  \"fluence</w>\": 38169,\n  \"fluent</w>\": 30025,\n  \"fluff</w>\": 31174,\n  \"fluffy\": 40346,\n  \"fluffy</w>\": 17054,\n  \"fluid\": 43803,\n  \"fluid</w>\": 16717,\n  \"fluids</w>\": 41490,\n  \"fluor\": 45127,\n  \"fluore\": 26974,\n  \"fluorescent</w>\": 35036,\n  \"fluori\": 45611,\n  \"flur\": 31591,\n  \"flush</w>\": 25777,\n  \"flushing</w>\": 43754,\n  \"flute</w>\": 23746,\n  \"flux</w>\": 25249,\n  \"flwx</w>\": 30907,\n  \"fly\": 5666,\n  \"fly</w>\": 3228,\n  \"flye\": 30873,\n  \"flyeagles\": 39927,\n  \"flyeaglesfly</w>\": 39931,\n  \"flyer</w>\": 11875,\n  \"flyers</w>\": 14181,\n  \"flyfishing</w>\": 31800,\n  \"flying\": 20782,\n  \"flying</w>\": 4610,\n  \"flyn\": 40676,\n  \"flynn</w>\": 15721,\n  \"flyo\": 33506,\n  \"flyover</w>\": 38083,\n  \"fm\": 13715,\n  \"fm</w>\": 3689,\n  \"fman</w>\": 25152,\n  \"fml</w>\": 26730,\n  \"fmr</w>\": 32875,\n  \"fn\": 22773,\n  \"fn</w>\": 21763,\n  \"fnc</w>\": 46506,\n  \"fo\": 898,\n  \"fo</w>\": 6157,\n  \"foal</w>\": 40386,\n  \"foam\": 30039,\n  \"foam</w>\": 14587,\n  \"foamed</w>\": 26711,\n  \"fob</w>\": 40315,\n  \"focal</w>\": 30934,\n  \"focu\": 5827,\n  \"focus</w>\": 4353,\n  \"focused</w>\": 9319,\n  \"focuses</w>\": 20093,\n  \"focusing</w>\": 15551,\n  \"fod\": 31015,\n  \"fod</w>\": 43299,\n  \"fodils</w>\": 44411,\n  \"foe</w>\": 22952,\n  \"foes</w>\": 46279,\n  \"fog</w>\": 9417,\n  \"foggy</w>\": 19770,\n  \"foil</w>\": 17302,\n  \"fol\": 1106,\n  \"fol</w>\": 48616,\n  \"fold\": 35201,\n  \"fold</w>\": 11021,\n  \"foldable</w>\": 48307,\n  \"folded</w>\": 25233,\n  \"folder</w>\": 25717,\n  \"folding</w>\": 15464,\n  \"folds</w>\": 24266,\n  \"foley</w>\": 22850,\n  \"foli\": 7713,\n  \"folia</w>\": 48964,\n  \"foliage</w>\": 26350,\n  \"folio</w>\": 10772,\n  \"folk\": 10665,\n  \"folk</w>\": 6032,\n  \"folke\": 47190,\n  \"folkl\": 27273,\n  \"folklore\": 22133,\n  \"folklore</w>\": 28620,\n  \"folklorethursday</w>\": 23270,\n  \"folks</w>\": 5422,\n  \"follo\": 41417,\n  \"follow\": 1964,\n  \"follow</w>\": 1979,\n  \"followart</w>\": 40957,\n  \"followback</w>\": 33863,\n  \"followed</w>\": 6499,\n  \"follower</w>\": 17039,\n  \"followers</w>\": 4856,\n  \"following</w>\": 3473,\n  \"followme</w>\": 29668,\n  \"followparty</w>\": 44757,\n  \"follows</w>\": 11287,\n  \"followthe\": 30747,\n  \"folly</w>\": 41408,\n  \"folsom</w>\": 42108,\n  \"fom\": 34540,\n  \"fon\": 5017,\n  \"fon</w>\": 38318,\n  \"fond</w>\": 19964,\n  \"fonda</w>\": 44609,\n  \"fondue</w>\": 48321,\n  \"fone</w>\": 40672,\n  \"font\": 37610,\n  \"font</w>\": 16248,\n  \"fontaine</w>\": 37864,\n  \"fontana</w>\": 43643,\n  \"fontein</w>\": 45062,\n  \"fonts</w>\": 32801,\n  \"foo\": 1183,\n  \"foo</w>\": 23435,\n  \"food\": 4586,\n  \"food</w>\": 1559,\n  \"foodand\": 38317,\n  \"foodbank</w>\": 31926,\n  \"foodie\": 30762,\n  \"foodie</w>\": 9847,\n  \"foodies</w>\": 22416,\n  \"foodnetwork</w>\": 46793,\n  \"foods</w>\": 7057,\n  \"foodsecurity</w>\": 49329,\n  \"foodtruck</w>\": 47682,\n  \"fool\": 23959,\n  \"fool</w>\": 12212,\n  \"fooled</w>\": 28761,\n  \"fooling</w>\": 47964,\n  \"foolish</w>\": 33824,\n  \"fools</w>\": 15946,\n  \"foot\": 6702,\n  \"foot</w>\": 4738,\n  \"footage</w>\": 11130,\n  \"footb\": 33466,\n  \"football\": 9376,\n  \"football</w>\": 1882,\n  \"footballer</w>\": 20646,\n  \"footballers</w>\": 30269,\n  \"footed</w>\": 38040,\n  \"footh\": 25951,\n  \"foothills</w>\": 37020,\n  \"footpath</w>\": 48858,\n  \"footprint</w>\": 23206,\n  \"footprints</w>\": 39640,\n  \"footsteps</w>\": 27289,\n  \"footwear</w>\": 22772,\n  \"footy\": 39866,\n  \"footy</w>\": 18922,\n  \"for\": 645,\n  \"for</w>\": 556,\n  \"forage</w>\": 46871,\n  \"foraging</w>\": 39056,\n  \"forall</w>\": 17824,\n  \"forbe\": 49098,\n  \"forbes</w>\": 13925,\n  \"forbi\": 24754,\n  \"forbidden</w>\": 25164,\n  \"force\": 12068,\n  \"force</w>\": 2869,\n  \"forced</w>\": 8201,\n  \"forces</w>\": 5381,\n  \"forchange</w>\": 35848,\n  \"forcing</w>\": 21573,\n  \"ford\": 3751,\n  \"ford</w>\": 1623,\n  \"fordfc</w>\": 28581,\n  \"fordham</w>\": 48792,\n  \"fords</w>\": 29351,\n  \"fordshire</w>\": 14645,\n  \"fore\": 1484,\n  \"fore</w>\": 1332,\n  \"forec\": 34155,\n  \"forecast</w>\": 7361,\n  \"forecasting</w>\": 38133,\n  \"forecasts</w>\": 27696,\n  \"foreclo\": 44916,\n  \"forefront</w>\": 37679,\n  \"foreground</w>\": 35186,\n  \"forehead</w>\": 25394,\n  \"foreig\": 26497,\n  \"foreign\": 42255,\n  \"foreign</w>\": 6046,\n  \"foreigners</w>\": 38549,\n  \"foreman</w>\": 36174,\n  \"foremost</w>\": 42128,\n  \"foren\": 16526,\n  \"forensic</w>\": 23158,\n  \"forensics</w>\": 38763,\n  \"forest\": 18760,\n  \"forest</w>\": 4167,\n  \"forestation</w>\": 33939,\n  \"forestry</w>\": 26281,\n  \"forests</w>\": 14095,\n  \"forever\": 14748,\n  \"forever</w>\": 3225,\n  \"forevery\": 40605,\n  \"forex\": 40200,\n  \"forex</w>\": 17395,\n  \"forfe\": 44871,\n  \"forge</w>\": 19232,\n  \"forged</w>\": 28105,\n  \"forget\": 46153,\n  \"forget</w>\": 2678,\n  \"forgets</w>\": 35613,\n  \"forgetting</w>\": 25452,\n  \"forgi\": 22080,\n  \"forgive</w>\": 15332,\n  \"forgiven</w>\": 44894,\n  \"forgiveness</w>\": 23585,\n  \"forgood</w>\": 39169,\n  \"forgot</w>\": 6483,\n  \"forgotten</w>\": 7994,\n  \"fork\": 24501,\n  \"fork</w>\": 13700,\n  \"forkids</w>\": 48571,\n  \"forklift</w>\": 43202,\n  \"forks</w>\": 28769,\n  \"forlife</w>\": 17624,\n  \"form\": 1157,\n  \"form</w>\": 1907,\n  \"forma</w>\": 38829,\n  \"formal</w>\": 12978,\n  \"formally</w>\": 24867,\n  \"format\": 16252,\n  \"format</w>\": 11874,\n  \"formation</w>\": 2510,\n  \"formations</w>\": 37715,\n  \"formative</w>\": 48882,\n  \"formats</w>\": 32085,\n  \"forme</w>\": 42085,\n  \"formed</w>\": 6528,\n  \"former</w>\": 2276,\n  \"formerly</w>\": 20866,\n  \"formid\": 38599,\n  \"formidable</w>\": 39834,\n  \"forming</w>\": 15443,\n  \"formity</w>\": 42290,\n  \"forms</w>\": 5161,\n  \"formu\": 8689,\n  \"formul\": 23923,\n  \"formula\": 24485,\n  \"formula</w>\": 10776,\n  \"formulae</w>\": 34586,\n  \"formulated</w>\": 45066,\n  \"forre\": 38876,\n  \"forrest</w>\": 25205,\n  \"forrester</w>\": 45338,\n  \"forsa\": 48958,\n  \"forsale</w>\": 13303,\n  \"forster</w>\": 42923,\n  \"forsy\": 29629,\n  \"forsyth</w>\": 40952,\n  \"fort\": 12300,\n  \"fort</w>\": 2921,\n  \"forte\": 44350,\n  \"forte</w>\": 27367,\n  \"forth\": 17068,\n  \"forth</w>\": 11932,\n  \"forthcoming</w>\": 19989,\n  \"forthe\": 12521,\n  \"forti\": 26984,\n  \"fortified</w>\": 46486,\n  \"fortn\": 14428,\n  \"fortnight</w>\": 39235,\n  \"fortnite\": 38734,\n  \"fortnite</w>\": 17890,\n  \"fortress</w>\": 19988,\n  \"fortun\": 6950,\n  \"fortunate</w>\": 19898,\n  \"fortunately</w>\": 34358,\n  \"fortune\": 40931,\n  \"fortune</w>\": 11451,\n  \"fortunes</w>\": 41989,\n  \"forty</w>\": 24399,\n  \"forum\": 37851,\n  \"forum</w>\": 4538,\n  \"forums</w>\": 31518,\n  \"forwar\": 34364,\n  \"forward\": 47031,\n  \"forward</w>\": 2342,\n  \"forwards</w>\": 38974,\n  \"foryou</w>\": 35150,\n  \"forz\": 46056,\n  \"forza\": 33293,\n  \"forza</w>\": 28089,\n  \"fos\": 36925,\n  \"fos</w>\": 22081,\n  \"foss\": 14240,\n  \"foss</w>\": 37911,\n  \"fossil\": 20419,\n  \"fossil</w>\": 15202,\n  \"fossilfriday</w>\": 26079,\n  \"fossils</w>\": 30652,\n  \"foster\": 26778,\n  \"foster</w>\": 8139,\n  \"fostering</w>\": 35996,\n  \"fosters</w>\": 37644,\n  \"foto\": 15908,\n  \"foto</w>\": 12823,\n  \"fotogra\": 23687,\n  \"fotografia</w>\": 40256,\n  \"fotos</w>\": 26124,\n  \"fou\": 14516,\n  \"fought</w>\": 10844,\n  \"foul</w>\": 19784,\n  \"foun\": 3154,\n  \"found\": 3454,\n  \"found</w>\": 1546,\n  \"foundation</w>\": 4058,\n  \"foundations</w>\": 25219,\n  \"founded</w>\": 12240,\n  \"founder</w>\": 5145,\n  \"founders</w>\": 14602,\n  \"founding</w>\": 15317,\n  \"foundry</w>\": 31426,\n  \"fountain\": 44863,\n  \"fountain</w>\": 13405,\n  \"fountains</w>\": 37411,\n  \"four\": 5113,\n  \"four</w>\": 2721,\n  \"foursquare</w>\": 34484,\n  \"fourteen</w>\": 46255,\n  \"fourth</w>\": 7516,\n  \"fourthofjuly</w>\": 47805,\n  \"fow\": 17084,\n  \"fowl</w>\": 31685,\n  \"fowler</w>\": 20980,\n  \"fox\": 5007,\n  \"fox</w>\": 3240,\n  \"foxandfriends</w>\": 45841,\n  \"foxes</w>\": 24145,\n  \"foxnews</w>\": 18830,\n  \"foxsports</w>\": 39267,\n  \"foxtv</w>\": 49396,\n  \"foxx</w>\": 32993,\n  \"foxy</w>\": 27945,\n  \"foy</w>\": 30284,\n  \"foyer</w>\": 38011,\n  \"foyle</w>\": 47902,\n  \"fp\": 28058,\n  \"fp</w>\": 8941,\n  \"fpl</w>\": 27970,\n  \"fpp</w>\": 36464,\n  \"fps</w>\": 25300,\n  \"fpv</w>\": 43175,\n  \"fr\": 936,\n  \"fr</w>\": 5512,\n  \"fra\": 3368,\n  \"fra</w>\": 15644,\n  \"frac\": 15607,\n  \"fracking</w>\": 21894,\n  \"fractal</w>\": 46471,\n  \"fraction</w>\": 26788,\n  \"fractu\": 25847,\n  \"fracture</w>\": 28995,\n  \"fractured</w>\": 37421,\n  \"fractures</w>\": 46213,\n  \"frag\": 13093,\n  \"fragile</w>\": 23579,\n  \"fragment</w>\": 39209,\n  \"fragments</w>\": 41424,\n  \"fragr\": 15403,\n  \"fragrance</w>\": 17874,\n  \"fragrances</w>\": 44567,\n  \"fragrant</w>\": 37030,\n  \"fram\": 27987,\n  \"frame\": 11029,\n  \"frame</w>\": 6481,\n  \"framed</w>\": 13135,\n  \"frames</w>\": 15479,\n  \"framework</w>\": 13195,\n  \"frameworks</w>\": 43136,\n  \"framing</w>\": 24539,\n  \"frampton</w>\": 41733,\n  \"fran\": 2118,\n  \"fran</w>\": 18878,\n  \"franc\": 3872,\n  \"franc</w>\": 42340,\n  \"franca\": 48952,\n  \"france\": 12045,\n  \"france</w>\": 3552,\n  \"frances</w>\": 20803,\n  \"francesca</w>\": 32327,\n  \"francesco</w>\": 25816,\n  \"franch\": 11756,\n  \"franchi\": 46438,\n  \"franchise</w>\": 13664,\n  \"franci\": 46458,\n  \"francis\": 22187,\n  \"francis</w>\": 7660,\n  \"francisco</w>\": 6887,\n  \"franco\": 17934,\n  \"franco</w>\": 17052,\n  \"francois</w>\": 29317,\n  \"frank\": 5390,\n  \"frank</w>\": 5229,\n  \"franken\": 20487,\n  \"franken</w>\": 48252,\n  \"frankenstein</w>\": 26410,\n  \"frankfur\": 17442,\n  \"frankfurt</w>\": 18598,\n  \"franki\": 39227,\n  \"frankie\": 38373,\n  \"frankie</w>\": 16215,\n  \"franklin\": 40935,\n  \"franklin</w>\": 9999,\n  \"frankly</w>\": 38015,\n  \"franks</w>\": 42855,\n  \"frans</w>\": 47892,\n  \"franz</w>\": 25449,\n  \"franÃ§\": 38381,\n  \"fraser\": 39082,\n  \"fraser</w>\": 16754,\n  \"frat\": 15225,\n  \"frat</w>\": 39292,\n  \"fraternity</w>\": 24433,\n  \"frau\": 23063,\n  \"fraud\": 40647,\n  \"fraud</w>\": 9961,\n  \"fraudul\": 42655,\n  \"fraudulent</w>\": 47408,\n  \"fray</w>\": 41154,\n  \"frazier</w>\": 32841,\n  \"frc</w>\": 41507,\n  \"fre\": 821,\n  \"fre</w>\": 43165,\n  \"freak\": 20352,\n  \"freak</w>\": 13701,\n  \"freaked</w>\": 43511,\n  \"freakin</w>\": 23900,\n  \"freaking</w>\": 11992,\n  \"freaks</w>\": 27009,\n  \"freaky</w>\": 31583,\n  \"freck\": 33328,\n  \"freckles</w>\": 48036,\n  \"fred\": 9486,\n  \"fred</w>\": 6678,\n  \"freddie\": 41890,\n  \"freddie</w>\": 17014,\n  \"freddy</w>\": 24394,\n  \"freder\": 10745,\n  \"frederic</w>\": 41165,\n  \"frederick\": 37103,\n  \"frederick</w>\": 18570,\n  \"fredo</w>\": 48241,\n  \"free\": 2065,\n  \"free</w>\": 1139,\n  \"freebie</w>\": 35865,\n  \"freebies</w>\": 28630,\n  \"freec\": 46569,\n  \"freed\": 12585,\n  \"freed</w>\": 23392,\n  \"freedom\": 17992,\n  \"freedom</w>\": 4511,\n  \"freedoms</w>\": 32500,\n  \"freef\": 48678,\n  \"freel\": 14174,\n  \"freelance</w>\": 21942,\n  \"freely</w>\": 24436,\n  \"freeman</w>\": 16450,\n  \"freep\": 32499,\n  \"freepalestine</w>\": 39242,\n  \"freer\": 44676,\n  \"frees\": 27455,\n  \"freestyle</w>\": 15594,\n  \"freeway</w>\": 24927,\n  \"freeze</w>\": 14187,\n  \"freezer</w>\": 25390,\n  \"freezing</w>\": 12499,\n  \"frei\": 30183,\n  \"freight</w>\": 17023,\n  \"fremantle</w>\": 48012,\n  \"fremont</w>\": 34578,\n  \"fren\": 2919,\n  \"french\": 13118,\n  \"french</w>\": 3461,\n  \"frenzy</w>\": 30084,\n  \"frequ\": 9211,\n  \"frequencies</w>\": 45319,\n  \"frequency</w>\": 18825,\n  \"frequent</w>\": 19836,\n  \"frequently</w>\": 22434,\n  \"fresco</w>\": 31609,\n  \"fresh\": 4065,\n  \"fresh</w>\": 2975,\n  \"fresher</w>\": 49284,\n  \"freshers</w>\": 35810,\n  \"freshest</w>\": 46809,\n  \"freshly</w>\": 16081,\n  \"freshman</w>\": 9381,\n  \"freshmen</w>\": 21292,\n  \"freshness</w>\": 45872,\n  \"freshwater</w>\": 24803,\n  \"fresno\": 40879,\n  \"fresno</w>\": 20995,\n  \"fret</w>\": 40510,\n  \"freud</w>\": 40787,\n  \"frey\": 22136,\n  \"frey</w>\": 9082,\n  \"fri\": 815,\n  \"fri</w>\": 6882,\n  \"friars</w>\": 30513,\n  \"fric\": 18981,\n  \"frick</w>\": 46304,\n  \"friction</w>\": 38563,\n  \"frid</w>\": 46388,\n  \"frida</w>\": 36001,\n  \"friday\": 6350,\n  \"friday</w>\": 1461,\n  \"fridayfeeling</w>\": 11952,\n  \"fridaymotivation</w>\": 38544,\n  \"fridaynight\": 44858,\n  \"fridayreads</w>\": 37736,\n  \"fridays</w>\": 15589,\n  \"fridaythe</w>\": 47642,\n  \"fridge</w>\": 13491,\n  \"fridges</w>\": 40734,\n  \"frie\": 36999,\n  \"fried\": 13743,\n  \"fried</w>\": 7310,\n  \"friedman</w>\": 29402,\n  \"friedrich</w>\": 34171,\n  \"friend\": 3017,\n  \"friend</w>\": 1625,\n  \"friendly\": 44612,\n  \"friendly</w>\": 4681,\n  \"friends\": 38875,\n  \"friends</w>\": 1574,\n  \"friendship\": 42674,\n  \"friendship</w>\": 7679,\n  \"friendships</w>\": 28840,\n  \"fries</w>\": 11369,\n  \"frifotos</w>\": 40493,\n  \"friger\": 20785,\n  \"friggin</w>\": 48300,\n  \"frigh\": 34831,\n  \"fright\": 24277,\n  \"fright</w>\": 40207,\n  \"frightened</w>\": 47136,\n  \"frightening</w>\": 39290,\n  \"fringe</w>\": 10640,\n  \"fris\": 37252,\n  \"frisbee</w>\": 45768,\n  \"frisco</w>\": 35945,\n  \"frit\": 34614,\n  \"fritz</w>\": 29860,\n  \"friyay</w>\": 38887,\n  \"frm</w>\": 12951,\n  \"fro\": 626,\n  \"fro</w>\": 26603,\n  \"frock</w>\": 45306,\n  \"frog\": 26494,\n  \"frog</w>\": 11438,\n  \"frogs</w>\": 20781,\n  \"from\": 8330,\n  \"from</w>\": 633,\n  \"frome</w>\": 48691,\n  \"fromhome</w>\": 41477,\n  \"fromthe\": 18756,\n  \"fron\": 1847,\n  \"fron</w>\": 18036,\n  \"front\": 10996,\n  \"front</w>\": 2184,\n  \"frontal</w>\": 35794,\n  \"frontier</w>\": 18253,\n  \"frontiers</w>\": 38396,\n  \"frontline</w>\": 29589,\n  \"frontman</w>\": 36775,\n  \"fronts</w>\": 26846,\n  \"froome</w>\": 48560,\n  \"frosh</w>\": 47069,\n  \"frost\": 39420,\n  \"frost</w>\": 11619,\n  \"frosted</w>\": 35988,\n  \"frosting</w>\": 33872,\n  \"frosty</w>\": 22760,\n  \"froze</w>\": 47788,\n  \"frozen\": 42464,\n  \"frozen</w>\": 8507,\n  \"frs</w>\": 26216,\n  \"fru\": 3248,\n  \"fruit\": 16771,\n  \"fruit</w>\": 5190,\n  \"fruitful</w>\": 31494,\n  \"fruits</w>\": 13282,\n  \"fruity</w>\": 22320,\n  \"frustr\": 16046,\n  \"frustrated</w>\": 25111,\n  \"frustrating</w>\": 31342,\n  \"frustration</w>\": 30535,\n  \"fry\": 33914,\n  \"fry</w>\": 13686,\n  \"fryer</w>\": 49217,\n  \"frying</w>\": 38516,\n  \"fs\": 23699,\n  \"fs</w>\": 3854,\n  \"fsa</w>\": 33373,\n  \"fsu\": 44185,\n  \"fsu</w>\": 19317,\n  \"ft\": 3391,\n  \"ft</w>\": 981,\n  \"fta</w>\": 41975,\n  \"ftc</w>\": 33752,\n  \"fted</w>\": 5612,\n  \"fter</w>\": 25063,\n  \"fthe\": 22886,\n  \"ftheday</w>\": 9823,\n  \"fting</w>\": 6174,\n  \"fton</w>\": 26605,\n  \"ftp</w>\": 42649,\n  \"fts</w>\": 3767,\n  \"ftse</w>\": 46717,\n  \"ftw</w>\": 19298,\n  \"fty</w>\": 17494,\n  \"fu\": 665,\n  \"fu</w>\": 9098,\n  \"fuch\": 42617,\n  \"fudge</w>\": 24270,\n  \"fue</w>\": 43723,\n  \"fuego</w>\": 41500,\n  \"fuel\": 21113,\n  \"fuel</w>\": 5945,\n  \"fueled</w>\": 28792,\n  \"fueling</w>\": 38793,\n  \"fuelled</w>\": 48357,\n  \"fuels</w>\": 19365,\n  \"fuentes</w>\": 44393,\n  \"fuer\": 29645,\n  \"fug\": 29227,\n  \"fugitive</w>\": 39257,\n  \"fuji\": 15573,\n  \"fuji</w>\": 21634,\n  \"fujifilm</w>\": 24765,\n  \"fuk</w>\": 31051,\n  \"fuku\": 20728,\n  \"fukushima</w>\": 33929,\n  \"ful\": 1814,\n  \"ful</w>\": 857,\n  \"fulbright</w>\": 41834,\n  \"fulfill\": 43675,\n  \"fulfill</w>\": 27467,\n  \"fulfilled</w>\": 29919,\n  \"fulfilling</w>\": 30621,\n  \"fulfillment</w>\": 45573,\n  \"fulham</w>\": 25574,\n  \"full\": 9407,\n  \"full</w>\": 1476,\n  \"fuller</w>\": 20225,\n  \"fullerton</w>\": 42822,\n  \"fullest</w>\": 35603,\n  \"fully\": 39142,\n  \"fully</w>\": 2401,\n  \"fulness</w>\": 10526,\n  \"fuls</w>\": 41606,\n  \"fulton</w>\": 26725,\n  \"fum</w>\": 38393,\n  \"fumble</w>\": 49373,\n  \"fun\": 1229,\n  \"fun</w>\": 1499,\n  \"func\": 8679,\n  \"function</w>\": 8093,\n  \"functional</w>\": 12885,\n  \"functionality</w>\": 33316,\n  \"functioning</w>\": 25479,\n  \"functions</w>\": 18001,\n  \"fund\": 19089,\n  \"fund</w>\": 4877,\n  \"fundam\": 11670,\n  \"fundament\": 18852,\n  \"fundamental</w>\": 17627,\n  \"fundamentally</w>\": 45378,\n  \"fundamentals</w>\": 27887,\n  \"funday</w>\": 15439,\n  \"funded</w>\": 10588,\n  \"funding</w>\": 5588,\n  \"fundra\": 6201,\n  \"fundraiser</w>\": 10049,\n  \"fundraising</w>\": 10755,\n  \"funds</w>\": 7066,\n  \"funer\": 40693,\n  \"funeral</w>\": 10606,\n  \"funfact</w>\": 31596,\n  \"funfactfriday</w>\": 40710,\n  \"fungal</w>\": 38838,\n  \"fungi</w>\": 27837,\n  \"fungus</w>\": 30677,\n  \"funk\": 37353,\n  \"funk</w>\": 13372,\n  \"funko\": 49402,\n  \"funko</w>\": 23697,\n  \"funky</w>\": 16492,\n  \"funnel</w>\": 27862,\n  \"funnier</w>\": 42232,\n  \"funniest</w>\": 15557,\n  \"funny\": 19124,\n  \"funny</w>\": 3789,\n  \"funrun</w>\": 34185,\n  \"fur\": 2395,\n  \"fur</w>\": 9686,\n  \"furi\": 40816,\n  \"furious</w>\": 17522,\n  \"furman</w>\": 49238,\n  \"furn\": 21348,\n  \"furnace</w>\": 31913,\n  \"furnished</w>\": 37388,\n  \"furnitu\": 45696,\n  \"furniture</w>\": 7993,\n  \"furry\": 33414,\n  \"furry</w>\": 15351,\n  \"fursuit\": 25306,\n  \"fursuit</w>\": 43083,\n  \"fursuitfriday</w>\": 27917,\n  \"further</w>\": 5583,\n  \"fury</w>\": 14404,\n  \"fus</w>\": 18419,\n  \"fuse</w>\": 23386,\n  \"fused</w>\": 38994,\n  \"fusion\": 44661,\n  \"fusion</w>\": 9364,\n  \"fuss</w>\": 26331,\n  \"fut\": 21460,\n  \"fut</w>\": 34049,\n  \"futbol</w>\": 33014,\n  \"futsal</w>\": 20558,\n  \"futu\": 33454,\n  \"futur\": 38840,\n  \"future\": 7959,\n  \"future</w>\": 1904,\n  \"futureof\": 22599,\n  \"futureofwork</w>\": 33202,\n  \"futures</w>\": 13488,\n  \"futuri\": 19068,\n  \"futurism</w>\": 48435,\n  \"futurist</w>\": 48086,\n  \"futuristic</w>\": 30987,\n  \"fuzz\": 47128,\n  \"fuzz</w>\": 40443,\n  \"fuzzy</w>\": 25876,\n  \"fv\": 29795,\n  \"fw\": 23934,\n  \"fw</w>\": 5277,\n  \"fwd</w>\": 27052,\n  \"fx\": 17807,\n  \"fx</w>\": 9025,\n  \"fy\": 8440,\n  \"fy</w>\": 2702,\n  \"fyi</w>\": 16014,\n  \"fying</w>\": 5294,\n  \"fz</w>\": 46400,\n  \"fÃ©\": 34072,\n  \"g\": 70,\n  \"g</w>\": 326,\n  \"ga\": 1275,\n  \"ga</w>\": 1531,\n  \"gaa</w>\": 10715,\n  \"gaal</w>\": 40867,\n  \"gaard</w>\": 24645,\n  \"gab\": 3927,\n  \"gab</w>\": 37382,\n  \"gabbana</w>\": 36272,\n  \"gabby\": 48115,\n  \"gabby</w>\": 24567,\n  \"gabe</w>\": 18916,\n  \"gabi</w>\": 41931,\n  \"gable</w>\": 33387,\n  \"gables</w>\": 40928,\n  \"gabri\": 8311,\n  \"gabriel\": 31684,\n  \"gabriel</w>\": 13244,\n  \"gabrielle</w>\": 33572,\n  \"gaby</w>\": 46420,\n  \"gac</w>\": 32520,\n  \"gad\": 7786,\n  \"gad</w>\": 44651,\n  \"gadget</w>\": 25525,\n  \"gadgets</w>\": 22840,\n  \"gado</w>\": 29489,\n  \"gae</w>\": 22003,\n  \"gael</w>\": 35663,\n  \"gaelic</w>\": 31173,\n  \"gaf\": 21354,\n  \"gaf</w>\": 32670,\n  \"gag\": 14121,\n  \"gag</w>\": 18844,\n  \"gaga</w>\": 9782,\n  \"gage</w>\": 21081,\n  \"gah</w>\": 27750,\n  \"gai\": 24214,\n  \"gai</w>\": 25153,\n  \"gaia</w>\": 41269,\n  \"gail\": 41160,\n  \"gail</w>\": 27676,\n  \"gain\": 21536,\n  \"gain</w>\": 6202,\n  \"gaine\": 35747,\n  \"gained</w>\": 14489,\n  \"gaines</w>\": 49225,\n  \"gainesville</w>\": 40427,\n  \"gaining</w>\": 15260,\n  \"gains\": 42751,\n  \"gains</w>\": 12107,\n  \"gal\": 2001,\n  \"gal</w>\": 4488,\n  \"gala</w>\": 7211,\n  \"galac\": 18864,\n  \"galactic</w>\": 25514,\n  \"galap\": 41115,\n  \"galapagos</w>\": 44057,\n  \"galat\": 39853,\n  \"galatasar\": 42413,\n  \"galatasaray</w>\": 47787,\n  \"galax\": 5647,\n  \"galaxies</w>\": 32435,\n  \"galaxy\": 32130,\n  \"galaxy</w>\": 6545,\n  \"gale\": 37658,\n  \"gale</w>\": 21380,\n  \"galerie</w>\": 44539,\n  \"gales</w>\": 48633,\n  \"gali\": 17546,\n  \"gali</w>\": 30552,\n  \"galicia</w>\": 47927,\n  \"galileo</w>\": 39671,\n  \"gall\": 3011,\n  \"gall</w>\": 33374,\n  \"galla\": 16847,\n  \"gallagher</w>\": 19168,\n  \"galleria</w>\": 40656,\n  \"galleries</w>\": 22304,\n  \"gallery\": 36648,\n  \"gallery</w>\": 3830,\n  \"galley</w>\": 48917,\n  \"galli\": 22568,\n  \"gallipoli</w>\": 47249,\n  \"gallo\": 37350,\n  \"gallo</w>\": 33265,\n  \"gallon</w>\": 24615,\n  \"gallons</w>\": 29335,\n  \"galloway</w>\": 27796,\n  \"galore</w>\": 22286,\n  \"gals</w>\": 20125,\n  \"galvani\": 46046,\n  \"galve\": 34328,\n  \"galveston</w>\": 36003,\n  \"galway\": 38045,\n  \"galway</w>\": 17112,\n  \"gam\": 1162,\n  \"gam</w>\": 34195,\n  \"gama</w>\": 35873,\n  \"gambia</w>\": 32988,\n  \"gamble</w>\": 26121,\n  \"gambling</w>\": 20287,\n  \"game\": 2882,\n  \"game</w>\": 1063,\n  \"gameart</w>\": 31490,\n  \"gameboy</w>\": 40951,\n  \"gamecube</w>\": 44079,\n  \"gameday</w>\": 9241,\n  \"gamedev</w>\": 7544,\n  \"gameinsight</w>\": 42626,\n  \"gameof\": 10987,\n  \"gameofthrones</w>\": 11822,\n  \"gameon</w>\": 47691,\n  \"gameplay</w>\": 16794,\n  \"gamer\": 12595,\n  \"gamer</w>\": 11598,\n  \"gamergate</w>\": 25961,\n  \"gamers</w>\": 16166,\n  \"gamersunite</w>\": 26423,\n  \"games\": 18551,\n  \"games</w>\": 1955,\n  \"gamescom</w>\": 37003,\n  \"gamestop</w>\": 39436,\n  \"gametime</w>\": 45899,\n  \"gami</w>\": 42025,\n  \"gamification</w>\": 48908,\n  \"gaming\": 28803,\n  \"gaming</w>\": 4017,\n  \"gamma</w>\": 22180,\n  \"gamo</w>\": 39325,\n  \"gan\": 1822,\n  \"gan</w>\": 1670,\n  \"gand\": 8399,\n  \"ganda</w>\": 27261,\n  \"gander</w>\": 44508,\n  \"gandhi</w>\": 12322,\n  \"ganesh</w>\": 30362,\n  \"ganesha</w>\": 45185,\n  \"gang\": 8066,\n  \"gang</w>\": 5674,\n  \"ganga</w>\": 36275,\n  \"gangnam</w>\": 46777,\n  \"gangs</w>\": 29844,\n  \"gangsta</w>\": 37365,\n  \"gangster</w>\": 26514,\n  \"gani</w>\": 48324,\n  \"gann</w>\": 45665,\n  \"gannon</w>\": 45837,\n  \"gano</w>\": 25304,\n  \"gao</w>\": 26556,\n  \"gaon</w>\": 19279,\n  \"gap\": 29906,\n  \"gap</w>\": 7609,\n  \"gaps</w>\": 25296,\n  \"gar\": 1099,\n  \"gar</w>\": 5824,\n  \"gara</w>\": 28710,\n  \"garage</w>\": 8474,\n  \"garbage</w>\": 13760,\n  \"garci\": 44658,\n  \"garcia</w>\": 10529,\n  \"gard\": 7751,\n  \"gard</w>\": 21003,\n  \"garda</w>\": 31906,\n  \"garde</w>\": 22649,\n  \"garden\": 4674,\n  \"garden</w>\": 2756,\n  \"gardenchat</w>\": 46292,\n  \"gardener</w>\": 28554,\n  \"gardeners</w>\": 38205,\n  \"gardening</w>\": 10483,\n  \"gardens</w>\": 6152,\n  \"gardiner</w>\": 43121,\n  \"gardner</w>\": 18710,\n  \"gare\": 5633,\n  \"gare</w>\": 48402,\n  \"gareth\": 37140,\n  \"gareth</w>\": 18175,\n  \"garfield</w>\": 26728,\n  \"garh</w>\": 16762,\n  \"gari\": 40898,\n  \"gari</w>\": 43080,\n  \"garis</w>\": 37839,\n  \"garland</w>\": 23418,\n  \"garlic</w>\": 9685,\n  \"garment</w>\": 31418,\n  \"garments</w>\": 43341,\n  \"garmin</w>\": 39885,\n  \"garner</w>\": 20340,\n  \"garnet</w>\": 37669,\n  \"garo</w>\": 30388,\n  \"garrett</w>\": 15881,\n  \"garri\": 21764,\n  \"garrison</w>\": 30108,\n  \"garros</w>\": 40425,\n  \"garry</w>\": 24398,\n  \"gars</w>\": 12055,\n  \"gart\": 18380,\n  \"gart</w>\": 18751,\n  \"garten</w>\": 14684,\n  \"garter</w>\": 48420,\n  \"garth\": 45398,\n  \"garth</w>\": 24469,\n  \"gartner\": 43334,\n  \"gartner</w>\": 29678,\n  \"garty</w>\": 46383,\n  \"garu</w>\": 31140,\n  \"garvey</w>\": 39511,\n  \"garwal</w>\": 38623,\n  \"gary\": 10535,\n  \"gary</w>\": 4516,\n  \"garza</w>\": 49393,\n  \"gas\": 5047,\n  \"gas</w>\": 2474,\n  \"gases</w>\": 36971,\n  \"gasoline</w>\": 27691,\n  \"gasp</w>\": 43762,\n  \"gaston</w>\": 40669,\n  \"gastri\": 49197,\n  \"gastro\": 23740,\n  \"gastron\": 30699,\n  \"gastronomy</w>\": 46987,\n  \"gat\": 5314,\n  \"gat</w>\": 18941,\n  \"gata</w>\": 44575,\n  \"gate\": 8071,\n  \"gate</w>\": 3302,\n  \"gated</w>\": 23997,\n  \"gates</w>\": 9472,\n  \"gateshead</w>\": 40051,\n  \"gateway\": 45221,\n  \"gateway</w>\": 14943,\n  \"gather\": 36345,\n  \"gather</w>\": 12602,\n  \"gathered</w>\": 14646,\n  \"gathering</w>\": 9197,\n  \"gatherings</w>\": 48096,\n  \"gathers</w>\": 39250,\n  \"gating</w>\": 27561,\n  \"gation</w>\": 11095,\n  \"gations</w>\": 33906,\n  \"gato</w>\": 44492,\n  \"gator\": 20216,\n  \"gator</w>\": 16390,\n  \"gatorade</w>\": 36354,\n  \"gators</w>\": 17173,\n  \"gatory</w>\": 24796,\n  \"gatsby</w>\": 32586,\n  \"gatwick</w>\": 37122,\n  \"gau\": 5919,\n  \"gau</w>\": 43068,\n  \"gauge</w>\": 18728,\n  \"gaunt\": 31862,\n  \"gauntlet</w>\": 37163,\n  \"gautam\": 45853,\n  \"gautam</w>\": 31356,\n  \"gauteng</w>\": 40333,\n  \"gav\": 8966,\n  \"gave</w>\": 3485,\n  \"gavin\": 32974,\n  \"gavin</w>\": 16389,\n  \"gaw\": 15405,\n  \"gawd</w>\": 43239,\n  \"gawx</w>\": 43420,\n  \"gay\": 7460,\n  \"gay</w>\": 5627,\n  \"gaya</w>\": 39477,\n  \"gaye</w>\": 41401,\n  \"gayle</w>\": 29998,\n  \"gayo</w>\": 36768,\n  \"gays</w>\": 28001,\n  \"gaz\": 4837,\n  \"gaz</w>\": 36475,\n  \"gaza\": 38391,\n  \"gaza</w>\": 10112,\n  \"gazaunderattack</w>\": 42458,\n  \"gaze</w>\": 23212,\n  \"gazette</w>\": 20443,\n  \"gazing</w>\": 28373,\n  \"gb\": 8727,\n  \"gb</w>\": 4619,\n  \"gba</w>\": 18528,\n  \"gbbo</w>\": 34474,\n  \"gbc</w>\": 42993,\n  \"gbp</w>\": 27391,\n  \"gbr</w>\": 31984,\n  \"gby</w>\": 40509,\n  \"gc\": 8577,\n  \"gc</w>\": 6043,\n  \"gcc</w>\": 26804,\n  \"gcse</w>\": 28763,\n  \"gcu</w>\": 34137,\n  \"gd\": 13264,\n  \"gd</w>\": 14604,\n  \"gdc</w>\": 32793,\n  \"gden</w>\": 44928,\n  \"gdp</w>\": 17100,\n  \"gdpr</w>\": 22963,\n  \"ge\": 619,\n  \"ge</w>\": 710,\n  \"gea</w>\": 26790,\n  \"gear\": 15532,\n  \"gear</w>\": 4802,\n  \"gearbox</w>\": 42454,\n  \"geared</w>\": 33903,\n  \"gearing</w>\": 19027,\n  \"gears</w>\": 21147,\n  \"geaux\": 36313,\n  \"gecko</w>\": 38616,\n  \"ged\": 17252,\n  \"ged</w>\": 3480,\n  \"geddon</w>\": 31720,\n  \"gedly</w>\": 13991,\n  \"gee\": 9806,\n  \"gee</w>\": 9071,\n  \"geek\": 17920,\n  \"geek</w>\": 7135,\n  \"geeks</w>\": 20110,\n  \"geeky</w>\": 47332,\n  \"geel\": 25906,\n  \"geelong</w>\": 34555,\n  \"gees</w>\": 38088,\n  \"geese</w>\": 26413,\n  \"geez</w>\": 42394,\n  \"geh\": 30320,\n  \"geist</w>\": 38290,\n  \"gel\": 7343,\n  \"gel</w>\": 5697,\n  \"gelato</w>\": 29577,\n  \"gels</w>\": 42552,\n  \"gely</w>\": 14637,\n  \"gem\": 14261,\n  \"gem</w>\": 7613,\n  \"gement</w>\": 19495,\n  \"gemini</w>\": 23086,\n  \"gemma</w>\": 23952,\n  \"gems</w>\": 14355,\n  \"gemstone</w>\": 27747,\n  \"gemstones</w>\": 43972,\n  \"gen\": 1024,\n  \"gen</w>\": 3278,\n  \"gence</w>\": 16088,\n  \"gency</w>\": 5245,\n  \"gend\": 33247,\n  \"gender\": 22976,\n  \"gender</w>\": 5906,\n  \"gendere\": 35824,\n  \"genderequality</w>\": 43338,\n  \"gene\": 5822,\n  \"gene</w>\": 7962,\n  \"genealo\": 24142,\n  \"genealogy</w>\": 29381,\n  \"gener\": 1832,\n  \"general\": 20576,\n  \"general</w>\": 3658,\n  \"generally</w>\": 19256,\n  \"generals</w>\": 30296,\n  \"generate</w>\": 16896,\n  \"generated</w>\": 19450,\n  \"generates</w>\": 33938,\n  \"generating</w>\": 23882,\n  \"generation\": 41211,\n  \"generation</w>\": 4883,\n  \"generational</w>\": 34506,\n  \"generations</w>\": 12247,\n  \"generative</w>\": 29472,\n  \"generator</w>\": 19399,\n  \"generators</w>\": 41917,\n  \"generic</w>\": 26978,\n  \"generosity</w>\": 23015,\n  \"generous</w>\": 12570,\n  \"generously</w>\": 35113,\n  \"genes</w>\": 19683,\n  \"genesis</w>\": 13518,\n  \"genetic\": 47746,\n  \"genetic</w>\": 13578,\n  \"genetically</w>\": 36745,\n  \"genetics</w>\": 18276,\n  \"geneva</w>\": 14799,\n  \"genevie\": 41633,\n  \"genevieve</w>\": 46584,\n  \"geni\": 22334,\n  \"genic</w>\": 15750,\n  \"genie</w>\": 24221,\n  \"genital</w>\": 32960,\n  \"genius</w>\": 8235,\n  \"geniuses</w>\": 41406,\n  \"geno\": 41544,\n  \"geno</w>\": 46776,\n  \"genoa</w>\": 43993,\n  \"genoci\": 14687,\n  \"genocide</w>\": 15903,\n  \"genome</w>\": 23991,\n  \"genomic</w>\": 44371,\n  \"genomics</w>\": 26227,\n  \"genre</w>\": 14249,\n  \"genres</w>\": 30340,\n  \"gens</w>\": 17449,\n  \"gent\": 3685,\n  \"gent</w>\": 7139,\n  \"gente</w>\": 34325,\n  \"gentle\": 7262,\n  \"gentle</w>\": 13577,\n  \"gentleman</w>\": 13293,\n  \"gentlemen</w>\": 11692,\n  \"gently</w>\": 17187,\n  \"gento</w>\": 28320,\n  \"gentri\": 41148,\n  \"gentry</w>\": 47225,\n  \"gents</w>\": 18862,\n  \"genu\": 9182,\n  \"genuine</w>\": 12184,\n  \"genuinely</w>\": 20006,\n  \"genus</w>\": 38161,\n  \"geny</w>\": 35323,\n  \"geo\": 5038,\n  \"geo</w>\": 11604,\n  \"geocaching</w>\": 47908,\n  \"geof\": 20629,\n  \"geoff\": 33697,\n  \"geoff</w>\": 20386,\n  \"geoffrey</w>\": 29520,\n  \"geograph\": 45920,\n  \"geographic</w>\": 22635,\n  \"geographical</w>\": 39380,\n  \"geography</w>\": 17101,\n  \"geological</w>\": 38380,\n  \"geology</w>\": 21578,\n  \"geom\": 46135,\n  \"geome\": 12958,\n  \"geometric</w>\": 22419,\n  \"geometry</w>\": 21731,\n  \"geon\": 20844,\n  \"geon</w>\": 7295,\n  \"geons</w>\": 15914,\n  \"geopol\": 39758,\n  \"geor\": 2549,\n  \"georg</w>\": 43126,\n  \"george\": 8377,\n  \"george</w>\": 3296,\n  \"georges</w>\": 25042,\n  \"georgetown</w>\": 22970,\n  \"georgie</w>\": 42115,\n  \"georgina</w>\": 43892,\n  \"geospatial</w>\": 46238,\n  \"geothermal</w>\": 38413,\n  \"geous</w>\": 3068,\n  \"ger\": 1291,\n  \"ger</w>\": 1502,\n  \"gera</w>\": 48867,\n  \"gerald\": 29901,\n  \"gerald</w>\": 13269,\n  \"gerard\": 35979,\n  \"gerard</w>\": 20826,\n  \"gerber</w>\": 45058,\n  \"gered</w>\": 40179,\n  \"geri\": 41664,\n  \"geri</w>\": 46214,\n  \"gering</w>\": 24077,\n  \"germain</w>\": 38786,\n  \"german\": 14972,\n  \"german</w>\": 4710,\n  \"germans</w>\": 28400,\n  \"germany</w>\": 4464,\n  \"germin\": 44721,\n  \"germs</w>\": 47731,\n  \"geronimo</w>\": 45171,\n  \"gerrard</w>\": 26538,\n  \"gerry\": 29825,\n  \"gerry</w>\": 23026,\n  \"gers</w>\": 3314,\n  \"gertrude</w>\": 46950,\n  \"gervais</w>\": 36527,\n  \"gery</w>\": 32845,\n  \"ges</w>\": 3316,\n  \"gest\": 11843,\n  \"gest</w>\": 2033,\n  \"gesture</w>\": 21780,\n  \"gestures</w>\": 43524,\n  \"get\": 5670,\n  \"get</w>\": 779,\n  \"geta\": 13155,\n  \"getaway</w>\": 16131,\n  \"gether</w>\": 27224,\n  \"getic</w>\": 20661,\n  \"getin\": 25822,\n  \"getit\": 44891,\n  \"getit</w>\": 48315,\n  \"getoutside</w>\": 35644,\n  \"gets\": 39448,\n  \"gets</w>\": 2127,\n  \"gett\": 6647,\n  \"gett</w>\": 27965,\n  \"gettable</w>\": 15620,\n  \"gette</w>\": 29800,\n  \"gettin</w>\": 13428,\n  \"getting\": 30885,\n  \"getting</w>\": 1500,\n  \"getty\": 31185,\n  \"getty</w>\": 13965,\n  \"gettys\": 35189,\n  \"gettysburg</w>\": 37062,\n  \"getyour\": 42159,\n  \"gey</w>\": 29289,\n  \"gf\": 28953,\n  \"gf</w>\": 10846,\n  \"gfriend</w>\": 35245,\n  \"gfs</w>\": 37553,\n  \"gg\": 1129,\n  \"gg</w>\": 3286,\n  \"gga</w>\": 26003,\n  \"ggan</w>\": 25626,\n  \"gge\": 21521,\n  \"gge</w>\": 31659,\n  \"gged</w>\": 6095,\n  \"gger\": 12367,\n  \"gger</w>\": 3493,\n  \"ggers</w>\": 7480,\n  \"ggg</w>\": 20143,\n  \"gggg</w>\": 33513,\n  \"ggi</w>\": 21662,\n  \"ggin</w>\": 17160,\n  \"gging</w>\": 4966,\n  \"ggins</w>\": 12444,\n  \"ggle\": 34981,\n  \"ggle</w>\": 11430,\n  \"ggled</w>\": 46328,\n  \"ggles</w>\": 14703,\n  \"ggling</w>\": 16523,\n  \"ggly</w>\": 39407,\n  \"ggs</w>\": 4797,\n  \"ggy\": 24935,\n  \"ggy</w>\": 6476,\n  \"gh\": 583,\n  \"gh</w>\": 790,\n  \"gha\": 10010,\n  \"gha</w>\": 25183,\n  \"gham\": 21456,\n  \"ghan\": 18945,\n  \"ghan</w>\": 6624,\n  \"ghana\": 30330,\n  \"ghana</w>\": 9731,\n  \"ghanaian</w>\": 34223,\n  \"ghani</w>\": 36699,\n  \"ghar\": 37334,\n  \"ghar</w>\": 36973,\n  \"ghat</w>\": 43989,\n  \"ghaz\": 37493,\n  \"ghc</w>\": 42139,\n  \"ghe\": 10754,\n  \"ghe</w>\": 28561,\n  \"ghead</w>\": 40783,\n  \"ghee</w>\": 34794,\n  \"gher\": 21542,\n  \"gher</w>\": 14796,\n  \"ghet\": 18447,\n  \"ghetti</w>\": 17485,\n  \"ghetto</w>\": 22403,\n  \"ghi\": 22436,\n  \"ghi</w>\": 22279,\n  \"ghibli</w>\": 40555,\n  \"ghj\": 38439,\n  \"ghlin</w>\": 24131,\n  \"gho\": 4307,\n  \"ghorn</w>\": 38094,\n  \"ghosh</w>\": 43279,\n  \"ghoshal</w>\": 49134,\n  \"ghost\": 11417,\n  \"ghost</w>\": 7108,\n  \"ghostbusters</w>\": 25462,\n  \"ghostly</w>\": 44901,\n  \"ghosts</w>\": 16737,\n  \"ghou\": 35843,\n  \"ghoul</w>\": 45302,\n  \"ghouse</w>\": 38238,\n  \"ghs</w>\": 14157,\n  \"ght\": 1413,\n  \"ght</w>\": 630,\n  \"ghted</w>\": 4963,\n  \"ghter</w>\": 2427,\n  \"ghters</w>\": 12994,\n  \"ghtful</w>\": 8334,\n  \"ghting</w>\": 3019,\n  \"ghtly</w>\": 6993,\n  \"ghtning</w>\": 39740,\n  \"ghton</w>\": 16353,\n  \"ghts</w>\": 1259,\n  \"ghty\": 20968,\n  \"ghty</w>\": 5866,\n  \"ghu\": 25808,\n  \"ghue</w>\": 45675,\n  \"ghyun</w>\": 25010,\n  \"ghz</w>\": 24325,\n  \"gi\": 707,\n  \"gi</w>\": 4478,\n  \"gia</w>\": 8864,\n  \"giac\": 35444,\n  \"giam\": 39623,\n  \"gian\": 17274,\n  \"gian</w>\": 12866,\n  \"gianni</w>\": 46752,\n  \"giant\": 23668,\n  \"giant</w>\": 4687,\n  \"giants</w>\": 7076,\n  \"giar\": 34241,\n  \"gib\": 9816,\n  \"gibb\": 18964,\n  \"gibbons</w>\": 31974,\n  \"gibbs</w>\": 26488,\n  \"gibility</w>\": 33297,\n  \"gible</w>\": 13159,\n  \"gibr\": 20206,\n  \"gibraltar</w>\": 23988,\n  \"gibson\": 37420,\n  \"gibson</w>\": 12178,\n  \"gic\": 27900,\n  \"gic</w>\": 2570,\n  \"gical</w>\": 32973,\n  \"gically</w>\": 26320,\n  \"gid\": 36774,\n  \"gid</w>\": 21413,\n  \"giddy</w>\": 40894,\n  \"gideon</w>\": 43867,\n  \"gidi</w>\": 30603,\n  \"gie\": 11459,\n  \"gie</w>\": 3991,\n  \"gier</w>\": 28974,\n  \"gies</w>\": 5505,\n  \"gif\": 11363,\n  \"gif</w>\": 11677,\n  \"gifford</w>\": 47850,\n  \"gifs</w>\": 37643,\n  \"gift\": 20569,\n  \"gift</w>\": 2733,\n  \"gifted</w>\": 15110,\n  \"giftide\": 20152,\n  \"giftideas</w>\": 23487,\n  \"gifting</w>\": 39546,\n  \"gifts</w>\": 5836,\n  \"gig\": 26981,\n  \"gig</w>\": 7471,\n  \"gigab\": 34530,\n  \"gigan\": 24104,\n  \"gigantic</w>\": 31507,\n  \"giggle</w>\": 36426,\n  \"giggles</w>\": 42731,\n  \"giggs</w>\": 44692,\n  \"gigi\": 44106,\n  \"gigi</w>\": 26171,\n  \"gigs</w>\": 20316,\n  \"gil\": 3997,\n  \"gil</w>\": 10088,\n  \"gila</w>\": 46952,\n  \"gilbert</w>\": 14154,\n  \"gilded</w>\": 44341,\n  \"giles</w>\": 24802,\n  \"gill\": 14280,\n  \"gill</w>\": 12003,\n  \"gille\": 29610,\n  \"gilles</w>\": 39590,\n  \"gillespie</w>\": 36242,\n  \"gillette</w>\": 38603,\n  \"gilli\": 13695,\n  \"gillian</w>\": 28753,\n  \"gills</w>\": 48851,\n  \"gilmore</w>\": 27603,\n  \"gilt</w>\": 44378,\n  \"gim\": 31284,\n  \"gimm\": 40692,\n  \"gimme</w>\": 21525,\n  \"gin\": 3374,\n  \"gin</w>\": 4941,\n  \"gina</w>\": 15604,\n  \"gine\": 27482,\n  \"ging\": 10829,\n  \"ging</w>\": 3905,\n  \"ginger\": 16287,\n  \"ginger</w>\": 9718,\n  \"gingerbread</w>\": 23692,\n  \"gini</w>\": 35768,\n  \"gino</w>\": 36521,\n  \"gins</w>\": 18328,\n  \"gio\": 16329,\n  \"gio</w>\": 8050,\n  \"gion</w>\": 41226,\n  \"gior\": 14920,\n  \"giorgio</w>\": 33271,\n  \"giorno</w>\": 33310,\n  \"gios</w>\": 41927,\n  \"gious</w>\": 14419,\n  \"giov\": 21404,\n  \"giovanni</w>\": 26574,\n  \"gipp\": 41351,\n  \"gir\": 1077,\n  \"gir</w>\": 25481,\n  \"gira\": 16949,\n  \"giraffe</w>\": 22826,\n  \"giri</w>\": 31709,\n  \"girl\": 3914,\n  \"girl</w>\": 1611,\n  \"girlfriend</w>\": 8217,\n  \"girlfriends</w>\": 30736,\n  \"girlpower</w>\": 37433,\n  \"girls\": 15480,\n  \"girls</w>\": 1917,\n  \"girly</w>\": 29605,\n  \"giro\": 39664,\n  \"giro</w>\": 26454,\n  \"girona</w>\": 47842,\n  \"giroud</w>\": 41177,\n  \"gis\": 16266,\n  \"gis</w>\": 12773,\n  \"gist</w>\": 21241,\n  \"git\": 16060,\n  \"git</w>\": 20918,\n  \"gita</w>\": 40838,\n  \"github</w>\": 31196,\n  \"giu\": 17931,\n  \"giuli\": 29762,\n  \"giuliani</w>\": 47739,\n  \"giuse\": 29385,\n  \"giuseppe</w>\": 33563,\n  \"give\": 4120,\n  \"give</w>\": 1781,\n  \"giveaway</w>\": 5310,\n  \"giveaways</w>\": 18974,\n  \"giveback</w>\": 41385,\n  \"given\": 33323,\n  \"given</w>\": 4302,\n  \"givenchy</w>\": 38245,\n  \"giver</w>\": 43339,\n  \"gives</w>\": 3926,\n  \"giveup</w>\": 35485,\n  \"giving\": 14673,\n  \"giving</w>\": 2339,\n  \"givingback</w>\": 49300,\n  \"givingtuesday</w>\": 23556,\n  \"giz\": 29237,\n  \"gk\": 38953,\n  \"gk</w>\": 18719,\n  \"gl\": 1849,\n  \"gl</w>\": 14751,\n  \"gla\": 1523,\n  \"gla</w>\": 36904,\n  \"glaci\": 14924,\n  \"glacial</w>\": 40782,\n  \"glacier</w>\": 19282,\n  \"glaciers</w>\": 42528,\n  \"glad\": 20841,\n  \"glad</w>\": 4761,\n  \"glades</w>\": 37432,\n  \"gladi\": 21742,\n  \"gladiator</w>\": 38477,\n  \"gladiators</w>\": 41087,\n  \"gladly</w>\": 41598,\n  \"gladys</w>\": 43168,\n  \"glam\": 8738,\n  \"glam</w>\": 16905,\n  \"glamorous</w>\": 22896,\n  \"glamour\": 42876,\n  \"glamour</w>\": 17499,\n  \"glamping</w>\": 46167,\n  \"glan\": 40482,\n  \"glan</w>\": 45844,\n  \"glance</w>\": 26557,\n  \"gland</w>\": 41441,\n  \"glar\": 48535,\n  \"glar</w>\": 41702,\n  \"glare</w>\": 46035,\n  \"glas\": 29935,\n  \"glas</w>\": 43654,\n  \"glasgo\": 6757,\n  \"glasgow\": 29990,\n  \"glasgow</w>\": 7363,\n  \"glass\": 16305,\n  \"glass</w>\": 3313,\n  \"glasses</w>\": 6116,\n  \"glaston\": 26848,\n  \"glastonbury</w>\": 28233,\n  \"glau\": 39171,\n  \"glaze</w>\": 28112,\n  \"glazed</w>\": 24122,\n  \"gle\": 7166,\n  \"gle</w>\": 2865,\n  \"glee\": 32379,\n  \"glee</w>\": 21614,\n  \"glen\": 6158,\n  \"glen</w>\": 11049,\n  \"glend\": 38332,\n  \"glendale</w>\": 33043,\n  \"glenn\": 32004,\n  \"glenn</w>\": 12861,\n  \"gler</w>\": 34649,\n  \"gley</w>\": 21998,\n  \"gli\": 5896,\n  \"gli</w>\": 28791,\n  \"glia</w>\": 22217,\n  \"glide</w>\": 37321,\n  \"glider</w>\": 41636,\n  \"glimp\": 12888,\n  \"glimpse</w>\": 13817,\n  \"glio</w>\": 29785,\n  \"glit\": 21079,\n  \"glitch</w>\": 29563,\n  \"glitter</w>\": 16528,\n  \"glitz</w>\": 44542,\n  \"glo\": 1721,\n  \"glo</w>\": 30474,\n  \"glob\": 13363,\n  \"global\": 6707,\n  \"global</w>\": 2779,\n  \"globalgoals</w>\": 33211,\n  \"globalhealth</w>\": 46751,\n  \"globalization</w>\": 47680,\n  \"globally</w>\": 17775,\n  \"globalwarming</w>\": 46017,\n  \"globe\": 19436,\n  \"globe</w>\": 9368,\n  \"globes</w>\": 38085,\n  \"glock</w>\": 38818,\n  \"glomer\": 43689,\n  \"gloom</w>\": 48594,\n  \"gloomy</w>\": 32199,\n  \"glori\": 7270,\n  \"gloria</w>\": 19244,\n  \"glorious</w>\": 9171,\n  \"glory\": 36107,\n  \"glory</w>\": 7285,\n  \"glos</w>\": 40633,\n  \"gloss\": 38258,\n  \"gloss</w>\": 22014,\n  \"glossy</w>\": 29802,\n  \"glou\": 15989,\n  \"gloucester\": 28133,\n  \"gloucester</w>\": 23835,\n  \"gloucestershire</w>\": 33789,\n  \"glove</w>\": 16078,\n  \"glover</w>\": 21594,\n  \"gloves</w>\": 12363,\n  \"glow\": 30472,\n  \"glow</w>\": 10111,\n  \"glowing</w>\": 18437,\n  \"glows</w>\": 48107,\n  \"glu\": 5952,\n  \"glu</w>\": 32281,\n  \"glucose</w>\": 34642,\n  \"glue</w>\": 22103,\n  \"glued</w>\": 38135,\n  \"gluten\": 15482,\n  \"gluten</w>\": 15524,\n  \"glutenfree</w>\": 16138,\n  \"gly\": 13027,\n  \"glycer\": 48914,\n  \"gm\": 18743,\n  \"gm</w>\": 5918,\n  \"gma</w>\": 18155,\n  \"gmail</w>\": 11119,\n  \"gman\": 41043,\n  \"gman</w>\": 36936,\n  \"gmb\": 35934,\n  \"gmb</w>\": 31799,\n  \"gmbh</w>\": 46877,\n  \"gmc</w>\": 27257,\n  \"gmo</w>\": 23486,\n  \"gms</w>\": 36987,\n  \"gmt</w>\": 13803,\n  \"gn\": 2455,\n  \"gn</w>\": 9831,\n  \"gna</w>\": 23009,\n  \"gnation</w>\": 45912,\n  \"gne</w>\": 25407,\n  \"gni\": 5104,\n  \"gnment</w>\": 25110,\n  \"gno\": 23376,\n  \"gno</w>\": 43686,\n  \"gnocchi</w>\": 48299,\n  \"gnome</w>\": 33643,\n  \"gnon</w>\": 20561,\n  \"go\": 650,\n  \"go</w>\": 861,\n  \"goa</w>\": 14399,\n  \"goal\": 9003,\n  \"goal</w>\": 3321,\n  \"goalie</w>\": 20723,\n  \"goalkeeper</w>\": 16601,\n  \"goals</w>\": 3295,\n  \"goalscorer</w>\": 43547,\n  \"goaltender</w>\": 44151,\n  \"goat\": 34082,\n  \"goat</w>\": 9530,\n  \"goats</w>\": 18393,\n  \"gob\": 29559,\n  \"gobeavs</w>\": 48285,\n  \"goblin</w>\": 26223,\n  \"goblue</w>\": 25232,\n  \"gobucks</w>\": 29175,\n  \"gocougs</w>\": 34202,\n  \"god\": 4190,\n  \"god</w>\": 1731,\n  \"godawgs</w>\": 40436,\n  \"godbless\": 46616,\n  \"godbless</w>\": 44007,\n  \"godd\": 16589,\n  \"goddamn</w>\": 28495,\n  \"goddard</w>\": 37827,\n  \"goddess</w>\": 10808,\n  \"godfather</w>\": 26222,\n  \"godfrey</w>\": 40148,\n  \"godis\": 38521,\n  \"godly</w>\": 42438,\n  \"gods\": 33620,\n  \"gods</w>\": 10328,\n  \"goducks</w>\": 35889,\n  \"godzilla</w>\": 23369,\n  \"goe\": 22084,\n  \"goers</w>\": 27784,\n  \"goes\": 43581,\n  \"goes</w>\": 2635,\n  \"gof\": 17537,\n  \"goff</w>\": 34399,\n  \"goftheday</w>\": 39360,\n  \"gofund\": 34445,\n  \"gofundme</w>\": 34686,\n  \"gog</w>\": 42949,\n  \"goggles</w>\": 31027,\n  \"gogh</w>\": 19697,\n  \"gogo</w>\": 22688,\n  \"gogreen</w>\": 36279,\n  \"gohawks</w>\": 34884,\n  \"goi</w>\": 24917,\n  \"goin</w>\": 13939,\n  \"going\": 25787,\n  \"going</w>\": 1245,\n  \"goku</w>\": 29550,\n  \"gol\": 1537,\n  \"gol</w>\": 18257,\n  \"gola</w>\": 41090,\n  \"gold\": 4999,\n  \"gold</w>\": 2209,\n  \"goldberg</w>\": 25161,\n  \"goldcoast</w>\": 34634,\n  \"golden\": 10763,\n  \"golden</w>\": 3878,\n  \"goldeng\": 20650,\n  \"goldenglobes</w>\": 26842,\n  \"goldfish</w>\": 40293,\n  \"goldie</w>\": 42805,\n  \"goldman</w>\": 27164,\n  \"golds\": 30526,\n  \"golds</w>\": 40283,\n  \"goldsmith</w>\": 40214,\n  \"gole\": 41297,\n  \"golf\": 9096,\n  \"golf</w>\": 3096,\n  \"golfclub</w>\": 45742,\n  \"golfer</w>\": 24579,\n  \"golfers</w>\": 28441,\n  \"golfing</w>\": 31379,\n  \"goli\": 29265,\n  \"goliath</w>\": 41602,\n  \"gom\": 7051,\n  \"goma</w>\": 46198,\n  \"gomes</w>\": 39128,\n  \"gomez</w>\": 16433,\n  \"gon\": 1854,\n  \"gon</w>\": 3379,\n  \"gona</w>\": 34835,\n  \"gone\": 35135,\n  \"gone</w>\": 3601,\n  \"gong</w>\": 28486,\n  \"gonna</w>\": 2562,\n  \"gonz\": 10587,\n  \"gonzaga</w>\": 36241,\n  \"gonzale\": 17512,\n  \"gonzales</w>\": 31265,\n  \"gonzalez</w>\": 18198,\n  \"goo\": 1381,\n  \"goo</w>\": 17882,\n  \"good\": 2185,\n  \"good</w>\": 886,\n  \"goodbye</w>\": 6968,\n  \"goodday\": 46284,\n  \"goode</w>\": 42076,\n  \"goodfood</w>\": 46844,\n  \"goodfriday</w>\": 40360,\n  \"goodie</w>\": 29213,\n  \"goodies</w>\": 13308,\n  \"goodluck</w>\": 19718,\n  \"goodman</w>\": 24146,\n  \"goodmorning</w>\": 14421,\n  \"goodness</w>\": 10531,\n  \"goodnight</w>\": 8540,\n  \"goodreads</w>\": 31629,\n  \"goods</w>\": 9340,\n  \"goodtimes</w>\": 22570,\n  \"goodvibes</w>\": 43146,\n  \"goodwill</w>\": 24902,\n  \"goodwin</w>\": 28080,\n  \"goodwood</w>\": 30008,\n  \"goody</w>\": 35937,\n  \"goodyear</w>\": 42858,\n  \"goofy</w>\": 26879,\n  \"goog\": 18581,\n  \"google\": 12195,\n  \"google</w>\": 3460,\n  \"googled</w>\": 40345,\n  \"googleplay</w>\": 37309,\n  \"goon</w>\": 15267,\n  \"goons</w>\": 30440,\n  \"goooo\": 35876,\n  \"goooo</w>\": 48957,\n  \"goose\": 21445,\n  \"goose</w>\": 13822,\n  \"goosebumps</w>\": 32254,\n  \"gop\": 18942,\n  \"gop</w>\": 6250,\n  \"gopack\": 46995,\n  \"gopackgo</w>\": 47719,\n  \"gopal</w>\": 47268,\n  \"gopdebate</w>\": 39806,\n  \"gopher\": 47750,\n  \"gopher</w>\": 48905,\n  \"gophers</w>\": 31957,\n  \"gopro</w>\": 17511,\n  \"gor\": 1747,\n  \"gor</w>\": 29827,\n  \"gordo</w>\": 47707,\n  \"gordon\": 20485,\n  \"gordon</w>\": 8244,\n  \"gore\": 30311,\n  \"gore</w>\": 17872,\n  \"gorg</w>\": 46815,\n  \"gorge\": 35548,\n  \"gorge</w>\": 20038,\n  \"gorgeous</w>\": 3241,\n  \"gori\": 12461,\n  \"goria</w>\": 43359,\n  \"gorilla\": 37910,\n  \"gorilla</w>\": 21994,\n  \"gorman</w>\": 35741,\n  \"goro</w>\": 44977,\n  \"gory</w>\": 7160,\n  \"gos\": 20517,\n  \"gos</w>\": 5693,\n  \"gosh</w>\": 15395,\n  \"gosling</w>\": 35320,\n  \"gosp\": 9617,\n  \"gospel</w>\": 11313,\n  \"goss\": 39734,\n  \"goss</w>\": 36924,\n  \"gossi\": 15684,\n  \"gossip</w>\": 18963,\n  \"got\": 10125,\n  \"got</w>\": 1005,\n  \"gota</w>\": 36693,\n  \"gotcha</w>\": 43275,\n  \"gote</w>\": 49345,\n  \"goth\": 48465,\n  \"goth</w>\": 20437,\n  \"gotham\": 46123,\n  \"gotham</w>\": 18299,\n  \"gothic</w>\": 15426,\n  \"goti\": 9497,\n  \"goto\": 39715,\n  \"gots</w>\": 35215,\n  \"gott\": 5089,\n  \"gott</w>\": 36466,\n  \"gotta</w>\": 4633,\n  \"gotten</w>\": 5889,\n  \"gotti</w>\": 41881,\n  \"gotv</w>\": 36089,\n  \"gou\": 10520,\n  \"gou</w>\": 36555,\n  \"gouache</w>\": 43314,\n  \"goul\": 33187,\n  \"gould</w>\": 31087,\n  \"gour\": 13580,\n  \"gourmet</w>\": 19111,\n  \"gov\": 4022,\n  \"gov</w>\": 4564,\n  \"gove</w>\": 36997,\n  \"govegan</w>\": 38886,\n  \"gover\": 10471,\n  \"gover</w>\": 16759,\n  \"govern\": 2351,\n  \"govern</w>\": 32404,\n  \"governance</w>\": 13386,\n  \"governing</w>\": 30946,\n  \"government</w>\": 3149,\n  \"governmental</w>\": 42609,\n  \"governments</w>\": 19582,\n  \"governor\": 17459,\n  \"governor</w>\": 6630,\n  \"governors</w>\": 26881,\n  \"govin\": 42451,\n  \"govt</w>\": 5345,\n  \"govuk</w>\": 28830,\n  \"gow\": 21885,\n  \"gow</w>\": 33788,\n  \"gowan</w>\": 31307,\n  \"gower</w>\": 43448,\n  \"gown</w>\": 13719,\n  \"gowns</w>\": 38029,\n  \"goyal</w>\": 35105,\n  \"gp\": 19329,\n  \"gp</w>\": 5051,\n  \"gpa</w>\": 24098,\n  \"gps</w>\": 13639,\n  \"gpu</w>\": 38561,\n  \"gq\": 40286,\n  \"gq</w>\": 31324,\n  \"gr\": 709,\n  \"gr</w>\": 6062,\n  \"gra\": 782,\n  \"gra</w>\": 15276,\n  \"grab</w>\": 4646,\n  \"grabbed</w>\": 22856,\n  \"grabbing</w>\": 26440,\n  \"grabs</w>\": 17076,\n  \"grac\": 11323,\n  \"grace\": 13225,\n  \"grace</w>\": 5142,\n  \"graced</w>\": 31894,\n  \"graceful</w>\": 25242,\n  \"graces</w>\": 38629,\n  \"graci\": 11174,\n  \"gracias</w>\": 16463,\n  \"gracie</w>\": 23235,\n  \"gracing</w>\": 37263,\n  \"gracious</w>\": 29044,\n  \"grad\": 19869,\n  \"grad</w>\": 7291,\n  \"gradable</w>\": 41529,\n  \"grade\": 45435,\n  \"grade</w>\": 3394,\n  \"graded</w>\": 13823,\n  \"grader</w>\": 23930,\n  \"graders</w>\": 10930,\n  \"grades</w>\": 10838,\n  \"gradient</w>\": 36885,\n  \"grading</w>\": 19016,\n  \"grads</w>\": 17811,\n  \"gradu\": 3230,\n  \"gradual</w>\": 45210,\n  \"gradually</w>\": 32192,\n  \"graduate</w>\": 6675,\n  \"graduated</w>\": 15128,\n  \"graduates</w>\": 12236,\n  \"graduating</w>\": 14819,\n  \"graduation</w>\": 8060,\n  \"grady</w>\": 33980,\n  \"graeme</w>\": 30192,\n  \"graf\": 46478,\n  \"graf</w>\": 39765,\n  \"graff\": 10656,\n  \"graffiti</w>\": 11676,\n  \"graft</w>\": 32698,\n  \"grafton</w>\": 47347,\n  \"graham\": 19805,\n  \"graham</w>\": 7711,\n  \"grail</w>\": 37184,\n  \"grain\": 44003,\n  \"grain</w>\": 12109,\n  \"grains</w>\": 25791,\n  \"gral</w>\": 25631,\n  \"gram\": 2949,\n  \"gram</w>\": 2338,\n  \"grammar</w>\": 16077,\n  \"grammy</w>\": 15388,\n  \"grammys</w>\": 18121,\n  \"grams</w>\": 6294,\n  \"gran\": 3892,\n  \"gran</w>\": 14493,\n  \"granada</w>\": 31172,\n  \"grand\": 3058,\n  \"grand</w>\": 2991,\n  \"grandad</w>\": 29148,\n  \"grandchildren</w>\": 36856,\n  \"granddaughter</w>\": 29460,\n  \"grande\": 37514,\n  \"grande</w>\": 10757,\n  \"grandes</w>\": 36382,\n  \"grandfather</w>\": 15346,\n  \"grandma</w>\": 10525,\n  \"grandmother</w>\": 17469,\n  \"grandpa</w>\": 14582,\n  \"grandparents</w>\": 21311,\n  \"grandprix</w>\": 39358,\n  \"grandson</w>\": 20766,\n  \"grandstand</w>\": 43172,\n  \"grange\": 45027,\n  \"grange</w>\": 23850,\n  \"granger</w>\": 42968,\n  \"granite</w>\": 18813,\n  \"grann</w>\": 45585,\n  \"granny</w>\": 22710,\n  \"granola</w>\": 34271,\n  \"grant\": 18682,\n  \"grant</w>\": 5442,\n  \"granted</w>\": 14156,\n  \"granth\": 41283,\n  \"grants</w>\": 15123,\n  \"grape\": 19131,\n  \"grape</w>\": 15959,\n  \"grapefruit</w>\": 28347,\n  \"grapes</w>\": 18580,\n  \"grapevine</w>\": 47619,\n  \"graph\": 1349,\n  \"graph</w>\": 4407,\n  \"graphene</w>\": 38387,\n  \"grapher</w>\": 14987,\n  \"graphers</w>\": 32088,\n  \"graphic\": 15653,\n  \"graphic</w>\": 4245,\n  \"graphical</w>\": 20878,\n  \"graphicdesign</w>\": 21907,\n  \"graphics</w>\": 9492,\n  \"graphies</w>\": 40164,\n  \"graphite</w>\": 29447,\n  \"graphs</w>\": 24670,\n  \"graphy</w>\": 4897,\n  \"grapp\": 30843,\n  \"gras\": 31517,\n  \"gras</w>\": 17584,\n  \"grasp</w>\": 34975,\n  \"grass\": 11584,\n  \"grass</w>\": 5922,\n  \"grasses</w>\": 46807,\n  \"grasshopper</w>\": 48894,\n  \"grassi</w>\": 42294,\n  \"grasso</w>\": 34808,\n  \"grassroots</w>\": 21991,\n  \"grassy</w>\": 44140,\n  \"grat\": 9221,\n  \"grate\": 32463,\n  \"grateful\": 45659,\n  \"grateful</w>\": 5730,\n  \"grati\": 36402,\n  \"gratis</w>\": 33638,\n  \"gratitude</w>\": 12614,\n  \"grav\": 20663,\n  \"grave\": 16606,\n  \"grave</w>\": 9981,\n  \"gravel</w>\": 27054,\n  \"graves</w>\": 17665,\n  \"graveyard</w>\": 31176,\n  \"gravit\": 26150,\n  \"gravitational</w>\": 45268,\n  \"gravity\": 47426,\n  \"gravity</w>\": 15160,\n  \"gravy</w>\": 21225,\n  \"gray\": 12703,\n  \"gray</w>\": 7048,\n  \"grays</w>\": 46848,\n  \"grayson\": 45831,\n  \"grayson</w>\": 25471,\n  \"grazi\": 42427,\n  \"grazie</w>\": 38698,\n  \"grazing</w>\": 29889,\n  \"grc</w>\": 44069,\n  \"gre\": 689,\n  \"gre</w>\": 17878,\n  \"grease</w>\": 24132,\n  \"greasy</w>\": 44376,\n  \"great\": 3265,\n  \"great</w>\": 830,\n  \"greate\": 31930,\n  \"greater\": 32725,\n  \"greater</w>\": 7033,\n  \"greatest\": 39080,\n  \"greatest</w>\": 4153,\n  \"greatly</w>\": 13978,\n  \"greatness</w>\": 14189,\n  \"greats</w>\": 21855,\n  \"greaves</w>\": 42350,\n  \"greco</w>\": 39103,\n  \"gree\": 9987,\n  \"gree</w>\": 30774,\n  \"greece</w>\": 6965,\n  \"greed</w>\": 26147,\n  \"greedy</w>\": 33301,\n  \"greek\": 23844,\n  \"greek</w>\": 6842,\n  \"greeks</w>\": 35866,\n  \"green\": 2762,\n  \"green</w>\": 1901,\n  \"greenberg</w>\": 46662,\n  \"greene</w>\": 16383,\n  \"greener</w>\": 31169,\n  \"greenery</w>\": 42493,\n  \"greenfield</w>\": 39924,\n  \"greeng\": 42077,\n  \"greenhouse</w>\": 20819,\n  \"greening</w>\": 48673,\n  \"greenland</w>\": 27345,\n  \"greenpeace</w>\": 44755,\n  \"greens</w>\": 10235,\n  \"greensboro</w>\": 33436,\n  \"greenville</w>\": 25156,\n  \"greenway</w>\": 35205,\n  \"greenwich</w>\": 18658,\n  \"greenwood</w>\": 25782,\n  \"greer</w>\": 34345,\n  \"greet\": 11042,\n  \"greet</w>\": 11997,\n  \"greeted</w>\": 24546,\n  \"greeting</w>\": 17754,\n  \"greetings</w>\": 11569,\n  \"greets</w>\": 25464,\n  \"greg\": 6894,\n  \"greg</w>\": 7943,\n  \"gregation</w>\": 20131,\n  \"gregg\": 39422,\n  \"gregg</w>\": 22929,\n  \"gregor\": 33856,\n  \"gregor</w>\": 16177,\n  \"gregory</w>\": 16253,\n  \"gren\": 13941,\n  \"gren</w>\": 20119,\n  \"grenade</w>\": 33679,\n  \"grenfell</w>\": 42107,\n  \"gres</w>\": 39670,\n  \"gress</w>\": 2752,\n  \"gret\": 30041,\n  \"greta</w>\": 33443,\n  \"gretchen</w>\": 45516,\n  \"grette</w>\": 38774,\n  \"grew</w>\": 10451,\n  \"grey\": 9190,\n  \"grey</w>\": 5046,\n  \"greyhound</w>\": 27363,\n  \"greyhounds</w>\": 45718,\n  \"greys</w>\": 44311,\n  \"greysanatomy</w>\": 36833,\n  \"gri\": 2169,\n  \"gri</w>\": 18484,\n  \"grid\": 29067,\n  \"grid</w>\": 9882,\n  \"gridi\": 41063,\n  \"gridiron</w>\": 47786,\n  \"grids</w>\": 46500,\n  \"grief</w>\": 21058,\n  \"grier</w>\": 22016,\n  \"griev\": 36400,\n  \"grieving</w>\": 42383,\n  \"griez\": 47962,\n  \"griezmann</w>\": 48396,\n  \"griff\": 17855,\n  \"griff</w>\": 35551,\n  \"griffi\": 28676,\n  \"griffin\": 46612,\n  \"griffin</w>\": 13161,\n  \"griffith</w>\": 24375,\n  \"griffiths</w>\": 34182,\n  \"gril\": 49091,\n  \"grill\": 44083,\n  \"grill</w>\": 9519,\n  \"grille</w>\": 34748,\n  \"grilled</w>\": 10691,\n  \"grilling</w>\": 28324,\n  \"grills</w>\": 39464,\n  \"grim\": 20383,\n  \"grim</w>\": 23635,\n  \"grime</w>\": 37101,\n  \"grimes</w>\": 25057,\n  \"grimm</w>\": 27865,\n  \"grims\": 34861,\n  \"grimsby</w>\": 41513,\n  \"grin\": 11033,\n  \"grin</w>\": 28697,\n  \"grinch</w>\": 40527,\n  \"grind\": 25730,\n  \"grind</w>\": 11810,\n  \"grinder</w>\": 31733,\n  \"grinding</w>\": 21541,\n  \"gring</w>\": 40135,\n  \"grip</w>\": 15521,\n  \"gripping</w>\": 34567,\n  \"grips</w>\": 27819,\n  \"gris</w>\": 29150,\n  \"grit\": 22037,\n  \"grit</w>\": 22087,\n  \"grits</w>\": 44307,\n  \"gritty</w>\": 33704,\n  \"grizz\": 14877,\n  \"grizz</w>\": 44088,\n  \"grizzlies</w>\": 25594,\n  \"grizzly</w>\": 29676,\n  \"grl</w>\": 48005,\n  \"gro\": 1464,\n  \"gro</w>\": 12691,\n  \"grocer\": 11633,\n  \"groceries</w>\": 32409,\n  \"grocery</w>\": 13826,\n  \"grom</w>\": 45284,\n  \"gron\": 22345,\n  \"groningen</w>\": 45639,\n  \"groo\": 9015,\n  \"groom\": 39883,\n  \"groom</w>\": 22813,\n  \"grooming</w>\": 25575,\n  \"groot</w>\": 37708,\n  \"groove\": 39484,\n  \"groove</w>\": 17680,\n  \"grooves</w>\": 43954,\n  \"groovy</w>\": 30143,\n  \"gros\": 26834,\n  \"gros</w>\": 32639,\n  \"gross\": 31080,\n  \"gross</w>\": 11541,\n  \"grosven\": 46911,\n  \"grote\": 47207,\n  \"grotto</w>\": 45260,\n  \"grou\": 1582,\n  \"groun\": 45110,\n  \"ground\": 9558,\n  \"ground</w>\": 2461,\n  \"groundbreaking</w>\": 21006,\n  \"grounded</w>\": 27799,\n  \"grounds</w>\": 8454,\n  \"groundwater</w>\": 39457,\n  \"group\": 19045,\n  \"group</w>\": 1771,\n  \"groupe</w>\": 47654,\n  \"groups</w>\": 6776,\n  \"grouse</w>\": 36327,\n  \"grove\": 31756,\n  \"grove</w>\": 7463,\n  \"grover</w>\": 31345,\n  \"groves</w>\": 27306,\n  \"grow\": 3179,\n  \"grow</w>\": 4559,\n  \"grower</w>\": 44925,\n  \"growers</w>\": 25689,\n  \"growing\": 28429,\n  \"growing</w>\": 4425,\n  \"growingup\": 43433,\n  \"growler</w>\": 47096,\n  \"grown\": 41762,\n  \"grown</w>\": 7120,\n  \"grows</w>\": 13352,\n  \"growth\": 17925,\n  \"growth</w>\": 4026,\n  \"growthhacking</w>\": 25963,\n  \"grp</w>\": 27321,\n  \"grt</w>\": 28557,\n  \"gru\": 5957,\n  \"grub</w>\": 34019,\n  \"grue\": 42047,\n  \"gruesome</w>\": 47111,\n  \"grum\": 45454,\n  \"grump\": 49015,\n  \"grumpy</w>\": 23610,\n  \"grun\": 16203,\n  \"grunge</w>\": 33745,\n  \"gry\": 16140,\n  \"gry</w>\": 5364,\n  \"gs\": 25818,\n  \"gs</w>\": 1345,\n  \"gsa</w>\": 40433,\n  \"gsc</w>\": 47751,\n  \"gshore</w>\": 43392,\n  \"gsm</w>\": 32181,\n  \"gsp</w>\": 49173,\n  \"gst</w>\": 22239,\n  \"gt\": 16151,\n  \"gt</w>\": 4725,\n  \"gta\": 14826,\n  \"gta</w>\": 15338,\n  \"gtaonline</w>\": 27292,\n  \"gtav</w>\": 27283,\n  \"gti</w>\": 39954,\n  \"gto</w>\": 39071,\n  \"gtr</w>\": 33407,\n  \"gts</w>\": 37338,\n  \"gtx</w>\": 35230,\n  \"gu\": 700,\n  \"gu</w>\": 12916,\n  \"gua</w>\": 23751,\n  \"guacam\": 37477,\n  \"guacamole</w>\": 40115,\n  \"guad\": 22966,\n  \"guadal\": 46097,\n  \"guadalu\": 36994,\n  \"guadalupe</w>\": 38360,\n  \"guam</w>\": 37325,\n  \"guan\": 44191,\n  \"guan</w>\": 42406,\n  \"guang\": 27019,\n  \"guangzhou</w>\": 37857,\n  \"guar\": 4119,\n  \"guaran\": 9242,\n  \"guarantee</w>\": 17421,\n  \"guaranteed</w>\": 14731,\n  \"guarantees</w>\": 40154,\n  \"guard\": 30776,\n  \"guard</w>\": 4901,\n  \"guarded</w>\": 40602,\n  \"guardi\": 12008,\n  \"guardia</w>\": 43628,\n  \"guardian\": 23713,\n  \"guardian</w>\": 9498,\n  \"guardians</w>\": 21479,\n  \"guarding</w>\": 24966,\n  \"guardiola</w>\": 32100,\n  \"guards</w>\": 12810,\n  \"guatem\": 19423,\n  \"guatemala</w>\": 21670,\n  \"guay\": 48591,\n  \"guay</w>\": 24247,\n  \"gubernat\": 41400,\n  \"gubernatorial</w>\": 41618,\n  \"gucci</w>\": 16779,\n  \"gud\": 48061,\n  \"gud</w>\": 22378,\n  \"gue\": 2030,\n  \"gue</w>\": 2917,\n  \"gued</w>\": 38893,\n  \"guel\": 23146,\n  \"guelph</w>\": 27660,\n  \"guer\": 10391,\n  \"guern\": 29277,\n  \"guernsey</w>\": 33982,\n  \"guerra</w>\": 38215,\n  \"guerrero</w>\": 31967,\n  \"guerrilla</w>\": 36715,\n  \"gues\": 39971,\n  \"gues</w>\": 12601,\n  \"guess\": 35506,\n  \"guess</w>\": 3135,\n  \"guessed</w>\": 28005,\n  \"guesses</w>\": 30623,\n  \"guessing</w>\": 21891,\n  \"guest\": 27349,\n  \"guest</w>\": 3781,\n  \"guests</w>\": 6212,\n  \"guet</w>\": 36797,\n  \"guetta</w>\": 45904,\n  \"guez</w>\": 12313,\n  \"gug\": 31358,\n  \"guggen\": 35086,\n  \"guggenheim</w>\": 37135,\n  \"gui\": 2587,\n  \"gui</w>\": 25746,\n  \"guid\": 11437,\n  \"guidance</w>\": 12508,\n  \"guide\": 21845,\n  \"guide</w>\": 3555,\n  \"guided</w>\": 13194,\n  \"guidelines</w>\": 16591,\n  \"guides</w>\": 14375,\n  \"guiding</w>\": 22759,\n  \"guido</w>\": 41818,\n  \"guil\": 5008,\n  \"guild\": 19755,\n  \"guild</w>\": 16597,\n  \"guildford</w>\": 34450,\n  \"guildhall</w>\": 47224,\n  \"guillau\": 41123,\n  \"guillaume</w>\": 45394,\n  \"guiller\": 33660,\n  \"guillermo</w>\": 39524,\n  \"guilt</w>\": 26354,\n  \"guilty</w>\": 9761,\n  \"guin\": 13284,\n  \"guin</w>\": 47863,\n  \"guine\": 13759,\n  \"guinea</w>\": 18537,\n  \"guinness</w>\": 16648,\n  \"guire</w>\": 18209,\n  \"guise</w>\": 42024,\n  \"guit\": 3759,\n  \"guitar\": 21746,\n  \"guitar</w>\": 5084,\n  \"guitarist</w>\": 13035,\n  \"guitars</w>\": 15023,\n  \"guj\": 34935,\n  \"gujar\": 12698,\n  \"gujarat</w>\": 14714,\n  \"guk</w>\": 20280,\n  \"gul\": 5530,\n  \"gul</w>\": 21350,\n  \"gula</w>\": 27426,\n  \"gular</w>\": 34969,\n  \"gulf\": 22101,\n  \"gulf</w>\": 11279,\n  \"gull\": 48764,\n  \"gull</w>\": 28778,\n  \"gulls</w>\": 37501,\n  \"gully</w>\": 46112,\n  \"gum\": 22041,\n  \"gum</w>\": 11235,\n  \"gumb\": 40147,\n  \"gumbo</w>\": 47126,\n  \"gummy</w>\": 34276,\n  \"gums</w>\": 46609,\n  \"gun\": 2748,\n  \"gun</w>\": 3496,\n  \"guna</w>\": 43333,\n  \"gundam</w>\": 26087,\n  \"gundy</w>\": 21162,\n  \"gunman</w>\": 32743,\n  \"gunmen</w>\": 44738,\n  \"gunn</w>\": 27473,\n  \"gunna</w>\": 24002,\n  \"gunnar</w>\": 45301,\n  \"gunner</w>\": 35285,\n  \"gunners</w>\": 37788,\n  \"guns</w>\": 7591,\n  \"gunsense</w>\": 44781,\n  \"gunshot</w>\": 49250,\n  \"gunsn\": 49028,\n  \"gup\": 38632,\n  \"gup</w>\": 47335,\n  \"gupta</w>\": 15905,\n  \"gur\": 3218,\n  \"gur</w>\": 30224,\n  \"gura</w>\": 46836,\n  \"gurgaon</w>\": 33240,\n  \"guri</w>\": 43888,\n  \"gurl</w>\": 25445,\n  \"gurmee\": 35482,\n  \"gurmeetramrahim</w>\": 36549,\n  \"guru\": 18629,\n  \"guru</w>\": 10800,\n  \"gurudev</w>\": 48647,\n  \"gus</w>\": 8018,\n  \"gust</w>\": 24629,\n  \"gusta\": 23024,\n  \"gusta</w>\": 44196,\n  \"gustav\": 32062,\n  \"gustav</w>\": 37921,\n  \"gustave</w>\": 43170,\n  \"gustavo</w>\": 45943,\n  \"gusto</w>\": 37937,\n  \"gusts</w>\": 20896,\n  \"gusty</w>\": 27589,\n  \"gut\": 24780,\n  \"gut</w>\": 13486,\n  \"guter\": 44963,\n  \"guterres</w>\": 48738,\n  \"guth\": 31696,\n  \"guthrie</w>\": 33164,\n  \"gutier\": 32773,\n  \"gutierrez</w>\": 33739,\n  \"guts</w>\": 25983,\n  \"gutted</w>\": 26524,\n  \"gutter</w>\": 40537,\n  \"guwa\": 43063,\n  \"guwahati</w>\": 45045,\n  \"guy\": 10008,\n  \"guy</w>\": 2149,\n  \"guyana</w>\": 45215,\n  \"guyen</w>\": 28031,\n  \"guys\": 43588,\n  \"guys</w>\": 1791,\n  \"guyz</w>\": 48170,\n  \"guzman</w>\": 37960,\n  \"gv\": 15462,\n  \"gv</w>\": 17336,\n  \"gw\": 7172,\n  \"gw</w>\": 15717,\n  \"gwen\": 32165,\n  \"gwen</w>\": 24182,\n  \"gwin\": 43005,\n  \"gwy\": 32226,\n  \"gwyne\": 36923,\n  \"gx</w>\": 40227,\n  \"gy\": 2168,\n  \"gy</w>\": 1164,\n  \"gya</w>\": 43214,\n  \"gyan</w>\": 43814,\n  \"gye\": 21728,\n  \"gyllen\": 49348,\n  \"gym\": 9902,\n  \"gym</w>\": 5222,\n  \"gymna\": 13517,\n  \"gymnasium</w>\": 42847,\n  \"gymnast</w>\": 42658,\n  \"gymnastics</w>\": 20116,\n  \"gyn</w>\": 39603,\n  \"gyne\": 45836,\n  \"gyp\": 40053,\n  \"gypsy</w>\": 22354,\n  \"gypt</w>\": 41921,\n  \"gz\": 45937,\n  \"gz</w>\": 35841,\n  \"gÃ¶\": 40778,\n  \"gÃ¼\": 31907,\n  \"h\": 71,\n  \"h</w>\": 327,\n  \"ha\": 560,\n  \"ha</w>\": 1429,\n  \"haa</w>\": 26814,\n  \"haal</w>\": 35869,\n  \"haan</w>\": 36284,\n  \"haar\": 45247,\n  \"haar</w>\": 35859,\n  \"haas</w>\": 27443,\n  \"haasan</w>\": 26601,\n  \"hab\": 20573,\n  \"hab</w>\": 20002,\n  \"haban\": 46225,\n  \"haber\": 44737,\n  \"habit\": 8491,\n  \"habit</w>\": 17215,\n  \"habitat</w>\": 11747,\n  \"habitats</w>\": 35344,\n  \"habits</w>\": 14540,\n  \"habs</w>\": 27489,\n  \"hac\": 20343,\n  \"hace</w>\": 43623,\n  \"haci\": 40674,\n  \"hack\": 6610,\n  \"hack</w>\": 11182,\n  \"hackathon</w>\": 25182,\n  \"hacked</w>\": 19575,\n  \"hacker</w>\": 22376,\n  \"hackers</w>\": 21498,\n  \"hacking</w>\": 12939,\n  \"hackney\": 48811,\n  \"hackney</w>\": 24928,\n  \"hacks</w>\": 19965,\n  \"had\": 10660,\n  \"had</w>\": 1100,\n  \"hadi</w>\": 39058,\n  \"hadid</w>\": 26415,\n  \"hadith</w>\": 46907,\n  \"hadley</w>\": 44995,\n  \"hadn</w>\": 21480,\n  \"hadoop</w>\": 43868,\n  \"hae\": 30723,\n  \"hae</w>\": 27193,\n  \"hafi\": 39914,\n  \"hag\": 26855,\n  \"hag</w>\": 43207,\n  \"hagan</w>\": 47489,\n  \"hagen</w>\": 14664,\n  \"hager\": 48773,\n  \"hagg\": 26324,\n  \"hague</w>\": 28988,\n  \"hah\": 18108,\n  \"hah</w>\": 13680,\n  \"haha\": 1913,\n  \"haha</w>\": 3060,\n  \"hahah\": 27253,\n  \"hahah</w>\": 15441,\n  \"hahaha</w>\": 4722,\n  \"hahahah\": 37513,\n  \"hahahah</w>\": 20096,\n  \"hahahaha\": 8058,\n  \"hahahaha</w>\": 9501,\n  \"hahahahah</w>\": 33334,\n  \"hahahahaha</w>\": 16347,\n  \"hahahahahaha</w>\": 26487,\n  \"hahahahahahaha</w>\": 43653,\n  \"hahahahahahahaha\": 36126,\n  \"hahahha</w>\": 49205,\n  \"hahn</w>\": 35596,\n  \"hai\": 8734,\n  \"hai</w>\": 5234,\n  \"haider</w>\": 42200,\n  \"haiku</w>\": 19542,\n  \"hail\": 15272,\n  \"hail</w>\": 8634,\n  \"hailed</w>\": 44604,\n  \"hailey</w>\": 27703,\n  \"hailing</w>\": 47288,\n  \"hails</w>\": 32571,\n  \"hailstate</w>\": 35063,\n  \"hain</w>\": 23861,\n  \"hair\": 4658,\n  \"hair</w>\": 2225,\n  \"haircare</w>\": 43682,\n  \"haircut</w>\": 14711,\n  \"hairdresser</w>\": 47468,\n  \"haired</w>\": 27202,\n  \"hairs</w>\": 27951,\n  \"hairstyle</w>\": 22324,\n  \"hairstyles</w>\": 40627,\n  \"hairy</w>\": 26513,\n  \"haiti</w>\": 17368,\n  \"haitian</w>\": 37577,\n  \"haj\": 27885,\n  \"haj</w>\": 43191,\n  \"haji</w>\": 41889,\n  \"hajj</w>\": 35576,\n  \"hak\": 25142,\n  \"hak</w>\": 40671,\n  \"haka</w>\": 44011,\n  \"hake\": 41663,\n  \"hal\": 1296,\n  \"hal</w>\": 8708,\n  \"hala</w>\": 25918,\n  \"halal</w>\": 34216,\n  \"halam\": 29061,\n  \"halamadrid</w>\": 31132,\n  \"halder</w>\": 32201,\n  \"hale\": 37038,\n  \"hale</w>\": 14701,\n  \"halen</w>\": 39204,\n  \"halep</w>\": 49017,\n  \"haley\": 37330,\n  \"haley</w>\": 16839,\n  \"half\": 7453,\n  \"half</w>\": 2349,\n  \"halftime</w>\": 13742,\n  \"halfway</w>\": 16736,\n  \"hali\": 9860,\n  \"hali</w>\": 43030,\n  \"halibut</w>\": 49030,\n  \"halifax</w>\": 13411,\n  \"hall\": 6850,\n  \"hall</w>\": 2140,\n  \"halla</w>\": 29569,\n  \"halle\": 27763,\n  \"halle</w>\": 32239,\n  \"hallelujah</w>\": 36993,\n  \"halli\": 32665,\n  \"hallmark\": 31040,\n  \"hallmark</w>\": 32053,\n  \"hallmarkchannel</w>\": 36840,\n  \"hallo\": 3463,\n  \"halloffame</w>\": 48578,\n  \"halloween\": 28537,\n  \"halloween</w>\": 3739,\n  \"halls</w>\": 18052,\n  \"hallucin\": 35385,\n  \"hallway</w>\": 26845,\n  \"halo\": 33331,\n  \"halo</w>\": 11918,\n  \"halsey</w>\": 34256,\n  \"halt</w>\": 25640,\n  \"halter</w>\": 47194,\n  \"halton</w>\": 45445,\n  \"ham\": 1522,\n  \"ham</w>\": 1714,\n  \"hama</w>\": 17944,\n  \"hamas</w>\": 14818,\n  \"hamburg</w>\": 18409,\n  \"hamburger</w>\": 33928,\n  \"hamid</w>\": 32377,\n  \"hamil\": 6725,\n  \"hamill\": 45784,\n  \"hamill</w>\": 48729,\n  \"hamillhimself</w>\": 47324,\n  \"hamilton\": 22448,\n  \"hamilton</w>\": 7684,\n  \"hamlet</w>\": 27722,\n  \"hamlin</w>\": 49326,\n  \"hamm</w>\": 46110,\n  \"hammer\": 15331,\n  \"hammer</w>\": 9401,\n  \"hammered</w>\": 37251,\n  \"hammers</w>\": 35649,\n  \"hammersmith</w>\": 42127,\n  \"hammock</w>\": 33682,\n  \"hammond</w>\": 21761,\n  \"hamont</w>\": 18518,\n  \"hamp\": 6665,\n  \"hamper</w>\": 27692,\n  \"hampshire</w>\": 16006,\n  \"hampstead</w>\": 37340,\n  \"hampton\": 36582,\n  \"hampton</w>\": 12285,\n  \"hamptons</w>\": 42415,\n  \"hamr</w>\": 47979,\n  \"hamradio</w>\": 36712,\n  \"hams</w>\": 25619,\n  \"hamster</w>\": 33313,\n  \"hamstring</w>\": 39990,\n  \"hamza</w>\": 45762,\n  \"han\": 1545,\n  \"han</w>\": 3565,\n  \"hana</w>\": 16801,\n  \"hand\": 1722,\n  \"hand</w>\": 2463,\n  \"handbag</w>\": 22654,\n  \"handbags</w>\": 35667,\n  \"handball</w>\": 27988,\n  \"handbook</w>\": 25147,\n  \"handcrafted</w>\": 22185,\n  \"handed</w>\": 10881,\n  \"handedly</w>\": 48656,\n  \"handel</w>\": 40072,\n  \"handful</w>\": 23725,\n  \"handheld</w>\": 26812,\n  \"handic\": 17812,\n  \"handicap</w>\": 27063,\n  \"handicapp\": 42349,\n  \"handing</w>\": 19196,\n  \"handle\": 43681,\n  \"handle</w>\": 7245,\n  \"handled</w>\": 26824,\n  \"handler</w>\": 29097,\n  \"handles</w>\": 22124,\n  \"handling</w>\": 14071,\n  \"handmade\": 18054,\n  \"handmade</w>\": 6737,\n  \"handmadehour</w>\": 25724,\n  \"handover</w>\": 46922,\n  \"hands</w>\": 3500,\n  \"handshake</w>\": 38418,\n  \"handsome</w>\": 7438,\n  \"handwriting</w>\": 29986,\n  \"handwritten</w>\": 35192,\n  \"handy</w>\": 13479,\n  \"hane</w>\": 28411,\n  \"hang\": 3351,\n  \"hang</w>\": 5592,\n  \"hangar</w>\": 33439,\n  \"hanged</w>\": 40807,\n  \"hanger</w>\": 28905,\n  \"hangin</w>\": 22670,\n  \"hanging</w>\": 4850,\n  \"hangout</w>\": 17572,\n  \"hangover</w>\": 20755,\n  \"hangs</w>\": 21785,\n  \"hani\": 39944,\n  \"hani</w>\": 18374,\n  \"hank\": 35993,\n  \"hank</w>\": 17655,\n  \"hanks</w>\": 29943,\n  \"hanley</w>\": 47284,\n  \"hann\": 5584,\n  \"hanna</w>\": 10075,\n  \"hannah\": 18622,\n  \"hannah</w>\": 9142,\n  \"hannel</w>\": 43477,\n  \"hanni\": 19493,\n  \"hannibal</w>\": 25149,\n  \"hannity</w>\": 24569,\n  \"hannover</w>\": 39976,\n  \"hanoi</w>\": 36134,\n  \"hanover</w>\": 33246,\n  \"hans\": 35172,\n  \"hans</w>\": 16628,\n  \"hansen</w>\": 19729,\n  \"hanson</w>\": 24602,\n  \"hant\": 40641,\n  \"hanuk\": 32774,\n  \"hanukkah</w>\": 34247,\n  \"hanuman</w>\": 46975,\n  \"hao</w>\": 27184,\n  \"hap\": 44981,\n  \"hap</w>\": 47988,\n  \"happ\": 784,\n  \"happen\": 21486,\n  \"happen</w>\": 4506,\n  \"happened</w>\": 4402,\n  \"happening</w>\": 4284,\n  \"happeningnow</w>\": 43107,\n  \"happenings</w>\": 41998,\n  \"happens</w>\": 4988,\n  \"happier</w>\": 14118,\n  \"happiest</w>\": 13811,\n  \"happily</w>\": 17316,\n  \"happiness</w>\": 5096,\n  \"happy\": 2952,\n  \"happy</w>\": 900,\n  \"happybirthday\": 9651,\n  \"happybirthday</w>\": 12207,\n  \"happydays</w>\": 25106,\n  \"happye\": 33922,\n  \"happyeaster</w>\": 38745,\n  \"happyfathersday</w>\": 43534,\n  \"happyfriday</w>\": 33340,\n  \"happyhalloween</w>\": 28750,\n  \"happyholidays</w>\": 32186,\n  \"happyhour</w>\": 32036,\n  \"happymonday</w>\": 47364,\n  \"happymothersday</w>\": 42425,\n  \"happynewyear</w>\": 18655,\n  \"happythanksgiving</w>\": 40593,\n  \"happyvalentinesday</w>\": 42403,\n  \"haps</w>\": 9114,\n  \"haq</w>\": 32445,\n  \"har\": 915,\n  \"har</w>\": 5888,\n  \"hara</w>\": 10367,\n  \"haram\": 35732,\n  \"haram</w>\": 22950,\n  \"haran</w>\": 27921,\n  \"harare</w>\": 43562,\n  \"haras\": 26644,\n  \"harass\": 16481,\n  \"harassed</w>\": 43067,\n  \"harassment</w>\": 16641,\n  \"harat</w>\": 28984,\n  \"harb\": 5856,\n  \"harbaugh</w>\": 45220,\n  \"harbor\": 40686,\n  \"harbor</w>\": 10202,\n  \"harbour\": 35430,\n  \"harbour</w>\": 10011,\n  \"harcourt</w>\": 48093,\n  \"hard\": 3312,\n  \"hard</w>\": 1626,\n  \"hardcover</w>\": 31123,\n  \"harden</w>\": 27350,\n  \"harder</w>\": 12274,\n  \"hardest</w>\": 15258,\n  \"hardin</w>\": 43802,\n  \"harding</w>\": 24382,\n  \"hardly</w>\": 17363,\n  \"hardro\": 28126,\n  \"hardrock\": 48365,\n  \"hardrock</w>\": 40739,\n  \"hards</w>\": 44048,\n  \"hardship</w>\": 45085,\n  \"hardt</w>\": 17922,\n  \"hardware</w>\": 11957,\n  \"hardwell</w>\": 45572,\n  \"hardwick</w>\": 46864,\n  \"hardwood</w>\": 28167,\n  \"hardwork\": 42554,\n  \"hardwork</w>\": 27404,\n  \"hardworking</w>\": 28095,\n  \"hardworkpaysoff</w>\": 49193,\n  \"hardy\": 48179,\n  \"hardy</w>\": 14113,\n  \"hare\": 27903,\n  \"hare</w>\": 18464,\n  \"harga</w>\": 39738,\n  \"hari\": 25472,\n  \"hari</w>\": 8981,\n  \"harlan</w>\": 49133,\n  \"harle\": 29096,\n  \"harlem</w>\": 17771,\n  \"harley\": 24702,\n  \"harley</w>\": 13632,\n  \"harleydavidson</w>\": 39183,\n  \"harlow</w>\": 34113,\n  \"harm\": 16656,\n  \"harm</w>\": 14452,\n  \"harman</w>\": 42434,\n  \"harmed</w>\": 39637,\n  \"harmful</w>\": 21725,\n  \"harmless</w>\": 44369,\n  \"harmon\": 10828,\n  \"harmon</w>\": 28729,\n  \"harmony</w>\": 10785,\n  \"harms</w>\": 46703,\n  \"harne\": 43323,\n  \"harness</w>\": 23205,\n  \"harold</w>\": 16917,\n  \"harp</w>\": 27339,\n  \"harper\": 31288,\n  \"harper</w>\": 12634,\n  \"harri\": 6639,\n  \"harrier</w>\": 37372,\n  \"harriet</w>\": 27154,\n  \"harrington</w>\": 34340,\n  \"harris\": 25356,\n  \"harris</w>\": 6925,\n  \"harrisburg</w>\": 40590,\n  \"harrison\": 34389,\n  \"harrison</w>\": 10540,\n  \"harro\": 18939,\n  \"harrogate</w>\": 30842,\n  \"harrow</w>\": 38807,\n  \"harry\": 11094,\n  \"harry</w>\": 3600,\n  \"harrypotter</w>\": 23375,\n  \"harsh\": 30596,\n  \"harsh</w>\": 16944,\n  \"hart\": 9335,\n  \"hart</w>\": 7752,\n  \"hartford</w>\": 23434,\n  \"harth</w>\": 35619,\n  \"hartle\": 47482,\n  \"hartley</w>\": 31268,\n  \"hartman</w>\": 43294,\n  \"haru</w>\": 35099,\n  \"harvard\": 28118,\n  \"harvard</w>\": 12848,\n  \"harve\": 6405,\n  \"harvest\": 44495,\n  \"harvest</w>\": 8971,\n  \"harvested</w>\": 35899,\n  \"harvesting</w>\": 26674,\n  \"harvey\": 33289,\n  \"harvey</w>\": 9586,\n  \"harvick</w>\": 46983,\n  \"haryana</w>\": 27661,\n  \"has\": 13855,\n  \"has</w>\": 791,\n  \"hasan</w>\": 30049,\n  \"hasbro</w>\": 37405,\n  \"hash\": 6338,\n  \"hash</w>\": 19199,\n  \"hashi</w>\": 41831,\n  \"hashmi</w>\": 35852,\n  \"hashtag\": 34015,\n  \"hashtag</w>\": 9238,\n  \"hashtags</w>\": 23514,\n  \"haskell</w>\": 48550,\n  \"hasn</w>\": 9143,\n  \"hass\": 9298,\n  \"hassan</w>\": 15829,\n  \"hassee</w>\": 37117,\n  \"hassel\": 32204,\n  \"hassle</w>\": 35762,\n  \"hast\": 18146,\n  \"hasta</w>\": 36623,\n  \"hastings</w>\": 22035,\n  \"hat\": 3447,\n  \"hat</w>\": 3801,\n  \"hatch\": 24202,\n  \"hatch</w>\": 17809,\n  \"hatchback</w>\": 42348,\n  \"hatched</w>\": 42158,\n  \"hate\": 23546,\n  \"hate</w>\": 3753,\n  \"hated</w>\": 21298,\n  \"hateful</w>\": 36418,\n  \"hater</w>\": 36917,\n  \"haters</w>\": 14027,\n  \"hates</w>\": 14957,\n  \"hatfield</w>\": 38448,\n  \"hath\": 27894,\n  \"hath</w>\": 34416,\n  \"hathaway</w>\": 31801,\n  \"hati</w>\": 26045,\n  \"hating</w>\": 25668,\n  \"hatred</w>\": 19046,\n  \"hats</w>\": 9812,\n  \"hatt\": 8747,\n  \"hatton</w>\": 44861,\n  \"hau\": 5152,\n  \"hauer</w>\": 48751,\n  \"haul\": 23743,\n  \"haul</w>\": 12332,\n  \"hauled</w>\": 46620,\n  \"hauling</w>\": 43132,\n  \"haun\": 9676,\n  \"haunt</w>\": 31039,\n  \"haunted</w>\": 14944,\n  \"haunting</w>\": 24034,\n  \"haunts</w>\": 48035,\n  \"haus\": 41755,\n  \"haus</w>\": 16478,\n  \"hausen</w>\": 33338,\n  \"hauser</w>\": 46586,\n  \"haute</w>\": 28854,\n  \"hav\": 13443,\n  \"hav</w>\": 20447,\n  \"havan</w>\": 36304,\n  \"havana</w>\": 23357,\n  \"havas\": 46261,\n  \"have\": 18053,\n  \"have</w>\": 720,\n  \"haven\": 33074,\n  \"haven</w>\": 3871,\n  \"havent</w>\": 29130,\n  \"haver\": 27876,\n  \"haves</w>\": 49088,\n  \"havin</w>\": 31937,\n  \"having</w>\": 1977,\n  \"havoc</w>\": 24447,\n  \"haw\": 2788,\n  \"haw</w>\": 26954,\n  \"hawa\": 6067,\n  \"hawa</w>\": 46278,\n  \"hawai\": 15800,\n  \"hawaii\": 32413,\n  \"hawaii</w>\": 8265,\n  \"hawaiian</w>\": 17734,\n  \"hawan</w>\": 27765,\n  \"hawk\": 14704,\n  \"hawk</w>\": 8218,\n  \"hawke</w>\": 38178,\n  \"hawker</w>\": 39051,\n  \"hawkeye</w>\": 38666,\n  \"hawkeyes</w>\": 34266,\n  \"hawking</w>\": 33437,\n  \"hawkins</w>\": 19740,\n  \"hawks\": 44806,\n  \"hawks</w>\": 5841,\n  \"hawthorn</w>\": 45372,\n  \"hawthorne</w>\": 36730,\n  \"hay\": 4871,\n  \"hay</w>\": 11367,\n  \"haya</w>\": 41325,\n  \"hayat</w>\": 49360,\n  \"hayden</w>\": 19806,\n  \"haydn</w>\": 48207,\n  \"haye\": 36583,\n  \"hayes</w>\": 13555,\n  \"hayley\": 39986,\n  \"hayley</w>\": 22204,\n  \"haynes</w>\": 30496,\n  \"hays</w>\": 41524,\n  \"hayward</w>\": 29400,\n  \"haz\": 5040,\n  \"haz</w>\": 39921,\n  \"hazard\": 26174,\n  \"hazard</w>\": 15178,\n  \"hazardous</w>\": 27102,\n  \"hazards</w>\": 30639,\n  \"haze</w>\": 22785,\n  \"hazel\": 19838,\n  \"hazel</w>\": 21882,\n  \"hazelnut</w>\": 35816,\n  \"hazi</w>\": 22740,\n  \"hazmat</w>\": 48887,\n  \"hazrat</w>\": 45775,\n  \"hazy</w>\": 32655,\n  \"hb\": 6854,\n  \"hb</w>\": 12576,\n  \"hbcu</w>\": 40008,\n  \"hbd\": 25277,\n  \"hbd</w>\": 13594,\n  \"hbo</w>\": 15252,\n  \"hc\": 15831,\n  \"hc</w>\": 7821,\n  \"hcs</w>\": 46850,\n  \"hd\": 11601,\n  \"hd</w>\": 4414,\n  \"hdd</w>\": 40508,\n  \"hdmi</w>\": 33302,\n  \"hdr</w>\": 28065,\n  \"he\": 651,\n  \"he</w>\": 797,\n  \"hea\": 27150,\n  \"hea</w>\": 32790,\n  \"head\": 1603,\n  \"head</w>\": 1375,\n  \"headache</w>\": 23849,\n  \"headaches</w>\": 38025,\n  \"headband</w>\": 28556,\n  \"headed</w>\": 6153,\n  \"header</w>\": 11077,\n  \"heading</w>\": 4409,\n  \"headless</w>\": 45219,\n  \"headlights</w>\": 42422,\n  \"headline</w>\": 10891,\n  \"headliner</w>\": 38880,\n  \"headlines</w>\": 14706,\n  \"headlining</w>\": 26971,\n  \"headphone</w>\": 37524,\n  \"headphones</w>\": 14906,\n  \"headquarters</w>\": 13041,\n  \"heads</w>\": 5174,\n  \"headset</w>\": 23883,\n  \"headshot</w>\": 34890,\n  \"heal\": 1231,\n  \"heal</w>\": 13833,\n  \"healed</w>\": 31456,\n  \"healer</w>\": 38328,\n  \"healey</w>\": 38985,\n  \"healing</w>\": 9295,\n  \"heals</w>\": 32384,\n  \"health\": 2145,\n  \"health</w>\": 1728,\n  \"healthand\": 43704,\n  \"healthcare\": 42500,\n  \"healthcare</w>\": 6023,\n  \"healthier</w>\": 18242,\n  \"healthtech</w>\": 42694,\n  \"healthy\": 10330,\n  \"healthy</w>\": 3782,\n  \"healthye\": 31532,\n  \"healthyeating</w>\": 33761,\n  \"healthyfood</w>\": 39996,\n  \"healthylifestyle</w>\": 46254,\n  \"healthyliving</w>\": 27293,\n  \"healy</w>\": 34299,\n  \"heap</w>\": 34781,\n  \"heaps</w>\": 44446,\n  \"hear\": 2749,\n  \"hear</w>\": 2584,\n  \"heard</w>\": 4063,\n  \"hearing\": 46353,\n  \"hearing</w>\": 5541,\n  \"hearings</w>\": 33175,\n  \"hearn</w>\": 36613,\n  \"hears</w>\": 25395,\n  \"heart\": 4975,\n  \"heart</w>\": 1936,\n  \"heartbeat</w>\": 29154,\n  \"heartbreak</w>\": 29281,\n  \"heartbreaking</w>\": 21322,\n  \"heartbroken</w>\": 35383,\n  \"hearted</w>\": 21679,\n  \"heartfelt</w>\": 22904,\n  \"hearth\": 31563,\n  \"hearthstone</w>\": 34054,\n  \"hearti\": 29345,\n  \"hearties</w>\": 44572,\n  \"heartland</w>\": 31923,\n  \"heartless</w>\": 47022,\n  \"heartnews</w>\": 40426,\n  \"hearts</w>\": 5516,\n  \"heartw\": 30002,\n  \"heartwarming</w>\": 34080,\n  \"hearty</w>\": 26994,\n  \"heat\": 12175,\n  \"heat</w>\": 4403,\n  \"heated</w>\": 17057,\n  \"heater</w>\": 23246,\n  \"heath\": 12794,\n  \"heath</w>\": 11719,\n  \"heather\": 20230,\n  \"heather</w>\": 12470,\n  \"heathrow</w>\": 24171,\n  \"heating</w>\": 12478,\n  \"heaton</w>\": 34557,\n  \"heats</w>\": 36106,\n  \"heatwave</w>\": 25726,\n  \"heav\": 2409,\n  \"heaven\": 15520,\n  \"heaven</w>\": 5545,\n  \"heavenly</w>\": 19117,\n  \"heavens</w>\": 26026,\n  \"heavier</w>\": 31253,\n  \"heaviest</w>\": 33268,\n  \"heavily</w>\": 14123,\n  \"heavy\": 12048,\n  \"heavy</w>\": 4200,\n  \"heavymetal</w>\": 39804,\n  \"heavyweight</w>\": 17448,\n  \"heb\": 24700,\n  \"heb</w>\": 34515,\n  \"hebdo</w>\": 41817,\n  \"hebrew</w>\": 27298,\n  \"hebrides</w>\": 45121,\n  \"hebron</w>\": 45725,\n  \"hec\": 18932,\n  \"heck\": 22985,\n  \"heck</w>\": 14427,\n  \"hectares</w>\": 44162,\n  \"hectic</w>\": 37245,\n  \"hector</w>\": 25852,\n  \"hed\": 18271,\n  \"hedge\": 16229,\n  \"hedge</w>\": 20294,\n  \"hedgehog</w>\": 21940,\n  \"hedges</w>\": 41345,\n  \"hee\": 18364,\n  \"hee</w>\": 15773,\n  \"heechul</w>\": 42487,\n  \"heed</w>\": 15118,\n  \"heel\": 33646,\n  \"heel</w>\": 16861,\n  \"heels</w>\": 10909,\n  \"heem</w>\": 30061,\n  \"heer</w>\": 40473,\n  \"hef\": 29473,\n  \"heff\": 48756,\n  \"hefty</w>\": 48584,\n  \"heg\": 41995,\n  \"heh</w>\": 25834,\n  \"hehe\": 48723,\n  \"hehe</w>\": 10658,\n  \"hehehe</w>\": 24138,\n  \"hei\": 6101,\n  \"hei</w>\": 29051,\n  \"heidel\": 42927,\n  \"heidelberg</w>\": 48445,\n  \"heidi\": 44860,\n  \"heidi</w>\": 23867,\n  \"heifer</w>\": 48219,\n  \"heigh\": 43883,\n  \"height</w>\": 10788,\n  \"heights</w>\": 8418,\n  \"heim\": 10931,\n  \"heim</w>\": 9768,\n  \"heimer</w>\": 39517,\n  \"hein\": 15487,\n  \"hein</w>\": 43206,\n  \"heine\": 28742,\n  \"heineken</w>\": 36874,\n  \"heinrich</w>\": 47877,\n  \"heinz</w>\": 32359,\n  \"heir\": 27083,\n  \"heir</w>\": 34007,\n  \"heirloom</w>\": 34232,\n  \"heirs</w>\": 43834,\n  \"heis\": 21849,\n  \"heisman</w>\": 34537,\n  \"heist</w>\": 31035,\n  \"heit</w>\": 37255,\n  \"hel\": 919,\n  \"hel</w>\": 11579,\n  \"hela</w>\": 48212,\n  \"held</w>\": 4042,\n  \"hele</w>\": 46129,\n  \"helen\": 17576,\n  \"helen</w>\": 11291,\n  \"helena</w>\": 23109,\n  \"helene</w>\": 41591,\n  \"helens</w>\": 45940,\n  \"heli\": 33874,\n  \"heli</w>\": 40183,\n  \"helicop\": 10035,\n  \"helicopter</w>\": 11956,\n  \"helicopters</w>\": 26922,\n  \"helium</w>\": 46505,\n  \"helix</w>\": 35247,\n  \"hell\": 8410,\n  \"hell</w>\": 4141,\n  \"hella</w>\": 19800,\n  \"hellboy</w>\": 48428,\n  \"helle\": 48600,\n  \"helle</w>\": 46968,\n  \"hellenic</w>\": 42544,\n  \"heller</w>\": 44464,\n  \"hello\": 12887,\n  \"hello</w>\": 3306,\n  \"hells</w>\": 47989,\n  \"helly</w>\": 48690,\n  \"helm\": 47970,\n  \"helm</w>\": 19520,\n  \"helmet</w>\": 11122,\n  \"helmets</w>\": 21843,\n  \"help\": 8641,\n  \"help</w>\": 1318,\n  \"helped</w>\": 4845,\n  \"helper</w>\": 29321,\n  \"helpers</w>\": 36316,\n  \"helpful</w>\": 12695,\n  \"helping</w>\": 3875,\n  \"helpless</w>\": 47638,\n  \"helpline</w>\": 43101,\n  \"helps</w>\": 5144,\n  \"helsin\": 17842,\n  \"helsinki</w>\": 19626,\n  \"hem\": 20270,\n  \"hem</w>\": 11148,\n  \"hemi\": 14256,\n  \"hemi</w>\": 46856,\n  \"heming\": 30819,\n  \"hemingway</w>\": 33470,\n  \"hemisphere</w>\": 32767,\n  \"hemmings</w>\": 34882,\n  \"hemo\": 43788,\n  \"hemp\": 28225,\n  \"hemp</w>\": 18467,\n  \"hems\": 32451,\n  \"hemsworth</w>\": 39428,\n  \"hen\": 2385,\n  \"hen</w>\": 8047,\n  \"hence</w>\": 23640,\n  \"hend\": 11560,\n  \"hender\": 49248,\n  \"henderson</w>\": 14348,\n  \"hendrick</w>\": 45296,\n  \"hendricks</w>\": 37588,\n  \"hendrix</w>\": 23605,\n  \"henge</w>\": 33104,\n  \"henley</w>\": 27853,\n  \"henna</w>\": 39455,\n  \"hennessy</w>\": 42667,\n  \"henri\": 19431,\n  \"henri</w>\": 21610,\n  \"henrik</w>\": 35772,\n  \"henry\": 16018,\n  \"henry</w>\": 5508,\n  \"hens</w>\": 31742,\n  \"henson</w>\": 32935,\n  \"hep\": 17724,\n  \"hep</w>\": 48791,\n  \"hepat\": 23767,\n  \"hepatitis</w>\": 32169,\n  \"hepburn</w>\": 26348,\n  \"her\": 1223,\n  \"her</w>\": 899,\n  \"hera</w>\": 38724,\n  \"heral\": 37809,\n  \"herald\": 27625,\n  \"herald</w>\": 12851,\n  \"herb\": 26116,\n  \"herb</w>\": 15302,\n  \"herbal</w>\": 21868,\n  \"herbali\": 44087,\n  \"herbalife</w>\": 48364,\n  \"herbert</w>\": 19935,\n  \"herbs</w>\": 17320,\n  \"hercules</w>\": 26539,\n  \"herd\": 36142,\n  \"herd</w>\": 18589,\n  \"here\": 9134,\n  \"here</w>\": 763,\n  \"hered\": 47976,\n  \"hereford</w>\": 35543,\n  \"heres</w>\": 13566,\n  \"hereto\": 47673,\n  \"heri</w>\": 31392,\n  \"herit\": 4720,\n  \"heritag\": 38273,\n  \"heritage\": 20962,\n  \"heritage</w>\": 5455,\n  \"herman\": 31890,\n  \"herman</w>\": 21568,\n  \"hermann</w>\": 40942,\n  \"hermes</w>\": 34563,\n  \"hermi\": 35265,\n  \"hermione</w>\": 45502,\n  \"hermit</w>\": 43953,\n  \"hermitage</w>\": 47706,\n  \"hermo\": 40967,\n  \"hermosa</w>\": 42531,\n  \"hern\": 30571,\n  \"hern</w>\": 43576,\n  \"hernandez</w>\": 17707,\n  \"hero\": 7338,\n  \"hero</w>\": 3756,\n  \"heroes\": 38010,\n  \"heroes</w>\": 5506,\n  \"heroic</w>\": 24255,\n  \"heroin</w>\": 23841,\n  \"heroine</w>\": 27420,\n  \"heron</w>\": 22593,\n  \"heros</w>\": 37642,\n  \"herr</w>\": 38537,\n  \"herrera</w>\": 27755,\n  \"herring</w>\": 30211,\n  \"hers</w>\": 25359,\n  \"herself</w>\": 9207,\n  \"hersh\": 20379,\n  \"hershey</w>\": 29734,\n  \"hert\": 26744,\n  \"hertfordshire</w>\": 41070,\n  \"herts</w>\": 35784,\n  \"herty</w>\": 23454,\n  \"hertz</w>\": 49383,\n  \"hes\": 30553,\n  \"hes</w>\": 12784,\n  \"hesit\": 23933,\n  \"hesitate</w>\": 34967,\n  \"hess</w>\": 41888,\n  \"hester</w>\": 31105,\n  \"het\": 37527,\n  \"het</w>\": 19678,\n  \"hetero\": 26405,\n  \"heu\": 20105,\n  \"heughan</w>\": 32298,\n  \"hew\": 48141,\n  \"hew</w>\": 43051,\n  \"hewitt</w>\": 28871,\n  \"hex\": 16255,\n  \"hex</w>\": 31241,\n  \"hey\": 10759,\n  \"hey</w>\": 2189,\n  \"hez\": 34591,\n  \"hezbollah</w>\": 37636,\n  \"hf\": 26606,\n  \"hf</w>\": 20603,\n  \"hfx\": 47297,\n  \"hg\": 23986,\n  \"hg</w>\": 26237,\n  \"hgtv</w>\": 47657,\n  \"hh\": 3280,\n  \"hh</w>\": 5180,\n  \"hhh</w>\": 8281,\n  \"hhhh\": 19391,\n  \"hhhh</w>\": 13121,\n  \"hhhhh</w>\": 24246,\n  \"hhhhhh</w>\": 37278,\n  \"hhs</w>\": 27006,\n  \"hi\": 677,\n  \"hi</w>\": 1883,\n  \"hia</w>\": 20672,\n  \"hiatus</w>\": 27823,\n  \"hib\": 15922,\n  \"hiber\": 38799,\n  \"hibis\": 36226,\n  \"hibiscus</w>\": 36460,\n  \"hibition</w>\": 24658,\n  \"hibs</w>\": 42814,\n  \"hic\": 3549,\n  \"hic</w>\": 38079,\n  \"hick\": 14813,\n  \"hickman</w>\": 49148,\n  \"hickory</w>\": 29905,\n  \"hicks</w>\": 23429,\n  \"hid\": 15552,\n  \"hid</w>\": 14451,\n  \"hidalgo</w>\": 47464,\n  \"hidden\": 28305,\n  \"hidden</w>\": 7029,\n  \"hiddleston</w>\": 31444,\n  \"hide\": 17725,\n  \"hide</w>\": 9379,\n  \"hideous</w>\": 46588,\n  \"hides</w>\": 30800,\n  \"hiding</w>\": 11371,\n  \"hie</w>\": 15763,\n  \"hier\": 23433,\n  \"hier</w>\": 29913,\n  \"hierarchy</w>\": 44442,\n  \"hifi</w>\": 38168,\n  \"hig\": 38108,\n  \"higgins</w>\": 21783,\n  \"high\": 1487,\n  \"high</w>\": 1400,\n  \"higher</w>\": 5321,\n  \"highered</w>\": 27072,\n  \"highest</w>\": 5317,\n  \"highland\": 32244,\n  \"highland</w>\": 16062,\n  \"highlander</w>\": 46251,\n  \"highlanders</w>\": 40445,\n  \"highlands</w>\": 16883,\n  \"highlight</w>\": 8264,\n  \"highlighted</w>\": 22252,\n  \"highlighter</w>\": 45460,\n  \"highlighting</w>\": 17344,\n  \"highlights</w>\": 6173,\n  \"highly</w>\": 5302,\n  \"highness</w>\": 38694,\n  \"highs</w>\": 15144,\n  \"highschool</w>\": 23102,\n  \"highway\": 45344,\n  \"highway</w>\": 7620,\n  \"highways</w>\": 28007,\n  \"higu\": 39115,\n  \"hihi</w>\": 36240,\n  \"hii</w>\": 42315,\n  \"hijab</w>\": 31407,\n  \"hika</w>\": 41356,\n  \"hikari</w>\": 44624,\n  \"hike</w>\": 9404,\n  \"hiked</w>\": 36471,\n  \"hiker</w>\": 40947,\n  \"hikers</w>\": 46090,\n  \"hikes</w>\": 27076,\n  \"hiking</w>\": 9118,\n  \"hiko</w>\": 48708,\n  \"hil\": 3508,\n  \"hil</w>\": 17927,\n  \"hila</w>\": 38837,\n  \"hilar\": 37337,\n  \"hilari\": 7784,\n  \"hilarious</w>\": 8358,\n  \"hilariously</w>\": 43476,\n  \"hilary\": 45898,\n  \"hilary</w>\": 25415,\n  \"hilde\": 45382,\n  \"hill\": 3671,\n  \"hill</w>\": 2682,\n  \"hillary\": 13257,\n  \"hillary</w>\": 7074,\n  \"hillaryclinton</w>\": 15357,\n  \"hilli\": 32513,\n  \"hills\": 24178,\n  \"hills</w>\": 5289,\n  \"hillsborough</w>\": 32157,\n  \"hillside</w>\": 37194,\n  \"hilltop</w>\": 45858,\n  \"hilly</w>\": 32483,\n  \"hilton\": 33621,\n  \"hilton</w>\": 14012,\n  \"him\": 4128,\n  \"him</w>\": 1269,\n  \"himach\": 29132,\n  \"himachal</w>\": 35461,\n  \"himalay\": 17552,\n  \"himalayan</w>\": 30318,\n  \"himalayas</w>\": 32872,\n  \"hime</w>\": 45892,\n  \"himself</w>\": 4530,\n  \"himss</w>\": 41730,\n  \"hin\": 1676,\n  \"hin</w>\": 37930,\n  \"hina</w>\": 40571,\n  \"hinakhan</w>\": 45518,\n  \"hinch\": 49320,\n  \"hind\": 34460,\n  \"hind</w>\": 23293,\n  \"hindi</w>\": 14967,\n  \"hinds</w>\": 47859,\n  \"hindu\": 17587,\n  \"hindu</w>\": 12053,\n  \"hinduism</w>\": 40592,\n  \"hindus</w>\": 25701,\n  \"hindustan</w>\": 46553,\n  \"hines</w>\": 37462,\n  \"hing\": 37968,\n  \"hini</w>\": 33564,\n  \"hino</w>\": 45343,\n  \"hint</w>\": 11868,\n  \"hinton</w>\": 47165,\n  \"hints</w>\": 20594,\n  \"hio</w>\": 32897,\n  \"hip\": 11725,\n  \"hip</w>\": 6584,\n  \"hipho\": 8819,\n  \"hiphop\": 26598,\n  \"hiphop</w>\": 10914,\n  \"hipp\": 13607,\n  \"hippie</w>\": 28637,\n  \"hippo\": 28398,\n  \"hippo</w>\": 36729,\n  \"hips</w>\": 30191,\n  \"hipstamatic</w>\": 31002,\n  \"hipster</w>\": 19987,\n  \"hipsters</w>\": 48265,\n  \"hir\": 4959,\n  \"hir</w>\": 14728,\n  \"hira</w>\": 42577,\n  \"hire\": 32356,\n  \"hire</w>\": 8243,\n  \"hired</w>\": 17602,\n  \"hires</w>\": 24133,\n  \"hiring</w>\": 7835,\n  \"hiro\": 17396,\n  \"hiro</w>\": 20588,\n  \"hiroshima</w>\": 33867,\n  \"hirsch</w>\": 46967,\n  \"his\": 15211,\n  \"his</w>\": 787,\n  \"hism</w>\": 23502,\n  \"hispan\": 16843,\n  \"hispanic</w>\": 22676,\n  \"hist\": 21710,\n  \"hist</w>\": 13779,\n  \"histo\": 33479,\n  \"histor\": 2993,\n  \"historia</w>\": 46010,\n  \"historian</w>\": 20697,\n  \"historians</w>\": 35200,\n  \"historic\": 30195,\n  \"historic</w>\": 5726,\n  \"historical\": 34154,\n  \"historical</w>\": 8039,\n  \"historically</w>\": 30445,\n  \"histories</w>\": 34736,\n  \"history\": 11142,\n  \"history</w>\": 1695,\n  \"historymonth</w>\": 19356,\n  \"historyof\": 35905,\n  \"hit\": 5453,\n  \"hit</w>\": 2341,\n  \"hitch\": 22937,\n  \"hitch</w>\": 36203,\n  \"hitler</w>\": 16518,\n  \"hitman</w>\": 33290,\n  \"hits</w>\": 4712,\n  \"hitter</w>\": 23538,\n  \"hitters</w>\": 39724,\n  \"hitting</w>\": 7957,\n  \"hiv\": 44410,\n  \"hiv</w>\": 11018,\n  \"hive\": 38162,\n  \"hive</w>\": 18521,\n  \"hiya</w>\": 42393,\n  \"hk\": 22648,\n  \"hk</w>\": 12307,\n  \"hl\": 8297,\n  \"hl</w>\": 5956,\n  \"hle</w>\": 32389,\n  \"hler</w>\": 35418,\n  \"hm\": 17913,\n  \"hm</w>\": 7631,\n  \"hmm</w>\": 13725,\n  \"hmmm</w>\": 17032,\n  \"hmmmm</w>\": 34598,\n  \"hms</w>\": 14625,\n  \"hmu</w>\": 21630,\n  \"hmv</w>\": 49288,\n  \"hn\": 22905,\n  \"hn</w>\": 7478,\n  \"hns</w>\": 48412,\n  \"ho\": 606,\n  \"ho</w>\": 2971,\n  \"hoa</w>\": 37517,\n  \"hoar\": 31628,\n  \"hoax</w>\": 33438,\n  \"hob\": 18212,\n  \"hobart</w>\": 31646,\n  \"hobb\": 16175,\n  \"hobbies</w>\": 36370,\n  \"hobbit</w>\": 23207,\n  \"hobbs</w>\": 34343,\n  \"hobby\": 41120,\n  \"hobby</w>\": 17557,\n  \"hobo\": 34613,\n  \"hobo</w>\": 41334,\n  \"hoboken</w>\": 41568,\n  \"hoc</w>\": 35880,\n  \"hoch\": 43772,\n  \"hock\": 34914,\n  \"hock</w>\": 46574,\n  \"hockey\": 16499,\n  \"hockey</w>\": 4111,\n  \"hoco</w>\": 34771,\n  \"hod\": 31062,\n  \"hodg\": 23660,\n  \"hodge</w>\": 40585,\n  \"hodges</w>\": 35061,\n  \"hodgson</w>\": 37044,\n  \"hoe\": 32502,\n  \"hoe</w>\": 11262,\n  \"hoek</w>\": 40073,\n  \"hoes</w>\": 21164,\n  \"hof\": 20186,\n  \"hof</w>\": 12789,\n  \"hofer</w>\": 38654,\n  \"hoff\": 32860,\n  \"hoff</w>\": 22751,\n  \"hofficial</w>\": 41949,\n  \"hoffman</w>\": 22026,\n  \"hog\": 12075,\n  \"hog</w>\": 13255,\n  \"hogan</w>\": 19757,\n  \"hogg</w>\": 42005,\n  \"hogs</w>\": 23242,\n  \"hogwarts</w>\": 29168,\n  \"hoh</w>\": 43947,\n  \"hoi\": 39295,\n  \"hok\": 26942,\n  \"hok</w>\": 47167,\n  \"hokies</w>\": 35168,\n  \"hokkaido</w>\": 49145,\n  \"hol\": 1187,\n  \"hol</w>\": 7349,\n  \"hola</w>\": 28724,\n  \"hold\": 36496,\n  \"hold</w>\": 3254,\n  \"holden</w>\": 21869,\n  \"holder</w>\": 7862,\n  \"holders</w>\": 10074,\n  \"holding</w>\": 5050,\n  \"holdings</w>\": 24832,\n  \"holds</w>\": 7286,\n  \"hole\": 47242,\n  \"hole</w>\": 5341,\n  \"holes</w>\": 11266,\n  \"holi\": 2093,\n  \"holi</w>\": 21926,\n  \"holic</w>\": 16348,\n  \"holics</w>\": 29782,\n  \"holiday\": 13168,\n  \"holiday</w>\": 2878,\n  \"holidays</w>\": 5372,\n  \"holiness</w>\": 37259,\n  \"holistic</w>\": 26300,\n  \"holl\": 27699,\n  \"holla</w>\": 26500,\n  \"holland\": 31608,\n  \"holland</w>\": 9978,\n  \"hollande</w>\": 47690,\n  \"holler</w>\": 49047,\n  \"holli\": 24019,\n  \"holliday</w>\": 41624,\n  \"hollow\": 41221,\n  \"hollow</w>\": 16691,\n  \"holloway</w>\": 29435,\n  \"holly\": 12731,\n  \"holly</w>\": 11923,\n  \"hollyo\": 41525,\n  \"hollyoaks</w>\": 43352,\n  \"hollywood\": 24655,\n  \"hollywood</w>\": 5518,\n  \"holm\": 34758,\n  \"holm</w>\": 12739,\n  \"holme</w>\": 46149,\n  \"holmes</w>\": 12756,\n  \"holo\": 10317,\n  \"holocau\": 14688,\n  \"holocaust</w>\": 16476,\n  \"hols</w>\": 33344,\n  \"holt</w>\": 18868,\n  \"holtz</w>\": 44743,\n  \"holy\": 13910,\n  \"holy</w>\": 4874,\n  \"hom\": 906,\n  \"hom</w>\": 47397,\n  \"homa</w>\": 9557,\n  \"homage</w>\": 17746,\n  \"home\": 2143,\n  \"home</w>\": 1137,\n  \"homebrew</w>\": 35046,\n  \"homec\": 33869,\n  \"homecoming</w>\": 9008,\n  \"homedecor</w>\": 15695,\n  \"homedepot</w>\": 38707,\n  \"homegrown</w>\": 32554,\n  \"homeitems</w>\": 42972,\n  \"homeland</w>\": 21633,\n  \"homeless\": 18403,\n  \"homeless</w>\": 9661,\n  \"homelessness</w>\": 19851,\n  \"homemade</w>\": 7889,\n  \"homeof\": 48856,\n  \"homeowner</w>\": 37267,\n  \"homeowners</w>\": 29882,\n  \"homepage</w>\": 29828,\n  \"homer\": 29307,\n  \"homer</w>\": 16931,\n  \"homers</w>\": 38333,\n  \"homes\": 19480,\n  \"homes</w>\": 5416,\n  \"homeschool</w>\": 40994,\n  \"homestead</w>\": 32609,\n  \"homeswee\": 46298,\n  \"hometown</w>\": 12238,\n  \"homework</w>\": 12495,\n  \"homicide</w>\": 21520,\n  \"homie</w>\": 12540,\n  \"homies</w>\": 18893,\n  \"homme</w>\": 26193,\n  \"homo\": 18129,\n  \"homo</w>\": 30504,\n  \"homophobia</w>\": 37875,\n  \"homophobic</w>\": 40975,\n  \"homosexual</w>\": 44288,\n  \"homosexuality</w>\": 46720,\n  \"homs</w>\": 45413,\n  \"hon\": 1279,\n  \"hon</w>\": 10296,\n  \"honda</w>\": 8553,\n  \"honduras</w>\": 29715,\n  \"hone</w>\": 38640,\n  \"honest\": 7814,\n  \"honest</w>\": 9602,\n  \"honestly</w>\": 9155,\n  \"honesty</w>\": 24939,\n  \"honey\": 9843,\n  \"honey</w>\": 6406,\n  \"honeycomb</w>\": 48583,\n  \"honeymoon</w>\": 22527,\n  \"hong\": 12144,\n  \"hong</w>\": 8598,\n  \"hongkong</w>\": 16659,\n  \"honi</w>\": 17918,\n  \"honolulu</w>\": 28096,\n  \"honor\": 9206,\n  \"honor</w>\": 3402,\n  \"honorable</w>\": 19498,\n  \"honorary</w>\": 15675,\n  \"honore\": 25868,\n  \"honored</w>\": 5494,\n  \"honoree</w>\": 38993,\n  \"honorees</w>\": 43012,\n  \"honoring</w>\": 10771,\n  \"honors</w>\": 10248,\n  \"honour</w>\": 8240,\n  \"honourable</w>\": 29855,\n  \"honoured</w>\": 11945,\n  \"honouring</w>\": 37754,\n  \"honours</w>\": 22558,\n  \"hoo\": 2300,\n  \"hoo</w>\": 7920,\n  \"hood\": 18681,\n  \"hood</w>\": 3222,\n  \"hooded</w>\": 33631,\n  \"hoodie</w>\": 13444,\n  \"hoodies</w>\": 25974,\n  \"hoods</w>\": 16664,\n  \"hoof</w>\": 44555,\n  \"hook\": 30488,\n  \"hook</w>\": 10395,\n  \"hookah</w>\": 34214,\n  \"hooked</w>\": 18138,\n  \"hookem</w>\": 31465,\n  \"hooker</w>\": 37891,\n  \"hooking</w>\": 35240,\n  \"hooks</w>\": 25068,\n  \"hooligans</w>\": 48176,\n  \"hoon</w>\": 21368,\n  \"hooo</w>\": 44538,\n  \"hoop\": 31516,\n  \"hoop</w>\": 19573,\n  \"hooper</w>\": 35221,\n  \"hoops</w>\": 9351,\n  \"hoor\": 22155,\n  \"hooray</w>\": 24940,\n  \"hoos</w>\": 46462,\n  \"hoosier</w>\": 48886,\n  \"hoosiers</w>\": 42780,\n  \"hoot</w>\": 29164,\n  \"hoover</w>\": 25691,\n  \"hop\": 10848,\n  \"hop</w>\": 5833,\n  \"hope\": 5263,\n  \"hope</w>\": 1683,\n  \"hoped</w>\": 30628,\n  \"hopeful</w>\": 21453,\n  \"hopefully</w>\": 7602,\n  \"hopeless</w>\": 35586,\n  \"hopes</w>\": 10018,\n  \"hoping</w>\": 7207,\n  \"hopkins</w>\": 17821,\n  \"hopp\": 48839,\n  \"hopped</w>\": 34220,\n  \"hopper</w>\": 21748,\n  \"hopping</w>\": 27606,\n  \"hoppy</w>\": 38359,\n  \"hops</w>\": 21137,\n  \"hor\": 1407,\n  \"hor</w>\": 33847,\n  \"hora</w>\": 26013,\n  \"horace</w>\": 39282,\n  \"horan</w>\": 26857,\n  \"horde</w>\": 44947,\n  \"hore</w>\": 15380,\n  \"horiz\": 8144,\n  \"horizon\": 17924,\n  \"horizon</w>\": 11920,\n  \"horizons</w>\": 29685,\n  \"horizontal</w>\": 25775,\n  \"hormon\": 27096,\n  \"hormone</w>\": 31283,\n  \"hormones</w>\": 35162,\n  \"horn\": 15771,\n  \"horn</w>\": 9607,\n  \"horne</w>\": 38143,\n  \"horned</w>\": 34526,\n  \"hornet</w>\": 28739,\n  \"hornets</w>\": 20124,\n  \"horns</w>\": 22109,\n  \"horny</w>\": 32622,\n  \"horo\": 21500,\n  \"horoscope</w>\": 38453,\n  \"horowitz</w>\": 44669,\n  \"horri\": 8656,\n  \"horrible</w>\": 13726,\n  \"horribly</w>\": 45484,\n  \"horrific</w>\": 25314,\n  \"horrifying</w>\": 38901,\n  \"horror\": 13787,\n  \"horror</w>\": 5032,\n  \"horrormovies</w>\": 46682,\n  \"horrors</w>\": 33321,\n  \"horse\": 8562,\n  \"horse</w>\": 4558,\n  \"horseback</w>\": 43673,\n  \"horseman</w>\": 48885,\n  \"horsepower</w>\": 36882,\n  \"horser\": 23096,\n  \"horseracing</w>\": 30693,\n  \"horses</w>\": 8809,\n  \"horseshoe</w>\": 29242,\n  \"horst</w>\": 37182,\n  \"hort</w>\": 19482,\n  \"horticul\": 27141,\n  \"horticulture</w>\": 39998,\n  \"horton</w>\": 25945,\n  \"hortons</w>\": 38422,\n  \"horus</w>\": 29794,\n  \"hos\": 44320,\n  \"hos</w>\": 25008,\n  \"hosa</w>\": 44618,\n  \"hose</w>\": 19662,\n  \"hoseok</w>\": 38817,\n  \"hosp\": 2847,\n  \"hosp</w>\": 37853,\n  \"hospice</w>\": 20533,\n  \"hospit\": 7180,\n  \"hospital\": 29399,\n  \"hospital</w>\": 3851,\n  \"hospitality</w>\": 11657,\n  \"hospitalized</w>\": 36915,\n  \"hospitals</w>\": 13816,\n  \"host\": 17403,\n  \"host</w>\": 3953,\n  \"hostage</w>\": 26119,\n  \"hoste\": 31700,\n  \"hosted</w>\": 6017,\n  \"hostel</w>\": 27225,\n  \"hostess</w>\": 39692,\n  \"hostile</w>\": 28074,\n  \"hosting</w>\": 4857,\n  \"hosts</w>\": 8718,\n  \"hot\": 2851,\n  \"hot</w>\": 2069,\n  \"hota</w>\": 43289,\n  \"hotdog</w>\": 43758,\n  \"hotel\": 14591,\n  \"hotel</w>\": 2738,\n  \"hotels</w>\": 8654,\n  \"hotline</w>\": 30516,\n  \"hotmail</w>\": 46427,\n  \"hotness</w>\": 39803,\n  \"hotra</w>\": 27109,\n  \"hotro\": 47823,\n  \"hotspot</w>\": 36606,\n  \"hotspur</w>\": 35176,\n  \"hotter</w>\": 23591,\n  \"hottest</w>\": 8279,\n  \"hottie</w>\": 22804,\n  \"hotties</w>\": 46027,\n  \"hou\": 1011,\n  \"hou</w>\": 10122,\n  \"hough</w>\": 44529,\n  \"houghton</w>\": 36133,\n  \"houn\": 39273,\n  \"houn</w>\": 33607,\n  \"hound\": 33996,\n  \"hound</w>\": 13561,\n  \"hounds</w>\": 21178,\n  \"hounews</w>\": 48373,\n  \"hour\": 14930,\n  \"hour</w>\": 2232,\n  \"hourly</w>\": 30918,\n  \"hours</w>\": 2382,\n  \"house\": 4107,\n  \"house</w>\": 1212,\n  \"housed</w>\": 37518,\n  \"household</w>\": 12412,\n  \"households</w>\": 27167,\n  \"housel\": 48685,\n  \"housemusic</w>\": 28468,\n  \"houseof\": 19928,\n  \"houses</w>\": 7791,\n  \"housewives</w>\": 38523,\n  \"housing\": 32924,\n  \"housing</w>\": 5734,\n  \"houston\": 16564,\n  \"houston</w>\": 5663,\n  \"hov</w>\": 40291,\n  \"hove</w>\": 29674,\n  \"hoven</w>\": 35559,\n  \"hover\": 36252,\n  \"hover</w>\": 49016,\n  \"hovering</w>\": 43437,\n  \"how\": 7470,\n  \"how</w>\": 829,\n  \"howar\": 37672,\n  \"howard\": 25447,\n  \"howard</w>\": 7632,\n  \"howdy</w>\": 42216,\n  \"howe\": 8179,\n  \"howe</w>\": 24614,\n  \"howell</w>\": 25297,\n  \"hower</w>\": 32920,\n  \"however</w>\": 8467,\n  \"howi\": 47883,\n  \"howie</w>\": 42939,\n  \"howl</w>\": 40332,\n  \"howling</w>\": 41771,\n  \"howto\": 38191,\n  \"howto</w>\": 44060,\n  \"hoy\": 39625,\n  \"hoy</w>\": 13278,\n  \"hoya</w>\": 40978,\n  \"hp\": 23753,\n  \"hp</w>\": 6371,\n  \"hpa</w>\": 30983,\n  \"hpc</w>\": 39936,\n  \"hpe</w>\": 33787,\n  \"hpv</w>\": 45765,\n  \"hq\": 33571,\n  \"hq</w>\": 4693,\n  \"hr\": 4810,\n  \"hr</w>\": 4086,\n  \"hra\": 21320,\n  \"hra</w>\": 17212,\n  \"hrc</w>\": 18139,\n  \"hrh</w>\": 29103,\n  \"hri\": 21068,\n  \"hrithik</w>\": 45371,\n  \"hrs</w>\": 7157,\n  \"hru</w>\": 24127,\n  \"hrw</w>\": 25064,\n  \"hs\": 9343,\n  \"hs</w>\": 2466,\n  \"hsbc</w>\": 31508,\n  \"hsc</w>\": 43510,\n  \"hse</w>\": 34057,\n  \"hsfb</w>\": 29539,\n  \"hsv</w>\": 47311,\n  \"ht\": 11123,\n  \"ht</w>\": 7801,\n  \"hta\": 23452,\n  \"hta</w>\": 49384,\n  \"htafc</w>\": 42821,\n  \"htc\": 48942,\n  \"htc</w>\": 17635,\n  \"html</w>\": 18231,\n  \"hts</w>\": 43710,\n  \"htt\": 10620,\n  \"http</w>\": 15066,\n  \"https</w>\": 30901,\n  \"httr</w>\": 49372,\n  \"httweets</w>\": 43198,\n  \"hu\": 845,\n  \"hu</w>\": 5949,\n  \"hua</w>\": 22138,\n  \"huan</w>\": 41405,\n  \"huang</w>\": 32013,\n  \"huar\": 46916,\n  \"huawe\": 17709,\n  \"huawei</w>\": 21128,\n  \"hub\": 18775,\n  \"hub</w>\": 7028,\n  \"hubb\": 23183,\n  \"hubbard</w>\": 33288,\n  \"hubble</w>\": 30421,\n  \"hubby</w>\": 16947,\n  \"hubert</w>\": 40699,\n  \"hubs</w>\": 29327,\n  \"huck\": 22909,\n  \"huckabee</w>\": 43666,\n  \"hud\": 7169,\n  \"hud</w>\": 28563,\n  \"hudder\": 22629,\n  \"huddersfield</w>\": 24220,\n  \"huddle</w>\": 33435,\n  \"hudson\": 25873,\n  \"hudson</w>\": 11260,\n  \"hue\": 48380,\n  \"hue</w>\": 21465,\n  \"hues</w>\": 38003,\n  \"huey</w>\": 39663,\n  \"huff\": 18746,\n  \"huff</w>\": 44999,\n  \"huffpost\": 45887,\n  \"hug\": 40790,\n  \"hug</w>\": 10359,\n  \"huge</w>\": 2699,\n  \"hugely</w>\": 24648,\n  \"hugged</w>\": 41333,\n  \"hugging</w>\": 27058,\n  \"hugh\": 8723,\n  \"hugh</w>\": 15385,\n  \"hughes</w>\": 11418,\n  \"hugo\": 43935,\n  \"hugo</w>\": 17132,\n  \"hugs</w>\": 14248,\n  \"huh</w>\": 13348,\n  \"huhu</w>\": 32134,\n  \"hui</w>\": 29978,\n  \"hul\": 7911,\n  \"hula</w>\": 40145,\n  \"hulk</w>\": 17637,\n  \"hull\": 25154,\n  \"hull</w>\": 10375,\n  \"hulu</w>\": 24666,\n  \"hum\": 5823,\n  \"hum</w>\": 16283,\n  \"human\": 3175,\n  \"human</w>\": 2751,\n  \"humane</w>\": 20220,\n  \"humanitarian</w>\": 14170,\n  \"humanities</w>\": 24949,\n  \"humanity</w>\": 9420,\n  \"humanright\": 44385,\n  \"humanrights</w>\": 14148,\n  \"humans</w>\": 8324,\n  \"humb\": 9988,\n  \"humber\": 30602,\n  \"humber</w>\": 38063,\n  \"humble\": 38703,\n  \"humble</w>\": 10889,\n  \"humbled</w>\": 19682,\n  \"humbling</w>\": 39757,\n  \"humbold\": 24739,\n  \"humboldt</w>\": 31389,\n  \"hume</w>\": 38197,\n  \"humid\": 14778,\n  \"humid</w>\": 27447,\n  \"humidi\": 47666,\n  \"humidity</w>\": 15469,\n  \"humil\": 27205,\n  \"humili\": 25332,\n  \"humility</w>\": 28535,\n  \"humming\": 26515,\n  \"hummingbird</w>\": 33072,\n  \"hummus</w>\": 31785,\n  \"humor\": 29369,\n  \"humor</w>\": 11186,\n  \"humorous</w>\": 38173,\n  \"humour</w>\": 19161,\n  \"hump\": 16673,\n  \"hump</w>\": 24529,\n  \"humpback</w>\": 47662,\n  \"humpday</w>\": 27693,\n  \"humph\": 19767,\n  \"humphrey</w>\": 31549,\n  \"hun\": 1616,\n  \"hun</w>\": 10795,\n  \"hundre\": 8505,\n  \"hundred</w>\": 11898,\n  \"hundreds</w>\": 8879,\n  \"hung</w>\": 13825,\n  \"hungar\": 19420,\n  \"hungarian</w>\": 23325,\n  \"hungary</w>\": 17232,\n  \"hunger\": 25565,\n  \"hunger</w>\": 10184,\n  \"hungergames</w>\": 47507,\n  \"hungover</w>\": 41110,\n  \"hungry\": 44845,\n  \"hungry</w>\": 8451,\n  \"hunk</w>\": 33912,\n  \"hunt\": 16498,\n  \"hunt</w>\": 5774,\n  \"hunted</w>\": 37373,\n  \"hunter\": 16531,\n  \"hunter</w>\": 6099,\n  \"hunters</w>\": 16115,\n  \"hunting\": 27830,\n  \"hunting</w>\": 7507,\n  \"huntington</w>\": 23521,\n  \"hunts</w>\": 34041,\n  \"huntsville</w>\": 34544,\n  \"hur\": 2305,\n  \"hur</w>\": 34523,\n  \"hurd</w>\": 44915,\n  \"hurdle</w>\": 27486,\n  \"hurdles</w>\": 25440,\n  \"huri</w>\": 42486,\n  \"hurley</w>\": 30166,\n  \"hurling</w>\": 24738,\n  \"huron</w>\": 36147,\n  \"hurrah</w>\": 40599,\n  \"hurric\": 6543,\n  \"hurrican\": 36105,\n  \"hurricane\": 24051,\n  \"hurricane</w>\": 8782,\n  \"hurricanes</w>\": 22357,\n  \"hurry</w>\": 10921,\n  \"hurst\": 44742,\n  \"hurst</w>\": 11760,\n  \"hurt</w>\": 7413,\n  \"hurting</w>\": 24017,\n  \"hurts</w>\": 13059,\n  \"hus\": 5111,\n  \"hus</w>\": 35853,\n  \"husband</w>\": 6179,\n  \"husbands</w>\": 33612,\n  \"hush</w>\": 28728,\n  \"husk\": 19246,\n  \"huskers</w>\": 26946,\n  \"huskies</w>\": 20988,\n  \"husky</w>\": 20421,\n  \"huss\": 13733,\n  \"hussain</w>\": 17940,\n  \"hussein</w>\": 31336,\n  \"hust\": 27279,\n  \"hustle</w>\": 15709,\n  \"huston</w>\": 46480,\n  \"hut\": 20924,\n  \"hut</w>\": 16503,\n  \"hutch\": 31018,\n  \"hutch</w>\": 33203,\n  \"hutchinson</w>\": 35721,\n  \"hutto\": 27662,\n  \"hutton</w>\": 38321,\n  \"hv\": 17209,\n  \"hv</w>\": 18593,\n  \"hvac</w>\": 27492,\n  \"hw\": 27491,\n  \"hw</w>\": 18876,\n  \"hwa</w>\": 32352,\n  \"hwan</w>\": 44390,\n  \"hwang</w>\": 46775,\n  \"hwy</w>\": 13812,\n  \"hy\": 1441,\n  \"hy</w>\": 17827,\n  \"hya</w>\": 31600,\n  \"hyacin\": 47263,\n  \"hyatt\": 44856,\n  \"hyatt</w>\": 25146,\n  \"hybri\": 9084,\n  \"hybrid</w>\": 10156,\n  \"hyd</w>\": 42382,\n  \"hyde\": 46484,\n  \"hyde</w>\": 16343,\n  \"hyder\": 13960,\n  \"hyderabad</w>\": 14801,\n  \"hydr\": 8031,\n  \"hydra\": 44414,\n  \"hydra</w>\": 40420,\n  \"hydrange\": 43298,\n  \"hydrate</w>\": 29628,\n  \"hydrated</w>\": 23300,\n  \"hydrating</w>\": 47653,\n  \"hydration</w>\": 24174,\n  \"hydrau\": 26017,\n  \"hydraulic</w>\": 26189,\n  \"hydro\": 8368,\n  \"hydro</w>\": 22595,\n  \"hydrogen</w>\": 20974,\n  \"hye\": 32724,\n  \"hye</w>\": 25792,\n  \"hygi\": 16277,\n  \"hygiene</w>\": 19591,\n  \"hymn</w>\": 41350,\n  \"hyo\": 38960,\n  \"hyo</w>\": 35078,\n  \"hyp\": 16964,\n  \"hype\": 30353,\n  \"hype</w>\": 11111,\n  \"hyped</w>\": 22507,\n  \"hyper\": 7997,\n  \"hyper</w>\": 22146,\n  \"hypertension</w>\": 40698,\n  \"hypno\": 23355,\n  \"hypnosis</w>\": 48138,\n  \"hypnoti\": 40440,\n  \"hypo\": 10252,\n  \"hypocr\": 30711,\n  \"hypocri\": 25606,\n  \"hypocrisy</w>\": 26296,\n  \"hypocrite</w>\": 44125,\n  \"hypothe\": 46966,\n  \"hypothesis</w>\": 44956,\n  \"hyster\": 24235,\n  \"hysteria</w>\": 45965,\n  \"hysterical</w>\": 48627,\n  \"hyuk</w>\": 20452,\n  \"hyun\": 11831,\n  \"hyun</w>\": 8589,\n  \"hyundai</w>\": 17094,\n  \"hyung\": 46901,\n  \"hyung</w>\": 16551,\n  \"hz</w>\": 32533,\n  \"i\": 72,\n  \"i</w>\": 328,\n  \"ia\": 12486,\n  \"ia</w>\": 1073,\n  \"iac\": 32838,\n  \"iac</w>\": 44063,\n  \"iaf</w>\": 40789,\n  \"iah</w>\": 35052,\n  \"iain</w>\": 30103,\n  \"ial\": 11530,\n  \"ial</w>\": 1974,\n  \"ials</w>\": 20940,\n  \"iam\": 3579,\n  \"iam</w>\": 11415,\n  \"iambic\": 43668,\n  \"iambicpent</w>\": 43891,\n  \"iamsrk</w>\": 15103,\n  \"ian\": 7723,\n  \"ian</w>\": 1800,\n  \"ians</w>\": 6451,\n  \"iansomerhalder</w>\": 47077,\n  \"iart\": 18413,\n  \"iartg</w>\": 18669,\n  \"ias\": 32303,\n  \"ias</w>\": 14620,\n  \"ib\": 3962,\n  \"ib</w>\": 13554,\n  \"iba</w>\": 39763,\n  \"ibadan</w>\": 44691,\n  \"iban\": 47145,\n  \"ibc</w>\": 49014,\n  \"ibd</w>\": 40732,\n  \"iber\": 23814,\n  \"ibi\": 12337,\n  \"ibis</w>\": 47048,\n  \"ibiza</w>\": 13853,\n  \"ible</w>\": 37792,\n  \"ibles</w>\": 44102,\n  \"ibm\": 23415,\n  \"ibm</w>\": 13918,\n  \"ibn</w>\": 25729,\n  \"ibooks</w>\": 46887,\n  \"ibra\": 15476,\n  \"ibrahi\": 40350,\n  \"ibrahim</w>\": 20816,\n  \"ibrox</w>\": 46883,\n  \"ibs</w>\": 41993,\n  \"ibu\": 43587,\n  \"ibu</w>\": 46117,\n  \"ic\": 535,\n  \"ic</w>\": 1029,\n  \"ica</w>\": 2576,\n  \"icago</w>\": 37492,\n  \"ical\": 6082,\n  \"ical</w>\": 1110,\n  \"ically</w>\": 3161,\n  \"icals</w>\": 13999,\n  \"ican\": 17653,\n  \"ican</w>\": 5246,\n  \"icans</w>\": 20511,\n  \"icar\": 37211,\n  \"ication</w>\": 21629,\n  \"icc</w>\": 12945,\n  \"ice\": 2739,\n  \"ice</w>\": 733,\n  \"iceberg</w>\": 33662,\n  \"icec\": 13636,\n  \"icecream</w>\": 21334,\n  \"iced</w>\": 8049,\n  \"icelan\": 34114,\n  \"iceland\": 46716,\n  \"iceland</w>\": 11935,\n  \"icelandic</w>\": 34705,\n  \"ices</w>\": 1931,\n  \"ich\": 5333,\n  \"ich</w>\": 1232,\n  \"icha\": 31453,\n  \"iche\": 28972,\n  \"iche</w>\": 21143,\n  \"ichi\": 21669,\n  \"ichi</w>\": 14647,\n  \"ichick</w>\": 45022,\n  \"ichiro</w>\": 43787,\n  \"ici\": 948,\n  \"ici</w>\": 22189,\n  \"icia</w>\": 11774,\n  \"icial\": 17543,\n  \"icial</w>\": 6397,\n  \"ician\": 40522,\n  \"ician</w>\": 5374,\n  \"icians</w>\": 6264,\n  \"iciary</w>\": 21329,\n  \"icic\": 46006,\n  \"icide</w>\": 6558,\n  \"icides</w>\": 28253,\n  \"icing</w>\": 7676,\n  \"icio</w>\": 24207,\n  \"icion\": 45905,\n  \"icious</w>\": 3325,\n  \"icist</w>\": 21165,\n  \"icists</w>\": 42171,\n  \"icity</w>\": 7243,\n  \"ick\": 1168,\n  \"ick</w>\": 1068,\n  \"icked</w>\": 39799,\n  \"icker</w>\": 40357,\n  \"ickers</w>\": 30701,\n  \"icki</w>\": 35468,\n  \"icking</w>\": 6619,\n  \"icks</w>\": 3727,\n  \"icky</w>\": 11587,\n  \"icn</w>\": 44516,\n  \"ico\": 13697,\n  \"ico</w>\": 3040,\n  \"icom\": 17693,\n  \"icom</w>\": 29796,\n  \"icon\": 13843,\n  \"icon</w>\": 5646,\n  \"iconic</w>\": 6959,\n  \"icons</w>\": 15553,\n  \"icop\": 9389,\n  \"icos</w>\": 32002,\n  \"ics</w>\": 1324,\n  \"ict</w>\": 6349,\n  \"icted</w>\": 36515,\n  \"iction</w>\": 40560,\n  \"icton</w>\": 36548,\n  \"icu\": 45118,\n  \"icu</w>\": 30443,\n  \"icular</w>\": 40660,\n  \"icus</w>\": 31459,\n  \"icy\": 28780,\n  \"icy</w>\": 3495,\n  \"icymi</w>\": 5315,\n  \"icz</w>\": 46387,\n  \"id\": 1568,\n  \"id</w>\": 1014,\n  \"ida\": 11032,\n  \"ida</w>\": 11600,\n  \"idad</w>\": 22462,\n  \"idaho\": 48817,\n  \"idaho</w>\": 15165,\n  \"idal</w>\": 39684,\n  \"idan</w>\": 17929,\n  \"idc</w>\": 22386,\n  \"ide\": 1909,\n  \"ide</w>\": 14104,\n  \"idea</w>\": 3612,\n  \"ideal</w>\": 8789,\n  \"ideally</w>\": 48247,\n  \"ideals</w>\": 45096,\n  \"ideas</w>\": 4452,\n  \"ident\": 7113,\n  \"identi\": 6009,\n  \"identical</w>\": 25587,\n  \"identification</w>\": 23337,\n  \"identified</w>\": 15217,\n  \"identifies</w>\": 35712,\n  \"identify</w>\": 10949,\n  \"identifying</w>\": 23589,\n  \"identities</w>\": 34292,\n  \"identity</w>\": 8892,\n  \"ideology</w>\": 25840,\n  \"iders</w>\": 8980,\n  \"ides</w>\": 31791,\n  \"idf</w>\": 28987,\n  \"idge</w>\": 35567,\n  \"idh</w>\": 44325,\n  \"idi\": 9611,\n  \"idi</w>\": 14264,\n  \"idio\": 15994,\n  \"idiot</w>\": 14087,\n  \"idiots</w>\": 20856,\n  \"idk</w>\": 8972,\n  \"idle</w>\": 34754,\n  \"idlib</w>\": 36199,\n  \"ido\": 6763,\n  \"ido</w>\": 29641,\n  \"idol\": 24866,\n  \"idol</w>\": 8884,\n  \"idols</w>\": 21398,\n  \"idr</w>\": 10106,\n  \"idri\": 46435,\n  \"idris</w>\": 41312,\n  \"ids</w>\": 6111,\n  \"idu</w>\": 28655,\n  \"idy\": 33058,\n  \"idyl\": 44879,\n  \"idyllic</w>\": 46632,\n  \"ie\": 6789,\n  \"ie</w>\": 1718,\n  \"iec</w>\": 44773,\n  \"ied</w>\": 10059,\n  \"ieee</w>\": 39860,\n  \"iel\": 27875,\n  \"iel</w>\": 22729,\n  \"ience</w>\": 1542,\n  \"ient</w>\": 13115,\n  \"ier\": 33173,\n  \"ier</w>\": 5912,\n  \"iers</w>\": 45060,\n  \"ies\": 27912,\n  \"ies</w>\": 963,\n  \"iest</w>\": 10818,\n  \"if\": 8063,\n  \"if</w>\": 878,\n  \"ifa</w>\": 37574,\n  \"ifc</w>\": 36524,\n  \"ife\": 41172,\n  \"ife</w>\": 19590,\n  \"iff\": 35753,\n  \"ification</w>\": 35755,\n  \"ified</w>\": 41403,\n  \"ift\": 31143,\n  \"iftar</w>\": 35153,\n  \"ifu</w>\": 41523,\n  \"ify</w>\": 32807,\n  \"ig\": 1089,\n  \"ig</w>\": 3072,\n  \"iga</w>\": 16493,\n  \"igan</w>\": 27468,\n  \"igans</w>\": 25419,\n  \"igbo</w>\": 44591,\n  \"ige</w>\": 10806,\n  \"igen</w>\": 33070,\n  \"iger\": 30758,\n  \"iger</w>\": 20685,\n  \"igers\": 40755,\n  \"igers</w>\": 48928,\n  \"iggy\": 46219,\n  \"iggy</w>\": 27604,\n  \"igh\": 2712,\n  \"igh</w>\": 5451,\n  \"ight\": 14571,\n  \"ight</w>\": 897,\n  \"ighton</w>\": 35292,\n  \"igi</w>\": 21901,\n  \"igle\": 29912,\n  \"iglesias</w>\": 39432,\n  \"ign\": 7303,\n  \"ign</w>\": 2326,\n  \"ignati\": 37573,\n  \"ignatius</w>\": 48318,\n  \"igne</w>\": 45843,\n  \"ignite</w>\": 25210,\n  \"ignition</w>\": 36115,\n  \"igno\": 15375,\n  \"ignor\": 7653,\n  \"ignorance</w>\": 22735,\n  \"ignorant</w>\": 26933,\n  \"ignore</w>\": 12304,\n  \"ignored</w>\": 20428,\n  \"ignores</w>\": 40129,\n  \"ignoring</w>\": 23969,\n  \"igor</w>\": 33024,\n  \"igs</w>\": 31344,\n  \"igu\": 21279,\n  \"ih\": 12162,\n  \"ih</w>\": 34135,\n  \"ihear\": 13043,\n  \"iheart\": 30332,\n  \"iheartawards</w>\": 18811,\n  \"iheartradio</w>\": 25934,\n  \"ihop</w>\": 45511,\n  \"ihri\": 39108,\n  \"ihrithik</w>\": 39326,\n  \"ii\": 5103,\n  \"ii</w>\": 2329,\n  \"iii\": 46236,\n  \"iii</w>\": 6572,\n  \"iiii\": 20133,\n  \"iiii</w>\": 45393,\n  \"iiot</w>\": 30704,\n  \"iit\": 39330,\n  \"iit</w>\": 33238,\n  \"ij\": 7337,\n  \"ija</w>\": 42802,\n  \"ik\": 3903,\n  \"ik</w>\": 10177,\n  \"ika</w>\": 18188,\n  \"ike\": 12329,\n  \"ike</w>\": 19696,\n  \"ikea</w>\": 20528,\n  \"iker</w>\": 38653,\n  \"ikh\": 44655,\n  \"ikh</w>\": 12758,\n  \"iklan\": 32028,\n  \"iklan</w>\": 29584,\n  \"iko\": 35659,\n  \"iko</w>\": 39272,\n  \"ikon\": 38543,\n  \"ikon</w>\": 19156,\n  \"iku</w>\": 17780,\n  \"il\": 543,\n  \"il</w>\": 958,\n  \"ila</w>\": 4344,\n  \"ilah</w>\": 32211,\n  \"ilan\": 13889,\n  \"ilan</w>\": 28076,\n  \"iland</w>\": 20957,\n  \"ilation</w>\": 16180,\n  \"ilay\": 45093,\n  \"ild\": 22278,\n  \"ild</w>\": 17164,\n  \"ile\": 18398,\n  \"ile</w>\": 989,\n  \"iled</w>\": 3358,\n  \"iler\": 22446,\n  \"iler</w>\": 3615,\n  \"ilers</w>\": 8975,\n  \"iles</w>\": 42274,\n  \"ili\": 2076,\n  \"ili</w>\": 19601,\n  \"ilia</w>\": 14855,\n  \"ilian</w>\": 10272,\n  \"iliary</w>\": 32585,\n  \"ilife</w>\": 42835,\n  \"ilike\": 44989,\n  \"ilinan</w>\": 48497,\n  \"iling</w>\": 3299,\n  \"ilio</w>\": 47256,\n  \"ilion</w>\": 12561,\n  \"ilis</w>\": 43442,\n  \"ilit\": 11178,\n  \"ilities</w>\": 5446,\n  \"ility</w>\": 1787,\n  \"ilive</w>\": 26478,\n  \"ill\": 828,\n  \"ill</w>\": 660,\n  \"illa\": 8877,\n  \"illa</w>\": 3043,\n  \"illac</w>\": 17218,\n  \"illage</w>\": 48922,\n  \"illard</w>\": 21920,\n  \"illary</w>\": 33667,\n  \"illas</w>\": 23404,\n  \"ille\": 18213,\n  \"ille</w>\": 5559,\n  \"illed</w>\": 2527,\n  \"illeg\": 35808,\n  \"illegal</w>\": 7983,\n  \"illegally</w>\": 24466,\n  \"illegals</w>\": 40490,\n  \"iller\": 23341,\n  \"iller</w>\": 2956,\n  \"illers</w>\": 30547,\n  \"illery</w>\": 14514,\n  \"illes</w>\": 20037,\n  \"illi\": 1086,\n  \"illi</w>\": 25187,\n  \"illia</w>\": 48776,\n  \"illiams</w>\": 30301,\n  \"illian\": 48775,\n  \"illian</w>\": 17355,\n  \"illic\": 37152,\n  \"illicit</w>\": 40998,\n  \"illie</w>\": 26083,\n  \"illin</w>\": 35868,\n  \"illing</w>\": 2803,\n  \"illini</w>\": 28957,\n  \"illino\": 8920,\n  \"illinois</w>\": 9414,\n  \"illion\": 35542,\n  \"illion</w>\": 2035,\n  \"illness</w>\": 11145,\n  \"illnesses</w>\": 33861,\n  \"illo\": 34153,\n  \"illo</w>\": 7588,\n  \"illon</w>\": 20516,\n  \"ills</w>\": 1900,\n  \"illu\": 3025,\n  \"illumin\": 11446,\n  \"illuminate</w>\": 43261,\n  \"illuminated</w>\": 28814,\n  \"illuminati</w>\": 34551,\n  \"illuminating</w>\": 46601,\n  \"illumination</w>\": 43680,\n  \"illus</w>\": 41386,\n  \"illusion</w>\": 20318,\n  \"illusions</w>\": 47429,\n  \"illustr\": 6268,\n  \"illustrate</w>\": 37468,\n  \"illustrated</w>\": 13151,\n  \"illustrates</w>\": 38129,\n  \"illustrating</w>\": 43322,\n  \"illustration</w>\": 6052,\n  \"illustrations</w>\": 17852,\n  \"illustrator</w>\": 16649,\n  \"illustri\": 43116,\n  \"illustrious</w>\": 44304,\n  \"illy\": 11707,\n  \"illy</w>\": 9532,\n  \"ilm</w>\": 36326,\n  \"ilo\": 4220,\n  \"ilo</w>\": 14835,\n  \"ilove\": 7183,\n  \"ilove</w>\": 32914,\n  \"iloveart</w>\": 41114,\n  \"ilovemy\": 28863,\n  \"iloveyou</w>\": 28829,\n  \"ils</w>\": 1543,\n  \"ilt</w>\": 25334,\n  \"ilton</w>\": 28494,\n  \"ilu\": 27337,\n  \"ilwx</w>\": 43777,\n  \"ily\": 4881,\n  \"ily</w>\": 1026,\n  \"ilya</w>\": 33377,\n  \"ilysm</w>\": 29228,\n  \"im\": 732,\n  \"im</w>\": 1496,\n  \"ima\": 2414,\n  \"ima</w>\": 6432,\n  \"imac</w>\": 40675,\n  \"imacele\": 47281,\n  \"imag\": 2316,\n  \"image\": 24101,\n  \"image</w>\": 2867,\n  \"imagery</w>\": 22828,\n  \"images</w>\": 4952,\n  \"imagin\": 18178,\n  \"imaginary</w>\": 30417,\n  \"imagination</w>\": 13783,\n  \"imaginative</w>\": 47233,\n  \"imagine\": 35752,\n  \"imagine</w>\": 4826,\n  \"imagined</w>\": 18478,\n  \"imagines</w>\": 47379,\n  \"imaging</w>\": 14231,\n  \"imagining</w>\": 27384,\n  \"imam\": 37552,\n  \"imam</w>\": 19024,\n  \"iman\": 45684,\n  \"iman</w>\": 16247,\n  \"imation</w>\": 44566,\n  \"imax</w>\": 32066,\n  \"imc</w>\": 45616,\n  \"imdanielpadilla</w>\": 36357,\n  \"imdb</w>\": 30407,\n  \"ime\": 44937,\n  \"ime</w>\": 31151,\n  \"imel\": 31594,\n  \"iment</w>\": 37157,\n  \"imer</w>\": 21802,\n  \"imes</w>\": 47744,\n  \"imf</w>\": 28403,\n  \"img</w>\": 24157,\n  \"imi</w>\": 23559,\n  \"imin\": 23942,\n  \"imit\": 23462,\n  \"imitation</w>\": 41630,\n  \"imma</w>\": 19487,\n  \"immac\": 25085,\n  \"immaculate</w>\": 29649,\n  \"immature</w>\": 45531,\n  \"immedi\": 7366,\n  \"immediate</w>\": 14440,\n  \"immediately</w>\": 10108,\n  \"immen\": 17278,\n  \"immense</w>\": 22722,\n  \"immensely</w>\": 35013,\n  \"immer\": 13954,\n  \"immerse</w>\": 46240,\n  \"immersion</w>\": 31861,\n  \"immersive</w>\": 27521,\n  \"immigr\": 5851,\n  \"immigrant</w>\": 16474,\n  \"immigrants</w>\": 14460,\n  \"immigration</w>\": 9588,\n  \"imminent</w>\": 27299,\n  \"immort\": 39244,\n  \"immortal</w>\": 24717,\n  \"immun\": 8961,\n  \"immune</w>\": 15606,\n  \"immuni\": 44571,\n  \"immunity</w>\": 26254,\n  \"immuno\": 24361,\n  \"immunology</w>\": 44483,\n  \"immunotherapy</w>\": 39185,\n  \"imo\": 26349,\n  \"imo</w>\": 13738,\n  \"imp\": 3335,\n  \"imp</w>\": 31037,\n  \"impac\": 7573,\n  \"impact\": 33036,\n  \"impact</w>\": 3844,\n  \"impacted</w>\": 21424,\n  \"impactful</w>\": 41631,\n  \"impacting</w>\": 29359,\n  \"impacts</w>\": 15069,\n  \"impair\": 36451,\n  \"impaired</w>\": 28028,\n  \"impairment</w>\": 44501,\n  \"impala</w>\": 36641,\n  \"impe\": 23612,\n  \"impeach\": 16874,\n  \"impeach</w>\": 43497,\n  \"impeachment</w>\": 32979,\n  \"impeachtrump</w>\": 38006,\n  \"impecc\": 34511,\n  \"impeccable</w>\": 40111,\n  \"impending</w>\": 34486,\n  \"imper\": 7727,\n  \"imperative</w>\": 39833,\n  \"imperfect</w>\": 46034,\n  \"imperi\": 30911,\n  \"imperial\": 32425,\n  \"imperial</w>\": 12361,\n  \"imperialism</w>\": 48855,\n  \"imperson\": 25551,\n  \"implant</w>\": 33106,\n  \"implants</w>\": 32202,\n  \"imple\": 7423,\n  \"implement</w>\": 17966,\n  \"implementation</w>\": 15102,\n  \"implemented</w>\": 24315,\n  \"implementing</w>\": 22862,\n  \"implic\": 15269,\n  \"implications</w>\": 19229,\n  \"implo\": 40337,\n  \"impo\": 45704,\n  \"import\": 2336,\n  \"import</w>\": 16294,\n  \"importance</w>\": 6821,\n  \"important</w>\": 2829,\n  \"importantly</w>\": 21580,\n  \"imported</w>\": 28798,\n  \"imports</w>\": 25286,\n  \"impose</w>\": 35879,\n  \"imposed</w>\": 25871,\n  \"imposing</w>\": 42289,\n  \"impossible</w>\": 9815,\n  \"impre\": 3763,\n  \"impress</w>\": 20015,\n  \"impressed</w>\": 9689,\n  \"impression</w>\": 14468,\n  \"impressionism</w>\": 36114,\n  \"impressionist</w>\": 44904,\n  \"impressions</w>\": 22276,\n  \"impressive</w>\": 6634,\n  \"imprint</w>\": 43863,\n  \"imprison\": 22141,\n  \"imprisoned</w>\": 32999,\n  \"imprisonment</w>\": 39024,\n  \"impro\": 2531,\n  \"impromp\": 28100,\n  \"impromptu</w>\": 28611,\n  \"improv</w>\": 22868,\n  \"improve</w>\": 4971,\n  \"improved</w>\": 9446,\n  \"improvement</w>\": 10790,\n  \"improvements</w>\": 16320,\n  \"improves</w>\": 18035,\n  \"improving</w>\": 10381,\n  \"improvis\": 32343,\n  \"improvised</w>\": 40886,\n  \"impulse</w>\": 29683,\n  \"impy</w>\": 42690,\n  \"imran\": 19647,\n  \"imran</w>\": 19212,\n  \"imrankhan\": 25956,\n  \"imrankhanpti</w>\": 26688,\n  \"ims</w>\": 17800,\n  \"imsa</w>\": 37262,\n  \"imv\": 35731,\n  \"imvkohli</w>\": 37136,\n  \"imwith\": 26822,\n  \"imwithher</w>\": 32651,\n  \"in\": 512,\n  \"in</w>\": 530,\n  \"ina\": 18026,\n  \"ina</w>\": 1366,\n  \"inability</w>\": 47517,\n  \"inaccurate</w>\": 49192,\n  \"inaction</w>\": 41916,\n  \"inactive</w>\": 49274,\n  \"inadequate</w>\": 43403,\n  \"inak\": 46549,\n  \"inal</w>\": 19178,\n  \"inals</w>\": 26438,\n  \"inan</w>\": 26204,\n  \"inappropriate</w>\": 26722,\n  \"inari</w>\": 48620,\n  \"inary</w>\": 11337,\n  \"inas\": 36731,\n  \"inas</w>\": 12362,\n  \"inated</w>\": 38530,\n  \"ination</w>\": 4706,\n  \"inau\": 10832,\n  \"inaugu\": 11309,\n  \"inaugur\": 11448,\n  \"inaugural</w>\": 11340,\n  \"inaugurated</w>\": 29011,\n  \"inauguration</w>\": 16805,\n  \"inbound</w>\": 24420,\n  \"inbox</w>\": 18683,\n  \"inc\": 14570,\n  \"inc</w>\": 4438,\n  \"incan\": 45964,\n  \"incar\": 18070,\n  \"incarcer\": 26334,\n  \"incarcerated</w>\": 49178,\n  \"incarceration</w>\": 39887,\n  \"incase</w>\": 30463,\n  \"ince</w>\": 44303,\n  \"incen\": 13259,\n  \"incense</w>\": 35059,\n  \"incentive</w>\": 29024,\n  \"incentives</w>\": 29813,\n  \"inception</w>\": 36653,\n  \"inch</w>\": 6523,\n  \"incheon</w>\": 30645,\n  \"inches</w>\": 10809,\n  \"inci\": 5747,\n  \"incidence</w>\": 43371,\n  \"incident</w>\": 10103,\n  \"incidents</w>\": 22120,\n  \"incindia</w>\": 26161,\n  \"inciner\": 46434,\n  \"incl\": 27857,\n  \"incl</w>\": 13338,\n  \"inclined</w>\": 45470,\n  \"inclu\": 1738,\n  \"include</w>\": 5942,\n  \"included</w>\": 7414,\n  \"includes</w>\": 6197,\n  \"including</w>\": 2814,\n  \"inclusion</w>\": 12079,\n  \"inclusive</w>\": 13393,\n  \"income</w>\": 8044,\n  \"incoming</w>\": 15416,\n  \"incomparable</w>\": 36027,\n  \"incompetent</w>\": 45069,\n  \"incomplete</w>\": 34040,\n  \"incon\": 42372,\n  \"inconvenience</w>\": 40563,\n  \"incorpor\": 19335,\n  \"incorporate</w>\": 34168,\n  \"incorporated</w>\": 29494,\n  \"incorporating</w>\": 40303,\n  \"incorrect</w>\": 31872,\n  \"incre\": 1870,\n  \"increase</w>\": 5230,\n  \"increased</w>\": 9156,\n  \"increases</w>\": 13797,\n  \"increasing</w>\": 10270,\n  \"increasingly</w>\": 16106,\n  \"incredi\": 2883,\n  \"incredible\": 22128,\n  \"incredible</w>\": 3457,\n  \"incredibleindia</w>\": 24680,\n  \"incredibles</w>\": 48641,\n  \"incredibly</w>\": 9513,\n  \"incu\": 38830,\n  \"incub\": 24587,\n  \"incubator</w>\": 35736,\n  \"incumb\": 32246,\n  \"incumbent</w>\": 38038,\n  \"incur\": 42356,\n  \"ind\": 5386,\n  \"ind</w>\": 4655,\n  \"inda</w>\": 15710,\n  \"inde\": 2645,\n  \"indeed</w>\": 10031,\n  \"indefin\": 29501,\n  \"indefinitely</w>\": 43750,\n  \"independ\": 4147,\n  \"independence\": 23117,\n  \"independence</w>\": 7955,\n  \"independenceday</w>\": 25971,\n  \"independent\": 33844,\n  \"independent</w>\": 7088,\n  \"independently</w>\": 39831,\n  \"inder</w>\": 29225,\n  \"index\": 35209,\n  \"index</w>\": 9458,\n  \"indhoven</w>\": 44229,\n  \"indi\": 1098,\n  \"indi</w>\": 46536,\n  \"india\": 27067,\n  \"india</w>\": 1762,\n  \"indian\": 7685,\n  \"indian</w>\": 3606,\n  \"indiana</w>\": 8615,\n  \"indianapolis</w>\": 17196,\n  \"indianfootball</w>\": 45979,\n  \"indians</w>\": 10271,\n  \"indic\": 7136,\n  \"indicate</w>\": 26679,\n  \"indicated</w>\": 39416,\n  \"indicates</w>\": 29412,\n  \"indication</w>\": 38539,\n  \"indicator</w>\": 24776,\n  \"indicators</w>\": 30054,\n  \"indicted</w>\": 34992,\n  \"indictment</w>\": 42278,\n  \"indie\": 5260,\n  \"indie</w>\": 9383,\n  \"indiedev</w>\": 10863,\n  \"indiefilm</w>\": 22588,\n  \"indiegame</w>\": 17969,\n  \"indiegamedev</w>\": 40466,\n  \"indiegames</w>\": 35864,\n  \"indiegogo</w>\": 38057,\n  \"indies</w>\": 23618,\n  \"indiffe\": 41372,\n  \"indigen\": 8348,\n  \"indigenous</w>\": 9303,\n  \"indigo</w>\": 21002,\n  \"indira</w>\": 43887,\n  \"indirec\": 26398,\n  \"indirect</w>\": 35416,\n  \"indivi\": 5649,\n  \"individu\": 9574,\n  \"individual</w>\": 8512,\n  \"individually</w>\": 33782,\n  \"individuals</w>\": 11990,\n  \"indo\": 26303,\n  \"indo</w>\": 18297,\n  \"indom\": 42926,\n  \"indone\": 6180,\n  \"indonesia</w>\": 7229,\n  \"indonesian</w>\": 19593,\n  \"indoor\": 44478,\n  \"indoor</w>\": 9546,\n  \"indoors</w>\": 22973,\n  \"indore</w>\": 46143,\n  \"indu\": 2298,\n  \"induc\": 7973,\n  \"induced</w>\": 24103,\n  \"inducted</w>\": 20596,\n  \"inductee</w>\": 39558,\n  \"inductees</w>\": 44796,\n  \"induction</w>\": 18338,\n  \"indul\": 19402,\n  \"indulg\": 28388,\n  \"indulge</w>\": 24851,\n  \"indulgence</w>\": 40856,\n  \"indulgent</w>\": 49147,\n  \"industri\": 5082,\n  \"industrial\": 30853,\n  \"industrial</w>\": 7520,\n  \"industries</w>\": 11700,\n  \"industry\": 47407,\n  \"industry</w>\": 3318,\n  \"indv\": 16942,\n  \"indy\": 9821,\n  \"indy</w>\": 10098,\n  \"indycar</w>\": 20484,\n  \"indyref</w>\": 22569,\n  \"ine\": 855,\n  \"ine</w>\": 715,\n  \"ineau</w>\": 38122,\n  \"inec</w>\": 45214,\n  \"ined</w>\": 2038,\n  \"inee\": 43252,\n  \"inee</w>\": 7986,\n  \"inees</w>\": 13056,\n  \"ineffe\": 47202,\n  \"inely</w>\": 18234,\n  \"inem</w>\": 48876,\n  \"inema</w>\": 29232,\n  \"inen</w>\": 44365,\n  \"inequalities</w>\": 45507,\n  \"inequality</w>\": 17372,\n  \"iner\": 17438,\n  \"iner</w>\": 5155,\n  \"iners</w>\": 41863,\n  \"ines</w>\": 2137,\n  \"inese</w>\": 35966,\n  \"iness</w>\": 1463,\n  \"inet</w>\": 8121,\n  \"inette</w>\": 38911,\n  \"inev\": 19527,\n  \"inevit\": 45871,\n  \"inevitable</w>\": 25004,\n  \"inews</w>\": 24300,\n  \"inexpensive</w>\": 38614,\n  \"iney</w>\": 30254,\n  \"inez</w>\": 12700,\n  \"inf\": 1529,\n  \"inf</w>\": 35241,\n  \"infamous</w>\": 18688,\n  \"infan\": 17219,\n  \"infant</w>\": 19192,\n  \"infantry</w>\": 21655,\n  \"infants</w>\": 34726,\n  \"infe\": 7164,\n  \"infec\": 26088,\n  \"infected</w>\": 26136,\n  \"infection</w>\": 14774,\n  \"infections</w>\": 22227,\n  \"infectious</w>\": 29157,\n  \"infeld</w>\": 25035,\n  \"infer\": 16258,\n  \"inferno</w>\": 31290,\n  \"infertility</w>\": 40701,\n  \"infield</w>\": 48933,\n  \"infiltr\": 28683,\n  \"infin\": 6246,\n  \"infinite</w>\": 12748,\n  \"infiniti</w>\": 34644,\n  \"infinity\": 34863,\n  \"infinity</w>\": 12895,\n  \"infl\": 7627,\n  \"inflam\": 16080,\n  \"inflammation</w>\": 24893,\n  \"inflammatory</w>\": 26831,\n  \"inflatable</w>\": 30135,\n  \"inflation</w>\": 17497,\n  \"inflicted</w>\": 48188,\n  \"influ\": 4835,\n  \"influen\": 13229,\n  \"influence</w>\": 9199,\n  \"influenced</w>\": 21183,\n  \"influencer</w>\": 25013,\n  \"influencers</w>\": 29891,\n  \"influences</w>\": 24926,\n  \"influencing</w>\": 45126,\n  \"influential</w>\": 17553,\n  \"influenza</w>\": 39897,\n  \"info\": 5680,\n  \"info</w>\": 2222,\n  \"infographic</w>\": 10076,\n  \"infographics</w>\": 33172,\n  \"infor\": 31773,\n  \"inform\": 10241,\n  \"inform</w>\": 19449,\n  \"informal</w>\": 25705,\n  \"informat\": 29625,\n  \"informatics</w>\": 35685,\n  \"information</w>\": 3204,\n  \"informative</w>\": 19364,\n  \"informed</w>\": 13876,\n  \"informing</w>\": 45388,\n  \"informs</w>\": 48440,\n  \"infosec</w>\": 17863,\n  \"infr\": 29718,\n  \"infra\": 7312,\n  \"infra</w>\": 45877,\n  \"infrared</w>\": 22867,\n  \"infrastructure</w>\": 9034,\n  \"infringe\": 44882,\n  \"infringement</w>\": 48712,\n  \"infront</w>\": 37668,\n  \"infu\": 15048,\n  \"infuri\": 48461,\n  \"infused</w>\": 21461,\n  \"infusion</w>\": 43464,\n  \"ing\": 653,\n  \"ing</w>\": 519,\n  \"inga</w>\": 15233,\n  \"ingco</w>\": 40444,\n  \"ingday</w>\": 16561,\n  \"ingdon</w>\": 38731,\n  \"inge\": 11790,\n  \"inge</w>\": 7071,\n  \"inged</w>\": 30046,\n  \"ingen</w>\": 19088,\n  \"ingeni\": 36884,\n  \"inger\": 33883,\n  \"inger</w>\": 3541,\n  \"ingfor\": 33430,\n  \"ingh\": 9170,\n  \"ingh</w>\": 30495,\n  \"ingham\": 24497,\n  \"ingham</w>\": 4291,\n  \"inghamshire</w>\": 39289,\n  \"inghour</w>\": 42728,\n  \"inging</w>\": 4066,\n  \"ingl\": 45662,\n  \"ingle\": 22228,\n  \"ingle</w>\": 17005,\n  \"ingles</w>\": 24490,\n  \"ingley</w>\": 44428,\n  \"inglis</w>\": 46327,\n  \"ingly</w>\": 4796,\n  \"ingnow</w>\": 34766,\n  \"ingo\": 30175,\n  \"ingo</w>\": 9012,\n  \"ingra\": 45165,\n  \"ingrad</w>\": 44124,\n  \"ingram</w>\": 26998,\n  \"ingredi\": 9272,\n  \"ingredient</w>\": 19799,\n  \"ingredients</w>\": 11788,\n  \"ingrid</w>\": 33496,\n  \"ings</w>\": 895,\n  \"ingthe\": 20170,\n  \"ingtips</w>\": 39373,\n  \"ington\": 11846,\n  \"ington</w>\": 2156,\n  \"ingu\": 8714,\n  \"ingual</w>\": 22795,\n  \"ingue</w>\": 36838,\n  \"ingui\": 12788,\n  \"inguish</w>\": 36146,\n  \"inha</w>\": 32612,\n  \"inhabit\": 36189,\n  \"inhabitants</w>\": 44968,\n  \"inhal\": 30786,\n  \"inhe\": 32617,\n  \"inher\": 24611,\n  \"inherent</w>\": 47327,\n  \"inherit\": 34322,\n  \"inheritance</w>\": 39341,\n  \"inherited</w>\": 39111,\n  \"inhi\": 25557,\n  \"inhibit\": 32196,\n  \"inho</w>\": 12984,\n  \"ini\": 6154,\n  \"ini</w>\": 3581,\n  \"inian</w>\": 36638,\n  \"inim\": 38717,\n  \"inindia</w>\": 34021,\n  \"ining</w>\": 1389,\n  \"inist</w>\": 30976,\n  \"init</w>\": 42670,\n  \"initi\": 4580,\n  \"initial</w>\": 13980,\n  \"initially</w>\": 28123,\n  \"initials</w>\": 48794,\n  \"initiated</w>\": 27756,\n  \"initiation</w>\": 41009,\n  \"initiative</w>\": 8152,\n  \"initiatives</w>\": 16549,\n  \"inity</w>\": 22126,\n  \"inj\": 5112,\n  \"injec\": 13688,\n  \"injection</w>\": 21438,\n  \"inju\": 5006,\n  \"injured</w>\": 7505,\n  \"injuries</w>\": 9481,\n  \"injury</w>\": 6223,\n  \"injustice</w>\": 20541,\n  \"ink\": 4547,\n  \"ink</w>\": 967,\n  \"inka</w>\": 40685,\n  \"inked</w>\": 29356,\n  \"inki\": 46176,\n  \"inkigayo</w>\": 47882,\n  \"inking</w>\": 37586,\n  \"inks</w>\": 20966,\n  \"inktober</w>\": 9387,\n  \"inland</w>\": 21943,\n  \"inlet</w>\": 35161,\n  \"inline</w>\": 45004,\n  \"inlove</w>\": 28415,\n  \"inmate</w>\": 32341,\n  \"inmates</w>\": 28216,\n  \"inmy\": 42657,\n  \"inn\": 27260,\n  \"inn</w>\": 5569,\n  \"inna</w>\": 35088,\n  \"inner\": 24512,\n  \"inner</w>\": 6955,\n  \"inning</w>\": 4415,\n  \"innings</w>\": 11580,\n  \"innis\": 44059,\n  \"inno\": 7961,\n  \"innocence</w>\": 26383,\n  \"innocent</w>\": 11241,\n  \"innov\": 2890,\n  \"innovate</w>\": 24549,\n  \"innovation\": 33063,\n  \"innovation</w>\": 4272,\n  \"innovations</w>\": 18817,\n  \"innovative</w>\": 8494,\n  \"innovator</w>\": 34735,\n  \"innovators</w>\": 27834,\n  \"ino\": 4211,\n  \"ino</w>\": 2691,\n  \"inoa</w>\": 25649,\n  \"inos</w>\": 21828,\n  \"inous</w>\": 47801,\n  \"inox</w>\": 22698,\n  \"input</w>\": 16952,\n  \"inputs</w>\": 48763,\n  \"inqu\": 10628,\n  \"inqui\": 18527,\n  \"inquirer</w>\": 45172,\n  \"inquiries</w>\": 29469,\n  \"inquiry</w>\": 15865,\n  \"inquis\": 31171,\n  \"inr</w>\": 36325,\n  \"ins\": 12786,\n  \"ins</w>\": 1041,\n  \"insan\": 7875,\n  \"insane</w>\": 10260,\n  \"insanely</w>\": 27846,\n  \"insanity</w>\": 26645,\n  \"inscribed</w>\": 49168,\n  \"inscription</w>\": 41127,\n  \"insec\": 15744,\n  \"insect</w>\": 21297,\n  \"insects</w>\": 18714,\n  \"insecure</w>\": 35112,\n  \"insecurity</w>\": 36964,\n  \"inser\": 13830,\n  \"insert</w>\": 18807,\n  \"insi\": 3453,\n  \"inside\": 19141,\n  \"inside</w>\": 2912,\n  \"insider</w>\": 13300,\n  \"insiders</w>\": 32171,\n  \"insig\": 40503,\n  \"insight</w>\": 8795,\n  \"insightful</w>\": 20354,\n  \"insights</w>\": 8729,\n  \"insignia</w>\": 48864,\n  \"insist</w>\": 35504,\n  \"insisted</w>\": 40423,\n  \"insists</w>\": 27255,\n  \"inski</w>\": 32630,\n  \"insky</w>\": 24607,\n  \"insol\": 42366,\n  \"insom\": 21755,\n  \"insomni\": 42040,\n  \"insomnia</w>\": 30598,\n  \"inson</w>\": 21007,\n  \"insp\": 1597,\n  \"inspec\": 7915,\n  \"inspect</w>\": 40815,\n  \"inspecting</w>\": 40565,\n  \"inspection</w>\": 15142,\n  \"inspections</w>\": 39513,\n  \"inspector</w>\": 20514,\n  \"inspir\": 2573,\n  \"inspiration</w>\": 4195,\n  \"inspirational\": 41936,\n  \"inspirational</w>\": 9855,\n  \"inspirations</w>\": 35093,\n  \"inspire\": 27901,\n  \"inspire</w>\": 8583,\n  \"inspired\": 39849,\n  \"inspired</w>\": 3516,\n  \"inspires</w>\": 17245,\n  \"inspiring\": 41847,\n  \"inspiring</w>\": 5705,\n  \"inspo</w>\": 26897,\n  \"inst\": 1264,\n  \"inst</w>\": 1581,\n  \"insta\": 22411,\n  \"insta</w>\": 11694,\n  \"instability</w>\": 41377,\n  \"instac\": 46678,\n  \"instaf\": 33800,\n  \"instag\": 14612,\n  \"instagood</w>\": 23718,\n  \"instagram\": 27910,\n  \"instagram</w>\": 2659,\n  \"instal\": 38805,\n  \"install\": 6940,\n  \"install</w>\": 11168,\n  \"installation</w>\": 9358,\n  \"installations</w>\": 27909,\n  \"installed</w>\": 8807,\n  \"installing</w>\": 18301,\n  \"installment</w>\": 25315,\n  \"installs</w>\": 45568,\n  \"instalment</w>\": 47766,\n  \"instance</w>\": 34572,\n  \"instant\": 38810,\n  \"instant</w>\": 10635,\n  \"instantly</w>\": 17703,\n  \"instap\": 23758,\n  \"instapic</w>\": 34378,\n  \"instaweather\": 43078,\n  \"instaweatherpro</w>\": 43150,\n  \"inste\": 3571,\n  \"instead</w>\": 4191,\n  \"instein</w>\": 13421,\n  \"instem</w>\": 27030,\n  \"instin\": 23382,\n  \"instinct</w>\": 30544,\n  \"institu\": 4257,\n  \"institute</w>\": 5861,\n  \"institutes</w>\": 43674,\n  \"institution</w>\": 18823,\n  \"institutional</w>\": 27442,\n  \"institutions</w>\": 15207,\n  \"instore</w>\": 41679,\n  \"instru\": 4544,\n  \"instruc\": 19648,\n  \"instruction</w>\": 19407,\n  \"instructional</w>\": 31022,\n  \"instructions</w>\": 17040,\n  \"instructor</w>\": 16087,\n  \"instructors</w>\": 31998,\n  \"instrument\": 42196,\n  \"instrument</w>\": 15806,\n  \"instrumental</w>\": 23041,\n  \"instruments</w>\": 14793,\n  \"instyle</w>\": 41321,\n  \"insu\": 8805,\n  \"insul\": 9615,\n  \"insulated</w>\": 42051,\n  \"insulation</w>\": 28194,\n  \"insulin</w>\": 29311,\n  \"insult</w>\": 26673,\n  \"insulting</w>\": 39646,\n  \"insults</w>\": 40451,\n  \"insur\": 5024,\n  \"insurance</w>\": 5870,\n  \"insured</w>\": 31321,\n  \"insurers</w>\": 43142,\n  \"insurtech</w>\": 28716,\n  \"int\": 1828,\n  \"int</w>\": 1207,\n  \"inta</w>\": 38314,\n  \"intact</w>\": 26870,\n  \"intake</w>\": 19539,\n  \"intan\": 47695,\n  \"inte\": 1598,\n  \"inte</w>\": 41900,\n  \"intech</w>\": 26504,\n  \"inted</w>\": 6147,\n  \"integr\": 5151,\n  \"integral</w>\": 27018,\n  \"integrate</w>\": 25735,\n  \"integrated</w>\": 12797,\n  \"integrating</w>\": 31555,\n  \"integration</w>\": 12583,\n  \"integrity</w>\": 14791,\n  \"intel\": 11778,\n  \"intel</w>\": 11426,\n  \"intellec\": 13281,\n  \"intellect</w>\": 47828,\n  \"intellectu\": 31966,\n  \"intellectual</w>\": 18069,\n  \"intelli\": 5324,\n  \"intellig\": 5632,\n  \"intelligence</w>\": 6846,\n  \"intelligent</w>\": 14063,\n  \"inten\": 2967,\n  \"intend</w>\": 36674,\n  \"intended</w>\": 16812,\n  \"intense</w>\": 10258,\n  \"intensi\": 22928,\n  \"intensity</w>\": 19956,\n  \"intensive</w>\": 21049,\n  \"intent</w>\": 18881,\n  \"intention</w>\": 26786,\n  \"intentional</w>\": 29536,\n  \"intentionally</w>\": 31215,\n  \"intentions</w>\": 26710,\n  \"inter\": 1006,\n  \"inter</w>\": 10093,\n  \"interact</w>\": 21736,\n  \"interacting</w>\": 35045,\n  \"interaction</w>\": 17650,\n  \"interactions</w>\": 22162,\n  \"interactive</w>\": 9456,\n  \"intercep\": 23676,\n  \"interception</w>\": 48762,\n  \"interceptions</w>\": 45313,\n  \"interchange</w>\": 34222,\n  \"intercontinental</w>\": 31983,\n  \"interdisciplinary</w>\": 38132,\n  \"intere\": 2008,\n  \"interest</w>\": 5095,\n  \"interested</w>\": 4620,\n  \"interesting</w>\": 3628,\n  \"interests</w>\": 16425,\n  \"interface</w>\": 18753,\n  \"interfaith</w>\": 38399,\n  \"interference</w>\": 29099,\n  \"interim</w>\": 19509,\n  \"interior\": 10700,\n  \"interior</w>\": 7305,\n  \"interiordesign</w>\": 12902,\n  \"interiors</w>\": 14836,\n  \"intermedi\": 20246,\n  \"intermediate</w>\": 24304,\n  \"intermission</w>\": 44805,\n  \"intermitt\": 44946,\n  \"intern\": 9976,\n  \"intern</w>\": 14068,\n  \"internal</w>\": 11285,\n  \"internally</w>\": 41134,\n  \"internation\": 42534,\n  \"international\": 8566,\n  \"international</w>\": 2436,\n  \"internationaldayof\": 41518,\n  \"internationally</w>\": 24059,\n  \"internationalwomensday</w>\": 17682,\n  \"interne\": 32713,\n  \"internet\": 30180,\n  \"internet</w>\": 4757,\n  \"internetof\": 44449,\n  \"internetofthings</w>\": 45925,\n  \"interns</w>\": 19902,\n  \"internship</w>\": 16661,\n  \"internships</w>\": 39410,\n  \"interoper\": 45754,\n  \"interpre\": 11162,\n  \"interpret\": 49154,\n  \"interpret</w>\": 40459,\n  \"interpretation</w>\": 20652,\n  \"interpreted</w>\": 42157,\n  \"interpreting</w>\": 46525,\n  \"interro\": 29548,\n  \"interrup\": 21609,\n  \"interrupt</w>\": 48449,\n  \"interrupted</w>\": 30288,\n  \"intersec\": 45246,\n  \"intersection</w>\": 19210,\n  \"interstate</w>\": 21963,\n  \"interstellar</w>\": 41506,\n  \"interval</w>\": 36032,\n  \"intervals</w>\": 44884,\n  \"interven\": 18245,\n  \"intervention</w>\": 16804,\n  \"interventions</w>\": 28848,\n  \"interview</w>\": 2885,\n  \"interviewed</w>\": 11688,\n  \"interviewing</w>\": 16399,\n  \"interviews</w>\": 9910,\n  \"intestin\": 37938,\n  \"intestinal</w>\": 38896,\n  \"inthe\": 7486,\n  \"inti\": 14459,\n  \"intim\": 38832,\n  \"intimacy</w>\": 46430,\n  \"intimate</w>\": 16382,\n  \"intimid\": 24041,\n  \"intimidating</w>\": 44405,\n  \"intimidation</w>\": 49258,\n  \"inting</w>\": 15571,\n  \"intl\": 38186,\n  \"intl</w>\": 14224,\n  \"intment</w>\": 9020,\n  \"intments</w>\": 21420,\n  \"into\": 35235,\n  \"into</w>\": 1095,\n  \"intoler\": 28534,\n  \"intolerance</w>\": 37808,\n  \"intothe\": 38511,\n  \"intra\": 20922,\n  \"intrac\": 46195,\n  \"intram\": 40956,\n  \"intre\": 29397,\n  \"intrepid</w>\": 39127,\n  \"intri\": 15421,\n  \"intric\": 23763,\n  \"intricate</w>\": 29616,\n  \"intrigu\": 18856,\n  \"intrigue</w>\": 45140,\n  \"intrigued</w>\": 40034,\n  \"intriguing</w>\": 24334,\n  \"intrin\": 45181,\n  \"intro\": 2999,\n  \"intro</w>\": 13224,\n  \"introduc\": 3621,\n  \"introduce</w>\": 9813,\n  \"introduced</w>\": 10446,\n  \"introduces</w>\": 12933,\n  \"introducing</w>\": 6256,\n  \"introduction</w>\": 11812,\n  \"introductory</w>\": 38121,\n  \"intru\": 22949,\n  \"ints</w>\": 2514,\n  \"intu\": 17225,\n  \"intuition</w>\": 40897,\n  \"intuitive</w>\": 35224,\n  \"inu\": 21131,\n  \"inuit</w>\": 41250,\n  \"inus</w>\": 45857,\n  \"inv\": 2279,\n  \"inv</w>\": 43786,\n  \"inva\": 10084,\n  \"invade</w>\": 34609,\n  \"invaded</w>\": 32596,\n  \"invaders</w>\": 35188,\n  \"invading</w>\": 40101,\n  \"invali\": 31592,\n  \"invalid</w>\": 46998,\n  \"invaluable</w>\": 33976,\n  \"invasi\": 38100,\n  \"invasion</w>\": 13378,\n  \"invasive</w>\": 19554,\n  \"inve\": 2024,\n  \"inven\": 26233,\n  \"invent\": 11665,\n  \"invent</w>\": 23558,\n  \"invented</w>\": 14100,\n  \"invention</w>\": 23607,\n  \"inventions</w>\": 44914,\n  \"inventor</w>\": 22836,\n  \"inventory</w>\": 19444,\n  \"inver\": 12061,\n  \"inverness</w>\": 33080,\n  \"inverte\": 46397,\n  \"inverted</w>\": 40709,\n  \"invest\": 4180,\n  \"invest</w>\": 9716,\n  \"invested</w>\": 22536,\n  \"investig\": 4626,\n  \"investigate</w>\": 15703,\n  \"investigated</w>\": 29180,\n  \"investigates</w>\": 29621,\n  \"investigating</w>\": 13713,\n  \"investigation</w>\": 8194,\n  \"investigations</w>\": 24020,\n  \"investigative</w>\": 30233,\n  \"investigator</w>\": 30528,\n  \"investigators</w>\": 24121,\n  \"investin\": 40195,\n  \"investing</w>\": 10554,\n  \"investment</w>\": 5605,\n  \"investments</w>\": 14675,\n  \"investor</w>\": 15490,\n  \"investors</w>\": 10486,\n  \"invests</w>\": 38378,\n  \"invic\": 25253,\n  \"invigor\": 48722,\n  \"invin\": 30252,\n  \"invincible</w>\": 38052,\n  \"invisible</w>\": 16093,\n  \"invit\": 12454,\n  \"invitation</w>\": 15032,\n  \"invitational</w>\": 14511,\n  \"invitations</w>\": 40120,\n  \"invite</w>\": 8109,\n  \"invited</w>\": 7731,\n  \"invites</w>\": 16034,\n  \"inviting</w>\": 14349,\n  \"invo\": 29417,\n  \"invol\": 4000,\n  \"involve</w>\": 26325,\n  \"involved</w>\": 5320,\n  \"involvement</w>\": 19502,\n  \"involves</w>\": 22652,\n  \"involving</w>\": 14786,\n  \"inwx</w>\": 35674,\n  \"iny</w>\": 23257,\n  \"inyour\": 47954,\n  \"io\": 3167,\n  \"io</w>\": 3752,\n  \"ioc</w>\": 43018,\n  \"iom\": 33000,\n  \"iom</w>\": 31135,\n  \"ion\": 14871,\n  \"ion</w>\": 3668,\n  \"ions</w>\": 26289,\n  \"ior\": 7354,\n  \"ior</w>\": 2498,\n  \"iority</w>\": 46016,\n  \"iors</w>\": 6427,\n  \"ios</w>\": 6614,\n  \"iot\": 32694,\n  \"iot</w>\": 6627,\n  \"iota</w>\": 37294,\n  \"ious</w>\": 6994,\n  \"iously</w>\": 38233,\n  \"iow\": 7439,\n  \"iowa\": 38847,\n  \"iowa</w>\": 8290,\n  \"ip\": 1719,\n  \"ip</w>\": 8600,\n  \"ipa</w>\": 11199,\n  \"ipad\": 39067,\n  \"ipad</w>\": 7491,\n  \"ipads</w>\": 35281,\n  \"ipc</w>\": 41981,\n  \"iphone\": 26030,\n  \"iphone</w>\": 4314,\n  \"iphones</w>\": 37561,\n  \"ipl</w>\": 13440,\n  \"ipment</w>\": 37824,\n  \"ipo\": 40218,\n  \"ipo</w>\": 24090,\n  \"ipod</w>\": 17889,\n  \"ipp\": 31706,\n  \"ips</w>\": 26910,\n  \"ipsw\": 22221,\n  \"ipswich</w>\": 24494,\n  \"iq\": 15554,\n  \"iq</w>\": 19996,\n  \"iqbal</w>\": 33553,\n  \"ir\": 582,\n  \"ir</w>\": 742,\n  \"ira\": 4923,\n  \"ira</w>\": 5371,\n  \"irah</w>\": 35724,\n  \"iran\": 19273,\n  \"iran</w>\": 5075,\n  \"irandeal</w>\": 46533,\n  \"irani</w>\": 37984,\n  \"iranian</w>\": 14158,\n  \"iraq</w>\": 8543,\n  \"iraqi</w>\": 18617,\n  \"irc</w>\": 41527,\n  \"ird</w>\": 2770,\n  \"ire\": 3013,\n  \"ire</w>\": 1454,\n  \"ired\": 32728,\n  \"ired</w>\": 2995,\n  \"ireland\": 32806,\n  \"ireland</w>\": 4157,\n  \"irene</w>\": 21600,\n  \"ires</w>\": 12435,\n  \"irez</w>\": 21581,\n  \"irgc</w>\": 47942,\n  \"iri\": 2155,\n  \"iri</w>\": 13880,\n  \"irical</w>\": 33366,\n  \"irie</w>\": 42979,\n  \"irina</w>\": 46664,\n  \"iring</w>\": 10169,\n  \"iris</w>\": 16437,\n  \"irish\": 9386,\n  \"irish</w>\": 4889,\n  \"irl\": 34494,\n  \"irl</w>\": 8570,\n  \"irling</w>\": 26493,\n  \"irls</w>\": 24344,\n  \"irma</w>\": 22406,\n  \"irn</w>\": 42603,\n  \"iro\": 23209,\n  \"iro</w>\": 7280,\n  \"iron\": 7699,\n  \"iron</w>\": 5391,\n  \"ironic</w>\": 24518,\n  \"ironically</w>\": 36779,\n  \"ironing</w>\": 46655,\n  \"ironman</w>\": 20330,\n  \"irons</w>\": 30032,\n  \"irony</w>\": 20681,\n  \"irport</w>\": 27769,\n  \"irr\": 24641,\n  \"irrational</w>\": 47413,\n  \"irregular</w>\": 38692,\n  \"irrelevant</w>\": 34677,\n  \"irresi\": 31200,\n  \"irresistible</w>\": 35252,\n  \"irresponsible</w>\": 44714,\n  \"irri\": 21484,\n  \"irrigation</w>\": 23761,\n  \"irrit\": 24218,\n  \"irs</w>\": 6086,\n  \"irst</w>\": 32701,\n  \"iru</w>\": 48206,\n  \"irvin</w>\": 47053,\n  \"irvine</w>\": 24201,\n  \"irving</w>\": 19738,\n  \"irwin</w>\": 23750,\n  \"iry</w>\": 7239,\n  \"is\": 595,\n  \"is</w>\": 533,\n  \"isa\": 11034,\n  \"isa</w>\": 6536,\n  \"isaac\": 37544,\n  \"isaac</w>\": 13659,\n  \"isab\": 13357,\n  \"isabel</w>\": 27466,\n  \"isabella</w>\": 26192,\n  \"isabelle</w>\": 31072,\n  \"isable</w>\": 46631,\n  \"isai\": 15365,\n  \"isaiah</w>\": 17952,\n  \"isak\": 40619,\n  \"isance</w>\": 46893,\n  \"isation</w>\": 7194,\n  \"isback</w>\": 43811,\n  \"isc</w>\": 39316,\n  \"isch</w>\": 47888,\n  \"isco</w>\": 5736,\n  \"iscoming</w>\": 26458,\n  \"isd\": 46816,\n  \"isd</w>\": 12002,\n  \"ise\": 7669,\n  \"ise</w>\": 1479,\n  \"ised</w>\": 2861,\n  \"iselle</w>\": 48491,\n  \"iser\": 23080,\n  \"iser</w>\": 5626,\n  \"isers</w>\": 34879,\n  \"ises</w>\": 5153,\n  \"isf</w>\": 44036,\n  \"isgreat</w>\": 34595,\n  \"ish\": 6844,\n  \"ish</w>\": 1061,\n  \"isha</w>\": 28050,\n  \"ishable</w>\": 37949,\n  \"ished</w>\": 35341,\n  \"ishere</w>\": 46053,\n  \"ishi\": 26224,\n  \"ishq\": 27996,\n  \"ishqba\": 32503,\n  \"ishqbaaaz</w>\": 36591,\n  \"isi\": 7233,\n  \"isi</w>\": 17880,\n  \"isil</w>\": 34636,\n  \"isin</w>\": 37676,\n  \"ising</w>\": 3426,\n  \"isis</w>\": 7531,\n  \"isk</w>\": 30171,\n  \"isl</w>\": 31368,\n  \"isla</w>\": 22807,\n  \"islam\": 6003,\n  \"islam</w>\": 8770,\n  \"islamabad</w>\": 19959,\n  \"islamic\": 31627,\n  \"islamic</w>\": 9552,\n  \"islamist</w>\": 38798,\n  \"islamophobia</w>\": 43459,\n  \"island\": 13408,\n  \"island</w>\": 2619,\n  \"islander</w>\": 45651,\n  \"islanders</w>\": 27804,\n  \"islands</w>\": 7145,\n  \"islay</w>\": 49279,\n  \"isle\": 19082,\n  \"isle</w>\": 11849,\n  \"isleof\": 24718,\n  \"isles</w>\": 21816,\n  \"islife</w>\": 26433,\n  \"islington</w>\": 34945,\n  \"ism\": 47730,\n  \"ism</w>\": 1935,\n  \"isma\": 43937,\n  \"ismail</w>\": 36140,\n  \"isme</w>\": 43570,\n  \"ismo</w>\": 41926,\n  \"isms</w>\": 18700,\n  \"isn</w>\": 2923,\n  \"isner</w>\": 48246,\n  \"isnow</w>\": 43694,\n  \"isnt</w>\": 19416,\n  \"iso\": 2462,\n  \"iso</w>\": 12263,\n  \"isol\": 11414,\n  \"isolated</w>\": 19044,\n  \"isolation</w>\": 26400,\n  \"ison\": 12949,\n  \"ison</w>\": 4553,\n  \"isons</w>\": 33318,\n  \"isoo</w>\": 35857,\n  \"isp\": 31397,\n  \"isp</w>\": 39041,\n  \"isra\": 3591,\n  \"israel\": 20837,\n  \"israel</w>\": 4779,\n  \"israeli</w>\": 8994,\n  \"israelis</w>\": 45713,\n  \"isreal</w>\": 47147,\n  \"isro</w>\": 44841,\n  \"iss\": 11738,\n  \"iss</w>\": 4950,\n  \"issa\": 38579,\n  \"issa</w>\": 7560,\n  \"issan\": 49358,\n  \"issance</w>\": 40828,\n  \"issant</w>\": 38828,\n  \"isse</w>\": 18986,\n  \"ission</w>\": 37946,\n  \"issu\": 2049,\n  \"issue</w>\": 3202,\n  \"issued</w>\": 9246,\n  \"issues</w>\": 4082,\n  \"issuing</w>\": 37226,\n  \"ist\": 9751,\n  \"ist</w>\": 2304,\n  \"istanbul</w>\": 12258,\n  \"istandwith\": 33820,\n  \"iste</w>\": 32563,\n  \"ister</w>\": 14555,\n  \"isthe\": 46748,\n  \"istic</w>\": 29556,\n  \"ists</w>\": 8426,\n  \"isu\": 17030,\n  \"isu</w>\": 23328,\n  \"it\": 529,\n  \"it</w>\": 585,\n  \"ita\": 36920,\n  \"ita</w>\": 2864,\n  \"itable</w>\": 8915,\n  \"ital\": 2306,\n  \"ital</w>\": 1660,\n  \"itali\": 11644,\n  \"italia</w>\": 11025,\n  \"italian\": 20264,\n  \"italian</w>\": 5175,\n  \"italians</w>\": 44744,\n  \"italk</w>\": 32894,\n  \"italy</w>\": 4052,\n  \"itan</w>\": 18383,\n  \"itans</w>\": 40711,\n  \"itar</w>\": 47161,\n  \"itarian</w>\": 11599,\n  \"itary</w>\": 17604,\n  \"itas\": 31634,\n  \"itas</w>\": 13436,\n  \"itate</w>\": 42457,\n  \"itated</w>\": 36744,\n  \"itation</w>\": 5070,\n  \"itative</w>\": 22892,\n  \"itc</w>\": 36449,\n  \"itch\": 2387,\n  \"itch</w>\": 8147,\n  \"itchen</w>\": 32664,\n  \"itchy</w>\": 41980,\n  \"ite\": 2732,\n  \"ite</w>\": 802,\n  \"iteam</w>\": 37828,\n  \"itec\": 3099,\n  \"itec</w>\": 43936,\n  \"itech\": 44215,\n  \"itech</w>\": 23040,\n  \"ited\": 8603,\n  \"ited</w>\": 1108,\n  \"itel</w>\": 44638,\n  \"itely</w>\": 4605,\n  \"item</w>\": 8532,\n  \"items</w>\": 6207,\n  \"iter\": 7938,\n  \"iter</w>\": 19773,\n  \"iteracy</w>\": 39634,\n  \"iterate</w>\": 43106,\n  \"iteration</w>\": 38790,\n  \"ites</w>\": 2454,\n  \"itez</w>\": 42131,\n  \"itf</w>\": 35436,\n  \"itfc</w>\": 36519,\n  \"ith\": 6133,\n  \"ith</w>\": 1757,\n  \"ithaca</w>\": 46257,\n  \"iti\": 760,\n  \"iti</w>\": 6165,\n  \"itia</w>\": 22634,\n  \"itian</w>\": 23365,\n  \"itic</w>\": 11950,\n  \"itical</w>\": 48767,\n  \"itics</w>\": 33967,\n  \"ities\": 41423,\n  \"ities</w>\": 1480,\n  \"itim\": 15676,\n  \"itiner\": 32803,\n  \"itinerary</w>\": 41564,\n  \"iting</w>\": 1257,\n  \"ition\": 25263,\n  \"ition</w>\": 1104,\n  \"itions</w>\": 5540,\n  \"itious</w>\": 13329,\n  \"itis\": 33539,\n  \"itis</w>\": 8388,\n  \"itive</w>\": 3067,\n  \"itly</w>\": 42240,\n  \"ito\": 22167,\n  \"ito</w>\": 4661,\n  \"iton</w>\": 21119,\n  \"itor\": 47267,\n  \"itor</w>\": 4584,\n  \"itors</w>\": 22005,\n  \"itos</w>\": 24560,\n  \"its\": 7140,\n  \"its</w>\": 902,\n  \"itsa\": 45032,\n  \"itself</w>\": 7290,\n  \"itsme\": 41125,\n  \"itss\": 47040,\n  \"itt\": 1031,\n  \"itt</w>\": 11228,\n  \"itta</w>\": 21233,\n  \"itte</w>\": 31962,\n  \"itted</w>\": 24429,\n  \"itten\": 30014,\n  \"itten</w>\": 4343,\n  \"itter</w>\": 11456,\n  \"itters</w>\": 13082,\n  \"itti</w>\": 28629,\n  \"ittin</w>\": 25646,\n  \"itting</w>\": 3147,\n  \"ittle\": 24208,\n  \"ittle</w>\": 21366,\n  \"ittles</w>\": 38989,\n  \"itton</w>\": 25707,\n  \"itty</w>\": 35096,\n  \"itu\": 1668,\n  \"itu</w>\": 32128,\n  \"itude\": 43382,\n  \"itude</w>\": 5012,\n  \"itudes</w>\": 20459,\n  \"itunes</w>\": 7007,\n  \"itup</w>\": 35838,\n  \"iture</w>\": 25547,\n  \"itus</w>\": 24364,\n  \"itutes</w>\": 32883,\n  \"itv\": 20159,\n  \"itv</w>\": 12805,\n  \"ity\": 2480,\n  \"ity</w>\": 696,\n  \"itya</w>\": 32055,\n  \"itz\": 14544,\n  \"itz</w>\": 7807,\n  \"iu\": 14292,\n  \"iu</w>\": 15575,\n  \"ium</w>\": 10762,\n  \"ius</w>\": 6740,\n  \"iv\": 6775,\n  \"iv</w>\": 9315,\n  \"iva</w>\": 42463,\n  \"ivan\": 15544,\n  \"ivan</w>\": 15689,\n  \"ivanka</w>\": 37914,\n  \"ive\": 26885,\n  \"ive</w>\": 8653,\n  \"ived</w>\": 15654,\n  \"iver\": 36849,\n  \"iver</w>\": 44254,\n  \"ives</w>\": 27333,\n  \"ivf</w>\": 39159,\n  \"iving</w>\": 45136,\n  \"ivory</w>\": 16776,\n  \"ivote\": 45835,\n  \"ivy\": 36939,\n  \"ivy</w>\": 16045,\n  \"iw\": 13058,\n  \"iw</w>\": 46604,\n  \"iwant\": 42747,\n  \"iwd</w>\": 16815,\n  \"iwm</w>\": 44237,\n  \"ix\": 13272,\n  \"ix</w>\": 8756,\n  \"iy\": 13704,\n  \"iya</w>\": 18595,\n  \"iyaki</w>\": 48395,\n  \"iz\": 2845,\n  \"iz</w>\": 8407,\n  \"iza</w>\": 37704,\n  \"ization</w>\": 10847,\n  \"ize</w>\": 10885,\n  \"ized</w>\": 7690,\n  \"izen</w>\": 34776,\n  \"izer</w>\": 23895,\n  \"izes</w>\": 45434,\n  \"izing</w>\": 17354,\n  \"izo</w>\": 46910,\n  \"izz\": 31779,\n  \"izz</w>\": 46128,\n  \"izzy</w>\": 28861,\n  \"j\": 73,\n  \"j</w>\": 329,\n  \"ja\": 1586,\n  \"ja</w>\": 2641,\n  \"jaan</w>\": 25052,\n  \"jab\": 8059,\n  \"jab</w>\": 9439,\n  \"jac\": 2293,\n  \"jac</w>\": 30198,\n  \"jace</w>\": 43286,\n  \"jack\": 2679,\n  \"jack</w>\": 3267,\n  \"jacked</w>\": 27923,\n  \"jacket</w>\": 6164,\n  \"jackets</w>\": 14745,\n  \"jacki\": 47418,\n  \"jackie\": 28023,\n  \"jackie</w>\": 11716,\n  \"jacking</w>\": 40929,\n  \"jackman</w>\": 35723,\n  \"jackpot</w>\": 23926,\n  \"jacks</w>\": 19649,\n  \"jackson\": 12321,\n  \"jackson</w>\": 4363,\n  \"jacksonville</w>\": 19263,\n  \"jaco\": 6840,\n  \"jacob\": 14385,\n  \"jacob</w>\": 9222,\n  \"jacobs</w>\": 17482,\n  \"jacobson</w>\": 46826,\n  \"jacqu\": 14495,\n  \"jacqueline</w>\": 22843,\n  \"jacques</w>\": 17799,\n  \"jad\": 12976,\n  \"jad</w>\": 38691,\n  \"jada</w>\": 37416,\n  \"jade\": 25123,\n  \"jade</w>\": 14513,\n  \"jaden</w>\": 37174,\n  \"jadine</w>\": 37445,\n  \"jae\": 16869,\n  \"jae</w>\": 15765,\n  \"jaejoong</w>\": 43610,\n  \"jaf\": 19362,\n  \"jag\": 7984,\n  \"jag</w>\": 36236,\n  \"jagan</w>\": 48530,\n  \"jagger</w>\": 30835,\n  \"jags</w>\": 31086,\n  \"jagu\": 10096,\n  \"jaguar\": 44777,\n  \"jaguar</w>\": 14757,\n  \"jaguars</w>\": 21854,\n  \"jah\": 20067,\n  \"jah</w>\": 11084,\n  \"jahan\": 44404,\n  \"jahan</w>\": 47827,\n  \"jai\": 10542,\n  \"jai</w>\": 13819,\n  \"jail\": 18574,\n  \"jail</w>\": 9332,\n  \"jailbreak</w>\": 45990,\n  \"jailed</w>\": 19456,\n  \"jails</w>\": 47833,\n  \"jaime</w>\": 24716,\n  \"jain</w>\": 21999,\n  \"jaipur</w>\": 23593,\n  \"jais\": 48607,\n  \"jait\": 28910,\n  \"jaitley</w>\": 32776,\n  \"jak\": 9225,\n  \"jak</w>\": 30589,\n  \"jakarta</w>\": 15471,\n  \"jake\": 13140,\n  \"jake</w>\": 7419,\n  \"jakob</w>\": 47358,\n  \"jal\": 8380,\n  \"jal</w>\": 26773,\n  \"jalan</w>\": 27270,\n  \"jalap\": 49081,\n  \"jalape\": 34263,\n  \"jalapeÃ±o</w>\": 43017,\n  \"jalen</w>\": 33548,\n  \"jam\": 1434,\n  \"jam</w>\": 5201,\n  \"jama\": 8977,\n  \"jama</w>\": 35366,\n  \"jamaica</w>\": 13019,\n  \"jamaican</w>\": 25144,\n  \"jamal</w>\": 26108,\n  \"jambo\": 35599,\n  \"jamboree</w>\": 38506,\n  \"jame\": 12341,\n  \"james\": 6963,\n  \"james</w>\": 2392,\n  \"jamesbond</w>\": 44704,\n  \"jamesc\": 47004,\n  \"jameson</w>\": 31731,\n  \"jami\": 15092,\n  \"jamie\": 16454,\n  \"jamie</w>\": 8078,\n  \"jamiedor\": 34310,\n  \"jamiedornan</w>\": 34896,\n  \"jammed</w>\": 35590,\n  \"jammin</w>\": 35223,\n  \"jamming</w>\": 25862,\n  \"jammu</w>\": 25926,\n  \"jams</w>\": 20243,\n  \"jan\": 1891,\n  \"jan</w>\": 3334,\n  \"jana</w>\": 18182,\n  \"jane\": 12389,\n  \"jane</w>\": 6736,\n  \"janeiro</w>\": 31740,\n  \"janet\": 29665,\n  \"janet</w>\": 15872,\n  \"jang\": 41526,\n  \"jang</w>\": 22074,\n  \"jani</w>\": 22606,\n  \"janice</w>\": 36048,\n  \"janine</w>\": 46896,\n  \"janis</w>\": 44233,\n  \"jann\": 35377,\n  \"jans</w>\": 22578,\n  \"jansen</w>\": 45354,\n  \"janu\": 3623,\n  \"january</w>\": 3697,\n  \"jap\": 2299,\n  \"jap</w>\": 49062,\n  \"japan\": 4502,\n  \"japan</w>\": 3400,\n  \"japanese\": 27211,\n  \"japanese</w>\": 4925,\n  \"japs</w>\": 42121,\n  \"jar\": 5120,\n  \"jar</w>\": 10837,\n  \"jard\": 25778,\n  \"jardin</w>\": 37371,\n  \"jare\": 17654,\n  \"jared\": 35597,\n  \"jared</w>\": 12571,\n  \"jaredle\": 36739,\n  \"jaredleto</w>\": 37106,\n  \"jaro</w>\": 35505,\n  \"jarpad</w>\": 44497,\n  \"jarre\": 23385,\n  \"jarrett</w>\": 30531,\n  \"jars</w>\": 27583,\n  \"jarvis</w>\": 29286,\n  \"jas\": 4492,\n  \"jas</w>\": 17559,\n  \"jasmin\": 42989,\n  \"jasmin</w>\": 47700,\n  \"jasmine</w>\": 17056,\n  \"jason\": 10009,\n  \"jason</w>\": 5395,\n  \"jasper</w>\": 19827,\n  \"jat\": 26106,\n  \"jau\": 26932,\n  \"jauregui</w>\": 48175,\n  \"jav\": 6234,\n  \"java</w>\": 12918,\n  \"javascri\": 16289,\n  \"javascript</w>\": 16423,\n  \"jave\": 46218,\n  \"javed</w>\": 42268,\n  \"javelin</w>\": 41701,\n  \"javi</w>\": 47627,\n  \"javier</w>\": 23307,\n  \"jaw\": 14804,\n  \"jaw</w>\": 17307,\n  \"jawa\": 44790,\n  \"jaws</w>\": 25491,\n  \"jax\": 22348,\n  \"jax</w>\": 12390,\n  \"jay\": 3427,\n  \"jay</w>\": 4155,\n  \"jaya</w>\": 21960,\n  \"jayanti</w>\": 37732,\n  \"jaye</w>\": 45703,\n  \"jayne</w>\": 35228,\n  \"jays</w>\": 12393,\n  \"jaz\": 3465,\n  \"jaz</w>\": 32874,\n  \"jazeera</w>\": 38260,\n  \"jazz\": 11488,\n  \"jazz</w>\": 4528,\n  \"jazzfest</w>\": 36683,\n  \"jazzy</w>\": 28191,\n  \"jb\": 21915,\n  \"jb</w>\": 13637,\n  \"jc\": 14991,\n  \"jc</w>\": 11517,\n  \"jd\": 18289,\n  \"jd</w>\": 14125,\n  \"jdm</w>\": 42013,\n  \"je\": 1013,\n  \"je</w>\": 8776,\n  \"jeal\": 9964,\n  \"jealous</w>\": 11093,\n  \"jealousy</w>\": 37654,\n  \"jean\": 13943,\n  \"jean</w>\": 6473,\n  \"jeanette</w>\": 48167,\n  \"jeanne</w>\": 29201,\n  \"jeans</w>\": 10157,\n  \"jeb</w>\": 35101,\n  \"jec\": 1347,\n  \"ject</w>\": 6070,\n  \"jed\": 12166,\n  \"jed</w>\": 38748,\n  \"jeddah</w>\": 40982,\n  \"jedi</w>\": 16681,\n  \"jee\": 29250,\n  \"jee</w>\": 14870,\n  \"jeep\": 16593,\n  \"jeep</w>\": 11286,\n  \"jeeplife</w>\": 43100,\n  \"jeet\": 45542,\n  \"jeet</w>\": 30944,\n  \"jef\": 10276,\n  \"jeff\": 6245,\n  \"jeff</w>\": 5550,\n  \"jefferson\": 44711,\n  \"jefferson</w>\": 13976,\n  \"jeffery</w>\": 41470,\n  \"jeffree\": 45994,\n  \"jeffrey\": 32886,\n  \"jeffrey</w>\": 16027,\n  \"jeho\": 42437,\n  \"jeky\": 43893,\n  \"jekyll</w>\": 49405,\n  \"jel\": 9794,\n  \"jelena</w>\": 48218,\n  \"jelly\": 19110,\n  \"jelly</w>\": 13762,\n  \"jellyfish</w>\": 30988,\n  \"jem\": 46326,\n  \"jem</w>\": 37530,\n  \"jen\": 2554,\n  \"jen</w>\": 12997,\n  \"jenkins</w>\": 16162,\n  \"jenn\": 33921,\n  \"jenn</w>\": 29869,\n  \"jenna</w>\": 17125,\n  \"jenner</w>\": 14260,\n  \"jenni\": 6774,\n  \"jennie</w>\": 28875,\n  \"jennifer\": 19786,\n  \"jennifer</w>\": 8613,\n  \"jennings</w>\": 21564,\n  \"jenny\": 20165,\n  \"jenny</w>\": 13414,\n  \"jens</w>\": 40806,\n  \"jensen\": 35558,\n  \"jensen</w>\": 19004,\n  \"jensenackles</w>\": 41011,\n  \"jeon\": 45200,\n  \"jeon</w>\": 43337,\n  \"jeong\": 47146,\n  \"jeong</w>\": 39264,\n  \"jeopar\": 22988,\n  \"jeopardy</w>\": 29613,\n  \"jer\": 2310,\n  \"jer</w>\": 35307,\n  \"jere\": 5614,\n  \"jeremi\": 22362,\n  \"jeremiah</w>\": 27301,\n  \"jeremy\": 14656,\n  \"jeremy</w>\": 8127,\n  \"jeremycorbyn</w>\": 37484,\n  \"jeric\": 25084,\n  \"jericho</w>\": 28892,\n  \"jerk</w>\": 23917,\n  \"jerky</w>\": 40079,\n  \"jermaine</w>\": 40722,\n  \"jerome</w>\": 19876,\n  \"jerry\": 18163,\n  \"jerry</w>\": 9164,\n  \"jersey\": 21921,\n  \"jersey</w>\": 4471,\n  \"jerseys</w>\": 15518,\n  \"jerus\": 12257,\n  \"jerusalem</w>\": 12557,\n  \"jes\": 7686,\n  \"jes</w>\": 35826,\n  \"jess\": 5313,\n  \"jess</w>\": 13758,\n  \"jesse\": 23112,\n  \"jesse</w>\": 11770,\n  \"jessi\": 24373,\n  \"jessic\": 14881,\n  \"jessica\": 45421,\n  \"jessica</w>\": 8178,\n  \"jessie</w>\": 19424,\n  \"jester</w>\": 44225,\n  \"jesu\": 19777,\n  \"jesuit</w>\": 33234,\n  \"jesus</w>\": 4070,\n  \"jet\": 11515,\n  \"jet</w>\": 6565,\n  \"jetblue</w>\": 45021,\n  \"jeter</w>\": 38450,\n  \"jets\": 38584,\n  \"jets</w>\": 10025,\n  \"jett</w>\": 44541,\n  \"jetty</w>\": 46382,\n  \"jew</w>\": 27450,\n  \"jewel\": 4880,\n  \"jewel</w>\": 17591,\n  \"jewell\": 9777,\n  \"jewellers</w>\": 46265,\n  \"jewellery</w>\": 11192,\n  \"jewelry\": 28018,\n  \"jewelry</w>\": 6039,\n  \"jewels</w>\": 20205,\n  \"jewish\": 29594,\n  \"jewish</w>\": 9104,\n  \"jews</w>\": 14200,\n  \"jf\": 31130,\n  \"jf</w>\": 33718,\n  \"jfc</w>\": 43652,\n  \"jfk</w>\": 18486,\n  \"jg\": 41986,\n  \"jg</w>\": 35138,\n  \"jh\": 24858,\n  \"jh</w>\": 21485,\n  \"jha\": 47012,\n  \"jha</w>\": 38092,\n  \"jhal\": 45695,\n  \"jhar\": 31546,\n  \"jharkhand</w>\": 39001,\n  \"jhb</w>\": 34631,\n  \"ji\": 3252,\n  \"ji</w>\": 2697,\n  \"jia</w>\": 32907,\n  \"jian</w>\": 33427,\n  \"jiang\": 43309,\n  \"jiang</w>\": 25762,\n  \"jic\": 48350,\n  \"jic</w>\": 40215,\n  \"jid</w>\": 24403,\n  \"jie</w>\": 40005,\n  \"jig\": 15136,\n  \"jig</w>\": 47430,\n  \"jigsaw</w>\": 32987,\n  \"jiha\": 23194,\n  \"jihad</w>\": 29637,\n  \"jihoon</w>\": 44765,\n  \"jil\": 36225,\n  \"jill\": 24136,\n  \"jill</w>\": 15254,\n  \"jillian</w>\": 37820,\n  \"jim\": 3190,\n  \"jim</w>\": 4550,\n  \"jima</w>\": 20679,\n  \"jimcantore</w>\": 43950,\n  \"jimenez</w>\": 35947,\n  \"jimi</w>\": 30565,\n  \"jimin</w>\": 16286,\n  \"jimmie</w>\": 45679,\n  \"jimmy\": 12215,\n  \"jimmy</w>\": 6817,\n  \"jimmyfallon</w>\": 45265,\n  \"jin\": 7927,\n  \"jin</w>\": 8485,\n  \"jind\": 40609,\n  \"jing\": 34933,\n  \"jing</w>\": 28607,\n  \"jingle</w>\": 28699,\n  \"jinnah</w>\": 43141,\n  \"jinping</w>\": 39308,\n  \"jinx</w>\": 42977,\n  \"jinyoung</w>\": 38051,\n  \"jio</w>\": 40501,\n  \"jis\": 25988,\n  \"jis</w>\": 23515,\n  \"jisoo</w>\": 43070,\n  \"jit\": 11947,\n  \"jit</w>\": 20308,\n  \"jitsu</w>\": 24530,\n  \"jiu\": 43351,\n  \"jiu</w>\": 44123,\n  \"jj\": 12502,\n  \"jj</w>\": 12790,\n  \"jk\": 20189,\n  \"jk</w>\": 9702,\n  \"jkt</w>\": 21494,\n  \"jl\": 25027,\n  \"jl</w>\": 22911,\n  \"jlo</w>\": 31017,\n  \"jm\": 24044,\n  \"jm</w>\": 18657,\n  \"jn\": 24576,\n  \"jn</w>\": 21717,\n  \"jnr</w>\": 37145,\n  \"jnu</w>\": 47142,\n  \"jo\": 683,\n  \"jo</w>\": 3804,\n  \"joachim</w>\": 48979,\n  \"joan\": 28064,\n  \"joan</w>\": 12710,\n  \"joann\": 35484,\n  \"joanna</w>\": 25357,\n  \"joanne\": 43736,\n  \"joanne</w>\": 25092,\n  \"joao</w>\": 45666,\n  \"joaqu\": 25140,\n  \"joaquin</w>\": 30745,\n  \"job\": 13114,\n  \"job</w>\": 2075,\n  \"jobs</w>\": 3735,\n  \"jobsearch</w>\": 45459,\n  \"joburg</w>\": 39343,\n  \"jocel\": 36879,\n  \"jocelyn</w>\": 47259,\n  \"jock</w>\": 34485,\n  \"jockey</w>\": 20126,\n  \"jodh\": 48689,\n  \"jodi\": 36812,\n  \"jodi</w>\": 26888,\n  \"jodie</w>\": 33100,\n  \"jody</w>\": 32959,\n  \"joe\": 9309,\n  \"joe</w>\": 3305,\n  \"joel\": 19819,\n  \"joel</w>\": 11429,\n  \"joes</w>\": 34756,\n  \"joey\": 16281,\n  \"joey</w>\": 10455,\n  \"jog\": 37967,\n  \"jog</w>\": 31691,\n  \"jogging</w>\": 37922,\n  \"joh\": 1201,\n  \"johan\": 17416,\n  \"johan</w>\": 27789,\n  \"johann</w>\": 31180,\n  \"johanna</w>\": 41494,\n  \"johannes</w>\": 37779,\n  \"johannesburg</w>\": 28377,\n  \"johansson</w>\": 41512,\n  \"johar</w>\": 34871,\n  \"john\": 2004,\n  \"john</w>\": 1742,\n  \"johncena</w>\": 46820,\n  \"johnnie</w>\": 47947,\n  \"johnny\": 14464,\n  \"johnny</w>\": 6904,\n  \"johns</w>\": 14515,\n  \"johnson\": 26036,\n  \"johnson</w>\": 4010,\n  \"johnston</w>\": 19791,\n  \"johnstone</w>\": 40766,\n  \"johor</w>\": 34750,\n  \"join\": 14737,\n  \"join</w>\": 1384,\n  \"joined</w>\": 4954,\n  \"joining</w>\": 5118,\n  \"joins</w>\": 5681,\n  \"joint</w>\": 6640,\n  \"jointhe\": 30422,\n  \"jointly</w>\": 37471,\n  \"joints</w>\": 27204,\n  \"jojo\": 41484,\n  \"jojo</w>\": 22075,\n  \"joke</w>\": 7198,\n  \"joker</w>\": 18200,\n  \"jokers</w>\": 44101,\n  \"jokes</w>\": 11336,\n  \"joking</w>\": 26112,\n  \"joko\": 44975,\n  \"jol\": 9174,\n  \"jol</w>\": 36470,\n  \"jolie</w>\": 31633,\n  \"jolla</w>\": 46109,\n  \"jolly</w>\": 21516,\n  \"jom\": 32152,\n  \"jon\": 3026,\n  \"jon</w>\": 6139,\n  \"jona\": 6629,\n  \"jonah\": 47934,\n  \"jonah</w>\": 27556,\n  \"jonas\": 42373,\n  \"jonas</w>\": 13650,\n  \"jonathan\": 19026,\n  \"jonathan</w>\": 7762,\n  \"jone\": 33934,\n  \"jones\": 19091,\n  \"jones</w>\": 3538,\n  \"jong\": 20214,\n  \"jong</w>\": 14726,\n  \"jonghyun</w>\": 29023,\n  \"jongin</w>\": 36957,\n  \"joni</w>\": 43177,\n  \"jonny\": 28454,\n  \"jonny</w>\": 21895,\n  \"joo\": 25807,\n  \"joo</w>\": 27680,\n  \"joom\": 47543,\n  \"joon</w>\": 18547,\n  \"joong</w>\": 26544,\n  \"jop\": 30486,\n  \"joplin</w>\": 42688,\n  \"jor\": 2482,\n  \"jor</w>\": 31595,\n  \"jordan\": 14644,\n  \"jordan</w>\": 4388,\n  \"jordani\": 46898,\n  \"jordi</w>\": 44795,\n  \"jorge\": 48761,\n  \"jorge</w>\": 18225,\n  \"jos\": 20560,\n  \"jos</w>\": 19661,\n  \"jose\": 4647,\n  \"jose</w>\": 7075,\n  \"josef</w>\": 36584,\n  \"josel\": 47800,\n  \"joseph\": 14163,\n  \"joseph</w>\": 6478,\n  \"josephine</w>\": 34866,\n  \"josh\": 9998,\n  \"josh</w>\": 5679,\n  \"joshi</w>\": 24786,\n  \"joshu\": 9112,\n  \"joshua</w>\": 11852,\n  \"josi\": 33583,\n  \"josie</w>\": 33167,\n  \"joss</w>\": 42834,\n  \"josÃ©</w>\": 27922,\n  \"jou\": 19921,\n  \"jou</w>\": 32029,\n  \"jour\": 2078,\n  \"jour</w>\": 17142,\n  \"journ\": 4563,\n  \"journal</w>\": 6626,\n  \"journalism</w>\": 10123,\n  \"journalist</w>\": 9914,\n  \"journalists</w>\": 12249,\n  \"journals</w>\": 24391,\n  \"journe\": 48833,\n  \"journey\": 32156,\n  \"journey</w>\": 3749,\n  \"journeys</w>\": 23329,\n  \"journo</w>\": 37034,\n  \"journos</w>\": 46437,\n  \"jovi</w>\": 33866,\n  \"joy\": 6308,\n  \"joy</w>\": 4273,\n  \"joyce\": 43753,\n  \"joyce</w>\": 15275,\n  \"joye\": 34052,\n  \"joyeux</w>\": 41876,\n  \"joyful</w>\": 24139,\n  \"joyous</w>\": 32245,\n  \"joyride</w>\": 46949,\n  \"joys</w>\": 22996,\n  \"jp\": 18249,\n  \"jp</w>\": 10557,\n  \"jpg</w>\": 36950,\n  \"jpn</w>\": 36212,\n  \"jr\": 13973,\n  \"jr</w>\": 3605,\n  \"js\": 46243,\n  \"js</w>\": 8006,\n  \"jst</w>\": 26523,\n  \"jt\": 39480,\n  \"jt</w>\": 18119,\n  \"ju\": 669,\n  \"ju</w>\": 9970,\n  \"jual</w>\": 38720,\n  \"juan\": 17148,\n  \"juan</w>\": 9274,\n  \"juana</w>\": 9081,\n  \"jubi\": 15485,\n  \"jubil\": 47743,\n  \"jubilee</w>\": 16907,\n  \"juco</w>\": 31570,\n  \"jud\": 8363,\n  \"juda\": 32478,\n  \"judah</w>\": 41066,\n  \"judaism</w>\": 42217,\n  \"judas</w>\": 39532,\n  \"judd</w>\": 29770,\n  \"judg\": 20012,\n  \"judge\": 16824,\n  \"judge</w>\": 5656,\n  \"judged</w>\": 33453,\n  \"judgement</w>\": 25246,\n  \"judges</w>\": 12575,\n  \"judging</w>\": 16570,\n  \"judgment</w>\": 24191,\n  \"judi\": 42546,\n  \"judice</w>\": 28032,\n  \"judicial</w>\": 19579,\n  \"judiciary</w>\": 24545,\n  \"judith</w>\": 24047,\n  \"judo</w>\": 27011,\n  \"judy\": 34663,\n  \"judy</w>\": 16510,\n  \"jug</w>\": 27619,\n  \"jugg\": 38628,\n  \"juic\": 38761,\n  \"juice\": 37954,\n  \"juice</w>\": 6916,\n  \"juices</w>\": 36757,\n  \"juicy</w>\": 17623,\n  \"juju</w>\": 43020,\n  \"juke\": 32519,\n  \"jukebox</w>\": 36411,\n  \"jul\": 34662,\n  \"jul</w>\": 15975,\n  \"jule\": 40819,\n  \"jules</w>\": 21996,\n  \"juli\": 3614,\n  \"juli</w>\": 49160,\n  \"julia</w>\": 10207,\n  \"julian\": 25459,\n  \"julian</w>\": 12643,\n  \"juliana</w>\": 46059,\n  \"julie\": 22534,\n  \"julie</w>\": 10505,\n  \"julien</w>\": 32595,\n  \"juliet</w>\": 20641,\n  \"juliette</w>\": 44804,\n  \"julio</w>\": 24888,\n  \"julius</w>\": 20870,\n  \"july</w>\": 2272,\n  \"jum\": 20791,\n  \"jumbo</w>\": 24678,\n  \"jume\": 45989,\n  \"jump\": 5519,\n  \"jump</w>\": 6423,\n  \"jumped</w>\": 16901,\n  \"jumper</w>\": 16558,\n  \"jumpers</w>\": 36485,\n  \"jumping</w>\": 11476,\n  \"jumpman</w>\": 48803,\n  \"jumps</w>\": 18911,\n  \"jumpsuit</w>\": 31044,\n  \"jun\": 1637,\n  \"jun</w>\": 7719,\n  \"junction</w>\": 11320,\n  \"june\": 23188,\n  \"june</w>\": 2345,\n  \"jung\": 13086,\n  \"jung</w>\": 13031,\n  \"jungkook</w>\": 20040,\n  \"jungle\": 42421,\n  \"jungle</w>\": 10865,\n  \"juni\": 4029,\n  \"junior\": 21167,\n  \"junior</w>\": 5027,\n  \"juniors</w>\": 16811,\n  \"juniper</w>\": 33829,\n  \"junk</w>\": 16000,\n  \"junkie</w>\": 27613,\n  \"junkies</w>\": 41207,\n  \"juno</w>\": 28845,\n  \"junto</w>\": 34282,\n  \"jupit\": 15270,\n  \"jupiter</w>\": 16212,\n  \"jur\": 15896,\n  \"jura\": 14715,\n  \"jurassic\": 28844,\n  \"jurassic</w>\": 21255,\n  \"jurgen</w>\": 39263,\n  \"juris\": 37010,\n  \"jurisdic\": 37714,\n  \"jury</w>\": 12931,\n  \"jus</w>\": 14999,\n  \"just\": 1770,\n  \"just</w>\": 761,\n  \"justi\": 14700,\n  \"justic\": 30399,\n  \"justice\": 16904,\n  \"justice</w>\": 3604,\n  \"justicefor\": 25812,\n  \"justiceleague</w>\": 41929,\n  \"justices</w>\": 44356,\n  \"justified</w>\": 34546,\n  \"justify</w>\": 28192,\n  \"justin\": 7537,\n  \"justin</w>\": 4394,\n  \"justinbieber</w>\": 12501,\n  \"justine</w>\": 34418,\n  \"justintrudeau</w>\": 32184,\n  \"justsaying</w>\": 42922,\n  \"juve\": 47717,\n  \"juve</w>\": 23092,\n  \"juven\": 12944,\n  \"juvenile</w>\": 19333,\n  \"juvent\": 13908,\n  \"juventus\": 47378,\n  \"juventus</w>\": 16208,\n  \"jux\": 33552,\n  \"juxta\": 34964,\n  \"jv\": 37932,\n  \"jv</w>\": 11805,\n  \"jw\": 30221,\n  \"jw</w>\": 24215,\n  \"jy\": 20979,\n  \"jyo\": 27378,\n  \"jyoti</w>\": 48696,\n  \"jÃ¤\": 45381,\n  \"k\": 74,\n  \"k</w>\": 330,\n  \"ka\": 1595,\n  \"ka</w>\": 1525,\n  \"kaa</w>\": 34496,\n  \"kab\": 6554,\n  \"kab</w>\": 45134,\n  \"kabaddi</w>\": 41749,\n  \"kabir</w>\": 38619,\n  \"kabo\": 47974,\n  \"kabul</w>\": 26160,\n  \"kac\": 21693,\n  \"kach\": 14341,\n  \"kad\": 10901,\n  \"kade</w>\": 41130,\n  \"kaduna</w>\": 38053,\n  \"kae\": 22542,\n  \"kaeper\": 30070,\n  \"kaepernick</w>\": 30713,\n  \"kaf\": 19870,\n  \"kag\": 13666,\n  \"kag</w>\": 31003,\n  \"kah\": 16068,\n  \"kah</w>\": 15463,\n  \"kahn</w>\": 35397,\n  \"kai\": 12752,\n  \"kai</w>\": 9601,\n  \"kaido</w>\": 40255,\n  \"kail\": 23623,\n  \"kaine</w>\": 39028,\n  \"kair\": 33027,\n  \"kaiser\": 43685,\n  \"kaiser</w>\": 29960,\n  \"kait\": 19326,\n  \"kaitlyn</w>\": 34948,\n  \"kaj\": 44788,\n  \"kaj</w>\": 40381,\n  \"kak\": 10401,\n  \"kak</w>\": 40128,\n  \"kaka</w>\": 47689,\n  \"kaku</w>\": 30900,\n  \"kal\": 4187,\n  \"kal</w>\": 18712,\n  \"kala\": 45453,\n  \"kala</w>\": 33105,\n  \"kalam</w>\": 40142,\n  \"kalamaz\": 42328,\n  \"kalamazoo</w>\": 46264,\n  \"kalb</w>\": 34483,\n  \"kale\": 17162,\n  \"kale</w>\": 16625,\n  \"kaleido\": 41144,\n  \"kali\": 17844,\n  \"kali</w>\": 26964,\n  \"kalin\": 42776,\n  \"kalyan</w>\": 23825,\n  \"kam\": 4104,\n  \"kam</w>\": 26011,\n  \"kamal\": 31371,\n  \"kamal</w>\": 28619,\n  \"kamala</w>\": 45003,\n  \"kame\": 45235,\n  \"kamen</w>\": 40738,\n  \"kami</w>\": 28707,\n  \"kamloops</w>\": 36602,\n  \"kamp\": 35179,\n  \"kamp</w>\": 29522,\n  \"kampala</w>\": 37134,\n  \"kan\": 2532,\n  \"kan</w>\": 8101,\n  \"kana</w>\": 35178,\n  \"kand\": 17478,\n  \"kane\": 32218,\n  \"kane</w>\": 9765,\n  \"kang\": 12226,\n  \"kang</w>\": 20789,\n  \"kangar\": 20622,\n  \"kangaroo</w>\": 25513,\n  \"kani\": 40907,\n  \"kani</w>\": 41948,\n  \"kann\": 18533,\n  \"kannada</w>\": 30053,\n  \"kano</w>\": 28201,\n  \"kans</w>\": 34012,\n  \"kansas\": 25507,\n  \"kansas</w>\": 6539,\n  \"kansascity</w>\": 46134,\n  \"kant\": 39923,\n  \"kant</w>\": 47132,\n  \"kanth</w>\": 24427,\n  \"kanu</w>\": 44565,\n  \"kany\": 13590,\n  \"kanye\": 29680,\n  \"kanye</w>\": 14965,\n  \"kanyewest</w>\": 31943,\n  \"kap\": 6804,\n  \"kap</w>\": 45279,\n  \"kapam\": 48561,\n  \"kapil\": 32337,\n  \"kapil</w>\": 42709,\n  \"kapilshar\": 48978,\n  \"kaplan</w>\": 37401,\n  \"kapoor</w>\": 9117,\n  \"kapp\": 36717,\n  \"kappa</w>\": 20239,\n  \"kapur</w>\": 42371,\n  \"kar\": 1813,\n  \"kar</w>\": 5933,\n  \"kara</w>\": 12552,\n  \"karab\": 40916,\n  \"karachi</w>\": 13671,\n  \"karak\": 40372,\n  \"karan\": 20077,\n  \"karan</w>\": 20931,\n  \"karanjohar</w>\": 47621,\n  \"karao\": 16262,\n  \"karaoke</w>\": 16640,\n  \"karate</w>\": 21211,\n  \"kardashi\": 13619,\n  \"kardashian</w>\": 14578,\n  \"kare\": 14310,\n  \"kare</w>\": 38354,\n  \"kareem</w>\": 38885,\n  \"kareena</w>\": 41569,\n  \"karen\": 17719,\n  \"karen</w>\": 10349,\n  \"kari\": 15339,\n  \"kari</w>\": 15161,\n  \"karim</w>\": 33477,\n  \"karin</w>\": 43917,\n  \"karina</w>\": 40250,\n  \"karl\": 20967,\n  \"karl</w>\": 13134,\n  \"karla</w>\": 42309,\n  \"karma</w>\": 17658,\n  \"karnat\": 13994,\n  \"karnataka</w>\": 15515,\n  \"karo</w>\": 45305,\n  \"kart\": 47841,\n  \"kart</w>\": 21310,\n  \"karthik</w>\": 41397,\n  \"karti\": 23053,\n  \"kartikeyan</w>\": 32584,\n  \"karting</w>\": 41655,\n  \"kas\": 6119,\n  \"kas</w>\": 14372,\n  \"kasa</w>\": 46111,\n  \"kash\": 6954,\n  \"kash</w>\": 21371,\n  \"kashi\": 47945,\n  \"kashmir\": 20251,\n  \"kashmir</w>\": 10783,\n  \"kashmiri</w>\": 35331,\n  \"kasi\": 45870,\n  \"kasi</w>\": 32819,\n  \"kasich</w>\": 39666,\n  \"kat\": 2844,\n  \"kat</w>\": 9341,\n  \"kata</w>\": 14558,\n  \"kate\": 11620,\n  \"kate</w>\": 6699,\n  \"katelyn</w>\": 45963,\n  \"kath\": 7386,\n  \"kath</w>\": 19745,\n  \"katharine</w>\": 41473,\n  \"katherine</w>\": 17687,\n  \"kathle\": 18721,\n  \"kathleen</w>\": 21709,\n  \"kathmandu</w>\": 34456,\n  \"kathniel</w>\": 36159,\n  \"kathr\": 14905,\n  \"kathryn\": 33142,\n  \"kathryn</w>\": 19999,\n  \"kathy\": 34775,\n  \"kathy</w>\": 18795,\n  \"kati\": 6515,\n  \"kati</w>\": 29928,\n  \"katic</w>\": 48058,\n  \"katie\": 24117,\n  \"katie</w>\": 9076,\n  \"katniss</w>\": 47916,\n  \"kato</w>\": 27573,\n  \"katrin\": 31282,\n  \"katrina</w>\": 21397,\n  \"katrinakaif</w>\": 45845,\n  \"kats</w>\": 44213,\n  \"katsu\": 49296,\n  \"katsu</w>\": 43712,\n  \"katy\": 17609,\n  \"katy</w>\": 14435,\n  \"katyperry</w>\": 28309,\n  \"katz</w>\": 30790,\n  \"kau\": 9299,\n  \"kau</w>\": 36895,\n  \"kauai</w>\": 44050,\n  \"kaufman</w>\": 37188,\n  \"kaur</w>\": 30518,\n  \"kav\": 10228,\n  \"kavan\": 18576,\n  \"kavanaugh</w>\": 20252,\n  \"kaw\": 10842,\n  \"kaw</w>\": 42719,\n  \"kawa</w>\": 33244,\n  \"kawaii</w>\": 26891,\n  \"kawasaki</w>\": 28227,\n  \"kawhi</w>\": 41220,\n  \"kay\": 4673,\n  \"kay</w>\": 9862,\n  \"kaya</w>\": 22752,\n  \"kayak</w>\": 27043,\n  \"kayaking</w>\": 28977,\n  \"kaye</w>\": 33003,\n  \"kayla</w>\": 17139,\n  \"kaylee</w>\": 47215,\n  \"kayo</w>\": 37021,\n  \"kaz\": 8812,\n  \"kaz</w>\": 39622,\n  \"kazakh\": 25451,\n  \"kazakhstan</w>\": 26720,\n  \"kazan</w>\": 47641,\n  \"kb\": 27381,\n  \"kb</w>\": 19960,\n  \"kbs</w>\": 27418,\n  \"kc\": 10869,\n  \"kc</w>\": 8638,\n  \"kca</w>\": 14347,\n  \"kcon</w>\": 39970,\n  \"kcr\": 46181,\n  \"kd\": 21826,\n  \"kd</w>\": 15597,\n  \"kday</w>\": 31074,\n  \"kdrama</w>\": 48628,\n  \"ke\": 643,\n  \"ke</w>\": 618,\n  \"kea</w>\": 47926,\n  \"kean\": 43288,\n  \"keane</w>\": 28635,\n  \"keanu</w>\": 40608,\n  \"kear\": 21562,\n  \"kearney</w>\": 36435,\n  \"keating</w>\": 40045,\n  \"keaton</w>\": 29975,\n  \"kebab</w>\": 36497,\n  \"ked\": 11730,\n  \"ked</w>\": 1243,\n  \"kee\": 9724,\n  \"kee</w>\": 6760,\n  \"keef</w>\": 42323,\n  \"keefe</w>\": 46965,\n  \"keegan</w>\": 31122,\n  \"keel</w>\": 48376,\n  \"keen\": 17714,\n  \"keen</w>\": 13218,\n  \"keenan</w>\": 36276,\n  \"keep\": 2924,\n  \"keep</w>\": 1726,\n  \"keeper</w>\": 7650,\n  \"keepers</w>\": 16130,\n  \"keepin</w>\": 41712,\n  \"keeping\": 38371,\n  \"keeping</w>\": 4873,\n  \"keepit\": 28044,\n  \"keeps</w>\": 6333,\n  \"keer\": 27412,\n  \"keerth\": 47500,\n  \"keerthyofficial</w>\": 48185,\n  \"kees</w>\": 10791,\n  \"keg</w>\": 32785,\n  \"keh\": 41272,\n  \"keh</w>\": 36983,\n  \"kei\": 18735,\n  \"kei</w>\": 24835,\n  \"keith\": 18762,\n  \"keith</w>\": 8252,\n  \"kej\": 15674,\n  \"kejri\": 16617,\n  \"kejriwal</w>\": 17334,\n  \"keke</w>\": 39195,\n  \"kel\": 2825,\n  \"kel</w>\": 7553,\n  \"kele\": 41765,\n  \"kell\": 16082,\n  \"kell</w>\": 40103,\n  \"keller</w>\": 21407,\n  \"kelley</w>\": 23776,\n  \"kelli\": 45852,\n  \"kelli</w>\": 46190,\n  \"kellie</w>\": 49224,\n  \"kellogg</w>\": 44218,\n  \"kelly\": 13417,\n  \"kelly</w>\": 5220,\n  \"kelown\": 31708,\n  \"kelowna</w>\": 32963,\n  \"kelsey\": 42295,\n  \"kelsey</w>\": 23018,\n  \"kelvin</w>\": 32859,\n  \"kem\": 31013,\n  \"kem</w>\": 17349,\n  \"kemp\": 18302,\n  \"kemp</w>\": 25325,\n  \"ken\": 1838,\n  \"ken</w>\": 1702,\n  \"kend\": 7497,\n  \"kendal</w>\": 44836,\n  \"kendall\": 34607,\n  \"kendall</w>\": 16238,\n  \"kendra</w>\": 36074,\n  \"kendrick\": 41787,\n  \"kendrick</w>\": 21953,\n  \"kendricklamar</w>\": 47020,\n  \"kenne\": 6209,\n  \"kennedy\": 38631,\n  \"kennedy</w>\": 9004,\n  \"kennel</w>\": 39595,\n  \"kenneth\": 46900,\n  \"kenneth</w>\": 17839,\n  \"kenney</w>\": 41373,\n  \"kenny\": 20185,\n  \"kenny</w>\": 9595,\n  \"kens</w>\": 29765,\n  \"kensing\": 21505,\n  \"kensington</w>\": 24988,\n  \"kent\": 13875,\n  \"kent</w>\": 8214,\n  \"kentu\": 9045,\n  \"kentucky\": 32230,\n  \"kentucky</w>\": 10014,\n  \"keny\": 17374,\n  \"kenya</w>\": 6181,\n  \"kenyan</w>\": 22624,\n  \"kenyans</w>\": 36263,\n  \"kenyatta</w>\": 31012,\n  \"kenzie</w>\": 38087,\n  \"keo\": 43062,\n  \"kept</w>\": 7737,\n  \"ker\": 2352,\n  \"ker</w>\": 1485,\n  \"keral\": 35122,\n  \"kerala</w>\": 11881,\n  \"kered</w>\": 26690,\n  \"kerel</w>\": 32232,\n  \"keri</w>\": 43447,\n  \"kermit</w>\": 40908,\n  \"kern</w>\": 40150,\n  \"kernel</w>\": 40684,\n  \"kerr</w>\": 20491,\n  \"kerri\": 41849,\n  \"kerry\": 24795,\n  \"kerry</w>\": 13097,\n  \"kers\": 30347,\n  \"kers</w>\": 2880,\n  \"kershaw</w>\": 40785,\n  \"kerson</w>\": 42810,\n  \"kerswednesday</w>\": 48152,\n  \"kert</w>\": 47279,\n  \"kes\": 38398,\n  \"kes</w>\": 1115,\n  \"kesh</w>\": 19751,\n  \"kesha</w>\": 36526,\n  \"kest</w>\": 15080,\n  \"ket\": 2715,\n  \"ket</w>\": 1236,\n  \"ketball</w>\": 38240,\n  \"ketch\": 22590,\n  \"ketch</w>\": 35371,\n  \"ketchup</w>\": 26724,\n  \"kete\": 25404,\n  \"keted</w>\": 41396,\n  \"keting</w>\": 15951,\n  \"keto\": 27485,\n  \"keto</w>\": 28754,\n  \"kets</w>\": 1632,\n  \"kett\": 23124,\n  \"kett</w>\": 10312,\n  \"kettering</w>\": 43779,\n  \"kettle\": 41992,\n  \"kettle</w>\": 24303,\n  \"kev\": 22758,\n  \"kev</w>\": 29419,\n  \"kevin\": 9419,\n  \"kevin</w>\": 4685,\n  \"kew\": 38014,\n  \"kew</w>\": 31409,\n  \"kex\": 30251,\n  \"key\": 2891,\n  \"key</w>\": 1458,\n  \"keyan</w>\": 27617,\n  \"keyboard</w>\": 13017,\n  \"keyboards</w>\": 49237,\n  \"keychain</w>\": 31050,\n  \"keye\": 40516,\n  \"keye</w>\": 20635,\n  \"keyes</w>\": 18336,\n  \"keynes</w>\": 32462,\n  \"keynote</w>\": 7556,\n  \"keys\": 48912,\n  \"keys</w>\": 6355,\n  \"keystone</w>\": 30688,\n  \"keyword</w>\": 42284,\n  \"keywords</w>\": 48122,\n  \"kf\": 33308,\n  \"kf</w>\": 42119,\n  \"kfc</w>\": 22032,\n  \"kg\": 36772,\n  \"kg</w>\": 7817,\n  \"kgs</w>\": 46629,\n  \"kh\": 2166,\n  \"kh</w>\": 7452,\n  \"kha\": 7333,\n  \"kha</w>\": 18929,\n  \"khair\": 43742,\n  \"khaki</w>\": 41646,\n  \"khal\": 13070,\n  \"khaled</w>\": 29343,\n  \"khali\": 11324,\n  \"khalid</w>\": 27166,\n  \"khalifa</w>\": 21389,\n  \"khalil</w>\": 36229,\n  \"kham\": 24892,\n  \"khan\": 13318,\n  \"khan</w>\": 3873,\n  \"khand\": 43384,\n  \"khand</w>\": 31110,\n  \"khanna</w>\": 29931,\n  \"khar\": 18340,\n  \"khar</w>\": 28578,\n  \"khart</w>\": 37458,\n  \"khat\": 43290,\n  \"khe\": 26360,\n  \"kher</w>\": 43843,\n  \"khi\": 39062,\n  \"khi</w>\": 42925,\n  \"khil\": 34101,\n  \"khloe</w>\": 45312,\n  \"kho\": 14022,\n  \"kho</w>\": 28774,\n  \"khou</w>\": 30656,\n  \"khs</w>\": 21239,\n  \"khtar</w>\": 45593,\n  \"khu\": 14041,\n  \"khur\": 32083,\n  \"khy\": 40917,\n  \"khz</w>\": 45604,\n  \"ki\": 848,\n  \"ki</w>\": 2608,\n  \"kia</w>\": 8712,\n  \"kian\": 43961,\n  \"kian</w>\": 25708,\n  \"kians</w>\": 44010,\n  \"kib\": 43108,\n  \"kiba\": 37207,\n  \"kic\": 24003,\n  \"kic</w>\": 27633,\n  \"kicchasu\": 44665,\n  \"kicchasudeep</w>\": 45560,\n  \"kick\": 4102,\n  \"kick</w>\": 4289,\n  \"kickass</w>\": 39299,\n  \"kickboxing</w>\": 36041,\n  \"kicked</w>\": 12479,\n  \"kicker</w>\": 26338,\n  \"kickin</w>\": 34597,\n  \"kicking</w>\": 7802,\n  \"kickoff</w>\": 10245,\n  \"kicks</w>\": 6989,\n  \"kickstart</w>\": 40780,\n  \"kickstarter</w>\": 13228,\n  \"kid\": 3948,\n  \"kid</w>\": 3551,\n  \"kidd</w>\": 24082,\n  \"kidding</w>\": 14535,\n  \"kiddo</w>\": 36360,\n  \"kiddos</w>\": 29205,\n  \"kidlit\": 39064,\n  \"kidlit</w>\": 33515,\n  \"kidlitart</w>\": 41600,\n  \"kidman</w>\": 44931,\n  \"kidnap</w>\": 45100,\n  \"kidnapp\": 16183,\n  \"kidnapped</w>\": 24737,\n  \"kidnapping</w>\": 32361,\n  \"kidney\": 37835,\n  \"kidney</w>\": 14610,\n  \"kids\": 15561,\n  \"kids</w>\": 1911,\n  \"kidz</w>\": 41938,\n  \"kie\": 8544,\n  \"kie</w>\": 3094,\n  \"kiefer</w>\": 48026,\n  \"kiel\": 40940,\n  \"kiel</w>\": 25509,\n  \"kien</w>\": 28782,\n  \"kier\": 20403,\n  \"kier</w>\": 35575,\n  \"kieran</w>\": 29231,\n  \"kies\": 36601,\n  \"kies</w>\": 4993,\n  \"kiest</w>\": 29755,\n  \"kiev</w>\": 24585,\n  \"kiewicz</w>\": 47574,\n  \"kigali</w>\": 40278,\n  \"kii</w>\": 39340,\n  \"kik</w>\": 36176,\n  \"kiki</w>\": 23962,\n  \"kiko</w>\": 40861,\n  \"kil\": 4912,\n  \"kil</w>\": 39337,\n  \"kildare</w>\": 45541,\n  \"kili\": 24386,\n  \"kilig</w>\": 49172,\n  \"kilimanjaro</w>\": 43470,\n  \"kilkenny</w>\": 33805,\n  \"kill\": 6163,\n  \"kill</w>\": 4367,\n  \"killa</w>\": 41355,\n  \"killarney</w>\": 48813,\n  \"killed</w>\": 3733,\n  \"killer\": 28230,\n  \"killer</w>\": 6613,\n  \"killers</w>\": 17614,\n  \"killin</w>\": 25903,\n  \"killing\": 37977,\n  \"killing</w>\": 5923,\n  \"killings</w>\": 24918,\n  \"kills</w>\": 9795,\n  \"kiln</w>\": 44150,\n  \"kilo\": 39281,\n  \"kilom\": 26285,\n  \"kilometers</w>\": 39192,\n  \"kilometres</w>\": 43278,\n  \"kilt</w>\": 49319,\n  \"kim\": 4639,\n  \"kim</w>\": 4606,\n  \"kimber\": 16796,\n  \"kimberley</w>\": 39859,\n  \"kimberly</w>\": 27465,\n  \"kimchi</w>\": 41027,\n  \"kimi</w>\": 31536,\n  \"kimkardashian</w>\": 35400,\n  \"kimmel</w>\": 27820,\n  \"kimono</w>\": 40024,\n  \"kin\": 1442,\n  \"kin</w>\": 2667,\n  \"kina</w>\": 28518,\n  \"kind\": 7204,\n  \"kind</w>\": 3044,\n  \"kinda</w>\": 6612,\n  \"kinder\": 12711,\n  \"kinder</w>\": 24159,\n  \"kindergarten</w>\": 16749,\n  \"kindle\": 24704,\n  \"kindle</w>\": 10746,\n  \"kindleunlimited</w>\": 32164,\n  \"kindly</w>\": 13952,\n  \"kindness\": 45112,\n  \"kindness</w>\": 10614,\n  \"kinds</w>\": 14879,\n  \"kine\": 17607,\n  \"kineni</w>\": 49080,\n  \"kinetic</w>\": 37699,\n  \"king\": 2365,\n  \"king</w>\": 674,\n  \"kingdom\": 21870,\n  \"kingdom</w>\": 7364,\n  \"kingdomhearts</w>\": 48570,\n  \"kingdoms</w>\": 43890,\n  \"kingfisher</w>\": 34330,\n  \"kingjames</w>\": 33153,\n  \"kingly</w>\": 33642,\n  \"kingof\": 27878,\n  \"kings\": 18590,\n  \"kings</w>\": 4232,\n  \"kingsley</w>\": 41807,\n  \"kingston\": 40736,\n  \"kingston</w>\": 15393,\n  \"kini</w>\": 41644,\n  \"kinky</w>\": 37006,\n  \"kinney</w>\": 37233,\n  \"kino</w>\": 39000,\n  \"kins\": 31060,\n  \"kins</w>\": 4386,\n  \"kinson</w>\": 12095,\n  \"kio\": 28210,\n  \"kio</w>\": 39401,\n  \"kiosk</w>\": 39146,\n  \"kip\": 27636,\n  \"kip</w>\": 15986,\n  \"kipp\": 43329,\n  \"kir\": 3476,\n  \"kir</w>\": 32949,\n  \"kira</w>\": 33038,\n  \"kiran\": 43234,\n  \"kiran</w>\": 36603,\n  \"kirby</w>\": 17065,\n  \"kiri\": 34170,\n  \"kiri</w>\": 45826,\n  \"kirk\": 10639,\n  \"kirk</w>\": 11508,\n  \"kirkland</w>\": 43061,\n  \"kiro</w>\": 39749,\n  \"kirstel</w>\": 46483,\n  \"kirsten</w>\": 31813,\n  \"kirsty</w>\": 37787,\n  \"kis\": 3199,\n  \"kis</w>\": 22796,\n  \"kish\": 25662,\n  \"kiss\": 43757,\n  \"kiss</w>\": 5946,\n  \"kissed</w>\": 22561,\n  \"kisses\": 47876,\n  \"kisses</w>\": 11220,\n  \"kissing</w>\": 18637,\n  \"kistan</w>\": 29580,\n  \"kit\": 4566,\n  \"kit</w>\": 4274,\n  \"kita</w>\": 29961,\n  \"kitch\": 3850,\n  \"kitchen\": 18131,\n  \"kitchen</w>\": 4485,\n  \"kitchener</w>\": 34428,\n  \"kitchens</w>\": 28301,\n  \"kite\": 47777,\n  \"kite</w>\": 19867,\n  \"kites</w>\": 45829,\n  \"kits</w>\": 13730,\n  \"kitt\": 10840,\n  \"kitten</w>\": 13063,\n  \"kittens</w>\": 17216,\n  \"kitties</w>\": 36013,\n  \"kitty\": 25067,\n  \"kitty</w>\": 8417,\n  \"kiwan\": 38709,\n  \"kiwanis</w>\": 46513,\n  \"kiwi</w>\": 22440,\n  \"kiwis</w>\": 48108,\n  \"kiya</w>\": 41610,\n  \"kj\": 27385,\n  \"kj</w>\": 28238,\n  \"kja\": 41048,\n  \"kjv</w>\": 37387,\n  \"kk\": 4390,\n  \"kk</w>\": 10849,\n  \"kka</w>\": 19002,\n  \"kke</w>\": 44239,\n  \"kker</w>\": 32399,\n  \"kki</w>\": 44672,\n  \"kkk</w>\": 20073,\n  \"kkkk\": 15834,\n  \"kkkk</w>\": 47160,\n  \"kkkkkkkk\": 31042,\n  \"kko</w>\": 43965,\n  \"kkr</w>\": 40855,\n  \"kl\": 8498,\n  \"kl</w>\": 14134,\n  \"kla\": 11249,\n  \"klan</w>\": 46935,\n  \"klar\": 41374,\n  \"klaus</w>\": 31788,\n  \"kle\": 7612,\n  \"kle</w>\": 7432,\n  \"klein\": 33475,\n  \"klein</w>\": 17579,\n  \"kley</w>\": 18594,\n  \"kli\": 31640,\n  \"klin\": 44809,\n  \"klin</w>\": 41647,\n  \"kline</w>\": 47580,\n  \"kling\": 40270,\n  \"klm</w>\": 38859,\n  \"klo\": 15296,\n  \"klopp</w>\": 26446,\n  \"kltu</w>\": 25978,\n  \"klu\": 21852,\n  \"kly</w>\": 45090,\n  \"km\": 29954,\n  \"km</w>\": 4590,\n  \"kman</w>\": 33312,\n  \"kms</w>\": 24996,\n  \"kn\": 4825,\n  \"kn</w>\": 23693,\n  \"knapp</w>\": 33945,\n  \"kne\": 6358,\n  \"knee</w>\": 9897,\n  \"knees</w>\": 19115,\n  \"kner</w>\": 31578,\n  \"knew</w>\": 5009,\n  \"kni\": 6312,\n  \"knick\": 33286,\n  \"knicks</w>\": 17657,\n  \"knife\": 44176,\n  \"knife</w>\": 8960,\n  \"knigh\": 43099,\n  \"knight\": 17949,\n  \"knight</w>\": 7355,\n  \"knights</w>\": 10385,\n  \"knit\": 18745,\n  \"knit</w>\": 14313,\n  \"knitted</w>\": 28151,\n  \"knitting</w>\": 18863,\n  \"knives</w>\": 20910,\n  \"kno\": 1482,\n  \"kno</w>\": 25362,\n  \"knob</w>\": 29736,\n  \"knobs</w>\": 47504,\n  \"knock\": 14195,\n  \"knock</w>\": 11583,\n  \"knocked</w>\": 15325,\n  \"knocking</w>\": 20380,\n  \"knockout</w>\": 22602,\n  \"knocks</w>\": 24296,\n  \"knoll</w>\": 43882,\n  \"knot</w>\": 18412,\n  \"knots</w>\": 32428,\n  \"know\": 4179,\n  \"know</w>\": 1038,\n  \"knowing</w>\": 9267,\n  \"knowledge\": 27864,\n  \"knowledge</w>\": 5510,\n  \"knowledgeable</w>\": 43391,\n  \"knowles</w>\": 32631,\n  \"known</w>\": 3102,\n  \"knows</w>\": 4309,\n  \"knowyour\": 30773,\n  \"knox\": 18630,\n  \"knox</w>\": 21833,\n  \"knoxville</w>\": 23232,\n  \"knu\": 14812,\n  \"knuck\": 21333,\n  \"knuckle</w>\": 42023,\n  \"knuckles</w>\": 40127,\n  \"knw</w>\": 40803,\n  \"ko\": 1313,\n  \"ko</w>\": 2448,\n  \"koala</w>\": 36654,\n  \"kobe\": 42644,\n  \"kobe</w>\": 14470,\n  \"kobo</w>\": 42390,\n  \"koch</w>\": 25331,\n  \"kochi</w>\": 36710,\n  \"kodak</w>\": 30425,\n  \"kodi\": 46611,\n  \"kof\": 17528,\n  \"koff</w>\": 47303,\n  \"kofi</w>\": 40400,\n  \"koh\": 13379,\n  \"koh</w>\": 31216,\n  \"kohl</w>\": 48479,\n  \"kohli</w>\": 17549,\n  \"koi</w>\": 28150,\n  \"kojima</w>\": 46419,\n  \"kok\": 32045,\n  \"kok</w>\": 11225,\n  \"koko\": 42426,\n  \"koko</w>\": 40003,\n  \"kol\": 7142,\n  \"kol</w>\": 31023,\n  \"kolkata</w>\": 18011,\n  \"kom\": 6686,\n  \"kom</w>\": 24181,\n  \"kombat</w>\": 29670,\n  \"kombucha</w>\": 48615,\n  \"komo</w>\": 31820,\n  \"kon\": 5743,\n  \"kon</w>\": 29519,\n  \"kona</w>\": 30203,\n  \"kong\": 31784,\n  \"kong</w>\": 6506,\n  \"konstant\": 46583,\n  \"koo\": 12225,\n  \"koo</w>\": 40472,\n  \"kook</w>\": 16003,\n  \"kool\": 36755,\n  \"kool</w>\": 26444,\n  \"kop\": 16623,\n  \"kop</w>\": 38999,\n  \"kor\": 6428,\n  \"kor</w>\": 24175,\n  \"kore\": 3919,\n  \"korea</w>\": 5915,\n  \"korean\": 31949,\n  \"korean</w>\": 8034,\n  \"kori</w>\": 42842,\n  \"korn\": 45412,\n  \"korn</w>\": 31492,\n  \"kors</w>\": 34535,\n  \"kos\": 47438,\n  \"kos</w>\": 22951,\n  \"kosh</w>\": 45233,\n  \"kosher</w>\": 36502,\n  \"koso\": 23892,\n  \"kosovo</w>\": 28343,\n  \"kot\": 23323,\n  \"kot</w>\": 20701,\n  \"kota</w>\": 21735,\n  \"koto\": 40945,\n  \"koto</w>\": 29977,\n  \"kou\": 18502,\n  \"kou</w>\": 39614,\n  \"kour\": 34134,\n  \"kov\": 17733,\n  \"kov</w>\": 15156,\n  \"kova</w>\": 26185,\n  \"koval\": 47903,\n  \"kovic</w>\": 16886,\n  \"kovich</w>\": 44794,\n  \"kovsky</w>\": 33384,\n  \"kow\": 29764,\n  \"kow</w>\": 23919,\n  \"kowski</w>\": 17649,\n  \"koz\": 29598,\n  \"kp\": 16174,\n  \"kp</w>\": 16894,\n  \"kpa</w>\": 38759,\n  \"kph</w>\": 41138,\n  \"kpk</w>\": 42094,\n  \"kpmg</w>\": 38243,\n  \"kpop\": 29534,\n  \"kpop</w>\": 15859,\n  \"kprc</w>\": 47832,\n  \"kprs</w>\": 46253,\n  \"kr\": 7309,\n  \"kr</w>\": 14107,\n  \"kra\": 5762,\n  \"kraft</w>\": 28057,\n  \"kraja</w>\": 29016,\n  \"kraken</w>\": 48408,\n  \"krakow</w>\": 40033,\n  \"kram\": 19075,\n  \"kramer</w>\": 27495,\n  \"kran\": 33243,\n  \"kranti</w>\": 47969,\n  \"krat\": 30470,\n  \"kre\": 8362,\n  \"kreme</w>\": 43140,\n  \"kremlin</w>\": 33979,\n  \"kri\": 3679,\n  \"kris\": 35251,\n  \"kris</w>\": 12261,\n  \"krish\": 11487,\n  \"krishna</w>\": 15863,\n  \"krishnan</w>\": 46535,\n  \"krispy</w>\": 49292,\n  \"krist\": 16490,\n  \"kristen\": 28881,\n  \"kristen</w>\": 16644,\n  \"kristi\": 26895,\n  \"kristin\": 35408,\n  \"kristin</w>\": 26785,\n  \"kristina</w>\": 33180,\n  \"krit\": 36265,\n  \"kro\": 16193,\n  \"kroger</w>\": 36344,\n  \"kron\": 25999,\n  \"kru\": 10609,\n  \"kruger</w>\": 32948,\n  \"krun\": 43084,\n  \"kry\": 13995,\n  \"krystal</w>\": 36554,\n  \"ks\": 10470,\n  \"ks</w>\": 662,\n  \"ksa</w>\": 25439,\n  \"ksh</w>\": 36594,\n  \"kst</w>\": 17420,\n  \"kstate\": 48590,\n  \"ksu</w>\": 43496,\n  \"kswx</w>\": 36180,\n  \"kt\": 17238,\n  \"kt</w>\": 7792,\n  \"ktm</w>\": 33989,\n  \"ktn\": 42170,\n  \"kton</w>\": 37848,\n  \"kts</w>\": 48577,\n  \"ktv\": 36444,\n  \"ku\": 1836,\n  \"ku</w>\": 4827,\n  \"kuala</w>\": 30336,\n  \"kubball</w>\": 48995,\n  \"kuber\": 41336,\n  \"kubernetes</w>\": 45144,\n  \"kubrick</w>\": 37032,\n  \"kuch</w>\": 39394,\n  \"kud\": 40818,\n  \"kudos</w>\": 14481,\n  \"kul\": 11325,\n  \"kul</w>\": 31514,\n  \"kum\": 18086,\n  \"kum</w>\": 28148,\n  \"kuma\": 43139,\n  \"kuma</w>\": 33920,\n  \"kumar\": 22329,\n  \"kumar</w>\": 7674,\n  \"kumb\": 31391,\n  \"kun\": 6849,\n  \"kun</w>\": 21842,\n  \"kung\": 39656,\n  \"kung</w>\": 22347,\n  \"kunst</w>\": 37881,\n  \"kup\": 39023,\n  \"kups</w>\": 27240,\n  \"kur\": 4862,\n  \"kurdi\": 23504,\n  \"kurdish</w>\": 21644,\n  \"kurdistan</w>\": 24459,\n  \"kurds</w>\": 20888,\n  \"kuri\": 46375,\n  \"kuro\": 28239,\n  \"kuro</w>\": 47826,\n  \"kurt\": 31903,\n  \"kurt</w>\": 14527,\n  \"kus\": 27618,\n  \"kus</w>\": 27505,\n  \"kush\": 22264,\n  \"kush</w>\": 24594,\n  \"kushner</w>\": 36716,\n  \"kut\": 17283,\n  \"kut</w>\": 36965,\n  \"kuwait</w>\": 19679,\n  \"kuya</w>\": 34815,\n  \"kuz\": 33253,\n  \"kv\": 27594,\n  \"kv</w>\": 34249,\n  \"kw\": 10072,\n  \"kw</w>\": 18339,\n  \"kwa\": 32784,\n  \"kwa</w>\": 48576,\n  \"kwame</w>\": 46681,\n  \"kwan\": 37100,\n  \"kwan</w>\": 39447,\n  \"kwang</w>\": 40260,\n  \"kwe\": 26050,\n  \"kwi\": 35327,\n  \"kwon</w>\": 36369,\n  \"kx\": 28190,\n  \"kx</w>\": 46442,\n  \"ky\": 2018,\n  \"ky</w>\": 2383,\n  \"kya</w>\": 29142,\n  \"kyc</w>\": 37758,\n  \"kyiv</w>\": 36422,\n  \"kyle\": 15847,\n  \"kyle</w>\": 7539,\n  \"kylie\": 28282,\n  \"kylie</w>\": 17983,\n  \"kyliejenner</w>\": 47232,\n  \"kylo</w>\": 47704,\n  \"kyo\": 13150,\n  \"kyo</w>\": 6281,\n  \"kyoto</w>\": 23223,\n  \"kyr\": 26329,\n  \"kyrgy\": 40013,\n  \"kyrgyz\": 48346,\n  \"kyrie</w>\": 21857,\n  \"kyu\": 28296,\n  \"kyu</w>\": 25490,\n  \"kyuhyun</w>\": 37229,\n  \"kyung</w>\": 41058,\n  \"kyungsoo</w>\": 30280,\n  \"kywx</w>\": 39940,\n  \"kz\": 48743,\n  \"kz</w>\": 36848,\n  \"kzn</w>\": 38264,\n  \"kÃ¶\": 32437,\n  \"l\": 75,\n  \"l</w>\": 331,\n  \"la\": 572,\n  \"la</w>\": 1210,\n  \"laa</w>\": 44642,\n  \"lab\": 3537,\n  \"lab</w>\": 4352,\n  \"labe\": 25749,\n  \"label\": 12235,\n  \"label</w>\": 9093,\n  \"labeled</w>\": 32720,\n  \"labeling</w>\": 36825,\n  \"labelled</w>\": 45188,\n  \"labels</w>\": 17413,\n  \"lable</w>\": 31879,\n  \"labor\": 11201,\n  \"labor</w>\": 7878,\n  \"laboratories</w>\": 43421,\n  \"laboratory</w>\": 17664,\n  \"laborday</w>\": 39324,\n  \"labou\": 32700,\n  \"labour\": 19586,\n  \"labour</w>\": 6019,\n  \"labourdoorstep</w>\": 37008,\n  \"labout\": 35961,\n  \"labra\": 37067,\n  \"labrador</w>\": 25409,\n  \"labs</w>\": 12021,\n  \"laby\": 29131,\n  \"labyrin\": 31782,\n  \"labyrinth</w>\": 35594,\n  \"lac\": 4477,\n  \"lac</w>\": 16189,\n  \"lace\": 30012,\n  \"lace</w>\": 5421,\n  \"laced</w>\": 36800,\n  \"laces</w>\": 23281,\n  \"lacey</w>\": 31754,\n  \"lach\": 30558,\n  \"lack\": 24915,\n  \"lack</w>\": 8069,\n  \"lacking</w>\": 30080,\n  \"lacks</w>\": 34388,\n  \"laco\": 45882,\n  \"lacrosse</w>\": 12915,\n  \"lacy</w>\": 38645,\n  \"lad\": 15991,\n  \"lad</w>\": 10707,\n  \"ladak\": 42312,\n  \"ladakh</w>\": 45295,\n  \"ladder</w>\": 16637,\n  \"ladders</w>\": 47125,\n  \"lade</w>\": 26447,\n  \"laden</w>\": 28634,\n  \"ladi\": 12934,\n  \"ladies\": 28932,\n  \"ladies</w>\": 3431,\n  \"lads</w>\": 9803,\n  \"lady\": 7275,\n  \"lady</w>\": 2909,\n  \"ladybird</w>\": 43389,\n  \"ladybug</w>\": 40038,\n  \"ladygaga</w>\": 21232,\n  \"laf\": 47555,\n  \"lafayette</w>\": 22683,\n  \"lag\": 30932,\n  \"lag</w>\": 20394,\n  \"laga</w>\": 30161,\n  \"lage</w>\": 24369,\n  \"lager\": 36811,\n  \"lager</w>\": 22989,\n  \"lagh\": 37237,\n  \"laghate\": 47565,\n  \"laghateparth</w>\": 48780,\n  \"lagi</w>\": 39786,\n  \"lago\": 42698,\n  \"lago</w>\": 31476,\n  \"lagoon</w>\": 22753,\n  \"lagos</w>\": 12728,\n  \"lagun\": 18500,\n  \"laguna</w>\": 23609,\n  \"lah\": 27315,\n  \"lah</w>\": 4299,\n  \"lahat</w>\": 42164,\n  \"lahore</w>\": 16733,\n  \"lai</w>\": 23947,\n  \"laid\": 42560,\n  \"laid</w>\": 11160,\n  \"lain\": 46958,\n  \"lain</w>\": 17151,\n  \"laine</w>\": 35860,\n  \"lair</w>\": 31981,\n  \"lais</w>\": 34923,\n  \"lak\": 12890,\n  \"lak</w>\": 26793,\n  \"lake\": 6441,\n  \"lake</w>\": 2553,\n  \"lakedistrict</w>\": 26437,\n  \"lakel\": 26133,\n  \"lakeland</w>\": 34306,\n  \"laker\": 45717,\n  \"lakers</w>\": 13570,\n  \"lakes</w>\": 9265,\n  \"lakeshore</w>\": 42595,\n  \"lakeside</w>\": 30915,\n  \"lakewood</w>\": 36417,\n  \"lakh</w>\": 21487,\n  \"lakhs</w>\": 37985,\n  \"lakings</w>\": 34289,\n  \"lakota</w>\": 45510,\n  \"laksh\": 24937,\n  \"lakshmi</w>\": 39682,\n  \"lal\": 12301,\n  \"lal</w>\": 19430,\n  \"lala</w>\": 33661,\n  \"lali\": 21726,\n  \"laliga</w>\": 32383,\n  \"lam\": 2022,\n  \"lam</w>\": 5704,\n  \"lama</w>\": 26049,\n  \"lamar\": 28678,\n  \"lamar</w>\": 17284,\n  \"lamb\": 19863,\n  \"lamb</w>\": 10034,\n  \"lambda</w>\": 36687,\n  \"lambert</w>\": 14574,\n  \"lambeth</w>\": 43410,\n  \"lambo</w>\": 45464,\n  \"lamborgh\": 18709,\n  \"lamborghini</w>\": 19462,\n  \"lambs</w>\": 30361,\n  \"lame</w>\": 23192,\n  \"lamin\": 22337,\n  \"laminated</w>\": 49079,\n  \"lamo\": 41461,\n  \"lamont</w>\": 46719,\n  \"lamp\": 26700,\n  \"lamp</w>\": 10725,\n  \"lampard</w>\": 39989,\n  \"lamps</w>\": 23424,\n  \"lan\": 1193,\n  \"lan</w>\": 4872,\n  \"lana</w>\": 15406,\n  \"lanapar\": 47437,\n  \"lanaparrilla</w>\": 47819,\n  \"lanc\": 11872,\n  \"lanca\": 15694,\n  \"lancashire</w>\": 20939,\n  \"lancaster</w>\": 16446,\n  \"lance\": 26025,\n  \"lance</w>\": 11609,\n  \"lancer</w>\": 38195,\n  \"lancers</w>\": 46392,\n  \"lancia</w>\": 48698,\n  \"lancs</w>\": 47540,\n  \"land\": 1567,\n  \"land</w>\": 973,\n  \"lande</w>\": 36556,\n  \"landed</w>\": 9873,\n  \"lander\": 37247,\n  \"lander</w>\": 9666,\n  \"landers</w>\": 20019,\n  \"landfall</w>\": 38465,\n  \"landfill</w>\": 34947,\n  \"landia</w>\": 41384,\n  \"landing</w>\": 8292,\n  \"landings</w>\": 46104,\n  \"landlord</w>\": 28938,\n  \"landlords</w>\": 35283,\n  \"landmark</w>\": 15208,\n  \"landmarks</w>\": 30393,\n  \"lando\": 25463,\n  \"lando</w>\": 7065,\n  \"landon</w>\": 32748,\n  \"landrover</w>\": 38125,\n  \"landry</w>\": 36137,\n  \"lands\": 40223,\n  \"lands</w>\": 2961,\n  \"landsc\": 4384,\n  \"landscape\": 21123,\n  \"landscape</w>\": 5727,\n  \"landscapephotography</w>\": 28125,\n  \"landscapes</w>\": 15344,\n  \"landscaping</w>\": 25642,\n  \"landslide</w>\": 31954,\n  \"lane\": 25534,\n  \"lane</w>\": 3980,\n  \"lanes</w>\": 10345,\n  \"laney</w>\": 38552,\n  \"lang\": 7969,\n  \"lang</w>\": 8578,\n  \"lange</w>\": 32021,\n  \"langford</w>\": 45615,\n  \"langley</w>\": 28595,\n  \"langu\": 4095,\n  \"language\": 46103,\n  \"language</w>\": 4781,\n  \"languages</w>\": 13527,\n  \"lani</w>\": 22964,\n  \"lanka</w>\": 16221,\n  \"lankan</w>\": 40531,\n  \"lannister</w>\": 49056,\n  \"lans\": 43550,\n  \"lansing</w>\": 30805,\n  \"lant</w>\": 44504,\n  \"lanta</w>\": 44768,\n  \"lantern</w>\": 17185,\n  \"lanterns</w>\": 33676,\n  \"lantic\": 32601,\n  \"lantic</w>\": 27678,\n  \"lants</w>\": 38425,\n  \"lanyard</w>\": 46808,\n  \"lao\": 32475,\n  \"lao</w>\": 29521,\n  \"laos</w>\": 34353,\n  \"lap\": 7213,\n  \"lap</w>\": 8639,\n  \"lapd</w>\": 32557,\n  \"lapel</w>\": 47961,\n  \"lapland</w>\": 43633,\n  \"laps</w>\": 18711,\n  \"lapse</w>\": 33365,\n  \"laptop</w>\": 10464,\n  \"laptops</w>\": 32189,\n  \"laq</w>\": 45026,\n  \"lar\": 1592,\n  \"lar</w>\": 1652,\n  \"lara</w>\": 19435,\n  \"lard</w>\": 40347,\n  \"lare\": 22415,\n  \"laredo</w>\": 48427,\n  \"large\": 40234,\n  \"large</w>\": 3638,\n  \"largely</w>\": 21418,\n  \"larger</w>\": 12567,\n  \"largest</w>\": 4960,\n  \"largo</w>\": 44161,\n  \"lari\": 34676,\n  \"lark\": 43164,\n  \"lark</w>\": 23536,\n  \"larkin</w>\": 34769,\n  \"larry\": 18642,\n  \"larry</w>\": 8242,\n  \"lars</w>\": 8669,\n  \"larsen</w>\": 39721,\n  \"larson</w>\": 27973,\n  \"larvae</w>\": 44840,\n  \"las\": 8295,\n  \"las</w>\": 2552,\n  \"lasag\": 31210,\n  \"lasagna</w>\": 40683,\n  \"lasalle</w>\": 43866,\n  \"laser\": 25607,\n  \"laser</w>\": 9885,\n  \"lasers</w>\": 37060,\n  \"lash\": 31995,\n  \"lash</w>\": 18480,\n  \"lashes</w>\": 21015,\n  \"lass\": 24203,\n  \"lass</w>\": 18263,\n  \"lassic</w>\": 39430,\n  \"last\": 10600,\n  \"last</w>\": 952,\n  \"lasted</w>\": 25711,\n  \"lasting</w>\": 13434,\n  \"lastnight</w>\": 30159,\n  \"lasts</w>\": 20141,\n  \"lasvegas</w>\": 17789,\n  \"lat\": 1591,\n  \"lat</w>\": 28437,\n  \"lata</w>\": 47114,\n  \"latam</w>\": 40012,\n  \"late\": 13267,\n  \"late</w>\": 2325,\n  \"latel\": 49035,\n  \"lately</w>\": 11824,\n  \"latepost</w>\": 48328,\n  \"later\": 24109,\n  \"later</w>\": 2941,\n  \"lateral</w>\": 26646,\n  \"latest\": 46805,\n  \"latest</w>\": 2053,\n  \"latex</w>\": 27520,\n  \"lati\": 16357,\n  \"latimes</w>\": 43356,\n  \"latin\": 16695,\n  \"latin</w>\": 9888,\n  \"latina</w>\": 27936,\n  \"latino\": 45734,\n  \"latino</w>\": 19470,\n  \"latinos</w>\": 40233,\n  \"lation</w>\": 6191,\n  \"latitude</w>\": 37392,\n  \"lative</w>\": 15719,\n  \"lator</w>\": 9291,\n  \"lators</w>\": 28278,\n  \"latt\": 33561,\n  \"latte</w>\": 17697,\n  \"latter</w>\": 26198,\n  \"latvia</w>\": 30034,\n  \"lau\": 1853,\n  \"lau</w>\": 23090,\n  \"lauderdale</w>\": 24352,\n  \"laugh\": 4969,\n  \"laugh</w>\": 6332,\n  \"laughed</w>\": 16746,\n  \"laughing</w>\": 8301,\n  \"laughs</w>\": 14322,\n  \"laughter</w>\": 10722,\n  \"laun\": 2944,\n  \"launch\": 31168,\n  \"launch</w>\": 2904,\n  \"launched</w>\": 6125,\n  \"launcher</w>\": 35782,\n  \"launches</w>\": 7023,\n  \"launching</w>\": 8565,\n  \"laundering</w>\": 34079,\n  \"laundry</w>\": 14797,\n  \"laur\": 15256,\n  \"laura\": 17091,\n  \"laura</w>\": 7763,\n  \"laure\": 16932,\n  \"laureate</w>\": 25675,\n  \"laurel\": 43370,\n  \"laurel</w>\": 19942,\n  \"lauren\": 10456,\n  \"lauren</w>\": 7634,\n  \"laurence</w>\": 29353,\n  \"laurent</w>\": 23226,\n  \"laurie</w>\": 20326,\n  \"laus\": 38895,\n  \"laus</w>\": 28111,\n  \"lause</w>\": 22269,\n  \"laut\": 47688,\n  \"lav\": 13767,\n  \"lav</w>\": 26919,\n  \"lava</w>\": 16765,\n  \"laven\": 15047,\n  \"lavender</w>\": 16033,\n  \"laver\": 28188,\n  \"lavish</w>\": 35443,\n  \"law\": 2874,\n  \"law</w>\": 2606,\n  \"lawful</w>\": 33845,\n  \"lawler</w>\": 47862,\n  \"lawless</w>\": 39468,\n  \"lawmaker</w>\": 37169,\n  \"lawmakers</w>\": 21190,\n  \"lawn\": 31675,\n  \"lawn</w>\": 11024,\n  \"lawrence\": 32221,\n  \"lawrence</w>\": 8820,\n  \"laws</w>\": 7306,\n  \"lawson</w>\": 22152,\n  \"lawsuit</w>\": 14346,\n  \"lawsuits</w>\": 44331,\n  \"lawyer</w>\": 10552,\n  \"lawyers</w>\": 14232,\n  \"lax\": 17750,\n  \"lax</w>\": 10024,\n  \"lay\": 7205,\n  \"lay</w>\": 6360,\n  \"laye\": 25995,\n  \"layer</w>\": 12411,\n  \"layered</w>\": 28520,\n  \"layers</w>\": 15900,\n  \"laying</w>\": 12333,\n  \"layla</w>\": 45050,\n  \"layne</w>\": 48721,\n  \"layo\": 21738,\n  \"layoffs</w>\": 29019,\n  \"layout</w>\": 17314,\n  \"lays</w>\": 19546,\n  \"layton</w>\": 38061,\n  \"laz\": 18806,\n  \"lazar\": 33075,\n  \"lazarus</w>\": 49126,\n  \"laze</w>\": 41559,\n  \"lazer</w>\": 43735,\n  \"lazio</w>\": 33010,\n  \"lazy\": 32614,\n  \"lazy</w>\": 10753,\n  \"lb\": 21958,\n  \"lb</w>\": 7422,\n  \"lbc</w>\": 37694,\n  \"lbj</w>\": 45683,\n  \"lbloggers</w>\": 48695,\n  \"lbs</w>\": 8912,\n  \"lc\": 9584,\n  \"lc</w>\": 7225,\n  \"lcd</w>\": 21356,\n  \"lcfc</w>\": 25339,\n  \"lcs</w>\": 32279,\n  \"ld\": 1431,\n  \"ld</w>\": 730,\n  \"lder</w>\": 6945,\n  \"lders</w>\": 43221,\n  \"ldn\": 37050,\n  \"ldn</w>\": 2517,\n  \"ldnont</w>\": 25827,\n  \"ldnt</w>\": 21690,\n  \"ldr</w>\": 37279,\n  \"lds</w>\": 31235,\n  \"le\": 534,\n  \"le</w>\": 579,\n  \"lea\": 2246,\n  \"lea</w>\": 13324,\n  \"leach</w>\": 35527,\n  \"lead\": 1328,\n  \"lead</w>\": 2784,\n  \"leader\": 14806,\n  \"leader</w>\": 3236,\n  \"leaderboard</w>\": 34519,\n  \"leaders</w>\": 3546,\n  \"leadership\": 36876,\n  \"leadership</w>\": 3652,\n  \"leading</w>\": 3833,\n  \"leads</w>\": 5335,\n  \"leaf\": 9377,\n  \"leaf</w>\": 7232,\n  \"leaflet</w>\": 38289,\n  \"leaflets</w>\": 39014,\n  \"leafs</w>\": 16688,\n  \"leafy</w>\": 42616,\n  \"leagu\": 13317,\n  \"league\": 16635,\n  \"league</w>\": 2313,\n  \"leagueof\": 26022,\n  \"leagueoflegends</w>\": 31737,\n  \"leagues</w>\": 19888,\n  \"leah\": 24350,\n  \"leah</w>\": 19308,\n  \"leak\": 42900,\n  \"leak</w>\": 15489,\n  \"leaked</w>\": 14353,\n  \"leaking</w>\": 34097,\n  \"leaks</w>\": 15657,\n  \"leam\": 39606,\n  \"lean\": 12447,\n  \"lean</w>\": 8208,\n  \"leaning</w>\": 24411,\n  \"leanne</w>\": 41448,\n  \"leans</w>\": 9357,\n  \"leap\": 29129,\n  \"leap</w>\": 15392,\n  \"leaps</w>\": 48080,\n  \"lear\": 1146,\n  \"lear</w>\": 27663,\n  \"learn\": 16959,\n  \"learn</w>\": 1768,\n  \"learned</w>\": 6048,\n  \"learnenglish</w>\": 49040,\n  \"learner</w>\": 33547,\n  \"learners</w>\": 19572,\n  \"learning\": 22632,\n  \"learning</w>\": 2378,\n  \"learns</w>\": 17569,\n  \"learnt</w>\": 18959,\n  \"leary</w>\": 36051,\n  \"lease\": 49041,\n  \"lease</w>\": 14394,\n  \"leased</w>\": 48352,\n  \"leash</w>\": 36192,\n  \"leasing</w>\": 29160,\n  \"least</w>\": 3651,\n  \"leather\": 21417,\n  \"leather</w>\": 5862,\n  \"leau</w>\": 26498,\n  \"leav\": 3198,\n  \"leave\": 37512,\n  \"leave</w>\": 3258,\n  \"leaves</w>\": 5579,\n  \"leaving</w>\": 5216,\n  \"leban\": 9360,\n  \"lebanese</w>\": 23819,\n  \"lebanon</w>\": 11695,\n  \"leblanc</w>\": 46381,\n  \"lebo\": 44184,\n  \"lebron</w>\": 11971,\n  \"lebu\": 47030,\n  \"lec\": 944,\n  \"lec</w>\": 35374,\n  \"leche</w>\": 46197,\n  \"lect</w>\": 45392,\n  \"lection</w>\": 18252,\n  \"lections</w>\": 30995,\n  \"lecture</w>\": 6617,\n  \"lecturer</w>\": 23795,\n  \"lectures</w>\": 21118,\n  \"led\": 8767,\n  \"led</w>\": 912,\n  \"ledge\": 23647,\n  \"ledge</w>\": 4815,\n  \"ledger</w>\": 26817,\n  \"leds</w>\": 36763,\n  \"lee\": 6224,\n  \"lee</w>\": 2592,\n  \"leed\": 16483,\n  \"leed</w>\": 40206,\n  \"leeds\": 38900,\n  \"leeds</w>\": 7420,\n  \"leek</w>\": 34585,\n  \"leeminho</w>\": 37831,\n  \"leen\": 35311,\n  \"leen</w>\": 15940,\n  \"leep\": 48875,\n  \"leep</w>\": 10191,\n  \"lees\": 29324,\n  \"lees</w>\": 34056,\n  \"lef\": 9152,\n  \"left\": 33949,\n  \"left</w>\": 1823,\n  \"leftist</w>\": 35143,\n  \"lefto\": 17437,\n  \"leftover</w>\": 26414,\n  \"leftovers</w>\": 28481,\n  \"lefty</w>\": 33935,\n  \"leg\": 1211,\n  \"leg</w>\": 4924,\n  \"lega</w>\": 38674,\n  \"legacy\": 44108,\n  \"legacy</w>\": 6447,\n  \"legal\": 17743,\n  \"legal</w>\": 3998,\n  \"legalization</w>\": 40584,\n  \"legalize</w>\": 42921,\n  \"legally</w>\": 14152,\n  \"legate</w>\": 46009,\n  \"lege</w>\": 8065,\n  \"legen\": 6105,\n  \"legend\": 5480,\n  \"legend</w>\": 3539,\n  \"legendary</w>\": 6053,\n  \"legendof\": 47915,\n  \"legends</w>\": 6396,\n  \"leges</w>\": 15356,\n  \"legg\": 18474,\n  \"legg</w>\": 32511,\n  \"legged</w>\": 25830,\n  \"leggings</w>\": 22895,\n  \"leggo</w>\": 43441,\n  \"legi\": 11183,\n  \"legion\": 35503,\n  \"legion</w>\": 14525,\n  \"legis\": 7200,\n  \"legislat\": 16486,\n  \"legislation</w>\": 14143,\n  \"legislative</w>\": 16755,\n  \"legislators</w>\": 31572,\n  \"legislature</w>\": 22309,\n  \"legit</w>\": 12563,\n  \"legitim\": 17656,\n  \"legitimate</w>\": 24491,\n  \"lego\": 28117,\n  \"lego</w>\": 7849,\n  \"legos</w>\": 45359,\n  \"legs</w>\": 7072,\n  \"leh\": 19105,\n  \"leh</w>\": 29298,\n  \"lehead</w>\": 28090,\n  \"lehigh</w>\": 34527,\n  \"lehman</w>\": 46094,\n  \"lei\": 15828,\n  \"lei</w>\": 21830,\n  \"leia</w>\": 32723,\n  \"leic\": 35073,\n  \"leica</w>\": 30206,\n  \"leice\": 10026,\n  \"leicester\": 28795,\n  \"leicester</w>\": 11510,\n  \"leicestershire</w>\": 45358,\n  \"leigh\": 14849,\n  \"leigh</w>\": 9292,\n  \"leighton</w>\": 30782,\n  \"leila</w>\": 41342,\n  \"lein\": 20026,\n  \"lein</w>\": 28551,\n  \"leinster</w>\": 32242,\n  \"leip\": 36401,\n  \"leipzig</w>\": 41860,\n  \"leis\": 13133,\n  \"leisure</w>\": 15849,\n  \"leit\": 35446,\n  \"leith</w>\": 34141,\n  \"lek\": 26626,\n  \"lek</w>\": 36535,\n  \"lel</w>\": 46623,\n  \"lele</w>\": 26075,\n  \"lem\": 10213,\n  \"lem</w>\": 8428,\n  \"leman</w>\": 24478,\n  \"lemans</w>\": 26694,\n  \"lement</w>\": 9693,\n  \"lements</w>\": 15833,\n  \"lemme</w>\": 23318,\n  \"lemon\": 12272,\n  \"lemon</w>\": 7184,\n  \"lemonade</w>\": 18884,\n  \"lemons</w>\": 29576,\n  \"lemore</w>\": 41147,\n  \"len\": 3687,\n  \"len</w>\": 2159,\n  \"lena</w>\": 22038,\n  \"lend\": 45397,\n  \"lend</w>\": 24987,\n  \"lender</w>\": 44734,\n  \"lenders</w>\": 42443,\n  \"lending</w>\": 20209,\n  \"lene</w>\": 17628,\n  \"leness</w>\": 36551,\n  \"leng\": 7861,\n  \"length</w>\": 10130,\n  \"lengths</w>\": 31858,\n  \"lengthy</w>\": 32624,\n  \"lenin</w>\": 41760,\n  \"lennon</w>\": 18360,\n  \"lennox</w>\": 45748,\n  \"lenny\": 48448,\n  \"lenny</w>\": 30124,\n  \"leno</w>\": 45357,\n  \"lenovo</w>\": 25886,\n  \"lens</w>\": 8666,\n  \"lenses</w>\": 21264,\n  \"lent\": 20943,\n  \"lent</w>\": 22605,\n  \"lentil</w>\": 41511,\n  \"lentils</w>\": 44269,\n  \"leo\": 24008,\n  \"leo</w>\": 8312,\n  \"leon\": 6581,\n  \"leon</w>\": 9763,\n  \"leonard\": 43849,\n  \"leonard</w>\": 13142,\n  \"leonardo</w>\": 20282,\n  \"leone</w>\": 22864,\n  \"leop\": 11234,\n  \"leopard</w>\": 15931,\n  \"leopards</w>\": 40996,\n  \"leopold</w>\": 45501,\n  \"lep\": 48884,\n  \"leppard</w>\": 41656,\n  \"lepre\": 45641,\n  \"ler\": 5587,\n  \"ler</w>\": 1803,\n  \"lero\": 15067,\n  \"lerosis</w>\": 35455,\n  \"leroy</w>\": 32441,\n  \"lers</w>\": 6247,\n  \"lery</w>\": 38184,\n  \"les\": 4339,\n  \"les</w>\": 840,\n  \"lesbian</w>\": 17419,\n  \"lesbians</w>\": 43182,\n  \"lesh</w>\": 32282,\n  \"lesley</w>\": 25506,\n  \"lesli\": 13649,\n  \"leslie</w>\": 16244,\n  \"lesn\": 39568,\n  \"lesnar</w>\": 42223,\n  \"less\": 3242,\n  \"less</w>\": 1285,\n  \"lesser</w>\": 20369,\n  \"lessly</w>\": 13103,\n  \"lessness</w>\": 24847,\n  \"lesson</w>\": 7714,\n  \"lessons</w>\": 7199,\n  \"lest\": 24372,\n  \"lest</w>\": 6794,\n  \"lester\": 23157,\n  \"lester</w>\": 24023,\n  \"lestwe\": 29726,\n  \"lestweforget</w>\": 30273,\n  \"let\": 1898,\n  \"let</w>\": 1094,\n  \"leta</w>\": 34319,\n  \"lete</w>\": 34078,\n  \"letes</w>\": 6815,\n  \"leth\": 30022,\n  \"leth</w>\": 42462,\n  \"lethal</w>\": 21905,\n  \"lethbridge</w>\": 48390,\n  \"leti</w>\": 34176,\n  \"letics</w>\": 14504,\n  \"letit\": 46423,\n  \"leto</w>\": 32203,\n  \"leton\": 37674,\n  \"leton</w>\": 7462,\n  \"lets\": 10448,\n  \"lets</w>\": 3243,\n  \"letsgo\": 16967,\n  \"letsgo</w>\": 29789,\n  \"letstalk</w>\": 35591,\n  \"lett\": 22428,\n  \"lett</w>\": 9778,\n  \"lette\": 41798,\n  \"lette</w>\": 10301,\n  \"letter\": 15567,\n  \"letter</w>\": 4861,\n  \"lettering</w>\": 26382,\n  \"letterman</w>\": 38447,\n  \"letters</w>\": 9181,\n  \"letting</w>\": 9510,\n  \"letto</w>\": 35449,\n  \"lettu\": 17933,\n  \"lettuce</w>\": 18573,\n  \"leu\": 15691,\n  \"leuke\": 31031,\n  \"leukemia</w>\": 32097,\n  \"leum</w>\": 21571,\n  \"leur</w>\": 45806,\n  \"lev\": 17022,\n  \"lev</w>\": 29950,\n  \"levan\": 42543,\n  \"leve\": 36271,\n  \"level\": 21682,\n  \"level</w>\": 2931,\n  \"leveled</w>\": 48453,\n  \"levels</w>\": 6295,\n  \"leven\": 44792,\n  \"leven</w>\": 34729,\n  \"lever\": 20178,\n  \"lever</w>\": 23094,\n  \"leverage</w>\": 24030,\n  \"leveraging</w>\": 37948,\n  \"levi\": 25630,\n  \"levi</w>\": 19113,\n  \"leviathan</w>\": 41736,\n  \"levin</w>\": 36949,\n  \"levine</w>\": 26594,\n  \"levit\": 22715,\n  \"levy</w>\": 17147,\n  \"lew\": 5063,\n  \"lew</w>\": 25329,\n  \"lewan\": 48349,\n  \"lewd</w>\": 45241,\n  \"lewes</w>\": 40431,\n  \"lewi\": 19589,\n  \"lewis\": 22043,\n  \"lewis</w>\": 6020,\n  \"lewisham\": 37385,\n  \"lewisham</w>\": 47633,\n  \"lewishamilton</w>\": 42960,\n  \"lewood</w>\": 37951,\n  \"lex\": 6586,\n  \"lex</w>\": 9658,\n  \"lexa</w>\": 48259,\n  \"lexi\": 44231,\n  \"lexi</w>\": 24679,\n  \"lexington</w>\": 22308,\n  \"lexus</w>\": 20694,\n  \"ley\": 2565,\n  \"ley</w>\": 1066,\n  \"leye</w>\": 37061,\n  \"leys\": 45609,\n  \"leys</w>\": 14834,\n  \"leyton</w>\": 46573,\n  \"lez</w>\": 26442,\n  \"lf\": 33960,\n  \"lf</w>\": 22078,\n  \"lfc\": 37826,\n  \"lfc</w>\": 8267,\n  \"lfw</w>\": 28514,\n  \"lg\": 4546,\n  \"lg</w>\": 11368,\n  \"lga</w>\": 39348,\n  \"lgb\": 25401,\n  \"lgbt\": 11743,\n  \"lgbt</w>\": 9592,\n  \"lgbti</w>\": 42730,\n  \"lgbtq\": 47625,\n  \"lgbtq</w>\": 14939,\n  \"lgm</w>\": 39389,\n  \"lh\": 27794,\n  \"lh</w>\": 31159,\n  \"lhp</w>\": 45092,\n  \"lhs</w>\": 33170,\n  \"li\": 554,\n  \"li</w>\": 4250,\n  \"lia\": 26118,\n  \"lia</w>\": 6964,\n  \"liability</w>\": 29139,\n  \"liaison</w>\": 39294,\n  \"liam\": 5258,\n  \"liam</w>\": 7167,\n  \"lian</w>\": 18058,\n  \"liance</w>\": 40864,\n  \"liar</w>\": 16334,\n  \"liars</w>\": 23863,\n  \"lias</w>\": 46021,\n  \"lib\": 10249,\n  \"lib</w>\": 13345,\n  \"libby</w>\": 36832,\n  \"libdems</w>\": 40869,\n  \"liber\": 3425,\n  \"liberal\": 48032,\n  \"liberal</w>\": 9985,\n  \"liberalism</w>\": 40018,\n  \"liberals</w>\": 15981,\n  \"liberated</w>\": 38690,\n  \"liberation</w>\": 19507,\n  \"liberia</w>\": 32208,\n  \"libertarian</w>\": 35067,\n  \"liberties</w>\": 48623,\n  \"liberty\": 23397,\n  \"liberty</w>\": 8480,\n  \"libr\": 2856,\n  \"libra</w>\": 43038,\n  \"librarian</w>\": 25148,\n  \"librarians</w>\": 37806,\n  \"libraries</w>\": 14277,\n  \"library\": 25713,\n  \"library</w>\": 3519,\n  \"libre\": 49210,\n  \"libre</w>\": 31681,\n  \"libs</w>\": 26401,\n  \"liby\": 36390,\n  \"libya</w>\": 16417,\n  \"libyan</w>\": 42319,\n  \"lic\": 2508,\n  \"lic</w>\": 3376,\n  \"lice</w>\": 45691,\n  \"licen\": 6706,\n  \"licence</w>\": 20550,\n  \"license</w>\": 10337,\n  \"licensed</w>\": 18752,\n  \"licenses</w>\": 36414,\n  \"licensing</w>\": 24219,\n  \"lich\": 23979,\n  \"lich</w>\": 25875,\n  \"lick\": 29197,\n  \"lick</w>\": 17541,\n  \"licking</w>\": 33013,\n  \"licks</w>\": 42117,\n  \"lics</w>\": 44552,\n  \"lid\": 39369,\n  \"lid</w>\": 17678,\n  \"lidge</w>\": 45558,\n  \"lido</w>\": 35683,\n  \"lids</w>\": 41609,\n  \"lie\": 6570,\n  \"lie</w>\": 2538,\n  \"lieb</w>\": 45387,\n  \"liebe</w>\": 37749,\n  \"lied</w>\": 6486,\n  \"lief</w>\": 38428,\n  \"lien</w>\": 45716,\n  \"lier</w>\": 3626,\n  \"liers</w>\": 19303,\n  \"lies\": 37236,\n  \"lies</w>\": 3205,\n  \"liest</w>\": 14020,\n  \"liet</w>\": 41107,\n  \"lieu\": 20401,\n  \"lieu</w>\": 35313,\n  \"lieutenant</w>\": 22538,\n  \"lif\": 16456,\n  \"life\": 2666,\n  \"life</w>\": 970,\n  \"lifeat\": 27801,\n  \"lifeboat</w>\": 37404,\n  \"lifecycle</w>\": 49171,\n  \"lifein\": 48447,\n  \"lifeis\": 24824,\n  \"lifeisgood</w>\": 46433,\n  \"lifel\": 15025,\n  \"lifeline</w>\": 38438,\n  \"lifelong</w>\": 21358,\n  \"lifeof\": 36061,\n  \"lifesaving</w>\": 48016,\n  \"lifespan</w>\": 49257,\n  \"lifestyle\": 46512,\n  \"lifestyle</w>\": 7037,\n  \"lifestyles</w>\": 48521,\n  \"lifetime\": 48737,\n  \"lifetime</w>\": 9107,\n  \"liff</w>\": 34404,\n  \"liffe</w>\": 38942,\n  \"lift\": 33146,\n  \"lift</w>\": 6779,\n  \"lifted</w>\": 16783,\n  \"lifter</w>\": 38555,\n  \"lifting</w>\": 10857,\n  \"lifts</w>\": 18291,\n  \"lig\": 19915,\n  \"lig</w>\": 38493,\n  \"liga</w>\": 16802,\n  \"ligam\": 31077,\n  \"ligament</w>\": 48705,\n  \"ligan</w>\": 27962,\n  \"ligans</w>\": 42133,\n  \"ligh\": 7510,\n  \"light\": 3885,\n  \"light</w>\": 1395,\n  \"lighted</w>\": 18404,\n  \"lighten</w>\": 32717,\n  \"lightening</w>\": 28170,\n  \"lighter</w>\": 14102,\n  \"lighthouse</w>\": 13717,\n  \"lighting</w>\": 5799,\n  \"lightly</w>\": 26878,\n  \"lightning</w>\": 7756,\n  \"lightroom</w>\": 41454,\n  \"lights</w>\": 3073,\n  \"lightweight</w>\": 16278,\n  \"ligu\": 42920,\n  \"ligue</w>\": 29196,\n  \"lik\": 4831,\n  \"lik</w>\": 18495,\n  \"like\": 9175,\n  \"like</w>\": 789,\n  \"liked</w>\": 7112,\n  \"likefor\": 48444,\n  \"likeli\": 40666,\n  \"likelihood</w>\": 48158,\n  \"likely</w>\": 5256,\n  \"liken\": 36084,\n  \"likes</w>\": 4724,\n  \"liking</w>\": 16810,\n  \"lil\": 6012,\n  \"lil</w>\": 4461,\n  \"lilac</w>\": 33647,\n  \"lili\": 26686,\n  \"lili</w>\": 48411,\n  \"lilies</w>\": 38110,\n  \"lillard</w>\": 47016,\n  \"lille</w>\": 38705,\n  \"lilli\": 40920,\n  \"lillian</w>\": 41563,\n  \"lilly\": 47825,\n  \"lilly</w>\": 21815,\n  \"lily\": 23803,\n  \"lily</w>\": 10647,\n  \"lim\": 2377,\n  \"lim</w>\": 17204,\n  \"lima</w>\": 17589,\n  \"limb\": 27061,\n  \"limb</w>\": 32363,\n  \"limbo</w>\": 46179,\n  \"limbs</w>\": 34886,\n  \"lime\": 17385,\n  \"lime</w>\": 11193,\n  \"limel\": 48658,\n  \"limer\": 16915,\n  \"limerick</w>\": 19501,\n  \"limestone</w>\": 27272,\n  \"limit\": 18933,\n  \"limit</w>\": 9973,\n  \"limitations</w>\": 32730,\n  \"limited\": 49229,\n  \"limited</w>\": 3472,\n  \"limiting</w>\": 35812,\n  \"limitless</w>\": 35833,\n  \"limits</w>\": 11966,\n  \"limo</w>\": 33166,\n  \"limous\": 47287,\n  \"limpopo</w>\": 47175,\n  \"lin\": 1254,\n  \"lin</w>\": 2424,\n  \"lina</w>\": 26110,\n  \"lincol\": 6239,\n  \"lincoln\": 16957,\n  \"lincoln</w>\": 7454,\n  \"lincolnshire</w>\": 29014,\n  \"lind\": 6492,\n  \"linda\": 45410,\n  \"linda</w>\": 10760,\n  \"linden\": 44076,\n  \"linden</w>\": 34832,\n  \"lindo</w>\": 38467,\n  \"lindsay\": 29846,\n  \"lindsay</w>\": 16858,\n  \"lindsey\": 29475,\n  \"lindsey</w>\": 18128,\n  \"line\": 3674,\n  \"line</w>\": 1148,\n  \"linear</w>\": 19816,\n  \"linebacker</w>\": 29848,\n  \"lined</w>\": 11842,\n  \"lineman</w>\": 31501,\n  \"linen</w>\": 20032,\n  \"liner</w>\": 11618,\n  \"liners</w>\": 24463,\n  \"lines</w>\": 3418,\n  \"liness</w>\": 28633,\n  \"lineup</w>\": 7316,\n  \"lineups</w>\": 33589,\n  \"ling\": 4851,\n  \"ling</w>\": 1358,\n  \"linger</w>\": 29593,\n  \"lingerie</w>\": 18473,\n  \"lingering</w>\": 46494,\n  \"lings</w>\": 11390,\n  \"lington\": 27673,\n  \"lington</w>\": 9002,\n  \"lingu\": 34449,\n  \"lingui\": 29942,\n  \"linguistic</w>\": 46847,\n  \"linguistics</w>\": 48651,\n  \"lining</w>\": 11589,\n  \"link\": 18433,\n  \"link</w>\": 2468,\n  \"linke\": 15088,\n  \"linked</w>\": 11059,\n  \"linkedin</w>\": 16302,\n  \"linkin\": 40287,\n  \"linkin</w>\": 49291,\n  \"linking</w>\": 23296,\n  \"links</w>\": 8113,\n  \"linn</w>\": 37431,\n  \"lino\": 41189,\n  \"lino</w>\": 34995,\n  \"lins</w>\": 6567,\n  \"linson</w>\": 15401,\n  \"linton</w>\": 36479,\n  \"linus</w>\": 49303,\n  \"linux</w>\": 14061,\n  \"lio</w>\": 19395,\n  \"lion\": 8872,\n  \"lion</w>\": 5567,\n  \"lionel</w>\": 19441,\n  \"lions</w>\": 7093,\n  \"lip\": 8630,\n  \"lip</w>\": 8546,\n  \"lipo\": 38795,\n  \"lipp\": 38074,\n  \"lips</w>\": 8847,\n  \"lipse</w>\": 10351,\n  \"lipstick</w>\": 15618,\n  \"liqu\": 6310,\n  \"lique\": 32680,\n  \"liqueur</w>\": 43612,\n  \"liqui\": 33817,\n  \"liquid\": 18366,\n  \"liquid</w>\": 10158,\n  \"liquidity</w>\": 42812,\n  \"liquor</w>\": 17828,\n  \"lis\": 7297,\n  \"lis</w>\": 12749,\n  \"lisa\": 25236,\n  \"lisa</w>\": 7424,\n  \"lisam\": 43072,\n  \"lisboa</w>\": 40052,\n  \"lisbon</w>\": 17708,\n  \"lish\": 12658,\n  \"lish</w>\": 2354,\n  \"lished</w>\": 22620,\n  \"lisle</w>\": 21529,\n  \"lism</w>\": 34390,\n  \"liss\": 45489,\n  \"liss</w>\": 35433,\n  \"lisse</w>\": 49309,\n  \"list\": 1734,\n  \"list</w>\": 1998,\n  \"lista</w>\": 37812,\n  \"listed</w>\": 6457,\n  \"listen\": 17454,\n  \"listen</w>\": 2672,\n  \"listened</w>\": 15347,\n  \"listener</w>\": 34819,\n  \"listeners</w>\": 26901,\n  \"listening</w>\": 3656,\n  \"listens</w>\": 25912,\n  \"lister</w>\": 45109,\n  \"listing</w>\": 8145,\n  \"listings</w>\": 21987,\n  \"liston</w>\": 48041,\n  \"lists</w>\": 12281,\n  \"lit\": 2213,\n  \"lit</w>\": 4350,\n  \"lita</w>\": 30100,\n  \"lite\": 29273,\n  \"lite</w>\": 13694,\n  \"litecoin</w>\": 39063,\n  \"liter\": 3085,\n  \"liter</w>\": 34904,\n  \"literacy</w>\": 12841,\n  \"literal</w>\": 24269,\n  \"literally</w>\": 4719,\n  \"literary</w>\": 13586,\n  \"literature</w>\": 11072,\n  \"litfest</w>\": 40369,\n  \"lith\": 37005,\n  \"lithium</w>\": 22794,\n  \"litho\": 31088,\n  \"lithograph</w>\": 49022,\n  \"lithu\": 21045,\n  \"lithuania</w>\": 27068,\n  \"liti\": 24292,\n  \"litigation</w>\": 31769,\n  \"lito</w>\": 47381,\n  \"litre</w>\": 25786,\n  \"litres</w>\": 39919,\n  \"litt\": 1216,\n  \"litt</w>\": 47583,\n  \"litter\": 45431,\n  \"litter</w>\": 17118,\n  \"litters</w>\": 45300,\n  \"little\": 7024,\n  \"little</w>\": 1274,\n  \"littlemix</w>\": 29731,\n  \"littlest</w>\": 48969,\n  \"litur\": 36830,\n  \"litz</w>\": 30357,\n  \"liu</w>\": 20466,\n  \"liv\": 13895,\n  \"liv</w>\": 19901,\n  \"livan</w>\": 12785,\n  \"live\": 3215,\n  \"live</w>\": 1064,\n  \"lived</w>\": 8867,\n  \"livel\": 17973,\n  \"liveli\": 26566,\n  \"livelihood</w>\": 46497,\n  \"livelihoods</w>\": 47716,\n  \"lively</w>\": 19663,\n  \"liveme</w>\": 35396,\n  \"livemusic</w>\": 15688,\n  \"liven\": 41057,\n  \"liveon\": 22815,\n  \"livepd\": 38742,\n  \"livepd</w>\": 31899,\n  \"liver\": 4755,\n  \"liver</w>\": 12639,\n  \"liverpool\": 29778,\n  \"liverpool</w>\": 5366,\n  \"livery</w>\": 23248,\n  \"lives</w>\": 3247,\n  \"livesmatter</w>\": 20348,\n  \"livestock</w>\": 22079,\n  \"livestream</w>\": 16844,\n  \"livetweet</w>\": 38546,\n  \"livin</w>\": 28061,\n  \"living\": 10965,\n  \"living</w>\": 2815,\n  \"livingston</w>\": 30551,\n  \"lix</w>\": 45068,\n  \"liz\": 8632,\n  \"liz</w>\": 12242,\n  \"liza</w>\": 28787,\n  \"lizard</w>\": 17221,\n  \"lizards</w>\": 41991,\n  \"lizasober\": 44487,\n  \"lizasoberano</w>\": 45076,\n  \"lizz\": 34430,\n  \"lizzie</w>\": 29530,\n  \"lizzy</w>\": 32306,\n  \"lj\": 34211,\n  \"lj</w>\": 32273,\n  \"lju\": 44562,\n  \"lk\": 39110,\n  \"lk</w>\": 26596,\n  \"lka</w>\": 21881,\n  \"ll\": 1657,\n  \"ll</w>\": 865,\n  \"lla</w>\": 15419,\n  \"llama</w>\": 36679,\n  \"llan\": 17281,\n  \"llan</w>\": 38728,\n  \"lland\": 31150,\n  \"llc</w>\": 17161,\n  \"lle\": 26550,\n  \"lle</w>\": 29732,\n  \"llen\": 41197,\n  \"ller</w>\": 7722,\n  \"llers</w>\": 26426,\n  \"lli\": 47015,\n  \"lli</w>\": 13368,\n  \"llis</w>\": 25518,\n  \"lll</w>\": 27177,\n  \"llll\": 34874,\n  \"llll</w>\": 43485,\n  \"llo</w>\": 19293,\n  \"lloy\": 10092,\n  \"lloyd\": 33339,\n  \"lloyd</w>\": 12400,\n  \"llp</w>\": 28042,\n  \"lls</w>\": 40535,\n  \"lly</w>\": 26379,\n  \"lm\": 6981,\n  \"lm</w>\": 15282,\n  \"lma\": 4493,\n  \"lmao</w>\": 5121,\n  \"lmaoo</w>\": 32623,\n  \"lmaooo</w>\": 33362,\n  \"lmaoooo</w>\": 45232,\n  \"lmfa\": 8928,\n  \"lmfao</w>\": 11068,\n  \"lmfaooo</w>\": 47658,\n  \"lmp</w>\": 43575,\n  \"lms</w>\": 30381,\n  \"ln\": 31644,\n  \"ln</w>\": 18654,\n  \"lng</w>\": 22339,\n  \"lnp</w>\": 39679,\n  \"lo\": 549,\n  \"lo</w>\": 2982,\n  \"loa</w>\": 39678,\n  \"load\": 4515,\n  \"load</w>\": 2834,\n  \"loaded</w>\": 6756,\n  \"loader</w>\": 28492,\n  \"loading</w>\": 9975,\n  \"loads</w>\": 8691,\n  \"loaf\": 26467,\n  \"loaf</w>\": 18273,\n  \"loan\": 28431,\n  \"loan</w>\": 8176,\n  \"loans</w>\": 14206,\n  \"lob\": 11197,\n  \"lob</w>\": 46606,\n  \"lobal</w>\": 34574,\n  \"lobb\": 27698,\n  \"lobby</w>\": 12449,\n  \"lobbying</w>\": 36047,\n  \"lobe</w>\": 46325,\n  \"lobes</w>\": 24148,\n  \"lobo</w>\": 39323,\n  \"lobos</w>\": 36586,\n  \"lobster</w>\": 13793,\n  \"loc\": 1378,\n  \"loc</w>\": 25826,\n  \"local\": 9202,\n  \"local</w>\": 2029,\n  \"localized</w>\": 49399,\n  \"locally</w>\": 15603,\n  \"locals</w>\": 15041,\n  \"locate</w>\": 20490,\n  \"located</w>\": 5677,\n  \"location</w>\": 4372,\n  \"locations</w>\": 9580,\n  \"loch\": 20188,\n  \"loch</w>\": 14101,\n  \"lock\": 7201,\n  \"lock</w>\": 4381,\n  \"lockdown</w>\": 35636,\n  \"locke</w>\": 29698,\n  \"locked</w>\": 8371,\n  \"locker</w>\": 14053,\n  \"lockhart</w>\": 48642,\n  \"lockheed</w>\": 36637,\n  \"locking</w>\": 19978,\n  \"locks</w>\": 13212,\n  \"lockscreen</w>\": 42439,\n  \"loco</w>\": 25555,\n  \"locom\": 22798,\n  \"locomo\": 46147,\n  \"locomotive</w>\": 30439,\n  \"locu\": 33635,\n  \"locust</w>\": 46237,\n  \"lod\": 45650,\n  \"lodge</w>\": 10504,\n  \"loe\": 30113,\n  \"loe</w>\": 25484,\n  \"loeb</w>\": 49334,\n  \"lof\": 15011,\n  \"loff</w>\": 31008,\n  \"loft\": 35707,\n  \"loft</w>\": 20049,\n  \"loftus</w>\": 46689,\n  \"log\": 3239,\n  \"log</w>\": 7383,\n  \"logan\": 20655,\n  \"logan</w>\": 10569,\n  \"logans</w>\": 40752,\n  \"logg</w>\": 43002,\n  \"logged</w>\": 31457,\n  \"logger</w>\": 39089,\n  \"logging</w>\": 24444,\n  \"logi\": 3177,\n  \"logia</w>\": 48031,\n  \"logic</w>\": 10670,\n  \"logical</w>\": 4791,\n  \"logically</w>\": 24782,\n  \"logie</w>\": 33445,\n  \"logies</w>\": 7378,\n  \"login</w>\": 31121,\n  \"logist</w>\": 7407,\n  \"logistics</w>\": 14755,\n  \"logists</w>\": 12233,\n  \"logne</w>\": 19911,\n  \"logo\": 31480,\n  \"logo</w>\": 5750,\n  \"logos</w>\": 24879,\n  \"logs</w>\": 22745,\n  \"logue</w>\": 27785,\n  \"logy\": 22721,\n  \"logy</w>\": 1659,\n  \"loh\": 49129,\n  \"loh</w>\": 37983,\n  \"loi</w>\": 35128,\n  \"loid</w>\": 31408,\n  \"loin</w>\": 21760,\n  \"loire</w>\": 46040,\n  \"lois</w>\": 27040,\n  \"lok\": 19908,\n  \"lok</w>\": 23575,\n  \"loki</w>\": 24435,\n  \"lol\": 10721,\n  \"lol</w>\": 1824,\n  \"lola</w>\": 19065,\n  \"lolita</w>\": 42615,\n  \"lolla\": 45483,\n  \"lolli\": 27906,\n  \"lollipop</w>\": 34605,\n  \"lolly</w>\": 48264,\n  \"lolo\": 16895,\n  \"lolo</w>\": 37481,\n  \"lolol</w>\": 25280,\n  \"lololol</w>\": 34738,\n  \"lolz</w>\": 35260,\n  \"lom\": 9279,\n  \"loma</w>\": 42889,\n  \"lombar\": 25493,\n  \"lombard</w>\": 46461,\n  \"lombardi</w>\": 44346,\n  \"lomond</w>\": 48941,\n  \"lon\": 1235,\n  \"lon</w>\": 6507,\n  \"london\": 6835,\n  \"london</w>\": 1789,\n  \"londonmarathon</w>\": 35018,\n  \"lone\": 22220,\n  \"lone</w>\": 13576,\n  \"lonel\": 28872,\n  \"loneliness</w>\": 30310,\n  \"lonely\": 34509,\n  \"lonely</w>\": 12368,\n  \"lonelyplanet</w>\": 44984,\n  \"long\": 4792,\n  \"long</w>\": 1538,\n  \"longe\": 25793,\n  \"longer</w>\": 5349,\n  \"longest</w>\": 10731,\n  \"longevity</w>\": 35354,\n  \"longh\": 20286,\n  \"longhorn</w>\": 41047,\n  \"longhorns</w>\": 38295,\n  \"longing</w>\": 38482,\n  \"longlive\": 47840,\n  \"longs</w>\": 43618,\n  \"longtime</w>\": 19685,\n  \"loo\": 731,\n  \"loo</w>\": 11804,\n  \"look\": 8874,\n  \"look</w>\": 1012,\n  \"lookalike</w>\": 38307,\n  \"lookbook</w>\": 39184,\n  \"looked</w>\": 4913,\n  \"lookin</w>\": 11254,\n  \"looking\": 36898,\n  \"looking</w>\": 1312,\n  \"lookout</w>\": 18330,\n  \"looks</w>\": 1606,\n  \"lool</w>\": 33125,\n  \"loom\": 37440,\n  \"loom</w>\": 17199,\n  \"looming</w>\": 35384,\n  \"looms</w>\": 30550,\n  \"loon</w>\": 28222,\n  \"loona</w>\": 48137,\n  \"looney</w>\": 45315,\n  \"looo\": 20902,\n  \"loool</w>\": 36016,\n  \"looool</w>\": 47038,\n  \"looooo\": 31484,\n  \"loop\": 19606,\n  \"loop</w>\": 10408,\n  \"loops</w>\": 21625,\n  \"loos</w>\": 45723,\n  \"loose\": 43815,\n  \"loose</w>\": 9786,\n  \"loot</w>\": 21518,\n  \"lop\": 36734,\n  \"lop</w>\": 17066,\n  \"lopes</w>\": 49269,\n  \"lopez</w>\": 12982,\n  \"lor\": 2179,\n  \"lor</w>\": 11335,\n  \"lord\": 18896,\n  \"lord</w>\": 3486,\n  \"lorde</w>\": 35483,\n  \"lords</w>\": 14969,\n  \"lore\": 12880,\n  \"lore</w>\": 27218,\n  \"loren\": 13602,\n  \"loren</w>\": 33398,\n  \"lorenzo</w>\": 21342,\n  \"lores</w>\": 34510,\n  \"loretta</w>\": 40863,\n  \"lori\": 20164,\n  \"lori</w>\": 23095,\n  \"lorna</w>\": 46316,\n  \"lorraine</w>\": 27602,\n  \"lorry</w>\": 31354,\n  \"los\": 32217,\n  \"los</w>\": 3087,\n  \"losange\": 14037,\n  \"losangeles</w>\": 14638,\n  \"lose\": 43318,\n  \"lose</w>\": 5354,\n  \"loser</w>\": 18168,\n  \"losers</w>\": 23201,\n  \"loses</w>\": 14263,\n  \"losing</w>\": 7918,\n  \"loss\": 34761,\n  \"loss</w>\": 4327,\n  \"losses</w>\": 16909,\n  \"lost\": 14258,\n  \"lost</w>\": 2624,\n  \"lostdog</w>\": 48482,\n  \"lot\": 5132,\n  \"lot</w>\": 1954,\n  \"loth</w>\": 43625,\n  \"lothian</w>\": 31360,\n  \"lothing</w>\": 42058,\n  \"lotion</w>\": 25260,\n  \"lotr</w>\": 34165,\n  \"lots</w>\": 2958,\n  \"lott</w>\": 42854,\n  \"lotta</w>\": 29125,\n  \"lotte\": 16535,\n  \"lotte</w>\": 7274,\n  \"lottery</w>\": 16975,\n  \"lottie</w>\": 48517,\n  \"lotto</w>\": 28265,\n  \"lotus</w>\": 13824,\n  \"lou\": 2207,\n  \"lou</w>\": 9745,\n  \"loubout\": 38369,\n  \"loud\": 22884,\n  \"loud</w>\": 7464,\n  \"louder</w>\": 25904,\n  \"loudest</w>\": 49214,\n  \"loudly</w>\": 39256,\n  \"lough\": 21927,\n  \"lough</w>\": 28045,\n  \"loughborough</w>\": 49153,\n  \"loui\": 42173,\n  \"louie</w>\": 25790,\n  \"louis\": 8916,\n  \"louis</w>\": 4459,\n  \"louisa</w>\": 40011,\n  \"louise\": 32275,\n  \"louise</w>\": 13076,\n  \"louisi\": 12187,\n  \"louisiana</w>\": 12946,\n  \"louisville</w>\": 13860,\n  \"louisvuitton</w>\": 44911,\n  \"loun\": 6466,\n  \"lounge</w>\": 7141,\n  \"lounging</w>\": 45430,\n  \"lour\": 29383,\n  \"lourdes</w>\": 45071,\n  \"louvre</w>\": 36995,\n  \"lov\": 8923,\n  \"lov</w>\": 21229,\n  \"lova</w>\": 37394,\n  \"lovable</w>\": 38565,\n  \"lovato</w>\": 18960,\n  \"love\": 2618,\n  \"love</w>\": 793,\n  \"lovecraft</w>\": 42405,\n  \"loved</w>\": 3249,\n  \"lovefl</w>\": 38884,\n  \"loveher</w>\": 38306,\n  \"lovehim</w>\": 45733,\n  \"loveis\": 30931,\n  \"loveisland</w>\": 30970,\n  \"loveislove</w>\": 43603,\n  \"loveit</w>\": 24764,\n  \"lovel\": 8999,\n  \"lovelies</w>\": 31412,\n  \"lovelondon</w>\": 46493,\n  \"lovely\": 33250,\n  \"lovely</w>\": 2165,\n  \"lovemy\": 20041,\n  \"lovemyjob</w>\": 40130,\n  \"loven\": 33754,\n  \"lover\": 28508,\n  \"lover</w>\": 7168,\n  \"lovers\": 48416,\n  \"lovers</w>\": 5973,\n  \"loves\": 37773,\n  \"loves</w>\": 3925,\n  \"lovethe\": 33040,\n  \"lovethem</w>\": 48298,\n  \"lovett</w>\": 47095,\n  \"lovewins</w>\": 47687,\n  \"loveyou\": 39226,\n  \"loveyou</w>\": 25964,\n  \"loveyour\": 26462,\n  \"lovin\": 33442,\n  \"lovin</w>\": 16354,\n  \"loving\": 29568,\n  \"loving</w>\": 3721,\n  \"lovingly</w>\": 44100,\n  \"low\": 1049,\n  \"low</w>\": 1042,\n  \"loway</w>\": 16104,\n  \"lowe</w>\": 17910,\n  \"lowed</w>\": 22733,\n  \"lowell</w>\": 24458,\n  \"lower\": 32578,\n  \"lower</w>\": 4909,\n  \"lowered</w>\": 34968,\n  \"lowering</w>\": 35261,\n  \"lowers</w>\": 36398,\n  \"lowes</w>\": 38515,\n  \"lowest</w>\": 12098,\n  \"lowing</w>\": 8283,\n  \"lowkey</w>\": 29481,\n  \"lowry</w>\": 27444,\n  \"lows</w>\": 4406,\n  \"lox</w>\": 41725,\n  \"loy\": 4519,\n  \"loy</w>\": 23929,\n  \"loyal</w>\": 13032,\n  \"loyalty</w>\": 14686,\n  \"loyd</w>\": 44212,\n  \"loyed</w>\": 29279,\n  \"loyment</w>\": 18307,\n  \"loyola</w>\": 32569,\n  \"lp\": 22282,\n  \"lp</w>\": 6392,\n  \"lpc</w>\": 44092,\n  \"lpg</w>\": 47905,\n  \"lpga</w>\": 34295,\n  \"lps</w>\": 32094,\n  \"lr\": 20572,\n  \"lr</w>\": 7041,\n  \"lrt</w>\": 32996,\n  \"ls\": 19051,\n  \"ls</w>\": 1268,\n  \"lsd</w>\": 43766,\n  \"lse\": 46127,\n  \"lse</w>\": 43886,\n  \"lsu\": 35428,\n  \"lsu</w>\": 15672,\n  \"lt\": 13642,\n  \"lt</w>\": 3333,\n  \"ltc</w>\": 27664,\n  \"ltd</w>\": 6802,\n  \"lte</w>\": 25202,\n  \"lton</w>\": 14237,\n  \"lu\": 664,\n  \"lu</w>\": 9657,\n  \"lub\": 22469,\n  \"lub</w>\": 11836,\n  \"lubbock</w>\": 37660,\n  \"lubric\": 40963,\n  \"luc\": 7013,\n  \"luc</w>\": 28014,\n  \"luca</w>\": 21053,\n  \"lucas\": 23425,\n  \"lucas</w>\": 10225,\n  \"lucci</w>\": 45849,\n  \"luce</w>\": 46217,\n  \"lucent</w>\": 41552,\n  \"lucer\": 36042,\n  \"luch\": 36646,\n  \"lucha</w>\": 38449,\n  \"luci\": 8787,\n  \"lucia</w>\": 22290,\n  \"luciano</w>\": 46365,\n  \"lucid</w>\": 44540,\n  \"lucie</w>\": 39461,\n  \"lucifer\": 46224,\n  \"lucifer</w>\": 27687,\n  \"lucille</w>\": 47454,\n  \"lucin\": 27523,\n  \"luck\": 9647,\n  \"luck</w>\": 2820,\n  \"luckiest</w>\": 42469,\n  \"luckily</w>\": 20100,\n  \"lucknow</w>\": 29407,\n  \"lucky\": 20495,\n  \"lucky</w>\": 4133,\n  \"lucrative</w>\": 41485,\n  \"lucy\": 17262,\n  \"lucy</w>\": 10120,\n  \"lud\": 14288,\n  \"lude</w>\": 28755,\n  \"ludo\": 40141,\n  \"ludwig</w>\": 30633,\n  \"lue</w>\": 45199,\n  \"luf\": 25264,\n  \"lufc</w>\": 17818,\n  \"luffy</w>\": 39047,\n  \"lufthan\": 37769,\n  \"lufthansa</w>\": 39145,\n  \"lug</w>\": 45521,\n  \"lugg\": 19673,\n  \"luggage</w>\": 20138,\n  \"luhan</w>\": 20975,\n  \"luigi</w>\": 28444,\n  \"luis\": 25231,\n  \"luis</w>\": 11339,\n  \"luiz</w>\": 39633,\n  \"lujah</w>\": 31639,\n  \"luk</w>\": 21652,\n  \"luka</w>\": 34878,\n  \"lukaku</w>\": 37177,\n  \"lukas</w>\": 37941,\n  \"luke\": 11970,\n  \"luke</w>\": 5652,\n  \"lul\": 20861,\n  \"lulla\": 37019,\n  \"lullaby</w>\": 41676,\n  \"lulu\": 32052,\n  \"lulu</w>\": 26935,\n  \"lum\": 18112,\n  \"lum</w>\": 5997,\n  \"lumb\": 36231,\n  \"lumber\": 27421,\n  \"lumber</w>\": 34692,\n  \"lumi\": 41437,\n  \"lumia</w>\": 31912,\n  \"lumin\": 15867,\n  \"luminous</w>\": 37913,\n  \"lump</w>\": 38704,\n  \"lumpur</w>\": 34411,\n  \"lun\": 3221,\n  \"lun</w>\": 49390,\n  \"luna</w>\": 14425,\n  \"lunar</w>\": 16043,\n  \"lunatic</w>\": 45874,\n  \"lunch\": 10954,\n  \"lunch</w>\": 2772,\n  \"luncheon</w>\": 15104,\n  \"lunches</w>\": 29705,\n  \"lunchtime</w>\": 14330,\n  \"lund\": 30975,\n  \"lund</w>\": 20181,\n  \"lunes</w>\": 35648,\n  \"lung\": 38479,\n  \"lung</w>\": 16271,\n  \"lungs</w>\": 27366,\n  \"lup</w>\": 27413,\n  \"lupita</w>\": 49352,\n  \"lupus</w>\": 36017,\n  \"lur\": 14439,\n  \"lure</w>\": 31376,\n  \"lures</w>\": 46747,\n  \"lurking</w>\": 29941,\n  \"lus</w>\": 7158,\n  \"lusci\": 38004,\n  \"luscious</w>\": 39935,\n  \"lush\": 40382,\n  \"lush</w>\": 16263,\n  \"lust\": 42071,\n  \"lust</w>\": 12662,\n  \"lustre</w>\": 46673,\n  \"luther\": 21848,\n  \"luther</w>\": 17208,\n  \"lutheran</w>\": 27341,\n  \"luton</w>\": 28288,\n  \"luv\": 24726,\n  \"luv</w>\": 8502,\n  \"lux\": 3439,\n  \"lux</w>\": 16704,\n  \"luxe</w>\": 26373,\n  \"luxemb\": 21314,\n  \"luxembour\": 22712,\n  \"luxembourg</w>\": 23949,\n  \"luxu\": 16112,\n  \"luxurious</w>\": 17292,\n  \"luxury\": 12083,\n  \"luxury</w>\": 5247,\n  \"luxurytravel</w>\": 29010,\n  \"luz</w>\": 41008,\n  \"lv\": 10862,\n  \"lv</w>\": 11184,\n  \"lvl</w>\": 31256,\n  \"lw\": 40515,\n  \"lw</w>\": 35115,\n  \"lx</w>\": 30789,\n  \"ly\": 1251,\n  \"ly</w>\": 597,\n  \"lydia</w>\": 24316,\n  \"lyf</w>\": 43688,\n  \"lyfe</w>\": 30787,\n  \"lyft</w>\": 32944,\n  \"lying</w>\": 7175,\n  \"lyk</w>\": 46376,\n  \"lyle</w>\": 36828,\n  \"lym\": 20087,\n  \"lyme</w>\": 31167,\n  \"lymph\": 30073,\n  \"lymphoma</w>\": 37648,\n  \"lyn\": 3957,\n  \"lyn</w>\": 5054,\n  \"lynch\": 31586,\n  \"lynch</w>\": 13560,\n  \"lynd\": 33416,\n  \"lynda</w>\": 42959,\n  \"lyndon</w>\": 48518,\n  \"lynn\": 25303,\n  \"lynn</w>\": 10667,\n  \"lynne</w>\": 26900,\n  \"lynx</w>\": 28941,\n  \"lyon</w>\": 17176,\n  \"lyons</w>\": 29453,\n  \"lyric\": 24366,\n  \"lyric</w>\": 21291,\n  \"lyrical</w>\": 33358,\n  \"lyricist</w>\": 49013,\n  \"lyrics</w>\": 9551,\n  \"lyrix</w>\": 46814,\n  \"lys</w>\": 45054,\n  \"lyte</w>\": 40059,\n  \"lywood</w>\": 4012,\n  \"lz</w>\": 30818,\n  \"lÃ©\": 39641,\n  \"m\": 76,\n  \"m</w>\": 332,\n  \"ma\": 577,\n  \"ma</w>\": 1226,\n  \"maa\": 42774,\n  \"maa</w>\": 21555,\n  \"maan</w>\": 33668,\n  \"maar</w>\": 48927,\n  \"maas\": 43332,\n  \"mab</w>\": 35639,\n  \"mabel</w>\": 47319,\n  \"mable</w>\": 23001,\n  \"mably</w>\": 40082,\n  \"mabu\": 44682,\n  \"mac\": 1961,\n  \"mac</w>\": 4945,\n  \"macar\": 21558,\n  \"macaroni</w>\": 41824,\n  \"macarthur</w>\": 36785,\n  \"macau\": 43984,\n  \"macau</w>\": 33370,\n  \"macbeth</w>\": 36321,\n  \"macbook</w>\": 20617,\n  \"macdonald</w>\": 20315,\n  \"mace</w>\": 44869,\n  \"maced\": 21102,\n  \"macedonia</w>\": 27071,\n  \"macfar\": 45374,\n  \"macfarlane</w>\": 48825,\n  \"mach\": 2637,\n  \"mach</w>\": 35091,\n  \"machado</w>\": 42318,\n  \"mache\": 43220,\n  \"macher</w>\": 29330,\n  \"machi\": 41783,\n  \"machin\": 17972,\n  \"machine\": 11539,\n  \"machine</w>\": 4169,\n  \"machinelearning</w>\": 13621,\n  \"machinery</w>\": 21858,\n  \"machines</w>\": 11108,\n  \"machining</w>\": 45562,\n  \"macho</w>\": 43977,\n  \"macht</w>\": 45225,\n  \"macin\": 36533,\n  \"mack\": 8590,\n  \"mack</w>\": 12145,\n  \"mackay</w>\": 32497,\n  \"macken\": 48057,\n  \"mackenzie</w>\": 22351,\n  \"mackerel</w>\": 35002,\n  \"mackin\": 26010,\n  \"macklemore</w>\": 41758,\n  \"macle\": 33843,\n  \"maclean</w>\": 47137,\n  \"macleod</w>\": 43684,\n  \"macmillan\": 36364,\n  \"macmillan</w>\": 35191,\n  \"macon</w>\": 35818,\n  \"macos</w>\": 45469,\n  \"macqu\": 38365,\n  \"macquarie</w>\": 40858,\n  \"macro\": 20891,\n  \"macro</w>\": 16626,\n  \"macron</w>\": 24859,\n  \"macs</w>\": 46548,\n  \"macy</w>\": 17113,\n  \"macys</w>\": 47652,\n  \"mad\": 2740,\n  \"mad</w>\": 3843,\n  \"mada</w>\": 37799,\n  \"madagas\": 24758,\n  \"madagascar</w>\": 25744,\n  \"madam\": 33634,\n  \"madam</w>\": 27538,\n  \"madame</w>\": 23507,\n  \"madd\": 31717,\n  \"madden</w>\": 19093,\n  \"maddie\": 39959,\n  \"maddie</w>\": 18875,\n  \"maddow</w>\": 32644,\n  \"maddy</w>\": 31734,\n  \"made\": 5388,\n  \"made</w>\": 1105,\n  \"madein\": 13670,\n  \"madeira</w>\": 33810,\n  \"madel\": 34532,\n  \"madele\": 29831,\n  \"madeleine</w>\": 33264,\n  \"madeline</w>\": 33905,\n  \"madewith\": 28627,\n  \"madewithunity</w>\": 43190,\n  \"madhu\": 23000,\n  \"madhuri\": 38346,\n  \"madhuridixit</w>\": 43889,\n  \"madhya</w>\": 48302,\n  \"madi\": 6527,\n  \"madi</w>\": 27282,\n  \"madison\": 24798,\n  \"madison</w>\": 8791,\n  \"madmen</w>\": 45452,\n  \"madness</w>\": 8755,\n  \"madon\": 44852,\n  \"madonna</w>\": 14137,\n  \"madra\": 27416,\n  \"madras</w>\": 42046,\n  \"madre</w>\": 42130,\n  \"madri\": 5529,\n  \"madrid</w>\": 5909,\n  \"mads</w>\": 41201,\n  \"madu\": 34913,\n  \"madurai</w>\": 49159,\n  \"maduro</w>\": 32912,\n  \"mae\": 16898,\n  \"mae</w>\": 17339,\n  \"maer\": 47088,\n  \"maestro</w>\": 24140,\n  \"mafi\": 47164,\n  \"mafia</w>\": 14890,\n  \"mag\": 1191,\n  \"mag</w>\": 4508,\n  \"maga</w>\": 8694,\n  \"magaz\": 2974,\n  \"magazine</w>\": 3113,\n  \"magazines</w>\": 22253,\n  \"magdal\": 29673,\n  \"mage\": 46568,\n  \"mage</w>\": 10923,\n  \"magee</w>\": 43872,\n  \"magenta</w>\": 38091,\n  \"magento</w>\": 42442,\n  \"mages</w>\": 31059,\n  \"maggi\": 29611,\n  \"maggie\": 41443,\n  \"maggie</w>\": 14524,\n  \"maggio</w>\": 49087,\n  \"magh\": 45555,\n  \"magi\": 19270,\n  \"magic\": 13061,\n  \"magic</w>\": 3778,\n  \"magical\": 36408,\n  \"magical</w>\": 7823,\n  \"magician</w>\": 26368,\n  \"magin\": 42678,\n  \"maging</w>\": 41310,\n  \"magn\": 10290,\n  \"magna</w>\": 34076,\n  \"magne\": 9921,\n  \"magnesium</w>\": 36379,\n  \"magnet</w>\": 18240,\n  \"magnetic</w>\": 13838,\n  \"magnets</w>\": 33030,\n  \"magni\": 24297,\n  \"magnific\": 9725,\n  \"magnificent</w>\": 10724,\n  \"magnitude</w>\": 22955,\n  \"magno\": 21184,\n  \"magnolia</w>\": 27123,\n  \"magnu\": 45198,\n  \"magnum</w>\": 23496,\n  \"magnus</w>\": 26275,\n  \"magpie</w>\": 45973,\n  \"mags</w>\": 31021,\n  \"maguire</w>\": 26470,\n  \"mah\": 7206,\n  \"mah</w>\": 10801,\n  \"maha\": 12237,\n  \"maha</w>\": 33983,\n  \"mahal</w>\": 22301,\n  \"mahan\": 45191,\n  \"mahar\": 11635,\n  \"maharaj</w>\": 38488,\n  \"maharashtra</w>\": 19328,\n  \"mahat\": 32434,\n  \"mahatma</w>\": 40530,\n  \"mahe\": 15756,\n  \"maher</w>\": 29826,\n  \"mahesh\": 33448,\n  \"mahesh</w>\": 22095,\n  \"mahi\": 32529,\n  \"mahi</w>\": 38659,\n  \"mahin\": 24113,\n  \"mahindra</w>\": 31285,\n  \"mahmoud</w>\": 41361,\n  \"mahog\": 30804,\n  \"mahogany</w>\": 33084,\n  \"mahon\": 45864,\n  \"mahon</w>\": 20371,\n  \"mahone</w>\": 26634,\n  \"mai\": 7138,\n  \"mai</w>\": 14595,\n  \"maia</w>\": 46585,\n  \"maid\": 23148,\n  \"maid</w>\": 10226,\n  \"maidan</w>\": 37346,\n  \"maiden\": 37011,\n  \"maiden</w>\": 13809,\n  \"maids</w>\": 27305,\n  \"maidstone</w>\": 44395,\n  \"mail\": 10478,\n  \"mail</w>\": 2614,\n  \"mailbox</w>\": 31482,\n  \"mailed</w>\": 42314,\n  \"mailing</w>\": 26680,\n  \"mailonline</w>\": 26021,\n  \"mails</w>\": 45213,\n  \"main\": 3904,\n  \"main</w>\": 2623,\n  \"maine\": 18639,\n  \"maine</w>\": 7836,\n  \"mained\": 15609,\n  \"mainedcm</w>\": 15845,\n  \"mainland</w>\": 27629,\n  \"mainly</w>\": 15280,\n  \"mains</w>\": 33656,\n  \"mainst\": 42102,\n  \"mainstream</w>\": 18034,\n  \"maintain</w>\": 12954,\n  \"maintained</w>\": 26665,\n  \"maintaining</w>\": 21964,\n  \"maintains</w>\": 38335,\n  \"mainten\": 9399,\n  \"maintenance</w>\": 9610,\n  \"mais</w>\": 28153,\n  \"maisie</w>\": 47355,\n  \"maison\": 37065,\n  \"maison</w>\": 27626,\n  \"mait\": 26387,\n  \"maize</w>\": 35386,\n  \"maj\": 2948,\n  \"maj</w>\": 28723,\n  \"maja</w>\": 47498,\n  \"maje\": 9852,\n  \"majestic</w>\": 15335,\n  \"majesty</w>\": 21188,\n  \"major\": 8008,\n  \"major</w>\": 3350,\n  \"majority</w>\": 10508,\n  \"majors</w>\": 23597,\n  \"mak\": 11271,\n  \"mak</w>\": 19253,\n  \"makar\": 42242,\n  \"makati</w>\": 39402,\n  \"make\": 3232,\n  \"make</w>\": 1078,\n  \"makeaw\": 45859,\n  \"makeinindia</w>\": 42739,\n  \"makeit\": 26308,\n  \"maken\": 47093,\n  \"makeover</w>\": 17926,\n  \"maker\": 15196,\n  \"maker</w>\": 4836,\n  \"makers</w>\": 6577,\n  \"makerspace</w>\": 42400,\n  \"makes</w>\": 2088,\n  \"makeshift</w>\": 43274,\n  \"makeu\": 41707,\n  \"makeup\": 26402,\n  \"makeup</w>\": 5853,\n  \"makeyourown\": 34090,\n  \"makeyourownlane</w>\": 34823,\n  \"maki</w>\": 34514,\n  \"makin\": 43096,\n  \"makin</w>\": 22407,\n  \"making\": 17976,\n  \"making</w>\": 1665,\n  \"makk\": 39852,\n  \"maknae</w>\": 44118,\n  \"mako</w>\": 49061,\n  \"mal\": 1662,\n  \"mal</w>\": 3796,\n  \"mala</w>\": 28290,\n  \"malade</w>\": 36928,\n  \"malaga</w>\": 35395,\n  \"malala</w>\": 41137,\n  \"malam</w>\": 48956,\n  \"malaria</w>\": 24929,\n  \"malawi</w>\": 23405,\n  \"malay\": 5323,\n  \"malay</w>\": 42430,\n  \"malayalam</w>\": 34860,\n  \"malaysi\": 39668,\n  \"malaysia</w>\": 8146,\n  \"malaysian</w>\": 21136,\n  \"malbec</w>\": 47741,\n  \"malcol\": 12645,\n  \"malcolm</w>\": 14139,\n  \"maldives</w>\": 16795,\n  \"male\": 11326,\n  \"male</w>\": 2801,\n  \"males</w>\": 14426,\n  \"malhotra</w>\": 28866,\n  \"mali\": 6701,\n  \"mali</w>\": 22669,\n  \"malia</w>\": 46714,\n  \"malibu</w>\": 21723,\n  \"malicious</w>\": 42147,\n  \"malign\": 41122,\n  \"malik</w>\": 11394,\n  \"mall\": 10984,\n  \"mall</w>\": 6220,\n  \"mallorca</w>\": 28082,\n  \"mallory</w>\": 38968,\n  \"malls</w>\": 36447,\n  \"malm\": 44071,\n  \"malnutrition</w>\": 41153,\n  \"malo</w>\": 43518,\n  \"malone</w>\": 19852,\n  \"maloney</w>\": 45897,\n  \"mals</w>\": 25370,\n  \"malt</w>\": 21688,\n  \"malta</w>\": 16989,\n  \"maltese</w>\": 39838,\n  \"malvern</w>\": 39356,\n  \"malware</w>\": 24153,\n  \"mam\": 4404,\n  \"mam</w>\": 17778,\n  \"mama</w>\": 7133,\n  \"mamamoo</w>\": 36012,\n  \"mamas</w>\": 42395,\n  \"mamba</w>\": 44189,\n  \"mament</w>\": 45690,\n  \"mami</w>\": 43858,\n  \"mamma</w>\": 34893,\n  \"mammal</w>\": 33385,\n  \"mammals</w>\": 31987,\n  \"mammoth</w>\": 28022,\n  \"man\": 723,\n  \"man</w>\": 786,\n  \"mana\": 29467,\n  \"mana</w>\": 15837,\n  \"manafort</w>\": 40108,\n  \"manag\": 1830,\n  \"manage</w>\": 9770,\n  \"managed</w>\": 7928,\n  \"management</w>\": 3319,\n  \"manager</w>\": 3898,\n  \"managerial</w>\": 44261,\n  \"managers</w>\": 12853,\n  \"manages</w>\": 29699,\n  \"managing</w>\": 10892,\n  \"manas\": 44188,\n  \"manatee</w>\": 46558,\n  \"mance</w>\": 2324,\n  \"manchester\": 24424,\n  \"manchester</w>\": 4651,\n  \"mancini</w>\": 47681,\n  \"mancity</w>\": 31538,\n  \"mancrush\": 36945,\n  \"mancrushmonday</w>\": 39307,\n  \"mand\": 4325,\n  \"mand</w>\": 27244,\n  \"mandala</w>\": 41106,\n  \"mandarin</w>\": 26455,\n  \"mandate</w>\": 26228,\n  \"mandatory</w>\": 19934,\n  \"mandel\": 34960,\n  \"mandela</w>\": 16280,\n  \"mandi\": 38961,\n  \"mandir</w>\": 35815,\n  \"mando</w>\": 34006,\n  \"mands</w>\": 12340,\n  \"mandu</w>\": 31440,\n  \"mandy\": 41505,\n  \"mandy</w>\": 24302,\n  \"mane\": 44471,\n  \"mane</w>\": 16044,\n  \"maneu\": 33216,\n  \"mang\": 25616,\n  \"mang</w>\": 31096,\n  \"manga</w>\": 11873,\n  \"mangal\": 43027,\n  \"manger</w>\": 48251,\n  \"mango\": 43831,\n  \"mango</w>\": 13962,\n  \"mangrove</w>\": 47180,\n  \"manhatt\": 10152,\n  \"manhattan</w>\": 10961,\n  \"mani\": 5654,\n  \"mani</w>\": 10718,\n  \"mania</w>\": 8435,\n  \"maniac</w>\": 31814,\n  \"maniacs</w>\": 41444,\n  \"manian</w>\": 40077,\n  \"manic\": 23017,\n  \"manic</w>\": 37825,\n  \"manicure</w>\": 33637,\n  \"manife\": 14379,\n  \"manifest</w>\": 34422,\n  \"manifestation</w>\": 48348,\n  \"manifesto</w>\": 20907,\n  \"manil\": 38827,\n  \"manila</w>\": 10969,\n  \"manipu\": 40261,\n  \"manipul\": 19237,\n  \"manipulation</w>\": 30277,\n  \"manipur</w>\": 47757,\n  \"manish\": 41759,\n  \"manish</w>\": 44720,\n  \"manit\": 15693,\n  \"manitoba</w>\": 20342,\n  \"manjaro</w>\": 41489,\n  \"mankind</w>\": 24155,\n  \"manly</w>\": 25194,\n  \"mann\": 19396,\n  \"mann</w>\": 4783,\n  \"manne\": 30160,\n  \"manned</w>\": 26139,\n  \"mannequin</w>\": 43388,\n  \"manner</w>\": 20700,\n  \"manners</w>\": 31693,\n  \"manning</w>\": 15996,\n  \"manny\": 37054,\n  \"manny</w>\": 20933,\n  \"mano\": 15753,\n  \"mano</w>\": 24016,\n  \"manoj</w>\": 41146,\n  \"manor\": 41830,\n  \"manor</w>\": 13614,\n  \"mans\": 28422,\n  \"mans</w>\": 7746,\n  \"mansfield</w>\": 25543,\n  \"manship</w>\": 15460,\n  \"mansion</w>\": 13404,\n  \"manslaughter</w>\": 48632,\n  \"manson</w>\": 26715,\n  \"mant\": 25122,\n  \"mant</w>\": 27037,\n  \"manta</w>\": 41431,\n  \"mantis</w>\": 39946,\n  \"mantle</w>\": 22159,\n  \"mantra</w>\": 25162,\n  \"manu\": 3404,\n  \"manu</w>\": 25799,\n  \"manual</w>\": 12268,\n  \"manuel\": 29171,\n  \"manuel</w>\": 9567,\n  \"manufac\": 5105,\n  \"manufacture</w>\": 27741,\n  \"manufactured</w>\": 24010,\n  \"manufacturer</w>\": 15668,\n  \"manufacturers</w>\": 18763,\n  \"manufacturing</w>\": 8386,\n  \"manure</w>\": 47907,\n  \"manus</w>\": 28181,\n  \"manuscript</w>\": 24365,\n  \"manuscripts</w>\": 40765,\n  \"manutd</w>\": 20994,\n  \"many\": 28484,\n  \"many</w>\": 1346,\n  \"manziel</w>\": 40637,\n  \"mao\": 47447,\n  \"mao</w>\": 25605,\n  \"maori</w>\": 43400,\n  \"map\": 25180,\n  \"map</w>\": 3923,\n  \"maple\": 21980,\n  \"maple</w>\": 10570,\n  \"mapleleafs</w>\": 41257,\n  \"mapoli</w>\": 28768,\n  \"mapp</w>\": 36894,\n  \"mapped</w>\": 41596,\n  \"mapping</w>\": 15231,\n  \"maps</w>\": 8765,\n  \"mapu\": 42082,\n  \"mar\": 675,\n  \"mar</w>\": 3091,\n  \"mara</w>\": 15655,\n  \"marais</w>\": 47913,\n  \"maran\": 44732,\n  \"marath\": 16274,\n  \"marathi</w>\": 34102,\n  \"marathon\": 40764,\n  \"marathon</w>\": 5910,\n  \"marau\": 38475,\n  \"marbella</w>\": 36182,\n  \"marble\": 45429,\n  \"marble</w>\": 13071,\n  \"marbles</w>\": 42931,\n  \"marc\": 14054,\n  \"marc</w>\": 9075,\n  \"marca</w>\": 38242,\n  \"marcel\": 17726,\n  \"marcel</w>\": 24652,\n  \"marcelo</w>\": 35939,\n  \"march\": 10638,\n  \"march</w>\": 2227,\n  \"marche</w>\": 36173,\n  \"marched</w>\": 37976,\n  \"marches</w>\": 38249,\n  \"marchfor\": 31721,\n  \"marching</w>\": 15082,\n  \"marchmadness</w>\": 28555,\n  \"marci\": 36698,\n  \"marcia</w>\": 41075,\n  \"marck</w>\": 47733,\n  \"marco\": 24719,\n  \"marco</w>\": 10924,\n  \"marcor\": 39945,\n  \"marcorubio</w>\": 41143,\n  \"marcos</w>\": 21696,\n  \"marcu\": 20760,\n  \"marcus\": 48955,\n  \"marcus</w>\": 9895,\n  \"mardi\": 39728,\n  \"mardi</w>\": 29229,\n  \"mardigras</w>\": 43343,\n  \"mare\": 26512,\n  \"mare</w>\": 8870,\n  \"mares</w>\": 19724,\n  \"marg</w>\": 44014,\n  \"margar\": 16838,\n  \"margare\": 10232,\n  \"margaret</w>\": 12185,\n  \"margarita</w>\": 25958,\n  \"margaritas</w>\": 42679,\n  \"margate</w>\": 37428,\n  \"margin\": 19464,\n  \"margin</w>\": 21357,\n  \"marginal</w>\": 38320,\n  \"margins</w>\": 33763,\n  \"margot</w>\": 37144,\n  \"mari\": 2603,\n  \"mari</w>\": 19322,\n  \"maria\": 41109,\n  \"maria</w>\": 6595,\n  \"mariachi</w>\": 44299,\n  \"mariah\": 31214,\n  \"mariah</w>\": 24789,\n  \"mariahcarey</w>\": 36538,\n  \"marian\": 41129,\n  \"marian</w>\": 24677,\n  \"mariana</w>\": 44224,\n  \"marianne</w>\": 32214,\n  \"mariano</w>\": 43988,\n  \"marie\": 20657,\n  \"marie</w>\": 7864,\n  \"marietta</w>\": 46634,\n  \"marig\": 41002,\n  \"marijuana</w>\": 9864,\n  \"maril\": 14611,\n  \"marilyn\": 38959,\n  \"marilyn</w>\": 18489,\n  \"marin\": 8910,\n  \"marin</w>\": 23992,\n  \"marina</w>\": 12060,\n  \"marinated</w>\": 33406,\n  \"marine\": 20674,\n  \"marine</w>\": 5746,\n  \"mariner</w>\": 39972,\n  \"mariners</w>\": 19086,\n  \"marines</w>\": 15018,\n  \"marino</w>\": 30878,\n  \"mario\": 39176,\n  \"mario</w>\": 7600,\n  \"marion\": 37765,\n  \"marion</w>\": 18397,\n  \"maris\": 21512,\n  \"maris</w>\": 33093,\n  \"marisa</w>\": 42938,\n  \"mariska</w>\": 44703,\n  \"marissa</w>\": 31219,\n  \"marist</w>\": 48223,\n  \"mariti\": 13124,\n  \"maritime</w>\": 14331,\n  \"marj\": 38639,\n  \"mark\": 3805,\n  \"mark</w>\": 2110,\n  \"marke\": 2399,\n  \"marked</w>\": 12360,\n  \"marker</w>\": 18170,\n  \"markers</w>\": 23664,\n  \"market\": 11614,\n  \"market</w>\": 2196,\n  \"marketer</w>\": 33482,\n  \"marketers</w>\": 23682,\n  \"marketing\": 19535,\n  \"marketing</w>\": 2905,\n  \"marketplace</w>\": 18241,\n  \"markets</w>\": 7292,\n  \"markham</w>\": 39817,\n  \"marking</w>\": 14705,\n  \"markings</w>\": 41046,\n  \"markle</w>\": 32672,\n  \"marko</w>\": 38338,\n  \"marks</w>\": 5466,\n  \"markus</w>\": 33725,\n  \"marl\": 24922,\n  \"marlborough</w>\": 43515,\n  \"marlene</w>\": 45117,\n  \"marley</w>\": 16504,\n  \"marlin</w>\": 34275,\n  \"marlins</w>\": 23309,\n  \"marlon</w>\": 32995,\n  \"marmalade</w>\": 39068,\n  \"marnock</w>\": 48305,\n  \"maro\": 27029,\n  \"maroon</w>\": 20501,\n  \"marqu\": 20704,\n  \"marque\": 13012,\n  \"marquee</w>\": 27725,\n  \"marquette</w>\": 37624,\n  \"marquez</w>\": 27317,\n  \"marquis</w>\": 33530,\n  \"marr</w>\": 32871,\n  \"marrake\": 37125,\n  \"marrakech</w>\": 39006,\n  \"marri\": 3839,\n  \"marriage\": 38047,\n  \"marriage</w>\": 7040,\n  \"marriages</w>\": 38190,\n  \"married</w>\": 6791,\n  \"marries</w>\": 46283,\n  \"marriott</w>\": 19211,\n  \"marrow</w>\": 31030,\n  \"marry</w>\": 13288,\n  \"marrying</w>\": 40507,\n  \"mars\": 41469,\n  \"mars</w>\": 7496,\n  \"marsden</w>\": 43344,\n  \"marse\": 26577,\n  \"marseille</w>\": 30365,\n  \"marsh\": 9237,\n  \"marsh</w>\": 13505,\n  \"marsha</w>\": 21491,\n  \"marshal</w>\": 26608,\n  \"marshall\": 30939,\n  \"marshall</w>\": 9811,\n  \"marshals</w>\": 44175,\n  \"marshes</w>\": 43450,\n  \"marshmal\": 21069,\n  \"marshmallow</w>\": 28530,\n  \"marshmallows</w>\": 39471,\n  \"mart\": 2348,\n  \"mart</w>\": 7772,\n  \"marta</w>\": 32858,\n  \"martens</w>\": 43211,\n  \"marth\": 34493,\n  \"martha</w>\": 16427,\n  \"marti\": 20577,\n  \"martial</w>\": 17088,\n  \"martialarts</w>\": 35895,\n  \"martian</w>\": 30214,\n  \"martin\": 6929,\n  \"martin</w>\": 3690,\n  \"martina</w>\": 34393,\n  \"martinez</w>\": 13913,\n  \"marting\": 47570,\n  \"martini</w>\": 22199,\n  \"martino</w>\": 41675,\n  \"martins</w>\": 30569,\n  \"marty\": 9926,\n  \"marty</w>\": 17169,\n  \"martyn</w>\": 44075,\n  \"martyr\": 36155,\n  \"martyr</w>\": 26067,\n  \"martyrdom</w>\": 43110,\n  \"martyred</w>\": 39114,\n  \"martyrs</w>\": 24707,\n  \"maru\": 37413,\n  \"maru</w>\": 31838,\n  \"marvel\": 13835,\n  \"marvel</w>\": 5996,\n  \"marvelcomics</w>\": 46897,\n  \"marvell\": 26576,\n  \"marvellous</w>\": 28402,\n  \"marvelous</w>\": 25487,\n  \"marvin</w>\": 19675,\n  \"marx\": 30559,\n  \"marx</w>\": 26001,\n  \"marxist</w>\": 45205,\n  \"mary\": 5146,\n  \"mary</w>\": 2676,\n  \"maryam\": 33636,\n  \"maryam</w>\": 36393,\n  \"maryland</w>\": 11379,\n  \"marys\": 40905,\n  \"marys</w>\": 40228,\n  \"mas\": 5226,\n  \"mas</w>\": 1412,\n  \"masa\": 24995,\n  \"masa</w>\": 41868,\n  \"masala</w>\": 31483,\n  \"masc\": 23564,\n  \"mascar\": 46984,\n  \"mascara</w>\": 31635,\n  \"mascot</w>\": 13983,\n  \"mascots</w>\": 43266,\n  \"mascul\": 25589,\n  \"masculine</w>\": 48269,\n  \"masculinity</w>\": 40465,\n  \"mase\": 49128,\n  \"maser\": 25798,\n  \"maserati</w>\": 30442,\n  \"mash\": 12317,\n  \"mash</w>\": 15680,\n  \"mashable</w>\": 41026,\n  \"mashed</w>\": 27395,\n  \"mashup</w>\": 27079,\n  \"masi\": 35965,\n  \"masjid</w>\": 31420,\n  \"mask\": 19262,\n  \"mask</w>\": 8306,\n  \"masked</w>\": 25757,\n  \"masking</w>\": 47046,\n  \"masks</w>\": 19055,\n  \"maslow</w>\": 44359,\n  \"mason\": 17424,\n  \"mason</w>\": 9699,\n  \"masonic</w>\": 36491,\n  \"masonry</w>\": 30764,\n  \"masons</w>\": 37195,\n  \"masqu\": 26593,\n  \"masquer\": 29604,\n  \"masquerade</w>\": 36944,\n  \"mass\": 4636,\n  \"mass</w>\": 4854,\n  \"massach\": 14484,\n  \"massachuse\": 14577,\n  \"massachusetts</w>\": 14756,\n  \"massacre</w>\": 14696,\n  \"massage</w>\": 13055,\n  \"masse\": 41735,\n  \"masses</w>\": 22978,\n  \"massey</w>\": 29868,\n  \"massi\": 17239,\n  \"massimo</w>\": 45821,\n  \"massive</w>\": 4818,\n  \"massively</w>\": 34297,\n  \"mast\": 45916,\n  \"mast</w>\": 27920,\n  \"master\": 4534,\n  \"master</w>\": 3498,\n  \"mastercard</w>\": 40542,\n  \"masterchef</w>\": 34809,\n  \"masterclass</w>\": 17529,\n  \"mastered</w>\": 32616,\n  \"masterful</w>\": 46823,\n  \"mastering</w>\": 28326,\n  \"mastermind</w>\": 34029,\n  \"masterpiece</w>\": 12066,\n  \"masterpieces</w>\": 37596,\n  \"masters</w>\": 6913,\n  \"mastery</w>\": 34800,\n  \"mastiff</w>\": 42311,\n  \"maswar\": 47887,\n  \"mat\": 905,\n  \"mat</w>\": 9063,\n  \"mata</w>\": 17270,\n  \"match\": 7733,\n  \"match</w>\": 2439,\n  \"matcha</w>\": 32433,\n  \"matchday</w>\": 15947,\n  \"matched</w>\": 17792,\n  \"matches</w>\": 8609,\n  \"matching</w>\": 11840,\n  \"matchup</w>\": 19355,\n  \"matchups</w>\": 49162,\n  \"mate\": 6137,\n  \"mate</w>\": 2936,\n  \"mated</w>\": 33813,\n  \"mateo</w>\": 34991,\n  \"mater</w>\": 23724,\n  \"materi\": 7084,\n  \"material</w>\": 7118,\n  \"materials</w>\": 8161,\n  \"maternal</w>\": 26131,\n  \"maternity</w>\": 23894,\n  \"mates</w>\": 5817,\n  \"math\": 13277,\n  \"math</w>\": 6025,\n  \"mathe\": 8725,\n  \"mathemat\": 11901,\n  \"mathematical</w>\": 25609,\n  \"mathematician</w>\": 41036,\n  \"mathematics</w>\": 20113,\n  \"mathew</w>\": 36333,\n  \"mathews</w>\": 37120,\n  \"mathi\": 23014,\n  \"mathieu</w>\": 40417,\n  \"maths</w>\": 14763,\n  \"mati\": 12716,\n  \"mati</w>\": 32268,\n  \"matic\": 36859,\n  \"matic</w>\": 7900,\n  \"matically</w>\": 38282,\n  \"matics</w>\": 23634,\n  \"matil\": 26751,\n  \"matilda</w>\": 36308,\n  \"matin</w>\": 44849,\n  \"matinee</w>\": 38525,\n  \"mating</w>\": 34346,\n  \"mation</w>\": 11701,\n  \"matisse</w>\": 43446,\n  \"mato\": 13127,\n  \"matologist</w>\": 48842,\n  \"matology</w>\": 27940,\n  \"matory</w>\": 25519,\n  \"matri\": 27041,\n  \"matrix</w>\": 18078,\n  \"mats</w>\": 22259,\n  \"matsu\": 30242,\n  \"matt\": 7972,\n  \"matt</w>\": 3972,\n  \"mattb\": 42791,\n  \"matte\": 31237,\n  \"matte</w>\": 19771,\n  \"mattel</w>\": 35365,\n  \"matteo</w>\": 33120,\n  \"matter\": 30471,\n  \"matter</w>\": 3828,\n  \"matters</w>\": 5708,\n  \"matth\": 41846,\n  \"matthe\": 5116,\n  \"matthew\": 17588,\n  \"matthew</w>\": 7008,\n  \"matthews</w>\": 16739,\n  \"matthi\": 29853,\n  \"matthias</w>\": 45104,\n  \"matti\": 39840,\n  \"mattress</w>\": 23438,\n  \"matty\": 31233,\n  \"matty</w>\": 29176,\n  \"matu\": 40616,\n  \"matur\": 22897,\n  \"mature</w>\": 14417,\n  \"maturity</w>\": 28047,\n  \"mau\": 8134,\n  \"mau</w>\": 23033,\n  \"maui</w>\": 20463,\n  \"maul\": 30725,\n  \"maur\": 10574,\n  \"maure\": 25191,\n  \"maureen</w>\": 31723,\n  \"maurice</w>\": 20200,\n  \"mauricio</w>\": 39066,\n  \"mauriti\": 28406,\n  \"mauritius</w>\": 29305,\n  \"mauro</w>\": 41691,\n  \"mav\": 25697,\n  \"maver\": 16700,\n  \"maverick</w>\": 27425,\n  \"mavericks</w>\": 30092,\n  \"mavs</w>\": 30665,\n  \"maw\": 39351,\n  \"maw</w>\": 42271,\n  \"mawards</w>\": 37682,\n  \"max\": 4898,\n  \"max</w>\": 3902,\n  \"maxi\": 8554,\n  \"maxi</w>\": 23266,\n  \"maxim\": 19892,\n  \"maxim</w>\": 38574,\n  \"maximize</w>\": 28673,\n  \"maximum</w>\": 13162,\n  \"maximus</w>\": 44312,\n  \"maxine</w>\": 38468,\n  \"maxwell</w>\": 19611,\n  \"maxx</w>\": 37466,\n  \"may\": 1686,\n  \"may</w>\": 1270,\n  \"maya\": 45783,\n  \"maya</w>\": 12987,\n  \"mayan</w>\": 37952,\n  \"maybe</w>\": 3746,\n  \"mayday</w>\": 29957,\n  \"mayer</w>\": 21196,\n  \"mayfair</w>\": 35171,\n  \"mayfield</w>\": 33933,\n  \"mayhem</w>\": 21502,\n  \"maymay\": 26600,\n  \"maymay</w>\": 33853,\n  \"maymayentrata</w>\": 30480,\n  \"maynard</w>\": 32487,\n  \"mayne</w>\": 35771,\n  \"mayo\": 22449,\n  \"mayo</w>\": 11280,\n  \"mayor\": 15429,\n  \"mayor</w>\": 4676,\n  \"mayoral</w>\": 28983,\n  \"mayorof\": 43533,\n  \"mayors</w>\": 28501,\n  \"mays</w>\": 35445,\n  \"maythe</w>\": 42281,\n  \"mayward\": 45751,\n  \"mayward</w>\": 23519,\n  \"mayweather</w>\": 22774,\n  \"maz\": 9177,\n  \"maz</w>\": 36215,\n  \"mazda</w>\": 18506,\n  \"maze</w>\": 21988,\n  \"mazz\": 29439,\n  \"maÃ±\": 37059,\n  \"maÃ±ana</w>\": 39354,\n  \"mb\": 758,\n  \"mb</w>\": 3996,\n  \"mba</w>\": 8329,\n  \"mban</w>\": 46685,\n  \"mbar\": 44452,\n  \"mbb</w>\": 10736,\n  \"mbc</w>\": 20137,\n  \"mbe\": 38395,\n  \"mbe</w>\": 27004,\n  \"mber\": 5467,\n  \"mber</w>\": 1034,\n  \"mberg</w>\": 26372,\n  \"mbers</w>\": 5443,\n  \"mbi</w>\": 45347,\n  \"mble\": 20310,\n  \"mble</w>\": 4756,\n  \"mbles</w>\": 28693,\n  \"mbling</w>\": 28604,\n  \"mbo\": 25733,\n  \"mbo</w>\": 11319,\n  \"mbps</w>\": 44896,\n  \"mbs</w>\": 10370,\n  \"mbta</w>\": 38979,\n  \"mbu</w>\": 42228,\n  \"mbuhari</w>\": 36752,\n  \"mc\": 1278,\n  \"mc</w>\": 4126,\n  \"mca\": 40570,\n  \"mca</w>\": 14635,\n  \"mcal\": 28663,\n  \"mcar\": 43776,\n  \"mcbride</w>\": 35080,\n  \"mcc</w>\": 21192,\n  \"mccabe</w>\": 37628,\n  \"mccaf\": 47385,\n  \"mccain</w>\": 20397,\n  \"mccall</w>\": 34844,\n  \"mccann</w>\": 27140,\n  \"mccar\": 9570,\n  \"mccarthy</w>\": 16974,\n  \"mccartney</w>\": 19958,\n  \"mccl\": 24709,\n  \"mccla\": 43672,\n  \"mccle\": 40139,\n  \"mcclure</w>\": 44945,\n  \"mcco\": 46152,\n  \"mccon\": 32638,\n  \"mccor\": 23057,\n  \"mccormack</w>\": 45164,\n  \"mccormick</w>\": 39088,\n  \"mccoy</w>\": 20218,\n  \"mccr\": 41996,\n  \"mccre\": 25393,\n  \"mccul\": 38833,\n  \"mccull\": 41782,\n  \"mcd</w>\": 28930,\n  \"mcder\": 27355,\n  \"mcdermott</w>\": 34504,\n  \"mcdon\": 12171,\n  \"mcdonald</w>\": 10741,\n  \"mcdonalds</w>\": 17674,\n  \"mcdonnell</w>\": 34360,\n  \"mcdowell</w>\": 34119,\n  \"mce\": 26864,\n  \"mcel\": 28752,\n  \"mcen\": 47423,\n  \"mcfad\": 36976,\n  \"mcfadden</w>\": 42105,\n  \"mcfar\": 29020,\n  \"mcfarlane</w>\": 47174,\n  \"mcfc</w>\": 16416,\n  \"mcfly</w>\": 38211,\n  \"mcg\": 42507,\n  \"mcg</w>\": 27995,\n  \"mcgee</w>\": 29223,\n  \"mcgill\": 46524,\n  \"mcgill</w>\": 35511,\n  \"mcgin\": 29596,\n  \"mcgowan</w>\": 40462,\n  \"mcgr\": 25169,\n  \"mcgra\": 29367,\n  \"mcgrath</w>\": 28759,\n  \"mcgraw</w>\": 40950,\n  \"mcgregor</w>\": 19642,\n  \"mcgu\": 34294,\n  \"mcguinness</w>\": 45299,\n  \"mcguire</w>\": 32635,\n  \"mci\": 46212,\n  \"mci</w>\": 45491,\n  \"mcil\": 30481,\n  \"mcin\": 18770,\n  \"mcintosh</w>\": 45353,\n  \"mcintyre</w>\": 33369,\n  \"mck\": 6781,\n  \"mckay</w>\": 33611,\n  \"mcke\": 27424,\n  \"mckee</w>\": 43529,\n  \"mcken\": 42619,\n  \"mckenna</w>\": 24924,\n  \"mckenzie</w>\": 25502,\n  \"mckin\": 15437,\n  \"mckinley</w>\": 39891,\n  \"mckinney</w>\": 33554,\n  \"mckinnon</w>\": 48736,\n  \"mckinsey</w>\": 48143,\n  \"mcl\": 49021,\n  \"mcla\": 12565,\n  \"mclaren\": 37381,\n  \"mclaren</w>\": 16789,\n  \"mclau\": 32285,\n  \"mclaughlin</w>\": 35346,\n  \"mcle\": 25299,\n  \"mclean</w>\": 28666,\n  \"mcleod</w>\": 40259,\n  \"mcm</w>\": 12251,\n  \"mcmahon</w>\": 24026,\n  \"mcmaster</w>\": 42703,\n  \"mcmillan</w>\": 45603,\n  \"mcn\": 42919,\n  \"mcnam\": 32682,\n  \"mcnamara</w>\": 37506,\n  \"mcne\": 42545,\n  \"mco</w>\": 33723,\n  \"mcqueen</w>\": 22544,\n  \"mcr\": 29884,\n  \"mcr</w>\": 16966,\n  \"mcs</w>\": 27020,\n  \"mcu</w>\": 30403,\n  \"md\": 8637,\n  \"md</w>\": 4732,\n  \"mdc\": 38773,\n  \"mdc</w>\": 41761,\n  \"mds</w>\": 48746,\n  \"mdt</w>\": 40822,\n  \"me\": 613,\n  \"me</w>\": 614,\n  \"mea\": 46045,\n  \"mea</w>\": 17711,\n  \"mead\": 12134,\n  \"mead</w>\": 21567,\n  \"meade</w>\": 37218,\n  \"meado\": 16402,\n  \"meadow\": 25213,\n  \"meadow</w>\": 17195,\n  \"meadows</w>\": 17178,\n  \"meal\": 29662,\n  \"meal</w>\": 5478,\n  \"meals</w>\": 11229,\n  \"mean\": 4189,\n  \"mean</w>\": 3450,\n  \"meand\": 48015,\n  \"meaning\": 14586,\n  \"meaning</w>\": 8342,\n  \"meaningful</w>\": 17480,\n  \"meaningless</w>\": 48932,\n  \"meanings</w>\": 45814,\n  \"means</w>\": 3494,\n  \"meant</w>\": 8674,\n  \"meantime</w>\": 27499,\n  \"meanwhile</w>\": 9650,\n  \"meas\": 5867,\n  \"measles</w>\": 38230,\n  \"measurable</w>\": 48010,\n  \"measure\": 15261,\n  \"measure</w>\": 10579,\n  \"measured</w>\": 23154,\n  \"measurement</w>\": 20973,\n  \"measurements</w>\": 29894,\n  \"measures</w>\": 11936,\n  \"measuring</w>\": 18064,\n  \"meat\": 10805,\n  \"meat</w>\": 6480,\n  \"meatball</w>\": 43642,\n  \"meatballs</w>\": 29233,\n  \"meath</w>\": 37920,\n  \"meatless\": 48085,\n  \"meats</w>\": 29558,\n  \"mec</w>\": 27432,\n  \"mecca</w>\": 36095,\n  \"mech</w>\": 38305,\n  \"mechan\": 6715,\n  \"mechanic</w>\": 24582,\n  \"mechanical</w>\": 14467,\n  \"mechanics</w>\": 20536,\n  \"mechanism</w>\": 22576,\n  \"mechanisms</w>\": 28610,\n  \"meck\": 41908,\n  \"med\": 1948,\n  \"med</w>\": 2177,\n  \"meda</w>\": 33614,\n  \"medal\": 29714,\n  \"medal</w>\": 6974,\n  \"medalist</w>\": 21040,\n  \"medalists</w>\": 43397,\n  \"medalli\": 31349,\n  \"medallion</w>\": 43469,\n  \"medallist</w>\": 41472,\n  \"medals</w>\": 14710,\n  \"mede</w>\": 48225,\n  \"meded</w>\": 27627,\n  \"medi\": 1436,\n  \"media\": 22064,\n  \"media</w>\": 1895,\n  \"mediac\": 37490,\n  \"median</w>\": 30491,\n  \"mediation</w>\": 42829,\n  \"medic\": 3602,\n  \"medic</w>\": 35441,\n  \"medicaid</w>\": 25421,\n  \"medical\": 18432,\n  \"medical</w>\": 4116,\n  \"medicare</w>\": 23710,\n  \"medication</w>\": 23771,\n  \"medications</w>\": 37181,\n  \"medicinal</w>\": 28772,\n  \"medicine</w>\": 5616,\n  \"medicines</w>\": 26541,\n  \"medics</w>\": 46688,\n  \"medieval\": 38956,\n  \"medieval</w>\": 10789,\n  \"medina</w>\": 27281,\n  \"mediocre</w>\": 41170,\n  \"medit\": 19130,\n  \"meditate</w>\": 38039,\n  \"meditation</w>\": 10827,\n  \"mediter\": 14194,\n  \"mediterran\": 14358,\n  \"mediterranean</w>\": 15327,\n  \"medium</w>\": 8675,\n  \"medley</w>\": 24793,\n  \"meds</w>\": 25075,\n  \"medtech</w>\": 42044,\n  \"medusa</w>\": 44216,\n  \"medway</w>\": 42286,\n  \"mee\": 1725,\n  \"mee</w>\": 14075,\n  \"meek</w>\": 28935,\n  \"meen\": 37940,\n  \"meen</w>\": 46515,\n  \"meer\": 26714,\n  \"meer</w>\": 27555,\n  \"meet\": 5714,\n  \"meet</w>\": 1633,\n  \"meeting\": 48566,\n  \"meeting</w>\": 2071,\n  \"meetings</w>\": 9980,\n  \"meets</w>\": 5972,\n  \"meetthe\": 27575,\n  \"meetup</w>\": 15430,\n  \"meg\": 11500,\n  \"meg</w>\": 16186,\n  \"mega\": 15979,\n  \"mega</w>\": 9068,\n  \"megab\": 38103,\n  \"megadeth</w>\": 46741,\n  \"megal\": 37650,\n  \"megam\": 26073,\n  \"megan\": 19127,\n  \"megan</w>\": 11503,\n  \"megap\": 33624,\n  \"megat\": 35581,\n  \"megh\": 31192,\n  \"meghan\": 39939,\n  \"meghan</w>\": 18261,\n  \"meh\": 10512,\n  \"meh</w>\": 22211,\n  \"mehta</w>\": 25031,\n  \"mei\": 22564,\n  \"mei</w>\": 25198,\n  \"meier</w>\": 29812,\n  \"mein\": 28857,\n  \"mein</w>\": 21466,\n  \"meister</w>\": 28407,\n  \"mek</w>\": 44645,\n  \"mel\": 1902,\n  \"mel</w>\": 6834,\n  \"mela</w>\": 35032,\n  \"melan\": 22261,\n  \"melanch\": 44818,\n  \"melancholy</w>\": 47821,\n  \"melani\": 34031,\n  \"melania</w>\": 32796,\n  \"melanie</w>\": 22153,\n  \"melanoma</w>\": 40862,\n  \"melb\": 47007,\n  \"melb</w>\": 28980,\n  \"melbourne\": 28387,\n  \"melbourne</w>\": 6995,\n  \"melee</w>\": 45108,\n  \"meli\": 28885,\n  \"melinda</w>\": 46303,\n  \"melis\": 18913,\n  \"melissa\": 41866,\n  \"melissa</w>\": 13030,\n  \"mell\": 22531,\n  \"mell</w>\": 41583,\n  \"mello</w>\": 47594,\n  \"mellon</w>\": 45162,\n  \"mellow</w>\": 32034,\n  \"melo\": 10354,\n  \"melo</w>\": 22374,\n  \"melodic</w>\": 41877,\n  \"melodies</w>\": 38412,\n  \"melody</w>\": 19119,\n  \"melon</w>\": 12146,\n  \"melrose</w>\": 36296,\n  \"melt\": 22209,\n  \"melt</w>\": 15957,\n  \"meltdown</w>\": 30613,\n  \"melted</w>\": 23037,\n  \"melting</w>\": 19247,\n  \"melton</w>\": 46062,\n  \"melts</w>\": 31446,\n  \"melville</w>\": 46030,\n  \"melvin</w>\": 31544,\n  \"mely</w>\": 6373,\n  \"mem\": 4937,\n  \"mem</w>\": 34944,\n  \"memb\": 2114,\n  \"member\": 29566,\n  \"member</w>\": 1640,\n  \"members</w>\": 2567,\n  \"membership</w>\": 11562,\n  \"membrane</w>\": 34088,\n  \"meme\": 35157,\n  \"meme</w>\": 9169,\n  \"memes</w>\": 12828,\n  \"memo\": 15967,\n  \"memo</w>\": 19334,\n  \"memoir</w>\": 20532,\n  \"memoirs</w>\": 45311,\n  \"memor\": 1858,\n  \"memorab\": 26271,\n  \"memorabilia</w>\": 27488,\n  \"memorable</w>\": 13172,\n  \"memorial\": 16285,\n  \"memorial</w>\": 4642,\n  \"memorialday</w>\": 21598,\n  \"memoriam</w>\": 48191,\n  \"memories</w>\": 4304,\n  \"memory\": 44766,\n  \"memory</w>\": 5137,\n  \"memph\": 10285,\n  \"memphis\": 38432,\n  \"memphis</w>\": 11298,\n  \"men\": 1552,\n  \"men</w>\": 1656,\n  \"mena</w>\": 23052,\n  \"menace</w>\": 29949,\n  \"mend\": 8151,\n  \"mend</w>\": 46927,\n  \"mendel\": 49268,\n  \"mendes</w>\": 18060,\n  \"mendez</w>\": 48275,\n  \"mendo\": 19327,\n  \"mendoza</w>\": 23680,\n  \"meng\": 37102,\n  \"meng</w>\": 37450,\n  \"mening\": 46428,\n  \"menon</w>\": 38255,\n  \"menopau\": 34974,\n  \"menopause</w>\": 46026,\n  \"mens\": 16924,\n  \"mens</w>\": 10495,\n  \"mensfashion</w>\": 27578,\n  \"menstru\": 28345,\n  \"menstrual</w>\": 40915,\n  \"menswear</w>\": 18803,\n  \"ment\": 1585,\n  \"ment</w>\": 777,\n  \"mental\": 8611,\n  \"mental</w>\": 3448,\n  \"mentalhealth\": 20593,\n  \"mentalhealth</w>\": 13022,\n  \"mentality</w>\": 26647,\n  \"mentally</w>\": 14307,\n  \"mentary</w>\": 4468,\n  \"mentation</w>\": 9512,\n  \"mentday</w>\": 40397,\n  \"mente\": 40302,\n  \"mente</w>\": 36396,\n  \"mented</w>\": 9249,\n  \"menting</w>\": 14471,\n  \"mention\": 43881,\n  \"mention</w>\": 6762,\n  \"mentioned</w>\": 11948,\n  \"mentioning</w>\": 34290,\n  \"mentions</w>\": 12334,\n  \"mento</w>\": 30582,\n  \"mentor\": 45342,\n  \"mentor</w>\": 11642,\n  \"mentoring</w>\": 19610,\n  \"mentors</w>\": 20945,\n  \"mentorship</w>\": 33878,\n  \"ments</w>\": 1827,\n  \"menu</w>\": 6225,\n  \"menus</w>\": 33534,\n  \"meo</w>\": 30792,\n  \"meow\": 39965,\n  \"meow</w>\": 17246,\n  \"mep</w>\": 27095,\n  \"mer\": 1316,\n  \"mer</w>\": 2452,\n  \"mera</w>\": 20028,\n  \"merc\": 34357,\n  \"merc</w>\": 44399,\n  \"mercado</w>\": 45479,\n  \"merce\": 8409,\n  \"mercede\": 34959,\n  \"mercedes\": 26403,\n  \"mercedes</w>\": 10685,\n  \"mercedesam\": 40107,\n  \"mercedesbenz</w>\": 32347,\n  \"mercen\": 40301,\n  \"mercer</w>\": 21632,\n  \"merch</w>\": 11504,\n  \"merchandi\": 14954,\n  \"merchandise</w>\": 16808,\n  \"merchandising</w>\": 49196,\n  \"merchant</w>\": 19563,\n  \"merchants</w>\": 34427,\n  \"merci\": 23364,\n  \"merci</w>\": 29378,\n  \"mercur\": 11471,\n  \"mercury\": 45203,\n  \"mercury</w>\": 12653,\n  \"mercy\": 33249,\n  \"mercy</w>\": 10815,\n  \"mere\": 29657,\n  \"mere</w>\": 10342,\n  \"mered\": 24657,\n  \"mered</w>\": 32297,\n  \"meredith</w>\": 25103,\n  \"merely</w>\": 28718,\n  \"merge</w>\": 30406,\n  \"merged</w>\": 46492,\n  \"merger</w>\": 24744,\n  \"merging</w>\": 49256,\n  \"meri\": 17993,\n  \"meri</w>\": 36109,\n  \"meria</w>\": 48433,\n  \"meric</w>\": 27097,\n  \"merica</w>\": 30561,\n  \"meridi\": 37901,\n  \"meridian</w>\": 31195,\n  \"mering</w>\": 41060,\n  \"meringue</w>\": 41661,\n  \"merino</w>\": 42648,\n  \"merit</w>\": 20830,\n  \"merkel</w>\": 24715,\n  \"merle</w>\": 48586,\n  \"merlin</w>\": 26517,\n  \"merlot</w>\": 40424,\n  \"mermaid</w>\": 16064,\n  \"mermaids</w>\": 43617,\n  \"mero</w>\": 19097,\n  \"merr\": 48288,\n  \"merri\": 21462,\n  \"merrill</w>\": 47713,\n  \"merritt</w>\": 36462,\n  \"merry\": 14167,\n  \"merry</w>\": 5779,\n  \"merrychristmas</w>\": 19672,\n  \"mers</w>\": 4199,\n  \"mersal</w>\": 36711,\n  \"mersey\": 25248,\n  \"mersey</w>\": 46239,\n  \"merseyside</w>\": 35382,\n  \"mert</w>\": 48496,\n  \"merton</w>\": 35315,\n  \"mery</w>\": 40873,\n  \"meryl</w>\": 35787,\n  \"mes\": 28432,\n  \"mes</w>\": 3029,\n  \"mesa</w>\": 18956,\n  \"mese</w>\": 42018,\n  \"mesh</w>\": 15030,\n  \"mesm\": 18695,\n  \"mesmer\": 38435,\n  \"mesmeri\": 25985,\n  \"mesmerizing</w>\": 35637,\n  \"meso\": 25537,\n  \"mesqu\": 46819,\n  \"mess\": 2490,\n  \"mess</w>\": 8188,\n  \"message</w>\": 3918,\n  \"messages</w>\": 9390,\n  \"messaging</w>\": 23234,\n  \"messe</w>\": 40391,\n  \"messed</w>\": 23580,\n  \"messenger</w>\": 17389,\n  \"messi\": 19394,\n  \"messi</w>\": 11252,\n  \"messiah</w>\": 28737,\n  \"messing</w>\": 23144,\n  \"messy</w>\": 15987,\n  \"mest</w>\": 23780,\n  \"mester</w>\": 47349,\n  \"mesut</w>\": 49177,\n  \"met\": 5249,\n  \"met</w>\": 2340,\n  \"meta\": 14803,\n  \"meta</w>\": 22701,\n  \"metab\": 16150,\n  \"metabol\": 48389,\n  \"metaboli\": 25573,\n  \"metabolic</w>\": 34311,\n  \"metabolism</w>\": 27824,\n  \"metal\": 8935,\n  \"metal</w>\": 4044,\n  \"metall\": 19084,\n  \"metallic</w>\": 17257,\n  \"metallica</w>\": 24079,\n  \"metals</w>\": 21375,\n  \"metam\": 28862,\n  \"metamor\": 39030,\n  \"metamorpho\": 47601,\n  \"metaph\": 24189,\n  \"metaphor</w>\": 34233,\n  \"metast\": 41973,\n  \"mete\": 11226,\n  \"meteor\": 26429,\n  \"meteor</w>\": 26823,\n  \"meteoro\": 25948,\n  \"meteorologist</w>\": 42849,\n  \"meter</w>\": 10104,\n  \"meters</w>\": 13247,\n  \"metgala</w>\": 30089,\n  \"meth\": 21867,\n  \"meth</w>\": 26177,\n  \"methane</w>\": 37565,\n  \"metho\": 5770,\n  \"method</w>\": 10284,\n  \"methodist</w>\": 25165,\n  \"methodo\": 28488,\n  \"methodology</w>\": 37316,\n  \"methods</w>\": 12200,\n  \"methyl\": 48999,\n  \"metmuseum</w>\": 28207,\n  \"meto\": 25679,\n  \"metoo</w>\": 24722,\n  \"metr\": 15086,\n  \"metre</w>\": 27889,\n  \"metres</w>\": 19798,\n  \"metric</w>\": 19950,\n  \"metrical</w>\": 40704,\n  \"metrics</w>\": 24396,\n  \"metro\": 7257,\n  \"metro</w>\": 6784,\n  \"metroid</w>\": 39957,\n  \"metropolis</w>\": 40476,\n  \"metropolitan</w>\": 19013,\n  \"metry</w>\": 20039,\n  \"mets</w>\": 9633,\n  \"mett</w>\": 28081,\n  \"metz</w>\": 40506,\n  \"meu</w>\": 34520,\n  \"mew</w>\": 40368,\n  \"mex\": 3213,\n  \"mex</w>\": 18387,\n  \"mexic\": 31728,\n  \"mexican\": 37442,\n  \"mexican</w>\": 8186,\n  \"mexicans</w>\": 47729,\n  \"mexico\": 31834,\n  \"mexico</w>\": 4604,\n  \"mey\": 28584,\n  \"mey</w>\": 27777,\n  \"meyer</w>\": 13963,\n  \"meyers</w>\": 32326,\n  \"mez\": 30615,\n  \"mez</w>\": 46833,\n  \"mezz\": 38771,\n  \"mf\": 18199,\n  \"mf</w>\": 11067,\n  \"mfa</w>\": 24107,\n  \"mfc</w>\": 39474,\n  \"mfg</w>\": 21912,\n  \"mfw</w>\": 27309,\n  \"mg\": 10003,\n  \"mg</w>\": 8014,\n  \"mga</w>\": 23954,\n  \"mgm</w>\": 27572,\n  \"mgmt</w>\": 22288,\n  \"mgr</w>\": 31500,\n  \"mgs</w>\": 48073,\n  \"mgt</w>\": 48663,\n  \"mh\": 9962,\n  \"mh</w>\": 10834,\n  \"mha</w>\": 41944,\n  \"mhealth</w>\": 41225,\n  \"mhs</w>\": 28815,\n  \"mhz</w>\": 31550,\n  \"mi\": 714,\n  \"mi</w>\": 2251,\n  \"mia</w>\": 5852,\n  \"miam\": 31053,\n  \"miami\": 15106,\n  \"miami</w>\": 4891,\n  \"mian</w>\": 24792,\n  \"miaw</w>\": 36046,\n  \"mib</w>\": 48178,\n  \"mic\": 1213,\n  \"mic</w>\": 3816,\n  \"mica</w>\": 41551,\n  \"micah</w>\": 33870,\n  \"mice</w>\": 19030,\n  \"mich\": 25628,\n  \"mich</w>\": 23029,\n  \"micha\": 2083,\n  \"michael\": 6051,\n  \"michael</w>\": 2511,\n  \"michaela</w>\": 41897,\n  \"michaeljackson</w>\": 33532,\n  \"michaels</w>\": 23868,\n  \"michal\": 47144,\n  \"miche\": 37966,\n  \"micheal</w>\": 43709,\n  \"michel\": 5158,\n  \"michel</w>\": 17153,\n  \"michelangelo</w>\": 41245,\n  \"michele</w>\": 20642,\n  \"michelin</w>\": 26330,\n  \"michelle\": 19028,\n  \"michelle</w>\": 8625,\n  \"michi\": 5658,\n  \"michigan\": 32344,\n  \"michigan</w>\": 6296,\n  \"mick\": 15171,\n  \"mick</w>\": 12592,\n  \"mickey\": 41813,\n  \"mickey</w>\": 13053,\n  \"micky</w>\": 43011,\n  \"micro\": 3160,\n  \"micro</w>\": 11374,\n  \"microbes</w>\": 44671,\n  \"microbi\": 19496,\n  \"microbial</w>\": 30335,\n  \"microbiology</w>\": 35348,\n  \"microbiome</w>\": 35148,\n  \"micron\": 48742,\n  \"microphone</w>\": 24643,\n  \"micropoetry</w>\": 35997,\n  \"microscope</w>\": 29114,\n  \"microscopy</w>\": 38431,\n  \"microsof\": 42424,\n  \"microsoft\": 38650,\n  \"microsoft</w>\": 7254,\n  \"microwave</w>\": 24240,\n  \"mics</w>\": 16554,\n  \"mid\": 2192,\n  \"mid</w>\": 4734,\n  \"midcentury</w>\": 48988,\n  \"midd\": 2983,\n  \"midday</w>\": 23390,\n  \"middle\": 9849,\n  \"middle</w>\": 3694,\n  \"middleeast</w>\": 32783,\n  \"middles\": 29769,\n  \"middlesbrough</w>\": 32436,\n  \"middlesex</w>\": 39154,\n  \"middleton</w>\": 23627,\n  \"middleweight</w>\": 35829,\n  \"midfield</w>\": 28116,\n  \"midfielder</w>\": 13423,\n  \"midget</w>\": 30734,\n  \"midi\": 39496,\n  \"midi</w>\": 27326,\n  \"midland</w>\": 24822,\n  \"midlands</w>\": 18062,\n  \"midnight\": 35746,\n  \"midnight</w>\": 6302,\n  \"mids</w>\": 40821,\n  \"midst</w>\": 24752,\n  \"midsummer</w>\": 35234,\n  \"midterm</w>\": 34365,\n  \"midterms</w>\": 32015,\n  \"midtown</w>\": 26069,\n  \"midway</w>\": 26536,\n  \"midweek</w>\": 29120,\n  \"midwest</w>\": 16627,\n  \"midwi\": 44802,\n  \"midwife</w>\": 37681,\n  \"midwives</w>\": 42355,\n  \"mie\": 20865,\n  \"mie</w>\": 10555,\n  \"miento</w>\": 46482,\n  \"mier</w>\": 36490,\n  \"mies</w>\": 8840,\n  \"miff\": 49398,\n  \"mig</w>\": 28743,\n  \"might</w>\": 2727,\n  \"mighty\": 26632,\n  \"mighty</w>\": 7815,\n  \"mign\": 41678,\n  \"migos</w>\": 44640,\n  \"migr\": 3736,\n  \"migra\": 28186,\n  \"migraine</w>\": 35360,\n  \"migrant</w>\": 18902,\n  \"migrants</w>\": 15814,\n  \"migrate</w>\": 41804,\n  \"migrating</w>\": 43604,\n  \"migration</w>\": 11891,\n  \"migu\": 12279,\n  \"miguel\": 33672,\n  \"miguel</w>\": 14436,\n  \"miho</w>\": 46870,\n  \"mii</w>\": 39896,\n  \"mik\": 15096,\n  \"mik</w>\": 46203,\n  \"mika\": 28609,\n  \"mika</w>\": 25185,\n  \"mike\": 5884,\n  \"mike</w>\": 3178,\n  \"mikel</w>\": 48865,\n  \"mikequind\": 33508,\n  \"mikequindazzi</w>\": 33551,\n  \"mikey\": 34934,\n  \"mikey</w>\": 23368,\n  \"mikha\": 30999,\n  \"mikhail</w>\": 38327,\n  \"miki</w>\": 48863,\n  \"miko</w>\": 35413,\n  \"miku</w>\": 37703,\n  \"mil\": 1469,\n  \"mil</w>\": 12826,\n  \"mila</w>\": 26183,\n  \"milan\": 30380,\n  \"milan</w>\": 8552,\n  \"milano</w>\": 18585,\n  \"milb</w>\": 42248,\n  \"mild</w>\": 16085,\n  \"mildly</w>\": 49059,\n  \"mile\": 7833,\n  \"mile</w>\": 6243,\n  \"mileage</w>\": 30579,\n  \"miler</w>\": 44680,\n  \"miles</w>\": 3446,\n  \"milestone</w>\": 13485,\n  \"milestones</w>\": 34025,\n  \"miley\": 25336,\n  \"miley</w>\": 14321,\n  \"mileycyrus</w>\": 28528,\n  \"milf</w>\": 45386,\n  \"milford</w>\": 35840,\n  \"mili\": 16698,\n  \"miliband</w>\": 41440,\n  \"milit\": 3715,\n  \"militant</w>\": 33629,\n  \"militants</w>\": 23974,\n  \"military\": 24498,\n  \"military</w>\": 4323,\n  \"militi\": 46625,\n  \"militia</w>\": 32114,\n  \"milk\": 13409,\n  \"milk</w>\": 5205,\n  \"milkshake</w>\": 29066,\n  \"milky\": 37320,\n  \"milky</w>\": 21120,\n  \"milkyway</w>\": 43246,\n  \"mill\": 4221,\n  \"mill</w>\": 6637,\n  \"milla</w>\": 49381,\n  \"millan\": 34930,\n  \"millan</w>\": 22188,\n  \"millar</w>\": 41851,\n  \"mille</w>\": 34066,\n  \"millen\": 48501,\n  \"millenni\": 10406,\n  \"millennial</w>\": 28357,\n  \"millennials</w>\": 18804,\n  \"millennium</w>\": 21116,\n  \"miller\": 21699,\n  \"miller</w>\": 5733,\n  \"milli\": 5340,\n  \"millie</w>\": 29283,\n  \"milling</w>\": 39133,\n  \"million\": 13154,\n  \"million</w>\": 2506,\n  \"millionaire</w>\": 25179,\n  \"millionaires</w>\": 47159,\n  \"millions</w>\": 8492,\n  \"mills</w>\": 10331,\n  \"millwall</w>\": 35902,\n  \"milly</w>\": 45794,\n  \"milne</w>\": 44590,\n  \"milner</w>\": 45230,\n  \"milo</w>\": 24548,\n  \"milton\": 39004,\n  \"milton</w>\": 17360,\n  \"milwau\": 13452,\n  \"milwaukee</w>\": 14259,\n  \"mim</w>\": 39379,\n  \"mimi</w>\": 27086,\n  \"mimic\": 47116,\n  \"mimic</w>\": 46519,\n  \"mimo\": 45551,\n  \"min\": 771,\n  \"min</w>\": 3331,\n  \"mina</w>\": 15281,\n  \"minaj</w>\": 25136,\n  \"minal</w>\": 40222,\n  \"minat</w>\": 33275,\n  \"mince</w>\": 32396,\n  \"mind\": 5890,\n  \"mind</w>\": 2575,\n  \"mindanao</w>\": 44228,\n  \"minded</w>\": 21330,\n  \"mindful</w>\": 28457,\n  \"mindfulness</w>\": 15707,\n  \"minding</w>\": 45337,\n  \"minds</w>\": 9244,\n  \"mindset</w>\": 14217,\n  \"mindy\": 46875,\n  \"mindy</w>\": 38551,\n  \"mine\": 20149,\n  \"mine</w>\": 3347,\n  \"minecraft</w>\": 15678,\n  \"mined</w>\": 48034,\n  \"minent</w>\": 12533,\n  \"miner\": 14109,\n  \"miner</w>\": 26572,\n  \"mineral</w>\": 17692,\n  \"minerals</w>\": 21169,\n  \"miners</w>\": 22119,\n  \"mines</w>\": 16211,\n  \"ming\": 10868,\n  \"ming</w>\": 2107,\n  \"mingham</w>\": 7590,\n  \"mingle</w>\": 38437,\n  \"mingly</w>\": 36909,\n  \"mington\": 49283,\n  \"mington</w>\": 23119,\n  \"minh</w>\": 48734,\n  \"minho</w>\": 21318,\n  \"mini\": 1810,\n  \"mini</w>\": 3954,\n  \"miniature\": 44298,\n  \"miniature</w>\": 16377,\n  \"miniatures</w>\": 38816,\n  \"minic\": 31522,\n  \"minim\": 10005,\n  \"minimal</w>\": 18458,\n  \"minimalism</w>\": 42594,\n  \"minimalist</w>\": 26641,\n  \"minimize</w>\": 38697,\n  \"minimum</w>\": 12244,\n  \"minindia</w>\": 28458,\n  \"mining</w>\": 8473,\n  \"minion</w>\": 28622,\n  \"minions</w>\": 27035,\n  \"minis\": 33409,\n  \"minis</w>\": 35976,\n  \"minister\": 25688,\n  \"minister</w>\": 3569,\n  \"ministerial</w>\": 33008,\n  \"ministers</w>\": 16406,\n  \"ministries</w>\": 27895,\n  \"ministry</w>\": 8742,\n  \"mink</w>\": 42017,\n  \"minn\": 45991,\n  \"minn</w>\": 47318,\n  \"minne\": 7083,\n  \"minneapolis</w>\": 16977,\n  \"minneso\": 9380,\n  \"minnesota</w>\": 9968,\n  \"minnie</w>\": 24493,\n  \"mino</w>\": 22791,\n  \"minogue</w>\": 44202,\n  \"minor</w>\": 8522,\n  \"minorities</w>\": 28119,\n  \"minority</w>\": 16210,\n  \"minors</w>\": 36789,\n  \"mins</w>\": 6196,\n  \"minsk</w>\": 46151,\n  \"minster</w>\": 11189,\n  \"mint\": 48084,\n  \"mint</w>\": 7506,\n  \"minted</w>\": 49377,\n  \"minton</w>\": 20050,\n  \"minu\": 29064,\n  \"minus</w>\": 15358,\n  \"minute\": 28931,\n  \"minute</w>\": 4497,\n  \"minutes</w>\": 3056,\n  \"mio</w>\": 26366,\n  \"mir\": 2750,\n  \"mir</w>\": 6585,\n  \"mira\": 21665,\n  \"mira</w>\": 22762,\n  \"mirac\": 13685,\n  \"miracle\": 49208,\n  \"miracle</w>\": 11543,\n  \"miracles</w>\": 23478,\n  \"miraculous</w>\": 38671,\n  \"mirage</w>\": 28679,\n  \"mirai</w>\": 49060,\n  \"mirand\": 32367,\n  \"miranda</w>\": 17590,\n  \"mire\": 38140,\n  \"mire</w>\": 30140,\n  \"miri\": 22273,\n  \"miriam</w>\": 30950,\n  \"miro\": 34851,\n  \"miro</w>\": 48317,\n  \"mirren</w>\": 47600,\n  \"mirro\": 48500,\n  \"mirror\": 29823,\n  \"mirror</w>\": 7220,\n  \"mirrors</w>\": 21823,\n  \"mirza</w>\": 36440,\n  \"mis\": 866,\n  \"mis</w>\": 11239,\n  \"mischief</w>\": 33896,\n  \"misconceptions</w>\": 48681,\n  \"misconduct</w>\": 30601,\n  \"mise\": 46567,\n  \"mise</w>\": 17267,\n  \"miser\": 33394,\n  \"miserable</w>\": 26196,\n  \"misery</w>\": 28360,\n  \"mises</w>\": 24390,\n  \"misfits</w>\": 42708,\n  \"mish\": 15494,\n  \"mish</w>\": 20981,\n  \"misha</w>\": 35434,\n  \"mishra</w>\": 33042,\n  \"misleading</w>\": 30862,\n  \"mism</w>\": 15948,\n  \"miso\": 27657,\n  \"miso</w>\": 33441,\n  \"misogy\": 31315,\n  \"misogyny</w>\": 48415,\n  \"miss\": 6984,\n  \"miss</w>\": 1526,\n  \"missal</w>\": 38337,\n  \"missed</w>\": 3955,\n  \"misses</w>\": 15844,\n  \"missi\": 3008,\n  \"missile</w>\": 14411,\n  \"missiles</w>\": 27868,\n  \"missin</w>\": 36209,\n  \"missing\": 23509,\n  \"missing</w>\": 3423,\n  \"mission\": 12738,\n  \"mission</w>\": 2406,\n  \"missionaries</w>\": 40580,\n  \"missionary</w>\": 27915,\n  \"missions</w>\": 6990,\n  \"mississ\": 26483,\n  \"mississauga</w>\": 28393,\n  \"mississi\": 11687,\n  \"mississippi</w>\": 12232,\n  \"missou\": 30710,\n  \"missoula</w>\": 48549,\n  \"missouri</w>\": 11835,\n  \"missuni\": 26347,\n  \"missuniverse</w>\": 28766,\n  \"missy\": 48105,\n  \"missy</w>\": 31515,\n  \"missyou</w>\": 45799,\n  \"mist\": 12610,\n  \"mist</w>\": 11946,\n  \"mistak\": 20478,\n  \"mistake</w>\": 11303,\n  \"mistaken</w>\": 29182,\n  \"mistakenly</w>\": 48494,\n  \"mistakes</w>\": 12824,\n  \"mister\": 26949,\n  \"mister</w>\": 18895,\n  \"mistle\": 46800,\n  \"mistletoe</w>\": 48569,\n  \"mistre\": 42039,\n  \"mistress</w>\": 24349,\n  \"mists</w>\": 28636,\n  \"misty</w>\": 18799,\n  \"misunderstood</w>\": 41574,\n  \"misuse</w>\": 40970,\n  \"mit\": 3303,\n  \"mit</w>\": 4551,\n  \"mita</w>\": 47514,\n  \"mitage</w>\": 27964,\n  \"mitch\": 6969,\n  \"mitch</w>\": 14150,\n  \"mitchell\": 39339,\n  \"mitchell</w>\": 9007,\n  \"mite</w>\": 26929,\n  \"mith\": 21752,\n  \"mith</w>\": 17948,\n  \"miti\": 17857,\n  \"mitigate</w>\": 42273,\n  \"mitigation</w>\": 35514,\n  \"mito\": 38254,\n  \"mitochondri\": 42132,\n  \"mitra</w>\": 47703,\n  \"mits</w>\": 24086,\n  \"mitsu\": 17905,\n  \"mitsubi\": 21604,\n  \"mitsubishi</w>\": 23030,\n  \"mitt\": 17321,\n  \"mitt</w>\": 21341,\n  \"mitted</w>\": 10307,\n  \"mitting</w>\": 27938,\n  \"mitz\": 41827,\n  \"mium</w>\": 35891,\n  \"miwx</w>\": 43941,\n  \"mix\": 3210,\n  \"mix</w>\": 3285,\n  \"mixed\": 29376,\n  \"mixed</w>\": 6780,\n  \"mixer</w>\": 17200,\n  \"mixers</w>\": 39175,\n  \"mixes</w>\": 19061,\n  \"mixing</w>\": 15588,\n  \"mixtape</w>\": 11044,\n  \"mixture</w>\": 28286,\n  \"miy\": 25695,\n  \"miya</w>\": 36257,\n  \"miz\": 20881,\n  \"miz</w>\": 30795,\n  \"mize</w>\": 19076,\n  \"mized</w>\": 43418,\n  \"mizing</w>\": 38715,\n  \"mizz\": 19985,\n  \"mizzou</w>\": 26165,\n  \"mj\": 13117,\n  \"mj</w>\": 14733,\n  \"mk\": 11581,\n  \"mk</w>\": 8937,\n  \"mke</w>\": 36642,\n  \"mkt</w>\": 24814,\n  \"ml\": 3627,\n  \"ml</w>\": 5780,\n  \"mla</w>\": 16723,\n  \"mlas</w>\": 48464,\n  \"mlb\": 21039,\n  \"mlb</w>\": 7482,\n  \"mley</w>\": 40329,\n  \"mlg</w>\": 45801,\n  \"mlin</w>\": 24556,\n  \"mlk</w>\": 17941,\n  \"mlkday</w>\": 39905,\n  \"mlm</w>\": 37611,\n  \"mln</w>\": 18971,\n  \"mlp</w>\": 23620,\n  \"mlpfi\": 45475,\n  \"mlpfim</w>\": 45640,\n  \"mls</w>\": 13077,\n  \"mm\": 1028,\n  \"mm</w>\": 2848,\n  \"mma\": 34140,\n  \"mma</w>\": 6096,\n  \"mmc</w>\": 44253,\n  \"mme</w>\": 13105,\n  \"mmed</w>\": 19570,\n  \"mmer\": 35717,\n  \"mmer</w>\": 7508,\n  \"mmers</w>\": 28128,\n  \"mmes</w>\": 42862,\n  \"mmi</w>\": 34147,\n  \"mming\": 21038,\n  \"mming</w>\": 16507,\n  \"mmings</w>\": 31357,\n  \"mmit</w>\": 41050,\n  \"mmj</w>\": 43015,\n  \"mmm\": 37908,\n  \"mmm</w>\": 7641,\n  \"mmmm\": 36312,\n  \"mmmm</w>\": 13180,\n  \"mmmmm</w>\": 21808,\n  \"mmmmmm</w>\": 43740,\n  \"mmo</w>\": 30418,\n  \"mmon</w>\": 41131,\n  \"mmor\": 36657,\n  \"mmorpg</w>\": 39476,\n  \"mms</w>\": 37803,\n  \"mmva</w>\": 42666,\n  \"mmy\": 28837,\n  \"mmy</w>\": 8722,\n  \"mn\": 5086,\n  \"mn</w>\": 4057,\n  \"mna</w>\": 34877,\n  \"mnd</w>\": 44776,\n  \"mnet</w>\": 34129,\n  \"mnf</w>\": 41105,\n  \"mnl</w>\": 32980,\n  \"mnleg</w>\": 42653,\n  \"mns</w>\": 39040,\n  \"mnt</w>\": 21477,\n  \"mntwins</w>\": 45448,\n  \"mnwild</w>\": 39044,\n  \"mnwx</w>\": 39592,\n  \"mo\": 617,\n  \"mo</w>\": 2080,\n  \"moa</w>\": 33174,\n  \"moana</w>\": 43241,\n  \"mob\": 2818,\n  \"mob</w>\": 12754,\n  \"mobi\": 9451,\n  \"mobil\": 26343,\n  \"mobil</w>\": 29815,\n  \"mobile\": 12935,\n  \"mobile</w>\": 3451,\n  \"mobiles</w>\": 44302,\n  \"mobili\": 20770,\n  \"mobility</w>\": 12546,\n  \"mobilization</w>\": 48916,\n  \"moby</w>\": 47219,\n  \"moc\": 41439,\n  \"moc</w>\": 36992,\n  \"mocha</w>\": 28425,\n  \"mochi</w>\": 47973,\n  \"mock\": 15641,\n  \"mock</w>\": 12759,\n  \"mocked</w>\": 47400,\n  \"mocking\": 28692,\n  \"mocking</w>\": 37870,\n  \"mocks</w>\": 35142,\n  \"mod\": 6362,\n  \"mod</w>\": 10893,\n  \"moda</w>\": 25814,\n  \"modal</w>\": 33157,\n  \"mode\": 20402,\n  \"mode</w>\": 6493,\n  \"model\": 4591,\n  \"model</w>\": 2863,\n  \"modeled</w>\": 39527,\n  \"modeling</w>\": 13706,\n  \"modelling</w>\": 19946,\n  \"models</w>\": 6176,\n  \"moder\": 2894,\n  \"moderate</w>\": 16435,\n  \"moderated</w>\": 27928,\n  \"moderating</w>\": 34242,\n  \"moderator</w>\": 32659,\n  \"modern\": 11706,\n  \"modern</w>\": 4077,\n  \"modernart</w>\": 34417,\n  \"moderni\": 24328,\n  \"modernism</w>\": 39601,\n  \"modernist</w>\": 36773,\n  \"modernization</w>\": 47294,\n  \"modes</w>\": 30454,\n  \"modest</w>\": 25436,\n  \"modi\": 9047,\n  \"modi</w>\": 7774,\n  \"modification</w>\": 37630,\n  \"modified</w>\": 17964,\n  \"modo</w>\": 36820,\n  \"mods</w>\": 23843,\n  \"modu\": 9036,\n  \"modular</w>\": 22437,\n  \"module</w>\": 16757,\n  \"modules</w>\": 30575,\n  \"moe\": 38655,\n  \"moe</w>\": 17938,\n  \"mof\": 30798,\n  \"moff\": 27160,\n  \"mog</w>\": 42362,\n  \"moga\": 41732,\n  \"mogadishu</w>\": 45133,\n  \"mogul</w>\": 41320,\n  \"moh\": 18979,\n  \"moh</w>\": 35388,\n  \"moha\": 46892,\n  \"moham\": 7923,\n  \"mohamed</w>\": 18472,\n  \"mohammad</w>\": 19926,\n  \"mohammed</w>\": 16168,\n  \"mohan\": 26521,\n  \"mohan</w>\": 23586,\n  \"mohawk</w>\": 34942,\n  \"mohd</w>\": 49094,\n  \"mohsin</w>\": 48861,\n  \"moi\": 20691,\n  \"moi</w>\": 21825,\n  \"moil</w>\": 30349,\n  \"moines</w>\": 32091,\n  \"moist\": 19831,\n  \"moist</w>\": 33263,\n  \"moisture</w>\": 20412,\n  \"moisturi\": 25942,\n  \"moj\": 34505,\n  \"moja\": 49055,\n  \"mojito</w>\": 46830,\n  \"mojo</w>\": 25204,\n  \"mok\": 49146,\n  \"mol\": 4246,\n  \"mol</w>\": 31582,\n  \"mold</w>\": 21846,\n  \"molding</w>\": 46274,\n  \"moldova</w>\": 47317,\n  \"mole\": 9927,\n  \"mole</w>\": 23529,\n  \"molecular</w>\": 19370,\n  \"molecule</w>\": 39233,\n  \"molecules</w>\": 35643,\n  \"molina</w>\": 34201,\n  \"mollie</w>\": 48203,\n  \"molly\": 24368,\n  \"molly</w>\": 12573,\n  \"molo\": 41510,\n  \"mology</w>\": 32255,\n  \"molten</w>\": 46071,\n  \"moly</w>\": 47083,\n  \"mom\": 1614,\n  \"mom</w>\": 2543,\n  \"moma</w>\": 33605,\n  \"mombasa</w>\": 40340,\n  \"moment\": 12197,\n  \"moment</w>\": 2495,\n  \"momento</w>\": 30078,\n  \"moments</w>\": 5251,\n  \"momentum</w>\": 15722,\n  \"momlife</w>\": 43825,\n  \"momma</w>\": 14508,\n  \"mommy</w>\": 12456,\n  \"momo\": 48490,\n  \"momo</w>\": 25980,\n  \"moms\": 28446,\n  \"moms</w>\": 10042,\n  \"momsdemand</w>\": 33744,\n  \"mon\": 749,\n  \"mon</w>\": 2173,\n  \"mona</w>\": 19143,\n  \"monaco</w>\": 14938,\n  \"monaghan</w>\": 39797,\n  \"monarch\": 27235,\n  \"monarch</w>\": 22619,\n  \"monarchs</w>\": 36750,\n  \"monarchy</w>\": 47503,\n  \"monaster\": 19422,\n  \"monastery</w>\": 21850,\n  \"monc\": 34847,\n  \"moncton</w>\": 44962,\n  \"mond\": 14522,\n  \"mond</w>\": 4475,\n  \"monday\": 6205,\n  \"monday</w>\": 2098,\n  \"mondaymorning</w>\": 40089,\n  \"mondaymotiv\": 45488,\n  \"mondaymotivation</w>\": 8198,\n  \"mondaymotivaton</w>\": 47034,\n  \"mondays</w>\": 13815,\n  \"monde</w>\": 29339,\n  \"mondo</w>\": 36207,\n  \"monds</w>\": 20317,\n  \"mone</w>\": 25990,\n  \"monet</w>\": 24499,\n  \"monetary</w>\": 26394,\n  \"moneti\": 38056,\n  \"money\": 12743,\n  \"money</w>\": 2327,\n  \"mong</w>\": 43566,\n  \"monger</w>\": 38928,\n  \"mongers</w>\": 27670,\n  \"mongo\": 20680,\n  \"mongolia</w>\": 27144,\n  \"mongolian</w>\": 46335,\n  \"moni\": 46851,\n  \"monia</w>\": 31161,\n  \"monic\": 30893,\n  \"monica</w>\": 13540,\n  \"monit\": 9014,\n  \"monitor</w>\": 10198,\n  \"monitored</w>\": 45828,\n  \"monitoring</w>\": 11030,\n  \"monitors</w>\": 30478,\n  \"monk\": 30557,\n  \"monk</w>\": 16424,\n  \"monkey\": 29597,\n  \"monkey</w>\": 9465,\n  \"monkeys</w>\": 15781,\n  \"monks</w>\": 29090,\n  \"monmouth</w>\": 36929,\n  \"mono\": 8220,\n  \"mono</w>\": 22537,\n  \"monochrome</w>\": 25576,\n  \"monogram</w>\": 39665,\n  \"monologue</w>\": 47776,\n  \"monopoly</w>\": 25241,\n  \"monoxide</w>\": 49314,\n  \"monro\": 45750,\n  \"monroe</w>\": 13625,\n  \"mons</w>\": 19885,\n  \"monsanto</w>\": 37592,\n  \"monsi\": 46677,\n  \"monsieur</w>\": 48879,\n  \"monsoon</w>\": 18872,\n  \"monsta</w>\": 30718,\n  \"monstax</w>\": 45631,\n  \"monste\": 47045,\n  \"monster\": 14454,\n  \"monster</w>\": 6060,\n  \"monsters</w>\": 11546,\n  \"mont\": 5186,\n  \"mont</w>\": 5382,\n  \"montag\": 37202,\n  \"montage</w>\": 32325,\n  \"montal\": 42126,\n  \"montan\": 28405,\n  \"montana</w>\": 11436,\n  \"monte\": 8711,\n  \"monte</w>\": 14667,\n  \"montene\": 28538,\n  \"montenegro</w>\": 30378,\n  \"monter\": 36673,\n  \"monterey</w>\": 23388,\n  \"monterrey</w>\": 45254,\n  \"montess\": 43205,\n  \"montessori</w>\": 45443,\n  \"montgom\": 13852,\n  \"montgomery</w>\": 14951,\n  \"month\": 7680,\n  \"month</w>\": 1924,\n  \"monthly</w>\": 8764,\n  \"months</w>\": 3109,\n  \"monthsary</w>\": 42420,\n  \"monton</w>\": 41961,\n  \"montp\": 39523,\n  \"montre\": 8434,\n  \"montreal</w>\": 9262,\n  \"montrose</w>\": 42347,\n  \"monty\": 43997,\n  \"monty</w>\": 24038,\n  \"monu\": 9748,\n  \"monument</w>\": 12019,\n  \"monumental</w>\": 31297,\n  \"monuments</w>\": 26916,\n  \"mony</w>\": 4117,\n  \"monza</w>\": 40380,\n  \"moo\": 4953,\n  \"moo</w>\": 24626,\n  \"mood\": 42358,\n  \"mood</w>\": 5394,\n  \"moods</w>\": 43727,\n  \"moody</w>\": 17170,\n  \"moom\": 36887,\n  \"moon\": 6334,\n  \"moon</w>\": 3293,\n  \"mooney</w>\": 37942,\n  \"moonlight</w>\": 20001,\n  \"moons</w>\": 29887,\n  \"moonshine</w>\": 46706,\n  \"moor\": 14817,\n  \"moor</w>\": 11877,\n  \"moore\": 28613,\n  \"moore</w>\": 6708,\n  \"moors</w>\": 32577,\n  \"moose\": 37562,\n  \"moose</w>\": 17338,\n  \"moot</w>\": 46895,\n  \"mop</w>\": 33900,\n  \"mopar</w>\": 41166,\n  \"mor\": 657,\n  \"mor</w>\": 18614,\n  \"mora</w>\": 29262,\n  \"moral</w>\": 11246,\n  \"morale</w>\": 39404,\n  \"morales</w>\": 27117,\n  \"morality</w>\": 34133,\n  \"morally</w>\": 42519,\n  \"morals</w>\": 46223,\n  \"moran</w>\": 21557,\n  \"moray</w>\": 44569,\n  \"more\": 5434,\n  \"more</w>\": 750,\n  \"morecam\": 37305,\n  \"morecambe</w>\": 43414,\n  \"mored</w>\": 20195,\n  \"moreland</w>\": 44135,\n  \"moreno</w>\": 24826,\n  \"morethan\": 30889,\n  \"morg\": 34284,\n  \"morgan\": 15432,\n  \"morgan</w>\": 6075,\n  \"morgen</w>\": 35106,\n  \"mori\": 25710,\n  \"mori</w>\": 29514,\n  \"moris\": 43131,\n  \"moritz</w>\": 45594,\n  \"morley</w>\": 40439,\n  \"mormon</w>\": 27715,\n  \"morn</w>\": 22393,\n  \"mornin</w>\": 28327,\n  \"morning\": 10769,\n  \"morning</w>\": 1119,\n  \"mornings</w>\": 12106,\n  \"moro</w>\": 31613,\n  \"moroc\": 11996,\n  \"moroccan</w>\": 27546,\n  \"morocco</w>\": 15228,\n  \"moron</w>\": 31875,\n  \"morons</w>\": 46477,\n  \"morow</w>\": 40779,\n  \"morph\": 23915,\n  \"morph</w>\": 41700,\n  \"morphe\": 38978,\n  \"morpho\": 38622,\n  \"morrha\": 43044,\n  \"morri\": 9876,\n  \"morris\": 22560,\n  \"morris</w>\": 9090,\n  \"morrison\": 40961,\n  \"morrison</w>\": 14094,\n  \"morrisons</w>\": 40965,\n  \"morrissey</w>\": 30040,\n  \"morro</w>\": 48363,\n  \"morrow</w>\": 21611,\n  \"mors</w>\": 13064,\n  \"morse</w>\": 25282,\n  \"mort\": 24257,\n  \"mort</w>\": 30583,\n  \"mortal\": 31883,\n  \"mortal</w>\": 14680,\n  \"mortality</w>\": 20347,\n  \"mortar</w>\": 27258,\n  \"mortg\": 12069,\n  \"mortgage</w>\": 13988,\n  \"mortgages</w>\": 45391,\n  \"mortimer</w>\": 47836,\n  \"morton</w>\": 20698,\n  \"morty</w>\": 37391,\n  \"mory</w>\": 22633,\n  \"mos\": 28658,\n  \"mos</w>\": 9593,\n  \"mosa\": 14164,\n  \"mosa</w>\": 23809,\n  \"mosaic</w>\": 17506,\n  \"mosch\": 47003,\n  \"mosco\": 9840,\n  \"moscow</w>\": 10371,\n  \"moseley</w>\": 47080,\n  \"moses</w>\": 18451,\n  \"mosley</w>\": 46228,\n  \"mosqu\": 15215,\n  \"mosque</w>\": 12694,\n  \"mosques</w>\": 41214,\n  \"mosquit\": 39699,\n  \"mosquito</w>\": 25083,\n  \"mosquitoes</w>\": 41870,\n  \"moss\": 25107,\n  \"moss</w>\": 12815,\n  \"most\": 7034,\n  \"most</w>\": 1096,\n  \"mostly</w>\": 8829,\n  \"mosul</w>\": 29165,\n  \"mot\": 16352,\n  \"mot</w>\": 15452,\n  \"mota</w>\": 42499,\n  \"motd</w>\": 46232,\n  \"motel</w>\": 26191,\n  \"moth\": 33208,\n  \"moth</w>\": 11736,\n  \"mother\": 7455,\n  \"mother</w>\": 3050,\n  \"motherhood</w>\": 32274,\n  \"motherland</w>\": 46774,\n  \"mothers</w>\": 10546,\n  \"mothersday</w>\": 15583,\n  \"motherwell</w>\": 48104,\n  \"moths</w>\": 29086,\n  \"moti\": 38210,\n  \"motif</w>\": 35373,\n  \"motion\": 32139,\n  \"motion</w>\": 7860,\n  \"motiv\": 3183,\n  \"motivate</w>\": 26771,\n  \"motivated</w>\": 16521,\n  \"motivates</w>\": 44684,\n  \"motivating</w>\": 37720,\n  \"motivation\": 26117,\n  \"motivation</w>\": 4193,\n  \"motivational\": 32832,\n  \"motivational</w>\": 20472,\n  \"motivationmonday</w>\": 28703,\n  \"motive</w>\": 36669,\n  \"motley</w>\": 42553,\n  \"motm</w>\": 41192,\n  \"moto\": 10646,\n  \"moto</w>\": 11431,\n  \"motocross</w>\": 34562,\n  \"motogp</w>\": 16615,\n  \"motor\": 3975,\n  \"motor</w>\": 7659,\n  \"motorbike</w>\": 33341,\n  \"motorcycle</w>\": 10297,\n  \"motorcycles</w>\": 24869,\n  \"motoring</w>\": 44491,\n  \"motorists</w>\": 32766,\n  \"motorola</w>\": 33738,\n  \"motors</w>\": 14989,\n  \"motorsport</w>\": 18371,\n  \"motorsports</w>\": 24264,\n  \"motorway</w>\": 31808,\n  \"motown</w>\": 32685,\n  \"mott\": 44570,\n  \"mott</w>\": 21708,\n  \"motto</w>\": 23338,\n  \"mou\": 2809,\n  \"mou</w>\": 25289,\n  \"moud</w>\": 37698,\n  \"moul\": 25725,\n  \"mould</w>\": 36743,\n  \"moulin</w>\": 47656,\n  \"moun\": 2023,\n  \"mound</w>\": 21414,\n  \"mount\": 20553,\n  \"mount</w>\": 5532,\n  \"mountain\": 14547,\n  \"mountain</w>\": 3965,\n  \"mountaine\": 24841,\n  \"mountaineer</w>\": 49255,\n  \"mountains</w>\": 5873,\n  \"mounted</w>\": 17897,\n  \"mounting</w>\": 29910,\n  \"mounts</w>\": 36767,\n  \"mour\": 9053,\n  \"mour</w>\": 42446,\n  \"moured</w>\": 29555,\n  \"mourinho</w>\": 18536,\n  \"mourn</w>\": 33592,\n  \"mourning</w>\": 24169,\n  \"mourns</w>\": 42811,\n  \"mous\": 24837,\n  \"mous</w>\": 17425,\n  \"mouse\": 33032,\n  \"mouse</w>\": 9301,\n  \"mousse</w>\": 31869,\n  \"moustache</w>\": 32795,\n  \"mouth\": 15152,\n  \"mouth</w>\": 4932,\n  \"mouths</w>\": 38518,\n  \"mov</w>\": 23950,\n  \"move\": 16624,\n  \"move</w>\": 2783,\n  \"moved</w>\": 6997,\n  \"movember</w>\": 23474,\n  \"movement</w>\": 5208,\n  \"movements</w>\": 19665,\n  \"mover</w>\": 37673,\n  \"movers</w>\": 33957,\n  \"moves</w>\": 6880,\n  \"movi\": 1707,\n  \"movic</w>\": 43838,\n  \"movie\": 11247,\n  \"movie</w>\": 2016,\n  \"movies</w>\": 4772,\n  \"moving\": 32160,\n  \"moving</w>\": 3584,\n  \"mow\": 31006,\n  \"mow</w>\": 36329,\n  \"mower</w>\": 30895,\n  \"mowing</w>\": 46424,\n  \"mowx</w>\": 44263,\n  \"moy\": 27276,\n  \"moy</w>\": 34205,\n  \"moyes</w>\": 37119,\n  \"moz\": 14761,\n  \"moz</w>\": 43738,\n  \"mozam\": 26648,\n  \"mozambique</w>\": 28831,\n  \"mozart</w>\": 22132,\n  \"mozz\": 26317,\n  \"mozzarella</w>\": 27845,\n  \"mp\": 1037,\n  \"mp</w>\": 1246,\n  \"mpa</w>\": 30749,\n  \"mpc</w>\": 38560,\n  \"mpd</w>\": 33814,\n  \"mped</w>\": 28134,\n  \"mper</w>\": 22803,\n  \"mpg\": 39830,\n  \"mpg</w>\": 37454,\n  \"mpgvip</w>\": 42149,\n  \"mph</w>\": 5306,\n  \"mpi</w>\": 43263,\n  \"mping</w>\": 27999,\n  \"mple</w>\": 21139,\n  \"mplo\": 47071,\n  \"mpls</w>\": 34298,\n  \"mpo</w>\": 33674,\n  \"mpp</w>\": 39570,\n  \"mps</w>\": 5504,\n  \"mption</w>\": 9717,\n  \"mpton</w>\": 27448,\n  \"mpu\": 47156,\n  \"mpus</w>\": 25864,\n  \"mpy</w>\": 17192,\n  \"mq\": 19103,\n  \"mqm</w>\": 24687,\n  \"mr\": 3139,\n  \"mr</w>\": 1982,\n  \"mra\": 44568,\n  \"mrc</w>\": 25897,\n  \"mri</w>\": 24773,\n  \"mrs\": 25003,\n  \"mrs</w>\": 4255,\n  \"mrt</w>\": 30256,\n  \"mru</w>\": 22370,\n  \"mrw</w>\": 15303,\n  \"ms\": 3525,\n  \"ms</w>\": 988,\n  \"msa</w>\": 36306,\n  \"msc\": 31826,\n  \"msc</w>\": 20529,\n  \"msd\": 25804,\n  \"msd</w>\": 36407,\n  \"msdhoni</w>\": 32850,\n  \"msf</w>\": 36239,\n  \"msg\": 44430,\n  \"msg</w>\": 10928,\n  \"msh\": 41751,\n  \"msi\": 43597,\n  \"msi</w>\": 45278,\n  \"msk\": 38501,\n  \"msl</w>\": 42736,\n  \"msm</w>\": 22210,\n  \"msn\": 18824,\n  \"msn</w>\": 41042,\n  \"msnbc</w>\": 20245,\n  \"mson\": 27773,\n  \"mson</w>\": 12298,\n  \"msp\": 41445,\n  \"msp</w>\": 22318,\n  \"mss\": 42136,\n  \"mss</w>\": 48610,\n  \"mst</w>\": 26335,\n  \"msu\": 26763,\n  \"msu</w>\": 17298,\n  \"mswx</w>\": 42957,\n  \"msy</w>\": 43919,\n  \"mt\": 4252,\n  \"mt</w>\": 3284,\n  \"mta</w>\": 28691,\n  \"mtb\": 48306,\n  \"mtb</w>\": 18747,\n  \"mtc</w>\": 42482,\n  \"mtg\": 49142,\n  \"mtg</w>\": 13648,\n  \"mth</w>\": 48151,\n  \"mtl</w>\": 22135,\n  \"mtn\": 26041,\n  \"mtn</w>\": 18953,\n  \"mtr</w>\": 46650,\n  \"mts</w>\": 38751,\n  \"mtv\": 8099,\n  \"mtv</w>\": 12555,\n  \"mtvbr\": 47258,\n  \"mtvhottest</w>\": 16751,\n  \"mtvstars</w>\": 19948,\n  \"mu\": 670,\n  \"mu</w>\": 6411,\n  \"mua</w>\": 21395,\n  \"muay\": 44910,\n  \"muaythai</w>\": 47763,\n  \"mubarak</w>\": 17957,\n  \"muc</w>\": 49115,\n  \"much\": 14300,\n  \"much</w>\": 1238,\n  \"mucha</w>\": 42191,\n  \"muchas</w>\": 26278,\n  \"mucho</w>\": 19864,\n  \"muck\": 44731,\n  \"muck</w>\": 45330,\n  \"mud\": 17491,\n  \"mud</w>\": 11673,\n  \"mudder</w>\": 49104,\n  \"muddy</w>\": 21524,\n  \"mue\": 44383,\n  \"mue</w>\": 40717,\n  \"mueller\": 46863,\n  \"mueller</w>\": 14719,\n  \"muen\": 48646,\n  \"muer\": 33840,\n  \"muf\": 33852,\n  \"mufc</w>\": 9013,\n  \"muffin</w>\": 22696,\n  \"muffins</w>\": 25922,\n  \"mufti</w>\": 44930,\n  \"mug\": 16339,\n  \"mug</w>\": 9722,\n  \"mugabe</w>\": 36441,\n  \"mughal</w>\": 37508,\n  \"mugs</w>\": 22852,\n  \"mugshot</w>\": 40028,\n  \"muh\": 36335,\n  \"muh</w>\": 46475,\n  \"muham\": 10043,\n  \"muhammad</w>\": 12259,\n  \"muir\": 44650,\n  \"muir</w>\": 24745,\n  \"muj\": 44635,\n  \"muk\": 17327,\n  \"muk</w>\": 32600,\n  \"mukher\": 34575,\n  \"mukherjee</w>\": 37862,\n  \"mul\": 1899,\n  \"mul</w>\": 43193,\n  \"mula</w>\": 40937,\n  \"mulator</w>\": 17463,\n  \"mulberry</w>\": 39221,\n  \"mule</w>\": 28695,\n  \"mull\": 17313,\n  \"mull</w>\": 35310,\n  \"mulled</w>\": 44641,\n  \"mullen</w>\": 30797,\n  \"muller</w>\": 33956,\n  \"mullet</w>\": 35010,\n  \"mulligan</w>\": 44336,\n  \"mullins</w>\": 41265,\n  \"mult\": 34219,\n  \"multi\": 3947,\n  \"multi</w>\": 6400,\n  \"multic\": 21683,\n  \"multicul\": 28004,\n  \"multicultural</w>\": 34667,\n  \"multil\": 27975,\n  \"multimedia</w>\": 27977,\n  \"multin\": 38996,\n  \"multinational</w>\": 46540,\n  \"multip\": 40314,\n  \"multiplayer</w>\": 27460,\n  \"multiple</w>\": 6470,\n  \"multipurpose</w>\": 47665,\n  \"multit\": 27814,\n  \"multitasking</w>\": 48684,\n  \"mulus</w>\": 26180,\n  \"mum\": 15565,\n  \"mum</w>\": 4030,\n  \"mumb\": 5850,\n  \"mumbai\": 24279,\n  \"mumbai</w>\": 6971,\n  \"mumford</w>\": 46184,\n  \"mummy</w>\": 16301,\n  \"mums</w>\": 17868,\n  \"mun\": 2617,\n  \"mun</w>\": 21059,\n  \"muna</w>\": 48424,\n  \"munch\": 23587,\n  \"munch</w>\": 33299,\n  \"munchies</w>\": 44324,\n  \"munchkin</w>\": 41305,\n  \"mund</w>\": 14244,\n  \"mundo</w>\": 20990,\n  \"muni\": 27327,\n  \"muni</w>\": 39795,\n  \"munich</w>\": 13526,\n  \"munici\": 12159,\n  \"municipal\": 43667,\n  \"municipal</w>\": 16600,\n  \"municipality</w>\": 29987,\n  \"munition</w>\": 32668,\n  \"munro</w>\": 36501,\n  \"munster</w>\": 27201,\n  \"mup</w>\": 21966,\n  \"muppet</w>\": 40598,\n  \"muppets</w>\": 40187,\n  \"mups</w>\": 42195,\n  \"mur\": 2144,\n  \"mur</w>\": 18293,\n  \"mura\": 45176,\n  \"mural</w>\": 12315,\n  \"murals</w>\": 31499,\n  \"murder\": 28136,\n  \"murder</w>\": 5787,\n  \"murdered</w>\": 13158,\n  \"murderer</w>\": 26956,\n  \"murderers</w>\": 48472,\n  \"murdering</w>\": 36055,\n  \"murders</w>\": 22409,\n  \"murdoch</w>\": 29037,\n  \"murphy\": 48976,\n  \"murphy</w>\": 8914,\n  \"murray\": 31978,\n  \"murray</w>\": 7513,\n  \"murs</w>\": 38783,\n  \"mus\": 2198,\n  \"mus</w>\": 8103,\n  \"musa</w>\": 30540,\n  \"musc\": 5696,\n  \"muscat</w>\": 33322,\n  \"muscle\": 27323,\n  \"muscle</w>\": 9269,\n  \"muscles</w>\": 16786,\n  \"muscular</w>\": 30606,\n  \"muse\": 2369,\n  \"muse</w>\": 15686,\n  \"museo</w>\": 36457,\n  \"muses</w>\": 48243,\n  \"museu\": 27087,\n  \"museum\": 15602,\n  \"museum</w>\": 2786,\n  \"museums</w>\": 15542,\n  \"museumweek</w>\": 37996,\n  \"mush\": 7635,\n  \"mushroom</w>\": 13011,\n  \"mushrooms</w>\": 14730,\n  \"musi\": 15628,\n  \"music\": 4110,\n  \"music</w>\": 1179,\n  \"musica</w>\": 26668,\n  \"musical\": 36002,\n  \"musical</w>\": 5173,\n  \"musically</w>\": 48893,\n  \"musicals</w>\": 36974,\n  \"musichistory</w>\": 37890,\n  \"musician</w>\": 11179,\n  \"musicians</w>\": 12498,\n  \"musicislife</w>\": 43311,\n  \"musicmonday</w>\": 35887,\n  \"musicvideo</w>\": 26764,\n  \"musik</w>\": 32986,\n  \"musings</w>\": 44961,\n  \"musique</w>\": 42250,\n  \"musk\": 32143,\n  \"musk</w>\": 19063,\n  \"muskete\": 32775,\n  \"musketeers</w>\": 37993,\n  \"musko\": 34987,\n  \"muskoka</w>\": 40832,\n  \"musli\": 4958,\n  \"muslim\": 43795,\n  \"muslim</w>\": 7060,\n  \"muslims</w>\": 10513,\n  \"muss\": 41493,\n  \"mussels</w>\": 33393,\n  \"must\": 6783,\n  \"must</w>\": 2048,\n  \"mustache</w>\": 23451,\n  \"mustaf\": 23596,\n  \"mustafa</w>\": 29000,\n  \"mustang\": 42361,\n  \"mustang</w>\": 13309,\n  \"mustangs</w>\": 22500,\n  \"mustard</w>\": 15794,\n  \"muster</w>\": 47361,\n  \"mustread</w>\": 28978,\n  \"mut\": 12598,\n  \"mut</w>\": 22839,\n  \"mutant</w>\": 28384,\n  \"mutation</w>\": 38626,\n  \"mutations</w>\": 39651,\n  \"mute</w>\": 31252,\n  \"muted</w>\": 48028,\n  \"muth</w>\": 34280,\n  \"mutil\": 39950,\n  \"mutt</w>\": 45924,\n  \"mutu\": 17574,\n  \"mutual</w>\": 15055,\n  \"mutuals</w>\": 31158,\n  \"muy</w>\": 44625,\n  \"mv\": 10580,\n  \"mv</w>\": 8269,\n  \"mvc</w>\": 40549,\n  \"mvp</w>\": 8905,\n  \"mw\": 16725,\n  \"mw</w>\": 11206,\n  \"mwc</w>\": 24289,\n  \"mwf</w>\": 48565,\n  \"mx\": 21947,\n  \"mx</w>\": 9575,\n  \"my\": 1152,\n  \"my</w>\": 607,\n  \"mya</w>\": 31401,\n  \"myal\": 42735,\n  \"myan\": 13761,\n  \"myanmar</w>\": 14764,\n  \"myart</w>\": 38826,\n  \"myco\": 48362,\n  \"mydayin\": 41896,\n  \"mydayinla</w>\": 42801,\n  \"mydubai</w>\": 43475,\n  \"mye\": 27551,\n  \"myel\": 40084,\n  \"myers</w>\": 15993,\n  \"myjaps</w>\": 47939,\n  \"myle\": 43700,\n  \"myles</w>\": 25511,\n  \"mylife</w>\": 30537,\n  \"mylittle\": 37757,\n  \"mylittlepony</w>\": 45107,\n  \"myo\": 16206,\n  \"myr\": 20272,\n  \"myra</w>\": 35694,\n  \"myri\": 34972,\n  \"myrt\": 47785,\n  \"myrtle</w>\": 27768,\n  \"mys</w>\": 11724,\n  \"myself</w>\": 3245,\n  \"mysore</w>\": 44924,\n  \"myspace</w>\": 41382,\n  \"myster\": 4669,\n  \"mysteries</w>\": 20605,\n  \"mysterious</w>\": 12650,\n  \"mystery\": 39828,\n  \"mystery</w>\": 6711,\n  \"mysti\": 28711,\n  \"mystic\": 36264,\n  \"mystic</w>\": 23722,\n  \"mystical</w>\": 34122,\n  \"myth\": 20322,\n  \"myth</w>\": 13878,\n  \"mythical</w>\": 34377,\n  \"mytho\": 43857,\n  \"mythology</w>\": 22496,\n  \"myths</w>\": 18675,\n  \"mz\": 29509,\n  \"mz</w>\": 33400,\n  \"mzan\": 36322,\n  \"mzansi</w>\": 43301,\n  \"mÃ¡\": 36842,\n  \"mÃ©\": 21890,\n  \"mÃ©xico</w>\": 46159,\n  \"mÃ¼\": 28142,\n  \"mÃ¼n\": 41235,\n  \"n\": 77,\n  \"n</w>\": 333,\n  \"na\": 1097,\n  \"na</w>\": 1272,\n  \"naa</w>\": 37738,\n  \"naacp</w>\": 32176,\n  \"nab\": 6951,\n  \"nab</w>\": 19440,\n  \"nabe\": 35111,\n  \"naby</w>\": 24800,\n  \"nac\": 14557,\n  \"nac</w>\": 18950,\n  \"nach\": 12168,\n  \"nach</w>\": 43622,\n  \"nacho</w>\": 35647,\n  \"nachos</w>\": 32847,\n  \"nacht</w>\": 37261,\n  \"nacional</w>\": 38782,\n  \"nad\": 6204,\n  \"nad</w>\": 43928,\n  \"nada</w>\": 31683,\n  \"nadal</w>\": 20814,\n  \"nade\": 24908,\n  \"nadi\": 30512,\n  \"nadia</w>\": 27487,\n  \"nadine</w>\": 23356,\n  \"nadu</w>\": 20936,\n  \"nae</w>\": 19374,\n  \"naf\": 16161,\n  \"naf</w>\": 45956,\n  \"nafta</w>\": 43123,\n  \"nag\": 6694,\n  \"nag</w>\": 23902,\n  \"naga\": 45953,\n  \"naga</w>\": 38997,\n  \"nagar</w>\": 17490,\n  \"nage</w>\": 41219,\n  \"nago\": 38349,\n  \"nagoya</w>\": 43303,\n  \"nagpur</w>\": 43328,\n  \"nah\": 26421,\n  \"nah</w>\": 11129,\n  \"nahi</w>\": 35244,\n  \"nai\": 6230,\n  \"nai</w>\": 10692,\n  \"naia</w>\": 31340,\n  \"naidu</w>\": 42429,\n  \"naija</w>\": 16326,\n  \"naik</w>\": 34424,\n  \"nail\": 19459,\n  \"nail</w>\": 9059,\n  \"nailart</w>\": 43532,\n  \"nailed</w>\": 19035,\n  \"nails</w>\": 8469,\n  \"nair</w>\": 27107,\n  \"naira</w>\": 39450,\n  \"naire</w>\": 48892,\n  \"nairobi</w>\": 17756,\n  \"nais\": 46396,\n  \"naissance</w>\": 44761,\n  \"naive</w>\": 43362,\n  \"naj\": 30985,\n  \"naji\": 32589,\n  \"nak\": 9248,\n  \"nak</w>\": 25550,\n  \"naked\": 46371,\n  \"naked</w>\": 11478,\n  \"naku\": 39864,\n  \"nal\": 14132,\n  \"nal</w>\": 3119,\n  \"nale</w>\": 27198,\n  \"nall</w>\": 32869,\n  \"nally</w>\": 26158,\n  \"nam\": 1410,\n  \"nam</w>\": 12344,\n  \"nama</w>\": 39586,\n  \"naman</w>\": 27635,\n  \"namaste</w>\": 35549,\n  \"name\": 18160,\n  \"name</w>\": 1981,\n  \"named</w>\": 3194,\n  \"nameis\": 40831,\n  \"nament</w>\": 3916,\n  \"naments</w>\": 16540,\n  \"names</w>\": 6130,\n  \"namesake</w>\": 41298,\n  \"nami\": 20393,\n  \"namibia</w>\": 23731,\n  \"naming</w>\": 19367,\n  \"namjoon</w>\": 31986,\n  \"namm</w>\": 35524,\n  \"namo\": 46013,\n  \"namo</w>\": 24854,\n  \"nan\": 4375,\n  \"nan</w>\": 7750,\n  \"nana</w>\": 18761,\n  \"nanaimo</w>\": 40518,\n  \"nancy\": 21511,\n  \"nancy</w>\": 11425,\n  \"nand\": 20435,\n  \"nandez</w>\": 12764,\n  \"nando\": 46044,\n  \"nang\": 48148,\n  \"nani</w>\": 27980,\n  \"nanny</w>\": 31104,\n  \"nano\": 15835,\n  \"nano</w>\": 22006,\n  \"nanop\": 34177,\n  \"nanotechnology</w>\": 42235,\n  \"nanow\": 46734,\n  \"nant</w>\": 22526,\n  \"nantes</w>\": 47533,\n  \"nantucket</w>\": 41573,\n  \"nao</w>\": 39319,\n  \"naom\": 34955,\n  \"naomi</w>\": 20173,\n  \"nap\": 6568,\n  \"nap</w>\": 11012,\n  \"napa</w>\": 20545,\n  \"napier</w>\": 40875,\n  \"napkin</w>\": 38930,\n  \"naples</w>\": 23560,\n  \"napo\": 18715,\n  \"napol\": 20122,\n  \"napoleon</w>\": 24969,\n  \"napoli</w>\": 22445,\n  \"napp\": 11359,\n  \"napping</w>\": 37657,\n  \"naps</w>\": 31317,\n  \"naq\": 46453,\n  \"nar\": 2977,\n  \"nar</w>\": 20145,\n  \"nara</w>\": 33823,\n  \"narcis\": 25229,\n  \"narcissi\": 35442,\n  \"narco\": 38461,\n  \"nard</w>\": 18216,\n  \"nare\": 34853,\n  \"naren\": 8468,\n  \"narendr\": 9807,\n  \"narendra</w>\": 25848,\n  \"narendramodi</w>\": 9853,\n  \"narnia</w>\": 48693,\n  \"narr\": 11845,\n  \"narrated</w>\": 43609,\n  \"narrative</w>\": 15933,\n  \"narratives</w>\": 35117,\n  \"narrator</w>\": 46529,\n  \"narrow\": 24006,\n  \"narrow</w>\": 16652,\n  \"narrowly</w>\": 29747,\n  \"naruto</w>\": 22732,\n  \"nas\": 3090,\n  \"nas</w>\": 15250,\n  \"nasa</w>\": 6841,\n  \"nasal</w>\": 42853,\n  \"nascar\": 25723,\n  \"nascar</w>\": 7868,\n  \"nasdaq</w>\": 26629,\n  \"nash\": 6771,\n  \"nash</w>\": 13620,\n  \"nasheed</w>\": 49176,\n  \"nashgrier</w>\": 33372,\n  \"nashville\": 45356,\n  \"nashville</w>\": 8585,\n  \"nasi</w>\": 47987,\n  \"nasir</w>\": 47509,\n  \"nassau</w>\": 34048,\n  \"nasser</w>\": 43559,\n  \"nasty\": 32930,\n  \"nasty</w>\": 8709,\n  \"nat\": 1276,\n  \"nat</w>\": 11310,\n  \"nata</w>\": 39392,\n  \"natal</w>\": 28516,\n  \"natali\": 20296,\n  \"natalia</w>\": 32978,\n  \"natalie\": 36634,\n  \"natalie</w>\": 13595,\n  \"natash\": 48701,\n  \"natasha</w>\": 23093,\n  \"nate\": 26643,\n  \"nate</w>\": 7587,\n  \"natgeo\": 33009,\n  \"natgeo</w>\": 25046,\n  \"nath\": 22203,\n  \"nath</w>\": 19843,\n  \"nathan\": 13028,\n  \"nathan</w>\": 9711,\n  \"nathanfillion</w>\": 47422,\n  \"nathaniel</w>\": 32667,\n  \"nati\": 1060,\n  \"nati</w>\": 13384,\n  \"natic</w>\": 44944,\n  \"natin</w>\": 44358,\n  \"nation\": 2317,\n  \"nation</w>\": 2670,\n  \"national\": 3126,\n  \"national</w>\": 1362,\n  \"nationalbestfriend\": 42222,\n  \"nationaldogday</w>\": 32227,\n  \"nationalism</w>\": 29867,\n  \"nationalist</w>\": 25058,\n  \"nationality</w>\": 44451,\n  \"nationally</w>\": 15130,\n  \"nationalpark</w>\": 33060,\n  \"nationalparks</w>\": 41204,\n  \"nationals</w>\": 10784,\n  \"nationaltrust</w>\": 34051,\n  \"nations</w>\": 7654,\n  \"nationwide</w>\": 13795,\n  \"native\": 20639,\n  \"native</w>\": 4562,\n  \"natives</w>\": 36060,\n  \"nativity</w>\": 33988,\n  \"natl\": 39225,\n  \"natl</w>\": 34465,\n  \"nato</w>\": 13139,\n  \"nats</w>\": 21106,\n  \"natu\": 2775,\n  \"natur\": 6800,\n  \"natural\": 13198,\n  \"natural</w>\": 3288,\n  \"naturally</w>\": 12995,\n  \"naturals</w>\": 44686,\n  \"nature\": 9382,\n  \"nature</w>\": 2625,\n  \"naturelovers</w>\": 41514,\n  \"naturephotography</w>\": 22533,\n  \"natures</w>\": 15616,\n  \"natureuk</w>\": 46193,\n  \"nau\": 5955,\n  \"nau</w>\": 32878,\n  \"naught</w>\": 41001,\n  \"naughty\": 47255,\n  \"naughty</w>\": 15101,\n  \"nautical</w>\": 31660,\n  \"nav\": 3413,\n  \"nav</w>\": 25308,\n  \"navajo</w>\": 35523,\n  \"naval\": 44725,\n  \"naval</w>\": 13273,\n  \"navar\": 24848,\n  \"navarro</w>\": 37104,\n  \"nave\": 42704,\n  \"naveen</w>\": 43837,\n  \"naver</w>\": 32534,\n  \"navi\": 16159,\n  \"navi</w>\": 44848,\n  \"navig\": 12507,\n  \"navigate</w>\": 24400,\n  \"navigating</w>\": 33134,\n  \"navigation</w>\": 20148,\n  \"navigator</w>\": 38910,\n  \"navis</w>\": 36377,\n  \"navratri</w>\": 45428,\n  \"navy\": 28414,\n  \"navy</w>\": 5598,\n  \"naw\": 16259,\n  \"naw</w>\": 30500,\n  \"nawaz\": 49161,\n  \"nawaz</w>\": 19523,\n  \"nax\": 38299,\n  \"nay\": 11704,\n  \"nay</w>\": 16182,\n  \"naya</w>\": 38917,\n  \"nayanth\": 38157,\n  \"nayanthara</w>\": 45184,\n  \"naz\": 6363,\n  \"naz</w>\": 35534,\n  \"nazi</w>\": 12972,\n  \"nazis</w>\": 21778,\n  \"nb\": 6459,\n  \"nb</w>\": 6813,\n  \"nba\": 22524,\n  \"nba</w>\": 5139,\n  \"nbad\": 43458,\n  \"nbaf\": 30127,\n  \"nbafinals</w>\": 33803,\n  \"nbap\": 41956,\n  \"nbaplayoffs</w>\": 43860,\n  \"nbat\": 46291,\n  \"nbc\": 9352,\n  \"nbc</w>\": 8799,\n  \"nbd</w>\": 24526,\n  \"nbl</w>\": 42652,\n  \"nc\": 5021,\n  \"nc</w>\": 4911,\n  \"nca\": 6921,\n  \"ncaa</w>\": 9418,\n  \"ncbd</w>\": 47221,\n  \"ncc\": 33195,\n  \"ncc</w>\": 36686,\n  \"ncds</w>\": 47573,\n  \"ncfc</w>\": 31274,\n  \"ncis</w>\": 33617,\n  \"ncpol</w>\": 40562,\n  \"ncr</w>\": 38474,\n  \"ncs</w>\": 42689,\n  \"nct\": 27723,\n  \"nct</w>\": 20319,\n  \"ncwx</w>\": 36166,\n  \"nd\": 5625,\n  \"nd</w>\": 1764,\n  \"nda</w>\": 32862,\n  \"ndc</w>\": 47564,\n  \"ndi</w>\": 48229,\n  \"ndp</w>\": 19257,\n  \"nds</w>\": 31347,\n  \"ndtv</w>\": 26261,\n  \"ne\": 557,\n  \"ne</w>\": 1422,\n  \"nea</w>\": 24068,\n  \"neal\": 33652,\n  \"neal</w>\": 16730,\n  \"near\": 11296,\n  \"near</w>\": 2252,\n  \"nearby</w>\": 13314,\n  \"nearest</w>\": 18985,\n  \"nearing</w>\": 26571,\n  \"nearly</w>\": 4816,\n  \"nears</w>\": 37710,\n  \"neat\": 43201,\n  \"neat</w>\": 15465,\n  \"neath</w>\": 18315,\n  \"neau</w>\": 31559,\n  \"neb\": 40209,\n  \"nebra\": 13371,\n  \"nebraska</w>\": 14565,\n  \"nebu\": 49295,\n  \"nebula</w>\": 22532,\n  \"nec\": 25109,\n  \"nec</w>\": 22992,\n  \"necess\": 6961,\n  \"necessarily</w>\": 25853,\n  \"necessary</w>\": 8955,\n  \"necessities</w>\": 43483,\n  \"necessity</w>\": 33163,\n  \"neck\": 6066,\n  \"neck</w>\": 6906,\n  \"necklace</w>\": 7385,\n  \"necklaces</w>\": 32276,\n  \"necks</w>\": 29701,\n  \"nectar</w>\": 33683,\n  \"ned\": 16030,\n  \"ned</w>\": 1369,\n  \"nederland</w>\": 49058,\n  \"nee\": 20494,\n  \"nee</w>\": 10601,\n  \"need\": 3229,\n  \"need</w>\": 1262,\n  \"needed</w>\": 4049,\n  \"needing</w>\": 22894,\n  \"needle\": 44490,\n  \"needle</w>\": 19886,\n  \"needles</w>\": 27250,\n  \"needless</w>\": 39984,\n  \"needs</w>\": 2536,\n  \"needy</w>\": 30150,\n  \"neel\": 33092,\n  \"neel</w>\": 46043,\n  \"neer\": 34245,\n  \"nees</w>\": 47248,\n  \"neet</w>\": 46362,\n  \"neg\": 5513,\n  \"negan</w>\": 42623,\n  \"negative</w>\": 8869,\n  \"negatively</w>\": 40254,\n  \"negativity</w>\": 34658,\n  \"neglec\": 18827,\n  \"neglect</w>\": 33680,\n  \"neglected</w>\": 31893,\n  \"negli\": 32594,\n  \"negligence</w>\": 45658,\n  \"negoti\": 10216,\n  \"negotiate</w>\": 32969,\n  \"negotiating</w>\": 35510,\n  \"negotiation</w>\": 36504,\n  \"negotiations</w>\": 20433,\n  \"negr\": 42190,\n  \"negro</w>\": 26554,\n  \"neh\": 40416,\n  \"neh</w>\": 41697,\n  \"neha</w>\": 44463,\n  \"nehru</w>\": 30316,\n  \"nei\": 9366,\n  \"neigh\": 4061,\n  \"neighb\": 6534,\n  \"neighbor\": 7759,\n  \"neighbor</w>\": 14485,\n  \"neighborhood</w>\": 9471,\n  \"neighborhoods</w>\": 26713,\n  \"neighboring</w>\": 44754,\n  \"neighbors</w>\": 13037,\n  \"neighbour\": 15858,\n  \"neighbour</w>\": 23719,\n  \"neighbourhood</w>\": 20312,\n  \"neighbours</w>\": 17594,\n  \"neil\": 13591,\n  \"neil</w>\": 8030,\n  \"neilhimself</w>\": 45682,\n  \"neill</w>\": 19324,\n  \"neither</w>\": 14398,\n  \"nek</w>\": 47727,\n  \"neko</w>\": 47066,\n  \"nel\": 5476,\n  \"nel</w>\": 2693,\n  \"nell\": 27081,\n  \"nell</w>\": 8117,\n  \"nelly</w>\": 21166,\n  \"nels</w>\": 19296,\n  \"nelson\": 24774,\n  \"nelson</w>\": 8586,\n  \"nem</w>\": 45153,\n  \"neman</w>\": 48553,\n  \"neme\": 30993,\n  \"nemesis</w>\": 37811,\n  \"nemo</w>\": 30441,\n  \"nen\": 17817,\n  \"nen</w>\": 15451,\n  \"nene</w>\": 44167,\n  \"neo\": 14562,\n  \"neo</w>\": 11017,\n  \"neon\": 21043,\n  \"neon</w>\": 13919,\n  \"neonatal</w>\": 46464,\n  \"neop\": 49069,\n  \"nep\": 20739,\n  \"nep</w>\": 41960,\n  \"nepal\": 25597,\n  \"nepal</w>\": 10066,\n  \"nepali</w>\": 47579,\n  \"neph\": 27926,\n  \"nephe\": 41810,\n  \"nephew</w>\": 11689,\n  \"nephews</w>\": 43747,\n  \"nephro\": 43054,\n  \"neptune</w>\": 30566,\n  \"ner\": 2064,\n  \"ner</w>\": 998,\n  \"nerd\": 24452,\n  \"nerd</w>\": 12273,\n  \"nerds</w>\": 22609,\n  \"nerdy</w>\": 33124,\n  \"nered</w>\": 17583,\n  \"nerf</w>\": 42914,\n  \"nering</w>\": 20226,\n  \"nero</w>\": 29048,\n  \"ners</w>\": 2129,\n  \"nerve</w>\": 18571,\n  \"nerves</w>\": 27813,\n  \"nervous</w>\": 13928,\n  \"nery</w>\": 48597,\n  \"nes\": 5457,\n  \"nes</w>\": 4980,\n  \"nesburg</w>\": 27159,\n  \"nese</w>\": 32220,\n  \"ness\": 7187,\n  \"ness</w>\": 1294,\n  \"nesses</w>\": 20107,\n  \"nessy</w>\": 32939,\n  \"nest\": 20302,\n  \"nest</w>\": 8719,\n  \"nesting</w>\": 28860,\n  \"nestle</w>\": 43967,\n  \"nestled</w>\": 38107,\n  \"nests</w>\": 41133,\n  \"net\": 1851,\n  \"net</w>\": 2315,\n  \"netany\": 23137,\n  \"netanyahu</w>\": 23583,\n  \"netball</w>\": 19761,\n  \"netes</w>\": 44335,\n  \"netfli\": 6304,\n  \"netflix\": 35325,\n  \"netflix</w>\": 6600,\n  \"nether\": 9946,\n  \"netherlands</w>\": 11060,\n  \"neti\": 43980,\n  \"netneutrality</w>\": 47794,\n  \"nets</w>\": 8582,\n  \"nett\": 23403,\n  \"nett</w>\": 6975,\n  \"nette</w>\": 13271,\n  \"network\": 23285,\n  \"network</w>\": 3304,\n  \"networking</w>\": 9818,\n  \"networks</w>\": 10004,\n  \"neu\": 3855,\n  \"neu</w>\": 43342,\n  \"neue</w>\": 45764,\n  \"neur\": 19001,\n  \"neur</w>\": 31976,\n  \"neural</w>\": 26388,\n  \"neuro\": 7401,\n  \"neuro</w>\": 36000,\n  \"neurological</w>\": 41718,\n  \"neurology</w>\": 43197,\n  \"neurons</w>\": 40442,\n  \"neuroscience</w>\": 23381,\n  \"neutr\": 17207,\n  \"neutral</w>\": 17011,\n  \"neutrality</w>\": 26511,\n  \"neutron</w>\": 44056,\n  \"nev\": 10236,\n  \"nev</w>\": 43645,\n  \"neva</w>\": 43304,\n  \"nevada</w>\": 13499,\n  \"neve\": 44099,\n  \"neve</w>\": 44023,\n  \"never\": 6746,\n  \"never</w>\": 1426,\n  \"neveragain</w>\": 45053,\n  \"neverforget</w>\": 19242,\n  \"nevergiveup</w>\": 42497,\n  \"neverland</w>\": 41483,\n  \"nevertheless</w>\": 48355,\n  \"nevertrump</w>\": 47494,\n  \"neville</w>\": 19269,\n  \"nevis</w>\": 43670,\n  \"new\": 1218,\n  \"new</w>\": 686,\n  \"newark</w>\": 20240,\n  \"newbie</w>\": 45427,\n  \"newborn</w>\": 18320,\n  \"newbury</w>\": 34169,\n  \"newcastle\": 41955,\n  \"newcastle</w>\": 9302,\n  \"newcomer</w>\": 30648,\n  \"newcomers</w>\": 44037,\n  \"newe\": 40068,\n  \"newell</w>\": 41436,\n  \"newer</w>\": 33099,\n  \"newest</w>\": 4990,\n  \"newfound\": 25250,\n  \"newfoundland</w>\": 28079,\n  \"newh\": 18546,\n  \"newin\": 31911,\n  \"newjersey</w>\": 32621,\n  \"newly\": 42186,\n  \"newly</w>\": 7056,\n  \"newman</w>\": 15815,\n  \"newmarket</w>\": 38617,\n  \"newmexico</w>\": 35238,\n  \"newmusic\": 32510,\n  \"newmusic</w>\": 17201,\n  \"newor\": 25969,\n  \"neworleans</w>\": 31205,\n  \"newport\": 42580,\n  \"newport</w>\": 14846,\n  \"newprofile\": 14633,\n  \"newprofilepic</w>\": 14754,\n  \"newrelease</w>\": 34793,\n  \"news\": 6216,\n  \"news</w>\": 1120,\n  \"newsat</w>\": 43979,\n  \"newsc\": 28656,\n  \"newscast</w>\": 45031,\n  \"newsle\": 10727,\n  \"newsletter</w>\": 11069,\n  \"newsnow</w>\": 48650,\n  \"newsp\": 7109,\n  \"newspaper</w>\": 8786,\n  \"newspapers</w>\": 22423,\n  \"newsroom</w>\": 23200,\n  \"newt</w>\": 37224,\n  \"newton\": 33122,\n  \"newton</w>\": 12606,\n  \"newtown</w>\": 31747,\n  \"newyear\": 22161,\n  \"newyear</w>\": 12999,\n  \"newyearseve</w>\": 37587,\n  \"newyork\": 18140,\n  \"newyork</w>\": 10454,\n  \"newyorkcity</w>\": 30460,\n  \"newyorker</w>\": 39732,\n  \"newzealand</w>\": 21117,\n  \"nex\": 6897,\n  \"nex</w>\": 39720,\n  \"next\": 12434,\n  \"next</w>\": 1131,\n  \"nextgen</w>\": 41933,\n  \"nexus</w>\": 19053,\n  \"ney\": 3857,\n  \"ney</w>\": 1438,\n  \"neymar</w>\": 21878,\n  \"neys</w>\": 12616,\n  \"nez</w>\": 27388,\n  \"nf\": 15195,\n  \"nf</w>\": 25643,\n  \"nfamily</w>\": 20098,\n  \"nfc</w>\": 23695,\n  \"nffc</w>\": 27893,\n  \"nfl\": 11219,\n  \"nfl</w>\": 4691,\n  \"nfldraft</w>\": 25002,\n  \"ng\": 10352,\n  \"ng</w>\": 5215,\n  \"nga</w>\": 35477,\n  \"ngc</w>\": 29046,\n  \"ngo\": 38740,\n  \"ngo</w>\": 24821,\n  \"ngos</w>\": 34627,\n  \"nguyen</w>\": 29947,\n  \"nh\": 3760,\n  \"nh</w>\": 10803,\n  \"nhc</w>\": 44817,\n  \"nhl\": 12290,\n  \"nhl</w>\": 8167,\n  \"nhlbruins</w>\": 39081,\n  \"nhljets</w>\": 49357,\n  \"nhm</w>\": 39483,\n  \"nhpolitics</w>\": 36125,\n  \"nhq</w>\": 42368,\n  \"nhra</w>\": 30052,\n  \"nhs\": 23282,\n  \"nhs</w>\": 7695,\n  \"ni\": 697,\n  \"ni</w>\": 3256,\n  \"nia</w>\": 3098,\n  \"niag\": 18071,\n  \"niagar\": 39298,\n  \"niagara</w>\": 18965,\n  \"niall\": 41354,\n  \"niall</w>\": 8327,\n  \"niallo\": 22855,\n  \"niallofficial</w>\": 23084,\n  \"niam\": 39347,\n  \"nian</w>\": 46003,\n  \"nib</w>\": 31049,\n  \"nic\": 2109,\n  \"nic</w>\": 6651,\n  \"nica</w>\": 29040,\n  \"nicar\": 25119,\n  \"nicaragua</w>\": 28423,\n  \"nice\": 28386,\n  \"nice</w>\": 1805,\n  \"nicely</w>\": 12303,\n  \"nicer</w>\": 29488,\n  \"nicest</w>\": 22967,\n  \"niche</w>\": 25279,\n  \"nichol\": 7668,\n  \"nicholas\": 39814,\n  \"nicholas</w>\": 13148,\n  \"nicholls</w>\": 38846,\n  \"nichols</w>\": 22730,\n  \"nicholson</w>\": 28745,\n  \"nick\": 4209,\n  \"nick</w>\": 4253,\n  \"nickel</w>\": 22034,\n  \"nickelo\": 28668,\n  \"nickelodeon</w>\": 33279,\n  \"nicki</w>\": 17738,\n  \"nickimin\": 27390,\n  \"nickiminaj</w>\": 27593,\n  \"nickjonas</w>\": 43862,\n  \"nickname</w>\": 24731,\n  \"nicknamed</w>\": 45190,\n  \"nicks</w>\": 15049,\n  \"nicky\": 28893,\n  \"nicky</w>\": 22091,\n  \"nico\": 20850,\n  \"nico</w>\": 17779,\n  \"nicol\": 9919,\n  \"nicol</w>\": 48274,\n  \"nicola</w>\": 21791,\n  \"nicolas\": 43813,\n  \"nicolas</w>\": 18918,\n  \"nicole\": 21246,\n  \"nicole</w>\": 10000,\n  \"nicot\": 45099,\n  \"nicotine</w>\": 46697,\n  \"nie\": 9524,\n  \"nie</w>\": 3501,\n  \"niece</w>\": 12795,\n  \"nieces</w>\": 44877,\n  \"niel\": 19109,\n  \"niel</w>\": 26837,\n  \"niels</w>\": 37154,\n  \"nielsen</w>\": 28372,\n  \"nier</w>\": 13014,\n  \"nies</w>\": 10586,\n  \"niest</w>\": 15007,\n  \"nieu\": 29781,\n  \"nific\": 4748,\n  \"nifty</w>\": 25604,\n  \"nig\": 27933,\n  \"nig</w>\": 28099,\n  \"nigan</w>\": 48516,\n  \"nigel\": 33919,\n  \"nigel</w>\": 15153,\n  \"niger\": 4524,\n  \"niger</w>\": 29920,\n  \"nigeri\": 40913,\n  \"nigeria</w>\": 6106,\n  \"nigerian</w>\": 12167,\n  \"nigerians</w>\": 25358,\n  \"nigh\": 13525,\n  \"nigh</w>\": 48157,\n  \"night\": 3870,\n  \"night</w>\": 930,\n  \"nightclub</w>\": 20418,\n  \"nighter</w>\": 41349,\n  \"nighting\": 36211,\n  \"nightingale</w>\": 40696,\n  \"nightlife</w>\": 28823,\n  \"nightly</w>\": 28868,\n  \"nightmare</w>\": 12867,\n  \"nightmares</w>\": 24032,\n  \"nightout</w>\": 44257,\n  \"nights</w>\": 4296,\n  \"nighttime</w>\": 38147,\n  \"nightw\": 39956,\n  \"nih</w>\": 25783,\n  \"nik\": 5126,\n  \"nik</w>\": 13705,\n  \"nike\": 16300,\n  \"nike</w>\": 5783,\n  \"nikeplus</w>\": 43154,\n  \"niki</w>\": 36136,\n  \"nikita</w>\": 37118,\n  \"nikk\": 38596,\n  \"nikki\": 23156,\n  \"nikki</w>\": 16689,\n  \"niko</w>\": 43771,\n  \"nikol\": 27430,\n  \"nikola</w>\": 42146,\n  \"nikon\": 25488,\n  \"nikon</w>\": 13849,\n  \"nikov</w>\": 43960,\n  \"nil\": 16852,\n  \"nil</w>\": 35030,\n  \"nile</w>\": 24252,\n  \"nim\": 30402,\n  \"nim</w>\": 42093,\n  \"nima</w>\": 42586,\n  \"nin\": 5794,\n  \"nin</w>\": 14145,\n  \"nina</w>\": 13891,\n  \"nine\": 16213,\n  \"nine</w>\": 7330,\n  \"ninety</w>\": 48214,\n  \"ning\": 6050,\n  \"ning</w>\": 762,\n  \"ningham</w>\": 23395,\n  \"ningly</w>\": 43537,\n  \"nings</w>\": 4588,\n  \"nington</w>\": 26214,\n  \"ninj\": 23225,\n  \"ninja</w>\": 11969,\n  \"ninjas</w>\": 42796,\n  \"nino</w>\": 25633,\n  \"ninten\": 6184,\n  \"nintendo\": 13969,\n  \"nintendo</w>\": 7886,\n  \"nintendoswitch</w>\": 16404,\n  \"ninth</w>\": 22770,\n  \"nip\": 33889,\n  \"nip</w>\": 22333,\n  \"nipp\": 24634,\n  \"nipple</w>\": 45987,\n  \"nipples</w>\": 44774,\n  \"nippon</w>\": 47960,\n  \"nips</w>\": 49241,\n  \"nir\": 15503,\n  \"nir</w>\": 40057,\n  \"nireland</w>\": 45763,\n  \"niro</w>\": 47373,\n  \"nirvana</w>\": 28300,\n  \"nis\": 5609,\n  \"nis</w>\": 3786,\n  \"nish\": 19834,\n  \"nish</w>\": 13256,\n  \"nished</w>\": 24141,\n  \"nishi\": 32386,\n  \"nishings</w>\": 49247,\n  \"nison</w>\": 45700,\n  \"niss</w>\": 39043,\n  \"nissan\": 37635,\n  \"nissan</w>\": 11082,\n  \"nist</w>\": 17782,\n  \"nister</w>\": 36640,\n  \"nit\": 4087,\n  \"nit</w>\": 19011,\n  \"nite</w>\": 8427,\n  \"niti\": 43964,\n  \"niti</w>\": 45355,\n  \"nitin</w>\": 37529,\n  \"nitro</w>\": 30726,\n  \"nitrogen</w>\": 30706,\n  \"niture</w>\": 7840,\n  \"nity</w>\": 12707,\n  \"niu</w>\": 48187,\n  \"niv</w>\": 47300,\n  \"niversary</w>\": 29643,\n  \"nix\": 48552,\n  \"nix</w>\": 32278,\n  \"nixon</w>\": 20671,\n  \"nj\": 8343,\n  \"nj</w>\": 6672,\n  \"njcaa</w>\": 48992,\n  \"njpw</w>\": 38992,\n  \"nk\": 22708,\n  \"nk</w>\": 17456,\n  \"nko\": 36353,\n  \"nl\": 12057,\n  \"nl</w>\": 7655,\n  \"nli</w>\": 37502,\n  \"nlp</w>\": 35680,\n  \"nlwx</w>\": 49260,\n  \"nm\": 15956,\n  \"nm</w>\": 11370,\n  \"nmd</w>\": 43331,\n  \"nme</w>\": 40454,\n  \"nmwx</w>\": 47967,\n  \"nn\": 8947,\n  \"nn</w>\": 12925,\n  \"nnn</w>\": 26277,\n  \"nnnn</w>\": 41420,\n  \"no\": 578,\n  \"no</w>\": 871,\n  \"noaa</w>\": 27557,\n  \"noah\": 28806,\n  \"noah</w>\": 11519,\n  \"nobel\": 33742,\n  \"nobel</w>\": 15605,\n  \"nobelprize</w>\": 46074,\n  \"noble\": 29430,\n  \"noble</w>\": 12051,\n  \"nobody</w>\": 7009,\n  \"noc\": 16988,\n  \"noc</w>\": 44420,\n  \"nocchi</w>\": 46359,\n  \"noch</w>\": 38672,\n  \"noche</w>\": 29689,\n  \"noches</w>\": 44166,\n  \"nock</w>\": 16993,\n  \"noctur\": 26291,\n  \"nocturnal</w>\": 41738,\n  \"nod</w>\": 18648,\n  \"nodapl</w>\": 39079,\n  \"node\": 31434,\n  \"node</w>\": 24871,\n  \"nodejs</w>\": 39262,\n  \"nodes</w>\": 40534,\n  \"noel\": 38406,\n  \"noel</w>\": 17496,\n  \"nof\": 29505,\n  \"noff</w>\": 46979,\n  \"nofilter</w>\": 16418,\n  \"nog</w>\": 31157,\n  \"noh</w>\": 40775,\n  \"noi\": 43115,\n  \"noi</w>\": 39889,\n  \"noida</w>\": 33404,\n  \"noir\": 39291,\n  \"noir</w>\": 12953,\n  \"nois\": 22057,\n  \"noise\": 41018,\n  \"noise</w>\": 9307,\n  \"noises</w>\": 31575,\n  \"noisse\": 45686,\n  \"noisy</w>\": 33495,\n  \"nokia</w>\": 17731,\n  \"nol\": 8055,\n  \"nola</w>\": 13289,\n  \"nolan</w>\": 17323,\n  \"nold</w>\": 40322,\n  \"nole</w>\": 34654,\n  \"noles</w>\": 40569,\n  \"nollywood</w>\": 43145,\n  \"nology</w>\": 42221,\n  \"nom\": 2981,\n  \"nom</w>\": 12799,\n  \"nomad</w>\": 27849,\n  \"noman\": 45592,\n  \"nomin\": 5643,\n  \"nominate</w>\": 17122,\n  \"nominated</w>\": 8710,\n  \"nominating</w>\": 45747,\n  \"nomination</w>\": 14136,\n  \"nominations</w>\": 17124,\n  \"nominee</w>\": 14122,\n  \"nominees</w>\": 17873,\n  \"nomnom</w>\": 26962,\n  \"nomore\": 35126,\n  \"noms</w>\": 35706,\n  \"non\": 4282,\n  \"non</w>\": 3353,\n  \"none\": 29644,\n  \"none</w>\": 8906,\n  \"nonetheless</w>\": 39675,\n  \"nonfiction</w>\": 31654,\n  \"nonprofit</w>\": 19315,\n  \"nonprofits</w>\": 37935,\n  \"nonsense</w>\": 19136,\n  \"nonstop</w>\": 30300,\n  \"nont</w>\": 25207,\n  \"noo\": 6759,\n  \"noo</w>\": 46672,\n  \"noodle</w>\": 19521,\n  \"noodles</w>\": 15782,\n  \"nook</w>\": 30088,\n  \"noon\": 37693,\n  \"noon</w>\": 2347,\n  \"noor\": 46978,\n  \"noor</w>\": 31323,\n  \"nope</w>\": 15625,\n  \"nor\": 1062,\n  \"nor</w>\": 6190,\n  \"nora</w>\": 25890,\n  \"norcal</w>\": 41970,\n  \"nord\": 19261,\n  \"nord</w>\": 36067,\n  \"nordic\": 36439,\n  \"nordic</w>\": 20734,\n  \"nordstrom</w>\": 38562,\n  \"norfolk\": 30232,\n  \"norfolk</w>\": 12202,\n  \"norm\": 10990,\n  \"norm</w>\": 22457,\n  \"norma</w>\": 35757,\n  \"normal\": 28748,\n  \"normal</w>\": 5967,\n  \"normali\": 45157,\n  \"normally</w>\": 15870,\n  \"norman\": 22027,\n  \"norman</w>\": 11338,\n  \"normandy</w>\": 23840,\n  \"normani</w>\": 44596,\n  \"norms</w>\": 33011,\n  \"norris</w>\": 21814,\n  \"norse</w>\": 36559,\n  \"norte</w>\": 35638,\n  \"north\": 3468,\n  \"north</w>\": 2188,\n  \"northampton\": 49246,\n  \"northampton</w>\": 26175,\n  \"northan\": 37081,\n  \"northbound</w>\": 24228,\n  \"northcarolina</w>\": 43386,\n  \"northe\": 24675,\n  \"northeast\": 42673,\n  \"northeast</w>\": 13009,\n  \"northeastern</w>\": 28297,\n  \"northeasthour</w>\": 42869,\n  \"norther\": 26908,\n  \"northern\": 17210,\n  \"northern</w>\": 5049,\n  \"northernlights</w>\": 48940,\n  \"northkorea</w>\": 38495,\n  \"northside</w>\": 45957,\n  \"northumber\": 22295,\n  \"northumberland</w>\": 22922,\n  \"northwales</w>\": 49371,\n  \"northwest</w>\": 12894,\n  \"northwestern</w>\": 23685,\n  \"norton</w>\": 18032,\n  \"norway</w>\": 8780,\n  \"norwe\": 14414,\n  \"norwegian</w>\": 15971,\n  \"norwich\": 37629,\n  \"norwich</w>\": 15812,\n  \"norwood</w>\": 37889,\n  \"nos</w>\": 13420,\n  \"nose\": 24192,\n  \"nose</w>\": 8231,\n  \"noses</w>\": 48163,\n  \"nostal\": 12076,\n  \"nostalgia</w>\": 16622,\n  \"nostalgic</w>\": 24468,\n  \"not\": 2534,\n  \"not</w>\": 783,\n  \"notable</w>\": 22023,\n  \"notch</w>\": 19476,\n  \"notdead</w>\": 42059,\n  \"note\": 10910,\n  \"note</w>\": 3246,\n  \"notebook</w>\": 16365,\n  \"notebooks</w>\": 37623,\n  \"noted</w>\": 22501,\n  \"notes</w>\": 5795,\n  \"nothin</w>\": 24291,\n  \"nothing\": 28412,\n  \"nothing</w>\": 2586,\n  \"noti\": 10686,\n  \"notic\": 6915,\n  \"notice</w>\": 6683,\n  \"noticeable</w>\": 40857,\n  \"noticed</w>\": 9324,\n  \"notices</w>\": 33459,\n  \"noticias</w>\": 47759,\n  \"noticing</w>\": 37571,\n  \"notification</w>\": 22512,\n  \"notifications</w>\": 23169,\n  \"notified</w>\": 39454,\n  \"noting</w>\": 38649,\n  \"notion</w>\": 37856,\n  \"notjust\": 33212,\n  \"notjustlakes</w>\": 45803,\n  \"notmy\": 39301,\n  \"noto\": 29878,\n  \"noton\": 48258,\n  \"notor\": 21711,\n  \"notori\": 44065,\n  \"notorious</w>\": 22489,\n  \"notre\": 24397,\n  \"notre</w>\": 15306,\n  \"notredame</w>\": 34077,\n  \"notsorry</w>\": 34361,\n  \"nott\": 9333,\n  \"nott</w>\": 34989,\n  \"notte</w>\": 47308,\n  \"nottingham</w>\": 12852,\n  \"notts</w>\": 25598,\n  \"nou\": 8751,\n  \"nou</w>\": 30953,\n  \"noun</w>\": 33663,\n  \"nouri\": 23796,\n  \"nourish</w>\": 46025,\n  \"nourished</w>\": 48354,\n  \"nous</w>\": 29485,\n  \"nouveau</w>\": 29948,\n  \"nouvel\": 34215,\n  \"nov\": 2264,\n  \"nov</w>\": 4293,\n  \"nova</w>\": 11236,\n  \"novak</w>\": 26465,\n  \"novasco\": 33785,\n  \"novascotia</w>\": 34744,\n  \"novation</w>\": 39753,\n  \"nove\": 30507,\n  \"novel\": 15044,\n  \"novel</w>\": 6080,\n  \"novelist</w>\": 27314,\n  \"novella</w>\": 42770,\n  \"novels</w>\": 16040,\n  \"novelty</w>\": 37750,\n  \"november</w>\": 3680,\n  \"nover</w>\": 37465,\n  \"novi\": 47957,\n  \"novice</w>\": 33743,\n  \"novo\": 27504,\n  \"novo</w>\": 36581,\n  \"now\": 2040,\n  \"now</w>\": 692,\n  \"nowadays</w>\": 26155,\n  \"nowhere</w>\": 14108,\n  \"nowplaying</w>\": 3708,\n  \"nowwatching</w>\": 30852,\n  \"nox</w>\": 27406,\n  \"noxi\": 39304,\n  \"noxious</w>\": 42833,\n  \"noy</w>\": 32787,\n  \"np\": 18205,\n  \"np</w>\": 6314,\n  \"npa</w>\": 42378,\n  \"npc</w>\": 33966,\n  \"npr\": 39941,\n  \"npr</w>\": 24078,\n  \"nps</w>\": 22025,\n  \"npt</w>\": 47231,\n  \"nr\": 6574,\n  \"nr</w>\": 9713,\n  \"nra</w>\": 17286,\n  \"nrc</w>\": 45786,\n  \"nrf</w>\": 47982,\n  \"nrg</w>\": 48662,\n  \"nrl\": 27142,\n  \"nrl</w>\": 18127,\n  \"ns\": 12405,\n  \"ns</w>\": 1373,\n  \"nsa</w>\": 23004,\n  \"nsc\": 32792,\n  \"nsd</w>\": 36659,\n  \"nsf</w>\": 34180,\n  \"nsfw</w>\": 19847,\n  \"nsi\": 47824,\n  \"nsw\": 21301,\n  \"nsw</w>\": 11693,\n  \"nswpol</w>\": 44434,\n  \"nt\": 10902,\n  \"nt</w>\": 3207,\n  \"ntr</w>\": 30845,\n  \"nts</w>\": 43775,\n  \"ntt</w>\": 22859,\n  \"ntv\": 24807,\n  \"ntv</w>\": 45304,\n  \"nu\": 1156,\n  \"nu</w>\": 9444,\n  \"nucle\": 25693,\n  \"nuclear\": 34136,\n  \"nuclear</w>\": 7279,\n  \"nude</w>\": 16630,\n  \"nudes</w>\": 32122,\n  \"nue\": 22834,\n  \"nuestra</w>\": 45649,\n  \"nuestro</w>\": 38590,\n  \"nuev\": 47861,\n  \"nueva</w>\": 48810,\n  \"nuevo</w>\": 30265,\n  \"nufc</w>\": 15720,\n  \"nuff</w>\": 37324,\n  \"nug\": 13471,\n  \"nugent</w>\": 47457,\n  \"nugget</w>\": 25448,\n  \"nuggets</w>\": 18970,\n  \"nuh</w>\": 45950,\n  \"nuit</w>\": 38815,\n  \"nuk</w>\": 39228,\n  \"nuke</w>\": 39399,\n  \"nul\": 29358,\n  \"null</w>\": 47376,\n  \"num\": 17896,\n  \"num</w>\": 30534,\n  \"numb\": 34639,\n  \"numb</w>\": 39427,\n  \"number\": 44078,\n  \"number</w>\": 2842,\n  \"numbered</w>\": 25975,\n  \"numbers</w>\": 6121,\n  \"numer\": 11442,\n  \"numerous</w>\": 17082,\n  \"numis\": 39100,\n  \"nun\": 12511,\n  \"nun</w>\": 28540,\n  \"nunavut</w>\": 48626,\n  \"nunes</w>\": 40697,\n  \"nuns</w>\": 44061,\n  \"nup\": 46757,\n  \"nur\": 3920,\n  \"nur</w>\": 33493,\n  \"nure\": 42480,\n  \"nurse\": 37547,\n  \"nurse</w>\": 10058,\n  \"nursery</w>\": 15540,\n  \"nurses</w>\": 12938,\n  \"nursing</w>\": 11126,\n  \"nurture</w>\": 38865,\n  \"nurturing</w>\": 45229,\n  \"nus\": 25157,\n  \"nus</w>\": 18239,\n  \"nut\": 10358,\n  \"nut</w>\": 6491,\n  \"nutcracker</w>\": 36733,\n  \"nutella</w>\": 27312,\n  \"nutr\": 6198,\n  \"nutri\": 15470,\n  \"nutrient</w>\": 32900,\n  \"nutrients</w>\": 24668,\n  \"nutriti\": 17978,\n  \"nutrition\": 41546,\n  \"nutrition</w>\": 7989,\n  \"nutritional</w>\": 26457,\n  \"nutritious</w>\": 30387,\n  \"nuts</w>\": 8644,\n  \"nutshell</w>\": 26659,\n  \"nutty</w>\": 39846,\n  \"nv\": 17217,\n  \"nv</w>\": 16985,\n  \"nvi\": 22847,\n  \"nvidia</w>\": 27325,\n  \"nw\": 7826,\n  \"nw</w>\": 7030,\n  \"nwa</w>\": 34237,\n  \"nwo</w>\": 40976,\n  \"nws\": 23333,\n  \"nws</w>\": 30998,\n  \"nwsl</w>\": 48394,\n  \"nwt</w>\": 25029,\n  \"nx\": 18810,\n  \"nx</w>\": 16997,\n  \"nxt\": 35037,\n  \"nxt</w>\": 17804,\n  \"ny\": 1383,\n  \"ny</w>\": 1350,\n  \"nya</w>\": 24165,\n  \"nyc\": 13304,\n  \"nyc</w>\": 2832,\n  \"nycc</w>\": 27187,\n  \"nycfc</w>\": 47497,\n  \"nye\": 40723,\n  \"nye</w>\": 13416,\n  \"nyfw</w>\": 21089,\n  \"nyk</w>\": 46841,\n  \"nylon</w>\": 25915,\n  \"nyo\": 41534,\n  \"nyo</w>\": 44586,\n  \"nypd\": 42293,\n  \"nypd</w>\": 18279,\n  \"nyr</w>\": 32538,\n  \"nyrd</w>\": 47936,\n  \"nys\": 36375,\n  \"nys</w>\": 23423,\n  \"nyse</w>\": 32650,\n  \"nyt\": 46311,\n  \"nyt</w>\": 12816,\n  \"nytimes</w>\": 13772,\n  \"nyu\": 43143,\n  \"nyu</w>\": 31355,\n  \"nz\": 10142,\n  \"nz</w>\": 7082,\n  \"o\": 78,\n  \"o</w>\": 334,\n  \"oa</w>\": 11994,\n  \"oahu</w>\": 37790,\n  \"oak\": 6010,\n  \"oak</w>\": 7221,\n  \"oakland\": 42663,\n  \"oakland</w>\": 12077,\n  \"oakley</w>\": 27810,\n  \"oaks</w>\": 16734,\n  \"oakville</w>\": 38500,\n  \"oasis</w>\": 18185,\n  \"oat\": 20095,\n  \"oat</w>\": 34132,\n  \"oates</w>\": 47094,\n  \"oath</w>\": 20108,\n  \"oatmeal</w>\": 26374,\n  \"oats</w>\": 24150,\n  \"oax\": 43090,\n  \"oaxaca</w>\": 47818,\n  \"ob\": 1411,\n  \"ob</w>\": 14908,\n  \"oba\": 42902,\n  \"oba</w>\": 15147,\n  \"obam\": 13174,\n  \"obama</w>\": 4276,\n  \"obamacare</w>\": 18005,\n  \"obe\": 11897,\n  \"obe</w>\": 29117,\n  \"obedience</w>\": 48921,\n  \"ober\": 15284,\n  \"obese</w>\": 41757,\n  \"obesity</w>\": 19499,\n  \"obey</w>\": 26926,\n  \"obi\": 21454,\n  \"obi</w>\": 18414,\n  \"obile</w>\": 20513,\n  \"obitu\": 39218,\n  \"obituary</w>\": 43580,\n  \"objec\": 7970,\n  \"object</w>\": 14115,\n  \"objective</w>\": 23663,\n  \"objectives</w>\": 30238,\n  \"objects</w>\": 13770,\n  \"obl\": 31452,\n  \"oblast</w>\": 42672,\n  \"obli\": 11416,\n  \"obligation</w>\": 34473,\n  \"obligations</w>\": 38232,\n  \"obligatory</w>\": 35020,\n  \"oblivion</w>\": 45323,\n  \"obo\": 46001,\n  \"obo</w>\": 26618,\n  \"obrien</w>\": 31946,\n  \"obs</w>\": 39162,\n  \"obsc\": 20392,\n  \"obscure</w>\": 33337,\n  \"obse\": 8433,\n  \"observ\": 9050,\n  \"observation</w>\": 20250,\n  \"observations</w>\": 27409,\n  \"observatory</w>\": 21236,\n  \"observe</w>\": 23217,\n  \"observed</w>\": 21267,\n  \"observer</w>\": 22077,\n  \"observers</w>\": 47544,\n  \"observing</w>\": 28359,\n  \"obsessed</w>\": 9744,\n  \"obsession</w>\": 15718,\n  \"obsi\": 47323,\n  \"obsole\": 35561,\n  \"obsolete</w>\": 40628,\n  \"obst\": 29398,\n  \"obstac\": 24075,\n  \"obstacle</w>\": 29751,\n  \"obstacles</w>\": 24480,\n  \"obste\": 49103,\n  \"obstru\": 44876,\n  \"obstruc\": 38762,\n  \"obstruction</w>\": 40240,\n  \"obtain</w>\": 26555,\n  \"obtained</w>\": 29322,\n  \"obvious</w>\": 13959,\n  \"obviously</w>\": 10068,\n  \"oc\": 1566,\n  \"oc</w>\": 6603,\n  \"oca</w>\": 31120,\n  \"ocal</w>\": 38148,\n  \"occ</w>\": 43940,\n  \"occa\": 8530,\n  \"occasion</w>\": 12280,\n  \"occasional</w>\": 33059,\n  \"occasionally</w>\": 32479,\n  \"occasions</w>\": 26154,\n  \"occer</w>\": 20804,\n  \"occi\": 42994,\n  \"occu\": 7863,\n  \"occult</w>\": 42529,\n  \"occup\": 11152,\n  \"occupation</w>\": 18624,\n  \"occupational</w>\": 30644,\n  \"occupied</w>\": 17271,\n  \"occupy\": 22453,\n  \"occupy</w>\": 24210,\n  \"occur\": 11264,\n  \"occur</w>\": 21813,\n  \"occurred</w>\": 19850,\n  \"occurrence</w>\": 40615,\n  \"occurring</w>\": 31335,\n  \"occurs</w>\": 26563,\n  \"ocd</w>\": 35904,\n  \"oce\": 3509,\n  \"ocean\": 12941,\n  \"ocean</w>\": 4918,\n  \"oceans</w>\": 16792,\n  \"och\": 29334,\n  \"och</w>\": 32011,\n  \"oche</w>\": 33045,\n  \"oci\": 9891,\n  \"ocity\": 46039,\n  \"ock\": 33579,\n  \"ock</w>\": 21313,\n  \"ocks</w>\": 22410,\n  \"oclock</w>\": 36274,\n  \"oco</w>\": 32553,\n  \"ocon</w>\": 33090,\n  \"ocr\": 45813,\n  \"ocre</w>\": 40320,\n  \"ocs</w>\": 27297,\n  \"oct</w>\": 4565,\n  \"octa\": 23444,\n  \"octag\": 37768,\n  \"octagon</w>\": 49167,\n  \"octane</w>\": 43040,\n  \"octavia</w>\": 47416,\n  \"octo\": 31032,\n  \"october</w>\": 3481,\n  \"octopus</w>\": 22327,\n  \"ocu\": 22709,\n  \"oculus</w>\": 30082,\n  \"od\": 4886,\n  \"od</w>\": 9719,\n  \"oda</w>\": 24777,\n  \"oday</w>\": 41954,\n  \"odd\": 15525,\n  \"odd</w>\": 11387,\n  \"oddly</w>\": 34213,\n  \"odds</w>\": 11555,\n  \"ode\": 19125,\n  \"ode</w>\": 19639,\n  \"odell</w>\": 41556,\n  \"odessa</w>\": 43574,\n  \"odi\": 12223,\n  \"odi</w>\": 18853,\n  \"odin</w>\": 35175,\n  \"odisha</w>\": 15737,\n  \"odo\": 49188,\n  \"odo</w>\": 40993,\n  \"odor</w>\": 39509,\n  \"odu\": 35095,\n  \"odu</w>\": 39904,\n  \"odyssey</w>\": 19991,\n  \"oe\": 24251,\n  \"oe</w>\": 11667,\n  \"oec\": 24288,\n  \"oecd</w>\": 30816,\n  \"oem</w>\": 29650,\n  \"oes</w>\": 3643,\n  \"of\": 684,\n  \"of</w>\": 539,\n  \"ofa</w>\": 29774,\n  \"ofc</w>\": 19877,\n  \"ofe\": 30000,\n  \"ofer\": 47322,\n  \"off\": 892,\n  \"off</w>\": 1007,\n  \"offe\": 8261,\n  \"offee</w>\": 34059,\n  \"offen\": 7231,\n  \"offence</w>\": 34594,\n  \"offences</w>\": 33972,\n  \"offended</w>\": 30765,\n  \"offender</w>\": 48294,\n  \"offenders</w>\": 35878,\n  \"offense</w>\": 15253,\n  \"offensive</w>\": 11037,\n  \"offer\": 20607,\n  \"offer</w>\": 3271,\n  \"offered</w>\": 9395,\n  \"offering</w>\": 6896,\n  \"offerings</w>\": 24535,\n  \"offers</w>\": 4679,\n  \"offic\": 3276,\n  \"office\": 18033,\n  \"office</w>\": 2171,\n  \"officeof\": 38750,\n  \"officeofrg</w>\": 47100,\n  \"officer</w>\": 4683,\n  \"officers</w>\": 6335,\n  \"offices</w>\": 10933,\n  \"offici\": 1401,\n  \"official\": 5768,\n  \"official</w>\": 1868,\n  \"officially</w>\": 4226,\n  \"officials</w>\": 7658,\n  \"officiel</w>\": 26548,\n  \"offl</w>\": 16851,\n  \"offline</w>\": 22724,\n  \"offro\": 32198,\n  \"offroad</w>\": 37173,\n  \"offs</w>\": 23987,\n  \"offseason</w>\": 25485,\n  \"offset</w>\": 28843,\n  \"offshore</w>\": 15496,\n  \"offside</w>\": 49347,\n  \"offspring</w>\": 38635,\n  \"offthe\": 38189,\n  \"ofi\": 36692,\n  \"ofi</w>\": 49090,\n  \"oficial</w>\": 18061,\n  \"oft</w>\": 16693,\n  \"oftball</w>\": 39768,\n  \"often</w>\": 4864,\n  \"ofthe\": 7592,\n  \"oftheday</w>\": 6988,\n  \"oftheweek</w>\": 20654,\n  \"oftheyear</w>\": 33975,\n  \"og\": 11542,\n  \"og</w>\": 8555,\n  \"oga</w>\": 47312,\n  \"ogden</w>\": 42011,\n  \"ogil\": 39013,\n  \"ography</w>\": 22399,\n  \"ogue</w>\": 24761,\n  \"ogun\": 48970,\n  \"oh\": 5648,\n  \"oh</w>\": 1779,\n  \"ohana</w>\": 48330,\n  \"ohh</w>\": 23076,\n  \"ohhh</w>\": 27697,\n  \"ohhhh</w>\": 40201,\n  \"ohi\": 5207,\n  \"ohio\": 18951,\n  \"ohio</w>\": 6155,\n  \"ohiostate</w>\": 41324,\n  \"ohl\": 45547,\n  \"ohl</w>\": 41095,\n  \"ohmy\": 29758,\n  \"ohn</w>\": 48043,\n  \"ohs</w>\": 39542,\n  \"ohwx</w>\": 47993,\n  \"oi\": 27357,\n  \"oi</w>\": 13934,\n  \"oic</w>\": 45554,\n  \"oid</w>\": 14758,\n  \"oids</w>\": 21847,\n  \"oil\": 11973,\n  \"oil</w>\": 2870,\n  \"oiland\": 32316,\n  \"oilandgas</w>\": 34130,\n  \"oilers</w>\": 21627,\n  \"oilpainting</w>\": 34279,\n  \"oils</w>\": 17886,\n  \"oily</w>\": 47550,\n  \"oir\": 48079,\n  \"oir</w>\": 37113,\n  \"ois</w>\": 23262,\n  \"oit\": 18453,\n  \"oitnb</w>\": 34865,\n  \"oj\": 30986,\n  \"oj</w>\": 34553,\n  \"ok\": 1944,\n  \"ok</w>\": 2481,\n  \"oka\": 42258,\n  \"oka</w>\": 19092,\n  \"okan\": 41263,\n  \"okanagan</w>\": 43233,\n  \"okay</w>\": 4917,\n  \"okc\": 42418,\n  \"okc</w>\": 18357,\n  \"oke\": 26636,\n  \"oke</w>\": 23598,\n  \"oki</w>\": 20390,\n  \"okin\": 30687,\n  \"okinawa</w>\": 35877,\n  \"okla\": 9431,\n  \"oklahoma</w>\": 10170,\n  \"oko\": 26892,\n  \"oko</w>\": 26095,\n  \"okstate</w>\": 36356,\n  \"oktoberfest</w>\": 32026,\n  \"oku\": 45010,\n  \"oku</w>\": 43829,\n  \"okwx</w>\": 27336,\n  \"ol\": 562,\n  \"ol</w>\": 2985,\n  \"ola\": 20499,\n  \"ola</w>\": 3373,\n  \"olaf</w>\": 39709,\n  \"olan\": 48489,\n  \"olan</w>\": 24227,\n  \"oland</w>\": 26452,\n  \"olas</w>\": 40800,\n  \"old\": 4931,\n  \"old</w>\": 896,\n  \"olde</w>\": 37731,\n  \"older</w>\": 7700,\n  \"oldest</w>\": 9285,\n  \"oldham</w>\": 29929,\n  \"oldie</w>\": 35280,\n  \"oldies</w>\": 36278,\n  \"oldman</w>\": 48614,\n  \"olds</w>\": 8580,\n  \"oldschool\": 44384,\n  \"oldschool</w>\": 25133,\n  \"oldsmobile</w>\": 45396,\n  \"ole\": 9089,\n  \"ole</w>\": 1947,\n  \"oled</w>\": 46768,\n  \"oler\": 24069,\n  \"oles</w>\": 16962,\n  \"olf</w>\": 16346,\n  \"olga</w>\": 34779,\n  \"oli\": 3811,\n  \"oli</w>\": 8810,\n  \"olic</w>\": 31341,\n  \"oligar\": 46185,\n  \"olim\": 47769,\n  \"olin\": 37823,\n  \"olin</w>\": 18283,\n  \"olina</w>\": 34711,\n  \"oline</w>\": 17441,\n  \"oling</w>\": 38033,\n  \"olini</w>\": 36040,\n  \"olis</w>\": 49397,\n  \"olithic</w>\": 35574,\n  \"olive\": 22486,\n  \"olive</w>\": 9898,\n  \"oliver\": 22882,\n  \"oliver</w>\": 9261,\n  \"olives</w>\": 27149,\n  \"olivi\": 20773,\n  \"olivia</w>\": 11697,\n  \"olivier</w>\": 23891,\n  \"oll\": 32270,\n  \"oll</w>\": 15510,\n  \"olla</w>\": 31908,\n  \"ollie</w>\": 24434,\n  \"olls</w>\": 42697,\n  \"olly</w>\": 23998,\n  \"olo\": 14628,\n  \"olo</w>\": 7606,\n  \"ological</w>\": 12345,\n  \"ologist</w>\": 23442,\n  \"ologists</w>\": 30912,\n  \"ology</w>\": 4627,\n  \"olor</w>\": 29245,\n  \"olph</w>\": 25077,\n  \"ols</w>\": 2236,\n  \"olsen</w>\": 26307,\n  \"olson</w>\": 28046,\n  \"olt</w>\": 46252,\n  \"olu\": 16502,\n  \"olu</w>\": 46302,\n  \"olulu</w>\": 27645,\n  \"oly\": 20323,\n  \"oly</w>\": 24823,\n  \"olym\": 3594,\n  \"olympi\": 13597,\n  \"olympia</w>\": 23965,\n  \"olympiad</w>\": 47694,\n  \"olympian</w>\": 25420,\n  \"olympians</w>\": 44583,\n  \"olympic\": 26099,\n  \"olympic</w>\": 6388,\n  \"olympics</w>\": 7629,\n  \"olympus</w>\": 30960,\n  \"om\": 547,\n  \"om</w>\": 3932,\n  \"oma\": 44603,\n  \"oma</w>\": 5358,\n  \"omaha</w>\": 16509,\n  \"oman\": 22088,\n  \"oman</w>\": 10871,\n  \"omar\": 19488,\n  \"omar</w>\": 13367,\n  \"omars</w>\": 37099,\n  \"omas</w>\": 36023,\n  \"omat\": 40788,\n  \"omb</w>\": 34447,\n  \"ombe</w>\": 35967,\n  \"omd</w>\": 49346,\n  \"ome\": 3693,\n  \"ome</w>\": 5832,\n  \"omed</w>\": 16835,\n  \"omega</w>\": 13465,\n  \"omelette</w>\": 38789,\n  \"omen\": 9969,\n  \"omen</w>\": 25469,\n  \"oment</w>\": 43683,\n  \"omeo</w>\": 39844,\n  \"omer\": 24087,\n  \"omer</w>\": 17902,\n  \"omes</w>\": 25736,\n  \"ometer</w>\": 20060,\n  \"ometric</w>\": 38702,\n  \"omez</w>\": 12541,\n  \"omf</w>\": 47496,\n  \"omfg</w>\": 12523,\n  \"omg\": 35233,\n  \"omg</w>\": 3186,\n  \"omi\": 24097,\n  \"omi</w>\": 10341,\n  \"omic\": 40536,\n  \"omic</w>\": 12793,\n  \"omics</w>\": 15138,\n  \"omile</w>\": 46915,\n  \"omin\": 16457,\n  \"omination</w>\": 42571,\n  \"oming</w>\": 10796,\n  \"ominous</w>\": 40914,\n  \"omni\": 18793,\n  \"omni</w>\": 39489,\n  \"omnibus</w>\": 44760,\n  \"omnic\": 48383,\n  \"omo\": 14478,\n  \"omo</w>\": 11066,\n  \"omon\": 48758,\n  \"omor\": 29431,\n  \"oms</w>\": 3770,\n  \"omusic</w>\": 38965,\n  \"omy\": 40805,\n  \"omy</w>\": 6884,\n  \"on\": 521,\n  \"on</w>\": 525,\n  \"ona</w>\": 2687,\n  \"onair</w>\": 29511,\n  \"onal</w>\": 918,\n  \"onboard</w>\": 21689,\n  \"once\": 16331,\n  \"once</w>\": 2654,\n  \"onceupon\": 28122,\n  \"onceuponatime</w>\": 33505,\n  \"onco\": 46700,\n  \"oncology</w>\": 24593,\n  \"ond\": 27918,\n  \"ond</w>\": 2636,\n  \"onda</w>\": 32643,\n  \"onday</w>\": 29864,\n  \"onde</w>\": 44532,\n  \"ondo</w>\": 29529,\n  \"ondon\": 42043,\n  \"ondon</w>\": 11851,\n  \"one\": 1980,\n  \"one</w>\": 637,\n  \"onec\": 27746,\n  \"oned\": 28012,\n  \"oned</w>\": 4698,\n  \"onedirection</w>\": 16245,\n  \"onee</w>\": 44433,\n  \"oneill</w>\": 44808,\n  \"onelove</w>\": 47417,\n  \"onent</w>\": 12147,\n  \"onents</w>\": 11709,\n  \"oneof\": 48478,\n  \"onep\": 20440,\n  \"onepiece</w>\": 43153,\n  \"oneplus</w>\": 25981,\n  \"oner\": 30055,\n  \"oner</w>\": 6071,\n  \"oners</w>\": 12324,\n  \"ones\": 20757,\n  \"ones</w>\": 1575,\n  \"oneself</w>\": 46874,\n  \"onesie</w>\": 33237,\n  \"oness</w>\": 25379,\n  \"onet</w>\": 36058,\n  \"oneteam</w>\": 41094,\n  \"onetsy</w>\": 33392,\n  \"onew</w>\": 43848,\n  \"onews</w>\": 18696,\n  \"onex</w>\": 49116,\n  \"oney\": 44498,\n  \"oney</w>\": 9408,\n  \"onf</w>\": 41790,\n  \"onfox</w>\": 29874,\n  \"ong\": 2787,\n  \"ong</w>\": 846,\n  \"onga</w>\": 30259,\n  \"ongchang</w>\": 35071,\n  \"ongi</w>\": 21754,\n  \"ongo</w>\": 31226,\n  \"ongoing</w>\": 10393,\n  \"ongs</w>\": 12143,\n  \"oni\": 4385,\n  \"oni</w>\": 8048,\n  \"onia</w>\": 8001,\n  \"onial</w>\": 27599,\n  \"onian</w>\": 21090,\n  \"onic\": 15838,\n  \"onic</w>\": 3711,\n  \"onica</w>\": 14631,\n  \"onics</w>\": 9779,\n  \"onie</w>\": 35249,\n  \"onies</w>\": 22601,\n  \"onimo</w>\": 41271,\n  \"oning</w>\": 5197,\n  \"onion</w>\": 10985,\n  \"onions</w>\": 15255,\n  \"onist</w>\": 10099,\n  \"onists</w>\": 19659,\n  \"onix</w>\": 27370,\n  \"onized</w>\": 43657,\n  \"onlin\": 31103,\n  \"online\": 12940,\n  \"online</w>\": 2027,\n  \"onlinemarketing</w>\": 41820,\n  \"onlineshopping</w>\": 38587,\n  \"only\": 11646,\n  \"only</w>\": 1033,\n  \"onlyin\": 32947,\n  \"onna\": 25438,\n  \"onna</w>\": 35458,\n  \"onnaise</w>\": 48934,\n  \"onne</w>\": 23466,\n  \"onnell</w>\": 45613,\n  \"ono\": 28165,\n  \"ono</w>\": 14388,\n  \"onom\": 48014,\n  \"onomy</w>\": 36873,\n  \"onpoli</w>\": 20708,\n  \"ons\": 26076,\n  \"ons</w>\": 708,\n  \"onsale</w>\": 36324,\n  \"onset</w>\": 30527,\n  \"onsite</w>\": 37336,\n  \"onstage</w>\": 21821,\n  \"onstorm</w>\": 49333,\n  \"ont\": 34303,\n  \"ont</w>\": 11157,\n  \"ontari\": 6739,\n  \"ontario\": 42766,\n  \"ontario</w>\": 7436,\n  \"onte</w>\": 34723,\n  \"onthe\": 12241,\n  \"onther\": 46563,\n  \"ontheroad</w>\": 47516,\n  \"onthisday</w>\": 6862,\n  \"onto\": 11745,\n  \"onto</w>\": 3141,\n  \"ontology</w>\": 37364,\n  \"ontour</w>\": 32155,\n  \"onu\": 44142,\n  \"onward</w>\": 34827,\n  \"onwards</w>\": 20682,\n  \"ony\": 9490,\n  \"ony</w>\": 2926,\n  \"onym\": 11483,\n  \"onymous</w>\": 13038,\n  \"onyx</w>\": 31353,\n  \"oo\": 574,\n  \"oo</w>\": 2822,\n  \"ood\": 16429,\n  \"ood</w>\": 738,\n  \"oodle</w>\": 45289,\n  \"oods</w>\": 44660,\n  \"oof</w>\": 42270,\n  \"ooh</w>\": 16806,\n  \"ook\": 22326,\n  \"ook</w>\": 8394,\n  \"ooks</w>\": 31082,\n  \"ool\": 37702,\n  \"ool</w>\": 929,\n  \"oom\": 22786,\n  \"oom</w>\": 15002,\n  \"oomf</w>\": 40607,\n  \"oon\": 35651,\n  \"oon</w>\": 7100,\n  \"ooo</w>\": 9571,\n  \"oooh</w>\": 28927,\n  \"oooo\": 4002,\n  \"oooo</w>\": 13643,\n  \"ooooo</w>\": 12532,\n  \"oooooo\": 43590,\n  \"oooooo</w>\": 20372,\n  \"ooooooo</w>\": 30859,\n  \"oooooooo\": 15473,\n  \"oooooooo</w>\": 43408,\n  \"oooooooooooooooo\": 48645,\n  \"oop</w>\": 7326,\n  \"ooper</w>\": 39906,\n  \"oops</w>\": 9116,\n  \"oor</w>\": 35239,\n  \"oos</w>\": 9896,\n  \"oosa</w>\": 30834,\n  \"oose</w>\": 38941,\n  \"oot</w>\": 17667,\n  \"ootball</w>\": 28914,\n  \"ootd</w>\": 16547,\n  \"ooth</w>\": 12682,\n  \"oott</w>\": 34316,\n  \"ooza</w>\": 22809,\n  \"op\": 676,\n  \"op</w>\": 3691,\n  \"opa</w>\": 28949,\n  \"opal</w>\": 28982,\n  \"opar\": 18167,\n  \"opath\": 33079,\n  \"opathic</w>\": 37521,\n  \"opathy</w>\": 28466,\n  \"opau\": 27239,\n  \"opd</w>\": 38288,\n  \"ope\": 31694,\n  \"ope</w>\": 11440,\n  \"opec</w>\": 33138,\n  \"opel</w>\": 36952,\n  \"open\": 3647,\n  \"open</w>\": 1488,\n  \"openaccess</w>\": 26591,\n  \"opend\": 28069,\n  \"opendata</w>\": 35709,\n  \"openday</w>\": 46991,\n  \"opened</w>\": 5303,\n  \"opener</w>\": 8998,\n  \"openhouse</w>\": 36091,\n  \"opening\": 33728,\n  \"opening</w>\": 2516,\n  \"openingday</w>\": 36359,\n  \"openings</w>\": 27643,\n  \"openly</w>\": 23005,\n  \"opens</w>\": 4801,\n  \"opensource</w>\": 29930,\n  \"oper\": 2796,\n  \"oper</w>\": 37533,\n  \"opera</w>\": 8056,\n  \"operate</w>\": 19306,\n  \"operated</w>\": 23031,\n  \"operates</w>\": 38675,\n  \"operating</w>\": 12218,\n  \"operation\": 27173,\n  \"operation</w>\": 7639,\n  \"operational</w>\": 18237,\n  \"operations</w>\": 8106,\n  \"operative</w>\": 28380,\n  \"operator</w>\": 15972,\n  \"operators</w>\": 19267,\n  \"opers</w>\": 48728,\n  \"opes</w>\": 37258,\n  \"oph\": 6796,\n  \"opha\": 38634,\n  \"ophel\": 45017,\n  \"ophelia</w>\": 49118,\n  \"ophi\": 44547,\n  \"ophile</w>\": 35915,\n  \"opho\": 12900,\n  \"ophobia</w>\": 21111,\n  \"ophobic</w>\": 29934,\n  \"ophon\": 25120,\n  \"ophone</w>\": 26345,\n  \"ophthal\": 33135,\n  \"ophy\": 28539,\n  \"opi\": 40056,\n  \"opi</w>\": 48994,\n  \"opin\": 7636,\n  \"opini\": 14825,\n  \"opinion</w>\": 7843,\n  \"opinions</w>\": 16192,\n  \"opio\": 17371,\n  \"opioid</w>\": 22833,\n  \"opioids</w>\": 47578,\n  \"opla\": 36270,\n  \"ople</w>\": 25663,\n  \"opol\": 15173,\n  \"opoly</w>\": 23729,\n  \"opor\": 39650,\n  \"opoulos</w>\": 42020,\n  \"opp\": 2020,\n  \"opp</w>\": 21024,\n  \"oppa</w>\": 23637,\n  \"oppo\": 7399,\n  \"oppo</w>\": 41770,\n  \"opponent</w>\": 17002,\n  \"opponents</w>\": 19664,\n  \"oppor\": 2914,\n  \"opportun\": 2939,\n  \"opportunities</w>\": 5978,\n  \"opportunity</w>\": 4004,\n  \"oppos\": 10091,\n  \"oppose</w>\": 23617,\n  \"opposed</w>\": 22509,\n  \"opposes</w>\": 47471,\n  \"opposing</w>\": 24376,\n  \"opposite</w>\": 12872,\n  \"opposition</w>\": 11062,\n  \"oppre\": 17341,\n  \"oppressed</w>\": 41492,\n  \"oppression</w>\": 30650,\n  \"opra</w>\": 28291,\n  \"oprah</w>\": 22562,\n  \"opry</w>\": 35340,\n  \"ops</w>\": 3054,\n  \"opt\": 45103,\n  \"opt</w>\": 27188,\n  \"opted</w>\": 42035,\n  \"opti\": 6580,\n  \"optic\": 25190,\n  \"optic</w>\": 24755,\n  \"optical</w>\": 16822,\n  \"optics</w>\": 27165,\n  \"optim\": 22331,\n  \"optimal</w>\": 25235,\n  \"optimi\": 9737,\n  \"optimis\": 39459,\n  \"optimism</w>\": 25226,\n  \"optimist</w>\": 44581,\n  \"optimistic</w>\": 23104,\n  \"optimization</w>\": 25125,\n  \"optimize</w>\": 30456,\n  \"optimized</w>\": 43939,\n  \"optimizing</w>\": 49157,\n  \"optimum</w>\": 35974,\n  \"optimus</w>\": 43453,\n  \"option</w>\": 8464,\n  \"optional</w>\": 25411,\n  \"options</w>\": 7063,\n  \"optome\": 35533,\n  \"opul\": 39858,\n  \"opus</w>\": 33295,\n  \"opy</w>\": 21835,\n  \"or\": 523,\n  \"or</w>\": 541,\n  \"ora</w>\": 4301,\n  \"orac\": 24673,\n  \"oracle\": 37308,\n  \"oracle</w>\": 15966,\n  \"orah</w>\": 40820,\n  \"orail</w>\": 45120,\n  \"oral\": 32490,\n  \"oral</w>\": 6007,\n  \"orama</w>\": 33619,\n  \"oran\": 32209,\n  \"oran</w>\": 28395,\n  \"orang\": 22116,\n  \"orange\": 13957,\n  \"orange</w>\": 4287,\n  \"oranges</w>\": 32417,\n  \"orangu\": 36112,\n  \"orb\": 28894,\n  \"orb</w>\": 36958,\n  \"orbit</w>\": 19713,\n  \"orbital</w>\": 40312,\n  \"orc</w>\": 44305,\n  \"orca</w>\": 18631,\n  \"orcas</w>\": 47676,\n  \"orch\": 11893,\n  \"orchar\": 40226,\n  \"orchard</w>\": 19530,\n  \"orche\": 8004,\n  \"orchestr\": 42937,\n  \"orchestra</w>\": 9573,\n  \"orchestral</w>\": 40285,\n  \"orchi\": 23696,\n  \"orchid</w>\": 18678,\n  \"orchids</w>\": 28376,\n  \"ord\": 26903,\n  \"ord</w>\": 11502,\n  \"orda\": 33462,\n  \"ordained</w>\": 38302,\n  \"order\": 24613,\n  \"order</w>\": 2191,\n  \"ordered</w>\": 8335,\n  \"ordering</w>\": 19588,\n  \"orderly</w>\": 43457,\n  \"orders</w>\": 6187,\n  \"ordin\": 4378,\n  \"ordinance</w>\": 38583,\n  \"ordinary</w>\": 8012,\n  \"ore\": 3580,\n  \"ore</w>\": 1423,\n  \"orean</w>\": 36696,\n  \"ored</w>\": 5133,\n  \"oregon\": 21759,\n  \"oregon</w>\": 8035,\n  \"oren\": 21645,\n  \"oreo</w>\": 21873,\n  \"oreos</w>\": 41688,\n  \"ores</w>\": 17328,\n  \"org\": 3401,\n  \"org</w>\": 5593,\n  \"organ\": 3338,\n  \"organ</w>\": 13213,\n  \"organi\": 3636,\n  \"organic\": 24080,\n  \"organic</w>\": 5980,\n  \"organics</w>\": 44199,\n  \"organis\": 13204,\n  \"organisation</w>\": 15868,\n  \"organisations</w>\": 20651,\n  \"organise</w>\": 36073,\n  \"organised</w>\": 13191,\n  \"organiser</w>\": 49141,\n  \"organisers</w>\": 35778,\n  \"organising</w>\": 22787,\n  \"organisms</w>\": 37041,\n  \"organiz\": 11107,\n  \"organization</w>\": 8064,\n  \"organizational</w>\": 29510,\n  \"organizations</w>\": 13453,\n  \"organize</w>\": 19973,\n  \"organized</w>\": 10681,\n  \"organizer</w>\": 23905,\n  \"organizers</w>\": 27191,\n  \"organizing</w>\": 15779,\n  \"organs</w>\": 29872,\n  \"orgs</w>\": 29500,\n  \"ori\": 1540,\n  \"ori</w>\": 8693,\n  \"oria</w>\": 11474,\n  \"orial</w>\": 8648,\n  \"orian</w>\": 21193,\n  \"oric</w>\": 43810,\n  \"orice</w>\": 41341,\n  \"orie</w>\": 18815,\n  \"orient\": 13149,\n  \"orient</w>\": 30770,\n  \"oriental</w>\": 23056,\n  \"orientation</w>\": 16873,\n  \"oriente\": 40390,\n  \"oriented</w>\": 24596,\n  \"orienteering</w>\": 42985,\n  \"ories</w>\": 5934,\n  \"orig\": 2273,\n  \"orig</w>\": 38463,\n  \"origami</w>\": 31832,\n  \"origin\": 2555,\n  \"origin</w>\": 12372,\n  \"original\": 18496,\n  \"original</w>\": 3117,\n  \"originally</w>\": 12849,\n  \"originals</w>\": 16953,\n  \"originated</w>\": 41823,\n  \"origins</w>\": 16291,\n  \"orin</w>\": 39863,\n  \"oring</w>\": 3006,\n  \"orio</w>\": 24308,\n  \"orioles</w>\": 21430,\n  \"orion</w>\": 21765,\n  \"oris</w>\": 37064,\n  \"orities</w>\": 7903,\n  \"ority</w>\": 5556,\n  \"orium</w>\": 12015,\n  \"ork\": 22202,\n  \"ork</w>\": 37235,\n  \"orkney</w>\": 34254,\n  \"orl</w>\": 39465,\n  \"orlando\": 32247,\n  \"orlando</w>\": 7827,\n  \"orleans</w>\": 11127,\n  \"orm</w>\": 38464,\n  \"orn\": 25412,\n  \"orn</w>\": 8130,\n  \"ornam\": 36122,\n  \"ornament</w>\": 23409,\n  \"ornamental</w>\": 46270,\n  \"ornaments</w>\": 28968,\n  \"ornate</w>\": 46865,\n  \"orni\": 27713,\n  \"ornithology</w>\": 38275,\n  \"orns</w>\": 19340,\n  \"oro\": 9848,\n  \"oro</w>\": 14573,\n  \"orous</w>\": 19286,\n  \"orph\": 17318,\n  \"orphan\": 22718,\n  \"orphan</w>\": 28994,\n  \"orphanage</w>\": 45196,\n  \"orphaned</w>\": 46792,\n  \"orphans</w>\": 36588,\n  \"orphe\": 39186,\n  \"orr</w>\": 32977,\n  \"ors</w>\": 1127,\n  \"orship</w>\": 20846,\n  \"ort</w>\": 1019,\n  \"ortega</w>\": 39727,\n  \"orth\": 22584,\n  \"orth</w>\": 24461,\n  \"ortho\": 11366,\n  \"orthodon\": 37730,\n  \"orthodox</w>\": 19008,\n  \"orthop\": 42123,\n  \"orthopedic</w>\": 49341,\n  \"ortiz</w>\": 23544,\n  \"orton</w>\": 37238,\n  \"oru\": 44629,\n  \"oru</w>\": 31281,\n  \"orum</w>\": 42724,\n  \"orwell</w>\": 41218,\n  \"ory\": 16983,\n  \"ory</w>\": 1985,\n  \"os\": 2211,\n  \"os</w>\": 1299,\n  \"osa\": 16340,\n  \"osa</w>\": 17237,\n  \"osaka</w>\": 21347,\n  \"osborne</w>\": 22402,\n  \"osbourne</w>\": 43376,\n  \"osc\": 5092,\n  \"oscar\": 21157,\n  \"oscar</w>\": 8191,\n  \"oscars</w>\": 11098,\n  \"osce</w>\": 37303,\n  \"oscill\": 38272,\n  \"ose\": 46942,\n  \"ose</w>\": 22541,\n  \"osh\": 30717,\n  \"osh</w>\": 35011,\n  \"osha</w>\": 33907,\n  \"oshi</w>\": 34770,\n  \"osi\": 25247,\n  \"osi</w>\": 17636,\n  \"osis</w>\": 13903,\n  \"osity</w>\": 12730,\n  \"oslo</w>\": 20547,\n  \"osm\": 31626,\n  \"osman</w>\": 46539,\n  \"oso\": 42793,\n  \"oso</w>\": 21285,\n  \"osp\": 24387,\n  \"ospre\": 49001,\n  \"osprey</w>\": 37893,\n  \"oss\": 29362,\n  \"oss</w>\": 34640,\n  \"ost\": 23701,\n  \"ost</w>\": 18749,\n  \"oste\": 20632,\n  \"osteo\": 43163,\n  \"oster\": 31781,\n  \"ostr\": 33673,\n  \"ostrich</w>\": 47640,\n  \"osu\": 29480,\n  \"osu</w>\": 19818,\n  \"oswald</w>\": 38471,\n  \"ot\": 1863,\n  \"ot</w>\": 2062,\n  \"ota\": 17509,\n  \"ota</w>\": 8741,\n  \"otago</w>\": 45919,\n  \"otaku</w>\": 40743,\n  \"otas</w>\": 47616,\n  \"otc</w>\": 37934,\n  \"otd</w>\": 5683,\n  \"ote\": 28511,\n  \"ote</w>\": 19744,\n  \"otes</w>\": 27280,\n  \"oth\": 33262,\n  \"oth</w>\": 33519,\n  \"other\": 9758,\n  \"other</w>\": 1010,\n  \"others</w>\": 3326,\n  \"otherwise</w>\": 12376,\n  \"oti\": 19567,\n  \"oti</w>\": 45564,\n  \"otic</w>\": 9671,\n  \"otis</w>\": 28246,\n  \"otive</w>\": 10877,\n  \"oto\": 23946,\n  \"oto</w>\": 23399,\n  \"otp</w>\": 29822,\n  \"otr</w>\": 38685,\n  \"ots</w>\": 5769,\n  \"ott\": 10167,\n  \"ott</w>\": 7936,\n  \"otta\": 7623,\n  \"otta</w>\": 20941,\n  \"ottawa\": 49027,\n  \"ottawa</w>\": 9019,\n  \"otte</w>\": 35214,\n  \"otter\": 34710,\n  \"otter</w>\": 22456,\n  \"otters</w>\": 38883,\n  \"otti</w>\": 36721,\n  \"ottnews</w>\": 33995,\n  \"otto</w>\": 17730,\n  \"ottoman</w>\": 27503,\n  \"otw</w>\": 35259,\n  \"otwol\": 46868,\n  \"ou\": 520,\n  \"ou</w>\": 6544,\n  \"ouat</w>\": 32954,\n  \"ouch</w>\": 13493,\n  \"oud</w>\": 1359,\n  \"oue</w>\": 48838,\n  \"ouf</w>\": 34618,\n  \"ough\": 4204,\n  \"ough</w>\": 991,\n  \"ought</w>\": 2253,\n  \"oughton</w>\": 36860,\n  \"oui</w>\": 39421,\n  \"ouk</w>\": 21796,\n  \"oul\": 20253,\n  \"oul</w>\": 8081,\n  \"ould</w>\": 859,\n  \"oulos</w>\": 32808,\n  \"oun\": 636,\n  \"oun</w>\": 20960,\n  \"ounce</w>\": 15027,\n  \"ounces</w>\": 30299,\n  \"ound\": 2013,\n  \"ound</w>\": 853,\n  \"oundation</w>\": 40132,\n  \"ounded</w>\": 9634,\n  \"ounding</w>\": 11944,\n  \"ounds</w>\": 2753,\n  \"oung\": 35875,\n  \"oung</w>\": 25341,\n  \"ounge</w>\": 29427,\n  \"ount\": 43801,\n  \"ount</w>\": 4172,\n  \"ounts</w>\": 10963,\n  \"oup</w>\": 32815,\n  \"our\": 727,\n  \"our</w>\": 581,\n  \"oura\": 29806,\n  \"oura</w>\": 36352,\n  \"ourable</w>\": 24126,\n  \"ourage</w>\": 34525,\n  \"oural</w>\": 45840,\n  \"oured</w>\": 6956,\n  \"ouri\": 12696,\n  \"ouring</w>\": 12000,\n  \"ourism</w>\": 25496,\n  \"ourke</w>\": 26480,\n  \"ourlives</w>\": 37541,\n  \"ouro\": 41224,\n  \"ours</w>\": 1491,\n  \"ourse</w>\": 15415,\n  \"ourselves</w>\": 10124,\n  \"ourt</w>\": 22960,\n  \"oury</w>\": 29484,\n  \"ous\": 1987,\n  \"ous</w>\": 879,\n  \"ouse\": 32048,\n  \"ouse</w>\": 7603,\n  \"ouses</w>\": 33666,\n  \"ously</w>\": 2501,\n  \"ousness</w>\": 10689,\n  \"ousy</w>\": 28302,\n  \"out\": 1130,\n  \"out</w>\": 620,\n  \"outa</w>\": 35187,\n  \"outage</w>\": 27320,\n  \"outages</w>\": 40353,\n  \"outback</w>\": 28532,\n  \"outbound</w>\": 41256,\n  \"outbreak</w>\": 20103,\n  \"outcome</w>\": 16552,\n  \"outcomes</w>\": 14016,\n  \"outdated</w>\": 38313,\n  \"outdoor\": 19184,\n  \"outdoor</w>\": 6368,\n  \"outdoors</w>\": 10469,\n  \"oute</w>\": 44180,\n  \"outed</w>\": 34435,\n  \"outer\": 30499,\n  \"outer</w>\": 14188,\n  \"outes</w>\": 39600,\n  \"outfield</w>\": 41826,\n  \"outfit</w>\": 6525,\n  \"outfits</w>\": 16366,\n  \"outfitters</w>\": 37725,\n  \"outfy</w>\": 34920,\n  \"outgoing</w>\": 27302,\n  \"outh\": 16933,\n  \"outh</w>\": 8111,\n  \"outine</w>\": 35452,\n  \"outing</w>\": 11251,\n  \"outlander\": 45820,\n  \"outlander</w>\": 17095,\n  \"outlaw\": 37498,\n  \"outlaw</w>\": 27340,\n  \"outlaws</w>\": 30935,\n  \"outlet</w>\": 16855,\n  \"outlets</w>\": 20822,\n  \"outline</w>\": 26894,\n  \"outlines</w>\": 29159,\n  \"outlining</w>\": 45960,\n  \"outlook</w>\": 12983,\n  \"outof\": 43958,\n  \"outpatient</w>\": 46603,\n  \"outpost</w>\": 44622,\n  \"output</w>\": 17255,\n  \"outra\": 14262,\n  \"outrage</w>\": 23577,\n  \"outraged</w>\": 43402,\n  \"outrageous</w>\": 29342,\n  \"outre\": 14373,\n  \"outreach</w>\": 15297,\n  \"outright</w>\": 38200,\n  \"outs</w>\": 5790,\n  \"outsi\": 22515,\n  \"outside\": 47693,\n  \"outside</w>\": 2782,\n  \"outsider</w>\": 41196,\n  \"outsiders</w>\": 41742,\n  \"outskirts</w>\": 42088,\n  \"outsourcing</w>\": 34543,\n  \"outstanding</w>\": 6387,\n  \"outta</w>\": 15807,\n  \"outtuesday</w>\": 48692,\n  \"outw\": 34650,\n  \"oux\": 40960,\n  \"oux</w>\": 14228,\n  \"ov\": 6420,\n  \"ov</w>\": 8479,\n  \"ova</w>\": 12762,\n  \"oval</w>\": 15039,\n  \"ovarian</w>\": 42913,\n  \"ovation</w>\": 24333,\n  \"ove\": 8649,\n  \"ove</w>\": 15456,\n  \"oven\": 44620,\n  \"oven</w>\": 12579,\n  \"over\": 1658,\n  \"over</w>\": 962,\n  \"overall</w>\": 6914,\n  \"overboard</w>\": 42982,\n  \"overcame</w>\": 47235,\n  \"overcast</w>\": 36942,\n  \"overcome</w>\": 14365,\n  \"overcoming</w>\": 29348,\n  \"overdose</w>\": 27017,\n  \"overdrive</w>\": 40088,\n  \"overdue</w>\": 30240,\n  \"overflow</w>\": 32885,\n  \"overflowing</w>\": 45370,\n  \"overhaul</w>\": 31531,\n  \"overhead</w>\": 20321,\n  \"overland</w>\": 38808,\n  \"overlay</w>\": 44827,\n  \"overload</w>\": 24327,\n  \"overlook</w>\": 35767,\n  \"overlooked</w>\": 27632,\n  \"overlooking</w>\": 17319,\n  \"overly</w>\": 28820,\n  \"overnight</w>\": 9913,\n  \"overpass</w>\": 44310,\n  \"overrated</w>\": 38214,\n  \"overs\": 45774,\n  \"overs</w>\": 17329,\n  \"overseas</w>\": 15100,\n  \"oversight</w>\": 32494,\n  \"oversized</w>\": 31557,\n  \"overtime</w>\": 19347,\n  \"overturned</w>\": 31048,\n  \"overview</w>\": 14789,\n  \"overwatch</w>\": 18124,\n  \"overweight</w>\": 43465,\n  \"overwhel\": 12204,\n  \"overwhelmed</w>\": 23459,\n  \"overwhelming</w>\": 20306,\n  \"overwhelmingly</w>\": 43549,\n  \"ovi\": 32508,\n  \"ovic</w>\": 22417,\n  \"ovich</w>\": 27623,\n  \"ovie\": 47677,\n  \"ovo\": 41920,\n  \"ovo</w>\": 18065,\n  \"ovski</w>\": 26167,\n  \"ow\": 2032,\n  \"ow</w>\": 2250,\n  \"owa</w>\": 32770,\n  \"owe</w>\": 19073,\n  \"owed</w>\": 37641,\n  \"owen\": 24838,\n  \"owen</w>\": 12056,\n  \"owens</w>\": 20664,\n  \"owes</w>\": 35069,\n  \"owing</w>\": 48582,\n  \"owl\": 34332,\n  \"owl</w>\": 9899,\n  \"owls</w>\": 18247,\n  \"own\": 3845,\n  \"own</w>\": 1758,\n  \"owned</w>\": 8536,\n  \"owner</w>\": 5019,\n  \"owners</w>\": 7712,\n  \"ownership</w>\": 16583,\n  \"owning</w>\": 24661,\n  \"owns</w>\": 17533,\n  \"owo</w>\": 46142,\n  \"ows</w>\": 27423,\n  \"owski</w>\": 22573,\n  \"ox\": 3282,\n  \"ox</w>\": 12071,\n  \"oxfam</w>\": 45466,\n  \"oxford\": 28588,\n  \"oxford</w>\": 8824,\n  \"oxfordshire</w>\": 37855,\n  \"oxi\": 33731,\n  \"oxi</w>\": 48147,\n  \"oxid\": 17701,\n  \"oxide</w>\": 28235,\n  \"oxo</w>\": 37088,\n  \"oxy\": 12432,\n  \"oxygen</w>\": 16214,\n  \"oy\": 6638,\n  \"oy</w>\": 12437,\n  \"oya</w>\": 38894,\n  \"oye\": 48677,\n  \"oyster\": 40545,\n  \"oyster</w>\": 17253,\n  \"oysters</w>\": 22672,\n  \"oz\": 10584,\n  \"oz</w>\": 6044,\n  \"ozar\": 31848,\n  \"ozil</w>\": 41365,\n  \"ozone</w>\": 37052,\n  \"ozzy</w>\": 39549,\n  \"p\": 79,\n  \"p</w>\": 335,\n  \"pa\": 765,\n  \"pa</w>\": 2217,\n  \"paa</w>\": 32812,\n  \"pab\": 9354,\n  \"pablo\": 42172,\n  \"pablo</w>\": 14473,\n  \"pac\": 2332,\n  \"pac</w>\": 7608,\n  \"pace\": 40600,\n  \"pace</w>\": 9450,\n  \"paced</w>\": 32611,\n  \"pacers</w>\": 23976,\n  \"paces</w>\": 43001,\n  \"paci\": 5699,\n  \"pacific\": 19723,\n  \"pacific</w>\": 6654,\n  \"pacing</w>\": 45202,\n  \"pack\": 2711,\n  \"pack</w>\": 3420,\n  \"package</w>\": 7053,\n  \"packaged</w>\": 29656,\n  \"packages</w>\": 14305,\n  \"packaging</w>\": 11658,\n  \"packard</w>\": 46421,\n  \"packed</w>\": 5883,\n  \"packer</w>\": 28209,\n  \"packers</w>\": 14294,\n  \"packet</w>\": 25022,\n  \"packets</w>\": 40448,\n  \"packing</w>\": 9829,\n  \"packs</w>\": 11086,\n  \"paco</w>\": 41364,\n  \"pacqui\": 28456,\n  \"pacquiao</w>\": 30485,\n  \"pact</w>\": 27182,\n  \"pad\": 3798,\n  \"pad</w>\": 7601,\n  \"padded</w>\": 42253,\n  \"paddington</w>\": 33162,\n  \"paddle\": 38276,\n  \"paddle</w>\": 20811,\n  \"paddling</w>\": 40645,\n  \"paddock</w>\": 29590,\n  \"paddy\": 33103,\n  \"paddy</w>\": 19855,\n  \"padi</w>\": 47037,\n  \"padilla</w>\": 22380,\n  \"padma\": 44595,\n  \"padma</w>\": 46457,\n  \"padre</w>\": 38343,\n  \"padres</w>\": 22829,\n  \"pads</w>\": 17353,\n  \"paedi\": 41488,\n  \"paella</w>\": 46924,\n  \"paf\": 47185,\n  \"pafc</w>\": 49259,\n  \"pag\": 4151,\n  \"pag</w>\": 30525,\n  \"pagan</w>\": 27854,\n  \"page\": 14996,\n  \"page</w>\": 2504,\n  \"pageant</w>\": 22139,\n  \"pages</w>\": 8082,\n  \"pagoda</w>\": 44309,\n  \"pah\": 41054,\n  \"pah</w>\": 26884,\n  \"pai\": 20624,\n  \"pai</w>\": 21198,\n  \"paid</w>\": 5057,\n  \"paige\": 33659,\n  \"paige</w>\": 16022,\n  \"paign</w>\": 31796,\n  \"pain\": 2141,\n  \"pain</w>\": 4495,\n  \"paine</w>\": 38069,\n  \"painful</w>\": 16361,\n  \"pains</w>\": 25639,\n  \"paint\": 7948,\n  \"paint</w>\": 5185,\n  \"paintball</w>\": 39730,\n  \"painted</w>\": 6433,\n  \"painter</w>\": 10888,\n  \"painters</w>\": 35703,\n  \"painting\": 49164,\n  \"painting</w>\": 3086,\n  \"paintings</w>\": 9956,\n  \"paints</w>\": 21672,\n  \"pair\": 19848,\n  \"pair</w>\": 4038,\n  \"paired</w>\": 12433,\n  \"pairing</w>\": 16313,\n  \"pairings</w>\": 41152,\n  \"pairs</w>\": 9950,\n  \"pais\": 16878,\n  \"paisley</w>\": 22954,\n  \"pajam\": 24110,\n  \"pajama</w>\": 40244,\n  \"pajamas</w>\": 37231,\n  \"pak\": 13186,\n  \"pak</w>\": 9094,\n  \"paki\": 3438,\n  \"pakistan\": 10713,\n  \"pakistan</w>\": 3994,\n  \"pakistani</w>\": 14050,\n  \"pakistanis</w>\": 45707,\n  \"pakv\": 38196,\n  \"pal\": 1850,\n  \"pal</w>\": 3611,\n  \"pala</w>\": 17895,\n  \"palace</w>\": 6381,\n  \"palaces</w>\": 45625,\n  \"palad\": 28371,\n  \"palae\": 43379,\n  \"palais</w>\": 35673,\n  \"palate</w>\": 34666,\n  \"palawan</w>\": 48202,\n  \"palazzo</w>\": 36006,\n  \"pale\": 4768,\n  \"pale</w>\": 12518,\n  \"paleo\": 36741,\n  \"paleo</w>\": 22198,\n  \"paler\": 38028,\n  \"palermo</w>\": 40635,\n  \"palestin\": 9449,\n  \"palestine</w>\": 11682,\n  \"palestinian</w>\": 11764,\n  \"palestinians</w>\": 21874,\n  \"palette</w>\": 13901,\n  \"pali\": 48063,\n  \"palin</w>\": 40153,\n  \"palis\": 44256,\n  \"pality</w>\": 27296,\n  \"pall\": 35817,\n  \"palla\": 21208,\n  \"palladium</w>\": 37888,\n  \"pallet</w>\": 39057,\n  \"palli\": 28954,\n  \"palliative</w>\": 46014,\n  \"pally</w>\": 46073,\n  \"palm\": 19651,\n  \"palm</w>\": 8612,\n  \"palma</w>\": 29888,\n  \"palmer\": 40112,\n  \"palmer</w>\": 13633,\n  \"palms</w>\": 27059,\n  \"palo</w>\": 31562,\n  \"palom\": 47698,\n  \"palooza</w>\": 25861,\n  \"pals</w>\": 11043,\n  \"palsy</w>\": 46651,\n  \"pam\": 8228,\n  \"pam</w>\": 18513,\n  \"pamela</w>\": 26991,\n  \"pamp\": 37653,\n  \"pamper</w>\": 44345,\n  \"pamph\": 41332,\n  \"pan\": 1072,\n  \"pan</w>\": 7437,\n  \"panam\": 24606,\n  \"panama</w>\": 15522,\n  \"panas\": 26207,\n  \"panasonic</w>\": 29750,\n  \"pancake</w>\": 18723,\n  \"pancakes</w>\": 15308,\n  \"panch\": 27251,\n  \"pancra\": 42472,\n  \"pancre\": 27708,\n  \"pancreatic</w>\": 49337,\n  \"pancy</w>\": 41625,\n  \"pand\": 5631,\n  \"panda</w>\": 12952,\n  \"pandas</w>\": 35119,\n  \"pande\": 38419,\n  \"pandey</w>\": 34895,\n  \"pandit</w>\": 41191,\n  \"pandor\": 30250,\n  \"pandora</w>\": 17727,\n  \"pandoramusic</w>\": 42344,\n  \"pane</w>\": 27470,\n  \"panel</w>\": 3724,\n  \"paneli\": 19410,\n  \"panelist</w>\": 39719,\n  \"panelists</w>\": 24619,\n  \"panels</w>\": 12735,\n  \"panera</w>\": 48471,\n  \"pang\": 16756,\n  \"pang</w>\": 23672,\n  \"panhandle</w>\": 40919,\n  \"pani</w>\": 36092,\n  \"panic\": 46671,\n  \"panic</w>\": 14124,\n  \"panini</w>\": 30410,\n  \"pann\": 42302,\n  \"panna</w>\": 49065,\n  \"pano</w>\": 36165,\n  \"panor\": 12962,\n  \"panorama</w>\": 19763,\n  \"panoramic</w>\": 22563,\n  \"pans</w>\": 35204,\n  \"pant</w>\": 22550,\n  \"panther\": 22825,\n  \"panther</w>\": 13262,\n  \"panthers</w>\": 10494,\n  \"panties</w>\": 32515,\n  \"panto</w>\": 28776,\n  \"pantry</w>\": 25608,\n  \"pants</w>\": 5003,\n  \"panty\": 44217,\n  \"pany</w>\": 45567,\n  \"panzer</w>\": 41159,\n  \"pao</w>\": 33790,\n  \"paola</w>\": 44689,\n  \"paolo\": 48488,\n  \"paolo</w>\": 21133,\n  \"pap\": 1884,\n  \"pap</w>\": 30756,\n  \"papa</w>\": 12211,\n  \"papar\": 32782,\n  \"paparazzi</w>\": 37842,\n  \"papaya</w>\": 44098,\n  \"paper\": 8680,\n  \"paper</w>\": 2802,\n  \"paperback</w>\": 17928,\n  \"papers</w>\": 8204,\n  \"paperwork</w>\": 35785,\n  \"papi</w>\": 35177,\n  \"papp\": 26361,\n  \"paprika</w>\": 44793,\n  \"papua</w>\": 32629,\n  \"par\": 699,\n  \"par</w>\": 9163,\n  \"para\": 18355,\n  \"para</w>\": 8976,\n  \"parach\": 23147,\n  \"parachute</w>\": 30122,\n  \"parad\": 37143,\n  \"parade</w>\": 5809,\n  \"parades</w>\": 46479,\n  \"paradi\": 6658,\n  \"paradig\": 27786,\n  \"paradigm</w>\": 33485,\n  \"paradise\": 45869,\n  \"paradise</w>\": 7247,\n  \"paradox</w>\": 33109,\n  \"parag\": 11866,\n  \"paragon</w>\": 48099,\n  \"paragra\": 24903,\n  \"paragraph</w>\": 28499,\n  \"paragu\": 38021,\n  \"paraguay</w>\": 43579,\n  \"paral\": 15143,\n  \"paralle\": 13184,\n  \"parallel</w>\": 18201,\n  \"paralleled</w>\": 42520,\n  \"parallels</w>\": 46101,\n  \"paraly\": 30255,\n  \"paralym\": 18727,\n  \"paralympic</w>\": 30806,\n  \"paralympics</w>\": 37162,\n  \"paralysis</w>\": 45702,\n  \"param\": 12250,\n  \"parame\": 27106,\n  \"paramedic</w>\": 34630,\n  \"paramedics</w>\": 35991,\n  \"parameters</w>\": 44890,\n  \"paramore</w>\": 34401,\n  \"paramount</w>\": 26642,\n  \"parano\": 30283,\n  \"paranoid</w>\": 43029,\n  \"paranor\": 16940,\n  \"paranormal</w>\": 19047,\n  \"parap\": 41091,\n  \"paras\": 15198,\n  \"parasite</w>\": 42460,\n  \"parasites</w>\": 46175,\n  \"parc</w>\": 30914,\n  \"parcel</w>\": 30367,\n  \"parcels</w>\": 45589,\n  \"pard</w>\": 18773,\n  \"pardon\": 47606,\n  \"pardon</w>\": 26565,\n  \"pare\": 18202,\n  \"pared</w>\": 5498,\n  \"paren\": 3106,\n  \"parent\": 47848,\n  \"parent</w>\": 10183,\n  \"parental</w>\": 28339,\n  \"parenthood</w>\": 23887,\n  \"parenting</w>\": 14529,\n  \"parents</w>\": 3731,\n  \"pares</w>\": 12420,\n  \"parfait</w>\": 46140,\n  \"pari\": 17961,\n  \"pari</w>\": 27979,\n  \"paris\": 13982,\n  \"paris</w>\": 3445,\n  \"parisagreement</w>\": 47405,\n  \"parish\": 47328,\n  \"parish</w>\": 13020,\n  \"parisi\": 45081,\n  \"parisian</w>\": 38512,\n  \"parity</w>\": 42734,\n  \"park\": 4985,\n  \"park</w>\": 1452,\n  \"parked</w>\": 16487,\n  \"parker\": 31119,\n  \"parker</w>\": 8365,\n  \"parkin\": 34868,\n  \"parking</w>\": 5984,\n  \"parkinson</w>\": 28129,\n  \"parkland</w>\": 31287,\n  \"parkrun</w>\": 25747,\n  \"parks</w>\": 6873,\n  \"parkway</w>\": 19882,\n  \"parl\": 30373,\n  \"parl</w>\": 29897,\n  \"parliam\": 5941,\n  \"parliament\": 41599,\n  \"parliament</w>\": 7151,\n  \"parliamentary</w>\": 17912,\n  \"parlor</w>\": 38253,\n  \"parlour</w>\": 37829,\n  \"parma</w>\": 36077,\n  \"parme\": 26295,\n  \"parmesan</w>\": 27274,\n  \"paro\": 17429,\n  \"parody</w>\": 24318,\n  \"parole</w>\": 32158,\n  \"parr</w>\": 44113,\n  \"parrish</w>\": 43043,\n  \"parrot</w>\": 23565,\n  \"parry</w>\": 40604,\n  \"parsley</w>\": 30077,\n  \"parsons</w>\": 22505,\n  \"part\": 1872,\n  \"part</w>\": 1551,\n  \"parte</w>\": 48508,\n  \"parth</w>\": 34790,\n  \"parti\": 10509,\n  \"partial</w>\": 18957,\n  \"partially</w>\": 21269,\n  \"partic\": 2871,\n  \"partici\": 9540,\n  \"particip\": 4400,\n  \"participant</w>\": 27674,\n  \"participants</w>\": 10237,\n  \"participate</w>\": 9433,\n  \"participated</w>\": 14252,\n  \"participates</w>\": 46414,\n  \"participating</w>\": 11535,\n  \"participation</w>\": 13529,\n  \"particle</w>\": 27716,\n  \"particles</w>\": 27012,\n  \"particul\": 11408,\n  \"particular</w>\": 14098,\n  \"particularly</w>\": 12170,\n  \"parties</w>\": 9032,\n  \"parting</w>\": 32844,\n  \"partisan</w>\": 20772,\n  \"partist</w>\": 44713,\n  \"partition</w>\": 42219,\n  \"partly</w>\": 21459,\n  \"partner\": 5210,\n  \"partner</w>\": 4568,\n  \"partnered</w>\": 21402,\n  \"partnering</w>\": 21182,\n  \"partners</w>\": 5568,\n  \"partnership</w>\": 6123,\n  \"partnerships</w>\": 17418,\n  \"parton</w>\": 43245,\n  \"partridge</w>\": 34872,\n  \"parts</w>\": 5149,\n  \"party\": 12877,\n  \"party</w>\": 1580,\n  \"partying</w>\": 25702,\n  \"pas\": 1341,\n  \"pas</w>\": 9525,\n  \"pasadena</w>\": 25892,\n  \"pascal</w>\": 28626,\n  \"pasco</w>\": 49220,\n  \"pascu\": 42692,\n  \"pash\": 23936,\n  \"pasha</w>\": 46986,\n  \"paso</w>\": 18542,\n  \"pasqu\": 44941,\n  \"pass\": 5016,\n  \"pass</w>\": 3511,\n  \"passage</w>\": 16477,\n  \"passages</w>\": 48937,\n  \"passed</w>\": 4957,\n  \"passenger</w>\": 12311,\n  \"passengers</w>\": 12781,\n  \"passer</w>\": 48544,\n  \"passes</w>\": 7633,\n  \"passi\": 32471,\n  \"passing</w>\": 6589,\n  \"passion\": 8822,\n  \"passion</w>\": 5332,\n  \"passionate</w>\": 10947,\n  \"passionately</w>\": 44028,\n  \"passions</w>\": 38441,\n  \"passive</w>\": 23171,\n  \"passover</w>\": 38426,\n  \"passport</w>\": 14739,\n  \"passports</w>\": 46368,\n  \"password</w>\": 20258,\n  \"passwords</w>\": 43095,\n  \"past\": 7315,\n  \"past</w>\": 2729,\n  \"pasta</w>\": 10441,\n  \"paste\": 34765,\n  \"paste</w>\": 17038,\n  \"pastel</w>\": 19457,\n  \"pastels</w>\": 45699,\n  \"pastor\": 19792,\n  \"pastor</w>\": 9664,\n  \"pastoral</w>\": 37191,\n  \"pastors</w>\": 30959,\n  \"pastr\": 45478,\n  \"pastries</w>\": 39409,\n  \"pastry</w>\": 18582,\n  \"pasture</w>\": 34764,\n  \"pastures</w>\": 47793,\n  \"pat\": 1300,\n  \"pat</w>\": 7036,\n  \"patag\": 29862,\n  \"patagonia</w>\": 32786,\n  \"patch\": 29284,\n  \"patch</w>\": 8721,\n  \"patches</w>\": 22104,\n  \"patchwork</w>\": 44675,\n  \"patchy</w>\": 47488,\n  \"pate\": 42122,\n  \"pate</w>\": 42098,\n  \"patel</w>\": 14168,\n  \"patent</w>\": 14692,\n  \"patented</w>\": 37277,\n  \"patents</w>\": 33911,\n  \"paterson</w>\": 36560,\n  \"path\": 7408,\n  \"path</w>\": 5035,\n  \"pathetic</w>\": 18222,\n  \"pathfinder</w>\": 35415,\n  \"pathi\": 34976,\n  \"pathi</w>\": 27347,\n  \"pathic</w>\": 49025,\n  \"patho\": 18534,\n  \"pathology</w>\": 23290,\n  \"paths</w>\": 16333,\n  \"pathway</w>\": 23488,\n  \"pathways</w>\": 24690,\n  \"pathy</w>\": 13330,\n  \"pati\": 2799,\n  \"pati</w>\": 26708,\n  \"patience</w>\": 13575,\n  \"patient\": 30139,\n  \"patient</w>\": 6262,\n  \"patiently</w>\": 22980,\n  \"patients</w>\": 5543,\n  \"patil</w>\": 49187,\n  \"patio</w>\": 14304,\n  \"pational</w>\": 30627,\n  \"patna</w>\": 45025,\n  \"patory</w>\": 41859,\n  \"patreon</w>\": 17165,\n  \"patri\": 4771,\n  \"patriarch</w>\": 49054,\n  \"patriarchy</w>\": 48806,\n  \"patric\": 12569,\n  \"patrice</w>\": 40731,\n  \"patricia</w>\": 18143,\n  \"patrick\": 12078,\n  \"patrick</w>\": 5286,\n  \"patricks</w>\": 46783,\n  \"patriot\": 28896,\n  \"patriot</w>\": 15692,\n  \"patrioti\": 35520,\n  \"patriotic</w>\": 20217,\n  \"patriotism</w>\": 35807,\n  \"patriots</w>\": 8707,\n  \"patro\": 31650,\n  \"patrol</w>\": 10073,\n  \"patrolling</w>\": 39344,\n  \"patrols</w>\": 35978,\n  \"patron\": 26658,\n  \"patron</w>\": 17683,\n  \"patrons</w>\": 28308,\n  \"pats</w>\": 24874,\n  \"patsy</w>\": 46093,\n  \"patt\": 12637,\n  \"patter\": 4982,\n  \"pattern</w>\": 7447,\n  \"patterned</w>\": 47212,\n  \"patterns</w>\": 11637,\n  \"patterson</w>\": 21384,\n  \"patti\": 44927,\n  \"patti</w>\": 26123,\n  \"pattinson</w>\": 32474,\n  \"patton</w>\": 29026,\n  \"patty\": 48741,\n  \"patty</w>\": 18321,\n  \"pau\": 1834,\n  \"pau</w>\": 35970,\n  \"paul\": 6035,\n  \"paul</w>\": 2597,\n  \"paula\": 37363,\n  \"paula</w>\": 16777,\n  \"pauline</w>\": 30438,\n  \"paulo\": 48002,\n  \"paulo</w>\": 21628,\n  \"pauls\": 41413,\n  \"pauls</w>\": 40010,\n  \"paulson</w>\": 48201,\n  \"pause</w>\": 19439,\n  \"paused</w>\": 46782,\n  \"pav\": 6661,\n  \"pave</w>\": 37107,\n  \"paved</w>\": 27898,\n  \"pavel</w>\": 43152,\n  \"pavement</w>\": 27669,\n  \"pavilion</w>\": 13374,\n  \"paving</w>\": 28651,\n  \"paw\": 14009,\n  \"paw</w>\": 16016,\n  \"pawan\": 29754,\n  \"pawankalyan</w>\": 33702,\n  \"pawn</w>\": 43195,\n  \"paws</w>\": 16714,\n  \"pax\": 20007,\n  \"pax</w>\": 19033,\n  \"paxton</w>\": 38347,\n  \"pay\": 2642,\n  \"pay</w>\": 3345,\n  \"payback</w>\": 36413,\n  \"paycheck</w>\": 45078,\n  \"payday</w>\": 26957,\n  \"payee</w>\": 46985,\n  \"payer</w>\": 41503,\n  \"paying</w>\": 8341,\n  \"payment</w>\": 10596,\n  \"payments</w>\": 11832,\n  \"payne</w>\": 12775,\n  \"paypal</w>\": 21442,\n  \"payroll</w>\": 31610,\n  \"pays</w>\": 10845,\n  \"paysoff</w>\": 48174,\n  \"paytm</w>\": 45352,\n  \"payton</w>\": 27348,\n  \"paz</w>\": 22267,\n  \"pb\": 20112,\n  \"pb</w>\": 10981,\n  \"pba</w>\": 28205,\n  \"pbb\": 48567,\n  \"pbb</w>\": 40589,\n  \"pbc</w>\": 49191,\n  \"pbl</w>\": 35166,\n  \"pbr</w>\": 32998,\n  \"pbs</w>\": 17908,\n  \"pc\": 6782,\n  \"pc</w>\": 3808,\n  \"pca</w>\": 35705,\n  \"pcb</w>\": 26235,\n  \"pcc</w>\": 36059,\n  \"pci</w>\": 38957,\n  \"pcm</w>\": 47436,\n  \"pcr</w>\": 35704,\n  \"pcs</w>\": 11917,\n  \"pcso</w>\": 31963,\n  \"pct</w>\": 22168,\n  \"pd\": 4387,\n  \"pd</w>\": 4675,\n  \"pdates</w>\": 16842,\n  \"pdc</w>\": 40498,\n  \"pdf</w>\": 15181,\n  \"pdp</w>\": 24601,\n  \"pdt</w>\": 21743,\n  \"pdx\": 25470,\n  \"pdx</w>\": 16153,\n  \"pe\": 661,\n  \"pe</w>\": 956,\n  \"pea</w>\": 13915,\n  \"peabo\": 34083,\n  \"peabody</w>\": 41244,\n  \"peac\": 34615,\n  \"peace\": 6249,\n  \"peace</w>\": 3021,\n  \"peaceful</w>\": 9461,\n  \"peacefully</w>\": 30530,\n  \"peacekeeping</w>\": 43630,\n  \"peach\": 10522,\n  \"peach</w>\": 11538,\n  \"peaches</w>\": 27216,\n  \"peak\": 18572,\n  \"peak</w>\": 6026,\n  \"peakdistrict</w>\": 41289,\n  \"peake</w>\": 24810,\n  \"peaked</w>\": 36391,\n  \"peaks</w>\": 14067,\n  \"pean\": 11563,\n  \"peanu\": 25843,\n  \"peanut</w>\": 12491,\n  \"peanuts</w>\": 26503,\n  \"pear\": 4910,\n  \"pear</w>\": 18820,\n  \"pearce</w>\": 25996,\n  \"pearl\": 21806,\n  \"pearl</w>\": 8560,\n  \"pearljam</w>\": 46739,\n  \"pearls</w>\": 19581,\n  \"pears</w>\": 39565,\n  \"pearson</w>\": 20461,\n  \"peas</w>\": 15937,\n  \"peasant</w>\": 40621,\n  \"peasants</w>\": 48788,\n  \"peat</w>\": 26914,\n  \"pebble</w>\": 28056,\n  \"pebbles</w>\": 40155,\n  \"pec\": 32447,\n  \"pec</w>\": 17611,\n  \"pecan</w>\": 32177,\n  \"peck\": 25186,\n  \"peck</w>\": 29234,\n  \"pecker</w>\": 30169,\n  \"peckham</w>\": 45863,\n  \"pecu\": 34200,\n  \"peculiar</w>\": 42808,\n  \"ped\": 13197,\n  \"ped</w>\": 2966,\n  \"pedago\": 34590,\n  \"pedagogy</w>\": 48072,\n  \"pedal\": 32943,\n  \"pedal</w>\": 19621,\n  \"pedals</w>\": 38535,\n  \"pede\": 12862,\n  \"pede</w>\": 19560,\n  \"pedestri\": 30027,\n  \"pedestrian</w>\": 18256,\n  \"pedestrians</w>\": 33895,\n  \"pedi\": 12967,\n  \"pedia</w>\": 11733,\n  \"pediatric\": 48431,\n  \"pediatric</w>\": 22071,\n  \"pedic\": 35319,\n  \"pedic</w>\": 44528,\n  \"pedro\": 29963,\n  \"pedro</w>\": 15114,\n  \"peds</w>\": 45377,\n  \"pee\": 12988,\n  \"pee</w>\": 11196,\n  \"peed</w>\": 47369,\n  \"peek\": 46323,\n  \"peek</w>\": 7569,\n  \"peeking</w>\": 48771,\n  \"peel\": 34386,\n  \"peel</w>\": 17158,\n  \"peeled</w>\": 33533,\n  \"peeling</w>\": 48649,\n  \"peep\": 25425,\n  \"peep</w>\": 16857,\n  \"peeps</w>\": 11681,\n  \"peer\": 32416,\n  \"peer</w>\": 14432,\n  \"peers</w>\": 21626,\n  \"pees</w>\": 31830,\n  \"peg\": 32182,\n  \"peg</w>\": 11207,\n  \"pegas\": 30018,\n  \"pegasus</w>\": 37822,\n  \"peggy</w>\": 24271,\n  \"pei\": 48166,\n  \"pei</w>\": 12917,\n  \"pel\": 4286,\n  \"pel</w>\": 7006,\n  \"pele</w>\": 44105,\n  \"pelican</w>\": 34131,\n  \"pelicans</w>\": 29363,\n  \"pell</w>\": 46981,\n  \"pelle\": 31267,\n  \"pelled</w>\": 32506,\n  \"pellegr\": 38529,\n  \"pellets</w>\": 48240,\n  \"pelo\": 40192,\n  \"pelo</w>\": 40238,\n  \"pelosi</w>\": 22169,\n  \"pelvic</w>\": 45646,\n  \"pemb\": 19880,\n  \"pembro\": 24084,\n  \"pembroke\": 36702,\n  \"pembroke</w>\": 40044,\n  \"pembrokeshire</w>\": 40695,\n  \"pen\": 1501,\n  \"pen</w>\": 5356,\n  \"pena</w>\": 35788,\n  \"penalties</w>\": 25417,\n  \"penalty</w>\": 11491,\n  \"penang</w>\": 29545,\n  \"penc\": 20065,\n  \"pence</w>\": 18002,\n  \"pencil\": 41303,\n  \"pencil</w>\": 11200,\n  \"pencils</w>\": 21909,\n  \"pend\": 3052,\n  \"pendant</w>\": 12415,\n  \"pendants</w>\": 44117,\n  \"pending</w>\": 12770,\n  \"pendleton</w>\": 44272,\n  \"pendu\": 45336,\n  \"penelope</w>\": 36703,\n  \"penetr\": 26058,\n  \"peng\": 42955,\n  \"peng</w>\": 39200,\n  \"pengu\": 8854,\n  \"penguin\": 28249,\n  \"penguin</w>\": 14952,\n  \"penguins</w>\": 16557,\n  \"peninsu\": 13464,\n  \"peninsula</w>\": 14070,\n  \"penn\": 7760,\n  \"penn</w>\": 11128,\n  \"pennant</w>\": 43971,\n  \"penned</w>\": 45077,\n  \"penney</w>\": 47856,\n  \"pennies</w>\": 43094,\n  \"pennsylvania</w>\": 13673,\n  \"penny\": 20400,\n  \"penny</w>\": 11388,\n  \"pens\": 13307,\n  \"pens</w>\": 13310,\n  \"pensac\": 30925,\n  \"pensacola</w>\": 33573,\n  \"pension\": 32840,\n  \"pension</w>\": 17764,\n  \"pensions</w>\": 29773,\n  \"penske</w>\": 47154,\n  \"pent\": 10699,\n  \"pent</w>\": 22725,\n  \"pentagon</w>\": 23133,\n  \"pente\": 33165,\n  \"penthouse</w>\": 32673,\n  \"penultimate</w>\": 36553,\n  \"peop\": 1030,\n  \"people\": 10573,\n  \"people</w>\": 1047,\n  \"peoples\": 28241,\n  \"peoples</w>\": 14627,\n  \"peopleschoice</w>\": 32418,\n  \"peoplesvote</w>\": 45830,\n  \"peoria</w>\": 36985,\n  \"pep\": 12761,\n  \"pep</w>\": 14898,\n  \"pepe</w>\": 24778,\n  \"pepp\": 34425,\n  \"pepper\": 14861,\n  \"pepper</w>\": 8253,\n  \"peppermint</w>\": 30321,\n  \"pepperoni</w>\": 47307,\n  \"peppers</w>\": 14650,\n  \"pepsi</w>\": 21307,\n  \"per\": 703,\n  \"per</w>\": 1284,\n  \"pera</w>\": 26294,\n  \"perce\": 24135,\n  \"perceived</w>\": 38436,\n  \"percent\": 16328,\n  \"percent</w>\": 9017,\n  \"percentage</w>\": 19477,\n  \"percep\": 28017,\n  \"perception</w>\": 20591,\n  \"perceptions</w>\": 38138,\n  \"perch</w>\": 34281,\n  \"perched</w>\": 40071,\n  \"percu\": 41722,\n  \"percussion</w>\": 23980,\n  \"percy</w>\": 23940,\n  \"pere\": 8665,\n  \"pere</w>\": 36300,\n  \"pered</w>\": 24509,\n  \"peregr\": 37479,\n  \"peregrine</w>\": 44546,\n  \"pereira</w>\": 43927,\n  \"peren\": 24564,\n  \"perenni\": 26996,\n  \"perennial</w>\": 34038,\n  \"perez</w>\": 15107,\n  \"perf</w>\": 22816,\n  \"perfe\": 1624,\n  \"perfec\": 6599,\n  \"perfect\": 17261,\n  \"perfect</w>\": 1878,\n  \"perfection</w>\": 9646,\n  \"perfectly</w>\": 8037,\n  \"perfecto</w>\": 42898,\n  \"perfor\": 2311,\n  \"perform\": 3866,\n  \"perform</w>\": 5940,\n  \"performan\": 8973,\n  \"performance</w>\": 2714,\n  \"performances</w>\": 9553,\n  \"performed</w>\": 9997,\n  \"performer</w>\": 17061,\n  \"performers</w>\": 18476,\n  \"performing</w>\": 5170,\n  \"performs</w>\": 13839,\n  \"perfu\": 14214,\n  \"perfume</w>\": 17525,\n  \"perhaps</w>\": 9297,\n  \"peri\": 12618,\n  \"peri</w>\": 44068,\n  \"perience</w>\": 19302,\n  \"peril\": 40119,\n  \"peril</w>\": 48301,\n  \"perimeter</w>\": 38499,\n  \"pering</w>\": 29746,\n  \"perio\": 5101,\n  \"period</w>\": 6131,\n  \"periodic</w>\": 36476,\n  \"periods</w>\": 24401,\n  \"periph\": 35308,\n  \"peripheral</w>\": 43901,\n  \"peris\": 19461,\n  \"periscope</w>\": 21668,\n  \"perk</w>\": 33424,\n  \"perkins</w>\": 20057,\n  \"perks</w>\": 17660,\n  \"perl\": 44018,\n  \"perm</w>\": 47847,\n  \"perman\": 9018,\n  \"permanent</w>\": 11144,\n  \"permanently</w>\": 25584,\n  \"perme\": 42456,\n  \"permission</w>\": 15822,\n  \"permit</w>\": 21950,\n  \"permits</w>\": 33267,\n  \"permitted</w>\": 44380,\n  \"pero</w>\": 23551,\n  \"perpe\": 15749,\n  \"perpetr\": 33376,\n  \"perpetu\": 30132,\n  \"perpetual</w>\": 32018,\n  \"perrie</w>\": 32691,\n  \"perry\": 28478,\n  \"perry</w>\": 7899,\n  \"pers\": 3688,\n  \"pers</w>\": 10710,\n  \"perse\": 27498,\n  \"persecu\": 22878,\n  \"persecution</w>\": 32009,\n  \"perseverance</w>\": 29820,\n  \"persi\": 11509,\n  \"persian</w>\": 19859,\n  \"persist\": 19412,\n  \"persist</w>\": 40938,\n  \"persistence</w>\": 34588,\n  \"persistent</w>\": 29028,\n  \"person\": 3510,\n  \"person</w>\": 2533,\n  \"persona</w>\": 18401,\n  \"personal\": 10114,\n  \"personal</w>\": 4121,\n  \"personalised</w>\": 24186,\n  \"personalities</w>\": 27888,\n  \"personality</w>\": 10386,\n  \"personalized</w>\": 17845,\n  \"personally</w>\": 13885,\n  \"personnel</w>\": 14546,\n  \"persons</w>\": 14592,\n  \"perspec\": 17997,\n  \"perspective</w>\": 8996,\n  \"perspectives</w>\": 18777,\n  \"persu\": 20972,\n  \"pert\": 36970,\n  \"pert</w>\": 16306,\n  \"perth\": 19067,\n  \"perth</w>\": 11011,\n  \"peru\": 20612,\n  \"peru</w>\": 12964,\n  \"peruvian</w>\": 30822,\n  \"pes\": 38368,\n  \"pes</w>\": 2598,\n  \"pesa</w>\": 47409,\n  \"pesc\": 44044,\n  \"pesh\": 33184,\n  \"peshaw\": 28524,\n  \"peshawar</w>\": 29230,\n  \"pesky</w>\": 42512,\n  \"pesos</w>\": 47872,\n  \"pessi\": 43902,\n  \"pest\": 20130,\n  \"pest</w>\": 9425,\n  \"pesticide</w>\": 48481,\n  \"pesticides</w>\": 37868,\n  \"pesto</w>\": 26186,\n  \"pests</w>\": 41919,\n  \"pet\": 2167,\n  \"pet</w>\": 3703,\n  \"peta</w>\": 28785,\n  \"petal\": 38430,\n  \"petal</w>\": 40469,\n  \"petals</w>\": 26064,\n  \"petday</w>\": 45314,\n  \"pete\": 14479,\n  \"pete</w>\": 8571,\n  \"peter\": 5093,\n  \"peter</w>\": 3696,\n  \"peterborough</w>\": 26012,\n  \"peters</w>\": 16336,\n  \"petersburg</w>\": 21052,\n  \"petersen</w>\": 39794,\n  \"peterson</w>\": 16877,\n  \"peth</w>\": 48920,\n  \"petit\": 36437,\n  \"petit</w>\": 21276,\n  \"petite</w>\": 27213,\n  \"petition</w>\": 10975,\n  \"petitions</w>\": 43536,\n  \"petr\": 29808,\n  \"petra</w>\": 31300,\n  \"petre\": 47179,\n  \"petri\": 31831,\n  \"petro\": 8716,\n  \"petrol</w>\": 18149,\n  \"petroleum</w>\": 22063,\n  \"petron\": 42875,\n  \"pets</w>\": 7663,\n  \"pett\": 27051,\n  \"petti\": 48001,\n  \"petting</w>\": 44334,\n  \"petty</w>\": 17324,\n  \"peu\": 21411,\n  \"peuge\": 22893,\n  \"peugeot</w>\": 24129,\n  \"pew\": 21608,\n  \"pew</w>\": 30783,\n  \"pewdie\": 41882,\n  \"pewdiepie</w>\": 42563,\n  \"pex</w>\": 43765,\n  \"pey\": 14966,\n  \"pey</w>\": 30933,\n  \"peyton\": 49254,\n  \"peyton</w>\": 20307,\n  \"pez\": 45798,\n  \"pez</w>\": 10482,\n  \"pf\": 16680,\n  \"pf</w>\": 12572,\n  \"pfa</w>\": 47839,\n  \"pfc</w>\": 35007,\n  \"pff</w>\": 44121,\n  \"pfi\": 29810,\n  \"pfw</w>\": 31229,\n  \"pg\": 12476,\n  \"pg</w>\": 5211,\n  \"pga</w>\": 13351,\n  \"pgat\": 36514,\n  \"pgatour</w>\": 40094,\n  \"pgh\": 44862,\n  \"pgh</w>\": 30031,\n  \"pgs</w>\": 49204,\n  \"ph\": 745,\n  \"ph</w>\": 2042,\n  \"pha\": 4443,\n  \"pha</w>\": 26255,\n  \"phal\": 19962,\n  \"phan\": 8731,\n  \"phan</w>\": 40126,\n  \"phant\": 36998,\n  \"phantom\": 37688,\n  \"phantom</w>\": 14490,\n  \"phar\": 5570,\n  \"phara\": 35792,\n  \"pharaoh</w>\": 40437,\n  \"pharm</w>\": 45761,\n  \"pharma</w>\": 17831,\n  \"pharmac\": 8193,\n  \"pharmaceu\": 19490,\n  \"pharmaceutical</w>\": 25217,\n  \"pharmaceuticals</w>\": 44623,\n  \"pharmacist</w>\": 41024,\n  \"pharmacists</w>\": 44337,\n  \"pharmacy</w>\": 15293,\n  \"pharo\": 42308,\n  \"pharoah</w>\": 49287,\n  \"pharrell</w>\": 31316,\n  \"phase</w>\": 8304,\n  \"phases</w>\": 35337,\n  \"phat</w>\": 42492,\n  \"phc</w>\": 41102,\n  \"phd\": 20875,\n  \"phd</w>\": 8472,\n  \"phdchat</w>\": 39564,\n  \"phdlife</w>\": 39638,\n  \"phe\": 4787,\n  \"phe</w>\": 19853,\n  \"pheasant</w>\": 41983,\n  \"phee</w>\": 41292,\n  \"phel\": 23711,\n  \"phelps</w>\": 27128,\n  \"phen\": 7718,\n  \"pheno\": 47336,\n  \"phenom\": 31673,\n  \"phenom</w>\": 39618,\n  \"phenomen\": 11304,\n  \"phenomena</w>\": 41538,\n  \"phenomenal</w>\": 15035,\n  \"phenomenon</w>\": 24464,\n  \"pher\": 9194,\n  \"pher</w>\": 19828,\n  \"phers</w>\": 29531,\n  \"pherson</w>\": 36421,\n  \"phew</w>\": 10295,\n  \"phi\": 2239,\n  \"phi</w>\": 12220,\n  \"phia</w>\": 9228,\n  \"phic</w>\": 3977,\n  \"phie</w>\": 30237,\n  \"phies</w>\": 17062,\n  \"phil\": 2821,\n  \"phil</w>\": 6199,\n  \"phila</w>\": 47443,\n  \"philadel\": 9428,\n  \"philadelphia</w>\": 9749,\n  \"philanthro\": 16587,\n  \"philanthropist</w>\": 44153,\n  \"philanthropy</w>\": 25047,\n  \"philately</w>\": 33695,\n  \"phile</w>\": 36543,\n  \"philharmon\": 25228,\n  \"philharmonic</w>\": 31699,\n  \"phili\": 4277,\n  \"philia</w>\": 46654,\n  \"philip\": 20748,\n  \"philip</w>\": 11074,\n  \"philipp\": 5623,\n  \"philipp</w>\": 47591,\n  \"philippe</w>\": 20942,\n  \"philippine</w>\": 17629,\n  \"philippines</w>\": 8149,\n  \"philips</w>\": 25175,\n  \"phill\": 42346,\n  \"phill</w>\": 48272,\n  \"philli\": 6456,\n  \"phillies</w>\": 18748,\n  \"phillip\": 48832,\n  \"phillip</w>\": 19323,\n  \"phillips</w>\": 11041,\n  \"philly\": 19545,\n  \"philly</w>\": 7785,\n  \"philos\": 8395,\n  \"philosop\": 20349,\n  \"philosoph\": 10187,\n  \"philosopher</w>\": 25220,\n  \"philosophical</w>\": 32628,\n  \"philosophy</w>\": 12213,\n  \"phils</w>\": 38573,\n  \"phin</w>\": 33816,\n  \"phine</w>\": 40985,\n  \"phins</w>\": 40210,\n  \"phish</w>\": 36897,\n  \"phishing</w>\": 36546,\n  \"phl</w>\": 25603,\n  \"pho\": 816,\n  \"pho</w>\": 22707,\n  \"phobia</w>\": 28749,\n  \"phoe\": 22673,\n  \"phoebe</w>\": 27582,\n  \"phoeni\": 6778,\n  \"phoenix\": 20615,\n  \"phoenix</w>\": 7793,\n  \"phol</w>\": 48140,\n  \"phon\": 19602,\n  \"phon</w>\": 31115,\n  \"phone\": 15486,\n  \"phone</w>\": 1951,\n  \"phones</w>\": 6351,\n  \"phony</w>\": 31925,\n  \"phora</w>\": 31363,\n  \"phosp\": 22638,\n  \"photo\": 1153,\n  \"photo</w>\": 1125,\n  \"photobomb</w>\": 37075,\n  \"photobook</w>\": 41894,\n  \"photog</w>\": 28115,\n  \"photogenic</w>\": 36108,\n  \"photogra\": 36754,\n  \"photograph\": 1688,\n  \"photograph</w>\": 8853,\n  \"photographed</w>\": 11573,\n  \"photographer</w>\": 5748,\n  \"photographers</w>\": 17141,\n  \"photographic</w>\": 22053,\n  \"photographing</w>\": 30074,\n  \"photographs</w>\": 15759,\n  \"photography\": 33183,\n  \"photography</w>\": 2108,\n  \"photom\": 32223,\n  \"photoo\": 11106,\n  \"photooftheday</w>\": 11933,\n  \"photos</w>\": 2479,\n  \"photoshoot</w>\": 11121,\n  \"photoshop</w>\": 12419,\n  \"photoshopped</w>\": 35738,\n  \"phouse</w>\": 27848,\n  \"php</w>\": 17370,\n  \"phra\": 12777,\n  \"phrase</w>\": 18809,\n  \"phrases</w>\": 35264,\n  \"phs</w>\": 16495,\n  \"phu\": 21274,\n  \"phuket</w>\": 34028,\n  \"phx\": 35466,\n  \"phx</w>\": 29507,\n  \"phy\": 6484,\n  \"phy</w>\": 4292,\n  \"phyl\": 35600,\n  \"phyllis</w>\": 37844,\n  \"phys\": 3734,\n  \"phys</w>\": 37894,\n  \"physi\": 13782,\n  \"physic\": 46641,\n  \"physical\": 44127,\n  \"physical</w>\": 6671,\n  \"physically</w>\": 18105,\n  \"physician</w>\": 21055,\n  \"physicians</w>\": 26702,\n  \"physicist</w>\": 29052,\n  \"physics</w>\": 9369,\n  \"physio\": 29574,\n  \"physio</w>\": 29177,\n  \"physiology</w>\": 32349,\n  \"physique</w>\": 42884,\n  \"phyto\": 42197,\n  \"pi\": 741,\n  \"pi</w>\": 5357,\n  \"pia</w>\": 8918,\n  \"pian</w>\": 24637,\n  \"pianist</w>\": 21048,\n  \"piano\": 49278,\n  \"piano</w>\": 7894,\n  \"pianos</w>\": 47904,\n  \"piazza</w>\": 28496,\n  \"pic\": 901,\n  \"pic</w>\": 1282,\n  \"pical</w>\": 5482,\n  \"picard</w>\": 48507,\n  \"picasso</w>\": 21481,\n  \"piccad\": 33876,\n  \"piccadilly</w>\": 37287,\n  \"piccollage</w>\": 43621,\n  \"pick\": 6379,\n  \"pick</w>\": 3142,\n  \"picked</w>\": 6018,\n  \"picker</w>\": 43105,\n  \"pickering</w>\": 47605,\n  \"picket</w>\": 33559,\n  \"picking</w>\": 9545,\n  \"pickle</w>\": 24570,\n  \"pickled</w>\": 21705,\n  \"pickles</w>\": 25001,\n  \"picks</w>\": 8551,\n  \"pickup</w>\": 15382,\n  \"pickups</w>\": 33383,\n  \"picnic</w>\": 12007,\n  \"pico</w>\": 23363,\n  \"picoftheday</w>\": 18319,\n  \"pics</w>\": 2559,\n  \"pict</w>\": 18778,\n  \"pictorial</w>\": 40640,\n  \"picture\": 11663,\n  \"picture</w>\": 1674,\n  \"pictured</w>\": 7647,\n  \"pictures</w>\": 3646,\n  \"picturesque</w>\": 24894,\n  \"pid</w>\": 5225,\n  \"piday</w>\": 48056,\n  \"pie\": 12065,\n  \"pie</w>\": 5319,\n  \"piece\": 39632,\n  \"piece</w>\": 2754,\n  \"pieces</w>\": 6194,\n  \"pied\": 24686,\n  \"pied</w>\": 12713,\n  \"piedmont</w>\": 39691,\n  \"pier\": 5641,\n  \"pier</w>\": 11348,\n  \"pierc\": 49216,\n  \"pierce\": 48462,\n  \"pierce</w>\": 16782,\n  \"pierced</w>\": 32799,\n  \"piercing</w>\": 22557,\n  \"piero</w>\": 43125,\n  \"pierre\": 34670,\n  \"pierre</w>\": 11985,\n  \"piers</w>\": 29030,\n  \"pies</w>\": 6898,\n  \"pieter</w>\": 44801,\n  \"pietro</w>\": 42169,\n  \"piff</w>\": 40719,\n  \"pig\": 12009,\n  \"pig</w>\": 9619,\n  \"pigeon</w>\": 18008,\n  \"pigeons</w>\": 32910,\n  \"piggy</w>\": 28245,\n  \"pigment</w>\": 40284,\n  \"pigs</w>\": 16228,\n  \"pik</w>\": 48539,\n  \"pika</w>\": 47372,\n  \"pikach\": 27268,\n  \"pikachu</w>\": 28107,\n  \"pike\": 33457,\n  \"pike</w>\": 14011,\n  \"pil\": 2893,\n  \"pil</w>\": 20645,\n  \"pilates</w>\": 29518,\n  \"pile\": 44403,\n  \"pile</w>\": 13930,\n  \"piled</w>\": 26873,\n  \"piles</w>\": 31968,\n  \"pilgri\": 13966,\n  \"pilgrim</w>\": 32662,\n  \"pilgrimage</w>\": 24335,\n  \"pilgrims</w>\": 31370,\n  \"piling</w>\": 43050,\n  \"pilip\": 27234,\n  \"pilipinas</w>\": 32392,\n  \"pill\": 14830,\n  \"pill</w>\": 19226,\n  \"pillar</w>\": 17322,\n  \"pillars</w>\": 22054,\n  \"pillow\": 42237,\n  \"pillow</w>\": 12182,\n  \"pillows</w>\": 26499,\n  \"pills</w>\": 23964,\n  \"pilo\": 37526,\n  \"pilot\": 31619,\n  \"pilot</w>\": 6687,\n  \"pilots</w>\": 15586,\n  \"pilsner</w>\": 47153,\n  \"pim\": 15285,\n  \"pim</w>\": 35472,\n  \"pimp\": 35789,\n  \"pin\": 2629,\n  \"pin</w>\": 5164,\n  \"pinball</w>\": 31679,\n  \"pinch</w>\": 26114,\n  \"pine\": 9398,\n  \"pine</w>\": 7374,\n  \"pineapple</w>\": 14831,\n  \"pines</w>\": 20338,\n  \"ping\": 23720,\n  \"ping</w>\": 2089,\n  \"pinion</w>\": 40557,\n  \"pink\": 11151,\n  \"pink</w>\": 3360,\n  \"pinkfloyd</w>\": 48520,\n  \"pinky</w>\": 29803,\n  \"pinn\": 31448,\n  \"pinnacle</w>\": 32754,\n  \"pinned</w>\": 12165,\n  \"pinning</w>\": 44515,\n  \"pino</w>\": 36633,\n  \"pinot\": 41399,\n  \"pinot</w>\": 21146,\n  \"pinoy\": 43578,\n  \"pinoy</w>\": 35258,\n  \"pins</w>\": 14619,\n  \"pinst\": 41173,\n  \"pint\": 42537,\n  \"pint</w>\": 13584,\n  \"pinterest</w>\": 15379,\n  \"pinto</w>\": 35992,\n  \"pints</w>\": 27935,\n  \"pinup</w>\": 37349,\n  \"pio</w>\": 22108,\n  \"pion\": 36728,\n  \"pion</w>\": 29190,\n  \"pione\": 7975,\n  \"pioneer\": 34892,\n  \"pioneer</w>\": 12459,\n  \"pioneering</w>\": 25933,\n  \"pioneers</w>\": 22383,\n  \"pious</w>\": 42441,\n  \"pip</w>\": 30854,\n  \"pipe\": 29333,\n  \"pipe</w>\": 10459,\n  \"pipel\": 12387,\n  \"pipeline</w>\": 14151,\n  \"pipelines</w>\": 39683,\n  \"piper\": 47052,\n  \"piper</w>\": 16293,\n  \"pipes</w>\": 16991,\n  \"piping</w>\": 40744,\n  \"pippa</w>\": 47672,\n  \"pir\": 4351,\n  \"pir</w>\": 38899,\n  \"piracy</w>\": 39452,\n  \"piran\": 49034,\n  \"pirate\": 38680,\n  \"pirate</w>\": 13592,\n  \"pirates</w>\": 10442,\n  \"pire\": 16613,\n  \"pires</w>\": 14988,\n  \"pis\": 9230,\n  \"pis</w>\": 44441,\n  \"pisa</w>\": 43632,\n  \"pisces</w>\": 45982,\n  \"piss</w>\": 20818,\n  \"pissed</w>\": 17989,\n  \"pist\": 15556,\n  \"pist</w>\": 32826,\n  \"pistachi\": 29760,\n  \"pistachio</w>\": 36320,\n  \"pistol</w>\": 20480,\n  \"piston</w>\": 48236,\n  \"pistons</w>\": 27242,\n  \"pistor\": 48162,\n  \"pit\": 2946,\n  \"pit</w>\": 7476,\n  \"pita</w>\": 27070,\n  \"pitbull</w>\": 25295,\n  \"pitch\": 8992,\n  \"pitch</w>\": 5872,\n  \"pitched</w>\": 28447,\n  \"pitcher</w>\": 13445,\n  \"pitchers</w>\": 27835,\n  \"pitches</w>\": 21005,\n  \"pitching</w>\": 16455,\n  \"piti\": 47568,\n  \"pits</w>\": 24144,\n  \"pitt\": 7607,\n  \"pitt</w>\": 15599,\n  \"pitts\": 9531,\n  \"pittsburgh</w>\": 10453,\n  \"pity</w>\": 24380,\n  \"pius</w>\": 39988,\n  \"pivo\": 18009,\n  \"pivot</w>\": 31805,\n  \"pivotal</w>\": 31432,\n  \"pix\": 6185,\n  \"pix</w>\": 13088,\n  \"pixar</w>\": 27493,\n  \"pixel\": 14384,\n  \"pixel</w>\": 13241,\n  \"pixelart</w>\": 18516,\n  \"pixels</w>\": 34099,\n  \"pixie</w>\": 35573,\n  \"piyu\": 30772,\n  \"piyush\": 36191,\n  \"piyushgoyal</w>\": 45318,\n  \"pizz\": 3897,\n  \"pizza</w>\": 4474,\n  \"pizzas</w>\": 30647,\n  \"pizzeria</w>\": 44174,\n  \"pj\": 12524,\n  \"pj</w>\": 17179,\n  \"pjnet</w>\": 22011,\n  \"pjs</w>\": 36009,\n  \"pk\": 10149,\n  \"pk</w>\": 10991,\n  \"pkg</w>\": 49011,\n  \"pkk</w>\": 47480,\n  \"pknot</w>\": 41779,\n  \"pkwy</w>\": 36827,\n  \"pl\": 712,\n  \"pl</w>\": 5678,\n  \"pla\": 841,\n  \"pla</w>\": 19945,\n  \"plac\": 2331,\n  \"place\": 14884,\n  \"place</w>\": 1445,\n  \"placed</w>\": 9729,\n  \"placement</w>\": 16724,\n  \"placements</w>\": 43885,\n  \"placer</w>\": 49170,\n  \"places</w>\": 4448,\n  \"placing</w>\": 18531,\n  \"plague</w>\": 25360,\n  \"plaid</w>\": 23291,\n  \"plain\": 22776,\n  \"plain</w>\": 10709,\n  \"plains</w>\": 16345,\n  \"plan\": 1740,\n  \"plan</w>\": 2970,\n  \"pland</w>\": 24801,\n  \"plane\": 22728,\n  \"plane</w>\": 5363,\n  \"planes</w>\": 12581,\n  \"planet\": 16833,\n  \"planet</w>\": 5172,\n  \"planetary</w>\": 28361,\n  \"planets</w>\": 22315,\n  \"plank</w>\": 30991,\n  \"plankton</w>\": 48249,\n  \"plann\": 6409,\n  \"planned</w>\": 8169,\n  \"planner</w>\": 18083,\n  \"planners</w>\": 33664,\n  \"planning</w>\": 4446,\n  \"plano</w>\": 34063,\n  \"plans</w>\": 4181,\n  \"plant\": 8521,\n  \"plant</w>\": 3912,\n  \"plantation</w>\": 20014,\n  \"plantbased</w>\": 33720,\n  \"planted</w>\": 14286,\n  \"planter</w>\": 34453,\n  \"planters</w>\": 43661,\n  \"planting</w>\": 13922,\n  \"plants</w>\": 5829,\n  \"plaque</w>\": 16097,\n  \"plaques</w>\": 45610,\n  \"plar</w>\": 26754,\n  \"plas\": 45673,\n  \"plasma</w>\": 24999,\n  \"plaster</w>\": 31980,\n  \"plastic\": 15645,\n  \"plastic</w>\": 6102,\n  \"plasticpollution</w>\": 47129,\n  \"plastics</w>\": 20999,\n  \"plasticsurgery</w>\": 48555,\n  \"plat\": 3172,\n  \"plata</w>\": 46456,\n  \"plate\": 28744,\n  \"plate</w>\": 5135,\n  \"plateau</w>\": 29301,\n  \"plated</w>\": 21161,\n  \"plates</w>\": 11485,\n  \"platform</w>\": 5549,\n  \"platforms</w>\": 13551,\n  \"platin\": 10267,\n  \"plating</w>\": 44564,\n  \"platinum</w>\": 10979,\n  \"plato</w>\": 41101,\n  \"platoon</w>\": 41254,\n  \"platt\": 44459,\n  \"platt</w>\": 40097,\n  \"platte</w>\": 46785,\n  \"platter</w>\": 29071,\n  \"platz</w>\": 40878,\n  \"plau\": 39139,\n  \"play\": 1222,\n  \"play</w>\": 1453,\n  \"playa</w>\": 23756,\n  \"playable</w>\": 33885,\n  \"playback</w>\": 39194,\n  \"playbook</w>\": 34856,\n  \"playboy</w>\": 24383,\n  \"played</w>\": 3432,\n  \"player\": 24503,\n  \"player</w>\": 2477,\n  \"players</w>\": 3030,\n  \"playful</w>\": 23871,\n  \"playground</w>\": 15861,\n  \"playhouse</w>\": 23254,\n  \"playin</w>\": 24674,\n  \"playing\": 47368,\n  \"playing</w>\": 1629,\n  \"playlist</w>\": 9180,\n  \"playlists</w>\": 47183,\n  \"playo\": 5804,\n  \"playoff</w>\": 9655,\n  \"playoffs</w>\": 9548,\n  \"plays</w>\": 5134,\n  \"playstation</w>\": 11332,\n  \"playtime</w>\": 43037,\n  \"playwright</w>\": 32070,\n  \"plaza</w>\": 8943,\n  \"plc</w>\": 16827,\n  \"ple\": 926,\n  \"ple</w>\": 1619,\n  \"plea</w>\": 21956,\n  \"plead</w>\": 47539,\n  \"pleads</w>\": 31425,\n  \"plear\": 21362,\n  \"pleas\": 8481,\n  \"pleas</w>\": 48740,\n  \"pleasant</w>\": 12271,\n  \"please\": 41074,\n  \"please</w>\": 1474,\n  \"pleased</w>\": 6107,\n  \"pleasing</w>\": 32893,\n  \"pleasure</w>\": 5854,\n  \"pleasures</w>\": 29513,\n  \"pledge</w>\": 11507,\n  \"pledged</w>\": 36799,\n  \"pledges</w>\": 26746,\n  \"pledis</w>\": 41202,\n  \"plein</w>\": 43429,\n  \"plenary</w>\": 19891,\n  \"plenty</w>\": 7524,\n  \"pler</w>\": 17677,\n  \"ples</w>\": 6248,\n  \"pless\": 39821,\n  \"pless</w>\": 17059,\n  \"plets</w>\": 43230,\n  \"plex\": 23765,\n  \"plex</w>\": 15241,\n  \"pley</w>\": 19543,\n  \"pli\": 30001,\n  \"pli</w>\": 45797,\n  \"plic\": 5806,\n  \"plicity</w>\": 19823,\n  \"plight</w>\": 40317,\n  \"plin\": 44531,\n  \"plin</w>\": 32335,\n  \"pline</w>\": 25376,\n  \"pling</w>\": 12899,\n  \"plings</w>\": 31184,\n  \"pll\": 47629,\n  \"pll</w>\": 25266,\n  \"pln</w>\": 48755,\n  \"plo\": 1778,\n  \"plo</w>\": 43523,\n  \"plor\": 34695,\n  \"plot</w>\": 9918,\n  \"plots</w>\": 25672,\n  \"plotting</w>\": 30751,\n  \"plough\": 33811,\n  \"plow</w>\": 38363,\n  \"pls</w>\": 5572,\n  \"plu\": 2052,\n  \"plug</w>\": 12628,\n  \"plugged</w>\": 23261,\n  \"plugin</w>\": 31278,\n  \"plugins</w>\": 48797,\n  \"plugs</w>\": 28083,\n  \"plum\": 26267,\n  \"plum</w>\": 16202,\n  \"plumb\": 21769,\n  \"plumber</w>\": 43478,\n  \"plumbing</w>\": 24647,\n  \"plume</w>\": 39495,\n  \"plun\": 15122,\n  \"plunge</w>\": 26506,\n  \"plur\": 44664,\n  \"plus</w>\": 3097,\n  \"plush</w>\": 18926,\n  \"pluto</w>\": 26380,\n  \"ply\": 17249,\n  \"ply</w>\": 28705,\n  \"plying</w>\": 36071,\n  \"plym\": 11907,\n  \"plymouth</w>\": 13786,\n  \"plz</w>\": 10538,\n  \"pm\": 13699,\n  \"pm</w>\": 990,\n  \"pmi</w>\": 41206,\n  \"pmln</w>\": 23208,\n  \"pmo\": 18782,\n  \"pmoindia</w>\": 20374,\n  \"pms</w>\": 44223,\n  \"pn\": 14431,\n  \"pn</w>\": 13774,\n  \"pnc</w>\": 37148,\n  \"pne\": 30966,\n  \"pneu\": 28714,\n  \"pneumonia</w>\": 42906,\n  \"png</w>\": 20992,\n  \"pnp</w>\": 25972,\n  \"pnpp\": 42175,\n  \"pnw</w>\": 31521,\n  \"po\": 628,\n  \"po</w>\": 3057,\n  \"poa</w>\": 43912,\n  \"poached</w>\": 27665,\n  \"poaching</w>\": 35140,\n  \"poc\": 13232,\n  \"poc</w>\": 27780,\n  \"pocaly\": 37987,\n  \"pocalypse</w>\": 42307,\n  \"poche\": 38336,\n  \"poche</w>\": 39022,\n  \"pocket\": 29147,\n  \"pocket</w>\": 8504,\n  \"pockets</w>\": 19566,\n  \"pocon\": 41850,\n  \"pod\": 3583,\n  \"pod</w>\": 7446,\n  \"podcast\": 39654,\n  \"podcast</w>\": 4294,\n  \"podcasting</w>\": 40106,\n  \"podcasts</w>\": 19392,\n  \"pode\": 33368,\n  \"poder\": 24960,\n  \"podernfamily</w>\": 26620,\n  \"podi\": 32853,\n  \"podium</w>\": 14093,\n  \"pods</w>\": 18776,\n  \"poe\": 4746,\n  \"poe</w>\": 19254,\n  \"poem</w>\": 9436,\n  \"poems</w>\": 15577,\n  \"poet\": 41019,\n  \"poet</w>\": 9872,\n  \"poetic</w>\": 26365,\n  \"poetry\": 20192,\n  \"poetry</w>\": 6038,\n  \"poetryday</w>\": 39255,\n  \"poets</w>\": 19804,\n  \"pof\": 40850,\n  \"poff</w>\": 28236,\n  \"pogba</w>\": 25998,\n  \"poign\": 29682,\n  \"poignant</w>\": 32138,\n  \"poin\": 9074,\n  \"point\": 13280,\n  \"point</w>\": 2301,\n  \"pointe</w>\": 24631,\n  \"pointed</w>\": 20703,\n  \"pointer</w>\": 29883,\n  \"pointers</w>\": 36760,\n  \"pointing</w>\": 19233,\n  \"pointless</w>\": 33586,\n  \"points</w>\": 3396,\n  \"pois\": 17008,\n  \"poise</w>\": 45087,\n  \"poised</w>\": 27354,\n  \"poison\": 30722,\n  \"poison</w>\": 17074,\n  \"poisoned</w>\": 43624,\n  \"poisoning</w>\": 25750,\n  \"poisonous</w>\": 37131,\n  \"pok\": 15387,\n  \"poke\": 6892,\n  \"poke</w>\": 23186,\n  \"pokemon\": 16239,\n  \"pokemon</w>\": 9528,\n  \"pokemongo</w>\": 23985,\n  \"poker\": 30735,\n  \"poker</w>\": 11865,\n  \"pokes</w>\": 40221,\n  \"poking</w>\": 49169,\n  \"pokÃ©\": 20656,\n  \"pokÃ©mon</w>\": 22066,\n  \"pol\": 977,\n  \"pol</w>\": 7649,\n  \"pola</w>\": 43876,\n  \"poland</w>\": 9834,\n  \"polar\": 21432,\n  \"polar</w>\": 12214,\n  \"polari\": 27919,\n  \"polaris</w>\": 37965,\n  \"polarized</w>\": 48437,\n  \"polaro\": 25237,\n  \"polaroid</w>\": 30427,\n  \"poldark</w>\": 41322,\n  \"pole\": 26682,\n  \"pole</w>\": 8170,\n  \"poles</w>\": 22585,\n  \"poli\": 9675,\n  \"poli</w>\": 5414,\n  \"polic\": 16126,\n  \"police\": 15535,\n  \"police</w>\": 2120,\n  \"policeman</w>\": 37713,\n  \"policemen</w>\": 47946,\n  \"polici\": 10819,\n  \"policies</w>\": 10993,\n  \"policing</w>\": 20969,\n  \"policy\": 30173,\n  \"policy</w>\": 4660,\n  \"polio</w>\": 30533,\n  \"polis</w>\": 16133,\n  \"polish\": 46941,\n  \"polish</w>\": 9632,\n  \"polished</w>\": 21478,\n  \"polishing</w>\": 43629,\n  \"polit\": 2247,\n  \"politan</w>\": 15337,\n  \"polite</w>\": 31497,\n  \"politi\": 40597,\n  \"politic\": 33333,\n  \"political\": 37744,\n  \"political</w>\": 4197,\n  \"politically</w>\": 24323,\n  \"politician</w>\": 15960,\n  \"politicians</w>\": 12914,\n  \"politico</w>\": 39403,\n  \"politics</w>\": 4929,\n  \"polk</w>\": 33317,\n  \"polka</w>\": 29476,\n  \"poll</w>\": 7032,\n  \"pollen</w>\": 27651,\n  \"pollin\": 19152,\n  \"pollinators</w>\": 36599,\n  \"polling</w>\": 18024,\n  \"pollo</w>\": 42755,\n  \"pollock</w>\": 37614,\n  \"polls</w>\": 11813,\n  \"pollu\": 8370,\n  \"polluted</w>\": 43346,\n  \"pollution</w>\": 10384,\n  \"polly</w>\": 31204,\n  \"polo\": 35928,\n  \"polo</w>\": 10229,\n  \"poly\": 6833,\n  \"poly</w>\": 18367,\n  \"polye\": 31730,\n  \"polyester</w>\": 38514,\n  \"polym\": 23626,\n  \"polymer</w>\": 29993,\n  \"polyne\": 38892,\n  \"polyvore</w>\": 24771,\n  \"pom\": 7548,\n  \"pom</w>\": 24280,\n  \"pome\": 27963,\n  \"pomegran\": 29326,\n  \"pomegranate</w>\": 32415,\n  \"pomer\": 35156,\n  \"pomona</w>\": 41690,\n  \"pompe\": 18352,\n  \"pompeii</w>\": 47775,\n  \"pompeo</w>\": 34351,\n  \"pompey</w>\": 35079,\n  \"pon\": 3809,\n  \"pon</w>\": 22391,\n  \"ponce</w>\": 43637,\n  \"pond</w>\": 10750,\n  \"ponder</w>\": 36863,\n  \"pondering</w>\": 47395,\n  \"ponds</w>\": 31033,\n  \"pone</w>\": 32183,\n  \"pong\": 40546,\n  \"pong</w>\": 17710,\n  \"ponies</w>\": 34157,\n  \"pons</w>\": 41255,\n  \"pont\": 47563,\n  \"pont</w>\": 22997,\n  \"ponte</w>\": 40892,\n  \"ponti\": 15527,\n  \"pontiac</w>\": 25373,\n  \"pontifex</w>\": 33566,\n  \"ponty\": 45152,\n  \"pony\": 24438,\n  \"pony</w>\": 12678,\n  \"ponytail</w>\": 43265,\n  \"poo\": 6601,\n  \"poo</w>\": 14389,\n  \"pooch</w>\": 37037,\n  \"poodle</w>\": 34961,\n  \"pooh</w>\": 27103,\n  \"pooja</w>\": 35676,\n  \"pool\": 12484,\n  \"pool</w>\": 2831,\n  \"poole</w>\": 26290,\n  \"pools</w>\": 18736,\n  \"poolside</w>\": 35509,\n  \"poon\": 33799,\n  \"poon</w>\": 36178,\n  \"poop</w>\": 23310,\n  \"poor\": 14528,\n  \"poor</w>\": 3665,\n  \"poorest</w>\": 40771,\n  \"poorly</w>\": 21101,\n  \"pop\": 6530,\n  \"pop</w>\": 2852,\n  \"popart</w>\": 47425,\n  \"popcorn</w>\": 15034,\n  \"pope\": 16994,\n  \"pope</w>\": 9283,\n  \"popefrancis</w>\": 37254,\n  \"poplar</w>\": 38726,\n  \"popo\": 38835,\n  \"popo</w>\": 35572,\n  \"popp\": 13156,\n  \"popped</w>\": 14934,\n  \"poppies</w>\": 30385,\n  \"poppin</w>\": 28536,\n  \"popping</w>\": 18152,\n  \"poppins</w>\": 41216,\n  \"poppy\": 32194,\n  \"poppy</w>\": 15447,\n  \"pops</w>\": 11705,\n  \"popsic\": 38481,\n  \"popu\": 3785,\n  \"popul\": 6593,\n  \"popular\": 15854,\n  \"popular</w>\": 4368,\n  \"popularity</w>\": 19235,\n  \"populated</w>\": 38420,\n  \"population</w>\": 8423,\n  \"populations</w>\": 23797,\n  \"populism</w>\": 48998,\n  \"populist</w>\": 49376,\n  \"popup</w>\": 33053,\n  \"por\": 817,\n  \"por</w>\": 7697,\n  \"pora</w>\": 23537,\n  \"porcel\": 19409,\n  \"porcelain</w>\": 20451,\n  \"porch</w>\": 17154,\n  \"pore</w>\": 28267,\n  \"pork\": 40379,\n  \"pork</w>\": 7897,\n  \"poro\": 48110,\n  \"porridge</w>\": 34924,\n  \"porsch\": 48009,\n  \"porsche\": 44049,\n  \"porsche</w>\": 8783,\n  \"port\": 1641,\n  \"port</w>\": 1418,\n  \"porta</w>\": 45037,\n  \"portable</w>\": 11949,\n  \"portage</w>\": 32087,\n  \"portal</w>\": 14982,\n  \"porte</w>\": 28654,\n  \"ported</w>\": 16879,\n  \"porter\": 28319,\n  \"porter</w>\": 10318,\n  \"porters</w>\": 15670,\n  \"portfoli\": 45766,\n  \"portfolio</w>\": 11938,\n  \"porth\": 37425,\n  \"porti\": 45760,\n  \"porting</w>\": 26052,\n  \"portion</w>\": 13739,\n  \"portions</w>\": 22914,\n  \"portland\": 38366,\n  \"portland</w>\": 8880,\n  \"portman</w>\": 34755,\n  \"porto\": 24853,\n  \"porto</w>\": 18947,\n  \"portobello</w>\": 48025,\n  \"portra\": 4175,\n  \"portrait\": 39312,\n  \"portrait</w>\": 5352,\n  \"portraits</w>\": 14203,\n  \"portray</w>\": 46282,\n  \"portrayal</w>\": 39238,\n  \"portrayed</w>\": 36093,\n  \"ports</w>\": 7734,\n  \"portsm\": 17063,\n  \"portsmouth</w>\": 19074,\n  \"portu\": 7159,\n  \"portugal</w>\": 9503,\n  \"portugue\": 17498,\n  \"portuguese</w>\": 18019,\n  \"pos\": 1780,\n  \"pos</w>\": 11839,\n  \"pose\": 25478,\n  \"pose</w>\": 4230,\n  \"posed</w>\": 5206,\n  \"posei\": 47270,\n  \"poser</w>\": 46899,\n  \"poses</w>\": 9773,\n  \"posey</w>\": 34852,\n  \"posh</w>\": 26748,\n  \"posing</w>\": 10518,\n  \"posit\": 28793,\n  \"positi\": 7895,\n  \"position</w>\": 4657,\n  \"positioned</w>\": 34482,\n  \"positioning</w>\": 30657,\n  \"positions</w>\": 12188,\n  \"positive\": 21811,\n  \"positive</w>\": 4844,\n  \"positively</w>\": 24688,\n  \"positivity</w>\": 19966,\n  \"poss</w>\": 39745,\n  \"posse\": 17414,\n  \"posse</w>\": 28413,\n  \"possess</w>\": 36810,\n  \"possessed</w>\": 36220,\n  \"possession</w>\": 16154,\n  \"possessions</w>\": 40588,\n  \"possi\": 2521,\n  \"possibilities</w>\": 17932,\n  \"possibility</w>\": 18517,\n  \"possible</w>\": 3134,\n  \"possibly</w>\": 8601,\n  \"possum</w>\": 38575,\n  \"post\": 3489,\n  \"post</w>\": 1549,\n  \"postage</w>\": 27570,\n  \"postal</w>\": 21687,\n  \"postcard</w>\": 14785,\n  \"postcards</w>\": 23922,\n  \"postdoc</w>\": 41013,\n  \"posted</w>\": 4752,\n  \"poster\": 22881,\n  \"poster</w>\": 3574,\n  \"posters</w>\": 9673,\n  \"postgame</w>\": 34873,\n  \"postgraduate</w>\": 31997,\n  \"posthum\": 42410,\n  \"posting</w>\": 7559,\n  \"postman</w>\": 38285,\n  \"postpon\": 23247,\n  \"postponed</w>\": 25097,\n  \"posts</w>\": 7824,\n  \"postseason</w>\": 24521,\n  \"posture</w>\": 29681,\n  \"posure</w>\": 35539,\n  \"pot\": 3547,\n  \"pot</w>\": 5168,\n  \"potam\": 45825,\n  \"potassi\": 36889,\n  \"potassium</w>\": 37147,\n  \"potat\": 5975,\n  \"potato</w>\": 8527,\n  \"potatoes</w>\": 11567,\n  \"potd</w>\": 28765,\n  \"pote</w>\": 41869,\n  \"poten\": 4454,\n  \"potent</w>\": 26082,\n  \"potenti\": 44104,\n  \"potential</w>\": 5100,\n  \"potentially</w>\": 16508,\n  \"potholes</w>\": 47506,\n  \"potion</w>\": 46055,\n  \"potom\": 38848,\n  \"potomac</w>\": 43372,\n  \"pots</w>\": 19234,\n  \"pott\": 28698,\n  \"potted</w>\": 48581,\n  \"potter\": 24975,\n  \"potter</w>\": 9026,\n  \"pottery</w>\": 18396,\n  \"potts</w>\": 39839,\n  \"potty</w>\": 43569,\n  \"potus</w>\": 8740,\n  \"pou\": 9423,\n  \"pouch</w>\": 26811,\n  \"poul\": 22485,\n  \"poultry</w>\": 31005,\n  \"poun\": 33719,\n  \"pound\": 33809,\n  \"pound</w>\": 10674,\n  \"pounding</w>\": 46544,\n  \"pounds</w>\": 10752,\n  \"pour\": 33112,\n  \"pour</w>\": 8180,\n  \"poured</w>\": 26621,\n  \"pouring</w>\": 16098,\n  \"pours</w>\": 26005,\n  \"pout</w>\": 39621,\n  \"poutine</w>\": 43768,\n  \"pov</w>\": 25731,\n  \"pover\": 8432,\n  \"pover</w>\": 29464,\n  \"poverty</w>\": 9095,\n  \"pow\": 1317,\n  \"pow</w>\": 17745,\n  \"powder\": 32427,\n  \"powder</w>\": 9674,\n  \"powe\": 36955,\n  \"powell</w>\": 13305,\n  \"power\": 2789,\n  \"power</w>\": 1807,\n  \"powerball</w>\": 47803,\n  \"powered\": 45442,\n  \"powered</w>\": 7332,\n  \"powerful</w>\": 4875,\n  \"powerhouse</w>\": 22858,\n  \"powering</w>\": 16231,\n  \"powerof\": 31961,\n  \"powerpoint</w>\": 38940,\n  \"powerrangers</w>\": 40620,\n  \"powers</w>\": 9422,\n  \"pox</w>\": 43649,\n  \"poy</w>\": 34737,\n  \"poyn\": 47655,\n  \"poz\": 39953,\n  \"pp\": 604,\n  \"pp</w>\": 4186,\n  \"ppa</w>\": 10416,\n  \"ppard</w>\": 23391,\n  \"ppc</w>\": 27778,\n  \"ppe\": 24573,\n  \"ppe</w>\": 11867,\n  \"pped</w>\": 1873,\n  \"ppel</w>\": 46523,\n  \"ppen</w>\": 30663,\n  \"pper\": 6719,\n  \"pper</w>\": 2440,\n  \"ppers</w>\": 5232,\n  \"ppery</w>\": 27833,\n  \"ppet</w>\": 20744,\n  \"ppets</w>\": 25849,\n  \"ppg</w>\": 27433,\n  \"ppi</w>\": 9594,\n  \"ppie</w>\": 33795,\n  \"ppin</w>\": 8076,\n  \"pping\": 22214,\n  \"pping</w>\": 1682,\n  \"ppings</w>\": 35687,\n  \"ppl</w>\": 6758,\n  \"pple</w>\": 12302,\n  \"ppm</w>\": 42053,\n  \"ppo</w>\": 10215,\n  \"ppor\": 37613,\n  \"ppp</w>\": 14017,\n  \"pps</w>\": 10683,\n  \"ppv</w>\": 38864,\n  \"ppy\": 30360,\n  \"ppy</w>\": 3860,\n  \"pr\": 766,\n  \"pr</w>\": 4150,\n  \"pra\": 1865,\n  \"pra</w>\": 19285,\n  \"prab\": 17901,\n  \"prabhas</w>\": 29959,\n  \"prabhu</w>\": 31529,\n  \"prac\": 2243,\n  \"practi\": 29995,\n  \"practic\": 5495,\n  \"practical</w>\": 10792,\n  \"practically</w>\": 25588,\n  \"practice</w>\": 3349,\n  \"practiced</w>\": 36749,\n  \"practices</w>\": 9040,\n  \"practicing</w>\": 12750,\n  \"practise</w>\": 38938,\n  \"practising</w>\": 36478,\n  \"practiti\": 19909,\n  \"practitioner</w>\": 32591,\n  \"practitioners</w>\": 29045,\n  \"prada</w>\": 29456,\n  \"pradesh</w>\": 15384,\n  \"prado</w>\": 44141,\n  \"prag\": 31025,\n  \"prague</w>\": 14940,\n  \"prairi\": 12629,\n  \"prairie</w>\": 14753,\n  \"praise</w>\": 10013,\n  \"praised</w>\": 27649,\n  \"praises</w>\": 23049,\n  \"praising</w>\": 36961,\n  \"prakash\": 43708,\n  \"prakash</w>\": 25366,\n  \"pram\": 47774,\n  \"pran\": 20048,\n  \"prank</w>\": 23654,\n  \"pras</w>\": 41562,\n  \"prasad</w>\": 29562,\n  \"prat\": 23069,\n  \"prati\": 45773,\n  \"pratt\": 37863,\n  \"pratt</w>\": 23396,\n  \"prawn</w>\": 33102,\n  \"prawns</w>\": 34903,\n  \"pray\": 12671,\n  \"pray</w>\": 6041,\n  \"prayed</w>\": 34665,\n  \"prayer\": 41452,\n  \"prayer</w>\": 6583,\n  \"prayers</w>\": 8393,\n  \"prayfor\": 18443,\n  \"praying</w>\": 11550,\n  \"prays</w>\": 46602,\n  \"prc</w>\": 28781,\n  \"pre\": 679,\n  \"pre</w>\": 2900,\n  \"preach</w>\": 22545,\n  \"preacher</w>\": 29357,\n  \"preaching</w>\": 23642,\n  \"precau\": 36532,\n  \"precautions</w>\": 47845,\n  \"prece\": 15361,\n  \"preci\": 5470,\n  \"precin\": 27908,\n  \"precinct</w>\": 32587,\n  \"precious</w>\": 8226,\n  \"precipit\": 27463,\n  \"precipitation</w>\": 33399,\n  \"precise</w>\": 24457,\n  \"precisely</w>\": 34954,\n  \"precision\": 44021,\n  \"precision</w>\": 15621,\n  \"pred\": 40370,\n  \"predat\": 13364,\n  \"predator</w>\": 20653,\n  \"predators</w>\": 25569,\n  \"prede\": 38454,\n  \"predecess\": 38963,\n  \"predic\": 4876,\n  \"predict</w>\": 16900,\n  \"predictable</w>\": 25344,\n  \"predicted</w>\": 18702,\n  \"predicting</w>\": 30414,\n  \"prediction</w>\": 16296,\n  \"predictions</w>\": 15125,\n  \"predictive</w>\": 29798,\n  \"predicts</w>\": 25960,\n  \"preds</w>\": 40125,\n  \"pree</w>\": 47026,\n  \"preet</w>\": 30131,\n  \"prefe\": 14542,\n  \"prefecture</w>\": 32890,\n  \"prefer\": 33426,\n  \"prefer</w>\": 11450,\n  \"preference</w>\": 35057,\n  \"preferences</w>\": 38118,\n  \"preferred</w>\": 18772,\n  \"prefers</w>\": 38528,\n  \"pregame</w>\": 18575,\n  \"pregn\": 7190,\n  \"pregnancy</w>\": 12769,\n  \"pregnant</w>\": 11195,\n  \"prehistoric</w>\": 32750,\n  \"prejudice</w>\": 28337,\n  \"preli\": 15523,\n  \"prelimin\": 19990,\n  \"preliminary</w>\": 20997,\n  \"prelims</w>\": 43223,\n  \"prelude</w>\": 42966,\n  \"prem\": 32090,\n  \"prem</w>\": 21724,\n  \"premature</w>\": 39253,\n  \"premi\": 2413,\n  \"premier\": 16996,\n  \"premier</w>\": 5539,\n  \"premiere</w>\": 5367,\n  \"premiered</w>\": 27652,\n  \"premieres</w>\": 19907,\n  \"premiering</w>\": 32615,\n  \"premierleague</w>\": 22608,\n  \"premiers</w>\": 44883,\n  \"premiership</w>\": 23665,\n  \"premiosm\": 38460,\n  \"premiosmtvmiaw</w>\": 38630,\n  \"premise</w>\": 45952,\n  \"premises</w>\": 27266,\n  \"premium</w>\": 8011,\n  \"pren\": 20801,\n  \"preneur</w>\": 46288,\n  \"preorder</w>\": 16703,\n  \"preorders</w>\": 45985,\n  \"prep\": 6430,\n  \"prep</w>\": 7277,\n  \"prepa\": 26270,\n  \"prepaid</w>\": 42934,\n  \"prepar\": 4968,\n  \"preparation</w>\": 11651,\n  \"preparations</w>\": 19135,\n  \"prepare</w>\": 7014,\n  \"prepared</w>\": 7677,\n  \"preparedness</w>\": 29492,\n  \"prepares</w>\": 16375,\n  \"preparing</w>\": 7365,\n  \"prepped</w>\": 34379,\n  \"prepping</w>\": 16459,\n  \"preps</w>\": 14765,\n  \"prequel</w>\": 40461,\n  \"pres\": 1385,\n  \"pres</w>\": 8529,\n  \"presale</w>\": 27135,\n  \"presby\": 30447,\n  \"presbyter\": 33959,\n  \"presbyterian</w>\": 35370,\n  \"preschool</w>\": 24354,\n  \"prescott</w>\": 29392,\n  \"prescri\": 14851,\n  \"prescribed</w>\": 36968,\n  \"prescription</w>\": 23061,\n  \"preseason</w>\": 13813,\n  \"presen\": 16742,\n  \"presence</w>\": 8848,\n  \"present\": 2344,\n  \"present</w>\": 2881,\n  \"presentation</w>\": 4594,\n  \"presentations</w>\": 16998,\n  \"presented</w>\": 4587,\n  \"presenter</w>\": 18587,\n  \"presenters</w>\": 32759,\n  \"presenting</w>\": 5339,\n  \"presents</w>\": 4215,\n  \"preserv\": 17616,\n  \"preservation</w>\": 21074,\n  \"preserve</w>\": 15570,\n  \"preserved</w>\": 23161,\n  \"preserves</w>\": 44881,\n  \"preserving</w>\": 32315,\n  \"presi\": 1697,\n  \"presiden\": 43374,\n  \"presidency</w>\": 18077,\n  \"president\": 19900,\n  \"president</w>\": 1940,\n  \"presidente</w>\": 47363,\n  \"presidenti\": 48297,\n  \"presidential</w>\": 8503,\n  \"presidents</w>\": 16726,\n  \"presiding</w>\": 45298,\n  \"presley</w>\": 30013,\n  \"press\": 4124,\n  \"press</w>\": 2124,\n  \"pressed</w>\": 20080,\n  \"presser</w>\": 27826,\n  \"presses</w>\": 33748,\n  \"pressing</w>\": 20893,\n  \"pressure</w>\": 6083,\n  \"pressures</w>\": 38487,\n  \"prest\": 41840,\n  \"presti\": 12245,\n  \"prestige</w>\": 29328,\n  \"prestigious</w>\": 15888,\n  \"presto</w>\": 42211,\n  \"preston\": 37335,\n  \"preston</w>\": 15179,\n  \"presu\": 21667,\n  \"presumably</w>\": 42562,\n  \"pret\": 9652,\n  \"preten\": 15871,\n  \"pretend</w>\": 18111,\n  \"pretending</w>\": 21306,\n  \"pretoria</w>\": 36080,\n  \"prett\": 46667,\n  \"prettier</w>\": 31745,\n  \"prettiest</w>\": 22866,\n  \"pretty\": 18286,\n  \"pretty</w>\": 2111,\n  \"pretz\": 24890,\n  \"pretzel</w>\": 36707,\n  \"pretzels</w>\": 45468,\n  \"prev\": 20274,\n  \"prevail</w>\": 31637,\n  \"prevalence</w>\": 41729,\n  \"prevalent</w>\": 46260,\n  \"preven\": 29382,\n  \"prevent\": 26436,\n  \"prevent</w>\": 7968,\n  \"preventable</w>\": 44250,\n  \"prevented</w>\": 35356,\n  \"preventing</w>\": 21756,\n  \"prevention</w>\": 9500,\n  \"preventive</w>\": 40949,\n  \"prevents</w>\": 31746,\n  \"preview</w>\": 4449,\n  \"previews</w>\": 20279,\n  \"previous</w>\": 9252,\n  \"previously</w>\": 13359,\n  \"prey</w>\": 17131,\n  \"prez</w>\": 17956,\n  \"pri\": 955,\n  \"pri</w>\": 23400,\n  \"pric\": 24275,\n  \"price\": 13254,\n  \"price</w>\": 2827,\n  \"priced</w>\": 16934,\n  \"priceless</w>\": 15743,\n  \"prices</w>\": 5954,\n  \"pricing</w>\": 14800,\n  \"prick\": 43921,\n  \"prick</w>\": 46516,\n  \"pride\": 15323,\n  \"pride</w>\": 3436,\n  \"pridemonth</w>\": 41410,\n  \"prie\": 22477,\n  \"priest\": 38756,\n  \"priest</w>\": 14222,\n  \"priests</w>\": 30005,\n  \"prim\": 22004,\n  \"prima\": 35611,\n  \"prima</w>\": 33277,\n  \"primal</w>\": 36604,\n  \"primar\": 21579,\n  \"primaries</w>\": 46126,\n  \"primarily</w>\": 29465,\n  \"primark</w>\": 48329,\n  \"primary\": 35024,\n  \"primary</w>\": 5814,\n  \"primavera</w>\": 44899,\n  \"prime\": 14162,\n  \"prime</w>\": 5183,\n  \"primed</w>\": 45694,\n  \"primer</w>\": 22388,\n  \"primetime</w>\": 29763,\n  \"primitive</w>\": 37467,\n  \"primo</w>\": 43215,\n  \"primrose</w>\": 45891,\n  \"prin\": 1588,\n  \"prince\": 9457,\n  \"prince</w>\": 4735,\n  \"princes\": 45329,\n  \"princes</w>\": 30136,\n  \"princess\": 24123,\n  \"princess</w>\": 5079,\n  \"princesses</w>\": 34161,\n  \"princeton</w>\": 22433,\n  \"princi\": 5129,\n  \"principal\": 33599,\n  \"principal</w>\": 8860,\n  \"principals</w>\": 27524,\n  \"principle</w>\": 19595,\n  \"principles</w>\": 13755,\n  \"print\": 17851,\n  \"print</w>\": 3557,\n  \"printable</w>\": 29648,\n  \"printed</w>\": 7978,\n  \"printer</w>\": 14521,\n  \"printers</w>\": 27881,\n  \"printing</w>\": 7369,\n  \"printmaking</w>\": 38669,\n  \"prints</w>\": 7704,\n  \"prior\": 20328,\n  \"prior</w>\": 10572,\n  \"priorit\": 47773,\n  \"prioriti\": 28822,\n  \"priorities</w>\": 15232,\n  \"prioritize</w>\": 46715,\n  \"priority</w>\": 12451,\n  \"priory</w>\": 38665,\n  \"prisc\": 32468,\n  \"priscilla</w>\": 42396,\n  \"prise</w>\": 23343,\n  \"prism\": 49311,\n  \"prism</w>\": 34356,\n  \"prison\": 9281,\n  \"prison</w>\": 6622,\n  \"prisoner</w>\": 21427,\n  \"prisoners</w>\": 17460,\n  \"prisons</w>\": 26607,\n  \"pristine</w>\": 30618,\n  \"prit\": 41668,\n  \"prit</w>\": 37523,\n  \"prith\": 39173,\n  \"prius</w>\": 43561,\n  \"priv\": 3270,\n  \"privacy</w>\": 10437,\n  \"private\": 20362,\n  \"private</w>\": 4439,\n  \"privately</w>\": 32970,\n  \"privati\": 27379,\n  \"privi\": 8367,\n  \"privileg\": 18015,\n  \"privilege</w>\": 11537,\n  \"privileged</w>\": 18166,\n  \"prix</w>\": 10875,\n  \"priya</w>\": 31275,\n  \"priyan\": 16488,\n  \"priyanka</w>\": 31959,\n  \"priyankach\": 30030,\n  \"priyankachopra</w>\": 30264,\n  \"prize\": 48222,\n  \"prize</w>\": 4521,\n  \"prized</w>\": 38769,\n  \"prizes</w>\": 9268,\n  \"prk</w>\": 37094,\n  \"pro\": 644,\n  \"pro</w>\": 2630,\n  \"proactive</w>\": 33364,\n  \"prob\": 17706,\n  \"prob</w>\": 24007,\n  \"probab\": 3907,\n  \"probability</w>\": 32637,\n  \"probable</w>\": 42444,\n  \"probably</w>\": 4047,\n  \"probation</w>\": 36531,\n  \"probe</w>\": 14359,\n  \"probes</w>\": 48564,\n  \"probiotics</w>\": 49395,\n  \"proble\": 2719,\n  \"problem</w>\": 4324,\n  \"problematic</w>\": 33767,\n  \"problems</w>\": 4671,\n  \"probs</w>\": 16330,\n  \"probz</w>\": 34243,\n  \"proc\": 38417,\n  \"proce\": 4076,\n  \"procedu\": 18204,\n  \"procedural</w>\": 48177,\n  \"procedure</w>\": 20163,\n  \"procedures</w>\": 21109,\n  \"proceed\": 26664,\n  \"proceed</w>\": 33894,\n  \"proceedings</w>\": 26953,\n  \"proceeds</w>\": 11882,\n  \"process\": 17291,\n  \"process</w>\": 4078,\n  \"processed</w>\": 23816,\n  \"processes</w>\": 15169,\n  \"processing</w>\": 11737,\n  \"procession</w>\": 26288,\n  \"processor</w>\": 22838,\n  \"processors</w>\": 43634,\n  \"proclaimed</w>\": 34489,\n  \"proclamation</w>\": 32065,\n  \"procra\": 25361,\n  \"procrastin\": 25586,\n  \"procrastination</w>\": 42825,\n  \"procreate</w>\": 39336,\n  \"proctor</w>\": 47204,\n  \"procu\": 21001,\n  \"procurement</w>\": 23733,\n  \"prod\": 44349,\n  \"prod</w>\": 11991,\n  \"prodi\": 27759,\n  \"prodigy</w>\": 31973,\n  \"produ\": 27852,\n  \"produc\": 1471,\n  \"produce</w>\": 7529,\n  \"produced</w>\": 7479,\n  \"producer</w>\": 7064,\n  \"producers</w>\": 13883,\n  \"produces</w>\": 19940,\n  \"producing</w>\": 13579,\n  \"product\": 32602,\n  \"product</w>\": 4306,\n  \"production</w>\": 4146,\n  \"productions</w>\": 14166,\n  \"productive</w>\": 9697,\n  \"productivity</w>\": 12800,\n  \"products</w>\": 3964,\n  \"prof\": 15043,\n  \"prof</w>\": 5488,\n  \"profe\": 2611,\n  \"profess\": 5486,\n  \"professi\": 3705,\n  \"profession\": 8104,\n  \"profession</w>\": 19671,\n  \"professional\": 46007,\n  \"professional</w>\": 4774,\n  \"professionalism</w>\": 41252,\n  \"professionally</w>\": 33892,\n  \"professionals</w>\": 10165,\n  \"professor\": 47302,\n  \"professor</w>\": 6092,\n  \"professors</w>\": 27758,\n  \"profici\": 34685,\n  \"profile\": 14291,\n  \"profile</w>\": 6444,\n  \"profiles</w>\": 22070,\n  \"profiling</w>\": 37123,\n  \"profit\": 16941,\n  \"profit</w>\": 7909,\n  \"profitable</w>\": 25465,\n  \"profits</w>\": 13410,\n  \"profound\": 48245,\n  \"profound</w>\": 22998,\n  \"profs</w>\": 19260,\n  \"prog</w>\": 22219,\n  \"progno\": 46070,\n  \"program\": 4162,\n  \"program</w>\": 2737,\n  \"programme</w>\": 6322,\n  \"programmer</w>\": 37001,\n  \"programmes</w>\": 20468,\n  \"programming</w>\": 10831,\n  \"programs</w>\": 7345,\n  \"progre\": 7069,\n  \"progress</w>\": 4421,\n  \"progressi\": 23297,\n  \"progressing</w>\": 32346,\n  \"progression</w>\": 24772,\n  \"progressive</w>\": 12208,\n  \"progressives</w>\": 41709,\n  \"prohi\": 41124,\n  \"prohib\": 45040,\n  \"prohibition</w>\": 34440,\n  \"proj</w>\": 39156,\n  \"proje\": 48345,\n  \"projec\": 1610,\n  \"project\": 15911,\n  \"project</w>\": 1965,\n  \"projected</w>\": 22873,\n  \"projection</w>\": 22384,\n  \"projections</w>\": 34638,\n  \"projector</w>\": 27816,\n  \"projects</w>\": 5090,\n  \"proli\": 19710,\n  \"prolife</w>\": 32126,\n  \"prolifer\": 39018,\n  \"prolific</w>\": 27839,\n  \"prolly</w>\": 45968,\n  \"prolon\": 35379,\n  \"prolonged</w>\": 41972,\n  \"prom\": 40363,\n  \"prom</w>\": 7944,\n  \"prome\": 34355,\n  \"promen\": 33578,\n  \"promenade</w>\": 35522,\n  \"promethe\": 44183,\n  \"promin\": 35217,\n  \"prominent</w>\": 19172,\n  \"promis\": 3963,\n  \"promise</w>\": 6745,\n  \"promised</w>\": 11516,\n  \"promises</w>\": 12064,\n  \"promising</w>\": 14183,\n  \"promo\": 3037,\n  \"promo</w>\": 6755,\n  \"promos</w>\": 35044,\n  \"promote\": 47384,\n  \"promote</w>\": 8003,\n  \"promoted</w>\": 16395,\n  \"promoter</w>\": 33081,\n  \"promotes</w>\": 20169,\n  \"promoting</w>\": 9695,\n  \"promotion</w>\": 9259,\n  \"promotional</w>\": 17619,\n  \"promotions</w>\": 19142,\n  \"promp\": 11671,\n  \"prompt</w>\": 20198,\n  \"prompted</w>\": 45746,\n  \"prompts</w>\": 33490,\n  \"proms</w>\": 37759,\n  \"pron\": 13285,\n  \"prone</w>\": 30964,\n  \"pronoun\": 23022,\n  \"pronounce</w>\": 40489,\n  \"pronounced</w>\": 34109,\n  \"pronto</w>\": 44296,\n  \"proof\": 17020,\n  \"proof</w>\": 5248,\n  \"proofing</w>\": 35679,\n  \"proofs</w>\": 41023,\n  \"prop\": 19123,\n  \"prop</w>\": 16254,\n  \"propag\": 12151,\n  \"propaganda</w>\": 14718,\n  \"propane</w>\": 45546,\n  \"propel</w>\": 48439,\n  \"propeller</w>\": 47404,\n  \"proper\": 3577,\n  \"proper</w>\": 8205,\n  \"properly</w>\": 12560,\n  \"properties</w>\": 10922,\n  \"property\": 26486,\n  \"property</w>\": 5043,\n  \"prophe\": 9662,\n  \"prophecy</w>\": 32501,\n  \"prophet</w>\": 15549,\n  \"prophetic</w>\": 47476,\n  \"prophets</w>\": 39441,\n  \"propor\": 35016,\n  \"proportion</w>\": 35775,\n  \"proportions</w>\": 39391,\n  \"propos\": 9455,\n  \"proposal</w>\": 12139,\n  \"proposals</w>\": 20568,\n  \"propose</w>\": 28471,\n  \"proposed</w>\": 10615,\n  \"proposes</w>\": 27133,\n  \"proposing</w>\": 42631,\n  \"proposition</w>\": 44780,\n  \"propri\": 28243,\n  \"props</w>\": 15249,\n  \"propulsion</w>\": 49380,\n  \"pros\": 33925,\n  \"pros</w>\": 14147,\n  \"prosciutto</w>\": 46565,\n  \"prose\": 47063,\n  \"prose</w>\": 28675,\n  \"prosecco</w>\": 28839,\n  \"prosecu\": 12136,\n  \"prosecution</w>\": 30902,\n  \"prosecutor</w>\": 23736,\n  \"prosecutors</w>\": 31656,\n  \"prosp\": 24242,\n  \"prospec\": 12693,\n  \"prospect</w>\": 11211,\n  \"prospective</w>\": 28034,\n  \"prospects</w>\": 15372,\n  \"prosper\": 16121,\n  \"prosper</w>\": 33526,\n  \"prosperity</w>\": 17203,\n  \"prosperous</w>\": 28252,\n  \"prost</w>\": 47923,\n  \"prostate</w>\": 28808,\n  \"prostatec\": 49064,\n  \"prosthetic</w>\": 44602,\n  \"prostitu\": 37333,\n  \"protag\": 28950,\n  \"protagonist</w>\": 38183,\n  \"prote\": 1845,\n  \"protec\": 5640,\n  \"protect\": 25563,\n  \"protect</w>\": 4817,\n  \"protected</w>\": 12266,\n  \"protecting</w>\": 11710,\n  \"protection</w>\": 6238,\n  \"protections</w>\": 33772,\n  \"protective</w>\": 17028,\n  \"protector</w>\": 20441,\n  \"protectors</w>\": 45039,\n  \"protects</w>\": 21889,\n  \"protein</w>\": 8088,\n  \"proteins</w>\": 28661,\n  \"protest</w>\": 6279,\n  \"protestant</w>\": 46945,\n  \"protested</w>\": 48089,\n  \"protester</w>\": 42073,\n  \"protesters</w>\": 12660,\n  \"protesting</w>\": 18788,\n  \"protestors</w>\": 27822,\n  \"protests</w>\": 12450,\n  \"proto\": 8672,\n  \"proto</w>\": 44958,\n  \"protocol</w>\": 19938,\n  \"protocols</w>\": 39631,\n  \"proton</w>\": 40009,\n  \"prototype</w>\": 16675,\n  \"prototyping</w>\": 42081,\n  \"prou\": 5739,\n  \"proud\": 11080,\n  \"proud</w>\": 1679,\n  \"prouder</w>\": 39585,\n  \"proudest</w>\": 46806,\n  \"proudly</w>\": 11203,\n  \"proudof\": 48184,\n  \"proudtobe\": 35043,\n  \"prov\": 23772,\n  \"prov</w>\": 35021,\n  \"prove</w>\": 10107,\n  \"proved</w>\": 16473,\n  \"proven\": 35405,\n  \"proven</w>\": 14569,\n  \"provence</w>\": 28067,\n  \"prover\": 18312,\n  \"proverb</w>\": 34419,\n  \"proverbs</w>\": 27016,\n  \"proves</w>\": 16119,\n  \"provi\": 2289,\n  \"provide</w>\": 4832,\n  \"provided</w>\": 9046,\n  \"providence</w>\": 19331,\n  \"provider</w>\": 14409,\n  \"providers</w>\": 17120,\n  \"provides</w>\": 7161,\n  \"providing</w>\": 7250,\n  \"provin\": 12074,\n  \"province</w>\": 8978,\n  \"provinces</w>\": 35050,\n  \"provincial</w>\": 16002,\n  \"proving</w>\": 18055,\n  \"provision</w>\": 30148,\n  \"provisional</w>\": 36008,\n  \"provisions</w>\": 39269,\n  \"provo\": 15367,\n  \"provoc\": 31618,\n  \"provocative</w>\": 43809,\n  \"provoking</w>\": 25510,\n  \"provost</w>\": 36627,\n  \"prow\": 38737,\n  \"prowrestling</w>\": 39825,\n  \"prox\": 41616,\n  \"proxim\": 31436,\n  \"proximity</w>\": 38298,\n  \"proxy</w>\": 31680,\n  \"prs</w>\": 23879,\n  \"pru\": 12961,\n  \"pruitt</w>\": 39453,\n  \"prun\": 29029,\n  \"pruning</w>\": 48133,\n  \"pry\": 31965,\n  \"pryor</w>\": 43375,\n  \"ps\": 3982,\n  \"ps</w>\": 814,\n  \"psa</w>\": 14031,\n  \"psal\": 13859,\n  \"psalm</w>\": 17995,\n  \"psalms</w>\": 35003,\n  \"psb</w>\": 37017,\n  \"psc</w>\": 43118,\n  \"psd</w>\": 28810,\n  \"pse\": 19737,\n  \"pse</w>\": 5423,\n  \"pseu\": 24919,\n  \"pseudo</w>\": 46618,\n  \"psg</w>\": 17123,\n  \"psi\": 45848,\n  \"psi</w>\": 24533,\n  \"psic\": 29299,\n  \"psis</w>\": 33041,\n  \"psl</w>\": 21373,\n  \"psn</w>\": 36781,\n  \"pso\": 27045,\n  \"pson</w>\": 7487,\n  \"psori\": 44688,\n  \"psp</w>\": 32769,\n  \"pss\": 35718,\n  \"pss</w>\": 42535,\n  \"psst</w>\": 47814,\n  \"pst</w>\": 12692,\n  \"psu\": 41286,\n  \"psu</w>\": 28338,\n  \"psv</w>\": 44530,\n  \"psy\": 3576,\n  \"psy</w>\": 11056,\n  \"psych\": 31041,\n  \"psych</w>\": 20509,\n  \"psyched\": 19932,\n  \"psyched</w>\": 35199,\n  \"psychedelic</w>\": 23292,\n  \"psychi\": 18147,\n  \"psychiatric</w>\": 30578,\n  \"psychiatry</w>\": 39706,\n  \"psychic</w>\": 24916,\n  \"psycho\": 6472,\n  \"psycho</w>\": 22154,\n  \"psychological</w>\": 18153,\n  \"psychologist</w>\": 32827,\n  \"psychology</w>\": 12352,\n  \"psychop\": 30112,\n  \"psychotic</w>\": 48774,\n  \"pt\": 11139,\n  \"pt</w>\": 1459,\n  \"pta</w>\": 11586,\n  \"ptbo</w>\": 40481,\n  \"ptc</w>\": 44646,\n  \"pte</w>\": 47804,\n  \"pter\": 49323,\n  \"pti\": 29375,\n  \"pti</w>\": 10491,\n  \"ptic</w>\": 20670,\n  \"ption</w>\": 3479,\n  \"ptions</w>\": 24963,\n  \"pto\": 31372,\n  \"pto</w>\": 34092,\n  \"pton</w>\": 19780,\n  \"pts</w>\": 5886,\n  \"ptsd</w>\": 23973,\n  \"ptv</w>\": 42402,\n  \"pu\": 755,\n  \"pu</w>\": 11780,\n  \"pub\": 20720,\n  \"pub</w>\": 6301,\n  \"puberty</w>\": 44122,\n  \"pubg</w>\": 31496,\n  \"publ\": 3434,\n  \"publi\": 1617,\n  \"public\": 3592,\n  \"public</w>\": 2122,\n  \"publica</w>\": 49007,\n  \"publication</w>\": 13538,\n  \"publications</w>\": 27334,\n  \"publichealth</w>\": 35872,\n  \"publicity</w>\": 20831,\n  \"publicly</w>\": 18554,\n  \"publish</w>\": 19032,\n  \"published</w>\": 4311,\n  \"publisher</w>\": 20455,\n  \"publishers</w>\": 25222,\n  \"publishes</w>\": 35633,\n  \"publishing</w>\": 10994,\n  \"publix</w>\": 47985,\n  \"pubs</w>\": 21099,\n  \"puc\": 48779,\n  \"puck</w>\": 17550,\n  \"pud\": 39234,\n  \"pudding</w>\": 14025,\n  \"puddle</w>\": 33545,\n  \"pue\": 20161,\n  \"pueblo</w>\": 33076,\n  \"puer\": 8968,\n  \"puerto</w>\": 12289,\n  \"puertor\": 22757,\n  \"puertorico</w>\": 26356,\n  \"puff\": 44477,\n  \"puff</w>\": 17184,\n  \"puffin</w>\": 47632,\n  \"puffs</w>\": 47453,\n  \"puffy</w>\": 49245,\n  \"pug\": 20950,\n  \"pug</w>\": 17739,\n  \"pugchat</w>\": 42266,\n  \"pugh</w>\": 41302,\n  \"puglia</w>\": 38345,\n  \"pugs</w>\": 39425,\n  \"puj\": 46163,\n  \"puja</w>\": 33753,\n  \"puk</w>\": 31811,\n  \"pul\": 2469,\n  \"pul</w>\": 40512,\n  \"pula\": 45856,\n  \"puli</w>\": 47293,\n  \"pulit\": 27745,\n  \"pulitzer</w>\": 31419,\n  \"pull\": 20155,\n  \"pull</w>\": 6857,\n  \"pulled</w>\": 8525,\n  \"pulling</w>\": 12897,\n  \"pullman</w>\": 40203,\n  \"pullover</w>\": 44020,\n  \"pulls</w>\": 16041,\n  \"pulmon\": 32613,\n  \"pulmonary</w>\": 39132,\n  \"pulp</w>\": 25410,\n  \"pulse\": 40091,\n  \"pulse</w>\": 12485,\n  \"pulses</w>\": 42177,\n  \"pulsion</w>\": 35398,\n  \"pum\": 37497,\n  \"puma</w>\": 20858,\n  \"pump\": 5179,\n  \"pump</w>\": 9173,\n  \"pumped</w>\": 12796,\n  \"pumping</w>\": 25150,\n  \"pumpkin\": 36386,\n  \"pumpkin</w>\": 8842,\n  \"pumpkins</w>\": 23787,\n  \"pumps</w>\": 18540,\n  \"pun\": 2707,\n  \"pun</w>\": 19929,\n  \"punc\": 43907,\n  \"punch\": 29332,\n  \"punch</w>\": 10730,\n  \"punched</w>\": 31689,\n  \"punches</w>\": 35279,\n  \"punching</w>\": 33468,\n  \"punctu\": 31565,\n  \"punctuation</w>\": 47051,\n  \"pundit</w>\": 41466,\n  \"pune\": 32593,\n  \"pune</w>\": 14488,\n  \"pung</w>\": 45420,\n  \"puni\": 11479,\n  \"punish</w>\": 34569,\n  \"punished</w>\": 31598,\n  \"punisher</w>\": 38509,\n  \"punishment</w>\": 19099,\n  \"punjab\": 19405,\n  \"punjab</w>\": 12883,\n  \"punjabi</w>\": 25430,\n  \"punk\": 28933,\n  \"punk</w>\": 7246,\n  \"punks</w>\": 47171,\n  \"puns</w>\": 35231,\n  \"punt</w>\": 32699,\n  \"punta</w>\": 34112,\n  \"punter</w>\": 47092,\n  \"pup\": 11926,\n  \"pup</w>\": 11302,\n  \"pupil</w>\": 27265,\n  \"pupils</w>\": 13628,\n  \"pupp\": 7116,\n  \"puppet</w>\": 18439,\n  \"puppets</w>\": 28475,\n  \"puppies</w>\": 14820,\n  \"puppy\": 25431,\n  \"puppy</w>\": 6829,\n  \"puppylove</w>\": 40849,\n  \"pups</w>\": 20778,\n  \"pur\": 1727,\n  \"pur</w>\": 6265,\n  \"pura</w>\": 25596,\n  \"puram</w>\": 46174,\n  \"purcell</w>\": 46065,\n  \"purch\": 8384,\n  \"purchase</w>\": 5481,\n  \"purchased</w>\": 13399,\n  \"purchases</w>\": 21887,\n  \"purchasing</w>\": 20718,\n  \"purdu\": 40691,\n  \"purdue</w>\": 22280,\n  \"pure\": 14202,\n  \"pure</w>\": 5979,\n  \"puree</w>\": 45474,\n  \"purely</w>\": 32459,\n  \"puremichigan</w>\": 39783,\n  \"purest</w>\": 45497,\n  \"purge</w>\": 33514,\n  \"puri\": 16910,\n  \"puri</w>\": 21974,\n  \"purification</w>\": 47724,\n  \"purity</w>\": 29780,\n  \"purple\": 17837,\n  \"purple</w>\": 5496,\n  \"purpose\": 33492,\n  \"purpose</w>\": 7391,\n  \"purposes</w>\": 22020,\n  \"purr\": 49262,\n  \"purr</w>\": 46343,\n  \"purse</w>\": 16480,\n  \"pursue</w>\": 19463,\n  \"pursuing</w>\": 26424,\n  \"pursuit</w>\": 16469,\n  \"purÃ©e</w>\": 40981,\n  \"pus</w>\": 13841,\n  \"pusa</w>\": 40825,\n  \"push\": 16028,\n  \"push</w>\": 6831,\n  \"pushaw\": 35407,\n  \"pushaward\": 35448,\n  \"pushawards\": 47184,\n  \"pushed</w>\": 16155,\n  \"pushes</w>\": 23828,\n  \"pushing</w>\": 11549,\n  \"put\": 29535,\n  \"put</w>\": 1983,\n  \"putin</w>\": 10693,\n  \"putnam</w>\": 40235,\n  \"puts</w>\": 7898,\n  \"putt</w>\": 30279,\n  \"putter</w>\": 44723,\n  \"putting</w>\": 5154,\n  \"puzz\": 19760,\n  \"puzzle</w>\": 12875,\n  \"puzzles</w>\": 27986,\n  \"pv\": 14517,\n  \"pv</w>\": 13495,\n  \"pvc</w>\": 26959,\n  \"pvp</w>\": 44172,\n  \"pvt</w>\": 29898,\n  \"pw\": 19419,\n  \"pw</w>\": 16067,\n  \"pwc</w>\": 22965,\n  \"px\": 24790,\n  \"px</w>\": 10262,\n  \"pxrtg</w>\": 36262,\n  \"py\": 4005,\n  \"py</w>\": 7504,\n  \"pye\": 31099,\n  \"pyeongchang</w>\": 36066,\n  \"pyg\": 41450,\n  \"pyram\": 14405,\n  \"pyramid</w>\": 18725,\n  \"pyramids</w>\": 36877,\n  \"pyrene\": 36740,\n  \"pyrenees</w>\": 39744,\n  \"pyro\": 39762,\n  \"python</w>\": 13370,\n  \"pz</w>\": 48361,\n  \"pÃ©\": 43167,\n  \"q\": 80,\n  \"q</w>\": 336,\n  \"qa\": 24944,\n  \"qa</w>\": 16360,\n  \"qad\": 27844,\n  \"qadri</w>\": 35672,\n  \"qaeda</w>\": 31246,\n  \"qanda</w>\": 48672,\n  \"qanon</w>\": 19182,\n  \"qant\": 35404,\n  \"qantas</w>\": 43250,\n  \"qatar\": 32804,\n  \"qatar</w>\": 10872,\n  \"qb</w>\": 8073,\n  \"qbs</w>\": 38188,\n  \"qc</w>\": 17406,\n  \"qe</w>\": 30974,\n  \"qf</w>\": 27215,\n  \"qi\": 25054,\n  \"qi</w>\": 11256,\n  \"qing\": 46522,\n  \"qing</w>\": 34339,\n  \"ql</w>\": 28366,\n  \"qld\": 23039,\n  \"qld</w>\": 13765,\n  \"qldpol</w>\": 42296,\n  \"qm</w>\": 42148,\n  \"qotd</w>\": 24504,\n  \"qpr</w>\": 24788,\n  \"qq\": 31960,\n  \"qr</w>\": 18193,\n  \"qs</w>\": 14364,\n  \"qt</w>\": 15013,\n  \"qtr</w>\": 44803,\n  \"qu\": 666,\n  \"qu</w>\": 28646,\n  \"qua</w>\": 20363,\n  \"quack</w>\": 45575,\n  \"quad\": 11656,\n  \"quad</w>\": 13419,\n  \"quadcopter</w>\": 39792,\n  \"quadru\": 35831,\n  \"quaid</w>\": 34265,\n  \"quail</w>\": 34392,\n  \"quaint</w>\": 45976,\n  \"quake</w>\": 8421,\n  \"quaker</w>\": 43395,\n  \"quakes</w>\": 24572,\n  \"qual\": 9979,\n  \"qual</w>\": 32405,\n  \"qualcomm</w>\": 38683,\n  \"quali\": 4574,\n  \"qualification</w>\": 21508,\n  \"qualifications</w>\": 35225,\n  \"qualified</w>\": 11927,\n  \"qualifier</w>\": 18733,\n  \"qualifiers</w>\": 21388,\n  \"qualifies</w>\": 35820,\n  \"qualify</w>\": 17019,\n  \"qualifying</w>\": 11895,\n  \"qualitative</w>\": 45847,\n  \"qualities</w>\": 20488,\n  \"quality\": 28545,\n  \"quality</w>\": 3027,\n  \"quan\": 11669,\n  \"quan</w>\": 27490,\n  \"quand</w>\": 28198,\n  \"quant\": 15050,\n  \"quanti\": 31540,\n  \"quantitative</w>\": 40583,\n  \"quantities</w>\": 33917,\n  \"quantity</w>\": 26920,\n  \"quantum</w>\": 15320,\n  \"quar\": 3856,\n  \"quare</w>\": 42549,\n  \"quarry</w>\": 27601,\n  \"quart\": 7851,\n  \"quarter\": 8816,\n  \"quarter</w>\": 6632,\n  \"quarterback</w>\": 16545,\n  \"quarterfinal</w>\": 37992,\n  \"quarterfinals</w>\": 28971,\n  \"quarterly</w>\": 23350,\n  \"quarters</w>\": 10146,\n  \"quartet</w>\": 18056,\n  \"quartz</w>\": 17752,\n  \"quat\": 25715,\n  \"quattro</w>\": 40300,\n  \"quay\": 40276,\n  \"quay</w>\": 17304,\n  \"que\": 1147,\n  \"que</w>\": 2319,\n  \"quebec</w>\": 15373,\n  \"queen\": 6407,\n  \"queen</w>\": 2997,\n  \"queenof\": 44398,\n  \"queens\": 22943,\n  \"queens</w>\": 9330,\n  \"queensland</w>\": 15168,\n  \"queer\": 38874,\n  \"queer</w>\": 18161,\n  \"quel\": 39774,\n  \"quel</w>\": 21879,\n  \"quen\": 23876,\n  \"quen</w>\": 38324,\n  \"quent\": 23808,\n  \"quentin</w>\": 27530,\n  \"quer\": 17378,\n  \"quer</w>\": 26859,\n  \"quered</w>\": 23210,\n  \"queries</w>\": 32958,\n  \"querque</w>\": 30338,\n  \"query</w>\": 27464,\n  \"ques\": 25328,\n  \"ques</w>\": 7715,\n  \"queso</w>\": 40110,\n  \"quest\": 31653,\n  \"quest</w>\": 4846,\n  \"questi\": 2391,\n  \"question\": 18961,\n  \"question</w>\": 4382,\n  \"questionable</w>\": 30733,\n  \"questioned</w>\": 31847,\n  \"questioning</w>\": 24887,\n  \"questions</w>\": 3883,\n  \"quests</w>\": 44611,\n  \"quet</w>\": 8513,\n  \"quets</w>\": 39055,\n  \"quetta</w>\": 38326,\n  \"quette</w>\": 18993,\n  \"queu\": 32705,\n  \"queue</w>\": 18549,\n  \"queues</w>\": 40649,\n  \"queuing</w>\": 44082,\n  \"quez</w>\": 18677,\n  \"quezon</w>\": 41117,\n  \"qui\": 1912,\n  \"qui</w>\": 18046,\n  \"quic\": 26474,\n  \"quiche</w>\": 47723,\n  \"quick\": 5969,\n  \"quick</w>\": 3712,\n  \"quicker</w>\": 29211,\n  \"quickest</w>\": 37734,\n  \"quickly</w>\": 7787,\n  \"quid</w>\": 30732,\n  \"quie\": 43875,\n  \"quien</w>\": 43482,\n  \"quiere</w>\": 42723,\n  \"quiero</w>\": 32567,\n  \"quiet\": 17853,\n  \"quiet</w>\": 7557,\n  \"quietly</w>\": 22208,\n  \"quig\": 44690,\n  \"quil\": 12305,\n  \"quill</w>\": 48951,\n  \"quilt</w>\": 23977,\n  \"quilted</w>\": 46052,\n  \"quin\": 8607,\n  \"quin</w>\": 17167,\n  \"quincy</w>\": 27640,\n  \"quind\": 32339,\n  \"quinn</w>\": 12306,\n  \"quinoa</w>\": 26703,\n  \"quins</w>\": 39701,\n  \"quint\": 26898,\n  \"quinta</w>\": 47446,\n  \"quinte\": 22098,\n  \"quintess\": 37538,\n  \"quintet</w>\": 35125,\n  \"quipment</w>\": 42813,\n  \"quir\": 15943,\n  \"quirky</w>\": 25044,\n  \"quis\": 15064,\n  \"quist</w>\": 25128,\n  \"quit\": 19358,\n  \"quit</w>\": 11140,\n  \"quite</w>\": 4135,\n  \"quito</w>\": 35828,\n  \"quits</w>\": 32505,\n  \"quitting</w>\": 33871,\n  \"quity</w>\": 33133,\n  \"quiz\": 31197,\n  \"quiz</w>\": 8344,\n  \"quizz\": 35041,\n  \"quo\": 3046,\n  \"quo</w>\": 28127,\n  \"quoi</w>\": 45549,\n  \"quot\": 5452,\n  \"quot</w>\": 47587,\n  \"quota</w>\": 42097,\n  \"quotation</w>\": 49195,\n  \"quote\": 15446,\n  \"quote</w>\": 4020,\n  \"quoted</w>\": 27706,\n  \"quoteoftheday</w>\": 19975,\n  \"quotes</w>\": 5808,\n  \"quoting</w>\": 31651,\n  \"qur</w>\": 37782,\n  \"quran</w>\": 19690,\n  \"qureshi</w>\": 46307,\n  \"qvist</w>\": 42322,\n  \"qx</w>\": 45038,\n  \"r\": 81,\n  \"r</w>\": 337,\n  \"ra\": 559,\n  \"ra</w>\": 1735,\n  \"raa</w>\": 44344,\n  \"rab\": 14816,\n  \"rab</w>\": 33224,\n  \"rabb\": 6875,\n  \"rabbi</w>\": 20959,\n  \"rabbit</w>\": 10274,\n  \"rabbits</w>\": 27028,\n  \"rabhu</w>\": 25806,\n  \"rable</w>\": 10182,\n  \"rac\": 1773,\n  \"rac</w>\": 30462,\n  \"raccoon</w>\": 29516,\n  \"race\": 10978,\n  \"race</w>\": 2471,\n  \"racec\": 18814,\n  \"racecourse</w>\": 25036,\n  \"raced</w>\": 36021,\n  \"racer</w>\": 16798,\n  \"racers</w>\": 33603,\n  \"races</w>\": 8605,\n  \"raceway</w>\": 24650,\n  \"rach\": 6876,\n  \"rach</w>\": 33429,\n  \"racha\": 21952,\n  \"racha</w>\": 35022,\n  \"rachael</w>\": 29095,\n  \"rachel\": 13511,\n  \"rachel</w>\": 8029,\n  \"raci\": 33381,\n  \"racial</w>\": 13801,\n  \"racially</w>\": 43577,\n  \"racing\": 23306,\n  \"racing</w>\": 3699,\n  \"racism</w>\": 11276,\n  \"racist</w>\": 9684,\n  \"racists</w>\": 41777,\n  \"rack\": 24600,\n  \"rack</w>\": 12034,\n  \"racket</w>\": 37691,\n  \"racks</w>\": 21191,\n  \"rad\": 4473,\n  \"rad</w>\": 8238,\n  \"rada</w>\": 30437,\n  \"radar</w>\": 9672,\n  \"radcliffe</w>\": 33096,\n  \"rade\": 44494,\n  \"rade</w>\": 17911,\n  \"rader</w>\": 45002,\n  \"radford</w>\": 45800,\n  \"radha</w>\": 43122,\n  \"radi\": 5772,\n  \"radial</w>\": 42028,\n  \"radiance</w>\": 45670,\n  \"radiant</w>\": 25614,\n  \"radiation</w>\": 18210,\n  \"radiator</w>\": 39372,\n  \"radic\": 18082,\n  \"radical</w>\": 13712,\n  \"radicals</w>\": 45903,\n  \"radio\": 7176,\n  \"radio</w>\": 2638,\n  \"radioactive</w>\": 34704,\n  \"radiodisney</w>\": 36483,\n  \"radiohead</w>\": 39472,\n  \"radiology</w>\": 29684,\n  \"radios</w>\": 43669,\n  \"radish</w>\": 37789,\n  \"radius</w>\": 37570,\n  \"rado</w>\": 29784,\n  \"rae\": 21646,\n  \"rae</w>\": 15051,\n  \"rael</w>\": 45390,\n  \"raer</w>\": 44561,\n  \"raf\": 11495,\n  \"raf</w>\": 11490,\n  \"rafa\": 14352,\n  \"rafa</w>\": 24850,\n  \"rafael\": 38221,\n  \"rafael</w>\": 19216,\n  \"rafaelnadal</w>\": 49219,\n  \"raff\": 34900,\n  \"raffic</w>\": 32928,\n  \"raffle</w>\": 13752,\n  \"raffles</w>\": 43489,\n  \"rafi\": 35304,\n  \"raft</w>\": 9233,\n  \"rafting</w>\": 36309,\n  \"rag\": 13958,\n  \"rag</w>\": 20687,\n  \"rage</w>\": 8593,\n  \"rages</w>\": 34253,\n  \"ragh\": 35642,\n  \"ragha\": 40972,\n  \"raging</w>\": 25015,\n  \"ragn\": 24125,\n  \"ragnar\": 34385,\n  \"ragnarok</w>\": 41856,\n  \"ragon</w>\": 34768,\n  \"rags</w>\": 47838,\n  \"rah\": 12277,\n  \"rah</w>\": 8766,\n  \"raheem</w>\": 43317,\n  \"rahim</w>\": 24152,\n  \"rahman</w>\": 19680,\n  \"rahu\": 13129,\n  \"rahul\": 37239,\n  \"rahul</w>\": 17440,\n  \"rahulg\": 27510,\n  \"rahulgandhi</w>\": 28293,\n  \"rai\": 9165,\n  \"rai</w>\": 9638,\n  \"raid</w>\": 6877,\n  \"raided</w>\": 43417,\n  \"raider\": 27368,\n  \"raider</w>\": 21455,\n  \"raidernation</w>\": 47901,\n  \"raiders</w>\": 11817,\n  \"raids</w>\": 26655,\n  \"rail\": 4573,\n  \"rail</w>\": 6879,\n  \"raila</w>\": 47273,\n  \"railminindia</w>\": 35557,\n  \"railroad</w>\": 17080,\n  \"rails</w>\": 23427,\n  \"railway\": 27614,\n  \"railway</w>\": 7856,\n  \"railwayana</w>\": 46750,\n  \"railways</w>\": 20765,\n  \"raim\": 45785,\n  \"rain\": 3128,\n  \"rain</w>\": 2443,\n  \"raina</w>\": 30564,\n  \"rainbow\": 24562,\n  \"rainbow</w>\": 6286,\n  \"rainbows</w>\": 30483,\n  \"raine\": 49038,\n  \"raine</w>\": 6871,\n  \"rained</w>\": 32310,\n  \"rainf\": 15024,\n  \"rainfall</w>\": 15350,\n  \"rainforest</w>\": 22823,\n  \"rainier</w>\": 37850,\n  \"raining</w>\": 13964,\n  \"rains</w>\": 14272,\n  \"rainy</w>\": 10222,\n  \"rais\": 14729,\n  \"raise\": 24249,\n  \"raise</w>\": 5078,\n  \"raised</w>\": 6027,\n  \"raiser</w>\": 33555,\n  \"raises</w>\": 13297,\n  \"raisethe\": 47109,\n  \"raisin</w>\": 36864,\n  \"raising</w>\": 6883,\n  \"raj\": 5958,\n  \"raj</w>\": 10813,\n  \"raja\": 46069,\n  \"raja</w>\": 19150,\n  \"rajan</w>\": 46595,\n  \"rajas\": 16185,\n  \"rajasthan</w>\": 18017,\n  \"raje\": 21899,\n  \"rajesh</w>\": 43602,\n  \"raji\": 27569,\n  \"rajini\": 29600,\n  \"rajini</w>\": 40622,\n  \"rajinikanth</w>\": 32922,\n  \"rajiv</w>\": 40197,\n  \"rajkumar</w>\": 49304,\n  \"rajput</w>\": 47572,\n  \"raju</w>\": 47029,\n  \"rak\": 13523,\n  \"rak</w>\": 26287,\n  \"rake\": 26825,\n  \"rake</w>\": 32712,\n  \"rakesh</w>\": 41083,\n  \"ral\": 8062,\n  \"ral</w>\": 1406,\n  \"rale\": 14192,\n  \"raleigh</w>\": 18207,\n  \"rall\": 23249,\n  \"rallies</w>\": 25230,\n  \"rally\": 18882,\n  \"rally</w>\": 5041,\n  \"rallying</w>\": 36836,\n  \"ralph\": 25290,\n  \"ralph</w>\": 12234,\n  \"ram\": 1976,\n  \"ram</w>\": 2007,\n  \"rama</w>\": 22112,\n  \"ramad\": 12736,\n  \"ramadan</w>\": 15547,\n  \"ramadhan</w>\": 47415,\n  \"raman</w>\": 39816,\n  \"ramapho\": 43963,\n  \"ramaphosa</w>\": 44993,\n  \"ramatta</w>\": 49112,\n  \"rambo</w>\": 41855,\n  \"ramcharan</w>\": 45275,\n  \"rame</w>\": 47745,\n  \"ramen</w>\": 18892,\n  \"ramesh\": 48640,\n  \"ramesh</w>\": 40186,\n  \"rami</w>\": 43016,\n  \"ramirez</w>\": 23877,\n  \"ramon</w>\": 27958,\n  \"ramone</w>\": 47201,\n  \"ramos</w>\": 21046,\n  \"ramp</w>\": 14271,\n  \"rampage</w>\": 32077,\n  \"rampant</w>\": 41985,\n  \"ramps</w>\": 35257,\n  \"rams</w>\": 10292,\n  \"ramsay</w>\": 26259,\n  \"ramsey</w>\": 19215,\n  \"ran\": 1433,\n  \"ran</w>\": 4031,\n  \"rana</w>\": 22143,\n  \"ranbir</w>\": 40881,\n  \"rance</w>\": 29034,\n  \"ranch\": 43955,\n  \"ranch</w>\": 10659,\n  \"rancho</w>\": 26258,\n  \"rand\": 5628,\n  \"rand</w>\": 18718,\n  \"randall</w>\": 23639,\n  \"rande</w>\": 21469,\n  \"randolph</w>\": 29899,\n  \"random\": 11396,\n  \"random</w>\": 6160,\n  \"randomly</w>\": 17272,\n  \"rands</w>\": 39153,\n  \"randy\": 29479,\n  \"randy</w>\": 13279,\n  \"rane</w>\": 28852,\n  \"rang\": 4043,\n  \"rang</w>\": 24377,\n  \"range\": 13627,\n  \"range</w>\": 3818,\n  \"ranger\": 31472,\n  \"ranger</w>\": 13593,\n  \"rangers</w>\": 7664,\n  \"ranges</w>\": 25685,\n  \"ranging</w>\": 25946,\n  \"rani\": 29264,\n  \"rani</w>\": 22631,\n  \"rank</w>\": 11501,\n  \"ranked</w>\": 8307,\n  \"rankin</w>\": 37539,\n  \"ranking</w>\": 12347,\n  \"rankings</w>\": 12596,\n  \"ranks</w>\": 14469,\n  \"rano</w>\": 18608,\n  \"rans</w>\": 46259,\n  \"ransom\": 28523,\n  \"ransom</w>\": 34646,\n  \"ransomware</w>\": 33815,\n  \"rant\": 46467,\n  \"rant</w>\": 9819,\n  \"rants</w>\": 34014,\n  \"ranveer\": 32402,\n  \"ranveer</w>\": 41482,\n  \"ranveerofficial</w>\": 42116,\n  \"rao</w>\": 16913,\n  \"rap\": 7773,\n  \"rap</w>\": 7348,\n  \"rape\": 46099,\n  \"rape</w>\": 10070,\n  \"raped</w>\": 23700,\n  \"rapha\": 22754,\n  \"raphael</w>\": 30091,\n  \"rapi\": 8610,\n  \"rapid\": 47697,\n  \"rapid</w>\": 12205,\n  \"rapidly</w>\": 16710,\n  \"rapids</w>\": 18848,\n  \"raping</w>\": 44926,\n  \"rapist</w>\": 33360,\n  \"rapp\": 19283,\n  \"rapper</w>\": 11860,\n  \"rappers</w>\": 30315,\n  \"rapping</w>\": 42864,\n  \"raps</w>\": 37887,\n  \"raptor</w>\": 26762,\n  \"raptors</w>\": 17035,\n  \"raq\": 39787,\n  \"raq</w>\": 43312,\n  \"raqqa</w>\": 47074,\n  \"raquel</w>\": 44338,\n  \"rar\": 26819,\n  \"rar</w>\": 24605,\n  \"rard</w>\": 21012,\n  \"rare\": 18992,\n  \"rare</w>\": 3865,\n  \"rarely</w>\": 17315,\n  \"rarest</w>\": 43237,\n  \"rarity</w>\": 45862,\n  \"ras\": 23492,\n  \"ras</w>\": 8224,\n  \"rasc\": 30085,\n  \"rascal</w>\": 43481,\n  \"rash\": 14917,\n  \"rash</w>\": 30608,\n  \"rashad</w>\": 46527,\n  \"rasheed</w>\": 41638,\n  \"rashi\": 19426,\n  \"rashid</w>\": 26757,\n  \"rasp\": 10487,\n  \"raspberries</w>\": 37742,\n  \"raspberry\": 40162,\n  \"raspberry</w>\": 13615,\n  \"raspberrypi</w>\": 43934,\n  \"rass</w>\": 45654,\n  \"rasta</w>\": 47002,\n  \"rat\": 3806,\n  \"rat</w>\": 8985,\n  \"rata</w>\": 28568,\n  \"ratchet</w>\": 25078,\n  \"rate</w>\": 5068,\n  \"rated</w>\": 8183,\n  \"rates</w>\": 6864,\n  \"rath\": 18268,\n  \"rath</w>\": 39772,\n  \"rather</w>\": 5252,\n  \"rati\": 11486,\n  \"rating</w>\": 10567,\n  \"ratings</w>\": 14176,\n  \"ratio</w>\": 15893,\n  \"ration\": 27002,\n  \"ration</w>\": 35662,\n  \"rational</w>\": 33086,\n  \"ratna</w>\": 49078,\n  \"ratri</w>\": 32288,\n  \"rats</w>\": 19043,\n  \"ratt\": 20737,\n  \"ratt</w>\": 34785,\n  \"rattle\": 40824,\n  \"rattle</w>\": 41839,\n  \"rau\": 27744,\n  \"raul</w>\": 30218,\n  \"raun\": 41169,\n  \"rav\": 14367,\n  \"rav</w>\": 23606,\n  \"rave\": 38784,\n  \"rave</w>\": 17601,\n  \"ravel</w>\": 27927,\n  \"raven\": 10269,\n  \"raven</w>\": 16803,\n  \"ravens</w>\": 17946,\n  \"ravi\": 22947,\n  \"ravi</w>\": 19538,\n  \"ravin\": 39099,\n  \"raving</w>\": 45807,\n  \"raviol\": 41104,\n  \"ravioli</w>\": 43460,\n  \"raw\": 10166,\n  \"raw</w>\": 6323,\n  \"rawlings</w>\": 40662,\n  \"rax</w>\": 38520,\n  \"ray\": 5312,\n  \"ray</w>\": 3077,\n  \"raya</w>\": 29991,\n  \"raymond</w>\": 16683,\n  \"rayn\": 47852,\n  \"rayon</w>\": 47900,\n  \"rays</w>\": 11064,\n  \"raz\": 9700,\n  \"raz</w>\": 19087,\n  \"raza</w>\": 37724,\n  \"razer</w>\": 33832,\n  \"razor\": 24934,\n  \"razor</w>\": 21300,\n  \"razz\": 43769,\n  \"rb\": 12740,\n  \"rb</w>\": 7477,\n  \"rbc</w>\": 37500,\n  \"rbi</w>\": 15687,\n  \"rbs</w>\": 29102,\n  \"rc\": 7575,\n  \"rc</w>\": 7457,\n  \"rca</w>\": 33942,\n  \"rcb</w>\": 45240,\n  \"rcmp</w>\": 31489,\n  \"rcn</w>\": 49370,\n  \"rctid</w>\": 49223,\n  \"rd\": 13501,\n  \"rd</w>\": 1973,\n  \"rda</w>\": 45755,\n  \"rdr</w>\": 44364,\n  \"rds</w>\": 32378,\n  \"re\": 515,\n  \"re</w>\": 810,\n  \"rea</w>\": 11521,\n  \"reach\": 4483,\n  \"reach</w>\": 4279,\n  \"reached</w>\": 6878,\n  \"reaches</w>\": 14462,\n  \"reaching</w>\": 11358,\n  \"react\": 36566,\n  \"react</w>\": 15065,\n  \"reacted</w>\": 42515,\n  \"reacting</w>\": 40595,\n  \"reaction</w>\": 7189,\n  \"reactions</w>\": 18438,\n  \"reactive</w>\": 42072,\n  \"reactjs</w>\": 46173,\n  \"reactor</w>\": 32037,\n  \"reacts</w>\": 23115,\n  \"read\": 933,\n  \"read</w>\": 1199,\n  \"reader</w>\": 9884,\n  \"readers</w>\": 10335,\n  \"readiness</w>\": 28131,\n  \"reading\": 17556,\n  \"reading</w>\": 2337,\n  \"readingfc</w>\": 47428,\n  \"readings</w>\": 23361,\n  \"reads</w>\": 6597,\n  \"ready\": 17351,\n  \"ready</w>\": 1112,\n  \"reagan</w>\": 17767,\n  \"real\": 2017,\n  \"real</w>\": 1532,\n  \"realdonaldtrump</w>\": 7025,\n  \"reale\": 5930,\n  \"realest</w>\": 45855,\n  \"realestate\": 32937,\n  \"realestate</w>\": 6569,\n  \"reali\": 4185,\n  \"realis</w>\": 38114,\n  \"realise</w>\": 14773,\n  \"realised</w>\": 17945,\n  \"realising</w>\": 39537,\n  \"realism</w>\": 20024,\n  \"realist</w>\": 30248,\n  \"realistic</w>\": 16157,\n  \"realities</w>\": 32443,\n  \"reality\": 46802,\n  \"reality</w>\": 5004,\n  \"realization</w>\": 40402,\n  \"realize</w>\": 7538,\n  \"realized</w>\": 10489,\n  \"realizes</w>\": 42918,\n  \"realizing</w>\": 23284,\n  \"reall\": 39686,\n  \"really\": 43249,\n  \"really</w>\": 1414,\n  \"realm</w>\": 23083,\n  \"realmadrid</w>\": 27866,\n  \"realms</w>\": 43033,\n  \"realness</w>\": 46761,\n  \"realtime\": 44002,\n  \"realtime</w>\": 38203,\n  \"realtor</w>\": 18038,\n  \"realtors</w>\": 31759,\n  \"realty</w>\": 20471,\n  \"ream\": 37242,\n  \"ream</w>\": 15219,\n  \"rean</w>\": 48477,\n  \"reap</w>\": 31334,\n  \"reaper</w>\": 29922,\n  \"rear\": 39652,\n  \"rear</w>\": 10223,\n  \"reas\": 9121,\n  \"reason\": 12882,\n  \"reason</w>\": 3893,\n  \"reasonable</w>\": 18558,\n  \"reasonably</w>\": 38589,\n  \"reasoning</w>\": 30341,\n  \"reasons</w>\": 5686,\n  \"reau</w>\": 32398,\n  \"reb\": 12370,\n  \"reb</w>\": 18796,\n  \"reba</w>\": 48543,\n  \"rebate</w>\": 43817,\n  \"rebe\": 25227,\n  \"rebec\": 10774,\n  \"rebecca</w>\": 12892,\n  \"rebel\": 8185,\n  \"rebel</w>\": 12248,\n  \"rebellion</w>\": 22170,\n  \"rebels</w>\": 13623,\n  \"rebirth</w>\": 33303,\n  \"reboot</w>\": 22385,\n  \"reborn</w>\": 30229,\n  \"reboun\": 43381,\n  \"rebound</w>\": 31280,\n  \"rebounds</w>\": 19190,\n  \"rebs</w>\": 28164,\n  \"rebu\": 43162,\n  \"rebuild</w>\": 20022,\n  \"rebuilding</w>\": 30880,\n  \"rebuilt</w>\": 33137,\n  \"rec\": 1020,\n  \"rec</w>\": 11243,\n  \"recall</w>\": 15151,\n  \"recalled</w>\": 32142,\n  \"recalling</w>\": 47855,\n  \"recalls</w>\": 24740,\n  \"recap\": 29816,\n  \"recap</w>\": 8337,\n  \"recaps</w>\": 47997,\n  \"recard</w>\": 35536,\n  \"rece\": 1890,\n  \"recei\": 2148,\n  \"receip\": 38503,\n  \"receipt</w>\": 30479,\n  \"receipts</w>\": 41181,\n  \"receive</w>\": 4800,\n  \"received</w>\": 4178,\n  \"receiver</w>\": 17659,\n  \"receivers</w>\": 45294,\n  \"receives</w>\": 10027,\n  \"receiving</w>\": 7252,\n  \"recent</w>\": 3969,\n  \"recently</w>\": 4482,\n  \"recep\": 17450,\n  \"reception</w>\": 8364,\n  \"receptions</w>\": 46881,\n  \"receptor</w>\": 41835,\n  \"recess</w>\": 38182,\n  \"recession</w>\": 27176,\n  \"recharge</w>\": 29396,\n  \"rechargeable</w>\": 37516,\n  \"reci\": 2037,\n  \"recipe\": 28923,\n  \"recipe</w>\": 4614,\n  \"recipeoftheday</w>\": 38727,\n  \"recipes</w>\": 9243,\n  \"recipi\": 10136,\n  \"recipient</w>\": 13703,\n  \"recipients</w>\": 18940,\n  \"recipro\": 41789,\n  \"recital</w>\": 23457,\n  \"recite</w>\": 48824,\n  \"reck\": 11715,\n  \"reckless</w>\": 26284,\n  \"reckon</w>\": 23854,\n  \"recl\": 42277,\n  \"reclaim</w>\": 35969,\n  \"reclaimed</w>\": 32648,\n  \"reco\": 2535,\n  \"reco</w>\": 46038,\n  \"recogn\": 6343,\n  \"recogni\": 5329,\n  \"recognise</w>\": 19824,\n  \"recognised</w>\": 20986,\n  \"recognising</w>\": 48423,\n  \"recognition</w>\": 9415,\n  \"recognizable</w>\": 47240,\n  \"recognize</w>\": 10905,\n  \"recognized</w>\": 9929,\n  \"recognizes</w>\": 26909,\n  \"recognizing</w>\": 19666,\n  \"recomm\": 4540,\n  \"recommend\": 11628,\n  \"recommend</w>\": 8942,\n  \"recommendation</w>\": 20118,\n  \"recommendations</w>\": 16516,\n  \"recommended</w>\": 11100,\n  \"recommending</w>\": 44301,\n  \"recommends</w>\": 22940,\n  \"recon\": 15371,\n  \"recon</w>\": 28996,\n  \"reconciliation</w>\": 26451,\n  \"reconstruction</w>\": 24955,\n  \"recor\": 1723,\n  \"record\": 21328,\n  \"record</w>\": 2717,\n  \"recorded</w>\": 9392,\n  \"recorder</w>\": 26747,\n  \"recording\": 48237,\n  \"recording</w>\": 6942,\n  \"recordings</w>\": 19715,\n  \"records</w>\": 4529,\n  \"recover</w>\": 16785,\n  \"recovered</w>\": 16444,\n  \"recovering</w>\": 19005,\n  \"recovers</w>\": 47935,\n  \"recovery</w>\": 6591,\n  \"recre\": 22148,\n  \"recreate</w>\": 29775,\n  \"recreated</w>\": 40888,\n  \"recreating</w>\": 48224,\n  \"recreation</w>\": 17331,\n  \"recreational</w>\": 24329,\n  \"recru\": 4745,\n  \"recruit\": 9011,\n  \"recruit</w>\": 15585,\n  \"recruited</w>\": 36518,\n  \"recruiter</w>\": 43120,\n  \"recruiters</w>\": 46542,\n  \"recruiting</w>\": 10533,\n  \"recruitment</w>\": 10541,\n  \"recruits</w>\": 22647,\n  \"recs</w>\": 33069,\n  \"rectan\": 43041,\n  \"rectangular</w>\": 43321,\n  \"rector</w>\": 41585,\n  \"recu\": 26798,\n  \"recur\": 19983,\n  \"recurring</w>\": 35912,\n  \"recy\": 6790,\n  \"recycla\": 40659,\n  \"recyclable</w>\": 48907,\n  \"recycle</w>\": 19366,\n  \"recycled</w>\": 16829,\n  \"recycling</w>\": 12566,\n  \"red\": 1893,\n  \"red</w>\": 736,\n  \"redbubble</w>\": 46137,\n  \"redbull\": 29483,\n  \"redbull</w>\": 29219,\n  \"redcarpet</w>\": 32259,\n  \"redcross</w>\": 30659,\n  \"redd\": 22149,\n  \"redd</w>\": 40618,\n  \"redding</w>\": 41061,\n  \"reddish</w>\": 43383,\n  \"reddit</w>\": 15226,\n  \"reddy</w>\": 23028,\n  \"rede\": 10913,\n  \"redeem</w>\": 37449,\n  \"redefining</w>\": 46352,\n  \"redemption</w>\": 20233,\n  \"redesign</w>\": 24188,\n  \"redesigned</w>\": 33111,\n  \"redevelopment</w>\": 30322,\n  \"redhead</w>\": 36267,\n  \"redi\": 7976,\n  \"redman</w>\": 44753,\n  \"redmond</w>\": 39627,\n  \"rednation\": 28180,\n  \"rednationrising</w>\": 28262,\n  \"redneck</w>\": 39105,\n  \"redness</w>\": 22626,\n  \"redo</w>\": 42524,\n  \"redon\": 48506,\n  \"redro\": 37722,\n  \"reds</w>\": 11221,\n  \"redskins</w>\": 19023,\n  \"redsox</w>\": 19144,\n  \"reduc\": 5015,\n  \"reduce</w>\": 6604,\n  \"reduced</w>\": 10821,\n  \"reduces</w>\": 20539,\n  \"reducing</w>\": 13836,\n  \"reduction</w>\": 12219,\n  \"reductions</w>\": 48263,\n  \"redux</w>\": 43014,\n  \"redvelvet</w>\": 41845,\n  \"redwings</w>\": 31058,\n  \"redwood</w>\": 31748,\n  \"ree\": 9282,\n  \"ree</w>\": 5813,\n  \"reebok</w>\": 26734,\n  \"reece</w>\": 30457,\n  \"reed\": 26209,\n  \"reed</w>\": 10435,\n  \"reedus</w>\": 32865,\n  \"reef\": 46557,\n  \"reef</w>\": 15624,\n  \"reefs</w>\": 34459,\n  \"reel\": 34467,\n  \"reel</w>\": 17166,\n  \"reels</w>\": 48127,\n  \"reem</w>\": 48891,\n  \"reen\": 21638,\n  \"reen</w>\": 23679,\n  \"rees</w>\": 18314,\n  \"reese</w>\": 20929,\n  \"reeves</w>\": 23060,\n  \"ref\": 4067,\n  \"ref</w>\": 9591,\n  \"refe\": 5624,\n  \"refer\": 18425,\n  \"refer</w>\": 22325,\n  \"referee</w>\": 20398,\n  \"referees</w>\": 45583,\n  \"referen\": 13535,\n  \"reference</w>\": 10214,\n  \"references</w>\": 24009,\n  \"referendum</w>\": 16732,\n  \"referr\": 47784,\n  \"referral</w>\": 30219,\n  \"referred</w>\": 22969,\n  \"referring</w>\": 29797,\n  \"refers</w>\": 30069,\n  \"refill</w>\": 37859,\n  \"refin\": 13455,\n  \"refined</w>\": 26098,\n  \"refinery</w>\": 31393,\n  \"refining</w>\": 48406,\n  \"reflec\": 4608,\n  \"reflect</w>\": 13373,\n  \"reflected</w>\": 28732,\n  \"reflecting</w>\": 19700,\n  \"reflection</w>\": 11884,\n  \"reflections</w>\": 16647,\n  \"reflective</w>\": 27008,\n  \"reflects</w>\": 15821,\n  \"reflex\": 45756,\n  \"reflex</w>\": 36050,\n  \"reform\": 45678,\n  \"reform</w>\": 8875,\n  \"reformation</w>\": 45119,\n  \"reformed</w>\": 40880,\n  \"reforms</w>\": 19274,\n  \"refr\": 34850,\n  \"refre\": 11995,\n  \"refresh\": 17836,\n  \"refresh</w>\": 23288,\n  \"refreshed</w>\": 35925,\n  \"refresher</w>\": 41481,\n  \"refreshing</w>\": 14159,\n  \"refreshments</w>\": 31127,\n  \"refriger\": 21076,\n  \"refrigerator</w>\": 36662,\n  \"refs</w>\": 35595,\n  \"refu\": 3545,\n  \"refuge\": 5638,\n  \"refuge</w>\": 17432,\n  \"refugee</w>\": 11556,\n  \"refugees\": 42687,\n  \"refugees</w>\": 8316,\n  \"refund</w>\": 28899,\n  \"refur\": 15519,\n  \"refurbi\": 18259,\n  \"refurbished</w>\": 26190,\n  \"refurbishment</w>\": 35803,\n  \"refusal</w>\": 46547,\n  \"refuse</w>\": 16412,\n  \"refused</w>\": 17190,\n  \"refuses</w>\": 20085,\n  \"refusing</w>\": 26704,\n  \"reg\": 5472,\n  \"reg</w>\": 12353,\n  \"regain</w>\": 37510,\n  \"regal\": 31512,\n  \"regal</w>\": 25028,\n  \"regan</w>\": 34062,\n  \"regar\": 5881,\n  \"regard</w>\": 21801,\n  \"regarded</w>\": 32017,\n  \"regarding</w>\": 8493,\n  \"regardless</w>\": 17220,\n  \"regards</w>\": 23079,\n  \"regatta</w>\": 26316,\n  \"regen\": 46545,\n  \"regency</w>\": 29341,\n  \"regeneration</w>\": 29257,\n  \"regent</w>\": 30455,\n  \"regents</w>\": 46710,\n  \"regg\": 12757,\n  \"reggae\": 37821,\n  \"reggae</w>\": 15214,\n  \"reggie</w>\": 21872,\n  \"regi\": 1608,\n  \"regime</w>\": 11378,\n  \"regiment</w>\": 18603,\n  \"regin\": 23287,\n  \"regina</w>\": 16841,\n  \"region\": 16542,\n  \"region</w>\": 4341,\n  \"regional</w>\": 5552,\n  \"regionals</w>\": 26043,\n  \"regions</w>\": 14530,\n  \"regis</w>\": 28094,\n  \"register</w>\": 3967,\n  \"registered</w>\": 10254,\n  \"registering</w>\": 33510,\n  \"registr\": 29193,\n  \"registration</w>\": 7302,\n  \"registrations</w>\": 38423,\n  \"registry</w>\": 30020,\n  \"rego</w>\": 47351,\n  \"regram</w>\": 30329,\n  \"regrann</w>\": 48802,\n  \"regre\": 8627,\n  \"regression</w>\": 43733,\n  \"regret</w>\": 14374,\n  \"regrets</w>\": 23231,\n  \"regu\": 3411,\n  \"regui</w>\": 46722,\n  \"regul\": 11847,\n  \"regular\": 14882,\n  \"regular</w>\": 6307,\n  \"regularly</w>\": 17263,\n  \"regulat\": 14575,\n  \"regulate</w>\": 33494,\n  \"regulated</w>\": 31384,\n  \"regulating</w>\": 48156,\n  \"regulation</w>\": 14267,\n  \"regulations</w>\": 16654,\n  \"regulator</w>\": 30364,\n  \"regulators</w>\": 35837,\n  \"regulatory</w>\": 17717,\n  \"reh\": 21492,\n  \"reha\": 10193,\n  \"rehab</w>\": 16973,\n  \"rehabil\": 17930,\n  \"rehabilitation</w>\": 21042,\n  \"rehear\": 7273,\n  \"rehearsal</w>\": 11482,\n  \"rehearsals</w>\": 17977,\n  \"rehearsing</w>\": 23125,\n  \"rehman</w>\": 39206,\n  \"rei\": 15343,\n  \"rei</w>\": 26033,\n  \"reic\": 41230,\n  \"reich\": 48589,\n  \"reich</w>\": 28929,\n  \"reid\": 45125,\n  \"reid</w>\": 11744,\n  \"reig\": 13092,\n  \"reign\": 41419,\n  \"reign</w>\": 14827,\n  \"reigning</w>\": 28409,\n  \"reigns</w>\": 21217,\n  \"reiki</w>\": 46960,\n  \"reilly</w>\": 28120,\n  \"reim\": 35421,\n  \"reimagined</w>\": 46799,\n  \"reimbur\": 39857,\n  \"rein\": 9240,\n  \"rein</w>\": 45009,\n  \"reina</w>\": 43847,\n  \"reinde\": 23810,\n  \"reindeer</w>\": 25072,\n  \"reinfor\": 48161,\n  \"reinforced</w>\": 41909,\n  \"reinst\": 33969,\n  \"reinvent</w>\": 38171,\n  \"reissue</w>\": 34042,\n  \"reiter\": 35394,\n  \"rejec\": 9958,\n  \"reject</w>\": 22435,\n  \"rejected</w>\": 17505,\n  \"rejection</w>\": 32264,\n  \"rejects</w>\": 23155,\n  \"rejo\": 20150,\n  \"rejoice</w>\": 24712,\n  \"rejuven\": 26332,\n  \"rek\": 47542,\n  \"rek</w>\": 19201,\n  \"rel\": 1825,\n  \"rel</w>\": 5233,\n  \"rela\": 4362,\n  \"reland</w>\": 15220,\n  \"relat\": 27192,\n  \"relatable</w>\": 31010,\n  \"relate</w>\": 17520,\n  \"related</w>\": 5880,\n  \"relates</w>\": 36064,\n  \"relating</w>\": 27373,\n  \"relation\": 4561,\n  \"relation</w>\": 16207,\n  \"relations</w>\": 10100,\n  \"relationship\": 47239,\n  \"relationship</w>\": 5837,\n  \"relationships</w>\": 10610,\n  \"relative</w>\": 17265,\n  \"relatively</w>\": 18351,\n  \"relatives</w>\": 21981,\n  \"relax\": 6777,\n  \"relax</w>\": 9035,\n  \"relaxation</w>\": 22194,\n  \"relaxed</w>\": 18999,\n  \"relaxing</w>\": 10256,\n  \"relay</w>\": 12403,\n  \"relays</w>\": 28404,\n  \"rele\": 1602,\n  \"release\": 29100,\n  \"release</w>\": 2706,\n  \"released</w>\": 3410,\n  \"releases</w>\": 7393,\n  \"releasethe\": 44008,\n  \"releasing</w>\": 10321,\n  \"releg\": 23378,\n  \"relegated</w>\": 45884,\n  \"relegation</w>\": 35040,\n  \"relent\": 22213,\n  \"relentless</w>\": 27207,\n  \"relessly</w>\": 33927,\n  \"relev\": 9349,\n  \"relevance</w>\": 31400,\n  \"relevant</w>\": 10568,\n  \"reli\": 2674,\n  \"reliability</w>\": 27220,\n  \"reliable</w>\": 13714,\n  \"reliance</w>\": 27727,\n  \"relic</w>\": 27802,\n  \"relics</w>\": 43208,\n  \"relief</w>\": 7518,\n  \"relies</w>\": 41579,\n  \"relieve</w>\": 28623,\n  \"relieved</w>\": 36597,\n  \"religi\": 4940,\n  \"religion</w>\": 8803,\n  \"religions</w>\": 31189,\n  \"religious</w>\": 8289,\n  \"relish</w>\": 35550,\n  \"relive</w>\": 23939,\n  \"reliving</w>\": 47558,\n  \"rell\": 28802,\n  \"rell</w>\": 7127,\n  \"rella</w>\": 9952,\n  \"relle</w>\": 31390,\n  \"reloaded</w>\": 38908,\n  \"relocated</w>\": 46791,\n  \"relocation</w>\": 39198,\n  \"rels</w>\": 23320,\n  \"relu\": 32058,\n  \"reluct\": 32549,\n  \"reluctant</w>\": 45552,\n  \"rely</w>\": 4158,\n  \"relying</w>\": 42168,\n  \"rem\": 15098,\n  \"rem</w>\": 21637,\n  \"rema\": 4569,\n  \"remain\": 29144,\n  \"remain</w>\": 6415,\n  \"remainder</w>\": 41672,\n  \"remained</w>\": 23714,\n  \"remaining</w>\": 11392,\n  \"remains</w>\": 6807,\n  \"remake</w>\": 16234,\n  \"remark\": 11136,\n  \"remarkable</w>\": 12404,\n  \"remarkably</w>\": 39087,\n  \"remarks</w>\": 15001,\n  \"remastered</w>\": 24932,\n  \"rematch</w>\": 26473,\n  \"rembrandt</w>\": 45972,\n  \"reme\": 20071,\n  \"remedi\": 18442,\n  \"remedies</w>\": 25581,\n  \"remedy</w>\": 25794,\n  \"remem\": 7966,\n  \"rememb\": 7062,\n  \"remember\": 22045,\n  \"remember</w>\": 2195,\n  \"remembered</w>\": 11763,\n  \"remembering</w>\": 8135,\n  \"remembers</w>\": 12551,\n  \"remembrance\": 40321,\n  \"remembrance</w>\": 15860,\n  \"remembranceday</w>\": 48333,\n  \"rement</w>\": 7173,\n  \"rements</w>\": 12667,\n  \"remi</w>\": 41693,\n  \"remin\": 3216,\n  \"remind</w>\": 9868,\n  \"reminded</w>\": 12309,\n  \"reminder</w>\": 5565,\n  \"reminders</w>\": 34121,\n  \"reminding</w>\": 19976,\n  \"reminds</w>\": 8303,\n  \"remington</w>\": 43527,\n  \"reminis\": 17723,\n  \"reminiscent</w>\": 41704,\n  \"reminiscing</w>\": 32552,\n  \"remix</w>\": 8519,\n  \"remixes</w>\": 31011,\n  \"remn\": 29127,\n  \"remnants</w>\": 39032,\n  \"remo\": 4064,\n  \"remo</w>\": 33259,\n  \"remodel\": 34159,\n  \"remodel</w>\": 37495,\n  \"remodeling</w>\": 41432,\n  \"remote\": 47163,\n  \"remote</w>\": 9687,\n  \"remotely</w>\": 32375,\n  \"removable</w>\": 44095,\n  \"removal</w>\": 13679,\n  \"remove</w>\": 9709,\n  \"removed</w>\": 10289,\n  \"remover</w>\": 44267,\n  \"removes</w>\": 29018,\n  \"removing</w>\": 18504,\n  \"remy</w>\": 30434,\n  \"ren\": 737,\n  \"ren</w>\": 2596,\n  \"rena</w>\": 12591,\n  \"renais\": 15409,\n  \"renaissance</w>\": 16007,\n  \"renal</w>\": 36096,\n  \"renamed</w>\": 31535,\n  \"renault</w>\": 17600,\n  \"rence\": 19245,\n  \"rence</w>\": 1553,\n  \"rences</w>\": 8545,\n  \"rend\": 33932,\n  \"rend</w>\": 22851,\n  \"render\": 39752,\n  \"render</w>\": 13024,\n  \"rendered</w>\": 23652,\n  \"rendering</w>\": 21339,\n  \"renders</w>\": 39419,\n  \"rendez\": 43293,\n  \"rendezvous</w>\": 45644,\n  \"rendition</w>\": 28891,\n  \"rendon</w>\": 46272,\n  \"rendous</w>\": 49403,\n  \"rends</w>\": 38842,\n  \"rene\": 15438,\n  \"rene</w>\": 12597,\n  \"renee</w>\": 23480,\n  \"reneg\": 29909,\n  \"renegade</w>\": 41229,\n  \"renergy</w>\": 37151,\n  \"renew\": 6645,\n  \"renew</w>\": 22015,\n  \"renewable\": 31269,\n  \"renewable</w>\": 15941,\n  \"renewableenergy</w>\": 33357,\n  \"renewables</w>\": 21619,\n  \"renewal</w>\": 21270,\n  \"renewed</w>\": 20524,\n  \"renfre\": 45043,\n  \"reng</w>\": 36795,\n  \"reno\": 11520,\n  \"reno</w>\": 12831,\n  \"renov\": 9984,\n  \"renovated</w>\": 23839,\n  \"renovation</w>\": 17121,\n  \"renovations</w>\": 31311,\n  \"renowned</w>\": 14727,\n  \"rens</w>\": 18183,\n  \"renshaw</w>\": 44445,\n  \"rent\": 17377,\n  \"rent</w>\": 1609,\n  \"rental</w>\": 12193,\n  \"rentals</w>\": 24105,\n  \"rented</w>\": 35932,\n  \"rential</w>\": 31692,\n  \"renting</w>\": 37662,\n  \"rently</w>\": 2615,\n  \"rents</w>\": 31109,\n  \"reo\": 15963,\n  \"reo</w>\": 26854,\n  \"reon</w>\": 15761,\n  \"reopen</w>\": 26883,\n  \"reopened</w>\": 32868,\n  \"reopening</w>\": 36663,\n  \"reopens</w>\": 40644,\n  \"rep\": 4229,\n  \"rep</w>\": 6487,\n  \"repair</w>\": 8419,\n  \"repaired</w>\": 32953,\n  \"repairing</w>\": 38534,\n  \"repairs</w>\": 16297,\n  \"repar\": 34065,\n  \"repe\": 5785,\n  \"repeal\": 42622,\n  \"repeal</w>\": 23938,\n  \"repeat</w>\": 10192,\n  \"repeated</w>\": 27904,\n  \"repeatedly</w>\": 26630,\n  \"repeating</w>\": 33834,\n  \"repeats</w>\": 39158,\n  \"repell\": 46235,\n  \"repent\": 47261,\n  \"reper\": 29085,\n  \"repet\": 38533,\n  \"repl\": 13047,\n  \"replac\": 6069,\n  \"replace</w>\": 9466,\n  \"replaceable</w>\": 47762,\n  \"replaced</w>\": 13200,\n  \"replacement</w>\": 10835,\n  \"replaces</w>\": 27781,\n  \"replacing</w>\": 18647,\n  \"replay</w>\": 16875,\n  \"repleni\": 44839,\n  \"replic\": 21651,\n  \"replica</w>\": 18125,\n  \"replied</w>\": 24238,\n  \"replies</w>\": 18808,\n  \"reply</w>\": 8965,\n  \"replying</w>\": 47599,\n  \"repor\": 2628,\n  \"report</w>\": 2417,\n  \"reported</w>\": 7598,\n  \"reportedly</w>\": 10953,\n  \"reporter</w>\": 11019,\n  \"reporters</w>\": 18454,\n  \"reporting</w>\": 9218,\n  \"reports</w>\": 4908,\n  \"reposit\": 41276,\n  \"repository</w>\": 46977,\n  \"repost\": 33147,\n  \"repost</w>\": 7217,\n  \"repostapp</w>\": 38388,\n  \"reposting</w>\": 20223,\n  \"reppin</w>\": 19163,\n  \"repping</w>\": 22574,\n  \"repre\": 3397,\n  \"represent\": 8293,\n  \"represent</w>\": 8406,\n  \"representation</w>\": 13520,\n  \"representative</w>\": 13175,\n  \"representatives</w>\": 15591,\n  \"represented</w>\": 12299,\n  \"representing</w>\": 7561,\n  \"represents</w>\": 14433,\n  \"repri\": 31854,\n  \"reproduction</w>\": 35714,\n  \"reproductive</w>\": 25522,\n  \"reps</w>\": 14265,\n  \"reptile</w>\": 36938,\n  \"reptiles</w>\": 38679,\n  \"republic\": 6376,\n  \"republic</w>\": 7185,\n  \"republican</w>\": 9842,\n  \"republicans</w>\": 12384,\n  \"repur\": 41852,\n  \"req</w>\": 42411,\n  \"requ\": 10664,\n  \"reque\": 9539,\n  \"request</w>\": 7813,\n  \"requested</w>\": 16199,\n  \"requesting</w>\": 33245,\n  \"requests</w>\": 17087,\n  \"requi\": 4863,\n  \"requiem</w>\": 40316,\n  \"require</w>\": 14437,\n  \"required</w>\": 8500,\n  \"requirement</w>\": 27146,\n  \"requirements</w>\": 12860,\n  \"requires</w>\": 13396,\n  \"requiring</w>\": 33425,\n  \"requis\": 42602,\n  \"rer\": 41295,\n  \"rer</w>\": 3407,\n  \"rera</w>\": 14301,\n  \"rero</w>\": 21860,\n  \"rers</w>\": 18869,\n  \"res\": 4466,\n  \"res</w>\": 934,\n  \"resc\": 3956,\n  \"rescheduled</w>\": 43553,\n  \"rescu\": 8618,\n  \"rescue\": 28567,\n  \"rescue</w>\": 5718,\n  \"rescued</w>\": 11919,\n  \"rescues</w>\": 32439,\n  \"rescuing</w>\": 43770,\n  \"rese\": 13000,\n  \"resear\": 6090,\n  \"research\": 25694,\n  \"research</w>\": 2379,\n  \"researched</w>\": 42733,\n  \"researcher</w>\": 18334,\n  \"researchers</w>\": 9522,\n  \"researching</w>\": 24544,\n  \"reseller</w>\": 35391,\n  \"resemb\": 16916,\n  \"resemblance</w>\": 26856,\n  \"resemble</w>\": 37230,\n  \"resembles</w>\": 35417,\n  \"reser\": 16420,\n  \"reserv\": 11906,\n  \"reservation</w>\": 20289,\n  \"reservations</w>\": 19307,\n  \"reserve</w>\": 6911,\n  \"reserved</w>\": 19796,\n  \"reserves</w>\": 19705,\n  \"reservoir</w>\": 20574,\n  \"reset</w>\": 26250,\n  \"resh</w>\": 47432,\n  \"reshi</w>\": 39435,\n  \"resi\": 2152,\n  \"residen\": 22311,\n  \"residence</w>\": 11672,\n  \"residences</w>\": 38855,\n  \"residency</w>\": 18545,\n  \"resident</w>\": 9016,\n  \"residente\": 44637,\n  \"residentevil</w>\": 48393,\n  \"residential</w>\": 11002,\n  \"residents</w>\": 6008,\n  \"resign</w>\": 23584,\n  \"resignation</w>\": 24779,\n  \"resigned</w>\": 31014,\n  \"resigns</w>\": 29738,\n  \"resil\": 10932,\n  \"resili\": 39212,\n  \"resilience</w>\": 15271,\n  \"resilient</w>\": 24694,\n  \"resin</w>\": 24156,\n  \"resist\": 37345,\n  \"resist</w>\": 9587,\n  \"resistance</w>\": 7392,\n  \"resistant</w>\": 17542,\n  \"resisting</w>\": 43679,\n  \"resolution</w>\": 9977,\n  \"resolutions</w>\": 26816,\n  \"resolve</w>\": 20787,\n  \"resolved</w>\": 28807,\n  \"reson\": 18092,\n  \"resonance</w>\": 42310,\n  \"resort</w>\": 6594,\n  \"resorts</w>\": 18839,\n  \"resource\": 43729,\n  \"resource</w>\": 9760,\n  \"resources</w>\": 6723,\n  \"respec\": 7466,\n  \"respect\": 31411,\n  \"respect</w>\": 4916,\n  \"respected</w>\": 19126,\n  \"respectful</w>\": 24379,\n  \"respecting</w>\": 36172,\n  \"respective</w>\": 25817,\n  \"respectively</w>\": 28794,\n  \"respects</w>\": 23553,\n  \"respir\": 20771,\n  \"respiratory</w>\": 24483,\n  \"respon\": 2421,\n  \"respond</w>\": 12355,\n  \"responded</w>\": 21121,\n  \"respondents</w>\": 49253,\n  \"responders</w>\": 25155,\n  \"responding</w>\": 18037,\n  \"responds</w>\": 17436,\n  \"response</w>\": 5399,\n  \"responses</w>\": 19006,\n  \"responsi\": 5490,\n  \"responsibilities</w>\": 30375,\n  \"responsibility</w>\": 11272,\n  \"responsible</w>\": 8936,\n  \"responsibly</w>\": 33675,\n  \"responsive</w>\": 21544,\n  \"ress\": 34651,\n  \"ress</w>\": 13629,\n  \"resso</w>\": 15133,\n  \"rest\": 10974,\n  \"rest</w>\": 2539,\n  \"restart</w>\": 37378,\n  \"restaur\": 3775,\n  \"restaurant\": 41930,\n  \"restaurant</w>\": 4489,\n  \"restaurants</w>\": 11714,\n  \"rested</w>\": 46020,\n  \"resting</w>\": 18044,\n  \"restless</w>\": 36724,\n  \"restling</w>\": 30076,\n  \"resto\": 11118,\n  \"resto</w>\": 41666,\n  \"restock</w>\": 34060,\n  \"restocked</w>\": 36966,\n  \"restor\": 8984,\n  \"restoration</w>\": 11989,\n  \"restorative</w>\": 46509,\n  \"restore</w>\": 14008,\n  \"restored</w>\": 14238,\n  \"restoring</w>\": 24406,\n  \"restra\": 25424,\n  \"restric\": 11036,\n  \"restricted</w>\": 27197,\n  \"restriction</w>\": 44282,\n  \"restrictions</w>\": 19884,\n  \"restroom</w>\": 43423,\n  \"restructuring</w>\": 43260,\n  \"rests</w>\": 33775,\n  \"resu\": 10095,\n  \"resul\": 2655,\n  \"result</w>\": 5659,\n  \"resulted</w>\": 26449,\n  \"resulting</w>\": 24581,\n  \"results</w>\": 3790,\n  \"resume</w>\": 15077,\n  \"resumes</w>\": 30268,\n  \"resur\": 14865,\n  \"resurg\": 45962,\n  \"resurgence</w>\": 47692,\n  \"resurrec\": 18487,\n  \"resurrection</w>\": 25811,\n  \"resusc\": 47523,\n  \"ret\": 20500,\n  \"ret</w>\": 10048,\n  \"reta\": 20153,\n  \"retail\": 14910,\n  \"retail</w>\": 6455,\n  \"retailer</w>\": 22549,\n  \"retailers</w>\": 19418,\n  \"retain</w>\": 24430,\n  \"retained</w>\": 42737,\n  \"retaining</w>\": 35571,\n  \"retains</w>\": 42583,\n  \"retali\": 33101,\n  \"retar\": 29964,\n  \"retarded</w>\": 44111,\n  \"retention</w>\": 26247,\n  \"rethink</w>\": 29078,\n  \"rethinking</w>\": 42951,\n  \"reti\": 4721,\n  \"retin\": 31270,\n  \"retina</w>\": 36919,\n  \"retire</w>\": 18846,\n  \"retired</w>\": 11477,\n  \"retirement</w>\": 9205,\n  \"retires</w>\": 29060,\n  \"retiring</w>\": 21200,\n  \"retrac\": 32735,\n  \"retreat</w>\": 11210,\n  \"retri\": 16918,\n  \"retriever</w>\": 28394,\n  \"retro\": 6535,\n  \"retro</w>\": 7755,\n  \"retrogamer</w>\": 47220,\n  \"retrogaming</w>\": 11316,\n  \"retrospective</w>\": 27105,\n  \"rett\": 41082,\n  \"rett</w>\": 8425,\n  \"rette</w>\": 33066,\n  \"return\": 43042,\n  \"return</w>\": 3458,\n  \"returned</w>\": 10476,\n  \"returning</w>\": 9290,\n  \"returns</w>\": 5020,\n  \"retwee\": 48190,\n  \"retweet</w>\": 3195,\n  \"retweeted</w>\": 12705,\n  \"retweeting</w>\": 32345,\n  \"retweets</w>\": 10160,\n  \"rety</w>\": 41550,\n  \"reu\": 20255,\n  \"reu</w>\": 40371,\n  \"reuben</w>\": 40450,\n  \"reunion</w>\": 10247,\n  \"reunite</w>\": 26179,\n  \"reunited</w>\": 13516,\n  \"reusable</w>\": 30395,\n  \"reuse</w>\": 26535,\n  \"reut\": 15210,\n  \"reuters</w>\": 15569,\n  \"rev\": 8424,\n  \"rev</w>\": 11789,\n  \"revamp</w>\": 29819,\n  \"revamped</w>\": 36420,\n  \"revan</w>\": 45277,\n  \"reve\": 3115,\n  \"reveal</w>\": 8052,\n  \"revealed</w>\": 7171,\n  \"revealing</w>\": 21321,\n  \"reveals</w>\": 6621,\n  \"revel\": 14133,\n  \"revelation</w>\": 24053,\n  \"revelations</w>\": 36163,\n  \"reven\": 10171,\n  \"revenge</w>\": 12717,\n  \"revenue</w>\": 10637,\n  \"revenues</w>\": 33348,\n  \"rever\": 14829,\n  \"rever</w>\": 41913,\n  \"revere</w>\": 44187,\n  \"reverend</w>\": 34407,\n  \"revers\": 20726,\n  \"reversal</w>\": 33367,\n  \"reverse</w>\": 12812,\n  \"reversed</w>\": 42485,\n  \"reversi\": 31601,\n  \"reversible</w>\": 34212,\n  \"revi\": 8317,\n  \"review</w>\": 2268,\n  \"reviewed</w>\": 16678,\n  \"reviewer</w>\": 36409,\n  \"reviewers</w>\": 48195,\n  \"reviewing</w>\": 20458,\n  \"reviews</w>\": 7227,\n  \"revise</w>\": 46801,\n  \"revised</w>\": 22806,\n  \"revising</w>\": 46882,\n  \"revision</w>\": 20335,\n  \"revisit</w>\": 26568,\n  \"revisited</w>\": 34302,\n  \"revisiting</w>\": 33144,\n  \"revit\": 26367,\n  \"revitalization</w>\": 46923,\n  \"revival</w>\": 14142,\n  \"revive</w>\": 26450,\n  \"revived</w>\": 42912,\n  \"revo\": 28660,\n  \"revol\": 13447,\n  \"revolt</w>\": 31697,\n  \"revolu\": 4900,\n  \"revolution\": 17699,\n  \"revolution</w>\": 6644,\n  \"revolutionary</w>\": 14734,\n  \"revolver</w>\": 38747,\n  \"revolving</w>\": 47230,\n  \"revs</w>\": 49286,\n  \"revue</w>\": 43428,\n  \"rew</w>\": 37564,\n  \"rewar\": 15857,\n  \"reward</w>\": 11223,\n  \"rewarded</w>\": 27163,\n  \"rewarding</w>\": 23351,\n  \"rewards</w>\": 15235,\n  \"rewatch</w>\": 35610,\n  \"rewatching</w>\": 41287,\n  \"rewind</w>\": 26867,\n  \"rewrite</w>\": 45218,\n  \"rex\": 13002,\n  \"rex</w>\": 10904,\n  \"rexperience</w>\": 33924,\n  \"rey\": 9681,\n  \"rey</w>\": 4517,\n  \"reyes</w>\": 18255,\n  \"reykja\": 47571,\n  \"reyn\": 11998,\n  \"reynolds</w>\": 14309,\n  \"reys</w>\": 48284,\n  \"rez\": 27597,\n  \"rez</w>\": 15192,\n  \"reza</w>\": 35888,\n  \"rf\": 35529,\n  \"rf</w>\": 16368,\n  \"rfc</w>\": 19003,\n  \"rfid</w>\": 40204,\n  \"rg\": 33055,\n  \"rg</w>\": 14897,\n  \"rgb</w>\": 36128,\n  \"rgv</w>\": 33685,\n  \"rh\": 8745,\n  \"rh</w>\": 22404,\n  \"rha\": 19473,\n  \"rhapso\": 32532,\n  \"rhapsody</w>\": 35774,\n  \"rhe\": 9186,\n  \"rhea</w>\": 28612,\n  \"rhetor\": 24359,\n  \"rhetoric</w>\": 29985,\n  \"rhett</w>\": 42984,\n  \"rheu\": 42953,\n  \"rhi\": 21212,\n  \"rhin\": 12269,\n  \"rhine\": 22863,\n  \"rhine</w>\": 44833,\n  \"rhinestone</w>\": 30450,\n  \"rhino\": 41744,\n  \"rhino</w>\": 20056,\n  \"rhinos</w>\": 30671,\n  \"rho\": 7637,\n  \"rhode\": 39302,\n  \"rhode</w>\": 27907,\n  \"rhodes</w>\": 17785,\n  \"rhon\": 25882,\n  \"rhonda</w>\": 46100,\n  \"rhp</w>\": 27199,\n  \"rhs</w>\": 24551,\n  \"rhu\": 23897,\n  \"rhubarb</w>\": 30213,\n  \"rhy\": 7740,\n  \"rhyme</w>\": 37356,\n  \"rhymes</w>\": 33143,\n  \"rhys</w>\": 28647,\n  \"rhyth\": 27069,\n  \"rhythm</w>\": 16172,\n  \"rhythmic</w>\": 46386,\n  \"rhythms</w>\": 40872,\n  \"ri\": 553,\n  \"ri</w>\": 2574,\n  \"ria</w>\": 3650,\n  \"rial</w>\": 15200,\n  \"rian</w>\": 7788,\n  \"rib\": 44634,\n  \"rib</w>\": 18298,\n  \"riba</w>\": 44992,\n  \"ribb\": 10081,\n  \"ribbon</w>\": 12114,\n  \"ribbons</w>\": 35271,\n  \"ribe\": 46115,\n  \"ribs</w>\": 17519,\n  \"ric\": 920,\n  \"ric</w>\": 4798,\n  \"rica</w>\": 14230,\n  \"rical</w>\": 18109,\n  \"rican</w>\": 30958,\n  \"ricardo</w>\": 23140,\n  \"ricci\": 35783,\n  \"ricciardo</w>\": 49282,\n  \"rice\": 36362,\n  \"rice</w>\": 4741,\n  \"rich\": 5223,\n  \"rich</w>\": 4021,\n  \"richar\": 9350,\n  \"richard\": 9080,\n  \"richard</w>\": 4470,\n  \"richards</w>\": 11372,\n  \"richardson</w>\": 15984,\n  \"riche\": 23286,\n  \"richer</w>\": 34138,\n  \"riches</w>\": 37093,\n  \"richest</w>\": 25572,\n  \"richi\": 38934,\n  \"richie</w>\": 19797,\n  \"richland</w>\": 43079,\n  \"richmond\": 34143,\n  \"richmond</w>\": 11292,\n  \"richter</w>\": 37591,\n  \"rick\": 6237,\n  \"rick</w>\": 3064,\n  \"ricket\": 46161,\n  \"ricket</w>\": 23671,\n  \"ricks</w>\": 23111,\n  \"ricky\": 19188,\n  \"ricky</w>\": 12814,\n  \"rico\": 37962,\n  \"rico</w>\": 11362,\n  \"ricotta</w>\": 38473,\n  \"rics</w>\": 7353,\n  \"ricul\": 6980,\n  \"rid\": 18103,\n  \"rid</w>\": 9874,\n  \"ridd\": 21990,\n  \"ridden</w>\": 32025,\n  \"riddle</w>\": 31839,\n  \"ride\": 15816,\n  \"ride</w>\": 2994,\n  \"rider\": 31056,\n  \"rider</w>\": 9707,\n  \"riders</w>\": 10826,\n  \"rides</w>\": 11308,\n  \"ridg\": 42646,\n  \"ridge\": 16580,\n  \"ridge</w>\": 6352,\n  \"ridic\": 9624,\n  \"ridiculous</w>\": 12659,\n  \"ridiculously</w>\": 25661,\n  \"ridin</w>\": 47869,\n  \"riding</w>\": 6765,\n  \"ridley</w>\": 27883,\n  \"rie\": 14824,\n  \"rie</w>\": 5322,\n  \"ried</w>\": 7552,\n  \"riel</w>\": 26696,\n  \"rien</w>\": 35237,\n  \"rier\": 40714,\n  \"rier</w>\": 13336,\n  \"ries\": 28179,\n  \"ries</w>\": 3059,\n  \"riesling</w>\": 36372,\n  \"rif\": 7044,\n  \"riff</w>\": 30359,\n  \"rifle</w>\": 15354,\n  \"rifles</w>\": 25678,\n  \"rift</w>\": 26681,\n  \"rig\": 18462,\n  \"rig</w>\": 13871,\n  \"riga</w>\": 36626,\n  \"rigged</w>\": 35897,\n  \"rigging</w>\": 38160,\n  \"riggs</w>\": 40328,\n  \"righ\": 15391,\n  \"right\": 13341,\n  \"right</w>\": 1155,\n  \"righte\": 20762,\n  \"righteous</w>\": 28169,\n  \"righteousness</w>\": 42481,\n  \"rightful</w>\": 42601,\n  \"rightly</w>\": 42669,\n  \"rights</w>\": 3336,\n  \"rigid</w>\": 43138,\n  \"rigor\": 36788,\n  \"rigorous</w>\": 41654,\n  \"rigs</w>\": 42893,\n  \"rihanna</w>\": 13744,\n  \"rij\": 41097,\n  \"rik\": 31136,\n  \"rik</w>\": 27832,\n  \"rika</w>\": 28580,\n  \"ril\": 12270,\n  \"ril</w>\": 2388,\n  \"riley\": 35056,\n  \"riley</w>\": 12260,\n  \"rill</w>\": 23705,\n  \"rilla\": 43956,\n  \"rilla</w>\": 18685,\n  \"rim\": 28147,\n  \"rim</w>\": 12199,\n  \"rime</w>\": 27064,\n  \"rimin\": 11527,\n  \"rimo</w>\": 47817,\n  \"rims</w>\": 34327,\n  \"rin\": 5859,\n  \"rin</w>\": 11739,\n  \"rina</w>\": 12869,\n  \"rine</w>\": 24952,\n  \"ring\": 8318,\n  \"ring</w>\": 2540,\n  \"ringed</w>\": 44712,\n  \"ringer</w>\": 35761,\n  \"ringing</w>\": 26035,\n  \"ringo</w>\": 38845,\n  \"rings</w>\": 5751,\n  \"rington</w>\": 12455,\n  \"rink</w>\": 21497,\n  \"rinka</w>\": 47316,\n  \"rino</w>\": 47188,\n  \"rinse</w>\": 48320,\n  \"rio\": 15681,\n  \"rio</w>\": 5782,\n  \"rion\": 31623,\n  \"rion</w>\": 34046,\n  \"rios</w>\": 32814,\n  \"riot\": 32636,\n  \"riot</w>\": 14218,\n  \"riots</w>\": 24844,\n  \"rious</w>\": 6340,\n  \"rip\": 10353,\n  \"rip</w>\": 4243,\n  \"ripe</w>\": 22832,\n  \"ripley</w>\": 41589,\n  \"ripp\": 25276,\n  \"ripped</w>\": 17815,\n  \"ripper</w>\": 35347,\n  \"ripping</w>\": 29126,\n  \"ripple</w>\": 24825,\n  \"rips</w>\": 30182,\n  \"rir</w>\": 36792,\n  \"ris\": 6108,\n  \"ris</w>\": 1999,\n  \"rise\": 13641,\n  \"rise</w>\": 3151,\n  \"risen</w>\": 23653,\n  \"risers</w>\": 44983,\n  \"rises</w>\": 13362,\n  \"riseup</w>\": 35760,\n  \"rish\": 18378,\n  \"rish</w>\": 18927,\n  \"rishi\": 48434,\n  \"rising\": 30452,\n  \"rising</w>\": 5448,\n  \"risis</w>\": 37998,\n  \"risk\": 27967,\n  \"risk</w>\": 4213,\n  \"risking</w>\": 48155,\n  \"risks</w>\": 12474,\n  \"risky</w>\": 27630,\n  \"risotto</w>\": 31471,\n  \"rist</w>\": 40610,\n  \"rit\": 5156,\n  \"rit</w>\": 17333,\n  \"rita</w>\": 16178,\n  \"ritchie</w>\": 30997,\n  \"rite\": 39318,\n  \"rite</w>\": 18429,\n  \"rites</w>\": 36160,\n  \"rith\": 48169,\n  \"rith</w>\": 48850,\n  \"riti\": 32904,\n  \"rito</w>\": 19379,\n  \"ritos</w>\": 33507,\n  \"ritt</w>\": 26092,\n  \"ritter</w>\": 34854,\n  \"ritu\": 13391,\n  \"ritual</w>\": 19712,\n  \"rituals</w>\": 31145,\n  \"ritz\": 39151,\n  \"ritz</w>\": 25627,\n  \"rium</w>\": 33884,\n  \"riv\": 25113,\n  \"rival\": 13412,\n  \"rival</w>\": 15629,\n  \"rivalry</w>\": 19511,\n  \"rivals</w>\": 15135,\n  \"rive\": 27588,\n  \"rive</w>\": 34917,\n  \"river\": 5239,\n  \"river</w>\": 2473,\n  \"rivera</w>\": 18275,\n  \"riverdale</w>\": 28304,\n  \"riverfront</w>\": 44439,\n  \"rivers</w>\": 10723,\n  \"riverside</w>\": 15809,\n  \"riveting</w>\": 44024,\n  \"riviera</w>\": 25851,\n  \"rix\": 43407,\n  \"rix</w>\": 9483,\n  \"riya</w>\": 36908,\n  \"riyad\": 31564,\n  \"riyadh</w>\": 33577,\n  \"riz\": 18426,\n  \"riz</w>\": 35411,\n  \"rizal</w>\": 41555,\n  \"rizio</w>\": 40191,\n  \"rizz\": 34826,\n  \"rizzo</w>\": 49076,\n  \"rj\": 26016,\n  \"rj</w>\": 20949,\n  \"rk\": 38725,\n  \"rk</w>\": 21422,\n  \"rl\": 18041,\n  \"rl</w>\": 14590,\n  \"rlly</w>\": 43222,\n  \"rly</w>\": 25954,\n  \"rm\": 20202,\n  \"rm</w>\": 8431,\n  \"rmb</w>\": 49097,\n  \"rms</w>\": 40529,\n  \"rn\": 13206,\n  \"rn</w>\": 7666,\n  \"rna</w>\": 24566,\n  \"rnb</w>\": 31556,\n  \"rnc</w>\": 35309,\n  \"rnli</w>\": 29748,\n  \"ro\": 532,\n  \"ro</w>\": 2795,\n  \"roa\": 8313,\n  \"roach</w>\": 31073,\n  \"road\": 4370,\n  \"road</w>\": 1759,\n  \"roadhouse</w>\": 47891,\n  \"roadmap</w>\": 30111,\n  \"roads</w>\": 6189,\n  \"roadsafety</w>\": 39992,\n  \"roadshow</w>\": 21168,\n  \"roadside</w>\": 26928,\n  \"roadster</w>\": 28920,\n  \"roadto\": 24681,\n  \"roadtrip</w>\": 15094,\n  \"roadway</w>\": 42744,\n  \"roam</w>\": 34045,\n  \"roaming</w>\": 29240,\n  \"roano\": 34184,\n  \"roanoke</w>\": 36587,\n  \"roar\": 34193,\n  \"roar</w>\": 18483,\n  \"roaring</w>\": 26428,\n  \"roast</w>\": 11404,\n  \"roasted</w>\": 10479,\n  \"roasting</w>\": 32228,\n  \"rob\": 2668,\n  \"rob</w>\": 6442,\n  \"robb\": 14059,\n  \"robb</w>\": 39673,\n  \"robbed</w>\": 24163,\n  \"robber</w>\": 35545,\n  \"robbers</w>\": 40852,\n  \"robbery</w>\": 16393,\n  \"robbi\": 44898,\n  \"robbie\": 37200,\n  \"robbie</w>\": 15970,\n  \"robbing</w>\": 47569,\n  \"robbins</w>\": 23461,\n  \"robby</w>\": 44128,\n  \"robe</w>\": 23116,\n  \"rober\": 4532,\n  \"robert\": 8811,\n  \"robert</w>\": 3929,\n  \"roberta</w>\": 43373,\n  \"roberto\": 42645,\n  \"roberto</w>\": 16227,\n  \"roberts</w>\": 10366,\n  \"robertson</w>\": 17643,\n  \"robes</w>\": 29304,\n  \"robi</w>\": 16743,\n  \"robin\": 6681,\n  \"robin</w>\": 7988,\n  \"robins</w>\": 35502,\n  \"robinson</w>\": 8523,\n  \"robles</w>\": 47646,\n  \"roblo\": 27481,\n  \"roblox</w>\": 37798,\n  \"robo\": 4672,\n  \"robo</w>\": 36057,\n  \"robot\": 46089,\n  \"robot</w>\": 8797,\n  \"robotic</w>\": 23975,\n  \"robotics</w>\": 13546,\n  \"robots</w>\": 13473,\n  \"robson</w>\": 31113,\n  \"robust</w>\": 22780,\n  \"robyn</w>\": 34533,\n  \"roc\": 3268,\n  \"roc</w>\": 13776,\n  \"rocco</w>\": 30009,\n  \"roch\": 23788,\n  \"rochdale</w>\": 41880,\n  \"roche</w>\": 31776,\n  \"rochelle</w>\": 40161,\n  \"rochester</w>\": 18057,\n  \"rock\": 2640,\n  \"rock</w>\": 2172,\n  \"rockab\": 39353,\n  \"rockabilly</w>\": 45019,\n  \"rocke\": 19914,\n  \"rocked</w>\": 16116,\n  \"rockefeller</w>\": 35476,\n  \"rocker</w>\": 29008,\n  \"rockers</w>\": 32338,\n  \"rocket\": 25435,\n  \"rocket</w>\": 8383,\n  \"rockets</w>\": 13292,\n  \"rockford</w>\": 41039,\n  \"rockies</w>\": 20621,\n  \"rockin</w>\": 12073,\n  \"rocking</w>\": 7081,\n  \"rockn\": 24442,\n  \"rocknroll</w>\": 27840,\n  \"rocks</w>\": 6135,\n  \"rockstar\": 23603,\n  \"rockstar</w>\": 18000,\n  \"rockstargames</w>\": 27516,\n  \"rockstars</w>\": 46639,\n  \"rockthe\": 49363,\n  \"rockwell</w>\": 34747,\n  \"rocky\": 33481,\n  \"rocky</w>\": 9648,\n  \"rod\": 9712,\n  \"rod</w>\": 8291,\n  \"roddy</w>\": 42332,\n  \"rode</w>\": 18449,\n  \"rodeo</w>\": 18250,\n  \"rodgers</w>\": 17612,\n  \"rodi\": 49100,\n  \"rodney</w>\": 21753,\n  \"rodri\": 11053,\n  \"rodrigo</w>\": 33944,\n  \"rodriguez</w>\": 14057,\n  \"rods</w>\": 28618,\n  \"roe\": 27671,\n  \"roe</w>\": 9996,\n  \"rof\": 33029,\n  \"rofl</w>\": 48228,\n  \"roft</w>\": 45212,\n  \"rog\": 34269,\n  \"rog</w>\": 34017,\n  \"rogen</w>\": 23380,\n  \"roger\": 13929,\n  \"roger</w>\": 7735,\n  \"rogerfederer</w>\": 40182,\n  \"rogers</w>\": 10661,\n  \"rogue\": 32575,\n  \"rogue</w>\": 15162,\n  \"roh\": 14933,\n  \"roh</w>\": 29840,\n  \"rohan</w>\": 39848,\n  \"rohing\": 23600,\n  \"rohingya</w>\": 26146,\n  \"rohit\": 44649,\n  \"rohit</w>\": 24299,\n  \"roi</w>\": 21877,\n  \"rok</w>\": 36807,\n  \"rol\": 3393,\n  \"rol</w>\": 7818,\n  \"roland\": 33713,\n  \"roland</w>\": 19569,\n  \"role\": 18485,\n  \"role</w>\": 3414,\n  \"roles</w>\": 11871,\n  \"rolex</w>\": 21093,\n  \"rolf</w>\": 48606,\n  \"roll\": 4711,\n  \"roll</w>\": 3341,\n  \"rolled</w>\": 11982,\n  \"roller\": 21034,\n  \"roller</w>\": 12342,\n  \"rollercoaster</w>\": 38248,\n  \"rollers</w>\": 36941,\n  \"rollin</w>\": 27545,\n  \"rolling\": 24250,\n  \"rolling</w>\": 6347,\n  \"rollingstones</w>\": 41309,\n  \"rollins</w>\": 27724,\n  \"rollout</w>\": 47710,\n  \"rollover</w>\": 39214,\n  \"rolls</w>\": 8614,\n  \"rolltide</w>\": 28101,\n  \"rom\": 11377,\n  \"rom</w>\": 19205,\n  \"roma\": 44134,\n  \"roma</w>\": 11631,\n  \"romain</w>\": 48897,\n  \"roman\": 4416,\n  \"roman</w>\": 7370,\n  \"romance</w>\": 7215,\n  \"romania</w>\": 15884,\n  \"romanian</w>\": 30866,\n  \"romano</w>\": 38409,\n  \"romans</w>\": 23066,\n  \"romantic\": 41457,\n  \"romantic</w>\": 8821,\n  \"rome\": 9406,\n  \"rome</w>\": 5243,\n  \"romeo</w>\": 14429,\n  \"romero</w>\": 23694,\n  \"romney</w>\": 19287,\n  \"romo</w>\": 32248,\n  \"romper</w>\": 43699,\n  \"ron\": 2393,\n  \"ron</w>\": 3372,\n  \"rona</w>\": 42385,\n  \"ronal\": 46194,\n  \"ronald</w>\": 15683,\n  \"ronaldo</w>\": 13463,\n  \"ronan</w>\": 34971,\n  \"rond\": 31935,\n  \"ronda</w>\": 37436,\n  \"rondo</w>\": 43756,\n  \"rone\": 48082,\n  \"rone</w>\": 32763,\n  \"roni</w>\": 47234,\n  \"ronnie\": 45257,\n  \"ronnie</w>\": 16421,\n  \"rons</w>\": 19536,\n  \"ront</w>\": 48881,\n  \"roo\": 1249,\n  \"roo</w>\": 31227,\n  \"rood</w>\": 38007,\n  \"roof\": 9120,\n  \"roof</w>\": 6449,\n  \"roofing</w>\": 24415,\n  \"roofs</w>\": 34635,\n  \"rooftop</w>\": 16319,\n  \"rook</w>\": 35918,\n  \"rookie</w>\": 9771,\n  \"rookies</w>\": 31917,\n  \"room\": 8845,\n  \"room</w>\": 1530,\n  \"roomie</w>\": 36851,\n  \"roommate</w>\": 19825,\n  \"roommates</w>\": 37323,\n  \"rooms</w>\": 6328,\n  \"rooney</w>\": 17712,\n  \"roos</w>\": 32938,\n  \"roosevel\": 17644,\n  \"roosevelt</w>\": 18488,\n  \"rooster\": 46263,\n  \"rooster</w>\": 30926,\n  \"roosters</w>\": 43693,\n  \"root\": 25930,\n  \"root</w>\": 9728,\n  \"rooted</w>\": 30428,\n  \"rooting</w>\": 25523,\n  \"roots</w>\": 8084,\n  \"rop</w>\": 43401,\n  \"rope</w>\": 9953,\n  \"ropes</w>\": 30506,\n  \"ror\": 8668,\n  \"ror</w>\": 2843,\n  \"rors</w>\": 12072,\n  \"rory\": 42804,\n  \"rory</w>\": 17813,\n  \"ros\": 5288,\n  \"ros</w>\": 6930,\n  \"rosa</w>\": 14393,\n  \"rosal\": 30397,\n  \"rosario</w>\": 33640,\n  \"rosary</w>\": 33098,\n  \"rosberg</w>\": 46037,\n  \"rose\": 6146,\n  \"rose</w>\": 3568,\n  \"roseanne</w>\": 47528,\n  \"rosel\": 33616,\n  \"rosemary</w>\": 19472,\n  \"rosen\": 13214,\n  \"rosen</w>\": 36424,\n  \"rosenberg</w>\": 43558,\n  \"rosenthal</w>\": 46990,\n  \"roses</w>\": 9061,\n  \"rosetta</w>\": 43800,\n  \"rosewood</w>\": 38686,\n  \"rosie\": 43049,\n  \"rosie</w>\": 16888,\n  \"ross\": 8801,\n  \"ross</w>\": 2158,\n  \"rosse</w>\": 11602,\n  \"rossi</w>\": 24817,\n  \"rosso</w>\": 33023,\n  \"roster</w>\": 12487,\n  \"roswell</w>\": 45116,\n  \"rosy</w>\": 46705,\n  \"rosÃ©</w>\": 28006,\n  \"rot\": 10055,\n  \"rot</w>\": 9643,\n  \"rotar\": 45959,\n  \"rotary</w>\": 14654,\n  \"rotating</w>\": 32265,\n  \"rotation</w>\": 18089,\n  \"rotc</w>\": 32252,\n  \"roth\": 17741,\n  \"roth</w>\": 19139,\n  \"rother\": 23174,\n  \"rotherham</w>\": 37687,\n  \"rothschild</w>\": 45089,\n  \"roti</w>\": 46940,\n  \"roto\": 34698,\n  \"rotor</w>\": 42991,\n  \"rots</w>\": 16642,\n  \"rott\": 34806,\n  \"rotten</w>\": 24324,\n  \"rotter\": 22614,\n  \"rotterdam</w>\": 23422,\n  \"rotun\": 42970,\n  \"rou\": 2964,\n  \"rou</w>\": 34783,\n  \"roud</w>\": 28375,\n  \"rouge</w>\": 16209,\n  \"rough\": 11699,\n  \"rough</w>\": 8511,\n  \"roughly</w>\": 21910,\n  \"roughs</w>\": 37598,\n  \"rouhani</w>\": 39912,\n  \"roulette</w>\": 39930,\n  \"roun\": 5602,\n  \"round\": 9403,\n  \"round</w>\": 2522,\n  \"roundabout</w>\": 29953,\n  \"rounded</w>\": 26973,\n  \"rounder</w>\": 37024,\n  \"rounding</w>\": 40208,\n  \"rounds</w>\": 11242,\n  \"roundtable</w>\": 19386,\n  \"roundup</w>\": 17503,\n  \"roup</w>\": 29220,\n  \"rourke</w>\": 38753,\n  \"rous\": 33645,\n  \"rous</w>\": 34531,\n  \"rousey</w>\": 46267,\n  \"rout\": 7502,\n  \"rout</w>\": 41778,\n  \"route</w>\": 5261,\n  \"router</w>\": 29962,\n  \"routes</w>\": 14923,\n  \"routine</w>\": 12319,\n  \"routines</w>\": 44074,\n  \"routing</w>\": 44086,\n  \"roux</w>\": 43416,\n  \"rov</w>\": 23971,\n  \"rove</w>\": 30130,\n  \"rover</w>\": 12776,\n  \"rovers</w>\": 16373,\n  \"row\": 5275,\n  \"row</w>\": 1044,\n  \"rowan</w>\": 26240,\n  \"rowdy</w>\": 32141,\n  \"rowe</w>\": 28323,\n  \"rowed</w>\": 22615,\n  \"rower</w>\": 43345,\n  \"rowers</w>\": 41806,\n  \"rowing</w>\": 12807,\n  \"rowland</w>\": 33037,\n  \"rowley</w>\": 48793,\n  \"rowling</w>\": 29371,\n  \"rown\": 22287,\n  \"rown</w>\": 25060,\n  \"rows</w>\": 9409,\n  \"rox\": 14111,\n  \"rox</w>\": 41033,\n  \"roxy</w>\": 28093,\n  \"roy\": 2128,\n  \"roy</w>\": 6354,\n  \"royal\": 6691,\n  \"royal</w>\": 3853,\n  \"royale</w>\": 20630,\n  \"royalnavy</w>\": 41545,\n  \"royals</w>\": 13335,\n  \"royalties</w>\": 48660,\n  \"royalty</w>\": 18296,\n  \"royalwedding</w>\": 27461,\n  \"royce</w>\": 18444,\n  \"royd</w>\": 41476,\n  \"royo</w>\": 39357,\n  \"roz\": 28989,\n  \"roz</w>\": 37250,\n  \"rp\": 17305,\n  \"rp</w>\": 8174,\n  \"rpa</w>\": 41872,\n  \"rpg</w>\": 12445,\n  \"rpm</w>\": 23715,\n  \"rps</w>\": 49215,\n  \"rr\": 5311,\n  \"rr</w>\": 9126,\n  \"rrp</w>\": 36967,\n  \"rrr</w>\": 18267,\n  \"rrrr\": 25561,\n  \"rrrr</w>\": 34444,\n  \"rs\": 6978,\n  \"rs</w>\": 1724,\n  \"rsa</w>\": 29437,\n  \"rsc</w>\": 48524,\n  \"rsd</w>\": 34426,\n  \"rsi</w>\": 39046,\n  \"rsl</w>\": 44752,\n  \"rsp\": 16381,\n  \"rspb\": 38508,\n  \"rspb</w>\": 36727,\n  \"rspca</w>\": 45643,\n  \"rss\": 46466,\n  \"rss</w>\": 22350,\n  \"rstats</w>\": 38700,\n  \"rsvp</w>\": 9774,\n  \"rt\": 8959,\n  \"rt</w>\": 8991,\n  \"rtc</w>\": 31648,\n  \"rte\": 33822,\n  \"rte</w>\": 23322,\n  \"rtg</w>\": 22028,\n  \"rti</w>\": 47549,\n  \"rtr</w>\": 43999,\n  \"rts</w>\": 8496,\n  \"rtw</w>\": 34673,\n  \"ru\": 681,\n  \"ru</w>\": 13735,\n  \"rub\": 15862,\n  \"rub</w>\": 22586,\n  \"rubb\": 19597,\n  \"rubbed</w>\": 45239,\n  \"rubber\": 31131,\n  \"rubber</w>\": 11331,\n  \"rubbing</w>\": 41262,\n  \"rubbish</w>\": 21108,\n  \"rubble</w>\": 42230,\n  \"ruben\": 44058,\n  \"ruben</w>\": 29722,\n  \"rubi\": 27856,\n  \"rubin</w>\": 34128,\n  \"rubio</w>\": 24244,\n  \"rubs</w>\": 43422,\n  \"ruby\": 24552,\n  \"ruby</w>\": 11493,\n  \"ruck\": 27449,\n  \"rucker</w>\": 45402,\n  \"rud\": 35256,\n  \"rudd</w>\": 31836,\n  \"rude</w>\": 16548,\n  \"rudi\": 48360,\n  \"rudol\": 40927,\n  \"rudolf</w>\": 46835,\n  \"rudolph</w>\": 30119,\n  \"rudy\": 38226,\n  \"rudy</w>\": 22131,\n  \"rue\": 38024,\n  \"rue</w>\": 19276,\n  \"rufc</w>\": 45084,\n  \"ruff\": 28177,\n  \"ruff</w>\": 30304,\n  \"rufus</w>\": 39322,\n  \"rug\": 4217,\n  \"rug</w>\": 19220,\n  \"rugby\": 15091,\n  \"rugby</w>\": 4964,\n  \"rugbyleague</w>\": 44419,\n  \"ruger</w>\": 48655,\n  \"rugged</w>\": 25225,\n  \"rugs</w>\": 29946,\n  \"rui</w>\": 46974,\n  \"ruin</w>\": 16256,\n  \"ruined</w>\": 17231,\n  \"ruining</w>\": 29952,\n  \"ruins</w>\": 16094,\n  \"ruiz</w>\": 27873,\n  \"ruk</w>\": 46628,\n  \"rukh\": 43075,\n  \"rukh</w>\": 27631,\n  \"rule\": 31643,\n  \"rule</w>\": 6175,\n  \"ruled</w>\": 16324,\n  \"ruler</w>\": 26286,\n  \"rulers</w>\": 45328,\n  \"rules</w>\": 5272,\n  \"ruling</w>\": 14690,\n  \"rum\": 9223,\n  \"rum</w>\": 11233,\n  \"rumb\": 42432,\n  \"rumble</w>\": 18900,\n  \"rumi</w>\": 31428,\n  \"rumor</w>\": 22254,\n  \"rumored</w>\": 36694,\n  \"rumors</w>\": 16160,\n  \"rumour</w>\": 34296,\n  \"rumours</w>\": 20716,\n  \"rump</w>\": 29366,\n  \"run\": 1639,\n  \"run</w>\": 1934,\n  \"runaway</w>\": 28851,\n  \"runchat</w>\": 25838,\n  \"rundown</w>\": 41100,\n  \"rune\": 33882,\n  \"rune</w>\": 49244,\n  \"runner\": 37370,\n  \"runner</w>\": 7913,\n  \"runners</w>\": 10571,\n  \"runnin</w>\": 43130,\n  \"running\": 24451,\n  \"running</w>\": 2761,\n  \"runoff</w>\": 38564,\n  \"runs</w>\": 5586,\n  \"runway</w>\": 13927,\n  \"rup\": 7996,\n  \"rup</w>\": 14980,\n  \"rupaul</w>\": 44211,\n  \"rupee</w>\": 43916,\n  \"rupees</w>\": 44110,\n  \"rupert</w>\": 25625,\n  \"rupt</w>\": 23055,\n  \"ruption</w>\": 35403,\n  \"rural\": 28801,\n  \"rural</w>\": 8737,\n  \"rus\": 35811,\n  \"rus</w>\": 5998,\n  \"rush\": 12148,\n  \"rush</w>\": 6973,\n  \"rushed</w>\": 28104,\n  \"rusher</w>\": 48745,\n  \"rushes</w>\": 47217,\n  \"rushing</w>\": 20284,\n  \"russ\": 6285,\n  \"russ</w>\": 20764,\n  \"russell\": 26122,\n  \"russell</w>\": 8150,\n  \"russi\": 2600,\n  \"russia</w>\": 4018,\n  \"russian\": 30731,\n  \"russian</w>\": 4868,\n  \"russians</w>\": 25413,\n  \"russo</w>\": 30679,\n  \"rust\": 28682,\n  \"rust</w>\": 14212,\n  \"rustic</w>\": 19822,\n  \"rusty\": 43966,\n  \"rusty</w>\": 22646,\n  \"rut\": 14973,\n  \"rut</w>\": 39102,\n  \"rutger\": 49029,\n  \"rutgers</w>\": 28934,\n  \"ruth\": 15798,\n  \"ruth</w>\": 12029,\n  \"ruther\": 26676,\n  \"rutherford</w>\": 31070,\n  \"ruthless</w>\": 36063,\n  \"rutland</w>\": 46024,\n  \"ruto</w>\": 43702,\n  \"ruz</w>\": 23275,\n  \"rv\": 17135,\n  \"rv</w>\": 17951,\n  \"rva</w>\": 24278,\n  \"rw\": 9085,\n  \"rw</w>\": 22926,\n  \"rwa</w>\": 47452,\n  \"rwand\": 31758,\n  \"rwanda</w>\": 15427,\n  \"rwby</w>\": 39698,\n  \"rwc</w>\": 32321,\n  \"rx\": 41188,\n  \"rx</w>\": 15945,\n  \"ry\": 1511,\n  \"ry</w>\": 913,\n  \"ryan\": 8682,\n  \"ryan</w>\": 4053,\n  \"ryanair</w>\": 43526,\n  \"ryder\": 43564,\n  \"ryder</w>\": 21805,\n  \"rye\": 24015,\n  \"rye</w>\": 17409,\n  \"rying</w>\": 7838,\n  \"ryn</w>\": 37728,\n  \"ryo\": 24460,\n  \"rys</w>\": 21654,\n  \"ryu\": 46656,\n  \"ryu</w>\": 34604,\n  \"rÃ©\": 29106,\n  \"s\": 82,\n  \"s</w>\": 338,\n  \"sa\": 774,\n  \"sa</w>\": 1344,\n  \"saa</w>\": 13429,\n  \"saab</w>\": 27158,\n  \"saad</w>\": 36530,\n  \"saas</w>\": 25761,\n  \"saat\": 33151,\n  \"sab\": 3233,\n  \"sab</w>\": 23213,\n  \"saba</w>\": 38344,\n  \"sabah</w>\": 32854,\n  \"saban</w>\": 41620,\n  \"sabar\": 47102,\n  \"sabbath</w>\": 26008,\n  \"sabc</w>\": 30010,\n  \"sabcnews</w>\": 41093,\n  \"saber\": 46822,\n  \"saber</w>\": 25624,\n  \"sabha</w>\": 23431,\n  \"sabi</w>\": 47073,\n  \"sabine</w>\": 44062,\n  \"sable</w>\": 19224,\n  \"sabot\": 30700,\n  \"sabotage</w>\": 40496,\n  \"sabre</w>\": 35110,\n  \"sabres</w>\": 29620,\n  \"sabrin\": 37029,\n  \"sabrina</w>\": 24994,\n  \"sac\": 3632,\n  \"sac</w>\": 12905,\n  \"sach\": 30168,\n  \"sacha</w>\": 49010,\n  \"sachin\": 47527,\n  \"sachin</w>\": 30297,\n  \"sachs</w>\": 31451,\n  \"sack\": 28964,\n  \"sack</w>\": 14979,\n  \"sacked</w>\": 27519,\n  \"sacks</w>\": 26441,\n  \"sacram\": 13334,\n  \"sacramento</w>\": 16065,\n  \"sacred\": 40612,\n  \"sacred</w>\": 12477,\n  \"sacri\": 15283,\n  \"sacrif\": 12117,\n  \"sacrific\": 16919,\n  \"sacrifice</w>\": 12556,\n  \"sacrificed</w>\": 31116,\n  \"sacrifices</w>\": 28858,\n  \"sacrificing</w>\": 48146,\n  \"sad\": 2810,\n  \"sad</w>\": 3719,\n  \"saddened</w>\": 27720,\n  \"saddest</w>\": 34925,\n  \"saddle\": 30469,\n  \"saddle</w>\": 20283,\n  \"sade</w>\": 27429,\n  \"sadh\": 40955,\n  \"sadi\": 22207,\n  \"sadie</w>\": 30333,\n  \"sadiq</w>\": 44107,\n  \"sadler</w>\": 45600,\n  \"sadly</w>\": 11603,\n  \"sadness</w>\": 20399,\n  \"sae\": 38633,\n  \"sae</w>\": 34883,\n  \"saeed</w>\": 29745,\n  \"saf\": 2125,\n  \"saf</w>\": 25760,\n  \"safar\": 23443,\n  \"safari</w>\": 14091,\n  \"safarilive</w>\": 34816,\n  \"safc</w>\": 27998,\n  \"safe\": 2901,\n  \"safe</w>\": 2996,\n  \"safeguard</w>\": 42249,\n  \"safeguarding</w>\": 47451,\n  \"safely</w>\": 11513,\n  \"safer\": 40124,\n  \"safer</w>\": 15504,\n  \"safest</w>\": 38973,\n  \"safety\": 19050,\n  \"safety</w>\": 3406,\n  \"safetyfirst</w>\": 43608,\n  \"saffron</w>\": 27529,\n  \"sag\": 6609,\n  \"sag</w>\": 30048,\n  \"saga</w>\": 15758,\n  \"sagan</w>\": 37193,\n  \"sagar</w>\": 42518,\n  \"sage\": 25800,\n  \"sage</w>\": 7509,\n  \"sages</w>\": 25979,\n  \"sagin\": 47097,\n  \"sagitt\": 44685,\n  \"sagu\": 44708,\n  \"sah\": 30943,\n  \"sah</w>\": 26342,\n  \"saha\": 36062,\n  \"sahara</w>\": 24599,\n  \"saharan</w>\": 44255,\n  \"sahi\": 24608,\n  \"sahib</w>\": 34150,\n  \"sai\": 16048,\n  \"sai</w>\": 10886,\n  \"said\": 40319,\n  \"said</w>\": 1946,\n  \"saif</w>\": 44164,\n  \"saig\": 36328,\n  \"saigon</w>\": 41081,\n  \"sail\": 7528,\n  \"sail</w>\": 12156,\n  \"sailed</w>\": 43047,\n  \"sailing</w>\": 11003,\n  \"sailor\": 28002,\n  \"sailor</w>\": 16076,\n  \"sailormoon</w>\": 40673,\n  \"sailors</w>\": 25355,\n  \"sails</w>\": 27526,\n  \"sain\": 21226,\n  \"sain</w>\": 40378,\n  \"sains\": 24860,\n  \"sainsbury</w>\": 45879,\n  \"sainsburys</w>\": 36934,\n  \"saint\": 11274,\n  \"saint</w>\": 5599,\n  \"saints</w>\": 8769,\n  \"saintsfc</w>\": 31102,\n  \"sair\": 46600,\n  \"sair</w>\": 30971,\n  \"saire</w>\": 28087,\n  \"saison</w>\": 33256,\n  \"sait\": 48008,\n  \"saj\": 33580,\n  \"sak\": 11511,\n  \"sak</w>\": 35900,\n  \"saka</w>\": 33609,\n  \"sake</w>\": 12874,\n  \"sakh</w>\": 43945,\n  \"saki</w>\": 40514,\n  \"saku\": 37550,\n  \"sakura</w>\": 24162,\n  \"sal\": 980,\n  \"sal</w>\": 6126,\n  \"sala</w>\": 17300,\n  \"salaam</w>\": 46773,\n  \"salad</w>\": 6188,\n  \"salads</w>\": 30948,\n  \"salah</w>\": 22516,\n  \"salam\": 19007,\n  \"salam</w>\": 33963,\n  \"salamat</w>\": 44696,\n  \"salami</w>\": 46885,\n  \"salaries</w>\": 33132,\n  \"salary</w>\": 16312,\n  \"salazar</w>\": 45988,\n  \"sale\": 17786,\n  \"sale</w>\": 1690,\n  \"saleh</w>\": 38353,\n  \"salem\": 48194,\n  \"salem</w>\": 16884,\n  \"sales\": 13347,\n  \"sales</w>\": 3765,\n  \"salesforce</w>\": 22680,\n  \"salesman</w>\": 37633,\n  \"salford</w>\": 25629,\n  \"sali\": 15411,\n  \"salim</w>\": 42760,\n  \"salinas</w>\": 41990,\n  \"saline</w>\": 46918,\n  \"salis\": 20667,\n  \"salis</w>\": 39378,\n  \"salisbury</w>\": 24763,\n  \"sall\": 27122,\n  \"sall</w>\": 20883,\n  \"salle</w>\": 23738,\n  \"sally\": 29542,\n  \"sally</w>\": 13349,\n  \"salman\": 13754,\n  \"salman</w>\": 16219,\n  \"salmankhan</w>\": 15177,\n  \"salmon\": 37040,\n  \"salmon</w>\": 9137,\n  \"salom\": 38268,\n  \"salon\": 33916,\n  \"salon</w>\": 11105,\n  \"saloon</w>\": 26038,\n  \"sals</w>\": 16307,\n  \"salsa</w>\": 16442,\n  \"salt\": 12763,\n  \"salt</w>\": 6611,\n  \"salted</w>\": 26313,\n  \"saltlife</w>\": 47809,\n  \"salts</w>\": 40559,\n  \"saltwater</w>\": 43616,\n  \"salty</w>\": 20678,\n  \"salu\": 31711,\n  \"salud</w>\": 46867,\n  \"salut\": 44998,\n  \"salute\": 44908,\n  \"salute</w>\": 9747,\n  \"salutes</w>\": 32762,\n  \"salv\": 8299,\n  \"salvador</w>\": 20874,\n  \"salvage</w>\": 33131,\n  \"salvation</w>\": 19534,\n  \"salvatore</w>\": 38772,\n  \"salz\": 33594,\n  \"salzburg</w>\": 43396,\n  \"sam\": 1644,\n  \"sam</w>\": 3730,\n  \"sama</w>\": 19272,\n  \"samanth\": 11465,\n  \"samantha</w>\": 15466,\n  \"samanthap\": 38266,\n  \"samanthaprabhu</w>\": 38643,\n  \"samar\": 21820,\n  \"samaritan</w>\": 45495,\n  \"samba</w>\": 37190,\n  \"same\": 23062,\n  \"same</w>\": 2208,\n  \"samheughan</w>\": 36255,\n  \"sami\": 48400,\n  \"sami</w>\": 24322,\n  \"sammy\": 31091,\n  \"sammy</w>\": 16758,\n  \"samo\": 30006,\n  \"samoa</w>\": 34932,\n  \"samp\": 31225,\n  \"sample</w>\": 9542,\n  \"sampler</w>\": 40629,\n  \"samples</w>\": 13387,\n  \"sampling</w>\": 19522,\n  \"sampson</w>\": 39983,\n  \"sams</w>\": 44667,\n  \"samson</w>\": 34659,\n  \"samsun\": 47875,\n  \"samsung\": 35369,\n  \"samsung</w>\": 8115,\n  \"samu\": 7646,\n  \"samuel\": 30612,\n  \"samuel</w>\": 12787,\n  \"samurai</w>\": 21739,\n  \"san\": 1489,\n  \"san</w>\": 2223,\n  \"sana</w>\": 19434,\n  \"sanantonio</w>\": 34714,\n  \"sanat\": 29091,\n  \"sanatomy</w>\": 36052,\n  \"sanc\": 7398,\n  \"sance</w>\": 15930,\n  \"sanchez</w>\": 13971,\n  \"sanctioned</w>\": 43032,\n  \"sanctions</w>\": 17790,\n  \"sanctu\": 12712,\n  \"sanctuary</w>\": 14044,\n  \"sand\": 2147,\n  \"sand</w>\": 5094,\n  \"sandal\": 36445,\n  \"sandal</w>\": 42185,\n  \"sandals</w>\": 20731,\n  \"sandalwood</w>\": 47502,\n  \"sandeep</w>\": 46973,\n  \"sander</w>\": 34111,\n  \"sanders</w>\": 10429,\n  \"sanderson</w>\": 36198,\n  \"sandi\": 44249,\n  \"sandiego\": 45997,\n  \"sandiego</w>\": 15793,\n  \"sandman</w>\": 45730,\n  \"sando\": 35921,\n  \"sandoval</w>\": 44157,\n  \"sandra\": 33733,\n  \"sandra</w>\": 13415,\n  \"sandro</w>\": 42389,\n  \"sands</w>\": 5936,\n  \"sandstone</w>\": 36796,\n  \"sandwich\": 17050,\n  \"sandwich</w>\": 8687,\n  \"sandwiches</w>\": 19667,\n  \"sandy\": 29679,\n  \"sandy</w>\": 10355,\n  \"sane</w>\": 23419,\n  \"sanford</w>\": 32330,\n  \"sanfrancisco</w>\": 20254,\n  \"sang\": 13235,\n  \"sang</w>\": 11684,\n  \"sange\": 12466,\n  \"sangria</w>\": 42665,\n  \"sani\": 39137,\n  \"sani</w>\": 34492,\n  \"sanitary</w>\": 33842,\n  \"sanitation</w>\": 25414,\n  \"saniti\": 43987,\n  \"sanity</w>\": 30517,\n  \"sanjay\": 31712,\n  \"sanjay</w>\": 25796,\n  \"sanje\": 40405,\n  \"sanjose</w>\": 45971,\n  \"sank</w>\": 43692,\n  \"sano</w>\": 34053,\n  \"sans</w>\": 16982,\n  \"sansk\": 39689,\n  \"sanskrit</w>\": 48083,\n  \"sant\": 8356,\n  \"sant</w>\": 23120,\n  \"santa\": 22175,\n  \"santa</w>\": 4555,\n  \"santac\": 28876,\n  \"santam\": 45627,\n  \"santana</w>\": 27033,\n  \"santander</w>\": 46476,\n  \"santi\": 13856,\n  \"santiago</w>\": 16568,\n  \"santo\": 29631,\n  \"santo</w>\": 18400,\n  \"santor\": 28448,\n  \"santorini</w>\": 39573,\n  \"santos</w>\": 16582,\n  \"sany\": 47679,\n  \"sao</w>\": 28026,\n  \"sap\": 8089,\n  \"sap</w>\": 11591,\n  \"sapi\": 40016,\n  \"sapp\": 13427,\n  \"sapp</w>\": 40729,\n  \"sapphire</w>\": 22044,\n  \"sar\": 1808,\n  \"sar</w>\": 9424,\n  \"sara\": 37196,\n  \"sara</w>\": 10063,\n  \"sarab\": 40716,\n  \"sarac\": 35722,\n  \"sarah\": 9086,\n  \"sarah</w>\": 5327,\n  \"saraj\": 42592,\n  \"sarajevo</w>\": 48211,\n  \"saras\": 20373,\n  \"sarasota</w>\": 31990,\n  \"sarato\": 24845,\n  \"saratoga</w>\": 29496,\n  \"sarawak</w>\": 47331,\n  \"sarcasm</w>\": 37246,\n  \"sarcastic</w>\": 48639,\n  \"sardar</w>\": 41786,\n  \"sarde\": 43925,\n  \"sardin\": 27383,\n  \"sardinia</w>\": 41025,\n  \"sare\": 13051,\n  \"saree</w>\": 30860,\n  \"sargent</w>\": 34864,\n  \"sari\": 42327,\n  \"sari</w>\": 20261,\n  \"saries</w>\": 47586,\n  \"sarkar</w>\": 30673,\n  \"sarko\": 33658,\n  \"sarkodie</w>\": 42848,\n  \"sarmy</w>\": 20954,\n  \"sart</w>\": 33006,\n  \"sary</w>\": 15398,\n  \"sas\": 3960,\n  \"sas</w>\": 5235,\n  \"sash</w>\": 35656,\n  \"sasha\": 46078,\n  \"sasha</w>\": 20894,\n  \"sasia</w>\": 44751,\n  \"sask\": 47091,\n  \"sask</w>\": 30416,\n  \"saskat\": 17102,\n  \"saskatchewan</w>\": 23899,\n  \"saskatoon</w>\": 31128,\n  \"sass</w>\": 31351,\n  \"sassy</w>\": 20827,\n  \"sat\": 1382,\n  \"sat</w>\": 3279,\n  \"sata</w>\": 41520,\n  \"satan</w>\": 19446,\n  \"satanic</w>\": 38224,\n  \"satchel</w>\": 45908,\n  \"sate</w>\": 35749,\n  \"satell\": 9031,\n  \"satellite</w>\": 10316,\n  \"satellites</w>\": 28483,\n  \"sath\": 29675,\n  \"sathletics</w>\": 30154,\n  \"sati\": 7038,\n  \"satin</w>\": 21803,\n  \"sation</w>\": 23674,\n  \"sations</w>\": 31232,\n  \"satire</w>\": 29875,\n  \"satis\": 9906,\n  \"satisf\": 22941,\n  \"satisfaction</w>\": 19925,\n  \"satisfied</w>\": 18101,\n  \"satisfy</w>\": 29444,\n  \"satisfying</w>\": 23755,\n  \"sato</w>\": 34376,\n  \"satu</w>\": 45283,\n  \"satur\": 1634,\n  \"saturated</w>\": 32466,\n  \"saturday\": 12537,\n  \"saturday</w>\": 1748,\n  \"saturdaymorning</w>\": 29053,\n  \"saturdaymotivation</w>\": 40843,\n  \"saturdays</w>\": 18930,\n  \"saturn</w>\": 17312,\n  \"saty\": 39426,\n  \"sau\": 2096,\n  \"sau</w>\": 19455,\n  \"sauce</w>\": 5520,\n  \"saucer</w>\": 42272,\n  \"sauces</w>\": 40367,\n  \"saucy</w>\": 46684,\n  \"saudi\": 24511,\n  \"saudi</w>\": 8548,\n  \"saudiarabia</w>\": 28680,\n  \"sauer\": 46333,\n  \"saul\": 47623,\n  \"saul</w>\": 23252,\n  \"sault</w>\": 40361,\n  \"sauna</w>\": 35460,\n  \"saunders</w>\": 23794,\n  \"saur</w>\": 13227,\n  \"saura\": 46532,\n  \"saurus</w>\": 22118,\n  \"saus</w>\": 36121,\n  \"sausage</w>\": 11855,\n  \"sausages</w>\": 31593,\n  \"sautÃ©\": 36290,\n  \"sautÃ©ed</w>\": 38517,\n  \"sauvi\": 30116,\n  \"sauvignon</w>\": 32745,\n  \"sav\": 2248,\n  \"sav</w>\": 26533,\n  \"sava</w>\": 40198,\n  \"savag\": 43039,\n  \"savage</w>\": 11859,\n  \"savannah</w>\": 18662,\n  \"save\": 5895,\n  \"save</w>\": 2673,\n  \"saved</w>\": 7137,\n  \"saveour\": 33390,\n  \"saver</w>\": 20987,\n  \"savers</w>\": 31416,\n  \"saves</w>\": 12907,\n  \"savethe\": 18031,\n  \"savi\": 14721,\n  \"saving\": 28498,\n  \"saving</w>\": 6979,\n  \"savings</w>\": 10651,\n  \"savior</w>\": 24762,\n  \"saviour</w>\": 35800,\n  \"savor</w>\": 48071,\n  \"savory</w>\": 32992,\n  \"savoury</w>\": 49071,\n  \"savoy</w>\": 39552,\n  \"savvy</w>\": 29278,\n  \"saw\": 12429,\n  \"saw</w>\": 2425,\n  \"sawa</w>\": 39613,\n  \"sawards</w>\": 29012,\n  \"sawyer</w>\": 27726,\n  \"sax\": 14169,\n  \"sax</w>\": 23766,\n  \"saxon</w>\": 31856,\n  \"saxophon\": 43760,\n  \"saxophone</w>\": 32296,\n  \"say\": 3047,\n  \"say</w>\": 1451,\n  \"saya</w>\": 35170,\n  \"sayang</w>\": 46322,\n  \"sayers</w>\": 44116,\n  \"sayin</w>\": 23662,\n  \"saying</w>\": 4455,\n  \"says</w>\": 1563,\n  \"saz</w>\": 35577,\n  \"sb\": 5576,\n  \"sb</w>\": 4977,\n  \"sba</w>\": 44970,\n  \"sback</w>\": 43840,\n  \"sband</w>\": 27539,\n  \"sbaseball</w>\": 46491,\n  \"sbball</w>\": 39190,\n  \"sbc</w>\": 31404,\n  \"sberg</w>\": 20358,\n  \"sbi</w>\": 41369,\n  \"sbk</w>\": 39211,\n  \"sboro</w>\": 18909,\n  \"sbridge</w>\": 49228,\n  \"sbs</w>\": 18883,\n  \"sbu\": 48075,\n  \"sbu</w>\": 46281,\n  \"sburg</w>\": 7390,\n  \"sburgh</w>\": 48205,\n  \"sbury</w>\": 14081,\n  \"sby\": 26519,\n  \"sby</w>\": 10287,\n  \"sc\": 663,\n  \"sc</w>\": 3219,\n  \"sca</w>\": 11001,\n  \"scab\": 31716,\n  \"scaf\": 28981,\n  \"scafe</w>\": 45574,\n  \"scaffolding</w>\": 41687,\n  \"scal\": 10859,\n  \"scala</w>\": 37997,\n  \"scalable</w>\": 44084,\n  \"scale\": 37817,\n  \"scale</w>\": 5879,\n  \"scaled</w>\": 41923,\n  \"scales</w>\": 22891,\n  \"scaling</w>\": 29116,\n  \"scallo\": 19936,\n  \"scallop</w>\": 39544,\n  \"scallops</w>\": 31430,\n  \"scalp</w>\": 38898,\n  \"scam\": 17620,\n  \"scam</w>\": 13215,\n  \"scamp</w>\": 28451,\n  \"scams</w>\": 34395,\n  \"scan\": 10650,\n  \"scan</w>\": 11261,\n  \"scanada</w>\": 27121,\n  \"scand\": 8110,\n  \"scandal\": 35420,\n  \"scandal</w>\": 11622,\n  \"scandals</w>\": 45490,\n  \"scandin\": 32014,\n  \"scandinavian</w>\": 35661,\n  \"scanned</w>\": 43719,\n  \"scanner</w>\": 24185,\n  \"scanning</w>\": 24092,\n  \"scans</w>\": 31251,\n  \"scap\": 35883,\n  \"scape\": 36005,\n  \"scape</w>\": 12314,\n  \"scapes</w>\": 31933,\n  \"scar\": 4171,\n  \"scar</w>\": 18088,\n  \"scarborough</w>\": 24254,\n  \"scarce</w>\": 38572,\n  \"scarcity</w>\": 45812,\n  \"scare\": 33536,\n  \"scare</w>\": 15920,\n  \"scarec\": 38814,\n  \"scarecrow</w>\": 46504,\n  \"scared</w>\": 9870,\n  \"scares</w>\": 34096,\n  \"scarf</w>\": 13365,\n  \"scari\": 27050,\n  \"scariest</w>\": 37213,\n  \"scarlet</w>\": 20389,\n  \"scarlett</w>\": 28325,\n  \"scars</w>\": 20747,\n  \"scarves</w>\": 29249,\n  \"scary</w>\": 9250,\n  \"scat\": 13899,\n  \"scattered</w>\": 22090,\n  \"scavenger</w>\": 36778,\n  \"scc</w>\": 19458,\n  \"scd</w>\": 48422,\n  \"scen\": 2204,\n  \"scenario</w>\": 20456,\n  \"scenarios</w>\": 31346,\n  \"scence</w>\": 33418,\n  \"scene</w>\": 3562,\n  \"scenery</w>\": 16025,\n  \"scenes</w>\": 5415,\n  \"scenic</w>\": 15394,\n  \"scent\": 36277,\n  \"scent</w>\": 7683,\n  \"scented</w>\": 27190,\n  \"scenter</w>\": 23059,\n  \"scentre</w>\": 39371,\n  \"scents</w>\": 26336,\n  \"scep\": 24439,\n  \"scfc</w>\": 38578,\n  \"sch\": 844,\n  \"sch</w>\": 7542,\n  \"scha\": 42809,\n  \"schaf\": 45588,\n  \"schaft</w>\": 41010,\n  \"schal\": 35568,\n  \"schalke</w>\": 41029,\n  \"schallenge</w>\": 43665,\n  \"schan\": 31328,\n  \"schar\": 15085,\n  \"schat</w>\": 31842,\n  \"schau\": 35830,\n  \"sche\": 3038,\n  \"sche</w>\": 7289,\n  \"schedu\": 4207,\n  \"schedule</w>\": 5521,\n  \"scheduled</w>\": 10986,\n  \"schedules</w>\": 28986,\n  \"scheduling</w>\": 32216,\n  \"scheer</w>\": 26776,\n  \"schel\": 39881,\n  \"schel</w>\": 38569,\n  \"schem\": 17720,\n  \"scheme</w>\": 9024,\n  \"schemes</w>\": 22958,\n  \"schen\": 22738,\n  \"scher\": 21925,\n  \"scher</w>\": 21299,\n  \"schi\": 13731,\n  \"schi</w>\": 24984,\n  \"schicago</w>\": 46230,\n  \"schiff</w>\": 39431,\n  \"schild</w>\": 32148,\n  \"schiz\": 33230,\n  \"schizoph\": 40004,\n  \"schizophre\": 41163,\n  \"schle\": 32022,\n  \"schmid\": 17375,\n  \"schmidt</w>\": 18463,\n  \"schnau\": 45745,\n  \"schnei\": 19941,\n  \"schneider</w>\": 22972,\n  \"schnit\": 40903,\n  \"scho\": 2493,\n  \"schoice</w>\": 23860,\n  \"schol\": 4498,\n  \"scholar\": 7192,\n  \"scholar</w>\": 12830,\n  \"scholarly</w>\": 41065,\n  \"scholars</w>\": 13818,\n  \"scholarship</w>\": 9070,\n  \"scholarships</w>\": 17866,\n  \"scholastic</w>\": 35743,\n  \"schoo\": 20721,\n  \"school\": 6063,\n  \"school</w>\": 1228,\n  \"schooled</w>\": 44722,\n  \"schoolers</w>\": 31455,\n  \"schooling</w>\": 28608,\n  \"schools</w>\": 3513,\n  \"schre\": 47685,\n  \"schri\": 25453,\n  \"schro\": 32381,\n  \"schu\": 11318,\n  \"schubert</w>\": 46939,\n  \"schul\": 14945,\n  \"schultz</w>\": 30308,\n  \"schulz</w>\": 39572,\n  \"schumacher</w>\": 39208,\n  \"schumer</w>\": 25313,\n  \"schur\": 42475,\n  \"schwab</w>\": 47602,\n  \"schwar\": 13985,\n  \"schwartz</w>\": 30617,\n  \"schwarz\": 27074,\n  \"schwarzenegger</w>\": 33860,\n  \"schwe\": 25324,\n  \"sci\": 2267,\n  \"sci</w>\": 8309,\n  \"sciart</w>\": 31704,\n  \"scicom\": 28606,\n  \"scicomm</w>\": 29573,\n  \"scien\": 39261,\n  \"science\": 10201,\n  \"science</w>\": 2497,\n  \"sciencefiction</w>\": 39170,\n  \"sciences</w>\": 11481,\n  \"scienti\": 4338,\n  \"scientific</w>\": 9750,\n  \"scientist</w>\": 11083,\n  \"scientists</w>\": 8045,\n  \"sciento\": 36193,\n  \"scientology</w>\": 44694,\n  \"scifi\": 41862,\n  \"scifi</w>\": 12230,\n  \"scion</w>\": 47208,\n  \"sciss\": 25667,\n  \"scissors</w>\": 30867,\n  \"sciutto</w>\": 44392,\n  \"sclerosis</w>\": 39446,\n  \"sclub</w>\": 20017,\n  \"sco\": 1065,\n  \"sco</w>\": 4763,\n  \"scoe</w>\": 31164,\n  \"scol\": 13599,\n  \"scoll</w>\": 44895,\n  \"scollege</w>\": 39536,\n  \"scom</w>\": 26407,\n  \"scon\": 17163,\n  \"scon</w>\": 29272,\n  \"scones</w>\": 36443,\n  \"sconf</w>\": 39704,\n  \"scoo\": 14199,\n  \"scooby</w>\": 34469,\n  \"scoop</w>\": 13829,\n  \"scoops</w>\": 41360,\n  \"scope</w>\": 7979,\n  \"scopes</w>\": 30328,\n  \"scopic</w>\": 23869,\n  \"scopy</w>\": 20018,\n  \"scor\": 8442,\n  \"score\": 12067,\n  \"score</w>\": 4431,\n  \"scoreboard</w>\": 30104,\n  \"scorecard</w>\": 38128,\n  \"scored</w>\": 6143,\n  \"scoreless</w>\": 33469,\n  \"scorer</w>\": 16572,\n  \"scorers</w>\": 26699,\n  \"scores</w>\": 7039,\n  \"scoring</w>\": 9198,\n  \"scorpi\": 15445,\n  \"scorpio</w>\": 34331,\n  \"scorpion</w>\": 28461,\n  \"scorpions</w>\": 45401,\n  \"scorsese</w>\": 45975,\n  \"scot\": 2496,\n  \"scot</w>\": 9271,\n  \"scotch</w>\": 16687,\n  \"scoti\": 46446,\n  \"scotia</w>\": 27859,\n  \"scotland\": 29174,\n  \"scotland</w>\": 4203,\n  \"scots</w>\": 17260,\n  \"scotsman</w>\": 39612,\n  \"scott\": 7775,\n  \"scott</w>\": 3664,\n  \"scotti\": 6227,\n  \"scottish\": 18039,\n  \"scottish</w>\": 7442,\n  \"scottsdale</w>\": 27817,\n  \"scotty\": 39697,\n  \"scotty</w>\": 26836,\n  \"scotus</w>\": 21720,\n  \"scou\": 44909,\n  \"scoun\": 16110,\n  \"scouncil</w>\": 48787,\n  \"scountry</w>\": 40432,\n  \"scour\": 46172,\n  \"scout\": 32213,\n  \"scout</w>\": 10786,\n  \"scouting</w>\": 19072,\n  \"scouts</w>\": 14837,\n  \"scow\": 27929,\n  \"scowboys</w>\": 31386,\n  \"scp</w>\": 45030,\n  \"scr</w>\": 36131,\n  \"scra\": 11187,\n  \"scrabble</w>\": 39488,\n  \"scram\": 17289,\n  \"scramble</w>\": 32688,\n  \"scrambled</w>\": 39026,\n  \"scran\": 41774,\n  \"scranton</w>\": 45274,\n  \"scrap\": 27950,\n  \"scrap</w>\": 21695,\n  \"scrapbook</w>\": 48733,\n  \"scrapped</w>\": 43325,\n  \"scraps</w>\": 40809,\n  \"scrat\": 9572,\n  \"scratch</w>\": 13258,\n  \"scratched</w>\": 48831,\n  \"scratches</w>\": 46556,\n  \"scratching</w>\": 44617,\n  \"scre\": 1795,\n  \"scream\": 31645,\n  \"scream</w>\": 13239,\n  \"screamed</w>\": 35427,\n  \"screaming</w>\": 12891,\n  \"screams</w>\": 23989,\n  \"screen\": 5351,\n  \"screen</w>\": 3750,\n  \"screened</w>\": 31450,\n  \"screening</w>\": 6688,\n  \"screenings</w>\": 27655,\n  \"screenplay</w>\": 30058,\n  \"screens</w>\": 12689,\n  \"screenshot\": 20637,\n  \"screenshot</w>\": 12646,\n  \"screenshots</w>\": 26783,\n  \"screenshotsaturday</w>\": 21406,\n  \"screenwriter</w>\": 37293,\n  \"screenwriting</w>\": 35465,\n  \"screw\": 25529,\n  \"screw</w>\": 14225,\n  \"screwdriver</w>\": 48748,\n  \"screwed</w>\": 30592,\n  \"screws</w>\": 38292,\n  \"scri\": 2139,\n  \"scrib\": 34259,\n  \"scribe</w>\": 36228,\n  \"scribed</w>\": 38334,\n  \"scricket</w>\": 45947,\n  \"scrim\": 21978,\n  \"scrimmage</w>\": 25216,\n  \"scrip\": 11955,\n  \"script</w>\": 8374,\n  \"scripted</w>\": 40513,\n  \"scription</w>\": 26604,\n  \"scriptions</w>\": 39512,\n  \"scripts</w>\": 20109,\n  \"scripture</w>\": 27186,\n  \"scro\": 30768,\n  \"scroll</w>\": 24160,\n  \"scrolling</w>\": 28889,\n  \"scrolls</w>\": 38113,\n  \"scroo\": 42263,\n  \"scru\": 7589,\n  \"scrub</w>\": 23432,\n  \"scrubs</w>\": 37919,\n  \"scrum</w>\": 29047,\n  \"scrump\": 39791,\n  \"scrumptious</w>\": 40987,\n  \"scrutiny</w>\": 34305,\n  \"scs</w>\": 26853,\n  \"sct</w>\": 39284,\n  \"scu\": 8181,\n  \"scu</w>\": 32135,\n  \"scuba\": 39053,\n  \"scuba</w>\": 20559,\n  \"scubadiving</w>\": 49046,\n  \"scue</w>\": 25955,\n  \"scul\": 4948,\n  \"scully</w>\": 36598,\n  \"sculp\": 6093,\n  \"sculpt</w>\": 45044,\n  \"sculpted</w>\": 41296,\n  \"sculpting</w>\": 44389,\n  \"sculptor</w>\": 29409,\n  \"sculpture</w>\": 8757,\n  \"sculptures</w>\": 20378,\n  \"scum</w>\": 29655,\n  \"scumb\": 44525,\n  \"scup</w>\": 21506,\n  \"scur\": 32742,\n  \"scwx</w>\": 41966,\n  \"scy\": 27471,\n  \"sd\": 3080,\n  \"sd</w>\": 4159,\n  \"sda</w>\": 25548,\n  \"sdale</w>\": 12327,\n  \"sday\": 5902,\n  \"sday</w>\": 1376,\n  \"sdays</w>\": 14491,\n  \"sdc</w>\": 40992,\n  \"sdcc</w>\": 13246,\n  \"sden</w>\": 17241,\n  \"sdf</w>\": 34681,\n  \"sdg</w>\": 20177,\n  \"sdgs</w>\": 16261,\n  \"sdk</w>\": 40015,\n  \"sdlive</w>\": 34561,\n  \"sdn</w>\": 41925,\n  \"sdsu</w>\": 41284,\n  \"se\": 567,\n  \"se</w>\": 611,\n  \"sea\": 5970,\n  \"sea</w>\": 2102,\n  \"seab\": 15728,\n  \"seabir\": 42558,\n  \"seac\": 35626,\n  \"seaf\": 9336,\n  \"seafood</w>\": 12472,\n  \"seag\": 15730,\n  \"seagu\": 38076,\n  \"seagull</w>\": 38858,\n  \"seagulls</w>\": 42215,\n  \"seahawks</w>\": 15341,\n  \"seal\": 21381,\n  \"seal</w>\": 10159,\n  \"sealed</w>\": 13358,\n  \"sealing</w>\": 42992,\n  \"seals</w>\": 18179,\n  \"seam\": 13710,\n  \"seam</w>\": 44201,\n  \"seaman</w>\": 47513,\n  \"seamless</w>\": 29373,\n  \"seamus</w>\": 40175,\n  \"sean\": 11406,\n  \"sean</w>\": 6077,\n  \"seanhannity</w>\": 43316,\n  \"seap\": 29983,\n  \"seaport</w>\": 46418,\n  \"sear\": 1612,\n  \"search\": 23129,\n  \"search</w>\": 1920,\n  \"searched</w>\": 28961,\n  \"searches</w>\": 26378,\n  \"searching</w>\": 10626,\n  \"seared</w>\": 29727,\n  \"sears</w>\": 26693,\n  \"seas\": 7329,\n  \"seas</w>\": 9556,\n  \"seascape</w>\": 42593,\n  \"seaside</w>\": 18867,\n  \"season\": 19288,\n  \"season</w>\": 1367,\n  \"seasonal</w>\": 14215,\n  \"seasoned</w>\": 28399,\n  \"seasoning</w>\": 43439,\n  \"seasons</w>\": 8635,\n  \"seat\": 19670,\n  \"seat</w>\": 4922,\n  \"seated</w>\": 23953,\n  \"seater</w>\": 37543,\n  \"seating</w>\": 16240,\n  \"seats</w>\": 6944,\n  \"seattle\": 24388,\n  \"seattle</w>\": 6274,\n  \"seau</w>\": 32263,\n  \"seaw\": 32658,\n  \"seaweed</w>\": 30204,\n  \"seaworld</w>\": 27422,\n  \"seb\": 35766,\n  \"seb</w>\": 25171,\n  \"sebasti\": 10324,\n  \"sebastian\": 43792,\n  \"sebastian</w>\": 13181,\n  \"sebring</w>\": 41086,\n  \"sec\": 2875,\n  \"sec</w>\": 5338,\n  \"seca</w>\": 37847,\n  \"secco</w>\": 27394,\n  \"sece\": 46297,\n  \"seclu\": 42392,\n  \"secon\": 1846,\n  \"second\": 9329,\n  \"second</w>\": 2241,\n  \"secondary</w>\": 13107,\n  \"seconds</w>\": 6541,\n  \"secre\": 2460,\n  \"secret\": 20710,\n  \"secret</w>\": 4145,\n  \"secretari\": 29515,\n  \"secretariat</w>\": 31767,\n  \"secretary</w>\": 6552,\n  \"secretly</w>\": 21400,\n  \"secrets</w>\": 9735,\n  \"secs</w>\": 28665,\n  \"sect</w>\": 15772,\n  \"section\": 34986,\n  \"section</w>\": 4853,\n  \"sectional</w>\": 21876,\n  \"sections</w>\": 20061,\n  \"sector</w>\": 6579,\n  \"sectors</w>\": 22173,\n  \"secu\": 4894,\n  \"secular\": 47483,\n  \"secular</w>\": 27560,\n  \"secur\": 2557,\n  \"secure\": 44763,\n  \"secure</w>\": 7515,\n  \"secured</w>\": 16848,\n  \"secures</w>\": 31567,\n  \"securing</w>\": 24759,\n  \"securities</w>\": 25080,\n  \"security\": 31245,\n  \"security</w>\": 2741,\n  \"sed\": 14034,\n  \"sed</w>\": 1252,\n  \"sedan</w>\": 24237,\n  \"sedg\": 46926,\n  \"sedge</w>\": 45288,\n  \"sedi\": 29269,\n  \"sedly</w>\": 31771,\n  \"sedona</w>\": 46862,\n  \"seduc\": 19933,\n  \"seductive</w>\": 43721,\n  \"see\": 1751,\n  \"see</w>\": 862,\n  \"seed\": 14064,\n  \"seed</w>\": 6488,\n  \"seeded</w>\": 33688,\n  \"seeding</w>\": 40050,\n  \"seedlings</w>\": 47933,\n  \"seeds</w>\": 9128,\n  \"seeing</w>\": 3214,\n  \"seek</w>\": 8839,\n  \"seeker</w>\": 28011,\n  \"seekers</w>\": 20732,\n  \"seeking</w>\": 8592,\n  \"seeks</w>\": 12594,\n  \"seem\": 20043,\n  \"seem</w>\": 7523,\n  \"seemed</w>\": 17240,\n  \"seemingly</w>\": 25917,\n  \"seems</w>\": 4453,\n  \"seen\": 36273,\n  \"seen</w>\": 2041,\n  \"seer</w>\": 32486,\n  \"sees</w>\": 7594,\n  \"seeyou\": 41279,\n  \"sef</w>\": 27453,\n  \"seg\": 10551,\n  \"sega</w>\": 16122,\n  \"segment</w>\": 15615,\n  \"segments</w>\": 43053,\n  \"segreg\": 49117,\n  \"segregation</w>\": 39086,\n  \"segu\": 33156,\n  \"segun\": 43087,\n  \"seh\": 27536,\n  \"seh</w>\": 41430,\n  \"sehun</w>\": 17705,\n  \"sei\": 13130,\n  \"sei</w>\": 15907,\n  \"sein</w>\": 24669,\n  \"seine</w>\": 41378,\n  \"seinfeld</w>\": 33706,\n  \"seis\": 25559,\n  \"seismic</w>\": 38459,\n  \"seiz\": 22171,\n  \"seize</w>\": 26624,\n  \"seized</w>\": 15826,\n  \"seizure</w>\": 36804,\n  \"seizures</w>\": 47199,\n  \"sek\": 45515,\n  \"sek</w>\": 25880,\n  \"sel\": 1000,\n  \"sel</w>\": 4098,\n  \"sela</w>\": 47006,\n  \"selamat</w>\": 37692,\n  \"selangor</w>\": 44402,\n  \"selby</w>\": 43546,\n  \"selca</w>\": 38606,\n  \"selcaday</w>\": 35924,\n  \"seldom</w>\": 48322,\n  \"sele\": 29137,\n  \"selec\": 3014,\n  \"select</w>\": 8690,\n  \"selected</w>\": 6881,\n  \"selecting</w>\": 32696,\n  \"selection</w>\": 6724,\n  \"selections</w>\": 24099,\n  \"selective</w>\": 28686,\n  \"selects</w>\": 32902,\n  \"selen\": 19970,\n  \"selena</w>\": 14677,\n  \"selenagomez</w>\": 27653,\n  \"seley</w>\": 30556,\n  \"self\": 10139,\n  \"self</w>\": 1322,\n  \"selfcare</w>\": 39560,\n  \"selfi\": 3007,\n  \"selfie\": 26735,\n  \"selfie</w>\": 3666,\n  \"selfies\": 46058,\n  \"selfies</w>\": 10050,\n  \"selfish</w>\": 26907,\n  \"selfless</w>\": 34236,\n  \"sell\": 10279,\n  \"sell</w>\": 5119,\n  \"seller</w>\": 11779,\n  \"sellers</w>\": 16562,\n  \"selling</w>\": 4396,\n  \"sells</w>\": 14306,\n  \"selma</w>\": 36652,\n  \"sels</w>\": 42070,\n  \"selves</w>\": 4505,\n  \"sely</w>\": 8402,\n  \"sem\": 8645,\n  \"sem</w>\": 17106,\n  \"sema</w>\": 31816,\n  \"seman\": 29119,\n  \"seman</w>\": 28378,\n  \"semana</w>\": 41780,\n  \"semb\": 36054,\n  \"seme\": 10855,\n  \"sement</w>\": 10714,\n  \"sements</w>\": 31449,\n  \"semester</w>\": 11905,\n  \"semi\": 11023,\n  \"semi</w>\": 6684,\n  \"semic\": 26967,\n  \"semicon\": 34315,\n  \"semiconduc\": 35646,\n  \"semiconductor</w>\": 43551,\n  \"semifinal</w>\": 22935,\n  \"semifinals</w>\": 21863,\n  \"semin\": 5595,\n  \"seminar</w>\": 7269,\n  \"seminars</w>\": 34870,\n  \"seminary</w>\": 31655,\n  \"seminole</w>\": 42956,\n  \"semis</w>\": 24013,\n  \"semit\": 22628,\n  \"semite</w>\": 23721,\n  \"semitic</w>\": 34894,\n  \"semitism</w>\": 25911,\n  \"semper\": 47391,\n  \"sen\": 1057,\n  \"sen</w>\": 2249,\n  \"sena</w>\": 21584,\n  \"senate\": 30703,\n  \"senate</w>\": 6843,\n  \"senator\": 20871,\n  \"senator</w>\": 8495,\n  \"senators</w>\": 16889,\n  \"send\": 27684,\n  \"send</w>\": 3625,\n  \"sending</w>\": 6985,\n  \"sends</w>\": 10817,\n  \"sene\": 25269,\n  \"seneca</w>\": 33419,\n  \"senegal</w>\": 28255,\n  \"senew\": 49313,\n  \"seng\": 43022,\n  \"seng</w>\": 29971,\n  \"senior\": 19865,\n  \"senior</w>\": 3415,\n  \"seniors</w>\": 8138,\n  \"senna</w>\": 36195,\n  \"senpai</w>\": 46562,\n  \"sens\": 5218,\n  \"sens</w>\": 22837,\n  \"sensation</w>\": 19383,\n  \"sensational</w>\": 23051,\n  \"sense\": 29162,\n  \"sense</w>\": 4747,\n  \"sensei</w>\": 36158,\n  \"senses</w>\": 21809,\n  \"sensi\": 38802,\n  \"sensible</w>\": 30635,\n  \"sensing</w>\": 29236,\n  \"sensiti\": 20531,\n  \"sensitive</w>\": 13734,\n  \"sensitivity</w>\": 27788,\n  \"sensor</w>\": 15330,\n  \"sensors</w>\": 20356,\n  \"sensory</w>\": 21831,\n  \"sensu\": 28157,\n  \"sensual</w>\": 40860,\n  \"sent\": 6200,\n  \"sent</w>\": 3676,\n  \"sentence</w>\": 12737,\n  \"sentenced</w>\": 17773,\n  \"sentences</w>\": 25858,\n  \"sentencing</w>\": 34394,\n  \"senti\": 19042,\n  \"sentim\": 25102,\n  \"sentiment</w>\": 25949,\n  \"sentimental</w>\": 40070,\n  \"sentiments</w>\": 47450,\n  \"sentin\": 20042,\n  \"sentinel</w>\": 23123,\n  \"senting</w>\": 3924,\n  \"seo\": 24743,\n  \"seo</w>\": 8622,\n  \"seok\": 34697,\n  \"seok</w>\": 22482,\n  \"seokjin</w>\": 45584,\n  \"seoul</w>\": 13253,\n  \"sep\": 3212,\n  \"sep</w>\": 10434,\n  \"separ\": 6859,\n  \"separate</w>\": 13886,\n  \"separated</w>\": 22163,\n  \"separately</w>\": 41904,\n  \"separates</w>\": 45365,\n  \"separati\": 39377,\n  \"separating</w>\": 43480,\n  \"separation</w>\": 22007,\n  \"sephora</w>\": 38414,\n  \"sepsis</w>\": 40205,\n  \"sept</w>\": 5380,\n  \"septe\": 3672,\n  \"september</w>\": 3707,\n  \"septic</w>\": 34690,\n  \"sepul\": 47360,\n  \"seq</w>\": 44379,\n  \"sequ\": 5491,\n  \"seque\": 44662,\n  \"sequel</w>\": 15701,\n  \"sequence</w>\": 18833,\n  \"sequences</w>\": 47306,\n  \"sequencing</w>\": 33484,\n  \"sequo\": 32781,\n  \"sequoia</w>\": 42404,\n  \"ser\": 803,\n  \"ser</w>\": 2771,\n  \"sera</w>\": 28250,\n  \"serbia</w>\": 19038,\n  \"serbian</w>\": 33687,\n  \"sere\": 35770,\n  \"seren\": 7880,\n  \"serena</w>\": 19519,\n  \"serenawilliams</w>\": 48316,\n  \"serendip\": 45805,\n  \"serendipity</w>\": 49386,\n  \"serene</w>\": 28269,\n  \"serenity</w>\": 24187,\n  \"serge\": 13477,\n  \"serge</w>\": 35700,\n  \"sergeant</w>\": 22049,\n  \"sergei</w>\": 39870,\n  \"sergey</w>\": 35390,\n  \"sergi\": 47675,\n  \"sergio</w>\": 18359,\n  \"seri\": 2763,\n  \"seri</w>\": 37509,\n  \"serial</w>\": 14216,\n  \"serie</w>\": 19752,\n  \"seriea</w>\": 32660,\n  \"series</w>\": 1857,\n  \"serious\": 47421,\n  \"serious</w>\": 4770,\n  \"seriously</w>\": 4885,\n  \"sermon</w>\": 24884,\n  \"sero\": 48883,\n  \"serpent\": 37084,\n  \"serpent</w>\": 35364,\n  \"serra</w>\": 39851,\n  \"serrano</w>\": 44236,\n  \"sers</w>\": 13509,\n  \"serum</w>\": 25385,\n  \"serv\": 1297,\n  \"serv</w>\": 24571,\n  \"servant</w>\": 20810,\n  \"servants</w>\": 29652,\n  \"serve\": 39202,\n  \"serve</w>\": 2838,\n  \"served</w>\": 4740,\n  \"server\": 36458,\n  \"server</w>\": 8398,\n  \"serverless</w>\": 49243,\n  \"servers</w>\": 22262,\n  \"serves</w>\": 9915,\n  \"servic\": 27115,\n  \"service\": 21496,\n  \"service</w>\": 2086,\n  \"serviced</w>\": 44687,\n  \"services</w>\": 3100,\n  \"servicing</w>\": 41300,\n  \"serving</w>\": 5722,\n  \"sery</w>\": 14279,\n  \"ses\": 23708,\n  \"ses</w>\": 1386,\n  \"sesame</w>\": 21706,\n  \"sese</w>\": 37128,\n  \"sesh</w>\": 24274,\n  \"session</w>\": 2550,\n  \"sessions</w>\": 6327,\n  \"set\": 7965,\n  \"set</w>\": 1167,\n  \"setback</w>\": 43605,\n  \"seth\": 20005,\n  \"seth</w>\": 11870,\n  \"sethu\": 38933,\n  \"setlist</w>\": 33141,\n  \"seton</w>\": 43799,\n  \"sets</w>\": 4650,\n  \"sett\": 4984,\n  \"sett</w>\": 17567,\n  \"sette</w>\": 14613,\n  \"setter</w>\": 23153,\n  \"settes</w>\": 44145,\n  \"setti</w>\": 45170,\n  \"setting</w>\": 5264,\n  \"settings</w>\": 18628,\n  \"settle</w>\": 15075,\n  \"settled</w>\": 18310,\n  \"settlement</w>\": 16494,\n  \"settlements</w>\": 36605,\n  \"settlers</w>\": 35671,\n  \"settles</w>\": 41498,\n  \"settling</w>\": 22036,\n  \"setup</w>\": 11092,\n  \"seu</w>\": 31539,\n  \"seul\": 48975,\n  \"seum</w>\": 18838,\n  \"seun\": 24209,\n  \"seung\": 32393,\n  \"seung</w>\": 33711,\n  \"seungri</w>\": 41627,\n  \"seuss</w>\": 34441,\n  \"sev\": 26585,\n  \"sev</w>\": 37600,\n  \"seva</w>\": 42604,\n  \"seve\": 21458,\n  \"seve</w>\": 22468,\n  \"sevel\": 17439,\n  \"seven\": 7874,\n  \"seven</w>\": 5757,\n  \"sevens</w>\": 29911,\n  \"sevent\": 43048,\n  \"seventeen</w>\": 19337,\n  \"seventh</w>\": 17568,\n  \"seventy</w>\": 47170,\n  \"sever\": 3250,\n  \"sever</w>\": 45557,\n  \"several</w>\": 5560,\n  \"severance</w>\": 26194,\n  \"severe</w>\": 6215,\n  \"severely</w>\": 24417,\n  \"severn</w>\": 34626,\n  \"severy\": 34207,\n  \"sevilla</w>\": 24947,\n  \"seville</w>\": 34988,\n  \"sew</w>\": 28640,\n  \"sewage</w>\": 32777,\n  \"sewer</w>\": 28294,\n  \"sewing</w>\": 15974,\n  \"sewn</w>\": 42118,\n  \"sex\": 3548,\n  \"sex</w>\": 5937,\n  \"sexi\": 20562,\n  \"sexiest</w>\": 25426,\n  \"sexism</w>\": 32059,\n  \"sexist</w>\": 33047,\n  \"sexu\": 14741,\n  \"sexual</w>\": 6749,\n  \"sexuality</w>\": 21244,\n  \"sexually</w>\": 23032,\n  \"sexy\": 21019,\n  \"sexy</w>\": 38127,\n  \"sey\": 6317,\n  \"sey</w>\": 2258,\n  \"seychel\": 36809,\n  \"seychelles</w>\": 38519,\n  \"seye</w>\": 35604,\n  \"seym\": 22657,\n  \"seymour</w>\": 25850,\n  \"seys</w>\": 15081,\n  \"sez</w>\": 42377,\n  \"seÃ±\": 43368,\n  \"sf\": 4435,\n  \"sf</w>\": 4915,\n  \"sfa</w>\": 32675,\n  \"sfam</w>\": 37649,\n  \"sfb</w>\": 27930,\n  \"sfc</w>\": 14129,\n  \"sfest</w>\": 49024,\n  \"sff</w>\": 42056,\n  \"sfgiants</w>\": 20923,\n  \"sfield</w>\": 11801,\n  \"sfo</w>\": 39182,\n  \"sfootball</w>\": 45259,\n  \"sfor\": 9115,\n  \"sford</w>\": 28917,\n  \"sforsale</w>\": 28888,\n  \"sfw</w>\": 18073,\n  \"sfx</w>\": 37995,\n  \"sg\": 9599,\n  \"sg</w>\": 7611,\n  \"sga</w>\": 33049,\n  \"sgate</w>\": 27558,\n  \"sgh</w>\": 47590,\n  \"sgo\": 5393,\n  \"sgo</w>\": 21044,\n  \"sgt</w>\": 13748,\n  \"sh\": 552,\n  \"sh</w>\": 849,\n  \"sha\": 1514,\n  \"sha</w>\": 3337,\n  \"shaa</w>\": 44221,\n  \"shab\": 8323,\n  \"shabbat</w>\": 38042,\n  \"shabby</w>\": 28838,\n  \"shack\": 23866,\n  \"shack</w>\": 18785,\n  \"shad\": 3182,\n  \"shad</w>\": 23874,\n  \"shade\": 34554,\n  \"shade</w>\": 10097,\n  \"shaded</w>\": 43506,\n  \"shades\": 46608,\n  \"shades</w>\": 9270,\n  \"shadesof\": 45180,\n  \"shading</w>\": 37348,\n  \"shado\": 9325,\n  \"shadow\": 15243,\n  \"shadow</w>\": 7068,\n  \"shadowhun\": 19931,\n  \"shadowhunters</w>\": 24834,\n  \"shadowing</w>\": 46092,\n  \"shadows</w>\": 12971,\n  \"shady</w>\": 22158,\n  \"shaf\": 12032,\n  \"shaft</w>\": 21545,\n  \"shag\": 22439,\n  \"shaggy</w>\": 42662,\n  \"shah\": 13203,\n  \"shah</w>\": 8439,\n  \"shahe\": 23643,\n  \"shaheed</w>\": 30060,\n  \"shaheer</w>\": 43969,\n  \"shahi</w>\": 46972,\n  \"shahid\": 25696,\n  \"shahid</w>\": 27138,\n  \"shahidkapoor</w>\": 29892,\n  \"shahzad</w>\": 45915,\n  \"shai</w>\": 47941,\n  \"shaikh</w>\": 45712,\n  \"shail\": 37603,\n  \"shair</w>\": 43135,\n  \"shak\": 8385,\n  \"shake\": 8206,\n  \"shake</w>\": 8251,\n  \"shaken</w>\": 38237,\n  \"shaker</w>\": 26210,\n  \"shakers</w>\": 38411,\n  \"shakes</w>\": 19668,\n  \"shakespe\": 9890,\n  \"shakespeare\": 22499,\n  \"shakespeare</w>\": 12488,\n  \"shakespearesunday</w>\": 32320,\n  \"shaking</w>\": 19101,\n  \"shakira</w>\": 40795,\n  \"shakti\": 48593,\n  \"shakti</w>\": 32458,\n  \"shakur</w>\": 48915,\n  \"shal\": 15056,\n  \"shal</w>\": 28175,\n  \"shale</w>\": 32864,\n  \"shall</w>\": 4742,\n  \"shallow</w>\": 23730,\n  \"shalom</w>\": 31339,\n  \"sham\": 6453,\n  \"sham</w>\": 9005,\n  \"shaman</w>\": 48727,\n  \"shambles</w>\": 40799,\n  \"shame\": 14776,\n  \"shame</w>\": 7593,\n  \"shameful</w>\": 28283,\n  \"shameless</w>\": 25380,\n  \"shaming</w>\": 40553,\n  \"shampoo</w>\": 23944,\n  \"shamrock</w>\": 34199,\n  \"shan\": 5171,\n  \"shan</w>\": 8834,\n  \"shana</w>\": 44835,\n  \"shand\": 29101,\n  \"shane\": 26863,\n  \"shane</w>\": 11572,\n  \"shang\": 11141,\n  \"shanghai</w>\": 12742,\n  \"shani\": 46665,\n  \"shank</w>\": 24685,\n  \"shankar</w>\": 24108,\n  \"shann\": 9932,\n  \"shannon\": 22842,\n  \"shannon</w>\": 13581,\n  \"shant\": 36610,\n  \"shap\": 5581,\n  \"shape\": 26925,\n  \"shape</w>\": 6448,\n  \"shaped</w>\": 10127,\n  \"shapes</w>\": 15377,\n  \"shaping</w>\": 18632,\n  \"shapiro</w>\": 32110,\n  \"shaq\": 46402,\n  \"shaq</w>\": 26843,\n  \"shar\": 1669,\n  \"shar</w>\": 36542,\n  \"shara</w>\": 48849,\n  \"sharapo\": 36489,\n  \"sharapova</w>\": 36671,\n  \"shard</w>\": 42207,\n  \"share\": 7585,\n  \"share</w>\": 1978,\n  \"shared</w>\": 5368,\n  \"shareholder</w>\": 38241,\n  \"shareholders</w>\": 34778,\n  \"sharepoint</w>\": 39213,\n  \"shares</w>\": 4974,\n  \"sharethe\": 49277,\n  \"shareyour\": 45890,\n  \"shari\": 27738,\n  \"shari</w>\": 47390,\n  \"sharia</w>\": 37244,\n  \"sharif</w>\": 15501,\n  \"sharing</w>\": 3567,\n  \"sharjah</w>\": 33420,\n  \"shark\": 15836,\n  \"shark</w>\": 7980,\n  \"sharks</w>\": 10047,\n  \"sharkweek</w>\": 39571,\n  \"sharma</w>\": 10105,\n  \"sharon\": 28722,\n  \"sharon</w>\": 14138,\n  \"sharp\": 17126,\n  \"sharp</w>\": 8157,\n  \"sharpe</w>\": 34374,\n  \"sharpen\": 41465,\n  \"sharpie</w>\": 46858,\n  \"sharply</w>\": 37185,\n  \"shasta</w>\": 46727,\n  \"shat\": 12169,\n  \"shat</w>\": 44388,\n  \"shatter</w>\": 45008,\n  \"shattered</w>\": 26820,\n  \"shau\": 13750,\n  \"shaun\": 23446,\n  \"shaun</w>\": 16669,\n  \"shav\": 11410,\n  \"shave</w>\": 17735,\n  \"shaved</w>\": 25571,\n  \"shaving</w>\": 24261,\n  \"shaw\": 6122,\n  \"shaw</w>\": 6805,\n  \"shawa</w>\": 46413,\n  \"shawl</w>\": 35132,\n  \"shawn\": 16677,\n  \"shawn</w>\": 10970,\n  \"shawnee</w>\": 48060,\n  \"shawnmendes</w>\": 27277,\n  \"shawty</w>\": 38026,\n  \"shay\": 10778,\n  \"shay</w>\": 18361,\n  \"shaykh</w>\": 47223,\n  \"shaz\": 18618,\n  \"shazam</w>\": 29063,\n  \"shc</w>\": 43419,\n  \"shd</w>\": 37729,\n  \"she\": 1729,\n  \"she</w>\": 1043,\n  \"shea</w>\": 20407,\n  \"shead\": 44287,\n  \"shead</w>\": 20434,\n  \"shealth\": 41743,\n  \"shealth</w>\": 22197,\n  \"shear\": 27974,\n  \"shear</w>\": 32108,\n  \"shearer</w>\": 40505,\n  \"sheath</w>\": 45637,\n  \"shed\": 16586,\n  \"shed</w>\": 1492,\n  \"shedding</w>\": 33608,\n  \"sheds</w>\": 25921,\n  \"shee\": 23450,\n  \"shee</w>\": 34321,\n  \"sheed</w>\": 26105,\n  \"sheehan</w>\": 41809,\n  \"sheen</w>\": 25025,\n  \"sheep\": 23604,\n  \"sheep</w>\": 9629,\n  \"sheer</w>\": 17577,\n  \"sheeran</w>\": 18561,\n  \"sheet</w>\": 7298,\n  \"sheets</w>\": 12744,\n  \"shef\": 8237,\n  \"sheff\": 38844,\n  \"sheff</w>\": 43821,\n  \"sheffiel\": 26940,\n  \"sheffield\": 41763,\n  \"sheffield</w>\": 10420,\n  \"sheffieldissuper</w>\": 33628,\n  \"sheh\": 31667,\n  \"sheikh</w>\": 15031,\n  \"sheil\": 42765,\n  \"sheila</w>\": 25734,\n  \"shek</w>\": 33285,\n  \"shel\": 3159,\n  \"shelby\": 36906,\n  \"shelby</w>\": 16885,\n  \"sheldon</w>\": 25079,\n  \"shelf</w>\": 10955,\n  \"shell\": 23374,\n  \"shell</w>\": 6648,\n  \"shelley</w>\": 22497,\n  \"shelling</w>\": 43166,\n  \"shells</w>\": 19265,\n  \"shelly</w>\": 37461,\n  \"shelter</w>\": 8599,\n  \"sheltered</w>\": 48070,\n  \"shelters</w>\": 24312,\n  \"shelton</w>\": 24471,\n  \"shelves</w>\": 16225,\n  \"shem</w>\": 40299,\n  \"shen\": 10154,\n  \"shen</w>\": 31098,\n  \"shenan\": 20965,\n  \"shenando\": 44666,\n  \"shenanigans</w>\": 26590,\n  \"shenko</w>\": 39751,\n  \"shenmue</w>\": 48279,\n  \"shenzhen</w>\": 38970,\n  \"shep\": 33757,\n  \"shep</w>\": 44857,\n  \"shepard</w>\": 26810,\n  \"shepher\": 11008,\n  \"shepherd</w>\": 13242,\n  \"shepherds</w>\": 42792,\n  \"sheppard</w>\": 37304,\n  \"sher\": 3570,\n  \"sher</w>\": 4510,\n  \"sheraton</w>\": 39400,\n  \"shere</w>\": 21507,\n  \"sheri\": 9235,\n  \"sheridan</w>\": 27085,\n  \"sheriff</w>\": 10309,\n  \"sherlock</w>\": 17294,\n  \"sherman</w>\": 17822,\n  \"sherry\": 44348,\n  \"sherry</w>\": 24689,\n  \"shers</w>\": 14141,\n  \"sherwood</w>\": 24527,\n  \"sheryl</w>\": 39773,\n  \"shes\": 45514,\n  \"shes</w>\": 2502,\n  \"shet\": 15850,\n  \"shetland</w>\": 29595,\n  \"shetty</w>\": 25533,\n  \"shev\": 45182,\n  \"sheva</w>\": 45132,\n  \"shh</w>\": 35025,\n  \"shhh</w>\": 36932,\n  \"shi\": 823,\n  \"shi</w>\": 3533,\n  \"shia</w>\": 23791,\n  \"shibu\": 36177,\n  \"shibuya</w>\": 41623,\n  \"shie</w>\": 26638,\n  \"shiel\": 33413,\n  \"shield</w>\": 8670,\n  \"shields</w>\": 19085,\n  \"shies</w>\": 35312,\n  \"shif\": 35317,\n  \"shift\": 43767,\n  \"shift</w>\": 6905,\n  \"shifted</w>\": 34429,\n  \"shifter</w>\": 48944,\n  \"shifting</w>\": 21992,\n  \"shifts</w>\": 23957,\n  \"shik</w>\": 36980,\n  \"shil\": 14370,\n  \"shill\": 32121,\n  \"shill</w>\": 30090,\n  \"shilpa\": 47062,\n  \"shilpa</w>\": 40690,\n  \"shim\": 11986,\n  \"shim</w>\": 32780,\n  \"shima</w>\": 14382,\n  \"shimano</w>\": 48904,\n  \"shimi</w>\": 40517,\n  \"shimmer</w>\": 38792,\n  \"shin\": 5664,\n  \"shin</w>\": 11784,\n  \"shinde</w>\": 41516,\n  \"shine\": 17582,\n  \"shine</w>\": 3780,\n  \"shinee</w>\": 19660,\n  \"shines</w>\": 16015,\n  \"shing\": 38641,\n  \"shing</w>\": 1743,\n  \"shining</w>\": 10485,\n  \"shino\": 43074,\n  \"shiny</w>\": 12190,\n  \"ship\": 7645,\n  \"ship</w>\": 1158,\n  \"shipment</w>\": 28553,\n  \"shipp\": 34709,\n  \"shipped</w>\": 15279,\n  \"shippers</w>\": 44789,\n  \"shipping</w>\": 5721,\n  \"ships</w>\": 3262,\n  \"shipwreck</w>\": 48878,\n  \"shipy\": 26828,\n  \"shipyard</w>\": 31273,\n  \"shir\": 1956,\n  \"shiraz</w>\": 35618,\n  \"shire\": 11975,\n  \"shire</w>\": 2968,\n  \"shirehour</w>\": 32456,\n  \"shirley</w>\": 18189,\n  \"shiro</w>\": 26048,\n  \"shirt\": 27576,\n  \"shirt</w>\": 2523,\n  \"shirtless</w>\": 28959,\n  \"shirts</w>\": 5803,\n  \"shistory</w>\": 34979,\n  \"shiv\": 18042,\n  \"shiv</w>\": 37121,\n  \"shiva\": 33881,\n  \"shiva</w>\": 21174,\n  \"shka</w>\": 38944,\n  \"shld</w>\": 49359,\n  \"shma</w>\": 48074,\n  \"shment</w>\": 8802,\n  \"shments</w>\": 18822,\n  \"sho\": 719,\n  \"sho</w>\": 13756,\n  \"shock\": 19617,\n  \"shock</w>\": 8736,\n  \"shocked</w>\": 15787,\n  \"shocker</w>\": 37971,\n  \"shockey</w>\": 22258,\n  \"shocking</w>\": 13394,\n  \"shocks</w>\": 31886,\n  \"shoe\": 16308,\n  \"shoe</w>\": 7342,\n  \"shoes\": 49391,\n  \"shoes</w>\": 4079,\n  \"shol\": 21472,\n  \"sholm</w>\": 44139,\n  \"shome</w>\": 42701,\n  \"shon\": 19526,\n  \"shon</w>\": 37621,\n  \"shone</w>\": 47173,\n  \"shoo\": 1975,\n  \"shook</w>\": 20730,\n  \"shoops</w>\": 29956,\n  \"shoot\": 12531,\n  \"shoot</w>\": 3704,\n  \"shooter</w>\": 13645,\n  \"shooters</w>\": 31902,\n  \"shooting</w>\": 3992,\n  \"shootings</w>\": 26753,\n  \"shootout</w>\": 20666,\n  \"shoots</w>\": 14144,\n  \"shop\": 5738,\n  \"shop</w>\": 1557,\n  \"shopify</w>\": 47949,\n  \"shoplocal</w>\": 21775,\n  \"shopp\": 38486,\n  \"shoppe</w>\": 38236,\n  \"shopped</w>\": 28088,\n  \"shopper</w>\": 24346,\n  \"shoppers</w>\": 22316,\n  \"shopping\": 42101,\n  \"shopping</w>\": 4266,\n  \"shops</w>\": 6467,\n  \"shopsmall</w>\": 35942,\n  \"shor\": 3209,\n  \"shore\": 14717,\n  \"shore</w>\": 5928,\n  \"shored\": 33140,\n  \"shoreditch</w>\": 35042,\n  \"shoreline</w>\": 34807,\n  \"shores</w>\": 18102,\n  \"short\": 6803,\n  \"short</w>\": 3005,\n  \"shortage</w>\": 19910,\n  \"shortages</w>\": 38730,\n  \"shortcuts</w>\": 45793,\n  \"shorten</w>\": 41711,\n  \"shorter</w>\": 20350,\n  \"shortest</w>\": 33717,\n  \"shortfilm</w>\": 37204,\n  \"shorth\": 37397,\n  \"shortlist</w>\": 28163,\n  \"shortlisted</w>\": 20631,\n  \"shortly</w>\": 11967,\n  \"shorts</w>\": 9680,\n  \"shorty</w>\": 33502,\n  \"shot\": 9805,\n  \"shot</w>\": 2000,\n  \"shotel</w>\": 42365,\n  \"shotgun</w>\": 21643,\n  \"shots</w>\": 5342,\n  \"shou\": 3890,\n  \"shoul\": 29847,\n  \"should\": 14947,\n  \"should</w>\": 1535,\n  \"shoulder</w>\": 8476,\n  \"shoulders</w>\": 18738,\n  \"shouldn</w>\": 9416,\n  \"shour</w>\": 20025,\n  \"shouse</w>\": 28671,\n  \"shout\": 7335,\n  \"shout</w>\": 5214,\n  \"shouted</w>\": 44397,\n  \"shouting</w>\": 26464,\n  \"shoutout</w>\": 8274,\n  \"shouts</w>\": 26709,\n  \"shovel</w>\": 31778,\n  \"show\": 2133,\n  \"show</w>\": 1080,\n  \"showbiz</w>\": 34156,\n  \"showcas\": 14290,\n  \"showcase</w>\": 7265,\n  \"showcased</w>\": 35786,\n  \"showcases</w>\": 26266,\n  \"showcasing</w>\": 17036,\n  \"showdown</w>\": 15576,\n  \"showed</w>\": 7150,\n  \"shower</w>\": 7777,\n  \"showers</w>\": 9893,\n  \"showing</w>\": 3649,\n  \"shown</w>\": 8506,\n  \"showroom</w>\": 16821,\n  \"shows</w>\": 2665,\n  \"showtime\": 40576,\n  \"showtime</w>\": 15442,\n  \"showyour\": 46733,\n  \"shp</w>\": 38341,\n  \"shq</w>\": 21145,\n  \"shr\": 10118,\n  \"shra\": 21360,\n  \"shradd\": 28172,\n  \"shraddha\": 35208,\n  \"shraddhakapoor</w>\": 40385,\n  \"shre\": 12101,\n  \"shred\": 19756,\n  \"shred</w>\": 33017,\n  \"shredded</w>\": 31772,\n  \"shredding</w>\": 45534,\n  \"shree</w>\": 37410,\n  \"shrek</w>\": 35009,\n  \"shrews\": 26411,\n  \"shrewsbury</w>\": 30921,\n  \"shri\": 8838,\n  \"shri</w>\": 11424,\n  \"shrimp</w>\": 12727,\n  \"shrin\": 24865,\n  \"shrine</w>\": 16156,\n  \"shrink</w>\": 34957,\n  \"shrinking</w>\": 41243,\n  \"shrm</w>\": 44163,\n  \"shro\": 15259,\n  \"shroff</w>\": 32081,\n  \"shrop\": 22630,\n  \"shropshire</w>\": 26344,\n  \"shru\": 14911,\n  \"shrub</w>\": 41464,\n  \"shrubs</w>\": 47975,\n  \"shrun\": 46767,\n  \"shs</w>\": 16184,\n  \"sht</w>\": 44210,\n  \"shti</w>\": 38927,\n  \"shu\": 2872,\n  \"shu</w>\": 17651,\n  \"shua</w>\": 33771,\n  \"shub</w>\": 40552,\n  \"shud</w>\": 45782,\n  \"shuff\": 42641,\n  \"shuffle</w>\": 21681,\n  \"shui</w>\": 45473,\n  \"shuk\": 29927,\n  \"shukla</w>\": 46829,\n  \"shul\": 30721,\n  \"shum\": 37383,\n  \"shun\": 24479,\n  \"shun</w>\": 39594,\n  \"shur\": 41032,\n  \"shut\": 8702,\n  \"shut</w>\": 8282,\n  \"shutdown</w>\": 16051,\n  \"shutout</w>\": 24385,\n  \"shuts</w>\": 28313,\n  \"shutt\": 31866,\n  \"shutter\": 36235,\n  \"shutter</w>\": 33902,\n  \"shutters</w>\": 46894,\n  \"shutting</w>\": 31383,\n  \"shuttle</w>\": 15842,\n  \"shwar</w>\": 41640,\n  \"shy\": 22678,\n  \"shy</w>\": 9682,\n  \"si\": 564,\n  \"si</w>\": 2990,\n  \"sia</w>\": 2357,\n  \"siam\": 29686,\n  \"siam</w>\": 48248,\n  \"siamese</w>\": 43161,\n  \"sian\": 28510,\n  \"sian</w>\": 6221,\n  \"sians</w>\": 26583,\n  \"sias</w>\": 28645,\n  \"siber\": 22206,\n  \"siberia</w>\": 39969,\n  \"siberian</w>\": 34058,\n  \"sibl\": 14338,\n  \"sible</w>\": 14507,\n  \"sibling\": 43060,\n  \"sibling</w>\": 23779,\n  \"siblings</w>\": 17156,\n  \"sic\": 8278,\n  \"sic</w>\": 1118,\n  \"sica</w>\": 34125,\n  \"sical</w>\": 33875,\n  \"sichuan</w>\": 48950,\n  \"sicilian</w>\": 45292,\n  \"sicily</w>\": 23179,\n  \"sick\": 11143,\n  \"sick</w>\": 5359,\n  \"sickest</w>\": 47972,\n  \"sickle</w>\": 41459,\n  \"sickness</w>\": 28898,\n  \"sics</w>\": 26297,\n  \"sid\": 10117,\n  \"sid</w>\": 15119,\n  \"sidd\": 19842,\n  \"siddi\": 35227,\n  \"side\": 5869,\n  \"side</w>\": 1145,\n  \"sided</w>\": 21061,\n  \"sidekick</w>\": 44683,\n  \"sidel\": 43557,\n  \"sideline</w>\": 32056,\n  \"sidelines</w>\": 31046,\n  \"sider</w>\": 30581,\n  \"siders</w>\": 41249,\n  \"sides</w>\": 7578,\n  \"sideshow</w>\": 46789,\n  \"sidewalk</w>\": 23278,\n  \"sidewalks</w>\": 43583,\n  \"sideways</w>\": 35593,\n  \"siding</w>\": 38758,\n  \"sidney</w>\": 22598,\n  \"sie\": 8533,\n  \"sie</w>\": 5685,\n  \"sieg\": 49203,\n  \"siege</w>\": 18460,\n  \"siegel</w>\": 48559,\n  \"siem\": 18434,\n  \"siemens</w>\": 30147,\n  \"siempre</w>\": 44030,\n  \"siena</w>\": 33336,\n  \"sienna</w>\": 40373,\n  \"sier\": 10028,\n  \"sier</w>\": 7444,\n  \"sierra</w>\": 13552,\n  \"siers</w>\": 35923,\n  \"sies</w>\": 16367,\n  \"siest</w>\": 18323,\n  \"sif</w>\": 29300,\n  \"sig\": 872,\n  \"sig</w>\": 19145,\n  \"sigh\": 36303,\n  \"sigh</w>\": 15505,\n  \"sighs</w>\": 44579,\n  \"sight\": 16897,\n  \"sight</w>\": 6329,\n  \"sighted</w>\": 33034,\n  \"sighting</w>\": 17507,\n  \"sightings</w>\": 30004,\n  \"sights</w>\": 17364,\n  \"sightseeing</w>\": 34210,\n  \"sigma\": 45075,\n  \"sigma</w>\": 15697,\n  \"sign\": 5538,\n  \"sign</w>\": 2292,\n  \"signage</w>\": 21156,\n  \"signal</w>\": 10781,\n  \"signaling</w>\": 38492,\n  \"signalling</w>\": 48426,\n  \"signals</w>\": 17150,\n  \"signation</w>\": 24347,\n  \"signature</w>\": 9189,\n  \"signatures</w>\": 21865,\n  \"signed</w>\": 3163,\n  \"signee</w>\": 39778,\n  \"signi\": 34023,\n  \"signific\": 6374,\n  \"significance</w>\": 23769,\n  \"significant</w>\": 8735,\n  \"significantly</w>\": 16187,\n  \"signing</w>\": 4401,\n  \"signingday</w>\": 40282,\n  \"signings</w>\": 27731,\n  \"signs</w>\": 4659,\n  \"signup</w>\": 40791,\n  \"sigue</w>\": 49401,\n  \"sii</w>\": 36672,\n  \"sik\": 19974,\n  \"sik</w>\": 22413,\n  \"sika</w>\": 31144,\n  \"sikh</w>\": 21829,\n  \"sikhs</w>\": 45426,\n  \"sil\": 1556,\n  \"sil</w>\": 8315,\n  \"sila</w>\": 41754,\n  \"sile\": 37620,\n  \"silen\": 39048,\n  \"silence</w>\": 8462,\n  \"silenced</w>\": 45415,\n  \"silent\": 30352,\n  \"silent</w>\": 8487,\n  \"silently</w>\": 42640,\n  \"silhou\": 20589,\n  \"silhouette</w>\": 26149,\n  \"silic\": 23830,\n  \"silicon\": 32412,\n  \"silicon</w>\": 17888,\n  \"silicone</w>\": 28221,\n  \"silk\": 25891,\n  \"silk</w>\": 9743,\n  \"silky</w>\": 29554,\n  \"sill\": 42468,\n  \"sill</w>\": 48024,\n  \"silly</w>\": 11883,\n  \"silon</w>\": 31841,\n  \"sils</w>\": 39708,\n  \"silva</w>\": 16489,\n  \"silve\": 37697,\n  \"silver\": 7525,\n  \"silver</w>\": 3467,\n  \"silverado</w>\": 46160,\n  \"silverstone</w>\": 29666,\n  \"silvia</w>\": 37289,\n  \"sim\": 5026,\n  \"sim</w>\": 10740,\n  \"sima</w>\": 35871,\n  \"simba</w>\": 39492,\n  \"simcoe</w>\": 47148,\n  \"sime\": 28329,\n  \"simi</w>\": 38073,\n  \"simil\": 7202,\n  \"similar</w>\": 8547,\n  \"similarities</w>\": 34716,\n  \"simm\": 13001,\n  \"simmons</w>\": 14699,\n  \"simo</w>\": 37171,\n  \"simon\": 8796,\n  \"simon</w>\": 6668,\n  \"simona</w>\": 46277,\n  \"simone</w>\": 19062,\n  \"simons</w>\": 33097,\n  \"simp\": 2542,\n  \"simple\": 19018,\n  \"simple</w>\": 4129,\n  \"simpler</w>\": 35489,\n  \"simplest</w>\": 39588,\n  \"simpli\": 16868,\n  \"simplicity</w>\": 21262,\n  \"simplified</w>\": 36647,\n  \"simplify</w>\": 35479,\n  \"simply\": 25637,\n  \"simply</w>\": 6151,\n  \"simpson\": 41805,\n  \"simpson</w>\": 11750,\n  \"simpsons</w>\": 21092,\n  \"sims</w>\": 14021,\n  \"simul\": 9845,\n  \"simulated</w>\": 46395,\n  \"simulation</w>\": 18610,\n  \"simulator</w>\": 20821,\n  \"simultaneous</w>\": 48816,\n  \"simultaneously</w>\": 28575,\n  \"sin\": 1303,\n  \"sin</w>\": 3421,\n  \"sina</w>\": 19541,\n  \"sinai</w>\": 33226,\n  \"sinatra</w>\": 27262,\n  \"sinc</w>\": 30464,\n  \"since</w>\": 1855,\n  \"sincere\": 24513,\n  \"sincere</w>\": 24886,\n  \"sincerely</w>\": 25673,\n  \"sinclair</w>\": 23100,\n  \"sind\": 39598,\n  \"sind</w>\": 30877,\n  \"sindh</w>\": 20754,\n  \"sindia</w>\": 48038,\n  \"sine\": 22741,\n  \"sine</w>\": 33793,\n  \"sinfo</w>\": 47178,\n  \"sing\": 1387,\n  \"sing</w>\": 1197,\n  \"singapo\": 27861,\n  \"singapore\": 28879,\n  \"singapore</w>\": 6754,\n  \"singer\": 33880,\n  \"singer</w>\": 5108,\n  \"singers</w>\": 15613,\n  \"singersongwriter</w>\": 44585,\n  \"singh\": 19445,\n  \"singh</w>\": 5715,\n  \"singing</w>\": 5864,\n  \"single\": 19524,\n  \"single</w>\": 2688,\n  \"singles</w>\": 12025,\n  \"singleton</w>\": 46247,\n  \"singly</w>\": 16619,\n  \"sings</w>\": 13635,\n  \"singul\": 34003,\n  \"singular</w>\": 44009,\n  \"singularity</w>\": 48410,\n  \"sinha</w>\": 29416,\n  \"sini\": 41781,\n  \"sini</w>\": 26319,\n  \"sinister</w>\": 31313,\n  \"sink\": 37232,\n  \"sink</w>\": 14551,\n  \"sinking</w>\": 27949,\n  \"sinks</w>\": 32710,\n  \"sinn</w>\": 36315,\n  \"sinner</w>\": 45380,\n  \"sinners</w>\": 43436,\n  \"sino</w>\": 29759,\n  \"sins</w>\": 9345,\n  \"sinthe\": 30737,\n  \"sinu\": 37351,\n  \"sinus</w>\": 47535,\n  \"sio</w>\": 10807,\n  \"siob\": 40954,\n  \"siology</w>\": 46315,\n  \"sion\": 5676,\n  \"sion</w>\": 1015,\n  \"sional</w>\": 14533,\n  \"sionally</w>\": 30754,\n  \"sions</w>\": 4060,\n  \"sioux\": 44695,\n  \"sioux</w>\": 24954,\n  \"sip</w>\": 16096,\n  \"sipping</w>\": 28527,\n  \"sir\": 10708,\n  \"sir</w>\": 3846,\n  \"sire</w>\": 28450,\n  \"siren</w>\": 33026,\n  \"sirens</w>\": 35907,\n  \"siri\": 13986,\n  \"siri</w>\": 18394,\n  \"sirius\": 23574,\n  \"sirius</w>\": 34999,\n  \"siriusxm</w>\": 29833,\n  \"sirloin</w>\": 46828,\n  \"sis\": 18132,\n  \"sis</w>\": 2580,\n  \"sisd</w>\": 27132,\n  \"sisi</w>\": 37892,\n  \"siss\": 42929,\n  \"sissy</w>\": 27564,\n  \"sist</w>\": 20520,\n  \"sista</w>\": 37448,\n  \"sister\": 17417,\n  \"sister</w>\": 3677,\n  \"sisterhood</w>\": 37313,\n  \"sisters</w>\": 6404,\n  \"sit\": 7387,\n  \"sit</w>\": 4037,\n  \"sitcom</w>\": 30426,\n  \"site\": 26792,\n  \"site</w>\": 1988,\n  \"sites</w>\": 7236,\n  \"sith</w>\": 41499,\n  \"sito</w>\": 42613,\n  \"sits</w>\": 12726,\n  \"sitt\": 42988,\n  \"sitter</w>\": 40777,\n  \"sittin</w>\": 40887,\n  \"sitting</w>\": 4919,\n  \"situ\": 5562,\n  \"situ</w>\": 42536,\n  \"situated</w>\": 22030,\n  \"situation</w>\": 7144,\n  \"situations</w>\": 19096,\n  \"sity\": 38177,\n  \"sity</w>\": 5477,\n  \"siu</w>\": 40174,\n  \"sium</w>\": 8090,\n  \"sius</w>\": 27595,\n  \"siva</w>\": 20991,\n  \"sivan</w>\": 36931,\n  \"sive\": 23572,\n  \"sive</w>\": 1875,\n  \"sively</w>\": 10343,\n  \"siveness</w>\": 39667,\n  \"sives</w>\": 23896,\n  \"sivity</w>\": 42738,\n  \"siwon</w>\": 29055,\n  \"six\": 5968,\n  \"six</w>\": 4093,\n  \"sixers</w>\": 25941,\n  \"sixteen</w>\": 28677,\n  \"sixth</w>\": 12909,\n  \"sixties</w>\": 44948,\n  \"sixty</w>\": 32588,\n  \"siya</w>\": 44440,\n  \"size\": 38377,\n  \"size</w>\": 3235,\n  \"sized</w>\": 9832,\n  \"sizes</w>\": 10253,\n  \"sizing</w>\": 28330,\n  \"sizz\": 23778,\n  \"sizzle</w>\": 47890,\n  \"sizzling</w>\": 35799,\n  \"sj\": 7536,\n  \"sj</w>\": 16010,\n  \"sjo\": 42012,\n  \"sk\": 909,\n  \"sk</w>\": 2058,\n  \"ska</w>\": 7495,\n  \"skag\": 31948,\n  \"skan\": 46772,\n  \"skar\": 27587,\n  \"skar</w>\": 26835,\n  \"skate\": 13740,\n  \"skate</w>\": 12745,\n  \"skateboard</w>\": 31777,\n  \"skateboarding</w>\": 31352,\n  \"skater</w>\": 30337,\n  \"skaters</w>\": 39824,\n  \"skates</w>\": 31479,\n  \"skc</w>\": 44551,\n  \"ske\": 6261,\n  \"ske</w>\": 25516,\n  \"skel\": 36564,\n  \"skelet\": 27075,\n  \"skeletal</w>\": 37369,\n  \"skeleton</w>\": 20062,\n  \"skeletons</w>\": 48874,\n  \"skell</w>\": 40801,\n  \"skep\": 27772,\n  \"skeptical</w>\": 44934,\n  \"sker\": 37640,\n  \"sker</w>\": 33600,\n  \"sket\": 3744,\n  \"sketch\": 11767,\n  \"sketch</w>\": 5269,\n  \"sketchbook</w>\": 18899,\n  \"sketched</w>\": 38581,\n  \"sketches</w>\": 17622,\n  \"sketching</w>\": 23228,\n  \"sketchy</w>\": 41582,\n  \"skey</w>\": 37453,\n  \"ski\": 3327,\n  \"ski</w>\": 3428,\n  \"skid\": 36574,\n  \"skid</w>\": 32099,\n  \"skier</w>\": 42585,\n  \"skies</w>\": 7244,\n  \"skiing</w>\": 14400,\n  \"skil\": 24543,\n  \"skill\": 15598,\n  \"skill</w>\": 10604,\n  \"skilled</w>\": 17535,\n  \"skillet</w>\": 40568,\n  \"skills</w>\": 4113,\n  \"skim\": 33191,\n  \"skin\": 5821,\n  \"skin</w>\": 3575,\n  \"skincare</w>\": 12648,\n  \"skine</w>\": 37300,\n  \"sking\": 46215,\n  \"skinned</w>\": 42199,\n  \"skinner</w>\": 30261,\n  \"skinny\": 42729,\n  \"skinny</w>\": 15457,\n  \"skins</w>\": 11594,\n  \"skip\": 39793,\n  \"skip</w>\": 14296,\n  \"skipped</w>\": 40639,\n  \"skipper</w>\": 22226,\n  \"skipping</w>\": 34867,\n  \"skir\": 8919,\n  \"skirt</w>\": 12386,\n  \"skirts</w>\": 24840,\n  \"skis</w>\": 32843,\n  \"skit</w>\": 43573,\n  \"skitchen</w>\": 42820,\n  \"skittles</w>\": 43213,\n  \"sko\": 15141,\n  \"sko</w>\": 23493,\n  \"skoda</w>\": 38668,\n  \"skool</w>\": 26743,\n  \"skril\": 43149,\n  \"skrillex</w>\": 43651,\n  \"sks</w>\": 48136,\n  \"sku\": 10836,\n  \"skul\": 17561,\n  \"skull\": 34068,\n  \"skull</w>\": 12092,\n  \"skulls</w>\": 31804,\n  \"skunk</w>\": 42194,\n  \"sky\": 3075,\n  \"sky</w>\": 2390,\n  \"skybet\": 45540,\n  \"skye</w>\": 21475,\n  \"skyl\": 43554,\n  \"skylar</w>\": 45411,\n  \"skyline</w>\": 14606,\n  \"skymap</w>\": 41734,\n  \"skynews</w>\": 40977,\n  \"skype</w>\": 17069,\n  \"skyrim</w>\": 33693,\n  \"skysports\": 39845,\n  \"skysports</w>\": 46725,\n  \"skywalker</w>\": 32936,\n  \"sl\": 2621,\n  \"sl</w>\": 7489,\n  \"sla\": 2725,\n  \"sla</w>\": 26707,\n  \"slab</w>\": 24241,\n  \"slabs</w>\": 42818,\n  \"slack\": 37108,\n  \"slack</w>\": 30142,\n  \"slade</w>\": 33546,\n  \"slain</w>\": 35972,\n  \"slalom</w>\": 43540,\n  \"slam\": 14891,\n  \"slam</w>\": 10131,\n  \"slammed</w>\": 29772,\n  \"slams</w>\": 18907,\n  \"slan\": 44663,\n  \"slan</w>\": 47193,\n  \"sland</w>\": 11294,\n  \"slang</w>\": 33655,\n  \"slap\": 48830,\n  \"slap</w>\": 21751,\n  \"slapped</w>\": 38861,\n  \"slaps</w>\": 46796,\n  \"slash</w>\": 19749,\n  \"slat\": 38966,\n  \"slate</w>\": 17919,\n  \"slated</w>\": 36094,\n  \"slater</w>\": 25968,\n  \"slaugh\": 26782,\n  \"slaughter</w>\": 19815,\n  \"slaughtered</w>\": 46615,\n  \"slav</w>\": 47292,\n  \"slava</w>\": 41797,\n  \"slave</w>\": 14029,\n  \"slavery</w>\": 15754,\n  \"slaves</w>\": 23833,\n  \"slaw</w>\": 28178,\n  \"slay\": 48319,\n  \"slay</w>\": 19380,\n  \"slayed</w>\": 44870,\n  \"slayer</w>\": 21605,\n  \"slaying</w>\": 27812,\n  \"slays</w>\": 45648,\n  \"slc</w>\": 21972,\n  \"sle\": 1709,\n  \"sleague</w>\": 23336,\n  \"sled</w>\": 28438,\n  \"sledge</w>\": 48750,\n  \"slee\": 17642,\n  \"slee</w>\": 38977,\n  \"sleek</w>\": 23187,\n  \"sleep\": 4656,\n  \"sleep</w>\": 3840,\n  \"sleeper</w>\": 28709,\n  \"sleeping</w>\": 6982,\n  \"sleepless</w>\": 39779,\n  \"sleepover</w>\": 39415,\n  \"sleeps</w>\": 16610,\n  \"sleepy\": 32572,\n  \"sleepy</w>\": 14497,\n  \"sleet</w>\": 36948,\n  \"sleeve\": 35270,\n  \"sleeve</w>\": 10536,\n  \"sleeveless</w>\": 38049,\n  \"sleeves</w>\": 19691,\n  \"sleg</w>\": 47650,\n  \"sleigh</w>\": 30865,\n  \"slender</w>\": 40331,\n  \"slept</w>\": 20388,\n  \"sler</w>\": 14066,\n  \"sley\": 17198,\n  \"sley</w>\": 6496,\n  \"sli\": 1811,\n  \"sli</w>\": 44824,\n  \"slic\": 19692,\n  \"slice</w>\": 13431,\n  \"sliced</w>\": 28121,\n  \"slices</w>\": 28424,\n  \"slick</w>\": 18341,\n  \"slide\": 27828,\n  \"slide</w>\": 8837,\n  \"slider</w>\": 37861,\n  \"sliders</w>\": 40700,\n  \"slides</w>\": 15939,\n  \"slideshow</w>\": 42817,\n  \"sliding</w>\": 21468,\n  \"slife</w>\": 15448,\n  \"sliga</w>\": 21080,\n  \"slight</w>\": 14297,\n  \"slightly</w>\": 8456,\n  \"sligo</w>\": 30424,\n  \"slike\": 38744,\n  \"slim\": 35226,\n  \"slim</w>\": 12364,\n  \"slime</w>\": 29107,\n  \"sling\": 28021,\n  \"sling</w>\": 32607,\n  \"slinger</w>\": 47269,\n  \"slions</w>\": 43363,\n  \"slip\": 39785,\n  \"slip</w>\": 12105,\n  \"slipknot</w>\": 41816,\n  \"slipped</w>\": 30344,\n  \"slipper</w>\": 39644,\n  \"slippers</w>\": 26509,\n  \"slippery</w>\": 30814,\n  \"slipping</w>\": 36301,\n  \"slips</w>\": 30632,\n  \"slist</w>\": 33749,\n  \"slit</w>\": 47011,\n  \"slive</w>\": 31652,\n  \"slo\": 4303,\n  \"slo</w>\": 36083,\n  \"sloan</w>\": 29110,\n  \"sloane</w>\": 41553,\n  \"slogan</w>\": 23398,\n  \"slogans</w>\": 42795,\n  \"slope</w>\": 22769,\n  \"slopes</w>\": 24066,\n  \"sloppy</w>\": 36154,\n  \"slot</w>\": 14500,\n  \"sloth</w>\": 30007,\n  \"slots</w>\": 19238,\n  \"slou\": 48493,\n  \"slovak\": 23315,\n  \"slovakia</w>\": 25994,\n  \"sloven\": 17018,\n  \"slovenia</w>\": 21037,\n  \"slow\": 6674,\n  \"slow</w>\": 5444,\n  \"slowdown</w>\": 38421,\n  \"slowed</w>\": 43793,\n  \"slower</w>\": 29181,\n  \"slowing</w>\": 29839,\n  \"slowly</w>\": 9568,\n  \"slows</w>\": 46855,\n  \"slp</w>\": 45599,\n  \"slr</w>\": 21325,\n  \"sls</w>\": 33651,\n  \"slt</w>\": 39283,\n  \"sltd</w>\": 36388,\n  \"slu\": 7224,\n  \"slu</w>\": 47456,\n  \"slug</w>\": 34190,\n  \"slugger</w>\": 48671,\n  \"slum</w>\": 46754,\n  \"slumber</w>\": 44295,\n  \"slump</w>\": 35588,\n  \"slur\": 30476,\n  \"slush</w>\": 39815,\n  \"slv</w>\": 45526,\n  \"sly\": 28145,\n  \"sly</w>\": 21062,\n  \"sm\": 978,\n  \"sm</w>\": 2764,\n  \"sma\": 4357,\n  \"sma</w>\": 11854,\n  \"smack\": 21280,\n  \"smack</w>\": 30026,\n  \"smackdown</w>\": 26138,\n  \"smafia</w>\": 47686,\n  \"smag</w>\": 32212,\n  \"smal\": 48379,\n  \"small\": 5244,\n  \"small</w>\": 2442,\n  \"smallbiz\": 41724,\n  \"smallbiz</w>\": 18987,\n  \"smallbusiness</w>\": 21316,\n  \"smalle\": 18490,\n  \"smaller</w>\": 12431,\n  \"smallest</w>\": 18686,\n  \"smalls</w>\": 41696,\n  \"sman</w>\": 9612,\n  \"smar\": 3201,\n  \"smart\": 5383,\n  \"smart</w>\": 4115,\n  \"smartcities</w>\": 34822,\n  \"smartcity</w>\": 33973,\n  \"smarter</w>\": 18990,\n  \"smartest</w>\": 37092,\n  \"smarthome</w>\": 47726,\n  \"smartphone</w>\": 11290,\n  \"smartphones</w>\": 22212,\n  \"smartwatch</w>\": 35798,\n  \"smash\": 17258,\n  \"smash</w>\": 10332,\n  \"smashbros</w>\": 44897,\n  \"smashed</w>\": 18410,\n  \"smashes</w>\": 45657,\n  \"smashing</w>\": 19632,\n  \"smatter</w>\": 16537,\n  \"smb</w>\": 30446,\n  \"smc\": 31375,\n  \"smc</w>\": 28312,\n  \"smd</w>\": 34582,\n  \"sme\": 11758,\n  \"sme</w>\": 15650,\n  \"smear</w>\": 37546,\n  \"smel\": 28476,\n  \"smell</w>\": 9688,\n  \"smelling</w>\": 32493,\n  \"smells</w>\": 14668,\n  \"smelly</w>\": 46145,\n  \"smen</w>\": 15961,\n  \"smer\": 48526,\n  \"smere</w>\": 39629,\n  \"smes</w>\": 26141,\n  \"smg</w>\": 46876,\n  \"smh</w>\": 9623,\n  \"smi\": 5655,\n  \"smi</w>\": 40049,\n  \"smil\": 33937,\n  \"smile\": 27641,\n  \"smile</w>\": 3490,\n  \"smiled</w>\": 34362,\n  \"smiles</w>\": 8726,\n  \"smiley</w>\": 22925,\n  \"smiling</w>\": 9200,\n  \"smir\": 24667,\n  \"smith\": 10527,\n  \"smith</w>\": 2915,\n  \"smiths</w>\": 27872,\n  \"smithson\": 25372,\n  \"smithsonian</w>\": 31209,\n  \"smm</w>\": 19510,\n  \"smma</w>\": 42370,\n  \"smo\": 2513,\n  \"smo</w>\": 13437,\n  \"smobile</w>\": 38923,\n  \"smog</w>\": 44425,\n  \"smoke\": 20381,\n  \"smoke</w>\": 6664,\n  \"smoked</w>\": 11161,\n  \"smoker</w>\": 32348,\n  \"smokers</w>\": 29571,\n  \"smokes</w>\": 40336,\n  \"smokey</w>\": 23670,\n  \"smokin</w>\": 32825,\n  \"smoking</w>\": 9038,\n  \"smoky</w>\": 25549,\n  \"smol\": 29939,\n  \"smol</w>\": 40403,\n  \"smoo\": 5430,\n  \"smooth\": 10958,\n  \"smooth</w>\": 8990,\n  \"smoother</w>\": 44271,\n  \"smoothie</w>\": 16668,\n  \"smoothies</w>\": 34458,\n  \"smoothly</w>\": 32380,\n  \"smore</w>\": 48323,\n  \"smp</w>\": 32260,\n  \"smriti\": 49227,\n  \"sms</w>\": 10409,\n  \"smt</w>\": 26672,\n  \"smtown</w>\": 26072,\n  \"smu\": 10878,\n  \"smu</w>\": 30458,\n  \"smug</w>\": 41021,\n  \"smugg\": 28130,\n  \"smuggling</w>\": 34146,\n  \"smur\": 24708,\n  \"smusic</w>\": 19191,\n  \"smw</w>\": 44929,\n  \"smx</w>\": 46699,\n  \"smy\": 14381,\n  \"smyth</w>\": 44822,\n  \"sn\": 1672,\n  \"sn</w>\": 5844,\n  \"sna\": 4032,\n  \"snack\": 47548,\n  \"snack</w>\": 10039,\n  \"snacking</w>\": 46474,\n  \"snacks</w>\": 12349,\n  \"snag\": 34789,\n  \"snag</w>\": 28043,\n  \"snagged</w>\": 48534,\n  \"snail</w>\": 23132,\n  \"snails</w>\": 34928,\n  \"snake\": 30133,\n  \"snake</w>\": 8798,\n  \"snakes</w>\": 19605,\n  \"snap\": 4578,\n  \"snap</w>\": 7404,\n  \"snapback</w>\": 31234,\n  \"snapchat</w>\": 7799,\n  \"snapmatic</w>\": 45907,\n  \"snapp\": 10185,\n  \"snapped</w>\": 15543,\n  \"snapper</w>\": 31677,\n  \"snapping</w>\": 31581,\n  \"snaps</w>\": 16890,\n  \"snapshot</w>\": 18243,\n  \"snar\": 30810,\n  \"snare</w>\": 40651,\n  \"snat\": 18457,\n  \"snatch</w>\": 35302,\n  \"snatched</w>\": 44821,\n  \"snation</w>\": 14362,\n  \"snazzy</w>\": 48963,\n  \"snc</w>\": 39918,\n  \"sne\": 3791,\n  \"sne</w>\": 46503,\n  \"sneak\": 27871,\n  \"sneak</w>\": 6917,\n  \"sneaker\": 31698,\n  \"sneaker</w>\": 24781,\n  \"sneakers</w>\": 17397,\n  \"sneaking</w>\": 34633,\n  \"sneakpeek</w>\": 47831,\n  \"sneaks</w>\": 40926,\n  \"sneaky</w>\": 21293,\n  \"snee\": 42095,\n  \"snell</w>\": 46410,\n  \"sner</w>\": 31424,\n  \"snes</w>\": 26667,\n  \"snews</w>\": 18623,\n  \"snf</w>\": 47651,\n  \"sng</w>\": 41549,\n  \"snhl</w>\": 43093,\n  \"sni\": 7186,\n  \"sni</w>\": 35570,\n  \"snickers</w>\": 49127,\n  \"sniff</w>\": 37841,\n  \"snip</w>\": 42954,\n  \"sniper</w>\": 22157,\n  \"snippet</w>\": 37531,\n  \"snippets</w>\": 44001,\n  \"snl</w>\": 16011,\n  \"sno\": 8567,\n  \"sno</w>\": 17802,\n  \"snoo\": 11352,\n  \"snooker</w>\": 25657,\n  \"snoop\": 44503,\n  \"snoop</w>\": 27754,\n  \"snoopdogg</w>\": 48388,\n  \"snoopy</w>\": 41967,\n  \"snooze</w>\": 40718,\n  \"snor\": 16590,\n  \"snoring</w>\": 44560,\n  \"snorkel\": 44285,\n  \"snorkeling</w>\": 48103,\n  \"snow\": 3880,\n  \"snow</w>\": 2583,\n  \"snowball</w>\": 39254,\n  \"snowboard</w>\": 33403,\n  \"snowboarding</w>\": 32397,\n  \"snowday</w>\": 37982,\n  \"snowden</w>\": 32154,\n  \"snowdon</w>\": 47107,\n  \"snowdonia</w>\": 36088,\n  \"snowed</w>\": 45073,\n  \"snowfall</w>\": 21714,\n  \"snowflake</w>\": 33447,\n  \"snowflakes</w>\": 38618,\n  \"snowing</w>\": 21443,\n  \"snowman</w>\": 22668,\n  \"snowstorm</w>\": 38777,\n  \"snowy</w>\": 14191,\n  \"snp</w>\": 15301,\n  \"sns</w>\": 36343,\n  \"snsd</w>\": 27961,\n  \"snt</w>\": 34834,\n  \"snu\": 9694,\n  \"snuck</w>\": 36522,\n  \"snug</w>\": 45169,\n  \"snuggle</w>\": 31327,\n  \"snuggles</w>\": 48165,\n  \"sny\": 17526,\n  \"snyder</w>\": 22106,\n  \"snz</w>\": 37678,\n  \"so\": 759,\n  \"so</w>\": 706,\n  \"soa</w>\": 39584,\n  \"soak</w>\": 24839,\n  \"soaked</w>\": 26592,\n  \"soaking</w>\": 26750,\n  \"soap\": 26086,\n  \"soap</w>\": 11088,\n  \"soaps</w>\": 40958,\n  \"soar\": 48997,\n  \"soar</w>\": 22241,\n  \"soaring</w>\": 27968,\n  \"soars</w>\": 41348,\n  \"sob\": 24900,\n  \"sob</w>\": 35507,\n  \"sobbing</w>\": 36691,\n  \"sober\": 30969,\n  \"sober</w>\": 24487,\n  \"sobre</w>\": 42768,\n  \"sobri\": 49308,\n  \"sobs</w>\": 43636,\n  \"soc\": 3253,\n  \"soc</w>\": 7741,\n  \"soca</w>\": 49239,\n  \"socal\": 46470,\n  \"socal</w>\": 20450,\n  \"soccer\": 16268,\n  \"soccer</w>\": 4233,\n  \"socceroos</w>\": 41997,\n  \"socent</w>\": 30831,\n  \"sochi</w>\": 21014,\n  \"soci\": 1720,\n  \"social\": 4803,\n  \"social</w>\": 2346,\n  \"socialism</w>\": 23372,\n  \"socialist</w>\": 18450,\n  \"socialists</w>\": 43839,\n  \"socially</w>\": 24555,\n  \"socialmedi\": 23813,\n  \"socialmedia</w>\": 9600,\n  \"socialmediamarketing</w>\": 31790,\n  \"societal</w>\": 40058,\n  \"societies</w>\": 25855,\n  \"society</w>\": 3757,\n  \"socio\": 44319,\n  \"socio</w>\": 42790,\n  \"sociology</w>\": 32373,\n  \"sock\": 29801,\n  \"sock</w>\": 18277,\n  \"socket</w>\": 28657,\n  \"socks</w>\": 8774,\n  \"socorro</w>\": 46409,\n  \"socute</w>\": 45086,\n  \"sod</w>\": 31435,\n  \"soda</w>\": 13533,\n  \"sodium</w>\": 29070,\n  \"soe\": 44136,\n  \"soe</w>\": 25498,\n  \"soever</w>\": 34024,\n  \"sof\": 1571,\n  \"sof</w>\": 41187,\n  \"sofa</w>\": 15723,\n  \"soff\": 35290,\n  \"soff</w>\": 30684,\n  \"sofficial</w>\": 20563,\n  \"sofi\": 41537,\n  \"sofia</w>\": 18914,\n  \"sofinstagram</w>\": 17301,\n  \"soft\": 12778,\n  \"soft</w>\": 3773,\n  \"softball</w>\": 8369,\n  \"softer</w>\": 44462,\n  \"softhe\": 23127,\n  \"softly</w>\": 34958,\n  \"software\": 35941,\n  \"software</w>\": 5847,\n  \"softwitter</w>\": 11311,\n  \"sog</w>\": 44775,\n  \"soggy</w>\": 41168,\n  \"sohn</w>\": 49267,\n  \"soho\": 47749,\n  \"soho</w>\": 17592,\n  \"soi</w>\": 40495,\n  \"soil\": 33417,\n  \"soil</w>\": 9216,\n  \"soils</w>\": 34891,\n  \"soir</w>\": 43427,\n  \"sok</w>\": 43456,\n  \"sol\": 1175,\n  \"sol</w>\": 9941,\n  \"sola</w>\": 40086,\n  \"solace</w>\": 42567,\n  \"solar\": 16990,\n  \"solar</w>\": 5199,\n  \"solareclipse</w>\": 44727,\n  \"sold\": 33116,\n  \"sold</w>\": 3939,\n  \"soldi\": 5098,\n  \"soldier</w>\": 9355,\n  \"soldiers</w>\": 7547,\n  \"sole\": 10519,\n  \"sole</w>\": 8576,\n  \"soleil</w>\": 33148,\n  \"solely</w>\": 27913,\n  \"solent</w>\": 47783,\n  \"soles</w>\": 22682,\n  \"soli\": 3911,\n  \"solic\": 19369,\n  \"solicitor</w>\": 45647,\n  \"solicitors</w>\": 46000,\n  \"solid\": 30626,\n  \"solid</w>\": 6148,\n  \"solidar\": 10415,\n  \"solidarity</w>\": 10983,\n  \"solidi\": 46136,\n  \"solids</w>\": 49070,\n  \"solihull</w>\": 45293,\n  \"solit\": 37039,\n  \"solitaire</w>\": 47257,\n  \"solitary</w>\": 33094,\n  \"solitude</w>\": 33199,\n  \"solo\": 17626,\n  \"solo</w>\": 5797,\n  \"soloist</w>\": 46391,\n  \"solom\": 15768,\n  \"solomon</w>\": 19785,\n  \"solos</w>\": 44868,\n  \"solst\": 20298,\n  \"solstice</w>\": 21359,\n  \"solu\": 2487,\n  \"solution</w>\": 4575,\n  \"solutions</w>\": 5140,\n  \"solve</w>\": 8917,\n  \"solved</w>\": 13451,\n  \"solves</w>\": 42740,\n  \"solving</w>\": 15581,\n  \"som\": 734,\n  \"som</w>\": 10672,\n  \"soma</w>\": 36170,\n  \"somal\": 40281,\n  \"somali</w>\": 26231,\n  \"somalia</w>\": 17051,\n  \"somaliland</w>\": 43315,\n  \"some\": 1132,\n  \"some</w>\": 836,\n  \"somebody</w>\": 8305,\n  \"someday</w>\": 17127,\n  \"somehow</w>\": 11735,\n  \"someone</w>\": 2100,\n  \"somer\": 9656,\n  \"somerhalder</w>\": 33990,\n  \"somerset</w>\": 14926,\n  \"somerville</w>\": 41409,\n  \"somes</w>\": 38124,\n  \"somethin</w>\": 33541,\n  \"something\": 28316,\n  \"something</w>\": 2006,\n  \"sometime</w>\": 21464,\n  \"sometimes</w>\": 4237,\n  \"somewhat</w>\": 17864,\n  \"somewhere</w>\": 8119,\n  \"somm\": 42726,\n  \"somme</w>\": 30625,\n  \"sommer</w>\": 44954,\n  \"somos</w>\": 24951,\n  \"son\": 1176,\n  \"son</w>\": 825,\n  \"sona</w>\": 21249,\n  \"sonam\": 40096,\n  \"sonar</w>\": 48235,\n  \"sonata</w>\": 37009,\n  \"sone</w>\": 29599,\n  \"song\": 6868,\n  \"song</w>\": 2295,\n  \"songs</w>\": 4641,\n  \"songwriter</w>\": 13034,\n  \"songwriters</w>\": 39583,\n  \"songwriting</w>\": 33567,\n  \"songz</w>\": 49302,\n  \"soni\": 34899,\n  \"soni</w>\": 35911,\n  \"sonia</w>\": 20409,\n  \"sonic\": 23785,\n  \"sonic</w>\": 9132,\n  \"sonics</w>\": 48511,\n  \"sonja</w>\": 46102,\n  \"sonline</w>\": 23412,\n  \"sonny\": 43000,\n  \"sonny</w>\": 20880,\n  \"sono</w>\": 44109,\n  \"sonom\": 48596,\n  \"sonoma</w>\": 26269,\n  \"sons</w>\": 5502,\n  \"sonsof\": 46676,\n  \"sont</w>\": 31063,\n  \"sonthe\": 40923,\n  \"sony\": 16042,\n  \"sony</w>\": 8748,\n  \"sonya</w>\": 39172,\n  \"soo\": 5517,\n  \"soo</w>\": 8602,\n  \"soom\": 39771,\n  \"soon\": 27559,\n  \"soon</w>\": 1745,\n  \"sooner</w>\": 18968,\n  \"sooners</w>\": 30449,\n  \"sooo</w>\": 11526,\n  \"soooo</w>\": 13658,\n  \"sooooo</w>\": 21199,\n  \"soooooo</w>\": 34859,\n  \"soor\": 46698,\n  \"soothe</w>\": 44424,\n  \"soothing</w>\": 27730,\n  \"sop\": 3974,\n  \"sop</w>\": 19194,\n  \"soph</w>\": 34963,\n  \"sophi\": 6192,\n  \"sophia</w>\": 16790,\n  \"sophie\": 38648,\n  \"sophie</w>\": 12357,\n  \"sophistic\": 17646,\n  \"sophisticated</w>\": 20833,\n  \"sophom\": 13696,\n  \"sophomore</w>\": 15242,\n  \"sophomores</w>\": 47645,\n  \"soprano</w>\": 28880,\n  \"soproud</w>\": 44479,\n  \"sor\": 1852,\n  \"sor</w>\": 16872,\n  \"sora</w>\": 38719,\n  \"sorbet</w>\": 39994,\n  \"sore\": 43330,\n  \"sore</w>\": 15454,\n  \"sored</w>\": 6731,\n  \"soren\": 38907,\n  \"sorg</w>\": 28152,\n  \"sori\": 38588,\n  \"sorority</w>\": 30059,\n  \"soros</w>\": 33248,\n  \"sorren\": 44012,\n  \"sorrow</w>\": 28020,\n  \"sorrows</w>\": 47924,\n  \"sorry\": 25745,\n  \"sorry</w>\": 3675,\n  \"sorrynotsorry</w>\": 37105,\n  \"sort</w>\": 8450,\n  \"sorta</w>\": 34700,\n  \"sorted</w>\": 13221,\n  \"sorting</w>\": 19198,\n  \"sorts</w>\": 12577,\n  \"sory</w>\": 16257,\n  \"sos\": 25145,\n  \"sos</w>\": 5792,\n  \"sosa</w>\": 45433,\n  \"sosfam</w>\": 47709,\n  \"sot\": 41542,\n  \"sot</w>\": 34116,\n  \"sothe\": 32145,\n  \"sotho</w>\": 45496,\n  \"soto</w>\": 27947,\n  \"sotto</w>\": 26047,\n  \"sotu</w>\": 32286,\n  \"sou\": 1101,\n  \"sou</w>\": 24293,\n  \"sought</w>\": 18874,\n  \"soul\": 8701,\n  \"soul</w>\": 3755,\n  \"soulful</w>\": 30196,\n  \"soulmate</w>\": 38130,\n  \"souls</w>\": 10951,\n  \"soun\": 19474,\n  \"sound\": 5236,\n  \"sound</w>\": 3608,\n  \"soundcheck</w>\": 31394,\n  \"soundcloud</w>\": 15190,\n  \"sounded</w>\": 28287,\n  \"sounders</w>\": 44933,\n  \"sounding</w>\": 21351,\n  \"sounds</w>\": 5694,\n  \"soundtrack</w>\": 11389,\n  \"soup</w>\": 7077,\n  \"soups</w>\": 45052,\n  \"sour\": 2235,\n  \"sour</w>\": 12049,\n  \"source\": 23698,\n  \"source</w>\": 3634,\n  \"sourced</w>\": 23340,\n  \"sources</w>\": 5124,\n  \"sourcing</w>\": 19574,\n  \"sourdough</w>\": 29921,\n  \"souri</w>\": 11674,\n  \"sous</w>\": 32093,\n  \"sousa</w>\": 46296,\n  \"sout\": 38156,\n  \"sout</w>\": 32732,\n  \"south\": 2938,\n  \"south</w>\": 2045,\n  \"southafrica</w>\": 15184,\n  \"southampton</w>\": 15767,\n  \"southbank</w>\": 44173,\n  \"southbound</w>\": 22932,\n  \"southeast</w>\": 13942,\n  \"southeastern</w>\": 26813,\n  \"southend</w>\": 25583,\n  \"souther\": 33330,\n  \"southern\": 17704,\n  \"southern</w>\": 5036,\n  \"southgate</w>\": 47262,\n  \"southkorea</w>\": 43552,\n  \"southport</w>\": 37446,\n  \"southside</w>\": 36436,\n  \"southsudan</w>\": 30419,\n  \"southwark</w>\": 39098,\n  \"southwe\": 46443,\n  \"southwest</w>\": 13320,\n  \"southwestern</w>\": 30157,\n  \"souven\": 20210,\n  \"souvenir</w>\": 24811,\n  \"souvenirs</w>\": 48460,\n  \"souza</w>\": 29424,\n  \"sov</w>\": 29737,\n  \"sover</w>\": 31876,\n  \"sovere\": 17736,\n  \"sovereign\": 29418,\n  \"sovereign</w>\": 26337,\n  \"sovereignty</w>\": 31701,\n  \"soviet</w>\": 14274,\n  \"sow</w>\": 33089,\n  \"sowe\": 36130,\n  \"soweto</w>\": 47070,\n  \"sown</w>\": 49369,\n  \"sox\": 39556,\n  \"sox</w>\": 8657,\n  \"soy\": 16524,\n  \"soy</w>\": 15010,\n  \"soybean</w>\": 34606,\n  \"soybeans</w>\": 40840,\n  \"soyu\": 39578,\n  \"soyuz</w>\": 43842,\n  \"sp\": 588,\n  \"sp</w>\": 4393,\n  \"spa\": 7852,\n  \"spa</w>\": 6692,\n  \"spac\": 10336,\n  \"space\": 7857,\n  \"space</w>\": 2138,\n  \"spacecraft</w>\": 25940,\n  \"spaces</w>\": 9006,\n  \"spaceship</w>\": 34317,\n  \"spacex</w>\": 22511,\n  \"spacey</w>\": 48770,\n  \"spacious</w>\": 24769,\n  \"spad\": 45362,\n  \"spade</w>\": 32562,\n  \"spades</w>\": 48368,\n  \"spaghetti</w>\": 18440,\n  \"spain</w>\": 5083,\n  \"spal\": 26018,\n  \"spam\": 29712,\n  \"spam</w>\": 14624,\n  \"span\": 4270,\n  \"span</w>\": 14537,\n  \"spandex</w>\": 41686,\n  \"spani\": 16721,\n  \"spaniel</w>\": 35435,\n  \"spanish\": 29966,\n  \"spanish</w>\": 6013,\n  \"spann</w>\": 25323,\n  \"spanning</w>\": 38638,\n  \"spans</w>\": 45407,\n  \"spaper\": 34548,\n  \"spar\": 3378,\n  \"spar</w>\": 34576,\n  \"spare</w>\": 12615,\n  \"spares</w>\": 39505,\n  \"spark\": 9555,\n  \"spark</w>\": 11047,\n  \"sparked</w>\": 32647,\n  \"sparkle</w>\": 18287,\n  \"sparkles</w>\": 36410,\n  \"sparkling</w>\": 17893,\n  \"sparkly</w>\": 30542,\n  \"sparks</w>\": 15046,\n  \"sparky</w>\": 47198,\n  \"sparring</w>\": 42161,\n  \"sparrow</w>\": 22888,\n  \"spart\": 10143,\n  \"sparta</w>\": 38401,\n  \"spartan\": 26582,\n  \"spartan</w>\": 24225,\n  \"spartans</w>\": 20457,\n  \"sparty</w>\": 36477,\n  \"spas\": 31714,\n  \"spati\": 19200,\n  \"spatial</w>\": 22022,\n  \"spaw\": 31605,\n  \"spawn</w>\": 29166,\n  \"spay\": 40634,\n  \"spc</w>\": 20492,\n  \"spca</w>\": 37018,\n  \"spd\": 37717,\n  \"spd</w>\": 28307,\n  \"spdwy</w>\": 45981,\n  \"spe\": 876,\n  \"spe</w>\": 36676,\n  \"speak\": 20599,\n  \"speak</w>\": 4208,\n  \"speake\": 46077,\n  \"speaker\": 25764,\n  \"speaker</w>\": 4914,\n  \"speakers</w>\": 7675,\n  \"speaking</w>\": 3714,\n  \"speaks</w>\": 5661,\n  \"spear\": 23277,\n  \"spear</w>\": 30420,\n  \"speare</w>\": 43859,\n  \"spears</w>\": 20242,\n  \"spec\": 1711,\n  \"spec</w>\": 18596,\n  \"speci\": 1969,\n  \"special\": 11422,\n  \"special</w>\": 1689,\n  \"specialist</w>\": 10630,\n  \"specialists</w>\": 21719,\n  \"speciality</w>\": 46904,\n  \"specialized</w>\": 23265,\n  \"specializes</w>\": 48533,\n  \"specially</w>\": 4513,\n  \"specials</w>\": 11983,\n  \"specialty</w>\": 18262,\n  \"species</w>\": 6330,\n  \"specific</w>\": 10528,\n  \"specifically</w>\": 17174,\n  \"specification</w>\": 46394,\n  \"specifications</w>\": 39705,\n  \"specified</w>\": 48114,\n  \"specimen</w>\": 30263,\n  \"specimens</w>\": 42715,\n  \"specs</w>\": 24093,\n  \"spect</w>\": 3416,\n  \"spectac\": 7242,\n  \"spectacle</w>\": 34342,\n  \"spectacular</w>\": 8404,\n  \"spectator</w>\": 32372,\n  \"spectators</w>\": 39306,\n  \"spective</w>\": 6633,\n  \"spector</w>\": 48676,\n  \"spectral</w>\": 45441,\n  \"spectre</w>\": 35998,\n  \"spectro\": 27646,\n  \"spectrum</w>\": 13532,\n  \"specul\": 19209,\n  \"speculation</w>\": 30898,\n  \"sped</w>\": 38813,\n  \"spee\": 4050,\n  \"speech\": 19556,\n  \"speech</w>\": 4902,\n  \"speeches</w>\": 25208,\n  \"speechless</w>\": 23152,\n  \"speed\": 6860,\n  \"speed</w>\": 4163,\n  \"speeding</w>\": 27264,\n  \"speeds</w>\": 22017,\n  \"speedway</w>\": 11480,\n  \"speedy</w>\": 21603,\n  \"spel\": 41887,\n  \"spell\": 22784,\n  \"spell</w>\": 11230,\n  \"spelled</w>\": 24339,\n  \"spelling</w>\": 15614,\n  \"spells</w>\": 25335,\n  \"spelt</w>\": 38316,\n  \"spen\": 5087,\n  \"spence</w>\": 33324,\n  \"spencer\": 27509,\n  \"spencer</w>\": 10678,\n  \"spend</w>\": 4664,\n  \"spending</w>\": 5961,\n  \"spends</w>\": 22508,\n  \"spent</w>\": 4429,\n  \"speople</w>\": 33035,\n  \"sper\": 8213,\n  \"sper</w>\": 15313,\n  \"sperm</w>\": 35781,\n  \"sperson</w>\": 22687,\n  \"spf</w>\": 34973,\n  \"spg</w>\": 34623,\n  \"sph\": 28909,\n  \"sph</w>\": 24684,\n  \"sphe\": 33691,\n  \"spher\": 18349,\n  \"sphere</w>\": 6987,\n  \"spheres</w>\": 37478,\n  \"spheric</w>\": 21744,\n  \"sphin\": 39237,\n  \"sphinx</w>\": 46487,\n  \"spho\": 20442,\n  \"sphoto</w>\": 38594,\n  \"sphy\": 43808,\n  \"spi\": 3174,\n  \"spi</w>\": 37080,\n  \"spic\": 17264,\n  \"spice\": 29761,\n  \"spice</w>\": 10141,\n  \"spiced</w>\": 24267,\n  \"spicer</w>\": 37627,\n  \"spices</w>\": 21194,\n  \"spicy</w>\": 10915,\n  \"spide\": 36801,\n  \"spider\": 11963,\n  \"spider</w>\": 7622,\n  \"spiderman\": 39808,\n  \"spiderman</w>\": 18427,\n  \"spiders</w>\": 23141,\n  \"spidey</w>\": 41706,\n  \"spie\": 28573,\n  \"spie</w>\": 28746,\n  \"spied</w>\": 43998,\n  \"spiegel</w>\": 45351,\n  \"spiel\": 28435,\n  \"spiel</w>\": 37690,\n  \"spielberg</w>\": 37569,\n  \"spies</w>\": 25374,\n  \"spieth</w>\": 43254,\n  \"spike\": 35306,\n  \"spike</w>\": 15310,\n  \"spiked</w>\": 47014,\n  \"spikes</w>\": 29582,\n  \"spil\": 47765,\n  \"spill\": 43933,\n  \"spill</w>\": 18006,\n  \"spilled</w>\": 33206,\n  \"spilling</w>\": 49006,\n  \"spills</w>\": 35796,\n  \"spin\": 6288,\n  \"spin</w>\": 9226,\n  \"spinach</w>\": 14747,\n  \"spinal</w>\": 23925,\n  \"spine\": 48221,\n  \"spine</w>\": 19646,\n  \"sping</w>\": 47113,\n  \"spinner</w>\": 29924,\n  \"spinning</w>\": 13987,\n  \"spino\": 40848,\n  \"spinoff</w>\": 42513,\n  \"spinrilla</w>\": 46064,\n  \"spins</w>\": 27243,\n  \"spion\": 39604,\n  \"spionage</w>\": 41838,\n  \"spir\": 3745,\n  \"spiral</w>\": 19873,\n  \"spiration</w>\": 38126,\n  \"spire</w>\": 27439,\n  \"spired</w>\": 40650,\n  \"spires</w>\": 46938,\n  \"spiri\": 4024,\n  \"spirit\": 18224,\n  \"spirit</w>\": 4071,\n  \"spirited</w>\": 34701,\n  \"spirits</w>\": 13192,\n  \"spiritu\": 7237,\n  \"spiritual\": 46076,\n  \"spiritual</w>\": 9473,\n  \"spirituality</w>\": 22165,\n  \"spiro\": 40085,\n  \"spit\": 18115,\n  \"spit</w>\": 23177,\n  \"spite</w>\": 26060,\n  \"spitfire</w>\": 31126,\n  \"spitting</w>\": 40721,\n  \"spl\": 2470,\n  \"spl</w>\": 33052,\n  \"spla\": 4809,\n  \"splac\": 16059,\n  \"splace</w>\": 38743,\n  \"splash\": 43641,\n  \"splash</w>\": 11879,\n  \"splat\": 15733,\n  \"splatoon</w>\": 22565,\n  \"splay</w>\": 3169,\n  \"splen\": 18552,\n  \"splend\": 29861,\n  \"splendid</w>\": 21016,\n  \"splendor</w>\": 46262,\n  \"splin\": 38090,\n  \"split\": 25443,\n  \"split</w>\": 9109,\n  \"splits</w>\": 34897,\n  \"splitting</w>\": 37210,\n  \"splus</w>\": 40866,\n  \"spn\": 35467,\n  \"spn</w>\": 19414,\n  \"spnfamily</w>\": 38566,\n  \"spo\": 1261,\n  \"spo</w>\": 21085,\n  \"spock</w>\": 43918,\n  \"spoil</w>\": 25600,\n  \"spoiled</w>\": 21399,\n  \"spoiler</w>\": 16512,\n  \"spoilers</w>\": 18326,\n  \"spoils</w>\": 42436,\n  \"spoilt</w>\": 35358,\n  \"spokane</w>\": 24528,\n  \"spoke\": 13890,\n  \"spoke</w>\": 6518,\n  \"spoken</w>\": 12979,\n  \"spokesman</w>\": 31632,\n  \"spokesperson</w>\": 26234,\n  \"spol\": 22476,\n  \"spol</w>\": 8132,\n  \"spoli</w>\": 34301,\n  \"spolice</w>\": 37406,\n  \"spon\": 1715,\n  \"spon</w>\": 48216,\n  \"sponge\": 22861,\n  \"sponge</w>\": 24345,\n  \"spongebob</w>\": 25089,\n  \"spons\": 5597,\n  \"sponsor\": 10424,\n  \"sponsor</w>\": 7574,\n  \"sponsored</w>\": 7197,\n  \"sponsoring</w>\": 16181,\n  \"sponsors</w>\": 11005,\n  \"sponsorship</w>\": 17632,\n  \"spontaneous</w>\": 32465,\n  \"spoo\": 11248,\n  \"spooky</w>\": 15369,\n  \"spool</w>\": 49152,\n  \"spoon\": 27001,\n  \"spoon</w>\": 14024,\n  \"spoons</w>\": 29661,\n  \"spor\": 1475,\n  \"spor</w>\": 33746,\n  \"sport\": 4379,\n  \"sport</w>\": 2364,\n  \"sporting\": 32620,\n  \"sporting</w>\": 8944,\n  \"sports\": 6436,\n  \"sports</w>\": 2054,\n  \"sportsc\": 40114,\n  \"sportscar</w>\": 46931,\n  \"sportscenter</w>\": 39157,\n  \"sportsman</w>\": 39020,\n  \"sportsmanship</w>\": 34858,\n  \"sportsnet</w>\": 34144,\n  \"sportswear</w>\": 39747,\n  \"sporty</w>\": 33346,\n  \"spot\": 3223,\n  \"spot</w>\": 3049,\n  \"spotify</w>\": 7193,\n  \"spotlight</w>\": 7901,\n  \"spots</w>\": 7670,\n  \"spotted</w>\": 4533,\n  \"spotter</w>\": 30742,\n  \"spotting</w>\": 15885,\n  \"spouse</w>\": 24724,\n  \"spout</w>\": 48993,\n  \"spp</w>\": 47567,\n  \"spr\": 1536,\n  \"spr</w>\": 19417,\n  \"spra\": 12966,\n  \"spraw\": 46590,\n  \"spray\": 37885,\n  \"spray</w>\": 10449,\n  \"sprayed</w>\": 40022,\n  \"spraying</w>\": 39224,\n  \"spre\": 18740,\n  \"spread\": 20620,\n  \"spread</w>\": 5284,\n  \"spreading</w>\": 11821,\n  \"spreads</w>\": 27579,\n  \"spree</w>\": 21851,\n  \"spri\": 35498,\n  \"spride</w>\": 26685,\n  \"spring\": 5166,\n  \"spring</w>\": 2420,\n  \"springbreak</w>\": 37753,\n  \"springer</w>\": 30117,\n  \"springfield</w>\": 16599,\n  \"springs</w>\": 7308,\n  \"springst</w>\": 32132,\n  \"springsteen</w>\": 28367,\n  \"springtime</w>\": 28285,\n  \"springtraining</w>\": 49364,\n  \"springwatch</w>\": 29239,\n  \"sprink\": 15817,\n  \"sprinkle</w>\": 42897,\n  \"sprinkler</w>\": 48754,\n  \"sprinkles</w>\": 37326,\n  \"sprint\": 29248,\n  \"sprint</w>\": 10751,\n  \"sprinter</w>\": 36947,\n  \"sprints</w>\": 36404,\n  \"sprite</w>\": 32544,\n  \"spro\": 13902,\n  \"spro</w>\": 37403,\n  \"sproject</w>\": 37802,\n  \"sproud</w>\": 37686,\n  \"sprout</w>\": 35863,\n  \"sprouts</w>\": 25756,\n  \"spru\": 17041,\n  \"spruce</w>\": 23812,\n  \"sprung</w>\": 32968,\n  \"sps</w>\": 13869,\n  \"spu\": 23566,\n  \"spun\": 47922,\n  \"spun</w>\": 32852,\n  \"spur\": 15206,\n  \"spur</w>\": 20361,\n  \"spurs</w>\": 10916,\n  \"spursofficial</w>\": 45290,\n  \"sput\": 47521,\n  \"spx</w>\": 20584,\n  \"spy\": 13861,\n  \"spy</w>\": 6656,\n  \"spyder</w>\": 39952,\n  \"spying</w>\": 36227,\n  \"sq\": 9370,\n  \"sq</w>\": 11590,\n  \"sqft</w>\": 41912,\n  \"sql\": 42759,\n  \"sql</w>\": 18938,\n  \"sqm</w>\": 47978,\n  \"sqn</w>\": 41209,\n  \"squ\": 1653,\n  \"squad\": 13892,\n  \"squad</w>\": 4234,\n  \"squadron</w>\": 18579,\n  \"squads</w>\": 36590,\n  \"square\": 19314,\n  \"square</w>\": 3999,\n  \"squared</w>\": 32967,\n  \"squares</w>\": 26972,\n  \"squash</w>\": 13312,\n  \"squat\": 44628,\n  \"squat</w>\": 30680,\n  \"squats</w>\": 40213,\n  \"sque\": 9721,\n  \"sque</w>\": 8097,\n  \"squee\": 14420,\n  \"squeeze</w>\": 21684,\n  \"squeezed</w>\": 40413,\n  \"squid\": 42057,\n  \"squid</w>\": 22553,\n  \"squir\": 9683,\n  \"squire</w>\": 48090,\n  \"squirrel</w>\": 14004,\n  \"squirrels</w>\": 26623,\n  \"squish\": 42607,\n  \"squishy</w>\": 47001,\n  \"sr\": 3437,\n  \"sr</w>\": 5428,\n  \"srbachchan</w>\": 32353,\n  \"src</w>\": 23445,\n  \"sre\": 17748,\n  \"sri\": 11051,\n  \"sri</w>\": 9276,\n  \"sridevi</w>\": 46301,\n  \"srilan\": 15559,\n  \"srilanka</w>\": 16922,\n  \"srin\": 26818,\n  \"srinagar</w>\": 33671,\n  \"srini\": 41899,\n  \"sriracha</w>\": 42743,\n  \"sris\": 27851,\n  \"srisri</w>\": 32966,\n  \"srk\": 44982,\n  \"srk</w>\": 11216,\n  \"srl</w>\": 33808,\n  \"srp</w>\": 43004,\n  \"srs</w>\": 41764,\n  \"srsly</w>\": 44179,\n  \"srt</w>\": 28139,\n  \"sru\": 44152,\n  \"srugby</w>\": 40526,\n  \"ss\": 690,\n  \"ss</w>\": 632,\n  \"ssa</w>\": 6088,\n  \"ssal\": 31330,\n  \"ssal</w>\": 35936,\n  \"ssb</w>\": 37511,\n  \"ssc\": 21692,\n  \"ssc</w>\": 20364,\n  \"ssd</w>\": 23107,\n  \"sse\": 9030,\n  \"sse</w>\": 8938,\n  \"ssed\": 38755,\n  \"ssed</w>\": 1804,\n  \"ssel\": 17402,\n  \"ssel</w>\": 19373,\n  \"sseldorf</w>\": 47792,\n  \"ssell</w>\": 42388,\n  \"ssels</w>\": 8355,\n  \"ssen\": 39408,\n  \"ssen</w>\": 22645,\n  \"sser</w>\": 20445,\n  \"sses</w>\": 1802,\n  \"ssett</w>\": 44103,\n  \"ssf</w>\": 33239,\n  \"ssg</w>\": 40707,\n  \"ssh</w>\": 48866,\n  \"ssi\": 834,\n  \"ssi</w>\": 14953,\n  \"ssia</w>\": 22238,\n  \"ssian</w>\": 31218,\n  \"ssible</w>\": 47099,\n  \"ssic\": 27774,\n  \"ssic</w>\": 17077,\n  \"ssie</w>\": 7572,\n  \"ssier</w>\": 26422,\n  \"ssil</w>\": 15026,\n  \"ssin</w>\": 42660,\n  \"ssing</w>\": 2112,\n  \"ssion\": 16050,\n  \"ssion</w>\": 1627,\n  \"ssional</w>\": 13727,\n  \"ssionism</w>\": 24787,\n  \"ssionist</w>\": 27682,\n  \"ssions</w>\": 4137,\n  \"ssive</w>\": 2734,\n  \"ssively</w>\": 28060,\n  \"ssl</w>\": 32195,\n  \"ssler</w>\": 30287,\n  \"ssly</w>\": 24904,\n  \"ssn</w>\": 39116,\n  \"ssnhq</w>\": 47998,\n  \"sso\": 25900,\n  \"sso</w>\": 7914,\n  \"ssoccer</w>\": 32546,\n  \"sson\": 36124,\n  \"sson</w>\": 7271,\n  \"ssor</w>\": 35152,\n  \"ssp</w>\": 31101,\n  \"ssr</w>\": 39880,\n  \"sss</w>\": 11176,\n  \"ssss\": 30676,\n  \"ssss</w>\": 15880,\n  \"sssss</w>\": 24298,\n  \"sst</w>\": 40396,\n  \"ssu</w>\": 35351,\n  \"ssummit</w>\": 49301,\n  \"ssus</w>\": 31286,\n  \"ssw</w>\": 36937,\n  \"ssy\": 22519,\n  \"ssy</w>\": 8661,\n  \"st\": 522,\n  \"st</w>\": 545,\n  \"sta\": 1363,\n  \"sta</w>\": 2745,\n  \"stab\": 7726,\n  \"stab</w>\": 29974,\n  \"stabbed</w>\": 24534,\n  \"stabbing</w>\": 25474,\n  \"stabil\": 42576,\n  \"stabili\": 23903,\n  \"stability</w>\": 16716,\n  \"stable\": 44427,\n  \"stable</w>\": 10492,\n  \"stables</w>\": 34218,\n  \"stac\": 10175,\n  \"stacey\": 41653,\n  \"stacey</w>\": 24262,\n  \"stache</w>\": 23616,\n  \"stack\": 24723,\n  \"stack</w>\": 11257,\n  \"stacked</w>\": 24990,\n  \"stacking</w>\": 39836,\n  \"stacks</w>\": 24734,\n  \"stacy</w>\": 26628,\n  \"stad\": 15832,\n  \"stad</w>\": 16485,\n  \"stade</w>\": 38198,\n  \"stadi\": 26587,\n  \"stadion</w>\": 48815,\n  \"stadium</w>\": 3390,\n  \"stadiums</w>\": 38852,\n  \"stadt</w>\": 22713,\n  \"staf\": 2367,\n  \"staff\": 31188,\n  \"staff</w>\": 2813,\n  \"staffer</w>\": 38494,\n  \"staffers</w>\": 44994,\n  \"staffing</w>\": 32932,\n  \"stafford</w>\": 25006,\n  \"staffordshire</w>\": 29198,\n  \"staffs</w>\": 36098,\n  \"stag\": 12088,\n  \"stag</w>\": 20277,\n  \"stage\": 23182,\n  \"stage</w>\": 2170,\n  \"staged</w>\": 19906,\n  \"stages</w>\": 12297,\n  \"staggering</w>\": 37315,\n  \"staging</w>\": 27026,\n  \"stagram</w>\": 19503,\n  \"stags</w>\": 45936,\n  \"stain\": 3933,\n  \"stain</w>\": 14603,\n  \"stained</w>\": 13751,\n  \"staining</w>\": 32523,\n  \"stainless</w>\": 12320,\n  \"stains</w>\": 32008,\n  \"stair\": 7240,\n  \"stair</w>\": 17662,\n  \"staircase</w>\": 22777,\n  \"stairs</w>\": 9577,\n  \"stairway</w>\": 45559,\n  \"stak\": 39144,\n  \"stake\": 15955,\n  \"stake</w>\": 7937,\n  \"stakeholder</w>\": 39122,\n  \"stakeholders</w>\": 22968,\n  \"stakes</w>\": 7519,\n  \"staking</w>\": 47082,\n  \"stal\": 3861,\n  \"stal</w>\": 5535,\n  \"stale</w>\": 42471,\n  \"stalert</w>\": 25450,\n  \"stalin</w>\": 28346,\n  \"stalk\": 40826,\n  \"stalk</w>\": 14878,\n  \"stalker</w>\": 26777,\n  \"stalking</w>\": 24721,\n  \"stalks</w>\": 45886,\n  \"stall\": 24636,\n  \"stall</w>\": 12058,\n  \"stalled</w>\": 40362,\n  \"stallion</w>\": 28273,\n  \"stallions</w>\": 44787,\n  \"stallone</w>\": 40969,\n  \"stalls</w>\": 25427,\n  \"stam\": 4663,\n  \"stamatic</w>\": 30904,\n  \"stamford</w>\": 27843,\n  \"stamina</w>\": 48753,\n  \"stamp\": 28694,\n  \"stamp</w>\": 12771,\n  \"stampcollecting</w>\": 42852,\n  \"stamped</w>\": 38356,\n  \"stampede</w>\": 25384,\n  \"stamps</w>\": 13827,\n  \"stan\": 2203,\n  \"stan</w>\": 2434,\n  \"stana</w>\": 33311,\n  \"stanbul</w>\": 11231,\n  \"stance\": 48900,\n  \"stance</w>\": 3542,\n  \"stances</w>\": 15054,\n  \"stand\": 1819,\n  \"stand</w>\": 2087,\n  \"standalone</w>\": 44887,\n  \"standard\": 35780,\n  \"standard</w>\": 5807,\n  \"standardi\": 30247,\n  \"standards</w>\": 9022,\n  \"standby</w>\": 36184,\n  \"standing\": 39934,\n  \"standing</w>\": 2862,\n  \"standings</w>\": 19835,\n  \"standoff</w>\": 31821,\n  \"standout</w>\": 23131,\n  \"standre\": 48309,\n  \"stands</w>\": 6446,\n  \"standup\": 35108,\n  \"standup</w>\": 24964,\n  \"standwith\": 19540,\n  \"stanford\": 36219,\n  \"stanford</w>\": 15087,\n  \"stang</w>\": 12536,\n  \"stani</w>\": 38228,\n  \"stanis\": 37711,\n  \"stanley\": 19048,\n  \"stanley</w>\": 10079,\n  \"stanleycup</w>\": 28662,\n  \"stans</w>\": 26564,\n  \"stant\": 41576,\n  \"stant</w>\": 4906,\n  \"stanton</w>\": 25400,\n  \"stap\": 10438,\n  \"staple</w>\": 22695,\n  \"staples</w>\": 23646,\n  \"stapleton</w>\": 45228,\n  \"star\": 993,\n  \"star</w>\": 1565,\n  \"starbuck\": 48519,\n  \"starbucks</w>\": 9499,\n  \"starch</w>\": 47837,\n  \"starcraft</w>\": 48871,\n  \"stardom</w>\": 44616,\n  \"stardust</w>\": 34337,\n  \"stare</w>\": 18094,\n  \"stared</w>\": 47772,\n  \"stares</w>\": 37916,\n  \"starfish</w>\": 44283,\n  \"stargate</w>\": 41099,\n  \"stargazing</w>\": 49328,\n  \"staring</w>\": 13800,\n  \"stark\": 40446,\n  \"stark</w>\": 15353,\n  \"starlight</w>\": 32197,\n  \"starling</w>\": 46205,\n  \"starmagic\": 48023,\n  \"starplus</w>\": 37815,\n  \"starr</w>\": 19186,\n  \"starred</w>\": 24180,\n  \"starrer</w>\": 41311,\n  \"starring</w>\": 6660,\n  \"starry</w>\": 30963,\n  \"stars</w>\": 2895,\n  \"starship</w>\": 37166,\n  \"start\": 17466,\n  \"start</w>\": 1572,\n  \"started</w>\": 2760,\n  \"starter</w>\": 7800,\n  \"starters</w>\": 22222,\n  \"starting</w>\": 2530,\n  \"startrek\": 30642,\n  \"startrek</w>\": 15349,\n  \"starts</w>\": 3105,\n  \"startu\": 6996,\n  \"startup\": 18049,\n  \"startup</w>\": 5882,\n  \"startups</w>\": 9056,\n  \"starve</w>\": 46957,\n  \"starving</w>\": 30473,\n  \"starwar\": 17287,\n  \"starwars\": 26239,\n  \"starwars</w>\": 7887,\n  \"starz</w>\": 25928,\n  \"stas</w>\": 19866,\n  \"stash</w>\": 27711,\n  \"stasy</w>\": 45942,\n  \"stat\": 3004,\n  \"stat</w>\": 15216,\n  \"state\": 3492,\n  \"state</w>\": 1295,\n  \"statec\": 33931,\n  \"stated</w>\": 19629,\n  \"statedept</w>\": 41458,\n  \"statefair</w>\": 40305,\n  \"statement</w>\": 5401,\n  \"statements</w>\": 19513,\n  \"staten</w>\": 38263,\n  \"stateof\": 35195,\n  \"states\": 22125,\n  \"states</w>\": 4218,\n  \"statesman</w>\": 35301,\n  \"stateu</w>\": 44248,\n  \"statewide</w>\": 29561,\n  \"stati\": 9622,\n  \"static</w>\": 16363,\n  \"stating</w>\": 35147,\n  \"station\": 13498,\n  \"station</w>\": 2631,\n  \"stationary</w>\": 29493,\n  \"stationed</w>\": 47618,\n  \"stationery</w>\": 33851,\n  \"stations</w>\": 10051,\n  \"statistical</w>\": 29349,\n  \"statistics</w>\": 14165,\n  \"stats</w>\": 7294,\n  \"statu\": 32481,\n  \"statue</w>\": 8222,\n  \"statues</w>\": 24363,\n  \"status</w>\": 6414,\n  \"stau\": 28550,\n  \"staur\": 3709,\n  \"stav\": 20285,\n  \"stax</w>\": 32235,\n  \"stay\": 4714,\n  \"stay</w>\": 2277,\n  \"stayed</w>\": 13805,\n  \"staying</w>\": 8993,\n  \"stays</w>\": 13311,\n  \"staytuned</w>\": 39285,\n  \"stc</w>\": 29859,\n  \"std</w>\": 30477,\n  \"ste\": 795,\n  \"ste</w>\": 2686,\n  \"stea</w>\": 46614,\n  \"stead\": 16101,\n  \"stead</w>\": 11031,\n  \"steadily</w>\": 35049,\n  \"steady</w>\": 12937,\n  \"steak\": 26955,\n  \"steak</w>\": 8913,\n  \"steakhouse</w>\": 35031,\n  \"steaks</w>\": 30655,\n  \"steal\": 37070,\n  \"steal</w>\": 10181,\n  \"stealing</w>\": 14242,\n  \"steals</w>\": 20224,\n  \"stealth</w>\": 25327,\n  \"steam\": 10962,\n  \"steam</w>\": 6972,\n  \"steamboat</w>\": 41121,\n  \"steamed</w>\": 29007,\n  \"steamer</w>\": 49075,\n  \"steaming</w>\": 43746,\n  \"steampunk</w>\": 24130,\n  \"steamy</w>\": 43104,\n  \"stec</w>\": 46713,\n  \"stech\": 48949,\n  \"stech</w>\": 32455,\n  \"sted\": 20426,\n  \"sted</w>\": 1356,\n  \"stee\": 31793,\n  \"steed</w>\": 48293,\n  \"steel\": 6938,\n  \"steel</w>\": 4726,\n  \"steele</w>\": 19460,\n  \"steelers</w>\": 14430,\n  \"steen\": 42851,\n  \"steen</w>\": 18625,\n  \"steep\": 28648,\n  \"steep</w>\": 20714,\n  \"steer</w>\": 27612,\n  \"steering</w>\": 19833,\n  \"stef\": 29158,\n  \"stefan\": 15004,\n  \"stefan</w>\": 18829,\n  \"stefani</w>\": 38319,\n  \"stefano</w>\": 30719,\n  \"steff\": 30075,\n  \"stein\": 13653,\n  \"stein</w>\": 5818,\n  \"steiner</w>\": 36314,\n  \"stel\": 9102,\n  \"stel</w>\": 10798,\n  \"stell\": 22355,\n  \"stella\": 46178,\n  \"stella</w>\": 17869,\n  \"stellar</w>\": 13810,\n  \"stellen\": 42754,\n  \"stem\": 24342,\n  \"stem</w>\": 6761,\n  \"stemc\": 40486,\n  \"stems</w>\": 31503,\n  \"sten\": 7652,\n  \"sten</w>\": 7877,\n  \"stencil</w>\": 47854,\n  \"stennis</w>\": 45636,\n  \"step\": 15572,\n  \"step</w>\": 3348,\n  \"steph\": 3522,\n  \"steph</w>\": 16251,\n  \"stephan</w>\": 37312,\n  \"stephani\": 48121,\n  \"stephanie</w>\": 14361,\n  \"stephen\": 10421,\n  \"stephen</w>\": 6078,\n  \"stephenking</w>\": 46361,\n  \"stephens</w>\": 22256,\n  \"stephenson</w>\": 37280,\n  \"stepped</w>\": 18384,\n  \"stepping</w>\": 15906,\n  \"steps</w>\": 5408,\n  \"ster\": 1022,\n  \"ster</w>\": 881,\n  \"stere\": 9229,\n  \"stered</w>\": 6935,\n  \"stereo\": 15992,\n  \"stereo</w>\": 17400,\n  \"stereotypes</w>\": 27890,\n  \"steria</w>\": 38804,\n  \"stering</w>\": 14175,\n  \"sterling\": 45790,\n  \"sterling</w>\": 9378,\n  \"stern\": 36254,\n  \"stern</w>\": 2945,\n  \"steroids</w>\": 37670,\n  \"sterone</w>\": 39418,\n  \"sters</w>\": 2132,\n  \"stery</w>\": 24232,\n  \"stest</w>\": 8556,\n  \"stev\": 11640,\n  \"steve\": 7412,\n  \"steve</w>\": 3803,\n  \"steven\": 10973,\n  \"steven</w>\": 8016,\n  \"stevens</w>\": 13877,\n  \"stevenson</w>\": 25091,\n  \"stevie\": 42104,\n  \"stevie</w>\": 18969,\n  \"stew</w>\": 17906,\n  \"stewar\": 28453,\n  \"steward\": 34980,\n  \"steward</w>\": 43355,\n  \"stewards</w>\": 49294,\n  \"stewardship</w>\": 36720,\n  \"stewart</w>\": 8120,\n  \"stfu</w>\": 47000,\n  \"stg</w>\": 48387,\n  \"stgeorge\": 43698,\n  \"sth\": 13456,\n  \"sth</w>\": 34004,\n  \"sthe\": 16491,\n  \"sthel\": 42863,\n  \"sti\": 860,\n  \"sti</w>\": 12439,\n  \"stia</w>\": 26492,\n  \"stible</w>\": 25835,\n  \"stic\": 5868,\n  \"stic</w>\": 1561,\n  \"stical</w>\": 16660,\n  \"stically</w>\": 19041,\n  \"stick\": 5483,\n  \"stick</w>\": 4987,\n  \"sticker</w>\": 11270,\n  \"stickers</w>\": 11613,\n  \"sticking</w>\": 21021,\n  \"sticks</w>\": 10016,\n  \"sticky</w>\": 18887,\n  \"stics</w>\": 5449,\n  \"stie\": 38164,\n  \"stie</w>\": 11000,\n  \"stier</w>\": 42069,\n  \"sties</w>\": 16428,\n  \"stiff\": 43471,\n  \"stiff</w>\": 21441,\n  \"stig\": 4088,\n  \"stig</w>\": 42551,\n  \"stigate</w>\": 15390,\n  \"stigma</w>\": 20619,\n  \"stik</w>\": 42247,\n  \"stil\": 21790,\n  \"stil</w>\": 37519,\n  \"stiles</w>\": 33028,\n  \"still\": 13209,\n  \"still</w>\": 1170,\n  \"stills</w>\": 20259,\n  \"stim\": 18269,\n  \"stime</w>\": 24711,\n  \"stimul\": 16434,\n  \"stimulate</w>\": 42380,\n  \"stimulating</w>\": 41237,\n  \"stimulation</w>\": 39530,\n  \"stimulus</w>\": 47283,\n  \"stin\": 2588,\n  \"stin</w>\": 4025,\n  \"stina</w>\": 22359,\n  \"stine</w>\": 7098,\n  \"sting\": 19868,\n  \"sting</w>\": 1271,\n  \"stingly</w>\": 49332,\n  \"stingray</w>\": 43229,\n  \"stink</w>\": 38213,\n  \"stinky</w>\": 44957,\n  \"stino</w>\": 40658,\n  \"stint</w>\": 33531,\n  \"stion</w>\": 10812,\n  \"stip\": 39869,\n  \"stips</w>\": 44756,\n  \"stique</w>\": 43305,\n  \"stir\": 12416,\n  \"stir</w>\": 19564,\n  \"stirling</w>\": 23128,\n  \"stirring</w>\": 39205,\n  \"stis</w>\": 45224,\n  \"stit\": 14110,\n  \"stitch\": 30003,\n  \"stitch</w>\": 14771,\n  \"stitched</w>\": 36540,\n  \"stitcher</w>\": 48204,\n  \"stitches</w>\": 32360,\n  \"stitching</w>\": 45208,\n  \"stitu\": 14585,\n  \"stitutes</w>\": 40479,\n  \"stive</w>\": 22426,\n  \"stix</w>\": 48829,\n  \"stjohn\": 36153,\n  \"stl\": 14179,\n  \"stl</w>\": 12527,\n  \"stlblues</w>\": 44138,\n  \"stlcards</w>\": 28644,\n  \"stle</w>\": 7698,\n  \"stles</w>\": 48638,\n  \"stlouis\": 40358,\n  \"stlouis</w>\": 39516,\n  \"stm</w>\": 28333,\n  \"stn</w>\": 27175,\n  \"sto\": 928,\n  \"sto</w>\": 5723,\n  \"stock\": 5899,\n  \"stock</w>\": 3206,\n  \"stocked</w>\": 23552,\n  \"stockholm</w>\": 16024,\n  \"stocki\": 42944,\n  \"stocking</w>\": 17335,\n  \"stockings</w>\": 28040,\n  \"stockmarket</w>\": 40359,\n  \"stockport</w>\": 35569,\n  \"stocks</w>\": 9321,\n  \"stockton</w>\": 26130,\n  \"stoday</w>\": 22392,\n  \"stok</w>\": 43782,\n  \"stoke\": 31338,\n  \"stoke</w>\": 13550,\n  \"stoked</w>\": 13160,\n  \"stokes</w>\": 27512,\n  \"stol\": 11401,\n  \"stol</w>\": 6700,\n  \"stole</w>\": 10995,\n  \"stolen</w>\": 8704,\n  \"stolic</w>\": 45020,\n  \"stom\": 2343,\n  \"stom</w>\": 38068,\n  \"stoma</w>\": 43545,\n  \"stomach</w>\": 14722,\n  \"stomp</w>\": 40165,\n  \"stomping</w>\": 46144,\n  \"ston\": 4101,\n  \"ston</w>\": 1839,\n  \"stone\": 7694,\n  \"stone</w>\": 2441,\n  \"stoned</w>\": 36248,\n  \"stonehenge</w>\": 42417,\n  \"stoner\": 35131,\n  \"stoner</w>\": 29115,\n  \"stones\": 42659,\n  \"stones</w>\": 6885,\n  \"stonewall</w>\": 39688,\n  \"stoney</w>\": 44198,\n  \"stony\": 41717,\n  \"stony</w>\": 35691,\n  \"stoo\": 24505,\n  \"stood</w>\": 9151,\n  \"stool\": 34413,\n  \"stool</w>\": 22314,\n  \"stop\": 6005,\n  \"stop</w>\": 1691,\n  \"stopbrexit</w>\": 48680,\n  \"stopp\": 15738,\n  \"stopped</w>\": 6015,\n  \"stopper</w>\": 32147,\n  \"stoppers</w>\": 34457,\n  \"stopping</w>\": 10735,\n  \"stops</w>\": 9822,\n  \"stopthe\": 26463,\n  \"stor\": 809,\n  \"stor</w>\": 17740,\n  \"storage</w>\": 6824,\n  \"store\": 17769,\n  \"store</w>\": 2183,\n  \"stored</w>\": 28257,\n  \"stores</w>\": 6370,\n  \"storey</w>\": 24025,\n  \"storians</w>\": 34628,\n  \"stories</w>\": 3784,\n  \"storing</w>\": 40087,\n  \"stork</w>\": 46452,\n  \"storm\": 7434,\n  \"storm</w>\": 2819,\n  \"stormed</w>\": 45939,\n  \"stormhour</w>\": 12161,\n  \"storming</w>\": 24842,\n  \"storms</w>\": 6464,\n  \"stormtrooper</w>\": 49218,\n  \"stormy</w>\": 20075,\n  \"stors</w>\": 7178,\n  \"story\": 6512,\n  \"story</w>\": 1134,\n  \"storyline</w>\": 37079,\n  \"storymonth</w>\": 23717,\n  \"storyteller</w>\": 35882,\n  \"storytelling</w>\": 14457,\n  \"storytime</w>\": 44197,\n  \"stos</w>\": 19281,\n  \"stou\": 37168,\n  \"stour\": 37361,\n  \"stour</w>\": 21928,\n  \"stout</w>\": 16550,\n  \"stove</w>\": 21423,\n  \"stow\": 44284,\n  \"stow</w>\": 17046,\n  \"stowe</w>\": 34196,\n  \"stown\": 28071,\n  \"stown</w>\": 7939,\n  \"stp</w>\": 30576,\n  \"stpatrick\": 21343,\n  \"stpatricksday</w>\": 22747,\n  \"str\": 807,\n  \"str</w>\": 15913,\n  \"stra\": 1894,\n  \"stra</w>\": 6253,\n  \"strack</w>\": 46861,\n  \"strada</w>\": 31134,\n  \"strade</w>\": 48968,\n  \"straigh\": 31016,\n  \"straight\": 22114,\n  \"straight</w>\": 4241,\n  \"strain</w>\": 16887,\n  \"strains</w>\": 38067,\n  \"strait</w>\": 22946,\n  \"straits</w>\": 41984,\n  \"stral</w>\": 23289,\n  \"stralia</w>\": 42510,\n  \"stran\": 18411,\n  \"strand\": 18214,\n  \"strand</w>\": 17826,\n  \"stranded</w>\": 22975,\n  \"strang\": 11138,\n  \"strange\": 33380,\n  \"strange</w>\": 7288,\n  \"strangely</w>\": 37566,\n  \"stranger\": 35541,\n  \"stranger</w>\": 14149,\n  \"strangers</w>\": 20684,\n  \"strangerthings</w>\": 43271,\n  \"strangest</w>\": 46740,\n  \"strap</w>\": 13946,\n  \"strapped</w>\": 40922,\n  \"straps</w>\": 31213,\n  \"stras\": 36814,\n  \"stras</w>\": 42125,\n  \"strasbourg</w>\": 39576,\n  \"strat\": 11345,\n  \"strat</w>\": 32925,\n  \"strata</w>\": 47278,\n  \"strate\": 3532,\n  \"strate</w>\": 28758,\n  \"strategi\": 49102,\n  \"strategic</w>\": 10246,\n  \"strategically</w>\": 45706,\n  \"strategies</w>\": 9942,\n  \"strategist</w>\": 37180,\n  \"strategy</w>\": 5637,\n  \"strates</w>\": 45724,\n  \"stratford</w>\": 23955,\n  \"strath\": 21997,\n  \"stration</w>\": 3156,\n  \"strato\": 28878,\n  \"strauss</w>\": 32033,\n  \"strava</w>\": 34625,\n  \"stravel</w>\": 43494,\n  \"straw\": 7430,\n  \"straw</w>\": 16438,\n  \"strawberries</w>\": 17796,\n  \"strawberry</w>\": 10233,\n  \"straws</w>\": 33048,\n  \"stray\": 30784,\n  \"stray</w>\": 15712,\n  \"stre\": 1079,\n  \"stre</w>\": 19652,\n  \"stread</w>\": 27797,\n  \"streak</w>\": 11749,\n  \"streaks</w>\": 42092,\n  \"stream\": 8659,\n  \"stream</w>\": 3322,\n  \"streamed</w>\": 26280,\n  \"streamer</w>\": 25178,\n  \"streamers</w>\": 19937,\n  \"streaming</w>\": 6278,\n  \"streamline</w>\": 44917,\n  \"streams</w>\": 13545,\n  \"stree\": 35082,\n  \"stree</w>\": 32438,\n  \"streep</w>\": 38701,\n  \"street\": 4839,\n  \"street</w>\": 2012,\n  \"streetart</w>\": 12948,\n  \"streetcar</w>\": 34268,\n  \"streetfood</w>\": 44486,\n  \"streetphotography</w>\": 20786,\n  \"streets</w>\": 6058,\n  \"streetstyle</w>\": 39118,\n  \"streetwear</w>\": 37298,\n  \"strel</w>\": 39685,\n  \"stren\": 4349,\n  \"streng\": 4472,\n  \"strength\": 15475,\n  \"strength</w>\": 5959,\n  \"strengthen</w>\": 16318,\n  \"strengthened</w>\": 47131,\n  \"strengthening</w>\": 23475,\n  \"strengthens</w>\": 40280,\n  \"strengths</w>\": 29268,\n  \"stress\": 17297,\n  \"stress</w>\": 5843,\n  \"stressed</w>\": 16497,\n  \"stresses</w>\": 32112,\n  \"stressful</w>\": 24268,\n  \"stressing</w>\": 35917,\n  \"stret\": 12265,\n  \"stretch</w>\": 10064,\n  \"stretched</w>\": 29393,\n  \"stretches</w>\": 32231,\n  \"stretching</w>\": 24423,\n  \"stri\": 1493,\n  \"stri</w>\": 27795,\n  \"stria</w>\": 39620,\n  \"strial</w>\": 30217,\n  \"strian</w>\": 12924,\n  \"stric\": 2607,\n  \"strick\": 25181,\n  \"strickland</w>\": 48939,\n  \"strict</w>\": 21585,\n  \"strictly</w>\": 16475,\n  \"stride</w>\": 36024,\n  \"strides</w>\": 37355,\n  \"stries</w>\": 18171,\n  \"strife</w>\": 46473,\n  \"strike\": 20774,\n  \"strike</w>\": 5767,\n  \"striker</w>\": 12448,\n  \"strikers</w>\": 33465,\n  \"strikes</w>\": 9280,\n  \"striking</w>\": 13392,\n  \"string\": 25512,\n  \"string</w>\": 9696,\n  \"strings</w>\": 15699,\n  \"strip</w>\": 9317,\n  \"stripe</w>\": 19368,\n  \"striped</w>\": 22192,\n  \"stripes</w>\": 14239,\n  \"stripped</w>\": 26602,\n  \"stripper</w>\": 45759,\n  \"stripping</w>\": 48588,\n  \"strips</w>\": 19000,\n  \"strive</w>\": 22140,\n  \"striving</w>\": 37671,\n  \"stro\": 3121,\n  \"stro</w>\": 6186,\n  \"stroke\": 44621,\n  \"stroke</w>\": 10403,\n  \"strokes</w>\": 26595,\n  \"strol\": 30123,\n  \"stroll</w>\": 15924,\n  \"stroller</w>\": 47076,\n  \"strolling</w>\": 40911,\n  \"strom</w>\": 14707,\n  \"stron\": 4165,\n  \"strong\": 10436,\n  \"strong</w>\": 2389,\n  \"stronger\": 27760,\n  \"stronger</w>\": 9245,\n  \"strongertogether</w>\": 38532,\n  \"strongest</w>\": 16171,\n  \"strongh\": 38678,\n  \"strongly</w>\": 15507,\n  \"strophy</w>\": 47912,\n  \"strou\": 48425,\n  \"stroud</w>\": 39895,\n  \"strous</w>\": 23752,\n  \"stru\": 1666,\n  \"struc\": 3311,\n  \"struck</w>\": 10861,\n  \"struction</w>\": 12497,\n  \"structural</w>\": 16899,\n  \"structure</w>\": 5285,\n  \"structured</w>\": 27147,\n  \"structures</w>\": 14171,\n  \"structuring</w>\": 37496,\n  \"strugg\": 5176,\n  \"struggle</w>\": 8443,\n  \"struggled</w>\": 32921,\n  \"struggles</w>\": 17446,\n  \"struggling</w>\": 12135,\n  \"struly\": 34118,\n  \"strum</w>\": 37632,\n  \"strung</w>\": 46033,\n  \"strust</w>\": 23920,\n  \"strut</w>\": 48375,\n  \"stry\": 17325,\n  \"stry</w>\": 2245,\n  \"sts</w>\": 1088,\n  \"stu\": 858,\n  \"stu</w>\": 23531,\n  \"stuart\": 32054,\n  \"stuart</w>\": 11723,\n  \"stub\": 27066,\n  \"stubborn</w>\": 38955,\n  \"stuck</w>\": 6596,\n  \"stud\": 22368,\n  \"stud</w>\": 13319,\n  \"studded</w>\": 29153,\n  \"studen\": 44156,\n  \"student\": 14681,\n  \"student</w>\": 2556,\n  \"students</w>\": 1712,\n  \"studi\": 5691,\n  \"studied</w>\": 21369,\n  \"studies</w>\": 6426,\n  \"studio\": 17798,\n  \"studio</w>\": 3155,\n  \"studios</w>\": 6231,\n  \"studs</w>\": 27571,\n  \"study\": 21051,\n  \"study</w>\": 3123,\n  \"studyabroad</w>\": 45425,\n  \"studying</w>\": 8826,\n  \"stuff\": 46072,\n  \"stuff</w>\": 3487,\n  \"stuffed</w>\": 11781,\n  \"stuffing</w>\": 31612,\n  \"stuffs</w>\": 43455,\n  \"stuk</w>\": 32424,\n  \"stumb\": 16784,\n  \"stumble</w>\": 39045,\n  \"stumbled</w>\": 21776,\n  \"stump</w>\": 32064,\n  \"stun\": 3088,\n  \"stun</w>\": 37959,\n  \"stunned</w>\": 34034,\n  \"stunner</w>\": 29965,\n  \"stunning</w>\": 3769,\n  \"stunningly</w>\": 47515,\n  \"stuns</w>\": 43796,\n  \"stunt</w>\": 19905,\n  \"stunts</w>\": 40118,\n  \"stupi\": 18975,\n  \"stupid\": 42600,\n  \"stupid</w>\": 8085,\n  \"stupidity</w>\": 33766,\n  \"stur\": 10676,\n  \"sturdy</w>\": 43780,\n  \"stures</w>\": 27223,\n  \"sturgeon</w>\": 31580,\n  \"sturi\": 21747,\n  \"sturridge</w>\": 45331,\n  \"stutt\": 30444,\n  \"stuttgart</w>\": 32219,\n  \"stv\": 27060,\n  \"stv</w>\": 9708,\n  \"stweet</w>\": 46832,\n  \"stweets</w>\": 39174,\n  \"stx</w>\": 42548,\n  \"sty\": 1421,\n  \"sty</w>\": 2920,\n  \"style\": 12356,\n  \"style</w>\": 1844,\n  \"styled</w>\": 17974,\n  \"styles</w>\": 6948,\n  \"styli\": 38577,\n  \"styling</w>\": 14597,\n  \"stylish</w>\": 10378,\n  \"stylist</w>\": 15928,\n  \"styn</w>\": 41394,\n  \"su\": 605,\n  \"su</w>\": 2937,\n  \"sua</w>\": 42448,\n  \"suarez</w>\": 21437,\n  \"suave</w>\": 47305,\n  \"sub\": 1783,\n  \"sub</w>\": 7765,\n  \"subaru</w>\": 21319,\n  \"subjec\": 16090,\n  \"subject</w>\": 10300,\n  \"subjects</w>\": 22099,\n  \"subli\": 16350,\n  \"sublime</w>\": 22367,\n  \"submarine</w>\": 19968,\n  \"submer\": 27156,\n  \"submerged</w>\": 43171,\n  \"submission</w>\": 16571,\n  \"submissions</w>\": 21566,\n  \"submit</w>\": 10423,\n  \"submitted</w>\": 15189,\n  \"submitting</w>\": 38788,\n  \"subram\": 49207,\n  \"subs</w>\": 16398,\n  \"subscri\": 5838,\n  \"subscribe</w>\": 9839,\n  \"subscribed</w>\": 44867,\n  \"subscriber</w>\": 36292,\n  \"subscribers</w>\": 17337,\n  \"subscription</w>\": 17979,\n  \"subscriptions</w>\": 47162,\n  \"subsequ\": 33598,\n  \"subsequent</w>\": 44323,\n  \"subsi\": 14856,\n  \"subsidi\": 45029,\n  \"subsidiary</w>\": 45506,\n  \"subsidies</w>\": 37685,\n  \"subsidy</w>\": 47462,\n  \"substan\": 17487,\n  \"substance</w>\": 19309,\n  \"substances</w>\": 36834,\n  \"substantial</w>\": 27171,\n  \"substantially</w>\": 47577,\n  \"substitu\": 18529,\n  \"substitute</w>\": 25340,\n  \"subtitles</w>\": 39479,\n  \"subtle</w>\": 16536,\n  \"subur\": 12517,\n  \"suburb</w>\": 37664,\n  \"suburban</w>\": 23570,\n  \"suburbs</w>\": 25317,\n  \"subway</w>\": 12196,\n  \"suc\": 1869,\n  \"succe\": 7981,\n  \"succeed</w>\": 13556,\n  \"succeeded</w>\": 41077,\n  \"succes\": 39019,\n  \"success\": 3695,\n  \"success</w>\": 3034,\n  \"successes</w>\": 29436,\n  \"successful</w>\": 4670,\n  \"successfully</w>\": 9934,\n  \"succession</w>\": 38491,\n  \"successive</w>\": 41319,\n  \"successor</w>\": 34774,\n  \"succu\": 45253,\n  \"succul\": 25671,\n  \"succulent</w>\": 35236,\n  \"such</w>\": 2046,\n  \"suction</w>\": 42786,\n  \"sud\": 8067,\n  \"sud</w>\": 33714,\n  \"sudan\": 31149,\n  \"sudan</w>\": 13474,\n  \"sudanese</w>\": 42837,\n  \"sudbury</w>\": 32488,\n  \"sudden\": 10833,\n  \"sudden</w>\": 15433,\n  \"suddenly</w>\": 11076,\n  \"sue\": 14045,\n  \"sue</w>\": 6641,\n  \"sued</w>\": 22225,\n  \"suede</w>\": 21036,\n  \"sues</w>\": 17105,\n  \"suf\": 21204,\n  \"suf</w>\": 22579,\n  \"sufc</w>\": 37091,\n  \"suff\": 4866,\n  \"suffe\": 13510,\n  \"suffer</w>\": 13557,\n  \"suffered</w>\": 14766,\n  \"suffering</w>\": 10140,\n  \"suffers</w>\": 22389,\n  \"sufficient</w>\": 28410,\n  \"suffol\": 13775,\n  \"suffolk\": 46408,\n  \"suffolk</w>\": 15685,\n  \"suffra\": 34596,\n  \"suffrage</w>\": 39567,\n  \"sufi</w>\": 39756,\n  \"sug\": 3189,\n  \"suga</w>\": 28757,\n  \"sugar\": 12418,\n  \"sugar</w>\": 5574,\n  \"sugge\": 6345,\n  \"suggest</w>\": 13356,\n  \"suggested</w>\": 18790,\n  \"suggesti\": 15033,\n  \"suggesting</w>\": 29792,\n  \"suggestion</w>\": 23741,\n  \"suggestions</w>\": 16052,\n  \"suggests</w>\": 13333,\n  \"suho</w>\": 32744,\n  \"sui</w>\": 24972,\n  \"suici\": 16372,\n  \"suicidal</w>\": 37165,\n  \"suicide\": 31310,\n  \"suicide</w>\": 8247,\n  \"suing</w>\": 18309,\n  \"suisse</w>\": 35964,\n  \"suit\": 11887,\n  \"suit</w>\": 3940,\n  \"suitable</w>\": 17476,\n  \"suitcase</w>\": 27792,\n  \"suite</w>\": 9346,\n  \"suited</w>\": 25919,\n  \"suites</w>\": 21523,\n  \"suits</w>\": 9949,\n  \"suk\": 24820,\n  \"suk</w>\": 6886,\n  \"suka</w>\": 44017,\n  \"suke</w>\": 25590,\n  \"sukh\": 46961,\n  \"suki</w>\": 32704,\n  \"sul\": 1767,\n  \"sul</w>\": 19879,\n  \"sula\": 34713,\n  \"sula</w>\": 26143,\n  \"sullivan</w>\": 14477,\n  \"sully</w>\": 37752,\n  \"sulph\": 37234,\n  \"sulphur</w>\": 47659,\n  \"sultan\": 35650,\n  \"sultan</w>\": 17049,\n  \"sum\": 7054,\n  \"sum</w>\": 8257,\n  \"suma</w>\": 47938,\n  \"sumat\": 32640,\n  \"sumatra</w>\": 47346,\n  \"sume</w>\": 45457,\n  \"sumi</w>\": 41248,\n  \"summ\": 1309,\n  \"summar\": 34657,\n  \"summari\": 31993,\n  \"summary</w>\": 13435,\n  \"summed</w>\": 34912,\n  \"summer\": 5500,\n  \"summer</w>\": 1673,\n  \"summers</w>\": 18254,\n  \"summerslam</w>\": 40264,\n  \"summertime</w>\": 19025,\n  \"summit\": 30011,\n  \"summit</w>\": 3768,\n  \"summon\": 27622,\n  \"summon</w>\": 39782,\n  \"sumner</w>\": 46813,\n  \"sumo</w>\": 33734,\n  \"sump\": 34252,\n  \"sumptuous</w>\": 47354,\n  \"sums</w>\": 13325,\n  \"sun\": 968,\n  \"sun</w>\": 2176,\n  \"sunbathing</w>\": 46994,\n  \"sunburn</w>\": 45767,\n  \"sund</w>\": 40735,\n  \"sundae</w>\": 38078,\n  \"sundance</w>\": 24128,\n  \"sundar\": 44936,\n  \"sunday\": 6649,\n  \"sunday</w>\": 1706,\n  \"sundayfunday</w>\": 21565,\n  \"sundaymorning</w>\": 24809,\n  \"sundaymotivation</w>\": 46227,\n  \"sundays</w>\": 15827,\n  \"sundaywith\": 26469,\n  \"sundaywithmarsha</w>\": 26662,\n  \"sunder\": 15097,\n  \"sunderland\": 45727,\n  \"sunderland</w>\": 18851,\n  \"sundown</w>\": 44438,\n  \"sune</w>\": 41096,\n  \"sunflower</w>\": 21559,\n  \"sunflowers</w>\": 39809,\n  \"sung\": 16903,\n  \"sung</w>\": 6047,\n  \"sunglasses</w>\": 12906,\n  \"suni\": 17663,\n  \"suni</w>\": 47010,\n  \"sunil</w>\": 32861,\n  \"sunite</w>\": 21382,\n  \"sunited</w>\": 35276,\n  \"sunk</w>\": 37534,\n  \"sunken</w>\": 43473,\n  \"sunlight</w>\": 17996,\n  \"sunni</w>\": 44315,\n  \"sunny\": 15632,\n  \"sunny</w>\": 5438,\n  \"sunrise</w>\": 5610,\n  \"suns</w>\": 18322,\n  \"sunscreen</w>\": 29355,\n  \"sunset\": 37880,\n  \"sunset</w>\": 3424,\n  \"sunsets</w>\": 17721,\n  \"sunshine\": 32761,\n  \"sunshine</w>\": 5385,\n  \"suny</w>\": 41308,\n  \"sup\": 19078,\n  \"sup</w>\": 8249,\n  \"supdates</w>\": 24177,\n  \"super\": 1642,\n  \"super</w>\": 1994,\n  \"superb</w>\": 8930,\n  \"superbike</w>\": 45709,\n  \"superbowl\": 47461,\n  \"superbowl</w>\": 16467,\n  \"supercar</w>\": 27021,\n  \"supercars</w>\": 32185,\n  \"supercell</w>\": 43227,\n  \"supercharged</w>\": 47479,\n  \"supere\": 46831,\n  \"superfood</w>\": 41715,\n  \"supergirl</w>\": 25771,\n  \"superhero</w>\": 14049,\n  \"superheroes</w>\": 23334,\n  \"superint\": 17615,\n  \"superintendent</w>\": 19020,\n  \"superior</w>\": 13205,\n  \"superjunior</w>\": 40475,\n  \"superleague</w>\": 45539,\n  \"superman</w>\": 11237,\n  \"supermarket</w>\": 19897,\n  \"supermarkets</w>\": 45106,\n  \"supermodel</w>\": 41963,\n  \"supermoon</w>\": 36571,\n  \"supernatural</w>\": 15484,\n  \"supernova</w>\": 39843,\n  \"superrugby</w>\": 48717,\n  \"supersonic</w>\": 42019,\n  \"supersport</w>\": 46319,\n  \"superst\": 38202,\n  \"superstar\": 32551,\n  \"superstar</w>\": 10472,\n  \"superstars</w>\": 25797,\n  \"supervis\": 12709,\n  \"supervised</w>\": 41316,\n  \"supervision</w>\": 36234,\n  \"supervisor</w>\": 20366,\n  \"supervisors</w>\": 37958,\n  \"superyacht</w>\": 42714,\n  \"supp\": 1023,\n  \"supper</w>\": 15727,\n  \"supple\": 31431,\n  \"supplement</w>\": 19924,\n  \"supplements</w>\": 21265,\n  \"supplied</w>\": 24106,\n  \"supplier</w>\": 18043,\n  \"suppliers</w>\": 24196,\n  \"supplies</w>\": 9384,\n  \"supply\": 25074,\n  \"supply</w>\": 6389,\n  \"supplychain</w>\": 31224,\n  \"supplying</w>\": 32739,\n  \"suppo\": 6941,\n  \"suppor\": 2104,\n  \"support\": 12062,\n  \"support</w>\": 1425,\n  \"supported</w>\": 8038,\n  \"supporter</w>\": 12992,\n  \"supporters</w>\": 7403,\n  \"supportindiefilm</w>\": 43976,\n  \"supporting</w>\": 3976,\n  \"supportive</w>\": 18313,\n  \"supportlocal</w>\": 43852,\n  \"supports</w>\": 8336,\n  \"supportsmall\": 30941,\n  \"supportsmallstreamers</w>\": 36097,\n  \"suppose</w>\": 18924,\n  \"supposed</w>\": 9119,\n  \"supposedly</w>\": 32302,\n  \"suppre\": 20542,\n  \"suppression</w>\": 36508,\n  \"supra</w>\": 48485,\n  \"supre\": 5875,\n  \"supremac\": 28643,\n  \"supremacist</w>\": 39005,\n  \"supremacy</w>\": 28913,\n  \"supreme\": 35222,\n  \"supreme</w>\": 7468,\n  \"supt</w>\": 23625,\n  \"sur\": 1090,\n  \"sur</w>\": 7123,\n  \"sura\": 33412,\n  \"sura</w>\": 49125,\n  \"surabaya</w>\": 45227,\n  \"surance</w>\": 22184,\n  \"surat</w>\": 30201,\n  \"sure\": 14320,\n  \"sure</w>\": 1650,\n  \"sured</w>\": 36869,\n  \"surely</w>\": 11409,\n  \"sures</w>\": 12725,\n  \"suresh\": 32118,\n  \"suresh</w>\": 31464,\n  \"sureshpp\": 41924,\n  \"sureshpprabhu</w>\": 42050,\n  \"surf\": 10176,\n  \"surf</w>\": 10322,\n  \"surface</w>\": 7744,\n  \"surfaces</w>\": 20746,\n  \"surfer</w>\": 24925,\n  \"surfers</w>\": 34842,\n  \"surfing</w>\": 15762,\n  \"surg\": 13045,\n  \"surge</w>\": 17457,\n  \"surgeon</w>\": 16039,\n  \"surgeons</w>\": 26000,\n  \"surger\": 5122,\n  \"surgeries</w>\": 34940,\n  \"surgery</w>\": 5344,\n  \"surgical</w>\": 16386,\n  \"suri\": 14130,\n  \"suri</w>\": 33952,\n  \"suring</w>\": 16817,\n  \"suriya</w>\": 17832,\n  \"surpass</w>\": 45494,\n  \"surpassed</w>\": 25648,\n  \"surplus</w>\": 29413,\n  \"surpri\": 3244,\n  \"surprise</w>\": 5099,\n  \"surprised</w>\": 8949,\n  \"surprises</w>\": 16920,\n  \"surprising</w>\": 14964,\n  \"surprisingly</w>\": 17367,\n  \"surreal</w>\": 18408,\n  \"surrealism</w>\": 41773,\n  \"surrender</w>\": 20964,\n  \"surrendered</w>\": 44601,\n  \"surrey\": 26489,\n  \"surrey</w>\": 14315,\n  \"surro\": 47499,\n  \"surroun\": 8250,\n  \"surround\": 26543,\n  \"surround</w>\": 22999,\n  \"surrounded</w>\": 13589,\n  \"surrounding</w>\": 12544,\n  \"surroundings</w>\": 26915,\n  \"surrounds</w>\": 39012,\n  \"suru</w>\": 49240,\n  \"surve\": 8952,\n  \"surveill\": 15408,\n  \"surveillance</w>\": 15578,\n  \"survey\": 45914,\n  \"survey</w>\": 6809,\n  \"surveying</w>\": 33085,\n  \"surveys</w>\": 25096,\n  \"survi\": 3440,\n  \"surviv\": 12922,\n  \"survival</w>\": 10172,\n  \"survive</w>\": 10431,\n  \"survived</w>\": 13483,\n  \"survives</w>\": 30927,\n  \"surviving</w>\": 18609,\n  \"survivor\": 31934,\n  \"survivor</w>\": 10944,\n  \"survivors</w>\": 13711,\n  \"surya</w>\": 37767,\n  \"sus\": 8091,\n  \"sus</w>\": 3036,\n  \"susa</w>\": 20546,\n  \"susan\": 19922,\n  \"susan</w>\": 10168,\n  \"suscep\": 44270,\n  \"sush\": 22298,\n  \"sushi</w>\": 11729,\n  \"sushmaswar\": 48200,\n  \"susie</w>\": 32284,\n  \"susp\": 7971,\n  \"suspec\": 10298,\n  \"suspect</w>\": 9065,\n  \"suspected</w>\": 15579,\n  \"suspects</w>\": 18265,\n  \"suspen\": 10578,\n  \"suspend</w>\": 41007,\n  \"suspended</w>\": 13126,\n  \"suspends</w>\": 39535,\n  \"suspense</w>\": 21556,\n  \"suspension</w>\": 15417,\n  \"suspici\": 25714,\n  \"suspicion</w>\": 34910,\n  \"suspicious</w>\": 19862,\n  \"sussex\": 31244,\n  \"sussex</w>\": 13266,\n  \"sustain\": 4644,\n  \"sustain</w>\": 28156,\n  \"sustainability</w>\": 9635,\n  \"sustainable\": 23645,\n  \"sustainable</w>\": 7078,\n  \"sustained</w>\": 22699,\n  \"sustaining</w>\": 44418,\n  \"sut\": 23984,\n  \"sut</w>\": 28956,\n  \"sutherland</w>\": 27592,\n  \"sutton\": 39359,\n  \"sutton</w>\": 18564,\n  \"suv</w>\": 15985,\n  \"suz\": 9957,\n  \"suzanne</w>\": 24617,\n  \"suzu\": 36289,\n  \"suzuki</w>\": 16892,\n  \"suzy</w>\": 26552,\n  \"sv\": 6508,\n  \"sv</w>\": 17083,\n  \"svc</w>\": 45065,\n  \"sve\": 47637,\n  \"sven\": 37786,\n  \"sven</w>\": 45183,\n  \"sver\": 45923,\n  \"sville\": 44580,\n  \"sville</w>\": 6741,\n  \"svp</w>\": 28465,\n  \"svt</w>\": 42014,\n  \"svu</w>\": 32123,\n  \"sw\": 1220,\n  \"sw</w>\": 4457,\n  \"swa\": 4707,\n  \"swa</w>\": 31916,\n  \"swach\": 20862,\n  \"swachhb\": 31898,\n  \"swachhbharat</w>\": 36927,\n  \"swag\": 8852,\n  \"swag</w>\": 8177,\n  \"swagg</w>\": 47702,\n  \"swagger</w>\": 35797,\n  \"swain</w>\": 43226,\n  \"swal\": 13433,\n  \"swallow</w>\": 28979,\n  \"swallowed</w>\": 46956,\n  \"swallows</w>\": 45124,\n  \"swam</w>\": 42539,\n  \"swami</w>\": 25021,\n  \"swamp\": 41953,\n  \"swamp</w>\": 16595,\n  \"swamy</w>\": 28445,\n  \"swan\": 8215,\n  \"swan</w>\": 12530,\n  \"swana</w>\": 24699,\n  \"swans</w>\": 19516,\n  \"swansea</w>\": 16567,\n  \"swanson</w>\": 34797,\n  \"swap</w>\": 15234,\n  \"swapped</w>\": 39077,\n  \"swapping</w>\": 44702,\n  \"swaps</w>\": 49242,\n  \"swar\": 11680,\n  \"swarm</w>\": 31577,\n  \"swarovski</w>\": 28515,\n  \"swat\": 32547,\n  \"swat</w>\": 26482,\n  \"swatch</w>\": 48053,\n  \"sway\": 26443,\n  \"sway</w>\": 26617,\n  \"swc</w>\": 42231,\n  \"swe\": 2350,\n  \"swe</w>\": 38070,\n  \"swear</w>\": 7406,\n  \"swearing</w>\": 32627,\n  \"sweat\": 10282,\n  \"sweat</w>\": 12663,\n  \"sweater</w>\": 11455,\n  \"sweaters</w>\": 31303,\n  \"sweating</w>\": 33215,\n  \"sweats</w>\": 39321,\n  \"sweatshirt</w>\": 22442,\n  \"sweaty</w>\": 28419,\n  \"sweden</w>\": 8760,\n  \"swedish</w>\": 11585,\n  \"swee\": 1812,\n  \"sweek</w>\": 30017,\n  \"sweeney</w>\": 27286,\n  \"sweep\": 23220,\n  \"sweep</w>\": 13669,\n  \"sweeping</w>\": 25719,\n  \"sweeps</w>\": 26887,\n  \"sweepstakes</w>\": 25992,\n  \"sweet\": 10957,\n  \"sweet</w>\": 2418,\n  \"sweetened</w>\": 45577,\n  \"sweeter</w>\": 32873,\n  \"sweetest</w>\": 15180,\n  \"sweethe\": 16316,\n  \"sweetheart</w>\": 18079,\n  \"sweetie</w>\": 24450,\n  \"sweetness</w>\": 29713,\n  \"sweets</w>\": 18045,\n  \"swel\": 48470,\n  \"swell\": 35538,\n  \"swell</w>\": 21490,\n  \"swelling</w>\": 46578,\n  \"swept</w>\": 23311,\n  \"swer\": 30514,\n  \"swfc</w>\": 30227,\n  \"swfl</w>\": 46607,\n  \"swi\": 3881,\n  \"swi</w>\": 45223,\n  \"swick</w>\": 17159,\n  \"swif\": 28548,\n  \"swift\": 34843,\n  \"swift</w>\": 8229,\n  \"swild\": 33909,\n  \"swild</w>\": 38696,\n  \"swildlife</w>\": 46818,\n  \"swim\": 4928,\n  \"swim</w>\": 7681,\n  \"swimmer</w>\": 25475,\n  \"swimmers</w>\": 27776,\n  \"swimming</w>\": 7411,\n  \"swims</w>\": 46798,\n  \"swimsuit</w>\": 25504,\n  \"swimwear</w>\": 31889,\n  \"swin\": 14554,\n  \"swin</w>\": 40798,\n  \"swindon</w>\": 29540,\n  \"swine</w>\": 31166,\n  \"swing\": 25292,\n  \"swing</w>\": 7429,\n  \"swinging</w>\": 26760,\n  \"swings</w>\": 29141,\n  \"swipe</w>\": 31828,\n  \"swire</w>\": 42753,\n  \"swirl</w>\": 35795,\n  \"swis\": 23611,\n  \"swish</w>\": 38571,\n  \"swiss\": 37917,\n  \"swiss</w>\": 9287,\n  \"swit\": 3726,\n  \"switch\": 22480,\n  \"switch</w>\": 5893,\n  \"switched</w>\": 22869,\n  \"switches</w>\": 33569,\n  \"switching</w>\": 21155,\n  \"swith\": 17299,\n  \"switzer\": 9835,\n  \"switzerland</w>\": 9912,\n  \"swivel</w>\": 48256,\n  \"swo\": 38673,\n  \"swol\": 29575,\n  \"swollen</w>\": 36129,\n  \"swoo\": 29744,\n  \"swood</w>\": 24158,\n  \"swoon</w>\": 37028,\n  \"swoop</w>\": 45661,\n  \"sword\": 33294,\n  \"sword</w>\": 11356,\n  \"swords</w>\": 27181,\n  \"swork</w>\": 42722,\n  \"sworld</w>\": 33305,\n  \"sworn</w>\": 21130,\n  \"sworth</w>\": 13322,\n  \"swt</w>\": 38878,\n  \"swx</w>\": 20597,\n  \"sx\": 9402,\n  \"sx</w>\": 17806,\n  \"sxsw</w>\": 13369,\n  \"sy\": 974,\n  \"sy</w>\": 2126,\n  \"sya</w>\": 35017,\n  \"sycam\": 34911,\n  \"sycamore</w>\": 43086,\n  \"syd\": 4525,\n  \"syd</w>\": 22504,\n  \"sydney\": 15878,\n  \"sydney</w>\": 5278,\n  \"syed</w>\": 27624,\n  \"syfy</w>\": 32047,\n  \"sykes</w>\": 27287,\n  \"syl\": 6452,\n  \"sylla\": 41708,\n  \"sylvania</w>\": 12011,\n  \"sylve\": 28369,\n  \"sylvester</w>\": 37214,\n  \"sylvia</w>\": 25670,\n  \"sym\": 3645,\n  \"sym</w>\": 40327,\n  \"symb\": 22987,\n  \"symbol</w>\": 13085,\n  \"symboli\": 22019,\n  \"symbolic</w>\": 33177,\n  \"symbolism</w>\": 44679,\n  \"symbols</w>\": 25476,\n  \"symmetry</w>\": 31427,\n  \"symp\": 11468,\n  \"sympathi\": 47493,\n  \"sympathy</w>\": 32477,\n  \"symph\": 9544,\n  \"symphonic</w>\": 42639,\n  \"symphony</w>\": 11180,\n  \"sympo\": 9730,\n  \"symposium</w>\": 9971,\n  \"symptom</w>\": 47799,\n  \"symptoms</w>\": 12956,\n  \"syn\": 3758,\n  \"syn</w>\": 36090,\n  \"synago\": 30945,\n  \"synagogue</w>\": 33518,\n  \"sync</w>\": 20081,\n  \"synchron\": 23943,\n  \"syndic\": 21098,\n  \"syndicate</w>\": 28779,\n  \"syndrome</w>\": 10927,\n  \"syner\": 22283,\n  \"synergy</w>\": 32012,\n  \"syno\": 31533,\n  \"synod</w>\": 47712,\n  \"synopsis</w>\": 47018,\n  \"synth\": 33841,\n  \"synth</w>\": 24462,\n  \"synthe\": 22604,\n  \"synthesi\": 33565,\n  \"synthesis</w>\": 21602,\n  \"synthesizer</w>\": 44077,\n  \"synthetic</w>\": 19917,\n  \"syou\": 26742,\n  \"syour\": 21718,\n  \"syrac\": 17279,\n  \"syracuse</w>\": 19640,\n  \"syrah</w>\": 45364,\n  \"syri\": 18917,\n  \"syria</w>\": 5563,\n  \"syrian\": 47562,\n  \"syrian</w>\": 10041,\n  \"syrians</w>\": 41392,\n  \"syrup</w>\": 16611,\n  \"sys</w>\": 26726,\n  \"syste\": 1933,\n  \"system\": 47813,\n  \"system</w>\": 2422,\n  \"systematic</w>\": 28586,\n  \"systemic</w>\": 33807,\n  \"systems</w>\": 4828,\n  \"sz\": 13438,\n  \"sz</w>\": 15879,\n  \"sze\": 44507,\n  \"szn</w>\": 48092,\n  \"sÃ£o</w>\": 45911,\n  \"sÃ©\": 37879,\n  \"t\": 83,\n  \"t</w>\": 339,\n  \"ta\": 648,\n  \"ta</w>\": 1397,\n  \"taa</w>\": 43874,\n  \"tab\": 2648,\n  \"tab</w>\": 14724,\n  \"tabby</w>\": 36145,\n  \"tabern\": 48991,\n  \"tability</w>\": 15770,\n  \"table\": 12108,\n  \"table</w>\": 2175,\n  \"tableau</w>\": 39723,\n  \"tables</w>\": 7822,\n  \"tablet</w>\": 12494,\n  \"tabletop\": 46843,\n  \"tabletop</w>\": 25773,\n  \"tablets</w>\": 20436,\n  \"tably</w>\": 24440,\n  \"taboo</w>\": 38400,\n  \"tabs</w>\": 29163,\n  \"tac\": 3145,\n  \"tac</w>\": 22653,\n  \"tache</w>\": 39239,\n  \"tack\": 6339,\n  \"tack</w>\": 34446,\n  \"tackle</w>\": 10294,\n  \"tackled</w>\": 47218,\n  \"tackles</w>\": 18021,\n  \"tackling</w>\": 19628,\n  \"taco\": 31924,\n  \"taco</w>\": 12436,\n  \"tacoma</w>\": 25397,\n  \"tacos</w>\": 14090,\n  \"tactic</w>\": 40377,\n  \"tactical</w>\": 17137,\n  \"tactics</w>\": 16410,\n  \"tacular</w>\": 48985,\n  \"tad\": 15890,\n  \"tad</w>\": 19860,\n  \"tado</w>\": 40846,\n  \"tae\": 15257,\n  \"tae</w>\": 15580,\n  \"taehyung</w>\": 24642,\n  \"taek\": 30753,\n  \"taekwondo</w>\": 39963,\n  \"taemin</w>\": 30600,\n  \"taeyang</w>\": 45802,\n  \"taeyeon</w>\": 27389,\n  \"taf\": 29660,\n  \"taft</w>\": 42141,\n  \"tag\": 3456,\n  \"tag</w>\": 3640,\n  \"tage</w>\": 2669,\n  \"tages</w>\": 39902,\n  \"tagged</w>\": 12969,\n  \"tagging</w>\": 25138,\n  \"tagne</w>\": 47467,\n  \"tags</w>\": 11606,\n  \"tah\": 14822,\n  \"tah</w>\": 7090,\n  \"tahit\": 45385,\n  \"tahoe</w>\": 26140,\n  \"tai\": 6511,\n  \"tai</w>\": 13040,\n  \"taiji</w>\": 30185,\n  \"tail\": 7156,\n  \"tail</w>\": 4132,\n  \"tailed</w>\": 20626,\n  \"tailgate</w>\": 23168,\n  \"tailgating</w>\": 42625,\n  \"tailo\": 27230,\n  \"tailor</w>\": 29870,\n  \"tailored</w>\": 28275,\n  \"tailoring</w>\": 46357,\n  \"tails</w>\": 16066,\n  \"tain\": 2841,\n  \"tain</w>\": 1908,\n  \"taine\": 21214,\n  \"taine</w>\": 32299,\n  \"tained</w>\": 10212,\n  \"taining</w>\": 7565,\n  \"tainment</w>\": 30063,\n  \"tains</w>\": 3952,\n  \"tainted</w>\": 47211,\n  \"taipei</w>\": 24356,\n  \"tair\": 29143,\n  \"tairp</w>\": 43707,\n  \"tait</w>\": 45325,\n  \"taiwan\": 36319,\n  \"taiwan</w>\": 12626,\n  \"taiwanese</w>\": 41416,\n  \"taj\": 28937,\n  \"taj</w>\": 24805,\n  \"taji\": 46358,\n  \"tak\": 15070,\n  \"tak</w>\": 14458,\n  \"taka\": 24070,\n  \"taka</w>\": 40968,\n  \"take\": 5052,\n  \"take</w>\": 1172,\n  \"takeaway</w>\": 25737,\n  \"takeaways</w>\": 32080,\n  \"takeme\": 41748,\n  \"taken</w>\": 2807,\n  \"takeoff</w>\": 32789,\n  \"takeover</w>\": 11863,\n  \"taker</w>\": 17939,\n  \"takers</w>\": 30775,\n  \"takes</w>\": 2633,\n  \"takin</w>\": 30890,\n  \"taking</w>\": 2019,\n  \"taku</w>\": 48168,\n  \"tal\": 976,\n  \"tal</w>\": 2066,\n  \"tala</w>\": 29845,\n  \"talaga</w>\": 35349,\n  \"talbot</w>\": 30585,\n  \"tale\": 33971,\n  \"tale</w>\": 7798,\n  \"talent\": 30435,\n  \"talent</w>\": 5114,\n  \"talented</w>\": 5331,\n  \"talents</w>\": 16136,\n  \"tales</w>\": 9469,\n  \"tali\": 12122,\n  \"tali</w>\": 45406,\n  \"taliban</w>\": 20788,\n  \"talis\": 36480,\n  \"tality</w>\": 15631,\n  \"talk\": 12462,\n  \"talk</w>\": 1841,\n  \"talked</w>\": 10153,\n  \"talkin</w>\": 26040,\n  \"talking\": 31463,\n  \"talking</w>\": 2578,\n  \"talks</w>\": 3237,\n  \"tall\": 11664,\n  \"tall</w>\": 7771,\n  \"talla\": 21528,\n  \"tallade\": 44220,\n  \"tallahassee</w>\": 37832,\n  \"taller</w>\": 23470,\n  \"tallest</w>\": 19774,\n  \"tallinn</w>\": 45079,\n  \"tally</w>\": 16323,\n  \"talon</w>\": 47897,\n  \"tam\": 2661,\n  \"tam</w>\": 12246,\n  \"tama</w>\": 45424,\n  \"tamanna\": 48055,\n  \"tamar\": 22901,\n  \"tamara</w>\": 35697,\n  \"tame\": 38557,\n  \"tame</w>\": 32778,\n  \"tamed</w>\": 40575,\n  \"tami</w>\": 39429,\n  \"tamil\": 23046,\n  \"tamil</w>\": 14033,\n  \"tamilnadu</w>\": 32371,\n  \"tamine</w>\": 42566,\n  \"tammy</w>\": 28396,\n  \"tampa</w>\": 10906,\n  \"tampab\": 37852,\n  \"tamu</w>\": 34105,\n  \"tan\": 2123,\n  \"tan</w>\": 5039,\n  \"tana</w>\": 21396,\n  \"tand\": 20244,\n  \"tandem</w>\": 33756,\n  \"tane\": 13344,\n  \"tane</w>\": 24923,\n  \"taneous</w>\": 22275,\n  \"taneously</w>\": 24422,\n  \"tang\": 10425,\n  \"tang</w>\": 20794,\n  \"tanger\": 31844,\n  \"tangerine</w>\": 42045,\n  \"tangible</w>\": 44823,\n  \"tangle</w>\": 36568,\n  \"tangled</w>\": 33587,\n  \"tango</w>\": 24089,\n  \"tani\": 31374,\n  \"tani</w>\": 32985,\n  \"tania</w>\": 45369,\n  \"tank\": 29858,\n  \"tank</w>\": 6172,\n  \"tanker</w>\": 25020,\n  \"tanks</w>\": 14223,\n  \"tann\": 19174,\n  \"tanner</w>\": 22001,\n  \"tanning</w>\": 27985,\n  \"tans</w>\": 27332,\n  \"tant\": 41383,\n  \"tant</w>\": 41695,\n  \"tante</w>\": 48262,\n  \"tanto</w>\": 45685,\n  \"tany\": 34410,\n  \"tanya</w>\": 26800,\n  \"tanz\": 47399,\n  \"tanzania</w>\": 15711,\n  \"tao\": 29084,\n  \"tao</w>\": 18923,\n  \"tap\": 17923,\n  \"tap</w>\": 7888,\n  \"tapas</w>\": 27361,\n  \"tape\": 18332,\n  \"tape</w>\": 5749,\n  \"taped</w>\": 33219,\n  \"tapes</w>\": 17903,\n  \"tapestry</w>\": 33525,\n  \"taping</w>\": 24355,\n  \"tapp\": 27644,\n  \"tapp</w>\": 27764,\n  \"tapped</w>\": 26649,\n  \"tapping</w>\": 27882,\n  \"tapro\": 34415,\n  \"taproom</w>\": 40266,\n  \"taps</w>\": 23267,\n  \"tar\": 2002,\n  \"tar</w>\": 6977,\n  \"tara</w>\": 15264,\n  \"tarak</w>\": 37813,\n  \"taran\": 32370,\n  \"tarantino</w>\": 41180,\n  \"tarde</w>\": 48670,\n  \"tardis</w>\": 35410,\n  \"tares</w>\": 34587,\n  \"targe\": 9620,\n  \"target\": 38556,\n  \"target</w>\": 5400,\n  \"targeted</w>\": 14968,\n  \"targeting</w>\": 15818,\n  \"targets</w>\": 12468,\n  \"tari\": 4238,\n  \"tari</w>\": 38012,\n  \"tarian</w>\": 11762,\n  \"tarians</w>\": 42789,\n  \"taries</w>\": 47291,\n  \"tariff</w>\": 40220,\n  \"tariffs</w>\": 28335,\n  \"tariq</w>\": 42526,\n  \"tarmac</w>\": 44294,\n  \"taro</w>\": 26264,\n  \"tarot</w>\": 23702,\n  \"tart\": 16707,\n  \"tart</w>\": 14120,\n  \"tartan</w>\": 35064,\n  \"tarts</w>\": 29799,\n  \"tary\": 31729,\n  \"tary</w>\": 5065,\n  \"tarzan</w>\": 45463,\n  \"tas\": 6538,\n  \"tas</w>\": 10163,\n  \"tash\": 35272,\n  \"tasha</w>\": 44967,\n  \"task\": 39189,\n  \"task</w>\": 10549,\n  \"tasks</w>\": 19453,\n  \"tasmania</w>\": 22429,\n  \"tasmanian</w>\": 45102,\n  \"tassel</w>\": 49276,\n  \"tast\": 10839,\n  \"taste\": 14314,\n  \"taste</w>\": 5219,\n  \"tasted</w>\": 22827,\n  \"tasteof\": 38097,\n  \"taster</w>\": 29743,\n  \"tastes</w>\": 13736,\n  \"tastic</w>\": 21337,\n  \"tasting</w>\": 7656,\n  \"tastings</w>\": 49273,\n  \"tasty\": 43390,\n  \"tasty</w>\": 8568,\n  \"tat\": 2652,\n  \"tat</w>\": 21592,\n  \"tata</w>\": 19300,\n  \"tate\": 44476,\n  \"tate</w>\": 13295,\n  \"tath\": 27566,\n  \"tati\": 31433,\n  \"tatiana</w>\": 48837,\n  \"tation</w>\": 5280,\n  \"tations</w>\": 32324,\n  \"tator</w>\": 18791,\n  \"tators</w>\": 37206,\n  \"tats</w>\": 44557,\n  \"tatt\": 9232,\n  \"tatted</w>\": 41605,\n  \"tattoo\": 15980,\n  \"tattoo</w>\": 6325,\n  \"tattooed</w>\": 28541,\n  \"tattoos</w>\": 14900,\n  \"tatum</w>\": 26103,\n  \"tau\": 6620,\n  \"tau</w>\": 20510,\n  \"taught</w>\": 9306,\n  \"taun\": 23910,\n  \"taunton</w>\": 40681,\n  \"taurus</w>\": 32881,\n  \"taver\": 37776,\n  \"tavern</w>\": 18644,\n  \"taw\": 33868,\n  \"taw</w>\": 40289,\n  \"tawa</w>\": 29035,\n  \"tawards</w>\": 14351,\n  \"tax\": 4581,\n  \"tax</w>\": 3879,\n  \"taxation</w>\": 36847,\n  \"taxes</w>\": 11462,\n  \"taxi\": 25160,\n  \"taxi</w>\": 11380,\n  \"taxider\": 47420,\n  \"taxis</w>\": 34009,\n  \"taxpay\": 17986,\n  \"taxpayer</w>\": 30978,\n  \"taxpayers</w>\": 25503,\n  \"tay\": 6542,\n  \"tay</w>\": 15073,\n  \"taya</w>\": 38484,\n  \"tayl\": 3913,\n  \"taylor\": 9044,\n  \"taylor</w>\": 3961,\n  \"taylorswift</w>\": 18936,\n  \"tayo</w>\": 33941,\n  \"taz\": 41475,\n  \"taz</w>\": 31870,\n  \"tb\": 1990,\n  \"tb</w>\": 7490,\n  \"tba</w>\": 34363,\n  \"tball\": 8390,\n  \"tball</w>\": 1467,\n  \"tbc</w>\": 31807,\n  \"tbd</w>\": 45548,\n  \"tbh</w>\": 13238,\n  \"tbi</w>\": 45868,\n  \"tbl</w>\": 42962,\n  \"tbli\": 43664,\n  \"tblightning</w>\": 44178,\n  \"tbo</w>\": 34255,\n  \"tbr</w>\": 46643,\n  \"tbs</w>\": 37368,\n  \"tbt</w>\": 2950,\n  \"tc\": 6820,\n  \"tc</w>\": 5454,\n  \"tca</w>\": 35116,\n  \"tch\": 10744,\n  \"tch</w>\": 4048,\n  \"tches</w>\": 42001,\n  \"tcm\": 21501,\n  \"tcm</w>\": 26588,\n  \"tcmparty</w>\": 24338,\n  \"tcot</w>\": 8995,\n  \"tcs</w>\": 39107,\n  \"tcu</w>\": 26791,\n  \"td\": 20578,\n  \"td</w>\": 3192,\n  \"tdf</w>\": 21844,\n  \"tdi</w>\": 45621,\n  \"tdp</w>\": 47009,\n  \"tds</w>\": 20238,\n  \"tdsb</w>\": 29836,\n  \"te\": 600,\n  \"te</w>\": 756,\n  \"tea\": 41053,\n  \"tea</w>\": 3274,\n  \"teach\": 2043,\n  \"teach</w>\": 6865,\n  \"teacher\": 18051,\n  \"teacher</w>\": 4008,\n  \"teachers</w>\": 5069,\n  \"teaches</w>\": 17110,\n  \"teaching</w>\": 5141,\n  \"teachings</w>\": 32119,\n  \"teal</w>\": 22821,\n  \"team\": 2085,\n  \"team</w>\": 1027,\n  \"teamcanada</w>\": 46636,\n  \"teamed</w>\": 20590,\n  \"teamgb</w>\": 40971,\n  \"teaming</w>\": 24392,\n  \"teammate</w>\": 17900,\n  \"teammates</w>\": 13921,\n  \"teams</w>\": 3891,\n  \"teamsisd</w>\": 34703,\n  \"teamusa</w>\": 28625,\n  \"teamwork</w>\": 14657,\n  \"teaparty</w>\": 33065,\n  \"teapo\": 35745,\n  \"teapot</w>\": 40749,\n  \"tear\": 15802,\n  \"tear</w>\": 11862,\n  \"tearful</w>\": 46873,\n  \"tearing</w>\": 24785,\n  \"tears</w>\": 7688,\n  \"teas\": 23003,\n  \"teas</w>\": 29314,\n  \"tease</w>\": 25163,\n  \"teased</w>\": 49122,\n  \"teaser</w>\": 8982,\n  \"teasers</w>\": 48990,\n  \"teases</w>\": 28509,\n  \"teasing</w>\": 36507,\n  \"teat\": 26376,\n  \"teatime</w>\": 48948,\n  \"teatro</w>\": 35756,\n  \"teau</w>\": 24931,\n  \"tebow</w>\": 37797,\n  \"tec\": 17381,\n  \"tec</w>\": 11612,\n  \"tech\": 1782,\n  \"tech</w>\": 2061,\n  \"techcrunch</w>\": 42110,\n  \"techn\": 6252,\n  \"technews</w>\": 31787,\n  \"technic\": 16639,\n  \"technic</w>\": 37666,\n  \"technical\": 49231,\n  \"technical</w>\": 7582,\n  \"technically</w>\": 23180,\n  \"technician</w>\": 22540,\n  \"technicians</w>\": 35513,\n  \"techno\": 2599,\n  \"techno</w>\": 17564,\n  \"technological</w>\": 23068,\n  \"technologies</w>\": 10040,\n  \"technology</w>\": 3089,\n  \"techs</w>\": 41353,\n  \"ted\": 4841,\n  \"ted</w>\": 775,\n  \"tedcruz</w>\": 27517,\n  \"teddy\": 25758,\n  \"teddy</w>\": 11798,\n  \"tedly</w>\": 8539,\n  \"tedu</w>\": 42517,\n  \"tedx\": 17950,\n  \"tedx</w>\": 41504,\n  \"tee\": 12676,\n  \"tee</w>\": 3385,\n  \"teed</w>\": 13692,\n  \"teen\": 5398,\n  \"teen</w>\": 4697,\n  \"teenage</w>\": 14069,\n  \"teenager</w>\": 19338,\n  \"teenagers</w>\": 25989,\n  \"teenchoice</w>\": 28203,\n  \"teens</w>\": 12375,\n  \"teenth</w>\": 20249,\n  \"teenwolf</w>\": 40067,\n  \"teeny</w>\": 41622,\n  \"teer</w>\": 48648,\n  \"tees</w>\": 9641,\n  \"teessi\": 43295,\n  \"teeth</w>\": 8225,\n  \"tega</w>\": 29508,\n  \"tegr\": 39801,\n  \"teh\": 18720,\n  \"teh</w>\": 29601,\n  \"tehran</w>\": 26399,\n  \"tein</w>\": 33223,\n  \"tej</w>\": 46724,\n  \"tek\": 17489,\n  \"tek</w>\": 18294,\n  \"tekken</w>\": 29843,\n  \"tel\": 4978,\n  \"tel</w>\": 2226,\n  \"telang\": 23469,\n  \"telangana</w>\": 26386,\n  \"tele\": 3103,\n  \"tele</w>\": 32851,\n  \"telecom</w>\": 21057,\n  \"telecommunications</w>\": 39900,\n  \"telegram</w>\": 26780,\n  \"telegraph</w>\": 14713,\n  \"telephone</w>\": 17243,\n  \"telescope</w>\": 19037,\n  \"telethon</w>\": 49266,\n  \"televised</w>\": 39470,\n  \"television</w>\": 8608,\n  \"telford</w>\": 38323,\n  \"tell\": 16069,\n  \"tell</w>\": 2330,\n  \"teller</w>\": 20415,\n  \"tellers</w>\": 42707,\n  \"telling</w>\": 5507,\n  \"tells</w>\": 5217,\n  \"tellu\": 42511,\n  \"telly</w>\": 31475,\n  \"tels</w>\": 43607,\n  \"telugu</w>\": 22927,\n  \"tely</w>\": 5630,\n  \"tem\": 2404,\n  \"tem</w>\": 17536,\n  \"tema</w>\": 45881,\n  \"teme\": 43378,\n  \"temp\": 2684,\n  \"temp</w>\": 11097,\n  \"tempe</w>\": 36723,\n  \"temper\": 5981,\n  \"temper</w>\": 35521,\n  \"temperature</w>\": 9543,\n  \"temperatures</w>\": 11575,\n  \"tempered</w>\": 40521,\n  \"tempest</w>\": 36053,\n  \"templ\": 16679,\n  \"template</w>\": 18591,\n  \"templates</w>\": 30498,\n  \"temple\": 21841,\n  \"temple</w>\": 5620,\n  \"temples</w>\": 24024,\n  \"tempo</w>\": 19625,\n  \"tempor\": 4858,\n  \"temporal</w>\": 43656,\n  \"temporarily</w>\": 23189,\n  \"temporary</w>\": 6513,\n  \"temps</w>\": 11668,\n  \"tempt</w>\": 28460,\n  \"temptation</w>\": 30118,\n  \"tempted</w>\": 26226,\n  \"tempting</w>\": 34876,\n  \"ten\": 1149,\n  \"ten</w>\": 2581,\n  \"tenant</w>\": 16954,\n  \"tenants</w>\": 26023,\n  \"tenay</w>\": 45384,\n  \"tenberg</w>\": 31329,\n  \"tend\": 17630,\n  \"tend</w>\": 21252,\n  \"tendency</w>\": 47277,\n  \"tender\": 23020,\n  \"tender</w>\": 9838,\n  \"tenderloin</w>\": 42750,\n  \"tenders</w>\": 44741,\n  \"tending</w>\": 35084,\n  \"tendon</w>\": 48459,\n  \"tends</w>\": 39962,\n  \"tene\": 24868,\n  \"tened</w>\": 13682,\n  \"tener</w>\": 29054,\n  \"teneri\": 28000,\n  \"tenerife</w>\": 29401,\n  \"teners</w>\": 41307,\n  \"teness</w>\": 18018,\n  \"teng\": 34016,\n  \"teng</w>\": 28474,\n  \"tennant</w>\": 29310,\n  \"tennes\": 9514,\n  \"tennessee</w>\": 10053,\n  \"tennis\": 31504,\n  \"tennis</w>\": 5298,\n  \"tenor</w>\": 30521,\n  \"tens</w>\": 14062,\n  \"tense</w>\": 23518,\n  \"tension</w>\": 15221,\n  \"tensions</w>\": 24224,\n  \"tenstein</w>\": 49139,\n  \"tent\": 18505,\n  \"tent</w>\": 10782,\n  \"tentative</w>\": 48238,\n  \"tenth</w>\": 27483,\n  \"tention</w>\": 12191,\n  \"tents</w>\": 30730,\n  \"tenure</w>\": 30739,\n  \"teo</w>\": 18665,\n  \"tep</w>\": 31806,\n  \"tequ\": 17502,\n  \"tequila</w>\": 18510,\n  \"ter\": 704,\n  \"ter</w>\": 652,\n  \"tera</w>\": 15155,\n  \"teras</w>\": 44830,\n  \"tere\": 11329,\n  \"tered\": 49272,\n  \"tered</w>\": 4389,\n  \"terence</w>\": 33806,\n  \"teresa</w>\": 19081,\n  \"teri</w>\": 30917,\n  \"teria</w>\": 22685,\n  \"terie</w>\": 42276,\n  \"tering</w>\": 7929,\n  \"term\": 40991,\n  \"term</w>\": 4780,\n  \"termin\": 4766,\n  \"terminal</w>\": 11816,\n  \"terminals</w>\": 44091,\n  \"terminator</w>\": 29609,\n  \"terminology</w>\": 48896,\n  \"terms</w>\": 8663,\n  \"tern\": 41572,\n  \"tern</w>\": 12959,\n  \"terns</w>\": 25251,\n  \"tero\": 20727,\n  \"tero</w>\": 24697,\n  \"terps</w>\": 41471,\n  \"terr\": 3921,\n  \"terra\": 22366,\n  \"terra</w>\": 18816,\n  \"terrac\": 28549,\n  \"terrace</w>\": 13820,\n  \"terraces</w>\": 47508,\n  \"terracotta</w>\": 45123,\n  \"terrain</w>\": 20184,\n  \"terran\": 43726,\n  \"terre\": 33888,\n  \"terre</w>\": 27537,\n  \"terrell</w>\": 39494,\n  \"terrence</w>\": 38746,\n  \"terrestrial</w>\": 46299,\n  \"terri\": 4504,\n  \"terri</w>\": 36722,\n  \"terrible</w>\": 9741,\n  \"terribly</w>\": 34558,\n  \"terrier</w>\": 14455,\n  \"terriers</w>\": 47047,\n  \"terrific</w>\": 13837,\n  \"terrified</w>\": 28204,\n  \"terrifying</w>\": 18526,\n  \"territ\": 10720,\n  \"territorial</w>\": 39163,\n  \"territories</w>\": 32846,\n  \"territory</w>\": 13936,\n  \"terror\": 9596,\n  \"terror</w>\": 9327,\n  \"terrori\": 6836,\n  \"terrorism</w>\": 10583,\n  \"terrorist</w>\": 10575,\n  \"terrorists</w>\": 12835,\n  \"terry\": 19378,\n  \"terry</w>\": 8561,\n  \"ters\": 24102,\n  \"ters</w>\": 1737,\n  \"terti\": 48386,\n  \"tery</w>\": 4184,\n  \"tes\": 8019,\n  \"tes</w>\": 3609,\n  \"tesco</w>\": 15434,\n  \"tese</w>\": 33320,\n  \"tesla</w>\": 12254,\n  \"tess\": 21807,\n  \"tess</w>\": 20840,\n  \"tessa</w>\": 32063,\n  \"test\": 7738,\n  \"test</w>\": 1628,\n  \"testam\": 23477,\n  \"testament</w>\": 24609,\n  \"tested</w>\": 10576,\n  \"tester</w>\": 32707,\n  \"testi\": 18373,\n  \"testic\": 42364,\n  \"testify</w>\": 33088,\n  \"testifying</w>\": 46347,\n  \"testim\": 12553,\n  \"testimonial</w>\": 28834,\n  \"testimony</w>\": 18672,\n  \"testing</w>\": 4967,\n  \"testo\": 42428,\n  \"testosterone</w>\": 45168,\n  \"tests</w>\": 8715,\n  \"tet\": 40468,\n  \"tet</w>\": 13275,\n  \"tetra\": 40902,\n  \"tetris</w>\": 45934,\n  \"teu\": 47152,\n  \"teuk</w>\": 39979,\n  \"teur</w>\": 27120,\n  \"tex\": 2056,\n  \"tex</w>\": 11728,\n  \"texan\": 35287,\n  \"texan</w>\": 38386,\n  \"texans</w>\": 17580,\n  \"texanscheer</w>\": 43717,\n  \"texas\": 15713,\n  \"texas</w>\": 3403,\n  \"texaste\": 46469,\n  \"text\": 18169,\n  \"text</w>\": 4160,\n  \"textbook</w>\": 25952,\n  \"textbooks</w>\": 44041,\n  \"texted</w>\": 29004,\n  \"textile</w>\": 19789,\n  \"textiles</w>\": 24326,\n  \"texting</w>\": 18600,\n  \"texts</w>\": 12767,\n  \"texture</w>\": 16505,\n  \"textured</w>\": 32168,\n  \"textures</w>\": 28063,\n  \"tey</w>\": 32395,\n  \"tez</w>\": 22664,\n  \"tf\": 18828,\n  \"tf</w>\": 5001,\n  \"tfc</w>\": 30186,\n  \"tfl</w>\": 29918,\n  \"tford</w>\": 22493,\n  \"tful</w>\": 17108,\n  \"tfw</w>\": 16741,\n  \"tg\": 7665,\n  \"tg</w>\": 11981,\n  \"tgif</w>\": 14483,\n  \"th\": 513,\n  \"th</w>\": 640,\n  \"tha\": 18470,\n  \"tha</w>\": 4715,\n  \"thab\": 38219,\n  \"thad\": 48339,\n  \"thai\": 28054,\n  \"thai</w>\": 8825,\n  \"thail\": 7258,\n  \"thailand</w>\": 7469,\n  \"thak\": 22801,\n  \"thakur</w>\": 38427,\n  \"thal\": 7967,\n  \"thal</w>\": 12323,\n  \"thala</w>\": 17784,\n  \"thalai\": 25206,\n  \"thalaivar</w>\": 44918,\n  \"thalap\": 39789,\n  \"thalapathy\": 45405,\n  \"thalapathy</w>\": 23324,\n  \"thall</w>\": 36007,\n  \"tham\": 11761,\n  \"tham</w>\": 8896,\n  \"thames\": 43472,\n  \"thames</w>\": 15321,\n  \"than\": 792,\n  \"than</w>\": 1126,\n  \"thand\": 44465,\n  \"thane</w>\": 21463,\n  \"thang</w>\": 24870,\n  \"thani</w>\": 31322,\n  \"thank\": 2790,\n  \"thank</w>\": 1144,\n  \"thanked</w>\": 32079,\n  \"thankful\": 38839,\n  \"thankful</w>\": 6217,\n  \"thankfully</w>\": 22089,\n  \"thanking</w>\": 21989,\n  \"thanks\": 5672,\n  \"thanks</w>\": 1085,\n  \"thanksgiving\": 45732,\n  \"thanksgiving</w>\": 6167,\n  \"thanku</w>\": 45710,\n  \"thankyou\": 18050,\n  \"thankyou</w>\": 9911,\n  \"thanniversary</w>\": 35564,\n  \"thanos</w>\": 36709,\n  \"thanx</w>\": 25095,\n  \"thar\": 14396,\n  \"thar</w>\": 38843,\n  \"thard</w>\": 43474,\n  \"that\": 6303,\n  \"that</w>\": 682,\n  \"thatcher</w>\": 32496,\n  \"thats\": 44636,\n  \"thats</w>\": 9254,\n  \"thaw\": 26081,\n  \"thaw</w>\": 47229,\n  \"thbewithyou</w>\": 41067,\n  \"thc</w>\": 20091,\n  \"thcentury</w>\": 49111,\n  \"thd</w>\": 28219,\n  \"thday</w>\": 37801,\n  \"the\": 599,\n  \"the</w>\": 518,\n  \"thea\": 15935,\n  \"thea</w>\": 25429,\n  \"thead</w>\": 25259,\n  \"theal\": 45728,\n  \"thealth</w>\": 31398,\n  \"thear\": 43283,\n  \"theart\": 44678,\n  \"theast</w>\": 8378,\n  \"theastern</w>\": 17877,\n  \"theat\": 2263,\n  \"theater\": 39438,\n  \"theater</w>\": 6128,\n  \"theaters</w>\": 14689,\n  \"theatre\": 19857,\n  \"theatre</w>\": 3292,\n  \"theatres</w>\": 21680,\n  \"theatrical</w>\": 26833,\n  \"theband</w>\": 27695,\n  \"thebeatles</w>\": 35645,\n  \"thebest\": 40883,\n  \"thebest</w>\": 25856,\n  \"thebig\": 24732,\n  \"theblack\": 47718,\n  \"thec\": 48659,\n  \"thed</w>\": 31405,\n  \"thedaily\": 33550,\n  \"theday</w>\": 4408,\n  \"thedream</w>\": 39417,\n  \"thee\": 44475,\n  \"thee</w>\": 15108,\n  \"theeconomist</w>\": 44518,\n  \"theellenshow</w>\": 35342,\n  \"thefilm</w>\": 31665,\n  \"theflash</w>\": 25434,\n  \"theforce\": 40002,\n  \"theforceawakens</w>\": 48033,\n  \"theft</w>\": 13286,\n  \"thefuture</w>\": 34287,\n  \"thegame</w>\": 24428,\n  \"thegood\": 28594,\n  \"thegreat\": 28721,\n  \"thei\": 44522,\n  \"their</w>\": 911,\n  \"theirs</w>\": 29297,\n  \"thel\": 5403,\n  \"thelast\": 23495,\n  \"thelastjedi</w>\": 47992,\n  \"theless</w>\": 27712,\n  \"theli\": 15277,\n  \"thelittle\": 46872,\n  \"thelo\": 47036,\n  \"thelove\": 40668,\n  \"thelove</w>\": 43200,\n  \"them\": 5435,\n  \"them</w>\": 1180,\n  \"themasters</w>\": 48378,\n  \"theme\": 38524,\n  \"theme</w>\": 5849,\n  \"themed</w>\": 10126,\n  \"themes</w>\": 17849,\n  \"themet</w>\": 48183,\n  \"themovie</w>\": 27062,\n  \"themselves</w>\": 6503,\n  \"then\": 5929,\n  \"then</w>\": 1594,\n  \"thenburg</w>\": 45209,\n  \"thene\": 17012,\n  \"thenew\": 24212,\n  \"thenext\": 47881,\n  \"thenight</w>\": 43336,\n  \"theno\": 37172,\n  \"thenorth</w>\": 34338,\n  \"theo\": 17043,\n  \"theo</w>\": 18084,\n  \"theod\": 26653,\n  \"theodore</w>\": 30743,\n  \"theological</w>\": 41162,\n  \"theology</w>\": 24095,\n  \"theon</w>\": 34653,\n  \"theone</w>\": 46231,\n  \"theopen</w>\": 41438,\n  \"theore\": 22690,\n  \"theoretical</w>\": 35585,\n  \"theori\": 34804,\n  \"theories</w>\": 23937,\n  \"theory</w>\": 7143,\n  \"thepeople</w>\": 33597,\n  \"thepersonal\": 29981,\n  \"thepersonalnetwork</w>\": 30016,\n  \"thephoto\": 18303,\n  \"thephotohour</w>\": 18607,\n  \"ther\": 1160,\n  \"ther</w>\": 743,\n  \"therap\": 4499,\n  \"therapeu\": 19332,\n  \"therapeutic</w>\": 23240,\n  \"therapeutics</w>\": 49101,\n  \"therapies</w>\": 30179,\n  \"therapist</w>\": 20608,\n  \"therapists</w>\": 34763,\n  \"therapper</w>\": 49340,\n  \"therapy</w>\": 5257,\n  \"there\": 5283,\n  \"there</w>\": 997,\n  \"thereal\": 8074,\n  \"thereal</w>\": 41140,\n  \"thereby</w>\": 43308,\n  \"thered</w>\": 10208,\n  \"therefore</w>\": 16865,\n  \"theres</w>\": 18494,\n  \"theresa</w>\": 14126,\n  \"therese</w>\": 47996,\n  \"theresistance</w>\": 22845,\n  \"theri\": 28967,\n  \"theri</w>\": 45297,\n  \"therine\": 26807,\n  \"therine</w>\": 9239,\n  \"thering</w>\": 7891,\n  \"therland</w>\": 25351,\n  \"thermal</w>\": 13689,\n  \"thermo\": 22303,\n  \"thermom\": 31138,\n  \"thermometer</w>\": 38172,\n  \"thermost\": 42391,\n  \"thern\": 10919,\n  \"thern</w>\": 3137,\n  \"thero\": 13165,\n  \"theroad</w>\": 29807,\n  \"therock</w>\": 30036,\n  \"theroy\": 38146,\n  \"thers</w>\": 1959,\n  \"thes\": 40556,\n  \"thes</w>\": 6460,\n  \"thescript</w>\": 47061,\n  \"these\": 40366,\n  \"these</w>\": 1071,\n  \"theses</w>\": 39388,\n  \"thesimpsons</w>\": 45513,\n  \"thesims</w>\": 34192,\n  \"thesis</w>\": 10673,\n  \"thessal\": 41491,\n  \"thessaloni\": 41753,\n  \"thest</w>\": 35343,\n  \"thesun</w>\": 45617,\n  \"theta</w>\": 27694,\n  \"thetic</w>\": 7954,\n  \"thetimes</w>\": 36039,\n  \"thevamp\": 33701,\n  \"thevoice\": 47206,\n  \"thevoice</w>\": 30258,\n  \"thewalkingdead</w>\": 18087,\n  \"thewanted</w>\": 43008,\n  \"theworld\": 44988,\n  \"theworld</w>\": 17475,\n  \"thex\": 35990,\n  \"they\": 15174,\n  \"they</w>\": 889,\n  \"theyre</w>\": 28266,\n  \"thfc</w>\": 17729,\n  \"thi\": 2362,\n  \"thi</w>\": 9111,\n  \"thia</w>\": 17943,\n  \"thiago</w>\": 44537,\n  \"thian</w>\": 23214,\n  \"thians</w>\": 28187,\n  \"thibau\": 48351,\n  \"thic\": 26107,\n  \"thic</w>\": 11794,\n  \"thick\": 18417,\n  \"thick</w>\": 11006,\n  \"thicker</w>\": 43302,\n  \"thickness</w>\": 40754,\n  \"thief</w>\": 18508,\n  \"thier</w>\": 25595,\n  \"thierry</w>\": 32929,\n  \"thieves</w>\": 17899,\n  \"thigh\": 47124,\n  \"thigh</w>\": 22877,\n  \"thighs</w>\": 30847,\n  \"thik</w>\": 20512,\n  \"thika</w>\": 44619,\n  \"thill</w>\": 31266,\n  \"thim\": 42331,\n  \"thin\": 2178,\n  \"thin</w>\": 7847,\n  \"thine</w>\": 47192,\n  \"thing\": 7499,\n  \"thing</w>\": 946,\n  \"things\": 30670,\n  \"things</w>\": 1739,\n  \"thingsto\": 43924,\n  \"thingy</w>\": 36888,\n  \"think\": 9820,\n  \"think</w>\": 1331,\n  \"thinkbig\": 26015,\n  \"thinkbigsundaywithmarsha</w>\": 26666,\n  \"thinker</w>\": 34577,\n  \"thinkers</w>\": 32779,\n  \"thinkin</w>\": 34443,\n  \"thinking</w>\": 3291,\n  \"thinks</w>\": 6109,\n  \"thinner</w>\": 47247,\n  \"thir\": 6030,\n  \"third\": 32102,\n  \"third</w>\": 3981,\n  \"thirds</w>\": 42582,\n  \"thirst</w>\": 23563,\n  \"thirsty\": 39731,\n  \"thirsty</w>\": 17521,\n  \"thirteen</w>\": 34209,\n  \"thirty</w>\": 20813,\n  \"thiru\": 43292,\n  \"this\": 4340,\n  \"this</w>\": 589,\n  \"thisday</w>\": 6532,\n  \"thisdayin\": 33641,\n  \"thisdayinhistory</w>\": 46913,\n  \"thisi\": 7299,\n  \"thisis\": 14887,\n  \"thismorning</w>\": 36245,\n  \"thistle</w>\": 29039,\n  \"thistory</w>\": 28904,\n  \"thium</w>\": 21804,\n  \"thletics</w>\": 17765,\n  \"thm</w>\": 10407,\n  \"thman</w>\": 30079,\n  \"thms</w>\": 19874,\n  \"thn\": 44155,\n  \"thn</w>\": 45587,\n  \"thnx</w>\": 25480,\n  \"tho\": 1325,\n  \"tho</w>\": 5025,\n  \"thof\": 18943,\n  \"thofjuly</w>\": 21613,\n  \"thol\": 29319,\n  \"thole</w>\": 31029,\n  \"tholes</w>\": 42465,\n  \"thology</w>\": 9881,\n  \"thom\": 2585,\n  \"thom</w>\": 24094,\n  \"thomas\": 12574,\n  \"thomas</w>\": 3888,\n  \"thome</w>\": 21289,\n  \"thomp\": 37274,\n  \"thompson\": 42181,\n  \"thompson</w>\": 8535,\n  \"thomson</w>\": 24151,\n  \"thon\": 38776,\n  \"thon</w>\": 8924,\n  \"thong</w>\": 37058,\n  \"thood</w>\": 15623,\n  \"thor\": 4130,\n  \"thor</w>\": 13691,\n  \"thora</w>\": 46866,\n  \"thorn\": 12957,\n  \"thorn</w>\": 18466,\n  \"thorne</w>\": 18025,\n  \"thorns</w>\": 33650,\n  \"thornton</w>\": 23592,\n  \"thorough\": 15294,\n  \"thorough</w>\": 34788,\n  \"thoroughbred</w>\": 43248,\n  \"thoroughly</w>\": 19750,\n  \"thorpe</w>\": 18099,\n  \"thos</w>\": 41965,\n  \"those</w>\": 1753,\n  \"thot</w>\": 33736,\n  \"thou\": 1513,\n  \"thou</w>\": 17781,\n  \"though</w>\": 2846,\n  \"thought\": 23948,\n  \"thought</w>\": 2449,\n  \"thoughtful</w>\": 19592,\n  \"thoughts</w>\": 3618,\n  \"thour</w>\": 27125,\n  \"thousand</w>\": 9344,\n  \"thousands</w>\": 7089,\n  \"thouse\": 40318,\n  \"thouse</w>\": 7819,\n  \"thoven</w>\": 23078,\n  \"thr\": 1111,\n  \"thr</w>\": 19138,\n  \"thra\": 17761,\n  \"thra</w>\": 32797,\n  \"thrash</w>\": 38262,\n  \"thre\": 1607,\n  \"thread\": 31108,\n  \"thread</w>\": 8815,\n  \"threads</w>\": 24957,\n  \"threat\": 7527,\n  \"threat</w>\": 7212,\n  \"threaten</w>\": 26097,\n  \"threatened</w>\": 16391,\n  \"threatening</w>\": 16400,\n  \"threatens</w>\": 20555,\n  \"threats</w>\": 12766,\n  \"three\": 21615,\n  \"three</w>\": 2097,\n  \"thren</w>\": 41776,\n  \"thresh\": 29779,\n  \"threshold</w>\": 33791,\n  \"threw</w>\": 12746,\n  \"thri\": 8713,\n  \"thrift</w>\": 27779,\n  \"thrill</w>\": 21023,\n  \"thrilled</w>\": 7879,\n  \"thriller</w>\": 9653,\n  \"thrilling</w>\": 20101,\n  \"thrills</w>\": 39829,\n  \"thrive</w>\": 17669,\n  \"thriving</w>\": 22677,\n  \"thro\": 2101,\n  \"thro</w>\": 28624,\n  \"throat</w>\": 16371,\n  \"thrombo\": 47585,\n  \"throne</w>\": 15999,\n  \"thrones</w>\": 8072,\n  \"throp</w>\": 34939,\n  \"throttle</w>\": 37139,\n  \"through\": 6091,\n  \"through</w>\": 1417,\n  \"throughout</w>\": 6721,\n  \"throughs</w>\": 48278,\n  \"throw\": 3315,\n  \"throw</w>\": 6293,\n  \"throwback\": 6001,\n  \"throwback</w>\": 5058,\n  \"throwbackthursday</w>\": 6326,\n  \"thrower</w>\": 40199,\n  \"throwing</w>\": 9734,\n  \"thrown</w>\": 15079,\n  \"throws</w>\": 14723,\n  \"thru\": 23856,\n  \"thru</w>\": 6162,\n  \"thrush</w>\": 46133,\n  \"thrust</w>\": 40202,\n  \"ths</w>\": 2079,\n  \"tht</w>\": 23554,\n  \"thu\": 3837,\n  \"thu</w>\": 14153,\n  \"thub</w>\": 25660,\n  \"thug\": 37212,\n  \"thug</w>\": 18137,\n  \"thugs</w>\": 27686,\n  \"thul\": 28368,\n  \"thulhu</w>\": 37560,\n  \"thum\": 14679,\n  \"thumb\": 19514,\n  \"thumb</w>\": 18674,\n  \"thumbnail</w>\": 32365,\n  \"thumbs</w>\": 17599,\n  \"thun\": 32267,\n  \"thunder\": 6161,\n  \"thunder</w>\": 8951,\n  \"thunderbird</w>\": 45131,\n  \"thunderbirds</w>\": 44286,\n  \"thunderbolt</w>\": 43596,\n  \"thunderstorm</w>\": 12005,\n  \"thunderstorms</w>\": 19525,\n  \"thunt</w>\": 46763,\n  \"thur\": 1837,\n  \"thur</w>\": 21704,\n  \"thurman</w>\": 41291,\n  \"thurs</w>\": 9908,\n  \"thursday\": 11218,\n  \"thursday</w>\": 2221,\n  \"thursdaymotivation</w>\": 39375,\n  \"thursdays</w>\": 21444,\n  \"thursdaythoughts</w>\": 14866,\n  \"thurst</w>\": 33970,\n  \"thus</w>\": 12457,\n  \"thusi\": 9488,\n  \"thwaite</w>\": 48469,\n  \"thweeksary</w>\": 30871,\n  \"thx</w>\": 5913,\n  \"thy\": 7804,\n  \"thy</w>\": 3362,\n  \"thyme</w>\": 29805,\n  \"thyro\": 25174,\n  \"thyroid</w>\": 32558,\n  \"ti\": 555,\n  \"ti</w>\": 2605,\n  \"tia</w>\": 6709,\n  \"tial</w>\": 2826,\n  \"tially</w>\": 14503,\n  \"tian\": 23011,\n  \"tian</w>\": 8125,\n  \"tians</w>\": 35182,\n  \"tiara</w>\": 38322,\n  \"tib\": 47868,\n  \"tibet\": 19927,\n  \"tibet</w>\": 22234,\n  \"tibetan</w>\": 24057,\n  \"tible</w>\": 11453,\n  \"tic\": 890,\n  \"tic</w>\": 1550,\n  \"tica</w>\": 9669,\n  \"tical\": 34191,\n  \"tical</w>\": 4342,\n  \"tically</w>\": 13375,\n  \"ticals</w>\": 30861,\n  \"tice</w>\": 3122,\n  \"tich</w>\": 48769,\n  \"tician</w>\": 43358,\n  \"ticism</w>\": 26491,\n  \"tick\": 24640,\n  \"tick</w>\": 15617,\n  \"ticket\": 25740,\n  \"ticket</w>\": 4500,\n  \"ticketing</w>\": 44432,\n  \"tickets</w>\": 2015,\n  \"ticking</w>\": 35842,\n  \"tickle</w>\": 42999,\n  \"ticks</w>\": 40269,\n  \"tico</w>\": 17670,\n  \"ticon</w>\": 45996,\n  \"tics</w>\": 2419,\n  \"ticul\": 15538,\n  \"ticus</w>\": 44277,\n  \"tid\": 26002,\n  \"tid</w>\": 23727,\n  \"tidal</w>\": 21949,\n  \"tide\": 15698,\n  \"tide</w>\": 9105,\n  \"tides</w>\": 25524,\n  \"tidy</w>\": 23858,\n  \"tie\": 14072,\n  \"tie</w>\": 3422,\n  \"tied</w>\": 9889,\n  \"tiem\": 34762,\n  \"tien</w>\": 47538,\n  \"tiene</w>\": 43438,\n  \"tier\": 14390,\n  \"tier</w>\": 6598,\n  \"tierney</w>\": 45693,\n  \"tiers</w>\": 24604,\n  \"ties\": 25556,\n  \"ties</w>\": 2499,\n  \"tiest</w>\": 18300,\n  \"tiesto</w>\": 46367,\n  \"tif</w>\": 23216,\n  \"tiff\": 11112,\n  \"tiff</w>\": 20699,\n  \"tiffany\": 30467,\n  \"tiffany</w>\": 14446,\n  \"tification</w>\": 43923,\n  \"tified</w>\": 40854,\n  \"tiful</w>\": 29123,\n  \"tify</w>\": 6677,\n  \"tig</w>\": 31999,\n  \"tiger\": 11954,\n  \"tiger</w>\": 6531,\n  \"tigers</w>\": 6934,\n  \"tigh\": 31365,\n  \"tight\": 25763,\n  \"tight</w>\": 9123,\n  \"tighten</w>\": 46653,\n  \"tighter</w>\": 48193,\n  \"tightly</w>\": 37568,\n  \"tights</w>\": 29581,\n  \"tijuana</w>\": 45273,\n  \"tik\": 24986,\n  \"tik</w>\": 32403,\n  \"tiki</w>\": 30107,\n  \"til\": 6124,\n  \"til</w>\": 1763,\n  \"tile\": 26217,\n  \"tile</w>\": 8227,\n  \"tiles</w>\": 10607,\n  \"tility</w>\": 38180,\n  \"till\": 17462,\n  \"till</w>\": 4267,\n  \"tilla</w>\": 26063,\n  \"tillerson</w>\": 47738,\n  \"tilly</w>\": 41199,\n  \"tilt</w>\": 23601,\n  \"tim\": 1292,\n  \"tim</w>\": 3863,\n  \"timate</w>\": 4754,\n  \"timb\": 26627,\n  \"timber\": 14441,\n  \"timber</w>\": 16246,\n  \"timberlake</w>\": 28274,\n  \"timbers</w>\": 39911,\n  \"timberwolves</w>\": 41190,\n  \"time\": 3764,\n  \"time</w>\": 788,\n  \"timed</w>\": 32727,\n  \"timehop</w>\": 19944,\n  \"timel\": 23549,\n  \"timelapse</w>\": 48154,\n  \"timeless</w>\": 15558,\n  \"timeline</w>\": 11492,\n  \"timely</w>\": 19250,\n  \"timeout</w>\": 41536,\n  \"timer</w>\": 19725,\n  \"timers</w>\": 44574,\n  \"times\": 26445,\n  \"times</w>\": 1661,\n  \"timesnow</w>\": 45487,\n  \"timesof\": 32522,\n  \"timesofindia</w>\": 44182,\n  \"timetable</w>\": 31971,\n  \"timeto\": 29187,\n  \"timing</w>\": 13624,\n  \"timm\": 22444,\n  \"timmy</w>\": 33252,\n  \"timo\": 13390,\n  \"timo</w>\": 33777,\n  \"timothy\": 42087,\n  \"timothy</w>\": 18560,\n  \"timp\": 42166,\n  \"tin\": 1310,\n  \"tin</w>\": 5420,\n  \"tina</w>\": 9257,\n  \"tinder</w>\": 24287,\n  \"tine</w>\": 22341,\n  \"ting\": 7451,\n  \"ting</w>\": 694,\n  \"tinged</w>\": 44829,\n  \"tings</w>\": 35332,\n  \"tini</w>\": 26839,\n  \"tink\": 39278,\n  \"tinker\": 45272,\n  \"tinker</w>\": 40910,\n  \"tino</w>\": 20538,\n  \"tins</w>\": 37359,\n  \"tint</w>\": 40497,\n  \"tinted</w>\": 42618,\n  \"tiny\": 21716,\n  \"tiny</w>\": 5591,\n  \"tio</w>\": 27562,\n  \"tion\": 2274,\n  \"tion</w>\": 740,\n  \"tional\": 22460,\n  \"tional</w>\": 2986,\n  \"tionality</w>\": 24514,\n  \"tionally</w>\": 12409,\n  \"tionary</w>\": 8381,\n  \"tione\": 44318,\n  \"tioned</w>\": 9083,\n  \"tioning</w>\": 15528,\n  \"tionist</w>\": 25732,\n  \"tions</w>\": 1371,\n  \"tious</w>\": 14255,\n  \"tip\": 15383,\n  \"tip</w>\": 4623,\n  \"tipoff</w>\": 44521,\n  \"tipp\": 32294,\n  \"tipped</w>\": 31878,\n  \"tipper\": 38095,\n  \"tipperary</w>\": 45612,\n  \"tipping</w>\": 27827,\n  \"tips</w>\": 3173,\n  \"tipton</w>\": 48809,\n  \"tiptuesday</w>\": 42112,\n  \"tique</w>\": 37772,\n  \"tir\": 25467,\n  \"tir</w>\": 38462,\n  \"tire\": 29128,\n  \"tire</w>\": 9362,\n  \"tired</w>\": 6533,\n  \"tireless</w>\": 39835,\n  \"tirelessly</w>\": 41548,\n  \"tires</w>\": 15533,\n  \"tiring</w>\": 42630,\n  \"tiru\": 36033,\n  \"tis\": 7839,\n  \"tis</w>\": 7394,\n  \"tise</w>\": 13745,\n  \"tisgarh</w>\": 40538,\n  \"tish\": 45148,\n  \"tish</w>\": 28784,\n  \"tism</w>\": 27113,\n  \"tiss\": 28155,\n  \"tissue</w>\": 15368,\n  \"tissues</w>\": 32172,\n  \"tist</w>\": 7902,\n  \"tista</w>\": 25580,\n  \"tists</w>\": 25944,\n  \"tit\": 1991,\n  \"tit</w>\": 13202,\n  \"tita</w>\": 40936,\n  \"titan\": 13496,\n  \"titan</w>\": 15516,\n  \"titanic</w>\": 20729,\n  \"titanium</w>\": 24409,\n  \"titans</w>\": 13066,\n  \"titi\": 17434,\n  \"titi</w>\": 48504,\n  \"title\": 28033,\n  \"title</w>\": 3644,\n  \"titled</w>\": 9939,\n  \"titles</w>\": 9780,\n  \"tito</w>\": 26838,\n  \"titus</w>\": 36102,\n  \"tium</w>\": 21975,\n  \"tiv\": 1835,\n  \"tiva</w>\": 41886,\n  \"tive\": 14640,\n  \"tive</w>\": 1420,\n  \"tively</w>\": 9883,\n  \"tiveness</w>\": 20955,\n  \"tives</w>\": 7570,\n  \"tivity</w>\": 9859,\n  \"tivo</w>\": 32162,\n  \"tix</w>\": 5835,\n  \"tiz</w>\": 19376,\n  \"tj\": 18890,\n  \"tj</w>\": 18988,\n  \"tk\": 22344,\n  \"tk</w>\": 20676,\n  \"tko</w>\": 37347,\n  \"tks</w>\": 38739,\n  \"tl\": 14325,\n  \"tl</w>\": 8190,\n  \"tland</w>\": 30697,\n  \"tlap</w>\": 41976,\n  \"tlc</w>\": 22047,\n  \"tle\": 39141,\n  \"tle</w>\": 5825,\n  \"tles</w>\": 39363,\n  \"tless</w>\": 17427,\n  \"tlot</w>\": 41080,\n  \"tls</w>\": 47367,\n  \"tly\": 37483,\n  \"tly</w>\": 1646,\n  \"tm\": 9430,\n  \"tm</w>\": 7789,\n  \"tman</w>\": 20796,\n  \"tmc</w>\": 35263,\n  \"tment</w>\": 26485,\n  \"tml\": 39445,\n  \"tmltalk</w>\": 42260,\n  \"tmnt</w>\": 32444,\n  \"tmobile</w>\": 34901,\n  \"tmr</w>\": 35906,\n  \"tmrw</w>\": 16496,\n  \"tms</w>\": 44496,\n  \"tmund</w>\": 23801,\n  \"tmw</w>\": 45827,\n  \"tmz</w>\": 37248,\n  \"tn\": 3827,\n  \"tn</w>\": 7248,\n  \"tna</w>\": 21150,\n  \"tnam</w>\": 8079,\n  \"tner</w>\": 34922,\n  \"tness</w>\": 35212,\n  \"tney</w>\": 9523,\n  \"tng</w>\": 35898,\n  \"tnt</w>\": 20659,\n  \"tnx</w>\": 38220,\n  \"to\": 580,\n  \"to</w>\": 531,\n  \"toa\": 17916,\n  \"toad</w>\": 26096,\n  \"toast\": 24654,\n  \"toast</w>\": 10920,\n  \"toasted</w>\": 23533,\n  \"toaster</w>\": 39061,\n  \"toasty</w>\": 44726,\n  \"tob</w>\": 24260,\n  \"tobac\": 12611,\n  \"tobacco</w>\": 13905,\n  \"tobago</w>\": 39482,\n  \"tobe\": 17534,\n  \"tobe</w>\": 28740,\n  \"tober\": 18162,\n  \"tober</w>\": 2925,\n  \"toberfest</w>\": 26249,\n  \"tobi\": 40335,\n  \"tobi</w>\": 48374,\n  \"tobias</w>\": 32464,\n  \"tobin</w>\": 42466,\n  \"toby\": 29659,\n  \"toby</w>\": 18333,\n  \"toc\": 41907,\n  \"toc</w>\": 30643,\n  \"tock</w>\": 25274,\n  \"tod\": 38239,\n  \"tod</w>\": 33568,\n  \"toda</w>\": 47141,\n  \"todas</w>\": 36150,\n  \"today\": 11800,\n  \"today</w>\": 721,\n  \"todayin\": 32957,\n  \"todays</w>\": 13513,\n  \"todayshow</w>\": 29739,\n  \"todd\": 10398,\n  \"todd</w>\": 9951,\n  \"toddler</w>\": 17772,\n  \"toddlers</w>\": 36719,\n  \"toddy</w>\": 38926,\n  \"todo\": 48857,\n  \"todo</w>\": 23087,\n  \"todos</w>\": 33355,\n  \"toe\": 47756,\n  \"toe</w>\": 11344,\n  \"toes</w>\": 16511,\n  \"tof\": 6659,\n  \"toff</w>\": 27319,\n  \"toffee</w>\": 34880,\n  \"tofficial</w>\": 47953,\n  \"tofthe\": 23678,\n  \"toftheday</w>\": 20566,\n  \"tofu</w>\": 24692,\n  \"tog</w>\": 45715,\n  \"toge\": 1903,\n  \"together\": 17858,\n  \"together</w>\": 1952,\n  \"togo</w>\": 26729,\n  \"tography</w>\": 33968,\n  \"toh</w>\": 26851,\n  \"toi\": 7472,\n  \"toi</w>\": 26941,\n  \"toid</w>\": 49124,\n  \"toile\": 43148,\n  \"toilet</w>\": 11071,\n  \"toilets</w>\": 24027,\n  \"toire</w>\": 39534,\n  \"tok\": 16690,\n  \"tok</w>\": 27010,\n  \"token\": 32634,\n  \"token</w>\": 17134,\n  \"tokens</w>\": 23562,\n  \"tokyo\": 35038,\n  \"tokyo</w>\": 6667,\n  \"tol\": 4678,\n  \"tol</w>\": 32962,\n  \"told</w>\": 3527,\n  \"tole\": 15677,\n  \"toledo</w>\": 19812,\n  \"toler\": 12150,\n  \"tolerance</w>\": 20377,\n  \"tolerant</w>\": 38536,\n  \"tolerate</w>\": 35556,\n  \"tolkien</w>\": 32989,\n  \"toll\": 44090,\n  \"toll</w>\": 14155,\n  \"tollywood</w>\": 42016,\n  \"tology</w>\": 34799,\n  \"tom\": 999,\n  \"tom</w>\": 2435,\n  \"toma\": 42360,\n  \"toma</w>\": 44710,\n  \"tomas\": 35944,\n  \"tomas</w>\": 27178,\n  \"tomat\": 12041,\n  \"tomato</w>\": 9867,\n  \"tomatoes</w>\": 13004,\n  \"tomb\": 37187,\n  \"tomb</w>\": 15582,\n  \"tombs</w>\": 48613,\n  \"tombstone</w>\": 45729,\n  \"tome\": 24137,\n  \"tome</w>\": 24283,\n  \"tomi</w>\": 46290,\n  \"tomlin</w>\": 46649,\n  \"tomlinson</w>\": 17484,\n  \"tommorow</w>\": 42871,\n  \"tommy\": 16573,\n  \"tommy</w>\": 8876,\n  \"tomo\": 31223,\n  \"tomo</w>\": 34434,\n  \"tomor\": 1277,\n  \"tomorrow\": 19728,\n  \"tomorrow</w>\": 1293,\n  \"tomorrowland</w>\": 34951,\n  \"tomorrows</w>\": 32258,\n  \"tomorrowspaper\": 35005,\n  \"tomorrowspaperstoday</w>\": 35190,\n  \"tomp\": 43544,\n  \"tompkins</w>\": 49068,\n  \"toms</w>\": 10545,\n  \"tomy</w>\": 18730,\n  \"ton\": 838,\n  \"ton</w>\": 917,\n  \"tona</w>\": 13459,\n  \"tone\": 32366,\n  \"tone</w>\": 8408,\n  \"toned</w>\": 29426,\n  \"toner</w>\": 40614,\n  \"tones</w>\": 14744,\n  \"tong</w>\": 21510,\n  \"tonga</w>\": 37882,\n  \"tongue\": 44820,\n  \"tongue</w>\": 13626,\n  \"tongues</w>\": 39837,\n  \"toni\": 17766,\n  \"toni</w>\": 17171,\n  \"tonic</w>\": 17808,\n  \"tonics</w>\": 34647,\n  \"tonight</w>\": 1009,\n  \"tonights</w>\": 23312,\n  \"tonite</w>\": 13449,\n  \"tonka</w>\": 42781,\n  \"tonline</w>\": 45867,\n  \"tonne</w>\": 42450,\n  \"tonnes</w>\": 24813,\n  \"tons</w>\": 7555,\n  \"tony\": 9150,\n  \"tony</w>\": 4767,\n  \"tonyawards</w>\": 46068,\n  \"too\": 1843,\n  \"too</w>\": 1256,\n  \"took</w>\": 2280,\n  \"tool\": 13718,\n  \"tool</w>\": 5999,\n  \"toolbox</w>\": 46599,\n  \"toolkit</w>\": 29849,\n  \"tools</w>\": 5771,\n  \"toom\": 27550,\n  \"toon\": 24664,\n  \"toon</w>\": 19701,\n  \"toonami</w>\": 48336,\n  \"toons</w>\": 35345,\n  \"toor\": 42590,\n  \"tooth\": 15316,\n  \"tooth</w>\": 12030,\n  \"toothbrush</w>\": 36841,\n  \"toothpaste</w>\": 37322,\n  \"tooting</w>\": 42969,\n  \"top\": 5534,\n  \"top</w>\": 1253,\n  \"topaz</w>\": 46125,\n  \"tope\": 32149,\n  \"tope</w>\": 42239,\n  \"topeka</w>\": 46884,\n  \"topia</w>\": 29618,\n  \"topic</w>\": 8720,\n  \"topical</w>\": 37464,\n  \"topics</w>\": 11916,\n  \"topless</w>\": 37415,\n  \"topo\": 23008,\n  \"topoli</w>\": 30152,\n  \"topp\": 19529,\n  \"topped</w>\": 12588,\n  \"topper</w>\": 31780,\n  \"toppers</w>\": 41651,\n  \"topping</w>\": 21071,\n  \"toppings</w>\": 47554,\n  \"topps</w>\": 20201,\n  \"tops</w>\": 8154,\n  \"topshop</w>\": 40953,\n  \"topus</w>\": 21495,\n  \"tor\": 937,\n  \"tor</w>\": 1208,\n  \"tora</w>\": 45147,\n  \"torah</w>\": 37945,\n  \"toral</w>\": 45282,\n  \"torch\": 31921,\n  \"torch</w>\": 15820,\n  \"tore\": 38066,\n  \"tore</w>\": 19385,\n  \"tored</w>\": 38046,\n  \"torg</w>\": 33214,\n  \"tori\": 17689,\n  \"tori</w>\": 17539,\n  \"toria</w>\": 23732,\n  \"torial</w>\": 28029,\n  \"torian</w>\": 48399,\n  \"tories</w>\": 14193,\n  \"torino</w>\": 29178,\n  \"torio</w>\": 34235,\n  \"torn\": 8572,\n  \"torn</w>\": 18023,\n  \"tornad\": 24676,\n  \"tornado</w>\": 9062,\n  \"tornadoes</w>\": 28254,\n  \"toro</w>\": 17892,\n  \"toron\": 37407,\n  \"toronto\": 16866,\n  \"toronto</w>\": 4514,\n  \"torpe\": 34093,\n  \"torpedo</w>\": 46582,\n  \"torquay</w>\": 45738,\n  \"torque</w>\": 31940,\n  \"torre\": 39563,\n  \"torre</w>\": 38009,\n  \"torrent</w>\": 42317,\n  \"torrential</w>\": 41158,\n  \"torres</w>\": 16049,\n  \"tors</w>\": 2546,\n  \"tortilla</w>\": 32683,\n  \"torto\": 24170,\n  \"tortoise</w>\": 30178,\n  \"torture</w>\": 16013,\n  \"tortured</w>\": 29900,\n  \"tory\": 29390,\n  \"tory</w>\": 4214,\n  \"tos</w>\": 6094,\n  \"tosc\": 37719,\n  \"tose</w>\": 38154,\n  \"tosh</w>\": 17109,\n  \"toshi\": 31744,\n  \"toss</w>\": 19656,\n  \"tossed</w>\": 31296,\n  \"tot\": 4618,\n  \"tot</w>\": 23659,\n  \"total\": 13507,\n  \"total</w>\": 4445,\n  \"totally</w>\": 5440,\n  \"totals</w>\": 25772,\n  \"tote\": 48145,\n  \"tote</w>\": 19031,\n  \"totem</w>\": 45376,\n  \"totes</w>\": 37199,\n  \"tothe\": 12222,\n  \"toto</w>\": 39823,\n  \"tots</w>\": 24978,\n  \"totten\": 14360,\n  \"tottenham</w>\": 14889,\n  \"tou\": 1879,\n  \"tou</w>\": 29261,\n  \"touch\": 9480,\n  \"touch</w>\": 4526,\n  \"touchdown</w>\": 18664,\n  \"touchdowns</w>\": 37905,\n  \"touched</w>\": 13190,\n  \"touches</w>\": 14832,\n  \"touching</w>\": 14088,\n  \"touchscreen</w>\": 39095,\n  \"tough\": 12063,\n  \"tough</w>\": 5499,\n  \"tougher</w>\": 33722,\n  \"toughest</w>\": 23773,\n  \"toughness</w>\": 45522,\n  \"toulou\": 27145,\n  \"toulouse</w>\": 30267,\n  \"tour\": 2710,\n  \"tour</w>\": 1760,\n  \"tourde\": 39247,\n  \"toured</w>\": 27654,\n  \"touri\": 4224,\n  \"touring</w>\": 11853,\n  \"tourism\": 23661,\n  \"tourism</w>\": 6556,\n  \"tourist</w>\": 12123,\n  \"tourists</w>\": 15546,\n  \"tournament</w>\": 4097,\n  \"tournaments</w>\": 23058,\n  \"tourney</w>\": 12603,\n  \"tours</w>\": 8948,\n  \"tous</w>\": 37424,\n  \"tout</w>\": 22300,\n  \"touts</w>\": 41274,\n  \"tov</w>\": 28970,\n  \"tow\": 11557,\n  \"tow</w>\": 18653,\n  \"toward</w>\": 8508,\n  \"towards</w>\": 4447,\n  \"towed</w>\": 45419,\n  \"towel</w>\": 15953,\n  \"towels</w>\": 26578,\n  \"tower\": 26669,\n  \"tower</w>\": 4730,\n  \"towering</w>\": 39444,\n  \"towers</w>\": 12701,\n  \"towie</w>\": 44613,\n  \"towin</w>\": 45819,\n  \"towing</w>\": 36963,\n  \"town\": 4068,\n  \"town</w>\": 1605,\n  \"townfc</w>\": 33981,\n  \"townhall</w>\": 33408,\n  \"townhouse</w>\": 40178,\n  \"towns</w>\": 14173,\n  \"townsend</w>\": 26826,\n  \"township</w>\": 14622,\n  \"townsville</w>\": 47330,\n  \"towork</w>\": 48233,\n  \"tox\": 7742,\n  \"tox</w>\": 16145,\n  \"toxic\": 27436,\n  \"toxic</w>\": 12348,\n  \"toxicity</w>\": 41234,\n  \"toxin</w>\": 48899,\n  \"toxins</w>\": 36618,\n  \"toy\": 14387,\n  \"toy</w>\": 5988,\n  \"toya</w>\": 37602,\n  \"toyo\": 7644,\n  \"toyota</w>\": 8908,\n  \"toys\": 39508,\n  \"toys</w>\": 7162,\n  \"tp\": 23760,\n  \"tp</w>\": 15188,\n  \"tpp</w>\": 29411,\n  \"tps</w>\": 35246,\n  \"tq</w>\": 43066,\n  \"tr\": 635,\n  \"tr</w>\": 6337,\n  \"tra\": 752,\n  \"tra</w>\": 2483,\n  \"trac\": 2266,\n  \"trace\": 48611,\n  \"trace</w>\": 14767,\n  \"traced</w>\": 47956,\n  \"traces</w>\": 30913,\n  \"tracey</w>\": 25558,\n  \"tracing</w>\": 27897,\n  \"track\": 10887,\n  \"track</w>\": 2700,\n  \"tracked</w>\": 27049,\n  \"tracker</w>\": 18123,\n  \"tracking</w>\": 10428,\n  \"tracklist</w>\": 39777,\n  \"tracks</w>\": 7579,\n  \"tract</w>\": 4690,\n  \"traction</w>\": 10644,\n  \"tractor</w>\": 14607,\n  \"tractors</w>\": 37854,\n  \"tracy\": 32984,\n  \"tracy</w>\": 15508,\n  \"trad\": 48716,\n  \"trad</w>\": 38037,\n  \"trade\": 10457,\n  \"trade</w>\": 3629,\n  \"traded</w>\": 18860,\n  \"trademark</w>\": 25011,\n  \"trader</w>\": 17700,\n  \"traders</w>\": 19112,\n  \"trades</w>\": 18519,\n  \"trading\": 40083,\n  \"trading</w>\": 6520,\n  \"tradio</w>\": 20689,\n  \"tradition\": 20838,\n  \"tradition</w>\": 8784,\n  \"traditional\": 41113,\n  \"traditional</w>\": 5604,\n  \"traditionally</w>\": 35532,\n  \"traditions</w>\": 18016,\n  \"traf\": 3227,\n  \"trafal\": 32461,\n  \"trafalgar</w>\": 36969,\n  \"traff\": 31571,\n  \"traffic\": 12080,\n  \"traffic</w>\": 3399,\n  \"trafficking</w>\": 15983,\n  \"trafford</w>\": 22912,\n  \"trage\": 12430,\n  \"tragedy</w>\": 14082,\n  \"tragic</w>\": 14828,\n  \"tragically</w>\": 39599,\n  \"trail\": 11523,\n  \"trail</w>\": 4921,\n  \"trailblazer</w>\": 41015,\n  \"trailblazers</w>\": 35954,\n  \"trailer</w>\": 4700,\n  \"trailers</w>\": 24862,\n  \"trailing</w>\": 37427,\n  \"trails</w>\": 10633,\n  \"train\": 9122,\n  \"train</w>\": 3231,\n  \"trained</w>\": 10874,\n  \"trainee</w>\": 25795,\n  \"trainees</w>\": 30382,\n  \"trainer</w>\": 9767,\n  \"trainers</w>\": 18871,\n  \"training\": 34508,\n  \"training</w>\": 2199,\n  \"trains</w>\": 9541,\n  \"trait</w>\": 35160,\n  \"traitor</w>\": 31760,\n  \"traitors</w>\": 42633,\n  \"traits</w>\": 25748,\n  \"trajec\": 42042,\n  \"trak</w>\": 24065,\n  \"tral</w>\": 14609,\n  \"tram\": 9800,\n  \"tram</w>\": 17500,\n  \"tramp</w>\": 46289,\n  \"trampol\": 32905,\n  \"trampoline</w>\": 42800,\n  \"tramrahim</w>\": 35220,\n  \"tran\": 1357,\n  \"tran</w>\": 22031,\n  \"trance\": 30584,\n  \"trance</w>\": 18671,\n  \"trancefamily</w>\": 39630,\n  \"trane</w>\": 35779,\n  \"tranqu\": 18912,\n  \"tranquil</w>\": 35764,\n  \"tranquility</w>\": 36688,\n  \"trans\": 1826,\n  \"trans</w>\": 8126,\n  \"transaction</w>\": 24881,\n  \"transactions</w>\": 21653,\n  \"transat\": 37872,\n  \"transatlantic</w>\": 40703,\n  \"transc\": 21073,\n  \"transcend\": 47087,\n  \"transcript</w>\": 39008,\n  \"transcription</w>\": 48765,\n  \"transfer\": 22659,\n  \"transfer</w>\": 7134,\n  \"transferred</w>\": 29700,\n  \"transferring</w>\": 40924,\n  \"transfers</w>\": 21621,\n  \"transform\": 8142,\n  \"transform</w>\": 12288,\n  \"transformation\": 34204,\n  \"transformation</w>\": 7832,\n  \"transformational</w>\": 47135,\n  \"transformationtuesday</w>\": 36511,\n  \"transformative</w>\": 38106,\n  \"transformed</w>\": 17453,\n  \"transformer</w>\": 38235,\n  \"transformers</w>\": 17843,\n  \"transforming\": 44470,\n  \"transforming</w>\": 19251,\n  \"transforms</w>\": 30312,\n  \"transgender</w>\": 17732,\n  \"transi\": 32236,\n  \"transit</w>\": 10174,\n  \"transiti\": 22939,\n  \"transition</w>\": 11391,\n  \"transitional</w>\": 41519,\n  \"transitioning</w>\": 43586,\n  \"transitions</w>\": 39374,\n  \"transl\": 12243,\n  \"translate</w>\": 22655,\n  \"translated</w>\": 20752,\n  \"translates</w>\": 36334,\n  \"translating</w>\": 42156,\n  \"translation</w>\": 12153,\n  \"translations</w>\": 41367,\n  \"translator</w>\": 36230,\n  \"translucent</w>\": 49052,\n  \"transm\": 18861,\n  \"transmission</w>\": 16103,\n  \"transmitted</w>\": 48605,\n  \"transmitter</w>\": 40457,\n  \"transp\": 11726,\n  \"transpa\": 18524,\n  \"transparen\": 16108,\n  \"transparency</w>\": 16828,\n  \"transparent</w>\": 19017,\n  \"transpl\": 16038,\n  \"transplant\": 41871,\n  \"transplant</w>\": 18771,\n  \"transplantation</w>\": 45207,\n  \"transpor\": 19406,\n  \"transport\": 10231,\n  \"transport</w>\": 7362,\n  \"transportation</w>\": 10911,\n  \"transported</w>\": 29089,\n  \"transporter</w>\": 43568,\n  \"transporting</w>\": 42259,\n  \"trap\": 36224,\n  \"trap</w>\": 9677,\n  \"trape\": 42435,\n  \"trapped</w>\": 15592,\n  \"traps</w>\": 28517,\n  \"tras</w>\": 30638,\n  \"trash\": 39215,\n  \"trash</w>\": 9798,\n  \"traum\": 22263,\n  \"trauma</w>\": 13846,\n  \"traumati\": 46613,\n  \"traumatic</w>\": 29958,\n  \"trav\": 7586,\n  \"trav</w>\": 46955,\n  \"trave\": 35357,\n  \"travel\": 2824,\n  \"travel</w>\": 1949,\n  \"travelblog</w>\": 35957,\n  \"travelblogger</w>\": 25494,\n  \"travelchat</w>\": 46455,\n  \"traveled</w>\": 20384,\n  \"traveler</w>\": 17794,\n  \"travelers</w>\": 20644,\n  \"travelgram</w>\": 40069,\n  \"traveling</w>\": 9365,\n  \"travelled</w>\": 23428,\n  \"traveller</w>\": 22546,\n  \"travellers</w>\": 29583,\n  \"travelling</w>\": 11190,\n  \"travelphotography</w>\": 22808,\n  \"travelpics</w>\": 32293,\n  \"travels</w>\": 11472,\n  \"traveltips</w>\": 36260,\n  \"traveltuesday</w>\": 16713,\n  \"traverse</w>\": 35058,\n  \"travi\": 46971,\n  \"travis\": 27441,\n  \"travis</w>\": 12287,\n  \"traw\": 42288,\n  \"trax</w>\": 34421,\n  \"tray\": 38470,\n  \"tray</w>\": 14621,\n  \"trays</w>\": 39798,\n  \"trc</w>\": 41803,\n  \"tre\": 975,\n  \"tre</w>\": 6033,\n  \"treach\": 46005,\n  \"tread\": 26182,\n  \"tread</w>\": 35658,\n  \"treadmill</w>\": 37780,\n  \"treas\": 8591,\n  \"treason</w>\": 28103,\n  \"treasure</w>\": 9922,\n  \"treasured</w>\": 48068,\n  \"treasurer</w>\": 26985,\n  \"treasures</w>\": 16500,\n  \"treasury</w>\": 20956,\n  \"treat\": 3968,\n  \"treat</w>\": 3901,\n  \"treated</w>\": 9772,\n  \"treating</w>\": 13842,\n  \"treatment</w>\": 4869,\n  \"treatments</w>\": 15839,\n  \"treats</w>\": 8878,\n  \"treaty</w>\": 19967,\n  \"treble</w>\": 33194,\n  \"trecht</w>\": 33812,\n  \"tree\": 13354,\n  \"tree</w>\": 2677,\n  \"treehouse</w>\": 42387,\n  \"trees</w>\": 4682,\n  \"trek\": 13236,\n  \"trek</w>\": 8136,\n  \"trekking</w>\": 25293,\n  \"trell</w>\": 35159,\n  \"tremb\": 44043,\n  \"tremend\": 14659,\n  \"tremendous</w>\": 15988,\n  \"tren\": 2579,\n  \"trench</w>\": 23846,\n  \"trenches</w>\": 38723,\n  \"trend\": 19986,\n  \"trend</w>\": 6643,\n  \"trending</w>\": 6087,\n  \"trends</w>\": 7015,\n  \"trendsetter</w>\": 46666,\n  \"trendy</w>\": 23072,\n  \"trent\": 45885,\n  \"trent</w>\": 15548,\n  \"trenton</w>\": 37470,\n  \"tres</w>\": 23569,\n  \"tress</w>\": 4733,\n  \"tresses</w>\": 24273,\n  \"trevor\": 23437,\n  \"trevor</w>\": 13219,\n  \"trex</w>\": 42114,\n  \"trey\": 36670,\n  \"trey</w>\": 16939,\n  \"tri\": 924,\n  \"tri</w>\": 9618,\n  \"triad</w>\": 45602,\n  \"trial</w>\": 5991,\n  \"trials</w>\": 10992,\n  \"triangle</w>\": 14615,\n  \"triathlon</w>\": 18080,\n  \"trib</w>\": 45151,\n  \"tribal</w>\": 16629,\n  \"tribe\": 19943,\n  \"tribe</w>\": 11365,\n  \"tribeca</w>\": 35184,\n  \"tribes</w>\": 26546,\n  \"tribu\": 3028,\n  \"tribun\": 14311,\n  \"tribunal</w>\": 32911,\n  \"tribune</w>\": 18556,\n  \"tribute</w>\": 5493,\n  \"tributes</w>\": 15537,\n  \"tric\": 9511,\n  \"tric</w>\": 4081,\n  \"trich</w>\": 39519,\n  \"trick\": 17177,\n  \"trick</w>\": 8172,\n  \"tricks</w>\": 13177,\n  \"tricky</w>\": 22319,\n  \"trics</w>\": 31437,\n  \"trident</w>\": 35491,\n  \"tridge</w>\": 18722,\n  \"tried</w>\": 4554,\n  \"tries</w>\": 4315,\n  \"trife\": 48962,\n  \"trigge\": 30509,\n  \"trigger</w>\": 16158,\n  \"triggered</w>\": 30924,\n  \"triggers</w>\": 37319,\n  \"tright</w>\": 29915,\n  \"tril\": 40626,\n  \"trill</w>\": 39297,\n  \"trilli\": 39350,\n  \"trillion</w>\": 20160,\n  \"trilo\": 15183,\n  \"trilogy</w>\": 16862,\n  \"trim</w>\": 14182,\n  \"trimmed</w>\": 40657,\n  \"trin\": 6628,\n  \"trinidad</w>\": 26244,\n  \"trinity\": 30744,\n  \"trinity</w>\": 12267,\n  \"trio</w>\": 10263,\n  \"trip\": 23421,\n  \"trip</w>\": 2529,\n  \"tripad\": 37189,\n  \"tripadvisor</w>\": 38708,\n  \"triple\": 16519,\n  \"triple</w>\": 7673,\n  \"triplets</w>\": 48601,\n  \"tripod</w>\": 36141,\n  \"tripoli</w>\": 40095,\n  \"trippin</w>\": 43073,\n  \"tripping</w>\": 35229,\n  \"trippy</w>\": 35137,\n  \"trips</w>\": 12292,\n  \"tris</w>\": 29690,\n  \"trish\": 40511,\n  \"trish</w>\": 37179,\n  \"trisha</w>\": 39152,\n  \"tristan</w>\": 25497,\n  \"trit\": 37087,\n  \"triton</w>\": 45437,\n  \"triu\": 14782,\n  \"trium\": 21065,\n  \"triumph\": 26507,\n  \"triumph</w>\": 15307,\n  \"triumphant</w>\": 41918,\n  \"trivi\": 21228,\n  \"trivia</w>\": 10642,\n  \"triviatuesday</w>\": 45499,\n  \"trix</w>\": 41017,\n  \"tro\": 1046,\n  \"tro</w>\": 3332,\n  \"trock</w>\": 44368,\n  \"trojan</w>\": 30653,\n  \"trojans</w>\": 25310,\n  \"trol\": 10306,\n  \"troll\": 39737,\n  \"troll</w>\": 17103,\n  \"trolley</w>\": 25124,\n  \"trolling</w>\": 28552,\n  \"trolls</w>\": 20890,\n  \"tromb\": 32390,\n  \"trombone</w>\": 44423,\n  \"tron\": 19057,\n  \"tron</w>\": 10684,\n  \"tronic</w>\": 34258,\n  \"tronics</w>\": 34397,\n  \"troom</w>\": 23691,\n  \"troop\": 12492,\n  \"troop</w>\": 24054,\n  \"trooper</w>\": 18327,\n  \"troopers</w>\": 23576,\n  \"troops</w>\": 10109,\n  \"trop</w>\": 31585,\n  \"trope</w>\": 41150,\n  \"trophies</w>\": 20998,\n  \"trophy\": 42676,\n  \"trophy</w>\": 6502,\n  \"tropic\": 21794,\n  \"tropic</w>\": 36736,\n  \"tropical\": 41699,\n  \"tropical</w>\": 8686,\n  \"tropics</w>\": 36940,\n  \"tros</w>\": 40456,\n  \"trose</w>\": 36022,\n  \"trot</w>\": 30453,\n  \"trotter</w>\": 38287,\n  \"trou\": 5181,\n  \"troubad\": 49037,\n  \"trouble\": 25669,\n  \"trouble</w>\": 7848,\n  \"troubled</w>\": 25568,\n  \"troubles</w>\": 27254,\n  \"trough</w>\": 39761,\n  \"troupe</w>\": 34803,\n  \"trous\": 19727,\n  \"trousers</w>\": 23172,\n  \"trout</w>\": 14853,\n  \"trove</w>\": 45350,\n  \"trow</w>\": 46914,\n  \"troy\": 26283,\n  \"troy</w>\": 12819,\n  \"trs</w>\": 24770,\n  \"tru\": 931,\n  \"tru</w>\": 25326,\n  \"truck\": 14781,\n  \"truck</w>\": 4629,\n  \"trucker</w>\": 45918,\n  \"truckers</w>\": 43404,\n  \"trucking</w>\": 26208,\n  \"trucks</w>\": 9569,\n  \"trude</w>\": 39017,\n  \"trudeau</w>\": 15752,\n  \"true\": 13096,\n  \"true</w>\": 2328,\n  \"truec\": 37583,\n  \"truelove</w>\": 45711,\n  \"truffle</w>\": 23064,\n  \"truffles</w>\": 37057,\n  \"truly</w>\": 4545,\n  \"trum\": 11766,\n  \"trum</w>\": 11399,\n  \"truman</w>\": 29414,\n  \"trump\": 9124,\n  \"trump</w>\": 1797,\n  \"trumpet</w>\": 23681,\n  \"trumpp\": 45550,\n  \"trumprussia</w>\": 39135,\n  \"trumps</w>\": 29793,\n  \"trumptrain</w>\": 43595,\n  \"trun\": 16163,\n  \"trun</w>\": 46661,\n  \"trunk</w>\": 18347,\n  \"trunks</w>\": 38531,\n  \"truro</w>\": 43507,\n  \"truss</w>\": 46080,\n  \"trust\": 17691,\n  \"trust</w>\": 3876,\n  \"truste\": 17356,\n  \"trusted</w>\": 16538,\n  \"trustee</w>\": 30803,\n  \"trustees</w>\": 28853,\n  \"trusting</w>\": 33221,\n  \"trusts</w>\": 27507,\n  \"trustworthy</w>\": 46840,\n  \"trusty</w>\": 37955,\n  \"truth\": 21335,\n  \"truth</w>\": 4319,\n  \"truths</w>\": 27179,\n  \"trx</w>\": 31620,\n  \"try\": 4487,\n  \"try</w>\": 1209,\n  \"tryin</w>\": 31085,\n  \"trying</w>\": 2551,\n  \"tryna</w>\": 15702,\n  \"tryout</w>\": 43832,\n  \"tryouts</w>\": 28053,\n  \"ts\": 2290,\n  \"ts</w>\": 590,\n  \"tsa</w>\": 25977,\n  \"tsal</w>\": 20438,\n  \"tsb</w>\": 45015,\n  \"tsc</w>\": 37437,\n  \"tsch</w>\": 38778,\n  \"tsd</w>\": 20611,\n  \"tse\": 49144,\n  \"tsfor\": 42654,\n  \"tsford</w>\": 32823,\n  \"tsh\": 42872,\n  \"tshirt</w>\": 14907,\n  \"tshirts</w>\": 29377,\n  \"tsi\": 40048,\n  \"tsi</w>\": 37867,\n  \"tsk</w>\": 43600,\n  \"tsla</w>\": 35681,\n  \"tsm</w>\": 43452,\n  \"tsman</w>\": 20046,\n  \"tsn\": 44921,\n  \"tsn</w>\": 26896,\n  \"tson\": 42353,\n  \"tson</w>\": 47140,\n  \"tsp</w>\": 34230,\n  \"tsu\": 13950,\n  \"tsu</w>\": 20175,\n  \"tsun\": 19155,\n  \"tsunami</w>\": 24286,\n  \"tsville</w>\": 29080,\n  \"tt\": 971,\n  \"tt</w>\": 1402,\n  \"tta</w>\": 2646,\n  \"ttc</w>\": 27668,\n  \"tte\": 23105,\n  \"tte</w>\": 3070,\n  \"tted</w>\": 15163,\n  \"tten\": 11351,\n  \"tten</w>\": 17479,\n  \"tter\": 18691,\n  \"tter</w>\": 5165,\n  \"tters</w>\": 6318,\n  \"ttes</w>\": 9293,\n  \"tti</w>\": 5237,\n  \"ttin</w>\": 36589,\n  \"tting</w>\": 1188,\n  \"ttino</w>\": 47389,\n  \"ttip</w>\": 46993,\n  \"ttle</w>\": 9253,\n  \"ttm</w>\": 46838,\n  \"tto\": 8759,\n  \"tto</w>\": 8105,\n  \"tton</w>\": 10562,\n  \"ttot</w>\": 12480,\n  \"ttp</w>\": 30828,\n  \"ttr\": 47589,\n  \"tts</w>\": 11570,\n  \"ttt</w>\": 17256,\n  \"tttt</w>\": 33119,\n  \"ttu</w>\": 44006,\n  \"ttv</w>\": 24281,\n  \"tty\": 11457,\n  \"tty</w>\": 1856,\n  \"tu\": 764,\n  \"tu</w>\": 5760,\n  \"tua</w>\": 41344,\n  \"tual</w>\": 4799,\n  \"tuan</w>\": 37297,\n  \"tub\": 34907,\n  \"tub</w>\": 15450,\n  \"tube\": 38229,\n  \"tube</w>\": 3308,\n  \"tuber\": 30371,\n  \"tuberculo\": 42606,\n  \"tuberculosis</w>\": 43129,\n  \"tubes</w>\": 22870,\n  \"tubing</w>\": 40794,\n  \"tubs</w>\": 41705,\n  \"tubular</w>\": 48786,\n  \"tuc\": 14456,\n  \"tuc</w>\": 43871,\n  \"tuck</w>\": 22398,\n  \"tucked</w>\": 26923,\n  \"tucker\": 39703,\n  \"tucker</w>\": 15726,\n  \"tucket</w>\": 32677,\n  \"tucson</w>\": 17250,\n  \"tudor</w>\": 24547,\n  \"tue</w>\": 17515,\n  \"tues\": 2283,\n  \"tues</w>\": 12113,\n  \"tuesday\": 10209,\n  \"tuesday</w>\": 2519,\n  \"tuesdaymotivation</w>\": 25432,\n  \"tuesdays</w>\": 23195,\n  \"tuesdaythoughts</w>\": 17988,\n  \"tuf\": 44510,\n  \"tuff</w>\": 38868,\n  \"tug\": 47032,\n  \"tug</w>\": 27902,\n  \"tuition</w>\": 21129,\n  \"tuk\": 39271,\n  \"tuk</w>\": 14993,\n  \"tul\": 9069,\n  \"tul</w>\": 40837,\n  \"tula</w>\": 36332,\n  \"tulane</w>\": 44893,\n  \"tulip</w>\": 28389,\n  \"tulips</w>\": 30886,\n  \"tulsa</w>\": 18850,\n  \"tum\": 12932,\n  \"tum</w>\": 8843,\n  \"tumb\": 8831,\n  \"tumble</w>\": 38284,\n  \"tumbler</w>\": 48790,\n  \"tumbling</w>\": 46226,\n  \"tumblr</w>\": 11841,\n  \"tummy</w>\": 26053,\n  \"tumor</w>\": 22616,\n  \"tumors</w>\": 39894,\n  \"tumour</w>\": 45129,\n  \"tun\": 1415,\n  \"tun</w>\": 21349,\n  \"tuna</w>\": 15037,\n  \"tundra</w>\": 39899,\n  \"tune\": 11427,\n  \"tune</w>\": 3300,\n  \"tuned</w>\": 5898,\n  \"tunein</w>\": 16809,\n  \"tuner</w>\": 42905,\n  \"tunes\": 31688,\n  \"tunes</w>\": 10810,\n  \"tunesapp</w>\": 32550,\n  \"tung\": 47940,\n  \"tung</w>\": 31092,\n  \"tuni\": 16270,\n  \"tunic</w>\": 43495,\n  \"tuning</w>\": 19585,\n  \"tunisia</w>\": 23346,\n  \"tunnel</w>\": 11096,\n  \"tunnels</w>\": 29814,\n  \"tuous</w>\": 28738,\n  \"tup\": 37956,\n  \"tup</w>\": 4507,\n  \"tupac</w>\": 31506,\n  \"tups</w>\": 44855,\n  \"tur\": 985,\n  \"tur</w>\": 17182,\n  \"tura</w>\": 16127,\n  \"tural\": 45143,\n  \"tural</w>\": 4261,\n  \"turb\": 18973,\n  \"turban</w>\": 48515,\n  \"turbine</w>\": 26880,\n  \"turbines</w>\": 38863,\n  \"turbo\": 23578,\n  \"turbo</w>\": 13668,\n  \"turbul\": 31100,\n  \"turbulent</w>\": 47871,\n  \"ture\": 4321,\n  \"ture</w>\": 941,\n  \"tured</w>\": 3987,\n  \"turer</w>\": 11993,\n  \"turers</w>\": 16956,\n  \"tures</w>\": 2400,\n  \"turf\": 36762,\n  \"turf</w>\": 12510,\n  \"turi\": 11896,\n  \"turin</w>\": 36251,\n  \"turing</w>\": 5812,\n  \"turismo</w>\": 30202,\n  \"turk\": 8254,\n  \"turk</w>\": 32507,\n  \"turkey\": 35977,\n  \"turkey</w>\": 4790,\n  \"turkeys</w>\": 37991,\n  \"turkish\": 48199,\n  \"turkish</w>\": 9278,\n  \"turks</w>\": 34344,\n  \"turmeric</w>\": 34044,\n  \"turmoil</w>\": 37751,\n  \"turn\": 5522,\n  \"turn</w>\": 2105,\n  \"turnaround</w>\": 32719,\n  \"turnbull</w>\": 27863,\n  \"turned</w>\": 3771,\n  \"turner\": 42867,\n  \"turner</w>\": 8777,\n  \"turning</w>\": 4976,\n  \"turno\": 21377,\n  \"turnout</w>\": 11654,\n  \"turnover</w>\": 30794,\n  \"turnpike</w>\": 38301,\n  \"turns</w>\": 3185,\n  \"turnt</w>\": 28887,\n  \"turntable</w>\": 37953,\n  \"turnup</w>\": 30591,\n  \"turo</w>\": 29224,\n  \"turquo\": 19390,\n  \"turquoise</w>\": 19899,\n  \"turt\": 13716,\n  \"turtle\": 35943,\n  \"turtle</w>\": 10912,\n  \"turtles</w>\": 17862,\n  \"tus\": 24828,\n  \"tus</w>\": 7079,\n  \"tusc\": 17909,\n  \"tuscal\": 42638,\n  \"tuscaloosa</w>\": 44375,\n  \"tuscan</w>\": 42865,\n  \"tuscany</w>\": 20885,\n  \"tuss\": 31741,\n  \"tut</w>\": 35121,\n  \"tutor\": 10054,\n  \"tutor</w>\": 27858,\n  \"tutorial</w>\": 12857,\n  \"tutorials</w>\": 30973,\n  \"tutoring</w>\": 37532,\n  \"tutti</w>\": 46880,\n  \"tutu</w>\": 35845,\n  \"tux\": 28720,\n  \"tux</w>\": 49186,\n  \"tuxedo</w>\": 40173,\n  \"tv\": 3197,\n  \"tv</w>\": 1583,\n  \"tvc</w>\": 49190,\n  \"tvd</w>\": 25889,\n  \"tvmiaw</w>\": 38554,\n  \"tvn</w>\": 44232,\n  \"tvs</w>\": 27114,\n  \"tvtime</w>\": 19947,\n  \"tvxq</w>\": 43968,\n  \"tw\": 966,\n  \"tw</w>\": 12842,\n  \"twa</w>\": 46954,\n  \"twain</w>\": 30689,\n  \"twal\": 48126,\n  \"tware</w>\": 5707,\n  \"twc</w>\": 41217,\n  \"twd\": 29440,\n  \"twd</w>\": 19343,\n  \"twdfamily</w>\": 38218,\n  \"twe\": 18365,\n  \"tweak</w>\": 48870,\n  \"tweaks</w>\": 42661,\n  \"twee\": 1330,\n  \"tweed</w>\": 26904,\n  \"tweeps</w>\": 14928,\n  \"tweet\": 11826,\n  \"tweet</w>\": 1842,\n  \"tweeta\": 32024,\n  \"tweetapicture\": 40596,\n  \"tweeted</w>\": 7841,\n  \"tweeter</w>\": 32876,\n  \"tweeters</w>\": 31713,\n  \"tweeting</w>\": 8901,\n  \"tweets</w>\": 3560,\n  \"tweetyour\": 45033,\n  \"twel\": 14476,\n  \"twelf\": 39443,\n  \"twelfth</w>\": 44072,\n  \"twell\": 38722,\n  \"twell</w>\": 30162,\n  \"twelve</w>\": 19694,\n  \"twent\": 27027,\n  \"twenti\": 35167,\n  \"twenty</w>\": 13016,\n  \"twentyon\": 39609,\n  \"twentyonepilots</w>\": 40007,\n  \"twer\": 13923,\n  \"twerk</w>\": 28506,\n  \"twi\": 5537,\n  \"twice</w>\": 6970,\n  \"twick\": 34326,\n  \"twickenham</w>\": 39619,\n  \"twil\": 12804,\n  \"twili\": 35754,\n  \"twilight\": 46366,\n  \"twilight</w>\": 14512,\n  \"twill</w>\": 43703,\n  \"twin\": 9342,\n  \"twin</w>\": 6769,\n  \"twine</w>\": 42775,\n  \"twinkle</w>\": 36545,\n  \"twinning</w>\": 30156,\n  \"twinpeaks</w>\": 32042,\n  \"twins</w>\": 8040,\n  \"twist</w>\": 10589,\n  \"twisted</w>\": 18233,\n  \"twister</w>\": 45933,\n  \"twists</w>\": 34149,\n  \"twit\": 1643,\n  \"twit</w>\": 18704,\n  \"twitart</w>\": 27709,\n  \"twitch\": 13251,\n  \"twitch</w>\": 9153,\n  \"twitter\": 7546,\n  \"twitter</w>\": 1989,\n  \"twitterkurds</w>\": 32722,\n  \"twitterstorians</w>\": 35389,\n  \"two\": 17211,\n  \"two</w>\": 1237,\n  \"twol\": 31964,\n  \"twood\": 40404,\n  \"twood</w>\": 13245,\n  \"twp</w>\": 33283,\n  \"twright</w>\": 46778,\n  \"twt</w>\": 6825,\n  \"twx</w>\": 26830,\n  \"twy\": 45861,\n  \"tx\": 6636,\n  \"tx</w>\": 5200,\n  \"txhsfb</w>\": 34757,\n  \"txlege</w>\": 26995,\n  \"txst</w>\": 40761,\n  \"txt</w>\": 24595,\n  \"txwx</w>\": 22995,\n  \"ty\": 1260,\n  \"ty</w>\": 744,\n  \"tya</w>\": 41273,\n  \"tycoon</w>\": 36803,\n  \"tye</w>\": 43097,\n  \"tyfree</w>\": 41215,\n  \"tyga</w>\": 41952,\n  \"tying</w>\": 22559,\n  \"tyl</w>\": 47537,\n  \"tyler\": 14787,\n  \"tyler</w>\": 7058,\n  \"tym</w>\": 45772,\n  \"tyne\": 27000,\n  \"tyne</w>\": 29729,\n  \"tyour\": 16823,\n  \"type\": 15673,\n  \"type</w>\": 3877,\n  \"typed</w>\": 40753,\n  \"typeface</w>\": 44969,\n  \"types</w>\": 7543,\n  \"typewriter</w>\": 42180,\n  \"typho\": 17486,\n  \"typhoon</w>\": 21110,\n  \"typic\": 21648,\n  \"typical</w>\": 9854,\n  \"typically</w>\": 23175,\n  \"typing</w>\": 20102,\n  \"typo\": 18831,\n  \"typo</w>\": 29076,\n  \"typography</w>\": 24332,\n  \"tyr\": 15590,\n  \"tyran\": 46921,\n  \"tyranny</w>\": 35402,\n  \"tyre\": 38330,\n  \"tyre</w>\": 16864,\n  \"tyres</w>\": 21376,\n  \"tyrone</w>\": 30226,\n  \"tyson</w>\": 16616,\n  \"tz\": 7710,\n  \"tz</w>\": 4983,\n  \"tzer</w>\": 45267,\n  \"tzky</w>\": 47127,\n  \"tzman</w>\": 46032,\n  \"tzu</w>\": 34354,\n  \"tÃ©\": 27208,\n  \"tÃ©</w>\": 39694,\n  \"u\": 84,\n  \"u</w>\": 340,\n  \"ua\": 34075,\n  \"ua</w>\": 8441,\n  \"uaap\": 46753,\n  \"uaap</w>\": 43774,\n  \"uab</w>\": 35587,\n  \"uae</w>\": 9752,\n  \"ual</w>\": 1921,\n  \"ually</w>\": 10767,\n  \"uan</w>\": 33062,\n  \"uas</w>\": 38339,\n  \"uav</w>\": 30303,\n  \"ub\": 18430,\n  \"ub</w>\": 13494,\n  \"uba</w>\": 29768,\n  \"ubc\": 42479,\n  \"ubc</w>\": 29455,\n  \"ube</w>\": 30892,\n  \"uber\": 25896,\n  \"uber</w>\": 10668,\n  \"ubi\": 26758,\n  \"ubio</w>\": 32867,\n  \"ubiquit\": 48129,\n  \"ubis\": 28248,\n  \"ubisoft</w>\": 32051,\n  \"ubs</w>\": 43851,\n  \"ubun\": 28184,\n  \"ubuntu</w>\": 30791,\n  \"uc\": 4903,\n  \"uc</w>\": 12438,\n  \"uca</w>\": 30942,\n  \"ucc\": 44844,\n  \"ucc</w>\": 29138,\n  \"ucci</w>\": 30746,\n  \"uccino</w>\": 30409,\n  \"ucd\": 44746,\n  \"ucd</w>\": 43514,\n  \"ucf</w>\": 24414,\n  \"uch\": 19465,\n  \"uch</w>\": 22394,\n  \"uchi\": 37473,\n  \"uci\": 46354,\n  \"uci</w>\": 28925,\n  \"uck</w>\": 34189,\n  \"ucl\": 12013,\n  \"ucl</w>\": 13647,\n  \"ucla\": 37667,\n  \"ucla</w>\": 17259,\n  \"ucn</w>\": 49036,\n  \"uconn</w>\": 30549,\n  \"ud\": 6560,\n  \"ud</w>\": 5765,\n  \"uda</w>\": 22800,\n  \"udaipur</w>\": 49385,\n  \"uddin</w>\": 43035,\n  \"ude\": 37016,\n  \"ude</w>\": 35194,\n  \"ue\": 16696,\n  \"ue</w>\": 1190,\n  \"uefa</w>\": 19189,\n  \"uel</w>\": 24231,\n  \"uer</w>\": 45951,\n  \"ues</w>\": 2526,\n  \"uf\": 17777,\n  \"uf</w>\": 19230,\n  \"ufc\": 20396,\n  \"ufc</w>\": 6490,\n  \"uff</w>\": 45701,\n  \"ufo</w>\": 19443,\n  \"ufos</w>\": 48234,\n  \"ug\": 3754,\n  \"ug</w>\": 16061,\n  \"uga</w>\": 16056,\n  \"ugand\": 25965,\n  \"uganda</w>\": 11125,\n  \"ugandan</w>\": 44206,\n  \"ugby</w>\": 30658,\n  \"ugh\": 39736,\n  \"ugh</w>\": 12755,\n  \"ugliest</w>\": 43543,\n  \"ugly\": 36070,\n  \"ugly</w>\": 8159,\n  \"ugu</w>\": 18144,\n  \"uh\": 17661,\n  \"uh</w>\": 9219,\n  \"uhc</w>\": 44974,\n  \"uhh</w>\": 35938,\n  \"uhhh</w>\": 45270,\n  \"uhm</w>\": 35614,\n  \"uhur\": 29434,\n  \"uhuru</w>\": 35690,\n  \"ui\": 17326,\n  \"ui</w>\": 11458,\n  \"uil</w>\": 29395,\n  \"uit\": 30696,\n  \"uit</w>\": 47584,\n  \"uj\": 33266,\n  \"uji</w>\": 39672,\n  \"uk\": 2294,\n  \"uk</w>\": 1432,\n  \"uka</w>\": 23294,\n  \"uke\": 48836,\n  \"uke</w>\": 28577,\n  \"uked\": 48987,\n  \"uki\": 37435,\n  \"uki</w>\": 9009,\n  \"ukin\": 34996,\n  \"ukip</w>\": 20360,\n  \"uklabour</w>\": 36902,\n  \"ukmfg</w>\": 38764,\n  \"uko</w>\": 33562,\n  \"ukone</w>\": 24682,\n  \"ukrain\": 15468,\n  \"ukraine</w>\": 7768,\n  \"ukrainian</w>\": 16927,\n  \"ukrunchat</w>\": 34481,\n  \"uku\": 29541,\n  \"uku</w>\": 36082,\n  \"ukulele</w>\": 39094,\n  \"ul\": 914,\n  \"ul</w>\": 6625,\n  \"ula\": 34104,\n  \"ula</w>\": 9506,\n  \"ular</w>\": 4927,\n  \"ulary</w>\": 21701,\n  \"ulate</w>\": 20467,\n  \"ulation</w>\": 32896,\n  \"ule</w>\": 35616,\n  \"ules</w>\": 26274,\n  \"ulf</w>\": 49331,\n  \"uli\": 41841,\n  \"uli</w>\": 22174,\n  \"ull\": 33254,\n  \"ulla</w>\": 30577,\n  \"ullah</w>\": 45310,\n  \"ullivan</w>\": 45252,\n  \"ulls</w>\": 37418,\n  \"ulo\": 46084,\n  \"ulo</w>\": 36738,\n  \"ulous\": 42490,\n  \"ulous</w>\": 4281,\n  \"ulously</w>\": 20167,\n  \"ulster\": 29709,\n  \"ulster</w>\": 24639,\n  \"ult</w>\": 4380,\n  \"ulti\": 11925,\n  \"ulties</w>\": 21884,\n  \"ultimat\": 16522,\n  \"ultimate\": 34684,\n  \"ultimate</w>\": 5377,\n  \"ultimatefan\": 48372,\n  \"ultimatefanlive</w>\": 48644,\n  \"ultimately</w>\": 23023,\n  \"ultr\": 25636,\n  \"ultra\": 11398,\n  \"ultra</w>\": 8118,\n  \"ultram\": 44519,\n  \"ultrasound</w>\": 29717,\n  \"ulture</w>\": 22272,\n  \"ulty</w>\": 8036,\n  \"ulu\": 41815,\n  \"ulu</w>\": 15659,\n  \"ulum</w>\": 17235,\n  \"uly\": 33220,\n  \"ulysses</w>\": 46114,\n  \"um\": 1622,\n  \"um</w>\": 1008,\n  \"uma\": 29982,\n  \"uma</w>\": 9256,\n  \"uman</w>\": 27112,\n  \"umar</w>\": 25656,\n  \"umass</w>\": 39390,\n  \"umatic</w>\": 45006,\n  \"umb\": 7493,\n  \"umber\": 19195,\n  \"umbrel\": 34773,\n  \"umbrella</w>\": 17143,\n  \"umbrellas</w>\": 42782,\n  \"umbria</w>\": 39287,\n  \"umc</w>\": 39491,\n  \"umd</w>\": 42067,\n  \"ume\": 38480,\n  \"umen</w>\": 42832,\n  \"uments</w>\": 25924,\n  \"umer</w>\": 23539,\n  \"umes</w>\": 21403,\n  \"umi\": 48772,\n  \"umi</w>\": 15458,\n  \"umich\": 41294,\n  \"umin</w>\": 31542,\n  \"umm\": 26129,\n  \"umm</w>\": 21215,\n  \"ummer</w>\": 47628,\n  \"ummm</w>\": 33665,\n  \"umni</w>\": 31739,\n  \"ump\": 22224,\n  \"umpire</w>\": 36214,\n  \"ums</w>\": 8643,\n  \"umu</w>\": 39788,\n  \"un\": 569,\n  \"un</w>\": 2271,\n  \"una</w>\": 6385,\n  \"unable</w>\": 17793,\n  \"unacceptable</w>\": 25234,\n  \"unanim\": 20800,\n  \"unanimous</w>\": 33520,\n  \"unanimously</w>\": 31798,\n  \"unanswered</w>\": 43611,\n  \"unarmed</w>\": 41541,\n  \"unas</w>\": 41366,\n  \"unavailable</w>\": 48430,\n  \"unaware</w>\": 33347,\n  \"unbeat\": 37056,\n  \"unbeatable</w>\": 40267,\n  \"unbeaten</w>\": 19228,\n  \"unbeliev\": 11383,\n  \"unbelievable</w>\": 13306,\n  \"unbelievably</w>\": 33781,\n  \"unborn</w>\": 37257,\n  \"unboxing</w>\": 32866,\n  \"unbreakable</w>\": 32956,\n  \"unbroken</w>\": 49271,\n  \"unc\": 24921,\n  \"unc</w>\": 15322,\n  \"uncanny</w>\": 32556,\n  \"uncertain</w>\": 30384,\n  \"uncertainty</w>\": 23956,\n  \"unch</w>\": 1527,\n  \"unchanged</w>\": 34272,\n  \"uncharted</w>\": 34560,\n  \"unci\": 25521,\n  \"unciation</w>\": 34117,\n  \"uncle\": 31537,\n  \"uncle</w>\": 8002,\n  \"unclear</w>\": 32955,\n  \"uncles</w>\": 45335,\n  \"uncomfortable</w>\": 22470,\n  \"uncommon</w>\": 34888,\n  \"uncondition\": 46561,\n  \"unconditional</w>\": 31112,\n  \"unconscious</w>\": 34791,\n  \"unconstitutional</w>\": 43585,\n  \"unconventional</w>\": 39440,\n  \"uncover</w>\": 33031,\n  \"uncovered</w>\": 28234,\n  \"uncture</w>\": 38736,\n  \"uncut</w>\": 41056,\n  \"und\": 9762,\n  \"und</w>\": 9732,\n  \"unda</w>\": 39932,\n  \"undant</w>\": 25377,\n  \"unday</w>\": 29338,\n  \"unde</w>\": 45226,\n  \"undead</w>\": 40105,\n  \"undecided</w>\": 49368,\n  \"undefeated</w>\": 15326,\n  \"undeni\": 38424,\n  \"under\": 1473,\n  \"under</w>\": 1798,\n  \"underage</w>\": 45669,\n  \"underattack</w>\": 35075,\n  \"undercover</w>\": 21595,\n  \"underdog</w>\": 44266,\n  \"undere\": 21675,\n  \"underestim\": 23348,\n  \"underestimate</w>\": 31794,\n  \"undergo</w>\": 31545,\n  \"undergoing</w>\": 26419,\n  \"undergrad</w>\": 38331,\n  \"undergraduate</w>\": 24320,\n  \"underground</w>\": 9396,\n  \"undering</w>\": 30826,\n  \"underlying</w>\": 31812,\n  \"undermine</w>\": 42839,\n  \"underneath</w>\": 20857,\n  \"underrated</w>\": 19494,\n  \"unders</w>\": 20376,\n  \"understand\": 47582,\n  \"understand</w>\": 4600,\n  \"understanding</w>\": 7522,\n  \"understands</w>\": 21607,\n  \"understatement</w>\": 38296,\n  \"understood</w>\": 17303,\n  \"undertaker</w>\": 40144,\n  \"undertaking</w>\": 49067,\n  \"undertale</w>\": 48283,\n  \"underthe\": 41161,\n  \"underwater</w>\": 14760,\n  \"underway</w>\": 6273,\n  \"underwear</w>\": 21154,\n  \"underwood</w>\": 21474,\n  \"underworld</w>\": 34760,\n  \"undi</w>\": 23845,\n  \"undisclosed</w>\": 39334,\n  \"undo</w>\": 35454,\n  \"undocumented</w>\": 35414,\n  \"undoub\": 38836,\n  \"undoubtedly</w>\": 42204,\n  \"undp</w>\": 26691,\n  \"une\": 4522,\n  \"une</w>\": 10966,\n  \"unearth\": 32716,\n  \"unearthed</w>\": 36632,\n  \"unemp\": 15139,\n  \"unemployed</w>\": 32721,\n  \"unemployment</w>\": 19350,\n  \"unes</w>\": 6394,\n  \"unesco</w>\": 16216,\n  \"uneven</w>\": 43204,\n  \"unex\": 9484,\n  \"unexpe\": 10802,\n  \"unexpec\": 31829,\n  \"unexpected</w>\": 12293,\n  \"unexpectedly</w>\": 35622,\n  \"unf\": 29285,\n  \"unfair</w>\": 22193,\n  \"unfinished</w>\": 26526,\n  \"unfit</w>\": 45367,\n  \"unfold</w>\": 38681,\n  \"unfollow</w>\": 38797,\n  \"unfor\": 14010,\n  \"unforgettable</w>\": 16173,\n  \"unfortun\": 10194,\n  \"unfortunate</w>\": 22361,\n  \"unfortunately</w>\": 12863,\n  \"unfpa</w>\": 45048,\n  \"ung\": 10439,\n  \"ung</w>\": 4334,\n  \"unga</w>\": 19151,\n  \"ungsoo</w>\": 25582,\n  \"unh\": 25365,\n  \"unhappy</w>\": 26528,\n  \"unhcr</w>\": 43451,\n  \"unhealthy</w>\": 30994,\n  \"uni\": 1107,\n  \"uni</w>\": 5926,\n  \"unic\": 7648,\n  \"unicef\": 38286,\n  \"unicef</w>\": 19259,\n  \"unicorn</w>\": 15660,\n  \"unicorns</w>\": 35183,\n  \"unidenti\": 33707,\n  \"unidentified</w>\": 35563,\n  \"unification</w>\": 45036,\n  \"unified</w>\": 20876,\n  \"uniform</w>\": 11075,\n  \"uniforms</w>\": 17838,\n  \"unil\": 32388,\n  \"unilever</w>\": 48654,\n  \"uniof\": 21218,\n  \"union\": 14210,\n  \"union</w>\": 3503,\n  \"unions</w>\": 18353,\n  \"unis\": 30482,\n  \"unis</w>\": 39266,\n  \"unisex</w>\": 27609,\n  \"unison</w>\": 46694,\n  \"unit\": 28522,\n  \"unit</w>\": 5695,\n  \"unite\": 15078,\n  \"unite</w>\": 11305,\n  \"uniteblue</w>\": 20935,\n  \"united\": 10898,\n  \"united</w>\": 2690,\n  \"unitedstates</w>\": 39636,\n  \"unitedway\": 47486,\n  \"unites</w>\": 32061,\n  \"uniting</w>\": 31318,\n  \"units</w>\": 10394,\n  \"unity\": 38300,\n  \"unity</w>\": 8581,\n  \"univ\": 36680,\n  \"univ</w>\": 14896,\n  \"univer\": 15574,\n  \"univers\": 5855,\n  \"universal\": 19148,\n  \"universal</w>\": 8754,\n  \"universe</w>\": 6104,\n  \"universi\": 41692,\n  \"universit\": 26019,\n  \"universities</w>\": 16408,\n  \"university\": 40728,\n  \"university</w>\": 2182,\n  \"universityof\": 46158,\n  \"unk</w>\": 5542,\n  \"unknown</w>\": 8685,\n  \"unl</w>\": 43807,\n  \"unlawful</w>\": 42305,\n  \"unle\": 19677,\n  \"unlea\": 23893,\n  \"unleash</w>\": 26706,\n  \"unleashed</w>\": 27955,\n  \"unless</w>\": 10602,\n  \"unlike</w>\": 16694,\n  \"unlikely</w>\": 18904,\n  \"unlimited</w>\": 11015,\n  \"unlock</w>\": 18649,\n  \"unlocked</w>\": 16770,\n  \"unlocking</w>\": 40810,\n  \"unlucky</w>\": 35029,\n  \"unlv</w>\": 42283,\n  \"unmanned</w>\": 36751,\n  \"unmatched</w>\": 46054,\n  \"unn</w>\": 38364,\n  \"unnamed</w>\": 44985,\n  \"unnecessary</w>\": 24100,\n  \"unner</w>\": 31481,\n  \"unning</w>\": 43282,\n  \"unnoticed</w>\": 42807,\n  \"uno\": 32446,\n  \"uno</w>\": 17078,\n  \"unofficial</w>\": 22506,\n  \"unpacking</w>\": 43589,\n  \"unpaid</w>\": 32811,\n  \"unparalleled</w>\": 44396,\n  \"unplugged</w>\": 31724,\n  \"unpopular</w>\": 40232,\n  \"unprece\": 23054,\n  \"unprecedented</w>\": 23344,\n  \"unpredictable</w>\": 38684,\n  \"unra\": 45150,\n  \"unreal\": 46980,\n  \"unreal</w>\": 15636,\n  \"unrelated</w>\": 38644,\n  \"unreleased</w>\": 29654,\n  \"unrest</w>\": 36452,\n  \"uns</w>\": 25908,\n  \"unsafe</w>\": 32071,\n  \"unsc</w>\": 36395,\n  \"unseen</w>\": 19069,\n  \"unsigned</w>\": 39346,\n  \"unsolved</w>\": 40836,\n  \"unsplash</w>\": 46196,\n  \"unstable</w>\": 34730,\n  \"unstopp\": 22105,\n  \"unstoppable</w>\": 23484,\n  \"unsuccessful</w>\": 47478,\n  \"unsung</w>\": 33015,\n  \"unsure</w>\": 26396,\n  \"unt\": 19654,\n  \"unt</w>\": 6537,\n  \"until</w>\": 1942,\n  \"untitled</w>\": 21309,\n  \"unto</w>\": 19801,\n  \"untold</w>\": 32206,\n  \"untouch\": 44509,\n  \"untouched</w>\": 42764,\n  \"unused</w>\": 29636,\n  \"unusual</w>\": 12613,\n  \"unusually</w>\": 36465,\n  \"unve\": 6685,\n  \"unveil</w>\": 20483,\n  \"unveiled</w>\": 13572,\n  \"unveiling</w>\": 20327,\n  \"unveils</w>\": 15057,\n  \"unwanted</w>\": 25285,\n  \"unwind</w>\": 34064,\n  \"unya</w>\": 37142,\n  \"uo\": 30874,\n  \"uo</w>\": 36162,\n  \"uof\": 11155,\n  \"uoft</w>\": 37329,\n  \"uon\": 48144,\n  \"uous</w>\": 40185,\n  \"up\": 1083,\n  \"up</w>\": 705,\n  \"upa</w>\": 31727,\n  \"upbeat</w>\": 39201,\n  \"upcoming</w>\": 4196,\n  \"upcycled</w>\": 46552,\n  \"upd\": 3226,\n  \"update</w>\": 2491,\n  \"updated</w>\": 5974,\n  \"updates</w>\": 4904,\n  \"updating</w>\": 22792,\n  \"uper\": 38082,\n  \"uper</w>\": 33056,\n  \"upfront</w>\": 42064,\n  \"upgrade</w>\": 10365,\n  \"upgraded</w>\": 18577,\n  \"upgrades</w>\": 21253,\n  \"upgrading</w>\": 34368,\n  \"uph\": 14128,\n  \"uphill</w>\": 42767,\n  \"uphol\": 26195,\n  \"uphold</w>\": 43897,\n  \"upholstery</w>\": 44556,\n  \"upl\": 41939,\n  \"uplift</w>\": 45389,\n  \"uplifting</w>\": 29546,\n  \"upload</w>\": 13968,\n  \"uploaded</w>\": 16793,\n  \"uploading</w>\": 30145,\n  \"upon\": 23524,\n  \"upon</w>\": 5067,\n  \"upp\": 19549,\n  \"upp</w>\": 45946,\n  \"upper\": 22465,\n  \"upper</w>\": 7067,\n  \"upri\": 15982,\n  \"upright</w>\": 29818,\n  \"uprising</w>\": 26006,\n  \"upro\": 28922,\n  \"ups</w>\": 6926,\n  \"upscale</w>\": 47501,\n  \"upset</w>\": 11214,\n  \"upsets</w>\": 42637,\n  \"upside</w>\": 15362,\n  \"upstairs</w>\": 21387,\n  \"upstate</w>\": 33335,\n  \"upstream</w>\": 45517,\n  \"upthe\": 31510,\n  \"upto</w>\": 26575,\n  \"upton</w>\": 31910,\n  \"uptown</w>\": 23807,\n  \"upward</w>\": 32526,\n  \"upwards</w>\": 34915,\n  \"uq</w>\": 39591,\n  \"ur\": 565,\n  \"ur</w>\": 1775,\n  \"ura\": 29337,\n  \"ura</w>\": 3544,\n  \"urable</w>\": 40194,\n  \"ural\": 23547,\n  \"ural</w>\": 33948,\n  \"uran</w>\": 16197,\n  \"uranium</w>\": 29850,\n  \"urban\": 7931,\n  \"urban</w>\": 5800,\n  \"urbanart</w>\": 40834,\n  \"urd</w>\": 47880,\n  \"urday</w>\": 19742,\n  \"urdu</w>\": 29976,\n  \"ure\": 5514,\n  \"ure</w>\": 726,\n  \"ured</w>\": 4210,\n  \"urer</w>\": 20864,\n  \"ures</w>\": 2288,\n  \"urg</w>\": 35995,\n  \"urge</w>\": 14852,\n  \"urged</w>\": 23790,\n  \"urgency</w>\": 47612,\n  \"urgent</w>\": 13693,\n  \"urgently</w>\": 34534,\n  \"urges</w>\": 16692,\n  \"urging</w>\": 27748,\n  \"uri\": 11052,\n  \"uri</w>\": 8699,\n  \"urie</w>\": 46429,\n  \"urin\": 45245,\n  \"urine</w>\": 28864,\n  \"uring</w>\": 1351,\n  \"url</w>\": 23464,\n  \"urn</w>\": 38075,\n  \"uro\": 17343,\n  \"uro</w>\": 5925,\n  \"urology</w>\": 48585,\n  \"urope</w>\": 14918,\n  \"urs</w>\": 4794,\n  \"urself</w>\": 31942,\n  \"urst</w>\": 19181,\n  \"urstruly\": 34751,\n  \"urstrulymahesh</w>\": 35314,\n  \"ursula</w>\": 38390,\n  \"urt</w>\": 24309,\n  \"uru\": 16322,\n  \"uru</w>\": 11768,\n  \"uruguay</w>\": 27931,\n  \"urus</w>\": 14246,\n  \"urve\": 24583,\n  \"ury\": 8642,\n  \"ury</w>\": 2106,\n  \"us\": 904,\n  \"us</w>\": 718,\n  \"usa\": 9491,\n  \"usa</w>\": 2547,\n  \"usability</w>\": 46736,\n  \"usable</w>\": 22890,\n  \"usaf</w>\": 25017,\n  \"usage</w>\": 19137,\n  \"usaid</w>\": 34507,\n  \"usair\": 36742,\n  \"usairforce</w>\": 42179,\n  \"usarmy</w>\": 19132,\n  \"usatoday</w>\": 40263,\n  \"usav\": 36056,\n  \"usb</w>\": 10281,\n  \"usc\": 13346,\n  \"usc</w>\": 14995,\n  \"uscg</w>\": 43932,\n  \"usd</w>\": 7485,\n  \"usda</w>\": 25829,\n  \"use\": 4419,\n  \"use</w>\": 1483,\n  \"used\": 32289,\n  \"used</w>\": 2026,\n  \"useful</w>\": 9784,\n  \"useless</w>\": 20154,\n  \"usemb\": 39700,\n  \"user\": 21248,\n  \"user</w>\": 7031,\n  \"username</w>\": 28162,\n  \"users</w>\": 7433,\n  \"uses</w>\": 5282,\n  \"useum</w>\": 45189,\n  \"usf\": 32385,\n  \"usf</w>\": 28942,\n  \"usgs</w>\": 35103,\n  \"ush\": 12001,\n  \"ush</w>\": 18335,\n  \"usher</w>\": 27411,\n  \"ushi</w>\": 47734,\n  \"usi</w>\": 25540,\n  \"usic\": 34909,\n  \"usic</w>\": 16753,\n  \"using</w>\": 1996,\n  \"usky</w>\": 45778,\n  \"usl</w>\": 42113,\n  \"usm</w>\": 40041,\n  \"usmc</w>\": 21678,\n  \"usmnt</w>\": 30662,\n  \"usn</w>\": 40579,\n  \"usnavy</w>\": 24500,\n  \"usnews</w>\": 43752,\n  \"uso</w>\": 21539,\n  \"usopen</w>\": 21782,\n  \"usp\": 26651,\n  \"usps</w>\": 39980,\n  \"usrc</w>\": 33274,\n  \"uss\": 11545,\n  \"uss</w>\": 9260,\n  \"ussia</w>\": 29553,\n  \"ussoccer</w>\": 42828,\n  \"ussr</w>\": 32697,\n  \"ust\": 35501,\n  \"ust</w>\": 24725,\n  \"usu\": 4254,\n  \"usu</w>\": 40434,\n  \"usual</w>\": 6129,\n  \"usually</w>\": 8296,\n  \"usur\": 45582,\n  \"uswnt</w>\": 35255,\n  \"ut\": 1419,\n  \"ut</w>\": 3641,\n  \"uta\": 42706,\n  \"uta</w>\": 25925,\n  \"utah\": 27474,\n  \"utah</w>\": 9312,\n  \"utc</w>\": 18196,\n  \"utd</w>\": 10493,\n  \"ute\": 16856,\n  \"ute</w>\": 3130,\n  \"uten\": 32089,\n  \"uter\": 39197,\n  \"utes</w>\": 2850,\n  \"uth\": 48819,\n  \"uth</w>\": 44750,\n  \"uti</w>\": 24568,\n  \"util\": 28824,\n  \"utili\": 17015,\n  \"utilities</w>\": 27210,\n  \"utility</w>\": 14941,\n  \"utilize</w>\": 36861,\n  \"utilized</w>\": 47604,\n  \"utilizing</w>\": 40212,\n  \"utm</w>\": 47853,\n  \"utmost</w>\": 42352,\n  \"uto\": 18866,\n  \"uto</w>\": 13683,\n  \"utopia</w>\": 34433,\n  \"utpol</w>\": 42605,\n  \"utr\": 48726,\n  \"utrecht</w>\": 37216,\n  \"uts</w>\": 11740,\n  \"utsa</w>\": 37528,\n  \"utt\": 17096,\n  \"uttar</w>\": 40168,\n  \"uttarak\": 33755,\n  \"uttarakhand</w>\": 35655,\n  \"utter\": 18769,\n  \"utter</w>\": 24558,\n  \"utterly</w>\": 21353,\n  \"utto</w>\": 42183,\n  \"utv</w>\": 36351,\n  \"utz</w>\": 45320,\n  \"uu\": 5702,\n  \"uu</w>\": 14553,\n  \"uuu\": 44355,\n  \"uuu</w>\": 27656,\n  \"uuuu\": 16720,\n  \"uuuu</w>\": 40797,\n  \"uv\": 23777,\n  \"uv</w>\": 15977,\n  \"uva</w>\": 23908,\n  \"uw\": 13933,\n  \"uw</w>\": 19166,\n  \"uwe</w>\": 48785,\n  \"uwu</w>\": 35544,\n  \"ux\": 9251,\n  \"ux</w>\": 6213,\n  \"uy\": 31929,\n  \"uy</w>\": 48113,\n  \"uz\": 19398,\n  \"uz</w>\": 36991,\n  \"uzbe\": 43007,\n  \"uzbekistan</w>\": 45024,\n  \"uzzi</w>\": 48210,\n  \"v\": 85,\n  \"v</w>\": 341,\n  \"va\": 4648,\n  \"va</w>\": 1892,\n  \"vaa</w>\": 37488,\n  \"vable</w>\": 23088,\n  \"vac\": 3125,\n  \"vac</w>\": 34085,\n  \"vaca</w>\": 48215,\n  \"vacancies</w>\": 26333,\n  \"vacancy</w>\": 21247,\n  \"vacant</w>\": 25262,\n  \"vacation\": 28336,\n  \"vacation</w>\": 6561,\n  \"vacations</w>\": 29002,\n  \"vacay</w>\": 44716,\n  \"vacc\": 13342,\n  \"vaccin\": 19164,\n  \"vaccinated</w>\": 48134,\n  \"vaccination</w>\": 32518,\n  \"vaccine\": 47780,\n  \"vaccine</w>\": 17493,\n  \"vaccines</w>\": 25860,\n  \"vach\": 46211,\n  \"vacu\": 16058,\n  \"vacuum</w>\": 18420,\n  \"vad\": 11880,\n  \"vada</w>\": 46759,\n  \"vader</w>\": 21908,\n  \"vae</w>\": 39384,\n  \"vag\": 13015,\n  \"vague</w>\": 42154,\n  \"vah</w>\": 26921,\n  \"vai\": 26893,\n  \"vai</w>\": 36802,\n  \"vail</w>\": 21189,\n  \"vain</w>\": 25538,\n  \"vais</w>\": 28719,\n  \"vaj\": 34206,\n  \"vak\": 16288,\n  \"vak</w>\": 41597,\n  \"val\": 1214,\n  \"val</w>\": 1560,\n  \"vala</w>\": 48525,\n  \"valdez</w>\": 40617,\n  \"vale\": 35554,\n  \"vale</w>\": 10820,\n  \"valedic\": 43525,\n  \"valen\": 12630,\n  \"valence</w>\": 30225,\n  \"valenci\": 34183,\n  \"valencia</w>\": 16559,\n  \"valent\": 3655,\n  \"valent</w>\": 15300,\n  \"valentin</w>\": 48631,\n  \"valentina</w>\": 43741,\n  \"valentine\": 11208,\n  \"valentine</w>\": 5876,\n  \"valentines</w>\": 10259,\n  \"valentinesday</w>\": 12369,\n  \"valentino</w>\": 29624,\n  \"valeri\": 31951,\n  \"valerie</w>\": 25592,\n  \"valet</w>\": 45749,\n  \"vali\": 8230,\n  \"valiant</w>\": 33804,\n  \"valid</w>\": 15126,\n  \"validation</w>\": 32536,\n  \"valkyrie</w>\": 42326,\n  \"vall\": 23523,\n  \"vall</w>\": 35295,\n  \"vallarta</w>\": 47874,\n  \"valle\": 24857,\n  \"valle</w>\": 29105,\n  \"valley\": 18354,\n  \"valley</w>\": 3136,\n  \"valleys</w>\": 28649,\n  \"valor</w>\": 30930,\n  \"vals</w>\": 7431,\n  \"valu\": 6291,\n  \"valuable</w>\": 10056,\n  \"valuation</w>\": 25894,\n  \"value\": 41358,\n  \"value</w>\": 4602,\n  \"valued</w>\": 17801,\n  \"values</w>\": 8857,\n  \"valve</w>\": 17001,\n  \"valves</w>\": 33517,\n  \"vam\": 9983,\n  \"vamo\": 46718,\n  \"vamos</w>\": 30346,\n  \"vamp\": 10680,\n  \"vampi\": 47017,\n  \"vampire\": 47576,\n  \"vampire</w>\": 13220,\n  \"vampires</w>\": 30868,\n  \"vamps</w>\": 44810,\n  \"van\": 2446,\n  \"van</w>\": 2451,\n  \"vana</w>\": 20543,\n  \"vanc\": 6320,\n  \"vance</w>\": 31447,\n  \"vancou\": 6750,\n  \"vancouver\": 31904,\n  \"vancouver</w>\": 7208,\n  \"vand\": 11691,\n  \"vandalism</w>\": 45664,\n  \"vander\": 16264,\n  \"vanderbilt</w>\": 33524,\n  \"vandy\": 39268,\n  \"vane</w>\": 43828,\n  \"vaness\": 13328,\n  \"vanessa</w>\": 16836,\n  \"vangogh</w>\": 47849,\n  \"vanguard</w>\": 27916,\n  \"vani\": 15396,\n  \"vani</w>\": 26459,\n  \"vania</w>\": 10998,\n  \"vanilla</w>\": 11974,\n  \"vanished</w>\": 43783,\n  \"vanishing</w>\": 48296,\n  \"vanity\": 48353,\n  \"vanity</w>\": 22938,\n  \"vans</w>\": 11711,\n  \"vant\": 26298,\n  \"vantage</w>\": 31749,\n  \"vanu\": 42892,\n  \"vanuatu</w>\": 48766,\n  \"vap\": 10462,\n  \"vape\": 25423,\n  \"vape</w>\": 20219,\n  \"vaping</w>\": 29403,\n  \"vapor\": 37167,\n  \"vapor</w>\": 30729,\n  \"vapori\": 46183,\n  \"var\": 3187,\n  \"var</w>\": 12998,\n  \"vara</w>\": 47492,\n  \"varan\": 36585,\n  \"varanasi</w>\": 39364,\n  \"vard\": 21866,\n  \"vard</w>\": 8773,\n  \"vardy</w>\": 47371,\n  \"vare\": 38159,\n  \"vares</w>\": 42895,\n  \"vargas</w>\": 32752,\n  \"vari\": 3354,\n  \"variable</w>\": 26416,\n  \"varian</w>\": 34334,\n  \"variant</w>\": 20293,\n  \"variants</w>\": 38312,\n  \"variation</w>\": 26420,\n  \"variations</w>\": 29025,\n  \"varied</w>\": 32334,\n  \"varies</w>\": 32543,\n  \"varieties</w>\": 23805,\n  \"variety</w>\": 8396,\n  \"various</w>\": 7395,\n  \"varsity\": 43716,\n  \"varsity</w>\": 8574,\n  \"varun\": 48120,\n  \"varun</w>\": 22069,\n  \"vary</w>\": 18855,\n  \"varying</w>\": 36456,\n  \"vas\": 5669,\n  \"vas</w>\": 5995,\n  \"vasc</w>\": 40995,\n  \"vascular</w>\": 19218,\n  \"vase</w>\": 20431,\n  \"vasi\": 49092,\n  \"vast\": 24413,\n  \"vast</w>\": 16414,\n  \"vastly</w>\": 48257,\n  \"vat\": 11588,\n  \"vat</w>\": 18363,\n  \"vatican</w>\": 21030,\n  \"vation</w>\": 37884,\n  \"vau\": 6391,\n  \"vaugh\": 25158,\n  \"vaughan</w>\": 21392,\n  \"vaughn</w>\": 29013,\n  \"vaul\": 27469,\n  \"vault</w>\": 15240,\n  \"vaus</w>\": 40217,\n  \"vaux\": 27403,\n  \"vauxhall</w>\": 29173,\n  \"vaw</w>\": 47952,\n  \"vay\": 48000,\n  \"vaz\": 38142,\n  \"vb\": 29365,\n  \"vb</w>\": 8778,\n  \"vball</w>\": 38329,\n  \"vc\": 28670,\n  \"vc</w>\": 7952,\n  \"vcs</w>\": 43528,\n  \"vcu</w>\": 40102,\n  \"vd</w>\": 9515,\n  \"vday</w>\": 42055,\n  \"ve\": 673,\n  \"ve</w>\": 563,\n  \"vea</w>\": 43798,\n  \"veal</w>\": 36616,\n  \"veau</w>\": 24419,\n  \"vec\": 19912,\n  \"vector\": 40453,\n  \"vector</w>\": 21533,\n  \"ved\": 19515,\n  \"ved</w>\": 1102,\n  \"veda</w>\": 44401,\n  \"vedere</w>\": 45660,\n  \"vedi</w>\": 47971,\n  \"vee\": 35708,\n  \"vee</w>\": 17073,\n  \"veen</w>\": 22432,\n  \"veer\": 21243,\n  \"veer</w>\": 22058,\n  \"veg\": 9048,\n  \"veg</w>\": 16460,\n  \"vega</w>\": 22930,\n  \"vegan\": 15705,\n  \"vegan</w>\": 5615,\n  \"vegans</w>\": 48514,\n  \"vegas\": 20288,\n  \"vegas</w>\": 4413,\n  \"vege\": 6219,\n  \"vegetable</w>\": 15725,\n  \"vegetables</w>\": 14119,\n  \"vegetarian</w>\": 14600,\n  \"vegetation</w>\": 33947,\n  \"veggie</w>\": 19401,\n  \"veggies</w>\": 16767,\n  \"vehic\": 3973,\n  \"vehicle</w>\": 5299,\n  \"vehicles</w>\": 8361,\n  \"veil</w>\": 23516,\n  \"vein</w>\": 29169,\n  \"veins</w>\": 28867,\n  \"veit</w>\": 30620,\n  \"vel\": 942,\n  \"vel</w>\": 1287,\n  \"vela</w>\": 34898,\n  \"veld</w>\": 34011,\n  \"veled</w>\": 15370,\n  \"veli</w>\": 49166,\n  \"veling</w>\": 37970,\n  \"vell\": 21173,\n  \"vell</w>\": 32997,\n  \"velo\": 14357,\n  \"velo</w>\": 33850,\n  \"velocity</w>\": 23811,\n  \"vels</w>\": 5109,\n  \"velve\": 37849,\n  \"velvet</w>\": 11063,\n  \"vely</w>\": 1708,\n  \"vember</w>\": 3477,\n  \"vement</w>\": 3129,\n  \"vements</w>\": 11104,\n  \"ven\": 1240,\n  \"ven</w>\": 1638,\n  \"vena</w>\": 47442,\n  \"vend\": 10851,\n  \"vending</w>\": 29202,\n  \"vendor</w>\": 21261,\n  \"vendors</w>\": 20353,\n  \"vene\": 5365,\n  \"veness</w>\": 10516,\n  \"venetian</w>\": 34336,\n  \"venezia</w>\": 34139,\n  \"venezu\": 10939,\n  \"venezuela</w>\": 12839,\n  \"venezuelan</w>\": 34699,\n  \"veng</w>\": 31526,\n  \"venge\": 27757,\n  \"vengeance</w>\": 32057,\n  \"veni</w>\": 31142,\n  \"venice</w>\": 11010,\n  \"vening</w>\": 47532,\n  \"venison</w>\": 40037,\n  \"venom\": 42491,\n  \"venom</w>\": 21588,\n  \"vens</w>\": 20884,\n  \"vent\": 4373,\n  \"vent</w>\": 5687,\n  \"ventil\": 39522,\n  \"ventilation</w>\": 35066,\n  \"venting</w>\": 15731,\n  \"vention</w>\": 4122,\n  \"vents</w>\": 12833,\n  \"ventu\": 48217,\n  \"ventura</w>\": 20921,\n  \"venture\": 37046,\n  \"venture</w>\": 12543,\n  \"ventures</w>\": 20829,\n  \"venue</w>\": 5097,\n  \"venues</w>\": 18120,\n  \"venus</w>\": 14691,\n  \"ver\": 624,\n  \"ver</w>\": 667,\n  \"vera</w>\": 13350,\n  \"verage</w>\": 3725,\n  \"verb</w>\": 34952,\n  \"verbal</w>\": 26522,\n  \"verbally</w>\": 39985,\n  \"verbs</w>\": 45687,\n  \"verde</w>\": 16935,\n  \"verdi</w>\": 42306,\n  \"verdict</w>\": 18030,\n  \"vere\": 11135,\n  \"vere</w>\": 34707,\n  \"vered</w>\": 2868,\n  \"verge</w>\": 23913,\n  \"veri\": 11638,\n  \"verification</w>\": 33521,\n  \"verified</w>\": 22555,\n  \"verify</w>\": 34722,\n  \"vering</w>\": 4630,\n  \"veriz\": 19707,\n  \"verizon</w>\": 21532,\n  \"verma</w>\": 41261,\n  \"vermont</w>\": 19241,\n  \"vern\": 2214,\n  \"vern</w>\": 12586,\n  \"verne</w>\": 45553,\n  \"vernon</w>\": 18348,\n  \"vero\": 45217,\n  \"vero</w>\": 38208,\n  \"verona</w>\": 31819,\n  \"veronic\": 39551,\n  \"veronica</w>\": 24039,\n  \"vers\": 1219,\n  \"vers</w>\": 2094,\n  \"versa</w>\": 35765,\n  \"versace</w>\": 25422,\n  \"versail\": 29857,\n  \"versailles</w>\": 32129,\n  \"versary</w>\": 2940,\n  \"versatile</w>\": 18110,\n  \"versatility</w>\": 41340,\n  \"verse\": 39466,\n  \"verse</w>\": 3131,\n  \"verses</w>\": 30769,\n  \"versi\": 8934,\n  \"version</w>\": 3273,\n  \"versions</w>\": 16190,\n  \"versity</w>\": 1906,\n  \"verst\": 42484,\n  \"verstappen</w>\": 45064,\n  \"versus</w>\": 14548,\n  \"versy</w>\": 18522,\n  \"vert</w>\": 11742,\n  \"verte\": 35158,\n  \"verted</w>\": 48173,\n  \"verti\": 30459,\n  \"vertical</w>\": 14293,\n  \"vertigo</w>\": 42477,\n  \"verton</w>\": 40632,\n  \"verts</w>\": 37265,\n  \"very\": 11698,\n  \"very</w>\": 1070,\n  \"veryday</w>\": 37944,\n  \"verything</w>\": 45174,\n  \"ves\": 9616,\n  \"ves</w>\": 1003,\n  \"vesmatter</w>\": 47636,\n  \"vespa</w>\": 46029,\n  \"vessel</w>\": 16387,\n  \"vessels</w>\": 22822,\n  \"vest\": 31657,\n  \"vest</w>\": 12473,\n  \"vesti\": 40349,\n  \"vests</w>\": 41906,\n  \"vet\": 12294,\n  \"vet</w>\": 5951,\n  \"veter\": 4330,\n  \"veteran\": 20797,\n  \"veteran</w>\": 8814,\n  \"veterans</w>\": 7092,\n  \"veteransday</w>\": 26409,\n  \"veterin\": 43959,\n  \"veterinary</w>\": 25458,\n  \"veto</w>\": 36570,\n  \"vets</w>\": 13113,\n  \"vette</w>\": 17045,\n  \"vettel</w>\": 28700,\n  \"vevo</w>\": 35141,\n  \"vex\": 36187,\n  \"vex</w>\": 43978,\n  \"vey\": 34792,\n  \"vey</w>\": 3884,\n  \"vez\": 35987,\n  \"vez</w>\": 17226,\n  \"vf</w>\": 25966,\n  \"vfl</w>\": 33726,\n  \"vfx</w>\": 30149,\n  \"vg\": 40591,\n  \"vg</w>\": 22346,\n  \"vh\": 46953,\n  \"vh</w>\": 23847,\n  \"vhs</w>\": 21932,\n  \"vi\": 603,\n  \"vi</w>\": 4259,\n  \"via</w>\": 1048,\n  \"viable</w>\": 25752,\n  \"viadu\": 37012,\n  \"viaduct</w>\": 39113,\n  \"vial</w>\": 39951,\n  \"vian\": 40487,\n  \"vian</w>\": 16124,\n  \"vibe\": 37974,\n  \"vibe</w>\": 12813,\n  \"vibes</w>\": 7764,\n  \"vibr\": 9527,\n  \"vibrant</w>\": 14270,\n  \"vibration</w>\": 37456,\n  \"vibrations</w>\": 43660,\n  \"vic\": 1555,\n  \"vic</w>\": 4412,\n  \"vica</w>\": 46168,\n  \"vicar</w>\": 43899,\n  \"vice\": 43572,\n  \"vice</w>\": 6931,\n  \"vicente</w>\": 39411,\n  \"vices</w>\": 8332,\n  \"vich</w>\": 24143,\n  \"vici\": 46670,\n  \"vicious</w>\": 25177,\n  \"vick\": 15116,\n  \"vick</w>\": 29704,\n  \"vickers</w>\": 48452,\n  \"vicki</w>\": 34927,\n  \"vicky\": 37176,\n  \"vicky</w>\": 25788,\n  \"victi\": 6861,\n  \"victim</w>\": 9133,\n  \"victims</w>\": 7131,\n  \"victor\": 2423,\n  \"victor</w>\": 10690,\n  \"victori\": 17555,\n  \"victoria\": 39286,\n  \"victoria</w>\": 6127,\n  \"victorian</w>\": 12350,\n  \"victorias\": 47791,\n  \"victories</w>\": 24577,\n  \"victorious</w>\": 24033,\n  \"victory\": 36668,\n  \"victory</w>\": 4127,\n  \"vid\": 17233,\n  \"vid</w>\": 9284,\n  \"vida</w>\": 19015,\n  \"vidal</w>\": 36678,\n  \"vide\": 1334,\n  \"vide</w>\": 45244,\n  \"video\": 9478,\n  \"video</w>\": 1455,\n  \"videogame</w>\": 35097,\n  \"videogames</w>\": 21149,\n  \"videos</w>\": 6081,\n  \"vids</w>\": 23035,\n  \"vidy\": 29639,\n  \"vidya</w>\": 45264,\n  \"vie\": 922,\n  \"vie</w>\": 8538,\n  \"vien\": 36493,\n  \"vienna</w>\": 12670,\n  \"vier\": 15352,\n  \"vier</w>\": 11987,\n  \"viera</w>\": 21114,\n  \"viernes</w>\": 33826,\n  \"vies</w>\": 22458,\n  \"viest</w>\": 31979,\n  \"viet\": 17558,\n  \"viet</w>\": 13128,\n  \"vietnam\": 19558,\n  \"vietnam</w>\": 8623,\n  \"vietnamese</w>\": 22382,\n  \"view\": 12004,\n  \"view</w>\": 1093,\n  \"viewed</w>\": 7226,\n  \"viewer</w>\": 15061,\n  \"viewers</w>\": 14275,\n  \"viewing</w>\": 7124,\n  \"viewpoint</w>\": 41604,\n  \"views</w>\": 2758,\n  \"vig\": 8549,\n  \"vig</w>\": 45083,\n  \"vigil\": 21538,\n  \"vigil</w>\": 19896,\n  \"vigilant</w>\": 43026,\n  \"vigne\": 40447,\n  \"vigne</w>\": 34581,\n  \"vigo</w>\": 44097,\n  \"vigor\": 26781,\n  \"vii</w>\": 17759,\n  \"viii</w>\": 20414,\n  \"vijay\": 12014,\n  \"vijay</w>\": 10823,\n  \"vijaysethu\": 47966,\n  \"vik\": 10764,\n  \"vik</w>\": 17181,\n  \"vika</w>\": 39562,\n  \"vikas</w>\": 37116,\n  \"viking\": 26663,\n  \"viking</w>\": 15897,\n  \"vikings</w>\": 11713,\n  \"vikram\": 41136,\n  \"vikram</w>\": 24314,\n  \"viktor</w>\": 36101,\n  \"vil\": 1338,\n  \"vil</w>\": 3000,\n  \"vila</w>\": 37505,\n  \"vile</w>\": 27247,\n  \"vill\": 10481,\n  \"vill</w>\": 45698,\n  \"villa\": 3203,\n  \"villa</w>\": 7754,\n  \"village\": 34584,\n  \"village</w>\": 4331,\n  \"villagers</w>\": 34283,\n  \"villages</w>\": 17621,\n  \"villain</w>\": 15425,\n  \"villains</w>\": 25271,\n  \"villanova</w>\": 44025,\n  \"villar\": 35164,\n  \"villas</w>\": 28907,\n  \"ville\": 11110,\n  \"ville</w>\": 1930,\n  \"villen\": 46177,\n  \"villi\": 36907,\n  \"vimeo</w>\": 48720,\n  \"vin\": 1379,\n  \"vin</w>\": 2558,\n  \"vina</w>\": 35682,\n  \"vinai\": 37396,\n  \"vinaigrette</w>\": 39876,\n  \"vinay\": 43952,\n  \"vince\": 32429,\n  \"vince</w>\": 6236,\n  \"vincen\": 33402,\n  \"vincent\": 29069,\n  \"vincent</w>\": 10357,\n  \"vinci</w>\": 30199,\n  \"vind</w>\": 20275,\n  \"vindic\": 39582,\n  \"vine\": 8471,\n  \"vine</w>\": 7721,\n  \"vinegar</w>\": 23834,\n  \"vines</w>\": 21268,\n  \"vineyard</w>\": 16527,\n  \"vineyards</w>\": 23082,\n  \"ving\": 5375,\n  \"ving</w>\": 903,\n  \"vingne</w>\": 42579,\n  \"vings</w>\": 22510,\n  \"vini</w>\": 48119,\n  \"vinnie</w>\": 40885,\n  \"vinny</w>\": 36794,\n  \"vino</w>\": 14509,\n  \"vinod</w>\": 43348,\n  \"vins</w>\": 34820,\n  \"vinson</w>\": 45945,\n  \"vintag\": 10936,\n  \"vintage\": 13654,\n  \"vintage</w>\": 3266,\n  \"viny\": 40990,\n  \"vinyl\": 22835,\n  \"vinyl</w>\": 5754,\n  \"vio\": 11913,\n  \"vio</w>\": 20324,\n  \"viol\": 3164,\n  \"viola</w>\": 27438,\n  \"violate</w>\": 44875,\n  \"violated</w>\": 38192,\n  \"violating</w>\": 37554,\n  \"violation</w>\": 22919,\n  \"violations</w>\": 21969,\n  \"violence</w>\": 5450,\n  \"violent</w>\": 11565,\n  \"violently</w>\": 47758,\n  \"violet</w>\": 16118,\n  \"violets</w>\": 42861,\n  \"violin</w>\": 17058,\n  \"violinist</w>\": 36299,\n  \"vion</w>\": 35496,\n  \"vious</w>\": 6418,\n  \"viously</w>\": 7149,\n  \"vip\": 45714,\n  \"vip</w>\": 7111,\n  \"viper</w>\": 27401,\n  \"vips</w>\": 41149,\n  \"vir\": 1790,\n  \"vir</w>\": 25319,\n  \"vira</w>\": 35910,\n  \"viral</w>\": 11653,\n  \"virat</w>\": 32473,\n  \"virgil</w>\": 39076,\n  \"virgin\": 5651,\n  \"virgin</w>\": 12103,\n  \"virgini\": 43426,\n  \"virginia</w>\": 6728,\n  \"virgo</w>\": 39978,\n  \"viro\": 32301,\n  \"viron\": 38309,\n  \"virtu\": 7977,\n  \"virtual\": 18059,\n  \"virtual</w>\": 7790,\n  \"virtually</w>\": 22475,\n  \"virtualreality</w>\": 32608,\n  \"virtue</w>\": 26860,\n  \"virtues</w>\": 42167,\n  \"virtuoso</w>\": 47027,\n  \"virus</w>\": 11808,\n  \"viruses</w>\": 34830,\n  \"vis\": 1301,\n  \"vis</w>\": 5337,\n  \"visa</w>\": 12802,\n  \"visas</w>\": 41228,\n  \"vise</w>\": 24977,\n  \"vised</w>\": 14810,\n  \"vish\": 12024,\n  \"vish</w>\": 29124,\n  \"vishal</w>\": 33648,\n  \"vishnu</w>\": 37816,\n  \"visi\": 1409,\n  \"visibility</w>\": 15921,\n  \"visible\": 36658,\n  \"visible</w>\": 8626,\n  \"vising</w>\": 37439,\n  \"vision\": 11147,\n  \"vision</w>\": 2515,\n  \"visional</w>\": 24627,\n  \"visionary</w>\": 22959,\n  \"visions</w>\": 13804,\n  \"visit\": 3388,\n  \"visit</w>\": 1600,\n  \"visitation</w>\": 44370,\n  \"visited</w>\": 5580,\n  \"visiting</w>\": 4680,\n  \"visitor</w>\": 13881,\n  \"visitors</w>\": 9160,\n  \"visits</w>\": 8489,\n  \"visitscotland</w>\": 28760,\n  \"visitspain</w>\": 48860,\n  \"vism</w>\": 15514,\n  \"viso</w>\": 46732,\n  \"visor</w>\": 24217,\n  \"vist</w>\": 21436,\n  \"vista</w>\": 13865,\n  \"visu\": 7739,\n  \"visual\": 17004,\n  \"visual</w>\": 7195,\n  \"visualization</w>\": 28500,\n  \"visualize</w>\": 45057,\n  \"visually</w>\": 25743,\n  \"visuals</w>\": 21315,\n  \"viswas\": 36513,\n  \"viswasam</w>\": 47664,\n  \"vit\": 4056,\n  \"vit</w>\": 35580,\n  \"vita</w>\": 15700,\n  \"vital\": 32525,\n  \"vital</w>\": 10585,\n  \"vitality</w>\": 36385,\n  \"vitam\": 9856,\n  \"vitamin</w>\": 13675,\n  \"vitamins</w>\": 22582,\n  \"vito</w>\": 36725,\n  \"vity</w>\": 4893,\n  \"vitz</w>\": 26188,\n  \"vius</w>\": 41571,\n  \"viv\": 21827,\n  \"viv</w>\": 35363,\n  \"viva</w>\": 17399,\n  \"vival\": 35920,\n  \"vive\": 18980,\n  \"vive</w>\": 24004,\n  \"vivek</w>\": 36243,\n  \"vivi\": 11625,\n  \"vivian</w>\": 30129,\n  \"vivid</w>\": 22984,\n  \"vivo\": 28091,\n  \"vivo</w>\": 25888,\n  \"vix\": 28976,\n  \"vix</w>\": 34811,\n  \"vixen</w>\": 38757,\n  \"vixx</w>\": 32106,\n  \"viz\": 28251,\n  \"viz</w>\": 31786,\n  \"vj\": 45439,\n  \"vj</w>\": 30827,\n  \"vk</w>\": 41893,\n  \"vl\": 37580,\n  \"vl</w>\": 36442,\n  \"vla\": 23686,\n  \"vlad</w>\": 41089,\n  \"vladi\": 19320,\n  \"vladimir</w>\": 21702,\n  \"vlive</w>\": 46797,\n  \"vlog</w>\": 18894,\n  \"vm\": 16204,\n  \"vm</w>\": 20269,\n  \"vma</w>\": 35666,\n  \"vmas</w>\": 30236,\n  \"vmware</w>\": 29615,\n  \"vn\": 47098,\n  \"vn</w>\": 25076,\n  \"vo\": 947,\n  \"vo</w>\": 3951,\n  \"voc\": 4105,\n  \"voc</w>\": 20855,\n  \"vocab\": 21346,\n  \"vocabulary</w>\": 23804,\n  \"vocal\": 34037,\n  \"vocal</w>\": 13147,\n  \"vocali\": 19134,\n  \"vocalist</w>\": 22102,\n  \"vocals</w>\": 17666,\n  \"vocation</w>\": 20521,\n  \"vocational</w>\": 33751,\n  \"vod\": 11820,\n  \"vod</w>\": 35854,\n  \"vodaf\": 28436,\n  \"vodafone</w>\": 38695,\n  \"vodka</w>\": 13646,\n  \"vogel</w>\": 44960,\n  \"vogue\": 24418,\n  \"vogue</w>\": 13178,\n  \"voic\": 29185,\n  \"voice\": 13179,\n  \"voice</w>\": 3386,\n  \"voiced</w>\": 34352,\n  \"voiceof\": 44966,\n  \"voiceover</w>\": 41979,\n  \"voices</w>\": 9144,\n  \"void</w>\": 21561,\n  \"voip</w>\": 42762,\n  \"voir</w>\": 16036,\n  \"vol\": 1343,\n  \"vol</w>\": 7945,\n  \"volatile</w>\": 41022,\n  \"volatility</w>\": 32355,\n  \"volcan\": 9916,\n  \"volcanic</w>\": 24072,\n  \"volcano</w>\": 14581,\n  \"volcanoes</w>\": 38055,\n  \"voli</w>\": 40138,\n  \"volk\": 13432,\n  \"volkswag\": 14407,\n  \"volkswagen</w>\": 15342,\n  \"volley\": 7130,\n  \"volley</w>\": 34656,\n  \"volleyball</w>\": 7458,\n  \"volo</w>\": 44791,\n  \"vols</w>\": 20404,\n  \"volt</w>\": 26430,\n  \"volta\": 29879,\n  \"volta</w>\": 33480,\n  \"voltage</w>\": 23118,\n  \"voltron</w>\": 39314,\n  \"volu\": 3563,\n  \"volume</w>\": 8284,\n  \"volumes</w>\": 22651,\n  \"volun\": 3356,\n  \"voluntar\": 48823,\n  \"voluntary</w>\": 23815,\n  \"volunte\": 3556,\n  \"volunteer\": 32331,\n  \"volunteer</w>\": 7114,\n  \"volunteered</w>\": 34000,\n  \"volunteering</w>\": 14902,\n  \"volunteers</w>\": 5939,\n  \"volution</w>\": 24043,\n  \"volved</w>\": 42888,\n  \"volvo\": 39991,\n  \"volvo</w>\": 16906,\n  \"vom\": 24198,\n  \"vomit</w>\": 46485,\n  \"von\": 11269,\n  \"von</w>\": 8497,\n  \"voo\": 19497,\n  \"voodoo</w>\": 26869,\n  \"voor\": 34291,\n  \"voor</w>\": 34464,\n  \"vor\": 8338,\n  \"vor</w>\": 5308,\n  \"vore</w>\": 18215,\n  \"vortex</w>\": 30071,\n  \"vos</w>\": 16863,\n  \"vot</w>\": 48558,\n  \"vote\": 6830,\n  \"vote</w>\": 2187,\n  \"voted</w>\": 6454,\n  \"votel\": 41379,\n  \"voter\": 44474,\n  \"voter</w>\": 14065,\n  \"voters</w>\": 8925,\n  \"votes</w>\": 6693,\n  \"voting</w>\": 5756,\n  \"vou\": 11045,\n  \"voucher</w>\": 18190,\n  \"vouchers</w>\": 23384,\n  \"vous</w>\": 10636,\n  \"vow</w>\": 34787,\n  \"vows</w>\": 21677,\n  \"vox\": 29215,\n  \"vox</w>\": 22692,\n  \"voy\": 10622,\n  \"voy</w>\": 15021,\n  \"voyage</w>\": 16299,\n  \"voyager</w>\": 29669,\n  \"vp\": 32758,\n  \"vp</w>\": 3896,\n  \"vpn</w>\": 38212,\n  \"vr\": 16840,\n  \"vr</w>\": 5921,\n  \"vre\": 44500,\n  \"vre</w>\": 17501,\n  \"vs\": 11385,\n  \"vs</w>\": 1547,\n  \"vsco\": 26752,\n  \"vsco</w>\": 32822,\n  \"vscocam</w>\": 34694,\n  \"vsky</w>\": 37791,\n  \"vss</w>\": 31919,\n  \"vt\": 31732,\n  \"vt</w>\": 10291,\n  \"vu\": 8664,\n  \"vu</w>\": 13230,\n  \"vue\": 43915,\n  \"vue</w>\": 19313,\n  \"vuel\": 31312,\n  \"vuelta</w>\": 43856,\n  \"vuitton</w>\": 26705,\n  \"vul\": 6856,\n  \"vulcan</w>\": 34767,\n  \"vulner\": 11213,\n  \"vulnerability</w>\": 28797,\n  \"vulnerable</w>\": 14332,\n  \"vulture</w>\": 34593,\n  \"vultures</w>\": 47197,\n  \"vv\": 19264,\n  \"vv</w>\": 35686,\n  \"vw\": 28650,\n  \"vw</w>\": 13250,\n  \"vx</w>\": 47644,\n  \"vy\": 11566,\n  \"vy</w>\": 5157,\n  \"w\": 86,\n  \"w</w>\": 342,\n  \"wa\": 869,\n  \"wa</w>\": 2663,\n  \"waa</w>\": 35874,\n  \"wab\": 19893,\n  \"wab</w>\": 36852,\n  \"wac\": 27445,\n  \"wac</w>\": 37947,\n  \"wack\": 22880,\n  \"wack</w>\": 38270,\n  \"wacky</w>\": 34318,\n  \"waco</w>\": 36035,\n  \"wad\": 11133,\n  \"wad</w>\": 30451,\n  \"wada</w>\": 40006,\n  \"wade\": 40237,\n  \"wade</w>\": 14180,\n  \"wadi</w>\": 37253,\n  \"waf\": 17638,\n  \"wafc</w>\": 49086,\n  \"waff\": 13940,\n  \"waffle</w>\": 20375,\n  \"waffles</w>\": 24205,\n  \"wag\": 5764,\n  \"wag</w>\": 19177,\n  \"wage</w>\": 10716,\n  \"wager</w>\": 43430,\n  \"wages</w>\": 19114,\n  \"wagner</w>\": 18081,\n  \"wagon</w>\": 13260,\n  \"wagons</w>\": 47944,\n  \"wags</w>\": 48580,\n  \"wah\": 24812,\n  \"wah</w>\": 18014,\n  \"wahl\": 27500,\n  \"wahlberg</w>\": 35151,\n  \"wahoo</w>\": 47995,\n  \"wai\": 11469,\n  \"wai</w>\": 21569,\n  \"waifu</w>\": 46551,\n  \"waikiki</w>\": 44907,\n  \"wain\": 28358,\n  \"wain</w>\": 20120,\n  \"wainwright</w>\": 45878,\n  \"waist\": 36946,\n  \"waist</w>\": 18459,\n  \"wait\": 10021,\n  \"wait</w>\": 1885,\n  \"waite</w>\": 24272,\n  \"waited</w>\": 18492,\n  \"waiter</w>\": 32946,\n  \"waitin</w>\": 44482,\n  \"waiting</w>\": 2680,\n  \"waitress</w>\": 39760,\n  \"waitrose</w>\": 37164,\n  \"waits</w>\": 21361,\n  \"waiver</w>\": 42866,\n  \"waj</w>\": 49367,\n  \"wak\": 11172,\n  \"wak</w>\": 36015,\n  \"waka</w>\": 42696,\n  \"wake\": 10501,\n  \"wake</w>\": 5731,\n  \"wakefield</w>\": 26358,\n  \"wakes</w>\": 29108,\n  \"wakeup\": 26328,\n  \"wakeup</w>\": 35380,\n  \"wakeupamerica</w>\": 37474,\n  \"waking</w>\": 13025,\n  \"wal\": 1056,\n  \"wal</w>\": 6903,\n  \"wala</w>\": 16468,\n  \"walang</w>\": 49180,\n  \"walcott</w>\": 45744,\n  \"wald\": 46930,\n  \"wald</w>\": 15724,\n  \"walden</w>\": 39311,\n  \"waldo</w>\": 32440,\n  \"waldorf</w>\": 38227,\n  \"wale\": 41247,\n  \"wale</w>\": 20336,\n  \"wales\": 25383,\n  \"wales</w>\": 5110,\n  \"walgreens</w>\": 38490,\n  \"wali\": 37576,\n  \"wali</w>\": 14768,\n  \"walia</w>\": 44455,\n  \"walk\": 8588,\n  \"walk</w>\": 2374,\n  \"walkaway</w>\": 48255,\n  \"walked</w>\": 8667,\n  \"walker\": 24735,\n  \"walker</w>\": 6150,\n  \"walkers</w>\": 23366,\n  \"walkin</w>\": 45792,\n  \"walking\": 12644,\n  \"walking</w>\": 3941,\n  \"walkingdead</w>\": 14948,\n  \"walkout</w>\": 47470,\n  \"walks</w>\": 8192,\n  \"walkway</w>\": 36614,\n  \"wall\": 4316,\n  \"wall</w>\": 2569,\n  \"walla\": 26007,\n  \"walla</w>\": 39982,\n  \"wallabies</w>\": 48926,\n  \"wallace</w>\": 12535,\n  \"wallart</w>\": 36223,\n  \"walled</w>\": 36567,\n  \"waller</w>\": 45340,\n  \"wallet</w>\": 12154,\n  \"wallets</w>\": 38550,\n  \"walleye</w>\": 49099,\n  \"wallis</w>\": 42206,\n  \"wallpaper</w>\": 10560,\n  \"wallpapers</w>\": 29841,\n  \"walls</w>\": 8258,\n  \"wallstreet</w>\": 45341,\n  \"wally</w>\": 26024,\n  \"walmart</w>\": 11972,\n  \"walnut</w>\": 16310,\n  \"walnuts</w>\": 38294,\n  \"walsall</w>\": 42935,\n  \"walsh</w>\": 12856,\n  \"walt\": 23535,\n  \"walt</w>\": 14312,\n  \"waltdisneyworld</w>\": 36505,\n  \"walter\": 31156,\n  \"walter</w>\": 10645,\n  \"walters</w>\": 25532,\n  \"waltham\": 42742,\n  \"waltham</w>\": 45581,\n  \"walton</w>\": 19485,\n  \"waltz</w>\": 35982,\n  \"wam\": 20503,\n  \"wamy</w>\": 46970,\n  \"wan\": 2060,\n  \"wan</w>\": 4557,\n  \"wana</w>\": 30830,\n  \"wand\": 14636,\n  \"wand</w>\": 28559,\n  \"wanda</w>\": 25070,\n  \"wander\": 12985,\n  \"wander</w>\": 24473,\n  \"wandered</w>\": 46593,\n  \"wanderers</w>\": 27540,\n  \"wandering</w>\": 22597,\n  \"wanderlust</w>\": 16129,\n  \"wane</w>\": 27459,\n  \"wang\": 19731,\n  \"wang</w>\": 11900,\n  \"wani</w>\": 21674,\n  \"wankers</w>\": 42189,\n  \"wann\": 23622,\n  \"wanna\": 35940,\n  \"wanna</w>\": 3836,\n  \"wannabe</w>\": 40730,\n  \"wannaone</w>\": 44832,\n  \"want\": 18356,\n  \"want</w>\": 1280,\n  \"wanted</w>\": 3146,\n  \"wanting</w>\": 12801,\n  \"wants</w>\": 3107,\n  \"wap\": 27393,\n  \"wap</w>\": 30368,\n  \"waq\": 47512,\n  \"war\": 984,\n  \"war</w>\": 2238,\n  \"wara</w>\": 21631,\n  \"warbler</w>\": 33891,\n  \"warcraft</w>\": 13660,\n  \"ward\": 7728,\n  \"ward</w>\": 1460,\n  \"warden</w>\": 27798,\n  \"wardly</w>\": 30780,\n  \"wardro\": 14247,\n  \"wardrobe</w>\": 15020,\n  \"wards</w>\": 2593,\n  \"ware\": 7416,\n  \"ware</w>\": 4476,\n  \"wareagle</w>\": 35716,\n  \"warehouse</w>\": 13054,\n  \"wareness\": 41601,\n  \"wareness</w>\": 35870,\n  \"wares</w>\": 30692,\n  \"warfare</w>\": 15739,\n  \"warhammer</w>\": 26832,\n  \"warhol</w>\": 27554,\n  \"wari</w>\": 20977,\n  \"wark\": 46346,\n  \"wark</w>\": 15164,\n  \"warlock</w>\": 42455,\n  \"warm\": 14725,\n  \"warm</w>\": 3616,\n  \"warmed</w>\": 36695,\n  \"warmer</w>\": 14328,\n  \"warmest</w>\": 30910,\n  \"warming</w>\": 8606,\n  \"warmly</w>\": 45322,\n  \"warmongers</w>\": 33205,\n  \"warms</w>\": 32917,\n  \"warmth</w>\": 19636,\n  \"warmup</w>\": 29904,\n  \"warmups</w>\": 44094,\n  \"warn</w>\": 19360,\n  \"warned</w>\": 16409,\n  \"warner\": 28564,\n  \"warner</w>\": 13402,\n  \"warning</w>\": 4994,\n  \"warnings</w>\": 18098,\n  \"warns</w>\": 14086,\n  \"waron\": 38947,\n  \"warp</w>\": 32411,\n  \"warped</w>\": 32125,\n  \"warran\": 17392,\n  \"warrant</w>\": 22554,\n  \"warrants</w>\": 45677,\n  \"warranty</w>\": 23999,\n  \"warren\": 23143,\n  \"warren</w>\": 9234,\n  \"warri\": 4109,\n  \"warrington</w>\": 31203,\n  \"warrior\": 18998,\n  \"warrior</w>\": 8148,\n  \"warriors</w>\": 6421,\n  \"wars</w>\": 3931,\n  \"warsaw</w>\": 21072,\n  \"warship</w>\": 47846,\n  \"wart\": 43535,\n  \"wart</w>\": 7346,\n  \"wartime</w>\": 42998,\n  \"warts</w>\": 21781,\n  \"warwick\": 23081,\n  \"warwick</w>\": 22215,\n  \"warwickshire</w>\": 36766,\n  \"wary</w>\": 36213,\n  \"was\": 3398,\n  \"was</w>\": 739,\n  \"wasabi</w>\": 47334,\n  \"wash\": 3363,\n  \"wash</w>\": 7810,\n  \"washed</w>\": 14092,\n  \"washer</w>\": 24085,\n  \"washes</w>\": 38950,\n  \"washing</w>\": 13029,\n  \"washington\": 16774,\n  \"washington</w>\": 4365,\n  \"washingtondc</w>\": 40225,\n  \"washingtonpost</w>\": 28426,\n  \"wasn</w>\": 5044,\n  \"wasnt</w>\": 29607,\n  \"wasp</w>\": 24889,\n  \"wasps</w>\": 35300,\n  \"wassup</w>\": 45708,\n  \"wast\": 28886,\n  \"waste\": 18157,\n  \"waste</w>\": 6065,\n  \"wasted</w>\": 18278,\n  \"wasteland</w>\": 44035,\n  \"wastewater</w>\": 34463,\n  \"wasting</w>\": 25577,\n  \"wat\": 800,\n  \"wat</w>\": 10621,\n  \"wata</w>\": 42509,\n  \"watch\": 7046,\n  \"watch</w>\": 1239,\n  \"watchdog</w>\": 35303,\n  \"watched</w>\": 5775,\n  \"watcher</w>\": 35971,\n  \"watchers</w>\": 28443,\n  \"watches</w>\": 9521,\n  \"watchin</w>\": 32432,\n  \"watching</w>\": 2113,\n  \"water\": 2505,\n  \"water</w>\": 1573,\n  \"watercolor</w>\": 14211,\n  \"watercolour</w>\": 18377,\n  \"waterfall</w>\": 16403,\n  \"waterfalls</w>\": 26692,\n  \"waterford</w>\": 24448,\n  \"waterfront</w>\": 16605,\n  \"waterhouse</w>\": 45072,\n  \"watering</w>\": 19871,\n  \"waterloo</w>\": 17465,\n  \"watermelon</w>\": 19889,\n  \"waterproof</w>\": 17613,\n  \"waters</w>\": 7753,\n  \"watershed</w>\": 33204,\n  \"waterstones</w>\": 45014,\n  \"waterways</w>\": 37395,\n  \"watford</w>\": 23162,\n  \"watfordfc</w>\": 37328,\n  \"wati</w>\": 27966,\n  \"watkins</w>\": 22539,\n  \"watson\": 35490,\n  \"watson</w>\": 9294,\n  \"watt\": 22899,\n  \"watt</w>\": 15805,\n  \"wattpad</w>\": 32351,\n  \"watts</w>\": 14750,\n  \"wau\": 9479,\n  \"wav\": 6054,\n  \"wave\": 17530,\n  \"wave</w>\": 4535,\n  \"waved</w>\": 44657,\n  \"waver\": 25997,\n  \"waves</w>\": 7882,\n  \"waving</w>\": 26545,\n  \"wavy</w>\": 31941,\n  \"waw\": 22039,\n  \"wawrinka</w>\": 48414,\n  \"wawx</w>\": 47387,\n  \"wax\": 18789,\n  \"wax</w>\": 11910,\n  \"waxing</w>\": 38781,\n  \"way\": 3079,\n  \"way</w>\": 923,\n  \"wayback\": 47822,\n  \"wayne\": 23632,\n  \"wayne</w>\": 7003,\n  \"ways</w>\": 1248,\n  \"waz\": 20889,\n  \"waz</w>\": 48835,\n  \"wb\": 10726,\n  \"wb</w>\": 12377,\n  \"wba</w>\": 22675,\n  \"wbb</w>\": 14482,\n  \"wbc</w>\": 26745,\n  \"wbo</w>\": 49053,\n  \"wbz</w>\": 35471,\n  \"wc\": 4842,\n  \"wc</w>\": 5755,\n  \"wcc\": 47166,\n  \"wcc</w>\": 34926,\n  \"wcpo</w>\": 46624,\n  \"wcs</w>\": 39916,\n  \"wcvb</w>\": 32709,\n  \"wcw</w>\": 9041,\n  \"wd\": 15998,\n  \"wd</w>\": 7494,\n  \"wdw</w>\": 40334,\n  \"we\": 598,\n  \"we</w>\": 649,\n  \"wea\": 37146,\n  \"wea</w>\": 47301,\n  \"weak\": 12128,\n  \"weak</w>\": 10128,\n  \"weaker</w>\": 39735,\n  \"weakness</w>\": 21448,\n  \"weaknesses</w>\": 43487,\n  \"weal\": 14759,\n  \"wealth\": 33150,\n  \"wealth</w>\": 7904,\n  \"wealthy</w>\": 22617,\n  \"weap\": 6156,\n  \"weapon\": 42612,\n  \"weapon</w>\": 10537,\n  \"weapons</w>\": 10007,\n  \"wear\": 12206,\n  \"wear</w>\": 2839,\n  \"wearab\": 22983,\n  \"wearable\": 44943,\n  \"wearable</w>\": 24973,\n  \"wearables</w>\": 30319,\n  \"weare\": 4264,\n  \"weare</w>\": 27867,\n  \"weareall\": 45980,\n  \"wearec\": 43620,\n  \"wearen\": 45635,\n  \"weareone\": 16149,\n  \"weareoneexo</w>\": 16448,\n  \"wearethe\": 40242,\n  \"wearing</w>\": 3309,\n  \"wears</w>\": 11869,\n  \"weary</w>\": 38766,\n  \"weasel</w>\": 44308,\n  \"weather\": 8808,\n  \"weather</w>\": 2237,\n  \"weathercee</w>\": 44980,\n  \"weatherchannel</w>\": 42138,\n  \"weav\": 22260,\n  \"weave</w>\": 22450,\n  \"weaver</w>\": 20297,\n  \"weaving</w>\": 27131,\n  \"web\": 2055,\n  \"web</w>\": 4601,\n  \"webb</w>\": 15708,\n  \"webber</w>\": 34248,\n  \"webcam\": 24211,\n  \"webcam</w>\": 22589,\n  \"webcamtoy</w>\": 27719,\n  \"webcast</w>\": 28256,\n  \"webcomic</w>\": 34286,\n  \"webcomics</w>\": 39811,\n  \"webdesign</w>\": 20470,\n  \"webdev</w>\": 37000,\n  \"webdevelopment</w>\": 47553,\n  \"weber</w>\": 20179,\n  \"webin\": 8460,\n  \"webinar</w>\": 8921,\n  \"webinars</w>\": 47755,\n  \"webpage</w>\": 46964,\n  \"webs</w>\": 32829,\n  \"webseries</w>\": 44819,\n  \"website</w>\": 3364,\n  \"websites</w>\": 19278,\n  \"webster</w>\": 19471,\n  \"websummit</w>\": 48069,\n  \"wec</w>\": 33152,\n  \"wechat</w>\": 46124,\n  \"wed\": 1687,\n  \"wed</w>\": 3478,\n  \"wedd\": 7576,\n  \"wedding\": 11204,\n  \"wedding</w>\": 3101,\n  \"weddings</w>\": 15964,\n  \"wedge</w>\": 21446,\n  \"wedges</w>\": 33179,\n  \"wedne\": 2380,\n  \"wednesday\": 9311,\n  \"wednesday</w>\": 2689,\n  \"wednesdaymotivation</w>\": 37860,\n  \"wednesdays</w>\": 24943,\n  \"wednesdaywisdom</w>\": 11445,\n  \"wedo</w>\": 43432,\n  \"weds</w>\": 19107,\n  \"wee\": 716,\n  \"wee</w>\": 8288,\n  \"weed\": 36935,\n  \"weed</w>\": 8015,\n  \"weeds</w>\": 26326,\n  \"week\": 1286,\n  \"week</w>\": 994,\n  \"weekday</w>\": 29244,\n  \"weekdays</w>\": 44330,\n  \"weekend\": 17205,\n  \"weekend</w>\": 1456,\n  \"weekender</w>\": 36547,\n  \"weekends</w>\": 14564,\n  \"weekly\": 34652,\n  \"weekly</w>\": 5885,\n  \"weeknd</w>\": 29925,\n  \"weeks</w>\": 2898,\n  \"weeksary</w>\": 24628,\n  \"ween\": 17517,\n  \"ween</w>\": 1599,\n  \"weep</w>\": 39270,\n  \"weeping</w>\": 36629,\n  \"weer</w>\": 32491,\n  \"weet</w>\": 17742,\n  \"weets</w>\": 13454,\n  \"wef</w>\": 23313,\n  \"weg\": 47867,\n  \"weg</w>\": 47561,\n  \"wego\": 44784,\n  \"wego</w>\": 28220,\n  \"weh\": 48458,\n  \"weh</w>\": 40313,\n  \"weho</w>\": 47798,\n  \"wei\": 6958,\n  \"wei</w>\": 20952,\n  \"weibo</w>\": 20613,\n  \"weigh\": 10565,\n  \"weigh</w>\": 17346,\n  \"weighed</w>\": 33210,\n  \"weighing</w>\": 24455,\n  \"weighs</w>\": 20481,\n  \"weight\": 12723,\n  \"weight</w>\": 3868,\n  \"weighted</w>\": 43179,\n  \"weightlifting</w>\": 36164,\n  \"weightloss</w>\": 20359,\n  \"weights</w>\": 21374,\n  \"weil</w>\": 43720,\n  \"weiler</w>\": 42203,\n  \"wein\": 29134,\n  \"wein</w>\": 37684,\n  \"weiner</w>\": 38822,\n  \"weinstein</w>\": 34367,\n  \"weir\": 11299,\n  \"weir</w>\": 25517,\n  \"weird\": 27981,\n  \"weird</w>\": 5613,\n  \"weirdest</w>\": 29482,\n  \"weirdo</w>\": 32476,\n  \"weis\": 26251,\n  \"weiser</w>\": 34833,\n  \"weiss</w>\": 24794,\n  \"wel\": 1267,\n  \"wel</w>\": 8042,\n  \"welch</w>\": 25820,\n  \"welcom\": 11578,\n  \"welcome\": 18318,\n  \"welcome</w>\": 1881,\n  \"welcomed</w>\": 12590,\n  \"welcomes</w>\": 9304,\n  \"welcometo\": 47511,\n  \"welcoming</w>\": 8775,\n  \"weld</w>\": 39776,\n  \"welding</w>\": 24956,\n  \"welfare</w>\": 12129,\n  \"well\": 3277,\n  \"well</w>\": 1123,\n  \"wellbeing</w>\": 14273,\n  \"weller</w>\": 40921,\n  \"welling</w>\": 49165,\n  \"wellington</w>\": 15389,\n  \"wellness\": 40574,\n  \"wellness</w>\": 9904,\n  \"wells\": 42705,\n  \"wells</w>\": 9804,\n  \"welove\": 13573,\n  \"welp</w>\": 28391,\n  \"wels</w>\": 20852,\n  \"welsh\": 19173,\n  \"welsh</w>\": 10977,\n  \"welt</w>\": 38595,\n  \"welter\": 37115,\n  \"welterweight</w>\": 39617,\n  \"wemb\": 15213,\n  \"wembley</w>\": 16579,\n  \"wen\": 6590,\n  \"wen</w>\": 11278,\n  \"wend\": 15166,\n  \"wendell</w>\": 42091,\n  \"wendy\": 31616,\n  \"wendy</w>\": 14074,\n  \"wenger</w>\": 21105,\n  \"went\": 18633,\n  \"went</w>\": 2437,\n  \"wentworth</w>\": 36423,\n  \"wentz</w>\": 39179,\n  \"wer\": 6316,\n  \"wer</w>\": 2980,\n  \"were\": 15461,\n  \"were</w>\": 1365,\n  \"wered</w>\": 6605,\n  \"weren</w>\": 13611,\n  \"werewolf</w>\": 32001,\n  \"werk</w>\": 30176,\n  \"werner</w>\": 29917,\n  \"wers</w>\": 7110,\n  \"wes\": 18620,\n  \"wes</w>\": 14738,\n  \"wesle\": 29606,\n  \"wesley</w>\": 17332,\n  \"wesleyan</w>\": 32509,\n  \"wesome</w>\": 33292,\n  \"wess</w>\": 44431,\n  \"west\": 2973,\n  \"west</w>\": 1593,\n  \"westbound</w>\": 29208,\n  \"westbrook</w>\": 26948,\n  \"westchester</w>\": 36675,\n  \"westcoast</w>\": 44610,\n  \"westend</w>\": 44815,\n  \"wester\": 9846,\n  \"western\": 17079,\n  \"western</w>\": 4463,\n  \"westfield</w>\": 32309,\n  \"westh\": 36798,\n  \"westin</w>\": 43232,\n  \"westlake</w>\": 41535,\n  \"westminster</w>\": 15158,\n  \"weston</w>\": 22771,\n  \"westside</w>\": 33762,\n  \"westwood</w>\": 26371,\n  \"westworld</w>\": 42287,\n  \"wet\": 12406,\n  \"wet</w>\": 6682,\n  \"weta</w>\": 40946,\n  \"wethenorth</w>\": 45281,\n  \"wethepeople</w>\": 48030,\n  \"wether\": 33794,\n  \"wether</w>\": 48405,\n  \"wetland</w>\": 37357,\n  \"wetlands</w>\": 26547,\n  \"wett</w>\": 41971,\n  \"wetter</w>\": 43957,\n  \"wewant\": 39280,\n  \"wewill\": 37241,\n  \"wex\": 17234,\n  \"wexford</w>\": 29876,\n  \"wexmondays</w>\": 49042,\n  \"wey\": 30376,\n  \"wey</w>\": 19781,\n  \"weymouth</w>\": 41433,\n  \"wf\": 14576,\n  \"wf</w>\": 22313,\n  \"wfa\": 44606,\n  \"wfc</w>\": 36431,\n  \"wfp</w>\": 35193,\n  \"wftv</w>\": 47075,\n  \"wg\": 21091,\n  \"wg</w>\": 25857,\n  \"wga</w>\": 32354,\n  \"wgn\": 48828,\n  \"wh\": 573,\n  \"wh</w>\": 13844,\n  \"wha\": 18994,\n  \"wha</w>\": 25884,\n  \"whal\": 38967,\n  \"whale\": 37083,\n  \"whale</w>\": 11650,\n  \"whales</w>\": 17722,\n  \"wham\": 42506,\n  \"whar\": 15517,\n  \"wharf</w>\": 22452,\n  \"wharton</w>\": 43320,\n  \"what\": 4268,\n  \"what</w>\": 768,\n  \"whatcha</w>\": 37160,\n  \"whate\": 6695,\n  \"whatever</w>\": 6743,\n  \"whati\": 23500,\n  \"whats\": 9263,\n  \"whats</w>\": 13084,\n  \"whatsapp</w>\": 10119,\n  \"whatsoever</w>\": 39928,\n  \"whatson\": 35632,\n  \"whatyou\": 30508,\n  \"whe\": 2009,\n  \"whead</w>\": 34583,\n  \"wheat\": 20505,\n  \"wheat</w>\": 10303,\n  \"wheaton</w>\": 46933,\n  \"wheel\": 7360,\n  \"wheel</w>\": 6744,\n  \"wheelchair</w>\": 17713,\n  \"wheeler</w>\": 18405,\n  \"wheeling</w>\": 34839,\n  \"wheels</w>\": 8025,\n  \"whel\": 9792,\n  \"whelan</w>\": 40715,\n  \"when\": 8753,\n  \"when</w>\": 827,\n  \"whenever</w>\": 10500,\n  \"where\": 7052,\n  \"where</w>\": 1234,\n  \"whereabouts</w>\": 47808,\n  \"whereas</w>\": 42234,\n  \"wheres\": 46345,\n  \"wherever</w>\": 14103,\n  \"whereyou\": 46837,\n  \"whether</w>\": 5903,\n  \"whew</w>\": 39016,\n  \"whey</w>\": 34556,\n  \"whi\": 4295,\n  \"whi</w>\": 33129,\n  \"which</w>\": 1448,\n  \"whiche\": 48719,\n  \"whichever</w>\": 49138,\n  \"whil\": 8499,\n  \"while</w>\": 1519,\n  \"whilst</w>\": 8596,\n  \"whim\": 27766,\n  \"whimsical</w>\": 42282,\n  \"whip</w>\": 14412,\n  \"whipped</w>\": 22323,\n  \"whipping</w>\": 41567,\n  \"whir\": 20873,\n  \"whirl\": 30962,\n  \"whirlwind</w>\": 47771,\n  \"whis\": 6024,\n  \"whiskey\": 41381,\n  \"whiskey</w>\": 11610,\n  \"whisky\": 37567,\n  \"whisky</w>\": 12599,\n  \"whisp\": 21986,\n  \"whispe\": 30356,\n  \"whisper</w>\": 27616,\n  \"whisperer</w>\": 41368,\n  \"whispering</w>\": 42599,\n  \"whispers</w>\": 29133,\n  \"whist\": 13640,\n  \"whistle\": 23972,\n  \"whistle</w>\": 19746,\n  \"whistleblower</w>\": 40410,\n  \"whistler</w>\": 29633,\n  \"whit\": 4398,\n  \"whit</w>\": 31498,\n  \"whitaker</w>\": 35851,\n  \"whitby</w>\": 30858,\n  \"white\": 4699,\n  \"white</w>\": 1579,\n  \"whiteboard</w>\": 40839,\n  \"whitec\": 24575,\n  \"whitehall</w>\": 42827,\n  \"whitehead</w>\": 43560,\n  \"whitehouse</w>\": 20776,\n  \"whitening</w>\": 35540,\n  \"whitepaper</w>\": 42713,\n  \"whites\": 35886,\n  \"whites</w>\": 18835,\n  \"whitesox</w>\": 28816,\n  \"whitewater</w>\": 49350,\n  \"whitfield</w>\": 48404,\n  \"whitley</w>\": 40564,\n  \"whitman</w>\": 32394,\n  \"whitney\": 43021,\n  \"whitney</w>\": 18048,\n  \"whitt\": 33784,\n  \"whittaker</w>\": 47595,\n  \"whl</w>\": 25801,\n  \"who\": 2969,\n  \"who</w>\": 822,\n  \"whoa</w>\": 16943,\n  \"whoever</w>\": 11137,\n  \"whois\": 41884,\n  \"whole\": 10360,\n  \"whole</w>\": 2954,\n  \"wholefoods</w>\": 42840,\n  \"wholesale</w>\": 18306,\n  \"wholesome</w>\": 35959,\n  \"whom\": 38158,\n  \"whom</w>\": 12873,\n  \"whoo\": 20003,\n  \"whoo</w>\": 49290,\n  \"whoop</w>\": 22060,\n  \"whoops</w>\": 28433,\n  \"whopping</w>\": 34384,\n  \"whore</w>\": 31690,\n  \"whos\": 41460,\n  \"whos</w>\": 27130,\n  \"whose</w>\": 6933,\n  \"whouse</w>\": 45927,\n  \"whs</w>\": 26292,\n  \"wht</w>\": 32470,\n  \"whufc</w>\": 31695,\n  \"whun\": 18272,\n  \"why\": 11040,\n  \"why</w>\": 1182,\n  \"whyte</w>\": 42386,\n  \"wi\": 820,\n  \"wi</w>\": 5585,\n  \"wib</w>\": 45303,\n  \"wic\": 7834,\n  \"wich\": 9759,\n  \"wich</w>\": 5238,\n  \"wichita</w>\": 22566,\n  \"wick\": 6798,\n  \"wick</w>\": 6479,\n  \"wicked\": 32579,\n  \"wicked</w>\": 12825,\n  \"wicker</w>\": 38096,\n  \"wicket</w>\": 19180,\n  \"wickets</w>\": 22110,\n  \"wicklow</w>\": 39039,\n  \"wicz</w>\": 30121,\n  \"wid\": 11886,\n  \"wid</w>\": 20886,\n  \"wide\": 19341,\n  \"wide</w>\": 3184,\n  \"widely</w>\": 16195,\n  \"widening</w>\": 46598,\n  \"wider</w>\": 21263,\n  \"widesp\": 20598,\n  \"widespread</w>\": 21258,\n  \"widget</w>\": 43906,\n  \"wido\": 28068,\n  \"widow</w>\": 19949,\n  \"widows</w>\": 42129,\n  \"width</w>\": 23571,\n  \"wie\": 21378,\n  \"wie</w>\": 9131,\n  \"wielding</w>\": 47272,\n  \"wien</w>\": 38131,\n  \"wiener</w>\": 40567,\n  \"wies\": 42788,\n  \"wif</w>\": 37572,\n  \"wife</w>\": 3607,\n  \"wifey</w>\": 35282,\n  \"wifi</w>\": 11026,\n  \"wig\": 23690,\n  \"wig</w>\": 12216,\n  \"wigan</w>\": 23130,\n  \"wiggins</w>\": 32329,\n  \"wiggle</w>\": 47812,\n  \"wight\": 41278,\n  \"wight</w>\": 15545,\n  \"wigs</w>\": 31207,\n  \"wii</w>\": 8005,\n  \"wiiu</w>\": 40980,\n  \"wiki\": 10373,\n  \"wiki</w>\": 24265,\n  \"wikileaks</w>\": 28731,\n  \"wikipedia</w>\": 15176,\n  \"wil\": 1352,\n  \"wil</w>\": 20581,\n  \"wilbur</w>\": 43069,\n  \"wilcox</w>\": 43231,\n  \"wild\": 2780,\n  \"wild</w>\": 3220,\n  \"wildatlantic\": 35500,\n  \"wildatlanticway</w>\": 35776,\n  \"wildcard</w>\": 37360,\n  \"wildcat\": 49077,\n  \"wildcat</w>\": 25870,\n  \"wildcats</w>\": 15909,\n  \"wilde</w>\": 23498,\n  \"wilder\": 14343,\n  \"wilder</w>\": 23499,\n  \"wilderness</w>\": 16506,\n  \"wildest</w>\": 43028,\n  \"wildfire</w>\": 22788,\n  \"wildfires</w>\": 29184,\n  \"wildflower\": 27628,\n  \"wildflower</w>\": 33181,\n  \"wildflowerhour</w>\": 31302,\n  \"wildflowers</w>\": 29136,\n  \"wildlife\": 13298,\n  \"wildlife</w>\": 5250,\n  \"wildlifephotography</w>\": 32307,\n  \"wildlifewednesday</w>\": 48537,\n  \"wildly</w>\": 35981,\n  \"wildoz</w>\": 40113,\n  \"wiley</w>\": 32747,\n  \"wilhelm</w>\": 39696,\n  \"wilkes</w>\": 39548,\n  \"wilkins</w>\": 36986,\n  \"wilkinson</w>\": 26797,\n  \"will\": 5062,\n  \"will</w>\": 751,\n  \"willam\": 43276,\n  \"willard</w>\": 44920,\n  \"wille\": 48739,\n  \"willem</w>\": 38044,\n  \"willi\": 2256,\n  \"william\": 8420,\n  \"william</w>\": 4705,\n  \"williams\": 38452,\n  \"williams</w>\": 4075,\n  \"williamsburg</w>\": 30683,\n  \"williamson</w>\": 20793,\n  \"willie</w>\": 13907,\n  \"willing\": 34160,\n  \"willing</w>\": 11718,\n  \"willingness</w>\": 40573,\n  \"willis</w>\": 18491,\n  \"willow\": 33887,\n  \"willow</w>\": 15665,\n  \"wills</w>\": 26913,\n  \"willy\": 34502,\n  \"willy</w>\": 19599,\n  \"wilmington</w>\": 28052,\n  \"wilms\": 47879,\n  \"wilshere</w>\": 48359,\n  \"wilson\": 23629,\n  \"wilson</w>\": 5622,\n  \"wilt\": 23394,\n  \"wilt</w>\": 47357,\n  \"wilton</w>\": 46638,\n  \"wiltshire</w>\": 28025,\n  \"wim\": 8662,\n  \"wim</w>\": 27580,\n  \"wimble\": 11752,\n  \"wimbledon</w>\": 12229,\n  \"win\": 831,\n  \"win</w>\": 1225,\n  \"winchester</w>\": 20647,\n  \"wind\": 6812,\n  \"wind</w>\": 3630,\n  \"winder\": 44454,\n  \"winder</w>\": 46245,\n  \"winding</w>\": 22390,\n  \"windmill</w>\": 34084,\n  \"windo\": 3110,\n  \"window\": 26675,\n  \"window</w>\": 4879,\n  \"windows</w>\": 5437,\n  \"winds\": 12668,\n  \"winds</w>\": 7012,\n  \"windshield</w>\": 33002,\n  \"windsor\": 44322,\n  \"windsor</w>\": 12884,\n  \"windy</w>\": 13446,\n  \"wine\": 7375,\n  \"wine</w>\": 2604,\n  \"winelover</w>\": 26357,\n  \"winemaker</w>\": 41588,\n  \"wineoclock</w>\": 43846,\n  \"wineries</w>\": 49349,\n  \"winery</w>\": 15500,\n  \"wines</w>\": 8263,\n  \"winetasting</w>\": 41288,\n  \"winewednesday</w>\": 35447,\n  \"wing\": 8141,\n  \"wing</w>\": 1340,\n  \"winged</w>\": 24993,\n  \"winger</w>\": 22727,\n  \"winget</w>\": 44578,\n  \"wings</w>\": 5178,\n  \"wink\": 34455,\n  \"wink</w>\": 25859,\n  \"winkle</w>\": 36430,\n  \"winn</w>\": 38104,\n  \"winne\": 46273,\n  \"winner\": 32961,\n  \"winner</w>\": 2520,\n  \"winners</w>\": 4320,\n  \"winni\": 13018,\n  \"winnie</w>\": 29022,\n  \"winning\": 42099,\n  \"winning</w>\": 2577,\n  \"winnings</w>\": 46490,\n  \"winnipeg</w>\": 14369,\n  \"winona</w>\": 49202,\n  \"wins\": 46839,\n  \"wins</w>\": 2718,\n  \"winslow</w>\": 39658,\n  \"winston</w>\": 14848,\n  \"winter\": 7340,\n  \"winter</w>\": 2541,\n  \"winters</w>\": 21587,\n  \"wintry</w>\": 39504,\n  \"wip</w>\": 10447,\n  \"wipe</w>\": 26761,\n  \"wiped</w>\": 31822,\n  \"wipes</w>\": 33463,\n  \"wir\": 16849,\n  \"wir</w>\": 44838,\n  \"wire\": 7558,\n  \"wire</w>\": 7794,\n  \"wired</w>\": 18935,\n  \"wireless</w>\": 9103,\n  \"wires</w>\": 24311,\n  \"wiring</w>\": 36434,\n  \"wirral</w>\": 34675,\n  \"wis\": 3392,\n  \"wis</w>\": 20405,\n  \"wiscon\": 9857,\n  \"wisconsin</w>\": 10265,\n  \"wisdom\": 42474,\n  \"wisdom</w>\": 5425,\n  \"wise\": 19116,\n  \"wise</w>\": 5558,\n  \"wisely</w>\": 26173,\n  \"wiser</w>\": 44859,\n  \"wish\": 11328,\n  \"wish</w>\": 2412,\n  \"wished</w>\": 25883,\n  \"wishes</w>\": 6045,\n  \"wishing</w>\": 5307,\n  \"wishlist</w>\": 31969,\n  \"wit\": 584,\n  \"wit</w>\": 8531,\n  \"witch\": 20139,\n  \"witch</w>\": 10083,\n  \"witchcraft</w>\": 35065,\n  \"witcher</w>\": 33684,\n  \"witches</w>\": 21673,\n  \"with\": 1435,\n  \"with</w>\": 593,\n  \"withdra\": 24696,\n  \"withdraw</w>\": 31670,\n  \"withdrawal</w>\": 25765,\n  \"withdrawn</w>\": 46687,\n  \"withdraws</w>\": 48637,\n  \"wither\": 39655,\n  \"witherspoon</w>\": 45409,\n  \"within</w>\": 4154,\n  \"withme</w>\": 44670,\n  \"without\": 32836,\n  \"without</w>\": 2193,\n  \"withstand</w>\": 42236,\n  \"withthe\": 36872,\n  \"withus</w>\": 30572,\n  \"withyou</w>\": 30351,\n  \"witne\": 12096,\n  \"witness</w>\": 8793,\n  \"witnessed</w>\": 20187,\n  \"witnesses</w>\": 22778,\n  \"witnessing</w>\": 33618,\n  \"wits</w>\": 30938,\n  \"witt\": 38194,\n  \"witt</w>\": 17168,\n  \"witter</w>\": 31597,\n  \"witty</w>\": 29970,\n  \"witz\": 44186,\n  \"witz</w>\": 13265,\n  \"wiv</w>\": 48925,\n  \"wives</w>\": 14378,\n  \"wiwx</w>\": 44461,\n  \"wiz\": 7730,\n  \"wiz</w>\": 23178,\n  \"wizar\": 49121,\n  \"wizard\": 30490,\n  \"wizard</w>\": 14295,\n  \"wizards</w>\": 19140,\n  \"wizkid</w>\": 40146,\n  \"wj\": 19739,\n  \"wj</w>\": 35453,\n  \"wk\": 11512,\n  \"wk</w>\": 11528,\n  \"wkend</w>\": 42336,\n  \"wknd</w>\": 20851,\n  \"wks</w>\": 25508,\n  \"wku</w>\": 43377,\n  \"wl\": 13299,\n  \"wl</w>\": 9613,\n  \"wm\": 20268,\n  \"wm</w>\": 15790,\n  \"wn\": 1186,\n  \"wn</w>\": 757,\n  \"wnba</w>\": 32358,\n  \"wned</w>\": 8628,\n  \"wns</w>\": 12950,\n  \"wnt</w>\": 22484,\n  \"wny</w>\": 24833,\n  \"wo\": 1613,\n  \"wo</w>\": 11132,\n  \"woah</w>\": 17751,\n  \"wob\": 35984,\n  \"woc</w>\": 39011,\n  \"wod</w>\": 41522,\n  \"woes</w>\": 27860,\n  \"wof\": 45671,\n  \"woj\": 48931,\n  \"wok</w>\": 28912,\n  \"woke</w>\": 9331,\n  \"woken</w>\": 43697,\n  \"woking</w>\": 43931,\n  \"wol\": 2798,\n  \"wol</w>\": 48622,\n  \"wold</w>\": 42399,\n  \"wolf\": 9453,\n  \"wolf</w>\": 5916,\n  \"wolfe</w>\": 24989,\n  \"wolff</w>\": 34369,\n  \"wolfgang</w>\": 34061,\n  \"wolfpack</w>\": 30887,\n  \"wolve\": 45101,\n  \"wolver\": 14334,\n  \"wolverhampton</w>\": 34518,\n  \"wolverine</w>\": 23353,\n  \"wolverines</w>\": 42003,\n  \"wolves</w>\": 9372,\n  \"wom\": 1087,\n  \"womack</w>\": 48980,\n  \"woman\": 15716,\n  \"woman</w>\": 2308,\n  \"womanc\": 35630,\n  \"womancrush\": 37721,\n  \"womancrushwednesday</w>\": 39714,\n  \"womanin\": 30562,\n  \"womaninbiz</w>\": 36482,\n  \"womb</w>\": 37023,\n  \"women\": 3648,\n  \"women</w>\": 1507,\n  \"womenin\": 13062,\n  \"womeninscience</w>\": 41343,\n  \"womeninstem</w>\": 29380,\n  \"womenintech</w>\": 31470,\n  \"womenof\": 48421,\n  \"womens\": 12822,\n  \"womens</w>\": 14408,\n  \"womensart</w>\": 38548,\n  \"womensday</w>\": 13956,\n  \"womenshi\": 22887,\n  \"womenshistorymonth</w>\": 24982,\n  \"womensmarch</w>\": 30102,\n  \"won\": 1528,\n  \"won</w>\": 1749,\n  \"wonder\": 2070,\n  \"wonder</w>\": 3936,\n  \"wondercon</w>\": 46944,\n  \"wondered</w>\": 15550,\n  \"wonderful</w>\": 2582,\n  \"wonderfully</w>\": 23245,\n  \"wondering</w>\": 8360,\n  \"wonderland</w>\": 13874,\n  \"wonders</w>\": 14048,\n  \"wonderwoman</w>\": 31000,\n  \"wondo</w>\": 38402,\n  \"wondr\": 46771,\n  \"wong</w>\": 17876,\n  \"wonka</w>\": 43463,\n  \"wont\": 43174,\n  \"wont</w>\": 15952,\n  \"woo\": 1867,\n  \"woo</w>\": 9322,\n  \"wood\": 3269,\n  \"wood</w>\": 1704,\n  \"woodbridge</w>\": 49074,\n  \"wooden\": 48226,\n  \"wooden</w>\": 9057,\n  \"woodland\": 44314,\n  \"woodland</w>\": 17447,\n  \"woodlands</w>\": 32430,\n  \"woodley</w>\": 40566,\n  \"woodpecker</w>\": 32684,\n  \"woods</w>\": 6267,\n  \"woodson</w>\": 48967,\n  \"woodstock</w>\": 29486,\n  \"woodward</w>\": 27419,\n  \"woodwork</w>\": 47386,\n  \"woodworking</w>\": 29267,\n  \"woody\": 38627,\n  \"woody</w>\": 17144,\n  \"woof\": 34234,\n  \"woof</w>\": 24028,\n  \"woohoo</w>\": 20172,\n  \"wook</w>\": 29192,\n  \"wool\": 9967,\n  \"wool</w>\": 13283,\n  \"woolf</w>\": 43728,\n  \"woolly</w>\": 47722,\n  \"woon</w>\": 33126,\n  \"wooo</w>\": 43217,\n  \"woop</w>\": 31884,\n  \"woot</w>\": 22466,\n  \"wor\": 641,\n  \"worcester\": 22172,\n  \"worcester</w>\": 19580,\n  \"worcestershire</w>\": 38440,\n  \"worcestershirehour</w>\": 43644,\n  \"word\": 8272,\n  \"word</w>\": 2653,\n  \"wordof\": 33500,\n  \"wordoftheday</w>\": 43594,\n  \"wordpress</w>\": 15193,\n  \"words\": 31007,\n  \"words</w>\": 2709,\n  \"wore</w>\": 8953,\n  \"work\": 1636,\n  \"work</w>\": 951,\n  \"workday</w>\": 29735,\n  \"worked</w>\": 5410,\n  \"worker</w>\": 8098,\n  \"workers</w>\": 4795,\n  \"workflow</w>\": 28502,\n  \"workforce</w>\": 14672,\n  \"workin\": 31825,\n  \"workin</w>\": 26323,\n  \"working\": 20806,\n  \"working</w>\": 1699,\n  \"workinprogress</w>\": 46086,\n  \"workout</w>\": 6773,\n  \"workouts</w>\": 22779,\n  \"workplace</w>\": 11959,\n  \"workplaces</w>\": 47383,\n  \"works</w>\": 2322,\n  \"workshop</w>\": 3832,\n  \"workshops</w>\": 12262,\n  \"workspace</w>\": 34470,\n  \"worl\": 5221,\n  \"world\": 2334,\n  \"world</w>\": 1002,\n  \"worlda\": 46627,\n  \"worldbank</w>\": 36759,\n  \"worldbookday</w>\": 31191,\n  \"worldcup\": 42525,\n  \"worldcup</w>\": 8650,\n  \"worlden\": 44668,\n  \"worldenviron\": 47115,\n  \"worldenvironmentday</w>\": 47522,\n  \"worldly</w>\": 36268,\n  \"worldo\": 41698,\n  \"worldof\": 22636,\n  \"worldre\": 33951,\n  \"worlds</w>\": 7691,\n  \"worldseries</w>\": 26695,\n  \"worldtour</w>\": 23202,\n  \"worldwater\": 41176,\n  \"worldwaterday</w>\": 44520,\n  \"worldwide</w>\": 6214,\n  \"worm\": 33709,\n  \"worm</w>\": 10945,\n  \"worms</w>\": 20231,\n  \"worn</w>\": 9037,\n  \"worried</w>\": 11911,\n  \"worries</w>\": 17684,\n  \"worry</w>\": 7534,\n  \"worrying</w>\": 24058,\n  \"worse</w>\": 8236,\n  \"worsen\": 46344,\n  \"worshi\": 31840,\n  \"worship\": 46399,\n  \"worship</w>\": 9023,\n  \"worst</w>\": 5719,\n  \"wort</w>\": 30209,\n  \"worth\": 10671,\n  \"worth</w>\": 2450,\n  \"worthing</w>\": 39929,\n  \"worthit</w>\": 40830,\n  \"worthless</w>\": 44736,\n  \"worths</w>\": 44633,\n  \"worthwhile</w>\": 36295,\n  \"worthy</w>\": 8881,\n  \"worx</w>\": 44973,\n  \"wot</w>\": 24863,\n  \"wou\": 5279,\n  \"would\": 39873,\n  \"would</w>\": 1311,\n  \"wouldn</w>\": 5878,\n  \"wouldnt</w>\": 41595,\n  \"wound</w>\": 19231,\n  \"wounded</w>\": 14859,\n  \"wounds</w>\": 21290,\n  \"woven</w>\": 19830,\n  \"wow\": 22191,\n  \"wow</w>\": 2781,\n  \"woz\": 44558,\n  \"wozni\": 47782,\n  \"wp\": 15378,\n  \"wp</w>\": 13302,\n  \"wpg</w>\": 35048,\n  \"wps</w>\": 33386,\n  \"wq\": 45195,\n  \"wr\": 1189,\n  \"wr</w>\": 8028,\n  \"wra\": 3852,\n  \"wra</w>\": 46004,\n  \"wral</w>\": 49050,\n  \"wrangler</w>\": 30923,\n  \"wrap</w>\": 7094,\n  \"wrapped</w>\": 9875,\n  \"wrapping</w>\": 15223,\n  \"wraps</w>\": 18236,\n  \"wrath</w>\": 29783,\n  \"wray</w>\": 48943,\n  \"wrc</w>\": 16004,\n  \"wre\": 3168,\n  \"wreath</w>\": 23091,\n  \"wrec\": 20879,\n  \"wreck\": 28775,\n  \"wreck</w>\": 15017,\n  \"wrecked</w>\": 32695,\n  \"wreckem</w>\": 45676,\n  \"wrecking</w>\": 36956,\n  \"wrecks</w>\": 45545,\n  \"wren\": 20191,\n  \"wren</w>\": 31970,\n  \"wrench</w>\": 30980,\n  \"wrest\": 4177,\n  \"wrestle\": 17097,\n  \"wrestle</w>\": 28086,\n  \"wrestlemania</w>\": 18849,\n  \"wrestler</w>\": 19790,\n  \"wrestlers</w>\": 25902,\n  \"wrestling\": 31292,\n  \"wrestling</w>\": 5904,\n  \"wrexham</w>\": 34479,\n  \"wri\": 7667,\n  \"wri</w>\": 42007,\n  \"wright\": 28616,\n  \"wright</w>\": 6991,\n  \"wrights</w>\": 43711,\n  \"wrigley</w>\": 33538,\n  \"wrink\": 22201,\n  \"wrinkle</w>\": 46642,\n  \"wrinkles</w>\": 35525,\n  \"wrist\": 19243,\n  \"wrist</w>\": 16139,\n  \"wristband</w>\": 36890,\n  \"wristbands</w>\": 44864,\n  \"writ\": 2902,\n  \"write\": 28874,\n  \"write</w>\": 4946,\n  \"writer\": 27886,\n  \"writer</w>\": 4422,\n  \"writers\": 18742,\n  \"writers</w>\": 7307,\n  \"writerslife</w>\": 25007,\n  \"writes</w>\": 8023,\n  \"writing\": 16053,\n  \"writing</w>\": 2979,\n  \"writingcommunity</w>\": 39178,\n  \"writings</w>\": 36259,\n  \"written</w>\": 5231,\n  \"wro\": 5447,\n  \"wrong\": 18381,\n  \"wrong</w>\": 3669,\n  \"wrongly</w>\": 45642,\n  \"wrote</w>\": 5796,\n  \"wrought</w>\": 48125,\n  \"wrs</w>\": 45280,\n  \"ws\": 6300,\n  \"ws</w>\": 799,\n  \"wsb\": 30681,\n  \"wsbtv</w>\": 38394,\n  \"wsj</w>\": 19764,\n  \"wski</w>\": 12548,\n  \"wsl</w>\": 43706,\n  \"wsoc</w>\": 40253,\n  \"wson</w>\": 33954,\n  \"wsop</w>\": 41231,\n  \"wsu\": 44674,\n  \"wsu</w>\": 32913,\n  \"wsw</w>\": 43285,\n  \"wt\": 15873,\n  \"wt</w>\": 12255,\n  \"wta</w>\": 25984,\n  \"wtc</w>\": 39718,\n  \"wtf</w>\": 6891,\n  \"wth</w>\": 23021,\n  \"wthr\": 45269,\n  \"wti</w>\": 47345,\n  \"wto</w>\": 36406,\n  \"wts</w>\": 32159,\n  \"wu\": 9710,\n  \"wu</w>\": 9837,\n  \"wud</w>\": 43870,\n  \"wul\": 35154,\n  \"wunder\": 36661,\n  \"wur\": 24040,\n  \"wurst</w>\": 44409,\n  \"wusa</w>\": 40021,\n  \"wut</w>\": 28590,\n  \"wv\": 18920,\n  \"wv</w>\": 14743,\n  \"wvu\": 44878,\n  \"wvu</w>\": 25879,\n  \"ww\": 3181,\n  \"ww</w>\": 4491,\n  \"wwc</w>\": 26505,\n  \"wwdc</w>\": 47441,\n  \"wwe\": 12112,\n  \"wwe</w>\": 5290,\n  \"wwen\": 23308,\n  \"wwenetwork</w>\": 37228,\n  \"wwenxt</w>\": 39898,\n  \"wwer\": 32038,\n  \"wwf</w>\": 23332,\n  \"wwfc</w>\": 42681,\n  \"wwg</w>\": 35322,\n  \"wwi</w>\": 20194,\n  \"wwii</w>\": 10261,\n  \"www\": 26074,\n  \"www</w>\": 9667,\n  \"wwwbigbaldhead</w>\": 30761,\n  \"wwww\": 34224,\n  \"wwww</w>\": 25200,\n  \"wwwww</w>\": 48268,\n  \"wwx</w>\": 47431,\n  \"wx\": 18192,\n  \"wx</w>\": 3561,\n  \"wy\": 4665,\n  \"wy</w>\": 7625,\n  \"wyatt</w>\": 21660,\n  \"wyd</w>\": 33113,\n  \"wye\": 48436,\n  \"wye</w>\": 43751,\n  \"wylie</w>\": 49330,\n  \"wyn\": 11802,\n  \"wyn</w>\": 17504,\n  \"wynn</w>\": 36117,\n  \"wynne</w>\": 35951,\n  \"wynonna\": 41456,\n  \"wynonnaearp</w>\": 43755,\n  \"wyoming</w>\": 18693,\n  \"x\": 87,\n  \"x</w>\": 343,\n  \"xa</w>\": 24831,\n  \"xan\": 45530,\n  \"xander</w>\": 45601,\n  \"xavi\": 36342,\n  \"xavier\": 41044,\n  \"xavier</w>\": 18567,\n  \"xb</w>\": 33678,\n  \"xbox\": 18063,\n  \"xbox</w>\": 7748,\n  \"xboxone</w>\": 27410,\n  \"xc</w>\": 12515,\n  \"xchange</w>\": 49132,\n  \"xd</w>\": 6380,\n  \"xe\": 42886,\n  \"xe</w>\": 19183,\n  \"xen\": 15568,\n  \"xer\": 49005,\n  \"xf</w>\": 35274,\n  \"xfactor</w>\": 25211,\n  \"xfinity</w>\": 35107,\n  \"xford</w>\": 34732,\n  \"xh</w>\": 45771,\n  \"xham</w>\": 25284,\n  \"xi\": 2467,\n  \"xi</w>\": 7376,\n  \"xia\": 19854,\n  \"xia</w>\": 20724,\n  \"xian</w>\": 42570,\n  \"xiao</w>\": 49318,\n  \"xiaomi</w>\": 27477,\n  \"xico</w>\": 38469,\n  \"xide</w>\": 17398,\n  \"xie\": 40122,\n  \"xie</w>\": 15976,\n  \"xii</w>\": 36525,\n  \"xiii</w>\": 28199,\n  \"xim\": 11217,\n  \"xin\": 27053,\n  \"xin</w>\": 41517,\n  \"xing</w>\": 14383,\n  \"xion</w>\": 24164,\n  \"xis</w>\": 35793,\n  \"xit</w>\": 5316,\n  \"xiumin</w>\": 36563,\n  \"xiv</w>\": 16125,\n  \"xj</w>\": 42453,\n  \"xl\": 36529,\n  \"xl</w>\": 8833,\n  \"xley</w>\": 38223,\n  \"xm</w>\": 18626,\n  \"xma\": 48805,\n  \"xmas\": 48848,\n  \"xmas</w>\": 6425,\n  \"xmen</w>\": 28708,\n  \"xn</w>\": 25388,\n  \"xo\": 26936,\n  \"xo</w>\": 9000,\n  \"xon\": 29186,\n  \"xon</w>\": 8482,\n  \"xox\": 11531,\n  \"xox</w>\": 34050,\n  \"xoxo</w>\": 13313,\n  \"xp</w>\": 15651,\n  \"xper\": 32200,\n  \"xperia</w>\": 37615,\n  \"xpo</w>\": 44377,\n  \"xpress</w>\": 31809,\n  \"xq</w>\": 40606,\n  \"xr</w>\": 26276,\n  \"xrp</w>\": 26965,\n  \"xs</w>\": 16397,\n  \"xt</w>\": 1052,\n  \"xtina</w>\": 45520,\n  \"xton\": 32666,\n  \"xton</w>\": 10597,\n  \"xtra</w>\": 26969,\n  \"xtre\": 27025,\n  \"xtreme</w>\": 33483,\n  \"xu\": 42063,\n  \"xu</w>\": 37198,\n  \"xv</w>\": 17768,\n  \"xvi</w>\": 44031,\n  \"xx\": 5675,\n  \"xx</w>\": 3553,\n  \"xxl</w>\": 29777,\n  \"xxx\": 33923,\n  \"xxx</w>\": 8352,\n  \"xxxx\": 32035,\n  \"xxxx</w>\": 22819,\n  \"xxxxx</w>\": 44195,\n  \"xy\": 20023,\n  \"xy</w>\": 11443,\n  \"y\": 88,\n  \"y</w>\": 344,\n  \"ya\": 5018,\n  \"ya</w>\": 1430,\n  \"yaa\": 48847,\n  \"yaa</w>\": 34498,\n  \"yaan</w>\": 34680,\n  \"yab\": 27737,\n  \"yach\": 9039,\n  \"yacht\": 43806,\n  \"yacht</w>\": 12859,\n  \"yachts</w>\": 29260,\n  \"yad\": 13276,\n  \"yad</w>\": 40047,\n  \"yadav</w>\": 26650,\n  \"yaf\": 38019,\n  \"yag\": 35081,\n  \"yah\": 16170,\n  \"yah</w>\": 12381,\n  \"yaho\": 37929,\n  \"yahoo\": 38152,\n  \"yahoo</w>\": 16846,\n  \"yak\": 11014,\n  \"yak</w>\": 29074,\n  \"yaki</w>\": 44677,\n  \"yaku\": 29572,\n  \"yakuza</w>\": 42628,\n  \"yal\": 16198,\n  \"yal</w>\": 13418,\n  \"yale\": 39926,\n  \"yale</w>\": 17157,\n  \"yall</w>\": 9210,\n  \"yam\": 6666,\n  \"yam</w>\": 19318,\n  \"yama</w>\": 23512,\n  \"yamaha</w>\": 18854,\n  \"yan\": 3949,\n  \"yan</w>\": 4788,\n  \"yana</w>\": 18698,\n  \"yand\": 38609,\n  \"yang\": 23818,\n  \"yang</w>\": 12605,\n  \"yani</w>\": 26439,\n  \"yankee</w>\": 21554,\n  \"yankees</w>\": 11889,\n  \"yann\": 40246,\n  \"yann</w>\": 38657,\n  \"yao</w>\": 45231,\n  \"yap\": 48700,\n  \"yap</w>\": 34468,\n  \"yar\": 6786,\n  \"yar</w>\": 23071,\n  \"yard\": 20234,\n  \"yard</w>\": 4313,\n  \"yards</w>\": 7550,\n  \"yarmouth</w>\": 45941,\n  \"yarn</w>\": 19702,\n  \"yarra</w>\": 46824,\n  \"yas\": 8168,\n  \"yas</w>\": 20570,\n  \"yash\": 30216,\n  \"yash</w>\": 37836,\n  \"yasi\": 37700,\n  \"yasss</w>\": 23873,\n  \"yat\": 29443,\n  \"yat</w>\": 34965,\n  \"yates</w>\": 27677,\n  \"yatra</w>\": 38932,\n  \"yav\": 41275,\n  \"yaw\": 31989,\n  \"yawn</w>\": 48643,\n  \"yay\": 20614,\n  \"yay</w>\": 6712,\n  \"yaya</w>\": 37608,\n  \"yaz\": 19348,\n  \"yaz</w>\": 42252,\n  \"yb\": 41785,\n  \"yb</w>\": 27615,\n  \"yc</w>\": 11931,\n  \"ycle</w>\": 38089,\n  \"yd\": 29896,\n  \"yd</w>\": 9534,\n  \"yday</w>\": 15899,\n  \"yds</w>\": 24819,\n  \"ye\": 693,\n  \"ye</w>\": 4582,\n  \"yea</w>\": 13687,\n  \"yeah\": 29405,\n  \"yeah</w>\": 3908,\n  \"year\": 5163,\n  \"year</w>\": 935,\n  \"yearbook</w>\": 21636,\n  \"yearling</w>\": 48392,\n  \"yearly</w>\": 24541,\n  \"yearof\": 31944,\n  \"yearofthe\": 47899,\n  \"years\": 30864,\n  \"years</w>\": 1151,\n  \"yearsof\": 14932,\n  \"yearswith\": 45249,\n  \"yeast</w>\": 25819,\n  \"yeats</w>\": 44903,\n  \"yed\": 28137,\n  \"yed</w>\": 3301,\n  \"yee\": 18114,\n  \"yee</w>\": 23108,\n  \"yeezy</w>\": 24901,\n  \"yeg\": 16854,\n  \"yeg</w>\": 11976,\n  \"yegfood</w>\": 48711,\n  \"yeh</w>\": 21331,\n  \"yel\": 3323,\n  \"yel</w>\": 48164,\n  \"yell</w>\": 30824,\n  \"yelled</w>\": 39199,\n  \"yelling</w>\": 26581,\n  \"yellow\": 12059,\n  \"yellow</w>\": 4481,\n  \"yellowstone</w>\": 29241,\n  \"yelp</w>\": 31674,\n  \"yemen\": 29276,\n  \"yemen</w>\": 12513,\n  \"yemeni</w>\": 44656,\n  \"yemi</w>\": 42267,\n  \"yen\": 29602,\n  \"yen</w>\": 17960,\n  \"yeo\": 32292,\n  \"yeo</w>\": 43830,\n  \"yeol</w>\": 15808,\n  \"yeon</w>\": 16602,\n  \"yep</w>\": 10964,\n  \"yer\": 15491,\n  \"yer</w>\": 2371,\n  \"yers</w>\": 3722,\n  \"yes\": 21620,\n  \"yes</w>\": 1958,\n  \"yess\": 42778,\n  \"yess</w>\": 40189,\n  \"yesss</w>\": 36210,\n  \"yessss</w>\": 45620,\n  \"yester\": 1905,\n  \"yesterday</w>\": 1926,\n  \"yesterdays</w>\": 36238,\n  \"yesung</w>\": 38527,\n  \"yet</w>\": 2296,\n  \"yeti</w>\": 34228,\n  \"yev</w>\": 39855,\n  \"yew</w>\": 34660,\n  \"yey</w>\": 45447,\n  \"yg</w>\": 16396,\n  \"ygk</w>\": 44758,\n  \"ygo\": 46166,\n  \"yh</w>\": 41978,\n  \"yi\": 5826,\n  \"yi</w>\": 14762,\n  \"yield</w>\": 16825,\n  \"yields</w>\": 24856,\n  \"yikes</w>\": 25094,\n  \"yin\": 26476,\n  \"yin</w>\": 23543,\n  \"ying\": 42933,\n  \"ying</w>\": 910,\n  \"yixing</w>\": 32120,\n  \"yk</w>\": 30965,\n  \"yl\": 2656,\n  \"yl</w>\": 4045,\n  \"ylan</w>\": 41875,\n  \"ylde</w>\": 42850,\n  \"yle\": 32305,\n  \"yle</w>\": 10770,\n  \"ylene</w>\": 34239,\n  \"yler</w>\": 48081,\n  \"yles</w>\": 42860,\n  \"ylon</w>\": 22375,\n  \"ylor</w>\": 48468,\n  \"ym\": 1786,\n  \"ym</w>\": 19587,\n  \"yman</w>\": 29077,\n  \"ymc\": 47101,\n  \"ymca</w>\": 22369,\n  \"yment</w>\": 8199,\n  \"ymes</w>\": 39968,\n  \"ymi</w>\": 5271,\n  \"ymm</w>\": 37133,\n  \"ymoun\": 41426,\n  \"ymouth</w>\": 36429,\n  \"yn\": 2823,\n  \"yn</w>\": 4100,\n  \"yne</w>\": 18238,\n  \"ynes</w>\": 18020,\n  \"ynn</w>\": 10499,\n  \"ynna</w>\": 48292,\n  \"ynwa</w>\": 27372,\n  \"yo\": 586,\n  \"yo</w>\": 3497,\n  \"yoda</w>\": 31922,\n  \"yof\": 5966,\n  \"yofficial</w>\": 21818,\n  \"yofthe\": 43983,\n  \"yog\": 34985,\n  \"yog</w>\": 36539,\n  \"yoga\": 25872,\n  \"yoga</w>\": 5523,\n  \"yogh\": 32626,\n  \"yoghurt</w>\": 33491,\n  \"yogi</w>\": 22766,\n  \"yogur\": 16137,\n  \"yogurt</w>\": 16819,\n  \"yoh</w>\": 48880,\n  \"yoke</w>\": 41969,\n  \"yoko\": 25929,\n  \"yoko</w>\": 32256,\n  \"yokohama</w>\": 42409,\n  \"yol\": 19387,\n  \"yol</w>\": 35218,\n  \"yolanda</w>\": 43845,\n  \"yolo</w>\": 20905,\n  \"yom\": 34718,\n  \"yom</w>\": 44527,\n  \"yon\": 10147,\n  \"yon</w>\": 7604,\n  \"yong\": 27960,\n  \"yong</w>\": 20887,\n  \"yonge</w>\": 48592,\n  \"yoo\": 25842,\n  \"yoo</w>\": 20775,\n  \"yoon\": 30863,\n  \"yoon</w>\": 22113,\n  \"yoona</w>\": 32736,\n  \"yoongi</w>\": 24037,\n  \"yor\": 2028,\n  \"yor</w>\": 21132,\n  \"york\": 5318,\n  \"york</w>\": 2705,\n  \"yorker</w>\": 23865,\n  \"yorkers</w>\": 41041,\n  \"yorks</w>\": 39093,\n  \"yorkshi\": 43367,\n  \"yorkshire\": 27007,\n  \"yorkshire</w>\": 8633,\n  \"yoruba</w>\": 46083,\n  \"yos</w>\": 35607,\n  \"yosemite</w>\": 25893,\n  \"yoshi\": 22920,\n  \"yoshi</w>\": 25354,\n  \"yot\": 22875,\n  \"yotes</w>\": 46157,\n  \"yotpo</w>\": 26113,\n  \"you\": 1562,\n  \"you</w>\": 592,\n  \"youare\": 33879,\n  \"youcan\": 32498,\n  \"youknow\": 47919,\n  \"youknow</w>\": 41088,\n  \"youn\": 1596,\n  \"young\": 6939,\n  \"young</w>\": 1888,\n  \"younger</w>\": 10414,\n  \"youngest</w>\": 12316,\n  \"youngjae</w>\": 46426,\n  \"youngster</w>\": 35881,\n  \"youngsters</w>\": 28098,\n  \"younow</w>\": 33831,\n  \"your\": 2130,\n  \"your</w>\": 695,\n  \"youre\": 28344,\n  \"youre</w>\": 19695,\n  \"yourown\": 28583,\n  \"yours</w>\": 3834,\n  \"yourself</w>\": 3053,\n  \"yourselves</w>\": 19747,\n  \"youth\": 10743,\n  \"youth</w>\": 3281,\n  \"youthful</w>\": 37480,\n  \"youths</w>\": 23614,\n  \"youts</w>\": 22737,\n  \"youtu\": 13868,\n  \"youtube\": 31258,\n  \"youtube</w>\": 3895,\n  \"youtuber</w>\": 24720,\n  \"youtubers</w>\": 36822,\n  \"youu</w>\": 35055,\n  \"youuu</w>\": 35324,\n  \"youuuu</w>\": 47123,\n  \"yoy</w>\": 41865,\n  \"yp\": 38370,\n  \"yp</w>\": 34734,\n  \"ypg</w>\": 37386,\n  \"yql</w>\": 46122,\n  \"yqr</w>\": 36881,\n  \"yr\": 18395,\n  \"yr</w>\": 4333,\n  \"yrs</w>\": 4822,\n  \"ys\": 1971,\n  \"ys</w>\": 961,\n  \"yser</w>\": 33121,\n  \"ysis</w>\": 4843,\n  \"ysl</w>\": 45681,\n  \"ysm</w>\": 23842,\n  \"yst\": 40528,\n  \"yt\": 36777,\n  \"yt</w>\": 14779,\n  \"ytd</w>\": 47524,\n  \"yte</w>\": 48172,\n  \"yu\": 3371,\n  \"yu</w>\": 8887,\n  \"yuan</w>\": 26236,\n  \"yuck</w>\": 48282,\n  \"yugo\": 48231,\n  \"yuh</w>\": 42547,\n  \"yui</w>\": 47932,\n  \"yuk\": 17037,\n  \"yuk</w>\": 24063,\n  \"yuki</w>\": 34010,\n  \"yukon</w>\": 27094,\n  \"yul\": 39832,\n  \"yum\": 6869,\n  \"yum</w>\": 7259,\n  \"yuma</w>\": 47566,\n  \"yummy</w>\": 7687,\n  \"yun\": 14976,\n  \"yun</w>\": 18288,\n  \"yung\": 44545,\n  \"yung</w>\": 17676,\n  \"yunho</w>\": 39748,\n  \"yup</w>\": 13231,\n  \"yur\": 42533,\n  \"yuri</w>\": 23823,\n  \"yusuf</w>\": 33222,\n  \"yuv\": 36784,\n  \"yves</w>\": 33698,\n  \"yvon\": 23327,\n  \"yvonne</w>\": 32583,\n  \"yvr</w>\": 29058,\n  \"yw\": 33741,\n  \"yx</w>\": 35624,\n  \"yxe</w>\": 34240,\n  \"yy\": 3433,\n  \"yy</w>\": 8321,\n  \"yya</w>\": 37444,\n  \"yyc\": 27542,\n  \"yyc</w>\": 11741,\n  \"yyj</w>\": 26203,\n  \"yyy</w>\": 11514,\n  \"yyyy\": 38749,\n  \"yyyy</w>\": 16955,\n  \"yyyyy</w>\": 26089,\n  \"yyyyyy</w>\": 47055,\n  \"yz\": 37579,\n  \"yz</w>\": 46451,\n  \"yÃ¼\": 48232,\n  \"z\": 89,\n  \"z</w>\": 345,\n  \"za\": 3710,\n  \"za</w>\": 2186,\n  \"zab\": 22982,\n  \"zable</w>\": 37002,\n  \"zac\": 25501,\n  \"zac</w>\": 19159,\n  \"zach\": 13401,\n  \"zach</w>\": 11815,\n  \"zachary</w>\": 32401,\n  \"zack\": 30567,\n  \"zack</w>\": 19120,\n  \"zad\": 47314,\n  \"zad</w>\": 27838,\n  \"zada</w>\": 34889,\n  \"zaf\": 21837,\n  \"zafar</w>\": 46668,\n  \"zag\": 26091,\n  \"zag</w>\": 29346,\n  \"zagre\": 34107,\n  \"zagreb</w>\": 35355,\n  \"zah\": 23258,\n  \"zah</w>\": 43297,\n  \"zaha</w>\": 44408,\n  \"zai\": 44329,\n  \"zai</w>\": 27065,\n  \"zain\": 34400,\n  \"zain</w>\": 45366,\n  \"zak\": 13050,\n  \"zak</w>\": 20738,\n  \"zaki</w>\": 48091,\n  \"zal\": 20552,\n  \"zal</w>\": 33298,\n  \"zam\": 7218,\n  \"zam</w>\": 41578,\n  \"zambia</w>\": 21671,\n  \"zan\": 7284,\n  \"zan</w>\": 17835,\n  \"zana</w>\": 39643,\n  \"zand\": 37712,\n  \"zane</w>\": 34786,\n  \"zani</w>\": 45373,\n  \"zania</w>\": 15059,\n  \"zano</w>\": 27637,\n  \"zanzi\": 47835,\n  \"zap\": 24134,\n  \"zapp\": 33504,\n  \"zappa</w>\": 46592,\n  \"zar\": 5458,\n  \"zar</w>\": 16392,\n  \"zara</w>\": 24454,\n  \"zardari</w>\": 20174,\n  \"zas</w>\": 48261,\n  \"zation</w>\": 3683,\n  \"zawa</w>\": 49281,\n  \"zay\": 7102,\n  \"zayed</w>\": 36726,\n  \"zayn\": 22292,\n  \"zayn</w>\": 10308,\n  \"zaynmalik</w>\": 25278,\n  \"zazzle</w>\": 47857,\n  \"ze\": 2254,\n  \"ze</w>\": 1298,\n  \"zeal\": 44951,\n  \"zealand</w>\": 7618,\n  \"zeb</w>\": 46518,\n  \"zebra\": 47394,\n  \"zebra</w>\": 22548,\n  \"zed\": 21047,\n  \"zed</w>\": 1993,\n  \"zedd</w>\": 45608,\n  \"zee\": 25468,\n  \"zee</w>\": 14080,\n  \"zeiss</w>\": 47460,\n  \"zeit\": 37898,\n  \"zeit</w>\": 37906,\n  \"zek</w>\": 40829,\n  \"zeke</w>\": 47065,\n  \"zel\": 10389,\n  \"zel</w>\": 12027,\n  \"zelda</w>\": 17138,\n  \"zell</w>\": 39526,\n  \"zen\": 8518,\n  \"zen</w>\": 3928,\n  \"zend\": 33478,\n  \"zendaya</w>\": 35956,\n  \"zenith</w>\": 44740,\n  \"zens</w>\": 15298,\n  \"zeph\": 40726,\n  \"zepp\": 22977,\n  \"zeppelin</w>\": 25408,\n  \"zer\": 6118,\n  \"zer</w>\": 3716,\n  \"zero\": 14867,\n  \"zero</w>\": 5848,\n  \"zers</w>\": 9547,\n  \"zes</w>\": 4073,\n  \"zest</w>\": 37709,\n  \"zet\": 34098,\n  \"zeta</w>\": 30954,\n  \"zetta</w>\": 45993,\n  \"zeus</w>\": 32800,\n  \"zey\": 46647,\n  \"zh\": 33389,\n  \"zh</w>\": 41621,\n  \"zhang</w>\": 21127,\n  \"zhen\": 37374,\n  \"zhen</w>\": 33236,\n  \"zhou</w>\": 17384,\n  \"zhu\": 42049,\n  \"zi\": 2651,\n  \"zi</w>\": 5819,\n  \"zia</w>\": 13764,\n  \"zid\": 30235,\n  \"zidane</w>\": 34643,\n  \"zie\": 29316,\n  \"zie</w>\": 8956,\n  \"zieg\": 40157,\n  \"ziegler</w>\": 46812,\n  \"ziel</w>\": 32151,\n  \"zier</w>\": 15399,\n  \"zies</w>\": 38001,\n  \"ziest</w>\": 28159,\n  \"zig\": 15950,\n  \"zig</w>\": 21345,\n  \"ziggy</w>\": 39274,\n  \"zik</w>\": 30125,\n  \"zika</w>\": 28783,\n  \"zil\": 25039,\n  \"zil</w>\": 33190,\n  \"zilla</w>\": 17879,\n  \"zim\": 8112,\n  \"zim</w>\": 22577,\n  \"zimbab\": 12373,\n  \"zimbabwe\": 45668,\n  \"zimbabwe</w>\": 13583,\n  \"zimmer\": 27452,\n  \"zimmer</w>\": 35211,\n  \"zimmerman</w>\": 38231,\n  \"zin\": 14085,\n  \"zin</w>\": 21278,\n  \"zinc</w>\": 27458,\n  \"zind\": 26206,\n  \"zindabad</w>\": 42208,\n  \"zine</w>\": 16100,\n  \"zing\": 25062,\n  \"zing</w>\": 3152,\n  \"zinger</w>\": 42027,\n  \"zio</w>\": 13906,\n  \"zion\": 31763,\n  \"zion</w>\": 20963,\n  \"zione</w>\": 36161,\n  \"zionist</w>\": 33078,\n  \"zip\": 26479,\n  \"zip</w>\": 16083,\n  \"zipper</w>\": 33670,\n  \"zir\": 31892,\n  \"zl</w>\": 39168,\n  \"zlat\": 32489,\n  \"zlatan</w>\": 37877,\n  \"zm</w>\": 43691,\n  \"zman</w>\": 24248,\n  \"zn</w>\": 18004,\n  \"zo\": 4397,\n  \"zo</w>\": 5056,\n  \"zodi\": 22660,\n  \"zodiac</w>\": 27753,\n  \"zoe\": 43114,\n  \"zoe</w>\": 16662,\n  \"zoey</w>\": 39871,\n  \"zog</w>\": 40680,\n  \"zol\": 25939,\n  \"zola</w>\": 46105,\n  \"zom\": 6623,\n  \"zombi\": 29452,\n  \"zombie</w>\": 11819,\n  \"zombies\": 46702,\n  \"zombies</w>\": 16517,\n  \"zon\": 15109,\n  \"zon</w>\": 14618,\n  \"zona</w>\": 42134,\n  \"zone\": 37197,\n  \"zone</w>\": 4442,\n  \"zones</w>\": 17247,\n  \"zoning</w>\": 36790,\n  \"zoo\": 8182,\n  \"zoo</w>\": 7147,\n  \"zoom\": 32671,\n  \"zoom</w>\": 13909,\n  \"zor\": 17605,\n  \"zou\": 38072,\n  \"zr</w>\": 39275,\n  \"zs</w>\": 35248,\n  \"zshq</w>\": 41442,\n  \"zt</w>\": 42629,\n  \"zu\": 4091,\n  \"zu</w>\": 14184,\n  \"zucchini</w>\": 29873,\n  \"zucker\": 26890,\n  \"zuckerberg</w>\": 30066,\n  \"zul\": 31146,\n  \"zulu</w>\": 32821,\n  \"zum</w>\": 35094,\n  \"zuma</w>\": 23326,\n  \"zumba</w>\": 32976,\n  \"zun\": 42440,\n  \"zur\": 17128,\n  \"zurich</w>\": 21288,\n  \"zw</w>\": 42188,\n  \"zx</w>\": 31604,\n  \"zy\": 6615,\n  \"zy</w>\": 2303,\n  \"zyk</w>\": 39112,\n  \"zyme</w>\": 36472,\n  \"zyn\": 45287,\n  \"zz\": 1544,\n  \"zz</w>\": 4943,\n  \"zza</w>\": 14642,\n  \"zzi</w>\": 13974,\n  \"zzie</w>\": 18635,\n  \"zzle</w>\": 7873,\n  \"zzled</w>\": 39075,\n  \"zzo</w>\": 14036,\n  \"zzy\": 21275,\n  \"zzy</w>\": 8353,\n  \"zzz</w>\": 20055,\n  \"zzzz\": 35742,\n  \"zzzz</w>\": 43103,\n  \"{\": 90,\n  \"{</w>\": 346,\n  \"{}</w>\": 39025,\n  \"|\": 91,\n  \"|#</w>\": 31183,\n  \"|</w>\": 347,\n  \"|@</w>\": 41677,\n  \"||</w>\": 7566,\n  \"}\": 92,\n  \"}</w>\": 348,\n  \"~\": 93,\n  \"~!</w>\": 31181,\n  \"~\\\"</w>\": 48442,\n  \"~</w>\": 349,\n  \"~></w>\": 43291,\n  \"~@</w>\": 44247,\n  \"~~\": 11461,\n  \"~~</w>\": 16671,\n  \"~~~</w>\": 32472,\n  \"~~~~\": 28295,\n  \"¡\": 94,\n  \"¡</w>\": 350,\n  \"¡ï¸ı\": 15113,\n  \"¡ï¸ı</w>\": 4174,\n  \"¡ľ\": 43991,\n  \"¢\": 95,\n  \"¢</w>\": 351,\n  \"£\": 96,\n  \"£</w>\": 352,\n  \"£ï¸ı</w>\": 18446,\n  \"¤\": 97,\n  \"¤</w>\": 353,\n  \"¥\": 98,\n  \"¥</w>\": 354,\n  \"¦\": 99,\n  \"¦</w>\": 355,\n  \"¦Ī</w>\": 47615,\n  \"§\": 100,\n  \"§</w>\": 356,\n  \"¨\": 101,\n  \"¨</w>\": 357,\n  \"©\": 102,\n  \"©</w>\": 358,\n  \"ª\": 103,\n  \"ª</w>\": 359,\n  \"«\": 104,\n  \"«</w>\": 360,\n  \"¬\": 105,\n  \"¬</w>\": 361,\n  \"¬ë\": 31736,\n  \"®\": 106,\n  \"®</w>\": 362,\n  \"¯\": 107,\n  \"¯</w>\": 363,\n  \"°\": 108,\n  \"°:</w>\": 21787,\n  \"°</w>\": 364,\n  \"°ï¸ı</w>\": 34777,\n  \"±\": 109,\n  \"±</w>\": 365,\n  \"±ï¸ı</w>\": 41020,\n  \"²\": 110,\n  \"²</w>\": 366,\n  \"³\": 111,\n  \"³</w>\": 367,\n  \"³ï¸ı\": 22195,\n  \"³ï¸ı</w>\": 24706,\n  \"´\": 112,\n  \"´</w>\": 368,\n  \"µ\": 113,\n  \"µ</w>\": 369,\n  \"µï¸ı</w>\": 27605,\n  \"¶\": 114,\n  \"¶</w>\": 370,\n  \"·\": 115,\n  \"·</w>\": 371,\n  \"¸\": 116,\n  \"¸</w>\": 372,\n  \"¸ë\": 19693,\n  \"¹\": 117,\n  \"¹</w>\": 373,\n  \"º\": 118,\n  \"º</w>\": 374,\n  \"»\": 119,\n  \"»</w>\": 375,\n  \"¼\": 120,\n  \"¼</w>\": 376,\n  \"½\": 121,\n  \"½</w>\": 377,\n  \"½ï¸ı</w>\": 31333,\n  \"¾\": 122,\n  \"¾</w>\": 378,\n  \"¿\": 123,\n  \"¿</w>\": 379,\n  \"À\": 124,\n  \"À</w>\": 380,\n  \"Á\": 125,\n  \"Á</w>\": 381,\n  \"Â\": 126,\n  \"Â</w>\": 382,\n  \"Â¡\": 26868,\n  \"Â¡</w>\": 10830,\n  \"Â¡Â¡</w>\": 45505,\n  \"Â¢</w>\": 41359,\n  \"Â£\": 31117,\n  \"Â£</w>\": 1950,\n  \"Â¥</w>\": 20199,\n  \"Â¨\": 19957,\n  \"Â¨Â¨\": 23089,\n  \"Â¨Â¨Â¨Â¨\": 41223,\n  \"Â©\": 31148,\n  \"Â©</w>\": 5811,\n  \"Â«</w>\": 14434,\n  \"Â®\": 30857,\n  \"Â®</w>\": 8436,\n  \"Â¯\": 38682,\n  \"Â¯</w>\": 43593,\n  \"Â¯\\\\\": 44096,\n  \"Â¯\\\\_(</w>\": 45115,\n  \"Â°\": 21305,\n  \"Â°</w>\": 6858,\n  \"Â²</w>\": 41175,\n  \"Â´\": 30560,\n  \"Â´</w>\": 12559,\n  \"Â·</w>\": 14844,\n  \"Âº</w>\": 28059,\n  \"Â»\": 31642,\n  \"Â»</w>\": 7599,\n  \"Â½</w>\": 33613,\n  \"Â¿\": 44559,\n  \"Â¿</w>\": 17133,\n  \"ÂŃ</w>\": 22618,\n  \"Ã\": 127,\n  \"Ã</w>\": 383,\n  \"Ã¡\": 7261,\n  \"Ã¡</w>\": 22229,\n  \"Ã¡n\": 38340,\n  \"Ã¡n</w>\": 21385,\n  \"Ã¢\": 26170,\n  \"Ã£\": 19339,\n  \"Ã£o</w>\": 21141,\n  \"Ã¤\": 10896,\n  \"Ã¤</w>\": 47276,\n  \"Ã¤n\": 42787,\n  \"Ã¥\": 23176,\n  \"Ã¦\": 42495,\n  \"Ã§\": 10067,\n  \"Ã§a</w>\": 22711,\n  \"Ã¨\": 12138,\n  \"Ã¨</w>\": 37761,\n  \"Ã¨re</w>\": 30272,\n  \"Ã¨s</w>\": 41210,\n  \"Ã©\": 3459,\n  \"Ã©</w>\": 4166,\n  \"Ã©al</w>\": 45251,\n  \"Ã©e</w>\": 13489,\n  \"Ã©s</w>\": 20507,\n  \"Ãª\": 27515,\n  \"Ã«\": 29526,\n  \"Ã«</w>\": 40520,\n  \"Ã®\": 48704,\n  \"Ã¯\": 35689,\n  \"Ã±\": 6445,\n  \"Ã±a</w>\": 17753,\n  \"Ã±o</w>\": 16574,\n  \"Ã±os</w>\": 40104,\n  \"Ã³\": 8891,\n  \"Ã³</w>\": 27733,\n  \"Ã³n</w>\": 13926,\n  \"Ã´\": 26815,\n  \"Ã¶\": 7255,\n  \"Ã¶</w>\": 37423,\n  \"Ã¶r\": 31762,\n  \"Ã¸\": 17483,\n  \"Ã¸</w>\": 45598,\n  \"Ãº\": 17963,\n  \"Ãº</w>\": 36019,\n  \"Ã¼\": 6522,\n  \"Ã¼</w>\": 47177,\n  \"Ã¼r\": 26132,\n  \"ÃĹ</w>\": 16165,\n  \"Ãł\": 36149,\n  \"Ãł</w>\": 21259,\n  \"ÃŃ\": 8366,\n  \"ÃŃ</w>\": 23928,\n  \"ÃŃa</w>\": 16609,\n  \"ÃŃn</w>\": 33623,\n  \"Ä\": 128,\n  \"Ä</w>\": 384,\n  \"Ä±\": 18562,\n  \"Ä±</w>\": 41901,\n  \"Äģ\": 23134,\n  \"Äĩ</w>\": 31719,\n  \"Äį\": 45414,\n  \"ÄŁ\": 26540,\n  \"Å\": 129,\n  \"Å</w>\": 385,\n  \"Å¡\": 35621,\n  \"ÅĤ\": 40419,\n  \"Åį\": 41267,\n  \"ÅŁ\": 21254,\n  \"ÅŁ</w>\": 40706,\n  \"Æ\": 130,\n  \"Æ</w>\": 386,\n  \"Ç\": 131,\n  \"Ç</w>\": 387,\n  \"È\": 132,\n  \"È</w>\": 388,\n  \"É\": 133,\n  \"É</w>\": 389,\n  \"Ê\": 134,\n  \"Ê</w>\": 390,\n  \"Ë\": 135,\n  \"Ë</w>\": 391,\n  \"Ì\": 136,\n  \"Ì</w>\": 392,\n  \"Ìĩ</w>\": 16384,\n  \"Í\": 137,\n  \"Í</w>\": 393,\n  \"Î\": 138,\n  \"Î</w>\": 394,\n  \"Ï\": 139,\n  \"Ï</w>\": 395,\n  \"Ïī</w>\": 38065,\n  \"Ð\": 140,\n  \"Ð</w>\": 396,\n  \"Ð°\": 16912,\n  \"Ð°</w>\": 27080,\n  \"Ð°Ð\": 31090,\n  \"Ð²\": 39813,\n  \"Ðµ\": 22176,\n  \"Ð¸\": 16701,\n  \"Ð¸Ð\": 29503,\n  \"Ðº\": 27152,\n  \"Ð»\": 47611,\n  \"Ð¼\": 38018,\n  \"Ð½\": 22705,\n  \"Ð¾\": 13506,\n  \"Ð¾</w>\": 29386,\n  \"Ð¾Ð\": 20978,\n  \"Ð¾Ð´\": 38416,\n  \"Ð¾ÑĤ\": 28599,\n  \"Ð¿\": 26302,\n  \"Ð¿ÑĢÐ¸\": 46321,\n  \"Ð¿ÑĢÐ¸ÑĢÐ¾Ð´Ð°</w>\": 48150,\n  \"Ñ\": 141,\n  \"Ñ</w>\": 397,\n  \"ÑĢ\": 16370,\n  \"ÑĢÐ¸\": 41092,\n  \"ÑĢÐ¾Ð´\": 47039,\n  \"ÑĢÐ¾Ð´Ð°</w>\": 47929,\n  \"Ñģ\": 23669,\n  \"ÑĤ\": 17875,\n  \"Ñĥ\": 39729,\n  \"ÑĦ\": 27993,\n  \"ÑĦÐ¾ÑĤ\": 35155,\n  \"ÑĦÐ¾ÑĤÐ¾</w>\": 38981,\n  \"Ñĭ\": 45001,\n  \"Ò\": 142,\n  \"Ò</w>\": 398,\n  \"Ó\": 143,\n  \"Ó</w>\": 399,\n  \"Ô\": 144,\n  \"Ô</w>\": 400,\n  \"Õ\": 145,\n  \"Õ</w>\": 401,\n  \"Ö\": 146,\n  \"Ö</w>\": 402,\n  \"×\": 147,\n  \"×</w>\": 403,\n  \"Ø\": 148,\n  \"Ø</w>\": 404,\n  \"Ø§\": 6042,\n  \"Ø§</w>\": 22625,\n  \"Ø§Ø\": 13189,\n  \"Ø§Ø±\": 40137,\n  \"Ø§Ù\": 8453,\n  \"Ø§ÙĦ\": 12973,\n  \"Ø§Ùħ\": 47626,\n  \"Ø§ÙĨ\": 42773,\n  \"Ø§ÙĨ</w>\": 33200,\n  \"Ø¨\": 16378,\n  \"Ø¨</w>\": 35330,\n  \"Ø©</w>\": 20915,\n  \"Øª\": 18197,\n  \"Øª</w>\": 44333,\n  \"Ø¬\": 26375,\n  \"Ø®\": 41495,\n  \"Ø¯\": 19872,\n  \"Ø¯</w>\": 35566,\n  \"Ø±\": 10948,\n  \"Ø±</w>\": 24933,\n  \"Ø±ÙĬ\": 43273,\n  \"Ø²\": 36169,\n  \"Ø³\": 17856,\n  \"Ø´\": 28770,\n  \"Øµ\": 27271,\n  \"Ø·\": 32050,\n  \"Ø¹\": 18843,\n  \"Øº\": 48510,\n  \"ØŃ\": 25722,\n  \"Ù\": 149,\n  \"Ù</w>\": 405,\n  \"Ùģ\": 24112,\n  \"ÙĤ\": 27585,\n  \"Ùĥ\": 33499,\n  \"ÙĦ\": 14251,\n  \"ÙĦ</w>\": 37899,\n  \"Ùħ\": 12986,\n  \"Ùħ</w>\": 29945,\n  \"ÙĨ\": 16655,\n  \"ÙĨ</w>\": 25386,\n  \"Ùĩ\": 34274,\n  \"Ùĩ</w>\": 31343,\n  \"ÙĪ\": 12203,\n  \"ÙĪ</w>\": 38310,\n  \"ÙĪØ±\": 48242,\n  \"ÙĬ\": 12046,\n  \"ÙĬ</w>\": 23853,\n  \"Ú\": 150,\n  \"Ú</w>\": 406,\n  \"Ú©\": 26475,\n  \"Û\": 151,\n  \"Û</w>\": 407,\n  \"Ûģ\": 40480,\n  \"ÛĮ\": 21452,\n  \"ÛĮ</w>\": 32703,\n  \"Ü\": 152,\n  \"Ü</w>\": 408,\n  \"Ý\": 153,\n  \"Ý</w>\": 409,\n  \"Þ\": 154,\n  \"Þ</w>\": 410,\n  \"ß\": 155,\n  \"ß</w>\": 411,\n  \"à\": 156,\n  \"à</w>\": 412,\n  \"à¤\": 3124,\n  \"à¤¤</w>\": 27263,\n  \"à¤¦</w>\": 29552,\n  \"à¤¨</w>\": 26090,\n  \"à¤ª</w>\": 44149,\n  \"à¤¬</w>\": 43599,\n  \"à¤®\": 48254,\n  \"à¤®</w>\": 26774,\n  \"à¤¯</w>\": 37299,\n  \"à¤°\": 39136,\n  \"à¤°</w>\": 19052,\n  \"à¤²</w>\": 30881,\n  \"à¤µ</w>\": 39545,\n  \"à¤¶</w>\": 43181,\n  \"à¤¸</w>\": 28505,\n  \"à¤¹</w>\": 29446,\n  \"à¤¾\": 37973,\n  \"à¤¾</w>\": 13343,\n  \"à¤¿</w>\": 26721,\n  \"à¤Ĥ</w>\": 30833,\n  \"à¤ķ</w>\": 22067,\n  \"à¤Ĺ</w>\": 42598,\n  \"à¤ľ</w>\": 39561,\n  \"à¥\": 7410,\n  \"à¥Ģ\": 45791,\n  \"à¥Ģ</w>\": 25751,\n  \"à¥ģ</w>\": 39653,\n  \"à¥ĩ\": 48612,\n  \"à¥ĩ</w>\": 25130,\n  \"à¥ĭ</w>\": 34452,\n  \"à¥į</w>\": 19389,\n  \"à¦\": 11322,\n  \"à¦¾</w>\": 41532,\n  \"à§\": 26339,\n  \"à¨\": 15741,\n  \"à©\": 32086,\n  \"àª\": 22990,\n  \"à«\": 48347,\n  \"à¬\": 32791,\n  \"à®\": 6022,\n  \"à®¤</w>\": 34691,\n  \"à®©</w>\": 43394,\n  \"à®ª</w>\": 47388,\n  \"à®®</w>\": 35463,\n  \"à®°</w>\": 43270,\n  \"à®²</w>\": 47705,\n  \"à®¾</w>\": 32831,\n  \"à®¿</w>\": 27126,\n  \"à®ķ</w>\": 36168,\n  \"à®Ł</w>\": 45263,\n  \"à¯\": 11259,\n  \"à¯ģ</w>\": 33115,\n  \"à¯į</w>\": 16631,\n  \"à°\": 12100,\n  \"à±\": 23550,\n  \"à±į</w>\": 46098,\n  \"à²\": 9992,\n  \"à²¿</w>\": 47797,\n  \"à³\": 20745,\n  \"à³į</w>\": 36148,\n  \"à´\": 15418,\n  \"àµ\": 27392,\n  \"àµį</w>\": 45266,\n  \"à¶\": 29881,\n  \"à·\": 30766,\n  \"à¸\": 1777,\n  \"à¸¡\": 26137,\n  \"à¸¡</w>\": 29570,\n  \"à¸¢\": 27241,\n  \"à¸¢</w>\": 33091,\n  \"à¸£\": 32225,\n  \"à¸£</w>\": 27331,\n  \"à¸¥\": 34696,\n  \"à¸¥</w>\": 32746,\n  \"à¸§\": 26990,\n  \"à¸§</w>\": 30245,\n  \"à¸ª\": 37883,\n  \"à¸ª</w>\": 35737,\n  \"à¸«\": 33064,\n  \"à¸°\": 43920,\n  \"à¸°</w>\": 49234,\n  \"à¸±</w>\": 14978,\n  \"à¸²\": 11529,\n  \"à¸²</w>\": 38476,\n  \"à¸²à¸\": 12330,\n  \"à¸´</w>\": 17092,\n  \"à¸µ\": 22421,\n  \"à¸µ</w>\": 20278,\n  \"à¸µà¹Ī</w>\": 31511,\n  \"à¸·</w>\": 47991,\n  \"à¸¸</w>\": 30524,\n  \"à¸¹</w>\": 35273,\n  \"à¸ģ</w>\": 30767,\n  \"à¸ģà¸\": 31474,\n  \"à¸Ħ</w>\": 31757,\n  \"à¸Ħà¸\": 39628,\n  \"à¸ĩ\": 24603,\n  \"à¸ĩ</w>\": 33382,\n  \"à¸Ī\": 47608,\n  \"à¸Ĭ</w>\": 46324,\n  \"à¸Ķ\": 31107,\n  \"à¸Ķ</w>\": 38825,\n  \"à¸ķ\": 40273,\n  \"à¸ķ</w>\": 41108,\n  \"à¸Ĺ</w>\": 36171,\n  \"à¸Ļ\": 17474,\n  \"à¸Ļ</w>\": 17639,\n  \"à¸Ļà¸\": 23121,\n  \"à¸ļ\": 33859,\n  \"à¸ļ</w>\": 39616,\n  \"à¸ŀ</w>\": 48171,\n  \"à¸Ń\": 13398,\n  \"à¸Ń</w>\": 32818,\n  \"à¸Ńà¸\": 14649,\n  \"à¸Ńà¸ĩ\": 46622,\n  \"à¹\": 4484,\n  \"à¹Ģ\": 13729,\n  \"à¹Ģà¸\": 14076,\n  \"à¹ģà¸\": 23916,\n  \"à¹Ĥ\": 33118,\n  \"à¹ĥ\": 40962,\n  \"à¹Ħà¸\": 31718,\n  \"à¹ĩ</w>\": 38699,\n  \"à¹Ī</w>\": 11722,\n  \"à¹ī</w>\": 13123,\n  \"à¹Į</w>\": 28353,\n  \"à¼\": 46186,\n  \"à½\": 39219,\n  \"á\": 157,\n  \"á</w>\": 413,\n  \"á´\": 19036,\n  \"áµ\": 17330,\n  \"áĢ\": 45932,\n  \"áĥ\": 24829,\n  \"áĥ¦</w>\": 32193,\n  \"â\": 158,\n  \"â</w>\": 414,\n  \"â¤\": 25087,\n  \"â¤µï¸ı</w>\": 36026,\n  \"â¬\": 7930,\n  \"â¬ħï¸ı</w>\": 42111,\n  \"â¬Ĩ\": 27718,\n  \"â¬Ĩï¸ı</w>\": 32798,\n  \"â¬ĩ\": 10917,\n  \"â¬ĩ</w>\": 39370,\n  \"â¬ĩï¸ı\": 25621,\n  \"â¬ĩï¸ı</w>\": 13984,\n  \"â¬ĩï¸ıâ¬ĩï¸ı\": 40159,\n  \"âĢ\": 728,\n  \"âĢ¢\": 9485,\n  \"âĢ¢</w>\": 2701,\n  \"âĢ¢âĢ¢\": 15006,\n  \"âĢ¢âĢ¢</w>\": 47575,\n  \"âĢ¢âĢ¢âĢ¢âĢ¢\": 27502,\n  \"âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢\": 48630,\n  \"âĢ¦\": 7095,\n  \"âĢ¦\\\"</w>\": 20215,\n  \"âĢ¦..</w>\": 47779,\n  \"âĢ¦.</w>\": 18615,\n  \"âĢ¦/</w>\": 29842,\n  \"âĢ¦</w>\": 959,\n  \"âĢ¦âĢ¦</w>\": 40066,\n  \"âĢ²</w>\": 32633,\n  \"âĢ³</w>\": 25061,\n  \"âĢ¼\": 6578,\n  \"âĢ¼ï¸ı\": 15622,\n  \"âĢ¼ï¸ı</w>\": 8310,\n  \"âĢ¼ï¸ıâĢ¼ï¸ı</w>\": 33218,\n  \"âĢĭ\": 17086,\n  \"âĢĭ</w>\": 9844,\n  \"âĢį\": 4244,\n  \"âĢįâĻ\": 5177,\n  \"âĢįâĻĢï¸ı\": 18897,\n  \"âĢįâĻĢï¸ı</w>\": 9605,\n  \"âĢįâĻĤ\": 8832,\n  \"âĢįâĻĤï¸ı\": 21779,\n  \"âĢįâĻĤï¸ı</w>\": 10613,\n  \"âĢİ</w>\": 31001,\n  \"âĢĲ</w>\": 34512,\n  \"âĢĵ\": 21070,\n  \"âĢĵ</w>\": 1224,\n  \"âĢĶ\": 6718,\n  \"âĢĶ</w>\": 2005,\n  \"âĢĶ></w>\": 26341,\n  \"âĢĶ@</w>\": 28470,\n  \"âĢĶâĢĶ\": 10037,\n  \"âĢĶâĢĶ</w>\": 44800,\n  \"âĢĶâĢĶâĢĶâĢĶ\": 17797,\n  \"âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ\": 34432,\n  \"âĢķ</w>\": 14236,\n  \"âģ\": 1667,\n  \"âģ£\": 31089,\n  \"âģ£</w>\": 16845,\n  \"âģ¦\": 2773,\n  \"âģ¦</w>\": 34855,\n  \"âģ¦@</w>\": 2859,\n  \"âģ¦âģ¦@</w>\": 27783,\n  \"âģ©\": 20097,\n  \"âģ©,</w>\": 48749,\n  \"âģ©.</w>\": 35777,\n  \"âģ©</w>\": 2918,\n  \"âģīï¸ı</w>\": 46534,\n  \"âģł\": 23881,\n  \"âģł</w>\": 13503,\n  \"âģłâģł</w>\": 33488,\n  \"âĤ\": 5227,\n  \"âĤ¬\": 34919,\n  \"âĤ¬</w>\": 6309,\n  \"âĤ¹</w>\": 21777,\n  \"âĥ\": 2805,\n  \"âĥ£\": 11250,\n  \"âĥ£</w>\": 3076,\n  \"âĥ£@</w>\": 48291,\n  \"âĦ\": 8604,\n  \"âĦ¢\": 29438,\n  \"âĦ¢</w>\": 11675,\n  \"âĦ¹</w>\": 45462,\n  \"âĨ\": 6059,\n  \"âĨĴ</w>\": 7481,\n  \"âĨĵ</w>\": 41603,\n  \"âĩ\": 27228,\n  \"âĪ\": 17788,\n  \"âī\": 22684,\n  \"âīĪ</w>\": 45451,\n  \"âĮ\": 17848,\n  \"âĮļ\": 31301,\n  \"âĮļï¸ı</w>\": 35931,\n  \"âı\": 7960,\n  \"âı©</w>\": 40847,\n  \"âı°</w>\": 12714,\n  \"âı±</w>\": 33149,\n  \"âı³</w>\": 47617,\n  \"âĵ\": 27400,\n  \"âĶ\": 13389,\n  \"âĶĢ\": 45139,\n  \"âĶģ\": 42022,\n  \"âķ\": 17027,\n  \"âķĲ\": 48039,\n  \"âĸ\": 4168,\n  \"âĸª\": 21203,\n  \"âĸª</w>\": 36628,\n  \"âĸªï¸ı</w>\": 24974,\n  \"âĸ«\": 39478,\n  \"âĸ¬\": 33798,\n  \"âĸ¬âĸ¬\": 36975,\n  \"âĸ¶\": 12509,\n  \"âĸ¶</w>\": 21126,\n  \"âĸ¶ï¸ı</w>\": 14442,\n  \"âĸº\": 46061,\n  \"âĸº</w>\": 12086,\n  \"âĸ½\": 45634,\n  \"âĸł</w>\": 36791,\n  \"âĹ\": 9323,\n  \"âĹĨ</w>\": 48961,\n  \"âĹı</w>\": 26999,\n  \"âĺ\": 1741,\n  \"âĺ®</w>\": 45851,\n  \"âĺ¹\": 28811,\n  \"âĺ¹ï¸ı</w>\": 39605,\n  \"âĺº\": 5010,\n  \"âĺº</w>\": 8703,\n  \"âĺºâĺº</w>\": 46051,\n  \"âĺºï¸ı\": 11506,\n  \"âĺºï¸ı</w>\": 7779,\n  \"âĺºï¸ıâĺºï¸ı</w>\": 41315,\n  \"âĺ¼</w>\": 38877,\n  \"âĺĢ\": 32146,\n  \"âĺĢ</w>\": 22242,\n  \"âĺĢï¸ı\": 12817,\n  \"âĺĢï¸ı</w>\": 8219,\n  \"âĺĢï¸ıâĺĢï¸ı\": 44550,\n  \"âĺģ\": 25195,\n  \"âĺģï¸ı</w>\": 35197,\n  \"âĺĥ\": 38972,\n  \"âĺħ\": 9339,\n  \"âĺħ</w>\": 10643,\n  \"âĺħâĺħ\": 12681,\n  \"âĺħâĺħ</w>\": 36644,\n  \"âĺħâĺħâĺħâĺħ\": 34431,\n  \"âĺħâĺħâĺħâĺħ</w>\": 44034,\n  \"âĺħâĺħâĺħâĺħâĺħ</w>\": 45984,\n  \"âĺĨ\": 23941,\n  \"âĺĨ</w>\": 13439,\n  \"âĺİ\": 24045,\n  \"âĺİ</w>\": 45493,\n  \"âĺİï¸ı</w>\": 27219,\n  \"âĺĳ\": 20983,\n  \"âĺĳ</w>\": 42300,\n  \"âĺĳï¸ı</w>\": 22291,\n  \"âĺĶï¸ı</w>\": 31238,\n  \"âĺķ\": 11454,\n  \"âĺķ</w>\": 26561,\n  \"âĺķï¸ı\": 25839,\n  \"âĺķï¸ı</w>\": 15499,\n  \"âĺĺ\": 23483,\n  \"âĺĺï¸ı</w>\": 31454,\n  \"âĺĿ\": 21982,\n  \"âĺĿï¸ı</w>\": 38891,\n  \"âĺŀ</w>\": 31255,\n  \"âĺłï¸ı</w>\": 34672,\n  \"âĻ\": 1548,\n  \"âĻ¡\": 11091,\n  \"âĻ¡</w>\": 6251,\n  \"âĻ¡âĻ¡\": 22360,\n  \"âĻ¡âĻ¡</w>\": 34267,\n  \"âĻ¡âĻ¡âĻ¡</w>\": 36611,\n  \"âĻ¤</w>\": 47435,\n  \"âĻ¥\": 4622,\n  \"âĻ¥</w>\": 3405,\n  \"âĻ¥âĻ¥\": 12975,\n  \"âĻ¥âĻ¥</w>\": 19604,\n  \"âĻ¥âĻ¥âĻ¥</w>\": 23255,\n  \"âĻ¥âĻ¥âĻ¥âĻ¥\": 49020,\n  \"âĻ¥ï¸ı\": 17774,\n  \"âĻ¥ï¸ı</w>\": 10561,\n  \"âĻ¥ï¸ıâĻ¥ï¸ı\": 40309,\n  \"âĻ¦\": 32376,\n  \"âĻ¦</w>\": 47547,\n  \"âĻ©\": 30339,\n  \"âĻ©âĻ«</w>\": 31636,\n  \"âĻª\": 27364,\n  \"âĻª</w>\": 12382,\n  \"âĻ«\": 39217,\n  \"âĻ«</w>\": 10814,\n  \"âĻ¬</w>\": 24753,\n  \"âĻ»\": 39611,\n  \"âĻ»ï¸ı</w>\": 46075,\n  \"âļ\": 2234,\n  \"âļ¡\": 40098,\n  \"âļ¡</w>\": 20712,\n  \"âļ¡ï¸ı\": 19500,\n  \"âļ¡ï¸ı</w>\": 11605,\n  \"âļ¡ï¸ıâļ¡ï¸ı</w>\": 45922,\n  \"âļª\": 11922,\n  \"âļª</w>\": 36373,\n  \"âļªï¸ı\": 22251,\n  \"âļªï¸ı</w>\": 17885,\n  \"âļ«\": 15374,\n  \"âļ«ï¸ı\": 26529,\n  \"âļ«ï¸ı</w>\": 24649,\n  \"âļ½\": 4867,\n  \"âļ½</w>\": 13173,\n  \"âļ½âļ½\": 43259,\n  \"âļ½ï¸ı\": 11342,\n  \"âļ½ï¸ı</w>\": 6768,\n  \"âļ½ï¸ıâļ½ï¸ı\": 30358,\n  \"âļ½ï¸ıâļ½ï¸ı</w>\": 44148,\n  \"âļ¾\": 11314,\n  \"âļ¾</w>\": 34717,\n  \"âļ¾ï¸ı\": 24727,\n  \"âļ¾ï¸ı</w>\": 14858,\n  \"âļĵ\": 23522,\n  \"âļĵï¸ı</w>\": 35299,\n  \"âļĶï¸ı</w>\": 29361,\n  \"âļľ\": 47491,\n  \"âļł</w>\": 39203,\n  \"âļłï¸ı\": 40966,\n  \"âļłï¸ı</w>\": 15596,\n  \"âĽ\": 7956,\n  \"âĽ³ï¸ı</w>\": 29204,\n  \"âĽĦ\": 30668,\n  \"âĽĦï¸ı</w>\": 45465,\n  \"âľ\": 1508,\n  \"âľ¨\": 7181,\n  \"âľ¨</w>\": 3531,\n  \"âľ¨âľ¨\": 35174,\n  \"âľ¨âľ¨</w>\": 21985,\n  \"âľ¨âľ¨âľ¨</w>\": 39424,\n  \"âľĤ\": 38602,\n  \"âľħ\": 29544,\n  \"âľħ</w>\": 5564,\n  \"âľĪ\": 10682,\n  \"âľĪ</w>\": 30712,\n  \"âľĪï¸ı\": 26176,\n  \"âľĪï¸ı</w>\": 13413,\n  \"âľĬ\": 12392,\n  \"âľĬ</w>\": 17819,\n  \"âľĬðŁı½</w>\": 48547,\n  \"âľĬðŁı¾</w>\": 41185,\n  \"âľĭ\": 39383,\n  \"âľĭ</w>\": 30239,\n  \"âľĮ\": 6419,\n  \"âľĮ</w>\": 12656,\n  \"âľĮï¸ı\": 21906,\n  \"âľĮï¸ı</w>\": 12239,\n  \"âľĮðŁı»</w>\": 30538,\n  \"âľĮðŁı¼</w>\": 30588,\n  \"âľį\": 20872,\n  \"âľįï¸ı</w>\": 30888,\n  \"âľı\": 32574,\n  \"âľıï¸ı</w>\": 40724,\n  \"âľĵ</w>\": 36700,\n  \"âľĶ\": 47200,\n  \"âľĶ</w>\": 13749,\n  \"âľĶï¸ı\": 40544,\n  \"âľĶï¸ı</w>\": 9191,\n  \"âľĸï¸ı</w>\": 44133,\n  \"âľĿ\": 42220,\n  \"âĿ\": 1045,\n  \"âĿ£\": 37007,\n  \"âĿ£</w>\": 25623,\n  \"âĿ£ï¸ı</w>\": 25240,\n  \"âĿ¤\": 1266,\n  \"âĿ¤</w>\": 2720,\n  \"âĿ¤âĿ¤\": 9033,\n  \"âĿ¤âĿ¤</w>\": 14058,\n  \"âĿ¤âĿ¤âĿ¤</w>\": 16708,\n  \"âĿ¤âĿ¤âĿ¤âĿ¤\": 37918,\n  \"âĿ¤âĿ¤âĿ¤âĿ¤</w>\": 43970,\n  \"âĿ¤ï¸ı\": 2626,\n  \"âĿ¤ï¸ı#</w>\": 30281,\n  \"âĿ¤ï¸ı.</w>\": 45326,\n  \"âĿ¤ï¸ı</w>\": 1752,\n  \"âĿ¤ï¸ı@</w>\": 31187,\n  \"âĿ¤ï¸ıâĿ¤ï¸ı\": 6713,\n  \"âĿ¤ï¸ıâĿ¤ï¸ı</w>\": 10363,\n  \"âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı</w>\": 12282,\n  \"âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı\": 39167,\n  \"âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı</w>\": 29880,\n  \"âĿ¤ï¸ıðŁĴĻ</w>\": 37380,\n  \"âĿ¤ï¸ıðŁĺį</w>\": 37272,\n  \"âĿ¤ï¸ıðŁĺĺ</w>\": 41800,\n  \"âĿ¤ðŁĺį</w>\": 49120,\n  \"âĿ¥</w>\": 36914,\n  \"âĿĦ\": 8501,\n  \"âĿĦ</w>\": 30494,\n  \"âĿĦï¸ı\": 16834,\n  \"âĿĦï¸ı</w>\": 12402,\n  \"âĿĦï¸ıâĿĦï¸ı\": 41626,\n  \"âĿĮ\": 44485,\n  \"âĿĮ</w>\": 17975,\n  \"âĿĵ</w>\": 29791,\n  \"âĿĹ\": 12868,\n  \"âĿĹ</w>\": 29079,\n  \"âĿĹï¸ı\": 28642,\n  \"âĿĹï¸ı</w>\": 17391,\n  \"âĿĿ</w>\": 46951,\n  \"âŀ\": 3257,\n  \"âŀ¡</w>\": 12854,\n  \"âŀ¡ï¸ı\": 31860,\n  \"âŀ¡ï¸ı</w>\": 4956,\n  \"âŀ¤</w>\": 18651,\n  \"âŀķ</w>\": 46526,\n  \"âŀĸ\": 21327,\n  \"âŀĸ</w>\": 34902,\n  \"âŀĸâŀĸ\": 23316,\n  \"âŀĸâŀĸâŀĸâŀĸ\": 40401,\n  \"âŀľ</w>\": 23775,\n  \"âł\": 5689,\n  \"âłĢ\": 9691,\n  \"âłĢ</w>\": 8621,\n  \"âłĢâłĢ\": 11466,\n  \"âłĢâłĢ</w>\": 39092,\n  \"âłĢâłĢâłĢâłĢ\": 20976,\n  \"âłĢâłĢâłĢâłĢâłĢâłĢâłĢâłĢ\": 46063,\n  \"âŃ\": 5527,\n  \"âŃĲ\": 6410,\n  \"âŃĲ</w>\": 19012,\n  \"âŃĲâŃĲ\": 32663,\n  \"âŃĲï¸ı\": 12427,\n  \"âŃĲï¸ı</w>\": 10251,\n  \"âŃĲï¸ıâŃĲï¸ı\": 18640,\n  \"âŃĲï¸ıâŃĲï¸ıâŃĲï¸ı</w>\": 40746,\n  \"ã\": 159,\n  \"ã</w>\": 415,\n  \"ãĢ\": 4092,\n  \"ãĢģ</w>\": 45262,\n  \"ãĢĤ\": 38060,\n  \"ãĢĤ</w>\": 38000,\n  \"ãĢĬ</w>\": 39920,\n  \"ãĢĭ</w>\": 32898,\n  \"ãĢĮ</w>\": 18116,\n  \"ãĢį</w>\": 19149,\n  \"ãĢİ</w>\": 26947,\n  \"ãĢı</w>\": 30293,\n  \"ãĢĲ</w>\": 12534,\n  \"ãĢĳ</w>\": 12990,\n  \"ãĢľ</w>\": 39581,\n  \"ãģ\": 4813,\n  \"ãģ¦\": 48029,\n  \"ãģ¨\": 34671,\n  \"ãģ¨ç¹ĭãģ\": 47310,\n  \"ãģ¨ç¹ĭãģĮãĤĬãģŁãģĦ</w>\": 48290,\n  \"ãģª\": 29104,\n  \"ãģ®\": 21575,\n  \"ãģ·\": 44130,\n  \"ãģĦ\": 33523,\n  \"ãģĦ</w>\": 38850,\n  \"ãģĨ\": 44235,\n  \"ãģį\": 42184,\n  \"ãĤ\": 3909,\n  \"ãĤ¢\": 26560,\n  \"ãĤ¤\": 19319,\n  \"ãĤ¤ãĥ\": 36294,\n  \"ãĤ«\": 37367,\n  \"ãĤ¯\": 31574,\n  \"ãĤ·\": 37665,\n  \"ãĤ¸\": 32234,\n  \"ãĤ¸ãĥ\": 43491,\n  \"ãĤ¹\": 22694,\n  \"ãĤ¹</w>\": 39220,\n  \"ãĤ¹ãĥ\": 32421,\n  \"ãĤ¿\": 34941,\n  \"ãĤĬãģ\": 40500,\n  \"ãĤĮ</w>\": 45211,\n  \"ãĤŃ\": 47121,\n  \"ãĥ\": 2429,\n  \"ãĥ©\": 23007,\n  \"ãĥª\": 32115,\n  \"ãĥ«\": 33257,\n  \"ãĥ¬\": 32965,\n  \"ãĥ³\": 17671,\n  \"ãĥ³</w>\": 26875,\n  \"ãĥ³ãĤ\": 45105,\n  \"ãĥ³ãĥ\": 25914,\n  \"ãĥ»\": 8415,\n  \"ãĥ»</w>\": 11158,\n  \"ãĥ»ãĥ»\": 13949,\n  \"ãĥ»ãĥ»ãĥ»</w>\": 14234,\n  \"ãĥ¼\": 13457,\n  \"ãĥ¼</w>\": 30391,\n  \"ãĥ¼ãĥ\": 18584,\n  \"ãĥĥ\": 28902,\n  \"ãĥĦ</w>\": 32173,\n  \"ãĥĪ\": 42384,\n  \"ãĥİ</w>\": 39967,\n  \"ãĥķãĤ\": 33371,\n  \"ãĥŀ\": 48924,\n  \"ãĥŃ\": 35827,\n  \"ãħ\": 5947,\n  \"ãħ¤\": 21096,\n  \"ãħ¤ãħ¤\": 22583,\n  \"ãħ¤ãħ¤ãħ¤ãħ¤\": 39329,\n  \"ãħĭ\": 13052,\n  \"ãħĭ</w>\": 25108,\n  \"ãħĭãħĭ\": 16604,\n  \"ãħĭãħĭ</w>\": 42581,\n  \"ãħĭãħĭãħĭ</w>\": 46407,\n  \"ãħĭãħĭãħĭãħĭ\": 39362,\n  \"ãħł\": 16089,\n  \"ãħł</w>\": 25781,\n  \"ãħłãħł\": 22021,\n  \"ãħłãħł</w>\": 34398,\n  \"ãħłãħłãħłãħł\": 47028,\n  \"ä\": 160,\n  \"ä</w>\": 416,\n  \"ä¸\": 19759,\n  \"ä¹\": 41854,\n  \"äº\": 21078,\n  \"äºº\": 36839,\n  \"ä»\": 37743,\n  \"ä½\": 47466,\n  \"å\": 161,\n  \"å</w>\": 417,\n  \"å¤\": 23170,\n  \"å¥\": 29290,\n  \"å®\": 27047,\n  \"å°\": 34720,\n  \"å±\": 46096,\n  \"å¸\": 42021,\n  \"å¹\": 38780,\n  \"åħ\": 34314,\n  \"åĨ\": 27972,\n  \"åĨĻ\": 44653,\n  \"åĪ\": 42748,\n  \"åĭ\": 47505,\n  \"åı\": 34517,\n  \"åĲ\": 41673,\n  \"åĽ\": 39027,\n  \"åľ\": 37746,\n  \"åŃ\": 35751,\n  \"æ\": 162,\n  \"æ</w>\": 418,\n  \"æĸ\": 29032,\n  \"æĹ\": 22265,\n  \"æĹ¥\": 39121,\n  \"æĹ¥</w>\": 37156,\n  \"æĺ\": 42891,\n  \"æĻ\": 48132,\n  \"æľ\": 19277,\n  \"æľ¬\": 44353,\n  \"æĿ\": 27667,\n  \"æĿ±\": 48338,\n  \"ç\": 163,\n  \"ç</w>\": 419,\n  \"ç¥\": 26369,\n  \"ç¥Ń</w>\": 42557,\n  \"çµ\": 37810,\n  \"ç¹\": 43431,\n  \"ç¹ĭãģ\": 45930,\n  \"çĶ\": 20211,\n  \"çĶŁ\": 33375,\n  \"çľ\": 33440,\n  \"çľŁ\": 41570,\n  \"è\": 164,\n  \"è</w>\": 420,\n  \"èª\": 34002,\n  \"èªķ\": 41293,\n  \"é\": 165,\n  \"é</w>\": 421,\n  \"éģ\": 44854,\n  \"éĩ\": 38283,\n  \"ê\": 166,\n  \"ê</w>\": 422,\n  \"ê°\": 21122,\n  \"ê°ĵ\": 41076,\n  \"ê°ĵìĦ¸ë¸Ĳ</w>\": 41689,\n  \"ê°ķ\": 45758,\n  \"ê²\": 35555,\n  \"ê³\": 36216,\n  \"êµ\": 31871,\n  \"ê·\": 42680,\n  \"ê¸\": 32495,\n  \"ê¹\": 24531,\n  \"ê¹Ģ\": 25203,\n  \"ë\": 167,\n  \"ë</w>\": 423,\n  \"ë¦\": 24621,\n  \"ë¦¬\": 47649,\n  \"ë§\": 28024,\n  \"ë§Ī\": 40027,\n  \"ëª\": 36311,\n  \"ë¯\": 19528,\n  \"ë¯¼\": 34442,\n  \"ë¯¼</w>\": 44632,\n  \"ë°\": 15810,\n  \"ë°©\": 23273,\n  \"ë°©íĥ\": 25081,\n  \"ë°©íĥĦ\": 25641,\n  \"ë°©íĥĦìĨĮëħĦëĭ\": 26068,\n  \"ë°©íĥĦìĨĮëħĦëĭ¨</w>\": 27129,\n  \"ë°ķ\": 40988,\n  \"ë²\": 48267,\n  \"ë³\": 44693,\n  \"ë¹\": 24193,\n  \"ëĤ\": 27252,\n  \"ëĤĺ\": 48484,\n  \"ëĭ\": 13094,\n  \"ëĭ¤\": 46680,\n  \"ëĭĪ\": 33708,\n  \"ëį\": 45543,\n  \"ëı\": 31972,\n  \"ëĵ\": 30850,\n  \"ëĿ\": 44317,\n  \"ì\": 168,\n  \"ì</w>\": 424,\n  \"ì£\": 39856,\n  \"ì£¼\": 45161,\n  \"ì¤\": 31153,\n  \"ì§\": 16279,\n  \"ì§Ģ\": 28836,\n  \"ì§Ħ</w>\": 38890,\n  \"ì°\": 40742,\n  \"ì¶\": 42476,\n  \"ì¶ķ\": 46403,\n  \"ì¶ķíķĺ\": 47866,\n  \"ì¹\": 45088,\n  \"ìĤ\": 31061,\n  \"ìĥ\": 30587,\n  \"ìĥĿ\": 47858,\n  \"ìĦ\": 15074,\n  \"ìĦ¸ë\": 29254,\n  \"ìĦ¸ë¸\": 29658,\n  \"ìĦ¸ë¸Ĳ</w>\": 41415,\n  \"ìĨ\": 15115,\n  \"ìĨĮë\": 20515,\n  \"ìĨĮëħ\": 21391,\n  \"ìĨĮëħĦëĭ\": 25887,\n  \"ìĪ\": 32757,\n  \"ìĬ\": 12125,\n  \"ìĬ¤\": 20305,\n  \"ìĬ¤</w>\": 23829,\n  \"ìĭ\": 23924,\n  \"ìķ\": 16071,\n  \"ìķĦ\": 23233,\n  \"ìĸ\": 31625,\n  \"ìĹ\": 13252,\n  \"ìĹĲ\": 37622,\n  \"ìĹĳ\": 31036,\n  \"ìĹĳìĨ\": 42763,\n  \"ìĹĳìĨĮ</w>\": 45606,\n  \"ìĺ\": 21144,\n  \"ìĻ\": 39405,\n  \"ìļ\": 18541,\n  \"ìļ°\": 38415,\n  \"ìļ°</w>\": 49344,\n  \"ìĽ\": 22543,\n  \"ìĽĲ</w>\": 36495,\n  \"ìľ\": 20909,\n  \"ìľł\": 42890,\n  \"ìĿ\": 8276,\n  \"ìĿ´\": 12286,\n  \"ìĿ´</w>\": 34746,\n  \"ìĿ´ì\": 37590,\n  \"ìĿ¼\": 43406,\n  \"ìŀ\": 20849,\n  \"ìł\": 20580,\n  \"ìłķ\": 34725,\n  \"í\": 169,\n  \"í</w>\": 425,\n  \"íģ\": 35641,\n  \"íģ¬</w>\": 45832,\n  \"íĤ\": 43565,\n  \"íĥ\": 15012,\n  \"íĥĢ\": 41126,\n  \"íĥľ\": 37663,\n  \"íĬ\": 23215,\n  \"íĬ¸\": 48974,\n  \"íĬ¸</w>\": 39820,\n  \"íĭ\": 34350,\n  \"íĶ\": 29450,\n  \"íķ\": 15197,\n  \"íķ´</w>\": 35286,\n  \"íķĺ\": 33992,\n  \"íĺ\": 15962,\n  \"íĺ¸</w>\": 39657,\n  \"íĺĦ</w>\": 34645,\n  \"íĻ\": 31882,\n  \"î\": 170,\n  \"î</w>\": 426,\n  \"îĢ\": 36288,\n  \"îĦ\": 35368,\n  \"îĮ\": 41006,\n  \"îĲ\": 16929,\n  \"îĲĴ\": 40100,\n  \"ï\": 171,\n  \"ï</w>\": 427,\n  \"ï¸\": 842,\n  \"ï¸İ</w>\": 24029,\n  \"ï¸ı\": 1392,\n  \"ï¸ı#</w>\": 46997,\n  \"ï¸ı:</w>\": 32604,\n  \"ï¸ı</w>\": 1001,\n  \"ï¸ı@</w>\": 34600,\n  \"ï¸ıâĥ£\": 17394,\n  \"ï¸ıâĥ£-</w>\": 40376,\n  \"ï¸ıâĥ£</w>\": 4603,\n  \"ï¿\": 27850,\n  \"ï¿½\": 47356,\n  \"ï¿½</w>\": 39802,\n  \"ð\": 172,\n  \"ð</w>\": 428,\n  \"ðĿ\": 6874,\n  \"ðĿĲ\": 15889,\n  \"ðĿĳ\": 43794,\n  \"ðĿĴ\": 43387,\n  \"ðĿĵ\": 47110,\n  \"ðĿĹ\": 18865,\n  \"ðĿĺ\": 26109,\n  \"ðĿĻ\": 29415,\n  \"ðŁ\": 558,\n  \"ðŁ¤\": 1793,\n  \"ðŁ¤£\": 9665,\n  \"ðŁ¤£</w>\": 9909,\n  \"ðŁ¤£ðŁ¤£\": 16430,\n  \"ðŁ¤£ðŁ¤£</w>\": 31009,\n  \"ðŁ¤£ðŁ¤£ðŁ¤£</w>\": 32262,\n  \"ðŁ¤¤\": 39550,\n  \"ðŁ¤¤</w>\": 26759,\n  \"ðŁ¤¦\": 17186,\n  \"ðŁ¤§</w>\": 40983,\n  \"ðŁ¤©\": 27351,\n  \"ðŁ¤©</w>\": 16074,\n  \"ðŁ¤ª\": 44230,\n  \"ðŁ¤ª</w>\": 24920,\n  \"ðŁ¤«</w>\": 47671,\n  \"ðŁ¤¯</w>\": 37595,\n  \"ðŁ¤·\": 13185,\n  \"ðŁ¤·ðŁı»âĢįâĻĢï¸ı</w>\": 46770,\n  \"ðŁ¤ĳ</w>\": 34801,\n  \"ðŁ¤ĵ\": 36580,\n  \"ðŁ¤ĵ</w>\": 18928,\n  \"ðŁ¤Ķ\": 12706,\n  \"ðŁ¤Ķ</w>\": 6497,\n  \"ðŁ¤ĶðŁ¤Ķ</w>\": 28490,\n  \"ðŁ¤ĶðŁ¤ĶðŁ¤Ķ</w>\": 43361,\n  \"ðŁ¤ĸ</w>\": 46146,\n  \"ðŁ¤Ĺ\": 16646,\n  \"ðŁ¤Ĺ</w>\": 10465,\n  \"ðŁ¤ĹðŁ¤Ĺ</w>\": 44321,\n  \"ðŁ¤ĺ\": 10623,\n  \"ðŁ¤ĺ</w>\": 17288,\n  \"ðŁ¤ĺðŁı»\": 46449,\n  \"ðŁ¤ĺðŁı»</w>\": 30891,\n  \"ðŁ¤ĺðŁı¼</w>\": 31458,\n  \"ðŁ¤ĺðŁı½</w>\": 49362,\n  \"ðŁ¤Ļ\": 23800,\n  \"ðŁ¤Ļ</w>\": 39101,\n  \"ðŁ¤Ŀ</w>\": 35242,\n  \"ðŁ¤ŀ\": 29463,\n  \"ðŁ¤ŀ</w>\": 38597,\n  \"ðŁ¤Ł\": 48509,\n  \"ðŁ¤ł</w>\": 36737,\n  \"ðŁ¤Ń</w>\": 47289,\n  \"ðŁ¥\": 4156,\n  \"ðŁ¥°\": 29246,\n  \"ðŁ¥°</w>\": 17597,\n  \"ðŁ¥³\": 45823,\n  \"ðŁ¥³</w>\": 28055,\n  \"ðŁ¥º\": 43380,\n  \"ðŁ¥º</w>\": 36858,\n  \"ðŁ¥Ĥ\": 43805,\n  \"ðŁ¥Ĥ</w>\": 25212,\n  \"ðŁ¥ĥ</w>\": 47790,\n  \"ðŁ¥ĩ\": 34372,\n  \"ðŁ¥ĩ</w>\": 20069,\n  \"ðŁ¥Ī</w>\": 35858,\n  \"ðŁ¥ī</w>\": 36782,\n  \"ðŁ¥Ĭ</w>\": 29275,\n  \"ðŁ¦\": 6040,\n  \"ðŁ¦ģ\": 36367,\n  \"ðŁ¦ģ</w>\": 26056,\n  \"ðŁ¦ĥ</w>\": 40184,\n  \"ðŁ¦Ħ</w>\": 37659,\n  \"ðŁ¦ħ</w>\": 28800,\n  \"ðŁ¦Ī</w>\": 48984,\n  \"ðŁ¦ĭ\": 49325,\n  \"ðŁ¦ĭ</w>\": 28985,\n  \"ðŁ§\": 8792,\n  \"ðŁ§¡\": 30996,\n  \"ðŁ§¡</w>\": 24578,\n  \"ðŁ§Ĳ</w>\": 33549,\n  \"ðŁħ\": 22010,\n  \"ðŁĨ\": 9536,\n  \"ðŁĨķ</w>\": 34956,\n  \"ðŁĨĺ</w>\": 39868,\n  \"ðŁĨļ</w>\": 16325,\n  \"ðŁĩ\": 1173,\n  \"ðŁĩ¦\": 12469,\n  \"ðŁĩ¦</w>\": 28565,\n  \"ðŁĩ¦ðŁĩ\": 33196,\n  \"ðŁĩ¦ðŁĩ·</w>\": 41629,\n  \"ðŁĩ¦ðŁĩº</w>\": 25192,\n  \"ðŁĩ§\": 14660,\n  \"ðŁĩ§ðŁĩ\": 37342,\n  \"ðŁĩ§ðŁĩª</w>\": 38794,\n  \"ðŁĩ§ðŁĩ·</w>\": 28182,\n  \"ðŁĩ¨\": 8889,\n  \"ðŁĩ¨ðŁĩ\": 8989,\n  \"ðŁĩ¨ðŁĩ¦\": 34324,\n  \"ðŁĩ¨ðŁĩ¦</w>\": 16364,\n  \"ðŁĩ¨ðŁĩ³</w>\": 36819,\n  \"ðŁĩ¨ðŁĩŃ</w>\": 41119,\n  \"ðŁĩ©\": 15222,\n  \"ðŁĩ©ðŁĩ\": 36350,\n  \"ðŁĩ©ðŁĩª</w>\": 21531,\n  \"ðŁĩª\": 11428,\n  \"ðŁĩª</w>\": 12331,\n  \"ðŁĩªðŁĩ\": 13917,\n  \"ðŁĩªðŁĩ¸</w>\": 22177,\n  \"ðŁĩªðŁĩº</w>\": 34655,\n  \"ðŁĩ«\": 12977,\n  \"ðŁĩ«ðŁĩ·\": 39109,\n  \"ðŁĩ«ðŁĩ·</w>\": 16223,\n  \"ðŁĩ¬\": 8129,\n  \"ðŁĩ¬ðŁĩ\": 8354,\n  \"ðŁĩ¬ðŁĩ§\": 23762,\n  \"ðŁĩ¬ðŁĩ§</w>\": 11559,\n  \"ðŁĩ®\": 8268,\n  \"ðŁĩ®ðŁĩ\": 8347,\n  \"ðŁĩ®ðŁĩª</w>\": 34148,\n  \"ðŁĩ®ðŁĩ³\": 47299,\n  \"ðŁĩ®ðŁĩ³</w>\": 23602,\n  \"ðŁĩ®ðŁĩ¹\": 42034,\n  \"ðŁĩ®ðŁĩ¹</w>\": 17070,\n  \"ðŁĩ¯\": 20090,\n  \"ðŁĩ¯ðŁĩ\": 22924,\n  \"ðŁĩ¯ðŁĩµ</w>\": 26527,\n  \"ðŁĩ°\": 28232,\n  \"ðŁĩ±\": 29533,\n  \"ðŁĩ±ðŁĩ\": 40941,\n  \"ðŁĩ²\": 16411,\n  \"ðŁĩ²ðŁĩ\": 17562,\n  \"ðŁĩ²ðŁĩ½</w>\": 32073,\n  \"ðŁĩ³\": 16645,\n  \"ðŁĩ³ðŁĩ\": 17747,\n  \"ðŁĩ³ðŁĩ±</w>\": 36747,\n  \"ðŁĩµ\": 12127,\n  \"ðŁĩµðŁĩ\": 13608,\n  \"ðŁĩµðŁĩ°</w>\": 37764,\n  \"ðŁĩµðŁĩ¹</w>\": 42621,\n  \"ðŁĩµðŁĩŃ</w>\": 42777,\n  \"ðŁĩ·\": 16026,\n  \"ðŁĩ·</w>\": 9869,\n  \"ðŁĩ·ðŁĩº</w>\": 37902,\n  \"ðŁĩ¸\": 19447,\n  \"ðŁĩ¸ðŁĩ\": 33325,\n  \"ðŁĩ¸ðŁĩª</w>\": 39260,\n  \"ðŁĩ¹\": 21810,\n  \"ðŁĩ¹ðŁĩ\": 36250,\n  \"ðŁĩº\": 4054,\n  \"ðŁĩº</w>\": 17467,\n  \"ðŁĩºðŁĩ\": 4131,\n  \"ðŁĩºðŁĩ¸\": 8907,\n  \"ðŁĩºðŁĩ¸</w>\": 5688,\n  \"ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸\": 18739,\n  \"ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸</w>\": 41411,\n  \"ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸</w>\": 43357,\n  \"ðŁĩ¿\": 25520,\n  \"ðŁĩ¿ðŁĩ¦</w>\": 36982,\n  \"ðŁĩŃ\": 30370,\n  \"ðŁĮ\": 1576,\n  \"ðŁĮ±\": 35318,\n  \"ðŁĮ±</w>\": 20665,\n  \"ðŁĮ²\": 34071,\n  \"ðŁĮ²</w>\": 28154,\n  \"ðŁĮ³\": 44265,\n  \"ðŁĮ³</w>\": 28543,\n  \"ðŁĮ´\": 20643,\n  \"ðŁĮ´</w>\": 15968,\n  \"ðŁĮµ</w>\": 40871,\n  \"ðŁĮ·\": 32328,\n  \"ðŁĮ·</w>\": 24259,\n  \"ðŁĮ¸\": 16314,\n  \"ðŁĮ¸</w>\": 10980,\n  \"ðŁĮ¸ðŁĮ¸\": 46210,\n  \"ðŁĮ¹\": 14990,\n  \"ðŁĮ¹</w>\": 10662,\n  \"ðŁĮ¹ðŁĮ¹\": 37933,\n  \"ðŁĮº\": 27608,\n  \"ðŁĮº</w>\": 19829,\n  \"ðŁĮ»\": 27196,\n  \"ðŁĮ»</w>\": 19772,\n  \"ðŁĮ¼\": 36484,\n  \"ðŁĮ¼</w>\": 26312,\n  \"ðŁĮ¾</w>\": 39796,\n  \"ðŁĮ¿\": 27736,\n  \"ðŁĮ¿</w>\": 18588,\n  \"ðŁĮĢ</w>\": 34348,\n  \"ðŁĮħ</w>\": 27547,\n  \"ðŁĮĪ\": 23038,\n  \"ðŁĮĪ</w>\": 13042,\n  \"ðŁĮĬ\": 20465,\n  \"ðŁĮĬ</w>\": 14302,\n  \"ðŁĮĮ</w>\": 43393,\n  \"ðŁĮį\": 34931,\n  \"ðŁĮį</w>\": 18641,\n  \"ðŁĮİ\": 31125,\n  \"ðŁĮİ</w>\": 16969,\n  \"ðŁĮı</w>\": 31527,\n  \"ðŁĮĲ</w>\": 33071,\n  \"ðŁĮĻ\": 42330,\n  \"ðŁĮĻ</w>\": 23283,\n  \"ðŁĮļ\": 49004,\n  \"ðŁĮļ</w>\": 27877,\n  \"ðŁĮŀ\": 21152,\n  \"ðŁĮŀ</w>\": 12980,\n  \"ðŁĮŁ\": 13196,\n  \"ðŁĮŁ</w>\": 8542,\n  \"ðŁĮŁðŁĮŁ\": 26014,\n  \"ðŁį\": 2011,\n  \"ðŁį¦\": 47375,\n  \"ðŁį¦</w>\": 32032,\n  \"ðŁį©</w>\": 38379,\n  \"ðŁįª</w>\": 38958,\n  \"ðŁį«\": 47994,\n  \"ðŁį«</w>\": 33401,\n  \"ðŁį°\": 43732,\n  \"ðŁį°</w>\": 30051,\n  \"ðŁį³</w>\": 37441,\n  \"ðŁį´\": 41531,\n  \"ðŁį´</w>\": 25338,\n  \"ðŁį·\": 24445,\n  \"ðŁį·</w>\": 18072,\n  \"ðŁį¸\": 43058,\n  \"ðŁį¸</w>\": 31217,\n  \"ðŁį¹</w>\": 35598,\n  \"ðŁįº\": 31081,\n  \"ðŁįº</w>\": 21590,\n  \"ðŁį»\": 22793,\n  \"ðŁį»</w>\": 13167,\n  \"ðŁį¾\": 27294,\n  \"ðŁį¾</w>\": 21656,\n  \"ðŁįĢ\": 22865,\n  \"ðŁįĢ</w>\": 15764,\n  \"ðŁįģ\": 29837,\n  \"ðŁįģ</w>\": 23075,\n  \"ðŁįĤ\": 35015,\n  \"ðŁįĤ</w>\": 25721,\n  \"ðŁįĥ\": 27157,\n  \"ðŁįĥ</w>\": 20147,\n  \"ðŁįĩ</w>\": 48697,\n  \"ðŁįĬ\": 35001,\n  \"ðŁįĬ</w>\": 28036,\n  \"ðŁįĭ</w>\": 39543,\n  \"ðŁįĮ</w>\": 44987,\n  \"ðŁįį</w>\": 48946,\n  \"ðŁįİ</w>\": 32069,\n  \"ðŁįĳ</w>\": 32889,\n  \"ðŁįĴ</w>\": 33160,\n  \"ðŁįĵ\": 44739,\n  \"ðŁįĵ</w>\": 33456,\n  \"ðŁįĶ\": 46415,\n  \"ðŁįĶ</w>\": 36031,\n  \"ðŁįķ\": 31469,\n  \"ðŁįķ</w>\": 23904,\n  \"ðŁįŃ</w>\": 42100,\n  \"ðŁİ\": 1165,\n  \"ðŁİ£</w>\": 43158,\n  \"ðŁİ¤\": 23490,\n  \"ðŁİ¤</w>\": 15690,\n  \"ðŁİ¥\": 22186,\n  \"ðŁİ¥:</w>\": 43640,\n  \"ðŁİ¥</w>\": 13233,\n  \"ðŁİ§\": 31254,\n  \"ðŁİ§</w>\": 14266,\n  \"ðŁİ¨\": 31953,\n  \"ðŁİ¨</w>\": 13461,\n  \"ðŁİ©</w>\": 37701,\n  \"ðŁİ«</w>\": 30331,\n  \"ðŁİ¬\": 36020,\n  \"ðŁİ¬</w>\": 18150,\n  \"ðŁİ®</w>\": 29312,\n  \"ðŁİ¯</w>\": 23114,\n  \"ðŁİµ\": 27435,\n  \"ðŁİµ</w>\": 14946,\n  \"ðŁİ¶\": 11755,\n  \"ðŁİ¶</w>\": 6011,\n  \"ðŁİ¶ðŁİ¶</w>\": 36283,\n  \"ðŁİ¸\": 29135,\n  \"ðŁİ¸</w>\": 22122,\n  \"ðŁİ¹</w>\": 43493,\n  \"ðŁİ¼\": 34949,\n  \"ðŁİ¼</w>\": 23757,\n  \"ðŁİ¾\": 41982,\n  \"ðŁİ¾</w>\": 24222,\n  \"ðŁİĢ\": 34347,\n  \"ðŁİĢ</w>\": 20151,\n  \"ðŁİģ\": 18368,\n  \"ðŁİģ</w>\": 13462,\n  \"ðŁİĤ\": 13026,\n  \"ðŁİĤ</w>\": 10392,\n  \"ðŁİĤðŁİĤ\": 39338,\n  \"ðŁİĥ\": 22622,\n  \"ðŁİĥ</w>\": 16780,\n  \"ðŁİĦ\": 12942,\n  \"ðŁİĦ</w>\": 11267,\n  \"ðŁİħ\": 17685,\n  \"ðŁİħ</w>\": 24276,\n  \"ðŁİĨ</w>\": 39222,\n  \"ðŁİĪ\": 16142,\n  \"ðŁİĪ</w>\": 14448,\n  \"ðŁİĪðŁİī</w>\": 48049,\n  \"ðŁİī\": 4310,\n  \"ðŁİī:</w>\": 17310,\n  \"ðŁİī</w>\": 3986,\n  \"ðŁİīðŁİ\": 11473,\n  \"ðŁİīðŁİĪ\": 40499,\n  \"ðŁİīðŁİĪ</w>\": 34008,\n  \"ðŁİīðŁİī\": 25159,\n  \"ðŁİīðŁİī</w>\": 13450,\n  \"ðŁİīðŁİīðŁİī</w>\": 20828,\n  \"ðŁİīðŁİĬ\": 31662,\n  \"ðŁİīðŁİĬ</w>\": 30781,\n  \"ðŁİĬ\": 22763,\n  \"ðŁİĬ</w>\": 22425,\n  \"ðŁİĬðŁİī</w>\": 48801,\n  \"ðŁİĵ\": 28916,\n  \"ðŁİĵ</w>\": 18744,\n  \"ðŁİĻ\": 29001,\n  \"ðŁİĻ</w>\": 29753,\n  \"ðŁİĻï¸ı</w>\": 44205,\n  \"ðŁİŁ\": 19248,\n  \"ðŁİŁ</w>\": 21107,\n  \"ðŁİŁï¸ı</w>\": 30243,\n  \"ðŁİŃ</w>\": 28856,\n  \"ðŁı\": 1109,\n  \"ðŁı¡</w>\": 27318,\n  \"ðŁı³ï¸ı\": 26844,\n  \"ðŁı³ï¸ıâĢį\": 27093,\n  \"ðŁı³ï¸ıâĢįðŁĮĪ</w>\": 32610,\n  \"ðŁı´\": 39690,\n  \"ðŁı´</w>\": 19704,\n  \"ðŁı»\": 5042,\n  \"ðŁı»</w>\": 3702,\n  \"ðŁı»âĢį\": 46250,\n  \"ðŁı»âĢįâĻĢï¸ı\": 48391,\n  \"ðŁı»âĢįâĻĢï¸ı</w>\": 23595,\n  \"ðŁı»âĢįâĻĤï¸ı</w>\": 30984,\n  \"ðŁı¼\": 6193,\n  \"ðŁı¼</w>\": 4027,\n  \"ðŁı¼âĢįâĻĢï¸ı</w>\": 28955,\n  \"ðŁı½\": 8514,\n  \"ðŁı½</w>\": 6114,\n  \"ðŁı½âĢįâĻĢï¸ı</w>\": 37036,\n  \"ðŁı½âĢįâĻĤï¸ı</w>\": 43157,\n  \"ðŁı¾\": 10230,\n  \"ðŁı¾</w>\": 7778,\n  \"ðŁı¾âĢįâĻĤï¸ı</w>\": 47189,\n  \"ðŁı¿\": 29854,\n  \"ðŁı¿</w>\": 21094,\n  \"ðŁıĢ\": 13708,\n  \"ðŁıĢ</w>\": 8813,\n  \"ðŁıĢðŁıĢ\": 43169,\n  \"ðŁıģ\": 29423,\n  \"ðŁıģ</w>\": 17473,\n  \"ðŁıĥ\": 16820,\n  \"ðŁıĥ</w>\": 32751,\n  \"ðŁıħ</w>\": 25500,\n  \"ðŁıĨ\": 9585,\n  \"ðŁıĨ</w>\": 5596,\n  \"ðŁıĨðŁıĨ\": 18946,\n  \"ðŁıĨðŁıĨ</w>\": 38269,\n  \"ðŁıĨðŁıĨðŁıĨ</w>\": 44484,\n  \"ðŁıĩ\": 45789,\n  \"ðŁıĩ</w>\": 40288,\n  \"ðŁıĪ\": 16144,\n  \"ðŁıĪ</w>\": 10477,\n  \"ðŁıī</w>\": 26020,\n  \"ðŁıĬ\": 33061,\n  \"ðŁıĬ</w>\": 47830,\n  \"ðŁıĮ\": 41116,\n  \"ðŁıı</w>\": 32460,\n  \"ðŁıĲ\": 46334,\n  \"ðŁıĲ</w>\": 29433,\n  \"ðŁıĴ</w>\": 37756,\n  \"ðŁıŁ\": 35914,\n  \"ðŁıŁ</w>\": 26472,\n  \"ðŁıŁï¸ı</w>\": 42627,\n  \"ðŁıł</w>\": 33727,\n  \"ðŁĲ\": 2074,\n  \"ðŁĲ¢</w>\": 37049,\n  \"ðŁĲ£</w>\": 39597,\n  \"ðŁĲ¥</w>\": 42981,\n  \"ðŁĲ¦</w>\": 37260,\n  \"ðŁĲ¬</w>\": 44238,\n  \"ðŁĲ¯\": 34825,\n  \"ðŁĲ¯</w>\": 26111,\n  \"ðŁĲ°\": 35378,\n  \"ðŁĲ°</w>\": 25050,\n  \"ðŁĲ±\": 35710,\n  \"ðŁĲ±</w>\": 22979,\n  \"ðŁĲ´</w>\": 33509,\n  \"ðŁĲ¶\": 14466,\n  \"ðŁĲ¶</w>\": 10631,\n  \"ðŁĲ·</w>\": 38408,\n  \"ðŁĲ¸\": 45597,\n  \"ðŁĲ¸</w>\": 40298,\n  \"ðŁĲº\": 44281,\n  \"ðŁĲº</w>\": 31445,\n  \"ðŁĲ»\": 30750,\n  \"ðŁĲ»</w>\": 25322,\n  \"ðŁĲ¼</w>\": 46234,\n  \"ðŁĲ¾\": 16057,\n  \"ðŁĲ¾</w>\": 11317,\n  \"ðŁĲ¾ðŁĲ¾</w>\": 42202,\n  \"ðŁĲī</w>\": 46908,\n  \"ðŁĲĬ</w>\": 43974,\n  \"ðŁĲį\": 48903,\n  \"ðŁĲį</w>\": 30177,\n  \"ðŁĲİ\": 48281,\n  \"ðŁĲİ</w>\": 32726,\n  \"ðŁĲĲ\": 47735,\n  \"ðŁĲĲ</w>\": 27954,\n  \"ðŁĲĳ</w>\": 49389,\n  \"ðŁĲķ</w>\": 41069,\n  \"ðŁĲĺ</w>\": 38733,\n  \"ðŁĲĿ\": 30619,\n  \"ðŁĲĿ</w>\": 20111,\n  \"ðŁĲŁ\": 42084,\n  \"ðŁĲŁ</w>\": 29989,\n  \"ðŁĲł</w>\": 42725,\n  \"ðŁĳ\": 964,\n  \"ðŁĳ£</w>\": 39755,\n  \"ðŁĳ§\": 48938,\n  \"ðŁĳ¨\": 18966,\n  \"ðŁĳ¨âĢį\": 25023,\n  \"ðŁĳ©\": 18800,\n  \"ðŁĳ©âĢį\": 26304,\n  \"ðŁĳ«\": 47106,\n  \"ðŁĳ«</w>\": 35457,\n  \"ðŁĳ®\": 42686,\n  \"ðŁĳ¯\": 25910,\n  \"ðŁĳ¯</w>\": 20582,\n  \"ðŁĳ¶\": 26187,\n  \"ðŁĳ¶</w>\": 33189,\n  \"ðŁĳ¸\": 26268,\n  \"ðŁĳ¸</w>\": 36645,\n  \"ðŁĳ¹</w>\": 46766,\n  \"ðŁĳ»\": 24625,\n  \"ðŁĳ»</w>\": 16243,\n  \"ðŁĳ¼\": 25270,\n  \"ðŁĳ¼</w>\": 31083,\n  \"ðŁĳ½\": 42677,\n  \"ðŁĳ½</w>\": 26257,\n  \"ðŁĳĢ\": 11524,\n  \"ðŁĳĢ</w>\": 5908,\n  \"ðŁĳĢðŁĳĢ</w>\": 31561,\n  \"ðŁĳģ\": 47796,\n  \"ðŁĳģ</w>\": 45705,\n  \"ðŁĳĦ</w>\": 47445,\n  \"ðŁĳħ\": 31833,\n  \"ðŁĳħ</w>\": 24672,\n  \"ðŁĳĨ\": 42975,\n  \"ðŁĳĨ</w>\": 45194,\n  \"ðŁĳĩ\": 7662,\n  \"ðŁĳĩ</w>\": 7475,\n  \"ðŁĳĩðŁı»\": 45811,\n  \"ðŁĳĩðŁı»</w>\": 32813,\n  \"ðŁĳĩðŁı¼</w>\": 37504,\n  \"ðŁĳĩðŁĳĩ\": 17915,\n  \"ðŁĳĩðŁĳĩ</w>\": 31891,\n  \"ðŁĳĩðŁĳĩðŁĳĩ</w>\": 35627,\n  \"ðŁĳĪ\": 32794,\n  \"ðŁĳĪ</w>\": 20832,\n  \"ðŁĳī\": 9477,\n  \"ðŁĳī</w>\": 3988,\n  \"ðŁĳīðŁı»</w>\": 23481,\n  \"ðŁĳīðŁı¼</w>\": 27534,\n  \"ðŁĳīðŁı½</w>\": 38059,\n  \"ðŁĳīðŁĳī</w>\": 41480,\n  \"ðŁĳĬ\": 8897,\n  \"ðŁĳĬ</w>\": 9704,\n  \"ðŁĳĬðŁı»\": 47393,\n  \"ðŁĳĬðŁı»</w>\": 29152,\n  \"ðŁĳĬðŁı¼\": 49000,\n  \"ðŁĳĬðŁı¼</w>\": 30115,\n  \"ðŁĳĬðŁĳĬ</w>\": 46521,\n  \"ðŁĳĭ\": 19351,\n  \"ðŁĳĭ</w>\": 17686,\n  \"ðŁĳĮ\": 4890,\n  \"ðŁĳĮ</w>\": 4494,\n  \"ðŁĳĮðŁı»\": 31818,\n  \"ðŁĳĮðŁı»</w>\": 18606,\n  \"ðŁĳĮðŁı¼\": 37655,\n  \"ðŁĳĮðŁı¼</w>\": 20031,\n  \"ðŁĳĮðŁı½</w>\": 35834,\n  \"ðŁĳĮðŁĳĮ\": 36139,\n  \"ðŁĳĮðŁĳĮ</w>\": 21435,\n  \"ðŁĳĮðŁĳĮðŁĳĮ</w>\": 40876,\n  \"ðŁĳį\": 4686,\n  \"ðŁĳį</w>\": 4201,\n  \"ðŁĳįðŁı»\": 25803,\n  \"ðŁĳįðŁı»</w>\": 15129,\n  \"ðŁĳįðŁı¼\": 37285,\n  \"ðŁĳįðŁı¼</w>\": 19689,\n  \"ðŁĳįðŁı½</w>\": 43722,\n  \"ðŁĳįðŁĳį\": 33012,\n  \"ðŁĳįðŁĳį</w>\": 18997,\n  \"ðŁĳįðŁĳįðŁĳį</w>\": 37284,\n  \"ðŁĳİ\": 39702,\n  \"ðŁĳİ</w>\": 32568,\n  \"ðŁĳı\": 3802,\n  \"ðŁĳı</w>\": 4829,\n  \"ðŁĳıðŁı»\": 19236,\n  \"ðŁĳıðŁı»</w>\": 17029,\n  \"ðŁĳıðŁı»ðŁĳıðŁı»\": 35254,\n  \"ðŁĳıðŁı¼\": 24496,\n  \"ðŁĳıðŁı¼</w>\": 19979,\n  \"ðŁĳıðŁı¼ðŁĳıðŁı¼</w>\": 46712,\n  \"ðŁĳıðŁı½\": 40796,\n  \"ðŁĳıðŁı½</w>\": 33978,\n  \"ðŁĳıðŁı¾</w>\": 45450,\n  \"ðŁĳıðŁĳı\": 10356,\n  \"ðŁĳıðŁĳı</w>\": 16706,\n  \"ðŁĳıðŁĳıðŁĳı</w>\": 17254,\n  \"ðŁĳĲ</w>\": 40877,\n  \"ðŁĳĳ\": 14955,\n  \"ðŁĳĳ</w>\": 8717,\n  \"ðŁĳĳðŁĳĳ\": 48532,\n  \"ðŁĳķ</w>\": 47865,\n  \"ðŁĳŁ</w>\": 41183,\n  \"ðŁĳł</w>\": 41264,\n  \"ðŁĳŃ\": 34175,\n  \"ðŁĳŃ</w>\": 27943,\n  \"ðŁĴ\": 837,\n  \"ðŁĴ¡</w>\": 24081,\n  \"ðŁĴ£\": 36862,\n  \"ðŁĴ£</w>\": 29006,\n  \"ðŁĴ¤\": 34706,\n  \"ðŁĴ¤</w>\": 25632,\n  \"ðŁĴ¥\": 12209,\n  \"ðŁĴ¥</w>\": 7347,\n  \"ðŁĴ¥ðŁĴ¥\": 27396,\n  \"ðŁĴ¥ðŁĴ¥</w>\": 39246,\n  \"ðŁĴ¥ðŁĴ¥ðŁĴ¥</w>\": 48890,\n  \"ðŁĴ¦\": 21180,\n  \"ðŁĴ¦</w>\": 14060,\n  \"ðŁĴ¦ðŁĴ¦</w>\": 44469,\n  \"ðŁĴ§</w>\": 34095,\n  \"ðŁĴ¨\": 27408,\n  \"ðŁĴ¨</w>\": 17891,\n  \"ðŁĴ©\": 48621,\n  \"ðŁĴ©</w>\": 28847,\n  \"ðŁĴª\": 5475,\n  \"ðŁĴª</w>\": 6440,\n  \"ðŁĴªðŁı»\": 31669,\n  \"ðŁĴªðŁı»</w>\": 21903,\n  \"ðŁĴªðŁı¼\": 32041,\n  \"ðŁĴªðŁı¼</w>\": 20759,\n  \"ðŁĴªðŁı½\": 46380,\n  \"ðŁĴªðŁı½</w>\": 31111,\n  \"ðŁĴªðŁı¾</w>\": 39398,\n  \"ðŁĴªðŁĴª</w>\": 24747,\n  \"ðŁĴªðŁĴªðŁĴª</w>\": 39913,\n  \"ðŁĴ«\": 25770,\n  \"ðŁĴ«</w>\": 12526,\n  \"ðŁĴ¬</w>\": 30947,\n  \"ðŁĴ¯\": 10611,\n  \"ðŁĴ¯</w>\": 7018,\n  \"ðŁĴ¯ðŁĴ¯\": 30234,\n  \"ðŁĴ¯ðŁĴ¯</w>\": 44070,\n  \"ðŁĴ°\": 20454,\n  \"ðŁĴ°</w>\": 14078,\n  \"ðŁĴ°ðŁĴ°\": 41747,\n  \"ðŁĴµ\": 47412,\n  \"ðŁĴµ</w>\": 38041,\n  \"ðŁĴ¸\": 37696,\n  \"ðŁĴ¸</w>\": 25957,\n  \"ðŁĴ»\": 33433,\n  \"ðŁĴ»</w>\": 18135,\n  \"ðŁĴ¿</w>\": 39541,\n  \"ðŁĴĢ\": 14888,\n  \"ðŁĴĢ</w>\": 12158,\n  \"ðŁĴĢðŁĴĢ\": 30884,\n  \"ðŁĴģ\": 13997,\n  \"ðŁĴģ</w>\": 14392,\n  \"ðŁĴĥ\": 9947,\n  \"ðŁĴĥ</w>\": 14333,\n  \"ðŁĴĥðŁı»</w>\": 38624,\n  \"ðŁĴĥðŁĴĥ\": 28041,\n  \"ðŁĴĦ\": 46116,\n  \"ðŁĴĦ</w>\": 34571,\n  \"ðŁĴħ\": 27457,\n  \"ðŁĴħ</w>\": 32414,\n  \"ðŁĴī\": 44316,\n  \"ðŁĴī</w>\": 30503,\n  \"ðŁĴĭ\": 12217,\n  \"ðŁĴĭ</w>\": 7417,\n  \"ðŁĴĭðŁĴĭ</w>\": 29214,\n  \"ðŁĴĮ</w>\": 40817,\n  \"ðŁĴį\": 35850,\n  \"ðŁĴį</w>\": 24898,\n  \"ðŁĴİ\": 25938,\n  \"ðŁĴİ</w>\": 15874,\n  \"ðŁĴĲ\": 27375,\n  \"ðŁĴĲ</w>\": 20554,\n  \"ðŁĴĳ</w>\": 49404,\n  \"ðŁĴĵ\": 20628,\n  \"ðŁĴĵ</w>\": 12568,\n  \"ðŁĴĵðŁĴĵ</w>\": 43505,\n  \"ðŁĴĶ\": 18880,\n  \"ðŁĴĶ</w>\": 10704,\n  \"ðŁĴĶðŁĴĶ\": 44673,\n  \"ðŁĴķ\": 5412,\n  \"ðŁĴķ</w>\": 3082,\n  \"ðŁĴķðŁĴķ\": 23106,\n  \"ðŁĴķðŁĴķ</w>\": 14117,\n  \"ðŁĴķðŁĴķðŁĴķ</w>\": 26772,\n  \"ðŁĴĸ\": 8466,\n  \"ðŁĴĸ</w>\": 5582,\n  \"ðŁĴĸðŁĴĸ\": 19562,\n  \"ðŁĴĸðŁĴĸ</w>\": 30595,\n  \"ðŁĴĸðŁĴĸðŁĴĸ</w>\": 33915,\n  \"ðŁĴĹ\": 10148,\n  \"ðŁĴĹ</w>\": 6690,\n  \"ðŁĴĹðŁĴĹ\": 47158,\n  \"ðŁĴĹðŁĴĹ</w>\": 24064,\n  \"ðŁĴĹðŁĴĹðŁĴĹ</w>\": 36990,\n  \"ðŁĴĺ\": 18223,\n  \"ðŁĴĺ</w>\": 10816,\n  \"ðŁĴĺðŁĴĺ</w>\": 40464,\n  \"ðŁĴĻ\": 5305,\n  \"ðŁĴĻ</w>\": 4074,\n  \"ðŁĴĻðŁĴĻ\": 17833,\n  \"ðŁĴĻðŁĴĻ</w>\": 27101,\n  \"ðŁĴĻðŁĴĻðŁĴĻ</w>\": 30698,\n  \"ðŁĴĻðŁĴĽ\": 46804,\n  \"ðŁĴĻðŁĴĽ</w>\": 26230,\n  \"ðŁĴĻðŁĴľ\": 47931,\n  \"ðŁĴĻðŁĴľ</w>\": 42541,\n  \"ðŁĴļ\": 8102,\n  \"ðŁĴļ</w>\": 6521,\n  \"ðŁĴļðŁĴļ\": 27497,\n  \"ðŁĴļðŁĴļ</w>\": 46209,\n  \"ðŁĴļðŁĴļðŁĴļ</w>\": 46182,\n  \"ðŁĴļðŁĴĽ</w>\": 41232,\n  \"ðŁĴĽ\": 8221,\n  \"ðŁĴĽ</w>\": 6233,\n  \"ðŁĴĽðŁĴĻ</w>\": 36337,\n  \"ðŁĴĽðŁĴļ\": 37994,\n  \"ðŁĴĽðŁĴĽ\": 32420,\n  \"ðŁĴľ\": 6832,\n  \"ðŁĴľ</w>\": 4882,\n  \"ðŁĴľðŁĴľ\": 17280,\n  \"ðŁĴľðŁĴľ</w>\": 28211,\n  \"ðŁĴľðŁĴľðŁĴľ</w>\": 31004,\n  \"ðŁĴĿ\": 36761,\n  \"ðŁĴĿ</w>\": 22002,\n  \"ðŁĴŀ\": 14862,\n  \"ðŁĴŀ</w>\": 8988,\n  \"ðŁĴŀðŁĴŀ</w>\": 36448,\n  \"ðŁĴŁ\": 49394,\n  \"ðŁĴŁ</w>\": 28828,\n  \"ðŁĴŃ</w>\": 33848,\n  \"ðŁĵ\": 1497,\n  \"ðŁĵ¢\": 46560,\n  \"ðŁĵ¢</w>\": 20901,\n  \"ðŁĵ£\": 48841,\n  \"ðŁĵ£</w>\": 21282,\n  \"ðŁĵ°:</w>\": 28952,\n  \"ðŁĵ°</w>\": 14985,\n  \"ðŁĵ±\": 36104,\n  \"ðŁĵ±</w>\": 20824,\n  \"ðŁĵ²</w>\": 19363,\n  \"ðŁĵ·\": 6966,\n  \"ðŁĵ·:</w>\": 8294,\n  \"ðŁĵ·</w>\": 5551,\n  \"ðŁĵ·@</w>\": 40032,\n  \"ðŁĵ¸\": 8401,\n  \"ðŁĵ¸:</w>\": 10379,\n  \"ðŁĵ¸</w>\": 6074,\n  \"ðŁĵ¸@</w>\": 39660,\n  \"ðŁĵ¹</w>\": 49251,\n  \"ðŁĵº\": 21792,\n  \"ðŁĵº:</w>\": 29728,\n  \"ðŁĵº</w>\": 10450,\n  \"ðŁĵ»\": 32711,\n  \"ðŁĵ»</w>\": 15882,\n  \"ðŁĵ½</w>\": 45361,\n  \"ðŁĵħ</w>\": 21277,\n  \"ðŁĵĨ</w>\": 23471,\n  \"ðŁĵĪ</w>\": 23359,\n  \"ðŁĵĬ</w>\": 22244,\n  \"ðŁĵĭ</w>\": 46351,\n  \"ðŁĵĮ</w>\": 22289,\n  \"ðŁĵį\": 25043,\n  \"ðŁĵį:</w>\": 36845,\n  \"ðŁĵį</w>\": 8903,\n  \"ðŁĵĸ\": 49003,\n  \"ðŁĵĸ</w>\": 23043,\n  \"ðŁĵļ\": 25433,\n  \"ðŁĵļ</w>\": 15566,\n  \"ðŁĵĿ\": 31888,\n  \"ðŁĵĿ:</w>\": 48398,\n  \"ðŁĵĿ</w>\": 15853,\n  \"ðŁĵŀ</w>\": 24022,\n  \"ðŁĶ\": 1428,\n  \"ðŁĶ¥\": 3191,\n  \"ðŁĶ¥#</w>\": 44354,\n  \"ðŁĶ¥</w>\": 3016,\n  \"ðŁĶ¥ðŁĶ¥\": 5692,\n  \"ðŁĶ¥ðŁĶ¥</w>\": 11771,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\": 11004,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥\": 23408,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\": 30989,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\": 48401,\n  \"ðŁĶ¥ðŁĶĹ</w>\": 35130,\n  \"ðŁĶª\": 47078,\n  \"ðŁĶª</w>\": 34545,\n  \"ðŁĶ«\": 38116,\n  \"ðŁĶ«</w>\": 20583,\n  \"ðŁĶ¬</w>\": 44227,\n  \"ðŁĶ®</w>\": 38077,\n  \"ðŁĶ´\": 12408,\n  \"ðŁĶ´</w>\": 10854,\n  \"ðŁĶ´âļªï¸ı\": 46879,\n  \"ðŁĶ´âļªï¸ı</w>\": 40055,\n  \"ðŁĶµ\": 17531,\n  \"ðŁĶµ</w>\": 17193,\n  \"ðŁĶµâļªï¸ı</w>\": 42412,\n  \"ðŁĶ¶\": 42880,\n  \"ðŁĶ¶</w>\": 36222,\n  \"ðŁĶ·</w>\": 37740,\n  \"ðŁĶ¸</w>\": 24200,\n  \"ðŁĶ¹</w>\": 19995,\n  \"ðŁĶº</w>\": 45561,\n  \"ðŁĶģ</w>\": 41299,\n  \"ðŁĶĬ\": 32580,\n  \"ðŁĶĬ</w>\": 20502,\n  \"ðŁĶİ</w>\": 44935,\n  \"ðŁĶĳ</w>\": 35127,\n  \"ðŁĶĴ</w>\": 44972,\n  \"ðŁĶĶ</w>\": 45753,\n  \"ðŁĶĹ\": 47475,\n  \"ðŁĶĹ</w>\": 14561,\n  \"ðŁĶĺ</w>\": 38995,\n  \"ðŁĶľ</w>\": 36011,\n  \"ðŁĶĿ\": 44387,\n  \"ðŁĶĿ</w>\": 29506,\n  \"ðŁķ\": 7692,\n  \"ðŁķº\": 33958,\n  \"ðŁķĬ\": 42624,\n  \"ðŁķĬ</w>\": 37760,\n  \"ðŁĸ\": 6269,\n  \"ðŁĸ¤\": 17603,\n  \"ðŁĸ¤</w>\": 10860,\n  \"ðŁĸ¥</w>\": 47990,\n  \"ðŁĹ\": 7045,\n  \"ðŁĹ£\": 33232,\n  \"ðŁĹ£</w>\": 18583,\n  \"ðŁĹ£ï¸ı</w>\": 37476,\n  \"ðŁĹĵ\": 34335,\n  \"ðŁĹĵ</w>\": 28773,\n  \"ðŁĹĵï¸ı</w>\": 39847,\n  \"ðŁĺ\": 668,\n  \"ðŁĺ¡\": 21968,\n  \"ðŁĺ¡</w>\": 17452,\n  \"ðŁĺ¡ðŁĺ¡\": 37223,\n  \"ðŁĺ¢\": 14308,\n  \"ðŁĺ¢</w>\": 9925,\n  \"ðŁĺ¢ðŁĺ¢\": 32923,\n  \"ðŁĺ¢ðŁĺ¢</w>\": 47921,\n  \"ðŁĺ£</w>\": 32718,\n  \"ðŁĺ¤\": 26872,\n  \"ðŁĺ¤</w>\": 20740,\n  \"ðŁĺ¥\": 38383,\n  \"ðŁĺ¥</w>\": 23951,\n  \"ðŁĺ¨</w>\": 38080,\n  \"ðŁĺ©\": 9051,\n  \"ðŁĺ©</w>\": 9494,\n  \"ðŁĺ©ðŁĺ©\": 22820,\n  \"ðŁĺ©ðŁĺ©</w>\": 38031,\n  \"ðŁĺ©ðŁĺ©ðŁĺ©</w>\": 49063,\n  \"ðŁĺª\": 38181,\n  \"ðŁĺª</w>\": 22243,\n  \"ðŁĺ«\": 25141,\n  \"ðŁĺ«</w>\": 22340,\n  \"ðŁĺ¬\": 23704,\n  \"ðŁĺ¬</w>\": 14549,\n  \"ðŁĺ®\": 40163,\n  \"ðŁĺ®</w>\": 21616,\n  \"ðŁĺ¯</w>\": 37858,\n  \"ðŁĺ°</w>\": 34728,\n  \"ðŁĺ±\": 10938,\n  \"ðŁĺ±</w>\": 9055,\n  \"ðŁĺ±ðŁĺ±\": 22061,\n  \"ðŁĺ±ðŁĺ±</w>\": 40767,\n  \"ðŁĺ±ðŁĺ±ðŁĺ±</w>\": 40909,\n  \"ðŁĺ²\": 40460,\n  \"ðŁĺ²</w>\": 24620,\n  \"ðŁĺ³\": 12047,\n  \"ðŁĺ³</w>\": 8223,\n  \"ðŁĺ³ðŁĺ³\": 32592,\n  \"ðŁĺ´\": 23527,\n  \"ðŁĺ´</w>\": 16415,\n  \"ðŁĺ´ðŁĺ´</w>\": 49307,\n  \"ðŁĺµ</w>\": 39368,\n  \"ðŁĺ¶</w>\": 35207,\n  \"ðŁĺ·\": 37943,\n  \"ðŁĺ·</w>\": 25759,\n  \"ðŁĺ¸</w>\": 36912,\n  \"ðŁĺ¹\": 26477,\n  \"ðŁĺ¹</w>\": 26573,\n  \"ðŁĺ¹ðŁĺ¹\": 46287,\n  \"ðŁĺº</w>\": 40613,\n  \"ðŁĺ»\": 15453,\n  \"ðŁĺ»</w>\": 12911,\n  \"ðŁĺ»ðŁĺ»\": 34414,\n  \"ðŁĺ¼</w>\": 44245,\n  \"ðŁĺ½</w>\": 45156,\n  \"ðŁĺĢ\": 12832,\n  \"ðŁĺĢ</w>\": 7334,\n  \"ðŁĺĢðŁĺĢ</w>\": 34503,\n  \"ðŁĺģ\": 6967,\n  \"ðŁĺģ</w>\": 4821,\n  \"ðŁĺģðŁĺģ\": 37900,\n  \"ðŁĺģðŁĺģ</w>\": 19213,\n  \"ðŁĺģðŁĺģðŁĺģ</w>\": 29083,\n  \"ðŁĺĤ\": 1424,\n  \"ðŁĺĤ)</w>\": 42643,\n  \"ðŁĺĤ.</w>\": 42550,\n  \"ðŁĺĤ</w>\": 1558,\n  \"ðŁĺĤâĿ¤ï¸ı</w>\": 36412,\n  \"ðŁĺĤðŁĳĮ</w>\": 42000,\n  \"ðŁĺĤðŁĺĤ\": 2286,\n  \"ðŁĺĤðŁĺĤ</w>\": 4112,\n  \"ðŁĺĤðŁĺĤðŁĺĤ\": 22233,\n  \"ðŁĺĤðŁĺĤðŁĺĤ</w>\": 4887,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ\": 9936,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 11522,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 19295,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 33415,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 48973,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ\": 28504,\n  \"ðŁĺĤðŁĺį</w>\": 43128,\n  \"ðŁĺĤðŁĺŃ\": 28965,\n  \"ðŁĺĤðŁĺŃ</w>\": 25802,\n  \"ðŁĺĥ\": 14079,\n  \"ðŁĺĥ</w>\": 8520,\n  \"ðŁĺĥðŁĺĥ</w>\": 38358,\n  \"ðŁĺĦ\": 12141,\n  \"ðŁĺĦ</w>\": 7624,\n  \"ðŁĺĦðŁĺĦ</w>\": 32312,\n  \"ðŁĺħ\": 15245,\n  \"ðŁĺħ</w>\": 9188,\n  \"ðŁĺħðŁĺħ</w>\": 39078,\n  \"ðŁĺĨ\": 16541,\n  \"ðŁĺĨ</w>\": 10943,\n  \"ðŁĺĨðŁĺĨ</w>\": 39503,\n  \"ðŁĺĩ\": 21694,\n  \"ðŁĺĩ</w>\": 13091,\n  \"ðŁĺĪ\": 14377,\n  \"ðŁĺĪ</w>\": 9756,\n  \"ðŁĺĪðŁĺĪ</w>\": 44473,\n  \"ðŁĺī\": 9740,\n  \"ðŁĺī</w>\": 4955,\n  \"ðŁĺīðŁĺī</w>\": 40430,\n  \"ðŁĺĬ\": 4692,\n  \"ðŁĺĬ</w>\": 3020,\n  \"ðŁĺĬâĿ¤ï¸ı</w>\": 43606,\n  \"ðŁĺĬðŁĺĬ\": 12838,\n  \"ðŁĺĬðŁĺĬ</w>\": 20842,\n  \"ðŁĺĬðŁĺĬðŁĺĬ</w>\": 28685,\n  \"ðŁĺĬðŁĺĬðŁĺĬðŁĺĬ\": 35519,\n  \"ðŁĺĭ\": 12391,\n  \"ðŁĺĭ</w>\": 7203,\n  \"ðŁĺĭðŁĺĭ</w>\": 33304,\n  \"ðŁĺĮ\": 19221,\n  \"ðŁĺĮ</w>\": 12163,\n  \"ðŁĺį\": 1796,\n  \"ðŁĺį#</w>\": 42357,\n  \"ðŁĺį.</w>\": 48579,\n  \"ðŁĺį</w>\": 1754,\n  \"ðŁĺįâĿ¤</w>\": 29122,\n  \"ðŁĺįâĿ¤ï¸ı</w>\": 21945,\n  \"ðŁĺįðŁĳĮ</w>\": 41005,\n  \"ðŁĺįðŁĴķ</w>\": 35946,\n  \"ðŁĺįðŁĶ¥</w>\": 46648,\n  \"ðŁĺįðŁĺĤ</w>\": 48715,\n  \"ðŁĺįðŁĺį\": 3663,\n  \"ðŁĺįðŁĺį</w>\": 6471,\n  \"ðŁĺįðŁĺįðŁĺį\": 30614,\n  \"ðŁĺįðŁĺįðŁĺį</w>\": 7703,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺį\": 16603,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺį</w>\": 18925,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺįðŁĺį</w>\": 32078,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺį\": 48683,\n  \"ðŁĺįðŁĺĺ\": 29646,\n  \"ðŁĺįðŁĺĺ</w>\": 19849,\n  \"ðŁĺįðŁĺŃ</w>\": 39555,\n  \"ðŁĺİ\": 7426,\n  \"ðŁĺİ</w>\": 4345,\n  \"ðŁĺİðŁĺİ</w>\": 24048,\n  \"ðŁĺİðŁĺİðŁĺİ</w>\": 39742,\n  \"ðŁĺı\": 11624,\n  \"ðŁĺı</w>\": 6909,\n  \"ðŁĺıðŁĺı</w>\": 38151,\n  \"ðŁĺĲ\": 38586,\n  \"ðŁĺĲ</w>\": 19618,\n  \"ðŁĺĳ\": 32469,\n  \"ðŁĺĳ</w>\": 18937,\n  \"ðŁĺĴ\": 20792,\n  \"ðŁĺĴ</w>\": 11702,\n  \"ðŁĺĵ</w>\": 28733,\n  \"ðŁĺĶ\": 19532,\n  \"ðŁĺĶ</w>\": 11432,\n  \"ðŁĺķ\": 45741,\n  \"ðŁĺķ</w>\": 20602,\n  \"ðŁĺĸ</w>\": 35006,\n  \"ðŁĺĺ\": 4240,\n  \"ðŁĺĺ</w>\": 3352,\n  \"ðŁĺĺâĿ¤</w>\": 48409,\n  \"ðŁĺĺâĿ¤ï¸ı</w>\": 39150,\n  \"ðŁĺĺðŁĺį</w>\": 38176,\n  \"ðŁĺĺðŁĺĺ\": 15663,\n  \"ðŁĺĺðŁĺĺ</w>\": 10507,\n  \"ðŁĺĺðŁĺĺðŁĺĺ</w>\": 20208,\n  \"ðŁĺĺðŁĺĺðŁĺĺðŁĺĺ</w>\": 44892,\n  \"ðŁĺĻ\": 36201,\n  \"ðŁĺĻ</w>\": 29209,\n  \"ðŁĺļ\": 24897,\n  \"ðŁĺļ</w>\": 19102,\n  \"ðŁĺĽ\": 24550,\n  \"ðŁĺĽ</w>\": 15745,\n  \"ðŁĺľ\": 13226,\n  \"ðŁĺľ</w>\": 7830,\n  \"ðŁĺľðŁĺľ</w>\": 43065,\n  \"ðŁĺĿ\": 20064,\n  \"ðŁĺĿ</w>\": 12970,\n  \"ðŁĺŀ\": 40458,\n  \"ðŁĺŀ</w>\": 21103,\n  \"ðŁĺŁ</w>\": 46947,\n  \"ðŁĺł</w>\": 34094,\n  \"ðŁĺŃ\": 2962,\n  \"ðŁĺŃ</w>\": 3915,\n  \"ðŁĺŃâĿ¤ï¸ı</w>\": 29567,\n  \"ðŁĺŃðŁĴķ</w>\": 46306,\n  \"ðŁĺŃðŁĺĤ</w>\": 38505,\n  \"ðŁĺŃðŁĺį</w>\": 36893,\n  \"ðŁĺŃðŁĺŃ\": 5300,\n  \"ðŁĺŃðŁĺŃ</w>\": 11834,\n  \"ðŁĺŃðŁĺŃðŁĺŃ\": 44089,\n  \"ðŁĺŃðŁĺŃðŁĺŃ</w>\": 13116,\n  \"ðŁĺŃðŁĺŃðŁĺŃðŁĺŃ\": 19793,\n  \"ðŁĺŃðŁĺŃðŁĺŃðŁĺŃ</w>\": 27322,\n  \"ðŁĺŃðŁĺŃðŁĺŃðŁĺŃðŁĺŃ</w>\": 43366,\n  \"ðŁĻ\": 1478,\n  \"ðŁĻĢ</w>\": 43092,\n  \"ðŁĻĤ\": 32006,\n  \"ðŁĻĤ</w>\": 14860,\n  \"ðŁĻĥ\": 27222,\n  \"ðŁĻĥ</w>\": 15652,\n  \"ðŁĻĦ\": 20648,\n  \"ðŁĻĦ</w>\": 13049,\n  \"ðŁĻħ\": 42702,\n  \"ðŁĻĨ\": 30050,\n  \"ðŁĻĨ</w>\": 35730,\n  \"ðŁĻĪ\": 12661,\n  \"ðŁĻĪ</w>\": 9516,\n  \"ðŁĻĪðŁĻĪ</w>\": 41796,\n  \"ðŁĻĬ\": 23684,\n  \"ðŁĻĬ</w>\": 16636,\n  \"ðŁĻĭ\": 19193,\n  \"ðŁĻĭ</w>\": 30274,\n  \"ðŁĻĮ\": 4366,\n  \"ðŁĻĮ</w>\": 4855,\n  \"ðŁĻĮðŁı»\": 26756,\n  \"ðŁĻĮðŁı»</w>\": 15799,\n  \"ðŁĻĮðŁı¼\": 26584,\n  \"ðŁĻĮðŁı¼</w>\": 15364,\n  \"ðŁĻĮðŁı½\": 36660,\n  \"ðŁĻĮðŁı½</w>\": 22962,\n  \"ðŁĻĮðŁı¾\": 38023,\n  \"ðŁĻĮðŁı¾</w>\": 26466,\n  \"ðŁĻĮðŁĻĮ\": 21202,\n  \"ðŁĻĮðŁĻĮ</w>\": 30430,\n  \"ðŁĻĮðŁĻĮðŁĻĮ</w>\": 37127,\n  \"ðŁĻı\": 4260,\n  \"ðŁĻı</w>\": 5503,\n  \"ðŁĻıðŁı»\": 25100,\n  \"ðŁĻıðŁı»</w>\": 16650,\n  \"ðŁĻıðŁı¼\": 31163,\n  \"ðŁĻıðŁı¼</w>\": 18952,\n  \"ðŁĻıðŁı½\": 34103,\n  \"ðŁĻıðŁı½</w>\": 21540,\n  \"ðŁĻıðŁı¾\": 34277,\n  \"ðŁĻıðŁı¾</w>\": 21979,\n  \"ðŁĻıðŁĻı\": 18227,\n  \"ðŁĻıðŁĻı</w>\": 26510,\n  \"ðŁĻıðŁĻıðŁĻı</w>\": 31702,\n  \"ðŁļ\": 2730,\n  \"ðŁļ¨\": 12198,\n  \"ðŁļ¨</w>\": 6056,\n  \"ðŁļ¨ðŁļ¨\": 36487,\n  \"ðŁļ¨ðŁļ¨</w>\": 21440,\n  \"ðŁļ¨ðŁļ¨ðŁļ¨</w>\": 41515,\n  \"ðŁļ©</w>\": 44514,\n  \"ðŁļ«</w>\": 35291,\n  \"ðŁļ²</w>\": 37085,\n  \"ðŁļ´\": 30825,\n  \"ðŁļ¶\": 46060,\n  \"ðŁļĢ\": 22400,\n  \"ðŁļĢ</w>\": 13542,\n  \"ðŁļĢðŁļĢ\": 49033,\n  \"ðŁļĤ</w>\": 38949,\n  \"ðŁļĮ</w>\": 46891,\n  \"ðŁļĹ\": 33054,\n  \"ðŁļĹ</w>\": 22783,\n  \"ðŁļĺ</w>\": 35825,\n  \"ðŁļĻ</w>\": 48487,\n  \"ðŁĽ\": 11306,\n  \"ñ\": 173,\n  \"ñ</w>\": 429,\n  \"ò\": 174,\n  \"ò</w>\": 430,\n  \"ó\": 175,\n  \"ó</w>\": 431,\n  \"ô\": 176,\n  \"ô</w>\": 432,\n  \"õ\": 177,\n  \"õ</w>\": 433,\n  \"ö\": 178,\n  \"ö</w>\": 434,\n  \"÷\": 179,\n  \"÷</w>\": 435,\n  \"ø\": 180,\n  \"ø</w>\": 436,\n  \"ù\": 181,\n  \"ù</w>\": 437,\n  \"ú\": 182,\n  \"ú</w>\": 438,\n  \"û\": 183,\n  \"û</w>\": 439,\n  \"ü\": 184,\n  \"ü</w>\": 440,\n  \"ý\": 185,\n  \"ý</w>\": 441,\n  \"þ\": 186,\n  \"þ</w>\": 442,\n  \"ÿ\": 187,\n  \"ÿ</w>\": 443,\n  \"Ā\": 188,\n  \"Ā</w>\": 444,\n  \"ā\": 189,\n  \"ā</w>\": 445,\n  \"Ă\": 190,\n  \"Ă</w>\": 446,\n  \"ă\": 191,\n  \"ă</w>\": 447,\n  \"Ą\": 192,\n  \"Ą</w>\": 448,\n  \"ą\": 193,\n  \"ą</w>\": 449,\n  \"Ć\": 194,\n  \"Ć</w>\": 450,\n  \"ć\": 195,\n  \"ć</w>\": 451,\n  \"Ĉ\": 196,\n  \"Ĉ</w>\": 452,\n  \"ĉ\": 197,\n  \"ĉ</w>\": 453,\n  \"Ċ\": 198,\n  \"Ċ</w>\": 454,\n  \"ċ\": 199,\n  \"ċ</w>\": 455,\n  \"Č\": 200,\n  \"Č</w>\": 456,\n  \"č\": 201,\n  \"č</w>\": 457,\n  \"Ď\": 202,\n  \"Ď</w>\": 458,\n  \"ď\": 203,\n  \"ď</w>\": 459,\n  \"Đ\": 204,\n  \"Đ</w>\": 460,\n  \"đ\": 205,\n  \"đ</w>\": 461,\n  \"Ē\": 206,\n  \"Ē</w>\": 462,\n  \"ē\": 207,\n  \"ē</w>\": 463,\n  \"Ĕ\": 208,\n  \"Ĕ</w>\": 464,\n  \"ĕ\": 209,\n  \"ĕ</w>\": 465,\n  \"Ė\": 210,\n  \"Ė</w>\": 466,\n  \"ė\": 211,\n  \"ė</w>\": 467,\n  \"Ę\": 212,\n  \"Ę</w>\": 468,\n  \"ę\": 213,\n  \"ę</w>\": 469,\n  \"Ě\": 214,\n  \"Ě</w>\": 470,\n  \"ě\": 215,\n  \"ě</w>\": 471,\n  \"Ĝ\": 216,\n  \"Ĝ</w>\": 472,\n  \"ĝ\": 217,\n  \"ĝ</w>\": 473,\n  \"Ğ\": 218,\n  \"Ğ</w>\": 474,\n  \"ğ\": 219,\n  \"ğ</w>\": 475,\n  \"Ġ\": 220,\n  \"Ġ</w>\": 476,\n  \"ġ\": 221,\n  \"ġ</w>\": 477,\n  \"Ģ\": 222,\n  \"Ģ</w>\": 478,\n  \"Ģï¸ı\": 9668,\n  \"Ģï¸ı</w>\": 5511,\n  \"ģ\": 223,\n  \"ģ</w>\": 479,\n  \"ģà¸\": 15016,\n  \"Ĥ\": 224,\n  \"Ĥ</w>\": 480,\n  \"Ĥâĸ\": 29036,\n  \"ĤâĸĤâĸ\": 30832,\n  \"ĥ\": 225,\n  \"ĥ</w>\": 481,\n  \"Ħ\": 226,\n  \"Ħ</w>\": 482,\n  \"Ħà¸\": 20537,\n  \"Ħë\": 34462,\n  \"Ħëĭ\": 25170,\n  \"ħ\": 227,\n  \"ħ</w>\": 483,\n  \"ħï¸ı</w>\": 33950,\n  \"Ĩ\": 228,\n  \"Ĩ</w>\": 484,\n  \"ĩ\": 229,\n  \"ĩ</w>\": 485,\n  \"Ī\": 230,\n  \"Ī</w>\": 486,\n  \"ī\": 231,\n  \"ī</w>\": 487,\n  \"īï¸ı</w>\": 37463,\n  \"Ĭ\": 232,\n  \"Ĭ</w>\": 488,\n  \"Ĭãģ\": 30294,\n  \"ĭ\": 233,\n  \"ĭ</w>\": 489,\n  \"ĭãģ\": 36218,\n  \"ĭãĤ\": 45737,\n  \"Į\": 234,\n  \"Į</w>\": 490,\n  \"ĮãĤĬãģ\": 45969,\n  \"ĮãĤĬãģŁãģĦ</w>\": 47021,\n  \"Įë\": 17003,\n  \"į\": 235,\n  \"į</w>\": 491,\n  \"İ\": 236,\n  \"İ</w>\": 492,\n  \"ı\": 237,\n  \"ı</w>\": 493,\n  \"Ĳ\": 238,\n  \"Ĳ</w>\": 494,\n  \"ĳ\": 239,\n  \"ĳ</w>\": 495,\n  \"Ĵ\": 240,\n  \"Ĵ</w>\": 496,\n  \"ĵ\": 241,\n  \"ĵ</w>\": 497,\n  \"Ķ\": 242,\n  \"Ķ</w>\": 498,\n  \"Ķë\": 37978,\n  \"Ķï¸ı\": 24395,\n  \"Ķï¸ı</w>\": 7443,\n  \"ķ\": 243,\n  \"ķ</w>\": 499,\n  \"ķãĤ\": 26609,\n  \"ķï¸ı</w>\": 44853,\n  \"ĸ\": 244,\n  \"ĸ</w>\": 500,\n  \"ĸï¸ı</w>\": 28877,\n  \"Ĺ\": 245,\n  \"Ĺ</w>\": 501,\n  \"ĺ\": 246,\n  \"ĺ</w>\": 502,\n  \"Ļ\": 247,\n  \"Ļ</w>\": 503,\n  \"ļ\": 248,\n  \"ļ</w>\": 504,\n  \"Ľ\": 249,\n  \"Ľ</w>\": 505,\n  \"ľ\": 250,\n  \"ľ</w>\": 506,\n  \"ľë\": 39810,\n  \"Ŀ\": 251,\n  \"Ŀ</w>\": 507,\n  \"ŀ\": 252,\n  \"ŀ</w>\": 508,\n  \"Ł\": 253,\n  \"Ł</w>\": 509,\n  \"ŁãģĦ</w>\": 46023,\n  \"ł\": 254,\n  \"ł</w>\": 510,\n  \"łï¸ı\": 27899,\n  \"łï¸ı</w>\": 12715,\n  \"łĪ\": 43364,\n  \"Ń\": 255,\n  \"Ń</w>\": 511\n}\n"
  },
  {
    "path": "configs/sdxl/unet/config.json",
    "content": "{\n  \"_class_name\": \"UNet2DConditionModel\",\n  \"_diffusers_version\": \"0.19.0.dev0\",\n  \"act_fn\": \"silu\",\n  \"addition_embed_type\": \"text_time\",\n  \"addition_embed_type_num_heads\": 64,\n  \"addition_time_embed_dim\": 256,\n  \"attention_head_dim\": [\n    5,\n    10,\n    20\n  ],\n  \"block_out_channels\": [\n    320,\n    640,\n    1280\n  ],\n  \"center_input_sample\": false,\n  \"class_embed_type\": null,\n  \"class_embeddings_concat\": false,\n  \"conv_in_kernel\": 3,\n  \"conv_out_kernel\": 3,\n  \"cross_attention_dim\": 2048,\n  \"cross_attention_norm\": null,\n  \"down_block_types\": [\n    \"DownBlock2D\",\n    \"CrossAttnDownBlock2D\",\n    \"CrossAttnDownBlock2D\"\n  ],\n  \"downsample_padding\": 1,\n  \"dual_cross_attention\": false,\n  \"encoder_hid_dim\": null,\n  \"encoder_hid_dim_type\": null,\n  \"flip_sin_to_cos\": true,\n  \"freq_shift\": 0,\n  \"in_channels\": 4,\n  \"layers_per_block\": 2,\n  \"mid_block_only_cross_attention\": null,\n  \"mid_block_scale_factor\": 1,\n  \"mid_block_type\": \"UNetMidBlock2DCrossAttn\",\n  \"norm_eps\": 1e-05,\n  \"norm_num_groups\": 32,\n  \"num_attention_heads\": null,\n  \"num_class_embeds\": null,\n  \"only_cross_attention\": false,\n  \"out_channels\": 4,\n  \"projection_class_embeddings_input_dim\": 2816,\n  \"resnet_out_scale_factor\": 1.0,\n  \"resnet_skip_time_act\": false,\n  \"resnet_time_scale_shift\": \"default\",\n  \"sample_size\": 128,\n  \"time_cond_proj_dim\": null,\n  \"time_embedding_act_fn\": null,\n  \"time_embedding_dim\": null,\n  \"time_embedding_type\": \"positional\",\n  \"timestep_post_act\": null,\n  \"transformer_layers_per_block\": [\n    1,\n    2,\n    10\n  ],\n  \"up_block_types\": [\n    \"CrossAttnUpBlock2D\",\n    \"CrossAttnUpBlock2D\",\n    \"UpBlock2D\"\n  ],\n  \"upcast_attention\": null,\n  \"use_linear_projection\": true\n}\n"
  },
  {
    "path": "configs/sdxl/vae/config.json",
    "content": "{\n  \"_class_name\": \"AutoencoderKL\",\n  \"_diffusers_version\": \"0.20.0.dev0\",\n  \"_name_or_path\": \"../sdxl-vae/\",\n  \"act_fn\": \"silu\",\n  \"block_out_channels\": [\n    128,\n    256,\n    512,\n    512\n  ],\n  \"down_block_types\": [\n    \"DownEncoderBlock2D\",\n    \"DownEncoderBlock2D\",\n    \"DownEncoderBlock2D\",\n    \"DownEncoderBlock2D\"\n  ],\n  \"force_upcast\": false,\n  \"in_channels\": 3,\n  \"latent_channels\": 4,\n  \"layers_per_block\": 2,\n  \"norm_num_groups\": 32,\n  \"out_channels\": 3,\n  \"sample_size\": 1024,\n  \"scaling_factor\": 0.13025,\n  \"up_block_types\": [\n    \"UpDecoderBlock2D\",\n    \"UpDecoderBlock2D\",\n    \"UpDecoderBlock2D\",\n    \"UpDecoderBlock2D\"\n  ]\n}\n"
  },
  {
    "path": "configs/sdxl-refiner/model_index.json",
    "content": "{\n  \"_class_name\": \"StableDiffusionXLImg2ImgPipeline\",\n  \"_diffusers_version\": \"0.19.0.dev0\",\n  \"force_zeros_for_empty_prompt\": false,\n  \"add_watermarker\": null,\n  \"requires_aesthetics_score\": true,\n  \"scheduler\": [\n    \"diffusers\",\n    \"EulerDiscreteScheduler\"\n  ],\n  \"text_encoder\": [\n    null,\n    null\n  ],\n  \"text_encoder_2\": [\n    \"transformers\",\n    \"CLIPTextModelWithProjection\"\n  ],\n  \"tokenizer\": [\n    null,\n    null\n  ],\n  \"tokenizer_2\": [\n    \"transformers\",\n    \"CLIPTokenizer\"\n  ],\n  \"unet\": [\n    \"diffusers\",\n    \"UNet2DConditionModel\"\n  ],\n  \"vae\": [\n    \"diffusers\",\n    \"AutoencoderKL\"\n  ]\n}\n"
  },
  {
    "path": "configs/sdxl-refiner/scheduler/scheduler_config.json",
    "content": "{\n  \"_class_name\": \"EulerDiscreteScheduler\",\n  \"_diffusers_version\": \"0.19.0.dev0\",\n  \"beta_end\": 0.012,\n  \"beta_schedule\": \"scaled_linear\",\n  \"beta_start\": 0.00085,\n  \"clip_sample\": false,\n  \"interpolation_type\": \"linear\",\n  \"num_train_timesteps\": 1000,\n  \"prediction_type\": \"epsilon\",\n  \"sample_max_value\": 1.0,\n  \"set_alpha_to_one\": false,\n  \"skip_prk_steps\": true,\n  \"steps_offset\": 1,\n  \"timestep_spacing\": \"leading\",\n  \"trained_betas\": null,\n  \"use_karras_sigmas\": false\n}\n"
  },
  {
    "path": "configs/sdxl-refiner/text_encoder_2/config.json",
    "content": "{\n  \"architectures\": [\n    \"CLIPTextModelWithProjection\"\n  ],\n  \"attention_dropout\": 0.0,\n  \"bos_token_id\": 0,\n  \"dropout\": 0.0,\n  \"eos_token_id\": 2,\n  \"hidden_act\": \"gelu\",\n  \"hidden_size\": 1280,\n  \"initializer_factor\": 1.0,\n  \"initializer_range\": 0.02,\n  \"intermediate_size\": 5120,\n  \"layer_norm_eps\": 1e-05,\n  \"max_position_embeddings\": 77,\n  \"model_type\": \"clip_text_model\",\n  \"num_attention_heads\": 20,\n  \"num_hidden_layers\": 32,\n  \"pad_token_id\": 1,\n  \"projection_dim\": 1280,\n  \"torch_dtype\": \"float16\",\n  \"transformers_version\": \"4.32.0.dev0\",\n  \"vocab_size\": 49408\n}\n"
  },
  {
    "path": "configs/sdxl-refiner/tokenizer_2/merges.txt",
    "content": "#version: 0.2\ni n\nt h\na n\nr e\na r\ne r\nth e</w>\nin g</w>\no u\no n\ns t\no r\ne n\no n</w>\na l\na t\ne r</w>\ni t\ni n</w>\nt o</w>\nr o\ni s</w>\nl e\ni c\na t</w>\nan d</w>\ne d</w>\no f</w>\nc h\no r</w>\ne s</w>\ni l\ne l\ns t</w>\na c\no m\na m\nl o\na n</w>\na y</w>\ns h\nr i\nl i\nt i\nf or</w>\nn e\nð Ł\nr a\nh a\nd e\no l\nv e</w>\ns i\nu r\na l</w>\ns e\n' s</w>\nu n\nd i\nb e\nl a\nw h\no o\nd ay</w>\ne n</w>\nm a\nn o\nl e</w>\nt o\nou r</w>\ni r\ng h\nw it\ni t</w>\ny o\na s\ns p\nth is</w>\nt s</w>\nat i\nyo u</w>\nwit h</w>\na d\ni s\na b\nl y</w>\nw e\nth e\nt e\na s</w>\na g\nv i\np p\ns u\nh o\nm y</w>\n. .\nb u\nc om\ns e</w>\ner s</w>\nm e\nm e</w>\nal l</w>\nc on\nm o\nk e</w>\ng e\nou t</w>\nen t</w>\nc o\nf e\nv er\na r</w>\nf ro\na u\np o\nc e</w>\ngh t</w>\nar e</w>\ns s</w>\nfro m</w>\nc h</w>\nt r\nou n\non e</w>\nb y</w>\nd o\nt h</w>\nw or\ner e</w>\nk e\np ro\nf or\nd s</w>\nb o\nt a\nw e</w>\ng o\nh e\nt er</w>\nin g\nd e</w>\nb e</w>\nati on</w>\nm or\na y\ne x\nil l</w>\np e\nk s</w>\ns c\nl u\nf u\nq u\nv er</w>\nðŁ ĺ\nj u\nm u\nat e</w>\nan d\nv e\nk ing</w>\nm ar\no p\nh i\n.. .</w>\np re\na d</w>\nr u\nth at</w>\nj o\no f\nc e\nne w</w>\na m</w>\na p\ng re\ns s\nd u\nno w</w>\ny e\nt ing</w>\ny our</w>\nit y</w>\nn i\nc i\np ar\ng u\nf i\na f\np er\nt er\nu p</w>\ns o</w>\ng i\non s</w>\ng r\ng e</w>\nb r\np l\n' t</w>\nm i\nin e</w>\nwe e\nb i\nu s</w>\nsh o\nha ve</w>\nto day</w>\na v\nm an\nen t\nac k</w>\nur e</w>\nou r\nâ Ģ\nc u\nl d</w>\nlo o\ni m\nic e</w>\ns om\nf in\nre d</w>\nre n\noo d</w>\nw as</w>\nti on</w>\np i\ni r</w>\nth er</w>\nt y</w>\np h\nar d</w>\ne c\n! !</w>\nm on\nmor e</w>\nw ill</w>\nt ra\nc an</w>\nc ol\np u\nt e</w>\nw n</w>\nm b\ns o\nit i\nju st</w>\nn ing</w>\nh ere</w>\nt u\np a\np r\nbu t</w>\nwh at</w>\nal ly</w>\nf ir\nm in\nc a\nan t</w>\ns a\nt ed</w>\ne v\nm ent</w>\nf a\nge t</w>\nam e</w>\nab out</w>\ng ra\nno t</w>\nha pp\nay s</w>\nm an</w>\nh is</w>\nti me</w>\nli ke</w>\ng h</w>\nha s</w>\nth an\nlo ve</w>\nar t</w>\nst e\nd ing</w>\nh e</w>\nc re\nw s</w>\nw at\nd er</w>\nit e</w>\ns er\nac e</w>\nag e</w>\nen d</w>\nst r\na w\nst or\nr e</w>\nc ar\nel l</w>\nal l\np s</w>\nf ri\np ho\np or\nd o</w>\na k\nw i\nf re\nwh o</w>\nsh i\nb oo\ns on</w>\nel l\nwh en</w>\nil l\nho w</w>\ngre at</w>\nw in\ne l</w>\nb l\ns si\nal i\nsom e</w>\nðŁ Ĵ\nt on\nd er\nle s</w>\np la\nï ¸\ne d\ns ch\nh u\non g</w>\nd on</w>\nk i\ns h</w>\nan n\nc or\n. .</w>\noun d</w>\na z\nin e\nar y</w>\nfu l</w>\nst u\nou ld</w>\nst i\ng o</w>\nse e</w>\nab le</w>\nar s</w>\nl l</w>\nm is\nb er\nc k</w>\nw a\nen ts</w>\nn o</w>\nsi g\nf e</w>\nfir st</w>\ne t</w>\nsp e\nac k\ni f</w>\nou s</w>\n' m</w>\nst er</w>\na pp\nan g\nan ce</w>\nan s</w>\ng ood</w>\nb re\ne ver\nthe y</w>\nt ic\ncom e</w>\nof f\nb ack</w>\nas e</w>\ning s</w>\nol d</w>\ni ght</w>\nf o\nh er</w>\nhapp y</w>\np ic\nit s</w>\nv ing</w>\nu s\nm at\nh om\nd y</w>\ne m\ns k\ny ing</w>\nthe ir</w>\nle d</w>\nr y</w>\nu l\nh ar\nc k\nt on</w>\non al</w>\nh el\nr ic\nb ir\nvi e\nw ay</w>\nt ri\nd a\np le\nb ro\nst o\noo l</w>\nni ght</w>\ntr u\nb a\nre ad\nre s</w>\nye ar</w>\nf r\nt or\nal s</w>\nc oun\nc la\nt ure</w>\nv el\nat ed</w>\nle c\nen d\nth ing</w>\nv o\nic i\nbe st</w>\nc an\nwor k</w>\nla st</w>\naf ter</w>\nen ce</w>\np ri\np e</w>\ne s\ni l</w>\nâĢ ¦</w>\nd re\ny s</w>\no ver</w>\ni es</w>\nðŁ ĳ\ncom m\nt w\nin k</w>\ns un\nc l\nli fe</w>\nt t\na ch\nl and</w>\ns y\nt re\nt al\np ol\ns m\ndu c\ns al\nf t</w>\n' re</w>\nch e\nw ar\nt ur\nati ons</w>\nac h</w>\nm s</w>\nil e</w>\np m</w>\nou gh</w>\nat e\nst ar\nwee k</w>\n! !!</w>\nc lu\nth ere</w>\nn er</w>\nt om\ns el\nï¸ ı</w>\nwor ld</w>\nv es</w>\nc am\ngo t</w>\nin ter\nof f</w>\nu m</w>\nton ight</w>\no ther</w>\nh ou\nloo k</w>\nj e\ni d</w>\nsi on</w>\nbe au\nat t\nel i\nor t</w>\nre c\nf f\nst er\nsu pp\ng en\nbe en</w>\nil y</w>\nte am</w>\nm m\ni c</w>\npe op\nit t\nat s</w>\non ly</w>\nmb er</w>\nen g\nb ri\nm p\nk now</w>\nb ur\nb ar\nin s</w>\nlo w</w>\nsh e</w>\nro w</w>\nâ Ŀ\nt ro\npeop le</w>\nvi a</w>\nlo w\nag a\nbe t\nx t</w>\nf ac\nch ar\ne ar\nw al\ns en\nf am\nb le</w>\nn ati\nis h</w>\nn or\ng ame</w>\nli ve</w>\ns co\nle y</w>\nd on\nic k</w>\nb all</w>\nver y</w>\nthe se</w>\np an\ni a</w>\nat ing</w>\nc r\na re\ng ir\nma ke</w>\nst re\nsho w</w>\n. \"</w>\nf l\nu p\nd r\nthan ks</w>\nil li\nw om\nst s</w>\ni g\ns ur\never y\nc ur\nvie w</w>\nle t</w>\nin to</w>\nmo st</w>\nn a\nin di\ng ar\nha d</w>\ns ou\nv ed</w>\nan t\niti on</w>\nma de</w>\nf ol\nun i\nit ed</w>\nðŁ ı\nic al</w>\nth r\nread y</w>\nch ec\nd ra\nk es</w>\nboo k</w>\ne p</w>\nsi c</w>\nmor ning</w>\nne ws</w>\nc au\nc t</w>\nw ell</w>\nan c\npho to</w>\nth an</w>\nor s</w>\nbir th\ng g\nou t\nne xt</w>\nsom e\nen ing</w>\nstor y</w>\nch ri\ndo wn</w>\nhom e</w>\nf fe\nfre e</w>\nd a</w>\nb or\nf il\nci al</w>\nthan k</w>\nsi de</w>\nle ar\nqu e\nl ine</w>\nt en\nat es</w>\nye ars</w>\nm y\npho to\nbeau ti\nri ght</w>\nn u\nfor m\nshi p</w>\nb an\nth er\nd ays</w>\ng am\nas on</w>\ng y</w>\nðŁ İ\nbirth day</w>\nse t</w>\nic k\ne t\nst ill</w>\ncom ing</w>\nta ke</w>\nðŁ ĩ\nb b\ns ol\ns on\nd en\ne p\nmu sic</w>\nthe m</w>\nde n</w>\nwh y</w>\nf oo\nc ra\nam az\nw n\nh ol\nt ting</w>\nw r\nu e</w>\nma g\nc ro\nl an\nc lo\nb ra\na k</w>\ns ing</w>\nc al\nre ad</w>\n' ve</w>\njo h\nb ab\nd ri\nb lo\nbi g</w>\ner ic\nin t</w>\nt or</w>\ntr y</w>\nl a</w>\nle g\nhou se</w>\nm ic\nv al\nbeauti ful</w>\nl itt\nchec k</w>\nne w\nver s\ns w\nar i\npla y\nh er\nâĢ ĵ</w>\nw in</w>\nm a</w>\ncon gr\nsch ool</w>\nf un\n. @</w>\nhe al\nic h</w>\nd el\nwh ere</w>\nl on\nke t</w>\ntw o</w>\nmu ch</w>\nwat ch</w>\nv en\nd ed</w>\na st</w>\nk ed</w>\nb as\ngo ing</w>\nm p</w>\ne ver</w>\nw ays</w>\nro o\nde sig\nl y\ns ed</w>\nto p</w>\nl in\nch an\nto o</w>\nit ing</w>\nd ent</w>\ngh ts</w>\nt y\nsp o\nne ed</w>\nb lu\nin st\nbe ing</w>\nâĿ ¤\nw el\nl s</w>\nhi m</w>\nm ay</w>\nst ing</w>\nn a</w>\nel y</w>\nlitt le</w>\ng a\nn at\ntom or\nm c\nh on\nw ant</w>\na ir\npi c</w>\nam eric\np er</w>\nle ss</w>\nwee k\nve l</w>\na h</w>\nc ap\nch am\ng er\nti m\ntomor row</w>\nne ss</w>\nst ate</w>\nh al\nser v\nz e</w>\no s</w>\np at\nv is\nex c\ns in\nf f</w>\nc ity</w>\nc en\nan y\nb el\nsu mm\nt in\nw ould</w>\nloo king</w>\nk o\nce le\nfam ily</w>\nm er\npo w\nhel p</w>\nbu s\nc o</w>\nc le\nsel f</w>\nen s</w>\nic s</w>\nth o\nan i\nch o\nle ad\nb s</w>\nt wee\nth ink</w>\nfor e</w>\nch il\nvi de\ndi d</w>\nal e</w>\nch i\nv il\nen ds</w>\nw ing</w>\np as\n' ll</w>\nv ol\ns a</w>\ng s</w>\nman y</w>\nj ec\nbe fore</w>\ngra ph\nn y</w>\nur ing</w>\nw il\nd d\nbu il\nf av\nst ed</w>\ntr an\nl ing</w>\nou d</w>\nd ge</w>\nfi el\nnati onal</w>\nst a\nc er\nw ere</w>\nin a</w>\nse ason</w>\nc ou\nn ed</w>\namaz ing</w>\nti ons</w>\ncele br\nn s</w>\na th\nhe ad</w>\ns day</w>\nd ar\nlo c\nv in\nan other</w>\ng oo\ns at\nn y\njo in</w>\npre s\ns es</w>\ns ing\nan a</w>\nin ing</w>\n.. ..</w>\nc our\nï¸ ı\nac t</w>\ncau se</w>\nli ght</w>\nam s</w>\nt a</w>\nb al\nf c</w>\nhi gh</w>\noff ici\nt t</w>\nchri st\nd ic\nd ay\nra l</w>\nh or\n: )</w>\nvi si\nn am\no b\nma s</w>\ngh t\nre ally</w>\nt un\nfin d</w>\nthr ough</w>\npor t</w>\nu t\nti ve</w>\nst y\nn e</w>\nor e</w>\nðŁĺ Ĥ\nsupp ort</w>\nne ver</w>\nev en</w>\nðŁ Ķ\nh a</w>\ny a</w>\nl d\nu k</w>\nr an\nj am\nwi th\nme di\nd es</w>\nne y</w>\nch ing</w>\nal e\nh y\nk in\n! !\nd y\npl ace</w>\nal so</w>\nb le\nwh ich</w>\nbl ack</w>\nb li\ns ay</w>\npar k</w>\npl ay</w>\nir e</w>\nvide o</w>\nweek end</w>\na il\nke y</w>\np t</w>\nw ard</w>\nfri day</w>\nd in\nine ss</w>\ng ro\nb en\nal ways</w>\nt ball</w>\nag o</w>\nm il\nc y\npro duc\ndi sc\nun der\nple ase</w>\nsp or\nfu ll</w>\ne y</w>\nðŁ Ļ\nis e</w>\niti es</w>\nc at\nk no\nu se</w>\nfo re\nk er</w>\nar t\nhi gh\nop en</w>\ns an\ne f\nour s</w>\nsh ed</w>\nst ri\nd ro\naga in</w>\ni m</w>\nðŁ ĵ\nen jo\nfu n</w>\nge tting</w>\np en\ng er</w>\nc li\nan y</w>\never y</w>\ne u\nwom en</w>\nâ ľ\ne st</w>\nc ould</w>\nr y\n\" @</w>\nth ou\nsh a\ncomm un\nb er</w>\nd ents</w>\ndi s\nwh ile</w>\naw ay</w>\ndi o</w>\nh am\ng la\nd ate</w>\nk a</w>\nmis s</w>\nun ch</w>\nw on\nin f\nroo m</w>\ng a</w>\nre al</w>\nex per\ndi rec\nsh ould</w>\nsp r\ng ol\nl ong</w>\nbet ter</w>\nor i\ne y\ni ence</w>\nil s</w>\nz z\nh an\nf ound</w>\nv s</w>\nâ Ļ\npo st</w>\nti c</w>\npar t</w>\nm en\nren ce</w>\nce ss</w>\nv ic\ns il\nsho p</w>\nðŁĺ Ĥ</w>\nf ood</w>\nv al</w>\nsti c</w>\ny ou\ns ays</w>\ne lec\nst ar</w>\no c\nl and\ni d\nc tion</w>\nfiel d</w>\ns of\nst art</w>\nwat er</w>\nfri ends</w>\non es</w>\nðŁ Į\nf la\nf ar\nwh ite</w>\npar ty</w>\nin st</w>\ngr ou\nt v</w>\nevery one</w>\nm ent\nj a\nch a\npr in\nan ts</w>\nd uring</w>\nl at\nl ar\nwe st</w>\nth en</w>\nk a\ny oun\nin sp\nin te\nwe en</w>\nvisi t</w>\naga inst</w>\nre le\nhe ad\nc es</w>\nto wn</w>\nloo ks</w>\nth re\nre gi\nren t</w>\npro jec\ngir l</w>\nse ar\nw o\nm om\nc ar</w>\nh un\npu bli\nd i</w>\np le</w>\nc all</w>\nc ri\nu m\nfor d</w>\nper fe\nfri end</w>\nh ard</w>\nssi on</w>\nte st</w>\npla ying</w>\nar ound</w>\nbe cause</w>\nke ts</w>\nme et</w>\nsat ur\nar ti\nwor k\nj un\nv en</w>\nr un\nme mber</w>\npor t\nsu per\nt wit\ns am\nel s</w>\nt ly</w>\nad v\nati ve</w>\nat h</w>\ns ure</w>\nav ail\nla r</w>\ns qu\nar ds</w>\nev ent</w>\nm en</w>\nl l\no ver\nlo gy</w>\nit al</w>\ntim es</w>\nm al\nb ack\nc oo\nma king</w>\nst ru\nâ ģ\nit u\nsh ar\ng an</w>\nc as\ns n\nsumm er</w>\npic ture</w>\nf an\nh in\nchrist mas</w>\nc y</w>\npr oud</w>\ncham pi\ndesig n</w>\npp ing</w>\nho pe</w>\nc a</w>\navail able</w>\nma y\nwe d\nphoto graph\nspe cial</w>\nsal e</w>\nsto p</w>\ner y</w>\na we\nal ity</w>\nhi story</w>\nam a</w>\npre si\nb ru\nwor king</w>\nd one</w>\nd r</w>\nk en</w>\nfe at\nw ood</w>\nate st</w>\nsun day</w>\nmo vi\nvel y</w>\ns le\nf ace</w>\nsp ec\nstu dents</w>\nb y\nha m</w>\nsp on\nbus iness</w>\nd at\ni e</w>\ni p\nso ci\ng lo\nh and\nre cor\nr s</w>\nme e\nke ep</w>\np ur\nheal th</w>\nsh e\ncom ple\ngo d</w>\nda vi\ncol lec\nli st\nr a</w>\nclu b</w>\nt ers</w>\nin clu\nth ings</w>\npl an\nâ ĺ\njoh n</w>\nsh ing</w>\nat ul\nso on</w>\nblu e</w>\ng or\nsatur day</w>\nw on</w>\ncongr atul\nse e\nâĿ¤ ï¸ı</w>\ntho se</w>\nðŁĺ į</w>\nfin al</w>\nd ou\nit h</w>\no wn</w>\nro ad</w>\nt our</w>\na st\nindi a</w>\nti l</w>\nn d</w>\nf er\nfav or\nsu l\nlear n</w>\nfir e</w>\nju st\ngrou p</w>\na h\nr ac\nbo dy</w>\nu r</w>\nc are</w>\nà ¸\np lo\no h</w>\npo s\ngi ve</w>\nte ch\nsu b\nc ent\ner ing</w>\ny m\nil ity</w>\nf ic\nlon don</w>\nv ir\ngu ys</w>\nb a</w>\nðŁ ¤\nbab y</w>\nsc re\nðŁĺ į\ntru mp</w>\nun der</w>\nchan ge</w>\ni an</w>\ncol le\nss es</w>\nl er</w>\nss ed</w>\nn ice</w>\nann oun\npow er</w>\ns ar\na king</w>\nmin i\ns li\ns wee\nk ar\nfu l\nc ru\nac tion</w>\na ther</w>\n) .</w>\nst and\nde vel\na a\ng an\nle ft</w>\nlo l</w>\nre l\ntran s\nm ents</w>\nin t\ne f</w>\nman ag\ndi g\ngen er\ndo wn\np au\nti v\nk u\nth ur\nk en\nst on</w>\nf ans</w>\ntal k</w>\ntwee t</w>\nt oo\nsty le</w>\npro te\nse con\nfr on\nawe some</w>\ng l\np al\nne t\ns or\nla u\ng on\nsin ce</w>\nt ty</w>\nser ies</w>\nme mor\nb eli\nfil m</w>\ndi d\ndi es</w>\no t\ncongratul ations</w>\np ra\ne ve</w>\nw oo\noffici al</w>\nsu c\nin cre\nb on\npar t\npp ed</w>\ncla ss</w>\nsi ve</w>\nbo y</w>\ncu l\nperfe ct</w>\nt ou\nd am\nwel come</w>\nfoo tball</w>\nh i</w>\np ap\nwa it</w>\nad a</w>\ncongr ats</w>\nyoun g</w>\nexc ited</w>\nre ce\nj an\nv a</w>\nre d\nst ra\nmedi a</w>\n' d</w>\ndo es</w>\nle t\nmu l\nill s</w>\ngre en</w>\nm el\nto ge\nfu ture</w>\nye ster\nvers ity</w>\nfor m</w>\nta in</w>\ni de\nch es</w>\nki ds</w>\nqu i\nha ha\nde ta\nbi g\nfavor ite</w>\ngir ls</w>\ncon tin\ndo m</w>\nsear ch</w>\nu al</w>\na ir</w>\nd ers</w>\nmon th</w>\nc er</w>\nyester day</w>\ncommun ity</w>\nad e</w>\ndo g</w>\nvil le</w>\nic es</w>\nd eli\nsy ste\nru n</w>\nis m</w>\nhe art</w>\nc up</w>\nen ti\nfe w</w>\npresi dent</w>\ne ds</w>\nun til</w>\nfe sti\no k\nf lo\nsa id</w>\nol e</w>\nme d\ntra vel</w>\nÂ £</w>\nph one</w>\ntoge ther</w>\nfa st</w>\nlo t</w>\ngam es</w>\nsh ir\nbet ween</w>\ny es</w>\nth ers</w>\ndo ing</w>\nm ac\nat or</w>\nb and</w>\nfol low\nprojec t</w>\ndevel op\ndi ffe\ncon fe\nspe ci\nca st</w>\ny s\nbo ard</w>\nr d</w>\ni al</w>\nsh oo\nr am\nha ving</w>\nsh are</w>\nfol low</w>\non e\nn ame</w>\nm r</w>\npu t</w>\ndisc u\nor y</w>\nc ame</w>\nou s\ns ite</w>\ntwit ter</w>\nt b\nt it\nfin ally</w>\nz ed</w>\nsu per</w>\ncom pan\nus ing</w>\nall s</w>\nli st</w>\nr is</w>\nsho t</w>\ng al\nt ar\nde l</w>\njoh n\nâĢ Ķ</w>\nsome thing</w>\nra m</w>\ninte re\nwh e\nb it</w>\nðŁ į\nstre et</w>\noun d\na i\ntic kets</w>\nmovi e</w>\nre al\nk y\nta king</w>\no pp\nc c</w>\nl am\nm oun\nin ve\nbl ack\nus ed</w>\non line</w>\ny or\nloc al</w>\ngu e\nc ks</w>\no w\nge st</w>\nbo ys</w>\nilli on</w>\ncon t\nre ci\nin ed</w>\neu ro\nno w\nse en</w>\np h</w>\nte ach\nde f\nsou th</w>\nsu ch</w>\naw ard</w>\nmu st</w>\nis su\nca re\nfe el</w>\np lu\nl atest</w>\nspor ts</w>\nwe b\nte x\ne ment</w>\ns k</w>\nfi c</w>\nw an\nte ch</w>\no t</w>\nbo x</w>\nn er\nfre e\nt al</w>\na sh\nc ase</w>\nho t</w>\nwon der\nmee ting</w>\ner a</w>\nch all\nðŁ Ĳ\njo b</w>\nil i\nc ool</w>\nj our\nth s</w>\nm o</w>\nf el\ndi e</w>\nmic ha\ne le\nte am\nserv ice</w>\nst and</w>\nma kes</w>\np ing</w>\near ly</w>\ncom es</w>\ne k</w>\nho li\nv ers</w>\nag ue</w>\ns au\nthre e</w>\nmon day</w>\nfa shi\nsome one</w>\nth ro\nse a</w>\nb ad</w>\nsupp or\ntur n</w>\nur y</w>\nm ing</w>\nphotograph y</w>\nn ic\nmar k</w>\npre tty</w>\nss ing</w>\nwat ching</w>\nme mb\nar ri\ncoun ty</w>\nbe ach</w>\nfr an\ncen ter</w>\npol ice</w>\nb at\npubli c</w>\nt an\npre ss</w>\ns af\ns y</w>\nge ts</w>\nro y\nn ers</w>\ny our\nbu y</w>\nst ers</w>\nsho w\nas ed</w>\nchil dre\naf ric\nin es</w>\nsp ace</w>\nsc ri\nh all</w>\npa in\nar ing</w>\nhom e\nm ur\nheal th\nch ed</w>\ns and\nrece i\ngu y</w>\ne a\nameric an</w>\nre si\nchildre n</w>\n- -\ni ri\ning ton</w>\ncoun try</w>\nro ss</w>\nle n</w>\nann a</w>\nboo ks</w>\nb c</w>\ne ce</w>\nd om\nlo vely</w>\nk h\npe t\ng y\ng ri\nst age</w>\noff ice</w>\nro ck</w>\nm on</w>\nb ay</w>\nt able</w>\nsu n</w>\nm ed</w>\nth in\nl or\nf low\n( @</w>\nuni versity</w>\nstor e</w>\nfron t</w>\ngoo d\nz a</w>\nvo te</w>\nnor th</w>\nhe y</w>\nan im\nor der</w>\nmi d\nwith out</w>\na de\nre member</w>\nmar ket</w>\n? ?</w>\nmu s\ntra ining</w>\ne duc\nbu t\nco ver</w>\nst an\nsc en\nb la\nbre ak\nl ou\ns ame</w>\ng old</w>\na in</w>\no s\nbo th</w>\nl it\nver n\na i</w>\nal bu\np a</w>\nenjo y</w>\nbe g\nell ing</w>\nthur sday</w>\ninf o</w>\ns an</w>\nameric a</w>\nha ir</w>\nte l</w>\nmar ch</w>\ncon cer\ncolle ge</w>\nconfe rence</w>\nap p</w>\nh our</w>\nch ang\nâ ļ\ns our\nol s</w>\nwe ather</w>\nw ar</w>\np hi\nfesti val</w>\nsecon d</w>\ncu te</w>\npr ac\nen er\nstr y</w>\nle a\npol it\ns av\nse n</w>\no w</w>\nm i</w>\nne ar</w>\nou ght</w>\nz e\nco ffe\nw illi\nd an\nse y</w>\ndavi d</w>\ne se</w>\nf an</w>\nde ci\nthe at\nno v\nati on\ntr ac\nsc i\nre view</w>\nc el\ne m</w>\nu n</w>\nju ly</w>\nor ig\nti on\nd ru\nform er</w>\nst ay</w>\naf ter\nin v\ntoo k</w>\ndat a</w>\nb al</w>\ntu es\nd an</w>\nev ening</w>\nðŁĺĤ ðŁĺĤ\nd ol\nu res</w>\npro vi\nt s\ne st\nsig n</w>\nj ac\nu k\ns ong</w>\nye t</w>\nbo w\nin du\nj ap\nh oo\npo int</w>\nany one</w>\nz y</w>\ni st</w>\nh ur\nit al\nbuil ding</w>\nwom an</w>\nch ur\nj er\nper for\nco ach</w>\nle ague</w>\nce ss\nne t</w>\ni mag\nnati on\nbr it\nqu e</w>\naw ards</w>\nag es</w>\nwor ks</w>\nc ed</w>\nman ce</w>\nl ate</w>\nig n</w>\nmon ey</w>\ntru e</w>\ni i</w>\nt ell</w>\npl ac\np ac\nas y</w>\nwor ld\nbe hin\nim port\nread ing</w>\ngra m</w>\ngi ving</w>\nme t</w>\nh it</w>\nfor ward</w>\nst om\npres ent\njun e</w>\nso cial</w>\nno on</w>\nmar t\nhal f</w>\ns we\ngo vern\nk er\ndeta ils</w>\nli sh</w>\n_ _\nac y</w>\nsi a</w>\nber t</w>\nf all</w>\n! !!!</w>\n) ,</w>\nth i\nd iti\nsp ort</w>\nk ing\nf it\nst af\nc at</w>\nmu se\ncen tr\ny er</w>\ncon tro\nb loo\nwal k</w>\nac tu\ndid n</w>\nli m\nlear ning</w>\nre search</w>\nwed ne\nau th\nh ours</w>\nk y</w>\nf ar</w>\nh en\n.. ..\nit ch\nri l</w>\nstr ong</w>\nsk y</w>\nque sti\njam es</w>\nr on\nd g\nf ur\nc in\ndo es\napp ro\nmar ke\ntu res</w>\nful ly</w>\nch at</w>\nbehin d</w>\nte m\nfin i\nmis sion</w>\nb att\nfe el\nhe av\nevery thing</w>\nb ar</w>\nw ish</w>\npre mi\ni ma\nexper ience</w>\ne ach</w>\nre port</w>\nswee t</w>\ntic s</w>\nspr ing</w>\nre spon\nsyste m</w>\nvic tor\nl in</w>\nsa w</w>\nal ready</w>\ngh ter</w>\nf le\nã ĥ\nbr ing</w>\nalbu m</w>\n- -</w>\nell s</w>\nst an</w>\nto m</w>\ninter national</w>\nw ent</w>\nan ni\nmat ch</w>\npp er</w>\nst one</w>\nsm all</w>\nra in</w>\nfashi on</w>\nare a</w>\nv an\nag ram</w>\nk o</w>\nthou ght</w>\nwor th</w>\nv an</w>\nm er</w>\ncoffe e</w>\nit es</w>\ng n\narti st</w>\nc on</w>\nar ch\nc ir\nse cre\ngr ound</w>\nis o\nh and</w>\nco m</w>\nbri dge</w>\nh s</w>\nx i\nl ink</w>\npu l\nsp l\nr ace</w>\nf li\nri ver</w>\ng as</w>\ndi sco\nd al\nplay er</w>\nf it</w>\nphoto s</w>\nit y\no k</w>\nj or\ntr a</w>\nap ril</w>\nad s</w>\na di\nsol u\nbeau ty</w>\ndo or</w>\nme ss\nup date</w>\nali a</w>\nsch o\nen ed</w>\nmom ent</w>\nsco t\nsc ience</w>\ni or</w>\nti es</w>\nac ross</w>\nous ly</w>\nsh es</w>\ndoes n</w>\np age</w>\nwat er\nm illion</w>\ncla ssi\nl ic\nca st\nform ation</w>\nmicha el</w>\nell o</w>\ns mo\nin ts</w>\nvi sion</w>\nop ening</w>\nld n</w>\nau str\ntues day</w>\nwin ner</w>\npo ssi\nr ound</w>\nshir t</w>\ndi t</w>\nb o</w>\nu es</w>\nil led</w>\nal ong</w>\ntri p</w>\nstar ting</w>\nim pro\nk an\nper son</w>\nno t\nre co\nne eds</w>\nc le</w>\nli e</w>\nre st</w>\nr ing</w>\nwin ter</w>\nsi mp\nmo m</w>\nbe er</w>\nfac e\ntor s</w>\nus a</w>\ncollec tion</w>\nge or\nse ssion</w>\ntr ying</w>\nla s</w>\nla ke</w>\nj en\norig in\nstu dent</w>\nse cur\nv in</w>\npic s</w>\nex pe\ncom p\ngon na</w>\ne qu\nb ad\nle y\na u</w>\nmemb ers</w>\nbre ak</w>\nw all</w>\ngi c</w>\ndin ner</w>\nbu l\ninsp ir\nr i</w>\nmin d</w>\nic a</w>\nwin ning</w>\ntal king</w>\nt ren\ns is</w>\nt en</w>\nwonder ful</w>\ns now</w>\nhe ar</w>\nth om\nno thing</w>\ngu i\nst in\nblo g</w>\nfe st</w>\nb un\nle e</w>\nwar ds</w>\nch ance</w>\ndre ss</w>\nre n</w>\npau l</w>\np es</w>\ntech no\nru ssi\nc ard</w>\ne ast</w>\nmar i\nw ine</w>\nt i</w>\nla w</w>\nstr ic\nk i</w>\nap e</w>\nau gu\npro fe\nas h</w>\ncour se</w>\nma il</w>\nren tly</w>\nd un\nm un\nlo ve\nis land</w>\ndri ve</w>\ns l\nend ed</w>\nma in</w>\nlo st</w>\nnat ure</w>\nâĿ¤ ï¸ı\nch ic\nre por\np in\npr o</w>\nst ation</w>\nce p\nta kes</w>\ncompan y</w>\ngo es</w>\non d</w>\nma ch\nra dio</w>\nd ad</w>\nro ck\nj a</w>\np ay\nchampi on\ne e\nin de\ntt a</w>\nati c</w>\nt ab\nbeli eve</w>\nener gy</w>\nz i\nt at\nwor d</w>\non ce</w>\nre sul\ny l\nand re\nan o</w>\ninst agram</w>\nclo se</w>\nt am\ncu stom\nw a</w>\ncon om\nsho ws</w>\nli fe\nk in</w>\nro b\nt age</w>\nn ation</w>\nal most</w>\nlist en</w>\nsa ve</w>\nre li\nac e\nmar y</w>\ntre e</w>\nfor get</w>\nj ack\nwa iting</w>\ndirec tor</w>\nh ill</w>\nbor n</w>\nte mp\nf l</w>\nst e</w>\non a</w>\nsing le</w>\nwedne sday</w>\nun ited</w>\nin o</w>\n@ _</w>\nne l</w>\ncelebr ate</w>\nen ding</w>\nde al</w>\nj i</w>\ncan ada</w>\nhu ge</w>\ntr ack</w>\nâĢ ¢</w>\nf y</w>\nfan ta\nan g</w>\nyor k</w>\nrele ase</w>\np un\nep iso\nwor ds</w>\nt our\np ack\ni gh\nclassi c</w>\nperfor mance</w>\nke t\nafter noon</w>\nrecor d</w>\nwin s</w>\npro ble\nâĿ ¤</w>\nf our</w>\nb ed</w>\nban k</w>\nd ance</w>\ns la\ncal led</w>\nmi ght</w>\na p</w>\npa st</w>\nðŁ ļ\ndiffe rent</w>\nit e\ngi ft</w>\nssi ve</w>\nchur ch</w>\nc us</w>\npro gram</w>\nho tel</w>\nic e\nma d\nsecur ity</w>\nen ge</w>\nd c</w>\nen ough</w>\nst a</w>\ne ty</w>\nde ad</w>\ng un\nhe ar\nm ir\nhu man</w>\ngre ss</w>\noun ds</w>\npi ece</w>\nbre aking</w>\ngar den</w>\nfi ght</w>\nvie ws</w>\nf ish</w>\nstar ted</w>\nrun ning</w>\ngre en\nser i\ns m</w>\nas k</w>\nd or\nde ath</w>\ne conom\ner i\nir d</w>\ns er</w>\nl unch</w>\nâģ ¦\nbo x\nnat u\nba se\nb an</w>\nf al\nglo bal</w>\nwil d\nwo w</w>\nout side</w>\nmo ve</w>\nle ad</w>\nan al\nmuse um</w>\non g\nha w\npow er\nthan k\nb ac\nchar ac\ncam pa\ndig ital</w>\nr o</w>\nop er\nde v\nw ol\np ati\nf a</w>\nm ale</w>\npap er</w>\nill ing</w>\nc s</w>\nâ ĥ\neduc ation</w>\nta ken</w>\ne ffe\nm ou\ns ad\n\" .</w>\nbas ed</w>\nstaf f</w>\ninclu ding</w>\nli ving</w>\na c</w>\nch ina</w>\nmo b\nstor m</w>\nlu ck</w>\nph il\no o</w>\ny n\ntra vel\nk el\nti al</w>\npr ice</w>\nboo k\nimport ant</w>\nbi o\np ool</w>\nny c</w>\nf ab\nlo ad</w>\n? !</w>\nchall enge</w>\ncr y\nser ve</w>\nwe ar</w>\nbu s</w>\nta in\nnu mber</w>\nro r</w>\nk at\ni z\nth ough</w>\nho sp\nm m</w>\nfa ir</w>\nut es</w>\nho t\npo p</w>\nfi ed</w>\ncam p\ndevelop ment</w>\nli br\nc ali\nem s</w>\nâģ¦ @</w>\nb ol\nis ed</w>\nstand ing</w>\nmo del</w>\nit a</w>\ng le</w>\nbro wn</w>\nima ge</w>\nve red</w>\nfor ce</w>\no il</w>\npar tic\nsh u\nda ily</w>\nla w\nse c\ncla ss\ncam p</w>\nholi day</w>\ncl in\nk ers</w>\npres ent</w>\ngam e\nincre di\ner ship</w>\ninter view</w>\nb ill</w>\ndu e</w>\nand y</w>\nab o\nin nov\nke y\nac ade\np il\nmo der\nst ars</w>\nbr and</w>\nf er</w>\nwee ks</w>\ncon si\npr e</w>\nsa fe\nwr it\ndi um</w>\nla unch</w>\nmarke ting</w>\nann ual</w>\nas si\ncour t</w>\nla dy</w>\nc ted</w>\nand a</w>\nin side</w>\nchil d</w>\nopp or\nsm ith</w>\ncentr e</w>\ngu e</w>\nâģ ©</w>\nf ren\nst y</w>\nfor t</w>\nent ly</w>\nis n</w>\nke ep\nto ber</w>\non y</w>\nbo y\nal d</w>\ncol la\nde mo\nle vel</w>\ncom pet\nad o</w>\nb our\nfanta stic</w>\nm ate</w>\ns u</w>\nsou th\noppor tun\nvers ary</w>\nlat er</w>\nbu d\nface book</w>\nla un\nster n</w>\np it\n! \"</w>\nma j\ngr am\ntb t</w>\nfi re\nhapp y\na ks</w>\nwh ole</w>\nactu ally</w>\nill er</w>\nell a</w>\nlo ts</w>\nal ex\nan ge\nlan ds</w>\nðŁĺ Ń\nen ter\nr ou\nepiso de</w>\np ed</w>\nin ten\nsh ire</w>\nwh o\npl an</w>\nh o</w>\nca ke</w>\nwe st\nmag az\nfre sh</w>\nc c\nn ar\nch ris</w>\nwr iting</w>\nw er</w>\nn om\nl o</w>\nmi dd\ndre am</w>\no l</w>\nti onal</w>\nde b\n> ></w>\nbe come</w>\ns i</w>\ngr and</w>\nall ing</w>\nhi stor\nri de</w>\ni red</w>\nsaf e</w>\nque en</w>\nci l</w>\nin tro\nvi l</w>\nd ani\n.. .\nar tic\nst at\nsh ort</w>\nor ing</w>\nsel fi\nmis si\ndo c\nb it\ng all\nb om\ni re\nse lec\nd ition</w>\nðŁĶ ¥</w>\nfri end\nbe at</w>\ngh ting</w>\nðŁĺ Ĭ</w>\npe ace</w>\nex hi\nant a</w>\nab ility</w>\nil lu\nj on\nqu ality</w>\ntri bu\nm es</w>\nplay ers</w>\nfa ir\ncu t</w>\nc ab\nsuc cess</w>\nb i</w>\nsu s</w>\npro mo\nsch e\nan ge</w>\nic o</w>\ncomm it\ncat ch</w>\nill a</w>\nkin d</w>\nfeel ing</w>\nqu o\ns ay\nanni versary</w>\nspo t</w>\nmo ther</w>\nan e</w>\np end\nyour self</w>\nop s</w>\napp le</w>\nmin utes</w>\np o</w>\ngr and\nri es</w>\nha ha</w>\ncare er</w>\ned ition</w>\nde c\nric k</w>\nam i</w>\nconcer t</w>\niti ve</w>\nge ous</w>\nd ly</w>\nt te</w>\nadv ent\ni g</w>\nli ghts</w>\nak er</w>\nsk y\nâĥ £</w>\nr ay</w>\nfini shed</w>\nw ay\ns d\nac coun\nðŁĴ ķ</w>\nck y</w>\nch el\nlit er\npain ting</w>\nlo s</w>\nst un\ntechno logy</w>\nn as\nma r</w>\nb il\nafric a</w>\nki e</w>\ney es</w>\ngol f</w>\nplu s</w>\nni a</w>\nit ec\nserv ices</w>\nwed ding</w>\nkno wn</w>\nte le\n.. ...</w>\nstar ts</w>\npa ren\nw ants</w>\nati onal</w>\nmon ths</w>\nwin do\nfav our\ner t</w>\nmagaz ine</w>\nex clu\nre ve\nb c\norigin al</w>\ne ss\nn al</w>\nan ti\nst ro\nt ice</w>\nstu dy</w>\nà ¤\nv ac\nnation al\nfi ve</w>\nra in\nve ment</w>\nu te</w>\nver se</w>\nem er\nar my</w>\npossi ble</w>\ngue ss</w>\nval ley</w>\nther n</w>\ncro w\nm r\ncol or</w>\non to</w>\npic k</w>\ncle ar</w>\ndar k</w>\nt ac\nwan ted</w>\nit ting</w>\ncan cer</w>\ngovern ment</w>\ndi e\nri se</w>\nz ing</w>\ncol d</w>\nf oun\nstu dio</w>\nstr ation</w>\nbro ther</w>\na head</w>\nsh el\nmic ro\nic ally</w>\nd au\nsig ned</w>\nvi ol\na x\nas se\ni o\nw re\nspl ay</w>\nch ick\naugu st</w>\npl at\nti ps</w>\nsp i\nhu man\ne asy</w>\nlo gi\nmi ke</w>\ngro w\nag re\nw w\nsh ad\nmo tiv\nwi de</w>\ntur ns</w>\nom g</w>\nv ar\nde fin\nsu g\nj im\nðŁĶ ¥\nt d</w>\ncampa ign</w>\nnam ed</w>\nre tweet</w>\nco p\nt v\nle av\nk is\ndou ble</w>\ns mar\nissu e</w>\nvil la\nin formation</w>\nli es</w>\nsto ck</w>\nn t</w>\ndi stric\nsh or\nmi x\ner o\nse p\nme x\nsee ing</w>\nli ve\nre min\nco de</w>\ng ur\ns c</w>\nwil d</w>\nl un\nh ood</w>\nspo t\nfa ther</w>\nfore ver</w>\nup d\ntra f\nf ly</w>\nne ed\ngra du\ntra in</w>\nma ke\ns ab\nbe y\nsi ze</w>\nlead er</w>\ntal ks</w>\ne u</w>\nlo g\nfo x</w>\ngor geous</w>\nle ss\nle ts</w>\nsur pri\nmy self</w>\nno te</w>\nli ves</w>\nf ru\nlo ved</w>\nse ver\nde m\nj i\nso c\nh old</w>\ndo gs</w>\nn i</w>\nâ ŀ\nlea ve</w>\nair port</w>\nben ef\nex pl\nshi ps</w>\ncomple te</w>\nach i\ngre at\nvin tage</w>\nj ack</w>\nro c\nwoo d\npri v\noff er</w>\ney e</w>\nver sion</w>\nte a</w>\nco ach\noff ic\nw ell\ng en</w>\ns at</w>\nh h\nyou th</w>\no x\n? \"</w>\nm t</w>\nmi x</w>\ng g</w>\nd le</w>\nnatu ral</w>\nbuil d</w>\nbreak fast</w>\nthin king</w>\ntheat re</w>\nmo on</w>\nber g</w>\ngo als</w>\ngeor ge</w>\nen e\nexc ell\nil ing</w>\ntun e</w>\ny ed</w>\ng ate</w>\nm it\nnet work</w>\njo e</w>\nh ello</w>\nf b</w>\ntu be</w>\nwe aring</w>\nath le\nstru c\nhar d\ngla ss</w>\ng ers</w>\nthro w\ng es</w>\nb t\nindu stry</w>\nmanag ement</w>\nali st</w>\ngo al</w>\nstre am</w>\ny el\na vi\nici ous</w>\no thers</w>\ns ki\nchri sti\nbir d</w>\ne sc\nm in</w>\ntr o</w>\nl t</w>\nj an</w>\nim p\nri ghts</w>\nsh a</w>\nor gan\ncent ral</w>\nar a</w>\nro ll</w>\nfavour ite</w>\nche ster</w>\nel se</w>\np ay</w>\ncar s</w>\nm ine</w>\nste p</w>\nprac tice</w>\nmaj or</w>\nh ang\nðŁĺ ĺ</w>\nn on</w>\nv ari\neng ine\nvol un\ndi a</w>\ni led</w>\narch itec\np ink</w>\nd s\nth y</w>\nwa sh\nweb site</w>\nba g</w>\ncontro l</w>\nel li\nf ra\nan sw\nd ence</w>\ny u\nr on</w>\nol a</w>\ng in\ndr in\nli c</w>\ncou ple</w>\nsp ar\ng on</w>\ncre ate</w>\nc t\ncelebr ating</w>\nde ep</w>\ne at</w>\nte e</w>\nvo ice</w>\ndro p</w>\nvis it\nat ors</w>\nsta dium</w>\nf t\nw is\nro l\ngra de</w>\nfam il\npo ints</w>\nre pre\nw as\ntraf fic</w>\njap an</w>\nor g\nhon or</w>\ntex as</w>\nman u\nâĻ ¥</w>\nsafe ty</w>\nre r</w>\nb ag\nem plo\nrele ased</w>\nre gu\nak a</w>\nn av\nro le</w>\nsen ior</w>\nspec t</w>\ncro ss</w>\nlin es</w>\nbe st\np ack</w>\ns in</w>\nti e</w>\nmis sing</w>\nsun set</w>\nli ber\nis ing</w>\nj ay\nsk i</w>\nchampion ship</w>\nac tiv\nla dies</w>\nplay ed</w>\ny y\npu bl\nal o\npri de</w>\ns r\npa ki\nlu x\nsur vi\nck ed</w>\ne ts</w>\ncho col\naustr alia</w>\npar is</w>\nmi les</w>\nh at\nment al</w>\nal a</w>\nme an</w>\nmob ile</w>\nen a</w>\nin si\nf ound\nchi ef</w>\nt ag\nincredi ble</w>\nre turn</w>\nÃ ©\ngoo gle</w>\nfren ch</w>\ncre w</w>\nhal lo\nali an</w>\nj az\nch er</w>\nsil ver</w>\nnor th\neng lish</w>\nbase ball</w>\nc af\nlim ited</w>\nfollow ing</w>\napp reci\near th</w>\nk ir\nve mber</w>\nw ed</w>\np tion</w>\ng ed</w>\noc tober</w>\nfl ori\nc r</w>\nen cy</w>\nga ve</w>\nlor d</w>\nstu ff</w>\nber ry</w>\npo st\nsm ile</w>\nbro ad\nst ate\ngg er</w>\nme ans</w>\nic y</w>\ngu n</w>\ny o</w>\nma ster</w>\nbur g</w>\nhan ds</w>\nni e</w>\n/ /</w>\nuni on</w>\nbrit ish</w>\nbig gest</w>\ndistric t</w>\nam ing</w>\nh il\no ce\nper son\npas s</w>\nen vir\nscho ols</w>\narri ved</w>\nanc es</w>\ninsp ired</w>\nex pla\nbe n</w>\nlibr ary</w>\nbo tt\nam p\nste ph\ncont act</w>\nb ang\nm s\ncali for\nt old</w>\nbatt le</w>\nb b</w>\nchic ago</w>\nâľ ¨</w>\nstr ate\nsh i</w>\nde ce\n- )</w>\nad d</w>\nla b\nj ones</w>\nleg end</w>\ncast le</w>\ning er</w>\nst ance</w>\nbe l</w>\nur a</w>\nre fu\nlead ers</w>\npo t\nse x\nh ic\nartic le</w>\nki d</w>\nfr ance</w>\nx x</w>\nex e\ngui de</w>\nvolun te\npr int</w>\nal i</w>\nce o</w>\ntwee ts</w>\nw x</w>\nscen e</w>\nvol u\nant i</w>\nh an</w>\nas soci\nshar ing</w>\nro se</w>\nmini ster</w>\nsh er\nin ste\ncle an\ndemo cr\npo ster</w>\nsk in</w>\np sy\npro per\ncra zy</w>\ni am\no re\nin i</w>\nany thing</w>\npo d\nmo ving</w>\ncl ick</w>\nex plo\ncom b\ncra ft</w>\nf i</w>\nbloo d</w>\nis ra\npubl ic\nd ent\nol ym\neng land</w>\na si\nch er\nfac t</w>\nenvir on\nhar ry</w>\ng one</w>\nme dic\nenjo ying</w>\njust ice</w>\nj r</w>\nindi an</w>\nwi fe</w>\ns ound</w>\nt es</w>\ndra wing</w>\np al</w>\nide a</w>\ncr it\nju li\nil er</w>\nwar m</w>\ncl ar\nthou ghts</w>\ndef en\ncoun cil</w>\nintro duc\ndi ed</w>\njan u\nan i</w>\ns end</w>\nli er</w>\nm l\nintere sting</w>\ntra de</w>\nwin d</w>\nb ay\ns ac\nanc y</w>\nsour ce</w>\nb es</w>\norg ani\nar ly</w>\nlar ge</w>\nff ici\nta g</w>\nu t</w>\nde sp\no es</w>\ntit le</w>\nsy m\npic tures</w>\nop en\nwom en\nsho wing</w>\nri a</w>\nle ast</w>\nlead ership</w>\ncur rent</w>\nelec tr\nval ent\nlist ening</w>\nc key</w>\ngener al</w>\nde ser\ndu ce</w>\n; )</w>\nc ent</w>\nðŁĺį ðŁĺį\nsco tt</w>\npo or</w>\nselfi e</w>\nev ents</w>\ni on</w>\nwr ong</w>\nde v</w>\nh ill\nsep te\ncul ture</w>\nl ine\nsor ry</w>\ns ent</w>\nsi ster</w>\nce pt</w>\nk ri\nno vember</w>\nar i</w>\nannoun ce</w>\nz ation</w>\nbr an\ng ent\nd u</w>\nl en\nper s\nf m</w>\nmart in</w>\no p</w>\ne mb\nom e\nmidd le</w>\nsuc cess\npe ter</w>\njanu ary</w>\nf lu\nrac ing</w>\nd av\nbi ke</w>\nðŁı »</w>\npe t</w>\nshoo t</w>\nprofe ssi\nfeat uring</w>\nsepte mber</w>\nnow playing</w>\nsta ur\nz a\non ic</w>\nqu ick</w>\nbas ke\nspe aking</w>\nmil it\nz er</w>\nchick en</w>\nb ell</w>\ns ad</w>\nco ast</w>\nlo ving</w>\ny ers</w>\nd j</w>\npan el</w>\nver age</w>\ns wit\nic ks</w>\nb ou\ncalifor nia</w>\ns am</w>\nparen ts</w>\ner o</w>\nk illed</w>\nph ys\njo bs</w>\nmi gr\nan th\ne mo\nhallo ween</w>\nand er\nc m</w>\ncompet ition</w>\ne ag\ns ket\nsp ir\nmay be</w>\nexclu sive</w>\napp e\njour ney</w>\nscre en</w>\nfor d\ni o</w>\nh ate</w>\nu g\nsou l</w>\nher o</w>\nsoci ety</w>\nsy n\ngu it\nn h\nd j\nas es</w>\nim pre\nti me\nsal es</w>\nd d</w>\nf ts</w>\nsumm it</w>\nstun ning</w>\nom s</w>\ntur ned</w>\ncle an</w>\nsof t</w>\nbe at\nre staur\nde red</w>\nen ces</w>\nma gic</w>\ndi o\nsh ine</w>\ngu est</w>\nhealth y</w>\nexhi b\nstor ies</w>\npo pu\nn is</w>\nel a</w>\nbel ow</w>\nfun ny</w>\nresul ts</w>\ns ne\ncur rently</w>\nar d\ndown load</w>\nf light</w>\nm al</w>\nf ine</w>\np ad\nch u\nent ed</w>\nh at</w>\nðŁĳ ı\nste ve</w>\nj o</w>\nmar k\nr at\nb all\np c</w>\np on\nb by</w>\no li\nar ts</w>\nas ure</w>\nbow l</w>\natt ack</w>\nmi c</w>\nde ar</w>\nran ge</w>\nen ter</w>\nchocol ate</w>\nbr illi\nac cess</w>\n, \"</w>\n? ??</w>\nch ap\ncon st\nt n\nmat ter</w>\nblu e\ngall ery</w>\nem p\nwork shop</w>\nlead ing</w>\ny ours</w>\nbaske tball</w>\nw anna</w>\nth u\n_ _</w>\nmar ri\nsle ep</w>\nbi a</w>\nch e</w>\nma d</w>\nimp act</w>\no wn\nsi r</w>\nchan nel</w>\neuro pe</w>\ne sp\nk itch\nhosp ital</w>\nw ra\nroy al</w>\nf s</w>\nne u\nqu ar\nne y\nac ks</w>\nch ase</w>\npp y</w>\nst al\nat ely</w>\nti m</w>\ndece mber</w>\nr are</w>\nper form\ncre am</w>\nwe ight</w>\nch oo\nni ght\nha ven</w>\nfr anc\nkh an</w>\nbuil t</w>\nhel ping</w>\ntru st</w>\nty pe</w>\ngol den</w>\nta x</w>\ns now\ns wi\ndi sa\nquesti ons</w>\nve y</w>\nli ght\nc n\ncl oud</w>\nthom as</w>\nag ed</w>\nsh ou\nte ams</w>\ngr an\nre ason</w>\na a</w>\nyou tube</w>\nv p</w>\npi zz\nmanag er</w>\nbur y</w>\ncre dit</w>\ntre at</w>\nma x</w>\ni k\nma in\ng ing</w>\nde ad\npro bab\nye ah</w>\nã Ĥ\nbr and\nso li\npl ant</w>\nta yl\ngir l\nðŁĺ Ń</w>\nnam ent</w>\nau to\nmess age</w>\nko re\nn ur\nter r\nag u\nma p</w>\nsen ting</w>\nlo ves</w>\ngi ves</w>\ng ab\nz en</w>\nro bert</w>\ncon fir\nw ars</w>\no m</w>\nsta in\ncam era</w>\nand er</w>\nwon der</w>\na b</w>\nca p</w>\ns old</w>\nsu it</w>\nwal king</w>\ncontin ue</w>\neffe c\ndau ghter</w>\nd anc\ncha in</w>\nmul ti\nki d\ny an\nchampi on</w>\nv o</w>\nta ins</w>\nho st</w>\nmin i</w>\nmis sed</w>\nre sc\nly n\nfin ish</w>\ndel icious</w>\ns as\ntayl or</w>\ni b\npro mis\nproduc ts</w>\nmoun tain</w>\nflori da</w>\nregi ster</w>\ntre at\nrec ent</w>\nfe male</w>\nboo th</w>\nmat t</w>\nve hic\ns op\nmo tor\nsuppor ting</w>\nphi c</w>\nex tre\ndr ink</w>\nlan e</w>\nth ird</w>\np s\ncon stru\nce re\nfar m</w>\nðŁİ ī</w>\ntu red</w>\nðŁĳ ī</w>\nc ats</w>\na j\ngi e</w>\nshoo ting</w>\nas ked</w>\npaki stan</w>\nam e\nm b</w>\ng il\nleg al</w>\nsqu are</w>\nin vol\ndra w</w>\noo oo\n!! !!\nopportun ity</w>\np y\ne i\nb ts</w>\nteach er</w>\ncharac ter</w>\njohn son</w>\nbr on\nly wood</w>\nch ine\nc ing</w>\nc ine\nd ge\ngam ing</w>\nrussi a</w>\nci a</w>\nquo te</w>\nric h</w>\ngo v\nflow ers</w>\nsp iri\nst in</w>\ngrow th</w>\nðŁı ¼</w>\ncomm er\nj uni\nmu m</w>\nr an</w>\ns na\na ren\nc b\nac tor</w>\ncol or\nsi t</w>\npa ir</w>\nch i</w>\nbo w</w>\nacade my</w>\nhel d</w>\nr ang\nme tal</w>\ny l</w>\nac tive</w>\nprobab ly</w>\nt ch</w>\nneed ed</w>\nspe e\ncho ice</w>\nital y</w>\nry an</w>\nðŁĩ º\nflow er</w>\nv it\nm n</w>\nfound ation</w>\nb ak\nsi ons</w>\nne igh\nf loo\nhe ard</w>\nre mo\nfre sh\ning ing</w>\nre f\nto wn\ncl ou\nje sus</w>\nspiri t</w>\ncou ldn</w>\nz es</w>\nðŁĴ Ļ</w>\nwilli ams</w>\npro ce\nmoder n</w>\npro cess</w>\nsho es</w>\ncre ated</w>\ntri c</w>\nissu es</w>\nann e</w>\natt en\nde but</w>\nh r</w>\nn it\nsti g\na po\ne ps</w>\nz u\nã Ģ\nsi x</w>\ncar ds</w>\nlan gu\nfam ous</w>\ntour nament</w>\nse l</w>\ne bay</w>\ny n</w>\nst on\nk ick\nannoun ced</w>\nk am\nvo c\nbrilli ant</w>\nhou se\nche ese</w>\nwar ri\nmus ic\nho ckey</w>\nðŁĺĤ ðŁĺĤ</w>\nsk ills</w>\nau tom\nsmar t</w>\nmed ical</w>\nmon y</w>\ne x</w>\ngu ar\ngi ve\npers onal</w>\nven tion</w>\nal li\npre ss\nflo or</w>\nm c</w>\nvictor y</w>\nhi m\nsimp le</w>\nth or\nðŁĩº ðŁĩ\nta il</w>\nlu cky</w>\nale x</w>\nqu ite</w>\nbo t\nssi ons</w>\nchall eng\nc ann\namaz on</w>\nh ell</w>\nb ought</w>\n) :</w>\ned y</w>\nsecre t</w>\nproduc tion</w>\ninde pend\nde fe\nad ded</w>\np r</w>\np ag\nbe d\ngre atest</w>\nwith in</w>\nj ay</w>\nðŁ ¥\nire land</w>\nre ly</w>\ns d</w>\nte xt</w>\ndri ving</w>\npro gram\nspe ed</w>\ncol um\nstr on\nÃ ©</w>\nfore st</w>\nâ ĸ\nmach ine</w>\nco in</w>\nsc ar\noun t</w>\nbi e</w>\n¡ ï¸ı</w>\npor tra\ncomm on</w>\nwre st\nrecei ved</w>\nkno w\ninve st\npl ans</w>\nac cor\nad op\nter y</w>\nre ali\np p</w>\nk al\nart work</w>\nme an\ngo d\ninste ad</w>\nan ci\nmotiv ation</w>\nas ing</w>\ninspir ation</w>\nup coming</w>\npolit ical</w>\neuro pe\nm ers</w>\nheav y</w>\nðŁĳ į</w>\nfe bru\nscot land</w>\nou gh\nb t</w>\nbo ss</w>\nsche du\nspe ak</w>\nn ick\nu red</w>\nin o\ne k\nri sk</w>\ntor y</w>\npres ents</w>\nb on</w>\nru g\nst ates</w>\nexhib ition</w>\nil o\nm ill\nbr ought</w>\n: -)</w>\ntou ri\ncom e\noffici ally</w>\nchampi ons</w>\ndo ors</w>\nre p\npo se</w>\nex tra</w>\nk ings</w>\nsoc cer</w>\nsqu ad</w>\napp lic\nat a</w>\nsome times</w>\nt ari\nexcell ent</w>\nðŁĺ ĺ\nstra ight</w>\ncar ol\nri p</w>\nâĢ į\ngra phic</w>\nm ol\nelec tion</w>\nfebru ary</w>\nas ons</w>\nl i</w>\ndi r\nm t\nn ick</w>\nu su\nm rs</w>\ncom ics</w>\ninst itu\ncor por\nv i</w>\nðŁĻ ı\ntu ral</w>\ndi se\nac ci\nwe are\nam ong</w>\nsho pping</w>\nt ill</w>\nwh at\ncha ir</w>\nsp an\nchine se</w>\ninnov ation</w>\njo y</w>\nk it</w>\ncent ury</w>\nob ama</w>\nph ili\nf c\nre ach</w>\nc iti\nul ous</w>\nn on\nd ang\nhapp ening</w>\nbur n</w>\np el\nor ange</w>\nd v\nk ick</w>\ncla im\ning ham</w>\nph y</w>\nno v</w>\npod cast</w>\nwh i\nni ghts</w>\near lier</w>\nbe ar</w>\nla h</w>\nexc iting</w>\nor a</w>\ngi ven</w>\ns lo\nmemor ies</w>\ncontin ues</w>\nproduc t</w>\ngh o\nc d\nkno ws</w>\nðŁİ ī\npubli shed</w>\ndiscu ss</w>\ny ard</w>\ni phone</w>\ntri es</w>\nw all\nfe b</w>\nare n</w>\ntru th</w>\nwin ners</w>\ntu re\nditi onal</w>\nmilit ary</w>\nproble m</w>\nm and\ndo g\nlo ss</w>\nc ric\ncan adi\nve ter\nvilla ge</w>\n\" ,</w>\ny r</w>\nun g</w>\ndon ald</w>\nag ing</w>\nbir ds</w>\nsci enti\nle s\nth is\nregi on</w>\ntic al</w>\nitt en</w>\nil a</w>\nðŁĺ İ</w>\nd ad\ndi am\nabo ve</w>\nst ren\nli t</w>\np ir\nla b</w>\nfo cus</w>\nbus y</w>\nd ur\napp ly</w>\ns ma\nauth or</w>\nac i\nexe cu\ndom in\nre la\njack son</w>\nat o</w>\nwash ington</w>\nðŁĻ Į\nk ill</w>\npopu lar</w>\nce ment</w>\nro ad\ne ating</w>\nloc ation</w>\nv ent\nar re\nn an\ncu sto\nadvent ure</w>\nor din\nspor t\nul t</w>\nlo ck</w>\nquesti on</w>\ndri ver</w>\nland sc\non i\nk ins</w>\np d\njor dan</w>\nte red</w>\nk k\na f</w>\nchil d\ns p</w>\njust in</w>\nen i\ns elling</w>\nz o\nwh it\nbo ston</w>\npartic ip\nsig ning</w>\nhapp ened</w>\nhe at</w>\nm am\ndre ams</w>\nlo ws</w>\ngra ph</w>\nthe day</w>\nhead ing</w>\nbr o</w>\nble ssed</w>\nvi c</w>\nve gas</w>\nh d</w>\nin ning</w>\nro man\nand ro\nden ti\nu se\nc it\npro gress</w>\nwrit er</w>\nbo b</w>\nff s</w>\ngro wing</w>\nb ly</w>\naw are\nex am\nsp ent</w>\nbe t</w>\nsc ore</w>\nbey ond</w>\ndo cu\nad el\ns f\ncou ra\ncolla bor\nin c</w>\npriv ate</w>\nbo at</w>\n* *</w>\nz one</w>\np ha\nb ill\nto tal</w>\nplan ning</w>\nto wards</w>\nplac es</w>\npre view</w>\ncre ative</w>\ndam n</w>\nide as</w>\nse ems</w>\npo ten\nsay ing</w>\ndi splay</w>\ns w</w>\na qu\nlou is</w>\nby e</w>\nli l</w>\ne mail</w>\nwe stern</w>\nger many</w>\nell er</w>\nre s\nf ant\nment ary</w>\nde als</w>\nric hard</w>\njer sey</w>\nstren g\nra d\npizz a</w>\nmon d</w>\nw are</w>\nl ac\ng i</w>\nar chi\nc d</w>\nyel low</w>\nrec ently</w>\nre ach\nà ¹\nkitch en</w>\ndesig ned</w>\ntr y\ng al</w>\nrestaur ant</w>\nat ure</w>\nw w</w>\nj as\nl ma\nðŁĳ Į</w>\npa in</w>\nav o\nmin ute</w>\nsch ol\nther ap\ntic ket</w>\nd ry</w>\njap an\nditi ons</w>\nter ri\nsel ves</w>\nhapp en</w>\nt up</w>\nma g</w>\ncop y</w>\nsh er</w>\nfree dom</w>\nf ile</w>\nspeci ally</w>\ntor onto</w>\nlo ad\ng ary</w>\nre y</w>\nansw er</w>\nlo y\ncau ght</w>\npri ze</w>\nu ne\nfic ation</w>\nni ger\nsy d\ntou ch</w>\nfeat ure</w>\njaz z</w>\nrecor ds</w>\nhim self</w>\ndi sh</w>\nro ber\nspot ted</w>\nma ster\nwa ve</w>\nfin als</w>\nbu ll\nfor um</w>\nal d\nre comm\nch a</w>\na e</w>\nd oo\ninst ru\ntru ly</w>\nl g\nin k\nbro thers</w>\nde st</w>\nj im</w>\nm it</w>\nclo sed</w>\nis on</w>\ntri ed</w>\ns anta</w>\naf fe\nw an</w>\nhor se</w>\ng row</w>\ncamp us</w>\nrel ation\nnati ve</w>\njour n\ngo v</w>\no ct</w>\nk it\nb ound</w>\npart ner</w>\nre ma\ncrow d</w>\n! )</w>\nc alls</w>\nra il\nqu ali\nsolu tion</w>\ncon test</w>\ncon vers\nsn ap\nb ase</w>\nin iti\nta x\ny e</w>\nent repre\nit or</w>\nconstru ction</w>\nfoo d\npresent ed</w>\nn ings</w>\ncli mate</w>\nk m</w>\nmo del\nb j\nblo ck</w>\npresent ation</w>\ndre am\nfi x\nc alling</w>\nbus ine\ncon gress</w>\nunder stand</w>\nwe b</w>\nval ue</w>\nï¸ı âĥ£</w>\nmex ico</w>\nit ely</w>\nki m</w>\nchar ity</w>\nref lec\nbl an\nfl ying</w>\nanal y\nfamil ies</w>\nb and\nreci pe</w>\ncelebr ation</w>\nac cep\nar y\nto t\ng b</w>\nintere sted</w>\ncap tain</w>\nâĻ ¥\nti p</w>\nab sol\nbra z\ninve stig\no logy</w>\nde c</w>\ntru ck</w>\nver ing</w>\nc lear\ndon t</w>\ngo tta</w>\nad vis\nbeg ins</w>\nma ss\nde scri\nblo ck\nk im\ndavi d\nson gs</w>\nmemor ial</w>\nfeat ures</w>\nsu stain\n' .</w>\ngra b</w>\njo se\nv a\ncon serv\nse ts</w>\nman chester</w>\nfi ghting</w>\nde gre\nag a</w>\nin d</w>\nsle ep\npos ition</w>\nha ir\nsig ns</w>\npol icy</w>\nit o</w>\nal ert</w>\nst am\nsp end</w>\nw y\nabsol ut\nd m</w>\nanim al</w>\nmy ster\nsuccess ful</w>\nproble ms</w>\nro bo\nk ay\ngar den\np d</w>\nmay or</w>\nd ale</w>\nt ol\noff ers</w>\nvis iting</w>\nfriend ly</w>\ntre es</w>\noffic er</w>\naccoun t</w>\nke vin</w>\nðŁĳ į\ngi ant</w>\ncontin u\ncon su\ntr act</w>\nn fl</w>\nðŁĺ Ĭ\nh q</w>\nb ility</w>\na ar\ndis ney</w>\nte en</w>\non ed</w>\nwh ite\ntra iler</w>\nde dic\nal one</w>\nabsolut ely</w>\ndig ital\nwilli am</w>\nin ation</w>\ns wa\ne e</w>\nenti re</w>\nger man</w>\nro ll\nh its</w>\nco st</w>\nst ay\nth a</w>\nali ve</w>\naccor ding</w>\nco t\nliter ally</w>\nher it\nre ti\nhaha ha</w>\nexper i\nli kes</w>\ng t</w>\nste el</w>\n__ __\nch air\nchristi an</w>\nto wer</w>\ndiffe rence</w>\nm d</w>\ntre ss</w>\nmi d</w>\nprin ce</w>\nafric an</w>\nfe der\nfoo t</w>\ncar ri\nser ved</w>\nr ice</w>\nsh all</w>\nfeat ured</w>\nck er</w>\nrec ru\npo e\nsen se</w>\nni fic\ncom edy</w>\ncont ent</w>\nf at\npo sted</w>\ncon tribu\ntim ate</w>\nli ver\nmb le</w>\ninter net</w>\nag e\neurope an</w>\ncl ing</w>\ngla d</w>\nff ic\nsc o</w>\nak es</w>\nel le</w>\nter min\nton y</w>\np ale\ncol our</w>\nseri ous</w>\npat ri\nmovi es</w>\nb m\nprofessi onal</w>\nad o\nal u\nbr inging</w>\nf alls</w>\nisra el</w>\nter m</w>\nlangu age</w>\nbro ok\nman n</w>\ncommun ic\ncan not</w>\nac ti\np he\ny an</w>\nentrepre ne\ntur key</w>\nlog ical</w>\nlon g\nar m</w>\nur s</w>\nwork ers</w>\ning ly</w>\ngg s</w>\nri c</w>\ntu al</w>\nrecei ve</w>\nop ens</w>\nge ar</w>\nsoci al\nfe et</w>\nc king</w>\nad ver\nfin an\nfe els</w>\nsp la\nh r\nea ster</w>\nbra in</w>\nã ģ\nfi g\nle dge</w>\nne arly</w>\nprote ct</w>\nma ssive</w>\ne th\naw a\nðŁĺ ģ</w>\ny rs</w>\naware ness</w>\ndefin itely</w>\nk n\nimag ine</w>\nk u</w>\nsyste ms</w>\nðŁĳ ı</w>\nf as\nli k\nprovi de</w>\nam o\ndisco ver</w>\ninf lu\nma ker</w>\ng az\nfit ness</w>\nstre et\ner s\nte d\nw c\nys is</w>\npos itive</w>\nhel ped</w>\nque st</w>\nandre w</w>\nbra d\nb in\nhang ing</w>\nl ing\nbri ght</w>\nse ction</w>\nma ss</w>\nðŁĻ Į</w>\nfollow ers</w>\nho sting</w>\ntem por\nfla g</w>\na ve</w>\nlet ter</w>\nk ur\nre qui\nof ten</w>\ncry p\nsu ff\nâļ ½\nrussi an</w>\ntreat ment</w>\nal le\nha y\nl an</w>\nkeep ing</w>\nhol y</w>\npower ful</w>\npre dic\nfun d</w>\ne specially</w>\nwindo w</w>\nje wel\nil y\nðŁĴ ľ</w>\ngener ation</w>\napp a\nseri ously</w>\no d\nðŁĺĤðŁĺĤ ðŁĺĤ</w>\ncer ti\niri sh</w>\nðŁĳ Į\nmi ami</w>\nbe th</w>\nv ity</w>\nse cu\nche f</w>\ncri me</w>\ngraph y</w>\nma x\narti sts</w>\nre volu\ngu ard</w>\nspee ch</w>\nu c\nupd ates</w>\nfac es</w>\nst ant</w>\nchang ed</w>\nrepor ts</w>\nlow er</w>\npe ar\nn c</w>\nk il\nloo ked</w>\nspe aker</w>\ns f</w>\nre spect</w>\nok ay</w>\noce an</w>\ns itting</w>\narchitec ture</w>\ntra il</w>\nse at</w>\ni ra\nle g</w>\njapan ese</w>\nd am</w>\nu lar</w>\nsw im\npolit ics</w>\nfinan cial</w>\nol d\nmou th</w>\nat temp\nde stin\nfi shing</w>\natten tion</w>\nme m\nchang es</w>\ndeci ded</w>\nreli gi\ng in</w>\nc av\nz z</w>\nad am</w>\nma c</w>\nwr ite</w>\nbeg in</w>\nsc ul\nal ter\nis s</w>\nath on</w>\nimag es</w>\nm oo\njo ined</w>\nðŁĺ ī</w>\nâŀ ¡ï¸ı</w>\npas sed</w>\nmu sli\nh ir\nlar gest</w>\ncam er\ncom ic</w>\ngh ted</w>\nrug by</w>\nbur gh</w>\ngg ing</w>\nte sting</w>\npre par\nlau gh\nal ed</w>\nimpro ve</w>\nbeli ev\nadv ice</w>\nsha res</w>\nhe art\ntur ning</w>\ns b</w>\nt el\ncaf e</w>\nn es</w>\ndani el</w>\npat ter\nt z</w>\nse tt\npar k\nc and\nst ick</w>\nhapp ens</w>\nbri an</w>\nne west</w>\ne pic</w>\nad or\nki es</w>\nwar ning</w>\nanim als</w>\ncusto m</w>\nar c\ndi an</w>\ngol d\ncor e</w>\nt f</w>\nc ity\npan ts</w>\nre ality</w>\ncon fi\nin ju\nfo x\ngu il\nk new</w>\nâĺ º\ncor rec\nitu de</w>\nd den</w>\n. #</w>\nre duc\npas s\nf on\ny a\now ner</w>\nre turns</w>\nn c\ne ast\nap ol\nin sur\nth o</w>\nsi m\njuni or</w>\nbe e</w>\nang el\natt le</w>\nelec tric</w>\nhor ror</w>\ncra sh</w>\ne ye\npat h</w>\nsou thern</w>\nemplo ye\nge o\nt an</w>\nha z\nr ally</w>\nðŁı »\nproper ty</w>\nwas n</w>\nenjo yed</w>\ngre y</w>\ng as\nbre w\nnor thern</w>\nhol ding</w>\ng p</w>\nta ke\nch art</w>\nly n</w>\ndr ama</w>\nz o</w>\npa id</w>\nthrow back</w>\ncu p\ndiscu ssion</w>\ndown town</w>\nw ill\nle w\nb is\nt ary</w>\nbre ad</w>\nup on</w>\nr ate</w>\nteach ers</w>\nit ation</w>\nanc ed</w>\ncy cle</w>\nchoo se</w>\nd c\nir an</w>\nco w\nda ve</w>\nra ise</w>\nprin cess</w>\nfa ith</w>\n- ></w>\nindu stri\nsp ain</w>\nguit ar</w>\nfac ts</w>\nm n\nsp en\ncour te\ngo tt\nprojec ts</w>\nau di\no sc\npe ter\ns and</w>\nintere st</w>\nhapp iness</w>\nven ue</w>\nsol di\nsurpri se</w>\npoten tial</w>\nper io\ncustom er</w>\ni i\ng ni\nmanu fac\ne co\nbro ken</w>\nsing er</w>\nvel s</w>\nwal es</w>\nhu s\nin j\nf our\ntal ent</w>\nd ying</w>\nmat the\nfil m\njo ining</w>\ns ell</w>\nj ar\nlma o</w>\nsur ger\nbb c\nsour ces</w>\nau stin</w>\nni k\nchar les</w>\nf am</w>\nprin ci\nange l</w>\ncas h</w>\nlo t\no red</w>\npla ys</w>\npl ate</w>\ndon e\nmemor y</w>\nbr ings</w>\nn ba</w>\nsolu tions</w>\nteach ing</w>\ngr ace</w>\ncir cu\nhel ps</w>\nfoun der</w>\nmar y\nexpl ore</w>\nde cor\npar ts</w>\nch o</w>\ninte gr\nha u\nis es</w>\npu tting</w>\nin er</w>\nr it\nv y</w>\nmic hel\nblu es</w>\nevery day</w>\nfor ms</w>\nbi o</w>\nye ar\np in</w>\nt ter</w>\nspr ing\n) )</w>\npo t</w>\nal ing</w>\nperform ing</w>\nsh an\nplan et</w>\nmus ical</w>\nhead s</w>\nit alian</w>\nstru gg\nâĢį âĻ\nw ings</w>\npu mp\nh h</w>\ntr ou\na id</w>\npri me</w>\near th\npa int</w>\nmon t\nam y</w>\nbb c</w>\nfab ulous</w>\nfru it</w>\nandro id</w>\nbour ne</w>\ncere mony</w>\nenti al</w>\n? ?\ndeb ate</w>\non ing</w>\ndra ft</w>\nsol ar</w>\nt x</w>\nj am</w>\ncor n\n!! !!!</w>\nbro o\nmil k</w>\npo sed</w>\no hi\nmo vement</w>\nb ren\npart ner\np g</w>\net te</w>\nar ies</w>\nsh out</w>\nn g</w>\nleav ing</w>\nt ells</w>\nsen s\nta ste</w>\nkel ly</w>\nwor l\ngy m</w>\nric h\ne gy\npi d</w>\nma s\nâ Ĥ\ncourte sy</w>\nfran k</w>\nincre ase</w>\nwr itten</w>\npp ers</w>\nre l</w>\nha i</w>\ns as</w>\ns ound\ntt i</w>\nw ich</w>\nri ver\n.. .\"</w>\na g</w>\nfel low</w>\nro me</w>\nsm all\ngen cy</w>\nic an</w>\nlux ury</w>\npro of</w>\nme t\nwild life</w>\nmom ents</w>\nra ther</w>\ncor ner</w>\ncom pe\ncanadi an</w>\nlik ely</w>\ntherap y</w>\nli am\neconom ic</w>\nindi e\nrou te</w>\nfi ght\nho pe\nse tting</w>\nant ly</w>\ncro ss\nfant asy</w>\nde e\nsket ch</w>\ncomp li\nym i</w>\nru les</w>\nengine ering</w>\nfig ure</w>\nro w\n. ,</w>\nf w</w>\nsyd ney</w>\nw ou\nt ation</w>\ndre w</w>\nus es</w>\nthe re\nsp read</w>\nstruc ture</w>\npat rick</w>\nappa rently</w>\nro s\nh ills</w>\nw we</w>\nann y</w>\ncom mission</w>\ndi v\nf ying</w>\ncon sul\nanal ysis</w>\nex i\nten nis</w>\nvehic le</w>\nðŁĺŃ ðŁĺŃ\nas s</w>\nhigh ly</w>\nop ened</w>\nb ann\nðŁĴ Ļ\nmp h</w>\nwi shing</w>\nv or</w>\nfi f\ngive away</w>\nr r\nra y\nje ss\ng at\nic ymi</w>\nx it</w>\nhigh est</w>\nyor k\npi e</w>\ninvol ved</w>\nhigh er</w>\nri e</w>\nmal ay\nint elli\ndesp ite</w>\nche e\nsar ah</w>\nbe an</w>\nreco gni\nar sen\ntal ented</w>\npas sion</w>\nic h\nab c</w>\nlead s</w>\ndise ase</w>\nv is</w>\nse c</w>\npre senting</w>\nm illi\nhol e</w>\nsho ts</w>\nde part\nsurger y</w>\ngov t</w>\nb in</w>\ndu al</w>\ne vi\nlon ger</w>\nev ol\nscre en\nportra it</w>\net c</w>\nlo se</w>\nch at\np en</w>\np i</w>\nom a</w>\ns ick</w>\ner c\ncompan ies</w>\nen try</w>\nplan e</w>\ngr y</w>\nven e\nliver pool</w>\npremi ere</w>\nsha red</w>\na red</w>\nfil ms</w>\nir a</w>\nholi days</w>\ncric ket</w>\nici an</w>\nv ing\n. )</w>\nul timate</w>\ndi vision</w>\ncon duc\nse pt</w>\nfor ces</w>\nmon t</w>\ns mart\ndisa pp\nsun shine</w>\nin d\nb less</w>\nma de\ncol ors</w>\nfran k\nir on</w>\nbott le</w>\ns go\nm ood</w>\nj ason</w>\ner ic</w>\nbir th</w>\nte en\nrespon se</w>\ntar get</w>\nstate ment</w>\nfe ar</w>\nth el\nal um\nar ab\nbl in</w>\ndirec tion</w>\nste ps</w>\ner ial</w>\nwor ked</w>\nat l\nðŁĴ ķ\nfel t</w>\npol i</w>\nscen es</w>\nhom es</w>\nb ell\ne at\nate ful</w>\nt in</w>\nl ace</w>\nfol ks</w>\np se</w>\nan n</w>\nwis dom</w>\nfa v</w>\nbut ter\ns r</w>\nare as</w>\nsm oo\nbi z</w>\ndg es</w>\napp o\nmo re\nthe m\neffe ct</w>\nwindo ws</w>\nsun ny</w>\ncap ital</w>\ntot ally</w>\nc ities</w>\ngr ant</w>\nmb ers</w>\ns low</w>\nau tu\nil ities</w>\nw ro\nri sing</w>\nst ics</w>\nviol ence</w>\ni gh</w>\nqu ot\nh it\nt c</w>\nherit age</w>\nbu ff\nne s\nz ar\nden tial</w>\nex ac\ned ge</w>\nde ep\naren a</w>\nbe came</w>\nbenef its</w>\nmar ks</w>\nmb er\na z</w>\nam es</w>\npre ci\ndra gon</w>\nre g\nd ings</w>\ndo s</w>\nðŁĴ ª\nn el\ns ity</w>\nme al</w>\ndi st\nleg end\npur chase</w>\npic al</w>\nst ick\nf at</w>\ndu ba\nprofe ss\ncar to\npro f</w>\ncoun tries</w>\nrespon si\nse qu\nfa b</w>\ntribu te</w>\nhon ored</w>\nprac tic\npur ple</w>\nan ton\npa red</w>\nt ough</w>\nsumm er\nenviron ment</w>\ns ons</w>\nðŁĻ ı</w>\nm ps</w>\ngi es</w>\nher oes</w>\nt elling</w>\nhen ry</w>\nf en\nknow ledge</w>\nĢ ï¸ı</w>\nf r</w>\nne g\nu re\nac king</w>\nhear ts</w>\ns oo\nhol lywood</w>\nju mp\nsau ce</w>\nschedu le</w>\ntur n\nyo ga</w>\ncre ating</w>\nc ket</w>\ncre ek</w>\nâ Ń\ncustom ers</w>\nma dri\ngu l\nasse mb\nmoun t</w>\nc ell</w>\nto p\nst al</w>\ndav is</w>\nt wi\nsig n\npremi er</w>\niti ons</w>\nhe aring</w>\nun k</w>\npati ents</w>\napp ear\nheav en</w>\nal ty</w>\ndoc tor</w>\na e\nplat form</w>\nje ff</w>\nðŁĵ ·</w>\nregi onal</w>\nbi d</w>\nbox ing</w>\nex ten\nor ity</w>\na w</w>\nw ise</w>\nil le</w>\nsever al</w>\nbi e\ns itu\nsy ria</w>\nâľ ħ</w>\nremin der</w>\nenter tain\nli on</w>\npart ners</w>\nin n</w>\nph ar\nf au\npl s</w>\nexpe cted</w>\nsug ar</w>\ndeci sion</w>\ns b\nch ron\nassoci ation</w>\nleav es</w>\nvis ited</w>\nsh ap\nðŁĴ ĸ</w>\nfur ther</w>\nh ann\nw i</w>\nrun s</w>\nl er\nfun ding</w>\nfil led</w>\n.. ....</w>\ntin y</w>\nhan g</w>\nor g</w>\nco ol\nse min\nðŁı Ĩ</w>\nspon s\nnav y</w>\nsa int</w>\ndru g</w>\nd al</w>\nr oun\nco vered</w>\ntra ditional</w>\ninvest ment</w>\nde te\nal ism</w>\nf low</w>\nn is\nsun rise</w>\nfe at</w>\nf ted</w>\nwe ird</w>\nje re\nve gan</w>\nmedic ine</w>\nan o\nac cu\ndeli very</w>\ntemp le</w>\nchang ing</w>\nwil son</w>\nphili pp\nre fe\nn d\nis er</w>\ng ay</w>\nr and\nati ves</w>\nt ely</w>\np and\nintelli g\ng are\nam bas\nde mon\ncommit tee</w>\nstrate gy</w>\nrefu ge\nbud get</w>\nprote c\npi er\nex press</w>\nnom in\neconom y</w>\nal low\nic on</w>\ngal ax\no h\nindi vi\ndem and</w>\nvir gin\nlu ke</w>\nali sts</w>\nman i\ns mi\nju dge</w>\nent y</w>\nmic hi\nresul t</w>\nam ed</w>\nspe aks</w>\n' ,</w>\nhou ston</w>\nsh in\nb ing</w>\nfl y\nch em\nau to</w>\nv as\nge t\nar m\nthank s\nd in</w>\ngan g</w>\nx x\nsi on\nloc ated</w>\np l</w>\njo sh</w>\nin fo\njo ins</w>\nadver ti\not d</w>\nel d</w>\nsi e</w>\nre asons</w>\nv ent</w>\nðŁĩºðŁĩ ¸</w>\nâ ł\nconvers ation</w>\nstu di\nðŁĶ¥ ðŁĶ¥\ngo s</w>\ns ounds</w>\nun it</w>\nmu sc\nge l</w>\nack ed</w>\npac i\nco s</w>\nde re\nu u\na o</w>\nla m</w>\ninspir ing</w>\nar ms</w>\ntw are</w>\nmat ters</w>\nad dic\ndu de</w>\nex t\ncri sis</w>\nb ath</w>\nme et\nsing h</w>\nexpe ct</w>\ndel hi</w>\nresc ue</w>\nwor st</w>\nau g</w>\nshi pping</w>\nser ving</w>\nst o</w>\ndar k\nac es</w>\nhistor ic</w>\nlandsc ape</w>\ndesig ner</w>\nb illion</w>\ngr ateful</w>\nwa ke</w>\ne ve\nm iller</w>\nhou sing</w>\ndy nam\nis co</w>\nbe ha\nsh op\npr ou\ne as\na sia</w>\ne ding</w>\nk on\ndepart ment</w>\naw ar\nmar ine</w>\nin ci\nphotograph er</w>\nta pe</w>\nlo go</w>\nr ings</w>\nd it\n-- --\nvin yl</w>\nw c</w>\nvo ting</w>\nse ven</w>\nambas sad\ndal las</w>\nt u</w>\ncom ment</w>\nk ra\nb les</w>\nw ag\nu d</w>\nau dio</w>\nstri ke</w>\noffici al\no ts</w>\nme tho\nto ols</w>\nra di\nal an</w>\nhun t</w>\nwat ched</w>\na ke</w>\nfa ke</w>\ndrin king</w>\nmer ry</w>\nm l</w>\nb day</w>\nri o</w>\nni ke</w>\nc ant</w>\nre pe\nco stu\nmur der</w>\nak ers</w>\nch ers</w>\nou ts</w>\nbeg inning</w>\nso s</w>\nad es</w>\nn in\nnot es</w>\nwro te</w>\nsol o</w>\nc i</w>\nli ghting</w>\nur ban</w>\nbre xit</w>\natt end</w>\nshir ts</w>\npla yo\nac tress</w>\npl ic\nstand ard</w>\nquot es</w>\npar ade</w>\nanci ent</w>\nÂ ©</w>\ntur ing</w>\nre e</w>\npri mary</w>\nfla sh</w>\nciti z\nmat es</w>\nste in</w>\nz i</w>\nclin ton</w>\nsk in\ngen e\nhu m\ng ar</w>\nt le</w>\ny i\nfo cu\nde an</w>\npl ants</w>\ncy ber\nb u</w>\nom e</w>\nho p</w>\nad dress</w>\nti x</w>\ngi fts</w>\nrelation ship</w>\nsub scri\nfe ed</w>\nexac tly</w>\nhaw ks</w>\nex o</w>\nstre ss</w>\ns n</w>\narre sted</w>\nan e\nsof tware</w>\nz ero</w>\nthe me</w>\nmu mb\nim migr\nmi a</w>\nmake up</w>\nple asure</w>\nuni vers\nhar b\neng ine</w>\nap er</w>\nr in\nbr a</w>\ninstitu te</w>\nle ather</w>\nal th</w>\nsing ing</w>\nco s\ngh ty</w>\nme as\nst ic\nsi de\ninsur ance</w>\nco t</w>\npit ch</w>\nmoun tains</w>\ncri min\nsu pre\nvalent ine</w>\nat er</w>\nwou ldn</w>\nsc ale</w>\nrel ated</w>\nre gar\nstar tup</w>\npack ed</w>\nmi ke\nweek ly</w>\np ts</w>\ncoun t</w>\nha r</w>\ngott en</w>\nmin d\nber lin</w>\ncon ditions</w>\nswit ch</w>\ncor n</w>\nsa ve\ng li\nemer gency</w>\ntun ed</w>\nsto ck\ndiscu ssing</w>\nevery body</w>\ns day\nwhe ther</w>\nwrest ling</w>\nec es</w>\ngen der</w>\nch en\nðŁĳ Ģ</w>\nmadri d</w>\nmar athon</w>\ne gg</w>\ni er</w>\nth x</w>\nas king</w>\nkore a</w>\nwol f</w>\nay a</w>\ng m</w>\ng au\nat ory</w>\nv r</w>\ngra ss</w>\nk illing</w>\nb ble</w>\nur o</w>\nun i</w>\ne th</w>\nsh ore</w>\nth en\nre ale\nbot tom</w>\nex erc\nk ar</w>\nor ies</w>\nad ri\nsan ds</w>\nse x</w>\n. '</w>\nvolunte ers</w>\nper form</w>\npar liam\ninclu de</w>\ndeli ghted</w>\nexecu tive</w>\nfu el</w>\nkis s</w>\nã ħ\nchar ge</w>\nh u</w>\nca kes</w>\nve t</w>\ng lu\nagre e</w>\npr ices</w>\nn au\nh l</w>\ng ru\nra j\nstreng th</w>\nb ic\nsp ending</w>\nal es</w>\nav en\nb last</w>\n: (</w>\nyo f\nnor mal</w>\nsi x\nqu ick\nse a\nd aw\nmee ts</w>\nlo vers</w>\nupd ated</w>\npo tat\ncomple ted</w>\ncoo k</w>\nopportun ities</w>\np ure</w>\norgan ic</w>\ntem per\nc am</w>\navo id</w>\npar king</w>\nduba i</w>\nand o</w>\ndi stri\nto y</w>\ncomple tely</w>\ndon ald\ntri al</w>\nbas s</w>\nb oun\nback ground</w>\nv as</w>\nmar vel</w>\nlu m</w>\nru s</w>\nt ool</w>\ncom missi\nthrow back\nfin ding</w>\nis lam\n! ?</w>\nst op\ne vil</w>\nor al</w>\nresi dents</w>\ni denti\no ak\nðŁİ ¶</w>\nl il\nspan ish</w>\nchap ter</w>\nsto pped</w>\ndirec t</w>\nho sted</w>\npic ked</w>\nlab our</w>\nlew is</w>\ndefen se</w>\nà ®\nhealth care</w>\nwh is\nmat h</w>\npe ak</w>\nra ised</w>\nfi x</w>\nbu ll</w>\nth ir\nchel sea</w>\nfol k</w>\ntr e</w>\ncan di\npau l\nei ther</w>\nad am\npoe try</w>\njewel ry</w>\nðŁ ¦\npr ay</w>\nØ §\ng c</w>\no z</w>\nwi shes</w>\nfore ign</w>\nsun g</w>\nlear ned</w>\nen e</w>\nn ing\nmicha el\nillu stration</w>\nlegend ary</w>\nw av\nb au\nðŁļ ¨</w>\ncal end\nstre ets</w>\nâ Ĩ\nmon ster</w>\nbu ck\ng r</w>\nscho ol\nba th\nwa ste</w>\nne ck\nha wa\nbe ach\nre plac\njec t</w>\non er</w>\nfac tory</w>\ncoun t\nðŁĵ ¸</w>\nmor gan</w>\nder ing</w>\nse an</w>\nsteph en</w>\nde p\nno vel</w>\nvide os</w>\nic al\npress ure</w>\narsen al</w>\nex pre\nir s</w>\ntren ding</w>\nss a</w>\nfla sh\nre sear\nthr ough\nprofess or</w>\nscul p\nto s</w>\ngg ed</w>\nmm a</w>\nbe e\na pe\nhun ter</w>\nam i\nhe i\npla stic</w>\nbu cks</w>\nuni verse</w>\nle gen\nniger ia</w>\nple ased</w>\nri s\nthin ks</w>\nautu mn</w>\ni ds</w>\nd is</w>\nanth ony</w>\nðŁı ½</w>\nak ed</w>\ngla sses</w>\nfin ance</w>\nz er\nk as\ncon tract</w>\nnu mbers</w>\nsh aw\npartner ship</w>\nt il\nlaun ched</w>\ns al</w>\nvictor ia</w>\ntheat er</w>\nusu al</w>\nnam es</w>\nperio d</w>\neli za\ni th\nbar cel\nro cks</w>\nbag s</w>\nmat e\ndistri bu\nj on</w>\ndi ffic\nali zed</w>\ncur ren\nsco red</w>\nb ha\ndu blin</w>\nro se\nin ted</w>\nsoli d</w>\nbeha vi\nwal ker</w>\nsimp ly</w>\ngarden s</w>\nhead ed</w>\nin i\nohi o</w>\nwe ap\nf o</w>\ngl en\ne state</w>\nran dom</w>\nth under\nthr u</w>\nk ill\njac ket</w>\nit i</w>\nentertain ment</w>\nthanks giving</w>\nent al</w>\nen coura\nel o\na ther\ntan k</w>\nhigh lights</w>\nf ting</w>\nru le</w>\nmodel s</w>\nbor der</w>\nbj p</w>\nhus band</w>\nin done\nken ya</w>\nbe ars</w>\nal o</w>\nn inten\npi x\nstr o</w>\nor ders</w>\nsal ad</w>\nro ads</w>\nn or</w>\nl ation</w>\nsop hi\nðŁı ¼\npi eces</w>\nb one</w>\nmin s</w>\ninclu des</w>\nnu tr\nphi l</w>\ns ent\nfun dra\nga in</w>\nbor ough</w>\nn ad\nmon day\nactiv ity</w>\nit ems</w>\nbe coming</w>\nken ne\nde tro\ncar di\ngue sts</w>\nu x</w>\nworld wide</w>\nsever e</w>\nnew s\nthank ful</w>\nfic tion</w>\nve ge\nm all</w>\nsi an</w>\ner al</w>\ninj ury</w>\nle e\nmen u</w>\ndanc ing</w>\nscot ti\nexam ple</w>\n( #</w>\nna i\nstudi os</w>\nba i\nðŁĴ Ľ</w>\nj av\ndiam ond</w>\nvin ce</w>\nric k\nprote ction</w>\nlin col\ncham ps</w>\nappro ach</w>\nd ar</w>\nm ile</w>\nclou ds</w>\nje ff\nin fin\nl ers</w>\np les</w>\npe ace\ngo p</w>\nâĻ ¡</w>\ntech n\nstr a</w>\na verage</w>\nef fort</w>\nintroduc ing</w>\ndi versity</w>\naustr alian</w>\nam p</w>\nboo st</w>\ns ke\npati ent</w>\nappreci ate</w>\nici ans</w>\npu r</w>\nf ell</w>\nwoo ds</w>\nillu str\nðŁ ĸ\nag ency</w>\nac tions</w>\nbrit ain</w>\nunder way</w>\nse attle</w>\nel and</w>\nag o\nf ill</w>\nstre aming</w>\npro test</w>\nchalleng es</w>\nky o</w>\net sy</w>\ncoo king</w>\nexper t</w>\nru ss\nrain bow</w>\ncommer cial</w>\nsp in\nbe ats</w>\nc ry</w>\nval u\nel i</w>\nth row</w>\ngr ams</w>\nle vels</w>\nmichi gan</w>\nc ad\nador able</w>\nconst itu\nw s\npu b</w>\nmid night</w>\nth at\nnet fli\nbraz il</w>\ndie go</w>\nregu lar</w>\njo y\nâĤ ¬</w>\nli qu\nea stern</w>\nk ni\nfl at</w>\nn p</w>\nbro wn\nw er\nse y\ntt ers</w>\nac ting</w>\nv anc\ncy cling</w>\nprogram me</w>\nra w</w>\ncomple x</w>\ntat too</w>\nthrowback thursday</w>\nse ssions</w>\nro oms</w>\nsi ght</w>\nspeci es</w>\nbom b</w>\nlau gh</w>\nke eps</w>\nmo on\noffic ers</w>\ncon ver\nt r</w>\nha sh\nt ack\nri ous</w>\nad ap\na j</w>\nreco gn\nex po</w>\nsug ge\nconfir med</w>\nrol ling</w>\ndre ssing</w>\nic t</w>\nfri day\nph ones</w>\nri dge</w>\ncon cept</w>\nro y</w>\nke ys</w>\nef for\nc ate\nk ne\nev en\nl ay</w>\ncommun ities</w>\nmo d\nn az\nevery where</w>\nal ab\nbit coin</w>\nban ks</w>\nout door</w>\nfeder al</w>\nsto res</w>\nh p</w>\nc al</w>\nm ely</w>\nsig nific\nbe ar\nre public\nclo ser</w>\nal lah</w>\npic k\nx d</w>\npal ace</w>\nch ill</w>\nb am\ner ous</w>\nun a</w>\nal len</w>\nout standing</w>\nolym pic</w>\nsupp ly</w>\nfi gu\nv au\nl p</w>\nchar lie</w>\nun es</w>\n> >></w>\nlegen ds</w>\nici al</w>\nco ast\nbenef it</w>\nmul ti</w>\nf its</w>\nfar mers</w>\nam ount</w>\nsi sters</w>\nhar ve\nhon ey</w>\nque en\nb ers</w>\npl ann\nâŃ Ĳ\nm u</w>\nbarcel ona</w>\nal ber\nstat us</w>\nre main</w>\nex tra\nc andy</w>\nvi ous</w>\nâľ Į\no v\nwarri ors</w>\n-- ></w>\nju mp</w>\nam ar\nx mas</w>\nstu dies</w>\ni ors</w>\nk or\ndon ate</w>\npre p\nfi sh\nim a</w>\npain ted</w>\nad mini\nco splay</w>\nspor ts\ndro ps</w>\nfi ghter</w>\nevi dence</w>\nðŁĴ ª</w>\nla ke\nro b</w>\ncine ma</w>\npro file</w>\nÃ ±\nstan ds</w>\nleg acy</w>\nsh ape</w>\nro of</w>\nci vil</w>\ni ans</w>\nsy l\nsh am\nvo ted</w>\nre tail</w>\nph illi\nli sted</w>\ndu ty</w>\nn b\nth es</w>\nf are</w>\nau ction</w>\nffici al</w>\nstor ms</w>\nd p</w>\nl oun\nsh ops</w>\nal y\nani me</w>\nmulti ple</w>\nðŁĺį ðŁĺį</w>\npsy cho\nje an</w>\nap art\ncandi date</w>\ngg y</w>\ncon f</w>\njose ph</w>\nw ick</w>\nme at</w>\nfr ame</w>\nc l</w>\nfor got</w>\nph y\nf ing\nli ed</w>\nre p</w>\nse ed</w>\nf all\nu fc</w>\nnu t</w>\nlin d\nmo de</w>\nfiel ds</w>\nen ce\ns ley</w>\nðŁ¤ Ķ</w>\nch ill\nfollow ed</w>\nannoun ces</w>\ncor ru\ntro phy</w>\nthem selves</w>\nac le</w>\nal du\nk ong</w>\nl on</w>\ns v\nbro ke</w>\nander son</w>\nta i\nstor y\ntempor ary</w>\nactiv ities</w>\nk ati\nari z\ncry stal</w>\nspo ke</w>\nextre mely</w>\ntra ding</w>\nðŁĴ ļ</w>\nÃ ¼\nin ch</w>\ned in\nout fit</w>\nequ ip\nma di\nform ed</w>\nbe ef</w>\npo p\nti ger</w>\nthis day</w>\nti red</w>\nneigh b\nre tro\nis a</w>\nun t</w>\nt as\nkan sas</w>\nde st\nsecon ds</w>\nta y\nhur ric\no u</w>\ngalax y</w>\ndad dy</w>\nbro w\nbur ger</w>\nen ced</w>\nde sk</w>\nac cur\nsecre tary</w>\nel ite</w>\nk ab\nch in\ntouri sm</w>\nbud dy</w>\nici de</w>\ndre ssed</w>\nu d\nvac ation</w>\nche ers</w>\ncom for\ncharac ters</w>\nj et</w>\nbu ying</w>\nl ins</w>\nn ap\nreale state</w>\nli e\naf c</w>\ni ii</w>\nf ame</w>\nn r\nb at</w>\nag ent</w>\nma kers</w>\nâĢ ¼\nsec tor</w>\nop ti\nle on\ndi et</w>\npra yer</w>\nhi p</w>\nmi r</w>\nle x\nbr y\nan a\npas sing</w>\nw en\nreco very</w>\nak i</w>\npo pul\nres ort</w>\nmar ia</w>\nstu ck</w>\nread s</w>\nti er</w>\nperfe c\nnetfli x</w>\np oo\ncham p</w>\no c</w>\nre duce</w>\nwe red</w>\ncomm ents</w>\ncla im</w>\nacci dent</w>\ns ag\nh ack\nsal t</w>\nkin da</w>\nk iller</w>\ni os</w>\nz y\nex change</w>\nlec ture</w>\neng er</w>\nic king</w>\nt au\nreve als</w>\npri son</w>\nz om\ngh an</w>\nu l</w>\njour nal</w>\ni ot</w>\ntr in\njon a\ngovern or</w>\ncap e</w>\nquar ter</w>\nspec tive</w>\nimpre ssive</w>\nbab ies</w>\nt x\nm ill</w>\no y\nhar ri\njo int</w>\nsu e</w>\ncollabor ation</w>\ntren d</w>\nrevolu tion</w>\nre new\nalum ni</w>\nge tt\nsh ell</w>\nsun day\nent u\nni c</w>\ndonald trump</w>\nblock chain</w>\npaci fic</w>\nexpla ins</w>\nsp y</w>\nad voc\npar adi\nto f\nstar ring</w>\np av\nfe ed\nbr ac\nsmo ke</w>\nham p\ny am\nto kyo</w>\nsi mon</w>\nd h\ne ffici\nphys ical</w>\nn j</w>\nell i</w>\ns low\ngradu ate</w>\nameric ans</w>\nti fy</w>\nf red</w>\nap ore</w>\nfin ds</w>\nrob in\nwe t</w>\nnot ice</w>\nse mi</w>\nun ve\nk om\npil ot</w>\nscre ening</w>\nda ily\nðŁĴ Ĺ</w>\nroy al\nsp a</w>\nvo tes</w>\nn ag\nwh ate\natt ending</w>\nexper im\nad dition</w>\nk ate</w>\nsto l</w>\nm ali\nfoo t\nchri st</w>\nch an</w>\nde e</w>\nlic en\nglo bal\nmo ore</w>\nti a</w>\nbri gh\nmyster y</w>\ny ay</w>\nâĿ¤ï¸ı âĿ¤ï¸ı\ncre ati\nme chan\nclo ck</w>\ndi c</w>\nâĢ Ķ\npp er\nal ph\nthrough out</w>\nal low</w>\nre sources</w>\nselec tion</w>\nham il\nbb q</w>\naa aa\nvirgin ia</w>\ndis ney\nen g</w>\nso red</w>\ndrin ks</w>\nf ancy</w>\nconsi der</w>\nend a</w>\njan e</w>\nhand made</w>\ndu l\non tari\ni us</w>\ns ville</w>\ncolor ado</w>\nwhate ver</w>\nwhe el</w>\npromis e</w>\nne ver\ndesig ns</w>\nab ly</w>\nsex ual</w>\nvanc ou\nat i</w>\ncon vention</w>\ncul tural</w>\nsing apore</w>\npro mo</w>\nload ed</w>\ngla sgo\npp l</w>\nn oo\nke e</w>\nste m</w>\nmen tion</w>\ni do\ncru ise</w>\nri ding</w>\nbe comes</w>\nbe y</w>\nâļ½ ï¸ı</w>\ntw in</w>\ndedic ated</w>\nna sh\nde si\nwork out</w>\njen ni\ni v\ngrou ps</w>\nrela x\npho eni\nli ft</w>\nmix ed</w>\nm ck\np c\nmu st\nme tro</w>\nci es</w>\ny ar\na im\nang er</w>\ni e\nrec y\nmarri ed</w>\ndro pped</w>\neng ag\nle st</w>\nambassad or</w>\nop h\nde s\nw ick\nassi stant</w>\nnat ur\nfa il</w>\nl td</w>\nshor t\nk ap\nsha w</w>\nbi gger</w>\nrema ins</w>\ncrit ical</w>\nsur vey</w>\nco verage</w>\ner son</w>\nwin d\nn b</w>\nbil ly</w>\nlet es</w>\nac ts</w>\njim my</w>\nat lan\nal and</w>\nt c\nimport ance</w>\ndam age</w>\nf g</w>\nstor age</w>\ntw t</w>\nbon d</w>\nbal ance</w>\ncr ying</w>\npu ppy</w>\nvo te\npu sh</w>\nðŁĴ ľ\npol y\nme l</w>\nlon don\nterr ori\neffec tive</w>\ncorpor ate</w>\natl anta</w>\njac o\nnas a</w>\ngre ek</w>\nsen ate</w>\ni sh\nev a</w>\nintellig ence</w>\neffor ts</w>\nal co\nk un\nh all\ndi ag\nclaim s</w>\nfir st\nh b\nba e</w>\nv ul\npu ll</w>\nÂ °</w>\nse par\nspe ed\nvic ti\non thisday</w>\naudi ence</w>\nr ates</w>\nte ach</w>\nfil ming</w>\nbu sh</w>\nson g\ny um\nbr un\nra ine</w>\naw a</w>\npar ks</w>\nð Ŀ\nra bb\nra ch\nra id</w>\nreach ed</w>\nra il</w>\nmo ves</w>\nselec ted</w>\nfr i</w>\nra ising</w>\nom y</w>\nst ones</w>\nsu k</w>\nfranc isco</w>\ncas es</w>\ncap it\ncon fu\nw tf</w>\npo ke\nequip ment</w>\ngre g\ness ential</w>\noff ering</w>\nne x\npi es</w>\nbe c\ncre ation</w>\nchair man</w>\ncro wn</w>\nw al</w>\njohn ny</w>\nshi ft</w>\nne ck</w>\nban g</w>\nbir d\nðŁĺ ı</w>\ndu ck</w>\nre serve</w>\nde pu\nma sters</w>\nover all</w>\nno tic\nju ice</w>\nsne ak</w>\nche er</w>\ncla sses</w>\neag les</w>\nn ca\ncar pet</w>\nci vil\ncoach es</w>\nhar ris</w>\nu ps</w>\nb alls</w>\ndec or</w>\nmar tin\nro s</w>\nv ice</w>\nannoun cement</w>\nwho se</w>\nti gers</w>\nste red</w>\nc ts</w>\ndr am\nste el\nyoun g\ninst all\nsupp o\nrecor ding</w>\nde ck</w>\nse ats</w>\nl der</w>\nang le</w>\nbo t</w>\nsty les</w>\nelec tions</w>\nfor tun\nn ab\nbut ter</w>\nari an</w>\nka sh\nin ner</w>\nou red</w>\nbe ast</w>\nwe i\nic onic</w>\nexper ts</w>\nne cess\nb eng\njam es\nli a</w>\ngre ece</w>\nðŁĵ ·\nðŁĺ ģ\ngood bye</w>\nm itch\ntw ice</w>\nmumb ai</w>\nste am</w>\nru sh</w>\nmed al</w>\nne tt</w>\nfashi on\nt ar</w>\nr s\nsav ing</w>\nric ul\nl m\nsleep ing</w>\nbrook lyn</w>\nmis s\nsen ding</w>\ndisco vered</w>\nsp here</w>\nof theday</w>\nk icks</w>\nmissi ons</w>\nw right</w>\ner n\nght ly</w>\ni ous</w>\nmel bourne</w>\nstar tu\nmo ved</w>\ncar ry</w>\nd ak\nag ues</w>\nbel gi\ne ma\nway ne</w>\ndo t</w>\ner ie</w>\npe l</w>\nit unes</w>\nmatthe w</w>\nno body</w>\nest ab\ncal m</w>\nwin ds</w>\nlu c\nprep are</w>\ntren ds</w>\nexerc ise</w>\nadv ant\nðŁĴ ¯</w>\nathle tics</w>\napp s</w>\nc tions</w>\nadv ance</w>\nlaun ches</w>\nlitt le\nreal donaldtrump</w>\neliza beth</w>\ncarol ina</w>\nhu b</w>\nhi dden</w>\nn w</w>\nus er</w>\npol l</w>\ngreat er</w>\nmo st\nf ed</w>\np at</w>\nlife style</w>\ns ati\nsco res</w>\nmarri age</w>\nl r</w>\naven ue</w>\nde serve</w>\nri f\nðŁ Ĺ\nwat ch\nchampion ships</w>\ngr ay</w>\nen ni\ncot ton</w>\ng om\nwhe re\npack age</w>\nsu m\nab solu\nnew ly</w>\nfoo ds</w>\nty ler</w>\nassemb ly</w>\nmusli m</w>\nban k\nre memb\nop tions</w>\nproduc er</w>\nland o</w>\nfun ds</w>\nu pper</w>\nshad ow</w>\npro gre\nco p</w>\ning e</w>\nleg s</w>\ndetro it</w>\nhill ary</w>\njo se</w>\ngi ants</w>\nsou p</w>\nsustain able</w>\nt us</w>\nclo thes</w>\nroc king</w>\nn z</w>\nmin ne\nmat eri\nbru ce</w>\near t\nca sting</w>\nindepend ent</w>\nthou sands</w>\nta h</w>\nde cl\nveter ans</w>\nli ons</w>\nwra p</w>\nâĢ ¦\nde ss\nbl ing</w>\nst ine</w>\ne ggs</w>\no on</w>\nclo sing</w>\nz ay\nat t</w>\nbac on</w>\nfa il\nariz ona</w>\nde pre\ngho st</w>\nnew sp\nw ers</w>\nvi p</w>\nli ked</w>\nid ent\nvolunte er</w>\nad ult</w>\npu pp\ncir cle</w>\nmat erial</w>\ndegre e</w>\ngro wn</w>\nboo m</w>\ncalend ar</w>\nsu r</w>\nvie wing</w>\nath letes</w>\nch and\nre ll</w>\nasi an</w>\nen tr\nvol ley\nvicti ms</w>\nbo dy\nm ama</w>\ntrans fer</w>\nge ek</w>\nin dic\nsav ed</w>\nma i\ng ent</w>\nit s\nloun ge</w>\nk ol\nthe ory</w>\nsitu ation</w>\nis lands</w>\nar th\nz oo</w>\nfloo d</w>\nvi ously</w>\nshow ed</w>\nparliam ent</w>\nch ev\nel ine</w>\nat trac\nab ad</w>\nta il\nh rs</w>\nlu s</w>\npor tu\ngor y</w>\nprovi des</w>\nto ys</w>\nde ath\nin fe\nan ce\ng le\nli am</w>\nlo ver</w>\nhu d\ndv d</w>\nreve aled</w>\ng w\nre ment</w>\nca the\nl ying</w>\nra dio\nder by</w>\nstor s</w>\nche mi\nhosp it\nâľ ¨\n' :</w>\nilo ve\nle mon</w>\nre public</w>\ns ni\nne ss\ndo or\nre action</w>\npre gn\nfla v\nschol ar\nspo tify</w>\nis ation</w>\nvis ual</w>\naw are</w>\nspon sored</w>\njo ke</w>\nless ons</w>\nleg is\nlo ck\nsi mil\nðŁĺ ĭ</w>\nkin d\nla y\nma h\nho ping</w>\nvancou ver</w>\nas er</w>\nclean ing</w>\ngal a</w>\nthre at</w>\nla p\nach e</w>\nro mance</w>\nex pen\nre post</w>\nz am\ne pi\nmir ror</w>\no ak</w>\nad ul\nbat man</w>\ns lu\nl c</w>\nvie wed</w>\nre views</w>\nd ates</w>\nindone sia</w>\nacti vi\noff en\nlea f</w>\ni si\nag ricul\ncostu me</w>\ns ites</w>\nspir itu\nappear ance</w>\nir y</w>\nst air\napplic ation</w>\nspec tac\nic ity</w>\nski es</w>\nhand le</w>\npun k</w>\nparadi se</w>\nt n</w>\nde al\nprovi ding</w>\ndo c</w>\nrecei ving</w>\nbre w</w>\nmicro soft</w>\nÃ ¶\nfer r\nme tro\nth ail\ny um</w>\ncar ter</w>\nÃ ¡\ngent le\nbre aks</w>\ncoo per\nshow case</w>\ncu tting</w>\negy pt</w>\nbab y\nsemin ar</w>\ngl ori\nss on</w>\nfa ve</w>\nre hear\nlo tte</w>\nla dy\nal as\npre p</w>\ndeli vered</w>\nnu clear</w>\nir o</w>\nengag ement</w>\nat ta\ncon ven\nz an\ngl ory</w>\nhol ds</w>\nbusine sses</w>\nstr ange</w>\nsch e</w>\nit self</w>\ngra d</w>\nmar kets</w>\nf alling</w>\nst ats</w>\nge on</w>\nbu dd\nli s\nshe et</w>\nthi si\nco lo\ndeser t</w>\nregi stration</w>\nig n\nexpla in</w>\ninter ior</w>\nla ws</w>\nwrit ers</w>\nspr ings</w>\nk r\nfri ed</w>\nblo om\ninf ra\na o\ncre d\npa st\nline up</w>\nbo o</w>\nbre a\nboo ts</w>\ncelebr ity</w>\natt acks</w>\nbro ok</w>\nev es</w>\nex cu\ncher ry</w>\noo p</w>\nfas cin\nboy friend</w>\nse as\nn ine</w>\neffec ts</w>\npo wered</w>\nk ha\nðŁĺ Ģ</w>\nsh out\ncon dition</w>\ni j\nher o\nenter pri\nwin ter\napplic ations</w>\nsho e</w>\ng el\nbatt le\npro grams</w>\nw art</w>\nðŁĴ ¥</w>\nra p</w>\nho l</w>\ndang erous</w>\ndi a\ncoun ter</w>\nric s</w>\ni or\nk night</w>\nco at</w>\nemo tional</w>\nat ures</w>\nd as</w>\nwhe el\nfore cast</w>\ntran sport</w>\nglasgo w</w>\nking dom</w>\nprepar ing</w>\nim medi\nff in</w>\nawar ded</w>\nprin ting</w>\nro man</w>\nfight ers</w>\nany more</w>\nbel t</w>\np ine</w>\nwin e\nx i</w>\nemploye es</w>\nlogi es</w>\nal led</w>\nde mo</w>\nbirth day\nange les</w>\nlo g</w>\ndri vers</w>\nneck lace</w>\nk ath\ns it\nathle te</w>\nef s</w>\ns burg</w>\npur pose</w>\nresi stance</w>\nrele ases</w>\nt is</w>\nvari ous</w>\ndeli ver</w>\nch al\ns anc\nopp o\ncra w\nneu ro\ndr a</w>\nsuppor ters</w>\nsna p</w>\ndiffic ult</w>\nswe ar</w>\nlogi st</w>\npa th\nattemp t</w>\nà ¥\nswim ming</w>\nste ve\nhur t</w>\ninclu ded</w>\nb ap\nwa re\nðŁĴ ĭ</w>\nend ers</w>\nja ke</w>\nle eds</w>\ncli mb\nl b</w>\nim ple\nli sa</w>\nclo thing</w>\nðŁĺ İ\nd t</w>\ncom pla\nsw ing</w>\nstra w\nv als</w>\nk le</w>\nus ers</w>\nstor m\ncu ts</w>\nontari o</w>\np an</w>\nhand some</w>\ni ow\nar gu\nchec king</w>\nscotti sh</w>\nĶ ï¸ı</w>\nsi er</w>\nem ma</w>\npo d</w>\npatter n</w>\nde sh</w>\nen h\ned ward</w>\nt ing\nk h</w>\nhal f\nlincol n</w>\nmo ther\nal leg\nr c</w>\nvolley ball</w>\nd n</w>\ng ay\nall y\nle ton</w>\ngro ve</w>\nl oud</w>\nadv anced</w>\nre spec\ncli ent</w>\nsupre me</w>\nthail and</w>\nho w\ngi g</w>\nto i\ndo t\ndol lar</w>\nðŁĳ ĩ</w>\np it</w>\nr b</w>\nh n</w>\nproduc ed</w>\ngg ers</w>\nâĨ Ĵ</w>\nml b</w>\ncan vas</w>\nfin eart\nus d</w>\nin the\np son</w>\nactu al</w>\ns l</w>\nt b</w>\nip ad</w>\nen sure</w>\nu mb\nw d</w>\nsk a</w>\nmar s</w>\nk end\nf eli\nth ing\ncount down</w>\nabsolu te</w>\nr out\ndra l</w>\np y</w>\ninju red</w>\nmin t</w>\nhun ting</w>\nmm er</w>\ns age</w>\nli gh\nac ity</w>\nex pan\nmur ray</w>\nar o\nsec ure</w>\nfour th</w>\neag le</w>\nreli ef</w>\nst akes</w>\nindustri al</w>\nclar k</w>\nunder standing</w>\nsee m</w>\npl enty</w>\nsil ver\ncla u\nthre at\nsa il\npro duce</w>\nab str\nis is</w>\nb r</w>\neng ers</w>\nwor ry</w>\nbie ber</w>\ns j\njust in\nreali ze</w>\nky le</w>\nesp n</w>\nfil ter</w>\ns ch</w>\nty pes</w>\ngame dev</w>\nd ing\ntwit ter\nsoldi ers</w>\np om\ncar bon</w>\ny ards</w>\nchild hood</w>\nri ed</w>\nke l</w>\nele ph\nt ons</w>\nkey note</w>\nqui et</w>\nwi re\npo sting</w>\nis sa</w>\nrepre senting</w>\nbac ks</w>\nalex ander</w>\ncelebr ates</w>\nta ining</w>\n| |</w>\nch or\nesc ape</w>\npe ek</w>\nti ves</w>\nfiel d\nssi e</w>\nim pac\nspons or</w>\nr c\nwe dd\ncann ab\nsi des</w>\ntrac ks</w>\ncom par\ncon trac\ntechn ical</w>\nbi ble</w>\nexpl oring</w>\nsh are\ntra v\nn ate</w>\nill o</w>\nsc ru\nm ingham</w>\ngun s</w>\nof the\nsh ame</w>\nse es</w>\nca tho\nac cess\nce l</w>\nrepor ted</w>\nÂ »</w>\nmari o</w>\np ad</w>\nhope fully</w>\nou se</w>\ny on</w>\ndisapp o\nol o</w>\np itt\npa c</w>\nga p</w>\ncru sh</w>\ns g</w>\nk le\nge m</w>\nemp ire</w>\ndir ty</w>\na is\navi ation</w>\nze aland</w>\nfac ing</w>\nhigh way</w>\nd anny</w>\nspi der</w>\not ta\nðŁĺ Ħ</w>\nw y</w>\ncol ours</w>\nin fl\nco sts</w>\nolym pics</w>\nau s</w>\nh m</w>\nho ward</w>\npas ses</w>\nlau ren</w>\nmu sh\nop in\nr ho\ndisc ount</w>\noper ation</w>\nem ily</w>\nmm m</w>\ncham ber</w>\nd il\nto yo\nshi p\nsam u\npic tured</w>\nun ic\npo l</w>\nkeep er</w>\ncarto on</w>\nst en\nig nor\nn ations</w>\nn l</w>\nta sting</w>\ndeta il</w>\noffici als</w>\nmo tor</w>\nfranc is</w>\ned itor</w>\nðŁĳ ĩ\npe ts</w>\nrang ers</w>\nt g\nr n</w>\nw ri\nnic hol\ni se\nspo ts</w>\nani e</w>\nchec k\ntri ple</w>\nku mar</w>\nspe akers</w>\nic ing</w>\npre pared</w>\nab use</w>\nfriend ship</w>\nmon th\nswi m</w>\nair e</w>\nsc ent</w>\nhamil ton</w>\nindi an\nj es\nyum my</w>\nte ars</w>\nda wn</w>\ni zed</w>\nworl ds</w>\nðŁ ķ\nb illi\nst one\nn hs</w>\nba sic</w>\np or</w>\nst le</w>\nir on\nol der</w>\ncle vel\ne ing</w>\nðŁĺįðŁĺį ðŁĺį</w>\nprin ts</w>\nfir m</w>\nair craft</w>\nfin est</w>\ndevel op</w>\naar on</w>\nt z\ngra ham</w>\nown ers</w>\nfo li\nless on</w>\nqu es</w>\nbab e</w>\ncra ft\nph en\nju n</w>\nbir mingham</w>\nv ine</w>\nll er</w>\ni an\nfineart america</w>\nevol u\nst ab\nim per\nwar d\ncom ic\nwi z\ninv ited</w>\ndu ke</w>\nmat ch\npor ts</w>\nro ger</w>\ndiag no\nke pt</w>\nte st\nvis u\nr hy\nso c</w>\nto x\nb aker</w>\nsur face</w>\nco vers</w>\nman s</w>\nb its</w>\nx box</w>\nff le</w>\nn an</w>\ngar d\nh art</w>\nwat ers</w>\nv illa</w>\nre tro</w>\nlight ning</w>\ncatho lic</w>\ndemocr acy</w>\nneigh bor\npen n\ncr an\njona than</w>\nla ura</w>\nvi bes</w>\nsu b</w>\ncoach ing</w>\nclear ly</w>\nuk raine</w>\nbra ve</w>\ncommit ment</w>\nt all</w>\nmar t</w>\nra p\nmo di</w>\nsco tt\nbro s</w>\nshow er</w>\nðŁı ¾</w>\nâĺº ï¸ı</w>\ncou sin</w>\nappro ach\nbr e</w>\ncom pos\nhil ari\nphil ly</w>\ng ad\nquick ly</w>\nri an</w>\nt m</w>\nvir tual</w>\nhou ses</w>\nk t</w>\nphoeni x</w>\nw ire</w>\nff y</w>\nb unch</w>\nanc ing</w>\ntal e</w>\nsnap chat</w>\nstar ter</w>\nh t</w>\nk icking</w>\nap art</w>\nth y\n) !</w>\nblo gger</w>\nit z</w>\ncom fort</w>\nang els</w>\nw ash</w>\n\" :</w>\nar gent\nre quest</w>\nhon est\nmi ghty</w>\nbo bby</w>\nk g</w>\nro l</w>\nthou se</w>\nex po\nh c</w>\ntab les</w>\nmag ical</w>\npo sts</w>\nde m</w>\nn w\nor lando</w>\nab er\n* **</w>\nðŁĺ ľ</w>\nenviron mental</w>\ntrans formation</w>\nmi le\nw ic\nhir ing</w>\nma ine</w>\nbo ar\nr ying</w>\nti s\nnit ure</w>\ntwee ted</w>\nanton io</w>\nopin ion</w>\nfin ale</w>\ndi y</w>\nf is\nth in</w>\ntrou ble</w>\nle go</w>\nfi les</w>\nqu art\nsp a\ncurren cy</w>\ncli mate\nfan art</w>\nrail way</w>\nsp ace\nban ds</w>\ndani el\nmo tion</w>\nl eng\nhol der</w>\noc cu\nmar ie</w>\ncathe dral</w>\nbu zz\nbi es</w>\nnas car</w>\nbm w</w>\nbat tery</w>\nchar lotte</w>\ndoc tor\nzz le</w>\nse ven\nin san\nd dy</w>\nst en</w>\nlab or</w>\nthr illed</w>\nse ren\ndocu mentary</w>\nwav es</w>\ncer tain</w>\ncan did\nallow ed</w>\nninten do</w>\nstar wars</w>\nta p</w>\nhome made</w>\nd les</w>\nther ing</w>\nbre e\nemp ty</w>\npi ano</w>\npos iti\ncoun try\npor k</w>\npu ts</w>\nper ry</w>\nm atic</w>\nspot light</w>\nti st</w>\nor ities</w>\nwe alth</w>\nc p\nbar bar\ncommit ted</w>\nas sau\npro fit</w>\ne ight</w>\nhu l\nfini shing</w>\nrun ner</w>\nss o</w>\ninsp ec\nchar ged</w>\nchrist op\nlo sing</w>\nco al</w>\nho o</w>\nele v\nde le\nmo ham\ndon ation</w>\nc able</w>\nclin ic</w>\nj in\nmanag ed</w>\nter ing</w>\nâ ¬\nur ban\ndepu ty</w>\nbb er</w>\nbur n\nacade mic</w>\no tt</w>\nsta ke</w>\nit er\nsto wn</w>\nack er</w>\nadvent ures</w>\nad ams</w>\ngre g</w>\npro m</w>\nvo l</w>\nac qu\ncon gre\npa int\ncitiz ens</w>\nc all\naf ford\nv c</w>\nas ks</w>\nthe tic</w>\nindepend ence</w>\nâ Ľ\nh itting</w>\nbl on\nfu ture\nâ ı\nin no\ngen e</w>\nbo ards</w>\ndi stance</w>\nse t\nre mem\nth al\npre vent</w>\nl ang\nob jec\nsu sp\nmat t\nin duc\nbor o</w>\npi one\nre di\nvir tu\nprin ted</w>\nsco pe</w>\nshar k</w>\nsuc ce\na stron\nil legal</w>\nj ag\nc ting</w>\nine e</w>\nat o\nrob in</w>\nnutr ition</w>\nb f</w>\ndu tch</w>\nb n</w>\nfur niture</w>\nfor gotten</w>\nat ar</w>\nru p\nhy per\nbran ch</w>\ncommunic ation</w>\ndegre es</w>\non ia</w>\nun cle</w>\npromo te</w>\nor che\nwi i</w>\nj s</w>\nbut ton</w>\nma jor\nc bs</w>\nbri stol</w>\npremi um</w>\nordin ary</w>\ne dit</w>\nm g</w>\nwe ed</w>\nst even</w>\n: '\ngu s</w>\nte s\ncap tured</w>\ndru gs</w>\ndo w\nwr ites</w>\nbi shop</w>\nwhe els</w>\nali zation</w>\ndisco very</w>\nw r</w>\nrach el</w>\nne il</w>\nhy dr\ncu test</w>\nentreprene ur</w>\nkore an</w>\nore gon</w>\nul ty</w>\nperfec tly</w>\nsuppor ted</w>\nhistor ical</w>\nt wins</w>\nell y\nwe l</w>\nde vil</w>\nin come</w>\nscienti sts</w>\nde leg\nh en</w>\non i</w>\nic ed</w>\ngi o</w>\ncur ry</w>\nreve al</w>\ne g\nbuff alo</w>\nn ol\nop era</w>\ncamer on</w>\nhaha haha\nj ab\ngradu ation</w>\ncra ig</w>\nr al\ni f\norgani zation</w>\nle ge</w>\ng ang\nsu d\nedin burgh</w>\nl ack</w>\nfli es</w>\ng ate\nthr ones</w>\nq b</w>\nthe real\ne leg\npp in</w>\nc les</w>\njam ie</w>\ntn am</w>\ncryp to\nou l</w>\np ages</w>\na se\nroo ts</w>\nstu pid</w>\na did\nboo t</w>\nprote in</w>\ns ap\nsi um</w>\nsu s\nend or\nfun ction</w>\ndon t\nen na</w>\nch y</w>\nsqu e</w>\nwor ker</w>\nm tv\ne a</w>\nk an</w>\nðŁĴ ļ\nmu s</w>\nprofessi on\nt to</w>\noper ations</w>\nal lo\nc tor</w>\ninv ite</w>\nsc and\nou th</w>\nz im\nlin ks</w>\ncli ents</w>\nsam sung</w>\ndiscu sses</w>\nn ell</w>\nul tra</w>\nsome where</w>\nste wart</w>\nine t</w>\nde z</w>\nb out</w>\nfac tor</w>\nti an</w>\ntr ans</w>\njere my</w>\nd b</w>\nðŁĩ ¬\nor n</w>\ndevelop ing</w>\nspo l</w>\ncoo per</w>\nma u\nrememb ering</w>\ntre k</w>\nfamil y\nsen iors</w>\nfo ster</w>\natt ended</w>\nw ing\ntrans form\nele mentary</w>\nhor iz\nli sting</w>\nmalay sia</w>\nit ch</w>\nwarri or</w>\nphilipp ines</w>\nruss ell</w>\nm end\niniti ative</w>\ncre ep\nto ps</w>\nbr iti\na ur\nshar p</w>\nadverti sing</w>\nug ly</w>\nachi ev\nmateri als</w>\nbu g</w>\ndev ice</w>\nbon us</w>\nfac ility</w>\ncol e</w>\nnh l</w>\ny as\nplann ed</w>\npol e</w>\nexcell ence</w>\ntr ick</w>\ncon fl\nr p</w>\nachi eve</w>\nlo an</w>\nswa g</w>\njess ica</w>\nho we\np our</w>\nsc u\nz oo\nr ated</w>\ndre sses</w>\nre bel\nmex ican</w>\nco ordin\nme ss</w>\natlan tic</w>\nt l</w>\nosc ar</w>\nwal ks</w>\nphar mac\ninvestig ation</w>\n... #</w>\ncc i</w>\neas ily</w>\nmonday motivation</w>\ny ment</w>\nau ti\nfor ced</w>\nar med</w>\ncolle agues</w>\npap ers</w>\npro per</w>\nsha ke\nbu c\nle an</w>\nexhi bit</w>\ne vement</w>\nco tt\nbi z\nsp er\nk ent</w>\nsw an\n/ @</w>\ngirl friend</w>\nhaw k</w>\nâĺ Ģï¸ı</w>\nmon o\nðŁĴ Ľ\nstat ue</w>\nðŁĺ ³</w>\nra s</w>\nte eth</w>\npreci ous</w>\nt ile</w>\np am\nswi ft</w>\nv ali\nno se</w>\ndr unk</w>\nexperi ences</w>\ncome back</w>\ngen ius</w>\nwor se</w>\nsh ef\nra d</w>\ned it\nhon our</w>\nau spol</w>\nlar ry</w>\nh ire</w>\ngor don</w>\nachi evement</w>\n.... ....\nsu icide</w>\nalter native</w>\nsu p</w>\nsur roun\nsha ke</w>\nke ith</w>\npe pper</w>\ntur k\ncrimin al</w>\nbe ck\nsu m</w>\nw alls</w>\ncn n</w>\nan tic\nof fe\ncol li\nwin es</w>\nhigh light</w>\nhawa ii</w>\nemb ar\nl fc</w>\nðŁĩ ®\nm v</w>\n> >\nat mo\nwor d\ncar l\nshout out</w>\nbre wing</w>\nì Ŀ\ndo f\ns ic\nhot test</w>\ncol on\nhh h</w>\nshu t</w>\nlow ing</w>\nvolu me</w>\napart ment</w>\nagre ement</w>\nde stro\nwe e</w>\nreligi ous</w>\niow a</w>\nro d</w>\nland ing</w>\nre present\nðŁĵ· :</w>\nla s\nusu ally</w>\nh l\nc ac\nsal v\nal ong\nlaugh ing</w>\nbe ans</w>\nremin ds</w>\npha se</w>\nsome body</w>\nma sk</w>\nran ked</w>\ndest roy\nsc i</w>\nâĢ¼ ï¸ı</w>\ngab ri\nle o</w>\nro a\nfa iled</w>\nsi l</w>\nrefuge es</w>\nre vi\nr ing\nber ries</w>\ncoo kies</w>\ny y</w>\nconserv ation</w>\nsh ab\nhuman s</w>\nde termin\na in\nni all</w>\nas su\nmb a</w>\nfro m\nextre me</w>\nvic es</w>\ncommer ce</w>\nght ful</w>\nor dered</w>\nsuppor ts</w>\nre cap</w>\nv or\ndro pping</w>\ncorrec t</w>\npay ing</w>\nmean ing</w>\nn j\nqui z</w>\n\" #</w>\nbusine ss\nðŁĩ® ðŁĩ\nindi gen\ndu st</w>\nbox es</w>\nbl ind</w>\nx xx</w>\nzz y</w>\nðŁĩ¬ ðŁĩ\nss els</w>\ns ant\ndd le</w>\nhilari ous</w>\ndesig n\nwonder ing</w>\nvehic les</w>\nk re\nju d\nrece ption</w>\npar ker</w>\nÃ Ń\npri vi\nhy dro\nsof tball</w>\npol lu\nlo cked</w>\nba h\ne ar</w>\nscri pt</w>\ndi vi\nbr ace\ngeor ge\nthe ast</w>\nbel o\nj al\ntion ary</w>\ndent al</w>\nroc ket</w>\npur ch\nsh ak\nmanufac turing</w>\ne z</w>\nit is</w>\ncon cep\ntb all\nch s</w>\ndirec ted</w>\npra yers</w>\noo k</w>\nphil os\nvari ety</w>\nche ss</w>\nser ver</w>\ng and\nbal ti\nðŁĵ ¸\nsel y</w>\ncru z</w>\nspectac ular</w>\nbur ning</w>\nre present</w>\ni z</w>\nt one</w>\nmer ce\nh ell\nbed room</w>\nestab li\nbo l</w>\ncom mon\nãĥ »\nab or\nkit ty</w>\nhei ghts</w>\nre pair</w>\nwilli am\nqu ake</w>\nalab ama</w>\npopul ation</w>\nre v\nre tt</w>\ni sts</w>\nn ite</w>\nle m</w>\na ha</w>\nclevel and</w>\nr m</w>\npo ver\nob se\nmon tre\nman ia</w>\nÂ ®</w>\ncon ne\ncar ni\nsh ah</w>\nf y\nu a</w>\nsc or\nstrugg le</w>\nbo b\n' '</w>\nappro pri\ndeci de</w>\nff ed</w>\nca ster</w>\ns ort</w>\nhun gry</w>\ndra g\nØ§ Ù\ngr ounds</w>\nd w\nsli ghtly</w>\ncar din\ndead line</w>\nbron ze</w>\nweb in\nbar ry</w>\nsil ence</w>\ne uro</w>\nop tion</w>\near n</w>\nðŁĴ ĸ\nhowe ver</w>\nna ren\nna ils</w>\nbath room</w>\nv ine\nph d</w>\nmin ing</w>\ngar age</w>\n( )</w>\nshou lder</w>\ndefe at</w>\ndi r</w>\no v</w>\nliber ty</w>\nple as\nx on</w>\ncom pre\na v</w>\nj in</w>\nab les</w>\nsil ent</w>\nfam ili\nvis its</w>\ndi pl\nha bit\nmilli ons</w>\nregar ding</w>\ninnov ative</w>\nsen ator</w>\nr ts</w>\nv on</w>\nk l\nwh il\nrequi red</w>\nâĿ Ħ\nlu v</w>\npresi dential</w>\npo cket</w>\nhun dre\nsho wn</w>\nfro zen</w>\nto ward</w>\nfa st\nconfi dence</w>\nr ough</w>\nindivi dual</w>\nqu et</w>\nðŁı ½\ndom e\nfi fa</w>\nengine er</w>\nz en\nre mix</w>\nðŁĺ ĥ</w>\npl ant\nmin or</w>\nrobin son</w>\nas y\npul led</w>\ncer tain\npotat o</w>\n( :</w>\npre s</w>\noc ca\nw it</w>\nit em</w>\nsi e\nd ating</w>\nthom pson</w>\nown ed</w>\nan u\nvi e</w>\nte dly</w>\ngood night</w>\nex cept</w>\nðŁĮ Ł</w>\nira q</w>\nki e\nren ces</w>\nli p</w>\nsimil ar</w>\nsau di</w>\nvi g\narth ur</w>\npic ks</w>\nmil an</w>\nhon da</w>\nma xi\no g</w>\nste st</w>\nar ch</w>\nanaly tics</w>\nba sti\npear l</w>\nter ry</w>\nhor se\nast ro\nac ce\nlaun ching</w>\ninter national\ns no\nta sty</w>\nden ver</w>\nir l</w>\npe te</w>\ntor n\nadvant age</w>\nvar sity</w>\n\" \"</w>\nsol e</w>\ng c\nlan g</w>\ndemon str\nol ds</w>\nun ity</w>\nne ts</w>\ninsp ire</w>\ncre te</w>\nnash ville</w>\nnel son</w>\ne ter\nwal k\nhy un</w>\nm ack\ntre as\nsee king</w>\nra ge</w>\nbru sh</w>\nab and\nwhil st</w>\nco con\nh ong</w>\nshel ter</w>\ni p</w>\npossi bly</w>\nso o</w>\nit ed\nâ Ħ\nrac es</w>\nwar ming</w>\nqu in\ntele vision</w>\nmat ches</w>\nra pi\nment al\npal m</w>\njenni fer</w>\nrol ls</w>\nindi ana</w>\nb ars</w>\ncat ching</w>\nresc u\ncandid ates</w>\nfa re\nâł Ģ</w>\nse o</w>\nvie tnam</w>\nalph a</w>\nmichel le</w>\nvisi ble</w>\nre gre\nwn ed</w>\napp le\nli p\nf fe</w>\nli z\nyork shire</w>\nha il</w>\nse asons</w>\nbe gan</w>\nm d\nk c</w>\nla p</w>\nfascin ating</w>\nhel p\nur y\nu ms</w>\nnu ts</w>\nse m\nalong side</w>\nbri dge\nori al</w>\no ve\nworld cup</w>\nbriti sh\ncomfor table</w>\ni ve</w>\nhot els</w>\nfair s</w>\nhor ri\nso x</w>\nd ining</w>\nstre am\nbar ri\nss y</w>\nw im\nter ms</w>\nv u\npe re\nl ens</w>\nwal ked</w>\nr or\nl ars</w>\nshi eld</w>\ndou bt</w>\npro to\ncro ssing</w>\nme ant</w>\nmedi um</w>\nad ding</w>\ne b</w>\nche ap</w>\nfun c\npap er\nbran ds</w>\nry an\nfeed back</w>\ncol lins</w>\nun known</w>\ntro pical</w>\nsand wich</w>\nfal len</w>\nfor mu\nselec t</w>\nlo ads</w>\nansw ers</w>\nor i</w>\nmag a</w>\nd or</w>\ndu o</w>\nali e</w>\ndru m</w>\nur i</w>\nde er</w>\nsou l\nsh ut\nâĺ º</w>\nsto len</w>\ndon ated</w>\nbu zz</w>\npatri ots</w>\nha l</w>\nna sty</w>\nnomin ated</w>\nmon te\nki a</w>\nth ri\ning u\nte sts</w>\npe tro\nðŁĳ ĳ</w>\nho sts</w>\nne st</w>\nto pic</w>\npat ch</w>\nm my</w>\nhu gh\nab ilities</w>\nma the\ns miles</w>\ng b\nag enda</w>\ninsi ghts</w>\nchi p</w>\nph an\nfail ure</w>\ndg ers</w>\nha i\nsignific ant</w>\nsho ck</w>\nru ral</w>\ngl am\nfigu res</w>\npot us</w>\no ta</w>\nmini stry</w>\nappe ars</w>\nfe ar\nr h\nameric an\nh att\nson y</w>\nfi res</w>\ne di\nn ou\ne qui\nwh en\nunivers al</w>\nmad ness</w>\ni x</w>\nsculp ture</w>\nb ach</w>\nt to\nswe den</w>\net a</w>\nen to</w>\ndevelop ed</w>\nmonth ly</w>\nma ps</w>\nra h</w>\nle d\ndel ta</w>\nsa ints</w>\nis lam</w>\nben ch</w>\nfif th</w>\nv ard</w>\nso cks</w>\nwel coming</w>\nj e</w>\ntur ner</w>\nv b</w>\nad i</w>\nnor way</w>\nad y</w>\nhurric ane</w>\npor sche</w>\ntra dition</w>\nex am</w>\nnewsp aper</w>\nlu ci\na ver\nide al</w>\nd na</w>\nmadi son</w>\nðŁ §\nwit ness</w>\nac ou\ninsi ght</w>\nsi mon\nrobo t</w>\nsna ke</w>\nn bc</w>\nac o</w>\nro ss\nsh ment</w>\nreligi on</w>\nch ann\nin su\ncamp bell</w>\ninst alled</w>\nwe ather\nhor ses</w>\nol i</w>\nrober t\nk az\nðŁı Ģ</w>\nveter an</w>\nth read</w>\nquar ter\nea sier</w>\ncap ture</w>\nhi pho\nlaw rence</w>\nroman tic</w>\npas sion\ncl ay</w>\nox ford</w>\nth ai</w>\nstu dying</w>\nfi a</w>\nelec ted</w>\nmost ly</w>\nc b</w>\ntu mb\nâĢįâĻ Ĥ\nx l</w>\nsh an</w>\nfa ster</w>\nev ans</w>\nsli de</w>\nsh ri\nsee k</w>\nmi es</w>\nchemi stry</w>\npump kin</w>\ntu m</w>\n, ,</w>\nro om\nfi red</w>\nli ps</w>\npres ence</w>\naf f\nbrew ery</w>\narri ve</w>\nsw ag\nphoto graph</w>\npen gu\nchi ps</w>\nat tor\nval ues</w>\naccur ate</w>\ncon temporary</w>\nprinci pal</w>\ncannab is</w>\nari o</w>\nany where</w>\ngi a</w>\ndemocr ats</w>\nbuil dings</w>\nli ved</w>\nap s</w>\nneg ative</w>\nm are</w>\nbal lo\nli on\ndiam on\nloo k\nre form</w>\ntom my</w>\nil la\ntre ats</w>\nhundre ds</w>\nport land</w>\nwor thy</w>\nex cep\nar ia</w>\nido l</w>\nbe er\ncd n\ny u</w>\naw k\nðŁĩ ¨\nc ells</w>\nÃ ³\nident ity</w>\ndra wn</w>\nde vil\nf inger</w>\nth am</w>\nðŁĳ Ĭ\near ned</w>\nfin tech</w>\ndol ph\ntwee ting</w>\nevolu tion</w>\nðŁĵ į</w>\nest im\nm vp</w>\nn one</w>\nðŁĩºðŁĩ ¸\ntoyo ta</w>\nau x</w>\nmar in\nb old</w>\nl bs</w>\nste ak</w>\nmur phy</w>\nit able</w>\nlou is\nsol ve</w>\npi a</w>\nsk ir\nill ino\nwebin ar</w>\nban ana</w>\nlo v\nth on</w>\nvo ters</w>\nafford able</w>\ndefe ated</w>\nlm fa\nair lines</w>\nsuper b</w>\nany way</w>\ndeb t</w>\nbo red</w>\nver si\nme tal\nresponsi ble</w>\nm k</w>\ns se</w>\nf ay\ncau sed</w>\nf p</w>\nrecomm end</w>\npla za</w>\nspor ting</w>\nalli ance</w>\nau stri\nn n\nt ours</w>\nsurpri sed</w>\narti f\nth under</w>\nsur ve\nwor e</w>\nbri ef</w>\nnecess ary</w>\nz ie</w>\nash ley</w>\ndra ke</w>\nr t\nkni fe</w>\nim mun\nchar ges</w>\na the\nbri de</w>\nrep ly</w>\ng av\nbroad cast</w>\npu er\nbrace let</w>\ncap acity</w>\nharve st</w>\nid k</w>\nperfor man\nd ding</w>\nil ers</w>\npar a</w>\njam a\npro vince</w>\nch in</w>\nid ers</w>\nhar i</w>\nte aser</w>\nch en</w>\nre stor\nr at</w>\nfl at\ncol om\nðŁĴ ŀ</w>\nðŁĩ¨ ðŁĩ\nsmoo th</w>\nr t</w>\np itch\nstay ing</w>\nisra eli</w>\nt cot</w>\nper spective</w>\ndo ck</w>\nopen er</w>\nlo vel\nx o</w>\nclass room</w>\nl ington</w>\ngo al\nkenne dy</w>\nsh am</w>\nsp aces</w>\nmitch ell</w>\nhome coming</w>\nuk i</w>\nclaim ed</w>\nrecru it\ning o</w>\nmu fc</w>\nmon it\ng roo\nresi dent</w>\nper cent</w>\nper man\notta wa</w>\nint ment</w>\nan xi\nstand ards</w>\nwor ship</w>\nsche me</w>\nf x</w>\npot ter</w>\nbi an</w>\nathle tic</w>\naf gh\ns se\nsat ell\npar ties</w>\nâĿ¤ âĿ¤\ninfra structure</w>\nrela x</w>\nmo du\nwor n</w>\nsmo king</w>\ny ach\npractic es</w>\nwc w</w>\nam b\ndome stic</w>\ntay lor\nk entu\nprovi ded</w>\nmo di\nve g\n\" ...</w>\nob serv\nðŁĺ ©\nbe ard</w>\nm our\nan gry</w>\nðŁĺ ±</w>\nstartu ps</w>\nwoo den</w>\ndi ve</w>\nna il</w>\nanti que</w>\nro ses</w>\ntorn ado</w>\nm at</w>\n^ ^</w>\nsu spect</w>\nfar m\nde vices</w>\nme ga</w>\ntu l\nscholar ship</w>\nge e</w>\ndisa ster</w>\narri val</w>\npo in\nmar c</w>\nkati e</w>\nbb ed</w>\nfal se</w>\ndeser ves</w>\nric hard\nju ana</w>\nfre y</w>\ntion ed</w>\nhy bri\nr w\nsar ah\nach i</w>\nc ure</w>\no le\nmor ris</w>\nch ic</w>\nbroad way</w>\nla bel</w>\npa k</w>\npover ty</w>\ngol f\ne red</w>\nf u</w>\ner ies</w>\nbe es</w>\nalo gue</w>\nst el\nwire less</w>\nje wish</w>\nti de</w>\nblo cked</w>\nlife time</w>\nb har\nsp lit</w>\nam ster\nth i</w>\njo shu\nbr unch</w>\nha ps</w>\ns for\noo ps</w>\nka poor</w>\nhi king</w>\nsuppo sed</w>\nro of\nre as\ntra in\nti ght</w>\ntru mp\nbas ically</w>\nr r</w>\nea red</w>\nsee ds</w>\nentr ance</w>\nc p</w>\nwi e</w>\nson ic</w>\nvic tim</w>\nhe re\ne h</w>\near rings</w>\nsal mon</w>\narc tic</w>\nan ne\ndou gla\ncorru ption</w>\nhann ah</w>\nha sn</w>\nvo ices</w>\ncon ce\natt a</w>\nfle et</w>\nclin ical</w>\ndemocr atic</w>\nton y\nst ood</w>\nle f\ntwit ch</w>\na il</w>\nhonest ly</w>\nincre ased</w>\ndro me</w>\ndon na</w>\naccep ted</w>\nvisit ors</w>\nap ar\nad or</w>\np ar</w>\njer ry</w>\nra i\nbrand on</w>\nab u\n!! !!!!</w>\nme me</w>\nin gh\nglori ous</w>\nb hu\npu mp</w>\nj ol\nli ke\nfi sher</w>\nma z\nag an</w>\ndestin ation</w>\nplay list</w>\nle tters</w>\ngen u\nbr ace</w>\ncelebr ated</w>\nbann er</w>\nr he\ndra gon\nðŁĺ ħ</w>\nsig nature</w>\ngre y\nâľ Ķï¸ı</w>\nal ice</w>\nbe red</w>\nph er\nber n\nca th\nga thering</w>\nsc oring</w>\ninflu ence</w>\nsm iling</w>\nde pt</w>\nlo cal\na x</w>\nac u\nreti rement</w>\nhon or\nher self</w>\nchem ical</w>\nasse ss\ny all</w>\nfre qu\nappreci ation</w>\nac a</w>\ncho ir</w>\ncu z</w>\nso il</w>\nc il\nrepor ting</w>\nu h</w>\nenterpri se</w>\ngr at\njaco b</w>\nru m\nfe e</w>\nj ak\nsp in</w>\nbi kes</w>\nphi a</w>\nste re\np is\nbloo d\nt att\nra ft</w>\nwar ren</w>\nsh eri\nback stage</w>\nmar sh\nhash tag</w>\nther ine</w>\nre in\ngame day</w>\nguar an\nreci pes</w>\nmin ds</w>\nstron ger</w>\nissu ed</w>\nbic y\nn ak\nment ed</w>\nsc ary</w>\nu x\npre vious</w>\ntt le</w>\nth ats</w>\nac tors</w>\nu ma</w>\ntin a</w>\nbun ny</w>\npromo tion</w>\nu ss</w>\noli ver</w>\nmontre al</w>\nwhat s\nappreci ated</w>\nla kes</w>\nexcu se</w>\nkno wing</w>\npri zes</w>\nmusc le</w>\nshad es</w>\nsco t</w>\ning redi\nelectr onic</w>\nju an</w>\ncomb at</w>\ns ri</w>\ne h\nturk ish</w>\nl om\nstri kes</w>\npri son\nre e\npo pe</w>\nvi d</w>\nol dest</w>\ndol l</w>\nsw iss</w>\ncerti fied</w>\ncli p</w>\nre turning</w>\nlat or</w>\nle igh</w>\ntt es</w>\nwat son</w>\nheal ing</w>\nel im\nper haps</w>\nha ss\nk au\nd der</w>\nmou se</w>\nnew castle</w>\nindigen ous</w>\nwel comes</w>\nco le\ntau ght</w>\nno ise</w>\nappe ar</w>\njo e\ncan on</w>\nwedne sday\nu tah</w>\nc tive</w>\ndri ven</w>\ni v</w>\nc ell\nstri p</w>\nac c</w>\nfocu sed</w>\nar rest</w>\nsto cks</w>\nwo o</w>\nâ Ĺ\nnotic ed</w>\nshad o\ndi spla\nter ror</w>\nbor ne</w>\nsecon d\nque ens</w>\nwo ke</w>\nja il</w>\nno tt\ncam bridge</w>\nhar t\nse af\nfa x</w>\nac cept</w>\nâĺ ħ\ngoo ds</w>\nk at</w>\nt win\nh s\nthou sand</w>\ns ins</w>\nsu ite</w>\namp ton</w>\nar n\nrele v\nric har\nhoo ps</w>\nn bc\nclass ic\np ab\nsoldi er</w>\nde plo\nle ans</w>\ninstall ation</w>\ncla sh</w>\nle ban\nee e</w>\nti re</w>\nbelo ved</w>\nfu sion</w>\ntravel ing</w>\nne i\ncoo kie</w>\nglo be</w>\nphys ics</w>\ns q\nco l</w>\nwol ves</w>\nd l</w>\nex it</w>\n\" -</w>\nfoo tball\nle af\nster ling</w>\nhi de</w>\nminne so\nfresh man</w>\nnatu re\nindi e</w>\nsupp lies</w>\nbri s\niri sh\nink tober</w>\ndoo dle</w>\nic op\nmess ages</w>\nadul ts</w>\nrecor ded</w>\nfix ed</w>\nar do</w>\noffe red</w>\nunder ground</w>\ndr one</w>\np ine\nma inten\nand re</w>\nham mer</w>\ns x\nr ound\nhi ke</w>\nbra d</w>\nro me\nfu ll\non ey</w>\nro ws</w>\ncolum bia</w>\narchi ves</w>\nappro ved</w>\nbat ch</w>\nillino is</w>\nrecogn ition</w>\nshou ldn</w>\nfo g</w>\nnca a</w>\nke vin\nhuman ity</w>\nal though</w>\npow ers</w>\np ou\ns ar</w>\npe st</w>\nalco hol</w>\ncon sci\nphil adel\nen o\nt m\nok la\ncate gory</w>\nparticip ate</w>\naccu sed</w>\nbri ef\npo em</w>\nclu bs</w>\nconsul t\nja b</w>\nbig data</w>\namster dam</w>\nac ing</w>\ncerti fic\nn u</w>\nd at</w>\nimpro ved</w>\nand y\ncampa ig\npale stin\np ace</w>\nmo bi\nfeel ings</w>\nwol f\nbra in\npro pos\ninter active</w>\nprin ce\ninde x</w>\nc is\ncha e\npeace ful</w>\nco vering</w>\nac o\ncour ses</w>\nmon key</w>\nre place</w>\nb l</w>\nbloo dy</w>\ntal es</w>\nbrigh ton</w>\nneighbor hood</w>\ng ates</w>\nspiritu al</w>\naf raid</w>\nbre ast</w>\nb ones</w>\nðŁĳ ī\nvide o\nw au\ntou ch\ninju ries</w>\ncar l</w>\nri x</w>\nune x\nâĢ ¢\nfre d\nconsi dered</w>\nthu si\nan ch\non y\nu sa\ngraph ics</w>\nac re</w>\nðŁĺ ©</w>\ncom memor\ncom mod\ngo ti\nguar dian</w>\nstar bucks</w>\npre vention</w>\nhaha haha</w>\nadmini stration</w>\nportu gal</w>\nfac ulty</w>\nbet a</w>\nul a</w>\nal bert</w>\nbre ath\ner i</w>\nle tting</w>\ntr ic\nment ation</w>\nincredi bly</w>\nten nes\nv d</w>\nðŁĻ Ī</w>\ned die</w>\nbr ick</w>\ngr ill</w>\nbt w</w>\nwat ches</w>\nresear chers</w>\nt ney</w>\nni e\np as</w>\na ster</w>\nvi br\npoke mon</w>\nch rome</w>\ngo at</w>\npitt s\nil ly</w>\nfesti ve</w>\ny d</w>\ncan al</w>\nðŁ Ĩ\nfi es</w>\ncar los</w>\nre que\npartic i\ntra ins</w>\nsam ple</w>\ntemper ature</w>\nsym ph\npic king</w>\nin door</w>\nz ers</w>\nplayo ffs</w>\n____ ____\nap es</w>\nly rics</w>\nislam ic</w>\nperforman ces</w>\nd ick</w>\nspar k\nse as</w>\nhom a</w>\ngr ound\ndisc i\nemploye e</w>\ncom mu\nalas ka</w>\nal an\nfe ast</w>\ndg ing</w>\nban king</w>\nmanu el</w>\nslow ly</w>\ntru cks</w>\nmc car\noo o</w>\nsc rat\norche stra</w>\nindivi du\nm x</w>\nbre ath</w>\nstair s</w>\nequ ality</w>\nbla ke</w>\nloc ations</w>\ncocon ut</w>\nbalti more</w>\naa a</w>\nl c\nðŁı Ĩ\nhar vey</w>\nresi st</w>\nimmigr ation</w>\nadid as</w>\nfil i\nre f</w>\nlg bt</w>\nmo s</w>\npp i</w>\nken ny</w>\nterr or\nban e</w>\napol is</w>\ns g\nsocial media</w>\nka i</w>\nhon est</w>\nas sas\nbol lywood</w>\nâĢįâĻ Ģï¸ı</w>\nferr ari</w>\nhor n</w>\ncryp to</w>\nbo om\nmainten ance</w>\ni di\ns man</w>\nw l</w>\next ended</w>\nin sul\nve s\ngo sp\ntr i</w>\npi g</w>\ntar ge\ncel er\nst ati\nsm h</w>\nri dic\nappe al</w>\n? )</w>\ncon clu\ncos me\nshe ep</w>\nchristop her</w>\nen thusi\npo lish</w>\nme ts</w>\noun ded</w>\nsustain ability</w>\ncreati vity</w>\ncon crete</w>\nra i</w>\nali en</w>\nble ss\nte es</w>\nclu b\nro t</w>\nbo s</w>\nex ist</w>\nperfe ction</w>\nlu ck\nrock y</w>\nexpen sive</w>\nmean while</w>\nhappy birthday\npre t\nthr iller</w>\nca ve</w>\nplayo ff</w>\nsom er\nl u</w>\nle x</w>\ndef ence</w>\nam writing</w>\nhome less</w>\npro phe\nch et</w>\npast or</w>\nðŁ¤ £\nland er</w>\nww w</w>\nĢ ï¸ı\ntic a</w>\n! #</w>\no tic</w>\nrad ar</w>\npo sters</w>\npow der</w>\npo li\nha un\ntra p</w>\nbl in\nassau lt</w>\nshor ts</w>\nre y\nsh y</w>\nsqu ir\nrac ist</w>\ngar lic</w>\nfu r</w>\nremo te</w>\nsm ell</w>\nimpre ssed</w>\nfing ers</w>\nâł Ģ\ndin o\nle ment</w>\ns nu\npromo ting</w>\nstr ing</w>\nproduc tive</w>\nb age</w>\nma son</w>\nra z\ndirec tly</w>\nj k</w>\nev al</w>\nðŁĳ Ĭ</w>\ndoc tors</w>\nco w</w>\nri der</w>\nst v</w>\nre move</w>\nw u\nna than</w>\nro d\nn r</w>\n= ></w>\naffe cted</w>\ninve st</w>\nmp tion</w>\ng inger</w>\no d</w>\nagricul ture</w>\ns que\nmu g</w>\ncoun ting</w>\nke e\nmag nific\ncoo k\nani stan</w>\nroo t</w>\nplac ed</w>\nsym po\ngh ana</w>\nun d</w>\nche er\nthro wing</w>\nsecre ts</w>\nf illing</w>\nopti mi\nbutter fly</w>\nbu bb\nðŁĺ ī\nterri ble</w>\nd g</w>\nsil k</w>\nobse ssed</w>\nlo u</w>\nai de</w>\nsal ute</w>\nmon u\nphiladel phia</w>\nscienti fic</w>\ni st\nu ae</w>\ndess ert</w>\nbott les</w>\ncan yon</w>\nðŁĺ Ī</w>\ncar ib\no ther\nw ich\nre source</w>\nguil ty</w>\nun d\nle on</w>\ne ss</w>\nkan e</w>\nel e</w>\ntra iner</w>\nhe im</w>\nan te</w>\nman age</w>\nroo kie</w>\ntre ated</w>\npo ses</w>\nrs vp</w>\ncau ses</w>\naw ak\nje well\nle tt</w>\non ics</w>\ntit les</w>\ncardi ff</w>\ng aga</w>\nbu mp\nuse ful</w>\n? !\nloo se</w>\nbb ing</w>\n: :</w>\nargent ina</w>\nde bu\ncy cl\nwh el\ndis gu\nj el\nk ills</w>\nbio logy</w>\nex ter\ntra sh</w>\nbo dies</w>\ntr am\ncircu it</w>\nexpe ct\nla ds</w>\nw ells</w>\nsho t\nge e\nnaren dr\nfa stest</w>\nb ent\nb ills</w>\nmar shall</w>\nh ats</w>\nintro duce</w>\nciti zen</w>\nim possible</w>\ngi b\naz z\nnet working</w>\nr ant</w>\nthin k\nin dy\nst ops</w>\nf theday</w>\nbri an\n* *\namo di</w>\ndom e</w>\ncoura ge</w>\npac king</w>\naf fairs</w>\ng n</w>\nsi zed</w>\nent ary</w>\npol and</w>\nswit zer\nafgh anistan</w>\nw u</w>\nten der</w>\nsubscri be</w>\nmo sco\natt end\nrepublic an</w>\nhon ey\nâĢ ĭ</w>\nsi mul\nwe ster\nfoo die</w>\nor o\nmidd le\nab t</w>\nco pies</w>\nma je\nnarendr amodi</w>\nty pical</w>\ninspir ational</w>\nvit am\nwis con\ncu bs</w>\ntiv ity</w>\nh ali\ne ars</w>\nk ay</w>\nd are</w>\nmari juana</w>\ncu rious</w>\nan ia</w>\ntom ato</w>\nre mind</w>\nðŁĩ ·</w>\nsc ared</w>\ncou p\npo et</w>\nland ed</w>\nri d</w>\nwra pped</w>\nmor ri\nclimb ing</w>\ne ws</w>\nfe eding</w>\ncon tra\ntho logy</w>\ngri d</w>\nti vely</w>\nread er</w>\nla ser</w>\ndi ving</w>\ndi g</w>\nlat in</w>\nti ed</w>\nshake spe\no ci\nad m\nshow ers</w>\nchu ck</w>\nmar cus</w>\noo s</w>\nkne e</w>\no live</w>\now l</w>\ndy lan</w>\nan no\ng ym\ndeci sions</w>\nwell ness</w>\narri ves</w>\nsati s\nchri s\nthur s</w>\nðŁ¤ £</w>\ninter views</w>\nthank you</w>\nswitzer land</w>\nover night</w>\njourn alist</w>\nser ves</w>\nvol can\n.... ...</w>\nplo t</w>\nnic ol\ncar rying</w>\nmag ne\ntre asure</w>\nex p\nbe ver\nðŁĺ ¢</w>\nmar ty\nmo le\ndon ations</w>\nrecogni zed</w>\nb h\ndu s</w>\nsh ann\nal do</w>\nsuccess fully</w>\nent e</w>\nðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ\ncab inet</w>\ncu is\ntit led</w>\nd as\nso l</w>\nstrate gies</w>\ndeli vering</w>\nad ds</w>\nani an</w>\nne ther\nðŁĴ ĥ\ncon tain\nsu its</w>\npa irs</w>\nto dd</w>\nrel la</w>\nro pe</w>\nci o</w>\ncro p</w>\npaint ings</w>\nsu z\nre jec\nbu st</w>\nd h</w>\nfra ud</w>\nm h\ncontro l\nje al\ndestroy ed</w>\nal lows</w>\nwo ol\nminneso ta</w>\nom en\nj u</w>\nsympo sium</w>\nd af\nlim it</w>\naccoun ts</w>\nload ing</w>\ninter n\nre solution</w>\nhol land</w>\nqu al\nmeet ings</w>\ngra ve</w>\ncam ping</w>\nv am\nre nov\nliber al</w>\nam ber</w>\ngre e\nhu mb\nfe ver</w>\nel ing</w>\nbroo ks</w>\nà ²\nbe th\nad ed</w>\nal t\nro e</w>\nperform ed</w>\njo sh\nfrank lin</w>\nnic ole</w>\nde ss</w>\nbb s</w>\nm g\nnet works</w>\nmin im\nal t</w>\nweap ons</w>\ngu y\njas on\ng ha\nharb our</w>\nat on</w>\npra ise</w>\nkentu cky</w>\nbel fast</w>\nst icks</w>\nblo ss\nho pes</w>\nan thro\nfamili ar</w>\nwa it\nch ile</w>\ndepre ssion</w>\nla x</w>\nje ts</w>\nle ice\nrecei ves</w>\nsi er\nan k</w>\nde x\ninde ed</w>\nfle xi\nfab ric</w>\nlam b</w>\nhel icop\nam anda</w>\nâĢĶ âĢĶ\ncompe te</w>\nsn ack</w>\ntechno logies</w>\nsy rian</w>\nmom s</w>\nmu ham\ncho sen</w>\nan at\ndev on</w>\nshar ks</w>\nre t</w>\nfundra iser</w>\nselfi es</w>\nst ations</w>\ncommunic ations</w>\ntennes see</w>\ntu tor\nro t\nvalu able</w>\ndynam ic</w>\nnur se</w>\ni ed</w>\nearth quake</w>\ndeser ved</w>\na ve\nsar a</w>\nstre tch</w>\ndougla s</w>\nne pal</w>\nÃ §\nob viously</w>\nd ame</w>\nra pe</w>\nany body</w>\nk w\npat rol</w>\nhol ders</w>\nh anna</w>\ninfo graphic</w>\nec o</w>\nbe ating</w>\nstan ley</w>\nbo ats</w>\nri bb\ne z\nwit ch</w>\ninv a\nac id</w>\nboar ding</w>\n- @</w>\ngi l</w>\nda ve\ncare ers</w>\nopp os\nl loy\nin ter</w>\ndo pe</w>\nre su\nj agu\nsh ade</w>\nin dy</w>\non ist</w>\nrel ations</w>\nag en\nab le\ninci dent</w>\nme ter</w>\nshar ma</w>\nid r</w>\npro ve</w>\nimmedi ately</w>\ntro ops</w>\nam an</w>\ng low</w>\ngaz a</w>\nblo cks</w>\nperson al\nchron ic\nall er\nsi d\nsh r\nwhats app</w>\nlu cy</w>\nar chae\nho u</w>\njourn alism</w>\nour selves</w>\ngo t\nthe med</w>\nshap ed</w>\nwe ak</w>\ncas ual</w>\nleng th</w>\nsla m</w>\nab bey</w>\ne v</w>\ncoun ter\nest a</w>\nreci pi\ncha pel</w>\nexpan sion</w>\nsel f\nsuff ering</w>\nsp ice</w>\nn z\nsp art\ndesp er\nboo king</w>\nquart ers</w>\ny on\nðŁĴ Ĺ\np k\ncontinu ed</w>\n- #</w>\nman hatt\ntal ked</w>\nsh en\ncom bo</w>\nhybri d</w>\nje ans</w>\nliqu id</w>\nse al</w>\nre tweets</w>\nac celer\ncollec tive</w>\nt as</w>\n: ))</w>\nprofession als</w>\nra w\no tt\nsu san</w>\nir ing</w>\nokla homa</w>\nre ven\nsurvi val</w>\ncre ator</w>\ntran sit</w>\nst ac\nsur f\ni k</w>\ned iting</w>\nch illing</w>\nbai ley</w>\nste al</w>\nra ble</w>\npa rent</w>\nhun ger</w>\nsn app\ncollec t</w>\nphilos oph\ndedic ation</w>\nc f\nc m\nle ep</w>\nrepe at</w>\nre ha\nun fortun\na er\na ero\nabstr act</w>\nmon itor</w>\nag ents</w>\nbu l</w>\nsci ence\nharb or</w>\ndrag ons</w>\nfloo ding</w>\nac compli\nd ash</w>\njuli a</w>\nthe red</w>\ntues day\ncy ber</w>\nb low</w>\nta ined</w>\nle m\nrefe rence</w>\npp o</w>\nne goti\nchar le\ncon nor</w>\nau lt</w>\naccess ories</w>\ncommissi oner</w>\nrain y</w>\nre ar</w>\nadvis ory</w>\nluc as</w>\nma id</w>\nco al\nk av\npol o</w>\nðŁı ¾\ntran sport\nmar gare\nstraw berry</w>\nbur ns</w>\ngre ens</w>\nne v\npartici pants</w>\ncol in</w>\nbelgi um</w>\ncol our\nin form\nd ell</w>\nbr on</w>\ncal y\nkick off</w>\nstrate gic</w>\nre union</w>\nhon ors</w>\nli b\negy p\nâŃĲ ï¸ı</w>\nhy po\nsi zes</w>\nregi stered</w>\nbet es</w>\nrelax ing</w>\nbloo m</w>\ninten se</w>\nvalent ines</w>\ninsan e</w>\nw wii</w>\np x</w>\ntri o</w>\nbla de</w>\nwiscon sin</w>\ncon e</w>\nplat in\nali ze</w>\nra ven\nincre asing</w>\nindi ans</w>\nil ian</w>\nbl u</w>\nrabb it</w>\nexten sion</w>\nje f\nau di</w>\nfer ry</w>\ns ell\na day</w>\nus b</w>\nswe at\ncham pag\nmetho d</w>\nmem ph\nassi st</w>\ns by</w>\nca pe\nremo ved</w>\nmag n\nv t</w>\nr ams</w>\nf bi</w>\ntack le</w>\nphe w</w>\nh on</w>\nmotor cycle</w>\nsu spec\neleph ant</w>\nsub ject</w>\nlet te</w>\nda iry</w>\nwhe at</w>\nawk ward</w>\nac t\ntro l\nmit ted</w>\nzay n</w>\nsheri ff</w>\nene my</w>\ncon s</w>\nke tt</w>\nbul ls</w>\nev alu\nbt c</w>\nsatell ite</w>\nho lo\npor ter</w>\ndia betes</w>\nbet ter\nrele asing</w>\nsur f</w>\n: -</w>\nse basti\ncollec ting</w>\nen cing</w>\ne thi\ngo ds</w>\nal ley</w>\nhealth y\nm ills</w>\nsma sh</w>\nco pper</w>\ncr ack</w>\nread ers</w>\nsp ac\nlicen se</w>\nbas ket</w>\nbang la\nen tic</w>\nom i</w>\nm ere</w>\nsi vely</w>\nanim ation</w>\nlan es</w>\ndent ally</w>\nchill in</w>\nfi e</w>\nk aren</w>\ndep th</w>\nli pse</w>\nn g\nri p\nmel o\nsand y</w>\nðŁĳı ðŁĳı\nvin cent</w>\nnu t\nhu g</w>\nwho le\ncre ates</w>\n? ???</w>\nâĿ¤ï¸ı âĿ¤ï¸ı</w>\nbak ed</w>\nup grade</w>\nrober ts</w>\nhar a</w>\ncarib bean</w>\nauth entic</w>\nmb s</w>\nmosco w</w>\nattor ney</w>\nwi ki\nch lo\nhu ll</w>\ncor k</w>\n\" !</w>\nsty lish</w>\nðŁĵ¸ :</w>\ndi ary</w>\nimpro ving</w>\nex pand\nbri ght\npollu tion</w>\nk nights</w>\nperson ality</w>\nchec ked</w>\nfac ilities</w>\nz el\nbow ling</w>\ngu er\nðŁİ Ĥ</w>\non going</w>\nun its</w>\nhoo k</w>\nbe ck</w>\nconfl ict</w>\nto dd\nfar ming</w>\neduc ational</w>\nk ak\ncla y\nstro ke</w>\nbel ly</w>\nexplo re\nmill enni\nth m</w>\nloo p</w>\nsm s</w>\nconsi st\ncir ca</w>\nbr yan</w>\nd ab\nyoun ger</w>\nsoli dar\npp a</w>\nexperi enced</w>\nb ella</w>\nbo ard\nshef field</w>\nsteph en\nconsu mer</w>\nsub mit</w>\nspon sor\nt ang\nag gre\ncomb ined</w>\ntrac king</w>\nsand ers</w>\nb az\nsurvi ve</w>\nfer red</w>\nequ al</w>\nse p</w>\nre ed</w>\nstr ong\npriv acy</w>\nst ap\nun g\nac ry\npa sta</w>\npir ates</w>\nag er</w>\nfair y</w>\ndu p</w>\nintroduc ed</w>\nwi p</w>\nlet s\nspr ay</w>\nðŁĵ º</w>\ngre w</w>\na sts</w>\npitts burgh</w>\nnew york</w>\njo ey</w>\nlau ren\ntra de\nch op\npi pe</w>\ncla ire</w>\nbehavi or</w>\nv ap\ncre ws</w>\nlap top</w>\nðŁ¤ Ĺ</w>\nche ster\ndisci pl\nd f</w>\nout doors</w>\nk s\ngo ver\nsuper star</w>\ncas ino</w>\nfar mer</w>\n; -)</w>\nre turned</w>\nðŁı Ī</w>\nma il\nroa sted</w>\nco sta</w>\nv ill\npe z</w>\ngard ening</w>\ndistribu tion</w>\nsh ining</w>\ninve stors</w>\nra sp\ndec ades</w>\nreali zed</w>\nbar n\np ti</w>\nst able</w>\nut d</w>\npan thers</w>\nm ens</w>\nb n\nca de\nbu cket</w>\nyn n</w>\nwhen ever</w>\nwa ke\nda is\nber nie</w>\nlo dge</w>\nju lie</w>\natmo sphere</w>\nðŁĺĺ ðŁĺĺ</w>\nmajor ity</w>\npar ti\nexc it\ncu t\nme h\nmusli ms</w>\nbe gun</w>\nfli ghts</w>\nvene ss</w>\nce me\npo sing</w>\nso le\ng ou\ndark ness</w>\npe ach\ncel tic</w>\nauth ority</w>\ngrand ma</w>\nful ness</w>\nsmi th\nspeci fic</w>\ngar cia</w>\nco ins</w>\ngood ness</w>\naldu b\nrecru iting</w>\nden nis</w>\ngar y\nsle eve</w>\nweap on</w>\npl z</w>\ndisco ver\nharri son</w>\nrecruit ment</w>\nja i\nch im\ncom pared</w>\ntom s</w>\nmo thers</w>\nam y\narchi ve</w>\nt ask</w>\nben jam\nse g\nlaw yer</w>\nal um</w>\ninve sting</w>\nmi e</w>\nche z</w>\nj p</w>\na ke\nfl am\nwall paper</w>\nâĻ¥ ï¸ı</w>\nt ton</w>\nche st</w>\nfavor ites</w>\nwe igh\ncoo lest</w>\nr ating</w>\nrelev ant</w>\nlo gan</w>\nma ple</w>\nrun ners</w>\npri or</w>\npeop le\nma ur\nterrori st</w>\nte sted</w>\ncarni val</w>\nsu spen\nme asure</w>\nm v\ncyber security</w>\napp ren\nterror ism</w>\no z\nv ital</w>\nni es</w>\ngon z\nfun ded</w>\ntwi st</w>\nassess ment</w>\ndie sel</w>\nen for\ncolum n</w>\nad dressing</w>\nca sts</w>\npay ment</w>\nx ton</w>\nfi er</w>\n, '</w>\nla st\nne e</w>\nun less</w>\nclo se\nsk ill</w>\ncuis ine</w>\nfun eral</w>\nti les</w>\na un\nk ru\nrelation ships</w>\nðŁĴ ¯\nev ent\nâĢįâĻĤ ï¸ı</w>\nkind ness</w>\npro posed</w>\nacou stic</w>\na es\ndefen der</w>\ndan ce\nh tt\nw at</w>\nvo y\nðŁ¤ ĺ\nau s\ncli ff</w>\nsear ching</w>\nbeauti fully</w>\nin qu\nat l</w>\nspeci alist</w>\nðŁĲ ¶</w>\nda i</w>\ntra ils</w>\nclass ics</w>\ninst ant</w>\nv ous</w>\nre venue</w>\nmar ch\nkir k\nfr inge</w>\nfire works</w>\ntri via</w>\nâĺ ħ</w>\ntr action</w>\nwal ter</w>\nmo to\nl ily</w>\natt itude</w>\ncli mb</w>\nsc an\nsav ings</w>\nc w\nfa ith\ncred its</w>\nab led</w>\ngra ff\nauto graph\nhe he</w>\nran ch</w>\nha d\nro gers</w>\nðŁĮ ¹</w>\nf in</w>\nre qu\nfol k\nad ditional</w>\nlyn n</w>\nu ber</w>\ndol lars</w>\nlo gic</w>\nwor th\nso m</w>\nthe sis</w>\np ound</w>\nbi c</w>\nst ur\ncer am\nspen cer</w>\nen tered</w>\nv amp\norgani zed</w>\nâľ Ī\npp s</w>\ntr on</w>\nmerce des</w>\nno ti\ncompet itive</w>\ndo w</w>\nous ness</w>\nvic tor</w>\ngr illed</w>\nna i</w>\npu tin</w>\nab ra\nbl ame</w>\nalex and\nanim al\ndec ent</w>\np ent\ninter ior\n:' )</w>\nbut ler</w>\nbal let</w>\nðŁĴ Ķ</w>\nalbu ms</w>\ndown s</w>\nla d</w>\nsi r\npla in</w>\np ers</w>\nblon de</w>\ndis c</w>\npaki stan\nse ment</w>\nga a</w>\nw age</w>\nch as\nman i</w>\nco ps</w>\nterr it\nlo l\nlau ghter</w>\nri vers</w>\nmagnific ent</w>\nlam p</w>\nw b\nnew sle\nchar ts</w>\nble ssing</w>\np unch</w>\nlon gest</w>\nfl oral</w>\ncu tie</w>\nfare well</w>\nsto pping</w>\nmb b</w>\nbu d</w>\nchee se\nde cla\nsi m</w>\nmc donald</w>\nde ter\nyou th\nt ch\nfre der\nkin dle</w>\nfer n\nat or\nas leep</w>\np ond</w>\nspr int</w>\np ounds</w>\nla zy</w>\ngh e\nfundra ising</w>\ndead ly</w>\ngran de</w>\ndou g</w>\nhe y\nlin da</w>\nconsi dering</w>\ni um</w>\ngol den\nvi k\nauth ors</w>\ndi ss\nu ally</w>\nappropri ate</w>\nmor ning\ny le</w>\nhon oring</w>\nfoli o</w>\nbe c</w>\nre bec\nfin land</w>\nformu la</w>\ncorn wall</w>\nsh ay\ncau sing</w>\nbl end</w>\nsig nal</w>\nt ent</w>\nkash mir</w>\nnation als</w>\nhar mony</w>\nsc out</w>\nacce ssi\nhe ight</w>\nmedi eval</w>\nimpro vement</w>\nke es</w>\nprac tical</w>\ncar d\nde par\nhu n</w>\nom ing</w>\ncal gary</w>\nste l</w>\nbu bble</w>\ngur u</w>\nma h</w>\nunex pe\nn h</w>\ned a</w>\nme at\ni ge</w>\nsi o</w>\ngod dess</w>\nin ches</w>\ntun es</w>\nbr itt\nsti on</w>\nra j</w>\nâĻ «</w>\nmer cy</w>\nðŁĴ ĺ</w>\nsen ds</w>\ni est</w>\npol ici\nval e</w>\nreduc ed</w>\nas ap</w>\nvi jay</w>\ndefen sive</w>\ncelebr ations</w>\nri ders</w>\nmed itation</w>\nhar mon\ng ing\nÂ ¡</w>\nprogram ming</w>\nin au\nsud den\nm h</w>\nreplac ement</w>\nsk u\nj ar</w>\ngra des</w>\nta st\nk itt\nbrand ing</w>\nk aw\nboo t\nf ought</w>\np ays</w>\ng f</w>\niz ation</w>\nho p\nk k</w>\nactivi st</w>\nv end\ncoast al</w>\ncha os</w>\nðŁĶ ´</w>\nse me\nbill board</w>\nli fting</w>\ncu mb\nsc al\nðŁĸ ¤</w>\nstru ck</w>\nl v\nindie dev</w>\nbeat en</w>\njun gle</w>\nal right</w>\ndestin y</w>\nm ing\nk c\nch ances</w>\nom an</w>\nq atar</w>\ncra f\ntra ined</w>\npri x</w>\nchar m</w>\no tive</w>\ns mu\ne c</w>\nand ers</w>\nhand ed</w>\nal ban\ncertain ly</w>\narri ving</w>\ni ze</w>\nsa i</w>\ntr ack\npain ter</w>\nhu mble</w>\nappo intment</w>\nhead line</w>\nmanag ing</w>\nmo d</w>\nas pe\nandre a</w>\nÃ ¤\nethi op\nun ited\nexi st\nbal i</w>\nk ad\nn t\nd red</w>\nre x</w>\nrecogni ze</w>\ntam pa</w>\nbe ers</w>\nati a</w>\nhe els</w>\nno te\ntransport ation</w>\ntur tle</w>\nre de\nhipho p</w>\nsp icy</w>\nsp urs</w>\nâ¬ ĩ\ncor p</w>\nther n\nto ast</w>\nhur ry</w>\nproper ties</w>\nma ge</w>\nmar co</w>\nele ments</w>\nbou ti\nsyn drome</w>\nms g</w>\ndevelop er</w>\ngra ders</w>\nhe im\nre sil\noff ices</w>\ndel ay</w>\ndi men\nvin tag\nbarbar a</w>\nðŁĺ ±\nvene zu\ncu lar</w>\nfac ed</w>\nbar n</w>\nðŁĺ Ĩ</w>\nsurvi vor</w>\nwor m</w>\nconfu sed</w>\npassion ate</w>\nØ ±\nidenti fy</w>\nelectr icity</w>\nsou ls</w>\nbrad ley</w>\nrepor tedly</w>\nlun ch\nshel f</w>\neli a</w>\nswee t\nsmoo th\nemplo yment</w>\nam el</w>\nmanhatt an</w>\nste am\noun ts</w>\nye p</w>\nli ving\nun e</w>\ndescri be</w>\nca res</w>\nman ila</w>\nsha wn</w>\nac ted</w>\nbas h</w>\nst even\nre st\npet ition</w>\ndiv ine</w>\nwel sh</w>\nrac e\nplatin um</w>\nðŁĮ ¸</w>\np b</w>\nextra ordinary</w>\nsolidar ity</w>\nm all\non ion</w>\nschedu led</w>\ngame of\nfer gu\nde ms</w>\nnor m\np k</w>\ntri als</w>\npolici es</w>\npubli shing</w>\nst ole</w>\nfron t\ncharac ter\nvan ia</w>\nex ce\nsti e</w>\nsc a</w>\nresi dential</w>\nsa iling</w>\nðŁĶ¥ðŁĶ¥ ðŁĶ¥</w>\nspons ors</w>\nth ick</w>\nchampag ne</w>\nshe pher\ncontinu ing</w>\nven ice</w>\nper th</w>\nna p</w>\na ster\ny ak\nun limited</w>\ncho ices</w>\nne o</w>\nhi v</w>\nrepor ter</w>\nbru ssels</w>\nf old</w>\ndy s\nse mi\nla wn</w>\nit alia</w>\nwi fi</w>\nas k\nem ed</w>\nfr ame\nmonit oring</w>\nste ad</w>\ni da\ngr in\nis a\nfli p</w>\nre stric\noffen sive</w>\natta ched</w>\ndi sh\nwh y\nphilli ps</w>\ngre et\np als</w>\nmix tape</w>\nv ou\nfiel der</w>\nspar k</w>\nalber ta</w>\ng len</w>\nca sh\ns ri\nu ri\nro dri\nentreprene urs</w>\nclimate change</w>\np sy</w>\nd le\nem ents</w>\nlin ked</w>\nnether lands</w>\nacci dentally</w>\noppos ition</w>\nvel vet</w>\nra ys</w>\nc w</w>\nom o</w>\nm f</w>\nlmfa o</w>\nnewsle tter</w>\n: )\ntoi let</w>\nliter ature</w>\ndi sp\nphili p</w>\nuni form</w>\nsudden ly</w>\nhead er</w>\ncool er</w>\n-- -</w>\nprou d\nbri g\nnis san</w>\nscienti st</w>\nj ah</w>\ncon centr\npac ks</w>\nappo inted</w>\nso ap</w>\neng age</w>\ncho se</w>\nâĻ ¡\nse tup</w>\njeal ous</w>\nhar ry\ng ation</w>\ntun nel</w>\nte mp</w>\nosc ars</w>\ndec ade</w>\nrecomm ended</w>\nchild ren\nab a</w>\nanxi ety</w>\nve ments</w>\nsal on</w>\npho too\norgani z\nmach ines</w>\nab s</w>\nvil le\nhy pe</w>\nti ff\nemer ging</w>\nav geek</w>\n[ #</w>\ncontribu tion</w>\nbra dy</w>\nre sto\ng mail</w>\nfit z\nphoto shoot</w>\nhel met</w>\nh t\neleg ant</w>\nug anda</w>\nnur sing</w>\nor leans</w>\npen n</w>\nna h</w>\nfoo tage</w>\nem a</w>\nw o</w>\nw ad\nconcer ns</w>\nve re\nre mark\nwho ever</w>\nstr ang\np t\nqu it</w>\nsh ang\nhistor y\ns ick\nperman ent</w>\nill ness</w>\ncol d\nvisi on\nhe m</w>\nar row</w>\ncon vic\npin k\noc cup\nbal d\nex hau\nu of\nam o</w>\non t</w>\nãĥ »</w>\nadop t</w>\nla id</w>\nsmo ked</w>\ninter pre\ness enti\nassoci ated</w>\nb d</w>\nbb y\nfi er\ninst all</w>\ndipl om\ncon diti\nc f</w>\nw ak\nany a</w>\ngr aci\nfi sher\ns ss</w>\nap r</w>\nil it\nmus ician</w>\nsymph ony</w>\ncor d</w>\nh ack</w>\nle gi\nl v</w>\nbless ings</w>\nhum or</w>\nsc ra\ne ti\nmin ster</w>\ntrav elling</w>\nbu sh\njewell ery</w>\nli me</w>\n!! !\npregn ant</w>\npe e</w>\nlo b\ncap ital\nip a</w>\npen cil</w>\nla bor\nduc ks</w>\nprou dly</w>\nwedd ing\ndere k</w>\nm w</w>\npe g</w>\nvalent ine\nan gu\nre treat</w>\npro spect</w>\ndang er</w>\nvul ner\nup set</w>\n, #</w>\nsr k</w>\nx im\nthur sday\nn fl\nkis ses</w>\nre ds</w>\ncr ack\nre ward</w>\nc u</w>\nko k</w>\nme te\naband oned</w>\nit t</w>\nme als</w>\nsp ell</w>\nstan bul</w>\ndel ays</w>\nru m</w>\nle op\ngu m</w>\nno va</w>\nsuper man</w>\nch ick</w>\nm is</w>\ndram atic</w>\ninno cent</w>\nr ounds</w>\nre c</w>\nauti sm</w>\nbangla desh</w>\nmor al</w>\nmo vie\nsp oo\nk la\nâĥ £\nou ting</w>\nmess i</w>\nab road</w>\nloo kin</w>\na im</w>\nq i</w>\nst ack</w>\ncolla ge</w>\nà ¯\nhud son</w>\nsc an</w>\nho e</w>\nch au\noc cur\ncomm ander</w>\nho les</w>\nðŁİ Ħ</w>\nbi as</w>\nv on\nstick er</w>\nma k\nresponsi bility</w>\ncolum bus</w>\nsa int\ned mon\nrac ism</w>\nfar ms</w>\nw en</w>\ngul f</w>\nmay o</w>\n!!!! !!!!\ncorpor ation</w>\nba chel\nel a\ninter nal</w>\nje ep</w>\nfol lows</w>\ndi alogue</w>\nde rer</w>\nsmart phone</w>\nhe len</w>\nrich mond</w>\nequ ity</w>\ns land</w>\nb g</w>\nne ar\nav i</w>\nmemph is</w>\nwe ir\ndiscu ssed</w>\nbad ge</w>\np up</w>\nmi stake</w>\nphen omen\nun ite</w>\nðŁ Ľ\nde pic\nri des</w>\nin augu\nn at</w>\nsof twitter</w>\ncomb ination</w>\ngosp el</w>\nâļ ¾\nad mission</w>\nretro gaming</w>\nðŁĲ ¾</w>\nsch u\nmb o</w>\njun ction</w>\nal arm</w>\nà ¦\ngr ac\nkh ali\nk ul\nm ale\ncap tion</w>\nwi sh\nte re\ncor ps</w>\nru bber</w>\nplay station</w>\ner in</w>\neffici ent</w>\nl or</w>\njo kes</w>\nin ary</w>\nnor man</w>\nlu is</w>\ninaugu ral</w>\nch ed\nâļ½ ï¸ı\ndi p</w>\nto e</w>\nstr at\naa c</w>\nam u\npi er</w>\nco tt</w>\ncomm and</w>\ntt en\nsn oo\ncu be</w>\nclo ses</w>\nclass ical</w>\ns word</w>\nexpre ssion</w>\nreach ing</w>\nn app\nco st\naffe ct</w>\nric o</w>\ngi f\nbrea the</w>\ntri be</w>\nor tho\nh ay</w>\nl g</w>\nfri es</w>\nn m</w>\nhi ding</w>\nrichar ds</w>\nen de\nmic ro</w>\ncapit ol</w>\ncop y\nro m\nregi me</w>\nmary land</w>\ntax i</w>\ndi al</w>\nembar ra\nun believ\nch t</w>\nv s\nelim in\no dd</w>\npen ny</w>\nsound track</w>\nl ings</w>\ntrans ition</w>\nrema ining</w>\na is</w>\nmali k</w>\n? !?</w>\nrand om\ndef end</w>\nul tra\ntru m</w>\ndanc er</w>\nst ol\ndri ve\na ver</w>\nro ast</w>\ndefin ition</w>\nse an\nexcit ement</w>\npartic ul\nsu rely</w>\nsh av\nber y</w>\ndi shes</w>\ncom m</w>\nis ol\ni am</w>\nob li\ngho st\nhugh es</w>\nchi efs</w>\nb as</w>\nconserv ative</w>\nspeci al\nfe min\nsh ri</w>\nn ancy</w>\ninte l</w>\ntu ne\nðŁĩ ª\njo el</w>\ngg le</w>\nmo to</w>\nðŁĺ Ķ</w>\nbu ck</w>\nd ag\nantic ip\nmont ana</w>\ngu id\nfro g</w>\nec raft</w>\nop e</w>\ndri ves</w>\nnu mer\nx y</w>\ncolor ful</w>\nwednesday wisdom</w>\nillu min\nbey on\ninau gur\ndeep ly</w>\npre fer</w>\nfor tune</w>\ncoo ked</w>\nti ble</w>\nâĺ ķ\nswe ater</w>\nit ter</w>\ntt y\nu i</w>\ngi e\ncom plic\n~ ~\ntax es</w>\ncu ps</w>\ndi verse</w>\nsam anth\nâłĢ âłĢ\nba king</w>\nsy mp\nwa i\nbe half</w>\nmer cur\ntravel s</w>\nðŁİī ðŁİ\nor ia</w>\neng aged</w>\njump ing</w>\nreti red</w>\nn aked</w>\np uni\nspeed way</w>\nsci ences</w>\nrehear sal</w>\non ym\ndy ou\npl ates</w>\nr ati\nkri sh\njaz z\ncar ol</w>\nra f</w>\npen alty</w>\ntim eline</w>\nru by</w>\nengine ers</w>\nra f\nbel le</w>\ndo se</w>\nche on</w>\nesc ap\nme g\nran k</w>\nor d</w>\nme gan</w>\nmer ch</w>\nec lipse</w>\nâĺº ï¸ı\nple dge</w>\nkir k</w>\nper si\nleice ster</w>\nsa k\nw k\nsaf ely</w>\nyy y</w>\nje t\npromis ed</w>\nj c</w>\nen ne</w>\nno ah</w>\nre no\nre a</w>\nðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ</w>\ntra il\nðŁĳ Ģ\nf d</w>\nsoo o</w>\nri min\nw k</w>\nà¸ ²\ni al\nx ox\nbis cu\nd ale\nfan dom</w>\nparticip ating</w>\nfla g\nprivi lege</w>\npe ach</w>\nmach ine\nbo ston\ngro ss</w>\no g\nmir acle</w>\nadop tion</w>\nu ss\nmon sters</w>\nbe ij\nclar ke</w>\npu shing</w>\npra ying</w>\nar o</w>\nd n\nell is</w>\napol lo</w>\nod ds</w>\nrefuge e</w>\nto w\nb p</w>\nðŁĩ¬ðŁĩ §</w>\nh end\napp eared</w>\nmemb ership</w>\npe an\ndu m</w>\nviol ent</w>\nv y\npotat oes</w>\naw w</w>\ngreet ings</w>\nt ts</w>\nac on</w>\nsh ane</w>\nphotograph ed</w>\ncra b</w>\ntemper atures</w>\ncu ba</w>\nc fc</w>\nwel com\nhe l</w>\nin nings</w>\nm k\nco de\nkno ck</w>\ngra ss\nswe dish</w>\np ta</w>\nick y</w>\nv at\nlin ing</w>\ns q</w>\nsa p</w>\nar c</w>\nannoun cing</w>\nsk ins</w>\ncit yof\nbr ing\nco x</w>\ngam er</w>\nit arian</w>\ni da</w>\nh d\nros se</w>\nsad ly</w>\nge o</w>\nâļ ¡ï¸ı</w>\ntag s</w>\nfa ther\nchan ge\nl ance</w>\nwhis key</w>\nadel aide</w>\nte c</w>\nstick ers</w>\nmarke t\nclass y</w>\nbad ass</w>\nflo rence</w>\nlin er</w>\nfro st</w>\nk ate\nac on\nscand al</w>\nes sex</w>\nðŁĺ ı\nvi vi\ndr ill</w>\nblo ggers</w>\nrecomm end\nd ha\nac res</w>\nro ma</w>\nbu y\ngro cer\ner ia</w>\nma har\nff er</w>\npatter ns</w>\nver i\ncom pu\nst ev\nang a</w>\nment or</w>\ndo o</w>\nit ali\ncdn poli</w>\non ly\nconduc t</w>\nelec tro\nde f</w>\nwh ale</w>\nprepar ation</w>\nbicy cle</w>\nvi ral</w>\nturn out</w>\nbra ss</w>\nqu ad\nhospit ality</w>\npack aging</w>\nden cy</w>\nceme tery</w>\nabo ard</w>\ndre aming</w>\npic ture\nt all\ninv ent\nad mi\no e</w>\ntem ps</w>\nqu an\nfun dam\npro mp\nresi dence</w>\nmu d</w>\nsour i</w>\nâĦ ¢</w>\ngraff iti</w>\ngi f</w>\nd nd</w>\ncom p</w>\ns war\npe eps</w>\npale stine</w>\ndevil s</w>\nsan g</w>\nassi stance</w>\nbi ke\nmissi ssi\ninter viewed</w>\nne phew</w>\ndru ms</w>\nv and\ngentle men</w>\nn sw</w>\ninst a</w>\nleban on</w>\nee ee\noli via</w>\nver y\nrou gh\nindustri es</w>\nm ation</w>\nðŁĺ Ĵ</w>\nbar rel</w>\nn ay\npo ps</w>\nmoder n\nill y\nare st</w>\non ents</w>\nprotec ting</w>\nv ans</w>\ne o</w>\nvi kings</w>\nrestaur ants</w>\nre ck\njac kie</w>\nandre w\nw illing</w>\nhe ath</w>\ncitiz en\ndisc rimin\nà¹ Ī</w>\nstu art</w>\nm ys</w>\nhi p\ntran sp\n\" ?</w>\nte x</w>\nsu shi</w>\nke d\ncro ssed</w>\ndist ur\npe dia</w>\nf ate</w>\nsome how</w>\nmo th</w>\nproce ssing</w>\nis s\nr in</w>\nu ts</w>\nyy c</w>\nver t</w>\nlg bt\nre id</w>\non to\narab ia</w>\nhabit at</w>\n= =\nstre ak</w>\nsimp son</w>\naddic tion</w>\nwim ble\ndeli vers</w>\nchalleng ing</w>\nðŁİ ¶\nfran ch\ne du\ns me\nai ds</w>\nhur st</w>\nth am\ntari an</w>\nremem bered</w>\npalestin ian</w>\nfe es</w>\ntru m\nsket ch\nur u</w>\nfit ting</w>\njes se</w>\nðŁĶ¥ ðŁĶ¥</w>\n---- ----\nba ch\nici a</w>\ncolo red</w>\nda h</w>\nassoci ate</w>\nint el\ns eller</w>\np u</w>\nstu ffed</w>\nac s</w>\nb s\nsh in</w>\ncooper ation</w>\ncertific ate</w>\nab u</w>\ningredi ents</w>\nre v</w>\nin ge\nel der\nchristi an\nbun dle</w>\nth ic</w>\ndir t</w>\nbeij ing</w>\ncomm it</w>\nted dy</w>\ned u</w>\nto day\ns field</w>\nw yn\nconfir ms</w>\nlo o</w>\nj v</w>\nene ss</w>\nal pha\nvir us</w>\nari um</w>\ngr ind</w>\nbri dges</w>\nintroduc tion</w>\npol ls</w>\nbac ter\nz ach</w>\ntermin al</w>\nra iders</w>\nfla vor</w>\nzom bie</w>\nvo d\nsp reading</w>\ngameof thrones</w>\neffici ency</w>\nlat ely</w>\nale m</w>\ntwee t\ncri mes</w>\ncl er\nde y</w>\ndg ed</w>\nhy un\npay ments</w>\ncir cus</w>\nðŁĺŃ ðŁĺŃ</w>\nmis souri</w>\nlu b</w>\nepiso des</w>\nc age</w>\npo s</w>\nmat ching</w>\ntumb lr</w>\nlin ed</w>\nge st\nam bi\nnar r\ning ton\nregu l\nblo wn</w>\nis le</w>\nco co\non don</w>\njoshu a</w>\ntour ing</w>\nsm a</w>\nsau sage</w>\nbest friend</w>\nbo eing</w>\ndesi re</w>\nsav age</w>\nra pper</w>\nde vo\nte ar</w>\ntake over</w>\ncow boys</w>\npo ker</w>\npar ag\npp e</w>\nh int</w>\nwe ars</w>\nse th</w>\nro les</w>\nl anc\nman ga</w>\nform at</w>\nfl yer</w>\nc ay\nmo or</w>\nba ke</w>\nspla sh</w>\nv ad\nker ala</w>\nproce eds</w>\nsil ly</w>\nreflec tion</w>\ndi str\nwi d\nsu it\nci vic</w>\nyan kees</w>\nby n</w>\nmigr ation</w>\ndi stin\nor ch\nfe mini\nquali fying</w>\ntu ri\no be\nhun dred</w>\ncra p</w>\nwan g</w>\nmathe mat\nbu re\nexpo sure</w>\nfergu son</w>\nseme ster</w>\nre serv\npl ym\na hu\nfac ial</w>\nwa x</w>\nwor ried</w>\nca b</w>\nvi o\nas a</w>\nco d</w>\nto pics</w>\np cs</w>\nhal o</w>\nrescu ed</w>\nhoriz on</w>\nar k\nâļ ª\nhol ly</w>\nel f</w>\nul ti\npu p\nquali fied</w>\nattend ance</w>\nati vely</w>\ndestro y</w>\ny c</w>\nfor th</w>\nphotoo ftheday</w>\nc ents</w>\nic eland</w>\nmeas ures</w>\nde sk\nport folio</w>\nartic les</w>\ndirec tors</w>\ndat ab\ne w\ncreep y</w>\noun ding</w>\nhon oured</w>\nmi st</w>\nj it\nmen tioned</w>\nport able</w>\niti c</w>\nd ann\nfriday feeling</w>\nam id</w>\nti ger\nscri p\nhelicop ter</w>\nhard ware</w>\nexpl or\nwork place</w>\naustri a</w>\nbeat les</w>\nber nar\nspi der\ndisc o</w>\ncul t</w>\nlim its</w>\nshor tly</w>\nfin al\nnin ja</w>\nlu ke\nle bron</w>\nwal mart</w>\no il\nvan illa</w>\nshi re\nye g</w>\nak y</w>\nc s\nbl er</w>\ncollec ted</w>\nt g</w>\nrol led</w>\nspeci als</w>\nb ff</w>\npier re</w>\nsh im\nvi er</w>\nflash back</w>\nrestor ation</w>\nindividu als</w>\npro d</w>\nfre aking</w>\ntu rer</w>\no a</w>\nre fre\nmor oc\ngre et</w>\nre yn\ncare ful</w>\nour ing</w>\nu sh\nis d</w>\ng ill</w>\nvie w\nthunder storm</w>\nb led</w>\npic nic</w>\nguar di\npi g\nar k</w>\nsyl vania</w>\nbann ed</w>\nu cl\nvi jay\nori um</w>\nav engers</w>\nbeliev es</w>\neu r</w>\nmonu ment</w>\nconcer ned</w>\nla bs</w>\nber g\na ap\nvi sh\nsing les</w>\ncan cel\nz el</w>\nar ab</w>\nru th</w>\ntoo th</w>\nar ta</w>\nsh af\nchair s</w>\nr ack</w>\ndise ases</w>\ncrow d\ncl y\nfle x</w>\nchrist ma\nartif icial</w>\ntom at\nfin e\ndra ws</w>\nadvoc ate</w>\nfran ce\nÙ Ĭ\nðŁĺ ³\nheav y\ns our</w>\ncompre hen\nno ble</w>\naa p</w>\nhin du</w>\ncor al</w>\ng ars</w>\now en</w>\nn l\nst all</w>\nyel low\nmar ina</w>\nin ver\nsuppor t\ntou gh\npromis es</w>\npi e\nmaster piece</w>\nsco re\nfor ce\nmor tg\ncrypto currency</w>\no x</w>\nr ors</w>\nrock in</w>\npro vin\nho g\nno stal\noak land</w>\npat rick\ninclu sion</w>\ntra ffic\nah med</w>\na ha\nlux ury\ncon secu\nde mon</w>\nâĸ º</w>\nb lowing</w>\nst ag\n: \"</w>\nencoura ge</w>\nben e\nsku ll</w>\ndo dge</w>\nbu ster</w>\nkin son</w>\nwit ne\ner ror</w>\nlo west</w>\nfel low\nà °\nsh re\nbl ur\nvir gin</w>\ncompos er</w>\nsli p</w>\nmor nings</w>\nga ins</w>\ntab le\ngra in</w>\nari st</w>\nbraz ilian</w>\nw we\ntu es</w>\nribb on</w>\nan ag\ndi st</w>\nsac rif\nem brace</w>\nentreprene ur\naf fili\nde o</w>\nt ali\ntouri st</w>\nfat al</w>\nì Ĭ\nautom atic</w>\nðŁĩ µ\nwe ak\nwel fare</w>\nconfir m</w>\nbenjam in</w>\nfi ghts</w>\nalleg ed</w>\nme ad\nstrugg ling</w>\npro secu\nche f\nÃ ¨\npropos al</w>\ner n</w>\nðŁĺ Ħ\ndy k</w>\non gs</w>\nhon g\nm ack</w>\nmel on</w>\non ent</w>\nru sh\nd ap\ntol er\npro pag\nc ze\ntrans lation</w>\nwal let</w>\ncott age</w>\nsa il</w>\nconstitu tion</w>\nðŁĴ Ģ</w>\nmun ici\nfav or</w>\nstorm hour</w>\ni h\nðŁĺ Į</w>\napproach ing</w>\npin ned</w>\nj ed\nniger ian</w>\nn ach\nsh at\nparticul arly</w>\nmc don\ncamer as</w>\nanni e</w>\nadmini str\nhe at\nelectr ical</w>\nchar ming</w>\ngib son</w>\nbouti que</w>\nex posed</w>\nac tor\npil low</w>\nbeach es</w>\ngenu ine</w>\nmargare t</w>\nben nett</w>\nlou isi\npos itions</w>\nel y\nshin y</w>\nten tion</w>\narchitec t</w>\nren tal</w>\nac qui\ngoo gle\nsub way</w>\nmom ent\nðŁļ ¨\nri m</w>\nmetho ds</w>\ncy cli\nnor folk</w>\nÙ Ī\nover whel\nra pid</w>\nwe ar\nhappy birthday</w>\nprogre ssive</w>\nðŁĴ ¥\nco gn\npap a</w>\nf ool</w>\nphilosoph y</w>\npol ar</w>\njim my\nwi g</w>\nðŁĴ ĭ\noper ating</w>\nreduc tion</w>\nph i</w>\nfla gs</w>\nto the\no di\na res</w>\nk oo\nk ang\nar kansas</w>\nash ton</w>\nwimble don</w>\nsci fi</w>\nattrac tive</w>\nmississi ppi</w>\nlogi sts</w>\nral ph</w>\nla bel\ngradu ates</w>\nma ha\nhome town</w>\nâľĮ ï¸ı</w>\nfoun ded</w>\non the\nli z</w>\ntrans l\nmini mum</w>\npre sti\nta m</w>\ngener ations</w>\nre bel</w>\njourn alists</w>\npar am\nmc m</w>\nacry lic</w>\ndeath s</w>\ntes la</w>\nw t</w>\nbry ant</w>\njer us\ni stanbul</w>\nmuham mad</w>\nri ley</w>\nk ris</w>\nwork shops</w>\nis o</w>\ncoun ts</w>\nstre t\nprote cted</w>\ntrin ity</w>\nman ual</w>\nr hin\nr il\npleas ant</w>\nle mon\nner d</w>\nhar der</w>\ndar ren</w>\nbur y\nra h\nbas is</w>\nmi gu\nocca sion</w>\nli sts</w>\nâĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ı</w>\ne b\nde cre\nhamp ton</w>\nìĿ ´\ntra vis</w>\ntrans form</w>\npuer to</w>\nnh l\nav oc\ntri ps</w>\nunexpe cted</w>\nve t\ndi dyou\nbar ber</w>\nst ages</w>\nm son</w>\nre presented</w>\nfor t\nl al\npp le</w>\nnic ely</w>\nignor e</w>\nqu il\nqu inn</w>\nh k</w>\ncarri er</w>\nremin ded</w>\nam ong\npass enger</w>\nel len</w>\ngue z</w>\nsc ape</w>\nmu ral</w>\nyoun gest</w>\nma sh\nd ill\nrout ine</w>\nstain less</w>\njack son\ngand hi</w>\nth al</w>\non ers</w>\nedit orial</w>\nconvers ations</w>\nsd ale</w>\nautom ation</w>\ni ke\nà¸² à¸\nðŁĩ ª</w>\nhau l</w>\nla ying</w>\nmen tions</w>\nam en</w>\nabor tion</w>\ni bi\ncoun ties</w>\nca therine</w>\nman ds</w>\njam e\nroll er</w>\nau t</w>\nn am</w>\no logical</w>\ncep tion</w>\nran king</w>\ntox ic</w>\nsn acks</w>\nvictor ian</w>\nbang kok</w>\npsycho logy</w>\nre g</w>\nang ela</w>\nrespon d</w>\nsty le\nsophi e</w>\ndak ota</w>\nachiev ed</w>\nmar ked</w>\nimper ial</w>\nin as</w>\nglo ves</w>\nsli m</w>\nconfi dent</w>\natt acked</w>\ngg er\nlon ely</w>\nvalentine sday</w>\nre b\ncraft beer</w>\norig in</w>\nzim bab\nce iling</w>\nte ens</w>\nother wise</w>\nw b</w>\nf ers</w>\nday sof\nadvis or</w>\ny ah</w>\nâĻ ª</w>\nen der</w>\nrepublic ans</w>\nav a</w>\nskir t</w>\npi pel\nchi e</w>\njan e\nja x</w>\nðŁĺ ĭ\nâľ Ĭ\nj ays</w>\nbre tt</w>\nbal o\ncru cial</w>\nd har\nas is</w>\nde au</w>\nlloy d</w>\nchat ting</w>\nâĿĦ ï¸ı</w>\nrel ay</w>\nremark able</w>\nn s\nwe t\nbris bane</w>\nðŁĶ ´\ntion ally</w>\nf k</w>\nla yer</w>\nhouse hold</w>\nconsecu tive</w>\nes is</w>\npend ant</w>\nst ir\ncrit ic\nsu gar\nphoto shop</w>\npa res</w>\narti stic</w>\ndo dgers</w>\nc un\ncra fted</w>\nam end\nbo at\nâŃĲ ï¸ı\negyp tian</w>\nsa w\ntra ge\nsmall er</w>\nox y\npa ired</w>\nnex t\ni res</w>\ntac o</w>\no y</w>\nu c</w>\nst i</w>\na erial</w>\n: //</w>\ndr o</w>\ndot com</w>\ngg ins</w>\nr pg</w>\nay e</w>\nle an\nstri ker</w>\nlo bby</w>\nprote sts</w>\npri ority</w>\ncongre ss\nam ate\ninv it\nr ington</w>\nmom my</w>\nth us</w>\nallow ing</w>\npione er</w>\nenfor cement</w>\ng ori\ntal k\ndra g</w>\ndu mb</w>\nbul let</w>\nsan ge\ner y\ntar gets</w>\nðŁĩ ¦\nhe ather</w>\nconsi der\nseaf ood</w>\nve st</w>\nris ks</w>\n% .</w>\np g\nsac red</w>\nhe ating</w>\nkick ed</w>\ntto t</w>\n. -</w>\nchan di\nco ven\npo ol\npul se</w>\ni a\nro ster</w>\nshakespe are</w>\nes a</w>\ncar go</w>\npean ut</w>\ntro op\nac tion\ntab let</w>\nhome work</w>\ncast le\nstru ction</w>\nmus icians</w>\nfree zing</w>\nbu tt\njustin bieber</w>\nj j\nbah rain</w>\nan them</w>\nau dit\ndidyou know</w>\nna vig\nguid ance</w>\nâĸ ¶\ntur f</w>\nn un\nfic ations</w>\nye men</w>\nchar ging</w>\nx c</w>\nbron cos</w>\nsu bur\np ale</w>\nbor ing</w>\namong st</w>\nfor the\nem per\nom fg</w>\np j\nexpe cting</w>\nðŁĴ «</w>\nst l</w>\nad min</w>\nexpect ations</w>\nsw an</w>\nshoo t\noooo o</w>\nmin ent</w>\nãĢ Ĳ</w>\nwall ace</w>\nstan g</w>\nsatur day\nadop ted</w>\ndou bles</w>\nhom ie</w>\nome z</w>\nd han\nvent ure</w>\nsurroun ding</w>\nfi le\nmob ility</w>\nde es</w>\nw ski</w>\nbroo ke</w>\nemb ro\nre members</w>\nkar a</w>\ntest im\nbo tan\nm tv</w>\nsacrif ice</w>\njerus alem</w>\nd l\nÂ ´</w>\nproper ly</w>\nili on</w>\nas i</w>\nleg it</w>\nco pe</w>\nm cla\nrecy cling</w>\nlar ger</w>\nðŁĴ ĵ</w>\npat ric\ngener ous</w>\nja red</w>\np f</w>\nmol ly</w>\nthom as\nju dges</w>\nh b</w>\nsor ts</w>\nbl vd</w>\no ven</w>\nenter ing</w>\nplan es</w>\nbe et\nintegr ation</w>\nboo ked</w>\nfre ed\nver n</w>\nash es</w>\nto pped</w>\nde pot</w>\nwelcom ed</w>\nren a</w>\nm ick</w>\nd and\nsee ks</w>\ngam er\nran kings</w>\nren e</w>\nmu t\nwhis ky</w>\nfire fighters</w>\ngu es</w>\nga ther</w>\ntour ney</w>\nde men\ny ang</w>\nnew ton</w>\nautom otive</w>\nback yard</w>\ndeta iled</w>\nmi st\nto bac\nfi ber</w>\nun usual</w>\ngrat itude</w>\nsp are</w>\nne ys</w>\n: *</w>\nper i\nflo ating</w>\nfin alist</w>\ndon ating</w>\ndre ss\nbro ad</w>\nbe the\neconom ics</w>\ntai wan</w>\ned wards</w>\nplu g</w>\npra iri\nval en\nbab a</w>\nf ad\nan as</w>\nhar per</w>\ndis order</w>\napp lied</w>\np att\nbi kin\nli ver</w>\ncu ri\ncarol ine</w>\nann er</w>\njuli an</w>\nwal king\nmal col\nscreen shot</w>\nco ding</w>\nskin care</w>\nactivi sts</w>\nmyster ious</w>\nex act</w>\nblo cking</w>\nmercur y</w>\nbat ter\ndu mp\nâľ Į</w>\nen se\nli sh\nridic ulous</w>\nprote sters</w>\nðŁĻ Ī\nlu st</w>\nswe at</w>\nas s\nali ke</w>\nco dy</w>\nre ments</w>\nwin ds\nas pir\nvi enna</w>\npra y\n.. .@</w>\nbo i</w>\ncand le</w>\nassi sts</w>\nte e\nder son</w>\np ony</w>\nf ence</w>\ncon spir\nâĺħ âĺħ\noo th</w>\ne pic\nba rely</w>\na unt</w>\nb am</w>\ndiamon ds</w>\nend less</w>\nscre ens</w>\ncan cer\ngr o</w>\np st</w>\npro spec\nmo sque</w>\nhelp ful</w>\nou ri\nbro ther\ngu jar\ncri sti\nine z</w>\nto wers</w>\nad dresses</w>\ngra y\nbur ton</w>\nre tweeted</w>\nðŁ¤ Ķ\nn ity</w>\ndu ck\nsuper vis\njo an</w>\nkin der\nsanc tu\npi ed</w>\nâı °</w>\nł ï¸ı</w>\nm ati\nreven ge</w>\nce ster</w>\neli fe</w>\ndesig ners</w>\nback ed</w>\nbo li\nwei ght\ncou ch</w>\nsu res</w>\ns its</w>\nshri mp</w>\nla gos</w>\nauth orities</w>\nos ity</w>\nhol ly\ncompu ting</w>\nfac tors</w>\nab e</w>\npan els</w>\nram ad\nsent ence</w>\nmissi on\nhol m</w>\nr b\nd ads</w>\nshang hai</w>\nmon ey\nshe ets</w>\nsk ate</w>\nthre w</w>\ncup cakes</w>\ninfin ite</w>\nl is</w>\npractic ing</w>\ness ay</w>\nka i\nas ci\nmo b</w>\nu gh</w>\nhol mes</w>\nre gg\nik h</w>\nmo ck</w>\ncollec tions</w>\npe p\no va</w>\nsal t\nnan dez</w>\nco y\nthre ats</w>\ntex ts</w>\ncin nam\npregn ancy</w>\npen ding</w>\nstam p</w>\nflow er\ng is</w>\nagre ed</w>\npay ne</w>\nro ver</w>\nph ra\nsof t\nf fin\nfa thers</w>\npass engers</w>\naw ays</w>\nal a\nh es</w>\nli van</w>\nin s\nsamu el</w>\ningu i\nh of</w>\nj j</w>\nchen nai</w>\ncat al\nom ic</w>\nhe ath\nni ece</w>\npump ed</w>\nintegr ated</w>\nare l</w>\nno m</w>\nproduc tivity</w>\nwan ting</w>\nvis a</w>\ndi ana</w>\ntw il\nit v</w>\ncam ps</w>\nro wing</w>\nd ley</w>\nblack and\ngu ards</w>\nb ells</w>\nre verse</w>\nvi be</w>\nric ky</w>\nmo ss</w>\nny t</w>\nâĺ Ģï¸ı\nel le\ntro y</w>\ncu dd\nev an\nwomen s\nfo to</w>\nmi stakes</w>\nwick ed</w>\nmi l</w>\nc led</w>\nme mes</w>\nco smo\nschol ar</w>\nren o</w>\nðŁĺ Ģ\nv ents</w>\n# âĢ¦</w>\nterrori sts</w>\nca sey</w>\ncardin als</w>\nðŁĺĬ ðŁĺĬ\nvenezu ela</w>\nbol a</w>\nliter acy</w>\nt w</w>\nen o</w>\ncon tains</w>\nau stin\nfin anci\nev an</w>\nhar vard</w>\norigin ally</w>\nchev ro\nher ald</w>\nnott ingham</w>\nmanag ers</w>\nâŀ ¡</w>\naccep ting</w>\nwal sh</w>\ntutor ial</w>\nentrepreneur ship</w>\nyach t</w>\nrequi rements</w>\nglen n</w>\npe de\nunfortun ately</w>\nach ing</w>\ndais y</w>\ngi an</w>\nnight mare</w>\nâĿ Ĺ\nr ina</w>\nb art</w>\nema ils</w>\noppo site</w>\nwho m</w>\nsa ke</w>\npu zzle</w>\nda shi\npar ty\nblan ket</w>\nbus es</w>\nlo re\nbeau ty\nreas on\npun jab</w>\nwinds or</w>\nfunc tional</w>\nexi sting</w>\nhel lo\ngli mp\ncon vin\nla k\nscre aming</w>\nrebec ca</w>\nbli ss</w>\nnorth west</w>\ninfin ity</w>\ncosme tics</w>\npul ling</w>\ncoffe e\npl ing</w>\nop ho\ncolom bia</w>\ninterior design</w>\n( +</w>\nemo tions</w>\nsa c</w>\nsun glasses</w>\nsav es</w>\nd f\nsix th</w>\nal y</w>\nðŁĺ »</w>\nde en</w>\ndev ast\npolit icians</w>\nlac rosse</w>\ng u</w>\npe i</w>\njav a</w>\ncomb ine</w>\ncoal ition</w>\ner ts</w>\nsurvi v\nch ad</w>\nstri an</w>\nn n</w>\nde vi\ncoun c\nconcer n</w>\ncontro ller</w>\nbre ast\nj ury</w>\ntu m\nintroduc es</w>\nla di\nmobi le\nal z\nste ady</w>\nnur ses</w>\nh acking</w>\non line\noce an\nðŁİ Ħ\na am\nju ven\nic c</w>\nlouisi ana</w>\nar te</w>\nstreet art</w>\nis on\nwn s</w>\nfr m</w>\np anda</w>\nno ir</w>\nmain tain</w>\ndel ay\nsymp toms</w>\nthor n\nge ome\nter n</w>\ncarri ed</w>\np ru\npan or\nas sy</w>\nper u</w>\nclou d\nsp ra\npe di\ne ste\ntag ged</w>\nðŁĺ Ŀ</w>\nshado ws</w>\nnaz i</w>\nØ§Ù Ħ\ncor ri\nâĻ¥ âĻ¥\nj ad\nðŁĩ «\nform al</w>\nspo ken</w>\nðŁĮ ŀ</w>\nenjo y\nlo pez</w>\nout look</w>\nin ho</w>\nw ander\nÙ ħ\nma ya</w>\npe e\nd ine</w>\nãĢ ĳ</w>\nbrief ing</w>\nsuppor ter</w>\nar ily</w>\nght ers</w>\nnatur ally</w>\ndoctor who</w>\nj en</w>\nv ar</w>\nnew year</w>\nre se\nsi mm\nre x\ncon sequ\ntomat oes</w>\nbur st</w>\nbra vo</w>\nbur gers</w>\ncr acking</w>\nnor theast</w>\nbi om\nmush room</w>\nmar que\ndou ble\nni er</w>\nv ag\ntw enty</w>\nkey board</w>\nwin ni\njama ica</w>\npar ish</w>\n: -\nmental health</w>\nali zing</w>\nren der</w>\nwa king</w>\nðŁİ Ĥ\ng ly\nna than\nwa shing</w>\nmel issa</w>\njun g</w>\nloy al</w>\nchil i</w>\nsong writer</w>\nguit arist</w>\nbo wie</w>\nneighb ors</w>\nonym ous</w>\nas set</w>\nta i</w>\nhead quarters</w>\nðŁĮ Ī</w>\ni hear\nci gare\nsur g\n) \"</w>\nre pl\ndar ling</w>\nðŁĻ Ħ</w>\nz ak\nsa re\nãħ ĭ\nmic key</w>\nware house</w>\nmass age</w>\nine es</w>\ndid nt</w>\ni w\nhur ts</w>\neng aging</w>\nmag ic\nwomen in\nk itten</w>\nmor s</w>\nc art</w>\ntit ans</w>\ncolle ague</w>\ncompe ting</w>\ner an</w>\nk hal\nmar ble</w>\ndem and\ndel ight</w>\net ary</w>\nbli zz\nlou ise</w>\nm ls</w>\nfini shes</w>\nexperim ent</w>\nconduc ted</w>\nelectr onics</w>\nitt ers</w>\ncar ing</w>\nwh ats</w>\nsym bol</w>\njun g\ne cu\npi x</w>\ncon text</w>\nchar ger</w>\nðŁĺ ĩ</w>\nre ig\nfra g\në ĭ\nch ad\ntru e\nker ry</w>\ndef ending</w>\na int</w>\nau ton\ncheck out</w>\nbar nes</w>\nless ly</w>\nd t\nm me</w>\nclou dy</w>\nsecond ary</w>\nare z</w>\n_ :</w>\napp a</w>\nconst ant</w>\n\" )</w>\nve ts</w>\njo b\ni ent</w>\nðŁĺŃðŁĺŃ ðŁĺŃ</w>\nm j\nfren ch\ndi ver\ndavi es</w>\nhh hh</w>\ne book</w>\nà¹ ī</w>\nmar iti\nbree ze</w>\nsusp ended</w>\nmat o\nvi et</w>\nra hu\nse i\nbol t</w>\nen ary</w>\nle is\nkar l</w>\nfr amed</w>\nexpla ining</w>\nab c\nde aling</w>\nnat o</w>\nja ke\nexp and</w>\nleon ard</w>\nestabli shed</w>\ndu b</w>\nar men\nel led</w>\nvoc al</w>\nnichol as</w>\nori ent\nk yo\nillustr ated</w>\nah h</w>\ndanc ers</w>\nmilli on\nge ta\npo pp\nas u\nmur dered</w>\ngi ble</w>\nsto ked</w>\ngri ffin</w>\nmaxi mum</w>\nadri an</w>\nen counter</w>\nther o\ndavid son</w>\nðŁį »</w>\nholi day\nev o</w>\nasse ts</w>\ncar son</w>\nmemor able</w>\nâļ ½</w>\nob am\nrepresent ative</w>\ncb d</w>\ntr icks</w>\nvo gue</w>\nvo ice\nmm mm</w>\nsebasti an</w>\ncli f\nath y</w>\npar alle\nðŁ¤ ·\npa k\nev acu\ne ats</w>\nØ§ Ø\ntou ched</w>\norgan ised</w>\nspir its</w>\ncan ad\ngui ded</w>\nframe work</w>\nðŁĮ Ł\npe d\nnatur al\nag ar\nreplac ed</w>\nanch or</w>\nti t</w>\nsha h\norgan is\nsuper ior</w>\nr n\nch ro\neric a</w>\nst ill\ncor on\nchu ck\nloc ks</w>\nor gan</w>\nro sen\nsc am</w>\nben ed\n/ #</w>\nke en</w>\ntre vor</w>\nvamp ire</w>\nsor ted</w>\n! '</w>\naf ford</w>\nin tro</w>\ngr ace\nðŁĺ ľ\nsau r</w>\nkick starter</w>\ninflu en\nv u</w>\ny up</w>\npo c\nðŁİ ¥</w>\na ar</w>\ns ang\ntre k\net sy\ntb h</w>\nscre am</w>\nchevro let</w>\npix el</w>\nshepher d</w>\nan or\ngabri el</w>\ntw ood</w>\nsd cc</w>\nme ters</w>\ndevelop ers</w>\nclo sure</w>\nv w</w>\ntwit ch\nì Ĺ\nse oul</w>\npr ice\nho g</w>\nn ish</w>\nhill ary\nscrat ch</w>\nin cen\nwag on</w>\ndis ability</w>\npan ther</w>\nch ats</w>\ng d\nwit z</w>\nsus sex</w>\nl ate\nden mark</w>\nger ald</w>\ncancel led</w>\nnet te</w>\ni x\nnav al</w>\nbap tist</w>\nte t</w>\ny ad\nma th\nho y</w>\nr andy</w>\npo int\nintel lec\nfru its</w>\nw ool</w>\ngu in\npr on\nthe ft</w>\ncon dem\nmar ry</w>\nn ola</w>\narchitec ts</w>\ncin cin\nroc kets</w>\ngentle man</w>\nex plan\nt ate</w>\ndo e</w>\nra ises</w>\nwild life\nw l\ninsi der</w>\nblan c</w>\nw p</w>\nfor sale</w>\nny c\npo well</w>\nunbeliev able</w>\npen s\ngoo dies</w>\nmu stang</w>\np ens</w>\nst ays</w>\nsqu ash</w>\nxox o</w>\nnear by</w>\never ton</w>\nco co</w>\nle agu\nk han\nstu d</w>\nsouth west</w>\ncon struc\ns worth</w>\ncro atia</w>\nle a</w>\nsu ms</w>\naim s</w>\ne an</w>\nvan ess\niti ous</w>\npa thy</w>\narc ade</w>\nb end</w>\nsugge sts</w>\nsac ram\nroy als</w>\nri er</w>\nem ir\nin cl</w>\nan k\nclar k\nri ght\nvac c\nà¤ ¾</w>\ntan e\nli b</w>\nu sc\nsal es\nhu h</w>\ns ally</w>\nver a</w>\np ga</w>\ngro ws</w>\ndru m\ntre e\neth ics</w>\nsug gest</w>\nis ab\nse aled</w>\npre viously</w>\nanim ated</w>\nab du\nri ses</w>\nglo b\npre dat\nscar f</w>\ndel ic\nom ar</w>\nll i</w>\nsx sw</w>\npy thon</w>\nne bra\nfun k</w>\nreflec t</w>\npav ilion</w>\ntic ally</w>\nch asing</w>\nbak ery</w>\ninva sion</w>\nko h\nbeliev ed</w>\nco hen</w>\ncon qu\ncra fts</w>\nnat i</w>\ncle ver</w>\ngovern ance</w>\nsam ples</w>\nfa ils</w>\nâ Ķ\nti mo\nr itu\nstri king</w>\ninclu sive</w>\nsho cking</w>\ncan t\nrequi res</w>\ndra wings</w>\nà¸ Ń\npurch ased</w>\ndu m\nz ach\nwar ner</w>\ncon sole</w>\nman sion</w>\nfoun tain</w>\ncircu m\ne sh</w>\nis land\nmil k\npro fits</w>\nhali fax</w>\nri val\nâľĪ ï¸ı</w>\njen ny</w>\nsand ra</w>\nny e</w>\nk elly\ny al</w>\nqu ad</w>\nno s</w>\ninste in</w>\nfin alists</w>\nmid fielder</w>\ncu e</w>\nexcep tional</w>\na an</w>\nsa pp\ngett in</w>\nsa a</w>\nf ati\nsl ice</w>\nvol k\ns wal\nla sting</w>\nsum mary</w>\nit as</w>\nsm o</w>\ns z\nâĺ Ĩ</w>\nip l</w>\nfl ames</w>\nene ws</w>\nha v\nhoo die</w>\npitch er</w>\nwin dy</w>\nre vol\ncentr al\nton ite</w>\nðŁİī ðŁİī</w>\nsol ved</w>\nmil wau\norganiz ations</w>\nwee ts</w>\nre fin\ns th\nãĥ ¼\nel in</w>\nton a</w>\ncinnam on</w>\nðŁİ ¨</w>\nðŁİ ģ</w>\nron aldo</w>\npen insu\nome ga</w>\nel ds</w>\ndesig ning</w>\ne igh\nblu et\nben z</w>\nnu g\nash a</w>\nrobo ts</w>\nsu dan</w>\nchoo sing</w>\nen do\nser ge\nclo sely</w>\nhand y</w>\nfing er\nbe ing\nar te\nsurvi ved</w>\nfl ame</w>\nmile stone</w>\ngu t</w>\nd war\nfu tures</w>\nÃ© e</w>\nel o</w>\nfri dge</w>\neli c</w>\nou ch</w>\nu b</w>\np v</w>\ntit an\ncol lar</w>\nst ation\nnev ada</w>\naur ora</w>\nr d\ndun can</w>\nâģ ł</w>\nbri en</w>\nmar sh</w>\nÐ ¾\nto tal\nch ry\ns ers</w>\nsu ffe\nra chel\ncolle ge\nto days</w>\ncour ts</w>\nch it\nre united</w>\ngym na\ngen esis</w>\nbe side</w>\nre presentation</w>\nch ant</w>\ncollec tor</w>\nra k\nath ens</w>\nni gh\nmun ich</w>\nlangu ages</w>\nfl u</w>\nparticip ation</w>\n__ _</w>\nc v\nspec trum</w>\nso da</w>\nco ver\nrefe ren\nab bo\nap a</w>\npublic ation</w>\ned m</w>\nmon ica</w>\nar my\nðŁļ Ģ</w>\ndiv or\ndr y\nstre ams</w>\nrobo tics</w>\nci der</w>\nbull ying</w>\nappro val</w>\nsto ke</w>\nplat forms</w>\nsier ra</w>\nex tin\ni b</w>\nha yes</w>\nsucce ed</w>\nsuff er</w>\nat ically</w>\nda i\nlyn ch</w>\nh ound</w>\ndel ines</w>\nack now\nd ated</w>\nexclu sively</w>\nhe res</w>\nfac ilit\ndam aged</w>\nchar ter</w>\nla kers</w>\nfal con</w>\nunve iled</w>\nwel ove\ne ase</w>\npati ence</w>\nl one</w>\ngent le</w>\ngene tic</w>\nproduc ing</w>\ng our\nshann on</w>\nbil ities</w>\nzimbab we</w>\np int</w>\ndau ghters</w>\nliter ary</w>\nbel le\ncl am\nsurroun ded</w>\nk any\nne il\npir ate</w>\nrang er</w>\nhb d</w>\nnat alie</w>\nbel ong</w>\nolym pi\nemb assy</w>\nsc ol\nen er</w>\nak in</w>\nlo ren\nb h</w>\n: /</w>\ndi va</w>\nden im</w>\nhi pp\nðŁĩµ ðŁĩ\narn old</w>\n? '</w>\nwe ren</w>\nem power\ndis abled</w>\nman or</w>\nrasp berry</w>\nb af\naw ful</w>\ndru mmer</w>\nkar dashi\nn ash</w>\nmachine learning</w>\nch u</w>\nrebel s</w>\ntim ing</w>\nmon roe</w>\nton gue</w>\nran ge\npup ils</w>\nre ss</w>\namaz on\nb z</w>\nhar ley</w>\npal mer</w>\nballo on</w>\ns ings</w>\nic ec\nj b</w>\nc ers</w>\ng ps</w>\nwhi st\nri se\nl t\noo oo</w>\nc attle</w>\nshoo ter</w>\nvod ka</w>\nuc l</w>\nmt g</w>\nle sli\njon as</w>\ndi spo\nat ric</w>\nste in\nvintag e\nfir ms</w>\nflo yd</w>\ncow boy</w>\nsoo oo</w>\nis aac</w>\nwar craft</w>\ndisney land</w>\nbeauti ful\nbe am</w>\nfranch ise</w>\nbu n</w>\nk ag\nan on</w>\ntur bo</w>\nswee p</w>\nmade in\nkar achi</w>\ndete ctive</w>\npenn sylvania</w>\ncontro versi\nvitam in</w>\na side</w>\nchron ic</w>\ndescri bes</w>\nremo val</w>\nha h</w>\nap er\nten ed</w>\nu to</w>\nbad ly</w>\nmir ac\nf ry</w>\nye a</w>\nin jec\nther mal</w>\ncomp act</w>\nth or</w>\nte ed</w>\nur gent</w>\nl ite</w>\ng illi\nsop hom\nic o\nche m</w>\np m\nfor k</w>\nfre ak</w>\nch ak\nrecipi ent</w>\ni y\nni k</w>\nmodel ing</w>\nc ans</w>\nðŁı Ģ\ndel ux\nse am\nsurviv ors</w>\nrad ical</w>\ninvestig ating</w>\nreli able</w>\nf m\ntur t\nligh thouse</w>\nto ol\ngo wn</w>\n) )\nbo ts</w>\nauto graph</w>\na id\nbu ffe\nh mm</w>\nhorri ble</w>\nssi onal</w>\nann i</w>\nà¹ Ģ\nk its</w>\nsch i\neter nal</w>\nhu ss\nsens itive</w>\nr u</w>\ntast es</w>\nchec ks</w>\nim o</w>\npor tion</w>\nsk ate\ne den</w>\nhalf time</w>\nfri ed\nri hanna</w>\nti se</w>\nfl ick\nca in</w>\ns gt</w>\nâľ Ķ</w>\nsh au\nsta ined</w>\nra ffle</w>\ndro ve</w>\nsal man\nprinci ples</w>\nsh o</w>\nar u\nje ss</w>\ngu ine\ngar bage</w>\nmy an\njel ly</w>\ndis ru\nz ia</w>\nq ld</w>\nent ries</w>\nla v\nfle w</w>\nad mit</w>\nobjec ts</w>\ncomp are</w>\nny times</w>\ncann es</w>\np n</w>\nsuff ol\nro c</w>\nd ana</w>\ne gg\nhi st</w>\ncoun sel\n' !</w>\nphy si\nimag ination</w>\nad just\nexplo sion</w>\nplym outh</w>\nhor ror\nelli ott</w>\nbour ne\nde x</w>\nbre ed</w>\nau dio\nlob ster</w>\ndisappo inted</w>\nnation wide</w>\n( (</w>\nincre ases</w>\naustr ali\nce dar</w>\nstar ing</w>\nrac ial</w>\ne is\ng mt</w>\nvisi ons</w>\nstay ed</w>\ndiscu ssions</w>\nde an\ncur tis</w>\nmai den</w>\nstel lar</w>\nhapp iest</w>\nh wy</w>\npre season</w>\ncar av\nmon days</w>\nhospit als</w>\nglimp se</w>\nschol ars</w>\nja i</w>\nter race</w>\nann a\ngoo se</w>\ngra ded</w>\nlot us</w>\nhun g</w>\ngrocer y</w>\nstam ps</w>\nemper or</w>\nsc oop</w>\nin ser\nc as</w>\nexist ence</w>\nhe al</w>\nfal cons</w>\nmar vel\nreduc ing</w>\nterri fic</w>\nmagne tic</w>\nperfor ms</w>\nbar re\np us</w>\ntre ating</w>\nic on\nw h</w>\ndecla red</w>\ntra uma</w>\ndo d\ncome dian</w>\nnik on</w>\nbu gs</w>\nas m</w>\nmont gom\nibi za</w>\ncomprehen sive</w>\nha s\nsan ti\nfellow ship</w>\nda sh\np sal\nlouis ville</w>\nsp y\nfau lt</w>\nd the\nfi led</w>\nvi sta</w>\nde sc\nfe ars</w>\nyou tu\nsp s</w>\nes p</w>\nri g</w>\ncri me\nber ger</w>\nwonder land</w>\nk ent\nin formed</w>\nstev ens</w>\nmy th</w>\nast on</w>\nir i</w>\nvisit or</w>\nat ri\nproduc ers</w>\nal la\nperson ally</w>\nsepar ate</w>\nagen cies</w>\naf ri\nil an\nspo ke\nn ina</w>\nsqu ad\ndi ves</w>\nde pend\nli v\nfier ce</w>\nenter taining</w>\ncha in\nsc at\nbor ders</w>\npal ette</w>\nsp ro\nos is</w>\nder by\ntobac co</w>\nzi o</w>\nwilli e</w>\nju vent\nzoo m</w>\nhol y\nenti rely</w>\naf e</w>\nmart inez</w>\nbe ds</w>\npe a</w>\nbull dogs</w>\nðŁĩª ðŁĩ\nib m</w>\nne on</w>\nethiop ia</w>\nteam mates</w>\nplan ting</w>\ntw er\nany time</w>\nfor bes</w>\nÃ³ n</w>\nrun way</w>\nner vous</w>\nro ger\np ile</w>\nch anc\napo caly\nu w\no i</w>\ndr ought</w>\nterrit ory</w>\nbr ick\ncre atures</w>\ngo in</w>\nw aff\ngre n\nsou theast</w>\nje an\nam bul\ned ited</w>\nstra p</w>\nc v</w>\naar on\nãĥ» ãĥ»\nt su\ndescri ption</w>\nkin dly</w>\nclu tch</w>\nim mer\nen or\nwomen sday</w>\nor ange\nra g\nob vious</w>\nhy der\nchann els</w>\nman go</w>\nme yer</w>\nra ining</w>\nge tty</w>\npil gri\ncoordin ator</w>\nup load</w>\nninten do\ndon uts</w>\nsan chez</w>\napp arel</w>\nj r\nzz i</w>\n, @</w>\njeff erson</w>\naccessi ble</w>\ngreat ly</w>\ne id</w>\niniti al</w>\nbudd ha</w>\npar is\nma scot</w>\nâ¬ĩ ï¸ı</w>\nsch war\nsi ri\nsp inning</w>\nmortg age</w>\ne cho</w>\nend ange\nge dly</w>\nchlo e</w>\nenh ance</w>\nkar nat\nk ry\nexplo res</w>\nðŁĴ ģ\naf fair</w>\nic als</w>\nall a</w>\ndar t\ndolph ins</w>\ndiffe rences</w>\nsquir rel</w>\nau gh</w>\ndr ones</w>\nell en\nre store</w>\npa w\nun for\npi ke</w>\nhil ton</w>\ncolla b</w>\nconsu mers</w>\nco inci\nout comes</w>\npp p</w>\na q\ncoup on</w>\nli est</w>\nsi ms</w>\nk ho\nav es</w>\nspo on</w>\npu dding</w>\ncor byn</w>\nhat ers</w>\nex ams</w>\nsla ve</w>\n. !</w>\np sa</w>\napp les</w>\ntam il</w>\nse d\nco ke</w>\nzz o</w>\nlo sange\ncar bon\ncla ir</w>\n... )</w>\nk hu\ncra ig\nexplor ation</w>\nsanctu ary</w>\nsu e\nal way\ndemen tia</w>\nwon ders</w>\nsuper hero</w>\npakistan i</w>\nbrown s</w>\nbluet ooth</w>\nlo cker</w>\nmar c\nev entu\ndelux e</w>\nrodri guez</w>\nâĿ¤ âĿ¤</w>\nro bb\nðŁĴ ¦</w>\nlin ux</w>\nten s</w>\nintellig ent</w>\nse ed\nvo ter</w>\ns ler</w>\npe aks</w>\ninter n</w>\nteen age</w>\npeninsu la</w>\nhand ling</w>\nti e\ncou sins</w>\nwen dy</w>\nme e</w>\nà¹Ģ à¸\ndin o</w>\nðŁĴ °</w>\nðŁĺ ĥ\nze e</w>\ns bury</w>\ntrage dy</w>\nb k</w>\nbo re\nz in\nwar ns</w>\nidi ot</w>\ntou ching</w>\ncontin ental</w>\ntac os</w>\nsaf ari</w>\nwa shed</w>\npo dium</w>\nmorri son</w>\nfore sts</w>\nc bc\nal on\npartic ular</w>\nbe ads</w>\ninv ented</w>\nlo ch</w>\nli ghter</w>\nwhere ver</w>\ni de</w>\ndocu ments</w>\na we</w>\nk r</w>\nno where</w>\nmin er\nst it\nro x\ncontribu te</w>\nhar dy</w>\ncl an</w>\nob ject</w>\nca it\nðŁĴķ ðŁĴķ</w>\nhapp ier</w>\nvege tables</w>\nt art</w>\ng ag\nnom inee</w>\nheav ily</w>\npan ic</w>\nj d</w>\nthere sa</w>\nat m</w>\nu ph\ns fc</w>\nsu ri\ndrin k\nn al\nre vel\nk l</w>\navoc ado</w>\nnom ination</w>\nma donna</w>\nshar on</w>\nmalcol m</w>\ncontrol led</w>\nsh ers</w>\nrevi val</w>\nlegis lation</w>\nshoo ts</w>\nn in</w>\ncomm entary</w>\npro s</w>\nhuman rights</w>\nstr anger</w>\nmit ch</w>\npipel ine</w>\nleg ally</w>\nth u</w>\ngil bert</w>\ntol l</w>\ngran ted</w>\ngh s</w>\nir anian</w>\nrefre shing</w>\ndu k</w>\nab i</w>\npri me\njose ph\nmo sa\nstati stics</w>\nproduc tions</w>\nmer ry\npat el</w>\nsa x\nhuman itarian</w>\nstruc tures</w>\ne missions</w>\ntown s</w>\nfre el\nster ing</w>\nrat ings</w>\nalle gedly</w>\ncab in</w>\nst l\nw ade</w>\nfl yers</w>\ntri m</w>\npromis ing</w>\nz u</w>\nbal lot</w>\ncompar ison</w>\nfree ze</w>\nou ter</w>\ngreat ness</w>\nas sign\nsnow y</w>\nr ale\ntor ies</w>\nmed iter\nkno ck\nconsult ant</w>\ncincin nati</w>\nanaly st</w>\nsc oo\nje ws</w>\nappro xim\npu re\nportra its</w>\ncy rus</w>\nation al\nlo ans</w>\nacqu is\nel u\naccep table</w>\nuni on\nwater color</w>\nru st</w>\nbatt les</w>\nper fu\nseas onal</w>\nser ial</w>\nmind set</w>\nri ot</w>\nfel d</w>\nenni al</w>\nclo set</w>\npri est</w>\ntan ks</w>\nint l</w>\nscre w</w>\nbu m</w>\nab dul\nou x</w>\nexpla ined</w>\nric a</w>\nimag ing</w>\nlaw yers</w>\nbu ried</w>\nãĥ»ãĥ» ãĥ»</w>\near l</w>\nâĢ ķ</w>\nl ton</w>\nresto red</w>\nstri pes</w>\nfo ss\nde mands</w>\nste aling</w>\nalex is</w>\nmun d</w>\nak er\nur us</w>\nwar dro\nhu gs</w>\ngen re</w>\ne go</w>\nÙ Ħ\nparticip ated</w>\nbab es</w>\nban quet</w>\nti ous</w>\nhe mi\nds b</w>\nlo st\nmilwau kee</w>\njen ner</w>\nge m\nou tra\nlo ses</w>\nid i</w>\nre ps</w>\nðŁİ §</w>\nregu lation</w>\nfla w\nf ang\nvibr ant</w>\nram p</w>\nra ins</w>\nwell being</w>\nso viet</w>\nvie wers</w>\nde po\nlibr aries</w>\nbi go\nser y</w>\ng ill\nde struction</w>\nco z</w>\nc x</w>\nbri dal</w>\nal ds</w>\nplan ted</w>\namate ur</w>\nlu d\nche ering</w>\nshow cas\npro file\ni u\nver tical</w>\npack ers</w>\nwiz ard</w>\nski p</w>\ns light</w>\nbe au</w>\nair ways</w>\nmu ch\nre ra</w>\nðŁĮ Ĭ</w>\nab sor\npati o</w>\npack ages</w>\ns ells</w>\nment ally</w>\nðŁĺ ¢\nreyn olds</w>\nk are\ntri bun\nwal t</w>\nkn it</w>\nta ste\nsur rey</w>\nboun ce</w>\ncre ature</w>\nb are</w>\nbet ting</w>\nsu re\nmi ley</w>\nlaugh s</w>\nal ore</w>\ncy n\nt l\narti st\nann ah</w>\nwar mer</w>\ndynam ics</w>\nlunch time</w>\nmariti me</w>\nvulner able</w>\nðŁĴ ĥ</w>\nwol ver\ndur ham</w>\nconst antly</w>\nam in\nsi bl\n: @</w>\nbul let\nk ach\nangel o</w>\nwil der\ndoo m</w>\ndesk top</w>\nlaw suit</w>\nk ca</w>\nhen derson</w>\ninv iting</w>\nbet ty</w>\nta wards</w>\nra fa\nle aked</w>\nand i</w>\nge ms</w>\naf l</w>\nvel o\nmediter ran\npro be</w>\nto tten\nsteph anie</w>\nsn ation</w>\ncom be</w>\nq s</w>\nover come</w>\nassas sin\nra v\nfil ip\nwinni peg</w>\nsh il\ndetermin ed</w>\nk as</w>\nou tre\nregre t</w>\ngui des</w>\naa a\nðŁĺ Ī\nwi ves</w>\nmani fe\ner ly</w>\nsm y\nsh ima</w>\nx ing</w>\npix el\njac ob\nac commod\nto y\non o</w>\npo o</w>\nti er\nan swe\nðŁĴ ģ</w>\nro sa</w>\nle ase</w>\nbel ongs</w>\nth ar\neventu ally</w>\nnei ther</w>\ngo a</w>\nski ing</w>\nat ra</w>\nag h</w>\nbroad casting</w>\nf ury</w>\npy ram\nd ice</w>\nvolk swag\nwom ens</w>\nprovi der</w>\nbom bs</w>\nmiss ile</w>\nwhi p</w>\nd ick\nnor we\nback up</w>\nel der</w>\nmat ure</w>\nconcer ts</w>\ngi ous</w>\nsque e\ngood morning</w>\nbra ves</w>\n^ _\nau ssie</w>\nlun a</w>\nmal es</w>\nhe ck</w>\nfor tn\nrome o</w>\nsteel ers</w>\np n\npe er</w>\nre presents</w>\nÂ «</w>\nkat y</w>\nmigu el</w>\nrequ ire</w>\ncha ins</w>\nl ur\nimmedi ate</w>\nti mber\nâĸ¶ ï¸ı</w>\nadvoc acy</w>\nex port</w>\nan z\ntiff any</w>\nauth or\nðŁİ Ī</w>\ndu des</w>\nchil ly</w>\nhi d</w>\nhar m</w>\nbu g\nmon ster\nterri er</w>\ntu c\nstory telling</w>\nta k</w>\nin ti\nimmigr ants</w>\nb is</w>\nreach es</w>\ncom passion</w>\njohn ny\ncontribu tions</w>\nðŁĲ ¶\nmechan ical</w>\nimpre ssion</w>\nran ks</w>\nko be</w>\nmen ting</w>\nbloss om</w>\npab lo</w>\nbuil der</w>\nbom bing</w>\ntw el\nsul livan</w>\nom o\npe te\nde mi</w>\nku dos</w>\nw bb</w>\nt gif</w>\nmass ach\nneighb or</w>\nche fs</w>\neng ines</w>\npun e</w>\nga ined</w>\nphan tom</w>\ns days</w>\next end</w>\ngr an</w>\ncent ers</w>\njac qu\ndat asci\nsleep y</w>\nel vis</w>\nanswe red</w>\ns lot</w>\ncon y</w>\nflexi ble</w>\nti ally</w>\nle tics</w>\n% ,</w>\nandre ws</w>\nsi ble</w>\nmom ma</w>\nvin o</w>\ndo x</w>\ninvit ational</w>\ntwil ight</w>\nj ade</w>\nill ery</w>\njoh ns</w>\nf ou\np v\n-- -></w>\nbreak down</w>\nbilli on\nprin ter</w>\nmon d\nc bc</w>\nmag gie</w>\nlegi on</w>\ndu b\nkur t</w>\npo or\nparen ting</w>\nregi ons</w>\nbikin i</w>\nbe ware</w>\nsi onal</w>\nau burn</w>\nkid ding</w>\namp les</w>\nsp an</w>\ncon tempor\nc ic\nha bits</w>\nak o</w>\npre fe\nbud dies</w>\nit z\nem ily\nperson nel</w>\nmoun tain\nver sus</w>\nðŁĺ ¬</w>\near ning</w>\ns ink</w>\ndar i</w>\nu u</w>\ns win\ni ster</w>\nbru tal</w>\nn ac\nkat a</w>\nclo th</w>\nam and\nðŁĶ Ĺ</w>\nne o\nalu min\nweek ends</w>\nnebra ska</w>\nco des</w>\ndelay ed</w>\nbrun o</w>\npro ven</w>\nin c\ni ght\nfl an\nor o</w>\nlam bert</w>\nregu lat\nw f\nmassach use\nkardashi an</w>\nbern ard</w>\nfi esta</w>\nvolcan o</w>\ngrand pa</w>\nanc a</w>\nd re</w>\nst itu\nmean ing\nfo am</w>\nau ck\nat ed\nr l</w>\nhot el\npers ons</w>\ndy nasty</w>\nell or</w>\nma i</w>\nam ne\nsty ling</w>\navi er</w>\ne g</w>\nvege tarian</w>\n, âĢ¦</w>\nfoun ders</w>\nsta in</w>\ng d</w>\ncy cles</w>\nsky line</w>\ntrac tor</w>\nexi sts</w>\ntra l</w>\nkid ney</w>\nmar il\ninst ag\nse tte</w>\naddic t</w>\ntri angle</w>\nflash back\ncontroversi al</w>\nz on</w>\np ins</w>\ni as</w>\ntr ay</w>\ntown ship</w>\ndeleg ates</w>\nsp am</w>\nh ms</w>\ncr ane</w>\npeop les</w>\no lo\nfac tion</w>\nbut es</w>\non ica</w>\ndeleg ation</w>\nnew profile\neli er</w>\nmc a</w>\nw and\ng ely</w>\nlosange les</w>\nber ke\nti ve\ndis rup\nzz a</w>\ncas a</w>\njor dan\nford shire</w>\nga thered</w>\nic hi</w>\natten dees</w>\nà¸Ń à¸\npe ppers</w>\nco in\nbour bon</w>\nern ity</w>\nro tary</w>\nbehavi our</w>\njere my\nteam work</w>\ncompli ance</w>\ntre mend\nðŁĩ §\nbu hari</w>\ncam bo\nbu yers</w>\nha gen</w>\nbu ds</w>\nbay ern</w>\nmon te</w>\nsm ells</w>\nan za</w>\nath lon</w>\ndescri bed</w>\nwork force</w>\ngi ving\nap i</w>\ninvest ments</w>\nda il\nsel ena</w>\ndatab ase</w>\nth um\nmor tal</w>\nstu dent\nbu yer</w>\ndo ver</w>\ngar ten</w>\natt le\nloy alty</w>\ngen oci\nholo cau\ntheat ers</w>\nru ling</w>\nven us</w>\npat ent</w>\nch un\nab by</w>\nawa ke</w>\nmass acre</w>\nbang alore</w>\nbreak ing\nsimm ons</w>\nju sti\nhal e</w>\ned chat</w>\ngg les</w>\nhaw k\nmar king</w>\nhead lines</w>\nstro m</w>\nco ve</w>\nbreath taking</w>\nmed als</w>\nhair cut</w>\nchrist ine</w>\ntele graph</w>\ngujar at</w>\nju ra\ncan e</w>\nsho re\npropag anda</w>\nmu eller</w>\n.... ....</w>\nsa vi\nstom ach</w>\nthro ws</w>\nta b</w>\nwar m\nj ong</w>\nreno wned</w>\nhi r</w>\nra is\nmush rooms</w>\nguaran teed</w>\nbo a</w>\nm j</w>\nrevolu tionary</w>\ncerti fication</w>\nbru ins</w>\njo in\nw es</w>\npas sport</w>\nc g</w>\nsex u\ncap able</w>\nw v</w>\nton es</w>\njac kets</w>\nac compan\nspin ach</w>\nfore ver\nbla ir</w>\nwat ts</w>\ng l</w>\ncou ples</w>\nprairi e</w>\nnewprofile pic</w>\nlogi stics</w>\nmassachuse tts</w>\njagu ar</w>\no id</w>\nwe al\nunder water</w>\nmo z\ny i</w>\nma ths</w>\nmyan mar</w>\npre ps</w>\nsuffe red</w>\ntr ace</w>\nwal i</w>\nah hh</w>\nbor g</w>\nst itch</w>\ncu lin\nreal ise</w>\ninfe ction</w>\ndiscrimin ation</w>\nsh ame\nan kle</w>\nhu mid\ny t</w>\nbrac ket</w>\ntru ck\ntri u\nea ster\ncommun ity\npost card</w>\ninvol ving</w>\nty ler\ncar amel</w>\nover view</w>\nex amples</w>\nintegr ity</w>\nbase ment</w>\ninstru ments</w>\nani um</w>\nat us</w>\ngh er</w>\nlaun dry</w>\nachi eve\ngen eva</w>\npr icing</w>\nhyder abad</w>\nbeli ef</w>\nme ta\nj aw\naccoun ting</w>\nlead er\ncristi ano</w>\ncou ture</w>\ncy p\nvis ed</w>\n, ,,</w>\nk nu\nh ick\nbreak er</w>\nbr am\nra b\nmo or\nham as</w>\ngradu ating</w>\npupp ies</w>\nak h\nta h\nach es</w>\nri e\nop ini\ng ta\nre ign</w>\ntra gic</w>\nre ver\np ill\npine apple</w>\ntou ches</w>\nda re\nle ys</w>\nil o</w>\ninter iors</w>\nsc outs</w>\nbar t\nen zie</w>\ndon o\nbro ck\nchristi ans</w>\nense mble</w>\nÂ ·</w>\ncine mas</w>\nnew port</w>\nair line</w>\nwin ston</w>\nle igh\ncont ents</w>\npre scri\nur ge</w>\ntr out</w>\nfic ally</w>\nil ia</w>\nsub si\nare r</w>\nâļ¾ ï¸ı</w>\nw ounded</w>\nðŁĻ Ĥ</w>\npe pper\nðŁĴ ŀ\nfit ted</w>\naf f</w>\nre sur\nthursday thoughts</w>\nz ero\narchae ology</w>\ndi v</w>\nje e</w>\ni on\nawa iting</w>\nco zy</w>\nbeauti es</w>\nbal d</w>\ndat a\ngri zz\nstal k</w>\nkin ds</w>\ncle ared</w>\njess ic\nregu lar\nali ens</w>\nplac e\nbo s\nbi zar\nthisi s\nðŁĴ Ģ\ntotten ham</w>\nma fia</w>\ns lam\nari ana</w>\ncar roll</w>\nback pack</w>\ncare y</w>\nuni v</w>\nr g</w>\npe p</w>\ndig it\ntatt oos</w>\nag on</w>\nvolunte ering</w>\ndiffe ren\nconsu mption</w>\nka thr\nhead phones</w>\nt shirt</w>\no b</w>\nele ment</w>\nre tail\nsh ru\nal gori\ncontain er</w>\nconsci ous</w>\nfi l</w>\ncom ing\nra sh\nu rope</w>\ndef ine</w>\ngi or\nfemini st</w>\nflow ing</w>\nrout es</w>\ngl aci\nfer t\nsomer set</w>\nant es</w>\ntwee ps</w>\n$ $</w>\nh our\nendange red</w>\nyear sof\nro h\npo pped</w>\nbac king</w>\nba sil</w>\nbra ke</w>\nmon aco</w>\nlgbt q</w>\npra gue</w>\nut ility</w>\ncas si\ngate way</w>\nhaun ted</w>\nsch ul\nðŁİ µ</w>\nshou ld\nwalking dead</w>\ncomple ting</w>\ndann y\nmontgom ery</w>\npengu in</w>\nss i</w>\nmer chandi\nðŁĳ ĳ\nchur ch\nh ates</w>\ncap tain\nbrea thing</w>\nce t</w>\nfair ly</w>\napproach es</w>\ncompan ion</w>\nsurpri sing</w>\nkany e</w>\npe y\nhin di</w>\ntarge ted</w>\nlor ds</w>\nde ut\ndi gging</w>\nger man\nru t\nener gy\nclose st</w>\ny un\napo logi\nà¸ ±</w>\ns ack</w>\nru p</w>\ndd y\nport al</w>\nd ough</w>\nb ats</w>\nðŁĵ °</w>\nat ur\ngraph er</w>\npi res</w>\nmo tors</w>\nðŁĮ ¹\nj c\ndan g</w>\ntu k</w>\nclu e</w>\nus c</w>\npag e\nd less</w>\nbro ws</w>\nju s</w>\nad ing</w>\nre marks</w>\noo m</w>\ncar dio\nste fan\narm strong</w>\nâĢ¢ âĢ¢\nni est</w>\nbelgi an</w>\nbi op\nso y</w>\nlo f\ní ĥ\nq t</w>\nflashback friday</w>\nce e</w>\nģ à¸\nwre ck</w>\nmar ines</w>\namend ment</w>\nwardro be</w>\nvo y</w>\nbur ned</w>\nguit ars</w>\nra inf\nli fel\nssi l</w>\noun ce</w>\nexter nal</w>\nc key\nme sh</w>\nshe ikh</w>\ninv itation</w>\nsugge sti\npop corn</w>\nphenomen al</w>\nan onymous</w>\ntun a</w>\nchic ago\no val</w>\ndel y</w>\nloc als</w>\n( &</w>\npro f\nno vel\nfin der</w>\nspar ks</w>\nla ven\nin fu\nnic ks</w>\nqu ant\nra e</w>\nexe c</w>\ndist ingui\nst ances</w>\nmu tual</w>\nsh al\nunve ils</w>\nedmon ton</w>\nzan ia</w>\na dio</w>\nvie wer</w>\nbrad ford</w>\naudit orium</w>\nqu is\nre act</w>\nhtt p</w>\nl ero\nchee ky</w>\nimpac ts</w>\nta k\ned t</w>\ndesper ate</w>\nt ay</w>\nì Ħ\nsett le</w>\nbar gain</w>\nresu me</w>\nun ite\nthro wn</w>\nke st</w>\nse ys</w>\nmar ching</w>\nam it\ndecl ine</w>\nsch ar\nme tr\nstan ford</w>\nlin ke\nber ra</w>\ndol ls</w>\nrug by\njam i\nb or</w>\nroad trip</w>\ndino saur</w>\nmi k\nsun der\nre m\nb k\nover seas</w>\nnau ghty</w>\nimple mentation</w>\niam srk</w>\nlun cheon</w>\nfir ing</w>\nmi ami\npere z</w>\nthe e</w>\nz on\ngi fted</w>\ncon version</w>\nceram ic</w>\n¡ ï¸ı\npe dro</w>\nì Ĩ\nv ick\n! @</w>\nhe ed</w>\nsi d</w>\nb w</w>\ndocu ment</w>\npl un\ngr ants</w>\nfant asy\npredic tions</w>\nvali d</w>\ncar ved</w>\ngradu ated</w>\nðŁĳį ðŁı»</w>\nnation ally</w>\nch y\naf l\nre sso</w>\nblan k</w>\nri vals</w>\nj ig\ne ties</w>\nom ics</w>\nune mp\nb ound\nsk o\ninspec tion</w>\npar al\nhigh s</w>\ncri sp</w>\nb ans</w>\nob a</w>\n[ @</w>\nco spla\ncostu mes</w>\nrec all</w>\nmou th\nni gel</w>\nb ts\nter a</w>\nko v</w>\ndo cs</w>\nwest minster</w>\ndic t</w>\ngra vity</w>\nkar i</w>\nro gue</w>\nt ted</w>\nwar k</w>\nida ho</w>\nw end\naw i</w>\nqueen sland</w>\nproce sses</w>\ncli ffe</w>\nm ick\ncom pens\nop ol\nthe y\ncl ari\nwiki pedia</w>\nsalman khan</w>\nhaz ard</w>\npre ston</w>\nswee test</w>\npd f</w>\nche es\ntr ilo\nsouth africa</w>\nbur nt</w>\n( $</w>\ncon tain</w>\nt p</w>\nsub mitted</w>\nsound cloud</w>\nat u\nre z</w>\nword press</w>\ncorru pt</w>\nn f\nma ker\ní ķ\npar as\nadv ent</w>\nri al</w>\nca fe\nfo ssil</w>\n!!!! !!!</w>\nco ws</w>\nc j</w>\nsp ur\ninstitu tions</w>\nland mark</w>\nent it\nre ut\nh is\nalz heim\nwe mb\nregg ae</w>\nmo squ\nst at</w>\nidenti fied</w>\ndeal er</w>\nre am</w>\nre land</w>\nten sion</w>\nðŁĩ ©\nwra pping</w>\ndeep er</w>\nfr at\nred dit</w>\nar is</w>\nmoroc co</w>\n.. \"</w>\nb low\nma pping</w>\npri orities</w>\ning a</w>\nswa p</w>\nre wards</w>\nconspir acy</w>\ncreati ve\nc j\ncongre ssional</w>\nvau lt</w>\nple x</w>\nsophom ore</w>\nshad ow\nele ss\nðŁĺ ħ\ndar ts</w>\naldu b</w>\nanno ying</w>\npro ps</w>\nn as</w>\nalumin um</w>\nh bo</w>\noffen se</w>\nj ill</w>\noni ons</w>\nla ur\nta e\nhar dest</w>\nsh ro\nga ining</w>\nmeas ure\ned tech</w>\ncyp rus</w>\ntar a</w>\nang eli\ncar lo</w>\ngo on</w>\nall i</w>\nim plic\nju pit\nresil ience</w>\nha il\nbal anced</w>\n) ...</w>\njoy ce</w>\ngr a</w>\nth eli\ndefin ed</w>\nshi pped</w>\nmain ly</w>\nmin a</w>\nl m</w>\nsac ri\no ber\np im\nclaim ing</w>\nent ers</w>\nco rey</w>\nbo k</w>\ncri ed</w>\ncool ing</w>\ndani elle</w>\npharmac y</w>\nthor ough\nca ke\nk lo\noutre ach</w>\nz ens</w>\ndigital marketing</w>\nval ent</w>\nsn p</w>\nher b</w>\nmr w</w>\ncaf Ã©</w>\ncap tures</w>\nno tre</w>\ntriu mph</w>\npan cakes</w>\ncu mber\nspi ke</w>\nd ation</w>\nbi gg\nsp er</w>\ncrit ical\nam al\ntoo th\nfoun ding</w>\na stro</w>\n' #</w>\nquan tum</w>\nth ames</w>\nun c</w>\npri de\nair bus</w>\nkno cked</w>\nun defeated</w>\nmediterran ean</w>\ncal cu\nclo wn</w>\nsens or</w>\nham mer\nfor give</w>\ncu shi\nber ry\nmaje stic</w>\nelec t</w>\npolit an</w>\ng ta</w>\nk ari\nbur ke</w>\nsea hawks</w>\nvolkswag en</w>\nre i\nlandsc apes</w>\ncas u\ngrand father</w>\nlist ened</w>\n/ /\nstar trek</w>\nrainf all</w>\nfur ry</w>\nvi er\nstar k</w>\nrif le</w>\nff a</w>\nleg es</w>\nhillary clinton</w>\nmin us</w>\ncorrec tly</w>\narchitec tural</w>\npre ce\nup side</w>\nbox er</w>\nðŁĻĮ ðŁı¼</w>\nis ai\nde t</w>\npro vo\ntis sue</w>\nspoo ky</w>\nve led</w>\nre con\nprospec ts</w>\nque bec</w>\nâļ «\nig no\nanat omy</w>\nshap es</w>\nw p\np interest</w>\nhor e</w>\nan es</w>\npick up</w>\nti p\npra desh</w>\nhu gh</w>\nco e</w>\npo k\ngram my</w>\nwell ington</w>\nsti gate</w>\nri gh\nlea p</w>\nking ston</w>\nscen ic</w>\ngo sh</w>\nv ani\nau g\ns ary</w>\nzi er</w>\nbure au</w>\nlin son</w>\ncon te\nfra gr\nall an</w>\ng aw\nlan a</w>\ncolli sion</w>\nsurve ill\nren ais\nar range\ns ali\ndo in</w>\nbr ance</w>\nbren dan</w>\nour se</w>\nin coming</w>\nsuspen sion</w>\nà ´\nl la</w>\neduc ators</w>\nin tri\nda e</w>\nbio graphy</w>\nbul gar\nvilla in</w>\ngo thic</w>\nrw anda</w>\ne w</w>\nmay or\nmeet up</w>\ndemocr at</w>\nmor gan\nsu dden</w>\nte sco</w>\ncar rot</w>\nbom ber</w>\nmck in\nre ne\nfun day</w>\nagricul tural</w>\nhaha h</w>\nshow time</w>\nform ing</w>\ncol a</w>\nscor pi\nquo te\npo ppy</w>\ns life</w>\nd az\ntu b</w>\nne n</w>\nmo t</w>\nðŁĺ »\ns ore</w>\nelder ly</w>\no ve</w>\nskin ny</w>\num i</w>\nanc o</w>\nman ship</w>\nwe re\ng v\nk ah</w>\nfol ding</w>\nne at</w>\nsamanth a</w>\ndan ish</w>\nuk rain\nhumid ity</w>\nnu tri\njak arta</w>\ncand les</w>\noooo oooo\nat ile</w>\nstreng th\ni bra\nbap ti\ncharle ston</w>\nfr ames</w>\ngirl s\nclear ing</w>\nglu ten\n# #</w>\nsuper natural</w>\nju bi\nph one\nhe in\ndr un\nle ak</w>\ninvest or</w>\ny er\ndom ain</w>\nball room</w>\nmi sh\napp li\noff shore</w>\nbla ze</w>\ndor o\nâĺķ ï¸ı</w>\nwin ery</w>\nshar if</w>\nad ore</w>\nn ir\nsaf er</w>\nsi gh</w>\nas cri\nstrong ly</w>\ntrac y</w>\nck er\nol l</w>\nfaith ful</w>\ney ed</w>\ndeli ghtful</w>\nvis m</w>\nkarnat aka</w>\ntit an</w>\nwh ar\njer seys</w>\nre fur\nheav en\ngri p</w>\npan ama</w>\npre li\nglu ten</w>\no dd\ncont ent\npon ti\ntion ing</w>\ne commerce</w>\nfeder ation</w>\nflaw less</w>\nge ar\nti res</w>\nby r\npol ice\ncu ban</w>\ntri butes</w>\ntic ul\nchur ches</w>\nnur sery</w>\ndi aries</w>\nmuse ums</w>\nsnapp ed</w>\ni van\nwi ght</w>\ntouri sts</w>\nramad an</w>\nt rent</w>\nprophe t</w>\nwon dered</w>\nfocu sing</w>\nhi d\nic ons</w>\ni q\nambul ance</w>\npi st\nfun niest</w>\ntime less</w>\nsr ilan\nbu ys</w>\nki ds\ncolour ful</w>\na shi\nch ir\nmu m\nðŁĵ ļ</w>\nlet ter\nx en\nreut ers</w>\npre serve</w>\nin ting</w>\nste p\nfu ji\nuni ver\ni u</w>\nshow down</w>\npo ems</w>\nsurveill ance</w>\nsuspec ted</w>\nta e</w>\nsol ving</w>\ntom b</w>\nmother sday</w>\ncar pen\nrecru it</w>\npil ots</w>\nbro c\nmix ing</w>\nfri days</w>\nty r\nrepresent atives</w>\ntra pped</w>\nabdu l</w>\nfree style</w>\nclu ster</w>\nâļ łï¸ı</w>\nk d</w>\nsk ill\npit t</w>\nex o\ncommer ci\nmuse um\nloc ally</w>\ng ina</w>\nno bel</w>\nimmun e</w>\nfr ac\ncap su\nmain ed\nattemp ts</w>\nbull dog</w>\nbe spoke</w>\nsing ers</w>\nsp elling</w>\nseg ment</w>\nnat ures</w>\ntic k</w>\nlip stick</w>\nclean er</w>\ngett able</w>\npreci sion</w>\nâĢ¼ ï¸ı\nth ood</w>\nre ef</w>\nno pe</w>\nbill y\ndi gi\nmu si\nri val</w>\nfigu red</w>\ntal ity</w>\nsun ny\nber k\naw ww</w>\nawa its</w>\nun real</w>\nco pen\nasy lum</w>\nex otic</w>\nbu en\nmo ck\nen able</w>\narch y</w>\nfr a</w>\npla stic\nal mond</w>\namp li\ndispla ys</w>\nabbo tt</w>\ns me</w>\nx p</w>\nðŁĻ ĥ</w>\ngraph ic\ni ved</w>\nmar a</w>\ncau tion</w>\nlea ks</w>\nen berg</w>\nul u</w>\nunic orn</w>\ncann on</w>\nappren tic\nðŁĺĺ ðŁĺĺ\nb ball</w>\nwil low</w>\nat ics</w>\nam as</w>\nmanufac turer</w>\ncampaig ns</w>\nport ers</w>\nflo ors</w>\nl su</w>\nty pe\nke j\nhonor ary</w>\nit im\nto le\nmin ecraft</w>\nd x</w>\nma sh</w>\nri o\nconsequ ences</w>\nron ald</w>\ngo ssi\nsuffol k</w>\nmu se</w>\nr bi</w>\nlive music</w>\ni van</w>\nðŁİ ¤</w>\nle u\npatri ot</w>\nman it\nlan ca\nhome decor</w>\nde ar\nsig ma</w>\nti de\nstr ings</w>\nv ita</w>\nsequ el</w>\ntry na</w>\ninve stigate</w>\nbor is</w>\nve gan\nbarri er</w>\nmind fulness</w>\nweb b</w>\nhu stle</w>\nin da</w>\ntan zania</w>\nstr ay</w>\ntex as\nc ag\ndiagno sis</w>\nwom an\ng w</w>\nob session</w>\nl ative</w>\nnu fc</w>\nfl ynn</w>\nmoment um</w>\nsof a</w>\nwal d</w>\nvege table</w>\ntu cker</w>\nsupp er</w>\nse ab\nar ro\nse ag\nven ting</w>\ncounc ill\nsp lat\ncal cul\n.. #</w>\ncom fy</w>\nodi sha</w>\nsto pp\nwar fare</w>\nca es\nà ¨\nco y</w>\nprice less</w>\nin sec\nðŁĺ Ľ</w>\ncontro ls</w>\nempower ment</w>\ndatasci ence</w>\nper pe\ngen ic</w>\ne res</w>\ntru deau</w>\nman o\nsla very</w>\nexpand ing</w>\nma he\nfa iling</w>\ns aga</w>\nphotograph s</w>\ncre st</w>\nre on</w>\nsurf ing</w>\nhi e</w>\nðŁį Ģ</w>\nja e</w>\nfel lows</w>\nsouth ampton</w>\nsol om\nce ster\ntab ility</w>\nhor n\nse ct</w>\nhe e</w>\ncole man</w>\nat las</w>\nexplo rer</w>\nconsul tation</w>\ncopy right</w>\norgani zing</w>\nden ied</w>\nmon keys</w>\nnoo dles</w>\nbr is</w>\nfl or\ndou gh\nbon ds</w>\nsho cked</w>\neco system</w>\ncare fully</w>\nw m</w>\napart ments</w>\ncur ve</w>\nsan diego</w>\nmust ard</w>\ncomm en\ncere mon\ne ch\nru th\nðŁĻĮ ðŁı»</w>\nhawa i\nfil med</w>\nte ar\nas ingly</w>\nca ir\nwat t</w>\ninstru ment</w>\nou tta</w>\nye ol</w>\nriver side</w>\në °\n. :</w>\nnor wich</w>\nalo g</w>\nmigr ants</w>\nnew man</w>\nri de\nspr ink\ntarge ting</w>\nbeli eve\ntor ch</w>\nreflec ts</w>\nper mission</w>\nff man</w>\nene mies</w>\nbas ics</w>\nse ized</w>\nsun days</w>\nle i\nhass an</w>\nen do</w>\nh c\nst ad\nle ments</w>\nkk kk\nnan o\nshar k\nman a</w>\non ic\ntreat ments</w>\near ly\ncollabor ative</w>\nshu ttle</w>\nbran ches</w>\nmis ses</w>\nmained cm</w>\nap ers</w>\nky le\ncarri e</w>\nleis ure</w>\nsh et\nbir ding</w>\nadv ances</w>\nðŁĵ Ŀ</w>\npopu lar\ndi ane</w>\na be\nre war\nneigh bour\nk pop</w>\nremem brance</w>\nplay ground</w>\nru b\nkrish na</w>\ne bola</w>\ninqu iry</w>\nep a</w>\nlu min\norgan isation</w>\nabra ham</w>\nnorm ally</w>\npre ten\njan et</w>\nw t\nðŁĴ İ</w>\nencoura ging</w>\na stic</w>\nbu mp</w>\nsyd ney\ns z</w>\nss ss</w>\ngar rett</w>\nðŁĵ »</w>\nconsul ting</w>\nroman ia</w>\nspo tting</w>\nchanc ellor</w>\nar ma\npresti gious</w>\nðĿ Ĳ\nt ad\ncry st\ncompe tit\nrati o</w>\ncat aly\nbro w</w>\nj ur\nvi king</w>\ncommu te</w>\ny day</w>\nla yers</w>\ndu mb\nesc al\ngenoci de</w>\nf ill\ngu pta</w>\nste pping</w>\nse i</w>\nfo to\nwild cats</w>\ncol i</w>\nprojec t\near nings</w>\nst r</w>\nge ons</w>\ncomple tion</w>\nb m</w>\ndecor ated</w>\ncraw ford</w>\naf ghan</w>\nsc are</w>\nvisi bility</w>\nhi b\ndirec tion\nstro ll</w>\nchrist ina</w>\nalter nate</w>\ncl are</w>\nsty list</w>\nbe hold</w>\ns ance</w>\nleop ard</w>\nacqui red</w>\nnarr ative</w>\nash i</w>\nthe a\n?? ??\npe as</w>\nat ch</w>\nsli des</w>\nle en</w>\nrenew able</w>\neng lish\nqu ir\nco aster</w>\nr x</w>\nfo ols</w>\nmatch day</w>\nmis m</w>\namaz ing\nz ig\nke ting</w>\nwon t</w>\nto wel</w>\ndi ab\nsta ke\nn m\nmel t</w>\ne than</w>\ngra pe</w>\npolit ician</w>\nsm en</w>\ní ĺ\nre o\nwedd ings</w>\ncat cher</w>\nor acle</w>\nme mo\nðŁĮ ´</w>\nec k</w>\nrob bie</w>\nnorwe gian</w>\noper ator</w>\nam or</w>\nse wing</w>\nju l</w>\nx ie</w>\nu v</w>\nfif ty</w>\nme ga\ntatt oo\nliber als</w>\nu pri\ntraffic king</w>\nrichard son</w>\nsu v</w>\nki p</w>\nmess y</w>\ntremend ous</w>\ngl ou\ncour tney</w>\nla d\nstere o\nmy ers</w>\ni dio\n^_ ^</w>\nman ning</w>\ndy e</w>\nw d\nthr one</w>\njun k</w>\nas u</w>\nprovin cial</w>\nk ook</w>\nwr c</w>\nfine art</w>\nhamp shire</w>\nrenais sance</w>\nb red</w>\nfall out</w>\ns j</w>\nsn l</w>\nal am</w>\ntor ture</w>\nfy i</w>\nsh ines</w>\npa w</w>\nch ar</w>\nhen ry\nc row</w>\naci ous</w>\ndi an\npa ige</w>\nba re\nstock holm</w>\nscen ery</w>\nðŁĩ ·\njef frey</w>\npu sh\ndecor ation</w>\nne d\ncu te\nbrig ade</w>\nlaven der</w>\ninv ites</w>\ne sports</w>\nvo ir</w>\ndri ed</w>\ntran spl\nsur geon</w>\nno vels</w>\npul ls</w>\nson y\nlun ar</w>\nman e</w>\ni vy</w>\nfru str\ndor set</w>\nsa i\ntor res</w>\nssi on\nshut down</w>\nsuggesti ons</w>\nwrit ing\ne o\nbattle field</w>\nu ga</w>\nðŁĲ ¾\nvac u\nspl ac\ng it\nu g</w>\nhigh land</w>\n% )</w>\nmer maid</w>\nsacram ento</w>\nta ils</w>\np w</w>\nka h\nt ell\nenh anced</w>\nì ķ\nauck land</w>\ncru el\nðŁ¤ ©</w>\nau dre\nsail or</w>\ngram mar</w>\ng love</w>\nde on</w>\ninfl am\nfresh ly</w>\nk ell\nzi p</w>\nchristi e</w>\nmil d</w>\ndi xon</w>\ninstru ctor</w>\ng ence</w>\nãħ ł\nsub jec\nconstitu tional</w>\ncrow ds</w>\nin visible</w>\nru ins</w>\nda k</w>\nsi p</w>\npla que</w>\np ouring</w>\ncomple x\nz ine</w>\nste ad\nf let\ntrans mission</w>\nlo way</w>\nar un\nincre asingly</w>\nau d\ntransp aren\ncro wned</w>\nsc oun\nblizz ard</w>\nlux u\nfi ers</w>\nachieve ments</w>\nhun ters</w>\nrock ed</w>\nbas in</w>\nvio let</w>\npro ves</w>\nachiev ing</w>\npro sper\nse ga</w>\nflo at</w>\nvi an</w>\nxi v</w>\npol ic\ntur a</w>\napproxim ately</w>\nwander lust</w>\nkeep ers</w>\ngeta way</w>\nco d\npol is</w>\nbr yan\ncol ts</w>\ntal ents</w>\nyo gur\ngluten free</w>\nwri st</w>\ngr y\ncze ch</w>\nðŁİ Ī\nev ille</w>\nðŁı Ī\nto x</w>\ndani els</w>\nam er</w>\nbi ds</w>\nweare one\nme tab\ng t\nboy z</w>\npd x</w>\npos session</w>\npu shed</w>\nshr ine</w>\nreali stic</w>\ntri gger</w>\nna vi\nru mors</w>\nn af\njen kins</w>\ntr un\ncomm uni\nÃ Ĺ</w>\ngam ers</w>\narm or</w>\nmoham med</w>\nbal cony</w>\ny ah\nstron gest</w>\nrhy thm</w>\nunfor gettable</w>\nk p\nho bb\ncusto dy</w>\ngreg or</w>\nr ita</w>\naes thetic</w>\nil ation</w>\nsponsor ing</w>\nn ay</w>\nkid napp\nsh s</w>\nra jas\nme g</w>\nsignific antly</w>\nbutt ons</w>\nla c</w>\nver sions</w>\nessenti als</w>\nopini ons</w>\nk ro\nd printing</w>\nwi dely</w>\nd k</w>\nur an</w>\ny al\nreque sted</w>\nc n</w>\ncur ric\nplu m</w>\ngr un\nv m\ndev on\nm yo\nrel ation</w>\njuvent us</w>\nrou ge</w>\nmin ority</w>\nmin es</w>\njupit er</w>\nn ine\noxy gen</w>\nfran kie</w>\nune sco</w>\nfab ric\ndisgu sting</w>\nsal man</w>\ndete ction</w>\nlan ka</w>\nd ac\nðŁĩ« ðŁĩ·</w>\nargu ment</w>\nshel ves</w>\ncel tics</w>\nrober to</w>\npi gs</w>\nhe dge\nfau l\npow ering</w>\nbutter flies</w>\nfi r</w>\nre make</w>\natt i</w>\ncom o</w>\nemp ha\nkend all</w>\npoke mon\nse ating</w>\nd ans</w>\nbald win</w>\nðŁĳ »</w>\nlesli e</w>\none direction</w>\nti mber</w>\nim an</w>\nfon t</w>\ne der</w>\ndi on</w>\nste ph</w>\nfor mat\ngre gory</w>\npro p</w>\nhe x\nru in</w>\nsor y</w>\ninf er\nn aw\nbar ak</w>\nsd gs</w>\nkar ao\nlu sh</w>\nv ander\nend ent</w>\ng is\na fro\nsoc cer\nay an</w>\nt uni\nlun g</w>\nda yof\nalex a</w>\nmar ath\naddic ted</w>\nag ile</w>\nhy gi\nlight weight</w>\nì §\nmand ela</w>\njo ey\nanc y\nhu m</w>\nbi r</w>\nmemor ial\njim in</w>\nging er\nv ak\njav ascri\ncro ps</w>\norig ins</w>\nd ari\npi per</w>\nim port</w>\naggre ssive</w>\npredic tion</w>\nre pairs</w>\ncr acker</w>\nvoy age</w>\nni ke\nmu mmy</w>\nlinke din</w>\ncountry side</w>\nbor der\ngla ss\nper t</w>\ns als</w>\nsho e\nautograph ed</w>\nwal nut</w>\ncolle gi\nsal ary</w>\npa iring</w>\nðŁĮ ¸\ncath ol\nswee the\ndefe ats</w>\nstreng then</w>\nroof top</w>\nimpro vements</w>\nbarri ers</w>\nur u\nt ally</w>\nru led</w>\nðŁĨ ļ</w>\nnai ja</w>\nemo ji</w>\nper cent\ngi o\npro bs</w>\non ce\nadm its</w>\npa ths</w>\nli ar</w>\nday tona</w>\npe ters</w>\ncal i</w>\ncal li\nmu g\no sa\nap h\nab y\nhy de</w>\neth nic</w>\npla ins</w>\nol f</w>\nhaha hahaha</w>\nholi c</w>\n?! ?!</w>\nsu bli\nbl acks</w>\nmo t\ngh ton</w>\nlo vin</w>\nb rent</w>\nbar u</w>\nl ati\nde w</w>\nate au</w>\nq a</w>\npain ful</w>\nbu sters</w>\nst atic</w>\nðŁĩ¨ðŁĩ ¦</w>\nnote book</w>\nout fits</w>\nsi es</w>\nr f</w>\nfloo ds</w>\nÑ Ģ\nthro at</w>\nsu ici\nro vers</w>\nbeng al</w>\npre pares</w>\nblo g\nmini ature</w>\nØ ¨\nam phi\ncom b</w>\nr sp\nin timate</w>\ngreen e</w>\nÌ ĩ</w>\nal tar</w>\nsurg ical</w>\nves sel</w>\n... ?</w>\ngav in</w>\ng ator</w>\nthreat ened</w>\nz ar</w>\nrob bery</w>\ndi er</w>\npromo ted</w>\ny g</w>\nx s</w>\nsu bs</w>\ninter viewing</w>\nthreat ening</w>\ndo zen</w>\nme ado\nwater fall</w>\nnintendo switch</w>\ncal um</w>\nmini sters</w>\ndro p\nunivers ities</w>\nwar ned</w>\ntac tics</w>\nðŁĩ ²\nrefu se</w>\nad ju\nv ast</w>\nðŁĺ ´</w>\nmc fc</w>\nlib ya</w>\nno filter</w>\ndistribu ted</w>\nre ser\nron nie</w>\nde co</w>\njavascri pt</w>\nmon k</w>\nintere sts</w>\nfle x\nmar tha</w>\nsti es</w>\noo d\nðŁ¤£ ðŁ¤£\ne un\nb ali\ng omez</w>\nsti mul\nmoder ate</w>\nd ity</w>\nir is</w>\nstra w</w>\nconsist ent</w>\ndirec tions</w>\nadop t\nsal sa</w>\ncro o\nreco vered</w>\nblack friday</w>\nlan caster</w>\naccep t\nweareone exo</w>\nbuil ds</w>\nfree man</w>\nair plane</w>\nditi on\nbel ong\njam ie\npit ching</w>\nli f\nom in\ncri spy</w>\npre pping</w>\nve g</w>\nchan g</w>\naccompli shed</w>\ngraci as</w>\ndolph in</w>\nelec tor\nculin ary</w>\nsuper bowl</w>\nwal a</w>\npur suit</w>\nblack berry</w>\nbe an\ncardin al</w>\npro ved</w>\nimmigr ant</w>\nstric tly</w>\nholocau st</w>\npass age</w>\nha us</w>\ncou p</w>\npur se</w>\nhar ass\n< <</w>\nle ed\nado be</w>\nst ad</w>\nlegis lat\npar ked</w>\npri yan\nsil va</w>\nkri st\ns the\nfun ky</w>\nig a</w>\nsett lement</w>\nph s</w>\nt mrw</w>\nstre ssed</w>\nhun t\nho ckey\ntreas ures</w>\ncham bers</w>\nol u\nhu t</w>\nmar ley</w>\ntex ture</w>\nwilder ness</w>\nmm ing</w>\npoten tially</w>\nom aha</w>\nju dy</w>\nto es</w>\nspo iler</w>\ndistingui shed</w>\nfeli x</w>\nah u</w>\nrecommend ations</w>\nzom bies</w>\nhit ler</w>\ntri ple\ncolla pse</w>\nmotiv ated</w>\nulti mat\ngg ling</w>\nso y\nci gar</w>\nfo ren\nvine yard</w>\ngl itter</w>\nfin dings</w>\ncolon ial</w>\nhun ter\neri k</w>\nden s</w>\nbeet le</w>\nlot te\nsub tle</w>\ns matter</w>\ntru sted</w>\nexperim ental</w>\nnam ents</w>\nðŁĺ Ĩ\nregi on\nacquis ition</w>\nbre eding</w>\nquarter back</w>\nam reading</w>\noo td</w>\nru de</w>\niniti atives</w>\nst out</w>\nhy ung</w>\nout come</w>\nal fred</w>\nmic s</w>\nexper tise</w>\nbacter ia</w>\npengu ins</w>\njump er</w>\nvalen cia</w>\nbar k</w>\ning day</w>\nsell ers</w>\ncontrac ts</w>\nhou ston\ncommissi oned</w>\nadap tation</w>\nswan sea</w>\nsanti ago</w>\ncommon wealth</w>\nju dging</w>\nsub mission</w>\nsco rer</w>\ntom my\nÃ± o</w>\nex quis\nfil ing</w>\nexplan ation</w>\nalli son</w>\nwemb ley</w>\nri dge\nchev y</w>\nsan tos</w>\nown ership</w>\ncogn itive</w>\nfavour ites</w>\nsh ed\nphil anthro\ndele ted</w>\ngo dd\ns nor\ngui delines</w>\nff ing</w>\nje ep\ncli ps</w>\nsw amp</w>\nan or</w>\nguil d</w>\nbol ton</w>\nspring field</w>\nmunici pal</w>\ngoal keeper</w>\nye on</w>\nðŁĺįðŁĺį ðŁĺįðŁĺį\nãħĭ ãħĭ\nwater front</w>\ngra ve\ncontempor ary\nar ity</w>\nÃŃ a</w>\nsle eps</w>\nsy rup</w>\nal am\npi re\nco yo\nmoto gp</w>\nty son</w>\nkej ri\ncir cul\nsing ly</w>\ncr unch</w>\ncomplic ated</w>\nnostal gia</w>\nk op\nmo ve\nk ale</w>\nmac ro</w>\nmid west</w>\nh ans</w>\ntri bal</w>\nnu de</w>\nà¯ į</w>\nbey once</w>\ncongratul ate</w>\ncat er\nleagu e\nðŁĻ Ĭ</w>\nla dder</w>\ncra shed</w>\ntech nic\nkarao ke</w>\nharass ment</w>\nro ts</w>\nexperi encing</w>\nkri sten</w>\nðŁĩ ³\nðŁ¤ Ĺ\nreflec tions</w>\nguin ness</w>\nillustr ator</w>\nðŁĻı ðŁı»</w>\ncen ter\nnar row</w>\ncomm ons</w>\nregul ations</w>\nÙ Ĩ\nhar m\ncro ft</w>\ncu ssion</w>\nhong kong</w>\nst ical</w>\nintern ship</w>\nzo e</w>\ncho p</w>\nhoo ds</w>\nestim ated</w>\nbatter ies</w>\nberke ley</w>\nsmooth ie</w>\nshau n</w>\ncro s\n~ ~</w>\ncam pe\nhu mp\nb g\nproto type</w>\ncl ick\nshaw n\nre viewed</w>\ntem pl\np f\njed i</w>\nblo gs</w>\nray mond</w>\nas th\nba h</w>\nav ail</w>\nscot ch</w>\nleaf s</w>\nnik ki</w>\nto k\nhol low</w>\nur ges</w>\nof t</w>\nun like</w>\nlat in\nu e\ncat ering</w>\nmil i\nalter nati\nma ver\nÐ ¸\nag le</w>\npre order</w>\nlu x</w>\ncu cu\nðŁĳı ðŁĳı</w>\nt art\nâĿ¤âĿ¤ âĿ¤</w>\narab ic</w>\nrapi dly</w>\nar rang\nall en\ntravel tuesday</w>\npa ws</w>\nflo ws</w>\nst ability</w>\nflu id</w>\nca pp\ncan berra</w>\nuu uu\nsp ani\ndemon stration</w>\nm la</w>\nplac ement</w>\nm w\npresi dents</w>\nawe som\nbever ly</w>\nani st</w>\nne al</w>\nfather sday</w>\nreferen dum</w>\nla hore</w>\no aks</w>\ndeb bie</w>\nhalf way</w>\ngho sts</w>\nde bor\nmatthe ws</w>\nfi at</w>\nt fw</w>\npre sen\nrob i</w>\nde d\nbro ck</w>\nlaugh ed</w>\nam ounts</w>\nbam boo</w>\nkinder garten</w>\neat en</w>\nmtv hottest</w>\nbreak out</w>\nu sic</w>\nfra ser</w>\nlegis lative</w>\np ang\nmodu le</w>\nsam my</w>\ngo ver</w>\near ns</w>\nexpe dition</w>\ngar h</w>\nconcep ts</w>\nchar lie\nla va</w>\nbachel or</w>\nveg gies</w>\ndeter mine</w>\nel lie</w>\nun locked</w>\nfru it\ndal la\ncou pe</w>\nwash ington\ndepo sit</w>\niv ory</w>\npau la</w>\nchic ag\ngu cci</w>\nðŁİ ĥ</w>\ncul tiv\npier ce</w>\nli fted</w>\nstu mb\nre cover</w>\nmusc les</w>\nconduc ting</w>\ncb s\nmcla ren</w>\nsophi a</w>\ncel lu\noce ans</w>\nup loaded</w>\ngame play</w>\nmal dives</w>\nkim ber\navo i\nrac er</w>\nca ine</w>\ncav s</w>\nh ana</w>\nli ga</w>\nra ven</w>\ninter vention</w>\ninaugur ation</w>\noo h</w>\nat traction</w>\nmerchandi se</w>\ntune in</w>\nli king</w>\njuni ors</w>\nint ended</w>\natt acking</w>\naqu arium</w>\ni wd</w>\ncomp onents</w>\nsur ing</w>\ncent u\nyogur t</w>\nðŁı ĥ\nshow room</w>\nop tical</w>\nty our\nju dge\nyi eld</w>\nan to\npl c</w>\ntransparen cy</w>\nrecy cled</w>\nchi ef\nar om\nambassad ors</w>\nplan et\nâĿĦ ï¸ı\nom ed</w>\nvaness a</w>\ncour t\nmar gar\nhal ey</w>\nv r\nreg ina</w>\npd ates</w>\nhi span\nlive stream</w>\nâģ £</w>\nya hoo</w>\ngal la\nsecu red</w>\nw ir\nbene ath</w>\noff l</w>\nn il\nam b</w>\nye g\nout let</w>\nu te\npe ep</w>\nlind say</w>\nbent ley</w>\n... !</w>\nhe el</w>\ntrilo gy</w>\nvo s</w>\nty re</w>\nthere fore</w>\ntor onto\nab i\nsimp li\nja e\nexten sive</w>\neleph ants</w>\ns or</w>\norient ation</w>\nim peach\nre play</w>\nconstru cted</w>\npeter son</w>\npa is\npor ted</w>\ncustom s</w>\ncolla p\nad u\nhigh lands</w>\nsal em</w>\nshel by</w>\nko vic</w>\nstra in</w>\nro sie</w>\nsen ators</w>\nsnap s</w>\nbo bb\nsuz uki</w>\nbla des</w>\nk p</w>\nlo lo\ngener ate</w>\nsi ght\nma e\nstruc tural</w>\npredic t</w>\njump ed</w>\nah mad</w>\nsun g\njust ice\ngla m</w>\nvol vo</w>\njubi lee</w>\nde tention</w>\nlo sses</w>\npu ri\nevery time</w>\nÐ °\nra o</w>\ned ge\nli mer\nrese mb\nhar old</w>\nre tri\nsacri fic\nsurpri ses</w>\nam c</w>\nsrilan ka</w>\nbar bie</w>\nmen s\nfin n</w>\nag s</w>\nukrain ian</w>\nem brac\nî Ĳ\nflav ors</w>\nhom er</w>\nlau re\nou th\npr iced</w>\nver de</w>\nfir m\nah s</w>\ncu b\ntre y</w>\npar anor\npro fit\nin dv\nwho a</w>\nhar sh</w>\nal ot</w>\ncrit ics</w>\nhu bby</w>\nfi gur\ngi ra\nca stro</w>\nchan el</w>\nin put</w>\norigin als</w>\nten ant</w>\nyy yy</w>\nture rs</w>\nlincol n\nco on</w>\nlear n\nch ou\nac are</w>\no les</w>\ndin er</w>\nhy p\nbizar re</w>\nmc r</w>\nlet sgo\ndecor ating</w>\nðŁĮ İ</w>\nal ison</w>\nar vin\nf d\nreha b</w>\nmccar thy</w>\nlot tery</w>\nda h\nminne apolis</w>\neli gible</w>\ndiagno sed</w>\nemer ald</w>\ndestin ations</w>\ns ans</w>\nor y\nbla zers</w>\nn v</w>\nba il</w>\ndigital art</w>\nno c\nmal ta</w>\nsol ar\npi pes</w>\nalleg ations</w>\nno ck</w>\npo pe\nbri d\npremi er\nn x</w>\npresent ations</w>\nef a</w>\nbo ws</w>\nval ve</w>\nopp onent</w>\nĮ ë\nvisu al\ning le</w>\ncate gor\ne ter</w>\npo is\ndan i</w>\nat tract</w>\nneu tral</w>\nth ene\ncra shes</w>\nfred die</w>\nut ili\nc st</w>\nawak ening</w>\nslo ven\nquali fy</w>\npro of\nfair y\nle v\nfre ight</w>\nenjo ys</w>\ncup cake</w>\nflav our</w>\nâ ķ\nprotec tive</w>\nðŁĳı ðŁı»</w>\nis u\nad mir\nh mmm</w>\ncontinu ous</w>\nai res</w>\nrap tors</w>\nshowcas ing</w>\ny uk\npa ste</w>\nfollow er</w>\ninstru ctions</w>\nsp ru\n@ __</w>\nthe o\ndebu ts</w>\nve tte</w>\nsto w</w>\nes of\nach ed</w>\nsul tan</w>\nsand wich\nsom alia</w>\nfranc o</w>\ncar ne\nflu ffy</w>\nal pine</w>\njas mine</w>\nhe ated</w>\nviol in</w>\nple ss</w>\ndivor ce</w>\nper former</w>\nphi es</w>\nport sm\ndar a</w>\nkir by</w>\nlo p</w>\nchill i</w>\nfor th\nsky pe</w>\nðŁĩ®ðŁĩ ¹</w>\ncelebr ities</w>\ned y\nve e</w>\npo ison</w>\ney el\ngra bs</w>\nssi c</w>\nun o</w>\nwester n\nrail road</w>\nam er\nnumer ous</w>\ns v</w>\nfo w\nfi st</w>\nâĢ ĭ\nreque sts</w>\nmar tial</w>\nem my</w>\naccept ance</w>\nlau ra\nà¸ ´</w>\ner up\nhyun dai</w>\nout lander</w>\nu tt\nwrest le\nesp resso</w>\ndemand ing</w>\ng dp</w>\ngeo graphy</w>\nsas kat\ntro ll</w>\nconfe der\nsu es</w>\nse m</w>\nbe ts</w>\nt ful</w>\nto sh</w>\nteach es</w>\ncol oured</w>\ngal way</w>\nmac y</w>\ndis orders</w>\nbb cra\nat em\nfen der</w>\nlit ter</w>\ne sh\nprovi ders</w>\nrenov ation</w>\nnomin ate</w>\nps g</w>\nnomin ations</w>\njen na</w>\nshar p\nsome day</w>\nz ur\nbra ins</w>\nche shire</w>\npre y</w>\nhu go</w>\nÂ ¿</w>\nto ken</w>\nr v\ncar r</w>\ntac tical</w>\nzel da</w>\nkay la</w>\nfern ando</w>\nphotograph ers</w>\nj our</w>\numb rella</w>\nwoo dy</w>\ncongress man</w>\ndu mp</w>\nle vy</w>\nju an\nd azz\nsign als</w>\nla in</w>\nan u</w>\nmic hel</w>\npor ch</w>\nal den\nsibl ings</w>\ny ale</w>\npe el</w>\nsw ick</w>\ngg in</w>\nll c</w>\nk ale\ns con\nil d</w>\npat reon</w>\nre el</w>\nqu in</w>\nwit t</w>\nmar ty</w>\nmoo dy</w>\nton i</w>\nder y</w>\ng ators</w>\nspeci fically</w>\ndd in</w>\nly on</w>\ntr ick\nmeado ws</w>\np j</w>\nbor gh\nvi k</w>\ntu r</w>\nbron x</w>\npu ff</w>\nlan tern</w>\nðŁ¤ ¦\ng ently</w>\nbe stie</w>\nfac t\nrefu sed</w>\nfas ci\nmp y</w>\nðŁĶ µ</w>\ncross over</w>\nmead ow</w>\nindian apolis</w>\nduc ation</w>\nsle y\nloo m</w>\nmix er</w>\nnew music</w>\nfilm maker</w>\nprosper ity</w>\nli m</w>\nweek end\ncre amy</w>\nneu tr\nlu ther</w>\nh v\nnor thern\ntw o\nh ra</w>\ncat ches</w>\nappear ances</w>\nha bit</w>\nkitt ens</w>\nn v\nilla c</w>\ninf an\nregar dless</w>\nliz ard</w>\ndun k</w>\ncur tain</w>\nac om\nin tu\nve z</w>\ne min\nfl ats</w>\ncalend ars</w>\nem power</w>\nru ined</w>\nhun gary</w>\nvi d\nwe x\nu lum</w>\naber deen</w>\no sa</w>\nk t\nma ssi\nse emed</w>\ns den</w>\n' ?</w>\ntele phone</w>\nde fi\ninsp ires</w>\nme ow</w>\nz ones</w>\nbl ind\npl y\ntuc son</w>\nadvent ure\nge d\noy ster</w>\nðŁĳıðŁĳı ðŁĳı</w>\nout put</w>\ntt t</w>\nmetal lic</w>\nsma sh\nucl a</w>\nsco ts</w>\nperfe ct\nlu cy\nregular ly</w>\nsp ic\nrel ative</w>\nath ers</w>\nmis e</w>\nbatt ling</w>\ndeci des</w>\nmat a</w>\noccu pied</w>\nrandom ly</w>\ncat softwitter</w>\ngi an\nball y\nal ties</w>\nal lies</w>\nim men\nsy rac\nðŁĴľ ðŁĴľ\nl lan\nau r</w>\nk ut\nlam ar</w>\naffe cts</w>\nn ra</w>\nstar war\nðŁ¤ ĺ</w>\nsc ram\nen chan\npro cess\nluxu rious</w>\nar ray</w>\nsher lock</w>\ncomp ati\ndor f</w>\nstre ss\nm su</w>\ns with\nsal a</w>\nsof instagram</w>\nfo il</w>\nunder stood</w>\nqu ay</w>\nr p\nc ade</w>\nja w</w>\nen ab\nen coun\nðŁİī :</w>\ndo ck\nsatur n</w>\nmu ll\nlay out</w>\nra rely</w>\nhapp ily</w>\nfix ture</w>\nor ph\nover looking</w>\nher bs</w>\nm itt\npil lar</w>\nnol an</w>\npe tty</w>\nstr y\nu i\nmu k\no res</w>\no vers</w>\ná µ\nre creation</w>\nwe sley</w>\nri t</w>\nkejri wal</w>\nsto cking</w>\ng v</w>\nsubscri bers</w>\nmoo se</w>\nma e</w>\nber t\nopp re\nassign ment</w>\nu ro\nhigh lighting</w>\ncal vin</w>\nwe igh</w>\ncambo dia</w>\nav on</w>\nke m</w>\ndis abilities</w>\nread y\nchar gers</w>\np ads</w>\niz ing</w>\nilli an</w>\ntru ste\ncol leges</w>\nassoci ates</w>\nalban y</w>\nmil ton</w>\ncr on\nbu r</w>\nhar dly</w>\nsi ghts</w>\nanti ques</w>\ne cho\nsurpri singly</w>\nha iti</w>\ncap t</w>\nph p</w>\nop io\nine quality</w>\nequ al\nken y\nsch mid\nautograph s</w>\nren t\nqu er\ncit rus</w>\nchalleng ed</w>\nte c\nepi de\nfe st\nz hou</w>\nli me\ncitizen ship</w>\ncry stal\nconvin ced</w>\nmess enger</w>\ncopen hagen</w>\nâĿĹ ï¸ı</w>\nwar ran\ndevelop ments</w>\nï¸ı âĥ£\nfore x</w>\nhi ro\nsne akers</w>\nxi de</w>\nvi va</w>\nstere o</w>\nbat ting</w>\nss el\nho st\nbeng al\ncritic ism</w>\nq c</w>\ncr un\nattemp ted</w>\nry e</w>\ndetermin ation</w>\ncre ations</w>\nd read\nlabel s</w>\npos se\nanc er</w>\njoh an\nsi ster\npartner ships</w>\nles bian</w>\nk st</w>\nguaran tee</w>\nbar o\nfix ing</w>\nma son\nm ous</w>\nchem icals</w>\nt less</w>\nbio diversity</w>\npar o\nbhar at</w>\nac ol\nrefu ge</w>\nen te\nt iti\ndys sey</w>\nrespon ds</w>\nlef to\nin er\nse vel\nrahu l</w>\nol ine</w>\nfrank fur\ncho reo\nenjoy able</w>\nc to</w>\nstrugg les</w>\nwood land</w>\nheavy weight</w>\ngen s</w>\nrece p\nac cred\nðŁĺ ¡</w>\ntrans formed</w>\nlist en\nat op</w>\nn k</w>\nsur ge</w>\nbe re\ngover nor\nprison ers</w>\nclau de</w>\nt ill\nmu lator</w>\nemo tion</w>\nwater loo</w>\nstar t\nðŁĩ º</w>\nclean ed</w>\ngrand mother</w>\nfear less</w>\nafric an\nastron omy</w>\nðŁı ģ</w>\nà¸ Ļ\nthe world</w>\nsu itable</w>\nanth ony\nk and\ntt en</w>\nmeaning ful</w>\ndisc lo\njaco bs</w>\nÃ ¸\ntom linson</w>\nghe tti</w>\nty pho\nsub stan\nas co</w>\nte k\nnag ar</w>\nmu d\nam on\nvacc ine</w>\nf ty</w>\nfle sh</w>\nno el</w>\ninfl ation</w>\nportu gue\nglam our</w>\ntra m</w>\nv re</w>\nte qu\nroun dup</w>\nw yn</w>\nrejec ted</w>\nmosa ic</w>\nsi ghting</w>\ncal f</w>\no ta\ncom position</w>\ngo pro</w>\ngonz ale\ne ed</w>\nb ard</w>\ntu e</w>\neffec tively</w>\nwe en\nal to</w>\nri bs</w>\nrel ate</w>\nthir sty</w>\nfu rious</w>\ndi m</w>\nch ard</w>\nperfu me</w>\ns ny\nchur chill</w>\nk of\nmaster class</w>\nwa ve\nðŁĶ µ\ner in\nown s</w>\nto be\nsk illed</w>\nte m</w>\ngo f\nen i</w>\ntor i</w>\ncra zy\nl ick</w>\nresi stant</w>\nici al\nag ar</w>\n! :</w>\ng ali\ndel aware</w>\nbl itz</w>\nkoh li</w>\npu ck</w>\navail ability</w>\nhi malay\ninflu ential</w>\ncro chet</w>\nvictor i\nread ing\nho bby</w>\nvie t\nj as</w>\nen gra\nsk ul\nðŁĩ² ðŁĩ\neduc ate</w>\ntech no</w>\ndistric ts</w>\nblu es\nse tt</w>\nseven th</w>\nlear ns</w>\nee ee</w>\napocaly pse</w>\nhang out</w>\ncru el</w>\nmu tu\nbru h</w>\nhel en\nshe er</w>\nc tion\nkle in</w>\ntex ans</w>\nce real</w>\nsh ine\nne red</w>\ngra s</w>\nam bro\nf ella</w>\nhin du\nmatthe w\nli ma</w>\nmir anda</w>\nje wel</w>\nso ho</w>\neuro vision</w>\nneighb ours</w>\nchand ler</w>\nbe sides</w>\nðŁ¥ °</w>\nast ros</w>\nthu mbs</w>\nren ault</w>\nra ve</w>\nhi red</w>\nðŁĸ ¤\nit ary</w>\nz or\nbla zer</w>\nk ine\nea u</w>\nkat y\ndc comics</w>\npe c</w>\nro dgers</w>\nwater proof</w>\nkill ers</w>\nsuper int\npre serv\nas so</w>\nbrew ers</w>\npromo tional</w>\nsc am\nvilla ges</w>\nsket ches</w>\nju icy</w>\nfor life</w>\nau dit</w>\nso lo\nfundam ental</w>\nlen e</w>\nphilipp ine</w>\nt end\nconserv atives</w>\nsponsor ship</w>\ndd le\na ine</w>\nh tc</w>\nos i</w>\nhul k</w>\nw af\nà¸ Ļ</w>\nevalu ation</w>\nant ine</w>\nsle e\nrobert son</w>\nroo sevel\nag i</w>\nsophi stic\nemplo yers</w>\nbubb les</w>\nko wski</w>\ninter action</w>\nsh u</w>\nbou le\nic an\nj are\nhan k</w>\nleg itim\nk nicks</w>\nkar ma</w>\nrecei ver</w>\nper ks</w>\nu h\nsta ir</w>\nsun i\nlabor atory</w>\ngra ves</w>\nvoc als</w>\noo t</w>\nc ture</w>\nthri ve</w>\ntic o</w>\nãĥ ³\nb w\ncarto ons</w>\nmcdon alds</w>\ndra w\ny ung</w>\npl er</w>\nli d</w>\neth ical</w>\ngroo ve</w>\nent a</w>\ninternational womensday</w>\npat ron</w>\nwor ries</w>\nðŁİ ħ\nðŁĳ ĭ</w>\nka therine</w>\ndi az</w>\ntor i\nbach chan</w>\ntru st\nmin eral</w>\nic om\nbuil ders</w>\nbor n\ncol oring</w>\nlat te</w>\nca se\nrevolu tion\ntra der</w>\nox id\nchi pot\ninst antly</w>\nsou thern\nse hun</w>\npro b\nher nandez</w>\nlis bon</w>\nhu awe\np ong</w>\nme a</w>\nro oney</w>\nwheel chair</w>\nke en\nbe tt\ncor in\nregulat ory</w>\ndi splac\nka ren\nsch em\nsun sets</w>\nwh ales</w>\nremin is\nhe p\nhi de\nmar cel\npand ora</w>\ndo yle</w>\nth fc</w>\not to</w>\nno kia</w>\ntrans gender</w>\nko v\nhawai ian</w>\nsha ve</w>\nso vere\nexc er\nnick i</w>\npu g</w>\nst or</w>\nro th\nwee t</w>\nleg al\ndig nity</w>\npo w</w>\nhom age</w>\nðŁĩ³ ðŁĩ\ns re\ncan on\nla x\nwo ah</w>\nquart z</w>\nÃ± a</w>\ngree ting</w>\nflick r</w>\nnai robi</w>\nadvoc ates</w>\nan c</w>\nvi i</w>\neu gene</w>\nth ra\nc re</w>\nel an\npen sion</w>\nth letics</w>\nton i\nre agan</w>\nx v</w>\nsto re\nben ch\nhar lem</w>\ntodd ler</w>\nsent enced</w>\nâĻ¥ ï¸ı\nglob ally</w>\nche aper</w>\nu f\nma m</w>\nnic o</w>\nik u</w>\ntho u</w>\nni st</w>\ndam i\nth ala</w>\nrho des</w>\nsal e\nbow ls</w>\nâ Ī\nlas vegas</w>\nsanc tions</w>\nadm ire</w>\nmat ched</w>\nun able</w>\ntravel er</w>\nele ven</w>\nstraw berries</w>\nâĢĶâĢĶ âĢĶâĢĶ\nstu dio\njac ques</w>\nim s</w>\nvalu ed</w>\ns no</w>\ncheese cake</w>\nn xt</w>\ne os</w>\ns x</w>\nf x\nton ic</w>\nhat ch</w>\nchic ks</w>\ngra ds</w>\nhand ic\nr ory</w>\nas p\nri pped</w>\ndenti st</w>\nn en\nlu fc</w>\nâľ Ĭ</w>\ndi ge\nhop kins</w>\nsher man</w>\nf da</w>\nfor all</w>\nash ley\nstr and</w>\nh y</w>\nliqu or</w>\nbuffe t</w>\ness ence</w>\nphar ma</w>\nsuri ya</w>\nðŁĴĻ ðŁĴĻ\nfesti vals</w>\nz an</w>\nre fresh\npur ple\nuni forms</w>\nkenne th</w>\n= )</w>\nas an</w>\nhel sin\ntransform ers</w>\nk ali\nperson alized</w>\nchal k</w>\nbo bby\nâ Į\nthe mes</w>\ndepar ture</w>\nprin t\nillustr ations</w>\nqui et\nagre es</w>\ngri ff\nØ ³\nm iti\ntoge ther\nconven ience</w>\nab ar\ncar lo\nturt les</w>\ninfo sec</w>\nsome what</w>\nar lington</w>\nscholar ships</w>\nemir ates</w>\nmu ms</w>\nst ella</w>\nauton om\nfe ather</w>\ng ore</w>\nnom inees</w>\nfragr ance</w>\nÑ Ĥ\nw ong</w>\nthea stern</w>\ngr e</w>\nz illa</w>\nis i</w>\nbump er</w>\ngo o</w>\ndo zens</w>\nab duc\nâļª ï¸ı</w>\no ils</w>\ndon ors</w>\nsil icon</w>\ni pod</w>\nfortn ite</w>\nðŁĴ ¨</w>\ntor o</w>\nspark ling</w>\nconsci ousness</w>\npal a</w>\nnu m\nmoun ted</w>\nffin s</w>\nthi eves</w>\nteam mate</w>\npra b\nom er</w>\nta pes</w>\nbo d\nmit su\nste w</w>\ne re\np bs</w>\ntu sc\nlo we</w>\nra de</w>\nparliam entary</w>\nh m\ned gar</w>\nðŁĳĩ ðŁĳĩ\nto a\na gh\nhon i</w>\ns late</w>\nge ek\nap t</w>\nhard t</w>\nta p\nhoriz on\ngrow th\nmake over</w>\nhi l</w>\npaper back</w>\nid an</w>\nreha bil\ngi u\npossi bilities</w>\nlet tu\nfran co\nbo ss\nach er</w>\ndoes nt</w>\nmo e</w>\nta ker</w>\nhuss ain</w>\nml k</w>\ndi l</w>\nth ia</w>\nham a</w>\nreal ised</w>\nraven s</w>\ncurric ulum</w>\nm ith</w>\nk night\nted x\nr v</w>\nisai ah</w>\ncumb ria</w>\nbirth days</w>\nf ing</w>\npre z</w>\nmu barak</w>\nexquis ite</w>\nclear ance</w>\ny en</w>\npar i\nev o\nÃ º\nmodi fied</w>\napp lying</w>\nimple ment</w>\ndisco vering</w>\nchap man</w>\nindie game</w>\ndis k</w>\ncrowd funding</w>\nmach in\nli vel\nsty led</w>\nâĿ Į</w>\nma king\nrehear sals</w>\nnutr iti\nsubscri ption</w>\nand ro</w>\ncre ators</w>\ncar ries</w>\nky lie</w>\ncam den</w>\nappren tice</w>\ntax pay\nc ca</w>\ntuesday thoughts</w>\npis sed</w>\ner man</w>\ndete c\nfreed om\nmer i\n.. !</w>\npsal m</w>\nsun light</w>\nper spec\nbe ings</w>\nbook store</w>\nrock star</w>\nfun ctions</w>\np ence</w>\nfav es</w>\nz n</w>\nobam acare</w>\nsp ill</w>\ncoven try</w>\npi geon</w>\npi vo\nba it</w>\nkol kata</w>\nav al\ndon or</w>\nwa h</w>\nprivi leg\ntra ditions</w>\nrajas than</w>\nten ess</w>\nportugue se</w>\nyn es</w>\ntack les</w>\nde fic\ntor n</w>\npol ling</w>\nthor ne</w>\nin a\nbened ict</w>\nbar ry\ncal ories</w>\nver dict</w>\nsave the\nnor ton</w>\noff ice\nmain stream</w>\nimpro ves</w>\nfr on</w>\nrespon ding</w>\nreal tor</w>\nscotti sh\nde clar\nr l\nshi v\nsupp lier</w>\nre sting</w>\nswee ts</w>\nqu i</w>\n. âĢ¦</w>\nwhit ney</w>\nstartu p\nthank you\nteach er\nh alls</w>\nha ve\nhand made\npro ving</w>\nquar tet</w>\nro chester</w>\nli an</w>\nvirtu al\nmend es</w>\nof icial</w>\nmid lands</w>\nx box\nmeas uring</w>\no vo</w>\naccommod ation</w>\nbri des</w>\ncollegi ate</w>\nintellec tual</w>\nin car\nni ag\nðŁį ·</w>\nsf w</w>\ncoco a</w>\nco ats</w>\ncivil ians</w>\npresi dency</w>\nmat rix</w>\nsweethe art</w>\ntri athlon</w>\nwag ner</w>\nra dic\nplann er</w>\nthe o</w>\nexecu tion</w>\nk um\nthe walkingdead</w>\nsc ar</w>\nro tation</w>\nblo gging</w>\nbom b\nre son\nbb les</w>\nst are</w>\nassi sted</w>\ne do</w>\nbrand ed</w>\nwar nings</w>\nthor pe</w>\nacknow le\nsatis fied</w>\nsho res</w>\nri d\ndor a</w>\nphys ically</w>\nbi gh\nappro ves</w>\nha h\nric al</w>\nvers atile</w>\npret end</w>\nlu m\nab hi\nye e\nsp it\nãĢ Į</w>\ndj s</w>\nash tra</w>\nj t</w>\nven ues</w>\ngram mys</w>\ncy clo\ntr acker</w>\nover watch</w>\nrepl ica</w>\nel yn</w>\nnr l</w>\nlind sey</w>\nhom o\nballo ons</w>\nkitch en\nsi s\nam os</w>\nende av\nðŁĴ »</w>\na rec\nthu g</w>\nhoo ked</w>\nhr c</w>\nnew york\nbur gh\nameric as</w>\npatric ia</w>\nug u</w>\nap athy</w>\nha st\npsy chi\ncor k\npetro l</w>\nðŁİ ¬</w>\nak u\npo pping</w>\npsycho logical</w>\nau x\ng ma</w>\ncad illac</w>\nwa ste\nauth ent\nbri stol\nnam e\nque er</w>\nto ber\njer ry\ncom in</w>\nch ant\nprivileg ed</w>\nop ar\nlo ser</w>\ntex t\nmar ker</w>\nstri es</w>\nequ ally</w>\nak i\nchrist mas\ngare th</w>\nble w</w>\nem ma\nimag in\nse als</w>\nche at</w>\nconditi oning</w>\nj ana</w>\nren s</w>\ndar ies</w>\no asis</w>\ndisc ounts</w>\ncoun cil\ni ka</w>\nshir ley</w>\nvou cher</w>\nal ps</w>\nw x\nq r</w>\ndri ft</w>\nattemp ting</w>\nut c</w>\nØ ª\ngonzale z</w>\nm f\njo ker</w>\nparalle l</w>\npa re\naspe cts</w>\nproce du\nn p\nam a\nrale igh</w>\nbright en</w>\ngu ire</w>\nradi ation</w>\ncre scent</w>\nho b\nil le\nstr and\nv ore</w>\nn ard</w>\nche st\ndi wali</w>\nav atar</w>\nal der\nd ling</w>\npa thetic</w>\nðŁĴ ĺ\nspir it\njor ge</w>\nfilm making</w>\nðŁĻı ðŁĻı\nchalleng er</w>\nb j</w>\ndown town\nht ml</w>\nade qu\ntwi sted</w>\nin ely</w>\n( '</w>\nwra ps</w>\noper ational</w>\ny ne</w>\nn us</w>\nmag net</w>\nmarket place</w>\nhealth ier</w>\nsnap shot</w>\ndam on</w>\ninter ven\nfe derer</w>\now ls</w>\nbiscu its</w>\nj p\nro deo</w>\nblue berry</w>\nlec tion</w>\nfron tier</w>\nsumm ers</w>\nre yes</w>\npede strian</w>\ngo l</w>\ncaf fe\nrefur bi\nbou lder</w>\nme ghan</w>\nspeci alty</w>\nla ss</w>\ne i</w>\nsuspec ts</w>\nappro x</w>\nrr r</w>\nra th\nst im\ncru shed</w>\nhe d\nwh un\nlo af</w>\ncr ore</w>\nriver a</w>\ngene tics</w>\nso ck</w>\nwa sted</w>\nny pd</w>\nansw ering</w>\ndo ve</w>\nbel la\nol in</w>\ndu n</w>\nfi ji</w>\npre tty\nspar kle</w>\ny un</w>\nj d\neuro pa</w>\nli fts</w>\nam ber\nmu r</w>\nte k</w>\nboy d</w>\nroy alty</w>\nin do</w>\nri b</w>\ngo tham</w>\nti est</w>\ninst alling</w>\nke mp\nthe photo\ncos mic</w>\n) ))</w>\nwhole sale</w>\nloy ment</w>\neas y\nsu ing</w>\nsett led</w>\naf p</w>\npro ver\nsuppor tive</w>\nre es</w>\nne ath</w>\ndeli ber\nc Ã©</w>\nwel come\npic oftheday</w>\nnew born</w>\npat ty</w>\nsun s</w>\nsi est</w>\nfl int</w>\ndiffe rently</w>\nspo ilers</w>\ntroop er</w>\ng ins</w>\ncor y</w>\nlook out</w>\nequi pped</w>\nta pe\nto by</w>\nresear cher</w>\nu sh</w>\nke yes</w>\nal ma</w>\ninduc tion</w>\nk w</w>\nk har\nsl ick</w>\nbri de\ne ur\ncra ving</w>\nbook ings</w>\nch es\ntr unk</w>\nvern on</w>\nsp her\ncryst als</w>\nrel atively</w>\npom pe\nuni ons</w>\nval ley\npar a\nw ant\nok c</w>\nde af</w>\nser gio</w>\nlen non</w>\nsh ay</w>\ncr a</w>\nv at</w>\nhe e\nt we\nliqu id\npol y</w>\nðŁİ ģ\nb ent</w>\nbe aring</w>\nmotor sport</w>\nbar be\nte sti\nhan i</w>\nfin ancing</w>\nastron aut</w>\nwater colour</w>\nri sh\ncomic con</w>\ngar t\nwr ong\nber n</w>\nit an</w>\nste pped</w>\nfil ters</w>\nc low\nme x</w>\ndem ons</w>\nall o</w>\nexpand ed</w>\ncomm and\net ers</w>\ngo ats</w>\nsi ri</w>\ny r\npot tery</w>\nmari on</w>\ni le\nel an</w>\nsan to</w>\nperson a</w>\ndu ke\nhom eless\nli ghted</w>\nwheel er</w>\nchang er</w>\ncab bage</w>\nsur real</w>\nham burg</w>\nsma shed</w>\nstr an\nk not</w>\ni art\nob i</w>\nbe dro\ndi al\nth ick\nb ingo</w>\nfu s</w>\nvacu um</w>\ncon ve\nati ve\naccur acy</w>\naccoun t\nre fer\nri z\nspider man</w>\nban a</w>\nr ite</w>\nu b\nab s\nmedic al\nlin k\nsi em\n> >>></w>\nbe tra\ng lowing</w>\nre actions</w>\npupp et</w>\nspa ghetti</w>\nang s</w>\nre medi\npray for\nroy ce</w>\nchar lotte\n£ ï¸ı</w>\ngh et\naffe cting</w>\nro de</w>\nsoci alist</w>\nmo ses</w>\naz i</w>\no it\nre porters</w>\ncd t</w>\nap ing</w>\ns nat\nminim al</w>\nwa ist</w>\nsie ge</w>\n>> >>\nri g\nschmid t</w>\nh are</w>\nec a</w>\nthor n</w>\nhe mp</w>\nes the\ncly de</w>\nth a\ndon ut</w>\nmoham ed</w>\nling erie</w>\nle gg\ncarpen ter</w>\nperform ers</w>\nde a</w>\nimag ined</w>\ncur se</w>\nla sh</w>\nct r</w>\nagu a</w>\nro ar</w>\ngr i</w>\nro le\nj fk</w>\nresur rec\nroosevel t</w>\nmaril yn</w>\nsm alle\nwill is</w>\nwa ited</w>\nchar ities</w>\nthe res</w>\nli k</w>\norigin al\ncar i\nc ough</w>\ncru ci\nla gun\ncontra st</w>\nk ou\narm our</w>\nre moving</w>\nt ent\nmaz da</w>\nbri ghter</w>\nthi ef</w>\ncor ner\ntequ ila</w>\nbuzz ing</w>\nal bi\np am</w>\naz ure</w>\ndisc oun\npixel art</w>\npossi bility</w>\nham ont</w>\ntra des</w>\nbu da\nhi ve</w>\nvers y</w>\nfin ch</w>\ntran spa\nem i</w>\nterri fying</w>\nin qui\ng ba</w>\nsub stitu\ncollec ti\nplac ing</w>\ncin dy</w>\nk ann\npa tho\ndiamon d\nmour inho</w>\nguine a</w>\nanthro po\nair s</w>\npu mps</w>\nì ļ\npas o</w>\ncur ling</w>\nan ita</w>\nresi dency</w>\nne wh\njo on</w>\ncigare tte</w>\nque ue</w>\nex trac\ngam es\nspl en\nex press\npublic ly</w>\nbon nie</w>\ntribun e</w>\nba ek\nreason able</w>\nc or</w>\ntimo thy</w>\nshe eran</w>\nÄ ±\nf dn</w>\nsu tton</w>\nconcentr ation</w>\ncarav an</w>\nx avier</w>\nal ger\ncy lin\nfreder ick</w>\nner ve</w>\npe ak\nlettu ce</w>\nj ail\npre game</w>\nkav an\nup graded</w>\neco logy</w>\nsquad ron</w>\ngra pes</w>\ngoo g\npa stry</w>\nðŁĹ £</w>\nãĥ¼ ãĥ\nmil ano</w>\nawa z</w>\npresen ter</w>\nðŁĮ ¿</w>\nher d</w>\nking s\ntem plate</w>\nfl our</w>\nh v</w>\nk ley</w>\ni ya</w>\nspe c</w>\nat er\nfrankfur t</w>\nco ch\ntex ting</w>\ndel i</w>\ncommuni st</w>\nregi ment</w>\nele anor</w>\nanticip ated</w>\nðŁĳĮ ðŁı»</w>\nthephoto hour</w>\nran o</w>\nsurvi ving</w>\nsimul ation</w>\ndaw son</w>\nar in</w>\naqu a</w>\nm or</w>\nâĢ¦ .</w>\ncin o</w>\nira qi</w>\nsh az\ndun dee</w>\nwe s\ndra u\nhann ah\ns news</w>\noccup ation</w>\nste en</w>\nx m</w>\nang les</w>\nsett ings</w>\ngur u\nkno x\nor ca</w>\nshap ing</w>\nw ent\ndr illing</w>\nzz ie</w>\nbr i</w>\nkis sing</w>\nfin d\nma ine\nâŃĲï¸ı âŃĲï¸ı\nðŁĮ į</w>\nlar ry\nbu sted</w>\nta vern</w>\nacti vely</w>\n- \"</w>\nreplac ing</w>\nno d</w>\nun lock</w>\n. \"\nâŀ ¤</w>\naffili ate</w>\nto w</w>\nl n</w>\nhappy newyear</w>\ndi f\nj m</w>\ngreen wich</w>\ncontro versy</w>\ndaw g</w>\ncon dol\nsav annah</w>\ncompens ation</w>\ntouch down</w>\nte o</w>\namb itious</w>\nembro i\nconvic ted</w>\niart g</w>\nbar ack\ntr ance</w>\ntestim ony</w>\nau dition</w>\nthum b</w>\nmy ths</w>\nbe x\nque z</w>\norch id</w>\nden y</w>\nentit led</w>\nhoo d\ngr ant\nin box</w>\nblue jays</w>\nr illa</w>\nsmalle st</w>\nbur den</w>\nin famous</w>\ndivi ded</w>\nboun daries</w>\nt ter\nel t</w>\nwy oming</w>\nbe verage</w>\nme sm\none ws</w>\nbudd hist</w>\ny ana</w>\nas sad</w>\nis ms</w>\nbar rett</w>\npredic ted</w>\nback to\ntw it</w>\ne there\ncap tains</w>\nescap ed</w>\nay o</w>\nlam borgh\ngard ner</w>\nla ps</w>\nk al</w>\nadverti sement</w>\ninsec ts</w>\nna po\nam en\nac y\nr and</w>\ng k</w>\nte h\nk athle\ntri dge</w>\npan cake</w>\nat ro\npyram id</w>\nbu la</w>\nparal ym\ngau ge</w>\nen cies</w>\ntom y</w>\nbiscu it</w>\nbut cher</w>\nquali fier</w>\ncoun ty\nke i\npo ols</w>\ndar ker</w>\nshould ers</w>\nðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸\nsp re\n( \"</w>\nwrit ers\ng m\nðŁİ ĵ</w>\nk nit\nhu ff\nmt b</w>\nphilli es</w>\no st</w>\nden is</w>\ng art</w>\nlicen sed</w>\ninter face</w>\nex cel</w>\nd well</w>\nfrom the\nco fficial</w>\naz zi</w>\nappear ing</w>\nfore st\nn ana</w>\nke ith\nmanufac turers</w>\nbeck ham</w>\n) ?</w>\ne se\ncol ony</w>\ndelic ate</w>\nut ter\nmc in\ntranspl ant</w>\npre ferred</w>\npar d</w>\nari e</w>\nhu b\npo ds</w>\nperspec tives</w>\npic t</w>\ndel u\napp er</w>\nbe than\np mo\ncrimin als</w>\nfemin ism</w>\nsh ack</w>\ncircum stances</w>\nfel las</w>\nprote sting</w>\nwa x\nsugge sted</w>\nt ator</w>\ndre w\nom ni\nfa ke\nkath y</w>\nre b</w>\ndel ine</w>\nber ni\nmi sty</w>\nðŁĳ ©\ner able</w>\nbreak through</w>\nmen swear</w>\nmillenni als</w>\nchan yeol</w>\nla z\ninser t</w>\nrep lies</w>\nphra se</w>\nn x\nihear tawards</w>\naudre y</w>\ngran ite</w>\nrac ec\nori e</w>\nter ra</w>\ninnov ations</w>\nbritt any</w>\nat eral</w>\npe ar</w>\nbio logical</w>\nsh ments</w>\ninstitu tion</w>\nm sn\nfrequ ency</w>\nd man</w>\nneg lec\nt f\nste fan</w>\nfox news</w>\nty po\ncomm s</w>\nsequ ence</w>\ncar men</w>\nwh ites</w>\neconom ist</w>\nexe ter</w>\nse um</w>\nre sorts</w>\ncas ually</w>\nbun de\ndivi de</w>\nØ ¹\nga g</w>\ncre ed</w>\nreti re</w>\ncau cus</w>\nrapi ds</w>\nwrestle mania</w>\ntul sa</w>\nsunder land</w>\nfundam ent\no di</w>\nyam aha</w>\nv ary</w>\nintri gu\nel se\nbe acon</w>\nan gie</w>\ntra ded</w>\ntran sm\ng ents</w>\nkn itting</w>\ngal ac\nðĿ Ĺ\nu to\nsea side</w>\nhol t</w>\nre rs</w>\nfar go</w>\ntrain ers</w>\nmon soon</w>\nb ale</w>\nsou ght</w>\nmad die</w>\nh w</w>\nco li\nfr an</w>\nfav s</w>\nðŁĴ Ķ\nint ent</w>\nr ally\ns bs</w>\nlemon ade</w>\nbarack obama</w>\nbre ad\nstick y</w>\nexplo sive</w>\nchel ten\nt j\nas soc</w>\nram en</w>\nhom ies</w>\nv log</w>\nmi ster</w>\nlor d\nâĢįâĻ Ģï¸ı\naly ssa</w>\nsketch book</w>\nru mble</w>\ncat ch\nmigr ant</w>\ndiscipl ine</w>\nun likely</w>\nchronic les</w>\nfl ora</w>\nsl ams</w>\nam id\ns boro</w>\ncoo p</w>\nju mps</w>\ntran qu\nmel is\nsof ia</w>\nen ri\ngab e</w>\nsy ri\nnicol as</w>\ncha i</w>\nw v\nbe cky</w>\nfoo ty</w>\nta o</w>\nsuppo se</w>\nðŁĺįðŁĺį ðŁĺįðŁĺį</w>\nplu sh</w>\nri sh</w>\nðŁ¤ ĵ</w>\nk ha</w>\nsatur days</w>\nac cent</w>\nhe c\nlim it\ncarl ton</w>\nwi red</w>\ntaylor swift</w>\nðŁĺ ĳ</w>\nsq l</w>\nhar ro\nrecipi ents</w>\ng at</w>\ngo p\nth of\namaz ed</w>\ngh an\nðŁıĨ ðŁıĨ\npor to</w>\ncla re\ndi stant</w>\nna c</w>\nohi o\nðŁĻı ðŁı¼</w>\nmt n</w>\nanti bio\ndino sa\nme sa</w>\npar tial</w>\nb v\nlear nt</w>\nlov ato</w>\nquesti on\nex tract</w>\ngossi p</w>\ngi bb\nniag ara</w>\nðŁĳ ¨\ndispla yed</w>\nso oner</w>\nste vie</w>\nnug gets</w>\nml n</w>\nbro m\ntur b\ngive aways</w>\nstu pi\nbl ink</w>\nc ili\nconven ient</w>\nmo h\nvi ve\nf ric\ncau se\ncham ber\ncu les</w>\nne arest</w>\nis se</w>\nsmall biz</w>\nt j</w>\ncanadi ans</w>\nsmar ter</w>\nbra sil</w>\nra re\nque tte</w>\nw ha\ncand le\nat omic</w>\nðŁĳį ðŁĳį</w>\nwarri or\nrelax ed</w>\nstri ps</w>\nne ur\nk ka</w>\nr fc</w>\njen sen</w>\nreco vering</w>\nrespon ses</w>\nsal am\northo dox</w>\nacti ve\nell ers</w>\nn it</w>\nâŃ Ĳ</w>\nmetro politan</w>\ncentu ries</w>\nvi da</w>\ngra ding</w>\ntranspa rent</w>\nsim ple\ndo ts</w>\nsuperint endent</w>\nelev ator</w>\nautom ated</w>\nred skins</w>\nima m</w>\nsummer time</w>\njona than\nge aring</w>\nmichel le\nconfl ic\nm ice</w>\nto te</w>\npubli sh</w>\npa x</w>\n) -</w>\nna iled</w>\ná ´\ntele scope</w>\nser bia</w>\nba b</w>\nape u\nst ically</w>\nsen ti\nr ats</w>\nisol ated</w>\ngrou p\nhat red</w>\nparanor mal</w>\nstan ley\nali on</w>\nsafe ty\nl s\nà¤ °</w>\nnex us</w>\nalexand ra</w>\nmas ks</w>\n+ +</w>\ntr on\nau k</w>\nbrother hood</w>\nbrow se</w>\nmix es</w>\nsim one</w>\nmu sk</w>\nappro ve</w>\nlo la</w>\nex p</w>\nper th\nfu turi\nun seen</w>\nd m\nchel se\nsc outing</w>\no we</w>\nportsm outh</w>\nk ram\nmi ze</w>\ndi spen\nsu p\nd lc</w>\nadver t</w>\ntere sa</w>\nis le\ncy cle\nmet all\nshi elds</w>\nmarin ers</w>\nra z</w>\ning en</w>\nfun d\nan go</w>\njon es\no ka</w>\nmad den</w>\nbroc coli</w>\ndomin ic</w>\nsitu ations</w>\nmer o</w>\ncric ke\npuni shment</w>\nd b\nsha king</w>\nðŁĺ ļ</w>\nm q\nari ans</w>\nle h\ncla w</w>\nwe ds</w>\nd ure</w>\nni el\nj elly\ngour met</w>\ntra ders</w>\nle vi</w>\nw ages</w>\nkne es</w>\nwi se\nheaven ly</w>\navi d</w>\nmelo dy</w>\nz ack</w>\nban anas</w>\napprentic e\npro p\nfun ny\no de\nrespec ted</w>\nme gan\nfe wer</w>\ndra fted</w>\nmed it\ngra pe\nus army</w>\ncru sad\nvo cali\nprepar ations</w>\nnon sense</w>\nus age</w>\nth r</w>\nro th</w>\nwiz ards</w>\ninsi de\npromo tions</w>\nmon a</w>\nred sox</w>\nsi g</w>\neleg ance</w>\nch ia</w>\nuniver sal\nãĢ į</w>\nra ja</w>\nun ga</w>\npol lin\nfilip ino</w>\nak a\nt sun\nik on</w>\nbi king</w>\ndecor ations</w>\nz ac</w>\ncade ts</w>\nhum our</w>\nag m</w>\nre ppin</w>\nvac cin\nelo ve</w>\nu w</w>\ndia be\ngalla gher</w>\naz er\ndo l</w>\na while</w>\npro minent</w>\nwel sh\nt ann\n' )</w>\nbi en\nwa g</w>\nin al</w>\nc wc</w>\nwic ket</w>\nur st</w>\nq anon</w>\nx e</w>\nout door\ndun n</w>\nstar r</w>\nco logy</w>\nric ky\nu efa</w>\nreb ounds</w>\ns music</w>\ninf ant</w>\nðŁĻ ĭ\nso p</w>\nu mber\nhand ing</w>\nbeg in\nsor ting</w>\nha sh</w>\nsp ati\nre k</w>\nbuda pest</w>\nblack hawks</w>\ndele te</w>\nro m</w>\ncan did</w>\nauth ori\nde bris</w>\nspe cul\ninter section</w>\nmarri ott</w>\nim ran</w>\nðŁĺģ ðŁĺģ</w>\ncru ises</w>\nram sey</w>\nrafa el</w>\naware ness\nvas cular</w>\nbeyon cÃ©</w>\nru g</w>\nðŁĺ Į\nfesti v\nar am\ns able</w>\nbas il\np ill</w>\nflo oring</w>\nun beaten</w>\nimplic ations</w>\nu f</w>\nw ound</w>\nfor ge</w>\npoin ting</w>\npo ts</w>\npopular ity</w>\nðŁĳı ðŁı»\nmani pul\ns lots</w>\ndeb ates</w>\nabs ence</w>\nver mont</w>\nnever forget</w>\nwri st\ngl oria</w>\nren ce\nhu sk\nmel ting</w>\nðŁİ Ł\nbr aces</w>\ntim ely</w>\ntransform ing</w>\nam ps</w>\nma k</w>\npo e</w>\nah an</w>\ngener ally</w>\nnd p</w>\nale ppo</w>\nunic ef</w>\npro fs</w>\nnor d\nma sk\njackson ville</w>\nv v\nsh ells</w>\nbloom ing</w>\noper ators</w>\nchar coal</w>\nne ville</w>\nma gi\nchi p\nsam a</w>\nir an\nre forms</w>\naccu mul\nru e</w>\næ ľ\nweb sites</w>\nga on</w>\ndevast ating</w>\nsto s</w>\nglaci er</w>\nra pp\nchipot le</w>\npr a</w>\nor ous</w>\nrom ney</w>\nseas on\ndecor ative</w>\nc isco</w>\ndit ch</w>\ncompla in</w>\nll o</w>\nassu me</w>\nðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤ</w>\nn els</w>\ncent ric</w>\nft w</w>\ncar rots</w>\ntat a</w>\ncan ter\nper ience</w>\nli ers</w>\ndemo s</w>\nbl unt</w>\noper ate</w>\nreserv ations</w>\nle ah</w>\nsub stance</w>\ndi son</w>\nan te\nelec tion\nv ue</w>\nsqu are\nnon profit</w>\nca a</w>\nf su</w>\ny am</w>\nãĤ ¤\nv ladi\ncomple tes</w>\nmar i</w>\nphilli p</w>\nne ill</w>\ner as\nka it\nmen do\nmahar ashtra</w>\ng p\ndan e</w>\nprovi dence</w>\nther apeu\njuven ile</w>\nme mo</w>\nin corpor\naa aa</w>\nseven teen</w>\nteen ager</w>\nÃ £\nor ns</w>\nwi de\ncu teness</w>\ntw d</w>\nff les</w>\nbar a</w>\ncom edy\nover time</w>\ny az\nbar on</w>\nunemp loyment</w>\nðŁĳ ĭ\nexter ior</w>\nden se</w>\ncent res</w>\nmatch up</w>\nhistory month</w>\nartif icial\nqu it\ne sk\nwar n</w>\ncr itic</w>\nj af\nðŁĵ ²</w>\ninform ative</w>\nfu els</w>\nrecy cle</w>\nnam ing</w>\nstri pe</w>\nsol ic\nmole cular</w>\ndee pi\ncon vo</w>\ns sel</w>\nna e</w>\nde scent</w>\nti z</w>\naccoun tability</w>\nter ry\nr ito</w>\nsl ay</w>\nem o</w>\ndem ol\nsens ation</w>\nco v\ntor e</w>\nround table</w>\ny ol\nexcu ses</w>\nà¥ į</w>\ntur quo\nhh hh\npod casts</w>\ncele b</w>\nme ssi\nli o</w>\nman n\ncontribu ted</w>\nu z\ngener ator</w>\nele ts</w>\nveg gie</w>\nindu l\nen suring</w>\ndetro it\npun jab\ntran spor\ninstru ction</w>\nad d\npor cel\npan eli\ncir cles</w>\npersi st\nclay ton</w>\nsp n</w>\ndog softwitter</w>\nis nt</w>\nsp r</w>\nretail ers</w>\np w\nhun gar\nel ena</w>\nmon aster\ngu atem\nje ssie</w>\nan z</w>\nra shi\nfle e\ncar ving</w>\nfau x</w>\nl al</w>\nhen ri\nd jo\ndu ll</w>\ns ana</w>\nlar a</w>\nglo be\ncri mson</w>\ncom pass</w>\npau se</w>\nna b</w>\nlion el</w>\nba ths</w>\nu fo</w>\ninvent ory</w>\nsin gh\nsat an</w>\nðŁĩ ¸\nce ments</w>\nin form</w>\ngener ated</w>\nbi den</w>\nav g</w>\ntas ks</w>\nde er\nsa u</w>\nja iled</w>\npa stel</w>\nsc c</w>\nna il\nsteel e</w>\nper is\nlamborgh ini</w>\npur sue</w>\nmar gin\nu ch\nbo sch</w>\ndra in</w>\ncl ara</w>\nbo m</w>\nlat ino</w>\nweb ster</w>\nrose mary</w>\nr ha\ns oun\nbillion aire</w>\nnot ch</w>\npercent age</w>\ncon or</w>\n' \"</w>\nhom es\nearth day</w>\nh ort</w>\nbig gest\ndi sin\nwal ton</w>\nedit ors</w>\nim ma</w>\nom ar\nequi valent</w>\npharmac eu\nah med\ncam eo</w>\nhan ni\nunder rated</w>\nge ment</w>\nmicro bi\nv oo\nhonor able</w>\nobe sity</w>\nâļ ¡ï¸ı\nlimer ick</w>\ninvol vement</w>\nst agram</w>\nboule vard</w>\nbur g\nblackand white</w>\nliber ation</w>\nfi ve\ninter im</w>\nsm m</w>\nrival ry</w>\ncap abilities</w>\nstat ements</w>\nthu mb\nve d\nsw ans</w>\nbar ber\ne que\nseren a</w>\nhel m</w>\nnoo dle</w>\nsam pling</w>\nn awaz</w>\nsing le\nthunder storms</w>\nsh on\nin ev\në ¯\nto pp\norch ard</w>\nbi an\nðŁĺ Ķ\ndoor step</w>\nsalv ation</w>\nmarke ting\nr ons</w>\ncle mson</w>\nra vi</w>\nin take</w>\nstand with\nsin a</w>\nha iku</w>\nple y</w>\nelector al</w>\nph illy\nla ys</w>\nelectr ic\ncap turing</w>\nu pp\ner gy</w>\nbeliev ing</w>\ncul tures</w>\nes day</w>\ninva sive</w>\ned ed</w>\nspee ch\nend ur\nviet nam\nboy cott</w>\npe de</w>\ndeli ver\nðŁĴĸ ðŁĴĸ\nmer chant</w>\nst ir</w>\nden ies</w>\npoc kets</w>\no ti\ncu ddle</w>\nro land</w>\nmm ed</w>\nden ed</w>\nlear ners</w>\nhoo p</w>\nsour cing</w>\nh acked</w>\ndi m\nenviron ments</w>\nben son</w>\njud icial</w>\nwor cester</w>\npear ls</w>\ngovern ments</w>\narri vals</w>\ncor ners</w>\ntun ing</w>\nla bour\ny m</w>\nor dering</w>\nle wi\ni fe</w>\nhygi ene</w>\nthou ghtful</w>\nindone sian</w>\ncampaig ning</w>\nprinci ple</w>\nassau l\nru bb\nat v</w>\nwil ly</w>\nen tre</w>\nil i</w>\nph on\ndu ties</w>\nâĻ¥ âĻ¥</w>\nsn akes</w>\nlo op\nam ar</w>\nconver tible</w>\nbon ding</w>\nment oring</w>\nmax well</w>\nethere um</w>\ndestro ying</w>\nax is</w>\nca iro</w>\nfin nish</w>\nsho ck\nðŁĺ Ĳ</w>\ncal eb</w>\ncom a</w>\npe dal</w>\nco re\ncontin ent</w>\nel son</w>\ntemp o</w>\nhelsin ki</w>\nac p</w>\ntack ling</w>\nst ated</w>\nbl a</w>\ndou b\nsma shing</w>\na ja</w>\ncamer on\ndisru ption</w>\nwarm th</w>\nbeing salmankhan</w>\nbullet in</w>\no de</w>\nsyrac use</w>\nar an</w>\nmc gregor</w>\nbul k</w>\nan ton</w>\nconfir mation</w>\nsp ine</w>\nim ran\ninstru c\njac ks</w>\nchi o</w>\npal m\nstr e</w>\nembarra ssing</w>\nun t\nelimin ate</w>\nto ss</w>\nc ise</w>\na ws</w>\noni sts</w>\nsh inee</w>\njo s</w>\nho se</w>\nli vely</w>\nopp onents</w>\nmo vements</w>\nrecogni zing</w>\nsandwich es</w>\nsh akes</w>\nexerc ises</w>\nse at\nprofe ssion</w>\nmerry christmas</w>\nlu gg\nadopt dont\nmar vin</w>\nbyr ne</w>\nun le\nhe t</w>\nku wait</w>\nrah man</w>\naspe ct</w>\nhumb led</w>\ngen es</w>\nf and\nlong time</w>\n) ;</w>\ncam pu\nan gus</w>\nðŁĳį ðŁı¼</w>\nq uran</w>\nsle eves</w>\ns lic\n¸ ë\ntwel ve</w>\nyour e</w>\ni ke</w>\ngo gh</w>\nb st</w>\ndic tionary</w>\nreflec ting</w>\nto on</w>\nyar n</w>\nem bed\nðŁı ´</w>\nre serves</w>\nfloo ded</w>\nver iz\ndu sk</w>\nestab lish</w>\npro li\nau d</w>\nritu al</w>\nor bit</w>\ndeclar ation</w>\nrecor dings</w>\ncam o</w>\ncas sette</w>\ngood luck</w>\ncu tter</w>\nbo p</w>\nb ho\nche ating</w>\npaci fic\nma res</w>\ntim er</w>\ncol t</w>\ntr ous\ntomor row\nhan sen</w>\nci e</w>\nw ang\nban i</w>\ncircu lar</w>\nac ute</w>\nfar mer\nco ys</w>\np se\nir ving</w>\nw j\nhaw kins</w>\nb ison</w>\nur day</w>\ncru ising</w>\no te</w>\nk ath</w>\nwhi stle</w>\nyour selves</w>\nant is</w>\nsla sh</w>\nthorough ly</w>\nke sh</w>\nser ie</w>\nex em\nen ig\nguil d\nsh red\nho gan</w>\nap o</w>\nä ¸\npu zz\nne tball</w>\nau ssi\npanor ama</w>\nws j</w>\nav is</w>\nar ming</w>\nhum ph\nbrow ser</w>\ncri es</w>\nfo ggy</w>\nmat te</w>\nðŁĮ »</w>\nit er</w>\ntal lest</w>\nby ron</w>\ncap tiv\nje su\nany ways</w>\nflag ship</w>\np ton</w>\nwe y</w>\nfay ette</w>\nfinanci al\nf oul</w>\nsolom on</w>\njenni fer\ncucu mber</w>\nar gue</w>\ntex tile</w>\nwrest ler</w>\njohn ston</w>\npa stor\nðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃ\ncac tus</w>\nedi ble</w>\nre served</w>\nric hie</w>\nmet res</w>\ningredi ent</w>\nh ella</w>\nun to</w>\nch ol\ncele bs</w>\npo ets</w>\ngra ham\nhay den</w>\ncoinci dence</w>\nb aw\ncommunic ate</w>\nflet cher</w>\n/ -</w>\ntole do</w>\necu ador</w>\ncoun sel</w>\ns laughter</w>\nline ar</w>\nat p</w>\nos u</w>\njo el\nev ed</w>\nconqu er</w>\nru stic</w>\nplic ity</w>\nrecogn ise</w>\nroom mate</w>\ncr acked</w>\njas per</w>\nph er</w>\nðŁĮ º</w>\nwo ven</w>\nmo ist\nff c</w>\nste ering</w>\nni sh\nstand ings</w>\nfrequ ent</w>\nar di</w>\nhaz el\nas msg</w>\nbau m</w>\nd art</w>\nsi dd\nnat h</w>\nch ero\ncard board</w>\nc ss</w>\nn sfw</w>\npa ir\nðŁĺį ðŁĺĺ</w>\noccur red</w>\nhomeless ness</w>\nmal one</w>\nph e</w>\nxi a\npad dy</w>\ndecl are</w>\ntheat re\nb f\nper sian</w>\nta d</w>\nax e</w>\nsusp icious</w>\nlam b\nmu cho</w>\nsen ior\nst as</w>\nk ite</w>\nst ing\ngra d\nk af\nwat ering</w>\nØ ¯\nspi ral</w>\nth ms</w>\neduc ator</w>\njer ome</w>\nof c</w>\nclo ck\nsu l</w>\npe mb\n.... .....</w>\npark way</w>\nde aux</w>\nrestric tions</w>\nm ons</w>\nneed le</w>\ne j\nle agues</w>\nwater melon</w>\nam an\npl enary</w>\nmax im\nw ab\ncoming soon</w>\nbry ce</w>\nvi gil</w>\nsuper market</w>\nfortun ate</w>\nturquo ise</w>\npresi dent\nli v</w>\ninter ns</w>\nfeel in</w>\nfix tures</w>\nstun t</w>\nst aged</w>\npremi eres</w>\nlo k\nprac titi\nshor tage</w>\nlog ne</w>\nve c\ncon cor\nroc ke\nli g\ncom posed</w>\nsyn thetic</w>\ndi p\ncam ila</w>\nch is\nj ou\nsu san\neye brows</w>\nsupp lement</w>\nsatis faction</w>\nmoham mad</w>\nti bet\nhouse of\npu n</w>\nas sam</w>\nshado whun\npsy ched\nse duc\nmand atory</w>\nher bert</w>\nsc allo\nstream ers</w>\nproto col</w>\nblock buster</w>\nproduc es</w>\nsch nei\nlau rel</w>\ntri be\ntime hop</w>\npl a</w>\nmod elling</w>\ntv time</w>\nmtv stars</w>\nwi dow</w>\nme tric</w>\nch am</w>\ncon do</w>\nflow ering</w>\nale c</w>\nd ms</w>\ninten sity</w>\nÂ ¨\nmccar tney</w>\nislam abad</w>\nk b</w>\nf fi\nph al\nanal og</w>\nf ond</w>\nh acks</w>\npositi vity</w>\ntreat y</w>\nsub marine</w>\nconne ct</w>\nsel en\ncategor ies</w>\ncu b</w>\norgani ze</w>\nsi k\nquote oftheday</w>\nremin ding</w>\nam or\nloc king</w>\nðŁĳı ðŁı¼</w>\ncomp ound</w>\net te\nb out\nrec ur\nfe rence</w>\nmi zz\ntren d\nhip ster</w>\nfor tress</w>\nforth coming</w>\npreli min\no dyssey</w>\nang p</w>\ndel ici\neven ings</w>\nðŁĶ ¹</w>\ni q</w>\nd w</w>\nda ir\nkathr yn</w>\nchristian ity</w>\nmoon light</w>\nha b</w>\nwh oo\nf bf</w>\nse th\ngenu inely</w>\npa x\nchar ity\ndeplo yed</w>\nb nb</w>\nbu cs</w>\nju dg\ncon ge\nplant ation</w>\nim press</w>\ncar a</w>\nsc lub</w>\nsco py</w>\nland ers</w>\ncompla ints</w>\nb ama</w>\nre build</w>\nx y\nreal ism</w>\nsh our</w>\nle in\nbrac elets</w>\nmer a</w>\nassas sin</w>\nan chor\nðŁĳĮ ðŁı¼</w>\nlin en</w>\ncon fron\nchronic le</w>\ncomm ent\ncat alog</w>\nil les</w>\ngor ge</w>\nme try</w>\njung kook</w>\nlove my\nsent in\nse em\nfit ness\nalli ed</w>\nts man</w>\ndigital transformation</w>\npr an\nlo ft</w>\nmin ton</w>\nalden richards</w>\nen vel\ncher ish</w>\ncertain ty</w>\nzz z</w>\nrhin o</w>\nper kins</w>\nen rich\ncape town</w>\nome ter</w>\nsec tions</w>\nske leton</w>\ndef enders</w>\nðŁĺ Ŀ\npen c\nbri t</w>\nja h\ncapital ism</w>\nðŁ¥ ĩ</w>\nbaz aar</w>\nre me\nex t</w>\nkk k</w>\nconver t</w>\nstor my</w>\nb ye\nkar an\nchry sler</w>\nad os</w>\npre ssed</w>\nsyn c</w>\nation day</w>\ndang er\nbad ges</w>\nrefu ses</w>\nem powering</w>\nly m\nex ports</w>\nadoptdont shop</w>\nðŁĩ ¯\nth c</w>\nawa ited</w>\nfocu ses</w>\nfin ed</w>\no at\nhaha hah</w>\nâģ ©\nn family</w>\nfi ona</w>\nluck ily</w>\nthr illing</w>\nty ping</w>\nout break</w>\ndi es\nhe u\ncraw l</w>\nne sses</w>\no ath</w>\nscri pts</w>\ngee ks</w>\nðŁĲ Ŀ</w>\np b\nmathemat ics</w>\nal is</w>\n________ ________\ngymna stics</w>\nacti vism</w>\nrecommend ation</w>\ngre n</w>\nwa in</w>\ncour ty\nn apol\ncau li\nhor nets</w>\ng als</w>\njo ckey</w>\ndir ty\nat ar\nenor mous</w>\npe st\ngreg ation</w>\nan os</w>\nii ii\ndef ends</w>\nblack historymonth</w>\nat x</w>\nmb c</w>\nlugg age</w>\nwit ch\nco b\nla sts</w>\ncu m\ngg g</w>\nba thing</w>\nn ar</w>\nce bu</w>\nðŁį ĥ</w>\nnavig ation</w>\nmin e\nre jo\nðŁİ Ģ</w>\ngif tide\nre ta\nuse less</w>\npu ll\ndefic it</w>\nal lu\nati me</w>\nit v\ntr illion</w>\npu e\nac ies</w>\nproce dure</w>\nl ori\njen ny\nc ad</w>\nul ously</w>\ndr ac\npromo tes</w>\ning the\ncan u\nwoo hoo</w>\nna omi</w>\nzar dari</w>\nts u</w>\nbe ir\nsd g</w>\nle ver\nwe ber</w>\nab ud\nlun d</w>\ncrow ded</w>\ndeplo yment</w>\nter rain</w>\nken ny\nho f\nwitne ssed</w>\nlo ch\nj k\nbul ly</w>\nw ren\npoe try\ndo ff</w>\nww i</w>\nmo red</w>\ndin i</w>\ncul ture\npromp t</w>\nÂ ¥</w>\nmaur ice</w>\nto pps</w>\nr m\ncor respon\nab out\njewel s</w>\ngi br\neag le\nðŁĺĺ ðŁĺĺðŁĺĺ</w>\nl ending</w>\nsou ven\nç Ķ\ncontemporary art</w>\nestabli shment</w>\nj ong\nâĢ¦ \"</w>\ngat or\npatri otic</w>\nmc coy</w>\nv ape</w>\nhuman e</w>\nfeli z</w>\ncoach ella</w>\nre posting</w>\nste als</w>\nfu ller</w>\nn ering</w>\nat ra\n( -</w>\nbla ke\nhe ather\nwor ms</w>\ndiscipl inary</w>\nrede mption</w>\ny ard\nam in</w>\n\" @_</w>\nd nc</w>\nt ds</w>\nk appa</w>\nne wark</w>\ncomm its</w>\nspe ars</w>\nj ams</w>\nt and\nmsn bc</w>\ninter medi\naim ed</w>\nat ic\nteen th</w>\nobserv ation</w>\nkash mir\nkavan augh</w>\nou l\nsan francisco</w>\nre u\nbel ated</w>\ncho w\npass word</w>\nst ills</w>\ndeta ined</w>\nsar i</w>\nday ton</w>\ndar ren\nitali an\nar th</w>\namu sic</w>\nar bit\nw m\nv m</w>\nhe m\ndou g\nmy r\na sho\npre v\nvin d</w>\nbra h\nsta g</w>\nà¸ µ</w>\npre views</w>\ngu k</w>\ncon taining</w>\nleon ardo</w>\nsad dle</w>\nru shing</w>\nst av\nlon gh\ngam bling</w>\nve gas\nreserv ation</w>\nend ale</w>\nbal a</w>\nfl a</w>\nvari ant</w>\nhe dge</w>\nbulgar ia</w>\nnat ali\nwe aver</w>\nsol st\nencoura ged</w>\nap c</w>\nas parag\nne st\ncycli sts</w>\nfe l</w>\nìĬ ¤\noverwhel ming</w>\npey ton</w>\nj it</w>\na post\nmb le\nble eding</w>\nneighbour hood</w>\na very</w>\nexpre ssions</w>\nmac donald</w>\ngi gs</w>\nmon ds</w>\nillu sion</w>\nn ct</w>\ncam ero\nover head</w>\nmy th\nol y\nvi o</w>\net v</w>\nlau rie</w>\nunve iling</w>\npri or\ncon n</w>\niron man</w>\ndi ff</w>\nday in\ncrit ici\ncon go</w>\nre vision</w>\nwal e</w>\ndirec tor\np ines</w>\nblack pink</w>\ngar ner</w>\ncur ated</w>\nmanit oba</w>\nh ac\ncommon ly</w>\nbar ton</w>\n.... #</w>\nmor tality</w>\nlive smatter</w>\nphilos op\nshor ter</w>\ncon vince</w>\nfre ak\nvend ors</w>\ninsi ghtful</w>\nel ly</w>\nsens ors</w>\ne led</w>\ns berg</w>\nweight loss</w>\nu kip</w>\nsp ur</w>\npriv ate\nqu a</w>\nss c</w>\n, ...</w>\nsupervis or</w>\nadvis er</w>\namaz ingly</w>\nless er</w>\nat es\nmah on</w>\noooo oo</w>\nsar as\npmo india</w>\nwaff le</w>\nun ders</w>\ntoler ance</w>\nsculp tures</w>\nher sh\nkno cking</w>\nsmo ke\ncathol ic\ngri m\ntra veled</w>\nfli p\nge off</w>\ndinosa urs</w>\nsle pt</w>\nscar let</w>\nok i</w>\ncompla int</w>\nob sc\nnam i\nla g</w>\ncross fit</w>\nu fc\nmc cain</w>\nrefe ree</w>\nsad ness</w>\npen ny\nli eu\nmo de\nki er\nvol s</w>\nw is</w>\nel on</w>\nshe a</w>\nba o</w>\nson ia</w>\ncla ire\nem manuel</w>\nmoist ure</w>\ndi gest</w>\nvi ii</w>\nt eller</w>\nch on\naccess ory</w>\nnight club</w>\nfoss il\naw an</w>\nhu sky</w>\nab original</w>\nbrand on\nffici ent</w>\ncou gars</w>\nste d\nad mitted</w>\nigno red</w>\ncontent marketing</w>\nag as\nv ase</w>\nexecu ted</w>\nnegoti ations</w>\nshe ad</w>\nn and\ntab lets</w>\ngo th</w>\nts al</w>\nd fw</w>\non ep\nprotec tor</w>\nsp ho\ngaz ette</w>\nandre as</w>\nss er</w>\ncomp ilation</w>\nha v</w>\ncontain ers</w>\nbro ker</w>\nsoc al</w>\nporcel ain</w>\nhy uk</w>\nair ing</w>\nðŁĴ °\npubli sher</w>\nscen ario</w>\nspart ans</w>\nre viewing</w>\nitu des</w>\ned el\npear son</w>\nba sh\nmau i</w>\na ad\nðŁĮ Ĭ\nli u</w>\nul ate</w>\nprogram mes</w>\nfav our</w>\nweb design</w>\nreal ty</w>\nmotiv ational</w>\ncro sses</w>\n' ...</w>\nbus ch</w>\nadjust able</w>\nar jun</w>\nmist ak\ndimen sion</w>\npi stol</w>\nweigh s</w>\nen y</w>\nunve il</w>\nindy car</w>\ngor don\nf ade</w>\nfran ken\nqual ities</w>\nbet t</w>\nloc ate</w>\nker r</w>\nsp c</w>\nconfu sion</w>\nne e\nluck y\nbas es</w>\ndep ends</w>\nfire fighter</w>\nol a\nre t\nmar oon</w>\nðŁĶ Ĭ</w>\nw am\ndefin ing</w>\nwhe at\nbi l</w>\nÃ© s</w>\nb hai</w>\npsy ch</w>\nta u</w>\nic ans</w>\nthi k</w>\nob ile</w>\ninspec tor</w>\nìĨ Įë\nill on</w>\ngo s\nev angel\nfa i\nsi st</w>\nvoc ation</w>\nbur ge\nchi stan</w>\nrenew ed</w>\nenthusi asm</w>\nen ting</w>\nag ri\nike a</w>\nm sc</w>\naero space</w>\nsens iti\nmemo ir</w>\nhosp ice</w>\nco caine</w>\nder ry</w>\nmechan ics</w>\nĦ à¸\ntin o</w>\nreduc es</w>\ncollec tors</w>\nin justice</w>\nsupp re\nv ana</w>\nab un\nnap a</w>\nsu sa</w>\nos lo</w>\ne ff\nen core</w>\nlic ence</w>\nched dar</w>\nz al\nmoun t\nðŁĴ Ĳ</w>\nthreat ens</w>\n!! \"</w>\narchi e</w>\nfu tsal</w>\nscu ba</w>\njo s\ngn on</w>\nse xi\ns official</w>\ncompar ing</w>\ndomin ant</w>\ntof theday</w>\nfa it</w>\npropos als</w>\ngi ft\ny as</w>\ncn c</w>\nl r\nha b\nreser voir</w>\nbeli efs</w>\ngener al\nmar ti\nt d\nest e</w>\nì ł\nwi l</w>\nðŁĳ ¯</w>\nðŁĶ «</w>\nsp x</w>\net work</w>\nexcer pt</w>\ne instein</w>\nhir o</w>\nsil hou\nteam ed</w>\nper ception</w>\ncorri dor</w>\nmental health\nhin ts</w>\nben ny</w>\ninduc ted</w>\nsw x</w>\nwi desp\nspe ak\ncher yl</w>\ndru g\nðŁĺ ķ</w>\nh f</w>\nasparag us</w>\nmyster ies</w>\nfitz gerald</w>\noff er\ntherap ist</w>\ncare er\ndam aging</w>\nts d</w>\nper u\nwei bo</w>\ny ay\nphoeni x\ndisc re\nmac book</w>\nbar ker</w>\nstig ma</w>\nsp read\nroc kies</w>\nkang ar\nbri dg\npa i\nbi shop\nta iled</w>\ncapsu le</w>\nðŁĴ ĵ\nge of\nroy ale</w>\nshort listed</w>\no ste\nash amed</w>\nch app\nkey e</w>\ncl a</w>\nscreen shot\naustri an</w>\nnati ve\nen ight</w>\njuli et</w>\nmichel e</w>\nðŁĮ ´\ntravel ers</w>\npi l</w>\nfootball er</w>\nwin chester</w>\nðŁĻ Ħ\nazer bai\ngold eng\norganis ations</w>\ninterpre tation</w>\npredat or</w>\nofthe week</w>\nlo gan\npok Ã©\nmari e\ncal la\nt nt</w>\ncin de\nge tic</w>\nfit fam</w>\ngra v\now ens</w>\nðŁĮ ±</w>\nshoot out</w>\nsal is\ncommissi ons</w>\nco he\np tic</w>\nni xon</w>\nhi a</w>\namb ition</w>\nmar ine\ncruel ty</w>\nt k</w>\ncru de</w>\nsal ty</w>\njim a</w>\nmon go\nir ony</w>\non wards</w>\narre sts</w>\nstrang ers</w>\nig er</w>\ncycli st</w>\nra g</w>\nexten ds</w>\ntra dio</w>\nbour g</w>\nmo i\nel la\ne able</w>\nlex us</w>\nau l\nder a</w>\nhistor ian</w>\nmor ton</w>\nti ff</w>\nman ner</w>\nko t</w>\nd k\npo inted</w>\nmar qu\na an\nen ey</w>\ndu blin\non poli</w>\nem ili\nsecre t\nfl o</w>\nâļ ¡</w>\nba j\nste ep</w>\naccompan ied</w>\nrum ours</w>\ndev i</w>\npurch asing</w>\nfi g</w>\npu b\nsch oo\nautonom ous</w>\ngo alie</w>\nx ia</w>\nautom atically</w>\nre vers\nter o\nfu ku\ntitan ic</w>\nshoo k</w>\nsand als</w>\nsee kers</w>\nexc av\nnor dic</w>\nbigo live</w>\nba ke\nr att\nz ak</w>\nne p\nðŁĺ ¤</w>\ncand y\nbilli ons</w>\nbook worm</w>\npp et</w>\nà ³\nsur faces</w>\nsc ars</w>\nphil ip\ndo gg</w>\nci gars</w>\nco te</w>\ntransl ated</w>\ncur ator</w>\nsin dh</w>\nhan gover</w>\nbre wer</w>\non es\nel ton</w>\nðŁĴª ðŁı¼</w>\nmar cu\nelli ot</w>\nrigh te\ndi oce\nru ss</w>\nrail ways</w>\ngrand son</w>\nas cen\napo logy</w>\nawa it</w>\nmob ili\nre spir\nparti san</w>\noli vi\nstri ke\nyo o</w>\nwhite house</w>\nexpre ssed</w>\npu ps</w>\nbed ford</w>\ncul tur\nfro gs</w>\nfly ing\ncav ali\nc ds</w>\nfri ger\nstreet photography</w>\nre solve</w>\ntali ban</w>\nkan g</w>\ncru shing</w>\nju m\nðŁĺ Ĵ\nwilliam son</w>\ntan g</w>\ncur ly</w>\nt man</w>\nveter an\nfa ire</w>\nartificial intelligence</w>\nun anim\npre n\nback drop</w>\nfr ances</w>\noc cer</w>\ndoro thy</w>\nwork ing\nar thr\nconver ted</w>\nday light</w>\nserv ant</w>\npad dle</w>\ncompla ining</w>\nthir ty</w>\nnad al</w>\nak u</w>\nibra him</w>\nad dressed</w>\np iss</w>\ngreen house</w>\nbatt alion</w>\nsi mulator</w>\nout lets</w>\nembroi dery</w>\nðŁĵ ±</w>\nfis cal</w>\nger ard</w>\nsas sy</w>\nðŁİī ðŁİīðŁİī</w>\nvent ures</w>\nmer it</w>\npublic ity</w>\nðŁĳ Ī</w>\nsophistic ated</w>\nc tu\nconven tional</w>\ncondol ences</w>\nisra el\ntra dition\nar an\nte ss</w>\ngla d\nðŁĺĬ ðŁĺĬ</w>\ncorrec tion</w>\nge on\nam d</w>\nor ship</w>\nbe ast\nch ment</w>\nì ŀ\nnic o\nwk nd</w>\nwel s</w>\ncushi on</w>\nbeli e\nvo c</w>\nidio ts</w>\nunder neath</w>\npu ma</w>\ncorn ell</w>\nen ation</w>\nlu l\nswa ch\nab ig\nu rer</w>\nmi e\nform erly</w>\nca f</w>\ner nal</w>\nchor us</w>\njuli us</w>\nsen ator\nâľ į\nwh ir\nsalv ador</w>\nph d\nuni fied</w>\nboo ster</w>\ngraph ical</w>\nw rec\nson ny</w>\nmi z\ndere rs</w>\ns all</w>\nven s</w>\ntusc any</w>\nwi d</w>\ny ong</w>\nkur ds</w>\nw az\ntrol ls</w>\nmac ro\ncat urday</w>\npre ssing</w>\nsa sha</w>\ncent ennial</w>\ngu sts</w>\nem c\nbe fore\nden ise</w>\ncu st\nðŁĵ ¢</w>\nlo oo\nbase l</w>\neng land\ny olo</w>\nar du\nmanife sto</w>\ndo ha</w>\nì ľ\nkni ves</w>\nbourne mouth</w>\nbi bl\nbar b</w>\nal icia</w>\nØ ©</w>\ncom er</w>\ncycl one</w>\ng it</w>\nane ws</w>\ncharacter i\nvent ura</w>\nin tra\nsf giants</w>\nhu t\nbe a</w>\ndar win</w>\nell er\nal v\nre ese</w>\nbl y\nkar an</w>\nconclu sion</w>\nman ny</w>\nfla kes</w>\nunite blue</w>\nnad u</w>\nco pp\ned ges</w>\nlanca shire</w>\ni als</w>\no tta</w>\nphilipp e</w>\nl ent\nche e</w>\nment ors</w>\nfesti val\nan ism</w>\ncompli mentary</w>\nr j</w>\npu g\nd ine\nwe i</w>\ncli ffs</w>\nsar my</w>\nti veness</w>\ntreas ury</w>\nil and</w>\nafter math</w>\nrabb i</w>\nou n</w>\nbou quet</w>\nherit age\nzi on</w>\nsur render</w>\nshen an\nin ks</w>\nkar l\ngh ty\npol icing</w>\nexam ination</w>\nce y</w>\nper su\nmeasure ment</w>\nhydro gen</w>\nlu han</w>\nâłĢâłĢ âłĢâłĢ\nwar i</w>\nÐ¾ Ð\nj y\nfow ler</w>\nmis h</w>\nal fre\nâĺ ĳ\nbb naija</w>\ncat alogue</w>\nrecogn ised</w>\nsa ver</w>\nhu skies</w>\ncol in\nmun do</w>\nsi va</w>\np ng</w>\ndiscoun ted</w>\nman utd</w>\nfre sno</w>\nde vin</w>\nprelimin ary</w>\ntro phies</w>\npla stics</w>\ndu g</w>\npro cu\nindi go</w>\ng ard</w>\ndy lan\npit ches</w>\nground breaking</w>\nin son</w>\nbl ac\nan thology</w>\nf h</w>\nexpl ic\nr ard</w>\nadmi ral</w>\nso chi</w>\nla shes</w>\nsplen did</w>\nen vy</w>\nad v</w>\nsex y\nfestiv ities</w>\nstic king</w>\nbi b</w>\nthr ill</w>\nop p</w>\nari el</w>\nbotan ical</w>\nendur ance</w>\nfe males</w>\nbr icks</w>\nvat ican</w>\nblack pool</w>\nber mu\nbr ough</w>\nroll er\nbi d\nsue de</w>\nsloven ia</w>\nmm ing\nml b\nmed alist</w>\ndi ans</w>\nrehabil itation</w>\nne on\ns go</w>\nli thu\nram os</w>\nz ed\npi anist</w>\ninten sive</w>\nbroad band</w>\nstu dy\npeter sburg</w>\nlu ca</w>\nah hhh</w>\nphys ician</w>\ndill on</w>\ntele com</w>\ngri ef</w>\nmu n</w>\nac ro\nsi ded</w>\ns ly</w>\nblo ws</w>\nclassic cars</w>\ntri um\nar gy\n? :</w>\nh ri\nmarsh mal\nâĢ ĵ\nto pping</w>\nwar saw</w>\ntran sc\npreserv ation</w>\nb av\nre friger\nexperim ents</w>\nä º\ngl it\nsli ga</w>\ng age</w>\nfac tor\nflav ours</w>\nbr ony</w>\nsp o</w>\ncook book</w>\ncarri age</w>\naw ay\nny fw</w>\non ian</w>\nw g\nsimp sons</w>\nro lex</w>\nðŁı ¿</w>\ncro sby</w>\nãħ ¤\ncre di\nsyn dic\npu bs</w>\nali fe</w>\npoor ly</w>\nmac ed\nðŁĺ ŀ</w>\nbehin dthe\nw enger</w>\nn ats</w>\nðŁİ Ł</w>\nrubb ish</w>\nprocedu res</w>\ntypho on</w>\nopho bia</w>\ner do\nfu el\nvi era</w>\nbu mps</w>\nmillenni um</w>\nnew zealand</w>\nlec tures</w>\nit on</w>\nmil ky</w>\nrespon ded</w>\nê °\nlandsc ape\n.. @</w>\nbo ther</w>\nâĸ ¶</w>\nz hang</w>\nhuawe i</w>\ntu ition</w>\ns worn</w>\nin u\ny or</w>\npa olo</w>\nau ditions</w>\nab il\nmalay sian</w>\nho ps</w>\nfe athers</w>\nmp le</w>\nau ts</w>\nÃ£ o</w>\nboun ty</w>\nic he</w>\nì ĺ\nsh q</w>\npin ot</w>\nge ars</w>\ndisapp ear\nvideo games</w>\nt na</w>\nalzheim er</w>\nðŁĮ ŀ\na ji</w>\nunder wear</w>\nswit ching</w>\nsign age</w>\no scar\nec on</w>\ndro w\ncl int</w>\npl ated</w>\ngun dy</w>\nemb lem</w>\nho es</w>\nici st</w>\nnel ly</w>\njuni or\nroad show</w>\nminer als</w>\nat le\nalexand ria</w>\nac claimed</w>\nv ell\nshi va</w>\nad he\nen ne\namne sty</w>\nh ounds</w>\ncouncill or</w>\nðŁĴ ¦\naes the\npart nering</w>\ninflu enced</w>\nmag no\nfl are</w>\nextin ction</w>\ncivil ian</w>\nmaje sty</w>\nva il</w>\nlaw makers</w>\nrac ks</w>\nmc c</w>\nori an</w>\nsp ices</w>\ner rors</w>\nmay er</w>\nco ca</w>\npa i</w>\ns ooooo</w>\nreti ring</w>\nba thro\nðŁĻĮ ðŁĻĮ\nâĸ ª\nsu f\nendor sement</w>\nbuil ding\nbroo ch</w>\npal la\narvin d\nag ent\nkar ate</w>\nr hi\nc tv\nta ine\num m</w>\nba x\nreig ns</w>\nuni of\nenterpri ses</w>\nadel e</w>\nfla ke</w>\nat tire</w>\nbru ce\nba hamas</w>\ngra vy</w>\nsa in\nche ek</w>\ntri vi\nlo v</w>\ne en</w>\nbb lo\nlady gaga</w>\nitt a</w>\n. \"-</w>\ndu stin</w>\nobserv atory</w>\neigh th</w>\nbloom berg</w>\nkh s</w>\nf cc</w>\ngi st</w>\ncommemor ate</w>\nve er\nsexu ality</w>\ned c</w>\nnic ole\nvac ancy</w>\nu ser\nson a</w>\n:' (</w>\ndipl oma</w>\nt end</w>\nup grades</w>\nÅ Ł\njura ssic</w>\ncardi ac</w>\ndr s</w>\nwidesp read</w>\nÃ ł</w>\ndail ies</w>\nvend or</w>\nsim plicity</w>\nwi der</w>\nlen ses</w>\nsupp lements</w>\nde pos\nob served</w>\nvin es</w>\nparti ally</w>\nrenew al</w>\ncollabor ate</w>\nali g\nfin ity</w>\nph u\nzz y\npe tit</w>\nðŁĵ ħ</w>\nz in</w>\ni gu\nsm ack\nfall on</w>\nðŁĵ £</w>\nback wards</w>\ncomp onent</w>\no so</w>\ncompati ble</w>\nbin ding</w>\nzur ich</w>\nthom e</w>\nw ounds</w>\nly ric</w>\nfresh men</w>\nsne aky</w>\nfi bro\ndi et\nemplo yer</w>\nin sect</w>\nh ated</w>\nsch er</w>\nraz or</w>\nn sw\nboo ker</w>\ncalifor ni\nav fc</w>\nÂ °\npreten ding</w>\npep si</w>\nal is\nun titled</w>\nk art</w>\ngrand parents</w>\ne the\no ck</w>\nlux emb\nvisu als</w>\nsmall business</w>\nabdul lah</w>\nmin ho</w>\nsu baru</w>\nh ra\nreve aling</w>\nheart breaking</w>\nclar ity</w>\nam g</w>\nsl r</w>\n** **\nâŀ ĸ\nrecor d\nici ary</w>\nmin ded</w>\nye h</w>\nexce ssive</w>\nknu ck\nicec ream</w>\ntru th\nev ic\nta stic</w>\nant arc\nren dering</w>\n, ,\nmit t</w>\nloren zo</w>\nst patrick\nbound ary</w>\nzi g</w>\nvo cab\nosa ka</w>\nfur n\ntu n</w>\ngu l</w>\ns ounding</w>\nblo gger\nutter ly</w>\ng af\nadv ancing</w>\nl cd</w>\nmar gin</w>\nlifel ong</w>\nsolst ice</w>\nsh ra\nwa its</w>\nple ar\nbre ach</w>\nen ligh\nad er</w>\nitt le</w>\nc ation</w>\nho on</w>\nstu died</w>\n?? ???</w>\nk ash</w>\nev angeli\nps l</w>\nwei ghts</w>\nmet als</w>\nty res</w>\ntur no\nwi e\ncar b</w>\ng ale</w>\nse al\nsun ite</w>\nam ic</w>\npatter son</w>\nÃ¡ n</w>\neu ph\nup stairs</w>\nquali fiers</w>\nkhali fa</w>\napple music</w>\nìĨĮë ħ\nvau ghan</w>\nal ter</w>\ncru iser</w>\nmu a</w>\nt ana</w>\nkat rina</w>\nid ols</w>\nspo iled</w>\nsecre tly</w>\nfi bre</w>\npart nered</w>\num es</w>\ngi ov\ncom et</w>\nscreenshot saturday</w>\nk eller</w>\nfil tr\nfe t\ncon way</w>\npe u\nbad minton</w>\ngi d</w>\nm ound</w>\ndon key</w>\nbu ff</w>\nlea ther\nlar gely</w>\nbro ch\nint ments</w>\nam use\nr k</w>\nsto ve</w>\nimpac ted</w>\ncon t</w>\ncr acks</w>\nprison er</w>\nbar i\ncontrac tor</w>\nori oles</w>\ndomin ate</w>\npol ar\nam elia</w>\ndr c</w>\nðŁĳĮ ðŁĳĮ</w>\nvi st</w>\nsu arez</w>\ninjec tion</w>\nblo oms</w>\nðŁļ¨ ðŁļ¨</w>\nsti ff</w>\npay pal</w>\nsno wing</w>\nthur sdays</w>\ngoo se\nwe dge</w>\neduc ated</w>\nweak ness</w>\nde cker</w>\nabud ha\nbree zy</w>\nÛ Į\nhope ful</w>\no bi\nrai der</w>\ngh am\nde u\nse ve\npar tly</w>\nfu t\ninfu sed</w>\nmer ri\nthan e</w>\nsome time</w>\nhu e</w>\nme in</w>\ncre dit\nsli ding</w>\nran de</w>\ncher ry\ndead pool</w>\nsh ol\nar am</w>\nunder wood</w>\nsky e</w>\ndistur bing</w>\nm nt</w>\npoli shed</w>\nguardi ans</w>\nha dn</w>\npic asso</w>\nari us</w>\nak shay\nir ri\nj h</w>\nhapp en\nla kh</w>\ndal ton</w>\nat the\ns well</w>\nmar sha</w>\nre h\ncour s</w>\nj kt</w>\ntop us</w>\nserv ice\nr ink</w>\nhack ers</w>\ndono van</w>\nhor o\ntc m\nmay hem</w>\ncha se\ndev ops</w>\nken sing\nsc up</w>\nsh ere</w>\nquali fication</w>\nc live</w>\nton g</w>\nn ancy\nmar is\nder dale</w>\nber man</w>\ncinde rella</w>\njol ly</w>\nci c</w>\nloo t</w>\ncollecti bles</w>\nhom icide</w>\ng ge\nepide mic</w>\nsu ites</w>\nmu ddy</w>\ngi mme</w>\ne rec\n- *</w>\ntal la\nlis le</w>\nembro ide\nðŁĩ© ðŁĩª</w>\nveriz on</w>\nve ctor</w>\nbe anie</w>\narti san</w>\nga in\nflo res</w>\nvi gil\nu so</w>\nðŁĻı ðŁı½</w>\ngrin ding</w>\ngh er\nair ports</w>\nrespon sive</w>\nshaf t</w>\ncan cel</w>\nceremon ies</w>\ne me</w>\nat ari</w>\nbru shes</w>\neag er</w>\nbo hemi\nchildren s</w>\nyan kee</w>\nma a</w>\nsuspen se</w>\nmor an</w>\nmac ar\nsun flower</w>\ncre w\nvo id</w>\nke ar\nfashi oned</w>\njen nings</w>\nsunday funday</w>\nsub missions</w>\nme ad</w>\nher man</w>\nwa i</w>\ncrit ically</w>\nle um</w>\nbaek hyun</w>\nfor cing</w>\nco bra</w>\nãģ ®\nacqu ire</w>\nal k</w>\nge ology</w>\npri mar\nimport antly</w>\nire z</w>\nbunde sliga</w>\ncuri osity</w>\nsen a</w>\nstric t</w>\ncon soli\nwin ters</w>\nven om</w>\nchelten ham</w>\nðŁį º</w>\ncen a</w>\nt at</w>\nba in</w>\nglo ver</w>\nunder cover</w>\nas ses</w>\ncar n\nmemorial day</w>\nam eli\ni rene</w>\nch on</w>\nsyn thesis</w>\nspe edy</w>\nmitsu bi\nsla yer</w>\ncompos ite</w>\nunder stands</w>\npe w\ninter rup\nhen ri</w>\nmor row</w>\nan om\nthof july</w>\ng lee</w>\nthre e\nðŁĺ ®</w>\nand hi</w>\nch att\nrenew ables</w>\nye s\ntrans fers</w>\n!!!! !!!!</w>\nbab u</w>\ndu ter\nlo ops</w>\npe ers</w>\no ilers</w>\npau lo</w>\nic ation</w>\nh mu</w>\nwar a</w>\nmer cer</w>\nhom eland</w>\nfu ji</w>\nale y</w>\nyear book</w>\nre m</w>\nre en\nab sur\nbo is</w>\n] :</w>\ncaes ar</w>\nshot gun</w>\nkur dish</w>\no ren\nra e\nanci es</w>\nty pic\nf h\ndef ault</w>\nre plic\nlu k</w>\ntrans actions</w>\nr ys</w>\ninfan try</w>\nðŁį ¾</w>\ncho w</w>\nchick ens</w>\nba gh\nwy att</w>\nay e\ngg i</w>\nbre ws</w>\ned itions</w>\nmi ra\ncommen cement</w>\npre su\nperis cope</w>\nic hi\nguatem ala</w>\nzam bia</w>\npain ts</w>\nwit ches</w>\nwan i</w>\nun dere\ncro y\nvo ws</w>\nus mc</w>\nhear ted</w>\ntheat res</w>\nshu ffle</w>\nle vel\nmul tic\nsquee ze</w>\nfer n</w>\napp et\npost al</w>\nmal t</w>\non board</w>\nld nt</w>\nco o</w>\ns sc\nk ac\nðŁĺ ĩ\nsc rap</w>\nmar cos</w>\ndeal ers</w>\nann u\nmill er\nco ve\nul ary</w>\nvladi mir</w>\nbe ef\nth ur</w>\npick led</w>\nse same</w>\nbengal uru</w>\nmo tt</w>\nkathle en</w>\nhi st\nno tor\ndr ank</w>\ndu chess</w>\nsnow fall</w>\ne ff</w>\ntin y\nj n</w>\nsy our\nspeci alists</w>\nscot us</w>\nbay lor</w>\neve rest</w>\nmali bu</w>\npre m</w>\nharm ful</w>\nl ali\nb ates</w>\ng ye\ndifferen ti\nand ra</w>\ngeome try</w>\nel over</w>\nblack out</w>\n== ==\nko ta</w>\ninter act</w>\nasi an\nla yo\nsamu rai</w>\nfi del\nexhau sted</w>\ngla di\npd t</w>\nspher ic</w>\nanti qu\nguit ar\nstu ri\nho pper</w>\nang le\nf ills</w>\nsla p</w>\nmi th\nrod ney</w>\nong i</w>\nin som\npre venting</w>\ncassi dy</w>\nap ho\nore gon\nlo in</w>\nham mond</w>\ncontribu ting</w>\nf n</w>\ngar ri\nori on</w>\ncomp elling</w>\nescap ing</w>\naim ing</w>\nplu mb\nbi stro</w>\nbe asts</w>\nconcer ning</w>\nbo e</w>\ndo pp\nshop local</w>\nstumb led</w>\nâĤ ¹</w>\nnaz is</w>\nâĢįâĻĤ ï¸ı\ngest ure</w>\nwar ts</w>\nus open</w>\nhi ggins</w>\nchar li\nhang s</w>\nbom bers</w>\n° :</w>\nfe eds</w>\nc ch\nst il\nnic ola</w>\nðŁĵ º\nclam ation</w>\ntro pic\naf ro</w>\nou k</w>\nexpen ses</w>\nder rick</w>\nal ine</w>\nfa w\nreg ard</w>\nim er</w>\nsat in</w>\nthi um</w>\nry der</w>\npear l\nte ss\nmm mmm</w>\nsen ses</w>\nðŁĩ ¹\npositi ve\nexhau st</w>\noccu r</w>\nnor ris</w>\nlil ly</w>\nis les</w>\ndirec ting</w>\nyo fficial</w>\ncount less</w>\nsam ar\non stage</w>\nflo ck</w>\nmir rors</w>\narch er</w>\nmo i</w>\nk d\nvi v\nin os</w>\nsi kh</w>\nle i</w>\nsen sory</w>\nbr its</w>\nkno x</w>\nchest nut</w>\nop y</w>\ncoli seum</w>\nz af\ndi vin\nadap ter</w>\n:) ))</w>\ntem ple\nku n</w>\nhel mets</w>\nt df</w>\ngu ide\nm old</w>\no ids</w>\nlu ther\nhe is\nmonaster y</w>\nsp ree</w>\nk lu\nbrit ney</w>\njagu ars</w>\ngre ats</w>\nc cc</w>\nky rie</w>\nmachin ery</w>\ncric ket\nre ro</w>\nab o</w>\naspir ing</w>\nsemi finals</w>\nale ss\nsig natures</w>\nvar d\nme th\nher bal</w>\nhol den</w>\nking dom\nap or\nreg gie</w>\nore o</w>\npalestin ians</w>\nem mys</w>\nsec tional</w>\nro i</w>\nney mar</w>\nqu el</w>\ncu ll\nl ka</w>\nhaz el</w>\nestim ate</w>\nul ties</w>\ngo w\nbe a\npurch ases</w>\nbel ts</w>\nprotec ts</w>\nm Ã©\ngue ssing</w>\nbb o</w>\nclau dia</w>\nfr acking</w>\njon ny</w>\nel k</w>\ncel tic\nal mighty</w>\nra je\ncourty ard</w>\nig i</w>\ncan es</w>\nðŁĴª ðŁı»</w>\nbank rup\nle thal</w>\nâľĮ ï¸ı\ngraphic design</w>\nvad er</w>\npenc ils</w>\nrough ly</w>\ndan te</w>\nm fg</w>\nconst ell\ncam el</w>\nj b\nbloss oms</w>\nen to\nbalo chistan</w>\ncine mato\nill ard</w>\njer sey\ncon sent</w>\ndent ed</w>\ncon templ\nsch er\nhol i</w>\nlou gh\nst our</w>\na yo\nbegin ners</w>\ncur b</w>\nv hs</w>\na jax</w>\ndu ff</w>\nav eng\ndom est\ncommit ting</w>\nai red</w>\ncha p</w>\nhedge hog</w>\ndisappo inting</w>\nfreel ance</w>\nin land</w>\nchar ms</w>\nðŁĺį âĿ¤ï¸ı</w>\nai sh\nm x\nbuck le</w>\nti dal</w>\nper mit</w>\nbo ating</w>\nra cha\nkend rick</w>\nb ello</w>\nb hi</w>\nple a</w>\nestim ates</w>\nl b\napo logies</w>\njay a</w>\nbb l</w>\nast oni\ninter state</w>\nmain taining</w>\nel bow</w>\nmu p</w>\nep it\nðŁĺ ¡\nviol ations</w>\ndef end\nbe h\nsl c</w>\nam ir</w>\npur i</w>\nti um</w>\nfi fa\nblur ry</w>\nscri m\nðŁĻı ðŁı¾</w>\nma ple\nrel atives</w>\nâĺ Ŀ\ncho c</w>\ncon nor\nâľ¨ âľ¨</w>\nwhi sp\nlist ings</w>\nma ze</w>\nthan king</w>\nri dd\ngrass roots</w>\nshi fting</w>\ndesper ately</w>\ngor illa</w>\nden i\nju les</w>\nstra th\ng ley</w>\nja in</w>\nbu ick</w>\nt anner</w>\nðŁĴ Ŀ</w>\nga e</w>\npri m\nit ors</w>\nn ano</w>\nsepar ation</w>\narmen ia</w>\nbor deaux</w>\nðŁ ħ\npj net</w>\nbu rial</w>\ne bon\nglo ss</w>\nre new</w>\ngri er</w>\nspe eds</w>\ncomic books</w>\nsym boli\npur poses</w>\nãħł ãħł\nspati al</w>\nno table</w>\nci on</w>\nn ps</w>\nho ffman</w>\nnor man\nrt g</w>\ndu sty</w>\nsitu ated</w>\ntr an</w>\nk fc</w>\nem en</w>\nnic kel</w>\nhast ings</w>\nsett ling</w>\ngr it\nl ena</w>\nw aw\nart s\ngu m\nca regi\nle wis\nsapp hire</w>\nrememb er\nembed ded</w>\nt lc</w>\nbl at\nserge ant</w>\nel sa</w>\nboot camp</w>\nbow man</w>\nphoto graphic</w>\npill ars</w>\ndirection ers</w>\nclassi fied</w>\nno is\nve er</w>\nbarre ls</w>\nwh oop</w>\nðŁĺ± ðŁĺ±\nfe male\npetro leum</w>\nmedi a\ne fc</w>\npokÃ© mon</w>\nà¤ ķ</w>\nenthusi astic</w>\nvar un</w>\npro files</w>\npedi atric</w>\nacci dents</w>\ncon rad</w>\njan g</w>\njo jo</w>\nac or\nob server</w>\nl f</w>\nlive stock</w>\nfor gi\nfo s</w>\nel m</w>\nan and</w>\ngo e\nc ere</w>\navoi ding</w>\ngri t</w>\nom an\nthank fully</w>\nscat tered</w>\nnick y</w>\ncylin der</w>\nchees y</w>\ndi ver</w>\nmahe sh</w>\ncav es</w>\near liest</w>\nqu inte\nsubjec ts</w>\nb end\ngul f\nvocali st</w>\nglu e</w>\npat ches</w>\nun stopp\nsny der</w>\ndemonstr ating</w>\npi o</w>\nhor ns</w>\nwic kets</w>\nand the\nr ama</w>\nyo on</w>\nstra ight\nbed time</w>\nor ang\nbul lets</w>\nsa urus</w>\nmin ers</w>\ninci dents</w>\n! ...</w>\nðŁİ ¸</w>\nag ers</w>\nhand les</w>\nstat es\nin ity</w>\nd ons</w>\nincredi ble\nemin em</w>\navi v</w>\nru dy</w>\nmoz art</w>\nfolk lore\nappli ances</w>\nmt l</w>\nfre y\ndi as\nhu a</w>\npage ant</w>\nstri ve</w>\nim prison\nbul lish</w>\nr ana</w>\nal erts</w>\nbb mas</w>\nhy per</w>\nderby shire</w>\nre cre\nre dd\ndebor ah</w>\ncosmo s</w>\nlaw son</w>\nmel anie</w>\npsy cho</w>\nho or\ndoo dles</w>\nsni per</w>\nshad y</w>\nman tle</w>\ncanadi an\nnew year\ninter actions</w>\nsepar ated</w>\ncor ds</w>\nspiritu ality</w>\nap u\nit o\np ct</w>\npel osi</w>\nrebel lion</w>\nse iz\nwor cester\nsec tors</w>\nul i</w>\nsan ta\nÐ µ\nðŁĩªðŁĩ ¸</w>\nbi ased</w>\nclass ical\ngam ma</w>\ndee plear\nemer ge</w>\nback er</w>\nsur ance</w>\nhand crafted</w>\nðŁİ ¥\nfranc is\nmill an</w>\nic i</w>\ncro wn\nwo w\nstri ped</w>\nun fair</w>\nrelax ation</w>\n³ ï¸ı\nembrac ing</w>\nshe alth</w>\npale o</w>\nmartin i</w>\ndist illery</w>\nwr ink\nor k\nna th\nhay ley</w>\ncour thouse</w>\nsi ber\nsa di\nquiet ly</w>\nmel t\nm sm</w>\nme h</w>\nsmart phones</w>\nrel ent\npp ing\nwar wick</w>\nco logne</w>\ngli a</w>\ncot ton\npro g</w>\nlon e\nip sw\nstar ters</w>\nexpan ds</w>\nu mp\nsu ed</w>\nski pper</w>\ninfe ctions</w>\ning le\nÃ ¡</w>\ncler k</w>\ndemonstr ate</w>\nac ar\nðŁĺĤðŁĺĤ ðŁĺĤ\nti bet</w>\nbun s</w>\nalo m</w>\ndemol ition</w>\nssi a</w>\ng st</w>\n[ ]</w>\nso ar</w>\nâĺ Ģ</w>\nðŁĺ ª</w>\nðŁĵ Ĭ</w>\ndee pest</w>\nbeyon d\nare t</w>\natt ends</w>\nactiv ated</w>\ndi mit\nâļª ï¸ı\nhigh lighted</w>\nmagaz ines</w>\nrum or</w>\naz za</w>\nsteph ens</w>\ndol ph</w>\nsho ckey</w>\nmat s</w>\nwe av\nmel an\nserv ers</w>\ntra um\nku sh\næ Ĺ\nbab ys\npa z</w>\na al\nla use</w>\nbreak ers</w>\ncanter bury</w>\nul ture</w>\nmi ri\neuro s</w>\ntane ous</w>\nimpre ssions</w>\ndu tch\nil d\ngh i</w>\npur due</w>\nadequ ate</w>\nl p\nsy ner\nang ler</w>\ndu rable</w>\ngal ore</w>\nro wn\nmg mt</w>\nðŁĵ Į</w>\nlu cia</w>\nâĺĳ ï¸ı</w>\nzay n\nbor row</w>\n. (</w>\nnorth umber\ncru sh\neng a</w>\nsu sh\nextra vag\nt out</w>\nma hal</w>\nali stic</w>\nther mo\ngall eries</w>\nes se</w>\nchi bi</w>\nattrac tions</w>\nlex ington</w>\nlegislat ure</w>\ndocu mented</w>\nresi den\nbrow nies</w>\nw f</w>\nst ool</w>\nplan ets</w>\nsho ppers</w>\nconduc tor</w>\nms p</w>\ntr icky</w>\nfru ity</w>\nend ra</w>\nfeel the\nwhi pped</w>\nhair style</w>\nre fer</w>\noo k\noc topus</w>\naudi ences</w>\nku mar\nafter no\nop tim\nc fl</w>\nni p</w>\ngen i\nalpha bet</w>\nann ab\nlam in\naccep ts</w>\nl ng</w>\nðŁĺ «</w>\nt ine</w>\nac om</w>\ncheer leaders</w>\nt k\ngr on\nv g</w>\nk ung</w>\nja x\ndha bi</w>\nr ss</w>\nmack enzie</w>\nbeir ut</w>\nclean up</w>\ngy psy</w>\nst ell\nbur ger\nhurric anes</w>\neduc ation\nst ina</w>\nâĻ¡ âĻ¡\nunfortun ate</w>\njere mi\nbad ger</w>\nat ers</w>\n: âĢ¦</w>\nter ra\nsubli me</w>\nstu d\ny mca</w>\nmr u</w>\nduter te</w>\nbren nan</w>\nbul b</w>\nmel o</w>\nyl on</w>\nhack er</w>\nc red</w>\ngu d</w>\nas an\npad illa</w>\nembroide red</w>\nvietnam ese</w>\npione ers</w>\nprojec tion</w>\nre boot</w>\nid c</w>\nan ey</w>\npri mer</w>\nsuff ers</w>\nwin ding</w>\np on</w>\nsto day</w>\nmor n</w>\nu ch</w>\nall in</w>\nadid as\neliza beth\ntu ck</w>\no graphy</w>\nðŁļ Ģ\nbe g</w>\nos borne</w>\nghet to</w>\nr h</w>\ncn n\nir ma</w>\nma kin</w>\ncab les</w>\nmur ders</w>\noc ks</w>\ninst a\nal as</w>\nsi k</w>\ncu ff</w>\nla re\nfoo dies</w>\no vic</w>\nat om\ngeome tric</w>\nem pathy</w>\nà¸ µ\ncent enary</w>\nnewsp apers</w>\nadministr ative</w>\nðŁİ Ĭ</w>\nsti ve</w>\ncontrac tors</w>\nle tt\ntas mania</w>\nawesom eness</w>\nden sity</w>\nve en</w>\nprince ton</w>\nfrequ ently</w>\nre ject</w>\ngh i\nmodu lar</w>\nceram ics</w>\nsh ag\nki wi</w>\ncan vas\nsweat shirt</w>\nan j\nti mm\nnapol i</w>\nil er\nappe als</w>\nhamil ton\nma yo\nwe ave</w>\narrang ed</w>\nwhar f</w>\noccu py\nb vb</w>\nas aki</w>\not ter</w>\nnor m</w>\nvi es</w>\nde tox</w>\ntion al\ndere k\nid ad</w>\nad missions</w>\nconstitu ency</w>\nu pper\nwoo t</w>\nallo y</w>\nse ve</w>\nlu b\nun comfortable</w>\ned win</w>\nab re\nd wight</w>\nar che\nvirtu ally</w>\nsp ol\npri e\nai i</w>\ner r\nswit ch\nbar ack</w>\nse ok</w>\ncou l\nwn t</w>\npou l\no live\ncaffe ine</w>\ncardi ff\nnotor ious</w>\nde mp\nex cess</w>\nbar r</w>\nt ford</w>\na jay\nbump ed</w>\nmy thology</w>\nshel ley</w>\nfal con\nshakespe are\nmust angs</w>\nno ted</w>\nbon e\ncivil ization</w>\nsy d</w>\npar sons</w>\nun official</w>\nhy ped</w>\nsp ends</w>\noppo sed</w>\nv ings</w>\nspace x</w>\nnoti fication</w>\ndeci ding</w>\nbio tech</w>\nout si\nsal ah</w>\n! .</w>\nfe d\nss y\nc ms</w>\nbad gers</w>\ncr o</w>\nela ine</w>\nn ba\ndy our\nn ant</w>\nhoney moon</w>\nclimb ed</w>\nconom y</w>\nath a</w>\nm ell\nne bula</w>\nnature photography</w>\njuli e\nbm x</w>\ninve sted</w>\nmon o</w>\nlieu tenant</w>\nwat kins</w>\ntechn ician</w>\no se</w>\nka e\nì Ľ\nmc queen</w>\npre ach</w>\ntrav eller</w>\nflexi bility</w>\nze bra</w>\nreta iler</w>\np ant</w>\nben der</w>\nbrand t</w>\nsqu id</w>\nwar rant</w>\nveri fied</w>\ncas s</w>\npier cing</w>\nhon ours</w>\nt ying</w>\nmor ris\nkis sed</w>\nop rah</w>\npanor amic</w>\nme i\nsplat oon</w>\nwich ita</w>\nari as</w>\ngal li\nindy ref</w>\ngood times</w>\nathe ist</w>\nconfe ssion</w>\now ski</w>\nre pping</w>\nad ditions</w>\nmechan ism</w>\nz im</w>\nj ans</w>\nsu f</w>\ncho pped</w>\nbeg innings</w>\nvitam ins</w>\nãħ¤ ãħ¤\nor th\npo les</w>\nru b</w>\nantarc tica</w>\nindie film</w>\nweb cam</w>\nket ch\nbre tt\ncle ment\nher on</w>\ndefe ating</w>\nhydr o</w>\nbuc ket\nwand ering</w>\nsid ney</w>\nfuture of\nb inge</w>\non ies</w>\nknock out</w>\nadministr ator</w>\nsyn the\nl ent</w>\njan i</w>\nbar ley</w>\npremier league</w>\nner ds</w>\ncr m</w>\nbra s</w>\nbot any</w>\nevol ved</w>\nrot ter\nro wed</w>\ntum or</w>\nweal thy</w>\nÂ Ń</w>\nmon arch</w>\nli shed</w>\nda hl</w>\nðŁİ ĥ\nbu ch\nken yan</w>\nØ §</w>\nred ness</w>\nassemb led</w>\nse mit\nhud der\nshro p\nran i</w>\nlear ning\nmor y</w>\niti a</w>\ngeo graphic</w>\nworl dof\nf b\npho sp\nboo gie</w>\nam ped</w>\n? ...</w>\nche w</w>\ndwar f</w>\nar us</w>\ns sen</w>\nru sty</w>\nrecru its</w>\nh k\ngar de</w>\napp lause</w>\nvol umes</w>\ninvol ves</w>\nta c</w>\nhand bag</w>\ntrans late</w>\nffe l</w>\nse ym\naqu atic</w>\ntrans fer\nzo di\nand r\nacade mia</w>\ncr ater</w>\nte z</w>\nar se</w>\nadap t</w>\ncol oni\nsnow man</w>\nmal i</w>\nhang in</w>\ndi schar\noy sters</w>\npho e\ncolon el</w>\nw ba</w>\nhispan ic</w>\nthri ving</w>\nsh y\nag les</w>\nsales force</w>\ncre me</w>\nso les</w>\nla fayette</w>\nâ ī\nter ia</w>\nach a</w>\nsp erson</w>\ngo go</w>\ncar ly</w>\nthe ore\nam ore</w>\nvo x</w>\naf t</w>\nãĤ ¹\nstap le</w>\nmu ffin</w>\ndi agram</w>\nino x</w>\nsu stained</w>\nav ent\nme ta</w>\narbit r\ndec ay</w>\nado le\nÐ ½\nec ol\nph o</w>\nn k\no cu\ngr anny</w>\nÃ§ a</w>\nluxemb our\nstad t</w>\nalber to</w>\nle vit\nam as\nd x\nor phan\nco bb</w>\nas c\nlo gy\nimmen se</w>\nchan ts</w>\noff line</w>\np ent</w>\nbre x\nw inger</w>\nplan e\ni el</w>\nnichol s</w>\nca thy</w>\nnar uto</w>\nlow ed</w>\n/ //</w>\nignor ance</w>\ncat astro\nyou ts</w>\nsch en\nbuil d\nhaz i</w>\ns ine\ncritical role</w>\ndu g\ndete ct</w>\nlo gs</w>\nen amel</w>\nstpatrick sday</w>\ned die\nco pa</w>\ncigare ttes</w>\nho ff</w>\nkay a</w>\nla goon</w>\nra pha\nair borne</w>\nchoo se\npuer tor\nke v\ngui ding</w>\nfro sty</w>\nbor ough\nmir a</w>\nðŁİ Ĭ\ncade t</w>\nanu sh\nyo gi</w>\ne ger</w>\nfl ing</w>\nslo pe</w>\nnin th</w>\nwe ston</w>\nfoot wear</w>\nf n\nmay weather</w>\na am</w>\npla in\nstair case</w>\nwitne sses</w>\nwork outs</w>\nro bust</w>\ndex ter</w>\nco hort</w>\nðŁļ Ĺ</w>\nsp ell\nha ze</w>\no om\norgan ising</w>\nwild fire</w>\ncont acts</w>\nav on\nmin o</w>\nupd ating</w>\nðŁį »\nli thium</w>\ning ual</w>\nk is</w>\nau ga</w>\nlo com\nde duc\nu da</w>\nth ak\nboy le</w>\nmp er</w>\nhot tie</w>\neri k\nre vised</w>\nis la</w>\ntravel photography</w>\noo za</w>\nen qui\nconfe rences</w>\nclo ver</w>\ng room</w>\ncur ves</w>\nlive on\nper f</w>\ndisplac ed</w>\nbo log\nxx xx</w>\nðŁĺ© ðŁĺ©\nte al</w>\nve ssels</w>\nrain forest</w>\ncal ci\npan ther\ngira ffe</w>\nta sted</w>\nimag ery</w>\npad res</w>\nday time</w>\nbas s\nri pe</w>\nopio id</w>\nnu e\nvin yl\ninvent or</w>\nsen s</w>\nprocess or</w>\nmu t</w>\ngad gets</w>\nbibl ical</w>\nshann on\njacqu eline</w>\ncar y</w>\nthe resistance</w>\nali en\nn vi\nco sy</w>\nbi har</w>\nfo ley</w>\nren d</w>\nmu gs</w>\nfa ken\ncl one</w>\nni allo\ngra bbed</w>\nchi hu\npower house</w>\nn tt</w>\nchero kee</w>\nspon ge\nimple menting</w>\nrh ine\nle one</w>\nðŁį Ģ\npret tiest</w>\ninfra red</w>\nimpro v</w>\nswit ched</w>\ntu bes</w>\ncon tr\nbl k</w>\nprojec ted</w>\nbe aver</w>\nyo t\nbbcra dio</w>\nthi gh</w>\nper secu\napologi ze</w>\nw ack\npo ster\noli ver\naz a</w>\nlou d\n( ?)</w>\nf the\nwomen shi\nspar row</w>\nblu sh</w>\nus able</w>\nsc ales</w>\nit ative</w>\npeu ge\nne eding</w>\nlegg ings</w>\nglam orous</w>\nmat ur\nc z\nwat t\nda b</w>\ntam ar\net sym\nbau er</w>\nheart felt</w>\nh n\nelse where</w>\nbir ch</w>\nalu mini\nhu ck\ne me\nj l</w>\ntraf ford</w>\nd z</w>\npor tions</w>\nana sta\narthr itis</w>\nesp n\nber gen</w>\nviol ation</w>\nyo shi\nc z</w>\nnorthumber land</w>\nclo sures</w>\nðŁĩ¯ ðŁĩ\nsmi ley</w>\nr w</w>\ntel ugu</w>\ninten si\ngre gg</w>\nve ga</w>\ndun geon</w>\nsouth bound</w>\nba il\ndomin ican</w>\nsemi final</w>\nchap ters</w>\nh itch\nvan ity</w>\ntrans iti\nrecomm ends</w>\nsati sf\nbar ca</w>\nqueen s\n( (\nde struc\nstra it</w>\nra vi\ndess erts</w>\nin tru\nhar am</w>\nk os</w>\nfo e</w>\nfat ty</w>\npais ley</w>\nmagn itude</w>\ndri dge</w>\ncom ey</w>\nschem es</w>\nvision ary</w>\nour t</w>\ndown loaded</w>\nðŁĻĮ ðŁı½</w>\ngd pr</w>\nlan i</w>\np wc</w>\ngu ad\nnic est</w>\nstake holders</w>\nre ferred</w>\ngeorge town</w>\narvind kejriwal</w>\nschnei der</w>\nin doors</w>\nall star</w>\nstrand ed</w>\ngen der\nze pp\nma sses</w>\nðŁĲ ±</w>\npati ently</w>\nbl dg</w>\nz ab\nwe arab\nvi vid</w>\nhe ck\nd ella</w>\nsy mb\nje opar\nla ger</w>\nà ª\ncomb ines</w>\nne c</w>\nbr ay</w>\nflo p</w>\ntx wx</w>\njo ys</w>\npon t</w>\npro found</w>\nsur round</w>\nmad hu\nma ble</w>\nay r\nte as\nn sa</w>\nopen ly</w>\ner nest</w>\nãĥ ©\nto po\ng na</w>\nanti oxid\nti an\ne tr\nc ello</w>\nma thi\ngener osity</w>\nb iting</w>\nman ic\nkel sey</w>\nchee ks</w>\nten der\nw th</w>\npron oun\nultimat ely</w>\ngu sta\nari anag\nger ry</w>\nble ed\nred dy</w>\nmic h</w>\nmitsubi shi</w>\noper ated</w>\nsex ually</w>\nma u</w>\ncl lr</w>\nvi ds</w>\nco c\nmel ted</w>\nðŁĮ Ī\nq ld\nite ch</w>\ninstru mental</w>\nend game</w>\nðŁĵ ĸ</w>\nener gi\nbrow nie</w>\ntam il\nat in</w>\ndomin ated</w>\npra ises</w>\nfire place</w>\nsens ational</w>\nmen a</w>\nk arti\nun prece\nru pt</w>\nori ental</w>\nmc cor\ntour naments</w>\nscen ter</w>\nre eves</w>\nprescri ption</w>\nsam e\nfra u\ntru ffle</w>\nem bo\nroman s</w>\nbla sts</w>\ntechno logical</w>\npr at\nb sb</w>\ny ar</w>\ntren dy</w>\nac l</w>\nal ad\nðŁį ģ</w>\no hh</w>\nbankrup t\ntho ven</w>\nregar ds</w>\nis er\nwar wick\nvine yards</w>\nreal m</w>\nniallo fficial</w>\ndo ta</w>\nge mini</w>\nto do</w>\nv able</w>\nÂ¨ Â¨\nla u</w>\nwre ath</w>\nju ve</w>\nnat asha</w>\nle ver</w>\nlor i</w>\nhor ser\ncc tv</w>\nair bnb</w>\nes anders</w>\nsin clair</w>\nema biggest\nhigh school</w>\ncon test\noptimi stic</w>\nt te\nðŁĴķ ðŁĴķ\nss d</w>\nye e</w>\nhel ena</w>\ncon sen\nric ks</w>\njes se\nan ic</w>\nðŁİ ¯</w>\nre acts</w>\nro be</w>\nindepend ence\nvol tage</w>\nm ington</w>\ns ant</w>\nà¸Ļ à¸\n-------- --------\nsentin el</w>\nke tt\nrehear sing</w>\naaaa aaaa\nsof the\nstir ling</w>\nsear ch\nwi gan</w>\nstand out</w>\nsna il</w>\npent agon</w>\nÄ ģ\nch lor\ncru st</w>\nnet any\nchemi st</w>\ndisapp eared</w>\nric ardo</w>\nsp iders</w>\nbo se</w>\nwar ren\nme ssing</w>\nbann ers</w>\ngu el\npar ach\nma id\ncoun ted</w>\nepi le\nbon fire</w>\nspeech less</w>\nse tter</w>\nmeas ured</w>\nrejec ts</w>\nnik ki\nle ster\nforen sic</w>\nfab rics</w>\nalo ha</w>\npre served</w>\nwat ford</w>\ndeta iling</w>\ndar th</w>\nbo u</w>\ncar ly\n... '</w>\ntail gate</w>\nnoti fications</w>\nå ¤\npas sive</w>\ntrous ers</w>\nbalo ch</w>\nro ther\ntypic ally</w>\nÃ ¥\nsp it</w>\nwi z</w>\nsic ily</w>\ntechnic ally</w>\nex pose</w>\nst age\nhu bb\ncre am\ncap s</w>\npo ke</w>\nsle ek</w>\nju ne\ntempor arily</w>\nde z\nawak ens</w>\nl ame</w>\n_ -</w>\nji ha\ntues days</w>\nadvis ed</w>\nadvis ors</w>\nexi sted</w>\ndis agree</w>\nnews room</w>\nlo sers</w>\nworld tour</w>\ndr ying</w>\nal di</w>\nhar ness</w>\nfoot print</w>\nhobb it</w>\np mln</w>\ni ro\nque red</w>\nasse ss</w>\ngaz e</w>\nsa b</w>\nth ian</w>\ní Ĭ\nti f</w>\nob serve</w>\nev il\ndra wer</w>\nswee p\ncor y\nco dy\nkyo to</w>\ncal lum</w>\nn inj\nlau rent</w>\nbe i</w>\nsket ching</w>\ncustom ized</w>\ndu r</w>\nregre ts</w>\nknox ville</w>\nìķ Ħ\nmess aging</w>\ngrac ie</w>\nabun dance</w>\nbi dding</w>\nbre wed</w>\nfl ouri\ntherapeu tic</w>\nalt itude</w>\nho gs</w>\nbur ner</w>\nelec tro</w>\nwonder fully</w>\nhe ater</w>\npost pon\nli very</w>\nr all\nad as</w>\na ac\nsau l</w>\nbrook lyn\nplay house</w>\nâĻ¥âĻ¥ âĻ¥</w>\nchar itable</w>\nin y</w>\nz ah\ncompet itions</w>\nbe av\nplu gged</w>\no is</w>\ndo om\nastron om\nspeci alized</w>\nmax i</w>\nta ps</w>\ncellu lar</w>\ndepre ssed</w>\nfolklore thursday</w>\ncri b</w>\ne mul\në° ©\nfi gh\nru z</w>\ncar lisle</w>\nspe ar\nside walk</w>\nde i</w>\ndepend ent</w>\nlac es</w>\nnh s\nðŁĮ Ļ</w>\nreali zing</w>\nnet work\nric he\nre gin\nre fresh</w>\nst ral</w>\npa thology</w>\npla id</w>\npsyched elic</w>\nhin d</w>\nu ka</w>\nalgori thm</w>\nlin king</w>\nprogre ssi\nfe y</w>\nd ade</w>\nhydr ated</w>\nb ant\nfam ed</w>\ncot sw\nbo ise</w>\nas c</w>\nrac ing\nja vier</w>\nww en\nmar lins</w>\npoo p</w>\nswe pt</w>\ntoni ghts</w>\nwe f</w>\nani me\nslo vak\nâŀĸ âŀĸ\ncla us</w>\nlem me</w>\ncli ppers</w>\nre ls</w>\narianag rande</w>\nr te</w>\nko t\nthal apathy</w>\nhungar ian</w>\nzu ma</w>\ny von\nis u</w>\njour neys</w>\nclin ics</w>\nbe be</w>\nww f</w>\nn ws\nsuper heroes</w>\ner it\nsle ague</w>\nidenti fication</w>\nmo tto</w>\nba i</w>\nsour ced</w>\nill er\nap i\npri se</w>\nunprece dented</w>\ndam as\ntuni sia</w>\ndra in\nundere stim\ne ther\nquarter ly</w>\nrewar ding</w>\nal ham\nwolver ine</w>\ncab ine\nhyp no\nnad ine</w>\nhav ana</w>\nda e\nðŁĵ Ī</w>\ndr on</w>\nread ings</w>\nb ati\npic o</w>\nmer ci\niti an</w>\nwal kers</w>\nel ope</w>\nmi key</w>\ngod zilla</w>\nbur lington</w>\nabu ja</w>\nsocial ism</w>\nat ility</w>\nsh ell\nharry potter</w>\ng no\nab ur\nre leg\nfel ici\nro gen</w>\nneuro science</w>\ninst in\nath am</w>\nvou chers</w>\nj arre\nfu se</w>\ndef ici\nmonte rey</w>\nde port\nmid day</w>\npp ard</w>\nfre ed</w>\name ter</w>\nwil t\nn ingham</w>\npr att</w>\nliber ty\nslo gan</w>\no to</w>\npr i</w>\nco ated</w>\nc pd</w>\nne tt\nil las</w>\nmal awi</w>\nevol ve</w>\naccessi bility</w>\nðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥\nor nament</w>\nb p\nel is\nson line</w>\nchi ro\nfl ick</w>\nib m\nar ak\nen ables</w>\ngar land</w>\nsan e</w>\ncu ties</w>\ntri p\nrotter dam</w>\nn ys</w>\nlam ps</w>\nlu cas\nbo g\nra ils</w>\ntravel led</w>\nhic ks</w>\nen u\nsab ha</w>\nscru b</w>\nhi er\nhart ford</w>\nfo o</w>\nfer nandez</w>\ntre vor\nmat tress</w>\nappo intments</w>\nale j\nfe i\no logist</w>\nsaf ar\noc ta\nsr c</w>\nsha un\nambi ent</w>\ndri c</w>\nbi ker</w>\nshe e\nmust ache</w>\nh ta\nbo one</w>\nher ty</w>\ncar dio</w>\nbra kes</w>\nrec ital</w>\nconsi sts</w>\noverwhel med</w>\ncau l\nrobb ins</w>\nim it\nal th\nur l</w>\nbi bli\non ne</w>\nblack livesmatter</w>\ndiffic ulties</w>\ntel ang\ntall er</w>\nðŁĵ Ĩ</w>\ndeb ating</w>\nbur rito</w>\nmo vember</w>\nstrength ening</w>\nbo e\nte stam\nmirac les</w>\nbase ball\nre nee</w>\nðŁĳī ðŁı»</w>\nal fa</w>\nâĺ ĺ\nunstopp able</w>\nec s</w>\ng mo</w>\ngiftide as</w>\npath way</w>\nfen cing</w>\nðŁİ ¤\nb ham</w>\nra s\nsk o</w>\nd led</w>\nthel ast\nmagn um</w>\nbin ary</w>\nwil de</w>\nwil der</w>\nwh ati\nbarbe cue</w>\nh ism</w>\ncan oe</w>\nkur di\neli ve</w>\nadvant ages</w>\nmad ame</w>\nbi er</w>\nmis sing\nenter tain</w>\nair force</w>\ny ama</w>\nc is</w>\nhash tags</w>\nj is</w>\nve il</w>\ndream y</w>\nten se</w>\nmay ward</w>\nch ateau</w>\nhunt ington</w>\nâļ ĵ\nv all\nup on\nbl ouse</w>\ndun es</w>\nðŁĺ ´\nfert ility</w>\nm ole</w>\ncurren cies</w>\nst u</w>\nber lin\ntoa sted</w>\ndiv as</w>\nwal t\nlar k</w>\npor a</w>\nhit ter</w>\num er</w>\nchil led</w>\nbal ancing</w>\nfa is\ny in</w>\nor tiz</w>\neast enders</w>\nh ate\nur al\nap ril\ntim el\nà ±\nper o</w>\nsto cked</w>\nrespec ts</w>\nth t</w>\nbest friends</w>\ngiving tuesday</w>\nbe ad</w>\ninv ent</w>\nim i</w>\nnap les</w>\ncomb ining</w>\ntok ens</w>\nthir st</w>\nma sc\npar rot</w>\nsp u\ndent on</w>\n* -*</w>\nt res</w>\nsubur ban</w>\nwid th</w>\nsi ve\ncon tender</w>\nsiri us\nlo k</w>\ntroop ers</w>\noutra ge</w>\ntur bo\nfrag ile</w>\nme ssed</w>\ndo h</w>\ndisc ord</w>\nnetany ahu</w>\nre sign</w>\nforgi veness</w>\nmo han</w>\nmun ch\ncam ou\nidenti fying</w>\nenab ling</w>\nhot ter</w>\nthorn ton</w>\njai pur</w>\nar ya</w>\nðŁı» âĢįâĻĢï¸ı</w>\nmu staf\nmaj ors</w>\no ke</w>\ndu ffy</w>\nroh ing\ntil t</w>\nðŁĩ®ðŁĩ ³</w>\nrock star\nshe ep\nhend rix</w>\nra v</w>\nin vention</w>\ndo u</w>\nlagun a</w>\ngru mpy</w>\nsw is\nim pe\n) '</w>\nyou ths</w>\nbun ker</w>\nst ache</w>\noppo se</w>\nindi es</w>\nacceler ate</w>\nml p</w>\ned en\nw ann\nk ail\nakshay kumar</w>\nsu pt</w>\npol ym\nmidd leton</w>\nextra ordin\nwil son\naustrali an\nalumini um</w>\nway ne\nalum nus</w>\nmat ics</w>\ngri m</w>\ner nie</w>\nopp a</w>\ncompetit ors</w>\nrand all</w>\nh ence</w>\ndecla res</w>\npre aching</w>\nsha he\ncan e\nsustain able\nstap les</w>\nle dge\nad ena</w>\ndoctor al</w>\nbur gundy</w>\ndecor ate</w>\nren dered</w>\nri sen</w>\npr ank</w>\ndi or</w>\nbee thoven</w>\nflo or\nac com\nto t</w>\nho dg\ntouri sm\nsay in</w>\nobjec tive</w>\nmar kers</w>\npremi ership</w>\nen abled</w>\ncamou fla\ngi ant\nÑ ģ\nsmo key</w>\nric ket</w>\npan g</w>\nde pending</w>\ns ation</w>\nevol ving</w>\ninter cep\ncen sus</w>\ntof the\nre en</w>\nmendo za</w>\ntrum pet</w>\nmarke ters</w>\nan it\nðŁĻ Ĭ\nnorth western</w>\nv la\nfoto gra\nblackand white\nche wan</w>\nwi g\ntro om</w>\nginger bread</w>\nk n</w>\nro mero</w>\nn fc</w>\nor chi\nfun ko</w>\nsour ce\nf s\nra ped</w>\no st\ntar ot</w>\nann ually</w>\nðŁĺ ¬\nr ill</w>\ndel av\n.. !!</w>\nse s\ncan n</w>\nmedic are</w>\nph el\nape x</w>\nguardi an\nrema ined</w>\nr pm</w>\na Ã±\nstory month</w>\ninstag ood</w>\nneighb our</w>\np ing\nsem ite</w>\nmy stic</w>\nas cot</w>\nmat er</w>\nhand ful</w>\ndang ers</w>\nti d</w>\nana heim</w>\nopol y</w>\nsh allow</w>\nnami bia</w>\ntor ia</w>\nprocu rement</w>\nbig bang</w>\nannoun cements</w>\nprosecu tor</w>\nbeng als</w>\nsal le</w>\nen roll\nga stro\nsugge stion</w>\nba k</w>\nha ul\nbudd hism</w>\nberni esanders</w>\nflu te</w>\nfati gue</w>\ncyn thia</w>\ncho i</w>\nir win</w>\ngu a</w>\nstr ous</w>\nh p\nba p</w>\nsatisf ying</w>\nplay a</w>\nðŁİ ¼</w>\ninst ap\nal ice\nt p\nirri gation</w>\nðŁĩ¬ðŁĩ §\nin tric\nclu es</w>\nple x\nsa x</w>\nhe pat\ndump ed</w>\nsignific ance</w>\nby u</w>\nmedic ation</w>\npro v\ntough est</w>\ncorn ish</w>\nâŀ ľ</w>\nkel ley</w>\nu v\nsi zz\nsi bling</w>\nme st</w>\ndi stor\ndiplom atic</w>\naun tie</w>\nb hat\nson ic\nbren da</w>\npump kins</w>\nro ch\nblack burn</w>\nur ged</w>\nshi a</w>\narrange ments</w>\nfloo d\nsa unders</w>\nlec turer</w>\nnou ri\npopul ations</w>\ndiplom acy</w>\nconsist ently</w>\nðŁ¤ Ļ\nt mund</w>\ncauli flower</w>\nl ily\nvocab ulary</w>\nvari eties</w>\ncoo ker</w>\nup town</w>\nqu ent\nmo sa</w>\nre inde\nvelo city</w>\nspru ce</w>\nsocial medi\ni ber\nvolun tary</w>\nproce ssed</w>\nbal tic</w>\ny ang\nleban ese</w>\nd p\ndol ly</w>\narrange ment</w>\ny uri</w>\ncran berry</w>\nkal yan</w>\nelev ation</w>\ncli ff\npu shes</w>\nìĬ ¤</w>\nsil ic\nco wx</w>\neter nity</w>\nsla ves</w>\nvine gar</w>\nglou cester</w>\ncon tained</w>\nbreaking news</w>\naga inst\nrenov ated</w>\nnorm andy</w>\nhero in</w>\nys m</w>\nmo ds</w>\ngre ek\nun di</w>\ntren ch</w>\nv h</w>\nencoura ges</w>\nhead ache</w>\ngr ange</w>\n: '</w>\never green</w>\nÙ Ĭ</w>\nreck on</w>\nab used</w>\nth ru\ncho ice\nti dy</w>\ncol der</w>\nscho ice</w>\nha in</w>\nbru m\nli ars</w>\nbre it\nyor ker</w>\nsh ack\nhe idi</w>\nmicha els</w>\nsco pic</w>\nfasci st</w>\nplay ful</w>\nca c</w>\nyas ss</w>\nsh ad</w>\n.. ?</w>\nqu en\nram irez</w>\nclif ton</w>\npr s</w>\nbest fan\nâģ ł\ngener ating</w>\nhead set</w>\ndisappo intment</w>\nabstr act\nbo iled</w>\nparen thood</w>\nazerbai jan</w>\nexhib iting</w>\nbom bay</w>\noli vier</w>\nko so\nun lea\nmat ernity</w>\niz er</w>\nsi ves</w>\nr hu\ncol l</w>\nsaskat chewan</w>\nfre akin</w>\nde k</w>\nna g</w>\nstab ili\nðŁį ķ</w>\norgani zer</w>\nbo sses</w>\nar u</w>\nu va</w>\nat able</w>\nta un\nafter wards</w>\nfert ili\nver ge</w>\naz i\nmor ph\nà¹ ģà¸\njer k</w>\ncosme tic</w>\nko w</w>\nstru st</w>\nap ache</w>\npost cards</w>\nfor mul\nì ĭ\nspin al</w>\njack pot</w>\nelec tri\nÃ Ń</w>\nlo y</w>\ngra der</w>\ndiab lo</w>\nar di\nhe sit\nf w\narch ery</w>\npa sh\nthe ories</w>\nrepe al</w>\nre live</w>\nper cy</w>\nâĺ Ĩ\nim in\nsyn chron\nsham poo</w>\ncoup ons</w>\no to\nla i</w>\nthou ght\nluxembour g</w>\nmo v</w>\nðŁĺ ¥</w>\nge mma</w>\nse ated</w>\nm ga</w>\nstrat ford</w>\nun certainty</w>\nshi fts</w>\nest o</w>\nfo ol\nfire arms</w>\ncor rie</w>\nki ki</w>\nappa rent</w>\np ills</w>\nolym pia</w>\nfi d</w>\nelev ated</w>\nde cks</w>\nignor ing</w>\nav alan\nro v</w>\nwhist le\np tsd</w>\nmilit ants</w>\nrobo tic</w>\npac ers</w>\nquil t</w>\nbankrupt cy</w>\nlic h\nper cussion</w>\ncelebr ity\nal s\n( ;</w>\nsu t\npokemon go</w>\nh g\noff s</w>\ngibr altar</w>\nscre ams</w>\nbilli e</w>\ngen ome</w>\nmar in</w>\nbe ams</w>\narch bishop</w>\nem in</w>\nbedro oms</w>\ng ated</w>\nol ly</w>\nwarran ty</w>\nat own</w>\ncudd les</w>\ngun na</w>\nk ic\nvi ve</w>\ncy mru</w>\nnar row\npro b</w>\nle o\nrefe rences</w>\nmanufac tured</w>\ncho pper</w>\nbrun swick</w>\nsem is</w>\ndon ia</w>\nr ye\nman o</w>\nhur ting</w>\n? #</w>\nhol li\ninvestig ations</w>\nc els</w>\nðŁĵ ŀ</w>\nle ster</w>\ntemp les</w>\nsto rey</w>\nmc mahon</w>\ntoi lets</w>\nwo of</w>\nï¸ İ</w>\nle verage</w>\nat om</w>\nnight mares</w>\nvictor ious</w>\nhaun ting</w>\ncustom er\nag i\nyo ongi</w>\nmon ty</w>\nver onica</w>\nw ur\ninti mid\nblan kets</w>\nvolu tion</w>\nj m\nâĺ İ\nam on</w>\njud ith</w>\nðŁĺİ ðŁĺİ</w>\ndistr acted</w>\ndri p</w>\nhurric ane\nand es</w>\nrevel ation</w>\ntro op</w>\nab leg</w>\ncol lin\ntibet an</w>\nwor rying</w>\ninter nationally</w>\neat er</w>\ncamero on</w>\nbrad or</w>\ny uk</w>\nðŁĴĹ ðŁĴĹ</w>\ntra k</w>\nslo pes</w>\nci er\nne a</w>\nol er\nta ka\nalbi on</w>\nvolcan ic</w>\nam n</w>\na fi\nob stac\nface time</w>\nger ing</w>\nn pr</w>\nmetall ica</w>\norgan ic\nðŁĴ ¡</w>\nki dd</w>\nd ances</w>\npemb ro\nwash er</w>\nm its</w>\nom er\nemo tionally</w>\ntan go</w>\nip o</w>\ndo cks</w>\nscan ning</w>\nspec s</w>\ntho m</w>\nthe ology</w>\nemer gen\nom i\ng pa</w>\nselec tions</w>\nun necessary</w>\nima ge\nter s\ninduc ed</w>\ngi gan\nrent als</w>\nsupp lied</w>\nm fa</w>\nshan kar</w>\nlat er\npa jam\ncla ve</w>\nÙ ģ\nma hin\ncarl son</w>\navi an</w>\nano va</w>\nkati e\naj ith</w>\ndesign ated</w>\nchocol ates</w>\ninvestig ators</w>\ngla zed</w>\nprin cess\ner ry</w>\nra gn\nou rable</w>\nhr u</w>\nsun dance</w>\npeuge ot</w>\nsteam punk</w>\ngh lin</w>\ngre ase</w>\nhi res</w>\nz ap\nper ce\nj ill\ntom e\nhe hehe</w>\njoy ful</w>\nmae stro</w>\nni shed</w>\ngene alo\nv ich</w>\np its</w>\nfox es</w>\ngood man</w>\nemer son</w>\nlo bes</w>\ncon verse</w>\no ats</w>\nthom son</w>\nra him</w>\nmal ware</w>\nah i</w>\nman kind</w>\nre sin</w>\nim g</w>\nsw ood</w>\nkin der</w>\nsc roll</w>\nar a\nsak ura</w>\nro bbed</w>\nxi on</w>\nny a</w>\nc ism</w>\nce dar\nbe in</w>\nmour ning</w>\ntor to\nheath row</w>\ndone gal</w>\nbar b\nhydr ation</w>\nk or</w>\nelim ination</w>\nsu pdates</w>\nhill s\nappe ti\nstar red</w>\nko m</w>\ngw en</w>\ndd d</w>\ncra y\nsc anner</w>\npersonal ised</w>\nseren ity</w>\nre design</w>\nmeta ph\nbox ed</w>\njudg ment</w>\nno se\në ¹\ner ad\nac ne</w>\nsupp liers</w>\nener getic</w>\nv om\nas ap\nðŁĶ ¸</w>\nir vine</w>\nhat ch\nla ss\nad ren\nwaff les</w>\naccur ately</w>\nici o</w>\nitt le\nse un\noccup y</w>\nweb cam\nthene w\nent es</w>\nga i\nj w</w>\naccoun table</w>\nvis or</w>\nir rit\nlicen sing</w>\nhudder sfield</w>\ngen ie</w>\nðŁİ ¾</w>\natmo spheric</w>\nten sions</w>\nspart an</w>\nclif ford</w>\nol an</w>\nnorth bound</w>\name en</w>\ncen sor\nu el</w>\nster y</w>\n$ $\nfar rell</w>\nhy ster\ncl t</w>\nse dan</w>\nrep lied</w>\ndescri bing</w>\nmicro wave</w>\nsla b</w>\npro sp\nassi sting</w>\nru bio</w>\ne than\nhh hhh</w>\ngu ay</w>\nz man</w>\nra ise\nroll ing\no e\nn ile</w>\nambro se</w>\nscar borough</w>\nhero ic</w>\ncoo ks</w>\nmor t\nchop ra</w>\nðŁĮ ·</w>\nto b</w>\nshav ing</w>\nstac ey</w>\ndor m</w>\nmotor sports</w>\nwi ki</w>\nfol ds</w>\nsp iced</w>\nstress ful</w>\nliter al</w>\nfu dge</w>\npe ggy</w>\nwa ite</w>\ntre sses</w>\nse sh</w>\npr ic\nðŁİ ħ</w>\nfri ght\nr va</w>\nmumb ai\npo m</w>\ntt v</w>\ncel lar</w>\ntom e</w>\nandro id\ndor is</w>\ntsun ami</w>\ntin der</w>\no ec\nm wc</w>\ndor tmund</w>\nno thin</w>\nl iti\nso u</w>\nbelieve in\nat u</w>\nkno cks</w>\nmag ni\nss sss</w>\nro hit</w>\nine ws</w>\nang i</w>\nm andy</w>\nke ttle</w>\nintermedi ate</w>\nav ant</w>\ncur l</w>\nendor sed</w>\nori o</w>\nur t</w>\nconsider ation</w>\nwi res</w>\nshel ters</w>\nb ino</w>\nvik ram</w>\nimple mented</w>\nly dia</w>\nbu k</w>\nparo dy</w>\nc news</w>\nunder graduate</w>\ncanu cks</w>\nsam i</w>\npolit ically</w>\nro tten</w>\ngh z</w>\ntex tiles</w>\nover load</w>\nmoder ni\nrecre ational</w>\nfli r\nbat on</w>\ntypo graphy</w>\nov ation</w>\nintrigu ing</w>\npilgri mage</w>\nal ge\nad ays</w>\ntcm party</w>\nsp elled</w>\ncur ls</w>\nboo ze</w>\nste m\nann es</w>\nir ls</w>\nspon ge</w>\nsho pper</w>\nsig nation</w>\nbra ss\nmi stress</w>\nle ah\nbeg inner</w>\nlau derdale</w>\naugu st\npre school</w>\nta ping</w>\ntai pei</w>\nexecu tives</w>\nb d\nrhe tor\nesc or\nimmun o\ndeeplear ning</w>\nstat ues</w>\nit us</w>\nmanu script</w>\nly ric\ncor vette</w>\nmol ly\nla ge</w>\nde p</w>\ncn bc</w>\nle st\nje ssi\nfi fe</w>\ngriff ith</w>\noppo sing</w>\nran g</w>\ndr ills</w>\nrespec tful</w>\np ity</w>\nd ell\nhar ding</w>\nplay boy</w>\nblo ke</w>\nshut out</w>\nk ili\no sp\nse attle\nbc poli</w>\nmis es</w>\njourn als</w>\nteam ing</w>\nes ther</w>\nfre ddy</w>\nĶ ï¸ı\nmetr ics</w>\nno tre\ngar ry</w>\nfor ty</w>\nnavi gate</w>\nperio ds</w>\nbened ic\nj id</w>\nda w</w>\nance stors</w>\nrestor ing</w>\ncon g</w>\naller gy</w>\ntit anium</w>\nc ence</w>\nlean ing</w>\nab bas</w>\nv ast\nuc f</w>\nroof ing</w>\ne man\nseve rely</w>\nvo gue\nve au</w>\nin bound</w>\nd z\ntane ously</w>\nstret ching</w>\nman chester\ndr yer</w>\ndav is\nkan th</w>\nthe game</w>\nit ted</w>\nre tain</w>\nel les</w>\nconge stion</w>\nfrat ernity</w>\nol lie</w>\nlo ki</w>\nfre ely</w>\ncho o</w>\npon y\nsc ep\ntab ly</w>\nbal t</w>\nrock n\ndi me</w>\nlo gging</w>\nðŁį ·\nad u</w>\nha voc</w>\nwater ford</w>\nchar is\nswee tie</w>\nrun ning\nner d\nerdo gan</w>\nz ara</w>\nweigh ing</w>\nfif ty\npre cise</w>\nlow ell</w>\nkurdi stan</w>\nr yo\nor th</w>\nsyn th</w>\nlin ers</w>\nphenomen on</w>\nart illery</w>\nil legally</w>\nconstru ct</w>\nnostal gic</w>\ngar th</w>\nal ta\nshel ton</w>\na sean</w>\nw ander</w>\ndur ban</w>\ndi versi\nbon o</w>\ncl on\nle man</w>\nsh un\nobstac les</w>\nappet ite</w>\nfe eder</w>\nrespir atory</w>\ndi xie</w>\nformu la\nan to</w>\nso ber</w>\nextin ct</w>\nau c\ning les</w>\nlegitim ate</w>\n; ;</w>\nmin nie</w>\nipsw ich</w>\ndram atically</w>\nðŁĳı ðŁı¼\ningh am\nmilit ary\nmon et</w>\nus navy</w>\nfor k\ndun no</w>\nplay er\nq otd</w>\nst oo\nex or\nethiop ian</w>\nfilm fest</w>\npe red</w>\nc ate</w>\nsau di\nin ner\nsin cere\ntion ality</w>\nale e</w>\nde eds</w>\ncooper ative</w>\nir onic</w>\ncro cod\nbr ary</w>\npost season</w>\ncam per</w>\ncan ary</w>\ne in</w>\nexten sions</w>\nnb d</w>\nsher wood</w>\nspo kane</w>\nhu mp</w>\njit su</w>\nê ¹\ndar yl</w>\np si</w>\nstab bed</w>\noffer ings</w>\nexpe cts</w>\ncav al\nbody building</w>\nfr aming</w>\nf ca</w>\nye arly</w>\nbom bed</w>\nsk il\nresear ching</w>\njud iciary</w>\ngree ted</w>\ntu dor</w>\nmil o</w>\ninnov ate</w>\nðŁĺ Ľ\nr hs</w>\nru by\ncontribu tor</w>\nfam er</w>\nsoci ally</w>\nm lin</w>\nfi ery</w>\nut ter</w>\nbeau t</w>\nit os</w>\nde voted</w>\nrain bow\nbar ney</w>\npe ren\nar jun\nr na</w>\ngab by</w>\nut i</w>\nhann ity</w>\npick le</w>\nser v</w>\nqu akes</w>\npp e\nfe m\nwh itec\nj n\nvictor ies</w>\nðŁ§ ¡</w>\ngol fer</w>\ncongratul ates</w>\nresul ting</w>\nmechan ic</w>\nur ve\ncen tered</w>\nkie v</w>\nan s\nin cub\n< <\nc mo</w>\nbestfan army</w>\ndap h\nen ham</w>\non cology</w>\nku sh</w>\nt xt</w>\nori ented</w>\nfashion able</w>\nc sr</w>\nsa hara</w>\nr ack\npd p</w>\nhan son</w>\nà¸ ĩ\nti ers</w>\nra r</w>\npan am\nin sky</w>\nsa hi\ntestam ent</w>\nasth ma</w>\nin her\nfisher ies</w>\nor der\nho we</w>\ngall on</w>\nep is\nsuz anne</w>\ndrow ning</w>\npaneli sts</w>\nðŁĺ ²</w>\në ¦\nal ach\ncommemor ative</w>\nat tribu\nðŁĳ »\nmo o</w>\nvisi onal</w>\nweek sary</w>\ngu st</w>\nak in\npoin te</w>\nee e\ndi spar\nni pp\ndent al\nst all\npi an</w>\nbor e</w>\nul ster</w>\ntic k\nir r\ntae hyung</w>\nmicro phone</w>\nbermu da</w>\nga ard</w>\nel er</w>\nplumb ing</w>\nhu gely</w>\nâļ« ï¸ı</w>\nrace way</w>\ncam bridge\nmar cel</w>\nburn ley</w>\nto ast\nholly wood\nfa sting</w>\nme red\nhib ition</w>\nca pped</w>\nbenef icial</w>\now ning</w>\ncont amin\narab ian</w>\nto on\ncap ac\nhul u</w>\nsm ir\nnutri ents</w>\nse in</w>\ngraph s</w>\ncon ditional</w>\nðŁĳ ħ</w>\nor ac\nplay in</w>\nnor the\ntor nad\nmar ian</w>\nju mbo</w>\nlex i</w>\nincredible india</w>\nroad to\nuk one</w>\nconfu sing</w>\nsp h</w>\nshan k</w>\npi ed\nmq m</w>\npositi vely</w>\nsher ry</w>\npath ways</w>\nconsi ders</w>\ntof u</w>\nargu ments</w>\nresil ient</w>\nche tt</w>\nwith dra\nter o</w>\nated ly</w>\nsw ana</w>\nhe b\nfli ght\nhar ley\ndecre ase</w>\nkind le\nbook shop</w>\n³ ï¸ı</w>\nmarty rs</w>\nsm ur\nmc cl\nconcer to</w>\nsti me</w>\nrejo ice</w>\napp lau\ncle ment</w>\nmer kel</w>\njai me</w>\nim mortal</w>\nisle of\nmar co\nyoutu ber</w>\nstal king</w>\nme too</w>\nst ack\nsp ouse</w>\nu st</w>\nlu v\nâļ¾ ï¸ı\neque strian</w>\nev ing</w>\nfl in\nnick name</w>\nthe big\nas ar\nst acks</w>\nwal ker\nbor a</w>\nkidnapp ed</w>\nhur ling</w>\nhumb old\nrec alls</w>\nco pper\nann is</w>\nse o\nmer ger</w>\nmu ir</w>\nad dy</w>\nðŁĴª ðŁĴª</w>\nbe x</w>\ncr acy</w>\ncon an</w>\ncongratul ation</w>\nmid st</w>\nâĻ ¬</w>\nfor bi\nop tic</w>\ncr ate</w>\ncrocod ile</w>\nmad agas\nsecur ing</w>\nast on\no gue</w>\nsavi or</w>\nsalis bury</w>\nlove it</w>\nfuji film</w>\ncast les</w>\nas st</w>\nar rows</w>\nsp acious</w>\ntr s</w>\npoly vore</w>\nprogre ssion</w>\nm ri</w>\nnel son\nbi m</w>\nindic ator</w>\no da</w>\npe pe</w>\nre signation</w>\ngu t\nsne aker</w>\nlog ically</w>\naz y</w>\nare lla</w>\nte aring</w>\njo shi</w>\nssion ism</w>\nq pr</w>\nmari ah</w>\np x\nble ed</w>\nmi an</w>\nmed ley</w>\nwe iss</w>\nker ry\ngat ory</w>\nat al</w>\nmadi son\nav enger</w>\nnab y</w>\npl and</w>\ngi les</w>\nfresh water</w>\nd ington</w>\nta j</w>\ndemonstr ates</w>\nn tv\nbul bs</w>\nsunday morning</w>\npe ake</w>\nsouven ir</w>\nwa h\nton nes</w>\nm kt</w>\ncomplex ity</w>\ncon den\nross i</w>\nb ing\ny ds</w>\nsu k\nn go</w>\nmid land</w>\nol y</w>\nlife is\nri pple</w>\nmo reno</w>\ndd ers</w>\ntu s\ná ĥ\nbou l\nx a</w>\nhol dings</w>\nwn y</w>\nshadowhun ters</w>\nke i</w>\nasp ire</w>\nm ous\now en\nso ak</w>\nskir ts</w>\nmoun taine\nstor ming</w>\nch rome\nri ots</w>\nsar ato\namaz e</w>\nless ness</w>\nnav ar\ncrit eria</w>\nra fa</w>\nindul ge</w>\nay er</w>\npor to\nnam o</w>\n........ ........\nyi elds</w>\nval le\nj h\nmac ron</w>\nsa ins\ndur ant</w>\ntra ilers</w>\nwo t</w>\nconfeder ate</w>\nsh rin\nid ol\nform ally</w>\nten e\nmotor cycles</w>\nthan g</w>\nno de</w>\nbang er</w>\ndal y</w>\np ats</w>\nenroll ment</w>\nau ctions</w>\nat al\nar bor</w>\nlo gos</w>\nde arest</w>\ntrans action</w>\ndom ingo</w>\nfle a</w>\nser mon</w>\nde ck\nsin cere</w>\nquesti oning</w>\njuli o</w>\nwas p</w>\npre tz\narmen ian</w>\nk ham\ninflam mation</w>\npicture sque</w>\nacci dental</w>\nfilm makers</w>\nðŁĺ ļ\nðŁĴ į</w>\nca sey\nso b\nyee zy</w>\ngood will</w>\nparag ra\nss ly</w>\nfe ather\ndy ed</w>\nassassin ation</w>\nna de\nb cs</w>\napp lies</w>\nfemin ine</w>\nfe u\next ent</w>\ndepu ties</w>\nl ack\npsy chic</w>\ngo i</w>\nkill ings</w>\npse u\nðŁ¤ ª</w>\nun c\nmar l\ntan e</w>\nmck enna</w>\nsur fer</w>\ninflu ences</w>\nfree way</w>\nhack ney</w>\nmal aria</w>\nel and\nte au</w>\nrema stered</w>\nØ ±</w>\nraz or\ngg y\ncor ro\nlak sh\nfla ir</w>\nhonest y</w>\nhoor ay</w>\nde pp</w>\nam c\nwedne sdays</w>\nq a\ned its</w>\n- $</w>\nse villa</w>\ndou bled</w>\nhuman ities</w>\nc cot</w>\nsom os</w>\nr ine</w>\naf a</w>\nsi oux</w>\nre construction</w>\nwel ding</w>\nth reads</w>\nam ish</w>\nencoura gement</w>\npo der\nbo ck</w>\nbal m</w>\np tions</w>\nstand up</w>\naccompli shments</w>\nguar ding</w>\nconvic tion</w>\nac ion</w>\nnapo leon</w>\ndepic ting</w>\natt ack\nsu i</w>\nwear able</w>\nâĸª ï¸ı</w>\npot ter\nesc ort</w>\nvis e</w>\nto ts</w>\nbo on\nevent profs</w>\nangu lar</w>\nwomenshi storymonth</w>\nbar row</w>\nsch i</w>\nac comp\nti k\nl end</w>\nkensing ton</w>\nwol fe</w>\nst acked</w>\ncra shing</w>\nexhi bit\nwing ed</w>\nsab rina</w>\nma sa\nk ms</w>\nalway s\net t</w>\npla sma</w>\ncounsel ing</w>\npick les</w>\nnfl draft</w>\nmr s\ninev itable</w>\ncoura geous</w>\nstaf ford</w>\nwriters life</w>\nho s</w>\ne j</w>\ngh yun</w>\ntrade mark</w>\nadri an\ninfluen cer</w>\ncoron ation</w>\nra ging</w>\nexplo red</w>\nusa f</w>\nexcep tion</w>\neu x</w>\ntan ker</w>\nsw ami</w>\npac ket</w>\nðŁĳ¨ âĢį\nf en</w>\nshe en</w>\na ero</w>\nj l\nre gal</w>\nnw t</w>\nau ster\nmeh ta</w>\nchar ge\na ste\nb ate\ninf eld</w>\nracec ourse</w>\ncollap sed</w>\nfle ece</w>\nz il\nal lie</w>\nalternati ves</w>\ngeor ges</w>\nðŁĵ į\nquir ky</w>\nfc b</w>\nnat geo</w>\nphilanthro py</w>\nbra i\nevery day\nðŁĲ °</w>\nach ers</w>\nja an</w>\nfin es</w>\nq i\nfisher man</w>\ndistin ct</w>\ngri mes</w>\nnation alist</w>\ncomm ence</w>\nro wn</w>\nâĢ ³</w>\nz ing\nf ter</w>\nhr w</w>\nbaro que</w>\nbl ender</w>\nkitt y\nhoo ks</w>\nc ited</w>\nw anda</w>\nconsen sus</w>\nreinde er</w>\nan and\nsupp ly\nme ds</w>\nv n</w>\nol ph</w>\nrat chet</w>\nshel don</w>\nsecur ities</w>\në°© íĥ\ncro m\nmosqu ito</w>\nj eric\nim mac\ndimen sions</w>\nâ ¤\ndi ssi\nsponge bob</w>\ndami en</w>\nsteven son</w>\njo anne</w>\ndel ish</w>\nyi kes</w>\nthan x</w>\nsurve ys</w>\npostpon ed</w>\nalco holic</w>\nal ised</w>\nðŁĻı ðŁı»\ndo ch</w>\nsen tim\nmered ith</w>\ncom pares</w>\nb ago</w>\nhappy days</w>\nmo ss\nãħ ĭ</w>\nne c\ngn ment</w>\nfrustr ated</w>\ncomb in\nri v\nec lec\ncol lo\ncompli ment</w>\nactor slife</w>\nct to</w>\nnic ar\nop hon\napar the\nman t\nja de\ntrol ley</w>\noptimi zation</w>\neye on</w>\neco logical</w>\nqui st</w>\nep he\nà¥ ĩ</w>\ncin co</w>\nappo ints</w>\nold school</w>\nc pr</w>\nbehavi oral</w>\nmin aj</w>\n:- (</w>\ntag ging</w>\nev al\njo aqu\nðŁĺ «\nha k\nde me\njama ican</w>\nso s\nhy att</w>\nhand book</w>\nlibr arian</w>\nhanni bal</w>\npump ing</w>\nch om\nf man</w>\nga i</w>\nhu ll\nrespon ders</w>\ngreen ville</w>\nn us\nvau gh\nðŁİī ðŁİī\nta xi\ngold berg</w>\nman tra</w>\nte ase</w>\nforbi dden</w>\nmetho dist</w>\nati vity</w>\n* ***</w>\nec t</w>\nmc gr\nĦ ëĭ\nse b</w>\namid st</w>\ndisapp ear</w>\nthy ro\nphili ps</w>\ner ina</w>\nv icious</w>\nstream er</w>\nmillion aire</w>\nma p\nstr ick\nhack athon</w>\ngh a</w>\ned ic\nmi ka</w>\npe ck\nill i</w>\nanto ine</w>\nar ca\nop tic\nma ure\nðŁĩ¦ ðŁĩº</w>\ncla shes</w>\nman ly</w>\nâĺ ģ\nal var\nand res</w>\nme i</w>\nel m\nww ww</w>\nal tered</w>\nl te</w>\nê¹ Ģ\nmo jo</w>\nfor rest</w>\nthal ai\nnon t</w>\nspee ches</w>\nacknow ledge</w>\nign ite</w>\nx factor</w>\nðŁ¥ Ĥ</w>\nmead ow\ndisru pt</w>\ndebu ted</w>\nscrim mage</w>\npharmaceu tical</w>\nfi dd\nfound ations</w>\nphilosop her</w>\net al</w>\npubli shers</w>\nbo ys\nc ke\nru gged</w>\nopti mism</w>\nre be\nphil harmon\nnar cis\nral lies</w>\nlu is\ngo blue</w>\nfol ded</w>\nun acceptable</w>\noptim al</w>\nli sa\npol aro\n+ .</w>\nen za</w>\nâĿ £ï¸ı</w>\nmon opoly</w>\ngrace ful</w>\ndair y\ndu a</w>\ndiffic ulty</w>\njudge ment</w>\no si\nmer sey\nflu x</w>\nnew found\nter ns</w>\ndimen sional</w>\nin vic\nal ba</w>\nam it</w>\nabudha bi</w>\nalger ia</w>\nautom obile</w>\nthe ad</w>\nlo tion</w>\nacceler ator</w>\nvac ant</w>\niti on\nlu f\nal ic\npl l</w>\nbla zing</w>\nba z</w>\nsen e\nðŁĳ ¼\nvilla ins</w>\ndirec tory</w>\neis en\nto ck</w>\nbroch ure</w>\nri pp\nhb d\nzayn malik</w>\nnic he</w>\nlo lol</w>\ncertific ates</w>\nmor se</w>\nfac up</w>\nx ham</w>\nun wanted</w>\nim ports</w>\ncarne gie</w>\nfan sign</w>\nmo u</w>\nr alph\ndestroy er</w>\nsw ing\ntrek king</w>\ncili ation</w>\npit bull</w>\ng aps</w>\nho well</w>\ndefin itive</w>\nmc le\nf ps</w>\net z</w>\nbol ly\nlyn n\ngan o</w>\nat ure\nfur suit\nco il</w>\nna v</w>\nbut ts</w>\ntro jans</w>\neu re\nen ko</w>\nsch umer</w>\nhorri fic</w>\ninstall ment</w>\nbr b</w>\nsubur bs</w>\na bel</w>\nvi r</w>\nde sh\ncun ningham</w>\nðŁĲ »</w>\nspan n</w>\nsch we\nke mp</w>\ntr u</w>\nste alth</w>\nqu es\nle w</w>\ndeli ghts</w>\nko ch</w>\nhu mili\ncr iti\nil t</w>\nsp ells</w>\nmi ley\ncar ic\nðŁį ´</w>\nlc fc</w>\nsubstitu te</w>\noun g</w>\n? !!</w>\naf fir\npredic table</w>\nclass of</w>\ner r</w>\ncy press</w>\nchand ra</w>\nage ing</w>\n__ __</w>\nther land</w>\ndon caster</w>\nel in\nyo shi</w>\nsail ors</w>\nhar ris\njo anna</w>\nniger ians</w>\nh ers</w>\npla gue</w>\npro cra\nk no</w>\ncan ton</w>\nbusine s\nun h\npra kash</w>\nc in</w>\nbow en</w>\nco ating</w>\nm als</w>\nbe gging</w>\nsmith son\nponti ac</w>\nsp ies</w>\ndam ian</w>\npl ine</w>\nund ant</w>\nal ta</w>\none ss</w>\nshame less</w>\nda q</w>\nbb m</w>\nwal es\nstam pede</w>\nser um</w>\nÙ Ĩ</w>\ncataly st</w>\nx n</w>\nab sc\nfree zer</w>\nch un</w>\nari os</w>\nmc cre\nfore head</w>\nhe ars</w>\ndamas cus</w>\ntac oma</w>\nardu ino</w>\nencoun ters</w>\nstan ton</w>\nlg b\nab as\n\" ..</w>\nke te\ndrac ula</w>\nele m</w>\ng ne</w>\nzepp elin</w>\nla brador</w>\npul p</w>\nop tional</w>\nor n\nrussi ans</w>\nsan itation</w>\nhil ary</w>\netsym ntt</w>\npen alties</w>\nau st</w>\nig ans</w>\nolympi an</w>\nmedic aid</w>\nvers ace</w>\nva pe\nre stra\npe ep\nsexi est</w>\nst alls</w>\ndi le\nthe a</w>\npunjab i</w>\npupp y\ntuesday motivation</w>\nðŁĵ ļ\nthe flash</w>\nroc ket\nmo dest</w>\nchihu ahu\non na\nk sa</w>\nhur dles</w>\nca ve\nfail ures</w>\nsp lit\nbo ho</w>\ngur l</w>\ndisappo int</w>\nho ward\nnug get</w>\nfran z</w>\nstal ert</w>\nkaz akh\nfor getting</w>\nsch ri\nag ate</w>\nam at</w>\neve rett</w>\ndu et</w>\nveter inary</w>\njuli an\nch ills</w>\nbra ve\nghost busters</w>\nlan do\ngre ets</w>\nprofit able</w>\nd Ã©\nti r\nze e\nom en</w>\npd x\ngray son</w>\nhar i\nfix es</w>\nstab bing</w>\nswim mer</w>\nsymb ols</w>\ncompli ments</w>\npo se\nfunc tioning</w>\nth nx</w>\ngi r</w>\ncorpor ations</w>\nbar low</w>\nlo e</w>\noff season</w>\ndistin ctive</w>\nmarvel ous</w>\nnik on\nenri que</w>\nky u</w>\nja ws</w>\namo to</w>\nlom bar\ntravel blogger</w>\nfa h\nouri sm</w>\ntri stan</w>\nso e</w>\nce ase</w>\nðŁı ħ</w>\nz ac\nmck enzie</w>\ntaxpay ers</w>\nswim suit</w>\nbl o</w>\nles ley</w>\nkan sas\nw ks</w>\nki el</w>\nprovo king</w>\nmy les</w>\nstr ing\nkangar oo</w>\ngalac tic</w>\nfif th\ns ke</w>\nwe ir</w>\nll is</w>\nmat ory</w>\nðŁĩ ¿\nun ci\nre productive</w>\nroo ting</w>\nti des</w>\ngad get</w>\n.... ......</w>\nalex ander\nbow ler</w>\nscre w\napo log\neri ka</w>\nwal ters</w>\nshet ty</w>\nlan e\nban ter</w>\nas ant</w>\nme so\nv ain</w>\n\" \"\"</w>\nus i</w>\nfer din\naccomp lish</w>\nman sfield</w>\nbom bar\ncollabor ating</w>\ncla p</w>\nit ure</w>\ns da</w>\nsmo ky</w>\nna k</w>\nim person\ncar la</w>\ncom ra\nbur gl\nlo co</w>\nti es\nin hi\ntrac ey</w>\nse is\ndiss er\nrr rr\ndra y\nprote ct\ncor ona</w>\nhun ger\nck en\nc eli\ntrou bled</w>\npredat ors</w>\nfic tional</w>\nshav ed</w>\nriche st</w>\nmetab oli\nful ham</w>\ngro oming</w>\nmono chrome</w>\nwa sting</w>\nas co\nast e</w>\nti sta</w>\nremedi es</w>\nung soo</w>\nsouth end</w>\nperman ently</w>\nbu mble\nprocra stin\nident ical</w>\npractic ally</w>\nma scul\nsu ke</w>\nassu red</w>\nval erie</w>\ndevi ant\ngrizz lies</w>\nthi er</w>\npur a</w>\nne pal\nnot ts</w>\nbil ateral</w>\nspo il</w>\ncar mel</w>\ncine matic</w>\nph l</w>\nni fty</w>\nma o</w>\nhypo cri\nla ser\npan try</w>\nmathemat ical</w>\nel isa\ncoordin ation</w>\nbel mont</w>\na it\nradi ant</w>\nbo iler</w>\nman g\nf ag\ncr c</w>\nh ams</w>\nbr in\nâ¬ĩ ï¸ı\nfamil ia</w>\nâĿ £</w>\nsab er</w>\nru pert</w>\ngg an</w>\nrit z</w>\nmic h\nsal ford</w>\nle vi\ngra l</w>\nðŁĴ ¤</w>\nn ino</w>\nce d\nbusiness man</w>\nul tr\nsim ply\ncompre ssion</w>\npa ins</w>\nhal t</w>\në°©íĥ Ħ\nlandsc aping</w>\nn f</w>\ncroo ked</w>\ner d</w>\nitt in</w>\nddle ston</w>\nsur passed</w>\nino a</w>\nda g</w>\nbl en\nexten ding</w>\nat ing\nal gae</w>\nball er</w>\nu mar</w>\nsnoo ker</w>\ncol lu\nflo wn</w>\nthu b</w>\nridic ulously</w>\nki sh\nop le</w>\ndi re</w>\nas ser\nari sto\nsc iss\nh ating</w>\ntrou ble\nsyl via</w>\nsuc cul\nplo ts</w>\nsincere ly</w>\nal er\nlaure ate</w>\nbr ack\natt n</w>\nrif les</w>\nme to\ncollec tible</w>\ncu omo</w>\nconte stant</w>\nconsist ency</w>\nant z</w>\nrang es</w>\nabig ail</w>\nde b</w>\nmini ster\ngrow ers</w>\nan oo\nhoo ver</w>\ndream er</w>\nnu cle\nresear ch\nmi y\nsha hid\nma v\nd honi</w>\ncin i</w>\ndo j</w>\nhin dus</w>\npart ying</w>\ndal i</w>\nalon so</w>\ninform al</w>\nclark son</w>\nit ton</w>\nki an</w>\ncit yo\nmor i\nla sted</w>\nas pen</w>\nlibr ary\nsusp ici\nqu at\nden ial</w>\nfol der</w>\nch ori\nswee ping</w>\neni x</w>\nðŁį Ĥ</w>\nØ Ń\nnas car\nhandmade hour</w>\nmou l\nheat wave</w>\nem er</w>\nexam ine</w>\nib n</w>\ngr ind\npo v</w>\ntion ist</w>\nm bo\nshe ila</w>\nintegr ate</w>\nom es</w>\ntake away</w>\ncer v\ncon nie</w>\ntic ket\nce led</w>\nbi en</w>\nvisu ally</w>\nmadagas car</w>\nsor ry\ngu i</w>\npark run</w>\ntra its</w>\nla be\npois oning</w>\nà¥ Ģ</w>\nvi able</w>\nbohemi an</w>\ndenti stry</w>\nbad os</w>\nspr outs</w>\nmask ed</w>\nte ddy\nðŁĺ ·</w>\nsa f</w>\nsa as</w>\nji ang</w>\nti ght\nspe aker\nwithdra wal</w>\nbc n</w>\nas signed</w>\nclass rooms</w>\nfle ming</w>\nðŁĴ «\nsuper girl</w>\ntot als</w>\ntable top</w>\ne books</w>\nhorizon tal</w>\ncra z\nflu sh</w>\nj ard\nc dc</w>\ner son\nãħ ł</w>\ngreen wood</w>\nni h</w>\nco x\nad a\nlit re</w>\ngo ing\nv icky</w>\ncur ved</w>\nlou ie</w>\ngra ins</w>\nhy e</w>\nlon ge\nreme dy</w>\ntra inee</w>\nsan jay</w>\nsuper stars</w>\nma ser\nman u</w>\ns age\nwh l</w>\nðŁĺĤ ðŁĺŃ</w>\nðŁĳį ðŁı»\nm sd\nen z\nrab hu</w>\nj oo\ngh u\nac er</w>\ne po\nresurrec tion</w>\njustice for\nbl ended</w>\nmo da</w>\navalan che</w>\nfrance sco</w>\nre spective</w>\ng s\nye ast</w>\nwel ch</w>\ndevo tion</w>\nge tin\nathe ism</w>\nam ic\ncarol yn</w>\nlo c</w>\nld nont</w>\nave c</w>\nus da</w>\nle gged</w>\nbra very</w>\nb lower</w>\ncow boy\nhe h</w>\nsti ble</w>\nbuff al\nchann el\nrun chat</w>\nâĺķ ï¸ı\nide ology</w>\nbest seller</w>\ny oo\npe anu\nbon ne</w>\nfel ic\nedi son</w>\nfr actu\nnaren dra</w>\npp ets</w>\nseym our</w>\nri viera</w>\nhe ctor</w>\nnecess arily</w>\nbi anca</w>\nsoci eties</w>\nthe best</w>\nw g</w>\nsent ences</w>\nwin k</w>\nvacc ines</w>\npal ooza</w>\njam ming</w>\nas f</w>\nmp us</w>\nagre ements</w>\nec k\nba c</w>\nhon ore\ncom pul\nwild cat</w>\nim posed</w>\nyo ga\nhud son\ncan celed</w>\nl ich</w>\nfu zzy</w>\nes que</w>\nch uk\nw vu</w>\nse k</w>\nfli pping</w>\nr hon\nwi shed</w>\nwh a</w>\ncap ability</w>\nlen ovo</w>\nìĨĮëħ Ħëĭ\nvi vo</w>\ntv d</w>\nnor a</w>\nsil k\npas adena</w>\nyo semite</w>\nvalu ation</w>\nclo cks</w>\nu ber\nmr c</w>\ndar kest</w>\nau bre\nss o\nbell y\nwrest lers</w>\nkill in</w>\nlou der</w>\nbuck ley</w>\nge el\nad on\nun s</w>\nappe aling</w>\nðŁĳ ¯\nsemit ism</w>\nlist ens</w>\nfit z</w>\nãĥ³ ãĥ\nny lon</w>\nar ty</w>\nseem ingly</w>\nhal a</w>\nsu ited</w>\net y\nshe ds</w>\nmu ffins</w>\nap ric\num ents</w>\nu ta</w>\njam mu</w>\nchelse afc</w>\nstar z</w>\nyo ko\nroo t\nclean sing</w>\ndi ar\npione ering</w>\nihear tradio</w>\ndig iti\nfin dyour\ncan o</w>\nðŁĴ İ\nz ol\nspac ecraft</w>\nsix ers</w>\nmoi sturi\nb ile</w>\nti sts</w>\nhor ton</w>\nrang ing</w>\ncolum bi\nmete oro\nsenti ment</w>\nep l</w>\nfoo th\ntext book</w>\ndrain age</w>\nr ly</w>\nsc ue</w>\nimran khan\nðŁĴ ¸</w>\nmargar ita</w>\ned dy</w>\npredic ts</w>\ngamer gate</w>\nadvis e</w>\ngrowth hacking</w>\nlove you</w>\nug and\nv f</w>\nbeng hazi</w>\ns later</w>\nne wor\nch el</w>\nindependence day</w>\np np</w>\ncul len</w>\nhoo dies</w>\nnum bered</w>\nbrit t</w>\nt sa</w>\nkl tu</w>\ns ages</w>\nmom o</w>\nonep lus</w>\ncol l\ngu ts</w>\nw ta</w>\nmesm eri\nenh ancing</w>\nchiro prac\nj is\nteen agers</w>\nm one</w>\nconstell ation</w>\nsweep stakes</w>\ne ze\nslovak ia</w>\nla ye\npear ce</w>\nwa ver\npo gba</w>\nk ron\nsur geons</w>\nmar x</w>\nti d\ngg a</w>\ndesc end\np ours</w>\nupri sing</w>\nwal la\nsab bath</w>\nbachel ore\nmack in\nk am</w>\npeter borough</w>\nhor a</w>\nðŁĮŁ ðŁĮŁ\nthink big\nr j\nhy drau\nsp al\nunivers it\nðŁı ī</w>\nmail online</w>\nleague of\nten ants</w>\nw ally</w>\nlan ce\nheav ens</w>\ndd r</w>\nbol ts</w>\nam ir\ni phone\nci gar\nen du\nre i</w>\nel abor\nr inging</w>\njohn son\ncharacteri stics</w>\nsal oon</w>\nalgori thms</w>\ntal kin</w>\nm tn\ndi ve\nregion als</w>\nff ice</w>\nhat i</w>\ndeviant art</w>\nso tto</w>\nshir o</w>\nl ama</w>\nk we\nf aded</w>\npor ting</w>\ntu mmy</w>\nest ates</w>\nbuen os</w>\nðŁ¦ ģ</w>\nbeli ever</w>\npen etr\ndar n</w>\nsp ite</w>\ncan opy</w>\nfashi oni\nt illa</w>\npet als</w>\neli jah</w>\nbra wl</w>\nmarty r</w>\në°©íĥĦ ìĨĮëħĦëĭ\nmid town</w>\neric h</w>\nd apper</w>\nsm town</w>\nme gam\nww w\nle le</w>\non s\ncat fish</w>\nfir th</w>\nfossil friday</w>\nball park</w>\nth aw\npot ent</w>\nilli e</w>\ncre ep</w>\ncar p</w>\nso ap\ngun dam</w>\ninfe c\nyy yyy</w>\nà¤ ¨</w>\nz ag\nrit t</w>\ncalcu lator</w>\nbo ca</w>\nok o</w>\nto ad</w>\nthreat en</w>\nrefin ed</w>\nolym pic\naccompli shment</w>\nbacter ial</w>\na ji\ntat um</w>\nfeli z\nshe ed</w>\nj at\nth ic\njam al</w>\nðĿ ĺ\nlin a</w>\nðŁĲ ¯</w>\njo king</w>\nyot po</w>\npin ch</w>\nak ron</w>\nher b\nmotiv ation\nli a\nho stage</w>\ncre ek\ngam ble</w>\nruss ell\npatt i</w>\nfo tos</w>\nc pc</w>\nbro ken\nback the\ncla ys</w>\nu mm\nstock ton</w>\nmat ernal</w>\nÃ¼ r\nla kel\ncent ury\nbe k</w>\ninfe cted</w>\nà¸ ¡\nsmack down</w>\nman ned</w>\nta hoe</w>\nsm es</w>\nbas a</w>\nsu la</w>\naugu sta</w>\n. *</w>\nrohing ya</w>\ngre ed</w>\ncounsel or</w>\nsilhou ette</w>\ngra vit\ncla use</w>\n' -</w>\nbo bc\nocca sions</w>\nnow adays</w>\ndic tat\nbe ard\nn ally</w>\nbrigh test</w>\nkab ul</w>\ninc india</w>\ndhan ush\narchae ological</w>\nche ape\nmizz ou</w>\nd hi</w>\nov ski</w>\nbax ter</w>\nasse mble</w>\nÃ ¢\ngi gi</w>\nac am\nwis ely</w>\nhaz ard\nnorth ampton</w>\nâľĪ ï¸ı\nme th</w>\nbla sting</w>\nre unite</w>\nmu lus</w>\nali zes</w>\nt read\nmil a</w>\ned ward\nko va</w>\npe sto</w>\nðŁĳ ¶\nvit z</w>\nhydrau lic</w>\nrefurbi shed</w>\nmo tel</w>\nisab ella</w>\nhom me</w>\nsever ance</w>\nuph ol\nmis erable</w>\nf ari\nlat ter</w>\nef er</w>\ncrack ers</w>\nes l</w>\nac io</w>\nyy j</w>\nin an</w>\nec b</w>\nz ind\npan as\ntru cking</w>\nre ed\nsh aker</w>\nburge ss</w>\nem pire\nag nes</w>\nn ington</w>\nart works</w>\nfr s</w>\nti le\nbi ome\neu n</w>\nch ong</w>\nameric ana</w>\ngod father</w>\ngo blin</w>\ni shi\n! ).</w>\ntemp ted</w>\ngen omics</w>\nmand ate</w>\nck y\nðŁĴĻ ðŁĴĽ</w>\nsom ali</w>\nbr andy</w>\nin ven\nspoke sperson</w>\npc b</w>\nyu an</w>\nh g</w>\nfa z\nstarwar s\nro wan</w>\nblue grass</w>\ndon g\nd day</w>\ntrin idad</w>\ner ton</w>\nban ning</w>\nre tention</w>\ncu red</w>\ntober fest</w>\nre set</w>\nwe is\ndeta ched</w>\nbehindthe scenes</w>\nimmun ity</w>\nph a</w>\nbra y\nðŁĳ ½</w>\nran cho</w>\nram say</w>\nest onia</w>\nnd tv</w>\n] .</w>\ncab aret</w>\ntar o</w>\nd v</w>\nshow cases</w>\nplu m\nðŁĳ ¸\nson oma</w>\npre pa\nmemor ab\ne stu\ndrive way</w>\nu les</w>\nmagn us</w>\nx r</w>\nnn n</w>\nmuch as</w>\nen ge\nstre amed</w>\nfore stry</w>\naudio book</w>\ntro y\nreck less</w>\nkil om\nru ler</w>\nra k</w>\nproce ssion</w>\ni ons</w>\npo ole</w>\nnoc tur\nwh s</w>\nfarm house</w>\nper a</w>\npar me\nhypocri sy</w>\ns ics</w>\nv ant\ncas k</w>\nholi stic</w>\nau st\nÐ ¿\nin do\nðŁĳ© âĢį\ndi so\ndisp atch</w>\nol sen</w>\nmake it\nen nis</w>\ncent re\nar range</w>\nðŁĮ ¼</w>\nsal ted</w>\nea siest</w>\nf ate\nreg atta</w>\nmo zz\nac an</w>\nsin i</w>\ng ically</w>\nch ops</w>\nchick en\nwork in</w>\nha gg\ninvol ve</w>\nwee ds</w>\nbook day</w>\nwake up\nky r\nmichel in</w>\nfu ss</w>\nre juven\nvac ancies</w>\nincar cer\nm st</w>\nsc ents</w>\nsovere ign</w>\nkick er</w>\nà §\nbo d</w>\nâĢĶ ></w>\nsa h</w>\nmob il\nshrop shire</w>\noph one</w>\ndress er</w>\nmis suni\nhep burn</w>\ni mo\nfoli age</w>\ndiagno stic</w>\nas san\ncycl ing\nguil t</w>\nc sa</w>\npuertor ico</w>\nwin elover</w>\nwake field</w>\ndo ggy</w>\nk he\npa pp\nco g\nal lot\ncu ck\npoe tic</w>\nmi o</w>\nre vit\nmag ician</w>\nç ¥\nant enna</w>\nwest wood</w>\nmber g</w>\nlux e</w>\noat meal</w>\nØ ¬\nte at\nffe e</w>\nsear ches</w>\nl ly</w>\nplu to</w>\nel on\nlet tering</w>\ninno cence</w>\nfa i</w>\nann on</w>\ntelang ana</w>\nma it\nneu ral</w>\ncan ni\nar oma</w>\na stor\nfe x</w>\nco cac\nmon etary</w>\nf ent\nun sure</w>\n' @</w>\nindi rec\nteh ran</w>\nisol ation</w>\nli bs</w>\nmake up\nmerce des\nff y\nhe tero\nde o\nsco m</w>\ncur sed</w>\nveteran sday</w>\nfranken stein</w>\nshre ws\nde co\nge ese</w>\nlefto ver</w>\nha did</w>\nvari able</w>\nacade mics</w>\ncarol in\nunder going</w>\nvari ation</w>\nna h\nssi er</w>\ngamer sunite</w>\npur suing</w>\nemer ged</w>\nll ers</w>\ncontrol ling</w>\nro aring</w>\nmete or\nvol t</w>\ndaw gs</w>\nbe aver\nis life</w>\nbathro oms</w>\naci onal</w>\npre vent\nlake district</w>\nin als</w>\ny ani</w>\ngra bbing</w>\nsac ks</w>\nle z</w>\nsw ay\nk ool</w>\ntime s\nklo pp</w>\nla de</w>\ncon cord</w>\nresul ted</w>\nrevi ve</w>\nrecon ciliation</w>\nol and</w>\naz z</w>\ngir o</w>\nmand arin</w>\nde en\nnutriti onal</w>\nis coming</w>\nvan i</w>\naw www</w>\nder ived</w>\nlove your\nstop the\nshou ting</w>\nnov ak</w>\nðŁĻĮ ðŁı¾</w>\nlo af\ndispla ying</w>\nsunday with\nma guire</w>\nch eri\nðŁı Ł</w>\nre match</w>\nqu ic\nÚ ©\ny in\nðŁĺ ¹\nili ve</w>\nz ip\nour ke</w>\ndown loads</w>\nsw at</w>\nmissi ss\ncare rs</w>\nt ment</w>\nproper ty\nhahahaha haha</w>\ngi bbs</w>\nsur rey\nar ise</w>\ntic ism</w>\nsti a</w>\nir ling</w>\nfro g\nco se</w>\nbas sist</w>\nfore ig\nlea u</w>\npil lows</w>\nhol la</w>\neli e</w>\ndisclo sure</w>\npeanu ts</w>\ninte ch</w>\nww c</w>\nplun ge</w>\ntrium ph\ncor i\nsli ppers</w>\nðŁĻı ðŁĻı</w>\nneutr ality</w>\nma re\nhair y</w>\ngang ster</w>\nhu mming\ncust ard</w>\nmer lin</w>\nale a</w>\ns by\ndam p</w>\nmo han\nver bal</w>\nj st</w>\ngu tted</w>\nb jor\nun finished</w>\nðŁĩ¯ðŁĩ µ</w>\nun happy</w>\nâļ« ï¸ı\nby pass</w>\nat su</w>\nfis cher</w>\nsa v</w>\nafric ans</w>\nre use</w>\nmid way</w>\ndemo lished</w>\nger rard</w>\nher cules</w>\nÄ Ł\nmedic ines</w>\ncl icking</w>\nsur round\njo ong</w>\nwav ing</w>\ntri bes</w>\nwet lands</w>\noffici el</w>\nargu ing</w>\nl le\ndo va</w>\nsu zy</w>\nclub house</w>\nne gro</w>\nob tain</w>\nga o</w>\ngl ance</w>\nassi st\nch os</w>\nãĤ ¢\nâĺ ķ</w>\nadri d</w>\noccur s</w>\nst ans</w>\npar don</w>\nlivel i\nemplo yed</w>\nre visit</w>\nff xiv</w>\nbb le\nne aring</w>\nmin er</w>\nðŁĺ ¹</w>\ngiov anni</w>\nup to</w>\nmar vell\nmar se\nto wels</w>\ncb n</w>\nengine ered</w>\ny elling</w>\nspart an\nsi ans</w>\nðŁĻĮ ðŁı¼\nse v\ncoyo te</w>\nsta di\nt cm</w>\napp en</w>\nshenan igans</w>\nopen access</w>\nso aked</w>\nma squ\nle vine</w>\nstro kes</w>\nl k</w>\naparthe id</w>\nhipho p\nchar don\nmay may\nha asan</w>\nstri pped</w>\nfr o</w>\nscri ption</w>\nf ton</w>\nh f\npri sons</w>\nmarsh al</w>\nķ ãĤ\nan cho\ncom promise</w>\nclassi fication</w>\nbuzz feed</w>\nbblo ggers</w>\ndeser ving</w>\n) /</w>\ns way</w>\nob o</w>\ncamp ers</w>\npoder nfamily</w>\np oured</w>\nbri e</w>\nsquir rels</w>\nse ize</w>\n: #</w>\nle k\nti mb\nst acy</w>\nnas daq</w>\nrepe atedly</w>\nbr at</w>\nmi ghty\ncompetit or</w>\nmah one</w>\nde si</w>\no ke\nbm w\nshi e</w>\nf cb\ncheape st</w>\nminim alist</w>\npar amount</w>\nn ate\nhar as\ninsan ity</w>\nlat eral</w>\nment ality</w>\nmo zam\nta pped</w>\nyad av</w>\nu sp\nb way</w>\nthe od\nbil t</w>\nra ids</w>\nem press</w>\nadap ted</w>\npat ron\nnut shell</w>\nag ra\nbe aded</w>\nsundaywith marsha</w>\nvi king\nproce ed\nmain tained</w>\nthinkbig sundaywithmarsha</w>\nsn es</w>\nmus ica</w>\nto wer\nch ab\nbo k\nsm t</w>\ninsul t</w>\nharve sting</w>\nwindo w\nru ther\nbe ige</w>\ndec al</w>\nindic ate</w>\nma iling</w>\nri ft</w>\npo le\nander son\nch oral</w>\nsp ride</w>\nl ili\nev elyn</w>\nimrankhan pti</w>\n.... \"</w>\nke red</w>\nun dp</w>\nwater falls</w>\nse ars</w>\nle mans</w>\nworld series</w>\nri el</w>\nani e\napp ar\nscore rs</w>\nlam p\na than</w>\nphys icians</w>\nqu inoa</w>\nrefu sing</w>\nvu itton</w>\nunle ash</w>\ns la</w>\npat i</w>\nshou ts</w>\ninten tions</w>\nfo amed</w>\neurope an\nneighbor hoods</w>\nme er\nman son</w>\ndu h</w>\nbr at\ncon es</w>\nbow l\nkazakh stan</w>\nà¤ ¿</w>\nin appropriate</w>\ndel hi\nketch up</w>\nful ton</w>\ns ys</w>\nconsul t</w>\ngar field</w>\nto go</w>\nf ml</w>\nf led</w>\nb ds</w>\nfacilit ate</w>\nree bok</w>\nselfi e\nelev ate</w>\nactiv ate</w>\nbi ble\nca wx</w>\nb ys</w>\ncam ille</w>\nsy ou\nsk ool</w>\nher t\nw bc</w>\nple dges</w>\nrecor der</w>\npo sh</w>\nac re\nso aking</w>\nmat il\nv sco\nshoot ings</w>\npla r</w>\ne con\nðŁĻĮ ðŁı»\nrashi d</w>\nu bi\nðŁ¤ ¤</w>\nsw inging</w>\nwi pe</w>\nrap tor</w>\nm su\nmusic video</w>\ndur ham\nat tic</w>\napar ty</w>\nfe tus</w>\nactiv ation</w>\naa z</w>\nmotiv ate</w>\nðŁĴķ ðŁĴķðŁĴķ</w>\nj al</w>\nà¤ ®</w>\nag on\nsche er</w>\nstal ker</w>\nfo ster\naz zo</w>\ntele gram</w>\nvi gor\ns laugh\nscreen shots</w>\nentrepre neu\nkri stin</w>\ninten tion</w>\nch illi\nfr action</w>\ndon a</w>\nge a</w>\ntc u</w>\ns ite\nla k</w>\nem il\nd nt</w>\nbor o\nwil kinson</w>\nre cu\nato day</w>\nt anya</w>\nbl anco</w>\ncd n</w>\nbrilli antly</w>\ng cc</w>\nac c\nevacu ated</w>\nther ine\nden ny</w>\ncait lin</w>\nshe pard</w>\npou ch</w>\nhand held</w>\nsou theastern</w>\nha a</w>\nÃ ´\nre solutions</w>\nled ger</w>\nsr in\nr ar\nshat tered</w>\nchim ney</w>\nim with\nmete or</w>\nhand led</w>\nra ke\ntown send</w>\nen han\nshi py\nduc t</w>\ntw x</w>\ninflam matory</w>\nwar hammer</w>\ntheat rical</w>\ngro s\nsk ar</w>\nsco tty</w>\nni el</w>\ntit o</w>\ntin i</w>\nconne ction</w>\n_ .</w>\ngoldeng lobes</w>\nsha q</w>\nðŁı ³ï¸ı\nhall way</w>\nfron ts</w>\neffec tiveness</w>\ngla ston\nd hs</w>\nex pi\nto h</w>\nc pl</w>\nsc s</w>\nre o</w>\nha g\nresemb lance</w>\nhor an</w>\nabu sive</w>\nqu er</w>\nvirtu e</w>\ncho lester\na q</w>\nshan e\nm ce\ncarri ers</w>\ndi stress</w>\nre wind</w>\nÂ ¡\nvoo doo</w>\nint act</w>\nann o</w>\nðŁĺ ¤\npi led</w>\nadi a</w>\nãĥ ³</w>\nen ow</w>\ndi gs</w>\nlight ly</w>\ngoo fy</w>\nturb ine</w>\ngovernor s</w>\ncon te</w>\nre open</w>\npa h</w>\ni ve\ncra fting</w>\nswee ps</w>\njo di</w>\nan de\nzu cker\nkaw aii</w>\no ko\nv ai\nout line</w>\nkri sti\nts n</w>\ninsp o</w>\nqu int\nfil thy</w>\nlyn ne</w>\nlisten ers</w>\ndepar ting</w>\nor d\nt weed</w>\n, &</w>\nale k\nsel fish</w>\nnor ther\nrecogni zes</w>\ni ps</w>\nbe s\na ed</w>\nw ills</w>\npe at</w>\nsurround ings</w>\nmon uments</w>\nais le</w>\nbe cker</w>\nla v</w>\nquant ity</w>\nv ah</w>\nhelicop ters</w>\ntu cked</w>\nalv arez</w>\nsha pe\no bey</w>\nad diti\nroad side</w>\nm ite</w>\nbl ers</w>\nep age</w>\nj au\nignor ant</w>\nb ins</w>\nlu lu</w>\nx o\nc fo</w>\nee eee</w>\napprentice ship</w>\nshef fiel\nto i</w>\nho k\nfaken ews</w>\ndeplo y</w>\naid an</w>\nhusk ers</w>\nãĢ İ</w>\nwest brook</w>\nmi ster\nconfi gur\ncar r\nfic a</w>\nproceed ings</w>\nha w</w>\nste ak\nmur derer</w>\npay day</w>\na jo</w>\np vc</w>\ndon ates</w>\nbi af\nnom nom</w>\nbe it</w>\nk ali</w>\nx rp</w>\nahmed abad</w>\nse mic\nche y\nx tra</w>\nan twer\nhead lining</w>\nsqu ares</w>\nroun ded</w>\nflu ore\nbol d\ndisa sters</w>\nam oo</w>\ngener ic</w>\ncran es</w>\nbrief ly</w>\ngi g\nauster ity</w>\nanticip ation</w>\nfor ti\ntreas urer</w>\ncann y</w>\nce cil\ndete cted</w>\ncheck list</w>\nà¸ §\npam ela</w>\nbar bados</w>\nan field</w>\nhear ty</w>\ntx lege</w>\nperen ni\narro g\ning ram</w>\nâĹ ı</w>\nty ne\nspo on\nr ation\nam ba</w>\nm be</w>\ncam el\nh hs</w>\nyork shire\nreflec tive</w>\nfre aks</w>\nto k</w>\nju do</w>\npartic les</w>\ndu bs</w>\nban jo</w>\naccred itation</w>\nprover bs</w>\nover dose</w>\ninte gral</w>\ngu ang\nmc s</w>\nsuper car</w>\naf b</w>\nal vin</w>\nail s</w>\nx tre\nst aging</w>\ntw ent\nrabb its</w>\nmar o\ninste m</w>\ndol l\ncr ay</w>\nsant ana</w>\nble ach</w>\nmini ons</w>\nche ap\nman t</w>\ndi vers</w>\ncatal onia</w>\nlo is</w>\nmat ri\ncou gar</w>\nkay ak</w>\ne gre\np so\na ia</w>\nå ®\nchar lton</w>\ntr acked</w>\nsc ari\npe tt\nf wd</w>\nx in\ngra vel</w>\nbr ic\nbigg boss</w>\nar den</w>\nhu gging</w>\npal ms</w>\nst v\nli mb\nthe movie</w>\nhandic ap</w>\nri me</w>\nz ai</w>\nstu b\nindi a\nlithu ania</w>\nrhy th\np ita</w>\nmaced onia</w>\nhigh ered</w>\nbrid get</w>\nschwar z\nske let\nhi kes</w>\nant arctic</w>\nc ps</w>\nmash up</w>\nÐ °</w>\nn ell\nchand ra\nhe ir\nan us</w>\nsher idan</w>\nmi mi</w>\nmuse u\nbec ca</w>\nan ir\nbar rie</w>\ndioce se</w>\ncompar able</w>\nðŁı³ï¸ı âĢį\nyuk on</w>\nme p</w>\nhor mon\nmer ic</w>\nal f</w>\ncon quered</w>\nchrist church</w>\nðŁĴĻ ðŁĴĻ</w>\nhazard ous</w>\npoo h</w>\ncont ing\nretro spective</w>\npar ame\nna ir</w>\ncon sor\nho tra</w>\nastoni shing</w>\ncater pillar</w>\nu man</w>\nti sm</w>\nt vs</w>\nserv ic\ncroy don</w>\nmor ales</w>\nc g\ncu m</w>\nte ur</w>\nscan ada</w>\ns all\nmagno lia</w>\nel ise</w>\nth our</w>\nà® ¿</w>\nag omez</w>\nphel ps</w>\në°©íĥĦìĨĮëħĦëĭ ¨</w>\nwh os</w>\nweav ing</w>\nsi sd</w>\npro poses</w>\ncro ws</w>\npre sale</w>\neconom ies</w>\nbernar do\nsha hid</w>\nair show</w>\nmc cann</w>\nhor ticul\nnr l\ndu el</w>\nmongo lia</w>\ntou lou\nrequi rement</w>\nstruc tured</w>\ned i</w>\no lives</w>\nhe a\ncu ter</w>\nÐ º\nenthusi ast</w>\nharri et</w>\ndomin ion</w>\nsub mer\nðŁį ĥ\nsa ab</w>\nnes burg</w>\nmo ff\ndef ended</w>\nbur t</w>\nrewar ded</w>\ngold man</w>\nop tics</w>\nkhali d</w>\nhouse holds</w>\nbuc kets</w>\nce cil</w>\nche ss\nsubstan tial</w>\nef l</w>\noper ation\nevalu ate</w>\nst n</w>\nrece ssion</w>\nl ll</w>\ntom as</w>\ntru ths</w>\nak bar</w>\ns words</w>\np act</w>\nembarra ss\nha o</w>\nay urve\nscrip ture</w>\nny cc</w>\nop t</w>\ndi ameter</w>\nsc ented</w>\norgani zers</w>\nre lat\nha e</w>\ndream ers</w>\nde se\nðŁĮ »\nrestric ted</w>\nn ale</w>\nr hp</w>\ndol an</w>\nmun ster</w>\nha ired</w>\nconsult ants</w>\njo ints</w>\nhu mil\nd ill</w>\nrelent less</w>\nt Ã©\naf il\nut ilities</w>\njapan ese\ncondem n</w>\npet ite</w>\ncolli de</w>\nq f</w>\npeach es</w>\ncou rier</w>\nl ore</w>\nâĺİ ï¸ı</w>\nreli ability</w>\nch uk</w>\nðŁĻ ĥ\nstu res</w>\nge ther</w>\nho stel</w>\nbi er\n- _-</w>\nâ ĩ\ne ze</w>\nta ilo\ndi ent</w>\nblu ff</w>\nchu ffed</w>\npil ip\nmon arch\ne em</w>\nbu chan\nb ick\nop au\nku ps</w>\nà¸ ¢\npist ons</w>\nsp ins</w>\nm and</w>\nce st</w>\nbur ne</w>\nv ile</w>\ncher ries</w>\nbec kett</w>\nneed les</w>\npan ch\në Ĥ\nhaha h\ntrou bles</w>\ninsi sts</w>\ndo you\ng mc</w>\nmor tar</w>\ndeleg ate</w>\nin n\ng anda</w>\nsin atra</w>\nà¤ ¤</w>\nspee ding</w>\npu pil</w>\npre mises</w>\nali gnment</w>\npi kach\nas us</w>\nj alan</w>\nØ µ\nlime stone</w>\nfol kl\nparme san</w>\nce il\nmo y\nshawn mendes</w>\nac up</w>\nhu st\not es</w>\nmed ina</w>\nma di</w>\ngta v</w>\ncensor ship</w>\nar g</w>\nswe eney</w>\nsy kes</w>\ncol o</w>\nfoot steps</w>\ncann ed</w>\nadv ance\ngta online</w>\nhealthy living</w>\nðŁį ¾\na ig\np ality</w>\noc s</w>\nhe brew</w>\nim minent</w>\nberk shire</w>\njeremi ah</w>\nout going</w>\nbak er\nentr ata</w>\nma ids</w>\ngro ves</w>\nbo c\na del</w>\nm fw</w>\ncon science</w>\narm ys</w>\nnut ella</w>\nconte stalert</w>\nnovel ist</w>\nla h\nban ker</w>\nmarque z</w>\nðŁı ¡</w>\nto ff</w>\nout age</w>\ngr p</w>\nðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃ</w>\nmusc le\ndu dley</w>\nnvi dia</w>\nmi di</w>\nm uni\ness ays</w>\ndat ac\ncar ter\nà¸ £</w>\nt ans</w>\ni ves</w>\npublic ations</w>\nal er</w>\nok wx</w>\nil u\ncu tt\nhar p</w>\nout law</w>\nluther an</w>\nbr ill\nbo lic</w>\ndo well</w>\ngreen land</w>\nbe sties</w>\npath i</w>\npay ton</w>\ngue st\nhar den</w>\nðŁ¤ ©\nann ed</w>\nevacu ation</w>\npo ised</w>\nmc der\nb han\no i\nenvel ope</w>\nci d</w>\nca vi\nta pas</w>\nbook review</w>\ngrey hound</w>\nâĻ ª\nfe ud</w>\nlun gs</w>\nfor te</w>\nrai der\nff er\noni x</w>\ndep end</w>\nyn wa</w>\nrel ating</w>\nde vs</w>\nðŁĴ Ĳ\nacqui res</w>\nd ha</w>\nj yo\npriv ati\ncan ine</w>\nk b\ncra b\nsar din\nimag ining</w>\nk j\nem por\ndown hill</w>\nne z</w>\nta eyeon</w>\nnick imin\ngb p</w>\nà µ\nw ap\nsec co</w>\nma shed</w>\nðŁĴ¥ ðŁĴ¥\naugu stine</w>\ndiss ol\ndic tator</w>\nâ ĵ\nvi per</w>\ned fringe</w>\nvau x\nhard work</w>\nbook let</w>\nno x</w>\nchi ff\nðŁĴ ¨\nobserv ations</w>\nxbox one</w>\nu sher</w>\nke er\nlu p</w>\ndal las\ncal gary\nma dra\ndi ous</w>\nk bs</w>\nwood ward</w>\nhero ine</w>\nlu mber\nsea world</w>\no ws</w>\nmc ke\nmaver ick</w>\ngu la</w>\ncross roads</w>\nfan g</w>\ns ade</w>\nnik ol\nchee tah</w>\nme c</w>\npp g</w>\ner ick\nðŁİ µ\ntox ic\nbj j</w>\nviol a</w>\nsp ire</w>\nch ino</w>\ntra vis\ninstitu tional</w>\nha as</w>\nlow ry</w>\nw ac\nea e</w>\nhu mid</w>\nmp ton</w>\nru ck\nje w</w>\nc ine</w>\nzim mer\nse f</w>\nbhar at\nfre es\naam ir</w>\nðŁĴ ħ\nz inc</w>\nwan e</w>\nmulti player</w>\nroyal wedding</w>\ne el</w>\npreci pit\nqu ery</w>\nkimber ly</w>\nisa bel</w>\nful fill</w>\nig an</w>\nvau l\npan e</w>\nsc y\ndig it</w>\ngun n</w>\nu tah\ndog day</w>\nfi on\nxia omi</w>\nda c</w>\nel ast\ncha vez</w>\nro blo\ng ine\nten th</w>\nab h\nke to\nhur dle</w>\nna dia</w>\nmemorab ilia</w>\nha bs</w>\nqu an</w>\nh w\nhv ac</w>\npix ar</w>\nec cle\nkram er</w>\naccu ses</w>\nðŁĴļ ðŁĴļ\nper se\nmean time</w>\nwa hl\natle tico</w>\nâĢ¢âĢ¢ âĢ¢âĢ¢\nott oman</w>\nno vo\nk us</w>\nconne cted</w>\ntru sts</w>\nd mv</w>\nspen cer\nrahu lg\ndo ve\nsto kes</w>\nbolog na</w>\nenthusi asts</w>\nÃ ª\nrockstar games</w>\nted cruz</w>\ndu ras</w>\ns acked</w>\nlate x</w>\nimmer sive</w>\ncer t</w>\nlu cin\nprinci pals</w>\nfa res</w>\nsa ils</w>\nfar n\nam ent</w>\nsaf fron</w>\nquent in</w>\ncheck point</w>\nfer ris</w>\nex cur\nðŁĳī ðŁı¼</w>\nbai ley\nse h\nter re</w>\nmad am</w>\ns band</w>\nwan derers</w>\ncumber batch</w>\nyy c\ndigit ally</w>\nblackandwhite photography</w>\nroll in</w>\nmoroc can</w>\nðŁĮ ħ</w>\ndin ner\nd well\nto om\nm ye\nez ra</w>\ncp fc</w>\nwar hol</w>\nme er</w>\njon ah</w>\nno aa</w>\ns gate</w>\nso on\nsecu lar</w>\ng ating</w>\nti o</w>\ndri ver\nsi ssy</w>\nassan ge</w>\nta th\ned mund</w>\nbobc ats</w>\nra ji\npo stage</w>\nstu ds</w>\nm gm</w>\nkat o</w>\nedin burgh\nmeet the\nshir t\nfa a</w>\nmens fashion</w>\nsp reads</w>\nwi m</w>\ncar ts</w>\nphoe be</w>\nj ars</w>\nbot swana</w>\nÙ Ĥ\ned war\nsk ar\nri ve\ngu sty</w>\nc tv</w>\nferdin and</w>\nsu therland</w>\nnickimin aj</w>\nk v\nsi us</w>\nbee ch</w>\nre z\ndesi res</w>\non ial</w>\ncamp o</w>\nquar ry</w>\nlor raine</w>\ngil more</w>\nig gy</w>\nµ ï¸ı</w>\nho pping</w>\navi z</w>\nðŁĮ º\nuni sex</w>\ndedic ate</w>\natt itudes</w>\nste er</w>\njun kie</w>\nrail way\ny b</w>\nwhi sper</w>\nkey an</w>\nk us\nju g</w>\ndi x</w>\na ins</w>\nsum mon\nov ich</w>\nsy ed</w>\nher ald\nma ison</w>\nme ded</w>\nwild flower\nmain land</w>\nri sky</w>\nru kh</w>\nover looked</w>\nki c</w>\ndestro ys</w>\nnam an</w>\nki p\nz ano</w>\nchampion sleague</w>\nban dit</w>\nquin cy</w>\nsmi le\ncal vin\nopen ings</w>\nta pp\nol ulu</w>\nspec tro\naccred ited</w>\nap k</w>\npra ised</w>\nbar nett</w>\npol len</w>\npremi ered</w>\nselen agomez</w>\ntou red</w>\nscreen ings</w>\nuu u</w>\nmis o\nen se</w>\nadam lambert</w>\nguel ph</w>\nhar yana</w>\nhu tto\nle ar</w>\nl tc</w>\npo ached</w>\nbrex it\næ Ŀ\ntt c</w>\npa vement</w>\nmon gers</w>\nro e\nad ers</w>\nling ton\nparticip ant</w>\nca red</w>\nga il</w>\ny ates</w>\nlan tic</w>\ndash board</w>\njo o</w>\nfeli pe</w>\nssi onist</w>\nbu m\ns end\na eri\nthu gs</w>\nluci fer</w>\na he\ndete ctor</w>\nfil ly</w>\ngas oline</w>\nham per</w>\nhump day</w>\nthe ta</w>\nthe band</w>\nfore casts</w>\no hhh</w>\nlo bb\nhol l\ncp u</w>\naz u\nad ar\nhai ley</w>\nbu b\ncar t\nquo ted</w>\nan archy</w>\npan cre\ntwit art</w>\nal den</w>\nst ash</w>\nthe less</w>\nor ni\nbelie bers</w>\nmor mon</w>\npartic le</w>\navi ation\nâ¬ Ĩ\nwebcam toy</w>\nsad dened</w>\ncru is\nham let</w>\nn ct\nroll ins</w>\nmarque e</w>\nsaw yer</w>\nreli ance</w>\na ura</w>\ndi ec\nsoo thing</w>\nsig nings</w>\nak is</w>\nÃ ³</w>\nat kins</w>\naer op\nðŁĮ ¿\ny ab\nsh ari\ncon nol\ndu bbed</w>\nmanufac ture</w>\nconvin cing</w>\nfeelthe bern</w>\nra u\npu lit\non ec\ngem stone</w>\nur ging</w>\nbag u\nga h</w>\naci ds</w>\nfi anc\nzodi ac</w>\nsn oop</w>\nher rera</w>\niniti ated</w>\nven ge\nprofess ors</w>\npro di\nstron ger\ne mission</w>\nbb a</w>\nhal le\nta pp</w>\nhaw an</w>\nwh im\ncompe ted</w>\nmyr tle</w>\nir port</w>\ncold play</w>\nach e\nske p\nm son\nss ic\ncalli graphy</w>\nswim mers</w>\nme y</w>\npp c</w>\nthri ft</w>\npo c</w>\nre places</w>\ncommu ter</w>\nâģ¦ âģ¦@</w>\ngo ers</w>\nlo gue</w>\npara dig\nbas kets</w>\nsensiti vity</w>\njoh an</w>\natl antis</w>\n& &</w>\nsuit case</w>\nanxi ous</w>\nl h\nstr i</w>\ngal loway</w>\nstre ad</w>\nwar den</w>\ngr ounded</w>\nffici ency</w>\nli feat\nreli c</w>\ndisgu ise</w>\nisland ers</w>\nf cofficial</w>\nclassical music</w>\nb mc</w>\nen field</w>\nbi que</w>\noak ley</w>\nbat man\nsla ying</w>\nner ves</w>\nmul tit\ncalci um</w>\nprojec tor</w>\nscott sdale</w>\nant ino</w>\ngri ps</w>\nkim mel</w>\ndes mond</w>\nprote stors</w>\nhi atus</w>\nmetaboli sm</w>\nconclu ded</w>\npress er</w>\nti pping</w>\nsli de\ne to\nhun ting\naus open</w>\nri k</w>\npp ery</w>\ninnov ators</w>\npitch ers</w>\nag ger\nfun gi</w>\nz ad</w>\nproli fic</w>\nrockn roll</w>\nbl ames</w>\nct ar</w>\nstam ford</w>\nq ad\nmozz arella</w>\ninsan ely</w>\nden ver\nph ouse</w>\nnom ad</w>\nï ¿\ns ris\npro du\nhen ley</w>\npag an</w>\nam trak</w>\nru bi\nin cl\ntu tor</w>\nsco tia</w>\nwo es</w>\nsing apo\nfun nel</w>\nturn bull</w>\nknow ledge\ngri mm</w>\nreal madrid</w>\nwe are</w>\nmissi les</w>\ncon sol\nemo jis</w>\nsne ak\nsmi ths</w>\nru iz</w>\nbr ou\ni el\nha ver\nðŁĮ ļ</w>\nkin gof\nbasil ica</w>\ncircul ation</w>\nprin ters</w>\nta pping</w>\nri dley</w>\ndra gged</w>\nha j\nwrit er\nfundament als</w>\npersonal ities</w>\nme tre</w>\nstereo types</w>\nbur le\nbest of\nn ffc</w>\nha th\nmini stries</w>\na ali\ntrac ing</w>\npav ed</w>\nł ï¸ı\ng ic\ninsp ire\ntu g</w>\nha re\nrepe ated</w>\nex pon\nlol li\nrho de</w>\npre cin\ninstall ations</w>\ninstag ram\naz ar</w>\ni es\nsole ly</w>\ndu kes</w>\nmission ary</w>\nvan guard</w>\nfursuit friday</w>\non d\npol ari\nma st</w>\nhar an</w>\njos Ã©</w>\njack ed</w>\nec oun\nal ities</w>\nne ph\nra vel</w>\nmoder ated</w>\nsco w\ns fb</w>\nuru guay</w>\nas o</w>\nni g\nau du\np ints</w>\nlat ina</w>\nben z\nm itting</w>\nchar ted</w>\nmat ology</w>\ncit ro\nbiop ic</w>\nðŁĳ Ń</w>\ndjo kovic</w>\nfox y</w>\nagu il\nso to</w>\nan ada</w>\nsin king</w>\nsc rap\nhair s</w>\nbethan y</w>\nfact friday</w>\nðŁĲ Ĳ</w>\nunlea shed</w>\n) (</w>\ncontra dic\nram on</w>\ncoast line</w>\ny ong\nsn sd</w>\nli gan</w>\np ome\nmit age</w>\nge tt</w>\nwat i</w>\nri sk\nso aring</w>\nbru sh\nf pl</w>\nav an\nå Ĩ\nlar son</w>\nsh ear\nmul til\nblu r</w>\nmulti media</w>\nchun ky</w>\npar i</w>\nn ani</w>\nweir d\ncholester ol</w>\nchar les\ndream ed</w>\ntan ning</w>\npuzz les</w>\nfr am\nhand ball</w>\nch ag\nbeli ze</w>\nal u</w>\nbang s</w>\nÑ Ħ\ndetec tives</w>\nmc g</w>\nish q\nbo thered</w>\nsaf c</w>\nmp ing</w>\nten eri\ng ays</w>\nsail or\nan gi\nmul ticul\ngue ssed</w>\nros Ã©</w>\nhigh ways</w>\nbro om</w>\nchatt anoo\n- '</w>\nsee ker</w>\non ed\nat f</w>\nlu c</w>\n> <</w>\nbar i</w>\nper cep\njewel ry\nas ph\nsor row</w>\nsl ing\nmam moth</w>\njac kie\në §\nwilt shire</w>\nsa o</w>\ncan cell\nim paired</w>\ntor ial</w>\nbre ed\nguy en</w>\njud ice</w>\ntit le\npro spective</w>\napplic ants</w>\nðŁį Ĭ</w>\nepis cop\ne id\nb yo\nstock ings</w>\nðŁĴĥ ðŁĴĥ\nll p</w>\nsna g</w>\nkeep it\nl ough</w>\nol son</w>\nmatur ity</w>\n!! !\"</w>\ncop ter</w>\ni sha</w>\nbl i</w>\nwil mington</w>\ntr youts</w>\nth ai\nðŁ¥ ³</w>\npe bble</w>\nkra ft</w>\nf p\nÂ º</w>\nssi vely</w>\nli vin</w>\ncontest ants</w>\ntex tures</w>\njo an\nh dr</w>\nfilm festival</w>\nprov ence</w>\nwi do\nop end\nc si</w>\nsto wn\ncro ati\nad just</w>\nhost ile</w>\nanaly sts</w>\nil an</w>\ncu ppa</w>\nbru m</w>\nnewfound land</w>\ngood win</w>\nme tt</w>\nmall orca</w>\nplu gs</w>\nbu k\nbb hutto\nwrest le</w>\nsa ire</w>\nsho pped</w>\nfor za</w>\nle head</w>\nvi vo\nba st\nro xy</w>\nreg is</w>\nhard working</w>\nhon olulu</w>\ndesp air</w>\nyoung sters</w>\nni g</w>\nimpro mp\nroll tide</w>\nde emed</w>\ntre ason</w>\nru shed</w>\nfor ged</w>\nff f</w>\npikach u</w>\nbri ggs</w>\ndo it</w>\nac cent\nla us</w>\ngla ze</w>\ncompet ent</w>\na ho\nphoto g</w>\nmid field</w>\nle go\nhar vard\nmin orities</w>\nre illy</w>\nslic ed</w>\nonce upon\niniti ally</w>\nfinanci ally</w>\nlandscape photography</w>\nhar dro\nqu o</w>\nmm ers</w>\npar kinson</w>\nsmu gg\nread iness</w>\nbru tally</w>\nglou cester\nmp ed</w>\nbbhutto zardari</w>\nmur der\nye d\ndat aviz</w>\nsr t</w>\ndow ning</w>\nbi ans</w>\nm Ã¼\nfle ck</w>\nfli pped</w>\ns ly\nbrilli ance</w>\nri m\nk um</w>\nbubb a</w>\nko i</w>\nknit ted</w>\nsor g</w>\nma is</w>\nðŁĮ ²</w>\nti ss\nsu stain</w>\nsen su\nak han</w>\nzi est</w>\nexam ines</w>\nchardon nay</w>\nuser name</w>\nshort list</w>\nre bs</w>\non o\ndar ing</w>\nhard wood</w>\nche que</w>\nrighte ous</w>\nlight ening</w>\ndir k</w>\nshra dd\ndu ra\ndown stairs</w>\nsh al</w>\nami gos</w>\nru ff\ns law</w>\nri es\nred nation\nman us</w>\nðŁĩ§ ðŁĩ·</w>\ndistin ction</w>\nu bun\ndur an</w>\nmi gra\nthi ans</w>\nla ver\ndomest ic\nk x\njaz zy</w>\njusti fy</w>\nbelong ing</w>\ninsul ation</w>\ncolor stv</w>\ndrun ken</w>\nchann eling</w>\nqu and</w>\nxi ii</w>\nenligh ten\nkan o</w>\nfati ma</w>\nteen choice</w>\nterri fied</w>\np ba</w>\nas ley</w>\nmet museum</w>\ndun e</w>\npack er</w>\nki o\nðŁĴľ ðŁĴľ</w>\nbo iler\nfas cism</w>\nar mored</w>\nback grounds</w>\nin mates</w>\nembarra ssed</w>\ndefin es</w>\nth d</w>\nwe go</w>\nsilic one</w>\nlo on</w>\nel ding</w>\nbor rowed</w>\nhe mp\nak sh\nkaw asaki</w>\nbr y</w>\nde af\nkill er\ndispo sal</w>\nðŁĩ °\nglaston bury</w>\nun covered</w>\no xide</w>\npo ff</w>\nd ant</w>\nk j</w>\nku ro\ndri zzle</w>\npeop les\nfe e\npro pri\ndd lovato</w>\npi ggy</w>\not is</w>\naller gies</w>\nu bis\npengu in\nser a</w>\nvi z\nprosp erous</w>\nici des</w>\ntornad oes</w>\nsene gal</w>\nweb cast</w>\nsto red</w>\nenchan ted</w>\nbb cone</w>\nbay area</w>\nentrepreneu rial</w>\nrednation rising</w>\nexperim enting</w>\nang an</w>\nlot to</w>\nthey re</w>\npor e</w>\ner p</w>\nseren e</w>\neast wood</w>\nbro kers</w>\nbar ge</w>\nstal lion</w>\ntimber lake</w>\ntailo red</w>\ndy stop\nb ate</w>\nlat ors</w>\ndi xit</w>\nbran son</w>\ndynam o</w>\nky lie\nshame ful</w>\nbt wn</w>\nspring time</w>\nmix ture</w>\ns ounded</w>\nlu ton</w>\ndad es</w>\nmal a</w>\nop ra</w>\nen ic</w>\nrahulg andhi</w>\nse wer</w>\n~~ ~~\nky u\nnor theastern</w>\nca er\nbc u</w>\nnir vana</w>\nkitch ens</w>\nous y</w>\nal m</w>\nriver dale</w>\nhid den\nfl int\nsp d</w>\npat rons</w>\nkaty perry</w>\nau gh\nexhib itions</w>\nsm c</w>\nshu ts</w>\nat ore</w>\nda in</w>\nsome thing\nber th</w>\nbo g</w>\npor ter\ngen to</w>\ncon cussion</w>\nang lic\nro we</w>\ngr illing</w>\nscar lett</w>\nmaster ing</w>\nmor nin</w>\ncomm ented</w>\nsi me\nsi zing</w>\nchrist y</w>\nce os</w>\nst m</w>\nat ry</w>\ntari ffs</w>\nvac ation\npre judice</w>\np su</w>\nparen tal</w>\nfar age</w>\ncan a</w>\ncap com</w>\nkoso vo</w>\nyou re\nmen stru\nstal in</w>\ngrape fruit</w>\nbr an</w>\nche sa\ndav en\nexc el\n!! )</w>\nà¹ Į</w>\ndistribu tor</w>\nce a</w>\nbride sma\nmillenni al</w>\nwa in\nob serving</w>\nmis ery</w>\nplan etary</w>\nexpo sing</w>\nbra ised</w>\ncomp ton</w>\ndon gha\nq l</w>\nspring steen</w>\nth ul\nsyl ve\ncab o</w>\npal ad\nniel sen</w>\ngaz ing</w>\nba ja</w>\nr oud</w>\norchi ds</w>\njohan nesburg</w>\nse man</w>\nd ji</w>\noper ative</w>\naffe ction</w>\neclec tic</w>\nat c</w>\nmut ant</w>\naw x</w>\nnic e\nmel bourne\nindu lg\ntu lip</w>\ndias pora</w>\nwel p</w>\nbig gie</w>\nmississ auga</w>\nretri ever</w>\nor an</w>\ntam my</w>\nc ta</w>\nhipp o\nseas oned</w>\nger mans</w>\neng v\nmarvell ous</w>\nim f</w>\nrela ys</w>\nmon tan\nmaur iti\nme ister</w>\nas surance</w>\nreig ning</w>\nsu fficient</w>\nhan e</w>\nno thing\npos se</w>\nnav y\nin love</w>\nbrigh ton\nen qu\nch ung</w>\nsweat y</w>\nes c</w>\ncal ed\nman s\nnicar agua</w>\nsl ices</w>\nmo cha</w>\nwashington post</w>\nbb n</w>\ndam ned</w>\ngrow ing\nen burg</w>\nlo an\nme s\nwh oops</w>\nbeliev ers</w>\nspi el\nvo daf\nl at</w>\ns led</w>\ncricke ter</w>\nbrown e</w>\ngolf ers</w>\nbar ra\nwat chers</w>\nlu igi</w>\nsw amy</w>\nmom s\npit ched</w>\nsan tor\ncr s</w>\nsi re</w>\nsc amp</w>\nbo de\nste war\njon ny\nent ity</w>\npac qui\nmind ful</w>\nmin india</w>\nbear ded</w>\ntemp t</w>\nscorpi on</w>\neat on</w>\nauthori zed</w>\nar to\ns vp</w>\nop athy</w>\ncch ini</w>\nhouse music</w>\ndisney world</w>\nâĢĶ @</w>\npro pose</w>\ndi y\nexpen se</w>\nten g</w>\npupp ets</w>\nsm el\nd aca</w>\nper ry\nfin n\nboo sting</w>\nlefto vers</w>\ncou gs</w>\nsatell ites</w>\nman y\naz e</w>\ng ong</w>\nfi e\nmetho do\nfer ries</w>\nðŁ¤Ķ ðŁ¤Ķ</w>\nexplore rs</w>\nload er</w>\nattrac ted</w>\nil ton</w>\ngodd amn</w>\npi azza</w>\ndoc tr\nsav ing\nparagra ph</w>\nvisu alization</w>\nmay ors</w>\nwork flow</w>\nack les</w>\nðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ\nà¤ ¸</w>\ntwer k</w>\nclu t\nlo ver\nte ases</w>\nsi an\no te\ndeter ior\naccor d</w>\nl fw</w>\nswar ovski</w>\nnat al</w>\ntra ps</w>\nk ina</w>\nanaly ze</w>\nlaye red</w>\nbever ages</w>\nun it\nran som\npe shaw\ndest ined</w>\nastro logy</w>\nsi pping</w>\nmiley cyrus</w>\ncam ino</w>\nmarshmal low</w>\nbli ss\nout back</w>\nfa q</w>\nint oler\nhumil ity</w>\npo ppin</w>\nhallo ween\nmon tene\nop hy\nnu n</w>\ntattoo ed</w>\na as\nðŁĮ ³</w>\ndale y</w>\nqual ity\ndu sa</w>\nfisher men</w>\nswi f\nter rac\nst au\nle in</w>\ntrol ling</w>\nship ment</w>\ngarden er</w>\nmarch madness</w>\nhead band</w>\ngr t</w>\nbur nett</w>\nw and</w>\n!!!! !!!!!</w>\ngh e</w>\ndu x</w>\nhu d</w>\nwar ner\nðŁĩ ¦</w>\nex ile</w>\nrescu e\nrat a</w>\nd han</w>\nduc ati</w>\ndro wn</w>\nbl ends</w>\nspi e\nalli gator</w>\nsimul taneously</w>\nbroo ke\nu ke</w>\nk har</w>\ncomm union</w>\nri ka</w>\nford fc</w>\nchin atown</w>\nyou rown\nme y\ncan al\nsyste matic</w>\nde pri\nox ford\nan il\nw ut</w>\nequ ation</w>\nbe z\nfle ur</w>\nthe good\nlang ley</w>\nad ity\ned ith</w>\nal fie</w>\nÐ¾ ÑĤ\nen cry\nbr ill</w>\nex emp\nce sar</w>\nmb ling</w>\nab ri\nsc icom\nj ing</w>\nschool ing</w>\nmi ka\nmechan isms</w>\nimpromp tu</w>\nrhe a</w>\nmoo re\ncrime a</w>\nbe sto\nwri ght\nel ders</w>\nro ds</w>\nkam al</w>\nfolkl ore</w>\nbe et</w>\nmini on</w>\nreli eve</w>\nthr o</w>\nteam usa</w>\npas cal</w>\nmade with\nboli via</w>\nitt i</w>\nfree bies</w>\ndesi red</w>\nbest selling</w>\nl iness</w>\nla den</w>\nke ane</w>\nmi sts</w>\nhipp ie</w>\natta chment</w>\n@ /</w>\nse w</w>\nflan agan</w>\nâĿĹ ï¸ı\nsupre mac\nstl cards</w>\nsi as</w>\nq u</w>\nrh ys</w>\nste ep\nval leys</w>\nv w\npav ing</w>\ndisp at\nal ison\npor te</w>\nid u</w>\nnew sc\nsoc ket</w>\nmo s\nco star\nre vo\nprote ins</w>\nstanley cup</w>\nm cal\near ring</w>\nse cs</w>\nmc lean</w>\ncap ric\nnick elo\nad en\nv c\nshou se</w>\nadap tive</w>\nmaxi mize</w>\nentertain er</w>\npro se</w>\ngri ffi\nsix teen</w>\nlam ar\nmi rage</w>\nsaudi arabia</w>\nawe ather</w>\nru st\nin filtr\nfashion week</w>\nðŁĺĬðŁĺĬ ðŁĺĬ</w>\nselec tive</w>\nbubb le\na den</w>\nfen nel</w>\ndeci sive</w>\nm ta</w>\nmock ing\nmb les</w>\nst amp\nmu le</w>\nbernar do</w>\ngr in</w>\npo tt\nj ingle</w>\nvet tel</w>\ncolom bian</w>\ncam o\nmotivation monday</w>\nba han</w>\np ly</w>\ndh ary</w>\nk ami</w>\nx men</w>\nsleep er</w>\ngar a</w>\nmy sti\nconfi dential</w>\nconflic ts</w>\np neu\nce s\ninsur tech</w>\nclean se</w>\nme rely</w>\nva is</w>\ntu x\nthe great\nshar on\nma j</w>\nhol a</w>\neco systems</w>\naj ay</w>\naa j\nhu sh</w>\nhar mon</w>\nbackto school</w>\nwiki leaks</w>\nreflec ted</w>\nðŁĺ ĵ</w>\ncommemor ating</w>\nac et\nbuck ingham</w>\nmessi ah</w>\ntu ous</w>\nhor net</w>\nto be</w>\nd q</w>\nhe ine\nmi g</w>\npl ate\nnichol son</w>\nsp ie</w>\ncumber land</w>\nnor mal\npho bia</w>\nhappy halloween</w>\ncity fc</w>\nmc el\ngilli an</w>\nke to</w>\nlu de</w>\nde mise</w>\nsu ga</w>\nstr ate</w>\nmcgr ath</w>\nvisit scotland</w>\nfoo led</w>\ncb r</w>\ngc se</w>\ncol ori\npo td</w>\nmissuni verse</w>\nfin ances</w>\nma poli</w>\nfor ks</w>\nØ ´\ncann on\nmedic inal</w>\nðŁĹ ĵ</w>\nkh o</w>\nwre ck\npan to</w>\nbag el</w>\ngu ll</w>\nsyndic ate</w>\nic y\npr c</w>\nki en</w>\nzi ka</w>\nti sh</w>\npe ta</w>\nc co</w>\nli za</w>\nch ut\nex traction</w>\nel g\ngl i</w>\nfu eled</w>\npos it\nrespec tively</w>\nleice ster\nbr ink</w>\nvulner ability</w>\nim ported</w>\ne sha</w>\nðŁ¦ ħ</w>\nr ural\nre ll\ngam ing\natlan tic\naband on</w>\nno ah\nre solved</w>\npro state</w>\naller gic</w>\nps d</w>\nâĺ ¹\ndun geon\nfang irl</w>\nillumin ated</w>\nm hs</w>\nwhite sox</w>\nd ently</w>\nck o</w>\nendor se</w>\nover ly</w>\ndazz ling</w>\nprior iti\nnight life</w>\nut il\nbe have</w>\nflam en\neast bound</w>\nðŁĴ Ł</w>\nilove you</w>\ngov uk</w>\nmozam bique</w>\nalle gi\ndr i</w>\ntestim onial</w>\nath s</w>\nì§ Ģ\nmm y\nshab by</w>\npro secco</w>\nfriend ships</w>\ncal am\ndam ages</w>\noff set</w>\njura ssic\njun o</w>\narre ll</w>\nðŁĴ ©</w>\ninterven tions</w>\ndare devil</w>\ncar ver</w>\nrun away</w>\nran e</w>\ntruste es</w>\nha ute</w>\ndep ths</w>\nðŁİ Ń</w>\nme in\nsacrific es</w>\ncon cier\nne sting</w>\ni zzy</w>\nme tam\nilove my\nur ine</w>\ndu lu\nmal hotra</w>\nve ins</w>\nnight ly</w>\nco at\nan di\nhe witt</w>\nlon el\nci ble</w>\nwr ite\njen nie</w>\nsant ac\nĸ ï¸ı</w>\nstr ato\nsingapo re\nsop rano</w>\nkri sten\ncheer ful</w>\nflee twood</w>\nfa iri\nm eli\nwa st\ntur nt</w>\nsfor sale</w>\nsc rolling</w>\nangel ina</w>\nren dition</w>\njeric ho</w>\nnick y\nor b\nfla vo\npatri ot\nash eville</w>\nsick ness</w>\nre fund</w>\naggre ssion</w>\nb pl</w>\nãĥ ĥ\nelu sive</w>\nthi story</w>\nhang er</w>\nbu ffs</w>\nvil las</w>\nat kinson</w>\nsp h\nja it\ndecl ined</w>\nwo k</w>\nsupre macy</w>\noo tball</w>\ney ang</w>\nðŁİ ĵ\ns ford</w>\nath i</w>\nconsu me</w>\nroad ster</w>\ne so</w>\nu pro\nreci pe\nau f</w>\nuc i</w>\nar on</w>\noo oh</w>\ncs go</w>\nre ich</w>\nmc d</w>\nmin ute\nladi es\npun k\nrut gers</w>\nmee k</w>\nariz on\nta j\nland lord</w>\nde gra\nautu mn\nlyn x</w>\nus f</w>\nb hi\nfairy tale</w>\ndongha e</w>\nbet sy</w>\nexplo ded</w>\nchen nai\nop a</w>\npro tag\nbr ant\nðŁĵ °:</w>\ng f\npal li\nðŁı¼ âĢįâĻĢï¸ı</w>\nsu t</w>\nill ini</w>\ncolum nist</w>\nshir tless</w>\nde centr\nsear ched</w>\nec or\nbu ggy</w>\ns ack\nðŁĺĤ ðŁĺŃ\nde t\nther i\nor naments</w>\nbring back\nto v</w>\nquarter finals</w>\nic he\ncon stra\ngi er</w>\nbuchan an</w>\nvi x\nkay aking</w>\nmu stread</w>\nswal low</w>\nmel b</w>\nsc af\nop al</w>\nmay oral</w>\nhar at</w>\nðŁ¦ ĭ</w>\nschedu les</w>\nid f</w>\nha gue</w>\nro z\na ah</w>\nd mc</w>\ndu plic\nca che</w>\norph an</w>\nfrac ture</w>\nrec on</w>\nch av\nbun nies</w>\nal ain</w>\nmustaf a</w>\nðŁİ Ļ\nvac ations</w>\ndynam ite</w>\ntex ted</w>\nbroad caster</w>\nðŁĴ £</w>\nste amed</w>\nrock er</w>\ndi etary</w>\nluxury travel</w>\ninaugur ated</w>\nsa wards</w>\nvaugh n</w>\nlincoln shire</w>\nclick ed</w>\nkra ja</w>\nf anc\nremo ves</w>\nlayo ffs</w>\nmc far\nbre eds</w>\nwin nie</w>\njon ghyun</w>\nincen tive</w>\nvari ations</w>\npat ton</w>\natur day</w>\npersist ent</w>\npr un\npi ers</w>\ndal es</w>\næ ĸ\nbreast feeding</w>\nr ance</w>\nta wa</w>\nĤ âĸ\nmur doch</w>\ncap tive</w>\nthi stle</w>\nnic a</w>\ncommod ity</w>\ncou ldnt</w>\nboard walk</w>\ngraci ous</w>\npractiti oners</w>\nn gc</w>\nscru m</w>\nner o</w>\ncamoufla ge</w>\ncol on</w>\nhe i</w>\nphys icist</w>\nsaturday morning</w>\nten er</w>\nsi won</w>\ncolum ns</w>\nbru ne\ny vr</w>\nba ir\nreti res</w>\nhal am\ncab er\nshaz am</w>\nmin u\ncas cade</w>\nmilk shake</w>\ngri d\nd ren\nvin cent\nso dium</w>\nplat ter</w>\ncheer leader</w>\nchen ko</w>\ny ak</w>\nelimin ated</w>\nty po</w>\ny man</w>\nre think</w>\nâĿ Ĺ</w>\nts ville</w>\nbernardo kath</w>\nex tr\nðŁĺģ ðŁĺģðŁĺģ</w>\nta o\nre per\nmo ths</w>\nem powered</w>\nc iting</w>\ntranspor ted</w>\nmon ks</w>\nsan at\ncle ars</w>\nbachelore tte</w>\ncamp bell\nracha el</w>\nhar le\nhand ler</w>\nclimb s</w>\ninter ference</w>\nrele ase\nsh and\nr bs</w>\nhr h</w>\nãģ ª\nval le</w>\nr Ã©\nsli me</w>\nw akes</w>\nchu bby</w>\nslo an</w>\nel ves</w>\nath en\nattor neys</w>\nmicro scope</w>\nston er</w>\nsc aling</w>\no be</w>\nc out\nse man\nmid week</w>\nbal sam\nðŁĺį âĿ¤</w>\nti ful</w>\nv ish</w>\nlo tta</w>\nri pping</w>\nre mn\nti re\nle ap\nha vent</w>\nla by\nhi mach\nwhisp ers</w>\nwe in\nðŁİ ¸\nwild flowers</w>\nse le\nu cc</w>\nli ability</w>\naz ine</w>\nsw ings</w>\nk ya</w>\nta ir\nre main\ne do\nflo ps</w>\npoc ket\ngrand ad</w>\nexam iner</w>\ngr is</w>\nffe ct</w>\nðŁĳĬ ðŁı»</w>\nstud ded</w>\nheart beat</w>\nde acon</w>\nfirm ly</w>\ninfec tious</w>\nste f\nout lines</w>\nle asing</w>\ncla ws</w>\nsen se\ntab s</w>\nhoo t</w>\nmo sul</w>\nspa wn</w>\nco a</w>\nhog warts</w>\nve in</w>\nalban ia</w>\nmanu el\nb ino\nvaux hall</w>\nscot land\ngo bucks</w>\nmat ty</w>\nphy sio</w>\ntor ino</w>\nconst able</w>\ninvestig ated</w>\ns lower</w>\nmistak en</w>\nbay er</w>\nwild fires</w>\nvo ic\nx on\ntime to\nchas sis</w>\nbar ric\npi on</w>\nbald head</w>\nwoo k</w>\nregi str\ndra fts</w>\nb hs</w>\nli gue</w>\nl ick\nstaf fordshire</w>\nbaf ta</w>\ndar ry\nje anne</w>\nven ding</w>\ncor p\nâĽ ³ï¸ı</w>\nkid dos</w>\nfen way</w>\nca o</w>\nwest bound</w>\nðŁĺ Ļ</w>\ndv r</w>\nquick er</w>\nbla h</w>\ngoo die</w>\nðŁĴĭ ðŁĴĭ</w>\nvo x\nesp er\nfac ade</w>\ncor relation</w>\nred bull</w>\nrou p</w>\ndecl ining</w>\nchi ve</w>\nmc gee</w>\ntur o</w>\nin der</w>\nf eller</w>\nfu g\nil ysm</w>\nmar di</w>\npeshaw ar</w>\nki eran</w>\nine ma</w>\nmeat balls</w>\npe ck</w>\ndepre ssing</w>\nsen sing</w>\ngi z\ndd ington</w>\nspring watch</w>\nro aming</w>\nyellow stone</w>\nhorse shoe</w>\nam man</w>\nweek day</w>\nol or</w>\nðŁ¥ °\nboo sts</w>\nspr int\nscar ves</w>\nje e\nbee tro\ncl an\nall the\nìĦ ¸ë\nenlighten ment</w>\nado be\nre generation</w>\n? @</w>\ncont ag\nyach ts</w>\nto u</w>\nmor a</w>\nen voy</w>\nr ani\ngo li\ndhanush kraja</w>\nwood working</w>\nstreng ths</w>\nse di\ndisc s</w>\nar ina</w>\nsc on</w>\nlit e\nano ther\nðŁ¥ Ĭ</w>\nye men\ngu ern\nsav vy</w>\nlo yed</w>\nbiom ed\nheart break</w>\ncomra des</w>\nmilli e</w>\npat ch\nun f\njar vis</w>\nbl aming</w>\ncommemor ation</w>\nge y</w>\nå ¥\ncardio vascular</w>\nalig ned</w>\ndocu ment\n. ?</w>\naesthe tics</w>\nem u</w>\nthe irs</w>\nle h</w>\nps ic\nsi f</w>\npl ateau</w>\nex pend\ndomin ating</w>\nrob es</w>\nmauriti us</w>\nexcep tionally</w>\nhom er\ndiscover ies</w>\nbra un</w>\nten nant</w>\ninsul in</w>\nðŁİ ®</w>\ncar bs</w>\nte as</w>\n? !\"</w>\nzi e\nfranco is</w>\nbrow sing</w>\nth ol\ncla rence</w>\nhel per</w>\nob tained</w>\ncas sie</w>\nle es\n! ,</w>\npome gran\nhu bs</w>\npresti ge</w>\n] [</w>\nmach er</w>\nbott led</w>\npun ch\npi pe\no ch\ngall ons</w>\ndeliver ies</w>\nu ra\nun day</w>\nmon de</w>\ndepic ts</w>\nre gency</w>\noutra geous</w>\nkhal ed</w>\ncar o</w>\nhe arti\nza g</w>\ndevelop mental</w>\nover coming</w>\nstati stical</w>\nflavo red</w>\nfor ds</w>\ncre atives</w>\nlau rence</w>\ndi as</w>\nsun screen</w>\nin ked</w>\npre acher</w>\nn ul\nimpac ting</w>\nauti stic</w>\nâļ Ķï¸ı</w>\no ss\npel icans</w>\ncele ste</w>\nv b\nru mp</w>\nmc gra\nfair fax</w>\nhu mor\nbbc news</w>\nrow ling</w>\ncal der\nseam less</w>\nag ne\np ti\nmix ed\nt shirts</w>\nmer ci</w>\nb tob</w>\nwomen instem</w>\ngenealo gy</w>\npre ven\nl our\ncra dle</w>\ngi use\nÐ ¾</w>\nchron o\nfair ness</w>\nchocol ate\ntor y\nas da</w>\npre scott</w>\nstret ched</w>\nal man\nu il</w>\nre charge</w>\nin tre\nob st\nhosp ital\nhay ward</w>\nteneri fe</w>\nfried man</w>\nvap ing</w>\nconfe ssions</w>\nye ah\nbal li\nluck now</w>\ncor pse</w>\nsculp tor</w>\namp ton\nt pp</w>\nindic ates</w>\nsur plus</w>\ntru man</w>\nðĿ Ļ\nsin ha</w>\nin vo\nsovere ign\nke v</w>\nestabli shing</w>\nengra ved</w>\nassu ming</w>\nðŁı ģ\nsou za</w>\nfab i\nton ed</w>\noun ge</w>\ndel oit\ndow ney</w>\nno ble\nom or\ncar tridge</w>\nðŁı Ĳ</w>\nu hur\nhol loway</w>\nsucce sses</w>\nr sa</w>\nâĦ ¢\nma zz\ntw d\ndisc ourse</w>\n. <</w>\ny at\nsatis fy</w>\ncom pri\nà¤ ¹</w>\ngraph ite</w>\ndisser tation</w>\nar ter\ní Ķ\nb ally</w>\nzom bi\nly ons</w>\na ic\nu bc</w>\npra da</w>\ne il\nda x</w>\ncla i\ngrand daughter</w>\nextravag anza</w>\nchall enge\nðŁ¤ ŀ\npo ver</w>\nprimar ily</w>\ndad dy\nman a\nbi kers</w>\ninqui ries</w>\nda un\nfel ine</w>\ngener ative</w>\nhe f\nbenef iting</w>\nlind sey\npol ka</w>\ndemonstr ated</w>\nal le</w>\nrand y\no su\nlow key</w>\nweir dest</w>\nred bull\nour y</w>\nn ous</w>\nwood stock</w>\ncre denti\nnic er</w>\ng ado</w>\naly ss\nap h</w>\nprepa redness</w>\nstation ary</w>\nincorpor ated</w>\ndy er</w>\nsarato ga</w>\ncele sti\n: \"\nantibio tics</w>\nor gs</w>\ninde fin\nap ron</w>\nÐ¸ Ð\nfif teen</w>\nno f\nðŁĶ Ŀ</w>\nph x</w>\nte ga</w>\nm z\norganiz ational</w>\non air</w>\nband ung</w>\npleas ures</w>\nmor i</w>\nsecre tari\nrac coon</w>\nca shi\npil ates</w>\nk on</w>\ngeof frey</w>\nla o</w>\nkam p</w>\ndepart ments</w>\nback packing</w>\nan am\nÃ «\ncrack down</w>\naun ty</w>\non do</w>\nli zzie</w>\nph ers</w>\ncu n</w>\nðŁĩ ±\nk pop\npu t\ninten tional</w>\nconnol ly</w>\nbar clays</w>\nhs fb</w>\nswin don</w>\nu ku\ns ally\na int\nâľ ħ\npen ang</w>\nup lifting</w>\nepile psy</w>\ninter ro\nbun gal\ngo ku</w>\nblue berries</w>\nà¤ ¦</w>\nu ssia</w>\nsil ky</w>\nmou red</w>\ni stic</w>\nbri efs</w>\nme ats</w>\ngo b\nch aser</w>\nstate wide</w>\npra sad</w>\ngl itch</w>\nar in\nban ff</w>\nmemb er\nðŁĺŃ âĿ¤ï¸ı</w>\nlo ving\nhall a</w>\nà¸ ¡</w>\nsmo kers</w>\nyak u\nscicom m</w>\nphysi o\nsw ol\nlem ons</w>\ngel ato</w>\nch ool</w>\ncapit als</w>\nki stan</w>\nti ghts</w>\nspi kes</w>\ntrav ellers</w>\nik lan</w>\ncommissi oning</w>\nar ine</w>\nemabiggest fans</w>\nempha sis</w>\nfront line</w>\npad dock</w>\ndestruc tive</w>\nba ha\nl inger</w>\nje wish\nshet land</w>\nmc gin\nmon key\nko z\ns one</w>\nraj ini\nte h</w>\ny en\nc vs</w>\nmasqu er\ngir ly</w>\nwe sle\nwas nt</w>\nbro dy</w>\ntermin ator</w>\ngil le\nmag gi\nbir die</w>\njeopar dy</w>\ncu bic</w>\nvm ware</w>\nintric ate</w>\nan up\nto pia</w>\neast on</w>\nsab res</w>\ninvestig ates</w>\nbu sting</w>\nbil ingual</w>\nvalent ino</w>\nin format\nfer re\nadvent ur\nhydr ate</w>\nfor sy\naz iz</w>\nsan to\ne de\nwhist ler</w>\ncontinu ously</w>\nd ham\nun used</w>\nji had</w>\naddic tive</w>\nvi dy\ndo b\ni do</w>\nfi ed\nni versary</w>\nn one\nfu er\nðŁĺį ðŁĺĺ\ncoven ant</w>\nprin table</w>\nimmac ulate</w>\no em</w>\ncl t\nserv ants</w>\nconsu med</w>\nun released</w>\nsc um</w>\npack aged</w>\nme re\nìĦ¸ë ¸\nto by\nta f\nspo ons</w>\nme al\nf ball</w>\nfair field</w>\njan et\nsilver stone</w>\ndart mouth</w>\nfollow me</w>\nvoy ager</w>\nkom bat</w>\nanni ver\nene w\nmag dal\nho ve</w>\nsa th\ngrizz ly</w>\ncar di</w>\ngart ner</w>\nsand y\nkan ye\npost ure</w>\npo ign\nim pulse</w>\nradio logy</w>\nhoriz ons</w>\nsi am\naish war\n= =></w>\nno che</w>\ntr is</w>\nel yn\ncom me</w>\ndu i</w>\nce c\ncouncill ors</w>\ncudd ling</w>\ncreep ing</w>\nloc ke</w>\nmanag es</w>\ntrans ferred</w>\nne cks</w>\ndi er\ndan o</w>\nv ick</w>\nlun ches</w>\nd he\nen sures</w>\ncri ss</w>\nul ster\nbann on</w>\ncont enders</w>\nsp am\nsweet ness</w>\nmed al\nhon duras</w>\narc tic\nultra sound</w>\nin fr\ndisco vers</w>\nei ffel</w>\nca sters</w>\nru ben</w>\ndu st\nawe ed</w>\natri um</w>\nlest we\nse ared</w>\nðŁĵº :</w>\nty ne</w>\nex changes</w>\nlittle mix</w>\nl le</w>\nastron auts</w>\nhersh ey</w>\nwork day</w>\nkno b</w>\nso v</w>\nre signs</w>\ntoday show</w>\nder man</w>\nan th</w>\naf c\nta ster</w>\nsw oo\nsa eed</w>\nper ing</w>\nnarrow ly</w>\nrn li</w>\nbest buy</w>\npanas onic</w>\nobst acle</w>\nfarmer s\nðŁİ Ļ</w>\npa wan\nki est</w>\nang ers</w>\nabsur d</w>\noh my\nsin o</w>\npist achi\nsp ice\ngiu li\nprime time</w>\nko w\nk ens</w>\nex agger\n! ?!</w>\nu ba</w>\nmidd les\nju dd</w>\ne jec\nslam med</w>\npen sions</w>\nof a</w>\nre create</w>\nb hp</w>\nxx l</w>\nliver pool\nthre sh\npur ity</w>\nni eu\nhol ics</w>\nwr ath</w>\nra do</w>\ngli o</w>\nam ma</w>\ndile mma</w>\ncr u</w>\nlets go</w>\n.... @</w>\nâĿ ĵ</w>\nsugge sting</w>\ntru mps</w>\nhor us</w>\nf v\nic om</w>\nrefer ring</w>\npredic tive</w>\ntar ts</w>\nge tte</w>\nso ck\nglo ssy</w>\npin ky</w>\nal ec\nthy me</w>\nou ra\nthero ad</w>\npe tr\ncr am\np fi\ndv n</w>\nme ier</w>\nincen tives</w>\ntun nels</w>\nmobi l</w>\nrec ap\nextra s</w>\nupri ght</w>\nrev amp</w>\nper severance</w>\n, -</w>\not p</w>\nmir ror\nar wx</w>\nger ry\nma her</w>\ng or</w>\nhom epage</w>\nam is</w>\nag ra</w>\nmade le\nbest friend\nsirius xm</w>\nbun dles</w>\nadmir ing</w>\nt dsb</w>\nðŁį ģ\nch as</w>\nslow ing</w>\nro h</w>\nwall papers</w>\nâĢ¦ /</w>\ntek ken</w>\ngang s</w>\ntal a</w>\nlind say\nshou l\nline backer</w>\ntool kit</w>\nur anium</w>\ncaly p\nab rams</w>\nmat thi\nðŁı ¿\nhon ourable</w>\nda yo\nver sail\ntan k\nst c</w>\nfr itz</w>\nspl end\npat ag\nanno yed</w>\non day</w>\ndevast ated</w>\nchattanoo ga</w>\nnational ism</w>\nmas sey</w>\njen n</w>\ntail or</w>\ndev gn</w>\norg ans</w>\nzu cchini</w>\non fox</w>\nsat ire</w>\nwex ford</w>\ndis grace</w>\nno to\nvol ta\nâĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ıâĿ¤ï¸ı</w>\nà ¶\nhome owners</w>\npoin ter</w>\nm cr\nau sten</w>\nday sto\nmo ons</w>\npal ma</w>\ngra zing</w>\ne so\ninfluen cers</w>\nshahid kapoor</w>\ncompli ant</w>\nmeasure ments</w>\ndevelop s</w>\ny d\npar l</w>\np vt</w>\nrand olph</w>\ntor tured</w>\nger ald\neli as</w>\ndeepi kap\nwar mup</w>\nhick ory</w>\ng ap\nco ffin</w>\nam our</w>\nre neg\nmoun ting</w>\nseven s</w>\nig le\nhi er</w>\ndec ad\ntri ght</w>\nesc apes</w>\nwer ner</w>\nt fl</w>\nful filled</w>\nni ger</w>\nsour dough</w>\nre aper</w>\nchoo ses</w>\nspin ner</w>\nweek nd</w>\nfil tered</w>\nsh uk\nkat i</w>\nold ham</w>\nopen source</w>\nkh anna</w>\nat elier</w>\nconne c\nopho bic</w>\ngla s\ncomplic ations</w>\nar son</w>\ncounc ils</w>\nsm ol\nas sy\nlur king</w>\nling ui\nhan ks</w>\ne in\nÙ ħ</w>\nru gs</w>\nn guyen</w>\nnou veau</w>\nmen ace</w>\nle v</w>\nalad din</w>\nru ining</w>\nround about</w>\nk m\ncon or\nshoo ps</w>\nmay day</w>\ntraum atic</w>\nprab has</w>\nka iser</w>\nk ita</w>\nrou ter</w>\npe dro\nre tar\nstun ner</w>\nspani sh\ndistur bed</w>\nacade my\ne learning</w>\nwit ty</w>\nsen g</w>\nfer al</w>\nav y</w>\nsta b</w>\nke aton</w>\nur du</w>\nko to</w>\nhu i</w>\ncoo ke</w>\nari an\nthe personal\nu ma\nse ap\na sting</w>\nrhetor ic</w>\nhand writing</w>\nmunici pality</w>\nconsor tium</w>\nðŁĲ Ł</w>\nglasgo w\nra ya</w>\neli za</w>\npolym er</w>\nbro th</w>\nprac ti\ncorrespon dent</w>\naddic ts</w>\ngay le</w>\nail ing</w>\no fe\np li\nhear tw\nst itch\nsight ings</w>\nprie sts</w>\nsam o\nslo th</w>\ngood wood</w>\nroc co</w>\nsab c</w>\nsumm it\nl ace\npres ley</w>\nitt en\ncin cy\nthepersonal network</w>\ns week</w>\npe gas\naf con</w>\nregi stry</w>\nci m</w>\nle th\ndic ap\ncand ice</w>\nflu ent</w>\nsm ack</w>\npede stri\nal oud</w>\ncar ac\npriyan kach\np gh</w>\nir ons</w>\ndol ce\nlat via</w>\ndece ased</w>\nthero ck</w>\ncla p\ncen e</w>\nfo am\nmorris sey</w>\ngre t\nessenti ally</w>\ncom cast</w>\nbe agle</w>\nargu es</w>\ning ed</w>\n- âĢ¦</w>\nsa g</w>\nha san</w>\nðŁĻ Ĩ\nðŁį °</w>\nnh ra</w>\nkann ada</w>\nindic ators</w>\non er\nbri xton</w>\nat as</w>\nscreen play</w>\nsor ority</w>\nsha heed</w>\nhe em</w>\nclass mates</w>\ntain ment</w>\nes i</w>\nbreast cancer</w>\nzucker berg</w>\naur or\nen cia</w>\nref ers</w>\nkae per\nvor tex</w>\ncom part\nlym ph\nphotograph ing</w>\nste ff\nrest ling</w>\npar sley</w>\nmom ento</w>\nth man</w>\nlac king</w>\ndu tt</w>\nocu lus</w>\nfin o</w>\nfren zy</w>\nra sc\nder n</w>\ndis missed</w>\nnoo k</w>\nmet gala</w>\nsh ill</w>\nrapha el</w>\nmaver icks</w>\nexhib its</w>\neag erly</w>\nc pa</w>\namen ities</w>\n. âłĢ</w>\nexo dus</w>\nern st</w>\nlit a</w>\ndeal t</w>\nwomens march</w>\ni ain</w>\nscore board</w>\ncampe ones</w>\nc en</w>\nti ki</w>\ngarri son</w>\nfidel ity</w>\nbra g</w>\nroad map</w>\npsy chop\nlo e\nble u</w>\nðŁĳĬ ðŁı¼</w>\nsau vi\nspr inger</w>\ntemp tation</w>\nru dolph</w>\nac ura</w>\nwic z</w>\nparach ute</w>\nstro l\nlen ny</w>\nzi k</w>\ndom s</w>\nnb af\nal pac\nvivi an</w>\nro ve</w>\npre et</w>\nperpe tu\nsna ke\nair soft</w>\ninfl atable</w>\nprin ces</w>\nati e</w>\nffe y</w>\npati ent\nm ire</w>\nchel le</w>\nsl ack</w>\ngroo vy</w>\n# :</w>\nup loading</w>\n!!!!!!!! !!!!!!!!\nsiem ens</w>\nprovi sion</w>\nv fx</w>\nneed y</w>\nf ats</w>\nto poli</w>\nbhu tto</w>\nsa thletics</w>\nalu ms</w>\nt winning</w>\nsouth western</w>\nadop ting</w>\nlast night</w>\nman ne\nla ga</w>\ntw ell</w>\nac ia</w>\n-- --</w>\neye wear</w>\nhur ley</w>\nfle e</w>\nsa ch\npe cker</w>\ncost ly</w>\nis k</w>\ncr ates</w>\npolic y\nero sion</w>\nin go\nwer k</w>\nðŁĲ į</w>\ntorto ise</w>\ntherap ies</w>\ninter net\nchihuahu a</w>\nri ps</w>\nfre i\ned or\ntai ji</w>\nt fc</w>\ndo d</w>\ndemp sey</w>\nchrist in\nchen g</w>\nhi ps</w>\ngra eme</w>\ncom passionate</w>\ncavali ers</w>\nhistor ic\nsoul ful</w>\ncrimin al\nja c</w>\nvin ci</w>\nexpi red</w>\nsur at</w>\nturi smo</w>\nk ona</w>\nse aweed</w>\nber ts</w>\nle ica</w>\nexpre ssing</w>\na al</w>\nwor t</w>\nbreak fast\nher ring</w>\nam used</w>\nrhu barb</w>\nmar tian</w>\ncospla yer</w>\ny ash\nstri al</w>\nra ul</w>\nrefer ral</w>\ndw ts</w>\nj w\nad ler</w>\ncur tains</w>\ngu r</w>\nval ence</w>\ntyr one</w>\nsw fc</w>\ncoach ed</w>\nre born</w>\ndiabe tic</w>\ncho ke</w>\nnor folk\ninvestig ative</w>\nðŁĴ¯ ðŁĴ¯\nz id\nv mas</w>\nphi e</w>\nobjec tives</w>\nâľ ĭ</w>\nover due</w>\ndi vers\nmat su\nðŁİŁ ï¸ı</w>\ncasu alties</w>\nà¸ §</w>\nal k\nstand ardi\nre alist</w>\narti facts</w>\npand or\nke x\nin vin\n( !)</w>\nine y</w>\npar aly\nmr t</w>\nfay e</w>\nthe voice</w>\non ga</w>\nde ed</w>\nskin ner</w>\naz wx</w>\nspeci men</w>\npriyankach opra</w>\nnu evo</w>\nbar kley</w>\ntoulou se</w>\nresu mes</w>\nfootball ers</w>\ncit i</w>\nfe tch</w>\nÃ¨ re</w>\nlestwe forget</w>\nðŁĻ ĭ</w>\nch unk</w>\ndri fting</w>\nmanipul ation</w>\nequ als</w>\npu tt</w>\nky ungsoo</w>\nâĿ¤ï¸ı #</w>\nela stic</w>\npar ano\nfo y</w>\ndo ping</w>\ncin cy</w>\nss ler</w>\ninterrup ted</w>\nal ay\nado res</w>\name thy\ncon voy</w>\nãĢ ı</w>\nĬ ãģ\nblack list</w>\ngener als</w>\nsa chin</w>\nbru shed</w>\noun ces</w>\nnon stop</w>\nilli ams</w>\nbt sarmy</w>\nu av</w>\nru ff</w>\nbur ma</w>\nbi k\ndefen ce\nschul tz</w>\nbo asts</w>\nlonel iness</w>\ngo re\ntrans forms</w>\nalum na</w>\n@ @</w>\nra ppers</w>\nne hru</w>\ncar o\nhimalay an</w>\nwearab les</w>\nge h\npepper mint</w>\nre development</w>\nflam ingo</w>\ncos by</w>\nbig baldhead</w>\nag ri</w>\nbare foot</w>\nsco pes</w>\nre gram</w>\ngh ana\nðŁİ «</w>\ni heart\nsa die</w>\ncarri e\nmicrobi al</w>\nku ala</w>\nsk ater</w>\nquer que</w>\nâĻ ©\ngen res</w>\nreas oning</w>\nch ased</w>\nas o\nsli pped</w>\nen can\nvam os</w>\nker s\nad verse</w>\nmo il</w>\ncommod ities</w>\nwith you</w>\nsil ent\nhy pe\nan de</w>\nam ination</w>\nwhi spe\nlit z</w>\nâļ½ï¸ı âļ½ï¸ı\nri ff</w>\npp y\nlam bs</w>\ngan esh</w>\nab sent</w>\nregu lator</w>\nmarse ille</w>\nen roll</w>\npar cel</w>\nwa p</w>\nby rd</w>\nðŁĩ Ń\ntu ber\ncountry music</w>\npar l\ncontro llers</w>\nresponsi bilities</w>\nwe y\nch ate\nmontene gro</w>\nchic o</w>\nmil an\nl ms</w>\ntra inees</w>\nappropri ately</w>\nun certain</w>\npopp ies</w>\ned sheeran</w>\nnutr itious</w>\ngar o</w>\ndeut sch\nawe some\nãĥ ¼</w>\ncomfor tably</w>\nland marks</w>\net i</w>\nre usable</w>\ndaniel le\nro sal\nco les</w>\njust ic\nc cs</w>\nf anny</w>\nni m\nmc u</w>\nclin ch</w>\nat ene\nmer ge</w>\nim db</w>\nang lo</w>\nuc cino</w>\npan ini</w>\nan not\nbur berry</w>\nfeat ure\npredic ting</w>\nfashioni sta</w>\ns ask</w>\nimag inary</w>\nmm o</w>\nsouth sudan</w>\nspe ar</w>\nhu bble</w>\njo inthe\ncoyo tes</w>\nsli go</w>\nko dak</w>\nsit com</w>\npolaro id</w>\nroo ted</w>\ncorru p\nðŁĻĮ ðŁĻĮ</w>\nbris ban\nat z</w>\nah l</w>\nre my</w>\ntal ent\naval on</w>\nra da</w>\npau line</w>\nlocom otive</w>\ngo ons</w>\nne mo</w>\nmaser ati</w>\nic u</w>\nstu tt\nhistor ically</w>\nsm b</w>\npres by\navo id\nso oners</w>\nrhine stone</w>\nw ad</w>\nri sing\ntro t</w>\nmo des</w>\nreg ent</w>\noptimi ze</w>\nre ece</w>\nsm u</w>\nver ti\nnewyork city</w>\ncor tez</w>\nra c</w>\nin case</w>\nsin c</w>\nfiel ding</w>\ne tta</w>\ntiff any\nal monds</w>\nsad dle\nk rat\nmat ter\ng low\nstar ving</w>\ngl o</w>\ncra ppy</w>\nsl ur\nst d</w>\nmonit ors</w>\nrecei pt</w>\nmaymay entrata</w>\nmc il\nun is\nrain bows</w>\ncal dwell</w>\npacqui ao</w>\nj op\na fe\nhoo k\nes sen</w>\nwiz ard\nmedi an</w>\nfla ws</w>\ncom s</w>\nâĿ Ħ</w>\ning h</w>\nha ynes</w>\nanton io\ntem plates</w>\nou ter\nna w</w>\ncardi gan</w>\nbel grade</w>\nðŁĴ ī</w>\nhom o</w>\na ise</w>\nro pes</w>\nno ve\nwhat you\ntri gge\nconcep tion</w>\nad ukone</w>\nna di\nfri ars</w>\nsw er\nadju sted</w>\nhot line</w>\nsan ity</w>\nkau r</w>\ndown loading</w>\nc gi</w>\nten or</w>\neth nic\napp alach\nà¸ ¸</w>\npa g</w>\ngol ds\non set</w>\ninvestig ator</w>\ncar tel</w>\npeace fully</w>\njarre tt</w>\ncat alan</w>\npoli o</w>\nn um</w>\nfru stration</w>\ndhar ma</w>\nmy life</w>\nâľĮ ðŁı»</w>\naber deen\nmu sa</w>\nbin der</w>\nspark ly</w>\nfle eing</w>\ninstin ct</w>\nco ping</w>\ndomin ance</w>\nill ers</w>\ner a\nu conn</w>\nlo oms</w>\nliving ston</w>\ngal i</w>\nhe s\nc ma\nbel a</w>\nse ley</w>\nmon k\nla ch\nmar x\nÂ ´\nm erica</w>\nwoman in\nes sex\nra ina</w>\njim i</w>\nnep tune</w>\nz ack\nchine se\nmart ins</w>\nchand elier</w>\nher n\nwith us</w>\near l\nasph alt</w>\nmodu les</w>\nst p</w>\nul la</w>\npsychi atric</w>\nmile age</w>\ncaptiv ating</w>\nsi der</w>\nmen to</w>\nmor t</w>\ntran ce\ntal bot</w>\nab by\nì ĥ\nâľĮ ðŁı¼</w>\nj ak</w>\ndaw n\nturn up</w>\nscre wed</w>\nfe ds</w>\nblue print</w>\nðŁĴĸ ðŁĴĸ</w>\nhar sh\ner os</w>\ninsom nia</w>\nban kers</w>\nta emin</w>\nmis conduct</w>\nhu mber\ngi di</w>\nedu ardo</w>\ncon a</w>\nmusc ular</w>\nconsu ming</w>\nra sh</w>\ndon nie</w>\ndi pped</w>\ncol lie</w>\nsamu el\nmelt down</w>\nðŁĺįðŁĺį ðŁĺį\nme z\nexam ining</w>\nschwar tz</w>\npri stine</w>\nðŁĲ Ŀ\nve it</w>\nful filling</w>\nan esthe\ngue sses</w>\ndra ft\nsom me</w>\nsoli d\npati onal</w>\nho ped</w>\nevolu tionary</w>\nall er</w>\nenter tained</w>\nsli ps</w>\nlud wig</w>\nconclu des</w>\nsen sible</w>\nbon net</w>\ncra ze</w>\ntra s</w>\nhaz ards</w>\nconst antine</w>\ned ics</w>\nstar trek\nto c</w>\noccu pational</w>\nin cheon</w>\ndeepikap adukone</w>\npizz as</w>\nnew comer</w>\nde part</w>\noppre ssion</w>\nebon y</w>\nfoss ils</w>\ntro jan</w>\nel en\nste aks</w>\nk hou</w>\npositi oning</w>\nug by</w>\nred cross</w>\nak h</w>\ndol ce</w>\nus mnt</w>\npp en</w>\ndil ig\nma vs</w>\ncall er</w>\ncost ello</w>\nâĽ Ħ\ndy n</w>\nthing s\nrhin os</w>\na xi\nsar kar</w>\ncon vocation</w>\natt ers</w>\nss ss\nfun gus</w>\neu gen\nruss o</w>\nsqu at</w>\nw sb\neli on</w>\nwilliam sburg</w>\ns off</w>\ndefici ency</w>\nbe arer</w>\no kin\nkey stone</w>\nt wain</w>\ncal ming</w>\nbreak able</w>\nwa res</w>\nhorser acing</w>\ncom bs</w>\nbun ting</w>\nu it\nt land</w>\nðŁĴĻðŁĴĻ ðŁĴĻ</w>\nga stron\nsab ot\nick ers</w>\ncommissi oners</w>\nsen ate\nii ot</w>\nath ena</w>\nnit rogen</w>\nan tony</w>\nero tic</w>\ndi alo\nmis sou\nhypo cr\nâľ Ī</w>\nkaeper nick</w>\ncan v\nd roo\nclevel and\no sh\nmon sta</w>\nstefan o</w>\n^ )</w>\nsh ul\npo ison\nha e\ncommerci als</w>\nma ul\nnit ro</w>\nco worker</w>\nalo e</w>\nvap or</w>\nt ents</w>\nrussi an\nqu id</w>\nquestion able</w>\nmid get</w>\npo ker\ngirl friends</w>\nsin the\nerit rea</w>\nten ure</w>\ndepos its</w>\nbuc keyes</w>\nspot ter</w>\ntheod ore</w>\ntrin ity\njoaqu in</w>\nu cci</w>\nfollow the\ncaf c</w>\nmp a</w>\nðŁĲ »\nplo tting</w>\ndom ino</w>\nta ek\nsion ally</w>\ndicap rio</w>\npa p</w>\ncar mel\nig er\nbt cc</w>\nbeth le\nwww bigbaldhead</w>\nfoo die\nbagh dad</w>\nmason ry</w>\noff ended</w>\nà ·\nà¸ ģ</w>\nsc ro\nvers es</w>\nori ent</w>\nar ches</w>\npi yu\nknow your\ngre e</w>\nta kers</w>\ngu ard\ndish on\nbucket list</w>\nbha fc</w>\nwar dly</w>\nðŁİīðŁİ Ĭ</w>\nleigh ton</w>\npe w</w>\nstra y\nassaul ted</w>\nin hal\nly fe</w>\namar keting</w>\nl x</w>\nkat z</w>\nubun tu</w>\nme o</w>\ncarto onist</w>\nturno ver</w>\nmi z</w>\ndis like</w>\nmul len</w>\nmo f\nbl and</w>\nhi des</w>\nemer ges</w>\nchori zo</w>\ntruste e</w>\nma hog\nlan sing</w>\nparalym pic</w>\nfa int</w>\nfa una</w>\nch al</w>\nsn ar\ncat h</w>\nbent on</w>\ncast illo</w>\nsli ppery</w>\napric ot</w>\noec d</w>\nbar o</w>\nl z</w>\nhe ming\nclow ns</w>\nco workers</w>\nperu vian</w>\ncommu ters</w>\ny ell</w>\nðŁļ ´\nunder ing</w>\nv j</w>\ntt p</w>\nfli pk\nw ana</w>\nsoc ent</w>\nĤâĸ Ĥâĸ\nà¤ Ĥ</w>\noo sa</w>\njag ger</w>\ndi sm\ne less</w>\nd ham</w>\ncali f</w>\na official</w>\nec lip\nharro gate</w>\ngra pp\ncom rade</w>\nn tr</w>\nconcentr ate</w>\nthi ghs</w>\nbit coin\nbel arus</w>\në ĵ\nend uring</w>\nnow watching</w>\nindustri al\npi p</w>\nar on\nar at</w>\nÂ ®\nwhit by</w>\noooo ooo</w>\nsa ree</w>\ntic als</w>\nmis leading</w>\nyo on\nyear s\nsle igh</w>\nroman ian</w>\nsciss ors</w>\nvam pires</w>\nac up\nab ba</w>\nth weeksary</w>\ncent ri\nfl ye\nu o\nc bi</w>\nbu ena</w>\nsin d</w>\nmar ino</w>\nbur r</w>\nre building</w>\nà¤ ²</w>\nanniver saire</w>\nac ca</w>\nðŁĴĢ ðŁĴĢ\ngett ing\ntu lips</w>\nwolf pack</w>\nâľį ï¸ı</w>\nmore than\nta kin</w>\nðŁ¤ĺ ðŁı»</w>\nu be</w>\nmon ic\ndou bts</w>\nmo wer</w>\nco balt</w>\ndon ne\nspecul ation</w>\nargu ably</w>\nkak u</w>\nhtt ps</w>\nprosecu tion</w>\ndin ah</w>\nstam atic</w>\ndisclo sed</w>\nbever ly\nfl wx</w>\ncra bs</w>\nextraordin aire</w>\nwar mest</w>\nimper i\no logists</w>\ntrac es</w>\npar c</w>\nlake side</w>\nam r</w>\nter i</w>\nhour ly</w>\ndomin ation</w>\nar row\nshrews bury</w>\nance stry</w>\nwr angler</w>\ntrigge red</w>\npen sac\nroo ster</w>\nsurvi ves</w>\na on\nbo ko</w>\nval or</w>\nlove is\nla g\npe y</w>\nfo cal</w>\nout laws</w>\nbl anc\nartic ho\nwit s</w>\nmarsh all\ndie go\nsupport small\nu ca</w>\nsa h\nje et</w>\nsyn ago\ngover ning</w>\nðŁĴ ¬</w>\nsal ads</w>\ncre ate\nmiri am</w>\ncen sored</w>\nami de</w>\nno u</w>\nz eta</w>\nallegi ance</w>\n* )</w>\nbl m</w>\nric an</w>\npa stors</w>\noly mpus</w>\nblo c</w>\nwhir l\nstar ry</w>\npr one</w>\ny k</w>\np ne\ncongratul ating</w>\nbe v</w>\nso ber\nlove island</w>\nsa ir</w>\nan ing</w>\ntutor ials</w>\nq e</w>\nlun d\nin ist</w>\ncle ver\ntaxpay er</w>\nali z\nwren ch</w>\ndd ling</w>\ncap ri</w>\nh pa</w>\nðŁı» âĢįâĻĤï¸ı</w>\nna j\no j\nfuturi stic</w>\njelly fish</w>\nðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥</w>\ncel ery</w>\nplan k</w>\nfil a</w>\nne me\nun healthy</w>\nlec tions</w>\nðŁ§ ¡\nrit chie</w>\nn ws</w>\nmi kha\nwonder woman</w>\nâĢ İ</w>\nhip stamatic</w>\nka g</w>\nðŁĴľðŁĴľ ðŁĴľ</w>\npoul try</w>\nmo w\nwor ds\nlo ff</w>\nðŁ¤£ ðŁ¤£</w>\nrelat able</w>\nre mixes</w>\nkeny atta</w>\nke m\nre signed</w>\nfo d\nstra igh\nj lo</w>\nhu tch\nbox ers</w>\ncolle en</w>\nmag s</w>\ninstruc tional</w>\nko l</w>\nattrac ts</w>\npra g\naccount ant</w>\ngo ggles</w>\nbr u</w>\nth ole</w>\nmar row</w>\nleu ke\noc to\npon ds</w>\nbubb ly</w>\nhe ist</w>\nìĹ ĳ\nim p</w>\na har\nha unt</w>\nhall mark\npsy ch\nkkkk kkkk\ncol umb\njump suit</w>\ncost co</w>\nsi delines</w>\nag gies</w>\nover turned</w>\nni b</w>\nkey chain</w>\nfu k</w>\nf af\nmi am\nassist ants</w>\ncy cled</w>\nri der\ndam mit</w>\nred wings</w>\nmag es</w>\nkin s\nì Ĥ\nho d\nson t</w>\ncarol ine\n\" '</w>\ncu le</w>\nbra id</w>\nfel ony</w>\nar ities</w>\nruther ford</w>\ndepic tion</w>\nisab elle</w>\nro ach</w>\nk day</w>\nfifth harmony</w>\nem y\nli gam\nbari sta</w>\nalbu querque</w>\ngro ss\nðŁį º\noo ks</w>\nðŁĳ ¼</w>\ndun can\ntry in</w>\njag s</w>\ng ould</w>\nli tho\nâģ £\nÐ° Ð\nsam my\ntun g</w>\ncas ser\napo lo\naaaa a</w>\nman g</w>\nas ics</w>\nsh en</w>\np ye\ntur bul\nss p</w>\nsaint sfc</w>\non lin\nn anny</w>\nhe ster</w>\ndo z</w>\nà¸ Ķ\nth read\nren ts</w>\nkh and</w>\nðŁĴª ðŁı½</w>\nun conditional</w>\nrob son</w>\ncar re\nph on</w>\nsacrific ed</w>\nÂ £\nauto s</w>\npar ker\noc a</w>\nlog in</w>\nkee gan</w>\nhard cover</w>\ndough nuts</w>\nðŁĮ İ\nspit fire</w>\nrefresh ments</w>\nsaskat oon</w>\ncommod ore</w>\nj f\nrub ber\nhalam adrid</w>\nchild care</w>\nstra da</w>\nio m</w>\nri k\ndak ar</w>\nther mom\ncro pped</w>\ngar u</w>\nali k</w>\nven i</w>\ni ft\nsi ka</w>\nritu als</w>\nz ul\ne ch</w>\nÂ ©\nsu dan\nl land\ni me</w>\ndo cker</w>\nì ¤\nfe ared</w>\nfa o</w>\nwal ter\nno g</w>\nmutu als</w>\nl h</w>\nali gn</w>\nmon ia</w>\nconcep tart</w>\nðŁĻı ðŁı¼\nsco e</w>\ncompet ence</w>\nsw ine</w>\nly me</w>\nlaun ch\ngreen er</w>\nabstract art</w>\ninqu is\ngran ada</w>\nga elic</w>\nflu ff</w>\nd backs</w>\ngrave yard</w>\nba be\nacade mic\nadventur ous</w>\njoh ann</w>\n~ !</w>\nbi bi</w>\n| #</w>\npl ings</w>\ngett y\nas b</w>\nâĿ¤ï¸ı @</w>\nstaf f\nreligi ons</w>\nbang or</w>\nworld bookday</w>\nme gh\nde vin\nash ore</w>\nmeri dian</w>\ngi thub</w>\nqui z\nall stars</w>\nbe stest</w>\nir resi\nack er\ndo te</w>\nwar rington</w>\npol ly</w>\nnewor leans</w>\ncr ou\nwi gs</w>\nche y</w>\nsmithson ian</w>\nla sag\nde tour</w>\nbor is\nstra ps</w>\nmari ah\ninten tionally</w>\nko h</w>\nðŁį ¸</w>\nssi an</w>\nmar issa</w>\ncor al\nepiscop al</w>\ncasu alty</w>\ntom o\nsupply chain</w>\nsam p\non go</w>\nro o</w>\ncavi ar</w>\np fw</w>\nclau dio</w>\nbuff alo\ns ations</w>\nmat ty\nsnap back</w>\nl ds</w>\nal arms</w>\nmat te\nâĺ Ķï¸ı</w>\nconditi oner</w>\nd ors</w>\nhe x</w>\nfi zz</w>\na stri\nsus sex\nsecur ity\nqa eda</w>\nall star\ncocac ola</w>\nas one</w>\ncl icks</w>\nsc ans</w>\nmu te</w>\nhe avier</w>\nðŁİ §\nâĺ ŀ</w>\nlv l</w>\nbook boost</w>\nyoutu be\nfla shes</w>\nf jor\nc su</w>\nexplo de</w>\ndo dge\ncair n\ngonz ales</w>\nth ill</w>\npel le\nhart ley</w>\nrenew able\nre tin\ne stre\ncostar ica</w>\nshipy ard</w>\nnc fc</w>\npri ya</w>\na ghan</w>\nan ath</w>\nplu gin</w>\nco rey\nre bound</w>\nor u</w>\nkat rin\nhor mone</w>\ngi m\nmahin dra</w>\ns sus</w>\npark land</w>\nhar per\nfanta stic\ninfer no</w>\nep ilo\nwrest ling\nfe ct</w>\nc it</w>\nac oun\nto ssed</w>\nmonu mental</w>\nchar tered</w>\nbu st\npe tra</w>\nâĮ ļ\nwildflower hour</w>\nsweat ers</w>\n* .</w>\nbl er\nate ch</w>\ngo wan</w>\ndemo graphic</w>\nbra l</w>\nsuici de\nrenov ations</w>\nvu el\nsin ister</w>\nar mani</w>\nmiso gy\nph arrell</w>\nnap s</w>\nun iting</w>\ncrusad ers</w>\ncor gi</w>\ninsu red</w>\nthan i</w>\nno or</w>\ng q</w>\nd ada</w>\nbicy cles</w>\nsnu ggle</w>\nsch an\nten berg</w>\nss al\nfe mme</w>\nbo il</w>\n½ ï¸ı</w>\nre ap</w>\noccur ring</w>\nhus sein</w>\ndivi d\nsto ke\nsh alom</w>\nna ia</w>\no lic</w>\nfrustr ating</w>\nÙ ĩ</w>\nig s</w>\ngro ver</w>\nscen arios</w>\nn ds</w>\nbru tality</w>\nmed alli\nbu on\nsas s</w>\nskate boarding</w>\nony x</w>\nlor ry</w>\nny u</w>\ngau tam</w>\nmm ings</w>\ngu g\nend i</w>\nlo thian</w>\ncomm ando</w>\nchal k\nph ora</w>\nasse ssing</w>\nti gh\ncrun chy</w>\nad ay\nis l</w>\nci ara</w>\npilgri ms</w>\nkam al\np to\nbrit anni\nt ani\nsm c\nl ure</w>\napp store</w>\nab y</w>\ngolf ing</w>\ncl c</w>\nfa u</w>\nan as\nshu tting</w>\nregul ated</w>\ncarn age</w>\nscow boys</w>\nall enge</w>\nc ma</w>\nhumbold t</w>\nrel le</w>\nku mb\nher i</w>\nrefin ery</w>\nsound check</w>\nd wayne</w>\nbos nia</w>\ni sp\nthe alth</w>\nanni v</w>\nrelev ance</w>\nmy a</w>\nbag gage</w>\ndre ad</w>\ns bc</w>\nth ed</w>\nbu h</w>\nhi jab</w>\nlo id</w>\nke w</w>\nc te</w>\nrespec t\nlovel ies</w>\ncu bes</w>\ncelebr ate\ndir t\nsav ers</w>\n_ ,</w>\ngar ment</w>\npulit zer</w>\nmas jid</w>\nbeat port</w>\nal arts</w>\nencry ption</w>\ns ner</w>\nple ads</w>\nfound ry</w>\nsym metry</w>\nru mi</w>\nbirth place</w>\nscallo ps</w>\nsupp le\npivo tal</w>\nt ati\nno de\nso d</w>\npro xim\ntr ics</w>\ncol dest</w>\nbren t\nmand u</w>\ncla ir\ne ach\nand alu\nhi ddleston</w>\nðŁĲ º</w>\nmel ts</w>\nv ance</w>\npin n\nse ments</w>\nscre ened</w>\nsa chs</w>\no bl\nic ha\nâĺĺ ï¸ı</w>\nschool ers</w>\nheal ed</w>\nlo gged</w>\nðŁ¤ĺ ðŁı¼</w>\nic us</w>\nbore dom</w>\nb ish</w>\nb ffs</w>\ntal king\nsure sh</w>\nhoo kem</w>\nde on\nde fl\nei leen</w>\nðŁį ķ\nwomen intech</w>\nri sotto</w>\nrang er\nadverti se</w>\nà¸ ģà¸\ntel ly</w>\nla go</w>\ndart moor</w>\nd ong</w>\nsk ates</w>\nlo go\nun ner</w>\nmail box</w>\nma sala</w>\nlo oooo\namethy st</w>\nche wing</w>\nc bb</w>\naustrali ans</w>\nrc mp</w>\ngame art</w>\n# ...</w>\nkor n</w>\nextre mism</w>\nfruit ful</w>\nanci ent\npu bg</w>\npol ite</w>\nwh it</w>\nmur als</w>\nm gr</w>\nline man</w>\ndav ao</w>\nste ms</w>\nten nis\nav age</w>\ntu pac</w>\ngigan tic</w>\nhs bc</w>\nauto biography</w>\nup the\nà¸µ à¹Ī</w>\nre gal\nfig uring</w>\nku l</w>\nmis sy</w>\nhoo p\ngra s\nfor ums</w>\nback lash</w>\nabduc ted</w>\np nw</w>\nmin ic\nbu tt</w>\nbott oms</w>\nat on\nven g</w>\nðŁĮ ı</w>\ndel aney</w>\nprab hu</w>\nfan club</w>\nover haul</w>\nhealth ye\nsy no\naa f</w>\nren amed</w>\nkim i</w>\nun cle\nman city</w>\nse u</w>\nqu anti\neste em</w>\num in</w>\nen zo</w>\nmel vin</w>\nunder go</w>\nj har\nfar ah</w>\ncoast ers</w>\nhumph rey</w>\nmh z</w>\nchildren s\n^ .\nd hi\ndisrup tive</w>\nintegr ating</w>\nr nb</w>\nover sized</w>\na ide\nne au</w>\ndocu mentation</w>\nðŁĳĢ ðŁĳĢ</w>\npal o</w>\nhear th\nri yad\npun ctu\nabc news</w>\nsecu res</w>\nboy band</w>\nbir ch\nju co</w>\ntra ff\nlegislat ors</w>\nbay a</w>\nãĤ ¯\nno ises</w>\ncollec ts</w>\ns warm</w>\nk ner</w>\nbi shops</w>\nstur geon</w>\nsnapp ing</w>\nmo l</w>\nfre aky</w>\nchair person</w>\ntro p</w>\nlyn ch\ncar cin\nart sy</w>\ne sto\ncha i\nfl ur\ninv ali\nsau sages</w>\nim el\nj or</w>\nfun fact</w>\nwit ter</w>\npuni shed</w>\nac ons</w>\nh ya</w>\nre versi\nem c</w>\ndif fu\nz x</w>\nsp aw\ncla d</w>\nd mit\nhol land\nfre sco</w>\npay roll</w>\nab undant</w>\nstu ffing</w>\nmor o</w>\nc ny</w>\nboy cott\nwend y\nele ven\npro voc\npil ot\ntr x</w>\nbe ad\nclimate action</w>\nri on\nassi e</w>\nì ĸ\no sm\nislam ic\nho ar\ngood reads</w>\nal ici\nafterno ons</w>\nspoke sman</w>\njo lie</w>\nit as\nmasc ara</w>\nâĻ© âĻ«</w>\npre vail</w>\nbeetro ot</w>\nlu jah</w>\nk li\ndod ger</w>\nÂ »\nru le\nl n\nscre am\nho bart</w>\ncol bert</w>\nr tc</w>\ner m</w>\npat ro\nquo ting</w>\ns live</w>\nque st\nnon fiction</w>\nsemin ary</w>\nprosecu tors</w>\nve st\nexpress way</w>\ng ge</w>\nnau tical</w>\net f</w>\nðŁİīðŁİ Ĭ\ndur ation</w>\ncha ired</w>\nthe film</w>\nfab io</w>\nshe h\ncan o\nðŁĴª ðŁı»\nwith draw</w>\n! :)</w>\ncor pus</w>\nphen om\nyel p</w>\nla wn\nent om\nsnapp er</w>\nbut te</w>\npin ball</w>\npro xy</w>\nlibr e</w>\nalle vi\nn ada</w>\ngabri el\nfo wl</w>\neure ka</w>\ndaph ne</w>\ntu nes\npun ched</w>\nwh ore</w>\njo g</w>\nren tial</w>\nman ners</w>\no pe\nwh ufc</w>\ngu th\nrevol t</w>\nsne aker\nphilharmon ic</w>\nho ste\nsovereign ty</w>\nðŁĻıðŁĻı ðŁĻı</w>\nfish ing\nsci art</w>\nfe ta</w>\ni pp\ndump ing</w>\nkel own\ngir i</w>\ndig its</w>\nsal u\nsan jay\ntwee ters</w>\nsp as\ncol chester</w>\nsc ab\nma dd\nà¹ Ħà¸\nÄ ĩ</w>\nged don</w>\nmarch for\ndo p</w>\nmaure en</w>\nun plugged</w>\ndi do</w>\nfashion blogger</w>\nup a</w>\nmex ic\ntar y\npol ye\njame son</w>\nv t\ngrin der</w>\nmad dy</w>\nconsult ancy</w>\n¬ ë\nleagueof legends</w>\nac cents</w>\num ni</w>\njane iro</w>\ntu ss\nh ens</w>\nampli fier</w>\nto shi\npret tier</w>\npre vents</w>\nnew town</w>\nred wood</w>\nvant age</w>\nball ard</w>\nar tof\na she</w>\na sion</w>\nlac ey</w>\nap at\ngro ve\nà¸ Ħ</w>\nrw and\nreal tors</w>\ntra itor</w>\nbed ding</w>\nÃ¶ r\nzi on\nfla shing</w>\ncam pan\nboom er</w>\nsecretari at</w>\nab ol\nliti gation</w>\ncont amination</w>\nse dly</w>\nshred ded</w>\nin for\ndo herty</w>\nbench mark</w>\nro che</w>\nskate board</w>\nsho vel</w>\ni zz\nto pper</w>\no ster\nlaby rin\nautu m\nk ong\nhum mus</w>\nvi z</w>\ntech news</w>\nkla us</w>\nam using</w>\nsocialmedi amarketing</w>\ni des</w>\ncast ell\nste e\nunderestim ate</w>\ncal ab\npa ign</w>\nb illing</w>\nunanim ously</w>\ng mb</w>\nfly fishing</w>\nhath away</w>\ncommerci al\ncolour ing</w>\nskul ls</w>\npivo t</w>\nte p</w>\ntb c</w>\nmotor way</w>\nx press</w>\nconstruc tive</w>\npu k</w>\nunder lying</w>\nkir sten</w>\nmani ac</w>\ncha o</w>\nse ma</w>\nchiff on</w>\nðŁĳĮ ðŁı»\nver ona</w>\nkom o</w>\nstan doff</w>\nwi ped</w>\nc ated</w>\nbla ir\nwor kin\nm sc\nbethle hem</w>\nswi pe</w>\nunexpe c\npe es</w>\npe tri\norig ami</w>\nðŁĳ ħ\nmex ico\nflav or\nru dd</w>\ncannab is\nmar u</w>\nri ddle</w>\nwor shi\nsil on</w>\nsch at</w>\nap se</w>\ntang er\nbi ous</w>\ne er</w>\nquesti oned</w>\no zar\ndan k</w>\nangle sey</w>\nchar an</w>\nbak u</w>\ncompe ten\nre pri\nbat ter</w>\nsa xon</w>\ncal ves</w>\nleng ths</w>\n$ $$</w>\nâŀ ¡ï¸ı\nimmer sion</w>\nga unt\ncar ry\ncy to\nb anda</w>\nshu tt\nexperi ence\nel gin</w>\nmous se</w>\nta z</w>\nê µ\nin correct</w>\nen z</w>\nb ham\nmor on</w>\nso ver</w>\nar un</w>\nti pped</w>\nla ble</w>\nde arly</w>\nbau tista</w>\ní Ļ\nmor tal\nwoo p</w>\ndt la</w>\nsho cks</w>\ndav os</w>\nðŁĵ Ŀ\nswim wear</w>\nher man\nðŁĳĩ ðŁĳĩ</w>\nz ir\nneglec ted</w>\ngrac ed</w>\ncampu ses</w>\nav s</w>\nar ora</w>\nswach hb\nlive pd</w>\nac cra</w>\nenqui ries</w>\nshoo ters</w>\nkur t\nvancou ver\nbrad ley\ngar da</w>\ng Ã¼\nol la</w>\nattrac ting</w>\nup ton</w>\nne win\nlu mia</w>\nfurn ace</w>\nev ers</w>\ne on</w>\nsw a</w>\nroo kies</w>\na oc</w>\nv ss</w>\nbris ket</w>\ntor ch\nyo da</w>\nheart land</w>\ntac o\nph ony</w>\nfood bank</w>\nab bey\nbab ylon</w>\nu y\ngre ate\nexpre sses</w>\nd andy</w>\nsc apes</w>\nsurvi vor\nron d\ne ci\nha vin</w>\nab el\nchil dish</w>\ntor que</w>\nwav y</w>\nur self</w>\nkanye west</w>\nyear of\nale stine</w>\no brien</w>\nal fon\nsk ag\nkore an\nanchor age</w>\nval eri\nde w\nðŁİ ¨\nland slide</w>\ncar ole</w>\nchrist en\ngo phers</w>\naf i</w>\npriyan ka</w>\nq q\npower of\nit te</w>\npc so</w>\ntw ol\npr y\nintellec tu\nguer rero</w>\npi les</w>\nwish list</w>\nw ren</w>\ntime table</w>\në ı\nprodi gy</w>\ngibb ons</w>\n. /</w>\nne ur</w>\nanz ac</w>\nmur ray\nvie st</w>\npla ster</w>\nla ir</w>\nart gallery</w>\ninter continental</w>\ng br</w>\nbell ator</w>\nnam joon</w>\nmam mals</w>\nam el\ny aw\nsaras ota</w>\ncam ar\nbud ding</w>\nsum mari\naco sta</w>\nla sh\ney ou\npost graduate</w>\ninstruc tors</w>\nti g</w>\nconst ant\nwere wolf</w>\nic os</w>\ncla s\nglen n\nbud ge\nðŁĻ Ĥ\ner ta</w>\nsta ins</w>\npersecu tion</w>\ncumb ri\no ch</w>\nsyner gy</w>\nhu ang</w>\nscand in\nmid terms</w>\ncomment ator</w>\nregar ded</w>\nperpe tual</w>\nbo iling</w>\nal p\nlan ge</w>\nsch le\nfac eli\ntwee ta\nri dden</w>\nok toberfest</w>\ncharlotte sville</w>\nik lan\njo u</w>\nch atham</w>\nb sc</w>\nðŁį ¦</w>\nstra uss</w>\nmel low</w>\nxx xx\nhappy hour</w>\nre actor</w>\nww er\ndistr action</w>\nat orial</w>\nðŁĴª ðŁı¼\ntwin peaks</w>\nfay ette\na or\nko k\nbro om\nsy fy</w>\nou se\nam ag\nØ ·\nubis oft</w>\nlu lu\nhall mark</w>\nstu art\nit ya</w>\nsi deline</w>\nvenge ance</w>\nre lu\nsex ism</w>\nboun cing</w>\nun ites</w>\ngu stav\nte ssa</w>\nstu mp</w>\npro clamation</w>\nima x</w>\ndivid end</w>\ncol by</w>\nðŁį İ</w>\nplay wright</w>\nun safe</w>\nco smo</w>\nðŁĩ²ðŁĩ ½</w>\ncup board</w>\nconstitu ents</w>\nang lia</w>\nram page</w>\nðŁĺįðŁĺį ðŁĺįðŁĺįðŁĺį</w>\nthan ked</w>\ntake aways</w>\nshro ff</w>\nde bat\nkh ur\nconduc ts</w>\nformat s</w>\nà ©\nport age</w>\ngraph ers</w>\nu ten\npre m\nmo ines</w>\ncondem ns</w>\ns ous</w>\nl ps</w>\nf cs</w>\ndeal ership</w>\nleuke mia</w>\nbure au\nski d</w>\nguardi ola</w>\nca ster\nthir d\navoi ded</w>\nen cyclo\nc sr\nvi xx</w>\nanaly zing</w>\nshe ar</w>\ndulu th</w>\nshap iro</w>\nchan ting</w>\nstre sses</w>\nas be\nmil itia</w>\nãĥ ª\ncol lin</w>\narsen e</w>\nsure sh\nteach ings</w>\nyi xing</w>\nsh ill\nnu des</w>\nsv u</w>\nclear water</w>\nwar ped</w>\npro life</w>\nartist son\nit u</w>\nversail les</w>\ngalax y\nax el</w>\nspring st</w>\ncal a</w>\nhu hu</w>\nsc u</w>\ncommit ments</w>\nexe ter\npoign ant</w>\nmo tion\nconserv atory</w>\nrow dy</w>\nrec alled</w>\nmu sk\nemb elli\nso the\nâĺ Ģ\nsto pper</w>\nsch ild</w>\nto pe\nel mo</w>\nzi el</w>\nj om\nbarn sley</w>\nsnow den</w>\non tour</w>\njour ney\nhills borough</w>\npar ole</w>\nw ts</w>\nmo ving\nag ility</w>\ntiv o</w>\nff ers</w>\nkindle unlimited</w>\ng wen\nann an</w>\nah mad\ntex tured</w>\nhepat itis</w>\ndra m</w>\ninsi ders</w>\ntis sues</w>\nãĥ Ħ</w>\nfc barcelona</w>\ncr atic</w>\nna acp</w>\npe can</w>\nf gm</w>\ncustom ize</w>\nconcer t\ng sm</w>\npe g\np one</w>\njustin trudeau</w>\nsuper cars</w>\nhappy holidays</w>\nbu lar</w>\nado x</w>\nlap tops</w>\ndigital health</w>\ndestin ation\ngradu ally</w>\náĥ ¦</w>\npopp y\nss l</w>\ninhi bit\nstar light</w>\nof fro\nglo omy</w>\nx per\nhal der</w>\nim plants</w>\nle to</w>\nhass el\na as</w>\nun told</w>\nen ci\nliber ia</w>\nor an\ncon tests</w>\nil ah</w>\nsma g</w>\nsc out\nmari anne</w>\ncr yo\nschedu ling</w>\nlo s\nkan e\nstutt gart</w>\nne se</w>\nlaw rence\nda in\npho tom\ncar ou\nà¸ £\ng wy\nnational dogday</w>\nroa sting</w>\nband camp</w>\nkentu cky\nstret ches</w>\nke rel</w>\nca she\nãĤ ¸\nsta x</w>\ntran si\ndog gie</w>\nat ric\nhal le</w>\nci vic\nbrow ning</w>\nlein ster</w>\ncat day</w>\nhigh land\njoy ous</w>\nin cumb\nor lando\nro mo</w>\ncol ton</w>\ndel ta\ncar ab\nro tc</w>\naster oid</w>\ngoose bumps</w>\nmo logy</w>\nyo ko</w>\nan ds</w>\ntomor rows</w>\nred carpet</w>\nsm p</w>\nca sio</w>\nðŁ¤£ðŁ¤£ ðŁ¤£</w>\nse au</w>\nrejec tion</w>\nrot ating</w>\nbi partisan</w>\nth un\nmat i</w>\nbon i\nol l\nener gye\ndo it\nl j</w>\nmother hood</w>\nlou ise\nneck laces</w>\nel ite\nni x</w>\nl cs</w>\nen v\ngl u</w>\nle sh</w>\ncran k</w>\nsu sie</w>\nm clau\nso tu</w>\ncrow ley</w>\nrat ri</w>\nuse d\nbre ton</w>\nalfre do</w>\nye o\ntravel pics</w>\nti pp\nelli son</w>\nsax ophone</w>\nme red</w>\nheu ghan</w>\nta ine</w>\nf es</w>\nvi ro\nsuppo sedly</w>\ni as\ndige stive</w>\ny le\nli zzy</w>\nwildlife photography</w>\nbri anna</w>\nwest field</w>\nra ined</w>\nam her\nðŁĺĦ ðŁĺĦ</w>\ndistribu te</w>\nbott om\npre serving</w>\noil and\ncraf ty</w>\nde scen\ncol ling\nshakespeare sunday</w>\nr wc</w>\nang led</w>\nci an</w>\nt ations</w>\nmon tage</w>\nme yers</w>\nfrance sca</w>\nðŁĮ ·\nwi ggins</w>\nsan ford</w>\nvolunte er\ncar ra\nbar k\nvari ed</w>\npl in</w>\nam u</w>\nkap il\nrock ers</w>\nqu ind\nbr ane</w>\nin mate</w>\nent al\nimpro vis\nmichi gan\nre tweeting</w>\nprogre ssing</w>\nmercedes benz</w>\nsmo ker</w>\nphysi ology</w>\ndor ado</w>\nwatt pad</w>\nh wa</w>\nsr bachchan</w>\nw ga</w>\nvol atility</w>\nhi re\nac ap\nwn ba</w>\nhein z</w>\nstit ches</w>\nkidnapp ing</w>\nbur ys</w>\nlim b</w>\nf itters</w>\nthumb nail</w>\nton e\nmir and\ndesi rable</w>\nad dison</w>\ntar an\ntamil nadu</w>\nspec tator</w>\nsoci ology</w>\namit shah</w>\nremo tely</w>\nâĻ ¦\nham id</w>\nr ds</w>\ng lee\nsmooth ly</w>\nsch ro\ner c</w>\nlali ga</w>\nhe als</w>\nus f\nni shi\nd hu\nun il\nh le</w>\ntro mb\nbhu tan</w>\npilip inas</w>\nse ung\nwhit man</w>\nte y</w>\nmin ce</w>\nsnow boarding</w>\nre au</w>\nk ker</w>\nav o</w>\nzach ary</w>\nran veer\nti k</w>\ngover n</w>\nqu al</w>\nbeck y\nanthropo logy</w>\natt en</w>\ngrocer ies</w>\nde bit</w>\nwar p</w>\nsil icon\nhawa ii\nðŁĴ ħ</w>\npomegran ate</w>\npe er\norang es</w>\npeople schoice</w>\nend ure</w>\nðŁĴĽ ðŁĴĽ\nãĤ¹ ãĥ\nac ial</w>\na haha</w>\nstu k</w>\nimper ial\nbl ond</w>\npow der\nkno ts</w>\nvin ce\nwood lands</w>\nden a</w>\nwatch in</w>\nmat cha</w>\nma hat\ngalax ies</w>\nmiddles brough</w>\nk Ã¶\nstre e</w>\nresc ues</w>\nwal do</w>\nlero y</w>\ndesp ic\nreal ities</w>\ntm nt</w>\nha q</w>\nun o\npe c\nbolly wood\nblin ds</w>\ndesign thinking</w>\nhe ms\nand hra</w>\nab sen\nfan s\nste ch</w>\nshire hour</w>\nbla ine</w>\nshak ti</w>\npu rely</w>\nðŁı ı</w>\ntra fal\nke ynes</w>\ngr ate\nto bias</w>\nspon taneous</w>\nsatur ated</w>\ncaval ry</w>\npri sc\nðŁĺ ĳ\nwh t</w>\npas si\n~~ ~</w>\nvir at</w>\npatt inson</w>\nla o\nweir do</w>\nsym pathy</w>\nju da\nocca sionally</w>\ncred ited</w>\nstat u\nes co\nhil ly</w>\nesc ape\ndischar ge</w>\nse er</w>\nmay nard</w>\nsud bury</w>\nz lat\nor al\nwe er</w>\nencoun tered</w>\nsm elling</w>\nover sight</w>\nê ¸\nthat cher</w>\nmack ay</w>\nyou can\nfre ep\nfreed oms</w>\nprophe cy</w>\nho e\nishq ba\ndra ke\nqu its</w>\npel led</w>\ntur k</w>\no vi\nwesle yan</w>\nnew music\nleg g</w>\nch eng\nh illi\nay y</w>\npan ties</w>\nad versity</w>\nad jac\nvaccin ation</w>\nju ke\nga c</w>\nexce ed</w>\ntime sof\nsta ining</w>\nep cot</w>\nv ital\nup ward</w>\nbethe sda</w>\napar k</w>\nma hi\ncamp fire</w>\nenchan ting</w>\nrha pso\nh z</w>\nna ver</w>\nfa x\nvali dation</w>\nac ad</w>\nny r</w>\nas ym\ncoordin ated</w>\ndepar ted</w>\nall ery</w>\nvar ies</w>\nspr ite</w>\nchap lin</w>\nss occer</w>\ns wat\nbre t</w>\nrelu ct\ntunes app</w>\nsuper star\nreminis cing</w>\no co</w>\nhome grown</w>\ndough nut</w>\nun canny</w>\nla pd</w>\nthyro id</w>\n! âĿ¤ï¸ı</w>\nbotan ic</w>\nbre s</w>\nsp ade</w>\ni ste</w>\necho es</w>\ndu lil\nbur sting</w>\nqui ero</w>\nðŁĳ İ</w>\nloy ola</w>\namuse ment</w>\nha ils</w>\nsleep y\nburgl ary</w>\nâľ ı\nro gue\ncot land</w>\nmo ors</w>\nlow er\nwic ked\nðŁĶ Ĭ\ncompet iti\nargent ine</w>\nyvon ne</w>\nkarti keyan</w>\nili ary</w>\ngat sby</w>\nprecin ct</w>\nsix ty</w>\nna ji\ncam s</w>\npractiti oner</w>\nðŁĺ³ ðŁĺ³\npu ne\nneg li\njuli en</w>\ninv aded</w>\ncali br\ncla m</w>\nduba i\nmu k</w>\nlan tic\nproduc t\nfe dex</w>\nï¸ı :</w>\neu ra\ndari us</w>\ns ling</w>\nvirtual reality</w>\nhome stead</w>\nðŁı³ï¸ıâĢį ðŁĮĪ</w>\npac ed</w>\nin ha</w>\npul mon\nla zy\npremi ering</w>\nma stered</w>\nin he\ncon gregation</w>\nba jo</w>\nsport ing\nnew jersey</w>\nhor ny</w>\nlma oo</w>\nleng thy</w>\ndu t\nyo gh\nswe aring</w>\nphilosoph ical</w>\npap ua</w>\nin ski</w>\nknow les</w>\ndy ke</w>\nâĢ ²</w>\nto ken\nmc guire</w>\nri ot\nprobab ility</w>\nmc con\ngro s</w>\nsu mat\nc ite</w>\nda a</w>\non da</w>\nmad dow</w>\nche w\nboard games</w>\nspar ked</w>\nre claimed</w>\nad hd</w>\nny se</w>\nimwith her</w>\nequ inox</w>\nboo ths</w>\nbalsam ic</w>\nha zy</w>\ndor chester</w>\nag os</w>\nse aw\nmoder ator</w>\nseri ea</w>\nander sen</w>\npilgri m</w>\nâŃĲ âŃĲ\nitch en</w>\nhal li\nx ton\nnathan iel</w>\nmun ition</w>\ncelesti al</w>\nga f</w>\nzo om\nmark le</w>\npen thouse</w>\ncal e</w>\ns fa</w>\nbar king</w>\ntu cket</w>\nem ery</w>\ncal orie</w>\nli que\nad ar</w>\nmc nam\ntor tilla</w>\nwood pecker</w>\nmo town</w>\nbad ger\nayr shire</w>\nscram ble</w>\ndd ay\ncra ziest</w>\nper rie</w>\ncho co</w>\ncast e</w>\ni ot\nwre cked</w>\nselec ting</w>\nuss r</w>\ngra ft</w>\npun t</w>\nlab ou\nir st</w>\nba ek</w>\nÛ Į</w>\nsu ki</w>\nque u\nach at</w>\nte ster</w>\naug mented</w>\nwc vb</w>\nsin ks</w>\nðŁĵ »\nra ke</w>\ninter ne\nbe cause\nbelle vue</w>\nune arth\nlight en</w>\nðŁĺ £</w>\nturn around</w>\nlabe led</w>\nunemp loyed</w>\ntwitter kurds</w>\nle ia</w>\nh ye\ngreat er\nðŁĲ İ</w>\ntim ed</w>\ni red\ne tt\nlimit ations</w>\ncab e</w>\ns out</w>\nbee ch\nanni hil\nre trac\nyo ona</w>\nang er\nden nis\nsupp lying</w>\ndi z</w>\n\" (</w>\nsc ur\ngun man</w>\nsu ho</w>\nsauvi gnon</w>\nà¸ ¥</w>\nwi ley</w>\nland on</w>\nchoreo graphy</w>\npre historic</w>\nðŁı ĥ</w>\nvar gas</w>\nassess ments</w>\npinn acle</w>\ndi i</w>\nchamber lain</w>\nì Ī\nv p\npresent ers</w>\ndeut sche</w>\nsun shine\nsal utes</w>\nr one</w>\nbu siest</w>\n- .-</w>\nmotor ists</w>\nhemi sphere</w>\nal wx</w>\nps p</w>\now a</w>\nden ying</w>\ncho c\ngu tier\nhan uk\nmus kete\njait ley</w>\nse wage</w>\nt ame</w>\nthin kers</w>\nshi m</w>\nse quo\npap ar\nmiddle east</w>\nk wa\nke g</w>\npatag onia</w>\nno y</w>\nbar Ã§a</w>\ntake off</w>\nhe a</w>\nà ¬\nn sc\ng dc</w>\nðŁĳ Ī\nmou stache</w>\nmel ania</w>\nthr a</w>\nâ¬Ĩ ï¸ı</w>\npier ced</w>\nze us</w>\nfon ts</w>\nber a</w>\nit iner\nq atar\ncontr ary</w>\nire land\ni fy</w>\nou los</w>\ncommun al</w>\nfin s</w>\nun paid</w>\npa a</w>\nðŁĳĩ ðŁı»</w>\nri os</w>\nou p</w>\nf iller</w>\ncafe teria</w>\nà¸ Ń</w>\nkas i</w>\ncali ber</w>\nz ulu</w>\nv sco</w>\nts ford</w>\ndragon fly</w>\nsmo kin</w>\npi st</w>\npsycho logist</w>\ndiplom at</w>\nwe bs</w>\nbuc cane\nà® ¾</w>\nmotiv ational\ndu ne\nba e\nc fs</w>\nwith out\ner on</w>\ni ac\nate e</w>\npen sion\nfra zier</w>\nen sis</w>\nsk is</w>\npar ting</w>\nger y</w>\nterrit ories</w>\nnach os</w>\neni ght\never lasting</w>\nmsd honi</w>\ntel e</w>\nsp un</w>\npo di\nsab ah</w>\nenviron mentally</w>\nce ase\nbeau mont</w>\nmar ta</w>\nkel vin</w>\nho ff\nsun il</w>\nn da</w>\nco b</w>\nsh ale</w>\nree dus</w>\nun boxing</w>\nu bio</w>\nre opened</w>\nn all</w>\ncapsu les</w>\nmar r</w>\nhimalay as</w>\nswee ter</w>\nja z</w>\nf mr</w>\ntwee ter</w>\ndha ka</w>\nna u</w>\nde mi\nd fs</w>\nta urus</w>\nfad ing</w>\nit utes</w>\nci p\nover flow</w>\njef frey\ndon ny</w>\ncar tunesapp</w>\nðŁį ĳ</w>\nprefe cture</w>\ndanc ed</w>\nc pt</w>\nple asing</w>\nital k</w>\nearth quakes</w>\nul ation</w>\nhi o</w>\nãĢ ĭ</w>\nant an\nnutri ent</w>\nde ere</w>\nselec ts</w>\nenrich ment</w>\nr iti\ntram pol\nbl amed</w>\nj ia</w>\ncontribu tors</w>\nchesa peake</w>\npi geons</w>\ntribun al</w>\nmad uro</w>\nw su</w>\nilo ve</w>\neffici ently</w>\ndar cy</w>\nwar ms</w>\nar ra\nec u</w>\nho wer</w>\nstrugg led</w>\nrajini kanth</w>\nðŁĺ¢ ðŁĺ¢\nhou sing\nstr at</w>\neli x\ndisp ro\nraf fic</w>\nthi erry</w>\nna sty\nc fb</w>\nstaf fing</w>\nal ma\nback ers</w>\nhen son</w>\nsky walker</w>\nreale state\nroo s</w>\nness y</w>\nchan ce\ncair ns</w>\nc ci\npe dal\nly ft</w>\ncross word</w>\nwait er</w>\nonly in\nkru ger</w>\nk ir</w>\nalej andro</w>\ncar tier</w>\ncar rera</w>\nre paired</w>\nou at</w>\nun clear</w>\nun breakable</w>\ntoday in\nqu eries</w>\njo dy</w>\ngen ital</w>\nwin ner\nto l</w>\nkelown a</w>\nfascin ated</w>\nãĥ ¬\nsris ri</w>\nsqu ared</w>\nspr ung</w>\nnegoti ate</w>\npriv ately</w>\nav en</w>\n>> >>></w>\ng ical</w>\ngav in\nchester field</w>\nzu mba</w>\nor r</w>\nnat alia</w>\nimpeach ment</w>\nmn l</w>\ncar at</w>\ncriti que</w>\ncredi ble</w>\ntrac y\ntan i</w>\nmusi k</w>\njig saw</w>\ngam bia</w>\ntol kien</w>\nfe u</w>\nas per\nsav ory</w>\nfo xx</w>\nf itt\nmar lon</w>\nl rt</w>\nv ell</w>\np br</w>\nimprison ed</w>\ni om\nchu l</w>\nwind shield</w>\nkay e</w>\nba a</w>\nchor d</w>\ns art</w>\nal gon\nminister ial</w>\nnat geo\nla zio</w>\nnor ms</w>\nðŁĳį ðŁĳį\nlic king</w>\nfut bol</w>\nun sung</w>\ndalla scowboys</w>\nsh red</w>\ndistur b\ndev ine</w>\nbe ards</w>\nch f</w>\nb day\nro sso</w>\nig or</w>\nay i</w>\nsi ren</w>\nk air\nsti les</w>\nro f\nmag nets</w>\nun cover</w>\nmou se\nbang ing</w>\nsi ghted</w>\nspe ople</w>\nimpac t\nrow land</w>\nkir a</w>\nenviron ment\nlove the\np sis</w>\nmish ra</w>\ngl endale</w>\nca jun</w>\no che</w>\nde ception</w>\nsex ist</w>\nstra ws</w>\ns ga</w>\nbuff er</w>\napost le</w>\nsp l</w>\npop up</w>\nðŁļ Ĺ\nr g\nup er</w>\nball in</w>\ni dy\nocca sional</w>\nnational park</w>\nðŁı Ĭ\nu an</w>\ninnov ation\nà¸ «\nte aparty</w>\nre tte</w>\ncounter fe\nb ha</w>\nrec s</w>\nig en</w>\nðŁĮ Ĳ</w>\nhumming bird</w>\ncu r</w>\nha ven\nla zar\npue blo</w>\n: :\nzi onist</w>\nop ath\ninver ness</w>\npromo ter</w>\ncarto on\ncabine ts</w>\nmahog any</w>\nsurve ying</w>\nr ational</w>\nfeel ing\ntesti fy</w>\nso w</w>\noc on</w>\nà¸ ¢</w>\nne el\nmar is</w>\nsol itary</w>\nche mo\nrad cliffe</w>\nsim ons</w>\nros ary</w>\nnew er</w>\njo die</w>\nre tali\npra wn</w>\npad dy\nhen ge</w>\nk ala</w>\nim plant</w>\nat y</w>\nbren twood</w>\npar adox</w>\nene z</w>\nre designed</w>\np our\nwy d</w>\nal de\nà¯ ģ</w>\nsol d\nbiomed ical</w>\nà¹ Ĥ\ntt tt</w>\nmat teo</w>\nys er</w>\nnew ton\nde bun\nner dy</w>\nloo l</w>\nwo on</w>\nelisa beth</w>\nec c</w>\nwh i</w>\nach o</w>\nsalv age</w>\nsal aries</w>\nqu ity</w>\nnavig ating</w>\noph thal\ncon soles</w>\nre built</w>\no pec</w>\nast ers</w>\nsho red\nset list</w>\nkathr yn\nrhy mes</w>\nre visiting</w>\nash ish</w>\nli ft\nre post\nsole il</w>\nâı ±</w>\nweal th\nsa at\nwe c</w>\nking james</w>\nflipk art</w>\nfield work</w>\nse gu\nmo dal</w>\nbu b</w>\nare rs</w>\nðŁį Ĵ</w>\nclo oney</w>\npad dington</w>\nnecess ity</w>\nguth rie</w>\npen te\nli mo</w>\njo sie</w>\nar tin\nen c</w>\nl hs</w>\nbetra yal</w>\ninfo graphics</w>\ni er\nmo a</w>\nhear ings</w>\nbon jour</w>\nsym bolic</w>\nag ro\nwed ges</w>\nkrist ina</w>\nwild flower</w>\nathle tic\nphotograph y\npe sh\nca hill</w>\nchi lean</w>\ngou l\nfi oren\nðŁĳ ¶</w>\nz il</w>\nsk im\nbad oo</w>\ndeli a</w>\ntre ble</w>\nn cc\nðŁĩ¦ ðŁĩ\na house</w>\nbul lock</w>\nsol itude</w>\nØ§Ù Ĩ</w>\ncan cers</w>\nfutureof work</w>\nhu tch</w>\nwater shed</w>\nwar mongers</w>\nsp illed</w>\ncolom bo</w>\nmo th\nassoci ations</w>\nweigh ed</w>\nglobal goals</w>\nnot just\nchrist i</w>\ntor g</w>\nswe ating</w>\nman eu\nclu sters</w>\nâĢ¼ï¸ı âĢ¼ï¸ı</w>\nta ped</w>\nul y\ntru sting</w>\nyu suf</w>\nte in</w>\nra b</w>\n, ,,,</w>\nsin ai</w>\naudi ble</w>\nexplic it</w>\ncro wns</w>\nsch iz\nat least</w>\nðŁĹ £\nde bra</w>\nje suit</w>\nene gger</w>\nz hen</w>\none sie</w>\ni it</w>\nss f</w>\ngur gaon</w>\nchak ra</w>\nbear cats</w>\nk ran\nk awa</w>\nreque sting</w>\nhan over</w>\ng end\nsor os</w>\nmer cy\nlovel y\ndo omed</w>\ntim my</w>\nku z\nul l\nab ram\nsa ison</w>\nãĥ «\nclean ers</w>\nre mo</w>\ncircu its</w>\nbar red</w>\no th\nmo ist</w>\nmadele ine</w>\ngall o</w>\nu j\nper mits</w>\nhea viest</w>\ncar ols</w>\naz te\ngior gio</w>\nflo ats</w>\ndecl aring</w>\nus rc</w>\nmin at</w>\ncraf ts\npri ma</w>\nconven i\nnickelo deon</w>\ndanc ing\nceremon ial</w>\nblo gg\ntw p</w>\nanglic an</w>\nshe k</w>\nk nick\n( ((</w>\nhubb ard</w>\nharve y\nhit man</w>\nfen g</w>\nwe some</w>\nfor za\ns word\nop us</w>\nbro m</w>\ngi bility</w>\nz al</w>\nm unch</w>\ndance hall</w>\ngre edy</w>\nhd mi</w>\nre birth</w>\nðŁĺĭ ðŁĺĭ</w>\ns world</w>\nfigur ine</w>\ncom post</w>\nk f\nengra ving</w>\ngior no</w>\nst ana</w>\nk man</w>\nham ster</w>\ncompos ers</w>\naj e</w>\nfunc tionality</w>\npol k</w>\nis ons</w>\nair planes</w>\nte se</w>\nhor rors</w>\nmusc at</w>\ngi ven\nsp ence</w>\nðŁĩ¸ ðŁĩ\neli ot</w>\nach illes</w>\nfre ck\ncrypto currencies</w>\nsou ther\nhal o\nbor neo</w>\npolit ic\nhahahaha h</w>\nup state</w>\nsi ena</w>\nobsc ure</w>\nhau sen</w>\nlloy d\nhappy friday</w>\nmotor bike</w>\nbon a</w>\nameric as\nhol s</w>\n- (</w>\nspor ty</w>\nun aware</w>\nreven ues</w>\nchristop her\nbank sy</w>\nav an</w>\nev apor\ncom press\neyel iner</w>\nto dos</w>\nbuff y</w>\nrenewable energy</w>\nly rical</w>\nar chan\nrapi st</w>\nfair trade</w>\nlma ooo</w>\nbeat z</w>\npro active</w>\nla pse</w>\nir ical</w>\nrevers al</w>\npo de\nmcin tyre</w>\nmac au</w>\nãĥ ķãĤ\nnash grier</w>\nf sa</w>\ng all</w>\nçĶ Ł\nperpe tr\nil ya</w>\nconfigur ation</w>\n% ;</w>\nstr ange\nrac i\nà¸ ĩ</w>\npic kups</w>\nkov sky</w>\nmam mal</w>\nw ps</w>\ng able</w>\ncompar ative</w>\nz h\nsave our\nda vey</w>\non etsy</w>\nmu ssels</w>\nmis er\ncri stina</w>\nelectr on</w>\ncra ve</w>\nlo ren</w>\nprecipit ation</w>\nm z</w>\nðŁį «</w>\nvin cen\nsnow board</w>\nno ida</w>\nah n</w>\nmarin ated</w>\ng tr</w>\ntown hall</w>\nmin is\nbethe l</w>\nadv an\nsu ra\nshi el\nfur ry\nðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤ</w>\nlyn d\nso il\nsc ence</w>\nsen eca</w>\nshar jah</w>\ndick ens</w>\ncredenti als</w>\nav ar\nper k</w>\nrequ iring</w>\npre fer\nj ian</w>\nde ca</w>\nr ach</w>\ning for\ndel e</w>\nbe ep</w>\nðŁĴ »\ncis ely</w>\nhu ddle</w>\ngreen sboro</w>\nhaw king</w>\nho ax</w>\nhang ar</w>\nç ľ\nmis o</w>\nlo vin\ngre ta</w>\nab ad\nlogi e</w>\nat an</w>\nsnow flake</w>\nmahe sh\nfear the\nal kal\nbobb lehead</w>\nba hn</w>\nju dged</w>\nfu tu\nfeli x\nðŁį ĵ</w>\npi ke\nder iv\nnotic es</w>\nau er</w>\ndis super</w>\nor da\nwi pes</w>\nam ino</w>\nstri kers</w>\nfoo tb\ndram as</w>\npun ching</w>\nscore less</w>\nheming way</w>\nbi h</w>\nbal lad</w>\nchat ter\nam mo</w>\nkle in\nfabric ation</w>\nkari m</w>\nz end\nhi sto\nvol ta</w>\nrock y\nmarke ter</w>\nxtre me</w>\nsequ encing</w>\nparadig m</w>\ncle ats</w>\nboom ing</w>\nâģł âģł</w>\nblock ade</w>\npromp ts</w>\nyogh urt</w>\npur pose\nnu r</w>\nregu late</w>\nnois y</w>\ning rid</w>\nbird watching</w>\nbar tender</w>\nÙ ĥ\nwor dof\ncha otic</w>\nshor ty</w>\nel dest</w>\nz app\nonceupon atime</w>\nfl yo\nrit os</w>\nmike quind\nðŁĲ ´</w>\nregi stering</w>\n. ]</w>\nad ol\ngg gg</w>\npur ge</w>\nkid lit</w>\nar bor\nval ves</w>\nsynago gue</w>\no th</w>\nunanim ous</w>\nveri fication</w>\ndar rell</w>\nãģ Ħ\nvander bilt</w>\ntape stry</w>\npro sper</w>\ndid dy</w>\ndra fting</w>\nde cep\nmarqu is</w>\nst int</w>\nmichael jackson</w>\npee led</w>\nmen us</w>\nbb b</w>\nsc are\nema il\nwri gley</w>\nit is\nf ell\nsome thin</w>\nbar ra</w>\ned gar\ndi pping</w>\npu ddle</w>\nsla de</w>\nlear ner</w>\njal en</w>\nðŁ§ Ĳ</w>\nthe daily\nmikequind azzi</w>\nju x\niq bal</w>\nmckin ney</w>\nra iser</w>\nef an\ndr one\ncat o</w>\npic ket</w>\ncro we</w>\nl att\nuk o</w>\ngiuse ppe</w>\nhin i</w>\nsynthe si\nponti fex</w>\nsong writing</w>\nto d</w>\nswit ches</w>\ndin ners</w>\nh q\ngabri elle</w>\npensac ola</w>\ncir cle\nexpo ses</w>\nev s</w>\nriyad h</w>\npro men\no ck\nsa j\ncit ation</w>\nbrew co</w>\njo si\nep aper</w>\ndri f\npoint less</w>\ntang led</w>\ncri pp\nline ups</w>\nfairi es</w>\ndaz e</w>\nmour n</w>\nbla dder</w>\nsal z\nbur undi</w>\nbook mark</w>\nthe people</w>\nsub sequ\nprinci pal\nsk er</w>\ncourt ney\na oki</w>\nrac ers</w>\nad m</w>\nmom a</w>\ncritical role\nhou n</w>\nshed ding</w>\nsa ka</w>\nace ous</w>\nmck ay</w>\nhus bands</w>\nÂ ½</w>\nme da</w>\naccu sations</w>\nro sel\nnc is</w>\nwitne ssing</w>\nor ama</w>\ngo ds\nhil ton\nel man</w>\nÃŃ n</w>\nmeg ap\ncra ven</w>\nannoun cer</w>\ncrit eri\nsheffiel dissuper</w>\nmilit ant</w>\nconsu l</w>\nhoo ded</w>\naby ss</w>\nb x</w>\nma dam\nlo cu\nmary am\nmanic ure</w>\ngrat is</w>\nac tresses</w>\nros ario</w>\nthis dayin\nking ly</w>\ngn ome</w>\ncel ine</w>\nr ous\nhe el\nlil ac</w>\nvish al</w>\nab h</w>\nthor ns</w>\ns ls</w>\nne al\nconstruc ting</w>\nbe ren\ns lang</w>\nma ins</w>\nfar ra\nsar ko\npai ge\ngu iller\nl ala</w>\nice berg</w>\nnou n</w>\nplann ers</w>\nu mmm</w>\nou ses</w>\nill ary</w>\nma an</w>\nbox ing\nzi pper</w>\nsrin agar</w>\nmigu el\no str\nmp o</w>\nresponsi bly</w>\nlan terns</w>\nappli ance</w>\nx b</w>\ngren ade</w>\nneglec t</w>\ndy sle\nham mock</w>\nne ctar</w>\nwit cher</w>\nr gv</w>\ndi ence</w>\nser bian</w>\nseed ed</w>\ncru z\nbi sh\nsp he\ne q</w>\nsky rim</w>\nalge bra</w>\nphil ately</w>\nbungal ow</w>\nge off\ny ves</w>\ndemand ed</w>\nconsider ations</w>\nthe vamp\npawan kalyan</w>\nco ded</w>\ngrit ty</w>\nerup tion</w>\nse infeld</w>\nuni denti\nëĭ Ī\nwor m\nac us</w>\nse ung</w>\ndun g</w>\nro land\nsu d</w>\ndi visions</w>\nab lanc\nshor test</w>\nj f</w>\np oun\nplant based</w>\nbe to</w>\ntough er</w>\nmc o</w>\ndon et\nmark us</w>\nv fl</w>\nðŁı ł</w>\nopen ing\nco ward</w>\ncaber net</w>\no xi\nburle sque</w>\nsand ra\nsu mo</w>\nconsi st</w>\ntho t</w>\ncay man</w>\nmotor ola</w>\ngutier rez</w>\nd slr</w>\ny w\nno bel\nnov ice</w>\nmoms demand</w>\ngrun ge</w>\nsp or</w>\nd cc</w>\npre sses</w>\nsli st</w>\nallot ment</w>\nvoc ational</w>\nft c</w>\npu ja</w>\nlo ven\nutt arak\ntan dem</w>\nsh ep\ncome dians</w>\nanat om\ncant wait</w>\nhealthye ating</w>\nwest side</w>\nmar gins</w>\nchi ang</w>\nasbe stos</w>\nstupi dity</w>\nproble matic</w>\nfit bit</w>\n: $</w>\nceil ings</w>\nshu a</w>\nprotec tions</w>\nbio tic</w>\nbeng ali</w>\nre sts</w>\nbien nale</w>\ntim o</w>\ncul min\ne minent</w>\naffe ction\nunbeliev ably</w>\nindividu ally</w>\ncanvas sing</w>\nwh itt\nnov asco\nchin son</w>\nh pe</w>\ngo w</w>\ngloucester shire</w>\npa o</w>\nthresh old</w>\nchev ron</w>\ns ine</w>\nwe ther\npp ie</w>\naqu ino</w>\nantwer p</w>\nâĸ ¬\npo on\ninst af\nequ ine</w>\ncinemato graphy</w>\nnbaf inals</w>\nvali ant</w>\nkil kenny</w>\nte rence</w>\nsyste mic</w>\nsr l</w>\np ound\nmade ira</w>\npl ough\ntre cht</w>\nmat ed</w>\nmp d</w>\nransom ware</w>\nph in</w>\nli qui\nbb ce\nboom er\ni standwith\ncon ju\nr te\nnar a</w>\nfoo lish</w>\nda shing</w>\nvier nes</w>\nbr ite</w>\nda u</w>\njuni per</w>\nai da</w>\nyou now</w>\nra zer</w>\nde i\nrepe ating</w>\ncomfor ting</w>\nadjac ent</w>\ne to</w>\nca sted</w>\nchat ur\nmu er\nsyn th\nsan itary</w>\nmac le\nindepend ent\nlaw ful</w>\ne erie</w>\nh or</w>\nðŁĴ Ń</w>\nam rit\nvel o</w>\nstation ery</w>\nmu f\nmay may</w>\ncontempl ating</w>\nelabor ate</w>\ngre gor\ndri es</w>\nac col\nà¸ ļ\nschwarz enegger</w>\nill nesses</w>\nday break</w>\nfollow back</w>\ncollu sion</w>\nelectr onic\njo vi</w>\nhiro shima</w>\nta w\nhom ec\nmic ah</w>\nqu itting</w>\nfro sting</w>\nben fica</w>\nhel i\ns ical</w>\npic cad\ncorpor ate\nment orship</w>\nyou are\nsing er\nshi va\nru ne\ning er\nri um</w>\nplay able</w>\ndoo p</w>\nwil low\nter re\nni p\nat d</w>\nwar bler</w>\nprofession ally</w>\ner ase</w>\nproce ed</w>\npedestri ans</w>\nmis chief</w>\nben ding</w>\nalas kan</w>\nc kett</w>\nmo p</w>\ndd les</w>\nshut ter</w>\nge ared</w>\natene o</w>\nma deline</w>\ng ations</w>\no sha</w>\nder ick</w>\nsw ild\nan gry\npat ents</w>\nhun k</w>\ndecre ased</w>\nfr y\nðŁĴĸðŁĴĸ ðŁĴĸ</w>\nsal on\nquant ities</w>\nd ario</w>\nni gel\nku ma</w>\njen n\nhapp ye\nxx x\nrex perience</w>\npro s\nau sch\nrele ssly</w>\nham burger</w>\nfuku shima</w>\ner ne\nstat ec\nren d\nmay field</w>\nj one\nlef ty</w>\nbern stein</w>\nsm il\ngener ates</w>\nfore station</w>\nband its</w>\nta yo</w>\nr ca</w>\nac ci</w>\nrodri go</w>\nkn app</w>\nelo vers</w>\nvege tation</w>\nu ral</w>\nle ft\nħ ï¸ı</w>\nworl dre\nsur i</w>\nembar k</w>\nw son</w>\nba you</w>\nmu ller</w>\nmo vers</w>\nðŁķ º\npresby ter\nl f\ncre e\nbat b</w>\nsal am</w>\ndemonstr ations</w>\nan ec\nn pc</w>\nit ics</w>\nto graphy</w>\nre inst\nthur st</w>\ntal e\noff ences</w>\nsmart city</w>\nbro tha</w>\nofthe year</w>\nin valuable</w>\near n\nðŁĳı ðŁı½</w>\nkre mlin</w>\ngra dy</w>\ntown fc</w>\nguern sey</w>\nma ha</w>\ncontag ious</w>\ndre x\nbe en\n( Â£</w>\nnati vity</w>\nk tm</w>\nsomer halder</w>\ncomp ounds</w>\níķ ĺ\n\" âĢ¦</w>\naf g</w>\nott news</w>\nh ound\nfire fly</w>\ncil an\ndonet sk</w>\nvolunte ered</w>\nak ira</w>\nè ª\nsing ul\nst h</w>\ndro wned</w>\nmand o</w>\nhe ir</w>\nðŁİīðŁİ Ī</w>\ntax is</w>\ny uki</w>\nvel d</w>\nk ans</w>\nel k\nran ts</w>\nhash tag\nt eng\nro g</w>\na at\ngru b</w>\ne ber\nin india</w>\ncolo ssus</w>\nsig ni\nso ever</w>\nmile stones</w>\nder o</w>\ndifferen tial</w>\nphu ket</w>\nmaster mind</w>\nan gh\nmel ani\nbro ker\nactor vijay</w>\nstun ned</w>\ncontinu ity</w>\naf fl\nvo cal\nperenni al</w>\nfianc Ã©</w>\nin complete</w>\nhun ts</w>\nre issue</w>\ndomin ates</w>\ntur meric</w>\nro am</w>\nri on</w>\nbag ged</w>\nnas sau</w>\nfu t</w>\nx ox</w>\nnational trust</w>\njo ye\nsan o</w>\nhearth stone</w>\ndis respect</w>\nle es</w>\nh se</w>\nsiber ian</w>\noffe e</w>\nre stock</w>\nwolf gang</w>\nre gan</w>\nplan o</w>\nun wind</w>\nre par\nmil le</w>\n] ,</w>\nskul l\nfat ally</w>\nconcep tual</w>\nðŁĮ ²\nf Ã©\nber to</w>\nb ms</w>\nu a\nmag na</w>\nnotre dame</w>\nle te</w>\nla undering</w>\nheartw arming</w>\nbuffe tt</w>\ngo at\npe abo\nwind mill</w>\nv ac</w>\ncontinu ally</w>\naz alea</w>\nmem brane</w>\ncan cels</w>\nmake yourown\nathe red</w>\np to</w>\ntor pe\nðŁĺ ł</w>\nðŁĴ §</w>\nsc ares</w>\nle aking</w>\nz et\npix els</w>\nac i</w>\nkh il\nmarath i</w>\nðŁĻı ðŁı½\nu la\ntam u</w>\nchandi garh</w>\nz agre\naa b</w>\npronoun ced</w>\naubre y</w>\nsand er</w>\npun ta</w>\nhar low</w>\nic elan\ncelebr atory</w>\nso t</w>\nunci ation</w>\nstru ly\nmc dowell</w>\ndeepi ka</w>\nremin ders</w>\nmy stical</w>\nct c</w>\nchat ted</w>\ns ica</w>\nbar gains</w>\nch hat\nru bin</w>\nm net</w>\noiland gas</w>\npel ican</w>\no at</w>\nmor ality</w>\nk our\ni h</w>\nnu clear\ngc u</w>\nric her</w>\nvene zia</w>\nm ma\nle ith</w>\nac company</w>\nrich mond\nsports net</w>\nba ahu\nsmu ggling</w>\nmm i</w>\nðŁĩ®ðŁĩ ª</w>\ntwi sts</w>\nsahi b</w>\n.... .\namb itions</w>\nil lo\nhistor ical\nfo rec\nshow biz</w>\npon ies</w>\nchas ers</w>\nremo del\nwill ing\nprince sses</w>\nam ple</w>\ncushi ons</w>\nac les</w>\nlot r</w>\nda ch\nan the\nin corporate</w>\nnew bury</w>\nki ri\nfried rich</w>\nab v</w>\nball ers</w>\nalber t\nðŁĳ Ń\nlet i</w>\nnan op\nci de</w>\nanal o\nn sf</w>\n)) ))</w>\ngriffi ths</w>\nvalen ci\nro ano\nfun run</w>\nbabys itting</w>\nca day</w>\nent re\nu ck</w>\nslu g</w>\ntic al\nthe sims</w>\nro ar\ncar ney</w>\ng am</w>\nsto we</w>\nfi d\nbun ny\nsham rock</w>\npe cu\nmol ina</w>\ngo cougs</w>\ncon tributes</w>\ntransform ation\nmo y</w>\nv aj\nsever y\nantioxid ants</w>\nthir teen</w>\nsight seeing</w>\nl j\nreversi ble</w>\nodd ly</w>\nhoo kah</w>\nnou vel\nhal al</w>\nfe i</w>\nstab les</w>\nmul t\nho pped</w>\nbra ids</w>\ninter change</w>\nghana ian</w>\nww ww\neth no\ncon junction</w>\nago v</w>\nye ti</w>\nearth and\nts p</w>\ncon serve</w>\nheir loom</w>\nmetaph or</w>\nwoo f\ntor io</w>\nself less</w>\nn wa</w>\nem ilia</w>\nyl ene</w>\ny xe</w>\ngi ar\nmoder ating</w>\npro bz</w>\nb fi</w>\nne er\ndu mmy</w>\nhanuk kah</w>\nwe bber</w>\nk v</w>\neye brow</w>\ndag ger</w>\nsu mp\nra ges</w>\nork ney</w>\ntb o</w>\nhal sey</w>\nassign ments</w>\ntr onic</w>\nscri b\nco on\nan war</w>\n# âĢİ</w>\njal ape\nflori da\nqu aid</w>\nhaw keyes</w>\nâĻ¡ âĻ¡</w>\nstreet car</w>\nro g\ndat lantic\ngran ola</w>\nun changed</w>\nexpect ation</w>\nÙ ĩ\nmar lin</w>\ngu mmy</w>\nðŁĻı ðŁı¾\nawareness month</w>\noil painting</w>\nmu th</w>\nper ch</w>\njun to</w>\nvilla gers</w>\nmor g\nche ated</w>\nweb comic</w>\nthe future</w>\nd ps</w>\nla kings</w>\nmen tioning</w>\nvo or\nident ities</w>\naccor d\nmc gu\nl pga</w>\nrum our</w>\nmassi vely</w>\nm pls</w>\nheal y</w>\nd ate\nsp oli</w>\nre visited</w>\non t\nal and\nscru tiny</w>\nlakel and</w>\nbl ending</w>\n< /</w>\nan kara</w>\njami edor\nmetab olic</w>\nf ences</w>\nann y\nå ħ\nsemic on\noo tt</w>\nspace ship</w>\nwack y</w>\nle ta</w>\nap ac</w>\nshe e</w>\nin herit\ndo res</w>\nðŁĩ¨ðŁĩ ¦\ngent e</w>\ntw ick\nri ms</w>\ngal ve\nde ville</w>\nking fisher</w>\nscorpi o</w>\now l\nal ar\nvari an</w>\nðŁĹ ĵ\nvene tian</w>\nstar dust</w>\nthen orth</w>\nq ing</w>\nhar rington</w>\nconsul ate</w>\nspectac le</w>\nho bbs</w>\ntur ks</w>\ngre er</w>\nmat ing</w>\nðŁİ Ģ\nðŁĮ Ģ</w>\ndirec ts</w>\ní ĭ\npompe o</w>\nvo iced</w>\nla os</w>\ntz u</w>\npro me\npri sm</w>\nmer c\nfortun ately</w>\nbc fc</w>\nmcdon nell</w>\nnot sorry</w>\nsmi led</w>\nt ba</w>\nfor war\nmid term</w>\ndar by</w>\nwe instein</w>\nup grading</w>\nwol ff</w>\nbron co</w>\ncab ello</w>\nðŁ¥ ĩ\nfi able</w>\nshar pe</w>\nbat tered</w>\nsat o</w>\nmyth ical</w>\ninstap ic</w>\npre pped</w>\neni um</w>\ne spo\ndi aper</w>\nexplan ations</w>\nwho pping</w>\nragn ar\npe el\nantibio tic</w>\nl acks</w>\nharri son\nli sm</w>\nau l</w>\nqu ail</w>\nmartin a</w>\nsent encing</w>\nsc ams</w>\ndi di</w>\ntr onics</w>\nãħł ãħł</w>\ngo ff</w>\nza in\nparam ore</w>\ncha ined</w>\nclin ton\nli ff</w>\ncott ages</w>\nem on</w>\nreve rend</w>\nconsu mer\nce an\nt any\nlum pur</w>\ne bay\nsto ol\nðŁĺ» ðŁĺ»\nta pro\nh ath</w>\nmodern art</w>\njust ine</w>\nprover b</w>\napp y</w>\ntra x</w>\nmani fest</w>\nam bu\nnai k</w>\npe pp\nr sd</w>\nmer chants</w>\nkitch ener</w>\nshi fted</w>\nli zz\nâĺħâĺħ âĺħâĺħ\nâĢĶâĢĶâĢĶâĢĶ âĢĶâĢĶâĢĶâĢĶ\nuto pia</w>\ntom o</w>\nou ted</w>\ncom ers</w>\nchiroprac tic</w>\nbook club</w>\ncin dy\npro hibition</w>\nse uss</w>\në¯ ¼\nthin kin</w>\nrr rr</w>\ngo fund\nt ack</w>\nom b</w>\ncatastro phic</w>\nling u\nguild ford</w>\nbo td</w>\nà¥ ĭ</w>\nplan ter</w>\n^ ^\nwin k\nkath mandu</w>\nsto ppers</w>\nsmooth ies</w>\nre efs</w>\nhin d\nbell amy</w>\nĦ ë\nwaste water</w>\nvo or</w>\nnat l</w>\n! ]</w>\nre el\ny ap</w>\nscoo by</w>\nwork space</w>\ncorin thians</w>\nbl un\nobli gation</w>\ng bbo</w>\ndy son</w>\ncra vings</w>\nell ington</w>\ndap l</w>\nwre xham</w>\nearthand clouds</w>\nuk runchat</w>\npositi oned</w>\nkal b</w>\nfour square</w>\njo ck</w>\nim pending</w>\neven ing\nath y\npro claimed</w>\nc ites</w>\nann apolis</w>\nsan i</w>\nmar th\nir l\naccom mo\nka a</w>\nfin a</w>\ny aa</w>\ndi sper\nec ar\nbha k\nwill y\nðŁĺĢ ðŁĺĢ</w>\nmcder mott</w>\nmo j\ngener ational</w>\nu said</w>\ntrain ing\nlon ely\nlo res</w>\nimpe cc\nâĢ Ĳ</w>\nbeav ers</w>\nma ki</w>\nhe b</w>\naap l</w>\nå ı\nwolver hampton</w>\nleader board</w>\nme u</w>\nc fa</w>\neaster n\nhu r</w>\ncivil war</w>\nou rage</w>\nhor ned</w>\nle high</w>\nawar ds\nevi dent</w>\ngi gab\nr ous</w>\nma del\nro byn</w>\nur gently</w>\nk ors</w>\nen as</w>\nheis man</w>\nbam bam</w>\nfab ian</w>\nf om\nevalu ating</w>\nassemb ly\nout sourcing</w>\nhun tsville</w>\nðŁĶ ª</w>\njusti fied</w>\ncashi er</w>\nsp aper\nbuc keye</w>\nanaly tical</w>\nillumin ati</w>\nau tho\no j</w>\nsha de\ngeel ong</w>\nwh ey</w>\nhe aton</w>\nterri bly</w>\nele k\nun charted</w>\nsd live</w>\nmoto cross</w>\nher mes</w>\ndar shan</w>\ndar lington</w>\ncash mere</w>\ngri pping</w>\ncilan tro</w>\npun ish</w>\n... :</w>\nðŁĴ Ħ</w>\ninst ance</w>\nder i\nlo bal</w>\nmuk her\nsp ar</w>\nthin ker</w>\nfre mont</w>\ncom piled</w>\ncolor ado\nvig ne</w>\nsm d</w>\nwhe ad</w>\nvilla ge\nle ek</w>\nformula e</w>\nta res</w>\npersist ence</w>\n?? ????</w>\nped ago\nhe z\nalzheim ers</w>\nvul ture</w>\noff ence</w>\nis great</w>\nsuff ra\nkick in</w>\nh mmmm</w>\nbroad way\nï¸ı @</w>\nart i</w>\nalli son\nendor ses</w>\nry u</w>\nlolli pop</w>\nsoy bean</w>\nkend all\ncer a</w>\ninv ade</w>\n( ðŁĵ·:</w>\nconver ter</w>\ncar pets</w>\nho bo\nfr it\npe ac\nes qu\nern an</w>\nou f</w>\nan il</w>\ndi ffer</w>\nch ing\nbre cht</w>\nsp g</w>\ndaven port</w>\nstra va</w>\nsever n</w>\nn gos</w>\nstor ians</w>\nfe te</w>\nparame dic</w>\nj hb</w>\nal amo</w>\nsne aking</w>\ngold coast</w>\nroof s</w>\nisi l</w>\ndepic ted</w>\nprojec tions</w>\nnu mb\no ss</w>\nep i</w>\nglu cose</w>\nzid ane</w>\ninfin iti</w>\níĺ Ħ</w>\nran som</w>\nton ics</w>\nfal k\ng ler</w>\nou tw\nre ss\nweek ly\nthe on</w>\nn ole</w>\nðŁĩªðŁĩ º</w>\nvol ley</w>\nsum mar\nneg ativity</w>\nsam son</w>\nye w</w>\naus votes</w>\nju l\nju dy\nf art</w>\npra yed</w>\npal ate</w>\nmulticul tural</w>\ndouble header</w>\ncycl ones</w>\npier re\nãģ ¨\nâĺ łï¸ı</w>\nrt w</w>\nconver ting</w>\nwir ral</w>\nl ari\nir relevant</w>\naustin mahone</w>\nan che</w>\nya an</w>\nsd f</w>\n$ .</w>\nexplo ding</w>\nulti mate\nprof ici\ngofund me</w>\ncell ence</w>\nep stein</w>\nbul lied</w>\nsep tic</w>\nà® ¤</w>\nlu mber</w>\ncu ff\nvsco cam</w>\npl or\nà¸ ¥\nse ok\nro to\nvenezu elan</w>\nsor ta</w>\nspir ited</w>\ndaniel padilla</w>\nteam sisd</w>\nradio active</w>\nicelan dic</w>\nðŁĴ ¤\nver e</w>\naccommo date</w>\nshi pp\not ter\nol ina</w>\ne go\nsu la\nsan antonio</w>\nde as</w>\nsimil arities</w>\nâļ ¾</w>\ny om\nbro ward</w>\nå °\ncan cun</w>\nveri fy</w>\non te</w>\ncandle light</w>\nìł ķ\ninf ants</w>\naz am</w>\nðŁĺ °</w>\nle ven</w>\nun stable</w>\nbloom ington</w>\nx ford</w>\ncon tour</w>\ny p</w>\ninnov ator</w>\nhistor ies</w>\npo y</w>\nlolo lol</w>\nex pires</w>\ncat alo\nbill boards</w>\nan ab\nel ic\nnovasco tia</w>\nfa ire\nìĿ ´</w>\nrock well</w>\ngr ille</w>\naz tec</w>\njoh or</w>\nur struly\nfi ren\ndun lop</w>\nid le</w>\nport man</w>\njo es</w>\ntx hsfb</w>\nhol m\ncham ele\nunder world</w>\nlo ss\nti em\ntherap ists</w>\npast ure</w>\npa ste\ning now</w>\nvul can</w>\nra gon</w>\nlar kin</w>\no shi</w>\nho co</w>\nchild hood\numb rel\nsuccess or</w>\nkath y\niz en</w>\n° ï¸ı</w>\nshare holders</w>\nol ga</w>\nai b</w>\nhe ap</w>\nfl aming</w>\nro u</w>\nair tel</w>\nrat t</w>\nz ane</w>\nvo w</w>\nthor ough</w>\nsn ag\npar th</w>\nun conscious</w>\nve y\nnew release</w>\ngh ee</w>\ncroati an</w>\nfacilit ating</w>\nswan son</w>\nastor ia</w>\nto logy</w>\nmaster y</w>\nðŁ¤ ĳ</w>\nbil bao</w>\ntrou pe</w>\nthe ori\nchey enne</w>\nro tt\nshore line</w>\ngra sso</w>\nmaster chef</w>\n+ )</w>\nvi x</w>\nellen show</w>\nas g</w>\nan ak\nku ya</w>\nsafar ilive</w>\ndebu ting</w>\nblu m</w>\nlist ener</w>\nv ins</w>\nbook shelf</w>\nsmart cities</w>\nmakeyourown lane</w>\n; ;\nðŁĲ ¯\nri zz\non ward</w>\nbull dog\nbear ish</w>\nvir uses</w>\nfri gh\nlin den</w>\nwe iser</w>\nsn t</w>\ngon a</w>\ndre sden</w>\nfl anders</w>\ncu k</w>\nwheel ing</w>\nba u</w>\natu esday</w>\nsurf ers</w>\nswi ft\nmc call</w>\narbitr ation</w>\naw d</w>\nmon c\nb ine</w>\nat x\nre fr\nmi ro\npo sey</w>\nn are\nrit ter</w>\nâģ ¦</w>\nplay book</w>\nblow out</w>\nsports manship</w>\ns oooooo</w>\nmalay alam</w>\ngri ms\nbur bank</w>\ninfin ity\nsar gent</w>\noit nb</w>\njoseph ine</w>\nski pping</w>\npar kin\nexcur sion</w>\nsemin ars</w>\njo har</w>\npar tridge</w>\npost game</w>\nll ll\nblan che</w>\ntemp ting</w>\nm na</w>\nlu ka</w>\nis ers</w>\nto ffee</w>\nbar ron</w>\nhe mmings</w>\nsa e</w>\ngo hawks</w>\ncu pid</w>\nli mbs</w>\ncon se\nun common</w>\nz ada</w>\nhead shot</w>\nso ils</w>\npione er\nmam ma</w>\nsem itic</w>\npan dey</w>\njamiedor nan</w>\nspl its</w>\nvel a</w>\nson i\nra ff\nt mobile</w>\nâŀ ĸ</w>\npra wns</w>\nlit er</w>\nenjo yment</w>\negg plant</w>\ntu b\ncultur al\nus ic\nsuspici on</w>\nsy cam\nsumm ed</w>\nma du\nho ck\nup wards</w>\neye ing</w>\nri ve</w>\nassas sins</w>\nâĤ ¬\nout fy</w>\nchi ves</w>\nt ner</w>\nla is</w>\npor ridge</w>\nsad dest</w>\nw cc</w>\nvick i</w>\nsna ils</w>\nbiz italk</w>\nmill an\nðŁĮ į\nsam oa</w>\nj ing\nmi key\ngu j\nchel ms\neli gibility</w>\narma da</w>\nthro p</w>\nsurger ies</w>\nãĤ ¿\nmo hawk</w>\nex its</w>\nme m</w>\nis lington</w>\nc me</w>\nland fill</w>\nkait lyn</w>\nðŁİ ¼\ncombin ations</w>\ntomorrow land</w>\nver b</w>\ncor a</w>\npre cisely</w>\nna om\nðŁĨ ķ</w>\nshr ink</w>\nsof tly</w>\nmerce de\nmand el\npoo dle</w>\nball erina</w>\nsop h</w>\njux ta\ny at</w>\nary an</w>\nhesit ate</w>\nlo wered</w>\ngu lar</w>\ndungeon sand\nron an</w>\nmy ri\nsp f</w>\nmen opau\ngra sp</w>\npa thi\nfe asi\nfla w</w>\nshi story</w>\nste ward\ngg le\nfay re</w>\ncli que</w>\ncredi bility</w>\nyo g\nsec tion\nmu sko\nse ville</w>\nno tt</w>\ncal m\nmate o</w>\nindic ted</w>\nfi ba</w>\nby l</w>\nlin o</w>\nu kin\n!! #</w>\nenig ma</w>\nsiri us</w>\nbu sc\nðŁį Ĭ\nmac kerel</w>\npsal ms</w>\na at</w>\ntomorrow spaper\nðŁĺ ĸ</w>\np fc</w>\n........ ...</w>\nshre k</w>\nmul let</w>\no sh</w>\ndanger ously</w>\nimmen sely</w>\nam ur\nðŁį Ĥ\npro por\nsy a</w>\nlondon marathon</w>\nabo ve\nobli gatory</w>\npro v</w>\nra cha</w>\nalex is\npri mary\nsh h</w>\nether net</w>\nd stv</w>\ncou gar\nun lucky</w>\nni l</w>\nsteak house</w>\nmel a</w>\nfc bayern</w>\ncause way</w>\nca therine\nfluore scent</w>\nnx t\nto kyo\nau sp\nreleg ation</w>\nqui zz\nshored itch</w>\nproud tobe\npromo s</w>\ninter acting</w>\nhome brew</w>\nda esh</w>\nw pg</w>\nstead ily</w>\nprovin ces</w>\nbal lots</w>\ni ah</w>\nal to\n< <<</w>\nyou u</w>\nri ley\nprefe rence</w>\ntra verse</w>\nincen se</w>\nam munition</w>\nho dges</w>\n# @</w>\nhail state</w>\ntart an</w>\nwitch craft</w>\nvent ilation</w>\nliber tarian</w>\n! âĢ¦</w>\now es</w>\n% !</w>\nong chang</w>\nbru shing</w>\nle ic\nfi ber\nunder attack</w>\ndown load\nex pir\nhy o</w>\npompe y</w>\nmc bride</w>\ny ag\nstre e\ncom bat\nten ding</w>\nai ra\ngug gen\nab ra</w>\nin na</w>\nfli ps</w>\naw al</w>\nm ach</w>\ndol lar\ninspir ations</w>\nz um</w>\no du\nit ty</w>\nvideo game</w>\naqu aman</w>\nhar u</w>\nbel fast\nje b</w>\nbut ch</w>\nus gs</w>\ncalcu lus</w>\ngo yal</w>\nmor gen</w>\nx finity</w>\nstand up\ncontrac ep\nsab re</w>\nna be\nin secure</w>\ngener ously</w>\nepit ome</w>\nl w</w>\nt ca</w>\nnarr atives</w>\ndon nell</w>\npand as</w>\nber gh</w>\ntu t</w>\nker al\nfel icity</w>\nbr ampton</w>\nquinte t</w>\nnom ore\nðŁĶ ĳ</w>\nlo i</w>\nalham dulil\nðŁĶ¥ ðŁĶĹ</w>\nston er\nshaw l</w>\nclin ical\nbren dan\ngon e\nfla wed</w>\ntri ppy</w>\nj g</w>\nal location</w>\npo aching</w>\nve vo</w>\nmo cks</w>\nlef tist</w>\nbon uses</w>\ncondem ned</w>\nabil ity\nst ating</w>\nmicrobi ome</w>\nbio logist</w>\nfor you</w>\nwahl berg</w>\nss or</w>\nift ar</w>\nw ul\nÑĦ Ð¾ÑĤ\npom er\nme me\nver te\ntre ll</w>\ntra it</w>\nin let</w>\nhormon es</w>\ndeliber ately</w>\nvill ar\nbattle ship</w>\np bl</w>\ntw enti\nho kies</w>\ndal ail\nsay a</w>\nmay fair</w>\nhan s\ndie ts</w>\nâľ¨ âľ¨\nod in</w>\nhot spur</w>\npap i</w>\nk ana</w>\nk amp\nfin na</w>\nflo tus</w>\nti ans</w>\nunic orns</w>\ntribe ca</w>\nchang ers</w>\nfore ground</w>\nout a</w>\ninv aders</w>\ngett ys\ntomorrowspaper stoday</w>\nmac millan</w>\nhand written</w>\nw fp</w>\nu de</w>\nstate of\nbase d\nâĺģ ï¸ı</w>\ncas m</w>\npsy ched</w>\nhistor ians</w>\nfol d\nd da</w>\nag grav\np ans</w>\ngreen way</w>\nau sv\nðŁĺ ¶</w>\nshradd ha\ninde x\nbe sti\nzim mer</w>\nt ness</w>\neye shadow</w>\not te</w>\ngo ts</w>\ndistribu ting</w>\npro min\nyo l</w>\nace a</w>\ntram rahim</w>\nhoo per</w>\nsupre me\njam min</w>\nintu itive</w>\nquali fications</w>\nsli m\nsid di\njay ne</w>\ntri pping</w>\ng tx</w>\npun s</w>\ne manuel</w>\nom g\nmid summer</w>\nin to\nsuccul ent</w>\nri en</w>\nnew mexico</w>\no or</w>\nhoo king</w>\nin f</w>\nðŁ¤ Ŀ</w>\nflir ting</w>\nna hi</w>\ng friend</w>\nt ps</w>\nhel ix</w>\nz s</w>\non ie</w>\nct f</w>\nkri s\nirresi stible</w>\nfla p</w>\nðŁĳıðŁı» ðŁĳıðŁı»\nus wnt</w>\nru d\nram ps</w>\npin oy</w>\not w</w>\nlol z</w>\nlow ering</w>\nfavor ite\nt mc</w>\nphra ses</w>\nher mi\naver aging</w>\nem br\nben o\nestu ary</w>\nsle eve\nribb ons</w>\nta sh\nà¸ ¹</w>\nx f</w>\naw gs</w>\nsun ited</w>\nbrew eries</w>\nanir ud\npun ches</w>\nol die</w>\nip ads</w>\nwi fey</w>\nland lords</w>\nd ji\ngun ner</w>\níķ ´</w>\ntex an\nex op\ncas sandra</w>\ns off\nðŁļ «</w>\nigh ton</w>\nbak ers\nawareness week</w>\nv all</w>\near p</w>\nbts bbmas</w>\napologi zes</w>\nâļĵ ï¸ı</w>\nwas ps</w>\nstates man</w>\nsnat ch</w>\nwatch dog</w>\nra fi\nafter party</w>\nspi ke\nj er</w>\nperi ph\nr nc</w>\nmu ll</w>\nle en\nshi es</w>\nli eu</w>\nurstruly mahesh</w>\nmer ton</w>\nde sai</w>\nshi f\nðŁĮ ±\npe dic\ngos ling</w>\narrang ing</w>\nww g</w>\ngen y</w>\nyou uu</w>\nnetfli x\ne ttes</w>\nk wi\nbernar dino</w>\nam iga</w>\nØ ¨</w>\nkashmir i</w>\nt ings</w>\nemer itus</w>\nde cat\nab domin\ndc i</w>\npha ses</w>\nd jan\nbe am\nop ry</w>\ni shed</w>\nthe ellenshow</w>\nthe st</w>\nhabit ats</w>\nto ons</w>\nmclau ghlin</w>\nri pper</w>\nmicro biology</w>\ntal aga</w>\nclu eless</w>\nss u</w>\ncro che\nbro mance</w>\nlonge vity</w>\nzagre b</w>\nprev ented</w>\ntra ve\nspo ilt</w>\ndarry l</w>\nmigra ine</w>\nal cat\ndd dd</w>\nvi v</w>\nser pent</w>\nmat tel</w>\njam a</w>\ncon quest</w>\nî Ħ\nsam sung\npresbyter ian</w>\nket ch</w>\nfire fox</w>\nmo tif</w>\nle c</w>\ncho pping</w>\ncher no\nj ann\nðŁĲ °\npro lon\nwake up</w>\nconver gence</w>\nmersey side</w>\nheart broken</w>\nlo oming</w>\nhal lucin\nmai ze</w>\ncommun ism</w>\nmo h</w>\ntwitter storians</w>\nserge y</w>\nres eller</w>\nfavor able</w>\ned gy</w>\nre iter\nmal aga</w>\nlive me</w>\nka hn</w>\npul sion</w>\nbig g</w>\nkim kardashian</w>\nati o</w>\ntyr anny</w>\nru ption</w>\nq ant\npro ven\nby z\npu shaw\nkri stin\ne er\ntar dis</w>\nri z</w>\nawak en</w>\nmi ko</w>\nun documented</w>\npath finder</w>\nindirec t</w>\nresemb les</w>\nh ler</w>\nconce aled</w>\nscand al\nre im\nd nb</w>\ncr itters</w>\nattend ant</w>\napprentice ships</w>\naa u</w>\nscre amed</w>\nl su\nfa h</w>\nhar bour\ned d</w>\nbat sman</w>\nli ss</w>\nmi sha</w>\nspani el</w>\nit f</w>\nadvan cement</w>\nfa c</w>\nclose up</w>\ncecil ia</w>\nmedi c</w>\nnarcis si\nlav ish</w>\ngi ac\nma ys</w>\nle it\nwine wednesday</w>\npushaw ard\nlet to</w>\ncurren ts</w>\nbug atti</w>\nout ine</w>\nw j</w>\nun do</w>\nler osis</w>\ndevo tional</w>\nðŁĳ «</w>\non na</w>\nfais al</w>\nsa una</w>\nhimach al</w>\nam ii\nà® ®</w>\ndi zzy</w>\nscreen writing</w>\nph x\nsp n\nick i</w>\nag irl</w>\nfi shes</w>\nwb z</w>\npi m</w>\nbo ar</w>\nac id\n! ..</w>\nrocke feller</w>\nn ga</w>\ndra stically</w>\nsimpli fy</w>\ndru mming</w>\nautum nal</w>\ngur mee\nlor de</w>\njo ann\ngive up</w>\nb our</w>\nam ura</w>\nder land</w>\nsim pler</w>\nwat son\ntri dent</w>\nconcor dia</w>\nbel lum</w>\nbre k\ndum plings</w>\nvi on</w>\ndungeonsand dragons</w>\nsp ri\nascen sion</w>\nwil datlantic\nu st\nrob ins</w>\nlegi on\ninsi st</w>\njar o</w>\ngue ss\nso b</w>\nbigh it</w>\npool side</w>\nnegoti ating</w>\nmc gill</w>\nbil d</w>\ntechn icians</w>\nmiti gation</w>\najay devgn</w>\nb to</w>\nant en\ncosmo politan</w>\nðŁĺĬðŁĺĬ ðŁĺĬðŁĺĬ\npatri oti\ntemp er</w>\npromen ade</w>\nnav ajo</w>\nnam m</w>\nwrink les</w>\ndc fc</w>\nle ach</w>\nbru nette</w>\nr f\ncout inho</w>\nal ti\ntradition ally</w>\nop tome\nna z</w>\naccord ingly</w>\nrec ard</w>\nde ets</w>\nsw ell\npo sure</w>\nwhit ening</w>\nstrang er\nilli on\nhere ford</w>\nu wu</w>\nro bber</w>\ncotsw olds</w>\ncl en\ngor ge\nnam aste</w>\nre lish</w>\ngri ff</w>\nadren aline</w>\nbla sio</w>\nval e\nê ²\ntoler ate</w>\nrail minindia</w>\njen sen\nho ven</w>\nel lu\nob sole\neisen hower</w>\nunidenti fied</w>\nthan niversary</w>\nbody guard</w>\nØ ¯</w>\ni dge</w>\nsch al\nstock port</w>\nsn i</w>\nre taining</w>\npo po</w>\npix ie</w>\noli thic</w>\nki er</w>\nha jj</w>\nsa z</w>\ncor bin</w>\n!!!! !!!!!!</w>\nv it</w>\nme gat\nde h</w>\ncircu it\naf fleck</w>\ntheore tical</w>\nhope less</w>\nu ab</w>\nslu mp</w>\nb ice\njam med</w>\nlet stalk</w>\ncan i\nside ways</w>\nlabyrin th</w>\nre fs</w>\nha hn</w>\njare d\nðŁį ¹</w>\njam bo\nph yl\nenhan cement</w>\nc tr\nful lest</w>\nse ye</w>\ndo ba</w>\ncho ic\nyo s</w>\ncb j</w>\nandr Ã©</w>\nre watch</w>\npri ma\ndoctr ine</w>\nfor gets</w>\nu hm</w>\nar ound\nu le</w>\nart lovers</w>\nshi raz</w>\nhar th</w>\nex tor\nÅ ¡\nunexpec tedly</w>\neli us</w>\ny x</w>\nem my\nse ac\nðŁĳĩðŁĳĩ ðŁĳĩ</w>\ncorrec ted</w>\ncom bu\nwom anc\ncou gh\nwhat son\npubli shes</w>\ndivers ity\nback bone</w>\nlock down</w>\nmesmeri zing</w>\nnor te</w>\nma b</w>\ndesig ner\ní ģ\nra gh\nmole cules</w>\nget outside</w>\nthe beatles</w>\nsemicon duc\nnach o</w>\nlun es</w>\nham mers</w>\nsul tan\no on\nfe ren\natt ach</w>\nar qu\nuttarak hand</w>\ns ash</w>\n; -\ntre ad</w>\ni ko\nar thur\nscandin avian</w>\nr ation</w>\nga el</w>\ncharge able</w>\nfish y</w>\nv ma</w>\nhand bags</w>\nchar a</w>\nay ne</w>\nde fam\nsett lers</w>\nqad ri</w>\npal ais</w>\nin wx</w>\napocaly ptic</w>\npoo ja</w>\na es</w>\nat ories</w>\nproof ing</w>\nn lp</w>\nts la</w>\nv ina</w>\nli do</w>\ndee phouse</w>\ninformat ics</w>\nv v</w>\npp ings</w>\ndi ss</w>\nÃ ¯\nuhur u</w>\nst ony</w>\nbetra yed</w>\nb aff\nmy ra</w>\nas pen\nallow ance</w>\ntam ara</w>\nci f</w>\ncor bett</w>\nser ge</w>\ndi go</w>\nambi gu\npain ters</w>\np cr</w>\np ca</w>\nnom s</w>\nlo ft\nve e\nopend ata</w>\nðŁĲ ±\nalex andre</w>\nidenti fies</w>\nfantasy football</w>\nre production</w>\nbrom ley</w>\nware agle</w>\nmm er\np ss\ncu es</w>\nay at</w>\nhut chinson</w>\nsar ac\njack man</w>\nira h</w>\nap ink</w>\ncol s</w>\naussi es</w>\nex ecs</w>\nday ton\nðŁĻ Ĩ</w>\nim v\nhar am\nchuck le</w>\nauthent icity</w>\nar do\nincub ator</w>\nà¸ ª</w>\nphoto shopped</w>\nembrac ed</w>\nfight for</w>\ngor man</w>\nzz zz\nschol astic</w>\ncri sps</w>\nte apo\nmid night\nga ine\ncol lier</w>\ns ate</w>\nde tte</w>\nå Ń\nimag ine\ni ff\ntw ili\ni fication</w>\nteat ro</w>\nnor ma</w>\nes ur\nemergen cies</w>\nrise up</w>\nr inger</w>\nhass le</w>\ncait lyn</w>\ntranqu il</w>\nvers a</w>\nse b\nover look</w>\ngin i</w>\nbo go</w>\nse re\nmay ne</w>\nhenri k</w>\ncontamin ated</w>\nrhapso dy</w>\npro portion</w>\nwildatlantic way</w>\nâģ© .</w>\norganis ers</w>\ntran e</w>\nstand ard\nsper m</w>\nlaun cher</w>\nric ci\nher ts</w>\npaper work</w>\nshowcas ed</w>\nmer yl</w>\npen a</w>\np imp\ndisa strous</w>\n^. ^</w>\nphar a\nx is</w>\nfron tal</w>\nsw irl</w>\nsp ills</w>\nswag ger</w>\nsmart watch</w>\nsizz ling</w>\nsavi our</w>\ncat ar\nbb cr</w>\nrefurbi shment</w>\ndr is</w>\ncitro en</w>\nabsor b</w>\npatrioti sm</w>\nil leg\nchro mo\nfresh ers</w>\nru s\nlim iting</w>\nef ish</w>\ndown ed</w>\nman dir</w>\nhazel nut</w>\np all\nmac on</w>\ndisappear ing</w>\nquali fies</w>\nbo on</w>\nbar racks</w>\nam ine</w>\ngen dere\nðŁļ ĺ</w>\nj es</w>\nãĥ Ń\nqu ito</w>\nmiddle weight</w>\nsch au\nquad ru\naci ones</w>\nlimit less</w>\nðŁĳĮ ðŁı½</w>\nch man</w>\nar av\nregulat ors</w>\nit up</w>\nbatter sea</w>\nmil ford</w>\ng z</w>\ntic king</w>\ngh ou\ncru shes</w>\ntu tu</w>\ndread ful</w>\nfam ine</w>\nfor change</w>\ndalail ama</w>\nðŁĴ į\nwhit aker</w>\nhash mi</w>\nh us</w>\nvo d</w>\nbet te</w>\naa ah</w>\niso o</w>\nðŁ¥ Ī</w>\nha ar</w>\nla ine</w>\nb v</w>\nall day</w>\nspr out</w>\nindie games</w>\nfree bie</w>\ngree ks</w>\nbut ler\nill in</w>\nha al</w>\nware ness</w>\nsi ma</w>\npublic health</w>\ngam a</w>\nwa a</w>\noun g\ngoo oo\nokin awa</w>\noff enders</w>\nim pose</w>\nho c</w>\nyoung ster</w>\nstory teller</w>\nsc ap\nfigh ter\n+ ,</w>\nwhit es\nmusic monday</w>\nre za</w>\ngo ducks</w>\nbri a</w>\nmi um</w>\ncas per</w>\ncru mbs</w>\na ad</w>\nmarti alarts</w>\nch p</w>\nri gged</w>\ntn g</w>\nharve sted</w>\nsa k</w>\ndo jo</w>\nmill wall</w>\nb nw</w>\noc d</w>\nhistor yof\nt mr</w>\nsi rens</w>\nfan ci\ncaregi vers</w>\nvir a</w>\nson i</w>\nrecur ring</w>\nacknowle dged</w>\nðŁı Ł\noph ile</w>\nbu cky</w>\nstre ssing</w>\nroo k</w>\ndi gger</w>\nvi val\nsan do\nfle et\nsi ers</w>\nsel caday</w>\nrefre shed</w>\nanti fa</w>\na que\npo lo\ndisappear ance</w>\nde mb\nâĮļ ï¸ı</w>\nren ted</w>\nber ger\ng mb\ncu la</w>\nss al</w>\ngoo dy</w>\nu hh</w>\nmarcel o</w>\nw anna\nsoft ware\nshop small</w>\nturt le\ntom as\nfri sco</w>\nðŁĺį ðŁĴķ</w>\njim enez</w>\nc su\nday z</w>\nan do\nwyn ne</w>\nchoreo grapher</w>\ncerv ical</w>\ntrail blazers</w>\ned g\nzend aya</w>\ntravel blog</w>\nel s\nwhole some</w>\nco g</w>\nlab out\nar ney</w>\ndel le</w>\nsu isse</w>\nma si\nine se</w>\nom be</w>\nfi ddle</w>\nre claim</w>\npa u</w>\nwat cher</w>\nsla in</w>\nber ty</w>\nopti mum</w>\nel ites</w>\nmin is</w>\ntur key\npatro ls</w>\nger ard\nau reli\nwild ly</w>\nwal tz</w>\nbr gy</w>\nw ob\ncre st\n+ ++</w>\nve z\nfro sted</w>\ndavi do</w>\nthe x\nparam edics</w>\np into</w>\nhan k\ndu pont</w>\nur g</w>\nfo stering</w>\nmicro poetry</w>\nspec tre</w>\n---- ></w>\nne uro</w>\nfri da</w>\nmusic al\ngalve ston</w>\ne ffic\nsc ape\npal azzo</w>\nth all</w>\npro visional</w>\np js</w>\nau re\nðŁĶ ľ</w>\nmam amoo</w>\nkit ties</w>\ncre e</w>\nwa k</w>\nlo ool</w>\nlu pus</w>\ncn blue</w>\nÃ º</w>\nðŁİ ¬\nrac ed</w>\ntro se</w>\nom as</w>\nstri de</w>\nco ors</w>\nâ¤ µï¸ı</w>\nin comparable</w>\ncy ril</w>\nbroad er</w>\narec lipse</w>\nðŁį Ķ</w>\ninter val</w>\nti ru\nco working</w>\nw aco</w>\na ham\na bee</w>\nflouri sh</w>\nthe times</w>\nol ini</w>\nkick boxing</w>\nlu cer\nat la\nas un\ncasser ole</w>\nmi aw</w>\nlobb ying</w>\njan ice</w>\ncir que</w>\nre flex</w>\nle ary</w>\nsanat omy</w>\ntem pest</w>\nse mb\nmur dering</w>\nus av\nro bo</w>\non et</w>\np cc</w>\nnati ves</w>\nlife of\nsa ha\nruth less</w>\nrel ates</w>\nappeti zer</w>\npye ongchang</w>\nnor d</w>\ner u\na thing</w>\nug ly\npl ying</w>\nbran ce\norgan ise</w>\nkend ra</w>\ndat o</w>\nchees es</w>\npar ma</w>\nburn out</w>\na stra</w>\npre toria</w>\nadjust ment</w>\nuk u</w>\nsl o</w>\nli ken\nfav ors</w>\ncli ve\nbe ets</w>\nsnow donia</w>\ngo tv</w>\nsy n</w>\nopen house</w>\npan i</w>\nportra yed</w>\nsl ated</w>\nme cca</w>\nren al</w>\nsupportsmall streamers</w>\nstaf fs</w>\nda o</w>\nbi ker\nvik tor</w>\ntit us</w>\nadmi red</w>\nðŁĵ ±\nhurric an\nhe ats</w>\ngl ory\nphoto genic</w>\nmer i</w>\nde por\nburn ham</w>\nor angu\ndj ing</w>\nimpre ssionism</w>\nign ition</w>\nca i</w>\nw ynn</w>\nde pe\ncove ted</w>\ncolla gen</w>\nsau s</w>\nor nam\nadministr ators</w>\nss on\nnh politics</w>\nhahahaha hahahaha\naspir ations</w>\nr gb</w>\nswol len</w>\nso we\nsc r</w>\ndiver gent</w>\nhou ghton</w>\nhan oi</w>\nd ory</w>\nni ki</w>\nland ry</w>\nb cci</w>\nðŁĳĮ ðŁĳĮ\nis mail</w>\ntri pod</w>\nher d\nbhat t</w>\ndress age</w>\ntab by</w>\ningu ish</w>\nhur on</w>\nà³ į</w>\nÃ ł\nto das</w>\nevangel ical</w>\nchor ds</w>\nst john\nslo ppy</w>\nmarty r\nface book\nali ght</w>\nsen sei</w>\nkath niel</w>\nr ites</w>\nzi one</w>\nu o</w>\nrevel ations</w>\nweight lifting</w>\npan o</w>\nnc wx</w>\nac ton\nà® ķ</w>\nØ ²\nsom a</w>\nà¸ Ĺ</w>\nrespec ting</w>\nmar che</w>\nfore man</w>\nbe tty\nki k</w>\nshi bu\npo on</w>\nargy le</w>\nk swx</w>\net z\nmar bella</w>\nbrac kets</w>\nstand by</w>\nfire side</w>\ndefi ance</w>\nv ex\nbritanni a</w>\nin habit\nappo int</w>\npiyu sh\nle ash</w>\nsci ento\nfla sk</w>\nsen na</w>\n> :</w>\nat roc\nsand erson</w>\nid lib</w>\ndhan ush</w>\nðŁĺ Ļ\nen thr\nhit ch</w>\nde dly</w>\nal ley\ndor k</w>\nmon do</w>\ncudd ly</w>\nmis sin</w>\nye sss</w>\nnight ing\nj pn</w>\nw ary</w>\nump ire</w>\nma z</w>\nê ³\nbab s</w>\nĭ ãģ\nstan ford\nposse ssed</w>\nexce eded</w>\nðŁĶ ¶</w>\nwall art</w>\ntra p\nj il\nhi bis\nsp ying</w>\nscri be</w>\nkhali l</w>\ntrans lator</w>\nlu mb\ndi zed</w>\nch c</w>\nsuper vision</w>\nshut ter\nja g</w>\n_ *</w>\nyester days</w>\nms f</w>\nhi hi</w>\ngonz aga</w>\ngille spie</w>\nvive k</w>\nec static</w>\nthis morning</w>\nch us</w>\ned es</w>\nston ed</w>\nbe es\nðŁĩ¹ ðŁĩ\ntur in</w>\nho ver\nat rics</w>\nster n\nsam heughan</w>\nauti sm\nmi ya</w>\neye witness</w>\nwrit ings</w>\ntravel tips</w>\nchut ney</w>\npx rtg</w>\nkeny ans</w>\nmy stic\nk rit\n/ $</w>\nred head</w>\nworld ly</w>\nam us</w>\nop la\nle ve\ngab bana</w>\nse en\no clock</w>\ngang a</w>\nkeen an</w>\nsc ent\nol dies</w>\ngo green</w>\ncorner stone</w>\ncomp ly</w>\ncon cours</w>\nðŁİ¶ ðŁİ¶</w>\nha an</w>\ncon fis\naw son</w>\ncle op\nî Ģ\nsu zu\nsau tÃ©\nal gar\nsubscri ber</w>\neste emed</w>\nãĤ¤ ãĥ\nworth while</w>\nmel rose</w>\nflo ck\nbri ghtly</w>\nviol inist</w>\np ere</w>\nsli pping</w>\nand co</w>\nsi gh\nha van</w>\ncu lo\nm sa</w>\nfibro sis</w>\nmatil da</w>\nra fting</w>\naw ard\në ª\nmm mm\nge aux\nste iner</w>\nsin n</w>\nhelp ers</w>\nbeet les</w>\nai mee</w>\ntai wan\npistachi o</w>\nmac beth</w>\nm zan\ndescend ants</w>\non sale</w>\nin r</w>\nil m</w>\ngrou se</w>\nsa ig\nmo w</w>\nbi gre\nadjust ments</w>\ntu la</w>\nmathe w</w>\ntransl ates</w>\nmu h\nbol lah</w>\nðŁĴĽ ðŁĴĻ</w>\namo res</w>\nab outs</w>\nbomb shell</w>\nbla ster</w>\nx avi\ns ns</w>\nk roger</w>\nga ther\nerad ic\ndaf t</w>\nchem o</w>\nben ches</w>\nðŁĩ© ðŁĩ\nut v</w>\nour a</w>\nn ko\ngator ade</w>\nbiaf ra</w>\nok state</w>\nim danielpadilla</w>\ndom ains</w>\nopen ingday</w>\nkid do</w>\ndo i</w>\nric e\nday care</w>\nmac millan\nba thurst</w>\ncheer leading</w>\nðŁ¦ ģ\ncash back</w>\nk won</w>\nhob bies</w>\nexem pl\nries ling</w>\nâļ ª</w>\nag les\nny s\nevery thing\nnav is</w>\nad di</w>\nmagne sium</w>\nfaceli ft</w>\nark ham</w>\ngrand es</w>\nextre mist</w>\ndon at\nvit ality</w>\npump kin\nbe tta</w>\nsl td</w>\narti san\nli by\npe aked</w>\nah hhhh</w>\nmary am</w>\nassi m</w>\nun sc</w>\nment e</w>\nal aya</w>\nlow ers</w>\nar as</w>\ngri ev\nle ip\ngr ati\ncri ses</w>\nspr ints</w>\nexe cute</w>\nw to</w>\nms d</w>\nmag ical\nre viewer</w>\nspark les</w>\njuke box</w>\nðŁĺĤ âĿ¤ï¸ı</w>\npay back</w>\nlicen ses</w>\ndun kin</w>\nbel t\nlake wood</w>\nh ateful</w>\nbud gets</w>\nrev amped</w>\nph erson</w>\nky iv</w>\nwent worth</w>\nro sen</w>\ncru ise\ngi ggle</w>\ndef star</w>\nassassin scre\nym outh</w>\nwin kle</w>\nw fc</w>\nband wagon</w>\nb kk</w>\nw iring</w>\nkear ney</w>\nsouth side</w>\npe tit\n! ðŁĺį</w>\nnor dic\nmir za</w>\nmu gabe</w>\nv l</w>\nscon es</w>\nk tv\nsand al\ndu c</w>\nm alls</w>\nðŁĴŀ ðŁĴŀ</w>\nit c</w>\nal ay</w>\nim pair\nun rest</w>\nflo ss</w>\nc Ã©\nab ou\nvar ying</w>\nmuse o</w>\nser ver\ndi ya</w>\nhibis cus</w>\nero y</w>\nmer ritt</w>\nfin dom</w>\nf pp</w>\nun usually</w>\ngo tt</w>\nconting ent</w>\nali aa</w>\nball on</w>\njo l</w>\nhi ked</w>\nzy me</w>\nay r</w>\nag n\nga z</w>\nperio dic</w>\nspar ty</w>\npracti sing</w>\nlin ton</w>\ntal is\ncy pri\nwomanin biz</w>\nradio disney</w>\nðŁĮ ¼\njump ers</w>\nendo cr\nðŁļ¨ ðŁļ¨\nand on</w>\nshar apo\nmi er</w>\nma sonic</w>\nfac tories</w>\nvi en\nbb ers</w>\nìĽ Ĳ</w>\nhol d\nke bab</w>\nbe ak</w>\napproach ed</w>\nac milan</w>\nmun ro</w>\nko sher</w>\nexcell ency</w>\nnegoti ation</w>\nwalt disneyworld</w>\ncr ouch</w>\nte asing</w>\nsuppre ssion</w>\nen ya</w>\nb ce</w>\ntransformation tuesday</w>\ncal lie</w>\nvis was\np gat\nic ted</w>\nend ings</w>\nesc u\nrecru ited</w>\nit fc</w>\ncollabor ations</w>\ng ino</w>\nsnu ck</w>\nausch witz</w>\ni fc</w>\nx ii</w>\nke sha</w>\nger vais</w>\nclo ak</w>\nx l\nsa ad</w>\nprob ation</w>\npre cau\nmac in\nanasta si\nle k</w>\ne azy</w>\ndaysof code</w>\nmariah carey</w>\nyo g</w>\nstit ched</w>\nboy friends</w>\nsh ar</w>\nph ile</w>\nag u</w>\ntwin kle</w>\nphi shing</w>\nweek ender</w>\nic ton</w>\ngurmee tramrahim</w>\nal ton</w>\nl eness</w>\nall an\npen ultimate</w>\nkry stal</w>\ngo u</w>\nlan de</w>\ndis mant\nab using</w>\nnor se</w>\npat erson</w>\ned mun\nap an</w>\nxi umin</w>\nsk el\ncat walk</w>\nre act\nwal led</w>\nt angle</w>\nbr yn\nve to</w>\nsuper moon</w>\ncas ablanc\nappreci ates</w>\nski d\nbo th\ncatal ina</w>\nele ague</w>\ncyber monday</w>\ncau tious</w>\nðŁ¤ ĵ\nnov o</w>\nhamp ton\nha ye\njose f</w>\nvar an\nlo bos</w>\nroano ke</w>\norph ans</w>\ntt in</w>\nsqu ads</w>\nishqba aaz</w>\nblack panther</w>\ne tu\nk sh</w>\ncru mble</w>\ncess na</w>\nreli eved</w>\nscul ly</w>\npollin ators</w>\nexplore canada</w>\nki es\nkam loops</w>\nkir an</w>\npri mal</w>\nsett lements</w>\nhot spot</w>\nbrain storming</w>\nce dric</w>\nbi ennial</w>\nsh ant\nâĻ¡âĻ¡ âĻ¡</w>\ndo on</w>\nhear n</w>\nwalk way</w>\nfe m</w>\nve al</w>\ndeport ation</w>\ntox ins</w>\nelimin ating</w>\ndescen ding</w>\nby the\nbla sphe\nha sta</w>\ncomple ment</w>\nas cent</w>\nri ga</w>\nprovo st</w>\nâĸ ª</w>\nwee ping</w>\nanti semitism</w>\nemploye e\nunearth ed</w>\npin o</w>\nnatali e\nbla d</w>\nang ola</w>\nlock heed</w>\nin ian</w>\nag r\nni ster</w>\nim pala</w>\nm ke</w>\nfan atic</w>\nâĺħ âĺħ</w>\nðŁĳ ¸</w>\nlu ch\nsimpli fied</w>\ngall ery\neconom ic\ncy borg</w>\ncon i</w>\nsel ma</w>\nin ception</w>\nko ala</w>\ndv ds</w>\ncre sted</w>\nm mor\nvisi ble\nn sd</w>\nðŁĻĮ ðŁı½\nw under\nrefriger ator</w>\nre opening</w>\ne era</w>\ncarou sel</w>\nas p</w>\nballi stic</w>\nvictor y\nmo tive</w>\ntre y\nsharapo va</w>\nsi i</w>\nmon ter\nint end</w>\nwest chester</w>\nsp e</w>\ncy mb\nvi dal</w>\nll ama</w>\nuni v\nfin er</w>\ncrafts manship</w>\njazz fest</w>\nb ch</w>\nag gio</w>\nn cc</w>\nlamb da</w>\ntranqu ility</w>\ncis co\nba den</w>\nso bbing</w>\nof i\ngo ta</w>\nru mored</w>\nwar med</w>\nore an</w>\nac ton</w>\nmar ci\ngh ani</w>\nâľ ĵ</w>\nas sorted</w>\npembro ke\npen elope</w>\nda f</w>\nat ty</w>\naim o</w>\npretz el</w>\ncarni val\nthan os</w>\nko chi</w>\nmer sal</w>\nham radio</w>\nar twit</w>\ncas c\nguer rilla</w>\nkush ner</w>\nk app\nal ise</w>\ntodd lers</w>\nsteward ship</w>\no tti</w>\nter ri</w>\ntem pe</w>\nrest less</w>\nvit o</w>\nzay ed</w>\nrsp b</w>\npi on\nhi ppo</w>\nhaw thorne</w>\nin as\nam ily</w>\nnut cracker</w>\nlo p\nd ali\ntro pic</w>\nðŁ¤ ł</w>\nul o</w>\njare dle\npy rene\npale o\nusa ir\nm ould</w>\nit ated</w>\ngene tically</w>\nbiom ass</w>\nðŁĩ³ðŁĩ ±</w>\ndo dd</w>\npractic ed</w>\nmonarch s</w>\nun manned</w>\nm buhari</w>\nam al</w>\nphoto gra\nko ol\nbren don</w>\nju ices</w>\ncu re\nworld bank</w>\npoin ters</w>\nðŁĴ Ŀ\ntur f\nle ds</w>\nbor ussia</w>\nbapti sm</w>\nwarwick shire</w>\nmoun ts</w>\ngay o</w>\nbe gg\nco pied</w>\nasi ans</w>\nk g\nmoder nist</w>\ngi d\nfront man</w>\nconcentr ated</w>\ny t\nsc avenger</w>\niron ically</w>\nadi c</w>\nps n</w>\nðŁ¥ ī</w>\ncultur ally</w>\nyu v\nmac arthur</w>\nfertili zer</w>\nbe withyou</w>\nri gor\nmin ors</w>\nz oning</w>\nâĸ ł</w>\nri r</w>\nadole scent</w>\nvin ny</w>\nren g</w>\nsand stone</w>\ngu et</w>\nwe sth\nple dged</w>\nlac ed</w>\nsp ide\nv ai</w>\nty coon</w>\nseiz ure</w>\ndu p\nappalach ian</w>\nro k</w>\ncathol ics</w>\nsey chel\nposse ss</w>\nla ger\njo di\ncham p\nstra s\nd ina</w>\ncent uri\ncal der</w>\nblur ay</w>\nðŁĩ¨ðŁĩ ³</w>\nmo do</w>\nan nette</w>\nyoutu bers</w>\nchap s</w>\nang ling</w>\nlabel ing</w>\na qui\npk wy</w>\nly le</w>\nbi sexual</w>\nlit ur\ndug out</w>\nli bby</w>\ngrey sanatomy</w>\nsub stances</w>\naugust us</w>\nrall ying</w>\nfi del</w>\ning ue</w>\näº º\nhallmark channel</w>\ntooth brush</w>\nm Ã¡\nadi rond\nag gi\nðŁĵį :</w>\ncru sade</w>\ntax ation</w>\nk z</w>\ni ver\ndou bling</w>\nroom ie</w>\nwa b</w>\nen rolled</w>\naz on</w>\na ju\ngrand children</w>\nas df\nðŁ¥ º</w>\nmat ic\nough ton</w>\nutili ze</w>\nðŁĴ £\npon der</w>\nrais in</w>\ndys function</w>\nco bain</w>\nbutter nut</w>\ne man</w>\nsu red</w>\ndri an</w>\nand friends</w>\nwith the\non omy</w>\nheine ken</w>\nbri dal\nleader ship\npyram ids</w>\ndeutsch land</w>\njo cel\nbo wel</w>\ny qr</w>\nhorse power</w>\nbe acon\ning eni\ngra dient</w>\nfer mented</w>\nmo om\nthing y</w>\npot assi\nwrist band</w>\nbor d</w>\nbo died</w>\nðŁĺŃ ðŁĺį</w>\nma pp</w>\nka u</w>\ncyber punk</w>\nph ish</w>\nloo king\nco ates</w>\nap ur\nam ie</w>\nuk labour</w>\nat in\ng la</w>\nadop table</w>\nshel by\nv illi\nri ya</w>\nm ingly</w>\ncli mber</w>\nbumble bee</w>\nðŁĺ ¸</w>\nc sd</w>\nâĿ ¥</w>\nhospit alized</w>\nc ki\nhat er</w>\nch r</w>\nre tina</w>\nit a\nfan base</w>\nbeat rice</w>\ngwy ne\ngo ss</w>\nfo s\nfavor ited</w>\nswachhb harat</w>\nmal ade</w>\nmon mouth</w>\n\" [</w>\nsi van</w>\nsh hh</w>\ncommand ing</w>\nsains burys</w>\nwee d\ng man</w>\nss w</w>\nrep tile</w>\niv y\ntro pics</w>\nroll ers</w>\nover cast</w>\nex position</w>\nmasquer ade</w>\nman crush\nwa ist\nspr inter</w>\nsle et</w>\nle vin</w>\nj pg</w>\n_ (</w>\no pel</w>\nexplo it</w>\nap a\npo we\nwrec king</w>\njong in</w>\nor b</w>\ner ick</w>\nbo sco</w>\npra ising</w>\nber tr\nto wing</w>\nin security</w>\nku t</w>\nresto cked</w>\nrr p</w>\nprescri bed</w>\ntrafal gar</w>\nper t\ng ases</w>\napp rais\ng har</w>\nmusic als</w>\nâĸ¬ âĸ¬\nmc fad\nag ony</w>\nconditi on\nequi p</w>\nshi k</w>\natra vel</w>\nðŁĩ¿ ðŁĩ¦</w>\nke h</w>\nabduc tion</w>\npe oria</w>\nwil kins</w>\ng ms</w>\nas d</w>\nev i</w>\nðŁĴĹ ðŁĴĹðŁĴĹ</w>\nu z</w>\nmo c</w>\nhalle lujah</w>\nguad alu\nlou vre</w>\ndra wing\ngo ve</w>\nph ant\nfri e\nweb dev</w>\nprogram mer</w>\nz able</w>\ngames com</w>\nclari fy</w>\nli th\nkin ky</w>\nâĿ £\nlabour doorstep</w>\nson ata</w>\nju ris\nmai den\nvi adu\nbuch arest</w>\nconditi oned</w>\ncapit alist</w>\nu de\nps b</w>\nsp ca</w>\nlul la\nfooth ills</w>\nkay o</w>\nbon d\nwom b</w>\nroun der</w>\nce sar\nbur sts</w>\nap ra\nsw oon</w>\nsab rin\nfra grant</w>\ncle arer</w>\nku brick</w>\ncli max</w>\njour no</w>\nag le\nðŁı½ âĢįâĻĢï¸ı</w>\npoo ch</w>\nhal e\nsol it\nsal mon\norganis ms</w>\nbron son</w>\nart en</w>\nhodg son</w>\nalo ve</w>\nvent ure\nbb i</w>\nae a</w>\nðŁĲ ¢</w>\nld n\nd nr</w>\no zone</w>\nel las</w>\nman ny\nazz ur\nun beat\ntru ffles</w>\nth ong</w>\nma Ã±\nlas ers</w>\nley e</w>\ngettys burg</w>\nback packs</w>\nor is</w>\nma ison\ncraw ling</w>\nla bra\ncl ing\ndra gging</w>\nste al\ndou bt\nde van\nck ers</w>\nagent sof\nphoto bomb</w>\nelon musk</w>\nabo y</w>\ndist ances</w>\nstory line</w>\nsp i</w>\nnor than\neurope ans</w>\nwh ale\nser pent\nðŁļ ²</w>\nfi or\ntr it\nox o</w>\nawar ding</w>\nclass mate</w>\nsu fc</w>\nsmar test</w>\nrich es</w>\npr k</w>\nbig foot</w>\nar mb\nbi polar</w>\ndw elling</w>\nom ars</w>\nk wan\ngri me</w>\nm eng\nfreder ick\nnavar ro</w>\nsorry notsorry</w>\njaredle to</w>\npa ve</w>\nsl ack\nbarn sley\natt ar</w>\nevic tion</w>\naccumul ation</w>\no ir</w>\ncat chy</w>\nwel ter\nvik as</w>\nhas see</w>\nnik ita</w>\nmo yes</w>\nmathe ws</w>\nshi v</w>\ngat wick</w>\npro filing</w>\ncompan ions</w>\nmar rake\nan tics</w>\nðŁĻĮðŁĻĮ ðŁĻĮ</w>\nse se</w>\nbo i\nbart lett</w>\npoison ous</w>\nab uses</w>\nym m</w>\nkam pala</w>\nguggen heim</w>\nimv kohli</w>\ndol om\nbre e</w>\nthro ttle</w>\ngare th\nfitz patrick</w>\nun ya</w>\npar ad\nmar got</w>\nj nr</w>\nwe a\npotassi um</w>\np nc</w>\ndisgu ised</w>\ncra sh\nren ergy</w>\nill ic\ncoup led</w>\nni els</w>\nci ones</w>\næĹ ¥</w>\nim ent</w>\ndespic able</w>\nd ye\nwhat cha</w>\nconne ctions</w>\nparalym pics</w>\ngaunt let</w>\nwait rose</w>\nsuici dal</w>\nstar ship</w>\nvap or\nst ou\nlaw maker</w>\ncoo led</w>\nsi mo</w>\nthen o\noffro ad</w>\nja den</w>\nbas que</w>\nvick y\nlu kaku</w>\ncentr o</w>\ntri sh</w>\nstrate gist</w>\nmedic ations</w>\nhor st</w>\nb fc</w>\ngra il</w>\nsharp ly</w>\nad itya</w>\ntom b\nkau fman</w>\ntri pad\nsam ba</w>\npastor al</w>\nbrit ney\nsag an</w>\nhill side</w>\nmas ons</w>\nsar a\nz one\nx u</w>\nto tes</w>\nrob bie\napp en\nmon tag\nder o\nshort film</w>\ncharis matic</w>\ntat ors</w>\nki ba\nand ri\nal arming</w>\nsplit ting</w>\nic ar\nth ug\nscari est</w>\nsylve ster</w>\nan an\nu trecht</w>\na difference</w>\nme ade</w>\nbu ster\nair strikes</w>\ncu ffs</w>\naccount ants</w>\nðŁĺ¡ ðŁĺ¡\nnew t</w>\nbo tt</w>\nissu ing</w>\ncl ancy</w>\nwwen etwork</w>\nkyu hyun</w>\nrese mble</w>\npajam as</w>\nsin k\nkin ney</w>\nsul ph\nor k</w>\nli es\nla gh\nor ton</w>\nra hul\nd sc</w>\nwe will\nre am\ncollo qui\nshar ia</w>\nhec tic</w>\nsar casm</w>\nland er\ntm z</w>\nendor f</w>\nro z</w>\nham mered</w>\nfri s\nw adi</w>\npope francis</w>\nhe it</w>\nflash light</w>\nun born</w>\nop es</w>\nhol iness</w>\nðŁĲ ¦</w>\nnach t</w>\nim sa</w>\ngr acing</w>\nbj p\nver ts</w>\nc sc</w>\nhome owner</w>\na que</w>\nbigo try</w>\nanni e\nbag h</w>\nâĿ¤ï¸ı ðŁĺį</w>\ncar i</w>\nthom p\ndispo sable</w>\ncardio logy</w>\npat ented</w>\nhh hhhh</w>\nld r</w>\nstephen son</w>\ncro res</w>\nfan ning</w>\ncli mat\nðŁĳį ðŁĳįðŁĳį</w>\nðŁĳį ðŁı¼\naer on\npiccad illy</w>\nbank rupt</w>\nsil via</w>\nemplo y\ndon ny\ncommen ting</w>\nscreen writer</w>\nio ta</w>\nce an</w>\nanc ers</w>\ntu an</w>\nstreet wear</w>\nà¤ ¯</w>\nsk ine</w>\nesp a\nasi f</w>\nos ce</w>\nshe ppard</w>\nmore cam\nbott le\nder s\norac le\ngoogle play</w>\naver aged</w>\nedmon ton\nsteph an</w>\nsister hood</w>\ncru sted</w>\nstag gering</w>\nmethodo logy</w>\ncongress woman</w>\nc abo\ntri ggers</w>\nmil ky\ngli de</w>\ntooth paste</w>\nroom mates</w>\nnu ff</w>\ngu am</w>\nsprink les</w>\nalternati ve\nwat fordfc</w>\nuof t</w>\nhal ey\ncont acted</w>\nbun dy</w>\npro stitu\ngh ar\npre ston\non site</w>\nhil ar\ng ts</w>\nc att\nhamp stead</w>\n? ?!</w>\nðŁĩ§ ðŁĩ\nbbc qt</w>\naless andro</w>\nresi st\nma idan</w>\nt ko</w>\nshad ing</w>\npin up</w>\ngal lo\nsin u\nat ec\nfun k\nac lu</w>\nstri des</w>\nrhy me</w>\nwet land</w>\nbbc springwatch</w>\nt ins</w>\nwild card</w>\nst our\nflamen co</w>\npau la\nonto logy</w>\ngang sta</w>\nam ade\nãĤ «\nt bs</w>\nskelet al</w>\nrun ner\njard in</w>\nharri er</w>\nhun ted</w>\nz hen\nbelievein film</w>\nde mean\nau diti\nre start</w>\nchon dri\nâĿ¤ï¸ı ðŁĴĻ</w>\nmcla ren\nga b</w>\nsh um\nau sa</w>\nlewi sham\ny pg</w>\nk jv</w>\nfur nished</w>\ndor o</w>\nbon ded</w>\nmor ty</w>\nlat itude</w>\n_ )</w>\nlo va</w>\nwater ways</w>\nvin ai\nshor th\ndrun k\nc ay</w>\nay ana</w>\nkap lan</w>\ncapp uccino</w>\nspr o</w>\nlife boat</w>\nhas bro</w>\nspol ice</w>\ntor on\ndo ing\ndam n\nsh ree</w>\nfoun tains</w>\nent ation</w>\nmar u\nboar der</w>\nto pless</w>\nj ada</w>\nchan ning</w>\nul ls</w>\nen closure</w>\ngib son\nfractu red</w>\nbrit ton</w>\nÃ ¶</w>\nt ous</w>\npor th\ndra f\ntra iling</w>\nmar gate</w>\neli fe\ndown ward</w>\nlin n</w>\ngla des</w>\ngirl power</w>\nak rish\nu ki\nron da</w>\nts c</w>\nappreci ationday</w>\nvis ing</w>\nlo om\nðŁį ³</w>\nmex ican\nar gos</w>\ny ya</w>\njad ine</w>\nsouth port</w>\nd end\nsi sta</w>\nrede em</w>\nmen g</w>\nbra xton</w>\nantioxid ant</w>\ns key</w>\nmp g</w>\nfin ding\nvibr ation</w>\nce u</w>\nkh art</w>\ndi mini\ncl ine</w>\nshel ly</w>\nhin es</w>\nī ï¸ı</w>\nto pical</w>\nno ver</w>\nma xx</w>\nprim itive</w>\nillustr ate</w>\nb ounds</w>\ntren ton</w>\njoin tly</w>\nbreed ers</w>\nu chi\nwakeup america</w>\nb ada</w>\nðŁĹ £ï¸ı</w>\ngu acam\nsp heres</w>\npere gr\nyouth ful</w>\nlo lo</w>\nbir min\nt ly\njeremy corbyn</w>\ndefe cts</w>\nco sm\na rent</w>\nv aa</w>\nbag els</w>\nmedi ac\ncori ander</w>\nic ago</w>\ng haz\nab bas\nre model</w>\nstruc turing</w>\npu m\nout law\nad ani</w>\nr bc</w>\ngul ls</w>\nn li</w>\nconfu se</w>\nðŁĳĩ ðŁı¼</w>\nvil a</w>\nmcnam ara</w>\ncorrec tions</w>\nmug hal</w>\nser i</w>\nre gain</w>\nss b</w>\nlea ve\nhaha hah\ngran de\ndi stressed</w>\nre chargeable</w>\nho a</w>\nhou sed</w>\nsti l</w>\nattribu ted</w>\nopath ic</w>\ndi ps</w>\npri t</w>\nhead phone</w>\nconclu de</w>\npil o\nhe t\nut sa</w>\nnit in</w>\nje m</w>\nsni ppet</w>\ntutor ing</w>\nop er</w>\nsun k</w>\nen sla\ncha u</w>\nac orn</w>\nquinte ss\nran kin</w>\naffili ated</w>\nour lives</w>\ncl int\nse ater</w>\nisa ac\nba shing</w>\nsme ar</w>\nnur se\ndoo dling</w>\n\" ;</w>\nsa ku\natroc ities</w>\nim am\ng fs</w>\nviol ating</w>\ncomm end\nbrad shaw</w>\ner ville</w>\nb illed</w>\nb be</w>\nthul hu</w>\ni phones</w>\nmoo se\ndi os</w>\nre w</w>\nme thane</w>\nstrang ely</w>\nwhis ky\nti ghtly</w>\nspiel berg</w>\nradi us</w>\nnotic ing</w>\nwi f</w>\nig nati\ni fa</w>\nap is</w>\nw ali\nha itian</w>\nbu shes</w>\ny z\nv l\nex ited</w>\nasse l</w>\ntru ec\ndom en\nash er</w>\nin king</w>\nnewyear seve</w>\nhend ricks</w>\nbat i</w>\nìĿ´ ì\nrich ter</w>\nmon santo</w>\ncon line</w>\nagre at\nðŁ¤ ¯</w>\nmaster pieces</w>\nar n</w>\nrough s</w>\ncle ve\nse v</w>\nfashi ons</w>\nto ya</w>\nsh ail\ncop eland</w>\naqu ari\ndec als</w>\nare you\ny aya</w>\na str\nfon t\nml m</w>\nar ca</w>\npp or\npol lock</w>\nxper ia</w>\nconserv ation\nchain saw</w>\nag gie</w>\n?! ?!?</w>\nsi le\nsh on</w>\nìĹ Ĳ\nnote books</w>\nmarque tte</w>\nde us</w>\nbb led</w>\nspic er</w>\nmc cabe</w>\nnor wich\nmodi fication</w>\nboo sted</w>\nstru m</w>\nsales man</w>\nbang le</w>\nnis san\nhez bollah</w>\nbrea sts</w>\na af\nanth us</w>\nsk er\now ed</w>\nher os</w>\ngi fs</w>\nfo sters</w>\neat ers</w>\ndu es</w>\n_ /\nlymph oma</w>\nsf am</w>\nme gal\nafri di</w>\nag ic</w>\np amp\njeal ousy</w>\nðŁĳĮ ðŁı¼\ncalcul ate</w>\nnapp ing</w>\ng ale\nðŁ¦ Ħ</w>\nlub bock</w>\nassu med</w>\nren ting</w>\níĥ ľ\nsubur b</w>\nãĤ ·\ntech nic</w>\nu cla\nin front</w>\ngar net</w>\nster oids</w>\nstri ving</w>\nho war\nmo ver</w>\nle ton\nbull do\nis in</w>\nci ao</w>\nsn z</w>\nfore front</w>\nd ams</w>\nmid wife</w>\nma wards</w>\ncla pton</w>\nwe in</w>\nsubsi dies</w>\nspr oud</w>\nrother ham</w>\nphan tom\nar ach\nspi el</w>\nrac ket</w>\nsel amat</w>\nno on\nl bc</w>\nenti ally</w>\nðŁĴ ¸\nsil ve\nm oud</w>\nkine tic</w>\ny asi\nðŁİ ©</w>\no ol\nmi ku</w>\ni za</w>\nfer a</w>\nflo ren\nbarber shop</w>\ngroo t</w>\nz est</w>\nne ars</w>\nstan is\nz and\npolice man</w>\njuris dic\nform ations</w>\nappar atus</w>\nsp d\narti fact</w>\nto sc\nmotiv ating</w>\nwomanc rush\nre dro\ndiagno stics</w>\nra za</w>\nout fitters</w>\nel xn</w>\ndod gy</w>\nry n</w>\nsh d</w>\northo don\nol de</w>\njay anti</w>\nbal ances</w>\nquic kest</w>\ncan ton\nfriday reads</w>\n! *</w>\nna a</w>\na ak\nðŁĶ ·</w>\nbehavi ors</w>\nrasp berries</w>\nä »\npolit ical\ncam il\nå ľ\ndi k</w>\nast ounding</w>\nlie be</w>\nnovel ty</w>\ntur moil</w>\nsul ly</w>\nspring break</w>\nhon ouring</w>\ncc g</w>\nðŁı Ĵ</w>\nmy little\nky c</w>\npro ms</w>\nðŁķ Ĭ</w>\nÃ ¨</w>\nbi ge\nav ril</w>\nðŁĩµðŁĩ °</w>\nmari on\nas ants</w>\nsur ya</w>\noc tag\nluf than\nac ron\nfayette ville</w>\nti que</w>\nlove s\nen ca</w>\nde kalb</w>\nta ver\nde vote\naux iliary</w>\njoh annes</w>\ntread mill</w>\nay an\nqu r</w>\ndonald son</w>\ncher yl\n\" ....</w>\ns ven\nkir sty</w>\ngun ners</w>\nra dish</w>\no ahu</w>\nv sky</w>\ni ble</w>\ncon course</w>\nb ps</w>\nelo qu\nash ford</w>\nte bow</w>\nroblo x</w>\nma da</w>\ndri ving\nth day</w>\nspro ject</w>\nm ms</w>\nband ed</w>\n. !!</w>\nlibr arians</w>\nflan nel</w>\nintoler ance</w>\nher al\nç µ\nneme sis</w>\nlist a</w>\ntar ak</w>\ncry pt</w>\nstar plus</w>\nvish nu</w>\nsc ale\ncr is</w>\n% ),</w>\nj illian</w>\nregg ae\npegas us</w>\nol in\nip ment</w>\nman ic</w>\nl fc\ngodd ard</w>\nite am</w>\nparl our</w>\nanch ors</w>\nlee minho</w>\ntalla hassee</w>\nant it\nd ho\nkid ney\ny ash</w>\nbatt led</w>\naz ad</w>\ngar is</w>\nfaul kner</w>\nsni ff</w>\npapar azzi</w>\ned m\nphy llis</w>\ncon tested</w>\naa ay</w>\nse ca</w>\nk ton</w>\nvel ve\nrain ier</w>\nfor um\ntam pab\nho sp</w>\ntrac tors</w>\nox fordshire</w>\nno tion</w>\nguang zhou</w>\nðŁĺ ¯</w>\nref ill</w>\nwednesday motivation</w>\nsli der</w>\nmukher jee</w>\npr att\nfon taine</w>\nalph on\naf ar</w>\nts i</w>\npest icides</w>\nfi ends</w>\nmo cking</w>\nbra w\ntran sat\ndo ses</w>\nco res</w>\nhom ophobia</w>\ndocu menting</w>\nzlat an</w>\ncon doms</w>\ns Ã©\nsun set\nkun st</w>\nton ga</w>\nà¸ ª\nv ation</w>\nsp ray\nchow der</w>\nra ps</w>\npalla dium</w>\nnor wood</w>\nmusic history</w>\nhoo ker</w>\nsi si</w>\nosp rey</w>\nph ys</w>\nconce ded</w>\nbob cat</w>\nar mad\nze it\nÙ Ħ</w>\nðŁĺģ ðŁĺģ\nmer idi\nðŁĩ· ðŁĩº</w>\ncorn wall\n! ),</w>\ntouch downs</w>\nze it</w>\nchal et</w>\nmm m\nal che\ngor illa\nfo ss</w>\nati ku</w>\nlumin ous</w>\nivan ka</w>\nbe ek</w>\nsta res</w>\nsw iss\nâĿ¤âĿ¤ âĿ¤âĿ¤\nscru bs</w>\nme ath</w>\ngusta v</w>\njo gging</w>\nconfe tti</w>\nas os</w>\ners fc</w>\nbreit bart</w>\napplic able</w>\nautho red</w>\nya ho\nh in</w>\ndisplac ement</w>\nj v\nðŁĮ¹ ðŁĮ¹\not c</w>\nnon profits</w>\ndiec ast</w>\ngu sto</w>\ninte stin\nc ages</w>\nme en\nlu kas</w>\nmoon ey</w>\nðŁĺ ·\nvery day</w>\ntor ah</w>\nis sion</w>\nwa c</w>\nlever aging</w>\nish able</w>\ncu se</w>\nle wood</w>\nmay an</w>\nturn table</w>\nju ice\ntru sty</w>\ntu p\neti quette</w>\nsupervis ors</w>\nstu n</w>\ngu zman</w>\nconfe ren\nric o\nfe ast\nback ward</w>\npol aris</w>\nmic he\njo g\nh ing\nfield house</w>\nvel ing</w>\nsho cker</w>\nesc ence</w>\nà¤ ¾\nvi be\nanasta sia</w>\nmar ched</w>\nkill ing\nĶ ë\nfe tt</w>\nexop lan\n... (</w>\nsnow day</w>\nlo h</w>\nir ani</w>\nla khs</w>\ndel a</w>\npo caly\nboom ers</w>\ndictat orship</w>\nac er\ntur keys</w>\nquarter final</w>\nmuskete ers</w>\nðŁĴĽ ðŁĴļ\nsf x</w>\nmuseum week</w>\nsc ala</w>\nri sis</w>\n( ðŁĵ·</w>\nãĢ Ĥ</w>\nz ies</w>\nbo eh\nhu es</w>\nlu sci\ndol a</w>\nimpeach trump</w>\nroo d</w>\ndon caster\ntor re</w>\nhero es\nfo yer</w>\ntar i</w>\nblur red</w>\nke w\nfrank ly</w>\ndro id</w>\nap al\nÐ ¼\ny af\nbre t\npar agu\ncac ao</w>\nðŁĻĮ ðŁı¾\nru e\nhead aches</w>\nshaw ty</w>\nchar ley</w>\npal er\ngo wns</w>\ncorrec tional</w>\nðŁĺ© ðŁĺ©</w>\nbreaking bad</w>\nol ing</w>\nda p</w>\nendeav our</w>\ncit adel</w>\ntra d</w>\nincumb ent</w>\nmedit ate</w>\nfoo ted</w>\nðŁĴ µ</w>\nshab bat</w>\ndayof the\nwil lem</w>\ngal way\nto red</w>\nmarri age\nf illion</w>\nsleeve less</w>\naud itor</w>\njin young</w>\ninvin cible</w>\nkad una</w>\na and\nvolcan oes</w>\nmon eti\nindie gogo</w>\nbuccane ers</w>\nðŁĳī ðŁı½</w>\nãĢ Ĥ\nlay ton</w>\ncuck oo</w>\nhu mber</w>\nbuzz er</w>\nÏ ī</w>\nto re\nstra ins</w>\nsto m</w>\npa ine</w>\ns we</w>\ndu ff\nz ou\nsi mi</w>\nli pp\nur n</w>\nse agu\nðŁĶ ®</w>\nsun dae</w>\nhi c</w>\nðŁĺ ¨</w>\nbull pen</w>\nu per\nflyo ver</w>\nal dridge</w>\nglo bes</w>\nali es</w>\nken zie</w>\nge es</w>\ny cle</w>\nsp lin\nmag enta</w>\nj ha</w>\nbal u\ngh orn</w>\nti pper\nwick er</w>\ntaste of\ncon clave</w>\nch ale</w>\ninv asi\ncat er</w>\ndio xide</w>\nme gab\nwin n</w>\nat p\ntransform ative</w>\nnest led</w>\nhi g\nbri dging</w>\nlil ies</w>\nchee red</w>\nbad dest</w>\nsc rolls</w>\nreal is</w>\ndipl o</w>\nðŁĶ «\nconce ssion</w>\nprefe rences</w>\nexplo des</w>\ner gon\nintroduc tory</w>\nine au</w>\nch af\nsom es</w>\nland rover</w>\nspir ation</w>\nsex y</w>\nsco recard</w>\nillustr ates</w>\nsoul mate</w>\nwi en</w>\ninter disciplinary</w>\nfore casting</w>\nent ities</w>\nglu ed</w>\nen lar\ncur t</w>\npercep tions</w>\nboot leg</w>\nmi re\nasho k</w>\nv az\nhor ne</w>\ncal le</w>\nac ulture</w>\nther oy\nnight time</w>\noc al</w>\ncharacter design</w>\nar mist\nðŁĺı ðŁĺı</w>\nyah oo\nac eae</w>\nto se</w>\neven to</w>\nsou t\nnay anth\nwh om\nv are\nri gging</w>\ngen us</w>\nhi ve\ncom mands</w>\nsti e\nday a</w>\nethan ol</w>\nen f\nhi fi</w>\nflu ence</w>\ncle mson\nre invent</w>\nthermom eter</w>\nhumor ous</w>\nemer ging\naci Ã³n</w>\nðŁĺĺ ðŁĺį</w>\ns ity\nhaw ke</w>\naccompan ying</w>\nt ility</w>\nðŁĺ ª\nre cess</w>\nprotag onist</w>\nl ery</w>\ndun dal\nint l\nbritt any\nq bs</w>\noff the\nmarri ages</w>\nhow to\nviol ated</w>\nadel aide\nwit t\nlanc er</w>\npak v\nhu me</w>\nst ade</w>\nbra gging</w>\nou tright</w>\nad c</w>\nsuper st\nreal time</w>\ncu res</w>\ngarden ers</w>\nero ck</w>\ndale jr</w>\nver o</w>\nbar tol\nmo ti\nmc fly</w>\nv pn</w>\nst ink</w>\nover rated</w>\nguer ra</w>\ne tis\nath ome</w>\ntwd family</w>\nth ab\ntn x</w>\nrafa el\nfamily travel</w>\nx ley</w>\nsat anic</w>\nequ ations</w>\nru dy\nwal dorf</w>\nstan i</w>\ntu be\nmeas les</w>\nzimmer man</w>\nobli gations</w>\ni ously</w>\nbow ser</w>\ntrans former</w>\nsho ppe</w>\nshak en</w>\ngh ouse</w>\nto d\nke tball</w>\nshare holder</w>\nmar ca</w>\nkp mg</w>\nak an</w>\ngiven chy</w>\ncoast al\nau th</w>\nroller coaster</w>\nmar ches</w>\ncoordin ate</w>\ncine ma\napprentic es</w>\npar lor</w>\nmit o\nmen on</w>\nconsider able</w>\nbar re</w>\nglo ss\nenh ances</w>\njaz eera</w>\nfal mouth</w>\nthra sh</w>\nstat en</w>\nk zn</w>\neng el\nsamanth ap\nflo ppy</w>\nsal om\nðŁıĨ ðŁıĨ</w>\nw ack</w>\ndeliber ate</w>\nosc ill\nherit ag\ndu sted</w>\norni thology</w>\npad dle\nfer ns</w>\nbar un\ncl ans</w>\nanticip ate</w>\na ay\nmat ically</w>\né ĩ\ntu mble</w>\npost man</w>\nunic ef\ntro tter</w>\nop d</w>\nleaf let</w>\nge ist</w>\ncease fire</w>\nscre ws</w>\ncre ation\nwal nuts</w>\nlongh orns</w>\nunder statement</w>\nab b</w>\nproxim ity</w>\nna x\nun ity\nturn pike</w>\norda ined</w>\ndub step</w>\nchak ra\nme ch</w>\nlove her</w>\nlook alike</w>\ndonne in\nvir on\nÙ Ī</w>\nbang ers</w>\nvari ants</w>\nout dated</w>\nin ta</w>\ncri sto</w>\nsp elt</w>\nfood and\nf on</w>\nstefan i</w>\nmargin al</w>\nhu tton</w>\nti ara</w>\ntel ford</w>\nqu en</w>\nfair grounds</w>\nque tta</w>\nmikha il</w>\nheal er</w>\nv ball</w>\nty re\nunder grad</w>\ngl end\nhom ers</w>\nscri bed</w>\nmain tains</w>\npo che\nmis sal</w>\nmar ko</w>\nu as</w>\nÃ¡ n\nsh p</w>\ncon vey</w>\npad re</w>\nsab a</w>\npu glia</w>\nmadhu ri\npa xton</w>\nchap lain</w>\nn ago\nca si\n... !!!</w>\nfli rt</w>\nsal eh</w>\nk are</w>\ndi re\nstam ped</w>\nextre me\nðŁĺĥ ðŁĺĥ</w>\nho ppy</w>\nguadalu pe</w>\nadvant aged</w>\neu char\np low</w>\nun n</w>\nmac qu\nport land\ncla sh\npe s\nlou bout\ny p\nkeep ing\narca dia</w>\nfran kie\nfi u</w>\nde th</w>\nencyclo pedia</w>\nsi ze\ninve sts</w>\nðŁį ©</w>\ngeo logical</w>\nfran Ã§\ncon front</w>\nðŁĺ ¥\nd ys</w>\naf m</w>\ntex an</w>\ngraph ene</w>\nrepost app</w>\nac f</w>\nur sula</w>\ngaz a\ndd led</w>\nfu m</w>\nwsb tv</w>\nm be\nfron tiers</w>\nchrono graph</w>\nke s\ninter faith</w>\ntab oo</w>\nspar ta</w>\nwon do</w>\nflori st</w>\nem braces</w>\nca w\nno el\narch ers</w>\nðŁĲ ·</w>\nroman o</w>\nban an\nsh akers</w>\nmelo dies</w>\ngeo thermal</w>\nse phora</w>\nìļ °\nÐ¾Ð ´\npro c\nhand shake</w>\npan de\npopul ated</w>\nslow down</w>\nhor tons</w>\nregistr ations</w>\nun deni\nlan ts</w>\npas sover</w>\nthak ur</w>\nli ef</w>\nadhe sive</w>\npe tal\nmicro scopy</w>\nmemph is\nconfir ming</w>\nair drop</w>\nmesm er\nperce ived</w>\nming le</w>\nlifel ine</w>\ngh j\nworcester shire</w>\npas sions</w>\nach er\nel lar</w>\nah o</w>\nfiren ze</w>\nbar ang\nletter man</w>\nhat field</w>\nlu cha</w>\nje ter</w>\ne shop\nwilliam s\nhoro scope</w>\npre de\neast bourne</w>\ndur ga</w>\ndi version</w>\nal trin\nseis mic</w>\npremi osm\nnar co\nti r</w>\nori g</w>\nor m</w>\nland fall</w>\nci ous</w>\nlin do</w>\nmax ine</w>\nx ico</w>\ntra y\nos wald</w>\nc ba</w>\nric otta</w>\nn cr</w>\nmar au\nà¸ ²</w>\ngladi ator</w>\nch ery</w>\nlun g\nu me\npo psic\nlon ging</w>\ncan als</w>\nta ya</w>\ndecentr alized</w>\nsho pp\npres sures</w>\nmahar aj</w>\neti had</w>\nwal greens</w>\nsucce ssion</w>\nsign aling</w>\nli g</w>\nstaf fer</w>\nnorth korea</w>\ndef ying</w>\nas ma</w>\nde g</w>\nperi meter</w>\noak ville</w>\nm sk\nbalti more\nrece ip\nde ple\nðŁĺŃ ðŁĺĤ</w>\njambo ree</w>\n> .<</w>\nrsp b\npuni sher</w>\nconsider ably</w>\nin tothe\npari sian</w>\nacceler ated</w>\npolye ster</w>\nlow es</w>\nfr ying</w>\nsautÃ© ed</w>\nmou ths</w>\nseychel les</w>\nra x</w>\ngo dis\ndak ota\nhouse wives</w>\nthe me\nmat inee</w>\nblack bird</w>\nye sung</w>\npre fers</w>\npelle gr\nin ated</w>\ntrun ks</w>\nstronger together</w>\nre pet\nre pairing</w>\nped als</w>\ntoler ant</w>\nher r</w>\ndun ne</w>\nindic ation</w>\ndecat ur</w>\nb tv</w>\nexhibit ors</w>\nik on\nfriday motivation</w>\nbra gg</w>\nlive tweet</w>\nal ves</w>\nwomens art</w>\nforeig ners</w>\nwal lets</w>\nmin dy</w>\nlan ey</w>\nbb in</w>\ntv miaw</w>\nlif ter</w>\ntar get\ntam e\ndr ou\nastro photography</w>\nmp c</w>\ng pu</w>\nnord strom</w>\nfric tion</w>\nrun off</w>\nlov able</w>\nsp nfamily</w>\next ingui\nbloo dy\nsch el</w>\narti stry</w>\nsw ish</w>\nscar ce</w>\nph ils</w>\nmax im</w>\npos sum</w>\ncom promised</w>\nsty li\nsc fc</w>\nis sa\nbirmin gham\nsket ched</w>\nangel ica</w>\nordin ance</w>\nje ts\nconqu er\nðŁĺ Ĳ\nonline shopping</w>\ns ori\nreason ably</w>\nnue stro</w>\nar turo</w>\nch l</w>\nbenef ici\nspho to</w>\nwel t</w>\nni kk\nðŁ¤ ŀ</w>\ndan ao</w>\nfor mid\nas se</w>\naf irst</w>\nâľ Ĥ\ngil lette</w>\nas sor\nan onym\nsel ca</w>\nfe mi</w>\nbear able</w>\ny and\nar mory</w>\ncre pe</w>\nceltic fc</w>\nbra vo\nin expensive</w>\nde lec\nge cko</w>\nnew market</w>\nsnow flakes</w>\nkab ir</w>\ncon tra</w>\ncan ning</w>\nmor pho\ngar wal</w>\nðŁĴĥ ðŁı»</w>\nfight ing\nmu tation</w>\nwoo dy\nju gg\ngr aces</w>\npremiosm tvmiaw</w>\nkenne dy\ngu p\nsa e\nop ha\noff spring</w>\nfini sher</w>\nbet ts</w>\nspan ning</w>\nmar j\nh one</w>\nsh ing\ncontin ents</w>\nsamanthap rabhu</w>\nun related</w>\nl acy</w>\nexplo sions</w>\nbenjam in\nsophi e\nno ting</w>\nmicro soft\nas sen</w>\na hoy</w>\ni ker</w>\nho fer</w>\nmo e\nah madi\nyan n</w>\nan ak</w>\nma hi</w>\nbe u\naha h</w>\ncreep er</w>\nbaahu bali</w>\nam at\npri ory</w>\nhaw keye</w>\ndeloit te</w>\nsko da</w>\nprint making</w>\nassemb ling</w>\nmirac ulous</w>\nno ch</w>\nsw o\nleg a</w>\noper ates</w>\nborder lands</w>\neli e\nstron gh\nrep tiles</w>\npir ate\nun fold</w>\nÂ ¯\nqual comm</w>\nun predictable</w>\not r</w>\nrose wood</w>\ndirec tional</w>\ncounsel ors</w>\ncorn ell\nliber ated</w>\nj ad</w>\nir regular</w>\nbulgar ian</w>\nhigh ness</w>\nvodaf one</w>\nsw ild</w>\nmini mize</w>\ngra zie</w>\nà¹ ĩ</w>\nr stats</w>\nstre ep</w>\nome tric</w>\nhumb le\nlu mp</w>\nl ille</w>\nb Ã¼\nhome depot</w>\ntripad visor</w>\nki wan\na via</w>\ner z</w>\nex ico</w>\ndu f\nblu men\nmi zing</w>\nar ma</w>\nin im\ncon stan\nsor a</w>\nju al</w>\nau n</w>\ntw ell\ntren ches</w>\nher a</w>\nr k\npo plar</w>\nrecipe oftheday</w>\nll an</w>\nbhu ban\nshort ages</w>\ning don</w>\nbridge water</w>\nðŁĲ ĺ</w>\nfortn ite\ncam den\nun cture</w>\npro w\ncolon ies</w>\nt ks</w>\nn go\nb hm</w>\nlive pd\nspl ace</w>\nsli ke\nhappye aster</w>\nter rence</w>\nrevol ver</w>\nj ed</w>\nyy yy\noffice of\nm ts</w>\nexist ential</w>\nr ourke</w>\nexplore bc</w>\nsse d\npri est\nvix en</w>\nsi ding</w>\nk pa</w>\na har</w>\nju ic\nob struc\nforen sics</w>\nuk mfg</w>\ncancell ation</w>\nwe ary</w>\nab q</w>\nele c</w>\npri zed</w>\ndeb ts</w>\nme zz\nsalv atore</w>\nm dc\ngre tte</w>\nc gc</w>\nth on\nsnow storm</w>\nts ch</w>\ncook ery</w>\nå ¹\nwa xing</w>\nn acional</w>\nmur s</w>\nra ve\ncap es</w>\nger main</w>\ndri pping</w>\nsub mitting</w>\nome lette</w>\niter ation</w>\naj es</w>\nshim mer</w>\nfu eling</w>\nðŁĩ§ ðŁĩª</w>\nli po\nbo bble</w>\nun follow</w>\nislam ist</w>\nhi ber\ncat s\nagentsof shield</w>\nsen si\n____ _</w>\nster ia</w>\ninst al\nausp icious</w>\nhar row</w>\nover land</w>\nfemini sts</w>\ninst ant\nchar iot</w>\nblind ness</w>\nsp ed</w>\nsc arec\nnu it</w>\nmini atures</w>\nho seok</w>\nglo ck</w>\nfifa worldcup</w>\ne te\ndis m</w>\nwe iner</w>\nex foli\near ts</w>\nà¸ Ķ</w>\nmy art</w>\nman il\niss ant</w>\nform a</w>\nin cu\nbuffal ob\nin tim\nmc cul\nanj ali</w>\npo po\nun doub\nhil a</w>\nfun gal</w>\nthank ful\nfu tur\nen dish</w>\nren ds</w>\nth ar</w>\nshe ff\nring o</w>\nnichol ls</w>\nio wa\npo tom\ncl ams</w>\nãģ Ħ</w>\nacon f</w>\nstadi ums</w>\ndi mp\ndi k\nresiden ces</w>\ndo v</w>\ncaric ature</w>\nseagu ll</w>\nkl m</w>\nconfe ss</w>\nsla pped</w>\ncele b\nturb ines</w>\npp v</w>\nnur ture</w>\nel ab</w>\n.... .#</w>\ntu ff</w>\nde press\nal far\namii bo</w>\ndi spon\ne wing</w>\nque er\nfriend s\nfor re\nâĺ ¼</w>\nsw t</w>\naqu arius</w>\nhead liner</w>\ncur d</w>\nfi gs</w>\no tters</w>\nlove fl</w>\nkare em</w>\ngo vegan</w>\nfri yay</w>\nconsol ation</w>\nat ri</w>\nì§ Ħ</w>\nâĺĿ ï¸ı</w>\npoly ne\ngu ed</w>\no ya</w>\nla us\nintestin al</w>\ncam illa</w>\nscal p</w>\npi r</w>\nleed s\nhorri fying</w>\nbore tum</w>\ndand elion</w>\nfer rer</w>\nell ic\nas x</w>\nso ren\nre loaded</w>\nale ague</w>\nnavig ator</w>\nine tte</w>\nadd ams</w>\nal chemist</w>\nak shay</w>\ndystop ian</w>\nawe c</w>\nn aya</w>\nal isa</w>\nai led</w>\nag or\navi ator</w>\nali zer</w>\nsmo bile</w>\nfindyour park</w>\ncop ying</w>\nto ddy</w>\nsh ti</w>\nmon ger</w>\ncal houn</w>\nnap kin</w>\nbreak up</w>\ny atra</w>\nse thu\nric hi\neras mus</w>\nfer ry\nam ore\nprac tise</w>\nbo bo</w>\npower point</w>\noo se</w>\nli ffe</w>\nchin a\nsh ka</w>\nfad navis</w>\ndu ane</w>\nwar on\nfal se\nðŁļ Ĥ</w>\nwa shes</w>\ndisc ip\n==== ====\ng k\nab b\nstub born</w>\nmedi eval\np ci</w>\nðŁį ª</w>\nmaril yn\nh yo\nman di\ncr i</w>\nprede cess\ncontinu ation</w>\nom usic</w>\ns lat\nwh al\nmall ory</w>\nbon n</w>\nshen zhen</w>\nca i\nâĺ ĥ\nsa fest</w>\nfor wards</w>\ndra wers</w>\nbla sted</w>\nsle e</w>\nmor phe\nmb ta</w>\ndumb ass</w>\nÑĦÐ¾ÑĤ Ð¾</w>\nalhamdulil lah</w>\nec lub</w>\nal beit</w>\nheal ey</w>\nayurve da</w>\nadverti sed</w>\ncro cs</w>\nitt les</w>\nbry son</w>\nbe i\nnj pw</w>\nhonore e</w>\nfu sed</w>\nðŁĶ ĺ</w>\nmul tin\nn aga</w>\nde parts</w>\nko p</w>\nkin o</w>\njhar khand</w>\ned na</w>\nax le</w>\nmil ton\nsupremac ist</w>\nmarrake ch</w>\ndomin ic\ntran script</w>\n] [#</w>\n: ).</w>\nwo c</w>\nsur rounds</w>\no gil\nleaf lets</w>\nco well</w>\nwhe w</w>\ntru de</w>\nproli fer\nsucce s\nsports man</w>\ncon dom</w>\npo che</w>\nk up\nimprison ment</w>\n{ }</w>\nscram bled</w>\nå Ľ\nka ine</w>\ncell phone</w>\nmetam or\ncon i\nremn ants</w>\nee z</w>\ndown pour</w>\nafterno on\nexerc ising</w>\nber ser\narchitec ture\nwick low</w>\nm ns</w>\nis p</w>\nbo c</w>\nn iss</w>\nmn wild</w>\nstu mble</w>\nr si</w>\nlu ffy</w>\nsil en\ndd ad</w>\nbul lies</w>\nhaw ker</w>\nbb cc\nscu ba\ne pp\nque ts</w>\nfor aging</w>\npal let</w>\nha di</w>\ncinemato grapher</w>\ncat chers</w>\nto aster</w>\nk hi\nlite coin</w>\nkid lit\namher st</w>\nmaur icio</w>\nip ad\nmar malade</w>\nfe y\ndon nelly</w>\ng to</w>\nest as</w>\ncere bral</w>\nant grasso</w>\nzz led</w>\nvir gil</w>\nswa pped</w>\nðŁĺħ ðŁĺħ</w>\nno dapl</w>\ngreate st\nnhl bruins</w>\nfra ser\nb mo</w>\nane w\n. âĿ¤ï¸ı</w>\nse gregation</w>\nremark ably</w>\nmccor mick</w>\nlo gger</w>\ner as</w>\ncontrac ting</w>\nâłĢ âłĢ</w>\nyor ks</w>\nuku lele</w>\ntouch screen</w>\nde cked</w>\nben n</w>\nsouth wark</w>\nra vin\nnu mis\nðŁ¤ Ļ</w>\nru t</w>\ngre co</w>\neth ic</w>\nred neck</w>\nar r\nt cs</w>\nih ri\nðŁĩ« ðŁĩ·\nl k\ninher ited</w>\nzy k</w>\nviadu ct</w>\nmarty red</w>\nhi gu\nss n</w>\nbe in\nstreet style</w>\nfer gie</w>\nbank of\næĹ ¥\nstake holder</w>\nexempl ary</w>\ncre ss</w>\ness a</w>\nero tica</w>\nintre pid</w>\ngom es</w>\nbra un\nbethan y\nbang tan</w>\npulmon ary</w>\nm illing</w>\ndoctor ate</w>\ntrump russia</w>\nà¤ °\ns ani\nbl att</w>\npla u\ndepri ved</w>\nt le\nful ly\nbour n</w>\nst ak\nlufthan sa</w>\nkio sk</w>\nfar oo\ndef y</w>\nbad an</w>\nðŁĺĺ âĿ¤ï¸ı</w>\nrit z\ntri sha</w>\nran ds</w>\nmiddle sex</w>\narab s</w>\npro j</w>\nsport scenter</w>\nrepe ats</w>\niv f</w>\nbleed blue</w>\nas sure</w>\no bs</w>\nterrit orial</w>\nele n</w>\nbever ley</w>\nann ah\nâĿ¤ï¸ıâĿ¤ï¸ı âĿ¤ï¸ıâĿ¤ï¸ı\nz l</w>\nfor good</w>\nscience fiction</w>\ngla u\nson ya</w>\npri th\nst weets</w>\nmix ers</w>\nmari o\nant elope</w>\nwriting community</w>\nwent z</w>\nden ham</w>\nbe di</w>\nsf o</w>\nharley davidson</w>\nlook book</w>\nimmuno therapy</w>\nor phe\nes ville</w>\ned ged</w>\ntas k\nsb ball</w>\ncorro sion</w>\nkilom eters</w>\nco sting</w>\nplay back</w>\nke ke</w>\ndi visi\nu ter\nre location</w>\nyel led</w>\npen g</w>\nup beat</w>\nser ve\nâļ ł</w>\nhal en</w>\nstir ring</w>\nreh man</w>\nen v</w>\nschu macher</w>\nfrag ment</w>\nalkal ine</w>\nsb k</w>\nresil i\nshare point</w>\nrol lover</w>\ntra sh\ncounter part</w>\nâĻ «\nob itu\nà ½\nãĤ ¹</w>\nmul berry</w>\nðŁİ Ĩ</w>\nauton omy</w>\nspra ying</w>\nnat l\nlove you\nfran ki\nnu k</w>\nesc ar\ncan teen</w>\nali baba</w>\nde plor\nmole cule</w>\npu d\nfort night</w>\nblon die</w>\nsp hin\nportra yal</w>\nta che</w>\nbu te</w>\nconsi sting</w>\nfreep alestine</w>\nc sp</w>\nim mort\nd ns</w>\nðŁĴ¥ ðŁĴ¥</w>\ntour de\ncoo king\narchi val</w>\nga thers</w>\nbit t</w>\nb anc\npre mature</w>\nsnow ball</w>\npoetry day</w>\nlou dly</w>\nfug itive</w>\ned ay\nem ra\nðŁĩ¸ ðŁĩª</w>\nsci en\nnode js</w>\njur gen</w>\nje ong</w>\nband ana</w>\nun is</w>\nfox sports</w>\nv andy\npro visions</w>\nwee p</w>\ntu k\ni ko</w>\nh oun\nzig gy</w>\nz r</w>\nfil let</w>\nbat a</w>\ntin k\ncon e\nwe want\nk ilo\nhor ace</w>\nsl t</w>\nsc t</w>\nstay tuned</w>\nvictor ia\numb ria</w>\natt acker</w>\ningham shire</w>\nfright ening</w>\nno ir\nfr at</w>\ncon tempt</w>\nlia ison</w>\nho i\nbr ink\ntr ill</w>\nni agar\nkick ass</w>\ndun das</w>\nnot my\nrho de\nbu mble</w>\nno xi\nfa g</w>\nspec tators</w>\nmancrush monday</w>\njin ping</w>\ndistr act</w>\ndais y\nwal den</w>\nportra it\nar thistory</w>\nvol tron</w>\nev el\nis c</w>\nac m</w>\nr ite\nna o</w>\nde ported</w>\nswe ats</w>\nru fus</w>\nlo bo</w>\nlabor day</w>\ngam o</w>\nihri thik</w>\nbl it\nabdomin al</w>\nãħ¤ãħ¤ ãħ¤ãħ¤\ni it\ne q\nbu sy\nallu arjun</w>\nun disclosed</w>\nde ton\npro create</w>\nki l</w>\nðŁİĤ ðŁİĤ\nmitch ell\nki i</w>\ninherit ance</w>\nal p</w>\njo burg</w>\npat rolling</w>\ncompul sory</w>\nun signed</w>\nni am\nl ga</w>\neshop suk</w>\ntr illi\nma w\nappreci ating</w>\nrock ab\nmaÃ± ana</w>\nan tal\nmal vern</w>\nroy o</w>\ngrand prix</w>\nsut ton\ngo ftheday</w>\ndig i</w>\nãħĭãħĭ ãħĭãħĭ\nt les</w>\nvaran asi</w>\nerec ted</w>\ndiscip les</w>\ncont act\nðŁĺ µ</w>\nli d\nâ¬ ĩ</w>\nscen tre</w>\nradi ator</w>\ning tips</w>\ntrans itions</w>\nthursday motivation</w>\nchem ical\nsepar ati\nsal is</w>\nmi m</w>\ngeo graphical</w>\nbook fest</w>\n/ .</w>\nâľ ĭ\nv ae</w>\ncur rie</w>\nag garwal</w>\nacceler ation</w>\nthe ses</w>\nlg m</w>\nu mass</w>\npro portions</w>\nnat a</w>\nani ans</w>\nku ch</w>\nbe acons</w>\nap r\n@ #</w>\nðŁĴª ðŁı¾</w>\nnu ke</w>\nsher aton</w>\nki o</w>\nma kati</w>\npolit ico</w>\nmor ale</w>\nì Ļ\neconom ically</w>\ngg ly</w>\nss en\npa stries</w>\nintern ships</w>\nvic ente</w>\nfanta ken</w>\naveng ers\naccu se</w>\nslee pover</w>\nindic ated</w>\nthe dream</w>\nster one</w>\nren ders</w>\nfro st\nou i</w>\ngre gg\nd ore</w>\nâľ¨ âľ¨âľ¨</w>\npu gs</w>\nsat y\nnu mb</w>\nhems worth</w>\ntam i</w>\nla ssic</w>\nschi ff</w>\nigle sias</w>\nag awa</w>\n] \"</w>\nre shi</w>\ngame stop</w>\ndivor ced</w>\ntheat er\nclau di\nun conventional</w>\nprophe ts</w>\nac in\ntwel f\ntow ering</w>\nt ml\nsc lerosis</w>\nk wan</w>\nge ts\ndistur b</w>\nna ira</w>\nener g\npir acy</w>\npru itt</w>\nnoti fied</w>\nhen na</w>\nbra m</w>\nground water</w>\nbl s</w>\nopti mis\n$ )</w>\nluci e</w>\nbiz hour</w>\nfang irling</w>\ngr ills</w>\nor l</w>\nver se\nc ina</w>\nlaw less</w>\nartistson twitter</w>\ntele vised</w>\nmarshmal lows</w>\nradio head</w>\nbar r\nm fc</w>\nbre vi\nmmor pg</w>\ng aya</w>\nâĸ «\nsub titles</w>\nj t\ndisney land\nto bago</w>\nnh m</w>\ngroo ve\nfi awec</w>\n\" /</w>\nba o\nscra bble</w>\nom ni</w>\nff l</w>\num c</w>\nsi mba</w>\nali er</w>\nter rell</w>\nplu me</w>\nmi di\ndig nit\nco c</w>\nbru t</w>\nad ata</w>\nalche my</w>\nd sm</w>\nðŁĺĨ ðŁĺĨ</w>\nwin try</w>\nspa res</w>\ncu er\nconclu sions</w>\nto ys\nod or</w>\nfl ann\ngar vey</w>\nscrip tions</w>\ninspec tions</w>\ncat ap\nang lo\nst louis</w>\nheim er</w>\nat ay\ntr ich</w>\nen yc</w>\nchil ds</w>\nvent il\nmont p\nguiller mo</w>\ncircu lare\nz ell</w>\nmode led</w>\ncraf tsman</w>\nal ina</w>\nstimul ation</w>\ncashe w</w>\nju das</w>\nbest of</w>\nto ire</w>\nsusp ends</w>\nscol lege</w>\nreal ising</w>\nby tes</w>\nbloo ds</w>\nas si</w>\nðŁĴ ¿</w>\no hs</w>\nðŁį ĭ</w>\nscallo p</w>\nà¤ µ</w>\ngi fting</w>\ncamo gie</w>\nwil kes</w>\no zzy</w>\nðŁ¤ ¤\nver onic\nsav oy</w>\ndeme tri\nbaby girl</w>\nðŁĺį ðŁĺŃ</w>\nso x\ncly de\ninduc tee</w>\ncount down\nself care</w>\nà¤ ľ</w>\nvi ka</w>\ntor re\nphd chat</w>\npe ars</w>\naw h</w>\nsuff rage</w>\nle sn\nadmir ation</w>\nmp p</w>\nshark week</w>\nschul z</w>\nsantor ini</w>\nclo ver\n( *</w>\nstras bourg</w>\nex iting</w>\nso yu\nfinger print</w>\nche a</w>\nãĢ ľ</w>\nvin dic\nsong writers</w>\nso a</w>\nprou der</w>\nnam a</w>\n= ))</w>\nsimple st</w>\ndelici ously</w>\ngil les</w>\nu q</w>\nmn wx</w>\nep p</w>\nsh un</w>\nken nel</w>\nfall on\nðŁĲ £</w>\nsin d\ntra gically</w>\nout es</w>\nmodern ism</w>\nco ke\ngy n</w>\nspi on\nâĺ¹ ï¸ı</w>\nle am\ncompress or</w>\napolog ise</w>\ntwent yon\nfan atics</w>\nâĻ »\nsco tsman</w>\nsa wa</w>\nko u</w>\nas er\nà¸ ļ</w>\nwelter weight</w>\nphen om</w>\ntwick enham</w>\nstri a</w>\np out</w>\nka z</w>\ngi am\ncd p</w>\nho y\nemplo y</w>\nred mond</w>\nà¸ Ħà¸\nsm ere</w>\ntrance family</w>\nproto cols</w>\npie ce\nlu iz</w>\niter acy</w>\ncarl s\nunited states</w>\nhar med</w>\nphd life</w>\nch aw\nfoot prints</w>\nl Ã©\ncho ker</w>\nz ana</w>\nsli pper</w>\neric sson</w>\ninsul ting</w>\narticho ke</w>\nadvis ing</w>\nacquis itions</w>\nop or\nmut ations</w>\nre ar\nà¥ ģ</w>\npod cast\nwi ther\nkun g\níĺ ¸</w>\nwin slow</w>\ndi apers</w>\nðŁĵ¸ @</w>\nec ker\ncol lar\nhu ey</w>\ngi ro\nmono gram</w>\nkas ich</w>\nsi veness</w>\nmalay si\narom atic</w>\ngre s</w>\ngali leo</w>\nu ji</w>\nrob b</w>\ndr m</w>\nnone theless</w>\nas a\n: ></w>\nlo a</w>\nl np</w>\nat work</w>\nag t</w>\nlaksh mi</w>\npipel ines</w>\nid al</w>\nstre l</w>\nre all\nchain z</w>\nstone wall</w>\nsan sk\nðŁı ´\npied mont</w>\nhoste ss</w>\nci u\nt Ã©</w>\nanaly ses</w>\nwil helm</w>\nscott y\nrw by</w>\nmosqu it\nuse mb\nqu ins</w>\nðŁĳ İ\ntu cker\ns conf</w>\nspeci fications</w>\npsychi atry</w>\nbroo kes</w>\ns ils</w>\nol af</w>\nde to\nco di\ncli p\nfil th</w>\nwomancrush wednesday</w>\ngo to\nang erous</w>\nbe ale</w>\nw tc</w>\npaneli st</w>\nne x</w>\nlar sen</w>\nemili o</w>\ntab leau</w>\nh itters</w>\nconce ived</w>\nameric ani\nor tega</w>\nmar di\nÑ ĥ\npain tball</w>\nthir sty\nnew yorker</w>\netis ation</w>\ngo ss\nwe aker</w>\nu gh\ntro ll\nhar ga</w>\ndu al\nght ning</w>\nat ine</w>\nðŁĺİ ðŁĺİðŁĺİ</w>\ncook out</w>\npyrene es</w>\npo ss</w>\nauthent ication</w>\nsports wear</w>\nyun ho</w>\nkir o</w>\narchi pel\nshen ko</w>\nren der\nnov ation</w>\ndivin ity</w>\nðŁĳ £</w>\nsu fi</w>\nhumb ling</w>\nge opol\ndevote es</w>\nwait ress</w>\ntr ough</w>\npy ro\ni ba</w>\nbl ing\ngra f</w>\nepilo ts</w>\nbt r</w>\nof tball</w>\nbas king</w>\ndomin os</w>\nso om\nr ath</w>\nsher yl</w>\nqu el\nastronom ical</w>\nwel d</w>\ntrack list</w>\nsig nee</w>\nslee pless</w>\ncom man\nch ron</w>\nsumm on</w>\npure michigan</w>\ncri spr</w>\nsli p\nla gi</w>\nra q\num u</w>\nthal ap\nchar med</w>\nscru mp\nquad copter</w>\nski p\npeter sen</w>\nmun i</w>\nðŁĮ ¾</w>\nmon aghan</w>\ntra ys</w>\nick ed</w>\ncanad aday</w>\nte gr\nï¿ ½</w>\nhot ness</w>\nheavy metal</w>\nab ar</w>\ngop debate</w>\naz ul</w>\nspider man\nsun flowers</w>\nľ ë\nweb comics</w>\nbar d\nÐ ²\nnichol as\nslu sh</w>\nram an</w>\nmark ham</w>\nffici al\nff ler</w>\níĬ ¸</w>\nple ss\nanush ka</w>\nto to</w>\nsk aters</w>\npro wrestling</w>\ncompet es</w>\nay ala</w>\nmyster y\nthr ills</w>\nmp g\nindepend ently</w>\ny ul\nimper ative</w>\nformid able</w>\ntire less</w>\nst acking</w>\nton gues</w>\nmal tese</w>\npot ts</w>\nmat ti\nchar ting</w>\nchill out</w>\nsuper nova</w>\nome o</w>\nsky sports\nnu tty</w>\nðŁĹĵ ï¸ı</w>\nro han</w>\ninsp ired\nconcier ge</w>\nser ra</w>\nma kk\ngal at\nchi pp\nye v</w>\nì £\nreim bur\nop ul\nkimber ley</w>\ni eee</w>\nbre men</w>\nch itec\nor in</w>\nnak u\nbon kers</w>\nfoo ty\nemer gence</w>\nðŁĨ ĺ</w>\nsti p\nserge i</w>\nzo ey</w>\nai me</w>\nwou ld\ndy es</w>\ndestin y\nvinai grette</w>\ndri er</w>\ncirculare conomy</w>\nan archi\nss r</w>\nsch el\ncin er\ngro om\ndetermin ing</w>\ngar min</w>\ncal ais</w>\nincarcer ation</w>\nbu kit</w>\nno i</w>\nchelms ford</w>\nmckin ley</w>\nchi pped</w>\nbelong ed</w>\ntu mors</w>\nstr oud</w>\nmi i</w>\ninfluen za</w>\nwwen xt</w>\ntun dra</w>\ntele communications</w>\ncat sofinstagram</w>\nt ages</w>\nbeat ty</w>\no du</w>\nml kday</w>\noo per</w>\ndang le</w>\nak ley</w>\ncru mb</w>\nanti gua</w>\nti mbers</w>\nrou hani</w>\nðŁĴª ðŁĴªðŁĴª</w>\nha fi\n... !!</w>\nw cs</w>\ncoo p\nsn c</w>\nlit res</w>\nãĢ Ĭ</w>\nha z</w>\nco z\nk ant\ngreen field</w>\ncur ti\ny ale\nflye agles\nwhat soever</w>\nwor thing</w>\nrou lette</w>\nflyeagles fly</w>\nun da</w>\na inted</w>\nstand ing\nlusci ous</w>\nh pc</w>\neffic acy</w>\nash land</w>\nme ghan\nky wx</w>\nn pr\nbath tub</w>\nac os</w>\nh ani\nmar cor\nman tis</w>\nda isi\nbo ba</w>\nab bie</w>\nmu til\nvi al</w>\nspy der</w>\npo z\ng ti</w>\nel fie</w>\nnigh tw\nmetro id</w>\nanton i\nmad die\ndh ry</w>\ndar lings</w>\nten ds</w>\ntaek wondo</w>\natlan ta\nme ow\nchlo e\nãĥ İ</w>\nym es</w>\nsiber ia</w>\nk con</w>\ngu es\nmar iner</w>\nfac il\nazz le</w>\n[ ...\nhan nover</w>\nbav aria</w>\nvir go</w>\nte uk</w>\nu sps</w>\n) #</w>\nwall a</w>\nsam pson</w>\nneed less</w>\nver bally</w>\nhay ley\nbow led</w>\npi us</w>\nlam pard</w>\nham string</w>\nvol vo\nroad safety</w>\ncho king</w>\nsor bet</w>\na hem</w>\nhealthy food</w>\nbrai ded</w>\nhorticul ture</w>\ncr ative</w>\nche ek\nad do</w>\nthe force\nko ko</w>\nschiz oph\nj ie</w>\nw ada</w>\ntwentyon epilots</w>\nh bcu</w>\npro ton</w>\npau ls</w>\nlou isa</w>\nlat am</w>\nkyr gy\ncom pac\nsd k</w>\nsap i\n?? ?\nliber alism</w>\nep silon</w>\nai den</w>\nw usa</w>\nspra yed</w>\nbaske tball\nkim ono</w>\nblue wave</w>\nali as</w>\në§ Ī\nmug shot</w>\nce c</w>\ndo gre\nad ora</w>\nðŁĵ· @</w>\nkra kow</w>\nintrigu ed</w>\nexhau sting</w>\nastron omer</w>\nven ison</w>\nlady bug</w>\nci v\nbra e</w>\nus m</w>\nbri be</w>\nacup uncture</w>\npembro ke</w>\nke ating</w>\nchi e\ny ad</w>\nt si\nsm i</w>\nsee ding</w>\ngate shead</w>\nlis boa</w>\ngy p\ncanv ass</w>\nðŁĶ´ âļªï¸ı</w>\nop i\nni r</w>\nsoci etal</w>\nly te</w>\nati es</w>\nc sm</w>\nar tery</w>\nal in</w>\naka poor</w>\nabstr acts</w>\nâĢ¦ âĢ¦</w>\nteen wolf</w>\nne we\ntravel gram</w>\nsentim ental</w>\nper ched</w>\nhan del</w>\nho ek</w>\nf ay</w>\ncoordin ating</w>\nanim ate</w>\nman ian</w>\neffor t\njer ky</w>\nf ck\nadri enne</w>\nma bly</w>\ntra ding\nmy el\nspi ro\nsol a</w>\nstor ing</w>\nover drive</w>\nmonday morning</w>\ndream team</w>\npul se\nbon di</w>\nber nie\npgat our</w>\ntri poli</w>\nson am\nplat t</w>\nâļ ¡\nag roup</w>\nîĲ Ĵ\ninv ading</w>\nv cu</w>\nk ell</w>\nÃ± os</w>\nun dead</w>\npod casting</w>\nmercede sam\nmana fort</w>\ncor tex</w>\nque so</w>\nimpecc able</w>\npal mer\nwil doz</w>\nsport sc\nguacam ole</w>\ndispen ser</w>\ncate gori\nstun ts</w>\nper il\ninvit ations</w>\ndune din</w>\nxi e\nachi eves</w>\nsaf er\npre ds</w>\nph an</w>\nknuck les</w>\nk ak</w>\nigno res</w>\nlovemy job</w>\naru ba</w>\nound ation</w>\ndatac enter</w>\nco vert</w>\ngr ing</w>\ncou ple\nØ§ Ø±\nvol i</w>\nmc cle\narti sans</w>\nlu do\nkal am</w>\narom a\nunder taker</w>\nhu la</w>\nwiz kid</w>\ngu mb\ngod frey</w>\nbakers field</w>\nker n</w>\nengine er\ncar ve</w>\npal in</w>\nguaran tees</w>\npe bbles</w>\nb ays</w>\nzi eg\nfin k</w>\nâ¬ĩï¸ı â¬ĩï¸ı\ndown pours</w>\nro chelle</w>\nrasp berry\nðŁĺ ®\ngra phies</w>\nstom p</w>\ncaf es</w>\nari zed</w>\nutt ar</w>\ncal vary</w>\ndri e</w>\ncrusad er</w>\nbus an</w>\ntux edo</w>\nsi u</w>\nseam us</w>\ncul tured</w>\nblan chard</w>\ntown house</w>\nge red</w>\nbutter milk</w>\nflu ctu\nroger federer</w>\nhel i</w>\nðŁ¦ ĥ</w>\nu ous</w>\nram esh</w>\nmu ppets</w>\nemail marketing</w>\nye ss</w>\nbr ice</w>\nri zio</w>\npel o\ndonnein arte</w>\nu rable</w>\ninve stin\nbump ing</w>\nraji v</w>\nsav a</w>\nthro wer</w>\nfore x\no hhhh</w>\nth rust</w>\npull man</w>\nr fid</w>\nsep sis</w>\nle ed</w>\nfri ght</w>\nroun ding</w>\nne b\nph ins</w>\nai sha</w>\nutili zing</w>\nsqu ats</w>\ngold smith</w>\nj ic</w>\nbo ks</w>\nvau s</w>\ni po\nexclu sion</w>\ntari ff</w>\npo kes</w>\nmin al</w>\nland s\nen force</w>\nwashington dc</w>\nor char\ng x</w>\nmar ys</w>\ney our\naussi e\nbak ers</w>\nun popular</w>\nlatin os</w>\nlar ge\npu tnam</w>\nbol o</w>\nwa de\npel o</w>\ndi zz\nob struction</w>\nfla ppy</w>\nweare the\ndepend ence</w>\npajam a</w>\ne te</w>\ny ann\ne wan</w>\ndisc la\na ay</w>\nkar ina</w>\ne ic\nan trim</w>\nw soc</w>\nneg atively</w>\nkai do</w>\nfotogra fia</w>\ndh ru\ncolo ssal</w>\nmcle od</w>\nk wang</w>\nmani pu\nex hilar\nus atoday</w>\nsummer slam</w>\nco les\ntapro om</w>\nunbeat able</w>\nde ma\ntic ks</w>\nk ling\nfil s</w>\ncampaig ners</w>\nà¸ ķ\nbrew ster</w>\naudu bon</w>\nqu ay\nch s\nki gali</w>\nd ler</w>\nstrength ens</w>\nsom al\nsign ingday</w>\ngol ds</w>\npig ment</w>\norche stral</w>\ng q\nlin kin\nðŁı ĩ</w>\nta w</w>\nalgar ve</w>\nho v</w>\near le</w>\ngold fish</w>\nam ig\nex er\nben in</w>\ndru id</w>\nðŁĲ ¸</w>\nshe m</w>\nquat tro</w>\nmer cen\nmen te\nincorpor ating</w>\nbon anza</w>\nstate fair</w>\nen de</w>\nconcep tions</w>\ne es</w>\nâĻ¥ï¸ı âĻ¥ï¸ı\nd son</w>\nfire arm</w>\norb ital</w>\nwe h</w>\nmulti p\nfo b</w>\nrequi em</w>\np light</w>\nthou se\nsa id\noc re</w>\nremem brance\nn old</w>\nchi pping</w>\nbe v\ner t\nca thy\nsy m</w>\nri ggs</w>\nm ley</w>\ndialo gues</w>\nsl ender</w>\nhow l</w>\ngau teng</w>\nwd w</w>\nto bi\nsmo kes</w>\nim plo\nb pm</w>\nad n</w>\nmom basa</w>\ncap sul\nbloom field</w>\nartic ul\ncle o</w>\ngoog led</w>\nflu ffy\nl ard</w>\nen zyme</w>\nve sti\nibra hi\nfl ame\ne mea</w>\nout ages</w>\ndispro por\nble ak</w>\nan sel\nick er</w>\nst louis\nstock market</w>\ngood friday</w>\nsau lt</w>\nstal led</w>\npro m\nep som</w>\nb Ã©\nthe se\nsau ces</w>\nme w</w>\nlit fest</w>\npre d\nre u</w>\nkar ak\nsi enna</w>\nell in</w>\nbio technology</w>\nï¸ıâĥ£ -</w>\ntac tic</w>\nsa in</w>\npor k\nmon za</w>\nka j</w>\nlu sh\ncompart ment</w>\nchang ing\nshraddha kapoor</w>\nfo al</w>\nar tem\ncu ando</w>\ncan ola</w>\nori ente\nme sse</w>\nd ited</w>\nbr c</w>\nbox er\nbbc two</w>\ns st</w>\nment day</w>\nem ing</w>\nde wey</w>\nkof i</w>\nâŀĸâŀĸ âŀĸâŀĸ\nreali zation</w>\nsmo l</w>\ntw ood\nsan je\nflag staff</w>\nber wick</w>\ncor set</w>\ncan ary\nwhistle blower</w>\net ched</w>\ncom posing</w>\nsquee zed</w>\nbow er</w>\nauto desk</w>\nne h\nmathi eu</w>\nba ja\nÅ Ĥ\nhy dra</w>\nda im\nam eri\ninsi sted</w>\nmer lot</w>\ngar ros</w>\nheart news</w>\ngaine sville</w>\ncut ler</w>\nbo de</w>\nðŁĺī ðŁĺī</w>\nlew es</w>\nscoun try</w>\ng sa</w>\nus u</w>\ncc m</w>\ngod awgs</w>\nphara oh</w>\ncra e</w>\nmor ley</w>\nhyp noti\nf ades</w>\nneur ons</w>\nfu zz</w>\ning co</w>\nhigh landers</w>\nstar k\nvig ne\npac kets</w>\namar illo</w>\nreu ben</w>\ninsul ts</w>\nbas ic\nvec tor\nn me</w>\nac ruz</w>\ntro s</w>\ntransm itter</w>\nðŁĺ ŀ\ninterpre t</w>\nðŁĺ ²\npre quel</w>\nmc gowan</w>\ndis semin\nðŁĴĺ ðŁĴĺ</w>\nmascul inity</w>\nindie gamedev</w>\nali ve\nte t\npe tal</w>\nema iled</w>\nar med\nko o</w>\nhe er</w>\nba ird</w>\nsuper junior</w>\nmetro polis</w>\ndelav in\ndecl ines</w>\nstit utes</w>\nÛ ģ\np tbo</w>\ng lan\ncho res</w>\ne aling</w>\nchri ssy</w>\nste mc\nvi an\nassassin ated</w>\npron ounce</w>\nilleg als</w>\ndiscover y\ncav ill</w>\nfri fotos</w>\nf al</w>\nso i</w>\nsabot age</w>\nt int</w>\np dc</w>\nðŁİīðŁİ Ī\nãĤ Ĭãģ\nji o</w>\nendeav or</w>\nin sig\ncommit tees</w>\nshe arer</w>\nme tz</w>\nmar rying</w>\nh dd</w>\ng by</w>\nfre t</w>\ntri sh\npu l</w>\nscrip ted</w>\nsa ki</w>\nl w\nke ye\nshim i</w>\nnan aimo</w>\nca h</w>\nÃ «</w>\ntem pered</w>\nici an\ndu gg\ndish washer</w>\nair field</w>\ns rugby</w>\ngr inch</w>\ny st\nr ms</w>\nmahat ma</w>\nlan kan</w>\ndisc ar\ndige stion</w>\nno des</w>\nl ls</w>\nom ic\ngu tter</w>\ntis garh</w>\nfeder ico</w>\nelection day</w>\nbo he\nmaster card</w>\nfire ball</w>\nâľ Ķï¸ı\noy ster\np ong\ndo k\nen route</w>\nm vc</w>\nbeat the\nali stair</w>\nshu b</w>\nsh aming</w>\ncherno byl</w>\nghi bli</w>\nthe s\npin ion</w>\nd bs</w>\nsal ts</w>\nic tion</w>\nepi ph\nnc pol</w>\nin convenience</w>\nwhit ley</w>\ninspec ting</w>\nwood ley</w>\nwi ener</w>\nskil let</w>\nno les</w>\nm ca\nh ina</w>\na sha\nwilling ness</w>\nwell ness\ntam ed</w>\nshow time\ndis advantaged</w>\nber nat\nus n</w>\nmission aries</w>\ncoun selling</w>\narrog ant</w>\nquant itative</w>\nleg alization</w>\nho dge</w>\nenergye fficiency</w>\ncameron dallas</w>\npos sessions</w>\np bb</w>\nharris burg</w>\nv g\nhindu ism</w>\nhappy thanksgiving</w>\nfi b</w>\nre acting</w>\ntweeta picture\npol iti\nmu ppet</w>\nhur rah</w>\npac e\ncoast guard</w>\nguar ded</w>\nas am\npar ry</w>\nfore very\nx q</w>\noom f</w>\nke anu</w>\nj ind\nri st</w>\ncustomer service</w>\nsac red\nðŁĺ º</w>\nton er</w>\noccur rence</w>\nmat u\nval dez</w>\nred d</w>\nis ak\npower rangers</w>\npe asant</w>\nraj ini</w>\nabra ham\ne mil</w>\ncar do</w>\ntr il\nhair styles</w>\nobsole te</w>\nsam pler</w>\ndirec tive</w>\ndelavin kisses</w>\nver ton</w>\nglo s</w>\nsp ay\npaler mo</w>\ncom ets</w>\nman ziel</w>\nchicag of\nski pped</w>\npic torial</w>\nh ant\nb mi</w>\na ol</w>\nre opens</w>\npad dling</w>\ndevo s</w>\nfra ud\nbas eline</w>\nque ues</w>\nsp ired</w>\nsn are</w>\neu ve</w>\ndescri ptions</w>\ndaisi es</w>\nca ching</w>\ngall eria</w>\ntri mmed</w>\nstin o</w>\nrecy cla\nic ular</w>\nbir ken\nraw lings</w>\nfli x</w>\nchic as</w>\nb gt</w>\nlik eli\nargy ll</w>\nthel ove\nga ston</w>\nbl anca</w>\nha k</w>\nf one</w>\nsailor moon</w>\nh aci\nima c</w>\nfl yn\nde can\nbel les</w>\nap ic\nzo g</w>\ntaun ton</w>\ncon stance</w>\nlasag na</w>\nker nel</w>\nin ka</w>\nhar bor\ncollec tively</w>\ncalcul ated</w>\nav ille</w>\nshil pa</w>\npur du\ngi mm\nfun er\na est</w>\npembroke shire</w>\nnighting ale</w>\nn unes</w>\nhyper tension</w>\nhu bert</w>\nsli ders</w>\ninfer tility</w>\ncomm ended</w>\ntransat lantic</w>\nmetr ical</w>\n!! @</w>\nÅ Ł</w>\nss g</w>\nbac ca</w>\ninver ted</w>\nfun factfriday</w>\nit ans</w>\nalbu m\nacqu ainted</w>\nri er\nwhel an</w>\nsar ab\nmu e</w>\nsnoo ze</w>\npi ff</w>\nagre eing</w>\nsp itting</w>\njer maine</w>\nn ye\nâľı ï¸ı</w>\nam bush</w>\nze ph\ncon greg\nunivers ity\ns app</w>\nwann abe</w>\npat rice</w>\nib d</w>\ndo glo\nfri dges</w>\nsun d</w>\nking ston\nar gon\nkam en</w>\nhardro ck</w>\nds ley</w>\ndo lores</w>\nì °\nota ku</w>\npi ping</w>\nbe having</w>\nâŃĲï¸ıâŃĲï¸ı âŃĲï¸ı</w>\nblue bird</w>\nan sari</w>\nteapo t</w>\nfire work</w>\ncro p\nlog ans</w>\nty ped</w>\nthick ness</w>\nig ers\nc fp</w>\ndys functional</w>\ncontra sting</w>\net ty</w>\naston martin</w>\ntx st</w>\ndra grace</w>\nat tributes</w>\nmarath on\nmanu scripts</w>\njohn stone</w>\nðŁĺ± ðŁĺ±</w>\nbo er</w>\nay u</w>\naru gula</w>\npoo rest</w>\ncon du\nassu mption</w>\nanag h</w>\nno h</w>\ndelav in</w>\nsit ter</w>\ng Ã¶\nmor ow</w>\nkick start</w>\ncom i\ngl acial</w>\nghe ad</w>\nba in\nker shaw</w>\nen dof\nfre ud</w>\nom at\ni af</w>\nhu g\nsign up</w>\neach other</w>\ndefin ite</w>\ntu bing</w>\nshak ira</w>\nðŁĳı ðŁı½\nuu uu</w>\nsw in</w>\nsham bles</w>\nol as</w>\nsk ell</w>\nbrit ain\nkn w</w>\nclu tter</w>\nom y\nj ens</w>\nhang ed</w>\ncity scape</w>\nscra ps</w>\nun locking</w>\ndead liest</w>\ner no</w>\nbreast cancer\na it</w>\ninspec t</w>\nfu ri\nðŁĴ Į</w>\nku d\nju le\nor ah</w>\nmi ds</w>\nm dt</w>\nbur gring</w>\nr attle\npu sa</w>\nstal k\ncle ans</w>\niss ance</w>\nz ek</w>\nworth it</w>\nnam eis\nmusko ka</w>\ncouncil man</w>\nurban art</w>\nbar rac\nun solved</w>\ntu l</w>\ng ita</w>\nwhite board</w>\nsoy beans</w>\nem ent\ncont i</w>\nsaturday motivation</w>\nconveni ently</w>\ndoc king</w>\nt ado</w>\nâı ©</w>\nsp ino\npuppy love</w>\npo f\nfabric ated</w>\nrobb ers</w>\nadop ts</w>\nti fied</w>\nkk r</w>\nindulg ence</w>\nnotic eable</w>\nmacqu arie</w>\nchap el\nsensu al</w>\nki ko</w>\nmelan oma</w>\nlore tta</w>\nli ance</w>\nab en\nsp lus</w>\nga al</w>\nac ele\nlib dems</w>\ncompar isons</w>\nðŁĮ µ</w>\nrhy thms</w>\nmer y</w>\nen capsul\nnap ier</w>\nðŁĳĮ ðŁĳĮðŁĳĮ</w>\nðŁĳ Ĳ</w>\nplat z</w>\nfre sno\nre formed</w>\nran bir</w>\nel it\nthe best\nbhu shan</w>\nvin nie</w>\nimpro vised</w>\ns ittin</w>\nre created</w>\ne ba</w>\nec ker</w>\nac rob\npon te</w>\ncor d\ngi ddy</w>\neur usd</w>\nfe ver\nintu ition</w>\ngar i\ndum mies</w>\nbud weiser</w>\namend ments</w>\nte tra\nsch nit\nay as</w>\nmar ys\nci st</w>\nk ani\nker mit</w>\nðŁĺ±ðŁĺ± ðŁĺ±</w>\ntin ker</w>\nstrol ling</w>\ndi visional</w>\nniger i\nomin ous</w>\nmenstru al</w>\nkar ab\nk hy\nbw fc</w>\npan handle</w>\nl illi\nwell er</w>\nstra pped</w>\nson the\ntransfer ring</w>\nethe real</w>\nsne aks</w>\nru dol\ngab les</w>\njac king</w>\ncin code\nfor tune\ncanadi ens</w>\ncon for\nab normal</w>\nfrank lin\ntit a</w>\nmu la</w>\npersi st</w>\ncu ties\nki el\nðŁĩ± ðŁĩ\nher mann</w>\naw k</w>\nfi asco</w>\nko to\nwe ta</w>\nhi ker</w>\nbudd y\npreven tive</w>\nmcgra w</w>\ngame boy</w>\nforsy th</w>\ntop shop</w>\nsi ob\nsad h\nin tram\nfollow art</w>\nso aps</w>\ndragon ball\nou x\nmorri son\nà¹ ĥ\nlu bric\nadul thood</w>\nmorri sons</w>\nâļ łï¸ı\nher mo\nta ka</w>\nstall one</w>\nmis use</w>\nteam gb</w>\nra gha\ncon fined</w>\nat y\nhom ophobic</w>\nnw o</w>\nsky news</w>\nho ya</w>\nac rosse</w>\nwi iu</w>\npur Ã©e</w>\njed dah</w>\nðŁ¤ §</w>\nadvis ers</w>\nph ine</w>\nan is\nscrump tious</w>\në° ķ\nc ke</w>\nvin y\nter m\ns dc</w>\no do</w>\nhome school</w>\nvas c</w>\nleop ards</w>\ndebor ah\nillic it</w>\ncur ran</w>\nas roma</w>\nnau ght</w>\nmar ig\nbrand i</w>\nem p</w>\nðŁĺį ðŁĳĮ</w>\nî Į\nsu spend</w>\nlu z</w>\niniti ation</w>\nsch aft</w>\njensen ackles</w>\ncraw ler</w>\npost doc</w>\ndes ks</w>\ntrail blazer</w>\nden omin\ntri x</w>\nno ise\npo et\n± ï¸ı</w>\ns mug</w>\nvol atile</w>\nproof s</w>\npharmac ist</w>\nsardin ia</w>\nmash able</w>\nkim chi</w>\nco ed</w>\nschal ke</w>\ndoo dled</w>\nc sw</w>\nsh ur\nro x</w>\ndo k</w>\nchris brown</w>\nmathemat ician</w>\nab ound</w>\nang elic</w>\nrock ford</w>\nd ole</w>\nyor kers</w>\nms n</w>\ng man\nxavi er\nbor rowing</w>\nmark ings</w>\nlongh orn</w>\nk ja\ndiver ted</w>\nmm it</w>\neuph oria</w>\nay yy</w>\nte a\npa h\nck i</w>\nun cut</w>\nli ven\nky ung</w>\nfan art\nmer ing</w>\nred ding</w>\namo vie</w>\ngri di\nc thulhu</w>\nschol arly</w>\nju dah</w>\nth bewithyou</w>\neu calyp\nðŁĲ ķ</w>\nhert fordshire</w>\ncour troom</w>\nby u\nauc tioned</w>\nple ase\nmar cia</w>\nê° ĵ\nsucce eded</w>\nel as</w>\narvin d</w>\nt lot</w>\nsaig on</w>\nre tt\nra kesh</w>\nfd ny</w>\nas en\nse bring</w>\ngladi ators</w>\nyou know</w>\nv lad</w>\ngol a</w>\npar ap\nÑĢ Ð¸\nsab cnews</w>\none team</w>\noh l</w>\nsun e</w>\nri j\ncd c\nstar gate</w>\nrun down</w>\nplat o</w>\nph c</w>\nchat ter</w>\nra viol\nmn f</w>\nmand ala</w>\nli et</w>\nà¸ ķ</w>\nmari a\nhun gover</w>\nconsoli dation</w>\nfer rell</w>\ntradition al\nilove art</w>\ngal ap\nðŁı Į\nque zon</w>\nespa Ã±a</w>\nðŁĩ¨ðŁĩ Ń</w>\nho bby\nsteam boat</w>\nmali gn\nguil lau\npro hi\nits me\níĥ Ģ\nin scription</w>\nal z</w>\nmari an\nk ade</w>\nmm on</w>\nadju sting</w>\nne sts</w>\nintern ally</w>\nci r</w>\nvik ram\nmal ala</w>\nk ph</w>\nfel icia</w>\nthe real</w>\ncap tivity</w>\nat is</w>\nmarcor ubio</w>\nkale ido\nche v</w>\nmano j</w>\nle more</w>\ngent ri\nvi ps</w>\ntro pe</w>\n\" âĢĶ</w>\npair ings</w>\nmal nutrition</w>\nfr ay</w>\ndesig nation</w>\nbrun omars</w>\naz e\ntor rential</w>\npan zer</w>\nga il\nunder the\nthe ological</w>\nschizoph re\ndazz le</w>\nfreder ic</w>\nmo par</w>\nad illa</w>\nso ggy</w>\nra un\nmedi ocre</w>\ncolo rec\ni fe\np inst\nblu ef\nÂ ²</w>\nworld water\ngir oud</w>\nclar inet</w>\nad olf</w>\ntar antino</w>\nreceip ts</w>\nassu mp\nðŁĳ Ł</w>\ncoffe es</w>\nâľĬ ðŁı¾</w>\ndu plex</w>\ns of</w>\nr x\nlin o\ntimber wolves</w>\npan dit</w>\nmo tm</w>\ne ga</w>\nay ama</w>\nach s</w>\noutsi der</w>\nll en\nco er\ntil ly</w>\ncheese burger</w>\nma ds</w>\nple dis</w>\nemp ty\nnational parks</w>\naz iz\np mi</w>\njun kies</w>\nf ener\nsq n</w>\nÃ¨ s</w>\ngener ation\ncleop atra</w>\nbhuban es\nmosqu es</w>\nty free</w>\npopp ins</w>\ntw c</w>\nor well</w>\nn age</w>\nka whi</w>\nhol low\ndal ai</w>\nÂ¨Â¨ Â¨Â¨\nou ro\nm health</w>\ngi on</w>\naz o</w>\nvis as</w>\nreneg ade</w>\nre ic\nw sop</w>\nðŁĴļ ðŁĴĽ</w>\ne chel\ntox icity</w>\nmÃ¼ n\nbun k</w>\nstimul ating</w>\nasth our</w>\n\\ '</w>\nep h</w>\nende mic</w>\ncn bc\nshrin king</w>\npeabo dy</w>\nmichel angelo</w>\ncan yon\nwal e\nsu mi</w>\nsi ders</w>\ninu it</w>\n? .</w>\nprofession alism</w>\ndr acing</w>\nplat oon</w>\np ons</w>\nout bound</w>\nmaple leafs</w>\nde sol\ncen cy</w>\na than\nver ma</w>\nru bbing</w>\nok an\nðŁĳ ł</w>\nmull ins</w>\nauthent ic\nÅ į\nalman ac</w>\nga ia</w>\nbb q\non imo</w>\nke h\nty a</w>\ntou ts</w>\ny av\nre posit\n, .</w>\nwi ght\nse eyou\ncal lof\ndone sia</w>\nbar gaining</w>\ngr anth\nsd su</w>\namphi theater</w>\np su\nre watching</w>\nwine tasting</w>\npeak district</w>\ndete cting</w>\nthur man</w>\nphe e</w>\nèª ķ\nu mich\nre r\nsculp ted</w>\ngo le\nname sake</w>\nðŁĶ ģ</w>\nserv icing</w>\nbau gh</w>\npu gh</w>\npen cil\ndar th\nmunch kin</w>\nat orium</w>\nten ers</w>\nsun y</w>\nrolling stones</w>\nmag ing</w>\nstar rer</w>\ni dris</w>\nfe instein</w>\nag ron\nâĺºï¸ı âĺºï¸ı</w>\nsupervis ed</w>\nchamele on</w>\naggre gate</w>\nsucce ssive</w>\nmo gul</w>\ninst yle</w>\npol dark</w>\ncustom e\nohio state</w>\nha ya</w>\nci des</w>\nbroker age</w>\nangel ou</w>\nfifa wwc</w>\nde forestation</w>\nal ton\npam ph\nhu gged</w>\nho bo</w>\nchange able</w>\nku ber\nbur roughs</w>\ndemon etisation</w>\ncape cod</w>\nvers atility</w>\nor ice</w>\nle ila</w>\nwomenin science</w>\ntu a</w>\nhe dges</w>\nembarrass ment</w>\nali fe\nso ars</w>\nni ghter</w>\nhy mn</w>\ngi pp\nchas u\ntech s</w>\nni all\nk illa</w>\nhi ka</w>\ncam els</w>\nvalu e\nÂ ¢</w>\nsc oops</w>\nmah moud</w>\nclu sive</w>\nadri ana</w>\npac o</w>\noz il</w>\nun as</w>\ntransl ations</w>\nwhispe rer</w>\ns bi</w>\nbu xton</w>\nbio tics</w>\nindi ffe\nken ney</w>\nk lar\net ching</w>\nbarra best</w>\ninst ability</w>\nse ine</w>\nvo tel\nblo gged</w>\nwhis key\nmy space</w>\nt ant\nlan dia</w>\ngive back</w>\nillu s</w>\naw ak</w>\nac ab\nf bloggers</w>\ncloud computing</w>\nblat ant</w>\nsyri ans</w>\nband ra</w>\nsty n</w>\nan em\nke ted</w>\nkar thik</w>\nbarun sob\npin ot\ngu bernat\ngay e</w>\narti ste</w>\ni fied</w>\nconven tions</w>\nhu an</w>\ngeni uses</w>\neeee ee</w>\nfol ly</w>\nsomer ville</w>\npride month</w>\nðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸</w>\nchemo therapy</w>\npaul s\nbak ar</w>\nìĦ¸ë¸ Ĳ</w>\ntaiwan ese</w>\nfol lo\nc ss\nre ign\nnn nn</w>\nfla un\ncatastro phe</w>\niti es\nfrag ments</w>\nextre mists</w>\nym oun\ncar men\neze kiel</w>\nconne cting</w>\nse h</w>\nman ta</w>\nremodel ing</w>\nwe ymouth</w>\nat oms</w>\nce m</w>\nne well</w>\nlu mi\nthe open</w>\nmo c\nmili band</w>\ng land</w>\nz shq</w>\nmag gie\nmani acs</w>\nm sp\nad y\ncre ams</w>\nle anne</w>\ne sta\npy g\naf finity</w>\npray er\ndun bar</w>\nligh troom</w>\nac adi\nwyn onna\nroman tic\nstate dept</w>\nsick le</w>\nwh os\nlam o\net our</w>\nfin ity\nshru b</w>\nshar pen\npun dit</w>\ned on</w>\naf ore\nmar s\njeff ery</w>\nter ps</w>\nmedal list</w>\nkath arine</w>\naccu sing</w>\nta z\nroy d</w>\nfrom home</w>\nconfron tation</w>\nalle gh\nðŁĳī ðŁĳī</w>\nrefresh er</w>\nran veer</w>\nnever land</w>\njo jo\nlu crative</w>\nen am\nca ver\npa edi\nman jaro</w>\nflu ids</w>\nthe ssal\noppre ssed</w>\nmu ss\njoh anna</w>\nØ ®\ncn g</w>\nbuil dthe\nsett les</w>\ns ith</w>\nfu ego</w>\ncl amp</w>\nar ag\npay er</w>\nted x</w>\nmand y\ninter stellar</w>\nfr c</w>\nch and</w>\nb cc</w>\nmo lo\nlen til</w>\njohan sson</w>\ngrims by</w>\nnature lovers</w>\nðŁļ¨ ðŁļ¨ðŁļ¨</w>\nshin de</w>\nx in</w>\ninternational dayof\ntransiti onal</w>\nsat a</w>\ncad dy</w>\nwo d</w>\nif u</w>\nha ys</w>\nholl yo\nj ang\nir c</w>\nco im\ngrad able</w>\n\" \"\nðŁį ´\nà¦ ¾</w>\na el\nn yo\nwest lake</w>\ntime out</w>\nsof i\nphenom ena</w>\ncultiv ation</w>\nag no\nun armed</w>\nso t\ncon j\ngen o\nroyal navy</w>\nnutriti on\nfair mont</w>\nti relessly</w>\nsn g</w>\nre ty</w>\nmic a</w>\nlu cent</w>\nslo ane</w>\ndroo l</w>\nriz al</w>\nod ell</w>\ncritici zed</w>\n. '\"</w>\nla ze</w>\ndeser ted</w>\nco der</w>\npra s</w>\nl illian</w>\nitiner ary</w>\ndav y</w>\nan ap\nwhi pping</w>\nhobo ken</w>\nkare ena</w>\nçľ Ł\nvi us</w>\nter n\nnan tucket</w>\nmis understood</w>\nbu laga</w>\nst ant\nchin ook</w>\nz am</w>\nreli es</w>\nd ss</w>\ned mond</w>\nsket chy</w>\nm ell</w>\nfe x\nrec tor</w>\ndist ill\nday dream</w>\nwine maker</w>\nri pley</w>\nbillion aires</w>\nhel ene</w>\nati f</w>\ncul prit</w>\nbertr and</w>\nwou ldnt</w>\nma pped</w>\nv ak</w>\ngla dly</w>\nparliam ent\nkidlit art</w>\nware ness\ngoli ath</w>\nâĨ ĵ</w>\nview point</w>\ntat ted</w>\nfu ls</w>\ndor sey</w>\nang lers</w>\nli ds</w>\nki ya</w>\nbow les</w>\nbe h</w>\nb ite</w>\ncompati bility</w>\nance stral</w>\npro x\nbeha ved</w>\ngubernat orial</w>\nch field</w>\nsab an</w>\nz h</w>\nteen y</w>\nshibu ya</w>\nholli day</w>\npan cy</w>\nâĿĦï¸ı âĿĦï¸ı\nseun gri</w>\n? ,</w>\nðŁĩ¦ ðŁĩ·</w>\nim itation</w>\nimpac tful</w>\nany i</w>\ngene vie\naÃ± os</w>\nbate man</w>\ngli der</w>\naf ar\nra sheed</w>\neffor tless</w>\nsh war</w>\ndach sh\ner un</w>\nat os</w>\nkin i</w>\nch d</w>\nkha ki</w>\nk lin</w>\nfelici dades</w>\nbel o</w>\nas l</w>\nto ppers</w>\nfin ley</w>\nstac ey\nrigor ous</w>\nkar ting</w>\nle ppard</w>\ncar michael</w>\nbe ret</w>\nc se</w>\nak hi\nmer ingue</w>\nab an\nha ke\nger i\ner jee</w>\nre sto</w>\ncomm anders</w>\npr it\nfl or</w>\nad ven\nex termin\nremain der</w>\nå Ĳ\nes g</w>\nmartin o</w>\nlulla by</w>\n| @</w>\nmi gn\nin store</w>\nbig bang\ncor di\ncau ley</w>\nante bellum</w>\ndg ate</w>\ncro ck\nspan dex</w>\nscaf folding</w>\nore os</w>\nê°ĵ ìĦ¸ë¸Ĳ</w>\npom ona</w>\nma uro</w>\nuni versi\nre mi</w>\naf ootball</w>\nt ant</w>\nsm alls</w>\nne h</w>\nworl do\ntropic al\nmor ph</w>\njav elin</w>\ngla r</w>\narqu itec\nreminis cent</w>\ntu bs</w>\nspide y</w>\nmake u\nsyl la\nprogressi ves</w>\nblo t</w>\nshor ten</w>\nkeep in</w>\nch ak</w>\nang st</w>\nsuper food</w>\ndecad ent</w>\nston y\nneuro logical</w>\nar boretum</w>\nann ak\nfe ma</w>\nper cu\ndis respectful</w>\nsmall biz\nlo x</w>\nco om\nc sc\nbs bi\npre valence</w>\nhim ss</w>\nesp an\nmo ga\nfr ampton</w>\nsky map</w>\nmas se\nlevi athan</w>\n( ).</w>\nnoctur nal</w>\ncar ameli\nang or</w>\namne sia</w>\noutsi ders</w>\nshe alth\nrhin o\nant ag\nag io</w>\nðŁĴ° ðŁĴ°\ntake me\nkab addi</w>\nc si\nm sh\ncoch rane</w>\nthessal oni\nsil a</w>\nha us\ndu sting</w>\nobe se</w>\nmack lemore</w>\nmani sh\nlen in</w>\nm dc</w>\ngro wn\nshef field\ns rs</w>\nke le\ncar son\nch um</w>\ndah lia</w>\ncan tore</w>\nopp o</w>\nhow ling</w>\ncyber crime</w>\nsur realism</w>\nsc ran\nfa iz\nthre n</w>\nrac ists</w>\nr out</w>\npk not</w>\nse mana</w>\nsin i\nmc cull\nma chi\nalfon so</w>\ny b\nsar dar</w>\nkend rick\nden g</w>\nreci pro\non f</w>\ndoom sday</w>\nbri bery</w>\ncustom iz\nart is</w>\nc pi</w>\nðŁĻĪ ðŁĻĪ</w>\nsla va</w>\nlet te\nen s\nâĿ¤ï¸ı ðŁĺĺ</w>\ncra yon</w>\nad an</w>\ntr c</w>\nmigr ate</w>\nsimp son\nrow ers</w>\nking sley</w>\nfarmers market</w>\nshee han</w>\nne phe\nbor non\ncar ton</w>\nmic key\nall ure</w>\nu lu\nsli pknot</w>\nheb do</w>\ngui do</w>\ndog celebration</w>\nonline marketing</w>\nacceler ating</w>\n) ..</w>\norigin ated</w>\nmacar oni</w>\ned tech\nout field</w>\nmit z\ndisc us</w>\nadverti ser</w>\nman or\nha shi</w>\ndescri p\ncap ita</w>\nful bright</w>\nrecep tor</w>\ncon n\ncon ey</w>\nspion age</w>\nr attle</w>\npre st\nu li\nblog post</w>\nacker ay</w>\n) âĢ¦</w>\nred velvet</w>\nmat th\ninspir ing\nb sd</w>\nker ri\npo con\nmil lar</w>\nre pur\naccent ure</w>\nä ¹\nram bo</w>\nragnar ok</w>\ndele ting</w>\nbritish museum</w>\npat ory</w>\nleip zig</w>\nflori an</w>\nsci fi\nin ers</w>\nbr ate</w>\nyo y</w>\nmelis sa\nab er</w>\nma sa</w>\npo te</w>\nmosquit oes</w>\ntranspl ant\nr pa</w>\n; ))</w>\nbast ille</w>\nyl an</w>\njoye ux</w>\nmelo dic</w>\ncap tions</w>\natri st</w>\nroch dale</w>\ngott i</w>\npew die\ncuties aturday</w>\nwho is\naqu aculture</w>\ntiv a</w>\nsp el\nhe ss</w>\nha ji</w>\nfred die\nco per\nbrand o</w>\nv k</w>\nphoto book</w>\n* ,</w>\nmy dayin\nmicha ela</w>\nbrune i</w>\nsr ini\nin te</w>\nÄ ±</w>\nde ol</w>\nd fc</w>\nsepar ately</w>\nbun d</w>\nve sts</w>\nto c\nme ck\nrein forced</w>\nconstra ints</w>\ncar roll\nsq ft</w>\nre ver</w>\ncam per\nbird man</w>\nin action</w>\ngener ators</w>\ntriumph ant</w>\npe sts</w>\no vo\ngy pt</w>\nal amo\nsc aled</w>\nsuresh pp\nsd n</w>\nis mo</w>\ngi os</w>\n) @</w>\njustic eleague</w>\nrestaur ant\ngab i</w>\nden gue</w>\nnext gen</w>\nexemp li\nap ex\ninspir ational\ndown side</w>\nkid z</w>\nu pl\net na</w>\nalvar o</w>\nfel dman</w>\nbar net</w>\nm ha</w>\nes ch</w>\nbloo ded</w>\n>>>> >>>>\nkan i</w>\nho fficial</w>\ncasablanc a</w>\nbir ds\nty ga</w>\nsw amp\no day</w>\nnew castle\nnb ap\nci sion</w>\ncho ols</w>\naf lo\nne p</w>\nmon ton</w>\nak b</w>\nsuper model</w>\ndown time</w>\nth os</w>\nsc wx</w>\nsnoo py</w>\nag greg\nyo ke</w>\nnor cal</w>\nwe tt</w>\nprolon ged</w>\nme tast\nbeat er</w>\nf ta</w>\nt lap</w>\ndisgu sted</w>\ny h</w>\nvoice over</w>\nitch y</w>\nip c</w>\nðŁİ ¾\nphe asant</w>\nstra its</w>\nram pant</w>\nj g\nfer til\nassu res</w>\nfortun es</w>\nsal inas</w>\nliz ards</w>\nkett le\ni bs</w>\ncyn thi\nhe g\nmc cr\nsoccer oos</w>\nhappen ings</w>\ncor den</w>\nðŁĺĤ ðŁĳĮ</w>\nt ches</w>\negre t</w>\nwolver ines</w>\ncongratul ated</w>\nho gg</w>\nbott ling</w>\nwr i</w>\nfer ri\nbo sch\naf ire</w>\nog den</w>\ns jo\nj dm</w>\nsv t</w>\ncon tex\ntol lywood</w>\nmin k</w>\nme se</w>\nsuper sonic</w>\nop oulos</w>\nå ¸\nâĶ ģ\nknuck le</w>\ngu ise</w>\ngam i</w>\nchu cky</w>\nz inger</w>\nradi al</w>\ncompla ined</w>\nbo da</w>\nfe tal</w>\ndiscipl ines</w>\ncor ro</w>\nðŁĩ®ðŁĩ ¹\nop ted</w>\nfiltr ation</w>\nad nan</w>\nem cee</w>\nmi stre\ninsom ni\nfer gus</w>\ntra jec\non don\nmed tech</w>\ntanger ine</w>\nmadra s</w>\ngru e\ncab s</w>\nz hu\nsureshpp rabhu</w>\ninsul ated</w>\nday swild</w>\npp m</w>\nband ai</w>\nv day</w>\ns ff</w>\nsqu id\nlo thing</w>\nnot dead</w>\nexpre ssive</w>\ncu ll</w>\nala stair</w>\nx u\nup front</w>\nfish ers</w>\nen es</w>\num d</w>\ndis missal</w>\nsti er</w>\nsel s</w>\nlu st\nre active</w>\nprote ster</w>\neyel ashes</w>\nal im\ngoo de</w>\ngre eng\nda ir</w>\ncom pen\nanush ka\nproto typing</w>\nma pu\nbear ings</w>\nðŁĲ Ł\nfor me</w>\nbsbi botany</w>\ntimo thy\nout skirts</w>\nam bed\nare tha</w>\nwend ell</w>\nstre aks</w>\nni m</w>\nk pk</w>\nsne e\nfit ter</w>\nquo ta</w>\np ate</w>\nwin ning\nðŁį Ń</w>\nsho pping\nma inst\ncul ver</w>\nste vie\nmcfad den</w>\ncounter parts</w>\ngren fell</w>\nfol som</w>\ndor set\ntech crunch</w>\nâ¬ ħï¸ı</w>\ntip tuesday</w>\nus l</w>\ntre x</w>\ngeor gie</w>\nranveer official</w>\nlic ks</w>\nse wn</w>\nk f</w>\n' âĢ¦</w>\njap s</w>\np ate\north op\nfe sta</w>\nstra s</w>\nmon tal\nhammer smith</w>\nfore most</w>\nwido ws</w>\nmad re</w>\nite z</w>\nmito chondri\nlig ans</w>\nz ona</w>\ncari bou</w>\nm ss\nandre i</w>\nweather channel</w>\ngh c</w>\n: ...</w>\nta ft</w>\nawe ather\nal isation</w>\nbru tal\nbliss ful</w>\nnik ola</w>\nmal icious</w>\nq m</w>\nmpg vip</w>\nbro die</w>\nbl itz\napplau d</w>\ndri bb\nv ague</w>\ndog go</w>\ntransl ating</w>\ninterpre ted</w>\nhat ched</w>\nge tyour\nbenefici aries</w>\nspar ring</w>\ncaes ars</w>\naw illiams</w>\nla hat</w>\nbro ke\nti mp\nvirtu es</w>\nrel ying</w>\npie tro</w>\nk tn\nici sts</w>\npab lo\nlou i\na ag\npn pp\ncha st\npul ses</w>\nfini sh\nusair force</w>\ntype writer</w>\nthomp son\ndog s\nut to</w>\nãģ į\nsand al</w>\nnew ly\ndo ge</w>\nz w</w>\nwan kers</w>\nne gr\nmu cha</w>\ndetermin es</w>\nblack fish</w>\nsk unk</w>\nmu ps</w>\ninstru ment\nphy to\ndaysto go</w>\nskin ned</w>\nhai der</w>\ncon ten\nðŁĲ¾ ðŁĲ¾</w>\nwe iler</w>\nundoub tedly</w>\nchair ing</w>\nwall is</w>\nsh ard</w>\nzind abad</w>\nadul t\nabsor ption</w>\npre sto</w>\ndeplo ying</w>\ndrum mond</w>\nbattle front</w>\nseag ulls</w>\nhow dy</w>\njuda ism</w>\ndes de</w>\npart ition</w>\nâľ Ŀ\nno logy</w>\nnational bestfriend\nlesn ar</w>\nfilm fare</w>\nco asts</w>\nchristen sen</w>\nac an\nmb u</w>\nco pped</w>\nru bble</w>\nsw c</w>\nfun nier</w>\nfar ther</w>\nwhere as</w>\nnano technology</w>\nwith stand</w>\npil low\nbow ers</w>\nto pe</w>\nit ly</w>\ncon fit</w>\nma kar\ncomfor ts</w>\nbo sh</w>\ncli pper</w>\nbal la\nsti k</w>\nmil b</w>\nsafe guard</w>\nmusi que</w>\neas port\nya z</w>\npad ded</w>\nbad er</w>\nfore ign\nchop in</w>\narchi ve\no ka\ntran sporting</w>\ntml talk</w>\naj it</w>\nconsequ ence</w>\nsc roo\nff o</w>\ncollabor ated</w>\npug chat</w>\nye mi</w>\njav ed</w>\nau burn\no of</w>\nma w</w>\nsau cer</w>\nmiti gate</w>\ni les</w>\nevangeli st</w>\nter ie</w>\nre cl\nindic tment</w>\ncat a</w>\nbright ness</w>\nmay the</w>\nwhim sical</w>\nun lv</w>\nkey word</w>\ncu min</w>\nmed way</w>\nwest world</w>\ntra w\nim posing</w>\nform ity</w>\ncoul ter</w>\nab z</w>\nny pd\ngrass i</w>\nkel sey\nqld pol</w>\nclock work</w>\nf dr</w>\ndi anne</w>\nâĺ ĳ</w>\nad h</w>\np ann\nbra vely</w>\nae ge\nun lawful</w>\nver di</w>\npocaly pse</w>\nphar o\nkar la</w>\nreson ance</w>\nma stiff</w>\nla dak\nbu u\nma iled</w>\nhi i</w>\ncraw ley</w>\ntor rent</w>\nmach ado</w>\nliby an</w>\neffort lessly</w>\nfal sely</w>\nq vist</w>\nke ef</w>\ncraf thour</w>\ncheri shed</w>\nval kyrie</w>\ns ari\nkal amaz\nbe he\nðŁĮ Ļ\nth im\nro ddy</w>\ncol trane</w>\nbut chers</w>\nach im</w>\nwk end</w>\nawk ward\ncab rera</w>\n:) )))</w>\nfran c</w>\ndecl an</w>\ncon dos</w>\na ja\npandor amusic</w>\nchar ter\nph ill\nmon trose</w>\nhatch back</w>\nhandic app\ngre aves</w>\neucalyp tus</w>\nut most</w>\nt son\nbur ton\nmid wives</w>\nin cur\nðŁĺį #</w>\nmoo d\ncompre ssed</w>\ntom a\nmust ang\nmo g</w>\nas ana</w>\nte stic\nsho tel</w>\nin sol\ncor sair</w>\nnh q</w>\nben ny\nsm ma</w>\nkap ur</w>\nin con\njon as\nener gies</w>\ndon al\nas ad</w>\nse z</w>\nn pa</w>\narchi ved</w>\nstimul ate</w>\ndo p\nhy d</w>\ngri eving</w>\nãĥ Ī\nron a</w>\nwhy te</w>\ntree house</w>\nss ell</w>\nsand ro</w>\nko bo</w>\nther most\nse clu\nhi ya</w>\nge ez</w>\nmam as</w>\nprisc illa</w>\nflav oured</w>\nfas s\nw old</w>\nmaker space</w>\ncospla y\np tv</w>\nhappy valentinesday</w>\nsequo ia</w>\nlove craft</w>\ngu an</w>\nd tm</w>\nci i</w>\nyoko hama</w>\npos thum\nre q</w>\nðŁĶµ âļªï¸ı</w>\ngalat asar\ndol by</w>\nhamp tons</w>\ndisturb ance</w>\nstone henge</w>\nok c\ndisrup ting</w>\nmonth sary</w>\njun gle\nhead lights</w>\ndu stin\nmicro sof\nhappy mothersday</w>\nko ko\ngra zi\nte sto\nna idu</w>\nmal ay</w>\nari al</w>\nru mb\nab oo</w>\nhar man</w>\ntra pe\nspo ils</w>\nje ho\ngo dly</w>\nlock screen</w>\nz un\npi ous</w>\nma gento</w>\nl enders</w>\nprob able</w>\ncorpor al</w>\nm our</w>\naw al\nsu a</w>\ncall me\nton ne</w>\ngo vin\ndevast ation</w>\nx j</w>\ngear box</w>\nwar lock</w>\nper me\nit ate</w>\ngaza underattack</w>\ndu val</w>\nparas ite</w>\nclement e</w>\nle th</w>\ni va</w>\nfro zen\ntho les</w>\nto bin</w>\ncair n</w>\ns ill\nluc kiest</w>\nconver ts</w>\nst ale</w>\npan cra\neuro pale\nwis dom\nsch ur\nì ¶\nverti go</w>\nbi j\nu bc\nnu re\nrighte ousness</w>\nmt c</w>\nfactor y\nver st\nrevers ed</w>\nhur i</w>\nhee chul</w>\nfab er</w>\nar r</w>\nul ous\nven om\nph at</w>\ngreen ery</w>\nbra dy\nÃ ¦\n: ((</w>\nnever giveup</w>\ndi sha</w>\nmo ta</w>\nhealth care\ndun ham</w>\ndex po</w>\nden zel</w>\nbb ins</w>\nf ics</w>\nwh am\nmc g\neli an</w>\nwat a</w>\nstr alia</w>\ntel lu\npe sky</w>\nspin off</w>\nar moured</w>\nre acted</w>\ndo fficial</w>\nte du</w>\nsag ar</w>\nmor ally</w>\nparalle led</w>\nfi os</w>\ndow ner</w>\ndau gh\nre do</w>\nworld cup\ntari q</w>\nbar ne\nglaci ers</w>\noc cult</w>\nbarbar ian</w>\nher mosa</w>\n!! !)</w>\ny ur\ninter nation\np ss</w>\nsit u</w>\np int\namerican air</w>\nsw am</w>\ndopp ler</w>\nðŁĴĻ ðŁĴľ</w>\ncincode mayo</w>\nle van\nhell enic</w>\nmc ne\nju di\nyu h</w>\nst x</w>\nqu are</w>\nðŁĺĤ .</w>\nsti g</w>\ng els</w>\nmot ley</w>\nhard work\neuro zone</w>\ne ad\nç¥ Ń</w>\nseab ir\nci us</w>\nla id\nalpac a</w>\npresu mably</w>\npewdie pie</w>\nboo ted</w>\nam ari\ntam ine</w>\nsol ace</w>\nbar row\nacade mies</w>\nx ian</w>\nom ination</w>\ndun geons</w>\nb ma</w>\nde ity</w>\nai k</w>\nstab il\nhir a</w>\naffection ate</w>\nving ne</w>\nnew port\nãħĭ ãħĭ</w>\nthir ds</w>\nre tains</w>\naroma therapy</w>\nski er</w>\nni ma</w>\ndo pe\ncr inge</w>\ncon domin\nto or\nanim ator</w>\nsar aj\nseas cape</w>\nminim alism</w>\nlake shore</w>\ncalla way</w>\nberg man</w>\nà¤ Ĺ</w>\nwhisp ering</w>\nstupi d\nri ghtful</w>\nrequ is\nir n</w>\nse va</w>\nut pol</w>\ntuber culo\nsqu ish\nde but\ngovern mental</w>\nchrist ine\nall man</w>\nweap on\ns ito</w>\nbur i</w>\nlo lita</w>\nleaf y</w>\nfu ch\ntin ted</w>\nmck en\na hahaha</w>\nðŁĩµðŁĩ ¹</w>\nrepe al\nne gan</w>\nðŁķ Ĭ\ntail gating</w>\ngame insight</w>\nðŁıŁ ï¸ı</w>\nyaku za</w>\nz t</w>\nti ring</w>\npro posing</w>\nbow lers</w>\ntra itors</w>\nak shi</w>\ncler gy</w>\ncit o</w>\nup sets</w>\ntu scal\nsymph onic</w>\nsil ently</w>\nshu ff\nblack well</w>\nðŁĺĤ )</w>\nko be\nrober to\nri dg\ndc u</w>\nmer ino</w>\nft p</w>\neast side</w>\n. ~</w>\nnb l</w>\nmn leg</w>\nts for\nfrau dul\nca pping</w>\nin my\ngymna st</w>\nston es\nss in</w>\ntwe aks</w>\nshag gy</w>\noak land\ndem sin\nsang ria</w>\nmm va</w>\nhen nessy</w>\ndown ton</w>\nri ghtly</w>\nin it</w>\naga ve</w>\nob last</w>\nnorthe ast\nfriend ship\ndal a</w>\ntro phy\nðŁĳ ½\nmag in\nmargar itas</w>\nê ·\nww fc</w>\nfa sh\ndi ke</w>\ncu d\nchar t\nðŁĳ ®\nrefuge es\njop lin</w>\nn cs</w>\nimp y</w>\nfirm ware</w>\npas cu\nflam in\nhealth tech</w>\nbell letstalk</w>\nw aka</w>\nol ls</w>\nla go\nco wan</w>\nbombar dier</w>\nsh ome</w>\nðŁĻ ħ\nmc master</w>\nna ve\nwell s\nu ta\ntell ers</w>\nmis fits</w>\nkap il</w>\nface off</w>\naf firm\na pro\nwhit epaper</w>\nsuper yacht</w>\nspeci mens</w>\nal located</w>\n... ,</w>\n- __\nka w</w>\ndachsh und</w>\ndjo ker\ns work</w>\nqui ere</w>\nor um</w>\nðŁĲ ł</w>\nsom m\nc mt</w>\ningh our</w>\nskin ny\nlgb ti</w>\ngi ggles</w>\nbreak away</w>\nresear ched</w>\npar ity</w>\nmy al\nms l</w>\nre tained</w>\nsi vity</w>\nmake inindia</w>\nsol ves</w>\ndefam ation</w>\nwal tham\nsri racha</w>\nroad way</w>\nconcep tu\nal in\niw ant\nå Ī\ndel ft</w>\ntender loin</w>\nga ins\nfaul ts</w>\nsw ire</w>\nst ellen\npol lo</w>\ndy ne</w>\nbornon thisday</w>\nasdf ghj\nsq l\nsali m</w>\nadvis es</w>\nvo ip</w>\nìĹĳ ìĨ\nun touched</w>\nshe il\nontari o\nuph ill</w>\nso bre</w>\nde shi</w>\nnov ella</w>\ndu tton</w>\ncraw fish</w>\nØ§Ù Ĩ\nma a\ntw ine</w>\nkal in\nðŁĩµðŁĩ Ń</w>\nye ss\nbrook s\nhoo siers</w>\nton ka</w>\numbrel las</w>\nay ers</w>\nate am</w>\nacqu iring</w>\nsu ction</w>\nÃ¤ n\nwi es\ntari ans</w>\nsoci o</w>\nmat tb\nshepher ds</w>\no so\ncharity tuesday</w>\ns logans</w>\nninj as</w>\nal bat\nby te</w>\nbash ir</w>\ntrampol ine</w>\nmydayin la</w>\ni ja</w>\nbas el\nror y\ngol die</w>\nfi rec\nun noticed</w>\npecu liar</w>\nsch a\nker son</w>\nmour ns</w>\nliquid ity</w>\nqu ipment</w>\nhi bs</w>\nar s\naeron au\nslide show</w>\nsla bs</w>\ndelici ousness</w>\nsk itchen</w>\nhta fc</w>\nfull erton</w>\ncre ighton</w>\naer ob\nprocrastin ation</w>\naz ores</w>\nwhite hall</w>\nuss occer</w>\nmedi ation</w>\ndjoker nole</w>\nand me</w>\num en</w>\nnoxi ous</w>\njo ss</w>\nili fe</w>\nanni vers\nsudan ese</w>\net res</w>\nunder mine</w>\nwhole foods</w>\ndiso be\nkor i</w>\nade le\neli z\ncan ti\nal on</w>\ngymna sium</w>\nsarko die</w>\nmeteoro logist</w>\nyl de</w>\nste en\nstamp collecting</w>\nnas al</w>\nlo tt</w>\nfran ks</w>\nex ol</w>\nack i</w>\ngood year</w>\nanimal rights</w>\ny les</w>\nvio lets</w>\nmm es</w>\ns thel\nra pping</w>\ntu scan</w>\nwai ver</w>\ntur ner\neat local</w>\nnorthe asthour</w>\nanim ations</w>\ntom morow</w>\nt sh\nff ame</w>\nbra e\npe tron\nglam our\nbr yn</w>\nd cs</w>\nbal es</w>\nðŁĶ ¶\nbro v\nbre v</w>\nb ons</w>\nphysi que</w>\ncar ne</w>\nx e\nelix ir</w>\nvol ved</w>\nl oma</w>\nìľ ł\næ ĺ\nvan u\nri gs</w>\nbal ance\nva res</w>\nbon ita</w>\nsprink le</w>\nperfec to</w>\ndi on\nle ak\ncalcu tta</w>\no ba\nd ma</w>\nc mon</w>\ntun er</w>\npneu monia</w>\nbo gus</w>\napolo ge\ncl ough</w>\nbor ne\n)) ))\nrevi ved</w>\no varian</w>\nner f</w>\nc legg</w>\nfan fest</w>\ncho u</w>\nreali zes</w>\nmc n\nli gu\nleg alize</w>\njust saying</w>\nfor ster</w>\nbo sni\nk hi</w>\nin dom\nhei del\nen cryp\nsi ss\ned di\nmar bles</w>\nbrisban e\ny ing\npre paid</w>\nwal sall</w>\ncooper ate</w>\norche str\nmar isa</w>\nho wie</w>\nche wy</w>\nbren ner</w>\nandro meda</w>\ne gan</w>\nsto cki\ncav endish</w>\nag an\nban o</w>\nde ir\ngo g</w>\nbl k\nre thinking</w>\nch ig\nrhe u\nsni p</w>\np eng\nsemin ole</w>\nm swx</w>\nan nex\nlyn da</w>\nlewisham ilton</w>\ncu mul\ntb l</w>\ndolph in\nagu ero</w>\n........ ....</w>\npre lude</w>\nat our</w>\ngr anger</w>\ntoo ting</w>\nro tun\ndis ar\nhome items</w>\nda res</w>\n**** ****\nðŁĳ Ĩ\ncompre h\njin x</w>\nas well</w>\niri e</w>\ncircul ating</w>\nðŁĲ ¥</w>\nover board</w>\ncultiv ate</w>\nrhe tt</w>\noriente ering</w>\nca k</w>\nbal kans</w>\ns itt\njas min\nbritney spears</w>\nro tor</w>\nse aling</w>\ng bc</w>\noc ci\nf as</w>\neman cip\ncom er\nwar time</w>\ntic kle</w>\nson ny\npac es</w>\nlog g</w>\nat rix</w>\nsr p</w>\ng win\ndo bbs</w>\nuz be\nthe wanted</w>\ndru sh</w>\nex tru\nm icky</w>\nhonore es</w>\ndar win\nre dux</w>\nmm j</w>\nram i</w>\njalape Ã±o</w>\nio c</w>\ndo ver\nju ju</w>\nwhit ney\ns eng\nen ly</w>\nau ch</w>\narchipel ago</w>\nvigil ant</w>\nman gal\nwil dest</w>\nparano id</w>\nhal i</w>\nbb ly</w>\nsanc tioned</w>\nreal ms</w>\ncon co\nu ddin</w>\nc sk</w>\nplay time</w>\nlibr a</w>\nsav ag\noc tane</w>\nrec tan\nre turn\npar rish</w>\nmor rha\ncc p</w>\nc mu</w>\nsa iled</w>\nse vent\nro sie\npil ing</w>\nhe w</w>\nboar ded</w>\nseg ments</w>\nneph ro\n( .</w>\ncr ats</w>\nbak es</w>\nðŁį ¸\nback tothe\nsibl ing\nkirk land</w>\nke o\ngu wa\nbre ads</w>\nðŁĺľ ðŁĺľ</w>\nt q</w>\nharas sed</w>\nga u</w>\nwil bur</w>\nj isoo</w>\nep er</w>\nli sam\ntri ppin</w>\nsh ino\nru kh\nbeast mode</w>\ncho a</w>\ninst aweather\nrich land</w>\ngar i</w>\nfe z</w>\ncowboy snation</w>\nfur suit</w>\nk run\na en\nsycam ore</w>\nse gun\nent ennial</w>\ndi h</w>\no ax\ndemsin philly</w>\nðŁĻ Ģ</w>\nsn hl</w>\npen nies</w>\npass words</w>\nma kin\nty e</w>\nd eng\nkni gh\njeep life</w>\nhel pline</w>\na for\nzz zz</w>\nste amy</w>\npic ker</w>\niter ate</w>\nhappen ingnow</w>\nki b\nbloom berg\nmartyr dom</w>\nbul ly\nassor tment</w>\na hora</w>\nzo e\nno i\nillu stri\nagar wal</w>\np sc</w>\nelectr onica</w>\nrecruit er</w>\ngar diner</w>\nrad ha</w>\nnaf ta</w>\ndot net</w>\npi ero</w>\ngeor g</w>\nbel s</w>\nðŁĺĤ ðŁĺį</w>\ntuberculo sis</w>\nrun nin</w>\nmor is\nhaul ing</w>\nev oc\nbre thren</w>\nsha ir</w>\nframe works</w>\na stu\nri gid</w>\nku ma\nkre me</w>\njin nah</w>\ninsu rers</w>\nny u\nf ere</w>\nnol lywood</w>\ngood vibes</w>\n- ...</w>\ntoi le\nsk ril\ninstaweather pro</w>\ncze ch\npa vel</w>\none piece</w>\nnike plus</w>\nfi let</w>\ncav ity</w>\nðŁı½ âĢįâĻĤï¸ı</w>\nðŁİ £</w>\ndra stic</w>\ndail ys\nsiam ese</w>\nre bu\noste o\nlar k\nf re</w>\nsh elling</w>\np Ã©\nglad ys</w>\nðŁıĢ ðŁıĢ\ngusta ve</w>\nsubmer ged</w>\ngrand stand</w>\natt u</w>\nwon t\nf pv</w>\nb ley</w>\njon i</w>\nang ames</w>\nweigh ted</w>\nal ou\nà¤ ¶</w>\nles bians</w>\nf j\nanni es</w>\nam l</w>\ndor ia</w>\ndav in\nbe ta\ncan c\nmadewith unity</w>\nha j</w>\nbad lands</w>\nmu l</w>\nblu ec\npa wn</w>\ncov ington</w>\nneuro logy</w>\nhtt weets</w>\ndysle xia</w>\nthel ove</w>\nne at\nfork lift</w>\nautom ate</w>\nune ven</w>\nmonte ss\nhe in</w>\nha g</w>\nrel ics</w>\ncompetiti veness</w>\ncan elo</w>\nmar tens</w>\nbullet proof</w>\nsk ittles</w>\ng ya</w>\npri mo</w>\nameric afirst</w>\nwoo o</w>\nabor tions</w>\n?? !!</w>\nma che\nld ers</w>\nrl ly</w>\npreli ms</w>\ndirec t\ncour se\nswa in</w>\nsuper cell</w>\nec centric</w>\nsting ray</w>\nple ts</w>\nwil cox</w>\nwest in</w>\nokan agan</w>\nkir an\ncar bo\nbomb ings</w>\nra rest</w>\nbo h\ngaw d</w>\ndi gg\nmo ana</w>\nenti rety</w>\nen closed</w>\ndodge ball</w>\npar ton</w>\nmilky way</w>\nat r</w>\nthorough bred</w>\nre ally\nqant as</w>\nepiph any</w>\nine e\naero smith</w>\nspi eth</w>\nar thro\nell ini</w>\ndu bu\nbra ving</w>\nâļ½ âļ½\nre structuring</w>\nillumin ate</w>\nequ ili\nmp i</w>\nash ton\npony tail</w>\nma scots</w>\nflat tering</w>\ncru m\nast a</w>\nà® °</w>\nstranger things</w>\nbar nab\nØ± ÙĬ\nmake shift</w>\ngot cha</w>\nwill am\ncho irs</w>\nkilom etres</w>\ngho sh</w>\neu than\ndol ly\nun ning</w>\nthe ar\ncre we</w>\nw sw</w>\nj ace</w>\ndis miss</w>\nke an\nho ta</w>\nkh at\n~ ></w>\nthir u\nren dez\nhart man</w>\ntee ssi\ncas ca\nz ah</w>\nhydr ange\nfo d</w>\naw p</w>\nmzan si</w>\nthick er</w>\nnago ya</w>\nne va</w>\nsti que</w>\ncast el\ndam ian\nthere by</w>\nji ang\nale k</w>\nmusic islife</w>\nra q</w>\ncalla han</w>\ngou ache</w>\nsomal iland</w>\nsean hannity</w>\nra heem</w>\nlo se\nelo ve\nwhar ton</w>\nrectan gular</w>\nillustr ating</w>\nhar ne\nauti sma\nscra pped</w>\nell and</w>\ndecre e</w>\nnag pur</w>\nki pp\nso re\nn md</w>\nma as\ngun a</w>\ngart ner\nbel li\nthen ight</w>\nje on</w>\ngendere quality</w>\ngi ver</w>\na el</w>\ngar ments</w>\nne u</w>\nmardi gras</w>\nmar sden</w>\nro wer</w>\npollu ted</w>\ncamer aman</w>\nvin od</w>\nbe asley</w>\ncro c</w>\nji u\nhollyo aks</w>\nanesthe sia</w>\nal les</w>\nste ward</w>\nlati mes</w>\nðŁĩºðŁĩ¸ðŁĩºðŁĩ¸ ðŁĩºðŁĩ¸</w>\ntic ian</w>\ngor ia</w>\ncome dic</w>\nðŁ¤Ķ ðŁ¤ĶðŁ¤Ķ</w>\nnai ve</w>\nsli ons</w>\nł Ī\nbur glar</w>\nðŁĺŃðŁĺŃ ðŁĺŃðŁĺŃðŁĺŃ</w>\nyork shi\nse Ã±\nfan boy</w>\nlau rel\ninci dence</w>\npotom ac</w>\nrober ta</w>\npresi den\npr yor</w>\nos bourne</w>\nw ku</w>\nte me\npal ae\nðŁ¥ º\nre boun\nitu de\nred dish</w>\nk hand\ncoloni alism</w>\nnorth carolina</w>\nðĿ Ĵ\nmanne quin</w>\nlady bird</w>\nta sty\nknowledge able</w>\ng shore</w>\nðŁĮ Į</w>\nà® ©</w>\nqu aker</w>\nsalz burg</w>\nmed alists</w>\nchy na</w>\nbridesma id</w>\nma ori</w>\nro p</w>\noutra ged</w>\nin adequate</w>\ntruck ers</w>\nal ana</w>\nìĿ ¼\nri x\noooo oooo</w>\ncommand ments</w>\nlam beth</w>\naa j</w>\neco friendly</w>\nbla z\nmorecam be</w>\nboun cy</w>\nrou x</w>\nrai ded</w>\nmi zed</w>\nsh c</w>\ngaw x</w>\nlabor atories</w>\nru bs</w>\nrest room</w>\nconsult ations</w>\nca jun\nvirgin i\nso ir</w>\nrev ue</w>\nple in</w>\nwag er</w>\nç ¹\nwe do</w>\ngrowing up\n! ðŁĺĬ</w>\nface ted</w>\nsin ners</w>\nho vering</w>\nti ene</w>\nseas oning</w>\nan ja</w>\nleg go</w>\nil is</w>\nfla x</w>\ndev o</w>\nash ram</w>\nmati sse</w>\nker i</w>\ngo wer</w>\nbo tox</w>\nmar shes</w>\nunh cr</w>\nts m</w>\nopti mus</w>\ndun i</w>\nstu ffs</w>\nso k</w>\norder ly</w>\nn bad\nislam ophobia</w>\nraviol i</w>\nfab er\ncre ds</w>\nwon ka</w>\nin fusion</w>\nover weight</w>\ndaily news</w>\nassi mil\nacol lege</w>\nmedalli on</w>\nkili manjaro</w>\nsti ff\ntham es\nsun ken</w>\nth ard</w>\nmy dubai</w>\nhilari ously</w>\nhan nel</w>\nplu mber</w>\nfair view</w>\nsepar ating</w>\nrasc al</w>\nqui en</w>\nnecess ities</w>\nconfeder ation</w>\nll ll</w>\n: ]</w>\nweak nesses</w>\nbron co\nra ffles</w>\nel ot</w>\nãĤ¸ ãĥ\nadvent calendar</w>\nðŁİ ¹</w>\nstra vel</w>\ntun ic</w>\nk su</w>\nim peach</w>\ne spionage</w>\n! -</w>\ndi ment</w>\ncur rant</w>\nbio de\ncommu ting</w>\nby ron\nðŁĴĵ ðŁĴĵ</w>\nshad ed</w>\ntr uro</w>\ncray ons</w>\nar ne</w>\nh sc</w>\nfre aked</w>\ndram ati\nfle ek</w>\nu cd</w>\nmarl borough</w>\n^ -\ncross ings</w>\nmal o</w>\nblack ops</w>\nbin ance</w>\ncho ked</w>\nchen ey</w>\npl o</w>\nge stures</w>\nval edic\nryan air</w>\nrem ington</w>\nv cs</w>\nmc kee</w>\nec z\nbe gs</w>\nnail art</w>\nmayor of\nhappy fathersday</w>\nwar t\npet itions</w>\nn ingly</w>\nclean energy</w>\nbro x</w>\nsl alom</w>\nexist ent</w>\nab ay</w>\nug liest</w>\ntom p\nstom a</w>\nsel by</w>\ngoal scorer</w>\nben ji</w>\noverwhel mingly</w>\nlan s\nsemiconduc tor</w>\nsouth korea</w>\nre scheduled</w>\nsk yl\nen listed</w>\ndow ski</w>\nsi del\nrosen berg</w>\nnas ser</w>\nwhite head</w>\npri us</w>\nhar are</w>\nen n</w>\nry der\ní Ĥ\nmon g</w>\nclas ico</w>\ntranspor ter</w>\npo tty</w>\nis me</w>\n** ***</w>\nvic e\nsk it</w>\node ssa</w>\nl mp</w>\nher n</w>\nraci ally</w>\npin oy\nparagu ay</w>\nobitu ary</w>\ngo es\nbu cha</w>\nside walks</w>\nangu lar\nun constitutional</w>\ntransiti oning</w>\ni bu\ngu ys\nun packing</w>\noooo oo\nblack girl\nber gs</w>\nÂ ¯</w>\nwordof theday</w>\ntrump train</w>\nthunder bolt</w>\nm si\nfasci sts</w>\nà¤ ¬</w>\nt sk</w>\ncollap ses</w>\nraje sh</w>\nloveis love</w>\nmigr ating</w>\nset back</w>\nðŁĺĬ âĿ¤ï¸ı</w>\nt els</w>\nsafety first</w>\nnar rated</w>\njae joong</w>\nun answered</w>\nlique ur</w>\nen nes</w>\ndal go</w>\nbill ings</w>\nsalt water</w>\nmer maids</w>\nlon gs</w>\nclap ham</w>\nwe arec\npic collage</w>\nn ach</w>\nh ace</w>\npois oned</w>\nlo th</w>\nag na</w>\nadel rey</w>\nguar dia</w>\npoli shing</w>\npeace keeping</w>\nd all</w>\np isa</w>\nla pland</w>\nprocess ors</w>\nde andre</w>\nso bs</w>\np once</w>\ndra ins</w>\nc be</w>\nðŁİ¥ :</w>\nspla sh\nmeat ball</w>\nfon tana</w>\nworcester shirehour</w>\nne v</w>\nbri sk</w>\nb int\nac r</w>\npo x</w>\ncay enne</w>\nskril lex</w>\nj fc</w>\nhahahaha hahaha</w>\ngla s</w>\nen gul\ntempor al</w>\noni zed</w>\ncon cre\ncom pose</w>\nvibr ations</w>\nplant ers</w>\nfer t</w>\ncriticalrole fanart</w>\nt bli\nsch allenge</w>\nhuck abee</w>\nmunici pal\niam bic\nradi os</w>\nne vis</w>\ndura bility</w>\nmc cla\nhorse back</w>\ninst itutes</w>\nful fill\natta ch\nate ur</w>\nak an\nresi sting</w>\nillumin ation</w>\nhand le\nhair care</w>\nom ent</w>\nmacle od</w>\nka iser\ng no</w>\nbear down</w>\nly f</w>\ngl omer\ndistor tion</w>\nz m</w>\nsan k</w>\nroo sters</w>\nis now</w>\nas ports</w>\nag en</w>\nwo ken</w>\nst george\nro mper</w>\nmy le\neconom ists</w>\nru to</w>\nt will</w>\nhealth and\nd ito</w>\nws l</w>\ntair p</w>\npra kash\nmic heal</w>\nh ts</w>\nw rights</w>\nkat su</w>\nfioren tina</w>\ndefen seman</w>\nd itch\nvar sity\ntexan scheer</w>\nba ham\nsc anned</w>\nwe il</w>\nseduc tive</w>\nðŁĳį ðŁı½</w>\nfu e</w>\ner win</w>\ndav ison</w>\nter ran\nmoo ds</w>\nwool f</w>\nre source\n@ .</w>\ncu sh\nðŁį °\nregre ssion</w>\ncur led</w>\nla zer</w>\njo anne\nab bott\nmo z</w>\ndown ers</w>\nmm mmmm</w>\nvalent ina</w>\nk hair\ndream t</w>\ncro ok</w>\nche k</w>\nste aming</w>\nnephe ws</w>\ncl eric</w>\nas ober\nindefin itely</w>\nw ye</w>\nus news</w>\njoy ce\nflu shing</w>\nwynonna earp</w>\nron do</w>\nkis s\nhot dog</w>\nbar ns</w>\nsax ophon\nfar ley</w>\ngas p</w>\ndecre asing</w>\nal way</w>\npe x</w>\nl sd</w>\nshi ft\np outine</w>\nra zz\nrescu ing</w>\nni ko</w>\nho ch\ncc l</w>\nu aap</w>\nn ts</w>\nm car\nil wx</w>\nconqu ering</w>\nket tering</w>\nstur dy</w>\ndelay ing</w>\nsto k</w>\nvani shed</w>\ncath ar\nbin gham\nin v</w>\nic hiro</w>\nhe mo\nbudge ting</w>\n[... ]</w>\nbe ss</w>\nsebasti an\nslow ed</w>\nðĿ ĳ\nmusli m\nstun s</w>\nacton climate</w>\nve a</w>\nse ton</w>\nrose tta</w>\noun t\nhard in</w>\nflu id\nca w</w>\nðŁ¥ Ĥ\nyach t\nun l</w>\nsp hy\nprovoc ative</w>\nor ic</w>\nis back</w>\n__ _\nnicol as\ngy an</w>\nloo se\nfl in</w>\nreb ate</w>\n: ::</w>\n! \"@</w>\ncom icon</w>\nshe ff</w>\ndown stream</w>\nchic hester</w>\nbeach life</w>\nmom life</w>\ndiabe te\nar ra</w>\nvan e</w>\nok u</w>\nye o</w>\nman go\ntry out</w>\napp ell\nhe irs</w>\narjun a</w>\ndd u</w>\nna veen</w>\nmovi c</w>\nsoci alists</w>\ns back</w>\ncriteri on</w>\nsoyu z</w>\nk her</w>\nda z</w>\nyol anda</w>\nwine oclock</w>\nre ina</w>\none w</w>\nleon ard\nen dez</w>\nu bs</w>\nsupport local</w>\nfacilit ated</w>\ncarameli zed</w>\nb pa</w>\nvuel ta</w>\nmy tho\nm ami</w>\nspe are</w>\nnbap layoffs</w>\nfe vre</w>\nnick jonas</w>\nim print</w>\nc so</w>\ncraig slist</w>\nla salle</w>\ngi deon</w>\nha doop</w>\ndis regard</w>\nw ud</w>\ntu c</w>\nma gee</w>\nacou stics</w>\nta a</w>\nqui e\npol a</w>\ncr t</w>\ndw yer</w>\ndis sec\ncapit ol\nmen tion\nkn oll</w>\nhe igh\nfin ders</w>\nplac ements</w>\nl se</w>\nindi ra</w>\ngur i</w>\nmadhuri dixit</w>\nkingdom s</w>\niambic pent</w>\ngeor gina</w>\nje ky\nconflic ting</w>\nbay an</w>\naga tha</w>\nuph old</w>\ndr on\nvic ar</w>\nex pat</w>\nperiph eral</w>\npe ssi\nfa f</w>\nance stor</w>\n? ..</w>\nwid get</w>\npun c\ncomm enced</w>\nbeav s</w>\nair waves</w>\nad dis</w>\npo a</w>\nde sses</w>\nco den\nvu e\nru pee</w>\nkar in</w>\nspo ck</w>\nm sy</w>\nà¸ °\npr ick\nfill more</w>\nti fication</w>\nthing sto\nsar de\nem ile</w>\npere ira</w>\nn ad</w>\nbright ening</w>\narre sting</w>\nwo king</w>\nusc g</w>\nsp ill\nraspberry pi</w>\nhu go\nite c</w>\nis ma\ncuff links</w>\noptimi zed</w>\noc c</w>\nmi wx</w>\nen ka</w>\nel ited\nafford able\nsa kh</w>\ncoron ado</w>\nho h</w>\nat ul</w>\nai oli</w>\njim cantore</w>\naccoun ted</w>\nvin ay\nher mit</w>\ngroo ves</w>\nran ch\nr illa\nwe tter</w>\nou tof\nveter in\nni kov</w>\nki an\nfair banks</w>\nram apho\nn iti\nk ko</w>\nru sty\nne stle</w>\ntv xq</w>\nshahe er</w>\nâĿ¤âĿ¤ âĿ¤âĿ¤</w>\npenn ant</w>\ngem stones</w>\ndem debate</w>\nðŁĲ Ĭ</w>\nauton ews</w>\nsupport indiefilm</w>\nmach o</w>\nve x</w>\nnew sat</w>\nne ti\nconce ssions</w>\ncan died</w>\nyof the\nmac au\nden ds</w>\ncricke ters</w>\nsan iti\nmari ano</w>\ngh at</w>\nar toftheday</w>\n¡ ľ\ne gos</w>\ngen oa</w>\nchat bots</w>\nbri er</w>\nal labout\nmon ty\nspi ed</w>\nr tr</w>\ncomfor t\nsni ppets</w>\nreal time\ngra in\nexam ined</w>\nen lightening</w>\ntt u</w>\ngod bless</w>\nrelease the\nsing ular</w>\nki ans</w>\nha ka</w>\nsor ren\ndefe ct</w>\nmar g</w>\nequ ities</w>\nd orian</w>\nsu ka</w>\nper l\naishwar ya</w>\npul lover</w>\npreci sion\nfair way</w>\nne ve</w>\nrive ting</w>\nvill anova</w>\nen com\nak o\npassion ately</w>\neuropale ague</w>\nsiem pre</w>\nx vi</w>\nenligh tened</w>\nc fr</w>\nâĺħâĺħ âĺħâĺħ</w>\nwast eland</w>\nis f</w>\nnew comers</w>\nemergen cy\namphi theatre</w>\n- .</w>\ntext books</w>\nfigur ative</w>\ntre mb\npe sc\nab hin\nab bot</w>\nac acia</w>\nhar ds</w>\npor sche\nkau ai</w>\nel isa</w>\ncar rick</w>\nabo u</w>\nelli er</w>\nbe ch\nneu tron</w>\ngalap agos</w>\nru ben\nin nis\nhow to</w>\nnun s</w>\nsab ine</w>\ni ac</w>\nclin ched</w>\nno tori\nfi ves</w>\ncairn gor\nper i</w>\ngr c</w>\nðŁĴ¯ ðŁĴ¯</w>\nmal m\ntwelf th</w>\ndi ff\nrout ines</w>\nmarty n</w>\nlin den\nsynthesi zer</w>\nnu mber\ngame cube</w>\nfal kirk</w>\nbyz antine</w>\nqueu ing</w>\ngr ill\nscal able</w>\nchar red</w>\nrou ting</w>\nher bali\ngri zz</w>\nðŁĺŃðŁĺŃ ðŁĺŃ\ntol l\ntermin als</w>\nl pc</w>\nab d</w>\nwar mups</w>\nremo vable</w>\nÂ¯ \\\nvi go</w>\npap aya</w>\nne ve\nlov ingly</w>\njo kers</w>\nib les</w>\nsse tt</w>\npoten ti\npel e</w>\ngi gi\nsadi q</w>\nleg acy\nson o</w>\nru pees</w>\nretar ded</w>\nele e</w>\npar r</w>\nfi ance</w>\ney re</w>\nsay ers</w>\npend ants</w>\nmak nae</w>\nal bans</w>\nadap ting</w>\np ff</w>\npu berty</w>\nji u</w>\ning rad</w>\nhypocr ite</w>\ndiplom ats</w>\nphys ical\nrob by</w>\nbon sai</w>\nãģ ·\nf att\ncatal unya</w>\nâľ ĸï¸ı</w>\nro ma\nmore land</w>\nso e\nconver sions</w>\nstl blues</w>\nshol m</w>\ngra ssy</w>\npra do</w>\non u\nassaul ting</w>\n> _\nsett es</w>\ndis graceful</w>\naph ra\nâļ½ï¸ı âļ½ï¸ı</w>\nà¤ ª</w>\nkil n</w>\ngoal tender</w>\ns ru\nphilanthro pist</w>\nb als</w>\nth n\nstu den\nsando val</w>\ndogre scue</w>\neli ons</w>\nasse ssed</w>\nlar go</w>\nhec tares</w>\nsh rm</w>\nsa if</w>\ncle avage</w>\nno ches</w>\nn ene</w>\nfat alities</w>\ncur ing</w>\nclean ser</w>\nal es\np vp</w>\nsouth bank</w>\npizz eria</w>\nmarsh als</w>\nkni fe\nan dover</w>\ntbli ghtning</w>\nsr sly</w>\nou te</w>\ndigi mon</w>\ntimesof india</w>\nprome the\nle bo\nf su\nwit z\nrever e</w>\nman as\nmam ba</w>\nch ica</w>\ngu an\nexhibit or</w>\ncsr racing</w>\nd ere</w>\nxx xxx</w>\ngu sta</w>\nstory time</w>\nston ey</w>\norgan ics</w>\nand u\nse am</w>\nmin ogue</w>\nanushka sharma</w>\nab a\nðŁİĻ ï¸ı</w>\nugand an</w>\nchro matic</w>\nas sn</w>\ndocument aries</w>\nsh t</w>\nru paul</w>\nloy d</w>\nk ats</w>\ne us</w>\nite ch\nme dusa</w>\npan ty\nkel logg</w>\net to</w>\ntalla de\nsha a</w>\ndo st</w>\np ms</w>\nmari ana</w>\nje ster</w>\ncroo ks</w>\nðŁĶ ¬</w>\nmin danao</w>\nind hoven</w>\nðŁ¤ ª\nle xi\ntv n</w>\njan is</w>\nco te\nãģ Ĩ\nser rano</w>\niw m</w>\nðŁĲ ¬</w>\nk ke</w>\ndistribu tors</w>\ncap u\ncounterfe it</w>\ncamp site</w>\nag gie\nðŁĺ ¼</w>\nchhat tisgarh</w>\n~ @</w>\nstate u</w>\nsan di\nprevent able</w>\ncl s</w>\ncan ne\nmm c</w>\ni ver</w>\nsa haran</w>\npal is\nnight out</w>\ndo s\nap ia</w>\nabsc bn\nmanag erial</w>\naro se</w>\nmo wx</w>\naro sa</w>\nðŁĮ ³\nunder dog</w>\nremo ver</w>\nastronom ers</w>\nlent ils</w>\nsu scep\nsmoo ther</w>\npend leton</w>\nfau cet</w>\ne mory</w>\ndal mati\naf cb</w>\ntic us</w>\nexem pt</w>\nen rol\nd heim</w>\nðŁĲ º\nrestric tion</w>\nstar fish</w>\nsto w\nsnor kel\nthunder birds</w>\nshe ad\nhomo sexual</w>\ndy n\nas li</w>\nandre tti</w>\ndou che</w>\ndom o</w>\ntar mac</w>\nslu mber</w>\npr onto</w>\nfirst dayof\nmini ature\nmari achi</w>\nargu s</w>\nrecomm ending</w>\nmobi les</w>\nin ce</w>\nillustri ous</w>\nor c</w>\nadver ts</w>\ngr its</w>\nwea sel</w>\npag oda</w>\nover pass</w>\ngre ys</w>\nmaxi mus</w>\narma gh</w>\nwood land\nsun ni</w>\nðŁĴ ī\në Ŀ\nti one\nsoci o\nho s\nðŁ¤Ĺ ðŁ¤Ĺ</w>\nwind sor\nsubsequ ent</w>\nmunch ies</w>\nid h</w>\nexclu ding</w>\ne mi\ncu th\nz ai\nweek days</w>\nlaw suits</w>\nbarn ard</w>\nØ ª</w>\npe tting</w>\nnet es</w>\nmul ligan</w>\npharmac ists</w>\nra quel</w>\ne ton</w>\ncran ston</w>\ngil ded</w>\ncle ary</w>\nce ph\nra a</w>\npam per</w>\nlombar di</w>\nas in</w>\nsher ry\npro d\nfor te\nari anism</w>\nbuffalob ills</w>\næľ ¬\nðŁĶ¥ #</w>\nuu u\njust ices</w>\ncar ina</w>\nnat in</w>\nmas low</w>\ndro oling</w>\ncog nac</w>\ncam ber\nel ong\nr dr</w>\nin en</w>\nconvic tions</w>\nam use</w>\ntro ck</w>\nharm less</w>\nvisit ation</w>\ngen omic</w>\nbl and\nbeno it</w>\nchim p</w>\ntuscal oosa</w>\ngre asy</w>\nx po</w>\ngil t</w>\nse q</w>\nper mitted</w>\nchristma seve</w>\nbook s\nmu e\nold school\nhuman right\nbe ati\nðŁĶ Ŀ\nsh at</w>\nsculp ting</w>\nh wan</w>\nfern andes</w>\nsci utto</w>\nfu entes</w>\nendeav ors</w>\nmaid stone</w>\nun paralleled</w>\nshou ted</w>\nqueen of\nmer c</w>\nband ic\nve da</w>\nsel angor</w>\npi le\nja han\nintimid ating</w>\ndisapp ears</w>\ncl ich\nza ha</w>\nw urst</w>\nhi v\nfod ils</w>\ncor dless</w>\naaaa aa</w>\nhy dra\nbel inda</w>\ne els</w>\nbu f\nsu staining</w>\nrugby league</w>\nno c</w>\nbrig itte</w>\n( ðŁĵ¸:</w>\ntromb one</w>\nsoo the</w>\nsmo g</w>\nad p</w>\nstab le\ning ley</w>\ndiagno se</w>\nms g\nwe ss</w>\ntic keting</w>\none e</w>\nnsw pol</w>\ne up\nauto psy</w>\nadity anath</w>\nsun down</w>\nriver front</w>\nsi ya</w>\np is</w>\nhier archy</w>\ndur ango</w>\ndi jk</w>\nren shaw</w>\nhe aps</w>\nepide mi\ndavid bowie</w>\ninterne tof\ndd i</w>\nnation ality</w>\nmb ar\nair y</w>\nwin der\nw alia</w>\nelli ott\nc x\nbav arian</w>\npl att\nan tw\nwi wx</w>\nsof ter</w>\nne ha</w>\nh eller</w>\nth and\ndani ela</w>\nbo ast</w>\ndegra dation</w>\nðŁĴ¦ ðŁĴ¦</w>\ntransform ing\nman e\nav ut</w>\nðŁĺĪ ðŁĺĪ</w>\nvo ter\nthe e\nt ate\npu ff\nin door\nsop roud</w>\nboy ce</w>\nboris johnson</w>\nwait in</w>\nimmun ology</w>\nðŁıĨðŁıĨ ðŁıĨ</w>\nâĿ Į\nstreet food</w>\nliz asober\ncavali er</w>\nc elia</w>\nneed le\nmotor ing</w>\ng ato</w>\n, )</w>\nra de\nharve st\nt ms</w>\njar pad</w>\non ey\nair men</w>\nv re\nimpair ment</w>\nabhi shek</w>\nsnoo p\nl ant</w>\nfam ously</w>\nbl ou\ns ze\ng ander</w>\nun touch\ntu f\ndee jay</w>\ncol lateral</w>\nb ind</w>\nðŁļ ©</w>\npin ning</w>\nic n</w>\n' ;</w>\nthe economist</w>\nul tram\nworldwater day</w>\nti poff</w>\nthe i\nfeed ers</w>\ncampa ign\nsc umb\nday weekend</w>\nyo m</w>\npe dic</w>\nh ough</w>\nps v</w>\npl in\non de</w>\nboston marathon</w>\naz zy</w>\n* _*</w>\ncon ley</w>\nthi ago</w>\nhoo o</w>\ngal erie</w>\nluci d</w>\nje tt</w>\ngl itz</w>\nfinal fantasy</w>\nachiev ers</w>\ny ung\nperegr ine</w>\nop hi\ndam es</w>\nbiom ar\nâĺĢï¸ı âĺĢï¸ı\nsk c</w>\nl ics</w>\nfl ank</w>\nar rahman</w>\nho of</w>\nuphol stery</w>\nt ats</w>\nwo z\nÂ ¿\nsnor ing</w>\nra er</w>\nl ju\nap d</w>\npl ating</w>\nkan u</w>\nim ation</w>\nfragr ances</w>\nm ra\nmor ay</w>\nmo tt\nim muni\nhearti es</w>\nbho pal</w>\ntim ers</w>\ng ata</w>\ncolor way</w>\ncar nation</w>\nwin get</w>\nsi ghs</w>\ns ville\noptimi st</w>\nchate au\nolympi ans</w>\nci o\nsinger songwriter</w>\nny o</w>\nfi bers</w>\nbur ch</w>\nag ro</w>\nmil ne</w>\nig bo</w>\ncr amer</w>\nation als</w>\ndan ube</w>\npad ma\nnor mani</w>\nen forced</w>\nbre ck\nboeh ner</w>\nar den\nsur rendered</w>\npros thetic</w>\nom a\nha iled</w>\ncalcul ations</w>\nw fa\nbi b\nfcb live</w>\nfon da</w>\nwest coast</w>\nque sts</w>\nfriend ly\nto wie</w>\nfit ch</w>\nbal ot\nstar dom</w>\nscrat ching</w>\nho sa</w>\nthi ka</w>\no ven\nstro ke\nout post</w>\npharmaceu ticals</w>\nhi kari</w>\nmu y</w>\naf d</w>\nfallon tonight</w>\nsqu at\nor u\ndra ined</w>\nchocol at</w>\në¯ ¼</w>\nwor ths</w>\nri b\nmu j\nthat s\nresiden te\nit el</w>\nboo st\nmi gos</w>\nmul led</w>\nla a</w>\netsy shop</w>\ndon keys</w>\nme k</w>\np tc</w>\nflin ders</w>\ne hs</w>\nro hit\nmu ir\ng ad</w>\ncompos itions</w>\nåĨ Ļ\ncombu stion</w>\ni kh\nyemen i</w>\nwav ed</w>\ngar ci\nak os</w>\noo ds</w>\nfu sion\nse que\ns lan\npl ur\nkic chasu\nshenan do\ns ams</w>\nworl den\nhoro witz</w>\nwith me</w>\nmic robes</w>\nk ki</w>\nðŁĴĶ ðŁĴĶ\nw su\npatch work</w>\nfre er\ny aki</w>\nthe art\nsymboli sm</w>\nmil er</w>\nbt n</w>\nma bu\nside kick</w>\nmotiv ates</w>\nsag itt\nnatur als</w>\nserv iced</w>\nps ori\npa ola</w>\nqu ig\ni badan</w>\ngi ggs</w>\në ³\nsciento logy</w>\nsi oux\nsalam at</w>\nd res</w>\ncad bury</w>\nd hawan</w>\nci Ã³n</w>\n_ '</w>\nswa pping</w>\nmaris ka</w>\njames bond</w>\nexplo sives</w>\nay les\naf er\ns agu\ncen sor</w>\ntom a</w>\njeff erson\nring ed</w>\npar tist</w>\nir responsible</w>\naguil ar</w>\nvac ay</w>\nequ itable</w>\naltrin cham</w>\nac ur\nman ish</w>\nger min\nschoo led</w>\npu tter</w>\ned ad</w>\nnav al\ntoast y</w>\nsol areclipse</w>\ndish u</w>\ncoy ne</w>\nac co</w>\nmu ck\nmar an\nel os</w>\nlen der</w>\ncro ix</w>\nworth less</w>\nha ber\ngun men</w>\nðŁį ĵ\nzen ith</w>\nt enders</w>\nhur st\nhol tz</w>\nitali ans</w>\ncar low</w>\nu cd\ncharacteri stic</w>\nbun g</w>\nav l\nu th</w>\nsa sia</w>\nrs l</w>\nred man</w>\nneighbor ing</w>\ngreen peace</w>\nsti ps</w>\nfollow party</w>\ny gk</w>\nen os</w>\nomni bus</w>\nna issance</w>\nchri ssy\nsecu re\ncall back</w>\nji hoon</w>\nmemor y\nblock er</w>\nl anta</w>\ndaf fodils</w>\nbil t\nffer ty</w>\nfau st</w>\nie c</w>\nnipp les</w>\nso g</w>\nm nd</w>\njagu ar\nbol dly</w>\nab poli</w>\npro position</w>\ngun sense</w>\nevan sville</w>\ncu tters</w>\nwe go\ndou n</w>\ndo x\nstal lions</w>\nka j\nshi ppers</w>\nj awa\nvol o</w>\nle ven\npap rika</w>\nkov ich</w>\njor di</w>\ninduc tees</w>\napp alling</w>\ndial ysis</w>\nallevi ate</w>\nâĢĶ âĢĶ</w>\npie ter</w>\nmid wi\nq tr</w>\njuli ette</w>\ninter mission</w>\nhaw ks\nact ment</w>\none ill</w>\nk lin\nvam ps</w>\nfam ous\ncou ld\nautom obi\nda an</w>\nwest end</w>\nelli p\nnh c</w>\nmel anch\nweb series</w>\nton gue\nsnat ched</w>\nsmy th</w>\ntan gible</w>\nsl i</w>\ne asing</w>\nbar stool\nover lay</w>\nafford ability</w>\nting ed</w>\nter as</w>\nay ush\nwanna one</w>\nrh ine</w>\ndan a\nsh ana</w>\nkend al</w>\nfer tile</w>\nw ir</w>\nrepl eni\nlar vae</w>\nis ro</w>\ncon vos</w>\nab brevi\nu cc\nhun gry\nbur rows</w>\nag er\nnav i</w>\nmat in</w>\ndu per</w>\ncer n</w>\nma don\nķ ï¸ı</w>\né ģ\ntu ps</w>\nhy att\nsh ep</w>\nfriday night\nwis er</w>\nhei di\nhat ton</w>\np gh\nfoun tain\nwrist bands</w>\nahmadi yya</w>\naeri al\nsubscri bed</w>\nso los</w>\nm ace</w>\nsla yed</w>\nfor fe\ndul ce</w>\nchrist mass\narun jaitley</w>\nviol ate</w>\nob stru\nni eces</w>\nw vu\nidy l\nfa ze</w>\npre serves</w>\ninfr inge\npremi ers</w>\ninter vals</w>\nagen cy\n( Â©</w>\nstand alone</w>\ndi mes</w>\nbo er\nparam eters</w>\nge tit\nðŁĺĺðŁĺĺ ðŁĺĺðŁĺĺ</w>\ntu lane</w>\nfor given</w>\nscol l</w>\nmb ps</w>\nsmash bros</w>\nrob bi\nprima vera</w>\nali st\nghost ly</w>\nay at\nye ats</w>\nimpre ssionist</w>\near phones</w>\ncaul field</w>\nwai kiki</w>\nsal ute\nsc ou\nmu ay\nlouis vuitton</w>\nbak hta\nado g</w>\ninven tions</w>\nhur d</w>\nforec lo\nstream line</w>\nthalai var</w>\nch snews</w>\nwill ard</w>\nt sn\neuro parl</w>\ncru sher</w>\nmy sore</w>\ngro wer</w>\nra ping</w>\npat ti\ng den</w>\nsm w</w>\nmuf ti</w>\nkid man</w>\nab r\nsoun ders</w>\nskep tical</w>\nðŁĶ İ</w>\nsun dar\ni me\nfer g</w>\nfeather weight</w>\nar lington\npas qu\nag azine</w>\nwearab le\nnati c</w>\nmccl ure</w>\ninter mitt\nhor de</w>\nsix ties</w>\ncar te</w>\nbha v\nze al\nexperi ential</w>\nador ned</w>\nsom mer</w>\neno te</w>\nhypo thesis</w>\nstin ky</w>\npro to</w>\ndead lines</w>\nvo gel</w>\nmus ings</w>\nmonc ton</w>\ngu ter\nf le</w>\naci on\nvoice of\nta sha</w>\ninhabit ants</w>\ntype face</w>\ns ba</w>\nbts x\nðŁĶ Ĵ</w>\nwor x</w>\nu hc</w>\njo ko\ncell ars</w>\ngor o</w>\ncontinu um</w>\n... &</w>\nweather cee</w>\nha p\nsr k\nris ers</w>\nlonely planet</w>\nun named</w>\nco eur</w>\nðŁį Į</w>\nthe world\nili ke\nfa sten\nami go</w>\nri ba</w>\nramapho sa</w>\nstaf fers</w>\nhad ley</w>\n? ?\"</w>\nfi ore</w>\nsal ut\nhu ff</w>\nbez os</w>\nÑ ĭ\nra der</w>\nkam ala</w>\nin line</w>\nfill ers</w>\num atic</w>\nall in\nshat ter</w>\nre in</w>\no ku\nch ases</w>\nfla gged</w>\nbaby metal</w>\nwater stones</w>\nts b</w>\ncut out</w>\nop hel\naam a\nrockab illy</w>\nsto lic</w>\njet blue</w>\nich ick</w>\ndown ton\nuzbe kistan</w>\npat na</w>\nla q</w>\ngr ange\n) _/\nsubsi di\nsc p</w>\nnewsc ast</w>\nit sa\ntwee tyour\ne mor\narchae ologists</w>\nuni fication</w>\npor ta</w>\nq x</w>\nprotec tors</w>\npro hib\ncharis ma</w>\ncar tag\nren fre\nscul pt</w>\nguwa hati</w>\nde ma</w>\nboo p</w>\nunf pa</w>\ndex ter\nlay la</w>\nalleg es</w>\nsou ps</w>\nnever again</w>\nl ys</w>\ncal c</w>\nbar oness</w>\nvisu alize</w>\nger ber</w>\nabsor bed</w>\ni ers</w>\na han\nfon tein</w>\ndetec tors</w>\nverst appen</w>\nsv c</w>\nformul ated</w>\nac dc</w>\nli x</w>\nin competent</w>\nbh k</w>\nlour des</w>\nwater house</w>\nsnow ed</w>\nappreci ative</w>\nsig ma\nlizasober ano</w>\npen ned</w>\npay check</w>\ntall inn</w>\nfanc afe</w>\npar isi\nav alley</w>\nvi g</w>\nru fc</w>\nhard ship</w>\nso cute</w>\npo ise</w>\nì ¹\nroth schild</w>\nk ly</w>\n???? ????\nl hp</w>\nil ay\nf hs</w>\nam ad\nide als</w>\nbrad bury</w>\nbal boa</w>\nnic ot\nkid nap</w>\nwol ve\ntas manian</w>\nop t\nmatthi as</w>\nãĥ³ ãĤ\nsuper markets</w>\nmylittle pony</w>\nme lee</w>\nli ster</w>\ngr oun\nfe dora</w>\nkind ness\nen en</w>\nbra hms</w>\nÂ¯\\ _(</w>\nros well</w>\nmar lene</w>\nic u\nre formation</w>\nor ail</w>\nhe brides</w>\ndispar ities</w>\nterrac otta</w>\nswal lows</w>\nre id\ninflu encing</w>\nflu or\nden e</w>\ntum our</w>\nblon des</w>\nthunder bird</w>\nsh eva</w>\nmoga dishu</w>\nka b</w>\ncre eps</w>\ni ving</w>\nene ed\nanno y</w>\nâĶ Ģ\nintri gue</w>\nenqu iry</w>\nar aj</w>\ntur al\nkuber netes</w>\nend lessly</w>\ndivi dends</w>\ntor a</w>\nti sh\ncommemor ates</w>\nun ra\ntri b</w>\npon ty\nne m</w>\ndiss ent</w>\nbrew ingco</w>\nðŁĺ ½</w>\nnor mali\nbi of\n( ...</w>\nchil len</w>\nì£ ¼\nmell on</w>\nav is\nmccor mack</w>\ning ra\nenrich ed</w>\ncustome rexperience</w>\ntesto sterone</w>\nsnu g</w>\nsett i</w>\nger onimo</w>\ninqui rer</w>\nbre aches</w>\nvery thing</w>\nbloom ing\nmu ra\ndispo s\nbi de</w>\nde va</w>\nshade sof\nin trin\nsh ev\ns ven</w>\nnayanth ara</w>\ngan esha</w>\nc ws</w>\nber ta</w>\nlabel led</w>\nuse um</w>\nnick named</w>\nma han\ncar uso</w>\nap ur</w>\nðŁĳ Ĩ</w>\nw q\norphan age</w>\ndiscar ded</w>\nmag nu\nlu e</w>\nje on\nbridge port</w>\npac ing</w>\nmercur y\n( ðŁĵ¸</w>\nmarx ist</w>\namphi bious</w>\ntransplant ation</w>\nstit ching</w>\nthen burg</w>\ngradu al</w>\nãĤ Į</w>\nro ft</w>\nma ils</w>\nine c</w>\nguy ana</w>\ndopp elg\nver o\nre write</w>\nhead less</w>\nharb augh</w>\ngate way\ncar sforsale</w>\nsw i</w>\nst is</w>\nmach t</w>\nun de</w>\nsura baya</w>\nstap leton</w>\nnur turing</w>\nmil ner</w>\nya o</w>\nlma oooo</w>\nko sh</w>\narsen al\nk ame\ner ry\nar royo</w>\ndis misses</w>\nru bbed</w>\nrc b</w>\nlew d</w>\ndil u\nand or\nvi de</w>\nur in\ninter sec\nha ar\nal b\nyear swith\napp leton</w>\nÃ© al</w>\nul livan</w>\nsuc cu\nmonter rey</w>\nd mx</w>\nartem is</w>\nron nie\nfarm land</w>\ns football</w>\ngro tto</w>\nanth i</w>\nãĢ ģ</w>\nà® Ł</w>\nvid ya</w>\njimmy fallon</w>\nàµ į</w>\nt zer</w>\ngravit ational</w>\nw thr\nu hhh</w>\ne hr\ntin ker\nti juana</w>\nscran ton</w>\nram charan</w>\nbar clay</w>\nre van</w>\nm si</w>\nka p</w>\nwr s</w>\nwe thenorth</w>\ntor al</w>\nsat u</w>\ngro m</w>\nfac ep\nerick son</w>\nz yn\nse dge</w>\noo dle</w>\nspur sofficial</w>\nds p</w>\nsic ilian</w>\nsoli hull</w>\nrecei vers</w>\nladak h</w>\nhend rick</w>\nther i</w>\npresi ding</w>\nmc guinness</w>\nlitt ers</w>\ngun nar</w>\ngh oul</w>\nwi b</w>\nn tv</w>\nkar o</w>\nfro ck</w>\nb lau\nampli fy</w>\nall is</w>\nul lah</w>\nmemo irs</w>\nkh loe</w>\nintercep tions</w>\npet day</w>\nlo oney</w>\ncon fin\nch ay\npiyush goyal</w>\nfrequ encies</w>\nut z</w>\nevent ual</w>\nwarm ly</w>\nobli vion</w>\nan ka</w>\nta it</w>\nâĿ¤ï¸ı .</w>\ndirector ial</w>\nru lers</w>\nprince s\nmu ck</w>\nstur ridge</w>\ndeu ce</w>\nabri dged</w>\nbagu ette</w>\nun cles</w>\npen du\nmin ding</w>\nforre ster</w>\nav ila</w>\nwall er</w>\nwall street</w>\nment or\nhin o</w>\nhigh way\ncrom well</w>\nfanart friday</w>\nmb i</w>\nco yle</w>\na hi\ntro ve</w>\nspie gel</w>\npay tm</w>\nmcin tosh</w>\njan sen</w>\nnit i</w>\nnash ville\nlen o</w>\nleicester shire</w>\nle gos</w>\ndic t\nðŁĵ ½</w>\nsp ad\nbeverly hills</w>\nsy rah</w>\nsepar ates</w>\nz ain</w>\nun fit</w>\ndra gs</w>\ntan ia</w>\nover flowing</w>\nhri thik</w>\nhaw thorn</w>\nz ani</w>\nmac far\nfi de</w>\nto tem</w>\npe ds</w>\nfundament ally</w>\ncal ico</w>\nsin ner</w>\nj Ã¤\nhil de\nds d</w>\nten ay</w>\nta hit\nmil f</w>\nlie b</w>\ninform ing</w>\nup lift</w>\nra el</w>\nmortg ages</w>\nlec t</w>\nii ii</w>\nguillau me</w>\ncompos ites</w>\nold smobile</w>\nl end\ngar th\ncom mish</w>\nbapti zed</w>\nscorpi ons</w>\nru cker</w>\nbringback our\nalli ance\nthalap athy\ntal i</w>\nsp ans</w>\neri dge</w>\nwither spoon</w>\nlin da\nsky lar</w>\nkor n\nhom s</w>\nÄ į\nsil enced</w>\ncaf fe</w>\nar ty\ndist inguish</w>\nto wed</w>\npun g</w>\njessic a\near nest</w>\nbeau fort</w>\nt ama</w>\nstudy abroad</w>\nsi khs</w>\nnew bie</w>\nnav ratri</w>\nmar ble\nloun ging</w>\nlit ter\ndal it</w>\nso sa</w>\niz es</w>\ngra de\ncom promising</w>\ntr iton</w>\nde tta</w>\nv j\nchau ffe\nspec tral</w>\npowe red\nmontess ori</w>\nartic ulate</w>\nhal ton</w>\nal co</w>\nye y</w>\nmn twins</w>\nacoun ty</w>\nðŁĳı ðŁı¾</w>\nâī Ī</w>\nmad men</w>\nkal a\ngru m\nchi k</w>\nati s\nsu me</w>\nakh tar</w>\njob search</w>\nhigh lighter</w>\nbo ath\nâĦ ¹</w>\ntar zan</w>\nlam bo</w>\nâĽĦ ï¸ı</w>\nox fam</w>\ndump ster</w>\npretz els</w>\nmac os</w>\nincl ined</w>\nfac tual</w>\nadverti sers</w>\nshu i</w>\npu ree</w>\nml pfi\nanti dote</w>\ncap o</w>\npa str\nmerc ado</w>\nbut ton\nar min\nag g</w>\nlol la\nhorri bly</w>\ner rands</w>\nchristop he</w>\ntime snow</w>\nmonday motiv\nli ss\nscand als</w>\nmc i</w>\ndispropor tion\nâĺ İ</w>\nsur pass</w>\nsamar itan</w>\nso tho</w>\npu rest</w>\nfl att\ntrivi atuesday</w>\ndelec table</w>\nleop old</w>\nhermi one</w>\nchou dhary</w>\nen rich</w>\nÂ¡ Â¡</w>\nsubsi diary</w>\nine qualities</w>\nbachel or\nauto immune</w>\nla kota</w>\ni hop</w>\nad jec\nthe simpsons</w>\nsh es\nse k\ngret chen</w>\nup stream</w>\nhin akhan</w>\ncoper nic\nx tina</w>\nlu g</w>\ntough ness</w>\ne ad</w>\ncli pped</w>\nbi us</w>\nsl v</w>\nfah ren\ndee pak</w>\nca u</w>\nx an\nim mature</w>\ndig ni\nbo bs</w>\nshred ding</w>\nbut tery</w>\naccommod ations</w>\nde ven\nchun ks</w>\nsuper league</w>\nsky bet\nkil dare</w>\nje et\në į\nce k</w>\nwrec ks</w>\npro pane</w>\noh l\ntb d</w>\nquo i</w>\ntrum pp\nmi mo\nreluct ant</w>\nver ne</w>\no ic</w>\nma gh\nar nau\nse ver</w>\nli dge</w>\nstair way</w>\nkicchasu deep</w>\nðŁĶ º</w>\nmach ining</w>\naama admi\not i</w>\nc da</w>\nal it\npan y</w>\ninst alls</w>\nac ct</w>\ne shop</w>\ndi em</w>\nhard well</w>\nfulfill ment</w>\nsc afe</w>\nqu ack</w>\nextrac ts</w>\nswee tened</w>\nfi ghton</w>\nf di</w>\nd inger</w>\nwal tham</w>\nus ur\nrefe rees</w>\nseok jin</w>\ngran n</w>\naf rin</w>\nth n</w>\nsch af\npar cels</w>\nbet is</w>\namar ine</w>\nnom an\nkh tar</w>\nmor itz</w>\ncou pling</w>\nbar ons</w>\nðŁĲ ¸\nÃ ¸</w>\nsl p</w>\nsad ler</w>\nx ander</w>\ntri ad</w>\nmc millan</w>\nkh z</w>\ndivi ding</w>\nìĹĳìĨ Į</w>\ndar yl\nzed d</w>\nle ys\npla ques</w>\nflu ori\ntipper ary</w>\non nell</w>\ndi dier</w>\nlang ford</w>\nim c</w>\nthe sun</w>\nbir dies</w>\nar cha\nye ssss</w>\nt di</w>\ndar ia</w>\ncand ace</w>\nal tam\npal aces</w>\nch it</w>\nsant am\nevent ful</w>\nbook of\nad b</w>\nmon stax</w>\ncre ole</w>\nco el\nâĸ ½\nwe aren\nsten nis</w>\nshe ath</w>\nati sm</w>\ngron ingen</w>\nmlpfi m</w>\nle pre\nwrong ly</w>\nrsp ca</w>\nrendez vous</w>\nacknowle dging</w>\npel vic</w>\nsolic itor</w>\nsla ys</w>\nnue stra</w>\nlo d\nis lander</w>\nfer oci\nfashion show</w>\nra ss</w>\ndge on</w>\nadole scents</w>\nsma shes</w>\nnegli gence</w>\ngrate ful\nved ere</w>\nsw oop</w>\ning l\napol ice</w>\nvand alism</w>\ngan n</w>\njo ao</w>\ndi supdates</w>\nzimbab we\nunder age</w>\nradi ance</w>\nw of\nbour geo\npla s\ncr ani\ngh ue</w>\nwrec kem</w>\nwarran ts</w>\nre form\njim mie</w>\nat wood</w>\nys l</w>\nneil himself</w>\nl bj</w>\ni man\ntan to</w>\nnois se\nver bs</w>\nequip o</w>\nal together</w>\nmam ent</w>\nl ice</w>\ndou glass</w>\ntier ney</w>\npri med</w>\nj hal\nfurn itu\nbraz ili\nv ill</w>\npast els</w>\nn ison</w>\nu ff</w>\nparal ysis</w>\njay e</w>\nim po\nðŁĳ ģ</w>\nstrate gically</w>\npakistan is</w>\nwas sup</w>\nsuper bike</w>\nthank u</w>\ntru elove</w>\nsha ikh</w>\nisrael is</w>\nvi p\nto g</w>\nli en</w>\nla ker\ngrey hounds</w>\ncul ars</w>\nbian chi</w>\nbalot elli</w>\nar ran</w>\nloo s</w>\nstr ates</w>\nhe bron</w>\nar vo</w>\nsunder land\nthe al\ntomb stone</w>\nsand man</w>\nc pac</w>\nthanks giving\nlove him</w>\nlat ino\nan in</w>\naka if</w>\nĭ ãĤ\ntor quay</w>\ndi est</w>\nalli anz</w>\nðŁĺ ķ\ngolf club</w>\ncl lr\nwal cott</w>\nsch nau\npromp ted</w>\nnomin ating</w>\nlen nox</w>\nval et</w>\nmon ro\nmay ward\ne ph\nðŁĶ Ķ</w>\ninter oper\nr da</w>\nre flex\narm chair</w>\nê° ķ\nstri pper</w>\npor ti\nph arm</w>\nham za</w>\nni reland</w>\nne ue</w>\nh pv</w>\nport foli\nsun burn</w>\nfris bee</w>\nbe al</w>\nbapti ste</w>\nx h</w>\nty m</w>\npr ati\no vers\nhaz rat</w>\ndeser t\nder ry\nus ky</w>\nem mett</w>\nach arya</w>\n)_/ Â¯</w>\nshu d</w>\nmay a\nham ill\nra im\nnr c</w>\nfitt ings</w>\ncur vy</w>\nðŁı ĩ\nster ling\nà¥ Ģ\nwal kin</w>\nshort cuts</w>\nmil ly</w>\nast ur\nalpha be\npl i</w>\npe z\nmiss you</w>\nrad ford</w>\nml g</w>\nta eyang</w>\nnotjust lakes</w>\ndu mps</w>\nseren dip\nle ur</w>\nra ving</w>\ne ster</w>\nde priv\nabsc bn</w>\nðŁĳĩ ðŁı»\nscar city</w>\no cr\nmean ings</w>\ncap t\nda hl\nfer mentation</w>\nbri oche</w>\nto win</w>\nout lander\nmassi mo</w>\nen cro\nðŁ¥ ³\nbuil t\npo tam\nkir i</w>\ntm w</w>\nmonit ored</w>\nk ites</w>\npeoples vote</w>\ngray son\níģ ¬</w>\nafri ka</w>\na dies</w>\ni vote\ngy ne\ng annon</w>\ndi x\nc mc</w>\nou ral</w>\nfox andfriends</w>\nbel i</w>\nig ne</w>\ngl an</w>\nkatrin akaif</w>\nco politics</w>\nqual itative</w>\np si\nlu cci</w>\ndisc oura\nâĺ ®</w>\nkel li\ngau tam\ncarac as</w>\nreale st</w>\npu la\nin us</w>\nhill top</w>\nmake aw\natten borough</w>\ntw y\nr arity</w>\npeck ham</w>\nma hon\ncorn elius</w>\nclin icians</w>\nton line</w>\ntb i</w>\nparadi se\nka si\ninev it\nfresh ness</w>\ncolling wood</w>\nlun atic</w>\ndefen se\ncop d</w>\nin fra</w>\nwain wright</w>\nsains bury</w>\nalab am\nte ma</w>\nlac o\nchec ker</w>\nreleg ated</w>\ntren t\nstal ks</w>\nhuff post\nbhubanes war</w>\nast ral</w>\nshare your\nprim rose</w>\nhi me</w>\ncat an</w>\nend ment</w>\nen dow\ncle mens</w>\nmal oney</w>\nhil ary\ngame time</w>\nden ise\ncollabor ators</w>\nb wo\nradic als</w>\ngue tta</w>\nici on\nau a</w>\nsnap matic</w>\nsat chel</w>\nexcav ation</w>\nbase man</w>\ns Ã£o</w>\ngn ation</w>\nfel d\nsurve y\nshah zad</w>\nma st\nanirud hofficial</w>\ntru cker</w>\not ago</w>\ngeo graph\nethe l</w>\nâļ¡ï¸ı âļ¡ï¸ı</w>\ns ver\nmu tt</w>\ninternetof things</w>\nancho red</w>\nwh ouse</w>\nbang la</w>\nbal main</w>\nç¹ ĭãģ\nbreak fa\ná Ģ\ntwi ster</w>\nte tris</w>\nca v</w>\nstag s</w>\ng z\nau b</w>\nstor med</w>\nhel ens</w>\nyar mouth</w>\nst asy</w>\ngustav o</w>\nco sc\nvin son</w>\nup p</w>\nsc ricket</w>\nassump tions</w>\napp e</w>\nnu h</w>\nu er</w>\npre mise</w>\nn aga\ne amon\ncoron ary</w>\nna f</w>\nnorth side</w>\nel mer</w>\nro tar\nout lining</w>\nel f\nre surg\nkat elyn</w>\nin can\nhyster ia</w>\nce e\nam bani</w>\npro lly</w>\nĮ ãĤĬãģ\nax es</w>\nsan jose</w>\nrem brandt</w>\nmag pie</w>\neven ly</w>\nscor sese</w>\nqu aint</w>\nf g\nb buk</w>\nindian football</w>\nweare all\nspd wy</w>\npis ces</w>\nec g</w>\nâĺħâĺħâĺħâĺħ âĺħ</w>\npre orders</w>\n: |</w>\nni pple</w>\nsal azar</w>\nju me\njail break</w>\nmin n\nbas sett</w>\nze tta</w>\njef free\nad jun\ntic on</w>\nsan diego\ndrink local</w>\nchol era</w>\nsolic itors</w>\no bo\ncom post\nni an</w>\nwr a</w>\ntre ach\nic ic\nprofession al\ndel ve</w>\nleg ate</w>\nhistor ia</w>\ncro issant</w>\ncon noisse\nnam o\npalli ative</w>\nchem trails</w>\ni ority</w>\nglobal warming</w>\ncomic art</w>\nbehavi oural</w>\nre sted</w>\nli as</w>\ncli mates</w>\nŁ ãģĦ</w>\nrut land</w>\nnou rish</w>\nmenopau se</w>\nhot ties</w>\ndemen ti\nve spa</w>\nmel ville</w>\nanal ogue</w>\ntz man</w>\nstr ung</w>\nim perfect</w>\ngl are</w>\ncir cling</w>\nros berg</w>\nrec o</w>\noc ity\nlo ire</w>\nem be\ndo ssier</w>\nne el</w>\nnan do\nme a\ngal vani\nfin esse</w>\nag p</w>\nberke ley\nasi m</w>\nâĺº âĺº</w>\nquil ted</w>\nish ere</w>\nun matched</w>\npo tion</w>\nfor z\nat re\nselfi es\njuli ana</w>\nðŁļ ¶\nâĸ º\nmel ton</w>\nâłĢâłĢâłĢâłĢ âłĢâłĢâłĢâłĢ\nspin rilla</w>\npur cell</w>\ned p</w>\nat leti</w>\ntony awards</w>\nra ja\npro gno\nmol ten</w>\nstu ff\np ally</w>\nnobel prize</w>\nâĻ» ï¸ı</w>\nspiritu al\nspe ake\nsa sha\nbri um</w>\ntru ss</w>\ncritici ze</w>\nassassinscre ed</w>\nyor uba</w>\nu lo\nfire man</w>\nworkin progress</w>\nef cc</w>\nfla res</w>\nro bot\nhi kers</w>\ncl l\nshado wing</w>\npat sy</w>\nleh man</w>\nc ns</w>\nå ±\nguad al\nà± į</w>\nra pe\nr honda</w>\nparalle ls</w>\nson ja</w>\nlangu age\nland ings</w>\nz ola</w>\ncr amps</w>\nbur ning\napprais al</w>\njol la</w>\nham m</w>\nkas a</w>\ngul ly</w>\nf go</w>\nuly sses</w>\nri be\nðŁĴ Ħ\nib u</w>\neti enne</w>\nbri ar</w>\nfin ely</w>\ncomb ating</w>\ny ql</w>\ngo tham\nwe chat</w>\nto paz</w>\nprimar ies</w>\nl se\niz z</w>\nhel e</w>\ndispon ible</w>\ncy stic</w>\nbel ichick</w>\nth rush</w>\nkansas city</w>\nge om\nsoli di\nred bubble</w>\nby stand\ncambridge shire</w>\npar fait</w>\nast le</w>\now o</w>\nind ore</w>\nstom ping</w>\nsm elly</w>\nðŁ¤ ĸ</w>\nlocom o\nadm itting</w>\nhol me</w>\nclock wise</w>\nmin sk</w>\nmc co\nfor get\nev p</w>\ncam ra</w>\nab ella</w>\nyo tes</w>\nuniversit yof\nmÃ© xico</w>\nsilver ado</w>\nric ket\ncrom bie</w>\npu j\neradic ate</w>\ndeli ght\ny go\nglam ping</w>\nvic a</w>\ndu ggan</w>\ncoun ters</w>\ncf d</w>\nsc our\nreact js</w>\npu ram</w>\nparas ites</w>\nin ki\nvill en\nstel la\nli mbo</w>\nang as</w>\nk cr\nðŁĴļðŁĴļ ðŁĴļ</w>\nvap ori\nmum ford</w>\noli gar\nà ¼\nal oo</w>\nboo ties</w>\nad r</w>\nk elli</w>\ndru mmers</w>\nav ici\nnature uk</w>\nron al\nin trac\nun splash</w>\nle che</w>\ng oma</w>\nel ine\nenvir o</w>\nbi onic</w>\nbu eno</w>\nmi k</w>\nav in\nstar ling</w>\nem powers</w>\ncake day</w>\nboy cot\nðŁĴļ ðŁĴļ</w>\nðŁĮ¸ ðŁĮ¸\nv ach\nm ci\nfractu res</w>\nger i</w>\nsk ing\nexclu ded</w>\nlu ce</w>\nja ve\nig gy\nevi den\naki stan</w>\na wn</w>\nmor als</w>\nluci fer\nha ban\ntumb ling</w>\nsunday motivation</w>\nmo sley</w>\ncaptain america</w>\nsch icago</w>\nthe one</w>\nmo td</w>\nd ts</w>\nðŁĲ ¼</w>\nrep ell\nii i\nlocu st</w>\ngeo spatial</w>\nmer sey</w>\nimmer se</w>\ndesc end</w>\nber nade\nj s\nboat sales</w>\nwin der</w>\ncran k\nsing leton</w>\ncandid acy</w>\nben a</w>\nðŁı» âĢį\nhigh lander</w>\nol t</w>\nk prs</w>\nhealthy lifestyle</w>\nfour teen</w>\nend the\nith aca</w>\ncircul ated</w>\nr ans</w>\npre valent</w>\nha vas\nsplend or</w>\nroo ster\nkalamaz oo</w>\njewell ers</w>\nenne dy</w>\nrou sey</w>\nes y\ncann ons</w>\nornam ental</w>\n// //\nren don</w>\nwin ne\nmol ding</w>\neid mubarak</w>\ncoun tess</w>\nsimon a</w>\nha wa</w>\nfo es</w>\ndu ster</w>\nsb u</w>\npor tray</w>\nmar ries</w>\ngoo dday\ncho co\nachi ever</w>\nðŁĺ¹ ðŁĺ¹\npre neur</w>\ntr amp</w>\ntom i</w>\nn bat\ngarden chat</w>\nfarra khan</w>\never glades</w>\nab ru\nsou sa</w>\nse ce\nhomes wee\nterre strial</w>\nbar it\nsri devi</w>\nol u</w>\nmel inda</w>\nf rick</w>\ncan dies</w>\nðŁĺŃ ðŁĴķ</w>\nqu reshi</w>\nfamily fun</w>\nexor cist</w>\ncardin al\nny t\ndies el\ncu mulus</w>\ncapric orn</w>\nsi ology</w>\nlor na</w>\ndou gie</w>\nan die</w>\nsuper sport</w>\nc fl\nÐ¿ ÑĢÐ¸\nsay ang</w>\npe ek\nà¸ Ĭ</w>\nlo be</w>\nj em\ning lis</w>\ngg led</w>\nc sn</w>\namne sty\nchu ps</w>\nba es</w>\nsau er\nðŁı Ĳ\nmongo lian</w>\nen et</w>\nback street\ndr illed</w>\nacce ssing</w>\nce o\nb se</w>\nai ken</w>\npur r</w>\nwor sen\nwhe res\nwar k\ntesti fying</w>\nbu ri\nbla st\naw g</w>\nðŁĵ ĭ</w>\nre defining</w>\nhear ing\nu ci\nc mp\nbon i</w>\ntail oring</w>\nta ji\nnoc chi</w>\nem t</w>\nstephen king</w>\nne et</w>\ncompla ins</w>\ncampaig ner</w>\nluci ano</w>\ntwili ght\nti esto</w>\npas sports</w>\nflo yd\ncathe dr\nna ked\ncaregi ver</w>\nb coz</w>\nade cides</w>\nku ri\nly k</w>\nbr aries</w>\ndren ched</w>\ndisc lose</w>\nðŁĴª ðŁı½\nle blanc</w>\nje tty</w>\ngar ty</w>\nchip mun\nb su</w>\nrhyth mic</w>\nic z</w>\nfri d</w>\nanne x</w>\name x</w>\nsolo ist</w>\nlanc ers</w>\narro whead</w>\nspeci fication</w>\nsimul ated</w>\nna is\ninver te\nbo wing</w>\nwor ship\nf z</w>\nabo ss</w>\nsha q\nì¶ ķ\nchalleng ers</w>\nan arch\naamaadmi party</w>\nãħĭãħĭ ãħĭ</w>\nsuffol k\nso corro</w>\nsn ell</w>\ncla dding</w>\nabsor bing</w>\nshaw a</w>\nparticip ates</w>\nðŁį Ķ\nbook stores</w>\nbak u\nseap ort</w>\nko jima</w>\ngab y</w>\npack ard</w>\nelectr ician</w>\nlet it\nmo wing</w>\nfa wad\nyoung jae</w>\nhot mail</w>\nmen ing\nu rie</w>\nintim acy</w>\ncon ti\n: \")</w>\nlifeis good</w>\nin ciner\ni dri\ncraz iness</w>\njour nos</w>\nfran chi\nbott len\nal da</w>\nff es</w>\nk x</w>\nsouth we\nair a</w>\nclay ton\nsco ti\nf j</w>\nbri ga\nðŁ¤ĺ ðŁı»\ndemonstr ators</w>\ny z</w>\nstor k</w>\nna q\ncasc ades</w>\ntravel chat</w>\nplat a</w>\npad ma</w>\nfran ci\nat tain</w>\nbat girl</w>\nlom bard</w>\nhoo s</w>\nd dos</w>\nneon atal</w>\ndiscla imer</w>\nr ss\nr ant\ndi sen\ntex aste\nso cal\nfrac tal</w>\ncam ry</w>\nstri fe</w>\nsn acking</w>\nmu h</w>\nsant ander</w>\nmor ons</w>\ngra f\npar ades</w>\nhu ston</w>\ndru pal</w>\nmi ento</w>\nkir stel</w>\nhy de\nvom it</w>\nforti fied</w>\nsphin x</w>\nda v</w>\nbir yani</w>\nwin nings</w>\ns baseball</w>\nmer ged</w>\nlovel ondon</w>\nling ering</w>\ndream big</w>\ncar leton</w>\nliveli hood</w>\ndjan go</w>\nastri d</w>\ngri ds</w>\ndown e</w>\nbru ised</w>\ns ne</w>\nscarec row</w>\nhel ium</w>\nf nc</w>\nbi ggs</w>\nan ter\nrestor ative</w>\nem pires</w>\nab del\nlife style\nkiwan is</w>\ncolloqui um</w>\nme en</w>\npr ick</w>\nanti que\nze b</w>\nmi mic</w>\nedmon ds</w>\nðŁĳĬ ðŁĳĬ</w>\nq ing\npp el</w>\nmc gill\ninterpre ting</w>\nâŀ ķ</w>\nrash ad</w>\ndo ka</w>\nnarr ator</w>\nelectro magnetic</w>\nash by</w>\nsau ra\niran deal</w>\nâģ īï¸ı</w>\nkrish nan</w>\nin di</w>\nff en</w>\nbre a</w>\nos man</w>\nmultin ational</w>\nchi ppe\nrecruit ers</w>\naus biz</w>\np ounding</w>\nre gen\ncur sor</w>\nrefu sal</w>\nmac s</w>\nin ak\nax ial</w>\nwa ifu</w>\nup cycled</w>\nhindu stan</w>\ncas sini</w>\ncarly le</w>\nscrat ches</w>\nre ef\nman atee</w>\neat ery</w>\nðŁĵ ¢\nun condition\nsen pai</w>\non ther\ncomic book</w>\npro sciutto</w>\nde mar</w>\nmi se\nma ge\nfre ec\naye sha</w>\nal der</w>\nandroid games</w>\nley ton</w>\nho ck</w>\ndoor way</w>\nchicagof ire</w>\naali yah</w>\nsw elling</w>\nbi x\n. ðŁĺĤ</w>\nevan kirstel</w>\ntorpe do</w>\nkon stant\ngenevie ve</w>\nma ia</w>\nha user</w>\ndo torg</w>\nhide ous</w>\nfi k</w>\nsp raw\ne ek</w>\nz appa</w>\nwan dered</w>\n' '\nra jan</w>\nbam bi</w>\n( $)</w>\nwid ening</w>\ntool box</w>\nsa ir\nillumin ating</w>\npra ys</w>\nout patient</w>\ni w</w>\nday o</w>\nlo b</w>\nsw fl</w>\nsha des\ngu ms</w>\ncoo kin</w>\nko di\ngri ffin\ntraum ati\nste a</w>\nslaugh tered</w>\ngod bless\nair time</w>\npseu do</w>\nb sa</w>\nhau led</w>\nar if</w>\nà¸Ńà¸ ĩ\nle l</w>\nwc po</w>\nmil iti\nchar ters</w>\nworl da\nru k</w>\nk gs</w>\ndigital india</w>\nis able</w>\nidyl lic</w>\nesp ino\nmarie tta</w>\ne bo</w>\nteam canada</w>\nab our</w>\nwil ton</w>\nrock stars</w>\nfav ored</w>\nphys ic\nwrink le</w>\ntb r</w>\nd print</w>\nball arat</w>\nad al\nz ey\nðŁĺį ðŁĶ¥</w>\ntom lin</w>\nmt r</w>\npal sy</w>\nfener bah\ntight en</w>\nphil ia</w>\nir oning</w>\nry u\nb ant</w>\nenqu ire</w>\nca ir</w>\nabur ger</w>\ntru n</w>\ngreen berg</w>\nchau han</w>\nir ina</w>\nsh ani\ntrend setter</w>\npre tt\nzaf ar</w>\nalo ve\nv ici\npan ic\nno o</w>\nlu stre</w>\ndisrup ted</w>\nbal lis\nson sof\nmon si\ninst ac\nake st</w>\nëĭ ¤\nkw ame</w>\nhorror movies</w>\ndistric t\nsau cy</w>\nmb an</w>\nar mies</w>\nwith drawn</w>\nmed ics</w>\nloft us</w>\ner oom</w>\nbe kind</w>\nar ns</w>\nall on</w>\nun ison</w>\ndavi ds</w>\ncr at</w>\nnicot ine</w>\nso or\nsm x</w>\non co\ncospla ying</w>\nzombi es\nhar ms</w>\ne ger\nro sy</w>\nmoon shine</w>\nfe in\nce tt</w>\ndu brov\nreg ents</w>\nben itez</w>\nðŁĳıðŁı¼ ðŁĳıðŁı¼</w>\nste c</w>\nm alia</w>\nprioriti ze</w>\nic eland\nft se</w>\nv amo\nlam ont</w>\nhomo sexuality</w>\nbre es</w>\nregu i</w>\ncb p</w>\nte j</w>\nsky sports</w>\ndeter gent</w>\nsha sta</w>\nde rel\nconserv ancy</w>\ncolori zed</w>\naccol ades</w>\nvis o</w>\nshow your\nnan ow\nbice ps</w>\nus ability</w>\nbi m\ndailys ketch</w>\npearl jam</w>\nstran gest</w>\nmega deth</w>\nbroad casts</w>\nbar ren</w>\nar ton</w>\nchri ss\nconfi gu\nlu res</w>\nis the\ne ul\nrailway ana</w>\nglobal health</w>\ngi anni</w>\nu aap\ns lum</w>\nconsci ously</w>\nab re</w>\nn up\nbud get\nv ada</w>\ne sch\nreal ness</w>\ner ased</w>\nth unt</w>\nbe z</w>\narmist ice</w>\nðŁĳ ¹</w>\nsh run\no led</w>\ndriver less</w>\nðŁ¤· ðŁı»âĢįâĻĢï¸ı</w>\nwon dr\nsk an\nsal aam</w>\nmother land</w>\nh wang</w>\ngen o</w>\ngang nam</w>\ntw right</w>\nendor sing</w>\nen ic\nador ation</w>\npau sed</w>\npatric ks</w>\ndo cked</w>\nplat te</w>\nff xv</w>\nethnic ity</w>\nauto show</w>\nside show</w>\nafter life</w>\nre located</w>\norphan ed</w>\nfood network</w>\ndare to\nand ra\nsla ps</w>\nv live</w>\nswim s</w>\nre imagined</w>\nmist le\nre vise</w>\nreal ity\nbhar ti</w>\nðŁĴĻ ðŁĴĽ\nlate st\nprou dest</w>\ngra sses</w>\nlan yard</w>\nfresh est</w>\ncarcin oma</w>\nanom aly</w>\nzieg ler</w>\nsum ner</w>\nly rix</w>\ngor g</w>\nis d\nav el\nswild life</w>\nme squ\njohn cena</w>\neuro league</w>\nsab er\nmaster ful</w>\nyar ra</w>\ncogn ition</w>\njacob son</w>\nabo lic</w>\nsir loin</w>\nshuk la</w>\nmoj ito</w>\nsu pere\nst weet</w>\nme z</w>\ne sa\nrudol f</w>\ngur a</w>\nwhere you\ntt m</w>\nwin s\ntrust worthy</w>\nny k</w>\nbra den</w>\ntable top\ngood food</w>\nes on\nbe k\nlingui stic</w>\ngra ys</w>\nch ath\nh cs</w>\nmon i\nde ans</w>\ncu ssions</w>\nch ell</w>\nslo ws</w>\nhe mi</w>\nd app\nshar pie</w>\nboo sters</w>\na os</w>\nstr ack</w>\nse dona</w>\nmu eller\nhard wick</w>\nor nate</w>\nthor a</w>\nsal ud</w>\no twol\nch um\nmi ho</w>\nfor age</w>\nthel ittle\ntear ful</w>\nones elf</w>\nmin dy\nsm g</w>\ngmb h</w>\nemer ald\nðŁĶ´ âļªï¸ı\ntu tti</w>\nrecep tions</w>\nre vising</w>\ni brox</w>\ntope ka</w>\nsal ami</w>\nexpan se</w>\ni books</w>\ndob son</w>\ncli o</w>\nat s\nðŁļ Į</w>\nmo ha\nis ance</w>\nshu tters</w>\nmoo t</w>\njan ine</w>\nmarvel comics</w>\njor dani\npos er</w>\nkenne th\nhy ung\nde ja</w>\nase ball</w>\nspeci ality</w>\neu ston</w>\nclassic car</w>\nhad ith</w>\nðŁĲ ī</w>\nchas ing\niz o</w>\ngros ven\nag lia</w>\nthisdayin history</w>\nt row</w>\nom ile</w>\nhu ar\nby n\nsal ine</w>\ndiv ine\ndemon ic</w>\nty ran\nhan dover</w>\nrevit alization</w>\npa ella</w>\ncryp tic</w>\nse dg\nm end</w>\ndun kirk</w>\nbre d\nwal d\nsport scar</w>\na ard\nwhe aton</w>\nda ener\nk lan</w>\nbr t</w>\nbakhta war\nspi res</w>\nschu bert</w>\nro ti</w>\npoli sh\no se\nag ame</w>\nwonder con</w>\nprote stant</w>\nbo sa</w>\nðŁĺ Ł</w>\nd Ã¼\njoy ride</w>\nger trude</w>\nâĿ Ŀ</w>\ngil a</w>\nv h\ntw a</w>\ntra v</w>\nswal lowed</w>\nstar ve</w>\nla in\nent ren\nrei ki</w>\nsu kh\ncra ic</w>\naz u</w>\nweb page</w>\nkee fe</w>\nhypo the\nhir sch</w>\nhel le</w>\ncamp ground</w>\nw amy</w>\ntra vi\nsha hi</w>\nsan deep</w>\nru i</w>\nhan uman</w>\ndw p</w>\nreposit ory</w>\nno or\nno ff</w>\nun real\np ell</w>\nblack history</w>\nhar vick</w>\nma scar\npay ee</w>\npa sha</w>\ngastron omy</w>\nd ÃŃ\nai g</w>\nrosen thal</w>\nopen day</w>\nembelli shed</w>\nt tip</w>\nsun bathing</w>\ngo pack\nend ome\nï¸ı #</w>\ninvali d</w>\nfinal four</w>\nst fu</w>\nsquish y</w>\nra sta</w>\nmo sch\njam esc\ndie trich</w>\nsel a</w>\nmel b\nel vi\nt dp</w>\nsun i</w>\nsli t</w>\nj ha\nbi za</w>\nspi ked</w>\nl li\nl illard</w>\nvam pi\nsyno psis</w>\naz har</w>\nkendrick lamar</w>\nĮãĤĬãģ ŁãģĦ</w>\nheart less</w>\ncountry file</w>\nair play</w>\narrog ance</w>\npre e</w>\nvirtu oso</w>\nãħłãħł ãħłãħł\nraj u</w>\nle bu\nfor ward\ntu g\ndro s</w>\nmondaymotiv aton</w>\nconcep cion</w>\nthel o\npad i</w>\nlooo ol</w>\nÑĢ Ð¾Ð´\nit ss\neth ical\nend uro</w>\n__ :</w>\nexpend iture</w>\nmon ste\nmas king</w>\nterri ers</w>\nib is</w>\ne mber</w>\ncu mple</w>\npunctu ation</w>\npi per\nir vin</w>\nade e</w>\nyy yyyy</w>\nflash backs</w>\ncel sius</w>\ndon nie\nbo gota</w>\nben evol\nthe script</w>\nshil pa\npro se\nfin dia</w>\nze ke</w>\nne ko</w>\ndo ves</w>\nblues lyrix</w>\nfro sh</w>\nsowe to</w>\nmp lo\nal ai</w>\nsab i</w>\nraq qa</w>\nwf tv</w>\nstro ller</w>\nian somerhalder</w>\nðŁĶ ª\nan on\nmo seley</w>\n! ?!?</w>\nsta king</w>\nmol y</w>\ncar tri\nc sg</w>\nast or</w>\ntransc end\nma er\nde ux</w>\ncow girl</w>\nsas k\npun ter</w>\nma ken\no ates</w>\nlove tt</w>\ngrow ler</w>\nsag in\nv n\nssi ble</w>\nofficeof rg</w>\ny mc\nsab ar\nfaul ty</w>\nap ha</w>\nak on</w>\nðŁĳ «\nsnow don</w>\nae w</w>\nraise the\nðĿ ĵ\ngrue some</w>\nclement ine</w>\nsp ing</w>\nlat a</w>\nworlden viron\nmi mic\ncan aria</w>\nbakhtawar bz</w>\nao a</w>\nfal a\nãĤ Ń\navi va</w>\nyou uuu</w>\nthi gh\nla dders</w>\ngu mbo</w>\ntz ky</w>\nfu zz\nplastic pollution</w>\nest ate\nstrength ened</w>\nk ant</w>\ndr in</w>\ncal vert</w>\ntransform ational</w>\nfrigh tened</w>\nmac lean</w>\nelited angerous</w>\near thy</w>\nt son</w>\nto da</w>\nj nu</w>\n.. ,</w>\nmic hal\ni ban\nje ong\nis real</w>\nsim coe</w>\nexclu sives</w>\nblue bells</w>\nben e</w>\nte u\npil sner</w>\npens ke</w>\nathe ists</w>\nm pu\ncartag ena</w>\nðŁĴĹ ðŁĴĹ\nmillion aires</w>\nkk kk</w>\nit ar</w>\nsubscri ptions</w>\nremo te\nma fi\nhin ton</w>\nw cc\nho k</w>\nds b\nab leton</w>\nsevent y</w>\npun ks</w>\ne indhoven</w>\nsh one</w>\nmcfar lane</w>\nlim popo</w>\nempha si\nÃ ¼</w>\nsin fo</w>\npe tre\nman grove</w>\nch ino\nber tie</w>\nplay lists</w>\npush awards\np af\ndeb bie\nc do</w>\nr ino</w>\nðŁı¾ âĢįâĻĤï¸ı</w>\nfol ke\nbon nar\nth ine</w>\nsl an</w>\nhal ter</w>\nevi e</w>\naw some</w>\nvul tures</w>\nspar ky</w>\nseiz ures</w>\nâľ Ķ\nram one</w>\nine ffe\nal n\npro ctor</w>\nast ra\nthe voice\ngro te\nsci on</w>\ndead line\nam aya</w>\ntain ted</w>\npatter ned</w>\nexce eding</w>\ncross fit\nkay lee</w>\ndrop box</w>\nru shes</w>\ntack led</w>\nmo by</w>\nretro gamer</w>\nn cbd</w>\nbenef itting</w>\nshay kh</w>\nguild hall</w>\ngen try</w>\ndream cast</w>\ndread ed</w>\nbun dled</w>\nth aw</w>\nrevol ving</w>\nn pt</w>\nkylie jenner</w>\nimagin ative</w>\nron i</w>\nover came</w>\nfamily time</w>\nds burg</w>\ncar naval</w>\nrelation ship\nrecogni zable</w>\ncor oner</w>\nho le\nfan fic</w>\nemir ates\nbur ritos</w>\nanaly se</w>\nthin ner</w>\nne es</w>\ngalli poli</w>\nbl r</w>\ncat woman</w>\n-- >></w>\nau lt\nada ily</w>\nnau ghty\nili o</w>\nsolit aire</w>\nmtv br\njocel yn</w>\narun ach\nrep ent\nsouth gate</w>\nhy acin\nessenti al\nfent on</w>\nand um</w>\nit or\ngo pal</w>\nsl inger</w>\npo sei\naw il\nwi elding</w>\nra ila</w>\neli as\na sto\nÃ ¤</w>\ntend ency</w>\nstr ata</w>\nker t</w>\n< -</w>\nim acele\nda es\nsti mulus</w>\nhan ley</w>\nfit nes\nec stasy</w>\nlim ous\nha iling</w>\nðŁ¤ Ń</w>\nchis wick</w>\ntar ies</w>\nsla v</w>\npul i</w>\nmoderni zation</w>\nblack mail</w>\nb ingham</w>\nh fx\n+ +\nðŁĩ®ðŁĩ ³\nni v</w>\nwe a</w>\nprofess or\nk off</w>\nbol ster</w>\nsu ave</w>\nsequ ences</w>\npepper oni</w>\nnot te</w>\ndre n</w>\nãģ¨ ç¹ĭãģ\nhs v</w>\no ga</w>\nap tly</w>\nz ad\nexcel si\nrin ka</w>\nmol dova</w>\nmin n</w>\nma bel</w>\nconferen cing</w>\nbas ing\nof er\nob si\nhamill himself</w>\ncare less</w>\nbrief ed</w>\ninhe rent</w>\npar ish\ndub nation</w>\ntown sville</w>\nsar awak</w>\ngee ky</w>\ndoncaster isgreat</w>\nwas abi</w>\ngu p</w>\nphen o\ndra inthe\ncarrie underwood</w>\nble eds</w>\nbbc world</w>\nane w</w>\nalta f</w>\ndul wich</w>\nani ston</w>\nw ti</w>\nsumat ra</w>\ngra fton</w>\nbl n</w>\nme ster</w>\nbode ga</w>\nre go</w>\nes q</w>\nan jo</w>\nsump tuous</w>\nmai sie</w>\nï¿ ½\nwil t</w>\njak ob</w>\nel vis\nse pul\nmu ster</w>\nair pollution</w>\npresident e</w>\nhappy monday</w>\nexten sively</w>\nfl ondon</w>\nt ls</w>\nplay ing\npe ed</w>\ndin ho</w>\nvar dy</w>\npi ka</w>\nn iro</w>\nau cus</w>\nðŁį ¦\nnu ll</w>\nel ondon</w>\njuvent us\nimag ines</w>\ndis ab\nlit o</w>\nd ura</w>\nwork places</w>\npromo te\nmc caf\nwood work</w>\nwaw x</w>\nà® ª</w>\ntt ino</w>\nshar i</w>\nsem per\nbetter together</w>\nðŁĳĬ ðŁı»\nze bra\npon dering</w>\nen chil\nho m</w>\ncosm ic\ntan z\nmo cked</w>\nec cc</w>\nath ed</w>\nabo lish</w>\nprop eller</w>\nparis agreement</w>\nassemb lies</w>\nindu stry\nfraudul ent</w>\npe sa</w>\nchang min</w>\nax x\nðŁĴ µ\nirr ational</w>\ncu sa</w>\nramad han</w>\nocta via</w>\non elove</w>\njac ki\nbar ak\ntaxi der\nseri ous\nnathan fillion</w>\nmc en\nch k</w>\npo part</w>\ngrav ity\ncopp ola</w>\nreading fc</w>\nillu sions</w>\nj ig</w>\nww x</w>\nre sh</w>\nex porting</w>\nbuzz ard</w>\nâĻ ¤</w>\np cm</w>\nlan apar\nko s\narom as</w>\nantal ya</w>\nww dc</w>\nven a</w>\nphil a</w>\nball in\nðŁĳ Ħ</w>\nquin ta</w>\nma o\nf ery</w>\neigh ty</w>\nsentim ents</w>\nsafe guarding</w>\nr wa</w>\npu ffs</w>\nluc ille</w>\nde cath\nsl u</w>\nnu gent</w>\nde ter</w>\nbraz il\nze iss</w>\nsuper bowl\nsubsi dy</w>\nalter n\nhi dalgo</w>\nenz ymes</w>\nä ½\ntag ne</w>\nhair dresser</w>\nadri en</w>\nwalk out</w>\noppo ses</w>\ncan tina</w>\nbed side</w>\naf an\nðŁĶ Ĺ\nprophe tic</w>\ndan es</w>\nun successful</w>\nsuper charged</w>\npk k</w>\nexem ption</w>\nhart le\nsecu lar\ncli pping</w>\nbr s</w>\nunited way\nc net</w>\npat chy</w>\nha gan</w>\ne en\nâļ ľ\nvar a</w>\nsym pathi\nnever trump</w>\naffir mation</w>\nom f</w>\nny cfc</w>\nma ja</w>\nsur ro\nkeer th\nup scale</w>\nsandal wood</w>\nmon archy</w>\nkno bs</w>\nå ĭ\npo tholes</w>\nhunger games</w>\nter races</w>\nna sir</w>\ncoun sell\nwelcome to\nwa q\nse aman</w>\nm ita</w>\nstun ningly</w>\non theroad</w>\nin ability</w>\n) !!</w>\nbon go</w>\nant v</w>\nsp ut\nworldenviron mentday</w>\nresu sc\ny td</w>\nfi m</w>\neun hyuk</w>\nsa chin\nrose anne</w>\ncler mont</w>\nape c</w>\nam ina</w>\nv ening</w>\nn antes</w>\nal most\nsin us</w>\nex as</w>\nty l</w>\nti en</w>\nple ad</w>\nlanc s</w>\nbur naby</w>\nre k\njo om\nobserv ers</w>\ndisco graphy</w>\ncl g</w>\nâĻ ¦</w>\nsn ack\nr ti</w>\no ily</w>\ncrystal li\nbru te</w>\nweb development</w>\ntopp ings</w>\nla f\nan is</w>\nad der</w>\nreli ving</w>\ncar lin</w>\nbattle of\nwe g</w>\nsyri an\npon t\nn dc</w>\nlagh ate\nyu ma</w>\nsp p</w>\np iti\nro bbing</w>\nmart ing\nrey kja\nraj put</w>\nnc ds</w>\nkie wicz</w>\nâĢ¢ âĢ¢</w>\nvam pire\nsubstan tially</w>\nopio ids</w>\nnepal i</w>\nk line</w>\nar oo</w>\nunder stand\nlit t</w>\nu it</w>\nthro mbo\nsar ies</w>\nqu ot</w>\nb alling</w>\nt tr\ns gh</w>\nphilip p</w>\nbr ant</w>\nac l\nm ello</w>\nwhit taker</w>\n. ;</w>\ndefi ant</w>\nb gc</w>\nrepl ying</w>\nmir ren</w>\nmetamor pho\nsch wab</w>\nbul ge</w>\nutili zed</w>\npick ering</w>\npar don\nd sa</w>\nà¸ Ī\ndoo ley</w>\ncumul ative</w>\nÐ »\nur gency</w>\ne mir</w>\n+ /-</w>\n¦ Ī</w>\not as</w>\nâı ³</w>\nstation ed</w>\ngrape vine</w>\nar ac\nkaran johar</w>\nf ancy\nsau l\ncoo gs</w>\nlgbt q\nØ§Ù ħ\njav i</w>\nu mmer</w>\npl l\nden is\ndai pur</w>\npu ffin</w>\nlewi sham</w>\nfand om\nco pe\nves matter</w>\ns ve\nhel pless</w>\ndeo dor\nostr ich</w>\nkaz an</w>\nfriday the</w>\ncon dor</w>\nv x</w>\nsophom ores</w>\nrob les</w>\ncu tt</w>\ncli mbers</w>\në¦ ¬\nsle g</w>\nsn f</w>\nmac ys</w>\nhydr ating</w>\ngrou pe</w>\npo yn\nmou lin</w>\nhg tv</w>\nlmfa ooo</w>\nsulph ur</w>\nasdfghj kl</w>\nannab elle</w>\nhump back</w>\nbra ved</w>\nviswas am</w>\nmulti purpose</w>\nhu midi\nescor ted</w>\nbarb ican</w>\nf ad</w>\ncor sa</w>\nðŁ¤ «</w>\npi ppa</w>\nhere to\ncan y\nser gi\nor cas</w>\no vie\ned ou\ns any\nglob alization</w>\nman cini</w>\nfood truck</w>\nf is</w>\ndefi brill\nsch re\nsma fia</w>\nlove wins</w>\nla ut\nk aka</w>\nhol lande</w>\ngame on</w>\nresurg ence</w>\nout side\nolympi ad</w>\nint an\nabstr action</w>\nrapi d\npal om\ncal le\njas min</w>\nattack ers</w>\nswag g</w>\nmit ra</w>\nky lo</w>\nà® ²</w>\nher mitage</w>\ngor do</w>\ne ira</w>\nso sfam</w>\nroll out</w>\nexc ite</w>\nsy nod</w>\nmer rill</w>\nc als</w>\nas sa</w>\nliveli hoods</w>\nju ve\nthe black\ngopack go</w>\nant lers</w>\nalban ian</w>\nwool ly</w>\nqu iche</w>\npuri fication</w>\nare th</w>\nsmar thome</w>\nne k</w>\nall blacks</w>\nmex icans</w>\nis m\nger ms</w>\ncomple xion</w>\nmar ck</w>\nu shi</w>\nðŁĲ Ĳ\nchar l\nca stic</w>\ntill erson</w>\ngiuli ani</w>\nbiode gradable</w>\nmal bec</w>\nbo is\nju bil\nim es</w>\nr ame</w>\ngene tic\nesp nu</w>\nch ley</w>\nso ho\ngo pher\ng sc</w>\nbuu ren</w>\ncu be\nbridesma ids</w>\nwebin ars</w>\nto e\nmani pur</w>\nviol ently</w>\nnotic ias</w>\nex changing</w>\nchi ev\nreplac eable</w>\nmuay thai</w>\nbu ss</w>\nsp il\ninstal ment</w>\ndiv ya</w>\ncait lin\no lim\nfil tering</w>\nwhirl wind</w>\nsta red</w>\nprior it\npr am\npompe ii</w>\nmono logue</w>\nk ite\nbu ka</w>\nâĢ¦ ..</w>\nvac cine\nbre ro</w>\nwoz ni\nsol ent</w>\nre ferr\nmy rt\ngridi ron</w>\ngalatasar ay</w>\nfro ze</w>\nclare mont</w>\nðŁ¥ ĥ</w>\nvictori as\nssel dorf</w>\npa stures</w>\nnet neutrality</w>\nch or</w>\nðŁĳ ģ\nà² ¿</w>\nwe ho</w>\nsymp tom</w>\njo sel\nin ous</w>\ndragon con</w>\npower ball</w>\np te</w>\nfour thofjuly</w>\nec la\near buds</w>\nwhere abouts</w>\nsalt life</w>\ndepriv ation</w>\nch ter</w>\nwi ggle</w>\nsyste m\nps st</w>\nch az\nd any</w>\nri mo</w>\noax aca</w>\nlanapar rilla</w>\nbarcel on\nmelanch oly</w>\nway back\nho tro\nn si\nl illy\nkur o</w>\nja han</w>\nintellec t</w>\nboard game</w>\nðŁı Ĭ</w>\nsneak peek</w>\nk prc</w>\njail s</w>\ncand el\nzan zi\nmor timer</w>\nstar ch</w>\nra gs</w>\np fa</w>\nlong live\nk art\ngir ona</w>\ncro cker</w>\nchristop h</w>\nprecau tions</w>\nwar ship</w>\nper m</w>\nparen t\nvan gogh</w>\ngif ford</w>\nallegh eny</w>\nra yn\nut m</w>\nsten cil</w>\nrec alling</w>\npen ney</w>\nz azzle</w>\nìĥ Ŀ\nhin ds</w>\naren as</w>\nnu ev\nlaw ler</w>\ngu in</w>\ndo this</w>\nðŁĳ ķ</w>\nì¶ķ íķĺ\nwe g\nti b\nri din</w>\ncomplex es</w>\nturbul ent</w>\npe sos</w>\nde marcus</w>\nvall arta</w>\nsam sun\nkis ses\nhein rich</w>\ndeport es</w>\nwil ms\nur d</w>\nthen ext\ninki gayo</w>\nho wi\nfir sts</w>\ncarri age\nclean liness</w>\nmas war\nis ch</w>\nax el\nsi zzle</w>\nroad house</w>\nfr ans</w>\nent ourage</w>\nco bble\nboo th\nbenedic t\ntal on</w>\nfc u</w>\nyear ofthe\nray on</w>\nraider nation</w>\nfo yle</w>\nko val\npi anos</w>\nl pg</w>\nbur mese</w>\nman ure</w>\ngeo caching</w>\ncosc ino</w>\nb np</w>\nfer ra\nstro phy</w>\nmar ais</w>\nce es</w>\nlegen dof\nkat niss</w>\neno ch</w>\nav ed</w>\nyou know\nd prk</w>\nðŁĺ¢ ðŁĺ¢</w>\nsp un\npro st</w>\nsor rows</w>\ncent red</w>\nke a</w>\ngal icia</w>\n? ðŁ¤Ķ</w>\nÑĢÐ¾Ð´ Ð°</w>\nbou chard</w>\nðŁĴĻ ðŁĴľ\nyu i</w>\nseed lings</w>\njon ah\nreco vers</w>\nny rd</w>\nboard room</w>\nsu ma</w>\nmy japs</w>\ntun g\nsha i</w>\nir gc</w>\neli o</w>\nwag ons</w>\nka shi\npolic emen</w>\njohn nie</w>\nale coscino</w>\nshop ify</w>\ndot ted</w>\nde tri\nva w</w>\nto fficial</w>\nin your\nchal mers</w>\ntrac ed</w>\nno vi\nby es</w>\nari el\nnipp on</w>\nla pel</w>\ngri ez\nb gs</w>\nfool ing</w>\nd ita</w>\nvijay sethu\nnm wx</w>\nas ot</w>\nkr anti</w>\nhel m\nve di</w>\nsic kest</w>\nmo chi</w>\nk abo\nshru bs</w>\nhe red\nb sp</w>\nsq m</w>\nham r</w>\ndul kar</w>\nanth a</w>\nnr f</w>\navoid ance</w>\nat en</w>\npubli x</w>\nbe arers</w>\nnas i</w>\nha p</w>\nh ells</w>\nðŁĸ ¥</w>\nà¸ ·</w>\nthelast jedi</w>\noh wx</w>\nðŁį «\nwa hoo</w>\nthere se</w>\nrec aps</w>\nss nhq</w>\nbird photography</w>\nv ay\npet ti\npau lo\nbel vedere</w>\n( *\ngr l</w>\ndu vet</w>\nc pec</w>\nsa it\npor sch\nmeas urable</w>\navi ators</w>\nfre mantle</w>\nbre en</w>\non om\nme and\nlife saving</w>\neu ref</w>\nen don</w>\nembar as\naira sia</w>\nel is</w>\ndun kin\nstar magic\ns ill</w>\nporto bello</w>\nki efer</w>\nex e</w>\nmu ted</w>\nãģ ¦\nwe thepeople</w>\nlogi a</w>\nliber al\ntheforce awakens</w>\nmin ed</w>\nhaun ts</w>\nfreck les</w>\ncare taker</w>\ns india</w>\nâķ Ĳ\ndev lin</w>\nlist on</w>\ndirection er</w>\noh n</w>\nfi garo</w>\nem manuel\ndu bois</w>\ncl ones</w>\nbru ise</w>\nðŁİĪ ðŁİī</w>\ndisin fe\nder matology</w>\nas r</w>\ns watch</w>\ndis comfort</w>\ntam anna\npi day</w>\nmack en\nk atic</w>\ndelu sional</w>\nshaw nee</w>\ngu d\nal bino</w>\np ali\ndin gh\ncucu mbers</w>\ncoffe y</w>\nanticip ating</w>\ntreas ured</w>\nweb summit</w>\nshel tered</w>\nsav or</w>\npedago gy</w>\nm gs</w>\nsh ma</w>\ns bu\nden ali</w>\ncam pos</w>\nbubble gum</w>\no ir\nle aps</w>\ny ler</w>\nr one\nsansk rit</w>\nmin t\nmeat less\nfuturi st</w>\ndu de\na vel</w>\nprote sted</w>\nsqu ire</w>\nz aki</w>\nsz n</w>\nhar court</w>\ncycl one\nbour dain</w>\ngather ings</w>\nd ant\nadvent urer</w>\nparag on</w>\nalt man</w>\ndd ing\nban erjee</w>\nsnorkel ing</w>\nmother well</w>\nmis sy\nen der\nglo ws</w>\nki wis</w>\nchick pea</w>\npor o\ne fron</w>\napp t</w>\nu y</w>\nspeci fied</w>\ngab by\ne strada</w>\ncom bos</w>\nbour bon\nvin i</w>\nvar un\nsteph ani\nkey words</w>\ncar vings</w>\namit abh</w>\nwr ought</w>\ntw al\nre els</w>\nclu bbing</w>\nubi quit\ncri t</w>\nambed kar</w>\næ Ļ\nprun ing</w>\nvaccin ated</w>\nboe ing\ns ks</w>\nlo ona</w>\nhypno sis</w>\nedel man</w>\npho l</w>\nhe w\ncolo sse\nmckin sey</w>\nu on\nto te\nsacrific ing</w>\nox i</w>\nn ang\ne mu\nÐ¿ÑĢÐ¸ ÑĢÐ¾Ð´Ð°</w>\nm th</w>\nkers wednesday</w>\nargu ed</w>\ntimel apse</w>\nris king</w>\nregul ating</w>\nni gh</w>\nlikeli hood</w>\ncu bic\nau ction\nrein for\npi stor\nno ses</w>\nye l</w>\nsnu ggles</w>\npe i\njean ette</w>\nta ku</w>\nri th\nguy z</w>\nà¸ ŀ</w>\ny te</w>\nver ted</w>\npay soff</w>\njau regui</w>\nhoo ligans</w>\nprocedu ral</w>\nmi b</w>\nhar dy\nel eng\nchec kers</w>\nall ine</w>\nthe met</w>\nprou dof\nkeerth yofficial</w>\ncollabor ator</w>\nni u</w>\ninfl icted</w>\nadv ani</w>\nre twee\nmemor iam</w>\nf icial</w>\nti ghter</w>\nsal em\nre viewers</w>\nbr ics</w>\nben digo</w>\nam ell</w>\ntur kish\nsush maswar\npaul son</w>\npal awan</w>\nmol lie</w>\nstitch er</w>\ns burgh</w>\nir u</w>\nhay dn</w>\nen ers</w>\naro a</w>\nu zzi</w>\nsaraj evo</w>\nhel a</w>\napol lo\nnine ty</w>\nvac a</w>\nsp on</w>\nvent u\njel ena</w>\nhei fer</w>\navo ids</w>\nsp ine\npri ze\nmar ist</w>\nre creating</w>\nme de</w>\nwoo den\nfind lay</w>\nro fl</w>\nn di</w>\ncompreh end</w>\nyu go\ny Ã¼\nto work</w>\nu fos</w>\nson ar</w>\npi ston</w>\nrecor ding\ntent ative</w>\nart forsale</w>\npel lets</w>\nfre do</w>\nÙĪ Ø±\nmu ses</w>\ncustom ization</w>\npro found\nis ner</w>\nide ally</w>\nsi am</w>\nplan kton</w>\ncm dr</w>\nman ger</w>\nfran ken</w>\ncustomiz able</w>\nà¤ ®\nwalk away</w>\nswi vel</w>\nvast ly</w>\nno ton\nlex a</w>\nex moor</w>\nz as</w>\ntan te</w>\nreduc tions</w>\nlol ly</w>\nhip sters</w>\nbenef ited</w>\në ²\nww www</w>\nmascul ine</w>\nfi ji\ndre y\nph ill</w>\nane ous</w>\nnic ol</w>\nmen dez</w>\ndisapp ro\nch ner</w>\nthrough s</w>\nshen mue</w>\neast man</w>\nðŁĲ İ\nyu ck</w>\nunder tale</w>\nre ys</w>\ngo beavs</w>\neng en</w>\nc na</w>\nmer r\nbir k\nãģ¨ç¹ĭãģ ĮãĤĬãģŁãģĦ</w>\nâĥ£ @</w>\nyn na</w>\nste ed</w>\noffen der</w>\nat um</w>\nvani shing</w>\npresi denti\nlove them</w>\ng nocchi</w>\nfri ggin</w>\nper il</w>\nmad hya</w>\nag ne</w>\ndee jay\nmar nock</w>\nm tb\nfold able</w>\n@ ___</w>\nstand re\nbron x\nbow ski</w>\nfin ite</w>\ncro ckett</w>\nb sf</w>\nge tit</w>\nseren awilliams</w>\nmir o</w>\nignati us</w>\nsla y\nrin se</w>\nfon due</w>\nsel dom</w>\ns more</w>\ngan i</w>\ndy ce</w>\ndmit ry</w>\ncru mb\nlate post</w>\npri mark</w>\noh ana</w>\nflor als</w>\ndo a</w>\nremembrance day</w>\nd ds</w>\nazi one</w>\ntoon ami</w>\nair port\næĿ ±\nth ad\nfi st\ndine sh</w>\ndr who</w>\nad words</w>\nadmi rer</w>\npro je\nkyrgy z\nà «\nmanife station</w>\nle wan\nj ic\nthi bau\nle ased</w>\nvan ity\nnouri shed</w>\nnever theless</w>\naug mente\nfu elled</w>\nche ad\nwil shere</w>\nru di\np z</w>\nmy co\nmor ro</w>\nherbali fe</w>\nhardro ck\nde man</w>\ndre ality</w>\nsp ades</w>\nce vic\nbha i\nbar on\nultimat efan\nhou news</w>\nto bi</w>\nstru t</w>\nke el</w>\naffili ation</w>\nthe masters</w>\nsm al\nhu e\neste ban</w>\ncon v</w>\nom nic\ndatab ases</w>\nco v</w>\nter ti\nst g</w>\nsnoop dogg</w>\nmetab ol\nleth bridge</w>\nðŁı» âĢįâĻĢï¸ı\nyear ling</w>\nresidente vil</w>\nnws l</w>\niy aki</w>\ngriez mann</w>\nc ous</w>\nðŁĵĿ :</w>\ntor ian</w>\nsam i\nðŁĶ¥ðŁĶ¥ ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\ng are</w>\nalli ances</w>\nwhit field</w>\nwe ther</w>\nrefin ing</w>\ncoy i</w>\nkra ken</w>\nðŁĺĺ âĿ¤</w>\nsingul arity</w>\nlil i</w>\nh ns</w>\nbol dand\nwaw rinka</w>\nmisogy ny</w>\nlo vers\nc q</w>\nb dg</w>\nad ona</w>\ngar ter</w>\nwomen of\nsc d</w>\nrecogn ising</w>\nmun a</w>\nstr ou\nsign alling</w>\nlare do</w>\nhell boy</w>\nalek sand\nun available</w>\npedi atric\nas in\nmer ia</w>\nri shi\nfuturi sm</w>\nw ye\npolari zed</w>\ne we</w>\npro pel</w>\nin forms</w>\ncre ase</w>\n~ \"</w>\narti ston\nlike for\nheidel berg</w>\ner ra</w>\nlife in\nlen ny\ninter rupt</w>\ncohe rent</w>\nca z\nvick ers</w>\nle veled</w>\nf bs</w>\ncab ins</w>\nbu mmed</w>\napost les</w>\nwe h\nten don</w>\nsouven irs</w>\ninfu ri\npier ce\nasse t\nm las</w>\ngo th\ndi ggin</w>\nann as\nyl or</w>\nth waite</w>\nsw el\npan era</w>\nmur derers</w>\ncroo ked\nbs go</w>\nac u</w>\na on</w>\nre an</w>\none of\nko hl</w>\nbloo dh\npest icide</w>\nlost dog</w>\nfle xing</w>\nëĤ ĺ\nsu pra</w>\neter nally</w>\nðŁļ Ļ</w>\npa olo\nol an\nmom o\nis elle</w>\ncaptain marvel</w>\ns lou\nmistak enly</w>\nakhi lesh</w>\nmer t</w>\nil inan</w>\nbu on</w>\nbal kan</w>\nmir ro\nmill en\nder ail\ndam on\ntit i</w>\nbi os</w>\nre don\npic ard</w>\npar te</w>\nðŁ¤ Ł\nØ º\nson ics</w>\nfir sth\ndd c</w>\nveg ans</w>\ntur ban</w>\nni gan</w>\nlot tie</w>\nlyn don</w>\nstar buck\npink floyd</w>\nlife styles</w>\nam ara</w>\na she\nr sc</w>\nval a</w>\nsm er\ncw gc</w>\ncli ent\nbuen as</w>\njag an</w>\ncoo ps</w>\nðŁĳĳ ðŁĳĳ\nspeci alizes</w>\nsnag ged</w>\ng lar\nben net</w>\nwildlife wednesday</w>\nbow den</w>\npi k</w>\nart in</w>\nempor ium</w>\nar l</w>\nre ba</w>\npas ser</w>\ndisappo ints</w>\nadditi ve</w>\nâľĬ ðŁı½</w>\nbay er\nmissou la</w>\nha skell</w>\ncomm ences</w>\nni x\nne man</w>\nexplo ited</w>\nplastic surgery</w>\ncc d</w>\naso cial</w>\nvo t</w>\nsie gel</w>\nfro ome</w>\nkap am\nfar a</w>\ne ha</w>\npro bes</w>\nmw f</w>\nmeet ing\np bb\nak ins</w>\nmistle toe</w>\nkingdom hearts</w>\nfor kids</w>\nec r</w>\nbal e\nescor ts</w>\nadidas originals</w>\nk wa</w>\nk ts</w>\nhallo ffame</w>\nðŁĺį .</w>\nwag s</w>\npot ted</w>\no wing</w>\nhoney comb</w>\nhe fty</w>\nuro logy</w>\nmer le</w>\nb pd</w>\nstri pping</w>\nre ich\nk state\ngu ay\nyon ge</w>\nshak ti\ng loom</w>\nbat t</w>\nson om\nn ery</w>\nel ba</w>\nblan ks</w>\nhel le\ntriple ts</w>\nbom bay\nak arta</w>\nab ia</w>\ntransm itted</w>\nrol f</w>\nja is\nangular js</w>\nfi erc\nm ss</w>\ntrac e\nà¥ ĩ\ntom bs</w>\nold man</w>\nkom bucha</w>\nfo l</w>\ne health</w>\ncere als</w>\nare lli</w>\nin ari</w>\nðŁĴ ©\nwo l</w>\nliber ties</w>\nfa wn</w>\naf firm</w>\nnun avut</w>\nhyster ical</w>\nk drama</w>\nart es</w>\nâĢ¢âĢ¢âĢ¢âĢ¢ âĢ¢âĢ¢âĢ¢âĢ¢\nvalent in</w>\nman slaughter</w>\ngal es</w>\neo in</w>\nenergi zed</w>\ndel s</w>\nwith draws</w>\nst les</w>\nsar castic</w>\nram esh\nincredi bles</w>\nlock hart</w>\nya wn</w>\nultimatefan live</w>\noooooooo oooooooo\nmu en\nguru dev</w>\nte er</w>\npe eling</w>\nnew snow</w>\nlingui stics</w>\ndirec tv</w>\nag end\nuni lever</w>\nru ger</w>\nhan dedly</w>\nero se</w>\nli mel\nthe c\nroyal ties</w>\nfini shers</w>\nnr g</w>\nm gt</w>\nfid get</w>\ncom ps</w>\nbac on\naggre ssively</w>\nab it</w>\nch Ã¢\ntar de</w>\nslu gger</w>\nq anda</w>\ngre ening</w>\nd ats</w>\nensla ved</w>\nspec tor</w>\no ye\nfre ef\nb hand\nstop brexit</w>\nmis conceptions</w>\ncav a</w>\nðŁĺįðŁĺįðŁĺįðŁĺį ðŁĺįðŁĺįðŁĺįðŁĺį\nmultit asking</w>\nhou sel\nferre ira</w>\ncen time\nank les</w>\njo dh\nhel ly</w>\nfro me</w>\nout tuesday</w>\nnar nia</w>\nbal aji</w>\nl bloggers</w>\njyo ti</w>\nðŁį ĩ</w>\nlan cia</w>\ncap ri\ny ap\nnat ash\ndown fall</w>\n.\" âĢĶ</w>\nÃ ®\nligam ent</w>\ncoat ings</w>\nai ded</w>\nhi ko</w>\nfall ing\nencryp ted</w>\nyeg food</w>\ninfringe ment</w>\ncu di</w>\nce p</w>\nðŁĺį ðŁĺĤ</w>\ntra d\nsuper rugby</w>\ned win\nwh iche\nvi meo</w>\nlay ne</w>\nin vigor\nhe he\ndubrov nik</w>\nbie ber\nu tr\nsham an</w>\nop ers</w>\nham ill</w>\nen ig</w>\ndi f</w>\nar um</w>\nscrap book</w>\nmin h</w>\ndiver gence</w>\nmckin non</w>\nlife time\nguter res</w>\nwil le\nple as</w>\npatt y\nmic ron\nk z\ndom aine</w>\nru sher</w>\nm ds</w>\nches ney</w>\nscrew driver</w>\nâģ© ,</w>\nsle dge</w>\nhau er</w>\nchan a</w>\nstam ina</w>\nsprink ler</w>\npl n</w>\nhe ff\nbol ton\nom on\ncar rington</w>\naccor dion</w>\njor ge\ninter ception</w>\nin puts</w>\ngu ll\ntran scription</w>\nvanu atu</w>\nit ical</w>\neth os</w>\ntic h</w>\nspac ey</w>\npee king</w>\nu mi\nha ger\npsycho tic</w>\nilli an\nilli a</w>\nbonnar oo</w>\nan ese</w>\npu c\nlaghate parth</w>\nen hall</w>\neconom ical</w>\ndre dge</w>\n% -</w>\nu we</w>\ntu bular</w>\nscoun cil</w>\npe asants</w>\nfl er</w>\ntumb ler</w>\nhe p</w>\nford ham</w>\nrow ley</w>\niniti als</w>\nev asion</w>\ner nation</w>\nplu gins</w>\ncoch ran</w>\nc attle\nacid ity</w>\nðŁİĬ ðŁİī</w>\nre grann</w>\njump man</w>\nef ace</w>\nx ma\npatri archy</w>\nesco bar</w>\ncristi an</w>\ntip ton</w>\nnu eva</w>\nhack ney\nback seat</w>\nkill arney</w>\naid an\nsta dion</w>\nsimul taneous</w>\nida ho\na je\nu th\nfigu re\nclo s</w>\nbur k\nvolun tar\nrec ite</w>\nmacfar lane</w>\ncur few</w>\nbou do\nw gn\nsti x</w>\nsla p\nscrat ched</w>\nphilli p\njour ne\nex pelled</w>\nwa z</w>\nu ke\ntati ana</w>\nou e</w>\nho pp\ndimit ri</w>\nðŁĵ £\nmato logist</w>\nelectri fying</w>\nblu ffs</w>\nbill smafia</w>\naz cardinals</w>\ny aa\nx mas\nshar a</w>\nr ith</w>\ng ills</w>\ndre s\nbar ton\nauthori zation</w>\nimperi alism</w>\nhome of\nto do\nfoot path</w>\nband width</w>\nvisit spain</w>\nmoh sin</w>\nerup ted</w>\nmi ki</w>\ninsig nia</w>\nmike l</w>\nss h</w>\nger a</w>\nbank holiday\naw an\nt weak</w>\nstar craft</w>\ne al\nconstruc tion\nskelet ons</w>\nle ep\nine m</w>\nbar clay\nship wreck</w>\nmonsi eur</w>\nyo h</w>\nron t</w>\nform ative</w>\nser o\nle p\nhorse man</w>\nhoo sier</w>\nhaz mat</w>\ncylin ders</w>\ncen ti\nðŁĴ¥ðŁĴ¥ ðŁĴ¥</w>\nre em</w>\nna ire</w>\nmus ically</w>\ngras shopper</w>\nest onian</w>\ntermin ology</w>\nro main</w>\nblogger rt</w>\ntox in</w>\nstan ce\ncultiv ated</w>\nan ast\nðŁĲ į\nshi mano</w>\ngo pher</w>\nene i</w>\nrecycla ble</w>\ngam ification</w>\nfight for\nc q\navoc ados</w>\nke ys\neli ke\ngly cer\nshak ur</w>\nmobili zation</w>\ngal ley</w>\nexpla in\nex changed</w>\npe th</w>\nobe dience</w>\nilla ge</w>\nen nis\nãĥ ŀ\nwi v</w>\nwalla bies</w>\nma ar</w>\nig ers</w>\nfin tech\nfin alized</w>\nwo j\nmeaning less</w>\nin field</w>\nonna ise</w>\ne et</w>\nbron te</w>\npass ages</w>\nðŁĳ §\nstrick land</w>\nnorthern lights</w>\nlom ond</w>\nh tc\nwr ay</w>\nshi fter</w>\ndi alog</w>\nðŁį į</w>\n>> >>>></w>\nte atime</w>\nste ch\nsic huan</w>\nqu ill</w>\nfran ca\ncomple mentary</w>\nbar rington</w>\nmarcu s\nmal am</w>\ngoo oo</w>\nfor sa\nelec tra</w>\naf s</w>\nâĹ Ĩ</w>\ntri fe\nsn azzy</w>\nfo lia</w>\nand olan</w>\nafter dark</w>\nwood son</w>\nstra de</w>\nlitt lest</w>\no gun\ncon wy</w>\nco wards</w>\nðŁĺĤðŁĺĤðŁĺĤðŁĺĤ ðŁĺĤðŁĺĤðŁĺĤ</w>\níĬ ¸\nse ul\nmur phy\ndun ks</w>\nkapil shar\njo achim</w>\nwom ack</w>\nequal ity\naver ages</w>\na ine\nðŁ¦ Ī</w>\ntac ular</w>\ndis ability\nu ked\nmid century</w>\nbar thol\nteas ers</w>\ntab ern\nnj caa</w>\nsp out</w>\nop i</w>\nku bball</w>\nbl om\nso ar\npopu lism</w>\nmeth yl\nðŁĳĬ ðŁı¼\no spre\nalo ils</w>\nðŁĵ ĸ\nðŁĮ ļ\nx er\nsp illing</w>\npubl ica</w>\ncar dam\nadi sh</w>\nsa cha</w>\np kg</w>\nbu da</w>\nlyric ist</w>\ni bc</w>\ngru mp\nho ver</w>\nhal ep</w>\nanti body</w>\nanem one</w>\nâĻ¥âĻ¥ âĻ¥âĻ¥\nm cl\nlitho graph</w>\ncc u</w>\ns fest</w>\npath ic</w>\ncalli ster</w>\notta wa\ngun sn\nrut ger\nhali but</w>\nen vision</w>\ndifferenti ate</w>\nðŁļĢ ðŁļĢ\npir an\nlat el\nuc n</w>\ntrou bad\nra ine\nfierc ely</w>\nlearn english</w>\nlea se\nwex mondays</w>\nem it</w>\ndray ton</w>\nbur rell</w>\nscuba diving</w>\nhol ler</w>\ndr u</w>\nclo cked</w>\nw ral</w>\nap ro</w>\ntrans lucent</w>\nw bo</w>\npatri arch</w>\nmo ja\nlan nister</w>\nfish ery</w>\nne derland</w>\nmil dly</w>\nmi rai</w>\nma ko</w>\nja p</w>\nðŁĺ©ðŁĺ© ðŁĺ©</w>\npro statec\np anna</w>\nar ama</w>\nunder taking</w>\ntomp kins</w>\nne op\nsoli ds</w>\nsav oury</w>\ne ames</w>\ncut lery</w>\nwood bridge</w>\nsteam er</w>\nri zzo</w>\nwild cat\nrat na</w>\nlamin ated</w>\nkin eni</w>\njal ap\nai des</w>\nacknowle dges</w>\n?! ?!?!</w>\n! ðŁİī</w>\nw afc</w>\nmag gio</w>\nha ves</w>\ndar je\nof i</w>\ngr il\nv asi\nbru x\nmo hd</w>\nfake speare</w>\narn old\nr mb</w>\nfor be\nwal leye</w>\nro di\ntherapeu tics</w>\nstrate gi\nob ste\nmu dder</w>\ndownload able</w>\ndd ings</w>\nd ca</w>\nasi angames</w>\ncampe on\nappropri ation</w>\nth century</w>\nram atta</w>\ndra ped</w>\nbul lion</w>\nmu c</w>\none x</w>\nse greg\nophel ia</w>\nbod ily</w>\nâĿ¤ ðŁĺį</w>\nwi zar\nte ased</w>\nade my</w>\nto id</w>\nsur a</w>\nlazar us</w>\nsn ickers</w>\nma se\nlo h\nbow ed</w>\nbibli o\nx change</w>\nhar lan</w>\ngho shal</w>\nflavor ful</w>\nbha gat</w>\nalle z</w>\nwhiche ver</w>\nten stein</w>\ndisc er\norgan iser</w>\nmt g\ndream liner</w>\nt se\nhok kaido</w>\nmo k\nindulg ent</w>\nhick man</w>\nblin ded</w>\nal yn\naaa ah</w>\nsp ool</w>\nlough borough</w>\ninter pret\net v\naristo tle</w>\noptimi zing</w>\navici i</w>\nmadu rai</w>\nju li</w>\nnaw az\nmat chups</w>\nab ide</w>\npaint ing\nw elling</w>\nvel i</w>\noctag on</w>\nin scribed</w>\npo king</w>\nplac er</w>\nlife cycle</w>\nkili g</w>\ng sp</w>\neli ves</w>\ncle ments</w>\nna sheed</w>\nme sut</w>\nincarcer ated</w>\ndist illed</w>\nwal ang</w>\ndelic acy</w>\ndel gado</w>\nche z\nch ita</w>\nad ero</w>\ntu x</w>\npati l</w>\no do\nabh cosmetics</w>\ntv c</w>\np bc</w>\nin accurate</w>\nhardwork paysoff</w>\nball er\nquot ation</w>\nmerchandi sing</w>\nga stri\ndefen ses</w>\ndro gba</w>\nbex hill</w>\nban kno\nwin ona</w>\nsi eg\np gs</w>\nhahah ha</w>\nagu chi</w>\nsu bram\nmirac le\nde sch\nli bre\nba cher</w>\nent ine</w>\nbbcra di\nlou dest</w>\nr ps</w>\npi erc\nfr yer</w>\nstorm trooper</w>\nrafael nadal</w>\npas co</w>\nexhau stion</w>\nepic onetsy</w>\nrc tid</w>\nkel lie</w>\nga ines</w>\nd bz</w>\nsm riti\ns bridge</w>\nlim ited\ncla w\ntechnic al\nbio graphical</w>\nado red</w>\nà¸ °</w>\nexclu de</w>\nac adia</w>\nkey boards</w>\nfur man</w>\nso ca</w>\nsur u</w>\nni ps</w>\nsw aps</w>\nserver less</w>\nrun e</w>\npu ffy</w>\nnorth ampton\nnish ings</w>\nhen der\ncartri dges</w>\ngun shot</w>\nðŁĵ ¹</w>\nfil ament</w>\nrespon dents</w>\npey ton\nmountaine er</w>\nmer ging</w>\nlife span</w>\nintimid ation</w>\np afc</w>\nnl wx</w>\nexpan sive</w>\npur r\nf ck</w>\nca e</w>\nat ti\ntele thon</w>\nso hn</w>\nmend el\nlo pes</w>\ndor i</w>\nun broken</w>\nte red\ntast ings</w>\nin active</w>\ndisin tegr\nt assel</w>\nshare the\npi ano\nis lay</w>\nair space</w>\nz awa</w>\nricci ardo</w>\nming ton\nfresh er</w>\ncur ry\nre vs</w>\npharo ah</w>\nh mv</w>\nexhilar ating</w>\nwh oo</w>\nlin kin</w>\nkri spy</w>\ncompeten cy</w>\nste wards</w>\nne bu\nkat su\nad mins</w>\nbaz ar</w>\nas ar</w>\ngiving back</w>\ns summit</w>\nsong z</w>\nlin us</w>\nraj kumar</w>\nfarm ington</w>\nfanta sia</w>\nðŁĺ´ ðŁĺ´</w>\nso bri\nlis se</w>\nbarry more</w>\npri sm\nblo b</w>\nsen ew\nmono xide</w>\nexp ire</w>\neigh teen</w>\ndi pper</w>\nxi ao</w>\nkil t</w>\nhin ch\nbbc sport</w>\nbam boo\np ter\nex al\nðŁ¦ ĭ\nham lin</w>\nexpe ditions</w>\nstar gazing</w>\nfood security</w>\nwy lie</w>\nul f</w>\nst ingly</w>\non storm</w>\nlo eb</w>\nbro ome</w>\nbn ha</w>\npancre atic</w>\neli ve\n!!!!!!!! !!!</w>\nther apper</w>\northo pedic</w>\navengers endgame</w>\nantit rust</w>\nìļ °</w>\ngo te</w>\nom d</w>\noff side</w>\ngy llen\nwin eries</w>\nwhite water</w>\nad l</w>\nlu pita</w>\nexce eds</w>\nconsi sted</w>\nchew bacca</w>\nash leigh</w>\nnhl jets</w>\nis san\nsh ld</w>\nhay at</w>\ncran berries</w>\nðŁ¤ĺ ðŁı½</w>\nrock the\nspring training</w>\nfall out\ndairy free</w>\nwa j</w>\nun decided</w>\nso wn</w>\nrc n</w>\nnorth wales</w>\nhtt r</w>\nfu mble</w>\nd its</w>\ncomp elled</w>\npopu list</w>\nmin ted</w>\nblan chett</w>\n. ''</w>\npro pulsion</w>\nm illa</w>\nau berg\nher tz</w>\nh ta</w>\nu daipur</w>\nserendip ity</w>\nazte cs</w>\nals ace</w>\nðŁĲ ĳ</w>\nlu n</w>\nsho es\nchar li</w>\ngar za</w>\nðŁĴ Ł\npro biotics</w>\nfox tv</w>\nol is</w>\nmi ff\nloc alized</w>\ndiffu ser</w>\nsi gue</w>\nfun ko\nrend ous</w>\nðŁĴ ĳ</w>\njeky ll</w>\n"
  },
  {
    "path": "configs/sdxl-refiner/tokenizer_2/special_tokens_map.json",
    "content": "{\n  \"bos_token\": {\n    \"content\": \"<|startoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": true,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"eos_token\": {\n    \"content\": \"<|endoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": true,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"pad_token\": \"!\",\n  \"unk_token\": {\n    \"content\": \"<|endoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": true,\n    \"rstrip\": false,\n    \"single_word\": false\n  }\n}\n"
  },
  {
    "path": "configs/sdxl-refiner/tokenizer_2/tokenizer_config.json",
    "content": "{\n  \"add_prefix_space\": false,\n  \"bos_token\": {\n    \"__type\": \"AddedToken\",\n    \"content\": \"<|startoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": true,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"clean_up_tokenization_spaces\": true,\n  \"do_lower_case\": true,\n  \"eos_token\": {\n    \"__type\": \"AddedToken\",\n    \"content\": \"<|endoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": true,\n    \"rstrip\": false,\n    \"single_word\": false\n  },\n  \"errors\": \"replace\",\n  \"model_max_length\": 77,\n  \"pad_token\": \"!\",\n  \"tokenizer_class\": \"CLIPTokenizer\",\n  \"unk_token\": {\n    \"__type\": \"AddedToken\",\n    \"content\": \"<|endoftext|>\",\n    \"lstrip\": false,\n    \"normalized\": true,\n    \"rstrip\": false,\n    \"single_word\": false\n  }\n}\n"
  },
  {
    "path": "configs/sdxl-refiner/tokenizer_2/vocab.json",
    "content": "{\n  \"!\": 0,\n  \"!!\": 1443,\n  \"!!!\": 11194,\n  \"!!!!\": 4003,\n  \"!!!!!!!!\": 11281,\n  \"!!!!!!!!!!!!!!!!\": 30146,\n  \"!!!!!!!!!!!</w>\": 49339,\n  \"!!!!!!!!!!</w>\": 35579,\n  \"!!!!!!!!!</w>\": 28560,\n  \"!!!!!!!!</w>\": 21622,\n  \"!!!!!!!</w>\": 15203,\n  \"!!!!!!</w>\": 9168,\n  \"!!!!!</w>\": 5203,\n  \"!!!!</w>\": 2360,\n  \"!!!\\\"</w>\": 28048,\n  \"!!!)</w>\": 42532,\n  \"!!!</w>\": 995,\n  \"!!\\\"</w>\": 20556,\n  \"!!#</w>\": 34997,\n  \"!!)</w>\": 28352,\n  \"!!</w>\": 748,\n  \"!!@</w>\": 40705,\n  \"!\\\"</w>\": 2947,\n  \"!\\\"@</w>\": 43819,\n  \"!#</w>\": 9670,\n  \"!'</w>\": 13222,\n  \"!),</w>\": 37904,\n  \"!).</w>\": 26225,\n  \"!)</w>\": 4571,\n  \"!*</w>\": 37737,\n  \"!,</w>\": 29325,\n  \"!-</w>\": 43499,\n  \"!...</w>\": 22121,\n  \"!..</w>\": 35475,\n  \"!.</w>\": 22517,\n  \"!:)</w>\": 31671,\n  \"!:</w>\": 17545,\n  \"!</w>\": 256,\n  \"!?!</w>\": 29767,\n  \"!?!?</w>\": 47081,\n  \"!?</w>\": 6004,\n  \"!@</w>\": 15117,\n  \"!]</w>\": 34466,\n  \"!âĢ¦</w>\": 35068,\n  \"!âĿ¤ï¸ı</w>\": 32559,\n  \"!ðŁİī</w>\": 49085,\n  \"!ðŁĺĬ</w>\": 43434,\n  \"!ðŁĺį</w>\": 36438,\n  \"\\\"\": 1,\n  \"\\\"!</w>\": 10377,\n  \"\\\"\\\"\": 41530,\n  \"\\\"\\\"\\\"</w>\": 25539,\n  \"\\\"\\\"</w>\": 8575,\n  \"\\\"#</w>\": 8345,\n  \"\\\"'</w>\": 31065,\n  \"\\\"(</w>\": 32741,\n  \"\\\")</w>\": 13112,\n  \"\\\",</w>\": 4332,\n  \"\\\"-</w>\": 9375,\n  \"\\\"....</w>\": 37785,\n  \"\\\"...</w>\": 9049,\n  \"\\\"..</w>\": 25403,\n  \"\\\".</w>\": 2811,\n  \"\\\"/</w>\": 39486,\n  \"\\\":</w>\": 7811,\n  \"\\\";</w>\": 37549,\n  \"\\\"</w>\": 257,\n  \"\\\"?</w>\": 11727,\n  \"\\\"@</w>\": 1512,\n  \"\\\"@_</w>\": 20236,\n  \"\\\"[</w>\": 36930,\n  \"\\\"âĢ¦</w>\": 33993,\n  \"\\\"âĢĶ</w>\": 41151,\n  \"#\": 2,\n  \"##</w>\": 15483,\n  \"#...</w>\": 31491,\n  \"#:</w>\": 30144,\n  \"#</w>\": 258,\n  \"#@</w>\": 35062,\n  \"#âĢ¦</w>\": 12834,\n  \"#âĢİ</w>\": 34262,\n  \"$\": 3,\n  \"$$\": 24233,\n  \"$$$</w>\": 31859,\n  \"$$</w>\": 14929,\n  \"$)</w>\": 39460,\n  \"$.</w>\": 34682,\n  \"$</w>\": 259,\n  \"%\": 4,\n  \"%!</w>\": 35070,\n  \"%),</w>\": 37819,\n  \"%)</w>\": 16063,\n  \"%,</w>\": 14505,\n  \"%-</w>\": 48784,\n  \"%.</w>\": 12475,\n  \"%;</w>\": 33379,\n  \"%</w>\": 260,\n  \"&\": 5,\n  \"&&</w>\": 27791,\n  \"&</w>\": 261,\n  \"'\": 6,\n  \"'!</w>\": 13781,\n  \"'\\\"</w>\": 19479,\n  \"'#</w>\": 15319,\n  \"''\": 46594,\n  \"''</w>\": 8445,\n  \"')</w>\": 19175,\n  \"',</w>\": 5662,\n  \"'-</w>\": 26152,\n  \"'...</w>\": 20474,\n  \"'.</w>\": 4645,\n  \"':</w>\": 7182,\n  \"';</w>\": 44517,\n  \"'</w>\": 262,\n  \"'?</w>\": 17242,\n  \"'@</w>\": 26397,\n  \"'d</w>\": 1896,\n  \"'ll</w>\": 1342,\n  \"'m</w>\": 880,\n  \"'re</w>\": 982,\n  \"'s</w>\": 568,\n  \"'t</w>\": 713,\n  \"'ve</w>\": 1200,\n  \"'âĢ¦</w>\": 42120,\n  \"(\": 7,\n  \"(!)</w>\": 30253,\n  \"(\\\"</w>\": 18741,\n  \"(#</w>\": 6229,\n  \"($)</w>\": 46597,\n  \"($</w>\": 15186,\n  \"(&</w>\": 15042,\n  \"('</w>\": 18235,\n  \"((\": 22944,\n  \"(((</w>\": 33287,\n  \"((</w>\": 13796,\n  \"().</w>\": 41737,\n  \"()</w>\": 8475,\n  \"(*\": 48004,\n  \"(*</w>\": 39575,\n  \"(+</w>\": 12903,\n  \"(-</w>\": 20228,\n  \"(...</w>\": 45159,\n  \"(.</w>\": 43055,\n  \"(:</w>\": 8528,\n  \"(;</w>\": 23983,\n  \"(</w>\": 263,\n  \"(?)</w>\": 22885,\n  \"(@</w>\": 2181,\n  \"(Â£</w>\": 33987,\n  \"(Â©</w>\": 44886,\n  \"(ðŁĵ·:</w>\": 34610,\n  \"(ðŁĵ·</w>\": 37999,\n  \"(ðŁĵ¸:</w>\": 44422,\n  \"(ðŁĵ¸</w>\": 45204,\n  \")\": 8,\n  \")!!</w>\": 47518,\n  \")!</w>\": 7805,\n  \")\\\"</w>\": 13046,\n  \")#</w>\": 39981,\n  \")'</w>\": 23613,\n  \")(</w>\": 27956,\n  \"))\": 13720,\n  \"))))\": 42911,\n  \"))))</w>\": 34181,\n  \")))</w>\": 18305,\n  \"))</w>\": 5167,\n  \"),</w>\": 2361,\n  \")-</w>\": 19034,\n  \")...</w>\": 15274,\n  \")..</w>\": 41822,\n  \").</w>\": 1818,\n  \")/</w>\": 26616,\n  \"):</w>\": 4143,\n  \");</w>\": 19686,\n  \")</w>\": 264,\n  \")?</w>\": 18765,\n  \")@</w>\": 41928,\n  \")_/\": 45028,\n  \")_/Â¯</w>\": 45781,\n  \")âĢ¦</w>\": 41844,\n  \"*\": 9,\n  \"*)</w>\": 30956,\n  \"**\": 9825,\n  \"****\": 21326,\n  \"********\": 42974,\n  \"*****</w>\": 43571,\n  \"****</w>\": 25167,\n  \"***</w>\": 7829,\n  \"**</w>\": 4441,\n  \"*,</w>\": 41895,\n  \"*-*</w>\": 23568,\n  \"*.</w>\": 31304,\n  \"*</w>\": 265,\n  \"*_*</w>\": 44535,\n  \"+\": 10,\n  \"+)</w>\": 34810,\n  \"++\": 47298,\n  \"+++</w>\": 35986,\n  \"++</w>\": 19056,\n  \"+,</w>\": 35885,\n  \"+.</w>\": 25238,\n  \"+/-</w>\": 47614,\n  \"+</w>\": 266,\n  \",\": 11,\n  \",\\\"</w>\": 3823,\n  \",#</w>\": 11215,\n  \",&</w>\": 26905,\n  \",'</w>\": 10599,\n  \",)</w>\": 44493,\n  \",,\": 21340,\n  \",,,,</w>\": 33225,\n  \",,,</w>\": 14811,\n  \",,</w>\": 8844,\n  \",-</w>\": 29821,\n  \",...</w>\": 20365,\n  \",.</w>\": 41277,\n  \",</w>\": 267,\n  \",@</w>\": 13975,\n  \",âĢ¦</w>\": 14601,\n  \"-\": 12,\n  \"-\\\"</w>\": 18646,\n  \"-#</w>\": 10151,\n  \"-$</w>\": 24946,\n  \"-'</w>\": 28010,\n  \"-(</w>\": 33345,\n  \"-)</w>\": 3535,\n  \"-*</w>\": 21527,\n  \"--\": 2154,\n  \"----\": 5753,\n  \"--------\": 11772,\n  \"----------------\": 23122,\n  \"----</w>\": 30164,\n  \"----></w>\": 35999,\n  \"---</w>\": 11079,\n  \"---></w>\": 14518,\n  \"--</w>\": 2432,\n  \"--></w>\": 6422,\n  \"-->></w>\": 47252,\n  \"-.-</w>\": 32765,\n  \"-...</w>\": 43147,\n  \"-.</w>\": 44040,\n  \"-</w>\": 268,\n  \"-></w>\": 5081,\n  \"-@</w>\": 10087,\n  \"-_-</w>\": 27227,\n  \"-__\": 42718,\n  \"-âĢ¦</w>\": 30047,\n  \".\": 13,\n  \".!!</w>\": 37805,\n  \".!</w>\": 14030,\n  \".\\\"\": 18650,\n  \".\\\"-</w>\": 21234,\n  \".\\\"</w>\": 1081,\n  \".\\\"âĢĶ</w>\": 48703,\n  \".#</w>\": 5014,\n  \".'\\\"</w>\": 41558,\n  \".''</w>\": 49379,\n  \".'</w>\": 5938,\n  \".(</w>\": 22294,\n  \".)</w>\": 5376,\n  \".*</w>\": 26145,\n  \".,</w>\": 5276,\n  \".-</w>\": 12481,\n  \"..\": 608,\n  \"..!!</w>\": 23707,\n  \"..!</w>\": 17994,\n  \"..\\\"</w>\": 15229,\n  \"..#</w>\": 15735,\n  \"..,</w>\": 47143,\n  \"...\": 3002,\n  \"...!!!</w>\": 38351,\n  \"...!!</w>\": 39915,\n  \"...!</w>\": 16860,\n  \"...\\\"</w>\": 5240,\n  \"...#</w>\": 8195,\n  \"...&</w>\": 44979,\n  \"...'</w>\": 23167,\n  \"...(</w>\": 37981,\n  \"...)</w>\": 14040,\n  \"...,</w>\": 42717,\n  \"....\": 2386,\n  \"....\\\"</w>\": 26689,\n  \"....#</w>\": 20346,\n  \".....\": 34151,\n  \".....#</w>\": 38867,\n  \"........\": 8246,\n  \"................\": 24855,\n  \"............</w>\": 42965,\n  \"...........</w>\": 35008,\n  \"..........</w>\": 25526,\n  \".........</w>\": 19881,\n  \"........</w>\": 14720,\n  \".......</w>\": 9917,\n  \"......</w>\": 5590,\n  \".....</w>\": 3104,\n  \"....</w>\": 1390,\n  \"....@</w>\": 29790,\n  \"...:</w>\": 34570,\n  \"...</w>\": 678,\n  \"...?</w>\": 16388,\n  \"...@</w>\": 12672,\n  \"..</w>\": 852,\n  \"..?</w>\": 23875,\n  \"..@</w>\": 21124,\n  \"./</w>\": 31975,\n  \".:</w>\": 15811,\n  \".;</w>\": 47596,\n  \".</w>\": 269,\n  \".<</w>\": 29442,\n  \".?</w>\": 29294,\n  \".@</w>\": 1230,\n  \".]</w>\": 33511,\n  \".~</w>\": 42651,\n  \".âĢ¦</w>\": 18047,\n  \".âĿ¤ï¸ı</w>\": 39085,\n  \".âłĢ</w>\": 30097,\n  \".ðŁĺĤ</w>\": 46580,\n  \"/\": 14,\n  \"/#</w>\": 13217,\n  \"/$</w>\": 36266,\n  \"/-</w>\": 19811,\n  \"/.</w>\": 39382,\n  \"//\": 15348,\n  \"////\": 46271,\n  \"///</w>\": 22734,\n  \"//</w>\": 3502,\n  \"/</w>\": 270,\n  \"/@</w>\": 8216,\n  \"0\": 15,\n  \"0</w>\": 271,\n  \"1\": 16,\n  \"1</w>\": 272,\n  \"2\": 17,\n  \"2</w>\": 273,\n  \"3\": 18,\n  \"3</w>\": 274,\n  \"4\": 19,\n  \"4</w>\": 275,\n  \"5\": 20,\n  \"5</w>\": 276,\n  \"6\": 21,\n  \"6</w>\": 277,\n  \"7\": 22,\n  \"7</w>\": 278,\n  \"8\": 23,\n  \"8</w>\": 279,\n  \"9\": 24,\n  \"9</w>\": 280,\n  \":\": 25,\n  \":\\\"\": 29498,\n  \":\\\")</w>\": 46432,\n  \":\\\"</w>\": 12089,\n  \":#</w>\": 26625,\n  \":$</w>\": 33769,\n  \":'\": 8017,\n  \":'(</w>\": 21250,\n  \":')</w>\": 10701,\n  \":'</w>\": 23851,\n  \":((</w>\": 42496,\n  \":(</w>\": 5965,\n  \":)\": 11070,\n  \":))))</w>\": 42339,\n  \":)))</w>\": 21840,\n  \":))</w>\": 10164,\n  \":).</w>\": 39010,\n  \":)</w>\": 1408,\n  \":*</w>\": 12617,\n  \":-\": 13021,\n  \":-(</w>\": 25137,\n  \":-)</w>\": 4223,\n  \":-</w>\": 10323,\n  \":...</w>\": 42140,\n  \"://</w>\": 12441,\n  \":/</w>\": 13604,\n  \"::\": 33077,\n  \":::</w>\": 43818,\n  \"::</w>\": 9788,\n  \":</w>\": 281,\n  \":></w>\": 39677,\n  \":@</w>\": 14339,\n  \":]</w>\": 43486,\n  \":|</w>\": 45986,\n  \":âĢ¦</w>\": 22365,\n  \";\": 26,\n  \";))</w>\": 41873,\n  \";)</w>\": 3661,\n  \";-\": 35657,\n  \";-)</w>\": 10475,\n  \";;\": 34824,\n  \";;</w>\": 24492,\n  \";</w>\": 282,\n  \"<\": 27,\n  \"<-</w>\": 47280,\n  \"</</w>\": 34308,\n  \"<<\": 24588,\n  \"<</w>\": 283,\n  \"<<</w>\": 16482,\n  \"<<<</w>\": 35054,\n  \"<|endoftext|>\": 49407,\n  \"<|startoftext|>\": 49406,\n  \"=\": 28,\n  \"=))</w>\": 39587,\n  \"=)</w>\": 17840,\n  \"=</w>\": 284,\n  \"==\": 11748,\n  \"====\": 21734,\n  \"========\": 38952,\n  \"==></w>\": 29688,\n  \"=></w>\": 9714,\n  \">\": 29,\n  \">.<</w>\": 38507,\n  \">:</w>\": 36196,\n  \"></w>\": 285,\n  \"><</w>\": 28015,\n  \">>\": 8270,\n  \">></w>\": 2988,\n  \">>></w>\": 6395,\n  \">>>>\": 18461,\n  \">>>></w>\": 18435,\n  \">>>>></w>\": 32972,\n  \">>>>>></w>\": 48947,\n  \">>>>>>>>\": 41947,\n  \">_\": 44144,\n  \"?\": 30,\n  \"?!\": 9785,\n  \"?!!</w>\": 25342,\n  \"?!\\\"</w>\": 29315,\n  \"?!</w>\": 2835,\n  \"?!?!</w>\": 16349,\n  \"?!?!?!</w>\": 49084,\n  \"?!?!?</w>\": 37619,\n  \"?!?</w>\": 11395,\n  \"?\\\"</w>\": 3283,\n  \"?#</w>\": 24018,\n  \"?'</w>\": 13610,\n  \"?)</w>\": 9626,\n  \"?,</w>\": 41628,\n  \"?...</w>\": 22641,\n  \"?..</w>\": 43905,\n  \"?.</w>\": 41251,\n  \"?:</w>\": 21067,\n  \"?</w>\": 286,\n  \"??\": 5195,\n  \"??!!</w>\": 43219,\n  \"??!</w>\": 37341,\n  \"??\\\"</w>\": 44996,\n  \"??</w>\": 2197,\n  \"???\": 40017,\n  \"???</w>\": 3824,\n  \"????\": 15936,\n  \"????</w>\": 10362,\n  \"?????</w>\": 21370,\n  \"??????</w>\": 34589,\n  \"????????\": 45091,\n  \"?@</w>\": 29258,\n  \"?ðŁ¤Ķ</w>\": 47928,\n  \"@\": 31,\n  \"@#</w>\": 39397,\n  \"@.</w>\": 43730,\n  \"@/</w>\": 28639,\n  \"@</w>\": 287,\n  \"@@</w>\": 30314,\n  \"@_</w>\": 2692,\n  \"@__</w>\": 17042,\n  \"@___</w>\": 48308,\n  \"A\": 32,\n  \"A</w>\": 288,\n  \"B\": 33,\n  \"B</w>\": 289,\n  \"C\": 34,\n  \"C</w>\": 290,\n  \"D\": 35,\n  \"D</w>\": 291,\n  \"E\": 36,\n  \"E</w>\": 292,\n  \"F\": 37,\n  \"F</w>\": 293,\n  \"G\": 38,\n  \"G</w>\": 294,\n  \"H\": 39,\n  \"H</w>\": 295,\n  \"I\": 40,\n  \"I</w>\": 296,\n  \"J\": 41,\n  \"J</w>\": 297,\n  \"K\": 42,\n  \"K</w>\": 298,\n  \"L\": 43,\n  \"L</w>\": 299,\n  \"M\": 44,\n  \"M</w>\": 300,\n  \"N\": 45,\n  \"N</w>\": 301,\n  \"O\": 46,\n  \"O</w>\": 302,\n  \"P\": 47,\n  \"P</w>\": 303,\n  \"Q\": 48,\n  \"Q</w>\": 304,\n  \"R\": 49,\n  \"R</w>\": 305,\n  \"S\": 50,\n  \"S</w>\": 306,\n  \"T\": 51,\n  \"T</w>\": 307,\n  \"U\": 52,\n  \"U</w>\": 308,\n  \"V\": 53,\n  \"V</w>\": 309,\n  \"W\": 54,\n  \"W</w>\": 310,\n  \"X\": 55,\n  \"X</w>\": 311,\n  \"Y\": 56,\n  \"Y</w>\": 312,\n  \"Z\": 57,\n  \"Z</w>\": 313,\n  \"[\": 58,\n  \"[#</w>\": 11115,\n  \"[...\": 39975,\n  \"[...]</w>\": 43790,\n  \"[</w>\": 314,\n  \"[@</w>\": 15148,\n  \"[]</w>\": 22240,\n  \"\\\\\": 59,\n  \"\\\\'</w>\": 41239,\n  \"\\\\</w>\": 315,\n  \"]\": 60,\n  \"]\\\"</w>\": 39434,\n  \"],</w>\": 34067,\n  \"].</w>\": 26262,\n  \"]:</w>\": 21641,\n  \"]</w>\": 316,\n  \"][#</w>\": 39009,\n  \"][</w>\": 29329,\n  \"^\": 61,\n  \"^)</w>\": 30720,\n  \"^-\": 43516,\n  \"^.\": 31552,\n  \"^.^</w>\": 35791,\n  \"^</w>\": 317,\n  \"^^\": 34454,\n  \"^^</w>\": 9064,\n  \"^_\": 14423,\n  \"^_^</w>\": 15995,\n  \"_\": 62,\n  \"_'</w>\": 44701,\n  \"_(</w>\": 36951,\n  \"_)</w>\": 37393,\n  \"_*</w>\": 36237,\n  \"_,</w>\": 31417,\n  \"_-</w>\": 23193,\n  \"_.</w>\": 26841,\n  \"_/\": 37647,\n  \"_:</w>\": 13109,\n  \"_</w>\": 318,\n  \"__\": 2355,\n  \"__:</w>\": 47043,\n  \"__</w>\": 3838,\n  \"___\": 43812,\n  \"___</w>\": 13530,\n  \"____\": 4727,\n  \"____</w>\": 25350,\n  \"_____</w>\": 38803,\n  \"________\": 9549,\n  \"________________\": 20115,\n  \"`\": 63,\n  \"`</w>\": 319,\n  \"a\": 64,\n  \"a</w>\": 320,\n  \"aa\": 1821,\n  \"aa</w>\": 3894,\n  \"aaa\": 14376,\n  \"aaa</w>\": 9583,\n  \"aaaa\": 6727,\n  \"aaaa</w>\": 19336,\n  \"aaaaa</w>\": 31095,\n  \"aaaaaa</w>\": 44413,\n  \"aaaaaaaa\": 23126,\n  \"aaaah</w>\": 49151,\n  \"aaah</w>\": 35856,\n  \"aaay</w>\": 37846,\n  \"aab</w>\": 34108,\n  \"aac\": 23251,\n  \"aac</w>\": 11346,\n  \"aad\": 20464,\n  \"aad</w>\": 35894,\n  \"aaf\": 37638,\n  \"aaf</w>\": 31534,\n  \"aag\": 42174,\n  \"aah</w>\": 28990,\n  \"aaj\": 28727,\n  \"aaj</w>\": 43411,\n  \"aak\": 37739,\n  \"aal\": 22268,\n  \"aal</w>\": 30208,\n  \"aali\": 27896,\n  \"aaliyah</w>\": 46577,\n  \"aam\": 12943,\n  \"aam</w>\": 22775,\n  \"aama\": 45018,\n  \"aamaadmi\": 45563,\n  \"aamaadmiparty</w>\": 46406,\n  \"aamir</w>\": 27456,\n  \"aan\": 20705,\n  \"aan</w>\": 13426,\n  \"aand\": 38054,\n  \"aap\": 12023,\n  \"aap</w>\": 12052,\n  \"aapl</w>\": 34516,\n  \"aar\": 4695,\n  \"aar</w>\": 13234,\n  \"aard\": 46932,\n  \"aaron\": 13948,\n  \"aaron</w>\": 7709,\n  \"aas\": 28542,\n  \"aas</w>\": 32205,\n  \"aat\": 34018,\n  \"aat</w>\": 35004,\n  \"aau</w>\": 35426,\n  \"aay\": 38281,\n  \"aay</w>\": 40249,\n  \"aaz</w>\": 26770,\n  \"ab\": 596,\n  \"ab</w>\": 3937,\n  \"aba\": 44204,\n  \"aba</w>\": 11102,\n  \"abad\": 33444,\n  \"abad</w>\": 7155,\n  \"aban\": 41662,\n  \"aband\": 8595,\n  \"abandon</w>\": 28805,\n  \"abandoned</w>\": 11227,\n  \"abar\": 17860,\n  \"abar</w>\": 39805,\n  \"abas\": 25402,\n  \"abay</w>\": 43542,\n  \"abb\": 38954,\n  \"abb</w>\": 38297,\n  \"abba</w>\": 30870,\n  \"abbas\": 37494,\n  \"abbas</w>\": 24412,\n  \"abbey\": 31927,\n  \"abbey</w>\": 10132,\n  \"abbie</w>\": 39949,\n  \"abbo\": 13536,\n  \"abbot</w>\": 44046,\n  \"abbott\": 43737,\n  \"abbott</w>\": 15649,\n  \"abbrevi\": 44843,\n  \"abby\": 30586,\n  \"abby</w>\": 14694,\n  \"abc\": 13137,\n  \"abc</w>\": 5334,\n  \"abcnews</w>\": 31566,\n  \"abd</w>\": 44093,\n  \"abdel\": 46511,\n  \"abdomin\": 35335,\n  \"abdominal</w>\": 39328,\n  \"abdu\": 13361,\n  \"abduc\": 17884,\n  \"abducted</w>\": 31520,\n  \"abduction</w>\": 36984,\n  \"abdul\": 14227,\n  \"abdul</w>\": 15593,\n  \"abdullah</w>\": 21317,\n  \"abe\": 15856,\n  \"abe</w>\": 12734,\n  \"abee</w>\": 36037,\n  \"abel\": 31938,\n  \"abel</w>\": 25318,\n  \"abella</w>\": 46156,\n  \"aben\": 40865,\n  \"aber\": 7828,\n  \"aber</w>\": 41867,\n  \"aberdeen\": 30539,\n  \"aberdeen</w>\": 17236,\n  \"abh\": 27484,\n  \"abh</w>\": 33649,\n  \"abhcosmetics</w>\": 49189,\n  \"abhi\": 18113,\n  \"abhin\": 44045,\n  \"abhishek</w>\": 44502,\n  \"abi\": 16867,\n  \"abi</w>\": 14161,\n  \"abia</w>\": 48604,\n  \"abide</w>\": 49163,\n  \"abig\": 20863,\n  \"abigail</w>\": 25686,\n  \"abil\": 21135,\n  \"abilities</w>\": 8724,\n  \"ability\": 35146,\n  \"ability</w>\": 3024,\n  \"abit</w>\": 48668,\n  \"ablanc\": 33716,\n  \"able\": 10102,\n  \"able</w>\": 863,\n  \"abled</w>\": 10655,\n  \"ableg</w>\": 24055,\n  \"ables</w>\": 8486,\n  \"ableton</w>\": 47169,\n  \"ably</w>\": 6748,\n  \"abnormal</w>\": 40934,\n  \"abo\": 2889,\n  \"abo</w>\": 21861,\n  \"aboard</w>\": 11661,\n  \"abol\": 31768,\n  \"abolic</w>\": 46827,\n  \"abolish</w>\": 47403,\n  \"aboo</w>\": 42433,\n  \"abor\": 8416,\n  \"aboriginal</w>\": 20422,\n  \"abortion</w>\": 12336,\n  \"abortions</w>\": 43218,\n  \"aboss</w>\": 46401,\n  \"abou\": 36455,\n  \"abou</w>\": 44053,\n  \"abound</w>\": 41037,\n  \"abour</w>\": 46637,\n  \"about\": 20204,\n  \"about</w>\": 781,\n  \"abouts</w>\": 36339,\n  \"above\": 35019,\n  \"above</w>\": 4348,\n  \"aboy</w>\": 37077,\n  \"abpoli</w>\": 44779,\n  \"abq</w>\": 38767,\n  \"abr\": 44932,\n  \"abra\": 10694,\n  \"abra</w>\": 35087,\n  \"abraham\": 40623,\n  \"abraham</w>\": 15869,\n  \"abram\": 33255,\n  \"abrams</w>\": 29852,\n  \"abre\": 22472,\n  \"abre</w>\": 46756,\n  \"abri\": 28605,\n  \"abridged</w>\": 45333,\n  \"abroad</w>\": 11253,\n  \"abru\": 46295,\n  \"abs\": 18431,\n  \"abs</w>\": 11109,\n  \"absc\": 25389,\n  \"abscbn\": 44260,\n  \"abscbn</w>\": 45810,\n  \"absen\": 32453,\n  \"absence</w>\": 19240,\n  \"absent</w>\": 30363,\n  \"absol\": 4624,\n  \"absolu\": 7055,\n  \"absolut\": 4666,\n  \"absolute</w>\": 7501,\n  \"absolutely</w>\": 4703,\n  \"absor\": 14303,\n  \"absorb</w>\": 35806,\n  \"absorbed</w>\": 45059,\n  \"absorbing</w>\": 46412,\n  \"absorption</w>\": 42210,\n  \"abstr\": 7530,\n  \"abstract\": 23885,\n  \"abstract</w>\": 10197,\n  \"abstractart</w>\": 31170,\n  \"abstraction</w>\": 47696,\n  \"abstracts</w>\": 40065,\n  \"absur\": 21639,\n  \"absurd</w>\": 29757,\n  \"abt</w>\": 9850,\n  \"abu\": 9167,\n  \"abu</w>\": 11787,\n  \"abud\": 20180,\n  \"abudha\": 21450,\n  \"abudhabi</w>\": 25256,\n  \"abuja</w>\": 23371,\n  \"abun\": 20544,\n  \"abundance</w>\": 23236,\n  \"abundant</w>\": 31611,\n  \"abur\": 23377,\n  \"aburger</w>\": 46660,\n  \"abuse</w>\": 7678,\n  \"abused</w>\": 23855,\n  \"abuses</w>\": 37132,\n  \"abusing</w>\": 36558,\n  \"abusive</w>\": 26858,\n  \"abv</w>\": 34172,\n  \"aby\": 16342,\n  \"aby</w>\": 31378,\n  \"abyss</w>\": 33632,\n  \"abz</w>\": 42292,\n  \"ac\": 546,\n  \"ac</w>\": 2816,\n  \"aca</w>\": 9213,\n  \"acab\": 41388,\n  \"acacia</w>\": 44047,\n  \"acad</w>\": 32537,\n  \"acade\": 2892,\n  \"academia</w>\": 22662,\n  \"academic\": 31178,\n  \"academic</w>\": 7935,\n  \"academics</w>\": 26417,\n  \"academies</w>\": 42569,\n  \"academy\": 29968,\n  \"academy</w>\": 4041,\n  \"acadi\": 41455,\n  \"acadia</w>\": 49236,\n  \"acam\": 26172,\n  \"acan\": 42227,\n  \"acan</w>\": 26318,\n  \"acap\": 32357,\n  \"acar\": 22232,\n  \"acare</w>\": 16961,\n  \"acc\": 26805,\n  \"acc</w>\": 9318,\n  \"acca</w>\": 30883,\n  \"acce\": 8564,\n  \"acceler\": 10161,\n  \"accelerate</w>\": 23619,\n  \"accelerated</w>\": 38513,\n  \"accelerating</w>\": 41821,\n  \"acceleration</w>\": 39387,\n  \"accelerator</w>\": 25261,\n  \"accent\": 28110,\n  \"accent</w>\": 18931,\n  \"accents</w>\": 31738,\n  \"accenture</w>\": 41853,\n  \"accep\": 4616,\n  \"accept\": 16447,\n  \"accept</w>\": 9338,\n  \"acceptable</w>\": 14209,\n  \"acceptance</w>\": 17090,\n  \"accepted</w>\": 9159,\n  \"accepting</w>\": 12855,\n  \"accepts</w>\": 22338,\n  \"access\": 7596,\n  \"access</w>\": 3822,\n  \"accessi\": 10787,\n  \"accessibility</w>\": 23407,\n  \"accessible</w>\": 13977,\n  \"accessing</w>\": 46339,\n  \"accessories</w>\": 10220,\n  \"accessory</w>\": 20417,\n  \"acci\": 4263,\n  \"acci</w>\": 33943,\n  \"accident</w>\": 6608,\n  \"accidental</w>\": 24895,\n  \"accidentally</w>\": 11061,\n  \"accidents</w>\": 22072,\n  \"acclaimed</w>\": 21172,\n  \"acco</w>\": 44730,\n  \"accol\": 33858,\n  \"accolades</w>\": 46731,\n  \"accom\": 23658,\n  \"accommo\": 34495,\n  \"accommod\": 14386,\n  \"accommodate</w>\": 34708,\n  \"accommodation</w>\": 18066,\n  \"accommodations</w>\": 45536,\n  \"accomp\": 24985,\n  \"accompan\": 14746,\n  \"accompanied</w>\": 20715,\n  \"accompany</w>\": 34142,\n  \"accompanying</w>\": 38179,\n  \"accompli\": 10205,\n  \"accomplish</w>\": 25542,\n  \"accomplished</w>\": 16462,\n  \"accomplishment</w>\": 26100,\n  \"accomplishments</w>\": 24965,\n  \"accor\": 4182,\n  \"accord\": 34293,\n  \"accord</w>\": 28513,\n  \"according</w>\": 4717,\n  \"accordingly</w>\": 35535,\n  \"accordion</w>\": 48760,\n  \"accoun\": 3081,\n  \"account\": 18424,\n  \"account</w>\": 4684,\n  \"accountability</w>\": 19377,\n  \"accountable</w>\": 24216,\n  \"accountant</w>\": 31026,\n  \"accountants</w>\": 37222,\n  \"accounted</w>\": 43951,\n  \"accounting</w>\": 14805,\n  \"accounts</w>\": 9974,\n  \"accra</w>\": 31900,\n  \"accred\": 17451,\n  \"accreditation</w>\": 27015,\n  \"accredited</w>\": 27647,\n  \"acct</w>\": 45569,\n  \"accu\": 5618,\n  \"accumul\": 19275,\n  \"accumulation</w>\": 37112,\n  \"accur\": 6551,\n  \"accuracy</w>\": 18423,\n  \"accurate</w>\": 8858,\n  \"accurately</w>\": 24206,\n  \"accusations</w>\": 33615,\n  \"accuse</w>\": 39414,\n  \"accused</w>\": 9434,\n  \"accuses</w>\": 27496,\n  \"accusing</w>\": 41474,\n  \"acdc</w>\": 45067,\n  \"ace\": 2675,\n  \"ace</w>\": 804,\n  \"acea</w>\": 35219,\n  \"aceae</w>\": 38153,\n  \"acele\": 40868,\n  \"aceous</w>\": 33610,\n  \"acer\": 37990,\n  \"acer</w>\": 25809,\n  \"aces</w>\": 5725,\n  \"acet\": 28735,\n  \"acf</w>\": 38389,\n  \"ach\": 972,\n  \"ach</w>\": 987,\n  \"acha</w>\": 22686,\n  \"acharya</w>\": 45780,\n  \"achat</w>\": 32706,\n  \"ache\": 27771,\n  \"ache</w>\": 7214,\n  \"ached</w>\": 17048,\n  \"acher\": 38442,\n  \"acher</w>\": 17936,\n  \"achers</w>\": 25051,\n  \"aches</w>\": 14823,\n  \"achi\": 3264,\n  \"achi</w>\": 9087,\n  \"achiev\": 8160,\n  \"achieve\": 14798,\n  \"achieve</w>\": 8175,\n  \"achieved</w>\": 12359,\n  \"achievement</w>\": 8245,\n  \"achievements</w>\": 16114,\n  \"achiever</w>\": 46286,\n  \"achievers</w>\": 44544,\n  \"achieves</w>\": 40123,\n  \"achieving</w>\": 16120,\n  \"achilles</w>\": 33327,\n  \"achim</w>\": 42335,\n  \"aching</w>\": 12864,\n  \"acho</w>\": 33130,\n  \"achs</w>\": 41195,\n  \"aci\": 4359,\n  \"aci</w>\": 34100,\n  \"acia</w>\": 30163,\n  \"acial</w>\": 32422,\n  \"acid\": 35474,\n  \"acid</w>\": 10085,\n  \"acidity</w>\": 48800,\n  \"acids</w>\": 27751,\n  \"acies</w>\": 20162,\n  \"acin\": 39442,\n  \"acing</w>\": 9442,\n  \"acio</w>\": 26202,\n  \"acion\": 44965,\n  \"acion</w>\": 24968,\n  \"acional</w>\": 26435,\n  \"aciones</w>\": 35832,\n  \"acious</w>\": 16020,\n  \"acity</w>\": 7511,\n  \"aciÃ³n</w>\": 38175,\n  \"ack\": 877,\n  \"ack</w>\": 725,\n  \"acked</w>\": 5698,\n  \"acker\": 31201,\n  \"acker</w>\": 7940,\n  \"ackeray</w>\": 41843,\n  \"acki</w>\": 42857,\n  \"acking</w>\": 5515,\n  \"ackles</w>\": 28503,\n  \"acknow\": 13563,\n  \"acknowle\": 18100,\n  \"acknowledge</w>\": 25209,\n  \"acknowledged</w>\": 35913,\n  \"acknowledges</w>\": 49083,\n  \"acknowledging</w>\": 45645,\n  \"acks</w>\": 3858,\n  \"acl\": 47593,\n  \"acl</w>\": 23073,\n  \"acle</w>\": 6504,\n  \"acles</w>\": 34164,\n  \"aclu</w>\": 37354,\n  \"acm</w>\": 39317,\n  \"acmilan</w>\": 36500,\n  \"acne</w>\": 24195,\n  \"aco\": 9463,\n  \"aco</w>\": 8800,\n  \"acol\": 17431,\n  \"acollege</w>\": 43468,\n  \"acom\": 17224,\n  \"acom</w>\": 22342,\n  \"acon\": 11621,\n  \"acon</w>\": 11571,\n  \"aconf</w>\": 38851,\n  \"acons</w>\": 31599,\n  \"acor\": 22076,\n  \"acorn</w>\": 37537,\n  \"acos</w>\": 39943,\n  \"acosta</w>\": 31994,\n  \"acou\": 8794,\n  \"acoun\": 31295,\n  \"acounty</w>\": 45449,\n  \"acoustic</w>\": 10616,\n  \"acoustics</w>\": 43873,\n  \"acp</w>\": 19627,\n  \"acqu\": 7946,\n  \"acquainted</w>\": 40713,\n  \"acqui\": 12194,\n  \"acquire</w>\": 21576,\n  \"acquired</w>\": 15932,\n  \"acquires</w>\": 27376,\n  \"acquiring</w>\": 42785,\n  \"acquis\": 14207,\n  \"acquisition</w>\": 16543,\n  \"acquisitions</w>\": 39649,\n  \"acr</w>\": 43648,\n  \"acre\": 26749,\n  \"acre</w>\": 9493,\n  \"acres</w>\": 11630,\n  \"acro\": 21060,\n  \"acrob\": 40891,\n  \"acron\": 37770,\n  \"across</w>\": 2500,\n  \"acrosse</w>\": 40979,\n  \"acruz</w>\": 40455,\n  \"acry\": 10440,\n  \"acrylic</w>\": 12252,\n  \"acs</w>\": 11782,\n  \"act\": 10305,\n  \"act</w>\": 1393,\n  \"acted</w>\": 10971,\n  \"acti\": 4786,\n  \"acting</w>\": 6319,\n  \"action\": 12493,\n  \"action</w>\": 1816,\n  \"actions</w>\": 6271,\n  \"activ\": 3430,\n  \"activate</w>\": 26737,\n  \"activated</w>\": 22249,\n  \"activation</w>\": 26769,\n  \"active\": 19009,\n  \"active</w>\": 4046,\n  \"actively</w>\": 18645,\n  \"activi\": 7230,\n  \"activism</w>\": 20117,\n  \"activist</w>\": 10850,\n  \"activists</w>\": 12649,\n  \"activities</w>\": 6514,\n  \"activity</w>\": 6206,\n  \"actment</w>\": 44807,\n  \"acton\": 36167,\n  \"acton</w>\": 36697,\n  \"actonclimate</w>\": 43797,\n  \"actor\": 12181,\n  \"actor</w>\": 4035,\n  \"actors</w>\": 9255,\n  \"actorslife</w>\": 25117,\n  \"actorvijay</w>\": 34033,\n  \"actress</w>\": 5805,\n  \"actresses</w>\": 33639,\n  \"acts</w>\": 6816,\n  \"actu\": 2375,\n  \"actual</w>\": 7488,\n  \"actually</w>\": 2955,\n  \"acu\": 9204,\n  \"acu</w>\": 48475,\n  \"aculture</w>\": 38145,\n  \"acup\": 30869,\n  \"acup</w>\": 27278,\n  \"acupuncture</w>\": 40043,\n  \"acur\": 44719,\n  \"acura</w>\": 30120,\n  \"acus</w>\": 33710,\n  \"acute</w>\": 19734,\n  \"acy\": 18717,\n  \"acy</w>\": 2356,\n  \"ad\": 594,\n  \"ad</w>\": 680,\n  \"ada\": 25785,\n  \"ada</w>\": 1886,\n  \"adaily</w>\": 47254,\n  \"adal\": 46646,\n  \"adam\": 6037,\n  \"adam</w>\": 4944,\n  \"adamlambert</w>\": 27659,\n  \"adams</w>\": 7942,\n  \"adan</w>\": 41802,\n  \"adani</w>\": 37499,\n  \"adap\": 6341,\n  \"adapt</w>\": 22666,\n  \"adaptation</w>\": 16566,\n  \"adapted</w>\": 26657,\n  \"adapter</w>\": 21839,\n  \"adapting</w>\": 44120,\n  \"adaptive</w>\": 28672,\n  \"adar\": 27702,\n  \"adar</w>\": 32681,\n  \"adas</w>\": 23250,\n  \"adata</w>\": 39500,\n  \"aday\": 31367,\n  \"aday</w>\": 10280,\n  \"adays</w>\": 24337,\n  \"adb</w>\": 45630,\n  \"adc</w>\": 38201,\n  \"add\": 19408,\n  \"add</w>\": 3536,\n  \"addams</w>\": 38912,\n  \"added</w>\": 4149,\n  \"adder</w>\": 47557,\n  \"addi</w>\": 36378,\n  \"addic\": 5709,\n  \"addict</w>\": 14614,\n  \"addicted</w>\": 16275,\n  \"addiction</w>\": 11751,\n  \"addictive</w>\": 29638,\n  \"addicts</w>\": 29997,\n  \"adding</w>\": 8676,\n  \"addis</w>\": 43911,\n  \"addison</w>\": 32369,\n  \"additi\": 26927,\n  \"addition</w>\": 6698,\n  \"additional</w>\": 10666,\n  \"additions</w>\": 22575,\n  \"additive</w>\": 48546,\n  \"addo</w>\": 40001,\n  \"address</w>\": 5834,\n  \"addressed</w>\": 20817,\n  \"addresses</w>\": 12702,\n  \"addressing</w>\": 10594,\n  \"adds</w>\": 9944,\n  \"addy</w>\": 24746,\n  \"ade\": 2194,\n  \"ade</w>\": 1928,\n  \"adecides</w>\": 46374,\n  \"aded</w>\": 9994,\n  \"adee</w>\": 47054,\n  \"adel\": 4434,\n  \"adel</w>\": 27308,\n  \"adelaide\": 38193,\n  \"adelaide</w>\": 11611,\n  \"adele\": 42843,\n  \"adele</w>\": 21220,\n  \"adelrey</w>\": 43627,\n  \"ademy</w>\": 49123,\n  \"aden\": 28669,\n  \"aden</w>\": 28688,\n  \"adena</w>\": 23648,\n  \"adequ\": 18232,\n  \"adequate</w>\": 22281,\n  \"ader</w>\": 21365,\n  \"adero</w>\": 49185,\n  \"aders</w>\": 27672,\n  \"ades</w>\": 5793,\n  \"adh</w>\": 42301,\n  \"adhd</w>\": 32649,\n  \"adhe\": 21175,\n  \"adhesive</w>\": 38429,\n  \"adi\": 2486,\n  \"adi</w>\": 8779,\n  \"adia</w>\": 26874,\n  \"adic</w>\": 36780,\n  \"adid\": 8086,\n  \"adidas\": 22396,\n  \"adidas</w>\": 9589,\n  \"adidasoriginals</w>\": 48575,\n  \"adies</w>\": 45834,\n  \"adifference</w>\": 37217,\n  \"adilla</w>\": 41167,\n  \"ading</w>\": 15000,\n  \"adio</w>\": 15060,\n  \"adirond\": 36843,\n  \"adish</w>\": 49009,\n  \"adity\": 28596,\n  \"aditya</w>\": 37186,\n  \"adityanath</w>\": 44437,\n  \"adjac\": 32517,\n  \"adjacent</w>\": 33836,\n  \"adjec\": 45512,\n  \"adju\": 16413,\n  \"adjun\": 45995,\n  \"adjust\": 13784,\n  \"adjust</w>\": 28073,\n  \"adjustable</w>\": 20476,\n  \"adjusted</w>\": 30515,\n  \"adjusting</w>\": 41132,\n  \"adjustment</w>\": 36081,\n  \"adjustments</w>\": 36331,\n  \"adl</w>\": 49351,\n  \"adler</w>\": 30222,\n  \"adm\": 9892,\n  \"adm</w>\": 33604,\n  \"admi\": 11666,\n  \"admin</w>\": 12528,\n  \"admini\": 6434,\n  \"administr\": 12174,\n  \"administration</w>\": 9502,\n  \"administrative</w>\": 22424,\n  \"administrator</w>\": 22603,\n  \"administrators</w>\": 36123,\n  \"admins</w>\": 49297,\n  \"admir\": 17031,\n  \"admiral</w>\": 21013,\n  \"admiration</w>\": 39569,\n  \"admire</w>\": 17791,\n  \"admired</w>\": 36103,\n  \"admirer</w>\": 48344,\n  \"admiring</w>\": 29835,\n  \"admission</w>\": 11315,\n  \"admissions</w>\": 22463,\n  \"admit</w>\": 13769,\n  \"admits</w>\": 16332,\n  \"admitted</w>\": 20427,\n  \"admitting</w>\": 46148,\n  \"adn</w>\": 40339,\n  \"adnan</w>\": 42037,\n  \"ado\": 4775,\n  \"ado</w>\": 2933,\n  \"adobe\": 29256,\n  \"adobe</w>\": 16484,\n  \"adog</w>\": 44913,\n  \"adol\": 33512,\n  \"adole\": 22704,\n  \"adolescent</w>\": 36793,\n  \"adolescents</w>\": 45656,\n  \"adolf</w>\": 41179,\n  \"adon\": 25907,\n  \"adona</w>\": 48419,\n  \"adop\": 4183,\n  \"adopt\": 16441,\n  \"adopt</w>\": 11159,\n  \"adoptable</w>\": 36905,\n  \"adoptdont\": 19674,\n  \"adoptdontshop</w>\": 20089,\n  \"adopted</w>\": 12538,\n  \"adopting</w>\": 30158,\n  \"adoption</w>\": 11544,\n  \"adopts</w>\": 40853,\n  \"ador\": 4992,\n  \"ador</w>\": 9162,\n  \"adora</w>\": 40031,\n  \"adorable</w>\": 6298,\n  \"adoration</w>\": 46781,\n  \"adore</w>\": 15502,\n  \"adored</w>\": 49233,\n  \"adores</w>\": 30290,\n  \"adorned</w>\": 44953,\n  \"ados</w>\": 20079,\n  \"adox</w>\": 32188,\n  \"adp</w>\": 44426,\n  \"adr</w>\": 46189,\n  \"adren\": 24204,\n  \"adrenaline</w>\": 35552,\n  \"adri\": 5935,\n  \"adrian\": 25012,\n  \"adrian</w>\": 13163,\n  \"adriana</w>\": 41363,\n  \"adrid</w>\": 26562,\n  \"adrien</w>\": 47469,\n  \"adrienne</w>\": 40081,\n  \"ads</w>\": 2485,\n  \"adu\": 16882,\n  \"adu</w>\": 24446,\n  \"adukone</w>\": 30511,\n  \"adul\": 7222,\n  \"adult\": 42209,\n  \"adult</w>\": 7115,\n  \"adulthood</w>\": 40964,\n  \"adults</w>\": 9391,\n  \"adv\": 1647,\n  \"adv</w>\": 21018,\n  \"advan\": 33411,\n  \"advance\": 27291,\n  \"advance</w>\": 7022,\n  \"advanced</w>\": 7465,\n  \"advancement</w>\": 35437,\n  \"advances</w>\": 15852,\n  \"advancing</w>\": 21355,\n  \"advani</w>\": 48189,\n  \"advant\": 7017,\n  \"advantage</w>\": 8573,\n  \"advantaged</w>\": 38361,\n  \"advantages</w>\": 23506,\n  \"adven\": 41670,\n  \"advent\": 3071,\n  \"advent</w>\": 15199,\n  \"adventcalendar</w>\": 43492,\n  \"adventur\": 29627,\n  \"adventure\": 17251,\n  \"adventure</w>\": 4377,\n  \"adventurer</w>\": 48098,\n  \"adventures</w>\": 7941,\n  \"adventurous</w>\": 31179,\n  \"adver\": 4806,\n  \"adverse</w>\": 30348,\n  \"adversity</w>\": 32516,\n  \"advert</w>\": 19080,\n  \"adverti\": 5682,\n  \"advertise</w>\": 31473,\n  \"advertised</w>\": 38987,\n  \"advertisement</w>\": 18713,\n  \"advertiser</w>\": 41829,\n  \"advertisers</w>\": 45472,\n  \"advertising</w>\": 8158,\n  \"adverts</w>\": 44306,\n  \"advice</w>\": 4973,\n  \"advis\": 4634,\n  \"advise</w>\": 25962,\n  \"advised</w>\": 23196,\n  \"adviser</w>\": 20367,\n  \"advisers</w>\": 40984,\n  \"advises</w>\": 42761,\n  \"advising</w>\": 39648,\n  \"advisor</w>\": 12380,\n  \"advisors</w>\": 23197,\n  \"advisory</w>\": 10224,\n  \"advoc\": 6657,\n  \"advocacy</w>\": 14443,\n  \"advocate</w>\": 12044,\n  \"advocates</w>\": 17757,\n  \"adwords</w>\": 48343,\n  \"ady\": 41446,\n  \"ady</w>\": 8781,\n  \"ae\": 5548,\n  \"ae</w>\": 4542,\n  \"aea</w>\": 37048,\n  \"aed</w>\": 26912,\n  \"aege\": 42304,\n  \"ael\": 41533,\n  \"ael</w>\": 43340,\n  \"aen\": 43085,\n  \"aer\": 10195,\n  \"aeri\": 27685,\n  \"aerial\": 44866,\n  \"aerial</w>\": 12440,\n  \"aero\": 10196,\n  \"aero</w>\": 25026,\n  \"aerob\": 42824,\n  \"aeron\": 37286,\n  \"aeronau\": 42816,\n  \"aerop\": 27735,\n  \"aerosmith</w>\": 43253,\n  \"aerospace</w>\": 20530,\n  \"aes\": 10617,\n  \"aes</w>\": 35677,\n  \"aest</w>\": 40694,\n  \"aesthe\": 21181,\n  \"aesthetic</w>\": 16179,\n  \"aesthetics</w>\": 29295,\n  \"aew</w>\": 47108,\n  \"af\": 702,\n  \"af</w>\": 4391,\n  \"afa</w>\": 24953,\n  \"afan\": 47474,\n  \"afar\": 41637,\n  \"afar</w>\": 37866,\n  \"afb</w>\": 27022,\n  \"afc\": 29742,\n  \"afc</w>\": 6571,\n  \"afcb</w>\": 44276,\n  \"afcon</w>\": 30019,\n  \"afd</w>\": 44626,\n  \"afe\": 30487,\n  \"afe</w>\": 13912,\n  \"afer\": 44707,\n  \"aff\": 8849,\n  \"aff</w>\": 14864,\n  \"affair</w>\": 13998,\n  \"affairs</w>\": 9830,\n  \"affe\": 4556,\n  \"affect</w>\": 11361,\n  \"affected</w>\": 9715,\n  \"affecting</w>\": 18448,\n  \"affection\": 33780,\n  \"affection</w>\": 28381,\n  \"affectionate</w>\": 42578,\n  \"affects</w>\": 17285,\n  \"affili\": 12120,\n  \"affiliate</w>\": 18652,\n  \"affiliated</w>\": 37540,\n  \"affiliation</w>\": 48377,\n  \"affinity</w>\": 41451,\n  \"affir\": 25343,\n  \"affirm\": 42711,\n  \"affirm</w>\": 48625,\n  \"affirmation</w>\": 47495,\n  \"affl\": 34036,\n  \"affleck</w>\": 35584,\n  \"afford\": 7951,\n  \"afford</w>\": 13223,\n  \"affordability</w>\": 44828,\n  \"affordable\": 43944,\n  \"affordable</w>\": 8926,\n  \"afg</w>\": 33994,\n  \"afgh\": 9029,\n  \"afghan</w>\": 15919,\n  \"afghanistan</w>\": 9836,\n  \"afi\": 24074,\n  \"afi</w>\": 31958,\n  \"afil\": 27209,\n  \"afire</w>\": 42010,\n  \"afirst</w>\": 38601,\n  \"afl\": 15132,\n  \"afl</w>\": 14356,\n  \"aflo\": 41959,\n  \"afm</w>\": 38385,\n  \"afootball</w>\": 41694,\n  \"afor\": 43102,\n  \"afore\": 41468,\n  \"afp</w>\": 18311,\n  \"afraid</w>\": 9474,\n  \"afri\": 13888,\n  \"afric\": 2136,\n  \"africa</w>\": 3093,\n  \"african\": 17471,\n  \"african</w>\": 4736,\n  \"africans</w>\": 26534,\n  \"afridi</w>\": 37651,\n  \"afrika</w>\": 45833,\n  \"afrin</w>\": 45586,\n  \"afro\": 16267,\n  \"afro</w>\": 21795,\n  \"afs</w>\": 48960,\n  \"aft</w>\": 22693,\n  \"after\": 2278,\n  \"after</w>\": 953,\n  \"afterdark</w>\": 48966,\n  \"afterlife</w>\": 46790,\n  \"aftermath</w>\": 20958,\n  \"afterno\": 22330,\n  \"afternoon\": 39035,\n  \"afternoon</w>\": 2716,\n  \"afternoons</w>\": 31631,\n  \"afterparty</w>\": 35305,\n  \"afterwards</w>\": 23911,\n  \"ag\": 602,\n  \"ag</w>\": 5241,\n  \"aga\": 1050,\n  \"aga</w>\": 4654,\n  \"again</w>\": 1495,\n  \"against\": 23838,\n  \"against</w>\": 1601,\n  \"agame</w>\": 46943,\n  \"agan\": 42946,\n  \"agan</w>\": 9178,\n  \"agar\": 13199,\n  \"agar</w>\": 17544,\n  \"agarwal</w>\": 43117,\n  \"agas\": 20430,\n  \"agate</w>\": 25454,\n  \"agatha</w>\": 43896,\n  \"agave</w>\": 42671,\n  \"agawa</w>\": 39433,\n  \"agazine</w>\": 44942,\n  \"age\": 4758,\n  \"age</w>\": 805,\n  \"aged</w>\": 3889,\n  \"ageing</w>\": 25349,\n  \"agen\": 10101,\n  \"agen</w>\": 43696,\n  \"agencies</w>\": 13887,\n  \"agency\": 44885,\n  \"agency</w>\": 6270,\n  \"agend\": 48653,\n  \"agenda</w>\": 8728,\n  \"agent\": 21210,\n  \"agent</w>\": 6576,\n  \"agents</w>\": 10199,\n  \"agentsof\": 37074,\n  \"agentsofshield</w>\": 38801,\n  \"ager\": 44847,\n  \"ager</w>\": 10443,\n  \"agers</w>\": 22123,\n  \"ages</w>\": 2321,\n  \"agg</w>\": 45482,\n  \"aggarwal</w>\": 39386,\n  \"agger\": 27836,\n  \"aggi\": 36844,\n  \"aggie\": 44244,\n  \"aggie</w>\": 37618,\n  \"aggies</w>\": 31047,\n  \"aggio</w>\": 36685,\n  \"aggrav\": 35203,\n  \"aggre\": 10426,\n  \"aggreg\": 41968,\n  \"aggregate</w>\": 41318,\n  \"aggression</w>\": 28900,\n  \"aggressive</w>\": 16295,\n  \"aggressively</w>\": 48667,\n  \"agh\": 17917,\n  \"agh</w>\": 14402,\n  \"aghan</w>\": 31276,\n  \"agi\": 24036,\n  \"agi</w>\": 17645,\n  \"agic</w>\": 37652,\n  \"agile</w>\": 16276,\n  \"agility</w>\": 32161,\n  \"aging</w>\": 4336,\n  \"agio</w>\": 41746,\n  \"agirl</w>\": 35469,\n  \"agle\": 37035,\n  \"agle</w>\": 16702,\n  \"agles\": 36374,\n  \"agles</w>\": 22679,\n  \"aglia</w>\": 46912,\n  \"agm</w>\": 19162,\n  \"agn\": 36474,\n  \"agna</w>\": 43626,\n  \"agne\": 29374,\n  \"agne</w>\": 48303,\n  \"agnes</w>\": 26213,\n  \"agno\": 41540,\n  \"ago\": 6276,\n  \"ago</w>\": 1468,\n  \"agomez</w>\": 27127,\n  \"agon\": 26775,\n  \"agon</w>\": 14901,\n  \"agony</w>\": 36977,\n  \"agor\": 38920,\n  \"agos</w>\": 32657,\n  \"agov</w>\": 34227,\n  \"agp</w>\": 46048,\n  \"agr\": 36639,\n  \"agra\": 26660,\n  \"agra</w>\": 29830,\n  \"agram</w>\": 2447,\n  \"agre\": 3180,\n  \"agreat\": 37594,\n  \"agree</w>\": 5953,\n  \"agreed</w>\": 12774,\n  \"agreeing</w>\": 40720,\n  \"agreement</w>\": 8286,\n  \"agreements</w>\": 25865,\n  \"agrees</w>\": 17854,\n  \"agri\": 20527,\n  \"agri</w>\": 30326,\n  \"agricul\": 7234,\n  \"agricultural</w>\": 15440,\n  \"agriculture</w>\": 9720,\n  \"agro\": 33178,\n  \"agro</w>\": 44589,\n  \"agron\": 41314,\n  \"agroup</w>\": 40099,\n  \"ags</w>\": 16926,\n  \"agt</w>\": 39681,\n  \"agu\": 3922,\n  \"agu</w>\": 36544,\n  \"agua</w>\": 18482,\n  \"aguchi</w>\": 49206,\n  \"ague</w>\": 2095,\n  \"aguero</w>\": 42964,\n  \"agues</w>\": 7000,\n  \"aguil\": 27946,\n  \"aguilar</w>\": 44715,\n  \"ah\": 1772,\n  \"ah</w>\": 1288,\n  \"aha\": 12082,\n  \"aha</w>\": 8429,\n  \"ahah</w>\": 38661,\n  \"ahaha</w>\": 32423,\n  \"ahahaha</w>\": 42620,\n  \"aham\": 36036,\n  \"ahan\": 45061,\n  \"ahan</w>\": 19255,\n  \"ahar\": 31038,\n  \"ahar</w>\": 38760,\n  \"ahe\": 27688,\n  \"ahead</w>\": 3158,\n  \"ahem</w>\": 39995,\n  \"ahh</w>\": 13152,\n  \"ahhh</w>\": 14769,\n  \"ahhhh</w>\": 21054,\n  \"ahhhhh</w>\": 36392,\n  \"ahi\": 45349,\n  \"ahi</w>\": 24154,\n  \"ahl</w>\": 30433,\n  \"ahmad\": 32167,\n  \"ahmad</w>\": 16902,\n  \"ahmadi\": 38656,\n  \"ahmadiyya</w>\": 44865,\n  \"ahmed\": 19491,\n  \"ahmed</w>\": 12081,\n  \"ahmedabad</w>\": 26966,\n  \"ahn</w>\": 33405,\n  \"aho\": 28114,\n  \"aho</w>\": 38444,\n  \"ahora</w>\": 43113,\n  \"ahouse</w>\": 33197,\n  \"ahoy</w>\": 38652,\n  \"ahs</w>\": 16937,\n  \"ahu\": 11908,\n  \"ahu</w>\": 16515,\n  \"ai\": 2014,\n  \"ai</w>\": 2215,\n  \"aia</w>\": 27046,\n  \"aib</w>\": 34780,\n  \"aic\": 29454,\n  \"aid\": 13723,\n  \"aid</w>\": 5182,\n  \"aida</w>\": 33830,\n  \"aidan\": 48814,\n  \"aidan</w>\": 26945,\n  \"aide\": 31558,\n  \"aide</w>\": 9746,\n  \"aided</w>\": 48707,\n  \"aiden</w>\": 40020,\n  \"aides</w>\": 49082,\n  \"aids</w>\": 11759,\n  \"aig\": 27295,\n  \"aig</w>\": 46989,\n  \"aii</w>\": 22478,\n  \"aik</w>\": 42575,\n  \"aiken</w>\": 46342,\n  \"ail\": 1457,\n  \"ail</w>\": 9154,\n  \"ailed</w>\": 38919,\n  \"ailing</w>\": 29999,\n  \"ails</w>\": 27024,\n  \"aim\": 6787,\n  \"aim</w>\": 11255,\n  \"aime</w>\": 39872,\n  \"aimed</w>\": 20247,\n  \"aimee</w>\": 36318,\n  \"aiming</w>\": 21768,\n  \"aimo</w>\": 36706,\n  \"aims</w>\": 13326,\n  \"ain\": 8326,\n  \"ain</w>\": 2210,\n  \"aine\": 48983,\n  \"aine</w>\": 17634,\n  \"ains</w>\": 27621,\n  \"aint\": 29543,\n  \"aint</w>\": 13099,\n  \"ainted</w>\": 39933,\n  \"aioli</w>\": 43949,\n  \"air\": 1281,\n  \"air</w>\": 1922,\n  \"aira\": 35085,\n  \"aira</w>\": 46444,\n  \"airasia</w>\": 48020,\n  \"airbnb</w>\": 23098,\n  \"airborne</w>\": 22755,\n  \"airbus</w>\": 15324,\n  \"aircraft</w>\": 7706,\n  \"airdrop</w>\": 38434,\n  \"aire</w>\": 7682,\n  \"aired</w>\": 21938,\n  \"aires</w>\": 17034,\n  \"airfield</w>\": 40525,\n  \"airforce</w>\": 23511,\n  \"airing</w>\": 20453,\n  \"airline</w>\": 14847,\n  \"airlines</w>\": 8929,\n  \"airmen</w>\": 44499,\n  \"airplane</w>\": 16451,\n  \"airplanes</w>\": 33319,\n  \"airplay</w>\": 47024,\n  \"airpollution</w>\": 47362,\n  \"airport\": 48337,\n  \"airport</w>\": 3259,\n  \"airports</w>\": 21543,\n  \"airs</w>\": 18539,\n  \"airshow</w>\": 27139,\n  \"airsoft</w>\": 30134,\n  \"airspace</w>\": 49280,\n  \"airstrikes</w>\": 37220,\n  \"airtel</w>\": 34784,\n  \"airtime</w>\": 46617,\n  \"airwaves</w>\": 43910,\n  \"airways</w>\": 14299,\n  \"airy</w>\": 44453,\n  \"ais\": 7616,\n  \"ais</w>\": 11393,\n  \"aise</w>\": 30505,\n  \"aish\": 21946,\n  \"aisha</w>\": 40211,\n  \"aishwar\": 29687,\n  \"aishwarya</w>\": 44019,\n  \"aisle</w>\": 26917,\n  \"ait\": 25613,\n  \"ait</w>\": 40814,\n  \"aj\": 3990,\n  \"aj</w>\": 6342,\n  \"aja\": 42343,\n  \"aja</w>\": 19633,\n  \"ajax</w>\": 21933,\n  \"ajay\": 22494,\n  \"ajay</w>\": 28726,\n  \"ajaydevgn</w>\": 35515,\n  \"aje\": 48818,\n  \"aje</w>\": 33315,\n  \"ajes</w>\": 38791,\n  \"aji\": 26102,\n  \"aji</w>\": 21153,\n  \"ajit</w>\": 42261,\n  \"ajith</w>\": 24118,\n  \"ajo</w>\": 26958,\n  \"aju\": 36855,\n  \"ak\": 819,\n  \"ak</w>\": 1196,\n  \"aka\": 19154,\n  \"aka</w>\": 3412,\n  \"akaif</w>\": 45736,\n  \"akan\": 43678,\n  \"akan</w>\": 38244,\n  \"akapoor</w>\": 40064,\n  \"akarta</w>\": 48603,\n  \"akb</w>\": 41962,\n  \"akbar</w>\": 27180,\n  \"ake\": 10558,\n  \"ake</w>\": 5776,\n  \"aked</w>\": 6115,\n  \"aker\": 14245,\n  \"aker</w>\": 3074,\n  \"akers</w>\": 5788,\n  \"akes</w>\": 4764,\n  \"akest</w>\": 46679,\n  \"akh\": 14821,\n  \"akh</w>\": 30660,\n  \"akhan</w>\": 28158,\n  \"akhi\": 41660,\n  \"akhilesh</w>\": 48495,\n  \"akhtar</w>\": 45458,\n  \"aki\": 18173,\n  \"aki</w>\": 6592,\n  \"akin\": 24630,\n  \"akin</w>\": 13601,\n  \"aking</w>\": 1809,\n  \"akins</w>\": 48568,\n  \"akira</w>\": 34001,\n  \"akis</w>\": 27732,\n  \"akistan</w>\": 46221,\n  \"akley</w>\": 39908,\n  \"ako\": 44027,\n  \"ako</w>\": 14541,\n  \"akon</w>\": 47105,\n  \"akos</w>\": 44659,\n  \"akrish\": 37434,\n  \"akron</w>\": 26115,\n  \"aks</w>\": 2953,\n  \"aksh\": 28226,\n  \"akshay\": 21483,\n  \"akshay</w>\": 38914,\n  \"akshaykumar</w>\": 23624,\n  \"akshi</w>\": 42634,\n  \"aku\": 18151,\n  \"aku</w>\": 20815,\n  \"aky</w>\": 11977,\n  \"al\": 526,\n  \"al</w>\": 566,\n  \"ala\": 12783,\n  \"ala</w>\": 3449,\n  \"alab\": 6365,\n  \"alabam\": 45880,\n  \"alabama</w>\": 8422,\n  \"alach\": 24622,\n  \"alad\": 23074,\n  \"aladdin</w>\": 29951,\n  \"alai</w>\": 47072,\n  \"alain</w>\": 28999,\n  \"alam\": 16612,\n  \"alam</w>\": 16012,\n  \"alamo\": 41922,\n  \"alamo</w>\": 34632,\n  \"alan\": 9563,\n  \"alan</w>\": 5773,\n  \"alana</w>\": 43405,\n  \"aland\": 34304,\n  \"aland</w>\": 6819,\n  \"alar\": 34333,\n  \"alarm</w>\": 11321,\n  \"alarming</w>\": 37209,\n  \"alarms</w>\": 31236,\n  \"alarts</w>\": 31422,\n  \"alas\": 7276,\n  \"alas</w>\": 22412,\n  \"alaska</w>\": 9562,\n  \"alaskan</w>\": 33898,\n  \"alastair</w>\": 42062,\n  \"alay\": 30289,\n  \"alay</w>\": 36450,\n  \"alaya</w>\": 36397,\n  \"alb\": 45248,\n  \"alba</w>\": 25254,\n  \"alban\": 10882,\n  \"albania</w>\": 29170,\n  \"albanian</w>\": 47721,\n  \"albans</w>\": 44119,\n  \"albany</w>\": 17359,\n  \"albat\": 42797,\n  \"albeit</w>\": 38984,\n  \"alber\": 6413,\n  \"albert\": 34174,\n  \"albert</w>\": 9507,\n  \"alberta</w>\": 11048,\n  \"alberto</w>\": 22714,\n  \"albi\": 18512,\n  \"albino</w>\": 48062,\n  \"albion</w>\": 24071,\n  \"albu\": 2216,\n  \"album\": 40712,\n  \"album</w>\": 2431,\n  \"albums</w>\": 10705,\n  \"albuquerque</w>\": 31079,\n  \"alcat\": 35361,\n  \"alche\": 37909,\n  \"alchemist</w>\": 38913,\n  \"alchemy</w>\": 39501,\n  \"alco\": 6848,\n  \"alco</w>\": 45446,\n  \"alcohol</w>\": 9426,\n  \"alcoholic</w>\": 25098,\n  \"ald\": 4539,\n  \"ald</w>\": 2928,\n  \"alda</w>\": 46440,\n  \"alde\": 33114,\n  \"alden\": 17155,\n  \"alden</w>\": 27710,\n  \"aldenrichards</w>\": 20051,\n  \"alder\": 18220,\n  \"alder</w>\": 46571,\n  \"aldi</w>\": 23204,\n  \"aldo</w>\": 9933,\n  \"aldridge</w>\": 38084,\n  \"alds</w>\": 14285,\n  \"aldu\": 6505,\n  \"aldub\": 10532,\n  \"aldub</w>\": 15247,\n  \"ale\": 1440,\n  \"ale</w>\": 1336,\n  \"alea</w>\": 26518,\n  \"aleague</w>\": 38909,\n  \"alec\": 29804,\n  \"alec</w>\": 19954,\n  \"alecoscino</w>\": 47948,\n  \"aled</w>\": 4970,\n  \"alee</w>\": 24515,\n  \"alej\": 23440,\n  \"alejandro</w>\": 32950,\n  \"alek\": 26906,\n  \"alek</w>\": 43310,\n  \"aleksand\": 48429,\n  \"alem</w>\": 11825,\n  \"aleppo</w>\": 19258,\n  \"aler\": 25674,\n  \"aler</w>\": 27335,\n  \"alert</w>\": 4662,\n  \"alerts</w>\": 22144,\n  \"ales\": 44171,\n  \"ales</w>\": 5962,\n  \"aless\": 21864,\n  \"alessandro</w>\": 37344,\n  \"alestine</w>\": 31945,\n  \"alex\": 2959,\n  \"alex</w>\": 4134,\n  \"alexa</w>\": 16273,\n  \"alexand\": 10696,\n  \"alexander\": 25527,\n  \"alexander</w>\": 7563,\n  \"alexandra</w>\": 19054,\n  \"alexandre</w>\": 35711,\n  \"alexandria</w>\": 21171,\n  \"alexis\": 35023,\n  \"alexis</w>\": 14243,\n  \"aley</w>\": 21635,\n  \"alf</w>\": 27098,\n  \"alfa</w>\": 23482,\n  \"alfar\": 38870,\n  \"alfie</w>\": 28598,\n  \"alfon\": 31947,\n  \"alfonso</w>\": 41784,\n  \"alfre\": 20982,\n  \"alfred</w>\": 16553,\n  \"alfredo</w>\": 32291,\n  \"algae</w>\": 25654,\n  \"algar\": 36291,\n  \"algarve</w>\": 40290,\n  \"alge\": 24336,\n  \"algebra</w>\": 33694,\n  \"alger\": 18568,\n  \"algeria</w>\": 25257,\n  \"algon\": 33007,\n  \"algori\": 14912,\n  \"algorithm</w>\": 23295,\n  \"algorithms</w>\": 26039,\n  \"alham\": 23352,\n  \"alhamdulil\": 35129,\n  \"alhamdulillah</w>\": 38982,\n  \"ali\": 835,\n  \"ali</w>\": 3558,\n  \"alia</w>\": 2492,\n  \"aliaa</w>\": 36468,\n  \"alian</w>\": 3464,\n  \"alias</w>\": 40026,\n  \"alibaba</w>\": 39231,\n  \"alic\": 25265,\n  \"alice\": 23759,\n  \"alice</w>\": 9192,\n  \"alici\": 31630,\n  \"alicia</w>\": 20914,\n  \"alie</w>\": 8697,\n  \"alien\": 22846,\n  \"alien</w>\": 9639,\n  \"aliens</w>\": 14883,\n  \"alier</w>\": 39493,\n  \"alies</w>\": 38086,\n  \"alife\": 41347,\n  \"alife</w>\": 21100,\n  \"alig\": 21272,\n  \"alight</w>\": 36157,\n  \"align</w>\": 31160,\n  \"aligned</w>\": 29292,\n  \"alignment</w>\": 27267,\n  \"alik</w>\": 31141,\n  \"alike</w>\": 12665,\n  \"alim\": 42075,\n  \"alin\": 42746,\n  \"alin</w>\": 40063,\n  \"alina</w>\": 39529,\n  \"aline</w>\": 21799,\n  \"aling</w>\": 5169,\n  \"alion</w>\": 19049,\n  \"alis\": 21308,\n  \"alis</w>\": 20114,\n  \"alisa</w>\": 38918,\n  \"alisation</w>\": 42143,\n  \"alise</w>\": 36718,\n  \"alised</w>\": 25099,\n  \"alism</w>\": 5607,\n  \"alison\": 28653,\n  \"alison</w>\": 16970,\n  \"alist\": 44900,\n  \"alist</w>\": 3320,\n  \"alistair</w>\": 40551,\n  \"alistic</w>\": 22302,\n  \"alists</w>\": 5653,\n  \"alit\": 45566,\n  \"alities</w>\": 27925,\n  \"ality</w>\": 1694,\n  \"alive\": 40467,\n  \"alive</w>\": 4716,\n  \"aliz\": 30979,\n  \"alization</w>\": 8026,\n  \"alize</w>\": 10268,\n  \"alized</w>\": 6141,\n  \"alizer</w>\": 38922,\n  \"alizes</w>\": 26181,\n  \"alizing</w>\": 13023,\n  \"alk\": 30246,\n  \"alk</w>\": 21577,\n  \"alkal\": 33450,\n  \"alkaline</w>\": 39210,\n  \"all\": 813,\n  \"all</w>\": 615,\n  \"alla\": 13884,\n  \"alla</w>\": 14000,\n  \"allabout\": 43996,\n  \"allah</w>\": 6378,\n  \"allan\": 36552,\n  \"allan</w>\": 15404,\n  \"allblacks</w>\": 47728,\n  \"allday</w>\": 35862,\n  \"alle\": 4870,\n  \"alle</w>\": 29478,\n  \"alled</w>\": 7379,\n  \"alleg\": 7456,\n  \"allegations</w>\": 16992,\n  \"alleged</w>\": 12133,\n  \"allegedly</w>\": 14177,\n  \"alleges</w>\": 45051,\n  \"allegh\": 41479,\n  \"allegheny</w>\": 47851,\n  \"allegi\": 28832,\n  \"allegiance</w>\": 30955,\n  \"allen\": 16712,\n  \"allen</w>\": 6386,\n  \"allenge</w>\": 31387,\n  \"aller\": 10116,\n  \"aller</w>\": 30630,\n  \"allergic</w>\": 28809,\n  \"allergies</w>\": 28247,\n  \"allergy</w>\": 24408,\n  \"allery</w>\": 32542,\n  \"alles</w>\": 43354,\n  \"allevi\": 31682,\n  \"alleviate</w>\": 44799,\n  \"alley\": 36205,\n  \"alley</w>\": 10329,\n  \"allez</w>\": 49137,\n  \"alli\": 4123,\n  \"alli</w>\": 15268,\n  \"alliance\": 45404,\n  \"alliance</w>\": 8945,\n  \"alliances</w>\": 48403,\n  \"allianz</w>\": 45740,\n  \"allie</w>\": 25040,\n  \"allied</w>\": 20045,\n  \"allies</w>\": 17277,\n  \"alligator</w>\": 28574,\n  \"allin\": 45007,\n  \"allin</w>\": 22395,\n  \"alline</w>\": 48182,\n  \"alling</w>\": 2992,\n  \"allis</w>\": 45309,\n  \"allison\": 34602,\n  \"allison</w>\": 16578,\n  \"allman</w>\": 42611,\n  \"allo\": 8107,\n  \"allo</w>\": 18389,\n  \"allocated</w>\": 42716,\n  \"allocation</w>\": 35139,\n  \"allon</w>\": 46693,\n  \"allot\": 26363,\n  \"allotment</w>\": 33750,\n  \"allow\": 5645,\n  \"allow</w>\": 6722,\n  \"allowance</w>\": 35696,\n  \"allowed</w>\": 7885,\n  \"allowing</w>\": 12458,\n  \"allows</w>\": 9966,\n  \"alloy</w>\": 22467,\n  \"alls</w>\": 1997,\n  \"allstar\": 31247,\n  \"allstar</w>\": 22974,\n  \"allstars</w>\": 31198,\n  \"allthe\": 29253,\n  \"allu\": 20157,\n  \"alluarjun</w>\": 39333,\n  \"allure</w>\": 41814,\n  \"ally\": 7461,\n  \"ally</w>\": 769,\n  \"alm</w>\": 28303,\n  \"alma\": 32933,\n  \"alma</w>\": 18337,\n  \"alman\": 29394,\n  \"almanac</w>\": 41268,\n  \"almighty</w>\": 21898,\n  \"almond</w>\": 15646,\n  \"almonds</w>\": 30468,\n  \"almost\": 47534,\n  \"almost</w>\": 2671,\n  \"aln\": 47203,\n  \"alo\": 3435,\n  \"alo</w>\": 6183,\n  \"aloe</w>\": 30728,\n  \"alog</w>\": 15813,\n  \"alogue</w>\": 9101,\n  \"aloha</w>\": 23160,\n  \"aloils</w>\": 49002,\n  \"alom</w>\": 22236,\n  \"alon\": 14097,\n  \"alon</w>\": 42846,\n  \"alone</w>\": 4702,\n  \"along\": 8300,\n  \"along</w>\": 2528,\n  \"alongside</w>\": 8646,\n  \"alonso</w>\": 25704,\n  \"aloo</w>\": 46187,\n  \"alore</w>\": 14323,\n  \"alot</w>\": 16945,\n  \"alou\": 43180,\n  \"aloud</w>\": 30028,\n  \"alove\": 46669,\n  \"alove</w>\": 37045,\n  \"alp\": 32020,\n  \"alp</w>\": 39342,\n  \"alpac\": 30128,\n  \"alpaca</w>\": 42561,\n  \"alph\": 6720,\n  \"alpha\": 11807,\n  \"alpha</w>\": 8624,\n  \"alphabe\": 45796,\n  \"alphabet</w>\": 22335,\n  \"alphon\": 37865,\n  \"alpine</w>\": 17055,\n  \"alps</w>\": 18191,\n  \"already</w>\": 2426,\n  \"alright</w>\": 10866,\n  \"als\": 23982,\n  \"als</w>\": 938,\n  \"alsace</w>\": 49388,\n  \"also</w>\": 1446,\n  \"alt\": 9995,\n  \"alt</w>\": 10006,\n  \"alta\": 24470,\n  \"alta</w>\": 25378,\n  \"altaf</w>\": 47342,\n  \"altam\": 45624,\n  \"altar</w>\": 16385,\n  \"alter\": 4949,\n  \"alter</w>\": 21393,\n  \"altered</w>\": 25201,\n  \"altern\": 47463,\n  \"alternate</w>\": 15926,\n  \"alternati\": 16699,\n  \"alternative\": 37327,\n  \"alternative</w>\": 8248,\n  \"alternatives</w>\": 25041,\n  \"alth\": 23463,\n  \"alth</w>\": 5863,\n  \"although</w>\": 9421,\n  \"alti\": 35531,\n  \"alties</w>\": 17276,\n  \"altitude</w>\": 23241,\n  \"altman</w>\": 48100,\n  \"alto\": 35053,\n  \"alto</w>\": 17518,\n  \"altogether</w>\": 45689,\n  \"alton\": 41331,\n  \"alton</w>\": 36550,\n  \"altrin\": 38458,\n  \"altrincham</w>\": 44718,\n  \"alty</w>\": 5546,\n  \"alu\": 4776,\n  \"alu</w>\": 27991,\n  \"alum\": 5404,\n  \"alum</w>\": 10553,\n  \"alumin\": 14563,\n  \"alumini\": 22908,\n  \"aluminium</w>\": 23631,\n  \"aluminum</w>\": 15251,\n  \"alumna</w>\": 30313,\n  \"alumni</w>\": 6646,\n  \"alumnus</w>\": 23633,\n  \"alums</w>\": 30155,\n  \"alv\": 20928,\n  \"alvar\": 25196,\n  \"alvarez</w>\": 26924,\n  \"alvaro</w>\": 41941,\n  \"alves</w>\": 38547,\n  \"alvin</w>\": 27023,\n  \"alway\": 14046,\n  \"alway</w>\": 43764,\n  \"always\": 24997,\n  \"always</w>\": 1466,\n  \"alwx</w>\": 32768,\n  \"aly\": 6468,\n  \"aly</w>\": 12910,\n  \"alyn\": 49150,\n  \"alyss\": 29490,\n  \"alyssa</w>\": 18898,\n  \"alz\": 12936,\n  \"alz</w>\": 41128,\n  \"alzheim\": 15212,\n  \"alzheimer</w>\": 21151,\n  \"alzheimers</w>\": 34592,\n  \"am\": 548,\n  \"am</w>\": 687,\n  \"ama\": 18206,\n  \"ama</w>\": 1696,\n  \"amad\": 45095,\n  \"amade\": 37366,\n  \"amag\": 32049,\n  \"amal\": 15315,\n  \"amal</w>\": 36753,\n  \"aman\": 19890,\n  \"aman</w>\": 10110,\n  \"amand\": 14560,\n  \"amanda</w>\": 10036,\n  \"amar\": 6424,\n  \"amar</w>\": 19607,\n  \"amara</w>\": 48522,\n  \"amari\": 42565,\n  \"amarillo</w>\": 40449,\n  \"amarine</w>\": 45591,\n  \"amarketing</w>\": 30788,\n  \"amas\": 22716,\n  \"amas</w>\": 15667,\n  \"amat\": 38664,\n  \"amat</w>\": 25455,\n  \"amate\": 12453,\n  \"amateur</w>\": 14287,\n  \"amaya</w>\": 47210,\n  \"amaz\": 1185,\n  \"amaze</w>\": 24846,\n  \"amazed</w>\": 18944,\n  \"amazing\": 15949,\n  \"amazing</w>\": 1370,\n  \"amazingly</w>\": 20368,\n  \"amazon\": 13630,\n  \"amazon</w>\": 4140,\n  \"amb\": 9042,\n  \"amb</w>\": 16853,\n  \"amba</w>\": 27003,\n  \"ambani</w>\": 45967,\n  \"ambas\": 5634,\n  \"ambassad\": 5758,\n  \"ambassador</w>\": 6795,\n  \"ambassadors</w>\": 16832,\n  \"ambed\": 42089,\n  \"ambedkar</w>\": 48131,\n  \"amber\": 18292,\n  \"amber</w>\": 9986,\n  \"ambi\": 11844,\n  \"ambient</w>\": 23447,\n  \"ambigu\": 35702,\n  \"ambition</w>\": 20673,\n  \"ambitions</w>\": 34152,\n  \"ambitious</w>\": 18666,\n  \"ambro\": 17585,\n  \"ambrose</w>\": 24253,\n  \"ambu\": 34423,\n  \"ambul\": 13944,\n  \"ambulance</w>\": 15555,\n  \"ambush</w>\": 40725,\n  \"amc\": 24942,\n  \"amc</w>\": 16921,\n  \"amd</w>\": 20845,\n  \"ame\": 3995,\n  \"ame</w>\": 780,\n  \"amed</w>\": 5660,\n  \"ameen</w>\": 24229,\n  \"amel\": 31988,\n  \"amel</w>\": 10960,\n  \"ameli\": 21599,\n  \"amelia</w>\": 21433,\n  \"amell</w>\": 48198,\n  \"amen\": 18716,\n  \"amen</w>\": 12335,\n  \"amend\": 12425,\n  \"amendment</w>\": 15019,\n  \"amendments</w>\": 40901,\n  \"amenities</w>\": 30096,\n  \"ament</w>\": 27528,\n  \"amer\": 17081,\n  \"amer</w>\": 16147,\n  \"ameri\": 40422,\n  \"americ\": 1283,\n  \"america</w>\": 2224,\n  \"americafirst</w>\": 43216,\n  \"american\": 8746,\n  \"american</w>\": 2151,\n  \"americana</w>\": 26221,\n  \"americanair</w>\": 42538,\n  \"americani\": 39726,\n  \"americans</w>\": 6676,\n  \"americas\": 33343,\n  \"americas</w>\": 18142,\n  \"ames</w>\": 5469,\n  \"ameter</w>\": 23393,\n  \"amethy\": 30291,\n  \"amethyst</w>\": 31485,\n  \"amex</w>\": 46390,\n  \"amg</w>\": 21324,\n  \"amher\": 32311,\n  \"amherst</w>\": 39065,\n  \"ami\": 6100,\n  \"ami</w>\": 3065,\n  \"amic\": 25824,\n  \"amic</w>\": 21383,\n  \"amid\": 18908,\n  \"amid</w>\": 11953,\n  \"amide</w>\": 30952,\n  \"amidst</w>\": 25172,\n  \"amie</w>\": 36901,\n  \"amig\": 40294,\n  \"amiga</w>\": 35329,\n  \"amigo</w>\": 44991,\n  \"amigos</w>\": 28176,\n  \"amii\": 35462,\n  \"amiibo</w>\": 38871,\n  \"amily</w>\": 36732,\n  \"amin\": 14337,\n  \"amin</w>\": 20235,\n  \"amina</w>\": 47531,\n  \"amination</w>\": 30355,\n  \"amine</w>\": 35823,\n  \"aming</w>\": 3507,\n  \"amino</w>\": 33464,\n  \"amir\": 26029,\n  \"amir</w>\": 21973,\n  \"amis</w>\": 29829,\n  \"amish</w>\": 24958,\n  \"amit\": 15083,\n  \"amit</w>\": 25255,\n  \"amitabh</w>\": 48124,\n  \"amitshah</w>\": 32374,\n  \"aml</w>\": 43185,\n  \"amma</w>\": 29786,\n  \"amman</w>\": 29243,\n  \"ammo</w>\": 33474,\n  \"ammunition</w>\": 35060,\n  \"amn</w>\": 24073,\n  \"amne\": 14596,\n  \"amnesia</w>\": 41741,\n  \"amnesty\": 46330,\n  \"amnesty</w>\": 21177,\n  \"amo\": 4833,\n  \"amo</w>\": 11156,\n  \"amodi</w>\": 9826,\n  \"amon\": 17492,\n  \"amon</w>\": 24046,\n  \"among\": 12310,\n  \"among</w>\": 4265,\n  \"amongst</w>\": 12520,\n  \"amoo</w>\": 26977,\n  \"amor\": 19977,\n  \"amor</w>\": 15973,\n  \"amore\": 38937,\n  \"amore</w>\": 22691,\n  \"amores</w>\": 36338,\n  \"amos</w>\": 18133,\n  \"amoto</w>\": 25492,\n  \"amount</w>\": 6403,\n  \"amounts</w>\": 16747,\n  \"amour</w>\": 29908,\n  \"amovie</w>\": 41062,\n  \"amp\": 3521,\n  \"amp</w>\": 6259,\n  \"amped</w>\": 22640,\n  \"amphi\": 16379,\n  \"amphibious</w>\": 45206,\n  \"amphitheater</w>\": 41285,\n  \"amphitheatre</w>\": 44039,\n  \"ample</w>\": 34162,\n  \"amples</w>\": 14536,\n  \"ampli\": 15647,\n  \"amplifier</w>\": 31743,\n  \"amplify</w>\": 45308,\n  \"amps</w>\": 19252,\n  \"ampton\": 29410,\n  \"ampton</w>\": 9347,\n  \"amr</w>\": 30916,\n  \"amreading</w>\": 16546,\n  \"amrit\": 33849,\n  \"ams</w>\": 1396,\n  \"amster\": 9110,\n  \"amsterdam</w>\": 9441,\n  \"amtrak</w>\": 27855,\n  \"amu\": 11347,\n  \"amu</w>\": 32336,\n  \"amur\": 35014,\n  \"amura</w>\": 35487,\n  \"amus</w>\": 36269,\n  \"amuse\": 21421,\n  \"amuse</w>\": 44367,\n  \"amused</w>\": 30212,\n  \"amusement</w>\": 32570,\n  \"amusic</w>\": 20266,\n  \"amusing</w>\": 31789,\n  \"amwriting</w>\": 9660,\n  \"amy\": 10547,\n  \"amy</w>\": 5187,\n  \"an\": 514,\n  \"an</w>\": 550,\n  \"ana\": 6588,\n  \"ana</w>\": 1388,\n  \"anab\": 34742,\n  \"anada</w>\": 27948,\n  \"anag\": 12115,\n  \"anagh</w>\": 40774,\n  \"anaheim</w>\": 23728,\n  \"anak\": 34814,\n  \"anak</w>\": 38658,\n  \"anal\": 2785,\n  \"analo\": 34179,\n  \"analog</w>\": 19963,\n  \"analogue</w>\": 46031,\n  \"analy\": 4611,\n  \"analyse</w>\": 47246,\n  \"analyses</w>\": 39695,\n  \"analysis</w>\": 5296,\n  \"analyst</w>\": 14198,\n  \"analysts</w>\": 28075,\n  \"analytical</w>\": 34550,\n  \"analytics</w>\": 8558,\n  \"analyze</w>\": 28519,\n  \"analyzing</w>\": 32107,\n  \"anam\": 29525,\n  \"anan\": 37215,\n  \"anand\": 25073,\n  \"anand</w>\": 22083,\n  \"anap\": 41566,\n  \"anarch\": 46405,\n  \"anarchi\": 39879,\n  \"anarchy</w>\": 27707,\n  \"anas\": 31382,\n  \"anas</w>\": 12633,\n  \"anast\": 48902,\n  \"anasta\": 22915,\n  \"anastasi\": 36534,\n  \"anastasia</w>\": 37975,\n  \"anat\": 10045,\n  \"anath</w>\": 31277,\n  \"anatom\": 33759,\n  \"anatomy</w>\": 15376,\n  \"anc\": 1124,\n  \"anc</w>\": 17758,\n  \"anca</w>\": 14583,\n  \"ance\": 7165,\n  \"ance</w>\": 884,\n  \"anced</w>\": 5071,\n  \"ancer</w>\": 17415,\n  \"ancers</w>\": 37296,\n  \"ances</w>\": 3515,\n  \"ancestor</w>\": 43904,\n  \"ancestors</w>\": 24405,\n  \"ancestral</w>\": 41615,\n  \"ancestry</w>\": 30922,\n  \"anch\": 9489,\n  \"anche</w>\": 34679,\n  \"ancho\": 26610,\n  \"anchor\": 20030,\n  \"anchor</w>\": 13201,\n  \"anchorage</w>\": 31950,\n  \"anchored</w>\": 45926,\n  \"anchors</w>\": 37830,\n  \"anci\": 4192,\n  \"ancient\": 31495,\n  \"ancient</w>\": 5810,\n  \"ancies</w>\": 21647,\n  \"ancing</w>\": 7797,\n  \"anco</w>\": 15459,\n  \"ancy\": 16282,\n  \"ancy</w>\": 3633,\n  \"and\": 672,\n  \"and</w>\": 537,\n  \"anda</w>\": 2911,\n  \"andalu\": 31443,\n  \"andco</w>\": 36302,\n  \"ande\": 26889,\n  \"ande</w>\": 30354,\n  \"ander\": 3740,\n  \"ander</w>\": 3935,\n  \"anders</w>\": 10880,\n  \"andersen</w>\": 32661,\n  \"anderson\": 26683,\n  \"anderson</w>\": 6510,\n  \"andes</w>\": 24052,\n  \"andfriends</w>\": 36871,\n  \"andhi</w>\": 21617,\n  \"andhra</w>\": 32452,\n  \"andi\": 28870,\n  \"andi</w>\": 14354,\n  \"andie</w>\": 46318,\n  \"andme</w>\": 42831,\n  \"ando\": 35950,\n  \"ando</w>\": 5986,\n  \"andolan</w>\": 48965,\n  \"andon</w>\": 36488,\n  \"andor\": 45243,\n  \"andover</w>\": 44177,\n  \"andr\": 22661,\n  \"andra\": 46795,\n  \"andra</w>\": 21730,\n  \"andre\": 2657,\n  \"andre</w>\": 9400,\n  \"andrea</w>\": 10895,\n  \"andreas</w>\": 20444,\n  \"andrei</w>\": 42137,\n  \"andres</w>\": 25197,\n  \"andretti</w>\": 44291,\n  \"andrew\": 11717,\n  \"andrew</w>\": 4847,\n  \"andrews</w>\": 14506,\n  \"andri\": 37208,\n  \"andro\": 4417,\n  \"andro</w>\": 17980,\n  \"android\": 24284,\n  \"android</w>\": 5191,\n  \"androidgames</w>\": 46572,\n  \"andromeda</w>\": 42942,\n  \"andrÃ©</w>\": 35609,\n  \"ands</w>\": 32257,\n  \"andthe\": 22111,\n  \"andu\": 44200,\n  \"andum</w>\": 47266,\n  \"andy\": 9447,\n  \"andy</w>\": 2888,\n  \"ane\": 5846,\n  \"ane</w>\": 3051,\n  \"anec\": 33965,\n  \"anem\": 41395,\n  \"anemone</w>\": 49019,\n  \"aneous</w>\": 48273,\n  \"anes</w>\": 15381,\n  \"anese</w>\": 48778,\n  \"anesthe\": 30622,\n  \"anesthesia</w>\": 43353,\n  \"anew\": 39084,\n  \"anew</w>\": 47341,\n  \"anews</w>\": 20919,\n  \"aney</w>\": 22387,\n  \"anfield</w>\": 26993,\n  \"ang\": 883,\n  \"ang</w>\": 2704,\n  \"anga</w>\": 11641,\n  \"angames</w>\": 43178,\n  \"angan</w>\": 28264,\n  \"angas</w>\": 46180,\n  \"ange\": 2960,\n  \"ange</w>\": 3039,\n  \"angel\": 5029,\n  \"angel</w>\": 5130,\n  \"angela</w>\": 12354,\n  \"angeles</w>\": 7382,\n  \"angeli\": 15265,\n  \"angelic</w>\": 41038,\n  \"angelica</w>\": 38582,\n  \"angelina</w>\": 28890,\n  \"angelo</w>\": 14342,\n  \"angelou</w>\": 41328,\n  \"angels</w>\": 7809,\n  \"anger\": 32737,\n  \"anger</w>\": 6788,\n  \"angerous</w>\": 39716,\n  \"angers</w>\": 29756,\n  \"angh\": 34030,\n  \"angi\": 28003,\n  \"angi</w>\": 24301,\n  \"angie</w>\": 18859,\n  \"angle\": 21749,\n  \"angle</w>\": 6946,\n  \"angled</w>\": 32322,\n  \"angler</w>\": 22284,\n  \"anglers</w>\": 41608,\n  \"angles</w>\": 18627,\n  \"anglesey</w>\": 31850,\n  \"anglia</w>\": 32076,\n  \"anglic\": 28322,\n  \"anglican</w>\": 33284,\n  \"angling</w>\": 36824,\n  \"anglo\": 39515,\n  \"anglo</w>\": 30408,\n  \"ango</w>\": 19090,\n  \"angola</w>\": 36636,\n  \"angor</w>\": 41740,\n  \"angp</w>\": 19992,\n  \"angry\": 33910,\n  \"angry</w>\": 9054,\n  \"angs</w>\": 18441,\n  \"angst</w>\": 41714,\n  \"angu\": 11209,\n  \"angular\": 43584,\n  \"angular</w>\": 24981,\n  \"angularjs</w>\": 48608,\n  \"angus</w>\": 19688,\n  \"ani\": 1326,\n  \"ani</w>\": 3624,\n  \"ania</w>\": 9866,\n  \"anian</w>\": 9945,\n  \"anians</w>\": 39393,\n  \"anic</w>\": 23113,\n  \"anie\": 26697,\n  \"anie</w>\": 7671,\n  \"anil\": 28589,\n  \"anil</w>\": 34619,\n  \"anim\": 2190,\n  \"animal\": 10697,\n  \"animal</w>\": 4668,\n  \"animalrights</w>\": 42859,\n  \"animals</w>\": 4995,\n  \"animate</w>\": 40076,\n  \"animated</w>\": 13360,\n  \"animation</w>\": 10344,\n  \"animations</w>\": 42870,\n  \"animator</w>\": 42591,\n  \"anime\": 23314,\n  \"anime</w>\": 6469,\n  \"anin</w>\": 45735,\n  \"aning</w>\": 30972,\n  \"anir\": 27089,\n  \"anirud\": 35278,\n  \"anirudhofficial</w>\": 45917,\n  \"anis\": 40986,\n  \"anis</w>\": 47556,\n  \"anism</w>\": 20947,\n  \"anist</w>\": 16729,\n  \"anistan</w>\": 9727,\n  \"aniston</w>\": 47344,\n  \"anit\": 23683,\n  \"anita</w>\": 18544,\n  \"anium</w>\": 14794,\n  \"anj\": 22443,\n  \"anja</w>\": 43440,\n  \"anjali</w>\": 38834,\n  \"anjo</w>\": 47353,\n  \"ank\": 13339,\n  \"ank</w>\": 10029,\n  \"anka</w>\": 45324,\n  \"ankara</w>\": 34309,\n  \"ankle</w>\": 14777,\n  \"ankles</w>\": 48688,\n  \"ann\": 850,\n  \"ann</w>\": 5424,\n  \"anna\": 13821,\n  \"anna</w>\": 2160,\n  \"annab\": 22336,\n  \"annabelle</w>\": 47661,\n  \"annah\": 39166,\n  \"annah</w>\": 14327,\n  \"annak\": 41720,\n  \"annan</w>\": 32166,\n  \"annapolis</w>\": 34491,\n  \"annas\": 48467,\n  \"anne\": 9139,\n  \"anne</w>\": 4083,\n  \"anned</w>\": 27352,\n  \"anner</w>\": 12642,\n  \"annes</w>\": 24343,\n  \"annette</w>\": 36821,\n  \"annex\": 42958,\n  \"annex</w>\": 46389,\n  \"anni\": 2438,\n  \"anni</w>\": 13728,\n  \"annie\": 37270,\n  \"annie</w>\": 12173,\n  \"annies</w>\": 43184,\n  \"annihil\": 32734,\n  \"annis</w>\": 24742,\n  \"anniv</w>\": 31399,\n  \"anniver\": 29671,\n  \"annivers\": 42836,\n  \"anniversaire</w>\": 30882,\n  \"anniversary</w>\": 3048,\n  \"anno\": 9901,\n  \"anno</w>\": 26871,\n  \"annon</w>\": 26385,\n  \"annot\": 30411,\n  \"announ\": 1806,\n  \"announce</w>\": 3682,\n  \"announced</w>\": 4103,\n  \"announcement</w>\": 6932,\n  \"announcements</w>\": 23735,\n  \"announcer</w>\": 33626,\n  \"announces</w>\": 6500,\n  \"announcing</w>\": 11593,\n  \"annoy</w>\": 45138,\n  \"annoyed</w>\": 29863,\n  \"annoying</w>\": 15248,\n  \"annu\": 21698,\n  \"annual</w>\": 2906,\n  \"annually</w>\": 23703,\n  \"anny\": 34313,\n  \"anny</w>\": 5291,\n  \"ano\": 5617,\n  \"ano</w>\": 2658,\n  \"anom\": 21612,\n  \"anomaly</w>\": 46811,\n  \"anon\": 47079,\n  \"anon</w>\": 13667,\n  \"anonym\": 38605,\n  \"anonymous</w>\": 15036,\n  \"anoo\": 25690,\n  \"anor\": 13243,\n  \"anor</w>\": 16596,\n  \"anos</w>\": 20132,\n  \"another\": 29274,\n  \"another</w>\": 1380,\n  \"anova</w>\": 24116,\n  \"ans\": 24586,\n  \"ans</w>\": 885,\n  \"ansari</w>\": 40748,\n  \"ansel\": 40356,\n  \"answ\": 3369,\n  \"answe\": 14391,\n  \"answer</w>\": 4518,\n  \"answered</w>\": 14499,\n  \"answering</w>\": 18280,\n  \"answers</w>\": 8692,\n  \"ant\": 1103,\n  \"ant</w>\": 773,\n  \"anta</w>\": 3023,\n  \"antag\": 41745,\n  \"antal\": 39355,\n  \"antalya</w>\": 47440,\n  \"antan\": 32899,\n  \"antarc\": 21338,\n  \"antarctic</w>\": 27077,\n  \"antarctica</w>\": 22587,\n  \"ante\": 19311,\n  \"ante</w>\": 9769,\n  \"antebellum</w>\": 41683,\n  \"antelope</w>\": 39177,\n  \"anten\": 35517,\n  \"antenna</w>\": 26370,\n  \"anter\": 46508,\n  \"antes</w>\": 14927,\n  \"antgrasso</w>\": 39074,\n  \"anth\": 3737,\n  \"anth</w>\": 29741,\n  \"antha</w>\": 47981,\n  \"anthe\": 34167,\n  \"anthem</w>\": 12504,\n  \"anthi</w>\": 45261,\n  \"anthology</w>\": 21009,\n  \"anthony\": 17477,\n  \"anthony</w>\": 6113,\n  \"anthro\": 10019,\n  \"anthropo\": 18538,\n  \"anthropology</w>\": 32407,\n  \"anthus</w>\": 37639,\n  \"anti\": 3120,\n  \"anti</w>\": 3564,\n  \"antibio\": 18954,\n  \"antibiotic</w>\": 34387,\n  \"antibiotics</w>\": 29499,\n  \"antibody</w>\": 49018,\n  \"antic\": 8260,\n  \"anticip\": 11435,\n  \"anticipate</w>\": 38280,\n  \"anticipated</w>\": 18605,\n  \"anticipating</w>\": 48067,\n  \"anticipation</w>\": 26983,\n  \"antics</w>\": 37126,\n  \"antidote</w>\": 45476,\n  \"antifa</w>\": 35926,\n  \"antigua</w>\": 39910,\n  \"antine</w>\": 17641,\n  \"antino</w>\": 27818,\n  \"antioxid\": 23010,\n  \"antioxidant</w>\": 37452,\n  \"antioxidants</w>\": 34208,\n  \"antiqu\": 21745,\n  \"antique\": 46517,\n  \"antique</w>\": 9060,\n  \"antiques</w>\": 17365,\n  \"antis</w>\": 19748,\n  \"antisemitism</w>\": 36630,\n  \"antit\": 37833,\n  \"antitrust</w>\": 49343,\n  \"antlers</w>\": 47720,\n  \"antly</w>\": 5265,\n  \"anto\": 16826,\n  \"anto</w>\": 24486,\n  \"antoine</w>\": 25188,\n  \"anton\": 5497,\n  \"anton</w>\": 19644,\n  \"antoni\": 39958,\n  \"antonio\": 30497,\n  \"antonio</w>\": 7842,\n  \"antony</w>\": 30707,\n  \"antrim</w>\": 40252,\n  \"ants</w>\": 1589,\n  \"antv</w>\": 47520,\n  \"antw\": 44460,\n  \"antwer\": 26970,\n  \"antwerp</w>\": 33797,\n  \"antz</w>\": 25684,\n  \"anu\": 8537,\n  \"anu</w>\": 17152,\n  \"anup\": 29617,\n  \"anus</w>\": 27084,\n  \"anush\": 22765,\n  \"anushka\": 42080,\n  \"anushka</w>\": 39822,\n  \"anushkasharma</w>\": 44203,\n  \"anwar</w>\": 34261,\n  \"anxi\": 9021,\n  \"anxiety</w>\": 11103,\n  \"anxious</w>\": 27793,\n  \"any\": 1307,\n  \"any</w>\": 1504,\n  \"anya</w>\": 11173,\n  \"anybody</w>\": 10071,\n  \"anyi</w>\": 41632,\n  \"anymore</w>\": 7372,\n  \"anyone</w>\": 2302,\n  \"anything</w>\": 3582,\n  \"anytime</w>\": 13924,\n  \"anyway</w>\": 8931,\n  \"anyways</w>\": 19778,\n  \"anywhere</w>\": 8863,\n  \"anz\": 14445,\n  \"anz</w>\": 19425,\n  \"anza</w>\": 14669,\n  \"anzac</w>\": 31977,\n  \"ao\": 7313,\n  \"ao</w>\": 5703,\n  \"aoa</w>\": 47119,\n  \"aoc</w>\": 31918,\n  \"aofficial</w>\": 30840,\n  \"aoki</w>\": 33602,\n  \"aol</w>\": 40643,\n  \"aon\": 30928,\n  \"aon</w>\": 48476,\n  \"aor\": 32044,\n  \"aos</w>\": 46860,\n  \"ap\": 688,\n  \"ap</w>\": 2728,\n  \"apa\": 36954,\n  \"apa</w>\": 13537,\n  \"apac</w>\": 34320,\n  \"apache</w>\": 23921,\n  \"apal\": 38017,\n  \"apan</w>\": 36562,\n  \"apar\": 9161,\n  \"apark</w>\": 32528,\n  \"apart\": 6474,\n  \"apart</w>\": 7803,\n  \"aparthe\": 25121,\n  \"apartheid</w>\": 26597,\n  \"apartment</w>\": 8285,\n  \"apartments</w>\": 15791,\n  \"aparty</w>\": 26767,\n  \"apat\": 31755,\n  \"apathy</w>\": 18145,\n  \"apc</w>\": 20300,\n  \"apd</w>\": 44563,\n  \"ape\": 6098,\n  \"ape</w>\": 2609,\n  \"apec</w>\": 47530,\n  \"aper\": 13681,\n  \"aper</w>\": 5858,\n  \"apers</w>\": 15846,\n  \"apes</w>\": 9550,\n  \"apeu\": 19040,\n  \"apex\": 41935,\n  \"apex</w>\": 23712,\n  \"aph\": 16341,\n  \"aph</w>\": 29491,\n  \"apha</w>\": 47104,\n  \"apho\": 21758,\n  \"aphra\": 44147,\n  \"api\": 23342,\n  \"api</w>\": 14674,\n  \"apia</w>\": 44259,\n  \"apic\": 40679,\n  \"aping</w>\": 18456,\n  \"apink</w>\": 35725,\n  \"apis</w>\": 37575,\n  \"apk</w>\": 27648,\n  \"apo\": 4089,\n  \"apo</w>\": 19758,\n  \"apocaly\": 13932,\n  \"apocalypse</w>\": 17571,\n  \"apocalyptic</w>\": 35675,\n  \"apol\": 5023,\n  \"apolice</w>\": 45663,\n  \"apolis</w>\": 9598,\n  \"apollo\": 48213,\n  \"apollo</w>\": 11554,\n  \"apolo\": 31094,\n  \"apolog\": 25530,\n  \"apologe\": 42908,\n  \"apologi\": 14977,\n  \"apologies</w>\": 21959,\n  \"apologise</w>\": 39608,\n  \"apologize</w>\": 22879,\n  \"apologizes</w>\": 35298,\n  \"apology</w>\": 20768,\n  \"apor\": 21871,\n  \"apore</w>\": 6679,\n  \"apost\": 20309,\n  \"apostle</w>\": 33051,\n  \"apostles</w>\": 48457,\n  \"app\": 882,\n  \"app</w>\": 2231,\n  \"appa\": 4884,\n  \"appa</w>\": 13110,\n  \"appalach\": 30523,\n  \"appalachian</w>\": 36806,\n  \"appalling</w>\": 44797,\n  \"appar\": 26698,\n  \"apparatus</w>\": 37716,\n  \"apparel</w>\": 13972,\n  \"apparent</w>\": 23963,\n  \"apparently</w>\": 5287,\n  \"appe\": 3748,\n  \"appe</w>\": 45949,\n  \"appeal</w>\": 9625,\n  \"appealing</w>\": 25909,\n  \"appeals</w>\": 22447,\n  \"appear\": 5544,\n  \"appear</w>\": 9308,\n  \"appearance</w>\": 7238,\n  \"appearances</w>\": 17214,\n  \"appeared</w>\": 11561,\n  \"appearing</w>\": 18759,\n  \"appears</w>\": 8743,\n  \"appell\": 43833,\n  \"appen\": 37201,\n  \"appen</w>\": 26589,\n  \"apper</w>\": 18780,\n  \"appet\": 21686,\n  \"appeti\": 24179,\n  \"appetite</w>\": 24481,\n  \"appetizer</w>\": 36065,\n  \"applau\": 24713,\n  \"applaud</w>\": 42152,\n  \"applause</w>\": 22650,\n  \"apple\": 8629,\n  \"apple</w>\": 3055,\n  \"applemusic</w>\": 21390,\n  \"apples</w>\": 14032,\n  \"appleton</w>\": 45250,\n  \"appli\": 15495,\n  \"appliance</w>\": 33677,\n  \"appliances</w>\": 22134,\n  \"applic\": 4235,\n  \"applicable</w>\": 37927,\n  \"applicants</w>\": 28035,\n  \"application</w>\": 7241,\n  \"applications</w>\": 7341,\n  \"applied</w>\": 12636,\n  \"applies</w>\": 24910,\n  \"apply</w>\": 4356,\n  \"applying</w>\": 17965,\n  \"appo\": 5433,\n  \"appoint</w>\": 36190,\n  \"appointed</w>\": 11087,\n  \"appointment</w>\": 10890,\n  \"appointments</w>\": 23439,\n  \"appoints</w>\": 25132,\n  \"apprais\": 36972,\n  \"appraisal</w>\": 46108,\n  \"appreci\": 3474,\n  \"appreciate</w>\": 6263,\n  \"appreciated</w>\": 9264,\n  \"appreciates</w>\": 36573,\n  \"appreciating</w>\": 39352,\n  \"appreciation</w>\": 9212,\n  \"appreciationday</w>\": 37438,\n  \"appreciative</w>\": 45074,\n  \"appren\": 10582,\n  \"apprentic\": 15662,\n  \"apprentice\": 19122,\n  \"apprentice</w>\": 17985,\n  \"apprentices</w>\": 38252,\n  \"apprenticeship</w>\": 26939,\n  \"apprenticeships</w>\": 35425,\n  \"appro\": 2398,\n  \"approach\": 7781,\n  \"approach</w>\": 6241,\n  \"approached</w>\": 36499,\n  \"approaches</w>\": 14962,\n  \"approaching</w>\": 12164,\n  \"appropri\": 8446,\n  \"appropriate</w>\": 10768,\n  \"appropriately</w>\": 30383,\n  \"appropriation</w>\": 49110,\n  \"approval</w>\": 13549,\n  \"approve</w>\": 19064,\n  \"approved</w>\": 9412,\n  \"approves</w>\": 18107,\n  \"approx</w>\": 18266,\n  \"approxim\": 14201,\n  \"approximately</w>\": 16128,\n  \"apps</w>\": 7020,\n  \"appstore</w>\": 31377,\n  \"appt</w>\": 48112,\n  \"appy</w>\": 34420,\n  \"apr\": 39396,\n  \"apr</w>\": 11177,\n  \"apra\": 37027,\n  \"apric\": 25923,\n  \"apricot</w>\": 30815,\n  \"april\": 23548,\n  \"april</w>\": 2484,\n  \"apro\": 42712,\n  \"apro</w>\": 49051,\n  \"apron</w>\": 29502,\n  \"aps</w>\": 8868,\n  \"apse</w>\": 31843,\n  \"apt</w>\": 17921,\n  \"aptly</w>\": 47313,\n  \"apu\": 22166,\n  \"apur\": 36900,\n  \"apur</w>\": 45193,\n  \"aq\": 14018,\n  \"aq</w>\": 26862,\n  \"aqu\": 4458,\n  \"aqua</w>\": 18613,\n  \"aquaculture</w>\": 41885,\n  \"aquaman</w>\": 35098,\n  \"aquari\": 37605,\n  \"aquarium</w>\": 16814,\n  \"aquarius</w>\": 38879,\n  \"aquatic</w>\": 22658,\n  \"aque\": 35927,\n  \"aque</w>\": 37268,\n  \"aqui\": 36826,\n  \"aquino</w>\": 33796,\n  \"ar\": 516,\n  \"ar</w>\": 625,\n  \"ara\": 24161,\n  \"ara</w>\": 3340,\n  \"arab\": 5405,\n  \"arab</w>\": 12028,\n  \"arabia</w>\": 11746,\n  \"arabian</w>\": 24663,\n  \"arabic</w>\": 16709,\n  \"arabs</w>\": 39155,\n  \"arac\": 47620,\n  \"arach\": 37689,\n  \"arag\": 41502,\n  \"araj</w>\": 45142,\n  \"arak\": 23416,\n  \"aram\": 19223,\n  \"aram</w>\": 21473,\n  \"arama</w>\": 49066,\n  \"aran\": 20839,\n  \"aran</w>\": 19641,\n  \"aras</w>\": 36399,\n  \"arat</w>\": 30856,\n  \"arav\": 35836,\n  \"arbit\": 20267,\n  \"arbitr\": 22702,\n  \"arbitration</w>\": 34845,\n  \"arbor\": 33516,\n  \"arbor</w>\": 24878,\n  \"arboretum</w>\": 41719,\n  \"arc\": 4997,\n  \"arc</w>\": 11592,\n  \"arca\": 25189,\n  \"arca</w>\": 37612,\n  \"arcade</w>\": 13331,\n  \"arcadia</w>\": 38372,\n  \"arch\": 2458,\n  \"arch</w>\": 8557,\n  \"archa\": 45619,\n  \"archae\": 10121,\n  \"archaeological</w>\": 26163,\n  \"archaeologists</w>\": 45035,\n  \"archaeology</w>\": 14868,\n  \"archan\": 33359,\n  \"archbishop</w>\": 23994,\n  \"arche\": 22474,\n  \"archer</w>\": 21824,\n  \"archers</w>\": 38407,\n  \"archery</w>\": 23935,\n  \"arches</w>\": 30771,\n  \"archi\": 4479,\n  \"archie</w>\": 20557,\n  \"archipel\": 39750,\n  \"archipelago</w>\": 43025,\n  \"architec\": 3359,\n  \"architect</w>\": 12192,\n  \"architects</w>\": 13290,\n  \"architectural</w>\": 15360,\n  \"architecture\": 39038,\n  \"architecture</w>\": 4920,\n  \"archival</w>\": 39249,\n  \"archive\": 42257,\n  \"archive</w>\": 10548,\n  \"archived</w>\": 42379,\n  \"archives</w>\": 9411,\n  \"archy</w>\": 15643,\n  \"arctic\": 29716,\n  \"arctic</w>\": 9138,\n  \"ard\": 3793,\n  \"ard</w>\": 746,\n  \"arden\": 44600,\n  \"arden</w>\": 27057,\n  \"ardi\": 23932,\n  \"ardi</w>\": 19837,\n  \"ardo\": 35735,\n  \"ardo</w>\": 9394,\n  \"ards</w>\": 1654,\n  \"ardu\": 20906,\n  \"arduino</w>\": 25398,\n  \"are\": 1076,\n  \"are</w>\": 631,\n  \"area</w>\": 2445,\n  \"areas</w>\": 5429,\n  \"arec\": 18136,\n  \"areclipse</w>\": 36030,\n  \"ared</w>\": 5369,\n  \"arel</w>\": 12798,\n  \"arella</w>\": 24784,\n  \"arelli</w>\": 48619,\n  \"aren\": 4033,\n  \"aren</w>\": 4318,\n  \"arena</w>\": 5463,\n  \"arenas</w>\": 47860,\n  \"arent</w>\": 37487,\n  \"arer</w>\": 14857,\n  \"arers</w>\": 33159,\n  \"ares</w>\": 12224,\n  \"arest</w>\": 11708,\n  \"aret</w>\": 22247,\n  \"areth</w>\": 47725,\n  \"aretha</w>\": 42090,\n  \"areyou\": 37607,\n  \"arez</w>\": 13108,\n  \"arg</w>\": 27285,\n  \"argent\": 7812,\n  \"argentina</w>\": 9789,\n  \"argentine</w>\": 32582,\n  \"argon\": 40737,\n  \"argos</w>\": 37443,\n  \"argu\": 7440,\n  \"arguably</w>\": 30899,\n  \"argue</w>\": 19788,\n  \"argued</w>\": 48153,\n  \"argues</w>\": 30045,\n  \"arguing</w>\": 26549,\n  \"argument</w>\": 16224,\n  \"arguments</w>\": 24693,\n  \"argus</w>\": 44300,\n  \"argy\": 21066,\n  \"argyle</w>\": 36179,\n  \"argyll</w>\": 40667,\n  \"ari\": 1221,\n  \"ari</w>\": 3681,\n  \"aria</w>\": 8883,\n  \"arial</w>\": 42431,\n  \"arian\": 29980,\n  \"arian</w>\": 6953,\n  \"ariana</w>\": 14892,\n  \"arianag\": 23025,\n  \"arianagrande</w>\": 23321,\n  \"arianism</w>\": 44351,\n  \"arians</w>\": 19104,\n  \"arias</w>\": 22567,\n  \"arie</w>\": 18774,\n  \"ariel\": 47959,\n  \"ariel</w>\": 21025,\n  \"aries</w>\": 5213,\n  \"arif</w>\": 46621,\n  \"arily</w>\": 12993,\n  \"arin\": 29564,\n  \"arin</w>\": 18612,\n  \"arina</w>\": 29271,\n  \"arine</w>\": 29586,\n  \"aring</w>\": 2142,\n  \"ario</w>\": 8862,\n  \"arios</w>\": 25392,\n  \"aris</w>\": 15227,\n  \"arise</w>\": 26490,\n  \"arist</w>\": 12110,\n  \"aristo\": 25666,\n  \"aristotle</w>\": 49156,\n  \"arities</w>\": 31069,\n  \"arity</w>\": 16608,\n  \"arium</w>\": 11809,\n  \"arius</w>\": 21482,\n  \"ariz\": 6516,\n  \"arized</w>\": 40167,\n  \"arizon\": 28936,\n  \"arizona</w>\": 7106,\n  \"arjun\": 24565,\n  \"arjun</w>\": 20477,\n  \"arjuna</w>\": 43835,\n  \"ark\": 11921,\n  \"ark</w>\": 12010,\n  \"arkansas</w>\": 12227,\n  \"arkham</w>\": 36381,\n  \"arl</w>\": 48542,\n  \"arlington\": 44940,\n  \"arlington</w>\": 17865,\n  \"arly</w>\": 3637,\n  \"arm\": 5671,\n  \"arm</w>\": 4793,\n  \"arma\": 15887,\n  \"arma</w>\": 38716,\n  \"armad\": 37897,\n  \"armada</w>\": 34938,\n  \"armagh</w>\": 44313,\n  \"armani</w>\": 31314,\n  \"armb\": 37096,\n  \"armchair</w>\": 45757,\n  \"armed\": 40471,\n  \"armed</w>\": 8202,\n  \"armen\": 13145,\n  \"armenia</w>\": 22008,\n  \"armenian</w>\": 24891,\n  \"armies</w>\": 46686,\n  \"armin\": 45481,\n  \"arming</w>\": 19766,\n  \"armist\": 38150,\n  \"armistice</w>\": 46765,\n  \"armor</w>\": 16167,\n  \"armored</w>\": 28214,\n  \"armory</w>\": 38610,\n  \"armour</w>\": 18503,\n  \"armoured</w>\": 42514,\n  \"arms</w>\": 5706,\n  \"armstrong</w>\": 15005,\n  \"army\": 13541,\n  \"army</w>\": 3133,\n  \"armys</w>\": 27311,\n  \"arn\": 9348,\n  \"arn</w>\": 37597,\n  \"arnau\": 45556,\n  \"arne</w>\": 43509,\n  \"arney</w>\": 35962,\n  \"arnold\": 49096,\n  \"arnold</w>\": 13609,\n  \"arns</w>\": 46692,\n  \"aro\": 7514,\n  \"aro</w>\": 11551,\n  \"aroa</w>\": 48209,\n  \"arom\": 16831,\n  \"aroma\": 40143,\n  \"aroma</w>\": 26390,\n  \"aromas</w>\": 47439,\n  \"aromatherapy</w>\": 42584,\n  \"aromatic</w>\": 39669,\n  \"aron\": 30855,\n  \"aron</w>\": 28926,\n  \"aroo</w>\": 47581,\n  \"arora</w>\": 31897,\n  \"arosa</w>\": 44264,\n  \"arose</w>\": 44262,\n  \"around\": 35615,\n  \"around</w>\": 1630,\n  \"arqu\": 35654,\n  \"arquitec\": 41703,\n  \"arr\": 39106,\n  \"arr</w>\": 42489,\n  \"arra\": 32918,\n  \"arra</w>\": 43827,\n  \"arrahman</w>\": 44554,\n  \"arran</w>\": 45722,\n  \"arrang\": 16711,\n  \"arrange\": 15410,\n  \"arrange</w>\": 26311,\n  \"arranged</w>\": 22451,\n  \"arrangement</w>\": 23822,\n  \"arrangements</w>\": 23792,\n  \"arranging</w>\": 35321,\n  \"array</w>\": 17293,\n  \"arre\": 4374,\n  \"arrell</w>\": 28846,\n  \"arrest</w>\": 9320,\n  \"arrested</w>\": 5845,\n  \"arresting</w>\": 43930,\n  \"arrests</w>\": 20683,\n  \"arri\": 2115,\n  \"arrival</w>\": 9073,\n  \"arrivals</w>\": 19583,\n  \"arrive</w>\": 8851,\n  \"arrived</w>\": 3514,\n  \"arrives</w>\": 9905,\n  \"arriving</w>\": 10884,\n  \"arro\": 15729,\n  \"arrog\": 26997,\n  \"arrogance</w>\": 47025,\n  \"arrogant</w>\": 40582,\n  \"arrow\": 30920,\n  \"arrow</w>\": 11149,\n  \"arrowhead</w>\": 46393,\n  \"arrows</w>\": 24768,\n  \"arroyo</w>\": 45237,\n  \"ars\": 42815,\n  \"ars</w>\": 864,\n  \"arse</w>\": 22665,\n  \"arsen\": 5330,\n  \"arsenal\": 45234,\n  \"arsenal</w>\": 6084,\n  \"arsene</w>\": 32117,\n  \"arson</w>\": 29937,\n  \"art\": 1486,\n  \"art</w>\": 794,\n  \"arta</w>\": 12031,\n  \"arte\": 13482,\n  \"arte</w>\": 12947,\n  \"artem\": 40387,\n  \"artemis</w>\": 45256,\n  \"arten</w>\": 37043,\n  \"arter\": 29449,\n  \"artery</w>\": 40062,\n  \"artes</w>\": 48629,\n  \"artforsale</w>\": 48239,\n  \"artgallery</w>\": 31982,\n  \"arth\": 7146,\n  \"arth</w>\": 20265,\n  \"arthistory</w>\": 39313,\n  \"arthr\": 20807,\n  \"arthritis</w>\": 22916,\n  \"arthro\": 43255,\n  \"arthur\": 35660,\n  \"arthur</w>\": 8550,\n  \"arti\": 1635,\n  \"arti</w>\": 34601,\n  \"artic\": 3003,\n  \"articho\": 30937,\n  \"artichoke</w>\": 39647,\n  \"article</w>\": 3550,\n  \"articles</w>\": 11939,\n  \"articul\": 40343,\n  \"articulate</w>\": 45444,\n  \"artif\": 8950,\n  \"artifact</w>\": 37718,\n  \"artifacts</w>\": 30249,\n  \"artificial\": 19357,\n  \"artificial</w>\": 12040,\n  \"artificialintelligence</w>\": 20799,\n  \"artillery</w>\": 24465,\n  \"artin\": 33168,\n  \"artin</w>\": 48540,\n  \"artis</w>\": 41794,\n  \"artisan\": 36389,\n  \"artisan</w>\": 21535,\n  \"artisans</w>\": 40140,\n  \"artist\": 14326,\n  \"artist</w>\": 2456,\n  \"artiste</w>\": 41402,\n  \"artistic</w>\": 12421,\n  \"artiston\": 48443,\n  \"artistry</w>\": 38570,\n  \"artists</w>\": 4899,\n  \"artistson\": 32127,\n  \"artistsontwitter</w>\": 39469,\n  \"artlovers</w>\": 35617,\n  \"arto\": 28464,\n  \"artof\": 31751,\n  \"artoftheday</w>\": 43990,\n  \"arton</w>\": 46744,\n  \"arts\": 22040,\n  \"arts</w>\": 3812,\n  \"artsy</w>\": 31588,\n  \"arturo</w>\": 38591,\n  \"artwit</w>\": 36713,\n  \"artwork</w>\": 4188,\n  \"artworks</w>\": 26215,\n  \"arty\": 45417,\n  \"arty</w>\": 25916,\n  \"aru\": 13757,\n  \"aru</w>\": 23907,\n  \"aruba</w>\": 40131,\n  \"arugula</w>\": 40770,\n  \"arum</w>\": 48732,\n  \"arun\": 16105,\n  \"arun</w>\": 31877,\n  \"arunach\": 47260,\n  \"arunjaitley</w>\": 44874,\n  \"arus</w>\": 22644,\n  \"arvin\": 16971,\n  \"arvind\": 21209,\n  \"arvind</w>\": 41079,\n  \"arvindkejriwal</w>\": 22971,\n  \"arvo</w>\": 45726,\n  \"arwx</w>\": 29824,\n  \"ary\": 4617,\n  \"ary</w>\": 856,\n  \"arya</w>\": 23594,\n  \"aryan</w>\": 34966,\n  \"as\": 587,\n  \"as</w>\": 601,\n  \"asa\": 39676,\n  \"asa</w>\": 11914,\n  \"asad</w>\": 42376,\n  \"asaki</w>\": 22455,\n  \"asam\": 40603,\n  \"asan\": 22379,\n  \"asan</w>\": 17841,\n  \"asana</w>\": 42363,\n  \"asant</w>\": 25536,\n  \"asants</w>\": 37766,\n  \"asap\": 24199,\n  \"asap</w>\": 10822,\n  \"asar\": 24733,\n  \"asar</w>\": 49299,\n  \"asb</w>\": 31186,\n  \"asbe\": 32113,\n  \"asbestos</w>\": 33765,\n  \"asc\": 22720,\n  \"asc</w>\": 23305,\n  \"ascen\": 20767,\n  \"ascension</w>\": 35499,\n  \"ascent</w>\": 36625,\n  \"asci\": 12753,\n  \"asco\": 25578,\n  \"asco</w>\": 17488,\n  \"ascot</w>\": 23723,\n  \"ascri\": 15506,\n  \"asd</w>\": 36988,\n  \"asda</w>\": 29391,\n  \"asdf\": 36857,\n  \"asdfghj\": 42758,\n  \"asdfghjkl</w>\": 47660,\n  \"ase\": 8083,\n  \"ase</w>\": 894,\n  \"asean</w>\": 24472,\n  \"aseball</w>\": 46903,\n  \"ased</w>\": 2134,\n  \"asen\": 41085,\n  \"aser\": 39615,\n  \"aser</w>\": 7209,\n  \"ases</w>\": 3762,\n  \"asf</w>\": 25863,\n  \"asg</w>\": 34813,\n  \"ash\": 2067,\n  \"ash</w>\": 2612,\n  \"asha\": 40572,\n  \"asha</w>\": 13472,\n  \"ashamed</w>\": 20633,\n  \"ashby</w>\": 46531,\n  \"ashe\": 48523,\n  \"ashe</w>\": 31752,\n  \"asher</w>\": 37585,\n  \"ashes</w>\": 12587,\n  \"asheville</w>\": 28897,\n  \"ashford</w>\": 37796,\n  \"ashi\": 15563,\n  \"ashi</w>\": 15934,\n  \"ashish</w>\": 33145,\n  \"ashland</w>\": 39938,\n  \"ashleigh</w>\": 49356,\n  \"ashley\": 17825,\n  \"ashley</w>\": 8957,\n  \"asho\": 20273,\n  \"ashok</w>\": 38141,\n  \"ashore</w>\": 31194,\n  \"ashram</w>\": 43445,\n  \"ashton\": 43264,\n  \"ashton</w>\": 12228,\n  \"ashtra</w>\": 18118,\n  \"asi\": 3596,\n  \"asi</w>\": 12562,\n  \"asia</w>\": 5741,\n  \"asian\": 21737,\n  \"asian</w>\": 7128,\n  \"asiangames</w>\": 49108,\n  \"asians</w>\": 36771,\n  \"asics</w>\": 31097,\n  \"aside</w>\": 13676,\n  \"asif</w>\": 37302,\n  \"asim</w>\": 46050,\n  \"asin\": 48432,\n  \"asin</w>\": 44347,\n  \"asing</w>\": 4194,\n  \"asingly</w>\": 15803,\n  \"asion</w>\": 31753,\n  \"asis</w>\": 12398,\n  \"ask\": 11027,\n  \"ask</w>\": 2765,\n  \"asked</w>\": 3993,\n  \"asking</w>\": 5914,\n  \"asks</w>\": 7953,\n  \"asl</w>\": 41650,\n  \"asleep</w>\": 10749,\n  \"asley</w>\": 28206,\n  \"asli</w>\": 44290,\n  \"asm</w>\": 13851,\n  \"asma</w>\": 38497,\n  \"asmsg</w>\": 19839,\n  \"aso\": 30343,\n  \"aso</w>\": 27932,\n  \"asober\": 43749,\n  \"asocial</w>\": 48557,\n  \"ason</w>\": 1163,\n  \"asone</w>\": 31249,\n  \"asons</w>\": 4249,\n  \"asos</w>\": 37924,\n  \"asot</w>\": 47968,\n  \"asp\": 17814,\n  \"asp</w>\": 36666,\n  \"asparag\": 20301,\n  \"asparagus</w>\": 20604,\n  \"aspe\": 10894,\n  \"aspect</w>\": 19681,\n  \"aspects</w>\": 18203,\n  \"aspen\": 35695,\n  \"aspen</w>\": 25712,\n  \"asper\": 32991,\n  \"asph\": 28019,\n  \"asphalt</w>\": 30574,\n  \"aspir\": 12669,\n  \"aspirations</w>\": 36127,\n  \"aspire</w>\": 24836,\n  \"aspiring</w>\": 21862,\n  \"asports</w>\": 43695,\n  \"asr</w>\": 48052,\n  \"asroma</w>\": 41000,\n  \"ass\": 12664,\n  \"ass</w>\": 5301,\n  \"assa</w>\": 47715,\n  \"assad</w>\": 18699,\n  \"assam</w>\": 19930,\n  \"assan\": 26352,\n  \"assange</w>\": 27565,\n  \"assas\": 9603,\n  \"assassin\": 14366,\n  \"assassin</w>\": 20029,\n  \"assassinated</w>\": 40488,\n  \"assassination</w>\": 24907,\n  \"assassins</w>\": 34918,\n  \"assassinscre\": 36428,\n  \"assassinscreed</w>\": 46082,\n  \"assau\": 7908,\n  \"assaul\": 19596,\n  \"assault</w>\": 9679,\n  \"assaulted</w>\": 30785,\n  \"assaulting</w>\": 44143,\n  \"asse\": 3166,\n  \"asse</w>\": 38600,\n  \"assel</w>\": 37582,\n  \"assemb\": 5531,\n  \"assemble</w>\": 26169,\n  \"assembled</w>\": 22627,\n  \"assemblies</w>\": 47406,\n  \"assembling</w>\": 38670,\n  \"assembly\": 34542,\n  \"assembly</w>\": 7059,\n  \"assen</w>\": 38651,\n  \"asser\": 25665,\n  \"asses</w>\": 21596,\n  \"assess\": 9209,\n  \"assess</w>\": 23211,\n  \"assessed</w>\": 44160,\n  \"assessing</w>\": 31364,\n  \"assessment</w>\": 10590,\n  \"assessments</w>\": 32753,\n  \"asset\": 48463,\n  \"asset</w>\": 13039,\n  \"assets</w>\": 13170,\n  \"assi\": 2907,\n  \"assi</w>\": 39540,\n  \"assie</w>\": 31624,\n  \"assign\": 14190,\n  \"assigned</w>\": 25767,\n  \"assignment</w>\": 17342,\n  \"assignments</w>\": 34257,\n  \"assim</w>\": 36394,\n  \"assimil\": 43467,\n  \"assist\": 26558,\n  \"assist</w>\": 10286,\n  \"assistance</w>\": 11685,\n  \"assistant</w>\": 6799,\n  \"assistants</w>\": 31054,\n  \"assisted</w>\": 18095,\n  \"assisting</w>\": 24243,\n  \"assists</w>\": 12675,\n  \"assn</w>\": 44208,\n  \"asso</w>\": 17617,\n  \"assoc</w>\": 18891,\n  \"associ\": 3566,\n  \"associate</w>\": 11777,\n  \"associated</w>\": 11164,\n  \"associates</w>\": 17358,\n  \"association</w>\": 5578,\n  \"associations</w>\": 33209,\n  \"assor\": 38604,\n  \"assorted</w>\": 36701,\n  \"assortment</w>\": 43112,\n  \"asst</w>\": 24767,\n  \"assu\": 8328,\n  \"assume</w>\": 19294,\n  \"assumed</w>\": 37661,\n  \"assuming</w>\": 29422,\n  \"assump\": 41182,\n  \"assumption</w>\": 40773,\n  \"assumptions</w>\": 45948,\n  \"assurance</w>\": 28408,\n  \"assure</w>\": 39161,\n  \"assured</w>\": 25591,\n  \"assures</w>\": 41988,\n  \"assy\": 29940,\n  \"assy</w>\": 12963,\n  \"ast\": 1761,\n  \"ast</w>\": 1242,\n  \"asta</w>\": 43269,\n  \"aste\": 25033,\n  \"aste</w>\": 25579,\n  \"aster\": 11013,\n  \"aster</w>\": 9526,\n  \"asteroid</w>\": 32253,\n  \"asters</w>\": 33139,\n  \"asth\": 16684,\n  \"asthma</w>\": 24610,\n  \"asthour</w>\": 41238,\n  \"astic</w>\": 15876,\n  \"asting</w>\": 29984,\n  \"astle</w>\": 46141,\n  \"asto\": 47275,\n  \"aston\": 24760,\n  \"aston</w>\": 13879,\n  \"astoni\": 21962,\n  \"astonishing</w>\": 27110,\n  \"astonmartin</w>\": 40760,\n  \"astor\": 26391,\n  \"astor</w>\": 47086,\n  \"astoria</w>\": 34798,\n  \"astounding</w>\": 37748,\n  \"astr\": 37609,\n  \"astra\": 47205,\n  \"astra</w>\": 36079,\n  \"astral</w>\": 45889,\n  \"astri\": 31243,\n  \"astrid</w>\": 46499,\n  \"astro\": 8563,\n  \"astro</w>\": 15318,\n  \"astrology</w>\": 28526,\n  \"astron\": 7982,\n  \"astronaut</w>\": 18376,\n  \"astronauts</w>\": 29733,\n  \"astronom\": 23264,\n  \"astronomer</w>\": 40036,\n  \"astronomers</w>\": 44268,\n  \"astronomical</w>\": 39775,\n  \"astronomy</w>\": 17472,\n  \"astrophotography</w>\": 38559,\n  \"astros</w>\": 17598,\n  \"asts</w>\": 10452,\n  \"astu\": 43137,\n  \"astur\": 45795,\n  \"asu\": 13157,\n  \"asu</w>\": 16001,\n  \"asun\": 36044,\n  \"asure</w>\": 3813,\n  \"asus</w>\": 27269,\n  \"aswell</w>\": 42978,\n  \"asx</w>\": 38906,\n  \"asy\": 8524,\n  \"asy</w>\": 2333,\n  \"asylum</w>\": 15638,\n  \"asym\": 32539,\n  \"at\": 527,\n  \"at</w>\": 536,\n  \"ata</w>\": 4236,\n  \"atable</w>\": 23909,\n  \"atal\": 24877,\n  \"atal</w>\": 24797,\n  \"atan</w>\": 33446,\n  \"atar\": 20128,\n  \"atar</w>\": 7995,\n  \"atari</w>\": 21549,\n  \"atas</w>\": 30057,\n  \"atay\": 39518,\n  \"atc</w>\": 28383,\n  \"atch</w>\": 15938,\n  \"atd</w>\": 33890,\n  \"ate\": 992,\n  \"ate</w>\": 671,\n  \"ateam</w>\": 42784,\n  \"ateau</w>\": 16359,\n  \"atec\": 37352,\n  \"atech</w>\": 31306,\n  \"ated\": 14589,\n  \"ated</w>\": 943,\n  \"atedly</w>\": 24698,\n  \"atee</w>\": 32839,\n  \"ateful</w>\": 5419,\n  \"atelier</w>\": 29932,\n  \"ately</w>\": 3862,\n  \"atem\": 17116,\n  \"aten</w>\": 47984,\n  \"atene\": 30405,\n  \"ateneo</w>\": 33904,\n  \"ater\": 18597,\n  \"ater</w>\": 5877,\n  \"ateral</w>\": 18819,\n  \"aters</w>\": 22364,\n  \"ates\": 20370,\n  \"ates</w>\": 1150,\n  \"atest</w>\": 1705,\n  \"ateur</w>\": 43677,\n  \"atf</w>\": 28013,\n  \"ath\": 1374,\n  \"ath</w>\": 1649,\n  \"atha</w>\": 22530,\n  \"atham</w>\": 23383,\n  \"athan\": 41260,\n  \"athan</w>\": 26701,\n  \"athe\": 8963,\n  \"athed</w>\": 47402,\n  \"atheism</w>\": 25823,\n  \"atheist</w>\": 22571,\n  \"atheists</w>\": 47155,\n  \"athen\": 29112,\n  \"athena</w>\": 30705,\n  \"athens</w>\": 13524,\n  \"ather\": 6171,\n  \"ather</w>\": 1817,\n  \"athered</w>\": 34091,\n  \"athers</w>\": 17266,\n  \"athi</w>\": 28918,\n  \"athing</w>\": 36069,\n  \"athle\": 3310,\n  \"athlete</w>\": 7388,\n  \"athletes</w>\": 7125,\n  \"athletic\": 33182,\n  \"athletic</w>\": 9028,\n  \"athletics</w>\": 7019,\n  \"athlon</w>\": 14670,\n  \"athome</w>\": 38217,\n  \"athon</w>\": 4951,\n  \"aths</w>\": 28835,\n  \"athy\": 34488,\n  \"athy</w>\": 13183,\n  \"ati\": 591,\n  \"ati</w>\": 6751,\n  \"atia</w>\": 10908,\n  \"atic\": 20248,\n  \"atic</w>\": 2647,\n  \"atically</w>\": 13558,\n  \"atics</w>\": 15666,\n  \"atie</w>\": 30137,\n  \"aties</w>\": 40060,\n  \"atif</w>\": 41592,\n  \"atiku</w>\": 37912,\n  \"atile</w>\": 15474,\n  \"atility</w>\": 23373,\n  \"atime</w>\": 20158,\n  \"atin\": 36903,\n  \"atin</w>\": 23047,\n  \"atine</w>\": 39741,\n  \"ating\": 25653,\n  \"ating</w>\": 1074,\n  \"atio</w>\": 35401,\n  \"ation\": 2265,\n  \"ation</w>\": 656,\n  \"ational\": 14205,\n  \"ational</w>\": 3108,\n  \"ationals</w>\": 44593,\n  \"ationday</w>\": 20082,\n  \"ations</w>\": 986,\n  \"atis\": 45456,\n  \"atis</w>\": 41142,\n  \"atism</w>\": 45638,\n  \"ative\": 18422,\n  \"ative</w>\": 1648,\n  \"atively</w>\": 11929,\n  \"atives</w>\": 5629,\n  \"ativity</w>\": 25166,\n  \"atkins</w>\": 27734,\n  \"atkinson</w>\": 28908,\n  \"atl\": 5411,\n  \"atl</w>\": 10629,\n  \"atla\": 36043,\n  \"atlan\": 6818,\n  \"atlanta\": 39964,\n  \"atlanta</w>\": 6839,\n  \"atlantic\": 28804,\n  \"atlantic</w>\": 8189,\n  \"atlantis</w>\": 27790,\n  \"atlas</w>\": 15775,\n  \"atle\": 21170,\n  \"atleast</w>\": 33231,\n  \"atleti</w>\": 46067,\n  \"atletico</w>\": 27501,\n  \"atm</w>\": 14127,\n  \"atmo\": 8271,\n  \"atmosphere</w>\": 10506,\n  \"atmospheric</w>\": 24223,\n  \"ato\": 7987,\n  \"ato</w>\": 4364,\n  \"atoday</w>\": 26799,\n  \"atom\": 22418,\n  \"atom</w>\": 24031,\n  \"atomic</w>\": 18996,\n  \"atoms</w>\": 41434,\n  \"aton\": 31525,\n  \"aton</w>\": 10012,\n  \"atop</w>\": 17455,\n  \"ator\": 10748,\n  \"ator</w>\": 1962,\n  \"atore</w>\": 28314,\n  \"atorial</w>\": 32040,\n  \"atories</w>\": 35678,\n  \"atorium</w>\": 41306,\n  \"ators</w>\": 3389,\n  \"atory</w>\": 5920,\n  \"atos</w>\": 41643,\n  \"atour</w>\": 42967,\n  \"atown</w>\": 24000,\n  \"atp\": 38105,\n  \"atp</w>\": 19817,\n  \"atr</w>\": 43247,\n  \"atra\": 20227,\n  \"atra</w>\": 14401,\n  \"atravel</w>\": 36981,\n  \"atre\": 46057,\n  \"atri\": 13882,\n  \"atri</w>\": 38889,\n  \"atric\": 32238,\n  \"atric</w>\": 13652,\n  \"atrics</w>\": 36253,\n  \"atrist</w>\": 41879,\n  \"atrium</w>\": 29725,\n  \"atrix</w>\": 43003,\n  \"atro\": 18724,\n  \"atroc\": 36197,\n  \"atrocities</w>\": 37551,\n  \"atry</w>\": 28334,\n  \"ats\": 46890,\n  \"ats</w>\": 1032,\n  \"atsu</w>\": 26531,\n  \"att\": 1017,\n  \"att</w>\": 7103,\n  \"atta\": 7282,\n  \"atta</w>\": 9146,\n  \"attach\": 43676,\n  \"attach</w>\": 35653,\n  \"attached</w>\": 11038,\n  \"attachment</w>\": 28638,\n  \"attack\": 24971,\n  \"attack</w>\": 3815,\n  \"attacked</w>\": 12366,\n  \"attacker</w>\": 39288,\n  \"attackers</w>\": 47701,\n  \"attacking</w>\": 16813,\n  \"attacks</w>\": 7321,\n  \"attain</w>\": 46459,\n  \"attar</w>\": 37110,\n  \"attemp\": 4933,\n  \"attempt</w>\": 7409,\n  \"attempted</w>\": 17408,\n  \"attempting</w>\": 18195,\n  \"attempts</w>\": 15610,\n  \"atten\": 4084,\n  \"atten</w>\": 32408,\n  \"attenborough</w>\": 45860,\n  \"attend\": 9841,\n  \"attend</w>\": 5802,\n  \"attendance</w>\": 11928,\n  \"attendant</w>\": 35424,\n  \"attended</w>\": 8140,\n  \"attendees</w>\": 14648,\n  \"attending</w>\": 6696,\n  \"attends</w>\": 22248,\n  \"attention</w>\": 4936,\n  \"atters</w>\": 30675,\n  \"atthe\": 21489,\n  \"atti\": 49265,\n  \"atti</w>\": 16235,\n  \"attic</w>\": 26766,\n  \"attire</w>\": 21222,\n  \"attitude</w>\": 10648,\n  \"attitudes</w>\": 27611,\n  \"attle\": 14685,\n  \"attle</w>\": 5030,\n  \"attn</w>\": 25677,\n  \"attor\": 8856,\n  \"attorney</w>\": 10372,\n  \"attorneys</w>\": 29113,\n  \"attrac\": 7154,\n  \"attract</w>\": 17010,\n  \"attracted</w>\": 28493,\n  \"attracting</w>\": 31909,\n  \"attraction</w>\": 16807,\n  \"attractions</w>\": 22307,\n  \"attractive</w>\": 12231,\n  \"attracts</w>\": 31024,\n  \"attribu\": 24624,\n  \"attributed</w>\": 37520,\n  \"attributes</w>\": 40763,\n  \"attu</w>\": 43173,\n  \"atty</w>\": 36705,\n  \"atu\": 15191,\n  \"atu</w>\": 24295,\n  \"atuesday</w>\": 34841,\n  \"atul\": 1744,\n  \"atul</w>\": 43948,\n  \"atum</w>\": 48295,\n  \"atur\": 14986,\n  \"aturday</w>\": 29027,\n  \"ature\": 25305,\n  \"ature</w>\": 4490,\n  \"atures</w>\": 7358,\n  \"atus</w>\": 14795,\n  \"atv</w>\": 19598,\n  \"atwood</w>\": 45680,\n  \"atwork</w>\": 39680,\n  \"atx\": 34849,\n  \"atx</w>\": 20136,\n  \"aty\": 40974,\n  \"aty</w>\": 33107,\n  \"atz</w>\": 30432,\n  \"au\": 627,\n  \"au</w>\": 2566,\n  \"aua</w>\": 45906,\n  \"aub</w>\": 45938,\n  \"auberg\": 49382,\n  \"aubre\": 25899,\n  \"aubrey</w>\": 34110,\n  \"auburn\": 42269,\n  \"auburn</w>\": 14534,\n  \"auc\": 24489,\n  \"auch</w>\": 43024,\n  \"auck\": 14588,\n  \"auckland</w>\": 16072,\n  \"auction\": 48160,\n  \"auction</w>\": 6462,\n  \"auctioned</w>\": 41073,\n  \"auctions</w>\": 24876,\n  \"aucus</w>\": 47374,\n  \"aud\": 16107,\n  \"aud</w>\": 19711,\n  \"audi\": 5091,\n  \"audi</w>\": 10277,\n  \"audible</w>\": 33227,\n  \"audience</w>\": 6863,\n  \"audiences</w>\": 22328,\n  \"audio\": 13792,\n  \"audio</w>\": 5766,\n  \"audiobook</w>\": 26282,\n  \"audit\": 12505,\n  \"audit</w>\": 17625,\n  \"auditi\": 37377,\n  \"audition</w>\": 18673,\n  \"auditions</w>\": 21134,\n  \"auditor</w>\": 38050,\n  \"auditorium</w>\": 15063,\n  \"audre\": 16075,\n  \"audrey</w>\": 18812,\n  \"audu\": 27934,\n  \"audubon</w>\": 40275,\n  \"auer</w>\": 33460,\n  \"auf</w>\": 28924,\n  \"aug\": 15397,\n  \"aug</w>\": 5720,\n  \"auga</w>\": 22797,\n  \"augh\": 28310,\n  \"augh</w>\": 14005,\n  \"augmente\": 48356,\n  \"augmented</w>\": 32708,\n  \"augu\": 2610,\n  \"august\": 24353,\n  \"august</w>\": 3171,\n  \"augusta</w>\": 26144,\n  \"augustine</w>\": 27397,\n  \"augustus</w>\": 36835,\n  \"auk</w>\": 19058,\n  \"aul\": 20695,\n  \"aul</w>\": 34391,\n  \"ault\": 47253,\n  \"ault</w>\": 10219,\n  \"aun\": 10608,\n  \"aun</w>\": 38721,\n  \"aunt</w>\": 12685,\n  \"auntie</w>\": 23783,\n  \"aunty</w>\": 29528,\n  \"aur\": 8156,\n  \"aur</w>\": 17282,\n  \"aura</w>\": 27728,\n  \"aure\": 36010,\n  \"aureli\": 35980,\n  \"auror\": 30067,\n  \"aurora</w>\": 13500,\n  \"aus\": 10624,\n  \"aus</w>\": 7630,\n  \"ausa</w>\": 37384,\n  \"ausbiz</w>\": 46543,\n  \"ausch\": 33926,\n  \"auschwitz</w>\": 36523,\n  \"ausopen</w>\": 27831,\n  \"ausp\": 35039,\n  \"auspicious</w>\": 38806,\n  \"auspol</w>\": 8241,\n  \"aussi\": 19762,\n  \"aussie\": 40230,\n  \"aussie</w>\": 14424,\n  \"aussies</w>\": 35727,\n  \"aust\": 26301,\n  \"aust</w>\": 25418,\n  \"austen</w>\": 29885,\n  \"auster\": 25030,\n  \"austerity</w>\": 26982,\n  \"austin\": 12845,\n  \"austin</w>\": 5125,\n  \"austinmahone</w>\": 34678,\n  \"austr\": 2518,\n  \"australi\": 13798,\n  \"australia</w>\": 3444,\n  \"australian\": 23630,\n  \"australian</w>\": 6258,\n  \"australians</w>\": 31488,\n  \"austri\": 8946,\n  \"austria</w>\": 11960,\n  \"austrian</w>\": 20638,\n  \"ausv\": 35206,\n  \"ausvotes</w>\": 34661,\n  \"aut</w>\": 12343,\n  \"auth\": 2381,\n  \"auth</w>\": 38247,\n  \"authent\": 18158,\n  \"authentic\": 41266,\n  \"authentic</w>\": 10369,\n  \"authentication</w>\": 39746,\n  \"authenticity</w>\": 35734,\n  \"autho\": 34552,\n  \"author\": 14447,\n  \"author</w>\": 4358,\n  \"authored</w>\": 37928,\n  \"authori\": 19207,\n  \"authorities</w>\": 12729,\n  \"authority</w>\": 10524,\n  \"authorization</w>\": 48854,\n  \"authorized</w>\": 28463,\n  \"authors</w>\": 10765,\n  \"auti\": 8200,\n  \"autism\": 36256,\n  \"autism</w>\": 11244,\n  \"autisma\": 43324,\n  \"autistic</w>\": 29360,\n  \"auto\": 3917,\n  \"auto</w>\": 5668,\n  \"autobiography</w>\": 31509,\n  \"autodesk</w>\": 40415,\n  \"autograph\": 10657,\n  \"autograph</w>\": 13722,\n  \"autographed</w>\": 16309,\n  \"autographs</w>\": 17376,\n  \"autoimmune</w>\": 45509,\n  \"autom\": 4114,\n  \"automate</w>\": 43203,\n  \"automated</w>\": 19022,\n  \"automatic</w>\": 12126,\n  \"automatically</w>\": 20725,\n  \"automation</w>\": 12328,\n  \"automobi\": 44813,\n  \"automobile</w>\": 25258,\n  \"automotive</w>\": 12607,\n  \"auton\": 13100,\n  \"autonews</w>\": 43975,\n  \"autonom\": 17870,\n  \"autonomous</w>\": 20722,\n  \"autonomy</w>\": 39223,\n  \"autopsy</w>\": 44436,\n  \"autos</w>\": 31118,\n  \"autoshow</w>\": 46788,\n  \"auts</w>\": 21140,\n  \"autu\": 5445,\n  \"autum\": 31783,\n  \"autumn\": 28940,\n  \"autumn</w>\": 6110,\n  \"autumnal</w>\": 35481,\n  \"aux\": 18154,\n  \"aux</w>\": 8909,\n  \"auxiliary</w>\": 37778,\n  \"av\": 722,\n  \"av</w>\": 8484,\n  \"ava</w>\": 12385,\n  \"avage</w>\": 31505,\n  \"avail\": 1651,\n  \"avail</w>\": 16686,\n  \"availability</w>\": 17551,\n  \"available</w>\": 1685,\n  \"aval\": 18012,\n  \"avalan\": 23970,\n  \"avalanche</w>\": 25815,\n  \"avalley</w>\": 45082,\n  \"avalon</w>\": 30436,\n  \"avan\": 27971,\n  \"avan</w>\": 33351,\n  \"avant</w>\": 24305,\n  \"avar\": 33423,\n  \"avatar</w>\": 18219,\n  \"ave\": 10062,\n  \"ave</w>\": 4860,\n  \"avec</w>\": 25828,\n  \"aved</w>\": 47918,\n  \"avel\": 46817,\n  \"avel</w>\": 48088,\n  \"aven\": 5963,\n  \"aven</w>\": 32971,\n  \"aveng\": 21935,\n  \"avenger</w>\": 24799,\n  \"avengers\": 39413,\n  \"avengers</w>\": 12016,\n  \"avengersendgame</w>\": 49342,\n  \"avent\": 22700,\n  \"avenue</w>\": 7042,\n  \"aver\": 8788,\n  \"aver</w>\": 11403,\n  \"average</w>\": 6254,\n  \"averaged</w>\": 37310,\n  \"averages</w>\": 48982,\n  \"averaging</w>\": 35266,\n  \"avery</w>\": 20313,\n  \"aves</w>\": 14023,\n  \"avfc</w>\": 21304,\n  \"avg</w>\": 19452,\n  \"avgeek</w>\": 11114,\n  \"avi\": 3324,\n  \"avi</w>\": 11297,\n  \"avia</w>\": 38710,\n  \"avian</w>\": 24115,\n  \"aviation\": 27717,\n  \"aviation</w>\": 7617,\n  \"aviator</w>\": 38921,\n  \"aviators</w>\": 48011,\n  \"avici\": 46192,\n  \"avicii</w>\": 49158,\n  \"avid</w>\": 19118,\n  \"avier</w>\": 14598,\n  \"avila</w>\": 45339,\n  \"aville</w>\": 40689,\n  \"avin\": 46204,\n  \"avis\": 45163,\n  \"avis</w>\": 19765,\n  \"aviv</w>\": 22130,\n  \"aviva</w>\": 47122,\n  \"aviz</w>\": 27607,\n  \"avl\": 44749,\n  \"avo\": 4496,\n  \"avo</w>\": 32400,\n  \"avoc\": 12291,\n  \"avocado</w>\": 14135,\n  \"avocados</w>\": 48911,\n  \"avoi\": 16797,\n  \"avoid\": 30448,\n  \"avoid</w>\": 5983,\n  \"avoidance</w>\": 47983,\n  \"avoided</w>\": 32103,\n  \"avoiding</w>\": 22086,\n  \"avoids</w>\": 48220,\n  \"avon\": 22790,\n  \"avon</w>\": 17348,\n  \"avril</w>\": 37763,\n  \"avs</w>\": 31896,\n  \"avut</w>\": 44472,\n  \"avy</w>\": 29973,\n  \"aw\": 808,\n  \"aw</w>\": 5557,\n  \"awa\": 4820,\n  \"awa</w>\": 6872,\n  \"await</w>\": 20769,\n  \"awaited</w>\": 20092,\n  \"awaiting</w>\": 14872,\n  \"awaits</w>\": 15635,\n  \"awak\": 9776,\n  \"awak</w>\": 41387,\n  \"awake</w>\": 14695,\n  \"awaken</w>\": 35412,\n  \"awakening</w>\": 17017,\n  \"awakens</w>\": 23191,\n  \"awal\": 42447,\n  \"awal</w>\": 35090,\n  \"awan\": 48869,\n  \"awan</w>\": 20420,\n  \"awar\": 5745,\n  \"award\": 36310,\n  \"award</w>\": 2047,\n  \"awarded</w>\": 7368,\n  \"awarding</w>\": 37089,\n  \"awards\": 34528,\n  \"awards</w>\": 2320,\n  \"aware\": 4427,\n  \"aware</w>\": 7196,\n  \"awareness\": 19217,\n  \"awareness</w>\": 4823,\n  \"awarenessmonth</w>\": 34278,\n  \"awarenessweek</w>\": 35294,\n  \"away\": 21088,\n  \"away</w>\": 1520,\n  \"aways</w>\": 12782,\n  \"awaz</w>\": 18586,\n  \"awd</w>\": 34846,\n  \"awe\": 1693,\n  \"awe</w>\": 14106,\n  \"aweather\": 42142,\n  \"aweather</w>\": 28681,\n  \"awec</w>\": 38916,\n  \"aweed</w>\": 29724,\n  \"awesom\": 16727,\n  \"awesome\": 30390,\n  \"awesome</w>\": 1848,\n  \"awesomeness</w>\": 22430,\n  \"awful</w>\": 13617,\n  \"awg</w>\": 46350,\n  \"awgs</w>\": 35275,\n  \"awh</w>\": 39566,\n  \"awhile</w>\": 19171,\n  \"awi</w>\": 15167,\n  \"awil\": 47271,\n  \"awilliams</w>\": 42163,\n  \"awk\": 8888,\n  \"awk</w>\": 40943,\n  \"awkward\": 42337,\n  \"awkward</w>\": 10304,\n  \"awn</w>\": 46222,\n  \"awp</w>\": 43300,\n  \"aws</w>\": 19658,\n  \"awsome</w>\": 47196,\n  \"awson</w>\": 36286,\n  \"aww</w>\": 11568,\n  \"awww</w>\": 15634,\n  \"awwww</w>\": 26460,\n  \"awx</w>\": 28385,\n  \"ax\": 3165,\n  \"ax</w>\": 9203,\n  \"axe</w>\": 19861,\n  \"axel\": 47889,\n  \"axel</w>\": 32131,\n  \"axes</w>\": 45970,\n  \"axi\": 30672,\n  \"axial</w>\": 46550,\n  \"axis</w>\": 19614,\n  \"axle</w>\": 39003,\n  \"axx\": 47411,\n  \"ay\": 658,\n  \"ay</w>\": 551,\n  \"aya</w>\": 5917,\n  \"ayala</w>\": 39827,\n  \"ayama</w>\": 41194,\n  \"ayan\": 37781,\n  \"ayan</w>\": 16269,\n  \"ayana</w>\": 37400,\n  \"ayas</w>\": 40904,\n  \"ayat\": 44902,\n  \"ayat</w>\": 35720,\n  \"aye\": 21661,\n  \"aye</w>\": 12446,\n  \"ayer</w>\": 24852,\n  \"ayers</w>\": 42783,\n  \"ayesha</w>\": 46570,\n  \"ayi</w>\": 33025,\n  \"ayles\": 44706,\n  \"ayne</w>\": 35669,\n  \"ayo\": 21929,\n  \"ayo</w>\": 18708,\n  \"ayr\": 23002,\n  \"ayr</w>\": 36473,\n  \"ayrshire</w>\": 32687,\n  \"ays</w>\": 785,\n  \"ayu</w>\": 40769,\n  \"ayurve\": 27185,\n  \"ayurveda</w>\": 38986,\n  \"ayush\": 44831,\n  \"ayy</w>\": 32514,\n  \"ayyy</w>\": 41052,\n  \"az\": 854,\n  \"az</w>\": 5468,\n  \"aza</w>\": 22883,\n  \"azad</w>\": 37838,\n  \"azalea</w>\": 34087,\n  \"azam</w>\": 34727,\n  \"azar</w>\": 27911,\n  \"azcardinals</w>\": 48846,\n  \"aze\": 41157,\n  \"aze</w>\": 28485,\n  \"azer\": 19169,\n  \"azerbai\": 20649,\n  \"azerbaijan</w>\": 23888,\n  \"azhar</w>\": 47019,\n  \"azi\": 23914,\n  \"azi</w>\": 18452,\n  \"azine</w>\": 29140,\n  \"azione</w>\": 48335,\n  \"aziz\": 41205,\n  \"aziz</w>\": 29630,\n  \"azo</w>\": 41227,\n  \"azon</w>\": 36854,\n  \"azores</w>\": 42826,\n  \"azte\": 33270,\n  \"aztec</w>\": 34749,\n  \"aztecs</w>\": 49387,\n  \"azu\": 27701,\n  \"azu</w>\": 46963,\n  \"azul</w>\": 39807,\n  \"azure</w>\": 18514,\n  \"azwx</w>\": 30262,\n  \"azy</w>\": 24783,\n  \"azz\": 9817,\n  \"azz</w>\": 26453,\n  \"azza</w>\": 22255,\n  \"azzi</w>\": 18758,\n  \"azzle</w>\": 39974,\n  \"azzo</w>\": 26779,\n  \"azzur\": 37055,\n  \"azzy</w>\": 44534,\n  \"aÃ±\": 23716,\n  \"aÃ±os</w>\": 41634,\n  \"b\": 65,\n  \"b</w>\": 321,\n  \"ba\": 932,\n  \"ba</w>\": 1792,\n  \"baa</w>\": 33004,\n  \"baahu\": 34145,\n  \"baahubali</w>\": 38663,\n  \"bab\": 1202,\n  \"bab</w>\": 19039,\n  \"baba</w>\": 12631,\n  \"babe\": 31177,\n  \"babe</w>\": 7716,\n  \"babes</w>\": 14253,\n  \"babies</w>\": 6635,\n  \"babs</w>\": 36217,\n  \"babu</w>\": 21623,\n  \"baby\": 7268,\n  \"baby</w>\": 1794,\n  \"babygirl</w>\": 39554,\n  \"babylon</w>\": 31928,\n  \"babymetal</w>\": 45013,\n  \"babys\": 22266,\n  \"babysitting</w>\": 34186,\n  \"bac\": 2791,\n  \"bac</w>\": 25867,\n  \"bacca</w>\": 40708,\n  \"bach\": 11773,\n  \"bach</w>\": 8758,\n  \"bachchan</w>\": 17690,\n  \"bachel\": 11283,\n  \"bachelor\": 45508,\n  \"bachelor</w>\": 16766,\n  \"bachelore\": 26009,\n  \"bachelorette</w>\": 29093,\n  \"bacher</w>\": 49211,\n  \"back\": 1663,\n  \"back</w>\": 893,\n  \"backbone</w>\": 35635,\n  \"backdrop</w>\": 20802,\n  \"backed</w>\": 12721,\n  \"backer</w>\": 22183,\n  \"backers</w>\": 32934,\n  \"background</w>\": 5994,\n  \"backgrounds</w>\": 28215,\n  \"backing</w>\": 14935,\n  \"backlash</w>\": 31519,\n  \"backpack</w>\": 14894,\n  \"backpacking</w>\": 29524,\n  \"backpacks</w>\": 37063,\n  \"backs</w>\": 7562,\n  \"backseat</w>\": 48812,\n  \"backstage</w>\": 9236,\n  \"backstreet\": 46337,\n  \"backthe\": 26127,\n  \"backto\": 18703,\n  \"backtoschool</w>\": 28730,\n  \"backtothe\": 43059,\n  \"backup</w>\": 14415,\n  \"backward</w>\": 37964,\n  \"backwards</w>\": 21283,\n  \"backyard</w>\": 12608,\n  \"bacon\": 48666,\n  \"bacon</w>\": 7104,\n  \"bacter\": 11814,\n  \"bacteria</w>\": 16556,\n  \"bacterial</w>\": 26101,\n  \"bad\": 2564,\n  \"bad</w>\": 2103,\n  \"bada</w>\": 37475,\n  \"badan</w>\": 39149,\n  \"badass</w>\": 11616,\n  \"baddest</w>\": 38112,\n  \"baden</w>\": 36690,\n  \"bader</w>\": 42254,\n  \"badge</w>\": 11301,\n  \"badger\": 32686,\n  \"badger</w>\": 22363,\n  \"badgers</w>\": 22521,\n  \"badges</w>\": 20084,\n  \"badlands</w>\": 43192,\n  \"badly</w>\": 13684,\n  \"badminton</w>\": 21412,\n  \"badoo</w>\": 33192,\n  \"bados</w>\": 25755,\n  \"bae\": 32834,\n  \"bae</w>\": 6855,\n  \"baek\": 18557,\n  \"baek</w>\": 32702,\n  \"baekhyun</w>\": 21572,\n  \"baes</w>\": 46332,\n  \"baf\": 13616,\n  \"baff\": 35693,\n  \"bafta</w>\": 29199,\n  \"bag\": 3408,\n  \"bag</w>\": 3365,\n  \"bage</w>\": 9698,\n  \"bagel</w>\": 28777,\n  \"bagels</w>\": 37489,\n  \"baggage</w>\": 31402,\n  \"bagged</w>\": 34047,\n  \"bagh\": 21659,\n  \"bagh</w>\": 37271,\n  \"baghdad</w>\": 30763,\n  \"bago</w>\": 25105,\n  \"bags</w>\": 6136,\n  \"bagu\": 27749,\n  \"baguette</w>\": 45334,\n  \"bah\": 8372,\n  \"bah</w>\": 16685,\n  \"baha\": 29592,\n  \"baham\": 43718,\n  \"bahamas</w>\": 21224,\n  \"bahan</w>\": 28704,\n  \"bahn</w>\": 33452,\n  \"bahrain</w>\": 12503,\n  \"bai\": 6232,\n  \"bai</w>\": 23339,\n  \"bail\": 22933,\n  \"bail</w>\": 16986,\n  \"bailey\": 27535,\n  \"bailey</w>\": 10180,\n  \"bain\": 40784,\n  \"bain</w>\": 21593,\n  \"bair\": 29059,\n  \"baird</w>\": 40474,\n  \"bait</w>\": 18010,\n  \"baj\": 20713,\n  \"baja\": 40418,\n  \"baja</w>\": 28374,\n  \"bajo</w>\": 32619,\n  \"bak\": 4059,\n  \"bak</w>\": 23742,\n  \"bakar</w>\": 41414,\n  \"bake\": 20736,\n  \"bake</w>\": 11878,\n  \"baked</w>\": 10364,\n  \"baker\": 27303,\n  \"baker</w>\": 7743,\n  \"bakers\": 35293,\n  \"bakers</w>\": 40231,\n  \"bakersfield</w>\": 40149,\n  \"bakery</w>\": 13377,\n  \"bakes</w>\": 43057,\n  \"bakhta\": 44912,\n  \"bakhtawar\": 46937,\n  \"bakhtawarbz</w>\": 47118,\n  \"baking</w>\": 11467,\n  \"baku\": 46417,\n  \"baku</w>\": 31852,\n  \"bal\": 1398,\n  \"bal</w>\": 2282,\n  \"bala</w>\": 20291,\n  \"balaji</w>\": 48694,\n  \"balance\": 42894,\n  \"balance</w>\": 6827,\n  \"balanced</w>\": 15273,\n  \"balances</w>\": 37733,\n  \"balancing</w>\": 23541,\n  \"balboa</w>\": 45098,\n  \"balcony</w>\": 16169,\n  \"bald\": 11153,\n  \"bald</w>\": 14875,\n  \"baldhead</w>\": 29191,\n  \"baldwin</w>\": 16242,\n  \"bale\": 48573,\n  \"bale</w>\": 18873,\n  \"bales</w>\": 42879,\n  \"bali\": 16432,\n  \"bali</w>\": 10900,\n  \"balkan</w>\": 48499,\n  \"balkans</w>\": 42987,\n  \"ball\": 3807,\n  \"ball</w>\": 1069,\n  \"balla\": 42246,\n  \"ballad</w>\": 33472,\n  \"ballarat</w>\": 46645,\n  \"ballard</w>\": 31750,\n  \"baller\": 49194,\n  \"baller</w>\": 25655,\n  \"ballerina</w>\": 34962,\n  \"ballers</w>\": 34173,\n  \"ballet</w>\": 10703,\n  \"balli\": 29406,\n  \"ballin\": 47444,\n  \"ballin</w>\": 33057,\n  \"balling</w>\": 47588,\n  \"ballis\": 46675,\n  \"ballistic</w>\": 36667,\n  \"ballo\": 8871,\n  \"ballon</w>\": 36469,\n  \"balloon</w>\": 13634,\n  \"balloons</w>\": 18130,\n  \"ballot</w>\": 14185,\n  \"ballots</w>\": 35051,\n  \"ballpark</w>\": 26080,\n  \"ballroom</w>\": 15493,\n  \"balls</w>\": 6927,\n  \"bally\": 17275,\n  \"bally</w>\": 29451,\n  \"balm</w>\": 24962,\n  \"balmain</w>\": 45929,\n  \"balo\": 12395,\n  \"baloch</w>\": 23173,\n  \"balochistan</w>\": 21918,\n  \"balot\": 44615,\n  \"balotelli</w>\": 45721,\n  \"bals</w>\": 44154,\n  \"balsam\": 29121,\n  \"balsamic</w>\": 32654,\n  \"balt</w>\": 24441,\n  \"balti\": 8400,\n  \"baltic</w>\": 23817,\n  \"baltimore\": 38502,\n  \"baltimore</w>\": 9582,\n  \"balu\": 38093,\n  \"bam\": 6383,\n  \"bam</w>\": 12686,\n  \"bama</w>\": 20021,\n  \"bambam</w>\": 34538,\n  \"bambi</w>\": 46596,\n  \"bamboo\": 49322,\n  \"bamboo</w>\": 16748,\n  \"ban\": 1159,\n  \"ban</w>\": 2777,\n  \"bana</w>\": 18428,\n  \"banan\": 38410,\n  \"banana</w>\": 8922,\n  \"bananas</w>\": 19121,\n  \"banc\": 39252,\n  \"band\": 4613,\n  \"band</w>\": 1963,\n  \"banda</w>\": 31865,\n  \"bandai</w>\": 42054,\n  \"bandana</w>\": 39265,\n  \"bandcamp</w>\": 32229,\n  \"banded</w>\": 37804,\n  \"bandic\": 44400,\n  \"bandit</w>\": 27639,\n  \"bandits</w>\": 33940,\n  \"bandra</w>\": 41393,\n  \"bands</w>\": 7858,\n  \"bandung</w>\": 29512,\n  \"bandwagon</w>\": 36432,\n  \"bandwidth</w>\": 48859,\n  \"bane</w>\": 9597,\n  \"banerjee</w>\": 48102,\n  \"banff</w>\": 29565,\n  \"bang\": 3524,\n  \"bang</w>\": 6907,\n  \"bangalore</w>\": 14697,\n  \"banger</w>\": 24872,\n  \"bangers</w>\": 38311,\n  \"banging</w>\": 33033,\n  \"bangkok</w>\": 12351,\n  \"bangla\": 10339,\n  \"bangla</w>\": 45928,\n  \"bangladesh</w>\": 11245,\n  \"bangle</w>\": 37634,\n  \"bangor</w>\": 31190,\n  \"bangs</w>\": 27992,\n  \"bangtan</w>\": 39131,\n  \"bani</w>\": 19732,\n  \"banjo</w>\": 27014,\n  \"bank\": 7061,\n  \"bank</w>\": 2723,\n  \"banker</w>\": 27316,\n  \"bankers</w>\": 30599,\n  \"bankholiday\": 48868,\n  \"banking</w>\": 9566,\n  \"bankno\": 49201,\n  \"bankof\": 39120,\n  \"bankrup\": 21904,\n  \"bankrupt\": 23077,\n  \"bankrupt</w>\": 37288,\n  \"bankruptcy</w>\": 23978,\n  \"banks</w>\": 6367,\n  \"banksy</w>\": 33350,\n  \"bann\": 5304,\n  \"banned</w>\": 12012,\n  \"banner</w>\": 9185,\n  \"banners</w>\": 23145,\n  \"banning</w>\": 26246,\n  \"bannon</w>\": 29710,\n  \"bano</w>\": 42947,\n  \"banquet</w>\": 14254,\n  \"bans</w>\": 15146,\n  \"bant\": 23301,\n  \"bant</w>\": 46657,\n  \"banter</w>\": 25535,\n  \"bao\": 39487,\n  \"bao</w>\": 20408,\n  \"bap\": 7415,\n  \"bap</w>\": 23754,\n  \"bapti\": 15477,\n  \"baptism</w>\": 36765,\n  \"baptist</w>\": 13274,\n  \"baptiste</w>\": 45770,\n  \"baptized</w>\": 45400,\n  \"bar\": 1040,\n  \"bar</w>\": 2411,\n  \"bara</w>\": 19345,\n  \"barack\": 18670,\n  \"barack</w>\": 22481,\n  \"barackobama</w>\": 18885,\n  \"barak\": 47419,\n  \"barak</w>\": 16260,\n  \"barang\": 38446,\n  \"barb\": 24173,\n  \"barb</w>\": 20913,\n  \"barbados</w>\": 26992,\n  \"barbar\": 7906,\n  \"barbara</w>\": 10937,\n  \"barbarian</w>\": 42530,\n  \"barbe\": 18372,\n  \"barbecue</w>\": 23501,\n  \"barber\": 19517,\n  \"barber</w>\": 12296,\n  \"barbershop</w>\": 37707,\n  \"barbican</w>\": 47668,\n  \"barbie</w>\": 16923,\n  \"barca</w>\": 22942,\n  \"barcel\": 6134,\n  \"barcelon\": 47820,\n  \"barcelona</w>\": 6412,\n  \"barclay\": 48877,\n  \"barclay</w>\": 45276,\n  \"barclays</w>\": 29538,\n  \"bard\": 39812,\n  \"bard</w>\": 17514,\n  \"bare\": 16023,\n  \"bare</w>\": 14318,\n  \"barefoot</w>\": 30327,\n  \"barely</w>\": 12684,\n  \"bargain</w>\": 15076,\n  \"bargaining</w>\": 41282,\n  \"bargains</w>\": 34126,\n  \"barge</w>\": 28272,\n  \"bari\": 21428,\n  \"bari</w>\": 28016,\n  \"barista</w>\": 31078,\n  \"barit\": 46300,\n  \"bark\": 32333,\n  \"bark</w>\": 16560,\n  \"barker</w>\": 20618,\n  \"barking</w>\": 32676,\n  \"barkley</w>\": 30266,\n  \"barley</w>\": 22607,\n  \"barlow</w>\": 25483,\n  \"barn\": 10490,\n  \"barn</w>\": 10942,\n  \"barnab\": 43272,\n  \"barnard</w>\": 44332,\n  \"barne\": 42527,\n  \"barnes</w>\": 13102,\n  \"barnet</w>\": 41943,\n  \"barnett</w>\": 27650,\n  \"barney</w>\": 24563,\n  \"barns</w>\": 43759,\n  \"barnsley\": 37109,\n  \"barnsley</w>\": 32153,\n  \"baro\": 17422,\n  \"baro</w>\": 30817,\n  \"baron\": 48371,\n  \"baron</w>\": 19349,\n  \"baroness</w>\": 45056,\n  \"barons</w>\": 45596,\n  \"baroque</w>\": 25065,\n  \"barr\": 39473,\n  \"barr</w>\": 22492,\n  \"barra\": 28442,\n  \"barra</w>\": 33542,\n  \"barrabest</w>\": 41376,\n  \"barrac\": 40835,\n  \"barracks</w>\": 35822,\n  \"barre\": 13840,\n  \"barre</w>\": 38257,\n  \"barred</w>\": 33261,\n  \"barrel</w>\": 11703,\n  \"barrels</w>\": 22059,\n  \"barren</w>\": 46743,\n  \"barrett</w>\": 18701,\n  \"barri\": 8660,\n  \"barric\": 29189,\n  \"barrie</w>\": 27090,\n  \"barrier</w>\": 15706,\n  \"barriers</w>\": 16321,\n  \"barrington</w>\": 48954,\n  \"barron</w>\": 34881,\n  \"barrow\": 42568,\n  \"barrow</w>\": 24983,\n  \"barry\": 18028,\n  \"barry</w>\": 8461,\n  \"barrymore</w>\": 49310,\n  \"bars</w>\": 8616,\n  \"barstool\": 44826,\n  \"bart\": 14838,\n  \"bart</w>\": 12870,\n  \"bartender</w>\": 33498,\n  \"barthol\": 48989,\n  \"bartlett</w>\": 37130,\n  \"bartol\": 38209,\n  \"barton\": 48853,\n  \"barton</w>\": 20345,\n  \"baru</w>\": 16356,\n  \"barun\": 38278,\n  \"barunsob\": 41398,\n  \"barÃ§a</w>\": 32788,\n  \"bas\": 1244,\n  \"bas</w>\": 11420,\n  \"basa</w>\": 26142,\n  \"base\": 2776,\n  \"base</w>\": 4579,\n  \"baseball\": 23479,\n  \"baseball</w>\": 3470,\n  \"based\": 35196,\n  \"based</w>\": 2812,\n  \"basel\": 42803,\n  \"basel</w>\": 20903,\n  \"baseline</w>\": 40648,\n  \"baseman</w>\": 45910,\n  \"basement</w>\": 14792,\n  \"bases</w>\": 20496,\n  \"bash\": 20462,\n  \"bash</w>\": 10972,\n  \"bashing</w>\": 37545,\n  \"bashir</w>\": 42799,\n  \"basic\": 40452,\n  \"basic</w>\": 7696,\n  \"basically</w>\": 9125,\n  \"basics</w>\": 15825,\n  \"basil\": 19225,\n  \"basil</w>\": 14936,\n  \"basilica</w>\": 27879,\n  \"basin</w>\": 16117,\n  \"basing\": 47321,\n  \"basis</w>\": 12278,\n  \"baske\": 3713,\n  \"basket</w>\": 10338,\n  \"basketball\": 40023,\n  \"basketball</w>\": 3835,\n  \"baskets</w>\": 27787,\n  \"basking</w>\": 39769,\n  \"basque</w>\": 37175,\n  \"bass\": 22831,\n  \"bass</w>\": 5992,\n  \"bassett</w>\": 45992,\n  \"bassist</w>\": 26496,\n  \"bast\": 28092,\n  \"basti\": 8559,\n  \"bastille</w>\": 41874,\n  \"bat\": 2121,\n  \"bat</w>\": 6575,\n  \"bata</w>\": 39277,\n  \"batb</w>\": 33962,\n  \"batch</w>\": 9413,\n  \"bate\": 25034,\n  \"bate</w>\": 28277,\n  \"bateman</w>\": 41635,\n  \"bates</w>\": 21727,\n  \"batgirl</w>\": 46460,\n  \"bath\": 6064,\n  \"bath</w>\": 5713,\n  \"bathing</w>\": 20144,\n  \"bathro\": 21201,\n  \"bathroom</w>\": 8470,\n  \"bathrooms</w>\": 26434,\n  \"baths</w>\": 19442,\n  \"bathtub</w>\": 39942,\n  \"bathurst</w>\": 36365,\n  \"bati\": 23362,\n  \"bati</w>\": 37589,\n  \"batman\": 27811,\n  \"batman</w>\": 7223,\n  \"baton</w>\": 24331,\n  \"bats</w>\": 14984,\n  \"batsman</w>\": 35432,\n  \"batt\": 2407,\n  \"batt</w>\": 48595,\n  \"battalion</w>\": 20820,\n  \"batter\": 12654,\n  \"batter</w>\": 31855,\n  \"battered</w>\": 34375,\n  \"batteries</w>\": 16666,\n  \"battersea</w>\": 35839,\n  \"battery</w>\": 7870,\n  \"batting</w>\": 17401,\n  \"battle\": 7344,\n  \"battle</w>\": 3528,\n  \"battled</w>\": 37837,\n  \"battlefield</w>\": 16055,\n  \"battlefront</w>\": 42214,\n  \"battleof\": 47560,\n  \"battles</w>\": 14213,\n  \"battleship</w>\": 35165,\n  \"battling</w>\": 17268,\n  \"bau\": 6055,\n  \"bau</w>\": 34840,\n  \"bauer</w>\": 22903,\n  \"baugh</w>\": 41301,\n  \"baum</w>\": 19840,\n  \"bautista</w>\": 31881,\n  \"bav\": 21075,\n  \"bavaria</w>\": 39977,\n  \"bavarian</w>\": 44458,\n  \"baw\": 19808,\n  \"bax\": 21216,\n  \"baxter</w>\": 26168,\n  \"bay\": 3631,\n  \"bay</w>\": 2174,\n  \"baya</w>\": 31573,\n  \"bayan</w>\": 43895,\n  \"bayarea</w>\": 28260,\n  \"bayer\": 48548,\n  \"bayer</w>\": 29183,\n  \"bayern</w>\": 14666,\n  \"baylor</w>\": 21721,\n  \"bayou</w>\": 33955,\n  \"bays</w>\": 40156,\n  \"baz\": 10430,\n  \"baz</w>\": 25268,\n  \"bazaar</w>\": 20070,\n  \"bazar</w>\": 49298,\n  \"bb\": 1174,\n  \"bb</w>\": 3529,\n  \"bba</w>\": 27762,\n  \"bball</w>\": 15664,\n  \"bbb</w>\": 33535,\n  \"bbc\": 5123,\n  \"bbc</w>\": 5188,\n  \"bbcc\": 39052,\n  \"bbce\": 33818,\n  \"bbcnews</w>\": 29370,\n  \"bbcone</w>\": 28259,\n  \"bbcqt</w>\": 37343,\n  \"bbcr</w>\": 35802,\n  \"bbcra\": 17115,\n  \"bbcradi\": 49213,\n  \"bbcradio</w>\": 22876,\n  \"bbcsport</w>\": 49321,\n  \"bbcspringwatch</w>\": 37358,\n  \"bbctwo</w>\": 40395,\n  \"bbcworld</w>\": 47340,\n  \"bbe</w>\": 37559,\n  \"bbed</w>\": 9077,\n  \"bber</w>\": 7933,\n  \"bbers</w>\": 36494,\n  \"bbhutto\": 28085,\n  \"bbhuttozardari</w>\": 28135,\n  \"bbi</w>\": 37047,\n  \"bbin</w>\": 38553,\n  \"bbing</w>\": 9787,\n  \"bbins</w>\": 42504,\n  \"bbl</w>\": 21961,\n  \"bble\": 26570,\n  \"bble</w>\": 5924,\n  \"bbled</w>\": 37626,\n  \"bbles</w>\": 18093,\n  \"bblo\": 21231,\n  \"bbloggers</w>\": 26614,\n  \"bbly</w>\": 43031,\n  \"bbm</w>\": 25382,\n  \"bbmas</w>\": 22145,\n  \"bbn</w>\": 28427,\n  \"bbnaija</w>\": 20984,\n  \"bbo</w>\": 21892,\n  \"bbq\": 41270,\n  \"bbq</w>\": 6726,\n  \"bbs</w>\": 10002,\n  \"bbuk</w>\": 45978,\n  \"bby\": 11166,\n  \"bby</w>\": 3810,\n  \"bc\": 3116,\n  \"bc</w>\": 2162,\n  \"bcc</w>\": 41509,\n  \"bcci</w>\": 36138,\n  \"bce</w>\": 36510,\n  \"bcfc</w>\": 34359,\n  \"bch</w>\": 36684,\n  \"bcn</w>\": 25766,\n  \"bcoz</w>\": 46373,\n  \"bcpoli</w>\": 24389,\n  \"bcs</w>\": 24909,\n  \"bcu</w>\": 28299,\n  \"bd\": 24358,\n  \"bd</w>\": 11165,\n  \"bday\": 33022,\n  \"bday</w>\": 5781,\n  \"bdg</w>\": 48418,\n  \"bds</w>\": 26732,\n  \"be\": 571,\n  \"be</w>\": 655,\n  \"bea\": 21886,\n  \"bea</w>\": 20925,\n  \"beach\": 6068,\n  \"beach</w>\": 2117,\n  \"beaches</w>\": 12183,\n  \"beachlife</w>\": 43824,\n  \"beacon\": 36883,\n  \"beacon</w>\": 18858,\n  \"beacons</w>\": 39395,\n  \"bead\": 31621,\n  \"bead</w>\": 23557,\n  \"beaded</w>\": 26661,\n  \"beads</w>\": 14099,\n  \"beagle</w>\": 30044,\n  \"beak</w>\": 36498,\n  \"beal</w>\": 45769,\n  \"beale</w>\": 39717,\n  \"beam\": 35339,\n  \"beam</w>\": 13663,\n  \"beams</w>\": 23993,\n  \"bean\": 16471,\n  \"bean</w>\": 5328,\n  \"beanie</w>\": 21534,\n  \"beans</w>\": 8302,\n  \"bear\": 6375,\n  \"bear</w>\": 4298,\n  \"bearable</w>\": 38608,\n  \"bearcats</w>\": 33242,\n  \"beard\": 26157,\n  \"beard</w>\": 9052,\n  \"bearded</w>\": 28459,\n  \"beardown</w>\": 43687,\n  \"beards</w>\": 33020,\n  \"bearer</w>\": 30686,\n  \"bearers</w>\": 47986,\n  \"bearing</w>\": 18370,\n  \"bearings</w>\": 42083,\n  \"bearish</w>\": 34829,\n  \"bears</w>\": 6182,\n  \"beasley</w>\": 43349,\n  \"beast\": 20847,\n  \"beast</w>\": 6957,\n  \"beastmode</w>\": 43076,\n  \"beasts</w>\": 21771,\n  \"beat\": 3774,\n  \"beat</w>\": 3018,\n  \"beaten</w>\": 10864,\n  \"beater</w>\": 41974,\n  \"beati\": 44386,\n  \"beating</w>\": 10078,\n  \"beatles</w>\": 11961,\n  \"beatport</w>\": 31421,\n  \"beatrice</w>\": 36922,\n  \"beats</w>\": 6289,\n  \"beatthe\": 40550,\n  \"beatty</w>\": 39903,\n  \"beatz</w>\": 33363,\n  \"beau\": 1016,\n  \"beau</w>\": 14298,\n  \"beaufort</w>\": 45423,\n  \"beaumont</w>\": 32857,\n  \"beaut</w>\": 24559,\n  \"beauti\": 1154,\n  \"beauties</w>\": 14874,\n  \"beautiful\": 13662,\n  \"beautiful</w>\": 1215,\n  \"beautifully</w>\": 10627,\n  \"beauty\": 12881,\n  \"beauty</w>\": 2488,\n  \"beav\": 23260,\n  \"beaver\": 26432,\n  \"beaver</w>\": 22874,\n  \"beavers</w>\": 34513,\n  \"beavs</w>\": 43909,\n  \"bebe</w>\": 23331,\n  \"bec\": 6899,\n  \"bec</w>\": 10773,\n  \"became</w>\": 5464,\n  \"because\": 32714,\n  \"because</w>\": 1631,\n  \"becca</w>\": 27088,\n  \"bech\": 44055,\n  \"beck\": 8256,\n  \"beck</w>\": 10396,\n  \"becker</w>\": 26918,\n  \"beckett</w>\": 27249,\n  \"beckham</w>\": 18764,\n  \"becky\": 32406,\n  \"becky</w>\": 18921,\n  \"become</w>\": 2989,\n  \"becomes</w>\": 6766,\n  \"becoming</w>\": 6208,\n  \"bed\": 4152,\n  \"bed</w>\": 2722,\n  \"bedding</w>\": 31761,\n  \"bedford</w>\": 20779,\n  \"bedi</w>\": 39181,\n  \"bedro\": 18415,\n  \"bedroom</w>\": 8411,\n  \"bedrooms</w>\": 23996,\n  \"beds</w>\": 13914,\n  \"bedside</w>\": 47473,\n  \"bedtime</w>\": 22115,\n  \"bee\": 6097,\n  \"bee</w>\": 5028,\n  \"beech\": 32733,\n  \"beech</w>\": 27596,\n  \"beef\": 21703,\n  \"beef</w>\": 6529,\n  \"beek</w>\": 37915,\n  \"been\": 33986,\n  \"been</w>\": 1025,\n  \"beep</w>\": 33432,\n  \"beer\": 8885,\n  \"beer</w>\": 2544,\n  \"beers</w>\": 10907,\n  \"bees\": 36249,\n  \"bees</w>\": 9100,\n  \"beet\": 12582,\n  \"beet</w>\": 28621,\n  \"beethoven</w>\": 23656,\n  \"beetle</w>\": 16534,\n  \"beetles</w>\": 36317,\n  \"beetro\": 29251,\n  \"beetroot</w>\": 31638,\n  \"beets</w>\": 36087,\n  \"before\": 20898,\n  \"before</w>\": 1348,\n  \"beg\": 2219,\n  \"beg</w>\": 22401,\n  \"began</w>\": 8636,\n  \"begg\": 36769,\n  \"begging</w>\": 25371,\n  \"begin\": 19197,\n  \"begin</w>\": 4947,\n  \"beginner</w>\": 24351,\n  \"beginners</w>\": 21930,\n  \"beginning</w>\": 5791,\n  \"beginnings</w>\": 22581,\n  \"begins</w>\": 4635,\n  \"begs</w>\": 43531,\n  \"begun</w>\": 10514,\n  \"beh\": 21971,\n  \"beh</w>\": 41612,\n  \"beha\": 5737,\n  \"behalf</w>\": 11470,\n  \"behave</w>\": 28825,\n  \"behaved</w>\": 41617,\n  \"behavi\": 6149,\n  \"behaving</w>\": 40745,\n  \"behavior</w>\": 10461,\n  \"behavioral</w>\": 25135,\n  \"behaviors</w>\": 37741,\n  \"behaviour</w>\": 14655,\n  \"behavioural</w>\": 46019,\n  \"behe\": 42329,\n  \"behin\": 2335,\n  \"behind</w>\": 2403,\n  \"behindthe\": 21104,\n  \"behindthescenes</w>\": 26253,\n  \"behold</w>\": 15929,\n  \"bei\": 38991,\n  \"bei</w>\": 23227,\n  \"beige</w>\": 26677,\n  \"beij\": 11547,\n  \"beijing</w>\": 11796,\n  \"bein\": 39117,\n  \"bein</w>\": 24168,\n  \"being\": 13481,\n  \"being</w>\": 1265,\n  \"beings</w>\": 17998,\n  \"beingsalmankhan</w>\": 19637,\n  \"beir\": 20176,\n  \"beirut</w>\": 22352,\n  \"beit</w>\": 26963,\n  \"bek\": 46846,\n  \"bek</w>\": 26135,\n  \"bekind</w>\": 46691,\n  \"bel\": 1308,\n  \"bel</w>\": 3543,\n  \"bela</w>\": 30555,\n  \"belarus</w>\": 30849,\n  \"belated</w>\": 20256,\n  \"belfast\": 35100,\n  \"belfast</w>\": 10015,\n  \"belgi\": 7001,\n  \"belgian</w>\": 15008,\n  \"belgium</w>\": 10239,\n  \"belgrade</w>\": 30502,\n  \"beli\": 1859,\n  \"beli</w>\": 45842,\n  \"belichick</w>\": 46132,\n  \"belie\": 20854,\n  \"beliebers</w>\": 27714,\n  \"belief</w>\": 14802,\n  \"beliefs</w>\": 20575,\n  \"believ\": 4972,\n  \"believe\": 15819,\n  \"believe</w>\": 2649,\n  \"believed</w>\": 13380,\n  \"believein\": 24294,\n  \"believeinfilm</w>\": 37375,\n  \"believer</w>\": 26057,\n  \"believers</w>\": 28434,\n  \"believes</w>\": 12017,\n  \"believing</w>\": 19551,\n  \"belinda</w>\": 44415,\n  \"belize</w>\": 27990,\n  \"bell\": 5417,\n  \"bell</w>\": 3718,\n  \"bella\": 18282,\n  \"bella</w>\": 10418,\n  \"bellamy</w>\": 34461,\n  \"bellator</w>\": 31985,\n  \"belle\": 13587,\n  \"belle</w>\": 11496,\n  \"belles</w>\": 40678,\n  \"bellevue</w>\": 32715,\n  \"belli\": 43335,\n  \"bellletstalk</w>\": 42695,\n  \"bello</w>\": 21954,\n  \"bells</w>\": 12811,\n  \"bellum</w>\": 35493,\n  \"belly\": 25901,\n  \"belly</w>\": 10404,\n  \"belmont</w>\": 25612,\n  \"belo\": 8379,\n  \"belo</w>\": 41649,\n  \"belong\": 16453,\n  \"belong</w>\": 13596,\n  \"belonged</w>\": 39893,\n  \"belonging</w>\": 28193,\n  \"belongs</w>\": 14395,\n  \"beloved</w>\": 9363,\n  \"below</w>\": 3788,\n  \"bels</w>\": 43127,\n  \"belt\": 36416,\n  \"belt</w>\": 7373,\n  \"belts</w>\": 21888,\n  \"belvedere</w>\": 48003,\n  \"ben\": 1465,\n  \"ben</w>\": 3518,\n  \"bena</w>\": 46249,\n  \"bench\": 17770,\n  \"bench</w>\": 8771,\n  \"benches</w>\": 36349,\n  \"benchmark</w>\": 31775,\n  \"bend\": 22100,\n  \"bend</w>\": 13332,\n  \"bender</w>\": 22551,\n  \"bendigo</w>\": 48197,\n  \"bending</w>\": 33897,\n  \"bene\": 12091,\n  \"bene</w>\": 47151,\n  \"beneath</w>\": 16850,\n  \"bened\": 13216,\n  \"benedic\": 24402,\n  \"benedict\": 47896,\n  \"benedict</w>\": 18027,\n  \"benef\": 3260,\n  \"benefici\": 38593,\n  \"beneficial</w>\": 24660,\n  \"beneficiaries</w>\": 42160,\n  \"benefit</w>\": 6399,\n  \"benefited</w>\": 48266,\n  \"benefiting</w>\": 29474,\n  \"benefits</w>\": 5465,\n  \"benefitting</w>\": 47222,\n  \"benevol\": 47060,\n  \"benfica</w>\": 33873,\n  \"beng\": 6962,\n  \"bengal\": 17404,\n  \"bengal</w>\": 16374,\n  \"bengali</w>\": 33774,\n  \"bengals</w>\": 23737,\n  \"bengaluru</w>\": 21707,\n  \"benghazi</w>\": 25967,\n  \"benin</w>\": 40296,\n  \"benitez</w>\": 46711,\n  \"benjam\": 10550,\n  \"benjamin\": 38647,\n  \"benjamin</w>\": 12131,\n  \"benji</w>\": 43548,\n  \"benn</w>\": 39097,\n  \"bennet</w>\": 48536,\n  \"bennett</w>\": 12186,\n  \"benny\": 42369,\n  \"benny</w>\": 20595,\n  \"beno\": 35268,\n  \"benoit</w>\": 44373,\n  \"benson</w>\": 19578,\n  \"bent\": 9809,\n  \"bent</w>\": 18369,\n  \"bentley</w>\": 16859,\n  \"benton</w>\": 30812,\n  \"benz\": 27937,\n  \"benz</w>\": 13470,\n  \"ber\": 867,\n  \"ber</w>\": 1516,\n  \"bera</w>\": 32802,\n  \"bere\": 17458,\n  \"bered</w>\": 9193,\n  \"beren\": 33654,\n  \"beret</w>\": 41658,\n  \"berg\": 12022,\n  \"berg</w>\": 3294,\n  \"bergen</w>\": 22918,\n  \"berger\": 35933,\n  \"berger</w>\": 13873,\n  \"bergh</w>\": 35120,\n  \"bergman</w>\": 42597,\n  \"bergs</w>\": 43592,\n  \"berk\": 15633,\n  \"berke\": 14639,\n  \"berkeley\": 46049,\n  \"berkeley</w>\": 16667,\n  \"berkshire</w>\": 27300,\n  \"berlin\": 23532,\n  \"berlin</w>\": 5891,\n  \"berman</w>\": 21514,\n  \"bermu\": 21032,\n  \"bermuda</w>\": 24644,\n  \"bern\": 9195,\n  \"bern</w>\": 18382,\n  \"bernade\": 46242,\n  \"bernar\": 11962,\n  \"bernard</w>\": 14579,\n  \"bernardino</w>\": 35328,\n  \"bernardo\": 27137,\n  \"bernardo</w>\": 28696,\n  \"bernardokath</w>\": 29081,\n  \"bernat\": 40578,\n  \"berni\": 18798,\n  \"bernie\": 40093,\n  \"bernie</w>\": 10503,\n  \"berniesanders</w>\": 23745,\n  \"bernstein</w>\": 33936,\n  \"berra</w>\": 15089,\n  \"berries</w>\": 8319,\n  \"berry\": 15334,\n  \"berry</w>\": 3488,\n  \"bers</w>\": 6408,\n  \"berser\": 39037,\n  \"bert\": 17340,\n  \"bert</w>\": 2358,\n  \"berta</w>\": 45187,\n  \"berth</w>\": 28317,\n  \"bertie</w>\": 47182,\n  \"berto</w>\": 34073,\n  \"bertr\": 36962,\n  \"bertrand</w>\": 41594,\n  \"berts</w>\": 30205,\n  \"berty</w>\": 35973,\n  \"berwick</w>\": 40407,\n  \"bery</w>\": 11411,\n  \"bes\": 26911,\n  \"bes</w>\": 3635,\n  \"beside</w>\": 13519,\n  \"besides</w>\": 17596,\n  \"bespoke</w>\": 15612,\n  \"bess</w>\": 43791,\n  \"best\": 3419,\n  \"best</w>\": 949,\n  \"bestbuy</w>\": 29749,\n  \"bestest</w>\": 31199,\n  \"bestfan\": 23880,\n  \"bestfanarmy</w>\": 24590,\n  \"bestfriend\": 29832,\n  \"bestfriend</w>\": 11856,\n  \"bestfriends</w>\": 23555,\n  \"besti\": 35210,\n  \"bestie</w>\": 17188,\n  \"besties</w>\": 27346,\n  \"besto\": 28615,\n  \"bestof\": 27892,\n  \"bestof</w>\": 39533,\n  \"bestseller</w>\": 25841,\n  \"bestselling</w>\": 28632,\n  \"bet\": 1051,\n  \"bet</w>\": 4430,\n  \"beta\": 43188,\n  \"beta</w>\": 9505,\n  \"betes</w>\": 10255,\n  \"beth\": 9993,\n  \"beth</w>\": 4892,\n  \"bethan\": 18781,\n  \"bethany\": 39130,\n  \"bethany</w>\": 27952,\n  \"bethe\": 12624,\n  \"bethel</w>\": 33410,\n  \"bethesda</w>\": 32527,\n  \"bethle\": 30760,\n  \"bethlehem</w>\": 31827,\n  \"betis</w>\": 45590,\n  \"beto</w>\": 33721,\n  \"betra\": 18436,\n  \"betrayal</w>\": 33171,\n  \"betrayed</w>\": 35692,\n  \"bets</w>\": 17107,\n  \"betsy</w>\": 28946,\n  \"bett\": 17715,\n  \"bett</w>\": 20489,\n  \"betta</w>\": 36387,\n  \"bette</w>\": 35855,\n  \"better\": 10320,\n  \"better</w>\": 1539,\n  \"bettertogether</w>\": 47392,\n  \"betting</w>\": 14319,\n  \"betts</w>\": 38637,\n  \"betty\": 36175,\n  \"betty</w>\": 14350,\n  \"between</w>\": 1957,\n  \"beu\": 38660,\n  \"bev\": 40324,\n  \"bev</w>\": 30968,\n  \"bever\": 9924,\n  \"beverage</w>\": 18694,\n  \"beverages</w>\": 28521,\n  \"beverley</w>\": 39165,\n  \"beverly\": 30906,\n  \"beverly</w>\": 16728,\n  \"beverlyhills</w>\": 45363,\n  \"beware</w>\": 14532,\n  \"bewithyou</w>\": 36787,\n  \"bex\": 18676,\n  \"bex</w>\": 24748,\n  \"bexhill</w>\": 49200,\n  \"bey\": 3234,\n  \"bey</w>\": 6767,\n  \"beyon\": 11447,\n  \"beyonce</w>\": 16632,\n  \"beyoncÃ©</w>\": 19219,\n  \"beyond\": 22246,\n  \"beyond</w>\": 4432,\n  \"bez\": 28592,\n  \"bez</w>\": 46764,\n  \"bezos</w>\": 45000,\n  \"bf\": 19858,\n  \"bf</w>\": 7990,\n  \"bfc</w>\": 37183,\n  \"bff</w>\": 11984,\n  \"bffs</w>\": 31462,\n  \"bfi</w>\": 34244,\n  \"bg\": 16674,\n  \"bg</w>\": 11295,\n  \"bgc</w>\": 47598,\n  \"bgs</w>\": 47963,\n  \"bgt</w>\": 40665,\n  \"bh\": 9930,\n  \"bh</w>\": 13603,\n  \"bha\": 6144,\n  \"bha</w>\": 33068,\n  \"bhafc</w>\": 30779,\n  \"bhagat</w>\": 49136,\n  \"bhai\": 48370,\n  \"bhai</w>\": 20508,\n  \"bhak\": 34501,\n  \"bham\": 31874,\n  \"bham</w>\": 23491,\n  \"bhan\": 27356,\n  \"bhand\": 48679,\n  \"bhar\": 9108,\n  \"bharat\": 27454,\n  \"bharat</w>\": 17430,\n  \"bharti</w>\": 46803,\n  \"bhat\": 23784,\n  \"bhatt</w>\": 36143,\n  \"bhav\": 44950,\n  \"bhi\": 28943,\n  \"bhi</w>\": 21955,\n  \"bhk</w>\": 45070,\n  \"bhm</w>\": 38741,\n  \"bho\": 19721,\n  \"bhopal</w>\": 44573,\n  \"bhp</w>\": 29776,\n  \"bhs</w>\": 29195,\n  \"bhu\": 9172,\n  \"bhuban\": 38729,\n  \"bhubanes\": 41213,\n  \"bhubaneswar</w>\": 45888,\n  \"bhushan</w>\": 40884,\n  \"bhutan</w>\": 32391,\n  \"bhutto</w>\": 30153,\n  \"bi\": 717,\n  \"bi</w>\": 3035,\n  \"bia</w>\": 3841,\n  \"biaf\": 26961,\n  \"biafra</w>\": 36355,\n  \"bian\": 19531,\n  \"bian</w>\": 9027,\n  \"bianca</w>\": 25854,\n  \"bianchi</w>\": 45720,\n  \"bians</w>\": 28141,\n  \"bias</w>\": 11268,\n  \"biased</w>\": 22178,\n  \"bib\": 44607,\n  \"bib</w>\": 21022,\n  \"bibi</w>\": 31182,\n  \"bibl\": 20912,\n  \"bible\": 26738,\n  \"bible</w>\": 7583,\n  \"bibli\": 23465,\n  \"biblical</w>\": 22841,\n  \"biblio\": 49131,\n  \"bic\": 5960,\n  \"bic</w>\": 10675,\n  \"bice\": 35589,\n  \"biceps</w>\": 46735,\n  \"bick\": 27238,\n  \"bicy\": 9247,\n  \"bicycle</w>\": 11652,\n  \"bicycles</w>\": 31326,\n  \"bid\": 21035,\n  \"bid</w>\": 5553,\n  \"bidding</w>\": 23237,\n  \"bide</w>\": 45178,\n  \"biden</w>\": 19451,\n  \"bids</w>\": 16148,\n  \"bie\": 5561,\n  \"bie</w>\": 4173,\n  \"bieber\": 48725,\n  \"bieber</w>\": 7535,\n  \"bien\": 19176,\n  \"bien</w>\": 25742,\n  \"biennale</w>\": 33776,\n  \"biennial</w>\": 36609,\n  \"bier\": 27226,\n  \"bier</w>\": 23508,\n  \"bies</w>\": 7867,\n  \"big\": 1915,\n  \"big</w>\": 1205,\n  \"bigbaldhead</w>\": 30325,\n  \"bigbang\": 41680,\n  \"bigbang</w>\": 23734,\n  \"bigdata</w>\": 9440,\n  \"bige\": 37762,\n  \"bigfoot</w>\": 37095,\n  \"bigg\": 15312,\n  \"bigg</w>\": 35399,\n  \"biggboss</w>\": 27056,\n  \"bigger</w>\": 6806,\n  \"biggest\": 19483,\n  \"biggest</w>\": 3505,\n  \"biggie</w>\": 28392,\n  \"biggs</w>\": 46507,\n  \"bigh\": 18106,\n  \"bighit</w>\": 35508,\n  \"bigo\": 14278,\n  \"bigolive</w>\": 20735,\n  \"bigotry</w>\": 37269,\n  \"bigre\": 36330,\n  \"bih</w>\": 33471,\n  \"bihar</w>\": 22849,\n  \"bij\": 42478,\n  \"bik\": 30306,\n  \"bike\": 11686,\n  \"bike</w>\": 3701,\n  \"biker\": 36100,\n  \"biker</w>\": 23449,\n  \"bikers</w>\": 29468,\n  \"bikes</w>\": 9227,\n  \"bikin\": 12638,\n  \"biking</w>\": 19157,\n  \"bikini</w>\": 14531,\n  \"bil\": 3092,\n  \"bil</w>\": 20506,\n  \"bilateral</w>\": 25599,\n  \"bilbao</w>\": 34802,\n  \"bild</w>\": 35512,\n  \"bile</w>\": 25943,\n  \"bilingual</w>\": 29623,\n  \"bilities</w>\": 13582,\n  \"bility</w>\": 4694,\n  \"bill\": 4444,\n  \"bill</w>\": 2886,\n  \"billboard</w>\": 10856,\n  \"billboards</w>\": 34741,\n  \"billed</w>\": 37558,\n  \"billi\": 7693,\n  \"billie</w>\": 23990,\n  \"billing</w>\": 31797,\n  \"billings</w>\": 43615,\n  \"billion\": 14520,\n  \"billion</w>\": 5729,\n  \"billionaire</w>\": 19475,\n  \"billionaires</w>\": 41590,\n  \"billions</w>\": 20742,\n  \"bills</w>\": 9810,\n  \"billsmafia</w>\": 48845,\n  \"billy\": 15626,\n  \"billy</w>\": 6814,\n  \"bilt\": 44770,\n  \"bilt</w>\": 26654,\n  \"bim\": 46737,\n  \"bim</w>\": 24775,\n  \"bin\": 4849,\n  \"bin</w>\": 5346,\n  \"binance</w>\": 43520,\n  \"binary</w>\": 23497,\n  \"bind</w>\": 44513,\n  \"binder</w>\": 30541,\n  \"binding</w>\": 21287,\n  \"bine</w>\": 34848,\n  \"bing\": 24818,\n  \"bing</w>\": 5665,\n  \"binge</w>\": 22600,\n  \"bingham\": 43785,\n  \"bingham</w>\": 47296,\n  \"bingo</w>\": 18418,\n  \"bino\": 29172,\n  \"bino</w>\": 24313,\n  \"bins</w>\": 26934,\n  \"bint\": 43647,\n  \"bio\": 2830,\n  \"bio</w>\": 5162,\n  \"biode\": 43502,\n  \"biodegradable</w>\": 47740,\n  \"biodiversity</w>\": 17428,\n  \"biof\": 45158,\n  \"biographical</w>\": 49232,\n  \"biography</w>\": 15423,\n  \"biological</w>\": 18821,\n  \"biologist</w>\": 35149,\n  \"biology</w>\": 9796,\n  \"biom\": 13010,\n  \"biomar\": 44549,\n  \"biomass</w>\": 36746,\n  \"biome\": 26218,\n  \"biomed\": 29280,\n  \"biomedical</w>\": 33117,\n  \"bionic</w>\": 46201,\n  \"biop\": 15009,\n  \"biopic</w>\": 27942,\n  \"bios</w>\": 48505,\n  \"biotech</w>\": 22514,\n  \"biotechnology</w>\": 40375,\n  \"biotic</w>\": 33773,\n  \"biotics</w>\": 41371,\n  \"bious</w>\": 31845,\n  \"bipartisan</w>\": 32266,\n  \"bipolar</w>\": 37097,\n  \"bique</w>\": 27809,\n  \"bir\": 921,\n  \"bir</w>\": 16284,\n  \"birch\": 31569,\n  \"birch</w>\": 22907,\n  \"bird\": 6908,\n  \"bird</w>\": 3329,\n  \"birdie</w>\": 29612,\n  \"birdies</w>\": 45618,\n  \"birding</w>\": 15851,\n  \"birdman</w>\": 41915,\n  \"birdphotography</w>\": 47999,\n  \"birds\": 41951,\n  \"birds</w>\": 4337,\n  \"birdwatching</w>\": 33497,\n  \"birk\": 48289,\n  \"birken\": 40661,\n  \"birmin\": 37482,\n  \"birmingham\": 38580,\n  \"birmingham</w>\": 7720,\n  \"birth\": 1128,\n  \"birth</w>\": 5397,\n  \"birthday\": 7381,\n  \"birthday</w>\": 1166,\n  \"birthdays</w>\": 17954,\n  \"birthplace</w>\": 31429,\n  \"biryani</w>\": 46489,\n  \"bis\": 5064,\n  \"bis</w>\": 14461,\n  \"biscu\": 11532,\n  \"biscuit</w>\": 18731,\n  \"biscuits</w>\": 18248,\n  \"bisexual</w>\": 36829,\n  \"bish\": 33690,\n  \"bish</w>\": 31461,\n  \"bishop\": 20625,\n  \"bishop</w>\": 8024,\n  \"bishops</w>\": 31579,\n  \"bison</w>\": 19741,\n  \"bistro</w>\": 21770,\n  \"bit\": 3010,\n  \"bit</w>\": 2010,\n  \"bitcoin\": 30848,\n  \"bitcoin</w>\": 6366,\n  \"bite</w>\": 41613,\n  \"biting</w>\": 23016,\n  \"bits</w>\": 7747,\n  \"bitt</w>\": 39251,\n  \"bius</w>\": 45525,\n  \"bix\": 46579,\n  \"biz\": 8212,\n  \"biz</w>\": 5431,\n  \"biza</w>\": 47013,\n  \"bizar\": 14886,\n  \"bizarre</w>\": 16965,\n  \"bizhour</w>\": 39462,\n  \"bizitalk</w>\": 34929,\n  \"bj\": 4592,\n  \"bj</w>\": 18229,\n  \"bjj</w>\": 27437,\n  \"bjor\": 26525,\n  \"bjp\": 37264,\n  \"bjp</w>\": 6178,\n  \"bk\": 15099,\n  \"bk</w>\": 14083,\n  \"bkk</w>\": 36433,\n  \"bl\": 833,\n  \"bl</w>\": 9467,\n  \"bla\": 2205,\n  \"bla</w>\": 19630,\n  \"blac\": 21008,\n  \"black\": 2025,\n  \"black</w>\": 1449,\n  \"blackand\": 12809,\n  \"blackandwhite\": 23688,\n  \"blackandwhite</w>\": 19506,\n  \"blackandwhitephotography</w>\": 27544,\n  \"blackberry</w>\": 16470,\n  \"blackbird</w>\": 38526,\n  \"blackburn</w>\": 23789,\n  \"blackfish</w>\": 42193,\n  \"blackfriday</w>\": 16445,\n  \"blackgirl\": 43591,\n  \"blackhawks</w>\": 19203,\n  \"blackhistory</w>\": 46982,\n  \"blackhistorymonth</w>\": 20135,\n  \"blacklist</w>\": 30295,\n  \"blacklivesmatter</w>\": 23467,\n  \"blackmail</w>\": 47295,\n  \"blackops</w>\": 43519,\n  \"blackout</w>\": 21733,\n  \"blackpanther</w>\": 36592,\n  \"blackpink</w>\": 20339,\n  \"blackpool</w>\": 21031,\n  \"blacks</w>\": 16351,\n  \"blackwell</w>\": 42642,\n  \"blad</w>\": 36635,\n  \"bladder</w>\": 33593,\n  \"blade</w>\": 10264,\n  \"blades</w>\": 16893,\n  \"blah</w>\": 29212,\n  \"blaine</w>\": 32457,\n  \"blair\": 31824,\n  \"blair</w>\": 14749,\n  \"blake\": 20229,\n  \"blake</w>\": 9579,\n  \"blame</w>\": 10695,\n  \"blamed</w>\": 32906,\n  \"blames</w>\": 27841,\n  \"blaming</w>\": 29287,\n  \"blan\": 4609,\n  \"blanc\": 30936,\n  \"blanc</w>\": 13301,\n  \"blanca</w>\": 40670,\n  \"blanchard</w>\": 40177,\n  \"blanche</w>\": 34875,\n  \"blanchett</w>\": 49378,\n  \"blanco</w>\": 26801,\n  \"bland\": 44372,\n  \"bland</w>\": 30799,\n  \"blank</w>\": 15134,\n  \"blanket</w>\": 12878,\n  \"blankets</w>\": 24042,\n  \"blanks</w>\": 48599,\n  \"blasio</w>\": 35553,\n  \"blasphe\": 36622,\n  \"blast\": 46349,\n  \"blast</w>\": 5964,\n  \"blasted</w>\": 38976,\n  \"blaster</w>\": 36341,\n  \"blasting</w>\": 26178,\n  \"blasts</w>\": 23067,\n  \"blat\": 22048,\n  \"blatant</w>\": 41391,\n  \"blatt</w>\": 39138,\n  \"blau\": 45307,\n  \"blaz\": 43413,\n  \"blaze</w>\": 15497,\n  \"blazer</w>\": 17606,\n  \"blazers</w>\": 16984,\n  \"blazing</w>\": 25267,\n  \"bldg</w>\": 22981,\n  \"ble\": 1447,\n  \"ble</w>\": 1059,\n  \"bleach</w>\": 27034,\n  \"bleak</w>\": 40355,\n  \"bled</w>\": 12006,\n  \"bleed\": 23027,\n  \"bleed</w>\": 24791,\n  \"bleedblue</w>\": 39160,\n  \"bleeding</w>\": 20311,\n  \"bleeds</w>\": 47339,\n  \"blen\": 25651,\n  \"blend</w>\": 10780,\n  \"blended</w>\": 25813,\n  \"blender</w>\": 25066,\n  \"blending</w>\": 34307,\n  \"blends</w>\": 28572,\n  \"bler\": 31305,\n  \"bler</w>\": 11979,\n  \"blers</w>\": 26930,\n  \"bles</w>\": 5763,\n  \"bless\": 9640,\n  \"bless</w>\": 5387,\n  \"blessed</w>\": 4411,\n  \"blessing</w>\": 10729,\n  \"blessings</w>\": 11185,\n  \"bleu</w>\": 30114,\n  \"blew</w>\": 18176,\n  \"bley</w>\": 43176,\n  \"bli\": 1450,\n  \"bli</w>\": 28051,\n  \"blin\": 9678,\n  \"blin</w>\": 5406,\n  \"blind\": 17248,\n  \"blind</w>\": 8351,\n  \"blinded</w>\": 49149,\n  \"blindness</w>\": 38812,\n  \"blinds</w>\": 32449,\n  \"bling\": 39764,\n  \"bling</w>\": 7097,\n  \"blink</w>\": 18976,\n  \"bliss\": 28531,\n  \"bliss</w>\": 12893,\n  \"blissful</w>\": 42145,\n  \"blit\": 39327,\n  \"blitz\": 42151,\n  \"blitz</w>\": 17548,\n  \"blizz\": 13075,\n  \"blizzard</w>\": 16111,\n  \"blk\": 42950,\n  \"blk</w>\": 22872,\n  \"blm</w>\": 30957,\n  \"bln</w>\": 47348,\n  \"blo\": 1204,\n  \"blo</w>\": 25505,\n  \"blob</w>\": 49312,\n  \"bloc</w>\": 30961,\n  \"block\": 4638,\n  \"block</w>\": 4593,\n  \"blockade</w>\": 33489,\n  \"blockbuster</w>\": 19939,\n  \"blockchain</w>\": 6653,\n  \"blocked</w>\": 9106,\n  \"blocker</w>\": 44767,\n  \"blocking</w>\": 12652,\n  \"blocks</w>\": 10113,\n  \"blog\": 16376,\n  \"blog</w>\": 2589,\n  \"blogg\": 33282,\n  \"blogged</w>\": 41380,\n  \"blogger\": 21352,\n  \"blogger</w>\": 7806,\n  \"bloggerrt</w>\": 48898,\n  \"bloggers</w>\": 11627,\n  \"blogging</w>\": 18090,\n  \"blogpost</w>\": 41842,\n  \"blogs</w>\": 16682,\n  \"bloke</w>\": 24384,\n  \"blom\": 48996,\n  \"blon\": 7958,\n  \"blond</w>\": 32426,\n  \"blonde</w>\": 10711,\n  \"blondes</w>\": 45130,\n  \"blondie</w>\": 39236,\n  \"bloo\": 2373,\n  \"blood\": 9231,\n  \"blood</w>\": 3590,\n  \"blooded</w>\": 41946,\n  \"bloodh\": 48480,\n  \"bloods</w>\": 39539,\n  \"bloody\": 38568,\n  \"bloody</w>\": 9468,\n  \"bloom\": 7311,\n  \"bloom</w>\": 10257,\n  \"bloomberg\": 43109,\n  \"bloomberg</w>\": 21238,\n  \"bloomfield</w>\": 40342,\n  \"blooming\": 45175,\n  \"blooming</w>\": 19266,\n  \"bloomington</w>\": 34731,\n  \"blooms</w>\": 21439,\n  \"bloss\": 10017,\n  \"blossom</w>\": 14472,\n  \"blossoms</w>\": 21916,\n  \"blot</w>\": 41710,\n  \"blou\": 44506,\n  \"blouse</w>\": 23525,\n  \"blow\": 15230,\n  \"blow</w>\": 10211,\n  \"blower</w>\": 25832,\n  \"blowing</w>\": 12087,\n  \"blown</w>\": 11848,\n  \"blowout</w>\": 34857,\n  \"blows</w>\": 21063,\n  \"blr</w>\": 47250,\n  \"bls</w>\": 39458,\n  \"blu\": 1263,\n  \"blu</w>\": 10273,\n  \"blue\": 3829,\n  \"blue</w>\": 1746,\n  \"bluebells</w>\": 47150,\n  \"blueberries</w>\": 29551,\n  \"blueberry</w>\": 18251,\n  \"bluebird</w>\": 40747,\n  \"bluec\": 43194,\n  \"bluef\": 41174,\n  \"bluegrass</w>\": 26241,\n  \"bluejays</w>\": 18684,\n  \"blueprint</w>\": 30594,\n  \"blues\": 17566,\n  \"blues</w>\": 5159,\n  \"blueslyrix</w>\": 47068,\n  \"bluet\": 13469,\n  \"bluetooth</w>\": 14052,\n  \"bluewave</w>\": 40025,\n  \"bluff</w>\": 27232,\n  \"bluffs</w>\": 48844,\n  \"blum</w>\": 34818,\n  \"blumen\": 38714,\n  \"blun\": 34472,\n  \"blunt</w>\": 19305,\n  \"blur\": 12102,\n  \"blur</w>\": 27976,\n  \"bluray</w>\": 36818,\n  \"blurred</w>\": 38013,\n  \"blurry</w>\": 21977,\n  \"blush</w>\": 22889,\n  \"blvd</w>\": 12578,\n  \"bly\": 20930,\n  \"bly</w>\": 4426,\n  \"bm\": 4773,\n  \"bm</w>\": 15916,\n  \"bma</w>\": 42573,\n  \"bmc</w>\": 27807,\n  \"bmi</w>\": 40642,\n  \"bmo</w>\": 39083,\n  \"bms</w>\": 34074,\n  \"bmw\": 26637,\n  \"bmw</w>\": 7869,\n  \"bmx</w>\": 22535,\n  \"bn\": 10496,\n  \"bn</w>\": 7992,\n  \"bnb</w>\": 20010,\n  \"bnha</w>\": 49336,\n  \"bnp</w>\": 47910,\n  \"bnw</w>\": 35903,\n  \"bo\": 647,\n  \"bo</w>\": 2525,\n  \"boa</w>\": 14732,\n  \"boar\": 7837,\n  \"boar</w>\": 35473,\n  \"board\": 10419,\n  \"board</w>\": 1972,\n  \"boarded</w>\": 43052,\n  \"boarder</w>\": 37414,\n  \"boardgame</w>\": 47829,\n  \"boardgames</w>\": 32646,\n  \"boarding</w>\": 10086,\n  \"boardroom</w>\": 47937,\n  \"boards</w>\": 7963,\n  \"boardwalk</w>\": 29043,\n  \"boast</w>\": 44467,\n  \"boasts</w>\": 30309,\n  \"boat\": 12426,\n  \"boat</w>\": 4440,\n  \"boath\": 45461,\n  \"boating</w>\": 21951,\n  \"boats</w>\": 10080,\n  \"boatsales</w>\": 46244,\n  \"bob\": 8444,\n  \"bob</w>\": 4423,\n  \"boba</w>\": 39948,\n  \"bobb\": 16891,\n  \"bobble</w>\": 38796,\n  \"bobblehead</w>\": 33451,\n  \"bobby\": 17847,\n  \"bobby</w>\": 7816,\n  \"bobc\": 26153,\n  \"bobcat</w>\": 37896,\n  \"bobcats</w>\": 27568,\n  \"bobo</w>\": 38939,\n  \"bobs</w>\": 45533,\n  \"boc\": 27307,\n  \"boc</w>\": 39042,\n  \"boca</w>\": 26094,\n  \"bock</w>\": 24961,\n  \"bod\": 17904,\n  \"bod</w>\": 26340,\n  \"boda</w>\": 42030,\n  \"bode\": 28452,\n  \"bode</w>\": 40429,\n  \"bodega</w>\": 47350,\n  \"bodied</w>\": 36892,\n  \"bodies</w>\": 9799,\n  \"bodily</w>\": 49119,\n  \"body\": 7132,\n  \"body</w>\": 1774,\n  \"bodybuilding</w>\": 24538,\n  \"bodyguard</w>\": 35565,\n  \"boe\": 23476,\n  \"boe</w>\": 21773,\n  \"boeh\": 38002,\n  \"boehner</w>\": 44599,\n  \"boeing\": 48135,\n  \"boeing</w>\": 11857,\n  \"boer\": 44889,\n  \"boer</w>\": 40768,\n  \"bog\": 23426,\n  \"bog</w>\": 28318,\n  \"bogo</w>\": 35769,\n  \"bogota</w>\": 47059,\n  \"bogus</w>\": 42907,\n  \"boh\": 43238,\n  \"bohe\": 40541,\n  \"bohemi\": 21552,\n  \"bohemian</w>\": 25753,\n  \"boho</w>\": 25444,\n  \"boi\": 37129,\n  \"boi</w>\": 12673,\n  \"boil</w>\": 31332,\n  \"boiled</w>\": 23886,\n  \"boiler\": 28212,\n  \"boiler</w>\": 25615,\n  \"boiling</w>\": 32019,\n  \"bois\": 47742,\n  \"bois</w>\": 21640,\n  \"boise</w>\": 23304,\n  \"bok\": 26671,\n  \"bok</w>\": 15289,\n  \"boko</w>\": 30929,\n  \"boks</w>\": 40216,\n  \"bol\": 2860,\n  \"bol</w>\": 8413,\n  \"bola</w>\": 12840,\n  \"bold\": 26975,\n  \"bold</w>\": 8911,\n  \"boldand\": 48413,\n  \"boldly</w>\": 44778,\n  \"boli\": 12722,\n  \"bolic</w>\": 27343,\n  \"bolivia</w>\": 28628,\n  \"bollah</w>\": 36336,\n  \"bolly\": 25302,\n  \"bollywood\": 32448,\n  \"bollywood</w>\": 9604,\n  \"bolo</w>\": 40236,\n  \"bolog\": 22818,\n  \"bologna</w>\": 27513,\n  \"bolster</w>\": 47304,\n  \"bolt</w>\": 13131,\n  \"bolton\": 48757,\n  \"bolton</w>\": 16598,\n  \"bolts</w>\": 26028,\n  \"bom\": 3012,\n  \"bom</w>\": 19469,\n  \"bomb\": 18091,\n  \"bomb</w>\": 6331,\n  \"bombar\": 25544,\n  \"bombardier</w>\": 42700,\n  \"bombay\": 48602,\n  \"bombay</w>\": 23890,\n  \"bombed</w>\": 24542,\n  \"bomber</w>\": 15436,\n  \"bombers</w>\": 21786,\n  \"bombing</w>\": 14475,\n  \"bombings</w>\": 43236,\n  \"bombs</w>\": 14410,\n  \"bombshell</w>\": 36340,\n  \"bon\": 1871,\n  \"bon</w>\": 4216,\n  \"bona</w>\": 33342,\n  \"bonanza</w>\": 40304,\n  \"bond\": 37022,\n  \"bond</w>\": 6826,\n  \"bonded</w>\": 37390,\n  \"bondi</w>\": 40092,\n  \"bonding</w>\": 19609,\n  \"bonds</w>\": 15786,\n  \"bone\": 22502,\n  \"bone</w>\": 6195,\n  \"bones</w>\": 9476,\n  \"bonfire</w>\": 23151,\n  \"bongo</w>\": 47519,\n  \"boni\": 32269,\n  \"boni</w>\": 46356,\n  \"bonita</w>\": 42896,\n  \"bonjour</w>\": 33176,\n  \"bonkers</w>\": 39865,\n  \"bonn</w>\": 38969,\n  \"bonnar\": 47191,\n  \"bonnaroo</w>\": 48777,\n  \"bonne</w>\": 25844,\n  \"bonnet</w>\": 30636,\n  \"bonnie</w>\": 18555,\n  \"bono</w>\": 24476,\n  \"bons</w>\": 42883,\n  \"bonsai</w>\": 44129,\n  \"bonus</w>\": 8164,\n  \"bonuses</w>\": 35144,\n  \"boo\": 824,\n  \"boo</w>\": 7317,\n  \"boogie</w>\": 22639,\n  \"book\": 2828,\n  \"book</w>\": 1116,\n  \"bookboost</w>\": 31257,\n  \"bookclub</w>\": 34438,\n  \"bookday</w>\": 26327,\n  \"booked</w>\": 12584,\n  \"booker</w>\": 21302,\n  \"bookfest</w>\": 39381,\n  \"booking</w>\": 10145,\n  \"bookings</w>\": 18345,\n  \"booklet</w>\": 27405,\n  \"bookmark</w>\": 33596,\n  \"bookof\": 45629,\n  \"bookreview</w>\": 27362,\n  \"books\": 44382,\n  \"books</w>\": 2161,\n  \"bookshelf</w>\": 34821,\n  \"bookshop</w>\": 24705,\n  \"bookstore</w>\": 17999,\n  \"bookstores</w>\": 46416,\n  \"bookworm</w>\": 20743,\n  \"boom\": 9609,\n  \"boom</w>\": 7121,\n  \"boomer\": 33819,\n  \"boomer</w>\": 31766,\n  \"boomers</w>\": 37988,\n  \"booming</w>\": 33487,\n  \"boon\": 24979,\n  \"boon</w>\": 35821,\n  \"boone</w>\": 23453,\n  \"boop</w>\": 45047,\n  \"boost\": 44639,\n  \"boost</w>\": 6260,\n  \"boosted</w>\": 37631,\n  \"booster</w>\": 20877,\n  \"boosters</w>\": 46859,\n  \"boosting</w>\": 28480,\n  \"boosts</w>\": 29247,\n  \"boot\": 10843,\n  \"boot</w>\": 8087,\n  \"bootcamp</w>\": 22051,\n  \"booted</w>\": 42564,\n  \"booth\": 47895,\n  \"booth</w>\": 3971,\n  \"booths</w>\": 32653,\n  \"booties</w>\": 46188,\n  \"bootleg</w>\": 38139,\n  \"boots</w>\": 7319,\n  \"booze</w>\": 24341,\n  \"bop</w>\": 19720,\n  \"bor\": 1141,\n  \"bor</w>\": 15093,\n  \"bora</w>\": 24736,\n  \"bord</w>\": 36891,\n  \"bordeaux</w>\": 22009,\n  \"border\": 16304,\n  \"border</w>\": 6177,\n  \"borderlands</w>\": 38676,\n  \"borders</w>\": 13900,\n  \"bore\": 14084,\n  \"bore</w>\": 24638,\n  \"bored</w>\": 8933,\n  \"boredom</w>\": 31460,\n  \"boretum</w>\": 38902,\n  \"borg</w>\": 14770,\n  \"borgh\": 17180,\n  \"boring</w>\": 12519,\n  \"boris\": 31212,\n  \"boris</w>\": 15704,\n  \"borisjohnson</w>\": 44481,\n  \"born\": 17695,\n  \"born</w>\": 2683,\n  \"borne\": 42910,\n  \"borne</w>\": 9328,\n  \"borneo</w>\": 33332,\n  \"bornon\": 41811,\n  \"bornonthisday</w>\": 42757,\n  \"boro\": 26796,\n  \"boro</w>\": 7974,\n  \"borough\": 22761,\n  \"borough</w>\": 6203,\n  \"borrow</w>\": 22293,\n  \"borrowed</w>\": 28224,\n  \"borrowing</w>\": 41045,\n  \"borussia</w>\": 36764,\n  \"bos\": 14885,\n  \"bos</w>\": 9644,\n  \"bosa</w>\": 46946,\n  \"bosch\": 42009,\n  \"bosch</w>\": 19466,\n  \"bosco</w>\": 36960,\n  \"bose</w>\": 23142,\n  \"bosh</w>\": 42244,\n  \"bosni\": 42924,\n  \"bosnia</w>\": 31396,\n  \"boss\": 17935,\n  \"boss</w>\": 4206,\n  \"bosses</w>\": 23906,\n  \"boston\": 11540,\n  \"boston</w>\": 4399,\n  \"bostonmarathon</w>\": 44533,\n  \"bot\": 4136,\n  \"bot</w>\": 6947,\n  \"botan\": 12554,\n  \"botanic</w>\": 32560,\n  \"botanical</w>\": 21026,\n  \"botany</w>\": 22612,\n  \"botd</w>\": 34451,\n  \"both\": 36575,\n  \"both</w>\": 2212,\n  \"bother</w>\": 21125,\n  \"bothered</w>\": 27997,\n  \"botox</w>\": 43449,\n  \"bots</w>\": 13721,\n  \"botswana</w>\": 27584,\n  \"bott\": 3520,\n  \"bott</w>\": 37225,\n  \"bottle\": 37306,\n  \"bottle</w>\": 5392,\n  \"bottled</w>\": 29331,\n  \"bottlen\": 46439,\n  \"bottles</w>\": 9754,\n  \"bottling</w>\": 42006,\n  \"bottom\": 32314,\n  \"bottom</w>\": 5931,\n  \"bottoms</w>\": 31524,\n  \"bou\": 3728,\n  \"bou</w>\": 23165,\n  \"bouchard</w>\": 47930,\n  \"boudo\": 48827,\n  \"bought</w>\": 4142,\n  \"boul\": 24830,\n  \"boulder</w>\": 18260,\n  \"boule\": 17652,\n  \"boulevard</w>\": 19504,\n  \"boun\": 5993,\n  \"bounce</w>\": 14316,\n  \"bouncing</w>\": 32060,\n  \"bouncy</w>\": 43415,\n  \"bound\": 15140,\n  \"bound</w>\": 4567,\n  \"boundaries</w>\": 18690,\n  \"boundary</w>\": 21344,\n  \"bounds</w>\": 37469,\n  \"bounty</w>\": 21142,\n  \"bouquet</w>\": 20961,\n  \"bour\": 2934,\n  \"bour</w>\": 35486,\n  \"bourbon\": 48118,\n  \"bourbon</w>\": 14652,\n  \"bourdain</w>\": 48095,\n  \"bourg</w>\": 20690,\n  \"bourgeo\": 45672,\n  \"bourn</w>\": 39143,\n  \"bourne\": 13789,\n  \"bourne</w>\": 5192,\n  \"bournemouth</w>\": 20911,\n  \"bout\": 19982,\n  \"bout</w>\": 8123,\n  \"bouti\": 10926,\n  \"boutique</w>\": 12179,\n  \"bow\": 2297,\n  \"bow</w>\": 4040,\n  \"bowden</w>\": 48538,\n  \"bowed</w>\": 49130,\n  \"bowel</w>\": 36880,\n  \"bowen</w>\": 25368,\n  \"bower</w>\": 40414,\n  \"bowers</w>\": 42238,\n  \"bowie</w>\": 13036,\n  \"bowing</w>\": 46398,\n  \"bowl\": 26719,\n  \"bowl</w>\": 3814,\n  \"bowled</w>\": 39987,\n  \"bowler</w>\": 25528,\n  \"bowlers</w>\": 42632,\n  \"bowles</w>\": 41611,\n  \"bowling</w>\": 10390,\n  \"bowls</w>\": 17787,\n  \"bowman</w>\": 22052,\n  \"bows</w>\": 17000,\n  \"bowser</w>\": 38234,\n  \"bowski</w>\": 48311,\n  \"box\": 2774,\n  \"box</w>\": 2063,\n  \"boxed</w>\": 24190,\n  \"boxer\": 40394,\n  \"boxer</w>\": 15363,\n  \"boxers</w>\": 31019,\n  \"boxes</w>\": 8350,\n  \"boxing\": 33669,\n  \"boxing</w>\": 5554,\n  \"boy\": 2927,\n  \"boy</w>\": 1876,\n  \"boyband</w>\": 31568,\n  \"boyce</w>\": 44480,\n  \"boycot\": 46208,\n  \"boycott\": 31615,\n  \"boycott</w>\": 19559,\n  \"boyd</w>\": 18295,\n  \"boyfriend</w>\": 7328,\n  \"boyfriends</w>\": 36541,\n  \"boyle</w>\": 22802,\n  \"boys\": 25223,\n  \"boys</w>\": 2034,\n  \"boyz</w>\": 16152,\n  \"bp\": 23410,\n  \"bp</w>\": 11558,\n  \"bpa</w>\": 43855,\n  \"bpd</w>\": 48587,\n  \"bpl</w>\": 28901,\n  \"bpm</w>\": 40338,\n  \"bps</w>\": 37794,\n  \"br\": 711,\n  \"br</w>\": 7532,\n  \"bra\": 1195,\n  \"bra</w>\": 5860,\n  \"brac\": 6663,\n  \"brace\": 8376,\n  \"brace</w>\": 9183,\n  \"bracelet</w>\": 8969,\n  \"bracelets</w>\": 20027,\n  \"braces</w>\": 19249,\n  \"brack\": 25676,\n  \"bracket</w>\": 14780,\n  \"brackets</w>\": 36183,\n  \"brad\": 4848,\n  \"brad</w>\": 9405,\n  \"bradbury</w>\": 45097,\n  \"braden</w>\": 46842,\n  \"bradford</w>\": 15062,\n  \"bradley\": 31905,\n  \"bradley</w>\": 10952,\n  \"brador</w>\": 24062,\n  \"bradshaw</w>\": 37556,\n  \"brady\": 42494,\n  \"brady</w>\": 11117,\n  \"brae\": 42874,\n  \"brae</w>\": 40040,\n  \"brag</w>\": 30110,\n  \"bragg</w>\": 38545,\n  \"bragging</w>\": 38199,\n  \"brah\": 20276,\n  \"brahms</w>\": 45114,\n  \"brai\": 25048,\n  \"braid</w>\": 31067,\n  \"braided</w>\": 39997,\n  \"braids</w>\": 34221,\n  \"brain\": 9454,\n  \"brain</w>\": 4812,\n  \"brains</w>\": 17129,\n  \"brainstorming</w>\": 36607,\n  \"braised</w>\": 28363,\n  \"brake</w>\": 14937,\n  \"brakes</w>\": 23456,\n  \"bral</w>\": 31309,\n  \"bram\": 14815,\n  \"bram</w>\": 39456,\n  \"brampton</w>\": 35124,\n  \"bran\": 3684,\n  \"bran</w>\": 28348,\n  \"brance\": 36072,\n  \"brance</w>\": 15413,\n  \"branch</w>\": 7998,\n  \"branches</w>\": 15843,\n  \"brand\": 3910,\n  \"brand</w>\": 2896,\n  \"branded</w>\": 18097,\n  \"brandi</w>\": 41003,\n  \"branding</w>\": 10841,\n  \"brando</w>\": 41892,\n  \"brandon\": 20423,\n  \"brandon</w>\": 9166,\n  \"brands</w>\": 8681,\n  \"brandt</w>\": 22552,\n  \"brandy</w>\": 26232,\n  \"brane</w>\": 32340,\n  \"branson</w>\": 28280,\n  \"brant\": 28951,\n  \"brant</w>\": 47592,\n  \"braries</w>\": 46377,\n  \"brary</w>\": 24520,\n  \"bras</w>\": 22611,\n  \"brasil</w>\": 18991,\n  \"brass\": 24348,\n  \"brass</w>\": 11655,\n  \"brat\": 26717,\n  \"brat</w>\": 26631,\n  \"brate</w>\": 41864,\n  \"braun\": 39129,\n  \"braun</w>\": 29309,\n  \"brave\": 25461,\n  \"brave</w>\": 7769,\n  \"braved</w>\": 47663,\n  \"bravely</w>\": 42303,\n  \"bravery</w>\": 25831,\n  \"braves</w>\": 14422,\n  \"braving</w>\": 43258,\n  \"bravo\": 38613,\n  \"bravo</w>\": 13006,\n  \"braw\": 37871,\n  \"brawl</w>\": 26066,\n  \"braxton</w>\": 37451,\n  \"bray\": 26256,\n  \"bray</w>\": 22993,\n  \"braz\": 4625,\n  \"brazil\": 47459,\n  \"brazil</w>\": 6305,\n  \"brazili\": 45697,\n  \"brazilian</w>\": 12111,\n  \"brb</w>\": 25316,\n  \"brc</w>\": 40393,\n  \"bre\": 887,\n  \"bre</w>\": 7782,\n  \"brea\": 7318,\n  \"brea</w>\": 46538,\n  \"breach</w>\": 21363,\n  \"breaches</w>\": 45173,\n  \"bread\": 18886,\n  \"bread</w>\": 5066,\n  \"breads</w>\": 43064,\n  \"break\": 2206,\n  \"break</w>\": 2568,\n  \"breakable</w>\": 30691,\n  \"breakaway</w>\": 42732,\n  \"breakdown</w>\": 14519,\n  \"breaker</w>\": 14814,\n  \"breakers</w>\": 22270,\n  \"breakfa\": 45931,\n  \"breakfast\": 30210,\n  \"breakfast</w>\": 3290,\n  \"breaking\": 14698,\n  \"breaking</w>\": 2755,\n  \"breakingbad</w>\": 38032,\n  \"breakingnews</w>\": 23837,\n  \"breakout</w>\": 16752,\n  \"breaks</w>\": 7263,\n  \"breakthrough</w>\": 18802,\n  \"breakup</w>\": 38931,\n  \"breast\": 12930,\n  \"breast</w>\": 9475,\n  \"breastcancer\": 40813,\n  \"breastcancer</w>\": 30065,\n  \"breastfeeding</w>\": 29033,\n  \"breasts</w>\": 37637,\n  \"breath\": 9508,\n  \"breath</w>\": 9576,\n  \"breathe</w>\": 11364,\n  \"breathing</w>\": 14959,\n  \"breathtaking</w>\": 14709,\n  \"brecht</w>\": 34622,\n  \"breck\": 44598,\n  \"bred\": 46929,\n  \"bred</w>\": 16008,\n  \"bree\": 7892,\n  \"bree</w>\": 37138,\n  \"breed\": 28030,\n  \"breed</w>\": 13791,\n  \"breeders</w>\": 37472,\n  \"breeding</w>\": 16544,\n  \"breeds</w>\": 29021,\n  \"breen</w>\": 48013,\n  \"brees</w>\": 46721,\n  \"breeze</w>\": 13125,\n  \"breezy</w>\": 21451,\n  \"breit\": 23864,\n  \"breitbart</w>\": 37926,\n  \"brek\": 35494,\n  \"bremen</w>\": 39861,\n  \"bren\": 5209,\n  \"brenda</w>\": 23786,\n  \"brendan\": 35134,\n  \"brendan</w>\": 15414,\n  \"brendon</w>\": 36756,\n  \"brennan</w>\": 22372,\n  \"brenner</w>\": 42941,\n  \"brent\": 31439,\n  \"brent</w>\": 16355,\n  \"brentwood</w>\": 33108,\n  \"brero</w>\": 47781,\n  \"bres</w>\": 32561,\n  \"bret\": 38020,\n  \"bret</w>\": 32548,\n  \"brethren</w>\": 43134,\n  \"breton</w>\": 32290,\n  \"brett\": 22591,\n  \"brett</w>\": 12394,\n  \"brev</w>\": 42882,\n  \"brevi\": 39475,\n  \"brew\": 5048,\n  \"brew</w>\": 7253,\n  \"brewco</w>\": 33582,\n  \"brewed</w>\": 23238,\n  \"brewer</w>\": 20756,\n  \"breweries</w>\": 35277,\n  \"brewers</w>\": 17618,\n  \"brewery</w>\": 8850,\n  \"brewing</w>\": 8275,\n  \"brewingco</w>\": 45155,\n  \"brews</w>\": 21663,\n  \"brewster</w>\": 40274,\n  \"brex\": 22726,\n  \"brexit\": 27666,\n  \"brexit</w>\": 5801,\n  \"brgy</w>\": 35983,\n  \"bri\": 1036,\n  \"bri</w>\": 18636,\n  \"bria</w>\": 35890,\n  \"brian\": 9824,\n  \"brian</w>\": 4989,\n  \"brianna</w>\": 32308,\n  \"briar</w>\": 46119,\n  \"bribe</w>\": 40042,\n  \"bribery</w>\": 41792,\n  \"bric\": 27055,\n  \"brice</w>\": 40190,\n  \"brick\": 13937,\n  \"brick</w>\": 9518,\n  \"bricks</w>\": 21029,\n  \"brics</w>\": 48196,\n  \"brid\": 16995,\n  \"bridal\": 36875,\n  \"bridal</w>\": 14284,\n  \"bride\": 18342,\n  \"bride</w>\": 8964,\n  \"brides</w>\": 18067,\n  \"bridesma\": 28356,\n  \"bridesmaid</w>\": 43399,\n  \"bridesmaids</w>\": 47754,\n  \"bridg\": 20623,\n  \"bridge\": 8647,\n  \"bridge</w>\": 2465,\n  \"bridgeport</w>\": 45201,\n  \"bridges</w>\": 11811,\n  \"bridget</w>\": 27073,\n  \"bridgewater</w>\": 38732,\n  \"bridging</w>\": 38109,\n  \"brie</w>\": 26622,\n  \"brief\": 9435,\n  \"brief</w>\": 8954,\n  \"briefed</w>\": 47326,\n  \"briefing</w>\": 12991,\n  \"briefly</w>\": 26980,\n  \"briefs</w>\": 29557,\n  \"brien</w>\": 13504,\n  \"brier</w>\": 43995,\n  \"brig\": 11081,\n  \"briga\": 46448,\n  \"brigade</w>\": 16032,\n  \"briggs</w>\": 28108,\n  \"brigh\": 6710,\n  \"bright\": 10383,\n  \"bright</w>\": 4852,\n  \"brighten</w>\": 18208,\n  \"brightening</w>\": 43929,\n  \"brighter</w>\": 18507,\n  \"brightest</w>\": 26159,\n  \"brightly</w>\": 36298,\n  \"brightness</w>\": 42280,\n  \"brighton\": 28416,\n  \"brighton</w>\": 9470,\n  \"brigitte</w>\": 44421,\n  \"brill\": 27342,\n  \"brill</w>\": 28601,\n  \"brilli\": 3821,\n  \"brilliance</w>\": 28146,\n  \"brilliant</w>\": 4106,\n  \"brilliantly</w>\": 26803,\n  \"brin\": 25620,\n  \"bring\": 11596,\n  \"bring</w>\": 2430,\n  \"bringback\": 28969,\n  \"bringbackour\": 45403,\n  \"bringing</w>\": 4777,\n  \"brings</w>\": 5138,\n  \"brink\": 39296,\n  \"brink</w>\": 28796,\n  \"brioche</w>\": 45818,\n  \"bris\": 9385,\n  \"bris</w>\": 15783,\n  \"brisban\": 30431,\n  \"brisbane\": 42932,\n  \"brisbane</w>\": 12407,\n  \"brisk</w>\": 43646,\n  \"brisket</w>\": 31920,\n  \"bristol\": 18159,\n  \"bristol</w>\": 8010,\n  \"brit\": 2318,\n  \"brit</w>\": 20066,\n  \"britain\": 40802,\n  \"britain</w>\": 6272,\n  \"britanni\": 31373,\n  \"britannia</w>\": 36188,\n  \"brite</w>\": 33827,\n  \"briti\": 8155,\n  \"british\": 8651,\n  \"british</w>\": 3504,\n  \"britishmuseum</w>\": 41858,\n  \"britney\": 37192,\n  \"britney</w>\": 21853,\n  \"britneyspears</w>\": 42990,\n  \"brits</w>\": 21832,\n  \"britt\": 10811,\n  \"britt</w>\": 25976,\n  \"brittany\": 38187,\n  \"brittany</w>\": 18818,\n  \"britton</w>\": 37422,\n  \"brium</w>\": 46079,\n  \"brixton</w>\": 30056,\n  \"bro\": 927,\n  \"bro</w>\": 4410,\n  \"broad\": 3491,\n  \"broad</w>\": 12623,\n  \"broadband</w>\": 21050,\n  \"broadcast</w>\": 8967,\n  \"broadcaster</w>\": 29005,\n  \"broadcasting</w>\": 14403,\n  \"broadcasts</w>\": 46742,\n  \"broader</w>\": 36029,\n  \"broadway\": 34599,\n  \"broadway</w>\": 9092,\n  \"broc\": 15587,\n  \"broccoli</w>\": 19094,\n  \"broch\": 21419,\n  \"brochure</w>\": 25275,\n  \"brock\": 14841,\n  \"brock</w>\": 16745,\n  \"brodie</w>\": 42150,\n  \"brody</w>\": 29608,\n  \"broke\": 42165,\n  \"broke</w>\": 6509,\n  \"broken\": 26126,\n  \"broken</w>\": 5107,\n  \"broker\": 34032,\n  \"broker</w>\": 20449,\n  \"brokerage</w>\": 41327,\n  \"brokers</w>\": 28271,\n  \"brom\": 18972,\n  \"brom</w>\": 33296,\n  \"bromance</w>\": 35353,\n  \"bromley</w>\": 35715,\n  \"bron\": 4011,\n  \"bron</w>\": 10243,\n  \"bronco\": 43488,\n  \"bronco</w>\": 34370,\n  \"broncos</w>\": 12516,\n  \"bronson</w>\": 37042,\n  \"bronte</w>\": 48936,\n  \"bronx\": 48310,\n  \"bronx</w>\": 17183,\n  \"brony</w>\": 21084,\n  \"bronze</w>\": 8459,\n  \"broo\": 5204,\n  \"brooch</w>\": 21207,\n  \"brook\": 4782,\n  \"brook</w>\": 7322,\n  \"brooke\": 28576,\n  \"brooke</w>\": 12549,\n  \"brookes</w>\": 39707,\n  \"brooklyn\": 23253,\n  \"brooklyn</w>\": 6983,\n  \"brooks\": 42779,\n  \"brooks</w>\": 9991,\n  \"broom\": 32046,\n  \"broom</w>\": 28008,\n  \"broome</w>\": 49335,\n  \"bros</w>\": 7776,\n  \"broth</w>\": 29994,\n  \"brotha</w>\": 33974,\n  \"brother\": 12697,\n  \"brother</w>\": 3157,\n  \"brotherhood</w>\": 19059,\n  \"brothers</w>\": 4548,\n  \"brou\": 27874,\n  \"brough</w>\": 21033,\n  \"brought</w>\": 4222,\n  \"brov\": 42881,\n  \"brow\": 6547,\n  \"brow</w>\": 15895,\n  \"broward</w>\": 34719,\n  \"brown\": 6315,\n  \"brown</w>\": 2866,\n  \"browne</w>\": 28440,\n  \"brownie</w>\": 23045,\n  \"brownies</w>\": 22312,\n  \"browning</w>\": 32241,\n  \"browns</w>\": 14051,\n  \"brows</w>\": 14998,\n  \"browse</w>\": 19060,\n  \"browser</w>\": 19768,\n  \"browsing</w>\": 29318,\n  \"brox</w>\": 43539,\n  \"brs</w>\": 47485,\n  \"brt</w>\": 46936,\n  \"bru\": 1698,\n  \"bru</w>\": 31028,\n  \"bruce\": 21223,\n  \"bruce</w>\": 7085,\n  \"bruh</w>\": 17575,\n  \"bruins</w>\": 14736,\n  \"bruise</w>\": 48048,\n  \"bruised</w>\": 46502,\n  \"brum\": 23862,\n  \"brum</w>\": 28078,\n  \"brun\": 6870,\n  \"brunch</w>\": 9113,\n  \"brune\": 29057,\n  \"brunei</w>\": 41898,\n  \"brunette</w>\": 35528,\n  \"bruno</w>\": 14568,\n  \"brunomars</w>\": 41156,\n  \"brunswick</w>\": 24012,\n  \"brush\": 27969,\n  \"brush</w>\": 8594,\n  \"brushed</w>\": 30298,\n  \"brushes</w>\": 21550,\n  \"brushing</w>\": 35072,\n  \"brussels</w>\": 11020,\n  \"brut</w>\": 39499,\n  \"brutal\": 42144,\n  \"brutal</w>\": 14556,\n  \"brutality</w>\": 31348,\n  \"brutally</w>\": 28132,\n  \"brute</w>\": 47552,\n  \"brux\": 49093,\n  \"bry\": 6587,\n  \"bry</w>\": 28228,\n  \"bryan\": 16134,\n  \"bryan</w>\": 10412,\n  \"bryant</w>\": 12256,\n  \"bryce</w>\": 19895,\n  \"bryn\": 36569,\n  \"bryn</w>\": 42877,\n  \"bryson</w>\": 38990,\n  \"bs\": 11783,\n  \"bs</w>\": 1329,\n  \"bsa</w>\": 46619,\n  \"bsb</w>\": 23070,\n  \"bsbi\": 41728,\n  \"bsbibotany</w>\": 42086,\n  \"bsc</w>\": 32031,\n  \"bsd</w>\": 41848,\n  \"bse</w>\": 46341,\n  \"bsf</w>\": 48314,\n  \"bsgo</w>\": 48474,\n  \"bsp</w>\": 47977,\n  \"bst</w>\": 19698,\n  \"bsu</w>\": 46385,\n  \"bt\": 3317,\n  \"bt</w>\": 4205,\n  \"btc</w>\": 10315,\n  \"btcc</w>\": 30759,\n  \"btn</w>\": 44681,\n  \"bto</w>\": 35516,\n  \"btob</w>\": 29379,\n  \"btr</w>\": 39767,\n  \"bts\": 15154,\n  \"bts</w>\": 4007,\n  \"btsarmy</w>\": 30302,\n  \"btsbbmas</w>\": 35297,\n  \"btsx\": 44971,\n  \"btv</w>\": 38541,\n  \"btw</w>\": 9520,\n  \"btwn</w>\": 28284,\n  \"bu\": 609,\n  \"bu</w>\": 5831,\n  \"bub\": 27704,\n  \"bub</w>\": 33158,\n  \"bubb\": 9739,\n  \"bubba</w>\": 28149,\n  \"bubble\": 28687,\n  \"bubble</w>\": 10799,\n  \"bubblegum</w>\": 48078,\n  \"bubbles</w>\": 17648,\n  \"bubbly</w>\": 31034,\n  \"buc\": 8207,\n  \"buccane\": 32830,\n  \"buccaneers</w>\": 38058,\n  \"buch\": 22623,\n  \"bucha</w>\": 43582,\n  \"buchan\": 27237,\n  \"buchanan</w>\": 28975,\n  \"bucharest</w>\": 37013,\n  \"buck\": 6061,\n  \"buck</w>\": 11433,\n  \"bucket\": 22596,\n  \"bucket</w>\": 10498,\n  \"bucketlist</w>\": 30778,\n  \"buckets</w>\": 27168,\n  \"buckeye</w>\": 34549,\n  \"buckeyes</w>\": 30741,\n  \"buckingham</w>\": 28736,\n  \"buckle</w>\": 21948,\n  \"buckley</w>\": 25905,\n  \"bucks</w>\": 6103,\n  \"bucky</w>\": 35916,\n  \"bucs</w>\": 20011,\n  \"bud\": 2942,\n  \"bud</w>\": 10737,\n  \"buda\": 18520,\n  \"buda</w>\": 49012,\n  \"budapest</w>\": 19202,\n  \"budd\": 7296,\n  \"buddha</w>\": 13981,\n  \"buddhism</w>\": 23744,\n  \"buddhist</w>\": 18697,\n  \"buddies</w>\": 14543,\n  \"budding</w>\": 31992,\n  \"buddy\": 40948,\n  \"buddy</w>\": 6557,\n  \"budge\": 32005,\n  \"budget\": 46758,\n  \"budget</w>\": 5639,\n  \"budgeting</w>\": 43789,\n  \"budgets</w>\": 36419,\n  \"buds</w>\": 14665,\n  \"budweiser</w>\": 40900,\n  \"buen\": 15640,\n  \"buena</w>\": 30876,\n  \"buenas</w>\": 48529,\n  \"bueno</w>\": 46202,\n  \"buenos</w>\": 26055,\n  \"buf\": 44417,\n  \"buff\": 5456,\n  \"buff</w>\": 21416,\n  \"buffal\": 25836,\n  \"buffalo\": 31231,\n  \"buffalo</w>\": 8054,\n  \"buffalob\": 38831,\n  \"buffalobills</w>\": 44352,\n  \"buffe\": 13724,\n  \"buffer</w>\": 33050,\n  \"buffet</w>\": 17829,\n  \"buffett</w>\": 34081,\n  \"buffs</w>\": 28906,\n  \"buffy</w>\": 33356,\n  \"bug\": 14453,\n  \"bug</w>\": 8162,\n  \"bugatti</w>\": 35451,\n  \"buggy</w>\": 28963,\n  \"bugs</w>\": 13850,\n  \"buh</w>\": 31406,\n  \"buhari</w>\": 14661,\n  \"buick</w>\": 22000,\n  \"buil\": 1354,\n  \"build\": 22739,\n  \"build</w>\": 3289,\n  \"builder</w>\": 14474,\n  \"builders</w>\": 17694,\n  \"building\": 21206,\n  \"building</w>\": 2307,\n  \"buildings</w>\": 8866,\n  \"builds</w>\": 16449,\n  \"buildthe\": 41497,\n  \"built\": 45824,\n  \"built</w>\": 3874,\n  \"buk\": 28084,\n  \"buk</w>\": 24317,\n  \"buka</w>\": 47778,\n  \"bukit</w>\": 39888,\n  \"bul\": 2572,\n  \"bul</w>\": 10200,\n  \"bula</w>\": 18726,\n  \"bulaga</w>\": 41575,\n  \"bular</w>\": 32187,\n  \"bulb</w>\": 22373,\n  \"bulbs</w>\": 24808,\n  \"bulgar\": 15424,\n  \"bulgaria</w>\": 20295,\n  \"bulgarian</w>\": 38693,\n  \"bulge</w>\": 47603,\n  \"bulk</w>\": 19643,\n  \"bull\": 4537,\n  \"bull</w>\": 6029,\n  \"bulldo\": 37675,\n  \"bulldog\": 34828,\n  \"bulldog</w>\": 15611,\n  \"bulldogs</w>\": 13916,\n  \"bullet\": 14340,\n  \"bullet</w>\": 12465,\n  \"bulletin</w>\": 19638,\n  \"bulletproof</w>\": 43212,\n  \"bullets</w>\": 22117,\n  \"bullied</w>\": 34689,\n  \"bullies</w>\": 39050,\n  \"bullion</w>\": 49114,\n  \"bullish</w>\": 22142,\n  \"bullock</w>\": 33198,\n  \"bullpen</w>\": 38081,\n  \"bulls</w>\": 10313,\n  \"bully\": 43111,\n  \"bully</w>\": 20190,\n  \"bullying</w>\": 13548,\n  \"bum\": 27683,\n  \"bum</w>\": 14226,\n  \"bumble\": 25585,\n  \"bumble</w>\": 39303,\n  \"bumblebee</w>\": 36911,\n  \"bummed</w>\": 48456,\n  \"bump\": 9783,\n  \"bump</w>\": 15877,\n  \"bumped</w>\": 22495,\n  \"bumper</w>\": 17881,\n  \"bumping</w>\": 40196,\n  \"bumps</w>\": 21115,\n  \"bun\": 2591,\n  \"bun</w>\": 13665,\n  \"bunch</w>\": 7796,\n  \"bund</w>\": 41905,\n  \"bunde\": 18841,\n  \"bundesliga</w>\": 21582,\n  \"bundle</w>\": 11793,\n  \"bundled</w>\": 47228,\n  \"bundles</w>\": 29834,\n  \"bundy</w>\": 37332,\n  \"bung</w>\": 44748,\n  \"bungal\": 29549,\n  \"bungalow</w>\": 33696,\n  \"bunk</w>\": 41236,\n  \"bunker</w>\": 23615,\n  \"bunnies</w>\": 28998,\n  \"bunny\": 34198,\n  \"bunny</w>\": 9258,\n  \"buns</w>\": 22235,\n  \"bunting</w>\": 30695,\n  \"buon\": 31350,\n  \"buon</w>\": 48498,\n  \"bur\": 1039,\n  \"bur</w>\": 17362,\n  \"burbank</w>\": 34862,\n  \"burberry</w>\": 30412,\n  \"burch</w>\": 44588,\n  \"burden</w>\": 18687,\n  \"bure\": 11902,\n  \"bureau\": 32098,\n  \"bureau</w>\": 15400,\n  \"burg\": 19505,\n  \"burg</w>\": 3499,\n  \"burge\": 20522,\n  \"burger\": 22356,\n  \"burger</w>\": 6548,\n  \"burgers</w>\": 13007,\n  \"burgess</w>\": 26211,\n  \"burgh\": 18141,\n  \"burgh</w>\": 4965,\n  \"burgl\": 25554,\n  \"burglar</w>\": 43365,\n  \"burglary</w>\": 32573,\n  \"burgring</w>\": 40823,\n  \"burgundy</w>\": 23650,\n  \"buri\": 46348,\n  \"buri</w>\": 42614,\n  \"burial</w>\": 22012,\n  \"buried</w>\": 14233,\n  \"burk\": 48822,\n  \"burke</w>\": 15340,\n  \"burle\": 27891,\n  \"burlesque</w>\": 33732,\n  \"burlington</w>\": 23370,\n  \"burma</w>\": 30305,\n  \"burmese</w>\": 47906,\n  \"burn\": 7934,\n  \"burn</w>\": 4285,\n  \"burnaby</w>\": 47541,\n  \"burne</w>\": 27246,\n  \"burned</w>\": 15022,\n  \"burner</w>\": 23243,\n  \"burnett</w>\": 28558,\n  \"burnham</w>\": 36111,\n  \"burning\": 46107,\n  \"burning</w>\": 8405,\n  \"burnley</w>\": 24653,\n  \"burnout</w>\": 36078,\n  \"burns</w>\": 10234,\n  \"burnt</w>\": 15185,\n  \"burr</w>\": 30879,\n  \"burrell</w>\": 49045,\n  \"burrito</w>\": 23473,\n  \"burritos</w>\": 47245,\n  \"burroughs</w>\": 41337,\n  \"burrows</w>\": 44846,\n  \"burst</w>\": 13005,\n  \"bursting</w>\": 32566,\n  \"bursts</w>\": 37026,\n  \"burt</w>\": 27162,\n  \"burton\": 42354,\n  \"burton</w>\": 12704,\n  \"burundi</w>\": 33595,\n  \"bury\": 12276,\n  \"bury</w>\": 3899,\n  \"burys</w>\": 32362,\n  \"bus\": 1319,\n  \"bus</w>\": 2840,\n  \"busan</w>\": 40172,\n  \"busc\": 35000,\n  \"busch</w>\": 20475,\n  \"buses</w>\": 12879,\n  \"bush\": 11191,\n  \"bush</w>\": 6867,\n  \"bushes</w>\": 37578,\n  \"busiest</w>\": 32764,\n  \"busine\": 4598,\n  \"busines\": 25364,\n  \"business\": 8346,\n  \"business</w>\": 1716,\n  \"businesses</w>\": 7287,\n  \"businessman</w>\": 25635,\n  \"buss</w>\": 47764,\n  \"bust\": 31299,\n  \"bust</w>\": 9959,\n  \"busted</w>\": 18643,\n  \"buster\": 37219,\n  \"buster</w>\": 12094,\n  \"busters</w>\": 16362,\n  \"busting</w>\": 29622,\n  \"busy\": 39332,\n  \"busy</w>\": 4354,\n  \"but\": 2201,\n  \"but</w>\": 767,\n  \"butch</w>\": 35102,\n  \"butcher</w>\": 18732,\n  \"butchers</w>\": 42334,\n  \"bute</w>\": 39240,\n  \"butes</w>\": 14630,\n  \"butler\": 35867,\n  \"butler</w>\": 10702,\n  \"butt\": 12500,\n  \"butt</w>\": 31523,\n  \"butte</w>\": 31678,\n  \"butter\": 5427,\n  \"butter</w>\": 6952,\n  \"butterflies</w>\": 16232,\n  \"butterfly</w>\": 9738,\n  \"buttermilk</w>\": 40180,\n  \"butternut</w>\": 36867,\n  \"buttery</w>\": 45535,\n  \"button\": 45480,\n  \"button</w>\": 8007,\n  \"buttons</w>\": 16188,\n  \"butts</w>\": 25309,\n  \"buu\": 42313,\n  \"buuren</w>\": 47752,\n  \"buxton</w>\": 41370,\n  \"buy\": 11632,\n  \"buy</w>\": 2131,\n  \"buyer</w>\": 14682,\n  \"buyers</w>\": 14663,\n  \"buying</w>\": 6566,\n  \"buys</w>\": 15560,\n  \"buzz\": 7866,\n  \"buzz</w>\": 8706,\n  \"buzzard</w>\": 47434,\n  \"buzzer</w>\": 38064,\n  \"buzzfeed</w>\": 26613,\n  \"buzzing</w>\": 18511,\n  \"bv\": 18958,\n  \"bv</w>\": 35861,\n  \"bvb</w>\": 22454,\n  \"bw\": 17672,\n  \"bw</w>\": 15120,\n  \"bway</w>\": 26652,\n  \"bwfc</w>\": 40918,\n  \"bwo\": 45902,\n  \"bx</w>\": 33633,\n  \"by\": 1713,\n  \"by</w>\": 638,\n  \"bye\": 20076,\n  \"bye</w>\": 4460,\n  \"byes</w>\": 47958,\n  \"byl</w>\": 34994,\n  \"byn\": 46917,\n  \"byn</w>\": 11890,\n  \"byo\": 28039,\n  \"bypass</w>\": 26530,\n  \"byr\": 15534,\n  \"byrd</w>\": 30369,\n  \"byrne</w>\": 19676,\n  \"byron\": 43504,\n  \"byron</w>\": 19775,\n  \"bys</w>\": 26740,\n  \"bystand\": 46138,\n  \"byte</w>\": 42798,\n  \"bytes</w>\": 39538,\n  \"bythe\": 36621,\n  \"byu\": 41072,\n  \"byu</w>\": 23770,\n  \"byz\": 35406,\n  \"byzantine</w>\": 44081,\n  \"bz</w>\": 13631,\n  \"bÃ©\": 40365,\n  \"bÃ¼\": 38706,\n  \"c\": 66,\n  \"c</w>\": 322,\n  \"ca\": 772,\n  \"ca</w>\": 1684,\n  \"caa</w>\": 19316,\n  \"cab\": 3033,\n  \"cab</w>\": 11912,\n  \"cabaret</w>\": 26263,\n  \"cabbage</w>\": 18407,\n  \"cabe</w>\": 32731,\n  \"cabello</w>\": 34371,\n  \"caber\": 29062,\n  \"cabernet</w>\": 33730,\n  \"cabin</w>\": 14178,\n  \"cabine\": 23354,\n  \"cabinet</w>\": 9937,\n  \"cabinets</w>\": 33083,\n  \"cabins</w>\": 48455,\n  \"cable</w>\": 7925,\n  \"cables</w>\": 22408,\n  \"cabo\": 37318,\n  \"cabo</w>\": 28370,\n  \"cabrera</w>\": 42338,\n  \"cabs</w>\": 42048,\n  \"cac\": 8298,\n  \"cac</w>\": 23872,\n  \"cacao</w>\": 38022,\n  \"cache</w>\": 28993,\n  \"caching</w>\": 40655,\n  \"cactus</w>\": 19794,\n  \"cad\": 6297,\n  \"cad</w>\": 20166,\n  \"caday</w>\": 34187,\n  \"cadbury</w>\": 44698,\n  \"caddy</w>\": 41521,\n  \"cade\": 10497,\n  \"cade</w>\": 17306,\n  \"cadet</w>\": 22764,\n  \"cadets</w>\": 19160,\n  \"cadillac</w>\": 18156,\n  \"cae</w>\": 49264,\n  \"caer\": 28298,\n  \"caes\": 15740,\n  \"caesar</w>\": 21642,\n  \"caesars</w>\": 42162,\n  \"caf\": 3471,\n  \"caf</w>\": 20867,\n  \"cafc</w>\": 30748,\n  \"cafe\": 15201,\n  \"cafe</w>\": 4979,\n  \"cafes</w>\": 40166,\n  \"cafeteria</w>\": 32817,\n  \"caffe\": 18258,\n  \"caffe</w>\": 45416,\n  \"caffeine</w>\": 22487,\n  \"cafÃ©</w>\": 15304,\n  \"cag\": 15714,\n  \"cage</w>\": 11838,\n  \"cages</w>\": 37939,\n  \"cah</w>\": 40519,\n  \"cahill</w>\": 33185,\n  \"cai\": 38971,\n  \"cai</w>\": 36116,\n  \"cain</w>\": 13747,\n  \"caine</w>\": 16799,\n  \"cair\": 15804,\n  \"cair</w>\": 46659,\n  \"cairn\": 31264,\n  \"cairn</w>\": 42467,\n  \"cairngor\": 44067,\n  \"cairns</w>\": 32941,\n  \"cairo</w>\": 19615,\n  \"cait\": 14116,\n  \"caitlin\": 47768,\n  \"caitlin</w>\": 26809,\n  \"caitlyn</w>\": 35763,\n  \"cajun\": 43425,\n  \"cajun</w>\": 33044,\n  \"cak</w>\": 42986,\n  \"cake\": 15295,\n  \"cake</w>\": 2972,\n  \"cakeday</w>\": 46207,\n  \"cakes</w>\": 5950,\n  \"cal\": 1198,\n  \"cal</w>\": 6372,\n  \"cala</w>\": 32133,\n  \"calab\": 31795,\n  \"calais</w>\": 39886,\n  \"calam\": 28841,\n  \"calc</w>\": 45055,\n  \"calci\": 22824,\n  \"calcium</w>\": 27815,\n  \"calcu\": 15328,\n  \"calcul\": 15734,\n  \"calculate</w>\": 37656,\n  \"calculated</w>\": 40688,\n  \"calculations</w>\": 44605,\n  \"calculator</w>\": 26093,\n  \"calculus</w>\": 35104,\n  \"calcutta</w>\": 42901,\n  \"calder\": 29372,\n  \"calder</w>\": 36817,\n  \"caldwell</w>\": 30484,\n  \"cale</w>\": 32674,\n  \"caleb</w>\": 19619,\n  \"caled\": 28421,\n  \"calend\": 6057,\n  \"calendar</w>\": 7122,\n  \"calendars</w>\": 17229,\n  \"calf</w>\": 17508,\n  \"calgary\": 27415,\n  \"calgary</w>\": 10797,\n  \"calhoun</w>\": 38929,\n  \"cali\": 2857,\n  \"cali</w>\": 16337,\n  \"caliber</w>\": 32820,\n  \"calibr\": 32597,\n  \"calico</w>\": 45379,\n  \"calif</w>\": 30839,\n  \"califor\": 3526,\n  \"californi\": 21303,\n  \"california</w>\": 3729,\n  \"call\": 7950,\n  \"call</w>\": 1620,\n  \"calla\": 20658,\n  \"callahan</w>\": 43313,\n  \"callaway</w>\": 42596,\n  \"callback</w>\": 44764,\n  \"calle\": 47699,\n  \"calle</w>\": 38144,\n  \"called</w>\": 2726,\n  \"caller</w>\": 30666,\n  \"calli\": 16338,\n  \"callie</w>\": 36512,\n  \"calligraphy</w>\": 27775,\n  \"calling</w>\": 4597,\n  \"callister</w>\": 49026,\n  \"callme\": 42449,\n  \"callof\": 41280,\n  \"calls</w>\": 4572,\n  \"callum</w>\": 23224,\n  \"calm\": 34990,\n  \"calm</w>\": 7011,\n  \"calming</w>\": 30690,\n  \"calorie</w>\": 32679,\n  \"calories</w>\": 18029,\n  \"cals</w>\": 47714,\n  \"calum</w>\": 16405,\n  \"calvary</w>\": 40169,\n  \"calvert</w>\": 47134,\n  \"calves</w>\": 31857,\n  \"calvin\": 27642,\n  \"calvin</w>\": 17345,\n  \"caly\": 10244,\n  \"calyp\": 29851,\n  \"cam\": 1004,\n  \"cam</w>\": 5982,\n  \"camar\": 31991,\n  \"camber\": 44362,\n  \"cambo\": 14662,\n  \"cambodia</w>\": 17347,\n  \"cambridge\": 24651,\n  \"cambridge</w>\": 9334,\n  \"cambridgeshire</w>\": 46139,\n  \"camden\": 38735,\n  \"camden</w>\": 17984,\n  \"came</w>\": 1986,\n  \"camel\": 27005,\n  \"camel</w>\": 21914,\n  \"camels</w>\": 41357,\n  \"cameo</w>\": 19492,\n  \"camer\": 4961,\n  \"camera</w>\": 3934,\n  \"cameraman</w>\": 43347,\n  \"cameras</w>\": 12172,\n  \"camero\": 20320,\n  \"cameron\": 19634,\n  \"cameron</w>\": 8057,\n  \"camerondallas</w>\": 40587,\n  \"cameroon</w>\": 24061,\n  \"camil\": 37745,\n  \"camila</w>\": 19919,\n  \"camilla</w>\": 38897,\n  \"camille</w>\": 26741,\n  \"camino</w>\": 28529,\n  \"camo\": 28702,\n  \"camo</w>\": 19716,\n  \"camogie</w>\": 39547,\n  \"camou\": 23588,\n  \"camoufla\": 23667,\n  \"camouflage</w>\": 29049,\n  \"camp\": 2854,\n  \"camp</w>\": 2877,\n  \"campa\": 2793,\n  \"campaig\": 9448,\n  \"campaign\": 44524,\n  \"campaign</w>\": 3193,\n  \"campaigner</w>\": 46364,\n  \"campaigners</w>\": 40272,\n  \"campaigning</w>\": 19594,\n  \"campaigns</w>\": 15669,\n  \"campan\": 31765,\n  \"campbell\": 29094,\n  \"campbell</w>\": 8806,\n  \"campe\": 16672,\n  \"campeon\": 49109,\n  \"campeones</w>\": 30105,\n  \"camper\": 41914,\n  \"camper</w>\": 24522,\n  \"campers</w>\": 26619,\n  \"campfire</w>\": 32530,\n  \"campground</w>\": 46969,\n  \"camping</w>\": 9982,\n  \"campo</w>\": 27600,\n  \"campos</w>\": 48077,\n  \"camps</w>\": 12806,\n  \"campsite</w>\": 44243,\n  \"campu\": 19687,\n  \"campus</w>\": 4560,\n  \"campuses</w>\": 31895,\n  \"camra</w>\": 46155,\n  \"camry</w>\": 46472,\n  \"cams</w>\": 32590,\n  \"can\": 950,\n  \"can</w>\": 753,\n  \"cana</w>\": 28341,\n  \"canad\": 13193,\n  \"canada</w>\": 2698,\n  \"canadaday</w>\": 39800,\n  \"canadi\": 4329,\n  \"canadian\": 22160,\n  \"canadian</w>\": 5255,\n  \"canadians</w>\": 18989,\n  \"canadiens</w>\": 40932,\n  \"canal\": 28585,\n  \"canal</w>\": 9535,\n  \"canals</w>\": 38483,\n  \"canaria</w>\": 47117,\n  \"canary\": 40409,\n  \"canary</w>\": 24523,\n  \"canberra</w>\": 16719,\n  \"canc\": 43189,\n  \"cancel\": 12026,\n  \"cancel</w>\": 21546,\n  \"canceled</w>\": 25874,\n  \"cancell\": 28027,\n  \"cancellation</w>\": 38765,\n  \"cancelled</w>\": 13270,\n  \"cancels</w>\": 34089,\n  \"cancer\": 12690,\n  \"cancer</w>\": 3148,\n  \"cancers</w>\": 33201,\n  \"cancun</w>\": 34721,\n  \"cand\": 4986,\n  \"candace</w>\": 45623,\n  \"candel\": 47834,\n  \"candi\": 6034,\n  \"candice</w>\": 30024,\n  \"candid\": 7884,\n  \"candid</w>\": 19206,\n  \"candidacy</w>\": 46248,\n  \"candidate</w>\": 6475,\n  \"candidates</w>\": 8619,\n  \"candied</w>\": 43982,\n  \"candies</w>\": 46305,\n  \"candle\": 18995,\n  \"candle</w>\": 12674,\n  \"candlelight</w>\": 34724,\n  \"candles</w>\": 15472,\n  \"candy\": 20741,\n  \"candy</w>\": 6417,\n  \"cane\": 23644,\n  \"cane</w>\": 14716,\n  \"canelo</w>\": 43210,\n  \"canes</w>\": 21902,\n  \"cani\": 35592,\n  \"canine</w>\": 27380,\n  \"cann\": 4139,\n  \"cann</w>\": 23709,\n  \"cannab\": 7577,\n  \"cannabis\": 31837,\n  \"cannabis</w>\": 8861,\n  \"canne\": 44252,\n  \"canned</w>\": 27290,\n  \"cannes</w>\": 13773,\n  \"canni\": 26389,\n  \"canning</w>\": 38621,\n  \"cannon\": 28771,\n  \"cannon</w>\": 15661,\n  \"cannons</w>\": 46269,\n  \"cannot</w>\": 4785,\n  \"canny</w>\": 26986,\n  \"cano\": 31668,\n  \"cano</w>\": 25937,\n  \"canoe</w>\": 23503,\n  \"canola</w>\": 40389,\n  \"canon\": 17749,\n  \"canon</w>\": 9310,\n  \"canopy</w>\": 26061,\n  \"cans</w>\": 13707,\n  \"cant\": 13395,\n  \"cant</w>\": 5784,\n  \"canteen</w>\": 39230,\n  \"canter\": 19301,\n  \"canterbury</w>\": 22271,\n  \"canti\": 42845,\n  \"cantina</w>\": 47472,\n  \"canton\": 37735,\n  \"canton</w>\": 25363,\n  \"cantore</w>\": 41769,\n  \"cantwait</w>\": 33760,\n  \"canu\": 20171,\n  \"canucks</w>\": 24321,\n  \"canv\": 30714,\n  \"canvas\": 22441,\n  \"canvas</w>\": 7483,\n  \"canvass</w>\": 40054,\n  \"canvassing</w>\": 33783,\n  \"cany\": 47674,\n  \"canyon\": 41246,\n  \"canyon</w>\": 9755,\n  \"cao</w>\": 29207,\n  \"cap\": 1289,\n  \"cap</w>\": 3938,\n  \"capabilities</w>\": 19512,\n  \"capability</w>\": 25885,\n  \"capable</w>\": 14742,\n  \"capac\": 24665,\n  \"capacity</w>\": 8970,\n  \"capcom</w>\": 28342,\n  \"cape\": 10288,\n  \"cape</w>\": 6631,\n  \"capecod</w>\": 41339,\n  \"capes</w>\": 38785,\n  \"capetown</w>\": 20059,\n  \"capit\": 6889,\n  \"capita</w>\": 41833,\n  \"capital\": 11198,\n  \"capital</w>\": 5439,\n  \"capitalism</w>\": 20068,\n  \"capitalist</w>\": 37015,\n  \"capitals</w>\": 29579,\n  \"capitol\": 43880,\n  \"capitol</w>\": 11375,\n  \"capo</w>\": 45477,\n  \"capp\": 16718,\n  \"capped</w>\": 24659,\n  \"capping</w>\": 42656,\n  \"cappuccino</w>\": 37402,\n  \"capri\": 48699,\n  \"capri</w>\": 30982,\n  \"capric\": 28667,\n  \"capricorn</w>\": 46314,\n  \"caps</w>\": 23185,\n  \"capsu\": 15608,\n  \"capsul\": 40341,\n  \"capsule</w>\": 20627,\n  \"capsules</w>\": 32870,\n  \"capt\": 45815,\n  \"capt</w>\": 17369,\n  \"captain\": 14958,\n  \"captain</w>\": 4621,\n  \"captainamerica</w>\": 46229,\n  \"captainmarvel</w>\": 48492,\n  \"captains</w>\": 18706,\n  \"caption</w>\": 11327,\n  \"captions</w>\": 41878,\n  \"captiv\": 19776,\n  \"captivating</w>\": 30580,\n  \"captive</w>\": 29038,\n  \"captivity</w>\": 41141,\n  \"capture</w>\": 8818,\n  \"captured</w>\": 8020,\n  \"captures</w>\": 15305,\n  \"capturing</w>\": 19548,\n  \"capu\": 44241,\n  \"car\": 811,\n  \"car</w>\": 1615,\n  \"cara</w>\": 20016,\n  \"carab\": 32251,\n  \"carac\": 30029,\n  \"caracas</w>\": 45854,\n  \"caramel</w>\": 14788,\n  \"carameli\": 41739,\n  \"caramelized</w>\": 43854,\n  \"carat</w>\": 32981,\n  \"carav\": 13814,\n  \"caravan</w>\": 18566,\n  \"carb</w>\": 21379,\n  \"carbo\": 43235,\n  \"carbon\": 14038,\n  \"carbon</w>\": 7549,\n  \"carbs</w>\": 29313,\n  \"carcin\": 31587,\n  \"carcinoma</w>\": 46810,\n  \"card\": 10793,\n  \"card</w>\": 2601,\n  \"cardam\": 49008,\n  \"cardboard</w>\": 19845,\n  \"cardi\": 6211,\n  \"cardi</w>\": 29677,\n  \"cardiac</w>\": 21256,\n  \"cardiff\": 22488,\n  \"cardiff</w>\": 9781,\n  \"cardigan</w>\": 30501,\n  \"cardin\": 8457,\n  \"cardinal\": 46310,\n  \"cardinal</w>\": 16472,\n  \"cardinals</w>\": 12837,\n  \"cardio\": 15003,\n  \"cardio</w>\": 23455,\n  \"cardiology</w>\": 37276,\n  \"cardiovascular</w>\": 29291,\n  \"cardo</w>\": 40625,\n  \"cards</w>\": 4094,\n  \"care\": 2050,\n  \"care</w>\": 1776,\n  \"cared</w>\": 27675,\n  \"career\": 20609,\n  \"career</w>\": 3061,\n  \"careers</w>\": 10090,\n  \"careful</w>\": 11999,\n  \"carefully</w>\": 15789,\n  \"caregi\": 22042,\n  \"caregiver</w>\": 46372,\n  \"caregivers</w>\": 35909,\n  \"careless</w>\": 47325,\n  \"carers</w>\": 26484,\n  \"cares</w>\": 10968,\n  \"caretaker</w>\": 48037,\n  \"carey</w>\": 14895,\n  \"cargo</w>\": 12490,\n  \"cari\": 18497,\n  \"cari</w>\": 37273,\n  \"carib\": 9757,\n  \"caribbean</w>\": 10368,\n  \"caribou</w>\": 42135,\n  \"caric\": 25337,\n  \"caricature</w>\": 38857,\n  \"carina</w>\": 44357,\n  \"caring</w>\": 13083,\n  \"carl\": 8273,\n  \"carl</w>\": 9482,\n  \"carla</w>\": 25552,\n  \"carleton</w>\": 46496,\n  \"carlin</w>\": 47559,\n  \"carlisle</w>\": 23276,\n  \"carlo\": 17861,\n  \"carlo</w>\": 15266,\n  \"carlos</w>\": 9538,\n  \"carlow</w>\": 44745,\n  \"carls\": 39635,\n  \"carlson</w>\": 24114,\n  \"carlton</w>\": 18934,\n  \"carly\": 23166,\n  \"carly</w>\": 22689,\n  \"carlyle</w>\": 46555,\n  \"carmel\": 30757,\n  \"carmel</w>\": 25601,\n  \"carmen\": 41427,\n  \"carmen</w>\": 18834,\n  \"carmichael</w>\": 41657,\n  \"carn\": 21597,\n  \"carnage</w>\": 31385,\n  \"carnation</w>\": 44577,\n  \"carnaval</w>\": 47238,\n  \"carne\": 17053,\n  \"carne</w>\": 42885,\n  \"carnegie</w>\": 25287,\n  \"carney</w>\": 34194,\n  \"carni\": 8438,\n  \"carnival\": 36708,\n  \"carnival</w>\": 10577,\n  \"caro\": 30317,\n  \"caro</w>\": 29344,\n  \"carol\": 4242,\n  \"carol</w>\": 11489,\n  \"carole</w>\": 31955,\n  \"carolin\": 26418,\n  \"carolina</w>\": 7027,\n  \"caroline\": 31064,\n  \"caroline</w>\": 12641,\n  \"carols</w>\": 33269,\n  \"carolyn</w>\": 25825,\n  \"carou\": 32224,\n  \"carousel</w>\": 36665,\n  \"carp</w>\": 26085,\n  \"carpen\": 15584,\n  \"carpenter</w>\": 18475,\n  \"carpet</w>\": 6922,\n  \"carpets</w>\": 34612,\n  \"carr\": 26951,\n  \"carr</w>\": 17136,\n  \"carra\": 32332,\n  \"carre\": 31114,\n  \"carrera</w>\": 32952,\n  \"carri\": 4739,\n  \"carriage\": 47885,\n  \"carriage</w>\": 21087,\n  \"carrick</w>\": 44052,\n  \"carrie\": 30334,\n  \"carrie</w>\": 15848,\n  \"carried</w>\": 12960,\n  \"carrier</w>\": 12308,\n  \"carriers</w>\": 26865,\n  \"carries</w>\": 17982,\n  \"carrieunderwood</w>\": 47338,\n  \"carrington</w>\": 48759,\n  \"carroll\": 41911,\n  \"carroll</w>\": 14893,\n  \"carrot</w>\": 15435,\n  \"carrots</w>\": 19299,\n  \"carry\": 31863,\n  \"carry</w>\": 6998,\n  \"carrying</w>\": 9920,\n  \"cars</w>\": 3346,\n  \"carsforsale</w>\": 45222,\n  \"carson\": 41766,\n  \"carson</w>\": 13171,\n  \"cart\": 27705,\n  \"cart</w>\": 13065,\n  \"cartag\": 45042,\n  \"cartagena</w>\": 47157,\n  \"carte</w>\": 44949,\n  \"cartel</w>\": 30529,\n  \"carter\": 27330,\n  \"carter</w>\": 7260,\n  \"cartier</w>\": 32951,\n  \"carto\": 5487,\n  \"carton</w>\": 41812,\n  \"cartoon\": 33082,\n  \"cartoon</w>\": 7651,\n  \"cartoonist</w>\": 30793,\n  \"cartoons</w>\": 17673,\n  \"cartri\": 47084,\n  \"cartridge</w>\": 29432,\n  \"cartridges</w>\": 49249,\n  \"carts</w>\": 27581,\n  \"cartunesapp</w>\": 32888,\n  \"caruso</w>\": 45192,\n  \"carve</w>\": 40152,\n  \"carved</w>\": 15127,\n  \"carver</w>\": 28850,\n  \"carving</w>\": 19428,\n  \"carvings</w>\": 48123,\n  \"cary</w>\": 22844,\n  \"cas\": 1671,\n  \"cas</w>\": 13831,\n  \"casa</w>\": 14643,\n  \"casablanc\": 36572,\n  \"casablanca</w>\": 41950,\n  \"casc\": 36714,\n  \"casca\": 43296,\n  \"cascade</w>\": 29065,\n  \"cascades</w>\": 46454,\n  \"case\": 17698,\n  \"case</w>\": 2068,\n  \"cases</w>\": 6888,\n  \"casey\": 24899,\n  \"casey</w>\": 12836,\n  \"cash\": 11050,\n  \"cash</w>\": 5131,\n  \"cashback</w>\": 36368,\n  \"cashe\": 32233,\n  \"cashew</w>\": 39531,\n  \"cashi\": 29517,\n  \"cashier</w>\": 34547,\n  \"cashmere</w>\": 34566,\n  \"casi\": 38350,\n  \"casino</w>\": 10473,\n  \"casio</w>\": 32261,\n  \"cask</w>\": 26299,\n  \"casm</w>\": 35198,\n  \"casper</w>\": 35892,\n  \"cass</w>\": 22556,\n  \"cassandra</w>\": 35289,\n  \"casser\": 31093,\n  \"casserole</w>\": 36045,\n  \"cassette</w>\": 19717,\n  \"cassi\": 14942,\n  \"cassidy</w>\": 21757,\n  \"cassie</w>\": 29323,\n  \"cassini</w>\": 46554,\n  \"cast\": 2509,\n  \"cast</w>\": 1970,\n  \"caste</w>\": 32693,\n  \"casted</w>\": 33838,\n  \"castel\": 43306,\n  \"castell\": 31792,\n  \"caster\": 32101,\n  \"caster</w>\": 8449,\n  \"casters</w>\": 29721,\n  \"castic</w>\": 47737,\n  \"castillo</w>\": 30813,\n  \"casting</w>\": 7087,\n  \"castle\": 12496,\n  \"castle</w>\": 3540,\n  \"castles</w>\": 24766,\n  \"castro</w>\": 16950,\n  \"casts</w>\": 10595,\n  \"casu\": 15345,\n  \"casual</w>\": 10129,\n  \"casually</w>\": 18840,\n  \"casualties</w>\": 30244,\n  \"casualty</w>\": 31222,\n  \"cat\": 1481,\n  \"cat</w>\": 2368,\n  \"cata</w>\": 42279,\n  \"catal\": 12792,\n  \"catalan</w>\": 30532,\n  \"catalina</w>\": 36576,\n  \"catalo\": 34740,\n  \"catalog</w>\": 20036,\n  \"catalogue</w>\": 20985,\n  \"catalonia</w>\": 27039,\n  \"catalunya</w>\": 44132,\n  \"cataly\": 15894,\n  \"catalyst</w>\": 25387,\n  \"catan</w>\": 45893,\n  \"catap\": 39514,\n  \"catar\": 35801,\n  \"catastro\": 22736,\n  \"catastrophe</w>\": 41422,\n  \"catastrophic</w>\": 34448,\n  \"catch\": 18901,\n  \"catch</w>\": 3042,\n  \"catcher</w>\": 15965,\n  \"catchers</w>\": 39060,\n  \"catches</w>\": 17213,\n  \"catching</w>\": 8617,\n  \"catchy</w>\": 37114,\n  \"catday</w>\": 32243,\n  \"cate\": 6357,\n  \"cate</w>\": 24510,\n  \"cated</w>\": 31823,\n  \"categor\": 17006,\n  \"categori\": 40117,\n  \"categories</w>\": 19971,\n  \"category</w>\": 9432,\n  \"cater\": 16634,\n  \"cater</w>\": 38101,\n  \"catering</w>\": 16697,\n  \"caterpillar</w>\": 27111,\n  \"catfish</w>\": 26077,\n  \"cath\": 9196,\n  \"cath</w>\": 30811,\n  \"cathar\": 43784,\n  \"cathe\": 7174,\n  \"cathedr\": 46370,\n  \"cathedral</w>\": 7865,\n  \"catherine\": 35035,\n  \"catherine</w>\": 12339,\n  \"catho\": 7595,\n  \"cathol\": 16315,\n  \"catholic\": 20382,\n  \"catholic</w>\": 7757,\n  \"catholics</w>\": 36808,\n  \"cathy\": 40326,\n  \"cathy</w>\": 22731,\n  \"cation</w>\": 21367,\n  \"cato</w>\": 33558,\n  \"cats\": 38800,\n  \"cats</w>\": 3989,\n  \"catsofinstagram</w>\": 39901,\n  \"catsoftwitter</w>\": 17273,\n  \"catt\": 37339,\n  \"cattle\": 48799,\n  \"cattle</w>\": 13644,\n  \"caturday</w>\": 20892,\n  \"catwalk</w>\": 36565,\n  \"catwoman</w>\": 47251,\n  \"cau\": 1121,\n  \"cau</w>\": 45529,\n  \"caucus</w>\": 18847,\n  \"caught</w>\": 4520,\n  \"caul\": 23460,\n  \"cauley</w>\": 41682,\n  \"caulfield</w>\": 44906,\n  \"cauli\": 20123,\n  \"cauliflower</w>\": 23802,\n  \"cause\": 18982,\n  \"cause</w>\": 1394,\n  \"caused</w>\": 8940,\n  \"causes</w>\": 9775,\n  \"causeway</w>\": 35034,\n  \"causing</w>\": 10779,\n  \"caution</w>\": 15656,\n  \"cautious</w>\": 36579,\n  \"cav\": 4942,\n  \"cav</w>\": 45935,\n  \"cava</w>\": 48682,\n  \"caval\": 24537,\n  \"cavali\": 20783,\n  \"cavalier</w>\": 44488,\n  \"cavaliers</w>\": 30194,\n  \"cavalry</w>\": 32467,\n  \"cave\": 25441,\n  \"cave</w>\": 9654,\n  \"cavendish</w>\": 42945,\n  \"caver\": 41487,\n  \"caves</w>\": 22096,\n  \"cavi\": 27360,\n  \"caviar</w>\": 31228,\n  \"cavill</w>\": 40492,\n  \"cavity</w>\": 43156,\n  \"cavs</w>\": 16800,\n  \"caw\": 38405,\n  \"caw</w>\": 43804,\n  \"cawx</w>\": 26739,\n  \"cay\": 11876,\n  \"cay</w>\": 37399,\n  \"cayenne</w>\": 43650,\n  \"cayman</w>\": 33737,\n  \"caz\": 48451,\n  \"cb\": 4034,\n  \"cb</w>\": 8830,\n  \"cba</w>\": 38472,\n  \"cbb</w>\": 31487,\n  \"cbc\": 14096,\n  \"cbc</w>\": 14523,\n  \"cbd</w>\": 13176,\n  \"cbe</w>\": 43639,\n  \"cbi</w>\": 30875,\n  \"cbj</w>\": 35608,\n  \"cbn</w>\": 26579,\n  \"cbp</w>\": 46723,\n  \"cbr</w>\": 28762,\n  \"cbs\": 16788,\n  \"cbs</w>\": 8009,\n  \"cc\": 2976,\n  \"cc</w>\": 2021,\n  \"cca</w>\": 17987,\n  \"ccc</w>\": 21856,\n  \"ccd</w>\": 48556,\n  \"ccg</w>\": 37755,\n  \"cch\": 21789,\n  \"cchini</w>\": 28467,\n  \"cci\": 32942,\n  \"cci</w>\": 8196,\n  \"ccl</w>\": 43773,\n  \"ccm</w>\": 40435,\n  \"cco</w>\": 28786,\n  \"ccot</w>\": 24950,\n  \"ccp</w>\": 43045,\n  \"ccs</w>\": 30400,\n  \"cctv</w>\": 23097,\n  \"ccu</w>\": 49023,\n  \"cd\": 4308,\n  \"cd</w>\": 4480,\n  \"cda</w>\": 45565,\n  \"cdc\": 41098,\n  \"cdc</w>\": 25779,\n  \"cdn\": 8886,\n  \"cdn</w>\": 26802,\n  \"cdnpoli</w>\": 11645,\n  \"cdo</w>\": 47187,\n  \"cdp</w>\": 39624,\n  \"cds</w>\": 20784,\n  \"cdt</w>\": 18455,\n  \"ce\": 685,\n  \"ce</w>\": 629,\n  \"cea</w>\": 28355,\n  \"cean\": 34409,\n  \"cean</w>\": 37295,\n  \"cease\": 32856,\n  \"cease</w>\": 25499,\n  \"ceasefire</w>\": 38291,\n  \"cebu</w>\": 20146,\n  \"cec\": 29694,\n  \"cec</w>\": 40029,\n  \"cecil\": 26987,\n  \"cecil</w>\": 27169,\n  \"cecilia</w>\": 35440,\n  \"ced\": 25634,\n  \"ced</w>\": 2323,\n  \"cedar\": 24167,\n  \"cedar</w>\": 13799,\n  \"cedric</w>\": 36608,\n  \"cee\": 45966,\n  \"cee</w>\": 15015,\n  \"cees</w>\": 47914,\n  \"ceil\": 27275,\n  \"ceiling</w>\": 12374,\n  \"ceilings</w>\": 33770,\n  \"cek</w>\": 45544,\n  \"cel\": 2269,\n  \"cel</w>\": 7597,\n  \"cele\": 1314,\n  \"celeb\": 38862,\n  \"celeb</w>\": 19393,\n  \"celebr\": 1372,\n  \"celebrate\": 31414,\n  \"celebrate</w>\": 2694,\n  \"celebrated</w>\": 9184,\n  \"celebrates</w>\": 7564,\n  \"celebrating</w>\": 3382,\n  \"celebration</w>\": 4615,\n  \"celebrations</w>\": 10825,\n  \"celebratory</w>\": 34115,\n  \"celebrities</w>\": 17071,\n  \"celebrity\": 23981,\n  \"celebrity</w>\": 7320,\n  \"celebs</w>\": 19803,\n  \"celed</w>\": 25741,\n  \"celer\": 9621,\n  \"celery</w>\": 30990,\n  \"celeste</w>\": 29364,\n  \"celesti\": 29497,\n  \"celestial</w>\": 32669,\n  \"celi\": 25567,\n  \"celia</w>\": 44489,\n  \"celine</w>\": 33644,\n  \"cell\": 9316,\n  \"cell</w>\": 5533,\n  \"cellar</w>\": 24282,\n  \"cellars</w>\": 44976,\n  \"cellence</w>\": 34687,\n  \"cello</w>\": 23013,\n  \"cellphone</w>\": 39029,\n  \"cells</w>\": 8890,\n  \"cellu\": 16791,\n  \"cellular</w>\": 23268,\n  \"cels</w>\": 24021,\n  \"celsius</w>\": 47057,\n  \"celtic\": 21897,\n  \"celtic</w>\": 10523,\n  \"celticfc</w>\": 38612,\n  \"celtics</w>\": 16226,\n  \"cem</w>\": 41435,\n  \"ceme\": 10517,\n  \"cement</w>\": 4369,\n  \"cements</w>\": 19448,\n  \"cemetery</w>\": 11660,\n  \"cen\": 1306,\n  \"cen</w>\": 30106,\n  \"cena</w>\": 21591,\n  \"cence</w>\": 24410,\n  \"cency</w>\": 41259,\n  \"cene</w>\": 30038,\n  \"censor\": 24230,\n  \"censor</w>\": 44709,\n  \"censored</w>\": 30951,\n  \"censorship</w>\": 27284,\n  \"census</w>\": 23677,\n  \"cent\": 1784,\n  \"cent</w>\": 3662,\n  \"centenary</w>\": 22422,\n  \"centennial</w>\": 20895,\n  \"center\": 16651,\n  \"center</w>\": 2119,\n  \"centered</w>\": 24584,\n  \"centers</w>\": 14494,\n  \"centi\": 48889,\n  \"centime\": 48687,\n  \"centr\": 2370,\n  \"central\": 13448,\n  \"central</w>\": 3339,\n  \"centre\": 26310,\n  \"centre</w>\": 2916,\n  \"centred</w>\": 47925,\n  \"centres</w>\": 19354,\n  \"centri\": 30872,\n  \"centric</w>\": 19297,\n  \"centro</w>\": 37178,\n  \"cents</w>\": 11934,\n  \"centu\": 16818,\n  \"centuri\": 36816,\n  \"centuries</w>\": 19014,\n  \"century\": 26134,\n  \"century</w>\": 4275,\n  \"ceo\": 46340,\n  \"ceo</w>\": 3559,\n  \"ceos</w>\": 28332,\n  \"cep\": 2632,\n  \"cep</w>\": 48714,\n  \"ceph\": 44343,\n  \"cept</w>\": 3678,\n  \"ception</w>\": 12346,\n  \"cer\": 1364,\n  \"cer</w>\": 1925,\n  \"cera</w>\": 34608,\n  \"ceram\": 10677,\n  \"ceramic</w>\": 15112,\n  \"ceramics</w>\": 22438,\n  \"cere\": 3984,\n  \"cere</w>\": 22085,\n  \"cereal</w>\": 17581,\n  \"cereals</w>\": 48618,\n  \"cerebral</w>\": 39073,\n  \"ceremon\": 15796,\n  \"ceremonial</w>\": 33281,\n  \"ceremonies</w>\": 21547,\n  \"ceremony</w>\": 5193,\n  \"cern</w>\": 44851,\n  \"cers</w>\": 13638,\n  \"cert</w>\": 27522,\n  \"certain\": 8526,\n  \"certain</w>\": 7883,\n  \"certainly</w>\": 10883,\n  \"certainty</w>\": 20054,\n  \"certi\": 4888,\n  \"certific\": 9443,\n  \"certificate</w>\": 11786,\n  \"certificates</w>\": 25281,\n  \"certification</w>\": 14735,\n  \"certified</w>\": 9288,\n  \"cerv\": 25738,\n  \"cervical</w>\": 35953,\n  \"ces\": 28715,\n  \"ces</w>\": 1604,\n  \"cesar\": 37025,\n  \"cesar</w>\": 28603,\n  \"cess\": 2314,\n  \"cess</w>\": 1554,\n  \"cessna</w>\": 36596,\n  \"cest</w>\": 27245,\n  \"cester\": 15769,\n  \"cester</w>\": 12718,\n  \"cet</w>\": 14960,\n  \"cett</w>\": 46708,\n  \"ceu</w>\": 37457,\n  \"cevic\": 48369,\n  \"cey</w>\": 20971,\n  \"cf\": 10189,\n  \"cf</w>\": 11171,\n  \"cfa</w>\": 34521,\n  \"cfb</w>\": 32931,\n  \"cfc</w>\": 11577,\n  \"cfd</w>\": 46171,\n  \"cfl\": 46320,\n  \"cfl</w>\": 22332,\n  \"cfo</w>\": 26937,\n  \"cfp</w>\": 40756,\n  \"cfr</w>\": 44033,\n  \"cfs</w>\": 32835,\n  \"cg\": 27118,\n  \"cg</w>\": 14740,\n  \"cgc</w>\": 38775,\n  \"cgi</w>\": 30520,\n  \"ch\": 540,\n  \"ch</w>\": 634,\n  \"cha\": 1587,\n  \"cha</w>\": 4541,\n  \"chab\": 26670,\n  \"chad\": 13095,\n  \"chad</w>\": 12923,\n  \"chae\": 9460,\n  \"chaf\": 38123,\n  \"chag\": 27989,\n  \"chai\": 31590,\n  \"chai</w>\": 18919,\n  \"chain\": 13898,\n  \"chain</w>\": 3946,\n  \"chained</w>\": 34402,\n  \"chains</w>\": 14438,\n  \"chainsaw</w>\": 37617,\n  \"chainz</w>\": 39687,\n  \"chair\": 4728,\n  \"chair</w>\": 4269,\n  \"chaired</w>\": 31664,\n  \"chairing</w>\": 42205,\n  \"chairman</w>\": 6901,\n  \"chairperson</w>\": 31584,\n  \"chairs</w>\": 12033,\n  \"chak\": 13702,\n  \"chak</w>\": 41713,\n  \"chakra\": 38304,\n  \"chakra</w>\": 33241,\n  \"chal\": 7397,\n  \"chal</w>\": 30809,\n  \"chale</w>\": 38099,\n  \"chalet</w>\": 37907,\n  \"chalk\": 31362,\n  \"chalk</w>\": 17846,\n  \"chall\": 2073,\n  \"challeng\": 4138,\n  \"challenge\": 29462,\n  \"challenge</w>\": 2836,\n  \"challenged</w>\": 17380,\n  \"challenger</w>\": 18228,\n  \"challengers</w>\": 46404,\n  \"challenges</w>\": 6280,\n  \"challenging</w>\": 11754,\n  \"chalmers</w>\": 47955,\n  \"cham\": 1290,\n  \"cham</w>\": 19951,\n  \"chamber\": 18983,\n  \"chamber</w>\": 7642,\n  \"chamberlain</w>\": 32756,\n  \"chambers</w>\": 16501,\n  \"chamele\": 34759,\n  \"chameleon</w>\": 41317,\n  \"champ\": 36813,\n  \"champ</w>\": 6602,\n  \"champag\": 10283,\n  \"champagne</w>\": 11007,\n  \"champi\": 1680,\n  \"champion\": 2643,\n  \"champion</w>\": 3950,\n  \"champions</w>\": 4227,\n  \"championship</w>\": 3429,\n  \"championships</w>\": 7047,\n  \"championsleague</w>\": 27638,\n  \"champs</w>\": 6240,\n  \"chan\": 1255,\n  \"chan</w>\": 6704,\n  \"chana</w>\": 48752,\n  \"chanc\": 13931,\n  \"chance\": 32940,\n  \"chance</w>\": 2594,\n  \"chancellor</w>\": 15886,\n  \"chances</w>\": 10870,\n  \"chand\": 7126,\n  \"chand</w>\": 41508,\n  \"chandelier</w>\": 30570,\n  \"chandi\": 12482,\n  \"chandigarh</w>\": 34106,\n  \"chandler</w>\": 17595,\n  \"chandra\": 27082,\n  \"chandra</w>\": 25348,\n  \"chanel</w>\": 16951,\n  \"chang\": 2233,\n  \"chang</w>\": 16461,\n  \"change\": 11608,\n  \"change</w>\": 1799,\n  \"changeable</w>\": 41335,\n  \"changed</w>\": 4907,\n  \"changer</w>\": 18406,\n  \"changers</w>\": 35185,\n  \"changes</w>\": 4938,\n  \"changing\": 40384,\n  \"changing</w>\": 5621,\n  \"changmin</w>\": 47410,\n  \"chann\": 8804,\n  \"channel\": 25837,\n  \"channel</w>\": 3847,\n  \"channeling</w>\": 28197,\n  \"channels</w>\": 13961,\n  \"channing</w>\": 37417,\n  \"chant\": 18165,\n  \"chant</w>\": 13521,\n  \"chanting</w>\": 32111,\n  \"chants</w>\": 22723,\n  \"chanyeol</w>\": 18805,\n  \"chao</w>\": 31815,\n  \"chaos</w>\": 10853,\n  \"chaotic</w>\": 33501,\n  \"chap\": 3825,\n  \"chap</w>\": 21939,\n  \"chapel\": 40859,\n  \"chapel</w>\": 10137,\n  \"chaplain</w>\": 38348,\n  \"chaplin</w>\": 32545,\n  \"chapman</w>\": 17968,\n  \"chapp\": 20634,\n  \"chaps</w>\": 36823,\n  \"chapter</w>\": 6014,\n  \"chapters</w>\": 22936,\n  \"char\": 1054,\n  \"char</w>\": 16017,\n  \"chara</w>\": 35668,\n  \"charac\": 2792,\n  \"character\": 10997,\n  \"character</w>\": 4009,\n  \"characterdesign</w>\": 38149,\n  \"characteri\": 20920,\n  \"characteristic</w>\": 44747,\n  \"characteristics</w>\": 26037,\n  \"characters</w>\": 6564,\n  \"charan</w>\": 31851,\n  \"charcoal</w>\": 19268,\n  \"chard</w>\": 17524,\n  \"chardon\": 26599,\n  \"chardonnay</w>\": 28161,\n  \"charge\": 25032,\n  \"charge</w>\": 5948,\n  \"chargeable</w>\": 35664,\n  \"charged</w>\": 7916,\n  \"charger</w>\": 13090,\n  \"chargers</w>\": 17352,\n  \"charges</w>\": 8962,\n  \"charging</w>\": 12514,\n  \"chariot</w>\": 38811,\n  \"charis\": 24449,\n  \"charisma</w>\": 45041,\n  \"charismatic</w>\": 37205,\n  \"charitable</w>\": 23256,\n  \"charities</w>\": 18493,\n  \"charity\": 20008,\n  \"charity</w>\": 4607,\n  \"charitytuesday</w>\": 42794,\n  \"charl\": 47736,\n  \"charle\": 10217,\n  \"charles\": 27983,\n  \"charles</w>\": 5127,\n  \"charleston</w>\": 15478,\n  \"charley</w>\": 38027,\n  \"charli\": 21784,\n  \"charli</w>\": 49392,\n  \"charlie\": 16764,\n  \"charlie</w>\": 6393,\n  \"charlotte\": 18445,\n  \"charlotte</w>\": 7871,\n  \"charlottesville</w>\": 32027,\n  \"charlton</w>\": 27048,\n  \"charm</w>\": 10876,\n  \"charmed</w>\": 39790,\n  \"charming</w>\": 12177,\n  \"charms</w>\": 21944,\n  \"charred</w>\": 44085,\n  \"chart\": 42685,\n  \"chart</w>\": 5053,\n  \"charted</w>\": 27939,\n  \"charter\": 42345,\n  \"charter</w>\": 13569,\n  \"chartered</w>\": 31298,\n  \"charters</w>\": 46626,\n  \"charting</w>\": 39841,\n  \"charts</w>\": 10728,\n  \"chas\": 10717,\n  \"chas</w>\": 29838,\n  \"chase\": 21503,\n  \"chase</w>\": 3859,\n  \"chased</w>\": 30342,\n  \"chaser</w>\": 29560,\n  \"chasers</w>\": 34158,\n  \"chases</w>\": 45011,\n  \"chasing\": 46909,\n  \"chasing</w>\": 13376,\n  \"chassis</w>\": 29188,\n  \"chast\": 42176,\n  \"chasu\": 41352,\n  \"chat\": 5355,\n  \"chat</w>\": 2402,\n  \"chatbots</w>\": 43994,\n  \"chate\": 30377,\n  \"chateau\": 44582,\n  \"chateau</w>\": 23520,\n  \"chath\": 46849,\n  \"chatham</w>\": 32030,\n  \"chats</w>\": 13263,\n  \"chatt\": 21618,\n  \"chattanoo\": 28009,\n  \"chattanooga</w>\": 29866,\n  \"chatted</w>\": 34124,\n  \"chatter\": 33473,\n  \"chatter</w>\": 41103,\n  \"chatting</w>\": 12401,\n  \"chatur\": 33839,\n  \"chau\": 11263,\n  \"chau</w>\": 37536,\n  \"chauffe\": 45440,\n  \"chauhan</w>\": 46663,\n  \"chav\": 28997,\n  \"chavez</w>\": 27480,\n  \"chaw\": 39639,\n  \"chay\": 45317,\n  \"chaz\": 47815,\n  \"chc</w>\": 36233,\n  \"chd</w>\": 41645,\n  \"che\": 983,\n  \"che</w>\": 3842,\n  \"chea</w>\": 39580,\n  \"chead\": 48358,\n  \"cheap\": 27036,\n  \"cheap</w>\": 8678,\n  \"cheape\": 26164,\n  \"cheaper</w>\": 17776,\n  \"cheapest</w>\": 26640,\n  \"cheat</w>\": 18180,\n  \"cheated</w>\": 34285,\n  \"cheating</w>\": 19722,\n  \"chec\": 1113,\n  \"check\": 7672,\n  \"check</w>\": 1217,\n  \"checked</w>\": 10387,\n  \"checker</w>\": 45883,\n  \"checkers</w>\": 48181,\n  \"checking</w>\": 7441,\n  \"checklist</w>\": 26989,\n  \"checkout</w>\": 13101,\n  \"checkpoint</w>\": 27531,\n  \"checks</w>\": 13737,\n  \"ched\": 11341,\n  \"ched</w>\": 2146,\n  \"cheddar</w>\": 20551,\n  \"chee\": 5326,\n  \"chee</w>\": 20944,\n  \"cheek\": 40000,\n  \"cheek</w>\": 21227,\n  \"cheeks</w>\": 23019,\n  \"cheeky</w>\": 15068,\n  \"cheer\": 9733,\n  \"cheer</w>\": 6918,\n  \"cheered</w>\": 38111,\n  \"cheerful</w>\": 28882,\n  \"cheering</w>\": 14289,\n  \"cheerleader</w>\": 29072,\n  \"cheerleaders</w>\": 22343,\n  \"cheerleading</w>\": 36366,\n  \"cheers</w>\": 6562,\n  \"chees\": 15182,\n  \"cheese\": 10738,\n  \"cheese</w>\": 4108,\n  \"cheeseburger</w>\": 41200,\n  \"cheesecake</w>\": 17803,\n  \"cheeses</w>\": 36076,\n  \"cheesy</w>\": 22093,\n  \"cheetah</w>\": 27431,\n  \"chef\": 12137,\n  \"chef</w>\": 4895,\n  \"chefs</w>\": 14486,\n  \"chek</w>\": 43745,\n  \"chel\": 3084,\n  \"chel</w>\": 25970,\n  \"chell</w>\": 46854,\n  \"chelle</w>\": 30141,\n  \"chelms\": 34936,\n  \"chelmsford</w>\": 39890,\n  \"chelse\": 19071,\n  \"chelsea</w>\": 6031,\n  \"chelseafc</w>\": 25927,\n  \"chelten\": 18889,\n  \"cheltenham</w>\": 21589,\n  \"chem\": 5667,\n  \"chem</w>\": 13698,\n  \"chemi\": 7179,\n  \"chemical\": 39376,\n  \"chemical</w>\": 9208,\n  \"chemicals</w>\": 17426,\n  \"chemist</w>\": 23138,\n  \"chemistry</w>\": 8841,\n  \"chemo\": 33095,\n  \"chemo</w>\": 36348,\n  \"chemotherapy</w>\": 41412,\n  \"chemtrails</w>\": 46015,\n  \"chen\": 5907,\n  \"chen</w>\": 8983,\n  \"cheney</w>\": 43522,\n  \"cheng\": 32512,\n  \"cheng</w>\": 30190,\n  \"chenko</w>\": 29073,\n  \"chennai\": 28948,\n  \"chennai</w>\": 12791,\n  \"cheon</w>\": 11498,\n  \"cheque</w>\": 28168,\n  \"cher\": 3597,\n  \"cher</w>\": 3466,\n  \"cheri\": 26471,\n  \"cherish</w>\": 20053,\n  \"cherished</w>\": 42325,\n  \"cherno\": 35376,\n  \"chernobyl</w>\": 40554,\n  \"chero\": 19844,\n  \"cherokee</w>\": 22860,\n  \"cherries</w>\": 27248,\n  \"cherry\": 21470,\n  \"cherry</w>\": 7325,\n  \"chers</w>\": 5789,\n  \"chery</w>\": 38478,\n  \"cheryl\": 37784,\n  \"cheryl</w>\": 20600,\n  \"ches\": 18346,\n  \"ches</w>\": 1910,\n  \"chesa\": 28349,\n  \"chesapeake</w>\": 32909,\n  \"cheshire</w>\": 17130,\n  \"chesney</w>\": 48747,\n  \"chess\": 27170,\n  \"chess</w>\": 8397,\n  \"chest\": 18217,\n  \"chest</w>\": 10563,\n  \"chester\": 10466,\n  \"chester</w>\": 3343,\n  \"chesterfield</w>\": 32975,\n  \"chestnut</w>\": 21834,\n  \"chet</w>\": 9663,\n  \"chett</w>\": 24695,\n  \"chev\": 7152,\n  \"chev</w>\": 41145,\n  \"chevro\": 12850,\n  \"chevrolet</w>\": 13240,\n  \"chevron</w>\": 33792,\n  \"chevy</w>\": 16581,\n  \"chew\": 32645,\n  \"chew</w>\": 22642,\n  \"chewan</w>\": 23689,\n  \"chewbacca</w>\": 49355,\n  \"chewing</w>\": 31486,\n  \"chewy</w>\": 42940,\n  \"chey\": 26968,\n  \"chey</w>\": 31208,\n  \"cheyenne</w>\": 34805,\n  \"chez\": 49183,\n  \"chez</w>\": 10556,\n  \"chf</w>\": 33021,\n  \"chfield</w>\": 41619,\n  \"chhat\": 34127,\n  \"chhattisgarh</w>\": 44246,\n  \"chi\": 1337,\n  \"chi</w>\": 4039,\n  \"chia</w>\": 19147,\n  \"chiang</w>\": 33764,\n  \"chibi</w>\": 22306,\n  \"chic\": 2627,\n  \"chic</w>\": 9091,\n  \"chica</w>\": 44190,\n  \"chicag\": 16778,\n  \"chicago\": 15038,\n  \"chicago</w>\": 3530,\n  \"chicagof\": 40638,\n  \"chicagofire</w>\": 46576,\n  \"chicas</w>\": 40664,\n  \"chichester</w>\": 43823,\n  \"chick\": 3170,\n  \"chick</w>\": 11238,\n  \"chicken\": 26322,\n  \"chicken</w>\": 3717,\n  \"chickens</w>\": 21658,\n  \"chickpea</w>\": 48109,\n  \"chicks</w>\": 17810,\n  \"chico</w>\": 30379,\n  \"chie\": 40046,\n  \"chie</w>\": 12388,\n  \"chief\": 16830,\n  \"chief</w>\": 3455,\n  \"chiefs</w>\": 11419,\n  \"chiev\": 47761,\n  \"chiff\": 27407,\n  \"chiffon</w>\": 31817,\n  \"chig\": 42952,\n  \"chihu\": 22857,\n  \"chihuahu\": 25437,\n  \"chihuahua</w>\": 30181,\n  \"chik</w>\": 45455,\n  \"chil\": 1333,\n  \"child\": 4392,\n  \"child</w>\": 2913,\n  \"childcare</w>\": 31133,\n  \"childhood\": 34772,\n  \"childhood</w>\": 7551,\n  \"childish</w>\": 31939,\n  \"childre\": 2135,\n  \"children\": 11101,\n  \"children</w>\": 2153,\n  \"childrens\": 31551,\n  \"childrens</w>\": 21553,\n  \"childs</w>\": 39521,\n  \"chile</w>\": 10022,\n  \"chilean</w>\": 33186,\n  \"chili</w>\": 13033,\n  \"chill\": 6498,\n  \"chill</w>\": 6382,\n  \"chilled</w>\": 23540,\n  \"chillen</w>\": 45160,\n  \"chilli\": 26787,\n  \"chilli</w>\": 17067,\n  \"chillin</w>\": 10347,\n  \"chilling</w>\": 10179,\n  \"chillout</w>\": 39842,\n  \"chills</w>\": 25460,\n  \"chilly</w>\": 14450,\n  \"chim\": 10543,\n  \"chimney</w>\": 26821,\n  \"chimp</w>\": 44374,\n  \"chin\": 6555,\n  \"chin</w>\": 8979,\n  \"china\": 38943,\n  \"china</w>\": 2817,\n  \"chinatown</w>\": 28582,\n  \"chine\": 4013,\n  \"chinese\": 30568,\n  \"chinese</w>\": 4271,\n  \"ching\": 34621,\n  \"ching</w>\": 1439,\n  \"chino\": 47181,\n  \"chino</w>\": 27440,\n  \"chinook</w>\": 41577,\n  \"chinson</w>\": 33786,\n  \"chio</w>\": 19650,\n  \"chip\": 19271,\n  \"chip</w>\": 8730,\n  \"chipmun\": 46384,\n  \"chipot\": 17702,\n  \"chipotle</w>\": 19284,\n  \"chipp\": 39854,\n  \"chippe\": 46541,\n  \"chipped</w>\": 39892,\n  \"chipping</w>\": 40323,\n  \"chips</w>\": 8855,\n  \"chir\": 15564,\n  \"chiro\": 23413,\n  \"chiroprac\": 25987,\n  \"chiropractic</w>\": 34437,\n  \"chis\": 19920,\n  \"chistan</w>\": 20523,\n  \"chiswick</w>\": 47290,\n  \"chit\": 13515,\n  \"chit</w>\": 45626,\n  \"chita</w>\": 49184,\n  \"chitec\": 39862,\n  \"chive</w>\": 29222,\n  \"chives</w>\": 34921,\n  \"chk</w>\": 47424,\n  \"chl</w>\": 38592,\n  \"chley</w>\": 47748,\n  \"chlo\": 10374,\n  \"chloe\": 39966,\n  \"chloe</w>\": 13992,\n  \"chlor\": 23135,\n  \"chman</w>\": 35835,\n  \"chment</w>\": 20848,\n  \"chner</w>\": 48277,\n  \"cho\": 1327,\n  \"cho</w>\": 5150,\n  \"choa</w>\": 43077,\n  \"choc\": 32772,\n  \"choc</w>\": 21983,\n  \"choco\": 46285,\n  \"choco</w>\": 32692,\n  \"chocol\": 3443,\n  \"chocolat</w>\": 44631,\n  \"chocolate\": 29389,\n  \"chocolate</w>\": 3820,\n  \"chocolates</w>\": 24120,\n  \"choi</w>\": 23749,\n  \"choic\": 35606,\n  \"choice\": 23857,\n  \"choice</w>\": 4051,\n  \"choices</w>\": 11016,\n  \"choir</w>\": 9214,\n  \"choirs</w>\": 43277,\n  \"choke</w>\": 30231,\n  \"choked</w>\": 43521,\n  \"choker</w>\": 39642,\n  \"choking</w>\": 39993,\n  \"chol\": 19802,\n  \"cholera</w>\": 45999,\n  \"cholester\": 26861,\n  \"cholesterol</w>\": 27982,\n  \"chom\": 25151,\n  \"chon\": 20416,\n  \"chon</w>\": 21601,\n  \"chondri\": 37379,\n  \"chong</w>\": 26220,\n  \"choo\": 3869,\n  \"choo</w>\": 24437,\n  \"chool</w>\": 29578,\n  \"chools</w>\": 41958,\n  \"choose\": 22756,\n  \"choose</w>\": 5073,\n  \"chooses</w>\": 29923,\n  \"choosing</w>\": 13475,\n  \"chop\": 10458,\n  \"chop</w>\": 16663,\n  \"chopin</w>\": 42256,\n  \"chopped</w>\": 22580,\n  \"chopper</w>\": 24011,\n  \"chopping</w>\": 35375,\n  \"chopra</w>\": 24258,\n  \"chops</w>\": 26321,\n  \"chor\": 7567,\n  \"chor</w>\": 47795,\n  \"choral</w>\": 26684,\n  \"chord</w>\": 33005,\n  \"chords</w>\": 36152,\n  \"choreo\": 17443,\n  \"choreographer</w>\": 35952,\n  \"choreography</w>\": 32749,\n  \"chores</w>\": 40483,\n  \"chori\": 25718,\n  \"chorizo</w>\": 30802,\n  \"chorus</w>\": 20869,\n  \"chos</w>\": 26559,\n  \"chose</w>\": 11090,\n  \"chosen</w>\": 10044,\n  \"chou\": 16960,\n  \"chou</w>\": 42917,\n  \"choudhary</w>\": 45503,\n  \"chow\": 20257,\n  \"chow</w>\": 21657,\n  \"chowder</w>\": 37886,\n  \"chp</w>\": 35896,\n  \"chr</w>\": 36918,\n  \"chri\": 1135,\n  \"chris\": 9907,\n  \"chris</w>\": 2978,\n  \"chrisbrown</w>\": 41035,\n  \"chriss\": 46745,\n  \"chrissy\": 44762,\n  \"chrissy</w>\": 40485,\n  \"christ\": 1403,\n  \"christ</w>\": 6703,\n  \"christchurch</w>\": 27100,\n  \"christen\": 31956,\n  \"christensen</w>\": 42226,\n  \"christi\": 3328,\n  \"christi</w>\": 33213,\n  \"christian\": 11792,\n  \"christian</w>\": 4729,\n  \"christianity</w>\": 20000,\n  \"christians</w>\": 14842,\n  \"christie</w>\": 16084,\n  \"christin\": 30189,\n  \"christina</w>\": 15925,\n  \"christine\": 42610,\n  \"christine</w>\": 14712,\n  \"christma\": 12039,\n  \"christmas\": 18174,\n  \"christmas</w>\": 1677,\n  \"christmaseve</w>\": 44381,\n  \"christmass\": 44873,\n  \"christop\": 7917,\n  \"christoph</w>\": 47844,\n  \"christophe</w>\": 45486,\n  \"christopher\": 33349,\n  \"christopher</w>\": 9630,\n  \"christy</w>\": 28331,\n  \"chro\": 13207,\n  \"chromatic</w>\": 44207,\n  \"chrome\": 24843,\n  \"chrome</w>\": 9529,\n  \"chromo\": 35809,\n  \"chron\": 5577,\n  \"chron</w>\": 39781,\n  \"chronic\": 10115,\n  \"chronic</w>\": 13677,\n  \"chronicle</w>\": 20034,\n  \"chronicles</w>\": 18905,\n  \"chrono\": 29387,\n  \"chronograph</w>\": 38397,\n  \"chry\": 13508,\n  \"chrysler</w>\": 20078,\n  \"chs\": 40277,\n  \"chs</w>\": 8391,\n  \"chsnews</w>\": 44919,\n  \"cht</w>\": 11384,\n  \"chter</w>\": 47811,\n  \"chu\": 3799,\n  \"chu</w>\": 13622,\n  \"chubby</w>\": 29109,\n  \"chuck\": 13211,\n  \"chuck</w>\": 9894,\n  \"chuckle</w>\": 35733,\n  \"chucky</w>\": 42026,\n  \"chuffed</w>\": 27233,\n  \"chuk\": 25878,\n  \"chuk</w>\": 27221,\n  \"chul</w>\": 33001,\n  \"chum\": 46869,\n  \"chum</w>\": 41767,\n  \"chun\": 14693,\n  \"chun</w>\": 25391,\n  \"chung</w>\": 28418,\n  \"chunk</w>\": 30275,\n  \"chunks</w>\": 45538,\n  \"chunky</w>\": 27978,\n  \"chups</w>\": 46331,\n  \"chur\": 2309,\n  \"church\": 14956,\n  \"church</w>\": 2735,\n  \"churches</w>\": 15539,\n  \"churchill</w>\": 17527,\n  \"chus</w>\": 36246,\n  \"chut\": 28788,\n  \"chutney</w>\": 36261,\n  \"chy\": 15131,\n  \"chy</w>\": 8096,\n  \"chyna</w>\": 43398,\n  \"chÃ¢\": 48669,\n  \"ci\": 698,\n  \"ci</w>\": 5798,\n  \"cia</w>\": 4019,\n  \"cial</w>\": 1143,\n  \"cian</w>\": 32323,\n  \"ciao</w>\": 37677,\n  \"ciara</w>\": 31369,\n  \"cible</w>\": 28873,\n  \"cic\": 14539,\n  \"cic</w>\": 21517,\n  \"cid</w>\": 27359,\n  \"cide</w>\": 34178,\n  \"cider</w>\": 13547,\n  \"cides</w>\": 41326,\n  \"cie</w>\": 19730,\n  \"cier\": 24067,\n  \"cies</w>\": 6785,\n  \"cif</w>\": 35698,\n  \"cigar\": 26031,\n  \"cigar</w>\": 16525,\n  \"cigare\": 13044,\n  \"cigarette</w>\": 18548,\n  \"cigarettes</w>\": 22750,\n  \"cigars</w>\": 20750,\n  \"cii</w>\": 42408,\n  \"cil\": 9217,\n  \"cil</w>\": 2998,\n  \"cilan\": 33998,\n  \"cilantro</w>\": 34568,\n  \"cili\": 18977,\n  \"ciliation</w>\": 25294,\n  \"cim</w>\": 30021,\n  \"cin\": 2396,\n  \"cin</w>\": 25367,\n  \"cina</w>\": 39467,\n  \"cincin\": 13291,\n  \"cincinnati</w>\": 14197,\n  \"cinco</w>\": 25131,\n  \"cincode\": 40930,\n  \"cincodemayo</w>\": 42542,\n  \"cincy\": 30015,\n  \"cincy</w>\": 30286,\n  \"cinde\": 20660,\n  \"cinderella</w>\": 21515,\n  \"cindy\": 34439,\n  \"cindy</w>\": 18532,\n  \"cine\": 4015,\n  \"cine</w>\": 27451,\n  \"cinema\": 38251,\n  \"cinema</w>\": 6443,\n  \"cinemas</w>\": 14845,\n  \"cinematic</w>\": 25602,\n  \"cinemato\": 21919,\n  \"cinematographer</w>\": 39059,\n  \"cinematography</w>\": 33802,\n  \"ciner\": 39882,\n  \"cing</w>\": 4014,\n  \"cini</w>\": 25699,\n  \"cinnam\": 12768,\n  \"cinnamon</w>\": 13460,\n  \"cino</w>\": 18616,\n  \"cio\": 44584,\n  \"cio</w>\": 9954,\n  \"cion</w>\": 22024,\n  \"ciones</w>\": 37155,\n  \"cious</w>\": 38466,\n  \"cip\": 32884,\n  \"cir\": 2459,\n  \"cir</w>\": 41135,\n  \"circa</w>\": 10411,\n  \"circle\": 33574,\n  \"circle</w>\": 7117,\n  \"circles</w>\": 19411,\n  \"circling</w>\": 46036,\n  \"circu\": 5143,\n  \"circuit\": 35583,\n  \"circuit</w>\": 9801,\n  \"circuits</w>\": 33260,\n  \"circul\": 16618,\n  \"circular</w>\": 19733,\n  \"circulare\": 39525,\n  \"circulareconomy</w>\": 39878,\n  \"circulated</w>\": 46258,\n  \"circulating</w>\": 42980,\n  \"circulation</w>\": 27880,\n  \"circum\": 13406,\n  \"circumstances</w>\": 18786,\n  \"circus</w>\": 11833,\n  \"cirque</w>\": 36049,\n  \"cis\": 9459,\n  \"cis</w>\": 23513,\n  \"cisco\": 36689,\n  \"cisco</w>\": 19290,\n  \"cise</w>\": 19657,\n  \"cisely</w>\": 33434,\n  \"cision</w>\": 41957,\n  \"cism</w>\": 24166,\n  \"cist</w>\": 40906,\n  \"cit\": 4420,\n  \"cit</w>\": 31294,\n  \"citadel</w>\": 38036,\n  \"citation</w>\": 33581,\n  \"cite</w>\": 32641,\n  \"cited</w>\": 25069,\n  \"cites</w>\": 34490,\n  \"citi\": 4280,\n  \"citi</w>\": 30270,\n  \"cities</w>\": 5441,\n  \"citing</w>\": 29088,\n  \"citiz\": 5816,\n  \"citizen\": 11720,\n  \"citizen</w>\": 9814,\n  \"citizens</w>\": 7949,\n  \"citizenship</w>\": 17386,\n  \"cito</w>\": 42636,\n  \"citro\": 27941,\n  \"citroen</w>\": 35805,\n  \"citrus</w>\": 17379,\n  \"city\": 5002,\n  \"city</w>\": 1305,\n  \"cityfc</w>\": 28751,\n  \"cityo\": 25709,\n  \"cityof\": 11595,\n  \"cityscape</w>\": 40808,\n  \"ciu\": 39693,\n  \"cius</w>\": 42559,\n  \"civ\": 40039,\n  \"civic\": 32240,\n  \"civic</w>\": 11888,\n  \"civil\": 6923,\n  \"civil</w>\": 6450,\n  \"civilian</w>\": 21187,\n  \"civilians</w>\": 18076,\n  \"civilization</w>\": 22503,\n  \"civilwar</w>\": 34524,\n  \"ciÃ³n</w>\": 44700,\n  \"cj\": 15238,\n  \"cj</w>\": 15205,\n  \"ck\": 916,\n  \"ck</w>\": 868,\n  \"cke\": 25224,\n  \"cke</w>\": 40989,\n  \"cked</w>\": 3441,\n  \"cken\": 25566,\n  \"cker\": 15509,\n  \"cker</w>\": 4744,\n  \"ckers</w>\": 37073,\n  \"cket</w>\": 5525,\n  \"ckett</w>\": 33899,\n  \"ckey\": 15029,\n  \"ckey</w>\": 3657,\n  \"cki\": 36916,\n  \"cki</w>\": 41055,\n  \"cking</w>\": 4805,\n  \"cko</w>\": 28818,\n  \"cks</w>\": 2031,\n  \"cky\": 26229,\n  \"cky</w>\": 3083,\n  \"cl\": 969,\n  \"cl</w>\": 6482,\n  \"cla\": 940,\n  \"cla</w>\": 20636,\n  \"clad</w>\": 31606,\n  \"cladding</w>\": 46411,\n  \"clai\": 29459,\n  \"claim\": 4290,\n  \"claim</w>\": 6607,\n  \"claimed</w>\": 9010,\n  \"claiming</w>\": 15286,\n  \"claims</w>\": 6852,\n  \"clair\": 31441,\n  \"clair</w>\": 14039,\n  \"claire\": 20410,\n  \"claire</w>\": 10460,\n  \"clam\": 13588,\n  \"clam</w>\": 32598,\n  \"clamation</w>\": 21793,\n  \"clamp</w>\": 41501,\n  \"clams</w>\": 38849,\n  \"clan\": 29252,\n  \"clan</w>\": 14114,\n  \"clancy</w>\": 37227,\n  \"clans</w>\": 38279,\n  \"clap\": 30037,\n  \"clap</w>\": 25546,\n  \"clapham</w>\": 43619,\n  \"clapton</w>\": 37683,\n  \"clar\": 3617,\n  \"clara</w>\": 19468,\n  \"clare\": 18948,\n  \"clare</w>\": 15927,\n  \"claremont</w>\": 47789,\n  \"clarence</w>\": 29320,\n  \"clari\": 15175,\n  \"clarify</w>\": 37004,\n  \"clarinet</w>\": 41178,\n  \"clarity</w>\": 21323,\n  \"clark\": 13340,\n  \"clark</w>\": 7521,\n  \"clarke</w>\": 11548,\n  \"clarkson</w>\": 25706,\n  \"clas\": 32003,\n  \"clash\": 38367,\n  \"clash</w>\": 9359,\n  \"clashes</w>\": 25193,\n  \"clasico</w>\": 43567,\n  \"class\": 2876,\n  \"class</w>\": 1874,\n  \"classes</w>\": 6919,\n  \"classi\": 2507,\n  \"classic\": 9353,\n  \"classic</w>\": 2713,\n  \"classical\": 22179,\n  \"classical</w>\": 11355,\n  \"classicalmusic</w>\": 27806,\n  \"classiccar</w>\": 46906,\n  \"classiccars</w>\": 21064,\n  \"classics</w>\": 10634,\n  \"classification</w>\": 26612,\n  \"classified</w>\": 22056,\n  \"classmate</w>\": 37090,\n  \"classmates</w>\": 30062,\n  \"classof</w>\": 25345,\n  \"classroom</w>\": 9001,\n  \"classrooms</w>\": 25768,\n  \"classy</w>\": 11615,\n  \"clau\": 7526,\n  \"claude</w>\": 17461,\n  \"claudi\": 39439,\n  \"claudia</w>\": 21893,\n  \"claudio</w>\": 31230,\n  \"claus</w>\": 23317,\n  \"clause</w>\": 26151,\n  \"clave</w>\": 24111,\n  \"claw\": 49230,\n  \"claw</w>\": 19106,\n  \"claws</w>\": 29161,\n  \"clay\": 10402,\n  \"clay</w>\": 8823,\n  \"clays</w>\": 26128,\n  \"clayton\": 46445,\n  \"clayton</w>\": 19413,\n  \"clc</w>\": 31380,\n  \"cle\": 1321,\n  \"cle</w>\": 2537,\n  \"clean\": 3572,\n  \"clean</w>\": 3772,\n  \"cleaned</w>\": 17468,\n  \"cleanenergy</w>\": 43538,\n  \"cleaner</w>\": 15619,\n  \"cleaners</w>\": 33258,\n  \"cleaning</w>\": 7210,\n  \"cleanliness</w>\": 47886,\n  \"cleans</w>\": 40827,\n  \"cleanse</w>\": 28717,\n  \"cleanser</w>\": 44170,\n  \"cleansing</w>\": 25931,\n  \"cleanup</w>\": 22353,\n  \"clear\": 4631,\n  \"clear</w>\": 3143,\n  \"clearance</w>\": 17959,\n  \"cleared</w>\": 14880,\n  \"clearer</w>\": 37031,\n  \"clearing</w>\": 15481,\n  \"clearly</w>\": 7767,\n  \"clears</w>\": 29092,\n  \"clearwater</w>\": 32124,\n  \"cleary</w>\": 44342,\n  \"cleats</w>\": 33486,\n  \"cleavage</w>\": 44165,\n  \"cled</w>\": 12827,\n  \"clegg</w>\": 42915,\n  \"clemens</w>\": 45896,\n  \"clement\": 22592,\n  \"clement</w>\": 24714,\n  \"clemente</w>\": 42461,\n  \"clementine</w>\": 47112,\n  \"clements</w>\": 49175,\n  \"clemson\": 38170,\n  \"clemson</w>\": 19537,\n  \"clen\": 35547,\n  \"cleo</w>\": 40344,\n  \"cleop\": 36287,\n  \"cleopatra</w>\": 41212,\n  \"cler\": 11828,\n  \"clergy</w>\": 42635,\n  \"cleric</w>\": 43748,\n  \"clerk</w>\": 22230,\n  \"clermont</w>\": 47529,\n  \"cles</w>\": 8077,\n  \"cleve\": 37599,\n  \"clevel\": 7701,\n  \"cleveland\": 30716,\n  \"cleveland</w>\": 8430,\n  \"clever\": 30977,\n  \"clever</w>\": 13385,\n  \"clg</w>\": 47546,\n  \"cli\": 1503,\n  \"clich\": 44407,\n  \"click\": 16676,\n  \"click</w>\": 3585,\n  \"clicked</w>\": 29015,\n  \"clicking</w>\": 26542,\n  \"clicks</w>\": 31250,\n  \"client\": 48528,\n  \"client</w>\": 7467,\n  \"clients</w>\": 8114,\n  \"clif\": 13182,\n  \"cliff\": 23827,\n  \"cliff</w>\": 10625,\n  \"cliffe</w>\": 15170,\n  \"clifford</w>\": 24226,\n  \"cliffs</w>\": 20953,\n  \"clifton</w>\": 23878,\n  \"climat\": 37283,\n  \"climate\": 7854,\n  \"climate</w>\": 4589,\n  \"climateaction</w>\": 31622,\n  \"climatechange</w>\": 11055,\n  \"climates</w>\": 46022,\n  \"climax</w>\": 37033,\n  \"climb\": 7421,\n  \"climb</w>\": 10649,\n  \"climbed</w>\": 22528,\n  \"climber</w>\": 36910,\n  \"climbers</w>\": 47648,\n  \"climbing</w>\": 9877,\n  \"climbs</w>\": 29098,\n  \"clin\": 2879,\n  \"clinch</w>\": 30404,\n  \"clinched</w>\": 44064,\n  \"cline</w>\": 37460,\n  \"cling\": 37068,\n  \"cling</w>\": 4760,\n  \"clinic</w>\": 7926,\n  \"clinical\": 35133,\n  \"clinical</w>\": 9148,\n  \"clinicians</w>\": 45866,\n  \"clinics</w>\": 23330,\n  \"clint\": 37542,\n  \"clint</w>\": 21160,\n  \"clinton\": 34403,\n  \"clinton</w>\": 5820,\n  \"clio</w>\": 46889,\n  \"clip\": 39712,\n  \"clip</w>\": 9289,\n  \"clipped</w>\": 45524,\n  \"clipper</w>\": 42245,\n  \"clippers</w>\": 23319,\n  \"clipping</w>\": 47484,\n  \"clips</w>\": 16594,\n  \"clique</w>\": 34983,\n  \"clive\": 36086,\n  \"clive</w>\": 21509,\n  \"cll\": 46091,\n  \"cllr\": 45743,\n  \"cllr</w>\": 23034,\n  \"clo\": 1194,\n  \"cloak</w>\": 36528,\n  \"clock\": 19878,\n  \"clock</w>\": 6716,\n  \"clocked</w>\": 49049,\n  \"clocks</w>\": 25895,\n  \"clockwise</w>\": 46150,\n  \"clockwork</w>\": 42297,\n  \"clon\": 24477,\n  \"clone</w>\": 22854,\n  \"clones</w>\": 48047,\n  \"clooney</w>\": 33161,\n  \"clos</w>\": 48821,\n  \"close\": 10603,\n  \"close</w>\": 2660,\n  \"closed</w>\": 4552,\n  \"closely</w>\": 13478,\n  \"closer</w>\": 6377,\n  \"closes</w>\": 11354,\n  \"closest</w>\": 14975,\n  \"closet</w>\": 14221,\n  \"closeup</w>\": 35439,\n  \"closing</w>\": 7101,\n  \"closure</w>\": 13249,\n  \"closures</w>\": 22923,\n  \"cloth</w>\": 14559,\n  \"clothes</w>\": 7080,\n  \"clothing</w>\": 7425,\n  \"clou\": 4069,\n  \"cloud\": 12965,\n  \"cloud</w>\": 3887,\n  \"cloudcomputing</w>\": 41390,\n  \"clouds</w>\": 6244,\n  \"cloudy</w>\": 13106,\n  \"clough</w>\": 42909,\n  \"clover\": 39574,\n  \"clover</w>\": 22812,\n  \"clow\": 18386,\n  \"clown</w>\": 15329,\n  \"clowns</w>\": 30820,\n  \"cls</w>\": 44251,\n  \"clt\": 29651,\n  \"clt</w>\": 24236,\n  \"clu\": 996,\n  \"club\": 9642,\n  \"club</w>\": 1736,\n  \"clubbing</w>\": 48128,\n  \"clubhouse</w>\": 26553,\n  \"clubs</w>\": 9437,\n  \"clue</w>\": 14994,\n  \"clueless</w>\": 35350,\n  \"clues</w>\": 23764,\n  \"clusive</w>\": 41362,\n  \"cluster</w>\": 15595,\n  \"clusters</w>\": 33217,\n  \"clut\": 28507,\n  \"clutch</w>\": 13953,\n  \"clutter</w>\": 40804,\n  \"cly\": 12037,\n  \"clyde\": 39557,\n  \"clyde</w>\": 18469,\n  \"cm\": 10190,\n  \"cm</w>\": 3741,\n  \"cma\": 30554,\n  \"cma</w>\": 31388,\n  \"cmc</w>\": 45839,\n  \"cmdr</w>\": 48250,\n  \"cme</w>\": 34946,\n  \"cmo</w>\": 24589,\n  \"cmon</w>\": 42904,\n  \"cmp\": 46355,\n  \"cms</w>\": 22520,\n  \"cmt</w>\": 42727,\n  \"cmu</w>\": 43046,\n  \"cn\": 3886,\n  \"cn</w>\": 16200,\n  \"cna</w>\": 48287,\n  \"cnbc\": 41242,\n  \"cnbc</w>\": 24371,\n  \"cnblue</w>\": 36018,\n  \"cnc</w>\": 20571,\n  \"cnet</w>\": 47487,\n  \"cnews</w>\": 24319,\n  \"cng</w>\": 41496,\n  \"cnn\": 22405,\n  \"cnn</w>\": 8259,\n  \"cns</w>\": 46095,\n  \"cny</w>\": 31614,\n  \"co\": 622,\n  \"co</w>\": 1320,\n  \"coa</w>\": 29167,\n  \"coach\": 3275,\n  \"coach</w>\": 2312,\n  \"coached</w>\": 30228,\n  \"coachella</w>\": 20222,\n  \"coaches</w>\": 6924,\n  \"coaching</w>\": 7766,\n  \"coal\": 10227,\n  \"coal</w>\": 7919,\n  \"coalition</w>\": 12920,\n  \"coast\": 6398,\n  \"coast</w>\": 3720,\n  \"coastal\": 38246,\n  \"coastal</w>\": 10852,\n  \"coaster</w>\": 15944,\n  \"coasters</w>\": 31548,\n  \"coastguard</w>\": 40601,\n  \"coastline</w>\": 27959,\n  \"coasts</w>\": 42225,\n  \"coat\": 28869,\n  \"coat</w>\": 7356,\n  \"coated</w>\": 23401,\n  \"coates</w>\": 36899,\n  \"coating</w>\": 25369,\n  \"coatings</w>\": 48706,\n  \"coats</w>\": 18075,\n  \"cob\": 20140,\n  \"cob</w>\": 32863,\n  \"cobain</w>\": 36866,\n  \"cobalt</w>\": 30896,\n  \"cobb</w>\": 22719,\n  \"cobble\": 47894,\n  \"cobra</w>\": 21574,\n  \"coc\": 23036,\n  \"coc</w>\": 39498,\n  \"coca</w>\": 21197,\n  \"cocac\": 26393,\n  \"cocacola</w>\": 31248,\n  \"cocaine</w>\": 20534,\n  \"coch\": 18599,\n  \"cochran</w>\": 48798,\n  \"cochrane</w>\": 41752,\n  \"coco\": 11850,\n  \"coco</w>\": 13316,\n  \"cocoa</w>\": 18074,\n  \"cocon\": 8597,\n  \"coconut</w>\": 9581,\n  \"cod\": 16132,\n  \"cod</w>\": 11915,\n  \"code\": 11582,\n  \"code</w>\": 3217,\n  \"coded</w>\": 33703,\n  \"coden\": 43914,\n  \"coder</w>\": 41561,\n  \"codes</w>\": 14566,\n  \"codi\": 39711,\n  \"coding</w>\": 12647,\n  \"cody\": 23222,\n  \"cody</w>\": 12666,\n  \"coe</w>\": 15386,\n  \"coed</w>\": 41028,\n  \"coel\": 45633,\n  \"coer\": 41198,\n  \"coeur</w>\": 44986,\n  \"coffe\": 2255,\n  \"coffee\": 12898,\n  \"coffee</w>\": 2453,\n  \"coffees</w>\": 41184,\n  \"coffey</w>\": 48066,\n  \"cofficial</w>\": 18757,\n  \"coffin</w>\": 29907,\n  \"cog\": 26362,\n  \"cog</w>\": 35960,\n  \"cogn\": 12210,\n  \"cognac</w>\": 44361,\n  \"cognition</w>\": 46825,\n  \"cognitive</w>\": 16584,\n  \"cohe\": 20669,\n  \"cohen</w>\": 13381,\n  \"coherent</w>\": 48450,\n  \"cohort</w>\": 22782,\n  \"coil</w>\": 25307,\n  \"coim\": 41528,\n  \"coin\": 14651,\n  \"coin</w>\": 4170,\n  \"coinci\": 14015,\n  \"coincidence</w>\": 19807,\n  \"coins</w>\": 10530,\n  \"coke\": 39602,\n  \"coke</w>\": 14035,\n  \"col\": 754,\n  \"col</w>\": 9371,\n  \"cola</w>\": 15444,\n  \"colbert</w>\": 31647,\n  \"colby</w>\": 32068,\n  \"colchester</w>\": 31715,\n  \"cold\": 11146,\n  \"cold</w>\": 3153,\n  \"colder</w>\": 23859,\n  \"coldest</w>\": 31438,\n  \"coldplay</w>\": 27770,\n  \"cole\": 9305,\n  \"cole</w>\": 8166,\n  \"coleman</w>\": 15774,\n  \"coles\": 40265,\n  \"coles</w>\": 30398,\n  \"coli\": 18877,\n  \"coli</w>\": 15910,\n  \"colin\": 20989,\n  \"colin</w>\": 10238,\n  \"coliseum</w>\": 21836,\n  \"coll\": 25982,\n  \"coll</w>\": 23898,\n  \"colla\": 2929,\n  \"collab</w>\": 14013,\n  \"collabor\": 4437,\n  \"collaborate</w>\": 21271,\n  \"collaborated</w>\": 42265,\n  \"collaborating</w>\": 25545,\n  \"collaboration</w>\": 6642,\n  \"collaborations</w>\": 36520,\n  \"collaborative</w>\": 15841,\n  \"collaborator</w>\": 48186,\n  \"collaborators</w>\": 45901,\n  \"collage</w>\": 11258,\n  \"collagen</w>\": 36120,\n  \"collap\": 16881,\n  \"collapse</w>\": 16520,\n  \"collapsed</w>\": 25037,\n  \"collapses</w>\": 43601,\n  \"collar\": 39662,\n  \"collar</w>\": 13497,\n  \"collateral</w>\": 44512,\n  \"colle\": 1801,\n  \"colleague</w>\": 13067,\n  \"colleagues</w>\": 8203,\n  \"collec\": 1733,\n  \"collect</w>\": 10186,\n  \"collected</w>\": 11980,\n  \"collecti\": 18530,\n  \"collectible</w>\": 25680,\n  \"collectibles</w>\": 21519,\n  \"collecting</w>\": 10325,\n  \"collection</w>\": 2548,\n  \"collections</w>\": 12760,\n  \"collective</w>\": 10162,\n  \"collectively</w>\": 40687,\n  \"collector</w>\": 13522,\n  \"collectors</w>\": 20540,\n  \"collects</w>\": 31576,\n  \"colleen</w>\": 31020,\n  \"college\": 13512,\n  \"college</w>\": 2229,\n  \"colleges</w>\": 17357,\n  \"collegi\": 16311,\n  \"collegiate</w>\": 18068,\n  \"colli\": 8262,\n  \"collide</w>\": 27214,\n  \"collie</w>\": 30611,\n  \"collier</w>\": 35748,\n  \"collin\": 24056,\n  \"collin</w>\": 32116,\n  \"colling\": 32319,\n  \"collingwood</w>\": 45873,\n  \"collins</w>\": 8684,\n  \"collision</w>\": 15407,\n  \"collo\": 25115,\n  \"colloqui\": 37243,\n  \"colloquium</w>\": 46514,\n  \"collu\": 25658,\n  \"collusion</w>\": 33864,\n  \"colo\": 7300,\n  \"colo</w>\": 27288,\n  \"cologne</w>\": 22216,\n  \"cology</w>\": 19187,\n  \"colom\": 8987,\n  \"colombia</w>\": 12901,\n  \"colombian</w>\": 28701,\n  \"colombo</w>\": 33207,\n  \"colon\": 8280,\n  \"colon</w>\": 29050,\n  \"colonel</w>\": 22674,\n  \"coloni\": 22667,\n  \"colonial</w>\": 16530,\n  \"colonialism</w>\": 43385,\n  \"colonies</w>\": 38738,\n  \"colony</w>\": 18767,\n  \"color\": 4036,\n  \"color</w>\": 3140,\n  \"colorado\": 34580,\n  \"colorado</w>\": 6742,\n  \"colorec\": 41171,\n  \"colored</w>\": 11775,\n  \"colorful</w>\": 11444,\n  \"colori\": 28764,\n  \"coloring</w>\": 17696,\n  \"colorized</w>\": 46730,\n  \"colors</w>\": 5389,\n  \"colorstv</w>\": 28195,\n  \"colorway</w>\": 44576,\n  \"colossal</w>\": 40258,\n  \"colosse\": 48142,\n  \"colossus</w>\": 34022,\n  \"colour\": 10240,\n  \"colour</w>\": 4769,\n  \"coloured</w>\": 17111,\n  \"colourful</w>\": 15562,\n  \"colouring</w>\": 31803,\n  \"colours</w>\": 7626,\n  \"cols</w>\": 35726,\n  \"colt</w>\": 19726,\n  \"colton</w>\": 32249,\n  \"coltrane</w>\": 42333,\n  \"colts</w>\": 16135,\n  \"colum\": 4164,\n  \"columb\": 31043,\n  \"columbi\": 25947,\n  \"columbia</w>\": 9410,\n  \"columbus</w>\": 11273,\n  \"column</w>\": 10593,\n  \"columnist</w>\": 28958,\n  \"columns</w>\": 29056,\n  \"com\": 610,\n  \"com</w>\": 2464,\n  \"coma</w>\": 19620,\n  \"comb\": 3587,\n  \"comb</w>\": 16380,\n  \"combat\": 35083,\n  \"combat</w>\": 9275,\n  \"combating</w>\": 46121,\n  \"combe</w>\": 14363,\n  \"combin\": 25112,\n  \"combination</w>\": 11312,\n  \"combinations</w>\": 34950,\n  \"combine</w>\": 12919,\n  \"combined</w>\": 10427,\n  \"combines</w>\": 22991,\n  \"combining</w>\": 23561,\n  \"combo</w>\": 10155,\n  \"combos</w>\": 48117,\n  \"combs</w>\": 30694,\n  \"combu\": 35629,\n  \"combustion</w>\": 44654,\n  \"comcast</w>\": 30043,\n  \"come\": 4225,\n  \"come</w>\": 891,\n  \"comeback</w>\": 8234,\n  \"comedian</w>\": 13848,\n  \"comedians</w>\": 33758,\n  \"comedic</w>\": 43360,\n  \"comedy\": 19346,\n  \"comedy</w>\": 4749,\n  \"comer\": 42997,\n  \"comer</w>\": 20916,\n  \"comers</w>\": 34436,\n  \"comes</w>\": 2091,\n  \"comet</w>\": 21405,\n  \"comets</w>\": 40636,\n  \"comey</w>\": 22957,\n  \"comfor\": 6563,\n  \"comfort\": 44000,\n  \"comfort</w>\": 7808,\n  \"comfortable</w>\": 8652,\n  \"comfortably</w>\": 30392,\n  \"comforting</w>\": 33835,\n  \"comforts</w>\": 42243,\n  \"comfy</w>\": 15736,\n  \"comi\": 40781,\n  \"comic\": 7729,\n  \"comic</w>\": 4962,\n  \"comicart</w>\": 46018,\n  \"comicbook</w>\": 46564,\n  \"comicbooks</w>\": 22018,\n  \"comiccon</w>\": 18379,\n  \"comicon</w>\": 43820,\n  \"comics</w>\": 4256,\n  \"comin</w>\": 18164,\n  \"coming\": 14916,\n  \"coming</w>\": 1171,\n  \"comingsoon</w>\": 19894,\n  \"comm\": 965,\n  \"comm</w>\": 11413,\n  \"comman\": 39780,\n  \"command\": 18391,\n  \"command</w>\": 11350,\n  \"commander</w>\": 11265,\n  \"commanders</w>\": 41667,\n  \"commanding</w>\": 36933,\n  \"commandments</w>\": 43409,\n  \"commando</w>\": 31361,\n  \"commands</w>\": 38163,\n  \"comme</w>\": 29692,\n  \"commemor\": 9495,\n  \"commemorate</w>\": 21242,\n  \"commemorates</w>\": 45149,\n  \"commemorating</w>\": 28734,\n  \"commemoration</w>\": 29288,\n  \"commemorative</w>\": 24623,\n  \"commen\": 15795,\n  \"commence</w>\": 25059,\n  \"commenced</w>\": 43908,\n  \"commencement</w>\": 21666,\n  \"commences</w>\": 48551,\n  \"commend\": 37555,\n  \"commended</w>\": 40702,\n  \"comment\": 20035,\n  \"comment</w>\": 5761,\n  \"commentary</w>\": 14146,\n  \"commentator</w>\": 32016,\n  \"commented</w>\": 28328,\n  \"commenting</w>\": 37292,\n  \"comments</w>\": 6606,\n  \"commer\": 4028,\n  \"commerce</w>\": 8333,\n  \"commerci\": 15601,\n  \"commercial\": 31802,\n  \"commercial</w>\": 6287,\n  \"commercials</w>\": 30724,\n  \"commish</w>\": 45399,\n  \"commissi\": 6000,\n  \"commission</w>\": 5292,\n  \"commissioned</w>\": 16565,\n  \"commissioner</w>\": 10221,\n  \"commissioners</w>\": 30702,\n  \"commissioning</w>\": 29585,\n  \"commissions</w>\": 20668,\n  \"commit\": 3041,\n  \"commit</w>\": 11797,\n  \"commitment</w>\": 7770,\n  \"commitments</w>\": 32136,\n  \"commits</w>\": 20241,\n  \"committed</w>\": 7907,\n  \"committee</w>\": 5636,\n  \"committees</w>\": 40504,\n  \"committing</w>\": 21937,\n  \"commod\": 9496,\n  \"commodities</w>\": 30350,\n  \"commodity</w>\": 29041,\n  \"commodore</w>\": 31129,\n  \"common\": 8414,\n  \"common</w>\": 4176,\n  \"commonly</w>\": 20344,\n  \"commons</w>\": 16653,\n  \"commonwealth</w>\": 16569,\n  \"comms</w>\": 18832,\n  \"commu\": 9561,\n  \"commun\": 1515,\n  \"communal</w>\": 32809,\n  \"communi\": 16164,\n  \"communic\": 4784,\n  \"communicate</w>\": 19809,\n  \"communication</w>\": 7999,\n  \"communications</w>\": 10052,\n  \"communion</w>\": 28579,\n  \"communism</w>\": 35387,\n  \"communist</w>\": 18602,\n  \"communities</w>\": 6361,\n  \"community\": 14784,\n  \"community</w>\": 1927,\n  \"commute</w>\": 15898,\n  \"commuter</w>\": 27782,\n  \"commuters</w>\": 30823,\n  \"commuting</w>\": 43503,\n  \"como</w>\": 16236,\n  \"comp\": 2561,\n  \"comp</w>\": 11679,\n  \"compac\": 40014,\n  \"compact</w>\": 13690,\n  \"compan\": 1995,\n  \"companies</w>\": 5361,\n  \"companion</w>\": 14963,\n  \"companions</w>\": 37124,\n  \"company</w>\": 2634,\n  \"compar\": 7580,\n  \"comparable</w>\": 27092,\n  \"comparative</w>\": 33388,\n  \"compare</w>\": 13771,\n  \"compared</w>\": 10544,\n  \"compares</w>\": 25104,\n  \"comparing</w>\": 20564,\n  \"comparison</w>\": 14186,\n  \"comparisons</w>\": 40870,\n  \"compart\": 30072,\n  \"compartment</w>\": 40383,\n  \"compass</w>\": 19438,\n  \"compassion</w>\": 14463,\n  \"compassionate</w>\": 30193,\n  \"compati\": 17295,\n  \"compatibility</w>\": 41614,\n  \"compatible</w>\": 21286,\n  \"compe\": 5254,\n  \"compelled</w>\": 49375,\n  \"compelling</w>\": 21766,\n  \"compen\": 42079,\n  \"compens\": 15172,\n  \"compensation</w>\": 18663,\n  \"compet\": 2932,\n  \"compete</w>\": 10038,\n  \"competed</w>\": 27767,\n  \"competen\": 31853,\n  \"competence</w>\": 31165,\n  \"competency</w>\": 49293,\n  \"competent</w>\": 28113,\n  \"competes</w>\": 39826,\n  \"competing</w>\": 13068,\n  \"competit\": 15892,\n  \"competiti\": 32581,\n  \"competition</w>\": 3742,\n  \"competitions</w>\": 23259,\n  \"competitive</w>\": 10687,\n  \"competitiveness</w>\": 43209,\n  \"competitor</w>\": 26633,\n  \"competitors</w>\": 23638,\n  \"compilation</w>\": 20446,\n  \"compiled</w>\": 34579,\n  \"compla\": 7428,\n  \"complain</w>\": 19292,\n  \"complained</w>\": 42029,\n  \"complaining</w>\": 20812,\n  \"complains</w>\": 46363,\n  \"complaint</w>\": 20391,\n  \"complaints</w>\": 20020,\n  \"comple\": 1730,\n  \"complement</w>\": 36624,\n  \"complementary</w>\": 48953,\n  \"complete</w>\": 3263,\n  \"completed</w>\": 5976,\n  \"completely</w>\": 5989,\n  \"completes</w>\": 19321,\n  \"completing</w>\": 14949,\n  \"completion</w>\": 15915,\n  \"complex\": 16099,\n  \"complex</w>\": 6324,\n  \"complexes</w>\": 47870,\n  \"complexion</w>\": 47732,\n  \"complexity</w>\": 24815,\n  \"compli\": 5270,\n  \"compliance</w>\": 14658,\n  \"compliant</w>\": 29893,\n  \"complic\": 11460,\n  \"complicated</w>\": 16621,\n  \"complications</w>\": 29936,\n  \"compliment</w>\": 25116,\n  \"complimentary</w>\": 20948,\n  \"compliments</w>\": 25477,\n  \"comply</w>\": 36281,\n  \"component</w>\": 21284,\n  \"components</w>\": 16816,\n  \"compos\": 7783,\n  \"compose</w>\": 43659,\n  \"composed</w>\": 19916,\n  \"composer</w>\": 12104,\n  \"composers</w>\": 33314,\n  \"composing</w>\": 40412,\n  \"composite</w>\": 21606,\n  \"composites</w>\": 45395,\n  \"composition</w>\": 17510,\n  \"compositions</w>\": 44652,\n  \"compost\": 46002,\n  \"compost</w>\": 33307,\n  \"compound</w>\": 19980,\n  \"compounds</w>\": 33991,\n  \"compre\": 8483,\n  \"compreh\": 42976,\n  \"comprehen\": 12050,\n  \"comprehend</w>\": 48230,\n  \"comprehensive</w>\": 13854,\n  \"compress\": 33353,\n  \"compressed</w>\": 42359,\n  \"compression</w>\": 25638,\n  \"compressor</w>\": 39607,\n  \"compri\": 29445,\n  \"compromise</w>\": 26611,\n  \"compromised</w>\": 38576,\n  \"compromising</w>\": 45436,\n  \"comps</w>\": 48665,\n  \"compton</w>\": 28364,\n  \"compu\": 11639,\n  \"compul\": 25869,\n  \"compulsory</w>\": 39345,\n  \"computing</w>\": 12732,\n  \"comra\": 25553,\n  \"comrade</w>\": 30844,\n  \"comrades</w>\": 29282,\n  \"coms</w>\": 30493,\n  \"con\": 616,\n  \"con</w>\": 2457,\n  \"cona</w>\": 30605,\n  \"conan</w>\": 24750,\n  \"conce\": 9145,\n  \"concealed</w>\": 35419,\n  \"conceded</w>\": 37895,\n  \"conceived</w>\": 39725,\n  \"concentr\": 11085,\n  \"concentrate</w>\": 30846,\n  \"concentrated</w>\": 36776,\n  \"concentration</w>\": 18565,\n  \"concep\": 8389,\n  \"concepcion</w>\": 47035,\n  \"concept</w>\": 6353,\n  \"conceptart</w>\": 31162,\n  \"conception</w>\": 30510,\n  \"conceptions</w>\": 40307,\n  \"concepts</w>\": 16763,\n  \"conceptu\": 42745,\n  \"conceptual</w>\": 34070,\n  \"concer\": 2228,\n  \"concern</w>\": 12928,\n  \"concerned</w>\": 12020,\n  \"concerning</w>\": 21772,\n  \"concerns</w>\": 11134,\n  \"concert\": 32180,\n  \"concert</w>\": 3066,\n  \"concerto</w>\": 24710,\n  \"concerts</w>\": 14418,\n  \"concession</w>\": 38117,\n  \"concessions</w>\": 43981,\n  \"concier\": 28859,\n  \"concierge</w>\": 39850,\n  \"conclave</w>\": 38098,\n  \"conclu\": 9627,\n  \"conclude</w>\": 37525,\n  \"concluded</w>\": 27825,\n  \"concludes</w>\": 30634,\n  \"conclusion</w>\": 20932,\n  \"conclusions</w>\": 39507,\n  \"conco\": 43034,\n  \"concor\": 19913,\n  \"concord</w>\": 26448,\n  \"concordia</w>\": 35492,\n  \"concours</w>\": 36282,\n  \"concourse</w>\": 37793,\n  \"concre\": 43658,\n  \"concrete</w>\": 9637,\n  \"concussion</w>\": 28321,\n  \"condem\": 13287,\n  \"condemn</w>\": 27212,\n  \"condemned</w>\": 35145,\n  \"condemns</w>\": 32092,\n  \"conden\": 24816,\n  \"conditi\": 11170,\n  \"condition\": 36978,\n  \"condition</w>\": 7336,\n  \"conditional</w>\": 24671,\n  \"conditioned</w>\": 37014,\n  \"conditioner</w>\": 31239,\n  \"conditioning</w>\": 18181,\n  \"conditions</w>\": 5892,\n  \"condo</w>\": 19952,\n  \"condol\": 18661,\n  \"condolences</w>\": 20836,\n  \"condom</w>\": 39021,\n  \"condomin\": 42589,\n  \"condoms</w>\": 37878,\n  \"condor</w>\": 47643,\n  \"condos</w>\": 42342,\n  \"condu\": 40772,\n  \"conduc\": 5379,\n  \"conduct</w>\": 11647,\n  \"conducted</w>\": 13080,\n  \"conducting</w>\": 16787,\n  \"conductor</w>\": 22317,\n  \"conducts</w>\": 32084,\n  \"cone\": 39279,\n  \"cone</w>\": 10266,\n  \"cones</w>\": 26718,\n  \"coney</w>\": 41837,\n  \"conf</w>\": 6477,\n  \"confe\": 1968,\n  \"confeder\": 17104,\n  \"confederate</w>\": 24864,\n  \"confederation</w>\": 43484,\n  \"conferen\": 37961,\n  \"conference</w>\": 2230,\n  \"conferences</w>\": 22811,\n  \"conferencing</w>\": 47320,\n  \"confess</w>\": 38860,\n  \"confession</w>\": 22572,\n  \"confessions</w>\": 29404,\n  \"confetti</w>\": 37923,\n  \"confi\": 5005,\n  \"confidence</w>\": 8510,\n  \"confident</w>\": 12365,\n  \"confidential</w>\": 28712,\n  \"configu\": 46746,\n  \"configur\": 26950,\n  \"configuration</w>\": 33378,\n  \"confin\": 45316,\n  \"confined</w>\": 40973,\n  \"confir\": 3930,\n  \"confirm</w>\": 12130,\n  \"confirmation</w>\": 19645,\n  \"confirmed</w>\": 6346,\n  \"confirming</w>\": 38433,\n  \"confirms</w>\": 11803,\n  \"confis\": 36285,\n  \"confit</w>\": 42241,\n  \"confl\": 8173,\n  \"conflic\": 19029,\n  \"conflict</w>\": 10397,\n  \"conflicting</w>\": 43894,\n  \"conflicts</w>\": 28713,\n  \"confor\": 40933,\n  \"confron\": 20033,\n  \"confront</w>\": 38382,\n  \"confrontation</w>\": 41478,\n  \"confu\": 6890,\n  \"confuse</w>\": 37503,\n  \"confused</w>\": 10946,\n  \"confusing</w>\": 24683,\n  \"confusion</w>\": 20493,\n  \"cong</w>\": 24407,\n  \"conge\": 20013,\n  \"congestion</w>\": 24432,\n  \"congo</w>\": 20334,\n  \"congr\": 1227,\n  \"congrats</w>\": 1887,\n  \"congratul\": 1750,\n  \"congratulate</w>\": 16633,\n  \"congratulated</w>\": 42004,\n  \"congratulates</w>\": 24580,\n  \"congratulating</w>\": 30967,\n  \"congratulation</w>\": 24751,\n  \"congratulations</w>\": 1864,\n  \"congre\": 7947,\n  \"congreg\": 40727,\n  \"congregation</w>\": 32618,\n  \"congress\": 12452,\n  \"congress</w>\": 4599,\n  \"congressional</w>\": 15239,\n  \"congressman</w>\": 17145,\n  \"congresswoman</w>\": 37317,\n  \"coni\": 39031,\n  \"coni</w>\": 36651,\n  \"conj\": 41543,\n  \"conju\": 33821,\n  \"conjunction</w>\": 34226,\n  \"conley</w>\": 44536,\n  \"conline</w>\": 37593,\n  \"conn\": 41836,\n  \"conn</w>\": 20329,\n  \"conne\": 8437,\n  \"connec\": 29933,\n  \"connect</w>\": 19969,\n  \"connected</w>\": 27506,\n  \"connecting</w>\": 41429,\n  \"connection</w>\": 26840,\n  \"connections</w>\": 37161,\n  \"connie</w>\": 25739,\n  \"connoisse\": 46012,\n  \"connol\": 27739,\n  \"connolly</w>\": 29537,\n  \"connor\": 21984,\n  \"connor</w>\": 10218,\n  \"conom\": 2664,\n  \"conomy</w>\": 22529,\n  \"conor\": 29955,\n  \"conor</w>\": 19478,\n  \"conqu\": 13382,\n  \"conquer\": 38585,\n  \"conquer</w>\": 19821,\n  \"conquered</w>\": 27099,\n  \"conquering</w>\": 43778,\n  \"conquest</w>\": 35367,\n  \"conrad</w>\": 22073,\n  \"cons</w>\": 10311,\n  \"consci\": 9427,\n  \"conscience</w>\": 27310,\n  \"conscious</w>\": 14914,\n  \"consciously</w>\": 46755,\n  \"consciousness</w>\": 17894,\n  \"conse\": 34887,\n  \"consecu\": 12084,\n  \"consecutive</w>\": 12413,\n  \"consen\": 23110,\n  \"consensus</w>\": 25071,\n  \"consent</w>\": 21922,\n  \"consequ\": 13003,\n  \"consequence</w>\": 42262,\n  \"consequences</w>\": 15682,\n  \"conserv\": 4649,\n  \"conservancy</w>\": 46729,\n  \"conservation\": 37616,\n  \"conservation</w>\": 8322,\n  \"conservative</w>\": 11421,\n  \"conservatives</w>\": 17631,\n  \"conservatory</w>\": 32140,\n  \"conserve</w>\": 34231,\n  \"consi\": 2899,\n  \"consider\": 12471,\n  \"consider</w>\": 6734,\n  \"considerable</w>\": 38256,\n  \"considerably</w>\": 38510,\n  \"consideration</w>\": 24310,\n  \"considerations</w>\": 33700,\n  \"considered</w>\": 9487,\n  \"considering</w>\": 10761,\n  \"considers</w>\": 24691,\n  \"consist\": 10410,\n  \"consist</w>\": 33735,\n  \"consisted</w>\": 49354,\n  \"consistency</w>\": 25683,\n  \"consistent</w>\": 16439,\n  \"consistently</w>\": 23799,\n  \"consisting</w>\": 39241,\n  \"consists</w>\": 23458,\n  \"consol\": 27869,\n  \"consolation</w>\": 38888,\n  \"console</w>\": 13403,\n  \"consoles</w>\": 33136,\n  \"consoli\": 21586,\n  \"consolidation</w>\": 41111,\n  \"consor\": 27108,\n  \"consortium</w>\": 29988,\n  \"conspir\": 12680,\n  \"conspiracy</w>\": 15236,\n  \"const\": 3826,\n  \"constable</w>\": 29179,\n  \"constan\": 38718,\n  \"constance</w>\": 40682,\n  \"constant\": 32000,\n  \"constant</w>\": 13111,\n  \"constantine</w>\": 30640,\n  \"constantly</w>\": 14336,\n  \"constell\": 21913,\n  \"constellation</w>\": 25991,\n  \"constitu\": 6299,\n  \"constituency</w>\": 22464,\n  \"constituents</w>\": 32075,\n  \"constitution</w>\": 12157,\n  \"constitutional</w>\": 16091,\n  \"constra\": 28973,\n  \"constraints</w>\": 41910,\n  \"constru\": 3983,\n  \"construc\": 13321,\n  \"construct</w>\": 24467,\n  \"constructed</w>\": 16876,\n  \"constructing</w>\": 33653,\n  \"construction\": 48873,\n  \"construction</w>\": 4585,\n  \"constructive</w>\": 31810,\n  \"consu\": 4689,\n  \"consul\": 5295,\n  \"consul</w>\": 33630,\n  \"consulate</w>\": 34341,\n  \"consult\": 9438,\n  \"consult</w>\": 26727,\n  \"consultancy</w>\": 31735,\n  \"consultant</w>\": 14196,\n  \"consultants</w>\": 27203,\n  \"consultation</w>\": 15777,\n  \"consultations</w>\": 43424,\n  \"consulting</w>\": 15883,\n  \"consume</w>\": 28919,\n  \"consumed</w>\": 29653,\n  \"consumer\": 34408,\n  \"consumer</w>\": 10422,\n  \"consumers</w>\": 14014,\n  \"consuming</w>\": 30607,\n  \"consumption</w>\": 14904,\n  \"cont\": 2036,\n  \"cont</w>\": 21425,\n  \"contact\": 39367,\n  \"contact</w>\": 3523,\n  \"contacted</w>\": 37331,\n  \"contacts</w>\": 22789,\n  \"contag\": 29259,\n  \"contagious</w>\": 33984,\n  \"contain\": 9948,\n  \"contain</w>\": 15187,\n  \"contained</w>\": 23836,\n  \"container</w>\": 14913,\n  \"containers</w>\": 20448,\n  \"containing</w>\": 20281,\n  \"contains</w>\": 12844,\n  \"contamin\": 24662,\n  \"contaminated</w>\": 35773,\n  \"contamination</w>\": 31770,\n  \"conte\": 15402,\n  \"conte</w>\": 26882,\n  \"contempl\": 21924,\n  \"contemplating</w>\": 33854,\n  \"contempor\": 14538,\n  \"contemporary\": 16607,\n  \"contemporary</w>\": 8859,\n  \"contemporaryart</w>\": 20212,\n  \"contempt</w>\": 39293,\n  \"conten\": 42201,\n  \"contender</w>\": 23573,\n  \"contenders</w>\": 29711,\n  \"content\": 15526,\n  \"content</w>\": 4750,\n  \"contentmarketing</w>\": 20429,\n  \"contents</w>\": 14850,\n  \"contest\": 23103,\n  \"contest</w>\": 4576,\n  \"contestalert</w>\": 27313,\n  \"contestant</w>\": 25682,\n  \"contestants</w>\": 28062,\n  \"contested</w>\": 37845,\n  \"contests</w>\": 32210,\n  \"contex\": 42015,\n  \"context</w>\": 13089,\n  \"conti\": 46431,\n  \"conti</w>\": 40842,\n  \"contin\": 1918,\n  \"continent</w>\": 19623,\n  \"continental</w>\": 14089,\n  \"continents</w>\": 38642,\n  \"conting\": 27104,\n  \"contingent</w>\": 36467,\n  \"continu\": 4688,\n  \"continually</w>\": 34086,\n  \"continuation</w>\": 38964,\n  \"continue</w>\": 3942,\n  \"continued</w>\": 10150,\n  \"continues</w>\": 4305,\n  \"continuing</w>\": 11009,\n  \"continuity</w>\": 34035,\n  \"continuous</w>\": 17033,\n  \"continuously</w>\": 29634,\n  \"continuum</w>\": 44978,\n  \"contour</w>\": 34733,\n  \"contr\": 22871,\n  \"contra\": 9880,\n  \"contra</w>\": 38620,\n  \"contrac\": 7581,\n  \"contracep\": 35109,\n  \"contract</w>\": 6120,\n  \"contracting</w>\": 39091,\n  \"contractor</w>\": 21429,\n  \"contractors</w>\": 22427,\n  \"contracts</w>\": 16563,\n  \"contradic\": 27957,\n  \"contrary</w>\": 32805,\n  \"contrast</w>\": 18501,\n  \"contrasting</w>\": 40758,\n  \"contribu\": 4753,\n  \"contribute</w>\": 14112,\n  \"contributed</w>\": 19397,\n  \"contributes</w>\": 34203,\n  \"contributing</w>\": 21762,\n  \"contribution</w>\": 11116,\n  \"contributions</w>\": 14465,\n  \"contributor</w>\": 24553,\n  \"contributors</w>\": 32908,\n  \"contro\": 2372,\n  \"control\": 9963,\n  \"control</w>\": 3366,\n  \"controlled</w>\": 14140,\n  \"controller</w>\": 12929,\n  \"controllers</w>\": 30374,\n  \"controlling</w>\": 26427,\n  \"controls</w>\": 15746,\n  \"controversi\": 13674,\n  \"controversial</w>\": 14617,\n  \"controversy</w>\": 18659,\n  \"conv</w>\": 48382,\n  \"conve\": 18421,\n  \"conven\": 7283,\n  \"conveni\": 33278,\n  \"convenience</w>\": 17859,\n  \"convenient</w>\": 18978,\n  \"conveniently</w>\": 40844,\n  \"convention</w>\": 6752,\n  \"conventional</w>\": 20835,\n  \"conventions</w>\": 41404,\n  \"conver\": 6336,\n  \"convergence</w>\": 35381,\n  \"convers\": 4577,\n  \"conversation</w>\": 5690,\n  \"conversations</w>\": 12326,\n  \"converse</w>\": 24149,\n  \"conversion</w>\": 15111,\n  \"conversions</w>\": 44137,\n  \"convert</w>\": 20074,\n  \"converted</w>\": 20808,\n  \"converter</w>\": 34611,\n  \"convertible</w>\": 19608,\n  \"converting</w>\": 34674,\n  \"converts</w>\": 42470,\n  \"convey</w>\": 38342,\n  \"convic\": 11150,\n  \"convicted</w>\": 18668,\n  \"conviction</w>\": 24967,\n  \"convictions</w>\": 44366,\n  \"convin\": 12889,\n  \"convince</w>\": 20351,\n  \"convinced</w>\": 17388,\n  \"convincing</w>\": 27742,\n  \"convo</w>\": 19372,\n  \"convocation</w>\": 30674,\n  \"convos</w>\": 44842,\n  \"convoy</w>\": 30292,\n  \"conway</w>\": 21410,\n  \"conwy</w>\": 48971,\n  \"cony</w>\": 14501,\n  \"coo\": 1664,\n  \"coo</w>\": 21691,\n  \"coogs</w>\": 47624,\n  \"cook\": 9726,\n  \"cook</w>\": 5977,\n  \"cookbook</w>\": 21086,\n  \"cooke</w>\": 29979,\n  \"cooked</w>\": 11452,\n  \"cooker</w>\": 23806,\n  \"cookery</w>\": 38779,\n  \"cookie</w>\": 9367,\n  \"cookies</w>\": 8320,\n  \"cookin</w>\": 46610,\n  \"cooking\": 39248,\n  \"cooking</w>\": 6283,\n  \"cookout</w>\": 39743,\n  \"cooks</w>\": 24256,\n  \"cool\": 5594,\n  \"cool</w>\": 2077,\n  \"cooled</w>\": 37170,\n  \"cooler</w>\": 11078,\n  \"coolest</w>\": 10566,\n  \"cooling</w>\": 15291,\n  \"coom\": 41726,\n  \"coon\": 34260,\n  \"coon</w>\": 16958,\n  \"coop\": 39917,\n  \"coop</w>\": 18910,\n  \"cooper\": 7264,\n  \"cooper</w>\": 8133,\n  \"cooperate</w>\": 42936,\n  \"cooperation</w>\": 11785,\n  \"cooperative</w>\": 24517,\n  \"coops</w>\": 48531,\n  \"coordin\": 8187,\n  \"coordinate</w>\": 38250,\n  \"coordinated</w>\": 32540,\n  \"coordinating</w>\": 40075,\n  \"coordination</w>\": 25611,\n  \"coordinator</w>\": 13967,\n  \"coors</w>\": 36025,\n  \"cop\": 3196,\n  \"cop</w>\": 7070,\n  \"copa</w>\": 22749,\n  \"copd</w>\": 45876,\n  \"cope\": 47635,\n  \"cope</w>\": 12564,\n  \"copeland</w>\": 37604,\n  \"copen\": 15637,\n  \"copenhagen</w>\": 17390,\n  \"coper\": 41891,\n  \"copernic\": 45519,\n  \"copied</w>\": 36770,\n  \"copies</w>\": 9851,\n  \"coping</w>\": 30545,\n  \"copolitics</w>\": 45846,\n  \"copp\": 20937,\n  \"copped</w>\": 42229,\n  \"copper\": 24741,\n  \"copper</w>\": 10333,\n  \"coppola</w>\": 47427,\n  \"cops</w>\": 10719,\n  \"copter</w>\": 28049,\n  \"copy\": 11376,\n  \"copy</w>\": 4509,\n  \"copying</w>\": 38925,\n  \"copyright</w>\": 15778,\n  \"cor\": 851,\n  \"cor</w>\": 18559,\n  \"cora</w>\": 34953,\n  \"coral\": 31220,\n  \"coral</w>\": 12054,\n  \"corbett</w>\": 35699,\n  \"corbin</w>\": 35578,\n  \"corbyn</w>\": 14026,\n  \"cord\": 40893,\n  \"cord</w>\": 11181,\n  \"corden</w>\": 41999,\n  \"cordi\": 41681,\n  \"cordless</w>\": 44412,\n  \"cords</w>\": 22164,\n  \"core\": 19622,\n  \"core</w>\": 5000,\n  \"cores</w>\": 37874,\n  \"corey\": 31279,\n  \"corey</w>\": 15288,\n  \"corgi</w>\": 31320,\n  \"cori\": 26508,\n  \"coriander</w>\": 37491,\n  \"corin\": 17716,\n  \"corinthians</w>\": 34471,\n  \"cork\": 18148,\n  \"cork</w>\": 10376,\n  \"corn\": 5202,\n  \"corn</w>\": 5894,\n  \"cornelius</w>\": 45865,\n  \"cornell\": 38689,\n  \"cornell</w>\": 20859,\n  \"corner\": 18509,\n  \"corner</w>\": 5253,\n  \"corners</w>\": 19584,\n  \"cornerstone</w>\": 36280,\n  \"cornish</w>\": 23774,\n  \"cornwall\": 37903,\n  \"cornwall</w>\": 10777,\n  \"coron\": 13210,\n  \"corona</w>\": 25564,\n  \"coronado</w>\": 43946,\n  \"coronary</w>\": 45955,\n  \"coronation</w>\": 25014,\n  \"coroner</w>\": 47241,\n  \"corp\": 29203,\n  \"corp</w>\": 10918,\n  \"corpor\": 4258,\n  \"corporal</w>\": 42445,\n  \"corporate\": 33877,\n  \"corporate</w>\": 6838,\n  \"corporation</w>\": 11282,\n  \"corporations</w>\": 25482,\n  \"corps</w>\": 11330,\n  \"corpse</w>\": 29408,\n  \"corpus</w>\": 31672,\n  \"correc\": 5011,\n  \"correct</w>\": 8340,\n  \"corrected</w>\": 35628,\n  \"correction</w>\": 20843,\n  \"correctional</w>\": 38030,\n  \"corrections</w>\": 37507,\n  \"correctly</w>\": 15359,\n  \"correlation</w>\": 29218,\n  \"correspon\": 20203,\n  \"correspondent</w>\": 29996,\n  \"corri\": 12974,\n  \"corridor</w>\": 20592,\n  \"corrie</w>\": 23961,\n  \"corro\": 24936,\n  \"corro</w>\": 42033,\n  \"corrosion</w>\": 39191,\n  \"corru\": 6501,\n  \"corrup\": 30429,\n  \"corrupt</w>\": 15194,\n  \"corruption</w>\": 9141,\n  \"corsa</w>\": 47670,\n  \"corsair</w>\": 42367,\n  \"corset</w>\": 40408,\n  \"cortex</w>\": 40109,\n  \"cortez</w>\": 30461,\n  \"corvette</w>\": 24367,\n  \"cory\": 23221,\n  \"cory</w>\": 18329,\n  \"cos\": 5865,\n  \"cos</w>\": 5700,\n  \"cosby</w>\": 30324,\n  \"cosc\": 45944,\n  \"coscino</w>\": 47909,\n  \"cose</w>\": 26495,\n  \"cosm\": 37486,\n  \"cosme\": 9628,\n  \"cosmetic</w>\": 23918,\n  \"cosmetics</w>\": 12896,\n  \"cosmic\": 47398,\n  \"cosmic</w>\": 18304,\n  \"cosmo\": 12829,\n  \"cosmo</w>\": 32072,\n  \"cosmopolitan</w>\": 35518,\n  \"cosmos</w>\": 22151,\n  \"cospla\": 15149,\n  \"cosplay\": 42401,\n  \"cosplay</w>\": 6435,\n  \"cosplayer</w>\": 30215,\n  \"cosplaying</w>\": 46701,\n  \"cost\": 11360,\n  \"cost</w>\": 4713,\n  \"costa</w>\": 10480,\n  \"costar\": 28659,\n  \"costarica</w>\": 31272,\n  \"costco</w>\": 31045,\n  \"costello</w>\": 30667,\n  \"costing</w>\": 39193,\n  \"costly</w>\": 30170,\n  \"costs</w>\": 7628,\n  \"costu\": 5786,\n  \"costume</w>\": 7235,\n  \"costumes</w>\": 15150,\n  \"cosy</w>\": 22848,\n  \"cot\": 4718,\n  \"cot</w>\": 5871,\n  \"cote\": 44234,\n  \"cote</w>\": 20751,\n  \"cotland</w>\": 32576,\n  \"cotsw\": 23303,\n  \"cotswolds</w>\": 35546,\n  \"cott\": 8211,\n  \"cott</w>\": 11349,\n  \"cottage</w>\": 12155,\n  \"cottages</w>\": 34405,\n  \"cotton\": 22218,\n  \"cotton</w>\": 7050,\n  \"cou\": 1368,\n  \"couch</w>\": 12724,\n  \"cougar\": 35028,\n  \"cougar</w>\": 27042,\n  \"cougars</w>\": 20425,\n  \"cough\": 35631,\n  \"cough</w>\": 18498,\n  \"cougs</w>\": 28482,\n  \"coul\": 22483,\n  \"could\": 44812,\n  \"could</w>\": 1510,\n  \"couldn</w>\": 4072,\n  \"couldnt</w>\": 29042,\n  \"coulter</w>\": 42291,\n  \"coun\": 939,\n  \"counc\": 12927,\n  \"council\": 18187,\n  \"council</w>\": 3620,\n  \"councill\": 15732,\n  \"councillor</w>\": 21179,\n  \"councillors</w>\": 29695,\n  \"councilman</w>\": 40833,\n  \"councils</w>\": 29938,\n  \"counsel\": 13780,\n  \"counsel</w>\": 19814,\n  \"counseling</w>\": 25000,\n  \"counsell\": 47510,\n  \"counselling</w>\": 40581,\n  \"counselor</w>\": 26148,\n  \"counselors</w>\": 38688,\n  \"count\": 6073,\n  \"count</w>\": 5887,\n  \"countdown\": 39559,\n  \"countdown</w>\": 7500,\n  \"counted</w>\": 23149,\n  \"counter\": 10134,\n  \"counter</w>\": 7352,\n  \"counterfe\": 33067,\n  \"counterfeit</w>\": 44242,\n  \"counterpart</w>\": 39216,\n  \"counterparts</w>\": 42106,\n  \"counters</w>\": 46170,\n  \"countess</w>\": 46276,\n  \"counties</w>\": 12338,\n  \"counting</w>\": 9723,\n  \"countless</w>\": 21819,\n  \"countries</w>\": 5489,\n  \"country\": 7896,\n  \"country</w>\": 2157,\n  \"countryfile</w>\": 47023,\n  \"countrymusic</w>\": 30372,\n  \"countryside</w>\": 16303,\n  \"counts</w>\": 12264,\n  \"county\": 18734,\n  \"county</w>\": 2116,\n  \"coup\": 9871,\n  \"coup</w>\": 16479,\n  \"coupe</w>\": 16773,\n  \"couple\": 40136,\n  \"couple</w>\": 3377,\n  \"coupled</w>\": 37153,\n  \"couples</w>\": 14752,\n  \"coupling</w>\": 45595,\n  \"coupon</w>\": 14019,\n  \"coupons</w>\": 23945,\n  \"cour\": 1391,\n  \"coura\": 4436,\n  \"courage</w>\": 9828,\n  \"courageous</w>\": 25005,\n  \"courier</w>\": 27217,\n  \"cours</w>\": 21493,\n  \"course\": 43225,\n  \"course</w>\": 2613,\n  \"courses</w>\": 9464,\n  \"court\": 16837,\n  \"court</w>\": 2908,\n  \"courte\": 5088,\n  \"courtesy</w>\": 5228,\n  \"courthouse</w>\": 22205,\n  \"courtney\": 33601,\n  \"courtney</w>\": 15990,\n  \"courtroom</w>\": 41071,\n  \"courts</w>\": 13514,\n  \"courty\": 20121,\n  \"courtyard</w>\": 21900,\n  \"cous</w>\": 48397,\n  \"cousin</w>\": 7780,\n  \"cousins</w>\": 14073,\n  \"cout\": 29118,\n  \"coutinho</w>\": 35530,\n  \"couture</w>\": 14808,\n  \"cov\": 19384,\n  \"cov</w>\": 48385,\n  \"cove\": 21700,\n  \"cove</w>\": 14708,\n  \"coven\": 12483,\n  \"covenant</w>\": 29647,\n  \"coventry</w>\": 18007,\n  \"cover\": 13534,\n  \"cover</w>\": 2202,\n  \"coverage</w>\": 6810,\n  \"covered</w>\": 5603,\n  \"covering</w>\": 9462,\n  \"covers</w>\": 7745,\n  \"covert</w>\": 40134,\n  \"coveted</w>\": 36119,\n  \"covington</w>\": 43196,\n  \"cow\": 5076,\n  \"cow</w>\": 9706,\n  \"cowan</w>\": 42699,\n  \"coward</w>\": 33729,\n  \"cowards</w>\": 48972,\n  \"cowboy\": 25833,\n  \"cowboy</w>\": 13657,\n  \"cowboys</w>\": 11864,\n  \"cowboysnation</w>\": 43082,\n  \"cowell</w>\": 39015,\n  \"cowgirl</w>\": 47090,\n  \"coworker</w>\": 30727,\n  \"coworkers</w>\": 30821,\n  \"coworking</w>\": 36034,\n  \"cows</w>\": 15204,\n  \"cowx</w>\": 23831,\n  \"cox\": 25784,\n  \"cox</w>\": 11597,\n  \"coy\": 12765,\n  \"coy</w>\": 15742,\n  \"coyi</w>\": 48407,\n  \"coyle</w>\": 45348,\n  \"coyne</w>\": 44729,\n  \"coyo\": 16614,\n  \"coyote</w>\": 26586,\n  \"coyotes</w>\": 30423,\n  \"coys</w>\": 19736,\n  \"coz\": 39922,\n  \"coz</w>\": 14282,\n  \"cozy</w>\": 14873,\n  \"cp\": 7905,\n  \"cp</w>\": 9130,\n  \"cpa</w>\": 30095,\n  \"cpac</w>\": 45731,\n  \"cpc</w>\": 26125,\n  \"cpd</w>\": 23402,\n  \"cpec</w>\": 48007,\n  \"cpfc</w>\": 27553,\n  \"cpi</w>\": 41795,\n  \"cpl</w>\": 26852,\n  \"cpr</w>\": 25134,\n  \"cps</w>\": 27078,\n  \"cpt</w>\": 32892,\n  \"cpu</w>\": 27700,\n  \"cq\": 48910,\n  \"cq</w>\": 48417,\n  \"cr\": 1075,\n  \"cr</w>\": 3483,\n  \"cra\": 1184,\n  \"cra</w>\": 18362,\n  \"crab\": 27382,\n  \"crab</w>\": 11574,\n  \"crabs</w>\": 30908,\n  \"crack\": 11222,\n  \"crack</w>\": 10334,\n  \"crackdown</w>\": 29527,\n  \"cracked</w>\": 19826,\n  \"cracker</w>\": 16298,\n  \"crackers</w>\": 26200,\n  \"cracking</w>\": 13008,\n  \"cracks</w>\": 21426,\n  \"cracy</w>\": 24749,\n  \"cradle</w>\": 29384,\n  \"crae</w>\": 40438,\n  \"craf\": 10873,\n  \"craft\": 7717,\n  \"craft</w>\": 3588,\n  \"craftbeer</w>\": 12371,\n  \"crafted</w>\": 12424,\n  \"crafthour</w>\": 42324,\n  \"crafting</w>\": 26886,\n  \"crafts\": 33276,\n  \"crafts</w>\": 13383,\n  \"craftsman</w>\": 39528,\n  \"craftsmanship</w>\": 36682,\n  \"crafty</w>\": 32317,\n  \"craic</w>\": 46962,\n  \"craig\": 14042,\n  \"craig</w>\": 8061,\n  \"craigslist</w>\": 43865,\n  \"cram\": 29809,\n  \"cramer</w>\": 44592,\n  \"cramps</w>\": 46106,\n  \"cran\": 7761,\n  \"cranberries</w>\": 49361,\n  \"cranberry</w>\": 23824,\n  \"crane</w>\": 14626,\n  \"cranes</w>\": 26979,\n  \"crani\": 45674,\n  \"crank\": 46246,\n  \"crank</w>\": 32283,\n  \"cranston</w>\": 44340,\n  \"crap</w>\": 11899,\n  \"crappy</w>\": 30475,\n  \"crash\": 37150,\n  \"crash</w>\": 5033,\n  \"crashed</w>\": 16638,\n  \"crashes</w>\": 17013,\n  \"crashing</w>\": 24991,\n  \"crat</w>\": 46696,\n  \"crate</w>\": 24756,\n  \"crater</w>\": 22663,\n  \"crates</w>\": 30172,\n  \"cratic</w>\": 32175,\n  \"crative</w>\": 39999,\n  \"crats</w>\": 43056,\n  \"crave</w>\": 33397,\n  \"craven</w>\": 33625,\n  \"craving</w>\": 18344,\n  \"cravings</w>\": 34476,\n  \"craw\": 7400,\n  \"crawfish</w>\": 42772,\n  \"crawford</w>\": 15918,\n  \"crawl</w>\": 20106,\n  \"crawler</w>\": 41012,\n  \"crawley</w>\": 42316,\n  \"crawling</w>\": 37066,\n  \"cray\": 24184,\n  \"cray</w>\": 27032,\n  \"crayon</w>\": 41801,\n  \"crayons</w>\": 43508,\n  \"craz\": 25776,\n  \"craze</w>\": 30637,\n  \"craziest</w>\": 32690,\n  \"craziness</w>\": 46436,\n  \"crazy\": 17540,\n  \"crazy</w>\": 3578,\n  \"crc</w>\": 25618,\n  \"cre\": 798,\n  \"cre</w>\": 17762,\n  \"cream\": 23184,\n  \"cream</w>\": 3867,\n  \"creams</w>\": 41447,\n  \"creamy</w>\": 17206,\n  \"crease</w>\": 48441,\n  \"create\": 30949,\n  \"create</w>\": 3380,\n  \"created</w>\": 4080,\n  \"creates</w>\": 10361,\n  \"creati\": 6714,\n  \"creating</w>\": 5524,\n  \"creation\": 38293,\n  \"creation</w>\": 6900,\n  \"creations</w>\": 17411,\n  \"creative\": 15237,\n  \"creative</w>\": 4450,\n  \"creatives</w>\": 29352,\n  \"creativity</w>\": 9636,\n  \"creator</w>\": 10173,\n  \"creators</w>\": 17981,\n  \"creature</w>\": 14317,\n  \"creatures</w>\": 13938,\n  \"cred\": 7314,\n  \"cred</w>\": 22377,\n  \"credenti\": 29487,\n  \"credentials</w>\": 33422,\n  \"credi\": 21097,\n  \"credibility</w>\": 34984,\n  \"credible</w>\": 32983,\n  \"credit\": 21467,\n  \"credit</w>\": 3900,\n  \"credited</w>\": 32480,\n  \"credits</w>\": 10654,\n  \"creds</w>\": 43462,\n  \"cree\": 33961,\n  \"cree</w>\": 36014,\n  \"creed</w>\": 18845,\n  \"creek\": 26120,\n  \"creek</w>\": 5526,\n  \"creep\": 8153,\n  \"creep</w>\": 26084,\n  \"creeper</w>\": 38662,\n  \"creeping</w>\": 29697,\n  \"creeps</w>\": 45135,\n  \"creepy</w>\": 11943,\n  \"creighton</w>\": 42823,\n  \"creme</w>\": 22681,\n  \"creole</w>\": 45632,\n  \"crepe</w>\": 38611,\n  \"crescent</w>\": 18211,\n  \"cress</w>\": 39124,\n  \"crest\": 35985,\n  \"crest</w>\": 15760,\n  \"crested</w>\": 36656,\n  \"crete</w>\": 8584,\n  \"crew\": 21560,\n  \"crew</w>\": 3462,\n  \"crewe</w>\": 43284,\n  \"crews</w>\": 10463,\n  \"cri\": 1621,\n  \"cri</w>\": 38962,\n  \"crib</w>\": 23271,\n  \"cric\": 4328,\n  \"cricke\": 19098,\n  \"cricket\": 21859,\n  \"cricket</w>\": 5373,\n  \"cricketer</w>\": 28439,\n  \"cricketers</w>\": 43986,\n  \"cried</w>\": 15290,\n  \"cries</w>\": 19769,\n  \"crime\": 13872,\n  \"crime</w>\": 4896,\n  \"crimea</w>\": 28614,\n  \"crimes</w>\": 11827,\n  \"crimin\": 5874,\n  \"criminal\": 30197,\n  \"criminal</w>\": 8255,\n  \"criminals</w>\": 18783,\n  \"crimson</w>\": 19437,\n  \"cringe</w>\": 42588,\n  \"cripp\": 33588,\n  \"cris</w>\": 37818,\n  \"crises</w>\": 36403,\n  \"crisis</w>\": 5712,\n  \"crisp</w>\": 15145,\n  \"crispr</w>\": 39784,\n  \"crisps</w>\": 35744,\n  \"crispy</w>\": 16458,\n  \"criss</w>\": 29708,\n  \"cristi\": 12699,\n  \"cristian</w>\": 48808,\n  \"cristiano</w>\": 14807,\n  \"cristina</w>\": 33395,\n  \"cristo</w>\": 38315,\n  \"crit\": 3613,\n  \"crit</w>\": 48130,\n  \"criteri\": 33627,\n  \"criteria</w>\": 24849,\n  \"criterion</w>\": 43841,\n  \"criti\": 25333,\n  \"critic\": 12417,\n  \"critic</w>\": 19361,\n  \"critical\": 15314,\n  \"critical</w>\": 6808,\n  \"critically</w>\": 21570,\n  \"criticalrole\": 33606,\n  \"criticalrole</w>\": 22742,\n  \"criticalrolefanart</w>\": 43663,\n  \"critici\": 20333,\n  \"criticism</w>\": 17405,\n  \"criticize</w>\": 46081,\n  \"criticized</w>\": 41557,\n  \"critics</w>\": 16946,\n  \"critique</w>\": 32982,\n  \"critters</w>\": 35423,\n  \"crm</w>\": 22610,\n  \"cro\": 1192,\n  \"cro</w>\": 22522,\n  \"croati\": 28072,\n  \"croatia</w>\": 13323,\n  \"croatian</w>\": 34795,\n  \"croc</w>\": 43350,\n  \"croche\": 35352,\n  \"crochet</w>\": 17554,\n  \"crock\": 41685,\n  \"crocker</w>\": 47843,\n  \"crockett</w>\": 48313,\n  \"crocod\": 24519,\n  \"crocodile</w>\": 24757,\n  \"crocs</w>\": 38988,\n  \"croft</w>\": 16657,\n  \"croissant</w>\": 46011,\n  \"croix</w>\": 44735,\n  \"crom\": 25082,\n  \"crombie</w>\": 46162,\n  \"cromwell</w>\": 45345,\n  \"cron\": 17361,\n  \"croo\": 16443,\n  \"crook</w>\": 43744,\n  \"crooked\": 48473,\n  \"crooked</w>\": 25644,\n  \"crooks</w>\": 44226,\n  \"crop\": 40751,\n  \"crop</w>\": 9955,\n  \"cropped</w>\": 31139,\n  \"crops</w>\": 16290,\n  \"crore</w>\": 18274,\n  \"crores</w>\": 37281,\n  \"cros\": 16670,\n  \"crosby</w>\": 21095,\n  \"cross\": 5266,\n  \"cross</w>\": 3417,\n  \"crossed</w>\": 11731,\n  \"crosses</w>\": 20473,\n  \"crossfit\": 47214,\n  \"crossfit</w>\": 20395,\n  \"crossing</w>\": 8673,\n  \"crossings</w>\": 43517,\n  \"crossover</w>\": 17194,\n  \"crossroads</w>\": 27427,\n  \"crossword</w>\": 32945,\n  \"crou\": 31206,\n  \"crouch</w>\": 36506,\n  \"crow\": 3138,\n  \"crow</w>\": 16019,\n  \"crowd\": 12036,\n  \"crowd</w>\": 4570,\n  \"crowded</w>\": 20182,\n  \"crowdfunding</w>\": 17971,\n  \"crowds</w>\": 16092,\n  \"crowe</w>\": 33560,\n  \"crowley</w>\": 32287,\n  \"crown\": 22190,\n  \"crown</w>\": 6902,\n  \"crowned</w>\": 16109,\n  \"crowns</w>\": 33229,\n  \"crows</w>\": 27134,\n  \"croy\": 21676,\n  \"croydon</w>\": 27116,\n  \"crs</w>\": 28449,\n  \"crt</w>\": 43877,\n  \"cru\": 1815,\n  \"cru</w>\": 29788,\n  \"cruci\": 18499,\n  \"crucial</w>\": 12396,\n  \"crude</w>\": 20677,\n  \"cruel\": 16073,\n  \"cruel</w>\": 17573,\n  \"cruelty</w>\": 20675,\n  \"cruis\": 27721,\n  \"cruise\": 36425,\n  \"cruise</w>\": 6764,\n  \"cruiser</w>\": 21394,\n  \"cruises</w>\": 19214,\n  \"cruising</w>\": 19743,\n  \"crum\": 43268,\n  \"crumb\": 48327,\n  \"crumb</w>\": 39909,\n  \"crumble</w>\": 36595,\n  \"crumbs</w>\": 35893,\n  \"crun\": 17407,\n  \"crunch</w>\": 16620,\n  \"crunchy</w>\": 31366,\n  \"crusad\": 19133,\n  \"crusade</w>\": 36846,\n  \"crusader</w>\": 40171,\n  \"crusaders</w>\": 31319,\n  \"crush\": 22296,\n  \"crush</w>\": 7610,\n  \"crushed</w>\": 18270,\n  \"crusher</w>\": 44923,\n  \"crushes</w>\": 35844,\n  \"crushing</w>\": 20790,\n  \"crust</w>\": 23136,\n  \"crusted</w>\": 37314,\n  \"cruz\": 33689,\n  \"cruz</w>\": 8403,\n  \"cry\": 2837,\n  \"cry</w>\": 6290,\n  \"crying</w>\": 6828,\n  \"cryo\": 32215,\n  \"cryp\": 4865,\n  \"crypt</w>\": 37814,\n  \"cryptic</w>\": 46925,\n  \"crypto\": 8080,\n  \"crypto</w>\": 9608,\n  \"cryptocurrencies</w>\": 33329,\n  \"cryptocurrency</w>\": 12070,\n  \"cryst\": 15891,\n  \"crystal\": 17387,\n  \"crystal</w>\": 6517,\n  \"crystalli\": 47551,\n  \"crystals</w>\": 18350,\n  \"cs\": 11978,\n  \"cs</w>\": 2804,\n  \"csa</w>\": 26355,\n  \"csc\": 41727,\n  \"csc</w>\": 37266,\n  \"csd</w>\": 36913,\n  \"cse</w>\": 41659,\n  \"csg</w>\": 47085,\n  \"csgo</w>\": 28928,\n  \"csi\": 41750,\n  \"csi</w>\": 28070,\n  \"csk</w>\": 43036,\n  \"csm</w>\": 40061,\n  \"csn</w>\": 46329,\n  \"cso</w>\": 43864,\n  \"csp</w>\": 39243,\n  \"csr\": 32105,\n  \"csr</w>\": 24598,\n  \"csrracing</w>\": 44193,\n  \"css\": 41418,\n  \"css</w>\": 19846,\n  \"cst</w>\": 17016,\n  \"csu\": 35948,\n  \"csu</w>\": 31261,\n  \"csw</w>\": 41031,\n  \"ct\": 3381,\n  \"ct</w>\": 1122,\n  \"cta</w>\": 28397,\n  \"ctar</w>\": 27842,\n  \"ctc</w>\": 34123,\n  \"cte</w>\": 31410,\n  \"cted</w>\": 2910,\n  \"ctf</w>\": 35250,\n  \"cthulhu</w>\": 41064,\n  \"cting</w>\": 7985,\n  \"ction\": 17578,\n  \"ction</w>\": 1569,\n  \"ctions</w>\": 7021,\n  \"ctive</w>\": 9313,\n  \"cto</w>\": 17445,\n  \"ctor</w>\": 8108,\n  \"ctr\": 35602,\n  \"ctr</w>\": 18481,\n  \"cts</w>\": 6936,\n  \"ctto</w>\": 25118,\n  \"ctu\": 20834,\n  \"cture</w>\": 17668,\n  \"ctv\": 21213,\n  \"ctv</w>\": 27590,\n  \"cu\": 729,\n  \"cu</w>\": 11224,\n  \"cuando</w>\": 40388,\n  \"cub\": 16938,\n  \"cub</w>\": 19972,\n  \"cuba</w>\": 11576,\n  \"cuban</w>\": 15536,\n  \"cube\": 47753,\n  \"cube</w>\": 11353,\n  \"cubes</w>\": 31413,\n  \"cubic\": 48159,\n  \"cubic</w>\": 29614,\n  \"cubs</w>\": 9858,\n  \"cuck\": 26364,\n  \"cuckoo</w>\": 38062,\n  \"cucu\": 16705,\n  \"cucumber</w>\": 19787,\n  \"cucumbers</w>\": 48065,\n  \"cud\": 42684,\n  \"cudd\": 12820,\n  \"cuddle</w>\": 19568,\n  \"cuddles</w>\": 24001,\n  \"cuddling</w>\": 29696,\n  \"cuddly</w>\": 36208,\n  \"cudi</w>\": 48713,\n  \"cue</w>\": 13424,\n  \"cuer\": 39506,\n  \"cues</w>\": 35719,\n  \"cuff\": 34693,\n  \"cuff</w>\": 22414,\n  \"cufflinks</w>\": 43938,\n  \"cuffs</w>\": 37221,\n  \"cuis\": 9938,\n  \"cuisine</w>\": 10605,\n  \"cuk</w>\": 34838,\n  \"cul\": 1877,\n  \"cula</w>\": 35935,\n  \"cular</w>\": 10940,\n  \"culars</w>\": 45719,\n  \"cule</w>\": 31066,\n  \"cules</w>\": 18984,\n  \"culin\": 14772,\n  \"culinary</w>\": 16466,\n  \"cull\": 21880,\n  \"cull</w>\": 42061,\n  \"cullen</w>\": 25973,\n  \"culmin\": 33778,\n  \"culo\": 36305,\n  \"culprit</w>\": 41593,\n  \"cult</w>\": 11965,\n  \"cultiv\": 16781,\n  \"cultivate</w>\": 42983,\n  \"cultivated</w>\": 48901,\n  \"cultivation</w>\": 41539,\n  \"cultur\": 20780,\n  \"cultural\": 34908,\n  \"cultural</w>\": 6753,\n  \"culturally</w>\": 36783,\n  \"culture\": 20197,\n  \"culture</w>\": 3673,\n  \"cultured</w>\": 40176,\n  \"cultures</w>\": 19552,\n  \"culver</w>\": 42103,\n  \"cum\": 20142,\n  \"cum</w>\": 27119,\n  \"cumb\": 10858,\n  \"cumber\": 15309,\n  \"cumberbatch</w>\": 27541,\n  \"cumberland</w>\": 28747,\n  \"cumbri\": 32010,\n  \"cumbria</w>\": 17953,\n  \"cumin</w>\": 42285,\n  \"cumple</w>\": 47050,\n  \"cumul\": 42961,\n  \"cumulative</w>\": 47610,\n  \"cumulus</w>\": 46313,\n  \"cun\": 12423,\n  \"cun</w>\": 29532,\n  \"cunningham</w>\": 25321,\n  \"cuomo</w>\": 25681,\n  \"cup\": 5059,\n  \"cup</w>\": 1937,\n  \"cupboard</w>\": 32074,\n  \"cupcake</w>\": 17025,\n  \"cupcakes</w>\": 12747,\n  \"cupid</w>\": 34885,\n  \"cuppa</w>\": 28077,\n  \"cups</w>\": 11463,\n  \"cur\": 1092,\n  \"cur</w>\": 33073,\n  \"curated</w>\": 20341,\n  \"curator</w>\": 20753,\n  \"curb</w>\": 21931,\n  \"curd</w>\": 38881,\n  \"cure\": 36758,\n  \"cure</w>\": 9088,\n  \"cured</w>\": 26248,\n  \"cures</w>\": 38204,\n  \"curfew</w>\": 48826,\n  \"curi\": 12640,\n  \"curing</w>\": 44169,\n  \"curiosity</w>\": 21583,\n  \"curious</w>\": 9865,\n  \"curl</w>\": 24306,\n  \"curled</w>\": 43734,\n  \"curling</w>\": 18543,\n  \"curls</w>\": 24340,\n  \"curly</w>\": 20795,\n  \"curran</w>\": 40999,\n  \"currant</w>\": 43501,\n  \"curren\": 6142,\n  \"currencies</w>\": 23530,\n  \"currency</w>\": 7853,\n  \"current</w>\": 3653,\n  \"currently</w>\": 3792,\n  \"currents</w>\": 35450,\n  \"curric\": 16201,\n  \"curriculum</w>\": 17947,\n  \"currie</w>\": 39385,\n  \"curry\": 49285,\n  \"curry</w>\": 8051,\n  \"curse</w>\": 18479,\n  \"cursed</w>\": 26408,\n  \"cursor</w>\": 46546,\n  \"curt</w>\": 38137,\n  \"curtain</w>\": 17223,\n  \"curtains</w>\": 30223,\n  \"curti\": 39925,\n  \"curtis</w>\": 13808,\n  \"curve</w>\": 15792,\n  \"curved</w>\": 25789,\n  \"curves</w>\": 22814,\n  \"curvy</w>\": 45788,\n  \"cus</w>\": 2736,\n  \"cusa</w>\": 47414,\n  \"cuse</w>\": 37950,\n  \"cush\": 43731,\n  \"cushi\": 15333,\n  \"cushion</w>\": 20853,\n  \"cushions</w>\": 34163,\n  \"cussion</w>\": 16658,\n  \"cussions</w>\": 46853,\n  \"cust\": 20900,\n  \"custard</w>\": 26516,\n  \"custo\": 4376,\n  \"custody</w>\": 16176,\n  \"custom\": 2662,\n  \"custom</w>\": 4996,\n  \"custome\": 41323,\n  \"customer\": 24035,\n  \"customer</w>\": 5102,\n  \"customerexperience</w>\": 45167,\n  \"customers</w>\": 5528,\n  \"customerservice</w>\": 40611,\n  \"customiz\": 41793,\n  \"customizable</w>\": 48253,\n  \"customization</w>\": 48244,\n  \"customize</w>\": 32179,\n  \"customized</w>\": 23229,\n  \"customs</w>\": 16880,\n  \"cut\": 10511,\n  \"cut</w>\": 3032,\n  \"cute\": 16031,\n  \"cute</w>\": 2242,\n  \"cuteness</w>\": 19342,\n  \"cuter</w>\": 27151,\n  \"cutest</w>\": 8032,\n  \"cuth\": 44328,\n  \"cutie</w>\": 10733,\n  \"cuties\": 40939,\n  \"cuties</w>\": 23420,\n  \"cutiesaturday</w>\": 41883,\n  \"cutler</w>\": 40428,\n  \"cutlery</w>\": 49073,\n  \"cutout</w>\": 45016,\n  \"cuts</w>\": 7435,\n  \"cutt\": 27338,\n  \"cutt</w>\": 47647,\n  \"cutter</w>\": 19719,\n  \"cutters</w>\": 44783,\n  \"cutting</w>\": 7266,\n  \"cuz</w>\": 9215,\n  \"cv\": 13531,\n  \"cv</w>\": 13947,\n  \"cvs</w>\": 29603,\n  \"cw\": 10652,\n  \"cw</w>\": 11065,\n  \"cwc</w>\": 19179,\n  \"cwgc</w>\": 48527,\n  \"cws</w>\": 45186,\n  \"cx\": 44457,\n  \"cx</w>\": 14283,\n  \"cy\": 1470,\n  \"cy</w>\": 1678,\n  \"cyber\": 5830,\n  \"cyber</w>\": 10210,\n  \"cybercrime</w>\": 41772,\n  \"cybermonday</w>\": 36578,\n  \"cyberpunk</w>\": 36896,\n  \"cybersecurity</w>\": 10581,\n  \"cyborg</w>\": 36650,\n  \"cycl\": 9791,\n  \"cycle\": 19083,\n  \"cycle</w>\": 5072,\n  \"cycled</w>\": 31055,\n  \"cycles</w>\": 14605,\n  \"cycli\": 12201,\n  \"cycling\": 26353,\n  \"cycling</w>\": 6321,\n  \"cyclist</w>\": 20686,\n  \"cyclists</w>\": 20303,\n  \"cyclo\": 18122,\n  \"cyclone\": 48094,\n  \"cyclone</w>\": 20917,\n  \"cyclones</w>\": 34669,\n  \"cylin\": 18569,\n  \"cylinder</w>\": 22092,\n  \"cylinders</w>\": 48888,\n  \"cymb\": 36677,\n  \"cymru</w>\": 24005,\n  \"cyn\": 14324,\n  \"cynthi\": 41994,\n  \"cynthia</w>\": 23748,\n  \"cyp\": 14809,\n  \"cypress</w>\": 25347,\n  \"cypri\": 36481,\n  \"cyprus</w>\": 15263,\n  \"cyril</w>\": 36028,\n  \"cyrus</w>\": 14204,\n  \"cystic</w>\": 46131,\n  \"cyto\": 31864,\n  \"cz\": 22898,\n  \"cz</w>\": 22921,\n  \"cze\": 12152,\n  \"czech\": 43151,\n  \"czech</w>\": 16141,\n  \"cÃ©\": 36454,\n  \"cÃ©</w>\": 18317,\n  \"d\": 67,\n  \"d</w>\": 323,\n  \"da\": 925,\n  \"da</w>\": 1140,\n  \"daa</w>\": 32642,\n  \"daan</w>\": 44814,\n  \"dab\": 10413,\n  \"dab</w>\": 22900,\n  \"dac\": 16222,\n  \"dac</w>\": 27478,\n  \"daca</w>\": 28477,\n  \"dach\": 34166,\n  \"dachsh\": 41641,\n  \"dachshund</w>\": 42720,\n  \"dad\": 4346,\n  \"dad</w>\": 2639,\n  \"dada</w>\": 31325,\n  \"daddy\": 29466,\n  \"daddy</w>\": 6546,\n  \"dade</w>\": 23299,\n  \"dades</w>\": 28289,\n  \"dads</w>\": 12741,\n  \"dae\": 23358,\n  \"dae</w>\": 15422,\n  \"daener\": 46934,\n  \"daes\": 47282,\n  \"daesh</w>\": 35047,\n  \"daf\": 9972,\n  \"daf</w>\": 36704,\n  \"daffodils</w>\": 44769,\n  \"daft</w>\": 36347,\n  \"dag\": 11434,\n  \"dag</w>\": 25650,\n  \"dagger</w>\": 34251,\n  \"dah\": 16976,\n  \"dah</w>\": 11776,\n  \"dahl\": 45816,\n  \"dahl</w>\": 22621,\n  \"dahlia</w>\": 41768,\n  \"dai\": 13559,\n  \"dai</w>\": 10632,\n  \"dail\": 14676,\n  \"dailies</w>\": 21260,\n  \"daily\": 6689,\n  \"daily</w>\": 2873,\n  \"dailynews</w>\": 43466,\n  \"dailys\": 43160,\n  \"dailysketch</w>\": 46738,\n  \"daim\": 40421,\n  \"dain\": 32222,\n  \"dain</w>\": 28315,\n  \"daipur</w>\": 47631,\n  \"dair\": 19998,\n  \"dair</w>\": 42078,\n  \"dairy\": 25243,\n  \"dairy</w>\": 10302,\n  \"dairyfree</w>\": 49366,\n  \"dais\": 10502,\n  \"daisi\": 39947,\n  \"daisies</w>\": 40654,\n  \"daisy\": 39310,\n  \"daisy</w>\": 12865,\n  \"dak\": 6999,\n  \"dak</w>\": 16095,\n  \"dakar</w>\": 31137,\n  \"dakota\": 38522,\n  \"dakota</w>\": 12358,\n  \"dal\": 2476,\n  \"dal</w>\": 5601,\n  \"dala</w>\": 42675,\n  \"dalai</w>\": 41222,\n  \"dalail\": 35169,\n  \"dalailama</w>\": 35849,\n  \"dale\": 11533,\n  \"dale</w>\": 4677,\n  \"dalejr</w>\": 38207,\n  \"dales</w>\": 29031,\n  \"daley</w>\": 28544,\n  \"dalgo</w>\": 43614,\n  \"dali\": 36735,\n  \"dali</w>\": 25703,\n  \"dalit</w>\": 45432,\n  \"dall</w>\": 43631,\n  \"dalla\": 16772,\n  \"dallas\": 27414,\n  \"dallas</w>\": 5759,\n  \"dallascowboys</w>\": 33016,\n  \"dalmati\": 44275,\n  \"dalton</w>\": 21488,\n  \"daly</w>\": 24873,\n  \"dam\": 1880,\n  \"dam</w>\": 4926,\n  \"damage</w>\": 6822,\n  \"damaged</w>\": 13568,\n  \"damages</w>\": 28842,\n  \"damaging</w>\": 20610,\n  \"damas\": 23345,\n  \"damascus</w>\": 25396,\n  \"dame</w>\": 10069,\n  \"dames</w>\": 44548,\n  \"dami\": 17783,\n  \"damian\": 43307,\n  \"damian</w>\": 25375,\n  \"damien</w>\": 25090,\n  \"dammit</w>\": 31057,\n  \"damn\": 37409,\n  \"damn</w>\": 4451,\n  \"damned</w>\": 28428,\n  \"damon\": 48503,\n  \"damon</w>\": 18244,\n  \"damp</w>\": 26520,\n  \"dams</w>\": 37680,\n  \"dan\": 2257,\n  \"dan</w>\": 2284,\n  \"dana\": 44834,\n  \"dana</w>\": 13777,\n  \"danao</w>\": 38598,\n  \"danc\": 3945,\n  \"dance\": 10619,\n  \"dance</w>\": 2724,\n  \"danced</w>\": 32891,\n  \"dancehall</w>\": 33300,\n  \"dancer</w>\": 11400,\n  \"dancers</w>\": 13153,\n  \"dances</w>\": 24083,\n  \"dancing\": 33280,\n  \"dancing</w>\": 6226,\n  \"dand\": 12593,\n  \"dandelion</w>\": 38903,\n  \"dandy</w>\": 31932,\n  \"dane</w>\": 19330,\n  \"danes</w>\": 47477,\n  \"dang\": 4283,\n  \"dang</w>\": 14992,\n  \"danger\": 20083,\n  \"danger</w>\": 11212,\n  \"dangerous</w>\": 7350,\n  \"dangerously</w>\": 35012,\n  \"dangers</w>\": 23726,\n  \"dangle</w>\": 39907,\n  \"dani\": 3001,\n  \"dani</w>\": 17009,\n  \"daniel\": 7859,\n  \"daniel</w>\": 4981,\n  \"daniela</w>\": 44466,\n  \"danielle\": 30396,\n  \"danielle</w>\": 15292,\n  \"danielpadilla</w>\": 34702,\n  \"daniels</w>\": 16146,\n  \"danish</w>\": 15467,\n  \"dank</w>\": 31849,\n  \"dann\": 11951,\n  \"danny\": 14950,\n  \"danny</w>\": 7621,\n  \"dano</w>\": 29703,\n  \"dans</w>\": 16241,\n  \"dant\": 48097,\n  \"dant</w>\": 28237,\n  \"dante</w>\": 21911,\n  \"danube</w>\": 44594,\n  \"dany</w>\": 47816,\n  \"dao</w>\": 36099,\n  \"dap\": 12149,\n  \"dap</w>\": 38034,\n  \"daph\": 24591,\n  \"daphne</w>\": 31687,\n  \"dapl</w>\": 34478,\n  \"dapp\": 46857,\n  \"dapper</w>\": 26071,\n  \"daq</w>\": 25381,\n  \"dar\": 1377,\n  \"dar</w>\": 6242,\n  \"dara</w>\": 17064,\n  \"darby</w>\": 34366,\n  \"darcy</w>\": 32916,\n  \"dare\": 14833,\n  \"dare</w>\": 9863,\n  \"daredevil</w>\": 28849,\n  \"dares</w>\": 42973,\n  \"dareto\": 46794,\n  \"dari\": 16292,\n  \"dari</w>\": 14552,\n  \"daria</w>\": 45622,\n  \"daries</w>\": 18184,\n  \"daring</w>\": 28166,\n  \"dario</w>\": 33918,\n  \"darius</w>\": 32606,\n  \"darje\": 49089,\n  \"dark\": 5724,\n  \"dark</w>\": 3144,\n  \"darker</w>\": 18737,\n  \"darkest</w>\": 25898,\n  \"darkness</w>\": 10521,\n  \"darling</w>\": 13048,\n  \"darlings</w>\": 39961,\n  \"darlington</w>\": 34565,\n  \"darn</w>\": 26059,\n  \"darrell</w>\": 33522,\n  \"darren\": 20263,\n  \"darren</w>\": 12275,\n  \"darry\": 29200,\n  \"darryl</w>\": 35359,\n  \"darshan</w>\": 34564,\n  \"dart\": 14001,\n  \"dart</w>\": 19841,\n  \"darth\": 41304,\n  \"darth</w>\": 23164,\n  \"dartmoor</w>\": 31477,\n  \"dartmouth</w>\": 29667,\n  \"darts</w>\": 15246,\n  \"darwin\": 43013,\n  \"darwin</w>\": 20926,\n  \"daryl\": 45607,\n  \"daryl</w>\": 24532,\n  \"das\": 9940,\n  \"das</w>\": 7359,\n  \"dash\": 13858,\n  \"dash</w>\": 10206,\n  \"dashboard</w>\": 27679,\n  \"dashi\": 12876,\n  \"dashing</w>\": 33825,\n  \"dat\": 1717,\n  \"dat</w>\": 9445,\n  \"data\": 14876,\n  \"data</w>\": 2281,\n  \"datab\": 11941,\n  \"database</w>\": 14678,\n  \"databases</w>\": 48384,\n  \"datac\": 27329,\n  \"datacenter</w>\": 40133,\n  \"datasci\": 14496,\n  \"datascience</w>\": 15748,\n  \"dataviz</w>\": 28138,\n  \"date\": 34300,\n  \"date</w>\": 1524,\n  \"dated</w>\": 13564,\n  \"dates</w>\": 7228,\n  \"dating</w>\": 8534,\n  \"dation</w>\": 15311,\n  \"datlantic\": 34270,\n  \"dato</w>\": 36075,\n  \"dats</w>\": 48674,\n  \"dau\": 3162,\n  \"dau</w>\": 33828,\n  \"daugh\": 42523,\n  \"daughter</w>\": 3944,\n  \"daughters</w>\": 13585,\n  \"daun\": 29470,\n  \"dav\": 3700,\n  \"dav</w>\": 46488,\n  \"davao</w>\": 31502,\n  \"dave\": 10089,\n  \"dave</w>\": 5077,\n  \"daven\": 28350,\n  \"davenport</w>\": 34624,\n  \"davey</w>\": 33391,\n  \"davi\": 1732,\n  \"david\": 4640,\n  \"david</w>\": 2259,\n  \"davidbowie</w>\": 44448,\n  \"davido</w>\": 35989,\n  \"davids</w>\": 46695,\n  \"davidson</w>\": 13166,\n  \"davies</w>\": 13120,\n  \"davin\": 43187,\n  \"davis\": 24426,\n  \"davis</w>\": 5536,\n  \"davison</w>\": 43725,\n  \"davos</w>\": 31887,\n  \"davy</w>\": 41565,\n  \"daw\": 5971,\n  \"daw</w>\": 24404,\n  \"dawg</w>\": 18660,\n  \"dawgs</w>\": 26431,\n  \"dawn\": 30590,\n  \"dawn</w>\": 7689,\n  \"dawson</w>\": 18611,\n  \"dax</w>\": 29458,\n  \"day\": 1405,\n  \"day</w>\": 575,\n  \"daya</w>\": 38165,\n  \"daybreak</w>\": 33862,\n  \"daycare</w>\": 36363,\n  \"daydream</w>\": 41587,\n  \"dayin\": 20332,\n  \"daylight</w>\": 20809,\n  \"dayo\": 29856,\n  \"dayo</w>\": 46605,\n  \"dayof\": 16272,\n  \"dayofthe\": 38043,\n  \"days</w>\": 1161,\n  \"daysof\": 12379,\n  \"daysofcode</w>\": 36537,\n  \"daysto\": 29886,\n  \"daystogo</w>\": 42198,\n  \"dayswild</w>\": 42052,\n  \"daytime</w>\": 22830,\n  \"dayton\": 35729,\n  \"dayton</w>\": 20262,\n  \"daytona</w>\": 16335,\n  \"dayweekend</w>\": 44526,\n  \"dayz</w>\": 35949,\n  \"daz\": 15449,\n  \"daz</w>\": 43844,\n  \"daze</w>\": 33591,\n  \"dazz\": 17149,\n  \"dazzle</w>\": 41164,\n  \"dazzling</w>\": 28821,\n  \"db\": 19100,\n  \"db</w>\": 8128,\n  \"dbacks</w>\": 31175,\n  \"dbs</w>\": 40558,\n  \"dbz</w>\": 49226,\n  \"dc\": 5074,\n  \"dc</w>\": 2743,\n  \"dca</w>\": 49107,\n  \"dcc</w>\": 33747,\n  \"dccomics</w>\": 17610,\n  \"dcfc</w>\": 35526,\n  \"dci</w>\": 35336,\n  \"dcs</w>\": 42878,\n  \"dcu</w>\": 42647,\n  \"dd\": 1353,\n  \"dd</w>\": 3766,\n  \"dda</w>\": 35202,\n  \"ddad</w>\": 39049,\n  \"dday\": 32689,\n  \"dday</w>\": 26243,\n  \"ddc</w>\": 48513,\n  \"ddd</w>\": 24183,\n  \"dddd</w>\": 35362,\n  \"dden</w>\": 5013,\n  \"dder</w>\": 9300,\n  \"dders</w>\": 24827,\n  \"ddi</w>\": 44450,\n  \"ddin</w>\": 17175,\n  \"dding\": 48101,\n  \"dding</w>\": 8974,\n  \"ddings</w>\": 49106,\n  \"ddington</w>\": 29238,\n  \"ddle\": 17633,\n  \"ddle</w>\": 8357,\n  \"ddled</w>\": 38392,\n  \"ddles</w>\": 33901,\n  \"ddleston</w>\": 25647,\n  \"ddling</w>\": 30981,\n  \"ddlovato</w>\": 28244,\n  \"ddos</w>\": 46463,\n  \"ddr</w>\": 26027,\n  \"dds</w>\": 48334,\n  \"ddu</w>\": 43836,\n  \"ddy\": 14981,\n  \"ddy</w>\": 7876,\n  \"de\": 561,\n  \"de</w>\": 654,\n  \"dea</w>\": 18477,\n  \"deacon</w>\": 29155,\n  \"dead\": 3906,\n  \"dead</w>\": 2747,\n  \"deadliest</w>\": 40811,\n  \"deadline\": 47209,\n  \"deadline</w>\": 8458,\n  \"deadlines</w>\": 44959,\n  \"deadly</w>\": 10756,\n  \"deadpool</w>\": 21471,\n  \"deaf\": 28229,\n  \"deaf</w>\": 18358,\n  \"deal\": 7249,\n  \"deal</w>\": 2696,\n  \"dealer</w>\": 15218,\n  \"dealers</w>\": 21697,\n  \"dealership</w>\": 32096,\n  \"dealing</w>\": 13138,\n  \"deals</w>\": 4469,\n  \"dealt</w>\": 30101,\n  \"dean\": 13807,\n  \"dean</w>\": 5828,\n  \"deandre</w>\": 43635,\n  \"deans</w>\": 46852,\n  \"dear\": 15696,\n  \"dear</w>\": 3817,\n  \"dearest</w>\": 24880,\n  \"dearly</w>\": 31880,\n  \"deas</w>\": 34715,\n  \"death\": 7163,\n  \"death</w>\": 2767,\n  \"deaths</w>\": 12253,\n  \"deau</w>\": 12399,\n  \"deaux</w>\": 19883,\n  \"deb\": 2987,\n  \"deb</w>\": 25687,\n  \"debat\": 32082,\n  \"debate</w>\": 5196,\n  \"debates</w>\": 19239,\n  \"debating</w>\": 23472,\n  \"debbie\": 47186,\n  \"debbie</w>\": 16735,\n  \"debit</w>\": 32410,\n  \"debor\": 16738,\n  \"deborah\": 40997,\n  \"deborah</w>\": 22150,\n  \"debra</w>\": 33233,\n  \"debris</w>\": 19208,\n  \"debt</w>\": 8932,\n  \"debts</w>\": 38770,\n  \"debu\": 9790,\n  \"debun\": 33123,\n  \"debut\": 42608,\n  \"debut</w>\": 4085,\n  \"debuted</w>\": 25215,\n  \"debuting</w>\": 34817,\n  \"debuts</w>\": 17044,\n  \"dec\": 3063,\n  \"dec</w>\": 4628,\n  \"deca</w>\": 33428,\n  \"decad\": 29914,\n  \"decade</w>\": 11099,\n  \"decadent</w>\": 41716,\n  \"decades</w>\": 10488,\n  \"decal</w>\": 26678,\n  \"decals</w>\": 37606,\n  \"decan\": 40677,\n  \"decat\": 35334,\n  \"decath\": 47455,\n  \"decatur</w>\": 38540,\n  \"decay</w>\": 22703,\n  \"dece\": 3534,\n  \"deceased</w>\": 30035,\n  \"december</w>\": 3864,\n  \"decent</w>\": 10698,\n  \"decentr\": 28960,\n  \"decentralized</w>\": 38485,\n  \"decep\": 33529,\n  \"deception</w>\": 33046,\n  \"deci\": 2262,\n  \"decide</w>\": 8447,\n  \"decided</w>\": 4939,\n  \"decides</w>\": 17269,\n  \"deciding</w>\": 22513,\n  \"decision</w>\": 5575,\n  \"decisions</w>\": 9903,\n  \"decisive</w>\": 28690,\n  \"deck\": 24885,\n  \"deck</w>\": 6943,\n  \"decked</w>\": 39096,\n  \"decker</w>\": 21449,\n  \"decks</w>\": 23968,\n  \"decl\": 7091,\n  \"decla\": 10739,\n  \"declan</w>\": 42341,\n  \"declar\": 18040,\n  \"declaration</w>\": 19714,\n  \"declare</w>\": 19856,\n  \"declared</w>\": 13845,\n  \"declares</w>\": 23641,\n  \"declaring</w>\": 33273,\n  \"decline</w>\": 15084,\n  \"declined</w>\": 28911,\n  \"declines</w>\": 40478,\n  \"declining</w>\": 29221,\n  \"deco\": 26412,\n  \"deco</w>\": 16422,\n  \"decor\": 5148,\n  \"decor</w>\": 6928,\n  \"decorate</w>\": 23651,\n  \"decorated</w>\": 15917,\n  \"decorating</w>\": 16968,\n  \"decoration</w>\": 16029,\n  \"decorations</w>\": 19158,\n  \"decorative</w>\": 19289,\n  \"decre\": 12284,\n  \"decrease</w>\": 24703,\n  \"decreased</w>\": 33913,\n  \"decreasing</w>\": 43763,\n  \"decree</w>\": 43327,\n  \"ded\": 16744,\n  \"ded</w>\": 1241,\n  \"dedic\": 4701,\n  \"dedicate</w>\": 27610,\n  \"dedicated</w>\": 6770,\n  \"dedication</w>\": 10188,\n  \"dedly</w>\": 36204,\n  \"deduc\": 22799,\n  \"dee\": 5268,\n  \"dee</w>\": 6705,\n  \"deed</w>\": 30260,\n  \"deeds</w>\": 24516,\n  \"deejay\": 48304,\n  \"deejay</w>\": 44511,\n  \"deemed</w>\": 28102,\n  \"deen\": 26456,\n  \"deen</w>\": 12912,\n  \"deep\": 5462,\n  \"deep</w>\": 3383,\n  \"deepak</w>\": 45528,\n  \"deeper</w>\": 15224,\n  \"deepest</w>\": 22245,\n  \"deephouse</w>\": 35684,\n  \"deepi\": 19371,\n  \"deepika</w>\": 34120,\n  \"deepikap\": 29903,\n  \"deepikapadukone</w>\": 30646,\n  \"deeplear\": 22181,\n  \"deeplearning</w>\": 24362,\n  \"deeply</w>\": 11449,\n  \"deer\": 19454,\n  \"deer</w>\": 8700,\n  \"deere</w>\": 32901,\n  \"dees</w>\": 12547,\n  \"deets</w>\": 35537,\n  \"def\": 2044,\n  \"def</w>\": 11649,\n  \"defam\": 35670,\n  \"defamation</w>\": 42741,\n  \"default</w>\": 21650,\n  \"defe\": 4148,\n  \"defeat</w>\": 8477,\n  \"defeated</w>\": 8927,\n  \"defeating</w>\": 22594,\n  \"defeats</w>\": 16317,\n  \"defect</w>\": 44013,\n  \"defects</w>\": 37485,\n  \"defen\": 3619,\n  \"defence\": 30307,\n  \"defence</w>\": 9659,\n  \"defend\": 21970,\n  \"defend</w>\": 11397,\n  \"defended</w>\": 27161,\n  \"defender</w>\": 10618,\n  \"defenders</w>\": 20063,\n  \"defending</w>\": 13098,\n  \"defends</w>\": 20134,\n  \"defense\": 45875,\n  \"defense</w>\": 6021,\n  \"defenseman</w>\": 43714,\n  \"defenses</w>\": 49198,\n  \"defensive</w>\": 10824,\n  \"defi\": 17244,\n  \"defiance</w>\": 36186,\n  \"defiant</w>\": 47597,\n  \"defibrill\": 47684,\n  \"defic\": 18022,\n  \"defici\": 23387,\n  \"deficiency</w>\": 30685,\n  \"deficit</w>\": 20156,\n  \"defin\": 3188,\n  \"define</w>\": 14919,\n  \"defined</w>\": 15278,\n  \"defines</w>\": 28218,\n  \"defining</w>\": 20504,\n  \"definite</w>\": 40793,\n  \"definitely</w>\": 4824,\n  \"definition</w>\": 11405,\n  \"definitive</w>\": 25298,\n  \"defl\": 31467,\n  \"deforestation</w>\": 41330,\n  \"defstar</w>\": 36427,\n  \"defy</w>\": 39148,\n  \"defying</w>\": 38496,\n  \"deg</w>\": 38498,\n  \"degra\": 28939,\n  \"degradation</w>\": 44468,\n  \"degre\": 4653,\n  \"degree</w>\": 7119,\n  \"degrees</w>\": 8000,\n  \"deh</w>\": 35582,\n  \"dei\": 33833,\n  \"dei</w>\": 23279,\n  \"deir\": 42948,\n  \"deity</w>\": 42574,\n  \"deja</w>\": 46902,\n  \"dek</w>\": 23901,\n  \"dekalb</w>\": 37775,\n  \"del\": 1233,\n  \"del</w>\": 2003,\n  \"dela</w>\": 37986,\n  \"delaney</w>\": 31528,\n  \"delav\": 23706,\n  \"delavin\": 40477,\n  \"delavin</w>\": 40776,\n  \"delavinkisses</w>\": 40631,\n  \"delaware</w>\": 17547,\n  \"delay\": 12955,\n  \"delay</w>\": 10934,\n  \"delayed</w>\": 14567,\n  \"delaying</w>\": 43781,\n  \"delays</w>\": 11232,\n  \"dele\": 7922,\n  \"dele</w>\": 33431,\n  \"delec\": 38615,\n  \"delectable</w>\": 45500,\n  \"deleg\": 8046,\n  \"delegate</w>\": 27259,\n  \"delegates</w>\": 14623,\n  \"delegation</w>\": 14632,\n  \"delete</w>\": 19204,\n  \"deleted</w>\": 16588,\n  \"deleting</w>\": 41857,\n  \"delft</w>\": 42749,\n  \"delgado</w>\": 49182,\n  \"delhi\": 26723,\n  \"delhi</w>\": 5717,\n  \"deli\": 1932,\n  \"deli</w>\": 18601,\n  \"delia</w>\": 33193,\n  \"deliber\": 18316,\n  \"deliberate</w>\": 38271,\n  \"deliberately</w>\": 35163,\n  \"delic\": 13366,\n  \"delicacy</w>\": 49181,\n  \"delicate</w>\": 18768,\n  \"delici\": 19993,\n  \"delicious</w>\": 3959,\n  \"deliciously</w>\": 39589,\n  \"deliciousness</w>\": 42819,\n  \"delight\": 46165,\n  \"delight</w>\": 13073,\n  \"delighted</w>\": 5943,\n  \"delightful</w>\": 15513,\n  \"delights</w>\": 25330,\n  \"deline</w>\": 18797,\n  \"delines</w>\": 13562,\n  \"delish</w>\": 25093,\n  \"deliver\": 19561,\n  \"deliver</w>\": 7396,\n  \"delivered</w>\": 7278,\n  \"deliveries</w>\": 29336,\n  \"delivering</w>\": 9943,\n  \"delivers</w>\": 11753,\n  \"delivery</w>\": 5619,\n  \"dell\": 24381,\n  \"dell</w>\": 10242,\n  \"della</w>\": 22986,\n  \"delle</w>\": 35963,\n  \"deloit\": 29428,\n  \"deloitte</w>\": 38667,\n  \"dels</w>\": 48636,\n  \"delta\": 32250,\n  \"delta</w>\": 8768,\n  \"delu\": 18779,\n  \"delusional</w>\": 48059,\n  \"delux\": 13709,\n  \"deluxe</w>\": 14056,\n  \"delve</w>\": 46008,\n  \"dely</w>\": 15040,\n  \"dem\": 3251,\n  \"dem</w>\": 7825,\n  \"dema\": 40268,\n  \"dema</w>\": 45046,\n  \"deman</w>\": 48366,\n  \"demand\": 13072,\n  \"demand</w>\": 5650,\n  \"demanded</w>\": 33699,\n  \"demanding</w>\": 17099,\n  \"demands</w>\": 14241,\n  \"demar</w>\": 46566,\n  \"demarcus</w>\": 47873,\n  \"demb\": 35930,\n  \"demdebate</w>\": 43973,\n  \"deme\": 25143,\n  \"demean\": 37376,\n  \"demen\": 12604,\n  \"dementi\": 46028,\n  \"dementia</w>\": 14047,\n  \"demetri\": 39553,\n  \"demi\": 32879,\n  \"demi</w>\": 14480,\n  \"demise</w>\": 28756,\n  \"demo\": 2930,\n  \"demo</w>\": 7380,\n  \"democr\": 3573,\n  \"democracy</w>\": 7758,\n  \"democrat</w>\": 15431,\n  \"democratic</w>\": 9149,\n  \"democrats</w>\": 8865,\n  \"demographic</w>\": 31308,\n  \"demol\": 19382,\n  \"demolished</w>\": 26537,\n  \"demolition</w>\": 22237,\n  \"demon\": 5635,\n  \"demon</w>\": 12085,\n  \"demonetisation</w>\": 41338,\n  \"demonic</w>\": 46920,\n  \"demons</w>\": 18388,\n  \"demonstr\": 8579,\n  \"demonstrate</w>\": 22231,\n  \"demonstrated</w>\": 29477,\n  \"demonstrates</w>\": 24806,\n  \"demonstrating</w>\": 22107,\n  \"demonstration</w>\": 16722,\n  \"demonstrations</w>\": 33964,\n  \"demonstrators</w>\": 46450,\n  \"demos</w>\": 19304,\n  \"demp\": 22490,\n  \"dempsey</w>\": 30188,\n  \"dems</w>\": 10989,\n  \"demsin\": 42664,\n  \"demsinphilly</w>\": 43091,\n  \"den\": 1177,\n  \"den</w>\": 1181,\n  \"dena</w>\": 32431,\n  \"denali</w>\": 48076,\n  \"dence</w>\": 3370,\n  \"dency</w>\": 11659,\n  \"dend\": 37447,\n  \"dends</w>\": 43985,\n  \"dene</w>\": 45128,\n  \"dened</w>\": 19571,\n  \"deng\": 43098,\n  \"deng</w>\": 41788,\n  \"dengue</w>\": 41932,\n  \"denham</w>\": 39180,\n  \"deni\": 21995,\n  \"denial</w>\": 25716,\n  \"denied</w>\": 15780,\n  \"denies</w>\": 19565,\n  \"denim</w>\": 13606,\n  \"denis\": 47630,\n  \"denis</w>\": 18750,\n  \"denise\": 45900,\n  \"denise</w>\": 20899,\n  \"denmark</w>\": 13268,\n  \"dennis\": 32738,\n  \"dennis</w>\": 10534,\n  \"denny</w>\": 26808,\n  \"denomin\": 41016,\n  \"dens</w>\": 16533,\n  \"dense</w>\": 19353,\n  \"density</w>\": 22431,\n  \"dent\": 3593,\n  \"dent</w>\": 1258,\n  \"dental\": 24635,\n  \"dental</w>\": 8382,\n  \"dentally</w>\": 10346,\n  \"dented</w>\": 21923,\n  \"denti\": 4418,\n  \"dential</w>\": 5459,\n  \"dentist</w>\": 17816,\n  \"dentistry</w>\": 25754,\n  \"dently</w>\": 28817,\n  \"denton</w>\": 23567,\n  \"dents</w>\": 1517,\n  \"denver\": 27847,\n  \"denver</w>\": 8569,\n  \"deny</w>\": 18679,\n  \"denying</w>\": 32771,\n  \"denzel</w>\": 42503,\n  \"deo\": 26406,\n  \"deo</w>\": 12121,\n  \"deodor\": 47639,\n  \"deol</w>\": 41902,\n  \"deon\": 31466,\n  \"deon</w>\": 16079,\n  \"dep\": 6079,\n  \"dep</w>\": 24370,\n  \"depar\": 10794,\n  \"depart\": 5343,\n  \"depart</w>\": 30649,\n  \"departed</w>\": 32541,\n  \"departing</w>\": 26902,\n  \"department</w>\": 5744,\n  \"departments</w>\": 29523,\n  \"departs</w>\": 38998,\n  \"departure</w>\": 17850,\n  \"depe\": 36118,\n  \"depend\": 13894,\n  \"depend</w>\": 27371,\n  \"dependence</w>\": 40243,\n  \"dependent</w>\": 23280,\n  \"depending</w>\": 23673,\n  \"depends</w>\": 20497,\n  \"depic\": 11307,\n  \"depicted</w>\": 34637,\n  \"depicting</w>\": 24970,\n  \"depiction</w>\": 31071,\n  \"depicts</w>\": 29340,\n  \"deple\": 38504,\n  \"deplo\": 9356,\n  \"deplor\": 39232,\n  \"deploy</w>\": 26944,\n  \"deployed</w>\": 20009,\n  \"deploying</w>\": 42212,\n  \"deployment</w>\": 20183,\n  \"depo\": 14276,\n  \"depor\": 36110,\n  \"deport\": 23389,\n  \"deportation</w>\": 36617,\n  \"deported</w>\": 39320,\n  \"deportes</w>\": 47878,\n  \"depos\": 21266,\n  \"deposit</w>\": 16775,\n  \"deposits</w>\": 30740,\n  \"depot</w>\": 12589,\n  \"depp</w>\": 24941,\n  \"depre\": 7107,\n  \"depress\": 38869,\n  \"depressed</w>\": 23269,\n  \"depressing</w>\": 29235,\n  \"depression</w>\": 10023,\n  \"depri\": 28587,\n  \"depriv\": 45809,\n  \"deprivation</w>\": 47810,\n  \"deprived</w>\": 39140,\n  \"dept</w>\": 9201,\n  \"depth</w>\": 10350,\n  \"depths</w>\": 28855,\n  \"depu\": 6912,\n  \"deputies</w>\": 24914,\n  \"deputy</w>\": 7932,\n  \"der\": 839,\n  \"der</w>\": 801,\n  \"dera</w>\": 20696,\n  \"derail\": 48502,\n  \"derby\": 13904,\n  \"derby</w>\": 7177,\n  \"derbyshire</w>\": 22147,\n  \"derdale</w>\": 21513,\n  \"dere\": 5701,\n  \"dere</w>\": 44194,\n  \"dered</w>\": 3776,\n  \"derek\": 22461,\n  \"derek</w>\": 11205,\n  \"derel\": 46728,\n  \"derer</w>\": 11289,\n  \"derers</w>\": 20882,\n  \"deri\": 34573,\n  \"derick</w>\": 33908,\n  \"dering</w>\": 6076,\n  \"deriv\": 33458,\n  \"derived</w>\": 26461,\n  \"derland</w>\": 35488,\n  \"derman</w>\": 29740,\n  \"dermatology</w>\": 48051,\n  \"dern</w>\": 30086,\n  \"dero\": 37203,\n  \"dero</w>\": 34026,\n  \"derrick</w>\": 21798,\n  \"derry\": 45777,\n  \"derry</w>\": 20535,\n  \"ders\": 37307,\n  \"ders</w>\": 1923,\n  \"derson</w>\": 12677,\n  \"dery</w>\": 17172,\n  \"des\": 6797,\n  \"des</w>\": 1437,\n  \"desai</w>\": 35316,\n  \"desc\": 13866,\n  \"descen\": 32318,\n  \"descend\": 26004,\n  \"descend</w>\": 46241,\n  \"descendants</w>\": 36323,\n  \"descending</w>\": 36620,\n  \"descent</w>\": 19375,\n  \"desch\": 49209,\n  \"descri\": 4637,\n  \"describe</w>\": 10967,\n  \"described</w>\": 14671,\n  \"describes</w>\": 13678,\n  \"describing</w>\": 24239,\n  \"descrip\": 41832,\n  \"description</w>\": 13951,\n  \"descriptions</w>\": 40653,\n  \"desde</w>\": 42218,\n  \"dese\": 27195,\n  \"deser\": 3659,\n  \"desert\": 45776,\n  \"desert</w>\": 7301,\n  \"deserted</w>\": 41560,\n  \"deserve</w>\": 7043,\n  \"deserved</w>\": 10061,\n  \"deserves</w>\": 9079,\n  \"deserving</w>\": 26615,\n  \"desh\": 25320,\n  \"desh</w>\": 7448,\n  \"deshi</w>\": 42769,\n  \"desi\": 6772,\n  \"desi</w>\": 26635,\n  \"desig\": 1250,\n  \"design\": 8359,\n  \"design</w>\": 1681,\n  \"designated</w>\": 24119,\n  \"designation</w>\": 41155,\n  \"designed</w>\": 4486,\n  \"designer\": 35640,\n  \"designer</w>\": 5728,\n  \"designers</w>\": 12720,\n  \"designing</w>\": 13467,\n  \"designs</w>\": 6747,\n  \"designthinking</w>\": 32450,\n  \"desirable</w>\": 32368,\n  \"desire</w>\": 11858,\n  \"desired</w>\": 28631,\n  \"desires</w>\": 27598,\n  \"desk\": 11937,\n  \"desk</w>\": 6550,\n  \"desks</w>\": 41014,\n  \"desktop</w>\": 14345,\n  \"desmond</w>\": 27821,\n  \"desol\": 41258,\n  \"desp\": 3642,\n  \"despair</w>\": 28097,\n  \"desper\": 10144,\n  \"desperate</w>\": 15072,\n  \"desperately</w>\": 21993,\n  \"despic\": 32442,\n  \"despicable</w>\": 37158,\n  \"despite</w>\": 5325,\n  \"dess\": 7096,\n  \"dess</w>\": 10001,\n  \"dessert</w>\": 9753,\n  \"desserts</w>\": 22948,\n  \"desses</w>\": 43913,\n  \"dest\": 6540,\n  \"dest</w>\": 4549,\n  \"destin\": 4934,\n  \"destination\": 32191,\n  \"destination</w>\": 9179,\n  \"destinations</w>\": 16981,\n  \"destined</w>\": 28525,\n  \"destiny\": 39875,\n  \"destiny</w>\": 10867,\n  \"destro\": 8287,\n  \"destroy\": 8308,\n  \"destroy</w>\": 11930,\n  \"destroyed</w>\": 9965,\n  \"destroyer</w>\": 25291,\n  \"destroying</w>\": 19613,\n  \"destroys</w>\": 27634,\n  \"destruc\": 22945,\n  \"destruction</w>\": 14281,\n  \"destructive</w>\": 29591,\n  \"det\": 28966,\n  \"det</w>\": 15366,\n  \"deta\": 1914,\n  \"detached</w>\": 26252,\n  \"detail</w>\": 7657,\n  \"detailed</w>\": 12609,\n  \"detailing</w>\": 23163,\n  \"details</w>\": 2353,\n  \"detained</w>\": 20260,\n  \"dete\": 5606,\n  \"detec\": 17991,\n  \"detect</w>\": 22744,\n  \"detected</w>\": 26988,\n  \"detecting</w>\": 41290,\n  \"detection</w>\": 16220,\n  \"detective</w>\": 13672,\n  \"detectives</w>\": 27994,\n  \"detector</w>\": 27689,\n  \"detectors</w>\": 45063,\n  \"detention</w>\": 16908,\n  \"deter\": 10742,\n  \"deter</w>\": 47458,\n  \"detergent</w>\": 46726,\n  \"deterior\": 28512,\n  \"determin\": 8325,\n  \"determination</w>\": 17410,\n  \"determine</w>\": 16768,\n  \"determined</w>\": 14371,\n  \"determines</w>\": 42192,\n  \"determining</w>\": 39884,\n  \"deth</w>\": 38375,\n  \"deto\": 39710,\n  \"deton\": 39335,\n  \"detour</w>\": 31211,\n  \"detox</w>\": 22459,\n  \"detri\": 47951,\n  \"detro\": 6210,\n  \"detroit\": 19404,\n  \"detroit</w>\": 7073,\n  \"detta</w>\": 45438,\n  \"dette</w>\": 35750,\n  \"deu\": 21457,\n  \"deuce</w>\": 45332,\n  \"deus</w>\": 37625,\n  \"deut\": 14970,\n  \"deutsch\": 30389,\n  \"deutsche</w>\": 32760,\n  \"deutschland</w>\": 36878,\n  \"deux</w>\": 47089,\n  \"dev\": 2797,\n  \"dev</w>\": 3670,\n  \"deva</w>\": 45179,\n  \"devan\": 37072,\n  \"devast\": 12913,\n  \"devastated</w>\": 29865,\n  \"devastating</w>\": 19280,\n  \"devastation</w>\": 42452,\n  \"devel\": 1820,\n  \"develop\": 1966,\n  \"develop</w>\": 7708,\n  \"developed</w>\": 8763,\n  \"developer</w>\": 10929,\n  \"developers</w>\": 13248,\n  \"developing</w>\": 8131,\n  \"development</w>\": 2855,\n  \"developmental</w>\": 29347,\n  \"developments</w>\": 17393,\n  \"develops</w>\": 29895,\n  \"deven\": 45537,\n  \"devgn</w>\": 29871,\n  \"devi\": 12926,\n  \"devi</w>\": 20717,\n  \"deviant\": 25593,\n  \"deviantart</w>\": 26046,\n  \"device</w>\": 8163,\n  \"devices</w>\": 9067,\n  \"devil\": 8894,\n  \"devil</w>\": 8043,\n  \"deville</w>\": 34329,\n  \"devils</w>\": 11683,\n  \"devin\": 31193,\n  \"devin</w>\": 20996,\n  \"devine</w>\": 33019,\n  \"devlin</w>\": 48040,\n  \"devo\": 11861,\n  \"devo</w>\": 43444,\n  \"devon\": 16205,\n  \"devon</w>\": 10046,\n  \"devops</w>\": 21504,\n  \"devos</w>\": 40646,\n  \"devote\": 37777,\n  \"devoted</w>\": 24561,\n  \"devotees</w>\": 39759,\n  \"devotion</w>\": 25821,\n  \"devotional</w>\": 35456,\n  \"devs</w>\": 27374,\n  \"dew\": 31952,\n  \"dew</w>\": 16358,\n  \"dewey</w>\": 40399,\n  \"dex\": 10030,\n  \"dex</w>\": 13790,\n  \"dexpo</w>\": 42502,\n  \"dexter\": 45049,\n  \"dexter</w>\": 22781,\n  \"dey</w>\": 11829,\n  \"dez\": 23190,\n  \"dez</w>\": 8122,\n  \"df\": 12908,\n  \"df</w>\": 10468,\n  \"dfc</w>\": 41903,\n  \"dfs</w>\": 32880,\n  \"dfw</w>\": 20439,\n  \"dg\": 2394,\n  \"dg</w>\": 9742,\n  \"dgate</w>\": 41684,\n  \"dge\": 4016,\n  \"dge</w>\": 1360,\n  \"dged</w>\": 11830,\n  \"dgeon</w>\": 45655,\n  \"dgers</w>\": 8733,\n  \"dges</w>\": 5432,\n  \"dging</w>\": 9565,\n  \"dh\": 6669,\n  \"dh</w>\": 9960,\n  \"dha\": 11629,\n  \"dha</w>\": 27377,\n  \"dhabi</w>\": 22349,\n  \"dhaka</w>\": 32877,\n  \"dham\": 29635,\n  \"dham</w>\": 30838,\n  \"dhan\": 12542,\n  \"dhan</w>\": 28569,\n  \"dhanush\": 26162,\n  \"dhanush</w>\": 36200,\n  \"dhanushkraja</w>\": 29266,\n  \"dhar\": 12397,\n  \"dharma</w>\": 30536,\n  \"dhary</w>\": 28706,\n  \"dhawan</w>\": 44699,\n  \"dhe\": 29706,\n  \"dheim</w>\": 44280,\n  \"dhi\": 31553,\n  \"dhi</w>\": 26166,\n  \"dho\": 37834,\n  \"dhoni</w>\": 25698,\n  \"dhru\": 40257,\n  \"dhry</w>\": 39960,\n  \"dhs</w>\": 26849,\n  \"dhu\": 32387,\n  \"di\": 570,\n  \"di</w>\": 1618,\n  \"dia\": 7351,\n  \"dia</w>\": 3357,\n  \"diab\": 15954,\n  \"diabe\": 19167,\n  \"diabete\": 43826,\n  \"diabetes</w>\": 10319,\n  \"diabetic</w>\": 30230,\n  \"diablo</w>\": 23931,\n  \"diag\": 6851,\n  \"diagno\": 7736,\n  \"diagnose</w>\": 44429,\n  \"diagnosed</w>\": 16979,\n  \"diagnosis</w>\": 15715,\n  \"diagnostic</w>\": 26351,\n  \"diagnostics</w>\": 37723,\n  \"diagram</w>\": 22697,\n  \"dial\": 18416,\n  \"dial</w>\": 11381,\n  \"dialo\": 30709,\n  \"dialog</w>\": 48945,\n  \"dialogue</w>\": 11288,\n  \"dialogues</w>\": 40330,\n  \"dialysis</w>\": 44798,\n  \"diam\": 4347,\n  \"diameter</w>\": 27189,\n  \"diamon\": 8873,\n  \"diamond\": 18535,\n  \"diamond</w>\": 6235,\n  \"diamonds</w>\": 12687,\n  \"dian\": 16021,\n  \"dian</w>\": 4998,\n  \"diana</w>\": 12803,\n  \"diane</w>\": 15855,\n  \"dianne</w>\": 42299,\n  \"dians</w>\": 21041,\n  \"diaper</w>\": 34382,\n  \"diapers</w>\": 39659,\n  \"diar\": 25932,\n  \"diaries</w>\": 15541,\n  \"diary</w>\": 10380,\n  \"dias\": 22137,\n  \"dias</w>\": 29354,\n  \"diaspora</w>\": 28390,\n  \"diaz</w>\": 17688,\n  \"dic\": 1404,\n  \"dic</w>\": 6717,\n  \"dicap\": 30023,\n  \"dicaprio</w>\": 30755,\n  \"dice</w>\": 14406,\n  \"dick\": 14413,\n  \"dick</w>\": 9554,\n  \"dickens</w>\": 33421,\n  \"dict\": 45360,\n  \"dict</w>\": 15159,\n  \"dictat\": 26156,\n  \"dictator</w>\": 27399,\n  \"dictatorship</w>\": 37989,\n  \"dictionary</w>\": 19699,\n  \"did\": 1861,\n  \"did</w>\": 1335,\n  \"diddy</w>\": 33527,\n  \"didi</w>\": 34396,\n  \"didier</w>\": 45614,\n  \"didn</w>\": 2376,\n  \"didnt</w>\": 13057,\n  \"dido</w>\": 31725,\n  \"didyou\": 12295,\n  \"didyouknow</w>\": 12506,\n  \"die\": 3150,\n  \"die</w>\": 2082,\n  \"diec\": 27729,\n  \"diecast</w>\": 37936,\n  \"died</w>\": 3622,\n  \"diego\": 30940,\n  \"diego</w>\": 6306,\n  \"diem</w>\": 45571,\n  \"dience</w>\": 33686,\n  \"dient</w>\": 27231,\n  \"dier\": 29702,\n  \"dier</w>\": 16394,\n  \"dies\": 20104,\n  \"dies</w>\": 1862,\n  \"diesel\": 46312,\n  \"diesel</w>\": 10591,\n  \"diest</w>\": 45739,\n  \"diet\": 21295,\n  \"diet</w>\": 6582,\n  \"dietary</w>\": 29009,\n  \"dietrich</w>\": 47005,\n  \"diets</w>\": 35173,\n  \"dif\": 18656,\n  \"dif</w>\": 48731,\n  \"diff\": 44073,\n  \"diff</w>\": 20331,\n  \"diffe\": 1967,\n  \"differ</w>\": 34620,\n  \"differen\": 14903,\n  \"difference</w>\": 4731,\n  \"differences</w>\": 14003,\n  \"different</w>\": 2731,\n  \"differenti\": 21729,\n  \"differential</w>\": 34027,\n  \"differentiate</w>\": 49032,\n  \"differently</w>\": 18325,\n  \"diffic\": 6140,\n  \"difficult</w>\": 7405,\n  \"difficulties</w>\": 23468,\n  \"difficulty</w>\": 25245,\n  \"diffu\": 31603,\n  \"diffuser</w>\": 49400,\n  \"dig\": 1831,\n  \"dig</w>\": 9887,\n  \"dige\": 17820,\n  \"digest</w>\": 20413,\n  \"digestion</w>\": 40533,\n  \"digestive</w>\": 32304,\n  \"digg\": 43240,\n  \"digger</w>\": 35919,\n  \"diggin</w>\": 48466,\n  \"digging</w>\": 14971,\n  \"digi\": 15627,\n  \"digi</w>\": 39361,\n  \"digimon</w>\": 44181,\n  \"digit\": 14899,\n  \"digit</w>\": 27472,\n  \"digital\": 4704,\n  \"digital</w>\": 2794,\n  \"digitalart</w>\": 16987,\n  \"digitalhealth</w>\": 32190,\n  \"digitalindia</w>\": 46630,\n  \"digitally</w>\": 27543,\n  \"digitalmarketing</w>\": 15299,\n  \"digitaltransformation</w>\": 20047,\n  \"digiti\": 25935,\n  \"digits</w>\": 31710,\n  \"digni\": 45532,\n  \"dignit\": 39497,\n  \"dignity</w>\": 17744,\n  \"digo</w>\": 35701,\n  \"digs</w>\": 26877,\n  \"dih</w>\": 43089,\n  \"dii</w>\": 32755,\n  \"dijk</w>\": 44444,\n  \"dik\": 38854,\n  \"dik</w>\": 37747,\n  \"dike</w>\": 42683,\n  \"dil\": 7643,\n  \"dil</w>\": 17942,\n  \"dile\": 25428,\n  \"dilemma</w>\": 29787,\n  \"dilig\": 30664,\n  \"dill\": 12318,\n  \"dill</w>\": 27206,\n  \"dillon</w>\": 21056,\n  \"dilu\": 45242,\n  \"dim\": 19576,\n  \"dim</w>\": 17523,\n  \"dime</w>\": 24443,\n  \"dimen\": 10935,\n  \"dimension</w>\": 20479,\n  \"dimensional</w>\": 25252,\n  \"dimensions</w>\": 25086,\n  \"diment</w>\": 43500,\n  \"dimes</w>\": 44888,\n  \"dimini\": 37459,\n  \"dimit\": 22250,\n  \"dimitri</w>\": 48840,\n  \"dimp\": 38853,\n  \"din\": 1462,\n  \"din</w>\": 5673,\n  \"dina</w>\": 36815,\n  \"dinah</w>\": 30903,\n  \"dine\": 20951,\n  \"dine</w>\": 12989,\n  \"diner</w>\": 16963,\n  \"dinesh</w>\": 48341,\n  \"ding\": 7545,\n  \"ding</w>\": 796,\n  \"dinger</w>\": 45580,\n  \"dingh\": 48064,\n  \"dings</w>\": 5473,\n  \"dington</w>\": 24804,\n  \"dinho</w>\": 47370,\n  \"dini</w>\": 20196,\n  \"dining</w>\": 8658,\n  \"dinner\": 27548,\n  \"dinner</w>\": 2571,\n  \"dinners</w>\": 33570,\n  \"dino\": 9692,\n  \"dino</w>\": 14077,\n  \"dinosa\": 18955,\n  \"dinosaur</w>\": 15095,\n  \"dinosaurs</w>\": 20387,\n  \"dio\": 3779,\n  \"dio</w>\": 1521,\n  \"dioce\": 20763,\n  \"diocese</w>\": 27091,\n  \"dion\": 42899,\n  \"dion</w>\": 16250,\n  \"dior</w>\": 23655,\n  \"dios</w>\": 37563,\n  \"dious</w>\": 27417,\n  \"dioxide</w>\": 38102,\n  \"dip\": 19918,\n  \"dip</w>\": 11343,\n  \"dipl\": 8490,\n  \"diplo</w>\": 38115,\n  \"diplom\": 11169,\n  \"diploma</w>\": 21251,\n  \"diplomacy</w>\": 23798,\n  \"diplomat</w>\": 32828,\n  \"diplomatic</w>\": 23782,\n  \"diplomats</w>\": 44126,\n  \"dipped</w>\": 30610,\n  \"dipper</w>\": 49317,\n  \"dipping</w>\": 33544,\n  \"dips</w>\": 37522,\n  \"dir\": 4251,\n  \"dir</w>\": 8478,\n  \"dire\": 38355,\n  \"dire</w>\": 25664,\n  \"direc\": 1534,\n  \"direct\": 43224,\n  \"direct</w>\": 6016,\n  \"directed</w>\": 8392,\n  \"directing</w>\": 21817,\n  \"direction\": 15923,\n  \"direction</w>\": 5407,\n  \"directional</w>\": 38687,\n  \"directioner</w>\": 48042,\n  \"directioners</w>\": 22055,\n  \"directions</w>\": 16440,\n  \"directive</w>\": 40630,\n  \"directly</w>\": 9701,\n  \"director\": 20337,\n  \"director</w>\": 2681,\n  \"directorial</w>\": 45327,\n  \"directors</w>\": 11940,\n  \"directory</w>\": 25272,\n  \"directs</w>\": 34349,\n  \"directv</w>\": 48652,\n  \"dirk</w>\": 28171,\n  \"dirt\": 31415,\n  \"dirt</w>\": 11795,\n  \"dirty\": 20127,\n  \"dirty</w>\": 7615,\n  \"dis\": 1518,\n  \"dis</w>\": 6112,\n  \"disa\": 3882,\n  \"disab\": 47380,\n  \"disabilities</w>\": 17350,\n  \"disability\": 48986,\n  \"disability</w>\": 13261,\n  \"disabled</w>\": 13613,\n  \"disadvantaged</w>\": 40577,\n  \"disagree</w>\": 23199,\n  \"disapp\": 5384,\n  \"disappear\": 21148,\n  \"disappear</w>\": 25173,\n  \"disappearance</w>\": 35929,\n  \"disappeared</w>\": 23139,\n  \"disappearing</w>\": 35819,\n  \"disappears</w>\": 44406,\n  \"disappo\": 7605,\n  \"disappoint</w>\": 25446,\n  \"disappointed</w>\": 13794,\n  \"disappointing</w>\": 21941,\n  \"disappointment</w>\": 23884,\n  \"disappoints</w>\": 48545,\n  \"disappro\": 48276,\n  \"disar\": 42971,\n  \"disaster</w>\": 9072,\n  \"disasters</w>\": 26976,\n  \"disastrous</w>\": 35790,\n  \"disc\": 1472,\n  \"disc</w>\": 10712,\n  \"discar\": 40532,\n  \"discarded</w>\": 45197,\n  \"discer\": 49140,\n  \"dischar\": 22671,\n  \"discharge</w>\": 32485,\n  \"disci\": 9559,\n  \"discip\": 38951,\n  \"discipl\": 10467,\n  \"disciples</w>\": 39366,\n  \"disciplinary</w>\": 20232,\n  \"discipline</w>\": 18903,\n  \"disciplines</w>\": 42032,\n  \"discla\": 40248,\n  \"disclaimer</w>\": 46465,\n  \"disclo\": 17481,\n  \"disclose</w>\": 46379,\n  \"disclosed</w>\": 30905,\n  \"disclosure</w>\": 26502,\n  \"disco\": 2475,\n  \"disco</w>\": 11964,\n  \"discography</w>\": 47545,\n  \"discomfort</w>\": 48054,\n  \"discord</w>\": 23582,\n  \"discoun\": 18515,\n  \"discount</w>\": 7638,\n  \"discounted</w>\": 20993,\n  \"discounts</w>\": 18186,\n  \"discoura\": 45850,\n  \"discourse</w>\": 29441,\n  \"discover\": 10539,\n  \"discover</w>\": 4834,\n  \"discovered</w>\": 6986,\n  \"discoveries</w>\": 29308,\n  \"discovering</w>\": 17967,\n  \"discovers</w>\": 29719,\n  \"discovery\": 40491,\n  \"discovery</w>\": 8027,\n  \"discre\": 20616,\n  \"discrimin\": 11721,\n  \"discrimination</w>\": 14775,\n  \"discs</w>\": 29270,\n  \"discu\": 1984,\n  \"discus</w>\": 41828,\n  \"discuss</w>\": 4312,\n  \"discussed</w>\": 11300,\n  \"discusses</w>\": 8116,\n  \"discussing</w>\": 5900,\n  \"discussion</w>\": 5060,\n  \"discussions</w>\": 13806,\n  \"dise\": 4262,\n  \"disease</w>\": 5336,\n  \"diseases</w>\": 12035,\n  \"disen\": 46468,\n  \"disgrace</w>\": 29877,\n  \"disgraceful</w>\": 44146,\n  \"disgu\": 9793,\n  \"disguise</w>\": 27803,\n  \"disguised</w>\": 37149,\n  \"disgusted</w>\": 41977,\n  \"disgusting</w>\": 16218,\n  \"dish\": 11039,\n  \"dish</w>\": 4531,\n  \"disha</w>\": 42498,\n  \"dishes</w>\": 11412,\n  \"dishon\": 30777,\n  \"dishu</w>\": 44728,\n  \"dishwasher</w>\": 40524,\n  \"disin\": 19484,\n  \"disinfe\": 48050,\n  \"disintegr\": 49275,\n  \"disk</w>\": 17970,\n  \"dislike</w>\": 30796,\n  \"dism\": 30836,\n  \"dism</w>\": 38821,\n  \"dismant\": 36557,\n  \"dismiss</w>\": 43287,\n  \"dismissal</w>\": 42068,\n  \"dismissed</w>\": 30087,\n  \"dismisses</w>\": 45238,\n  \"disney\": 6729,\n  \"disney</w>\": 4696,\n  \"disneyland\": 39481,\n  \"disneyland</w>\": 13661,\n  \"disneyworld</w>\": 28469,\n  \"diso\": 26305,\n  \"disobe\": 42841,\n  \"dison</w>\": 19310,\n  \"disorder</w>\": 12635,\n  \"disorders</w>\": 17114,\n  \"disp\": 11073,\n  \"dispar\": 24633,\n  \"disparities</w>\": 45122,\n  \"dispat\": 28652,\n  \"dispatch</w>\": 26306,\n  \"dispen\": 19077,\n  \"dispenser</w>\": 40116,\n  \"disper\": 34499,\n  \"displa\": 9326,\n  \"displac\": 17718,\n  \"displaced</w>\": 22817,\n  \"displacement</w>\": 37931,\n  \"display</w>\": 4456,\n  \"displayed</w>\": 18967,\n  \"displaying</w>\": 26468,\n  \"displays</w>\": 15648,\n  \"dispo\": 13651,\n  \"dispon\": 38872,\n  \"disponible</w>\": 46130,\n  \"dispos\": 45177,\n  \"disposable</w>\": 37275,\n  \"disposal</w>\": 28231,\n  \"dispro\": 32927,\n  \"dispropor\": 40354,\n  \"disproportion\": 45492,\n  \"disregard</w>\": 43869,\n  \"disrespect</w>\": 34055,\n  \"disrespectful</w>\": 41723,\n  \"disru\": 13763,\n  \"disrup\": 14641,\n  \"disrupt</w>\": 25214,\n  \"disrupted</w>\": 46674,\n  \"disrupting</w>\": 42419,\n  \"disruption</w>\": 19635,\n  \"disruptive</w>\": 31554,\n  \"diss\": 10766,\n  \"diss</w>\": 35688,\n  \"dissec\": 43879,\n  \"dissemin\": 40463,\n  \"dissent</w>\": 45154,\n  \"disser\": 25560,\n  \"dissertation</w>\": 29448,\n  \"dissi\": 25088,\n  \"dissol\": 27398,\n  \"dissuper</w>\": 33461,\n  \"dist\": 5479,\n  \"dist</w>\": 12116,\n  \"distance</w>\": 7964,\n  \"distances</w>\": 37078,\n  \"distant</w>\": 18949,\n  \"distill\": 41586,\n  \"distilled</w>\": 49179,\n  \"distillery</w>\": 22200,\n  \"distin\": 11892,\n  \"distinct</w>\": 25056,\n  \"distinction</w>\": 28183,\n  \"distinctive</w>\": 25486,\n  \"distingui\": 15053,\n  \"distinguish</w>\": 45418,\n  \"distinguished</w>\": 16513,\n  \"distor\": 23781,\n  \"distortion</w>\": 43690,\n  \"distr\": 11885,\n  \"distract</w>\": 39309,\n  \"distracted</w>\": 24049,\n  \"distraction</w>\": 32039,\n  \"distress</w>\": 26866,\n  \"distressed</w>\": 37515,\n  \"distri\": 5987,\n  \"distribu\": 6138,\n  \"distribute</w>\": 32313,\n  \"distributed</w>\": 16419,\n  \"distributing</w>\": 35216,\n  \"distribution</w>\": 10484,\n  \"distributor</w>\": 28354,\n  \"distributors</w>\": 44240,\n  \"distric\": 3208,\n  \"district\": 46683,\n  \"district</w>\": 3506,\n  \"districts</w>\": 17565,\n  \"distur\": 11732,\n  \"disturb\": 33018,\n  \"disturb</w>\": 39449,\n  \"disturbance</w>\": 42416,\n  \"disturbed</w>\": 29967,\n  \"disturbing</w>\": 21476,\n  \"disupdates</w>\": 45667,\n  \"dit\": 5752,\n  \"dit</w>\": 2524,\n  \"dita</w>\": 47965,\n  \"ditch\": 43715,\n  \"ditch</w>\": 19291,\n  \"dited</w>\": 40392,\n  \"diti\": 2363,\n  \"dition\": 16452,\n  \"dition</w>\": 3015,\n  \"ditional</w>\": 4322,\n  \"ditions</w>\": 4503,\n  \"dito</w>\": 43705,\n  \"dits</w>\": 49374,\n  \"dity</w>\": 16436,\n  \"dium</w>\": 2903,\n  \"div\": 5293,\n  \"div</w>\": 14869,\n  \"diva</w>\": 13605,\n  \"divas</w>\": 23534,\n  \"dive\": 26042,\n  \"dive</w>\": 9058,\n  \"diver\": 13119,\n  \"diver</w>\": 22094,\n  \"divergence</w>\": 48735,\n  \"divergent</w>\": 36132,\n  \"divers\": 30241,\n  \"divers</w>\": 27038,\n  \"diverse</w>\": 11464,\n  \"diversi\": 24475,\n  \"diversion</w>\": 38457,\n  \"diversity\": 35634,\n  \"diversity</w>\": 6257,\n  \"diverted</w>\": 41049,\n  \"dives</w>\": 13893,\n  \"divi\": 8375,\n  \"divid\": 31337,\n  \"divide</w>\": 18842,\n  \"divided</w>\": 18689,\n  \"dividend</w>\": 32067,\n  \"dividends</w>\": 45146,\n  \"dividing</w>\": 45605,\n  \"divin\": 21838,\n  \"divine\": 46919,\n  \"divine</w>\": 10976,\n  \"diving</w>\": 9886,\n  \"divinity</w>\": 39754,\n  \"divisi\": 39196,\n  \"division</w>\": 5378,\n  \"divisional</w>\": 40912,\n  \"divisions</w>\": 33715,\n  \"divor\": 13543,\n  \"divorce</w>\": 17060,\n  \"divorced</w>\": 39437,\n  \"divya</w>\": 47767,\n  \"diwali</w>\": 18218,\n  \"dix\": 45838,\n  \"dix</w>\": 27620,\n  \"dixie</w>\": 24484,\n  \"dixit</w>\": 28279,\n  \"dixon</w>\": 16086,\n  \"diy\": 28472,\n  \"diy</w>\": 7845,\n  \"diya</w>\": 36459,\n  \"diz</w>\": 32740,\n  \"dized</w>\": 36232,\n  \"dizz\": 40239,\n  \"dizzy</w>\": 35464,\n  \"dj\": 3761,\n  \"dj</w>\": 3723,\n  \"djan\": 35338,\n  \"django</w>\": 46498,\n  \"dji\": 35284,\n  \"dji</w>\": 28379,\n  \"djing</w>\": 36113,\n  \"djo\": 19432,\n  \"djoker\": 42721,\n  \"djokernole</w>\": 42830,\n  \"djokovic</w>\": 27944,\n  \"djs</w>\": 18117,\n  \"dk\": 20702,\n  \"dk</w>\": 16196,\n  \"dl\": 12558,\n  \"dl</w>\": 9373,\n  \"dlc</w>\": 19079,\n  \"dle\": 11057,\n  \"dle</w>\": 3287,\n  \"dled</w>\": 23494,\n  \"dler</w>\": 40279,\n  \"dles</w>\": 7890,\n  \"dless</w>\": 14997,\n  \"dley</w>\": 12808,\n  \"dling</w>\": 18221,\n  \"dly</w>\": 3069,\n  \"dm\": 19070,\n  \"dm</w>\": 4667,\n  \"dma</w>\": 42903,\n  \"dman</w>\": 18826,\n  \"dmc</w>\": 28991,\n  \"dmit\": 31607,\n  \"dmitry</w>\": 48326,\n  \"dms</w>\": 19955,\n  \"dmv</w>\": 27508,\n  \"dmx</w>\": 45255,\n  \"dn\": 11552,\n  \"dn</w>\": 7459,\n  \"dna</w>\": 8790,\n  \"dnb</w>\": 35422,\n  \"dnc</w>\": 20237,\n  \"dnd</w>\": 11678,\n  \"dnr</w>\": 37051,\n  \"dns</w>\": 39245,\n  \"dnt</w>\": 26795,\n  \"do\": 639,\n  \"do</w>\": 818,\n  \"doa</w>\": 48332,\n  \"dob\": 29640,\n  \"doba</w>\": 35605,\n  \"dobbs</w>\": 43006,\n  \"dobson</w>\": 46888,\n  \"doc\": 3009,\n  \"doc</w>\": 7251,\n  \"doch</w>\": 25101,\n  \"dock\": 17311,\n  \"dock</w>\": 8997,\n  \"docked</w>\": 46784,\n  \"docker</w>\": 31152,\n  \"docking</w>\": 40845,\n  \"docks</w>\": 24091,\n  \"docs</w>\": 15157,\n  \"doctor\": 7872,\n  \"doctor</w>\": 5547,\n  \"doctoral</w>\": 23649,\n  \"doctorate</w>\": 39134,\n  \"doctors</w>\": 9705,\n  \"doctorwho</w>\": 12996,\n  \"doctr\": 28497,\n  \"doctrine</w>\": 35612,\n  \"docu\": 4433,\n  \"document\": 29293,\n  \"document</w>\": 15121,\n  \"documentaries</w>\": 44209,\n  \"documentary</w>\": 7881,\n  \"documentation</w>\": 31560,\n  \"documented</w>\": 22310,\n  \"documenting</w>\": 37876,\n  \"documents</w>\": 14105,\n  \"dod\": 13847,\n  \"dod</w>\": 30187,\n  \"dodd</w>\": 36748,\n  \"dodge\": 31263,\n  \"dodge</w>\": 12093,\n  \"dodgeball</w>\": 43244,\n  \"dodger</w>\": 31641,\n  \"dodgers</w>\": 12422,\n  \"dodgy</w>\": 37727,\n  \"doe</w>\": 13296,\n  \"does\": 2397,\n  \"does</w>\": 1897,\n  \"doesn</w>\": 2503,\n  \"doesnt</w>\": 17937,\n  \"dof\": 8277,\n  \"doff</w>\": 20193,\n  \"dofficial</w>\": 42516,\n  \"dog\": 4326,\n  \"dog</w>\": 1929,\n  \"dogcelebration</w>\": 41819,\n  \"dogday</w>\": 27475,\n  \"doge</w>\": 42187,\n  \"dogg</w>\": 20749,\n  \"doggie</w>\": 32237,\n  \"doggo</w>\": 42155,\n  \"doggy</w>\": 26359,\n  \"doglo\": 40733,\n  \"dogre\": 40030,\n  \"dogrescue</w>\": 44158,\n  \"dogs\": 42182,\n  \"dogs</w>\": 3255,\n  \"dogsoftwitter</w>\": 19415,\n  \"doh</w>\": 23581,\n  \"doha</w>\": 20908,\n  \"doherty</w>\": 31774,\n  \"doi</w>\": 36361,\n  \"doin</w>\": 15412,\n  \"doing\": 37408,\n  \"doing</w>\": 1960,\n  \"doit\": 32272,\n  \"doit</w>\": 28109,\n  \"doj</w>\": 25700,\n  \"dojo</w>\": 35901,\n  \"dok\": 40547,\n  \"dok</w>\": 41034,\n  \"doka</w>\": 46528,\n  \"dol\": 2287,\n  \"dol</w>\": 19170,\n  \"dola</w>\": 38005,\n  \"dolan</w>\": 27200,\n  \"dolby</w>\": 42414,\n  \"dolce\": 30033,\n  \"dolce</w>\": 30661,\n  \"dole</w>\": 41040,\n  \"doll\": 27031,\n  \"doll</w>\": 9286,\n  \"dollar\": 35092,\n  \"dollar</w>\": 7474,\n  \"dollars</w>\": 10669,\n  \"dolls</w>\": 15090,\n  \"dolly\": 43281,\n  \"dolly</w>\": 23821,\n  \"dolom\": 37137,\n  \"dolores</w>\": 40741,\n  \"dolph\": 8900,\n  \"dolph</w>\": 22257,\n  \"dolphin\": 42963,\n  \"dolphin</w>\": 16464,\n  \"dolphins</w>\": 14002,\n  \"dom\": 2164,\n  \"dom</w>\": 1919,\n  \"domain</w>\": 15492,\n  \"domaine</w>\": 48744,\n  \"domains</w>\": 36358,\n  \"dome\": 8515,\n  \"dome</w>\": 9827,\n  \"domen\": 37584,\n  \"domest\": 21936,\n  \"domestic\": 28189,\n  \"domestic</w>\": 9043,\n  \"domin\": 4361,\n  \"dominance</w>\": 30546,\n  \"dominant</w>\": 20565,\n  \"dominate</w>\": 21431,\n  \"dominated</w>\": 23048,\n  \"dominates</w>\": 34043,\n  \"dominating</w>\": 29303,\n  \"domination</w>\": 30919,\n  \"domingo</w>\": 24882,\n  \"dominic\": 39007,\n  \"dominic</w>\": 19095,\n  \"dominican</w>\": 22934,\n  \"dominion</w>\": 27155,\n  \"domino</w>\": 30752,\n  \"dominos</w>\": 39770,\n  \"domo</w>\": 44293,\n  \"doms</w>\": 30126,\n  \"don\": 1067,\n  \"don</w>\": 847,\n  \"dona</w>\": 26789,\n  \"donal\": 42375,\n  \"donald\": 5990,\n  \"donald</w>\": 4335,\n  \"donaldson</w>\": 37783,\n  \"donaldtrump</w>\": 6652,\n  \"donat\": 36384,\n  \"donate</w>\": 6429,\n  \"donated</w>\": 8705,\n  \"donates</w>\": 26960,\n  \"donating</w>\": 12621,\n  \"donation</w>\": 7924,\n  \"donations</w>\": 9928,\n  \"doncaster\": 38008,\n  \"doncaster</w>\": 25352,\n  \"doncasterisgreat</w>\": 47333,\n  \"done\": 5136,\n  \"done</w>\": 1700,\n  \"donegal</w>\": 24172,\n  \"donesia</w>\": 41281,\n  \"donet\": 33724,\n  \"donetsk</w>\": 33999,\n  \"dong\": 26242,\n  \"dong</w>\": 31478,\n  \"dongha\": 28365,\n  \"donghae</w>\": 28945,\n  \"donia</w>\": 24014,\n  \"donkey</w>\": 21415,\n  \"donkeys</w>\": 44644,\n  \"donna</w>\": 9158,\n  \"donne\": 30897,\n  \"donnein\": 38308,\n  \"donneinarte</w>\": 40193,\n  \"donnell</w>\": 35118,\n  \"donnelly</w>\": 39070,\n  \"donnie\": 47058,\n  \"donnie</w>\": 30609,\n  \"donny\": 37291,\n  \"donny</w>\": 32887,\n  \"dono\": 14840,\n  \"donor</w>\": 18013,\n  \"donors</w>\": 17887,\n  \"donovan</w>\": 21499,\n  \"dons</w>\": 22127,\n  \"dont\": 8094,\n  \"dont</w>\": 4632,\n  \"donut</w>\": 18471,\n  \"donuts</w>\": 13970,\n  \"doo\": 4543,\n  \"doo</w>\": 11643,\n  \"doodle</w>\": 9388,\n  \"doodled</w>\": 41030,\n  \"doodles</w>\": 22156,\n  \"doodling</w>\": 37548,\n  \"dooley</w>\": 47609,\n  \"doom\": 23263,\n  \"doom</w>\": 14344,\n  \"doomed</w>\": 33251,\n  \"doomsday</w>\": 41791,\n  \"doon</w>\": 36612,\n  \"doop</w>\": 33886,\n  \"door\": 7188,\n  \"door</w>\": 2489,\n  \"doors</w>\": 4228,\n  \"doorstep</w>\": 19533,\n  \"doorway</w>\": 46575,\n  \"dop\": 42381,\n  \"dop</w>\": 31722,\n  \"dope\": 42587,\n  \"dope</w>\": 10094,\n  \"doping</w>\": 30285,\n  \"dopp\": 21774,\n  \"doppelg\": 45216,\n  \"doppler</w>\": 42540,\n  \"dor\": 2766,\n  \"dor</w>\": 8695,\n  \"dora</w>\": 18104,\n  \"dorado</w>\": 32350,\n  \"dorchester</w>\": 32656,\n  \"dore</w>\": 39423,\n  \"dores</w>\": 34323,\n  \"dorf</w>\": 17296,\n  \"dori</w>\": 49270,\n  \"doria</w>\": 43186,\n  \"dorian</w>\": 44016,\n  \"doris</w>\": 24285,\n  \"dork</w>\": 36206,\n  \"dorm</w>\": 24263,\n  \"doro\": 15498,\n  \"doro</w>\": 37389,\n  \"dorothy</w>\": 20805,\n  \"dors</w>\": 31240,\n  \"dorset\": 42109,\n  \"dorset</w>\": 16047,\n  \"dorsey</w>\": 41607,\n  \"dortmund</w>\": 24290,\n  \"dory</w>\": 36135,\n  \"dos\": 44258,\n  \"dos</w>\": 5474,\n  \"dose</w>\": 11497,\n  \"doses</w>\": 37873,\n  \"dossier</w>\": 46042,\n  \"dost</w>\": 44222,\n  \"dot\": 7473,\n  \"dot</w>\": 7004,\n  \"dota</w>\": 23085,\n  \"dotcom</w>\": 12443,\n  \"dote</w>\": 31202,\n  \"dothis</w>\": 47864,\n  \"dotnet</w>\": 43124,\n  \"dotorg</w>\": 46587,\n  \"dots</w>\": 19019,\n  \"dotted</w>\": 47950,\n  \"dou\": 1756,\n  \"dou</w>\": 23608,\n  \"doub\": 19631,\n  \"double\": 13013,\n  \"double</w>\": 3200,\n  \"doubled</w>\": 24948,\n  \"doubleheader</w>\": 34668,\n  \"doubles</w>\": 12539,\n  \"doubling</w>\": 36850,\n  \"doubt\": 37071,\n  \"doubt</w>\": 8671,\n  \"doubts</w>\": 30894,\n  \"douche</w>\": 44292,\n  \"doug\": 20271,\n  \"doug</w>\": 10758,\n  \"dough\": 15785,\n  \"dough</w>\": 14983,\n  \"doughnut</w>\": 32555,\n  \"doughnuts</w>\": 31124,\n  \"dougie</w>\": 46317,\n  \"dougla\": 9140,\n  \"douglas</w>\": 10065,\n  \"douglass</w>\": 45692,\n  \"doun</w>\": 44785,\n  \"dov</w>\": 38856,\n  \"dova</w>\": 26551,\n  \"dove\": 27511,\n  \"dove</w>\": 18281,\n  \"dover\": 43019,\n  \"dover</w>\": 14683,\n  \"doves</w>\": 47067,\n  \"dow\": 8022,\n  \"dow</w>\": 10688,\n  \"dowell</w>\": 27344,\n  \"down\": 1833,\n  \"down</w>\": 1136,\n  \"downe</w>\": 46501,\n  \"downed</w>\": 35814,\n  \"downer</w>\": 42522,\n  \"downers</w>\": 43739,\n  \"downey</w>\": 29429,\n  \"downfall</w>\": 48702,\n  \"downhill</w>\": 27387,\n  \"downing</w>\": 28140,\n  \"download\": 35076,\n  \"download</w>\": 3794,\n  \"downloadable</w>\": 49105,\n  \"downloaded</w>\": 22961,\n  \"downloading</w>\": 30519,\n  \"downloads</w>\": 26481,\n  \"downpour</w>\": 39034,\n  \"downpours</w>\": 40160,\n  \"downs</w>\": 10706,\n  \"downside</w>\": 41937,\n  \"downstairs</w>\": 28174,\n  \"downstream</w>\": 43822,\n  \"downtime</w>\": 41964,\n  \"downton\": 45023,\n  \"downton</w>\": 42668,\n  \"downtown\": 18230,\n  \"downtown</w>\": 5061,\n  \"downward</w>\": 37430,\n  \"dowski</w>\": 43556,\n  \"dox\": 44786,\n  \"dox</w>\": 14510,\n  \"doyle</w>\": 17728,\n  \"doyou\": 27256,\n  \"doz</w>\": 31106,\n  \"dozen</w>\": 16401,\n  \"dozens</w>\": 17883,\n  \"dp\": 23820,\n  \"dp</w>\": 6465,\n  \"dprint</w>\": 46644,\n  \"dprinting</w>\": 16194,\n  \"dprk</w>\": 47920,\n  \"dps</w>\": 34288,\n  \"dq</w>\": 28741,\n  \"dr\": 1084,\n  \"dr</w>\": 1701,\n  \"dra\": 1114,\n  \"dra</w>\": 7402,\n  \"drac\": 20168,\n  \"dracing</w>\": 41253,\n  \"dracula</w>\": 25405,\n  \"draf\": 37426,\n  \"draft\": 30624,\n  \"draft</w>\": 5198,\n  \"drafted</w>\": 19129,\n  \"drafting</w>\": 33528,\n  \"drafts</w>\": 29194,\n  \"drag\": 8452,\n  \"drag</w>\": 12463,\n  \"dragged</w>\": 27884,\n  \"dragging</w>\": 37069,\n  \"dragon\": 9187,\n  \"dragon</w>\": 5471,\n  \"dragonball\": 40959,\n  \"dragoncon</w>\": 47802,\n  \"dragonfly</w>\": 32824,\n  \"dragons</w>\": 10203,\n  \"dragrace</w>\": 40762,\n  \"drags</w>\": 45368,\n  \"drain\": 23347,\n  \"drain</w>\": 19467,\n  \"drainage</w>\": 25953,\n  \"drained</w>\": 44630,\n  \"drains</w>\": 43638,\n  \"drainthe\": 47337,\n  \"drake\": 32504,\n  \"drake</w>\": 8958,\n  \"dral</w>\": 7503,\n  \"dram\": 6937,\n  \"dram</w>\": 32170,\n  \"drama</w>\": 5055,\n  \"dramas</w>\": 33467,\n  \"dramati\": 43512,\n  \"dramatic</w>\": 11240,\n  \"dramatically</w>\": 24495,\n  \"drank</w>\": 21712,\n  \"draped</w>\": 49113,\n  \"drastic</w>\": 43159,\n  \"drastically</w>\": 35478,\n  \"drau\": 18621,\n  \"draw\": 17675,\n  \"draw</w>\": 4001,\n  \"drawer</w>\": 23219,\n  \"drawers</w>\": 38975,\n  \"drawing\": 36996,\n  \"drawing</w>\": 3610,\n  \"drawings</w>\": 13397,\n  \"drawn</w>\": 8893,\n  \"draws</w>\": 12043,\n  \"dray\": 25562,\n  \"drayton</w>\": 49044,\n  \"drc</w>\": 21434,\n  \"dre\": 960,\n  \"dre</w>\": 14584,\n  \"dread\": 17412,\n  \"dread</w>\": 31403,\n  \"dreaded</w>\": 47227,\n  \"dreadful</w>\": 35846,\n  \"dreality</w>\": 48367,\n  \"dream\": 4595,\n  \"dream</w>\": 2984,\n  \"dreambig</w>\": 46495,\n  \"dreamcast</w>\": 47226,\n  \"dreamed</w>\": 27984,\n  \"dreamer</w>\": 25692,\n  \"dreamers</w>\": 27194,\n  \"dreaming</w>\": 11662,\n  \"dreamliner</w>\": 49143,\n  \"dreams</w>\": 4405,\n  \"dreamt</w>\": 43743,\n  \"dreamteam</w>\": 40090,\n  \"dreamy</w>\": 23517,\n  \"dred</w>\": 10903,\n  \"dredge</w>\": 48783,\n  \"dren\": 29068,\n  \"dren</w>\": 47309,\n  \"drenched</w>\": 46378,\n  \"dres\": 48852,\n  \"dres</w>\": 44697,\n  \"dresden</w>\": 34836,\n  \"dress\": 12622,\n  \"dress</w>\": 2595,\n  \"dressage</w>\": 36144,\n  \"dressed</w>\": 6559,\n  \"dresser</w>\": 26346,\n  \"dresses</w>\": 8184,\n  \"dressing</w>\": 6348,\n  \"drew\": 18792,\n  \"drew</w>\": 5281,\n  \"drex\": 33985,\n  \"drey\": 48271,\n  \"dri\": 1203,\n  \"dri</w>\": 28833,\n  \"drian</w>\": 36870,\n  \"dribb\": 42153,\n  \"dric</w>\": 23448,\n  \"dridge</w>\": 22956,\n  \"drie</w>\": 40170,\n  \"dried</w>\": 16037,\n  \"drier</w>\": 39877,\n  \"dries</w>\": 33857,\n  \"drif\": 33585,\n  \"drift</w>\": 18194,\n  \"drifting</w>\": 30276,\n  \"drill</w>\": 11626,\n  \"drilled</w>\": 46338,\n  \"drilling</w>\": 18634,\n  \"drills</w>\": 24378,\n  \"drin\": 3375,\n  \"drin</w>\": 47133,\n  \"drink\": 14131,\n  \"drink</w>\": 3979,\n  \"drinking</w>\": 5778,\n  \"drinklocal</w>\": 45998,\n  \"drinks</w>\": 6732,\n  \"drip</w>\": 24050,\n  \"dripping</w>\": 38787,\n  \"dris</w>\": 35804,\n  \"drive\": 11402,\n  \"drive</w>\": 2620,\n  \"driven</w>\": 9314,\n  \"driver\": 27563,\n  \"driver</w>\": 4383,\n  \"driverless</w>\": 46769,\n  \"drivers</w>\": 7384,\n  \"drives</w>\": 11441,\n  \"driveway</w>\": 26273,\n  \"driving\": 37800,\n  \"driving</w>\": 4161,\n  \"drizzle</w>\": 28240,\n  \"drm</w>\": 39674,\n  \"dro\": 1494,\n  \"dro</w>\": 12442,\n  \"drogba</w>\": 49199,\n  \"droid</w>\": 38016,\n  \"drome</w>\": 9157,\n  \"dron\": 43898,\n  \"dron</w>\": 23360,\n  \"drone\": 33557,\n  \"drone</w>\": 9397,\n  \"drones</w>\": 14006,\n  \"droo\": 30715,\n  \"drool</w>\": 41554,\n  \"drooling</w>\": 44360,\n  \"drop\": 16407,\n  \"drop</w>\": 3387,\n  \"dropbox</w>\": 47216,\n  \"dropped</w>\": 6792,\n  \"dropping</w>\": 8339,\n  \"drops</w>\": 6437,\n  \"dros</w>\": 47033,\n  \"drou\": 38558,\n  \"drought</w>\": 13935,\n  \"drove</w>\": 13753,\n  \"drow\": 21159,\n  \"drown</w>\": 28571,\n  \"drowned</w>\": 34005,\n  \"drowning</w>\": 24618,\n  \"drs</w>\": 21257,\n  \"dru\": 2275,\n  \"dru</w>\": 49048,\n  \"drug\": 20601,\n  \"drug</w>\": 5600,\n  \"drugs</w>\": 8021,\n  \"druid</w>\": 40297,\n  \"drum\": 13353,\n  \"drum</w>\": 8698,\n  \"drummer</w>\": 13618,\n  \"drummers</w>\": 46191,\n  \"drumming</w>\": 35480,\n  \"drummond</w>\": 42213,\n  \"drums</w>\": 11690,\n  \"drun\": 15488,\n  \"drunk\": 37398,\n  \"drunk</w>\": 8232,\n  \"drunken</w>\": 28196,\n  \"drupal</w>\": 46481,\n  \"drush</w>\": 43009,\n  \"drwho</w>\": 48342,\n  \"dry\": 13544,\n  \"dry</w>\": 4501,\n  \"dryer</w>\": 24425,\n  \"drying</w>\": 23203,\n  \"ds\": 3361,\n  \"ds</w>\": 646,\n  \"dsa</w>\": 47607,\n  \"dsb\": 47168,\n  \"dsb</w>\": 14257,\n  \"dsburg</w>\": 47237,\n  \"dsc</w>\": 37240,\n  \"dsd</w>\": 45383,\n  \"dsley</w>\": 40740,\n  \"dslr</w>\": 33740,\n  \"dsm</w>\": 39502,\n  \"dson</w>\": 40310,\n  \"dsp</w>\": 45291,\n  \"dss</w>\": 41580,\n  \"dstv</w>\": 35027,\n  \"dt\": 13104,\n  \"dt</w>\": 7427,\n  \"dthe\": 13863,\n  \"dtla</w>\": 31885,\n  \"dtm</w>\": 42407,\n  \"dts</w>\": 46233,\n  \"du\": 691,\n  \"du</w>\": 3686,\n  \"dua</w>\": 25244,\n  \"dual\": 39739,\n  \"dual</w>\": 5347,\n  \"duane</w>\": 38946,\n  \"dub\": 14526,\n  \"dub</w>\": 13144,\n  \"duba\": 5485,\n  \"dubai\": 32599,\n  \"dubai</w>\": 5985,\n  \"dubbed</w>\": 27740,\n  \"dublin\": 20707,\n  \"dublin</w>\": 6145,\n  \"dubnation</w>\": 47329,\n  \"dubois</w>\": 48046,\n  \"dubrov\": 46709,\n  \"dubrovnik</w>\": 48724,\n  \"dubs</w>\": 27013,\n  \"dubstep</w>\": 38303,\n  \"dubu\": 43257,\n  \"duc\": 979,\n  \"duc</w>\": 36446,\n  \"ducati</w>\": 28570,\n  \"ducation</w>\": 17197,\n  \"duce</w>\": 3660,\n  \"duchess</w>\": 21713,\n  \"duck\": 12708,\n  \"duck</w>\": 6910,\n  \"ducks</w>\": 11202,\n  \"duct</w>\": 26829,\n  \"dude\": 48087,\n  \"dude</w>\": 5710,\n  \"dudes</w>\": 14449,\n  \"dudley</w>\": 27324,\n  \"due</w>\": 2887,\n  \"duel</w>\": 27143,\n  \"dues</w>\": 37646,\n  \"duet</w>\": 25457,\n  \"duf\": 38713,\n  \"duff\": 38071,\n  \"duff</w>\": 21934,\n  \"duffy</w>\": 23599,\n  \"dug\": 22743,\n  \"dug</w>\": 21000,\n  \"dugg\": 40523,\n  \"duggan</w>\": 46169,\n  \"dugout</w>\": 36831,\n  \"duh</w>\": 26716,\n  \"dui</w>\": 29693,\n  \"duk</w>\": 14160,\n  \"duke\": 18402,\n  \"duke</w>\": 7732,\n  \"dukes</w>\": 27914,\n  \"dul\": 6738,\n  \"dulce</w>\": 44872,\n  \"dulil\": 32565,\n  \"dulkar</w>\": 47980,\n  \"dull</w>\": 19433,\n  \"dulu\": 28865,\n  \"duluth</w>\": 32109,\n  \"dulwich</w>\": 47343,\n  \"dum\": 13400,\n  \"dum</w>\": 11564,\n  \"dumb\": 15901,\n  \"dumb</w>\": 12464,\n  \"dumbass</w>\": 38980,\n  \"dummies</w>\": 40899,\n  \"dummy</w>\": 34246,\n  \"dump\": 12655,\n  \"dump</w>\": 17146,\n  \"dumped</w>\": 23768,\n  \"dumping</w>\": 31707,\n  \"dumplings</w>\": 35495,\n  \"dumps</w>\": 45804,\n  \"dumpster</w>\": 45467,\n  \"dun\": 2616,\n  \"dun</w>\": 18284,\n  \"dunbar</w>\": 41453,\n  \"duncan\": 31084,\n  \"duncan</w>\": 13502,\n  \"dundal\": 38185,\n  \"dundas</w>\": 39300,\n  \"dundee</w>\": 18619,\n  \"dune\": 32833,\n  \"dune</w>\": 28208,\n  \"dunedin</w>\": 40121,\n  \"dunes</w>\": 23526,\n  \"dung</w>\": 33712,\n  \"dungeon\": 28812,\n  \"dungeon</w>\": 22931,\n  \"dungeons</w>\": 42572,\n  \"dungeonsand\": 34970,\n  \"dungeonsanddragons</w>\": 35497,\n  \"dunham</w>\": 42501,\n  \"duni</w>\": 43454,\n  \"dunk</w>\": 17222,\n  \"dunkin\": 48022,\n  \"dunkin</w>\": 36415,\n  \"dunkirk</w>\": 46928,\n  \"dunks</w>\": 48977,\n  \"dunlop</w>\": 34753,\n  \"dunn</w>\": 19185,\n  \"dunne</w>\": 38538,\n  \"dunno</w>\": 24502,\n  \"duo</w>\": 8696,\n  \"dup\": 36805,\n  \"dup</w>\": 10445,\n  \"duper</w>\": 44850,\n  \"duplex</w>\": 41186,\n  \"duplic\": 28992,\n  \"dupont</w>\": 35994,\n  \"dur\": 4355,\n  \"dur</w>\": 23230,\n  \"dura\": 28173,\n  \"dura</w>\": 47382,\n  \"durability</w>\": 43671,\n  \"durable</w>\": 22285,\n  \"duran</w>\": 28185,\n  \"durango</w>\": 44443,\n  \"durant</w>\": 24861,\n  \"duras</w>\": 27518,\n  \"duration</w>\": 31663,\n  \"durban</w>\": 24474,\n  \"dure</w>\": 19108,\n  \"durga</w>\": 38456,\n  \"durham\": 26765,\n  \"durham</w>\": 14335,\n  \"during</w>\": 1590,\n  \"dus</w>\": 9931,\n  \"dusa</w>\": 28546,\n  \"dusk</w>\": 19708,\n  \"dust\": 29723,\n  \"dust</w>\": 8349,\n  \"dusted</w>\": 38274,\n  \"duster</w>\": 46280,\n  \"dustin\": 42423,\n  \"dustin</w>\": 21235,\n  \"dusting</w>\": 41756,\n  \"dusty</w>\": 22029,\n  \"dut\": 32625,\n  \"dutch\": 22277,\n  \"dutch</w>\": 7991,\n  \"duter\": 21624,\n  \"duterte</w>\": 22371,\n  \"duties</w>\": 19603,\n  \"dutt</w>\": 30081,\n  \"dutton</w>\": 42771,\n  \"duty</w>\": 6458,\n  \"duval</w>\": 42459,\n  \"duvet</w>\": 48006,\n  \"dux</w>\": 28562,\n  \"dv\": 4288,\n  \"dv</w>\": 26265,\n  \"dvd</w>\": 7170,\n  \"dvds</w>\": 36655,\n  \"dvn</w>\": 29811,\n  \"dvr</w>\": 29210,\n  \"dw\": 8455,\n  \"dw</w>\": 19997,\n  \"dwar\": 13487,\n  \"dwarf</w>\": 22643,\n  \"dwayne</w>\": 31395,\n  \"dwell\": 27549,\n  \"dwell</w>\": 18755,\n  \"dwelling</w>\": 37098,\n  \"dwight</w>\": 22473,\n  \"dwp</w>\": 46976,\n  \"dwts</w>\": 30220,\n  \"dwyer</w>\": 43878,\n  \"dx\": 22717,\n  \"dx</w>\": 15679,\n  \"dy\": 1444,\n  \"dy</w>\": 907,\n  \"dyce</w>\": 48325,\n  \"dye\": 37159,\n  \"dye</w>\": 15997,\n  \"dyed</w>\": 24906,\n  \"dyer</w>\": 29495,\n  \"dyes</w>\": 39874,\n  \"dying</w>\": 5115,\n  \"dyk</w>\": 12142,\n  \"dyke</w>\": 32632,\n  \"dylan\": 21004,\n  \"dylan</w>\": 9900,\n  \"dyn\": 44289,\n  \"dyn</w>\": 30669,\n  \"dynam\": 5735,\n  \"dynamic</w>\": 10057,\n  \"dynamics</w>\": 14329,\n  \"dynamite</w>\": 29003,\n  \"dynamo</w>\": 28281,\n  \"dynasty</w>\": 14593,\n  \"dyne</w>\": 42756,\n  \"dyou\": 11484,\n  \"dyour\": 22525,\n  \"dys\": 11022,\n  \"dys</w>\": 38384,\n  \"dysfunction</w>\": 36865,\n  \"dysfunctional</w>\": 40757,\n  \"dysle\": 33681,\n  \"dyslexia</w>\": 43199,\n  \"dyson</w>\": 34475,\n  \"dyssey</w>\": 17435,\n  \"dystop\": 28276,\n  \"dystopian</w>\": 38915,\n  \"dz\": 24421,\n  \"dz</w>\": 22913,\n  \"dÃ©\": 25466,\n  \"dÃ¼\": 46948,\n  \"dÃŃ\": 46988,\n  \"e\": 68,\n  \"e</w>\": 324,\n  \"ea\": 2150,\n  \"ea</w>\": 8100,\n  \"eable</w>\": 20693,\n  \"each\": 31442,\n  \"each</w>\": 2416,\n  \"eachother</w>\": 40792,\n  \"ead\": 42556,\n  \"ead</w>\": 45523,\n  \"eae</w>\": 27446,\n  \"eag\": 3743,\n  \"eager</w>\": 21551,\n  \"eagerly</w>\": 30094,\n  \"eagle\": 20207,\n  \"eagle</w>\": 7517,\n  \"eagles</w>\": 6920,\n  \"eal\": 48872,\n  \"ealing</w>\": 40484,\n  \"eames</w>\": 49072,\n  \"eamon\": 45954,\n  \"ean</w>\": 13327,\n  \"ear\": 1055,\n  \"ear</w>\": 8373,\n  \"earbuds</w>\": 47807,\n  \"eared</w>\": 9127,\n  \"earl\": 30573,\n  \"earl</w>\": 14235,\n  \"earle</w>\": 40292,\n  \"earlier</w>\": 4297,\n  \"earliest</w>\": 22097,\n  \"early\": 15840,\n  \"early</w>\": 2090,\n  \"earn\": 33977,\n  \"earn</w>\": 8465,\n  \"earned</w>\": 8898,\n  \"earnest</w>\": 45422,\n  \"earning</w>\": 14550,\n  \"earnings</w>\": 15912,\n  \"earns</w>\": 16760,\n  \"earp</w>\": 35296,\n  \"earphones</w>\": 44905,\n  \"earring</w>\": 28664,\n  \"earrings</w>\": 9136,\n  \"ears</w>\": 9861,\n  \"eart\": 7086,\n  \"earth\": 5184,\n  \"earth</w>\": 3475,\n  \"earthand\": 34229,\n  \"earthandclouds</w>\": 34480,\n  \"earthday</w>\": 19481,\n  \"earthquake</w>\": 10060,\n  \"earthquakes</w>\": 32895,\n  \"earthy</w>\": 47139,\n  \"earts</w>\": 38824,\n  \"eas\": 5740,\n  \"ease</w>\": 13574,\n  \"easier</w>\": 8817,\n  \"easiest</w>\": 26314,\n  \"easily</w>\": 8197,\n  \"easing</w>\": 44825,\n  \"easport\": 42251,\n  \"east\": 5022,\n  \"east</w>\": 2602,\n  \"eastbound</w>\": 28827,\n  \"eastbourne</w>\": 38455,\n  \"eastenders</w>\": 23545,\n  \"easter\": 14783,\n  \"easter</w>\": 4811,\n  \"eastern\": 34522,\n  \"eastern</w>\": 6311,\n  \"eastman</w>\": 48280,\n  \"easton</w>\": 29619,\n  \"eastside</w>\": 42650,\n  \"eastwood</w>\": 28270,\n  \"easy\": 18308,\n  \"easy</w>\": 3176,\n  \"eat\": 5418,\n  \"eat</w>\": 3384,\n  \"eaten</w>\": 16750,\n  \"eater</w>\": 24060,\n  \"eaters</w>\": 37645,\n  \"eatery</w>\": 46559,\n  \"eating</w>\": 4371,\n  \"eatlocal</w>\": 42868,\n  \"eaton</w>\": 28462,\n  \"eats</w>\": 13188,\n  \"eau</w>\": 17608,\n  \"eazy</w>\": 36536,\n  \"eb\": 12283,\n  \"eb</w>\": 8677,\n  \"eba</w>\": 40889,\n  \"ebay\": 34412,\n  \"ebay</w>\": 4099,\n  \"eber\": 34020,\n  \"ebo</w>\": 46635,\n  \"ebola</w>\": 15864,\n  \"ebon\": 22013,\n  \"ebony</w>\": 30651,\n  \"ebook</w>\": 13122,\n  \"ebooks</w>\": 25774,\n  \"ec\": 747,\n  \"ec</w>\": 10879,\n  \"eca</w>\": 18465,\n  \"ecar\": 34500,\n  \"ecb</w>\": 26205,\n  \"ecc</w>\": 33128,\n  \"eccc</w>\": 47401,\n  \"eccentric</w>\": 43228,\n  \"eccle\": 27494,\n  \"ece</w>\": 2163,\n  \"eces</w>\": 5905,\n  \"ecg</w>\": 45983,\n  \"ech\": 15797,\n  \"ech</w>\": 31147,\n  \"echel\": 41233,\n  \"echo\": 17366,\n  \"echo</w>\": 13989,\n  \"echoes</w>\": 32564,\n  \"eci\": 31936,\n  \"eck\": 25866,\n  \"eck</w>\": 15969,\n  \"ecker\": 39661,\n  \"ecker</w>\": 40890,\n  \"ecla\": 47806,\n  \"eclec\": 25114,\n  \"eclectic</w>\": 28382,\n  \"eclip\": 30841,\n  \"eclipse</w>\": 11505,\n  \"eclub</w>\": 38983,\n  \"eco\": 5106,\n  \"eco</w>\": 10077,\n  \"ecofriendly</w>\": 43412,\n  \"ecol\": 22706,\n  \"ecological</w>\": 25127,\n  \"ecology</w>\": 18578,\n  \"ecommerce</w>\": 15529,\n  \"econ\": 26755,\n  \"econ</w>\": 21158,\n  \"econom\": 2768,\n  \"economic\": 36649,\n  \"economic</w>\": 5259,\n  \"economical</w>\": 48782,\n  \"economically</w>\": 39406,\n  \"economics</w>\": 12625,\n  \"economies</w>\": 27136,\n  \"economist</w>\": 18836,\n  \"economists</w>\": 43701,\n  \"economy</w>\": 5644,\n  \"ecor\": 28962,\n  \"ecosystem</w>\": 15788,\n  \"ecosystems</w>\": 28725,\n  \"ecoun\": 27924,\n  \"ecr</w>\": 48572,\n  \"ecraft</w>\": 11439,\n  \"ecs</w>\": 23485,\n  \"ecstasy</w>\": 47286,\n  \"ecstatic</w>\": 36244,\n  \"ect</w>\": 25168,\n  \"ecu\": 13087,\n  \"ecu</w>\": 32919,\n  \"ecuador</w>\": 19813,\n  \"ecz\": 43530,\n  \"ed\": 843,\n  \"ed</w>\": 538,\n  \"eda</w>\": 10804,\n  \"edad</w>\": 44724,\n  \"eday\": 39258,\n  \"edc</w>\": 21245,\n  \"edchat</w>\": 14702,\n  \"edd</w>\": 35431,\n  \"eddi\": 42930,\n  \"eddie\": 22748,\n  \"eddie</w>\": 9517,\n  \"eddy</w>\": 25959,\n  \"ede\": 29632,\n  \"eded</w>\": 19555,\n  \"edel\": 20460,\n  \"edelman</w>\": 48139,\n  \"eden\": 23621,\n  \"eden</w>\": 13741,\n  \"eder</w>\": 16249,\n  \"edes</w>\": 36247,\n  \"edfringe</w>\": 27402,\n  \"edg\": 35955,\n  \"edgar\": 33543,\n  \"edgar</w>\": 17914,\n  \"edge\": 16914,\n  \"edge</w>\": 5461,\n  \"edged</w>\": 39188,\n  \"edges</w>\": 20938,\n  \"edgy</w>\": 35393,\n  \"edi\": 8750,\n  \"edi</w>\": 27148,\n  \"edible</w>\": 19795,\n  \"edic\": 25184,\n  \"edics</w>\": 30641,\n  \"edin\": 6524,\n  \"edinburgh\": 27574,\n  \"edinburgh</w>\": 8068,\n  \"eding</w>\": 5742,\n  \"edison</w>\": 25846,\n  \"edit\": 8239,\n  \"edit</w>\": 8013,\n  \"edited</w>\": 13945,\n  \"edith</w>\": 28597,\n  \"editing</w>\": 10178,\n  \"edition</w>\": 3062,\n  \"editions</w>\": 21664,\n  \"editor</w>\": 7661,\n  \"editorial</w>\": 12325,\n  \"editors</w>\": 19486,\n  \"edits</w>\": 24945,\n  \"edm\": 37843,\n  \"edm</w>\": 13539,\n  \"edmon\": 11275,\n  \"edmond</w>\": 41581,\n  \"edmonds</w>\": 46520,\n  \"edmonton\": 37311,\n  \"edmonton</w>\": 15058,\n  \"edmun\": 36561,\n  \"edmund</w>\": 27567,\n  \"edna</w>\": 39002,\n  \"edo\": 29145,\n  \"edo</w>\": 18096,\n  \"edon</w>\": 41467,\n  \"edor\": 30184,\n  \"edou\": 47678,\n  \"edp</w>\": 46066,\n  \"eds</w>\": 1941,\n  \"edsheeran</w>\": 30386,\n  \"edt</w>\": 15071,\n  \"edtech\": 41825,\n  \"edtech</w>\": 15262,\n  \"edu\": 11757,\n  \"edu</w>\": 11799,\n  \"eduardo</w>\": 30604,\n  \"educ\": 2200,\n  \"educate</w>\": 17563,\n  \"educated</w>\": 21447,\n  \"education\": 22358,\n  \"education</w>\": 2806,\n  \"educational</w>\": 10400,\n  \"educator</w>\": 19875,\n  \"educators</w>\": 15420,\n  \"edwar\": 27586,\n  \"edward\": 26184,\n  \"edward</w>\": 7450,\n  \"edwards</w>\": 12627,\n  \"edwin\": 48718,\n  \"edwin</w>\": 22471,\n  \"edy\": 17072,\n  \"edy</w>\": 4144,\n  \"ee\": 2644,\n  \"ee</w>\": 4708,\n  \"eed</w>\": 17513,\n  \"eee\": 24632,\n  \"eee</w>\": 9361,\n  \"eeee\": 11696,\n  \"eeee</w>\": 17570,\n  \"eeeee</w>\": 26938,\n  \"eeeeee</w>\": 41407,\n  \"eek</w>\": 46591,\n  \"eel</w>\": 27462,\n  \"eels</w>\": 44416,\n  \"eem</w>\": 27236,\n  \"een\": 47490,\n  \"een</w>\": 21230,\n  \"eer\": 35409,\n  \"eer</w>\": 31846,\n  \"eera</w>\": 36664,\n  \"eerie</w>\": 33846,\n  \"ees</w>\": 40308,\n  \"eet</w>\": 48935,\n  \"eez</w>\": 39033,\n  \"ef\": 1490,\n  \"ef</w>\": 1829,\n  \"efa</w>\": 16999,\n  \"eface</w>\": 48804,\n  \"efan\": 33556,\n  \"efc</w>\": 22065,\n  \"efcc</w>\": 46087,\n  \"efer</w>\": 26199,\n  \"eff\": 20548,\n  \"eff</w>\": 21715,\n  \"effe\": 2808,\n  \"effec\": 3943,\n  \"effect</w>\": 5436,\n  \"effective</w>\": 6837,\n  \"effectively</w>\": 17516,\n  \"effectiveness</w>\": 26847,\n  \"effects</w>\": 7331,\n  \"effic\": 36004,\n  \"efficacy</w>\": 39937,\n  \"effici\": 6670,\n  \"efficiency</w>\": 11823,\n  \"efficient</w>\": 11334,\n  \"efficiently</w>\": 32915,\n  \"effor\": 6356,\n  \"effort\": 40078,\n  \"effort</w>\": 6255,\n  \"effortless</w>\": 41639,\n  \"effortlessly</w>\": 42320,\n  \"efforts</w>\": 6847,\n  \"efish</w>\": 35813,\n  \"efl</w>\": 27172,\n  \"efron</w>\": 48111,\n  \"efs</w>\": 7389,\n  \"eg\": 8053,\n  \"eg</w>\": 14599,\n  \"ega</w>\": 41193,\n  \"egan</w>\": 42943,\n  \"eger\": 46704,\n  \"eger</w>\": 22767,\n  \"egg\": 13778,\n  \"egg</w>\": 5911,\n  \"eggplant</w>\": 34906,\n  \"eggs</w>\": 7099,\n  \"ego\": 34712,\n  \"ego</w>\": 14250,\n  \"egos</w>\": 43992,\n  \"egre\": 27044,\n  \"egret</w>\": 42002,\n  \"egy\": 5224,\n  \"egyp\": 10250,\n  \"egypt</w>\": 7267,\n  \"egyptian</w>\": 12428,\n  \"eh\": 9277,\n  \"eh</w>\": 9135,\n  \"eha</w>\": 48563,\n  \"ehealth</w>\": 48617,\n  \"ehr\": 45271,\n  \"ehs</w>\": 44648,\n  \"ei\": 4006,\n  \"ei</w>\": 18264,\n  \"eic\": 40251,\n  \"eid\": 28038,\n  \"eid</w>\": 13979,\n  \"eidmubarak</w>\": 46275,\n  \"eiffel</w>\": 29720,\n  \"eigh\": 13468,\n  \"eight</w>\": 7910,\n  \"eighteen</w>\": 49316,\n  \"eighth</w>\": 21237,\n  \"eighty</w>\": 47449,\n  \"eil\": 29457,\n  \"eileen</w>\": 31468,\n  \"ein\": 29944,\n  \"ein</w>\": 24524,\n  \"eindhoven</w>\": 47172,\n  \"eing</w>\": 7702,\n  \"einstein</w>\": 20587,\n  \"eira</w>\": 47708,\n  \"eis\": 13802,\n  \"eisen\": 25273,\n  \"eisenhower</w>\": 35562,\n  \"either</w>\": 6036,\n  \"ej\": 19887,\n  \"ej</w>\": 25009,\n  \"ejec\": 29771,\n  \"ek\": 4212,\n  \"ek</w>\": 2092,\n  \"el\": 544,\n  \"el</w>\": 832,\n  \"ela\": 11284,\n  \"ela</w>\": 3787,\n  \"elab</w>\": 38866,\n  \"elabor\": 26034,\n  \"elaborate</w>\": 33855,\n  \"elaine</w>\": 22523,\n  \"elan\": 17763,\n  \"elan</w>\": 18399,\n  \"eland\": 24930,\n  \"eland</w>\": 6275,\n  \"elas</w>\": 41078,\n  \"elast\": 27479,\n  \"elastic</w>\": 30282,\n  \"elba</w>\": 48598,\n  \"elbow</w>\": 21965,\n  \"eld</w>\": 5684,\n  \"elder\": 11791,\n  \"elder</w>\": 14416,\n  \"elderly</w>\": 15455,\n  \"elders</w>\": 28617,\n  \"eldest</w>\": 33503,\n  \"elding</w>\": 28223,\n  \"elds</w>\": 13466,\n  \"ele\": 2084,\n  \"ele</w>\": 9766,\n  \"eleague</w>\": 36577,\n  \"eleanor</w>\": 18604,\n  \"elearning</w>\": 29969,\n  \"elec\": 1564,\n  \"elec</w>\": 38768,\n  \"elect</w>\": 15336,\n  \"elected</w>\": 8828,\n  \"election\": 19312,\n  \"election</w>\": 4247,\n  \"electionday</w>\": 40540,\n  \"elections</w>\": 6949,\n  \"elector\": 16465,\n  \"electoral</w>\": 19544,\n  \"electr\": 3654,\n  \"electra</w>\": 48959,\n  \"electri\": 23927,\n  \"electric\": 19547,\n  \"electric</w>\": 5031,\n  \"electrical</w>\": 12176,\n  \"electrician</w>\": 46422,\n  \"electricity</w>\": 10950,\n  \"electrifying</w>\": 48843,\n  \"electro\": 11648,\n  \"electro</w>\": 23244,\n  \"electromagnetic</w>\": 46530,\n  \"electron</w>\": 33396,\n  \"electronic\": 33865,\n  \"electronic</w>\": 9273,\n  \"electronica</w>\": 43119,\n  \"electronics</w>\": 13081,\n  \"eled</w>\": 20357,\n  \"elee</w>\": 44112,\n  \"eleg\": 8075,\n  \"elegance</w>\": 19146,\n  \"elegant</w>\": 11124,\n  \"elek\": 34559,\n  \"elem</w>\": 25406,\n  \"element</w>\": 14909,\n  \"elementary</w>\": 8143,\n  \"elements</w>\": 10925,\n  \"elen\": 30654,\n  \"elen</w>\": 39164,\n  \"elena</w>\": 19421,\n  \"eleng\": 48180,\n  \"eleph\": 7554,\n  \"elephant</w>\": 10299,\n  \"elephants</w>\": 16871,\n  \"eler</w>\": 24646,\n  \"eless\": 15244,\n  \"eless</w>\": 30837,\n  \"elets</w>\": 19400,\n  \"elev\": 7921,\n  \"elevate</w>\": 26736,\n  \"elevated</w>\": 23967,\n  \"elevation</w>\": 23826,\n  \"elevator</w>\": 19021,\n  \"eleven\": 31617,\n  \"eleven</w>\": 17795,\n  \"elf\": 45961,\n  \"elf</w>\": 11924,\n  \"elfie</w>\": 39955,\n  \"elg\": 28790,\n  \"elgin</w>\": 31868,\n  \"eli\": 1018,\n  \"eli</w>\": 6292,\n  \"elia</w>\": 10956,\n  \"elian</w>\": 42508,\n  \"elias\": 47274,\n  \"elias</w>\": 29902,\n  \"elic\": 34743,\n  \"elic</w>\": 13492,\n  \"elie\": 38677,\n  \"elie</w>\": 26501,\n  \"elier</w>\": 14634,\n  \"elife\": 37429,\n  \"elife</w>\": 12719,\n  \"eligibility</w>\": 34937,\n  \"eligible</w>\": 16978,\n  \"elijah</w>\": 26065,\n  \"elike\": 48913,\n  \"elim\": 9296,\n  \"elimin\": 11386,\n  \"eliminate</w>\": 19655,\n  \"eliminated</w>\": 29075,\n  \"eliminating</w>\": 36619,\n  \"elimination</w>\": 24176,\n  \"elin\": 25353,\n  \"elin</w>\": 13458,\n  \"eline\": 46199,\n  \"eline</w>\": 7153,\n  \"eling</w>\": 9990,\n  \"elio</w>\": 47943,\n  \"elion</w>\": 30682,\n  \"elions</w>\": 44159,\n  \"eliot</w>\": 33326,\n  \"elis\": 23411,\n  \"elis</w>\": 48021,\n  \"elisa\": 25610,\n  \"elisa</w>\": 44051,\n  \"elisabeth</w>\": 33127,\n  \"elise</w>\": 27124,\n  \"elit\": 40882,\n  \"elite\": 32277,\n  \"elite</w>\": 6553,\n  \"elited\": 43943,\n  \"elitedangerous</w>\": 47138,\n  \"elites</w>\": 35975,\n  \"elius</w>\": 35623,\n  \"elive\": 49338,\n  \"elive</w>\": 23505,\n  \"elives</w>\": 49174,\n  \"elix\": 32926,\n  \"elixir</w>\": 42887,\n  \"eliz\": 42844,\n  \"eliza\": 6132,\n  \"eliza</w>\": 29992,\n  \"elizabeth\": 22397,\n  \"elizabeth</w>\": 7026,\n  \"elk\": 34013,\n  \"elk</w>\": 21896,\n  \"ell\": 826,\n  \"ell</w>\": 812,\n  \"ella\": 20692,\n  \"ella</w>\": 2957,\n  \"elland</w>\": 43326,\n  \"ellar</w>\": 38443,\n  \"ellas</w>\": 37053,\n  \"elle\": 12818,\n  \"elle</w>\": 4765,\n  \"elled</w>\": 13146,\n  \"ellen\": 14007,\n  \"ellen</w>\": 12312,\n  \"ellenshow</w>\": 34812,\n  \"eller\": 20927,\n  \"eller</w>\": 4465,\n  \"ellers</w>\": 19010,\n  \"elles</w>\": 24431,\n  \"elli\": 3367,\n  \"elli</w>\": 6673,\n  \"ellic\": 38905,\n  \"ellie</w>\": 16769,\n  \"ellier</w>\": 44054,\n  \"ellin</w>\": 40374,\n  \"elling</w>\": 2220,\n  \"ellington</w>\": 34477,\n  \"ellini</w>\": 43256,\n  \"elliot</w>\": 20761,\n  \"elliott\": 44456,\n  \"elliott</w>\": 13788,\n  \"ellip\": 44816,\n  \"ellis</w>\": 11553,\n  \"ellison</w>\": 32295,\n  \"ello</w>\": 2512,\n  \"ellor</w>\": 14594,\n  \"ells</w>\": 2433,\n  \"ellu\": 35560,\n  \"elly\": 8041,\n  \"elly</w>\": 20355,\n  \"elm\": 25199,\n  \"elm</w>\": 22082,\n  \"elman</w>\": 33622,\n  \"elmer</w>\": 45958,\n  \"elmo</w>\": 32150,\n  \"elo\": 6170,\n  \"elo</w>\": 13490,\n  \"elon\": 26381,\n  \"elon</w>\": 20406,\n  \"elondon</w>\": 47377,\n  \"elong\": 44363,\n  \"elonmusk</w>\": 37076,\n  \"elope</w>\": 23367,\n  \"eloqu\": 37795,\n  \"elos</w>\": 44733,\n  \"elot</w>\": 43490,\n  \"elove\": 43319,\n  \"elove</w>\": 19165,\n  \"elover</w>\": 21732,\n  \"elovers</w>\": 33946,\n  \"els\": 35958,\n  \"els</w>\": 1645,\n  \"elsa</w>\": 22050,\n  \"else\": 18857,\n  \"else</w>\": 3344,\n  \"elsewhere</w>\": 22906,\n  \"elson</w>\": 19624,\n  \"elt</w>\": 18692,\n  \"elton</w>\": 20758,\n  \"elu\": 14208,\n  \"elusive</w>\": 28903,\n  \"elves</w>\": 29111,\n  \"elvi\": 47008,\n  \"elvis\": 47359,\n  \"elvis</w>\": 14498,\n  \"elxn</w>\": 37726,\n  \"ely\": 12189,\n  \"ely</w>\": 1273,\n  \"elyn\": 29691,\n  \"elyn</w>\": 18126,\n  \"em\": 908,\n  \"em</w>\": 2270,\n  \"ema\": 7002,\n  \"ema</w>\": 11131,\n  \"emabiggest\": 23101,\n  \"emabiggestfans</w>\": 29587,\n  \"email\": 33537,\n  \"email</w>\": 4462,\n  \"emailed</w>\": 40470,\n  \"emailmarketing</w>\": 40188,\n  \"emails</w>\": 12871,\n  \"eman\": 24416,\n  \"eman</w>\": 36868,\n  \"emancip\": 42996,\n  \"emanuel</w>\": 35232,\n  \"emb\": 3692,\n  \"embar\": 8266,\n  \"embaras\": 48019,\n  \"embark</w>\": 33953,\n  \"embarra\": 11382,\n  \"embarrass\": 27183,\n  \"embarrassed</w>\": 28217,\n  \"embarrassing</w>\": 19653,\n  \"embarrassment</w>\": 41346,\n  \"embassy</w>\": 13598,\n  \"embe\": 46041,\n  \"embed\": 19703,\n  \"embedded</w>\": 22046,\n  \"embelli\": 32144,\n  \"embellished</w>\": 46992,\n  \"ember</w>\": 47049,\n  \"emblem</w>\": 21163,\n  \"embo\": 23065,\n  \"embr\": 35267,\n  \"embrac\": 16928,\n  \"embrace</w>\": 12118,\n  \"embraced</w>\": 35739,\n  \"embraces</w>\": 38404,\n  \"embracing</w>\": 22196,\n  \"embro\": 12550,\n  \"embroi\": 18667,\n  \"embroide\": 21530,\n  \"embroidered</w>\": 22381,\n  \"embroidery</w>\": 20823,\n  \"emc\": 20897,\n  \"emc</w>\": 31602,\n  \"emcee</w>\": 42038,\n  \"eme\": 22910,\n  \"eme</w>\": 21548,\n  \"emea</w>\": 40352,\n  \"emed</w>\": 11028,\n  \"emen</w>\": 22033,\n  \"ement\": 40841,\n  \"ement</w>\": 2057,\n  \"ements</w>\": 11058,\n  \"emer\": 3132,\n  \"emer</w>\": 25727,\n  \"emerald\": 46878,\n  \"emerald</w>\": 16980,\n  \"emerge</w>\": 22182,\n  \"emerged</w>\": 26425,\n  \"emergen\": 24096,\n  \"emergence</w>\": 39867,\n  \"emergencies</w>\": 35759,\n  \"emergency\": 44038,\n  \"emergency</w>\": 5897,\n  \"emerges</w>\": 30801,\n  \"emerging\": 38174,\n  \"emerging</w>\": 11113,\n  \"emeritus</w>\": 35333,\n  \"emerson</w>\": 24147,\n  \"emery</w>\": 32678,\n  \"emi\": 44327,\n  \"emi</w>\": 18525,\n  \"emil\": 26794,\n  \"emil</w>\": 40624,\n  \"emile</w>\": 43926,\n  \"emili\": 20709,\n  \"emilia</w>\": 34238,\n  \"emilio</w>\": 39722,\n  \"emily\": 14545,\n  \"emily</w>\": 7640,\n  \"emin\": 17227,\n  \"emin</w>\": 23995,\n  \"eminem</w>\": 22129,\n  \"eminent</w>\": 33779,\n  \"eming</w>\": 40398,\n  \"emir\": 13337,\n  \"emir</w>\": 47613,\n  \"emirates\": 47244,\n  \"emirates</w>\": 17867,\n  \"emission</w>\": 27761,\n  \"emissions</w>\": 14172,\n  \"emit</w>\": 49043,\n  \"emma\": 18177,\n  \"emma</w>\": 7445,\n  \"emmanuel\": 48045,\n  \"emmanuel</w>\": 20411,\n  \"emmett</w>\": 45779,\n  \"emmy\": 35625,\n  \"emmy</w>\": 17089,\n  \"emmys</w>\": 21875,\n  \"emo\": 3738,\n  \"emo</w>\": 19381,\n  \"emoji</w>\": 16327,\n  \"emojis</w>\": 27870,\n  \"emon</w>\": 34406,\n  \"emor\": 45034,\n  \"emory</w>\": 44274,\n  \"emotion</w>\": 17464,\n  \"emotional</w>\": 7357,\n  \"emotionally</w>\": 24088,\n  \"emotions</w>\": 12904,\n  \"emp\": 3831,\n  \"emp</w>\": 41004,\n  \"empathy</w>\": 22420,\n  \"emper\": 12522,\n  \"emperor</w>\": 13828,\n  \"empha\": 16237,\n  \"emphasi\": 47176,\n  \"emphasis</w>\": 29588,\n  \"empire\": 26212,\n  \"empire</w>\": 7614,\n  \"empires</w>\": 46510,\n  \"emplo\": 3409,\n  \"employ\": 37290,\n  \"employ</w>\": 39626,\n  \"employe\": 5037,\n  \"employed</w>\": 26567,\n  \"employee\": 36631,\n  \"employee</w>\": 9560,\n  \"employees</w>\": 7377,\n  \"employer</w>\": 21296,\n  \"employers</w>\": 17647,\n  \"employment</w>\": 10959,\n  \"empor\": 27386,\n  \"emporium</w>\": 48541,\n  \"empower\": 13612,\n  \"empower</w>\": 17230,\n  \"empowered</w>\": 29087,\n  \"empowering</w>\": 20086,\n  \"empowerment</w>\": 15747,\n  \"empowers</w>\": 46206,\n  \"empress</w>\": 26656,\n  \"empty\": 41203,\n  \"empty</w>\": 7893,\n  \"emra\": 39259,\n  \"ems</w>\": 2858,\n  \"emt</w>\": 46360,\n  \"emu\": 48149,\n  \"emu</w>\": 29296,\n  \"emul\": 23272,\n  \"emy\": 31076,\n  \"en\": 524,\n  \"en</w>\": 576,\n  \"ena</w>\": 3452,\n  \"enab\": 17308,\n  \"enable</w>\": 15642,\n  \"enabled</w>\": 23666,\n  \"enables</w>\": 23417,\n  \"enabling</w>\": 23590,\n  \"enam\": 41486,\n  \"enamel</w>\": 22746,\n  \"enary</w>\": 13132,\n  \"enas</w>\": 34536,\n  \"enation</w>\": 20860,\n  \"enberg</w>\": 15658,\n  \"enburg</w>\": 28430,\n  \"enc</w>\": 33169,\n  \"enca</w>\": 37774,\n  \"encan\": 30345,\n  \"encapsul\": 40874,\n  \"ence\": 6495,\n  \"ence</w>\": 954,\n  \"enced</w>\": 6549,\n  \"ences</w>\": 3777,\n  \"enchan\": 17290,\n  \"enchanted</w>\": 28258,\n  \"enchanting</w>\": 32531,\n  \"enchil\": 47396,\n  \"enci\": 32207,\n  \"encia</w>\": 30068,\n  \"encies</w>\": 18729,\n  \"encing</w>\": 10326,\n  \"enclosed</w>\": 43243,\n  \"enclosure</w>\": 37419,\n  \"encom\": 44026,\n  \"encore</w>\": 20549,\n  \"encoun\": 17309,\n  \"encounter</w>\": 13164,\n  \"encountered</w>\": 32492,\n  \"encounters</w>\": 25399,\n  \"encoura\": 6169,\n  \"encourage</w>\": 12090,\n  \"encouraged</w>\": 20299,\n  \"encouragement</w>\": 24959,\n  \"encourages</w>\": 23848,\n  \"encouraging</w>\": 15875,\n  \"encro\": 45822,\n  \"encry\": 28600,\n  \"encryp\": 42928,\n  \"encrypted</w>\": 48710,\n  \"encryption</w>\": 31423,\n  \"ency</w>\": 3484,\n  \"encyclo\": 32104,\n  \"encyclopedia</w>\": 38376,\n  \"end\": 945,\n  \"end</w>\": 806,\n  \"enda</w>\": 6735,\n  \"endale</w>\": 20290,\n  \"endange\": 13990,\n  \"endangered</w>\": 14931,\n  \"ende\": 11373,\n  \"ende</w>\": 40306,\n  \"endeav\": 18134,\n  \"endeavor</w>\": 40502,\n  \"endeavors</w>\": 44394,\n  \"endeavour</w>\": 38035,\n  \"ended</w>\": 2622,\n  \"endemic</w>\": 41241,\n  \"endent</w>\": 16265,\n  \"ender\": 48106,\n  \"ender</w>\": 12383,\n  \"enders</w>\": 7418,\n  \"endez</w>\": 43850,\n  \"endgame</w>\": 23042,\n  \"endi</w>\": 31359,\n  \"ending</w>\": 2695,\n  \"endings</w>\": 36516,\n  \"endish</w>\": 38841,\n  \"endless</w>\": 12688,\n  \"endlessly</w>\": 45145,\n  \"endment</w>\": 45894,\n  \"endo\": 13476,\n  \"endo</w>\": 15830,\n  \"endocr\": 36486,\n  \"endof\": 40786,\n  \"endome\": 46996,\n  \"endon</w>\": 48018,\n  \"endor\": 8092,\n  \"endorf</w>\": 37249,\n  \"endorse</w>\": 28819,\n  \"endorsed</w>\": 24307,\n  \"endorsement</w>\": 21205,\n  \"endorses</w>\": 34603,\n  \"endorsing</w>\": 46779,\n  \"endow\": 45895,\n  \"endra</w>\": 22321,\n  \"ends</w>\": 1339,\n  \"endthe\": 46256,\n  \"endu\": 26032,\n  \"endur\": 19557,\n  \"endurance</w>\": 21027,\n  \"endure</w>\": 32419,\n  \"enduring</w>\": 30851,\n  \"enduro</w>\": 47042,\n  \"ene\": 3297,\n  \"ene</w>\": 6049,\n  \"ened</w>\": 2494,\n  \"eneed\": 45137,\n  \"enegger</w>\": 33235,\n  \"enei</w>\": 48906,\n  \"enemies</w>\": 15824,\n  \"enemy</w>\": 10310,\n  \"enen</w>\": 45113,\n  \"ener\": 2244,\n  \"ener</w>\": 13600,\n  \"energ\": 39451,\n  \"energetic</w>\": 24197,\n  \"energi\": 23044,\n  \"energies</w>\": 42374,\n  \"energized</w>\": 48635,\n  \"energy\": 14974,\n  \"energy</w>\": 2650,\n  \"energye\": 32271,\n  \"energyefficiency</w>\": 40586,\n  \"eners</w>\": 48208,\n  \"enes</w>\": 42066,\n  \"eness</w>\": 11806,\n  \"enet</w>\": 46336,\n  \"enew\": 29672,\n  \"enews</w>\": 13442,\n  \"eney</w>\": 20706,\n  \"enez</w>\": 33110,\n  \"enf\": 38167,\n  \"enfield</w>\": 27808,\n  \"enfor\": 10592,\n  \"enforce</w>\": 40224,\n  \"enforced</w>\": 44597,\n  \"enforcement</w>\": 12460,\n  \"eng\": 1035,\n  \"eng</w>\": 6730,\n  \"enga</w>\": 22297,\n  \"engag\": 6793,\n  \"engage</w>\": 11089,\n  \"engaged</w>\": 11475,\n  \"engagement</w>\": 7281,\n  \"engaging</w>\": 13060,\n  \"enge\": 26279,\n  \"enge</w>\": 2742,\n  \"engel\": 38265,\n  \"engen</w>\": 48286,\n  \"enger</w>\": 6618,\n  \"engers</w>\": 7533,\n  \"engine\": 3355,\n  \"engine</w>\": 5857,\n  \"engineer\": 40151,\n  \"engineer</w>\": 8517,\n  \"engineered</w>\": 26580,\n  \"engineering</w>\": 5273,\n  \"engineers</w>\": 11494,\n  \"engines</w>\": 14487,\n  \"england\": 20904,\n  \"england</w>\": 3595,\n  \"english\": 15942,\n  \"english</w>\": 3469,\n  \"engra\": 17560,\n  \"engraved</w>\": 29421,\n  \"engraving</w>\": 33309,\n  \"engul\": 43655,\n  \"engv\": 28401,\n  \"enh\": 7449,\n  \"enhall</w>\": 48781,\n  \"enham</w>\": 24592,\n  \"enhan\": 26827,\n  \"enhance</w>\": 13993,\n  \"enhanced</w>\": 16070,\n  \"enhancement</w>\": 35601,\n  \"enhances</w>\": 38259,\n  \"enhancing</w>\": 25986,\n  \"eni\": 4395,\n  \"eni</w>\": 17538,\n  \"enic\": 46780,\n  \"enic</w>\": 28292,\n  \"enig\": 19754,\n  \"enig</w>\": 48730,\n  \"enight\": 32848,\n  \"enight</w>\": 20640,\n  \"enigma</w>\": 34998,\n  \"ening</w>\": 1133,\n  \"enium</w>\": 34380,\n  \"enix</w>\": 25720,\n  \"enjo\": 1498,\n  \"enjoy\": 12981,\n  \"enjoy</w>\": 2218,\n  \"enjoyable</w>\": 17444,\n  \"enjoyed</w>\": 5045,\n  \"enjoying</w>\": 3603,\n  \"enjoyment</w>\": 34905,\n  \"enjoys</w>\": 17024,\n  \"enka</w>\": 43942,\n  \"enko</w>\": 25312,\n  \"enlar\": 38136,\n  \"enligh\": 21364,\n  \"enlighten\": 28200,\n  \"enlightened</w>\": 44032,\n  \"enlightening</w>\": 44005,\n  \"enlightenment</w>\": 29255,\n  \"enlisted</w>\": 43555,\n  \"enly</w>\": 43023,\n  \"enn</w>\": 43563,\n  \"enna</w>\": 8095,\n  \"enne\": 21176,\n  \"enne</w>\": 11518,\n  \"ennedy</w>\": 46266,\n  \"ennes</w>\": 43613,\n  \"enni\": 7049,\n  \"ennial</w>\": 14220,\n  \"ennis\": 48923,\n  \"ennis</w>\": 26309,\n  \"eno\": 9429,\n  \"eno</w>\": 12843,\n  \"enoch</w>\": 47917,\n  \"enor\": 13955,\n  \"enormous</w>\": 20129,\n  \"enos</w>\": 44759,\n  \"enote</w>\": 44955,\n  \"enough</w>\": 2744,\n  \"enow</w>\": 26876,\n  \"enqu\": 28417,\n  \"enqui\": 22810,\n  \"enquire</w>\": 46658,\n  \"enquiries</w>\": 31901,\n  \"enquiry</w>\": 45141,\n  \"enri\": 18915,\n  \"enrich\": 20058,\n  \"enrich</w>\": 45504,\n  \"enriched</w>\": 45166,\n  \"enrichment</w>\": 32903,\n  \"enrique</w>\": 25489,\n  \"enrol\": 44279,\n  \"enroll\": 23739,\n  \"enroll</w>\": 30366,\n  \"enrolled</w>\": 36853,\n  \"enrollment</w>\": 24875,\n  \"enroute</w>\": 40548,\n  \"ens\": 41799,\n  \"ens</w>\": 1323,\n  \"ense\": 12657,\n  \"ense</w>\": 27658,\n  \"ensemble</w>\": 14843,\n  \"ensis</w>\": 32842,\n  \"ensla\": 37535,\n  \"enslaved</w>\": 48675,\n  \"ensure</w>\": 7492,\n  \"ensures</w>\": 29707,\n  \"ensuring</w>\": 19403,\n  \"ent\": 724,\n  \"ent</w>\": 621,\n  \"enta</w>\": 17681,\n  \"ental\": 32342,\n  \"ental</w>\": 6168,\n  \"entary</w>\": 9833,\n  \"entation</w>\": 37412,\n  \"ente\": 17433,\n  \"ente</w>\": 9935,\n  \"ented</w>\": 3800,\n  \"entennial</w>\": 43088,\n  \"enter\": 2963,\n  \"enter</w>\": 3819,\n  \"entered</w>\": 10679,\n  \"entering</w>\": 12580,\n  \"enterpri\": 7339,\n  \"enterprise</w>\": 9220,\n  \"enterprises</w>\": 21219,\n  \"enters</w>\": 15287,\n  \"entertain\": 5566,\n  \"entertain</w>\": 23510,\n  \"entertained</w>\": 30631,\n  \"entertainer</w>\": 28674,\n  \"entertaining</w>\": 13897,\n  \"entertainment</w>\": 6166,\n  \"entes</w>\": 24213,\n  \"enthr\": 36202,\n  \"enthusi\": 9631,\n  \"enthusiasm</w>\": 20525,\n  \"enthusiast</w>\": 27153,\n  \"enthusiastic</w>\": 22068,\n  \"enthusiasts</w>\": 27514,\n  \"enti\": 1938,\n  \"ential</w>\": 5194,\n  \"entially</w>\": 37695,\n  \"entic</w>\": 10340,\n  \"entine</w>\": 49212,\n  \"enting</w>\": 20526,\n  \"entire</w>\": 4709,\n  \"entirely</w>\": 13911,\n  \"entirety</w>\": 43242,\n  \"entit\": 15209,\n  \"entities</w>\": 38134,\n  \"entitled</w>\": 18680,\n  \"entity</w>\": 28455,\n  \"ently</w>\": 2922,\n  \"ento\": 21917,\n  \"ento</w>\": 8762,\n  \"entom\": 31676,\n  \"entourage</w>\": 47893,\n  \"entr\": 7129,\n  \"entrance</w>\": 9129,\n  \"entrata</w>\": 27304,\n  \"entre\": 34188,\n  \"entre</w>\": 19600,\n  \"entren\": 46959,\n  \"entrepre\": 4583,\n  \"entreprene\": 4789,\n  \"entrepreneu\": 26784,\n  \"entrepreneur\": 12119,\n  \"entrepreneur</w>\": 8033,\n  \"entrepreneurial</w>\": 28261,\n  \"entrepreneurs</w>\": 11054,\n  \"entrepreneurship</w>\": 12858,\n  \"entries</w>\": 13766,\n  \"entry</w>\": 5362,\n  \"ents</w>\": 870,\n  \"entu\": 6650,\n  \"enty</w>\": 5657,\n  \"enu\": 23430,\n  \"env\": 32280,\n  \"env</w>\": 39207,\n  \"envel\": 20052,\n  \"envelope</w>\": 27358,\n  \"envir\": 3512,\n  \"enviro</w>\": 46200,\n  \"environ\": 3599,\n  \"environment\": 33039,\n  \"environment</w>\": 5501,\n  \"environmental</w>\": 7831,\n  \"environmentally</w>\": 32855,\n  \"environments</w>\": 19577,\n  \"envision</w>\": 49031,\n  \"envoy</w>\": 29263,\n  \"envy</w>\": 21017,\n  \"eny</w>\": 20482,\n  \"enya</w>\": 36509,\n  \"enyc</w>\": 39520,\n  \"enz\": 25805,\n  \"enz</w>\": 31873,\n  \"enza</w>\": 25239,\n  \"enzie</w>\": 14839,\n  \"enzo</w>\": 31543,\n  \"enzyme</w>\": 40348,\n  \"enzymes</w>\": 47465,\n  \"eo\": 16054,\n  \"eo</w>\": 11712,\n  \"eoin</w>\": 48634,\n  \"eon</w>\": 31915,\n  \"eos</w>\": 17805,\n  \"ep\": 1178,\n  \"ep</w>\": 1117,\n  \"epa</w>\": 15866,\n  \"epage</w>\": 26931,\n  \"epaper</w>\": 33584,\n  \"epcot</w>\": 32524,\n  \"eper</w>\": 43071,\n  \"eph\": 45752,\n  \"eph</w>\": 41240,\n  \"ephe\": 25129,\n  \"epi\": 7219,\n  \"epi</w>\": 34641,\n  \"epic\": 12683,\n  \"epic</w>\": 4991,\n  \"epiconetsy</w>\": 49222,\n  \"epide\": 17382,\n  \"epidemi\": 44447,\n  \"epidemic</w>\": 21522,\n  \"epile\": 23150,\n  \"epilepsy</w>\": 29547,\n  \"epilo\": 31291,\n  \"epilots</w>\": 39766,\n  \"epiph\": 40561,\n  \"epiphany</w>\": 43251,\n  \"epis\": 24616,\n  \"episcop\": 28037,\n  \"episcopal</w>\": 31221,\n  \"episo\": 2708,\n  \"episode</w>\": 2965,\n  \"episodes</w>\": 11837,\n  \"epit\": 21967,\n  \"epitome</w>\": 35114,\n  \"epl</w>\": 25950,\n  \"epo\": 25810,\n  \"epp\": 39054,\n  \"epp</w>\": 39593,\n  \"eps</w>\": 4090,\n  \"epsilon</w>\": 40019,\n  \"epsom</w>\": 40364,\n  \"epstein</w>\": 34688,\n  \"eq\": 39331,\n  \"eq</w>\": 33692,\n  \"equ\": 2563,\n  \"equal\": 17373,\n  \"equal</w>\": 10433,\n  \"equality\": 48981,\n  \"equality</w>\": 9578,\n  \"equally</w>\": 18172,\n  \"equals</w>\": 30278,\n  \"equation</w>\": 28591,\n  \"equations</w>\": 38225,\n  \"eque\": 19518,\n  \"equestrian</w>\": 24728,\n  \"equi\": 8752,\n  \"equili\": 43262,\n  \"equine</w>\": 33801,\n  \"equinox</w>\": 32652,\n  \"equip\": 6526,\n  \"equip</w>\": 36979,\n  \"equipment</w>\": 6893,\n  \"equipo</w>\": 45688,\n  \"equipped</w>\": 18331,\n  \"equitable</w>\": 44717,\n  \"equities</w>\": 44015,\n  \"equity</w>\": 11293,\n  \"equivalent</w>\": 19489,\n  \"er\": 517,\n  \"er</w>\": 528,\n  \"era\": 30548,\n  \"era</w>\": 2072,\n  \"erable</w>\": 18801,\n  \"erad\": 24194,\n  \"eradic\": 36346,\n  \"eradicate</w>\": 46164,\n  \"eral</w>\": 6222,\n  \"eran</w>\": 13069,\n  \"eras\": 19325,\n  \"eras</w>\": 39090,\n  \"erase</w>\": 33893,\n  \"erased</w>\": 46762,\n  \"erasmus</w>\": 38935,\n  \"erc\": 5360,\n  \"erc</w>\": 32382,\n  \"erd</w>\": 25645,\n  \"erdo\": 21112,\n  \"erdogan</w>\": 24453,\n  \"ere\": 17907,\n  \"ere</w>\": 642,\n  \"erec\": 21526,\n  \"erected</w>\": 39365,\n  \"ered</w>\": 9097,\n  \"eres</w>\": 15751,\n  \"ergon\": 38120,\n  \"ergy</w>\": 19550,\n  \"eri\": 2769,\n  \"eri</w>\": 9509,\n  \"eria</w>\": 11634,\n  \"erial</w>\": 5409,\n  \"eric\": 1206,\n  \"eric</w>\": 5396,\n  \"erica</w>\": 13208,\n  \"erich</w>\": 26070,\n  \"erick\": 27434,\n  \"erick</w>\": 36959,\n  \"erickson</w>\": 45286,\n  \"ericsson</w>\": 39645,\n  \"eridge</w>\": 45408,\n  \"erie</w>\": 7005,\n  \"eries</w>\": 9099,\n  \"erik\": 22805,\n  \"erik</w>\": 16532,\n  \"erika</w>\": 25531,\n  \"erin\": 17532,\n  \"erin</w>\": 11333,\n  \"erina</w>\": 25176,\n  \"ering</w>\": 1785,\n  \"erit\": 23335,\n  \"eritrea</w>\": 30738,\n  \"erjee</w>\": 41665,\n  \"erly</w>\": 14380,\n  \"erm</w>\": 31649,\n  \"erman</w>\": 17990,\n  \"ern\": 6992,\n  \"ern</w>\": 12140,\n  \"ernal</w>\": 20868,\n  \"ernan</w>\": 34617,\n  \"ernation</w>\": 48796,\n  \"erne\": 33930,\n  \"ernest</w>\": 23006,\n  \"ernie</w>\": 23636,\n  \"ernity</w>\": 14653,\n  \"erno</w>\": 40812,\n  \"ernst</w>\": 30099,\n  \"ero\": 3211,\n  \"ero</w>\": 3732,\n  \"erock</w>\": 38206,\n  \"eron</w>\": 32837,\n  \"eroom</w>\": 46690,\n  \"eros</w>\": 30597,\n  \"erose</w>\": 48657,\n  \"erosion</w>\": 30174,\n  \"erotic</w>\": 30708,\n  \"erotica</w>\": 39126,\n  \"erous</w>\": 6384,\n  \"eroy</w>\": 36461,\n  \"erp</w>\": 28268,\n  \"err\": 22479,\n  \"err</w>\": 25346,\n  \"erra</w>\": 48446,\n  \"errands</w>\": 45485,\n  \"error</w>\": 12097,\n  \"errors</w>\": 21195,\n  \"erry\": 45236,\n  \"erry</w>\": 24124,\n  \"ers\": 4840,\n  \"ers</w>\": 612,\n  \"ersfc</w>\": 37925,\n  \"ership</w>\": 2884,\n  \"erson\": 25780,\n  \"erson</w>\": 6811,\n  \"ert\": 40325,\n  \"ert</w>\": 3112,\n  \"erta</w>\": 32007,\n  \"erton</w>\": 26245,\n  \"erts</w>\": 12921,\n  \"eru\": 36068,\n  \"erun</w>\": 41642,\n  \"erup\": 17093,\n  \"erupted</w>\": 48862,\n  \"eruption</w>\": 33705,\n  \"erville</w>\": 37557,\n  \"erwin</w>\": 43724,\n  \"ery\": 12467,\n  \"ery</w>\": 1692,\n  \"erz</w>\": 38711,\n  \"es\": 957,\n  \"es</w>\": 542,\n  \"esa\": 46834,\n  \"esa</w>\": 12489,\n  \"esanders</w>\": 23099,\n  \"esc\": 3330,\n  \"esc</w>\": 28420,\n  \"escal\": 15902,\n  \"escap\": 11499,\n  \"escape\": 32484,\n  \"escape</w>\": 7568,\n  \"escaped</w>\": 18707,\n  \"escapes</w>\": 29916,\n  \"escaping</w>\": 21767,\n  \"escar\": 39229,\n  \"escence</w>\": 37972,\n  \"esch\": 46760,\n  \"esch</w>\": 41945,\n  \"esco\": 32482,\n  \"escobar</w>\": 48807,\n  \"escor\": 24360,\n  \"escort</w>\": 24976,\n  \"escorted</w>\": 47667,\n  \"escorts</w>\": 48574,\n  \"escu\": 36517,\n  \"esday</w>\": 19553,\n  \"ese\": 18766,\n  \"ese</w>\": 2260,\n  \"esg</w>\": 41674,\n  \"esh\": 17119,\n  \"esh</w>\": 13407,\n  \"esha</w>\": 28799,\n  \"eshop\": 38451,\n  \"eshop</w>\": 45570,\n  \"eshopsuk</w>\": 39349,\n  \"esi</w>\": 30064,\n  \"esis</w>\": 12414,\n  \"esk\": 19359,\n  \"esl</w>\": 26201,\n  \"eso\": 29890,\n  \"eso</w>\": 28921,\n  \"esof\": 17047,\n  \"eson\": 46845,\n  \"esp\": 3849,\n  \"esp</w>\": 13870,\n  \"espa\": 37301,\n  \"espan\": 41731,\n  \"espaÃ±a</w>\": 41118,\n  \"especially</w>\": 4878,\n  \"esper\": 29216,\n  \"espino\": 46633,\n  \"espionage</w>\": 43498,\n  \"espn\": 22917,\n  \"espn</w>\": 7540,\n  \"espnu</w>\": 47747,\n  \"espo\": 34381,\n  \"esports</w>\": 16035,\n  \"espresso</w>\": 17098,\n  \"esq</w>\": 47352,\n  \"esqu\": 34616,\n  \"esque</w>\": 25877,\n  \"ess\": 3118,\n  \"ess</w>\": 9764,\n  \"essa</w>\": 39125,\n  \"essay</w>\": 12751,\n  \"essays</w>\": 27328,\n  \"esse</w>\": 22305,\n  \"essen</w>\": 30489,\n  \"essence</w>\": 17830,\n  \"essenti\": 11163,\n  \"essential\": 47264,\n  \"essential</w>\": 6895,\n  \"essentially</w>\": 30042,\n  \"essentials</w>\": 16191,\n  \"essex\": 30563,\n  \"essex</w>\": 11623,\n  \"est\": 2291,\n  \"est</w>\": 1509,\n  \"esta\": 41449,\n  \"esta</w>\": 10135,\n  \"estab\": 7010,\n  \"establi\": 8412,\n  \"establish</w>\": 19709,\n  \"established</w>\": 13143,\n  \"establishing</w>\": 29420,\n  \"establishment</w>\": 20213,\n  \"estas</w>\": 39072,\n  \"estate\": 47130,\n  \"estate</w>\": 6159,\n  \"estates</w>\": 26054,\n  \"este\": 12968,\n  \"este</w>\": 20579,\n  \"esteban</w>\": 48381,\n  \"esteem</w>\": 31541,\n  \"esteemed</w>\": 36293,\n  \"ester</w>\": 45808,\n  \"esthe\": 18468,\n  \"esther</w>\": 24393,\n  \"estim\": 8904,\n  \"estimate</w>\": 21883,\n  \"estimated</w>\": 16665,\n  \"estimates</w>\": 21957,\n  \"esto\": 31589,\n  \"esto</w>\": 23958,\n  \"estonia</w>\": 26260,\n  \"estonian</w>\": 48895,\n  \"estrada</w>\": 48116,\n  \"estre\": 31271,\n  \"estu\": 26272,\n  \"estuary</w>\": 35269,\n  \"esur\": 35758,\n  \"esville</w>\": 39187,\n  \"esy\": 46268,\n  \"et\": 1169,\n  \"et</w>\": 875,\n  \"eta</w>\": 8761,\n  \"etal</w>\": 25221,\n  \"etary</w>\": 13074,\n  \"etc</w>\": 5353,\n  \"etched</w>\": 40411,\n  \"etching</w>\": 41375,\n  \"ete\": 38820,\n  \"ete</w>\": 40245,\n  \"eter\": 8587,\n  \"eter</w>\": 17007,\n  \"eternal</w>\": 13732,\n  \"eternally</w>\": 48486,\n  \"eternity</w>\": 23832,\n  \"eters</w>\": 18392,\n  \"etf</w>\": 31661,\n  \"eth\": 4819,\n  \"eth</w>\": 5927,\n  \"ethan\": 24245,\n  \"ethan</w>\": 15958,\n  \"ethanol</w>\": 38166,\n  \"ethe\": 21312,\n  \"ethel</w>\": 45921,\n  \"ether\": 23349,\n  \"ethere\": 18705,\n  \"ethereal</w>\": 40925,\n  \"ethereum</w>\": 19612,\n  \"ethernet</w>\": 35026,\n  \"ethi\": 10327,\n  \"ethic</w>\": 39104,\n  \"ethical\": 47041,\n  \"ethical</w>\": 17679,\n  \"ethics</w>\": 13355,\n  \"ethiop\": 10897,\n  \"ethiopia</w>\": 13920,\n  \"ethiopian</w>\": 24507,\n  \"ethnic\": 30522,\n  \"ethnic</w>\": 16344,\n  \"ethnicity</w>\": 46787,\n  \"ethno\": 34225,\n  \"ethos</w>\": 48768,\n  \"eti\": 11188,\n  \"eti</w>\": 30394,\n  \"etienne</w>\": 46118,\n  \"eties</w>\": 15137,\n  \"etihad</w>\": 38489,\n  \"etiquette</w>\": 37957,\n  \"etis\": 38216,\n  \"etisation</w>\": 39733,\n  \"etna</w>\": 41940,\n  \"eto\": 27829,\n  \"eto</w>\": 33837,\n  \"eton</w>\": 44339,\n  \"etour</w>\": 41462,\n  \"etr\": 23012,\n  \"etres</w>\": 42838,\n  \"ets</w>\": 3442,\n  \"etsy\": 13237,\n  \"etsy</w>\": 6282,\n  \"etsym\": 22902,\n  \"etsymntt</w>\": 25416,\n  \"etsyshop</w>\": 44643,\n  \"ett\": 32729,\n  \"ett</w>\": 24998,\n  \"etta</w>\": 30466,\n  \"ette\": 19981,\n  \"ette</w>\": 5212,\n  \"ettes</w>\": 35326,\n  \"etto</w>\": 44219,\n  \"etty</w>\": 40759,\n  \"etu\": 36593,\n  \"etv\": 49155,\n  \"etv</w>\": 20325,\n  \"etwork</w>\": 20585,\n  \"ety\": 25920,\n  \"ety</w>\": 2746,\n  \"etz\": 36181,\n  \"etz</w>\": 25301,\n  \"eu\": 1506,\n  \"eu</w>\": 3238,\n  \"eucalyp\": 41068,\n  \"eucalyptus</w>\": 42351,\n  \"euchar\": 38362,\n  \"eugen\": 30678,\n  \"eugene</w>\": 17760,\n  \"eul\": 46749,\n  \"eun\": 16431,\n  \"eun</w>\": 26219,\n  \"eunhyuk</w>\": 47526,\n  \"eup\": 44435,\n  \"euph\": 21386,\n  \"euphoria</w>\": 41051,\n  \"eur\": 18343,\n  \"eur</w>\": 12018,\n  \"eura\": 32605,\n  \"eure\": 25311,\n  \"euref</w>\": 48017,\n  \"eureka</w>\": 31686,\n  \"euro\": 2039,\n  \"euro</w>\": 8463,\n  \"euroleague</w>\": 46821,\n  \"europa</w>\": 18290,\n  \"europale\": 42473,\n  \"europaleague</w>\": 44029,\n  \"europarl</w>\": 44922,\n  \"europe\": 4198,\n  \"europe</w>\": 3848,\n  \"european\": 26712,\n  \"european</w>\": 4759,\n  \"europeans</w>\": 37082,\n  \"euros</w>\": 22274,\n  \"eurovision</w>\": 17593,\n  \"eurozone</w>\": 42555,\n  \"eurusd</w>\": 40895,\n  \"eus</w>\": 44214,\n  \"euston</w>\": 46905,\n  \"euthan\": 43280,\n  \"euve</w>\": 40652,\n  \"eux</w>\": 25019,\n  \"ev\": 776,\n  \"ev</w>\": 10133,\n  \"eva</w>\": 6845,\n  \"evacu\": 13187,\n  \"evacuated</w>\": 26806,\n  \"evacuation</w>\": 27353,\n  \"eval\": 25139,\n  \"eval</w>\": 9703,\n  \"evalu\": 10314,\n  \"evaluate</w>\": 27174,\n  \"evaluating</w>\": 34541,\n  \"evaluation</w>\": 17640,\n  \"evan\": 12821,\n  \"evan</w>\": 12847,\n  \"evangel\": 20518,\n  \"evangeli\": 21372,\n  \"evangelical</w>\": 36151,\n  \"evangelist</w>\": 42275,\n  \"evankirstel</w>\": 46581,\n  \"evans</w>\": 8836,\n  \"evansville</w>\": 44782,\n  \"evapor\": 33352,\n  \"evasion</w>\": 48795,\n  \"eve\": 5732,\n  \"eve</w>\": 1866,\n  \"eved</w>\": 19820,\n  \"evel\": 39315,\n  \"evelyn</w>\": 26687,\n  \"evement</w>\": 8210,\n  \"even\": 6359,\n  \"even</w>\": 1427,\n  \"evening\": 34487,\n  \"evening</w>\": 2285,\n  \"evenings</w>\": 19994,\n  \"evenly</w>\": 45974,\n  \"event\": 10612,\n  \"event</w>\": 1655,\n  \"eventful</w>\": 45628,\n  \"evento</w>\": 38155,\n  \"eventprofs</w>\": 24980,\n  \"events</w>\": 3667,\n  \"eventu\": 14055,\n  \"eventual</w>\": 45321,\n  \"eventually</w>\": 14397,\n  \"ever\": 888,\n  \"ever</w>\": 1247,\n  \"everest</w>\": 21722,\n  \"everett</w>\": 25456,\n  \"everglades</w>\": 46294,\n  \"evergreen</w>\": 23852,\n  \"everlasting</w>\": 32849,\n  \"evers</w>\": 31914,\n  \"everton</w>\": 13315,\n  \"every\": 1091,\n  \"every</w>\": 1505,\n  \"everybody</w>\": 5901,\n  \"everyday\": 25049,\n  \"everyday</w>\": 5160,\n  \"everyone</w>\": 1584,\n  \"everything\": 36376,\n  \"everything</w>\": 2410,\n  \"everytime</w>\": 16911,\n  \"everywhere</w>\": 6364,\n  \"eves</w>\": 7323,\n  \"evi\": 5348,\n  \"evi</w>\": 36989,\n  \"evic\": 21336,\n  \"eviction</w>\": 37111,\n  \"eviden\": 46220,\n  \"evidence</w>\": 6439,\n  \"evident</w>\": 34529,\n  \"evie</w>\": 47195,\n  \"evil\": 23218,\n  \"evil</w>\": 6006,\n  \"eville</w>\": 16143,\n  \"eving</w>\": 24729,\n  \"evo\": 17962,\n  \"evo</w>\": 13169,\n  \"evoc\": 43133,\n  \"evol\": 5350,\n  \"evolu\": 7725,\n  \"evolution</w>\": 8902,\n  \"evolutionary</w>\": 30629,\n  \"evolve</w>\": 23406,\n  \"evolved</w>\": 22613,\n  \"evolving</w>\": 23675,\n  \"evp</w>\": 46154,\n  \"evs</w>\": 33576,\n  \"ew\": 11942,\n  \"ew</w>\": 15428,\n  \"ewan</w>\": 40247,\n  \"ewe</w>\": 48438,\n  \"ewing</w>\": 38873,\n  \"ews</w>\": 9878,\n  \"ex\": 659,\n  \"ex</w>\": 4118,\n  \"exac\": 5460,\n  \"exact</w>\": 12651,\n  \"exactly</w>\": 5840,\n  \"exagger\": 29766,\n  \"exal\": 49324,\n  \"exam\": 4428,\n  \"exam</w>\": 8785,\n  \"examination</w>\": 20970,\n  \"examine</w>\": 25728,\n  \"examined</w>\": 44004,\n  \"examiner</w>\": 29149,\n  \"examines</w>\": 28160,\n  \"examining</w>\": 30616,\n  \"example</w>\": 6228,\n  \"examples</w>\": 14790,\n  \"exams</w>\": 14028,\n  \"exas</w>\": 47536,\n  \"exc\": 1302,\n  \"excav\": 20733,\n  \"excavation</w>\": 45909,\n  \"exce\": 10999,\n  \"exceed</w>\": 32521,\n  \"exceeded</w>\": 36221,\n  \"exceeding</w>\": 47213,\n  \"exceeds</w>\": 49353,\n  \"excel\": 28351,\n  \"excel</w>\": 18754,\n  \"excell\": 3298,\n  \"excellence</w>\": 8171,\n  \"excellency</w>\": 36503,\n  \"excellent</w>\": 4239,\n  \"excelsi\": 47315,\n  \"excep\": 8882,\n  \"except</w>\": 8541,\n  \"exception</w>\": 25018,\n  \"exceptional</w>\": 13425,\n  \"exceptionally</w>\": 29306,\n  \"excer\": 17737,\n  \"excerpt</w>\": 20586,\n  \"excess</w>\": 22491,\n  \"excessive</w>\": 21332,\n  \"exchange</w>\": 6616,\n  \"exchanged</w>\": 48919,\n  \"exchanges</w>\": 29730,\n  \"exchanging</w>\": 47760,\n  \"excit\": 10510,\n  \"excite</w>\": 47711,\n  \"excited</w>\": 1889,\n  \"excitement</w>\": 11407,\n  \"exciting</w>\": 4300,\n  \"exclu\": 3114,\n  \"exclude</w>\": 49235,\n  \"excluded</w>\": 46216,\n  \"excluding</w>\": 44326,\n  \"exclusion</w>\": 40219,\n  \"exclusive</w>\": 3747,\n  \"exclusively</w>\": 13565,\n  \"exclusives</w>\": 47149,\n  \"excu\": 7324,\n  \"excur\": 27533,\n  \"excursion</w>\": 34869,\n  \"excuse</w>\": 9266,\n  \"excuses</w>\": 19388,\n  \"exe\": 3554,\n  \"exe</w>\": 48027,\n  \"exec</w>\": 15052,\n  \"execs</w>\": 35728,\n  \"execu\": 4360,\n  \"execute</w>\": 36405,\n  \"executed</w>\": 20432,\n  \"execution</w>\": 18085,\n  \"executive</w>\": 5944,\n  \"executives</w>\": 24357,\n  \"exem\": 19753,\n  \"exemp\": 28602,\n  \"exempl\": 36371,\n  \"exemplary</w>\": 39123,\n  \"exempli\": 41934,\n  \"exempt</w>\": 44278,\n  \"exemption</w>\": 47481,\n  \"exer\": 40295,\n  \"exerc\": 5932,\n  \"exercise</w>\": 7016,\n  \"exercises</w>\": 19669,\n  \"exercising</w>\": 39036,\n  \"exeter\": 32137,\n  \"exeter</w>\": 18837,\n  \"exfoli\": 38823,\n  \"exhau\": 11154,\n  \"exhaust</w>\": 21812,\n  \"exhausted</w>\": 21741,\n  \"exhausting</w>\": 40035,\n  \"exhaustion</w>\": 49221,\n  \"exhi\": 3022,\n  \"exhib\": 3783,\n  \"exhibit\": 24992,\n  \"exhibit</w>\": 8209,\n  \"exhibiting</w>\": 23889,\n  \"exhibition</w>\": 4219,\n  \"exhibitions</w>\": 28311,\n  \"exhibitor</w>\": 44192,\n  \"exhibitors</w>\": 38542,\n  \"exhibits</w>\": 30093,\n  \"exhilar\": 40262,\n  \"exhilarating</w>\": 49289,\n  \"exi\": 5297,\n  \"exico</w>\": 38712,\n  \"exile</w>\": 28566,\n  \"exist\": 10899,\n  \"exist</w>\": 9645,\n  \"existed</w>\": 23198,\n  \"existence</w>\": 13832,\n  \"existent</w>\": 43541,\n  \"existential</w>\": 38752,\n  \"existing</w>\": 12886,\n  \"exists</w>\": 14608,\n  \"exit</w>\": 9374,\n  \"exited</w>\": 37581,\n  \"exiting</w>\": 39577,\n  \"exits</w>\": 34943,\n  \"exmoor</w>\": 48260,\n  \"exo\": 15600,\n  \"exo</w>\": 5842,\n  \"exodus</w>\": 30098,\n  \"exol</w>\": 42856,\n  \"exop\": 35288,\n  \"exoplan\": 37980,\n  \"exor\": 24506,\n  \"exorcist</w>\": 46309,\n  \"exotic</w>\": 15639,\n  \"exp\": 9923,\n  \"exp</w>\": 19066,\n  \"expan\": 7512,\n  \"expand\": 10382,\n  \"expand</w>\": 13141,\n  \"expanded</w>\": 18390,\n  \"expanding</w>\": 15755,\n  \"expands</w>\": 22223,\n  \"expanse</w>\": 46886,\n  \"expansion</w>\": 10138,\n  \"expansive</w>\": 49261,\n  \"expat</w>\": 43900,\n  \"expe\": 2560,\n  \"expect\": 9802,\n  \"expect</w>\": 5716,\n  \"expectation</w>\": 34273,\n  \"expectations</w>\": 12529,\n  \"expected</w>\": 5573,\n  \"expecting</w>\": 12525,\n  \"expects</w>\": 24536,\n  \"expedition</w>\": 16761,\n  \"expeditions</w>\": 49327,\n  \"expelled</w>\": 48834,\n  \"expen\": 7216,\n  \"expend\": 29302,\n  \"expenditure</w>\": 47044,\n  \"expense</w>\": 28473,\n  \"expenses</w>\": 21797,\n  \"expensive</w>\": 9649,\n  \"exper\": 1533,\n  \"experi\": 4723,\n  \"experience\": 31867,\n  \"experience</w>\": 2415,\n  \"experienced</w>\": 10417,\n  \"experiences</w>\": 8233,\n  \"experiencing</w>\": 16643,\n  \"experiential</w>\": 44952,\n  \"experim\": 6697,\n  \"experiment</w>\": 13079,\n  \"experimental</w>\": 16539,\n  \"experimenting</w>\": 28263,\n  \"experiments</w>\": 21077,\n  \"expert</w>\": 6284,\n  \"expertise</w>\": 16555,\n  \"experts</w>\": 6960,\n  \"expi\": 26850,\n  \"expir\": 35077,\n  \"expire</w>\": 49315,\n  \"expired</w>\": 30200,\n  \"expires</w>\": 34739,\n  \"expl\": 3261,\n  \"expla\": 3517,\n  \"explain\": 48918,\n  \"explain</w>\": 7304,\n  \"explained</w>\": 14229,\n  \"explaining</w>\": 13136,\n  \"explains</w>\": 6655,\n  \"explan\": 13294,\n  \"explanation</w>\": 16577,\n  \"explanations</w>\": 34383,\n  \"explic\": 21011,\n  \"explicit</w>\": 33228,\n  \"explo\": 3586,\n  \"explode</w>\": 31262,\n  \"exploded</w>\": 28947,\n  \"explodes</w>\": 38119,\n  \"exploding</w>\": 34683,\n  \"exploit</w>\": 36953,\n  \"exploited</w>\": 48554,\n  \"explor\": 11958,\n  \"exploration</w>\": 14043,\n  \"explore\": 10405,\n  \"explore</w>\": 5147,\n  \"explorebc</w>\": 38754,\n  \"explorecanada</w>\": 36600,\n  \"explored</w>\": 25016,\n  \"explorer</w>\": 15776,\n  \"explorers</w>\": 28491,\n  \"explores</w>\": 13996,\n  \"exploring</w>\": 7584,\n  \"explosion</w>\": 13785,\n  \"explosions</w>\": 38646,\n  \"explosive</w>\": 18888,\n  \"explosives</w>\": 44705,\n  \"expo\": 7820,\n  \"expo</w>\": 6344,\n  \"expon\": 27905,\n  \"export</w>\": 14444,\n  \"exporting</w>\": 47433,\n  \"exports</w>\": 20088,\n  \"expose</w>\": 23181,\n  \"exposed</w>\": 12180,\n  \"exposes</w>\": 33575,\n  \"exposing</w>\": 28362,\n  \"exposition</w>\": 36943,\n  \"exposure</w>\": 11903,\n  \"expre\": 6085,\n  \"express\": 18553,\n  \"express</w>\": 5642,\n  \"expressed</w>\": 20777,\n  \"expresses</w>\": 31931,\n  \"expressing</w>\": 30207,\n  \"expression</w>\": 11357,\n  \"expressions</w>\": 20314,\n  \"expressive</w>\": 42060,\n  \"expressway</w>\": 31658,\n  \"exquis\": 16575,\n  \"exquisite</w>\": 17958,\n  \"ext\": 5711,\n  \"ext</w>\": 20072,\n  \"exten\": 5555,\n  \"extend</w>\": 14492,\n  \"extended</w>\": 9614,\n  \"extending</w>\": 25652,\n  \"extends</w>\": 20688,\n  \"extension</w>\": 10275,\n  \"extensions</w>\": 24525,\n  \"extensive</w>\": 16870,\n  \"extensively</w>\": 47365,\n  \"extent</w>\": 24913,\n  \"exter\": 9797,\n  \"exterior</w>\": 19352,\n  \"extermin\": 41671,\n  \"external</w>\": 15028,\n  \"extin\": 13553,\n  \"extinct</w>\": 24488,\n  \"extinction</w>\": 21186,\n  \"extingui\": 38567,\n  \"extor\": 35620,\n  \"extr\": 29082,\n  \"extra\": 6416,\n  \"extra</w>\": 4231,\n  \"extrac\": 18550,\n  \"extract</w>\": 18962,\n  \"extraction</w>\": 28789,\n  \"extracts</w>\": 45576,\n  \"extraordin\": 23628,\n  \"extraordinaire</w>\": 30909,\n  \"extraordinary</w>\": 10982,\n  \"extras</w>\": 29817,\n  \"extravag\": 22299,\n  \"extravaganza</w>\": 29461,\n  \"extre\": 3978,\n  \"extreme\": 38357,\n  \"extreme</w>\": 8331,\n  \"extremely</w>\": 6519,\n  \"extremism</w>\": 31493,\n  \"extremist</w>\": 36383,\n  \"extremists</w>\": 41425,\n  \"extru\": 43010,\n  \"ey\": 1541,\n  \"ey</w>\": 1477,\n  \"eyang</w>\": 28915,\n  \"eye\": 5034,\n  \"eye</w>\": 3272,\n  \"eyebrow</w>\": 34250,\n  \"eyebrows</w>\": 19923,\n  \"eyed</w>\": 15512,\n  \"eyeing</w>\": 34916,\n  \"eyel\": 17075,\n  \"eyelashes</w>\": 42074,\n  \"eyeliner</w>\": 33354,\n  \"eyeon</w>\": 25126,\n  \"eyes</w>\": 3095,\n  \"eyeshadow</w>\": 35213,\n  \"eyewear</w>\": 30165,\n  \"eyewitness</w>\": 36258,\n  \"eyou\": 31996,\n  \"eyour\": 40229,\n  \"eyre</w>\": 44115,\n  \"ez\": 10082,\n  \"ez</w>\": 8387,\n  \"eze\": 25993,\n  \"eze</w>\": 27229,\n  \"ezekiel</w>\": 41428,\n  \"ezra</w>\": 27552,\n  \"f\": 69,\n  \"f</w>\": 325,\n  \"fa\": 778,\n  \"fa</w>\": 2800,\n  \"faa</w>\": 27577,\n  \"fab\": 2833,\n  \"fab</w>\": 5492,\n  \"faber\": 43461,\n  \"faber</w>\": 42488,\n  \"fabi\": 29425,\n  \"fabian</w>\": 34539,\n  \"fabio</w>\": 31666,\n  \"fabric\": 16217,\n  \"fabric</w>\": 10033,\n  \"fabricated</w>\": 40851,\n  \"fabrication</w>\": 33476,\n  \"fabrics</w>\": 23159,\n  \"fabulous</w>\": 5189,\n  \"fac\": 1053,\n  \"fac</w>\": 35438,\n  \"facade</w>\": 29217,\n  \"face\": 2545,\n  \"face</w>\": 1710,\n  \"facebook\": 36156,\n  \"facebook</w>\": 2943,\n  \"faced</w>\": 10941,\n  \"faceli\": 32023,\n  \"facelift</w>\": 36380,\n  \"faceoff</w>\": 42710,\n  \"facep\": 45285,\n  \"faces</w>\": 4905,\n  \"faceted</w>\": 43435,\n  \"facetime</w>\": 24076,\n  \"facial</w>\": 11909,\n  \"facil\": 39973,\n  \"facilit\": 13567,\n  \"facilitate</w>\": 26733,\n  \"facilitated</w>\": 43853,\n  \"facilitating</w>\": 34796,\n  \"facilities</w>\": 10388,\n  \"facility</w>\": 8165,\n  \"facing</w>\": 7619,\n  \"fact\": 17189,\n  \"fact</w>\": 3598,\n  \"factfriday</w>\": 27953,\n  \"faction</w>\": 14629,\n  \"factor\": 21082,\n  \"factor</w>\": 8124,\n  \"factories</w>\": 36492,\n  \"factors</w>\": 12733,\n  \"factory\": 42483,\n  \"factory</w>\": 6072,\n  \"facts</w>\": 5085,\n  \"factual</w>\": 45471,\n  \"faculty</w>\": 9504,\n  \"facup</w>\": 25283,\n  \"fad\": 12632,\n  \"fad</w>\": 47669,\n  \"fade</w>\": 20486,\n  \"faded</w>\": 26051,\n  \"fades</w>\": 40441,\n  \"fading</w>\": 32882,\n  \"fadnavis</w>\": 38945,\n  \"faf\": 31052,\n  \"faf</w>\": 43903,\n  \"fag\": 25617,\n  \"fag</w>\": 39305,\n  \"fah\": 25495,\n  \"fah</w>\": 35429,\n  \"fahren\": 45527,\n  \"fai\": 20519,\n  \"fai</w>\": 26384,\n  \"fail\": 7105,\n  \"fail</w>\": 6801,\n  \"failed</w>\": 8314,\n  \"failing</w>\": 15757,\n  \"fails</w>\": 13388,\n  \"failure</w>\": 8732,\n  \"failures</w>\": 25442,\n  \"faint</w>\": 30807,\n  \"fair\": 3031,\n  \"fair</w>\": 2849,\n  \"fairbanks</w>\": 43962,\n  \"faire\": 34745,\n  \"faire</w>\": 20798,\n  \"fairfax</w>\": 29368,\n  \"fairfield</w>\": 29664,\n  \"fairgrounds</w>\": 38325,\n  \"fairi\": 28884,\n  \"fairies</w>\": 33590,\n  \"fairly</w>\": 14961,\n  \"fairmont</w>\": 41547,\n  \"fairness</w>\": 29388,\n  \"fairs</w>\": 8655,\n  \"fairtrade</w>\": 33361,\n  \"fairview</w>\": 43479,\n  \"fairway</w>\": 44022,\n  \"fairy\": 17021,\n  \"fairy</w>\": 10444,\n  \"fairytale</w>\": 28944,\n  \"fais\": 23542,\n  \"faisal</w>\": 35459,\n  \"fait</w>\": 20567,\n  \"faith\": 10653,\n  \"faith</w>\": 5080,\n  \"faithful</w>\": 15511,\n  \"faiz\": 41775,\n  \"fake\": 18794,\n  \"fake</w>\": 5777,\n  \"faken\": 22853,\n  \"fakenews</w>\": 26943,\n  \"fakespeare</w>\": 49095,\n  \"fal\": 2778,\n  \"fal</w>\": 40494,\n  \"fala\": 47120,\n  \"falcon\": 22498,\n  \"falcon</w>\": 13571,\n  \"falcons</w>\": 13834,\n  \"falk\": 34648,\n  \"falkirk</w>\": 44080,\n  \"fall\": 6489,\n  \"fall</w>\": 2359,\n  \"fallen</w>\": 8688,\n  \"falling\": 48709,\n  \"falling</w>\": 7293,\n  \"fallon\": 39596,\n  \"fallon</w>\": 21281,\n  \"fallontonight</w>\": 44627,\n  \"fallout\": 49365,\n  \"fallout</w>\": 16009,\n  \"falls</w>\": 4778,\n  \"falmouth</w>\": 38261,\n  \"false\": 38948,\n  \"false</w>\": 9078,\n  \"falsely</w>\": 42321,\n  \"fam\": 1058,\n  \"fam</w>\": 5128,\n  \"fame</w>\": 6573,\n  \"famed</w>\": 23302,\n  \"famer</w>\": 24554,\n  \"famil\": 3395,\n  \"famili\": 8488,\n  \"familia</w>\": 25622,\n  \"familiar</w>\": 10020,\n  \"families</w>\": 4612,\n  \"family\": 8137,\n  \"family</w>\": 1315,\n  \"familyfun</w>\": 46308,\n  \"familytime</w>\": 47236,\n  \"familytravel</w>\": 38222,\n  \"famine</w>\": 35847,\n  \"famous\": 44811,\n  \"famous</w>\": 4096,\n  \"famously</w>\": 44505,\n  \"fan\": 1675,\n  \"fan</w>\": 2261,\n  \"fanart\": 41059,\n  \"fanart</w>\": 7855,\n  \"fanartfriday</w>\": 45346,\n  \"fanatic</w>\": 36643,\n  \"fanatics</w>\": 39610,\n  \"fanbase</w>\": 36921,\n  \"fanboy</w>\": 43369,\n  \"fanc\": 29017,\n  \"fancafe</w>\": 45080,\n  \"fanci\": 35908,\n  \"fanclub</w>\": 31530,\n  \"fancy\": 47622,\n  \"fancy</w>\": 6733,\n  \"fand\": 19684,\n  \"fandom\": 47634,\n  \"fandom</w>\": 11534,\n  \"fanfest</w>\": 42916,\n  \"fanfic</w>\": 47243,\n  \"fang\": 14269,\n  \"fang</w>\": 27428,\n  \"fangirl</w>\": 28813,\n  \"fangirling</w>\": 39463,\n  \"fanning</w>\": 37282,\n  \"fanny</w>\": 30401,\n  \"fans\": 32454,\n  \"fans</w>\": 1840,\n  \"fansign</w>\": 25288,\n  \"fant\": 4467,\n  \"fanta\": 2703,\n  \"fantaken</w>\": 39412,\n  \"fantasia</w>\": 49306,\n  \"fantastic\": 31289,\n  \"fantastic</w>\": 2935,\n  \"fantasy\": 15124,\n  \"fantasy</w>\": 5267,\n  \"fantasyfootball</w>\": 35713,\n  \"fao</w>\": 31155,\n  \"faq</w>\": 28533,\n  \"far\": 1578,\n  \"far</w>\": 2384,\n  \"fara</w>\": 48562,\n  \"farage</w>\": 28340,\n  \"farah</w>\": 31547,\n  \"fare\": 8620,\n  \"fare</w>\": 6461,\n  \"fares</w>\": 27525,\n  \"farewell</w>\": 10734,\n  \"fargo</w>\": 18870,\n  \"fari\": 26197,\n  \"farley</w>\": 43761,\n  \"farm\": 9066,\n  \"farm</w>\": 3985,\n  \"farmer\": 19735,\n  \"farmer</w>\": 10474,\n  \"farmers\": 29752,\n  \"farmers</w>\": 6402,\n  \"farmersmarket</w>\": 41808,\n  \"farmhouse</w>\": 26293,\n  \"farming</w>\": 10399,\n  \"farmington</w>\": 49305,\n  \"farmland</w>\": 45258,\n  \"farms</w>\": 11277,\n  \"farn\": 27527,\n  \"faroo\": 39147,\n  \"farra\": 33657,\n  \"farrakhan</w>\": 46293,\n  \"farrell</w>\": 24234,\n  \"fart</w>\": 34664,\n  \"farther</w>\": 42233,\n  \"fas\": 4830,\n  \"fas</w>\": 42995,\n  \"fasci\": 17191,\n  \"fascin\": 7327,\n  \"fascinated</w>\": 32964,\n  \"fascinating</w>\": 8640,\n  \"fascism</w>\": 28213,\n  \"fascist</w>\": 23870,\n  \"fascists</w>\": 43598,\n  \"fash\": 42682,\n  \"fashi\": 2099,\n  \"fashion\": 6976,\n  \"fashion</w>\": 2444,\n  \"fashionable</w>\": 24597,\n  \"fashionblogger</w>\": 31726,\n  \"fashioned</w>\": 21563,\n  \"fashioni\": 26062,\n  \"fashionista</w>\": 30415,\n  \"fashions</w>\": 37601,\n  \"fashionshow</w>\": 45653,\n  \"fashionweek</w>\": 28684,\n  \"fass\": 42398,\n  \"fast\": 8509,\n  \"fast</w>\": 1953,\n  \"fasten\": 44990,\n  \"faster</w>\": 8835,\n  \"fastest</w>\": 9808,\n  \"fasting</w>\": 24656,\n  \"fat\": 4751,\n  \"fat</w>\": 5484,\n  \"fatal</w>\": 12124,\n  \"fatalities</w>\": 44168,\n  \"fatally</w>\": 34069,\n  \"fate\": 26315,\n  \"fate</w>\": 11734,\n  \"father\": 11607,\n  \"father</w>\": 3224,\n  \"fathers</w>\": 12780,\n  \"fathersday</w>\": 16731,\n  \"fati\": 13430,\n  \"fatigue</w>\": 23747,\n  \"fatima</w>\": 28202,\n  \"fats</w>\": 30151,\n  \"fatt\": 44131,\n  \"fatty</w>\": 22953,\n  \"fau\": 5571,\n  \"fau</w>\": 31381,\n  \"faucet</w>\": 44273,\n  \"faul\": 16230,\n  \"faulkner</w>\": 37840,\n  \"fault</w>\": 13862,\n  \"faults</w>\": 42752,\n  \"faulty</w>\": 47103,\n  \"fauna</w>\": 30808,\n  \"faust</w>\": 44772,\n  \"faux</w>\": 19429,\n  \"fav\": 1355,\n  \"fav</w>\": 5426,\n  \"fave</w>\": 7272,\n  \"faves</w>\": 18003,\n  \"favor\": 1766,\n  \"favor</w>\": 12160,\n  \"favorable</w>\": 35392,\n  \"favored</w>\": 46640,\n  \"favorite\": 35262,\n  \"favorite</w>\": 1916,\n  \"favorited</w>\": 36926,\n  \"favorites</w>\": 10564,\n  \"favors</w>\": 36085,\n  \"favour\": 3111,\n  \"favour</w>\": 20469,\n  \"favourite</w>\": 3342,\n  \"favourites</w>\": 16585,\n  \"favs</w>\": 18879,\n  \"faw\": 21800,\n  \"fawad\": 46425,\n  \"fawn</w>\": 48624,\n  \"fax\": 32535,\n  \"fax</w>\": 9337,\n  \"fay\": 8939,\n  \"fay</w>\": 40074,\n  \"faye</w>\": 30257,\n  \"fayette\": 32043,\n  \"fayette</w>\": 19782,\n  \"fayetteville</w>\": 37771,\n  \"fayre</w>\": 34982,\n  \"faz\": 26238,\n  \"faze</w>\": 44880,\n  \"fb\": 22637,\n  \"fb</w>\": 3307,\n  \"fball</w>\": 29663,\n  \"fbf</w>\": 20004,\n  \"fbi</w>\": 10293,\n  \"fbloggers</w>\": 41389,\n  \"fbs</w>\": 48454,\n  \"fc\": 4278,\n  \"fc</w>\": 1399,\n  \"fca</w>\": 24540,\n  \"fcb\": 26639,\n  \"fcb</w>\": 25045,\n  \"fcbarcelona</w>\": 32174,\n  \"fcbayern</w>\": 35033,\n  \"fcblive</w>\": 44608,\n  \"fcc</w>\": 21240,\n  \"fck\": 40080,\n  \"fck</w>\": 49263,\n  \"fcofficial</w>\": 27805,\n  \"fcs</w>\": 32095,\n  \"fcu</w>\": 47898,\n  \"fd\": 16972,\n  \"fd</w>\": 11525,\n  \"fda</w>\": 17823,\n  \"fdi</w>\": 45579,\n  \"fdn</w>\": 18563,\n  \"fdny</w>\": 41084,\n  \"fdr</w>\": 42298,\n  \"fe\": 623,\n  \"fe</w>\": 873,\n  \"fear\": 8744,\n  \"fear</w>\": 5402,\n  \"feared</w>\": 31154,\n  \"fearless</w>\": 17470,\n  \"fears</w>\": 13867,\n  \"fearthe\": 33449,\n  \"feasi\": 34977,\n  \"feast\": 37963,\n  \"feast</w>\": 9564,\n  \"feat\": 1703,\n  \"feat</w>\": 5611,\n  \"feather\": 24905,\n  \"feather</w>\": 17871,\n  \"feathers</w>\": 21138,\n  \"featherweight</w>\": 44939,\n  \"feature\": 30413,\n  \"feature</w>\": 4527,\n  \"featured</w>\": 4743,\n  \"features</w>\": 4643,\n  \"featuring</w>\": 3706,\n  \"feb</w>\": 4317,\n  \"febru\": 4202,\n  \"february</w>\": 4248,\n  \"fect</w>\": 31293,\n  \"fed\": 22518,\n  \"fed</w>\": 7035,\n  \"feder\": 4737,\n  \"federal</w>\": 6369,\n  \"federation</w>\": 15530,\n  \"federer</w>\": 18246,\n  \"federico</w>\": 40539,\n  \"fedex</w>\": 32603,\n  \"fedora</w>\": 45111,\n  \"feds</w>\": 30593,\n  \"fee\": 28242,\n  \"fee</w>\": 9224,\n  \"feed\": 6662,\n  \"feed</w>\": 5839,\n  \"feedback</w>\": 8683,\n  \"feeder</w>\": 24482,\n  \"feeders</w>\": 44523,\n  \"feeding</w>\": 9879,\n  \"feeds</w>\": 21788,\n  \"feel\": 2408,\n  \"feel</w>\": 2051,\n  \"feelin</w>\": 19903,\n  \"feeling\": 33087,\n  \"feeling</w>\": 3045,\n  \"feelings</w>\": 9452,\n  \"feels</w>\": 4808,\n  \"feelthe\": 22322,\n  \"feelthebern</w>\": 27743,\n  \"fees</w>\": 11765,\n  \"feet</w>\": 4804,\n  \"fei\": 23441,\n  \"fei</w>\": 34217,\n  \"fein\": 46707,\n  \"feinstein</w>\": 41313,\n  \"fel\": 2081,\n  \"fel</w>\": 20304,\n  \"feld\": 45913,\n  \"feld</w>\": 14219,\n  \"feldman</w>\": 41942,\n  \"feli\": 7498,\n  \"felic\": 25845,\n  \"felici\": 23379,\n  \"felicia</w>\": 41139,\n  \"felicidades</w>\": 41648,\n  \"felicity</w>\": 35123,\n  \"feline</w>\": 29471,\n  \"felipe</w>\": 27681,\n  \"felix\": 33455,\n  \"felix</w>\": 16514,\n  \"feliz\": 26104,\n  \"feliz</w>\": 20221,\n  \"fell\": 33540,\n  \"fell</w>\": 6266,\n  \"fella</w>\": 17586,\n  \"fellas</w>\": 18787,\n  \"feller</w>\": 29226,\n  \"fellow\": 12099,\n  \"fellow</w>\": 5242,\n  \"fellows</w>\": 15766,\n  \"fellowship</w>\": 13857,\n  \"felony</w>\": 31068,\n  \"felt</w>\": 5413,\n  \"fem\": 24574,\n  \"fem</w>\": 36615,\n  \"fema</w>\": 41721,\n  \"female\": 22062,\n  \"female</w>\": 3970,\n  \"females</w>\": 21028,\n  \"femi</w>\": 38607,\n  \"femin\": 11423,\n  \"femini\": 11894,\n  \"feminine</w>\": 24911,\n  \"feminism</w>\": 18784,\n  \"feminist</w>\": 14921,\n  \"feminists</w>\": 38809,\n  \"femme</w>\": 31331,\n  \"fen\": 5509,\n  \"fen</w>\": 25024,\n  \"fence</w>\": 12679,\n  \"fences</w>\": 34312,\n  \"fencing</w>\": 23489,\n  \"fender</w>\": 17117,\n  \"fener\": 41208,\n  \"fenerbah\": 46652,\n  \"feng</w>\": 33291,\n  \"fennel</w>\": 28689,\n  \"fent\": 26395,\n  \"fenton</w>\": 47265,\n  \"fenway</w>\": 29206,\n  \"fer\": 1765,\n  \"fer</w>\": 2897,\n  \"fera</w>\": 37705,\n  \"feral</w>\": 29972,\n  \"ferdin\": 25541,\n  \"ferdinand</w>\": 27591,\n  \"fere</w>\": 43144,\n  \"feren\": 35652,\n  \"ference</w>\": 19984,\n  \"ferg</w>\": 44938,\n  \"fergie</w>\": 39119,\n  \"fergu\": 10988,\n  \"fergus</w>\": 42041,\n  \"ferguson</w>\": 11904,\n  \"fermentation</w>\": 45817,\n  \"fermented</w>\": 36886,\n  \"fern\": 10747,\n  \"fern</w>\": 21685,\n  \"fernandes</w>\": 44391,\n  \"fernandez</w>\": 23436,\n  \"fernando</w>\": 17140,\n  \"ferns</w>\": 38277,\n  \"feroci\": 45652,\n  \"ferr\": 7256,\n  \"ferra\": 47911,\n  \"ferrari</w>\": 9606,\n  \"ferre\": 29626,\n  \"ferred</w>\": 10432,\n  \"ferreira</w>\": 48686,\n  \"ferrell</w>\": 41112,\n  \"ferrer</w>\": 38904,\n  \"ferri\": 42008,\n  \"ferries</w>\": 28489,\n  \"ferris</w>\": 27532,\n  \"ferry\": 38936,\n  \"ferry</w>\": 10278,\n  \"fers</w>\": 12378,\n  \"fert\": 14925,\n  \"fert</w>\": 43662,\n  \"fertil\": 41987,\n  \"fertile</w>\": 44837,\n  \"fertili\": 23912,\n  \"fertility</w>\": 23528,\n  \"fertilizer</w>\": 36786,\n  \"fery</w>\": 47448,\n  \"fes</w>\": 32300,\n  \"fest\": 17383,\n  \"fest</w>\": 2590,\n  \"festa</w>\": 42124,\n  \"festi\": 1943,\n  \"festiv\": 19222,\n  \"festival\": 20946,\n  \"festival</w>\": 2240,\n  \"festivals</w>\": 17834,\n  \"festive</w>\": 9533,\n  \"festivities</w>\": 21020,\n  \"fet\": 21409,\n  \"feta</w>\": 31705,\n  \"fetal</w>\": 42031,\n  \"fetch</w>\": 30271,\n  \"fete</w>\": 34629,\n  \"fett</w>\": 37979,\n  \"fetus</w>\": 26768,\n  \"feu\": 24912,\n  \"feu</w>\": 32990,\n  \"feud</w>\": 27365,\n  \"fever\": 40896,\n  \"fever</w>\": 9989,\n  \"fevre</w>\": 43861,\n  \"few</w>\": 1939,\n  \"fewer</w>\": 19128,\n  \"fex\": 41584,\n  \"fex</w>\": 26392,\n  \"fey\": 39069,\n  \"fey</w>\": 23298,\n  \"fez</w>\": 43081,\n  \"ff\": 1021,\n  \"ff</w>\": 1304,\n  \"ffa</w>\": 15355,\n  \"ffame</w>\": 42873,\n  \"ffc</w>\": 19832,\n  \"ffe\": 1138,\n  \"ffe</w>\": 8631,\n  \"ffect</w>\": 29151,\n  \"ffed</w>\": 8448,\n  \"ffee</w>\": 26377,\n  \"ffel</w>\": 22656,\n  \"ffen</w>\": 46537,\n  \"ffer\": 27369,\n  \"ffer</w>\": 11636,\n  \"ffers</w>\": 32163,\n  \"fferty</w>\": 44771,\n  \"ffes</w>\": 46441,\n  \"ffey</w>\": 30138,\n  \"fff</w>\": 28106,\n  \"ffi\": 19961,\n  \"ffic\": 4762,\n  \"ffice</w>\": 26044,\n  \"ffici\": 3639,\n  \"fficial\": 39818,\n  \"fficial</w>\": 6463,\n  \"fficiency</w>\": 27800,\n  \"fficient</w>\": 20424,\n  \"ffin\": 12779,\n  \"ffin</w>\": 7367,\n  \"ffing</w>\": 16592,\n  \"ffins</w>\": 17898,\n  \"ffl</w>\": 39490,\n  \"ffle</w>\": 7749,\n  \"ffler</w>\": 39819,\n  \"ffles</w>\": 19344,\n  \"ffman</w>\": 15823,\n  \"ffo</w>\": 42264,\n  \"ffs</w>\": 4424,\n  \"ffxiv</w>\": 26569,\n  \"ffxv</w>\": 46786,\n  \"ffy\": 26404,\n  \"ffy</w>\": 7795,\n  \"fg\": 45977,\n  \"fg</w>\": 6823,\n  \"fgm</w>\": 32178,\n  \"fgo</w>\": 46113,\n  \"fh\": 21649,\n  \"fh</w>\": 21010,\n  \"fhs</w>\": 45094,\n  \"fi\": 701,\n  \"fi</w>\": 3589,\n  \"fia</w>\": 8827,\n  \"fiable</w>\": 34373,\n  \"fianc\": 27752,\n  \"fiance</w>\": 44114,\n  \"fiancÃ©</w>\": 34039,\n  \"fiasco</w>\": 40944,\n  \"fiat</w>\": 16740,\n  \"fiawec</w>\": 39485,\n  \"fib</w>\": 40594,\n  \"fiba</w>\": 34993,\n  \"fiber\": 35074,\n  \"fiber</w>\": 12612,\n  \"fibers</w>\": 44587,\n  \"fibre</w>\": 21401,\n  \"fibro\": 21294,\n  \"fibrosis</w>\": 36307,\n  \"fic\": 1788,\n  \"fic</w>\": 2059,\n  \"fica</w>\": 26952,\n  \"fically</w>\": 14854,\n  \"fication</w>\": 4523,\n  \"fications</w>\": 12512,\n  \"ficial</w>\": 48192,\n  \"fics</w>\": 42505,\n  \"fiction</w>\": 6218,\n  \"fictional</w>\": 25570,\n  \"fid\": 34197,\n  \"fid</w>\": 23966,\n  \"fidd\": 25218,\n  \"fiddle</w>\": 35968,\n  \"fide</w>\": 45375,\n  \"fidel\": 21740,\n  \"fidel</w>\": 36837,\n  \"fidelity</w>\": 30109,\n  \"fidget</w>\": 48664,\n  \"fie\": 28487,\n  \"fie</w>\": 10348,\n  \"fied\": 29642,\n  \"fied</w>\": 2853,\n  \"fiel\": 1361,\n  \"field\": 7571,\n  \"field</w>\": 1570,\n  \"fielder</w>\": 11046,\n  \"fieldhouse</w>\": 37969,\n  \"fielding</w>\": 30465,\n  \"fields</w>\": 6494,\n  \"fieldwork</w>\": 33155,\n  \"fiends</w>\": 37869,\n  \"fier\": 11167,\n  \"fier</w>\": 10598,\n  \"fierc\": 48609,\n  \"fierce</w>\": 13896,\n  \"fiercely</w>\": 49039,\n  \"fiers</w>\": 16113,\n  \"fiery</w>\": 24557,\n  \"fies</w>\": 9537,\n  \"fiesta</w>\": 14580,\n  \"fif\": 5309,\n  \"fifa\": 21976,\n  \"fifa</w>\": 8516,\n  \"fifaworldcup</w>\": 38819,\n  \"fifawwc</w>\": 41329,\n  \"fife</w>\": 24374,\n  \"fifteen</w>\": 29504,\n  \"fifth\": 25515,\n  \"fifth</w>\": 8772,\n  \"fifthharmony</w>\": 31075,\n  \"fifty\": 24456,\n  \"fifty</w>\": 15978,\n  \"fig\": 4814,\n  \"fig</w>\": 20719,\n  \"figaro</w>\": 48044,\n  \"figh\": 23274,\n  \"fight\": 5262,\n  \"fight</w>\": 2757,\n  \"fighter\": 35884,\n  \"fighter</w>\": 6438,\n  \"fighters</w>\": 7371,\n  \"fightfor\": 48909,\n  \"fightfor</w>\": 35740,\n  \"fighting\": 38625,\n  \"fighting</w>\": 4652,\n  \"fighton</w>\": 45578,\n  \"fights</w>\": 12132,\n  \"figs</w>\": 38882,\n  \"figu\": 6390,\n  \"figur\": 16948,\n  \"figurative</w>\": 44042,\n  \"figure\": 48820,\n  \"figure</w>\": 5274,\n  \"figured</w>\": 15630,\n  \"figures</w>\": 8739,\n  \"figurine</w>\": 33306,\n  \"figuring</w>\": 31513,\n  \"fiji\": 48270,\n  \"fiji</w>\": 18285,\n  \"fik</w>\": 46589,\n  \"fil\": 1142,\n  \"fil</w>\": 14915,\n  \"fila</w>\": 30992,\n  \"filament</w>\": 49252,\n  \"file\": 12545,\n  \"file</w>\": 4512,\n  \"filed</w>\": 13864,\n  \"files</w>\": 7850,\n  \"filet</w>\": 43155,\n  \"fili\": 9590,\n  \"filing</w>\": 16576,\n  \"filip\": 14368,\n  \"filipino</w>\": 19153,\n  \"fill\": 15904,\n  \"fill</w>\": 6277,\n  \"filled</w>\": 5589,\n  \"filler</w>\": 32816,\n  \"fillers</w>\": 45005,\n  \"fillet</w>\": 39276,\n  \"filling</w>\": 9736,\n  \"fillion</w>\": 38048,\n  \"fillmore</w>\": 43922,\n  \"fills</w>\": 21750,\n  \"filly</w>\": 27690,\n  \"film\": 5117,\n  \"film</w>\": 1860,\n  \"filmed</w>\": 15801,\n  \"filmfare</w>\": 42224,\n  \"filmfest</w>\": 24508,\n  \"filmfestival</w>\": 28066,\n  \"filming</w>\": 6866,\n  \"filmmaker</w>\": 17202,\n  \"filmmakers</w>\": 24896,\n  \"filmmaking</w>\": 18226,\n  \"films</w>\": 5370,\n  \"fils</w>\": 40271,\n  \"filter</w>\": 7541,\n  \"filtered</w>\": 29926,\n  \"filtering</w>\": 47770,\n  \"filters</w>\": 18385,\n  \"filth</w>\": 39713,\n  \"filthy</w>\": 26899,\n  \"filtr\": 21408,\n  \"filtration</w>\": 42036,\n  \"fim</w>\": 47525,\n  \"fin\": 735,\n  \"fin</w>\": 10663,\n  \"fina</w>\": 34497,\n  \"final\": 11968,\n  \"final</w>\": 1755,\n  \"finale</w>\": 7844,\n  \"finalfantasy</w>\": 44543,\n  \"finalfour</w>\": 46999,\n  \"finalist</w>\": 12620,\n  \"finalists</w>\": 13422,\n  \"finalized</w>\": 48930,\n  \"finally</w>\": 1992,\n  \"finals</w>\": 4536,\n  \"finan\": 4807,\n  \"finance</w>\": 6117,\n  \"finances</w>\": 28767,\n  \"financi\": 12846,\n  \"financial\": 19783,\n  \"financial</w>\": 4930,\n  \"financially</w>\": 28124,\n  \"financing</w>\": 18375,\n  \"finch</w>\": 18523,\n  \"find\": 18638,\n  \"find</w>\": 1416,\n  \"finder</w>\": 15045,\n  \"finders</w>\": 43884,\n  \"findia</w>\": 47064,\n  \"finding\": 37455,\n  \"finding</w>\": 6002,\n  \"findings</w>\": 16529,\n  \"findlay</w>\": 48227,\n  \"findom</w>\": 36463,\n  \"finds</w>\": 6680,\n  \"findyour\": 25936,\n  \"findyourpark</w>\": 38924,\n  \"fine\": 12042,\n  \"fine</w>\": 3797,\n  \"fineart\": 7484,\n  \"fineart</w>\": 16005,\n  \"fineartamerica</w>\": 7724,\n  \"fined</w>\": 20094,\n  \"finely</w>\": 46120,\n  \"finer</w>\": 36681,\n  \"fines</w>\": 25053,\n  \"finesse</w>\": 46047,\n  \"finest</w>\": 7707,\n  \"fing\": 6485,\n  \"fing</w>\": 17955,\n  \"finger\": 13480,\n  \"finger</w>\": 8895,\n  \"fingerprint</w>\": 39579,\n  \"fingers</w>\": 9690,\n  \"fini\": 2405,\n  \"finish\": 42178,\n  \"finish</w>\": 3958,\n  \"finished</w>\": 3078,\n  \"finisher</w>\": 38636,\n  \"finishers</w>\": 48661,\n  \"finishes</w>\": 13078,\n  \"finishing</w>\": 7912,\n  \"finite</w>\": 48312,\n  \"finity\": 41463,\n  \"finity</w>\": 21273,\n  \"fink</w>\": 40158,\n  \"finland</w>\": 10775,\n  \"finley</w>\": 41652,\n  \"finn\": 28479,\n  \"finn</w>\": 16925,\n  \"finna</w>\": 35180,\n  \"finnish</w>\": 19616,\n  \"fino</w>\": 30083,\n  \"fins</w>\": 32810,\n  \"fintech\": 48929,\n  \"fintech</w>\": 8899,\n  \"fion\": 27476,\n  \"fiona</w>\": 20099,\n  \"fior\": 37086,\n  \"fiore</w>\": 44997,\n  \"fioren\": 33188,\n  \"fiorentina</w>\": 43713,\n  \"fios</w>\": 42521,\n  \"fir\": 770,\n  \"fir</w>\": 16233,\n  \"fire\": 2951,\n  \"fire</w>\": 1769,\n  \"firearm</w>\": 40311,\n  \"firearms</w>\": 23960,\n  \"fireball</w>\": 40543,\n  \"firec\": 42806,\n  \"fired</w>\": 8846,\n  \"firefighter</w>\": 20498,\n  \"firefighters</w>\": 12600,\n  \"firefly</w>\": 33997,\n  \"firefox</w>\": 35372,\n  \"fireman</w>\": 46085,\n  \"firen\": 34752,\n  \"firenze</w>\": 38445,\n  \"fireplace</w>\": 23050,\n  \"fires</w>\": 8749,\n  \"fireside</w>\": 36185,\n  \"firework</w>\": 40750,\n  \"fireworks</w>\": 10641,\n  \"firing</w>\": 15105,\n  \"firm\": 16936,\n  \"firm</w>\": 7705,\n  \"firmly</w>\": 29156,\n  \"firms</w>\": 13655,\n  \"firmware</w>\": 42691,\n  \"first\": 6853,\n  \"first</w>\": 874,\n  \"firstdayof\": 44297,\n  \"firsth\": 48512,\n  \"firsts</w>\": 47884,\n  \"firth</w>\": 26078,\n  \"fis\": 7846,\n  \"fis</w>\": 47683,\n  \"fiscal</w>\": 20825,\n  \"fischer</w>\": 26532,\n  \"fish\": 6431,\n  \"fish</w>\": 2759,\n  \"fisher\": 11175,\n  \"fisher</w>\": 9176,\n  \"fisheries</w>\": 24612,\n  \"fisherman</w>\": 25055,\n  \"fishermen</w>\": 28547,\n  \"fishers</w>\": 42065,\n  \"fishery</w>\": 49057,\n  \"fishes</w>\": 35470,\n  \"fishing\": 31703,\n  \"fishing</w>\": 4935,\n  \"fishy</w>\": 35665,\n  \"fist\": 48340,\n  \"fist</w>\": 17085,\n  \"fit\": 2366,\n  \"fit</w>\": 2478,\n  \"fitbit</w>\": 33768,\n  \"fitch</w>\": 44614,\n  \"fitfam</w>\": 20662,\n  \"fitnes\": 47285,\n  \"fitness\": 20044,\n  \"fitness</w>\": 4838,\n  \"fits</w>\": 6401,\n  \"fitt\": 32994,\n  \"fitted</w>\": 14863,\n  \"fitter</w>\": 42096,\n  \"fitters</w>\": 32364,\n  \"fitting</w>\": 11769,\n  \"fittings</w>\": 45787,\n  \"fitz\": 11120,\n  \"fitz</w>\": 25913,\n  \"fitzgerald</w>\": 20606,\n  \"fitzpatrick</w>\": 37141,\n  \"fiu</w>\": 38374,\n  \"five\": 19508,\n  \"five</w>\": 3127,\n  \"fives</w>\": 44066,\n  \"fix\": 4596,\n  \"fix</w>\": 6028,\n  \"fixed</w>\": 9393,\n  \"fixes</w>\": 25473,\n  \"fixing</w>\": 17423,\n  \"fixture</w>\": 17317,\n  \"fixtures</w>\": 19904,\n  \"fizz</w>\": 31242,\n  \"fj\": 43183,\n  \"fj</w>\": 46447,\n  \"fjor\": 31260,\n  \"fk</w>\": 12410,\n  \"fl\": 1082,\n  \"fl</w>\": 2685,\n  \"fla\": 1577,\n  \"fla</w>\": 20292,\n  \"flag\": 11536,\n  \"flag</w>\": 4859,\n  \"flagged</w>\": 45012,\n  \"flags</w>\": 12221,\n  \"flagship</w>\": 19779,\n  \"flagstaff</w>\": 40406,\n  \"flair</w>\": 24938,\n  \"flake</w>\": 21221,\n  \"flakes</w>\": 20934,\n  \"flam\": 10559,\n  \"flame\": 40351,\n  \"flame</w>\": 13484,\n  \"flamen\": 28826,\n  \"flamenco</w>\": 37362,\n  \"flames</w>\": 13441,\n  \"flamin\": 42693,\n  \"flaming</w>\": 34782,\n  \"flamingo</w>\": 30323,\n  \"flan\": 14572,\n  \"flanagan</w>\": 28641,\n  \"flanders</w>\": 34837,\n  \"flank</w>\": 44553,\n  \"flann\": 39510,\n  \"flannel</w>\": 37807,\n  \"flap</w>\": 35253,\n  \"flappy</w>\": 40241,\n  \"flare</w>\": 21185,\n  \"flares</w>\": 46088,\n  \"flash\": 6089,\n  \"flash</w>\": 5815,\n  \"flashback\": 14616,\n  \"flashback</w>\": 11988,\n  \"flashbackfriday</w>\": 15014,\n  \"flashbacks</w>\": 47056,\n  \"flashes</w>\": 31259,\n  \"flashing</w>\": 31764,\n  \"flashlight</w>\": 37256,\n  \"flask</w>\": 36194,\n  \"flat\": 8986,\n  \"flat</w>\": 6313,\n  \"flats</w>\": 17228,\n  \"flatt\": 45498,\n  \"flattering</w>\": 43267,\n  \"flaun\": 41421,\n  \"flav\": 7191,\n  \"flavo\": 28895,\n  \"flavor\": 31835,\n  \"flavor</w>\": 11818,\n  \"flavored</w>\": 29350,\n  \"flavorful</w>\": 49135,\n  \"flavors</w>\": 16930,\n  \"flavour</w>\": 17026,\n  \"flavoured</w>\": 42397,\n  \"flavours</w>\": 21083,\n  \"flaw\": 14268,\n  \"flaw</w>\": 34978,\n  \"flawed</w>\": 35136,\n  \"flawless</w>\": 15531,\n  \"flaws</w>\": 30492,\n  \"flax</w>\": 43443,\n  \"fle\": 2428,\n  \"fle</w>\": 44964,\n  \"flea</w>\": 24883,\n  \"fleck</w>\": 28143,\n  \"fled</w>\": 26731,\n  \"flee\": 19427,\n  \"flee</w>\": 30167,\n  \"fleece</w>\": 25038,\n  \"fleeing</w>\": 30543,\n  \"fleek</w>\": 43513,\n  \"fleet\": 35922,\n  \"fleet</w>\": 9147,\n  \"fleetwood</w>\": 28883,\n  \"fleming</w>\": 25769,\n  \"fler</w>\": 48789,\n  \"flesh</w>\": 17495,\n  \"flet\": 16102,\n  \"fletcher</w>\": 19810,\n  \"fleur</w>\": 28593,\n  \"flew</w>\": 13768,\n  \"flex\": 16426,\n  \"flex</w>\": 12038,\n  \"flexi\": 10032,\n  \"flexibility</w>\": 22547,\n  \"flexible</w>\": 14502,\n  \"flexing</w>\": 48483,\n  \"fli\": 2472,\n  \"flick\": 13746,\n  \"flick</w>\": 23414,\n  \"flickr</w>\": 17755,\n  \"flies</w>\": 8070,\n  \"flight\": 24701,\n  \"flight</w>\": 3795,\n  \"flights</w>\": 10515,\n  \"flin\": 24730,\n  \"flin</w>\": 43816,\n  \"flinders</w>\": 44647,\n  \"fling</w>\": 22768,\n  \"flint\": 28306,\n  \"flint</w>\": 18324,\n  \"flip\": 20385,\n  \"flip</w>\": 11035,\n  \"flipk\": 30829,\n  \"flipkart</w>\": 33154,\n  \"flipped</w>\": 28144,\n  \"flipping</w>\": 25881,\n  \"flips</w>\": 35089,\n  \"flir\": 24330,\n  \"flirt</w>\": 38352,\n  \"flirting</w>\": 35243,\n  \"flix</w>\": 40663,\n  \"flo\": 1945,\n  \"flo</w>\": 20711,\n  \"float</w>\": 16123,\n  \"floating</w>\": 12619,\n  \"floats</w>\": 33272,\n  \"flock\": 36297,\n  \"flock</w>\": 21822,\n  \"flondon</w>\": 47366,\n  \"floo\": 4062,\n  \"flood\": 23793,\n  \"flood</w>\": 7148,\n  \"flooded</w>\": 19706,\n  \"flooding</w>\": 10204,\n  \"floods</w>\": 16369,\n  \"floor\": 23657,\n  \"floor</w>\": 4125,\n  \"flooring</w>\": 19227,\n  \"floors</w>\": 15671,\n  \"flop</w>\": 22994,\n  \"floppy</w>\": 38267,\n  \"flops</w>\": 29146,\n  \"flor\": 15784,\n  \"flor</w>\": 41669,\n  \"flora</w>\": 18906,\n  \"floral</w>\": 10732,\n  \"florals</w>\": 48331,\n  \"floren\": 37706,\n  \"florence</w>\": 11617,\n  \"flores</w>\": 21537,\n  \"flori\": 3482,\n  \"florian</w>\": 41861,\n  \"florida\": 34264,\n  \"florida</w>\": 3966,\n  \"florist</w>\": 38403,\n  \"floss</w>\": 36453,\n  \"flotus</w>\": 35181,\n  \"flour</w>\": 18592,\n  \"flouri\": 23239,\n  \"flourish</w>\": 36038,\n  \"flow\": 2180,\n  \"flow</w>\": 5608,\n  \"flower\": 12772,\n  \"flower</w>\": 4055,\n  \"flowering</w>\": 19953,\n  \"flowers</w>\": 4023,\n  \"flowing</w>\": 14922,\n  \"flown</w>\": 25659,\n  \"flows</w>\": 16715,\n  \"floyd\": 46369,\n  \"floyd</w>\": 13656,\n  \"flu\": 3698,\n  \"flu</w>\": 13528,\n  \"fluctu\": 40181,\n  \"fluence</w>\": 38169,\n  \"fluent</w>\": 30025,\n  \"fluff</w>\": 31174,\n  \"fluffy\": 40346,\n  \"fluffy</w>\": 17054,\n  \"fluid\": 43803,\n  \"fluid</w>\": 16717,\n  \"fluids</w>\": 41490,\n  \"fluor\": 45127,\n  \"fluore\": 26974,\n  \"fluorescent</w>\": 35036,\n  \"fluori\": 45611,\n  \"flur\": 31591,\n  \"flush</w>\": 25777,\n  \"flushing</w>\": 43754,\n  \"flute</w>\": 23746,\n  \"flux</w>\": 25249,\n  \"flwx</w>\": 30907,\n  \"fly\": 5666,\n  \"fly</w>\": 3228,\n  \"flye\": 30873,\n  \"flyeagles\": 39927,\n  \"flyeaglesfly</w>\": 39931,\n  \"flyer</w>\": 11875,\n  \"flyers</w>\": 14181,\n  \"flyfishing</w>\": 31800,\n  \"flying\": 20782,\n  \"flying</w>\": 4610,\n  \"flyn\": 40676,\n  \"flynn</w>\": 15721,\n  \"flyo\": 33506,\n  \"flyover</w>\": 38083,\n  \"fm\": 13715,\n  \"fm</w>\": 3689,\n  \"fman</w>\": 25152,\n  \"fml</w>\": 26730,\n  \"fmr</w>\": 32875,\n  \"fn\": 22773,\n  \"fn</w>\": 21763,\n  \"fnc</w>\": 46506,\n  \"fo\": 898,\n  \"fo</w>\": 6157,\n  \"foal</w>\": 40386,\n  \"foam\": 30039,\n  \"foam</w>\": 14587,\n  \"foamed</w>\": 26711,\n  \"fob</w>\": 40315,\n  \"focal</w>\": 30934,\n  \"focu\": 5827,\n  \"focus</w>\": 4353,\n  \"focused</w>\": 9319,\n  \"focuses</w>\": 20093,\n  \"focusing</w>\": 15551,\n  \"fod\": 31015,\n  \"fod</w>\": 43299,\n  \"fodils</w>\": 44411,\n  \"foe</w>\": 22952,\n  \"foes</w>\": 46279,\n  \"fog</w>\": 9417,\n  \"foggy</w>\": 19770,\n  \"foil</w>\": 17302,\n  \"fol\": 1106,\n  \"fol</w>\": 48616,\n  \"fold\": 35201,\n  \"fold</w>\": 11021,\n  \"foldable</w>\": 48307,\n  \"folded</w>\": 25233,\n  \"folder</w>\": 25717,\n  \"folding</w>\": 15464,\n  \"folds</w>\": 24266,\n  \"foley</w>\": 22850,\n  \"foli\": 7713,\n  \"folia</w>\": 48964,\n  \"foliage</w>\": 26350,\n  \"folio</w>\": 10772,\n  \"folk\": 10665,\n  \"folk</w>\": 6032,\n  \"folke\": 47190,\n  \"folkl\": 27273,\n  \"folklore\": 22133,\n  \"folklore</w>\": 28620,\n  \"folklorethursday</w>\": 23270,\n  \"folks</w>\": 5422,\n  \"follo\": 41417,\n  \"follow\": 1964,\n  \"follow</w>\": 1979,\n  \"followart</w>\": 40957,\n  \"followback</w>\": 33863,\n  \"followed</w>\": 6499,\n  \"follower</w>\": 17039,\n  \"followers</w>\": 4856,\n  \"following</w>\": 3473,\n  \"followme</w>\": 29668,\n  \"followparty</w>\": 44757,\n  \"follows</w>\": 11287,\n  \"followthe\": 30747,\n  \"folly</w>\": 41408,\n  \"folsom</w>\": 42108,\n  \"fom\": 34540,\n  \"fon\": 5017,\n  \"fon</w>\": 38318,\n  \"fond</w>\": 19964,\n  \"fonda</w>\": 44609,\n  \"fondue</w>\": 48321,\n  \"fone</w>\": 40672,\n  \"font\": 37610,\n  \"font</w>\": 16248,\n  \"fontaine</w>\": 37864,\n  \"fontana</w>\": 43643,\n  \"fontein</w>\": 45062,\n  \"fonts</w>\": 32801,\n  \"foo\": 1183,\n  \"foo</w>\": 23435,\n  \"food\": 4586,\n  \"food</w>\": 1559,\n  \"foodand\": 38317,\n  \"foodbank</w>\": 31926,\n  \"foodie\": 30762,\n  \"foodie</w>\": 9847,\n  \"foodies</w>\": 22416,\n  \"foodnetwork</w>\": 46793,\n  \"foods</w>\": 7057,\n  \"foodsecurity</w>\": 49329,\n  \"foodtruck</w>\": 47682,\n  \"fool\": 23959,\n  \"fool</w>\": 12212,\n  \"fooled</w>\": 28761,\n  \"fooling</w>\": 47964,\n  \"foolish</w>\": 33824,\n  \"fools</w>\": 15946,\n  \"foot\": 6702,\n  \"foot</w>\": 4738,\n  \"footage</w>\": 11130,\n  \"footb\": 33466,\n  \"football\": 9376,\n  \"football</w>\": 1882,\n  \"footballer</w>\": 20646,\n  \"footballers</w>\": 30269,\n  \"footed</w>\": 38040,\n  \"footh\": 25951,\n  \"foothills</w>\": 37020,\n  \"footpath</w>\": 48858,\n  \"footprint</w>\": 23206,\n  \"footprints</w>\": 39640,\n  \"footsteps</w>\": 27289,\n  \"footwear</w>\": 22772,\n  \"footy\": 39866,\n  \"footy</w>\": 18922,\n  \"for\": 645,\n  \"for</w>\": 556,\n  \"forage</w>\": 46871,\n  \"foraging</w>\": 39056,\n  \"forall</w>\": 17824,\n  \"forbe\": 49098,\n  \"forbes</w>\": 13925,\n  \"forbi\": 24754,\n  \"forbidden</w>\": 25164,\n  \"force\": 12068,\n  \"force</w>\": 2869,\n  \"forced</w>\": 8201,\n  \"forces</w>\": 5381,\n  \"forchange</w>\": 35848,\n  \"forcing</w>\": 21573,\n  \"ford\": 3751,\n  \"ford</w>\": 1623,\n  \"fordfc</w>\": 28581,\n  \"fordham</w>\": 48792,\n  \"fords</w>\": 29351,\n  \"fordshire</w>\": 14645,\n  \"fore\": 1484,\n  \"fore</w>\": 1332,\n  \"forec\": 34155,\n  \"forecast</w>\": 7361,\n  \"forecasting</w>\": 38133,\n  \"forecasts</w>\": 27696,\n  \"foreclo\": 44916,\n  \"forefront</w>\": 37679,\n  \"foreground</w>\": 35186,\n  \"forehead</w>\": 25394,\n  \"foreig\": 26497,\n  \"foreign\": 42255,\n  \"foreign</w>\": 6046,\n  \"foreigners</w>\": 38549,\n  \"foreman</w>\": 36174,\n  \"foremost</w>\": 42128,\n  \"foren\": 16526,\n  \"forensic</w>\": 23158,\n  \"forensics</w>\": 38763,\n  \"forest\": 18760,\n  \"forest</w>\": 4167,\n  \"forestation</w>\": 33939,\n  \"forestry</w>\": 26281,\n  \"forests</w>\": 14095,\n  \"forever\": 14748,\n  \"forever</w>\": 3225,\n  \"forevery\": 40605,\n  \"forex\": 40200,\n  \"forex</w>\": 17395,\n  \"forfe\": 44871,\n  \"forge</w>\": 19232,\n  \"forged</w>\": 28105,\n  \"forget\": 46153,\n  \"forget</w>\": 2678,\n  \"forgets</w>\": 35613,\n  \"forgetting</w>\": 25452,\n  \"forgi\": 22080,\n  \"forgive</w>\": 15332,\n  \"forgiven</w>\": 44894,\n  \"forgiveness</w>\": 23585,\n  \"forgood</w>\": 39169,\n  \"forgot</w>\": 6483,\n  \"forgotten</w>\": 7994,\n  \"fork\": 24501,\n  \"fork</w>\": 13700,\n  \"forkids</w>\": 48571,\n  \"forklift</w>\": 43202,\n  \"forks</w>\": 28769,\n  \"forlife</w>\": 17624,\n  \"form\": 1157,\n  \"form</w>\": 1907,\n  \"forma</w>\": 38829,\n  \"formal</w>\": 12978,\n  \"formally</w>\": 24867,\n  \"format\": 16252,\n  \"format</w>\": 11874,\n  \"formation</w>\": 2510,\n  \"formations</w>\": 37715,\n  \"formative</w>\": 48882,\n  \"formats</w>\": 32085,\n  \"forme</w>\": 42085,\n  \"formed</w>\": 6528,\n  \"former</w>\": 2276,\n  \"formerly</w>\": 20866,\n  \"formid\": 38599,\n  \"formidable</w>\": 39834,\n  \"forming</w>\": 15443,\n  \"formity</w>\": 42290,\n  \"forms</w>\": 5161,\n  \"formu\": 8689,\n  \"formul\": 23923,\n  \"formula\": 24485,\n  \"formula</w>\": 10776,\n  \"formulae</w>\": 34586,\n  \"formulated</w>\": 45066,\n  \"forre\": 38876,\n  \"forrest</w>\": 25205,\n  \"forrester</w>\": 45338,\n  \"forsa\": 48958,\n  \"forsale</w>\": 13303,\n  \"forster</w>\": 42923,\n  \"forsy\": 29629,\n  \"forsyth</w>\": 40952,\n  \"fort\": 12300,\n  \"fort</w>\": 2921,\n  \"forte\": 44350,\n  \"forte</w>\": 27367,\n  \"forth\": 17068,\n  \"forth</w>\": 11932,\n  \"forthcoming</w>\": 19989,\n  \"forthe\": 12521,\n  \"forti\": 26984,\n  \"fortified</w>\": 46486,\n  \"fortn\": 14428,\n  \"fortnight</w>\": 39235,\n  \"fortnite\": 38734,\n  \"fortnite</w>\": 17890,\n  \"fortress</w>\": 19988,\n  \"fortun\": 6950,\n  \"fortunate</w>\": 19898,\n  \"fortunately</w>\": 34358,\n  \"fortune\": 40931,\n  \"fortune</w>\": 11451,\n  \"fortunes</w>\": 41989,\n  \"forty</w>\": 24399,\n  \"forum\": 37851,\n  \"forum</w>\": 4538,\n  \"forums</w>\": 31518,\n  \"forwar\": 34364,\n  \"forward\": 47031,\n  \"forward</w>\": 2342,\n  \"forwards</w>\": 38974,\n  \"foryou</w>\": 35150,\n  \"forz\": 46056,\n  \"forza\": 33293,\n  \"forza</w>\": 28089,\n  \"fos\": 36925,\n  \"fos</w>\": 22081,\n  \"foss\": 14240,\n  \"foss</w>\": 37911,\n  \"fossil\": 20419,\n  \"fossil</w>\": 15202,\n  \"fossilfriday</w>\": 26079,\n  \"fossils</w>\": 30652,\n  \"foster\": 26778,\n  \"foster</w>\": 8139,\n  \"fostering</w>\": 35996,\n  \"fosters</w>\": 37644,\n  \"foto\": 15908,\n  \"foto</w>\": 12823,\n  \"fotogra\": 23687,\n  \"fotografia</w>\": 40256,\n  \"fotos</w>\": 26124,\n  \"fou\": 14516,\n  \"fought</w>\": 10844,\n  \"foul</w>\": 19784,\n  \"foun\": 3154,\n  \"found\": 3454,\n  \"found</w>\": 1546,\n  \"foundation</w>\": 4058,\n  \"foundations</w>\": 25219,\n  \"founded</w>\": 12240,\n  \"founder</w>\": 5145,\n  \"founders</w>\": 14602,\n  \"founding</w>\": 15317,\n  \"foundry</w>\": 31426,\n  \"fountain\": 44863,\n  \"fountain</w>\": 13405,\n  \"fountains</w>\": 37411,\n  \"four\": 5113,\n  \"four</w>\": 2721,\n  \"foursquare</w>\": 34484,\n  \"fourteen</w>\": 46255,\n  \"fourth</w>\": 7516,\n  \"fourthofjuly</w>\": 47805,\n  \"fow\": 17084,\n  \"fowl</w>\": 31685,\n  \"fowler</w>\": 20980,\n  \"fox\": 5007,\n  \"fox</w>\": 3240,\n  \"foxandfriends</w>\": 45841,\n  \"foxes</w>\": 24145,\n  \"foxnews</w>\": 18830,\n  \"foxsports</w>\": 39267,\n  \"foxtv</w>\": 49396,\n  \"foxx</w>\": 32993,\n  \"foxy</w>\": 27945,\n  \"foy</w>\": 30284,\n  \"foyer</w>\": 38011,\n  \"foyle</w>\": 47902,\n  \"fp\": 28058,\n  \"fp</w>\": 8941,\n  \"fpl</w>\": 27970,\n  \"fpp</w>\": 36464,\n  \"fps</w>\": 25300,\n  \"fpv</w>\": 43175,\n  \"fr\": 936,\n  \"fr</w>\": 5512,\n  \"fra\": 3368,\n  \"fra</w>\": 15644,\n  \"frac\": 15607,\n  \"fracking</w>\": 21894,\n  \"fractal</w>\": 46471,\n  \"fraction</w>\": 26788,\n  \"fractu\": 25847,\n  \"fracture</w>\": 28995,\n  \"fractured</w>\": 37421,\n  \"fractures</w>\": 46213,\n  \"frag\": 13093,\n  \"fragile</w>\": 23579,\n  \"fragment</w>\": 39209,\n  \"fragments</w>\": 41424,\n  \"fragr\": 15403,\n  \"fragrance</w>\": 17874,\n  \"fragrances</w>\": 44567,\n  \"fragrant</w>\": 37030,\n  \"fram\": 27987,\n  \"frame\": 11029,\n  \"frame</w>\": 6481,\n  \"framed</w>\": 13135,\n  \"frames</w>\": 15479,\n  \"framework</w>\": 13195,\n  \"frameworks</w>\": 43136,\n  \"framing</w>\": 24539,\n  \"frampton</w>\": 41733,\n  \"fran\": 2118,\n  \"fran</w>\": 18878,\n  \"franc\": 3872,\n  \"franc</w>\": 42340,\n  \"franca\": 48952,\n  \"france\": 12045,\n  \"france</w>\": 3552,\n  \"frances</w>\": 20803,\n  \"francesca</w>\": 32327,\n  \"francesco</w>\": 25816,\n  \"franch\": 11756,\n  \"franchi\": 46438,\n  \"franchise</w>\": 13664,\n  \"franci\": 46458,\n  \"francis\": 22187,\n  \"francis</w>\": 7660,\n  \"francisco</w>\": 6887,\n  \"franco\": 17934,\n  \"franco</w>\": 17052,\n  \"francois</w>\": 29317,\n  \"frank\": 5390,\n  \"frank</w>\": 5229,\n  \"franken\": 20487,\n  \"franken</w>\": 48252,\n  \"frankenstein</w>\": 26410,\n  \"frankfur\": 17442,\n  \"frankfurt</w>\": 18598,\n  \"franki\": 39227,\n  \"frankie\": 38373,\n  \"frankie</w>\": 16215,\n  \"franklin\": 40935,\n  \"franklin</w>\": 9999,\n  \"frankly</w>\": 38015,\n  \"franks</w>\": 42855,\n  \"frans</w>\": 47892,\n  \"franz</w>\": 25449,\n  \"franÃ§\": 38381,\n  \"fraser\": 39082,\n  \"fraser</w>\": 16754,\n  \"frat\": 15225,\n  \"frat</w>\": 39292,\n  \"fraternity</w>\": 24433,\n  \"frau\": 23063,\n  \"fraud\": 40647,\n  \"fraud</w>\": 9961,\n  \"fraudul\": 42655,\n  \"fraudulent</w>\": 47408,\n  \"fray</w>\": 41154,\n  \"frazier</w>\": 32841,\n  \"frc</w>\": 41507,\n  \"fre\": 821,\n  \"fre</w>\": 43165,\n  \"freak\": 20352,\n  \"freak</w>\": 13701,\n  \"freaked</w>\": 43511,\n  \"freakin</w>\": 23900,\n  \"freaking</w>\": 11992,\n  \"freaks</w>\": 27009,\n  \"freaky</w>\": 31583,\n  \"freck\": 33328,\n  \"freckles</w>\": 48036,\n  \"fred\": 9486,\n  \"fred</w>\": 6678,\n  \"freddie\": 41890,\n  \"freddie</w>\": 17014,\n  \"freddy</w>\": 24394,\n  \"freder\": 10745,\n  \"frederic</w>\": 41165,\n  \"frederick\": 37103,\n  \"frederick</w>\": 18570,\n  \"fredo</w>\": 48241,\n  \"free\": 2065,\n  \"free</w>\": 1139,\n  \"freebie</w>\": 35865,\n  \"freebies</w>\": 28630,\n  \"freec\": 46569,\n  \"freed\": 12585,\n  \"freed</w>\": 23392,\n  \"freedom\": 17992,\n  \"freedom</w>\": 4511,\n  \"freedoms</w>\": 32500,\n  \"freef\": 48678,\n  \"freel\": 14174,\n  \"freelance</w>\": 21942,\n  \"freely</w>\": 24436,\n  \"freeman</w>\": 16450,\n  \"freep\": 32499,\n  \"freepalestine</w>\": 39242,\n  \"freer\": 44676,\n  \"frees\": 27455,\n  \"freestyle</w>\": 15594,\n  \"freeway</w>\": 24927,\n  \"freeze</w>\": 14187,\n  \"freezer</w>\": 25390,\n  \"freezing</w>\": 12499,\n  \"frei\": 30183,\n  \"freight</w>\": 17023,\n  \"fremantle</w>\": 48012,\n  \"fremont</w>\": 34578,\n  \"fren\": 2919,\n  \"french\": 13118,\n  \"french</w>\": 3461,\n  \"frenzy</w>\": 30084,\n  \"frequ\": 9211,\n  \"frequencies</w>\": 45319,\n  \"frequency</w>\": 18825,\n  \"frequent</w>\": 19836,\n  \"frequently</w>\": 22434,\n  \"fresco</w>\": 31609,\n  \"fresh\": 4065,\n  \"fresh</w>\": 2975,\n  \"fresher</w>\": 49284,\n  \"freshers</w>\": 35810,\n  \"freshest</w>\": 46809,\n  \"freshly</w>\": 16081,\n  \"freshman</w>\": 9381,\n  \"freshmen</w>\": 21292,\n  \"freshness</w>\": 45872,\n  \"freshwater</w>\": 24803,\n  \"fresno\": 40879,\n  \"fresno</w>\": 20995,\n  \"fret</w>\": 40510,\n  \"freud</w>\": 40787,\n  \"frey\": 22136,\n  \"frey</w>\": 9082,\n  \"fri\": 815,\n  \"fri</w>\": 6882,\n  \"friars</w>\": 30513,\n  \"fric\": 18981,\n  \"frick</w>\": 46304,\n  \"friction</w>\": 38563,\n  \"frid</w>\": 46388,\n  \"frida</w>\": 36001,\n  \"friday\": 6350,\n  \"friday</w>\": 1461,\n  \"fridayfeeling</w>\": 11952,\n  \"fridaymotivation</w>\": 38544,\n  \"fridaynight\": 44858,\n  \"fridayreads</w>\": 37736,\n  \"fridays</w>\": 15589,\n  \"fridaythe</w>\": 47642,\n  \"fridge</w>\": 13491,\n  \"fridges</w>\": 40734,\n  \"frie\": 36999,\n  \"fried\": 13743,\n  \"fried</w>\": 7310,\n  \"friedman</w>\": 29402,\n  \"friedrich</w>\": 34171,\n  \"friend\": 3017,\n  \"friend</w>\": 1625,\n  \"friendly\": 44612,\n  \"friendly</w>\": 4681,\n  \"friends\": 38875,\n  \"friends</w>\": 1574,\n  \"friendship\": 42674,\n  \"friendship</w>\": 7679,\n  \"friendships</w>\": 28840,\n  \"fries</w>\": 11369,\n  \"frifotos</w>\": 40493,\n  \"friger\": 20785,\n  \"friggin</w>\": 48300,\n  \"frigh\": 34831,\n  \"fright\": 24277,\n  \"fright</w>\": 40207,\n  \"frightened</w>\": 47136,\n  \"frightening</w>\": 39290,\n  \"fringe</w>\": 10640,\n  \"fris\": 37252,\n  \"frisbee</w>\": 45768,\n  \"frisco</w>\": 35945,\n  \"frit\": 34614,\n  \"fritz</w>\": 29860,\n  \"friyay</w>\": 38887,\n  \"frm</w>\": 12951,\n  \"fro\": 626,\n  \"fro</w>\": 26603,\n  \"frock</w>\": 45306,\n  \"frog\": 26494,\n  \"frog</w>\": 11438,\n  \"frogs</w>\": 20781,\n  \"from\": 8330,\n  \"from</w>\": 633,\n  \"frome</w>\": 48691,\n  \"fromhome</w>\": 41477,\n  \"fromthe\": 18756,\n  \"fron\": 1847,\n  \"fron</w>\": 18036,\n  \"front\": 10996,\n  \"front</w>\": 2184,\n  \"frontal</w>\": 35794,\n  \"frontier</w>\": 18253,\n  \"frontiers</w>\": 38396,\n  \"frontline</w>\": 29589,\n  \"frontman</w>\": 36775,\n  \"fronts</w>\": 26846,\n  \"froome</w>\": 48560,\n  \"frosh</w>\": 47069,\n  \"frost\": 39420,\n  \"frost</w>\": 11619,\n  \"frosted</w>\": 35988,\n  \"frosting</w>\": 33872,\n  \"frosty</w>\": 22760,\n  \"froze</w>\": 47788,\n  \"frozen\": 42464,\n  \"frozen</w>\": 8507,\n  \"frs</w>\": 26216,\n  \"fru\": 3248,\n  \"fruit\": 16771,\n  \"fruit</w>\": 5190,\n  \"fruitful</w>\": 31494,\n  \"fruits</w>\": 13282,\n  \"fruity</w>\": 22320,\n  \"frustr\": 16046,\n  \"frustrated</w>\": 25111,\n  \"frustrating</w>\": 31342,\n  \"frustration</w>\": 30535,\n  \"fry\": 33914,\n  \"fry</w>\": 13686,\n  \"fryer</w>\": 49217,\n  \"frying</w>\": 38516,\n  \"fs\": 23699,\n  \"fs</w>\": 3854,\n  \"fsa</w>\": 33373,\n  \"fsu\": 44185,\n  \"fsu</w>\": 19317,\n  \"ft\": 3391,\n  \"ft</w>\": 981,\n  \"fta</w>\": 41975,\n  \"ftc</w>\": 33752,\n  \"fted</w>\": 5612,\n  \"fter</w>\": 25063,\n  \"fthe\": 22886,\n  \"ftheday</w>\": 9823,\n  \"fting</w>\": 6174,\n  \"fton</w>\": 26605,\n  \"ftp</w>\": 42649,\n  \"fts</w>\": 3767,\n  \"ftse</w>\": 46717,\n  \"ftw</w>\": 19298,\n  \"fty</w>\": 17494,\n  \"fu\": 665,\n  \"fu</w>\": 9098,\n  \"fuch\": 42617,\n  \"fudge</w>\": 24270,\n  \"fue</w>\": 43723,\n  \"fuego</w>\": 41500,\n  \"fuel\": 21113,\n  \"fuel</w>\": 5945,\n  \"fueled</w>\": 28792,\n  \"fueling</w>\": 38793,\n  \"fuelled</w>\": 48357,\n  \"fuels</w>\": 19365,\n  \"fuentes</w>\": 44393,\n  \"fuer\": 29645,\n  \"fug\": 29227,\n  \"fugitive</w>\": 39257,\n  \"fuji\": 15573,\n  \"fuji</w>\": 21634,\n  \"fujifilm</w>\": 24765,\n  \"fuk</w>\": 31051,\n  \"fuku\": 20728,\n  \"fukushima</w>\": 33929,\n  \"ful\": 1814,\n  \"ful</w>\": 857,\n  \"fulbright</w>\": 41834,\n  \"fulfill\": 43675,\n  \"fulfill</w>\": 27467,\n  \"fulfilled</w>\": 29919,\n  \"fulfilling</w>\": 30621,\n  \"fulfillment</w>\": 45573,\n  \"fulham</w>\": 25574,\n  \"full\": 9407,\n  \"full</w>\": 1476,\n  \"fuller</w>\": 20225,\n  \"fullerton</w>\": 42822,\n  \"fullest</w>\": 35603,\n  \"fully\": 39142,\n  \"fully</w>\": 2401,\n  \"fulness</w>\": 10526,\n  \"fuls</w>\": 41606,\n  \"fulton</w>\": 26725,\n  \"fum</w>\": 38393,\n  \"fumble</w>\": 49373,\n  \"fun\": 1229,\n  \"fun</w>\": 1499,\n  \"func\": 8679,\n  \"function</w>\": 8093,\n  \"functional</w>\": 12885,\n  \"functionality</w>\": 33316,\n  \"functioning</w>\": 25479,\n  \"functions</w>\": 18001,\n  \"fund\": 19089,\n  \"fund</w>\": 4877,\n  \"fundam\": 11670,\n  \"fundament\": 18852,\n  \"fundamental</w>\": 17627,\n  \"fundamentally</w>\": 45378,\n  \"fundamentals</w>\": 27887,\n  \"funday</w>\": 15439,\n  \"funded</w>\": 10588,\n  \"funding</w>\": 5588,\n  \"fundra\": 6201,\n  \"fundraiser</w>\": 10049,\n  \"fundraising</w>\": 10755,\n  \"funds</w>\": 7066,\n  \"funer\": 40693,\n  \"funeral</w>\": 10606,\n  \"funfact</w>\": 31596,\n  \"funfactfriday</w>\": 40710,\n  \"fungal</w>\": 38838,\n  \"fungi</w>\": 27837,\n  \"fungus</w>\": 30677,\n  \"funk\": 37353,\n  \"funk</w>\": 13372,\n  \"funko\": 49402,\n  \"funko</w>\": 23697,\n  \"funky</w>\": 16492,\n  \"funnel</w>\": 27862,\n  \"funnier</w>\": 42232,\n  \"funniest</w>\": 15557,\n  \"funny\": 19124,\n  \"funny</w>\": 3789,\n  \"funrun</w>\": 34185,\n  \"fur\": 2395,\n  \"fur</w>\": 9686,\n  \"furi\": 40816,\n  \"furious</w>\": 17522,\n  \"furman</w>\": 49238,\n  \"furn\": 21348,\n  \"furnace</w>\": 31913,\n  \"furnished</w>\": 37388,\n  \"furnitu\": 45696,\n  \"furniture</w>\": 7993,\n  \"furry\": 33414,\n  \"furry</w>\": 15351,\n  \"fursuit\": 25306,\n  \"fursuit</w>\": 43083,\n  \"fursuitfriday</w>\": 27917,\n  \"further</w>\": 5583,\n  \"fury</w>\": 14404,\n  \"fus</w>\": 18419,\n  \"fuse</w>\": 23386,\n  \"fused</w>\": 38994,\n  \"fusion\": 44661,\n  \"fusion</w>\": 9364,\n  \"fuss</w>\": 26331,\n  \"fut\": 21460,\n  \"fut</w>\": 34049,\n  \"futbol</w>\": 33014,\n  \"futsal</w>\": 20558,\n  \"futu\": 33454,\n  \"futur\": 38840,\n  \"future\": 7959,\n  \"future</w>\": 1904,\n  \"futureof\": 22599,\n  \"futureofwork</w>\": 33202,\n  \"futures</w>\": 13488,\n  \"futuri\": 19068,\n  \"futurism</w>\": 48435,\n  \"futurist</w>\": 48086,\n  \"futuristic</w>\": 30987,\n  \"fuzz\": 47128,\n  \"fuzz</w>\": 40443,\n  \"fuzzy</w>\": 25876,\n  \"fv\": 29795,\n  \"fw\": 23934,\n  \"fw</w>\": 5277,\n  \"fwd</w>\": 27052,\n  \"fx\": 17807,\n  \"fx</w>\": 9025,\n  \"fy\": 8440,\n  \"fy</w>\": 2702,\n  \"fyi</w>\": 16014,\n  \"fying</w>\": 5294,\n  \"fz</w>\": 46400,\n  \"fÃ©\": 34072,\n  \"g\": 70,\n  \"g</w>\": 326,\n  \"ga\": 1275,\n  \"ga</w>\": 1531,\n  \"gaa</w>\": 10715,\n  \"gaal</w>\": 40867,\n  \"gaard</w>\": 24645,\n  \"gab\": 3927,\n  \"gab</w>\": 37382,\n  \"gabbana</w>\": 36272,\n  \"gabby\": 48115,\n  \"gabby</w>\": 24567,\n  \"gabe</w>\": 18916,\n  \"gabi</w>\": 41931,\n  \"gable</w>\": 33387,\n  \"gables</w>\": 40928,\n  \"gabri\": 8311,\n  \"gabriel\": 31684,\n  \"gabriel</w>\": 13244,\n  \"gabrielle</w>\": 33572,\n  \"gaby</w>\": 46420,\n  \"gac</w>\": 32520,\n  \"gad\": 7786,\n  \"gad</w>\": 44651,\n  \"gadget</w>\": 25525,\n  \"gadgets</w>\": 22840,\n  \"gado</w>\": 29489,\n  \"gae</w>\": 22003,\n  \"gael</w>\": 35663,\n  \"gaelic</w>\": 31173,\n  \"gaf\": 21354,\n  \"gaf</w>\": 32670,\n  \"gag\": 14121,\n  \"gag</w>\": 18844,\n  \"gaga</w>\": 9782,\n  \"gage</w>\": 21081,\n  \"gah</w>\": 27750,\n  \"gai\": 24214,\n  \"gai</w>\": 25153,\n  \"gaia</w>\": 41269,\n  \"gail\": 41160,\n  \"gail</w>\": 27676,\n  \"gain\": 21536,\n  \"gain</w>\": 6202,\n  \"gaine\": 35747,\n  \"gained</w>\": 14489,\n  \"gaines</w>\": 49225,\n  \"gainesville</w>\": 40427,\n  \"gaining</w>\": 15260,\n  \"gains\": 42751,\n  \"gains</w>\": 12107,\n  \"gal\": 2001,\n  \"gal</w>\": 4488,\n  \"gala</w>\": 7211,\n  \"galac\": 18864,\n  \"galactic</w>\": 25514,\n  \"galap\": 41115,\n  \"galapagos</w>\": 44057,\n  \"galat\": 39853,\n  \"galatasar\": 42413,\n  \"galatasaray</w>\": 47787,\n  \"galax\": 5647,\n  \"galaxies</w>\": 32435,\n  \"galaxy\": 32130,\n  \"galaxy</w>\": 6545,\n  \"gale\": 37658,\n  \"gale</w>\": 21380,\n  \"galerie</w>\": 44539,\n  \"gales</w>\": 48633,\n  \"gali\": 17546,\n  \"gali</w>\": 30552,\n  \"galicia</w>\": 47927,\n  \"galileo</w>\": 39671,\n  \"gall\": 3011,\n  \"gall</w>\": 33374,\n  \"galla\": 16847,\n  \"gallagher</w>\": 19168,\n  \"galleria</w>\": 40656,\n  \"galleries</w>\": 22304,\n  \"gallery\": 36648,\n  \"gallery</w>\": 3830,\n  \"galley</w>\": 48917,\n  \"galli\": 22568,\n  \"gallipoli</w>\": 47249,\n  \"gallo\": 37350,\n  \"gallo</w>\": 33265,\n  \"gallon</w>\": 24615,\n  \"gallons</w>\": 29335,\n  \"galloway</w>\": 27796,\n  \"galore</w>\": 22286,\n  \"gals</w>\": 20125,\n  \"galvani\": 46046,\n  \"galve\": 34328,\n  \"galveston</w>\": 36003,\n  \"galway\": 38045,\n  \"galway</w>\": 17112,\n  \"gam\": 1162,\n  \"gam</w>\": 34195,\n  \"gama</w>\": 35873,\n  \"gambia</w>\": 32988,\n  \"gamble</w>\": 26121,\n  \"gambling</w>\": 20287,\n  \"game\": 2882,\n  \"game</w>\": 1063,\n  \"gameart</w>\": 31490,\n  \"gameboy</w>\": 40951,\n  \"gamecube</w>\": 44079,\n  \"gameday</w>\": 9241,\n  \"gamedev</w>\": 7544,\n  \"gameinsight</w>\": 42626,\n  \"gameof\": 10987,\n  \"gameofthrones</w>\": 11822,\n  \"gameon</w>\": 47691,\n  \"gameplay</w>\": 16794,\n  \"gamer\": 12595,\n  \"gamer</w>\": 11598,\n  \"gamergate</w>\": 25961,\n  \"gamers</w>\": 16166,\n  \"gamersunite</w>\": 26423,\n  \"games\": 18551,\n  \"games</w>\": 1955,\n  \"gamescom</w>\": 37003,\n  \"gamestop</w>\": 39436,\n  \"gametime</w>\": 45899,\n  \"gami</w>\": 42025,\n  \"gamification</w>\": 48908,\n  \"gaming\": 28803,\n  \"gaming</w>\": 4017,\n  \"gamma</w>\": 22180,\n  \"gamo</w>\": 39325,\n  \"gan\": 1822,\n  \"gan</w>\": 1670,\n  \"gand\": 8399,\n  \"ganda</w>\": 27261,\n  \"gander</w>\": 44508,\n  \"gandhi</w>\": 12322,\n  \"ganesh</w>\": 30362,\n  \"ganesha</w>\": 45185,\n  \"gang\": 8066,\n  \"gang</w>\": 5674,\n  \"ganga</w>\": 36275,\n  \"gangnam</w>\": 46777,\n  \"gangs</w>\": 29844,\n  \"gangsta</w>\": 37365,\n  \"gangster</w>\": 26514,\n  \"gani</w>\": 48324,\n  \"gann</w>\": 45665,\n  \"gannon</w>\": 45837,\n  \"gano</w>\": 25304,\n  \"gao</w>\": 26556,\n  \"gaon</w>\": 19279,\n  \"gap\": 29906,\n  \"gap</w>\": 7609,\n  \"gaps</w>\": 25296,\n  \"gar\": 1099,\n  \"gar</w>\": 5824,\n  \"gara</w>\": 28710,\n  \"garage</w>\": 8474,\n  \"garbage</w>\": 13760,\n  \"garci\": 44658,\n  \"garcia</w>\": 10529,\n  \"gard\": 7751,\n  \"gard</w>\": 21003,\n  \"garda</w>\": 31906,\n  \"garde</w>\": 22649,\n  \"garden\": 4674,\n  \"garden</w>\": 2756,\n  \"gardenchat</w>\": 46292,\n  \"gardener</w>\": 28554,\n  \"gardeners</w>\": 38205,\n  \"gardening</w>\": 10483,\n  \"gardens</w>\": 6152,\n  \"gardiner</w>\": 43121,\n  \"gardner</w>\": 18710,\n  \"gare\": 5633,\n  \"gare</w>\": 48402,\n  \"gareth\": 37140,\n  \"gareth</w>\": 18175,\n  \"garfield</w>\": 26728,\n  \"garh</w>\": 16762,\n  \"gari\": 40898,\n  \"gari</w>\": 43080,\n  \"garis</w>\": 37839,\n  \"garland</w>\": 23418,\n  \"garlic</w>\": 9685,\n  \"garment</w>\": 31418,\n  \"garments</w>\": 43341,\n  \"garmin</w>\": 39885,\n  \"garner</w>\": 20340,\n  \"garnet</w>\": 37669,\n  \"garo</w>\": 30388,\n  \"garrett</w>\": 15881,\n  \"garri\": 21764,\n  \"garrison</w>\": 30108,\n  \"garros</w>\": 40425,\n  \"garry</w>\": 24398,\n  \"gars</w>\": 12055,\n  \"gart\": 18380,\n  \"gart</w>\": 18751,\n  \"garten</w>\": 14684,\n  \"garter</w>\": 48420,\n  \"garth\": 45398,\n  \"garth</w>\": 24469,\n  \"gartner\": 43334,\n  \"gartner</w>\": 29678,\n  \"garty</w>\": 46383,\n  \"garu</w>\": 31140,\n  \"garvey</w>\": 39511,\n  \"garwal</w>\": 38623,\n  \"gary\": 10535,\n  \"gary</w>\": 4516,\n  \"garza</w>\": 49393,\n  \"gas\": 5047,\n  \"gas</w>\": 2474,\n  \"gases</w>\": 36971,\n  \"gasoline</w>\": 27691,\n  \"gasp</w>\": 43762,\n  \"gaston</w>\": 40669,\n  \"gastri\": 49197,\n  \"gastro\": 23740,\n  \"gastron\": 30699,\n  \"gastronomy</w>\": 46987,\n  \"gat\": 5314,\n  \"gat</w>\": 18941,\n  \"gata</w>\": 44575,\n  \"gate\": 8071,\n  \"gate</w>\": 3302,\n  \"gated</w>\": 23997,\n  \"gates</w>\": 9472,\n  \"gateshead</w>\": 40051,\n  \"gateway\": 45221,\n  \"gateway</w>\": 14943,\n  \"gather\": 36345,\n  \"gather</w>\": 12602,\n  \"gathered</w>\": 14646,\n  \"gathering</w>\": 9197,\n  \"gatherings</w>\": 48096,\n  \"gathers</w>\": 39250,\n  \"gating</w>\": 27561,\n  \"gation</w>\": 11095,\n  \"gations</w>\": 33906,\n  \"gato</w>\": 44492,\n  \"gator\": 20216,\n  \"gator</w>\": 16390,\n  \"gatorade</w>\": 36354,\n  \"gators</w>\": 17173,\n  \"gatory</w>\": 24796,\n  \"gatsby</w>\": 32586,\n  \"gatwick</w>\": 37122,\n  \"gau\": 5919,\n  \"gau</w>\": 43068,\n  \"gauge</w>\": 18728,\n  \"gaunt\": 31862,\n  \"gauntlet</w>\": 37163,\n  \"gautam\": 45853,\n  \"gautam</w>\": 31356,\n  \"gauteng</w>\": 40333,\n  \"gav\": 8966,\n  \"gave</w>\": 3485,\n  \"gavin\": 32974,\n  \"gavin</w>\": 16389,\n  \"gaw\": 15405,\n  \"gawd</w>\": 43239,\n  \"gawx</w>\": 43420,\n  \"gay\": 7460,\n  \"gay</w>\": 5627,\n  \"gaya</w>\": 39477,\n  \"gaye</w>\": 41401,\n  \"gayle</w>\": 29998,\n  \"gayo</w>\": 36768,\n  \"gays</w>\": 28001,\n  \"gaz\": 4837,\n  \"gaz</w>\": 36475,\n  \"gaza\": 38391,\n  \"gaza</w>\": 10112,\n  \"gazaunderattack</w>\": 42458,\n  \"gaze</w>\": 23212,\n  \"gazette</w>\": 20443,\n  \"gazing</w>\": 28373,\n  \"gb\": 8727,\n  \"gb</w>\": 4619,\n  \"gba</w>\": 18528,\n  \"gbbo</w>\": 34474,\n  \"gbc</w>\": 42993,\n  \"gbp</w>\": 27391,\n  \"gbr</w>\": 31984,\n  \"gby</w>\": 40509,\n  \"gc\": 8577,\n  \"gc</w>\": 6043,\n  \"gcc</w>\": 26804,\n  \"gcse</w>\": 28763,\n  \"gcu</w>\": 34137,\n  \"gd\": 13264,\n  \"gd</w>\": 14604,\n  \"gdc</w>\": 32793,\n  \"gden</w>\": 44928,\n  \"gdp</w>\": 17100,\n  \"gdpr</w>\": 22963,\n  \"ge\": 619,\n  \"ge</w>\": 710,\n  \"gea</w>\": 26790,\n  \"gear\": 15532,\n  \"gear</w>\": 4802,\n  \"gearbox</w>\": 42454,\n  \"geared</w>\": 33903,\n  \"gearing</w>\": 19027,\n  \"gears</w>\": 21147,\n  \"geaux\": 36313,\n  \"gecko</w>\": 38616,\n  \"ged\": 17252,\n  \"ged</w>\": 3480,\n  \"geddon</w>\": 31720,\n  \"gedly</w>\": 13991,\n  \"gee\": 9806,\n  \"gee</w>\": 9071,\n  \"geek\": 17920,\n  \"geek</w>\": 7135,\n  \"geeks</w>\": 20110,\n  \"geeky</w>\": 47332,\n  \"geel\": 25906,\n  \"geelong</w>\": 34555,\n  \"gees</w>\": 38088,\n  \"geese</w>\": 26413,\n  \"geez</w>\": 42394,\n  \"geh\": 30320,\n  \"geist</w>\": 38290,\n  \"gel\": 7343,\n  \"gel</w>\": 5697,\n  \"gelato</w>\": 29577,\n  \"gels</w>\": 42552,\n  \"gely</w>\": 14637,\n  \"gem\": 14261,\n  \"gem</w>\": 7613,\n  \"gement</w>\": 19495,\n  \"gemini</w>\": 23086,\n  \"gemma</w>\": 23952,\n  \"gems</w>\": 14355,\n  \"gemstone</w>\": 27747,\n  \"gemstones</w>\": 43972,\n  \"gen\": 1024,\n  \"gen</w>\": 3278,\n  \"gence</w>\": 16088,\n  \"gency</w>\": 5245,\n  \"gend\": 33247,\n  \"gender\": 22976,\n  \"gender</w>\": 5906,\n  \"gendere\": 35824,\n  \"genderequality</w>\": 43338,\n  \"gene\": 5822,\n  \"gene</w>\": 7962,\n  \"genealo\": 24142,\n  \"genealogy</w>\": 29381,\n  \"gener\": 1832,\n  \"general\": 20576,\n  \"general</w>\": 3658,\n  \"generally</w>\": 19256,\n  \"generals</w>\": 30296,\n  \"generate</w>\": 16896,\n  \"generated</w>\": 19450,\n  \"generates</w>\": 33938,\n  \"generating</w>\": 23882,\n  \"generation\": 41211,\n  \"generation</w>\": 4883,\n  \"generational</w>\": 34506,\n  \"generations</w>\": 12247,\n  \"generative</w>\": 29472,\n  \"generator</w>\": 19399,\n  \"generators</w>\": 41917,\n  \"generic</w>\": 26978,\n  \"generosity</w>\": 23015,\n  \"generous</w>\": 12570,\n  \"generously</w>\": 35113,\n  \"genes</w>\": 19683,\n  \"genesis</w>\": 13518,\n  \"genetic\": 47746,\n  \"genetic</w>\": 13578,\n  \"genetically</w>\": 36745,\n  \"genetics</w>\": 18276,\n  \"geneva</w>\": 14799,\n  \"genevie\": 41633,\n  \"genevieve</w>\": 46584,\n  \"geni\": 22334,\n  \"genic</w>\": 15750,\n  \"genie</w>\": 24221,\n  \"genital</w>\": 32960,\n  \"genius</w>\": 8235,\n  \"geniuses</w>\": 41406,\n  \"geno\": 41544,\n  \"geno</w>\": 46776,\n  \"genoa</w>\": 43993,\n  \"genoci\": 14687,\n  \"genocide</w>\": 15903,\n  \"genome</w>\": 23991,\n  \"genomic</w>\": 44371,\n  \"genomics</w>\": 26227,\n  \"genre</w>\": 14249,\n  \"genres</w>\": 30340,\n  \"gens</w>\": 17449,\n  \"gent\": 3685,\n  \"gent</w>\": 7139,\n  \"gente</w>\": 34325,\n  \"gentle\": 7262,\n  \"gentle</w>\": 13577,\n  \"gentleman</w>\": 13293,\n  \"gentlemen</w>\": 11692,\n  \"gently</w>\": 17187,\n  \"gento</w>\": 28320,\n  \"gentri\": 41148,\n  \"gentry</w>\": 47225,\n  \"gents</w>\": 18862,\n  \"genu\": 9182,\n  \"genuine</w>\": 12184,\n  \"genuinely</w>\": 20006,\n  \"genus</w>\": 38161,\n  \"geny</w>\": 35323,\n  \"geo\": 5038,\n  \"geo</w>\": 11604,\n  \"geocaching</w>\": 47908,\n  \"geof\": 20629,\n  \"geoff\": 33697,\n  \"geoff</w>\": 20386,\n  \"geoffrey</w>\": 29520,\n  \"geograph\": 45920,\n  \"geographic</w>\": 22635,\n  \"geographical</w>\": 39380,\n  \"geography</w>\": 17101,\n  \"geological</w>\": 38380,\n  \"geology</w>\": 21578,\n  \"geom\": 46135,\n  \"geome\": 12958,\n  \"geometric</w>\": 22419,\n  \"geometry</w>\": 21731,\n  \"geon\": 20844,\n  \"geon</w>\": 7295,\n  \"geons</w>\": 15914,\n  \"geopol\": 39758,\n  \"geor\": 2549,\n  \"georg</w>\": 43126,\n  \"george\": 8377,\n  \"george</w>\": 3296,\n  \"georges</w>\": 25042,\n  \"georgetown</w>\": 22970,\n  \"georgie</w>\": 42115,\n  \"georgina</w>\": 43892,\n  \"geospatial</w>\": 46238,\n  \"geothermal</w>\": 38413,\n  \"geous</w>\": 3068,\n  \"ger\": 1291,\n  \"ger</w>\": 1502,\n  \"gera</w>\": 48867,\n  \"gerald\": 29901,\n  \"gerald</w>\": 13269,\n  \"gerard\": 35979,\n  \"gerard</w>\": 20826,\n  \"gerber</w>\": 45058,\n  \"gered</w>\": 40179,\n  \"geri\": 41664,\n  \"geri</w>\": 46214,\n  \"gering</w>\": 24077,\n  \"germain</w>\": 38786,\n  \"german\": 14972,\n  \"german</w>\": 4710,\n  \"germans</w>\": 28400,\n  \"germany</w>\": 4464,\n  \"germin\": 44721,\n  \"germs</w>\": 47731,\n  \"geronimo</w>\": 45171,\n  \"gerrard</w>\": 26538,\n  \"gerry\": 29825,\n  \"gerry</w>\": 23026,\n  \"gers</w>\": 3314,\n  \"gertrude</w>\": 46950,\n  \"gervais</w>\": 36527,\n  \"gery</w>\": 32845,\n  \"ges</w>\": 3316,\n  \"gest\": 11843,\n  \"gest</w>\": 2033,\n  \"gesture</w>\": 21780,\n  \"gestures</w>\": 43524,\n  \"get\": 5670,\n  \"get</w>\": 779,\n  \"geta\": 13155,\n  \"getaway</w>\": 16131,\n  \"gether</w>\": 27224,\n  \"getic</w>\": 20661,\n  \"getin\": 25822,\n  \"getit\": 44891,\n  \"getit</w>\": 48315,\n  \"getoutside</w>\": 35644,\n  \"gets\": 39448,\n  \"gets</w>\": 2127,\n  \"gett\": 6647,\n  \"gett</w>\": 27965,\n  \"gettable</w>\": 15620,\n  \"gette</w>\": 29800,\n  \"gettin</w>\": 13428,\n  \"getting\": 30885,\n  \"getting</w>\": 1500,\n  \"getty\": 31185,\n  \"getty</w>\": 13965,\n  \"gettys\": 35189,\n  \"gettysburg</w>\": 37062,\n  \"getyour\": 42159,\n  \"gey</w>\": 29289,\n  \"gf\": 28953,\n  \"gf</w>\": 10846,\n  \"gfriend</w>\": 35245,\n  \"gfs</w>\": 37553,\n  \"gg\": 1129,\n  \"gg</w>\": 3286,\n  \"gga</w>\": 26003,\n  \"ggan</w>\": 25626,\n  \"gge\": 21521,\n  \"gge</w>\": 31659,\n  \"gged</w>\": 6095,\n  \"gger\": 12367,\n  \"gger</w>\": 3493,\n  \"ggers</w>\": 7480,\n  \"ggg</w>\": 20143,\n  \"gggg</w>\": 33513,\n  \"ggi</w>\": 21662,\n  \"ggin</w>\": 17160,\n  \"gging</w>\": 4966,\n  \"ggins</w>\": 12444,\n  \"ggle\": 34981,\n  \"ggle</w>\": 11430,\n  \"ggled</w>\": 46328,\n  \"ggles</w>\": 14703,\n  \"ggling</w>\": 16523,\n  \"ggly</w>\": 39407,\n  \"ggs</w>\": 4797,\n  \"ggy\": 24935,\n  \"ggy</w>\": 6476,\n  \"gh\": 583,\n  \"gh</w>\": 790,\n  \"gha\": 10010,\n  \"gha</w>\": 25183,\n  \"gham\": 21456,\n  \"ghan\": 18945,\n  \"ghan</w>\": 6624,\n  \"ghana\": 30330,\n  \"ghana</w>\": 9731,\n  \"ghanaian</w>\": 34223,\n  \"ghani</w>\": 36699,\n  \"ghar\": 37334,\n  \"ghar</w>\": 36973,\n  \"ghat</w>\": 43989,\n  \"ghaz\": 37493,\n  \"ghc</w>\": 42139,\n  \"ghe\": 10754,\n  \"ghe</w>\": 28561,\n  \"ghead</w>\": 40783,\n  \"ghee</w>\": 34794,\n  \"gher\": 21542,\n  \"gher</w>\": 14796,\n  \"ghet\": 18447,\n  \"ghetti</w>\": 17485,\n  \"ghetto</w>\": 22403,\n  \"ghi\": 22436,\n  \"ghi</w>\": 22279,\n  \"ghibli</w>\": 40555,\n  \"ghj\": 38439,\n  \"ghlin</w>\": 24131,\n  \"gho\": 4307,\n  \"ghorn</w>\": 38094,\n  \"ghosh</w>\": 43279,\n  \"ghoshal</w>\": 49134,\n  \"ghost\": 11417,\n  \"ghost</w>\": 7108,\n  \"ghostbusters</w>\": 25462,\n  \"ghostly</w>\": 44901,\n  \"ghosts</w>\": 16737,\n  \"ghou\": 35843,\n  \"ghoul</w>\": 45302,\n  \"ghouse</w>\": 38238,\n  \"ghs</w>\": 14157,\n  \"ght\": 1413,\n  \"ght</w>\": 630,\n  \"ghted</w>\": 4963,\n  \"ghter</w>\": 2427,\n  \"ghters</w>\": 12994,\n  \"ghtful</w>\": 8334,\n  \"ghting</w>\": 3019,\n  \"ghtly</w>\": 6993,\n  \"ghtning</w>\": 39740,\n  \"ghton</w>\": 16353,\n  \"ghts</w>\": 1259,\n  \"ghty\": 20968,\n  \"ghty</w>\": 5866,\n  \"ghu\": 25808,\n  \"ghue</w>\": 45675,\n  \"ghyun</w>\": 25010,\n  \"ghz</w>\": 24325,\n  \"gi\": 707,\n  \"gi</w>\": 4478,\n  \"gia</w>\": 8864,\n  \"giac\": 35444,\n  \"giam\": 39623,\n  \"gian\": 17274,\n  \"gian</w>\": 12866,\n  \"gianni</w>\": 46752,\n  \"giant\": 23668,\n  \"giant</w>\": 4687,\n  \"giants</w>\": 7076,\n  \"giar\": 34241,\n  \"gib\": 9816,\n  \"gibb\": 18964,\n  \"gibbons</w>\": 31974,\n  \"gibbs</w>\": 26488,\n  \"gibility</w>\": 33297,\n  \"gible</w>\": 13159,\n  \"gibr\": 20206,\n  \"gibraltar</w>\": 23988,\n  \"gibson\": 37420,\n  \"gibson</w>\": 12178,\n  \"gic\": 27900,\n  \"gic</w>\": 2570,\n  \"gical</w>\": 32973,\n  \"gically</w>\": 26320,\n  \"gid\": 36774,\n  \"gid</w>\": 21413,\n  \"giddy</w>\": 40894,\n  \"gideon</w>\": 43867,\n  \"gidi</w>\": 30603,\n  \"gie\": 11459,\n  \"gie</w>\": 3991,\n  \"gier</w>\": 28974,\n  \"gies</w>\": 5505,\n  \"gif\": 11363,\n  \"gif</w>\": 11677,\n  \"gifford</w>\": 47850,\n  \"gifs</w>\": 37643,\n  \"gift\": 20569,\n  \"gift</w>\": 2733,\n  \"gifted</w>\": 15110,\n  \"giftide\": 20152,\n  \"giftideas</w>\": 23487,\n  \"gifting</w>\": 39546,\n  \"gifts</w>\": 5836,\n  \"gig\": 26981,\n  \"gig</w>\": 7471,\n  \"gigab\": 34530,\n  \"gigan\": 24104,\n  \"gigantic</w>\": 31507,\n  \"giggle</w>\": 36426,\n  \"giggles</w>\": 42731,\n  \"giggs</w>\": 44692,\n  \"gigi\": 44106,\n  \"gigi</w>\": 26171,\n  \"gigs</w>\": 20316,\n  \"gil\": 3997,\n  \"gil</w>\": 10088,\n  \"gila</w>\": 46952,\n  \"gilbert</w>\": 14154,\n  \"gilded</w>\": 44341,\n  \"giles</w>\": 24802,\n  \"gill\": 14280,\n  \"gill</w>\": 12003,\n  \"gille\": 29610,\n  \"gilles</w>\": 39590,\n  \"gillespie</w>\": 36242,\n  \"gillette</w>\": 38603,\n  \"gilli\": 13695,\n  \"gillian</w>\": 28753,\n  \"gills</w>\": 48851,\n  \"gilmore</w>\": 27603,\n  \"gilt</w>\": 44378,\n  \"gim\": 31284,\n  \"gimm\": 40692,\n  \"gimme</w>\": 21525,\n  \"gin\": 3374,\n  \"gin</w>\": 4941,\n  \"gina</w>\": 15604,\n  \"gine\": 27482,\n  \"ging\": 10829,\n  \"ging</w>\": 3905,\n  \"ginger\": 16287,\n  \"ginger</w>\": 9718,\n  \"gingerbread</w>\": 23692,\n  \"gini</w>\": 35768,\n  \"gino</w>\": 36521,\n  \"gins</w>\": 18328,\n  \"gio\": 16329,\n  \"gio</w>\": 8050,\n  \"gion</w>\": 41226,\n  \"gior\": 14920,\n  \"giorgio</w>\": 33271,\n  \"giorno</w>\": 33310,\n  \"gios</w>\": 41927,\n  \"gious</w>\": 14419,\n  \"giov\": 21404,\n  \"giovanni</w>\": 26574,\n  \"gipp\": 41351,\n  \"gir\": 1077,\n  \"gir</w>\": 25481,\n  \"gira\": 16949,\n  \"giraffe</w>\": 22826,\n  \"giri</w>\": 31709,\n  \"girl\": 3914,\n  \"girl</w>\": 1611,\n  \"girlfriend</w>\": 8217,\n  \"girlfriends</w>\": 30736,\n  \"girlpower</w>\": 37433,\n  \"girls\": 15480,\n  \"girls</w>\": 1917,\n  \"girly</w>\": 29605,\n  \"giro\": 39664,\n  \"giro</w>\": 26454,\n  \"girona</w>\": 47842,\n  \"giroud</w>\": 41177,\n  \"gis\": 16266,\n  \"gis</w>\": 12773,\n  \"gist</w>\": 21241,\n  \"git\": 16060,\n  \"git</w>\": 20918,\n  \"gita</w>\": 40838,\n  \"github</w>\": 31196,\n  \"giu\": 17931,\n  \"giuli\": 29762,\n  \"giuliani</w>\": 47739,\n  \"giuse\": 29385,\n  \"giuseppe</w>\": 33563,\n  \"give\": 4120,\n  \"give</w>\": 1781,\n  \"giveaway</w>\": 5310,\n  \"giveaways</w>\": 18974,\n  \"giveback</w>\": 41385,\n  \"given\": 33323,\n  \"given</w>\": 4302,\n  \"givenchy</w>\": 38245,\n  \"giver</w>\": 43339,\n  \"gives</w>\": 3926,\n  \"giveup</w>\": 35485,\n  \"giving\": 14673,\n  \"giving</w>\": 2339,\n  \"givingback</w>\": 49300,\n  \"givingtuesday</w>\": 23556,\n  \"giz\": 29237,\n  \"gk\": 38953,\n  \"gk</w>\": 18719,\n  \"gl\": 1849,\n  \"gl</w>\": 14751,\n  \"gla\": 1523,\n  \"gla</w>\": 36904,\n  \"glaci\": 14924,\n  \"glacial</w>\": 40782,\n  \"glacier</w>\": 19282,\n  \"glaciers</w>\": 42528,\n  \"glad\": 20841,\n  \"glad</w>\": 4761,\n  \"glades</w>\": 37432,\n  \"gladi\": 21742,\n  \"gladiator</w>\": 38477,\n  \"gladiators</w>\": 41087,\n  \"gladly</w>\": 41598,\n  \"gladys</w>\": 43168,\n  \"glam\": 8738,\n  \"glam</w>\": 16905,\n  \"glamorous</w>\": 22896,\n  \"glamour\": 42876,\n  \"glamour</w>\": 17499,\n  \"glamping</w>\": 46167,\n  \"glan\": 40482,\n  \"glan</w>\": 45844,\n  \"glance</w>\": 26557,\n  \"gland</w>\": 41441,\n  \"glar\": 48535,\n  \"glar</w>\": 41702,\n  \"glare</w>\": 46035,\n  \"glas\": 29935,\n  \"glas</w>\": 43654,\n  \"glasgo\": 6757,\n  \"glasgow\": 29990,\n  \"glasgow</w>\": 7363,\n  \"glass\": 16305,\n  \"glass</w>\": 3313,\n  \"glasses</w>\": 6116,\n  \"glaston\": 26848,\n  \"glastonbury</w>\": 28233,\n  \"glau\": 39171,\n  \"glaze</w>\": 28112,\n  \"glazed</w>\": 24122,\n  \"gle\": 7166,\n  \"gle</w>\": 2865,\n  \"glee\": 32379,\n  \"glee</w>\": 21614,\n  \"glen\": 6158,\n  \"glen</w>\": 11049,\n  \"glend\": 38332,\n  \"glendale</w>\": 33043,\n  \"glenn\": 32004,\n  \"glenn</w>\": 12861,\n  \"gler</w>\": 34649,\n  \"gley</w>\": 21998,\n  \"gli\": 5896,\n  \"gli</w>\": 28791,\n  \"glia</w>\": 22217,\n  \"glide</w>\": 37321,\n  \"glider</w>\": 41636,\n  \"glimp\": 12888,\n  \"glimpse</w>\": 13817,\n  \"glio</w>\": 29785,\n  \"glit\": 21079,\n  \"glitch</w>\": 29563,\n  \"glitter</w>\": 16528,\n  \"glitz</w>\": 44542,\n  \"glo\": 1721,\n  \"glo</w>\": 30474,\n  \"glob\": 13363,\n  \"global\": 6707,\n  \"global</w>\": 2779,\n  \"globalgoals</w>\": 33211,\n  \"globalhealth</w>\": 46751,\n  \"globalization</w>\": 47680,\n  \"globally</w>\": 17775,\n  \"globalwarming</w>\": 46017,\n  \"globe\": 19436,\n  \"globe</w>\": 9368,\n  \"globes</w>\": 38085,\n  \"glock</w>\": 38818,\n  \"glomer\": 43689,\n  \"gloom</w>\": 48594,\n  \"gloomy</w>\": 32199,\n  \"glori\": 7270,\n  \"gloria</w>\": 19244,\n  \"glorious</w>\": 9171,\n  \"glory\": 36107,\n  \"glory</w>\": 7285,\n  \"glos</w>\": 40633,\n  \"gloss\": 38258,\n  \"gloss</w>\": 22014,\n  \"glossy</w>\": 29802,\n  \"glou\": 15989,\n  \"gloucester\": 28133,\n  \"gloucester</w>\": 23835,\n  \"gloucestershire</w>\": 33789,\n  \"glove</w>\": 16078,\n  \"glover</w>\": 21594,\n  \"gloves</w>\": 12363,\n  \"glow\": 30472,\n  \"glow</w>\": 10111,\n  \"glowing</w>\": 18437,\n  \"glows</w>\": 48107,\n  \"glu\": 5952,\n  \"glu</w>\": 32281,\n  \"glucose</w>\": 34642,\n  \"glue</w>\": 22103,\n  \"glued</w>\": 38135,\n  \"gluten\": 15482,\n  \"gluten</w>\": 15524,\n  \"glutenfree</w>\": 16138,\n  \"gly\": 13027,\n  \"glycer\": 48914,\n  \"gm\": 18743,\n  \"gm</w>\": 5918,\n  \"gma</w>\": 18155,\n  \"gmail</w>\": 11119,\n  \"gman\": 41043,\n  \"gman</w>\": 36936,\n  \"gmb\": 35934,\n  \"gmb</w>\": 31799,\n  \"gmbh</w>\": 46877,\n  \"gmc</w>\": 27257,\n  \"gmo</w>\": 23486,\n  \"gms</w>\": 36987,\n  \"gmt</w>\": 13803,\n  \"gn\": 2455,\n  \"gn</w>\": 9831,\n  \"gna</w>\": 23009,\n  \"gnation</w>\": 45912,\n  \"gne</w>\": 25407,\n  \"gni\": 5104,\n  \"gnment</w>\": 25110,\n  \"gno\": 23376,\n  \"gno</w>\": 43686,\n  \"gnocchi</w>\": 48299,\n  \"gnome</w>\": 33643,\n  \"gnon</w>\": 20561,\n  \"go\": 650,\n  \"go</w>\": 861,\n  \"goa</w>\": 14399,\n  \"goal\": 9003,\n  \"goal</w>\": 3321,\n  \"goalie</w>\": 20723,\n  \"goalkeeper</w>\": 16601,\n  \"goals</w>\": 3295,\n  \"goalscorer</w>\": 43547,\n  \"goaltender</w>\": 44151,\n  \"goat\": 34082,\n  \"goat</w>\": 9530,\n  \"goats</w>\": 18393,\n  \"gob\": 29559,\n  \"gobeavs</w>\": 48285,\n  \"goblin</w>\": 26223,\n  \"goblue</w>\": 25232,\n  \"gobucks</w>\": 29175,\n  \"gocougs</w>\": 34202,\n  \"god\": 4190,\n  \"god</w>\": 1731,\n  \"godawgs</w>\": 40436,\n  \"godbless\": 46616,\n  \"godbless</w>\": 44007,\n  \"godd\": 16589,\n  \"goddamn</w>\": 28495,\n  \"goddard</w>\": 37827,\n  \"goddess</w>\": 10808,\n  \"godfather</w>\": 26222,\n  \"godfrey</w>\": 40148,\n  \"godis\": 38521,\n  \"godly</w>\": 42438,\n  \"gods\": 33620,\n  \"gods</w>\": 10328,\n  \"goducks</w>\": 35889,\n  \"godzilla</w>\": 23369,\n  \"goe\": 22084,\n  \"goers</w>\": 27784,\n  \"goes\": 43581,\n  \"goes</w>\": 2635,\n  \"gof\": 17537,\n  \"goff</w>\": 34399,\n  \"goftheday</w>\": 39360,\n  \"gofund\": 34445,\n  \"gofundme</w>\": 34686,\n  \"gog</w>\": 42949,\n  \"goggles</w>\": 31027,\n  \"gogh</w>\": 19697,\n  \"gogo</w>\": 22688,\n  \"gogreen</w>\": 36279,\n  \"gohawks</w>\": 34884,\n  \"goi</w>\": 24917,\n  \"goin</w>\": 13939,\n  \"going\": 25787,\n  \"going</w>\": 1245,\n  \"goku</w>\": 29550,\n  \"gol\": 1537,\n  \"gol</w>\": 18257,\n  \"gola</w>\": 41090,\n  \"gold\": 4999,\n  \"gold</w>\": 2209,\n  \"goldberg</w>\": 25161,\n  \"goldcoast</w>\": 34634,\n  \"golden\": 10763,\n  \"golden</w>\": 3878,\n  \"goldeng\": 20650,\n  \"goldenglobes</w>\": 26842,\n  \"goldfish</w>\": 40293,\n  \"goldie</w>\": 42805,\n  \"goldman</w>\": 27164,\n  \"golds\": 30526,\n  \"golds</w>\": 40283,\n  \"goldsmith</w>\": 40214,\n  \"gole\": 41297,\n  \"golf\": 9096,\n  \"golf</w>\": 3096,\n  \"golfclub</w>\": 45742,\n  \"golfer</w>\": 24579,\n  \"golfers</w>\": 28441,\n  \"golfing</w>\": 31379,\n  \"goli\": 29265,\n  \"goliath</w>\": 41602,\n  \"gom\": 7051,\n  \"goma</w>\": 46198,\n  \"gomes</w>\": 39128,\n  \"gomez</w>\": 16433,\n  \"gon\": 1854,\n  \"gon</w>\": 3379,\n  \"gona</w>\": 34835,\n  \"gone\": 35135,\n  \"gone</w>\": 3601,\n  \"gong</w>\": 28486,\n  \"gonna</w>\": 2562,\n  \"gonz\": 10587,\n  \"gonzaga</w>\": 36241,\n  \"gonzale\": 17512,\n  \"gonzales</w>\": 31265,\n  \"gonzalez</w>\": 18198,\n  \"goo\": 1381,\n  \"goo</w>\": 17882,\n  \"good\": 2185,\n  \"good</w>\": 886,\n  \"goodbye</w>\": 6968,\n  \"goodday\": 46284,\n  \"goode</w>\": 42076,\n  \"goodfood</w>\": 46844,\n  \"goodfriday</w>\": 40360,\n  \"goodie</w>\": 29213,\n  \"goodies</w>\": 13308,\n  \"goodluck</w>\": 19718,\n  \"goodman</w>\": 24146,\n  \"goodmorning</w>\": 14421,\n  \"goodness</w>\": 10531,\n  \"goodnight</w>\": 8540,\n  \"goodreads</w>\": 31629,\n  \"goods</w>\": 9340,\n  \"goodtimes</w>\": 22570,\n  \"goodvibes</w>\": 43146,\n  \"goodwill</w>\": 24902,\n  \"goodwin</w>\": 28080,\n  \"goodwood</w>\": 30008,\n  \"goody</w>\": 35937,\n  \"goodyear</w>\": 42858,\n  \"goofy</w>\": 26879,\n  \"goog\": 18581,\n  \"google\": 12195,\n  \"google</w>\": 3460,\n  \"googled</w>\": 40345,\n  \"googleplay</w>\": 37309,\n  \"goon</w>\": 15267,\n  \"goons</w>\": 30440,\n  \"goooo\": 35876,\n  \"goooo</w>\": 48957,\n  \"goose\": 21445,\n  \"goose</w>\": 13822,\n  \"goosebumps</w>\": 32254,\n  \"gop\": 18942,\n  \"gop</w>\": 6250,\n  \"gopack\": 46995,\n  \"gopackgo</w>\": 47719,\n  \"gopal</w>\": 47268,\n  \"gopdebate</w>\": 39806,\n  \"gopher\": 47750,\n  \"gopher</w>\": 48905,\n  \"gophers</w>\": 31957,\n  \"gopro</w>\": 17511,\n  \"gor\": 1747,\n  \"gor</w>\": 29827,\n  \"gordo</w>\": 47707,\n  \"gordon\": 20485,\n  \"gordon</w>\": 8244,\n  \"gore\": 30311,\n  \"gore</w>\": 17872,\n  \"gorg</w>\": 46815,\n  \"gorge\": 35548,\n  \"gorge</w>\": 20038,\n  \"gorgeous</w>\": 3241,\n  \"gori\": 12461,\n  \"goria</w>\": 43359,\n  \"gorilla\": 37910,\n  \"gorilla</w>\": 21994,\n  \"gorman</w>\": 35741,\n  \"goro</w>\": 44977,\n  \"gory</w>\": 7160,\n  \"gos\": 20517,\n  \"gos</w>\": 5693,\n  \"gosh</w>\": 15395,\n  \"gosling</w>\": 35320,\n  \"gosp\": 9617,\n  \"gospel</w>\": 11313,\n  \"goss\": 39734,\n  \"goss</w>\": 36924,\n  \"gossi\": 15684,\n  \"gossip</w>\": 18963,\n  \"got\": 10125,\n  \"got</w>\": 1005,\n  \"gota</w>\": 36693,\n  \"gotcha</w>\": 43275,\n  \"gote</w>\": 49345,\n  \"goth\": 48465,\n  \"goth</w>\": 20437,\n  \"gotham\": 46123,\n  \"gotham</w>\": 18299,\n  \"gothic</w>\": 15426,\n  \"goti\": 9497,\n  \"goto\": 39715,\n  \"gots</w>\": 35215,\n  \"gott\": 5089,\n  \"gott</w>\": 36466,\n  \"gotta</w>\": 4633,\n  \"gotten</w>\": 5889,\n  \"gotti</w>\": 41881,\n  \"gotv</w>\": 36089,\n  \"gou\": 10520,\n  \"gou</w>\": 36555,\n  \"gouache</w>\": 43314,\n  \"goul\": 33187,\n  \"gould</w>\": 31087,\n  \"gour\": 13580,\n  \"gourmet</w>\": 19111,\n  \"gov\": 4022,\n  \"gov</w>\": 4564,\n  \"gove</w>\": 36997,\n  \"govegan</w>\": 38886,\n  \"gover\": 10471,\n  \"gover</w>\": 16759,\n  \"govern\": 2351,\n  \"govern</w>\": 32404,\n  \"governance</w>\": 13386,\n  \"governing</w>\": 30946,\n  \"government</w>\": 3149,\n  \"governmental</w>\": 42609,\n  \"governments</w>\": 19582,\n  \"governor\": 17459,\n  \"governor</w>\": 6630,\n  \"governors</w>\": 26881,\n  \"govin\": 42451,\n  \"govt</w>\": 5345,\n  \"govuk</w>\": 28830,\n  \"gow\": 21885,\n  \"gow</w>\": 33788,\n  \"gowan</w>\": 31307,\n  \"gower</w>\": 43448,\n  \"gown</w>\": 13719,\n  \"gowns</w>\": 38029,\n  \"goyal</w>\": 35105,\n  \"gp\": 19329,\n  \"gp</w>\": 5051,\n  \"gpa</w>\": 24098,\n  \"gps</w>\": 13639,\n  \"gpu</w>\": 38561,\n  \"gq\": 40286,\n  \"gq</w>\": 31324,\n  \"gr\": 709,\n  \"gr</w>\": 6062,\n  \"gra\": 782,\n  \"gra</w>\": 15276,\n  \"grab</w>\": 4646,\n  \"grabbed</w>\": 22856,\n  \"grabbing</w>\": 26440,\n  \"grabs</w>\": 17076,\n  \"grac\": 11323,\n  \"grace\": 13225,\n  \"grace</w>\": 5142,\n  \"graced</w>\": 31894,\n  \"graceful</w>\": 25242,\n  \"graces</w>\": 38629,\n  \"graci\": 11174,\n  \"gracias</w>\": 16463,\n  \"gracie</w>\": 23235,\n  \"gracing</w>\": 37263,\n  \"gracious</w>\": 29044,\n  \"grad\": 19869,\n  \"grad</w>\": 7291,\n  \"gradable</w>\": 41529,\n  \"grade\": 45435,\n  \"grade</w>\": 3394,\n  \"graded</w>\": 13823,\n  \"grader</w>\": 23930,\n  \"graders</w>\": 10930,\n  \"grades</w>\": 10838,\n  \"gradient</w>\": 36885,\n  \"grading</w>\": 19016,\n  \"grads</w>\": 17811,\n  \"gradu\": 3230,\n  \"gradual</w>\": 45210,\n  \"gradually</w>\": 32192,\n  \"graduate</w>\": 6675,\n  \"graduated</w>\": 15128,\n  \"graduates</w>\": 12236,\n  \"graduating</w>\": 14819,\n  \"graduation</w>\": 8060,\n  \"grady</w>\": 33980,\n  \"graeme</w>\": 30192,\n  \"graf\": 46478,\n  \"graf</w>\": 39765,\n  \"graff\": 10656,\n  \"graffiti</w>\": 11676,\n  \"graft</w>\": 32698,\n  \"grafton</w>\": 47347,\n  \"graham\": 19805,\n  \"graham</w>\": 7711,\n  \"grail</w>\": 37184,\n  \"grain\": 44003,\n  \"grain</w>\": 12109,\n  \"grains</w>\": 25791,\n  \"gral</w>\": 25631,\n  \"gram\": 2949,\n  \"gram</w>\": 2338,\n  \"grammar</w>\": 16077,\n  \"grammy</w>\": 15388,\n  \"grammys</w>\": 18121,\n  \"grams</w>\": 6294,\n  \"gran\": 3892,\n  \"gran</w>\": 14493,\n  \"granada</w>\": 31172,\n  \"grand\": 3058,\n  \"grand</w>\": 2991,\n  \"grandad</w>\": 29148,\n  \"grandchildren</w>\": 36856,\n  \"granddaughter</w>\": 29460,\n  \"grande\": 37514,\n  \"grande</w>\": 10757,\n  \"grandes</w>\": 36382,\n  \"grandfather</w>\": 15346,\n  \"grandma</w>\": 10525,\n  \"grandmother</w>\": 17469,\n  \"grandpa</w>\": 14582,\n  \"grandparents</w>\": 21311,\n  \"grandprix</w>\": 39358,\n  \"grandson</w>\": 20766,\n  \"grandstand</w>\": 43172,\n  \"grange\": 45027,\n  \"grange</w>\": 23850,\n  \"granger</w>\": 42968,\n  \"granite</w>\": 18813,\n  \"grann</w>\": 45585,\n  \"granny</w>\": 22710,\n  \"granola</w>\": 34271,\n  \"grant\": 18682,\n  \"grant</w>\": 5442,\n  \"granted</w>\": 14156,\n  \"granth\": 41283,\n  \"grants</w>\": 15123,\n  \"grape\": 19131,\n  \"grape</w>\": 15959,\n  \"grapefruit</w>\": 28347,\n  \"grapes</w>\": 18580,\n  \"grapevine</w>\": 47619,\n  \"graph\": 1349,\n  \"graph</w>\": 4407,\n  \"graphene</w>\": 38387,\n  \"grapher</w>\": 14987,\n  \"graphers</w>\": 32088,\n  \"graphic\": 15653,\n  \"graphic</w>\": 4245,\n  \"graphical</w>\": 20878,\n  \"graphicdesign</w>\": 21907,\n  \"graphics</w>\": 9492,\n  \"graphies</w>\": 40164,\n  \"graphite</w>\": 29447,\n  \"graphs</w>\": 24670,\n  \"graphy</w>\": 4897,\n  \"grapp\": 30843,\n  \"gras\": 31517,\n  \"gras</w>\": 17584,\n  \"grasp</w>\": 34975,\n  \"grass\": 11584,\n  \"grass</w>\": 5922,\n  \"grasses</w>\": 46807,\n  \"grasshopper</w>\": 48894,\n  \"grassi</w>\": 42294,\n  \"grasso</w>\": 34808,\n  \"grassroots</w>\": 21991,\n  \"grassy</w>\": 44140,\n  \"grat\": 9221,\n  \"grate\": 32463,\n  \"grateful\": 45659,\n  \"grateful</w>\": 5730,\n  \"grati\": 36402,\n  \"gratis</w>\": 33638,\n  \"gratitude</w>\": 12614,\n  \"grav\": 20663,\n  \"grave\": 16606,\n  \"grave</w>\": 9981,\n  \"gravel</w>\": 27054,\n  \"graves</w>\": 17665,\n  \"graveyard</w>\": 31176,\n  \"gravit\": 26150,\n  \"gravitational</w>\": 45268,\n  \"gravity\": 47426,\n  \"gravity</w>\": 15160,\n  \"gravy</w>\": 21225,\n  \"gray\": 12703,\n  \"gray</w>\": 7048,\n  \"grays</w>\": 46848,\n  \"grayson\": 45831,\n  \"grayson</w>\": 25471,\n  \"grazi\": 42427,\n  \"grazie</w>\": 38698,\n  \"grazing</w>\": 29889,\n  \"grc</w>\": 44069,\n  \"gre\": 689,\n  \"gre</w>\": 17878,\n  \"grease</w>\": 24132,\n  \"greasy</w>\": 44376,\n  \"great\": 3265,\n  \"great</w>\": 830,\n  \"greate\": 31930,\n  \"greater\": 32725,\n  \"greater</w>\": 7033,\n  \"greatest\": 39080,\n  \"greatest</w>\": 4153,\n  \"greatly</w>\": 13978,\n  \"greatness</w>\": 14189,\n  \"greats</w>\": 21855,\n  \"greaves</w>\": 42350,\n  \"greco</w>\": 39103,\n  \"gree\": 9987,\n  \"gree</w>\": 30774,\n  \"greece</w>\": 6965,\n  \"greed</w>\": 26147,\n  \"greedy</w>\": 33301,\n  \"greek\": 23844,\n  \"greek</w>\": 6842,\n  \"greeks</w>\": 35866,\n  \"green\": 2762,\n  \"green</w>\": 1901,\n  \"greenberg</w>\": 46662,\n  \"greene</w>\": 16383,\n  \"greener</w>\": 31169,\n  \"greenery</w>\": 42493,\n  \"greenfield</w>\": 39924,\n  \"greeng\": 42077,\n  \"greenhouse</w>\": 20819,\n  \"greening</w>\": 48673,\n  \"greenland</w>\": 27345,\n  \"greenpeace</w>\": 44755,\n  \"greens</w>\": 10235,\n  \"greensboro</w>\": 33436,\n  \"greenville</w>\": 25156,\n  \"greenway</w>\": 35205,\n  \"greenwich</w>\": 18658,\n  \"greenwood</w>\": 25782,\n  \"greer</w>\": 34345,\n  \"greet\": 11042,\n  \"greet</w>\": 11997,\n  \"greeted</w>\": 24546,\n  \"greeting</w>\": 17754,\n  \"greetings</w>\": 11569,\n  \"greets</w>\": 25464,\n  \"greg\": 6894,\n  \"greg</w>\": 7943,\n  \"gregation</w>\": 20131,\n  \"gregg\": 39422,\n  \"gregg</w>\": 22929,\n  \"gregor\": 33856,\n  \"gregor</w>\": 16177,\n  \"gregory</w>\": 16253,\n  \"gren\": 13941,\n  \"gren</w>\": 20119,\n  \"grenade</w>\": 33679,\n  \"grenfell</w>\": 42107,\n  \"gres</w>\": 39670,\n  \"gress</w>\": 2752,\n  \"gret\": 30041,\n  \"greta</w>\": 33443,\n  \"gretchen</w>\": 45516,\n  \"grette</w>\": 38774,\n  \"grew</w>\": 10451,\n  \"grey\": 9190,\n  \"grey</w>\": 5046,\n  \"greyhound</w>\": 27363,\n  \"greyhounds</w>\": 45718,\n  \"greys</w>\": 44311,\n  \"greysanatomy</w>\": 36833,\n  \"gri\": 2169,\n  \"gri</w>\": 18484,\n  \"grid\": 29067,\n  \"grid</w>\": 9882,\n  \"gridi\": 41063,\n  \"gridiron</w>\": 47786,\n  \"grids</w>\": 46500,\n  \"grief</w>\": 21058,\n  \"grier</w>\": 22016,\n  \"griev\": 36400,\n  \"grieving</w>\": 42383,\n  \"griez\": 47962,\n  \"griezmann</w>\": 48396,\n  \"griff\": 17855,\n  \"griff</w>\": 35551,\n  \"griffi\": 28676,\n  \"griffin\": 46612,\n  \"griffin</w>\": 13161,\n  \"griffith</w>\": 24375,\n  \"griffiths</w>\": 34182,\n  \"gril\": 49091,\n  \"grill\": 44083,\n  \"grill</w>\": 9519,\n  \"grille</w>\": 34748,\n  \"grilled</w>\": 10691,\n  \"grilling</w>\": 28324,\n  \"grills</w>\": 39464,\n  \"grim\": 20383,\n  \"grim</w>\": 23635,\n  \"grime</w>\": 37101,\n  \"grimes</w>\": 25057,\n  \"grimm</w>\": 27865,\n  \"grims\": 34861,\n  \"grimsby</w>\": 41513,\n  \"grin\": 11033,\n  \"grin</w>\": 28697,\n  \"grinch</w>\": 40527,\n  \"grind\": 25730,\n  \"grind</w>\": 11810,\n  \"grinder</w>\": 31733,\n  \"grinding</w>\": 21541,\n  \"gring</w>\": 40135,\n  \"grip</w>\": 15521,\n  \"gripping</w>\": 34567,\n  \"grips</w>\": 27819,\n  \"gris</w>\": 29150,\n  \"grit\": 22037,\n  \"grit</w>\": 22087,\n  \"grits</w>\": 44307,\n  \"gritty</w>\": 33704,\n  \"grizz\": 14877,\n  \"grizz</w>\": 44088,\n  \"grizzlies</w>\": 25594,\n  \"grizzly</w>\": 29676,\n  \"grl</w>\": 48005,\n  \"gro\": 1464,\n  \"gro</w>\": 12691,\n  \"grocer\": 11633,\n  \"groceries</w>\": 32409,\n  \"grocery</w>\": 13826,\n  \"grom</w>\": 45284,\n  \"gron\": 22345,\n  \"groningen</w>\": 45639,\n  \"groo\": 9015,\n  \"groom\": 39883,\n  \"groom</w>\": 22813,\n  \"grooming</w>\": 25575,\n  \"groot</w>\": 37708,\n  \"groove\": 39484,\n  \"groove</w>\": 17680,\n  \"grooves</w>\": 43954,\n  \"groovy</w>\": 30143,\n  \"gros\": 26834,\n  \"gros</w>\": 32639,\n  \"gross\": 31080,\n  \"gross</w>\": 11541,\n  \"grosven\": 46911,\n  \"grote\": 47207,\n  \"grotto</w>\": 45260,\n  \"grou\": 1582,\n  \"groun\": 45110,\n  \"ground\": 9558,\n  \"ground</w>\": 2461,\n  \"groundbreaking</w>\": 21006,\n  \"grounded</w>\": 27799,\n  \"grounds</w>\": 8454,\n  \"groundwater</w>\": 39457,\n  \"group\": 19045,\n  \"group</w>\": 1771,\n  \"groupe</w>\": 47654,\n  \"groups</w>\": 6776,\n  \"grouse</w>\": 36327,\n  \"grove\": 31756,\n  \"grove</w>\": 7463,\n  \"grover</w>\": 31345,\n  \"groves</w>\": 27306,\n  \"grow\": 3179,\n  \"grow</w>\": 4559,\n  \"grower</w>\": 44925,\n  \"growers</w>\": 25689,\n  \"growing\": 28429,\n  \"growing</w>\": 4425,\n  \"growingup\": 43433,\n  \"growler</w>\": 47096,\n  \"grown\": 41762,\n  \"grown</w>\": 7120,\n  \"grows</w>\": 13352,\n  \"growth\": 17925,\n  \"growth</w>\": 4026,\n  \"growthhacking</w>\": 25963,\n  \"grp</w>\": 27321,\n  \"grt</w>\": 28557,\n  \"gru\": 5957,\n  \"grub</w>\": 34019,\n  \"grue\": 42047,\n  \"gruesome</w>\": 47111,\n  \"grum\": 45454,\n  \"grump\": 49015,\n  \"grumpy</w>\": 23610,\n  \"grun\": 16203,\n  \"grunge</w>\": 33745,\n  \"gry\": 16140,\n  \"gry</w>\": 5364,\n  \"gs\": 25818,\n  \"gs</w>\": 1345,\n  \"gsa</w>\": 40433,\n  \"gsc</w>\": 47751,\n  \"gshore</w>\": 43392,\n  \"gsm</w>\": 32181,\n  \"gsp</w>\": 49173,\n  \"gst</w>\": 22239,\n  \"gt\": 16151,\n  \"gt</w>\": 4725,\n  \"gta\": 14826,\n  \"gta</w>\": 15338,\n  \"gtaonline</w>\": 27292,\n  \"gtav</w>\": 27283,\n  \"gti</w>\": 39954,\n  \"gto</w>\": 39071,\n  \"gtr</w>\": 33407,\n  \"gts</w>\": 37338,\n  \"gtx</w>\": 35230,\n  \"gu\": 700,\n  \"gu</w>\": 12916,\n  \"gua</w>\": 23751,\n  \"guacam\": 37477,\n  \"guacamole</w>\": 40115,\n  \"guad\": 22966,\n  \"guadal\": 46097,\n  \"guadalu\": 36994,\n  \"guadalupe</w>\": 38360,\n  \"guam</w>\": 37325,\n  \"guan\": 44191,\n  \"guan</w>\": 42406,\n  \"guang\": 27019,\n  \"guangzhou</w>\": 37857,\n  \"guar\": 4119,\n  \"guaran\": 9242,\n  \"guarantee</w>\": 17421,\n  \"guaranteed</w>\": 14731,\n  \"guarantees</w>\": 40154,\n  \"guard\": 30776,\n  \"guard</w>\": 4901,\n  \"guarded</w>\": 40602,\n  \"guardi\": 12008,\n  \"guardia</w>\": 43628,\n  \"guardian\": 23713,\n  \"guardian</w>\": 9498,\n  \"guardians</w>\": 21479,\n  \"guarding</w>\": 24966,\n  \"guardiola</w>\": 32100,\n  \"guards</w>\": 12810,\n  \"guatem\": 19423,\n  \"guatemala</w>\": 21670,\n  \"guay\": 48591,\n  \"guay</w>\": 24247,\n  \"gubernat\": 41400,\n  \"gubernatorial</w>\": 41618,\n  \"gucci</w>\": 16779,\n  \"gud\": 48061,\n  \"gud</w>\": 22378,\n  \"gue\": 2030,\n  \"gue</w>\": 2917,\n  \"gued</w>\": 38893,\n  \"guel\": 23146,\n  \"guelph</w>\": 27660,\n  \"guer\": 10391,\n  \"guern\": 29277,\n  \"guernsey</w>\": 33982,\n  \"guerra</w>\": 38215,\n  \"guerrero</w>\": 31967,\n  \"guerrilla</w>\": 36715,\n  \"gues\": 39971,\n  \"gues</w>\": 12601,\n  \"guess\": 35506,\n  \"guess</w>\": 3135,\n  \"guessed</w>\": 28005,\n  \"guesses</w>\": 30623,\n  \"guessing</w>\": 21891,\n  \"guest\": 27349,\n  \"guest</w>\": 3781,\n  \"guests</w>\": 6212,\n  \"guet</w>\": 36797,\n  \"guetta</w>\": 45904,\n  \"guez</w>\": 12313,\n  \"gug\": 31358,\n  \"guggen\": 35086,\n  \"guggenheim</w>\": 37135,\n  \"gui\": 2587,\n  \"gui</w>\": 25746,\n  \"guid\": 11437,\n  \"guidance</w>\": 12508,\n  \"guide\": 21845,\n  \"guide</w>\": 3555,\n  \"guided</w>\": 13194,\n  \"guidelines</w>\": 16591,\n  \"guides</w>\": 14375,\n  \"guiding</w>\": 22759,\n  \"guido</w>\": 41818,\n  \"guil\": 5008,\n  \"guild\": 19755,\n  \"guild</w>\": 16597,\n  \"guildford</w>\": 34450,\n  \"guildhall</w>\": 47224,\n  \"guillau\": 41123,\n  \"guillaume</w>\": 45394,\n  \"guiller\": 33660,\n  \"guillermo</w>\": 39524,\n  \"guilt</w>\": 26354,\n  \"guilty</w>\": 9761,\n  \"guin\": 13284,\n  \"guin</w>\": 47863,\n  \"guine\": 13759,\n  \"guinea</w>\": 18537,\n  \"guinness</w>\": 16648,\n  \"guire</w>\": 18209,\n  \"guise</w>\": 42024,\n  \"guit\": 3759,\n  \"guitar\": 21746,\n  \"guitar</w>\": 5084,\n  \"guitarist</w>\": 13035,\n  \"guitars</w>\": 15023,\n  \"guj\": 34935,\n  \"gujar\": 12698,\n  \"gujarat</w>\": 14714,\n  \"guk</w>\": 20280,\n  \"gul\": 5530,\n  \"gul</w>\": 21350,\n  \"gula</w>\": 27426,\n  \"gular</w>\": 34969,\n  \"gulf\": 22101,\n  \"gulf</w>\": 11279,\n  \"gull\": 48764,\n  \"gull</w>\": 28778,\n  \"gulls</w>\": 37501,\n  \"gully</w>\": 46112,\n  \"gum\": 22041,\n  \"gum</w>\": 11235,\n  \"gumb\": 40147,\n  \"gumbo</w>\": 47126,\n  \"gummy</w>\": 34276,\n  \"gums</w>\": 46609,\n  \"gun\": 2748,\n  \"gun</w>\": 3496,\n  \"guna</w>\": 43333,\n  \"gundam</w>\": 26087,\n  \"gundy</w>\": 21162,\n  \"gunman</w>\": 32743,\n  \"gunmen</w>\": 44738,\n  \"gunn</w>\": 27473,\n  \"gunna</w>\": 24002,\n  \"gunnar</w>\": 45301,\n  \"gunner</w>\": 35285,\n  \"gunners</w>\": 37788,\n  \"guns</w>\": 7591,\n  \"gunsense</w>\": 44781,\n  \"gunshot</w>\": 49250,\n  \"gunsn\": 49028,\n  \"gup\": 38632,\n  \"gup</w>\": 47335,\n  \"gupta</w>\": 15905,\n  \"gur\": 3218,\n  \"gur</w>\": 30224,\n  \"gura</w>\": 46836,\n  \"gurgaon</w>\": 33240,\n  \"guri</w>\": 43888,\n  \"gurl</w>\": 25445,\n  \"gurmee\": 35482,\n  \"gurmeetramrahim</w>\": 36549,\n  \"guru\": 18629,\n  \"guru</w>\": 10800,\n  \"gurudev</w>\": 48647,\n  \"gus</w>\": 8018,\n  \"gust</w>\": 24629,\n  \"gusta\": 23024,\n  \"gusta</w>\": 44196,\n  \"gustav\": 32062,\n  \"gustav</w>\": 37921,\n  \"gustave</w>\": 43170,\n  \"gustavo</w>\": 45943,\n  \"gusto</w>\": 37937,\n  \"gusts</w>\": 20896,\n  \"gusty</w>\": 27589,\n  \"gut\": 24780,\n  \"gut</w>\": 13486,\n  \"guter\": 44963,\n  \"guterres</w>\": 48738,\n  \"guth\": 31696,\n  \"guthrie</w>\": 33164,\n  \"gutier\": 32773,\n  \"gutierrez</w>\": 33739,\n  \"guts</w>\": 25983,\n  \"gutted</w>\": 26524,\n  \"gutter</w>\": 40537,\n  \"guwa\": 43063,\n  \"guwahati</w>\": 45045,\n  \"guy\": 10008,\n  \"guy</w>\": 2149,\n  \"guyana</w>\": 45215,\n  \"guyen</w>\": 28031,\n  \"guys\": 43588,\n  \"guys</w>\": 1791,\n  \"guyz</w>\": 48170,\n  \"guzman</w>\": 37960,\n  \"gv\": 15462,\n  \"gv</w>\": 17336,\n  \"gw\": 7172,\n  \"gw</w>\": 15717,\n  \"gwen\": 32165,\n  \"gwen</w>\": 24182,\n  \"gwin\": 43005,\n  \"gwy\": 32226,\n  \"gwyne\": 36923,\n  \"gx</w>\": 40227,\n  \"gy\": 2168,\n  \"gy</w>\": 1164,\n  \"gya</w>\": 43214,\n  \"gyan</w>\": 43814,\n  \"gye\": 21728,\n  \"gyllen\": 49348,\n  \"gym\": 9902,\n  \"gym</w>\": 5222,\n  \"gymna\": 13517,\n  \"gymnasium</w>\": 42847,\n  \"gymnast</w>\": 42658,\n  \"gymnastics</w>\": 20116,\n  \"gyn</w>\": 39603,\n  \"gyne\": 45836,\n  \"gyp\": 40053,\n  \"gypsy</w>\": 22354,\n  \"gypt</w>\": 41921,\n  \"gz\": 45937,\n  \"gz</w>\": 35841,\n  \"gÃ¶\": 40778,\n  \"gÃ¼\": 31907,\n  \"h\": 71,\n  \"h</w>\": 327,\n  \"ha\": 560,\n  \"ha</w>\": 1429,\n  \"haa</w>\": 26814,\n  \"haal</w>\": 35869,\n  \"haan</w>\": 36284,\n  \"haar\": 45247,\n  \"haar</w>\": 35859,\n  \"haas</w>\": 27443,\n  \"haasan</w>\": 26601,\n  \"hab\": 20573,\n  \"hab</w>\": 20002,\n  \"haban\": 46225,\n  \"haber\": 44737,\n  \"habit\": 8491,\n  \"habit</w>\": 17215,\n  \"habitat</w>\": 11747,\n  \"habitats</w>\": 35344,\n  \"habits</w>\": 14540,\n  \"habs</w>\": 27489,\n  \"hac\": 20343,\n  \"hace</w>\": 43623,\n  \"haci\": 40674,\n  \"hack\": 6610,\n  \"hack</w>\": 11182,\n  \"hackathon</w>\": 25182,\n  \"hacked</w>\": 19575,\n  \"hacker</w>\": 22376,\n  \"hackers</w>\": 21498,\n  \"hacking</w>\": 12939,\n  \"hackney\": 48811,\n  \"hackney</w>\": 24928,\n  \"hacks</w>\": 19965,\n  \"had\": 10660,\n  \"had</w>\": 1100,\n  \"hadi</w>\": 39058,\n  \"hadid</w>\": 26415,\n  \"hadith</w>\": 46907,\n  \"hadley</w>\": 44995,\n  \"hadn</w>\": 21480,\n  \"hadoop</w>\": 43868,\n  \"hae\": 30723,\n  \"hae</w>\": 27193,\n  \"hafi\": 39914,\n  \"hag\": 26855,\n  \"hag</w>\": 43207,\n  \"hagan</w>\": 47489,\n  \"hagen</w>\": 14664,\n  \"hager\": 48773,\n  \"hagg\": 26324,\n  \"hague</w>\": 28988,\n  \"hah\": 18108,\n  \"hah</w>\": 13680,\n  \"haha\": 1913,\n  \"haha</w>\": 3060,\n  \"hahah\": 27253,\n  \"hahah</w>\": 15441,\n  \"hahaha</w>\": 4722,\n  \"hahahah\": 37513,\n  \"hahahah</w>\": 20096,\n  \"hahahaha\": 8058,\n  \"hahahaha</w>\": 9501,\n  \"hahahahah</w>\": 33334,\n  \"hahahahaha</w>\": 16347,\n  \"hahahahahaha</w>\": 26487,\n  \"hahahahahahaha</w>\": 43653,\n  \"hahahahahahahaha\": 36126,\n  \"hahahha</w>\": 49205,\n  \"hahn</w>\": 35596,\n  \"hai\": 8734,\n  \"hai</w>\": 5234,\n  \"haider</w>\": 42200,\n  \"haiku</w>\": 19542,\n  \"hail\": 15272,\n  \"hail</w>\": 8634,\n  \"hailed</w>\": 44604,\n  \"hailey</w>\": 27703,\n  \"hailing</w>\": 47288,\n  \"hails</w>\": 32571,\n  \"hailstate</w>\": 35063,\n  \"hain</w>\": 23861,\n  \"hair\": 4658,\n  \"hair</w>\": 2225,\n  \"haircare</w>\": 43682,\n  \"haircut</w>\": 14711,\n  \"hairdresser</w>\": 47468,\n  \"haired</w>\": 27202,\n  \"hairs</w>\": 27951,\n  \"hairstyle</w>\": 22324,\n  \"hairstyles</w>\": 40627,\n  \"hairy</w>\": 26513,\n  \"haiti</w>\": 17368,\n  \"haitian</w>\": 37577,\n  \"haj\": 27885,\n  \"haj</w>\": 43191,\n  \"haji</w>\": 41889,\n  \"hajj</w>\": 35576,\n  \"hak\": 25142,\n  \"hak</w>\": 40671,\n  \"haka</w>\": 44011,\n  \"hake\": 41663,\n  \"hal\": 1296,\n  \"hal</w>\": 8708,\n  \"hala</w>\": 25918,\n  \"halal</w>\": 34216,\n  \"halam\": 29061,\n  \"halamadrid</w>\": 31132,\n  \"halder</w>\": 32201,\n  \"hale\": 37038,\n  \"hale</w>\": 14701,\n  \"halen</w>\": 39204,\n  \"halep</w>\": 49017,\n  \"haley\": 37330,\n  \"haley</w>\": 16839,\n  \"half\": 7453,\n  \"half</w>\": 2349,\n  \"halftime</w>\": 13742,\n  \"halfway</w>\": 16736,\n  \"hali\": 9860,\n  \"hali</w>\": 43030,\n  \"halibut</w>\": 49030,\n  \"halifax</w>\": 13411,\n  \"hall\": 6850,\n  \"hall</w>\": 2140,\n  \"halla</w>\": 29569,\n  \"halle\": 27763,\n  \"halle</w>\": 32239,\n  \"hallelujah</w>\": 36993,\n  \"halli\": 32665,\n  \"hallmark\": 31040,\n  \"hallmark</w>\": 32053,\n  \"hallmarkchannel</w>\": 36840,\n  \"hallo\": 3463,\n  \"halloffame</w>\": 48578,\n  \"halloween\": 28537,\n  \"halloween</w>\": 3739,\n  \"halls</w>\": 18052,\n  \"hallucin\": 35385,\n  \"hallway</w>\": 26845,\n  \"halo\": 33331,\n  \"halo</w>\": 11918,\n  \"halsey</w>\": 34256,\n  \"halt</w>\": 25640,\n  \"halter</w>\": 47194,\n  \"halton</w>\": 45445,\n  \"ham\": 1522,\n  \"ham</w>\": 1714,\n  \"hama</w>\": 17944,\n  \"hamas</w>\": 14818,\n  \"hamburg</w>\": 18409,\n  \"hamburger</w>\": 33928,\n  \"hamid</w>\": 32377,\n  \"hamil\": 6725,\n  \"hamill\": 45784,\n  \"hamill</w>\": 48729,\n  \"hamillhimself</w>\": 47324,\n  \"hamilton\": 22448,\n  \"hamilton</w>\": 7684,\n  \"hamlet</w>\": 27722,\n  \"hamlin</w>\": 49326,\n  \"hamm</w>\": 46110,\n  \"hammer\": 15331,\n  \"hammer</w>\": 9401,\n  \"hammered</w>\": 37251,\n  \"hammers</w>\": 35649,\n  \"hammersmith</w>\": 42127,\n  \"hammock</w>\": 33682,\n  \"hammond</w>\": 21761,\n  \"hamont</w>\": 18518,\n  \"hamp\": 6665,\n  \"hamper</w>\": 27692,\n  \"hampshire</w>\": 16006,\n  \"hampstead</w>\": 37340,\n  \"hampton\": 36582,\n  \"hampton</w>\": 12285,\n  \"hamptons</w>\": 42415,\n  \"hamr</w>\": 47979,\n  \"hamradio</w>\": 36712,\n  \"hams</w>\": 25619,\n  \"hamster</w>\": 33313,\n  \"hamstring</w>\": 39990,\n  \"hamza</w>\": 45762,\n  \"han\": 1545,\n  \"han</w>\": 3565,\n  \"hana</w>\": 16801,\n  \"hand\": 1722,\n  \"hand</w>\": 2463,\n  \"handbag</w>\": 22654,\n  \"handbags</w>\": 35667,\n  \"handball</w>\": 27988,\n  \"handbook</w>\": 25147,\n  \"handcrafted</w>\": 22185,\n  \"handed</w>\": 10881,\n  \"handedly</w>\": 48656,\n  \"handel</w>\": 40072,\n  \"handful</w>\": 23725,\n  \"handheld</w>\": 26812,\n  \"handic\": 17812,\n  \"handicap</w>\": 27063,\n  \"handicapp\": 42349,\n  \"handing</w>\": 19196,\n  \"handle\": 43681,\n  \"handle</w>\": 7245,\n  \"handled</w>\": 26824,\n  \"handler</w>\": 29097,\n  \"handles</w>\": 22124,\n  \"handling</w>\": 14071,\n  \"handmade\": 18054,\n  \"handmade</w>\": 6737,\n  \"handmadehour</w>\": 25724,\n  \"handover</w>\": 46922,\n  \"hands</w>\": 3500,\n  \"handshake</w>\": 38418,\n  \"handsome</w>\": 7438,\n  \"handwriting</w>\": 29986,\n  \"handwritten</w>\": 35192,\n  \"handy</w>\": 13479,\n  \"hane</w>\": 28411,\n  \"hang\": 3351,\n  \"hang</w>\": 5592,\n  \"hangar</w>\": 33439,\n  \"hanged</w>\": 40807,\n  \"hanger</w>\": 28905,\n  \"hangin</w>\": 22670,\n  \"hanging</w>\": 4850,\n  \"hangout</w>\": 17572,\n  \"hangover</w>\": 20755,\n  \"hangs</w>\": 21785,\n  \"hani\": 39944,\n  \"hani</w>\": 18374,\n  \"hank\": 35993,\n  \"hank</w>\": 17655,\n  \"hanks</w>\": 29943,\n  \"hanley</w>\": 47284,\n  \"hann\": 5584,\n  \"hanna</w>\": 10075,\n  \"hannah\": 18622,\n  \"hannah</w>\": 9142,\n  \"hannel</w>\": 43477,\n  \"hanni\": 19493,\n  \"hannibal</w>\": 25149,\n  \"hannity</w>\": 24569,\n  \"hannover</w>\": 39976,\n  \"hanoi</w>\": 36134,\n  \"hanover</w>\": 33246,\n  \"hans\": 35172,\n  \"hans</w>\": 16628,\n  \"hansen</w>\": 19729,\n  \"hanson</w>\": 24602,\n  \"hant\": 40641,\n  \"hanuk\": 32774,\n  \"hanukkah</w>\": 34247,\n  \"hanuman</w>\": 46975,\n  \"hao</w>\": 27184,\n  \"hap\": 44981,\n  \"hap</w>\": 47988,\n  \"happ\": 784,\n  \"happen\": 21486,\n  \"happen</w>\": 4506,\n  \"happened</w>\": 4402,\n  \"happening</w>\": 4284,\n  \"happeningnow</w>\": 43107,\n  \"happenings</w>\": 41998,\n  \"happens</w>\": 4988,\n  \"happier</w>\": 14118,\n  \"happiest</w>\": 13811,\n  \"happily</w>\": 17316,\n  \"happiness</w>\": 5096,\n  \"happy\": 2952,\n  \"happy</w>\": 900,\n  \"happybirthday\": 9651,\n  \"happybirthday</w>\": 12207,\n  \"happydays</w>\": 25106,\n  \"happye\": 33922,\n  \"happyeaster</w>\": 38745,\n  \"happyfathersday</w>\": 43534,\n  \"happyfriday</w>\": 33340,\n  \"happyhalloween</w>\": 28750,\n  \"happyholidays</w>\": 32186,\n  \"happyhour</w>\": 32036,\n  \"happymonday</w>\": 47364,\n  \"happymothersday</w>\": 42425,\n  \"happynewyear</w>\": 18655,\n  \"happythanksgiving</w>\": 40593,\n  \"happyvalentinesday</w>\": 42403,\n  \"haps</w>\": 9114,\n  \"haq</w>\": 32445,\n  \"har\": 915,\n  \"har</w>\": 5888,\n  \"hara</w>\": 10367,\n  \"haram\": 35732,\n  \"haram</w>\": 22950,\n  \"haran</w>\": 27921,\n  \"harare</w>\": 43562,\n  \"haras\": 26644,\n  \"harass\": 16481,\n  \"harassed</w>\": 43067,\n  \"harassment</w>\": 16641,\n  \"harat</w>\": 28984,\n  \"harb\": 5856,\n  \"harbaugh</w>\": 45220,\n  \"harbor\": 40686,\n  \"harbor</w>\": 10202,\n  \"harbour\": 35430,\n  \"harbour</w>\": 10011,\n  \"harcourt</w>\": 48093,\n  \"hard\": 3312,\n  \"hard</w>\": 1626,\n  \"hardcover</w>\": 31123,\n  \"harden</w>\": 27350,\n  \"harder</w>\": 12274,\n  \"hardest</w>\": 15258,\n  \"hardin</w>\": 43802,\n  \"harding</w>\": 24382,\n  \"hardly</w>\": 17363,\n  \"hardro\": 28126,\n  \"hardrock\": 48365,\n  \"hardrock</w>\": 40739,\n  \"hards</w>\": 44048,\n  \"hardship</w>\": 45085,\n  \"hardt</w>\": 17922,\n  \"hardware</w>\": 11957,\n  \"hardwell</w>\": 45572,\n  \"hardwick</w>\": 46864,\n  \"hardwood</w>\": 28167,\n  \"hardwork\": 42554,\n  \"hardwork</w>\": 27404,\n  \"hardworking</w>\": 28095,\n  \"hardworkpaysoff</w>\": 49193,\n  \"hardy\": 48179,\n  \"hardy</w>\": 14113,\n  \"hare\": 27903,\n  \"hare</w>\": 18464,\n  \"harga</w>\": 39738,\n  \"hari\": 25472,\n  \"hari</w>\": 8981,\n  \"harlan</w>\": 49133,\n  \"harle\": 29096,\n  \"harlem</w>\": 17771,\n  \"harley\": 24702,\n  \"harley</w>\": 13632,\n  \"harleydavidson</w>\": 39183,\n  \"harlow</w>\": 34113,\n  \"harm\": 16656,\n  \"harm</w>\": 14452,\n  \"harman</w>\": 42434,\n  \"harmed</w>\": 39637,\n  \"harmful</w>\": 21725,\n  \"harmless</w>\": 44369,\n  \"harmon\": 10828,\n  \"harmon</w>\": 28729,\n  \"harmony</w>\": 10785,\n  \"harms</w>\": 46703,\n  \"harne\": 43323,\n  \"harness</w>\": 23205,\n  \"harold</w>\": 16917,\n  \"harp</w>\": 27339,\n  \"harper\": 31288,\n  \"harper</w>\": 12634,\n  \"harri\": 6639,\n  \"harrier</w>\": 37372,\n  \"harriet</w>\": 27154,\n  \"harrington</w>\": 34340,\n  \"harris\": 25356,\n  \"harris</w>\": 6925,\n  \"harrisburg</w>\": 40590,\n  \"harrison\": 34389,\n  \"harrison</w>\": 10540,\n  \"harro\": 18939,\n  \"harrogate</w>\": 30842,\n  \"harrow</w>\": 38807,\n  \"harry\": 11094,\n  \"harry</w>\": 3600,\n  \"harrypotter</w>\": 23375,\n  \"harsh\": 30596,\n  \"harsh</w>\": 16944,\n  \"hart\": 9335,\n  \"hart</w>\": 7752,\n  \"hartford</w>\": 23434,\n  \"harth</w>\": 35619,\n  \"hartle\": 47482,\n  \"hartley</w>\": 31268,\n  \"hartman</w>\": 43294,\n  \"haru</w>\": 35099,\n  \"harvard\": 28118,\n  \"harvard</w>\": 12848,\n  \"harve\": 6405,\n  \"harvest\": 44495,\n  \"harvest</w>\": 8971,\n  \"harvested</w>\": 35899,\n  \"harvesting</w>\": 26674,\n  \"harvey\": 33289,\n  \"harvey</w>\": 9586,\n  \"harvick</w>\": 46983,\n  \"haryana</w>\": 27661,\n  \"has\": 13855,\n  \"has</w>\": 791,\n  \"hasan</w>\": 30049,\n  \"hasbro</w>\": 37405,\n  \"hash\": 6338,\n  \"hash</w>\": 19199,\n  \"hashi</w>\": 41831,\n  \"hashmi</w>\": 35852,\n  \"hashtag\": 34015,\n  \"hashtag</w>\": 9238,\n  \"hashtags</w>\": 23514,\n  \"haskell</w>\": 48550,\n  \"hasn</w>\": 9143,\n  \"hass\": 9298,\n  \"hassan</w>\": 15829,\n  \"hassee</w>\": 37117,\n  \"hassel\": 32204,\n  \"hassle</w>\": 35762,\n  \"hast\": 18146,\n  \"hasta</w>\": 36623,\n  \"hastings</w>\": 22035,\n  \"hat\": 3447,\n  \"hat</w>\": 3801,\n  \"hatch\": 24202,\n  \"hatch</w>\": 17809,\n  \"hatchback</w>\": 42348,\n  \"hatched</w>\": 42158,\n  \"hate\": 23546,\n  \"hate</w>\": 3753,\n  \"hated</w>\": 21298,\n  \"hateful</w>\": 36418,\n  \"hater</w>\": 36917,\n  \"haters</w>\": 14027,\n  \"hates</w>\": 14957,\n  \"hatfield</w>\": 38448,\n  \"hath\": 27894,\n  \"hath</w>\": 34416,\n  \"hathaway</w>\": 31801,\n  \"hati</w>\": 26045,\n  \"hating</w>\": 25668,\n  \"hatred</w>\": 19046,\n  \"hats</w>\": 9812,\n  \"hatt\": 8747,\n  \"hatton</w>\": 44861,\n  \"hau\": 5152,\n  \"hauer</w>\": 48751,\n  \"haul\": 23743,\n  \"haul</w>\": 12332,\n  \"hauled</w>\": 46620,\n  \"hauling</w>\": 43132,\n  \"haun\": 9676,\n  \"haunt</w>\": 31039,\n  \"haunted</w>\": 14944,\n  \"haunting</w>\": 24034,\n  \"haunts</w>\": 48035,\n  \"haus\": 41755,\n  \"haus</w>\": 16478,\n  \"hausen</w>\": 33338,\n  \"hauser</w>\": 46586,\n  \"haute</w>\": 28854,\n  \"hav\": 13443,\n  \"hav</w>\": 20447,\n  \"havan</w>\": 36304,\n  \"havana</w>\": 23357,\n  \"havas\": 46261,\n  \"have\": 18053,\n  \"have</w>\": 720,\n  \"haven\": 33074,\n  \"haven</w>\": 3871,\n  \"havent</w>\": 29130,\n  \"haver\": 27876,\n  \"haves</w>\": 49088,\n  \"havin</w>\": 31937,\n  \"having</w>\": 1977,\n  \"havoc</w>\": 24447,\n  \"haw\": 2788,\n  \"haw</w>\": 26954,\n  \"hawa\": 6067,\n  \"hawa</w>\": 46278,\n  \"hawai\": 15800,\n  \"hawaii\": 32413,\n  \"hawaii</w>\": 8265,\n  \"hawaiian</w>\": 17734,\n  \"hawan</w>\": 27765,\n  \"hawk\": 14704,\n  \"hawk</w>\": 8218,\n  \"hawke</w>\": 38178,\n  \"hawker</w>\": 39051,\n  \"hawkeye</w>\": 38666,\n  \"hawkeyes</w>\": 34266,\n  \"hawking</w>\": 33437,\n  \"hawkins</w>\": 19740,\n  \"hawks\": 44806,\n  \"hawks</w>\": 5841,\n  \"hawthorn</w>\": 45372,\n  \"hawthorne</w>\": 36730,\n  \"hay\": 4871,\n  \"hay</w>\": 11367,\n  \"haya</w>\": 41325,\n  \"hayat</w>\": 49360,\n  \"hayden</w>\": 19806,\n  \"haydn</w>\": 48207,\n  \"haye\": 36583,\n  \"hayes</w>\": 13555,\n  \"hayley\": 39986,\n  \"hayley</w>\": 22204,\n  \"haynes</w>\": 30496,\n  \"hays</w>\": 41524,\n  \"hayward</w>\": 29400,\n  \"haz\": 5040,\n  \"haz</w>\": 39921,\n  \"hazard\": 26174,\n  \"hazard</w>\": 15178,\n  \"hazardous</w>\": 27102,\n  \"hazards</w>\": 30639,\n  \"haze</w>\": 22785,\n  \"hazel\": 19838,\n  \"hazel</w>\": 21882,\n  \"hazelnut</w>\": 35816,\n  \"hazi</w>\": 22740,\n  \"hazmat</w>\": 48887,\n  \"hazrat</w>\": 45775,\n  \"hazy</w>\": 32655,\n  \"hb\": 6854,\n  \"hb</w>\": 12576,\n  \"hbcu</w>\": 40008,\n  \"hbd\": 25277,\n  \"hbd</w>\": 13594,\n  \"hbo</w>\": 15252,\n  \"hc\": 15831,\n  \"hc</w>\": 7821,\n  \"hcs</w>\": 46850,\n  \"hd\": 11601,\n  \"hd</w>\": 4414,\n  \"hdd</w>\": 40508,\n  \"hdmi</w>\": 33302,\n  \"hdr</w>\": 28065,\n  \"he\": 651,\n  \"he</w>\": 797,\n  \"hea\": 27150,\n  \"hea</w>\": 32790,\n  \"head\": 1603,\n  \"head</w>\": 1375,\n  \"headache</w>\": 23849,\n  \"headaches</w>\": 38025,\n  \"headband</w>\": 28556,\n  \"headed</w>\": 6153,\n  \"header</w>\": 11077,\n  \"heading</w>\": 4409,\n  \"headless</w>\": 45219,\n  \"headlights</w>\": 42422,\n  \"headline</w>\": 10891,\n  \"headliner</w>\": 38880,\n  \"headlines</w>\": 14706,\n  \"headlining</w>\": 26971,\n  \"headphone</w>\": 37524,\n  \"headphones</w>\": 14906,\n  \"headquarters</w>\": 13041,\n  \"heads</w>\": 5174,\n  \"headset</w>\": 23883,\n  \"headshot</w>\": 34890,\n  \"heal\": 1231,\n  \"heal</w>\": 13833,\n  \"healed</w>\": 31456,\n  \"healer</w>\": 38328,\n  \"healey</w>\": 38985,\n  \"healing</w>\": 9295,\n  \"heals</w>\": 32384,\n  \"health\": 2145,\n  \"health</w>\": 1728,\n  \"healthand\": 43704,\n  \"healthcare\": 42500,\n  \"healthcare</w>\": 6023,\n  \"healthier</w>\": 18242,\n  \"healthtech</w>\": 42694,\n  \"healthy\": 10330,\n  \"healthy</w>\": 3782,\n  \"healthye\": 31532,\n  \"healthyeating</w>\": 33761,\n  \"healthyfood</w>\": 39996,\n  \"healthylifestyle</w>\": 46254,\n  \"healthyliving</w>\": 27293,\n  \"healy</w>\": 34299,\n  \"heap</w>\": 34781,\n  \"heaps</w>\": 44446,\n  \"hear\": 2749,\n  \"hear</w>\": 2584,\n  \"heard</w>\": 4063,\n  \"hearing\": 46353,\n  \"hearing</w>\": 5541,\n  \"hearings</w>\": 33175,\n  \"hearn</w>\": 36613,\n  \"hears</w>\": 25395,\n  \"heart\": 4975,\n  \"heart</w>\": 1936,\n  \"heartbeat</w>\": 29154,\n  \"heartbreak</w>\": 29281,\n  \"heartbreaking</w>\": 21322,\n  \"heartbroken</w>\": 35383,\n  \"hearted</w>\": 21679,\n  \"heartfelt</w>\": 22904,\n  \"hearth\": 31563,\n  \"hearthstone</w>\": 34054,\n  \"hearti\": 29345,\n  \"hearties</w>\": 44572,\n  \"heartland</w>\": 31923,\n  \"heartless</w>\": 47022,\n  \"heartnews</w>\": 40426,\n  \"hearts</w>\": 5516,\n  \"heartw\": 30002,\n  \"heartwarming</w>\": 34080,\n  \"hearty</w>\": 26994,\n  \"heat\": 12175,\n  \"heat</w>\": 4403,\n  \"heated</w>\": 17057,\n  \"heater</w>\": 23246,\n  \"heath\": 12794,\n  \"heath</w>\": 11719,\n  \"heather\": 20230,\n  \"heather</w>\": 12470,\n  \"heathrow</w>\": 24171,\n  \"heating</w>\": 12478,\n  \"heaton</w>\": 34557,\n  \"heats</w>\": 36106,\n  \"heatwave</w>\": 25726,\n  \"heav\": 2409,\n  \"heaven\": 15520,\n  \"heaven</w>\": 5545,\n  \"heavenly</w>\": 19117,\n  \"heavens</w>\": 26026,\n  \"heavier</w>\": 31253,\n  \"heaviest</w>\": 33268,\n  \"heavily</w>\": 14123,\n  \"heavy\": 12048,\n  \"heavy</w>\": 4200,\n  \"heavymetal</w>\": 39804,\n  \"heavyweight</w>\": 17448,\n  \"heb\": 24700,\n  \"heb</w>\": 34515,\n  \"hebdo</w>\": 41817,\n  \"hebrew</w>\": 27298,\n  \"hebrides</w>\": 45121,\n  \"hebron</w>\": 45725,\n  \"hec\": 18932,\n  \"heck\": 22985,\n  \"heck</w>\": 14427,\n  \"hectares</w>\": 44162,\n  \"hectic</w>\": 37245,\n  \"hector</w>\": 25852,\n  \"hed\": 18271,\n  \"hedge\": 16229,\n  \"hedge</w>\": 20294,\n  \"hedgehog</w>\": 21940,\n  \"hedges</w>\": 41345,\n  \"hee\": 18364,\n  \"hee</w>\": 15773,\n  \"heechul</w>\": 42487,\n  \"heed</w>\": 15118,\n  \"heel\": 33646,\n  \"heel</w>\": 16861,\n  \"heels</w>\": 10909,\n  \"heem</w>\": 30061,\n  \"heer</w>\": 40473,\n  \"hef\": 29473,\n  \"heff\": 48756,\n  \"hefty</w>\": 48584,\n  \"heg\": 41995,\n  \"heh</w>\": 25834,\n  \"hehe\": 48723,\n  \"hehe</w>\": 10658,\n  \"hehehe</w>\": 24138,\n  \"hei\": 6101,\n  \"hei</w>\": 29051,\n  \"heidel\": 42927,\n  \"heidelberg</w>\": 48445,\n  \"heidi\": 44860,\n  \"heidi</w>\": 23867,\n  \"heifer</w>\": 48219,\n  \"heigh\": 43883,\n  \"height</w>\": 10788,\n  \"heights</w>\": 8418,\n  \"heim\": 10931,\n  \"heim</w>\": 9768,\n  \"heimer</w>\": 39517,\n  \"hein\": 15487,\n  \"hein</w>\": 43206,\n  \"heine\": 28742,\n  \"heineken</w>\": 36874,\n  \"heinrich</w>\": 47877,\n  \"heinz</w>\": 32359,\n  \"heir\": 27083,\n  \"heir</w>\": 34007,\n  \"heirloom</w>\": 34232,\n  \"heirs</w>\": 43834,\n  \"heis\": 21849,\n  \"heisman</w>\": 34537,\n  \"heist</w>\": 31035,\n  \"heit</w>\": 37255,\n  \"hel\": 919,\n  \"hel</w>\": 11579,\n  \"hela</w>\": 48212,\n  \"held</w>\": 4042,\n  \"hele</w>\": 46129,\n  \"helen\": 17576,\n  \"helen</w>\": 11291,\n  \"helena</w>\": 23109,\n  \"helene</w>\": 41591,\n  \"helens</w>\": 45940,\n  \"heli\": 33874,\n  \"heli</w>\": 40183,\n  \"helicop\": 10035,\n  \"helicopter</w>\": 11956,\n  \"helicopters</w>\": 26922,\n  \"helium</w>\": 46505,\n  \"helix</w>\": 35247,\n  \"hell\": 8410,\n  \"hell</w>\": 4141,\n  \"hella</w>\": 19800,\n  \"hellboy</w>\": 48428,\n  \"helle\": 48600,\n  \"helle</w>\": 46968,\n  \"hellenic</w>\": 42544,\n  \"heller</w>\": 44464,\n  \"hello\": 12887,\n  \"hello</w>\": 3306,\n  \"hells</w>\": 47989,\n  \"helly</w>\": 48690,\n  \"helm\": 47970,\n  \"helm</w>\": 19520,\n  \"helmet</w>\": 11122,\n  \"helmets</w>\": 21843,\n  \"help\": 8641,\n  \"help</w>\": 1318,\n  \"helped</w>\": 4845,\n  \"helper</w>\": 29321,\n  \"helpers</w>\": 36316,\n  \"helpful</w>\": 12695,\n  \"helping</w>\": 3875,\n  \"helpless</w>\": 47638,\n  \"helpline</w>\": 43101,\n  \"helps</w>\": 5144,\n  \"helsin\": 17842,\n  \"helsinki</w>\": 19626,\n  \"hem\": 20270,\n  \"hem</w>\": 11148,\n  \"hemi\": 14256,\n  \"hemi</w>\": 46856,\n  \"heming\": 30819,\n  \"hemingway</w>\": 33470,\n  \"hemisphere</w>\": 32767,\n  \"hemmings</w>\": 34882,\n  \"hemo\": 43788,\n  \"hemp\": 28225,\n  \"hemp</w>\": 18467,\n  \"hems\": 32451,\n  \"hemsworth</w>\": 39428,\n  \"hen\": 2385,\n  \"hen</w>\": 8047,\n  \"hence</w>\": 23640,\n  \"hend\": 11560,\n  \"hender\": 49248,\n  \"henderson</w>\": 14348,\n  \"hendrick</w>\": 45296,\n  \"hendricks</w>\": 37588,\n  \"hendrix</w>\": 23605,\n  \"henge</w>\": 33104,\n  \"henley</w>\": 27853,\n  \"henna</w>\": 39455,\n  \"hennessy</w>\": 42667,\n  \"henri\": 19431,\n  \"henri</w>\": 21610,\n  \"henrik</w>\": 35772,\n  \"henry\": 16018,\n  \"henry</w>\": 5508,\n  \"hens</w>\": 31742,\n  \"henson</w>\": 32935,\n  \"hep\": 17724,\n  \"hep</w>\": 48791,\n  \"hepat\": 23767,\n  \"hepatitis</w>\": 32169,\n  \"hepburn</w>\": 26348,\n  \"her\": 1223,\n  \"her</w>\": 899,\n  \"hera</w>\": 38724,\n  \"heral\": 37809,\n  \"herald\": 27625,\n  \"herald</w>\": 12851,\n  \"herb\": 26116,\n  \"herb</w>\": 15302,\n  \"herbal</w>\": 21868,\n  \"herbali\": 44087,\n  \"herbalife</w>\": 48364,\n  \"herbert</w>\": 19935,\n  \"herbs</w>\": 17320,\n  \"hercules</w>\": 26539,\n  \"herd\": 36142,\n  \"herd</w>\": 18589,\n  \"here\": 9134,\n  \"here</w>\": 763,\n  \"hered\": 47976,\n  \"hereford</w>\": 35543,\n  \"heres</w>\": 13566,\n  \"hereto\": 47673,\n  \"heri</w>\": 31392,\n  \"herit\": 4720,\n  \"heritag\": 38273,\n  \"heritage\": 20962,\n  \"heritage</w>\": 5455,\n  \"herman\": 31890,\n  \"herman</w>\": 21568,\n  \"hermann</w>\": 40942,\n  \"hermes</w>\": 34563,\n  \"hermi\": 35265,\n  \"hermione</w>\": 45502,\n  \"hermit</w>\": 43953,\n  \"hermitage</w>\": 47706,\n  \"hermo\": 40967,\n  \"hermosa</w>\": 42531,\n  \"hern\": 30571,\n  \"hern</w>\": 43576,\n  \"hernandez</w>\": 17707,\n  \"hero\": 7338,\n  \"hero</w>\": 3756,\n  \"heroes\": 38010,\n  \"heroes</w>\": 5506,\n  \"heroic</w>\": 24255,\n  \"heroin</w>\": 23841,\n  \"heroine</w>\": 27420,\n  \"heron</w>\": 22593,\n  \"heros</w>\": 37642,\n  \"herr</w>\": 38537,\n  \"herrera</w>\": 27755,\n  \"herring</w>\": 30211,\n  \"hers</w>\": 25359,\n  \"herself</w>\": 9207,\n  \"hersh\": 20379,\n  \"hershey</w>\": 29734,\n  \"hert\": 26744,\n  \"hertfordshire</w>\": 41070,\n  \"herts</w>\": 35784,\n  \"herty</w>\": 23454,\n  \"hertz</w>\": 49383,\n  \"hes\": 30553,\n  \"hes</w>\": 12784,\n  \"hesit\": 23933,\n  \"hesitate</w>\": 34967,\n  \"hess</w>\": 41888,\n  \"hester</w>\": 31105,\n  \"het\": 37527,\n  \"het</w>\": 19678,\n  \"hetero\": 26405,\n  \"heu\": 20105,\n  \"heughan</w>\": 32298,\n  \"hew\": 48141,\n  \"hew</w>\": 43051,\n  \"hewitt</w>\": 28871,\n  \"hex\": 16255,\n  \"hex</w>\": 31241,\n  \"hey\": 10759,\n  \"hey</w>\": 2189,\n  \"hez\": 34591,\n  \"hezbollah</w>\": 37636,\n  \"hf\": 26606,\n  \"hf</w>\": 20603,\n  \"hfx\": 47297,\n  \"hg\": 23986,\n  \"hg</w>\": 26237,\n  \"hgtv</w>\": 47657,\n  \"hh\": 3280,\n  \"hh</w>\": 5180,\n  \"hhh</w>\": 8281,\n  \"hhhh\": 19391,\n  \"hhhh</w>\": 13121,\n  \"hhhhh</w>\": 24246,\n  \"hhhhhh</w>\": 37278,\n  \"hhs</w>\": 27006,\n  \"hi\": 677,\n  \"hi</w>\": 1883,\n  \"hia</w>\": 20672,\n  \"hiatus</w>\": 27823,\n  \"hib\": 15922,\n  \"hiber\": 38799,\n  \"hibis\": 36226,\n  \"hibiscus</w>\": 36460,\n  \"hibition</w>\": 24658,\n  \"hibs</w>\": 42814,\n  \"hic\": 3549,\n  \"hic</w>\": 38079,\n  \"hick\": 14813,\n  \"hickman</w>\": 49148,\n  \"hickory</w>\": 29905,\n  \"hicks</w>\": 23429,\n  \"hid\": 15552,\n  \"hid</w>\": 14451,\n  \"hidalgo</w>\": 47464,\n  \"hidden\": 28305,\n  \"hidden</w>\": 7029,\n  \"hiddleston</w>\": 31444,\n  \"hide\": 17725,\n  \"hide</w>\": 9379,\n  \"hideous</w>\": 46588,\n  \"hides</w>\": 30800,\n  \"hiding</w>\": 11371,\n  \"hie</w>\": 15763,\n  \"hier\": 23433,\n  \"hier</w>\": 29913,\n  \"hierarchy</w>\": 44442,\n  \"hifi</w>\": 38168,\n  \"hig\": 38108,\n  \"higgins</w>\": 21783,\n  \"high\": 1487,\n  \"high</w>\": 1400,\n  \"higher</w>\": 5321,\n  \"highered</w>\": 27072,\n  \"highest</w>\": 5317,\n  \"highland\": 32244,\n  \"highland</w>\": 16062,\n  \"highlander</w>\": 46251,\n  \"highlanders</w>\": 40445,\n  \"highlands</w>\": 16883,\n  \"highlight</w>\": 8264,\n  \"highlighted</w>\": 22252,\n  \"highlighter</w>\": 45460,\n  \"highlighting</w>\": 17344,\n  \"highlights</w>\": 6173,\n  \"highly</w>\": 5302,\n  \"highness</w>\": 38694,\n  \"highs</w>\": 15144,\n  \"highschool</w>\": 23102,\n  \"highway\": 45344,\n  \"highway</w>\": 7620,\n  \"highways</w>\": 28007,\n  \"higu\": 39115,\n  \"hihi</w>\": 36240,\n  \"hii</w>\": 42315,\n  \"hijab</w>\": 31407,\n  \"hika</w>\": 41356,\n  \"hikari</w>\": 44624,\n  \"hike</w>\": 9404,\n  \"hiked</w>\": 36471,\n  \"hiker</w>\": 40947,\n  \"hikers</w>\": 46090,\n  \"hikes</w>\": 27076,\n  \"hiking</w>\": 9118,\n  \"hiko</w>\": 48708,\n  \"hil\": 3508,\n  \"hil</w>\": 17927,\n  \"hila</w>\": 38837,\n  \"hilar\": 37337,\n  \"hilari\": 7784,\n  \"hilarious</w>\": 8358,\n  \"hilariously</w>\": 43476,\n  \"hilary\": 45898,\n  \"hilary</w>\": 25415,\n  \"hilde\": 45382,\n  \"hill\": 3671,\n  \"hill</w>\": 2682,\n  \"hillary\": 13257,\n  \"hillary</w>\": 7074,\n  \"hillaryclinton</w>\": 15357,\n  \"hilli\": 32513,\n  \"hills\": 24178,\n  \"hills</w>\": 5289,\n  \"hillsborough</w>\": 32157,\n  \"hillside</w>\": 37194,\n  \"hilltop</w>\": 45858,\n  \"hilly</w>\": 32483,\n  \"hilton\": 33621,\n  \"hilton</w>\": 14012,\n  \"him\": 4128,\n  \"him</w>\": 1269,\n  \"himach\": 29132,\n  \"himachal</w>\": 35461,\n  \"himalay\": 17552,\n  \"himalayan</w>\": 30318,\n  \"himalayas</w>\": 32872,\n  \"hime</w>\": 45892,\n  \"himself</w>\": 4530,\n  \"himss</w>\": 41730,\n  \"hin\": 1676,\n  \"hin</w>\": 37930,\n  \"hina</w>\": 40571,\n  \"hinakhan</w>\": 45518,\n  \"hinch\": 49320,\n  \"hind\": 34460,\n  \"hind</w>\": 23293,\n  \"hindi</w>\": 14967,\n  \"hinds</w>\": 47859,\n  \"hindu\": 17587,\n  \"hindu</w>\": 12053,\n  \"hinduism</w>\": 40592,\n  \"hindus</w>\": 25701,\n  \"hindustan</w>\": 46553,\n  \"hines</w>\": 37462,\n  \"hing\": 37968,\n  \"hini</w>\": 33564,\n  \"hino</w>\": 45343,\n  \"hint</w>\": 11868,\n  \"hinton</w>\": 47165,\n  \"hints</w>\": 20594,\n  \"hio</w>\": 32897,\n  \"hip\": 11725,\n  \"hip</w>\": 6584,\n  \"hipho\": 8819,\n  \"hiphop\": 26598,\n  \"hiphop</w>\": 10914,\n  \"hipp\": 13607,\n  \"hippie</w>\": 28637,\n  \"hippo\": 28398,\n  \"hippo</w>\": 36729,\n  \"hips</w>\": 30191,\n  \"hipstamatic</w>\": 31002,\n  \"hipster</w>\": 19987,\n  \"hipsters</w>\": 48265,\n  \"hir\": 4959,\n  \"hir</w>\": 14728,\n  \"hira</w>\": 42577,\n  \"hire\": 32356,\n  \"hire</w>\": 8243,\n  \"hired</w>\": 17602,\n  \"hires</w>\": 24133,\n  \"hiring</w>\": 7835,\n  \"hiro\": 17396,\n  \"hiro</w>\": 20588,\n  \"hiroshima</w>\": 33867,\n  \"hirsch</w>\": 46967,\n  \"his\": 15211,\n  \"his</w>\": 787,\n  \"hism</w>\": 23502,\n  \"hispan\": 16843,\n  \"hispanic</w>\": 22676,\n  \"hist\": 21710,\n  \"hist</w>\": 13779,\n  \"histo\": 33479,\n  \"histor\": 2993,\n  \"historia</w>\": 46010,\n  \"historian</w>\": 20697,\n  \"historians</w>\": 35200,\n  \"historic\": 30195,\n  \"historic</w>\": 5726,\n  \"historical\": 34154,\n  \"historical</w>\": 8039,\n  \"historically</w>\": 30445,\n  \"histories</w>\": 34736,\n  \"history\": 11142,\n  \"history</w>\": 1695,\n  \"historymonth</w>\": 19356,\n  \"historyof\": 35905,\n  \"hit\": 5453,\n  \"hit</w>\": 2341,\n  \"hitch\": 22937,\n  \"hitch</w>\": 36203,\n  \"hitler</w>\": 16518,\n  \"hitman</w>\": 33290,\n  \"hits</w>\": 4712,\n  \"hitter</w>\": 23538,\n  \"hitters</w>\": 39724,\n  \"hitting</w>\": 7957,\n  \"hiv\": 44410,\n  \"hiv</w>\": 11018,\n  \"hive\": 38162,\n  \"hive</w>\": 18521,\n  \"hiya</w>\": 42393,\n  \"hk\": 22648,\n  \"hk</w>\": 12307,\n  \"hl\": 8297,\n  \"hl</w>\": 5956,\n  \"hle</w>\": 32389,\n  \"hler</w>\": 35418,\n  \"hm\": 17913,\n  \"hm</w>\": 7631,\n  \"hmm</w>\": 13725,\n  \"hmmm</w>\": 17032,\n  \"hmmmm</w>\": 34598,\n  \"hms</w>\": 14625,\n  \"hmu</w>\": 21630,\n  \"hmv</w>\": 49288,\n  \"hn\": 22905,\n  \"hn</w>\": 7478,\n  \"hns</w>\": 48412,\n  \"ho\": 606,\n  \"ho</w>\": 2971,\n  \"hoa</w>\": 37517,\n  \"hoar\": 31628,\n  \"hoax</w>\": 33438,\n  \"hob\": 18212,\n  \"hobart</w>\": 31646,\n  \"hobb\": 16175,\n  \"hobbies</w>\": 36370,\n  \"hobbit</w>\": 23207,\n  \"hobbs</w>\": 34343,\n  \"hobby\": 41120,\n  \"hobby</w>\": 17557,\n  \"hobo\": 34613,\n  \"hobo</w>\": 41334,\n  \"hoboken</w>\": 41568,\n  \"hoc</w>\": 35880,\n  \"hoch\": 43772,\n  \"hock\": 34914,\n  \"hock</w>\": 46574,\n  \"hockey\": 16499,\n  \"hockey</w>\": 4111,\n  \"hoco</w>\": 34771,\n  \"hod\": 31062,\n  \"hodg\": 23660,\n  \"hodge</w>\": 40585,\n  \"hodges</w>\": 35061,\n  \"hodgson</w>\": 37044,\n  \"hoe\": 32502,\n  \"hoe</w>\": 11262,\n  \"hoek</w>\": 40073,\n  \"hoes</w>\": 21164,\n  \"hof\": 20186,\n  \"hof</w>\": 12789,\n  \"hofer</w>\": 38654,\n  \"hoff\": 32860,\n  \"hoff</w>\": 22751,\n  \"hofficial</w>\": 41949,\n  \"hoffman</w>\": 22026,\n  \"hog\": 12075,\n  \"hog</w>\": 13255,\n  \"hogan</w>\": 19757,\n  \"hogg</w>\": 42005,\n  \"hogs</w>\": 23242,\n  \"hogwarts</w>\": 29168,\n  \"hoh</w>\": 43947,\n  \"hoi\": 39295,\n  \"hok\": 26942,\n  \"hok</w>\": 47167,\n  \"hokies</w>\": 35168,\n  \"hokkaido</w>\": 49145,\n  \"hol\": 1187,\n  \"hol</w>\": 7349,\n  \"hola</w>\": 28724,\n  \"hold\": 36496,\n  \"hold</w>\": 3254,\n  \"holden</w>\": 21869,\n  \"holder</w>\": 7862,\n  \"holders</w>\": 10074,\n  \"holding</w>\": 5050,\n  \"holdings</w>\": 24832,\n  \"holds</w>\": 7286,\n  \"hole\": 47242,\n  \"hole</w>\": 5341,\n  \"holes</w>\": 11266,\n  \"holi\": 2093,\n  \"holi</w>\": 21926,\n  \"holic</w>\": 16348,\n  \"holics</w>\": 29782,\n  \"holiday\": 13168,\n  \"holiday</w>\": 2878,\n  \"holidays</w>\": 5372,\n  \"holiness</w>\": 37259,\n  \"holistic</w>\": 26300,\n  \"holl\": 27699,\n  \"holla</w>\": 26500,\n  \"holland\": 31608,\n  \"holland</w>\": 9978,\n  \"hollande</w>\": 47690,\n  \"holler</w>\": 49047,\n  \"holli\": 24019,\n  \"holliday</w>\": 41624,\n  \"hollow\": 41221,\n  \"hollow</w>\": 16691,\n  \"holloway</w>\": 29435,\n  \"holly\": 12731,\n  \"holly</w>\": 11923,\n  \"hollyo\": 41525,\n  \"hollyoaks</w>\": 43352,\n  \"hollywood\": 24655,\n  \"hollywood</w>\": 5518,\n  \"holm\": 34758,\n  \"holm</w>\": 12739,\n  \"holme</w>\": 46149,\n  \"holmes</w>\": 12756,\n  \"holo\": 10317,\n  \"holocau\": 14688,\n  \"holocaust</w>\": 16476,\n  \"hols</w>\": 33344,\n  \"holt</w>\": 18868,\n  \"holtz</w>\": 44743,\n  \"holy\": 13910,\n  \"holy</w>\": 4874,\n  \"hom\": 906,\n  \"hom</w>\": 47397,\n  \"homa</w>\": 9557,\n  \"homage</w>\": 17746,\n  \"home\": 2143,\n  \"home</w>\": 1137,\n  \"homebrew</w>\": 35046,\n  \"homec\": 33869,\n  \"homecoming</w>\": 9008,\n  \"homedecor</w>\": 15695,\n  \"homedepot</w>\": 38707,\n  \"homegrown</w>\": 32554,\n  \"homeitems</w>\": 42972,\n  \"homeland</w>\": 21633,\n  \"homeless\": 18403,\n  \"homeless</w>\": 9661,\n  \"homelessness</w>\": 19851,\n  \"homemade</w>\": 7889,\n  \"homeof\": 48856,\n  \"homeowner</w>\": 37267,\n  \"homeowners</w>\": 29882,\n  \"homepage</w>\": 29828,\n  \"homer\": 29307,\n  \"homer</w>\": 16931,\n  \"homers</w>\": 38333,\n  \"homes\": 19480,\n  \"homes</w>\": 5416,\n  \"homeschool</w>\": 40994,\n  \"homestead</w>\": 32609,\n  \"homeswee\": 46298,\n  \"hometown</w>\": 12238,\n  \"homework</w>\": 12495,\n  \"homicide</w>\": 21520,\n  \"homie</w>\": 12540,\n  \"homies</w>\": 18893,\n  \"homme</w>\": 26193,\n  \"homo\": 18129,\n  \"homo</w>\": 30504,\n  \"homophobia</w>\": 37875,\n  \"homophobic</w>\": 40975,\n  \"homosexual</w>\": 44288,\n  \"homosexuality</w>\": 46720,\n  \"homs</w>\": 45413,\n  \"hon\": 1279,\n  \"hon</w>\": 10296,\n  \"honda</w>\": 8553,\n  \"honduras</w>\": 29715,\n  \"hone</w>\": 38640,\n  \"honest\": 7814,\n  \"honest</w>\": 9602,\n  \"honestly</w>\": 9155,\n  \"honesty</w>\": 24939,\n  \"honey\": 9843,\n  \"honey</w>\": 6406,\n  \"honeycomb</w>\": 48583,\n  \"honeymoon</w>\": 22527,\n  \"hong\": 12144,\n  \"hong</w>\": 8598,\n  \"hongkong</w>\": 16659,\n  \"honi</w>\": 17918,\n  \"honolulu</w>\": 28096,\n  \"honor\": 9206,\n  \"honor</w>\": 3402,\n  \"honorable</w>\": 19498,\n  \"honorary</w>\": 15675,\n  \"honore\": 25868,\n  \"honored</w>\": 5494,\n  \"honoree</w>\": 38993,\n  \"honorees</w>\": 43012,\n  \"honoring</w>\": 10771,\n  \"honors</w>\": 10248,\n  \"honour</w>\": 8240,\n  \"honourable</w>\": 29855,\n  \"honoured</w>\": 11945,\n  \"honouring</w>\": 37754,\n  \"honours</w>\": 22558,\n  \"hoo\": 2300,\n  \"hoo</w>\": 7920,\n  \"hood\": 18681,\n  \"hood</w>\": 3222,\n  \"hooded</w>\": 33631,\n  \"hoodie</w>\": 13444,\n  \"hoodies</w>\": 25974,\n  \"hoods</w>\": 16664,\n  \"hoof</w>\": 44555,\n  \"hook\": 30488,\n  \"hook</w>\": 10395,\n  \"hookah</w>\": 34214,\n  \"hooked</w>\": 18138,\n  \"hookem</w>\": 31465,\n  \"hooker</w>\": 37891,\n  \"hooking</w>\": 35240,\n  \"hooks</w>\": 25068,\n  \"hooligans</w>\": 48176,\n  \"hoon</w>\": 21368,\n  \"hooo</w>\": 44538,\n  \"hoop\": 31516,\n  \"hoop</w>\": 19573,\n  \"hooper</w>\": 35221,\n  \"hoops</w>\": 9351,\n  \"hoor\": 22155,\n  \"hooray</w>\": 24940,\n  \"hoos</w>\": 46462,\n  \"hoosier</w>\": 48886,\n  \"hoosiers</w>\": 42780,\n  \"hoot</w>\": 29164,\n  \"hoover</w>\": 25691,\n  \"hop\": 10848,\n  \"hop</w>\": 5833,\n  \"hope\": 5263,\n  \"hope</w>\": 1683,\n  \"hoped</w>\": 30628,\n  \"hopeful</w>\": 21453,\n  \"hopefully</w>\": 7602,\n  \"hopeless</w>\": 35586,\n  \"hopes</w>\": 10018,\n  \"hoping</w>\": 7207,\n  \"hopkins</w>\": 17821,\n  \"hopp\": 48839,\n  \"hopped</w>\": 34220,\n  \"hopper</w>\": 21748,\n  \"hopping</w>\": 27606,\n  \"hoppy</w>\": 38359,\n  \"hops</w>\": 21137,\n  \"hor\": 1407,\n  \"hor</w>\": 33847,\n  \"hora</w>\": 26013,\n  \"horace</w>\": 39282,\n  \"horan</w>\": 26857,\n  \"horde</w>\": 44947,\n  \"hore</w>\": 15380,\n  \"horiz\": 8144,\n  \"horizon\": 17924,\n  \"horizon</w>\": 11920,\n  \"horizons</w>\": 29685,\n  \"horizontal</w>\": 25775,\n  \"hormon\": 27096,\n  \"hormone</w>\": 31283,\n  \"hormones</w>\": 35162,\n  \"horn\": 15771,\n  \"horn</w>\": 9607,\n  \"horne</w>\": 38143,\n  \"horned</w>\": 34526,\n  \"hornet</w>\": 28739,\n  \"hornets</w>\": 20124,\n  \"horns</w>\": 22109,\n  \"horny</w>\": 32622,\n  \"horo\": 21500,\n  \"horoscope</w>\": 38453,\n  \"horowitz</w>\": 44669,\n  \"horri\": 8656,\n  \"horrible</w>\": 13726,\n  \"horribly</w>\": 45484,\n  \"horrific</w>\": 25314,\n  \"horrifying</w>\": 38901,\n  \"horror\": 13787,\n  \"horror</w>\": 5032,\n  \"horrormovies</w>\": 46682,\n  \"horrors</w>\": 33321,\n  \"horse\": 8562,\n  \"horse</w>\": 4558,\n  \"horseback</w>\": 43673,\n  \"horseman</w>\": 48885,\n  \"horsepower</w>\": 36882,\n  \"horser\": 23096,\n  \"horseracing</w>\": 30693,\n  \"horses</w>\": 8809,\n  \"horseshoe</w>\": 29242,\n  \"horst</w>\": 37182,\n  \"hort</w>\": 19482,\n  \"horticul\": 27141,\n  \"horticulture</w>\": 39998,\n  \"horton</w>\": 25945,\n  \"hortons</w>\": 38422,\n  \"horus</w>\": 29794,\n  \"hos\": 44320,\n  \"hos</w>\": 25008,\n  \"hosa</w>\": 44618,\n  \"hose</w>\": 19662,\n  \"hoseok</w>\": 38817,\n  \"hosp\": 2847,\n  \"hosp</w>\": 37853,\n  \"hospice</w>\": 20533,\n  \"hospit\": 7180,\n  \"hospital\": 29399,\n  \"hospital</w>\": 3851,\n  \"hospitality</w>\": 11657,\n  \"hospitalized</w>\": 36915,\n  \"hospitals</w>\": 13816,\n  \"host\": 17403,\n  \"host</w>\": 3953,\n  \"hostage</w>\": 26119,\n  \"hoste\": 31700,\n  \"hosted</w>\": 6017,\n  \"hostel</w>\": 27225,\n  \"hostess</w>\": 39692,\n  \"hostile</w>\": 28074,\n  \"hosting</w>\": 4857,\n  \"hosts</w>\": 8718,\n  \"hot\": 2851,\n  \"hot</w>\": 2069,\n  \"hota</w>\": 43289,\n  \"hotdog</w>\": 43758,\n  \"hotel\": 14591,\n  \"hotel</w>\": 2738,\n  \"hotels</w>\": 8654,\n  \"hotline</w>\": 30516,\n  \"hotmail</w>\": 46427,\n  \"hotness</w>\": 39803,\n  \"hotra</w>\": 27109,\n  \"hotro\": 47823,\n  \"hotspot</w>\": 36606,\n  \"hotspur</w>\": 35176,\n  \"hotter</w>\": 23591,\n  \"hottest</w>\": 8279,\n  \"hottie</w>\": 22804,\n  \"hotties</w>\": 46027,\n  \"hou\": 1011,\n  \"hou</w>\": 10122,\n  \"hough</w>\": 44529,\n  \"houghton</w>\": 36133,\n  \"houn\": 39273,\n  \"houn</w>\": 33607,\n  \"hound\": 33996,\n  \"hound</w>\": 13561,\n  \"hounds</w>\": 21178,\n  \"hounews</w>\": 48373,\n  \"hour\": 14930,\n  \"hour</w>\": 2232,\n  \"hourly</w>\": 30918,\n  \"hours</w>\": 2382,\n  \"house\": 4107,\n  \"house</w>\": 1212,\n  \"housed</w>\": 37518,\n  \"household</w>\": 12412,\n  \"households</w>\": 27167,\n  \"housel\": 48685,\n  \"housemusic</w>\": 28468,\n  \"houseof\": 19928,\n  \"houses</w>\": 7791,\n  \"housewives</w>\": 38523,\n  \"housing\": 32924,\n  \"housing</w>\": 5734,\n  \"houston\": 16564,\n  \"houston</w>\": 5663,\n  \"hov</w>\": 40291,\n  \"hove</w>\": 29674,\n  \"hoven</w>\": 35559,\n  \"hover\": 36252,\n  \"hover</w>\": 49016,\n  \"hovering</w>\": 43437,\n  \"how\": 7470,\n  \"how</w>\": 829,\n  \"howar\": 37672,\n  \"howard\": 25447,\n  \"howard</w>\": 7632,\n  \"howdy</w>\": 42216,\n  \"howe\": 8179,\n  \"howe</w>\": 24614,\n  \"howell</w>\": 25297,\n  \"hower</w>\": 32920,\n  \"however</w>\": 8467,\n  \"howi\": 47883,\n  \"howie</w>\": 42939,\n  \"howl</w>\": 40332,\n  \"howling</w>\": 41771,\n  \"howto\": 38191,\n  \"howto</w>\": 44060,\n  \"hoy\": 39625,\n  \"hoy</w>\": 13278,\n  \"hoya</w>\": 40978,\n  \"hp\": 23753,\n  \"hp</w>\": 6371,\n  \"hpa</w>\": 30983,\n  \"hpc</w>\": 39936,\n  \"hpe</w>\": 33787,\n  \"hpv</w>\": 45765,\n  \"hq\": 33571,\n  \"hq</w>\": 4693,\n  \"hr\": 4810,\n  \"hr</w>\": 4086,\n  \"hra\": 21320,\n  \"hra</w>\": 17212,\n  \"hrc</w>\": 18139,\n  \"hrh</w>\": 29103,\n  \"hri\": 21068,\n  \"hrithik</w>\": 45371,\n  \"hrs</w>\": 7157,\n  \"hru</w>\": 24127,\n  \"hrw</w>\": 25064,\n  \"hs\": 9343,\n  \"hs</w>\": 2466,\n  \"hsbc</w>\": 31508,\n  \"hsc</w>\": 43510,\n  \"hse</w>\": 34057,\n  \"hsfb</w>\": 29539,\n  \"hsv</w>\": 47311,\n  \"ht\": 11123,\n  \"ht</w>\": 7801,\n  \"hta\": 23452,\n  \"hta</w>\": 49384,\n  \"htafc</w>\": 42821,\n  \"htc\": 48942,\n  \"htc</w>\": 17635,\n  \"html</w>\": 18231,\n  \"hts</w>\": 43710,\n  \"htt\": 10620,\n  \"http</w>\": 15066,\n  \"https</w>\": 30901,\n  \"httr</w>\": 49372,\n  \"httweets</w>\": 43198,\n  \"hu\": 845,\n  \"hu</w>\": 5949,\n  \"hua</w>\": 22138,\n  \"huan</w>\": 41405,\n  \"huang</w>\": 32013,\n  \"huar\": 46916,\n  \"huawe\": 17709,\n  \"huawei</w>\": 21128,\n  \"hub\": 18775,\n  \"hub</w>\": 7028,\n  \"hubb\": 23183,\n  \"hubbard</w>\": 33288,\n  \"hubble</w>\": 30421,\n  \"hubby</w>\": 16947,\n  \"hubert</w>\": 40699,\n  \"hubs</w>\": 29327,\n  \"huck\": 22909,\n  \"huckabee</w>\": 43666,\n  \"hud\": 7169,\n  \"hud</w>\": 28563,\n  \"hudder\": 22629,\n  \"huddersfield</w>\": 24220,\n  \"huddle</w>\": 33435,\n  \"hudson\": 25873,\n  \"hudson</w>\": 11260,\n  \"hue\": 48380,\n  \"hue</w>\": 21465,\n  \"hues</w>\": 38003,\n  \"huey</w>\": 39663,\n  \"huff\": 18746,\n  \"huff</w>\": 44999,\n  \"huffpost\": 45887,\n  \"hug\": 40790,\n  \"hug</w>\": 10359,\n  \"huge</w>\": 2699,\n  \"hugely</w>\": 24648,\n  \"hugged</w>\": 41333,\n  \"hugging</w>\": 27058,\n  \"hugh\": 8723,\n  \"hugh</w>\": 15385,\n  \"hughes</w>\": 11418,\n  \"hugo\": 43935,\n  \"hugo</w>\": 17132,\n  \"hugs</w>\": 14248,\n  \"huh</w>\": 13348,\n  \"huhu</w>\": 32134,\n  \"hui</w>\": 29978,\n  \"hul\": 7911,\n  \"hula</w>\": 40145,\n  \"hulk</w>\": 17637,\n  \"hull\": 25154,\n  \"hull</w>\": 10375,\n  \"hulu</w>\": 24666,\n  \"hum\": 5823,\n  \"hum</w>\": 16283,\n  \"human\": 3175,\n  \"human</w>\": 2751,\n  \"humane</w>\": 20220,\n  \"humanitarian</w>\": 14170,\n  \"humanities</w>\": 24949,\n  \"humanity</w>\": 9420,\n  \"humanright\": 44385,\n  \"humanrights</w>\": 14148,\n  \"humans</w>\": 8324,\n  \"humb\": 9988,\n  \"humber\": 30602,\n  \"humber</w>\": 38063,\n  \"humble\": 38703,\n  \"humble</w>\": 10889,\n  \"humbled</w>\": 19682,\n  \"humbling</w>\": 39757,\n  \"humbold\": 24739,\n  \"humboldt</w>\": 31389,\n  \"hume</w>\": 38197,\n  \"humid\": 14778,\n  \"humid</w>\": 27447,\n  \"humidi\": 47666,\n  \"humidity</w>\": 15469,\n  \"humil\": 27205,\n  \"humili\": 25332,\n  \"humility</w>\": 28535,\n  \"humming\": 26515,\n  \"hummingbird</w>\": 33072,\n  \"hummus</w>\": 31785,\n  \"humor\": 29369,\n  \"humor</w>\": 11186,\n  \"humorous</w>\": 38173,\n  \"humour</w>\": 19161,\n  \"hump\": 16673,\n  \"hump</w>\": 24529,\n  \"humpback</w>\": 47662,\n  \"humpday</w>\": 27693,\n  \"humph\": 19767,\n  \"humphrey</w>\": 31549,\n  \"hun\": 1616,\n  \"hun</w>\": 10795,\n  \"hundre\": 8505,\n  \"hundred</w>\": 11898,\n  \"hundreds</w>\": 8879,\n  \"hung</w>\": 13825,\n  \"hungar\": 19420,\n  \"hungarian</w>\": 23325,\n  \"hungary</w>\": 17232,\n  \"hunger\": 25565,\n  \"hunger</w>\": 10184,\n  \"hungergames</w>\": 47507,\n  \"hungover</w>\": 41110,\n  \"hungry\": 44845,\n  \"hungry</w>\": 8451,\n  \"hunk</w>\": 33912,\n  \"hunt\": 16498,\n  \"hunt</w>\": 5774,\n  \"hunted</w>\": 37373,\n  \"hunter\": 16531,\n  \"hunter</w>\": 6099,\n  \"hunters</w>\": 16115,\n  \"hunting\": 27830,\n  \"hunting</w>\": 7507,\n  \"huntington</w>\": 23521,\n  \"hunts</w>\": 34041,\n  \"huntsville</w>\": 34544,\n  \"hur\": 2305,\n  \"hur</w>\": 34523,\n  \"hurd</w>\": 44915,\n  \"hurdle</w>\": 27486,\n  \"hurdles</w>\": 25440,\n  \"huri</w>\": 42486,\n  \"hurley</w>\": 30166,\n  \"hurling</w>\": 24738,\n  \"huron</w>\": 36147,\n  \"hurrah</w>\": 40599,\n  \"hurric\": 6543,\n  \"hurrican\": 36105,\n  \"hurricane\": 24051,\n  \"hurricane</w>\": 8782,\n  \"hurricanes</w>\": 22357,\n  \"hurry</w>\": 10921,\n  \"hurst\": 44742,\n  \"hurst</w>\": 11760,\n  \"hurt</w>\": 7413,\n  \"hurting</w>\": 24017,\n  \"hurts</w>\": 13059,\n  \"hus\": 5111,\n  \"hus</w>\": 35853,\n  \"husband</w>\": 6179,\n  \"husbands</w>\": 33612,\n  \"hush</w>\": 28728,\n  \"husk\": 19246,\n  \"huskers</w>\": 26946,\n  \"huskies</w>\": 20988,\n  \"husky</w>\": 20421,\n  \"huss\": 13733,\n  \"hussain</w>\": 17940,\n  \"hussein</w>\": 31336,\n  \"hust\": 27279,\n  \"hustle</w>\": 15709,\n  \"huston</w>\": 46480,\n  \"hut\": 20924,\n  \"hut</w>\": 16503,\n  \"hutch\": 31018,\n  \"hutch</w>\": 33203,\n  \"hutchinson</w>\": 35721,\n  \"hutto\": 27662,\n  \"hutton</w>\": 38321,\n  \"hv\": 17209,\n  \"hv</w>\": 18593,\n  \"hvac</w>\": 27492,\n  \"hw\": 27491,\n  \"hw</w>\": 18876,\n  \"hwa</w>\": 32352,\n  \"hwan</w>\": 44390,\n  \"hwang</w>\": 46775,\n  \"hwy</w>\": 13812,\n  \"hy\": 1441,\n  \"hy</w>\": 17827,\n  \"hya</w>\": 31600,\n  \"hyacin\": 47263,\n  \"hyatt\": 44856,\n  \"hyatt</w>\": 25146,\n  \"hybri\": 9084,\n  \"hybrid</w>\": 10156,\n  \"hyd</w>\": 42382,\n  \"hyde\": 46484,\n  \"hyde</w>\": 16343,\n  \"hyder\": 13960,\n  \"hyderabad</w>\": 14801,\n  \"hydr\": 8031,\n  \"hydra\": 44414,\n  \"hydra</w>\": 40420,\n  \"hydrange\": 43298,\n  \"hydrate</w>\": 29628,\n  \"hydrated</w>\": 23300,\n  \"hydrating</w>\": 47653,\n  \"hydration</w>\": 24174,\n  \"hydrau\": 26017,\n  \"hydraulic</w>\": 26189,\n  \"hydro\": 8368,\n  \"hydro</w>\": 22595,\n  \"hydrogen</w>\": 20974,\n  \"hye\": 32724,\n  \"hye</w>\": 25792,\n  \"hygi\": 16277,\n  \"hygiene</w>\": 19591,\n  \"hymn</w>\": 41350,\n  \"hyo\": 38960,\n  \"hyo</w>\": 35078,\n  \"hyp\": 16964,\n  \"hype\": 30353,\n  \"hype</w>\": 11111,\n  \"hyped</w>\": 22507,\n  \"hyper\": 7997,\n  \"hyper</w>\": 22146,\n  \"hypertension</w>\": 40698,\n  \"hypno\": 23355,\n  \"hypnosis</w>\": 48138,\n  \"hypnoti\": 40440,\n  \"hypo\": 10252,\n  \"hypocr\": 30711,\n  \"hypocri\": 25606,\n  \"hypocrisy</w>\": 26296,\n  \"hypocrite</w>\": 44125,\n  \"hypothe\": 46966,\n  \"hypothesis</w>\": 44956,\n  \"hyster\": 24235,\n  \"hysteria</w>\": 45965,\n  \"hysterical</w>\": 48627,\n  \"hyuk</w>\": 20452,\n  \"hyun\": 11831,\n  \"hyun</w>\": 8589,\n  \"hyundai</w>\": 17094,\n  \"hyung\": 46901,\n  \"hyung</w>\": 16551,\n  \"hz</w>\": 32533,\n  \"i\": 72,\n  \"i</w>\": 328,\n  \"ia\": 12486,\n  \"ia</w>\": 1073,\n  \"iac\": 32838,\n  \"iac</w>\": 44063,\n  \"iaf</w>\": 40789,\n  \"iah</w>\": 35052,\n  \"iain</w>\": 30103,\n  \"ial\": 11530,\n  \"ial</w>\": 1974,\n  \"ials</w>\": 20940,\n  \"iam\": 3579,\n  \"iam</w>\": 11415,\n  \"iambic\": 43668,\n  \"iambicpent</w>\": 43891,\n  \"iamsrk</w>\": 15103,\n  \"ian\": 7723,\n  \"ian</w>\": 1800,\n  \"ians</w>\": 6451,\n  \"iansomerhalder</w>\": 47077,\n  \"iart\": 18413,\n  \"iartg</w>\": 18669,\n  \"ias\": 32303,\n  \"ias</w>\": 14620,\n  \"ib\": 3962,\n  \"ib</w>\": 13554,\n  \"iba</w>\": 39763,\n  \"ibadan</w>\": 44691,\n  \"iban\": 47145,\n  \"ibc</w>\": 49014,\n  \"ibd</w>\": 40732,\n  \"iber\": 23814,\n  \"ibi\": 12337,\n  \"ibis</w>\": 47048,\n  \"ibiza</w>\": 13853,\n  \"ible</w>\": 37792,\n  \"ibles</w>\": 44102,\n  \"ibm\": 23415,\n  \"ibm</w>\": 13918,\n  \"ibn</w>\": 25729,\n  \"ibooks</w>\": 46887,\n  \"ibra\": 15476,\n  \"ibrahi\": 40350,\n  \"ibrahim</w>\": 20816,\n  \"ibrox</w>\": 46883,\n  \"ibs</w>\": 41993,\n  \"ibu\": 43587,\n  \"ibu</w>\": 46117,\n  \"ic\": 535,\n  \"ic</w>\": 1029,\n  \"ica</w>\": 2576,\n  \"icago</w>\": 37492,\n  \"ical\": 6082,\n  \"ical</w>\": 1110,\n  \"ically</w>\": 3161,\n  \"icals</w>\": 13999,\n  \"ican\": 17653,\n  \"ican</w>\": 5246,\n  \"icans</w>\": 20511,\n  \"icar\": 37211,\n  \"ication</w>\": 21629,\n  \"icc</w>\": 12945,\n  \"ice\": 2739,\n  \"ice</w>\": 733,\n  \"iceberg</w>\": 33662,\n  \"icec\": 13636,\n  \"icecream</w>\": 21334,\n  \"iced</w>\": 8049,\n  \"icelan\": 34114,\n  \"iceland\": 46716,\n  \"iceland</w>\": 11935,\n  \"icelandic</w>\": 34705,\n  \"ices</w>\": 1931,\n  \"ich\": 5333,\n  \"ich</w>\": 1232,\n  \"icha\": 31453,\n  \"iche\": 28972,\n  \"iche</w>\": 21143,\n  \"ichi\": 21669,\n  \"ichi</w>\": 14647,\n  \"ichick</w>\": 45022,\n  \"ichiro</w>\": 43787,\n  \"ici\": 948,\n  \"ici</w>\": 22189,\n  \"icia</w>\": 11774,\n  \"icial\": 17543,\n  \"icial</w>\": 6397,\n  \"ician\": 40522,\n  \"ician</w>\": 5374,\n  \"icians</w>\": 6264,\n  \"iciary</w>\": 21329,\n  \"icic\": 46006,\n  \"icide</w>\": 6558,\n  \"icides</w>\": 28253,\n  \"icing</w>\": 7676,\n  \"icio</w>\": 24207,\n  \"icion\": 45905,\n  \"icious</w>\": 3325,\n  \"icist</w>\": 21165,\n  \"icists</w>\": 42171,\n  \"icity</w>\": 7243,\n  \"ick\": 1168,\n  \"ick</w>\": 1068,\n  \"icked</w>\": 39799,\n  \"icker</w>\": 40357,\n  \"ickers</w>\": 30701,\n  \"icki</w>\": 35468,\n  \"icking</w>\": 6619,\n  \"icks</w>\": 3727,\n  \"icky</w>\": 11587,\n  \"icn</w>\": 44516,\n  \"ico\": 13697,\n  \"ico</w>\": 3040,\n  \"icom\": 17693,\n  \"icom</w>\": 29796,\n  \"icon\": 13843,\n  \"icon</w>\": 5646,\n  \"iconic</w>\": 6959,\n  \"icons</w>\": 15553,\n  \"icop\": 9389,\n  \"icos</w>\": 32002,\n  \"ics</w>\": 1324,\n  \"ict</w>\": 6349,\n  \"icted</w>\": 36515,\n  \"iction</w>\": 40560,\n  \"icton</w>\": 36548,\n  \"icu\": 45118,\n  \"icu</w>\": 30443,\n  \"icular</w>\": 40660,\n  \"icus</w>\": 31459,\n  \"icy\": 28780,\n  \"icy</w>\": 3495,\n  \"icymi</w>\": 5315,\n  \"icz</w>\": 46387,\n  \"id\": 1568,\n  \"id</w>\": 1014,\n  \"ida\": 11032,\n  \"ida</w>\": 11600,\n  \"idad</w>\": 22462,\n  \"idaho\": 48817,\n  \"idaho</w>\": 15165,\n  \"idal</w>\": 39684,\n  \"idan</w>\": 17929,\n  \"idc</w>\": 22386,\n  \"ide\": 1909,\n  \"ide</w>\": 14104,\n  \"idea</w>\": 3612,\n  \"ideal</w>\": 8789,\n  \"ideally</w>\": 48247,\n  \"ideals</w>\": 45096,\n  \"ideas</w>\": 4452,\n  \"ident\": 7113,\n  \"identi\": 6009,\n  \"identical</w>\": 25587,\n  \"identification</w>\": 23337,\n  \"identified</w>\": 15217,\n  \"identifies</w>\": 35712,\n  \"identify</w>\": 10949,\n  \"identifying</w>\": 23589,\n  \"identities</w>\": 34292,\n  \"identity</w>\": 8892,\n  \"ideology</w>\": 25840,\n  \"iders</w>\": 8980,\n  \"ides</w>\": 31791,\n  \"idf</w>\": 28987,\n  \"idge</w>\": 35567,\n  \"idh</w>\": 44325,\n  \"idi\": 9611,\n  \"idi</w>\": 14264,\n  \"idio\": 15994,\n  \"idiot</w>\": 14087,\n  \"idiots</w>\": 20856,\n  \"idk</w>\": 8972,\n  \"idle</w>\": 34754,\n  \"idlib</w>\": 36199,\n  \"ido\": 6763,\n  \"ido</w>\": 29641,\n  \"idol\": 24866,\n  \"idol</w>\": 8884,\n  \"idols</w>\": 21398,\n  \"idr</w>\": 10106,\n  \"idri\": 46435,\n  \"idris</w>\": 41312,\n  \"ids</w>\": 6111,\n  \"idu</w>\": 28655,\n  \"idy\": 33058,\n  \"idyl\": 44879,\n  \"idyllic</w>\": 46632,\n  \"ie\": 6789,\n  \"ie</w>\": 1718,\n  \"iec</w>\": 44773,\n  \"ied</w>\": 10059,\n  \"ieee</w>\": 39860,\n  \"iel\": 27875,\n  \"iel</w>\": 22729,\n  \"ience</w>\": 1542,\n  \"ient</w>\": 13115,\n  \"ier\": 33173,\n  \"ier</w>\": 5912,\n  \"iers</w>\": 45060,\n  \"ies\": 27912,\n  \"ies</w>\": 963,\n  \"iest</w>\": 10818,\n  \"if\": 8063,\n  \"if</w>\": 878,\n  \"ifa</w>\": 37574,\n  \"ifc</w>\": 36524,\n  \"ife\": 41172,\n  \"ife</w>\": 19590,\n  \"iff\": 35753,\n  \"ification</w>\": 35755,\n  \"ified</w>\": 41403,\n  \"ift\": 31143,\n  \"iftar</w>\": 35153,\n  \"ifu</w>\": 41523,\n  \"ify</w>\": 32807,\n  \"ig\": 1089,\n  \"ig</w>\": 3072,\n  \"iga</w>\": 16493,\n  \"igan</w>\": 27468,\n  \"igans</w>\": 25419,\n  \"igbo</w>\": 44591,\n  \"ige</w>\": 10806,\n  \"igen</w>\": 33070,\n  \"iger\": 30758,\n  \"iger</w>\": 20685,\n  \"igers\": 40755,\n  \"igers</w>\": 48928,\n  \"iggy\": 46219,\n  \"iggy</w>\": 27604,\n  \"igh\": 2712,\n  \"igh</w>\": 5451,\n  \"ight\": 14571,\n  \"ight</w>\": 897,\n  \"ighton</w>\": 35292,\n  \"igi</w>\": 21901,\n  \"igle\": 29912,\n  \"iglesias</w>\": 39432,\n  \"ign\": 7303,\n  \"ign</w>\": 2326,\n  \"ignati\": 37573,\n  \"ignatius</w>\": 48318,\n  \"igne</w>\": 45843,\n  \"ignite</w>\": 25210,\n  \"ignition</w>\": 36115,\n  \"igno\": 15375,\n  \"ignor\": 7653,\n  \"ignorance</w>\": 22735,\n  \"ignorant</w>\": 26933,\n  \"ignore</w>\": 12304,\n  \"ignored</w>\": 20428,\n  \"ignores</w>\": 40129,\n  \"ignoring</w>\": 23969,\n  \"igor</w>\": 33024,\n  \"igs</w>\": 31344,\n  \"igu\": 21279,\n  \"ih\": 12162,\n  \"ih</w>\": 34135,\n  \"ihear\": 13043,\n  \"iheart\": 30332,\n  \"iheartawards</w>\": 18811,\n  \"iheartradio</w>\": 25934,\n  \"ihop</w>\": 45511,\n  \"ihri\": 39108,\n  \"ihrithik</w>\": 39326,\n  \"ii\": 5103,\n  \"ii</w>\": 2329,\n  \"iii\": 46236,\n  \"iii</w>\": 6572,\n  \"iiii\": 20133,\n  \"iiii</w>\": 45393,\n  \"iiot</w>\": 30704,\n  \"iit\": 39330,\n  \"iit</w>\": 33238,\n  \"ij\": 7337,\n  \"ija</w>\": 42802,\n  \"ik\": 3903,\n  \"ik</w>\": 10177,\n  \"ika</w>\": 18188,\n  \"ike\": 12329,\n  \"ike</w>\": 19696,\n  \"ikea</w>\": 20528,\n  \"iker</w>\": 38653,\n  \"ikh\": 44655,\n  \"ikh</w>\": 12758,\n  \"iklan\": 32028,\n  \"iklan</w>\": 29584,\n  \"iko\": 35659,\n  \"iko</w>\": 39272,\n  \"ikon\": 38543,\n  \"ikon</w>\": 19156,\n  \"iku</w>\": 17780,\n  \"il\": 543,\n  \"il</w>\": 958,\n  \"ila</w>\": 4344,\n  \"ilah</w>\": 32211,\n  \"ilan\": 13889,\n  \"ilan</w>\": 28076,\n  \"iland</w>\": 20957,\n  \"ilation</w>\": 16180,\n  \"ilay\": 45093,\n  \"ild\": 22278,\n  \"ild</w>\": 17164,\n  \"ile\": 18398,\n  \"ile</w>\": 989,\n  \"iled</w>\": 3358,\n  \"iler\": 22446,\n  \"iler</w>\": 3615,\n  \"ilers</w>\": 8975,\n  \"iles</w>\": 42274,\n  \"ili\": 2076,\n  \"ili</w>\": 19601,\n  \"ilia</w>\": 14855,\n  \"ilian</w>\": 10272,\n  \"iliary</w>\": 32585,\n  \"ilife</w>\": 42835,\n  \"ilike\": 44989,\n  \"ilinan</w>\": 48497,\n  \"iling</w>\": 3299,\n  \"ilio</w>\": 47256,\n  \"ilion</w>\": 12561,\n  \"ilis</w>\": 43442,\n  \"ilit\": 11178,\n  \"ilities</w>\": 5446,\n  \"ility</w>\": 1787,\n  \"ilive</w>\": 26478,\n  \"ill\": 828,\n  \"ill</w>\": 660,\n  \"illa\": 8877,\n  \"illa</w>\": 3043,\n  \"illac</w>\": 17218,\n  \"illage</w>\": 48922,\n  \"illard</w>\": 21920,\n  \"illary</w>\": 33667,\n  \"illas</w>\": 23404,\n  \"ille\": 18213,\n  \"ille</w>\": 5559,\n  \"illed</w>\": 2527,\n  \"illeg\": 35808,\n  \"illegal</w>\": 7983,\n  \"illegally</w>\": 24466,\n  \"illegals</w>\": 40490,\n  \"iller\": 23341,\n  \"iller</w>\": 2956,\n  \"illers</w>\": 30547,\n  \"illery</w>\": 14514,\n  \"illes</w>\": 20037,\n  \"illi\": 1086,\n  \"illi</w>\": 25187,\n  \"illia</w>\": 48776,\n  \"illiams</w>\": 30301,\n  \"illian\": 48775,\n  \"illian</w>\": 17355,\n  \"illic\": 37152,\n  \"illicit</w>\": 40998,\n  \"illie</w>\": 26083,\n  \"illin</w>\": 35868,\n  \"illing</w>\": 2803,\n  \"illini</w>\": 28957,\n  \"illino\": 8920,\n  \"illinois</w>\": 9414,\n  \"illion\": 35542,\n  \"illion</w>\": 2035,\n  \"illness</w>\": 11145,\n  \"illnesses</w>\": 33861,\n  \"illo\": 34153,\n  \"illo</w>\": 7588,\n  \"illon</w>\": 20516,\n  \"ills</w>\": 1900,\n  \"illu\": 3025,\n  \"illumin\": 11446,\n  \"illuminate</w>\": 43261,\n  \"illuminated</w>\": 28814,\n  \"illuminati</w>\": 34551,\n  \"illuminating</w>\": 46601,\n  \"illumination</w>\": 43680,\n  \"illus</w>\": 41386,\n  \"illusion</w>\": 20318,\n  \"illusions</w>\": 47429,\n  \"illustr\": 6268,\n  \"illustrate</w>\": 37468,\n  \"illustrated</w>\": 13151,\n  \"illustrates</w>\": 38129,\n  \"illustrating</w>\": 43322,\n  \"illustration</w>\": 6052,\n  \"illustrations</w>\": 17852,\n  \"illustrator</w>\": 16649,\n  \"illustri\": 43116,\n  \"illustrious</w>\": 44304,\n  \"illy\": 11707,\n  \"illy</w>\": 9532,\n  \"ilm</w>\": 36326,\n  \"ilo\": 4220,\n  \"ilo</w>\": 14835,\n  \"ilove\": 7183,\n  \"ilove</w>\": 32914,\n  \"iloveart</w>\": 41114,\n  \"ilovemy\": 28863,\n  \"iloveyou</w>\": 28829,\n  \"ils</w>\": 1543,\n  \"ilt</w>\": 25334,\n  \"ilton</w>\": 28494,\n  \"ilu\": 27337,\n  \"ilwx</w>\": 43777,\n  \"ily\": 4881,\n  \"ily</w>\": 1026,\n  \"ilya</w>\": 33377,\n  \"ilysm</w>\": 29228,\n  \"im\": 732,\n  \"im</w>\": 1496,\n  \"ima\": 2414,\n  \"ima</w>\": 6432,\n  \"imac</w>\": 40675,\n  \"imacele\": 47281,\n  \"imag\": 2316,\n  \"image\": 24101,\n  \"image</w>\": 2867,\n  \"imagery</w>\": 22828,\n  \"images</w>\": 4952,\n  \"imagin\": 18178,\n  \"imaginary</w>\": 30417,\n  \"imagination</w>\": 13783,\n  \"imaginative</w>\": 47233,\n  \"imagine\": 35752,\n  \"imagine</w>\": 4826,\n  \"imagined</w>\": 18478,\n  \"imagines</w>\": 47379,\n  \"imaging</w>\": 14231,\n  \"imagining</w>\": 27384,\n  \"imam\": 37552,\n  \"imam</w>\": 19024,\n  \"iman\": 45684,\n  \"iman</w>\": 16247,\n  \"imation</w>\": 44566,\n  \"imax</w>\": 32066,\n  \"imc</w>\": 45616,\n  \"imdanielpadilla</w>\": 36357,\n  \"imdb</w>\": 30407,\n  \"ime\": 44937,\n  \"ime</w>\": 31151,\n  \"imel\": 31594,\n  \"iment</w>\": 37157,\n  \"imer</w>\": 21802,\n  \"imes</w>\": 47744,\n  \"imf</w>\": 28403,\n  \"img</w>\": 24157,\n  \"imi</w>\": 23559,\n  \"imin\": 23942,\n  \"imit\": 23462,\n  \"imitation</w>\": 41630,\n  \"imma</w>\": 19487,\n  \"immac\": 25085,\n  \"immaculate</w>\": 29649,\n  \"immature</w>\": 45531,\n  \"immedi\": 7366,\n  \"immediate</w>\": 14440,\n  \"immediately</w>\": 10108,\n  \"immen\": 17278,\n  \"immense</w>\": 22722,\n  \"immensely</w>\": 35013,\n  \"immer\": 13954,\n  \"immerse</w>\": 46240,\n  \"immersion</w>\": 31861,\n  \"immersive</w>\": 27521,\n  \"immigr\": 5851,\n  \"immigrant</w>\": 16474,\n  \"immigrants</w>\": 14460,\n  \"immigration</w>\": 9588,\n  \"imminent</w>\": 27299,\n  \"immort\": 39244,\n  \"immortal</w>\": 24717,\n  \"immun\": 8961,\n  \"immune</w>\": 15606,\n  \"immuni\": 44571,\n  \"immunity</w>\": 26254,\n  \"immuno\": 24361,\n  \"immunology</w>\": 44483,\n  \"immunotherapy</w>\": 39185,\n  \"imo\": 26349,\n  \"imo</w>\": 13738,\n  \"imp\": 3335,\n  \"imp</w>\": 31037,\n  \"impac\": 7573,\n  \"impact\": 33036,\n  \"impact</w>\": 3844,\n  \"impacted</w>\": 21424,\n  \"impactful</w>\": 41631,\n  \"impacting</w>\": 29359,\n  \"impacts</w>\": 15069,\n  \"impair\": 36451,\n  \"impaired</w>\": 28028,\n  \"impairment</w>\": 44501,\n  \"impala</w>\": 36641,\n  \"impe\": 23612,\n  \"impeach\": 16874,\n  \"impeach</w>\": 43497,\n  \"impeachment</w>\": 32979,\n  \"impeachtrump</w>\": 38006,\n  \"impecc\": 34511,\n  \"impeccable</w>\": 40111,\n  \"impending</w>\": 34486,\n  \"imper\": 7727,\n  \"imperative</w>\": 39833,\n  \"imperfect</w>\": 46034,\n  \"imperi\": 30911,\n  \"imperial\": 32425,\n  \"imperial</w>\": 12361,\n  \"imperialism</w>\": 48855,\n  \"imperson\": 25551,\n  \"implant</w>\": 33106,\n  \"implants</w>\": 32202,\n  \"imple\": 7423,\n  \"implement</w>\": 17966,\n  \"implementation</w>\": 15102,\n  \"implemented</w>\": 24315,\n  \"implementing</w>\": 22862,\n  \"implic\": 15269,\n  \"implications</w>\": 19229,\n  \"implo\": 40337,\n  \"impo\": 45704,\n  \"import\": 2336,\n  \"import</w>\": 16294,\n  \"importance</w>\": 6821,\n  \"important</w>\": 2829,\n  \"importantly</w>\": 21580,\n  \"imported</w>\": 28798,\n  \"imports</w>\": 25286,\n  \"impose</w>\": 35879,\n  \"imposed</w>\": 25871,\n  \"imposing</w>\": 42289,\n  \"impossible</w>\": 9815,\n  \"impre\": 3763,\n  \"impress</w>\": 20015,\n  \"impressed</w>\": 9689,\n  \"impression</w>\": 14468,\n  \"impressionism</w>\": 36114,\n  \"impressionist</w>\": 44904,\n  \"impressions</w>\": 22276,\n  \"impressive</w>\": 6634,\n  \"imprint</w>\": 43863,\n  \"imprison\": 22141,\n  \"imprisoned</w>\": 32999,\n  \"imprisonment</w>\": 39024,\n  \"impro\": 2531,\n  \"impromp\": 28100,\n  \"impromptu</w>\": 28611,\n  \"improv</w>\": 22868,\n  \"improve</w>\": 4971,\n  \"improved</w>\": 9446,\n  \"improvement</w>\": 10790,\n  \"improvements</w>\": 16320,\n  \"improves</w>\": 18035,\n  \"improving</w>\": 10381,\n  \"improvis\": 32343,\n  \"improvised</w>\": 40886,\n  \"impulse</w>\": 29683,\n  \"impy</w>\": 42690,\n  \"imran\": 19647,\n  \"imran</w>\": 19212,\n  \"imrankhan\": 25956,\n  \"imrankhanpti</w>\": 26688,\n  \"ims</w>\": 17800,\n  \"imsa</w>\": 37262,\n  \"imv\": 35731,\n  \"imvkohli</w>\": 37136,\n  \"imwith\": 26822,\n  \"imwithher</w>\": 32651,\n  \"in\": 512,\n  \"in</w>\": 530,\n  \"ina\": 18026,\n  \"ina</w>\": 1366,\n  \"inability</w>\": 47517,\n  \"inaccurate</w>\": 49192,\n  \"inaction</w>\": 41916,\n  \"inactive</w>\": 49274,\n  \"inadequate</w>\": 43403,\n  \"inak\": 46549,\n  \"inal</w>\": 19178,\n  \"inals</w>\": 26438,\n  \"inan</w>\": 26204,\n  \"inappropriate</w>\": 26722,\n  \"inari</w>\": 48620,\n  \"inary</w>\": 11337,\n  \"inas\": 36731,\n  \"inas</w>\": 12362,\n  \"inated</w>\": 38530,\n  \"ination</w>\": 4706,\n  \"inau\": 10832,\n  \"inaugu\": 11309,\n  \"inaugur\": 11448,\n  \"inaugural</w>\": 11340,\n  \"inaugurated</w>\": 29011,\n  \"inauguration</w>\": 16805,\n  \"inbound</w>\": 24420,\n  \"inbox</w>\": 18683,\n  \"inc\": 14570,\n  \"inc</w>\": 4438,\n  \"incan\": 45964,\n  \"incar\": 18070,\n  \"incarcer\": 26334,\n  \"incarcerated</w>\": 49178,\n  \"incarceration</w>\": 39887,\n  \"incase</w>\": 30463,\n  \"ince</w>\": 44303,\n  \"incen\": 13259,\n  \"incense</w>\": 35059,\n  \"incentive</w>\": 29024,\n  \"incentives</w>\": 29813,\n  \"inception</w>\": 36653,\n  \"inch</w>\": 6523,\n  \"incheon</w>\": 30645,\n  \"inches</w>\": 10809,\n  \"inci\": 5747,\n  \"incidence</w>\": 43371,\n  \"incident</w>\": 10103,\n  \"incidents</w>\": 22120,\n  \"incindia</w>\": 26161,\n  \"inciner\": 46434,\n  \"incl\": 27857,\n  \"incl</w>\": 13338,\n  \"inclined</w>\": 45470,\n  \"inclu\": 1738,\n  \"include</w>\": 5942,\n  \"included</w>\": 7414,\n  \"includes</w>\": 6197,\n  \"including</w>\": 2814,\n  \"inclusion</w>\": 12079,\n  \"inclusive</w>\": 13393,\n  \"income</w>\": 8044,\n  \"incoming</w>\": 15416,\n  \"incomparable</w>\": 36027,\n  \"incompetent</w>\": 45069,\n  \"incomplete</w>\": 34040,\n  \"incon\": 42372,\n  \"inconvenience</w>\": 40563,\n  \"incorpor\": 19335,\n  \"incorporate</w>\": 34168,\n  \"incorporated</w>\": 29494,\n  \"incorporating</w>\": 40303,\n  \"incorrect</w>\": 31872,\n  \"incre\": 1870,\n  \"increase</w>\": 5230,\n  \"increased</w>\": 9156,\n  \"increases</w>\": 13797,\n  \"increasing</w>\": 10270,\n  \"increasingly</w>\": 16106,\n  \"incredi\": 2883,\n  \"incredible\": 22128,\n  \"incredible</w>\": 3457,\n  \"incredibleindia</w>\": 24680,\n  \"incredibles</w>\": 48641,\n  \"incredibly</w>\": 9513,\n  \"incu\": 38830,\n  \"incub\": 24587,\n  \"incubator</w>\": 35736,\n  \"incumb\": 32246,\n  \"incumbent</w>\": 38038,\n  \"incur\": 42356,\n  \"ind\": 5386,\n  \"ind</w>\": 4655,\n  \"inda</w>\": 15710,\n  \"inde\": 2645,\n  \"indeed</w>\": 10031,\n  \"indefin\": 29501,\n  \"indefinitely</w>\": 43750,\n  \"independ\": 4147,\n  \"independence\": 23117,\n  \"independence</w>\": 7955,\n  \"independenceday</w>\": 25971,\n  \"independent\": 33844,\n  \"independent</w>\": 7088,\n  \"independently</w>\": 39831,\n  \"inder</w>\": 29225,\n  \"index\": 35209,\n  \"index</w>\": 9458,\n  \"indhoven</w>\": 44229,\n  \"indi\": 1098,\n  \"indi</w>\": 46536,\n  \"india\": 27067,\n  \"india</w>\": 1762,\n  \"indian\": 7685,\n  \"indian</w>\": 3606,\n  \"indiana</w>\": 8615,\n  \"indianapolis</w>\": 17196,\n  \"indianfootball</w>\": 45979,\n  \"indians</w>\": 10271,\n  \"indic\": 7136,\n  \"indicate</w>\": 26679,\n  \"indicated</w>\": 39416,\n  \"indicates</w>\": 29412,\n  \"indication</w>\": 38539,\n  \"indicator</w>\": 24776,\n  \"indicators</w>\": 30054,\n  \"indicted</w>\": 34992,\n  \"indictment</w>\": 42278,\n  \"indie\": 5260,\n  \"indie</w>\": 9383,\n  \"indiedev</w>\": 10863,\n  \"indiefilm</w>\": 22588,\n  \"indiegame</w>\": 17969,\n  \"indiegamedev</w>\": 40466,\n  \"indiegames</w>\": 35864,\n  \"indiegogo</w>\": 38057,\n  \"indies</w>\": 23618,\n  \"indiffe\": 41372,\n  \"indigen\": 8348,\n  \"indigenous</w>\": 9303,\n  \"indigo</w>\": 21002,\n  \"indira</w>\": 43887,\n  \"indirec\": 26398,\n  \"indirect</w>\": 35416,\n  \"indivi\": 5649,\n  \"individu\": 9574,\n  \"individual</w>\": 8512,\n  \"individually</w>\": 33782,\n  \"individuals</w>\": 11990,\n  \"indo\": 26303,\n  \"indo</w>\": 18297,\n  \"indom\": 42926,\n  \"indone\": 6180,\n  \"indonesia</w>\": 7229,\n  \"indonesian</w>\": 19593,\n  \"indoor\": 44478,\n  \"indoor</w>\": 9546,\n  \"indoors</w>\": 22973,\n  \"indore</w>\": 46143,\n  \"indu\": 2298,\n  \"induc\": 7973,\n  \"induced</w>\": 24103,\n  \"inducted</w>\": 20596,\n  \"inductee</w>\": 39558,\n  \"inductees</w>\": 44796,\n  \"induction</w>\": 18338,\n  \"indul\": 19402,\n  \"indulg\": 28388,\n  \"indulge</w>\": 24851,\n  \"indulgence</w>\": 40856,\n  \"indulgent</w>\": 49147,\n  \"industri\": 5082,\n  \"industrial\": 30853,\n  \"industrial</w>\": 7520,\n  \"industries</w>\": 11700,\n  \"industry\": 47407,\n  \"industry</w>\": 3318,\n  \"indv\": 16942,\n  \"indy\": 9821,\n  \"indy</w>\": 10098,\n  \"indycar</w>\": 20484,\n  \"indyref</w>\": 22569,\n  \"ine\": 855,\n  \"ine</w>\": 715,\n  \"ineau</w>\": 38122,\n  \"inec</w>\": 45214,\n  \"ined</w>\": 2038,\n  \"inee\": 43252,\n  \"inee</w>\": 7986,\n  \"inees</w>\": 13056,\n  \"ineffe\": 47202,\n  \"inely</w>\": 18234,\n  \"inem</w>\": 48876,\n  \"inema</w>\": 29232,\n  \"inen</w>\": 44365,\n  \"inequalities</w>\": 45507,\n  \"inequality</w>\": 17372,\n  \"iner\": 17438,\n  \"iner</w>\": 5155,\n  \"iners</w>\": 41863,\n  \"ines</w>\": 2137,\n  \"inese</w>\": 35966,\n  \"iness</w>\": 1463,\n  \"inet</w>\": 8121,\n  \"inette</w>\": 38911,\n  \"inev\": 19527,\n  \"inevit\": 45871,\n  \"inevitable</w>\": 25004,\n  \"inews</w>\": 24300,\n  \"inexpensive</w>\": 38614,\n  \"iney</w>\": 30254,\n  \"inez</w>\": 12700,\n  \"inf\": 1529,\n  \"inf</w>\": 35241,\n  \"infamous</w>\": 18688,\n  \"infan\": 17219,\n  \"infant</w>\": 19192,\n  \"infantry</w>\": 21655,\n  \"infants</w>\": 34726,\n  \"infe\": 7164,\n  \"infec\": 26088,\n  \"infected</w>\": 26136,\n  \"infection</w>\": 14774,\n  \"infections</w>\": 22227,\n  \"infectious</w>\": 29157,\n  \"infeld</w>\": 25035,\n  \"infer\": 16258,\n  \"inferno</w>\": 31290,\n  \"infertility</w>\": 40701,\n  \"infield</w>\": 48933,\n  \"infiltr\": 28683,\n  \"infin\": 6246,\n  \"infinite</w>\": 12748,\n  \"infiniti</w>\": 34644,\n  \"infinity\": 34863,\n  \"infinity</w>\": 12895,\n  \"infl\": 7627,\n  \"inflam\": 16080,\n  \"inflammation</w>\": 24893,\n  \"inflammatory</w>\": 26831,\n  \"inflatable</w>\": 30135,\n  \"inflation</w>\": 17497,\n  \"inflicted</w>\": 48188,\n  \"influ\": 4835,\n  \"influen\": 13229,\n  \"influence</w>\": 9199,\n  \"influenced</w>\": 21183,\n  \"influencer</w>\": 25013,\n  \"influencers</w>\": 29891,\n  \"influences</w>\": 24926,\n  \"influencing</w>\": 45126,\n  \"influential</w>\": 17553,\n  \"influenza</w>\": 39897,\n  \"info\": 5680,\n  \"info</w>\": 2222,\n  \"infographic</w>\": 10076,\n  \"infographics</w>\": 33172,\n  \"infor\": 31773,\n  \"inform\": 10241,\n  \"inform</w>\": 19449,\n  \"informal</w>\": 25705,\n  \"informat\": 29625,\n  \"informatics</w>\": 35685,\n  \"information</w>\": 3204,\n  \"informative</w>\": 19364,\n  \"informed</w>\": 13876,\n  \"informing</w>\": 45388,\n  \"informs</w>\": 48440,\n  \"infosec</w>\": 17863,\n  \"infr\": 29718,\n  \"infra\": 7312,\n  \"infra</w>\": 45877,\n  \"infrared</w>\": 22867,\n  \"infrastructure</w>\": 9034,\n  \"infringe\": 44882,\n  \"infringement</w>\": 48712,\n  \"infront</w>\": 37668,\n  \"infu\": 15048,\n  \"infuri\": 48461,\n  \"infused</w>\": 21461,\n  \"infusion</w>\": 43464,\n  \"ing\": 653,\n  \"ing</w>\": 519,\n  \"inga</w>\": 15233,\n  \"ingco</w>\": 40444,\n  \"ingday</w>\": 16561,\n  \"ingdon</w>\": 38731,\n  \"inge\": 11790,\n  \"inge</w>\": 7071,\n  \"inged</w>\": 30046,\n  \"ingen</w>\": 19088,\n  \"ingeni\": 36884,\n  \"inger\": 33883,\n  \"inger</w>\": 3541,\n  \"ingfor\": 33430,\n  \"ingh\": 9170,\n  \"ingh</w>\": 30495,\n  \"ingham\": 24497,\n  \"ingham</w>\": 4291,\n  \"inghamshire</w>\": 39289,\n  \"inghour</w>\": 42728,\n  \"inging</w>\": 4066,\n  \"ingl\": 45662,\n  \"ingle\": 22228,\n  \"ingle</w>\": 17005,\n  \"ingles</w>\": 24490,\n  \"ingley</w>\": 44428,\n  \"inglis</w>\": 46327,\n  \"ingly</w>\": 4796,\n  \"ingnow</w>\": 34766,\n  \"ingo\": 30175,\n  \"ingo</w>\": 9012,\n  \"ingra\": 45165,\n  \"ingrad</w>\": 44124,\n  \"ingram</w>\": 26998,\n  \"ingredi\": 9272,\n  \"ingredient</w>\": 19799,\n  \"ingredients</w>\": 11788,\n  \"ingrid</w>\": 33496,\n  \"ings</w>\": 895,\n  \"ingthe\": 20170,\n  \"ingtips</w>\": 39373,\n  \"ington\": 11846,\n  \"ington</w>\": 2156,\n  \"ingu\": 8714,\n  \"ingual</w>\": 22795,\n  \"ingue</w>\": 36838,\n  \"ingui\": 12788,\n  \"inguish</w>\": 36146,\n  \"inha</w>\": 32612,\n  \"inhabit\": 36189,\n  \"inhabitants</w>\": 44968,\n  \"inhal\": 30786,\n  \"inhe\": 32617,\n  \"inher\": 24611,\n  \"inherent</w>\": 47327,\n  \"inherit\": 34322,\n  \"inheritance</w>\": 39341,\n  \"inherited</w>\": 39111,\n  \"inhi\": 25557,\n  \"inhibit\": 32196,\n  \"inho</w>\": 12984,\n  \"ini\": 6154,\n  \"ini</w>\": 3581,\n  \"inian</w>\": 36638,\n  \"inim\": 38717,\n  \"inindia</w>\": 34021,\n  \"ining</w>\": 1389,\n  \"inist</w>\": 30976,\n  \"init</w>\": 42670,\n  \"initi\": 4580,\n  \"initial</w>\": 13980,\n  \"initially</w>\": 28123,\n  \"initials</w>\": 48794,\n  \"initiated</w>\": 27756,\n  \"initiation</w>\": 41009,\n  \"initiative</w>\": 8152,\n  \"initiatives</w>\": 16549,\n  \"inity</w>\": 22126,\n  \"inj\": 5112,\n  \"injec\": 13688,\n  \"injection</w>\": 21438,\n  \"inju\": 5006,\n  \"injured</w>\": 7505,\n  \"injuries</w>\": 9481,\n  \"injury</w>\": 6223,\n  \"injustice</w>\": 20541,\n  \"ink\": 4547,\n  \"ink</w>\": 967,\n  \"inka</w>\": 40685,\n  \"inked</w>\": 29356,\n  \"inki\": 46176,\n  \"inkigayo</w>\": 47882,\n  \"inking</w>\": 37586,\n  \"inks</w>\": 20966,\n  \"inktober</w>\": 9387,\n  \"inland</w>\": 21943,\n  \"inlet</w>\": 35161,\n  \"inline</w>\": 45004,\n  \"inlove</w>\": 28415,\n  \"inmate</w>\": 32341,\n  \"inmates</w>\": 28216,\n  \"inmy\": 42657,\n  \"inn\": 27260,\n  \"inn</w>\": 5569,\n  \"inna</w>\": 35088,\n  \"inner\": 24512,\n  \"inner</w>\": 6955,\n  \"inning</w>\": 4415,\n  \"innings</w>\": 11580,\n  \"innis\": 44059,\n  \"inno\": 7961,\n  \"innocence</w>\": 26383,\n  \"innocent</w>\": 11241,\n  \"innov\": 2890,\n  \"innovate</w>\": 24549,\n  \"innovation\": 33063,\n  \"innovation</w>\": 4272,\n  \"innovations</w>\": 18817,\n  \"innovative</w>\": 8494,\n  \"innovator</w>\": 34735,\n  \"innovators</w>\": 27834,\n  \"ino\": 4211,\n  \"ino</w>\": 2691,\n  \"inoa</w>\": 25649,\n  \"inos</w>\": 21828,\n  \"inous</w>\": 47801,\n  \"inox</w>\": 22698,\n  \"input</w>\": 16952,\n  \"inputs</w>\": 48763,\n  \"inqu\": 10628,\n  \"inqui\": 18527,\n  \"inquirer</w>\": 45172,\n  \"inquiries</w>\": 29469,\n  \"inquiry</w>\": 15865,\n  \"inquis\": 31171,\n  \"inr</w>\": 36325,\n  \"ins\": 12786,\n  \"ins</w>\": 1041,\n  \"insan\": 7875,\n  \"insane</w>\": 10260,\n  \"insanely</w>\": 27846,\n  \"insanity</w>\": 26645,\n  \"inscribed</w>\": 49168,\n  \"inscription</w>\": 41127,\n  \"insec\": 15744,\n  \"insect</w>\": 21297,\n  \"insects</w>\": 18714,\n  \"insecure</w>\": 35112,\n  \"insecurity</w>\": 36964,\n  \"inser\": 13830,\n  \"insert</w>\": 18807,\n  \"insi\": 3453,\n  \"inside\": 19141,\n  \"inside</w>\": 2912,\n  \"insider</w>\": 13300,\n  \"insiders</w>\": 32171,\n  \"insig\": 40503,\n  \"insight</w>\": 8795,\n  \"insightful</w>\": 20354,\n  \"insights</w>\": 8729,\n  \"insignia</w>\": 48864,\n  \"insist</w>\": 35504,\n  \"insisted</w>\": 40423,\n  \"insists</w>\": 27255,\n  \"inski</w>\": 32630,\n  \"insky</w>\": 24607,\n  \"insol\": 42366,\n  \"insom\": 21755,\n  \"insomni\": 42040,\n  \"insomnia</w>\": 30598,\n  \"inson</w>\": 21007,\n  \"insp\": 1597,\n  \"inspec\": 7915,\n  \"inspect</w>\": 40815,\n  \"inspecting</w>\": 40565,\n  \"inspection</w>\": 15142,\n  \"inspections</w>\": 39513,\n  \"inspector</w>\": 20514,\n  \"inspir\": 2573,\n  \"inspiration</w>\": 4195,\n  \"inspirational\": 41936,\n  \"inspirational</w>\": 9855,\n  \"inspirations</w>\": 35093,\n  \"inspire\": 27901,\n  \"inspire</w>\": 8583,\n  \"inspired\": 39849,\n  \"inspired</w>\": 3516,\n  \"inspires</w>\": 17245,\n  \"inspiring\": 41847,\n  \"inspiring</w>\": 5705,\n  \"inspo</w>\": 26897,\n  \"inst\": 1264,\n  \"inst</w>\": 1581,\n  \"insta\": 22411,\n  \"insta</w>\": 11694,\n  \"instability</w>\": 41377,\n  \"instac\": 46678,\n  \"instaf\": 33800,\n  \"instag\": 14612,\n  \"instagood</w>\": 23718,\n  \"instagram\": 27910,\n  \"instagram</w>\": 2659,\n  \"instal\": 38805,\n  \"install\": 6940,\n  \"install</w>\": 11168,\n  \"installation</w>\": 9358,\n  \"installations</w>\": 27909,\n  \"installed</w>\": 8807,\n  \"installing</w>\": 18301,\n  \"installment</w>\": 25315,\n  \"installs</w>\": 45568,\n  \"instalment</w>\": 47766,\n  \"instance</w>\": 34572,\n  \"instant\": 38810,\n  \"instant</w>\": 10635,\n  \"instantly</w>\": 17703,\n  \"instap\": 23758,\n  \"instapic</w>\": 34378,\n  \"instaweather\": 43078,\n  \"instaweatherpro</w>\": 43150,\n  \"inste\": 3571,\n  \"instead</w>\": 4191,\n  \"instein</w>\": 13421,\n  \"instem</w>\": 27030,\n  \"instin\": 23382,\n  \"instinct</w>\": 30544,\n  \"institu\": 4257,\n  \"institute</w>\": 5861,\n  \"institutes</w>\": 43674,\n  \"institution</w>\": 18823,\n  \"institutional</w>\": 27442,\n  \"institutions</w>\": 15207,\n  \"instore</w>\": 41679,\n  \"instru\": 4544,\n  \"instruc\": 19648,\n  \"instruction</w>\": 19407,\n  \"instructional</w>\": 31022,\n  \"instructions</w>\": 17040,\n  \"instructor</w>\": 16087,\n  \"instructors</w>\": 31998,\n  \"instrument\": 42196,\n  \"instrument</w>\": 15806,\n  \"instrumental</w>\": 23041,\n  \"instruments</w>\": 14793,\n  \"instyle</w>\": 41321,\n  \"insu\": 8805,\n  \"insul\": 9615,\n  \"insulated</w>\": 42051,\n  \"insulation</w>\": 28194,\n  \"insulin</w>\": 29311,\n  \"insult</w>\": 26673,\n  \"insulting</w>\": 39646,\n  \"insults</w>\": 40451,\n  \"insur\": 5024,\n  \"insurance</w>\": 5870,\n  \"insured</w>\": 31321,\n  \"insurers</w>\": 43142,\n  \"insurtech</w>\": 28716,\n  \"int\": 1828,\n  \"int</w>\": 1207,\n  \"inta</w>\": 38314,\n  \"intact</w>\": 26870,\n  \"intake</w>\": 19539,\n  \"intan\": 47695,\n  \"inte\": 1598,\n  \"inte</w>\": 41900,\n  \"intech</w>\": 26504,\n  \"inted</w>\": 6147,\n  \"integr\": 5151,\n  \"integral</w>\": 27018,\n  \"integrate</w>\": 25735,\n  \"integrated</w>\": 12797,\n  \"integrating</w>\": 31555,\n  \"integration</w>\": 12583,\n  \"integrity</w>\": 14791,\n  \"intel\": 11778,\n  \"intel</w>\": 11426,\n  \"intellec\": 13281,\n  \"intellect</w>\": 47828,\n  \"intellectu\": 31966,\n  \"intellectual</w>\": 18069,\n  \"intelli\": 5324,\n  \"intellig\": 5632,\n  \"intelligence</w>\": 6846,\n  \"intelligent</w>\": 14063,\n  \"inten\": 2967,\n  \"intend</w>\": 36674,\n  \"intended</w>\": 16812,\n  \"intense</w>\": 10258,\n  \"intensi\": 22928,\n  \"intensity</w>\": 19956,\n  \"intensive</w>\": 21049,\n  \"intent</w>\": 18881,\n  \"intention</w>\": 26786,\n  \"intentional</w>\": 29536,\n  \"intentionally</w>\": 31215,\n  \"intentions</w>\": 26710,\n  \"inter\": 1006,\n  \"inter</w>\": 10093,\n  \"interact</w>\": 21736,\n  \"interacting</w>\": 35045,\n  \"interaction</w>\": 17650,\n  \"interactions</w>\": 22162,\n  \"interactive</w>\": 9456,\n  \"intercep\": 23676,\n  \"interception</w>\": 48762,\n  \"interceptions</w>\": 45313,\n  \"interchange</w>\": 34222,\n  \"intercontinental</w>\": 31983,\n  \"interdisciplinary</w>\": 38132,\n  \"intere\": 2008,\n  \"interest</w>\": 5095,\n  \"interested</w>\": 4620,\n  \"interesting</w>\": 3628,\n  \"interests</w>\": 16425,\n  \"interface</w>\": 18753,\n  \"interfaith</w>\": 38399,\n  \"interference</w>\": 29099,\n  \"interim</w>\": 19509,\n  \"interior\": 10700,\n  \"interior</w>\": 7305,\n  \"interiordesign</w>\": 12902,\n  \"interiors</w>\": 14836,\n  \"intermedi\": 20246,\n  \"intermediate</w>\": 24304,\n  \"intermission</w>\": 44805,\n  \"intermitt\": 44946,\n  \"intern\": 9976,\n  \"intern</w>\": 14068,\n  \"internal</w>\": 11285,\n  \"internally</w>\": 41134,\n  \"internation\": 42534,\n  \"international\": 8566,\n  \"international</w>\": 2436,\n  \"internationaldayof\": 41518,\n  \"internationally</w>\": 24059,\n  \"internationalwomensday</w>\": 17682,\n  \"interne\": 32713,\n  \"internet\": 30180,\n  \"internet</w>\": 4757,\n  \"internetof\": 44449,\n  \"internetofthings</w>\": 45925,\n  \"interns</w>\": 19902,\n  \"internship</w>\": 16661,\n  \"internships</w>\": 39410,\n  \"interoper\": 45754,\n  \"interpre\": 11162,\n  \"interpret\": 49154,\n  \"interpret</w>\": 40459,\n  \"interpretation</w>\": 20652,\n  \"interpreted</w>\": 42157,\n  \"interpreting</w>\": 46525,\n  \"interro\": 29548,\n  \"interrup\": 21609,\n  \"interrupt</w>\": 48449,\n  \"interrupted</w>\": 30288,\n  \"intersec\": 45246,\n  \"intersection</w>\": 19210,\n  \"interstate</w>\": 21963,\n  \"interstellar</w>\": 41506,\n  \"interval</w>\": 36032,\n  \"intervals</w>\": 44884,\n  \"interven\": 18245,\n  \"intervention</w>\": 16804,\n  \"interventions</w>\": 28848,\n  \"interview</w>\": 2885,\n  \"interviewed</w>\": 11688,\n  \"interviewing</w>\": 16399,\n  \"interviews</w>\": 9910,\n  \"intestin\": 37938,\n  \"intestinal</w>\": 38896,\n  \"inthe\": 7486,\n  \"inti\": 14459,\n  \"intim\": 38832,\n  \"intimacy</w>\": 46430,\n  \"intimate</w>\": 16382,\n  \"intimid\": 24041,\n  \"intimidating</w>\": 44405,\n  \"intimidation</w>\": 49258,\n  \"inting</w>\": 15571,\n  \"intl\": 38186,\n  \"intl</w>\": 14224,\n  \"intment</w>\": 9020,\n  \"intments</w>\": 21420,\n  \"into\": 35235,\n  \"into</w>\": 1095,\n  \"intoler\": 28534,\n  \"intolerance</w>\": 37808,\n  \"intothe\": 38511,\n  \"intra\": 20922,\n  \"intrac\": 46195,\n  \"intram\": 40956,\n  \"intre\": 29397,\n  \"intrepid</w>\": 39127,\n  \"intri\": 15421,\n  \"intric\": 23763,\n  \"intricate</w>\": 29616,\n  \"intrigu\": 18856,\n  \"intrigue</w>\": 45140,\n  \"intrigued</w>\": 40034,\n  \"intriguing</w>\": 24334,\n  \"intrin\": 45181,\n  \"intro\": 2999,\n  \"intro</w>\": 13224,\n  \"introduc\": 3621,\n  \"introduce</w>\": 9813,\n  \"introduced</w>\": 10446,\n  \"introduces</w>\": 12933,\n  \"introducing</w>\": 6256,\n  \"introduction</w>\": 11812,\n  \"introductory</w>\": 38121,\n  \"intru\": 22949,\n  \"ints</w>\": 2514,\n  \"intu\": 17225,\n  \"intuition</w>\": 40897,\n  \"intuitive</w>\": 35224,\n  \"inu\": 21131,\n  \"inuit</w>\": 41250,\n  \"inus</w>\": 45857,\n  \"inv\": 2279,\n  \"inv</w>\": 43786,\n  \"inva\": 10084,\n  \"invade</w>\": 34609,\n  \"invaded</w>\": 32596,\n  \"invaders</w>\": 35188,\n  \"invading</w>\": 40101,\n  \"invali\": 31592,\n  \"invalid</w>\": 46998,\n  \"invaluable</w>\": 33976,\n  \"invasi\": 38100,\n  \"invasion</w>\": 13378,\n  \"invasive</w>\": 19554,\n  \"inve\": 2024,\n  \"inven\": 26233,\n  \"invent\": 11665,\n  \"invent</w>\": 23558,\n  \"invented</w>\": 14100,\n  \"invention</w>\": 23607,\n  \"inventions</w>\": 44914,\n  \"inventor</w>\": 22836,\n  \"inventory</w>\": 19444,\n  \"inver\": 12061,\n  \"inverness</w>\": 33080,\n  \"inverte\": 46397,\n  \"inverted</w>\": 40709,\n  \"invest\": 4180,\n  \"invest</w>\": 9716,\n  \"invested</w>\": 22536,\n  \"investig\": 4626,\n  \"investigate</w>\": 15703,\n  \"investigated</w>\": 29180,\n  \"investigates</w>\": 29621,\n  \"investigating</w>\": 13713,\n  \"investigation</w>\": 8194,\n  \"investigations</w>\": 24020,\n  \"investigative</w>\": 30233,\n  \"investigator</w>\": 30528,\n  \"investigators</w>\": 24121,\n  \"investin\": 40195,\n  \"investing</w>\": 10554,\n  \"investment</w>\": 5605,\n  \"investments</w>\": 14675,\n  \"investor</w>\": 15490,\n  \"investors</w>\": 10486,\n  \"invests</w>\": 38378,\n  \"invic\": 25253,\n  \"invigor\": 48722,\n  \"invin\": 30252,\n  \"invincible</w>\": 38052,\n  \"invisible</w>\": 16093,\n  \"invit\": 12454,\n  \"invitation</w>\": 15032,\n  \"invitational</w>\": 14511,\n  \"invitations</w>\": 40120,\n  \"invite</w>\": 8109,\n  \"invited</w>\": 7731,\n  \"invites</w>\": 16034,\n  \"inviting</w>\": 14349,\n  \"invo\": 29417,\n  \"invol\": 4000,\n  \"involve</w>\": 26325,\n  \"involved</w>\": 5320,\n  \"involvement</w>\": 19502,\n  \"involves</w>\": 22652,\n  \"involving</w>\": 14786,\n  \"inwx</w>\": 35674,\n  \"iny</w>\": 23257,\n  \"inyour\": 47954,\n  \"io\": 3167,\n  \"io</w>\": 3752,\n  \"ioc</w>\": 43018,\n  \"iom\": 33000,\n  \"iom</w>\": 31135,\n  \"ion\": 14871,\n  \"ion</w>\": 3668,\n  \"ions</w>\": 26289,\n  \"ior\": 7354,\n  \"ior</w>\": 2498,\n  \"iority</w>\": 46016,\n  \"iors</w>\": 6427,\n  \"ios</w>\": 6614,\n  \"iot\": 32694,\n  \"iot</w>\": 6627,\n  \"iota</w>\": 37294,\n  \"ious</w>\": 6994,\n  \"iously</w>\": 38233,\n  \"iow\": 7439,\n  \"iowa\": 38847,\n  \"iowa</w>\": 8290,\n  \"ip\": 1719,\n  \"ip</w>\": 8600,\n  \"ipa</w>\": 11199,\n  \"ipad\": 39067,\n  \"ipad</w>\": 7491,\n  \"ipads</w>\": 35281,\n  \"ipc</w>\": 41981,\n  \"iphone\": 26030,\n  \"iphone</w>\": 4314,\n  \"iphones</w>\": 37561,\n  \"ipl</w>\": 13440,\n  \"ipment</w>\": 37824,\n  \"ipo\": 40218,\n  \"ipo</w>\": 24090,\n  \"ipod</w>\": 17889,\n  \"ipp\": 31706,\n  \"ips</w>\": 26910,\n  \"ipsw\": 22221,\n  \"ipswich</w>\": 24494,\n  \"iq\": 15554,\n  \"iq</w>\": 19996,\n  \"iqbal</w>\": 33553,\n  \"ir\": 582,\n  \"ir</w>\": 742,\n  \"ira\": 4923,\n  \"ira</w>\": 5371,\n  \"irah</w>\": 35724,\n  \"iran\": 19273,\n  \"iran</w>\": 5075,\n  \"irandeal</w>\": 46533,\n  \"irani</w>\": 37984,\n  \"iranian</w>\": 14158,\n  \"iraq</w>\": 8543,\n  \"iraqi</w>\": 18617,\n  \"irc</w>\": 41527,\n  \"ird</w>\": 2770,\n  \"ire\": 3013,\n  \"ire</w>\": 1454,\n  \"ired\": 32728,\n  \"ired</w>\": 2995,\n  \"ireland\": 32806,\n  \"ireland</w>\": 4157,\n  \"irene</w>\": 21600,\n  \"ires</w>\": 12435,\n  \"irez</w>\": 21581,\n  \"irgc</w>\": 47942,\n  \"iri\": 2155,\n  \"iri</w>\": 13880,\n  \"irical</w>\": 33366,\n  \"irie</w>\": 42979,\n  \"irina</w>\": 46664,\n  \"iring</w>\": 10169,\n  \"iris</w>\": 16437,\n  \"irish\": 9386,\n  \"irish</w>\": 4889,\n  \"irl\": 34494,\n  \"irl</w>\": 8570,\n  \"irling</w>\": 26493,\n  \"irls</w>\": 24344,\n  \"irma</w>\": 22406,\n  \"irn</w>\": 42603,\n  \"iro\": 23209,\n  \"iro</w>\": 7280,\n  \"iron\": 7699,\n  \"iron</w>\": 5391,\n  \"ironic</w>\": 24518,\n  \"ironically</w>\": 36779,\n  \"ironing</w>\": 46655,\n  \"ironman</w>\": 20330,\n  \"irons</w>\": 30032,\n  \"irony</w>\": 20681,\n  \"irport</w>\": 27769,\n  \"irr\": 24641,\n  \"irrational</w>\": 47413,\n  \"irregular</w>\": 38692,\n  \"irrelevant</w>\": 34677,\n  \"irresi\": 31200,\n  \"irresistible</w>\": 35252,\n  \"irresponsible</w>\": 44714,\n  \"irri\": 21484,\n  \"irrigation</w>\": 23761,\n  \"irrit\": 24218,\n  \"irs</w>\": 6086,\n  \"irst</w>\": 32701,\n  \"iru</w>\": 48206,\n  \"irvin</w>\": 47053,\n  \"irvine</w>\": 24201,\n  \"irving</w>\": 19738,\n  \"irwin</w>\": 23750,\n  \"iry</w>\": 7239,\n  \"is\": 595,\n  \"is</w>\": 533,\n  \"isa\": 11034,\n  \"isa</w>\": 6536,\n  \"isaac\": 37544,\n  \"isaac</w>\": 13659,\n  \"isab\": 13357,\n  \"isabel</w>\": 27466,\n  \"isabella</w>\": 26192,\n  \"isabelle</w>\": 31072,\n  \"isable</w>\": 46631,\n  \"isai\": 15365,\n  \"isaiah</w>\": 17952,\n  \"isak\": 40619,\n  \"isance</w>\": 46893,\n  \"isation</w>\": 7194,\n  \"isback</w>\": 43811,\n  \"isc</w>\": 39316,\n  \"isch</w>\": 47888,\n  \"isco</w>\": 5736,\n  \"iscoming</w>\": 26458,\n  \"isd\": 46816,\n  \"isd</w>\": 12002,\n  \"ise\": 7669,\n  \"ise</w>\": 1479,\n  \"ised</w>\": 2861,\n  \"iselle</w>\": 48491,\n  \"iser\": 23080,\n  \"iser</w>\": 5626,\n  \"isers</w>\": 34879,\n  \"ises</w>\": 5153,\n  \"isf</w>\": 44036,\n  \"isgreat</w>\": 34595,\n  \"ish\": 6844,\n  \"ish</w>\": 1061,\n  \"isha</w>\": 28050,\n  \"ishable</w>\": 37949,\n  \"ished</w>\": 35341,\n  \"ishere</w>\": 46053,\n  \"ishi\": 26224,\n  \"ishq\": 27996,\n  \"ishqba\": 32503,\n  \"ishqbaaaz</w>\": 36591,\n  \"isi\": 7233,\n  \"isi</w>\": 17880,\n  \"isil</w>\": 34636,\n  \"isin</w>\": 37676,\n  \"ising</w>\": 3426,\n  \"isis</w>\": 7531,\n  \"isk</w>\": 30171,\n  \"isl</w>\": 31368,\n  \"isla</w>\": 22807,\n  \"islam\": 6003,\n  \"islam</w>\": 8770,\n  \"islamabad</w>\": 19959,\n  \"islamic\": 31627,\n  \"islamic</w>\": 9552,\n  \"islamist</w>\": 38798,\n  \"islamophobia</w>\": 43459,\n  \"island\": 13408,\n  \"island</w>\": 2619,\n  \"islander</w>\": 45651,\n  \"islanders</w>\": 27804,\n  \"islands</w>\": 7145,\n  \"islay</w>\": 49279,\n  \"isle\": 19082,\n  \"isle</w>\": 11849,\n  \"isleof\": 24718,\n  \"isles</w>\": 21816,\n  \"islife</w>\": 26433,\n  \"islington</w>\": 34945,\n  \"ism\": 47730,\n  \"ism</w>\": 1935,\n  \"isma\": 43937,\n  \"ismail</w>\": 36140,\n  \"isme</w>\": 43570,\n  \"ismo</w>\": 41926,\n  \"isms</w>\": 18700,\n  \"isn</w>\": 2923,\n  \"isner</w>\": 48246,\n  \"isnow</w>\": 43694,\n  \"isnt</w>\": 19416,\n  \"iso\": 2462,\n  \"iso</w>\": 12263,\n  \"isol\": 11414,\n  \"isolated</w>\": 19044,\n  \"isolation</w>\": 26400,\n  \"ison\": 12949,\n  \"ison</w>\": 4553,\n  \"isons</w>\": 33318,\n  \"isoo</w>\": 35857,\n  \"isp\": 31397,\n  \"isp</w>\": 39041,\n  \"isra\": 3591,\n  \"israel\": 20837,\n  \"israel</w>\": 4779,\n  \"israeli</w>\": 8994,\n  \"israelis</w>\": 45713,\n  \"isreal</w>\": 47147,\n  \"isro</w>\": 44841,\n  \"iss\": 11738,\n  \"iss</w>\": 4950,\n  \"issa\": 38579,\n  \"issa</w>\": 7560,\n  \"issan\": 49358,\n  \"issance</w>\": 40828,\n  \"issant</w>\": 38828,\n  \"isse</w>\": 18986,\n  \"ission</w>\": 37946,\n  \"issu\": 2049,\n  \"issue</w>\": 3202,\n  \"issued</w>\": 9246,\n  \"issues</w>\": 4082,\n  \"issuing</w>\": 37226,\n  \"ist\": 9751,\n  \"ist</w>\": 2304,\n  \"istanbul</w>\": 12258,\n  \"istandwith\": 33820,\n  \"iste</w>\": 32563,\n  \"ister</w>\": 14555,\n  \"isthe\": 46748,\n  \"istic</w>\": 29556,\n  \"ists</w>\": 8426,\n  \"isu\": 17030,\n  \"isu</w>\": 23328,\n  \"it\": 529,\n  \"it</w>\": 585,\n  \"ita\": 36920,\n  \"ita</w>\": 2864,\n  \"itable</w>\": 8915,\n  \"ital\": 2306,\n  \"ital</w>\": 1660,\n  \"itali\": 11644,\n  \"italia</w>\": 11025,\n  \"italian\": 20264,\n  \"italian</w>\": 5175,\n  \"italians</w>\": 44744,\n  \"italk</w>\": 32894,\n  \"italy</w>\": 4052,\n  \"itan</w>\": 18383,\n  \"itans</w>\": 40711,\n  \"itar</w>\": 47161,\n  \"itarian</w>\": 11599,\n  \"itary</w>\": 17604,\n  \"itas\": 31634,\n  \"itas</w>\": 13436,\n  \"itate</w>\": 42457,\n  \"itated</w>\": 36744,\n  \"itation</w>\": 5070,\n  \"itative</w>\": 22892,\n  \"itc</w>\": 36449,\n  \"itch\": 2387,\n  \"itch</w>\": 8147,\n  \"itchen</w>\": 32664,\n  \"itchy</w>\": 41980,\n  \"ite\": 2732,\n  \"ite</w>\": 802,\n  \"iteam</w>\": 37828,\n  \"itec\": 3099,\n  \"itec</w>\": 43936,\n  \"itech\": 44215,\n  \"itech</w>\": 23040,\n  \"ited\": 8603,\n  \"ited</w>\": 1108,\n  \"itel</w>\": 44638,\n  \"itely</w>\": 4605,\n  \"item</w>\": 8532,\n  \"items</w>\": 6207,\n  \"iter\": 7938,\n  \"iter</w>\": 19773,\n  \"iteracy</w>\": 39634,\n  \"iterate</w>\": 43106,\n  \"iteration</w>\": 38790,\n  \"ites</w>\": 2454,\n  \"itez</w>\": 42131,\n  \"itf</w>\": 35436,\n  \"itfc</w>\": 36519,\n  \"ith\": 6133,\n  \"ith</w>\": 1757,\n  \"ithaca</w>\": 46257,\n  \"iti\": 760,\n  \"iti</w>\": 6165,\n  \"itia</w>\": 22634,\n  \"itian</w>\": 23365,\n  \"itic</w>\": 11950,\n  \"itical</w>\": 48767,\n  \"itics</w>\": 33967,\n  \"ities\": 41423,\n  \"ities</w>\": 1480,\n  \"itim\": 15676,\n  \"itiner\": 32803,\n  \"itinerary</w>\": 41564,\n  \"iting</w>\": 1257,\n  \"ition\": 25263,\n  \"ition</w>\": 1104,\n  \"itions</w>\": 5540,\n  \"itious</w>\": 13329,\n  \"itis\": 33539,\n  \"itis</w>\": 8388,\n  \"itive</w>\": 3067,\n  \"itly</w>\": 42240,\n  \"ito\": 22167,\n  \"ito</w>\": 4661,\n  \"iton</w>\": 21119,\n  \"itor\": 47267,\n  \"itor</w>\": 4584,\n  \"itors</w>\": 22005,\n  \"itos</w>\": 24560,\n  \"its\": 7140,\n  \"its</w>\": 902,\n  \"itsa\": 45032,\n  \"itself</w>\": 7290,\n  \"itsme\": 41125,\n  \"itss\": 47040,\n  \"itt\": 1031,\n  \"itt</w>\": 11228,\n  \"itta</w>\": 21233,\n  \"itte</w>\": 31962,\n  \"itted</w>\": 24429,\n  \"itten\": 30014,\n  \"itten</w>\": 4343,\n  \"itter</w>\": 11456,\n  \"itters</w>\": 13082,\n  \"itti</w>\": 28629,\n  \"ittin</w>\": 25646,\n  \"itting</w>\": 3147,\n  \"ittle\": 24208,\n  \"ittle</w>\": 21366,\n  \"ittles</w>\": 38989,\n  \"itton</w>\": 25707,\n  \"itty</w>\": 35096,\n  \"itu\": 1668,\n  \"itu</w>\": 32128,\n  \"itude\": 43382,\n  \"itude</w>\": 5012,\n  \"itudes</w>\": 20459,\n  \"itunes</w>\": 7007,\n  \"itup</w>\": 35838,\n  \"iture</w>\": 25547,\n  \"itus</w>\": 24364,\n  \"itutes</w>\": 32883,\n  \"itv\": 20159,\n  \"itv</w>\": 12805,\n  \"ity\": 2480,\n  \"ity</w>\": 696,\n  \"itya</w>\": 32055,\n  \"itz\": 14544,\n  \"itz</w>\": 7807,\n  \"iu\": 14292,\n  \"iu</w>\": 15575,\n  \"ium</w>\": 10762,\n  \"ius</w>\": 6740,\n  \"iv\": 6775,\n  \"iv</w>\": 9315,\n  \"iva</w>\": 42463,\n  \"ivan\": 15544,\n  \"ivan</w>\": 15689,\n  \"ivanka</w>\": 37914,\n  \"ive\": 26885,\n  \"ive</w>\": 8653,\n  \"ived</w>\": 15654,\n  \"iver\": 36849,\n  \"iver</w>\": 44254,\n  \"ives</w>\": 27333,\n  \"ivf</w>\": 39159,\n  \"iving</w>\": 45136,\n  \"ivory</w>\": 16776,\n  \"ivote\": 45835,\n  \"ivy\": 36939,\n  \"ivy</w>\": 16045,\n  \"iw\": 13058,\n  \"iw</w>\": 46604,\n  \"iwant\": 42747,\n  \"iwd</w>\": 16815,\n  \"iwm</w>\": 44237,\n  \"ix\": 13272,\n  \"ix</w>\": 8756,\n  \"iy\": 13704,\n  \"iya</w>\": 18595,\n  \"iyaki</w>\": 48395,\n  \"iz\": 2845,\n  \"iz</w>\": 8407,\n  \"iza</w>\": 37704,\n  \"ization</w>\": 10847,\n  \"ize</w>\": 10885,\n  \"ized</w>\": 7690,\n  \"izen</w>\": 34776,\n  \"izer</w>\": 23895,\n  \"izes</w>\": 45434,\n  \"izing</w>\": 17354,\n  \"izo</w>\": 46910,\n  \"izz\": 31779,\n  \"izz</w>\": 46128,\n  \"izzy</w>\": 28861,\n  \"j\": 73,\n  \"j</w>\": 329,\n  \"ja\": 1586,\n  \"ja</w>\": 2641,\n  \"jaan</w>\": 25052,\n  \"jab\": 8059,\n  \"jab</w>\": 9439,\n  \"jac\": 2293,\n  \"jac</w>\": 30198,\n  \"jace</w>\": 43286,\n  \"jack\": 2679,\n  \"jack</w>\": 3267,\n  \"jacked</w>\": 27923,\n  \"jacket</w>\": 6164,\n  \"jackets</w>\": 14745,\n  \"jacki\": 47418,\n  \"jackie\": 28023,\n  \"jackie</w>\": 11716,\n  \"jacking</w>\": 40929,\n  \"jackman</w>\": 35723,\n  \"jackpot</w>\": 23926,\n  \"jacks</w>\": 19649,\n  \"jackson\": 12321,\n  \"jackson</w>\": 4363,\n  \"jacksonville</w>\": 19263,\n  \"jaco\": 6840,\n  \"jacob\": 14385,\n  \"jacob</w>\": 9222,\n  \"jacobs</w>\": 17482,\n  \"jacobson</w>\": 46826,\n  \"jacqu\": 14495,\n  \"jacqueline</w>\": 22843,\n  \"jacques</w>\": 17799,\n  \"jad\": 12976,\n  \"jad</w>\": 38691,\n  \"jada</w>\": 37416,\n  \"jade\": 25123,\n  \"jade</w>\": 14513,\n  \"jaden</w>\": 37174,\n  \"jadine</w>\": 37445,\n  \"jae\": 16869,\n  \"jae</w>\": 15765,\n  \"jaejoong</w>\": 43610,\n  \"jaf\": 19362,\n  \"jag\": 7984,\n  \"jag</w>\": 36236,\n  \"jagan</w>\": 48530,\n  \"jagger</w>\": 30835,\n  \"jags</w>\": 31086,\n  \"jagu\": 10096,\n  \"jaguar\": 44777,\n  \"jaguar</w>\": 14757,\n  \"jaguars</w>\": 21854,\n  \"jah\": 20067,\n  \"jah</w>\": 11084,\n  \"jahan\": 44404,\n  \"jahan</w>\": 47827,\n  \"jai\": 10542,\n  \"jai</w>\": 13819,\n  \"jail\": 18574,\n  \"jail</w>\": 9332,\n  \"jailbreak</w>\": 45990,\n  \"jailed</w>\": 19456,\n  \"jails</w>\": 47833,\n  \"jaime</w>\": 24716,\n  \"jain</w>\": 21999,\n  \"jaipur</w>\": 23593,\n  \"jais\": 48607,\n  \"jait\": 28910,\n  \"jaitley</w>\": 32776,\n  \"jak\": 9225,\n  \"jak</w>\": 30589,\n  \"jakarta</w>\": 15471,\n  \"jake\": 13140,\n  \"jake</w>\": 7419,\n  \"jakob</w>\": 47358,\n  \"jal\": 8380,\n  \"jal</w>\": 26773,\n  \"jalan</w>\": 27270,\n  \"jalap\": 49081,\n  \"jalape\": 34263,\n  \"jalapeÃ±o</w>\": 43017,\n  \"jalen</w>\": 33548,\n  \"jam\": 1434,\n  \"jam</w>\": 5201,\n  \"jama\": 8977,\n  \"jama</w>\": 35366,\n  \"jamaica</w>\": 13019,\n  \"jamaican</w>\": 25144,\n  \"jamal</w>\": 26108,\n  \"jambo\": 35599,\n  \"jamboree</w>\": 38506,\n  \"jame\": 12341,\n  \"james\": 6963,\n  \"james</w>\": 2392,\n  \"jamesbond</w>\": 44704,\n  \"jamesc\": 47004,\n  \"jameson</w>\": 31731,\n  \"jami\": 15092,\n  \"jamie\": 16454,\n  \"jamie</w>\": 8078,\n  \"jamiedor\": 34310,\n  \"jamiedornan</w>\": 34896,\n  \"jammed</w>\": 35590,\n  \"jammin</w>\": 35223,\n  \"jamming</w>\": 25862,\n  \"jammu</w>\": 25926,\n  \"jams</w>\": 20243,\n  \"jan\": 1891,\n  \"jan</w>\": 3334,\n  \"jana</w>\": 18182,\n  \"jane\": 12389,\n  \"jane</w>\": 6736,\n  \"janeiro</w>\": 31740,\n  \"janet\": 29665,\n  \"janet</w>\": 15872,\n  \"jang\": 41526,\n  \"jang</w>\": 22074,\n  \"jani</w>\": 22606,\n  \"janice</w>\": 36048,\n  \"janine</w>\": 46896,\n  \"janis</w>\": 44233,\n  \"jann\": 35377,\n  \"jans</w>\": 22578,\n  \"jansen</w>\": 45354,\n  \"janu\": 3623,\n  \"january</w>\": 3697,\n  \"jap\": 2299,\n  \"jap</w>\": 49062,\n  \"japan\": 4502,\n  \"japan</w>\": 3400,\n  \"japanese\": 27211,\n  \"japanese</w>\": 4925,\n  \"japs</w>\": 42121,\n  \"jar\": 5120,\n  \"jar</w>\": 10837,\n  \"jard\": 25778,\n  \"jardin</w>\": 37371,\n  \"jare\": 17654,\n  \"jared\": 35597,\n  \"jared</w>\": 12571,\n  \"jaredle\": 36739,\n  \"jaredleto</w>\": 37106,\n  \"jaro</w>\": 35505,\n  \"jarpad</w>\": 44497,\n  \"jarre\": 23385,\n  \"jarrett</w>\": 30531,\n  \"jars</w>\": 27583,\n  \"jarvis</w>\": 29286,\n  \"jas\": 4492,\n  \"jas</w>\": 17559,\n  \"jasmin\": 42989,\n  \"jasmin</w>\": 47700,\n  \"jasmine</w>\": 17056,\n  \"jason\": 10009,\n  \"jason</w>\": 5395,\n  \"jasper</w>\": 19827,\n  \"jat\": 26106,\n  \"jau\": 26932,\n  \"jauregui</w>\": 48175,\n  \"jav\": 6234,\n  \"java</w>\": 12918,\n  \"javascri\": 16289,\n  \"javascript</w>\": 16423,\n  \"jave\": 46218,\n  \"javed</w>\": 42268,\n  \"javelin</w>\": 41701,\n  \"javi</w>\": 47627,\n  \"javier</w>\": 23307,\n  \"jaw\": 14804,\n  \"jaw</w>\": 17307,\n  \"jawa\": 44790,\n  \"jaws</w>\": 25491,\n  \"jax\": 22348,\n  \"jax</w>\": 12390,\n  \"jay\": 3427,\n  \"jay</w>\": 4155,\n  \"jaya</w>\": 21960,\n  \"jayanti</w>\": 37732,\n  \"jaye</w>\": 45703,\n  \"jayne</w>\": 35228,\n  \"jays</w>\": 12393,\n  \"jaz\": 3465,\n  \"jaz</w>\": 32874,\n  \"jazeera</w>\": 38260,\n  \"jazz\": 11488,\n  \"jazz</w>\": 4528,\n  \"jazzfest</w>\": 36683,\n  \"jazzy</w>\": 28191,\n  \"jb\": 21915,\n  \"jb</w>\": 13637,\n  \"jc\": 14991,\n  \"jc</w>\": 11517,\n  \"jd\": 18289,\n  \"jd</w>\": 14125,\n  \"jdm</w>\": 42013,\n  \"je\": 1013,\n  \"je</w>\": 8776,\n  \"jeal\": 9964,\n  \"jealous</w>\": 11093,\n  \"jealousy</w>\": 37654,\n  \"jean\": 13943,\n  \"jean</w>\": 6473,\n  \"jeanette</w>\": 48167,\n  \"jeanne</w>\": 29201,\n  \"jeans</w>\": 10157,\n  \"jeb</w>\": 35101,\n  \"jec\": 1347,\n  \"ject</w>\": 6070,\n  \"jed\": 12166,\n  \"jed</w>\": 38748,\n  \"jeddah</w>\": 40982,\n  \"jedi</w>\": 16681,\n  \"jee\": 29250,\n  \"jee</w>\": 14870,\n  \"jeep\": 16593,\n  \"jeep</w>\": 11286,\n  \"jeeplife</w>\": 43100,\n  \"jeet\": 45542,\n  \"jeet</w>\": 30944,\n  \"jef\": 10276,\n  \"jeff\": 6245,\n  \"jeff</w>\": 5550,\n  \"jefferson\": 44711,\n  \"jefferson</w>\": 13976,\n  \"jeffery</w>\": 41470,\n  \"jeffree\": 45994,\n  \"jeffrey\": 32886,\n  \"jeffrey</w>\": 16027,\n  \"jeho\": 42437,\n  \"jeky\": 43893,\n  \"jekyll</w>\": 49405,\n  \"jel\": 9794,\n  \"jelena</w>\": 48218,\n  \"jelly\": 19110,\n  \"jelly</w>\": 13762,\n  \"jellyfish</w>\": 30988,\n  \"jem\": 46326,\n  \"jem</w>\": 37530,\n  \"jen\": 2554,\n  \"jen</w>\": 12997,\n  \"jenkins</w>\": 16162,\n  \"jenn\": 33921,\n  \"jenn</w>\": 29869,\n  \"jenna</w>\": 17125,\n  \"jenner</w>\": 14260,\n  \"jenni\": 6774,\n  \"jennie</w>\": 28875,\n  \"jennifer\": 19786,\n  \"jennifer</w>\": 8613,\n  \"jennings</w>\": 21564,\n  \"jenny\": 20165,\n  \"jenny</w>\": 13414,\n  \"jens</w>\": 40806,\n  \"jensen\": 35558,\n  \"jensen</w>\": 19004,\n  \"jensenackles</w>\": 41011,\n  \"jeon\": 45200,\n  \"jeon</w>\": 43337,\n  \"jeong\": 47146,\n  \"jeong</w>\": 39264,\n  \"jeopar\": 22988,\n  \"jeopardy</w>\": 29613,\n  \"jer\": 2310,\n  \"jer</w>\": 35307,\n  \"jere\": 5614,\n  \"jeremi\": 22362,\n  \"jeremiah</w>\": 27301,\n  \"jeremy\": 14656,\n  \"jeremy</w>\": 8127,\n  \"jeremycorbyn</w>\": 37484,\n  \"jeric\": 25084,\n  \"jericho</w>\": 28892,\n  \"jerk</w>\": 23917,\n  \"jerky</w>\": 40079,\n  \"jermaine</w>\": 40722,\n  \"jerome</w>\": 19876,\n  \"jerry\": 18163,\n  \"jerry</w>\": 9164,\n  \"jersey\": 21921,\n  \"jersey</w>\": 4471,\n  \"jerseys</w>\": 15518,\n  \"jerus\": 12257,\n  \"jerusalem</w>\": 12557,\n  \"jes\": 7686,\n  \"jes</w>\": 35826,\n  \"jess\": 5313,\n  \"jess</w>\": 13758,\n  \"jesse\": 23112,\n  \"jesse</w>\": 11770,\n  \"jessi\": 24373,\n  \"jessic\": 14881,\n  \"jessica\": 45421,\n  \"jessica</w>\": 8178,\n  \"jessie</w>\": 19424,\n  \"jester</w>\": 44225,\n  \"jesu\": 19777,\n  \"jesuit</w>\": 33234,\n  \"jesus</w>\": 4070,\n  \"jet\": 11515,\n  \"jet</w>\": 6565,\n  \"jetblue</w>\": 45021,\n  \"jeter</w>\": 38450,\n  \"jets\": 38584,\n  \"jets</w>\": 10025,\n  \"jett</w>\": 44541,\n  \"jetty</w>\": 46382,\n  \"jew</w>\": 27450,\n  \"jewel\": 4880,\n  \"jewel</w>\": 17591,\n  \"jewell\": 9777,\n  \"jewellers</w>\": 46265,\n  \"jewellery</w>\": 11192,\n  \"jewelry\": 28018,\n  \"jewelry</w>\": 6039,\n  \"jewels</w>\": 20205,\n  \"jewish\": 29594,\n  \"jewish</w>\": 9104,\n  \"jews</w>\": 14200,\n  \"jf\": 31130,\n  \"jf</w>\": 33718,\n  \"jfc</w>\": 43652,\n  \"jfk</w>\": 18486,\n  \"jg\": 41986,\n  \"jg</w>\": 35138,\n  \"jh\": 24858,\n  \"jh</w>\": 21485,\n  \"jha\": 47012,\n  \"jha</w>\": 38092,\n  \"jhal\": 45695,\n  \"jhar\": 31546,\n  \"jharkhand</w>\": 39001,\n  \"jhb</w>\": 34631,\n  \"ji\": 3252,\n  \"ji</w>\": 2697,\n  \"jia</w>\": 32907,\n  \"jian</w>\": 33427,\n  \"jiang\": 43309,\n  \"jiang</w>\": 25762,\n  \"jic\": 48350,\n  \"jic</w>\": 40215,\n  \"jid</w>\": 24403,\n  \"jie</w>\": 40005,\n  \"jig\": 15136,\n  \"jig</w>\": 47430,\n  \"jigsaw</w>\": 32987,\n  \"jiha\": 23194,\n  \"jihad</w>\": 29637,\n  \"jihoon</w>\": 44765,\n  \"jil\": 36225,\n  \"jill\": 24136,\n  \"jill</w>\": 15254,\n  \"jillian</w>\": 37820,\n  \"jim\": 3190,\n  \"jim</w>\": 4550,\n  \"jima</w>\": 20679,\n  \"jimcantore</w>\": 43950,\n  \"jimenez</w>\": 35947,\n  \"jimi</w>\": 30565,\n  \"jimin</w>\": 16286,\n  \"jimmie</w>\": 45679,\n  \"jimmy\": 12215,\n  \"jimmy</w>\": 6817,\n  \"jimmyfallon</w>\": 45265,\n  \"jin\": 7927,\n  \"jin</w>\": 8485,\n  \"jind\": 40609,\n  \"jing\": 34933,\n  \"jing</w>\": 28607,\n  \"jingle</w>\": 28699,\n  \"jinnah</w>\": 43141,\n  \"jinping</w>\": 39308,\n  \"jinx</w>\": 42977,\n  \"jinyoung</w>\": 38051,\n  \"jio</w>\": 40501,\n  \"jis\": 25988,\n  \"jis</w>\": 23515,\n  \"jisoo</w>\": 43070,\n  \"jit\": 11947,\n  \"jit</w>\": 20308,\n  \"jitsu</w>\": 24530,\n  \"jiu\": 43351,\n  \"jiu</w>\": 44123,\n  \"jj\": 12502,\n  \"jj</w>\": 12790,\n  \"jk\": 20189,\n  \"jk</w>\": 9702,\n  \"jkt</w>\": 21494,\n  \"jl\": 25027,\n  \"jl</w>\": 22911,\n  \"jlo</w>\": 31017,\n  \"jm\": 24044,\n  \"jm</w>\": 18657,\n  \"jn\": 24576,\n  \"jn</w>\": 21717,\n  \"jnr</w>\": 37145,\n  \"jnu</w>\": 47142,\n  \"jo\": 683,\n  \"jo</w>\": 3804,\n  \"joachim</w>\": 48979,\n  \"joan\": 28064,\n  \"joan</w>\": 12710,\n  \"joann\": 35484,\n  \"joanna</w>\": 25357,\n  \"joanne\": 43736,\n  \"joanne</w>\": 25092,\n  \"joao</w>\": 45666,\n  \"joaqu\": 25140,\n  \"joaquin</w>\": 30745,\n  \"job\": 13114,\n  \"job</w>\": 2075,\n  \"jobs</w>\": 3735,\n  \"jobsearch</w>\": 45459,\n  \"joburg</w>\": 39343,\n  \"jocel\": 36879,\n  \"jocelyn</w>\": 47259,\n  \"jock</w>\": 34485,\n  \"jockey</w>\": 20126,\n  \"jodh\": 48689,\n  \"jodi\": 36812,\n  \"jodi</w>\": 26888,\n  \"jodie</w>\": 33100,\n  \"jody</w>\": 32959,\n  \"joe\": 9309,\n  \"joe</w>\": 3305,\n  \"joel\": 19819,\n  \"joel</w>\": 11429,\n  \"joes</w>\": 34756,\n  \"joey\": 16281,\n  \"joey</w>\": 10455,\n  \"jog\": 37967,\n  \"jog</w>\": 31691,\n  \"jogging</w>\": 37922,\n  \"joh\": 1201,\n  \"johan\": 17416,\n  \"johan</w>\": 27789,\n  \"johann</w>\": 31180,\n  \"johanna</w>\": 41494,\n  \"johannes</w>\": 37779,\n  \"johannesburg</w>\": 28377,\n  \"johansson</w>\": 41512,\n  \"johar</w>\": 34871,\n  \"john\": 2004,\n  \"john</w>\": 1742,\n  \"johncena</w>\": 46820,\n  \"johnnie</w>\": 47947,\n  \"johnny\": 14464,\n  \"johnny</w>\": 6904,\n  \"johns</w>\": 14515,\n  \"johnson\": 26036,\n  \"johnson</w>\": 4010,\n  \"johnston</w>\": 19791,\n  \"johnstone</w>\": 40766,\n  \"johor</w>\": 34750,\n  \"join\": 14737,\n  \"join</w>\": 1384,\n  \"joined</w>\": 4954,\n  \"joining</w>\": 5118,\n  \"joins</w>\": 5681,\n  \"joint</w>\": 6640,\n  \"jointhe\": 30422,\n  \"jointly</w>\": 37471,\n  \"joints</w>\": 27204,\n  \"jojo\": 41484,\n  \"jojo</w>\": 22075,\n  \"joke</w>\": 7198,\n  \"joker</w>\": 18200,\n  \"jokers</w>\": 44101,\n  \"jokes</w>\": 11336,\n  \"joking</w>\": 26112,\n  \"joko\": 44975,\n  \"jol\": 9174,\n  \"jol</w>\": 36470,\n  \"jolie</w>\": 31633,\n  \"jolla</w>\": 46109,\n  \"jolly</w>\": 21516,\n  \"jom\": 32152,\n  \"jon\": 3026,\n  \"jon</w>\": 6139,\n  \"jona\": 6629,\n  \"jonah\": 47934,\n  \"jonah</w>\": 27556,\n  \"jonas\": 42373,\n  \"jonas</w>\": 13650,\n  \"jonathan\": 19026,\n  \"jonathan</w>\": 7762,\n  \"jone\": 33934,\n  \"jones\": 19091,\n  \"jones</w>\": 3538,\n  \"jong\": 20214,\n  \"jong</w>\": 14726,\n  \"jonghyun</w>\": 29023,\n  \"jongin</w>\": 36957,\n  \"joni</w>\": 43177,\n  \"jonny\": 28454,\n  \"jonny</w>\": 21895,\n  \"joo\": 25807,\n  \"joo</w>\": 27680,\n  \"joom\": 47543,\n  \"joon</w>\": 18547,\n  \"joong</w>\": 26544,\n  \"jop\": 30486,\n  \"joplin</w>\": 42688,\n  \"jor\": 2482,\n  \"jor</w>\": 31595,\n  \"jordan\": 14644,\n  \"jordan</w>\": 4388,\n  \"jordani\": 46898,\n  \"jordi</w>\": 44795,\n  \"jorge\": 48761,\n  \"jorge</w>\": 18225,\n  \"jos\": 20560,\n  \"jos</w>\": 19661,\n  \"jose\": 4647,\n  \"jose</w>\": 7075,\n  \"josef</w>\": 36584,\n  \"josel\": 47800,\n  \"joseph\": 14163,\n  \"joseph</w>\": 6478,\n  \"josephine</w>\": 34866,\n  \"josh\": 9998,\n  \"josh</w>\": 5679,\n  \"joshi</w>\": 24786,\n  \"joshu\": 9112,\n  \"joshua</w>\": 11852,\n  \"josi\": 33583,\n  \"josie</w>\": 33167,\n  \"joss</w>\": 42834,\n  \"josÃ©</w>\": 27922,\n  \"jou\": 19921,\n  \"jou</w>\": 32029,\n  \"jour\": 2078,\n  \"jour</w>\": 17142,\n  \"journ\": 4563,\n  \"journal</w>\": 6626,\n  \"journalism</w>\": 10123,\n  \"journalist</w>\": 9914,\n  \"journalists</w>\": 12249,\n  \"journals</w>\": 24391,\n  \"journe\": 48833,\n  \"journey\": 32156,\n  \"journey</w>\": 3749,\n  \"journeys</w>\": 23329,\n  \"journo</w>\": 37034,\n  \"journos</w>\": 46437,\n  \"jovi</w>\": 33866,\n  \"joy\": 6308,\n  \"joy</w>\": 4273,\n  \"joyce\": 43753,\n  \"joyce</w>\": 15275,\n  \"joye\": 34052,\n  \"joyeux</w>\": 41876,\n  \"joyful</w>\": 24139,\n  \"joyous</w>\": 32245,\n  \"joyride</w>\": 46949,\n  \"joys</w>\": 22996,\n  \"jp\": 18249,\n  \"jp</w>\": 10557,\n  \"jpg</w>\": 36950,\n  \"jpn</w>\": 36212,\n  \"jr\": 13973,\n  \"jr</w>\": 3605,\n  \"js\": 46243,\n  \"js</w>\": 8006,\n  \"jst</w>\": 26523,\n  \"jt\": 39480,\n  \"jt</w>\": 18119,\n  \"ju\": 669,\n  \"ju</w>\": 9970,\n  \"jual</w>\": 38720,\n  \"juan\": 17148,\n  \"juan</w>\": 9274,\n  \"juana</w>\": 9081,\n  \"jubi\": 15485,\n  \"jubil\": 47743,\n  \"jubilee</w>\": 16907,\n  \"juco</w>\": 31570,\n  \"jud\": 8363,\n  \"juda\": 32478,\n  \"judah</w>\": 41066,\n  \"judaism</w>\": 42217,\n  \"judas</w>\": 39532,\n  \"judd</w>\": 29770,\n  \"judg\": 20012,\n  \"judge\": 16824,\n  \"judge</w>\": 5656,\n  \"judged</w>\": 33453,\n  \"judgement</w>\": 25246,\n  \"judges</w>\": 12575,\n  \"judging</w>\": 16570,\n  \"judgment</w>\": 24191,\n  \"judi\": 42546,\n  \"judice</w>\": 28032,\n  \"judicial</w>\": 19579,\n  \"judiciary</w>\": 24545,\n  \"judith</w>\": 24047,\n  \"judo</w>\": 27011,\n  \"judy\": 34663,\n  \"judy</w>\": 16510,\n  \"jug</w>\": 27619,\n  \"jugg\": 38628,\n  \"juic\": 38761,\n  \"juice\": 37954,\n  \"juice</w>\": 6916,\n  \"juices</w>\": 36757,\n  \"juicy</w>\": 17623,\n  \"juju</w>\": 43020,\n  \"juke\": 32519,\n  \"jukebox</w>\": 36411,\n  \"jul\": 34662,\n  \"jul</w>\": 15975,\n  \"jule\": 40819,\n  \"jules</w>\": 21996,\n  \"juli\": 3614,\n  \"juli</w>\": 49160,\n  \"julia</w>\": 10207,\n  \"julian\": 25459,\n  \"julian</w>\": 12643,\n  \"juliana</w>\": 46059,\n  \"julie\": 22534,\n  \"julie</w>\": 10505,\n  \"julien</w>\": 32595,\n  \"juliet</w>\": 20641,\n  \"juliette</w>\": 44804,\n  \"julio</w>\": 24888,\n  \"julius</w>\": 20870,\n  \"july</w>\": 2272,\n  \"jum\": 20791,\n  \"jumbo</w>\": 24678,\n  \"jume\": 45989,\n  \"jump\": 5519,\n  \"jump</w>\": 6423,\n  \"jumped</w>\": 16901,\n  \"jumper</w>\": 16558,\n  \"jumpers</w>\": 36485,\n  \"jumping</w>\": 11476,\n  \"jumpman</w>\": 48803,\n  \"jumps</w>\": 18911,\n  \"jumpsuit</w>\": 31044,\n  \"jun\": 1637,\n  \"jun</w>\": 7719,\n  \"junction</w>\": 11320,\n  \"june\": 23188,\n  \"june</w>\": 2345,\n  \"jung\": 13086,\n  \"jung</w>\": 13031,\n  \"jungkook</w>\": 20040,\n  \"jungle\": 42421,\n  \"jungle</w>\": 10865,\n  \"juni\": 4029,\n  \"junior\": 21167,\n  \"junior</w>\": 5027,\n  \"juniors</w>\": 16811,\n  \"juniper</w>\": 33829,\n  \"junk</w>\": 16000,\n  \"junkie</w>\": 27613,\n  \"junkies</w>\": 41207,\n  \"juno</w>\": 28845,\n  \"junto</w>\": 34282,\n  \"jupit\": 15270,\n  \"jupiter</w>\": 16212,\n  \"jur\": 15896,\n  \"jura\": 14715,\n  \"jurassic\": 28844,\n  \"jurassic</w>\": 21255,\n  \"jurgen</w>\": 39263,\n  \"juris\": 37010,\n  \"jurisdic\": 37714,\n  \"jury</w>\": 12931,\n  \"jus</w>\": 14999,\n  \"just\": 1770,\n  \"just</w>\": 761,\n  \"justi\": 14700,\n  \"justic\": 30399,\n  \"justice\": 16904,\n  \"justice</w>\": 3604,\n  \"justicefor\": 25812,\n  \"justiceleague</w>\": 41929,\n  \"justices</w>\": 44356,\n  \"justified</w>\": 34546,\n  \"justify</w>\": 28192,\n  \"justin\": 7537,\n  \"justin</w>\": 4394,\n  \"justinbieber</w>\": 12501,\n  \"justine</w>\": 34418,\n  \"justintrudeau</w>\": 32184,\n  \"justsaying</w>\": 42922,\n  \"juve\": 47717,\n  \"juve</w>\": 23092,\n  \"juven\": 12944,\n  \"juvenile</w>\": 19333,\n  \"juvent\": 13908,\n  \"juventus\": 47378,\n  \"juventus</w>\": 16208,\n  \"jux\": 33552,\n  \"juxta\": 34964,\n  \"jv\": 37932,\n  \"jv</w>\": 11805,\n  \"jw\": 30221,\n  \"jw</w>\": 24215,\n  \"jy\": 20979,\n  \"jyo\": 27378,\n  \"jyoti</w>\": 48696,\n  \"jÃ¤\": 45381,\n  \"k\": 74,\n  \"k</w>\": 330,\n  \"ka\": 1595,\n  \"ka</w>\": 1525,\n  \"kaa</w>\": 34496,\n  \"kab\": 6554,\n  \"kab</w>\": 45134,\n  \"kabaddi</w>\": 41749,\n  \"kabir</w>\": 38619,\n  \"kabo\": 47974,\n  \"kabul</w>\": 26160,\n  \"kac\": 21693,\n  \"kach\": 14341,\n  \"kad\": 10901,\n  \"kade</w>\": 41130,\n  \"kaduna</w>\": 38053,\n  \"kae\": 22542,\n  \"kaeper\": 30070,\n  \"kaepernick</w>\": 30713,\n  \"kaf\": 19870,\n  \"kag\": 13666,\n  \"kag</w>\": 31003,\n  \"kah\": 16068,\n  \"kah</w>\": 15463,\n  \"kahn</w>\": 35397,\n  \"kai\": 12752,\n  \"kai</w>\": 9601,\n  \"kaido</w>\": 40255,\n  \"kail\": 23623,\n  \"kaine</w>\": 39028,\n  \"kair\": 33027,\n  \"kaiser\": 43685,\n  \"kaiser</w>\": 29960,\n  \"kait\": 19326,\n  \"kaitlyn</w>\": 34948,\n  \"kaj\": 44788,\n  \"kaj</w>\": 40381,\n  \"kak\": 10401,\n  \"kak</w>\": 40128,\n  \"kaka</w>\": 47689,\n  \"kaku</w>\": 30900,\n  \"kal\": 4187,\n  \"kal</w>\": 18712,\n  \"kala\": 45453,\n  \"kala</w>\": 33105,\n  \"kalam</w>\": 40142,\n  \"kalamaz\": 42328,\n  \"kalamazoo</w>\": 46264,\n  \"kalb</w>\": 34483,\n  \"kale\": 17162,\n  \"kale</w>\": 16625,\n  \"kaleido\": 41144,\n  \"kali\": 17844,\n  \"kali</w>\": 26964,\n  \"kalin\": 42776,\n  \"kalyan</w>\": 23825,\n  \"kam\": 4104,\n  \"kam</w>\": 26011,\n  \"kamal\": 31371,\n  \"kamal</w>\": 28619,\n  \"kamala</w>\": 45003,\n  \"kame\": 45235,\n  \"kamen</w>\": 40738,\n  \"kami</w>\": 28707,\n  \"kamloops</w>\": 36602,\n  \"kamp\": 35179,\n  \"kamp</w>\": 29522,\n  \"kampala</w>\": 37134,\n  \"kan\": 2532,\n  \"kan</w>\": 8101,\n  \"kana</w>\": 35178,\n  \"kand\": 17478,\n  \"kane\": 32218,\n  \"kane</w>\": 9765,\n  \"kang\": 12226,\n  \"kang</w>\": 20789,\n  \"kangar\": 20622,\n  \"kangaroo</w>\": 25513,\n  \"kani\": 40907,\n  \"kani</w>\": 41948,\n  \"kann\": 18533,\n  \"kannada</w>\": 30053,\n  \"kano</w>\": 28201,\n  \"kans</w>\": 34012,\n  \"kansas\": 25507,\n  \"kansas</w>\": 6539,\n  \"kansascity</w>\": 46134,\n  \"kant\": 39923,\n  \"kant</w>\": 47132,\n  \"kanth</w>\": 24427,\n  \"kanu</w>\": 44565,\n  \"kany\": 13590,\n  \"kanye\": 29680,\n  \"kanye</w>\": 14965,\n  \"kanyewest</w>\": 31943,\n  \"kap\": 6804,\n  \"kap</w>\": 45279,\n  \"kapam\": 48561,\n  \"kapil\": 32337,\n  \"kapil</w>\": 42709,\n  \"kapilshar\": 48978,\n  \"kaplan</w>\": 37401,\n  \"kapoor</w>\": 9117,\n  \"kapp\": 36717,\n  \"kappa</w>\": 20239,\n  \"kapur</w>\": 42371,\n  \"kar\": 1813,\n  \"kar</w>\": 5933,\n  \"kara</w>\": 12552,\n  \"karab\": 40916,\n  \"karachi</w>\": 13671,\n  \"karak\": 40372,\n  \"karan\": 20077,\n  \"karan</w>\": 20931,\n  \"karanjohar</w>\": 47621,\n  \"karao\": 16262,\n  \"karaoke</w>\": 16640,\n  \"karate</w>\": 21211,\n  \"kardashi\": 13619,\n  \"kardashian</w>\": 14578,\n  \"kare\": 14310,\n  \"kare</w>\": 38354,\n  \"kareem</w>\": 38885,\n  \"kareena</w>\": 41569,\n  \"karen\": 17719,\n  \"karen</w>\": 10349,\n  \"kari\": 15339,\n  \"kari</w>\": 15161,\n  \"karim</w>\": 33477,\n  \"karin</w>\": 43917,\n  \"karina</w>\": 40250,\n  \"karl\": 20967,\n  \"karl</w>\": 13134,\n  \"karla</w>\": 42309,\n  \"karma</w>\": 17658,\n  \"karnat\": 13994,\n  \"karnataka</w>\": 15515,\n  \"karo</w>\": 45305,\n  \"kart\": 47841,\n  \"kart</w>\": 21310,\n  \"karthik</w>\": 41397,\n  \"karti\": 23053,\n  \"kartikeyan</w>\": 32584,\n  \"karting</w>\": 41655,\n  \"kas\": 6119,\n  \"kas</w>\": 14372,\n  \"kasa</w>\": 46111,\n  \"kash\": 6954,\n  \"kash</w>\": 21371,\n  \"kashi\": 47945,\n  \"kashmir\": 20251,\n  \"kashmir</w>\": 10783,\n  \"kashmiri</w>\": 35331,\n  \"kasi\": 45870,\n  \"kasi</w>\": 32819,\n  \"kasich</w>\": 39666,\n  \"kat\": 2844,\n  \"kat</w>\": 9341,\n  \"kata</w>\": 14558,\n  \"kate\": 11620,\n  \"kate</w>\": 6699,\n  \"katelyn</w>\": 45963,\n  \"kath\": 7386,\n  \"kath</w>\": 19745,\n  \"katharine</w>\": 41473,\n  \"katherine</w>\": 17687,\n  \"kathle\": 18721,\n  \"kathleen</w>\": 21709,\n  \"kathmandu</w>\": 34456,\n  \"kathniel</w>\": 36159,\n  \"kathr\": 14905,\n  \"kathryn\": 33142,\n  \"kathryn</w>\": 19999,\n  \"kathy\": 34775,\n  \"kathy</w>\": 18795,\n  \"kati\": 6515,\n  \"kati</w>\": 29928,\n  \"katic</w>\": 48058,\n  \"katie\": 24117,\n  \"katie</w>\": 9076,\n  \"katniss</w>\": 47916,\n  \"kato</w>\": 27573,\n  \"katrin\": 31282,\n  \"katrina</w>\": 21397,\n  \"katrinakaif</w>\": 45845,\n  \"kats</w>\": 44213,\n  \"katsu\": 49296,\n  \"katsu</w>\": 43712,\n  \"katy\": 17609,\n  \"katy</w>\": 14435,\n  \"katyperry</w>\": 28309,\n  \"katz</w>\": 30790,\n  \"kau\": 9299,\n  \"kau</w>\": 36895,\n  \"kauai</w>\": 44050,\n  \"kaufman</w>\": 37188,\n  \"kaur</w>\": 30518,\n  \"kav\": 10228,\n  \"kavan\": 18576,\n  \"kavanaugh</w>\": 20252,\n  \"kaw\": 10842,\n  \"kaw</w>\": 42719,\n  \"kawa</w>\": 33244,\n  \"kawaii</w>\": 26891,\n  \"kawasaki</w>\": 28227,\n  \"kawhi</w>\": 41220,\n  \"kay\": 4673,\n  \"kay</w>\": 9862,\n  \"kaya</w>\": 22752,\n  \"kayak</w>\": 27043,\n  \"kayaking</w>\": 28977,\n  \"kaye</w>\": 33003,\n  \"kayla</w>\": 17139,\n  \"kaylee</w>\": 47215,\n  \"kayo</w>\": 37021,\n  \"kaz\": 8812,\n  \"kaz</w>\": 39622,\n  \"kazakh\": 25451,\n  \"kazakhstan</w>\": 26720,\n  \"kazan</w>\": 47641,\n  \"kb\": 27381,\n  \"kb</w>\": 19960,\n  \"kbs</w>\": 27418,\n  \"kc\": 10869,\n  \"kc</w>\": 8638,\n  \"kca</w>\": 14347,\n  \"kcon</w>\": 39970,\n  \"kcr\": 46181,\n  \"kd\": 21826,\n  \"kd</w>\": 15597,\n  \"kday</w>\": 31074,\n  \"kdrama</w>\": 48628,\n  \"ke\": 643,\n  \"ke</w>\": 618,\n  \"kea</w>\": 47926,\n  \"kean\": 43288,\n  \"keane</w>\": 28635,\n  \"keanu</w>\": 40608,\n  \"kear\": 21562,\n  \"kearney</w>\": 36435,\n  \"keating</w>\": 40045,\n  \"keaton</w>\": 29975,\n  \"kebab</w>\": 36497,\n  \"ked\": 11730,\n  \"ked</w>\": 1243,\n  \"kee\": 9724,\n  \"kee</w>\": 6760,\n  \"keef</w>\": 42323,\n  \"keefe</w>\": 46965,\n  \"keegan</w>\": 31122,\n  \"keel</w>\": 48376,\n  \"keen\": 17714,\n  \"keen</w>\": 13218,\n  \"keenan</w>\": 36276,\n  \"keep\": 2924,\n  \"keep</w>\": 1726,\n  \"keeper</w>\": 7650,\n  \"keepers</w>\": 16130,\n  \"keepin</w>\": 41712,\n  \"keeping\": 38371,\n  \"keeping</w>\": 4873,\n  \"keepit\": 28044,\n  \"keeps</w>\": 6333,\n  \"keer\": 27412,\n  \"keerth\": 47500,\n  \"keerthyofficial</w>\": 48185,\n  \"kees</w>\": 10791,\n  \"keg</w>\": 32785,\n  \"keh\": 41272,\n  \"keh</w>\": 36983,\n  \"kei\": 18735,\n  \"kei</w>\": 24835,\n  \"keith\": 18762,\n  \"keith</w>\": 8252,\n  \"kej\": 15674,\n  \"kejri\": 16617,\n  \"kejriwal</w>\": 17334,\n  \"keke</w>\": 39195,\n  \"kel\": 2825,\n  \"kel</w>\": 7553,\n  \"kele\": 41765,\n  \"kell\": 16082,\n  \"kell</w>\": 40103,\n  \"keller</w>\": 21407,\n  \"kelley</w>\": 23776,\n  \"kelli\": 45852,\n  \"kelli</w>\": 46190,\n  \"kellie</w>\": 49224,\n  \"kellogg</w>\": 44218,\n  \"kelly\": 13417,\n  \"kelly</w>\": 5220,\n  \"kelown\": 31708,\n  \"kelowna</w>\": 32963,\n  \"kelsey\": 42295,\n  \"kelsey</w>\": 23018,\n  \"kelvin</w>\": 32859,\n  \"kem\": 31013,\n  \"kem</w>\": 17349,\n  \"kemp\": 18302,\n  \"kemp</w>\": 25325,\n  \"ken\": 1838,\n  \"ken</w>\": 1702,\n  \"kend\": 7497,\n  \"kendal</w>\": 44836,\n  \"kendall\": 34607,\n  \"kendall</w>\": 16238,\n  \"kendra</w>\": 36074,\n  \"kendrick\": 41787,\n  \"kendrick</w>\": 21953,\n  \"kendricklamar</w>\": 47020,\n  \"kenne\": 6209,\n  \"kennedy\": 38631,\n  \"kennedy</w>\": 9004,\n  \"kennel</w>\": 39595,\n  \"kenneth\": 46900,\n  \"kenneth</w>\": 17839,\n  \"kenney</w>\": 41373,\n  \"kenny\": 20185,\n  \"kenny</w>\": 9595,\n  \"kens</w>\": 29765,\n  \"kensing\": 21505,\n  \"kensington</w>\": 24988,\n  \"kent\": 13875,\n  \"kent</w>\": 8214,\n  \"kentu\": 9045,\n  \"kentucky\": 32230,\n  \"kentucky</w>\": 10014,\n  \"keny\": 17374,\n  \"kenya</w>\": 6181,\n  \"kenyan</w>\": 22624,\n  \"kenyans</w>\": 36263,\n  \"kenyatta</w>\": 31012,\n  \"kenzie</w>\": 38087,\n  \"keo\": 43062,\n  \"kept</w>\": 7737,\n  \"ker\": 2352,\n  \"ker</w>\": 1485,\n  \"keral\": 35122,\n  \"kerala</w>\": 11881,\n  \"kered</w>\": 26690,\n  \"kerel</w>\": 32232,\n  \"keri</w>\": 43447,\n  \"kermit</w>\": 40908,\n  \"kern</w>\": 40150,\n  \"kernel</w>\": 40684,\n  \"kerr</w>\": 20491,\n  \"kerri\": 41849,\n  \"kerry\": 24795,\n  \"kerry</w>\": 13097,\n  \"kers\": 30347,\n  \"kers</w>\": 2880,\n  \"kershaw</w>\": 40785,\n  \"kerson</w>\": 42810,\n  \"kerswednesday</w>\": 48152,\n  \"kert</w>\": 47279,\n  \"kes\": 38398,\n  \"kes</w>\": 1115,\n  \"kesh</w>\": 19751,\n  \"kesha</w>\": 36526,\n  \"kest</w>\": 15080,\n  \"ket\": 2715,\n  \"ket</w>\": 1236,\n  \"ketball</w>\": 38240,\n  \"ketch\": 22590,\n  \"ketch</w>\": 35371,\n  \"ketchup</w>\": 26724,\n  \"kete\": 25404,\n  \"keted</w>\": 41396,\n  \"keting</w>\": 15951,\n  \"keto\": 27485,\n  \"keto</w>\": 28754,\n  \"kets</w>\": 1632,\n  \"kett\": 23124,\n  \"kett</w>\": 10312,\n  \"kettering</w>\": 43779,\n  \"kettle\": 41992,\n  \"kettle</w>\": 24303,\n  \"kev\": 22758,\n  \"kev</w>\": 29419,\n  \"kevin\": 9419,\n  \"kevin</w>\": 4685,\n  \"kew\": 38014,\n  \"kew</w>\": 31409,\n  \"kex\": 30251,\n  \"key\": 2891,\n  \"key</w>\": 1458,\n  \"keyan</w>\": 27617,\n  \"keyboard</w>\": 13017,\n  \"keyboards</w>\": 49237,\n  \"keychain</w>\": 31050,\n  \"keye\": 40516,\n  \"keye</w>\": 20635,\n  \"keyes</w>\": 18336,\n  \"keynes</w>\": 32462,\n  \"keynote</w>\": 7556,\n  \"keys\": 48912,\n  \"keys</w>\": 6355,\n  \"keystone</w>\": 30688,\n  \"keyword</w>\": 42284,\n  \"keywords</w>\": 48122,\n  \"kf\": 33308,\n  \"kf</w>\": 42119,\n  \"kfc</w>\": 22032,\n  \"kg\": 36772,\n  \"kg</w>\": 7817,\n  \"kgs</w>\": 46629,\n  \"kh\": 2166,\n  \"kh</w>\": 7452,\n  \"kha\": 7333,\n  \"kha</w>\": 18929,\n  \"khair\": 43742,\n  \"khaki</w>\": 41646,\n  \"khal\": 13070,\n  \"khaled</w>\": 29343,\n  \"khali\": 11324,\n  \"khalid</w>\": 27166,\n  \"khalifa</w>\": 21389,\n  \"khalil</w>\": 36229,\n  \"kham\": 24892,\n  \"khan\": 13318,\n  \"khan</w>\": 3873,\n  \"khand\": 43384,\n  \"khand</w>\": 31110,\n  \"khanna</w>\": 29931,\n  \"khar\": 18340,\n  \"khar</w>\": 28578,\n  \"khart</w>\": 37458,\n  \"khat\": 43290,\n  \"khe\": 26360,\n  \"kher</w>\": 43843,\n  \"khi\": 39062,\n  \"khi</w>\": 42925,\n  \"khil\": 34101,\n  \"khloe</w>\": 45312,\n  \"kho\": 14022,\n  \"kho</w>\": 28774,\n  \"khou</w>\": 30656,\n  \"khs</w>\": 21239,\n  \"khtar</w>\": 45593,\n  \"khu\": 14041,\n  \"khur\": 32083,\n  \"khy\": 40917,\n  \"khz</w>\": 45604,\n  \"ki\": 848,\n  \"ki</w>\": 2608,\n  \"kia</w>\": 8712,\n  \"kian\": 43961,\n  \"kian</w>\": 25708,\n  \"kians</w>\": 44010,\n  \"kib\": 43108,\n  \"kiba\": 37207,\n  \"kic\": 24003,\n  \"kic</w>\": 27633,\n  \"kicchasu\": 44665,\n  \"kicchasudeep</w>\": 45560,\n  \"kick\": 4102,\n  \"kick</w>\": 4289,\n  \"kickass</w>\": 39299,\n  \"kickboxing</w>\": 36041,\n  \"kicked</w>\": 12479,\n  \"kicker</w>\": 26338,\n  \"kickin</w>\": 34597,\n  \"kicking</w>\": 7802,\n  \"kickoff</w>\": 10245,\n  \"kicks</w>\": 6989,\n  \"kickstart</w>\": 40780,\n  \"kickstarter</w>\": 13228,\n  \"kid\": 3948,\n  \"kid</w>\": 3551,\n  \"kidd</w>\": 24082,\n  \"kidding</w>\": 14535,\n  \"kiddo</w>\": 36360,\n  \"kiddos</w>\": 29205,\n  \"kidlit\": 39064,\n  \"kidlit</w>\": 33515,\n  \"kidlitart</w>\": 41600,\n  \"kidman</w>\": 44931,\n  \"kidnap</w>\": 45100,\n  \"kidnapp\": 16183,\n  \"kidnapped</w>\": 24737,\n  \"kidnapping</w>\": 32361,\n  \"kidney\": 37835,\n  \"kidney</w>\": 14610,\n  \"kids\": 15561,\n  \"kids</w>\": 1911,\n  \"kidz</w>\": 41938,\n  \"kie\": 8544,\n  \"kie</w>\": 3094,\n  \"kiefer</w>\": 48026,\n  \"kiel\": 40940,\n  \"kiel</w>\": 25509,\n  \"kien</w>\": 28782,\n  \"kier\": 20403,\n  \"kier</w>\": 35575,\n  \"kieran</w>\": 29231,\n  \"kies\": 36601,\n  \"kies</w>\": 4993,\n  \"kiest</w>\": 29755,\n  \"kiev</w>\": 24585,\n  \"kiewicz</w>\": 47574,\n  \"kigali</w>\": 40278,\n  \"kii</w>\": 39340,\n  \"kik</w>\": 36176,\n  \"kiki</w>\": 23962,\n  \"kiko</w>\": 40861,\n  \"kil\": 4912,\n  \"kil</w>\": 39337,\n  \"kildare</w>\": 45541,\n  \"kili\": 24386,\n  \"kilig</w>\": 49172,\n  \"kilimanjaro</w>\": 43470,\n  \"kilkenny</w>\": 33805,\n  \"kill\": 6163,\n  \"kill</w>\": 4367,\n  \"killa</w>\": 41355,\n  \"killarney</w>\": 48813,\n  \"killed</w>\": 3733,\n  \"killer\": 28230,\n  \"killer</w>\": 6613,\n  \"killers</w>\": 17614,\n  \"killin</w>\": 25903,\n  \"killing\": 37977,\n  \"killing</w>\": 5923,\n  \"killings</w>\": 24918,\n  \"kills</w>\": 9795,\n  \"kiln</w>\": 44150,\n  \"kilo\": 39281,\n  \"kilom\": 26285,\n  \"kilometers</w>\": 39192,\n  \"kilometres</w>\": 43278,\n  \"kilt</w>\": 49319,\n  \"kim\": 4639,\n  \"kim</w>\": 4606,\n  \"kimber\": 16796,\n  \"kimberley</w>\": 39859,\n  \"kimberly</w>\": 27465,\n  \"kimchi</w>\": 41027,\n  \"kimi</w>\": 31536,\n  \"kimkardashian</w>\": 35400,\n  \"kimmel</w>\": 27820,\n  \"kimono</w>\": 40024,\n  \"kin\": 1442,\n  \"kin</w>\": 2667,\n  \"kina</w>\": 28518,\n  \"kind\": 7204,\n  \"kind</w>\": 3044,\n  \"kinda</w>\": 6612,\n  \"kinder\": 12711,\n  \"kinder</w>\": 24159,\n  \"kindergarten</w>\": 16749,\n  \"kindle\": 24704,\n  \"kindle</w>\": 10746,\n  \"kindleunlimited</w>\": 32164,\n  \"kindly</w>\": 13952,\n  \"kindness\": 45112,\n  \"kindness</w>\": 10614,\n  \"kinds</w>\": 14879,\n  \"kine\": 17607,\n  \"kineni</w>\": 49080,\n  \"kinetic</w>\": 37699,\n  \"king\": 2365,\n  \"king</w>\": 674,\n  \"kingdom\": 21870,\n  \"kingdom</w>\": 7364,\n  \"kingdomhearts</w>\": 48570,\n  \"kingdoms</w>\": 43890,\n  \"kingfisher</w>\": 34330,\n  \"kingjames</w>\": 33153,\n  \"kingly</w>\": 33642,\n  \"kingof\": 27878,\n  \"kings\": 18590,\n  \"kings</w>\": 4232,\n  \"kingsley</w>\": 41807,\n  \"kingston\": 40736,\n  \"kingston</w>\": 15393,\n  \"kini</w>\": 41644,\n  \"kinky</w>\": 37006,\n  \"kinney</w>\": 37233,\n  \"kino</w>\": 39000,\n  \"kins\": 31060,\n  \"kins</w>\": 4386,\n  \"kinson</w>\": 12095,\n  \"kio\": 28210,\n  \"kio</w>\": 39401,\n  \"kiosk</w>\": 39146,\n  \"kip\": 27636,\n  \"kip</w>\": 15986,\n  \"kipp\": 43329,\n  \"kir\": 3476,\n  \"kir</w>\": 32949,\n  \"kira</w>\": 33038,\n  \"kiran\": 43234,\n  \"kiran</w>\": 36603,\n  \"kirby</w>\": 17065,\n  \"kiri\": 34170,\n  \"kiri</w>\": 45826,\n  \"kirk\": 10639,\n  \"kirk</w>\": 11508,\n  \"kirkland</w>\": 43061,\n  \"kiro</w>\": 39749,\n  \"kirstel</w>\": 46483,\n  \"kirsten</w>\": 31813,\n  \"kirsty</w>\": 37787,\n  \"kis\": 3199,\n  \"kis</w>\": 22796,\n  \"kish\": 25662,\n  \"kiss\": 43757,\n  \"kiss</w>\": 5946,\n  \"kissed</w>\": 22561,\n  \"kisses\": 47876,\n  \"kisses</w>\": 11220,\n  \"kissing</w>\": 18637,\n  \"kistan</w>\": 29580,\n  \"kit\": 4566,\n  \"kit</w>\": 4274,\n  \"kita</w>\": 29961,\n  \"kitch\": 3850,\n  \"kitchen\": 18131,\n  \"kitchen</w>\": 4485,\n  \"kitchener</w>\": 34428,\n  \"kitchens</w>\": 28301,\n  \"kite\": 47777,\n  \"kite</w>\": 19867,\n  \"kites</w>\": 45829,\n  \"kits</w>\": 13730,\n  \"kitt\": 10840,\n  \"kitten</w>\": 13063,\n  \"kittens</w>\": 17216,\n  \"kitties</w>\": 36013,\n  \"kitty\": 25067,\n  \"kitty</w>\": 8417,\n  \"kiwan\": 38709,\n  \"kiwanis</w>\": 46513,\n  \"kiwi</w>\": 22440,\n  \"kiwis</w>\": 48108,\n  \"kiya</w>\": 41610,\n  \"kj\": 27385,\n  \"kj</w>\": 28238,\n  \"kja\": 41048,\n  \"kjv</w>\": 37387,\n  \"kk\": 4390,\n  \"kk</w>\": 10849,\n  \"kka</w>\": 19002,\n  \"kke</w>\": 44239,\n  \"kker</w>\": 32399,\n  \"kki</w>\": 44672,\n  \"kkk</w>\": 20073,\n  \"kkkk\": 15834,\n  \"kkkk</w>\": 47160,\n  \"kkkkkkkk\": 31042,\n  \"kko</w>\": 43965,\n  \"kkr</w>\": 40855,\n  \"kl\": 8498,\n  \"kl</w>\": 14134,\n  \"kla\": 11249,\n  \"klan</w>\": 46935,\n  \"klar\": 41374,\n  \"klaus</w>\": 31788,\n  \"kle\": 7612,\n  \"kle</w>\": 7432,\n  \"klein\": 33475,\n  \"klein</w>\": 17579,\n  \"kley</w>\": 18594,\n  \"kli\": 31640,\n  \"klin\": 44809,\n  \"klin</w>\": 41647,\n  \"kline</w>\": 47580,\n  \"kling\": 40270,\n  \"klm</w>\": 38859,\n  \"klo\": 15296,\n  \"klopp</w>\": 26446,\n  \"kltu</w>\": 25978,\n  \"klu\": 21852,\n  \"kly</w>\": 45090,\n  \"km\": 29954,\n  \"km</w>\": 4590,\n  \"kman</w>\": 33312,\n  \"kms</w>\": 24996,\n  \"kn\": 4825,\n  \"kn</w>\": 23693,\n  \"knapp</w>\": 33945,\n  \"kne\": 6358,\n  \"knee</w>\": 9897,\n  \"knees</w>\": 19115,\n  \"kner</w>\": 31578,\n  \"knew</w>\": 5009,\n  \"kni\": 6312,\n  \"knick\": 33286,\n  \"knicks</w>\": 17657,\n  \"knife\": 44176,\n  \"knife</w>\": 8960,\n  \"knigh\": 43099,\n  \"knight\": 17949,\n  \"knight</w>\": 7355,\n  \"knights</w>\": 10385,\n  \"knit\": 18745,\n  \"knit</w>\": 14313,\n  \"knitted</w>\": 28151,\n  \"knitting</w>\": 18863,\n  \"knives</w>\": 20910,\n  \"kno\": 1482,\n  \"kno</w>\": 25362,\n  \"knob</w>\": 29736,\n  \"knobs</w>\": 47504,\n  \"knock\": 14195,\n  \"knock</w>\": 11583,\n  \"knocked</w>\": 15325,\n  \"knocking</w>\": 20380,\n  \"knockout</w>\": 22602,\n  \"knocks</w>\": 24296,\n  \"knoll</w>\": 43882,\n  \"knot</w>\": 18412,\n  \"knots</w>\": 32428,\n  \"know\": 4179,\n  \"know</w>\": 1038,\n  \"knowing</w>\": 9267,\n  \"knowledge\": 27864,\n  \"knowledge</w>\": 5510,\n  \"knowledgeable</w>\": 43391,\n  \"knowles</w>\": 32631,\n  \"known</w>\": 3102,\n  \"knows</w>\": 4309,\n  \"knowyour\": 30773,\n  \"knox\": 18630,\n  \"knox</w>\": 21833,\n  \"knoxville</w>\": 23232,\n  \"knu\": 14812,\n  \"knuck\": 21333,\n  \"knuckle</w>\": 42023,\n  \"knuckles</w>\": 40127,\n  \"knw</w>\": 40803,\n  \"ko\": 1313,\n  \"ko</w>\": 2448,\n  \"koala</w>\": 36654,\n  \"kobe\": 42644,\n  \"kobe</w>\": 14470,\n  \"kobo</w>\": 42390,\n  \"koch</w>\": 25331,\n  \"kochi</w>\": 36710,\n  \"kodak</w>\": 30425,\n  \"kodi\": 46611,\n  \"kof\": 17528,\n  \"koff</w>\": 47303,\n  \"kofi</w>\": 40400,\n  \"koh\": 13379,\n  \"koh</w>\": 31216,\n  \"kohl</w>\": 48479,\n  \"kohli</w>\": 17549,\n  \"koi</w>\": 28150,\n  \"kojima</w>\": 46419,\n  \"kok\": 32045,\n  \"kok</w>\": 11225,\n  \"koko\": 42426,\n  \"koko</w>\": 40003,\n  \"kol\": 7142,\n  \"kol</w>\": 31023,\n  \"kolkata</w>\": 18011,\n  \"kom\": 6686,\n  \"kom</w>\": 24181,\n  \"kombat</w>\": 29670,\n  \"kombucha</w>\": 48615,\n  \"komo</w>\": 31820,\n  \"kon\": 5743,\n  \"kon</w>\": 29519,\n  \"kona</w>\": 30203,\n  \"kong\": 31784,\n  \"kong</w>\": 6506,\n  \"konstant\": 46583,\n  \"koo\": 12225,\n  \"koo</w>\": 40472,\n  \"kook</w>\": 16003,\n  \"kool\": 36755,\n  \"kool</w>\": 26444,\n  \"kop\": 16623,\n  \"kop</w>\": 38999,\n  \"kor\": 6428,\n  \"kor</w>\": 24175,\n  \"kore\": 3919,\n  \"korea</w>\": 5915,\n  \"korean\": 31949,\n  \"korean</w>\": 8034,\n  \"kori</w>\": 42842,\n  \"korn\": 45412,\n  \"korn</w>\": 31492,\n  \"kors</w>\": 34535,\n  \"kos\": 47438,\n  \"kos</w>\": 22951,\n  \"kosh</w>\": 45233,\n  \"kosher</w>\": 36502,\n  \"koso\": 23892,\n  \"kosovo</w>\": 28343,\n  \"kot\": 23323,\n  \"kot</w>\": 20701,\n  \"kota</w>\": 21735,\n  \"koto\": 40945,\n  \"koto</w>\": 29977,\n  \"kou\": 18502,\n  \"kou</w>\": 39614,\n  \"kour\": 34134,\n  \"kov\": 17733,\n  \"kov</w>\": 15156,\n  \"kova</w>\": 26185,\n  \"koval\": 47903,\n  \"kovic</w>\": 16886,\n  \"kovich</w>\": 44794,\n  \"kovsky</w>\": 33384,\n  \"kow\": 29764,\n  \"kow</w>\": 23919,\n  \"kowski</w>\": 17649,\n  \"koz\": 29598,\n  \"kp\": 16174,\n  \"kp</w>\": 16894,\n  \"kpa</w>\": 38759,\n  \"kph</w>\": 41138,\n  \"kpk</w>\": 42094,\n  \"kpmg</w>\": 38243,\n  \"kpop\": 29534,\n  \"kpop</w>\": 15859,\n  \"kprc</w>\": 47832,\n  \"kprs</w>\": 46253,\n  \"kr\": 7309,\n  \"kr</w>\": 14107,\n  \"kra\": 5762,\n  \"kraft</w>\": 28057,\n  \"kraja</w>\": 29016,\n  \"kraken</w>\": 48408,\n  \"krakow</w>\": 40033,\n  \"kram\": 19075,\n  \"kramer</w>\": 27495,\n  \"kran\": 33243,\n  \"kranti</w>\": 47969,\n  \"krat\": 30470,\n  \"kre\": 8362,\n  \"kreme</w>\": 43140,\n  \"kremlin</w>\": 33979,\n  \"kri\": 3679,\n  \"kris\": 35251,\n  \"kris</w>\": 12261,\n  \"krish\": 11487,\n  \"krishna</w>\": 15863,\n  \"krishnan</w>\": 46535,\n  \"krispy</w>\": 49292,\n  \"krist\": 16490,\n  \"kristen\": 28881,\n  \"kristen</w>\": 16644,\n  \"kristi\": 26895,\n  \"kristin\": 35408,\n  \"kristin</w>\": 26785,\n  \"kristina</w>\": 33180,\n  \"krit\": 36265,\n  \"kro\": 16193,\n  \"kroger</w>\": 36344,\n  \"kron\": 25999,\n  \"kru\": 10609,\n  \"kruger</w>\": 32948,\n  \"krun\": 43084,\n  \"kry\": 13995,\n  \"krystal</w>\": 36554,\n  \"ks\": 10470,\n  \"ks</w>\": 662,\n  \"ksa</w>\": 25439,\n  \"ksh</w>\": 36594,\n  \"kst</w>\": 17420,\n  \"kstate\": 48590,\n  \"ksu</w>\": 43496,\n  \"kswx</w>\": 36180,\n  \"kt\": 17238,\n  \"kt</w>\": 7792,\n  \"ktm</w>\": 33989,\n  \"ktn\": 42170,\n  \"kton</w>\": 37848,\n  \"kts</w>\": 48577,\n  \"ktv\": 36444,\n  \"ku\": 1836,\n  \"ku</w>\": 4827,\n  \"kuala</w>\": 30336,\n  \"kubball</w>\": 48995,\n  \"kuber\": 41336,\n  \"kubernetes</w>\": 45144,\n  \"kubrick</w>\": 37032,\n  \"kuch</w>\": 39394,\n  \"kud\": 40818,\n  \"kudos</w>\": 14481,\n  \"kul\": 11325,\n  \"kul</w>\": 31514,\n  \"kum\": 18086,\n  \"kum</w>\": 28148,\n  \"kuma\": 43139,\n  \"kuma</w>\": 33920,\n  \"kumar\": 22329,\n  \"kumar</w>\": 7674,\n  \"kumb\": 31391,\n  \"kun\": 6849,\n  \"kun</w>\": 21842,\n  \"kung\": 39656,\n  \"kung</w>\": 22347,\n  \"kunst</w>\": 37881,\n  \"kup\": 39023,\n  \"kups</w>\": 27240,\n  \"kur\": 4862,\n  \"kurdi\": 23504,\n  \"kurdish</w>\": 21644,\n  \"kurdistan</w>\": 24459,\n  \"kurds</w>\": 20888,\n  \"kuri\": 46375,\n  \"kuro\": 28239,\n  \"kuro</w>\": 47826,\n  \"kurt\": 31903,\n  \"kurt</w>\": 14527,\n  \"kus\": 27618,\n  \"kus</w>\": 27505,\n  \"kush\": 22264,\n  \"kush</w>\": 24594,\n  \"kushner</w>\": 36716,\n  \"kut\": 17283,\n  \"kut</w>\": 36965,\n  \"kuwait</w>\": 19679,\n  \"kuya</w>\": 34815,\n  \"kuz\": 33253,\n  \"kv\": 27594,\n  \"kv</w>\": 34249,\n  \"kw\": 10072,\n  \"kw</w>\": 18339,\n  \"kwa\": 32784,\n  \"kwa</w>\": 48576,\n  \"kwame</w>\": 46681,\n  \"kwan\": 37100,\n  \"kwan</w>\": 39447,\n  \"kwang</w>\": 40260,\n  \"kwe\": 26050,\n  \"kwi\": 35327,\n  \"kwon</w>\": 36369,\n  \"kx\": 28190,\n  \"kx</w>\": 46442,\n  \"ky\": 2018,\n  \"ky</w>\": 2383,\n  \"kya</w>\": 29142,\n  \"kyc</w>\": 37758,\n  \"kyiv</w>\": 36422,\n  \"kyle\": 15847,\n  \"kyle</w>\": 7539,\n  \"kylie\": 28282,\n  \"kylie</w>\": 17983,\n  \"kyliejenner</w>\": 47232,\n  \"kylo</w>\": 47704,\n  \"kyo\": 13150,\n  \"kyo</w>\": 6281,\n  \"kyoto</w>\": 23223,\n  \"kyr\": 26329,\n  \"kyrgy\": 40013,\n  \"kyrgyz\": 48346,\n  \"kyrie</w>\": 21857,\n  \"kyu\": 28296,\n  \"kyu</w>\": 25490,\n  \"kyuhyun</w>\": 37229,\n  \"kyung</w>\": 41058,\n  \"kyungsoo</w>\": 30280,\n  \"kywx</w>\": 39940,\n  \"kz\": 48743,\n  \"kz</w>\": 36848,\n  \"kzn</w>\": 38264,\n  \"kÃ¶\": 32437,\n  \"l\": 75,\n  \"l</w>\": 331,\n  \"la\": 572,\n  \"la</w>\": 1210,\n  \"laa</w>\": 44642,\n  \"lab\": 3537,\n  \"lab</w>\": 4352,\n  \"labe\": 25749,\n  \"label\": 12235,\n  \"label</w>\": 9093,\n  \"labeled</w>\": 32720,\n  \"labeling</w>\": 36825,\n  \"labelled</w>\": 45188,\n  \"labels</w>\": 17413,\n  \"lable</w>\": 31879,\n  \"labor\": 11201,\n  \"labor</w>\": 7878,\n  \"laboratories</w>\": 43421,\n  \"laboratory</w>\": 17664,\n  \"laborday</w>\": 39324,\n  \"labou\": 32700,\n  \"labour\": 19586,\n  \"labour</w>\": 6019,\n  \"labourdoorstep</w>\": 37008,\n  \"labout\": 35961,\n  \"labra\": 37067,\n  \"labrador</w>\": 25409,\n  \"labs</w>\": 12021,\n  \"laby\": 29131,\n  \"labyrin\": 31782,\n  \"labyrinth</w>\": 35594,\n  \"lac\": 4477,\n  \"lac</w>\": 16189,\n  \"lace\": 30012,\n  \"lace</w>\": 5421,\n  \"laced</w>\": 36800,\n  \"laces</w>\": 23281,\n  \"lacey</w>\": 31754,\n  \"lach\": 30558,\n  \"lack\": 24915,\n  \"lack</w>\": 8069,\n  \"lacking</w>\": 30080,\n  \"lacks</w>\": 34388,\n  \"laco\": 45882,\n  \"lacrosse</w>\": 12915,\n  \"lacy</w>\": 38645,\n  \"lad\": 15991,\n  \"lad</w>\": 10707,\n  \"ladak\": 42312,\n  \"ladakh</w>\": 45295,\n  \"ladder</w>\": 16637,\n  \"ladders</w>\": 47125,\n  \"lade</w>\": 26447,\n  \"laden</w>\": 28634,\n  \"ladi\": 12934,\n  \"ladies\": 28932,\n  \"ladies</w>\": 3431,\n  \"lads</w>\": 9803,\n  \"lady\": 7275,\n  \"lady</w>\": 2909,\n  \"ladybird</w>\": 43389,\n  \"ladybug</w>\": 40038,\n  \"ladygaga</w>\": 21232,\n  \"laf\": 47555,\n  \"lafayette</w>\": 22683,\n  \"lag\": 30932,\n  \"lag</w>\": 20394,\n  \"laga</w>\": 30161,\n  \"lage</w>\": 24369,\n  \"lager\": 36811,\n  \"lager</w>\": 22989,\n  \"lagh\": 37237,\n  \"laghate\": 47565,\n  \"laghateparth</w>\": 48780,\n  \"lagi</w>\": 39786,\n  \"lago\": 42698,\n  \"lago</w>\": 31476,\n  \"lagoon</w>\": 22753,\n  \"lagos</w>\": 12728,\n  \"lagun\": 18500,\n  \"laguna</w>\": 23609,\n  \"lah\": 27315,\n  \"lah</w>\": 4299,\n  \"lahat</w>\": 42164,\n  \"lahore</w>\": 16733,\n  \"lai</w>\": 23947,\n  \"laid\": 42560,\n  \"laid</w>\": 11160,\n  \"lain\": 46958,\n  \"lain</w>\": 17151,\n  \"laine</w>\": 35860,\n  \"lair</w>\": 31981,\n  \"lais</w>\": 34923,\n  \"lak\": 12890,\n  \"lak</w>\": 26793,\n  \"lake\": 6441,\n  \"lake</w>\": 2553,\n  \"lakedistrict</w>\": 26437,\n  \"lakel\": 26133,\n  \"lakeland</w>\": 34306,\n  \"laker\": 45717,\n  \"lakers</w>\": 13570,\n  \"lakes</w>\": 9265,\n  \"lakeshore</w>\": 42595,\n  \"lakeside</w>\": 30915,\n  \"lakewood</w>\": 36417,\n  \"lakh</w>\": 21487,\n  \"lakhs</w>\": 37985,\n  \"lakings</w>\": 34289,\n  \"lakota</w>\": 45510,\n  \"laksh\": 24937,\n  \"lakshmi</w>\": 39682,\n  \"lal\": 12301,\n  \"lal</w>\": 19430,\n  \"lala</w>\": 33661,\n  \"lali\": 21726,\n  \"laliga</w>\": 32383,\n  \"lam\": 2022,\n  \"lam</w>\": 5704,\n  \"lama</w>\": 26049,\n  \"lamar\": 28678,\n  \"lamar</w>\": 17284,\n  \"lamb\": 19863,\n  \"lamb</w>\": 10034,\n  \"lambda</w>\": 36687,\n  \"lambert</w>\": 14574,\n  \"lambeth</w>\": 43410,\n  \"lambo</w>\": 45464,\n  \"lamborgh\": 18709,\n  \"lamborghini</w>\": 19462,\n  \"lambs</w>\": 30361,\n  \"lame</w>\": 23192,\n  \"lamin\": 22337,\n  \"laminated</w>\": 49079,\n  \"lamo\": 41461,\n  \"lamont</w>\": 46719,\n  \"lamp\": 26700,\n  \"lamp</w>\": 10725,\n  \"lampard</w>\": 39989,\n  \"lamps</w>\": 23424,\n  \"lan\": 1193,\n  \"lan</w>\": 4872,\n  \"lana</w>\": 15406,\n  \"lanapar\": 47437,\n  \"lanaparrilla</w>\": 47819,\n  \"lanc\": 11872,\n  \"lanca\": 15694,\n  \"lancashire</w>\": 20939,\n  \"lancaster</w>\": 16446,\n  \"lance\": 26025,\n  \"lance</w>\": 11609,\n  \"lancer</w>\": 38195,\n  \"lancers</w>\": 46392,\n  \"lancia</w>\": 48698,\n  \"lancs</w>\": 47540,\n  \"land\": 1567,\n  \"land</w>\": 973,\n  \"lande</w>\": 36556,\n  \"landed</w>\": 9873,\n  \"lander\": 37247,\n  \"lander</w>\": 9666,\n  \"landers</w>\": 20019,\n  \"landfall</w>\": 38465,\n  \"landfill</w>\": 34947,\n  \"landia</w>\": 41384,\n  \"landing</w>\": 8292,\n  \"landings</w>\": 46104,\n  \"landlord</w>\": 28938,\n  \"landlords</w>\": 35283,\n  \"landmark</w>\": 15208,\n  \"landmarks</w>\": 30393,\n  \"lando\": 25463,\n  \"lando</w>\": 7065,\n  \"landon</w>\": 32748,\n  \"landrover</w>\": 38125,\n  \"landry</w>\": 36137,\n  \"lands\": 40223,\n  \"lands</w>\": 2961,\n  \"landsc\": 4384,\n  \"landscape\": 21123,\n  \"landscape</w>\": 5727,\n  \"landscapephotography</w>\": 28125,\n  \"landscapes</w>\": 15344,\n  \"landscaping</w>\": 25642,\n  \"landslide</w>\": 31954,\n  \"lane\": 25534,\n  \"lane</w>\": 3980,\n  \"lanes</w>\": 10345,\n  \"laney</w>\": 38552,\n  \"lang\": 7969,\n  \"lang</w>\": 8578,\n  \"lange</w>\": 32021,\n  \"langford</w>\": 45615,\n  \"langley</w>\": 28595,\n  \"langu\": 4095,\n  \"language\": 46103,\n  \"language</w>\": 4781,\n  \"languages</w>\": 13527,\n  \"lani</w>\": 22964,\n  \"lanka</w>\": 16221,\n  \"lankan</w>\": 40531,\n  \"lannister</w>\": 49056,\n  \"lans\": 43550,\n  \"lansing</w>\": 30805,\n  \"lant</w>\": 44504,\n  \"lanta</w>\": 44768,\n  \"lantern</w>\": 17185,\n  \"lanterns</w>\": 33676,\n  \"lantic\": 32601,\n  \"lantic</w>\": 27678,\n  \"lants</w>\": 38425,\n  \"lanyard</w>\": 46808,\n  \"lao\": 32475,\n  \"lao</w>\": 29521,\n  \"laos</w>\": 34353,\n  \"lap\": 7213,\n  \"lap</w>\": 8639,\n  \"lapd</w>\": 32557,\n  \"lapel</w>\": 47961,\n  \"lapland</w>\": 43633,\n  \"laps</w>\": 18711,\n  \"lapse</w>\": 33365,\n  \"laptop</w>\": 10464,\n  \"laptops</w>\": 32189,\n  \"laq</w>\": 45026,\n  \"lar\": 1592,\n  \"lar</w>\": 1652,\n  \"lara</w>\": 19435,\n  \"lard</w>\": 40347,\n  \"lare\": 22415,\n  \"laredo</w>\": 48427,\n  \"large\": 40234,\n  \"large</w>\": 3638,\n  \"largely</w>\": 21418,\n  \"larger</w>\": 12567,\n  \"largest</w>\": 4960,\n  \"largo</w>\": 44161,\n  \"lari\": 34676,\n  \"lark\": 43164,\n  \"lark</w>\": 23536,\n  \"larkin</w>\": 34769,\n  \"larry\": 18642,\n  \"larry</w>\": 8242,\n  \"lars</w>\": 8669,\n  \"larsen</w>\": 39721,\n  \"larson</w>\": 27973,\n  \"larvae</w>\": 44840,\n  \"las\": 8295,\n  \"las</w>\": 2552,\n  \"lasag\": 31210,\n  \"lasagna</w>\": 40683,\n  \"lasalle</w>\": 43866,\n  \"laser\": 25607,\n  \"laser</w>\": 9885,\n  \"lasers</w>\": 37060,\n  \"lash\": 31995,\n  \"lash</w>\": 18480,\n  \"lashes</w>\": 21015,\n  \"lass\": 24203,\n  \"lass</w>\": 18263,\n  \"lassic</w>\": 39430,\n  \"last\": 10600,\n  \"last</w>\": 952,\n  \"lasted</w>\": 25711,\n  \"lasting</w>\": 13434,\n  \"lastnight</w>\": 30159,\n  \"lasts</w>\": 20141,\n  \"lasvegas</w>\": 17789,\n  \"lat\": 1591,\n  \"lat</w>\": 28437,\n  \"lata</w>\": 47114,\n  \"latam</w>\": 40012,\n  \"late\": 13267,\n  \"late</w>\": 2325,\n  \"latel\": 49035,\n  \"lately</w>\": 11824,\n  \"latepost</w>\": 48328,\n  \"later\": 24109,\n  \"later</w>\": 2941,\n  \"lateral</w>\": 26646,\n  \"latest\": 46805,\n  \"latest</w>\": 2053,\n  \"latex</w>\": 27520,\n  \"lati\": 16357,\n  \"latimes</w>\": 43356,\n  \"latin\": 16695,\n  \"latin</w>\": 9888,\n  \"latina</w>\": 27936,\n  \"latino\": 45734,\n  \"latino</w>\": 19470,\n  \"latinos</w>\": 40233,\n  \"lation</w>\": 6191,\n  \"latitude</w>\": 37392,\n  \"lative</w>\": 15719,\n  \"lator</w>\": 9291,\n  \"lators</w>\": 28278,\n  \"latt\": 33561,\n  \"latte</w>\": 17697,\n  \"latter</w>\": 26198,\n  \"latvia</w>\": 30034,\n  \"lau\": 1853,\n  \"lau</w>\": 23090,\n  \"lauderdale</w>\": 24352,\n  \"laugh\": 4969,\n  \"laugh</w>\": 6332,\n  \"laughed</w>\": 16746,\n  \"laughing</w>\": 8301,\n  \"laughs</w>\": 14322,\n  \"laughter</w>\": 10722,\n  \"laun\": 2944,\n  \"launch\": 31168,\n  \"launch</w>\": 2904,\n  \"launched</w>\": 6125,\n  \"launcher</w>\": 35782,\n  \"launches</w>\": 7023,\n  \"launching</w>\": 8565,\n  \"laundering</w>\": 34079,\n  \"laundry</w>\": 14797,\n  \"laur\": 15256,\n  \"laura\": 17091,\n  \"laura</w>\": 7763,\n  \"laure\": 16932,\n  \"laureate</w>\": 25675,\n  \"laurel\": 43370,\n  \"laurel</w>\": 19942,\n  \"lauren\": 10456,\n  \"lauren</w>\": 7634,\n  \"laurence</w>\": 29353,\n  \"laurent</w>\": 23226,\n  \"laurie</w>\": 20326,\n  \"laus\": 38895,\n  \"laus</w>\": 28111,\n  \"lause</w>\": 22269,\n  \"laut\": 47688,\n  \"lav\": 13767,\n  \"lav</w>\": 26919,\n  \"lava</w>\": 16765,\n  \"laven\": 15047,\n  \"lavender</w>\": 16033,\n  \"laver\": 28188,\n  \"lavish</w>\": 35443,\n  \"law\": 2874,\n  \"law</w>\": 2606,\n  \"lawful</w>\": 33845,\n  \"lawler</w>\": 47862,\n  \"lawless</w>\": 39468,\n  \"lawmaker</w>\": 37169,\n  \"lawmakers</w>\": 21190,\n  \"lawn\": 31675,\n  \"lawn</w>\": 11024,\n  \"lawrence\": 32221,\n  \"lawrence</w>\": 8820,\n  \"laws</w>\": 7306,\n  \"lawson</w>\": 22152,\n  \"lawsuit</w>\": 14346,\n  \"lawsuits</w>\": 44331,\n  \"lawyer</w>\": 10552,\n  \"lawyers</w>\": 14232,\n  \"lax\": 17750,\n  \"lax</w>\": 10024,\n  \"lay\": 7205,\n  \"lay</w>\": 6360,\n  \"laye\": 25995,\n  \"layer</w>\": 12411,\n  \"layered</w>\": 28520,\n  \"layers</w>\": 15900,\n  \"laying</w>\": 12333,\n  \"layla</w>\": 45050,\n  \"layne</w>\": 48721,\n  \"layo\": 21738,\n  \"layoffs</w>\": 29019,\n  \"layout</w>\": 17314,\n  \"lays</w>\": 19546,\n  \"layton</w>\": 38061,\n  \"laz\": 18806,\n  \"lazar\": 33075,\n  \"lazarus</w>\": 49126,\n  \"laze</w>\": 41559,\n  \"lazer</w>\": 43735,\n  \"lazio</w>\": 33010,\n  \"lazy\": 32614,\n  \"lazy</w>\": 10753,\n  \"lb\": 21958,\n  \"lb</w>\": 7422,\n  \"lbc</w>\": 37694,\n  \"lbj</w>\": 45683,\n  \"lbloggers</w>\": 48695,\n  \"lbs</w>\": 8912,\n  \"lc\": 9584,\n  \"lc</w>\": 7225,\n  \"lcd</w>\": 21356,\n  \"lcfc</w>\": 25339,\n  \"lcs</w>\": 32279,\n  \"ld\": 1431,\n  \"ld</w>\": 730,\n  \"lder</w>\": 6945,\n  \"lders</w>\": 43221,\n  \"ldn\": 37050,\n  \"ldn</w>\": 2517,\n  \"ldnont</w>\": 25827,\n  \"ldnt</w>\": 21690,\n  \"ldr</w>\": 37279,\n  \"lds</w>\": 31235,\n  \"le\": 534,\n  \"le</w>\": 579,\n  \"lea\": 2246,\n  \"lea</w>\": 13324,\n  \"leach</w>\": 35527,\n  \"lead\": 1328,\n  \"lead</w>\": 2784,\n  \"leader\": 14806,\n  \"leader</w>\": 3236,\n  \"leaderboard</w>\": 34519,\n  \"leaders</w>\": 3546,\n  \"leadership\": 36876,\n  \"leadership</w>\": 3652,\n  \"leading</w>\": 3833,\n  \"leads</w>\": 5335,\n  \"leaf\": 9377,\n  \"leaf</w>\": 7232,\n  \"leaflet</w>\": 38289,\n  \"leaflets</w>\": 39014,\n  \"leafs</w>\": 16688,\n  \"leafy</w>\": 42616,\n  \"leagu\": 13317,\n  \"league\": 16635,\n  \"league</w>\": 2313,\n  \"leagueof\": 26022,\n  \"leagueoflegends</w>\": 31737,\n  \"leagues</w>\": 19888,\n  \"leah\": 24350,\n  \"leah</w>\": 19308,\n  \"leak\": 42900,\n  \"leak</w>\": 15489,\n  \"leaked</w>\": 14353,\n  \"leaking</w>\": 34097,\n  \"leaks</w>\": 15657,\n  \"leam\": 39606,\n  \"lean\": 12447,\n  \"lean</w>\": 8208,\n  \"leaning</w>\": 24411,\n  \"leanne</w>\": 41448,\n  \"leans</w>\": 9357,\n  \"leap\": 29129,\n  \"leap</w>\": 15392,\n  \"leaps</w>\": 48080,\n  \"lear\": 1146,\n  \"lear</w>\": 27663,\n  \"learn\": 16959,\n  \"learn</w>\": 1768,\n  \"learned</w>\": 6048,\n  \"learnenglish</w>\": 49040,\n  \"learner</w>\": 33547,\n  \"learners</w>\": 19572,\n  \"learning\": 22632,\n  \"learning</w>\": 2378,\n  \"learns</w>\": 17569,\n  \"learnt</w>\": 18959,\n  \"leary</w>\": 36051,\n  \"lease\": 49041,\n  \"lease</w>\": 14394,\n  \"leased</w>\": 48352,\n  \"leash</w>\": 36192,\n  \"leasing</w>\": 29160,\n  \"least</w>\": 3651,\n  \"leather\": 21417,\n  \"leather</w>\": 5862,\n  \"leau</w>\": 26498,\n  \"leav\": 3198,\n  \"leave\": 37512,\n  \"leave</w>\": 3258,\n  \"leaves</w>\": 5579,\n  \"leaving</w>\": 5216,\n  \"leban\": 9360,\n  \"lebanese</w>\": 23819,\n  \"lebanon</w>\": 11695,\n  \"leblanc</w>\": 46381,\n  \"lebo\": 44184,\n  \"lebron</w>\": 11971,\n  \"lebu\": 47030,\n  \"lec\": 944,\n  \"lec</w>\": 35374,\n  \"leche</w>\": 46197,\n  \"lect</w>\": 45392,\n  \"lection</w>\": 18252,\n  \"lections</w>\": 30995,\n  \"lecture</w>\": 6617,\n  \"lecturer</w>\": 23795,\n  \"lectures</w>\": 21118,\n  \"led\": 8767,\n  \"led</w>\": 912,\n  \"ledge\": 23647,\n  \"ledge</w>\": 4815,\n  \"ledger</w>\": 26817,\n  \"leds</w>\": 36763,\n  \"lee\": 6224,\n  \"lee</w>\": 2592,\n  \"leed\": 16483,\n  \"leed</w>\": 40206,\n  \"leeds\": 38900,\n  \"leeds</w>\": 7420,\n  \"leek</w>\": 34585,\n  \"leeminho</w>\": 37831,\n  \"leen\": 35311,\n  \"leen</w>\": 15940,\n  \"leep\": 48875,\n  \"leep</w>\": 10191,\n  \"lees\": 29324,\n  \"lees</w>\": 34056,\n  \"lef\": 9152,\n  \"left\": 33949,\n  \"left</w>\": 1823,\n  \"leftist</w>\": 35143,\n  \"lefto\": 17437,\n  \"leftover</w>\": 26414,\n  \"leftovers</w>\": 28481,\n  \"lefty</w>\": 33935,\n  \"leg\": 1211,\n  \"leg</w>\": 4924,\n  \"lega</w>\": 38674,\n  \"legacy\": 44108,\n  \"legacy</w>\": 6447,\n  \"legal\": 17743,\n  \"legal</w>\": 3998,\n  \"legalization</w>\": 40584,\n  \"legalize</w>\": 42921,\n  \"legally</w>\": 14152,\n  \"legate</w>\": 46009,\n  \"lege</w>\": 8065,\n  \"legen\": 6105,\n  \"legend\": 5480,\n  \"legend</w>\": 3539,\n  \"legendary</w>\": 6053,\n  \"legendof\": 47915,\n  \"legends</w>\": 6396,\n  \"leges</w>\": 15356,\n  \"legg\": 18474,\n  \"legg</w>\": 32511,\n  \"legged</w>\": 25830,\n  \"leggings</w>\": 22895,\n  \"leggo</w>\": 43441,\n  \"legi\": 11183,\n  \"legion\": 35503,\n  \"legion</w>\": 14525,\n  \"legis\": 7200,\n  \"legislat\": 16486,\n  \"legislation</w>\": 14143,\n  \"legislative</w>\": 16755,\n  \"legislators</w>\": 31572,\n  \"legislature</w>\": 22309,\n  \"legit</w>\": 12563,\n  \"legitim\": 17656,\n  \"legitimate</w>\": 24491,\n  \"lego\": 28117,\n  \"lego</w>\": 7849,\n  \"legos</w>\": 45359,\n  \"legs</w>\": 7072,\n  \"leh\": 19105,\n  \"leh</w>\": 29298,\n  \"lehead</w>\": 28090,\n  \"lehigh</w>\": 34527,\n  \"lehman</w>\": 46094,\n  \"lei\": 15828,\n  \"lei</w>\": 21830,\n  \"leia</w>\": 32723,\n  \"leic\": 35073,\n  \"leica</w>\": 30206,\n  \"leice\": 10026,\n  \"leicester\": 28795,\n  \"leicester</w>\": 11510,\n  \"leicestershire</w>\": 45358,\n  \"leigh\": 14849,\n  \"leigh</w>\": 9292,\n  \"leighton</w>\": 30782,\n  \"leila</w>\": 41342,\n  \"lein\": 20026,\n  \"lein</w>\": 28551,\n  \"leinster</w>\": 32242,\n  \"leip\": 36401,\n  \"leipzig</w>\": 41860,\n  \"leis\": 13133,\n  \"leisure</w>\": 15849,\n  \"leit\": 35446,\n  \"leith</w>\": 34141,\n  \"lek\": 26626,\n  \"lek</w>\": 36535,\n  \"lel</w>\": 46623,\n  \"lele</w>\": 26075,\n  \"lem\": 10213,\n  \"lem</w>\": 8428,\n  \"leman</w>\": 24478,\n  \"lemans</w>\": 26694,\n  \"lement</w>\": 9693,\n  \"lements</w>\": 15833,\n  \"lemme</w>\": 23318,\n  \"lemon\": 12272,\n  \"lemon</w>\": 7184,\n  \"lemonade</w>\": 18884,\n  \"lemons</w>\": 29576,\n  \"lemore</w>\": 41147,\n  \"len\": 3687,\n  \"len</w>\": 2159,\n  \"lena</w>\": 22038,\n  \"lend\": 45397,\n  \"lend</w>\": 24987,\n  \"lender</w>\": 44734,\n  \"lenders</w>\": 42443,\n  \"lending</w>\": 20209,\n  \"lene</w>\": 17628,\n  \"leness</w>\": 36551,\n  \"leng\": 7861,\n  \"length</w>\": 10130,\n  \"lengths</w>\": 31858,\n  \"lengthy</w>\": 32624,\n  \"lenin</w>\": 41760,\n  \"lennon</w>\": 18360,\n  \"lennox</w>\": 45748,\n  \"lenny\": 48448,\n  \"lenny</w>\": 30124,\n  \"leno</w>\": 45357,\n  \"lenovo</w>\": 25886,\n  \"lens</w>\": 8666,\n  \"lenses</w>\": 21264,\n  \"lent\": 20943,\n  \"lent</w>\": 22605,\n  \"lentil</w>\": 41511,\n  \"lentils</w>\": 44269,\n  \"leo\": 24008,\n  \"leo</w>\": 8312,\n  \"leon\": 6581,\n  \"leon</w>\": 9763,\n  \"leonard\": 43849,\n  \"leonard</w>\": 13142,\n  \"leonardo</w>\": 20282,\n  \"leone</w>\": 22864,\n  \"leop\": 11234,\n  \"leopard</w>\": 15931,\n  \"leopards</w>\": 40996,\n  \"leopold</w>\": 45501,\n  \"lep\": 48884,\n  \"leppard</w>\": 41656,\n  \"lepre\": 45641,\n  \"ler\": 5587,\n  \"ler</w>\": 1803,\n  \"lero\": 15067,\n  \"lerosis</w>\": 35455,\n  \"leroy</w>\": 32441,\n  \"lers</w>\": 6247,\n  \"lery</w>\": 38184,\n  \"les\": 4339,\n  \"les</w>\": 840,\n  \"lesbian</w>\": 17419,\n  \"lesbians</w>\": 43182,\n  \"lesh</w>\": 32282,\n  \"lesley</w>\": 25506,\n  \"lesli\": 13649,\n  \"leslie</w>\": 16244,\n  \"lesn\": 39568,\n  \"lesnar</w>\": 42223,\n  \"less\": 3242,\n  \"less</w>\": 1285,\n  \"lesser</w>\": 20369,\n  \"lessly</w>\": 13103,\n  \"lessness</w>\": 24847,\n  \"lesson</w>\": 7714,\n  \"lessons</w>\": 7199,\n  \"lest\": 24372,\n  \"lest</w>\": 6794,\n  \"lester\": 23157,\n  \"lester</w>\": 24023,\n  \"lestwe\": 29726,\n  \"lestweforget</w>\": 30273,\n  \"let\": 1898,\n  \"let</w>\": 1094,\n  \"leta</w>\": 34319,\n  \"lete</w>\": 34078,\n  \"letes</w>\": 6815,\n  \"leth\": 30022,\n  \"leth</w>\": 42462,\n  \"lethal</w>\": 21905,\n  \"lethbridge</w>\": 48390,\n  \"leti</w>\": 34176,\n  \"letics</w>\": 14504,\n  \"letit\": 46423,\n  \"leto</w>\": 32203,\n  \"leton\": 37674,\n  \"leton</w>\": 7462,\n  \"lets\": 10448,\n  \"lets</w>\": 3243,\n  \"letsgo\": 16967,\n  \"letsgo</w>\": 29789,\n  \"letstalk</w>\": 35591,\n  \"lett\": 22428,\n  \"lett</w>\": 9778,\n  \"lette\": 41798,\n  \"lette</w>\": 10301,\n  \"letter\": 15567,\n  \"letter</w>\": 4861,\n  \"lettering</w>\": 26382,\n  \"letterman</w>\": 38447,\n  \"letters</w>\": 9181,\n  \"letting</w>\": 9510,\n  \"letto</w>\": 35449,\n  \"lettu\": 17933,\n  \"lettuce</w>\": 18573,\n  \"leu\": 15691,\n  \"leuke\": 31031,\n  \"leukemia</w>\": 32097,\n  \"leum</w>\": 21571,\n  \"leur</w>\": 45806,\n  \"lev\": 17022,\n  \"lev</w>\": 29950,\n  \"levan\": 42543,\n  \"leve\": 36271,\n  \"level\": 21682,\n  \"level</w>\": 2931,\n  \"leveled</w>\": 48453,\n  \"levels</w>\": 6295,\n  \"leven\": 44792,\n  \"leven</w>\": 34729,\n  \"lever\": 20178,\n  \"lever</w>\": 23094,\n  \"leverage</w>\": 24030,\n  \"leveraging</w>\": 37948,\n  \"levi\": 25630,\n  \"levi</w>\": 19113,\n  \"leviathan</w>\": 41736,\n  \"levin</w>\": 36949,\n  \"levine</w>\": 26594,\n  \"levit\": 22715,\n  \"levy</w>\": 17147,\n  \"lew\": 5063,\n  \"lew</w>\": 25329,\n  \"lewan\": 48349,\n  \"lewd</w>\": 45241,\n  \"lewes</w>\": 40431,\n  \"lewi\": 19589,\n  \"lewis\": 22043,\n  \"lewis</w>\": 6020,\n  \"lewisham\": 37385,\n  \"lewisham</w>\": 47633,\n  \"lewishamilton</w>\": 42960,\n  \"lewood</w>\": 37951,\n  \"lex\": 6586,\n  \"lex</w>\": 9658,\n  \"lexa</w>\": 48259,\n  \"lexi\": 44231,\n  \"lexi</w>\": 24679,\n  \"lexington</w>\": 22308,\n  \"lexus</w>\": 20694,\n  \"ley\": 2565,\n  \"ley</w>\": 1066,\n  \"leye</w>\": 37061,\n  \"leys\": 45609,\n  \"leys</w>\": 14834,\n  \"leyton</w>\": 46573,\n  \"lez</w>\": 26442,\n  \"lf\": 33960,\n  \"lf</w>\": 22078,\n  \"lfc\": 37826,\n  \"lfc</w>\": 8267,\n  \"lfw</w>\": 28514,\n  \"lg\": 4546,\n  \"lg</w>\": 11368,\n  \"lga</w>\": 39348,\n  \"lgb\": 25401,\n  \"lgbt\": 11743,\n  \"lgbt</w>\": 9592,\n  \"lgbti</w>\": 42730,\n  \"lgbtq\": 47625,\n  \"lgbtq</w>\": 14939,\n  \"lgm</w>\": 39389,\n  \"lh\": 27794,\n  \"lh</w>\": 31159,\n  \"lhp</w>\": 45092,\n  \"lhs</w>\": 33170,\n  \"li\": 554,\n  \"li</w>\": 4250,\n  \"lia\": 26118,\n  \"lia</w>\": 6964,\n  \"liability</w>\": 29139,\n  \"liaison</w>\": 39294,\n  \"liam\": 5258,\n  \"liam</w>\": 7167,\n  \"lian</w>\": 18058,\n  \"liance</w>\": 40864,\n  \"liar</w>\": 16334,\n  \"liars</w>\": 23863,\n  \"lias</w>\": 46021,\n  \"lib\": 10249,\n  \"lib</w>\": 13345,\n  \"libby</w>\": 36832,\n  \"libdems</w>\": 40869,\n  \"liber\": 3425,\n  \"liberal\": 48032,\n  \"liberal</w>\": 9985,\n  \"liberalism</w>\": 40018,\n  \"liberals</w>\": 15981,\n  \"liberated</w>\": 38690,\n  \"liberation</w>\": 19507,\n  \"liberia</w>\": 32208,\n  \"libertarian</w>\": 35067,\n  \"liberties</w>\": 48623,\n  \"liberty\": 23397,\n  \"liberty</w>\": 8480,\n  \"libr\": 2856,\n  \"libra</w>\": 43038,\n  \"librarian</w>\": 25148,\n  \"librarians</w>\": 37806,\n  \"libraries</w>\": 14277,\n  \"library\": 25713,\n  \"library</w>\": 3519,\n  \"libre\": 49210,\n  \"libre</w>\": 31681,\n  \"libs</w>\": 26401,\n  \"liby\": 36390,\n  \"libya</w>\": 16417,\n  \"libyan</w>\": 42319,\n  \"lic\": 2508,\n  \"lic</w>\": 3376,\n  \"lice</w>\": 45691,\n  \"licen\": 6706,\n  \"licence</w>\": 20550,\n  \"license</w>\": 10337,\n  \"licensed</w>\": 18752,\n  \"licenses</w>\": 36414,\n  \"licensing</w>\": 24219,\n  \"lich\": 23979,\n  \"lich</w>\": 25875,\n  \"lick\": 29197,\n  \"lick</w>\": 17541,\n  \"licking</w>\": 33013,\n  \"licks</w>\": 42117,\n  \"lics</w>\": 44552,\n  \"lid\": 39369,\n  \"lid</w>\": 17678,\n  \"lidge</w>\": 45558,\n  \"lido</w>\": 35683,\n  \"lids</w>\": 41609,\n  \"lie\": 6570,\n  \"lie</w>\": 2538,\n  \"lieb</w>\": 45387,\n  \"liebe</w>\": 37749,\n  \"lied</w>\": 6486,\n  \"lief</w>\": 38428,\n  \"lien</w>\": 45716,\n  \"lier</w>\": 3626,\n  \"liers</w>\": 19303,\n  \"lies\": 37236,\n  \"lies</w>\": 3205,\n  \"liest</w>\": 14020,\n  \"liet</w>\": 41107,\n  \"lieu\": 20401,\n  \"lieu</w>\": 35313,\n  \"lieutenant</w>\": 22538,\n  \"lif\": 16456,\n  \"life\": 2666,\n  \"life</w>\": 970,\n  \"lifeat\": 27801,\n  \"lifeboat</w>\": 37404,\n  \"lifecycle</w>\": 49171,\n  \"lifein\": 48447,\n  \"lifeis\": 24824,\n  \"lifeisgood</w>\": 46433,\n  \"lifel\": 15025,\n  \"lifeline</w>\": 38438,\n  \"lifelong</w>\": 21358,\n  \"lifeof\": 36061,\n  \"lifesaving</w>\": 48016,\n  \"lifespan</w>\": 49257,\n  \"lifestyle\": 46512,\n  \"lifestyle</w>\": 7037,\n  \"lifestyles</w>\": 48521,\n  \"lifetime\": 48737,\n  \"lifetime</w>\": 9107,\n  \"liff</w>\": 34404,\n  \"liffe</w>\": 38942,\n  \"lift\": 33146,\n  \"lift</w>\": 6779,\n  \"lifted</w>\": 16783,\n  \"lifter</w>\": 38555,\n  \"lifting</w>\": 10857,\n  \"lifts</w>\": 18291,\n  \"lig\": 19915,\n  \"lig</w>\": 38493,\n  \"liga</w>\": 16802,\n  \"ligam\": 31077,\n  \"ligament</w>\": 48705,\n  \"ligan</w>\": 27962,\n  \"ligans</w>\": 42133,\n  \"ligh\": 7510,\n  \"light\": 3885,\n  \"light</w>\": 1395,\n  \"lighted</w>\": 18404,\n  \"lighten</w>\": 32717,\n  \"lightening</w>\": 28170,\n  \"lighter</w>\": 14102,\n  \"lighthouse</w>\": 13717,\n  \"lighting</w>\": 5799,\n  \"lightly</w>\": 26878,\n  \"lightning</w>\": 7756,\n  \"lightroom</w>\": 41454,\n  \"lights</w>\": 3073,\n  \"lightweight</w>\": 16278,\n  \"ligu\": 42920,\n  \"ligue</w>\": 29196,\n  \"lik\": 4831,\n  \"lik</w>\": 18495,\n  \"like\": 9175,\n  \"like</w>\": 789,\n  \"liked</w>\": 7112,\n  \"likefor\": 48444,\n  \"likeli\": 40666,\n  \"likelihood</w>\": 48158,\n  \"likely</w>\": 5256,\n  \"liken\": 36084,\n  \"likes</w>\": 4724,\n  \"liking</w>\": 16810,\n  \"lil\": 6012,\n  \"lil</w>\": 4461,\n  \"lilac</w>\": 33647,\n  \"lili\": 26686,\n  \"lili</w>\": 48411,\n  \"lilies</w>\": 38110,\n  \"lillard</w>\": 47016,\n  \"lille</w>\": 38705,\n  \"lilli\": 40920,\n  \"lillian</w>\": 41563,\n  \"lilly\": 47825,\n  \"lilly</w>\": 21815,\n  \"lily\": 23803,\n  \"lily</w>\": 10647,\n  \"lim\": 2377,\n  \"lim</w>\": 17204,\n  \"lima</w>\": 17589,\n  \"limb\": 27061,\n  \"limb</w>\": 32363,\n  \"limbo</w>\": 46179,\n  \"limbs</w>\": 34886,\n  \"lime\": 17385,\n  \"lime</w>\": 11193,\n  \"limel\": 48658,\n  \"limer\": 16915,\n  \"limerick</w>\": 19501,\n  \"limestone</w>\": 27272,\n  \"limit\": 18933,\n  \"limit</w>\": 9973,\n  \"limitations</w>\": 32730,\n  \"limited\": 49229,\n  \"limited</w>\": 3472,\n  \"limiting</w>\": 35812,\n  \"limitless</w>\": 35833,\n  \"limits</w>\": 11966,\n  \"limo</w>\": 33166,\n  \"limous\": 47287,\n  \"limpopo</w>\": 47175,\n  \"lin\": 1254,\n  \"lin</w>\": 2424,\n  \"lina</w>\": 26110,\n  \"lincol\": 6239,\n  \"lincoln\": 16957,\n  \"lincoln</w>\": 7454,\n  \"lincolnshire</w>\": 29014,\n  \"lind\": 6492,\n  \"linda\": 45410,\n  \"linda</w>\": 10760,\n  \"linden\": 44076,\n  \"linden</w>\": 34832,\n  \"lindo</w>\": 38467,\n  \"lindsay\": 29846,\n  \"lindsay</w>\": 16858,\n  \"lindsey\": 29475,\n  \"lindsey</w>\": 18128,\n  \"line\": 3674,\n  \"line</w>\": 1148,\n  \"linear</w>\": 19816,\n  \"linebacker</w>\": 29848,\n  \"lined</w>\": 11842,\n  \"lineman</w>\": 31501,\n  \"linen</w>\": 20032,\n  \"liner</w>\": 11618,\n  \"liners</w>\": 24463,\n  \"lines</w>\": 3418,\n  \"liness</w>\": 28633,\n  \"lineup</w>\": 7316,\n  \"lineups</w>\": 33589,\n  \"ling\": 4851,\n  \"ling</w>\": 1358,\n  \"linger</w>\": 29593,\n  \"lingerie</w>\": 18473,\n  \"lingering</w>\": 46494,\n  \"lings</w>\": 11390,\n  \"lington\": 27673,\n  \"lington</w>\": 9002,\n  \"lingu\": 34449,\n  \"lingui\": 29942,\n  \"linguistic</w>\": 46847,\n  \"linguistics</w>\": 48651,\n  \"lining</w>\": 11589,\n  \"link\": 18433,\n  \"link</w>\": 2468,\n  \"linke\": 15088,\n  \"linked</w>\": 11059,\n  \"linkedin</w>\": 16302,\n  \"linkin\": 40287,\n  \"linkin</w>\": 49291,\n  \"linking</w>\": 23296,\n  \"links</w>\": 8113,\n  \"linn</w>\": 37431,\n  \"lino\": 41189,\n  \"lino</w>\": 34995,\n  \"lins</w>\": 6567,\n  \"linson</w>\": 15401,\n  \"linton</w>\": 36479,\n  \"linus</w>\": 49303,\n  \"linux</w>\": 14061,\n  \"lio</w>\": 19395,\n  \"lion\": 8872,\n  \"lion</w>\": 5567,\n  \"lionel</w>\": 19441,\n  \"lions</w>\": 7093,\n  \"lip\": 8630,\n  \"lip</w>\": 8546,\n  \"lipo\": 38795,\n  \"lipp\": 38074,\n  \"lips</w>\": 8847,\n  \"lipse</w>\": 10351,\n  \"lipstick</w>\": 15618,\n  \"liqu\": 6310,\n  \"lique\": 32680,\n  \"liqueur</w>\": 43612,\n  \"liqui\": 33817,\n  \"liquid\": 18366,\n  \"liquid</w>\": 10158,\n  \"liquidity</w>\": 42812,\n  \"liquor</w>\": 17828,\n  \"lis\": 7297,\n  \"lis</w>\": 12749,\n  \"lisa\": 25236,\n  \"lisa</w>\": 7424,\n  \"lisam\": 43072,\n  \"lisboa</w>\": 40052,\n  \"lisbon</w>\": 17708,\n  \"lish\": 12658,\n  \"lish</w>\": 2354,\n  \"lished</w>\": 22620,\n  \"lisle</w>\": 21529,\n  \"lism</w>\": 34390,\n  \"liss\": 45489,\n  \"liss</w>\": 35433,\n  \"lisse</w>\": 49309,\n  \"list\": 1734,\n  \"list</w>\": 1998,\n  \"lista</w>\": 37812,\n  \"listed</w>\": 6457,\n  \"listen\": 17454,\n  \"listen</w>\": 2672,\n  \"listened</w>\": 15347,\n  \"listener</w>\": 34819,\n  \"listeners</w>\": 26901,\n  \"listening</w>\": 3656,\n  \"listens</w>\": 25912,\n  \"lister</w>\": 45109,\n  \"listing</w>\": 8145,\n  \"listings</w>\": 21987,\n  \"liston</w>\": 48041,\n  \"lists</w>\": 12281,\n  \"lit\": 2213,\n  \"lit</w>\": 4350,\n  \"lita</w>\": 30100,\n  \"lite\": 29273,\n  \"lite</w>\": 13694,\n  \"litecoin</w>\": 39063,\n  \"liter\": 3085,\n  \"liter</w>\": 34904,\n  \"literacy</w>\": 12841,\n  \"literal</w>\": 24269,\n  \"literally</w>\": 4719,\n  \"literary</w>\": 13586,\n  \"literature</w>\": 11072,\n  \"litfest</w>\": 40369,\n  \"lith\": 37005,\n  \"lithium</w>\": 22794,\n  \"litho\": 31088,\n  \"lithograph</w>\": 49022,\n  \"lithu\": 21045,\n  \"lithuania</w>\": 27068,\n  \"liti\": 24292,\n  \"litigation</w>\": 31769,\n  \"lito</w>\": 47381,\n  \"litre</w>\": 25786,\n  \"litres</w>\": 39919,\n  \"litt\": 1216,\n  \"litt</w>\": 47583,\n  \"litter\": 45431,\n  \"litter</w>\": 17118,\n  \"litters</w>\": 45300,\n  \"little\": 7024,\n  \"little</w>\": 1274,\n  \"littlemix</w>\": 29731,\n  \"littlest</w>\": 48969,\n  \"litur\": 36830,\n  \"litz</w>\": 30357,\n  \"liu</w>\": 20466,\n  \"liv\": 13895,\n  \"liv</w>\": 19901,\n  \"livan</w>\": 12785,\n  \"live\": 3215,\n  \"live</w>\": 1064,\n  \"lived</w>\": 8867,\n  \"livel\": 17973,\n  \"liveli\": 26566,\n  \"livelihood</w>\": 46497,\n  \"livelihoods</w>\": 47716,\n  \"lively</w>\": 19663,\n  \"liveme</w>\": 35396,\n  \"livemusic</w>\": 15688,\n  \"liven\": 41057,\n  \"liveon\": 22815,\n  \"livepd\": 38742,\n  \"livepd</w>\": 31899,\n  \"liver\": 4755,\n  \"liver</w>\": 12639,\n  \"liverpool\": 29778,\n  \"liverpool</w>\": 5366,\n  \"livery</w>\": 23248,\n  \"lives</w>\": 3247,\n  \"livesmatter</w>\": 20348,\n  \"livestock</w>\": 22079,\n  \"livestream</w>\": 16844,\n  \"livetweet</w>\": 38546,\n  \"livin</w>\": 28061,\n  \"living\": 10965,\n  \"living</w>\": 2815,\n  \"livingston</w>\": 30551,\n  \"lix</w>\": 45068,\n  \"liz\": 8632,\n  \"liz</w>\": 12242,\n  \"liza</w>\": 28787,\n  \"lizard</w>\": 17221,\n  \"lizards</w>\": 41991,\n  \"lizasober\": 44487,\n  \"lizasoberano</w>\": 45076,\n  \"lizz\": 34430,\n  \"lizzie</w>\": 29530,\n  \"lizzy</w>\": 32306,\n  \"lj\": 34211,\n  \"lj</w>\": 32273,\n  \"lju\": 44562,\n  \"lk\": 39110,\n  \"lk</w>\": 26596,\n  \"lka</w>\": 21881,\n  \"ll\": 1657,\n  \"ll</w>\": 865,\n  \"lla</w>\": 15419,\n  \"llama</w>\": 36679,\n  \"llan\": 17281,\n  \"llan</w>\": 38728,\n  \"lland\": 31150,\n  \"llc</w>\": 17161,\n  \"lle\": 26550,\n  \"lle</w>\": 29732,\n  \"llen\": 41197,\n  \"ller</w>\": 7722,\n  \"llers</w>\": 26426,\n  \"lli\": 47015,\n  \"lli</w>\": 13368,\n  \"llis</w>\": 25518,\n  \"lll</w>\": 27177,\n  \"llll\": 34874,\n  \"llll</w>\": 43485,\n  \"llo</w>\": 19293,\n  \"lloy\": 10092,\n  \"lloyd\": 33339,\n  \"lloyd</w>\": 12400,\n  \"llp</w>\": 28042,\n  \"lls</w>\": 40535,\n  \"lly</w>\": 26379,\n  \"lm\": 6981,\n  \"lm</w>\": 15282,\n  \"lma\": 4493,\n  \"lmao</w>\": 5121,\n  \"lmaoo</w>\": 32623,\n  \"lmaooo</w>\": 33362,\n  \"lmaoooo</w>\": 45232,\n  \"lmfa\": 8928,\n  \"lmfao</w>\": 11068,\n  \"lmfaooo</w>\": 47658,\n  \"lmp</w>\": 43575,\n  \"lms</w>\": 30381,\n  \"ln\": 31644,\n  \"ln</w>\": 18654,\n  \"lng</w>\": 22339,\n  \"lnp</w>\": 39679,\n  \"lo\": 549,\n  \"lo</w>\": 2982,\n  \"loa</w>\": 39678,\n  \"load\": 4515,\n  \"load</w>\": 2834,\n  \"loaded</w>\": 6756,\n  \"loader</w>\": 28492,\n  \"loading</w>\": 9975,\n  \"loads</w>\": 8691,\n  \"loaf\": 26467,\n  \"loaf</w>\": 18273,\n  \"loan\": 28431,\n  \"loan</w>\": 8176,\n  \"loans</w>\": 14206,\n  \"lob\": 11197,\n  \"lob</w>\": 46606,\n  \"lobal</w>\": 34574,\n  \"lobb\": 27698,\n  \"lobby</w>\": 12449,\n  \"lobbying</w>\": 36047,\n  \"lobe</w>\": 46325,\n  \"lobes</w>\": 24148,\n  \"lobo</w>\": 39323,\n  \"lobos</w>\": 36586,\n  \"lobster</w>\": 13793,\n  \"loc\": 1378,\n  \"loc</w>\": 25826,\n  \"local\": 9202,\n  \"local</w>\": 2029,\n  \"localized</w>\": 49399,\n  \"locally</w>\": 15603,\n  \"locals</w>\": 15041,\n  \"locate</w>\": 20490,\n  \"located</w>\": 5677,\n  \"location</w>\": 4372,\n  \"locations</w>\": 9580,\n  \"loch\": 20188,\n  \"loch</w>\": 14101,\n  \"lock\": 7201,\n  \"lock</w>\": 4381,\n  \"lockdown</w>\": 35636,\n  \"locke</w>\": 29698,\n  \"locked</w>\": 8371,\n  \"locker</w>\": 14053,\n  \"lockhart</w>\": 48642,\n  \"lockheed</w>\": 36637,\n  \"locking</w>\": 19978,\n  \"locks</w>\": 13212,\n  \"lockscreen</w>\": 42439,\n  \"loco</w>\": 25555,\n  \"locom\": 22798,\n  \"locomo\": 46147,\n  \"locomotive</w>\": 30439,\n  \"locu\": 33635,\n  \"locust</w>\": 46237,\n  \"lod\": 45650,\n  \"lodge</w>\": 10504,\n  \"loe\": 30113,\n  \"loe</w>\": 25484,\n  \"loeb</w>\": 49334,\n  \"lof\": 15011,\n  \"loff</w>\": 31008,\n  \"loft\": 35707,\n  \"loft</w>\": 20049,\n  \"loftus</w>\": 46689,\n  \"log\": 3239,\n  \"log</w>\": 7383,\n  \"logan\": 20655,\n  \"logan</w>\": 10569,\n  \"logans</w>\": 40752,\n  \"logg</w>\": 43002,\n  \"logged</w>\": 31457,\n  \"logger</w>\": 39089,\n  \"logging</w>\": 24444,\n  \"logi\": 3177,\n  \"logia</w>\": 48031,\n  \"logic</w>\": 10670,\n  \"logical</w>\": 4791,\n  \"logically</w>\": 24782,\n  \"logie</w>\": 33445,\n  \"logies</w>\": 7378,\n  \"login</w>\": 31121,\n  \"logist</w>\": 7407,\n  \"logistics</w>\": 14755,\n  \"logists</w>\": 12233,\n  \"logne</w>\": 19911,\n  \"logo\": 31480,\n  \"logo</w>\": 5750,\n  \"logos</w>\": 24879,\n  \"logs</w>\": 22745,\n  \"logue</w>\": 27785,\n  \"logy\": 22721,\n  \"logy</w>\": 1659,\n  \"loh\": 49129,\n  \"loh</w>\": 37983,\n  \"loi</w>\": 35128,\n  \"loid</w>\": 31408,\n  \"loin</w>\": 21760,\n  \"loire</w>\": 46040,\n  \"lois</w>\": 27040,\n  \"lok\": 19908,\n  \"lok</w>\": 23575,\n  \"loki</w>\": 24435,\n  \"lol\": 10721,\n  \"lol</w>\": 1824,\n  \"lola</w>\": 19065,\n  \"lolita</w>\": 42615,\n  \"lolla\": 45483,\n  \"lolli\": 27906,\n  \"lollipop</w>\": 34605,\n  \"lolly</w>\": 48264,\n  \"lolo\": 16895,\n  \"lolo</w>\": 37481,\n  \"lolol</w>\": 25280,\n  \"lololol</w>\": 34738,\n  \"lolz</w>\": 35260,\n  \"lom\": 9279,\n  \"loma</w>\": 42889,\n  \"lombar\": 25493,\n  \"lombard</w>\": 46461,\n  \"lombardi</w>\": 44346,\n  \"lomond</w>\": 48941,\n  \"lon\": 1235,\n  \"lon</w>\": 6507,\n  \"london\": 6835,\n  \"london</w>\": 1789,\n  \"londonmarathon</w>\": 35018,\n  \"lone\": 22220,\n  \"lone</w>\": 13576,\n  \"lonel\": 28872,\n  \"loneliness</w>\": 30310,\n  \"lonely\": 34509,\n  \"lonely</w>\": 12368,\n  \"lonelyplanet</w>\": 44984,\n  \"long\": 4792,\n  \"long</w>\": 1538,\n  \"longe\": 25793,\n  \"longer</w>\": 5349,\n  \"longest</w>\": 10731,\n  \"longevity</w>\": 35354,\n  \"longh\": 20286,\n  \"longhorn</w>\": 41047,\n  \"longhorns</w>\": 38295,\n  \"longing</w>\": 38482,\n  \"longlive\": 47840,\n  \"longs</w>\": 43618,\n  \"longtime</w>\": 19685,\n  \"loo\": 731,\n  \"loo</w>\": 11804,\n  \"look\": 8874,\n  \"look</w>\": 1012,\n  \"lookalike</w>\": 38307,\n  \"lookbook</w>\": 39184,\n  \"looked</w>\": 4913,\n  \"lookin</w>\": 11254,\n  \"looking\": 36898,\n  \"looking</w>\": 1312,\n  \"lookout</w>\": 18330,\n  \"looks</w>\": 1606,\n  \"lool</w>\": 33125,\n  \"loom\": 37440,\n  \"loom</w>\": 17199,\n  \"looming</w>\": 35384,\n  \"looms</w>\": 30550,\n  \"loon</w>\": 28222,\n  \"loona</w>\": 48137,\n  \"looney</w>\": 45315,\n  \"looo\": 20902,\n  \"loool</w>\": 36016,\n  \"looool</w>\": 47038,\n  \"looooo\": 31484,\n  \"loop\": 19606,\n  \"loop</w>\": 10408,\n  \"loops</w>\": 21625,\n  \"loos</w>\": 45723,\n  \"loose\": 43815,\n  \"loose</w>\": 9786,\n  \"loot</w>\": 21518,\n  \"lop\": 36734,\n  \"lop</w>\": 17066,\n  \"lopes</w>\": 49269,\n  \"lopez</w>\": 12982,\n  \"lor\": 2179,\n  \"lor</w>\": 11335,\n  \"lord\": 18896,\n  \"lord</w>\": 3486,\n  \"lorde</w>\": 35483,\n  \"lords</w>\": 14969,\n  \"lore\": 12880,\n  \"lore</w>\": 27218,\n  \"loren\": 13602,\n  \"loren</w>\": 33398,\n  \"lorenzo</w>\": 21342,\n  \"lores</w>\": 34510,\n  \"loretta</w>\": 40863,\n  \"lori\": 20164,\n  \"lori</w>\": 23095,\n  \"lorna</w>\": 46316,\n  \"lorraine</w>\": 27602,\n  \"lorry</w>\": 31354,\n  \"los\": 32217,\n  \"los</w>\": 3087,\n  \"losange\": 14037,\n  \"losangeles</w>\": 14638,\n  \"lose\": 43318,\n  \"lose</w>\": 5354,\n  \"loser</w>\": 18168,\n  \"losers</w>\": 23201,\n  \"loses</w>\": 14263,\n  \"losing</w>\": 7918,\n  \"loss\": 34761,\n  \"loss</w>\": 4327,\n  \"losses</w>\": 16909,\n  \"lost\": 14258,\n  \"lost</w>\": 2624,\n  \"lostdog</w>\": 48482,\n  \"lot\": 5132,\n  \"lot</w>\": 1954,\n  \"loth</w>\": 43625,\n  \"lothian</w>\": 31360,\n  \"lothing</w>\": 42058,\n  \"lotion</w>\": 25260,\n  \"lotr</w>\": 34165,\n  \"lots</w>\": 2958,\n  \"lott</w>\": 42854,\n  \"lotta</w>\": 29125,\n  \"lotte\": 16535,\n  \"lotte</w>\": 7274,\n  \"lottery</w>\": 16975,\n  \"lottie</w>\": 48517,\n  \"lotto</w>\": 28265,\n  \"lotus</w>\": 13824,\n  \"lou\": 2207,\n  \"lou</w>\": 9745,\n  \"loubout\": 38369,\n  \"loud\": 22884,\n  \"loud</w>\": 7464,\n  \"louder</w>\": 25904,\n  \"loudest</w>\": 49214,\n  \"loudly</w>\": 39256,\n  \"lough\": 21927,\n  \"lough</w>\": 28045,\n  \"loughborough</w>\": 49153,\n  \"loui\": 42173,\n  \"louie</w>\": 25790,\n  \"louis\": 8916,\n  \"louis</w>\": 4459,\n  \"louisa</w>\": 40011,\n  \"louise\": 32275,\n  \"louise</w>\": 13076,\n  \"louisi\": 12187,\n  \"louisiana</w>\": 12946,\n  \"louisville</w>\": 13860,\n  \"louisvuitton</w>\": 44911,\n  \"loun\": 6466,\n  \"lounge</w>\": 7141,\n  \"lounging</w>\": 45430,\n  \"lour\": 29383,\n  \"lourdes</w>\": 45071,\n  \"louvre</w>\": 36995,\n  \"lov\": 8923,\n  \"lov</w>\": 21229,\n  \"lova</w>\": 37394,\n  \"lovable</w>\": 38565,\n  \"lovato</w>\": 18960,\n  \"love\": 2618,\n  \"love</w>\": 793,\n  \"lovecraft</w>\": 42405,\n  \"loved</w>\": 3249,\n  \"lovefl</w>\": 38884,\n  \"loveher</w>\": 38306,\n  \"lovehim</w>\": 45733,\n  \"loveis\": 30931,\n  \"loveisland</w>\": 30970,\n  \"loveislove</w>\": 43603,\n  \"loveit</w>\": 24764,\n  \"lovel\": 8999,\n  \"lovelies</w>\": 31412,\n  \"lovelondon</w>\": 46493,\n  \"lovely\": 33250,\n  \"lovely</w>\": 2165,\n  \"lovemy\": 20041,\n  \"lovemyjob</w>\": 40130,\n  \"loven\": 33754,\n  \"lover\": 28508,\n  \"lover</w>\": 7168,\n  \"lovers\": 48416,\n  \"lovers</w>\": 5973,\n  \"loves\": 37773,\n  \"loves</w>\": 3925,\n  \"lovethe\": 33040,\n  \"lovethem</w>\": 48298,\n  \"lovett</w>\": 47095,\n  \"lovewins</w>\": 47687,\n  \"loveyou\": 39226,\n  \"loveyou</w>\": 25964,\n  \"loveyour\": 26462,\n  \"lovin\": 33442,\n  \"lovin</w>\": 16354,\n  \"loving\": 29568,\n  \"loving</w>\": 3721,\n  \"lovingly</w>\": 44100,\n  \"low\": 1049,\n  \"low</w>\": 1042,\n  \"loway</w>\": 16104,\n  \"lowe</w>\": 17910,\n  \"lowed</w>\": 22733,\n  \"lowell</w>\": 24458,\n  \"lower\": 32578,\n  \"lower</w>\": 4909,\n  \"lowered</w>\": 34968,\n  \"lowering</w>\": 35261,\n  \"lowers</w>\": 36398,\n  \"lowes</w>\": 38515,\n  \"lowest</w>\": 12098,\n  \"lowing</w>\": 8283,\n  \"lowkey</w>\": 29481,\n  \"lowry</w>\": 27444,\n  \"lows</w>\": 4406,\n  \"lox</w>\": 41725,\n  \"loy\": 4519,\n  \"loy</w>\": 23929,\n  \"loyal</w>\": 13032,\n  \"loyalty</w>\": 14686,\n  \"loyd</w>\": 44212,\n  \"loyed</w>\": 29279,\n  \"loyment</w>\": 18307,\n  \"loyola</w>\": 32569,\n  \"lp\": 22282,\n  \"lp</w>\": 6392,\n  \"lpc</w>\": 44092,\n  \"lpg</w>\": 47905,\n  \"lpga</w>\": 34295,\n  \"lps</w>\": 32094,\n  \"lr\": 20572,\n  \"lr</w>\": 7041,\n  \"lrt</w>\": 32996,\n  \"ls\": 19051,\n  \"ls</w>\": 1268,\n  \"lsd</w>\": 43766,\n  \"lse\": 46127,\n  \"lse</w>\": 43886,\n  \"lsu\": 35428,\n  \"lsu</w>\": 15672,\n  \"lt\": 13642,\n  \"lt</w>\": 3333,\n  \"ltc</w>\": 27664,\n  \"ltd</w>\": 6802,\n  \"lte</w>\": 25202,\n  \"lton</w>\": 14237,\n  \"lu\": 664,\n  \"lu</w>\": 9657,\n  \"lub\": 22469,\n  \"lub</w>\": 11836,\n  \"lubbock</w>\": 37660,\n  \"lubric\": 40963,\n  \"luc\": 7013,\n  \"luc</w>\": 28014,\n  \"luca</w>\": 21053,\n  \"lucas\": 23425,\n  \"lucas</w>\": 10225,\n  \"lucci</w>\": 45849,\n  \"luce</w>\": 46217,\n  \"lucent</w>\": 41552,\n  \"lucer\": 36042,\n  \"luch\": 36646,\n  \"lucha</w>\": 38449,\n  \"luci\": 8787,\n  \"lucia</w>\": 22290,\n  \"luciano</w>\": 46365,\n  \"lucid</w>\": 44540,\n  \"lucie</w>\": 39461,\n  \"lucifer\": 46224,\n  \"lucifer</w>\": 27687,\n  \"lucille</w>\": 47454,\n  \"lucin\": 27523,\n  \"luck\": 9647,\n  \"luck</w>\": 2820,\n  \"luckiest</w>\": 42469,\n  \"luckily</w>\": 20100,\n  \"lucknow</w>\": 29407,\n  \"lucky\": 20495,\n  \"lucky</w>\": 4133,\n  \"lucrative</w>\": 41485,\n  \"lucy\": 17262,\n  \"lucy</w>\": 10120,\n  \"lud\": 14288,\n  \"lude</w>\": 28755,\n  \"ludo\": 40141,\n  \"ludwig</w>\": 30633,\n  \"lue</w>\": 45199,\n  \"luf\": 25264,\n  \"lufc</w>\": 17818,\n  \"luffy</w>\": 39047,\n  \"lufthan\": 37769,\n  \"lufthansa</w>\": 39145,\n  \"lug</w>\": 45521,\n  \"lugg\": 19673,\n  \"luggage</w>\": 20138,\n  \"luhan</w>\": 20975,\n  \"luigi</w>\": 28444,\n  \"luis\": 25231,\n  \"luis</w>\": 11339,\n  \"luiz</w>\": 39633,\n  \"lujah</w>\": 31639,\n  \"luk</w>\": 21652,\n  \"luka</w>\": 34878,\n  \"lukaku</w>\": 37177,\n  \"lukas</w>\": 37941,\n  \"luke\": 11970,\n  \"luke</w>\": 5652,\n  \"lul\": 20861,\n  \"lulla\": 37019,\n  \"lullaby</w>\": 41676,\n  \"lulu\": 32052,\n  \"lulu</w>\": 26935,\n  \"lum\": 18112,\n  \"lum</w>\": 5997,\n  \"lumb\": 36231,\n  \"lumber\": 27421,\n  \"lumber</w>\": 34692,\n  \"lumi\": 41437,\n  \"lumia</w>\": 31912,\n  \"lumin\": 15867,\n  \"luminous</w>\": 37913,\n  \"lump</w>\": 38704,\n  \"lumpur</w>\": 34411,\n  \"lun\": 3221,\n  \"lun</w>\": 49390,\n  \"luna</w>\": 14425,\n  \"lunar</w>\": 16043,\n  \"lunatic</w>\": 45874,\n  \"lunch\": 10954,\n  \"lunch</w>\": 2772,\n  \"luncheon</w>\": 15104,\n  \"lunches</w>\": 29705,\n  \"lunchtime</w>\": 14330,\n  \"lund\": 30975,\n  \"lund</w>\": 20181,\n  \"lunes</w>\": 35648,\n  \"lung\": 38479,\n  \"lung</w>\": 16271,\n  \"lungs</w>\": 27366,\n  \"lup</w>\": 27413,\n  \"lupita</w>\": 49352,\n  \"lupus</w>\": 36017,\n  \"lur\": 14439,\n  \"lure</w>\": 31376,\n  \"lures</w>\": 46747,\n  \"lurking</w>\": 29941,\n  \"lus</w>\": 7158,\n  \"lusci\": 38004,\n  \"luscious</w>\": 39935,\n  \"lush\": 40382,\n  \"lush</w>\": 16263,\n  \"lust\": 42071,\n  \"lust</w>\": 12662,\n  \"lustre</w>\": 46673,\n  \"luther\": 21848,\n  \"luther</w>\": 17208,\n  \"lutheran</w>\": 27341,\n  \"luton</w>\": 28288,\n  \"luv\": 24726,\n  \"luv</w>\": 8502,\n  \"lux\": 3439,\n  \"lux</w>\": 16704,\n  \"luxe</w>\": 26373,\n  \"luxemb\": 21314,\n  \"luxembour\": 22712,\n  \"luxembourg</w>\": 23949,\n  \"luxu\": 16112,\n  \"luxurious</w>\": 17292,\n  \"luxury\": 12083,\n  \"luxury</w>\": 5247,\n  \"luxurytravel</w>\": 29010,\n  \"luz</w>\": 41008,\n  \"lv\": 10862,\n  \"lv</w>\": 11184,\n  \"lvl</w>\": 31256,\n  \"lw\": 40515,\n  \"lw</w>\": 35115,\n  \"lx</w>\": 30789,\n  \"ly\": 1251,\n  \"ly</w>\": 597,\n  \"lydia</w>\": 24316,\n  \"lyf</w>\": 43688,\n  \"lyfe</w>\": 30787,\n  \"lyft</w>\": 32944,\n  \"lying</w>\": 7175,\n  \"lyk</w>\": 46376,\n  \"lyle</w>\": 36828,\n  \"lym\": 20087,\n  \"lyme</w>\": 31167,\n  \"lymph\": 30073,\n  \"lymphoma</w>\": 37648,\n  \"lyn\": 3957,\n  \"lyn</w>\": 5054,\n  \"lynch\": 31586,\n  \"lynch</w>\": 13560,\n  \"lynd\": 33416,\n  \"lynda</w>\": 42959,\n  \"lyndon</w>\": 48518,\n  \"lynn\": 25303,\n  \"lynn</w>\": 10667,\n  \"lynne</w>\": 26900,\n  \"lynx</w>\": 28941,\n  \"lyon</w>\": 17176,\n  \"lyons</w>\": 29453,\n  \"lyric\": 24366,\n  \"lyric</w>\": 21291,\n  \"lyrical</w>\": 33358,\n  \"lyricist</w>\": 49013,\n  \"lyrics</w>\": 9551,\n  \"lyrix</w>\": 46814,\n  \"lys</w>\": 45054,\n  \"lyte</w>\": 40059,\n  \"lywood</w>\": 4012,\n  \"lz</w>\": 30818,\n  \"lÃ©\": 39641,\n  \"m\": 76,\n  \"m</w>\": 332,\n  \"ma\": 577,\n  \"ma</w>\": 1226,\n  \"maa\": 42774,\n  \"maa</w>\": 21555,\n  \"maan</w>\": 33668,\n  \"maar</w>\": 48927,\n  \"maas\": 43332,\n  \"mab</w>\": 35639,\n  \"mabel</w>\": 47319,\n  \"mable</w>\": 23001,\n  \"mably</w>\": 40082,\n  \"mabu\": 44682,\n  \"mac\": 1961,\n  \"mac</w>\": 4945,\n  \"macar\": 21558,\n  \"macaroni</w>\": 41824,\n  \"macarthur</w>\": 36785,\n  \"macau\": 43984,\n  \"macau</w>\": 33370,\n  \"macbeth</w>\": 36321,\n  \"macbook</w>\": 20617,\n  \"macdonald</w>\": 20315,\n  \"mace</w>\": 44869,\n  \"maced\": 21102,\n  \"macedonia</w>\": 27071,\n  \"macfar\": 45374,\n  \"macfarlane</w>\": 48825,\n  \"mach\": 2637,\n  \"mach</w>\": 35091,\n  \"machado</w>\": 42318,\n  \"mache\": 43220,\n  \"macher</w>\": 29330,\n  \"machi\": 41783,\n  \"machin\": 17972,\n  \"machine\": 11539,\n  \"machine</w>\": 4169,\n  \"machinelearning</w>\": 13621,\n  \"machinery</w>\": 21858,\n  \"machines</w>\": 11108,\n  \"machining</w>\": 45562,\n  \"macho</w>\": 43977,\n  \"macht</w>\": 45225,\n  \"macin\": 36533,\n  \"mack\": 8590,\n  \"mack</w>\": 12145,\n  \"mackay</w>\": 32497,\n  \"macken\": 48057,\n  \"mackenzie</w>\": 22351,\n  \"mackerel</w>\": 35002,\n  \"mackin\": 26010,\n  \"macklemore</w>\": 41758,\n  \"macle\": 33843,\n  \"maclean</w>\": 47137,\n  \"macleod</w>\": 43684,\n  \"macmillan\": 36364,\n  \"macmillan</w>\": 35191,\n  \"macon</w>\": 35818,\n  \"macos</w>\": 45469,\n  \"macqu\": 38365,\n  \"macquarie</w>\": 40858,\n  \"macro\": 20891,\n  \"macro</w>\": 16626,\n  \"macron</w>\": 24859,\n  \"macs</w>\": 46548,\n  \"macy</w>\": 17113,\n  \"macys</w>\": 47652,\n  \"mad\": 2740,\n  \"mad</w>\": 3843,\n  \"mada</w>\": 37799,\n  \"madagas\": 24758,\n  \"madagascar</w>\": 25744,\n  \"madam\": 33634,\n  \"madam</w>\": 27538,\n  \"madame</w>\": 23507,\n  \"madd\": 31717,\n  \"madden</w>\": 19093,\n  \"maddie\": 39959,\n  \"maddie</w>\": 18875,\n  \"maddow</w>\": 32644,\n  \"maddy</w>\": 31734,\n  \"made\": 5388,\n  \"made</w>\": 1105,\n  \"madein\": 13670,\n  \"madeira</w>\": 33810,\n  \"madel\": 34532,\n  \"madele\": 29831,\n  \"madeleine</w>\": 33264,\n  \"madeline</w>\": 33905,\n  \"madewith\": 28627,\n  \"madewithunity</w>\": 43190,\n  \"madhu\": 23000,\n  \"madhuri\": 38346,\n  \"madhuridixit</w>\": 43889,\n  \"madhya</w>\": 48302,\n  \"madi\": 6527,\n  \"madi</w>\": 27282,\n  \"madison\": 24798,\n  \"madison</w>\": 8791,\n  \"madmen</w>\": 45452,\n  \"madness</w>\": 8755,\n  \"madon\": 44852,\n  \"madonna</w>\": 14137,\n  \"madra\": 27416,\n  \"madras</w>\": 42046,\n  \"madre</w>\": 42130,\n  \"madri\": 5529,\n  \"madrid</w>\": 5909,\n  \"mads</w>\": 41201,\n  \"madu\": 34913,\n  \"madurai</w>\": 49159,\n  \"maduro</w>\": 32912,\n  \"mae\": 16898,\n  \"mae</w>\": 17339,\n  \"maer\": 47088,\n  \"maestro</w>\": 24140,\n  \"mafi\": 47164,\n  \"mafia</w>\": 14890,\n  \"mag\": 1191,\n  \"mag</w>\": 4508,\n  \"maga</w>\": 8694,\n  \"magaz\": 2974,\n  \"magazine</w>\": 3113,\n  \"magazines</w>\": 22253,\n  \"magdal\": 29673,\n  \"mage\": 46568,\n  \"mage</w>\": 10923,\n  \"magee</w>\": 43872,\n  \"magenta</w>\": 38091,\n  \"magento</w>\": 42442,\n  \"mages</w>\": 31059,\n  \"maggi\": 29611,\n  \"maggie\": 41443,\n  \"maggie</w>\": 14524,\n  \"maggio</w>\": 49087,\n  \"magh\": 45555,\n  \"magi\": 19270,\n  \"magic\": 13061,\n  \"magic</w>\": 3778,\n  \"magical\": 36408,\n  \"magical</w>\": 7823,\n  \"magician</w>\": 26368,\n  \"magin\": 42678,\n  \"maging</w>\": 41310,\n  \"magn\": 10290,\n  \"magna</w>\": 34076,\n  \"magne\": 9921,\n  \"magnesium</w>\": 36379,\n  \"magnet</w>\": 18240,\n  \"magnetic</w>\": 13838,\n  \"magnets</w>\": 33030,\n  \"magni\": 24297,\n  \"magnific\": 9725,\n  \"magnificent</w>\": 10724,\n  \"magnitude</w>\": 22955,\n  \"magno\": 21184,\n  \"magnolia</w>\": 27123,\n  \"magnu\": 45198,\n  \"magnum</w>\": 23496,\n  \"magnus</w>\": 26275,\n  \"magpie</w>\": 45973,\n  \"mags</w>\": 31021,\n  \"maguire</w>\": 26470,\n  \"mah\": 7206,\n  \"mah</w>\": 10801,\n  \"maha\": 12237,\n  \"maha</w>\": 33983,\n  \"mahal</w>\": 22301,\n  \"mahan\": 45191,\n  \"mahar\": 11635,\n  \"maharaj</w>\": 38488,\n  \"maharashtra</w>\": 19328,\n  \"mahat\": 32434,\n  \"mahatma</w>\": 40530,\n  \"mahe\": 15756,\n  \"maher</w>\": 29826,\n  \"mahesh\": 33448,\n  \"mahesh</w>\": 22095,\n  \"mahi\": 32529,\n  \"mahi</w>\": 38659,\n  \"mahin\": 24113,\n  \"mahindra</w>\": 31285,\n  \"mahmoud</w>\": 41361,\n  \"mahog\": 30804,\n  \"mahogany</w>\": 33084,\n  \"mahon\": 45864,\n  \"mahon</w>\": 20371,\n  \"mahone</w>\": 26634,\n  \"mai\": 7138,\n  \"mai</w>\": 14595,\n  \"maia</w>\": 46585,\n  \"maid\": 23148,\n  \"maid</w>\": 10226,\n  \"maidan</w>\": 37346,\n  \"maiden\": 37011,\n  \"maiden</w>\": 13809,\n  \"maids</w>\": 27305,\n  \"maidstone</w>\": 44395,\n  \"mail\": 10478,\n  \"mail</w>\": 2614,\n  \"mailbox</w>\": 31482,\n  \"mailed</w>\": 42314,\n  \"mailing</w>\": 26680,\n  \"mailonline</w>\": 26021,\n  \"mails</w>\": 45213,\n  \"main\": 3904,\n  \"main</w>\": 2623,\n  \"maine\": 18639,\n  \"maine</w>\": 7836,\n  \"mained\": 15609,\n  \"mainedcm</w>\": 15845,\n  \"mainland</w>\": 27629,\n  \"mainly</w>\": 15280,\n  \"mains</w>\": 33656,\n  \"mainst\": 42102,\n  \"mainstream</w>\": 18034,\n  \"maintain</w>\": 12954,\n  \"maintained</w>\": 26665,\n  \"maintaining</w>\": 21964,\n  \"maintains</w>\": 38335,\n  \"mainten\": 9399,\n  \"maintenance</w>\": 9610,\n  \"mais</w>\": 28153,\n  \"maisie</w>\": 47355,\n  \"maison\": 37065,\n  \"maison</w>\": 27626,\n  \"mait\": 26387,\n  \"maize</w>\": 35386,\n  \"maj\": 2948,\n  \"maj</w>\": 28723,\n  \"maja</w>\": 47498,\n  \"maje\": 9852,\n  \"majestic</w>\": 15335,\n  \"majesty</w>\": 21188,\n  \"major\": 8008,\n  \"major</w>\": 3350,\n  \"majority</w>\": 10508,\n  \"majors</w>\": 23597,\n  \"mak\": 11271,\n  \"mak</w>\": 19253,\n  \"makar\": 42242,\n  \"makati</w>\": 39402,\n  \"make\": 3232,\n  \"make</w>\": 1078,\n  \"makeaw\": 45859,\n  \"makeinindia</w>\": 42739,\n  \"makeit\": 26308,\n  \"maken\": 47093,\n  \"makeover</w>\": 17926,\n  \"maker\": 15196,\n  \"maker</w>\": 4836,\n  \"makers</w>\": 6577,\n  \"makerspace</w>\": 42400,\n  \"makes</w>\": 2088,\n  \"makeshift</w>\": 43274,\n  \"makeu\": 41707,\n  \"makeup\": 26402,\n  \"makeup</w>\": 5853,\n  \"makeyourown\": 34090,\n  \"makeyourownlane</w>\": 34823,\n  \"maki</w>\": 34514,\n  \"makin\": 43096,\n  \"makin</w>\": 22407,\n  \"making\": 17976,\n  \"making</w>\": 1665,\n  \"makk\": 39852,\n  \"maknae</w>\": 44118,\n  \"mako</w>\": 49061,\n  \"mal\": 1662,\n  \"mal</w>\": 3796,\n  \"mala</w>\": 28290,\n  \"malade</w>\": 36928,\n  \"malaga</w>\": 35395,\n  \"malala</w>\": 41137,\n  \"malam</w>\": 48956,\n  \"malaria</w>\": 24929,\n  \"malawi</w>\": 23405,\n  \"malay\": 5323,\n  \"malay</w>\": 42430,\n  \"malayalam</w>\": 34860,\n  \"malaysi\": 39668,\n  \"malaysia</w>\": 8146,\n  \"malaysian</w>\": 21136,\n  \"malbec</w>\": 47741,\n  \"malcol\": 12645,\n  \"malcolm</w>\": 14139,\n  \"maldives</w>\": 16795,\n  \"male\": 11326,\n  \"male</w>\": 2801,\n  \"males</w>\": 14426,\n  \"malhotra</w>\": 28866,\n  \"mali\": 6701,\n  \"mali</w>\": 22669,\n  \"malia</w>\": 46714,\n  \"malibu</w>\": 21723,\n  \"malicious</w>\": 42147,\n  \"malign\": 41122,\n  \"malik</w>\": 11394,\n  \"mall\": 10984,\n  \"mall</w>\": 6220,\n  \"mallorca</w>\": 28082,\n  \"mallory</w>\": 38968,\n  \"malls</w>\": 36447,\n  \"malm\": 44071,\n  \"malnutrition</w>\": 41153,\n  \"malo</w>\": 43518,\n  \"malone</w>\": 19852,\n  \"maloney</w>\": 45897,\n  \"mals</w>\": 25370,\n  \"malt</w>\": 21688,\n  \"malta</w>\": 16989,\n  \"maltese</w>\": 39838,\n  \"malvern</w>\": 39356,\n  \"malware</w>\": 24153,\n  \"mam\": 4404,\n  \"mam</w>\": 17778,\n  \"mama</w>\": 7133,\n  \"mamamoo</w>\": 36012,\n  \"mamas</w>\": 42395,\n  \"mamba</w>\": 44189,\n  \"mament</w>\": 45690,\n  \"mami</w>\": 43858,\n  \"mamma</w>\": 34893,\n  \"mammal</w>\": 33385,\n  \"mammals</w>\": 31987,\n  \"mammoth</w>\": 28022,\n  \"man\": 723,\n  \"man</w>\": 786,\n  \"mana\": 29467,\n  \"mana</w>\": 15837,\n  \"manafort</w>\": 40108,\n  \"manag\": 1830,\n  \"manage</w>\": 9770,\n  \"managed</w>\": 7928,\n  \"management</w>\": 3319,\n  \"manager</w>\": 3898,\n  \"managerial</w>\": 44261,\n  \"managers</w>\": 12853,\n  \"manages</w>\": 29699,\n  \"managing</w>\": 10892,\n  \"manas\": 44188,\n  \"manatee</w>\": 46558,\n  \"mance</w>\": 2324,\n  \"manchester\": 24424,\n  \"manchester</w>\": 4651,\n  \"mancini</w>\": 47681,\n  \"mancity</w>\": 31538,\n  \"mancrush\": 36945,\n  \"mancrushmonday</w>\": 39307,\n  \"mand\": 4325,\n  \"mand</w>\": 27244,\n  \"mandala</w>\": 41106,\n  \"mandarin</w>\": 26455,\n  \"mandate</w>\": 26228,\n  \"mandatory</w>\": 19934,\n  \"mandel\": 34960,\n  \"mandela</w>\": 16280,\n  \"mandi\": 38961,\n  \"mandir</w>\": 35815,\n  \"mando</w>\": 34006,\n  \"mands</w>\": 12340,\n  \"mandu</w>\": 31440,\n  \"mandy\": 41505,\n  \"mandy</w>\": 24302,\n  \"mane\": 44471,\n  \"mane</w>\": 16044,\n  \"maneu\": 33216,\n  \"mang\": 25616,\n  \"mang</w>\": 31096,\n  \"manga</w>\": 11873,\n  \"mangal\": 43027,\n  \"manger</w>\": 48251,\n  \"mango\": 43831,\n  \"mango</w>\": 13962,\n  \"mangrove</w>\": 47180,\n  \"manhatt\": 10152,\n  \"manhattan</w>\": 10961,\n  \"mani\": 5654,\n  \"mani</w>\": 10718,\n  \"mania</w>\": 8435,\n  \"maniac</w>\": 31814,\n  \"maniacs</w>\": 41444,\n  \"manian</w>\": 40077,\n  \"manic\": 23017,\n  \"manic</w>\": 37825,\n  \"manicure</w>\": 33637,\n  \"manife\": 14379,\n  \"manifest</w>\": 34422,\n  \"manifestation</w>\": 48348,\n  \"manifesto</w>\": 20907,\n  \"manil\": 38827,\n  \"manila</w>\": 10969,\n  \"manipu\": 40261,\n  \"manipul\": 19237,\n  \"manipulation</w>\": 30277,\n  \"manipur</w>\": 47757,\n  \"manish\": 41759,\n  \"manish</w>\": 44720,\n  \"manit\": 15693,\n  \"manitoba</w>\": 20342,\n  \"manjaro</w>\": 41489,\n  \"mankind</w>\": 24155,\n  \"manly</w>\": 25194,\n  \"mann\": 19396,\n  \"mann</w>\": 4783,\n  \"manne\": 30160,\n  \"manned</w>\": 26139,\n  \"mannequin</w>\": 43388,\n  \"manner</w>\": 20700,\n  \"manners</w>\": 31693,\n  \"manning</w>\": 15996,\n  \"manny\": 37054,\n  \"manny</w>\": 20933,\n  \"mano\": 15753,\n  \"mano</w>\": 24016,\n  \"manoj</w>\": 41146,\n  \"manor\": 41830,\n  \"manor</w>\": 13614,\n  \"mans\": 28422,\n  \"mans</w>\": 7746,\n  \"mansfield</w>\": 25543,\n  \"manship</w>\": 15460,\n  \"mansion</w>\": 13404,\n  \"manslaughter</w>\": 48632,\n  \"manson</w>\": 26715,\n  \"mant\": 25122,\n  \"mant</w>\": 27037,\n  \"manta</w>\": 41431,\n  \"mantis</w>\": 39946,\n  \"mantle</w>\": 22159,\n  \"mantra</w>\": 25162,\n  \"manu\": 3404,\n  \"manu</w>\": 25799,\n  \"manual</w>\": 12268,\n  \"manuel\": 29171,\n  \"manuel</w>\": 9567,\n  \"manufac\": 5105,\n  \"manufacture</w>\": 27741,\n  \"manufactured</w>\": 24010,\n  \"manufacturer</w>\": 15668,\n  \"manufacturers</w>\": 18763,\n  \"manufacturing</w>\": 8386,\n  \"manure</w>\": 47907,\n  \"manus</w>\": 28181,\n  \"manuscript</w>\": 24365,\n  \"manuscripts</w>\": 40765,\n  \"manutd</w>\": 20994,\n  \"many\": 28484,\n  \"many</w>\": 1346,\n  \"manziel</w>\": 40637,\n  \"mao\": 47447,\n  \"mao</w>\": 25605,\n  \"maori</w>\": 43400,\n  \"map\": 25180,\n  \"map</w>\": 3923,\n  \"maple\": 21980,\n  \"maple</w>\": 10570,\n  \"mapleleafs</w>\": 41257,\n  \"mapoli</w>\": 28768,\n  \"mapp</w>\": 36894,\n  \"mapped</w>\": 41596,\n  \"mapping</w>\": 15231,\n  \"maps</w>\": 8765,\n  \"mapu\": 42082,\n  \"mar\": 675,\n  \"mar</w>\": 3091,\n  \"mara</w>\": 15655,\n  \"marais</w>\": 47913,\n  \"maran\": 44732,\n  \"marath\": 16274,\n  \"marathi</w>\": 34102,\n  \"marathon\": 40764,\n  \"marathon</w>\": 5910,\n  \"marau\": 38475,\n  \"marbella</w>\": 36182,\n  \"marble\": 45429,\n  \"marble</w>\": 13071,\n  \"marbles</w>\": 42931,\n  \"marc\": 14054,\n  \"marc</w>\": 9075,\n  \"marca</w>\": 38242,\n  \"marcel\": 17726,\n  \"marcel</w>\": 24652,\n  \"marcelo</w>\": 35939,\n  \"march\": 10638,\n  \"march</w>\": 2227,\n  \"marche</w>\": 36173,\n  \"marched</w>\": 37976,\n  \"marches</w>\": 38249,\n  \"marchfor\": 31721,\n  \"marching</w>\": 15082,\n  \"marchmadness</w>\": 28555,\n  \"marci\": 36698,\n  \"marcia</w>\": 41075,\n  \"marck</w>\": 47733,\n  \"marco\": 24719,\n  \"marco</w>\": 10924,\n  \"marcor\": 39945,\n  \"marcorubio</w>\": 41143,\n  \"marcos</w>\": 21696,\n  \"marcu\": 20760,\n  \"marcus\": 48955,\n  \"marcus</w>\": 9895,\n  \"mardi\": 39728,\n  \"mardi</w>\": 29229,\n  \"mardigras</w>\": 43343,\n  \"mare\": 26512,\n  \"mare</w>\": 8870,\n  \"mares</w>\": 19724,\n  \"marg</w>\": 44014,\n  \"margar\": 16838,\n  \"margare\": 10232,\n  \"margaret</w>\": 12185,\n  \"margarita</w>\": 25958,\n  \"margaritas</w>\": 42679,\n  \"margate</w>\": 37428,\n  \"margin\": 19464,\n  \"margin</w>\": 21357,\n  \"marginal</w>\": 38320,\n  \"margins</w>\": 33763,\n  \"margot</w>\": 37144,\n  \"mari\": 2603,\n  \"mari</w>\": 19322,\n  \"maria\": 41109,\n  \"maria</w>\": 6595,\n  \"mariachi</w>\": 44299,\n  \"mariah\": 31214,\n  \"mariah</w>\": 24789,\n  \"mariahcarey</w>\": 36538,\n  \"marian\": 41129,\n  \"marian</w>\": 24677,\n  \"mariana</w>\": 44224,\n  \"marianne</w>\": 32214,\n  \"mariano</w>\": 43988,\n  \"marie\": 20657,\n  \"marie</w>\": 7864,\n  \"marietta</w>\": 46634,\n  \"marig\": 41002,\n  \"marijuana</w>\": 9864,\n  \"maril\": 14611,\n  \"marilyn\": 38959,\n  \"marilyn</w>\": 18489,\n  \"marin\": 8910,\n  \"marin</w>\": 23992,\n  \"marina</w>\": 12060,\n  \"marinated</w>\": 33406,\n  \"marine\": 20674,\n  \"marine</w>\": 5746,\n  \"mariner</w>\": 39972,\n  \"mariners</w>\": 19086,\n  \"marines</w>\": 15018,\n  \"marino</w>\": 30878,\n  \"mario\": 39176,\n  \"mario</w>\": 7600,\n  \"marion\": 37765,\n  \"marion</w>\": 18397,\n  \"maris\": 21512,\n  \"maris</w>\": 33093,\n  \"marisa</w>\": 42938,\n  \"mariska</w>\": 44703,\n  \"marissa</w>\": 31219,\n  \"marist</w>\": 48223,\n  \"mariti\": 13124,\n  \"maritime</w>\": 14331,\n  \"marj\": 38639,\n  \"mark\": 3805,\n  \"mark</w>\": 2110,\n  \"marke\": 2399,\n  \"marked</w>\": 12360,\n  \"marker</w>\": 18170,\n  \"markers</w>\": 23664,\n  \"market\": 11614,\n  \"market</w>\": 2196,\n  \"marketer</w>\": 33482,\n  \"marketers</w>\": 23682,\n  \"marketing\": 19535,\n  \"marketing</w>\": 2905,\n  \"marketplace</w>\": 18241,\n  \"markets</w>\": 7292,\n  \"markham</w>\": 39817,\n  \"marking</w>\": 14705,\n  \"markings</w>\": 41046,\n  \"markle</w>\": 32672,\n  \"marko</w>\": 38338,\n  \"marks</w>\": 5466,\n  \"markus</w>\": 33725,\n  \"marl\": 24922,\n  \"marlborough</w>\": 43515,\n  \"marlene</w>\": 45117,\n  \"marley</w>\": 16504,\n  \"marlin</w>\": 34275,\n  \"marlins</w>\": 23309,\n  \"marlon</w>\": 32995,\n  \"marmalade</w>\": 39068,\n  \"marnock</w>\": 48305,\n  \"maro\": 27029,\n  \"maroon</w>\": 20501,\n  \"marqu\": 20704,\n  \"marque\": 13012,\n  \"marquee</w>\": 27725,\n  \"marquette</w>\": 37624,\n  \"marquez</w>\": 27317,\n  \"marquis</w>\": 33530,\n  \"marr</w>\": 32871,\n  \"marrake\": 37125,\n  \"marrakech</w>\": 39006,\n  \"marri\": 3839,\n  \"marriage\": 38047,\n  \"marriage</w>\": 7040,\n  \"marriages</w>\": 38190,\n  \"married</w>\": 6791,\n  \"marries</w>\": 46283,\n  \"marriott</w>\": 19211,\n  \"marrow</w>\": 31030,\n  \"marry</w>\": 13288,\n  \"marrying</w>\": 40507,\n  \"mars\": 41469,\n  \"mars</w>\": 7496,\n  \"marsden</w>\": 43344,\n  \"marse\": 26577,\n  \"marseille</w>\": 30365,\n  \"marsh\": 9237,\n  \"marsh</w>\": 13505,\n  \"marsha</w>\": 21491,\n  \"marshal</w>\": 26608,\n  \"marshall\": 30939,\n  \"marshall</w>\": 9811,\n  \"marshals</w>\": 44175,\n  \"marshes</w>\": 43450,\n  \"marshmal\": 21069,\n  \"marshmallow</w>\": 28530,\n  \"marshmallows</w>\": 39471,\n  \"mart\": 2348,\n  \"mart</w>\": 7772,\n  \"marta</w>\": 32858,\n  \"martens</w>\": 43211,\n  \"marth\": 34493,\n  \"martha</w>\": 16427,\n  \"marti\": 20577,\n  \"martial</w>\": 17088,\n  \"martialarts</w>\": 35895,\n  \"martian</w>\": 30214,\n  \"martin\": 6929,\n  \"martin</w>\": 3690,\n  \"martina</w>\": 34393,\n  \"martinez</w>\": 13913,\n  \"marting\": 47570,\n  \"martini</w>\": 22199,\n  \"martino</w>\": 41675,\n  \"martins</w>\": 30569,\n  \"marty\": 9926,\n  \"marty</w>\": 17169,\n  \"martyn</w>\": 44075,\n  \"martyr\": 36155,\n  \"martyr</w>\": 26067,\n  \"martyrdom</w>\": 43110,\n  \"martyred</w>\": 39114,\n  \"martyrs</w>\": 24707,\n  \"maru\": 37413,\n  \"maru</w>\": 31838,\n  \"marvel\": 13835,\n  \"marvel</w>\": 5996,\n  \"marvelcomics</w>\": 46897,\n  \"marvell\": 26576,\n  \"marvellous</w>\": 28402,\n  \"marvelous</w>\": 25487,\n  \"marvin</w>\": 19675,\n  \"marx\": 30559,\n  \"marx</w>\": 26001,\n  \"marxist</w>\": 45205,\n  \"mary\": 5146,\n  \"mary</w>\": 2676,\n  \"maryam\": 33636,\n  \"maryam</w>\": 36393,\n  \"maryland</w>\": 11379,\n  \"marys\": 40905,\n  \"marys</w>\": 40228,\n  \"mas\": 5226,\n  \"mas</w>\": 1412,\n  \"masa\": 24995,\n  \"masa</w>\": 41868,\n  \"masala</w>\": 31483,\n  \"masc\": 23564,\n  \"mascar\": 46984,\n  \"mascara</w>\": 31635,\n  \"mascot</w>\": 13983,\n  \"mascots</w>\": 43266,\n  \"mascul\": 25589,\n  \"masculine</w>\": 48269,\n  \"masculinity</w>\": 40465,\n  \"mase\": 49128,\n  \"maser\": 25798,\n  \"maserati</w>\": 30442,\n  \"mash\": 12317,\n  \"mash</w>\": 15680,\n  \"mashable</w>\": 41026,\n  \"mashed</w>\": 27395,\n  \"mashup</w>\": 27079,\n  \"masi\": 35965,\n  \"masjid</w>\": 31420,\n  \"mask\": 19262,\n  \"mask</w>\": 8306,\n  \"masked</w>\": 25757,\n  \"masking</w>\": 47046,\n  \"masks</w>\": 19055,\n  \"maslow</w>\": 44359,\n  \"mason\": 17424,\n  \"mason</w>\": 9699,\n  \"masonic</w>\": 36491,\n  \"masonry</w>\": 30764,\n  \"masons</w>\": 37195,\n  \"masqu\": 26593,\n  \"masquer\": 29604,\n  \"masquerade</w>\": 36944,\n  \"mass\": 4636,\n  \"mass</w>\": 4854,\n  \"massach\": 14484,\n  \"massachuse\": 14577,\n  \"massachusetts</w>\": 14756,\n  \"massacre</w>\": 14696,\n  \"massage</w>\": 13055,\n  \"masse\": 41735,\n  \"masses</w>\": 22978,\n  \"massey</w>\": 29868,\n  \"massi\": 17239,\n  \"massimo</w>\": 45821,\n  \"massive</w>\": 4818,\n  \"massively</w>\": 34297,\n  \"mast\": 45916,\n  \"mast</w>\": 27920,\n  \"master\": 4534,\n  \"master</w>\": 3498,\n  \"mastercard</w>\": 40542,\n  \"masterchef</w>\": 34809,\n  \"masterclass</w>\": 17529,\n  \"mastered</w>\": 32616,\n  \"masterful</w>\": 46823,\n  \"mastering</w>\": 28326,\n  \"mastermind</w>\": 34029,\n  \"masterpiece</w>\": 12066,\n  \"masterpieces</w>\": 37596,\n  \"masters</w>\": 6913,\n  \"mastery</w>\": 34800,\n  \"mastiff</w>\": 42311,\n  \"maswar\": 47887,\n  \"mat\": 905,\n  \"mat</w>\": 9063,\n  \"mata</w>\": 17270,\n  \"match\": 7733,\n  \"match</w>\": 2439,\n  \"matcha</w>\": 32433,\n  \"matchday</w>\": 15947,\n  \"matched</w>\": 17792,\n  \"matches</w>\": 8609,\n  \"matching</w>\": 11840,\n  \"matchup</w>\": 19355,\n  \"matchups</w>\": 49162,\n  \"mate\": 6137,\n  \"mate</w>\": 2936,\n  \"mated</w>\": 33813,\n  \"mateo</w>\": 34991,\n  \"mater</w>\": 23724,\n  \"materi\": 7084,\n  \"material</w>\": 7118,\n  \"materials</w>\": 8161,\n  \"maternal</w>\": 26131,\n  \"maternity</w>\": 23894,\n  \"mates</w>\": 5817,\n  \"math\": 13277,\n  \"math</w>\": 6025,\n  \"mathe\": 8725,\n  \"mathemat\": 11901,\n  \"mathematical</w>\": 25609,\n  \"mathematician</w>\": 41036,\n  \"mathematics</w>\": 20113,\n  \"mathew</w>\": 36333,\n  \"mathews</w>\": 37120,\n  \"mathi\": 23014,\n  \"mathieu</w>\": 40417,\n  \"maths</w>\": 14763,\n  \"mati\": 12716,\n  \"mati</w>\": 32268,\n  \"matic\": 36859,\n  \"matic</w>\": 7900,\n  \"matically</w>\": 38282,\n  \"matics</w>\": 23634,\n  \"matil\": 26751,\n  \"matilda</w>\": 36308,\n  \"matin</w>\": 44849,\n  \"matinee</w>\": 38525,\n  \"mating</w>\": 34346,\n  \"mation</w>\": 11701,\n  \"matisse</w>\": 43446,\n  \"mato\": 13127,\n  \"matologist</w>\": 48842,\n  \"matology</w>\": 27940,\n  \"matory</w>\": 25519,\n  \"matri\": 27041,\n  \"matrix</w>\": 18078,\n  \"mats</w>\": 22259,\n  \"matsu\": 30242,\n  \"matt\": 7972,\n  \"matt</w>\": 3972,\n  \"mattb\": 42791,\n  \"matte\": 31237,\n  \"matte</w>\": 19771,\n  \"mattel</w>\": 35365,\n  \"matteo</w>\": 33120,\n  \"matter\": 30471,\n  \"matter</w>\": 3828,\n  \"matters</w>\": 5708,\n  \"matth\": 41846,\n  \"matthe\": 5116,\n  \"matthew\": 17588,\n  \"matthew</w>\": 7008,\n  \"matthews</w>\": 16739,\n  \"matthi\": 29853,\n  \"matthias</w>\": 45104,\n  \"matti\": 39840,\n  \"mattress</w>\": 23438,\n  \"matty\": 31233,\n  \"matty</w>\": 29176,\n  \"matu\": 40616,\n  \"matur\": 22897,\n  \"mature</w>\": 14417,\n  \"maturity</w>\": 28047,\n  \"mau\": 8134,\n  \"mau</w>\": 23033,\n  \"maui</w>\": 20463,\n  \"maul\": 30725,\n  \"maur\": 10574,\n  \"maure\": 25191,\n  \"maureen</w>\": 31723,\n  \"maurice</w>\": 20200,\n  \"mauricio</w>\": 39066,\n  \"mauriti\": 28406,\n  \"mauritius</w>\": 29305,\n  \"mauro</w>\": 41691,\n  \"mav\": 25697,\n  \"maver\": 16700,\n  \"maverick</w>\": 27425,\n  \"mavericks</w>\": 30092,\n  \"mavs</w>\": 30665,\n  \"maw\": 39351,\n  \"maw</w>\": 42271,\n  \"mawards</w>\": 37682,\n  \"max\": 4898,\n  \"max</w>\": 3902,\n  \"maxi\": 8554,\n  \"maxi</w>\": 23266,\n  \"maxim\": 19892,\n  \"maxim</w>\": 38574,\n  \"maximize</w>\": 28673,\n  \"maximum</w>\": 13162,\n  \"maximus</w>\": 44312,\n  \"maxine</w>\": 38468,\n  \"maxwell</w>\": 19611,\n  \"maxx</w>\": 37466,\n  \"may\": 1686,\n  \"may</w>\": 1270,\n  \"maya\": 45783,\n  \"maya</w>\": 12987,\n  \"mayan</w>\": 37952,\n  \"maybe</w>\": 3746,\n  \"mayday</w>\": 29957,\n  \"mayer</w>\": 21196,\n  \"mayfair</w>\": 35171,\n  \"mayfield</w>\": 33933,\n  \"mayhem</w>\": 21502,\n  \"maymay\": 26600,\n  \"maymay</w>\": 33853,\n  \"maymayentrata</w>\": 30480,\n  \"maynard</w>\": 32487,\n  \"mayne</w>\": 35771,\n  \"mayo\": 22449,\n  \"mayo</w>\": 11280,\n  \"mayor\": 15429,\n  \"mayor</w>\": 4676,\n  \"mayoral</w>\": 28983,\n  \"mayorof\": 43533,\n  \"mayors</w>\": 28501,\n  \"mays</w>\": 35445,\n  \"maythe</w>\": 42281,\n  \"mayward\": 45751,\n  \"mayward</w>\": 23519,\n  \"mayweather</w>\": 22774,\n  \"maz\": 9177,\n  \"maz</w>\": 36215,\n  \"mazda</w>\": 18506,\n  \"maze</w>\": 21988,\n  \"mazz\": 29439,\n  \"maÃ±\": 37059,\n  \"maÃ±ana</w>\": 39354,\n  \"mb\": 758,\n  \"mb</w>\": 3996,\n  \"mba</w>\": 8329,\n  \"mban</w>\": 46685,\n  \"mbar\": 44452,\n  \"mbb</w>\": 10736,\n  \"mbc</w>\": 20137,\n  \"mbe\": 38395,\n  \"mbe</w>\": 27004,\n  \"mber\": 5467,\n  \"mber</w>\": 1034,\n  \"mberg</w>\": 26372,\n  \"mbers</w>\": 5443,\n  \"mbi</w>\": 45347,\n  \"mble\": 20310,\n  \"mble</w>\": 4756,\n  \"mbles</w>\": 28693,\n  \"mbling</w>\": 28604,\n  \"mbo\": 25733,\n  \"mbo</w>\": 11319,\n  \"mbps</w>\": 44896,\n  \"mbs</w>\": 10370,\n  \"mbta</w>\": 38979,\n  \"mbu</w>\": 42228,\n  \"mbuhari</w>\": 36752,\n  \"mc\": 1278,\n  \"mc</w>\": 4126,\n  \"mca\": 40570,\n  \"mca</w>\": 14635,\n  \"mcal\": 28663,\n  \"mcar\": 43776,\n  \"mcbride</w>\": 35080,\n  \"mcc</w>\": 21192,\n  \"mccabe</w>\": 37628,\n  \"mccaf\": 47385,\n  \"mccain</w>\": 20397,\n  \"mccall</w>\": 34844,\n  \"mccann</w>\": 27140,\n  \"mccar\": 9570,\n  \"mccarthy</w>\": 16974,\n  \"mccartney</w>\": 19958,\n  \"mccl\": 24709,\n  \"mccla\": 43672,\n  \"mccle\": 40139,\n  \"mcclure</w>\": 44945,\n  \"mcco\": 46152,\n  \"mccon\": 32638,\n  \"mccor\": 23057,\n  \"mccormack</w>\": 45164,\n  \"mccormick</w>\": 39088,\n  \"mccoy</w>\": 20218,\n  \"mccr\": 41996,\n  \"mccre\": 25393,\n  \"mccul\": 38833,\n  \"mccull\": 41782,\n  \"mcd</w>\": 28930,\n  \"mcder\": 27355,\n  \"mcdermott</w>\": 34504,\n  \"mcdon\": 12171,\n  \"mcdonald</w>\": 10741,\n  \"mcdonalds</w>\": 17674,\n  \"mcdonnell</w>\": 34360,\n  \"mcdowell</w>\": 34119,\n  \"mce\": 26864,\n  \"mcel\": 28752,\n  \"mcen\": 47423,\n  \"mcfad\": 36976,\n  \"mcfadden</w>\": 42105,\n  \"mcfar\": 29020,\n  \"mcfarlane</w>\": 47174,\n  \"mcfc</w>\": 16416,\n  \"mcfly</w>\": 38211,\n  \"mcg\": 42507,\n  \"mcg</w>\": 27995,\n  \"mcgee</w>\": 29223,\n  \"mcgill\": 46524,\n  \"mcgill</w>\": 35511,\n  \"mcgin\": 29596,\n  \"mcgowan</w>\": 40462,\n  \"mcgr\": 25169,\n  \"mcgra\": 29367,\n  \"mcgrath</w>\": 28759,\n  \"mcgraw</w>\": 40950,\n  \"mcgregor</w>\": 19642,\n  \"mcgu\": 34294,\n  \"mcguinness</w>\": 45299,\n  \"mcguire</w>\": 32635,\n  \"mci\": 46212,\n  \"mci</w>\": 45491,\n  \"mcil\": 30481,\n  \"mcin\": 18770,\n  \"mcintosh</w>\": 45353,\n  \"mcintyre</w>\": 33369,\n  \"mck\": 6781,\n  \"mckay</w>\": 33611,\n  \"mcke\": 27424,\n  \"mckee</w>\": 43529,\n  \"mcken\": 42619,\n  \"mckenna</w>\": 24924,\n  \"mckenzie</w>\": 25502,\n  \"mckin\": 15437,\n  \"mckinley</w>\": 39891,\n  \"mckinney</w>\": 33554,\n  \"mckinnon</w>\": 48736,\n  \"mckinsey</w>\": 48143,\n  \"mcl\": 49021,\n  \"mcla\": 12565,\n  \"mclaren\": 37381,\n  \"mclaren</w>\": 16789,\n  \"mclau\": 32285,\n  \"mclaughlin</w>\": 35346,\n  \"mcle\": 25299,\n  \"mclean</w>\": 28666,\n  \"mcleod</w>\": 40259,\n  \"mcm</w>\": 12251,\n  \"mcmahon</w>\": 24026,\n  \"mcmaster</w>\": 42703,\n  \"mcmillan</w>\": 45603,\n  \"mcn\": 42919,\n  \"mcnam\": 32682,\n  \"mcnamara</w>\": 37506,\n  \"mcne\": 42545,\n  \"mco</w>\": 33723,\n  \"mcqueen</w>\": 22544,\n  \"mcr\": 29884,\n  \"mcr</w>\": 16966,\n  \"mcs</w>\": 27020,\n  \"mcu</w>\": 30403,\n  \"md\": 8637,\n  \"md</w>\": 4732,\n  \"mdc\": 38773,\n  \"mdc</w>\": 41761,\n  \"mds</w>\": 48746,\n  \"mdt</w>\": 40822,\n  \"me\": 613,\n  \"me</w>\": 614,\n  \"mea\": 46045,\n  \"mea</w>\": 17711,\n  \"mead\": 12134,\n  \"mead</w>\": 21567,\n  \"meade</w>\": 37218,\n  \"meado\": 16402,\n  \"meadow\": 25213,\n  \"meadow</w>\": 17195,\n  \"meadows</w>\": 17178,\n  \"meal\": 29662,\n  \"meal</w>\": 5478,\n  \"meals</w>\": 11229,\n  \"mean\": 4189,\n  \"mean</w>\": 3450,\n  \"meand\": 48015,\n  \"meaning\": 14586,\n  \"meaning</w>\": 8342,\n  \"meaningful</w>\": 17480,\n  \"meaningless</w>\": 48932,\n  \"meanings</w>\": 45814,\n  \"means</w>\": 3494,\n  \"meant</w>\": 8674,\n  \"meantime</w>\": 27499,\n  \"meanwhile</w>\": 9650,\n  \"meas\": 5867,\n  \"measles</w>\": 38230,\n  \"measurable</w>\": 48010,\n  \"measure\": 15261,\n  \"measure</w>\": 10579,\n  \"measured</w>\": 23154,\n  \"measurement</w>\": 20973,\n  \"measurements</w>\": 29894,\n  \"measures</w>\": 11936,\n  \"measuring</w>\": 18064,\n  \"meat\": 10805,\n  \"meat</w>\": 6480,\n  \"meatball</w>\": 43642,\n  \"meatballs</w>\": 29233,\n  \"meath</w>\": 37920,\n  \"meatless\": 48085,\n  \"meats</w>\": 29558,\n  \"mec</w>\": 27432,\n  \"mecca</w>\": 36095,\n  \"mech</w>\": 38305,\n  \"mechan\": 6715,\n  \"mechanic</w>\": 24582,\n  \"mechanical</w>\": 14467,\n  \"mechanics</w>\": 20536,\n  \"mechanism</w>\": 22576,\n  \"mechanisms</w>\": 28610,\n  \"meck\": 41908,\n  \"med\": 1948,\n  \"med</w>\": 2177,\n  \"meda</w>\": 33614,\n  \"medal\": 29714,\n  \"medal</w>\": 6974,\n  \"medalist</w>\": 21040,\n  \"medalists</w>\": 43397,\n  \"medalli\": 31349,\n  \"medallion</w>\": 43469,\n  \"medallist</w>\": 41472,\n  \"medals</w>\": 14710,\n  \"mede</w>\": 48225,\n  \"meded</w>\": 27627,\n  \"medi\": 1436,\n  \"media\": 22064,\n  \"media</w>\": 1895,\n  \"mediac\": 37490,\n  \"median</w>\": 30491,\n  \"mediation</w>\": 42829,\n  \"medic\": 3602,\n  \"medic</w>\": 35441,\n  \"medicaid</w>\": 25421,\n  \"medical\": 18432,\n  \"medical</w>\": 4116,\n  \"medicare</w>\": 23710,\n  \"medication</w>\": 23771,\n  \"medications</w>\": 37181,\n  \"medicinal</w>\": 28772,\n  \"medicine</w>\": 5616,\n  \"medicines</w>\": 26541,\n  \"medics</w>\": 46688,\n  \"medieval\": 38956,\n  \"medieval</w>\": 10789,\n  \"medina</w>\": 27281,\n  \"mediocre</w>\": 41170,\n  \"medit\": 19130,\n  \"meditate</w>\": 38039,\n  \"meditation</w>\": 10827,\n  \"mediter\": 14194,\n  \"mediterran\": 14358,\n  \"mediterranean</w>\": 15327,\n  \"medium</w>\": 8675,\n  \"medley</w>\": 24793,\n  \"meds</w>\": 25075,\n  \"medtech</w>\": 42044,\n  \"medusa</w>\": 44216,\n  \"medway</w>\": 42286,\n  \"mee\": 1725,\n  \"mee</w>\": 14075,\n  \"meek</w>\": 28935,\n  \"meen\": 37940,\n  \"meen</w>\": 46515,\n  \"meer\": 26714,\n  \"meer</w>\": 27555,\n  \"meet\": 5714,\n  \"meet</w>\": 1633,\n  \"meeting\": 48566,\n  \"meeting</w>\": 2071,\n  \"meetings</w>\": 9980,\n  \"meets</w>\": 5972,\n  \"meetthe\": 27575,\n  \"meetup</w>\": 15430,\n  \"meg\": 11500,\n  \"meg</w>\": 16186,\n  \"mega\": 15979,\n  \"mega</w>\": 9068,\n  \"megab\": 38103,\n  \"megadeth</w>\": 46741,\n  \"megal\": 37650,\n  \"megam\": 26073,\n  \"megan\": 19127,\n  \"megan</w>\": 11503,\n  \"megap\": 33624,\n  \"megat\": 35581,\n  \"megh\": 31192,\n  \"meghan\": 39939,\n  \"meghan</w>\": 18261,\n  \"meh\": 10512,\n  \"meh</w>\": 22211,\n  \"mehta</w>\": 25031,\n  \"mei\": 22564,\n  \"mei</w>\": 25198,\n  \"meier</w>\": 29812,\n  \"mein\": 28857,\n  \"mein</w>\": 21466,\n  \"meister</w>\": 28407,\n  \"mek</w>\": 44645,\n  \"mel\": 1902,\n  \"mel</w>\": 6834,\n  \"mela</w>\": 35032,\n  \"melan\": 22261,\n  \"melanch\": 44818,\n  \"melancholy</w>\": 47821,\n  \"melani\": 34031,\n  \"melania</w>\": 32796,\n  \"melanie</w>\": 22153,\n  \"melanoma</w>\": 40862,\n  \"melb\": 47007,\n  \"melb</w>\": 28980,\n  \"melbourne\": 28387,\n  \"melbourne</w>\": 6995,\n  \"melee</w>\": 45108,\n  \"meli\": 28885,\n  \"melinda</w>\": 46303,\n  \"melis\": 18913,\n  \"melissa\": 41866,\n  \"melissa</w>\": 13030,\n  \"mell\": 22531,\n  \"mell</w>\": 41583,\n  \"mello</w>\": 47594,\n  \"mellon</w>\": 45162,\n  \"mellow</w>\": 32034,\n  \"melo\": 10354,\n  \"melo</w>\": 22374,\n  \"melodic</w>\": 41877,\n  \"melodies</w>\": 38412,\n  \"melody</w>\": 19119,\n  \"melon</w>\": 12146,\n  \"melrose</w>\": 36296,\n  \"melt\": 22209,\n  \"melt</w>\": 15957,\n  \"meltdown</w>\": 30613,\n  \"melted</w>\": 23037,\n  \"melting</w>\": 19247,\n  \"melton</w>\": 46062,\n  \"melts</w>\": 31446,\n  \"melville</w>\": 46030,\n  \"melvin</w>\": 31544,\n  \"mely</w>\": 6373,\n  \"mem\": 4937,\n  \"mem</w>\": 34944,\n  \"memb\": 2114,\n  \"member\": 29566,\n  \"member</w>\": 1640,\n  \"members</w>\": 2567,\n  \"membership</w>\": 11562,\n  \"membrane</w>\": 34088,\n  \"meme\": 35157,\n  \"meme</w>\": 9169,\n  \"memes</w>\": 12828,\n  \"memo\": 15967,\n  \"memo</w>\": 19334,\n  \"memoir</w>\": 20532,\n  \"memoirs</w>\": 45311,\n  \"memor\": 1858,\n  \"memorab\": 26271,\n  \"memorabilia</w>\": 27488,\n  \"memorable</w>\": 13172,\n  \"memorial\": 16285,\n  \"memorial</w>\": 4642,\n  \"memorialday</w>\": 21598,\n  \"memoriam</w>\": 48191,\n  \"memories</w>\": 4304,\n  \"memory\": 44766,\n  \"memory</w>\": 5137,\n  \"memph\": 10285,\n  \"memphis\": 38432,\n  \"memphis</w>\": 11298,\n  \"men\": 1552,\n  \"men</w>\": 1656,\n  \"mena</w>\": 23052,\n  \"menace</w>\": 29949,\n  \"mend\": 8151,\n  \"mend</w>\": 46927,\n  \"mendel\": 49268,\n  \"mendes</w>\": 18060,\n  \"mendez</w>\": 48275,\n  \"mendo\": 19327,\n  \"mendoza</w>\": 23680,\n  \"meng\": 37102,\n  \"meng</w>\": 37450,\n  \"mening\": 46428,\n  \"menon</w>\": 38255,\n  \"menopau\": 34974,\n  \"menopause</w>\": 46026,\n  \"mens\": 16924,\n  \"mens</w>\": 10495,\n  \"mensfashion</w>\": 27578,\n  \"menstru\": 28345,\n  \"menstrual</w>\": 40915,\n  \"menswear</w>\": 18803,\n  \"ment\": 1585,\n  \"ment</w>\": 777,\n  \"mental\": 8611,\n  \"mental</w>\": 3448,\n  \"mentalhealth\": 20593,\n  \"mentalhealth</w>\": 13022,\n  \"mentality</w>\": 26647,\n  \"mentally</w>\": 14307,\n  \"mentary</w>\": 4468,\n  \"mentation</w>\": 9512,\n  \"mentday</w>\": 40397,\n  \"mente\": 40302,\n  \"mente</w>\": 36396,\n  \"mented</w>\": 9249,\n  \"menting</w>\": 14471,\n  \"mention\": 43881,\n  \"mention</w>\": 6762,\n  \"mentioned</w>\": 11948,\n  \"mentioning</w>\": 34290,\n  \"mentions</w>\": 12334,\n  \"mento</w>\": 30582,\n  \"mentor\": 45342,\n  \"mentor</w>\": 11642,\n  \"mentoring</w>\": 19610,\n  \"mentors</w>\": 20945,\n  \"mentorship</w>\": 33878,\n  \"ments</w>\": 1827,\n  \"menu</w>\": 6225,\n  \"menus</w>\": 33534,\n  \"meo</w>\": 30792,\n  \"meow\": 39965,\n  \"meow</w>\": 17246,\n  \"mep</w>\": 27095,\n  \"mer\": 1316,\n  \"mer</w>\": 2452,\n  \"mera</w>\": 20028,\n  \"merc\": 34357,\n  \"merc</w>\": 44399,\n  \"mercado</w>\": 45479,\n  \"merce\": 8409,\n  \"mercede\": 34959,\n  \"mercedes\": 26403,\n  \"mercedes</w>\": 10685,\n  \"mercedesam\": 40107,\n  \"mercedesbenz</w>\": 32347,\n  \"mercen\": 40301,\n  \"mercer</w>\": 21632,\n  \"merch</w>\": 11504,\n  \"merchandi\": 14954,\n  \"merchandise</w>\": 16808,\n  \"merchandising</w>\": 49196,\n  \"merchant</w>\": 19563,\n  \"merchants</w>\": 34427,\n  \"merci\": 23364,\n  \"merci</w>\": 29378,\n  \"mercur\": 11471,\n  \"mercury\": 45203,\n  \"mercury</w>\": 12653,\n  \"mercy\": 33249,\n  \"mercy</w>\": 10815,\n  \"mere\": 29657,\n  \"mere</w>\": 10342,\n  \"mered\": 24657,\n  \"mered</w>\": 32297,\n  \"meredith</w>\": 25103,\n  \"merely</w>\": 28718,\n  \"merge</w>\": 30406,\n  \"merged</w>\": 46492,\n  \"merger</w>\": 24744,\n  \"merging</w>\": 49256,\n  \"meri\": 17993,\n  \"meri</w>\": 36109,\n  \"meria</w>\": 48433,\n  \"meric</w>\": 27097,\n  \"merica</w>\": 30561,\n  \"meridi\": 37901,\n  \"meridian</w>\": 31195,\n  \"mering</w>\": 41060,\n  \"meringue</w>\": 41661,\n  \"merino</w>\": 42648,\n  \"merit</w>\": 20830,\n  \"merkel</w>\": 24715,\n  \"merle</w>\": 48586,\n  \"merlin</w>\": 26517,\n  \"merlot</w>\": 40424,\n  \"mermaid</w>\": 16064,\n  \"mermaids</w>\": 43617,\n  \"mero</w>\": 19097,\n  \"merr\": 48288,\n  \"merri\": 21462,\n  \"merrill</w>\": 47713,\n  \"merritt</w>\": 36462,\n  \"merry\": 14167,\n  \"merry</w>\": 5779,\n  \"merrychristmas</w>\": 19672,\n  \"mers</w>\": 4199,\n  \"mersal</w>\": 36711,\n  \"mersey\": 25248,\n  \"mersey</w>\": 46239,\n  \"merseyside</w>\": 35382,\n  \"mert</w>\": 48496,\n  \"merton</w>\": 35315,\n  \"mery</w>\": 40873,\n  \"meryl</w>\": 35787,\n  \"mes\": 28432,\n  \"mes</w>\": 3029,\n  \"mesa</w>\": 18956,\n  \"mese</w>\": 42018,\n  \"mesh</w>\": 15030,\n  \"mesm\": 18695,\n  \"mesmer\": 38435,\n  \"mesmeri\": 25985,\n  \"mesmerizing</w>\": 35637,\n  \"meso\": 25537,\n  \"mesqu\": 46819,\n  \"mess\": 2490,\n  \"mess</w>\": 8188,\n  \"message</w>\": 3918,\n  \"messages</w>\": 9390,\n  \"messaging</w>\": 23234,\n  \"messe</w>\": 40391,\n  \"messed</w>\": 23580,\n  \"messenger</w>\": 17389,\n  \"messi\": 19394,\n  \"messi</w>\": 11252,\n  \"messiah</w>\": 28737,\n  \"messing</w>\": 23144,\n  \"messy</w>\": 15987,\n  \"mest</w>\": 23780,\n  \"mester</w>\": 47349,\n  \"mesut</w>\": 49177,\n  \"met\": 5249,\n  \"met</w>\": 2340,\n  \"meta\": 14803,\n  \"meta</w>\": 22701,\n  \"metab\": 16150,\n  \"metabol\": 48389,\n  \"metaboli\": 25573,\n  \"metabolic</w>\": 34311,\n  \"metabolism</w>\": 27824,\n  \"metal\": 8935,\n  \"metal</w>\": 4044,\n  \"metall\": 19084,\n  \"metallic</w>\": 17257,\n  \"metallica</w>\": 24079,\n  \"metals</w>\": 21375,\n  \"metam\": 28862,\n  \"metamor\": 39030,\n  \"metamorpho\": 47601,\n  \"metaph\": 24189,\n  \"metaphor</w>\": 34233,\n  \"metast\": 41973,\n  \"mete\": 11226,\n  \"meteor\": 26429,\n  \"meteor</w>\": 26823,\n  \"meteoro\": 25948,\n  \"meteorologist</w>\": 42849,\n  \"meter</w>\": 10104,\n  \"meters</w>\": 13247,\n  \"metgala</w>\": 30089,\n  \"meth\": 21867,\n  \"meth</w>\": 26177,\n  \"methane</w>\": 37565,\n  \"metho\": 5770,\n  \"method</w>\": 10284,\n  \"methodist</w>\": 25165,\n  \"methodo\": 28488,\n  \"methodology</w>\": 37316,\n  \"methods</w>\": 12200,\n  \"methyl\": 48999,\n  \"metmuseum</w>\": 28207,\n  \"meto\": 25679,\n  \"metoo</w>\": 24722,\n  \"metr\": 15086,\n  \"metre</w>\": 27889,\n  \"metres</w>\": 19798,\n  \"metric</w>\": 19950,\n  \"metrical</w>\": 40704,\n  \"metrics</w>\": 24396,\n  \"metro\": 7257,\n  \"metro</w>\": 6784,\n  \"metroid</w>\": 39957,\n  \"metropolis</w>\": 40476,\n  \"metropolitan</w>\": 19013,\n  \"metry</w>\": 20039,\n  \"mets</w>\": 9633,\n  \"mett</w>\": 28081,\n  \"metz</w>\": 40506,\n  \"meu</w>\": 34520,\n  \"mew</w>\": 40368,\n  \"mex\": 3213,\n  \"mex</w>\": 18387,\n  \"mexic\": 31728,\n  \"mexican\": 37442,\n  \"mexican</w>\": 8186,\n  \"mexicans</w>\": 47729,\n  \"mexico\": 31834,\n  \"mexico</w>\": 4604,\n  \"mey\": 28584,\n  \"mey</w>\": 27777,\n  \"meyer</w>\": 13963,\n  \"meyers</w>\": 32326,\n  \"mez\": 30615,\n  \"mez</w>\": 46833,\n  \"mezz\": 38771,\n  \"mf\": 18199,\n  \"mf</w>\": 11067,\n  \"mfa</w>\": 24107,\n  \"mfc</w>\": 39474,\n  \"mfg</w>\": 21912,\n  \"mfw</w>\": 27309,\n  \"mg\": 10003,\n  \"mg</w>\": 8014,\n  \"mga</w>\": 23954,\n  \"mgm</w>\": 27572,\n  \"mgmt</w>\": 22288,\n  \"mgr</w>\": 31500,\n  \"mgs</w>\": 48073,\n  \"mgt</w>\": 48663,\n  \"mh\": 9962,\n  \"mh</w>\": 10834,\n  \"mha</w>\": 41944,\n  \"mhealth</w>\": 41225,\n  \"mhs</w>\": 28815,\n  \"mhz</w>\": 31550,\n  \"mi\": 714,\n  \"mi</w>\": 2251,\n  \"mia</w>\": 5852,\n  \"miam\": 31053,\n  \"miami\": 15106,\n  \"miami</w>\": 4891,\n  \"mian</w>\": 24792,\n  \"miaw</w>\": 36046,\n  \"mib</w>\": 48178,\n  \"mic\": 1213,\n  \"mic</w>\": 3816,\n  \"mica</w>\": 41551,\n  \"micah</w>\": 33870,\n  \"mice</w>\": 19030,\n  \"mich\": 25628,\n  \"mich</w>\": 23029,\n  \"micha\": 2083,\n  \"michael\": 6051,\n  \"michael</w>\": 2511,\n  \"michaela</w>\": 41897,\n  \"michaeljackson</w>\": 33532,\n  \"michaels</w>\": 23868,\n  \"michal\": 47144,\n  \"miche\": 37966,\n  \"micheal</w>\": 43709,\n  \"michel\": 5158,\n  \"michel</w>\": 17153,\n  \"michelangelo</w>\": 41245,\n  \"michele</w>\": 20642,\n  \"michelin</w>\": 26330,\n  \"michelle\": 19028,\n  \"michelle</w>\": 8625,\n  \"michi\": 5658,\n  \"michigan\": 32344,\n  \"michigan</w>\": 6296,\n  \"mick\": 15171,\n  \"mick</w>\": 12592,\n  \"mickey\": 41813,\n  \"mickey</w>\": 13053,\n  \"micky</w>\": 43011,\n  \"micro\": 3160,\n  \"micro</w>\": 11374,\n  \"microbes</w>\": 44671,\n  \"microbi\": 19496,\n  \"microbial</w>\": 30335,\n  \"microbiology</w>\": 35348,\n  \"microbiome</w>\": 35148,\n  \"micron\": 48742,\n  \"microphone</w>\": 24643,\n  \"micropoetry</w>\": 35997,\n  \"microscope</w>\": 29114,\n  \"microscopy</w>\": 38431,\n  \"microsof\": 42424,\n  \"microsoft\": 38650,\n  \"microsoft</w>\": 7254,\n  \"microwave</w>\": 24240,\n  \"mics</w>\": 16554,\n  \"mid\": 2192,\n  \"mid</w>\": 4734,\n  \"midcentury</w>\": 48988,\n  \"midd\": 2983,\n  \"midday</w>\": 23390,\n  \"middle\": 9849,\n  \"middle</w>\": 3694,\n  \"middleeast</w>\": 32783,\n  \"middles\": 29769,\n  \"middlesbrough</w>\": 32436,\n  \"middlesex</w>\": 39154,\n  \"middleton</w>\": 23627,\n  \"middleweight</w>\": 35829,\n  \"midfield</w>\": 28116,\n  \"midfielder</w>\": 13423,\n  \"midget</w>\": 30734,\n  \"midi\": 39496,\n  \"midi</w>\": 27326,\n  \"midland</w>\": 24822,\n  \"midlands</w>\": 18062,\n  \"midnight\": 35746,\n  \"midnight</w>\": 6302,\n  \"mids</w>\": 40821,\n  \"midst</w>\": 24752,\n  \"midsummer</w>\": 35234,\n  \"midterm</w>\": 34365,\n  \"midterms</w>\": 32015,\n  \"midtown</w>\": 26069,\n  \"midway</w>\": 26536,\n  \"midweek</w>\": 29120,\n  \"midwest</w>\": 16627,\n  \"midwi\": 44802,\n  \"midwife</w>\": 37681,\n  \"midwives</w>\": 42355,\n  \"mie\": 20865,\n  \"mie</w>\": 10555,\n  \"miento</w>\": 46482,\n  \"mier</w>\": 36490,\n  \"mies</w>\": 8840,\n  \"miff\": 49398,\n  \"mig</w>\": 28743,\n  \"might</w>\": 2727,\n  \"mighty\": 26632,\n  \"mighty</w>\": 7815,\n  \"mign\": 41678,\n  \"migos</w>\": 44640,\n  \"migr\": 3736,\n  \"migra\": 28186,\n  \"migraine</w>\": 35360,\n  \"migrant</w>\": 18902,\n  \"migrants</w>\": 15814,\n  \"migrate</w>\": 41804,\n  \"migrating</w>\": 43604,\n  \"migration</w>\": 11891,\n  \"migu\": 12279,\n  \"miguel\": 33672,\n  \"miguel</w>\": 14436,\n  \"miho</w>\": 46870,\n  \"mii</w>\": 39896,\n  \"mik\": 15096,\n  \"mik</w>\": 46203,\n  \"mika\": 28609,\n  \"mika</w>\": 25185,\n  \"mike\": 5884,\n  \"mike</w>\": 3178,\n  \"mikel</w>\": 48865,\n  \"mikequind\": 33508,\n  \"mikequindazzi</w>\": 33551,\n  \"mikey\": 34934,\n  \"mikey</w>\": 23368,\n  \"mikha\": 30999,\n  \"mikhail</w>\": 38327,\n  \"miki</w>\": 48863,\n  \"miko</w>\": 35413,\n  \"miku</w>\": 37703,\n  \"mil\": 1469,\n  \"mil</w>\": 12826,\n  \"mila</w>\": 26183,\n  \"milan\": 30380,\n  \"milan</w>\": 8552,\n  \"milano</w>\": 18585,\n  \"milb</w>\": 42248,\n  \"mild</w>\": 16085,\n  \"mildly</w>\": 49059,\n  \"mile\": 7833,\n  \"mile</w>\": 6243,\n  \"mileage</w>\": 30579,\n  \"miler</w>\": 44680,\n  \"miles</w>\": 3446,\n  \"milestone</w>\": 13485,\n  \"milestones</w>\": 34025,\n  \"miley\": 25336,\n  \"miley</w>\": 14321,\n  \"mileycyrus</w>\": 28528,\n  \"milf</w>\": 45386,\n  \"milford</w>\": 35840,\n  \"mili\": 16698,\n  \"miliband</w>\": 41440,\n  \"milit\": 3715,\n  \"militant</w>\": 33629,\n  \"militants</w>\": 23974,\n  \"military\": 24498,\n  \"military</w>\": 4323,\n  \"militi\": 46625,\n  \"militia</w>\": 32114,\n  \"milk\": 13409,\n  \"milk</w>\": 5205,\n  \"milkshake</w>\": 29066,\n  \"milky\": 37320,\n  \"milky</w>\": 21120,\n  \"milkyway</w>\": 43246,\n  \"mill\": 4221,\n  \"mill</w>\": 6637,\n  \"milla</w>\": 49381,\n  \"millan\": 34930,\n  \"millan</w>\": 22188,\n  \"millar</w>\": 41851,\n  \"mille</w>\": 34066,\n  \"millen\": 48501,\n  \"millenni\": 10406,\n  \"millennial</w>\": 28357,\n  \"millennials</w>\": 18804,\n  \"millennium</w>\": 21116,\n  \"miller\": 21699,\n  \"miller</w>\": 5733,\n  \"milli\": 5340,\n  \"millie</w>\": 29283,\n  \"milling</w>\": 39133,\n  \"million\": 13154,\n  \"million</w>\": 2506,\n  \"millionaire</w>\": 25179,\n  \"millionaires</w>\": 47159,\n  \"millions</w>\": 8492,\n  \"mills</w>\": 10331,\n  \"millwall</w>\": 35902,\n  \"milly</w>\": 45794,\n  \"milne</w>\": 44590,\n  \"milner</w>\": 45230,\n  \"milo</w>\": 24548,\n  \"milton\": 39004,\n  \"milton</w>\": 17360,\n  \"milwau\": 13452,\n  \"milwaukee</w>\": 14259,\n  \"mim</w>\": 39379,\n  \"mimi</w>\": 27086,\n  \"mimic\": 47116,\n  \"mimic</w>\": 46519,\n  \"mimo\": 45551,\n  \"min\": 771,\n  \"min</w>\": 3331,\n  \"mina</w>\": 15281,\n  \"minaj</w>\": 25136,\n  \"minal</w>\": 40222,\n  \"minat</w>\": 33275,\n  \"mince</w>\": 32396,\n  \"mind\": 5890,\n  \"mind</w>\": 2575,\n  \"mindanao</w>\": 44228,\n  \"minded</w>\": 21330,\n  \"mindful</w>\": 28457,\n  \"mindfulness</w>\": 15707,\n  \"minding</w>\": 45337,\n  \"minds</w>\": 9244,\n  \"mindset</w>\": 14217,\n  \"mindy\": 46875,\n  \"mindy</w>\": 38551,\n  \"mine\": 20149,\n  \"mine</w>\": 3347,\n  \"minecraft</w>\": 15678,\n  \"mined</w>\": 48034,\n  \"minent</w>\": 12533,\n  \"miner\": 14109,\n  \"miner</w>\": 26572,\n  \"mineral</w>\": 17692,\n  \"minerals</w>\": 21169,\n  \"miners</w>\": 22119,\n  \"mines</w>\": 16211,\n  \"ming\": 10868,\n  \"ming</w>\": 2107,\n  \"mingham</w>\": 7590,\n  \"mingle</w>\": 38437,\n  \"mingly</w>\": 36909,\n  \"mington\": 49283,\n  \"mington</w>\": 23119,\n  \"minh</w>\": 48734,\n  \"minho</w>\": 21318,\n  \"mini\": 1810,\n  \"mini</w>\": 3954,\n  \"miniature\": 44298,\n  \"miniature</w>\": 16377,\n  \"miniatures</w>\": 38816,\n  \"minic\": 31522,\n  \"minim\": 10005,\n  \"minimal</w>\": 18458,\n  \"minimalism</w>\": 42594,\n  \"minimalist</w>\": 26641,\n  \"minimize</w>\": 38697,\n  \"minimum</w>\": 12244,\n  \"minindia</w>\": 28458,\n  \"mining</w>\": 8473,\n  \"minion</w>\": 28622,\n  \"minions</w>\": 27035,\n  \"minis\": 33409,\n  \"minis</w>\": 35976,\n  \"minister\": 25688,\n  \"minister</w>\": 3569,\n  \"ministerial</w>\": 33008,\n  \"ministers</w>\": 16406,\n  \"ministries</w>\": 27895,\n  \"ministry</w>\": 8742,\n  \"mink</w>\": 42017,\n  \"minn\": 45991,\n  \"minn</w>\": 47318,\n  \"minne\": 7083,\n  \"minneapolis</w>\": 16977,\n  \"minneso\": 9380,\n  \"minnesota</w>\": 9968,\n  \"minnie</w>\": 24493,\n  \"mino</w>\": 22791,\n  \"minogue</w>\": 44202,\n  \"minor</w>\": 8522,\n  \"minorities</w>\": 28119,\n  \"minority</w>\": 16210,\n  \"minors</w>\": 36789,\n  \"mins</w>\": 6196,\n  \"minsk</w>\": 46151,\n  \"minster</w>\": 11189,\n  \"mint\": 48084,\n  \"mint</w>\": 7506,\n  \"minted</w>\": 49377,\n  \"minton</w>\": 20050,\n  \"minu\": 29064,\n  \"minus</w>\": 15358,\n  \"minute\": 28931,\n  \"minute</w>\": 4497,\n  \"minutes</w>\": 3056,\n  \"mio</w>\": 26366,\n  \"mir\": 2750,\n  \"mir</w>\": 6585,\n  \"mira\": 21665,\n  \"mira</w>\": 22762,\n  \"mirac\": 13685,\n  \"miracle\": 49208,\n  \"miracle</w>\": 11543,\n  \"miracles</w>\": 23478,\n  \"miraculous</w>\": 38671,\n  \"mirage</w>\": 28679,\n  \"mirai</w>\": 49060,\n  \"mirand\": 32367,\n  \"miranda</w>\": 17590,\n  \"mire\": 38140,\n  \"mire</w>\": 30140,\n  \"miri\": 22273,\n  \"miriam</w>\": 30950,\n  \"miro\": 34851,\n  \"miro</w>\": 48317,\n  \"mirren</w>\": 47600,\n  \"mirro\": 48500,\n  \"mirror\": 29823,\n  \"mirror</w>\": 7220,\n  \"mirrors</w>\": 21823,\n  \"mirza</w>\": 36440,\n  \"mis\": 866,\n  \"mis</w>\": 11239,\n  \"mischief</w>\": 33896,\n  \"misconceptions</w>\": 48681,\n  \"misconduct</w>\": 30601,\n  \"mise\": 46567,\n  \"mise</w>\": 17267,\n  \"miser\": 33394,\n  \"miserable</w>\": 26196,\n  \"misery</w>\": 28360,\n  \"mises</w>\": 24390,\n  \"misfits</w>\": 42708,\n  \"mish\": 15494,\n  \"mish</w>\": 20981,\n  \"misha</w>\": 35434,\n  \"mishra</w>\": 33042,\n  \"misleading</w>\": 30862,\n  \"mism</w>\": 15948,\n  \"miso\": 27657,\n  \"miso</w>\": 33441,\n  \"misogy\": 31315,\n  \"misogyny</w>\": 48415,\n  \"miss\": 6984,\n  \"miss</w>\": 1526,\n  \"missal</w>\": 38337,\n  \"missed</w>\": 3955,\n  \"misses</w>\": 15844,\n  \"missi\": 3008,\n  \"missile</w>\": 14411,\n  \"missiles</w>\": 27868,\n  \"missin</w>\": 36209,\n  \"missing\": 23509,\n  \"missing</w>\": 3423,\n  \"mission\": 12738,\n  \"mission</w>\": 2406,\n  \"missionaries</w>\": 40580,\n  \"missionary</w>\": 27915,\n  \"missions</w>\": 6990,\n  \"mississ\": 26483,\n  \"mississauga</w>\": 28393,\n  \"mississi\": 11687,\n  \"mississippi</w>\": 12232,\n  \"missou\": 30710,\n  \"missoula</w>\": 48549,\n  \"missouri</w>\": 11835,\n  \"missuni\": 26347,\n  \"missuniverse</w>\": 28766,\n  \"missy\": 48105,\n  \"missy</w>\": 31515,\n  \"missyou</w>\": 45799,\n  \"mist\": 12610,\n  \"mist</w>\": 11946,\n  \"mistak\": 20478,\n  \"mistake</w>\": 11303,\n  \"mistaken</w>\": 29182,\n  \"mistakenly</w>\": 48494,\n  \"mistakes</w>\": 12824,\n  \"mister\": 26949,\n  \"mister</w>\": 18895,\n  \"mistle\": 46800,\n  \"mistletoe</w>\": 48569,\n  \"mistre\": 42039,\n  \"mistress</w>\": 24349,\n  \"mists</w>\": 28636,\n  \"misty</w>\": 18799,\n  \"misunderstood</w>\": 41574,\n  \"misuse</w>\": 40970,\n  \"mit\": 3303,\n  \"mit</w>\": 4551,\n  \"mita</w>\": 47514,\n  \"mitage</w>\": 27964,\n  \"mitch\": 6969,\n  \"mitch</w>\": 14150,\n  \"mitchell\": 39339,\n  \"mitchell</w>\": 9007,\n  \"mite</w>\": 26929,\n  \"mith\": 21752,\n  \"mith</w>\": 17948,\n  \"miti\": 17857,\n  \"mitigate</w>\": 42273,\n  \"mitigation</w>\": 35514,\n  \"mito\": 38254,\n  \"mitochondri\": 42132,\n  \"mitra</w>\": 47703,\n  \"mits</w>\": 24086,\n  \"mitsu\": 17905,\n  \"mitsubi\": 21604,\n  \"mitsubishi</w>\": 23030,\n  \"mitt\": 17321,\n  \"mitt</w>\": 21341,\n  \"mitted</w>\": 10307,\n  \"mitting</w>\": 27938,\n  \"mitz\": 41827,\n  \"mium</w>\": 35891,\n  \"miwx</w>\": 43941,\n  \"mix\": 3210,\n  \"mix</w>\": 3285,\n  \"mixed\": 29376,\n  \"mixed</w>\": 6780,\n  \"mixer</w>\": 17200,\n  \"mixers</w>\": 39175,\n  \"mixes</w>\": 19061,\n  \"mixing</w>\": 15588,\n  \"mixtape</w>\": 11044,\n  \"mixture</w>\": 28286,\n  \"miy\": 25695,\n  \"miya</w>\": 36257,\n  \"miz\": 20881,\n  \"miz</w>\": 30795,\n  \"mize</w>\": 19076,\n  \"mized</w>\": 43418,\n  \"mizing</w>\": 38715,\n  \"mizz\": 19985,\n  \"mizzou</w>\": 26165,\n  \"mj\": 13117,\n  \"mj</w>\": 14733,\n  \"mk\": 11581,\n  \"mk</w>\": 8937,\n  \"mke</w>\": 36642,\n  \"mkt</w>\": 24814,\n  \"ml\": 3627,\n  \"ml</w>\": 5780,\n  \"mla</w>\": 16723,\n  \"mlas</w>\": 48464,\n  \"mlb\": 21039,\n  \"mlb</w>\": 7482,\n  \"mley</w>\": 40329,\n  \"mlg</w>\": 45801,\n  \"mlin</w>\": 24556,\n  \"mlk</w>\": 17941,\n  \"mlkday</w>\": 39905,\n  \"mlm</w>\": 37611,\n  \"mln</w>\": 18971,\n  \"mlp</w>\": 23620,\n  \"mlpfi\": 45475,\n  \"mlpfim</w>\": 45640,\n  \"mls</w>\": 13077,\n  \"mm\": 1028,\n  \"mm</w>\": 2848,\n  \"mma\": 34140,\n  \"mma</w>\": 6096,\n  \"mmc</w>\": 44253,\n  \"mme</w>\": 13105,\n  \"mmed</w>\": 19570,\n  \"mmer\": 35717,\n  \"mmer</w>\": 7508,\n  \"mmers</w>\": 28128,\n  \"mmes</w>\": 42862,\n  \"mmi</w>\": 34147,\n  \"mming\": 21038,\n  \"mming</w>\": 16507,\n  \"mmings</w>\": 31357,\n  \"mmit</w>\": 41050,\n  \"mmj</w>\": 43015,\n  \"mmm\": 37908,\n  \"mmm</w>\": 7641,\n  \"mmmm\": 36312,\n  \"mmmm</w>\": 13180,\n  \"mmmmm</w>\": 21808,\n  \"mmmmmm</w>\": 43740,\n  \"mmo</w>\": 30418,\n  \"mmon</w>\": 41131,\n  \"mmor\": 36657,\n  \"mmorpg</w>\": 39476,\n  \"mms</w>\": 37803,\n  \"mmva</w>\": 42666,\n  \"mmy\": 28837,\n  \"mmy</w>\": 8722,\n  \"mn\": 5086,\n  \"mn</w>\": 4057,\n  \"mna</w>\": 34877,\n  \"mnd</w>\": 44776,\n  \"mnet</w>\": 34129,\n  \"mnf</w>\": 41105,\n  \"mnl</w>\": 32980,\n  \"mnleg</w>\": 42653,\n  \"mns</w>\": 39040,\n  \"mnt</w>\": 21477,\n  \"mntwins</w>\": 45448,\n  \"mnwild</w>\": 39044,\n  \"mnwx</w>\": 39592,\n  \"mo\": 617,\n  \"mo</w>\": 2080,\n  \"moa</w>\": 33174,\n  \"moana</w>\": 43241,\n  \"mob\": 2818,\n  \"mob</w>\": 12754,\n  \"mobi\": 9451,\n  \"mobil\": 26343,\n  \"mobil</w>\": 29815,\n  \"mobile\": 12935,\n  \"mobile</w>\": 3451,\n  \"mobiles</w>\": 44302,\n  \"mobili\": 20770,\n  \"mobility</w>\": 12546,\n  \"mobilization</w>\": 48916,\n  \"moby</w>\": 47219,\n  \"moc\": 41439,\n  \"moc</w>\": 36992,\n  \"mocha</w>\": 28425,\n  \"mochi</w>\": 47973,\n  \"mock\": 15641,\n  \"mock</w>\": 12759,\n  \"mocked</w>\": 47400,\n  \"mocking\": 28692,\n  \"mocking</w>\": 37870,\n  \"mocks</w>\": 35142,\n  \"mod\": 6362,\n  \"mod</w>\": 10893,\n  \"moda</w>\": 25814,\n  \"modal</w>\": 33157,\n  \"mode\": 20402,\n  \"mode</w>\": 6493,\n  \"model\": 4591,\n  \"model</w>\": 2863,\n  \"modeled</w>\": 39527,\n  \"modeling</w>\": 13706,\n  \"modelling</w>\": 19946,\n  \"models</w>\": 6176,\n  \"moder\": 2894,\n  \"moderate</w>\": 16435,\n  \"moderated</w>\": 27928,\n  \"moderating</w>\": 34242,\n  \"moderator</w>\": 32659,\n  \"modern\": 11706,\n  \"modern</w>\": 4077,\n  \"modernart</w>\": 34417,\n  \"moderni\": 24328,\n  \"modernism</w>\": 39601,\n  \"modernist</w>\": 36773,\n  \"modernization</w>\": 47294,\n  \"modes</w>\": 30454,\n  \"modest</w>\": 25436,\n  \"modi\": 9047,\n  \"modi</w>\": 7774,\n  \"modification</w>\": 37630,\n  \"modified</w>\": 17964,\n  \"modo</w>\": 36820,\n  \"mods</w>\": 23843,\n  \"modu\": 9036,\n  \"modular</w>\": 22437,\n  \"module</w>\": 16757,\n  \"modules</w>\": 30575,\n  \"moe\": 38655,\n  \"moe</w>\": 17938,\n  \"mof\": 30798,\n  \"moff\": 27160,\n  \"mog</w>\": 42362,\n  \"moga\": 41732,\n  \"mogadishu</w>\": 45133,\n  \"mogul</w>\": 41320,\n  \"moh\": 18979,\n  \"moh</w>\": 35388,\n  \"moha\": 46892,\n  \"moham\": 7923,\n  \"mohamed</w>\": 18472,\n  \"mohammad</w>\": 19926,\n  \"mohammed</w>\": 16168,\n  \"mohan\": 26521,\n  \"mohan</w>\": 23586,\n  \"mohawk</w>\": 34942,\n  \"mohd</w>\": 49094,\n  \"mohsin</w>\": 48861,\n  \"moi\": 20691,\n  \"moi</w>\": 21825,\n  \"moil</w>\": 30349,\n  \"moines</w>\": 32091,\n  \"moist\": 19831,\n  \"moist</w>\": 33263,\n  \"moisture</w>\": 20412,\n  \"moisturi\": 25942,\n  \"moj\": 34505,\n  \"moja\": 49055,\n  \"mojito</w>\": 46830,\n  \"mojo</w>\": 25204,\n  \"mok\": 49146,\n  \"mol\": 4246,\n  \"mol</w>\": 31582,\n  \"mold</w>\": 21846,\n  \"molding</w>\": 46274,\n  \"moldova</w>\": 47317,\n  \"mole\": 9927,\n  \"mole</w>\": 23529,\n  \"molecular</w>\": 19370,\n  \"molecule</w>\": 39233,\n  \"molecules</w>\": 35643,\n  \"molina</w>\": 34201,\n  \"mollie</w>\": 48203,\n  \"molly\": 24368,\n  \"molly</w>\": 12573,\n  \"molo\": 41510,\n  \"mology</w>\": 32255,\n  \"molten</w>\": 46071,\n  \"moly</w>\": 47083,\n  \"mom\": 1614,\n  \"mom</w>\": 2543,\n  \"moma</w>\": 33605,\n  \"mombasa</w>\": 40340,\n  \"moment\": 12197,\n  \"moment</w>\": 2495,\n  \"momento</w>\": 30078,\n  \"moments</w>\": 5251,\n  \"momentum</w>\": 15722,\n  \"momlife</w>\": 43825,\n  \"momma</w>\": 14508,\n  \"mommy</w>\": 12456,\n  \"momo\": 48490,\n  \"momo</w>\": 25980,\n  \"moms\": 28446,\n  \"moms</w>\": 10042,\n  \"momsdemand</w>\": 33744,\n  \"mon\": 749,\n  \"mon</w>\": 2173,\n  \"mona</w>\": 19143,\n  \"monaco</w>\": 14938,\n  \"monaghan</w>\": 39797,\n  \"monarch\": 27235,\n  \"monarch</w>\": 22619,\n  \"monarchs</w>\": 36750,\n  \"monarchy</w>\": 47503,\n  \"monaster\": 19422,\n  \"monastery</w>\": 21850,\n  \"monc\": 34847,\n  \"moncton</w>\": 44962,\n  \"mond\": 14522,\n  \"mond</w>\": 4475,\n  \"monday\": 6205,\n  \"monday</w>\": 2098,\n  \"mondaymorning</w>\": 40089,\n  \"mondaymotiv\": 45488,\n  \"mondaymotivation</w>\": 8198,\n  \"mondaymotivaton</w>\": 47034,\n  \"mondays</w>\": 13815,\n  \"monde</w>\": 29339,\n  \"mondo</w>\": 36207,\n  \"monds</w>\": 20317,\n  \"mone</w>\": 25990,\n  \"monet</w>\": 24499,\n  \"monetary</w>\": 26394,\n  \"moneti\": 38056,\n  \"money\": 12743,\n  \"money</w>\": 2327,\n  \"mong</w>\": 43566,\n  \"monger</w>\": 38928,\n  \"mongers</w>\": 27670,\n  \"mongo\": 20680,\n  \"mongolia</w>\": 27144,\n  \"mongolian</w>\": 46335,\n  \"moni\": 46851,\n  \"monia</w>\": 31161,\n  \"monic\": 30893,\n  \"monica</w>\": 13540,\n  \"monit\": 9014,\n  \"monitor</w>\": 10198,\n  \"monitored</w>\": 45828,\n  \"monitoring</w>\": 11030,\n  \"monitors</w>\": 30478,\n  \"monk\": 30557,\n  \"monk</w>\": 16424,\n  \"monkey\": 29597,\n  \"monkey</w>\": 9465,\n  \"monkeys</w>\": 15781,\n  \"monks</w>\": 29090,\n  \"monmouth</w>\": 36929,\n  \"mono\": 8220,\n  \"mono</w>\": 22537,\n  \"monochrome</w>\": 25576,\n  \"monogram</w>\": 39665,\n  \"monologue</w>\": 47776,\n  \"monopoly</w>\": 25241,\n  \"monoxide</w>\": 49314,\n  \"monro\": 45750,\n  \"monroe</w>\": 13625,\n  \"mons</w>\": 19885,\n  \"monsanto</w>\": 37592,\n  \"monsi\": 46677,\n  \"monsieur</w>\": 48879,\n  \"monsoon</w>\": 18872,\n  \"monsta</w>\": 30718,\n  \"monstax</w>\": 45631,\n  \"monste\": 47045,\n  \"monster\": 14454,\n  \"monster</w>\": 6060,\n  \"monsters</w>\": 11546,\n  \"mont\": 5186,\n  \"mont</w>\": 5382,\n  \"montag\": 37202,\n  \"montage</w>\": 32325,\n  \"montal\": 42126,\n  \"montan\": 28405,\n  \"montana</w>\": 11436,\n  \"monte\": 8711,\n  \"monte</w>\": 14667,\n  \"montene\": 28538,\n  \"montenegro</w>\": 30378,\n  \"monter\": 36673,\n  \"monterey</w>\": 23388,\n  \"monterrey</w>\": 45254,\n  \"montess\": 43205,\n  \"montessori</w>\": 45443,\n  \"montgom\": 13852,\n  \"montgomery</w>\": 14951,\n  \"month\": 7680,\n  \"month</w>\": 1924,\n  \"monthly</w>\": 8764,\n  \"months</w>\": 3109,\n  \"monthsary</w>\": 42420,\n  \"monton</w>\": 41961,\n  \"montp\": 39523,\n  \"montre\": 8434,\n  \"montreal</w>\": 9262,\n  \"montrose</w>\": 42347,\n  \"monty\": 43997,\n  \"monty</w>\": 24038,\n  \"monu\": 9748,\n  \"monument</w>\": 12019,\n  \"monumental</w>\": 31297,\n  \"monuments</w>\": 26916,\n  \"mony</w>\": 4117,\n  \"monza</w>\": 40380,\n  \"moo\": 4953,\n  \"moo</w>\": 24626,\n  \"mood\": 42358,\n  \"mood</w>\": 5394,\n  \"moods</w>\": 43727,\n  \"moody</w>\": 17170,\n  \"moom\": 36887,\n  \"moon\": 6334,\n  \"moon</w>\": 3293,\n  \"mooney</w>\": 37942,\n  \"moonlight</w>\": 20001,\n  \"moons</w>\": 29887,\n  \"moonshine</w>\": 46706,\n  \"moor\": 14817,\n  \"moor</w>\": 11877,\n  \"moore\": 28613,\n  \"moore</w>\": 6708,\n  \"moors</w>\": 32577,\n  \"moose\": 37562,\n  \"moose</w>\": 17338,\n  \"moot</w>\": 46895,\n  \"mop</w>\": 33900,\n  \"mopar</w>\": 41166,\n  \"mor\": 657,\n  \"mor</w>\": 18614,\n  \"mora</w>\": 29262,\n  \"moral</w>\": 11246,\n  \"morale</w>\": 39404,\n  \"morales</w>\": 27117,\n  \"morality</w>\": 34133,\n  \"morally</w>\": 42519,\n  \"morals</w>\": 46223,\n  \"moran</w>\": 21557,\n  \"moray</w>\": 44569,\n  \"more\": 5434,\n  \"more</w>\": 750,\n  \"morecam\": 37305,\n  \"morecambe</w>\": 43414,\n  \"mored</w>\": 20195,\n  \"moreland</w>\": 44135,\n  \"moreno</w>\": 24826,\n  \"morethan\": 30889,\n  \"morg\": 34284,\n  \"morgan\": 15432,\n  \"morgan</w>\": 6075,\n  \"morgen</w>\": 35106,\n  \"mori\": 25710,\n  \"mori</w>\": 29514,\n  \"moris\": 43131,\n  \"moritz</w>\": 45594,\n  \"morley</w>\": 40439,\n  \"mormon</w>\": 27715,\n  \"morn</w>\": 22393,\n  \"mornin</w>\": 28327,\n  \"morning\": 10769,\n  \"morning</w>\": 1119,\n  \"mornings</w>\": 12106,\n  \"moro</w>\": 31613,\n  \"moroc\": 11996,\n  \"moroccan</w>\": 27546,\n  \"morocco</w>\": 15228,\n  \"moron</w>\": 31875,\n  \"morons</w>\": 46477,\n  \"morow</w>\": 40779,\n  \"morph\": 23915,\n  \"morph</w>\": 41700,\n  \"morphe\": 38978,\n  \"morpho\": 38622,\n  \"morrha\": 43044,\n  \"morri\": 9876,\n  \"morris\": 22560,\n  \"morris</w>\": 9090,\n  \"morrison\": 40961,\n  \"morrison</w>\": 14094,\n  \"morrisons</w>\": 40965,\n  \"morrissey</w>\": 30040,\n  \"morro</w>\": 48363,\n  \"morrow</w>\": 21611,\n  \"mors</w>\": 13064,\n  \"morse</w>\": 25282,\n  \"mort\": 24257,\n  \"mort</w>\": 30583,\n  \"mortal\": 31883,\n  \"mortal</w>\": 14680,\n  \"mortality</w>\": 20347,\n  \"mortar</w>\": 27258,\n  \"mortg\": 12069,\n  \"mortgage</w>\": 13988,\n  \"mortgages</w>\": 45391,\n  \"mortimer</w>\": 47836,\n  \"morton</w>\": 20698,\n  \"morty</w>\": 37391,\n  \"mory</w>\": 22633,\n  \"mos\": 28658,\n  \"mos</w>\": 9593,\n  \"mosa\": 14164,\n  \"mosa</w>\": 23809,\n  \"mosaic</w>\": 17506,\n  \"mosch\": 47003,\n  \"mosco\": 9840,\n  \"moscow</w>\": 10371,\n  \"moseley</w>\": 47080,\n  \"moses</w>\": 18451,\n  \"mosley</w>\": 46228,\n  \"mosqu\": 15215,\n  \"mosque</w>\": 12694,\n  \"mosques</w>\": 41214,\n  \"mosquit\": 39699,\n  \"mosquito</w>\": 25083,\n  \"mosquitoes</w>\": 41870,\n  \"moss\": 25107,\n  \"moss</w>\": 12815,\n  \"most\": 7034,\n  \"most</w>\": 1096,\n  \"mostly</w>\": 8829,\n  \"mosul</w>\": 29165,\n  \"mot\": 16352,\n  \"mot</w>\": 15452,\n  \"mota</w>\": 42499,\n  \"motd</w>\": 46232,\n  \"motel</w>\": 26191,\n  \"moth\": 33208,\n  \"moth</w>\": 11736,\n  \"mother\": 7455,\n  \"mother</w>\": 3050,\n  \"motherhood</w>\": 32274,\n  \"motherland</w>\": 46774,\n  \"mothers</w>\": 10546,\n  \"mothersday</w>\": 15583,\n  \"motherwell</w>\": 48104,\n  \"moths</w>\": 29086,\n  \"moti\": 38210,\n  \"motif</w>\": 35373,\n  \"motion\": 32139,\n  \"motion</w>\": 7860,\n  \"motiv\": 3183,\n  \"motivate</w>\": 26771,\n  \"motivated</w>\": 16521,\n  \"motivates</w>\": 44684,\n  \"motivating</w>\": 37720,\n  \"motivation\": 26117,\n  \"motivation</w>\": 4193,\n  \"motivational\": 32832,\n  \"motivational</w>\": 20472,\n  \"motivationmonday</w>\": 28703,\n  \"motive</w>\": 36669,\n  \"motley</w>\": 42553,\n  \"motm</w>\": 41192,\n  \"moto\": 10646,\n  \"moto</w>\": 11431,\n  \"motocross</w>\": 34562,\n  \"motogp</w>\": 16615,\n  \"motor\": 3975,\n  \"motor</w>\": 7659,\n  \"motorbike</w>\": 33341,\n  \"motorcycle</w>\": 10297,\n  \"motorcycles</w>\": 24869,\n  \"motoring</w>\": 44491,\n  \"motorists</w>\": 32766,\n  \"motorola</w>\": 33738,\n  \"motors</w>\": 14989,\n  \"motorsport</w>\": 18371,\n  \"motorsports</w>\": 24264,\n  \"motorway</w>\": 31808,\n  \"motown</w>\": 32685,\n  \"mott\": 44570,\n  \"mott</w>\": 21708,\n  \"motto</w>\": 23338,\n  \"mou\": 2809,\n  \"mou</w>\": 25289,\n  \"moud</w>\": 37698,\n  \"moul\": 25725,\n  \"mould</w>\": 36743,\n  \"moulin</w>\": 47656,\n  \"moun\": 2023,\n  \"mound</w>\": 21414,\n  \"mount\": 20553,\n  \"mount</w>\": 5532,\n  \"mountain\": 14547,\n  \"mountain</w>\": 3965,\n  \"mountaine\": 24841,\n  \"mountaineer</w>\": 49255,\n  \"mountains</w>\": 5873,\n  \"mounted</w>\": 17897,\n  \"mounting</w>\": 29910,\n  \"mounts</w>\": 36767,\n  \"mour\": 9053,\n  \"mour</w>\": 42446,\n  \"moured</w>\": 29555,\n  \"mourinho</w>\": 18536,\n  \"mourn</w>\": 33592,\n  \"mourning</w>\": 24169,\n  \"mourns</w>\": 42811,\n  \"mous\": 24837,\n  \"mous</w>\": 17425,\n  \"mouse\": 33032,\n  \"mouse</w>\": 9301,\n  \"mousse</w>\": 31869,\n  \"moustache</w>\": 32795,\n  \"mouth\": 15152,\n  \"mouth</w>\": 4932,\n  \"mouths</w>\": 38518,\n  \"mov</w>\": 23950,\n  \"move\": 16624,\n  \"move</w>\": 2783,\n  \"moved</w>\": 6997,\n  \"movember</w>\": 23474,\n  \"movement</w>\": 5208,\n  \"movements</w>\": 19665,\n  \"mover</w>\": 37673,\n  \"movers</w>\": 33957,\n  \"moves</w>\": 6880,\n  \"movi\": 1707,\n  \"movic</w>\": 43838,\n  \"movie\": 11247,\n  \"movie</w>\": 2016,\n  \"movies</w>\": 4772,\n  \"moving\": 32160,\n  \"moving</w>\": 3584,\n  \"mow\": 31006,\n  \"mow</w>\": 36329,\n  \"mower</w>\": 30895,\n  \"mowing</w>\": 46424,\n  \"mowx</w>\": 44263,\n  \"moy\": 27276,\n  \"moy</w>\": 34205,\n  \"moyes</w>\": 37119,\n  \"moz\": 14761,\n  \"moz</w>\": 43738,\n  \"mozam\": 26648,\n  \"mozambique</w>\": 28831,\n  \"mozart</w>\": 22132,\n  \"mozz\": 26317,\n  \"mozzarella</w>\": 27845,\n  \"mp\": 1037,\n  \"mp</w>\": 1246,\n  \"mpa</w>\": 30749,\n  \"mpc</w>\": 38560,\n  \"mpd</w>\": 33814,\n  \"mped</w>\": 28134,\n  \"mper</w>\": 22803,\n  \"mpg\": 39830,\n  \"mpg</w>\": 37454,\n  \"mpgvip</w>\": 42149,\n  \"mph</w>\": 5306,\n  \"mpi</w>\": 43263,\n  \"mping</w>\": 27999,\n  \"mple</w>\": 21139,\n  \"mplo\": 47071,\n  \"mpls</w>\": 34298,\n  \"mpo</w>\": 33674,\n  \"mpp</w>\": 39570,\n  \"mps</w>\": 5504,\n  \"mption</w>\": 9717,\n  \"mpton</w>\": 27448,\n  \"mpu\": 47156,\n  \"mpus</w>\": 25864,\n  \"mpy</w>\": 17192,\n  \"mq\": 19103,\n  \"mqm</w>\": 24687,\n  \"mr\": 3139,\n  \"mr</w>\": 1982,\n  \"mra\": 44568,\n  \"mrc</w>\": 25897,\n  \"mri</w>\": 24773,\n  \"mrs\": 25003,\n  \"mrs</w>\": 4255,\n  \"mrt</w>\": 30256,\n  \"mru</w>\": 22370,\n  \"mrw</w>\": 15303,\n  \"ms\": 3525,\n  \"ms</w>\": 988,\n  \"msa</w>\": 36306,\n  \"msc\": 31826,\n  \"msc</w>\": 20529,\n  \"msd\": 25804,\n  \"msd</w>\": 36407,\n  \"msdhoni</w>\": 32850,\n  \"msf</w>\": 36239,\n  \"msg\": 44430,\n  \"msg</w>\": 10928,\n  \"msh\": 41751,\n  \"msi\": 43597,\n  \"msi</w>\": 45278,\n  \"msk\": 38501,\n  \"msl</w>\": 42736,\n  \"msm</w>\": 22210,\n  \"msn\": 18824,\n  \"msn</w>\": 41042,\n  \"msnbc</w>\": 20245,\n  \"mson\": 27773,\n  \"mson</w>\": 12298,\n  \"msp\": 41445,\n  \"msp</w>\": 22318,\n  \"mss\": 42136,\n  \"mss</w>\": 48610,\n  \"mst</w>\": 26335,\n  \"msu\": 26763,\n  \"msu</w>\": 17298,\n  \"mswx</w>\": 42957,\n  \"msy</w>\": 43919,\n  \"mt\": 4252,\n  \"mt</w>\": 3284,\n  \"mta</w>\": 28691,\n  \"mtb\": 48306,\n  \"mtb</w>\": 18747,\n  \"mtc</w>\": 42482,\n  \"mtg\": 49142,\n  \"mtg</w>\": 13648,\n  \"mth</w>\": 48151,\n  \"mtl</w>\": 22135,\n  \"mtn\": 26041,\n  \"mtn</w>\": 18953,\n  \"mtr</w>\": 46650,\n  \"mts</w>\": 38751,\n  \"mtv\": 8099,\n  \"mtv</w>\": 12555,\n  \"mtvbr\": 47258,\n  \"mtvhottest</w>\": 16751,\n  \"mtvstars</w>\": 19948,\n  \"mu\": 670,\n  \"mu</w>\": 6411,\n  \"mua</w>\": 21395,\n  \"muay\": 44910,\n  \"muaythai</w>\": 47763,\n  \"mubarak</w>\": 17957,\n  \"muc</w>\": 49115,\n  \"much\": 14300,\n  \"much</w>\": 1238,\n  \"mucha</w>\": 42191,\n  \"muchas</w>\": 26278,\n  \"mucho</w>\": 19864,\n  \"muck\": 44731,\n  \"muck</w>\": 45330,\n  \"mud\": 17491,\n  \"mud</w>\": 11673,\n  \"mudder</w>\": 49104,\n  \"muddy</w>\": 21524,\n  \"mue\": 44383,\n  \"mue</w>\": 40717,\n  \"mueller\": 46863,\n  \"mueller</w>\": 14719,\n  \"muen\": 48646,\n  \"muer\": 33840,\n  \"muf\": 33852,\n  \"mufc</w>\": 9013,\n  \"muffin</w>\": 22696,\n  \"muffins</w>\": 25922,\n  \"mufti</w>\": 44930,\n  \"mug\": 16339,\n  \"mug</w>\": 9722,\n  \"mugabe</w>\": 36441,\n  \"mughal</w>\": 37508,\n  \"mugs</w>\": 22852,\n  \"mugshot</w>\": 40028,\n  \"muh\": 36335,\n  \"muh</w>\": 46475,\n  \"muham\": 10043,\n  \"muhammad</w>\": 12259,\n  \"muir\": 44650,\n  \"muir</w>\": 24745,\n  \"muj\": 44635,\n  \"muk\": 17327,\n  \"muk</w>\": 32600,\n  \"mukher\": 34575,\n  \"mukherjee</w>\": 37862,\n  \"mul\": 1899,\n  \"mul</w>\": 43193,\n  \"mula</w>\": 40937,\n  \"mulator</w>\": 17463,\n  \"mulberry</w>\": 39221,\n  \"mule</w>\": 28695,\n  \"mull\": 17313,\n  \"mull</w>\": 35310,\n  \"mulled</w>\": 44641,\n  \"mullen</w>\": 30797,\n  \"muller</w>\": 33956,\n  \"mullet</w>\": 35010,\n  \"mulligan</w>\": 44336,\n  \"mullins</w>\": 41265,\n  \"mult\": 34219,\n  \"multi\": 3947,\n  \"multi</w>\": 6400,\n  \"multic\": 21683,\n  \"multicul\": 28004,\n  \"multicultural</w>\": 34667,\n  \"multil\": 27975,\n  \"multimedia</w>\": 27977,\n  \"multin\": 38996,\n  \"multinational</w>\": 46540,\n  \"multip\": 40314,\n  \"multiplayer</w>\": 27460,\n  \"multiple</w>\": 6470,\n  \"multipurpose</w>\": 47665,\n  \"multit\": 27814,\n  \"multitasking</w>\": 48684,\n  \"mulus</w>\": 26180,\n  \"mum\": 15565,\n  \"mum</w>\": 4030,\n  \"mumb\": 5850,\n  \"mumbai\": 24279,\n  \"mumbai</w>\": 6971,\n  \"mumford</w>\": 46184,\n  \"mummy</w>\": 16301,\n  \"mums</w>\": 17868,\n  \"mun\": 2617,\n  \"mun</w>\": 21059,\n  \"muna</w>\": 48424,\n  \"munch\": 23587,\n  \"munch</w>\": 33299,\n  \"munchies</w>\": 44324,\n  \"munchkin</w>\": 41305,\n  \"mund</w>\": 14244,\n  \"mundo</w>\": 20990,\n  \"muni\": 27327,\n  \"muni</w>\": 39795,\n  \"munich</w>\": 13526,\n  \"munici\": 12159,\n  \"municipal\": 43667,\n  \"municipal</w>\": 16600,\n  \"municipality</w>\": 29987,\n  \"munition</w>\": 32668,\n  \"munro</w>\": 36501,\n  \"munster</w>\": 27201,\n  \"mup</w>\": 21966,\n  \"muppet</w>\": 40598,\n  \"muppets</w>\": 40187,\n  \"mups</w>\": 42195,\n  \"mur\": 2144,\n  \"mur</w>\": 18293,\n  \"mura\": 45176,\n  \"mural</w>\": 12315,\n  \"murals</w>\": 31499,\n  \"murder\": 28136,\n  \"murder</w>\": 5787,\n  \"murdered</w>\": 13158,\n  \"murderer</w>\": 26956,\n  \"murderers</w>\": 48472,\n  \"murdering</w>\": 36055,\n  \"murders</w>\": 22409,\n  \"murdoch</w>\": 29037,\n  \"murphy\": 48976,\n  \"murphy</w>\": 8914,\n  \"murray\": 31978,\n  \"murray</w>\": 7513,\n  \"murs</w>\": 38783,\n  \"mus\": 2198,\n  \"mus</w>\": 8103,\n  \"musa</w>\": 30540,\n  \"musc\": 5696,\n  \"muscat</w>\": 33322,\n  \"muscle\": 27323,\n  \"muscle</w>\": 9269,\n  \"muscles</w>\": 16786,\n  \"muscular</w>\": 30606,\n  \"muse\": 2369,\n  \"muse</w>\": 15686,\n  \"museo</w>\": 36457,\n  \"muses</w>\": 48243,\n  \"museu\": 27087,\n  \"museum\": 15602,\n  \"museum</w>\": 2786,\n  \"museums</w>\": 15542,\n  \"museumweek</w>\": 37996,\n  \"mush\": 7635,\n  \"mushroom</w>\": 13011,\n  \"mushrooms</w>\": 14730,\n  \"musi\": 15628,\n  \"music\": 4110,\n  \"music</w>\": 1179,\n  \"musica</w>\": 26668,\n  \"musical\": 36002,\n  \"musical</w>\": 5173,\n  \"musically</w>\": 48893,\n  \"musicals</w>\": 36974,\n  \"musichistory</w>\": 37890,\n  \"musician</w>\": 11179,\n  \"musicians</w>\": 12498,\n  \"musicislife</w>\": 43311,\n  \"musicmonday</w>\": 35887,\n  \"musicvideo</w>\": 26764,\n  \"musik</w>\": 32986,\n  \"musings</w>\": 44961,\n  \"musique</w>\": 42250,\n  \"musk\": 32143,\n  \"musk</w>\": 19063,\n  \"muskete\": 32775,\n  \"musketeers</w>\": 37993,\n  \"musko\": 34987,\n  \"muskoka</w>\": 40832,\n  \"musli\": 4958,\n  \"muslim\": 43795,\n  \"muslim</w>\": 7060,\n  \"muslims</w>\": 10513,\n  \"muss\": 41493,\n  \"mussels</w>\": 33393,\n  \"must\": 6783,\n  \"must</w>\": 2048,\n  \"mustache</w>\": 23451,\n  \"mustaf\": 23596,\n  \"mustafa</w>\": 29000,\n  \"mustang\": 42361,\n  \"mustang</w>\": 13309,\n  \"mustangs</w>\": 22500,\n  \"mustard</w>\": 15794,\n  \"muster</w>\": 47361,\n  \"mustread</w>\": 28978,\n  \"mut\": 12598,\n  \"mut</w>\": 22839,\n  \"mutant</w>\": 28384,\n  \"mutation</w>\": 38626,\n  \"mutations</w>\": 39651,\n  \"mute</w>\": 31252,\n  \"muted</w>\": 48028,\n  \"muth</w>\": 34280,\n  \"mutil\": 39950,\n  \"mutt</w>\": 45924,\n  \"mutu\": 17574,\n  \"mutual</w>\": 15055,\n  \"mutuals</w>\": 31158,\n  \"muy</w>\": 44625,\n  \"mv\": 10580,\n  \"mv</w>\": 8269,\n  \"mvc</w>\": 40549,\n  \"mvp</w>\": 8905,\n  \"mw\": 16725,\n  \"mw</w>\": 11206,\n  \"mwc</w>\": 24289,\n  \"mwf</w>\": 48565,\n  \"mx\": 21947,\n  \"mx</w>\": 9575,\n  \"my\": 1152,\n  \"my</w>\": 607,\n  \"mya</w>\": 31401,\n  \"myal\": 42735,\n  \"myan\": 13761,\n  \"myanmar</w>\": 14764,\n  \"myart</w>\": 38826,\n  \"myco\": 48362,\n  \"mydayin\": 41896,\n  \"mydayinla</w>\": 42801,\n  \"mydubai</w>\": 43475,\n  \"mye\": 27551,\n  \"myel\": 40084,\n  \"myers</w>\": 15993,\n  \"myjaps</w>\": 47939,\n  \"myle\": 43700,\n  \"myles</w>\": 25511,\n  \"mylife</w>\": 30537,\n  \"mylittle\": 37757,\n  \"mylittlepony</w>\": 45107,\n  \"myo\": 16206,\n  \"myr\": 20272,\n  \"myra</w>\": 35694,\n  \"myri\": 34972,\n  \"myrt\": 47785,\n  \"myrtle</w>\": 27768,\n  \"mys</w>\": 11724,\n  \"myself</w>\": 3245,\n  \"mysore</w>\": 44924,\n  \"myspace</w>\": 41382,\n  \"myster\": 4669,\n  \"mysteries</w>\": 20605,\n  \"mysterious</w>\": 12650,\n  \"mystery\": 39828,\n  \"mystery</w>\": 6711,\n  \"mysti\": 28711,\n  \"mystic\": 36264,\n  \"mystic</w>\": 23722,\n  \"mystical</w>\": 34122,\n  \"myth\": 20322,\n  \"myth</w>\": 13878,\n  \"mythical</w>\": 34377,\n  \"mytho\": 43857,\n  \"mythology</w>\": 22496,\n  \"myths</w>\": 18675,\n  \"mz\": 29509,\n  \"mz</w>\": 33400,\n  \"mzan\": 36322,\n  \"mzansi</w>\": 43301,\n  \"mÃ¡\": 36842,\n  \"mÃ©\": 21890,\n  \"mÃ©xico</w>\": 46159,\n  \"mÃ¼\": 28142,\n  \"mÃ¼n\": 41235,\n  \"n\": 77,\n  \"n</w>\": 333,\n  \"na\": 1097,\n  \"na</w>\": 1272,\n  \"naa</w>\": 37738,\n  \"naacp</w>\": 32176,\n  \"nab\": 6951,\n  \"nab</w>\": 19440,\n  \"nabe\": 35111,\n  \"naby</w>\": 24800,\n  \"nac\": 14557,\n  \"nac</w>\": 18950,\n  \"nach\": 12168,\n  \"nach</w>\": 43622,\n  \"nacho</w>\": 35647,\n  \"nachos</w>\": 32847,\n  \"nacht</w>\": 37261,\n  \"nacional</w>\": 38782,\n  \"nad\": 6204,\n  \"nad</w>\": 43928,\n  \"nada</w>\": 31683,\n  \"nadal</w>\": 20814,\n  \"nade\": 24908,\n  \"nadi\": 30512,\n  \"nadia</w>\": 27487,\n  \"nadine</w>\": 23356,\n  \"nadu</w>\": 20936,\n  \"nae</w>\": 19374,\n  \"naf\": 16161,\n  \"naf</w>\": 45956,\n  \"nafta</w>\": 43123,\n  \"nag\": 6694,\n  \"nag</w>\": 23902,\n  \"naga\": 45953,\n  \"naga</w>\": 38997,\n  \"nagar</w>\": 17490,\n  \"nage</w>\": 41219,\n  \"nago\": 38349,\n  \"nagoya</w>\": 43303,\n  \"nagpur</w>\": 43328,\n  \"nah\": 26421,\n  \"nah</w>\": 11129,\n  \"nahi</w>\": 35244,\n  \"nai\": 6230,\n  \"nai</w>\": 10692,\n  \"naia</w>\": 31340,\n  \"naidu</w>\": 42429,\n  \"naija</w>\": 16326,\n  \"naik</w>\": 34424,\n  \"nail\": 19459,\n  \"nail</w>\": 9059,\n  \"nailart</w>\": 43532,\n  \"nailed</w>\": 19035,\n  \"nails</w>\": 8469,\n  \"nair</w>\": 27107,\n  \"naira</w>\": 39450,\n  \"naire</w>\": 48892,\n  \"nairobi</w>\": 17756,\n  \"nais\": 46396,\n  \"naissance</w>\": 44761,\n  \"naive</w>\": 43362,\n  \"naj\": 30985,\n  \"naji\": 32589,\n  \"nak\": 9248,\n  \"nak</w>\": 25550,\n  \"naked\": 46371,\n  \"naked</w>\": 11478,\n  \"naku\": 39864,\n  \"nal\": 14132,\n  \"nal</w>\": 3119,\n  \"nale</w>\": 27198,\n  \"nall</w>\": 32869,\n  \"nally</w>\": 26158,\n  \"nam\": 1410,\n  \"nam</w>\": 12344,\n  \"nama</w>\": 39586,\n  \"naman</w>\": 27635,\n  \"namaste</w>\": 35549,\n  \"name\": 18160,\n  \"name</w>\": 1981,\n  \"named</w>\": 3194,\n  \"nameis\": 40831,\n  \"nament</w>\": 3916,\n  \"naments</w>\": 16540,\n  \"names</w>\": 6130,\n  \"namesake</w>\": 41298,\n  \"nami\": 20393,\n  \"namibia</w>\": 23731,\n  \"naming</w>\": 19367,\n  \"namjoon</w>\": 31986,\n  \"namm</w>\": 35524,\n  \"namo\": 46013,\n  \"namo</w>\": 24854,\n  \"nan\": 4375,\n  \"nan</w>\": 7750,\n  \"nana</w>\": 18761,\n  \"nanaimo</w>\": 40518,\n  \"nancy\": 21511,\n  \"nancy</w>\": 11425,\n  \"nand\": 20435,\n  \"nandez</w>\": 12764,\n  \"nando\": 46044,\n  \"nang\": 48148,\n  \"nani</w>\": 27980,\n  \"nanny</w>\": 31104,\n  \"nano\": 15835,\n  \"nano</w>\": 22006,\n  \"nanop\": 34177,\n  \"nanotechnology</w>\": 42235,\n  \"nanow\": 46734,\n  \"nant</w>\": 22526,\n  \"nantes</w>\": 47533,\n  \"nantucket</w>\": 41573,\n  \"nao</w>\": 39319,\n  \"naom\": 34955,\n  \"naomi</w>\": 20173,\n  \"nap\": 6568,\n  \"nap</w>\": 11012,\n  \"napa</w>\": 20545,\n  \"napier</w>\": 40875,\n  \"napkin</w>\": 38930,\n  \"naples</w>\": 23560,\n  \"napo\": 18715,\n  \"napol\": 20122,\n  \"napoleon</w>\": 24969,\n  \"napoli</w>\": 22445,\n  \"napp\": 11359,\n  \"napping</w>\": 37657,\n  \"naps</w>\": 31317,\n  \"naq\": 46453,\n  \"nar\": 2977,\n  \"nar</w>\": 20145,\n  \"nara</w>\": 33823,\n  \"narcis\": 25229,\n  \"narcissi\": 35442,\n  \"narco\": 38461,\n  \"nard</w>\": 18216,\n  \"nare\": 34853,\n  \"naren\": 8468,\n  \"narendr\": 9807,\n  \"narendra</w>\": 25848,\n  \"narendramodi</w>\": 9853,\n  \"narnia</w>\": 48693,\n  \"narr\": 11845,\n  \"narrated</w>\": 43609,\n  \"narrative</w>\": 15933,\n  \"narratives</w>\": 35117,\n  \"narrator</w>\": 46529,\n  \"narrow\": 24006,\n  \"narrow</w>\": 16652,\n  \"narrowly</w>\": 29747,\n  \"naruto</w>\": 22732,\n  \"nas\": 3090,\n  \"nas</w>\": 15250,\n  \"nasa</w>\": 6841,\n  \"nasal</w>\": 42853,\n  \"nascar\": 25723,\n  \"nascar</w>\": 7868,\n  \"nasdaq</w>\": 26629,\n  \"nash\": 6771,\n  \"nash</w>\": 13620,\n  \"nasheed</w>\": 49176,\n  \"nashgrier</w>\": 33372,\n  \"nashville\": 45356,\n  \"nashville</w>\": 8585,\n  \"nasi</w>\": 47987,\n  \"nasir</w>\": 47509,\n  \"nassau</w>\": 34048,\n  \"nasser</w>\": 43559,\n  \"nasty\": 32930,\n  \"nasty</w>\": 8709,\n  \"nat\": 1276,\n  \"nat</w>\": 11310,\n  \"nata</w>\": 39392,\n  \"natal</w>\": 28516,\n  \"natali\": 20296,\n  \"natalia</w>\": 32978,\n  \"natalie\": 36634,\n  \"natalie</w>\": 13595,\n  \"natash\": 48701,\n  \"natasha</w>\": 23093,\n  \"nate\": 26643,\n  \"nate</w>\": 7587,\n  \"natgeo\": 33009,\n  \"natgeo</w>\": 25046,\n  \"nath\": 22203,\n  \"nath</w>\": 19843,\n  \"nathan\": 13028,\n  \"nathan</w>\": 9711,\n  \"nathanfillion</w>\": 47422,\n  \"nathaniel</w>\": 32667,\n  \"nati\": 1060,\n  \"nati</w>\": 13384,\n  \"natic</w>\": 44944,\n  \"natin</w>\": 44358,\n  \"nation\": 2317,\n  \"nation</w>\": 2670,\n  \"national\": 3126,\n  \"national</w>\": 1362,\n  \"nationalbestfriend\": 42222,\n  \"nationaldogday</w>\": 32227,\n  \"nationalism</w>\": 29867,\n  \"nationalist</w>\": 25058,\n  \"nationality</w>\": 44451,\n  \"nationally</w>\": 15130,\n  \"nationalpark</w>\": 33060,\n  \"nationalparks</w>\": 41204,\n  \"nationals</w>\": 10784,\n  \"nationaltrust</w>\": 34051,\n  \"nations</w>\": 7654,\n  \"nationwide</w>\": 13795,\n  \"native\": 20639,\n  \"native</w>\": 4562,\n  \"natives</w>\": 36060,\n  \"nativity</w>\": 33988,\n  \"natl\": 39225,\n  \"natl</w>\": 34465,\n  \"nato</w>\": 13139,\n  \"nats</w>\": 21106,\n  \"natu\": 2775,\n  \"natur\": 6800,\n  \"natural\": 13198,\n  \"natural</w>\": 3288,\n  \"naturally</w>\": 12995,\n  \"naturals</w>\": 44686,\n  \"nature\": 9382,\n  \"nature</w>\": 2625,\n  \"naturelovers</w>\": 41514,\n  \"naturephotography</w>\": 22533,\n  \"natures</w>\": 15616,\n  \"natureuk</w>\": 46193,\n  \"nau\": 5955,\n  \"nau</w>\": 32878,\n  \"naught</w>\": 41001,\n  \"naughty\": 47255,\n  \"naughty</w>\": 15101,\n  \"nautical</w>\": 31660,\n  \"nav\": 3413,\n  \"nav</w>\": 25308,\n  \"navajo</w>\": 35523,\n  \"naval\": 44725,\n  \"naval</w>\": 13273,\n  \"navar\": 24848,\n  \"navarro</w>\": 37104,\n  \"nave\": 42704,\n  \"naveen</w>\": 43837,\n  \"naver</w>\": 32534,\n  \"navi\": 16159,\n  \"navi</w>\": 44848,\n  \"navig\": 12507,\n  \"navigate</w>\": 24400,\n  \"navigating</w>\": 33134,\n  \"navigation</w>\": 20148,\n  \"navigator</w>\": 38910,\n  \"navis</w>\": 36377,\n  \"navratri</w>\": 45428,\n  \"navy\": 28414,\n  \"navy</w>\": 5598,\n  \"naw\": 16259,\n  \"naw</w>\": 30500,\n  \"nawaz\": 49161,\n  \"nawaz</w>\": 19523,\n  \"nax\": 38299,\n  \"nay\": 11704,\n  \"nay</w>\": 16182,\n  \"naya</w>\": 38917,\n  \"nayanth\": 38157,\n  \"nayanthara</w>\": 45184,\n  \"naz\": 6363,\n  \"naz</w>\": 35534,\n  \"nazi</w>\": 12972,\n  \"nazis</w>\": 21778,\n  \"nb\": 6459,\n  \"nb</w>\": 6813,\n  \"nba\": 22524,\n  \"nba</w>\": 5139,\n  \"nbad\": 43458,\n  \"nbaf\": 30127,\n  \"nbafinals</w>\": 33803,\n  \"nbap\": 41956,\n  \"nbaplayoffs</w>\": 43860,\n  \"nbat\": 46291,\n  \"nbc\": 9352,\n  \"nbc</w>\": 8799,\n  \"nbd</w>\": 24526,\n  \"nbl</w>\": 42652,\n  \"nc\": 5021,\n  \"nc</w>\": 4911,\n  \"nca\": 6921,\n  \"ncaa</w>\": 9418,\n  \"ncbd</w>\": 47221,\n  \"ncc\": 33195,\n  \"ncc</w>\": 36686,\n  \"ncds</w>\": 47573,\n  \"ncfc</w>\": 31274,\n  \"ncis</w>\": 33617,\n  \"ncpol</w>\": 40562,\n  \"ncr</w>\": 38474,\n  \"ncs</w>\": 42689,\n  \"nct\": 27723,\n  \"nct</w>\": 20319,\n  \"ncwx</w>\": 36166,\n  \"nd\": 5625,\n  \"nd</w>\": 1764,\n  \"nda</w>\": 32862,\n  \"ndc</w>\": 47564,\n  \"ndi</w>\": 48229,\n  \"ndp</w>\": 19257,\n  \"nds</w>\": 31347,\n  \"ndtv</w>\": 26261,\n  \"ne\": 557,\n  \"ne</w>\": 1422,\n  \"nea</w>\": 24068,\n  \"neal\": 33652,\n  \"neal</w>\": 16730,\n  \"near\": 11296,\n  \"near</w>\": 2252,\n  \"nearby</w>\": 13314,\n  \"nearest</w>\": 18985,\n  \"nearing</w>\": 26571,\n  \"nearly</w>\": 4816,\n  \"nears</w>\": 37710,\n  \"neat\": 43201,\n  \"neat</w>\": 15465,\n  \"neath</w>\": 18315,\n  \"neau</w>\": 31559,\n  \"neb\": 40209,\n  \"nebra\": 13371,\n  \"nebraska</w>\": 14565,\n  \"nebu\": 49295,\n  \"nebula</w>\": 22532,\n  \"nec\": 25109,\n  \"nec</w>\": 22992,\n  \"necess\": 6961,\n  \"necessarily</w>\": 25853,\n  \"necessary</w>\": 8955,\n  \"necessities</w>\": 43483,\n  \"necessity</w>\": 33163,\n  \"neck\": 6066,\n  \"neck</w>\": 6906,\n  \"necklace</w>\": 7385,\n  \"necklaces</w>\": 32276,\n  \"necks</w>\": 29701,\n  \"nectar</w>\": 33683,\n  \"ned\": 16030,\n  \"ned</w>\": 1369,\n  \"nederland</w>\": 49058,\n  \"nee\": 20494,\n  \"nee</w>\": 10601,\n  \"need\": 3229,\n  \"need</w>\": 1262,\n  \"needed</w>\": 4049,\n  \"needing</w>\": 22894,\n  \"needle\": 44490,\n  \"needle</w>\": 19886,\n  \"needles</w>\": 27250,\n  \"needless</w>\": 39984,\n  \"needs</w>\": 2536,\n  \"needy</w>\": 30150,\n  \"neel\": 33092,\n  \"neel</w>\": 46043,\n  \"neer\": 34245,\n  \"nees</w>\": 47248,\n  \"neet</w>\": 46362,\n  \"neg\": 5513,\n  \"negan</w>\": 42623,\n  \"negative</w>\": 8869,\n  \"negatively</w>\": 40254,\n  \"negativity</w>\": 34658,\n  \"neglec\": 18827,\n  \"neglect</w>\": 33680,\n  \"neglected</w>\": 31893,\n  \"negli\": 32594,\n  \"negligence</w>\": 45658,\n  \"negoti\": 10216,\n  \"negotiate</w>\": 32969,\n  \"negotiating</w>\": 35510,\n  \"negotiation</w>\": 36504,\n  \"negotiations</w>\": 20433,\n  \"negr\": 42190,\n  \"negro</w>\": 26554,\n  \"neh\": 40416,\n  \"neh</w>\": 41697,\n  \"neha</w>\": 44463,\n  \"nehru</w>\": 30316,\n  \"nei\": 9366,\n  \"neigh\": 4061,\n  \"neighb\": 6534,\n  \"neighbor\": 7759,\n  \"neighbor</w>\": 14485,\n  \"neighborhood</w>\": 9471,\n  \"neighborhoods</w>\": 26713,\n  \"neighboring</w>\": 44754,\n  \"neighbors</w>\": 13037,\n  \"neighbour\": 15858,\n  \"neighbour</w>\": 23719,\n  \"neighbourhood</w>\": 20312,\n  \"neighbours</w>\": 17594,\n  \"neil\": 13591,\n  \"neil</w>\": 8030,\n  \"neilhimself</w>\": 45682,\n  \"neill</w>\": 19324,\n  \"neither</w>\": 14398,\n  \"nek</w>\": 47727,\n  \"neko</w>\": 47066,\n  \"nel\": 5476,\n  \"nel</w>\": 2693,\n  \"nell\": 27081,\n  \"nell</w>\": 8117,\n  \"nelly</w>\": 21166,\n  \"nels</w>\": 19296,\n  \"nelson\": 24774,\n  \"nelson</w>\": 8586,\n  \"nem</w>\": 45153,\n  \"neman</w>\": 48553,\n  \"neme\": 30993,\n  \"nemesis</w>\": 37811,\n  \"nemo</w>\": 30441,\n  \"nen\": 17817,\n  \"nen</w>\": 15451,\n  \"nene</w>\": 44167,\n  \"neo\": 14562,\n  \"neo</w>\": 11017,\n  \"neon\": 21043,\n  \"neon</w>\": 13919,\n  \"neonatal</w>\": 46464,\n  \"neop\": 49069,\n  \"nep\": 20739,\n  \"nep</w>\": 41960,\n  \"nepal\": 25597,\n  \"nepal</w>\": 10066,\n  \"nepali</w>\": 47579,\n  \"neph\": 27926,\n  \"nephe\": 41810,\n  \"nephew</w>\": 11689,\n  \"nephews</w>\": 43747,\n  \"nephro\": 43054,\n  \"neptune</w>\": 30566,\n  \"ner\": 2064,\n  \"ner</w>\": 998,\n  \"nerd\": 24452,\n  \"nerd</w>\": 12273,\n  \"nerds</w>\": 22609,\n  \"nerdy</w>\": 33124,\n  \"nered</w>\": 17583,\n  \"nerf</w>\": 42914,\n  \"nering</w>\": 20226,\n  \"nero</w>\": 29048,\n  \"ners</w>\": 2129,\n  \"nerve</w>\": 18571,\n  \"nerves</w>\": 27813,\n  \"nervous</w>\": 13928,\n  \"nery</w>\": 48597,\n  \"nes\": 5457,\n  \"nes</w>\": 4980,\n  \"nesburg</w>\": 27159,\n  \"nese</w>\": 32220,\n  \"ness\": 7187,\n  \"ness</w>\": 1294,\n  \"nesses</w>\": 20107,\n  \"nessy</w>\": 32939,\n  \"nest\": 20302,\n  \"nest</w>\": 8719,\n  \"nesting</w>\": 28860,\n  \"nestle</w>\": 43967,\n  \"nestled</w>\": 38107,\n  \"nests</w>\": 41133,\n  \"net\": 1851,\n  \"net</w>\": 2315,\n  \"netany\": 23137,\n  \"netanyahu</w>\": 23583,\n  \"netball</w>\": 19761,\n  \"netes</w>\": 44335,\n  \"netfli\": 6304,\n  \"netflix\": 35325,\n  \"netflix</w>\": 6600,\n  \"nether\": 9946,\n  \"netherlands</w>\": 11060,\n  \"neti\": 43980,\n  \"netneutrality</w>\": 47794,\n  \"nets</w>\": 8582,\n  \"nett\": 23403,\n  \"nett</w>\": 6975,\n  \"nette</w>\": 13271,\n  \"network\": 23285,\n  \"network</w>\": 3304,\n  \"networking</w>\": 9818,\n  \"networks</w>\": 10004,\n  \"neu\": 3855,\n  \"neu</w>\": 43342,\n  \"neue</w>\": 45764,\n  \"neur\": 19001,\n  \"neur</w>\": 31976,\n  \"neural</w>\": 26388,\n  \"neuro\": 7401,\n  \"neuro</w>\": 36000,\n  \"neurological</w>\": 41718,\n  \"neurology</w>\": 43197,\n  \"neurons</w>\": 40442,\n  \"neuroscience</w>\": 23381,\n  \"neutr\": 17207,\n  \"neutral</w>\": 17011,\n  \"neutrality</w>\": 26511,\n  \"neutron</w>\": 44056,\n  \"nev\": 10236,\n  \"nev</w>\": 43645,\n  \"neva</w>\": 43304,\n  \"nevada</w>\": 13499,\n  \"neve\": 44099,\n  \"neve</w>\": 44023,\n  \"never\": 6746,\n  \"never</w>\": 1426,\n  \"neveragain</w>\": 45053,\n  \"neverforget</w>\": 19242,\n  \"nevergiveup</w>\": 42497,\n  \"neverland</w>\": 41483,\n  \"nevertheless</w>\": 48355,\n  \"nevertrump</w>\": 47494,\n  \"neville</w>\": 19269,\n  \"nevis</w>\": 43670,\n  \"new\": 1218,\n  \"new</w>\": 686,\n  \"newark</w>\": 20240,\n  \"newbie</w>\": 45427,\n  \"newborn</w>\": 18320,\n  \"newbury</w>\": 34169,\n  \"newcastle\": 41955,\n  \"newcastle</w>\": 9302,\n  \"newcomer</w>\": 30648,\n  \"newcomers</w>\": 44037,\n  \"newe\": 40068,\n  \"newell</w>\": 41436,\n  \"newer</w>\": 33099,\n  \"newest</w>\": 4990,\n  \"newfound\": 25250,\n  \"newfoundland</w>\": 28079,\n  \"newh\": 18546,\n  \"newin\": 31911,\n  \"newjersey</w>\": 32621,\n  \"newly\": 42186,\n  \"newly</w>\": 7056,\n  \"newman</w>\": 15815,\n  \"newmarket</w>\": 38617,\n  \"newmexico</w>\": 35238,\n  \"newmusic\": 32510,\n  \"newmusic</w>\": 17201,\n  \"newor\": 25969,\n  \"neworleans</w>\": 31205,\n  \"newport\": 42580,\n  \"newport</w>\": 14846,\n  \"newprofile\": 14633,\n  \"newprofilepic</w>\": 14754,\n  \"newrelease</w>\": 34793,\n  \"news\": 6216,\n  \"news</w>\": 1120,\n  \"newsat</w>\": 43979,\n  \"newsc\": 28656,\n  \"newscast</w>\": 45031,\n  \"newsle\": 10727,\n  \"newsletter</w>\": 11069,\n  \"newsnow</w>\": 48650,\n  \"newsp\": 7109,\n  \"newspaper</w>\": 8786,\n  \"newspapers</w>\": 22423,\n  \"newsroom</w>\": 23200,\n  \"newt</w>\": 37224,\n  \"newton\": 33122,\n  \"newton</w>\": 12606,\n  \"newtown</w>\": 31747,\n  \"newyear\": 22161,\n  \"newyear</w>\": 12999,\n  \"newyearseve</w>\": 37587,\n  \"newyork\": 18140,\n  \"newyork</w>\": 10454,\n  \"newyorkcity</w>\": 30460,\n  \"newyorker</w>\": 39732,\n  \"newzealand</w>\": 21117,\n  \"nex\": 6897,\n  \"nex</w>\": 39720,\n  \"next\": 12434,\n  \"next</w>\": 1131,\n  \"nextgen</w>\": 41933,\n  \"nexus</w>\": 19053,\n  \"ney\": 3857,\n  \"ney</w>\": 1438,\n  \"neymar</w>\": 21878,\n  \"neys</w>\": 12616,\n  \"nez</w>\": 27388,\n  \"nf\": 15195,\n  \"nf</w>\": 25643,\n  \"nfamily</w>\": 20098,\n  \"nfc</w>\": 23695,\n  \"nffc</w>\": 27893,\n  \"nfl\": 11219,\n  \"nfl</w>\": 4691,\n  \"nfldraft</w>\": 25002,\n  \"ng\": 10352,\n  \"ng</w>\": 5215,\n  \"nga</w>\": 35477,\n  \"ngc</w>\": 29046,\n  \"ngo\": 38740,\n  \"ngo</w>\": 24821,\n  \"ngos</w>\": 34627,\n  \"nguyen</w>\": 29947,\n  \"nh\": 3760,\n  \"nh</w>\": 10803,\n  \"nhc</w>\": 44817,\n  \"nhl\": 12290,\n  \"nhl</w>\": 8167,\n  \"nhlbruins</w>\": 39081,\n  \"nhljets</w>\": 49357,\n  \"nhm</w>\": 39483,\n  \"nhpolitics</w>\": 36125,\n  \"nhq</w>\": 42368,\n  \"nhra</w>\": 30052,\n  \"nhs\": 23282,\n  \"nhs</w>\": 7695,\n  \"ni\": 697,\n  \"ni</w>\": 3256,\n  \"nia</w>\": 3098,\n  \"niag\": 18071,\n  \"niagar\": 39298,\n  \"niagara</w>\": 18965,\n  \"niall\": 41354,\n  \"niall</w>\": 8327,\n  \"niallo\": 22855,\n  \"niallofficial</w>\": 23084,\n  \"niam\": 39347,\n  \"nian</w>\": 46003,\n  \"nib</w>\": 31049,\n  \"nic\": 2109,\n  \"nic</w>\": 6651,\n  \"nica</w>\": 29040,\n  \"nicar\": 25119,\n  \"nicaragua</w>\": 28423,\n  \"nice\": 28386,\n  \"nice</w>\": 1805,\n  \"nicely</w>\": 12303,\n  \"nicer</w>\": 29488,\n  \"nicest</w>\": 22967,\n  \"niche</w>\": 25279,\n  \"nichol\": 7668,\n  \"nicholas\": 39814,\n  \"nicholas</w>\": 13148,\n  \"nicholls</w>\": 38846,\n  \"nichols</w>\": 22730,\n  \"nicholson</w>\": 28745,\n  \"nick\": 4209,\n  \"nick</w>\": 4253,\n  \"nickel</w>\": 22034,\n  \"nickelo\": 28668,\n  \"nickelodeon</w>\": 33279,\n  \"nicki</w>\": 17738,\n  \"nickimin\": 27390,\n  \"nickiminaj</w>\": 27593,\n  \"nickjonas</w>\": 43862,\n  \"nickname</w>\": 24731,\n  \"nicknamed</w>\": 45190,\n  \"nicks</w>\": 15049,\n  \"nicky\": 28893,\n  \"nicky</w>\": 22091,\n  \"nico\": 20850,\n  \"nico</w>\": 17779,\n  \"nicol\": 9919,\n  \"nicol</w>\": 48274,\n  \"nicola</w>\": 21791,\n  \"nicolas\": 43813,\n  \"nicolas</w>\": 18918,\n  \"nicole\": 21246,\n  \"nicole</w>\": 10000,\n  \"nicot\": 45099,\n  \"nicotine</w>\": 46697,\n  \"nie\": 9524,\n  \"nie</w>\": 3501,\n  \"niece</w>\": 12795,\n  \"nieces</w>\": 44877,\n  \"niel\": 19109,\n  \"niel</w>\": 26837,\n  \"niels</w>\": 37154,\n  \"nielsen</w>\": 28372,\n  \"nier</w>\": 13014,\n  \"nies</w>\": 10586,\n  \"niest</w>\": 15007,\n  \"nieu\": 29781,\n  \"nific\": 4748,\n  \"nifty</w>\": 25604,\n  \"nig\": 27933,\n  \"nig</w>\": 28099,\n  \"nigan</w>\": 48516,\n  \"nigel\": 33919,\n  \"nigel</w>\": 15153,\n  \"niger\": 4524,\n  \"niger</w>\": 29920,\n  \"nigeri\": 40913,\n  \"nigeria</w>\": 6106,\n  \"nigerian</w>\": 12167,\n  \"nigerians</w>\": 25358,\n  \"nigh\": 13525,\n  \"nigh</w>\": 48157,\n  \"night\": 3870,\n  \"night</w>\": 930,\n  \"nightclub</w>\": 20418,\n  \"nighter</w>\": 41349,\n  \"nighting\": 36211,\n  \"nightingale</w>\": 40696,\n  \"nightlife</w>\": 28823,\n  \"nightly</w>\": 28868,\n  \"nightmare</w>\": 12867,\n  \"nightmares</w>\": 24032,\n  \"nightout</w>\": 44257,\n  \"nights</w>\": 4296,\n  \"nighttime</w>\": 38147,\n  \"nightw\": 39956,\n  \"nih</w>\": 25783,\n  \"nik\": 5126,\n  \"nik</w>\": 13705,\n  \"nike\": 16300,\n  \"nike</w>\": 5783,\n  \"nikeplus</w>\": 43154,\n  \"niki</w>\": 36136,\n  \"nikita</w>\": 37118,\n  \"nikk\": 38596,\n  \"nikki\": 23156,\n  \"nikki</w>\": 16689,\n  \"niko</w>\": 43771,\n  \"nikol\": 27430,\n  \"nikola</w>\": 42146,\n  \"nikon\": 25488,\n  \"nikon</w>\": 13849,\n  \"nikov</w>\": 43960,\n  \"nil\": 16852,\n  \"nil</w>\": 35030,\n  \"nile</w>\": 24252,\n  \"nim\": 30402,\n  \"nim</w>\": 42093,\n  \"nima</w>\": 42586,\n  \"nin\": 5794,\n  \"nin</w>\": 14145,\n  \"nina</w>\": 13891,\n  \"nine\": 16213,\n  \"nine</w>\": 7330,\n  \"ninety</w>\": 48214,\n  \"ning\": 6050,\n  \"ning</w>\": 762,\n  \"ningham</w>\": 23395,\n  \"ningly</w>\": 43537,\n  \"nings</w>\": 4588,\n  \"nington</w>\": 26214,\n  \"ninj\": 23225,\n  \"ninja</w>\": 11969,\n  \"ninjas</w>\": 42796,\n  \"nino</w>\": 25633,\n  \"ninten\": 6184,\n  \"nintendo\": 13969,\n  \"nintendo</w>\": 7886,\n  \"nintendoswitch</w>\": 16404,\n  \"ninth</w>\": 22770,\n  \"nip\": 33889,\n  \"nip</w>\": 22333,\n  \"nipp\": 24634,\n  \"nipple</w>\": 45987,\n  \"nipples</w>\": 44774,\n  \"nippon</w>\": 47960,\n  \"nips</w>\": 49241,\n  \"nir\": 15503,\n  \"nir</w>\": 40057,\n  \"nireland</w>\": 45763,\n  \"niro</w>\": 47373,\n  \"nirvana</w>\": 28300,\n  \"nis\": 5609,\n  \"nis</w>\": 3786,\n  \"nish\": 19834,\n  \"nish</w>\": 13256,\n  \"nished</w>\": 24141,\n  \"nishi\": 32386,\n  \"nishings</w>\": 49247,\n  \"nison</w>\": 45700,\n  \"niss</w>\": 39043,\n  \"nissan\": 37635,\n  \"nissan</w>\": 11082,\n  \"nist</w>\": 17782,\n  \"nister</w>\": 36640,\n  \"nit\": 4087,\n  \"nit</w>\": 19011,\n  \"nite</w>\": 8427,\n  \"niti\": 43964,\n  \"niti</w>\": 45355,\n  \"nitin</w>\": 37529,\n  \"nitro</w>\": 30726,\n  \"nitrogen</w>\": 30706,\n  \"niture</w>\": 7840,\n  \"nity</w>\": 12707,\n  \"niu</w>\": 48187,\n  \"niv</w>\": 47300,\n  \"niversary</w>\": 29643,\n  \"nix\": 48552,\n  \"nix</w>\": 32278,\n  \"nixon</w>\": 20671,\n  \"nj\": 8343,\n  \"nj</w>\": 6672,\n  \"njcaa</w>\": 48992,\n  \"njpw</w>\": 38992,\n  \"nk\": 22708,\n  \"nk</w>\": 17456,\n  \"nko\": 36353,\n  \"nl\": 12057,\n  \"nl</w>\": 7655,\n  \"nli</w>\": 37502,\n  \"nlp</w>\": 35680,\n  \"nlwx</w>\": 49260,\n  \"nm\": 15956,\n  \"nm</w>\": 11370,\n  \"nmd</w>\": 43331,\n  \"nme</w>\": 40454,\n  \"nmwx</w>\": 47967,\n  \"nn\": 8947,\n  \"nn</w>\": 12925,\n  \"nnn</w>\": 26277,\n  \"nnnn</w>\": 41420,\n  \"no\": 578,\n  \"no</w>\": 871,\n  \"noaa</w>\": 27557,\n  \"noah\": 28806,\n  \"noah</w>\": 11519,\n  \"nobel\": 33742,\n  \"nobel</w>\": 15605,\n  \"nobelprize</w>\": 46074,\n  \"noble\": 29430,\n  \"noble</w>\": 12051,\n  \"nobody</w>\": 7009,\n  \"noc\": 16988,\n  \"noc</w>\": 44420,\n  \"nocchi</w>\": 46359,\n  \"noch</w>\": 38672,\n  \"noche</w>\": 29689,\n  \"noches</w>\": 44166,\n  \"nock</w>\": 16993,\n  \"noctur\": 26291,\n  \"nocturnal</w>\": 41738,\n  \"nod</w>\": 18648,\n  \"nodapl</w>\": 39079,\n  \"node\": 31434,\n  \"node</w>\": 24871,\n  \"nodejs</w>\": 39262,\n  \"nodes</w>\": 40534,\n  \"noel\": 38406,\n  \"noel</w>\": 17496,\n  \"nof\": 29505,\n  \"noff</w>\": 46979,\n  \"nofilter</w>\": 16418,\n  \"nog</w>\": 31157,\n  \"noh</w>\": 40775,\n  \"noi\": 43115,\n  \"noi</w>\": 39889,\n  \"noida</w>\": 33404,\n  \"noir\": 39291,\n  \"noir</w>\": 12953,\n  \"nois\": 22057,\n  \"noise\": 41018,\n  \"noise</w>\": 9307,\n  \"noises</w>\": 31575,\n  \"noisse\": 45686,\n  \"noisy</w>\": 33495,\n  \"nokia</w>\": 17731,\n  \"nol\": 8055,\n  \"nola</w>\": 13289,\n  \"nolan</w>\": 17323,\n  \"nold</w>\": 40322,\n  \"nole</w>\": 34654,\n  \"noles</w>\": 40569,\n  \"nollywood</w>\": 43145,\n  \"nology</w>\": 42221,\n  \"nom\": 2981,\n  \"nom</w>\": 12799,\n  \"nomad</w>\": 27849,\n  \"noman\": 45592,\n  \"nomin\": 5643,\n  \"nominate</w>\": 17122,\n  \"nominated</w>\": 8710,\n  \"nominating</w>\": 45747,\n  \"nomination</w>\": 14136,\n  \"nominations</w>\": 17124,\n  \"nominee</w>\": 14122,\n  \"nominees</w>\": 17873,\n  \"nomnom</w>\": 26962,\n  \"nomore\": 35126,\n  \"noms</w>\": 35706,\n  \"non\": 4282,\n  \"non</w>\": 3353,\n  \"none\": 29644,\n  \"none</w>\": 8906,\n  \"nonetheless</w>\": 39675,\n  \"nonfiction</w>\": 31654,\n  \"nonprofit</w>\": 19315,\n  \"nonprofits</w>\": 37935,\n  \"nonsense</w>\": 19136,\n  \"nonstop</w>\": 30300,\n  \"nont</w>\": 25207,\n  \"noo\": 6759,\n  \"noo</w>\": 46672,\n  \"noodle</w>\": 19521,\n  \"noodles</w>\": 15782,\n  \"nook</w>\": 30088,\n  \"noon\": 37693,\n  \"noon</w>\": 2347,\n  \"noor\": 46978,\n  \"noor</w>\": 31323,\n  \"nope</w>\": 15625,\n  \"nor\": 1062,\n  \"nor</w>\": 6190,\n  \"nora</w>\": 25890,\n  \"norcal</w>\": 41970,\n  \"nord\": 19261,\n  \"nord</w>\": 36067,\n  \"nordic\": 36439,\n  \"nordic</w>\": 20734,\n  \"nordstrom</w>\": 38562,\n  \"norfolk\": 30232,\n  \"norfolk</w>\": 12202,\n  \"norm\": 10990,\n  \"norm</w>\": 22457,\n  \"norma</w>\": 35757,\n  \"normal\": 28748,\n  \"normal</w>\": 5967,\n  \"normali\": 45157,\n  \"normally</w>\": 15870,\n  \"norman\": 22027,\n  \"norman</w>\": 11338,\n  \"normandy</w>\": 23840,\n  \"normani</w>\": 44596,\n  \"norms</w>\": 33011,\n  \"norris</w>\": 21814,\n  \"norse</w>\": 36559,\n  \"norte</w>\": 35638,\n  \"north\": 3468,\n  \"north</w>\": 2188,\n  \"northampton\": 49246,\n  \"northampton</w>\": 26175,\n  \"northan\": 37081,\n  \"northbound</w>\": 24228,\n  \"northcarolina</w>\": 43386,\n  \"northe\": 24675,\n  \"northeast\": 42673,\n  \"northeast</w>\": 13009,\n  \"northeastern</w>\": 28297,\n  \"northeasthour</w>\": 42869,\n  \"norther\": 26908,\n  \"northern\": 17210,\n  \"northern</w>\": 5049,\n  \"northernlights</w>\": 48940,\n  \"northkorea</w>\": 38495,\n  \"northside</w>\": 45957,\n  \"northumber\": 22295,\n  \"northumberland</w>\": 22922,\n  \"northwales</w>\": 49371,\n  \"northwest</w>\": 12894,\n  \"northwestern</w>\": 23685,\n  \"norton</w>\": 18032,\n  \"norway</w>\": 8780,\n  \"norwe\": 14414,\n  \"norwegian</w>\": 15971,\n  \"norwich\": 37629,\n  \"norwich</w>\": 15812,\n  \"norwood</w>\": 37889,\n  \"nos</w>\": 13420,\n  \"nose\": 24192,\n  \"nose</w>\": 8231,\n  \"noses</w>\": 48163,\n  \"nostal\": 12076,\n  \"nostalgia</w>\": 16622,\n  \"nostalgic</w>\": 24468,\n  \"not\": 2534,\n  \"not</w>\": 783,\n  \"notable</w>\": 22023,\n  \"notch</w>\": 19476,\n  \"notdead</w>\": 42059,\n  \"note\": 10910,\n  \"note</w>\": 3246,\n  \"notebook</w>\": 16365,\n  \"notebooks</w>\": 37623,\n  \"noted</w>\": 22501,\n  \"notes</w>\": 5795,\n  \"nothin</w>\": 24291,\n  \"nothing\": 28412,\n  \"nothing</w>\": 2586,\n  \"noti\": 10686,\n  \"notic\": 6915,\n  \"notice</w>\": 6683,\n  \"noticeable</w>\": 40857,\n  \"noticed</w>\": 9324,\n  \"notices</w>\": 33459,\n  \"noticias</w>\": 47759,\n  \"noticing</w>\": 37571,\n  \"notification</w>\": 22512,\n  \"notifications</w>\": 23169,\n  \"notified</w>\": 39454,\n  \"noting</w>\": 38649,\n  \"notion</w>\": 37856,\n  \"notjust\": 33212,\n  \"notjustlakes</w>\": 45803,\n  \"notmy\": 39301,\n  \"noto\": 29878,\n  \"noton\": 48258,\n  \"notor\": 21711,\n  \"notori\": 44065,\n  \"notorious</w>\": 22489,\n  \"notre\": 24397,\n  \"notre</w>\": 15306,\n  \"notredame</w>\": 34077,\n  \"notsorry</w>\": 34361,\n  \"nott\": 9333,\n  \"nott</w>\": 34989,\n  \"notte</w>\": 47308,\n  \"nottingham</w>\": 12852,\n  \"notts</w>\": 25598,\n  \"nou\": 8751,\n  \"nou</w>\": 30953,\n  \"noun</w>\": 33663,\n  \"nouri\": 23796,\n  \"nourish</w>\": 46025,\n  \"nourished</w>\": 48354,\n  \"nous</w>\": 29485,\n  \"nouveau</w>\": 29948,\n  \"nouvel\": 34215,\n  \"nov\": 2264,\n  \"nov</w>\": 4293,\n  \"nova</w>\": 11236,\n  \"novak</w>\": 26465,\n  \"novasco\": 33785,\n  \"novascotia</w>\": 34744,\n  \"novation</w>\": 39753,\n  \"nove\": 30507,\n  \"novel\": 15044,\n  \"novel</w>\": 6080,\n  \"novelist</w>\": 27314,\n  \"novella</w>\": 42770,\n  \"novels</w>\": 16040,\n  \"novelty</w>\": 37750,\n  \"november</w>\": 3680,\n  \"nover</w>\": 37465,\n  \"novi\": 47957,\n  \"novice</w>\": 33743,\n  \"novo\": 27504,\n  \"novo</w>\": 36581,\n  \"now\": 2040,\n  \"now</w>\": 692,\n  \"nowadays</w>\": 26155,\n  \"nowhere</w>\": 14108,\n  \"nowplaying</w>\": 3708,\n  \"nowwatching</w>\": 30852,\n  \"nox</w>\": 27406,\n  \"noxi\": 39304,\n  \"noxious</w>\": 42833,\n  \"noy</w>\": 32787,\n  \"np\": 18205,\n  \"np</w>\": 6314,\n  \"npa</w>\": 42378,\n  \"npc</w>\": 33966,\n  \"npr\": 39941,\n  \"npr</w>\": 24078,\n  \"nps</w>\": 22025,\n  \"npt</w>\": 47231,\n  \"nr\": 6574,\n  \"nr</w>\": 9713,\n  \"nra</w>\": 17286,\n  \"nrc</w>\": 45786,\n  \"nrf</w>\": 47982,\n  \"nrg</w>\": 48662,\n  \"nrl\": 27142,\n  \"nrl</w>\": 18127,\n  \"ns\": 12405,\n  \"ns</w>\": 1373,\n  \"nsa</w>\": 23004,\n  \"nsc\": 32792,\n  \"nsd</w>\": 36659,\n  \"nsf</w>\": 34180,\n  \"nsfw</w>\": 19847,\n  \"nsi\": 47824,\n  \"nsw\": 21301,\n  \"nsw</w>\": 11693,\n  \"nswpol</w>\": 44434,\n  \"nt\": 10902,\n  \"nt</w>\": 3207,\n  \"ntr</w>\": 30845,\n  \"nts</w>\": 43775,\n  \"ntt</w>\": 22859,\n  \"ntv\": 24807,\n  \"ntv</w>\": 45304,\n  \"nu\": 1156,\n  \"nu</w>\": 9444,\n  \"nucle\": 25693,\n  \"nuclear\": 34136,\n  \"nuclear</w>\": 7279,\n  \"nude</w>\": 16630,\n  \"nudes</w>\": 32122,\n  \"nue\": 22834,\n  \"nuestra</w>\": 45649,\n  \"nuestro</w>\": 38590,\n  \"nuev\": 47861,\n  \"nueva</w>\": 48810,\n  \"nuevo</w>\": 30265,\n  \"nufc</w>\": 15720,\n  \"nuff</w>\": 37324,\n  \"nug\": 13471,\n  \"nugent</w>\": 47457,\n  \"nugget</w>\": 25448,\n  \"nuggets</w>\": 18970,\n  \"nuh</w>\": 45950,\n  \"nuit</w>\": 38815,\n  \"nuk</w>\": 39228,\n  \"nuke</w>\": 39399,\n  \"nul\": 29358,\n  \"null</w>\": 47376,\n  \"num\": 17896,\n  \"num</w>\": 30534,\n  \"numb\": 34639,\n  \"numb</w>\": 39427,\n  \"number\": 44078,\n  \"number</w>\": 2842,\n  \"numbered</w>\": 25975,\n  \"numbers</w>\": 6121,\n  \"numer\": 11442,\n  \"numerous</w>\": 17082,\n  \"numis\": 39100,\n  \"nun\": 12511,\n  \"nun</w>\": 28540,\n  \"nunavut</w>\": 48626,\n  \"nunes</w>\": 40697,\n  \"nuns</w>\": 44061,\n  \"nup\": 46757,\n  \"nur\": 3920,\n  \"nur</w>\": 33493,\n  \"nure\": 42480,\n  \"nurse\": 37547,\n  \"nurse</w>\": 10058,\n  \"nursery</w>\": 15540,\n  \"nurses</w>\": 12938,\n  \"nursing</w>\": 11126,\n  \"nurture</w>\": 38865,\n  \"nurturing</w>\": 45229,\n  \"nus\": 25157,\n  \"nus</w>\": 18239,\n  \"nut\": 10358,\n  \"nut</w>\": 6491,\n  \"nutcracker</w>\": 36733,\n  \"nutella</w>\": 27312,\n  \"nutr\": 6198,\n  \"nutri\": 15470,\n  \"nutrient</w>\": 32900,\n  \"nutrients</w>\": 24668,\n  \"nutriti\": 17978,\n  \"nutrition\": 41546,\n  \"nutrition</w>\": 7989,\n  \"nutritional</w>\": 26457,\n  \"nutritious</w>\": 30387,\n  \"nuts</w>\": 8644,\n  \"nutshell</w>\": 26659,\n  \"nutty</w>\": 39846,\n  \"nv\": 17217,\n  \"nv</w>\": 16985,\n  \"nvi\": 22847,\n  \"nvidia</w>\": 27325,\n  \"nw\": 7826,\n  \"nw</w>\": 7030,\n  \"nwa</w>\": 34237,\n  \"nwo</w>\": 40976,\n  \"nws\": 23333,\n  \"nws</w>\": 30998,\n  \"nwsl</w>\": 48394,\n  \"nwt</w>\": 25029,\n  \"nx\": 18810,\n  \"nx</w>\": 16997,\n  \"nxt\": 35037,\n  \"nxt</w>\": 17804,\n  \"ny\": 1383,\n  \"ny</w>\": 1350,\n  \"nya</w>\": 24165,\n  \"nyc\": 13304,\n  \"nyc</w>\": 2832,\n  \"nycc</w>\": 27187,\n  \"nycfc</w>\": 47497,\n  \"nye\": 40723,\n  \"nye</w>\": 13416,\n  \"nyfw</w>\": 21089,\n  \"nyk</w>\": 46841,\n  \"nylon</w>\": 25915,\n  \"nyo\": 41534,\n  \"nyo</w>\": 44586,\n  \"nypd\": 42293,\n  \"nypd</w>\": 18279,\n  \"nyr</w>\": 32538,\n  \"nyrd</w>\": 47936,\n  \"nys\": 36375,\n  \"nys</w>\": 23423,\n  \"nyse</w>\": 32650,\n  \"nyt\": 46311,\n  \"nyt</w>\": 12816,\n  \"nytimes</w>\": 13772,\n  \"nyu\": 43143,\n  \"nyu</w>\": 31355,\n  \"nz\": 10142,\n  \"nz</w>\": 7082,\n  \"o\": 78,\n  \"o</w>\": 334,\n  \"oa</w>\": 11994,\n  \"oahu</w>\": 37790,\n  \"oak\": 6010,\n  \"oak</w>\": 7221,\n  \"oakland\": 42663,\n  \"oakland</w>\": 12077,\n  \"oakley</w>\": 27810,\n  \"oaks</w>\": 16734,\n  \"oakville</w>\": 38500,\n  \"oasis</w>\": 18185,\n  \"oat\": 20095,\n  \"oat</w>\": 34132,\n  \"oates</w>\": 47094,\n  \"oath</w>\": 20108,\n  \"oatmeal</w>\": 26374,\n  \"oats</w>\": 24150,\n  \"oax\": 43090,\n  \"oaxaca</w>\": 47818,\n  \"ob\": 1411,\n  \"ob</w>\": 14908,\n  \"oba\": 42902,\n  \"oba</w>\": 15147,\n  \"obam\": 13174,\n  \"obama</w>\": 4276,\n  \"obamacare</w>\": 18005,\n  \"obe\": 11897,\n  \"obe</w>\": 29117,\n  \"obedience</w>\": 48921,\n  \"ober\": 15284,\n  \"obese</w>\": 41757,\n  \"obesity</w>\": 19499,\n  \"obey</w>\": 26926,\n  \"obi\": 21454,\n  \"obi</w>\": 18414,\n  \"obile</w>\": 20513,\n  \"obitu\": 39218,\n  \"obituary</w>\": 43580,\n  \"objec\": 7970,\n  \"object</w>\": 14115,\n  \"objective</w>\": 23663,\n  \"objectives</w>\": 30238,\n  \"objects</w>\": 13770,\n  \"obl\": 31452,\n  \"oblast</w>\": 42672,\n  \"obli\": 11416,\n  \"obligation</w>\": 34473,\n  \"obligations</w>\": 38232,\n  \"obligatory</w>\": 35020,\n  \"oblivion</w>\": 45323,\n  \"obo\": 46001,\n  \"obo</w>\": 26618,\n  \"obrien</w>\": 31946,\n  \"obs</w>\": 39162,\n  \"obsc\": 20392,\n  \"obscure</w>\": 33337,\n  \"obse\": 8433,\n  \"observ\": 9050,\n  \"observation</w>\": 20250,\n  \"observations</w>\": 27409,\n  \"observatory</w>\": 21236,\n  \"observe</w>\": 23217,\n  \"observed</w>\": 21267,\n  \"observer</w>\": 22077,\n  \"observers</w>\": 47544,\n  \"observing</w>\": 28359,\n  \"obsessed</w>\": 9744,\n  \"obsession</w>\": 15718,\n  \"obsi\": 47323,\n  \"obsole\": 35561,\n  \"obsolete</w>\": 40628,\n  \"obst\": 29398,\n  \"obstac\": 24075,\n  \"obstacle</w>\": 29751,\n  \"obstacles</w>\": 24480,\n  \"obste\": 49103,\n  \"obstru\": 44876,\n  \"obstruc\": 38762,\n  \"obstruction</w>\": 40240,\n  \"obtain</w>\": 26555,\n  \"obtained</w>\": 29322,\n  \"obvious</w>\": 13959,\n  \"obviously</w>\": 10068,\n  \"oc\": 1566,\n  \"oc</w>\": 6603,\n  \"oca</w>\": 31120,\n  \"ocal</w>\": 38148,\n  \"occ</w>\": 43940,\n  \"occa\": 8530,\n  \"occasion</w>\": 12280,\n  \"occasional</w>\": 33059,\n  \"occasionally</w>\": 32479,\n  \"occasions</w>\": 26154,\n  \"occer</w>\": 20804,\n  \"occi\": 42994,\n  \"occu\": 7863,\n  \"occult</w>\": 42529,\n  \"occup\": 11152,\n  \"occupation</w>\": 18624,\n  \"occupational</w>\": 30644,\n  \"occupied</w>\": 17271,\n  \"occupy\": 22453,\n  \"occupy</w>\": 24210,\n  \"occur\": 11264,\n  \"occur</w>\": 21813,\n  \"occurred</w>\": 19850,\n  \"occurrence</w>\": 40615,\n  \"occurring</w>\": 31335,\n  \"occurs</w>\": 26563,\n  \"ocd</w>\": 35904,\n  \"oce\": 3509,\n  \"ocean\": 12941,\n  \"ocean</w>\": 4918,\n  \"oceans</w>\": 16792,\n  \"och\": 29334,\n  \"och</w>\": 32011,\n  \"oche</w>\": 33045,\n  \"oci\": 9891,\n  \"ocity\": 46039,\n  \"ock\": 33579,\n  \"ock</w>\": 21313,\n  \"ocks</w>\": 22410,\n  \"oclock</w>\": 36274,\n  \"oco</w>\": 32553,\n  \"ocon</w>\": 33090,\n  \"ocr\": 45813,\n  \"ocre</w>\": 40320,\n  \"ocs</w>\": 27297,\n  \"oct</w>\": 4565,\n  \"octa\": 23444,\n  \"octag\": 37768,\n  \"octagon</w>\": 49167,\n  \"octane</w>\": 43040,\n  \"octavia</w>\": 47416,\n  \"octo\": 31032,\n  \"october</w>\": 3481,\n  \"octopus</w>\": 22327,\n  \"ocu\": 22709,\n  \"oculus</w>\": 30082,\n  \"od\": 4886,\n  \"od</w>\": 9719,\n  \"oda</w>\": 24777,\n  \"oday</w>\": 41954,\n  \"odd\": 15525,\n  \"odd</w>\": 11387,\n  \"oddly</w>\": 34213,\n  \"odds</w>\": 11555,\n  \"ode\": 19125,\n  \"ode</w>\": 19639,\n  \"odell</w>\": 41556,\n  \"odessa</w>\": 43574,\n  \"odi\": 12223,\n  \"odi</w>\": 18853,\n  \"odin</w>\": 35175,\n  \"odisha</w>\": 15737,\n  \"odo\": 49188,\n  \"odo</w>\": 40993,\n  \"odor</w>\": 39509,\n  \"odu\": 35095,\n  \"odu</w>\": 39904,\n  \"odyssey</w>\": 19991,\n  \"oe\": 24251,\n  \"oe</w>\": 11667,\n  \"oec\": 24288,\n  \"oecd</w>\": 30816,\n  \"oem</w>\": 29650,\n  \"oes</w>\": 3643,\n  \"of\": 684,\n  \"of</w>\": 539,\n  \"ofa</w>\": 29774,\n  \"ofc</w>\": 19877,\n  \"ofe\": 30000,\n  \"ofer\": 47322,\n  \"off\": 892,\n  \"off</w>\": 1007,\n  \"offe\": 8261,\n  \"offee</w>\": 34059,\n  \"offen\": 7231,\n  \"offence</w>\": 34594,\n  \"offences</w>\": 33972,\n  \"offended</w>\": 30765,\n  \"offender</w>\": 48294,\n  \"offenders</w>\": 35878,\n  \"offense</w>\": 15253,\n  \"offensive</w>\": 11037,\n  \"offer\": 20607,\n  \"offer</w>\": 3271,\n  \"offered</w>\": 9395,\n  \"offering</w>\": 6896,\n  \"offerings</w>\": 24535,\n  \"offers</w>\": 4679,\n  \"offic\": 3276,\n  \"office\": 18033,\n  \"office</w>\": 2171,\n  \"officeof\": 38750,\n  \"officeofrg</w>\": 47100,\n  \"officer</w>\": 4683,\n  \"officers</w>\": 6335,\n  \"offices</w>\": 10933,\n  \"offici\": 1401,\n  \"official\": 5768,\n  \"official</w>\": 1868,\n  \"officially</w>\": 4226,\n  \"officials</w>\": 7658,\n  \"officiel</w>\": 26548,\n  \"offl</w>\": 16851,\n  \"offline</w>\": 22724,\n  \"offro\": 32198,\n  \"offroad</w>\": 37173,\n  \"offs</w>\": 23987,\n  \"offseason</w>\": 25485,\n  \"offset</w>\": 28843,\n  \"offshore</w>\": 15496,\n  \"offside</w>\": 49347,\n  \"offspring</w>\": 38635,\n  \"offthe\": 38189,\n  \"ofi\": 36692,\n  \"ofi</w>\": 49090,\n  \"oficial</w>\": 18061,\n  \"oft</w>\": 16693,\n  \"oftball</w>\": 39768,\n  \"often</w>\": 4864,\n  \"ofthe\": 7592,\n  \"oftheday</w>\": 6988,\n  \"oftheweek</w>\": 20654,\n  \"oftheyear</w>\": 33975,\n  \"og\": 11542,\n  \"og</w>\": 8555,\n  \"oga</w>\": 47312,\n  \"ogden</w>\": 42011,\n  \"ogil\": 39013,\n  \"ography</w>\": 22399,\n  \"ogue</w>\": 24761,\n  \"ogun\": 48970,\n  \"oh\": 5648,\n  \"oh</w>\": 1779,\n  \"ohana</w>\": 48330,\n  \"ohh</w>\": 23076,\n  \"ohhh</w>\": 27697,\n  \"ohhhh</w>\": 40201,\n  \"ohi\": 5207,\n  \"ohio\": 18951,\n  \"ohio</w>\": 6155,\n  \"ohiostate</w>\": 41324,\n  \"ohl\": 45547,\n  \"ohl</w>\": 41095,\n  \"ohmy\": 29758,\n  \"ohn</w>\": 48043,\n  \"ohs</w>\": 39542,\n  \"ohwx</w>\": 47993,\n  \"oi\": 27357,\n  \"oi</w>\": 13934,\n  \"oic</w>\": 45554,\n  \"oid</w>\": 14758,\n  \"oids</w>\": 21847,\n  \"oil\": 11973,\n  \"oil</w>\": 2870,\n  \"oiland\": 32316,\n  \"oilandgas</w>\": 34130,\n  \"oilers</w>\": 21627,\n  \"oilpainting</w>\": 34279,\n  \"oils</w>\": 17886,\n  \"oily</w>\": 47550,\n  \"oir\": 48079,\n  \"oir</w>\": 37113,\n  \"ois</w>\": 23262,\n  \"oit\": 18453,\n  \"oitnb</w>\": 34865,\n  \"oj\": 30986,\n  \"oj</w>\": 34553,\n  \"ok\": 1944,\n  \"ok</w>\": 2481,\n  \"oka\": 42258,\n  \"oka</w>\": 19092,\n  \"okan\": 41263,\n  \"okanagan</w>\": 43233,\n  \"okay</w>\": 4917,\n  \"okc\": 42418,\n  \"okc</w>\": 18357,\n  \"oke\": 26636,\n  \"oke</w>\": 23598,\n  \"oki</w>\": 20390,\n  \"okin\": 30687,\n  \"okinawa</w>\": 35877,\n  \"okla\": 9431,\n  \"oklahoma</w>\": 10170,\n  \"oko\": 26892,\n  \"oko</w>\": 26095,\n  \"okstate</w>\": 36356,\n  \"oktoberfest</w>\": 32026,\n  \"oku\": 45010,\n  \"oku</w>\": 43829,\n  \"okwx</w>\": 27336,\n  \"ol\": 562,\n  \"ol</w>\": 2985,\n  \"ola\": 20499,\n  \"ola</w>\": 3373,\n  \"olaf</w>\": 39709,\n  \"olan\": 48489,\n  \"olan</w>\": 24227,\n  \"oland</w>\": 26452,\n  \"olas</w>\": 40800,\n  \"old\": 4931,\n  \"old</w>\": 896,\n  \"olde</w>\": 37731,\n  \"older</w>\": 7700,\n  \"oldest</w>\": 9285,\n  \"oldham</w>\": 29929,\n  \"oldie</w>\": 35280,\n  \"oldies</w>\": 36278,\n  \"oldman</w>\": 48614,\n  \"olds</w>\": 8580,\n  \"oldschool\": 44384,\n  \"oldschool</w>\": 25133,\n  \"oldsmobile</w>\": 45396,\n  \"ole\": 9089,\n  \"ole</w>\": 1947,\n  \"oled</w>\": 46768,\n  \"oler\": 24069,\n  \"oles</w>\": 16962,\n  \"olf</w>\": 16346,\n  \"olga</w>\": 34779,\n  \"oli\": 3811,\n  \"oli</w>\": 8810,\n  \"olic</w>\": 31341,\n  \"oligar\": 46185,\n  \"olim\": 47769,\n  \"olin\": 37823,\n  \"olin</w>\": 18283,\n  \"olina</w>\": 34711,\n  \"oline</w>\": 17441,\n  \"oling</w>\": 38033,\n  \"olini</w>\": 36040,\n  \"olis</w>\": 49397,\n  \"olithic</w>\": 35574,\n  \"olive\": 22486,\n  \"olive</w>\": 9898,\n  \"oliver\": 22882,\n  \"oliver</w>\": 9261,\n  \"olives</w>\": 27149,\n  \"olivi\": 20773,\n  \"olivia</w>\": 11697,\n  \"olivier</w>\": 23891,\n  \"oll\": 32270,\n  \"oll</w>\": 15510,\n  \"olla</w>\": 31908,\n  \"ollie</w>\": 24434,\n  \"olls</w>\": 42697,\n  \"olly</w>\": 23998,\n  \"olo\": 14628,\n  \"olo</w>\": 7606,\n  \"ological</w>\": 12345,\n  \"ologist</w>\": 23442,\n  \"ologists</w>\": 30912,\n  \"ology</w>\": 4627,\n  \"olor</w>\": 29245,\n  \"olph</w>\": 25077,\n  \"ols</w>\": 2236,\n  \"olsen</w>\": 26307,\n  \"olson</w>\": 28046,\n  \"olt</w>\": 46252,\n  \"olu\": 16502,\n  \"olu</w>\": 46302,\n  \"olulu</w>\": 27645,\n  \"oly\": 20323,\n  \"oly</w>\": 24823,\n  \"olym\": 3594,\n  \"olympi\": 13597,\n  \"olympia</w>\": 23965,\n  \"olympiad</w>\": 47694,\n  \"olympian</w>\": 25420,\n  \"olympians</w>\": 44583,\n  \"olympic\": 26099,\n  \"olympic</w>\": 6388,\n  \"olympics</w>\": 7629,\n  \"olympus</w>\": 30960,\n  \"om\": 547,\n  \"om</w>\": 3932,\n  \"oma\": 44603,\n  \"oma</w>\": 5358,\n  \"omaha</w>\": 16509,\n  \"oman\": 22088,\n  \"oman</w>\": 10871,\n  \"omar\": 19488,\n  \"omar</w>\": 13367,\n  \"omars</w>\": 37099,\n  \"omas</w>\": 36023,\n  \"omat\": 40788,\n  \"omb</w>\": 34447,\n  \"ombe</w>\": 35967,\n  \"omd</w>\": 49346,\n  \"ome\": 3693,\n  \"ome</w>\": 5832,\n  \"omed</w>\": 16835,\n  \"omega</w>\": 13465,\n  \"omelette</w>\": 38789,\n  \"omen\": 9969,\n  \"omen</w>\": 25469,\n  \"oment</w>\": 43683,\n  \"omeo</w>\": 39844,\n  \"omer\": 24087,\n  \"omer</w>\": 17902,\n  \"omes</w>\": 25736,\n  \"ometer</w>\": 20060,\n  \"ometric</w>\": 38702,\n  \"omez</w>\": 12541,\n  \"omf</w>\": 47496,\n  \"omfg</w>\": 12523,\n  \"omg\": 35233,\n  \"omg</w>\": 3186,\n  \"omi\": 24097,\n  \"omi</w>\": 10341,\n  \"omic\": 40536,\n  \"omic</w>\": 12793,\n  \"omics</w>\": 15138,\n  \"omile</w>\": 46915,\n  \"omin\": 16457,\n  \"omination</w>\": 42571,\n  \"oming</w>\": 10796,\n  \"ominous</w>\": 40914,\n  \"omni\": 18793,\n  \"omni</w>\": 39489,\n  \"omnibus</w>\": 44760,\n  \"omnic\": 48383,\n  \"omo\": 14478,\n  \"omo</w>\": 11066,\n  \"omon\": 48758,\n  \"omor\": 29431,\n  \"oms</w>\": 3770,\n  \"omusic</w>\": 38965,\n  \"omy\": 40805,\n  \"omy</w>\": 6884,\n  \"on\": 521,\n  \"on</w>\": 525,\n  \"ona</w>\": 2687,\n  \"onair</w>\": 29511,\n  \"onal</w>\": 918,\n  \"onboard</w>\": 21689,\n  \"once\": 16331,\n  \"once</w>\": 2654,\n  \"onceupon\": 28122,\n  \"onceuponatime</w>\": 33505,\n  \"onco\": 46700,\n  \"oncology</w>\": 24593,\n  \"ond\": 27918,\n  \"ond</w>\": 2636,\n  \"onda</w>\": 32643,\n  \"onday</w>\": 29864,\n  \"onde</w>\": 44532,\n  \"ondo</w>\": 29529,\n  \"ondon\": 42043,\n  \"ondon</w>\": 11851,\n  \"one\": 1980,\n  \"one</w>\": 637,\n  \"onec\": 27746,\n  \"oned\": 28012,\n  \"oned</w>\": 4698,\n  \"onedirection</w>\": 16245,\n  \"onee</w>\": 44433,\n  \"oneill</w>\": 44808,\n  \"onelove</w>\": 47417,\n  \"onent</w>\": 12147,\n  \"onents</w>\": 11709,\n  \"oneof\": 48478,\n  \"onep\": 20440,\n  \"onepiece</w>\": 43153,\n  \"oneplus</w>\": 25981,\n  \"oner\": 30055,\n  \"oner</w>\": 6071,\n  \"oners</w>\": 12324,\n  \"ones\": 20757,\n  \"ones</w>\": 1575,\n  \"oneself</w>\": 46874,\n  \"onesie</w>\": 33237,\n  \"oness</w>\": 25379,\n  \"onet</w>\": 36058,\n  \"oneteam</w>\": 41094,\n  \"onetsy</w>\": 33392,\n  \"onew</w>\": 43848,\n  \"onews</w>\": 18696,\n  \"onex</w>\": 49116,\n  \"oney\": 44498,\n  \"oney</w>\": 9408,\n  \"onf</w>\": 41790,\n  \"onfox</w>\": 29874,\n  \"ong\": 2787,\n  \"ong</w>\": 846,\n  \"onga</w>\": 30259,\n  \"ongchang</w>\": 35071,\n  \"ongi</w>\": 21754,\n  \"ongo</w>\": 31226,\n  \"ongoing</w>\": 10393,\n  \"ongs</w>\": 12143,\n  \"oni\": 4385,\n  \"oni</w>\": 8048,\n  \"onia</w>\": 8001,\n  \"onial</w>\": 27599,\n  \"onian</w>\": 21090,\n  \"onic\": 15838,\n  \"onic</w>\": 3711,\n  \"onica</w>\": 14631,\n  \"onics</w>\": 9779,\n  \"onie</w>\": 35249,\n  \"onies</w>\": 22601,\n  \"onimo</w>\": 41271,\n  \"oning</w>\": 5197,\n  \"onion</w>\": 10985,\n  \"onions</w>\": 15255,\n  \"onist</w>\": 10099,\n  \"onists</w>\": 19659,\n  \"onix</w>\": 27370,\n  \"onized</w>\": 43657,\n  \"onlin\": 31103,\n  \"online\": 12940,\n  \"online</w>\": 2027,\n  \"onlinemarketing</w>\": 41820,\n  \"onlineshopping</w>\": 38587,\n  \"only\": 11646,\n  \"only</w>\": 1033,\n  \"onlyin\": 32947,\n  \"onna\": 25438,\n  \"onna</w>\": 35458,\n  \"onnaise</w>\": 48934,\n  \"onne</w>\": 23466,\n  \"onnell</w>\": 45613,\n  \"ono\": 28165,\n  \"ono</w>\": 14388,\n  \"onom\": 48014,\n  \"onomy</w>\": 36873,\n  \"onpoli</w>\": 20708,\n  \"ons\": 26076,\n  \"ons</w>\": 708,\n  \"onsale</w>\": 36324,\n  \"onset</w>\": 30527,\n  \"onsite</w>\": 37336,\n  \"onstage</w>\": 21821,\n  \"onstorm</w>\": 49333,\n  \"ont\": 34303,\n  \"ont</w>\": 11157,\n  \"ontari\": 6739,\n  \"ontario\": 42766,\n  \"ontario</w>\": 7436,\n  \"onte</w>\": 34723,\n  \"onthe\": 12241,\n  \"onther\": 46563,\n  \"ontheroad</w>\": 47516,\n  \"onthisday</w>\": 6862,\n  \"onto\": 11745,\n  \"onto</w>\": 3141,\n  \"ontology</w>\": 37364,\n  \"ontour</w>\": 32155,\n  \"onu\": 44142,\n  \"onward</w>\": 34827,\n  \"onwards</w>\": 20682,\n  \"ony\": 9490,\n  \"ony</w>\": 2926,\n  \"onym\": 11483,\n  \"onymous</w>\": 13038,\n  \"onyx</w>\": 31353,\n  \"oo\": 574,\n  \"oo</w>\": 2822,\n  \"ood\": 16429,\n  \"ood</w>\": 738,\n  \"oodle</w>\": 45289,\n  \"oods</w>\": 44660,\n  \"oof</w>\": 42270,\n  \"ooh</w>\": 16806,\n  \"ook\": 22326,\n  \"ook</w>\": 8394,\n  \"ooks</w>\": 31082,\n  \"ool\": 37702,\n  \"ool</w>\": 929,\n  \"oom\": 22786,\n  \"oom</w>\": 15002,\n  \"oomf</w>\": 40607,\n  \"oon\": 35651,\n  \"oon</w>\": 7100,\n  \"ooo</w>\": 9571,\n  \"oooh</w>\": 28927,\n  \"oooo\": 4002,\n  \"oooo</w>\": 13643,\n  \"ooooo</w>\": 12532,\n  \"oooooo\": 43590,\n  \"oooooo</w>\": 20372,\n  \"ooooooo</w>\": 30859,\n  \"oooooooo\": 15473,\n  \"oooooooo</w>\": 43408,\n  \"oooooooooooooooo\": 48645,\n  \"oop</w>\": 7326,\n  \"ooper</w>\": 39906,\n  \"oops</w>\": 9116,\n  \"oor</w>\": 35239,\n  \"oos</w>\": 9896,\n  \"oosa</w>\": 30834,\n  \"oose</w>\": 38941,\n  \"oot</w>\": 17667,\n  \"ootball</w>\": 28914,\n  \"ootd</w>\": 16547,\n  \"ooth</w>\": 12682,\n  \"oott</w>\": 34316,\n  \"ooza</w>\": 22809,\n  \"op\": 676,\n  \"op</w>\": 3691,\n  \"opa</w>\": 28949,\n  \"opal</w>\": 28982,\n  \"opar\": 18167,\n  \"opath\": 33079,\n  \"opathic</w>\": 37521,\n  \"opathy</w>\": 28466,\n  \"opau\": 27239,\n  \"opd</w>\": 38288,\n  \"ope\": 31694,\n  \"ope</w>\": 11440,\n  \"opec</w>\": 33138,\n  \"opel</w>\": 36952,\n  \"open\": 3647,\n  \"open</w>\": 1488,\n  \"openaccess</w>\": 26591,\n  \"opend\": 28069,\n  \"opendata</w>\": 35709,\n  \"openday</w>\": 46991,\n  \"opened</w>\": 5303,\n  \"opener</w>\": 8998,\n  \"openhouse</w>\": 36091,\n  \"opening\": 33728,\n  \"opening</w>\": 2516,\n  \"openingday</w>\": 36359,\n  \"openings</w>\": 27643,\n  \"openly</w>\": 23005,\n  \"opens</w>\": 4801,\n  \"opensource</w>\": 29930,\n  \"oper\": 2796,\n  \"oper</w>\": 37533,\n  \"opera</w>\": 8056,\n  \"operate</w>\": 19306,\n  \"operated</w>\": 23031,\n  \"operates</w>\": 38675,\n  \"operating</w>\": 12218,\n  \"operation\": 27173,\n  \"operation</w>\": 7639,\n  \"operational</w>\": 18237,\n  \"operations</w>\": 8106,\n  \"operative</w>\": 28380,\n  \"operator</w>\": 15972,\n  \"operators</w>\": 19267,\n  \"opers</w>\": 48728,\n  \"opes</w>\": 37258,\n  \"oph\": 6796,\n  \"opha\": 38634,\n  \"ophel\": 45017,\n  \"ophelia</w>\": 49118,\n  \"ophi\": 44547,\n  \"ophile</w>\": 35915,\n  \"opho\": 12900,\n  \"ophobia</w>\": 21111,\n  \"ophobic</w>\": 29934,\n  \"ophon\": 25120,\n  \"ophone</w>\": 26345,\n  \"ophthal\": 33135,\n  \"ophy\": 28539,\n  \"opi\": 40056,\n  \"opi</w>\": 48994,\n  \"opin\": 7636,\n  \"opini\": 14825,\n  \"opinion</w>\": 7843,\n  \"opinions</w>\": 16192,\n  \"opio\": 17371,\n  \"opioid</w>\": 22833,\n  \"opioids</w>\": 47578,\n  \"opla\": 36270,\n  \"ople</w>\": 25663,\n  \"opol\": 15173,\n  \"opoly</w>\": 23729,\n  \"opor\": 39650,\n  \"opoulos</w>\": 42020,\n  \"opp\": 2020,\n  \"opp</w>\": 21024,\n  \"oppa</w>\": 23637,\n  \"oppo\": 7399,\n  \"oppo</w>\": 41770,\n  \"opponent</w>\": 17002,\n  \"opponents</w>\": 19664,\n  \"oppor\": 2914,\n  \"opportun\": 2939,\n  \"opportunities</w>\": 5978,\n  \"opportunity</w>\": 4004,\n  \"oppos\": 10091,\n  \"oppose</w>\": 23617,\n  \"opposed</w>\": 22509,\n  \"opposes</w>\": 47471,\n  \"opposing</w>\": 24376,\n  \"opposite</w>\": 12872,\n  \"opposition</w>\": 11062,\n  \"oppre\": 17341,\n  \"oppressed</w>\": 41492,\n  \"oppression</w>\": 30650,\n  \"opra</w>\": 28291,\n  \"oprah</w>\": 22562,\n  \"opry</w>\": 35340,\n  \"ops</w>\": 3054,\n  \"opt\": 45103,\n  \"opt</w>\": 27188,\n  \"opted</w>\": 42035,\n  \"opti\": 6580,\n  \"optic\": 25190,\n  \"optic</w>\": 24755,\n  \"optical</w>\": 16822,\n  \"optics</w>\": 27165,\n  \"optim\": 22331,\n  \"optimal</w>\": 25235,\n  \"optimi\": 9737,\n  \"optimis\": 39459,\n  \"optimism</w>\": 25226,\n  \"optimist</w>\": 44581,\n  \"optimistic</w>\": 23104,\n  \"optimization</w>\": 25125,\n  \"optimize</w>\": 30456,\n  \"optimized</w>\": 43939,\n  \"optimizing</w>\": 49157,\n  \"optimum</w>\": 35974,\n  \"optimus</w>\": 43453,\n  \"option</w>\": 8464,\n  \"optional</w>\": 25411,\n  \"options</w>\": 7063,\n  \"optome\": 35533,\n  \"opul\": 39858,\n  \"opus</w>\": 33295,\n  \"opy</w>\": 21835,\n  \"or\": 523,\n  \"or</w>\": 541,\n  \"ora</w>\": 4301,\n  \"orac\": 24673,\n  \"oracle\": 37308,\n  \"oracle</w>\": 15966,\n  \"orah</w>\": 40820,\n  \"orail</w>\": 45120,\n  \"oral\": 32490,\n  \"oral</w>\": 6007,\n  \"orama</w>\": 33619,\n  \"oran\": 32209,\n  \"oran</w>\": 28395,\n  \"orang\": 22116,\n  \"orange\": 13957,\n  \"orange</w>\": 4287,\n  \"oranges</w>\": 32417,\n  \"orangu\": 36112,\n  \"orb\": 28894,\n  \"orb</w>\": 36958,\n  \"orbit</w>\": 19713,\n  \"orbital</w>\": 40312,\n  \"orc</w>\": 44305,\n  \"orca</w>\": 18631,\n  \"orcas</w>\": 47676,\n  \"orch\": 11893,\n  \"orchar\": 40226,\n  \"orchard</w>\": 19530,\n  \"orche\": 8004,\n  \"orchestr\": 42937,\n  \"orchestra</w>\": 9573,\n  \"orchestral</w>\": 40285,\n  \"orchi\": 23696,\n  \"orchid</w>\": 18678,\n  \"orchids</w>\": 28376,\n  \"ord\": 26903,\n  \"ord</w>\": 11502,\n  \"orda\": 33462,\n  \"ordained</w>\": 38302,\n  \"order\": 24613,\n  \"order</w>\": 2191,\n  \"ordered</w>\": 8335,\n  \"ordering</w>\": 19588,\n  \"orderly</w>\": 43457,\n  \"orders</w>\": 6187,\n  \"ordin\": 4378,\n  \"ordinance</w>\": 38583,\n  \"ordinary</w>\": 8012,\n  \"ore\": 3580,\n  \"ore</w>\": 1423,\n  \"orean</w>\": 36696,\n  \"ored</w>\": 5133,\n  \"oregon\": 21759,\n  \"oregon</w>\": 8035,\n  \"oren\": 21645,\n  \"oreo</w>\": 21873,\n  \"oreos</w>\": 41688,\n  \"ores</w>\": 17328,\n  \"org\": 3401,\n  \"org</w>\": 5593,\n  \"organ\": 3338,\n  \"organ</w>\": 13213,\n  \"organi\": 3636,\n  \"organic\": 24080,\n  \"organic</w>\": 5980,\n  \"organics</w>\": 44199,\n  \"organis\": 13204,\n  \"organisation</w>\": 15868,\n  \"organisations</w>\": 20651,\n  \"organise</w>\": 36073,\n  \"organised</w>\": 13191,\n  \"organiser</w>\": 49141,\n  \"organisers</w>\": 35778,\n  \"organising</w>\": 22787,\n  \"organisms</w>\": 37041,\n  \"organiz\": 11107,\n  \"organization</w>\": 8064,\n  \"organizational</w>\": 29510,\n  \"organizations</w>\": 13453,\n  \"organize</w>\": 19973,\n  \"organized</w>\": 10681,\n  \"organizer</w>\": 23905,\n  \"organizers</w>\": 27191,\n  \"organizing</w>\": 15779,\n  \"organs</w>\": 29872,\n  \"orgs</w>\": 29500,\n  \"ori\": 1540,\n  \"ori</w>\": 8693,\n  \"oria</w>\": 11474,\n  \"orial</w>\": 8648,\n  \"orian</w>\": 21193,\n  \"oric</w>\": 43810,\n  \"orice</w>\": 41341,\n  \"orie</w>\": 18815,\n  \"orient\": 13149,\n  \"orient</w>\": 30770,\n  \"oriental</w>\": 23056,\n  \"orientation</w>\": 16873,\n  \"oriente\": 40390,\n  \"oriented</w>\": 24596,\n  \"orienteering</w>\": 42985,\n  \"ories</w>\": 5934,\n  \"orig\": 2273,\n  \"orig</w>\": 38463,\n  \"origami</w>\": 31832,\n  \"origin\": 2555,\n  \"origin</w>\": 12372,\n  \"original\": 18496,\n  \"original</w>\": 3117,\n  \"originally</w>\": 12849,\n  \"originals</w>\": 16953,\n  \"originated</w>\": 41823,\n  \"origins</w>\": 16291,\n  \"orin</w>\": 39863,\n  \"oring</w>\": 3006,\n  \"orio</w>\": 24308,\n  \"orioles</w>\": 21430,\n  \"orion</w>\": 21765,\n  \"oris</w>\": 37064,\n  \"orities</w>\": 7903,\n  \"ority</w>\": 5556,\n  \"orium</w>\": 12015,\n  \"ork\": 22202,\n  \"ork</w>\": 37235,\n  \"orkney</w>\": 34254,\n  \"orl</w>\": 39465,\n  \"orlando\": 32247,\n  \"orlando</w>\": 7827,\n  \"orleans</w>\": 11127,\n  \"orm</w>\": 38464,\n  \"orn\": 25412,\n  \"orn</w>\": 8130,\n  \"ornam\": 36122,\n  \"ornament</w>\": 23409,\n  \"ornamental</w>\": 46270,\n  \"ornaments</w>\": 28968,\n  \"ornate</w>\": 46865,\n  \"orni\": 27713,\n  \"ornithology</w>\": 38275,\n  \"orns</w>\": 19340,\n  \"oro\": 9848,\n  \"oro</w>\": 14573,\n  \"orous</w>\": 19286,\n  \"orph\": 17318,\n  \"orphan\": 22718,\n  \"orphan</w>\": 28994,\n  \"orphanage</w>\": 45196,\n  \"orphaned</w>\": 46792,\n  \"orphans</w>\": 36588,\n  \"orphe\": 39186,\n  \"orr</w>\": 32977,\n  \"ors</w>\": 1127,\n  \"orship</w>\": 20846,\n  \"ort</w>\": 1019,\n  \"ortega</w>\": 39727,\n  \"orth\": 22584,\n  \"orth</w>\": 24461,\n  \"ortho\": 11366,\n  \"orthodon\": 37730,\n  \"orthodox</w>\": 19008,\n  \"orthop\": 42123,\n  \"orthopedic</w>\": 49341,\n  \"ortiz</w>\": 23544,\n  \"orton</w>\": 37238,\n  \"oru\": 44629,\n  \"oru</w>\": 31281,\n  \"orum</w>\": 42724,\n  \"orwell</w>\": 41218,\n  \"ory\": 16983,\n  \"ory</w>\": 1985,\n  \"os\": 2211,\n  \"os</w>\": 1299,\n  \"osa\": 16340,\n  \"osa</w>\": 17237,\n  \"osaka</w>\": 21347,\n  \"osborne</w>\": 22402,\n  \"osbourne</w>\": 43376,\n  \"osc\": 5092,\n  \"oscar\": 21157,\n  \"oscar</w>\": 8191,\n  \"oscars</w>\": 11098,\n  \"osce</w>\": 37303,\n  \"oscill\": 38272,\n  \"ose\": 46942,\n  \"ose</w>\": 22541,\n  \"osh\": 30717,\n  \"osh</w>\": 35011,\n  \"osha</w>\": 33907,\n  \"oshi</w>\": 34770,\n  \"osi\": 25247,\n  \"osi</w>\": 17636,\n  \"osis</w>\": 13903,\n  \"osity</w>\": 12730,\n  \"oslo</w>\": 20547,\n  \"osm\": 31626,\n  \"osman</w>\": 46539,\n  \"oso\": 42793,\n  \"oso</w>\": 21285,\n  \"osp\": 24387,\n  \"ospre\": 49001,\n  \"osprey</w>\": 37893,\n  \"oss\": 29362,\n  \"oss</w>\": 34640,\n  \"ost\": 23701,\n  \"ost</w>\": 18749,\n  \"oste\": 20632,\n  \"osteo\": 43163,\n  \"oster\": 31781,\n  \"ostr\": 33673,\n  \"ostrich</w>\": 47640,\n  \"osu\": 29480,\n  \"osu</w>\": 19818,\n  \"oswald</w>\": 38471,\n  \"ot\": 1863,\n  \"ot</w>\": 2062,\n  \"ota\": 17509,\n  \"ota</w>\": 8741,\n  \"otago</w>\": 45919,\n  \"otaku</w>\": 40743,\n  \"otas</w>\": 47616,\n  \"otc</w>\": 37934,\n  \"otd</w>\": 5683,\n  \"ote\": 28511,\n  \"ote</w>\": 19744,\n  \"otes</w>\": 27280,\n  \"oth\": 33262,\n  \"oth</w>\": 33519,\n  \"other\": 9758,\n  \"other</w>\": 1010,\n  \"others</w>\": 3326,\n  \"otherwise</w>\": 12376,\n  \"oti\": 19567,\n  \"oti</w>\": 45564,\n  \"otic</w>\": 9671,\n  \"otis</w>\": 28246,\n  \"otive</w>\": 10877,\n  \"oto\": 23946,\n  \"oto</w>\": 23399,\n  \"otp</w>\": 29822,\n  \"otr</w>\": 38685,\n  \"ots</w>\": 5769,\n  \"ott\": 10167,\n  \"ott</w>\": 7936,\n  \"otta\": 7623,\n  \"otta</w>\": 20941,\n  \"ottawa\": 49027,\n  \"ottawa</w>\": 9019,\n  \"otte</w>\": 35214,\n  \"otter\": 34710,\n  \"otter</w>\": 22456,\n  \"otters</w>\": 38883,\n  \"otti</w>\": 36721,\n  \"ottnews</w>\": 33995,\n  \"otto</w>\": 17730,\n  \"ottoman</w>\": 27503,\n  \"otw</w>\": 35259,\n  \"otwol\": 46868,\n  \"ou\": 520,\n  \"ou</w>\": 6544,\n  \"ouat</w>\": 32954,\n  \"ouch</w>\": 13493,\n  \"oud</w>\": 1359,\n  \"oue</w>\": 48838,\n  \"ouf</w>\": 34618,\n  \"ough\": 4204,\n  \"ough</w>\": 991,\n  \"ought</w>\": 2253,\n  \"oughton</w>\": 36860,\n  \"oui</w>\": 39421,\n  \"ouk</w>\": 21796,\n  \"oul\": 20253,\n  \"oul</w>\": 8081,\n  \"ould</w>\": 859,\n  \"oulos</w>\": 32808,\n  \"oun\": 636,\n  \"oun</w>\": 20960,\n  \"ounce</w>\": 15027,\n  \"ounces</w>\": 30299,\n  \"ound\": 2013,\n  \"ound</w>\": 853,\n  \"oundation</w>\": 40132,\n  \"ounded</w>\": 9634,\n  \"ounding</w>\": 11944,\n  \"ounds</w>\": 2753,\n  \"oung\": 35875,\n  \"oung</w>\": 25341,\n  \"ounge</w>\": 29427,\n  \"ount\": 43801,\n  \"ount</w>\": 4172,\n  \"ounts</w>\": 10963,\n  \"oup</w>\": 32815,\n  \"our\": 727,\n  \"our</w>\": 581,\n  \"oura\": 29806,\n  \"oura</w>\": 36352,\n  \"ourable</w>\": 24126,\n  \"ourage</w>\": 34525,\n  \"oural</w>\": 45840,\n  \"oured</w>\": 6956,\n  \"ouri\": 12696,\n  \"ouring</w>\": 12000,\n  \"ourism</w>\": 25496,\n  \"ourke</w>\": 26480,\n  \"ourlives</w>\": 37541,\n  \"ouro\": 41224,\n  \"ours</w>\": 1491,\n  \"ourse</w>\": 15415,\n  \"ourselves</w>\": 10124,\n  \"ourt</w>\": 22960,\n  \"oury</w>\": 29484,\n  \"ous\": 1987,\n  \"ous</w>\": 879,\n  \"ouse\": 32048,\n  \"ouse</w>\": 7603,\n  \"ouses</w>\": 33666,\n  \"ously</w>\": 2501,\n  \"ousness</w>\": 10689,\n  \"ousy</w>\": 28302,\n  \"out\": 1130,\n  \"out</w>\": 620,\n  \"outa</w>\": 35187,\n  \"outage</w>\": 27320,\n  \"outages</w>\": 40353,\n  \"outback</w>\": 28532,\n  \"outbound</w>\": 41256,\n  \"outbreak</w>\": 20103,\n  \"outcome</w>\": 16552,\n  \"outcomes</w>\": 14016,\n  \"outdated</w>\": 38313,\n  \"outdoor\": 19184,\n  \"outdoor</w>\": 6368,\n  \"outdoors</w>\": 10469,\n  \"oute</w>\": 44180,\n  \"outed</w>\": 34435,\n  \"outer\": 30499,\n  \"outer</w>\": 14188,\n  \"outes</w>\": 39600,\n  \"outfield</w>\": 41826,\n  \"outfit</w>\": 6525,\n  \"outfits</w>\": 16366,\n  \"outfitters</w>\": 37725,\n  \"outfy</w>\": 34920,\n  \"outgoing</w>\": 27302,\n  \"outh\": 16933,\n  \"outh</w>\": 8111,\n  \"outine</w>\": 35452,\n  \"outing</w>\": 11251,\n  \"outlander\": 45820,\n  \"outlander</w>\": 17095,\n  \"outlaw\": 37498,\n  \"outlaw</w>\": 27340,\n  \"outlaws</w>\": 30935,\n  \"outlet</w>\": 16855,\n  \"outlets</w>\": 20822,\n  \"outline</w>\": 26894,\n  \"outlines</w>\": 29159,\n  \"outlining</w>\": 45960,\n  \"outlook</w>\": 12983,\n  \"outof\": 43958,\n  \"outpatient</w>\": 46603,\n  \"outpost</w>\": 44622,\n  \"output</w>\": 17255,\n  \"outra\": 14262,\n  \"outrage</w>\": 23577,\n  \"outraged</w>\": 43402,\n  \"outrageous</w>\": 29342,\n  \"outre\": 14373,\n  \"outreach</w>\": 15297,\n  \"outright</w>\": 38200,\n  \"outs</w>\": 5790,\n  \"outsi\": 22515,\n  \"outside\": 47693,\n  \"outside</w>\": 2782,\n  \"outsider</w>\": 41196,\n  \"outsiders</w>\": 41742,\n  \"outskirts</w>\": 42088,\n  \"outsourcing</w>\": 34543,\n  \"outstanding</w>\": 6387,\n  \"outta</w>\": 15807,\n  \"outtuesday</w>\": 48692,\n  \"outw\": 34650,\n  \"oux\": 40960,\n  \"oux</w>\": 14228,\n  \"ov\": 6420,\n  \"ov</w>\": 8479,\n  \"ova</w>\": 12762,\n  \"oval</w>\": 15039,\n  \"ovarian</w>\": 42913,\n  \"ovation</w>\": 24333,\n  \"ove\": 8649,\n  \"ove</w>\": 15456,\n  \"oven\": 44620,\n  \"oven</w>\": 12579,\n  \"over\": 1658,\n  \"over</w>\": 962,\n  \"overall</w>\": 6914,\n  \"overboard</w>\": 42982,\n  \"overcame</w>\": 47235,\n  \"overcast</w>\": 36942,\n  \"overcome</w>\": 14365,\n  \"overcoming</w>\": 29348,\n  \"overdose</w>\": 27017,\n  \"overdrive</w>\": 40088,\n  \"overdue</w>\": 30240,\n  \"overflow</w>\": 32885,\n  \"overflowing</w>\": 45370,\n  \"overhaul</w>\": 31531,\n  \"overhead</w>\": 20321,\n  \"overland</w>\": 38808,\n  \"overlay</w>\": 44827,\n  \"overload</w>\": 24327,\n  \"overlook</w>\": 35767,\n  \"overlooked</w>\": 27632,\n  \"overlooking</w>\": 17319,\n  \"overly</w>\": 28820,\n  \"overnight</w>\": 9913,\n  \"overpass</w>\": 44310,\n  \"overrated</w>\": 38214,\n  \"overs\": 45774,\n  \"overs</w>\": 17329,\n  \"overseas</w>\": 15100,\n  \"oversight</w>\": 32494,\n  \"oversized</w>\": 31557,\n  \"overtime</w>\": 19347,\n  \"overturned</w>\": 31048,\n  \"overview</w>\": 14789,\n  \"overwatch</w>\": 18124,\n  \"overweight</w>\": 43465,\n  \"overwhel\": 12204,\n  \"overwhelmed</w>\": 23459,\n  \"overwhelming</w>\": 20306,\n  \"overwhelmingly</w>\": 43549,\n  \"ovi\": 32508,\n  \"ovic</w>\": 22417,\n  \"ovich</w>\": 27623,\n  \"ovie\": 47677,\n  \"ovo\": 41920,\n  \"ovo</w>\": 18065,\n  \"ovski</w>\": 26167,\n  \"ow\": 2032,\n  \"ow</w>\": 2250,\n  \"owa</w>\": 32770,\n  \"owe</w>\": 19073,\n  \"owed</w>\": 37641,\n  \"owen\": 24838,\n  \"owen</w>\": 12056,\n  \"owens</w>\": 20664,\n  \"owes</w>\": 35069,\n  \"owing</w>\": 48582,\n  \"owl\": 34332,\n  \"owl</w>\": 9899,\n  \"owls</w>\": 18247,\n  \"own\": 3845,\n  \"own</w>\": 1758,\n  \"owned</w>\": 8536,\n  \"owner</w>\": 5019,\n  \"owners</w>\": 7712,\n  \"ownership</w>\": 16583,\n  \"owning</w>\": 24661,\n  \"owns</w>\": 17533,\n  \"owo</w>\": 46142,\n  \"ows</w>\": 27423,\n  \"owski</w>\": 22573,\n  \"ox\": 3282,\n  \"ox</w>\": 12071,\n  \"oxfam</w>\": 45466,\n  \"oxford\": 28588,\n  \"oxford</w>\": 8824,\n  \"oxfordshire</w>\": 37855,\n  \"oxi\": 33731,\n  \"oxi</w>\": 48147,\n  \"oxid\": 17701,\n  \"oxide</w>\": 28235,\n  \"oxo</w>\": 37088,\n  \"oxy\": 12432,\n  \"oxygen</w>\": 16214,\n  \"oy\": 6638,\n  \"oy</w>\": 12437,\n  \"oya</w>\": 38894,\n  \"oye\": 48677,\n  \"oyster\": 40545,\n  \"oyster</w>\": 17253,\n  \"oysters</w>\": 22672,\n  \"oz\": 10584,\n  \"oz</w>\": 6044,\n  \"ozar\": 31848,\n  \"ozil</w>\": 41365,\n  \"ozone</w>\": 37052,\n  \"ozzy</w>\": 39549,\n  \"p\": 79,\n  \"p</w>\": 335,\n  \"pa\": 765,\n  \"pa</w>\": 2217,\n  \"paa</w>\": 32812,\n  \"pab\": 9354,\n  \"pablo\": 42172,\n  \"pablo</w>\": 14473,\n  \"pac\": 2332,\n  \"pac</w>\": 7608,\n  \"pace\": 40600,\n  \"pace</w>\": 9450,\n  \"paced</w>\": 32611,\n  \"pacers</w>\": 23976,\n  \"paces</w>\": 43001,\n  \"paci\": 5699,\n  \"pacific\": 19723,\n  \"pacific</w>\": 6654,\n  \"pacing</w>\": 45202,\n  \"pack\": 2711,\n  \"pack</w>\": 3420,\n  \"package</w>\": 7053,\n  \"packaged</w>\": 29656,\n  \"packages</w>\": 14305,\n  \"packaging</w>\": 11658,\n  \"packard</w>\": 46421,\n  \"packed</w>\": 5883,\n  \"packer</w>\": 28209,\n  \"packers</w>\": 14294,\n  \"packet</w>\": 25022,\n  \"packets</w>\": 40448,\n  \"packing</w>\": 9829,\n  \"packs</w>\": 11086,\n  \"paco</w>\": 41364,\n  \"pacqui\": 28456,\n  \"pacquiao</w>\": 30485,\n  \"pact</w>\": 27182,\n  \"pad\": 3798,\n  \"pad</w>\": 7601,\n  \"padded</w>\": 42253,\n  \"paddington</w>\": 33162,\n  \"paddle\": 38276,\n  \"paddle</w>\": 20811,\n  \"paddling</w>\": 40645,\n  \"paddock</w>\": 29590,\n  \"paddy\": 33103,\n  \"paddy</w>\": 19855,\n  \"padi</w>\": 47037,\n  \"padilla</w>\": 22380,\n  \"padma\": 44595,\n  \"padma</w>\": 46457,\n  \"padre</w>\": 38343,\n  \"padres</w>\": 22829,\n  \"pads</w>\": 17353,\n  \"paedi\": 41488,\n  \"paella</w>\": 46924,\n  \"paf\": 47185,\n  \"pafc</w>\": 49259,\n  \"pag\": 4151,\n  \"pag</w>\": 30525,\n  \"pagan</w>\": 27854,\n  \"page\": 14996,\n  \"page</w>\": 2504,\n  \"pageant</w>\": 22139,\n  \"pages</w>\": 8082,\n  \"pagoda</w>\": 44309,\n  \"pah\": 41054,\n  \"pah</w>\": 26884,\n  \"pai\": 20624,\n  \"pai</w>\": 21198,\n  \"paid</w>\": 5057,\n  \"paige\": 33659,\n  \"paige</w>\": 16022,\n  \"paign</w>\": 31796,\n  \"pain\": 2141,\n  \"pain</w>\": 4495,\n  \"paine</w>\": 38069,\n  \"painful</w>\": 16361,\n  \"pains</w>\": 25639,\n  \"paint\": 7948,\n  \"paint</w>\": 5185,\n  \"paintball</w>\": 39730,\n  \"painted</w>\": 6433,\n  \"painter</w>\": 10888,\n  \"painters</w>\": 35703,\n  \"painting\": 49164,\n  \"painting</w>\": 3086,\n  \"paintings</w>\": 9956,\n  \"paints</w>\": 21672,\n  \"pair\": 19848,\n  \"pair</w>\": 4038,\n  \"paired</w>\": 12433,\n  \"pairing</w>\": 16313,\n  \"pairings</w>\": 41152,\n  \"pairs</w>\": 9950,\n  \"pais\": 16878,\n  \"paisley</w>\": 22954,\n  \"pajam\": 24110,\n  \"pajama</w>\": 40244,\n  \"pajamas</w>\": 37231,\n  \"pak\": 13186,\n  \"pak</w>\": 9094,\n  \"paki\": 3438,\n  \"pakistan\": 10713,\n  \"pakistan</w>\": 3994,\n  \"pakistani</w>\": 14050,\n  \"pakistanis</w>\": 45707,\n  \"pakv\": 38196,\n  \"pal\": 1850,\n  \"pal</w>\": 3611,\n  \"pala</w>\": 17895,\n  \"palace</w>\": 6381,\n  \"palaces</w>\": 45625,\n  \"palad\": 28371,\n  \"palae\": 43379,\n  \"palais</w>\": 35673,\n  \"palate</w>\": 34666,\n  \"palawan</w>\": 48202,\n  \"palazzo</w>\": 36006,\n  \"pale\": 4768,\n  \"pale</w>\": 12518,\n  \"paleo\": 36741,\n  \"paleo</w>\": 22198,\n  \"paler\": 38028,\n  \"palermo</w>\": 40635,\n  \"palestin\": 9449,\n  \"palestine</w>\": 11682,\n  \"palestinian</w>\": 11764,\n  \"palestinians</w>\": 21874,\n  \"palette</w>\": 13901,\n  \"pali\": 48063,\n  \"palin</w>\": 40153,\n  \"palis\": 44256,\n  \"pality</w>\": 27296,\n  \"pall\": 35817,\n  \"palla\": 21208,\n  \"palladium</w>\": 37888,\n  \"pallet</w>\": 39057,\n  \"palli\": 28954,\n  \"palliative</w>\": 46014,\n  \"pally</w>\": 46073,\n  \"palm\": 19651,\n  \"palm</w>\": 8612,\n  \"palma</w>\": 29888,\n  \"palmer\": 40112,\n  \"palmer</w>\": 13633,\n  \"palms</w>\": 27059,\n  \"palo</w>\": 31562,\n  \"palom\": 47698,\n  \"palooza</w>\": 25861,\n  \"pals</w>\": 11043,\n  \"palsy</w>\": 46651,\n  \"pam\": 8228,\n  \"pam</w>\": 18513,\n  \"pamela</w>\": 26991,\n  \"pamp\": 37653,\n  \"pamper</w>\": 44345,\n  \"pamph\": 41332,\n  \"pan\": 1072,\n  \"pan</w>\": 7437,\n  \"panam\": 24606,\n  \"panama</w>\": 15522,\n  \"panas\": 26207,\n  \"panasonic</w>\": 29750,\n  \"pancake</w>\": 18723,\n  \"pancakes</w>\": 15308,\n  \"panch\": 27251,\n  \"pancra\": 42472,\n  \"pancre\": 27708,\n  \"pancreatic</w>\": 49337,\n  \"pancy</w>\": 41625,\n  \"pand\": 5631,\n  \"panda</w>\": 12952,\n  \"pandas</w>\": 35119,\n  \"pande\": 38419,\n  \"pandey</w>\": 34895,\n  \"pandit</w>\": 41191,\n  \"pandor\": 30250,\n  \"pandora</w>\": 17727,\n  \"pandoramusic</w>\": 42344,\n  \"pane</w>\": 27470,\n  \"panel</w>\": 3724,\n  \"paneli\": 19410,\n  \"panelist</w>\": 39719,\n  \"panelists</w>\": 24619,\n  \"panels</w>\": 12735,\n  \"panera</w>\": 48471,\n  \"pang\": 16756,\n  \"pang</w>\": 23672,\n  \"panhandle</w>\": 40919,\n  \"pani</w>\": 36092,\n  \"panic\": 46671,\n  \"panic</w>\": 14124,\n  \"panini</w>\": 30410,\n  \"pann\": 42302,\n  \"panna</w>\": 49065,\n  \"pano</w>\": 36165,\n  \"panor\": 12962,\n  \"panorama</w>\": 19763,\n  \"panoramic</w>\": 22563,\n  \"pans</w>\": 35204,\n  \"pant</w>\": 22550,\n  \"panther\": 22825,\n  \"panther</w>\": 13262,\n  \"panthers</w>\": 10494,\n  \"panties</w>\": 32515,\n  \"panto</w>\": 28776,\n  \"pantry</w>\": 25608,\n  \"pants</w>\": 5003,\n  \"panty\": 44217,\n  \"pany</w>\": 45567,\n  \"panzer</w>\": 41159,\n  \"pao</w>\": 33790,\n  \"paola</w>\": 44689,\n  \"paolo\": 48488,\n  \"paolo</w>\": 21133,\n  \"pap\": 1884,\n  \"pap</w>\": 30756,\n  \"papa</w>\": 12211,\n  \"papar\": 32782,\n  \"paparazzi</w>\": 37842,\n  \"papaya</w>\": 44098,\n  \"paper\": 8680,\n  \"paper</w>\": 2802,\n  \"paperback</w>\": 17928,\n  \"papers</w>\": 8204,\n  \"paperwork</w>\": 35785,\n  \"papi</w>\": 35177,\n  \"papp\": 26361,\n  \"paprika</w>\": 44793,\n  \"papua</w>\": 32629,\n  \"par\": 699,\n  \"par</w>\": 9163,\n  \"para\": 18355,\n  \"para</w>\": 8976,\n  \"parach\": 23147,\n  \"parachute</w>\": 30122,\n  \"parad\": 37143,\n  \"parade</w>\": 5809,\n  \"parades</w>\": 46479,\n  \"paradi\": 6658,\n  \"paradig\": 27786,\n  \"paradigm</w>\": 33485,\n  \"paradise\": 45869,\n  \"paradise</w>\": 7247,\n  \"paradox</w>\": 33109,\n  \"parag\": 11866,\n  \"paragon</w>\": 48099,\n  \"paragra\": 24903,\n  \"paragraph</w>\": 28499,\n  \"paragu\": 38021,\n  \"paraguay</w>\": 43579,\n  \"paral\": 15143,\n  \"paralle\": 13184,\n  \"parallel</w>\": 18201,\n  \"paralleled</w>\": 42520,\n  \"parallels</w>\": 46101,\n  \"paraly\": 30255,\n  \"paralym\": 18727,\n  \"paralympic</w>\": 30806,\n  \"paralympics</w>\": 37162,\n  \"paralysis</w>\": 45702,\n  \"param\": 12250,\n  \"parame\": 27106,\n  \"paramedic</w>\": 34630,\n  \"paramedics</w>\": 35991,\n  \"parameters</w>\": 44890,\n  \"paramore</w>\": 34401,\n  \"paramount</w>\": 26642,\n  \"parano\": 30283,\n  \"paranoid</w>\": 43029,\n  \"paranor\": 16940,\n  \"paranormal</w>\": 19047,\n  \"parap\": 41091,\n  \"paras\": 15198,\n  \"parasite</w>\": 42460,\n  \"parasites</w>\": 46175,\n  \"parc</w>\": 30914,\n  \"parcel</w>\": 30367,\n  \"parcels</w>\": 45589,\n  \"pard</w>\": 18773,\n  \"pardon\": 47606,\n  \"pardon</w>\": 26565,\n  \"pare\": 18202,\n  \"pared</w>\": 5498,\n  \"paren\": 3106,\n  \"parent\": 47848,\n  \"parent</w>\": 10183,\n  \"parental</w>\": 28339,\n  \"parenthood</w>\": 23887,\n  \"parenting</w>\": 14529,\n  \"parents</w>\": 3731,\n  \"pares</w>\": 12420,\n  \"parfait</w>\": 46140,\n  \"pari\": 17961,\n  \"pari</w>\": 27979,\n  \"paris\": 13982,\n  \"paris</w>\": 3445,\n  \"parisagreement</w>\": 47405,\n  \"parish\": 47328,\n  \"parish</w>\": 13020,\n  \"parisi\": 45081,\n  \"parisian</w>\": 38512,\n  \"parity</w>\": 42734,\n  \"park\": 4985,\n  \"park</w>\": 1452,\n  \"parked</w>\": 16487,\n  \"parker\": 31119,\n  \"parker</w>\": 8365,\n  \"parkin\": 34868,\n  \"parking</w>\": 5984,\n  \"parkinson</w>\": 28129,\n  \"parkland</w>\": 31287,\n  \"parkrun</w>\": 25747,\n  \"parks</w>\": 6873,\n  \"parkway</w>\": 19882,\n  \"parl\": 30373,\n  \"parl</w>\": 29897,\n  \"parliam\": 5941,\n  \"parliament\": 41599,\n  \"parliament</w>\": 7151,\n  \"parliamentary</w>\": 17912,\n  \"parlor</w>\": 38253,\n  \"parlour</w>\": 37829,\n  \"parma</w>\": 36077,\n  \"parme\": 26295,\n  \"parmesan</w>\": 27274,\n  \"paro\": 17429,\n  \"parody</w>\": 24318,\n  \"parole</w>\": 32158,\n  \"parr</w>\": 44113,\n  \"parrish</w>\": 43043,\n  \"parrot</w>\": 23565,\n  \"parry</w>\": 40604,\n  \"parsley</w>\": 30077,\n  \"parsons</w>\": 22505,\n  \"part\": 1872,\n  \"part</w>\": 1551,\n  \"parte</w>\": 48508,\n  \"parth</w>\": 34790,\n  \"parti\": 10509,\n  \"partial</w>\": 18957,\n  \"partially</w>\": 21269,\n  \"partic\": 2871,\n  \"partici\": 9540,\n  \"particip\": 4400,\n  \"participant</w>\": 27674,\n  \"participants</w>\": 10237,\n  \"participate</w>\": 9433,\n  \"participated</w>\": 14252,\n  \"participates</w>\": 46414,\n  \"participating</w>\": 11535,\n  \"participation</w>\": 13529,\n  \"particle</w>\": 27716,\n  \"particles</w>\": 27012,\n  \"particul\": 11408,\n  \"particular</w>\": 14098,\n  \"particularly</w>\": 12170,\n  \"parties</w>\": 9032,\n  \"parting</w>\": 32844,\n  \"partisan</w>\": 20772,\n  \"partist</w>\": 44713,\n  \"partition</w>\": 42219,\n  \"partly</w>\": 21459,\n  \"partner\": 5210,\n  \"partner</w>\": 4568,\n  \"partnered</w>\": 21402,\n  \"partnering</w>\": 21182,\n  \"partners</w>\": 5568,\n  \"partnership</w>\": 6123,\n  \"partnerships</w>\": 17418,\n  \"parton</w>\": 43245,\n  \"partridge</w>\": 34872,\n  \"parts</w>\": 5149,\n  \"party\": 12877,\n  \"party</w>\": 1580,\n  \"partying</w>\": 25702,\n  \"pas\": 1341,\n  \"pas</w>\": 9525,\n  \"pasadena</w>\": 25892,\n  \"pascal</w>\": 28626,\n  \"pasco</w>\": 49220,\n  \"pascu\": 42692,\n  \"pash\": 23936,\n  \"pasha</w>\": 46986,\n  \"paso</w>\": 18542,\n  \"pasqu\": 44941,\n  \"pass\": 5016,\n  \"pass</w>\": 3511,\n  \"passage</w>\": 16477,\n  \"passages</w>\": 48937,\n  \"passed</w>\": 4957,\n  \"passenger</w>\": 12311,\n  \"passengers</w>\": 12781,\n  \"passer</w>\": 48544,\n  \"passes</w>\": 7633,\n  \"passi\": 32471,\n  \"passing</w>\": 6589,\n  \"passion\": 8822,\n  \"passion</w>\": 5332,\n  \"passionate</w>\": 10947,\n  \"passionately</w>\": 44028,\n  \"passions</w>\": 38441,\n  \"passive</w>\": 23171,\n  \"passover</w>\": 38426,\n  \"passport</w>\": 14739,\n  \"passports</w>\": 46368,\n  \"password</w>\": 20258,\n  \"passwords</w>\": 43095,\n  \"past\": 7315,\n  \"past</w>\": 2729,\n  \"pasta</w>\": 10441,\n  \"paste\": 34765,\n  \"paste</w>\": 17038,\n  \"pastel</w>\": 19457,\n  \"pastels</w>\": 45699,\n  \"pastor\": 19792,\n  \"pastor</w>\": 9664,\n  \"pastoral</w>\": 37191,\n  \"pastors</w>\": 30959,\n  \"pastr\": 45478,\n  \"pastries</w>\": 39409,\n  \"pastry</w>\": 18582,\n  \"pasture</w>\": 34764,\n  \"pastures</w>\": 47793,\n  \"pat\": 1300,\n  \"pat</w>\": 7036,\n  \"patag\": 29862,\n  \"patagonia</w>\": 32786,\n  \"patch\": 29284,\n  \"patch</w>\": 8721,\n  \"patches</w>\": 22104,\n  \"patchwork</w>\": 44675,\n  \"patchy</w>\": 47488,\n  \"pate\": 42122,\n  \"pate</w>\": 42098,\n  \"patel</w>\": 14168,\n  \"patent</w>\": 14692,\n  \"patented</w>\": 37277,\n  \"patents</w>\": 33911,\n  \"paterson</w>\": 36560,\n  \"path\": 7408,\n  \"path</w>\": 5035,\n  \"pathetic</w>\": 18222,\n  \"pathfinder</w>\": 35415,\n  \"pathi\": 34976,\n  \"pathi</w>\": 27347,\n  \"pathic</w>\": 49025,\n  \"patho\": 18534,\n  \"pathology</w>\": 23290,\n  \"paths</w>\": 16333,\n  \"pathway</w>\": 23488,\n  \"pathways</w>\": 24690,\n  \"pathy</w>\": 13330,\n  \"pati\": 2799,\n  \"pati</w>\": 26708,\n  \"patience</w>\": 13575,\n  \"patient\": 30139,\n  \"patient</w>\": 6262,\n  \"patiently</w>\": 22980,\n  \"patients</w>\": 5543,\n  \"patil</w>\": 49187,\n  \"patio</w>\": 14304,\n  \"pational</w>\": 30627,\n  \"patna</w>\": 45025,\n  \"patory</w>\": 41859,\n  \"patreon</w>\": 17165,\n  \"patri\": 4771,\n  \"patriarch</w>\": 49054,\n  \"patriarchy</w>\": 48806,\n  \"patric\": 12569,\n  \"patrice</w>\": 40731,\n  \"patricia</w>\": 18143,\n  \"patrick\": 12078,\n  \"patrick</w>\": 5286,\n  \"patricks</w>\": 46783,\n  \"patriot\": 28896,\n  \"patriot</w>\": 15692,\n  \"patrioti\": 35520,\n  \"patriotic</w>\": 20217,\n  \"patriotism</w>\": 35807,\n  \"patriots</w>\": 8707,\n  \"patro\": 31650,\n  \"patrol</w>\": 10073,\n  \"patrolling</w>\": 39344,\n  \"patrols</w>\": 35978,\n  \"patron\": 26658,\n  \"patron</w>\": 17683,\n  \"patrons</w>\": 28308,\n  \"pats</w>\": 24874,\n  \"patsy</w>\": 46093,\n  \"patt\": 12637,\n  \"patter\": 4982,\n  \"pattern</w>\": 7447,\n  \"patterned</w>\": 47212,\n  \"patterns</w>\": 11637,\n  \"patterson</w>\": 21384,\n  \"patti\": 44927,\n  \"patti</w>\": 26123,\n  \"pattinson</w>\": 32474,\n  \"patton</w>\": 29026,\n  \"patty\": 48741,\n  \"patty</w>\": 18321,\n  \"pau\": 1834,\n  \"pau</w>\": 35970,\n  \"paul\": 6035,\n  \"paul</w>\": 2597,\n  \"paula\": 37363,\n  \"paula</w>\": 16777,\n  \"pauline</w>\": 30438,\n  \"paulo\": 48002,\n  \"paulo</w>\": 21628,\n  \"pauls\": 41413,\n  \"pauls</w>\": 40010,\n  \"paulson</w>\": 48201,\n  \"pause</w>\": 19439,\n  \"paused</w>\": 46782,\n  \"pav\": 6661,\n  \"pave</w>\": 37107,\n  \"paved</w>\": 27898,\n  \"pavel</w>\": 43152,\n  \"pavement</w>\": 27669,\n  \"pavilion</w>\": 13374,\n  \"paving</w>\": 28651,\n  \"paw\": 14009,\n  \"paw</w>\": 16016,\n  \"pawan\": 29754,\n  \"pawankalyan</w>\": 33702,\n  \"pawn</w>\": 43195,\n  \"paws</w>\": 16714,\n  \"pax\": 20007,\n  \"pax</w>\": 19033,\n  \"paxton</w>\": 38347,\n  \"pay\": 2642,\n  \"pay</w>\": 3345,\n  \"payback</w>\": 36413,\n  \"paycheck</w>\": 45078,\n  \"payday</w>\": 26957,\n  \"payee</w>\": 46985,\n  \"payer</w>\": 41503,\n  \"paying</w>\": 8341,\n  \"payment</w>\": 10596,\n  \"payments</w>\": 11832,\n  \"payne</w>\": 12775,\n  \"paypal</w>\": 21442,\n  \"payroll</w>\": 31610,\n  \"pays</w>\": 10845,\n  \"paysoff</w>\": 48174,\n  \"paytm</w>\": 45352,\n  \"payton</w>\": 27348,\n  \"paz</w>\": 22267,\n  \"pb\": 20112,\n  \"pb</w>\": 10981,\n  \"pba</w>\": 28205,\n  \"pbb\": 48567,\n  \"pbb</w>\": 40589,\n  \"pbc</w>\": 49191,\n  \"pbl</w>\": 35166,\n  \"pbr</w>\": 32998,\n  \"pbs</w>\": 17908,\n  \"pc\": 6782,\n  \"pc</w>\": 3808,\n  \"pca</w>\": 35705,\n  \"pcb</w>\": 26235,\n  \"pcc</w>\": 36059,\n  \"pci</w>\": 38957,\n  \"pcm</w>\": 47436,\n  \"pcr</w>\": 35704,\n  \"pcs</w>\": 11917,\n  \"pcso</w>\": 31963,\n  \"pct</w>\": 22168,\n  \"pd\": 4387,\n  \"pd</w>\": 4675,\n  \"pdates</w>\": 16842,\n  \"pdc</w>\": 40498,\n  \"pdf</w>\": 15181,\n  \"pdp</w>\": 24601,\n  \"pdt</w>\": 21743,\n  \"pdx\": 25470,\n  \"pdx</w>\": 16153,\n  \"pe\": 661,\n  \"pe</w>\": 956,\n  \"pea</w>\": 13915,\n  \"peabo\": 34083,\n  \"peabody</w>\": 41244,\n  \"peac\": 34615,\n  \"peace\": 6249,\n  \"peace</w>\": 3021,\n  \"peaceful</w>\": 9461,\n  \"peacefully</w>\": 30530,\n  \"peacekeeping</w>\": 43630,\n  \"peach\": 10522,\n  \"peach</w>\": 11538,\n  \"peaches</w>\": 27216,\n  \"peak\": 18572,\n  \"peak</w>\": 6026,\n  \"peakdistrict</w>\": 41289,\n  \"peake</w>\": 24810,\n  \"peaked</w>\": 36391,\n  \"peaks</w>\": 14067,\n  \"pean\": 11563,\n  \"peanu\": 25843,\n  \"peanut</w>\": 12491,\n  \"peanuts</w>\": 26503,\n  \"pear\": 4910,\n  \"pear</w>\": 18820,\n  \"pearce</w>\": 25996,\n  \"pearl\": 21806,\n  \"pearl</w>\": 8560,\n  \"pearljam</w>\": 46739,\n  \"pearls</w>\": 19581,\n  \"pears</w>\": 39565,\n  \"pearson</w>\": 20461,\n  \"peas</w>\": 15937,\n  \"peasant</w>\": 40621,\n  \"peasants</w>\": 48788,\n  \"peat</w>\": 26914,\n  \"pebble</w>\": 28056,\n  \"pebbles</w>\": 40155,\n  \"pec\": 32447,\n  \"pec</w>\": 17611,\n  \"pecan</w>\": 32177,\n  \"peck\": 25186,\n  \"peck</w>\": 29234,\n  \"pecker</w>\": 30169,\n  \"peckham</w>\": 45863,\n  \"pecu\": 34200,\n  \"peculiar</w>\": 42808,\n  \"ped\": 13197,\n  \"ped</w>\": 2966,\n  \"pedago\": 34590,\n  \"pedagogy</w>\": 48072,\n  \"pedal\": 32943,\n  \"pedal</w>\": 19621,\n  \"pedals</w>\": 38535,\n  \"pede\": 12862,\n  \"pede</w>\": 19560,\n  \"pedestri\": 30027,\n  \"pedestrian</w>\": 18256,\n  \"pedestrians</w>\": 33895,\n  \"pedi\": 12967,\n  \"pedia</w>\": 11733,\n  \"pediatric\": 48431,\n  \"pediatric</w>\": 22071,\n  \"pedic\": 35319,\n  \"pedic</w>\": 44528,\n  \"pedro\": 29963,\n  \"pedro</w>\": 15114,\n  \"peds</w>\": 45377,\n  \"pee\": 12988,\n  \"pee</w>\": 11196,\n  \"peed</w>\": 47369,\n  \"peek\": 46323,\n  \"peek</w>\": 7569,\n  \"peeking</w>\": 48771,\n  \"peel\": 34386,\n  \"peel</w>\": 17158,\n  \"peeled</w>\": 33533,\n  \"peeling</w>\": 48649,\n  \"peep\": 25425,\n  \"peep</w>\": 16857,\n  \"peeps</w>\": 11681,\n  \"peer\": 32416,\n  \"peer</w>\": 14432,\n  \"peers</w>\": 21626,\n  \"pees</w>\": 31830,\n  \"peg\": 32182,\n  \"peg</w>\": 11207,\n  \"pegas\": 30018,\n  \"pegasus</w>\": 37822,\n  \"peggy</w>\": 24271,\n  \"pei\": 48166,\n  \"pei</w>\": 12917,\n  \"pel\": 4286,\n  \"pel</w>\": 7006,\n  \"pele</w>\": 44105,\n  \"pelican</w>\": 34131,\n  \"pelicans</w>\": 29363,\n  \"pell</w>\": 46981,\n  \"pelle\": 31267,\n  \"pelled</w>\": 32506,\n  \"pellegr\": 38529,\n  \"pellets</w>\": 48240,\n  \"pelo\": 40192,\n  \"pelo</w>\": 40238,\n  \"pelosi</w>\": 22169,\n  \"pelvic</w>\": 45646,\n  \"pemb\": 19880,\n  \"pembro\": 24084,\n  \"pembroke\": 36702,\n  \"pembroke</w>\": 40044,\n  \"pembrokeshire</w>\": 40695,\n  \"pen\": 1501,\n  \"pen</w>\": 5356,\n  \"pena</w>\": 35788,\n  \"penalties</w>\": 25417,\n  \"penalty</w>\": 11491,\n  \"penang</w>\": 29545,\n  \"penc\": 20065,\n  \"pence</w>\": 18002,\n  \"pencil\": 41303,\n  \"pencil</w>\": 11200,\n  \"pencils</w>\": 21909,\n  \"pend\": 3052,\n  \"pendant</w>\": 12415,\n  \"pendants</w>\": 44117,\n  \"pending</w>\": 12770,\n  \"pendleton</w>\": 44272,\n  \"pendu\": 45336,\n  \"penelope</w>\": 36703,\n  \"penetr\": 26058,\n  \"peng\": 42955,\n  \"peng</w>\": 39200,\n  \"pengu\": 8854,\n  \"penguin\": 28249,\n  \"penguin</w>\": 14952,\n  \"penguins</w>\": 16557,\n  \"peninsu\": 13464,\n  \"peninsula</w>\": 14070,\n  \"penn\": 7760,\n  \"penn</w>\": 11128,\n  \"pennant</w>\": 43971,\n  \"penned</w>\": 45077,\n  \"penney</w>\": 47856,\n  \"pennies</w>\": 43094,\n  \"pennsylvania</w>\": 13673,\n  \"penny\": 20400,\n  \"penny</w>\": 11388,\n  \"pens\": 13307,\n  \"pens</w>\": 13310,\n  \"pensac\": 30925,\n  \"pensacola</w>\": 33573,\n  \"pension\": 32840,\n  \"pension</w>\": 17764,\n  \"pensions</w>\": 29773,\n  \"penske</w>\": 47154,\n  \"pent\": 10699,\n  \"pent</w>\": 22725,\n  \"pentagon</w>\": 23133,\n  \"pente\": 33165,\n  \"penthouse</w>\": 32673,\n  \"penultimate</w>\": 36553,\n  \"peop\": 1030,\n  \"people\": 10573,\n  \"people</w>\": 1047,\n  \"peoples\": 28241,\n  \"peoples</w>\": 14627,\n  \"peopleschoice</w>\": 32418,\n  \"peoplesvote</w>\": 45830,\n  \"peoria</w>\": 36985,\n  \"pep\": 12761,\n  \"pep</w>\": 14898,\n  \"pepe</w>\": 24778,\n  \"pepp\": 34425,\n  \"pepper\": 14861,\n  \"pepper</w>\": 8253,\n  \"peppermint</w>\": 30321,\n  \"pepperoni</w>\": 47307,\n  \"peppers</w>\": 14650,\n  \"pepsi</w>\": 21307,\n  \"per\": 703,\n  \"per</w>\": 1284,\n  \"pera</w>\": 26294,\n  \"perce\": 24135,\n  \"perceived</w>\": 38436,\n  \"percent\": 16328,\n  \"percent</w>\": 9017,\n  \"percentage</w>\": 19477,\n  \"percep\": 28017,\n  \"perception</w>\": 20591,\n  \"perceptions</w>\": 38138,\n  \"perch</w>\": 34281,\n  \"perched</w>\": 40071,\n  \"percu\": 41722,\n  \"percussion</w>\": 23980,\n  \"percy</w>\": 23940,\n  \"pere\": 8665,\n  \"pere</w>\": 36300,\n  \"pered</w>\": 24509,\n  \"peregr\": 37479,\n  \"peregrine</w>\": 44546,\n  \"pereira</w>\": 43927,\n  \"peren\": 24564,\n  \"perenni\": 26996,\n  \"perennial</w>\": 34038,\n  \"perez</w>\": 15107,\n  \"perf</w>\": 22816,\n  \"perfe\": 1624,\n  \"perfec\": 6599,\n  \"perfect\": 17261,\n  \"perfect</w>\": 1878,\n  \"perfection</w>\": 9646,\n  \"perfectly</w>\": 8037,\n  \"perfecto</w>\": 42898,\n  \"perfor\": 2311,\n  \"perform\": 3866,\n  \"perform</w>\": 5940,\n  \"performan\": 8973,\n  \"performance</w>\": 2714,\n  \"performances</w>\": 9553,\n  \"performed</w>\": 9997,\n  \"performer</w>\": 17061,\n  \"performers</w>\": 18476,\n  \"performing</w>\": 5170,\n  \"performs</w>\": 13839,\n  \"perfu\": 14214,\n  \"perfume</w>\": 17525,\n  \"perhaps</w>\": 9297,\n  \"peri\": 12618,\n  \"peri</w>\": 44068,\n  \"perience</w>\": 19302,\n  \"peril\": 40119,\n  \"peril</w>\": 48301,\n  \"perimeter</w>\": 38499,\n  \"pering</w>\": 29746,\n  \"perio\": 5101,\n  \"period</w>\": 6131,\n  \"periodic</w>\": 36476,\n  \"periods</w>\": 24401,\n  \"periph\": 35308,\n  \"peripheral</w>\": 43901,\n  \"peris\": 19461,\n  \"periscope</w>\": 21668,\n  \"perk</w>\": 33424,\n  \"perkins</w>\": 20057,\n  \"perks</w>\": 17660,\n  \"perl\": 44018,\n  \"perm</w>\": 47847,\n  \"perman\": 9018,\n  \"permanent</w>\": 11144,\n  \"permanently</w>\": 25584,\n  \"perme\": 42456,\n  \"permission</w>\": 15822,\n  \"permit</w>\": 21950,\n  \"permits</w>\": 33267,\n  \"permitted</w>\": 44380,\n  \"pero</w>\": 23551,\n  \"perpe\": 15749,\n  \"perpetr\": 33376,\n  \"perpetu\": 30132,\n  \"perpetual</w>\": 32018,\n  \"perrie</w>\": 32691,\n  \"perry\": 28478,\n  \"perry</w>\": 7899,\n  \"pers\": 3688,\n  \"pers</w>\": 10710,\n  \"perse\": 27498,\n  \"persecu\": 22878,\n  \"persecution</w>\": 32009,\n  \"perseverance</w>\": 29820,\n  \"persi\": 11509,\n  \"persian</w>\": 19859,\n  \"persist\": 19412,\n  \"persist</w>\": 40938,\n  \"persistence</w>\": 34588,\n  \"persistent</w>\": 29028,\n  \"person\": 3510,\n  \"person</w>\": 2533,\n  \"persona</w>\": 18401,\n  \"personal\": 10114,\n  \"personal</w>\": 4121,\n  \"personalised</w>\": 24186,\n  \"personalities</w>\": 27888,\n  \"personality</w>\": 10386,\n  \"personalized</w>\": 17845,\n  \"personally</w>\": 13885,\n  \"personnel</w>\": 14546,\n  \"persons</w>\": 14592,\n  \"perspec\": 17997,\n  \"perspective</w>\": 8996,\n  \"perspectives</w>\": 18777,\n  \"persu\": 20972,\n  \"pert\": 36970,\n  \"pert</w>\": 16306,\n  \"perth\": 19067,\n  \"perth</w>\": 11011,\n  \"peru\": 20612,\n  \"peru</w>\": 12964,\n  \"peruvian</w>\": 30822,\n  \"pes\": 38368,\n  \"pes</w>\": 2598,\n  \"pesa</w>\": 47409,\n  \"pesc\": 44044,\n  \"pesh\": 33184,\n  \"peshaw\": 28524,\n  \"peshawar</w>\": 29230,\n  \"pesky</w>\": 42512,\n  \"pesos</w>\": 47872,\n  \"pessi\": 43902,\n  \"pest\": 20130,\n  \"pest</w>\": 9425,\n  \"pesticide</w>\": 48481,\n  \"pesticides</w>\": 37868,\n  \"pesto</w>\": 26186,\n  \"pests</w>\": 41919,\n  \"pet\": 2167,\n  \"pet</w>\": 3703,\n  \"peta</w>\": 28785,\n  \"petal\": 38430,\n  \"petal</w>\": 40469,\n  \"petals</w>\": 26064,\n  \"petday</w>\": 45314,\n  \"pete\": 14479,\n  \"pete</w>\": 8571,\n  \"peter\": 5093,\n  \"peter</w>\": 3696,\n  \"peterborough</w>\": 26012,\n  \"peters</w>\": 16336,\n  \"petersburg</w>\": 21052,\n  \"petersen</w>\": 39794,\n  \"peterson</w>\": 16877,\n  \"peth</w>\": 48920,\n  \"petit\": 36437,\n  \"petit</w>\": 21276,\n  \"petite</w>\": 27213,\n  \"petition</w>\": 10975,\n  \"petitions</w>\": 43536,\n  \"petr\": 29808,\n  \"petra</w>\": 31300,\n  \"petre\": 47179,\n  \"petri\": 31831,\n  \"petro\": 8716,\n  \"petrol</w>\": 18149,\n  \"petroleum</w>\": 22063,\n  \"petron\": 42875,\n  \"pets</w>\": 7663,\n  \"pett\": 27051,\n  \"petti\": 48001,\n  \"petting</w>\": 44334,\n  \"petty</w>\": 17324,\n  \"peu\": 21411,\n  \"peuge\": 22893,\n  \"peugeot</w>\": 24129,\n  \"pew\": 21608,\n  \"pew</w>\": 30783,\n  \"pewdie\": 41882,\n  \"pewdiepie</w>\": 42563,\n  \"pex</w>\": 43765,\n  \"pey\": 14966,\n  \"pey</w>\": 30933,\n  \"peyton\": 49254,\n  \"peyton</w>\": 20307,\n  \"pez\": 45798,\n  \"pez</w>\": 10482,\n  \"pf\": 16680,\n  \"pf</w>\": 12572,\n  \"pfa</w>\": 47839,\n  \"pfc</w>\": 35007,\n  \"pff</w>\": 44121,\n  \"pfi\": 29810,\n  \"pfw</w>\": 31229,\n  \"pg\": 12476,\n  \"pg</w>\": 5211,\n  \"pga</w>\": 13351,\n  \"pgat\": 36514,\n  \"pgatour</w>\": 40094,\n  \"pgh\": 44862,\n  \"pgh</w>\": 30031,\n  \"pgs</w>\": 49204,\n  \"ph\": 745,\n  \"ph</w>\": 2042,\n  \"pha\": 4443,\n  \"pha</w>\": 26255,\n  \"phal\": 19962,\n  \"phan\": 8731,\n  \"phan</w>\": 40126,\n  \"phant\": 36998,\n  \"phantom\": 37688,\n  \"phantom</w>\": 14490,\n  \"phar\": 5570,\n  \"phara\": 35792,\n  \"pharaoh</w>\": 40437,\n  \"pharm</w>\": 45761,\n  \"pharma</w>\": 17831,\n  \"pharmac\": 8193,\n  \"pharmaceu\": 19490,\n  \"pharmaceutical</w>\": 25217,\n  \"pharmaceuticals</w>\": 44623,\n  \"pharmacist</w>\": 41024,\n  \"pharmacists</w>\": 44337,\n  \"pharmacy</w>\": 15293,\n  \"pharo\": 42308,\n  \"pharoah</w>\": 49287,\n  \"pharrell</w>\": 31316,\n  \"phase</w>\": 8304,\n  \"phases</w>\": 35337,\n  \"phat</w>\": 42492,\n  \"phc</w>\": 41102,\n  \"phd\": 20875,\n  \"phd</w>\": 8472,\n  \"phdchat</w>\": 39564,\n  \"phdlife</w>\": 39638,\n  \"phe\": 4787,\n  \"phe</w>\": 19853,\n  \"pheasant</w>\": 41983,\n  \"phee</w>\": 41292,\n  \"phel\": 23711,\n  \"phelps</w>\": 27128,\n  \"phen\": 7718,\n  \"pheno\": 47336,\n  \"phenom\": 31673,\n  \"phenom</w>\": 39618,\n  \"phenomen\": 11304,\n  \"phenomena</w>\": 41538,\n  \"phenomenal</w>\": 15035,\n  \"phenomenon</w>\": 24464,\n  \"pher\": 9194,\n  \"pher</w>\": 19828,\n  \"phers</w>\": 29531,\n  \"pherson</w>\": 36421,\n  \"phew</w>\": 10295,\n  \"phi\": 2239,\n  \"phi</w>\": 12220,\n  \"phia</w>\": 9228,\n  \"phic</w>\": 3977,\n  \"phie</w>\": 30237,\n  \"phies</w>\": 17062,\n  \"phil\": 2821,\n  \"phil</w>\": 6199,\n  \"phila</w>\": 47443,\n  \"philadel\": 9428,\n  \"philadelphia</w>\": 9749,\n  \"philanthro\": 16587,\n  \"philanthropist</w>\": 44153,\n  \"philanthropy</w>\": 25047,\n  \"philately</w>\": 33695,\n  \"phile</w>\": 36543,\n  \"philharmon\": 25228,\n  \"philharmonic</w>\": 31699,\n  \"phili\": 4277,\n  \"philia</w>\": 46654,\n  \"philip\": 20748,\n  \"philip</w>\": 11074,\n  \"philipp\": 5623,\n  \"philipp</w>\": 47591,\n  \"philippe</w>\": 20942,\n  \"philippine</w>\": 17629,\n  \"philippines</w>\": 8149,\n  \"philips</w>\": 25175,\n  \"phill\": 42346,\n  \"phill</w>\": 48272,\n  \"philli\": 6456,\n  \"phillies</w>\": 18748,\n  \"phillip\": 48832,\n  \"phillip</w>\": 19323,\n  \"phillips</w>\": 11041,\n  \"philly\": 19545,\n  \"philly</w>\": 7785,\n  \"philos\": 8395,\n  \"philosop\": 20349,\n  \"philosoph\": 10187,\n  \"philosopher</w>\": 25220,\n  \"philosophical</w>\": 32628,\n  \"philosophy</w>\": 12213,\n  \"phils</w>\": 38573,\n  \"phin</w>\": 33816,\n  \"phine</w>\": 40985,\n  \"phins</w>\": 40210,\n  \"phish</w>\": 36897,\n  \"phishing</w>\": 36546,\n  \"phl</w>\": 25603,\n  \"pho\": 816,\n  \"pho</w>\": 22707,\n  \"phobia</w>\": 28749,\n  \"phoe\": 22673,\n  \"phoebe</w>\": 27582,\n  \"phoeni\": 6778,\n  \"phoenix\": 20615,\n  \"phoenix</w>\": 7793,\n  \"phol</w>\": 48140,\n  \"phon\": 19602,\n  \"phon</w>\": 31115,\n  \"phone\": 15486,\n  \"phone</w>\": 1951,\n  \"phones</w>\": 6351,\n  \"phony</w>\": 31925,\n  \"phora</w>\": 31363,\n  \"phosp\": 22638,\n  \"photo\": 1153,\n  \"photo</w>\": 1125,\n  \"photobomb</w>\": 37075,\n  \"photobook</w>\": 41894,\n  \"photog</w>\": 28115,\n  \"photogenic</w>\": 36108,\n  \"photogra\": 36754,\n  \"photograph\": 1688,\n  \"photograph</w>\": 8853,\n  \"photographed</w>\": 11573,\n  \"photographer</w>\": 5748,\n  \"photographers</w>\": 17141,\n  \"photographic</w>\": 22053,\n  \"photographing</w>\": 30074,\n  \"photographs</w>\": 15759,\n  \"photography\": 33183,\n  \"photography</w>\": 2108,\n  \"photom\": 32223,\n  \"photoo\": 11106,\n  \"photooftheday</w>\": 11933,\n  \"photos</w>\": 2479,\n  \"photoshoot</w>\": 11121,\n  \"photoshop</w>\": 12419,\n  \"photoshopped</w>\": 35738,\n  \"phouse</w>\": 27848,\n  \"php</w>\": 17370,\n  \"phra\": 12777,\n  \"phrase</w>\": 18809,\n  \"phrases</w>\": 35264,\n  \"phs</w>\": 16495,\n  \"phu\": 21274,\n  \"phuket</w>\": 34028,\n  \"phx\": 35466,\n  \"phx</w>\": 29507,\n  \"phy\": 6484,\n  \"phy</w>\": 4292,\n  \"phyl\": 35600,\n  \"phyllis</w>\": 37844,\n  \"phys\": 3734,\n  \"phys</w>\": 37894,\n  \"physi\": 13782,\n  \"physic\": 46641,\n  \"physical\": 44127,\n  \"physical</w>\": 6671,\n  \"physically</w>\": 18105,\n  \"physician</w>\": 21055,\n  \"physicians</w>\": 26702,\n  \"physicist</w>\": 29052,\n  \"physics</w>\": 9369,\n  \"physio\": 29574,\n  \"physio</w>\": 29177,\n  \"physiology</w>\": 32349,\n  \"physique</w>\": 42884,\n  \"phyto\": 42197,\n  \"pi\": 741,\n  \"pi</w>\": 5357,\n  \"pia</w>\": 8918,\n  \"pian</w>\": 24637,\n  \"pianist</w>\": 21048,\n  \"piano\": 49278,\n  \"piano</w>\": 7894,\n  \"pianos</w>\": 47904,\n  \"piazza</w>\": 28496,\n  \"pic\": 901,\n  \"pic</w>\": 1282,\n  \"pical</w>\": 5482,\n  \"picard</w>\": 48507,\n  \"picasso</w>\": 21481,\n  \"piccad\": 33876,\n  \"piccadilly</w>\": 37287,\n  \"piccollage</w>\": 43621,\n  \"pick\": 6379,\n  \"pick</w>\": 3142,\n  \"picked</w>\": 6018,\n  \"picker</w>\": 43105,\n  \"pickering</w>\": 47605,\n  \"picket</w>\": 33559,\n  \"picking</w>\": 9545,\n  \"pickle</w>\": 24570,\n  \"pickled</w>\": 21705,\n  \"pickles</w>\": 25001,\n  \"picks</w>\": 8551,\n  \"pickup</w>\": 15382,\n  \"pickups</w>\": 33383,\n  \"picnic</w>\": 12007,\n  \"pico</w>\": 23363,\n  \"picoftheday</w>\": 18319,\n  \"pics</w>\": 2559,\n  \"pict</w>\": 18778,\n  \"pictorial</w>\": 40640,\n  \"picture\": 11663,\n  \"picture</w>\": 1674,\n  \"pictured</w>\": 7647,\n  \"pictures</w>\": 3646,\n  \"picturesque</w>\": 24894,\n  \"pid</w>\": 5225,\n  \"piday</w>\": 48056,\n  \"pie\": 12065,\n  \"pie</w>\": 5319,\n  \"piece\": 39632,\n  \"piece</w>\": 2754,\n  \"pieces</w>\": 6194,\n  \"pied\": 24686,\n  \"pied</w>\": 12713,\n  \"piedmont</w>\": 39691,\n  \"pier\": 5641,\n  \"pier</w>\": 11348,\n  \"pierc\": 49216,\n  \"pierce\": 48462,\n  \"pierce</w>\": 16782,\n  \"pierced</w>\": 32799,\n  \"piercing</w>\": 22557,\n  \"piero</w>\": 43125,\n  \"pierre\": 34670,\n  \"pierre</w>\": 11985,\n  \"piers</w>\": 29030,\n  \"pies</w>\": 6898,\n  \"pieter</w>\": 44801,\n  \"pietro</w>\": 42169,\n  \"piff</w>\": 40719,\n  \"pig\": 12009,\n  \"pig</w>\": 9619,\n  \"pigeon</w>\": 18008,\n  \"pigeons</w>\": 32910,\n  \"piggy</w>\": 28245,\n  \"pigment</w>\": 40284,\n  \"pigs</w>\": 16228,\n  \"pik</w>\": 48539,\n  \"pika</w>\": 47372,\n  \"pikach\": 27268,\n  \"pikachu</w>\": 28107,\n  \"pike\": 33457,\n  \"pike</w>\": 14011,\n  \"pil\": 2893,\n  \"pil</w>\": 20645,\n  \"pilates</w>\": 29518,\n  \"pile\": 44403,\n  \"pile</w>\": 13930,\n  \"piled</w>\": 26873,\n  \"piles</w>\": 31968,\n  \"pilgri\": 13966,\n  \"pilgrim</w>\": 32662,\n  \"pilgrimage</w>\": 24335,\n  \"pilgrims</w>\": 31370,\n  \"piling</w>\": 43050,\n  \"pilip\": 27234,\n  \"pilipinas</w>\": 32392,\n  \"pill\": 14830,\n  \"pill</w>\": 19226,\n  \"pillar</w>\": 17322,\n  \"pillars</w>\": 22054,\n  \"pillow\": 42237,\n  \"pillow</w>\": 12182,\n  \"pillows</w>\": 26499,\n  \"pills</w>\": 23964,\n  \"pilo\": 37526,\n  \"pilot\": 31619,\n  \"pilot</w>\": 6687,\n  \"pilots</w>\": 15586,\n  \"pilsner</w>\": 47153,\n  \"pim\": 15285,\n  \"pim</w>\": 35472,\n  \"pimp\": 35789,\n  \"pin\": 2629,\n  \"pin</w>\": 5164,\n  \"pinball</w>\": 31679,\n  \"pinch</w>\": 26114,\n  \"pine\": 9398,\n  \"pine</w>\": 7374,\n  \"pineapple</w>\": 14831,\n  \"pines</w>\": 20338,\n  \"ping\": 23720,\n  \"ping</w>\": 2089,\n  \"pinion</w>\": 40557,\n  \"pink\": 11151,\n  \"pink</w>\": 3360,\n  \"pinkfloyd</w>\": 48520,\n  \"pinky</w>\": 29803,\n  \"pinn\": 31448,\n  \"pinnacle</w>\": 32754,\n  \"pinned</w>\": 12165,\n  \"pinning</w>\": 44515,\n  \"pino</w>\": 36633,\n  \"pinot\": 41399,\n  \"pinot</w>\": 21146,\n  \"pinoy\": 43578,\n  \"pinoy</w>\": 35258,\n  \"pins</w>\": 14619,\n  \"pinst\": 41173,\n  \"pint\": 42537,\n  \"pint</w>\": 13584,\n  \"pinterest</w>\": 15379,\n  \"pinto</w>\": 35992,\n  \"pints</w>\": 27935,\n  \"pinup</w>\": 37349,\n  \"pio</w>\": 22108,\n  \"pion\": 36728,\n  \"pion</w>\": 29190,\n  \"pione\": 7975,\n  \"pioneer\": 34892,\n  \"pioneer</w>\": 12459,\n  \"pioneering</w>\": 25933,\n  \"pioneers</w>\": 22383,\n  \"pious</w>\": 42441,\n  \"pip</w>\": 30854,\n  \"pipe\": 29333,\n  \"pipe</w>\": 10459,\n  \"pipel\": 12387,\n  \"pipeline</w>\": 14151,\n  \"pipelines</w>\": 39683,\n  \"piper\": 47052,\n  \"piper</w>\": 16293,\n  \"pipes</w>\": 16991,\n  \"piping</w>\": 40744,\n  \"pippa</w>\": 47672,\n  \"pir\": 4351,\n  \"pir</w>\": 38899,\n  \"piracy</w>\": 39452,\n  \"piran\": 49034,\n  \"pirate\": 38680,\n  \"pirate</w>\": 13592,\n  \"pirates</w>\": 10442,\n  \"pire\": 16613,\n  \"pires</w>\": 14988,\n  \"pis\": 9230,\n  \"pis</w>\": 44441,\n  \"pisa</w>\": 43632,\n  \"pisces</w>\": 45982,\n  \"piss</w>\": 20818,\n  \"pissed</w>\": 17989,\n  \"pist\": 15556,\n  \"pist</w>\": 32826,\n  \"pistachi\": 29760,\n  \"pistachio</w>\": 36320,\n  \"pistol</w>\": 20480,\n  \"piston</w>\": 48236,\n  \"pistons</w>\": 27242,\n  \"pistor\": 48162,\n  \"pit\": 2946,\n  \"pit</w>\": 7476,\n  \"pita</w>\": 27070,\n  \"pitbull</w>\": 25295,\n  \"pitch\": 8992,\n  \"pitch</w>\": 5872,\n  \"pitched</w>\": 28447,\n  \"pitcher</w>\": 13445,\n  \"pitchers</w>\": 27835,\n  \"pitches</w>\": 21005,\n  \"pitching</w>\": 16455,\n  \"piti\": 47568,\n  \"pits</w>\": 24144,\n  \"pitt\": 7607,\n  \"pitt</w>\": 15599,\n  \"pitts\": 9531,\n  \"pittsburgh</w>\": 10453,\n  \"pity</w>\": 24380,\n  \"pius</w>\": 39988,\n  \"pivo\": 18009,\n  \"pivot</w>\": 31805,\n  \"pivotal</w>\": 31432,\n  \"pix\": 6185,\n  \"pix</w>\": 13088,\n  \"pixar</w>\": 27493,\n  \"pixel\": 14384,\n  \"pixel</w>\": 13241,\n  \"pixelart</w>\": 18516,\n  \"pixels</w>\": 34099,\n  \"pixie</w>\": 35573,\n  \"piyu\": 30772,\n  \"piyush\": 36191,\n  \"piyushgoyal</w>\": 45318,\n  \"pizz\": 3897,\n  \"pizza</w>\": 4474,\n  \"pizzas</w>\": 30647,\n  \"pizzeria</w>\": 44174,\n  \"pj\": 12524,\n  \"pj</w>\": 17179,\n  \"pjnet</w>\": 22011,\n  \"pjs</w>\": 36009,\n  \"pk\": 10149,\n  \"pk</w>\": 10991,\n  \"pkg</w>\": 49011,\n  \"pkk</w>\": 47480,\n  \"pknot</w>\": 41779,\n  \"pkwy</w>\": 36827,\n  \"pl\": 712,\n  \"pl</w>\": 5678,\n  \"pla\": 841,\n  \"pla</w>\": 19945,\n  \"plac\": 2331,\n  \"place\": 14884,\n  \"place</w>\": 1445,\n  \"placed</w>\": 9729,\n  \"placement</w>\": 16724,\n  \"placements</w>\": 43885,\n  \"placer</w>\": 49170,\n  \"places</w>\": 4448,\n  \"placing</w>\": 18531,\n  \"plague</w>\": 25360,\n  \"plaid</w>\": 23291,\n  \"plain\": 22776,\n  \"plain</w>\": 10709,\n  \"plains</w>\": 16345,\n  \"plan\": 1740,\n  \"plan</w>\": 2970,\n  \"pland</w>\": 24801,\n  \"plane\": 22728,\n  \"plane</w>\": 5363,\n  \"planes</w>\": 12581,\n  \"planet\": 16833,\n  \"planet</w>\": 5172,\n  \"planetary</w>\": 28361,\n  \"planets</w>\": 22315,\n  \"plank</w>\": 30991,\n  \"plankton</w>\": 48249,\n  \"plann\": 6409,\n  \"planned</w>\": 8169,\n  \"planner</w>\": 18083,\n  \"planners</w>\": 33664,\n  \"planning</w>\": 4446,\n  \"plano</w>\": 34063,\n  \"plans</w>\": 4181,\n  \"plant\": 8521,\n  \"plant</w>\": 3912,\n  \"plantation</w>\": 20014,\n  \"plantbased</w>\": 33720,\n  \"planted</w>\": 14286,\n  \"planter</w>\": 34453,\n  \"planters</w>\": 43661,\n  \"planting</w>\": 13922,\n  \"plants</w>\": 5829,\n  \"plaque</w>\": 16097,\n  \"plaques</w>\": 45610,\n  \"plar</w>\": 26754,\n  \"plas\": 45673,\n  \"plasma</w>\": 24999,\n  \"plaster</w>\": 31980,\n  \"plastic\": 15645,\n  \"plastic</w>\": 6102,\n  \"plasticpollution</w>\": 47129,\n  \"plastics</w>\": 20999,\n  \"plasticsurgery</w>\": 48555,\n  \"plat\": 3172,\n  \"plata</w>\": 46456,\n  \"plate\": 28744,\n  \"plate</w>\": 5135,\n  \"plateau</w>\": 29301,\n  \"plated</w>\": 21161,\n  \"plates</w>\": 11485,\n  \"platform</w>\": 5549,\n  \"platforms</w>\": 13551,\n  \"platin\": 10267,\n  \"plating</w>\": 44564,\n  \"platinum</w>\": 10979,\n  \"plato</w>\": 41101,\n  \"platoon</w>\": 41254,\n  \"platt\": 44459,\n  \"platt</w>\": 40097,\n  \"platte</w>\": 46785,\n  \"platter</w>\": 29071,\n  \"platz</w>\": 40878,\n  \"plau\": 39139,\n  \"play\": 1222,\n  \"play</w>\": 1453,\n  \"playa</w>\": 23756,\n  \"playable</w>\": 33885,\n  \"playback</w>\": 39194,\n  \"playbook</w>\": 34856,\n  \"playboy</w>\": 24383,\n  \"played</w>\": 3432,\n  \"player\": 24503,\n  \"player</w>\": 2477,\n  \"players</w>\": 3030,\n  \"playful</w>\": 23871,\n  \"playground</w>\": 15861,\n  \"playhouse</w>\": 23254,\n  \"playin</w>\": 24674,\n  \"playing\": 47368,\n  \"playing</w>\": 1629,\n  \"playlist</w>\": 9180,\n  \"playlists</w>\": 47183,\n  \"playo\": 5804,\n  \"playoff</w>\": 9655,\n  \"playoffs</w>\": 9548,\n  \"plays</w>\": 5134,\n  \"playstation</w>\": 11332,\n  \"playtime</w>\": 43037,\n  \"playwright</w>\": 32070,\n  \"plaza</w>\": 8943,\n  \"plc</w>\": 16827,\n  \"ple\": 926,\n  \"ple</w>\": 1619,\n  \"plea</w>\": 21956,\n  \"plead</w>\": 47539,\n  \"pleads</w>\": 31425,\n  \"plear\": 21362,\n  \"pleas\": 8481,\n  \"pleas</w>\": 48740,\n  \"pleasant</w>\": 12271,\n  \"please\": 41074,\n  \"please</w>\": 1474,\n  \"pleased</w>\": 6107,\n  \"pleasing</w>\": 32893,\n  \"pleasure</w>\": 5854,\n  \"pleasures</w>\": 29513,\n  \"pledge</w>\": 11507,\n  \"pledged</w>\": 36799,\n  \"pledges</w>\": 26746,\n  \"pledis</w>\": 41202,\n  \"plein</w>\": 43429,\n  \"plenary</w>\": 19891,\n  \"plenty</w>\": 7524,\n  \"pler</w>\": 17677,\n  \"ples</w>\": 6248,\n  \"pless\": 39821,\n  \"pless</w>\": 17059,\n  \"plets</w>\": 43230,\n  \"plex\": 23765,\n  \"plex</w>\": 15241,\n  \"pley</w>\": 19543,\n  \"pli\": 30001,\n  \"pli</w>\": 45797,\n  \"plic\": 5806,\n  \"plicity</w>\": 19823,\n  \"plight</w>\": 40317,\n  \"plin\": 44531,\n  \"plin</w>\": 32335,\n  \"pline</w>\": 25376,\n  \"pling</w>\": 12899,\n  \"plings</w>\": 31184,\n  \"pll\": 47629,\n  \"pll</w>\": 25266,\n  \"pln</w>\": 48755,\n  \"plo\": 1778,\n  \"plo</w>\": 43523,\n  \"plor\": 34695,\n  \"plot</w>\": 9918,\n  \"plots</w>\": 25672,\n  \"plotting</w>\": 30751,\n  \"plough\": 33811,\n  \"plow</w>\": 38363,\n  \"pls</w>\": 5572,\n  \"plu\": 2052,\n  \"plug</w>\": 12628,\n  \"plugged</w>\": 23261,\n  \"plugin</w>\": 31278,\n  \"plugins</w>\": 48797,\n  \"plugs</w>\": 28083,\n  \"plum\": 26267,\n  \"plum</w>\": 16202,\n  \"plumb\": 21769,\n  \"plumber</w>\": 43478,\n  \"plumbing</w>\": 24647,\n  \"plume</w>\": 39495,\n  \"plun\": 15122,\n  \"plunge</w>\": 26506,\n  \"plur\": 44664,\n  \"plus</w>\": 3097,\n  \"plush</w>\": 18926,\n  \"pluto</w>\": 26380,\n  \"ply\": 17249,\n  \"ply</w>\": 28705,\n  \"plying</w>\": 36071,\n  \"plym\": 11907,\n  \"plymouth</w>\": 13786,\n  \"plz</w>\": 10538,\n  \"pm\": 13699,\n  \"pm</w>\": 990,\n  \"pmi</w>\": 41206,\n  \"pmln</w>\": 23208,\n  \"pmo\": 18782,\n  \"pmoindia</w>\": 20374,\n  \"pms</w>\": 44223,\n  \"pn\": 14431,\n  \"pn</w>\": 13774,\n  \"pnc</w>\": 37148,\n  \"pne\": 30966,\n  \"pneu\": 28714,\n  \"pneumonia</w>\": 42906,\n  \"png</w>\": 20992,\n  \"pnp</w>\": 25972,\n  \"pnpp\": 42175,\n  \"pnw</w>\": 31521,\n  \"po\": 628,\n  \"po</w>\": 3057,\n  \"poa</w>\": 43912,\n  \"poached</w>\": 27665,\n  \"poaching</w>\": 35140,\n  \"poc\": 13232,\n  \"poc</w>\": 27780,\n  \"pocaly\": 37987,\n  \"pocalypse</w>\": 42307,\n  \"poche\": 38336,\n  \"poche</w>\": 39022,\n  \"pocket\": 29147,\n  \"pocket</w>\": 8504,\n  \"pockets</w>\": 19566,\n  \"pocon\": 41850,\n  \"pod\": 3583,\n  \"pod</w>\": 7446,\n  \"podcast\": 39654,\n  \"podcast</w>\": 4294,\n  \"podcasting</w>\": 40106,\n  \"podcasts</w>\": 19392,\n  \"pode\": 33368,\n  \"poder\": 24960,\n  \"podernfamily</w>\": 26620,\n  \"podi\": 32853,\n  \"podium</w>\": 14093,\n  \"pods</w>\": 18776,\n  \"poe\": 4746,\n  \"poe</w>\": 19254,\n  \"poem</w>\": 9436,\n  \"poems</w>\": 15577,\n  \"poet\": 41019,\n  \"poet</w>\": 9872,\n  \"poetic</w>\": 26365,\n  \"poetry\": 20192,\n  \"poetry</w>\": 6038,\n  \"poetryday</w>\": 39255,\n  \"poets</w>\": 19804,\n  \"pof\": 40850,\n  \"poff</w>\": 28236,\n  \"pogba</w>\": 25998,\n  \"poign\": 29682,\n  \"poignant</w>\": 32138,\n  \"poin\": 9074,\n  \"point\": 13280,\n  \"point</w>\": 2301,\n  \"pointe</w>\": 24631,\n  \"pointed</w>\": 20703,\n  \"pointer</w>\": 29883,\n  \"pointers</w>\": 36760,\n  \"pointing</w>\": 19233,\n  \"pointless</w>\": 33586,\n  \"points</w>\": 3396,\n  \"pois\": 17008,\n  \"poise</w>\": 45087,\n  \"poised</w>\": 27354,\n  \"poison\": 30722,\n  \"poison</w>\": 17074,\n  \"poisoned</w>\": 43624,\n  \"poisoning</w>\": 25750,\n  \"poisonous</w>\": 37131,\n  \"pok\": 15387,\n  \"poke\": 6892,\n  \"poke</w>\": 23186,\n  \"pokemon\": 16239,\n  \"pokemon</w>\": 9528,\n  \"pokemongo</w>\": 23985,\n  \"poker\": 30735,\n  \"poker</w>\": 11865,\n  \"pokes</w>\": 40221,\n  \"poking</w>\": 49169,\n  \"pokÃ©\": 20656,\n  \"pokÃ©mon</w>\": 22066,\n  \"pol\": 977,\n  \"pol</w>\": 7649,\n  \"pola</w>\": 43876,\n  \"poland</w>\": 9834,\n  \"polar\": 21432,\n  \"polar</w>\": 12214,\n  \"polari\": 27919,\n  \"polaris</w>\": 37965,\n  \"polarized</w>\": 48437,\n  \"polaro\": 25237,\n  \"polaroid</w>\": 30427,\n  \"poldark</w>\": 41322,\n  \"pole\": 26682,\n  \"pole</w>\": 8170,\n  \"poles</w>\": 22585,\n  \"poli\": 9675,\n  \"poli</w>\": 5414,\n  \"polic\": 16126,\n  \"police\": 15535,\n  \"police</w>\": 2120,\n  \"policeman</w>\": 37713,\n  \"policemen</w>\": 47946,\n  \"polici\": 10819,\n  \"policies</w>\": 10993,\n  \"policing</w>\": 20969,\n  \"policy\": 30173,\n  \"policy</w>\": 4660,\n  \"polio</w>\": 30533,\n  \"polis</w>\": 16133,\n  \"polish\": 46941,\n  \"polish</w>\": 9632,\n  \"polished</w>\": 21478,\n  \"polishing</w>\": 43629,\n  \"polit\": 2247,\n  \"politan</w>\": 15337,\n  \"polite</w>\": 31497,\n  \"politi\": 40597,\n  \"politic\": 33333,\n  \"political\": 37744,\n  \"political</w>\": 4197,\n  \"politically</w>\": 24323,\n  \"politician</w>\": 15960,\n  \"politicians</w>\": 12914,\n  \"politico</w>\": 39403,\n  \"politics</w>\": 4929,\n  \"polk</w>\": 33317,\n  \"polka</w>\": 29476,\n  \"poll</w>\": 7032,\n  \"pollen</w>\": 27651,\n  \"pollin\": 19152,\n  \"pollinators</w>\": 36599,\n  \"polling</w>\": 18024,\n  \"pollo</w>\": 42755,\n  \"pollock</w>\": 37614,\n  \"polls</w>\": 11813,\n  \"pollu\": 8370,\n  \"polluted</w>\": 43346,\n  \"pollution</w>\": 10384,\n  \"polly</w>\": 31204,\n  \"polo\": 35928,\n  \"polo</w>\": 10229,\n  \"poly\": 6833,\n  \"poly</w>\": 18367,\n  \"polye\": 31730,\n  \"polyester</w>\": 38514,\n  \"polym\": 23626,\n  \"polymer</w>\": 29993,\n  \"polyne\": 38892,\n  \"polyvore</w>\": 24771,\n  \"pom\": 7548,\n  \"pom</w>\": 24280,\n  \"pome\": 27963,\n  \"pomegran\": 29326,\n  \"pomegranate</w>\": 32415,\n  \"pomer\": 35156,\n  \"pomona</w>\": 41690,\n  \"pompe\": 18352,\n  \"pompeii</w>\": 47775,\n  \"pompeo</w>\": 34351,\n  \"pompey</w>\": 35079,\n  \"pon\": 3809,\n  \"pon</w>\": 22391,\n  \"ponce</w>\": 43637,\n  \"pond</w>\": 10750,\n  \"ponder</w>\": 36863,\n  \"pondering</w>\": 47395,\n  \"ponds</w>\": 31033,\n  \"pone</w>\": 32183,\n  \"pong\": 40546,\n  \"pong</w>\": 17710,\n  \"ponies</w>\": 34157,\n  \"pons</w>\": 41255,\n  \"pont\": 47563,\n  \"pont</w>\": 22997,\n  \"ponte</w>\": 40892,\n  \"ponti\": 15527,\n  \"pontiac</w>\": 25373,\n  \"pontifex</w>\": 33566,\n  \"ponty\": 45152,\n  \"pony\": 24438,\n  \"pony</w>\": 12678,\n  \"ponytail</w>\": 43265,\n  \"poo\": 6601,\n  \"poo</w>\": 14389,\n  \"pooch</w>\": 37037,\n  \"poodle</w>\": 34961,\n  \"pooh</w>\": 27103,\n  \"pooja</w>\": 35676,\n  \"pool\": 12484,\n  \"pool</w>\": 2831,\n  \"poole</w>\": 26290,\n  \"pools</w>\": 18736,\n  \"poolside</w>\": 35509,\n  \"poon\": 33799,\n  \"poon</w>\": 36178,\n  \"poop</w>\": 23310,\n  \"poor\": 14528,\n  \"poor</w>\": 3665,\n  \"poorest</w>\": 40771,\n  \"poorly</w>\": 21101,\n  \"pop\": 6530,\n  \"pop</w>\": 2852,\n  \"popart</w>\": 47425,\n  \"popcorn</w>\": 15034,\n  \"pope\": 16994,\n  \"pope</w>\": 9283,\n  \"popefrancis</w>\": 37254,\n  \"poplar</w>\": 38726,\n  \"popo\": 38835,\n  \"popo</w>\": 35572,\n  \"popp\": 13156,\n  \"popped</w>\": 14934,\n  \"poppies</w>\": 30385,\n  \"poppin</w>\": 28536,\n  \"popping</w>\": 18152,\n  \"poppins</w>\": 41216,\n  \"poppy\": 32194,\n  \"poppy</w>\": 15447,\n  \"pops</w>\": 11705,\n  \"popsic\": 38481,\n  \"popu\": 3785,\n  \"popul\": 6593,\n  \"popular\": 15854,\n  \"popular</w>\": 4368,\n  \"popularity</w>\": 19235,\n  \"populated</w>\": 38420,\n  \"population</w>\": 8423,\n  \"populations</w>\": 23797,\n  \"populism</w>\": 48998,\n  \"populist</w>\": 49376,\n  \"popup</w>\": 33053,\n  \"por\": 817,\n  \"por</w>\": 7697,\n  \"pora</w>\": 23537,\n  \"porcel\": 19409,\n  \"porcelain</w>\": 20451,\n  \"porch</w>\": 17154,\n  \"pore</w>\": 28267,\n  \"pork\": 40379,\n  \"pork</w>\": 7897,\n  \"poro\": 48110,\n  \"porridge</w>\": 34924,\n  \"porsch\": 48009,\n  \"porsche\": 44049,\n  \"porsche</w>\": 8783,\n  \"port\": 1641,\n  \"port</w>\": 1418,\n  \"porta</w>\": 45037,\n  \"portable</w>\": 11949,\n  \"portage</w>\": 32087,\n  \"portal</w>\": 14982,\n  \"porte</w>\": 28654,\n  \"ported</w>\": 16879,\n  \"porter\": 28319,\n  \"porter</w>\": 10318,\n  \"porters</w>\": 15670,\n  \"portfoli\": 45766,\n  \"portfolio</w>\": 11938,\n  \"porth\": 37425,\n  \"porti\": 45760,\n  \"porting</w>\": 26052,\n  \"portion</w>\": 13739,\n  \"portions</w>\": 22914,\n  \"portland\": 38366,\n  \"portland</w>\": 8880,\n  \"portman</w>\": 34755,\n  \"porto\": 24853,\n  \"porto</w>\": 18947,\n  \"portobello</w>\": 48025,\n  \"portra\": 4175,\n  \"portrait\": 39312,\n  \"portrait</w>\": 5352,\n  \"portraits</w>\": 14203,\n  \"portray</w>\": 46282,\n  \"portrayal</w>\": 39238,\n  \"portrayed</w>\": 36093,\n  \"ports</w>\": 7734,\n  \"portsm\": 17063,\n  \"portsmouth</w>\": 19074,\n  \"portu\": 7159,\n  \"portugal</w>\": 9503,\n  \"portugue\": 17498,\n  \"portuguese</w>\": 18019,\n  \"pos\": 1780,\n  \"pos</w>\": 11839,\n  \"pose\": 25478,\n  \"pose</w>\": 4230,\n  \"posed</w>\": 5206,\n  \"posei\": 47270,\n  \"poser</w>\": 46899,\n  \"poses</w>\": 9773,\n  \"posey</w>\": 34852,\n  \"posh</w>\": 26748,\n  \"posing</w>\": 10518,\n  \"posit\": 28793,\n  \"positi\": 7895,\n  \"position</w>\": 4657,\n  \"positioned</w>\": 34482,\n  \"positioning</w>\": 30657,\n  \"positions</w>\": 12188,\n  \"positive\": 21811,\n  \"positive</w>\": 4844,\n  \"positively</w>\": 24688,\n  \"positivity</w>\": 19966,\n  \"poss</w>\": 39745,\n  \"posse\": 17414,\n  \"posse</w>\": 28413,\n  \"possess</w>\": 36810,\n  \"possessed</w>\": 36220,\n  \"possession</w>\": 16154,\n  \"possessions</w>\": 40588,\n  \"possi\": 2521,\n  \"possibilities</w>\": 17932,\n  \"possibility</w>\": 18517,\n  \"possible</w>\": 3134,\n  \"possibly</w>\": 8601,\n  \"possum</w>\": 38575,\n  \"post\": 3489,\n  \"post</w>\": 1549,\n  \"postage</w>\": 27570,\n  \"postal</w>\": 21687,\n  \"postcard</w>\": 14785,\n  \"postcards</w>\": 23922,\n  \"postdoc</w>\": 41013,\n  \"posted</w>\": 4752,\n  \"poster\": 22881,\n  \"poster</w>\": 3574,\n  \"posters</w>\": 9673,\n  \"postgame</w>\": 34873,\n  \"postgraduate</w>\": 31997,\n  \"posthum\": 42410,\n  \"posting</w>\": 7559,\n  \"postman</w>\": 38285,\n  \"postpon\": 23247,\n  \"postponed</w>\": 25097,\n  \"posts</w>\": 7824,\n  \"postseason</w>\": 24521,\n  \"posture</w>\": 29681,\n  \"posure</w>\": 35539,\n  \"pot\": 3547,\n  \"pot</w>\": 5168,\n  \"potam\": 45825,\n  \"potassi\": 36889,\n  \"potassium</w>\": 37147,\n  \"potat\": 5975,\n  \"potato</w>\": 8527,\n  \"potatoes</w>\": 11567,\n  \"potd</w>\": 28765,\n  \"pote</w>\": 41869,\n  \"poten\": 4454,\n  \"potent</w>\": 26082,\n  \"potenti\": 44104,\n  \"potential</w>\": 5100,\n  \"potentially</w>\": 16508,\n  \"potholes</w>\": 47506,\n  \"potion</w>\": 46055,\n  \"potom\": 38848,\n  \"potomac</w>\": 43372,\n  \"pots</w>\": 19234,\n  \"pott\": 28698,\n  \"potted</w>\": 48581,\n  \"potter\": 24975,\n  \"potter</w>\": 9026,\n  \"pottery</w>\": 18396,\n  \"potts</w>\": 39839,\n  \"potty</w>\": 43569,\n  \"potus</w>\": 8740,\n  \"pou\": 9423,\n  \"pouch</w>\": 26811,\n  \"poul\": 22485,\n  \"poultry</w>\": 31005,\n  \"poun\": 33719,\n  \"pound\": 33809,\n  \"pound</w>\": 10674,\n  \"pounding</w>\": 46544,\n  \"pounds</w>\": 10752,\n  \"pour\": 33112,\n  \"pour</w>\": 8180,\n  \"poured</w>\": 26621,\n  \"pouring</w>\": 16098,\n  \"pours</w>\": 26005,\n  \"pout</w>\": 39621,\n  \"poutine</w>\": 43768,\n  \"pov</w>\": 25731,\n  \"pover\": 8432,\n  \"pover</w>\": 29464,\n  \"poverty</w>\": 9095,\n  \"pow\": 1317,\n  \"pow</w>\": 17745,\n  \"powder\": 32427,\n  \"powder</w>\": 9674,\n  \"powe\": 36955,\n  \"powell</w>\": 13305,\n  \"power\": 2789,\n  \"power</w>\": 1807,\n  \"powerball</w>\": 47803,\n  \"powered\": 45442,\n  \"powered</w>\": 7332,\n  \"powerful</w>\": 4875,\n  \"powerhouse</w>\": 22858,\n  \"powering</w>\": 16231,\n  \"powerof\": 31961,\n  \"powerpoint</w>\": 38940,\n  \"powerrangers</w>\": 40620,\n  \"powers</w>\": 9422,\n  \"pox</w>\": 43649,\n  \"poy</w>\": 34737,\n  \"poyn\": 47655,\n  \"poz\": 39953,\n  \"pp\": 604,\n  \"pp</w>\": 4186,\n  \"ppa</w>\": 10416,\n  \"ppard</w>\": 23391,\n  \"ppc</w>\": 27778,\n  \"ppe\": 24573,\n  \"ppe</w>\": 11867,\n  \"pped</w>\": 1873,\n  \"ppel</w>\": 46523,\n  \"ppen</w>\": 30663,\n  \"pper\": 6719,\n  \"pper</w>\": 2440,\n  \"ppers</w>\": 5232,\n  \"ppery</w>\": 27833,\n  \"ppet</w>\": 20744,\n  \"ppets</w>\": 25849,\n  \"ppg</w>\": 27433,\n  \"ppi</w>\": 9594,\n  \"ppie</w>\": 33795,\n  \"ppin</w>\": 8076,\n  \"pping\": 22214,\n  \"pping</w>\": 1682,\n  \"ppings</w>\": 35687,\n  \"ppl</w>\": 6758,\n  \"pple</w>\": 12302,\n  \"ppm</w>\": 42053,\n  \"ppo</w>\": 10215,\n  \"ppor\": 37613,\n  \"ppp</w>\": 14017,\n  \"pps</w>\": 10683,\n  \"ppv</w>\": 38864,\n  \"ppy\": 30360,\n  \"ppy</w>\": 3860,\n  \"pr\": 766,\n  \"pr</w>\": 4150,\n  \"pra\": 1865,\n  \"pra</w>\": 19285,\n  \"prab\": 17901,\n  \"prabhas</w>\": 29959,\n  \"prabhu</w>\": 31529,\n  \"prac\": 2243,\n  \"practi\": 29995,\n  \"practic\": 5495,\n  \"practical</w>\": 10792,\n  \"practically</w>\": 25588,\n  \"practice</w>\": 3349,\n  \"practiced</w>\": 36749,\n  \"practices</w>\": 9040,\n  \"practicing</w>\": 12750,\n  \"practise</w>\": 38938,\n  \"practising</w>\": 36478,\n  \"practiti\": 19909,\n  \"practitioner</w>\": 32591,\n  \"practitioners</w>\": 29045,\n  \"prada</w>\": 29456,\n  \"pradesh</w>\": 15384,\n  \"prado</w>\": 44141,\n  \"prag\": 31025,\n  \"prague</w>\": 14940,\n  \"prairi\": 12629,\n  \"prairie</w>\": 14753,\n  \"praise</w>\": 10013,\n  \"praised</w>\": 27649,\n  \"praises</w>\": 23049,\n  \"praising</w>\": 36961,\n  \"prakash\": 43708,\n  \"prakash</w>\": 25366,\n  \"pram\": 47774,\n  \"pran\": 20048,\n  \"prank</w>\": 23654,\n  \"pras</w>\": 41562,\n  \"prasad</w>\": 29562,\n  \"prat\": 23069,\n  \"prati\": 45773,\n  \"pratt\": 37863,\n  \"pratt</w>\": 23396,\n  \"prawn</w>\": 33102,\n  \"prawns</w>\": 34903,\n  \"pray\": 12671,\n  \"pray</w>\": 6041,\n  \"prayed</w>\": 34665,\n  \"prayer\": 41452,\n  \"prayer</w>\": 6583,\n  \"prayers</w>\": 8393,\n  \"prayfor\": 18443,\n  \"praying</w>\": 11550,\n  \"prays</w>\": 46602,\n  \"prc</w>\": 28781,\n  \"pre\": 679,\n  \"pre</w>\": 2900,\n  \"preach</w>\": 22545,\n  \"preacher</w>\": 29357,\n  \"preaching</w>\": 23642,\n  \"precau\": 36532,\n  \"precautions</w>\": 47845,\n  \"prece\": 15361,\n  \"preci\": 5470,\n  \"precin\": 27908,\n  \"precinct</w>\": 32587,\n  \"precious</w>\": 8226,\n  \"precipit\": 27463,\n  \"precipitation</w>\": 33399,\n  \"precise</w>\": 24457,\n  \"precisely</w>\": 34954,\n  \"precision\": 44021,\n  \"precision</w>\": 15621,\n  \"pred\": 40370,\n  \"predat\": 13364,\n  \"predator</w>\": 20653,\n  \"predators</w>\": 25569,\n  \"prede\": 38454,\n  \"predecess\": 38963,\n  \"predic\": 4876,\n  \"predict</w>\": 16900,\n  \"predictable</w>\": 25344,\n  \"predicted</w>\": 18702,\n  \"predicting</w>\": 30414,\n  \"prediction</w>\": 16296,\n  \"predictions</w>\": 15125,\n  \"predictive</w>\": 29798,\n  \"predicts</w>\": 25960,\n  \"preds</w>\": 40125,\n  \"pree</w>\": 47026,\n  \"preet</w>\": 30131,\n  \"prefe\": 14542,\n  \"prefecture</w>\": 32890,\n  \"prefer\": 33426,\n  \"prefer</w>\": 11450,\n  \"preference</w>\": 35057,\n  \"preferences</w>\": 38118,\n  \"preferred</w>\": 18772,\n  \"prefers</w>\": 38528,\n  \"pregame</w>\": 18575,\n  \"pregn\": 7190,\n  \"pregnancy</w>\": 12769,\n  \"pregnant</w>\": 11195,\n  \"prehistoric</w>\": 32750,\n  \"prejudice</w>\": 28337,\n  \"preli\": 15523,\n  \"prelimin\": 19990,\n  \"preliminary</w>\": 20997,\n  \"prelims</w>\": 43223,\n  \"prelude</w>\": 42966,\n  \"prem\": 32090,\n  \"prem</w>\": 21724,\n  \"premature</w>\": 39253,\n  \"premi\": 2413,\n  \"premier\": 16996,\n  \"premier</w>\": 5539,\n  \"premiere</w>\": 5367,\n  \"premiered</w>\": 27652,\n  \"premieres</w>\": 19907,\n  \"premiering</w>\": 32615,\n  \"premierleague</w>\": 22608,\n  \"premiers</w>\": 44883,\n  \"premiership</w>\": 23665,\n  \"premiosm\": 38460,\n  \"premiosmtvmiaw</w>\": 38630,\n  \"premise</w>\": 45952,\n  \"premises</w>\": 27266,\n  \"premium</w>\": 8011,\n  \"pren\": 20801,\n  \"preneur</w>\": 46288,\n  \"preorder</w>\": 16703,\n  \"preorders</w>\": 45985,\n  \"prep\": 6430,\n  \"prep</w>\": 7277,\n  \"prepa\": 26270,\n  \"prepaid</w>\": 42934,\n  \"prepar\": 4968,\n  \"preparation</w>\": 11651,\n  \"preparations</w>\": 19135,\n  \"prepare</w>\": 7014,\n  \"prepared</w>\": 7677,\n  \"preparedness</w>\": 29492,\n  \"prepares</w>\": 16375,\n  \"preparing</w>\": 7365,\n  \"prepped</w>\": 34379,\n  \"prepping</w>\": 16459,\n  \"preps</w>\": 14765,\n  \"prequel</w>\": 40461,\n  \"pres\": 1385,\n  \"pres</w>\": 8529,\n  \"presale</w>\": 27135,\n  \"presby\": 30447,\n  \"presbyter\": 33959,\n  \"presbyterian</w>\": 35370,\n  \"preschool</w>\": 24354,\n  \"prescott</w>\": 29392,\n  \"prescri\": 14851,\n  \"prescribed</w>\": 36968,\n  \"prescription</w>\": 23061,\n  \"preseason</w>\": 13813,\n  \"presen\": 16742,\n  \"presence</w>\": 8848,\n  \"present\": 2344,\n  \"present</w>\": 2881,\n  \"presentation</w>\": 4594,\n  \"presentations</w>\": 16998,\n  \"presented</w>\": 4587,\n  \"presenter</w>\": 18587,\n  \"presenters</w>\": 32759,\n  \"presenting</w>\": 5339,\n  \"presents</w>\": 4215,\n  \"preserv\": 17616,\n  \"preservation</w>\": 21074,\n  \"preserve</w>\": 15570,\n  \"preserved</w>\": 23161,\n  \"preserves</w>\": 44881,\n  \"preserving</w>\": 32315,\n  \"presi\": 1697,\n  \"presiden\": 43374,\n  \"presidency</w>\": 18077,\n  \"president\": 19900,\n  \"president</w>\": 1940,\n  \"presidente</w>\": 47363,\n  \"presidenti\": 48297,\n  \"presidential</w>\": 8503,\n  \"presidents</w>\": 16726,\n  \"presiding</w>\": 45298,\n  \"presley</w>\": 30013,\n  \"press\": 4124,\n  \"press</w>\": 2124,\n  \"pressed</w>\": 20080,\n  \"presser</w>\": 27826,\n  \"presses</w>\": 33748,\n  \"pressing</w>\": 20893,\n  \"pressure</w>\": 6083,\n  \"pressures</w>\": 38487,\n  \"prest\": 41840,\n  \"presti\": 12245,\n  \"prestige</w>\": 29328,\n  \"prestigious</w>\": 15888,\n  \"presto</w>\": 42211,\n  \"preston\": 37335,\n  \"preston</w>\": 15179,\n  \"presu\": 21667,\n  \"presumably</w>\": 42562,\n  \"pret\": 9652,\n  \"preten\": 15871,\n  \"pretend</w>\": 18111,\n  \"pretending</w>\": 21306,\n  \"pretoria</w>\": 36080,\n  \"prett\": 46667,\n  \"prettier</w>\": 31745,\n  \"prettiest</w>\": 22866,\n  \"pretty\": 18286,\n  \"pretty</w>\": 2111,\n  \"pretz\": 24890,\n  \"pretzel</w>\": 36707,\n  \"pretzels</w>\": 45468,\n  \"prev\": 20274,\n  \"prevail</w>\": 31637,\n  \"prevalence</w>\": 41729,\n  \"prevalent</w>\": 46260,\n  \"preven\": 29382,\n  \"prevent\": 26436,\n  \"prevent</w>\": 7968,\n  \"preventable</w>\": 44250,\n  \"prevented</w>\": 35356,\n  \"preventing</w>\": 21756,\n  \"prevention</w>\": 9500,\n  \"preventive</w>\": 40949,\n  \"prevents</w>\": 31746,\n  \"preview</w>\": 4449,\n  \"previews</w>\": 20279,\n  \"previous</w>\": 9252,\n  \"previously</w>\": 13359,\n  \"prey</w>\": 17131,\n  \"prez</w>\": 17956,\n  \"pri\": 955,\n  \"pri</w>\": 23400,\n  \"pric\": 24275,\n  \"price\": 13254,\n  \"price</w>\": 2827,\n  \"priced</w>\": 16934,\n  \"priceless</w>\": 15743,\n  \"prices</w>\": 5954,\n  \"pricing</w>\": 14800,\n  \"prick\": 43921,\n  \"prick</w>\": 46516,\n  \"pride\": 15323,\n  \"pride</w>\": 3436,\n  \"pridemonth</w>\": 41410,\n  \"prie\": 22477,\n  \"priest\": 38756,\n  \"priest</w>\": 14222,\n  \"priests</w>\": 30005,\n  \"prim\": 22004,\n  \"prima\": 35611,\n  \"prima</w>\": 33277,\n  \"primal</w>\": 36604,\n  \"primar\": 21579,\n  \"primaries</w>\": 46126,\n  \"primarily</w>\": 29465,\n  \"primark</w>\": 48329,\n  \"primary\": 35024,\n  \"primary</w>\": 5814,\n  \"primavera</w>\": 44899,\n  \"prime\": 14162,\n  \"prime</w>\": 5183,\n  \"primed</w>\": 45694,\n  \"primer</w>\": 22388,\n  \"primetime</w>\": 29763,\n  \"primitive</w>\": 37467,\n  \"primo</w>\": 43215,\n  \"primrose</w>\": 45891,\n  \"prin\": 1588,\n  \"prince\": 9457,\n  \"prince</w>\": 4735,\n  \"princes\": 45329,\n  \"princes</w>\": 30136,\n  \"princess\": 24123,\n  \"princess</w>\": 5079,\n  \"princesses</w>\": 34161,\n  \"princeton</w>\": 22433,\n  \"princi\": 5129,\n  \"principal\": 33599,\n  \"principal</w>\": 8860,\n  \"principals</w>\": 27524,\n  \"principle</w>\": 19595,\n  \"principles</w>\": 13755,\n  \"print\": 17851,\n  \"print</w>\": 3557,\n  \"printable</w>\": 29648,\n  \"printed</w>\": 7978,\n  \"printer</w>\": 14521,\n  \"printers</w>\": 27881,\n  \"printing</w>\": 7369,\n  \"printmaking</w>\": 38669,\n  \"prints</w>\": 7704,\n  \"prior\": 20328,\n  \"prior</w>\": 10572,\n  \"priorit\": 47773,\n  \"prioriti\": 28822,\n  \"priorities</w>\": 15232,\n  \"prioritize</w>\": 46715,\n  \"priority</w>\": 12451,\n  \"priory</w>\": 38665,\n  \"prisc\": 32468,\n  \"priscilla</w>\": 42396,\n  \"prise</w>\": 23343,\n  \"prism\": 49311,\n  \"prism</w>\": 34356,\n  \"prison\": 9281,\n  \"prison</w>\": 6622,\n  \"prisoner</w>\": 21427,\n  \"prisoners</w>\": 17460,\n  \"prisons</w>\": 26607,\n  \"pristine</w>\": 30618,\n  \"prit\": 41668,\n  \"prit</w>\": 37523,\n  \"prith\": 39173,\n  \"prius</w>\": 43561,\n  \"priv\": 3270,\n  \"privacy</w>\": 10437,\n  \"private\": 20362,\n  \"private</w>\": 4439,\n  \"privately</w>\": 32970,\n  \"privati\": 27379,\n  \"privi\": 8367,\n  \"privileg\": 18015,\n  \"privilege</w>\": 11537,\n  \"privileged</w>\": 18166,\n  \"prix</w>\": 10875,\n  \"priya</w>\": 31275,\n  \"priyan\": 16488,\n  \"priyanka</w>\": 31959,\n  \"priyankach\": 30030,\n  \"priyankachopra</w>\": 30264,\n  \"prize\": 48222,\n  \"prize</w>\": 4521,\n  \"prized</w>\": 38769,\n  \"prizes</w>\": 9268,\n  \"prk</w>\": 37094,\n  \"pro\": 644,\n  \"pro</w>\": 2630,\n  \"proactive</w>\": 33364,\n  \"prob\": 17706,\n  \"prob</w>\": 24007,\n  \"probab\": 3907,\n  \"probability</w>\": 32637,\n  \"probable</w>\": 42444,\n  \"probably</w>\": 4047,\n  \"probation</w>\": 36531,\n  \"probe</w>\": 14359,\n  \"probes</w>\": 48564,\n  \"probiotics</w>\": 49395,\n  \"proble\": 2719,\n  \"problem</w>\": 4324,\n  \"problematic</w>\": 33767,\n  \"problems</w>\": 4671,\n  \"probs</w>\": 16330,\n  \"probz</w>\": 34243,\n  \"proc\": 38417,\n  \"proce\": 4076,\n  \"procedu\": 18204,\n  \"procedural</w>\": 48177,\n  \"procedure</w>\": 20163,\n  \"procedures</w>\": 21109,\n  \"proceed\": 26664,\n  \"proceed</w>\": 33894,\n  \"proceedings</w>\": 26953,\n  \"proceeds</w>\": 11882,\n  \"process\": 17291,\n  \"process</w>\": 4078,\n  \"processed</w>\": 23816,\n  \"processes</w>\": 15169,\n  \"processing</w>\": 11737,\n  \"procession</w>\": 26288,\n  \"processor</w>\": 22838,\n  \"processors</w>\": 43634,\n  \"proclaimed</w>\": 34489,\n  \"proclamation</w>\": 32065,\n  \"procra\": 25361,\n  \"procrastin\": 25586,\n  \"procrastination</w>\": 42825,\n  \"procreate</w>\": 39336,\n  \"proctor</w>\": 47204,\n  \"procu\": 21001,\n  \"procurement</w>\": 23733,\n  \"prod\": 44349,\n  \"prod</w>\": 11991,\n  \"prodi\": 27759,\n  \"prodigy</w>\": 31973,\n  \"produ\": 27852,\n  \"produc\": 1471,\n  \"produce</w>\": 7529,\n  \"produced</w>\": 7479,\n  \"producer</w>\": 7064,\n  \"producers</w>\": 13883,\n  \"produces</w>\": 19940,\n  \"producing</w>\": 13579,\n  \"product\": 32602,\n  \"product</w>\": 4306,\n  \"production</w>\": 4146,\n  \"productions</w>\": 14166,\n  \"productive</w>\": 9697,\n  \"productivity</w>\": 12800,\n  \"products</w>\": 3964,\n  \"prof\": 15043,\n  \"prof</w>\": 5488,\n  \"profe\": 2611,\n  \"profess\": 5486,\n  \"professi\": 3705,\n  \"profession\": 8104,\n  \"profession</w>\": 19671,\n  \"professional\": 46007,\n  \"professional</w>\": 4774,\n  \"professionalism</w>\": 41252,\n  \"professionally</w>\": 33892,\n  \"professionals</w>\": 10165,\n  \"professor\": 47302,\n  \"professor</w>\": 6092,\n  \"professors</w>\": 27758,\n  \"profici\": 34685,\n  \"profile\": 14291,\n  \"profile</w>\": 6444,\n  \"profiles</w>\": 22070,\n  \"profiling</w>\": 37123,\n  \"profit\": 16941,\n  \"profit</w>\": 7909,\n  \"profitable</w>\": 25465,\n  \"profits</w>\": 13410,\n  \"profound\": 48245,\n  \"profound</w>\": 22998,\n  \"profs</w>\": 19260,\n  \"prog</w>\": 22219,\n  \"progno\": 46070,\n  \"program\": 4162,\n  \"program</w>\": 2737,\n  \"programme</w>\": 6322,\n  \"programmer</w>\": 37001,\n  \"programmes</w>\": 20468,\n  \"programming</w>\": 10831,\n  \"programs</w>\": 7345,\n  \"progre\": 7069,\n  \"progress</w>\": 4421,\n  \"progressi\": 23297,\n  \"progressing</w>\": 32346,\n  \"progression</w>\": 24772,\n  \"progressive</w>\": 12208,\n  \"progressives</w>\": 41709,\n  \"prohi\": 41124,\n  \"prohib\": 45040,\n  \"prohibition</w>\": 34440,\n  \"proj</w>\": 39156,\n  \"proje\": 48345,\n  \"projec\": 1610,\n  \"project\": 15911,\n  \"project</w>\": 1965,\n  \"projected</w>\": 22873,\n  \"projection</w>\": 22384,\n  \"projections</w>\": 34638,\n  \"projector</w>\": 27816,\n  \"projects</w>\": 5090,\n  \"proli\": 19710,\n  \"prolife</w>\": 32126,\n  \"prolifer\": 39018,\n  \"prolific</w>\": 27839,\n  \"prolly</w>\": 45968,\n  \"prolon\": 35379,\n  \"prolonged</w>\": 41972,\n  \"prom\": 40363,\n  \"prom</w>\": 7944,\n  \"prome\": 34355,\n  \"promen\": 33578,\n  \"promenade</w>\": 35522,\n  \"promethe\": 44183,\n  \"promin\": 35217,\n  \"prominent</w>\": 19172,\n  \"promis\": 3963,\n  \"promise</w>\": 6745,\n  \"promised</w>\": 11516,\n  \"promises</w>\": 12064,\n  \"promising</w>\": 14183,\n  \"promo\": 3037,\n  \"promo</w>\": 6755,\n  \"promos</w>\": 35044,\n  \"promote\": 47384,\n  \"promote</w>\": 8003,\n  \"promoted</w>\": 16395,\n  \"promoter</w>\": 33081,\n  \"promotes</w>\": 20169,\n  \"promoting</w>\": 9695,\n  \"promotion</w>\": 9259,\n  \"promotional</w>\": 17619,\n  \"promotions</w>\": 19142,\n  \"promp\": 11671,\n  \"prompt</w>\": 20198,\n  \"prompted</w>\": 45746,\n  \"prompts</w>\": 33490,\n  \"proms</w>\": 37759,\n  \"pron\": 13285,\n  \"prone</w>\": 30964,\n  \"pronoun\": 23022,\n  \"pronounce</w>\": 40489,\n  \"pronounced</w>\": 34109,\n  \"pronto</w>\": 44296,\n  \"proof\": 17020,\n  \"proof</w>\": 5248,\n  \"proofing</w>\": 35679,\n  \"proofs</w>\": 41023,\n  \"prop\": 19123,\n  \"prop</w>\": 16254,\n  \"propag\": 12151,\n  \"propaganda</w>\": 14718,\n  \"propane</w>\": 45546,\n  \"propel</w>\": 48439,\n  \"propeller</w>\": 47404,\n  \"proper\": 3577,\n  \"proper</w>\": 8205,\n  \"properly</w>\": 12560,\n  \"properties</w>\": 10922,\n  \"property\": 26486,\n  \"property</w>\": 5043,\n  \"prophe\": 9662,\n  \"prophecy</w>\": 32501,\n  \"prophet</w>\": 15549,\n  \"prophetic</w>\": 47476,\n  \"prophets</w>\": 39441,\n  \"propor\": 35016,\n  \"proportion</w>\": 35775,\n  \"proportions</w>\": 39391,\n  \"propos\": 9455,\n  \"proposal</w>\": 12139,\n  \"proposals</w>\": 20568,\n  \"propose</w>\": 28471,\n  \"proposed</w>\": 10615,\n  \"proposes</w>\": 27133,\n  \"proposing</w>\": 42631,\n  \"proposition</w>\": 44780,\n  \"propri\": 28243,\n  \"props</w>\": 15249,\n  \"propulsion</w>\": 49380,\n  \"pros\": 33925,\n  \"pros</w>\": 14147,\n  \"prosciutto</w>\": 46565,\n  \"prose\": 47063,\n  \"prose</w>\": 28675,\n  \"prosecco</w>\": 28839,\n  \"prosecu\": 12136,\n  \"prosecution</w>\": 30902,\n  \"prosecutor</w>\": 23736,\n  \"prosecutors</w>\": 31656,\n  \"prosp\": 24242,\n  \"prospec\": 12693,\n  \"prospect</w>\": 11211,\n  \"prospective</w>\": 28034,\n  \"prospects</w>\": 15372,\n  \"prosper\": 16121,\n  \"prosper</w>\": 33526,\n  \"prosperity</w>\": 17203,\n  \"prosperous</w>\": 28252,\n  \"prost</w>\": 47923,\n  \"prostate</w>\": 28808,\n  \"prostatec\": 49064,\n  \"prosthetic</w>\": 44602,\n  \"prostitu\": 37333,\n  \"protag\": 28950,\n  \"protagonist</w>\": 38183,\n  \"prote\": 1845,\n  \"protec\": 5640,\n  \"protect\": 25563,\n  \"protect</w>\": 4817,\n  \"protected</w>\": 12266,\n  \"protecting</w>\": 11710,\n  \"protection</w>\": 6238,\n  \"protections</w>\": 33772,\n  \"protective</w>\": 17028,\n  \"protector</w>\": 20441,\n  \"protectors</w>\": 45039,\n  \"protects</w>\": 21889,\n  \"protein</w>\": 8088,\n  \"proteins</w>\": 28661,\n  \"protest</w>\": 6279,\n  \"protestant</w>\": 46945,\n  \"protested</w>\": 48089,\n  \"protester</w>\": 42073,\n  \"protesters</w>\": 12660,\n  \"protesting</w>\": 18788,\n  \"protestors</w>\": 27822,\n  \"protests</w>\": 12450,\n  \"proto\": 8672,\n  \"proto</w>\": 44958,\n  \"protocol</w>\": 19938,\n  \"protocols</w>\": 39631,\n  \"proton</w>\": 40009,\n  \"prototype</w>\": 16675,\n  \"prototyping</w>\": 42081,\n  \"prou\": 5739,\n  \"proud\": 11080,\n  \"proud</w>\": 1679,\n  \"prouder</w>\": 39585,\n  \"proudest</w>\": 46806,\n  \"proudly</w>\": 11203,\n  \"proudof\": 48184,\n  \"proudtobe\": 35043,\n  \"prov\": 23772,\n  \"prov</w>\": 35021,\n  \"prove</w>\": 10107,\n  \"proved</w>\": 16473,\n  \"proven\": 35405,\n  \"proven</w>\": 14569,\n  \"provence</w>\": 28067,\n  \"prover\": 18312,\n  \"proverb</w>\": 34419,\n  \"proverbs</w>\": 27016,\n  \"proves</w>\": 16119,\n  \"provi\": 2289,\n  \"provide</w>\": 4832,\n  \"provided</w>\": 9046,\n  \"providence</w>\": 19331,\n  \"provider</w>\": 14409,\n  \"providers</w>\": 17120,\n  \"provides</w>\": 7161,\n  \"providing</w>\": 7250,\n  \"provin\": 12074,\n  \"province</w>\": 8978,\n  \"provinces</w>\": 35050,\n  \"provincial</w>\": 16002,\n  \"proving</w>\": 18055,\n  \"provision</w>\": 30148,\n  \"provisional</w>\": 36008,\n  \"provisions</w>\": 39269,\n  \"provo\": 15367,\n  \"provoc\": 31618,\n  \"provocative</w>\": 43809,\n  \"provoking</w>\": 25510,\n  \"provost</w>\": 36627,\n  \"prow\": 38737,\n  \"prowrestling</w>\": 39825,\n  \"prox\": 41616,\n  \"proxim\": 31436,\n  \"proximity</w>\": 38298,\n  \"proxy</w>\": 31680,\n  \"prs</w>\": 23879,\n  \"pru\": 12961,\n  \"pruitt</w>\": 39453,\n  \"prun\": 29029,\n  \"pruning</w>\": 48133,\n  \"pry\": 31965,\n  \"pryor</w>\": 43375,\n  \"ps\": 3982,\n  \"ps</w>\": 814,\n  \"psa</w>\": 14031,\n  \"psal\": 13859,\n  \"psalm</w>\": 17995,\n  \"psalms</w>\": 35003,\n  \"psb</w>\": 37017,\n  \"psc</w>\": 43118,\n  \"psd</w>\": 28810,\n  \"pse\": 19737,\n  \"pse</w>\": 5423,\n  \"pseu\": 24919,\n  \"pseudo</w>\": 46618,\n  \"psg</w>\": 17123,\n  \"psi\": 45848,\n  \"psi</w>\": 24533,\n  \"psic\": 29299,\n  \"psis</w>\": 33041,\n  \"psl</w>\": 21373,\n  \"psn</w>\": 36781,\n  \"pso\": 27045,\n  \"pson</w>\": 7487,\n  \"psori\": 44688,\n  \"psp</w>\": 32769,\n  \"pss\": 35718,\n  \"pss</w>\": 42535,\n  \"psst</w>\": 47814,\n  \"pst</w>\": 12692,\n  \"psu\": 41286,\n  \"psu</w>\": 28338,\n  \"psv</w>\": 44530,\n  \"psy\": 3576,\n  \"psy</w>\": 11056,\n  \"psych\": 31041,\n  \"psych</w>\": 20509,\n  \"psyched\": 19932,\n  \"psyched</w>\": 35199,\n  \"psychedelic</w>\": 23292,\n  \"psychi\": 18147,\n  \"psychiatric</w>\": 30578,\n  \"psychiatry</w>\": 39706,\n  \"psychic</w>\": 24916,\n  \"psycho\": 6472,\n  \"psycho</w>\": 22154,\n  \"psychological</w>\": 18153,\n  \"psychologist</w>\": 32827,\n  \"psychology</w>\": 12352,\n  \"psychop\": 30112,\n  \"psychotic</w>\": 48774,\n  \"pt\": 11139,\n  \"pt</w>\": 1459,\n  \"pta</w>\": 11586,\n  \"ptbo</w>\": 40481,\n  \"ptc</w>\": 44646,\n  \"pte</w>\": 47804,\n  \"pter\": 49323,\n  \"pti\": 29375,\n  \"pti</w>\": 10491,\n  \"ptic</w>\": 20670,\n  \"ption</w>\": 3479,\n  \"ptions</w>\": 24963,\n  \"pto\": 31372,\n  \"pto</w>\": 34092,\n  \"pton</w>\": 19780,\n  \"pts</w>\": 5886,\n  \"ptsd</w>\": 23973,\n  \"ptv</w>\": 42402,\n  \"pu\": 755,\n  \"pu</w>\": 11780,\n  \"pub\": 20720,\n  \"pub</w>\": 6301,\n  \"puberty</w>\": 44122,\n  \"pubg</w>\": 31496,\n  \"publ\": 3434,\n  \"publi\": 1617,\n  \"public\": 3592,\n  \"public</w>\": 2122,\n  \"publica</w>\": 49007,\n  \"publication</w>\": 13538,\n  \"publications</w>\": 27334,\n  \"publichealth</w>\": 35872,\n  \"publicity</w>\": 20831,\n  \"publicly</w>\": 18554,\n  \"publish</w>\": 19032,\n  \"published</w>\": 4311,\n  \"publisher</w>\": 20455,\n  \"publishers</w>\": 25222,\n  \"publishes</w>\": 35633,\n  \"publishing</w>\": 10994,\n  \"publix</w>\": 47985,\n  \"pubs</w>\": 21099,\n  \"puc\": 48779,\n  \"puck</w>\": 17550,\n  \"pud\": 39234,\n  \"pudding</w>\": 14025,\n  \"puddle</w>\": 33545,\n  \"pue\": 20161,\n  \"pueblo</w>\": 33076,\n  \"puer\": 8968,\n  \"puerto</w>\": 12289,\n  \"puertor\": 22757,\n  \"puertorico</w>\": 26356,\n  \"puff\": 44477,\n  \"puff</w>\": 17184,\n  \"puffin</w>\": 47632,\n  \"puffs</w>\": 47453,\n  \"puffy</w>\": 49245,\n  \"pug\": 20950,\n  \"pug</w>\": 17739,\n  \"pugchat</w>\": 42266,\n  \"pugh</w>\": 41302,\n  \"puglia</w>\": 38345,\n  \"pugs</w>\": 39425,\n  \"puj\": 46163,\n  \"puja</w>\": 33753,\n  \"puk</w>\": 31811,\n  \"pul\": 2469,\n  \"pul</w>\": 40512,\n  \"pula\": 45856,\n  \"puli</w>\": 47293,\n  \"pulit\": 27745,\n  \"pulitzer</w>\": 31419,\n  \"pull\": 20155,\n  \"pull</w>\": 6857,\n  \"pulled</w>\": 8525,\n  \"pulling</w>\": 12897,\n  \"pullman</w>\": 40203,\n  \"pullover</w>\": 44020,\n  \"pulls</w>\": 16041,\n  \"pulmon\": 32613,\n  \"pulmonary</w>\": 39132,\n  \"pulp</w>\": 25410,\n  \"pulse\": 40091,\n  \"pulse</w>\": 12485,\n  \"pulses</w>\": 42177,\n  \"pulsion</w>\": 35398,\n  \"pum\": 37497,\n  \"puma</w>\": 20858,\n  \"pump\": 5179,\n  \"pump</w>\": 9173,\n  \"pumped</w>\": 12796,\n  \"pumping</w>\": 25150,\n  \"pumpkin\": 36386,\n  \"pumpkin</w>\": 8842,\n  \"pumpkins</w>\": 23787,\n  \"pumps</w>\": 18540,\n  \"pun\": 2707,\n  \"pun</w>\": 19929,\n  \"punc\": 43907,\n  \"punch\": 29332,\n  \"punch</w>\": 10730,\n  \"punched</w>\": 31689,\n  \"punches</w>\": 35279,\n  \"punching</w>\": 33468,\n  \"punctu\": 31565,\n  \"punctuation</w>\": 47051,\n  \"pundit</w>\": 41466,\n  \"pune\": 32593,\n  \"pune</w>\": 14488,\n  \"pung</w>\": 45420,\n  \"puni\": 11479,\n  \"punish</w>\": 34569,\n  \"punished</w>\": 31598,\n  \"punisher</w>\": 38509,\n  \"punishment</w>\": 19099,\n  \"punjab\": 19405,\n  \"punjab</w>\": 12883,\n  \"punjabi</w>\": 25430,\n  \"punk\": 28933,\n  \"punk</w>\": 7246,\n  \"punks</w>\": 47171,\n  \"puns</w>\": 35231,\n  \"punt</w>\": 32699,\n  \"punta</w>\": 34112,\n  \"punter</w>\": 47092,\n  \"pup\": 11926,\n  \"pup</w>\": 11302,\n  \"pupil</w>\": 27265,\n  \"pupils</w>\": 13628,\n  \"pupp\": 7116,\n  \"puppet</w>\": 18439,\n  \"puppets</w>\": 28475,\n  \"puppies</w>\": 14820,\n  \"puppy\": 25431,\n  \"puppy</w>\": 6829,\n  \"puppylove</w>\": 40849,\n  \"pups</w>\": 20778,\n  \"pur\": 1727,\n  \"pur</w>\": 6265,\n  \"pura</w>\": 25596,\n  \"puram</w>\": 46174,\n  \"purcell</w>\": 46065,\n  \"purch\": 8384,\n  \"purchase</w>\": 5481,\n  \"purchased</w>\": 13399,\n  \"purchases</w>\": 21887,\n  \"purchasing</w>\": 20718,\n  \"purdu\": 40691,\n  \"purdue</w>\": 22280,\n  \"pure\": 14202,\n  \"pure</w>\": 5979,\n  \"puree</w>\": 45474,\n  \"purely</w>\": 32459,\n  \"puremichigan</w>\": 39783,\n  \"purest</w>\": 45497,\n  \"purge</w>\": 33514,\n  \"puri\": 16910,\n  \"puri</w>\": 21974,\n  \"purification</w>\": 47724,\n  \"purity</w>\": 29780,\n  \"purple\": 17837,\n  \"purple</w>\": 5496,\n  \"purpose\": 33492,\n  \"purpose</w>\": 7391,\n  \"purposes</w>\": 22020,\n  \"purr\": 49262,\n  \"purr</w>\": 46343,\n  \"purse</w>\": 16480,\n  \"pursue</w>\": 19463,\n  \"pursuing</w>\": 26424,\n  \"pursuit</w>\": 16469,\n  \"purÃ©e</w>\": 40981,\n  \"pus</w>\": 13841,\n  \"pusa</w>\": 40825,\n  \"push\": 16028,\n  \"push</w>\": 6831,\n  \"pushaw\": 35407,\n  \"pushaward\": 35448,\n  \"pushawards\": 47184,\n  \"pushed</w>\": 16155,\n  \"pushes</w>\": 23828,\n  \"pushing</w>\": 11549,\n  \"put\": 29535,\n  \"put</w>\": 1983,\n  \"putin</w>\": 10693,\n  \"putnam</w>\": 40235,\n  \"puts</w>\": 7898,\n  \"putt</w>\": 30279,\n  \"putter</w>\": 44723,\n  \"putting</w>\": 5154,\n  \"puzz\": 19760,\n  \"puzzle</w>\": 12875,\n  \"puzzles</w>\": 27986,\n  \"pv\": 14517,\n  \"pv</w>\": 13495,\n  \"pvc</w>\": 26959,\n  \"pvp</w>\": 44172,\n  \"pvt</w>\": 29898,\n  \"pw\": 19419,\n  \"pw</w>\": 16067,\n  \"pwc</w>\": 22965,\n  \"px\": 24790,\n  \"px</w>\": 10262,\n  \"pxrtg</w>\": 36262,\n  \"py\": 4005,\n  \"py</w>\": 7504,\n  \"pye\": 31099,\n  \"pyeongchang</w>\": 36066,\n  \"pyg\": 41450,\n  \"pyram\": 14405,\n  \"pyramid</w>\": 18725,\n  \"pyramids</w>\": 36877,\n  \"pyrene\": 36740,\n  \"pyrenees</w>\": 39744,\n  \"pyro\": 39762,\n  \"python</w>\": 13370,\n  \"pz</w>\": 48361,\n  \"pÃ©\": 43167,\n  \"q\": 80,\n  \"q</w>\": 336,\n  \"qa\": 24944,\n  \"qa</w>\": 16360,\n  \"qad\": 27844,\n  \"qadri</w>\": 35672,\n  \"qaeda</w>\": 31246,\n  \"qanda</w>\": 48672,\n  \"qanon</w>\": 19182,\n  \"qant\": 35404,\n  \"qantas</w>\": 43250,\n  \"qatar\": 32804,\n  \"qatar</w>\": 10872,\n  \"qb</w>\": 8073,\n  \"qbs</w>\": 38188,\n  \"qc</w>\": 17406,\n  \"qe</w>\": 30974,\n  \"qf</w>\": 27215,\n  \"qi\": 25054,\n  \"qi</w>\": 11256,\n  \"qing\": 46522,\n  \"qing</w>\": 34339,\n  \"ql</w>\": 28366,\n  \"qld\": 23039,\n  \"qld</w>\": 13765,\n  \"qldpol</w>\": 42296,\n  \"qm</w>\": 42148,\n  \"qotd</w>\": 24504,\n  \"qpr</w>\": 24788,\n  \"qq\": 31960,\n  \"qr</w>\": 18193,\n  \"qs</w>\": 14364,\n  \"qt</w>\": 15013,\n  \"qtr</w>\": 44803,\n  \"qu\": 666,\n  \"qu</w>\": 28646,\n  \"qua</w>\": 20363,\n  \"quack</w>\": 45575,\n  \"quad\": 11656,\n  \"quad</w>\": 13419,\n  \"quadcopter</w>\": 39792,\n  \"quadru\": 35831,\n  \"quaid</w>\": 34265,\n  \"quail</w>\": 34392,\n  \"quaint</w>\": 45976,\n  \"quake</w>\": 8421,\n  \"quaker</w>\": 43395,\n  \"quakes</w>\": 24572,\n  \"qual\": 9979,\n  \"qual</w>\": 32405,\n  \"qualcomm</w>\": 38683,\n  \"quali\": 4574,\n  \"qualification</w>\": 21508,\n  \"qualifications</w>\": 35225,\n  \"qualified</w>\": 11927,\n  \"qualifier</w>\": 18733,\n  \"qualifiers</w>\": 21388,\n  \"qualifies</w>\": 35820,\n  \"qualify</w>\": 17019,\n  \"qualifying</w>\": 11895,\n  \"qualitative</w>\": 45847,\n  \"qualities</w>\": 20488,\n  \"quality\": 28545,\n  \"quality</w>\": 3027,\n  \"quan\": 11669,\n  \"quan</w>\": 27490,\n  \"quand</w>\": 28198,\n  \"quant\": 15050,\n  \"quanti\": 31540,\n  \"quantitative</w>\": 40583,\n  \"quantities</w>\": 33917,\n  \"quantity</w>\": 26920,\n  \"quantum</w>\": 15320,\n  \"quar\": 3856,\n  \"quare</w>\": 42549,\n  \"quarry</w>\": 27601,\n  \"quart\": 7851,\n  \"quarter\": 8816,\n  \"quarter</w>\": 6632,\n  \"quarterback</w>\": 16545,\n  \"quarterfinal</w>\": 37992,\n  \"quarterfinals</w>\": 28971,\n  \"quarterly</w>\": 23350,\n  \"quarters</w>\": 10146,\n  \"quartet</w>\": 18056,\n  \"quartz</w>\": 17752,\n  \"quat\": 25715,\n  \"quattro</w>\": 40300,\n  \"quay\": 40276,\n  \"quay</w>\": 17304,\n  \"que\": 1147,\n  \"que</w>\": 2319,\n  \"quebec</w>\": 15373,\n  \"queen\": 6407,\n  \"queen</w>\": 2997,\n  \"queenof\": 44398,\n  \"queens\": 22943,\n  \"queens</w>\": 9330,\n  \"queensland</w>\": 15168,\n  \"queer\": 38874,\n  \"queer</w>\": 18161,\n  \"quel\": 39774,\n  \"quel</w>\": 21879,\n  \"quen\": 23876,\n  \"quen</w>\": 38324,\n  \"quent\": 23808,\n  \"quentin</w>\": 27530,\n  \"quer\": 17378,\n  \"quer</w>\": 26859,\n  \"quered</w>\": 23210,\n  \"queries</w>\": 32958,\n  \"querque</w>\": 30338,\n  \"query</w>\": 27464,\n  \"ques\": 25328,\n  \"ques</w>\": 7715,\n  \"queso</w>\": 40110,\n  \"quest\": 31653,\n  \"quest</w>\": 4846,\n  \"questi\": 2391,\n  \"question\": 18961,\n  \"question</w>\": 4382,\n  \"questionable</w>\": 30733,\n  \"questioned</w>\": 31847,\n  \"questioning</w>\": 24887,\n  \"questions</w>\": 3883,\n  \"quests</w>\": 44611,\n  \"quet</w>\": 8513,\n  \"quets</w>\": 39055,\n  \"quetta</w>\": 38326,\n  \"quette</w>\": 18993,\n  \"queu\": 32705,\n  \"queue</w>\": 18549,\n  \"queues</w>\": 40649,\n  \"queuing</w>\": 44082,\n  \"quez</w>\": 18677,\n  \"quezon</w>\": 41117,\n  \"qui\": 1912,\n  \"qui</w>\": 18046,\n  \"quic\": 26474,\n  \"quiche</w>\": 47723,\n  \"quick\": 5969,\n  \"quick</w>\": 3712,\n  \"quicker</w>\": 29211,\n  \"quickest</w>\": 37734,\n  \"quickly</w>\": 7787,\n  \"quid</w>\": 30732,\n  \"quie\": 43875,\n  \"quien</w>\": 43482,\n  \"quiere</w>\": 42723,\n  \"quiero</w>\": 32567,\n  \"quiet\": 17853,\n  \"quiet</w>\": 7557,\n  \"quietly</w>\": 22208,\n  \"quig\": 44690,\n  \"quil\": 12305,\n  \"quill</w>\": 48951,\n  \"quilt</w>\": 23977,\n  \"quilted</w>\": 46052,\n  \"quin\": 8607,\n  \"quin</w>\": 17167,\n  \"quincy</w>\": 27640,\n  \"quind\": 32339,\n  \"quinn</w>\": 12306,\n  \"quinoa</w>\": 26703,\n  \"quins</w>\": 39701,\n  \"quint\": 26898,\n  \"quinta</w>\": 47446,\n  \"quinte\": 22098,\n  \"quintess\": 37538,\n  \"quintet</w>\": 35125,\n  \"quipment</w>\": 42813,\n  \"quir\": 15943,\n  \"quirky</w>\": 25044,\n  \"quis\": 15064,\n  \"quist</w>\": 25128,\n  \"quit\": 19358,\n  \"quit</w>\": 11140,\n  \"quite</w>\": 4135,\n  \"quito</w>\": 35828,\n  \"quits</w>\": 32505,\n  \"quitting</w>\": 33871,\n  \"quity</w>\": 33133,\n  \"quiz\": 31197,\n  \"quiz</w>\": 8344,\n  \"quizz\": 35041,\n  \"quo\": 3046,\n  \"quo</w>\": 28127,\n  \"quoi</w>\": 45549,\n  \"quot\": 5452,\n  \"quot</w>\": 47587,\n  \"quota</w>\": 42097,\n  \"quotation</w>\": 49195,\n  \"quote\": 15446,\n  \"quote</w>\": 4020,\n  \"quoted</w>\": 27706,\n  \"quoteoftheday</w>\": 19975,\n  \"quotes</w>\": 5808,\n  \"quoting</w>\": 31651,\n  \"qur</w>\": 37782,\n  \"quran</w>\": 19690,\n  \"qureshi</w>\": 46307,\n  \"qvist</w>\": 42322,\n  \"qx</w>\": 45038,\n  \"r\": 81,\n  \"r</w>\": 337,\n  \"ra\": 559,\n  \"ra</w>\": 1735,\n  \"raa</w>\": 44344,\n  \"rab\": 14816,\n  \"rab</w>\": 33224,\n  \"rabb\": 6875,\n  \"rabbi</w>\": 20959,\n  \"rabbit</w>\": 10274,\n  \"rabbits</w>\": 27028,\n  \"rabhu</w>\": 25806,\n  \"rable</w>\": 10182,\n  \"rac\": 1773,\n  \"rac</w>\": 30462,\n  \"raccoon</w>\": 29516,\n  \"race\": 10978,\n  \"race</w>\": 2471,\n  \"racec\": 18814,\n  \"racecourse</w>\": 25036,\n  \"raced</w>\": 36021,\n  \"racer</w>\": 16798,\n  \"racers</w>\": 33603,\n  \"races</w>\": 8605,\n  \"raceway</w>\": 24650,\n  \"rach\": 6876,\n  \"rach</w>\": 33429,\n  \"racha\": 21952,\n  \"racha</w>\": 35022,\n  \"rachael</w>\": 29095,\n  \"rachel\": 13511,\n  \"rachel</w>\": 8029,\n  \"raci\": 33381,\n  \"racial</w>\": 13801,\n  \"racially</w>\": 43577,\n  \"racing\": 23306,\n  \"racing</w>\": 3699,\n  \"racism</w>\": 11276,\n  \"racist</w>\": 9684,\n  \"racists</w>\": 41777,\n  \"rack\": 24600,\n  \"rack</w>\": 12034,\n  \"racket</w>\": 37691,\n  \"racks</w>\": 21191,\n  \"rad\": 4473,\n  \"rad</w>\": 8238,\n  \"rada</w>\": 30437,\n  \"radar</w>\": 9672,\n  \"radcliffe</w>\": 33096,\n  \"rade\": 44494,\n  \"rade</w>\": 17911,\n  \"rader</w>\": 45002,\n  \"radford</w>\": 45800,\n  \"radha</w>\": 43122,\n  \"radi\": 5772,\n  \"radial</w>\": 42028,\n  \"radiance</w>\": 45670,\n  \"radiant</w>\": 25614,\n  \"radiation</w>\": 18210,\n  \"radiator</w>\": 39372,\n  \"radic\": 18082,\n  \"radical</w>\": 13712,\n  \"radicals</w>\": 45903,\n  \"radio\": 7176,\n  \"radio</w>\": 2638,\n  \"radioactive</w>\": 34704,\n  \"radiodisney</w>\": 36483,\n  \"radiohead</w>\": 39472,\n  \"radiology</w>\": 29684,\n  \"radios</w>\": 43669,\n  \"radish</w>\": 37789,\n  \"radius</w>\": 37570,\n  \"rado</w>\": 29784,\n  \"rae\": 21646,\n  \"rae</w>\": 15051,\n  \"rael</w>\": 45390,\n  \"raer</w>\": 44561,\n  \"raf\": 11495,\n  \"raf</w>\": 11490,\n  \"rafa\": 14352,\n  \"rafa</w>\": 24850,\n  \"rafael\": 38221,\n  \"rafael</w>\": 19216,\n  \"rafaelnadal</w>\": 49219,\n  \"raff\": 34900,\n  \"raffic</w>\": 32928,\n  \"raffle</w>\": 13752,\n  \"raffles</w>\": 43489,\n  \"rafi\": 35304,\n  \"raft</w>\": 9233,\n  \"rafting</w>\": 36309,\n  \"rag\": 13958,\n  \"rag</w>\": 20687,\n  \"rage</w>\": 8593,\n  \"rages</w>\": 34253,\n  \"ragh\": 35642,\n  \"ragha\": 40972,\n  \"raging</w>\": 25015,\n  \"ragn\": 24125,\n  \"ragnar\": 34385,\n  \"ragnarok</w>\": 41856,\n  \"ragon</w>\": 34768,\n  \"rags</w>\": 47838,\n  \"rah\": 12277,\n  \"rah</w>\": 8766,\n  \"raheem</w>\": 43317,\n  \"rahim</w>\": 24152,\n  \"rahman</w>\": 19680,\n  \"rahu\": 13129,\n  \"rahul\": 37239,\n  \"rahul</w>\": 17440,\n  \"rahulg\": 27510,\n  \"rahulgandhi</w>\": 28293,\n  \"rai\": 9165,\n  \"rai</w>\": 9638,\n  \"raid</w>\": 6877,\n  \"raided</w>\": 43417,\n  \"raider\": 27368,\n  \"raider</w>\": 21455,\n  \"raidernation</w>\": 47901,\n  \"raiders</w>\": 11817,\n  \"raids</w>\": 26655,\n  \"rail\": 4573,\n  \"rail</w>\": 6879,\n  \"raila</w>\": 47273,\n  \"railminindia</w>\": 35557,\n  \"railroad</w>\": 17080,\n  \"rails</w>\": 23427,\n  \"railway\": 27614,\n  \"railway</w>\": 7856,\n  \"railwayana</w>\": 46750,\n  \"railways</w>\": 20765,\n  \"raim\": 45785,\n  \"rain\": 3128,\n  \"rain</w>\": 2443,\n  \"raina</w>\": 30564,\n  \"rainbow\": 24562,\n  \"rainbow</w>\": 6286,\n  \"rainbows</w>\": 30483,\n  \"raine\": 49038,\n  \"raine</w>\": 6871,\n  \"rained</w>\": 32310,\n  \"rainf\": 15024,\n  \"rainfall</w>\": 15350,\n  \"rainforest</w>\": 22823,\n  \"rainier</w>\": 37850,\n  \"raining</w>\": 13964,\n  \"rains</w>\": 14272,\n  \"rainy</w>\": 10222,\n  \"rais\": 14729,\n  \"raise\": 24249,\n  \"raise</w>\": 5078,\n  \"raised</w>\": 6027,\n  \"raiser</w>\": 33555,\n  \"raises</w>\": 13297,\n  \"raisethe\": 47109,\n  \"raisin</w>\": 36864,\n  \"raising</w>\": 6883,\n  \"raj\": 5958,\n  \"raj</w>\": 10813,\n  \"raja\": 46069,\n  \"raja</w>\": 19150,\n  \"rajan</w>\": 46595,\n  \"rajas\": 16185,\n  \"rajasthan</w>\": 18017,\n  \"raje\": 21899,\n  \"rajesh</w>\": 43602,\n  \"raji\": 27569,\n  \"rajini\": 29600,\n  \"rajini</w>\": 40622,\n  \"rajinikanth</w>\": 32922,\n  \"rajiv</w>\": 40197,\n  \"rajkumar</w>\": 49304,\n  \"rajput</w>\": 47572,\n  \"raju</w>\": 47029,\n  \"rak\": 13523,\n  \"rak</w>\": 26287,\n  \"rake\": 26825,\n  \"rake</w>\": 32712,\n  \"rakesh</w>\": 41083,\n  \"ral\": 8062,\n  \"ral</w>\": 1406,\n  \"rale\": 14192,\n  \"raleigh</w>\": 18207,\n  \"rall\": 23249,\n  \"rallies</w>\": 25230,\n  \"rally\": 18882,\n  \"rally</w>\": 5041,\n  \"rallying</w>\": 36836,\n  \"ralph\": 25290,\n  \"ralph</w>\": 12234,\n  \"ram\": 1976,\n  \"ram</w>\": 2007,\n  \"rama</w>\": 22112,\n  \"ramad\": 12736,\n  \"ramadan</w>\": 15547,\n  \"ramadhan</w>\": 47415,\n  \"raman</w>\": 39816,\n  \"ramapho\": 43963,\n  \"ramaphosa</w>\": 44993,\n  \"ramatta</w>\": 49112,\n  \"rambo</w>\": 41855,\n  \"ramcharan</w>\": 45275,\n  \"rame</w>\": 47745,\n  \"ramen</w>\": 18892,\n  \"ramesh\": 48640,\n  \"ramesh</w>\": 40186,\n  \"rami</w>\": 43016,\n  \"ramirez</w>\": 23877,\n  \"ramon</w>\": 27958,\n  \"ramone</w>\": 47201,\n  \"ramos</w>\": 21046,\n  \"ramp</w>\": 14271,\n  \"rampage</w>\": 32077,\n  \"rampant</w>\": 41985,\n  \"ramps</w>\": 35257,\n  \"rams</w>\": 10292,\n  \"ramsay</w>\": 26259,\n  \"ramsey</w>\": 19215,\n  \"ran\": 1433,\n  \"ran</w>\": 4031,\n  \"rana</w>\": 22143,\n  \"ranbir</w>\": 40881,\n  \"rance</w>\": 29034,\n  \"ranch\": 43955,\n  \"ranch</w>\": 10659,\n  \"rancho</w>\": 26258,\n  \"rand\": 5628,\n  \"rand</w>\": 18718,\n  \"randall</w>\": 23639,\n  \"rande</w>\": 21469,\n  \"randolph</w>\": 29899,\n  \"random\": 11396,\n  \"random</w>\": 6160,\n  \"randomly</w>\": 17272,\n  \"rands</w>\": 39153,\n  \"randy\": 29479,\n  \"randy</w>\": 13279,\n  \"rane</w>\": 28852,\n  \"rang\": 4043,\n  \"rang</w>\": 24377,\n  \"range\": 13627,\n  \"range</w>\": 3818,\n  \"ranger\": 31472,\n  \"ranger</w>\": 13593,\n  \"rangers</w>\": 7664,\n  \"ranges</w>\": 25685,\n  \"ranging</w>\": 25946,\n  \"rani\": 29264,\n  \"rani</w>\": 22631,\n  \"rank</w>\": 11501,\n  \"ranked</w>\": 8307,\n  \"rankin</w>\": 37539,\n  \"ranking</w>\": 12347,\n  \"rankings</w>\": 12596,\n  \"ranks</w>\": 14469,\n  \"rano</w>\": 18608,\n  \"rans</w>\": 46259,\n  \"ransom\": 28523,\n  \"ransom</w>\": 34646,\n  \"ransomware</w>\": 33815,\n  \"rant\": 46467,\n  \"rant</w>\": 9819,\n  \"rants</w>\": 34014,\n  \"ranveer\": 32402,\n  \"ranveer</w>\": 41482,\n  \"ranveerofficial</w>\": 42116,\n  \"rao</w>\": 16913,\n  \"rap\": 7773,\n  \"rap</w>\": 7348,\n  \"rape\": 46099,\n  \"rape</w>\": 10070,\n  \"raped</w>\": 23700,\n  \"rapha\": 22754,\n  \"raphael</w>\": 30091,\n  \"rapi\": 8610,\n  \"rapid\": 47697,\n  \"rapid</w>\": 12205,\n  \"rapidly</w>\": 16710,\n  \"rapids</w>\": 18848,\n  \"raping</w>\": 44926,\n  \"rapist</w>\": 33360,\n  \"rapp\": 19283,\n  \"rapper</w>\": 11860,\n  \"rappers</w>\": 30315,\n  \"rapping</w>\": 42864,\n  \"raps</w>\": 37887,\n  \"raptor</w>\": 26762,\n  \"raptors</w>\": 17035,\n  \"raq\": 39787,\n  \"raq</w>\": 43312,\n  \"raqqa</w>\": 47074,\n  \"raquel</w>\": 44338,\n  \"rar\": 26819,\n  \"rar</w>\": 24605,\n  \"rard</w>\": 21012,\n  \"rare\": 18992,\n  \"rare</w>\": 3865,\n  \"rarely</w>\": 17315,\n  \"rarest</w>\": 43237,\n  \"rarity</w>\": 45862,\n  \"ras\": 23492,\n  \"ras</w>\": 8224,\n  \"rasc\": 30085,\n  \"rascal</w>\": 43481,\n  \"rash\": 14917,\n  \"rash</w>\": 30608,\n  \"rashad</w>\": 46527,\n  \"rasheed</w>\": 41638,\n  \"rashi\": 19426,\n  \"rashid</w>\": 26757,\n  \"rasp\": 10487,\n  \"raspberries</w>\": 37742,\n  \"raspberry\": 40162,\n  \"raspberry</w>\": 13615,\n  \"raspberrypi</w>\": 43934,\n  \"rass</w>\": 45654,\n  \"rasta</w>\": 47002,\n  \"rat\": 3806,\n  \"rat</w>\": 8985,\n  \"rata</w>\": 28568,\n  \"ratchet</w>\": 25078,\n  \"rate</w>\": 5068,\n  \"rated</w>\": 8183,\n  \"rates</w>\": 6864,\n  \"rath\": 18268,\n  \"rath</w>\": 39772,\n  \"rather</w>\": 5252,\n  \"rati\": 11486,\n  \"rating</w>\": 10567,\n  \"ratings</w>\": 14176,\n  \"ratio</w>\": 15893,\n  \"ration\": 27002,\n  \"ration</w>\": 35662,\n  \"rational</w>\": 33086,\n  \"ratna</w>\": 49078,\n  \"ratri</w>\": 32288,\n  \"rats</w>\": 19043,\n  \"ratt\": 20737,\n  \"ratt</w>\": 34785,\n  \"rattle\": 40824,\n  \"rattle</w>\": 41839,\n  \"rau\": 27744,\n  \"raul</w>\": 30218,\n  \"raun\": 41169,\n  \"rav\": 14367,\n  \"rav</w>\": 23606,\n  \"rave\": 38784,\n  \"rave</w>\": 17601,\n  \"ravel</w>\": 27927,\n  \"raven\": 10269,\n  \"raven</w>\": 16803,\n  \"ravens</w>\": 17946,\n  \"ravi\": 22947,\n  \"ravi</w>\": 19538,\n  \"ravin\": 39099,\n  \"raving</w>\": 45807,\n  \"raviol\": 41104,\n  \"ravioli</w>\": 43460,\n  \"raw\": 10166,\n  \"raw</w>\": 6323,\n  \"rawlings</w>\": 40662,\n  \"rax</w>\": 38520,\n  \"ray\": 5312,\n  \"ray</w>\": 3077,\n  \"raya</w>\": 29991,\n  \"raymond</w>\": 16683,\n  \"rayn\": 47852,\n  \"rayon</w>\": 47900,\n  \"rays</w>\": 11064,\n  \"raz\": 9700,\n  \"raz</w>\": 19087,\n  \"raza</w>\": 37724,\n  \"razer</w>\": 33832,\n  \"razor\": 24934,\n  \"razor</w>\": 21300,\n  \"razz\": 43769,\n  \"rb\": 12740,\n  \"rb</w>\": 7477,\n  \"rbc</w>\": 37500,\n  \"rbi</w>\": 15687,\n  \"rbs</w>\": 29102,\n  \"rc\": 7575,\n  \"rc</w>\": 7457,\n  \"rca</w>\": 33942,\n  \"rcb</w>\": 45240,\n  \"rcmp</w>\": 31489,\n  \"rcn</w>\": 49370,\n  \"rctid</w>\": 49223,\n  \"rd\": 13501,\n  \"rd</w>\": 1973,\n  \"rda</w>\": 45755,\n  \"rdr</w>\": 44364,\n  \"rds</w>\": 32378,\n  \"re\": 515,\n  \"re</w>\": 810,\n  \"rea</w>\": 11521,\n  \"reach\": 4483,\n  \"reach</w>\": 4279,\n  \"reached</w>\": 6878,\n  \"reaches</w>\": 14462,\n  \"reaching</w>\": 11358,\n  \"react\": 36566,\n  \"react</w>\": 15065,\n  \"reacted</w>\": 42515,\n  \"reacting</w>\": 40595,\n  \"reaction</w>\": 7189,\n  \"reactions</w>\": 18438,\n  \"reactive</w>\": 42072,\n  \"reactjs</w>\": 46173,\n  \"reactor</w>\": 32037,\n  \"reacts</w>\": 23115,\n  \"read\": 933,\n  \"read</w>\": 1199,\n  \"reader</w>\": 9884,\n  \"readers</w>\": 10335,\n  \"readiness</w>\": 28131,\n  \"reading\": 17556,\n  \"reading</w>\": 2337,\n  \"readingfc</w>\": 47428,\n  \"readings</w>\": 23361,\n  \"reads</w>\": 6597,\n  \"ready\": 17351,\n  \"ready</w>\": 1112,\n  \"reagan</w>\": 17767,\n  \"real\": 2017,\n  \"real</w>\": 1532,\n  \"realdonaldtrump</w>\": 7025,\n  \"reale\": 5930,\n  \"realest</w>\": 45855,\n  \"realestate\": 32937,\n  \"realestate</w>\": 6569,\n  \"reali\": 4185,\n  \"realis</w>\": 38114,\n  \"realise</w>\": 14773,\n  \"realised</w>\": 17945,\n  \"realising</w>\": 39537,\n  \"realism</w>\": 20024,\n  \"realist</w>\": 30248,\n  \"realistic</w>\": 16157,\n  \"realities</w>\": 32443,\n  \"reality\": 46802,\n  \"reality</w>\": 5004,\n  \"realization</w>\": 40402,\n  \"realize</w>\": 7538,\n  \"realized</w>\": 10489,\n  \"realizes</w>\": 42918,\n  \"realizing</w>\": 23284,\n  \"reall\": 39686,\n  \"really\": 43249,\n  \"really</w>\": 1414,\n  \"realm</w>\": 23083,\n  \"realmadrid</w>\": 27866,\n  \"realms</w>\": 43033,\n  \"realness</w>\": 46761,\n  \"realtime\": 44002,\n  \"realtime</w>\": 38203,\n  \"realtor</w>\": 18038,\n  \"realtors</w>\": 31759,\n  \"realty</w>\": 20471,\n  \"ream\": 37242,\n  \"ream</w>\": 15219,\n  \"rean</w>\": 48477,\n  \"reap</w>\": 31334,\n  \"reaper</w>\": 29922,\n  \"rear\": 39652,\n  \"rear</w>\": 10223,\n  \"reas\": 9121,\n  \"reason\": 12882,\n  \"reason</w>\": 3893,\n  \"reasonable</w>\": 18558,\n  \"reasonably</w>\": 38589,\n  \"reasoning</w>\": 30341,\n  \"reasons</w>\": 5686,\n  \"reau</w>\": 32398,\n  \"reb\": 12370,\n  \"reb</w>\": 18796,\n  \"reba</w>\": 48543,\n  \"rebate</w>\": 43817,\n  \"rebe\": 25227,\n  \"rebec\": 10774,\n  \"rebecca</w>\": 12892,\n  \"rebel\": 8185,\n  \"rebel</w>\": 12248,\n  \"rebellion</w>\": 22170,\n  \"rebels</w>\": 13623,\n  \"rebirth</w>\": 33303,\n  \"reboot</w>\": 22385,\n  \"reborn</w>\": 30229,\n  \"reboun\": 43381,\n  \"rebound</w>\": 31280,\n  \"rebounds</w>\": 19190,\n  \"rebs</w>\": 28164,\n  \"rebu\": 43162,\n  \"rebuild</w>\": 20022,\n  \"rebuilding</w>\": 30880,\n  \"rebuilt</w>\": 33137,\n  \"rec\": 1020,\n  \"rec</w>\": 11243,\n  \"recall</w>\": 15151,\n  \"recalled</w>\": 32142,\n  \"recalling</w>\": 47855,\n  \"recalls</w>\": 24740,\n  \"recap\": 29816,\n  \"recap</w>\": 8337,\n  \"recaps</w>\": 47997,\n  \"recard</w>\": 35536,\n  \"rece\": 1890,\n  \"recei\": 2148,\n  \"receip\": 38503,\n  \"receipt</w>\": 30479,\n  \"receipts</w>\": 41181,\n  \"receive</w>\": 4800,\n  \"received</w>\": 4178,\n  \"receiver</w>\": 17659,\n  \"receivers</w>\": 45294,\n  \"receives</w>\": 10027,\n  \"receiving</w>\": 7252,\n  \"recent</w>\": 3969,\n  \"recently</w>\": 4482,\n  \"recep\": 17450,\n  \"reception</w>\": 8364,\n  \"receptions</w>\": 46881,\n  \"receptor</w>\": 41835,\n  \"recess</w>\": 38182,\n  \"recession</w>\": 27176,\n  \"recharge</w>\": 29396,\n  \"rechargeable</w>\": 37516,\n  \"reci\": 2037,\n  \"recipe\": 28923,\n  \"recipe</w>\": 4614,\n  \"recipeoftheday</w>\": 38727,\n  \"recipes</w>\": 9243,\n  \"recipi\": 10136,\n  \"recipient</w>\": 13703,\n  \"recipients</w>\": 18940,\n  \"recipro\": 41789,\n  \"recital</w>\": 23457,\n  \"recite</w>\": 48824,\n  \"reck\": 11715,\n  \"reckless</w>\": 26284,\n  \"reckon</w>\": 23854,\n  \"recl\": 42277,\n  \"reclaim</w>\": 35969,\n  \"reclaimed</w>\": 32648,\n  \"reco\": 2535,\n  \"reco</w>\": 46038,\n  \"recogn\": 6343,\n  \"recogni\": 5329,\n  \"recognise</w>\": 19824,\n  \"recognised</w>\": 20986,\n  \"recognising</w>\": 48423,\n  \"recognition</w>\": 9415,\n  \"recognizable</w>\": 47240,\n  \"recognize</w>\": 10905,\n  \"recognized</w>\": 9929,\n  \"recognizes</w>\": 26909,\n  \"recognizing</w>\": 19666,\n  \"recomm\": 4540,\n  \"recommend\": 11628,\n  \"recommend</w>\": 8942,\n  \"recommendation</w>\": 20118,\n  \"recommendations</w>\": 16516,\n  \"recommended</w>\": 11100,\n  \"recommending</w>\": 44301,\n  \"recommends</w>\": 22940,\n  \"recon\": 15371,\n  \"recon</w>\": 28996,\n  \"reconciliation</w>\": 26451,\n  \"reconstruction</w>\": 24955,\n  \"recor\": 1723,\n  \"record\": 21328,\n  \"record</w>\": 2717,\n  \"recorded</w>\": 9392,\n  \"recorder</w>\": 26747,\n  \"recording\": 48237,\n  \"recording</w>\": 6942,\n  \"recordings</w>\": 19715,\n  \"records</w>\": 4529,\n  \"recover</w>\": 16785,\n  \"recovered</w>\": 16444,\n  \"recovering</w>\": 19005,\n  \"recovers</w>\": 47935,\n  \"recovery</w>\": 6591,\n  \"recre\": 22148,\n  \"recreate</w>\": 29775,\n  \"recreated</w>\": 40888,\n  \"recreating</w>\": 48224,\n  \"recreation</w>\": 17331,\n  \"recreational</w>\": 24329,\n  \"recru\": 4745,\n  \"recruit\": 9011,\n  \"recruit</w>\": 15585,\n  \"recruited</w>\": 36518,\n  \"recruiter</w>\": 43120,\n  \"recruiters</w>\": 46542,\n  \"recruiting</w>\": 10533,\n  \"recruitment</w>\": 10541,\n  \"recruits</w>\": 22647,\n  \"recs</w>\": 33069,\n  \"rectan\": 43041,\n  \"rectangular</w>\": 43321,\n  \"rector</w>\": 41585,\n  \"recu\": 26798,\n  \"recur\": 19983,\n  \"recurring</w>\": 35912,\n  \"recy\": 6790,\n  \"recycla\": 40659,\n  \"recyclable</w>\": 48907,\n  \"recycle</w>\": 19366,\n  \"recycled</w>\": 16829,\n  \"recycling</w>\": 12566,\n  \"red\": 1893,\n  \"red</w>\": 736,\n  \"redbubble</w>\": 46137,\n  \"redbull\": 29483,\n  \"redbull</w>\": 29219,\n  \"redcarpet</w>\": 32259,\n  \"redcross</w>\": 30659,\n  \"redd\": 22149,\n  \"redd</w>\": 40618,\n  \"redding</w>\": 41061,\n  \"reddish</w>\": 43383,\n  \"reddit</w>\": 15226,\n  \"reddy</w>\": 23028,\n  \"rede\": 10913,\n  \"redeem</w>\": 37449,\n  \"redefining</w>\": 46352,\n  \"redemption</w>\": 20233,\n  \"redesign</w>\": 24188,\n  \"redesigned</w>\": 33111,\n  \"redevelopment</w>\": 30322,\n  \"redhead</w>\": 36267,\n  \"redi\": 7976,\n  \"redman</w>\": 44753,\n  \"redmond</w>\": 39627,\n  \"rednation\": 28180,\n  \"rednationrising</w>\": 28262,\n  \"redneck</w>\": 39105,\n  \"redness</w>\": 22626,\n  \"redo</w>\": 42524,\n  \"redon\": 48506,\n  \"redro\": 37722,\n  \"reds</w>\": 11221,\n  \"redskins</w>\": 19023,\n  \"redsox</w>\": 19144,\n  \"reduc\": 5015,\n  \"reduce</w>\": 6604,\n  \"reduced</w>\": 10821,\n  \"reduces</w>\": 20539,\n  \"reducing</w>\": 13836,\n  \"reduction</w>\": 12219,\n  \"reductions</w>\": 48263,\n  \"redux</w>\": 43014,\n  \"redvelvet</w>\": 41845,\n  \"redwings</w>\": 31058,\n  \"redwood</w>\": 31748,\n  \"ree\": 9282,\n  \"ree</w>\": 5813,\n  \"reebok</w>\": 26734,\n  \"reece</w>\": 30457,\n  \"reed\": 26209,\n  \"reed</w>\": 10435,\n  \"reedus</w>\": 32865,\n  \"reef\": 46557,\n  \"reef</w>\": 15624,\n  \"reefs</w>\": 34459,\n  \"reel\": 34467,\n  \"reel</w>\": 17166,\n  \"reels</w>\": 48127,\n  \"reem</w>\": 48891,\n  \"reen\": 21638,\n  \"reen</w>\": 23679,\n  \"rees</w>\": 18314,\n  \"reese</w>\": 20929,\n  \"reeves</w>\": 23060,\n  \"ref\": 4067,\n  \"ref</w>\": 9591,\n  \"refe\": 5624,\n  \"refer\": 18425,\n  \"refer</w>\": 22325,\n  \"referee</w>\": 20398,\n  \"referees</w>\": 45583,\n  \"referen\": 13535,\n  \"reference</w>\": 10214,\n  \"references</w>\": 24009,\n  \"referendum</w>\": 16732,\n  \"referr\": 47784,\n  \"referral</w>\": 30219,\n  \"referred</w>\": 22969,\n  \"referring</w>\": 29797,\n  \"refers</w>\": 30069,\n  \"refill</w>\": 37859,\n  \"refin\": 13455,\n  \"refined</w>\": 26098,\n  \"refinery</w>\": 31393,\n  \"refining</w>\": 48406,\n  \"reflec\": 4608,\n  \"reflect</w>\": 13373,\n  \"reflected</w>\": 28732,\n  \"reflecting</w>\": 19700,\n  \"reflection</w>\": 11884,\n  \"reflections</w>\": 16647,\n  \"reflective</w>\": 27008,\n  \"reflects</w>\": 15821,\n  \"reflex\": 45756,\n  \"reflex</w>\": 36050,\n  \"reform\": 45678,\n  \"reform</w>\": 8875,\n  \"reformation</w>\": 45119,\n  \"reformed</w>\": 40880,\n  \"reforms</w>\": 19274,\n  \"refr\": 34850,\n  \"refre\": 11995,\n  \"refresh\": 17836,\n  \"refresh</w>\": 23288,\n  \"refreshed</w>\": 35925,\n  \"refresher</w>\": 41481,\n  \"refreshing</w>\": 14159,\n  \"refreshments</w>\": 31127,\n  \"refriger\": 21076,\n  \"refrigerator</w>\": 36662,\n  \"refs</w>\": 35595,\n  \"refu\": 3545,\n  \"refuge\": 5638,\n  \"refuge</w>\": 17432,\n  \"refugee</w>\": 11556,\n  \"refugees\": 42687,\n  \"refugees</w>\": 8316,\n  \"refund</w>\": 28899,\n  \"refur\": 15519,\n  \"refurbi\": 18259,\n  \"refurbished</w>\": 26190,\n  \"refurbishment</w>\": 35803,\n  \"refusal</w>\": 46547,\n  \"refuse</w>\": 16412,\n  \"refused</w>\": 17190,\n  \"refuses</w>\": 20085,\n  \"refusing</w>\": 26704,\n  \"reg\": 5472,\n  \"reg</w>\": 12353,\n  \"regain</w>\": 37510,\n  \"regal\": 31512,\n  \"regal</w>\": 25028,\n  \"regan</w>\": 34062,\n  \"regar\": 5881,\n  \"regard</w>\": 21801,\n  \"regarded</w>\": 32017,\n  \"regarding</w>\": 8493,\n  \"regardless</w>\": 17220,\n  \"regards</w>\": 23079,\n  \"regatta</w>\": 26316,\n  \"regen\": 46545,\n  \"regency</w>\": 29341,\n  \"regeneration</w>\": 29257,\n  \"regent</w>\": 30455,\n  \"regents</w>\": 46710,\n  \"regg\": 12757,\n  \"reggae\": 37821,\n  \"reggae</w>\": 15214,\n  \"reggie</w>\": 21872,\n  \"regi\": 1608,\n  \"regime</w>\": 11378,\n  \"regiment</w>\": 18603,\n  \"regin\": 23287,\n  \"regina</w>\": 16841,\n  \"region\": 16542,\n  \"region</w>\": 4341,\n  \"regional</w>\": 5552,\n  \"regionals</w>\": 26043,\n  \"regions</w>\": 14530,\n  \"regis</w>\": 28094,\n  \"register</w>\": 3967,\n  \"registered</w>\": 10254,\n  \"registering</w>\": 33510,\n  \"registr\": 29193,\n  \"registration</w>\": 7302,\n  \"registrations</w>\": 38423,\n  \"registry</w>\": 30020,\n  \"rego</w>\": 47351,\n  \"regram</w>\": 30329,\n  \"regrann</w>\": 48802,\n  \"regre\": 8627,\n  \"regression</w>\": 43733,\n  \"regret</w>\": 14374,\n  \"regrets</w>\": 23231,\n  \"regu\": 3411,\n  \"regui</w>\": 46722,\n  \"regul\": 11847,\n  \"regular\": 14882,\n  \"regular</w>\": 6307,\n  \"regularly</w>\": 17263,\n  \"regulat\": 14575,\n  \"regulate</w>\": 33494,\n  \"regulated</w>\": 31384,\n  \"regulating</w>\": 48156,\n  \"regulation</w>\": 14267,\n  \"regulations</w>\": 16654,\n  \"regulator</w>\": 30364,\n  \"regulators</w>\": 35837,\n  \"regulatory</w>\": 17717,\n  \"reh\": 21492,\n  \"reha\": 10193,\n  \"rehab</w>\": 16973,\n  \"rehabil\": 17930,\n  \"rehabilitation</w>\": 21042,\n  \"rehear\": 7273,\n  \"rehearsal</w>\": 11482,\n  \"rehearsals</w>\": 17977,\n  \"rehearsing</w>\": 23125,\n  \"rehman</w>\": 39206,\n  \"rei\": 15343,\n  \"rei</w>\": 26033,\n  \"reic\": 41230,\n  \"reich\": 48589,\n  \"reich</w>\": 28929,\n  \"reid\": 45125,\n  \"reid</w>\": 11744,\n  \"reig\": 13092,\n  \"reign\": 41419,\n  \"reign</w>\": 14827,\n  \"reigning</w>\": 28409,\n  \"reigns</w>\": 21217,\n  \"reiki</w>\": 46960,\n  \"reilly</w>\": 28120,\n  \"reim\": 35421,\n  \"reimagined</w>\": 46799,\n  \"reimbur\": 39857,\n  \"rein\": 9240,\n  \"rein</w>\": 45009,\n  \"reina</w>\": 43847,\n  \"reinde\": 23810,\n  \"reindeer</w>\": 25072,\n  \"reinfor\": 48161,\n  \"reinforced</w>\": 41909,\n  \"reinst\": 33969,\n  \"reinvent</w>\": 38171,\n  \"reissue</w>\": 34042,\n  \"reiter\": 35394,\n  \"rejec\": 9958,\n  \"reject</w>\": 22435,\n  \"rejected</w>\": 17505,\n  \"rejection</w>\": 32264,\n  \"rejects</w>\": 23155,\n  \"rejo\": 20150,\n  \"rejoice</w>\": 24712,\n  \"rejuven\": 26332,\n  \"rek\": 47542,\n  \"rek</w>\": 19201,\n  \"rel\": 1825,\n  \"rel</w>\": 5233,\n  \"rela\": 4362,\n  \"reland</w>\": 15220,\n  \"relat\": 27192,\n  \"relatable</w>\": 31010,\n  \"relate</w>\": 17520,\n  \"related</w>\": 5880,\n  \"relates</w>\": 36064,\n  \"relating</w>\": 27373,\n  \"relation\": 4561,\n  \"relation</w>\": 16207,\n  \"relations</w>\": 10100,\n  \"relationship\": 47239,\n  \"relationship</w>\": 5837,\n  \"relationships</w>\": 10610,\n  \"relative</w>\": 17265,\n  \"relatively</w>\": 18351,\n  \"relatives</w>\": 21981,\n  \"relax\": 6777,\n  \"relax</w>\": 9035,\n  \"relaxation</w>\": 22194,\n  \"relaxed</w>\": 18999,\n  \"relaxing</w>\": 10256,\n  \"relay</w>\": 12403,\n  \"relays</w>\": 28404,\n  \"rele\": 1602,\n  \"release\": 29100,\n  \"release</w>\": 2706,\n  \"released</w>\": 3410,\n  \"releases</w>\": 7393,\n  \"releasethe\": 44008,\n  \"releasing</w>\": 10321,\n  \"releg\": 23378,\n  \"relegated</w>\": 45884,\n  \"relegation</w>\": 35040,\n  \"relent\": 22213,\n  \"relentless</w>\": 27207,\n  \"relessly</w>\": 33927,\n  \"relev\": 9349,\n  \"relevance</w>\": 31400,\n  \"relevant</w>\": 10568,\n  \"reli\": 2674,\n  \"reliability</w>\": 27220,\n  \"reliable</w>\": 13714,\n  \"reliance</w>\": 27727,\n  \"relic</w>\": 27802,\n  \"relics</w>\": 43208,\n  \"relief</w>\": 7518,\n  \"relies</w>\": 41579,\n  \"relieve</w>\": 28623,\n  \"relieved</w>\": 36597,\n  \"religi\": 4940,\n  \"religion</w>\": 8803,\n  \"religions</w>\": 31189,\n  \"religious</w>\": 8289,\n  \"relish</w>\": 35550,\n  \"relive</w>\": 23939,\n  \"reliving</w>\": 47558,\n  \"rell\": 28802,\n  \"rell</w>\": 7127,\n  \"rella</w>\": 9952,\n  \"relle</w>\": 31390,\n  \"reloaded</w>\": 38908,\n  \"relocated</w>\": 46791,\n  \"relocation</w>\": 39198,\n  \"rels</w>\": 23320,\n  \"relu\": 32058,\n  \"reluct\": 32549,\n  \"reluctant</w>\": 45552,\n  \"rely</w>\": 4158,\n  \"relying</w>\": 42168,\n  \"rem\": 15098,\n  \"rem</w>\": 21637,\n  \"rema\": 4569,\n  \"remain\": 29144,\n  \"remain</w>\": 6415,\n  \"remainder</w>\": 41672,\n  \"remained</w>\": 23714,\n  \"remaining</w>\": 11392,\n  \"remains</w>\": 6807,\n  \"remake</w>\": 16234,\n  \"remark\": 11136,\n  \"remarkable</w>\": 12404,\n  \"remarkably</w>\": 39087,\n  \"remarks</w>\": 15001,\n  \"remastered</w>\": 24932,\n  \"rematch</w>\": 26473,\n  \"rembrandt</w>\": 45972,\n  \"reme\": 20071,\n  \"remedi\": 18442,\n  \"remedies</w>\": 25581,\n  \"remedy</w>\": 25794,\n  \"remem\": 7966,\n  \"rememb\": 7062,\n  \"remember\": 22045,\n  \"remember</w>\": 2195,\n  \"remembered</w>\": 11763,\n  \"remembering</w>\": 8135,\n  \"remembers</w>\": 12551,\n  \"remembrance\": 40321,\n  \"remembrance</w>\": 15860,\n  \"remembranceday</w>\": 48333,\n  \"rement</w>\": 7173,\n  \"rements</w>\": 12667,\n  \"remi</w>\": 41693,\n  \"remin\": 3216,\n  \"remind</w>\": 9868,\n  \"reminded</w>\": 12309,\n  \"reminder</w>\": 5565,\n  \"reminders</w>\": 34121,\n  \"reminding</w>\": 19976,\n  \"reminds</w>\": 8303,\n  \"remington</w>\": 43527,\n  \"reminis\": 17723,\n  \"reminiscent</w>\": 41704,\n  \"reminiscing</w>\": 32552,\n  \"remix</w>\": 8519,\n  \"remixes</w>\": 31011,\n  \"remn\": 29127,\n  \"remnants</w>\": 39032,\n  \"remo\": 4064,\n  \"remo</w>\": 33259,\n  \"remodel\": 34159,\n  \"remodel</w>\": 37495,\n  \"remodeling</w>\": 41432,\n  \"remote\": 47163,\n  \"remote</w>\": 9687,\n  \"remotely</w>\": 32375,\n  \"removable</w>\": 44095,\n  \"removal</w>\": 13679,\n  \"remove</w>\": 9709,\n  \"removed</w>\": 10289,\n  \"remover</w>\": 44267,\n  \"removes</w>\": 29018,\n  \"removing</w>\": 18504,\n  \"remy</w>\": 30434,\n  \"ren\": 737,\n  \"ren</w>\": 2596,\n  \"rena</w>\": 12591,\n  \"renais\": 15409,\n  \"renaissance</w>\": 16007,\n  \"renal</w>\": 36096,\n  \"renamed</w>\": 31535,\n  \"renault</w>\": 17600,\n  \"rence\": 19245,\n  \"rence</w>\": 1553,\n  \"rences</w>\": 8545,\n  \"rend\": 33932,\n  \"rend</w>\": 22851,\n  \"render\": 39752,\n  \"render</w>\": 13024,\n  \"rendered</w>\": 23652,\n  \"rendering</w>\": 21339,\n  \"renders</w>\": 39419,\n  \"rendez\": 43293,\n  \"rendezvous</w>\": 45644,\n  \"rendition</w>\": 28891,\n  \"rendon</w>\": 46272,\n  \"rendous</w>\": 49403,\n  \"rends</w>\": 38842,\n  \"rene\": 15438,\n  \"rene</w>\": 12597,\n  \"renee</w>\": 23480,\n  \"reneg\": 29909,\n  \"renegade</w>\": 41229,\n  \"renergy</w>\": 37151,\n  \"renew\": 6645,\n  \"renew</w>\": 22015,\n  \"renewable\": 31269,\n  \"renewable</w>\": 15941,\n  \"renewableenergy</w>\": 33357,\n  \"renewables</w>\": 21619,\n  \"renewal</w>\": 21270,\n  \"renewed</w>\": 20524,\n  \"renfre\": 45043,\n  \"reng</w>\": 36795,\n  \"reno\": 11520,\n  \"reno</w>\": 12831,\n  \"renov\": 9984,\n  \"renovated</w>\": 23839,\n  \"renovation</w>\": 17121,\n  \"renovations</w>\": 31311,\n  \"renowned</w>\": 14727,\n  \"rens</w>\": 18183,\n  \"renshaw</w>\": 44445,\n  \"rent\": 17377,\n  \"rent</w>\": 1609,\n  \"rental</w>\": 12193,\n  \"rentals</w>\": 24105,\n  \"rented</w>\": 35932,\n  \"rential</w>\": 31692,\n  \"renting</w>\": 37662,\n  \"rently</w>\": 2615,\n  \"rents</w>\": 31109,\n  \"reo\": 15963,\n  \"reo</w>\": 26854,\n  \"reon</w>\": 15761,\n  \"reopen</w>\": 26883,\n  \"reopened</w>\": 32868,\n  \"reopening</w>\": 36663,\n  \"reopens</w>\": 40644,\n  \"rep\": 4229,\n  \"rep</w>\": 6487,\n  \"repair</w>\": 8419,\n  \"repaired</w>\": 32953,\n  \"repairing</w>\": 38534,\n  \"repairs</w>\": 16297,\n  \"repar\": 34065,\n  \"repe\": 5785,\n  \"repeal\": 42622,\n  \"repeal</w>\": 23938,\n  \"repeat</w>\": 10192,\n  \"repeated</w>\": 27904,\n  \"repeatedly</w>\": 26630,\n  \"repeating</w>\": 33834,\n  \"repeats</w>\": 39158,\n  \"repell\": 46235,\n  \"repent\": 47261,\n  \"reper\": 29085,\n  \"repet\": 38533,\n  \"repl\": 13047,\n  \"replac\": 6069,\n  \"replace</w>\": 9466,\n  \"replaceable</w>\": 47762,\n  \"replaced</w>\": 13200,\n  \"replacement</w>\": 10835,\n  \"replaces</w>\": 27781,\n  \"replacing</w>\": 18647,\n  \"replay</w>\": 16875,\n  \"repleni\": 44839,\n  \"replic\": 21651,\n  \"replica</w>\": 18125,\n  \"replied</w>\": 24238,\n  \"replies</w>\": 18808,\n  \"reply</w>\": 8965,\n  \"replying</w>\": 47599,\n  \"repor\": 2628,\n  \"report</w>\": 2417,\n  \"reported</w>\": 7598,\n  \"reportedly</w>\": 10953,\n  \"reporter</w>\": 11019,\n  \"reporters</w>\": 18454,\n  \"reporting</w>\": 9218,\n  \"reports</w>\": 4908,\n  \"reposit\": 41276,\n  \"repository</w>\": 46977,\n  \"repost\": 33147,\n  \"repost</w>\": 7217,\n  \"repostapp</w>\": 38388,\n  \"reposting</w>\": 20223,\n  \"reppin</w>\": 19163,\n  \"repping</w>\": 22574,\n  \"repre\": 3397,\n  \"represent\": 8293,\n  \"represent</w>\": 8406,\n  \"representation</w>\": 13520,\n  \"representative</w>\": 13175,\n  \"representatives</w>\": 15591,\n  \"represented</w>\": 12299,\n  \"representing</w>\": 7561,\n  \"represents</w>\": 14433,\n  \"repri\": 31854,\n  \"reproduction</w>\": 35714,\n  \"reproductive</w>\": 25522,\n  \"reps</w>\": 14265,\n  \"reptile</w>\": 36938,\n  \"reptiles</w>\": 38679,\n  \"republic\": 6376,\n  \"republic</w>\": 7185,\n  \"republican</w>\": 9842,\n  \"republicans</w>\": 12384,\n  \"repur\": 41852,\n  \"req</w>\": 42411,\n  \"requ\": 10664,\n  \"reque\": 9539,\n  \"request</w>\": 7813,\n  \"requested</w>\": 16199,\n  \"requesting</w>\": 33245,\n  \"requests</w>\": 17087,\n  \"requi\": 4863,\n  \"requiem</w>\": 40316,\n  \"require</w>\": 14437,\n  \"required</w>\": 8500,\n  \"requirement</w>\": 27146,\n  \"requirements</w>\": 12860,\n  \"requires</w>\": 13396,\n  \"requiring</w>\": 33425,\n  \"requis\": 42602,\n  \"rer\": 41295,\n  \"rer</w>\": 3407,\n  \"rera</w>\": 14301,\n  \"rero</w>\": 21860,\n  \"rers</w>\": 18869,\n  \"res\": 4466,\n  \"res</w>\": 934,\n  \"resc\": 3956,\n  \"rescheduled</w>\": 43553,\n  \"rescu\": 8618,\n  \"rescue\": 28567,\n  \"rescue</w>\": 5718,\n  \"rescued</w>\": 11919,\n  \"rescues</w>\": 32439,\n  \"rescuing</w>\": 43770,\n  \"rese\": 13000,\n  \"resear\": 6090,\n  \"research\": 25694,\n  \"research</w>\": 2379,\n  \"researched</w>\": 42733,\n  \"researcher</w>\": 18334,\n  \"researchers</w>\": 9522,\n  \"researching</w>\": 24544,\n  \"reseller</w>\": 35391,\n  \"resemb\": 16916,\n  \"resemblance</w>\": 26856,\n  \"resemble</w>\": 37230,\n  \"resembles</w>\": 35417,\n  \"reser\": 16420,\n  \"reserv\": 11906,\n  \"reservation</w>\": 20289,\n  \"reservations</w>\": 19307,\n  \"reserve</w>\": 6911,\n  \"reserved</w>\": 19796,\n  \"reserves</w>\": 19705,\n  \"reservoir</w>\": 20574,\n  \"reset</w>\": 26250,\n  \"resh</w>\": 47432,\n  \"reshi</w>\": 39435,\n  \"resi\": 2152,\n  \"residen\": 22311,\n  \"residence</w>\": 11672,\n  \"residences</w>\": 38855,\n  \"residency</w>\": 18545,\n  \"resident</w>\": 9016,\n  \"residente\": 44637,\n  \"residentevil</w>\": 48393,\n  \"residential</w>\": 11002,\n  \"residents</w>\": 6008,\n  \"resign</w>\": 23584,\n  \"resignation</w>\": 24779,\n  \"resigned</w>\": 31014,\n  \"resigns</w>\": 29738,\n  \"resil\": 10932,\n  \"resili\": 39212,\n  \"resilience</w>\": 15271,\n  \"resilient</w>\": 24694,\n  \"resin</w>\": 24156,\n  \"resist\": 37345,\n  \"resist</w>\": 9587,\n  \"resistance</w>\": 7392,\n  \"resistant</w>\": 17542,\n  \"resisting</w>\": 43679,\n  \"resolution</w>\": 9977,\n  \"resolutions</w>\": 26816,\n  \"resolve</w>\": 20787,\n  \"resolved</w>\": 28807,\n  \"reson\": 18092,\n  \"resonance</w>\": 42310,\n  \"resort</w>\": 6594,\n  \"resorts</w>\": 18839,\n  \"resource\": 43729,\n  \"resource</w>\": 9760,\n  \"resources</w>\": 6723,\n  \"respec\": 7466,\n  \"respect\": 31411,\n  \"respect</w>\": 4916,\n  \"respected</w>\": 19126,\n  \"respectful</w>\": 24379,\n  \"respecting</w>\": 36172,\n  \"respective</w>\": 25817,\n  \"respectively</w>\": 28794,\n  \"respects</w>\": 23553,\n  \"respir\": 20771,\n  \"respiratory</w>\": 24483,\n  \"respon\": 2421,\n  \"respond</w>\": 12355,\n  \"responded</w>\": 21121,\n  \"respondents</w>\": 49253,\n  \"responders</w>\": 25155,\n  \"responding</w>\": 18037,\n  \"responds</w>\": 17436,\n  \"response</w>\": 5399,\n  \"responses</w>\": 19006,\n  \"responsi\": 5490,\n  \"responsibilities</w>\": 30375,\n  \"responsibility</w>\": 11272,\n  \"responsible</w>\": 8936,\n  \"responsibly</w>\": 33675,\n  \"responsive</w>\": 21544,\n  \"ress\": 34651,\n  \"ress</w>\": 13629,\n  \"resso</w>\": 15133,\n  \"rest\": 10974,\n  \"rest</w>\": 2539,\n  \"restart</w>\": 37378,\n  \"restaur\": 3775,\n  \"restaurant\": 41930,\n  \"restaurant</w>\": 4489,\n  \"restaurants</w>\": 11714,\n  \"rested</w>\": 46020,\n  \"resting</w>\": 18044,\n  \"restless</w>\": 36724,\n  \"restling</w>\": 30076,\n  \"resto\": 11118,\n  \"resto</w>\": 41666,\n  \"restock</w>\": 34060,\n  \"restocked</w>\": 36966,\n  \"restor\": 8984,\n  \"restoration</w>\": 11989,\n  \"restorative</w>\": 46509,\n  \"restore</w>\": 14008,\n  \"restored</w>\": 14238,\n  \"restoring</w>\": 24406,\n  \"restra\": 25424,\n  \"restric\": 11036,\n  \"restricted</w>\": 27197,\n  \"restriction</w>\": 44282,\n  \"restrictions</w>\": 19884,\n  \"restroom</w>\": 43423,\n  \"restructuring</w>\": 43260,\n  \"rests</w>\": 33775,\n  \"resu\": 10095,\n  \"resul\": 2655,\n  \"result</w>\": 5659,\n  \"resulted</w>\": 26449,\n  \"resulting</w>\": 24581,\n  \"results</w>\": 3790,\n  \"resume</w>\": 15077,\n  \"resumes</w>\": 30268,\n  \"resur\": 14865,\n  \"resurg\": 45962,\n  \"resurgence</w>\": 47692,\n  \"resurrec\": 18487,\n  \"resurrection</w>\": 25811,\n  \"resusc\": 47523,\n  \"ret\": 20500,\n  \"ret</w>\": 10048,\n  \"reta\": 20153,\n  \"retail\": 14910,\n  \"retail</w>\": 6455,\n  \"retailer</w>\": 22549,\n  \"retailers</w>\": 19418,\n  \"retain</w>\": 24430,\n  \"retained</w>\": 42737,\n  \"retaining</w>\": 35571,\n  \"retains</w>\": 42583,\n  \"retali\": 33101,\n  \"retar\": 29964,\n  \"retarded</w>\": 44111,\n  \"retention</w>\": 26247,\n  \"rethink</w>\": 29078,\n  \"rethinking</w>\": 42951,\n  \"reti\": 4721,\n  \"retin\": 31270,\n  \"retina</w>\": 36919,\n  \"retire</w>\": 18846,\n  \"retired</w>\": 11477,\n  \"retirement</w>\": 9205,\n  \"retires</w>\": 29060,\n  \"retiring</w>\": 21200,\n  \"retrac\": 32735,\n  \"retreat</w>\": 11210,\n  \"retri\": 16918,\n  \"retriever</w>\": 28394,\n  \"retro\": 6535,\n  \"retro</w>\": 7755,\n  \"retrogamer</w>\": 47220,\n  \"retrogaming</w>\": 11316,\n  \"retrospective</w>\": 27105,\n  \"rett\": 41082,\n  \"rett</w>\": 8425,\n  \"rette</w>\": 33066,\n  \"return\": 43042,\n  \"return</w>\": 3458,\n  \"returned</w>\": 10476,\n  \"returning</w>\": 9290,\n  \"returns</w>\": 5020,\n  \"retwee\": 48190,\n  \"retweet</w>\": 3195,\n  \"retweeted</w>\": 12705,\n  \"retweeting</w>\": 32345,\n  \"retweets</w>\": 10160,\n  \"rety</w>\": 41550,\n  \"reu\": 20255,\n  \"reu</w>\": 40371,\n  \"reuben</w>\": 40450,\n  \"reunion</w>\": 10247,\n  \"reunite</w>\": 26179,\n  \"reunited</w>\": 13516,\n  \"reusable</w>\": 30395,\n  \"reuse</w>\": 26535,\n  \"reut\": 15210,\n  \"reuters</w>\": 15569,\n  \"rev\": 8424,\n  \"rev</w>\": 11789,\n  \"revamp</w>\": 29819,\n  \"revamped</w>\": 36420,\n  \"revan</w>\": 45277,\n  \"reve\": 3115,\n  \"reveal</w>\": 8052,\n  \"revealed</w>\": 7171,\n  \"revealing</w>\": 21321,\n  \"reveals</w>\": 6621,\n  \"revel\": 14133,\n  \"revelation</w>\": 24053,\n  \"revelations</w>\": 36163,\n  \"reven\": 10171,\n  \"revenge</w>\": 12717,\n  \"revenue</w>\": 10637,\n  \"revenues</w>\": 33348,\n  \"rever\": 14829,\n  \"rever</w>\": 41913,\n  \"revere</w>\": 44187,\n  \"reverend</w>\": 34407,\n  \"revers\": 20726,\n  \"reversal</w>\": 33367,\n  \"reverse</w>\": 12812,\n  \"reversed</w>\": 42485,\n  \"reversi\": 31601,\n  \"reversible</w>\": 34212,\n  \"revi\": 8317,\n  \"review</w>\": 2268,\n  \"reviewed</w>\": 16678,\n  \"reviewer</w>\": 36409,\n  \"reviewers</w>\": 48195,\n  \"reviewing</w>\": 20458,\n  \"reviews</w>\": 7227,\n  \"revise</w>\": 46801,\n  \"revised</w>\": 22806,\n  \"revising</w>\": 46882,\n  \"revision</w>\": 20335,\n  \"revisit</w>\": 26568,\n  \"revisited</w>\": 34302,\n  \"revisiting</w>\": 33144,\n  \"revit\": 26367,\n  \"revitalization</w>\": 46923,\n  \"revival</w>\": 14142,\n  \"revive</w>\": 26450,\n  \"revived</w>\": 42912,\n  \"revo\": 28660,\n  \"revol\": 13447,\n  \"revolt</w>\": 31697,\n  \"revolu\": 4900,\n  \"revolution\": 17699,\n  \"revolution</w>\": 6644,\n  \"revolutionary</w>\": 14734,\n  \"revolver</w>\": 38747,\n  \"revolving</w>\": 47230,\n  \"revs</w>\": 49286,\n  \"revue</w>\": 43428,\n  \"rew</w>\": 37564,\n  \"rewar\": 15857,\n  \"reward</w>\": 11223,\n  \"rewarded</w>\": 27163,\n  \"rewarding</w>\": 23351,\n  \"rewards</w>\": 15235,\n  \"rewatch</w>\": 35610,\n  \"rewatching</w>\": 41287,\n  \"rewind</w>\": 26867,\n  \"rewrite</w>\": 45218,\n  \"rex\": 13002,\n  \"rex</w>\": 10904,\n  \"rexperience</w>\": 33924,\n  \"rey\": 9681,\n  \"rey</w>\": 4517,\n  \"reyes</w>\": 18255,\n  \"reykja\": 47571,\n  \"reyn\": 11998,\n  \"reynolds</w>\": 14309,\n  \"reys</w>\": 48284,\n  \"rez\": 27597,\n  \"rez</w>\": 15192,\n  \"reza</w>\": 35888,\n  \"rf\": 35529,\n  \"rf</w>\": 16368,\n  \"rfc</w>\": 19003,\n  \"rfid</w>\": 40204,\n  \"rg\": 33055,\n  \"rg</w>\": 14897,\n  \"rgb</w>\": 36128,\n  \"rgv</w>\": 33685,\n  \"rh\": 8745,\n  \"rh</w>\": 22404,\n  \"rha\": 19473,\n  \"rhapso\": 32532,\n  \"rhapsody</w>\": 35774,\n  \"rhe\": 9186,\n  \"rhea</w>\": 28612,\n  \"rhetor\": 24359,\n  \"rhetoric</w>\": 29985,\n  \"rhett</w>\": 42984,\n  \"rheu\": 42953,\n  \"rhi\": 21212,\n  \"rhin\": 12269,\n  \"rhine\": 22863,\n  \"rhine</w>\": 44833,\n  \"rhinestone</w>\": 30450,\n  \"rhino\": 41744,\n  \"rhino</w>\": 20056,\n  \"rhinos</w>\": 30671,\n  \"rho\": 7637,\n  \"rhode\": 39302,\n  \"rhode</w>\": 27907,\n  \"rhodes</w>\": 17785,\n  \"rhon\": 25882,\n  \"rhonda</w>\": 46100,\n  \"rhp</w>\": 27199,\n  \"rhs</w>\": 24551,\n  \"rhu\": 23897,\n  \"rhubarb</w>\": 30213,\n  \"rhy\": 7740,\n  \"rhyme</w>\": 37356,\n  \"rhymes</w>\": 33143,\n  \"rhys</w>\": 28647,\n  \"rhyth\": 27069,\n  \"rhythm</w>\": 16172,\n  \"rhythmic</w>\": 46386,\n  \"rhythms</w>\": 40872,\n  \"ri\": 553,\n  \"ri</w>\": 2574,\n  \"ria</w>\": 3650,\n  \"rial</w>\": 15200,\n  \"rian</w>\": 7788,\n  \"rib\": 44634,\n  \"rib</w>\": 18298,\n  \"riba</w>\": 44992,\n  \"ribb\": 10081,\n  \"ribbon</w>\": 12114,\n  \"ribbons</w>\": 35271,\n  \"ribe\": 46115,\n  \"ribs</w>\": 17519,\n  \"ric\": 920,\n  \"ric</w>\": 4798,\n  \"rica</w>\": 14230,\n  \"rical</w>\": 18109,\n  \"rican</w>\": 30958,\n  \"ricardo</w>\": 23140,\n  \"ricci\": 35783,\n  \"ricciardo</w>\": 49282,\n  \"rice\": 36362,\n  \"rice</w>\": 4741,\n  \"rich\": 5223,\n  \"rich</w>\": 4021,\n  \"richar\": 9350,\n  \"richard\": 9080,\n  \"richard</w>\": 4470,\n  \"richards</w>\": 11372,\n  \"richardson</w>\": 15984,\n  \"riche\": 23286,\n  \"richer</w>\": 34138,\n  \"riches</w>\": 37093,\n  \"richest</w>\": 25572,\n  \"richi\": 38934,\n  \"richie</w>\": 19797,\n  \"richland</w>\": 43079,\n  \"richmond\": 34143,\n  \"richmond</w>\": 11292,\n  \"richter</w>\": 37591,\n  \"rick\": 6237,\n  \"rick</w>\": 3064,\n  \"ricket\": 46161,\n  \"ricket</w>\": 23671,\n  \"ricks</w>\": 23111,\n  \"ricky\": 19188,\n  \"ricky</w>\": 12814,\n  \"rico\": 37962,\n  \"rico</w>\": 11362,\n  \"ricotta</w>\": 38473,\n  \"rics</w>\": 7353,\n  \"ricul\": 6980,\n  \"rid\": 18103,\n  \"rid</w>\": 9874,\n  \"ridd\": 21990,\n  \"ridden</w>\": 32025,\n  \"riddle</w>\": 31839,\n  \"ride\": 15816,\n  \"ride</w>\": 2994,\n  \"rider\": 31056,\n  \"rider</w>\": 9707,\n  \"riders</w>\": 10826,\n  \"rides</w>\": 11308,\n  \"ridg\": 42646,\n  \"ridge\": 16580,\n  \"ridge</w>\": 6352,\n  \"ridic\": 9624,\n  \"ridiculous</w>\": 12659,\n  \"ridiculously</w>\": 25661,\n  \"ridin</w>\": 47869,\n  \"riding</w>\": 6765,\n  \"ridley</w>\": 27883,\n  \"rie\": 14824,\n  \"rie</w>\": 5322,\n  \"ried</w>\": 7552,\n  \"riel</w>\": 26696,\n  \"rien</w>\": 35237,\n  \"rier\": 40714,\n  \"rier</w>\": 13336,\n  \"ries\": 28179,\n  \"ries</w>\": 3059,\n  \"riesling</w>\": 36372,\n  \"rif\": 7044,\n  \"riff</w>\": 30359,\n  \"rifle</w>\": 15354,\n  \"rifles</w>\": 25678,\n  \"rift</w>\": 26681,\n  \"rig\": 18462,\n  \"rig</w>\": 13871,\n  \"riga</w>\": 36626,\n  \"rigged</w>\": 35897,\n  \"rigging</w>\": 38160,\n  \"riggs</w>\": 40328,\n  \"righ\": 15391,\n  \"right\": 13341,\n  \"right</w>\": 1155,\n  \"righte\": 20762,\n  \"righteous</w>\": 28169,\n  \"righteousness</w>\": 42481,\n  \"rightful</w>\": 42601,\n  \"rightly</w>\": 42669,\n  \"rights</w>\": 3336,\n  \"rigid</w>\": 43138,\n  \"rigor\": 36788,\n  \"rigorous</w>\": 41654,\n  \"rigs</w>\": 42893,\n  \"rihanna</w>\": 13744,\n  \"rij\": 41097,\n  \"rik\": 31136,\n  \"rik</w>\": 27832,\n  \"rika</w>\": 28580,\n  \"ril\": 12270,\n  \"ril</w>\": 2388,\n  \"riley\": 35056,\n  \"riley</w>\": 12260,\n  \"rill</w>\": 23705,\n  \"rilla\": 43956,\n  \"rilla</w>\": 18685,\n  \"rim\": 28147,\n  \"rim</w>\": 12199,\n  \"rime</w>\": 27064,\n  \"rimin\": 11527,\n  \"rimo</w>\": 47817,\n  \"rims</w>\": 34327,\n  \"rin\": 5859,\n  \"rin</w>\": 11739,\n  \"rina</w>\": 12869,\n  \"rine</w>\": 24952,\n  \"ring\": 8318,\n  \"ring</w>\": 2540,\n  \"ringed</w>\": 44712,\n  \"ringer</w>\": 35761,\n  \"ringing</w>\": 26035,\n  \"ringo</w>\": 38845,\n  \"rings</w>\": 5751,\n  \"rington</w>\": 12455,\n  \"rink</w>\": 21497,\n  \"rinka</w>\": 47316,\n  \"rino</w>\": 47188,\n  \"rinse</w>\": 48320,\n  \"rio\": 15681,\n  \"rio</w>\": 5782,\n  \"rion\": 31623,\n  \"rion</w>\": 34046,\n  \"rios</w>\": 32814,\n  \"riot\": 32636,\n  \"riot</w>\": 14218,\n  \"riots</w>\": 24844,\n  \"rious</w>\": 6340,\n  \"rip\": 10353,\n  \"rip</w>\": 4243,\n  \"ripe</w>\": 22832,\n  \"ripley</w>\": 41589,\n  \"ripp\": 25276,\n  \"ripped</w>\": 17815,\n  \"ripper</w>\": 35347,\n  \"ripping</w>\": 29126,\n  \"ripple</w>\": 24825,\n  \"rips</w>\": 30182,\n  \"rir</w>\": 36792,\n  \"ris\": 6108,\n  \"ris</w>\": 1999,\n  \"rise\": 13641,\n  \"rise</w>\": 3151,\n  \"risen</w>\": 23653,\n  \"risers</w>\": 44983,\n  \"rises</w>\": 13362,\n  \"riseup</w>\": 35760,\n  \"rish\": 18378,\n  \"rish</w>\": 18927,\n  \"rishi\": 48434,\n  \"rising\": 30452,\n  \"rising</w>\": 5448,\n  \"risis</w>\": 37998,\n  \"risk\": 27967,\n  \"risk</w>\": 4213,\n  \"risking</w>\": 48155,\n  \"risks</w>\": 12474,\n  \"risky</w>\": 27630,\n  \"risotto</w>\": 31471,\n  \"rist</w>\": 40610,\n  \"rit\": 5156,\n  \"rit</w>\": 17333,\n  \"rita</w>\": 16178,\n  \"ritchie</w>\": 30997,\n  \"rite\": 39318,\n  \"rite</w>\": 18429,\n  \"rites</w>\": 36160,\n  \"rith\": 48169,\n  \"rith</w>\": 48850,\n  \"riti\": 32904,\n  \"rito</w>\": 19379,\n  \"ritos</w>\": 33507,\n  \"ritt</w>\": 26092,\n  \"ritter</w>\": 34854,\n  \"ritu\": 13391,\n  \"ritual</w>\": 19712,\n  \"rituals</w>\": 31145,\n  \"ritz\": 39151,\n  \"ritz</w>\": 25627,\n  \"rium</w>\": 33884,\n  \"riv\": 25113,\n  \"rival\": 13412,\n  \"rival</w>\": 15629,\n  \"rivalry</w>\": 19511,\n  \"rivals</w>\": 15135,\n  \"rive\": 27588,\n  \"rive</w>\": 34917,\n  \"river\": 5239,\n  \"river</w>\": 2473,\n  \"rivera</w>\": 18275,\n  \"riverdale</w>\": 28304,\n  \"riverfront</w>\": 44439,\n  \"rivers</w>\": 10723,\n  \"riverside</w>\": 15809,\n  \"riveting</w>\": 44024,\n  \"riviera</w>\": 25851,\n  \"rix\": 43407,\n  \"rix</w>\": 9483,\n  \"riya</w>\": 36908,\n  \"riyad\": 31564,\n  \"riyadh</w>\": 33577,\n  \"riz\": 18426,\n  \"riz</w>\": 35411,\n  \"rizal</w>\": 41555,\n  \"rizio</w>\": 40191,\n  \"rizz\": 34826,\n  \"rizzo</w>\": 49076,\n  \"rj\": 26016,\n  \"rj</w>\": 20949,\n  \"rk\": 38725,\n  \"rk</w>\": 21422,\n  \"rl\": 18041,\n  \"rl</w>\": 14590,\n  \"rlly</w>\": 43222,\n  \"rly</w>\": 25954,\n  \"rm\": 20202,\n  \"rm</w>\": 8431,\n  \"rmb</w>\": 49097,\n  \"rms</w>\": 40529,\n  \"rn\": 13206,\n  \"rn</w>\": 7666,\n  \"rna</w>\": 24566,\n  \"rnb</w>\": 31556,\n  \"rnc</w>\": 35309,\n  \"rnli</w>\": 29748,\n  \"ro\": 532,\n  \"ro</w>\": 2795,\n  \"roa\": 8313,\n  \"roach</w>\": 31073,\n  \"road\": 4370,\n  \"road</w>\": 1759,\n  \"roadhouse</w>\": 47891,\n  \"roadmap</w>\": 30111,\n  \"roads</w>\": 6189,\n  \"roadsafety</w>\": 39992,\n  \"roadshow</w>\": 21168,\n  \"roadside</w>\": 26928,\n  \"roadster</w>\": 28920,\n  \"roadto\": 24681,\n  \"roadtrip</w>\": 15094,\n  \"roadway</w>\": 42744,\n  \"roam</w>\": 34045,\n  \"roaming</w>\": 29240,\n  \"roano\": 34184,\n  \"roanoke</w>\": 36587,\n  \"roar\": 34193,\n  \"roar</w>\": 18483,\n  \"roaring</w>\": 26428,\n  \"roast</w>\": 11404,\n  \"roasted</w>\": 10479,\n  \"roasting</w>\": 32228,\n  \"rob\": 2668,\n  \"rob</w>\": 6442,\n  \"robb\": 14059,\n  \"robb</w>\": 39673,\n  \"robbed</w>\": 24163,\n  \"robber</w>\": 35545,\n  \"robbers</w>\": 40852,\n  \"robbery</w>\": 16393,\n  \"robbi\": 44898,\n  \"robbie\": 37200,\n  \"robbie</w>\": 15970,\n  \"robbing</w>\": 47569,\n  \"robbins</w>\": 23461,\n  \"robby</w>\": 44128,\n  \"robe</w>\": 23116,\n  \"rober\": 4532,\n  \"robert\": 8811,\n  \"robert</w>\": 3929,\n  \"roberta</w>\": 43373,\n  \"roberto\": 42645,\n  \"roberto</w>\": 16227,\n  \"roberts</w>\": 10366,\n  \"robertson</w>\": 17643,\n  \"robes</w>\": 29304,\n  \"robi</w>\": 16743,\n  \"robin\": 6681,\n  \"robin</w>\": 7988,\n  \"robins</w>\": 35502,\n  \"robinson</w>\": 8523,\n  \"robles</w>\": 47646,\n  \"roblo\": 27481,\n  \"roblox</w>\": 37798,\n  \"robo\": 4672,\n  \"robo</w>\": 36057,\n  \"robot\": 46089,\n  \"robot</w>\": 8797,\n  \"robotic</w>\": 23975,\n  \"robotics</w>\": 13546,\n  \"robots</w>\": 13473,\n  \"robson</w>\": 31113,\n  \"robust</w>\": 22780,\n  \"robyn</w>\": 34533,\n  \"roc\": 3268,\n  \"roc</w>\": 13776,\n  \"rocco</w>\": 30009,\n  \"roch\": 23788,\n  \"rochdale</w>\": 41880,\n  \"roche</w>\": 31776,\n  \"rochelle</w>\": 40161,\n  \"rochester</w>\": 18057,\n  \"rock\": 2640,\n  \"rock</w>\": 2172,\n  \"rockab\": 39353,\n  \"rockabilly</w>\": 45019,\n  \"rocke\": 19914,\n  \"rocked</w>\": 16116,\n  \"rockefeller</w>\": 35476,\n  \"rocker</w>\": 29008,\n  \"rockers</w>\": 32338,\n  \"rocket\": 25435,\n  \"rocket</w>\": 8383,\n  \"rockets</w>\": 13292,\n  \"rockford</w>\": 41039,\n  \"rockies</w>\": 20621,\n  \"rockin</w>\": 12073,\n  \"rocking</w>\": 7081,\n  \"rockn\": 24442,\n  \"rocknroll</w>\": 27840,\n  \"rocks</w>\": 6135,\n  \"rockstar\": 23603,\n  \"rockstar</w>\": 18000,\n  \"rockstargames</w>\": 27516,\n  \"rockstars</w>\": 46639,\n  \"rockthe\": 49363,\n  \"rockwell</w>\": 34747,\n  \"rocky\": 33481,\n  \"rocky</w>\": 9648,\n  \"rod\": 9712,\n  \"rod</w>\": 8291,\n  \"roddy</w>\": 42332,\n  \"rode</w>\": 18449,\n  \"rodeo</w>\": 18250,\n  \"rodgers</w>\": 17612,\n  \"rodi\": 49100,\n  \"rodney</w>\": 21753,\n  \"rodri\": 11053,\n  \"rodrigo</w>\": 33944,\n  \"rodriguez</w>\": 14057,\n  \"rods</w>\": 28618,\n  \"roe\": 27671,\n  \"roe</w>\": 9996,\n  \"rof\": 33029,\n  \"rofl</w>\": 48228,\n  \"roft</w>\": 45212,\n  \"rog\": 34269,\n  \"rog</w>\": 34017,\n  \"rogen</w>\": 23380,\n  \"roger\": 13929,\n  \"roger</w>\": 7735,\n  \"rogerfederer</w>\": 40182,\n  \"rogers</w>\": 10661,\n  \"rogue\": 32575,\n  \"rogue</w>\": 15162,\n  \"roh\": 14933,\n  \"roh</w>\": 29840,\n  \"rohan</w>\": 39848,\n  \"rohing\": 23600,\n  \"rohingya</w>\": 26146,\n  \"rohit\": 44649,\n  \"rohit</w>\": 24299,\n  \"roi</w>\": 21877,\n  \"rok</w>\": 36807,\n  \"rol\": 3393,\n  \"rol</w>\": 7818,\n  \"roland\": 33713,\n  \"roland</w>\": 19569,\n  \"role\": 18485,\n  \"role</w>\": 3414,\n  \"roles</w>\": 11871,\n  \"rolex</w>\": 21093,\n  \"rolf</w>\": 48606,\n  \"roll\": 4711,\n  \"roll</w>\": 3341,\n  \"rolled</w>\": 11982,\n  \"roller\": 21034,\n  \"roller</w>\": 12342,\n  \"rollercoaster</w>\": 38248,\n  \"rollers</w>\": 36941,\n  \"rollin</w>\": 27545,\n  \"rolling\": 24250,\n  \"rolling</w>\": 6347,\n  \"rollingstones</w>\": 41309,\n  \"rollins</w>\": 27724,\n  \"rollout</w>\": 47710,\n  \"rollover</w>\": 39214,\n  \"rolls</w>\": 8614,\n  \"rolltide</w>\": 28101,\n  \"rom\": 11377,\n  \"rom</w>\": 19205,\n  \"roma\": 44134,\n  \"roma</w>\": 11631,\n  \"romain</w>\": 48897,\n  \"roman\": 4416,\n  \"roman</w>\": 7370,\n  \"romance</w>\": 7215,\n  \"romania</w>\": 15884,\n  \"romanian</w>\": 30866,\n  \"romano</w>\": 38409,\n  \"romans</w>\": 23066,\n  \"romantic\": 41457,\n  \"romantic</w>\": 8821,\n  \"rome\": 9406,\n  \"rome</w>\": 5243,\n  \"romeo</w>\": 14429,\n  \"romero</w>\": 23694,\n  \"romney</w>\": 19287,\n  \"romo</w>\": 32248,\n  \"romper</w>\": 43699,\n  \"ron\": 2393,\n  \"ron</w>\": 3372,\n  \"rona</w>\": 42385,\n  \"ronal\": 46194,\n  \"ronald</w>\": 15683,\n  \"ronaldo</w>\": 13463,\n  \"ronan</w>\": 34971,\n  \"rond\": 31935,\n  \"ronda</w>\": 37436,\n  \"rondo</w>\": 43756,\n  \"rone\": 48082,\n  \"rone</w>\": 32763,\n  \"roni</w>\": 47234,\n  \"ronnie\": 45257,\n  \"ronnie</w>\": 16421,\n  \"rons</w>\": 19536,\n  \"ront</w>\": 48881,\n  \"roo\": 1249,\n  \"roo</w>\": 31227,\n  \"rood</w>\": 38007,\n  \"roof\": 9120,\n  \"roof</w>\": 6449,\n  \"roofing</w>\": 24415,\n  \"roofs</w>\": 34635,\n  \"rooftop</w>\": 16319,\n  \"rook</w>\": 35918,\n  \"rookie</w>\": 9771,\n  \"rookies</w>\": 31917,\n  \"room\": 8845,\n  \"room</w>\": 1530,\n  \"roomie</w>\": 36851,\n  \"roommate</w>\": 19825,\n  \"roommates</w>\": 37323,\n  \"rooms</w>\": 6328,\n  \"rooney</w>\": 17712,\n  \"roos</w>\": 32938,\n  \"roosevel\": 17644,\n  \"roosevelt</w>\": 18488,\n  \"rooster\": 46263,\n  \"rooster</w>\": 30926,\n  \"roosters</w>\": 43693,\n  \"root\": 25930,\n  \"root</w>\": 9728,\n  \"rooted</w>\": 30428,\n  \"rooting</w>\": 25523,\n  \"roots</w>\": 8084,\n  \"rop</w>\": 43401,\n  \"rope</w>\": 9953,\n  \"ropes</w>\": 30506,\n  \"ror\": 8668,\n  \"ror</w>\": 2843,\n  \"rors</w>\": 12072,\n  \"rory\": 42804,\n  \"rory</w>\": 17813,\n  \"ros\": 5288,\n  \"ros</w>\": 6930,\n  \"rosa</w>\": 14393,\n  \"rosal\": 30397,\n  \"rosario</w>\": 33640,\n  \"rosary</w>\": 33098,\n  \"rosberg</w>\": 46037,\n  \"rose\": 6146,\n  \"rose</w>\": 3568,\n  \"roseanne</w>\": 47528,\n  \"rosel\": 33616,\n  \"rosemary</w>\": 19472,\n  \"rosen\": 13214,\n  \"rosen</w>\": 36424,\n  \"rosenberg</w>\": 43558,\n  \"rosenthal</w>\": 46990,\n  \"roses</w>\": 9061,\n  \"rosetta</w>\": 43800,\n  \"rosewood</w>\": 38686,\n  \"rosie\": 43049,\n  \"rosie</w>\": 16888,\n  \"ross\": 8801,\n  \"ross</w>\": 2158,\n  \"rosse</w>\": 11602,\n  \"rossi</w>\": 24817,\n  \"rosso</w>\": 33023,\n  \"roster</w>\": 12487,\n  \"roswell</w>\": 45116,\n  \"rosy</w>\": 46705,\n  \"rosÃ©</w>\": 28006,\n  \"rot\": 10055,\n  \"rot</w>\": 9643,\n  \"rotar\": 45959,\n  \"rotary</w>\": 14654,\n  \"rotating</w>\": 32265,\n  \"rotation</w>\": 18089,\n  \"rotc</w>\": 32252,\n  \"roth\": 17741,\n  \"roth</w>\": 19139,\n  \"rother\": 23174,\n  \"rotherham</w>\": 37687,\n  \"rothschild</w>\": 45089,\n  \"roti</w>\": 46940,\n  \"roto\": 34698,\n  \"rotor</w>\": 42991,\n  \"rots</w>\": 16642,\n  \"rott\": 34806,\n  \"rotten</w>\": 24324,\n  \"rotter\": 22614,\n  \"rotterdam</w>\": 23422,\n  \"rotun\": 42970,\n  \"rou\": 2964,\n  \"rou</w>\": 34783,\n  \"roud</w>\": 28375,\n  \"rouge</w>\": 16209,\n  \"rough\": 11699,\n  \"rough</w>\": 8511,\n  \"roughly</w>\": 21910,\n  \"roughs</w>\": 37598,\n  \"rouhani</w>\": 39912,\n  \"roulette</w>\": 39930,\n  \"roun\": 5602,\n  \"round\": 9403,\n  \"round</w>\": 2522,\n  \"roundabout</w>\": 29953,\n  \"rounded</w>\": 26973,\n  \"rounder</w>\": 37024,\n  \"rounding</w>\": 40208,\n  \"rounds</w>\": 11242,\n  \"roundtable</w>\": 19386,\n  \"roundup</w>\": 17503,\n  \"roup</w>\": 29220,\n  \"rourke</w>\": 38753,\n  \"rous\": 33645,\n  \"rous</w>\": 34531,\n  \"rousey</w>\": 46267,\n  \"rout\": 7502,\n  \"rout</w>\": 41778,\n  \"route</w>\": 5261,\n  \"router</w>\": 29962,\n  \"routes</w>\": 14923,\n  \"routine</w>\": 12319,\n  \"routines</w>\": 44074,\n  \"routing</w>\": 44086,\n  \"roux</w>\": 43416,\n  \"rov</w>\": 23971,\n  \"rove</w>\": 30130,\n  \"rover</w>\": 12776,\n  \"rovers</w>\": 16373,\n  \"row\": 5275,\n  \"row</w>\": 1044,\n  \"rowan</w>\": 26240,\n  \"rowdy</w>\": 32141,\n  \"rowe</w>\": 28323,\n  \"rowed</w>\": 22615,\n  \"rower</w>\": 43345,\n  \"rowers</w>\": 41806,\n  \"rowing</w>\": 12807,\n  \"rowland</w>\": 33037,\n  \"rowley</w>\": 48793,\n  \"rowling</w>\": 29371,\n  \"rown\": 22287,\n  \"rown</w>\": 25060,\n  \"rows</w>\": 9409,\n  \"rox\": 14111,\n  \"rox</w>\": 41033,\n  \"roxy</w>\": 28093,\n  \"roy\": 2128,\n  \"roy</w>\": 6354,\n  \"royal\": 6691,\n  \"royal</w>\": 3853,\n  \"royale</w>\": 20630,\n  \"royalnavy</w>\": 41545,\n  \"royals</w>\": 13335,\n  \"royalties</w>\": 48660,\n  \"royalty</w>\": 18296,\n  \"royalwedding</w>\": 27461,\n  \"royce</w>\": 18444,\n  \"royd</w>\": 41476,\n  \"royo</w>\": 39357,\n  \"roz\": 28989,\n  \"roz</w>\": 37250,\n  \"rp\": 17305,\n  \"rp</w>\": 8174,\n  \"rpa</w>\": 41872,\n  \"rpg</w>\": 12445,\n  \"rpm</w>\": 23715,\n  \"rps</w>\": 49215,\n  \"rr\": 5311,\n  \"rr</w>\": 9126,\n  \"rrp</w>\": 36967,\n  \"rrr</w>\": 18267,\n  \"rrrr\": 25561,\n  \"rrrr</w>\": 34444,\n  \"rs\": 6978,\n  \"rs</w>\": 1724,\n  \"rsa</w>\": 29437,\n  \"rsc</w>\": 48524,\n  \"rsd</w>\": 34426,\n  \"rsi</w>\": 39046,\n  \"rsl</w>\": 44752,\n  \"rsp\": 16381,\n  \"rspb\": 38508,\n  \"rspb</w>\": 36727,\n  \"rspca</w>\": 45643,\n  \"rss\": 46466,\n  \"rss</w>\": 22350,\n  \"rstats</w>\": 38700,\n  \"rsvp</w>\": 9774,\n  \"rt\": 8959,\n  \"rt</w>\": 8991,\n  \"rtc</w>\": 31648,\n  \"rte\": 33822,\n  \"rte</w>\": 23322,\n  \"rtg</w>\": 22028,\n  \"rti</w>\": 47549,\n  \"rtr</w>\": 43999,\n  \"rts</w>\": 8496,\n  \"rtw</w>\": 34673,\n  \"ru\": 681,\n  \"ru</w>\": 13735,\n  \"rub\": 15862,\n  \"rub</w>\": 22586,\n  \"rubb\": 19597,\n  \"rubbed</w>\": 45239,\n  \"rubber\": 31131,\n  \"rubber</w>\": 11331,\n  \"rubbing</w>\": 41262,\n  \"rubbish</w>\": 21108,\n  \"rubble</w>\": 42230,\n  \"ruben\": 44058,\n  \"ruben</w>\": 29722,\n  \"rubi\": 27856,\n  \"rubin</w>\": 34128,\n  \"rubio</w>\": 24244,\n  \"rubs</w>\": 43422,\n  \"ruby\": 24552,\n  \"ruby</w>\": 11493,\n  \"ruck\": 27449,\n  \"rucker</w>\": 45402,\n  \"rud\": 35256,\n  \"rudd</w>\": 31836,\n  \"rude</w>\": 16548,\n  \"rudi\": 48360,\n  \"rudol\": 40927,\n  \"rudolf</w>\": 46835,\n  \"rudolph</w>\": 30119,\n  \"rudy\": 38226,\n  \"rudy</w>\": 22131,\n  \"rue\": 38024,\n  \"rue</w>\": 19276,\n  \"rufc</w>\": 45084,\n  \"ruff\": 28177,\n  \"ruff</w>\": 30304,\n  \"rufus</w>\": 39322,\n  \"rug\": 4217,\n  \"rug</w>\": 19220,\n  \"rugby\": 15091,\n  \"rugby</w>\": 4964,\n  \"rugbyleague</w>\": 44419,\n  \"ruger</w>\": 48655,\n  \"rugged</w>\": 25225,\n  \"rugs</w>\": 29946,\n  \"rui</w>\": 46974,\n  \"ruin</w>\": 16256,\n  \"ruined</w>\": 17231,\n  \"ruining</w>\": 29952,\n  \"ruins</w>\": 16094,\n  \"ruiz</w>\": 27873,\n  \"ruk</w>\": 46628,\n  \"rukh\": 43075,\n  \"rukh</w>\": 27631,\n  \"rule\": 31643,\n  \"rule</w>\": 6175,\n  \"ruled</w>\": 16324,\n  \"ruler</w>\": 26286,\n  \"rulers</w>\": 45328,\n  \"rules</w>\": 5272,\n  \"ruling</w>\": 14690,\n  \"rum\": 9223,\n  \"rum</w>\": 11233,\n  \"rumb\": 42432,\n  \"rumble</w>\": 18900,\n  \"rumi</w>\": 31428,\n  \"rumor</w>\": 22254,\n  \"rumored</w>\": 36694,\n  \"rumors</w>\": 16160,\n  \"rumour</w>\": 34296,\n  \"rumours</w>\": 20716,\n  \"rump</w>\": 29366,\n  \"run\": 1639,\n  \"run</w>\": 1934,\n  \"runaway</w>\": 28851,\n  \"runchat</w>\": 25838,\n  \"rundown</w>\": 41100,\n  \"rune\": 33882,\n  \"rune</w>\": 49244,\n  \"runner\": 37370,\n  \"runner</w>\": 7913,\n  \"runners</w>\": 10571,\n  \"runnin</w>\": 43130,\n  \"running\": 24451,\n  \"running</w>\": 2761,\n  \"runoff</w>\": 38564,\n  \"runs</w>\": 5586,\n  \"runway</w>\": 13927,\n  \"rup\": 7996,\n  \"rup</w>\": 14980,\n  \"rupaul</w>\": 44211,\n  \"rupee</w>\": 43916,\n  \"rupees</w>\": 44110,\n  \"rupert</w>\": 25625,\n  \"rupt</w>\": 23055,\n  \"ruption</w>\": 35403,\n  \"rural\": 28801,\n  \"rural</w>\": 8737,\n  \"rus\": 35811,\n  \"rus</w>\": 5998,\n  \"rush\": 12148,\n  \"rush</w>\": 6973,\n  \"rushed</w>\": 28104,\n  \"rusher</w>\": 48745,\n  \"rushes</w>\": 47217,\n  \"rushing</w>\": 20284,\n  \"russ\": 6285,\n  \"russ</w>\": 20764,\n  \"russell\": 26122,\n  \"russell</w>\": 8150,\n  \"russi\": 2600,\n  \"russia</w>\": 4018,\n  \"russian\": 30731,\n  \"russian</w>\": 4868,\n  \"russians</w>\": 25413,\n  \"russo</w>\": 30679,\n  \"rust\": 28682,\n  \"rust</w>\": 14212,\n  \"rustic</w>\": 19822,\n  \"rusty\": 43966,\n  \"rusty</w>\": 22646,\n  \"rut\": 14973,\n  \"rut</w>\": 39102,\n  \"rutger\": 49029,\n  \"rutgers</w>\": 28934,\n  \"ruth\": 15798,\n  \"ruth</w>\": 12029,\n  \"ruther\": 26676,\n  \"rutherford</w>\": 31070,\n  \"ruthless</w>\": 36063,\n  \"rutland</w>\": 46024,\n  \"ruto</w>\": 43702,\n  \"ruz</w>\": 23275,\n  \"rv\": 17135,\n  \"rv</w>\": 17951,\n  \"rva</w>\": 24278,\n  \"rw\": 9085,\n  \"rw</w>\": 22926,\n  \"rwa</w>\": 47452,\n  \"rwand\": 31758,\n  \"rwanda</w>\": 15427,\n  \"rwby</w>\": 39698,\n  \"rwc</w>\": 32321,\n  \"rx\": 41188,\n  \"rx</w>\": 15945,\n  \"ry\": 1511,\n  \"ry</w>\": 913,\n  \"ryan\": 8682,\n  \"ryan</w>\": 4053,\n  \"ryanair</w>\": 43526,\n  \"ryder\": 43564,\n  \"ryder</w>\": 21805,\n  \"rye\": 24015,\n  \"rye</w>\": 17409,\n  \"rying</w>\": 7838,\n  \"ryn</w>\": 37728,\n  \"ryo\": 24460,\n  \"rys</w>\": 21654,\n  \"ryu\": 46656,\n  \"ryu</w>\": 34604,\n  \"rÃ©\": 29106,\n  \"s\": 82,\n  \"s</w>\": 338,\n  \"sa\": 774,\n  \"sa</w>\": 1344,\n  \"saa</w>\": 13429,\n  \"saab</w>\": 27158,\n  \"saad</w>\": 36530,\n  \"saas</w>\": 25761,\n  \"saat\": 33151,\n  \"sab\": 3233,\n  \"sab</w>\": 23213,\n  \"saba</w>\": 38344,\n  \"sabah</w>\": 32854,\n  \"saban</w>\": 41620,\n  \"sabar\": 47102,\n  \"sabbath</w>\": 26008,\n  \"sabc</w>\": 30010,\n  \"sabcnews</w>\": 41093,\n  \"saber\": 46822,\n  \"saber</w>\": 25624,\n  \"sabha</w>\": 23431,\n  \"sabi</w>\": 47073,\n  \"sabine</w>\": 44062,\n  \"sable</w>\": 19224,\n  \"sabot\": 30700,\n  \"sabotage</w>\": 40496,\n  \"sabre</w>\": 35110,\n  \"sabres</w>\": 29620,\n  \"sabrin\": 37029,\n  \"sabrina</w>\": 24994,\n  \"sac\": 3632,\n  \"sac</w>\": 12905,\n  \"sach\": 30168,\n  \"sacha</w>\": 49010,\n  \"sachin\": 47527,\n  \"sachin</w>\": 30297,\n  \"sachs</w>\": 31451,\n  \"sack\": 28964,\n  \"sack</w>\": 14979,\n  \"sacked</w>\": 27519,\n  \"sacks</w>\": 26441,\n  \"sacram\": 13334,\n  \"sacramento</w>\": 16065,\n  \"sacred\": 40612,\n  \"sacred</w>\": 12477,\n  \"sacri\": 15283,\n  \"sacrif\": 12117,\n  \"sacrific\": 16919,\n  \"sacrifice</w>\": 12556,\n  \"sacrificed</w>\": 31116,\n  \"sacrifices</w>\": 28858,\n  \"sacrificing</w>\": 48146,\n  \"sad\": 2810,\n  \"sad</w>\": 3719,\n  \"saddened</w>\": 27720,\n  \"saddest</w>\": 34925,\n  \"saddle\": 30469,\n  \"saddle</w>\": 20283,\n  \"sade</w>\": 27429,\n  \"sadh\": 40955,\n  \"sadi\": 22207,\n  \"sadie</w>\": 30333,\n  \"sadiq</w>\": 44107,\n  \"sadler</w>\": 45600,\n  \"sadly</w>\": 11603,\n  \"sadness</w>\": 20399,\n  \"sae\": 38633,\n  \"sae</w>\": 34883,\n  \"saeed</w>\": 29745,\n  \"saf\": 2125,\n  \"saf</w>\": 25760,\n  \"safar\": 23443,\n  \"safari</w>\": 14091,\n  \"safarilive</w>\": 34816,\n  \"safc</w>\": 27998,\n  \"safe\": 2901,\n  \"safe</w>\": 2996,\n  \"safeguard</w>\": 42249,\n  \"safeguarding</w>\": 47451,\n  \"safely</w>\": 11513,\n  \"safer\": 40124,\n  \"safer</w>\": 15504,\n  \"safest</w>\": 38973,\n  \"safety\": 19050,\n  \"safety</w>\": 3406,\n  \"safetyfirst</w>\": 43608,\n  \"saffron</w>\": 27529,\n  \"sag\": 6609,\n  \"sag</w>\": 30048,\n  \"saga</w>\": 15758,\n  \"sagan</w>\": 37193,\n  \"sagar</w>\": 42518,\n  \"sage\": 25800,\n  \"sage</w>\": 7509,\n  \"sages</w>\": 25979,\n  \"sagin\": 47097,\n  \"sagitt\": 44685,\n  \"sagu\": 44708,\n  \"sah\": 30943,\n  \"sah</w>\": 26342,\n  \"saha\": 36062,\n  \"sahara</w>\": 24599,\n  \"saharan</w>\": 44255,\n  \"sahi\": 24608,\n  \"sahib</w>\": 34150,\n  \"sai\": 16048,\n  \"sai</w>\": 10886,\n  \"said\": 40319,\n  \"said</w>\": 1946,\n  \"saif</w>\": 44164,\n  \"saig\": 36328,\n  \"saigon</w>\": 41081,\n  \"sail\": 7528,\n  \"sail</w>\": 12156,\n  \"sailed</w>\": 43047,\n  \"sailing</w>\": 11003,\n  \"sailor\": 28002,\n  \"sailor</w>\": 16076,\n  \"sailormoon</w>\": 40673,\n  \"sailors</w>\": 25355,\n  \"sails</w>\": 27526,\n  \"sain\": 21226,\n  \"sain</w>\": 40378,\n  \"sains\": 24860,\n  \"sainsbury</w>\": 45879,\n  \"sainsburys</w>\": 36934,\n  \"saint\": 11274,\n  \"saint</w>\": 5599,\n  \"saints</w>\": 8769,\n  \"saintsfc</w>\": 31102,\n  \"sair\": 46600,\n  \"sair</w>\": 30971,\n  \"saire</w>\": 28087,\n  \"saison</w>\": 33256,\n  \"sait\": 48008,\n  \"saj\": 33580,\n  \"sak\": 11511,\n  \"sak</w>\": 35900,\n  \"saka</w>\": 33609,\n  \"sake</w>\": 12874,\n  \"sakh</w>\": 43945,\n  \"saki</w>\": 40514,\n  \"saku\": 37550,\n  \"sakura</w>\": 24162,\n  \"sal\": 980,\n  \"sal</w>\": 6126,\n  \"sala</w>\": 17300,\n  \"salaam</w>\": 46773,\n  \"salad</w>\": 6188,\n  \"salads</w>\": 30948,\n  \"salah</w>\": 22516,\n  \"salam\": 19007,\n  \"salam</w>\": 33963,\n  \"salamat</w>\": 44696,\n  \"salami</w>\": 46885,\n  \"salaries</w>\": 33132,\n  \"salary</w>\": 16312,\n  \"salazar</w>\": 45988,\n  \"sale\": 17786,\n  \"sale</w>\": 1690,\n  \"saleh</w>\": 38353,\n  \"salem\": 48194,\n  \"salem</w>\": 16884,\n  \"sales\": 13347,\n  \"sales</w>\": 3765,\n  \"salesforce</w>\": 22680,\n  \"salesman</w>\": 37633,\n  \"salford</w>\": 25629,\n  \"sali\": 15411,\n  \"salim</w>\": 42760,\n  \"salinas</w>\": 41990,\n  \"saline</w>\": 46918,\n  \"salis\": 20667,\n  \"salis</w>\": 39378,\n  \"salisbury</w>\": 24763,\n  \"sall\": 27122,\n  \"sall</w>\": 20883,\n  \"salle</w>\": 23738,\n  \"sally\": 29542,\n  \"sally</w>\": 13349,\n  \"salman\": 13754,\n  \"salman</w>\": 16219,\n  \"salmankhan</w>\": 15177,\n  \"salmon\": 37040,\n  \"salmon</w>\": 9137,\n  \"salom\": 38268,\n  \"salon\": 33916,\n  \"salon</w>\": 11105,\n  \"saloon</w>\": 26038,\n  \"sals</w>\": 16307,\n  \"salsa</w>\": 16442,\n  \"salt\": 12763,\n  \"salt</w>\": 6611,\n  \"salted</w>\": 26313,\n  \"saltlife</w>\": 47809,\n  \"salts</w>\": 40559,\n  \"saltwater</w>\": 43616,\n  \"salty</w>\": 20678,\n  \"salu\": 31711,\n  \"salud</w>\": 46867,\n  \"salut\": 44998,\n  \"salute\": 44908,\n  \"salute</w>\": 9747,\n  \"salutes</w>\": 32762,\n  \"salv\": 8299,\n  \"salvador</w>\": 20874,\n  \"salvage</w>\": 33131,\n  \"salvation</w>\": 19534,\n  \"salvatore</w>\": 38772,\n  \"salz\": 33594,\n  \"salzburg</w>\": 43396,\n  \"sam\": 1644,\n  \"sam</w>\": 3730,\n  \"sama</w>\": 19272,\n  \"samanth\": 11465,\n  \"samantha</w>\": 15466,\n  \"samanthap\": 38266,\n  \"samanthaprabhu</w>\": 38643,\n  \"samar\": 21820,\n  \"samaritan</w>\": 45495,\n  \"samba</w>\": 37190,\n  \"same\": 23062,\n  \"same</w>\": 2208,\n  \"samheughan</w>\": 36255,\n  \"sami\": 48400,\n  \"sami</w>\": 24322,\n  \"sammy\": 31091,\n  \"sammy</w>\": 16758,\n  \"samo\": 30006,\n  \"samoa</w>\": 34932,\n  \"samp\": 31225,\n  \"sample</w>\": 9542,\n  \"sampler</w>\": 40629,\n  \"samples</w>\": 13387,\n  \"sampling</w>\": 19522,\n  \"sampson</w>\": 39983,\n  \"sams</w>\": 44667,\n  \"samson</w>\": 34659,\n  \"samsun\": 47875,\n  \"samsung\": 35369,\n  \"samsung</w>\": 8115,\n  \"samu\": 7646,\n  \"samuel\": 30612,\n  \"samuel</w>\": 12787,\n  \"samurai</w>\": 21739,\n  \"san\": 1489,\n  \"san</w>\": 2223,\n  \"sana</w>\": 19434,\n  \"sanantonio</w>\": 34714,\n  \"sanat\": 29091,\n  \"sanatomy</w>\": 36052,\n  \"sanc\": 7398,\n  \"sance</w>\": 15930,\n  \"sanchez</w>\": 13971,\n  \"sanctioned</w>\": 43032,\n  \"sanctions</w>\": 17790,\n  \"sanctu\": 12712,\n  \"sanctuary</w>\": 14044,\n  \"sand\": 2147,\n  \"sand</w>\": 5094,\n  \"sandal\": 36445,\n  \"sandal</w>\": 42185,\n  \"sandals</w>\": 20731,\n  \"sandalwood</w>\": 47502,\n  \"sandeep</w>\": 46973,\n  \"sander</w>\": 34111,\n  \"sanders</w>\": 10429,\n  \"sanderson</w>\": 36198,\n  \"sandi\": 44249,\n  \"sandiego\": 45997,\n  \"sandiego</w>\": 15793,\n  \"sandman</w>\": 45730,\n  \"sando\": 35921,\n  \"sandoval</w>\": 44157,\n  \"sandra\": 33733,\n  \"sandra</w>\": 13415,\n  \"sandro</w>\": 42389,\n  \"sands</w>\": 5936,\n  \"sandstone</w>\": 36796,\n  \"sandwich\": 17050,\n  \"sandwich</w>\": 8687,\n  \"sandwiches</w>\": 19667,\n  \"sandy\": 29679,\n  \"sandy</w>\": 10355,\n  \"sane</w>\": 23419,\n  \"sanford</w>\": 32330,\n  \"sanfrancisco</w>\": 20254,\n  \"sang\": 13235,\n  \"sang</w>\": 11684,\n  \"sange\": 12466,\n  \"sangria</w>\": 42665,\n  \"sani\": 39137,\n  \"sani</w>\": 34492,\n  \"sanitary</w>\": 33842,\n  \"sanitation</w>\": 25414,\n  \"saniti\": 43987,\n  \"sanity</w>\": 30517,\n  \"sanjay\": 31712,\n  \"sanjay</w>\": 25796,\n  \"sanje\": 40405,\n  \"sanjose</w>\": 45971,\n  \"sank</w>\": 43692,\n  \"sano</w>\": 34053,\n  \"sans</w>\": 16982,\n  \"sansk\": 39689,\n  \"sanskrit</w>\": 48083,\n  \"sant\": 8356,\n  \"sant</w>\": 23120,\n  \"santa\": 22175,\n  \"santa</w>\": 4555,\n  \"santac\": 28876,\n  \"santam\": 45627,\n  \"santana</w>\": 27033,\n  \"santander</w>\": 46476,\n  \"santi\": 13856,\n  \"santiago</w>\": 16568,\n  \"santo\": 29631,\n  \"santo</w>\": 18400,\n  \"santor\": 28448,\n  \"santorini</w>\": 39573,\n  \"santos</w>\": 16582,\n  \"sany\": 47679,\n  \"sao</w>\": 28026,\n  \"sap\": 8089,\n  \"sap</w>\": 11591,\n  \"sapi\": 40016,\n  \"sapp\": 13427,\n  \"sapp</w>\": 40729,\n  \"sapphire</w>\": 22044,\n  \"sar\": 1808,\n  \"sar</w>\": 9424,\n  \"sara\": 37196,\n  \"sara</w>\": 10063,\n  \"sarab\": 40716,\n  \"sarac\": 35722,\n  \"sarah\": 9086,\n  \"sarah</w>\": 5327,\n  \"saraj\": 42592,\n  \"sarajevo</w>\": 48211,\n  \"saras\": 20373,\n  \"sarasota</w>\": 31990,\n  \"sarato\": 24845,\n  \"saratoga</w>\": 29496,\n  \"sarawak</w>\": 47331,\n  \"sarcasm</w>\": 37246,\n  \"sarcastic</w>\": 48639,\n  \"sardar</w>\": 41786,\n  \"sarde\": 43925,\n  \"sardin\": 27383,\n  \"sardinia</w>\": 41025,\n  \"sare\": 13051,\n  \"saree</w>\": 30860,\n  \"sargent</w>\": 34864,\n  \"sari\": 42327,\n  \"sari</w>\": 20261,\n  \"saries</w>\": 47586,\n  \"sarkar</w>\": 30673,\n  \"sarko\": 33658,\n  \"sarkodie</w>\": 42848,\n  \"sarmy</w>\": 20954,\n  \"sart</w>\": 33006,\n  \"sary</w>\": 15398,\n  \"sas\": 3960,\n  \"sas</w>\": 5235,\n  \"sash</w>\": 35656,\n  \"sasha\": 46078,\n  \"sasha</w>\": 20894,\n  \"sasia</w>\": 44751,\n  \"sask\": 47091,\n  \"sask</w>\": 30416,\n  \"saskat\": 17102,\n  \"saskatchewan</w>\": 23899,\n  \"saskatoon</w>\": 31128,\n  \"sass</w>\": 31351,\n  \"sassy</w>\": 20827,\n  \"sat\": 1382,\n  \"sat</w>\": 3279,\n  \"sata</w>\": 41520,\n  \"satan</w>\": 19446,\n  \"satanic</w>\": 38224,\n  \"satchel</w>\": 45908,\n  \"sate</w>\": 35749,\n  \"satell\": 9031,\n  \"satellite</w>\": 10316,\n  \"satellites</w>\": 28483,\n  \"sath\": 29675,\n  \"sathletics</w>\": 30154,\n  \"sati\": 7038,\n  \"satin</w>\": 21803,\n  \"sation</w>\": 23674,\n  \"sations</w>\": 31232,\n  \"satire</w>\": 29875,\n  \"satis\": 9906,\n  \"satisf\": 22941,\n  \"satisfaction</w>\": 19925,\n  \"satisfied</w>\": 18101,\n  \"satisfy</w>\": 29444,\n  \"satisfying</w>\": 23755,\n  \"sato</w>\": 34376,\n  \"satu</w>\": 45283,\n  \"satur\": 1634,\n  \"saturated</w>\": 32466,\n  \"saturday\": 12537,\n  \"saturday</w>\": 1748,\n  \"saturdaymorning</w>\": 29053,\n  \"saturdaymotivation</w>\": 40843,\n  \"saturdays</w>\": 18930,\n  \"saturn</w>\": 17312,\n  \"saty\": 39426,\n  \"sau\": 2096,\n  \"sau</w>\": 19455,\n  \"sauce</w>\": 5520,\n  \"saucer</w>\": 42272,\n  \"sauces</w>\": 40367,\n  \"saucy</w>\": 46684,\n  \"saudi\": 24511,\n  \"saudi</w>\": 8548,\n  \"saudiarabia</w>\": 28680,\n  \"sauer\": 46333,\n  \"saul\": 47623,\n  \"saul</w>\": 23252,\n  \"sault</w>\": 40361,\n  \"sauna</w>\": 35460,\n  \"saunders</w>\": 23794,\n  \"saur</w>\": 13227,\n  \"saura\": 46532,\n  \"saurus</w>\": 22118,\n  \"saus</w>\": 36121,\n  \"sausage</w>\": 11855,\n  \"sausages</w>\": 31593,\n  \"sautÃ©\": 36290,\n  \"sautÃ©ed</w>\": 38517,\n  \"sauvi\": 30116,\n  \"sauvignon</w>\": 32745,\n  \"sav\": 2248,\n  \"sav</w>\": 26533,\n  \"sava</w>\": 40198,\n  \"savag\": 43039,\n  \"savage</w>\": 11859,\n  \"savannah</w>\": 18662,\n  \"save\": 5895,\n  \"save</w>\": 2673,\n  \"saved</w>\": 7137,\n  \"saveour\": 33390,\n  \"saver</w>\": 20987,\n  \"savers</w>\": 31416,\n  \"saves</w>\": 12907,\n  \"savethe\": 18031,\n  \"savi\": 14721,\n  \"saving\": 28498,\n  \"saving</w>\": 6979,\n  \"savings</w>\": 10651,\n  \"savior</w>\": 24762,\n  \"saviour</w>\": 35800,\n  \"savor</w>\": 48071,\n  \"savory</w>\": 32992,\n  \"savoury</w>\": 49071,\n  \"savoy</w>\": 39552,\n  \"savvy</w>\": 29278,\n  \"saw\": 12429,\n  \"saw</w>\": 2425,\n  \"sawa</w>\": 39613,\n  \"sawards</w>\": 29012,\n  \"sawyer</w>\": 27726,\n  \"sax\": 14169,\n  \"sax</w>\": 23766,\n  \"saxon</w>\": 31856,\n  \"saxophon\": 43760,\n  \"saxophone</w>\": 32296,\n  \"say\": 3047,\n  \"say</w>\": 1451,\n  \"saya</w>\": 35170,\n  \"sayang</w>\": 46322,\n  \"sayers</w>\": 44116,\n  \"sayin</w>\": 23662,\n  \"saying</w>\": 4455,\n  \"says</w>\": 1563,\n  \"saz</w>\": 35577,\n  \"sb\": 5576,\n  \"sb</w>\": 4977,\n  \"sba</w>\": 44970,\n  \"sback</w>\": 43840,\n  \"sband</w>\": 27539,\n  \"sbaseball</w>\": 46491,\n  \"sbball</w>\": 39190,\n  \"sbc</w>\": 31404,\n  \"sberg</w>\": 20358,\n  \"sbi</w>\": 41369,\n  \"sbk</w>\": 39211,\n  \"sboro</w>\": 18909,\n  \"sbridge</w>\": 49228,\n  \"sbs</w>\": 18883,\n  \"sbu\": 48075,\n  \"sbu</w>\": 46281,\n  \"sburg</w>\": 7390,\n  \"sburgh</w>\": 48205,\n  \"sbury</w>\": 14081,\n  \"sby\": 26519,\n  \"sby</w>\": 10287,\n  \"sc\": 663,\n  \"sc</w>\": 3219,\n  \"sca</w>\": 11001,\n  \"scab\": 31716,\n  \"scaf\": 28981,\n  \"scafe</w>\": 45574,\n  \"scaffolding</w>\": 41687,\n  \"scal\": 10859,\n  \"scala</w>\": 37997,\n  \"scalable</w>\": 44084,\n  \"scale\": 37817,\n  \"scale</w>\": 5879,\n  \"scaled</w>\": 41923,\n  \"scales</w>\": 22891,\n  \"scaling</w>\": 29116,\n  \"scallo\": 19936,\n  \"scallop</w>\": 39544,\n  \"scallops</w>\": 31430,\n  \"scalp</w>\": 38898,\n  \"scam\": 17620,\n  \"scam</w>\": 13215,\n  \"scamp</w>\": 28451,\n  \"scams</w>\": 34395,\n  \"scan\": 10650,\n  \"scan</w>\": 11261,\n  \"scanada</w>\": 27121,\n  \"scand\": 8110,\n  \"scandal\": 35420,\n  \"scandal</w>\": 11622,\n  \"scandals</w>\": 45490,\n  \"scandin\": 32014,\n  \"scandinavian</w>\": 35661,\n  \"scanned</w>\": 43719,\n  \"scanner</w>\": 24185,\n  \"scanning</w>\": 24092,\n  \"scans</w>\": 31251,\n  \"scap\": 35883,\n  \"scape\": 36005,\n  \"scape</w>\": 12314,\n  \"scapes</w>\": 31933,\n  \"scar\": 4171,\n  \"scar</w>\": 18088,\n  \"scarborough</w>\": 24254,\n  \"scarce</w>\": 38572,\n  \"scarcity</w>\": 45812,\n  \"scare\": 33536,\n  \"scare</w>\": 15920,\n  \"scarec\": 38814,\n  \"scarecrow</w>\": 46504,\n  \"scared</w>\": 9870,\n  \"scares</w>\": 34096,\n  \"scarf</w>\": 13365,\n  \"scari\": 27050,\n  \"scariest</w>\": 37213,\n  \"scarlet</w>\": 20389,\n  \"scarlett</w>\": 28325,\n  \"scars</w>\": 20747,\n  \"scarves</w>\": 29249,\n  \"scary</w>\": 9250,\n  \"scat\": 13899,\n  \"scattered</w>\": 22090,\n  \"scavenger</w>\": 36778,\n  \"scc</w>\": 19458,\n  \"scd</w>\": 48422,\n  \"scen\": 2204,\n  \"scenario</w>\": 20456,\n  \"scenarios</w>\": 31346,\n  \"scence</w>\": 33418,\n  \"scene</w>\": 3562,\n  \"scenery</w>\": 16025,\n  \"scenes</w>\": 5415,\n  \"scenic</w>\": 15394,\n  \"scent\": 36277,\n  \"scent</w>\": 7683,\n  \"scented</w>\": 27190,\n  \"scenter</w>\": 23059,\n  \"scentre</w>\": 39371,\n  \"scents</w>\": 26336,\n  \"scep\": 24439,\n  \"scfc</w>\": 38578,\n  \"sch\": 844,\n  \"sch</w>\": 7542,\n  \"scha\": 42809,\n  \"schaf\": 45588,\n  \"schaft</w>\": 41010,\n  \"schal\": 35568,\n  \"schalke</w>\": 41029,\n  \"schallenge</w>\": 43665,\n  \"schan\": 31328,\n  \"schar\": 15085,\n  \"schat</w>\": 31842,\n  \"schau\": 35830,\n  \"sche\": 3038,\n  \"sche</w>\": 7289,\n  \"schedu\": 4207,\n  \"schedule</w>\": 5521,\n  \"scheduled</w>\": 10986,\n  \"schedules</w>\": 28986,\n  \"scheduling</w>\": 32216,\n  \"scheer</w>\": 26776,\n  \"schel\": 39881,\n  \"schel</w>\": 38569,\n  \"schem\": 17720,\n  \"scheme</w>\": 9024,\n  \"schemes</w>\": 22958,\n  \"schen\": 22738,\n  \"scher\": 21925,\n  \"scher</w>\": 21299,\n  \"schi\": 13731,\n  \"schi</w>\": 24984,\n  \"schicago</w>\": 46230,\n  \"schiff</w>\": 39431,\n  \"schild</w>\": 32148,\n  \"schiz\": 33230,\n  \"schizoph\": 40004,\n  \"schizophre\": 41163,\n  \"schle\": 32022,\n  \"schmid\": 17375,\n  \"schmidt</w>\": 18463,\n  \"schnau\": 45745,\n  \"schnei\": 19941,\n  \"schneider</w>\": 22972,\n  \"schnit\": 40903,\n  \"scho\": 2493,\n  \"schoice</w>\": 23860,\n  \"schol\": 4498,\n  \"scholar\": 7192,\n  \"scholar</w>\": 12830,\n  \"scholarly</w>\": 41065,\n  \"scholars</w>\": 13818,\n  \"scholarship</w>\": 9070,\n  \"scholarships</w>\": 17866,\n  \"scholastic</w>\": 35743,\n  \"schoo\": 20721,\n  \"school\": 6063,\n  \"school</w>\": 1228,\n  \"schooled</w>\": 44722,\n  \"schoolers</w>\": 31455,\n  \"schooling</w>\": 28608,\n  \"schools</w>\": 3513,\n  \"schre\": 47685,\n  \"schri\": 25453,\n  \"schro\": 32381,\n  \"schu\": 11318,\n  \"schubert</w>\": 46939,\n  \"schul\": 14945,\n  \"schultz</w>\": 30308,\n  \"schulz</w>\": 39572,\n  \"schumacher</w>\": 39208,\n  \"schumer</w>\": 25313,\n  \"schur\": 42475,\n  \"schwab</w>\": 47602,\n  \"schwar\": 13985,\n  \"schwartz</w>\": 30617,\n  \"schwarz\": 27074,\n  \"schwarzenegger</w>\": 33860,\n  \"schwe\": 25324,\n  \"sci\": 2267,\n  \"sci</w>\": 8309,\n  \"sciart</w>\": 31704,\n  \"scicom\": 28606,\n  \"scicomm</w>\": 29573,\n  \"scien\": 39261,\n  \"science\": 10201,\n  \"science</w>\": 2497,\n  \"sciencefiction</w>\": 39170,\n  \"sciences</w>\": 11481,\n  \"scienti\": 4338,\n  \"scientific</w>\": 9750,\n  \"scientist</w>\": 11083,\n  \"scientists</w>\": 8045,\n  \"sciento\": 36193,\n  \"scientology</w>\": 44694,\n  \"scifi\": 41862,\n  \"scifi</w>\": 12230,\n  \"scion</w>\": 47208,\n  \"sciss\": 25667,\n  \"scissors</w>\": 30867,\n  \"sciutto</w>\": 44392,\n  \"sclerosis</w>\": 39446,\n  \"sclub</w>\": 20017,\n  \"sco\": 1065,\n  \"sco</w>\": 4763,\n  \"scoe</w>\": 31164,\n  \"scol\": 13599,\n  \"scoll</w>\": 44895,\n  \"scollege</w>\": 39536,\n  \"scom</w>\": 26407,\n  \"scon\": 17163,\n  \"scon</w>\": 29272,\n  \"scones</w>\": 36443,\n  \"sconf</w>\": 39704,\n  \"scoo\": 14199,\n  \"scooby</w>\": 34469,\n  \"scoop</w>\": 13829,\n  \"scoops</w>\": 41360,\n  \"scope</w>\": 7979,\n  \"scopes</w>\": 30328,\n  \"scopic</w>\": 23869,\n  \"scopy</w>\": 20018,\n  \"scor\": 8442,\n  \"score\": 12067,\n  \"score</w>\": 4431,\n  \"scoreboard</w>\": 30104,\n  \"scorecard</w>\": 38128,\n  \"scored</w>\": 6143,\n  \"scoreless</w>\": 33469,\n  \"scorer</w>\": 16572,\n  \"scorers</w>\": 26699,\n  \"scores</w>\": 7039,\n  \"scoring</w>\": 9198,\n  \"scorpi\": 15445,\n  \"scorpio</w>\": 34331,\n  \"scorpion</w>\": 28461,\n  \"scorpions</w>\": 45401,\n  \"scorsese</w>\": 45975,\n  \"scot\": 2496,\n  \"scot</w>\": 9271,\n  \"scotch</w>\": 16687,\n  \"scoti\": 46446,\n  \"scotia</w>\": 27859,\n  \"scotland\": 29174,\n  \"scotland</w>\": 4203,\n  \"scots</w>\": 17260,\n  \"scotsman</w>\": 39612,\n  \"scott\": 7775,\n  \"scott</w>\": 3664,\n  \"scotti\": 6227,\n  \"scottish\": 18039,\n  \"scottish</w>\": 7442,\n  \"scottsdale</w>\": 27817,\n  \"scotty\": 39697,\n  \"scotty</w>\": 26836,\n  \"scotus</w>\": 21720,\n  \"scou\": 44909,\n  \"scoun\": 16110,\n  \"scouncil</w>\": 48787,\n  \"scountry</w>\": 40432,\n  \"scour\": 46172,\n  \"scout\": 32213,\n  \"scout</w>\": 10786,\n  \"scouting</w>\": 19072,\n  \"scouts</w>\": 14837,\n  \"scow\": 27929,\n  \"scowboys</w>\": 31386,\n  \"scp</w>\": 45030,\n  \"scr</w>\": 36131,\n  \"scra\": 11187,\n  \"scrabble</w>\": 39488,\n  \"scram\": 17289,\n  \"scramble</w>\": 32688,\n  \"scrambled</w>\": 39026,\n  \"scran\": 41774,\n  \"scranton</w>\": 45274,\n  \"scrap\": 27950,\n  \"scrap</w>\": 21695,\n  \"scrapbook</w>\": 48733,\n  \"scrapped</w>\": 43325,\n  \"scraps</w>\": 40809,\n  \"scrat\": 9572,\n  \"scratch</w>\": 13258,\n  \"scratched</w>\": 48831,\n  \"scratches</w>\": 46556,\n  \"scratching</w>\": 44617,\n  \"scre\": 1795,\n  \"scream\": 31645,\n  \"scream</w>\": 13239,\n  \"screamed</w>\": 35427,\n  \"screaming</w>\": 12891,\n  \"screams</w>\": 23989,\n  \"screen\": 5351,\n  \"screen</w>\": 3750,\n  \"screened</w>\": 31450,\n  \"screening</w>\": 6688,\n  \"screenings</w>\": 27655,\n  \"screenplay</w>\": 30058,\n  \"screens</w>\": 12689,\n  \"screenshot\": 20637,\n  \"screenshot</w>\": 12646,\n  \"screenshots</w>\": 26783,\n  \"screenshotsaturday</w>\": 21406,\n  \"screenwriter</w>\": 37293,\n  \"screenwriting</w>\": 35465,\n  \"screw\": 25529,\n  \"screw</w>\": 14225,\n  \"screwdriver</w>\": 48748,\n  \"screwed</w>\": 30592,\n  \"screws</w>\": 38292,\n  \"scri\": 2139,\n  \"scrib\": 34259,\n  \"scribe</w>\": 36228,\n  \"scribed</w>\": 38334,\n  \"scricket</w>\": 45947,\n  \"scrim\": 21978,\n  \"scrimmage</w>\": 25216,\n  \"scrip\": 11955,\n  \"script</w>\": 8374,\n  \"scripted</w>\": 40513,\n  \"scription</w>\": 26604,\n  \"scriptions</w>\": 39512,\n  \"scripts</w>\": 20109,\n  \"scripture</w>\": 27186,\n  \"scro\": 30768,\n  \"scroll</w>\": 24160,\n  \"scrolling</w>\": 28889,\n  \"scrolls</w>\": 38113,\n  \"scroo\": 42263,\n  \"scru\": 7589,\n  \"scrub</w>\": 23432,\n  \"scrubs</w>\": 37919,\n  \"scrum</w>\": 29047,\n  \"scrump\": 39791,\n  \"scrumptious</w>\": 40987,\n  \"scrutiny</w>\": 34305,\n  \"scs</w>\": 26853,\n  \"sct</w>\": 39284,\n  \"scu\": 8181,\n  \"scu</w>\": 32135,\n  \"scuba\": 39053,\n  \"scuba</w>\": 20559,\n  \"scubadiving</w>\": 49046,\n  \"scue</w>\": 25955,\n  \"scul\": 4948,\n  \"scully</w>\": 36598,\n  \"sculp\": 6093,\n  \"sculpt</w>\": 45044,\n  \"sculpted</w>\": 41296,\n  \"sculpting</w>\": 44389,\n  \"sculptor</w>\": 29409,\n  \"sculpture</w>\": 8757,\n  \"sculptures</w>\": 20378,\n  \"scum</w>\": 29655,\n  \"scumb\": 44525,\n  \"scup</w>\": 21506,\n  \"scur\": 32742,\n  \"scwx</w>\": 41966,\n  \"scy\": 27471,\n  \"sd\": 3080,\n  \"sd</w>\": 4159,\n  \"sda</w>\": 25548,\n  \"sdale</w>\": 12327,\n  \"sday\": 5902,\n  \"sday</w>\": 1376,\n  \"sdays</w>\": 14491,\n  \"sdc</w>\": 40992,\n  \"sdcc</w>\": 13246,\n  \"sden</w>\": 17241,\n  \"sdf</w>\": 34681,\n  \"sdg</w>\": 20177,\n  \"sdgs</w>\": 16261,\n  \"sdk</w>\": 40015,\n  \"sdlive</w>\": 34561,\n  \"sdn</w>\": 41925,\n  \"sdsu</w>\": 41284,\n  \"se\": 567,\n  \"se</w>\": 611,\n  \"sea\": 5970,\n  \"sea</w>\": 2102,\n  \"seab\": 15728,\n  \"seabir\": 42558,\n  \"seac\": 35626,\n  \"seaf\": 9336,\n  \"seafood</w>\": 12472,\n  \"seag\": 15730,\n  \"seagu\": 38076,\n  \"seagull</w>\": 38858,\n  \"seagulls</w>\": 42215,\n  \"seahawks</w>\": 15341,\n  \"seal\": 21381,\n  \"seal</w>\": 10159,\n  \"sealed</w>\": 13358,\n  \"sealing</w>\": 42992,\n  \"seals</w>\": 18179,\n  \"seam\": 13710,\n  \"seam</w>\": 44201,\n  \"seaman</w>\": 47513,\n  \"seamless</w>\": 29373,\n  \"seamus</w>\": 40175,\n  \"sean\": 11406,\n  \"sean</w>\": 6077,\n  \"seanhannity</w>\": 43316,\n  \"seap\": 29983,\n  \"seaport</w>\": 46418,\n  \"sear\": 1612,\n  \"search\": 23129,\n  \"search</w>\": 1920,\n  \"searched</w>\": 28961,\n  \"searches</w>\": 26378,\n  \"searching</w>\": 10626,\n  \"seared</w>\": 29727,\n  \"sears</w>\": 26693,\n  \"seas\": 7329,\n  \"seas</w>\": 9556,\n  \"seascape</w>\": 42593,\n  \"seaside</w>\": 18867,\n  \"season\": 19288,\n  \"season</w>\": 1367,\n  \"seasonal</w>\": 14215,\n  \"seasoned</w>\": 28399,\n  \"seasoning</w>\": 43439,\n  \"seasons</w>\": 8635,\n  \"seat\": 19670,\n  \"seat</w>\": 4922,\n  \"seated</w>\": 23953,\n  \"seater</w>\": 37543,\n  \"seating</w>\": 16240,\n  \"seats</w>\": 6944,\n  \"seattle\": 24388,\n  \"seattle</w>\": 6274,\n  \"seau</w>\": 32263,\n  \"seaw\": 32658,\n  \"seaweed</w>\": 30204,\n  \"seaworld</w>\": 27422,\n  \"seb\": 35766,\n  \"seb</w>\": 25171,\n  \"sebasti\": 10324,\n  \"sebastian\": 43792,\n  \"sebastian</w>\": 13181,\n  \"sebring</w>\": 41086,\n  \"sec\": 2875,\n  \"sec</w>\": 5338,\n  \"seca</w>\": 37847,\n  \"secco</w>\": 27394,\n  \"sece\": 46297,\n  \"seclu\": 42392,\n  \"secon\": 1846,\n  \"second\": 9329,\n  \"second</w>\": 2241,\n  \"secondary</w>\": 13107,\n  \"seconds</w>\": 6541,\n  \"secre\": 2460,\n  \"secret\": 20710,\n  \"secret</w>\": 4145,\n  \"secretari\": 29515,\n  \"secretariat</w>\": 31767,\n  \"secretary</w>\": 6552,\n  \"secretly</w>\": 21400,\n  \"secrets</w>\": 9735,\n  \"secs</w>\": 28665,\n  \"sect</w>\": 15772,\n  \"section\": 34986,\n  \"section</w>\": 4853,\n  \"sectional</w>\": 21876,\n  \"sections</w>\": 20061,\n  \"sector</w>\": 6579,\n  \"sectors</w>\": 22173,\n  \"secu\": 4894,\n  \"secular\": 47483,\n  \"secular</w>\": 27560,\n  \"secur\": 2557,\n  \"secure\": 44763,\n  \"secure</w>\": 7515,\n  \"secured</w>\": 16848,\n  \"secures</w>\": 31567,\n  \"securing</w>\": 24759,\n  \"securities</w>\": 25080,\n  \"security\": 31245,\n  \"security</w>\": 2741,\n  \"sed\": 14034,\n  \"sed</w>\": 1252,\n  \"sedan</w>\": 24237,\n  \"sedg\": 46926,\n  \"sedge</w>\": 45288,\n  \"sedi\": 29269,\n  \"sedly</w>\": 31771,\n  \"sedona</w>\": 46862,\n  \"seduc\": 19933,\n  \"seductive</w>\": 43721,\n  \"see\": 1751,\n  \"see</w>\": 862,\n  \"seed\": 14064,\n  \"seed</w>\": 6488,\n  \"seeded</w>\": 33688,\n  \"seeding</w>\": 40050,\n  \"seedlings</w>\": 47933,\n  \"seeds</w>\": 9128,\n  \"seeing</w>\": 3214,\n  \"seek</w>\": 8839,\n  \"seeker</w>\": 28011,\n  \"seekers</w>\": 20732,\n  \"seeking</w>\": 8592,\n  \"seeks</w>\": 12594,\n  \"seem\": 20043,\n  \"seem</w>\": 7523,\n  \"seemed</w>\": 17240,\n  \"seemingly</w>\": 25917,\n  \"seems</w>\": 4453,\n  \"seen\": 36273,\n  \"seen</w>\": 2041,\n  \"seer</w>\": 32486,\n  \"sees</w>\": 7594,\n  \"seeyou\": 41279,\n  \"sef</w>\": 27453,\n  \"seg\": 10551,\n  \"sega</w>\": 16122,\n  \"segment</w>\": 15615,\n  \"segments</w>\": 43053,\n  \"segreg\": 49117,\n  \"segregation</w>\": 39086,\n  \"segu\": 33156,\n  \"segun\": 43087,\n  \"seh\": 27536,\n  \"seh</w>\": 41430,\n  \"sehun</w>\": 17705,\n  \"sei\": 13130,\n  \"sei</w>\": 15907,\n  \"sein</w>\": 24669,\n  \"seine</w>\": 41378,\n  \"seinfeld</w>\": 33706,\n  \"seis\": 25559,\n  \"seismic</w>\": 38459,\n  \"seiz\": 22171,\n  \"seize</w>\": 26624,\n  \"seized</w>\": 15826,\n  \"seizure</w>\": 36804,\n  \"seizures</w>\": 47199,\n  \"sek\": 45515,\n  \"sek</w>\": 25880,\n  \"sel\": 1000,\n  \"sel</w>\": 4098,\n  \"sela</w>\": 47006,\n  \"selamat</w>\": 37692,\n  \"selangor</w>\": 44402,\n  \"selby</w>\": 43546,\n  \"selca</w>\": 38606,\n  \"selcaday</w>\": 35924,\n  \"seldom</w>\": 48322,\n  \"sele\": 29137,\n  \"selec\": 3014,\n  \"select</w>\": 8690,\n  \"selected</w>\": 6881,\n  \"selecting</w>\": 32696,\n  \"selection</w>\": 6724,\n  \"selections</w>\": 24099,\n  \"selective</w>\": 28686,\n  \"selects</w>\": 32902,\n  \"selen\": 19970,\n  \"selena</w>\": 14677,\n  \"selenagomez</w>\": 27653,\n  \"seley</w>\": 30556,\n  \"self\": 10139,\n  \"self</w>\": 1322,\n  \"selfcare</w>\": 39560,\n  \"selfi\": 3007,\n  \"selfie\": 26735,\n  \"selfie</w>\": 3666,\n  \"selfies\": 46058,\n  \"selfies</w>\": 10050,\n  \"selfish</w>\": 26907,\n  \"selfless</w>\": 34236,\n  \"sell\": 10279,\n  \"sell</w>\": 5119,\n  \"seller</w>\": 11779,\n  \"sellers</w>\": 16562,\n  \"selling</w>\": 4396,\n  \"sells</w>\": 14306,\n  \"selma</w>\": 36652,\n  \"sels</w>\": 42070,\n  \"selves</w>\": 4505,\n  \"sely</w>\": 8402,\n  \"sem\": 8645,\n  \"sem</w>\": 17106,\n  \"sema</w>\": 31816,\n  \"seman\": 29119,\n  \"seman</w>\": 28378,\n  \"semana</w>\": 41780,\n  \"semb\": 36054,\n  \"seme\": 10855,\n  \"sement</w>\": 10714,\n  \"sements</w>\": 31449,\n  \"semester</w>\": 11905,\n  \"semi\": 11023,\n  \"semi</w>\": 6684,\n  \"semic\": 26967,\n  \"semicon\": 34315,\n  \"semiconduc\": 35646,\n  \"semiconductor</w>\": 43551,\n  \"semifinal</w>\": 22935,\n  \"semifinals</w>\": 21863,\n  \"semin\": 5595,\n  \"seminar</w>\": 7269,\n  \"seminars</w>\": 34870,\n  \"seminary</w>\": 31655,\n  \"seminole</w>\": 42956,\n  \"semis</w>\": 24013,\n  \"semit\": 22628,\n  \"semite</w>\": 23721,\n  \"semitic</w>\": 34894,\n  \"semitism</w>\": 25911,\n  \"semper\": 47391,\n  \"sen\": 1057,\n  \"sen</w>\": 2249,\n  \"sena</w>\": 21584,\n  \"senate\": 30703,\n  \"senate</w>\": 6843,\n  \"senator\": 20871,\n  \"senator</w>\": 8495,\n  \"senators</w>\": 16889,\n  \"send\": 27684,\n  \"send</w>\": 3625,\n  \"sending</w>\": 6985,\n  \"sends</w>\": 10817,\n  \"sene\": 25269,\n  \"seneca</w>\": 33419,\n  \"senegal</w>\": 28255,\n  \"senew\": 49313,\n  \"seng\": 43022,\n  \"seng</w>\": 29971,\n  \"senior\": 19865,\n  \"senior</w>\": 3415,\n  \"seniors</w>\": 8138,\n  \"senna</w>\": 36195,\n  \"senpai</w>\": 46562,\n  \"sens\": 5218,\n  \"sens</w>\": 22837,\n  \"sensation</w>\": 19383,\n  \"sensational</w>\": 23051,\n  \"sense\": 29162,\n  \"sense</w>\": 4747,\n  \"sensei</w>\": 36158,\n  \"senses</w>\": 21809,\n  \"sensi\": 38802,\n  \"sensible</w>\": 30635,\n  \"sensing</w>\": 29236,\n  \"sensiti\": 20531,\n  \"sensitive</w>\": 13734,\n  \"sensitivity</w>\": 27788,\n  \"sensor</w>\": 15330,\n  \"sensors</w>\": 20356,\n  \"sensory</w>\": 21831,\n  \"sensu\": 28157,\n  \"sensual</w>\": 40860,\n  \"sent\": 6200,\n  \"sent</w>\": 3676,\n  \"sentence</w>\": 12737,\n  \"sentenced</w>\": 17773,\n  \"sentences</w>\": 25858,\n  \"sentencing</w>\": 34394,\n  \"senti\": 19042,\n  \"sentim\": 25102,\n  \"sentiment</w>\": 25949,\n  \"sentimental</w>\": 40070,\n  \"sentiments</w>\": 47450,\n  \"sentin\": 20042,\n  \"sentinel</w>\": 23123,\n  \"senting</w>\": 3924,\n  \"seo\": 24743,\n  \"seo</w>\": 8622,\n  \"seok\": 34697,\n  \"seok</w>\": 22482,\n  \"seokjin</w>\": 45584,\n  \"seoul</w>\": 13253,\n  \"sep\": 3212,\n  \"sep</w>\": 10434,\n  \"separ\": 6859,\n  \"separate</w>\": 13886,\n  \"separated</w>\": 22163,\n  \"separately</w>\": 41904,\n  \"separates</w>\": 45365,\n  \"separati\": 39377,\n  \"separating</w>\": 43480,\n  \"separation</w>\": 22007,\n  \"sephora</w>\": 38414,\n  \"sepsis</w>\": 40205,\n  \"sept</w>\": 5380,\n  \"septe\": 3672,\n  \"september</w>\": 3707,\n  \"septic</w>\": 34690,\n  \"sepul\": 47360,\n  \"seq</w>\": 44379,\n  \"sequ\": 5491,\n  \"seque\": 44662,\n  \"sequel</w>\": 15701,\n  \"sequence</w>\": 18833,\n  \"sequences</w>\": 47306,\n  \"sequencing</w>\": 33484,\n  \"sequo\": 32781,\n  \"sequoia</w>\": 42404,\n  \"ser\": 803,\n  \"ser</w>\": 2771,\n  \"sera</w>\": 28250,\n  \"serbia</w>\": 19038,\n  \"serbian</w>\": 33687,\n  \"sere\": 35770,\n  \"seren\": 7880,\n  \"serena</w>\": 19519,\n  \"serenawilliams</w>\": 48316,\n  \"serendip\": 45805,\n  \"serendipity</w>\": 49386,\n  \"serene</w>\": 28269,\n  \"serenity</w>\": 24187,\n  \"serge\": 13477,\n  \"serge</w>\": 35700,\n  \"sergeant</w>\": 22049,\n  \"sergei</w>\": 39870,\n  \"sergey</w>\": 35390,\n  \"sergi\": 47675,\n  \"sergio</w>\": 18359,\n  \"seri\": 2763,\n  \"seri</w>\": 37509,\n  \"serial</w>\": 14216,\n  \"serie</w>\": 19752,\n  \"seriea</w>\": 32660,\n  \"series</w>\": 1857,\n  \"serious\": 47421,\n  \"serious</w>\": 4770,\n  \"seriously</w>\": 4885,\n  \"sermon</w>\": 24884,\n  \"sero\": 48883,\n  \"serpent\": 37084,\n  \"serpent</w>\": 35364,\n  \"serra</w>\": 39851,\n  \"serrano</w>\": 44236,\n  \"sers</w>\": 13509,\n  \"serum</w>\": 25385,\n  \"serv\": 1297,\n  \"serv</w>\": 24571,\n  \"servant</w>\": 20810,\n  \"servants</w>\": 29652,\n  \"serve\": 39202,\n  \"serve</w>\": 2838,\n  \"served</w>\": 4740,\n  \"server\": 36458,\n  \"server</w>\": 8398,\n  \"serverless</w>\": 49243,\n  \"servers</w>\": 22262,\n  \"serves</w>\": 9915,\n  \"servic\": 27115,\n  \"service\": 21496,\n  \"service</w>\": 2086,\n  \"serviced</w>\": 44687,\n  \"services</w>\": 3100,\n  \"servicing</w>\": 41300,\n  \"serving</w>\": 5722,\n  \"sery</w>\": 14279,\n  \"ses\": 23708,\n  \"ses</w>\": 1386,\n  \"sesame</w>\": 21706,\n  \"sese</w>\": 37128,\n  \"sesh</w>\": 24274,\n  \"session</w>\": 2550,\n  \"sessions</w>\": 6327,\n  \"set\": 7965,\n  \"set</w>\": 1167,\n  \"setback</w>\": 43605,\n  \"seth\": 20005,\n  \"seth</w>\": 11870,\n  \"sethu\": 38933,\n  \"setlist</w>\": 33141,\n  \"seton</w>\": 43799,\n  \"sets</w>\": 4650,\n  \"sett\": 4984,\n  \"sett</w>\": 17567,\n  \"sette</w>\": 14613,\n  \"setter</w>\": 23153,\n  \"settes</w>\": 44145,\n  \"setti</w>\": 45170,\n  \"setting</w>\": 5264,\n  \"settings</w>\": 18628,\n  \"settle</w>\": 15075,\n  \"settled</w>\": 18310,\n  \"settlement</w>\": 16494,\n  \"settlements</w>\": 36605,\n  \"settlers</w>\": 35671,\n  \"settles</w>\": 41498,\n  \"settling</w>\": 22036,\n  \"setup</w>\": 11092,\n  \"seu</w>\": 31539,\n  \"seul\": 48975,\n  \"seum</w>\": 18838,\n  \"seun\": 24209,\n  \"seung\": 32393,\n  \"seung</w>\": 33711,\n  \"seungri</w>\": 41627,\n  \"seuss</w>\": 34441,\n  \"sev\": 26585,\n  \"sev</w>\": 37600,\n  \"seva</w>\": 42604,\n  \"seve\": 21458,\n  \"seve</w>\": 22468,\n  \"sevel\": 17439,\n  \"seven\": 7874,\n  \"seven</w>\": 5757,\n  \"sevens</w>\": 29911,\n  \"sevent\": 43048,\n  \"seventeen</w>\": 19337,\n  \"seventh</w>\": 17568,\n  \"seventy</w>\": 47170,\n  \"sever\": 3250,\n  \"sever</w>\": 45557,\n  \"several</w>\": 5560,\n  \"severance</w>\": 26194,\n  \"severe</w>\": 6215,\n  \"severely</w>\": 24417,\n  \"severn</w>\": 34626,\n  \"severy\": 34207,\n  \"sevilla</w>\": 24947,\n  \"seville</w>\": 34988,\n  \"sew</w>\": 28640,\n  \"sewage</w>\": 32777,\n  \"sewer</w>\": 28294,\n  \"sewing</w>\": 15974,\n  \"sewn</w>\": 42118,\n  \"sex\": 3548,\n  \"sex</w>\": 5937,\n  \"sexi\": 20562,\n  \"sexiest</w>\": 25426,\n  \"sexism</w>\": 32059,\n  \"sexist</w>\": 33047,\n  \"sexu\": 14741,\n  \"sexual</w>\": 6749,\n  \"sexuality</w>\": 21244,\n  \"sexually</w>\": 23032,\n  \"sexy\": 21019,\n  \"sexy</w>\": 38127,\n  \"sey\": 6317,\n  \"sey</w>\": 2258,\n  \"seychel\": 36809,\n  \"seychelles</w>\": 38519,\n  \"seye</w>\": 35604,\n  \"seym\": 22657,\n  \"seymour</w>\": 25850,\n  \"seys</w>\": 15081,\n  \"sez</w>\": 42377,\n  \"seÃ±\": 43368,\n  \"sf\": 4435,\n  \"sf</w>\": 4915,\n  \"sfa</w>\": 32675,\n  \"sfam</w>\": 37649,\n  \"sfb</w>\": 27930,\n  \"sfc</w>\": 14129,\n  \"sfest</w>\": 49024,\n  \"sff</w>\": 42056,\n  \"sfgiants</w>\": 20923,\n  \"sfield</w>\": 11801,\n  \"sfo</w>\": 39182,\n  \"sfootball</w>\": 45259,\n  \"sfor\": 9115,\n  \"sford</w>\": 28917,\n  \"sforsale</w>\": 28888,\n  \"sfw</w>\": 18073,\n  \"sfx</w>\": 37995,\n  \"sg\": 9599,\n  \"sg</w>\": 7611,\n  \"sga</w>\": 33049,\n  \"sgate</w>\": 27558,\n  \"sgh</w>\": 47590,\n  \"sgo\": 5393,\n  \"sgo</w>\": 21044,\n  \"sgt</w>\": 13748,\n  \"sh\": 552,\n  \"sh</w>\": 849,\n  \"sha\": 1514,\n  \"sha</w>\": 3337,\n  \"shaa</w>\": 44221,\n  \"shab\": 8323,\n  \"shabbat</w>\": 38042,\n  \"shabby</w>\": 28838,\n  \"shack\": 23866,\n  \"shack</w>\": 18785,\n  \"shad\": 3182,\n  \"shad</w>\": 23874,\n  \"shade\": 34554,\n  \"shade</w>\": 10097,\n  \"shaded</w>\": 43506,\n  \"shades\": 46608,\n  \"shades</w>\": 9270,\n  \"shadesof\": 45180,\n  \"shading</w>\": 37348,\n  \"shado\": 9325,\n  \"shadow\": 15243,\n  \"shadow</w>\": 7068,\n  \"shadowhun\": 19931,\n  \"shadowhunters</w>\": 24834,\n  \"shadowing</w>\": 46092,\n  \"shadows</w>\": 12971,\n  \"shady</w>\": 22158,\n  \"shaf\": 12032,\n  \"shaft</w>\": 21545,\n  \"shag\": 22439,\n  \"shaggy</w>\": 42662,\n  \"shah\": 13203,\n  \"shah</w>\": 8439,\n  \"shahe\": 23643,\n  \"shaheed</w>\": 30060,\n  \"shaheer</w>\": 43969,\n  \"shahi</w>\": 46972,\n  \"shahid\": 25696,\n  \"shahid</w>\": 27138,\n  \"shahidkapoor</w>\": 29892,\n  \"shahzad</w>\": 45915,\n  \"shai</w>\": 47941,\n  \"shaikh</w>\": 45712,\n  \"shail\": 37603,\n  \"shair</w>\": 43135,\n  \"shak\": 8385,\n  \"shake\": 8206,\n  \"shake</w>\": 8251,\n  \"shaken</w>\": 38237,\n  \"shaker</w>\": 26210,\n  \"shakers</w>\": 38411,\n  \"shakes</w>\": 19668,\n  \"shakespe\": 9890,\n  \"shakespeare\": 22499,\n  \"shakespeare</w>\": 12488,\n  \"shakespearesunday</w>\": 32320,\n  \"shaking</w>\": 19101,\n  \"shakira</w>\": 40795,\n  \"shakti\": 48593,\n  \"shakti</w>\": 32458,\n  \"shakur</w>\": 48915,\n  \"shal\": 15056,\n  \"shal</w>\": 28175,\n  \"shale</w>\": 32864,\n  \"shall</w>\": 4742,\n  \"shallow</w>\": 23730,\n  \"shalom</w>\": 31339,\n  \"sham\": 6453,\n  \"sham</w>\": 9005,\n  \"shaman</w>\": 48727,\n  \"shambles</w>\": 40799,\n  \"shame\": 14776,\n  \"shame</w>\": 7593,\n  \"shameful</w>\": 28283,\n  \"shameless</w>\": 25380,\n  \"shaming</w>\": 40553,\n  \"shampoo</w>\": 23944,\n  \"shamrock</w>\": 34199,\n  \"shan\": 5171,\n  \"shan</w>\": 8834,\n  \"shana</w>\": 44835,\n  \"shand\": 29101,\n  \"shane\": 26863,\n  \"shane</w>\": 11572,\n  \"shang\": 11141,\n  \"shanghai</w>\": 12742,\n  \"shani\": 46665,\n  \"shank</w>\": 24685,\n  \"shankar</w>\": 24108,\n  \"shann\": 9932,\n  \"shannon\": 22842,\n  \"shannon</w>\": 13581,\n  \"shant\": 36610,\n  \"shap\": 5581,\n  \"shape\": 26925,\n  \"shape</w>\": 6448,\n  \"shaped</w>\": 10127,\n  \"shapes</w>\": 15377,\n  \"shaping</w>\": 18632,\n  \"shapiro</w>\": 32110,\n  \"shaq\": 46402,\n  \"shaq</w>\": 26843,\n  \"shar\": 1669,\n  \"shar</w>\": 36542,\n  \"shara</w>\": 48849,\n  \"sharapo\": 36489,\n  \"sharapova</w>\": 36671,\n  \"shard</w>\": 42207,\n  \"share\": 7585,\n  \"share</w>\": 1978,\n  \"shared</w>\": 5368,\n  \"shareholder</w>\": 38241,\n  \"shareholders</w>\": 34778,\n  \"sharepoint</w>\": 39213,\n  \"shares</w>\": 4974,\n  \"sharethe\": 49277,\n  \"shareyour\": 45890,\n  \"shari\": 27738,\n  \"shari</w>\": 47390,\n  \"sharia</w>\": 37244,\n  \"sharif</w>\": 15501,\n  \"sharing</w>\": 3567,\n  \"sharjah</w>\": 33420,\n  \"shark\": 15836,\n  \"shark</w>\": 7980,\n  \"sharks</w>\": 10047,\n  \"sharkweek</w>\": 39571,\n  \"sharma</w>\": 10105,\n  \"sharon\": 28722,\n  \"sharon</w>\": 14138,\n  \"sharp\": 17126,\n  \"sharp</w>\": 8157,\n  \"sharpe</w>\": 34374,\n  \"sharpen\": 41465,\n  \"sharpie</w>\": 46858,\n  \"sharply</w>\": 37185,\n  \"shasta</w>\": 46727,\n  \"shat\": 12169,\n  \"shat</w>\": 44388,\n  \"shatter</w>\": 45008,\n  \"shattered</w>\": 26820,\n  \"shau\": 13750,\n  \"shaun\": 23446,\n  \"shaun</w>\": 16669,\n  \"shav\": 11410,\n  \"shave</w>\": 17735,\n  \"shaved</w>\": 25571,\n  \"shaving</w>\": 24261,\n  \"shaw\": 6122,\n  \"shaw</w>\": 6805,\n  \"shawa</w>\": 46413,\n  \"shawl</w>\": 35132,\n  \"shawn\": 16677,\n  \"shawn</w>\": 10970,\n  \"shawnee</w>\": 48060,\n  \"shawnmendes</w>\": 27277,\n  \"shawty</w>\": 38026,\n  \"shay\": 10778,\n  \"shay</w>\": 18361,\n  \"shaykh</w>\": 47223,\n  \"shaz\": 18618,\n  \"shazam</w>\": 29063,\n  \"shc</w>\": 43419,\n  \"shd</w>\": 37729,\n  \"she\": 1729,\n  \"she</w>\": 1043,\n  \"shea</w>\": 20407,\n  \"shead\": 44287,\n  \"shead</w>\": 20434,\n  \"shealth\": 41743,\n  \"shealth</w>\": 22197,\n  \"shear\": 27974,\n  \"shear</w>\": 32108,\n  \"shearer</w>\": 40505,\n  \"sheath</w>\": 45637,\n  \"shed\": 16586,\n  \"shed</w>\": 1492,\n  \"shedding</w>\": 33608,\n  \"sheds</w>\": 25921,\n  \"shee\": 23450,\n  \"shee</w>\": 34321,\n  \"sheed</w>\": 26105,\n  \"sheehan</w>\": 41809,\n  \"sheen</w>\": 25025,\n  \"sheep\": 23604,\n  \"sheep</w>\": 9629,\n  \"sheer</w>\": 17577,\n  \"sheeran</w>\": 18561,\n  \"sheet</w>\": 7298,\n  \"sheets</w>\": 12744,\n  \"shef\": 8237,\n  \"sheff\": 38844,\n  \"sheff</w>\": 43821,\n  \"sheffiel\": 26940,\n  \"sheffield\": 41763,\n  \"sheffield</w>\": 10420,\n  \"sheffieldissuper</w>\": 33628,\n  \"sheh\": 31667,\n  \"sheikh</w>\": 15031,\n  \"sheil\": 42765,\n  \"sheila</w>\": 25734,\n  \"shek</w>\": 33285,\n  \"shel\": 3159,\n  \"shelby\": 36906,\n  \"shelby</w>\": 16885,\n  \"sheldon</w>\": 25079,\n  \"shelf</w>\": 10955,\n  \"shell\": 23374,\n  \"shell</w>\": 6648,\n  \"shelley</w>\": 22497,\n  \"shelling</w>\": 43166,\n  \"shells</w>\": 19265,\n  \"shelly</w>\": 37461,\n  \"shelter</w>\": 8599,\n  \"sheltered</w>\": 48070,\n  \"shelters</w>\": 24312,\n  \"shelton</w>\": 24471,\n  \"shelves</w>\": 16225,\n  \"shem</w>\": 40299,\n  \"shen\": 10154,\n  \"shen</w>\": 31098,\n  \"shenan\": 20965,\n  \"shenando\": 44666,\n  \"shenanigans</w>\": 26590,\n  \"shenko</w>\": 39751,\n  \"shenmue</w>\": 48279,\n  \"shenzhen</w>\": 38970,\n  \"shep\": 33757,\n  \"shep</w>\": 44857,\n  \"shepard</w>\": 26810,\n  \"shepher\": 11008,\n  \"shepherd</w>\": 13242,\n  \"shepherds</w>\": 42792,\n  \"sheppard</w>\": 37304,\n  \"sher\": 3570,\n  \"sher</w>\": 4510,\n  \"sheraton</w>\": 39400,\n  \"shere</w>\": 21507,\n  \"sheri\": 9235,\n  \"sheridan</w>\": 27085,\n  \"sheriff</w>\": 10309,\n  \"sherlock</w>\": 17294,\n  \"sherman</w>\": 17822,\n  \"sherry\": 44348,\n  \"sherry</w>\": 24689,\n  \"shers</w>\": 14141,\n  \"sherwood</w>\": 24527,\n  \"sheryl</w>\": 39773,\n  \"shes\": 45514,\n  \"shes</w>\": 2502,\n  \"shet\": 15850,\n  \"shetland</w>\": 29595,\n  \"shetty</w>\": 25533,\n  \"shev\": 45182,\n  \"sheva</w>\": 45132,\n  \"shh</w>\": 35025,\n  \"shhh</w>\": 36932,\n  \"shi\": 823,\n  \"shi</w>\": 3533,\n  \"shia</w>\": 23791,\n  \"shibu\": 36177,\n  \"shibuya</w>\": 41623,\n  \"shie</w>\": 26638,\n  \"shiel\": 33413,\n  \"shield</w>\": 8670,\n  \"shields</w>\": 19085,\n  \"shies</w>\": 35312,\n  \"shif\": 35317,\n  \"shift\": 43767,\n  \"shift</w>\": 6905,\n  \"shifted</w>\": 34429,\n  \"shifter</w>\": 48944,\n  \"shifting</w>\": 21992,\n  \"shifts</w>\": 23957,\n  \"shik</w>\": 36980,\n  \"shil\": 14370,\n  \"shill\": 32121,\n  \"shill</w>\": 30090,\n  \"shilpa\": 47062,\n  \"shilpa</w>\": 40690,\n  \"shim\": 11986,\n  \"shim</w>\": 32780,\n  \"shima</w>\": 14382,\n  \"shimano</w>\": 48904,\n  \"shimi</w>\": 40517,\n  \"shimmer</w>\": 38792,\n  \"shin\": 5664,\n  \"shin</w>\": 11784,\n  \"shinde</w>\": 41516,\n  \"shine\": 17582,\n  \"shine</w>\": 3780,\n  \"shinee</w>\": 19660,\n  \"shines</w>\": 16015,\n  \"shing\": 38641,\n  \"shing</w>\": 1743,\n  \"shining</w>\": 10485,\n  \"shino\": 43074,\n  \"shiny</w>\": 12190,\n  \"ship\": 7645,\n  \"ship</w>\": 1158,\n  \"shipment</w>\": 28553,\n  \"shipp\": 34709,\n  \"shipped</w>\": 15279,\n  \"shippers</w>\": 44789,\n  \"shipping</w>\": 5721,\n  \"ships</w>\": 3262,\n  \"shipwreck</w>\": 48878,\n  \"shipy\": 26828,\n  \"shipyard</w>\": 31273,\n  \"shir\": 1956,\n  \"shiraz</w>\": 35618,\n  \"shire\": 11975,\n  \"shire</w>\": 2968,\n  \"shirehour</w>\": 32456,\n  \"shirley</w>\": 18189,\n  \"shiro</w>\": 26048,\n  \"shirt\": 27576,\n  \"shirt</w>\": 2523,\n  \"shirtless</w>\": 28959,\n  \"shirts</w>\": 5803,\n  \"shistory</w>\": 34979,\n  \"shiv\": 18042,\n  \"shiv</w>\": 37121,\n  \"shiva\": 33881,\n  \"shiva</w>\": 21174,\n  \"shka</w>\": 38944,\n  \"shld</w>\": 49359,\n  \"shma</w>\": 48074,\n  \"shment</w>\": 8802,\n  \"shments</w>\": 18822,\n  \"sho\": 719,\n  \"sho</w>\": 13756,\n  \"shock\": 19617,\n  \"shock</w>\": 8736,\n  \"shocked</w>\": 15787,\n  \"shocker</w>\": 37971,\n  \"shockey</w>\": 22258,\n  \"shocking</w>\": 13394,\n  \"shocks</w>\": 31886,\n  \"shoe\": 16308,\n  \"shoe</w>\": 7342,\n  \"shoes\": 49391,\n  \"shoes</w>\": 4079,\n  \"shol\": 21472,\n  \"sholm</w>\": 44139,\n  \"shome</w>\": 42701,\n  \"shon\": 19526,\n  \"shon</w>\": 37621,\n  \"shone</w>\": 47173,\n  \"shoo\": 1975,\n  \"shook</w>\": 20730,\n  \"shoops</w>\": 29956,\n  \"shoot\": 12531,\n  \"shoot</w>\": 3704,\n  \"shooter</w>\": 13645,\n  \"shooters</w>\": 31902,\n  \"shooting</w>\": 3992,\n  \"shootings</w>\": 26753,\n  \"shootout</w>\": 20666,\n  \"shoots</w>\": 14144,\n  \"shop\": 5738,\n  \"shop</w>\": 1557,\n  \"shopify</w>\": 47949,\n  \"shoplocal</w>\": 21775,\n  \"shopp\": 38486,\n  \"shoppe</w>\": 38236,\n  \"shopped</w>\": 28088,\n  \"shopper</w>\": 24346,\n  \"shoppers</w>\": 22316,\n  \"shopping\": 42101,\n  \"shopping</w>\": 4266,\n  \"shops</w>\": 6467,\n  \"shopsmall</w>\": 35942,\n  \"shor\": 3209,\n  \"shore\": 14717,\n  \"shore</w>\": 5928,\n  \"shored\": 33140,\n  \"shoreditch</w>\": 35042,\n  \"shoreline</w>\": 34807,\n  \"shores</w>\": 18102,\n  \"short\": 6803,\n  \"short</w>\": 3005,\n  \"shortage</w>\": 19910,\n  \"shortages</w>\": 38730,\n  \"shortcuts</w>\": 45793,\n  \"shorten</w>\": 41711,\n  \"shorter</w>\": 20350,\n  \"shortest</w>\": 33717,\n  \"shortfilm</w>\": 37204,\n  \"shorth\": 37397,\n  \"shortlist</w>\": 28163,\n  \"shortlisted</w>\": 20631,\n  \"shortly</w>\": 11967,\n  \"shorts</w>\": 9680,\n  \"shorty</w>\": 33502,\n  \"shot\": 9805,\n  \"shot</w>\": 2000,\n  \"shotel</w>\": 42365,\n  \"shotgun</w>\": 21643,\n  \"shots</w>\": 5342,\n  \"shou\": 3890,\n  \"shoul\": 29847,\n  \"should\": 14947,\n  \"should</w>\": 1535,\n  \"shoulder</w>\": 8476,\n  \"shoulders</w>\": 18738,\n  \"shouldn</w>\": 9416,\n  \"shour</w>\": 20025,\n  \"shouse</w>\": 28671,\n  \"shout\": 7335,\n  \"shout</w>\": 5214,\n  \"shouted</w>\": 44397,\n  \"shouting</w>\": 26464,\n  \"shoutout</w>\": 8274,\n  \"shouts</w>\": 26709,\n  \"shovel</w>\": 31778,\n  \"show\": 2133,\n  \"show</w>\": 1080,\n  \"showbiz</w>\": 34156,\n  \"showcas\": 14290,\n  \"showcase</w>\": 7265,\n  \"showcased</w>\": 35786,\n  \"showcases</w>\": 26266,\n  \"showcasing</w>\": 17036,\n  \"showdown</w>\": 15576,\n  \"showed</w>\": 7150,\n  \"shower</w>\": 7777,\n  \"showers</w>\": 9893,\n  \"showing</w>\": 3649,\n  \"shown</w>\": 8506,\n  \"showroom</w>\": 16821,\n  \"shows</w>\": 2665,\n  \"showtime\": 40576,\n  \"showtime</w>\": 15442,\n  \"showyour\": 46733,\n  \"shp</w>\": 38341,\n  \"shq</w>\": 21145,\n  \"shr\": 10118,\n  \"shra\": 21360,\n  \"shradd\": 28172,\n  \"shraddha\": 35208,\n  \"shraddhakapoor</w>\": 40385,\n  \"shre\": 12101,\n  \"shred\": 19756,\n  \"shred</w>\": 33017,\n  \"shredded</w>\": 31772,\n  \"shredding</w>\": 45534,\n  \"shree</w>\": 37410,\n  \"shrek</w>\": 35009,\n  \"shrews\": 26411,\n  \"shrewsbury</w>\": 30921,\n  \"shri\": 8838,\n  \"shri</w>\": 11424,\n  \"shrimp</w>\": 12727,\n  \"shrin\": 24865,\n  \"shrine</w>\": 16156,\n  \"shrink</w>\": 34957,\n  \"shrinking</w>\": 41243,\n  \"shrm</w>\": 44163,\n  \"shro\": 15259,\n  \"shroff</w>\": 32081,\n  \"shrop\": 22630,\n  \"shropshire</w>\": 26344,\n  \"shru\": 14911,\n  \"shrub</w>\": 41464,\n  \"shrubs</w>\": 47975,\n  \"shrun\": 46767,\n  \"shs</w>\": 16184,\n  \"sht</w>\": 44210,\n  \"shti</w>\": 38927,\n  \"shu\": 2872,\n  \"shu</w>\": 17651,\n  \"shua</w>\": 33771,\n  \"shub</w>\": 40552,\n  \"shud</w>\": 45782,\n  \"shuff\": 42641,\n  \"shuffle</w>\": 21681,\n  \"shui</w>\": 45473,\n  \"shuk\": 29927,\n  \"shukla</w>\": 46829,\n  \"shul\": 30721,\n  \"shum\": 37383,\n  \"shun\": 24479,\n  \"shun</w>\": 39594,\n  \"shur\": 41032,\n  \"shut\": 8702,\n  \"shut</w>\": 8282,\n  \"shutdown</w>\": 16051,\n  \"shutout</w>\": 24385,\n  \"shuts</w>\": 28313,\n  \"shutt\": 31866,\n  \"shutter\": 36235,\n  \"shutter</w>\": 33902,\n  \"shutters</w>\": 46894,\n  \"shutting</w>\": 31383,\n  \"shuttle</w>\": 15842,\n  \"shwar</w>\": 41640,\n  \"shy\": 22678,\n  \"shy</w>\": 9682,\n  \"si\": 564,\n  \"si</w>\": 2990,\n  \"sia</w>\": 2357,\n  \"siam\": 29686,\n  \"siam</w>\": 48248,\n  \"siamese</w>\": 43161,\n  \"sian\": 28510,\n  \"sian</w>\": 6221,\n  \"sians</w>\": 26583,\n  \"sias</w>\": 28645,\n  \"siber\": 22206,\n  \"siberia</w>\": 39969,\n  \"siberian</w>\": 34058,\n  \"sibl\": 14338,\n  \"sible</w>\": 14507,\n  \"sibling\": 43060,\n  \"sibling</w>\": 23779,\n  \"siblings</w>\": 17156,\n  \"sic\": 8278,\n  \"sic</w>\": 1118,\n  \"sica</w>\": 34125,\n  \"sical</w>\": 33875,\n  \"sichuan</w>\": 48950,\n  \"sicilian</w>\": 45292,\n  \"sicily</w>\": 23179,\n  \"sick\": 11143,\n  \"sick</w>\": 5359,\n  \"sickest</w>\": 47972,\n  \"sickle</w>\": 41459,\n  \"sickness</w>\": 28898,\n  \"sics</w>\": 26297,\n  \"sid\": 10117,\n  \"sid</w>\": 15119,\n  \"sidd\": 19842,\n  \"siddi\": 35227,\n  \"side\": 5869,\n  \"side</w>\": 1145,\n  \"sided</w>\": 21061,\n  \"sidekick</w>\": 44683,\n  \"sidel\": 43557,\n  \"sideline</w>\": 32056,\n  \"sidelines</w>\": 31046,\n  \"sider</w>\": 30581,\n  \"siders</w>\": 41249,\n  \"sides</w>\": 7578,\n  \"sideshow</w>\": 46789,\n  \"sidewalk</w>\": 23278,\n  \"sidewalks</w>\": 43583,\n  \"sideways</w>\": 35593,\n  \"siding</w>\": 38758,\n  \"sidney</w>\": 22598,\n  \"sie\": 8533,\n  \"sie</w>\": 5685,\n  \"sieg\": 49203,\n  \"siege</w>\": 18460,\n  \"siegel</w>\": 48559,\n  \"siem\": 18434,\n  \"siemens</w>\": 30147,\n  \"siempre</w>\": 44030,\n  \"siena</w>\": 33336,\n  \"sienna</w>\": 40373,\n  \"sier\": 10028,\n  \"sier</w>\": 7444,\n  \"sierra</w>\": 13552,\n  \"siers</w>\": 35923,\n  \"sies</w>\": 16367,\n  \"siest</w>\": 18323,\n  \"sif</w>\": 29300,\n  \"sig\": 872,\n  \"sig</w>\": 19145,\n  \"sigh\": 36303,\n  \"sigh</w>\": 15505,\n  \"sighs</w>\": 44579,\n  \"sight\": 16897,\n  \"sight</w>\": 6329,\n  \"sighted</w>\": 33034,\n  \"sighting</w>\": 17507,\n  \"sightings</w>\": 30004,\n  \"sights</w>\": 17364,\n  \"sightseeing</w>\": 34210,\n  \"sigma\": 45075,\n  \"sigma</w>\": 15697,\n  \"sign\": 5538,\n  \"sign</w>\": 2292,\n  \"signage</w>\": 21156,\n  \"signal</w>\": 10781,\n  \"signaling</w>\": 38492,\n  \"signalling</w>\": 48426,\n  \"signals</w>\": 17150,\n  \"signation</w>\": 24347,\n  \"signature</w>\": 9189,\n  \"signatures</w>\": 21865,\n  \"signed</w>\": 3163,\n  \"signee</w>\": 39778,\n  \"signi\": 34023,\n  \"signific\": 6374,\n  \"significance</w>\": 23769,\n  \"significant</w>\": 8735,\n  \"significantly</w>\": 16187,\n  \"signing</w>\": 4401,\n  \"signingday</w>\": 40282,\n  \"signings</w>\": 27731,\n  \"signs</w>\": 4659,\n  \"signup</w>\": 40791,\n  \"sigue</w>\": 49401,\n  \"sii</w>\": 36672,\n  \"sik\": 19974,\n  \"sik</w>\": 22413,\n  \"sika</w>\": 31144,\n  \"sikh</w>\": 21829,\n  \"sikhs</w>\": 45426,\n  \"sil\": 1556,\n  \"sil</w>\": 8315,\n  \"sila</w>\": 41754,\n  \"sile\": 37620,\n  \"silen\": 39048,\n  \"silence</w>\": 8462,\n  \"silenced</w>\": 45415,\n  \"silent\": 30352,\n  \"silent</w>\": 8487,\n  \"silently</w>\": 42640,\n  \"silhou\": 20589,\n  \"silhouette</w>\": 26149,\n  \"silic\": 23830,\n  \"silicon\": 32412,\n  \"silicon</w>\": 17888,\n  \"silicone</w>\": 28221,\n  \"silk\": 25891,\n  \"silk</w>\": 9743,\n  \"silky</w>\": 29554,\n  \"sill\": 42468,\n  \"sill</w>\": 48024,\n  \"silly</w>\": 11883,\n  \"silon</w>\": 31841,\n  \"sils</w>\": 39708,\n  \"silva</w>\": 16489,\n  \"silve\": 37697,\n  \"silver\": 7525,\n  \"silver</w>\": 3467,\n  \"silverado</w>\": 46160,\n  \"silverstone</w>\": 29666,\n  \"silvia</w>\": 37289,\n  \"sim\": 5026,\n  \"sim</w>\": 10740,\n  \"sima</w>\": 35871,\n  \"simba</w>\": 39492,\n  \"simcoe</w>\": 47148,\n  \"sime\": 28329,\n  \"simi</w>\": 38073,\n  \"simil\": 7202,\n  \"similar</w>\": 8547,\n  \"similarities</w>\": 34716,\n  \"simm\": 13001,\n  \"simmons</w>\": 14699,\n  \"simo</w>\": 37171,\n  \"simon\": 8796,\n  \"simon</w>\": 6668,\n  \"simona</w>\": 46277,\n  \"simone</w>\": 19062,\n  \"simons</w>\": 33097,\n  \"simp\": 2542,\n  \"simple\": 19018,\n  \"simple</w>\": 4129,\n  \"simpler</w>\": 35489,\n  \"simplest</w>\": 39588,\n  \"simpli\": 16868,\n  \"simplicity</w>\": 21262,\n  \"simplified</w>\": 36647,\n  \"simplify</w>\": 35479,\n  \"simply\": 25637,\n  \"simply</w>\": 6151,\n  \"simpson\": 41805,\n  \"simpson</w>\": 11750,\n  \"simpsons</w>\": 21092,\n  \"sims</w>\": 14021,\n  \"simul\": 9845,\n  \"simulated</w>\": 46395,\n  \"simulation</w>\": 18610,\n  \"simulator</w>\": 20821,\n  \"simultaneous</w>\": 48816,\n  \"simultaneously</w>\": 28575,\n  \"sin\": 1303,\n  \"sin</w>\": 3421,\n  \"sina</w>\": 19541,\n  \"sinai</w>\": 33226,\n  \"sinatra</w>\": 27262,\n  \"sinc</w>\": 30464,\n  \"since</w>\": 1855,\n  \"sincere\": 24513,\n  \"sincere</w>\": 24886,\n  \"sincerely</w>\": 25673,\n  \"sinclair</w>\": 23100,\n  \"sind\": 39598,\n  \"sind</w>\": 30877,\n  \"sindh</w>\": 20754,\n  \"sindia</w>\": 48038,\n  \"sine\": 22741,\n  \"sine</w>\": 33793,\n  \"sinfo</w>\": 47178,\n  \"sing\": 1387,\n  \"sing</w>\": 1197,\n  \"singapo\": 27861,\n  \"singapore\": 28879,\n  \"singapore</w>\": 6754,\n  \"singer\": 33880,\n  \"singer</w>\": 5108,\n  \"singers</w>\": 15613,\n  \"singersongwriter</w>\": 44585,\n  \"singh\": 19445,\n  \"singh</w>\": 5715,\n  \"singing</w>\": 5864,\n  \"single\": 19524,\n  \"single</w>\": 2688,\n  \"singles</w>\": 12025,\n  \"singleton</w>\": 46247,\n  \"singly</w>\": 16619,\n  \"sings</w>\": 13635,\n  \"singul\": 34003,\n  \"singular</w>\": 44009,\n  \"singularity</w>\": 48410,\n  \"sinha</w>\": 29416,\n  \"sini\": 41781,\n  \"sini</w>\": 26319,\n  \"sinister</w>\": 31313,\n  \"sink\": 37232,\n  \"sink</w>\": 14551,\n  \"sinking</w>\": 27949,\n  \"sinks</w>\": 32710,\n  \"sinn</w>\": 36315,\n  \"sinner</w>\": 45380,\n  \"sinners</w>\": 43436,\n  \"sino</w>\": 29759,\n  \"sins</w>\": 9345,\n  \"sinthe\": 30737,\n  \"sinu\": 37351,\n  \"sinus</w>\": 47535,\n  \"sio</w>\": 10807,\n  \"siob\": 40954,\n  \"siology</w>\": 46315,\n  \"sion\": 5676,\n  \"sion</w>\": 1015,\n  \"sional</w>\": 14533,\n  \"sionally</w>\": 30754,\n  \"sions</w>\": 4060,\n  \"sioux\": 44695,\n  \"sioux</w>\": 24954,\n  \"sip</w>\": 16096,\n  \"sipping</w>\": 28527,\n  \"sir\": 10708,\n  \"sir</w>\": 3846,\n  \"sire</w>\": 28450,\n  \"siren</w>\": 33026,\n  \"sirens</w>\": 35907,\n  \"siri\": 13986,\n  \"siri</w>\": 18394,\n  \"sirius\": 23574,\n  \"sirius</w>\": 34999,\n  \"siriusxm</w>\": 29833,\n  \"sirloin</w>\": 46828,\n  \"sis\": 18132,\n  \"sis</w>\": 2580,\n  \"sisd</w>\": 27132,\n  \"sisi</w>\": 37892,\n  \"siss\": 42929,\n  \"sissy</w>\": 27564,\n  \"sist</w>\": 20520,\n  \"sista</w>\": 37448,\n  \"sister\": 17417,\n  \"sister</w>\": 3677,\n  \"sisterhood</w>\": 37313,\n  \"sisters</w>\": 6404,\n  \"sit\": 7387,\n  \"sit</w>\": 4037,\n  \"sitcom</w>\": 30426,\n  \"site\": 26792,\n  \"site</w>\": 1988,\n  \"sites</w>\": 7236,\n  \"sith</w>\": 41499,\n  \"sito</w>\": 42613,\n  \"sits</w>\": 12726,\n  \"sitt\": 42988,\n  \"sitter</w>\": 40777,\n  \"sittin</w>\": 40887,\n  \"sitting</w>\": 4919,\n  \"situ\": 5562,\n  \"situ</w>\": 42536,\n  \"situated</w>\": 22030,\n  \"situation</w>\": 7144,\n  \"situations</w>\": 19096,\n  \"sity\": 38177,\n  \"sity</w>\": 5477,\n  \"siu</w>\": 40174,\n  \"sium</w>\": 8090,\n  \"sius</w>\": 27595,\n  \"siva</w>\": 20991,\n  \"sivan</w>\": 36931,\n  \"sive\": 23572,\n  \"sive</w>\": 1875,\n  \"sively</w>\": 10343,\n  \"siveness</w>\": 39667,\n  \"sives</w>\": 23896,\n  \"sivity</w>\": 42738,\n  \"siwon</w>\": 29055,\n  \"six\": 5968,\n  \"six</w>\": 4093,\n  \"sixers</w>\": 25941,\n  \"sixteen</w>\": 28677,\n  \"sixth</w>\": 12909,\n  \"sixties</w>\": 44948,\n  \"sixty</w>\": 32588,\n  \"siya</w>\": 44440,\n  \"size\": 38377,\n  \"size</w>\": 3235,\n  \"sized</w>\": 9832,\n  \"sizes</w>\": 10253,\n  \"sizing</w>\": 28330,\n  \"sizz\": 23778,\n  \"sizzle</w>\": 47890,\n  \"sizzling</w>\": 35799,\n  \"sj\": 7536,\n  \"sj</w>\": 16010,\n  \"sjo\": 42012,\n  \"sk\": 909,\n  \"sk</w>\": 2058,\n  \"ska</w>\": 7495,\n  \"skag\": 31948,\n  \"skan\": 46772,\n  \"skar\": 27587,\n  \"skar</w>\": 26835,\n  \"skate\": 13740,\n  \"skate</w>\": 12745,\n  \"skateboard</w>\": 31777,\n  \"skateboarding</w>\": 31352,\n  \"skater</w>\": 30337,\n  \"skaters</w>\": 39824,\n  \"skates</w>\": 31479,\n  \"skc</w>\": 44551,\n  \"ske\": 6261,\n  \"ske</w>\": 25516,\n  \"skel\": 36564,\n  \"skelet\": 27075,\n  \"skeletal</w>\": 37369,\n  \"skeleton</w>\": 20062,\n  \"skeletons</w>\": 48874,\n  \"skell</w>\": 40801,\n  \"skep\": 27772,\n  \"skeptical</w>\": 44934,\n  \"sker\": 37640,\n  \"sker</w>\": 33600,\n  \"sket\": 3744,\n  \"sketch\": 11767,\n  \"sketch</w>\": 5269,\n  \"sketchbook</w>\": 18899,\n  \"sketched</w>\": 38581,\n  \"sketches</w>\": 17622,\n  \"sketching</w>\": 23228,\n  \"sketchy</w>\": 41582,\n  \"skey</w>\": 37453,\n  \"ski\": 3327,\n  \"ski</w>\": 3428,\n  \"skid\": 36574,\n  \"skid</w>\": 32099,\n  \"skier</w>\": 42585,\n  \"skies</w>\": 7244,\n  \"skiing</w>\": 14400,\n  \"skil\": 24543,\n  \"skill\": 15598,\n  \"skill</w>\": 10604,\n  \"skilled</w>\": 17535,\n  \"skillet</w>\": 40568,\n  \"skills</w>\": 4113,\n  \"skim\": 33191,\n  \"skin\": 5821,\n  \"skin</w>\": 3575,\n  \"skincare</w>\": 12648,\n  \"skine</w>\": 37300,\n  \"sking\": 46215,\n  \"skinned</w>\": 42199,\n  \"skinner</w>\": 30261,\n  \"skinny\": 42729,\n  \"skinny</w>\": 15457,\n  \"skins</w>\": 11594,\n  \"skip\": 39793,\n  \"skip</w>\": 14296,\n  \"skipped</w>\": 40639,\n  \"skipper</w>\": 22226,\n  \"skipping</w>\": 34867,\n  \"skir\": 8919,\n  \"skirt</w>\": 12386,\n  \"skirts</w>\": 24840,\n  \"skis</w>\": 32843,\n  \"skit</w>\": 43573,\n  \"skitchen</w>\": 42820,\n  \"skittles</w>\": 43213,\n  \"sko\": 15141,\n  \"sko</w>\": 23493,\n  \"skoda</w>\": 38668,\n  \"skool</w>\": 26743,\n  \"skril\": 43149,\n  \"skrillex</w>\": 43651,\n  \"sks</w>\": 48136,\n  \"sku\": 10836,\n  \"skul\": 17561,\n  \"skull\": 34068,\n  \"skull</w>\": 12092,\n  \"skulls</w>\": 31804,\n  \"skunk</w>\": 42194,\n  \"sky\": 3075,\n  \"sky</w>\": 2390,\n  \"skybet\": 45540,\n  \"skye</w>\": 21475,\n  \"skyl\": 43554,\n  \"skylar</w>\": 45411,\n  \"skyline</w>\": 14606,\n  \"skymap</w>\": 41734,\n  \"skynews</w>\": 40977,\n  \"skype</w>\": 17069,\n  \"skyrim</w>\": 33693,\n  \"skysports\": 39845,\n  \"skysports</w>\": 46725,\n  \"skywalker</w>\": 32936,\n  \"sl\": 2621,\n  \"sl</w>\": 7489,\n  \"sla\": 2725,\n  \"sla</w>\": 26707,\n  \"slab</w>\": 24241,\n  \"slabs</w>\": 42818,\n  \"slack\": 37108,\n  \"slack</w>\": 30142,\n  \"slade</w>\": 33546,\n  \"slain</w>\": 35972,\n  \"slalom</w>\": 43540,\n  \"slam\": 14891,\n  \"slam</w>\": 10131,\n  \"slammed</w>\": 29772,\n  \"slams</w>\": 18907,\n  \"slan\": 44663,\n  \"slan</w>\": 47193,\n  \"sland</w>\": 11294,\n  \"slang</w>\": 33655,\n  \"slap\": 48830,\n  \"slap</w>\": 21751,\n  \"slapped</w>\": 38861,\n  \"slaps</w>\": 46796,\n  \"slash</w>\": 19749,\n  \"slat\": 38966,\n  \"slate</w>\": 17919,\n  \"slated</w>\": 36094,\n  \"slater</w>\": 25968,\n  \"slaugh\": 26782,\n  \"slaughter</w>\": 19815,\n  \"slaughtered</w>\": 46615,\n  \"slav</w>\": 47292,\n  \"slava</w>\": 41797,\n  \"slave</w>\": 14029,\n  \"slavery</w>\": 15754,\n  \"slaves</w>\": 23833,\n  \"slaw</w>\": 28178,\n  \"slay\": 48319,\n  \"slay</w>\": 19380,\n  \"slayed</w>\": 44870,\n  \"slayer</w>\": 21605,\n  \"slaying</w>\": 27812,\n  \"slays</w>\": 45648,\n  \"slc</w>\": 21972,\n  \"sle\": 1709,\n  \"sleague</w>\": 23336,\n  \"sled</w>\": 28438,\n  \"sledge</w>\": 48750,\n  \"slee\": 17642,\n  \"slee</w>\": 38977,\n  \"sleek</w>\": 23187,\n  \"sleep\": 4656,\n  \"sleep</w>\": 3840,\n  \"sleeper</w>\": 28709,\n  \"sleeping</w>\": 6982,\n  \"sleepless</w>\": 39779,\n  \"sleepover</w>\": 39415,\n  \"sleeps</w>\": 16610,\n  \"sleepy\": 32572,\n  \"sleepy</w>\": 14497,\n  \"sleet</w>\": 36948,\n  \"sleeve\": 35270,\n  \"sleeve</w>\": 10536,\n  \"sleeveless</w>\": 38049,\n  \"sleeves</w>\": 19691,\n  \"sleg</w>\": 47650,\n  \"sleigh</w>\": 30865,\n  \"slender</w>\": 40331,\n  \"slept</w>\": 20388,\n  \"sler</w>\": 14066,\n  \"sley\": 17198,\n  \"sley</w>\": 6496,\n  \"sli\": 1811,\n  \"sli</w>\": 44824,\n  \"slic\": 19692,\n  \"slice</w>\": 13431,\n  \"sliced</w>\": 28121,\n  \"slices</w>\": 28424,\n  \"slick</w>\": 18341,\n  \"slide\": 27828,\n  \"slide</w>\": 8837,\n  \"slider</w>\": 37861,\n  \"sliders</w>\": 40700,\n  \"slides</w>\": 15939,\n  \"slideshow</w>\": 42817,\n  \"sliding</w>\": 21468,\n  \"slife</w>\": 15448,\n  \"sliga</w>\": 21080,\n  \"slight</w>\": 14297,\n  \"slightly</w>\": 8456,\n  \"sligo</w>\": 30424,\n  \"slike\": 38744,\n  \"slim\": 35226,\n  \"slim</w>\": 12364,\n  \"slime</w>\": 29107,\n  \"sling\": 28021,\n  \"sling</w>\": 32607,\n  \"slinger</w>\": 47269,\n  \"slions</w>\": 43363,\n  \"slip\": 39785,\n  \"slip</w>\": 12105,\n  \"slipknot</w>\": 41816,\n  \"slipped</w>\": 30344,\n  \"slipper</w>\": 39644,\n  \"slippers</w>\": 26509,\n  \"slippery</w>\": 30814,\n  \"slipping</w>\": 36301,\n  \"slips</w>\": 30632,\n  \"slist</w>\": 33749,\n  \"slit</w>\": 47011,\n  \"slive</w>\": 31652,\n  \"slo\": 4303,\n  \"slo</w>\": 36083,\n  \"sloan</w>\": 29110,\n  \"sloane</w>\": 41553,\n  \"slogan</w>\": 23398,\n  \"slogans</w>\": 42795,\n  \"slope</w>\": 22769,\n  \"slopes</w>\": 24066,\n  \"sloppy</w>\": 36154,\n  \"slot</w>\": 14500,\n  \"sloth</w>\": 30007,\n  \"slots</w>\": 19238,\n  \"slou\": 48493,\n  \"slovak\": 23315,\n  \"slovakia</w>\": 25994,\n  \"sloven\": 17018,\n  \"slovenia</w>\": 21037,\n  \"slow\": 6674,\n  \"slow</w>\": 5444,\n  \"slowdown</w>\": 38421,\n  \"slowed</w>\": 43793,\n  \"slower</w>\": 29181,\n  \"slowing</w>\": 29839,\n  \"slowly</w>\": 9568,\n  \"slows</w>\": 46855,\n  \"slp</w>\": 45599,\n  \"slr</w>\": 21325,\n  \"sls</w>\": 33651,\n  \"slt</w>\": 39283,\n  \"sltd</w>\": 36388,\n  \"slu\": 7224,\n  \"slu</w>\": 47456,\n  \"slug</w>\": 34190,\n  \"slugger</w>\": 48671,\n  \"slum</w>\": 46754,\n  \"slumber</w>\": 44295,\n  \"slump</w>\": 35588,\n  \"slur\": 30476,\n  \"slush</w>\": 39815,\n  \"slv</w>\": 45526,\n  \"sly\": 28145,\n  \"sly</w>\": 21062,\n  \"sm\": 978,\n  \"sm</w>\": 2764,\n  \"sma\": 4357,\n  \"sma</w>\": 11854,\n  \"smack\": 21280,\n  \"smack</w>\": 30026,\n  \"smackdown</w>\": 26138,\n  \"smafia</w>\": 47686,\n  \"smag</w>\": 32212,\n  \"smal\": 48379,\n  \"small\": 5244,\n  \"small</w>\": 2442,\n  \"smallbiz\": 41724,\n  \"smallbiz</w>\": 18987,\n  \"smallbusiness</w>\": 21316,\n  \"smalle\": 18490,\n  \"smaller</w>\": 12431,\n  \"smallest</w>\": 18686,\n  \"smalls</w>\": 41696,\n  \"sman</w>\": 9612,\n  \"smar\": 3201,\n  \"smart\": 5383,\n  \"smart</w>\": 4115,\n  \"smartcities</w>\": 34822,\n  \"smartcity</w>\": 33973,\n  \"smarter</w>\": 18990,\n  \"smartest</w>\": 37092,\n  \"smarthome</w>\": 47726,\n  \"smartphone</w>\": 11290,\n  \"smartphones</w>\": 22212,\n  \"smartwatch</w>\": 35798,\n  \"smash\": 17258,\n  \"smash</w>\": 10332,\n  \"smashbros</w>\": 44897,\n  \"smashed</w>\": 18410,\n  \"smashes</w>\": 45657,\n  \"smashing</w>\": 19632,\n  \"smatter</w>\": 16537,\n  \"smb</w>\": 30446,\n  \"smc\": 31375,\n  \"smc</w>\": 28312,\n  \"smd</w>\": 34582,\n  \"sme\": 11758,\n  \"sme</w>\": 15650,\n  \"smear</w>\": 37546,\n  \"smel\": 28476,\n  \"smell</w>\": 9688,\n  \"smelling</w>\": 32493,\n  \"smells</w>\": 14668,\n  \"smelly</w>\": 46145,\n  \"smen</w>\": 15961,\n  \"smer\": 48526,\n  \"smere</w>\": 39629,\n  \"smes</w>\": 26141,\n  \"smg</w>\": 46876,\n  \"smh</w>\": 9623,\n  \"smi\": 5655,\n  \"smi</w>\": 40049,\n  \"smil\": 33937,\n  \"smile\": 27641,\n  \"smile</w>\": 3490,\n  \"smiled</w>\": 34362,\n  \"smiles</w>\": 8726,\n  \"smiley</w>\": 22925,\n  \"smiling</w>\": 9200,\n  \"smir\": 24667,\n  \"smith\": 10527,\n  \"smith</w>\": 2915,\n  \"smiths</w>\": 27872,\n  \"smithson\": 25372,\n  \"smithsonian</w>\": 31209,\n  \"smm</w>\": 19510,\n  \"smma</w>\": 42370,\n  \"smo\": 2513,\n  \"smo</w>\": 13437,\n  \"smobile</w>\": 38923,\n  \"smog</w>\": 44425,\n  \"smoke\": 20381,\n  \"smoke</w>\": 6664,\n  \"smoked</w>\": 11161,\n  \"smoker</w>\": 32348,\n  \"smokers</w>\": 29571,\n  \"smokes</w>\": 40336,\n  \"smokey</w>\": 23670,\n  \"smokin</w>\": 32825,\n  \"smoking</w>\": 9038,\n  \"smoky</w>\": 25549,\n  \"smol\": 29939,\n  \"smol</w>\": 40403,\n  \"smoo\": 5430,\n  \"smooth\": 10958,\n  \"smooth</w>\": 8990,\n  \"smoother</w>\": 44271,\n  \"smoothie</w>\": 16668,\n  \"smoothies</w>\": 34458,\n  \"smoothly</w>\": 32380,\n  \"smore</w>\": 48323,\n  \"smp</w>\": 32260,\n  \"smriti\": 49227,\n  \"sms</w>\": 10409,\n  \"smt</w>\": 26672,\n  \"smtown</w>\": 26072,\n  \"smu\": 10878,\n  \"smu</w>\": 30458,\n  \"smug</w>\": 41021,\n  \"smugg\": 28130,\n  \"smuggling</w>\": 34146,\n  \"smur\": 24708,\n  \"smusic</w>\": 19191,\n  \"smw</w>\": 44929,\n  \"smx</w>\": 46699,\n  \"smy\": 14381,\n  \"smyth</w>\": 44822,\n  \"sn\": 1672,\n  \"sn</w>\": 5844,\n  \"sna\": 4032,\n  \"snack\": 47548,\n  \"snack</w>\": 10039,\n  \"snacking</w>\": 46474,\n  \"snacks</w>\": 12349,\n  \"snag\": 34789,\n  \"snag</w>\": 28043,\n  \"snagged</w>\": 48534,\n  \"snail</w>\": 23132,\n  \"snails</w>\": 34928,\n  \"snake\": 30133,\n  \"snake</w>\": 8798,\n  \"snakes</w>\": 19605,\n  \"snap\": 4578,\n  \"snap</w>\": 7404,\n  \"snapback</w>\": 31234,\n  \"snapchat</w>\": 7799,\n  \"snapmatic</w>\": 45907,\n  \"snapp\": 10185,\n  \"snapped</w>\": 15543,\n  \"snapper</w>\": 31677,\n  \"snapping</w>\": 31581,\n  \"snaps</w>\": 16890,\n  \"snapshot</w>\": 18243,\n  \"snar\": 30810,\n  \"snare</w>\": 40651,\n  \"snat\": 18457,\n  \"snatch</w>\": 35302,\n  \"snatched</w>\": 44821,\n  \"snation</w>\": 14362,\n  \"snazzy</w>\": 48963,\n  \"snc</w>\": 39918,\n  \"sne\": 3791,\n  \"sne</w>\": 46503,\n  \"sneak\": 27871,\n  \"sneak</w>\": 6917,\n  \"sneaker\": 31698,\n  \"sneaker</w>\": 24781,\n  \"sneakers</w>\": 17397,\n  \"sneaking</w>\": 34633,\n  \"sneakpeek</w>\": 47831,\n  \"sneaks</w>\": 40926,\n  \"sneaky</w>\": 21293,\n  \"snee\": 42095,\n  \"snell</w>\": 46410,\n  \"sner</w>\": 31424,\n  \"snes</w>\": 26667,\n  \"snews</w>\": 18623,\n  \"snf</w>\": 47651,\n  \"sng</w>\": 41549,\n  \"snhl</w>\": 43093,\n  \"sni\": 7186,\n  \"sni</w>\": 35570,\n  \"snickers</w>\": 49127,\n  \"sniff</w>\": 37841,\n  \"snip</w>\": 42954,\n  \"sniper</w>\": 22157,\n  \"snippet</w>\": 37531,\n  \"snippets</w>\": 44001,\n  \"snl</w>\": 16011,\n  \"sno\": 8567,\n  \"sno</w>\": 17802,\n  \"snoo\": 11352,\n  \"snooker</w>\": 25657,\n  \"snoop\": 44503,\n  \"snoop</w>\": 27754,\n  \"snoopdogg</w>\": 48388,\n  \"snoopy</w>\": 41967,\n  \"snooze</w>\": 40718,\n  \"snor\": 16590,\n  \"snoring</w>\": 44560,\n  \"snorkel\": 44285,\n  \"snorkeling</w>\": 48103,\n  \"snow\": 3880,\n  \"snow</w>\": 2583,\n  \"snowball</w>\": 39254,\n  \"snowboard</w>\": 33403,\n  \"snowboarding</w>\": 32397,\n  \"snowday</w>\": 37982,\n  \"snowden</w>\": 32154,\n  \"snowdon</w>\": 47107,\n  \"snowdonia</w>\": 36088,\n  \"snowed</w>\": 45073,\n  \"snowfall</w>\": 21714,\n  \"snowflake</w>\": 33447,\n  \"snowflakes</w>\": 38618,\n  \"snowing</w>\": 21443,\n  \"snowman</w>\": 22668,\n  \"snowstorm</w>\": 38777,\n  \"snowy</w>\": 14191,\n  \"snp</w>\": 15301,\n  \"sns</w>\": 36343,\n  \"snsd</w>\": 27961,\n  \"snt</w>\": 34834,\n  \"snu\": 9694,\n  \"snuck</w>\": 36522,\n  \"snug</w>\": 45169,\n  \"snuggle</w>\": 31327,\n  \"snuggles</w>\": 48165,\n  \"sny\": 17526,\n  \"snyder</w>\": 22106,\n  \"snz</w>\": 37678,\n  \"so\": 759,\n  \"so</w>\": 706,\n  \"soa</w>\": 39584,\n  \"soak</w>\": 24839,\n  \"soaked</w>\": 26592,\n  \"soaking</w>\": 26750,\n  \"soap\": 26086,\n  \"soap</w>\": 11088,\n  \"soaps</w>\": 40958,\n  \"soar\": 48997,\n  \"soar</w>\": 22241,\n  \"soaring</w>\": 27968,\n  \"soars</w>\": 41348,\n  \"sob\": 24900,\n  \"sob</w>\": 35507,\n  \"sobbing</w>\": 36691,\n  \"sober\": 30969,\n  \"sober</w>\": 24487,\n  \"sobre</w>\": 42768,\n  \"sobri\": 49308,\n  \"sobs</w>\": 43636,\n  \"soc\": 3253,\n  \"soc</w>\": 7741,\n  \"soca</w>\": 49239,\n  \"socal\": 46470,\n  \"socal</w>\": 20450,\n  \"soccer\": 16268,\n  \"soccer</w>\": 4233,\n  \"socceroos</w>\": 41997,\n  \"socent</w>\": 30831,\n  \"sochi</w>\": 21014,\n  \"soci\": 1720,\n  \"social\": 4803,\n  \"social</w>\": 2346,\n  \"socialism</w>\": 23372,\n  \"socialist</w>\": 18450,\n  \"socialists</w>\": 43839,\n  \"socially</w>\": 24555,\n  \"socialmedi\": 23813,\n  \"socialmedia</w>\": 9600,\n  \"socialmediamarketing</w>\": 31790,\n  \"societal</w>\": 40058,\n  \"societies</w>\": 25855,\n  \"society</w>\": 3757,\n  \"socio\": 44319,\n  \"socio</w>\": 42790,\n  \"sociology</w>\": 32373,\n  \"sock\": 29801,\n  \"sock</w>\": 18277,\n  \"socket</w>\": 28657,\n  \"socks</w>\": 8774,\n  \"socorro</w>\": 46409,\n  \"socute</w>\": 45086,\n  \"sod</w>\": 31435,\n  \"soda</w>\": 13533,\n  \"sodium</w>\": 29070,\n  \"soe\": 44136,\n  \"soe</w>\": 25498,\n  \"soever</w>\": 34024,\n  \"sof\": 1571,\n  \"sof</w>\": 41187,\n  \"sofa</w>\": 15723,\n  \"soff\": 35290,\n  \"soff</w>\": 30684,\n  \"sofficial</w>\": 20563,\n  \"sofi\": 41537,\n  \"sofia</w>\": 18914,\n  \"sofinstagram</w>\": 17301,\n  \"soft\": 12778,\n  \"soft</w>\": 3773,\n  \"softball</w>\": 8369,\n  \"softer</w>\": 44462,\n  \"softhe\": 23127,\n  \"softly</w>\": 34958,\n  \"software\": 35941,\n  \"software</w>\": 5847,\n  \"softwitter</w>\": 11311,\n  \"sog</w>\": 44775,\n  \"soggy</w>\": 41168,\n  \"sohn</w>\": 49267,\n  \"soho\": 47749,\n  \"soho</w>\": 17592,\n  \"soi</w>\": 40495,\n  \"soil\": 33417,\n  \"soil</w>\": 9216,\n  \"soils</w>\": 34891,\n  \"soir</w>\": 43427,\n  \"sok</w>\": 43456,\n  \"sol\": 1175,\n  \"sol</w>\": 9941,\n  \"sola</w>\": 40086,\n  \"solace</w>\": 42567,\n  \"solar\": 16990,\n  \"solar</w>\": 5199,\n  \"solareclipse</w>\": 44727,\n  \"sold\": 33116,\n  \"sold</w>\": 3939,\n  \"soldi\": 5098,\n  \"soldier</w>\": 9355,\n  \"soldiers</w>\": 7547,\n  \"sole\": 10519,\n  \"sole</w>\": 8576,\n  \"soleil</w>\": 33148,\n  \"solely</w>\": 27913,\n  \"solent</w>\": 47783,\n  \"soles</w>\": 22682,\n  \"soli\": 3911,\n  \"solic\": 19369,\n  \"solicitor</w>\": 45647,\n  \"solicitors</w>\": 46000,\n  \"solid\": 30626,\n  \"solid</w>\": 6148,\n  \"solidar\": 10415,\n  \"solidarity</w>\": 10983,\n  \"solidi\": 46136,\n  \"solids</w>\": 49070,\n  \"solihull</w>\": 45293,\n  \"solit\": 37039,\n  \"solitaire</w>\": 47257,\n  \"solitary</w>\": 33094,\n  \"solitude</w>\": 33199,\n  \"solo\": 17626,\n  \"solo</w>\": 5797,\n  \"soloist</w>\": 46391,\n  \"solom\": 15768,\n  \"solomon</w>\": 19785,\n  \"solos</w>\": 44868,\n  \"solst\": 20298,\n  \"solstice</w>\": 21359,\n  \"solu\": 2487,\n  \"solution</w>\": 4575,\n  \"solutions</w>\": 5140,\n  \"solve</w>\": 8917,\n  \"solved</w>\": 13451,\n  \"solves</w>\": 42740,\n  \"solving</w>\": 15581,\n  \"som\": 734,\n  \"som</w>\": 10672,\n  \"soma</w>\": 36170,\n  \"somal\": 40281,\n  \"somali</w>\": 26231,\n  \"somalia</w>\": 17051,\n  \"somaliland</w>\": 43315,\n  \"some\": 1132,\n  \"some</w>\": 836,\n  \"somebody</w>\": 8305,\n  \"someday</w>\": 17127,\n  \"somehow</w>\": 11735,\n  \"someone</w>\": 2100,\n  \"somer\": 9656,\n  \"somerhalder</w>\": 33990,\n  \"somerset</w>\": 14926,\n  \"somerville</w>\": 41409,\n  \"somes</w>\": 38124,\n  \"somethin</w>\": 33541,\n  \"something\": 28316,\n  \"something</w>\": 2006,\n  \"sometime</w>\": 21464,\n  \"sometimes</w>\": 4237,\n  \"somewhat</w>\": 17864,\n  \"somewhere</w>\": 8119,\n  \"somm\": 42726,\n  \"somme</w>\": 30625,\n  \"sommer</w>\": 44954,\n  \"somos</w>\": 24951,\n  \"son\": 1176,\n  \"son</w>\": 825,\n  \"sona</w>\": 21249,\n  \"sonam\": 40096,\n  \"sonar</w>\": 48235,\n  \"sonata</w>\": 37009,\n  \"sone</w>\": 29599,\n  \"song\": 6868,\n  \"song</w>\": 2295,\n  \"songs</w>\": 4641,\n  \"songwriter</w>\": 13034,\n  \"songwriters</w>\": 39583,\n  \"songwriting</w>\": 33567,\n  \"songz</w>\": 49302,\n  \"soni\": 34899,\n  \"soni</w>\": 35911,\n  \"sonia</w>\": 20409,\n  \"sonic\": 23785,\n  \"sonic</w>\": 9132,\n  \"sonics</w>\": 48511,\n  \"sonja</w>\": 46102,\n  \"sonline</w>\": 23412,\n  \"sonny\": 43000,\n  \"sonny</w>\": 20880,\n  \"sono</w>\": 44109,\n  \"sonom\": 48596,\n  \"sonoma</w>\": 26269,\n  \"sons</w>\": 5502,\n  \"sonsof\": 46676,\n  \"sont</w>\": 31063,\n  \"sonthe\": 40923,\n  \"sony\": 16042,\n  \"sony</w>\": 8748,\n  \"sonya</w>\": 39172,\n  \"soo\": 5517,\n  \"soo</w>\": 8602,\n  \"soom\": 39771,\n  \"soon\": 27559,\n  \"soon</w>\": 1745,\n  \"sooner</w>\": 18968,\n  \"sooners</w>\": 30449,\n  \"sooo</w>\": 11526,\n  \"soooo</w>\": 13658,\n  \"sooooo</w>\": 21199,\n  \"soooooo</w>\": 34859,\n  \"soor\": 46698,\n  \"soothe</w>\": 44424,\n  \"soothing</w>\": 27730,\n  \"sop\": 3974,\n  \"sop</w>\": 19194,\n  \"soph</w>\": 34963,\n  \"sophi\": 6192,\n  \"sophia</w>\": 16790,\n  \"sophie\": 38648,\n  \"sophie</w>\": 12357,\n  \"sophistic\": 17646,\n  \"sophisticated</w>\": 20833,\n  \"sophom\": 13696,\n  \"sophomore</w>\": 15242,\n  \"sophomores</w>\": 47645,\n  \"soprano</w>\": 28880,\n  \"soproud</w>\": 44479,\n  \"sor\": 1852,\n  \"sor</w>\": 16872,\n  \"sora</w>\": 38719,\n  \"sorbet</w>\": 39994,\n  \"sore\": 43330,\n  \"sore</w>\": 15454,\n  \"sored</w>\": 6731,\n  \"soren\": 38907,\n  \"sorg</w>\": 28152,\n  \"sori\": 38588,\n  \"sorority</w>\": 30059,\n  \"soros</w>\": 33248,\n  \"sorren\": 44012,\n  \"sorrow</w>\": 28020,\n  \"sorrows</w>\": 47924,\n  \"sorry\": 25745,\n  \"sorry</w>\": 3675,\n  \"sorrynotsorry</w>\": 37105,\n  \"sort</w>\": 8450,\n  \"sorta</w>\": 34700,\n  \"sorted</w>\": 13221,\n  \"sorting</w>\": 19198,\n  \"sorts</w>\": 12577,\n  \"sory</w>\": 16257,\n  \"sos\": 25145,\n  \"sos</w>\": 5792,\n  \"sosa</w>\": 45433,\n  \"sosfam</w>\": 47709,\n  \"sot\": 41542,\n  \"sot</w>\": 34116,\n  \"sothe\": 32145,\n  \"sotho</w>\": 45496,\n  \"soto</w>\": 27947,\n  \"sotto</w>\": 26047,\n  \"sotu</w>\": 32286,\n  \"sou\": 1101,\n  \"sou</w>\": 24293,\n  \"sought</w>\": 18874,\n  \"soul\": 8701,\n  \"soul</w>\": 3755,\n  \"soulful</w>\": 30196,\n  \"soulmate</w>\": 38130,\n  \"souls</w>\": 10951,\n  \"soun\": 19474,\n  \"sound\": 5236,\n  \"sound</w>\": 3608,\n  \"soundcheck</w>\": 31394,\n  \"soundcloud</w>\": 15190,\n  \"sounded</w>\": 28287,\n  \"sounders</w>\": 44933,\n  \"sounding</w>\": 21351,\n  \"sounds</w>\": 5694,\n  \"soundtrack</w>\": 11389,\n  \"soup</w>\": 7077,\n  \"soups</w>\": 45052,\n  \"sour\": 2235,\n  \"sour</w>\": 12049,\n  \"source\": 23698,\n  \"source</w>\": 3634,\n  \"sourced</w>\": 23340,\n  \"sources</w>\": 5124,\n  \"sourcing</w>\": 19574,\n  \"sourdough</w>\": 29921,\n  \"souri</w>\": 11674,\n  \"sous</w>\": 32093,\n  \"sousa</w>\": 46296,\n  \"sout\": 38156,\n  \"sout</w>\": 32732,\n  \"south\": 2938,\n  \"south</w>\": 2045,\n  \"southafrica</w>\": 15184,\n  \"southampton</w>\": 15767,\n  \"southbank</w>\": 44173,\n  \"southbound</w>\": 22932,\n  \"southeast</w>\": 13942,\n  \"southeastern</w>\": 26813,\n  \"southend</w>\": 25583,\n  \"souther\": 33330,\n  \"southern\": 17704,\n  \"southern</w>\": 5036,\n  \"southgate</w>\": 47262,\n  \"southkorea</w>\": 43552,\n  \"southport</w>\": 37446,\n  \"southside</w>\": 36436,\n  \"southsudan</w>\": 30419,\n  \"southwark</w>\": 39098,\n  \"southwe\": 46443,\n  \"southwest</w>\": 13320,\n  \"southwestern</w>\": 30157,\n  \"souven\": 20210,\n  \"souvenir</w>\": 24811,\n  \"souvenirs</w>\": 48460,\n  \"souza</w>\": 29424,\n  \"sov</w>\": 29737,\n  \"sover</w>\": 31876,\n  \"sovere\": 17736,\n  \"sovereign\": 29418,\n  \"sovereign</w>\": 26337,\n  \"sovereignty</w>\": 31701,\n  \"soviet</w>\": 14274,\n  \"sow</w>\": 33089,\n  \"sowe\": 36130,\n  \"soweto</w>\": 47070,\n  \"sown</w>\": 49369,\n  \"sox\": 39556,\n  \"sox</w>\": 8657,\n  \"soy\": 16524,\n  \"soy</w>\": 15010,\n  \"soybean</w>\": 34606,\n  \"soybeans</w>\": 40840,\n  \"soyu\": 39578,\n  \"soyuz</w>\": 43842,\n  \"sp\": 588,\n  \"sp</w>\": 4393,\n  \"spa\": 7852,\n  \"spa</w>\": 6692,\n  \"spac\": 10336,\n  \"space\": 7857,\n  \"space</w>\": 2138,\n  \"spacecraft</w>\": 25940,\n  \"spaces</w>\": 9006,\n  \"spaceship</w>\": 34317,\n  \"spacex</w>\": 22511,\n  \"spacey</w>\": 48770,\n  \"spacious</w>\": 24769,\n  \"spad\": 45362,\n  \"spade</w>\": 32562,\n  \"spades</w>\": 48368,\n  \"spaghetti</w>\": 18440,\n  \"spain</w>\": 5083,\n  \"spal\": 26018,\n  \"spam\": 29712,\n  \"spam</w>\": 14624,\n  \"span\": 4270,\n  \"span</w>\": 14537,\n  \"spandex</w>\": 41686,\n  \"spani\": 16721,\n  \"spaniel</w>\": 35435,\n  \"spanish\": 29966,\n  \"spanish</w>\": 6013,\n  \"spann</w>\": 25323,\n  \"spanning</w>\": 38638,\n  \"spans</w>\": 45407,\n  \"spaper\": 34548,\n  \"spar\": 3378,\n  \"spar</w>\": 34576,\n  \"spare</w>\": 12615,\n  \"spares</w>\": 39505,\n  \"spark\": 9555,\n  \"spark</w>\": 11047,\n  \"sparked</w>\": 32647,\n  \"sparkle</w>\": 18287,\n  \"sparkles</w>\": 36410,\n  \"sparkling</w>\": 17893,\n  \"sparkly</w>\": 30542,\n  \"sparks</w>\": 15046,\n  \"sparky</w>\": 47198,\n  \"sparring</w>\": 42161,\n  \"sparrow</w>\": 22888,\n  \"spart\": 10143,\n  \"sparta</w>\": 38401,\n  \"spartan\": 26582,\n  \"spartan</w>\": 24225,\n  \"spartans</w>\": 20457,\n  \"sparty</w>\": 36477,\n  \"spas\": 31714,\n  \"spati\": 19200,\n  \"spatial</w>\": 22022,\n  \"spaw\": 31605,\n  \"spawn</w>\": 29166,\n  \"spay\": 40634,\n  \"spc</w>\": 20492,\n  \"spca</w>\": 37018,\n  \"spd\": 37717,\n  \"spd</w>\": 28307,\n  \"spdwy</w>\": 45981,\n  \"spe\": 876,\n  \"spe</w>\": 36676,\n  \"speak\": 20599,\n  \"speak</w>\": 4208,\n  \"speake\": 46077,\n  \"speaker\": 25764,\n  \"speaker</w>\": 4914,\n  \"speakers</w>\": 7675,\n  \"speaking</w>\": 3714,\n  \"speaks</w>\": 5661,\n  \"spear\": 23277,\n  \"spear</w>\": 30420,\n  \"speare</w>\": 43859,\n  \"spears</w>\": 20242,\n  \"spec\": 1711,\n  \"spec</w>\": 18596,\n  \"speci\": 1969,\n  \"special\": 11422,\n  \"special</w>\": 1689,\n  \"specialist</w>\": 10630,\n  \"specialists</w>\": 21719,\n  \"speciality</w>\": 46904,\n  \"specialized</w>\": 23265,\n  \"specializes</w>\": 48533,\n  \"specially</w>\": 4513,\n  \"specials</w>\": 11983,\n  \"specialty</w>\": 18262,\n  \"species</w>\": 6330,\n  \"specific</w>\": 10528,\n  \"specifically</w>\": 17174,\n  \"specification</w>\": 46394,\n  \"specifications</w>\": 39705,\n  \"specified</w>\": 48114,\n  \"specimen</w>\": 30263,\n  \"specimens</w>\": 42715,\n  \"specs</w>\": 24093,\n  \"spect</w>\": 3416,\n  \"spectac\": 7242,\n  \"spectacle</w>\": 34342,\n  \"spectacular</w>\": 8404,\n  \"spectator</w>\": 32372,\n  \"spectators</w>\": 39306,\n  \"spective</w>\": 6633,\n  \"spector</w>\": 48676,\n  \"spectral</w>\": 45441,\n  \"spectre</w>\": 35998,\n  \"spectro\": 27646,\n  \"spectrum</w>\": 13532,\n  \"specul\": 19209,\n  \"speculation</w>\": 30898,\n  \"sped</w>\": 38813,\n  \"spee\": 4050,\n  \"speech\": 19556,\n  \"speech</w>\": 4902,\n  \"speeches</w>\": 25208,\n  \"speechless</w>\": 23152,\n  \"speed\": 6860,\n  \"speed</w>\": 4163,\n  \"speeding</w>\": 27264,\n  \"speeds</w>\": 22017,\n  \"speedway</w>\": 11480,\n  \"speedy</w>\": 21603,\n  \"spel\": 41887,\n  \"spell\": 22784,\n  \"spell</w>\": 11230,\n  \"spelled</w>\": 24339,\n  \"spelling</w>\": 15614,\n  \"spells</w>\": 25335,\n  \"spelt</w>\": 38316,\n  \"spen\": 5087,\n  \"spence</w>\": 33324,\n  \"spencer\": 27509,\n  \"spencer</w>\": 10678,\n  \"spend</w>\": 4664,\n  \"spending</w>\": 5961,\n  \"spends</w>\": 22508,\n  \"spent</w>\": 4429,\n  \"speople</w>\": 33035,\n  \"sper\": 8213,\n  \"sper</w>\": 15313,\n  \"sperm</w>\": 35781,\n  \"sperson</w>\": 22687,\n  \"spf</w>\": 34973,\n  \"spg</w>\": 34623,\n  \"sph\": 28909,\n  \"sph</w>\": 24684,\n  \"sphe\": 33691,\n  \"spher\": 18349,\n  \"sphere</w>\": 6987,\n  \"spheres</w>\": 37478,\n  \"spheric</w>\": 21744,\n  \"sphin\": 39237,\n  \"sphinx</w>\": 46487,\n  \"spho\": 20442,\n  \"sphoto</w>\": 38594,\n  \"sphy\": 43808,\n  \"spi\": 3174,\n  \"spi</w>\": 37080,\n  \"spic\": 17264,\n  \"spice\": 29761,\n  \"spice</w>\": 10141,\n  \"spiced</w>\": 24267,\n  \"spicer</w>\": 37627,\n  \"spices</w>\": 21194,\n  \"spicy</w>\": 10915,\n  \"spide\": 36801,\n  \"spider\": 11963,\n  \"spider</w>\": 7622,\n  \"spiderman\": 39808,\n  \"spiderman</w>\": 18427,\n  \"spiders</w>\": 23141,\n  \"spidey</w>\": 41706,\n  \"spie\": 28573,\n  \"spie</w>\": 28746,\n  \"spied</w>\": 43998,\n  \"spiegel</w>\": 45351,\n  \"spiel\": 28435,\n  \"spiel</w>\": 37690,\n  \"spielberg</w>\": 37569,\n  \"spies</w>\": 25374,\n  \"spieth</w>\": 43254,\n  \"spike\": 35306,\n  \"spike</w>\": 15310,\n  \"spiked</w>\": 47014,\n  \"spikes</w>\": 29582,\n  \"spil\": 47765,\n  \"spill\": 43933,\n  \"spill</w>\": 18006,\n  \"spilled</w>\": 33206,\n  \"spilling</w>\": 49006,\n  \"spills</w>\": 35796,\n  \"spin\": 6288,\n  \"spin</w>\": 9226,\n  \"spinach</w>\": 14747,\n  \"spinal</w>\": 23925,\n  \"spine\": 48221,\n  \"spine</w>\": 19646,\n  \"sping</w>\": 47113,\n  \"spinner</w>\": 29924,\n  \"spinning</w>\": 13987,\n  \"spino\": 40848,\n  \"spinoff</w>\": 42513,\n  \"spinrilla</w>\": 46064,\n  \"spins</w>\": 27243,\n  \"spion\": 39604,\n  \"spionage</w>\": 41838,\n  \"spir\": 3745,\n  \"spiral</w>\": 19873,\n  \"spiration</w>\": 38126,\n  \"spire</w>\": 27439,\n  \"spired</w>\": 40650,\n  \"spires</w>\": 46938,\n  \"spiri\": 4024,\n  \"spirit\": 18224,\n  \"spirit</w>\": 4071,\n  \"spirited</w>\": 34701,\n  \"spirits</w>\": 13192,\n  \"spiritu\": 7237,\n  \"spiritual\": 46076,\n  \"spiritual</w>\": 9473,\n  \"spirituality</w>\": 22165,\n  \"spiro\": 40085,\n  \"spit\": 18115,\n  \"spit</w>\": 23177,\n  \"spite</w>\": 26060,\n  \"spitfire</w>\": 31126,\n  \"spitting</w>\": 40721,\n  \"spl\": 2470,\n  \"spl</w>\": 33052,\n  \"spla\": 4809,\n  \"splac\": 16059,\n  \"splace</w>\": 38743,\n  \"splash\": 43641,\n  \"splash</w>\": 11879,\n  \"splat\": 15733,\n  \"splatoon</w>\": 22565,\n  \"splay</w>\": 3169,\n  \"splen\": 18552,\n  \"splend\": 29861,\n  \"splendid</w>\": 21016,\n  \"splendor</w>\": 46262,\n  \"splin\": 38090,\n  \"split\": 25443,\n  \"split</w>\": 9109,\n  \"splits</w>\": 34897,\n  \"splitting</w>\": 37210,\n  \"splus</w>\": 40866,\n  \"spn\": 35467,\n  \"spn</w>\": 19414,\n  \"spnfamily</w>\": 38566,\n  \"spo\": 1261,\n  \"spo</w>\": 21085,\n  \"spock</w>\": 43918,\n  \"spoil</w>\": 25600,\n  \"spoiled</w>\": 21399,\n  \"spoiler</w>\": 16512,\n  \"spoilers</w>\": 18326,\n  \"spoils</w>\": 42436,\n  \"spoilt</w>\": 35358,\n  \"spokane</w>\": 24528,\n  \"spoke\": 13890,\n  \"spoke</w>\": 6518,\n  \"spoken</w>\": 12979,\n  \"spokesman</w>\": 31632,\n  \"spokesperson</w>\": 26234,\n  \"spol\": 22476,\n  \"spol</w>\": 8132,\n  \"spoli</w>\": 34301,\n  \"spolice</w>\": 37406,\n  \"spon\": 1715,\n  \"spon</w>\": 48216,\n  \"sponge\": 22861,\n  \"sponge</w>\": 24345,\n  \"spongebob</w>\": 25089,\n  \"spons\": 5597,\n  \"sponsor\": 10424,\n  \"sponsor</w>\": 7574,\n  \"sponsored</w>\": 7197,\n  \"sponsoring</w>\": 16181,\n  \"sponsors</w>\": 11005,\n  \"sponsorship</w>\": 17632,\n  \"spontaneous</w>\": 32465,\n  \"spoo\": 11248,\n  \"spooky</w>\": 15369,\n  \"spool</w>\": 49152,\n  \"spoon\": 27001,\n  \"spoon</w>\": 14024,\n  \"spoons</w>\": 29661,\n  \"spor\": 1475,\n  \"spor</w>\": 33746,\n  \"sport\": 4379,\n  \"sport</w>\": 2364,\n  \"sporting\": 32620,\n  \"sporting</w>\": 8944,\n  \"sports\": 6436,\n  \"sports</w>\": 2054,\n  \"sportsc\": 40114,\n  \"sportscar</w>\": 46931,\n  \"sportscenter</w>\": 39157,\n  \"sportsman</w>\": 39020,\n  \"sportsmanship</w>\": 34858,\n  \"sportsnet</w>\": 34144,\n  \"sportswear</w>\": 39747,\n  \"sporty</w>\": 33346,\n  \"spot\": 3223,\n  \"spot</w>\": 3049,\n  \"spotify</w>\": 7193,\n  \"spotlight</w>\": 7901,\n  \"spots</w>\": 7670,\n  \"spotted</w>\": 4533,\n  \"spotter</w>\": 30742,\n  \"spotting</w>\": 15885,\n  \"spouse</w>\": 24724,\n  \"spout</w>\": 48993,\n  \"spp</w>\": 47567,\n  \"spr\": 1536,\n  \"spr</w>\": 19417,\n  \"spra\": 12966,\n  \"spraw\": 46590,\n  \"spray\": 37885,\n  \"spray</w>\": 10449,\n  \"sprayed</w>\": 40022,\n  \"spraying</w>\": 39224,\n  \"spre\": 18740,\n  \"spread\": 20620,\n  \"spread</w>\": 5284,\n  \"spreading</w>\": 11821,\n  \"spreads</w>\": 27579,\n  \"spree</w>\": 21851,\n  \"spri\": 35498,\n  \"spride</w>\": 26685,\n  \"spring\": 5166,\n  \"spring</w>\": 2420,\n  \"springbreak</w>\": 37753,\n  \"springer</w>\": 30117,\n  \"springfield</w>\": 16599,\n  \"springs</w>\": 7308,\n  \"springst</w>\": 32132,\n  \"springsteen</w>\": 28367,\n  \"springtime</w>\": 28285,\n  \"springtraining</w>\": 49364,\n  \"springwatch</w>\": 29239,\n  \"sprink\": 15817,\n  \"sprinkle</w>\": 42897,\n  \"sprinkler</w>\": 48754,\n  \"sprinkles</w>\": 37326,\n  \"sprint\": 29248,\n  \"sprint</w>\": 10751,\n  \"sprinter</w>\": 36947,\n  \"sprints</w>\": 36404,\n  \"sprite</w>\": 32544,\n  \"spro\": 13902,\n  \"spro</w>\": 37403,\n  \"sproject</w>\": 37802,\n  \"sproud</w>\": 37686,\n  \"sprout</w>\": 35863,\n  \"sprouts</w>\": 25756,\n  \"spru\": 17041,\n  \"spruce</w>\": 23812,\n  \"sprung</w>\": 32968,\n  \"sps</w>\": 13869,\n  \"spu\": 23566,\n  \"spun\": 47922,\n  \"spun</w>\": 32852,\n  \"spur\": 15206,\n  \"spur</w>\": 20361,\n  \"spurs</w>\": 10916,\n  \"spursofficial</w>\": 45290,\n  \"sput\": 47521,\n  \"spx</w>\": 20584,\n  \"spy\": 13861,\n  \"spy</w>\": 6656,\n  \"spyder</w>\": 39952,\n  \"spying</w>\": 36227,\n  \"sq\": 9370,\n  \"sq</w>\": 11590,\n  \"sqft</w>\": 41912,\n  \"sql\": 42759,\n  \"sql</w>\": 18938,\n  \"sqm</w>\": 47978,\n  \"sqn</w>\": 41209,\n  \"squ\": 1653,\n  \"squad\": 13892,\n  \"squad</w>\": 4234,\n  \"squadron</w>\": 18579,\n  \"squads</w>\": 36590,\n  \"square\": 19314,\n  \"square</w>\": 3999,\n  \"squared</w>\": 32967,\n  \"squares</w>\": 26972,\n  \"squash</w>\": 13312,\n  \"squat\": 44628,\n  \"squat</w>\": 30680,\n  \"squats</w>\": 40213,\n  \"sque\": 9721,\n  \"sque</w>\": 8097,\n  \"squee\": 14420,\n  \"squeeze</w>\": 21684,\n  \"squeezed</w>\": 40413,\n  \"squid\": 42057,\n  \"squid</w>\": 22553,\n  \"squir\": 9683,\n  \"squire</w>\": 48090,\n  \"squirrel</w>\": 14004,\n  \"squirrels</w>\": 26623,\n  \"squish\": 42607,\n  \"squishy</w>\": 47001,\n  \"sr\": 3437,\n  \"sr</w>\": 5428,\n  \"srbachchan</w>\": 32353,\n  \"src</w>\": 23445,\n  \"sre\": 17748,\n  \"sri\": 11051,\n  \"sri</w>\": 9276,\n  \"sridevi</w>\": 46301,\n  \"srilan\": 15559,\n  \"srilanka</w>\": 16922,\n  \"srin\": 26818,\n  \"srinagar</w>\": 33671,\n  \"srini\": 41899,\n  \"sriracha</w>\": 42743,\n  \"sris\": 27851,\n  \"srisri</w>\": 32966,\n  \"srk\": 44982,\n  \"srk</w>\": 11216,\n  \"srl</w>\": 33808,\n  \"srp</w>\": 43004,\n  \"srs</w>\": 41764,\n  \"srsly</w>\": 44179,\n  \"srt</w>\": 28139,\n  \"sru\": 44152,\n  \"srugby</w>\": 40526,\n  \"ss\": 690,\n  \"ss</w>\": 632,\n  \"ssa</w>\": 6088,\n  \"ssal\": 31330,\n  \"ssal</w>\": 35936,\n  \"ssb</w>\": 37511,\n  \"ssc\": 21692,\n  \"ssc</w>\": 20364,\n  \"ssd</w>\": 23107,\n  \"sse\": 9030,\n  \"sse</w>\": 8938,\n  \"ssed\": 38755,\n  \"ssed</w>\": 1804,\n  \"ssel\": 17402,\n  \"ssel</w>\": 19373,\n  \"sseldorf</w>\": 47792,\n  \"ssell</w>\": 42388,\n  \"ssels</w>\": 8355,\n  \"ssen\": 39408,\n  \"ssen</w>\": 22645,\n  \"sser</w>\": 20445,\n  \"sses</w>\": 1802,\n  \"ssett</w>\": 44103,\n  \"ssf</w>\": 33239,\n  \"ssg</w>\": 40707,\n  \"ssh</w>\": 48866,\n  \"ssi\": 834,\n  \"ssi</w>\": 14953,\n  \"ssia</w>\": 22238,\n  \"ssian</w>\": 31218,\n  \"ssible</w>\": 47099,\n  \"ssic\": 27774,\n  \"ssic</w>\": 17077,\n  \"ssie</w>\": 7572,\n  \"ssier</w>\": 26422,\n  \"ssil</w>\": 15026,\n  \"ssin</w>\": 42660,\n  \"ssing</w>\": 2112,\n  \"ssion\": 16050,\n  \"ssion</w>\": 1627,\n  \"ssional</w>\": 13727,\n  \"ssionism</w>\": 24787,\n  \"ssionist</w>\": 27682,\n  \"ssions</w>\": 4137,\n  \"ssive</w>\": 2734,\n  \"ssively</w>\": 28060,\n  \"ssl</w>\": 32195,\n  \"ssler</w>\": 30287,\n  \"ssly</w>\": 24904,\n  \"ssn</w>\": 39116,\n  \"ssnhq</w>\": 47998,\n  \"sso\": 25900,\n  \"sso</w>\": 7914,\n  \"ssoccer</w>\": 32546,\n  \"sson\": 36124,\n  \"sson</w>\": 7271,\n  \"ssor</w>\": 35152,\n  \"ssp</w>\": 31101,\n  \"ssr</w>\": 39880,\n  \"sss</w>\": 11176,\n  \"ssss\": 30676,\n  \"ssss</w>\": 15880,\n  \"sssss</w>\": 24298,\n  \"sst</w>\": 40396,\n  \"ssu</w>\": 35351,\n  \"ssummit</w>\": 49301,\n  \"ssus</w>\": 31286,\n  \"ssw</w>\": 36937,\n  \"ssy\": 22519,\n  \"ssy</w>\": 8661,\n  \"st\": 522,\n  \"st</w>\": 545,\n  \"sta\": 1363,\n  \"sta</w>\": 2745,\n  \"stab\": 7726,\n  \"stab</w>\": 29974,\n  \"stabbed</w>\": 24534,\n  \"stabbing</w>\": 25474,\n  \"stabil\": 42576,\n  \"stabili\": 23903,\n  \"stability</w>\": 16716,\n  \"stable\": 44427,\n  \"stable</w>\": 10492,\n  \"stables</w>\": 34218,\n  \"stac\": 10175,\n  \"stacey\": 41653,\n  \"stacey</w>\": 24262,\n  \"stache</w>\": 23616,\n  \"stack\": 24723,\n  \"stack</w>\": 11257,\n  \"stacked</w>\": 24990,\n  \"stacking</w>\": 39836,\n  \"stacks</w>\": 24734,\n  \"stacy</w>\": 26628,\n  \"stad\": 15832,\n  \"stad</w>\": 16485,\n  \"stade</w>\": 38198,\n  \"stadi\": 26587,\n  \"stadion</w>\": 48815,\n  \"stadium</w>\": 3390,\n  \"stadiums</w>\": 38852,\n  \"stadt</w>\": 22713,\n  \"staf\": 2367,\n  \"staff\": 31188,\n  \"staff</w>\": 2813,\n  \"staffer</w>\": 38494,\n  \"staffers</w>\": 44994,\n  \"staffing</w>\": 32932,\n  \"stafford</w>\": 25006,\n  \"staffordshire</w>\": 29198,\n  \"staffs</w>\": 36098,\n  \"stag\": 12088,\n  \"stag</w>\": 20277,\n  \"stage\": 23182,\n  \"stage</w>\": 2170,\n  \"staged</w>\": 19906,\n  \"stages</w>\": 12297,\n  \"staggering</w>\": 37315,\n  \"staging</w>\": 27026,\n  \"stagram</w>\": 19503,\n  \"stags</w>\": 45936,\n  \"stain\": 3933,\n  \"stain</w>\": 14603,\n  \"stained</w>\": 13751,\n  \"staining</w>\": 32523,\n  \"stainless</w>\": 12320,\n  \"stains</w>\": 32008,\n  \"stair\": 7240,\n  \"stair</w>\": 17662,\n  \"staircase</w>\": 22777,\n  \"stairs</w>\": 9577,\n  \"stairway</w>\": 45559,\n  \"stak\": 39144,\n  \"stake\": 15955,\n  \"stake</w>\": 7937,\n  \"stakeholder</w>\": 39122,\n  \"stakeholders</w>\": 22968,\n  \"stakes</w>\": 7519,\n  \"staking</w>\": 47082,\n  \"stal\": 3861,\n  \"stal</w>\": 5535,\n  \"stale</w>\": 42471,\n  \"stalert</w>\": 25450,\n  \"stalin</w>\": 28346,\n  \"stalk\": 40826,\n  \"stalk</w>\": 14878,\n  \"stalker</w>\": 26777,\n  \"stalking</w>\": 24721,\n  \"stalks</w>\": 45886,\n  \"stall\": 24636,\n  \"stall</w>\": 12058,\n  \"stalled</w>\": 40362,\n  \"stallion</w>\": 28273,\n  \"stallions</w>\": 44787,\n  \"stallone</w>\": 40969,\n  \"stalls</w>\": 25427,\n  \"stam\": 4663,\n  \"stamatic</w>\": 30904,\n  \"stamford</w>\": 27843,\n  \"stamina</w>\": 48753,\n  \"stamp\": 28694,\n  \"stamp</w>\": 12771,\n  \"stampcollecting</w>\": 42852,\n  \"stamped</w>\": 38356,\n  \"stampede</w>\": 25384,\n  \"stamps</w>\": 13827,\n  \"stan\": 2203,\n  \"stan</w>\": 2434,\n  \"stana</w>\": 33311,\n  \"stanbul</w>\": 11231,\n  \"stance\": 48900,\n  \"stance</w>\": 3542,\n  \"stances</w>\": 15054,\n  \"stand\": 1819,\n  \"stand</w>\": 2087,\n  \"standalone</w>\": 44887,\n  \"standard\": 35780,\n  \"standard</w>\": 5807,\n  \"standardi\": 30247,\n  \"standards</w>\": 9022,\n  \"standby</w>\": 36184,\n  \"standing\": 39934,\n  \"standing</w>\": 2862,\n  \"standings</w>\": 19835,\n  \"standoff</w>\": 31821,\n  \"standout</w>\": 23131,\n  \"standre\": 48309,\n  \"stands</w>\": 6446,\n  \"standup\": 35108,\n  \"standup</w>\": 24964,\n  \"standwith\": 19540,\n  \"stanford\": 36219,\n  \"stanford</w>\": 15087,\n  \"stang</w>\": 12536,\n  \"stani</w>\": 38228,\n  \"stanis\": 37711,\n  \"stanley\": 19048,\n  \"stanley</w>\": 10079,\n  \"stanleycup</w>\": 28662,\n  \"stans</w>\": 26564,\n  \"stant\": 41576,\n  \"stant</w>\": 4906,\n  \"stanton</w>\": 25400,\n  \"stap\": 10438,\n  \"staple</w>\": 22695,\n  \"staples</w>\": 23646,\n  \"stapleton</w>\": 45228,\n  \"star\": 993,\n  \"star</w>\": 1565,\n  \"starbuck\": 48519,\n  \"starbucks</w>\": 9499,\n  \"starch</w>\": 47837,\n  \"starcraft</w>\": 48871,\n  \"stardom</w>\": 44616,\n  \"stardust</w>\": 34337,\n  \"stare</w>\": 18094,\n  \"stared</w>\": 47772,\n  \"stares</w>\": 37916,\n  \"starfish</w>\": 44283,\n  \"stargate</w>\": 41099,\n  \"stargazing</w>\": 49328,\n  \"staring</w>\": 13800,\n  \"stark\": 40446,\n  \"stark</w>\": 15353,\n  \"starlight</w>\": 32197,\n  \"starling</w>\": 46205,\n  \"starmagic\": 48023,\n  \"starplus</w>\": 37815,\n  \"starr</w>\": 19186,\n  \"starred</w>\": 24180,\n  \"starrer</w>\": 41311,\n  \"starring</w>\": 6660,\n  \"starry</w>\": 30963,\n  \"stars</w>\": 2895,\n  \"starship</w>\": 37166,\n  \"start\": 17466,\n  \"start</w>\": 1572,\n  \"started</w>\": 2760,\n  \"starter</w>\": 7800,\n  \"starters</w>\": 22222,\n  \"starting</w>\": 2530,\n  \"startrek\": 30642,\n  \"startrek</w>\": 15349,\n  \"starts</w>\": 3105,\n  \"startu\": 6996,\n  \"startup\": 18049,\n  \"startup</w>\": 5882,\n  \"startups</w>\": 9056,\n  \"starve</w>\": 46957,\n  \"starving</w>\": 30473,\n  \"starwar\": 17287,\n  \"starwars\": 26239,\n  \"starwars</w>\": 7887,\n  \"starz</w>\": 25928,\n  \"stas</w>\": 19866,\n  \"stash</w>\": 27711,\n  \"stasy</w>\": 45942,\n  \"stat\": 3004,\n  \"stat</w>\": 15216,\n  \"state\": 3492,\n  \"state</w>\": 1295,\n  \"statec\": 33931,\n  \"stated</w>\": 19629,\n  \"statedept</w>\": 41458,\n  \"statefair</w>\": 40305,\n  \"statement</w>\": 5401,\n  \"statements</w>\": 19513,\n  \"staten</w>\": 38263,\n  \"stateof\": 35195,\n  \"states\": 22125,\n  \"states</w>\": 4218,\n  \"statesman</w>\": 35301,\n  \"stateu</w>\": 44248,\n  \"statewide</w>\": 29561,\n  \"stati\": 9622,\n  \"static</w>\": 16363,\n  \"stating</w>\": 35147,\n  \"station\": 13498,\n  \"station</w>\": 2631,\n  \"stationary</w>\": 29493,\n  \"stationed</w>\": 47618,\n  \"stationery</w>\": 33851,\n  \"stations</w>\": 10051,\n  \"statistical</w>\": 29349,\n  \"statistics</w>\": 14165,\n  \"stats</w>\": 7294,\n  \"statu\": 32481,\n  \"statue</w>\": 8222,\n  \"statues</w>\": 24363,\n  \"status</w>\": 6414,\n  \"stau\": 28550,\n  \"staur\": 3709,\n  \"stav\": 20285,\n  \"stax</w>\": 32235,\n  \"stay\": 4714,\n  \"stay</w>\": 2277,\n  \"stayed</w>\": 13805,\n  \"staying</w>\": 8993,\n  \"stays</w>\": 13311,\n  \"staytuned</w>\": 39285,\n  \"stc</w>\": 29859,\n  \"std</w>\": 30477,\n  \"ste\": 795,\n  \"ste</w>\": 2686,\n  \"stea</w>\": 46614,\n  \"stead\": 16101,\n  \"stead</w>\": 11031,\n  \"steadily</w>\": 35049,\n  \"steady</w>\": 12937,\n  \"steak\": 26955,\n  \"steak</w>\": 8913,\n  \"steakhouse</w>\": 35031,\n  \"steaks</w>\": 30655,\n  \"steal\": 37070,\n  \"steal</w>\": 10181,\n  \"stealing</w>\": 14242,\n  \"steals</w>\": 20224,\n  \"stealth</w>\": 25327,\n  \"steam\": 10962,\n  \"steam</w>\": 6972,\n  \"steamboat</w>\": 41121,\n  \"steamed</w>\": 29007,\n  \"steamer</w>\": 49075,\n  \"steaming</w>\": 43746,\n  \"steampunk</w>\": 24130,\n  \"steamy</w>\": 43104,\n  \"stec</w>\": 46713,\n  \"stech\": 48949,\n  \"stech</w>\": 32455,\n  \"sted\": 20426,\n  \"sted</w>\": 1356,\n  \"stee\": 31793,\n  \"steed</w>\": 48293,\n  \"steel\": 6938,\n  \"steel</w>\": 4726,\n  \"steele</w>\": 19460,\n  \"steelers</w>\": 14430,\n  \"steen\": 42851,\n  \"steen</w>\": 18625,\n  \"steep\": 28648,\n  \"steep</w>\": 20714,\n  \"steer</w>\": 27612,\n  \"steering</w>\": 19833,\n  \"stef\": 29158,\n  \"stefan\": 15004,\n  \"stefan</w>\": 18829,\n  \"stefani</w>\": 38319,\n  \"stefano</w>\": 30719,\n  \"steff\": 30075,\n  \"stein\": 13653,\n  \"stein</w>\": 5818,\n  \"steiner</w>\": 36314,\n  \"stel\": 9102,\n  \"stel</w>\": 10798,\n  \"stell\": 22355,\n  \"stella\": 46178,\n  \"stella</w>\": 17869,\n  \"stellar</w>\": 13810,\n  \"stellen\": 42754,\n  \"stem\": 24342,\n  \"stem</w>\": 6761,\n  \"stemc\": 40486,\n  \"stems</w>\": 31503,\n  \"sten\": 7652,\n  \"sten</w>\": 7877,\n  \"stencil</w>\": 47854,\n  \"stennis</w>\": 45636,\n  \"step\": 15572,\n  \"step</w>\": 3348,\n  \"steph\": 3522,\n  \"steph</w>\": 16251,\n  \"stephan</w>\": 37312,\n  \"stephani\": 48121,\n  \"stephanie</w>\": 14361,\n  \"stephen\": 10421,\n  \"stephen</w>\": 6078,\n  \"stephenking</w>\": 46361,\n  \"stephens</w>\": 22256,\n  \"stephenson</w>\": 37280,\n  \"stepped</w>\": 18384,\n  \"stepping</w>\": 15906,\n  \"steps</w>\": 5408,\n  \"ster\": 1022,\n  \"ster</w>\": 881,\n  \"stere\": 9229,\n  \"stered</w>\": 6935,\n  \"stereo\": 15992,\n  \"stereo</w>\": 17400,\n  \"stereotypes</w>\": 27890,\n  \"steria</w>\": 38804,\n  \"stering</w>\": 14175,\n  \"sterling\": 45790,\n  \"sterling</w>\": 9378,\n  \"stern\": 36254,\n  \"stern</w>\": 2945,\n  \"steroids</w>\": 37670,\n  \"sterone</w>\": 39418,\n  \"sters</w>\": 2132,\n  \"stery</w>\": 24232,\n  \"stest</w>\": 8556,\n  \"stev\": 11640,\n  \"steve\": 7412,\n  \"steve</w>\": 3803,\n  \"steven\": 10973,\n  \"steven</w>\": 8016,\n  \"stevens</w>\": 13877,\n  \"stevenson</w>\": 25091,\n  \"stevie\": 42104,\n  \"stevie</w>\": 18969,\n  \"stew</w>\": 17906,\n  \"stewar\": 28453,\n  \"steward\": 34980,\n  \"steward</w>\": 43355,\n  \"stewards</w>\": 49294,\n  \"stewardship</w>\": 36720,\n  \"stewart</w>\": 8120,\n  \"stfu</w>\": 47000,\n  \"stg</w>\": 48387,\n  \"stgeorge\": 43698,\n  \"sth\": 13456,\n  \"sth</w>\": 34004,\n  \"sthe\": 16491,\n  \"sthel\": 42863,\n  \"sti\": 860,\n  \"sti</w>\": 12439,\n  \"stia</w>\": 26492,\n  \"stible</w>\": 25835,\n  \"stic\": 5868,\n  \"stic</w>\": 1561,\n  \"stical</w>\": 16660,\n  \"stically</w>\": 19041,\n  \"stick\": 5483,\n  \"stick</w>\": 4987,\n  \"sticker</w>\": 11270,\n  \"stickers</w>\": 11613,\n  \"sticking</w>\": 21021,\n  \"sticks</w>\": 10016,\n  \"sticky</w>\": 18887,\n  \"stics</w>\": 5449,\n  \"stie\": 38164,\n  \"stie</w>\": 11000,\n  \"stier</w>\": 42069,\n  \"sties</w>\": 16428,\n  \"stiff\": 43471,\n  \"stiff</w>\": 21441,\n  \"stig\": 4088,\n  \"stig</w>\": 42551,\n  \"stigate</w>\": 15390,\n  \"stigma</w>\": 20619,\n  \"stik</w>\": 42247,\n  \"stil\": 21790,\n  \"stil</w>\": 37519,\n  \"stiles</w>\": 33028,\n  \"still\": 13209,\n  \"still</w>\": 1170,\n  \"stills</w>\": 20259,\n  \"stim\": 18269,\n  \"stime</w>\": 24711,\n  \"stimul\": 16434,\n  \"stimulate</w>\": 42380,\n  \"stimulating</w>\": 41237,\n  \"stimulation</w>\": 39530,\n  \"stimulus</w>\": 47283,\n  \"stin\": 2588,\n  \"stin</w>\": 4025,\n  \"stina</w>\": 22359,\n  \"stine</w>\": 7098,\n  \"sting\": 19868,\n  \"sting</w>\": 1271,\n  \"stingly</w>\": 49332,\n  \"stingray</w>\": 43229,\n  \"stink</w>\": 38213,\n  \"stinky</w>\": 44957,\n  \"stino</w>\": 40658,\n  \"stint</w>\": 33531,\n  \"stion</w>\": 10812,\n  \"stip\": 39869,\n  \"stips</w>\": 44756,\n  \"stique</w>\": 43305,\n  \"stir\": 12416,\n  \"stir</w>\": 19564,\n  \"stirling</w>\": 23128,\n  \"stirring</w>\": 39205,\n  \"stis</w>\": 45224,\n  \"stit\": 14110,\n  \"stitch\": 30003,\n  \"stitch</w>\": 14771,\n  \"stitched</w>\": 36540,\n  \"stitcher</w>\": 48204,\n  \"stitches</w>\": 32360,\n  \"stitching</w>\": 45208,\n  \"stitu\": 14585,\n  \"stitutes</w>\": 40479,\n  \"stive</w>\": 22426,\n  \"stix</w>\": 48829,\n  \"stjohn\": 36153,\n  \"stl\": 14179,\n  \"stl</w>\": 12527,\n  \"stlblues</w>\": 44138,\n  \"stlcards</w>\": 28644,\n  \"stle</w>\": 7698,\n  \"stles</w>\": 48638,\n  \"stlouis\": 40358,\n  \"stlouis</w>\": 39516,\n  \"stm</w>\": 28333,\n  \"stn</w>\": 27175,\n  \"sto\": 928,\n  \"sto</w>\": 5723,\n  \"stock\": 5899,\n  \"stock</w>\": 3206,\n  \"stocked</w>\": 23552,\n  \"stockholm</w>\": 16024,\n  \"stocki\": 42944,\n  \"stocking</w>\": 17335,\n  \"stockings</w>\": 28040,\n  \"stockmarket</w>\": 40359,\n  \"stockport</w>\": 35569,\n  \"stocks</w>\": 9321,\n  \"stockton</w>\": 26130,\n  \"stoday</w>\": 22392,\n  \"stok</w>\": 43782,\n  \"stoke\": 31338,\n  \"stoke</w>\": 13550,\n  \"stoked</w>\": 13160,\n  \"stokes</w>\": 27512,\n  \"stol\": 11401,\n  \"stol</w>\": 6700,\n  \"stole</w>\": 10995,\n  \"stolen</w>\": 8704,\n  \"stolic</w>\": 45020,\n  \"stom\": 2343,\n  \"stom</w>\": 38068,\n  \"stoma</w>\": 43545,\n  \"stomach</w>\": 14722,\n  \"stomp</w>\": 40165,\n  \"stomping</w>\": 46144,\n  \"ston\": 4101,\n  \"ston</w>\": 1839,\n  \"stone\": 7694,\n  \"stone</w>\": 2441,\n  \"stoned</w>\": 36248,\n  \"stonehenge</w>\": 42417,\n  \"stoner\": 35131,\n  \"stoner</w>\": 29115,\n  \"stones\": 42659,\n  \"stones</w>\": 6885,\n  \"stonewall</w>\": 39688,\n  \"stoney</w>\": 44198,\n  \"stony\": 41717,\n  \"stony</w>\": 35691,\n  \"stoo\": 24505,\n  \"stood</w>\": 9151,\n  \"stool\": 34413,\n  \"stool</w>\": 22314,\n  \"stop\": 6005,\n  \"stop</w>\": 1691,\n  \"stopbrexit</w>\": 48680,\n  \"stopp\": 15738,\n  \"stopped</w>\": 6015,\n  \"stopper</w>\": 32147,\n  \"stoppers</w>\": 34457,\n  \"stopping</w>\": 10735,\n  \"stops</w>\": 9822,\n  \"stopthe\": 26463,\n  \"stor\": 809,\n  \"stor</w>\": 17740,\n  \"storage</w>\": 6824,\n  \"store\": 17769,\n  \"store</w>\": 2183,\n  \"stored</w>\": 28257,\n  \"stores</w>\": 6370,\n  \"storey</w>\": 24025,\n  \"storians</w>\": 34628,\n  \"stories</w>\": 3784,\n  \"storing</w>\": 40087,\n  \"stork</w>\": 46452,\n  \"storm\": 7434,\n  \"storm</w>\": 2819,\n  \"stormed</w>\": 45939,\n  \"stormhour</w>\": 12161,\n  \"storming</w>\": 24842,\n  \"storms</w>\": 6464,\n  \"stormtrooper</w>\": 49218,\n  \"stormy</w>\": 20075,\n  \"stors</w>\": 7178,\n  \"story\": 6512,\n  \"story</w>\": 1134,\n  \"storyline</w>\": 37079,\n  \"storymonth</w>\": 23717,\n  \"storyteller</w>\": 35882,\n  \"storytelling</w>\": 14457,\n  \"storytime</w>\": 44197,\n  \"stos</w>\": 19281,\n  \"stou\": 37168,\n  \"stour\": 37361,\n  \"stour</w>\": 21928,\n  \"stout</w>\": 16550,\n  \"stove</w>\": 21423,\n  \"stow\": 44284,\n  \"stow</w>\": 17046,\n  \"stowe</w>\": 34196,\n  \"stown\": 28071,\n  \"stown</w>\": 7939,\n  \"stp</w>\": 30576,\n  \"stpatrick\": 21343,\n  \"stpatricksday</w>\": 22747,\n  \"str\": 807,\n  \"str</w>\": 15913,\n  \"stra\": 1894,\n  \"stra</w>\": 6253,\n  \"strack</w>\": 46861,\n  \"strada</w>\": 31134,\n  \"strade</w>\": 48968,\n  \"straigh\": 31016,\n  \"straight\": 22114,\n  \"straight</w>\": 4241,\n  \"strain</w>\": 16887,\n  \"strains</w>\": 38067,\n  \"strait</w>\": 22946,\n  \"straits</w>\": 41984,\n  \"stral</w>\": 23289,\n  \"stralia</w>\": 42510,\n  \"stran\": 18411,\n  \"strand\": 18214,\n  \"strand</w>\": 17826,\n  \"stranded</w>\": 22975,\n  \"strang\": 11138,\n  \"strange\": 33380,\n  \"strange</w>\": 7288,\n  \"strangely</w>\": 37566,\n  \"stranger\": 35541,\n  \"stranger</w>\": 14149,\n  \"strangers</w>\": 20684,\n  \"strangerthings</w>\": 43271,\n  \"strangest</w>\": 46740,\n  \"strap</w>\": 13946,\n  \"strapped</w>\": 40922,\n  \"straps</w>\": 31213,\n  \"stras\": 36814,\n  \"stras</w>\": 42125,\n  \"strasbourg</w>\": 39576,\n  \"strat\": 11345,\n  \"strat</w>\": 32925,\n  \"strata</w>\": 47278,\n  \"strate\": 3532,\n  \"strate</w>\": 28758,\n  \"strategi\": 49102,\n  \"strategic</w>\": 10246,\n  \"strategically</w>\": 45706,\n  \"strategies</w>\": 9942,\n  \"strategist</w>\": 37180,\n  \"strategy</w>\": 5637,\n  \"strates</w>\": 45724,\n  \"stratford</w>\": 23955,\n  \"strath\": 21997,\n  \"stration</w>\": 3156,\n  \"strato\": 28878,\n  \"strauss</w>\": 32033,\n  \"strava</w>\": 34625,\n  \"stravel</w>\": 43494,\n  \"straw\": 7430,\n  \"straw</w>\": 16438,\n  \"strawberries</w>\": 17796,\n  \"strawberry</w>\": 10233,\n  \"straws</w>\": 33048,\n  \"stray\": 30784,\n  \"stray</w>\": 15712,\n  \"stre\": 1079,\n  \"stre</w>\": 19652,\n  \"stread</w>\": 27797,\n  \"streak</w>\": 11749,\n  \"streaks</w>\": 42092,\n  \"stream\": 8659,\n  \"stream</w>\": 3322,\n  \"streamed</w>\": 26280,\n  \"streamer</w>\": 25178,\n  \"streamers</w>\": 19937,\n  \"streaming</w>\": 6278,\n  \"streamline</w>\": 44917,\n  \"streams</w>\": 13545,\n  \"stree\": 35082,\n  \"stree</w>\": 32438,\n  \"streep</w>\": 38701,\n  \"street\": 4839,\n  \"street</w>\": 2012,\n  \"streetart</w>\": 12948,\n  \"streetcar</w>\": 34268,\n  \"streetfood</w>\": 44486,\n  \"streetphotography</w>\": 20786,\n  \"streets</w>\": 6058,\n  \"streetstyle</w>\": 39118,\n  \"streetwear</w>\": 37298,\n  \"strel</w>\": 39685,\n  \"stren\": 4349,\n  \"streng\": 4472,\n  \"strength\": 15475,\n  \"strength</w>\": 5959,\n  \"strengthen</w>\": 16318,\n  \"strengthened</w>\": 47131,\n  \"strengthening</w>\": 23475,\n  \"strengthens</w>\": 40280,\n  \"strengths</w>\": 29268,\n  \"stress\": 17297,\n  \"stress</w>\": 5843,\n  \"stressed</w>\": 16497,\n  \"stresses</w>\": 32112,\n  \"stressful</w>\": 24268,\n  \"stressing</w>\": 35917,\n  \"stret\": 12265,\n  \"stretch</w>\": 10064,\n  \"stretched</w>\": 29393,\n  \"stretches</w>\": 32231,\n  \"stretching</w>\": 24423,\n  \"stri\": 1493,\n  \"stri</w>\": 27795,\n  \"stria</w>\": 39620,\n  \"strial</w>\": 30217,\n  \"strian</w>\": 12924,\n  \"stric\": 2607,\n  \"strick\": 25181,\n  \"strickland</w>\": 48939,\n  \"strict</w>\": 21585,\n  \"strictly</w>\": 16475,\n  \"stride</w>\": 36024,\n  \"strides</w>\": 37355,\n  \"stries</w>\": 18171,\n  \"strife</w>\": 46473,\n  \"strike\": 20774,\n  \"strike</w>\": 5767,\n  \"striker</w>\": 12448,\n  \"strikers</w>\": 33465,\n  \"strikes</w>\": 9280,\n  \"striking</w>\": 13392,\n  \"string\": 25512,\n  \"string</w>\": 9696,\n  \"strings</w>\": 15699,\n  \"strip</w>\": 9317,\n  \"stripe</w>\": 19368,\n  \"striped</w>\": 22192,\n  \"stripes</w>\": 14239,\n  \"stripped</w>\": 26602,\n  \"stripper</w>\": 45759,\n  \"stripping</w>\": 48588,\n  \"strips</w>\": 19000,\n  \"strive</w>\": 22140,\n  \"striving</w>\": 37671,\n  \"stro\": 3121,\n  \"stro</w>\": 6186,\n  \"stroke\": 44621,\n  \"stroke</w>\": 10403,\n  \"strokes</w>\": 26595,\n  \"strol\": 30123,\n  \"stroll</w>\": 15924,\n  \"stroller</w>\": 47076,\n  \"strolling</w>\": 40911,\n  \"strom</w>\": 14707,\n  \"stron\": 4165,\n  \"strong\": 10436,\n  \"strong</w>\": 2389,\n  \"stronger\": 27760,\n  \"stronger</w>\": 9245,\n  \"strongertogether</w>\": 38532,\n  \"strongest</w>\": 16171,\n  \"strongh\": 38678,\n  \"strongly</w>\": 15507,\n  \"strophy</w>\": 47912,\n  \"strou\": 48425,\n  \"stroud</w>\": 39895,\n  \"strous</w>\": 23752,\n  \"stru\": 1666,\n  \"struc\": 3311,\n  \"struck</w>\": 10861,\n  \"struction</w>\": 12497,\n  \"structural</w>\": 16899,\n  \"structure</w>\": 5285,\n  \"structured</w>\": 27147,\n  \"structures</w>\": 14171,\n  \"structuring</w>\": 37496,\n  \"strugg\": 5176,\n  \"struggle</w>\": 8443,\n  \"struggled</w>\": 32921,\n  \"struggles</w>\": 17446,\n  \"struggling</w>\": 12135,\n  \"struly\": 34118,\n  \"strum</w>\": 37632,\n  \"strung</w>\": 46033,\n  \"strust</w>\": 23920,\n  \"strut</w>\": 48375,\n  \"stry\": 17325,\n  \"stry</w>\": 2245,\n  \"sts</w>\": 1088,\n  \"stu\": 858,\n  \"stu</w>\": 23531,\n  \"stuart\": 32054,\n  \"stuart</w>\": 11723,\n  \"stub\": 27066,\n  \"stubborn</w>\": 38955,\n  \"stuck</w>\": 6596,\n  \"stud\": 22368,\n  \"stud</w>\": 13319,\n  \"studded</w>\": 29153,\n  \"studen\": 44156,\n  \"student\": 14681,\n  \"student</w>\": 2556,\n  \"students</w>\": 1712,\n  \"studi\": 5691,\n  \"studied</w>\": 21369,\n  \"studies</w>\": 6426,\n  \"studio\": 17798,\n  \"studio</w>\": 3155,\n  \"studios</w>\": 6231,\n  \"studs</w>\": 27571,\n  \"study\": 21051,\n  \"study</w>\": 3123,\n  \"studyabroad</w>\": 45425,\n  \"studying</w>\": 8826,\n  \"stuff\": 46072,\n  \"stuff</w>\": 3487,\n  \"stuffed</w>\": 11781,\n  \"stuffing</w>\": 31612,\n  \"stuffs</w>\": 43455,\n  \"stuk</w>\": 32424,\n  \"stumb\": 16784,\n  \"stumble</w>\": 39045,\n  \"stumbled</w>\": 21776,\n  \"stump</w>\": 32064,\n  \"stun\": 3088,\n  \"stun</w>\": 37959,\n  \"stunned</w>\": 34034,\n  \"stunner</w>\": 29965,\n  \"stunning</w>\": 3769,\n  \"stunningly</w>\": 47515,\n  \"stuns</w>\": 43796,\n  \"stunt</w>\": 19905,\n  \"stunts</w>\": 40118,\n  \"stupi\": 18975,\n  \"stupid\": 42600,\n  \"stupid</w>\": 8085,\n  \"stupidity</w>\": 33766,\n  \"stur\": 10676,\n  \"sturdy</w>\": 43780,\n  \"stures</w>\": 27223,\n  \"sturgeon</w>\": 31580,\n  \"sturi\": 21747,\n  \"sturridge</w>\": 45331,\n  \"stutt\": 30444,\n  \"stuttgart</w>\": 32219,\n  \"stv\": 27060,\n  \"stv</w>\": 9708,\n  \"stweet</w>\": 46832,\n  \"stweets</w>\": 39174,\n  \"stx</w>\": 42548,\n  \"sty\": 1421,\n  \"sty</w>\": 2920,\n  \"style\": 12356,\n  \"style</w>\": 1844,\n  \"styled</w>\": 17974,\n  \"styles</w>\": 6948,\n  \"styli\": 38577,\n  \"styling</w>\": 14597,\n  \"stylish</w>\": 10378,\n  \"stylist</w>\": 15928,\n  \"styn</w>\": 41394,\n  \"su\": 605,\n  \"su</w>\": 2937,\n  \"sua</w>\": 42448,\n  \"suarez</w>\": 21437,\n  \"suave</w>\": 47305,\n  \"sub\": 1783,\n  \"sub</w>\": 7765,\n  \"subaru</w>\": 21319,\n  \"subjec\": 16090,\n  \"subject</w>\": 10300,\n  \"subjects</w>\": 22099,\n  \"subli\": 16350,\n  \"sublime</w>\": 22367,\n  \"submarine</w>\": 19968,\n  \"submer\": 27156,\n  \"submerged</w>\": 43171,\n  \"submission</w>\": 16571,\n  \"submissions</w>\": 21566,\n  \"submit</w>\": 10423,\n  \"submitted</w>\": 15189,\n  \"submitting</w>\": 38788,\n  \"subram\": 49207,\n  \"subs</w>\": 16398,\n  \"subscri\": 5838,\n  \"subscribe</w>\": 9839,\n  \"subscribed</w>\": 44867,\n  \"subscriber</w>\": 36292,\n  \"subscribers</w>\": 17337,\n  \"subscription</w>\": 17979,\n  \"subscriptions</w>\": 47162,\n  \"subsequ\": 33598,\n  \"subsequent</w>\": 44323,\n  \"subsi\": 14856,\n  \"subsidi\": 45029,\n  \"subsidiary</w>\": 45506,\n  \"subsidies</w>\": 37685,\n  \"subsidy</w>\": 47462,\n  \"substan\": 17487,\n  \"substance</w>\": 19309,\n  \"substances</w>\": 36834,\n  \"substantial</w>\": 27171,\n  \"substantially</w>\": 47577,\n  \"substitu\": 18529,\n  \"substitute</w>\": 25340,\n  \"subtitles</w>\": 39479,\n  \"subtle</w>\": 16536,\n  \"subur\": 12517,\n  \"suburb</w>\": 37664,\n  \"suburban</w>\": 23570,\n  \"suburbs</w>\": 25317,\n  \"subway</w>\": 12196,\n  \"suc\": 1869,\n  \"succe\": 7981,\n  \"succeed</w>\": 13556,\n  \"succeeded</w>\": 41077,\n  \"succes\": 39019,\n  \"success\": 3695,\n  \"success</w>\": 3034,\n  \"successes</w>\": 29436,\n  \"successful</w>\": 4670,\n  \"successfully</w>\": 9934,\n  \"succession</w>\": 38491,\n  \"successive</w>\": 41319,\n  \"successor</w>\": 34774,\n  \"succu\": 45253,\n  \"succul\": 25671,\n  \"succulent</w>\": 35236,\n  \"such</w>\": 2046,\n  \"suction</w>\": 42786,\n  \"sud\": 8067,\n  \"sud</w>\": 33714,\n  \"sudan\": 31149,\n  \"sudan</w>\": 13474,\n  \"sudanese</w>\": 42837,\n  \"sudbury</w>\": 32488,\n  \"sudden\": 10833,\n  \"sudden</w>\": 15433,\n  \"suddenly</w>\": 11076,\n  \"sue\": 14045,\n  \"sue</w>\": 6641,\n  \"sued</w>\": 22225,\n  \"suede</w>\": 21036,\n  \"sues</w>\": 17105,\n  \"suf\": 21204,\n  \"suf</w>\": 22579,\n  \"sufc</w>\": 37091,\n  \"suff\": 4866,\n  \"suffe\": 13510,\n  \"suffer</w>\": 13557,\n  \"suffered</w>\": 14766,\n  \"suffering</w>\": 10140,\n  \"suffers</w>\": 22389,\n  \"sufficient</w>\": 28410,\n  \"suffol\": 13775,\n  \"suffolk\": 46408,\n  \"suffolk</w>\": 15685,\n  \"suffra\": 34596,\n  \"suffrage</w>\": 39567,\n  \"sufi</w>\": 39756,\n  \"sug\": 3189,\n  \"suga</w>\": 28757,\n  \"sugar\": 12418,\n  \"sugar</w>\": 5574,\n  \"sugge\": 6345,\n  \"suggest</w>\": 13356,\n  \"suggested</w>\": 18790,\n  \"suggesti\": 15033,\n  \"suggesting</w>\": 29792,\n  \"suggestion</w>\": 23741,\n  \"suggestions</w>\": 16052,\n  \"suggests</w>\": 13333,\n  \"suho</w>\": 32744,\n  \"sui</w>\": 24972,\n  \"suici\": 16372,\n  \"suicidal</w>\": 37165,\n  \"suicide\": 31310,\n  \"suicide</w>\": 8247,\n  \"suing</w>\": 18309,\n  \"suisse</w>\": 35964,\n  \"suit\": 11887,\n  \"suit</w>\": 3940,\n  \"suitable</w>\": 17476,\n  \"suitcase</w>\": 27792,\n  \"suite</w>\": 9346,\n  \"suited</w>\": 25919,\n  \"suites</w>\": 21523,\n  \"suits</w>\": 9949,\n  \"suk\": 24820,\n  \"suk</w>\": 6886,\n  \"suka</w>\": 44017,\n  \"suke</w>\": 25590,\n  \"sukh\": 46961,\n  \"suki</w>\": 32704,\n  \"sul\": 1767,\n  \"sul</w>\": 19879,\n  \"sula\": 34713,\n  \"sula</w>\": 26143,\n  \"sullivan</w>\": 14477,\n  \"sully</w>\": 37752,\n  \"sulph\": 37234,\n  \"sulphur</w>\": 47659,\n  \"sultan\": 35650,\n  \"sultan</w>\": 17049,\n  \"sum\": 7054,\n  \"sum</w>\": 8257,\n  \"suma</w>\": 47938,\n  \"sumat\": 32640,\n  \"sumatra</w>\": 47346,\n  \"sume</w>\": 45457,\n  \"sumi</w>\": 41248,\n  \"summ\": 1309,\n  \"summar\": 34657,\n  \"summari\": 31993,\n  \"summary</w>\": 13435,\n  \"summed</w>\": 34912,\n  \"summer\": 5500,\n  \"summer</w>\": 1673,\n  \"summers</w>\": 18254,\n  \"summerslam</w>\": 40264,\n  \"summertime</w>\": 19025,\n  \"summit\": 30011,\n  \"summit</w>\": 3768,\n  \"summon\": 27622,\n  \"summon</w>\": 39782,\n  \"sumner</w>\": 46813,\n  \"sumo</w>\": 33734,\n  \"sump\": 34252,\n  \"sumptuous</w>\": 47354,\n  \"sums</w>\": 13325,\n  \"sun\": 968,\n  \"sun</w>\": 2176,\n  \"sunbathing</w>\": 46994,\n  \"sunburn</w>\": 45767,\n  \"sund</w>\": 40735,\n  \"sundae</w>\": 38078,\n  \"sundance</w>\": 24128,\n  \"sundar\": 44936,\n  \"sunday\": 6649,\n  \"sunday</w>\": 1706,\n  \"sundayfunday</w>\": 21565,\n  \"sundaymorning</w>\": 24809,\n  \"sundaymotivation</w>\": 46227,\n  \"sundays</w>\": 15827,\n  \"sundaywith\": 26469,\n  \"sundaywithmarsha</w>\": 26662,\n  \"sunder\": 15097,\n  \"sunderland\": 45727,\n  \"sunderland</w>\": 18851,\n  \"sundown</w>\": 44438,\n  \"sune</w>\": 41096,\n  \"sunflower</w>\": 21559,\n  \"sunflowers</w>\": 39809,\n  \"sung\": 16903,\n  \"sung</w>\": 6047,\n  \"sunglasses</w>\": 12906,\n  \"suni\": 17663,\n  \"suni</w>\": 47010,\n  \"sunil</w>\": 32861,\n  \"sunite</w>\": 21382,\n  \"sunited</w>\": 35276,\n  \"sunk</w>\": 37534,\n  \"sunken</w>\": 43473,\n  \"sunlight</w>\": 17996,\n  \"sunni</w>\": 44315,\n  \"sunny\": 15632,\n  \"sunny</w>\": 5438,\n  \"sunrise</w>\": 5610,\n  \"suns</w>\": 18322,\n  \"sunscreen</w>\": 29355,\n  \"sunset\": 37880,\n  \"sunset</w>\": 3424,\n  \"sunsets</w>\": 17721,\n  \"sunshine\": 32761,\n  \"sunshine</w>\": 5385,\n  \"suny</w>\": 41308,\n  \"sup\": 19078,\n  \"sup</w>\": 8249,\n  \"supdates</w>\": 24177,\n  \"super\": 1642,\n  \"super</w>\": 1994,\n  \"superb</w>\": 8930,\n  \"superbike</w>\": 45709,\n  \"superbowl\": 47461,\n  \"superbowl</w>\": 16467,\n  \"supercar</w>\": 27021,\n  \"supercars</w>\": 32185,\n  \"supercell</w>\": 43227,\n  \"supercharged</w>\": 47479,\n  \"supere\": 46831,\n  \"superfood</w>\": 41715,\n  \"supergirl</w>\": 25771,\n  \"superhero</w>\": 14049,\n  \"superheroes</w>\": 23334,\n  \"superint\": 17615,\n  \"superintendent</w>\": 19020,\n  \"superior</w>\": 13205,\n  \"superjunior</w>\": 40475,\n  \"superleague</w>\": 45539,\n  \"superman</w>\": 11237,\n  \"supermarket</w>\": 19897,\n  \"supermarkets</w>\": 45106,\n  \"supermodel</w>\": 41963,\n  \"supermoon</w>\": 36571,\n  \"supernatural</w>\": 15484,\n  \"supernova</w>\": 39843,\n  \"superrugby</w>\": 48717,\n  \"supersonic</w>\": 42019,\n  \"supersport</w>\": 46319,\n  \"superst\": 38202,\n  \"superstar\": 32551,\n  \"superstar</w>\": 10472,\n  \"superstars</w>\": 25797,\n  \"supervis\": 12709,\n  \"supervised</w>\": 41316,\n  \"supervision</w>\": 36234,\n  \"supervisor</w>\": 20366,\n  \"supervisors</w>\": 37958,\n  \"superyacht</w>\": 42714,\n  \"supp\": 1023,\n  \"supper</w>\": 15727,\n  \"supple\": 31431,\n  \"supplement</w>\": 19924,\n  \"supplements</w>\": 21265,\n  \"supplied</w>\": 24106,\n  \"supplier</w>\": 18043,\n  \"suppliers</w>\": 24196,\n  \"supplies</w>\": 9384,\n  \"supply\": 25074,\n  \"supply</w>\": 6389,\n  \"supplychain</w>\": 31224,\n  \"supplying</w>\": 32739,\n  \"suppo\": 6941,\n  \"suppor\": 2104,\n  \"support\": 12062,\n  \"support</w>\": 1425,\n  \"supported</w>\": 8038,\n  \"supporter</w>\": 12992,\n  \"supporters</w>\": 7403,\n  \"supportindiefilm</w>\": 43976,\n  \"supporting</w>\": 3976,\n  \"supportive</w>\": 18313,\n  \"supportlocal</w>\": 43852,\n  \"supports</w>\": 8336,\n  \"supportsmall\": 30941,\n  \"supportsmallstreamers</w>\": 36097,\n  \"suppose</w>\": 18924,\n  \"supposed</w>\": 9119,\n  \"supposedly</w>\": 32302,\n  \"suppre\": 20542,\n  \"suppression</w>\": 36508,\n  \"supra</w>\": 48485,\n  \"supre\": 5875,\n  \"supremac\": 28643,\n  \"supremacist</w>\": 39005,\n  \"supremacy</w>\": 28913,\n  \"supreme\": 35222,\n  \"supreme</w>\": 7468,\n  \"supt</w>\": 23625,\n  \"sur\": 1090,\n  \"sur</w>\": 7123,\n  \"sura\": 33412,\n  \"sura</w>\": 49125,\n  \"surabaya</w>\": 45227,\n  \"surance</w>\": 22184,\n  \"surat</w>\": 30201,\n  \"sure\": 14320,\n  \"sure</w>\": 1650,\n  \"sured</w>\": 36869,\n  \"surely</w>\": 11409,\n  \"sures</w>\": 12725,\n  \"suresh\": 32118,\n  \"suresh</w>\": 31464,\n  \"sureshpp\": 41924,\n  \"sureshpprabhu</w>\": 42050,\n  \"surf\": 10176,\n  \"surf</w>\": 10322,\n  \"surface</w>\": 7744,\n  \"surfaces</w>\": 20746,\n  \"surfer</w>\": 24925,\n  \"surfers</w>\": 34842,\n  \"surfing</w>\": 15762,\n  \"surg\": 13045,\n  \"surge</w>\": 17457,\n  \"surgeon</w>\": 16039,\n  \"surgeons</w>\": 26000,\n  \"surger\": 5122,\n  \"surgeries</w>\": 34940,\n  \"surgery</w>\": 5344,\n  \"surgical</w>\": 16386,\n  \"suri\": 14130,\n  \"suri</w>\": 33952,\n  \"suring</w>\": 16817,\n  \"suriya</w>\": 17832,\n  \"surpass</w>\": 45494,\n  \"surpassed</w>\": 25648,\n  \"surplus</w>\": 29413,\n  \"surpri\": 3244,\n  \"surprise</w>\": 5099,\n  \"surprised</w>\": 8949,\n  \"surprises</w>\": 16920,\n  \"surprising</w>\": 14964,\n  \"surprisingly</w>\": 17367,\n  \"surreal</w>\": 18408,\n  \"surrealism</w>\": 41773,\n  \"surrender</w>\": 20964,\n  \"surrendered</w>\": 44601,\n  \"surrey\": 26489,\n  \"surrey</w>\": 14315,\n  \"surro\": 47499,\n  \"surroun\": 8250,\n  \"surround\": 26543,\n  \"surround</w>\": 22999,\n  \"surrounded</w>\": 13589,\n  \"surrounding</w>\": 12544,\n  \"surroundings</w>\": 26915,\n  \"surrounds</w>\": 39012,\n  \"suru</w>\": 49240,\n  \"surve\": 8952,\n  \"surveill\": 15408,\n  \"surveillance</w>\": 15578,\n  \"survey\": 45914,\n  \"survey</w>\": 6809,\n  \"surveying</w>\": 33085,\n  \"surveys</w>\": 25096,\n  \"survi\": 3440,\n  \"surviv\": 12922,\n  \"survival</w>\": 10172,\n  \"survive</w>\": 10431,\n  \"survived</w>\": 13483,\n  \"survives</w>\": 30927,\n  \"surviving</w>\": 18609,\n  \"survivor\": 31934,\n  \"survivor</w>\": 10944,\n  \"survivors</w>\": 13711,\n  \"surya</w>\": 37767,\n  \"sus\": 8091,\n  \"sus</w>\": 3036,\n  \"susa</w>\": 20546,\n  \"susan\": 19922,\n  \"susan</w>\": 10168,\n  \"suscep\": 44270,\n  \"sush\": 22298,\n  \"sushi</w>\": 11729,\n  \"sushmaswar\": 48200,\n  \"susie</w>\": 32284,\n  \"susp\": 7971,\n  \"suspec\": 10298,\n  \"suspect</w>\": 9065,\n  \"suspected</w>\": 15579,\n  \"suspects</w>\": 18265,\n  \"suspen\": 10578,\n  \"suspend</w>\": 41007,\n  \"suspended</w>\": 13126,\n  \"suspends</w>\": 39535,\n  \"suspense</w>\": 21556,\n  \"suspension</w>\": 15417,\n  \"suspici\": 25714,\n  \"suspicion</w>\": 34910,\n  \"suspicious</w>\": 19862,\n  \"sussex\": 31244,\n  \"sussex</w>\": 13266,\n  \"sustain\": 4644,\n  \"sustain</w>\": 28156,\n  \"sustainability</w>\": 9635,\n  \"sustainable\": 23645,\n  \"sustainable</w>\": 7078,\n  \"sustained</w>\": 22699,\n  \"sustaining</w>\": 44418,\n  \"sut\": 23984,\n  \"sut</w>\": 28956,\n  \"sutherland</w>\": 27592,\n  \"sutton\": 39359,\n  \"sutton</w>\": 18564,\n  \"suv</w>\": 15985,\n  \"suz\": 9957,\n  \"suzanne</w>\": 24617,\n  \"suzu\": 36289,\n  \"suzuki</w>\": 16892,\n  \"suzy</w>\": 26552,\n  \"sv\": 6508,\n  \"sv</w>\": 17083,\n  \"svc</w>\": 45065,\n  \"sve\": 47637,\n  \"sven\": 37786,\n  \"sven</w>\": 45183,\n  \"sver\": 45923,\n  \"sville\": 44580,\n  \"sville</w>\": 6741,\n  \"svp</w>\": 28465,\n  \"svt</w>\": 42014,\n  \"svu</w>\": 32123,\n  \"sw\": 1220,\n  \"sw</w>\": 4457,\n  \"swa\": 4707,\n  \"swa</w>\": 31916,\n  \"swach\": 20862,\n  \"swachhb\": 31898,\n  \"swachhbharat</w>\": 36927,\n  \"swag\": 8852,\n  \"swag</w>\": 8177,\n  \"swagg</w>\": 47702,\n  \"swagger</w>\": 35797,\n  \"swain</w>\": 43226,\n  \"swal\": 13433,\n  \"swallow</w>\": 28979,\n  \"swallowed</w>\": 46956,\n  \"swallows</w>\": 45124,\n  \"swam</w>\": 42539,\n  \"swami</w>\": 25021,\n  \"swamp\": 41953,\n  \"swamp</w>\": 16595,\n  \"swamy</w>\": 28445,\n  \"swan\": 8215,\n  \"swan</w>\": 12530,\n  \"swana</w>\": 24699,\n  \"swans</w>\": 19516,\n  \"swansea</w>\": 16567,\n  \"swanson</w>\": 34797,\n  \"swap</w>\": 15234,\n  \"swapped</w>\": 39077,\n  \"swapping</w>\": 44702,\n  \"swaps</w>\": 49242,\n  \"swar\": 11680,\n  \"swarm</w>\": 31577,\n  \"swarovski</w>\": 28515,\n  \"swat\": 32547,\n  \"swat</w>\": 26482,\n  \"swatch</w>\": 48053,\n  \"sway\": 26443,\n  \"sway</w>\": 26617,\n  \"swc</w>\": 42231,\n  \"swe\": 2350,\n  \"swe</w>\": 38070,\n  \"swear</w>\": 7406,\n  \"swearing</w>\": 32627,\n  \"sweat\": 10282,\n  \"sweat</w>\": 12663,\n  \"sweater</w>\": 11455,\n  \"sweaters</w>\": 31303,\n  \"sweating</w>\": 33215,\n  \"sweats</w>\": 39321,\n  \"sweatshirt</w>\": 22442,\n  \"sweaty</w>\": 28419,\n  \"sweden</w>\": 8760,\n  \"swedish</w>\": 11585,\n  \"swee\": 1812,\n  \"sweek</w>\": 30017,\n  \"sweeney</w>\": 27286,\n  \"sweep\": 23220,\n  \"sweep</w>\": 13669,\n  \"sweeping</w>\": 25719,\n  \"sweeps</w>\": 26887,\n  \"sweepstakes</w>\": 25992,\n  \"sweet\": 10957,\n  \"sweet</w>\": 2418,\n  \"sweetened</w>\": 45577,\n  \"sweeter</w>\": 32873,\n  \"sweetest</w>\": 15180,\n  \"sweethe\": 16316,\n  \"sweetheart</w>\": 18079,\n  \"sweetie</w>\": 24450,\n  \"sweetness</w>\": 29713,\n  \"sweets</w>\": 18045,\n  \"swel\": 48470,\n  \"swell\": 35538,\n  \"swell</w>\": 21490,\n  \"swelling</w>\": 46578,\n  \"swept</w>\": 23311,\n  \"swer\": 30514,\n  \"swfc</w>\": 30227,\n  \"swfl</w>\": 46607,\n  \"swi\": 3881,\n  \"swi</w>\": 45223,\n  \"swick</w>\": 17159,\n  \"swif\": 28548,\n  \"swift\": 34843,\n  \"swift</w>\": 8229,\n  \"swild\": 33909,\n  \"swild</w>\": 38696,\n  \"swildlife</w>\": 46818,\n  \"swim\": 4928,\n  \"swim</w>\": 7681,\n  \"swimmer</w>\": 25475,\n  \"swimmers</w>\": 27776,\n  \"swimming</w>\": 7411,\n  \"swims</w>\": 46798,\n  \"swimsuit</w>\": 25504,\n  \"swimwear</w>\": 31889,\n  \"swin\": 14554,\n  \"swin</w>\": 40798,\n  \"swindon</w>\": 29540,\n  \"swine</w>\": 31166,\n  \"swing\": 25292,\n  \"swing</w>\": 7429,\n  \"swinging</w>\": 26760,\n  \"swings</w>\": 29141,\n  \"swipe</w>\": 31828,\n  \"swire</w>\": 42753,\n  \"swirl</w>\": 35795,\n  \"swis\": 23611,\n  \"swish</w>\": 38571,\n  \"swiss\": 37917,\n  \"swiss</w>\": 9287,\n  \"swit\": 3726,\n  \"switch\": 22480,\n  \"switch</w>\": 5893,\n  \"switched</w>\": 22869,\n  \"switches</w>\": 33569,\n  \"switching</w>\": 21155,\n  \"swith\": 17299,\n  \"switzer\": 9835,\n  \"switzerland</w>\": 9912,\n  \"swivel</w>\": 48256,\n  \"swo\": 38673,\n  \"swol\": 29575,\n  \"swollen</w>\": 36129,\n  \"swoo\": 29744,\n  \"swood</w>\": 24158,\n  \"swoon</w>\": 37028,\n  \"swoop</w>\": 45661,\n  \"sword\": 33294,\n  \"sword</w>\": 11356,\n  \"swords</w>\": 27181,\n  \"swork</w>\": 42722,\n  \"sworld</w>\": 33305,\n  \"sworn</w>\": 21130,\n  \"sworth</w>\": 13322,\n  \"swt</w>\": 38878,\n  \"swx</w>\": 20597,\n  \"sx\": 9402,\n  \"sx</w>\": 17806,\n  \"sxsw</w>\": 13369,\n  \"sy\": 974,\n  \"sy</w>\": 2126,\n  \"sya</w>\": 35017,\n  \"sycam\": 34911,\n  \"sycamore</w>\": 43086,\n  \"syd\": 4525,\n  \"syd</w>\": 22504,\n  \"sydney\": 15878,\n  \"sydney</w>\": 5278,\n  \"syed</w>\": 27624,\n  \"syfy</w>\": 32047,\n  \"sykes</w>\": 27287,\n  \"syl\": 6452,\n  \"sylla\": 41708,\n  \"sylvania</w>\": 12011,\n  \"sylve\": 28369,\n  \"sylvester</w>\": 37214,\n  \"sylvia</w>\": 25670,\n  \"sym\": 3645,\n  \"sym</w>\": 40327,\n  \"symb\": 22987,\n  \"symbol</w>\": 13085,\n  \"symboli\": 22019,\n  \"symbolic</w>\": 33177,\n  \"symbolism</w>\": 44679,\n  \"symbols</w>\": 25476,\n  \"symmetry</w>\": 31427,\n  \"symp\": 11468,\n  \"sympathi\": 47493,\n  \"sympathy</w>\": 32477,\n  \"symph\": 9544,\n  \"symphonic</w>\": 42639,\n  \"symphony</w>\": 11180,\n  \"sympo\": 9730,\n  \"symposium</w>\": 9971,\n  \"symptom</w>\": 47799,\n  \"symptoms</w>\": 12956,\n  \"syn\": 3758,\n  \"syn</w>\": 36090,\n  \"synago\": 30945,\n  \"synagogue</w>\": 33518,\n  \"sync</w>\": 20081,\n  \"synchron\": 23943,\n  \"syndic\": 21098,\n  \"syndicate</w>\": 28779,\n  \"syndrome</w>\": 10927,\n  \"syner\": 22283,\n  \"synergy</w>\": 32012,\n  \"syno\": 31533,\n  \"synod</w>\": 47712,\n  \"synopsis</w>\": 47018,\n  \"synth\": 33841,\n  \"synth</w>\": 24462,\n  \"synthe\": 22604,\n  \"synthesi\": 33565,\n  \"synthesis</w>\": 21602,\n  \"synthesizer</w>\": 44077,\n  \"synthetic</w>\": 19917,\n  \"syou\": 26742,\n  \"syour\": 21718,\n  \"syrac\": 17279,\n  \"syracuse</w>\": 19640,\n  \"syrah</w>\": 45364,\n  \"syri\": 18917,\n  \"syria</w>\": 5563,\n  \"syrian\": 47562,\n  \"syrian</w>\": 10041,\n  \"syrians</w>\": 41392,\n  \"syrup</w>\": 16611,\n  \"sys</w>\": 26726,\n  \"syste\": 1933,\n  \"system\": 47813,\n  \"system</w>\": 2422,\n  \"systematic</w>\": 28586,\n  \"systemic</w>\": 33807,\n  \"systems</w>\": 4828,\n  \"sz\": 13438,\n  \"sz</w>\": 15879,\n  \"sze\": 44507,\n  \"szn</w>\": 48092,\n  \"sÃ£o</w>\": 45911,\n  \"sÃ©\": 37879,\n  \"t\": 83,\n  \"t</w>\": 339,\n  \"ta\": 648,\n  \"ta</w>\": 1397,\n  \"taa</w>\": 43874,\n  \"tab\": 2648,\n  \"tab</w>\": 14724,\n  \"tabby</w>\": 36145,\n  \"tabern\": 48991,\n  \"tability</w>\": 15770,\n  \"table\": 12108,\n  \"table</w>\": 2175,\n  \"tableau</w>\": 39723,\n  \"tables</w>\": 7822,\n  \"tablet</w>\": 12494,\n  \"tabletop\": 46843,\n  \"tabletop</w>\": 25773,\n  \"tablets</w>\": 20436,\n  \"tably</w>\": 24440,\n  \"taboo</w>\": 38400,\n  \"tabs</w>\": 29163,\n  \"tac\": 3145,\n  \"tac</w>\": 22653,\n  \"tache</w>\": 39239,\n  \"tack\": 6339,\n  \"tack</w>\": 34446,\n  \"tackle</w>\": 10294,\n  \"tackled</w>\": 47218,\n  \"tackles</w>\": 18021,\n  \"tackling</w>\": 19628,\n  \"taco\": 31924,\n  \"taco</w>\": 12436,\n  \"tacoma</w>\": 25397,\n  \"tacos</w>\": 14090,\n  \"tactic</w>\": 40377,\n  \"tactical</w>\": 17137,\n  \"tactics</w>\": 16410,\n  \"tacular</w>\": 48985,\n  \"tad\": 15890,\n  \"tad</w>\": 19860,\n  \"tado</w>\": 40846,\n  \"tae\": 15257,\n  \"tae</w>\": 15580,\n  \"taehyung</w>\": 24642,\n  \"taek\": 30753,\n  \"taekwondo</w>\": 39963,\n  \"taemin</w>\": 30600,\n  \"taeyang</w>\": 45802,\n  \"taeyeon</w>\": 27389,\n  \"taf\": 29660,\n  \"taft</w>\": 42141,\n  \"tag\": 3456,\n  \"tag</w>\": 3640,\n  \"tage</w>\": 2669,\n  \"tages</w>\": 39902,\n  \"tagged</w>\": 12969,\n  \"tagging</w>\": 25138,\n  \"tagne</w>\": 47467,\n  \"tags</w>\": 11606,\n  \"tah\": 14822,\n  \"tah</w>\": 7090,\n  \"tahit\": 45385,\n  \"tahoe</w>\": 26140,\n  \"tai\": 6511,\n  \"tai</w>\": 13040,\n  \"taiji</w>\": 30185,\n  \"tail\": 7156,\n  \"tail</w>\": 4132,\n  \"tailed</w>\": 20626,\n  \"tailgate</w>\": 23168,\n  \"tailgating</w>\": 42625,\n  \"tailo\": 27230,\n  \"tailor</w>\": 29870,\n  \"tailored</w>\": 28275,\n  \"tailoring</w>\": 46357,\n  \"tails</w>\": 16066,\n  \"tain\": 2841,\n  \"tain</w>\": 1908,\n  \"taine\": 21214,\n  \"taine</w>\": 32299,\n  \"tained</w>\": 10212,\n  \"taining</w>\": 7565,\n  \"tainment</w>\": 30063,\n  \"tains</w>\": 3952,\n  \"tainted</w>\": 47211,\n  \"taipei</w>\": 24356,\n  \"tair\": 29143,\n  \"tairp</w>\": 43707,\n  \"tait</w>\": 45325,\n  \"taiwan\": 36319,\n  \"taiwan</w>\": 12626,\n  \"taiwanese</w>\": 41416,\n  \"taj\": 28937,\n  \"taj</w>\": 24805,\n  \"taji\": 46358,\n  \"tak\": 15070,\n  \"tak</w>\": 14458,\n  \"taka\": 24070,\n  \"taka</w>\": 40968,\n  \"take\": 5052,\n  \"take</w>\": 1172,\n  \"takeaway</w>\": 25737,\n  \"takeaways</w>\": 32080,\n  \"takeme\": 41748,\n  \"taken</w>\": 2807,\n  \"takeoff</w>\": 32789,\n  \"takeover</w>\": 11863,\n  \"taker</w>\": 17939,\n  \"takers</w>\": 30775,\n  \"takes</w>\": 2633,\n  \"takin</w>\": 30890,\n  \"taking</w>\": 2019,\n  \"taku</w>\": 48168,\n  \"tal\": 976,\n  \"tal</w>\": 2066,\n  \"tala</w>\": 29845,\n  \"talaga</w>\": 35349,\n  \"talbot</w>\": 30585,\n  \"tale\": 33971,\n  \"tale</w>\": 7798,\n  \"talent\": 30435,\n  \"talent</w>\": 5114,\n  \"talented</w>\": 5331,\n  \"talents</w>\": 16136,\n  \"tales</w>\": 9469,\n  \"tali\": 12122,\n  \"tali</w>\": 45406,\n  \"taliban</w>\": 20788,\n  \"talis\": 36480,\n  \"tality</w>\": 15631,\n  \"talk\": 12462,\n  \"talk</w>\": 1841,\n  \"talked</w>\": 10153,\n  \"talkin</w>\": 26040,\n  \"talking\": 31463,\n  \"talking</w>\": 2578,\n  \"talks</w>\": 3237,\n  \"tall\": 11664,\n  \"tall</w>\": 7771,\n  \"talla\": 21528,\n  \"tallade\": 44220,\n  \"tallahassee</w>\": 37832,\n  \"taller</w>\": 23470,\n  \"tallest</w>\": 19774,\n  \"tallinn</w>\": 45079,\n  \"tally</w>\": 16323,\n  \"talon</w>\": 47897,\n  \"tam\": 2661,\n  \"tam</w>\": 12246,\n  \"tama</w>\": 45424,\n  \"tamanna\": 48055,\n  \"tamar\": 22901,\n  \"tamara</w>\": 35697,\n  \"tame\": 38557,\n  \"tame</w>\": 32778,\n  \"tamed</w>\": 40575,\n  \"tami</w>\": 39429,\n  \"tamil\": 23046,\n  \"tamil</w>\": 14033,\n  \"tamilnadu</w>\": 32371,\n  \"tamine</w>\": 42566,\n  \"tammy</w>\": 28396,\n  \"tampa</w>\": 10906,\n  \"tampab\": 37852,\n  \"tamu</w>\": 34105,\n  \"tan\": 2123,\n  \"tan</w>\": 5039,\n  \"tana</w>\": 21396,\n  \"tand\": 20244,\n  \"tandem</w>\": 33756,\n  \"tane\": 13344,\n  \"tane</w>\": 24923,\n  \"taneous</w>\": 22275,\n  \"taneously</w>\": 24422,\n  \"tang\": 10425,\n  \"tang</w>\": 20794,\n  \"tanger\": 31844,\n  \"tangerine</w>\": 42045,\n  \"tangible</w>\": 44823,\n  \"tangle</w>\": 36568,\n  \"tangled</w>\": 33587,\n  \"tango</w>\": 24089,\n  \"tani\": 31374,\n  \"tani</w>\": 32985,\n  \"tania</w>\": 45369,\n  \"tank\": 29858,\n  \"tank</w>\": 6172,\n  \"tanker</w>\": 25020,\n  \"tanks</w>\": 14223,\n  \"tann\": 19174,\n  \"tanner</w>\": 22001,\n  \"tanning</w>\": 27985,\n  \"tans</w>\": 27332,\n  \"tant\": 41383,\n  \"tant</w>\": 41695,\n  \"tante</w>\": 48262,\n  \"tanto</w>\": 45685,\n  \"tany\": 34410,\n  \"tanya</w>\": 26800,\n  \"tanz\": 47399,\n  \"tanzania</w>\": 15711,\n  \"tao\": 29084,\n  \"tao</w>\": 18923,\n  \"tap\": 17923,\n  \"tap</w>\": 7888,\n  \"tapas</w>\": 27361,\n  \"tape\": 18332,\n  \"tape</w>\": 5749,\n  \"taped</w>\": 33219,\n  \"tapes</w>\": 17903,\n  \"tapestry</w>\": 33525,\n  \"taping</w>\": 24355,\n  \"tapp\": 27644,\n  \"tapp</w>\": 27764,\n  \"tapped</w>\": 26649,\n  \"tapping</w>\": 27882,\n  \"tapro\": 34415,\n  \"taproom</w>\": 40266,\n  \"taps</w>\": 23267,\n  \"tar\": 2002,\n  \"tar</w>\": 6977,\n  \"tara</w>\": 15264,\n  \"tarak</w>\": 37813,\n  \"taran\": 32370,\n  \"tarantino</w>\": 41180,\n  \"tarde</w>\": 48670,\n  \"tardis</w>\": 35410,\n  \"tares</w>\": 34587,\n  \"targe\": 9620,\n  \"target\": 38556,\n  \"target</w>\": 5400,\n  \"targeted</w>\": 14968,\n  \"targeting</w>\": 15818,\n  \"targets</w>\": 12468,\n  \"tari\": 4238,\n  \"tari</w>\": 38012,\n  \"tarian</w>\": 11762,\n  \"tarians</w>\": 42789,\n  \"taries</w>\": 47291,\n  \"tariff</w>\": 40220,\n  \"tariffs</w>\": 28335,\n  \"tariq</w>\": 42526,\n  \"tarmac</w>\": 44294,\n  \"taro</w>\": 26264,\n  \"tarot</w>\": 23702,\n  \"tart\": 16707,\n  \"tart</w>\": 14120,\n  \"tartan</w>\": 35064,\n  \"tarts</w>\": 29799,\n  \"tary\": 31729,\n  \"tary</w>\": 5065,\n  \"tarzan</w>\": 45463,\n  \"tas\": 6538,\n  \"tas</w>\": 10163,\n  \"tash\": 35272,\n  \"tasha</w>\": 44967,\n  \"task\": 39189,\n  \"task</w>\": 10549,\n  \"tasks</w>\": 19453,\n  \"tasmania</w>\": 22429,\n  \"tasmanian</w>\": 45102,\n  \"tassel</w>\": 49276,\n  \"tast\": 10839,\n  \"taste\": 14314,\n  \"taste</w>\": 5219,\n  \"tasted</w>\": 22827,\n  \"tasteof\": 38097,\n  \"taster</w>\": 29743,\n  \"tastes</w>\": 13736,\n  \"tastic</w>\": 21337,\n  \"tasting</w>\": 7656,\n  \"tastings</w>\": 49273,\n  \"tasty\": 43390,\n  \"tasty</w>\": 8568,\n  \"tat\": 2652,\n  \"tat</w>\": 21592,\n  \"tata</w>\": 19300,\n  \"tate\": 44476,\n  \"tate</w>\": 13295,\n  \"tath\": 27566,\n  \"tati\": 31433,\n  \"tatiana</w>\": 48837,\n  \"tation</w>\": 5280,\n  \"tations</w>\": 32324,\n  \"tator</w>\": 18791,\n  \"tators</w>\": 37206,\n  \"tats</w>\": 44557,\n  \"tatt\": 9232,\n  \"tatted</w>\": 41605,\n  \"tattoo\": 15980,\n  \"tattoo</w>\": 6325,\n  \"tattooed</w>\": 28541,\n  \"tattoos</w>\": 14900,\n  \"tatum</w>\": 26103,\n  \"tau\": 6620,\n  \"tau</w>\": 20510,\n  \"taught</w>\": 9306,\n  \"taun\": 23910,\n  \"taunton</w>\": 40681,\n  \"taurus</w>\": 32881,\n  \"taver\": 37776,\n  \"tavern</w>\": 18644,\n  \"taw\": 33868,\n  \"taw</w>\": 40289,\n  \"tawa</w>\": 29035,\n  \"tawards</w>\": 14351,\n  \"tax\": 4581,\n  \"tax</w>\": 3879,\n  \"taxation</w>\": 36847,\n  \"taxes</w>\": 11462,\n  \"taxi\": 25160,\n  \"taxi</w>\": 11380,\n  \"taxider\": 47420,\n  \"taxis</w>\": 34009,\n  \"taxpay\": 17986,\n  \"taxpayer</w>\": 30978,\n  \"taxpayers</w>\": 25503,\n  \"tay\": 6542,\n  \"tay</w>\": 15073,\n  \"taya</w>\": 38484,\n  \"tayl\": 3913,\n  \"taylor\": 9044,\n  \"taylor</w>\": 3961,\n  \"taylorswift</w>\": 18936,\n  \"tayo</w>\": 33941,\n  \"taz\": 41475,\n  \"taz</w>\": 31870,\n  \"tb\": 1990,\n  \"tb</w>\": 7490,\n  \"tba</w>\": 34363,\n  \"tball\": 8390,\n  \"tball</w>\": 1467,\n  \"tbc</w>\": 31807,\n  \"tbd</w>\": 45548,\n  \"tbh</w>\": 13238,\n  \"tbi</w>\": 45868,\n  \"tbl</w>\": 42962,\n  \"tbli\": 43664,\n  \"tblightning</w>\": 44178,\n  \"tbo</w>\": 34255,\n  \"tbr</w>\": 46643,\n  \"tbs</w>\": 37368,\n  \"tbt</w>\": 2950,\n  \"tc\": 6820,\n  \"tc</w>\": 5454,\n  \"tca</w>\": 35116,\n  \"tch\": 10744,\n  \"tch</w>\": 4048,\n  \"tches</w>\": 42001,\n  \"tcm\": 21501,\n  \"tcm</w>\": 26588,\n  \"tcmparty</w>\": 24338,\n  \"tcot</w>\": 8995,\n  \"tcs</w>\": 39107,\n  \"tcu</w>\": 26791,\n  \"td\": 20578,\n  \"td</w>\": 3192,\n  \"tdf</w>\": 21844,\n  \"tdi</w>\": 45621,\n  \"tdp</w>\": 47009,\n  \"tds</w>\": 20238,\n  \"tdsb</w>\": 29836,\n  \"te\": 600,\n  \"te</w>\": 756,\n  \"tea\": 41053,\n  \"tea</w>\": 3274,\n  \"teach\": 2043,\n  \"teach</w>\": 6865,\n  \"teacher\": 18051,\n  \"teacher</w>\": 4008,\n  \"teachers</w>\": 5069,\n  \"teaches</w>\": 17110,\n  \"teaching</w>\": 5141,\n  \"teachings</w>\": 32119,\n  \"teal</w>\": 22821,\n  \"team\": 2085,\n  \"team</w>\": 1027,\n  \"teamcanada</w>\": 46636,\n  \"teamed</w>\": 20590,\n  \"teamgb</w>\": 40971,\n  \"teaming</w>\": 24392,\n  \"teammate</w>\": 17900,\n  \"teammates</w>\": 13921,\n  \"teams</w>\": 3891,\n  \"teamsisd</w>\": 34703,\n  \"teamusa</w>\": 28625,\n  \"teamwork</w>\": 14657,\n  \"teaparty</w>\": 33065,\n  \"teapo\": 35745,\n  \"teapot</w>\": 40749,\n  \"tear\": 15802,\n  \"tear</w>\": 11862,\n  \"tearful</w>\": 46873,\n  \"tearing</w>\": 24785,\n  \"tears</w>\": 7688,\n  \"teas\": 23003,\n  \"teas</w>\": 29314,\n  \"tease</w>\": 25163,\n  \"teased</w>\": 49122,\n  \"teaser</w>\": 8982,\n  \"teasers</w>\": 48990,\n  \"teases</w>\": 28509,\n  \"teasing</w>\": 36507,\n  \"teat\": 26376,\n  \"teatime</w>\": 48948,\n  \"teatro</w>\": 35756,\n  \"teau</w>\": 24931,\n  \"tebow</w>\": 37797,\n  \"tec\": 17381,\n  \"tec</w>\": 11612,\n  \"tech\": 1782,\n  \"tech</w>\": 2061,\n  \"techcrunch</w>\": 42110,\n  \"techn\": 6252,\n  \"technews</w>\": 31787,\n  \"technic\": 16639,\n  \"technic</w>\": 37666,\n  \"technical\": 49231,\n  \"technical</w>\": 7582,\n  \"technically</w>\": 23180,\n  \"technician</w>\": 22540,\n  \"technicians</w>\": 35513,\n  \"techno\": 2599,\n  \"techno</w>\": 17564,\n  \"technological</w>\": 23068,\n  \"technologies</w>\": 10040,\n  \"technology</w>\": 3089,\n  \"techs</w>\": 41353,\n  \"ted\": 4841,\n  \"ted</w>\": 775,\n  \"tedcruz</w>\": 27517,\n  \"teddy\": 25758,\n  \"teddy</w>\": 11798,\n  \"tedly</w>\": 8539,\n  \"tedu</w>\": 42517,\n  \"tedx\": 17950,\n  \"tedx</w>\": 41504,\n  \"tee\": 12676,\n  \"tee</w>\": 3385,\n  \"teed</w>\": 13692,\n  \"teen\": 5398,\n  \"teen</w>\": 4697,\n  \"teenage</w>\": 14069,\n  \"teenager</w>\": 19338,\n  \"teenagers</w>\": 25989,\n  \"teenchoice</w>\": 28203,\n  \"teens</w>\": 12375,\n  \"teenth</w>\": 20249,\n  \"teenwolf</w>\": 40067,\n  \"teeny</w>\": 41622,\n  \"teer</w>\": 48648,\n  \"tees</w>\": 9641,\n  \"teessi\": 43295,\n  \"teeth</w>\": 8225,\n  \"tega</w>\": 29508,\n  \"tegr\": 39801,\n  \"teh\": 18720,\n  \"teh</w>\": 29601,\n  \"tehran</w>\": 26399,\n  \"tein</w>\": 33223,\n  \"tej</w>\": 46724,\n  \"tek\": 17489,\n  \"tek</w>\": 18294,\n  \"tekken</w>\": 29843,\n  \"tel\": 4978,\n  \"tel</w>\": 2226,\n  \"telang\": 23469,\n  \"telangana</w>\": 26386,\n  \"tele\": 3103,\n  \"tele</w>\": 32851,\n  \"telecom</w>\": 21057,\n  \"telecommunications</w>\": 39900,\n  \"telegram</w>\": 26780,\n  \"telegraph</w>\": 14713,\n  \"telephone</w>\": 17243,\n  \"telescope</w>\": 19037,\n  \"telethon</w>\": 49266,\n  \"televised</w>\": 39470,\n  \"television</w>\": 8608,\n  \"telford</w>\": 38323,\n  \"tell\": 16069,\n  \"tell</w>\": 2330,\n  \"teller</w>\": 20415,\n  \"tellers</w>\": 42707,\n  \"telling</w>\": 5507,\n  \"tells</w>\": 5217,\n  \"tellu\": 42511,\n  \"telly</w>\": 31475,\n  \"tels</w>\": 43607,\n  \"telugu</w>\": 22927,\n  \"tely</w>\": 5630,\n  \"tem\": 2404,\n  \"tem</w>\": 17536,\n  \"tema</w>\": 45881,\n  \"teme\": 43378,\n  \"temp\": 2684,\n  \"temp</w>\": 11097,\n  \"tempe</w>\": 36723,\n  \"temper\": 5981,\n  \"temper</w>\": 35521,\n  \"temperature</w>\": 9543,\n  \"temperatures</w>\": 11575,\n  \"tempered</w>\": 40521,\n  \"tempest</w>\": 36053,\n  \"templ\": 16679,\n  \"template</w>\": 18591,\n  \"templates</w>\": 30498,\n  \"temple\": 21841,\n  \"temple</w>\": 5620,\n  \"temples</w>\": 24024,\n  \"tempo</w>\": 19625,\n  \"tempor\": 4858,\n  \"temporal</w>\": 43656,\n  \"temporarily</w>\": 23189,\n  \"temporary</w>\": 6513,\n  \"temps</w>\": 11668,\n  \"tempt</w>\": 28460,\n  \"temptation</w>\": 30118,\n  \"tempted</w>\": 26226,\n  \"tempting</w>\": 34876,\n  \"ten\": 1149,\n  \"ten</w>\": 2581,\n  \"tenant</w>\": 16954,\n  \"tenants</w>\": 26023,\n  \"tenay</w>\": 45384,\n  \"tenberg</w>\": 31329,\n  \"tend\": 17630,\n  \"tend</w>\": 21252,\n  \"tendency</w>\": 47277,\n  \"tender\": 23020,\n  \"tender</w>\": 9838,\n  \"tenderloin</w>\": 42750,\n  \"tenders</w>\": 44741,\n  \"tending</w>\": 35084,\n  \"tendon</w>\": 48459,\n  \"tends</w>\": 39962,\n  \"tene\": 24868,\n  \"tened</w>\": 13682,\n  \"tener</w>\": 29054,\n  \"teneri\": 28000,\n  \"tenerife</w>\": 29401,\n  \"teners</w>\": 41307,\n  \"teness</w>\": 18018,\n  \"teng\": 34016,\n  \"teng</w>\": 28474,\n  \"tennant</w>\": 29310,\n  \"tennes\": 9514,\n  \"tennessee</w>\": 10053,\n  \"tennis\": 31504,\n  \"tennis</w>\": 5298,\n  \"tenor</w>\": 30521,\n  \"tens</w>\": 14062,\n  \"tense</w>\": 23518,\n  \"tension</w>\": 15221,\n  \"tensions</w>\": 24224,\n  \"tenstein</w>\": 49139,\n  \"tent\": 18505,\n  \"tent</w>\": 10782,\n  \"tentative</w>\": 48238,\n  \"tenth</w>\": 27483,\n  \"tention</w>\": 12191,\n  \"tents</w>\": 30730,\n  \"tenure</w>\": 30739,\n  \"teo</w>\": 18665,\n  \"tep</w>\": 31806,\n  \"tequ\": 17502,\n  \"tequila</w>\": 18510,\n  \"ter\": 704,\n  \"ter</w>\": 652,\n  \"tera</w>\": 15155,\n  \"teras</w>\": 44830,\n  \"tere\": 11329,\n  \"tered\": 49272,\n  \"tered</w>\": 4389,\n  \"terence</w>\": 33806,\n  \"teresa</w>\": 19081,\n  \"teri</w>\": 30917,\n  \"teria</w>\": 22685,\n  \"terie</w>\": 42276,\n  \"tering</w>\": 7929,\n  \"term\": 40991,\n  \"term</w>\": 4780,\n  \"termin\": 4766,\n  \"terminal</w>\": 11816,\n  \"terminals</w>\": 44091,\n  \"terminator</w>\": 29609,\n  \"terminology</w>\": 48896,\n  \"terms</w>\": 8663,\n  \"tern\": 41572,\n  \"tern</w>\": 12959,\n  \"terns</w>\": 25251,\n  \"tero\": 20727,\n  \"tero</w>\": 24697,\n  \"terps</w>\": 41471,\n  \"terr\": 3921,\n  \"terra\": 22366,\n  \"terra</w>\": 18816,\n  \"terrac\": 28549,\n  \"terrace</w>\": 13820,\n  \"terraces</w>\": 47508,\n  \"terracotta</w>\": 45123,\n  \"terrain</w>\": 20184,\n  \"terran\": 43726,\n  \"terre\": 33888,\n  \"terre</w>\": 27537,\n  \"terrell</w>\": 39494,\n  \"terrence</w>\": 38746,\n  \"terrestrial</w>\": 46299,\n  \"terri\": 4504,\n  \"terri</w>\": 36722,\n  \"terrible</w>\": 9741,\n  \"terribly</w>\": 34558,\n  \"terrier</w>\": 14455,\n  \"terriers</w>\": 47047,\n  \"terrific</w>\": 13837,\n  \"terrified</w>\": 28204,\n  \"terrifying</w>\": 18526,\n  \"territ\": 10720,\n  \"territorial</w>\": 39163,\n  \"territories</w>\": 32846,\n  \"territory</w>\": 13936,\n  \"terror\": 9596,\n  \"terror</w>\": 9327,\n  \"terrori\": 6836,\n  \"terrorism</w>\": 10583,\n  \"terrorist</w>\": 10575,\n  \"terrorists</w>\": 12835,\n  \"terry\": 19378,\n  \"terry</w>\": 8561,\n  \"ters\": 24102,\n  \"ters</w>\": 1737,\n  \"terti\": 48386,\n  \"tery</w>\": 4184,\n  \"tes\": 8019,\n  \"tes</w>\": 3609,\n  \"tesco</w>\": 15434,\n  \"tese</w>\": 33320,\n  \"tesla</w>\": 12254,\n  \"tess\": 21807,\n  \"tess</w>\": 20840,\n  \"tessa</w>\": 32063,\n  \"test\": 7738,\n  \"test</w>\": 1628,\n  \"testam\": 23477,\n  \"testament</w>\": 24609,\n  \"tested</w>\": 10576,\n  \"tester</w>\": 32707,\n  \"testi\": 18373,\n  \"testic\": 42364,\n  \"testify</w>\": 33088,\n  \"testifying</w>\": 46347,\n  \"testim\": 12553,\n  \"testimonial</w>\": 28834,\n  \"testimony</w>\": 18672,\n  \"testing</w>\": 4967,\n  \"testo\": 42428,\n  \"testosterone</w>\": 45168,\n  \"tests</w>\": 8715,\n  \"tet\": 40468,\n  \"tet</w>\": 13275,\n  \"tetra\": 40902,\n  \"tetris</w>\": 45934,\n  \"teu\": 47152,\n  \"teuk</w>\": 39979,\n  \"teur</w>\": 27120,\n  \"tex\": 2056,\n  \"tex</w>\": 11728,\n  \"texan\": 35287,\n  \"texan</w>\": 38386,\n  \"texans</w>\": 17580,\n  \"texanscheer</w>\": 43717,\n  \"texas\": 15713,\n  \"texas</w>\": 3403,\n  \"texaste\": 46469,\n  \"text\": 18169,\n  \"text</w>\": 4160,\n  \"textbook</w>\": 25952,\n  \"textbooks</w>\": 44041,\n  \"texted</w>\": 29004,\n  \"textile</w>\": 19789,\n  \"textiles</w>\": 24326,\n  \"texting</w>\": 18600,\n  \"texts</w>\": 12767,\n  \"texture</w>\": 16505,\n  \"textured</w>\": 32168,\n  \"textures</w>\": 28063,\n  \"tey</w>\": 32395,\n  \"tez</w>\": 22664,\n  \"tf\": 18828,\n  \"tf</w>\": 5001,\n  \"tfc</w>\": 30186,\n  \"tfl</w>\": 29918,\n  \"tford</w>\": 22493,\n  \"tful</w>\": 17108,\n  \"tfw</w>\": 16741,\n  \"tg\": 7665,\n  \"tg</w>\": 11981,\n  \"tgif</w>\": 14483,\n  \"th\": 513,\n  \"th</w>\": 640,\n  \"tha\": 18470,\n  \"tha</w>\": 4715,\n  \"thab\": 38219,\n  \"thad\": 48339,\n  \"thai\": 28054,\n  \"thai</w>\": 8825,\n  \"thail\": 7258,\n  \"thailand</w>\": 7469,\n  \"thak\": 22801,\n  \"thakur</w>\": 38427,\n  \"thal\": 7967,\n  \"thal</w>\": 12323,\n  \"thala</w>\": 17784,\n  \"thalai\": 25206,\n  \"thalaivar</w>\": 44918,\n  \"thalap\": 39789,\n  \"thalapathy\": 45405,\n  \"thalapathy</w>\": 23324,\n  \"thall</w>\": 36007,\n  \"tham\": 11761,\n  \"tham</w>\": 8896,\n  \"thames\": 43472,\n  \"thames</w>\": 15321,\n  \"than\": 792,\n  \"than</w>\": 1126,\n  \"thand\": 44465,\n  \"thane</w>\": 21463,\n  \"thang</w>\": 24870,\n  \"thani</w>\": 31322,\n  \"thank\": 2790,\n  \"thank</w>\": 1144,\n  \"thanked</w>\": 32079,\n  \"thankful\": 38839,\n  \"thankful</w>\": 6217,\n  \"thankfully</w>\": 22089,\n  \"thanking</w>\": 21989,\n  \"thanks\": 5672,\n  \"thanks</w>\": 1085,\n  \"thanksgiving\": 45732,\n  \"thanksgiving</w>\": 6167,\n  \"thanku</w>\": 45710,\n  \"thankyou\": 18050,\n  \"thankyou</w>\": 9911,\n  \"thanniversary</w>\": 35564,\n  \"thanos</w>\": 36709,\n  \"thanx</w>\": 25095,\n  \"thar\": 14396,\n  \"thar</w>\": 38843,\n  \"thard</w>\": 43474,\n  \"that\": 6303,\n  \"that</w>\": 682,\n  \"thatcher</w>\": 32496,\n  \"thats\": 44636,\n  \"thats</w>\": 9254,\n  \"thaw\": 26081,\n  \"thaw</w>\": 47229,\n  \"thbewithyou</w>\": 41067,\n  \"thc</w>\": 20091,\n  \"thcentury</w>\": 49111,\n  \"thd</w>\": 28219,\n  \"thday</w>\": 37801,\n  \"the\": 599,\n  \"the</w>\": 518,\n  \"thea\": 15935,\n  \"thea</w>\": 25429,\n  \"thead</w>\": 25259,\n  \"theal\": 45728,\n  \"thealth</w>\": 31398,\n  \"thear\": 43283,\n  \"theart\": 44678,\n  \"theast</w>\": 8378,\n  \"theastern</w>\": 17877,\n  \"theat\": 2263,\n  \"theater\": 39438,\n  \"theater</w>\": 6128,\n  \"theaters</w>\": 14689,\n  \"theatre\": 19857,\n  \"theatre</w>\": 3292,\n  \"theatres</w>\": 21680,\n  \"theatrical</w>\": 26833,\n  \"theband</w>\": 27695,\n  \"thebeatles</w>\": 35645,\n  \"thebest\": 40883,\n  \"thebest</w>\": 25856,\n  \"thebig\": 24732,\n  \"theblack\": 47718,\n  \"thec\": 48659,\n  \"thed</w>\": 31405,\n  \"thedaily\": 33550,\n  \"theday</w>\": 4408,\n  \"thedream</w>\": 39417,\n  \"thee\": 44475,\n  \"thee</w>\": 15108,\n  \"theeconomist</w>\": 44518,\n  \"theellenshow</w>\": 35342,\n  \"thefilm</w>\": 31665,\n  \"theflash</w>\": 25434,\n  \"theforce\": 40002,\n  \"theforceawakens</w>\": 48033,\n  \"theft</w>\": 13286,\n  \"thefuture</w>\": 34287,\n  \"thegame</w>\": 24428,\n  \"thegood\": 28594,\n  \"thegreat\": 28721,\n  \"thei\": 44522,\n  \"their</w>\": 911,\n  \"theirs</w>\": 29297,\n  \"thel\": 5403,\n  \"thelast\": 23495,\n  \"thelastjedi</w>\": 47992,\n  \"theless</w>\": 27712,\n  \"theli\": 15277,\n  \"thelittle\": 46872,\n  \"thelo\": 47036,\n  \"thelove\": 40668,\n  \"thelove</w>\": 43200,\n  \"them\": 5435,\n  \"them</w>\": 1180,\n  \"themasters</w>\": 48378,\n  \"theme\": 38524,\n  \"theme</w>\": 5849,\n  \"themed</w>\": 10126,\n  \"themes</w>\": 17849,\n  \"themet</w>\": 48183,\n  \"themovie</w>\": 27062,\n  \"themselves</w>\": 6503,\n  \"then\": 5929,\n  \"then</w>\": 1594,\n  \"thenburg</w>\": 45209,\n  \"thene\": 17012,\n  \"thenew\": 24212,\n  \"thenext\": 47881,\n  \"thenight</w>\": 43336,\n  \"theno\": 37172,\n  \"thenorth</w>\": 34338,\n  \"theo\": 17043,\n  \"theo</w>\": 18084,\n  \"theod\": 26653,\n  \"theodore</w>\": 30743,\n  \"theological</w>\": 41162,\n  \"theology</w>\": 24095,\n  \"theon</w>\": 34653,\n  \"theone</w>\": 46231,\n  \"theopen</w>\": 41438,\n  \"theore\": 22690,\n  \"theoretical</w>\": 35585,\n  \"theori\": 34804,\n  \"theories</w>\": 23937,\n  \"theory</w>\": 7143,\n  \"thepeople</w>\": 33597,\n  \"thepersonal\": 29981,\n  \"thepersonalnetwork</w>\": 30016,\n  \"thephoto\": 18303,\n  \"thephotohour</w>\": 18607,\n  \"ther\": 1160,\n  \"ther</w>\": 743,\n  \"therap\": 4499,\n  \"therapeu\": 19332,\n  \"therapeutic</w>\": 23240,\n  \"therapeutics</w>\": 49101,\n  \"therapies</w>\": 30179,\n  \"therapist</w>\": 20608,\n  \"therapists</w>\": 34763,\n  \"therapper</w>\": 49340,\n  \"therapy</w>\": 5257,\n  \"there\": 5283,\n  \"there</w>\": 997,\n  \"thereal\": 8074,\n  \"thereal</w>\": 41140,\n  \"thereby</w>\": 43308,\n  \"thered</w>\": 10208,\n  \"therefore</w>\": 16865,\n  \"theres</w>\": 18494,\n  \"theresa</w>\": 14126,\n  \"therese</w>\": 47996,\n  \"theresistance</w>\": 22845,\n  \"theri\": 28967,\n  \"theri</w>\": 45297,\n  \"therine\": 26807,\n  \"therine</w>\": 9239,\n  \"thering</w>\": 7891,\n  \"therland</w>\": 25351,\n  \"thermal</w>\": 13689,\n  \"thermo\": 22303,\n  \"thermom\": 31138,\n  \"thermometer</w>\": 38172,\n  \"thermost\": 42391,\n  \"thern\": 10919,\n  \"thern</w>\": 3137,\n  \"thero\": 13165,\n  \"theroad</w>\": 29807,\n  \"therock</w>\": 30036,\n  \"theroy\": 38146,\n  \"thers</w>\": 1959,\n  \"thes\": 40556,\n  \"thes</w>\": 6460,\n  \"thescript</w>\": 47061,\n  \"these\": 40366,\n  \"these</w>\": 1071,\n  \"theses</w>\": 39388,\n  \"thesimpsons</w>\": 45513,\n  \"thesims</w>\": 34192,\n  \"thesis</w>\": 10673,\n  \"thessal\": 41491,\n  \"thessaloni\": 41753,\n  \"thest</w>\": 35343,\n  \"thesun</w>\": 45617,\n  \"theta</w>\": 27694,\n  \"thetic</w>\": 7954,\n  \"thetimes</w>\": 36039,\n  \"thevamp\": 33701,\n  \"thevoice\": 47206,\n  \"thevoice</w>\": 30258,\n  \"thewalkingdead</w>\": 18087,\n  \"thewanted</w>\": 43008,\n  \"theworld\": 44988,\n  \"theworld</w>\": 17475,\n  \"thex\": 35990,\n  \"they\": 15174,\n  \"they</w>\": 889,\n  \"theyre</w>\": 28266,\n  \"thfc</w>\": 17729,\n  \"thi\": 2362,\n  \"thi</w>\": 9111,\n  \"thia</w>\": 17943,\n  \"thiago</w>\": 44537,\n  \"thian</w>\": 23214,\n  \"thians</w>\": 28187,\n  \"thibau\": 48351,\n  \"thic\": 26107,\n  \"thic</w>\": 11794,\n  \"thick\": 18417,\n  \"thick</w>\": 11006,\n  \"thicker</w>\": 43302,\n  \"thickness</w>\": 40754,\n  \"thief</w>\": 18508,\n  \"thier</w>\": 25595,\n  \"thierry</w>\": 32929,\n  \"thieves</w>\": 17899,\n  \"thigh\": 47124,\n  \"thigh</w>\": 22877,\n  \"thighs</w>\": 30847,\n  \"thik</w>\": 20512,\n  \"thika</w>\": 44619,\n  \"thill</w>\": 31266,\n  \"thim\": 42331,\n  \"thin\": 2178,\n  \"thin</w>\": 7847,\n  \"thine</w>\": 47192,\n  \"thing\": 7499,\n  \"thing</w>\": 946,\n  \"things\": 30670,\n  \"things</w>\": 1739,\n  \"thingsto\": 43924,\n  \"thingy</w>\": 36888,\n  \"think\": 9820,\n  \"think</w>\": 1331,\n  \"thinkbig\": 26015,\n  \"thinkbigsundaywithmarsha</w>\": 26666,\n  \"thinker</w>\": 34577,\n  \"thinkers</w>\": 32779,\n  \"thinkin</w>\": 34443,\n  \"thinking</w>\": 3291,\n  \"thinks</w>\": 6109,\n  \"thinner</w>\": 47247,\n  \"thir\": 6030,\n  \"third\": 32102,\n  \"third</w>\": 3981,\n  \"thirds</w>\": 42582,\n  \"thirst</w>\": 23563,\n  \"thirsty\": 39731,\n  \"thirsty</w>\": 17521,\n  \"thirteen</w>\": 34209,\n  \"thirty</w>\": 20813,\n  \"thiru\": 43292,\n  \"this\": 4340,\n  \"this</w>\": 589,\n  \"thisday</w>\": 6532,\n  \"thisdayin\": 33641,\n  \"thisdayinhistory</w>\": 46913,\n  \"thisi\": 7299,\n  \"thisis\": 14887,\n  \"thismorning</w>\": 36245,\n  \"thistle</w>\": 29039,\n  \"thistory</w>\": 28904,\n  \"thium</w>\": 21804,\n  \"thletics</w>\": 17765,\n  \"thm</w>\": 10407,\n  \"thman</w>\": 30079,\n  \"thms</w>\": 19874,\n  \"thn\": 44155,\n  \"thn</w>\": 45587,\n  \"thnx</w>\": 25480,\n  \"tho\": 1325,\n  \"tho</w>\": 5025,\n  \"thof\": 18943,\n  \"thofjuly</w>\": 21613,\n  \"thol\": 29319,\n  \"thole</w>\": 31029,\n  \"tholes</w>\": 42465,\n  \"thology</w>\": 9881,\n  \"thom\": 2585,\n  \"thom</w>\": 24094,\n  \"thomas\": 12574,\n  \"thomas</w>\": 3888,\n  \"thome</w>\": 21289,\n  \"thomp\": 37274,\n  \"thompson\": 42181,\n  \"thompson</w>\": 8535,\n  \"thomson</w>\": 24151,\n  \"thon\": 38776,\n  \"thon</w>\": 8924,\n  \"thong</w>\": 37058,\n  \"thood</w>\": 15623,\n  \"thor\": 4130,\n  \"thor</w>\": 13691,\n  \"thora</w>\": 46866,\n  \"thorn\": 12957,\n  \"thorn</w>\": 18466,\n  \"thorne</w>\": 18025,\n  \"thorns</w>\": 33650,\n  \"thornton</w>\": 23592,\n  \"thorough\": 15294,\n  \"thorough</w>\": 34788,\n  \"thoroughbred</w>\": 43248,\n  \"thoroughly</w>\": 19750,\n  \"thorpe</w>\": 18099,\n  \"thos</w>\": 41965,\n  \"those</w>\": 1753,\n  \"thot</w>\": 33736,\n  \"thou\": 1513,\n  \"thou</w>\": 17781,\n  \"though</w>\": 2846,\n  \"thought\": 23948,\n  \"thought</w>\": 2449,\n  \"thoughtful</w>\": 19592,\n  \"thoughts</w>\": 3618,\n  \"thour</w>\": 27125,\n  \"thousand</w>\": 9344,\n  \"thousands</w>\": 7089,\n  \"thouse\": 40318,\n  \"thouse</w>\": 7819,\n  \"thoven</w>\": 23078,\n  \"thr\": 1111,\n  \"thr</w>\": 19138,\n  \"thra\": 17761,\n  \"thra</w>\": 32797,\n  \"thrash</w>\": 38262,\n  \"thre\": 1607,\n  \"thread\": 31108,\n  \"thread</w>\": 8815,\n  \"threads</w>\": 24957,\n  \"threat\": 7527,\n  \"threat</w>\": 7212,\n  \"threaten</w>\": 26097,\n  \"threatened</w>\": 16391,\n  \"threatening</w>\": 16400,\n  \"threatens</w>\": 20555,\n  \"threats</w>\": 12766,\n  \"three\": 21615,\n  \"three</w>\": 2097,\n  \"thren</w>\": 41776,\n  \"thresh\": 29779,\n  \"threshold</w>\": 33791,\n  \"threw</w>\": 12746,\n  \"thri\": 8713,\n  \"thrift</w>\": 27779,\n  \"thrill</w>\": 21023,\n  \"thrilled</w>\": 7879,\n  \"thriller</w>\": 9653,\n  \"thrilling</w>\": 20101,\n  \"thrills</w>\": 39829,\n  \"thrive</w>\": 17669,\n  \"thriving</w>\": 22677,\n  \"thro\": 2101,\n  \"thro</w>\": 28624,\n  \"throat</w>\": 16371,\n  \"thrombo\": 47585,\n  \"throne</w>\": 15999,\n  \"thrones</w>\": 8072,\n  \"throp</w>\": 34939,\n  \"throttle</w>\": 37139,\n  \"through\": 6091,\n  \"through</w>\": 1417,\n  \"throughout</w>\": 6721,\n  \"throughs</w>\": 48278,\n  \"throw\": 3315,\n  \"throw</w>\": 6293,\n  \"throwback\": 6001,\n  \"throwback</w>\": 5058,\n  \"throwbackthursday</w>\": 6326,\n  \"thrower</w>\": 40199,\n  \"throwing</w>\": 9734,\n  \"thrown</w>\": 15079,\n  \"throws</w>\": 14723,\n  \"thru\": 23856,\n  \"thru</w>\": 6162,\n  \"thrush</w>\": 46133,\n  \"thrust</w>\": 40202,\n  \"ths</w>\": 2079,\n  \"tht</w>\": 23554,\n  \"thu\": 3837,\n  \"thu</w>\": 14153,\n  \"thub</w>\": 25660,\n  \"thug\": 37212,\n  \"thug</w>\": 18137,\n  \"thugs</w>\": 27686,\n  \"thul\": 28368,\n  \"thulhu</w>\": 37560,\n  \"thum\": 14679,\n  \"thumb\": 19514,\n  \"thumb</w>\": 18674,\n  \"thumbnail</w>\": 32365,\n  \"thumbs</w>\": 17599,\n  \"thun\": 32267,\n  \"thunder\": 6161,\n  \"thunder</w>\": 8951,\n  \"thunderbird</w>\": 45131,\n  \"thunderbirds</w>\": 44286,\n  \"thunderbolt</w>\": 43596,\n  \"thunderstorm</w>\": 12005,\n  \"thunderstorms</w>\": 19525,\n  \"thunt</w>\": 46763,\n  \"thur\": 1837,\n  \"thur</w>\": 21704,\n  \"thurman</w>\": 41291,\n  \"thurs</w>\": 9908,\n  \"thursday\": 11218,\n  \"thursday</w>\": 2221,\n  \"thursdaymotivation</w>\": 39375,\n  \"thursdays</w>\": 21444,\n  \"thursdaythoughts</w>\": 14866,\n  \"thurst</w>\": 33970,\n  \"thus</w>\": 12457,\n  \"thusi\": 9488,\n  \"thwaite</w>\": 48469,\n  \"thweeksary</w>\": 30871,\n  \"thx</w>\": 5913,\n  \"thy\": 7804,\n  \"thy</w>\": 3362,\n  \"thyme</w>\": 29805,\n  \"thyro\": 25174,\n  \"thyroid</w>\": 32558,\n  \"ti\": 555,\n  \"ti</w>\": 2605,\n  \"tia</w>\": 6709,\n  \"tial</w>\": 2826,\n  \"tially</w>\": 14503,\n  \"tian\": 23011,\n  \"tian</w>\": 8125,\n  \"tians</w>\": 35182,\n  \"tiara</w>\": 38322,\n  \"tib\": 47868,\n  \"tibet\": 19927,\n  \"tibet</w>\": 22234,\n  \"tibetan</w>\": 24057,\n  \"tible</w>\": 11453,\n  \"tic\": 890,\n  \"tic</w>\": 1550,\n  \"tica</w>\": 9669,\n  \"tical\": 34191,\n  \"tical</w>\": 4342,\n  \"tically</w>\": 13375,\n  \"ticals</w>\": 30861,\n  \"tice</w>\": 3122,\n  \"tich</w>\": 48769,\n  \"tician</w>\": 43358,\n  \"ticism</w>\": 26491,\n  \"tick\": 24640,\n  \"tick</w>\": 15617,\n  \"ticket\": 25740,\n  \"ticket</w>\": 4500,\n  \"ticketing</w>\": 44432,\n  \"tickets</w>\": 2015,\n  \"ticking</w>\": 35842,\n  \"tickle</w>\": 42999,\n  \"ticks</w>\": 40269,\n  \"tico</w>\": 17670,\n  \"ticon</w>\": 45996,\n  \"tics</w>\": 2419,\n  \"ticul\": 15538,\n  \"ticus</w>\": 44277,\n  \"tid\": 26002,\n  \"tid</w>\": 23727,\n  \"tidal</w>\": 21949,\n  \"tide\": 15698,\n  \"tide</w>\": 9105,\n  \"tides</w>\": 25524,\n  \"tidy</w>\": 23858,\n  \"tie\": 14072,\n  \"tie</w>\": 3422,\n  \"tied</w>\": 9889,\n  \"tiem\": 34762,\n  \"tien</w>\": 47538,\n  \"tiene</w>\": 43438,\n  \"tier\": 14390,\n  \"tier</w>\": 6598,\n  \"tierney</w>\": 45693,\n  \"tiers</w>\": 24604,\n  \"ties\": 25556,\n  \"ties</w>\": 2499,\n  \"tiest</w>\": 18300,\n  \"tiesto</w>\": 46367,\n  \"tif</w>\": 23216,\n  \"tiff\": 11112,\n  \"tiff</w>\": 20699,\n  \"tiffany\": 30467,\n  \"tiffany</w>\": 14446,\n  \"tification</w>\": 43923,\n  \"tified</w>\": 40854,\n  \"tiful</w>\": 29123,\n  \"tify</w>\": 6677,\n  \"tig</w>\": 31999,\n  \"tiger\": 11954,\n  \"tiger</w>\": 6531,\n  \"tigers</w>\": 6934,\n  \"tigh\": 31365,\n  \"tight\": 25763,\n  \"tight</w>\": 9123,\n  \"tighten</w>\": 46653,\n  \"tighter</w>\": 48193,\n  \"tightly</w>\": 37568,\n  \"tights</w>\": 29581,\n  \"tijuana</w>\": 45273,\n  \"tik\": 24986,\n  \"tik</w>\": 32403,\n  \"tiki</w>\": 30107,\n  \"til\": 6124,\n  \"til</w>\": 1763,\n  \"tile\": 26217,\n  \"tile</w>\": 8227,\n  \"tiles</w>\": 10607,\n  \"tility</w>\": 38180,\n  \"till\": 17462,\n  \"till</w>\": 4267,\n  \"tilla</w>\": 26063,\n  \"tillerson</w>\": 47738,\n  \"tilly</w>\": 41199,\n  \"tilt</w>\": 23601,\n  \"tim\": 1292,\n  \"tim</w>\": 3863,\n  \"timate</w>\": 4754,\n  \"timb\": 26627,\n  \"timber\": 14441,\n  \"timber</w>\": 16246,\n  \"timberlake</w>\": 28274,\n  \"timbers</w>\": 39911,\n  \"timberwolves</w>\": 41190,\n  \"time\": 3764,\n  \"time</w>\": 788,\n  \"timed</w>\": 32727,\n  \"timehop</w>\": 19944,\n  \"timel\": 23549,\n  \"timelapse</w>\": 48154,\n  \"timeless</w>\": 15558,\n  \"timeline</w>\": 11492,\n  \"timely</w>\": 19250,\n  \"timeout</w>\": 41536,\n  \"timer</w>\": 19725,\n  \"timers</w>\": 44574,\n  \"times\": 26445,\n  \"times</w>\": 1661,\n  \"timesnow</w>\": 45487,\n  \"timesof\": 32522,\n  \"timesofindia</w>\": 44182,\n  \"timetable</w>\": 31971,\n  \"timeto\": 29187,\n  \"timing</w>\": 13624,\n  \"timm\": 22444,\n  \"timmy</w>\": 33252,\n  \"timo\": 13390,\n  \"timo</w>\": 33777,\n  \"timothy\": 42087,\n  \"timothy</w>\": 18560,\n  \"timp\": 42166,\n  \"tin\": 1310,\n  \"tin</w>\": 5420,\n  \"tina</w>\": 9257,\n  \"tinder</w>\": 24287,\n  \"tine</w>\": 22341,\n  \"ting\": 7451,\n  \"ting</w>\": 694,\n  \"tinged</w>\": 44829,\n  \"tings</w>\": 35332,\n  \"tini</w>\": 26839,\n  \"tink\": 39278,\n  \"tinker\": 45272,\n  \"tinker</w>\": 40910,\n  \"tino</w>\": 20538,\n  \"tins</w>\": 37359,\n  \"tint</w>\": 40497,\n  \"tinted</w>\": 42618,\n  \"tiny\": 21716,\n  \"tiny</w>\": 5591,\n  \"tio</w>\": 27562,\n  \"tion\": 2274,\n  \"tion</w>\": 740,\n  \"tional\": 22460,\n  \"tional</w>\": 2986,\n  \"tionality</w>\": 24514,\n  \"tionally</w>\": 12409,\n  \"tionary</w>\": 8381,\n  \"tione\": 44318,\n  \"tioned</w>\": 9083,\n  \"tioning</w>\": 15528,\n  \"tionist</w>\": 25732,\n  \"tions</w>\": 1371,\n  \"tious</w>\": 14255,\n  \"tip\": 15383,\n  \"tip</w>\": 4623,\n  \"tipoff</w>\": 44521,\n  \"tipp\": 32294,\n  \"tipped</w>\": 31878,\n  \"tipper\": 38095,\n  \"tipperary</w>\": 45612,\n  \"tipping</w>\": 27827,\n  \"tips</w>\": 3173,\n  \"tipton</w>\": 48809,\n  \"tiptuesday</w>\": 42112,\n  \"tique</w>\": 37772,\n  \"tir\": 25467,\n  \"tir</w>\": 38462,\n  \"tire\": 29128,\n  \"tire</w>\": 9362,\n  \"tired</w>\": 6533,\n  \"tireless</w>\": 39835,\n  \"tirelessly</w>\": 41548,\n  \"tires</w>\": 15533,\n  \"tiring</w>\": 42630,\n  \"tiru\": 36033,\n  \"tis\": 7839,\n  \"tis</w>\": 7394,\n  \"tise</w>\": 13745,\n  \"tisgarh</w>\": 40538,\n  \"tish\": 45148,\n  \"tish</w>\": 28784,\n  \"tism</w>\": 27113,\n  \"tiss\": 28155,\n  \"tissue</w>\": 15368,\n  \"tissues</w>\": 32172,\n  \"tist</w>\": 7902,\n  \"tista</w>\": 25580,\n  \"tists</w>\": 25944,\n  \"tit\": 1991,\n  \"tit</w>\": 13202,\n  \"tita</w>\": 40936,\n  \"titan\": 13496,\n  \"titan</w>\": 15516,\n  \"titanic</w>\": 20729,\n  \"titanium</w>\": 24409,\n  \"titans</w>\": 13066,\n  \"titi\": 17434,\n  \"titi</w>\": 48504,\n  \"title\": 28033,\n  \"title</w>\": 3644,\n  \"titled</w>\": 9939,\n  \"titles</w>\": 9780,\n  \"tito</w>\": 26838,\n  \"titus</w>\": 36102,\n  \"tium</w>\": 21975,\n  \"tiv\": 1835,\n  \"tiva</w>\": 41886,\n  \"tive\": 14640,\n  \"tive</w>\": 1420,\n  \"tively</w>\": 9883,\n  \"tiveness</w>\": 20955,\n  \"tives</w>\": 7570,\n  \"tivity</w>\": 9859,\n  \"tivo</w>\": 32162,\n  \"tix</w>\": 5835,\n  \"tiz</w>\": 19376,\n  \"tj\": 18890,\n  \"tj</w>\": 18988,\n  \"tk\": 22344,\n  \"tk</w>\": 20676,\n  \"tko</w>\": 37347,\n  \"tks</w>\": 38739,\n  \"tl\": 14325,\n  \"tl</w>\": 8190,\n  \"tland</w>\": 30697,\n  \"tlap</w>\": 41976,\n  \"tlc</w>\": 22047,\n  \"tle\": 39141,\n  \"tle</w>\": 5825,\n  \"tles</w>\": 39363,\n  \"tless</w>\": 17427,\n  \"tlot</w>\": 41080,\n  \"tls</w>\": 47367,\n  \"tly\": 37483,\n  \"tly</w>\": 1646,\n  \"tm\": 9430,\n  \"tm</w>\": 7789,\n  \"tman</w>\": 20796,\n  \"tmc</w>\": 35263,\n  \"tment</w>\": 26485,\n  \"tml\": 39445,\n  \"tmltalk</w>\": 42260,\n  \"tmnt</w>\": 32444,\n  \"tmobile</w>\": 34901,\n  \"tmr</w>\": 35906,\n  \"tmrw</w>\": 16496,\n  \"tms</w>\": 44496,\n  \"tmund</w>\": 23801,\n  \"tmw</w>\": 45827,\n  \"tmz</w>\": 37248,\n  \"tn\": 3827,\n  \"tn</w>\": 7248,\n  \"tna</w>\": 21150,\n  \"tnam</w>\": 8079,\n  \"tner</w>\": 34922,\n  \"tness</w>\": 35212,\n  \"tney</w>\": 9523,\n  \"tng</w>\": 35898,\n  \"tnt</w>\": 20659,\n  \"tnx</w>\": 38220,\n  \"to\": 580,\n  \"to</w>\": 531,\n  \"toa\": 17916,\n  \"toad</w>\": 26096,\n  \"toast\": 24654,\n  \"toast</w>\": 10920,\n  \"toasted</w>\": 23533,\n  \"toaster</w>\": 39061,\n  \"toasty</w>\": 44726,\n  \"tob</w>\": 24260,\n  \"tobac\": 12611,\n  \"tobacco</w>\": 13905,\n  \"tobago</w>\": 39482,\n  \"tobe\": 17534,\n  \"tobe</w>\": 28740,\n  \"tober\": 18162,\n  \"tober</w>\": 2925,\n  \"toberfest</w>\": 26249,\n  \"tobi\": 40335,\n  \"tobi</w>\": 48374,\n  \"tobias</w>\": 32464,\n  \"tobin</w>\": 42466,\n  \"toby\": 29659,\n  \"toby</w>\": 18333,\n  \"toc\": 41907,\n  \"toc</w>\": 30643,\n  \"tock</w>\": 25274,\n  \"tod\": 38239,\n  \"tod</w>\": 33568,\n  \"toda</w>\": 47141,\n  \"todas</w>\": 36150,\n  \"today\": 11800,\n  \"today</w>\": 721,\n  \"todayin\": 32957,\n  \"todays</w>\": 13513,\n  \"todayshow</w>\": 29739,\n  \"todd\": 10398,\n  \"todd</w>\": 9951,\n  \"toddler</w>\": 17772,\n  \"toddlers</w>\": 36719,\n  \"toddy</w>\": 38926,\n  \"todo\": 48857,\n  \"todo</w>\": 23087,\n  \"todos</w>\": 33355,\n  \"toe\": 47756,\n  \"toe</w>\": 11344,\n  \"toes</w>\": 16511,\n  \"tof\": 6659,\n  \"toff</w>\": 27319,\n  \"toffee</w>\": 34880,\n  \"tofficial</w>\": 47953,\n  \"tofthe\": 23678,\n  \"toftheday</w>\": 20566,\n  \"tofu</w>\": 24692,\n  \"tog</w>\": 45715,\n  \"toge\": 1903,\n  \"together\": 17858,\n  \"together</w>\": 1952,\n  \"togo</w>\": 26729,\n  \"tography</w>\": 33968,\n  \"toh</w>\": 26851,\n  \"toi\": 7472,\n  \"toi</w>\": 26941,\n  \"toid</w>\": 49124,\n  \"toile\": 43148,\n  \"toilet</w>\": 11071,\n  \"toilets</w>\": 24027,\n  \"toire</w>\": 39534,\n  \"tok\": 16690,\n  \"tok</w>\": 27010,\n  \"token\": 32634,\n  \"token</w>\": 17134,\n  \"tokens</w>\": 23562,\n  \"tokyo\": 35038,\n  \"tokyo</w>\": 6667,\n  \"tol\": 4678,\n  \"tol</w>\": 32962,\n  \"told</w>\": 3527,\n  \"tole\": 15677,\n  \"toledo</w>\": 19812,\n  \"toler\": 12150,\n  \"tolerance</w>\": 20377,\n  \"tolerant</w>\": 38536,\n  \"tolerate</w>\": 35556,\n  \"tolkien</w>\": 32989,\n  \"toll\": 44090,\n  \"toll</w>\": 14155,\n  \"tollywood</w>\": 42016,\n  \"tology</w>\": 34799,\n  \"tom\": 999,\n  \"tom</w>\": 2435,\n  \"toma\": 42360,\n  \"toma</w>\": 44710,\n  \"tomas\": 35944,\n  \"tomas</w>\": 27178,\n  \"tomat\": 12041,\n  \"tomato</w>\": 9867,\n  \"tomatoes</w>\": 13004,\n  \"tomb\": 37187,\n  \"tomb</w>\": 15582,\n  \"tombs</w>\": 48613,\n  \"tombstone</w>\": 45729,\n  \"tome\": 24137,\n  \"tome</w>\": 24283,\n  \"tomi</w>\": 46290,\n  \"tomlin</w>\": 46649,\n  \"tomlinson</w>\": 17484,\n  \"tommorow</w>\": 42871,\n  \"tommy\": 16573,\n  \"tommy</w>\": 8876,\n  \"tomo\": 31223,\n  \"tomo</w>\": 34434,\n  \"tomor\": 1277,\n  \"tomorrow\": 19728,\n  \"tomorrow</w>\": 1293,\n  \"tomorrowland</w>\": 34951,\n  \"tomorrows</w>\": 32258,\n  \"tomorrowspaper\": 35005,\n  \"tomorrowspaperstoday</w>\": 35190,\n  \"tomp\": 43544,\n  \"tompkins</w>\": 49068,\n  \"toms</w>\": 10545,\n  \"tomy</w>\": 18730,\n  \"ton\": 838,\n  \"ton</w>\": 917,\n  \"tona</w>\": 13459,\n  \"tone\": 32366,\n  \"tone</w>\": 8408,\n  \"toned</w>\": 29426,\n  \"toner</w>\": 40614,\n  \"tones</w>\": 14744,\n  \"tong</w>\": 21510,\n  \"tonga</w>\": 37882,\n  \"tongue\": 44820,\n  \"tongue</w>\": 13626,\n  \"tongues</w>\": 39837,\n  \"toni\": 17766,\n  \"toni</w>\": 17171,\n  \"tonic</w>\": 17808,\n  \"tonics</w>\": 34647,\n  \"tonight</w>\": 1009,\n  \"tonights</w>\": 23312,\n  \"tonite</w>\": 13449,\n  \"tonka</w>\": 42781,\n  \"tonline</w>\": 45867,\n  \"tonne</w>\": 42450,\n  \"tonnes</w>\": 24813,\n  \"tons</w>\": 7555,\n  \"tony\": 9150,\n  \"tony</w>\": 4767,\n  \"tonyawards</w>\": 46068,\n  \"too\": 1843,\n  \"too</w>\": 1256,\n  \"took</w>\": 2280,\n  \"tool\": 13718,\n  \"tool</w>\": 5999,\n  \"toolbox</w>\": 46599,\n  \"toolkit</w>\": 29849,\n  \"tools</w>\": 5771,\n  \"toom\": 27550,\n  \"toon\": 24664,\n  \"toon</w>\": 19701,\n  \"toonami</w>\": 48336,\n  \"toons</w>\": 35345,\n  \"toor\": 42590,\n  \"tooth\": 15316,\n  \"tooth</w>\": 12030,\n  \"toothbrush</w>\": 36841,\n  \"toothpaste</w>\": 37322,\n  \"tooting</w>\": 42969,\n  \"top\": 5534,\n  \"top</w>\": 1253,\n  \"topaz</w>\": 46125,\n  \"tope\": 32149,\n  \"tope</w>\": 42239,\n  \"topeka</w>\": 46884,\n  \"topia</w>\": 29618,\n  \"topic</w>\": 8720,\n  \"topical</w>\": 37464,\n  \"topics</w>\": 11916,\n  \"topless</w>\": 37415,\n  \"topo\": 23008,\n  \"topoli</w>\": 30152,\n  \"topp\": 19529,\n  \"topped</w>\": 12588,\n  \"topper</w>\": 31780,\n  \"toppers</w>\": 41651,\n  \"topping</w>\": 21071,\n  \"toppings</w>\": 47554,\n  \"topps</w>\": 20201,\n  \"tops</w>\": 8154,\n  \"topshop</w>\": 40953,\n  \"topus</w>\": 21495,\n  \"tor\": 937,\n  \"tor</w>\": 1208,\n  \"tora</w>\": 45147,\n  \"torah</w>\": 37945,\n  \"toral</w>\": 45282,\n  \"torch\": 31921,\n  \"torch</w>\": 15820,\n  \"tore\": 38066,\n  \"tore</w>\": 19385,\n  \"tored</w>\": 38046,\n  \"torg</w>\": 33214,\n  \"tori\": 17689,\n  \"tori</w>\": 17539,\n  \"toria</w>\": 23732,\n  \"torial</w>\": 28029,\n  \"torian</w>\": 48399,\n  \"tories</w>\": 14193,\n  \"torino</w>\": 29178,\n  \"torio</w>\": 34235,\n  \"torn\": 8572,\n  \"torn</w>\": 18023,\n  \"tornad\": 24676,\n  \"tornado</w>\": 9062,\n  \"tornadoes</w>\": 28254,\n  \"toro</w>\": 17892,\n  \"toron\": 37407,\n  \"toronto\": 16866,\n  \"toronto</w>\": 4514,\n  \"torpe\": 34093,\n  \"torpedo</w>\": 46582,\n  \"torquay</w>\": 45738,\n  \"torque</w>\": 31940,\n  \"torre\": 39563,\n  \"torre</w>\": 38009,\n  \"torrent</w>\": 42317,\n  \"torrential</w>\": 41158,\n  \"torres</w>\": 16049,\n  \"tors</w>\": 2546,\n  \"tortilla</w>\": 32683,\n  \"torto\": 24170,\n  \"tortoise</w>\": 30178,\n  \"torture</w>\": 16013,\n  \"tortured</w>\": 29900,\n  \"tory\": 29390,\n  \"tory</w>\": 4214,\n  \"tos</w>\": 6094,\n  \"tosc\": 37719,\n  \"tose</w>\": 38154,\n  \"tosh</w>\": 17109,\n  \"toshi\": 31744,\n  \"toss</w>\": 19656,\n  \"tossed</w>\": 31296,\n  \"tot\": 4618,\n  \"tot</w>\": 23659,\n  \"total\": 13507,\n  \"total</w>\": 4445,\n  \"totally</w>\": 5440,\n  \"totals</w>\": 25772,\n  \"tote\": 48145,\n  \"tote</w>\": 19031,\n  \"totem</w>\": 45376,\n  \"totes</w>\": 37199,\n  \"tothe\": 12222,\n  \"toto</w>\": 39823,\n  \"tots</w>\": 24978,\n  \"totten\": 14360,\n  \"tottenham</w>\": 14889,\n  \"tou\": 1879,\n  \"tou</w>\": 29261,\n  \"touch\": 9480,\n  \"touch</w>\": 4526,\n  \"touchdown</w>\": 18664,\n  \"touchdowns</w>\": 37905,\n  \"touched</w>\": 13190,\n  \"touches</w>\": 14832,\n  \"touching</w>\": 14088,\n  \"touchscreen</w>\": 39095,\n  \"tough\": 12063,\n  \"tough</w>\": 5499,\n  \"tougher</w>\": 33722,\n  \"toughest</w>\": 23773,\n  \"toughness</w>\": 45522,\n  \"toulou\": 27145,\n  \"toulouse</w>\": 30267,\n  \"tour\": 2710,\n  \"tour</w>\": 1760,\n  \"tourde\": 39247,\n  \"toured</w>\": 27654,\n  \"touri\": 4224,\n  \"touring</w>\": 11853,\n  \"tourism\": 23661,\n  \"tourism</w>\": 6556,\n  \"tourist</w>\": 12123,\n  \"tourists</w>\": 15546,\n  \"tournament</w>\": 4097,\n  \"tournaments</w>\": 23058,\n  \"tourney</w>\": 12603,\n  \"tours</w>\": 8948,\n  \"tous</w>\": 37424,\n  \"tout</w>\": 22300,\n  \"touts</w>\": 41274,\n  \"tov</w>\": 28970,\n  \"tow\": 11557,\n  \"tow</w>\": 18653,\n  \"toward</w>\": 8508,\n  \"towards</w>\": 4447,\n  \"towed</w>\": 45419,\n  \"towel</w>\": 15953,\n  \"towels</w>\": 26578,\n  \"tower\": 26669,\n  \"tower</w>\": 4730,\n  \"towering</w>\": 39444,\n  \"towers</w>\": 12701,\n  \"towie</w>\": 44613,\n  \"towin</w>\": 45819,\n  \"towing</w>\": 36963,\n  \"town\": 4068,\n  \"town</w>\": 1605,\n  \"townfc</w>\": 33981,\n  \"townhall</w>\": 33408,\n  \"townhouse</w>\": 40178,\n  \"towns</w>\": 14173,\n  \"townsend</w>\": 26826,\n  \"township</w>\": 14622,\n  \"townsville</w>\": 47330,\n  \"towork</w>\": 48233,\n  \"tox\": 7742,\n  \"tox</w>\": 16145,\n  \"toxic\": 27436,\n  \"toxic</w>\": 12348,\n  \"toxicity</w>\": 41234,\n  \"toxin</w>\": 48899,\n  \"toxins</w>\": 36618,\n  \"toy\": 14387,\n  \"toy</w>\": 5988,\n  \"toya</w>\": 37602,\n  \"toyo\": 7644,\n  \"toyota</w>\": 8908,\n  \"toys\": 39508,\n  \"toys</w>\": 7162,\n  \"tp\": 23760,\n  \"tp</w>\": 15188,\n  \"tpp</w>\": 29411,\n  \"tps</w>\": 35246,\n  \"tq</w>\": 43066,\n  \"tr\": 635,\n  \"tr</w>\": 6337,\n  \"tra\": 752,\n  \"tra</w>\": 2483,\n  \"trac\": 2266,\n  \"trace\": 48611,\n  \"trace</w>\": 14767,\n  \"traced</w>\": 47956,\n  \"traces</w>\": 30913,\n  \"tracey</w>\": 25558,\n  \"tracing</w>\": 27897,\n  \"track\": 10887,\n  \"track</w>\": 2700,\n  \"tracked</w>\": 27049,\n  \"tracker</w>\": 18123,\n  \"tracking</w>\": 10428,\n  \"tracklist</w>\": 39777,\n  \"tracks</w>\": 7579,\n  \"tract</w>\": 4690,\n  \"traction</w>\": 10644,\n  \"tractor</w>\": 14607,\n  \"tractors</w>\": 37854,\n  \"tracy\": 32984,\n  \"tracy</w>\": 15508,\n  \"trad\": 48716,\n  \"trad</w>\": 38037,\n  \"trade\": 10457,\n  \"trade</w>\": 3629,\n  \"traded</w>\": 18860,\n  \"trademark</w>\": 25011,\n  \"trader</w>\": 17700,\n  \"traders</w>\": 19112,\n  \"trades</w>\": 18519,\n  \"trading\": 40083,\n  \"trading</w>\": 6520,\n  \"tradio</w>\": 20689,\n  \"tradition\": 20838,\n  \"tradition</w>\": 8784,\n  \"traditional\": 41113,\n  \"traditional</w>\": 5604,\n  \"traditionally</w>\": 35532,\n  \"traditions</w>\": 18016,\n  \"traf\": 3227,\n  \"trafal\": 32461,\n  \"trafalgar</w>\": 36969,\n  \"traff\": 31571,\n  \"traffic\": 12080,\n  \"traffic</w>\": 3399,\n  \"trafficking</w>\": 15983,\n  \"trafford</w>\": 22912,\n  \"trage\": 12430,\n  \"tragedy</w>\": 14082,\n  \"tragic</w>\": 14828,\n  \"tragically</w>\": 39599,\n  \"trail\": 11523,\n  \"trail</w>\": 4921,\n  \"trailblazer</w>\": 41015,\n  \"trailblazers</w>\": 35954,\n  \"trailer</w>\": 4700,\n  \"trailers</w>\": 24862,\n  \"trailing</w>\": 37427,\n  \"trails</w>\": 10633,\n  \"train\": 9122,\n  \"train</w>\": 3231,\n  \"trained</w>\": 10874,\n  \"trainee</w>\": 25795,\n  \"trainees</w>\": 30382,\n  \"trainer</w>\": 9767,\n  \"trainers</w>\": 18871,\n  \"training\": 34508,\n  \"training</w>\": 2199,\n  \"trains</w>\": 9541,\n  \"trait</w>\": 35160,\n  \"traitor</w>\": 31760,\n  \"traitors</w>\": 42633,\n  \"traits</w>\": 25748,\n  \"trajec\": 42042,\n  \"trak</w>\": 24065,\n  \"tral</w>\": 14609,\n  \"tram\": 9800,\n  \"tram</w>\": 17500,\n  \"tramp</w>\": 46289,\n  \"trampol\": 32905,\n  \"trampoline</w>\": 42800,\n  \"tramrahim</w>\": 35220,\n  \"tran\": 1357,\n  \"tran</w>\": 22031,\n  \"trance\": 30584,\n  \"trance</w>\": 18671,\n  \"trancefamily</w>\": 39630,\n  \"trane</w>\": 35779,\n  \"tranqu\": 18912,\n  \"tranquil</w>\": 35764,\n  \"tranquility</w>\": 36688,\n  \"trans\": 1826,\n  \"trans</w>\": 8126,\n  \"transaction</w>\": 24881,\n  \"transactions</w>\": 21653,\n  \"transat\": 37872,\n  \"transatlantic</w>\": 40703,\n  \"transc\": 21073,\n  \"transcend\": 47087,\n  \"transcript</w>\": 39008,\n  \"transcription</w>\": 48765,\n  \"transfer\": 22659,\n  \"transfer</w>\": 7134,\n  \"transferred</w>\": 29700,\n  \"transferring</w>\": 40924,\n  \"transfers</w>\": 21621,\n  \"transform\": 8142,\n  \"transform</w>\": 12288,\n  \"transformation\": 34204,\n  \"transformation</w>\": 7832,\n  \"transformational</w>\": 47135,\n  \"transformationtuesday</w>\": 36511,\n  \"transformative</w>\": 38106,\n  \"transformed</w>\": 17453,\n  \"transformer</w>\": 38235,\n  \"transformers</w>\": 17843,\n  \"transforming\": 44470,\n  \"transforming</w>\": 19251,\n  \"transforms</w>\": 30312,\n  \"transgender</w>\": 17732,\n  \"transi\": 32236,\n  \"transit</w>\": 10174,\n  \"transiti\": 22939,\n  \"transition</w>\": 11391,\n  \"transitional</w>\": 41519,\n  \"transitioning</w>\": 43586,\n  \"transitions</w>\": 39374,\n  \"transl\": 12243,\n  \"translate</w>\": 22655,\n  \"translated</w>\": 20752,\n  \"translates</w>\": 36334,\n  \"translating</w>\": 42156,\n  \"translation</w>\": 12153,\n  \"translations</w>\": 41367,\n  \"translator</w>\": 36230,\n  \"translucent</w>\": 49052,\n  \"transm\": 18861,\n  \"transmission</w>\": 16103,\n  \"transmitted</w>\": 48605,\n  \"transmitter</w>\": 40457,\n  \"transp\": 11726,\n  \"transpa\": 18524,\n  \"transparen\": 16108,\n  \"transparency</w>\": 16828,\n  \"transparent</w>\": 19017,\n  \"transpl\": 16038,\n  \"transplant\": 41871,\n  \"transplant</w>\": 18771,\n  \"transplantation</w>\": 45207,\n  \"transpor\": 19406,\n  \"transport\": 10231,\n  \"transport</w>\": 7362,\n  \"transportation</w>\": 10911,\n  \"transported</w>\": 29089,\n  \"transporter</w>\": 43568,\n  \"transporting</w>\": 42259,\n  \"trap\": 36224,\n  \"trap</w>\": 9677,\n  \"trape\": 42435,\n  \"trapped</w>\": 15592,\n  \"traps</w>\": 28517,\n  \"tras</w>\": 30638,\n  \"trash\": 39215,\n  \"trash</w>\": 9798,\n  \"traum\": 22263,\n  \"trauma</w>\": 13846,\n  \"traumati\": 46613,\n  \"traumatic</w>\": 29958,\n  \"trav\": 7586,\n  \"trav</w>\": 46955,\n  \"trave\": 35357,\n  \"travel\": 2824,\n  \"travel</w>\": 1949,\n  \"travelblog</w>\": 35957,\n  \"travelblogger</w>\": 25494,\n  \"travelchat</w>\": 46455,\n  \"traveled</w>\": 20384,\n  \"traveler</w>\": 17794,\n  \"travelers</w>\": 20644,\n  \"travelgram</w>\": 40069,\n  \"traveling</w>\": 9365,\n  \"travelled</w>\": 23428,\n  \"traveller</w>\": 22546,\n  \"travellers</w>\": 29583,\n  \"travelling</w>\": 11190,\n  \"travelphotography</w>\": 22808,\n  \"travelpics</w>\": 32293,\n  \"travels</w>\": 11472,\n  \"traveltips</w>\": 36260,\n  \"traveltuesday</w>\": 16713,\n  \"traverse</w>\": 35058,\n  \"travi\": 46971,\n  \"travis\": 27441,\n  \"travis</w>\": 12287,\n  \"traw\": 42288,\n  \"trax</w>\": 34421,\n  \"tray\": 38470,\n  \"tray</w>\": 14621,\n  \"trays</w>\": 39798,\n  \"trc</w>\": 41803,\n  \"tre\": 975,\n  \"tre</w>\": 6033,\n  \"treach\": 46005,\n  \"tread\": 26182,\n  \"tread</w>\": 35658,\n  \"treadmill</w>\": 37780,\n  \"treas\": 8591,\n  \"treason</w>\": 28103,\n  \"treasure</w>\": 9922,\n  \"treasured</w>\": 48068,\n  \"treasurer</w>\": 26985,\n  \"treasures</w>\": 16500,\n  \"treasury</w>\": 20956,\n  \"treat\": 3968,\n  \"treat</w>\": 3901,\n  \"treated</w>\": 9772,\n  \"treating</w>\": 13842,\n  \"treatment</w>\": 4869,\n  \"treatments</w>\": 15839,\n  \"treats</w>\": 8878,\n  \"treaty</w>\": 19967,\n  \"treble</w>\": 33194,\n  \"trecht</w>\": 33812,\n  \"tree\": 13354,\n  \"tree</w>\": 2677,\n  \"treehouse</w>\": 42387,\n  \"trees</w>\": 4682,\n  \"trek\": 13236,\n  \"trek</w>\": 8136,\n  \"trekking</w>\": 25293,\n  \"trell</w>\": 35159,\n  \"tremb\": 44043,\n  \"tremend\": 14659,\n  \"tremendous</w>\": 15988,\n  \"tren\": 2579,\n  \"trench</w>\": 23846,\n  \"trenches</w>\": 38723,\n  \"trend\": 19986,\n  \"trend</w>\": 6643,\n  \"trending</w>\": 6087,\n  \"trends</w>\": 7015,\n  \"trendsetter</w>\": 46666,\n  \"trendy</w>\": 23072,\n  \"trent\": 45885,\n  \"trent</w>\": 15548,\n  \"trenton</w>\": 37470,\n  \"tres</w>\": 23569,\n  \"tress</w>\": 4733,\n  \"tresses</w>\": 24273,\n  \"trevor\": 23437,\n  \"trevor</w>\": 13219,\n  \"trex</w>\": 42114,\n  \"trey\": 36670,\n  \"trey</w>\": 16939,\n  \"tri\": 924,\n  \"tri</w>\": 9618,\n  \"triad</w>\": 45602,\n  \"trial</w>\": 5991,\n  \"trials</w>\": 10992,\n  \"triangle</w>\": 14615,\n  \"triathlon</w>\": 18080,\n  \"trib</w>\": 45151,\n  \"tribal</w>\": 16629,\n  \"tribe\": 19943,\n  \"tribe</w>\": 11365,\n  \"tribeca</w>\": 35184,\n  \"tribes</w>\": 26546,\n  \"tribu\": 3028,\n  \"tribun\": 14311,\n  \"tribunal</w>\": 32911,\n  \"tribune</w>\": 18556,\n  \"tribute</w>\": 5493,\n  \"tributes</w>\": 15537,\n  \"tric\": 9511,\n  \"tric</w>\": 4081,\n  \"trich</w>\": 39519,\n  \"trick\": 17177,\n  \"trick</w>\": 8172,\n  \"tricks</w>\": 13177,\n  \"tricky</w>\": 22319,\n  \"trics</w>\": 31437,\n  \"trident</w>\": 35491,\n  \"tridge</w>\": 18722,\n  \"tried</w>\": 4554,\n  \"tries</w>\": 4315,\n  \"trife\": 48962,\n  \"trigge\": 30509,\n  \"trigger</w>\": 16158,\n  \"triggered</w>\": 30924,\n  \"triggers</w>\": 37319,\n  \"tright</w>\": 29915,\n  \"tril\": 40626,\n  \"trill</w>\": 39297,\n  \"trilli\": 39350,\n  \"trillion</w>\": 20160,\n  \"trilo\": 15183,\n  \"trilogy</w>\": 16862,\n  \"trim</w>\": 14182,\n  \"trimmed</w>\": 40657,\n  \"trin\": 6628,\n  \"trinidad</w>\": 26244,\n  \"trinity\": 30744,\n  \"trinity</w>\": 12267,\n  \"trio</w>\": 10263,\n  \"trip\": 23421,\n  \"trip</w>\": 2529,\n  \"tripad\": 37189,\n  \"tripadvisor</w>\": 38708,\n  \"triple\": 16519,\n  \"triple</w>\": 7673,\n  \"triplets</w>\": 48601,\n  \"tripod</w>\": 36141,\n  \"tripoli</w>\": 40095,\n  \"trippin</w>\": 43073,\n  \"tripping</w>\": 35229,\n  \"trippy</w>\": 35137,\n  \"trips</w>\": 12292,\n  \"tris</w>\": 29690,\n  \"trish\": 40511,\n  \"trish</w>\": 37179,\n  \"trisha</w>\": 39152,\n  \"tristan</w>\": 25497,\n  \"trit\": 37087,\n  \"triton</w>\": 45437,\n  \"triu\": 14782,\n  \"trium\": 21065,\n  \"triumph\": 26507,\n  \"triumph</w>\": 15307,\n  \"triumphant</w>\": 41918,\n  \"trivi\": 21228,\n  \"trivia</w>\": 10642,\n  \"triviatuesday</w>\": 45499,\n  \"trix</w>\": 41017,\n  \"tro\": 1046,\n  \"tro</w>\": 3332,\n  \"trock</w>\": 44368,\n  \"trojan</w>\": 30653,\n  \"trojans</w>\": 25310,\n  \"trol\": 10306,\n  \"troll\": 39737,\n  \"troll</w>\": 17103,\n  \"trolley</w>\": 25124,\n  \"trolling</w>\": 28552,\n  \"trolls</w>\": 20890,\n  \"tromb\": 32390,\n  \"trombone</w>\": 44423,\n  \"tron\": 19057,\n  \"tron</w>\": 10684,\n  \"tronic</w>\": 34258,\n  \"tronics</w>\": 34397,\n  \"troom</w>\": 23691,\n  \"troop\": 12492,\n  \"troop</w>\": 24054,\n  \"trooper</w>\": 18327,\n  \"troopers</w>\": 23576,\n  \"troops</w>\": 10109,\n  \"trop</w>\": 31585,\n  \"trope</w>\": 41150,\n  \"trophies</w>\": 20998,\n  \"trophy\": 42676,\n  \"trophy</w>\": 6502,\n  \"tropic\": 21794,\n  \"tropic</w>\": 36736,\n  \"tropical\": 41699,\n  \"tropical</w>\": 8686,\n  \"tropics</w>\": 36940,\n  \"tros</w>\": 40456,\n  \"trose</w>\": 36022,\n  \"trot</w>\": 30453,\n  \"trotter</w>\": 38287,\n  \"trou\": 5181,\n  \"troubad\": 49037,\n  \"trouble\": 25669,\n  \"trouble</w>\": 7848,\n  \"troubled</w>\": 25568,\n  \"troubles</w>\": 27254,\n  \"trough</w>\": 39761,\n  \"troupe</w>\": 34803,\n  \"trous\": 19727,\n  \"trousers</w>\": 23172,\n  \"trout</w>\": 14853,\n  \"trove</w>\": 45350,\n  \"trow</w>\": 46914,\n  \"troy\": 26283,\n  \"troy</w>\": 12819,\n  \"trs</w>\": 24770,\n  \"tru\": 931,\n  \"tru</w>\": 25326,\n  \"truck\": 14781,\n  \"truck</w>\": 4629,\n  \"trucker</w>\": 45918,\n  \"truckers</w>\": 43404,\n  \"trucking</w>\": 26208,\n  \"trucks</w>\": 9569,\n  \"trude</w>\": 39017,\n  \"trudeau</w>\": 15752,\n  \"true\": 13096,\n  \"true</w>\": 2328,\n  \"truec\": 37583,\n  \"truelove</w>\": 45711,\n  \"truffle</w>\": 23064,\n  \"truffles</w>\": 37057,\n  \"truly</w>\": 4545,\n  \"trum\": 11766,\n  \"trum</w>\": 11399,\n  \"truman</w>\": 29414,\n  \"trump\": 9124,\n  \"trump</w>\": 1797,\n  \"trumpet</w>\": 23681,\n  \"trumpp\": 45550,\n  \"trumprussia</w>\": 39135,\n  \"trumps</w>\": 29793,\n  \"trumptrain</w>\": 43595,\n  \"trun\": 16163,\n  \"trun</w>\": 46661,\n  \"trunk</w>\": 18347,\n  \"trunks</w>\": 38531,\n  \"truro</w>\": 43507,\n  \"truss</w>\": 46080,\n  \"trust\": 17691,\n  \"trust</w>\": 3876,\n  \"truste\": 17356,\n  \"trusted</w>\": 16538,\n  \"trustee</w>\": 30803,\n  \"trustees</w>\": 28853,\n  \"trusting</w>\": 33221,\n  \"trusts</w>\": 27507,\n  \"trustworthy</w>\": 46840,\n  \"trusty</w>\": 37955,\n  \"truth\": 21335,\n  \"truth</w>\": 4319,\n  \"truths</w>\": 27179,\n  \"trx</w>\": 31620,\n  \"try\": 4487,\n  \"try</w>\": 1209,\n  \"tryin</w>\": 31085,\n  \"trying</w>\": 2551,\n  \"tryna</w>\": 15702,\n  \"tryout</w>\": 43832,\n  \"tryouts</w>\": 28053,\n  \"ts\": 2290,\n  \"ts</w>\": 590,\n  \"tsa</w>\": 25977,\n  \"tsal</w>\": 20438,\n  \"tsb</w>\": 45015,\n  \"tsc</w>\": 37437,\n  \"tsch</w>\": 38778,\n  \"tsd</w>\": 20611,\n  \"tse\": 49144,\n  \"tsfor\": 42654,\n  \"tsford</w>\": 32823,\n  \"tsh\": 42872,\n  \"tshirt</w>\": 14907,\n  \"tshirts</w>\": 29377,\n  \"tsi\": 40048,\n  \"tsi</w>\": 37867,\n  \"tsk</w>\": 43600,\n  \"tsla</w>\": 35681,\n  \"tsm</w>\": 43452,\n  \"tsman</w>\": 20046,\n  \"tsn\": 44921,\n  \"tsn</w>\": 26896,\n  \"tson\": 42353,\n  \"tson</w>\": 47140,\n  \"tsp</w>\": 34230,\n  \"tsu\": 13950,\n  \"tsu</w>\": 20175,\n  \"tsun\": 19155,\n  \"tsunami</w>\": 24286,\n  \"tsville</w>\": 29080,\n  \"tt\": 971,\n  \"tt</w>\": 1402,\n  \"tta</w>\": 2646,\n  \"ttc</w>\": 27668,\n  \"tte\": 23105,\n  \"tte</w>\": 3070,\n  \"tted</w>\": 15163,\n  \"tten\": 11351,\n  \"tten</w>\": 17479,\n  \"tter\": 18691,\n  \"tter</w>\": 5165,\n  \"tters</w>\": 6318,\n  \"ttes</w>\": 9293,\n  \"tti</w>\": 5237,\n  \"ttin</w>\": 36589,\n  \"tting</w>\": 1188,\n  \"ttino</w>\": 47389,\n  \"ttip</w>\": 46993,\n  \"ttle</w>\": 9253,\n  \"ttm</w>\": 46838,\n  \"tto\": 8759,\n  \"tto</w>\": 8105,\n  \"tton</w>\": 10562,\n  \"ttot</w>\": 12480,\n  \"ttp</w>\": 30828,\n  \"ttr\": 47589,\n  \"tts</w>\": 11570,\n  \"ttt</w>\": 17256,\n  \"tttt</w>\": 33119,\n  \"ttu</w>\": 44006,\n  \"ttv</w>\": 24281,\n  \"tty\": 11457,\n  \"tty</w>\": 1856,\n  \"tu\": 764,\n  \"tu</w>\": 5760,\n  \"tua</w>\": 41344,\n  \"tual</w>\": 4799,\n  \"tuan</w>\": 37297,\n  \"tub\": 34907,\n  \"tub</w>\": 15450,\n  \"tube\": 38229,\n  \"tube</w>\": 3308,\n  \"tuber\": 30371,\n  \"tuberculo\": 42606,\n  \"tuberculosis</w>\": 43129,\n  \"tubes</w>\": 22870,\n  \"tubing</w>\": 40794,\n  \"tubs</w>\": 41705,\n  \"tubular</w>\": 48786,\n  \"tuc\": 14456,\n  \"tuc</w>\": 43871,\n  \"tuck</w>\": 22398,\n  \"tucked</w>\": 26923,\n  \"tucker\": 39703,\n  \"tucker</w>\": 15726,\n  \"tucket</w>\": 32677,\n  \"tucson</w>\": 17250,\n  \"tudor</w>\": 24547,\n  \"tue</w>\": 17515,\n  \"tues\": 2283,\n  \"tues</w>\": 12113,\n  \"tuesday\": 10209,\n  \"tuesday</w>\": 2519,\n  \"tuesdaymotivation</w>\": 25432,\n  \"tuesdays</w>\": 23195,\n  \"tuesdaythoughts</w>\": 17988,\n  \"tuf\": 44510,\n  \"tuff</w>\": 38868,\n  \"tug\": 47032,\n  \"tug</w>\": 27902,\n  \"tuition</w>\": 21129,\n  \"tuk\": 39271,\n  \"tuk</w>\": 14993,\n  \"tul\": 9069,\n  \"tul</w>\": 40837,\n  \"tula</w>\": 36332,\n  \"tulane</w>\": 44893,\n  \"tulip</w>\": 28389,\n  \"tulips</w>\": 30886,\n  \"tulsa</w>\": 18850,\n  \"tum\": 12932,\n  \"tum</w>\": 8843,\n  \"tumb\": 8831,\n  \"tumble</w>\": 38284,\n  \"tumbler</w>\": 48790,\n  \"tumbling</w>\": 46226,\n  \"tumblr</w>\": 11841,\n  \"tummy</w>\": 26053,\n  \"tumor</w>\": 22616,\n  \"tumors</w>\": 39894,\n  \"tumour</w>\": 45129,\n  \"tun\": 1415,\n  \"tun</w>\": 21349,\n  \"tuna</w>\": 15037,\n  \"tundra</w>\": 39899,\n  \"tune\": 11427,\n  \"tune</w>\": 3300,\n  \"tuned</w>\": 5898,\n  \"tunein</w>\": 16809,\n  \"tuner</w>\": 42905,\n  \"tunes\": 31688,\n  \"tunes</w>\": 10810,\n  \"tunesapp</w>\": 32550,\n  \"tung\": 47940,\n  \"tung</w>\": 31092,\n  \"tuni\": 16270,\n  \"tunic</w>\": 43495,\n  \"tuning</w>\": 19585,\n  \"tunisia</w>\": 23346,\n  \"tunnel</w>\": 11096,\n  \"tunnels</w>\": 29814,\n  \"tuous</w>\": 28738,\n  \"tup\": 37956,\n  \"tup</w>\": 4507,\n  \"tupac</w>\": 31506,\n  \"tups</w>\": 44855,\n  \"tur\": 985,\n  \"tur</w>\": 17182,\n  \"tura</w>\": 16127,\n  \"tural\": 45143,\n  \"tural</w>\": 4261,\n  \"turb\": 18973,\n  \"turban</w>\": 48515,\n  \"turbine</w>\": 26880,\n  \"turbines</w>\": 38863,\n  \"turbo\": 23578,\n  \"turbo</w>\": 13668,\n  \"turbul\": 31100,\n  \"turbulent</w>\": 47871,\n  \"ture\": 4321,\n  \"ture</w>\": 941,\n  \"tured</w>\": 3987,\n  \"turer</w>\": 11993,\n  \"turers</w>\": 16956,\n  \"tures</w>\": 2400,\n  \"turf\": 36762,\n  \"turf</w>\": 12510,\n  \"turi\": 11896,\n  \"turin</w>\": 36251,\n  \"turing</w>\": 5812,\n  \"turismo</w>\": 30202,\n  \"turk\": 8254,\n  \"turk</w>\": 32507,\n  \"turkey\": 35977,\n  \"turkey</w>\": 4790,\n  \"turkeys</w>\": 37991,\n  \"turkish\": 48199,\n  \"turkish</w>\": 9278,\n  \"turks</w>\": 34344,\n  \"turmeric</w>\": 34044,\n  \"turmoil</w>\": 37751,\n  \"turn\": 5522,\n  \"turn</w>\": 2105,\n  \"turnaround</w>\": 32719,\n  \"turnbull</w>\": 27863,\n  \"turned</w>\": 3771,\n  \"turner\": 42867,\n  \"turner</w>\": 8777,\n  \"turning</w>\": 4976,\n  \"turno\": 21377,\n  \"turnout</w>\": 11654,\n  \"turnover</w>\": 30794,\n  \"turnpike</w>\": 38301,\n  \"turns</w>\": 3185,\n  \"turnt</w>\": 28887,\n  \"turntable</w>\": 37953,\n  \"turnup</w>\": 30591,\n  \"turo</w>\": 29224,\n  \"turquo\": 19390,\n  \"turquoise</w>\": 19899,\n  \"turt\": 13716,\n  \"turtle\": 35943,\n  \"turtle</w>\": 10912,\n  \"turtles</w>\": 17862,\n  \"tus\": 24828,\n  \"tus</w>\": 7079,\n  \"tusc\": 17909,\n  \"tuscal\": 42638,\n  \"tuscaloosa</w>\": 44375,\n  \"tuscan</w>\": 42865,\n  \"tuscany</w>\": 20885,\n  \"tuss\": 31741,\n  \"tut</w>\": 35121,\n  \"tutor\": 10054,\n  \"tutor</w>\": 27858,\n  \"tutorial</w>\": 12857,\n  \"tutorials</w>\": 30973,\n  \"tutoring</w>\": 37532,\n  \"tutti</w>\": 46880,\n  \"tutu</w>\": 35845,\n  \"tux\": 28720,\n  \"tux</w>\": 49186,\n  \"tuxedo</w>\": 40173,\n  \"tv\": 3197,\n  \"tv</w>\": 1583,\n  \"tvc</w>\": 49190,\n  \"tvd</w>\": 25889,\n  \"tvmiaw</w>\": 38554,\n  \"tvn</w>\": 44232,\n  \"tvs</w>\": 27114,\n  \"tvtime</w>\": 19947,\n  \"tvxq</w>\": 43968,\n  \"tw\": 966,\n  \"tw</w>\": 12842,\n  \"twa</w>\": 46954,\n  \"twain</w>\": 30689,\n  \"twal\": 48126,\n  \"tware</w>\": 5707,\n  \"twc</w>\": 41217,\n  \"twd\": 29440,\n  \"twd</w>\": 19343,\n  \"twdfamily</w>\": 38218,\n  \"twe\": 18365,\n  \"tweak</w>\": 48870,\n  \"tweaks</w>\": 42661,\n  \"twee\": 1330,\n  \"tweed</w>\": 26904,\n  \"tweeps</w>\": 14928,\n  \"tweet\": 11826,\n  \"tweet</w>\": 1842,\n  \"tweeta\": 32024,\n  \"tweetapicture\": 40596,\n  \"tweeted</w>\": 7841,\n  \"tweeter</w>\": 32876,\n  \"tweeters</w>\": 31713,\n  \"tweeting</w>\": 8901,\n  \"tweets</w>\": 3560,\n  \"tweetyour\": 45033,\n  \"twel\": 14476,\n  \"twelf\": 39443,\n  \"twelfth</w>\": 44072,\n  \"twell\": 38722,\n  \"twell</w>\": 30162,\n  \"twelve</w>\": 19694,\n  \"twent\": 27027,\n  \"twenti\": 35167,\n  \"twenty</w>\": 13016,\n  \"twentyon\": 39609,\n  \"twentyonepilots</w>\": 40007,\n  \"twer\": 13923,\n  \"twerk</w>\": 28506,\n  \"twi\": 5537,\n  \"twice</w>\": 6970,\n  \"twick\": 34326,\n  \"twickenham</w>\": 39619,\n  \"twil\": 12804,\n  \"twili\": 35754,\n  \"twilight\": 46366,\n  \"twilight</w>\": 14512,\n  \"twill</w>\": 43703,\n  \"twin\": 9342,\n  \"twin</w>\": 6769,\n  \"twine</w>\": 42775,\n  \"twinkle</w>\": 36545,\n  \"twinning</w>\": 30156,\n  \"twinpeaks</w>\": 32042,\n  \"twins</w>\": 8040,\n  \"twist</w>\": 10589,\n  \"twisted</w>\": 18233,\n  \"twister</w>\": 45933,\n  \"twists</w>\": 34149,\n  \"twit\": 1643,\n  \"twit</w>\": 18704,\n  \"twitart</w>\": 27709,\n  \"twitch\": 13251,\n  \"twitch</w>\": 9153,\n  \"twitter\": 7546,\n  \"twitter</w>\": 1989,\n  \"twitterkurds</w>\": 32722,\n  \"twitterstorians</w>\": 35389,\n  \"two\": 17211,\n  \"two</w>\": 1237,\n  \"twol\": 31964,\n  \"twood\": 40404,\n  \"twood</w>\": 13245,\n  \"twp</w>\": 33283,\n  \"twright</w>\": 46778,\n  \"twt</w>\": 6825,\n  \"twx</w>\": 26830,\n  \"twy\": 45861,\n  \"tx\": 6636,\n  \"tx</w>\": 5200,\n  \"txhsfb</w>\": 34757,\n  \"txlege</w>\": 26995,\n  \"txst</w>\": 40761,\n  \"txt</w>\": 24595,\n  \"txwx</w>\": 22995,\n  \"ty\": 1260,\n  \"ty</w>\": 744,\n  \"tya</w>\": 41273,\n  \"tycoon</w>\": 36803,\n  \"tye</w>\": 43097,\n  \"tyfree</w>\": 41215,\n  \"tyga</w>\": 41952,\n  \"tying</w>\": 22559,\n  \"tyl</w>\": 47537,\n  \"tyler\": 14787,\n  \"tyler</w>\": 7058,\n  \"tym</w>\": 45772,\n  \"tyne\": 27000,\n  \"tyne</w>\": 29729,\n  \"tyour\": 16823,\n  \"type\": 15673,\n  \"type</w>\": 3877,\n  \"typed</w>\": 40753,\n  \"typeface</w>\": 44969,\n  \"types</w>\": 7543,\n  \"typewriter</w>\": 42180,\n  \"typho\": 17486,\n  \"typhoon</w>\": 21110,\n  \"typic\": 21648,\n  \"typical</w>\": 9854,\n  \"typically</w>\": 23175,\n  \"typing</w>\": 20102,\n  \"typo\": 18831,\n  \"typo</w>\": 29076,\n  \"typography</w>\": 24332,\n  \"tyr\": 15590,\n  \"tyran\": 46921,\n  \"tyranny</w>\": 35402,\n  \"tyre\": 38330,\n  \"tyre</w>\": 16864,\n  \"tyres</w>\": 21376,\n  \"tyrone</w>\": 30226,\n  \"tyson</w>\": 16616,\n  \"tz\": 7710,\n  \"tz</w>\": 4983,\n  \"tzer</w>\": 45267,\n  \"tzky</w>\": 47127,\n  \"tzman</w>\": 46032,\n  \"tzu</w>\": 34354,\n  \"tÃ©\": 27208,\n  \"tÃ©</w>\": 39694,\n  \"u\": 84,\n  \"u</w>\": 340,\n  \"ua\": 34075,\n  \"ua</w>\": 8441,\n  \"uaap\": 46753,\n  \"uaap</w>\": 43774,\n  \"uab</w>\": 35587,\n  \"uae</w>\": 9752,\n  \"ual</w>\": 1921,\n  \"ually</w>\": 10767,\n  \"uan</w>\": 33062,\n  \"uas</w>\": 38339,\n  \"uav</w>\": 30303,\n  \"ub\": 18430,\n  \"ub</w>\": 13494,\n  \"uba</w>\": 29768,\n  \"ubc\": 42479,\n  \"ubc</w>\": 29455,\n  \"ube</w>\": 30892,\n  \"uber\": 25896,\n  \"uber</w>\": 10668,\n  \"ubi\": 26758,\n  \"ubio</w>\": 32867,\n  \"ubiquit\": 48129,\n  \"ubis\": 28248,\n  \"ubisoft</w>\": 32051,\n  \"ubs</w>\": 43851,\n  \"ubun\": 28184,\n  \"ubuntu</w>\": 30791,\n  \"uc\": 4903,\n  \"uc</w>\": 12438,\n  \"uca</w>\": 30942,\n  \"ucc\": 44844,\n  \"ucc</w>\": 29138,\n  \"ucci</w>\": 30746,\n  \"uccino</w>\": 30409,\n  \"ucd\": 44746,\n  \"ucd</w>\": 43514,\n  \"ucf</w>\": 24414,\n  \"uch\": 19465,\n  \"uch</w>\": 22394,\n  \"uchi\": 37473,\n  \"uci\": 46354,\n  \"uci</w>\": 28925,\n  \"uck</w>\": 34189,\n  \"ucl\": 12013,\n  \"ucl</w>\": 13647,\n  \"ucla\": 37667,\n  \"ucla</w>\": 17259,\n  \"ucn</w>\": 49036,\n  \"uconn</w>\": 30549,\n  \"ud\": 6560,\n  \"ud</w>\": 5765,\n  \"uda</w>\": 22800,\n  \"udaipur</w>\": 49385,\n  \"uddin</w>\": 43035,\n  \"ude\": 37016,\n  \"ude</w>\": 35194,\n  \"ue\": 16696,\n  \"ue</w>\": 1190,\n  \"uefa</w>\": 19189,\n  \"uel</w>\": 24231,\n  \"uer</w>\": 45951,\n  \"ues</w>\": 2526,\n  \"uf\": 17777,\n  \"uf</w>\": 19230,\n  \"ufc\": 20396,\n  \"ufc</w>\": 6490,\n  \"uff</w>\": 45701,\n  \"ufo</w>\": 19443,\n  \"ufos</w>\": 48234,\n  \"ug\": 3754,\n  \"ug</w>\": 16061,\n  \"uga</w>\": 16056,\n  \"ugand\": 25965,\n  \"uganda</w>\": 11125,\n  \"ugandan</w>\": 44206,\n  \"ugby</w>\": 30658,\n  \"ugh\": 39736,\n  \"ugh</w>\": 12755,\n  \"ugliest</w>\": 43543,\n  \"ugly\": 36070,\n  \"ugly</w>\": 8159,\n  \"ugu</w>\": 18144,\n  \"uh\": 17661,\n  \"uh</w>\": 9219,\n  \"uhc</w>\": 44974,\n  \"uhh</w>\": 35938,\n  \"uhhh</w>\": 45270,\n  \"uhm</w>\": 35614,\n  \"uhur\": 29434,\n  \"uhuru</w>\": 35690,\n  \"ui\": 17326,\n  \"ui</w>\": 11458,\n  \"uil</w>\": 29395,\n  \"uit\": 30696,\n  \"uit</w>\": 47584,\n  \"uj\": 33266,\n  \"uji</w>\": 39672,\n  \"uk\": 2294,\n  \"uk</w>\": 1432,\n  \"uka</w>\": 23294,\n  \"uke\": 48836,\n  \"uke</w>\": 28577,\n  \"uked\": 48987,\n  \"uki\": 37435,\n  \"uki</w>\": 9009,\n  \"ukin\": 34996,\n  \"ukip</w>\": 20360,\n  \"uklabour</w>\": 36902,\n  \"ukmfg</w>\": 38764,\n  \"uko</w>\": 33562,\n  \"ukone</w>\": 24682,\n  \"ukrain\": 15468,\n  \"ukraine</w>\": 7768,\n  \"ukrainian</w>\": 16927,\n  \"ukrunchat</w>\": 34481,\n  \"uku\": 29541,\n  \"uku</w>\": 36082,\n  \"ukulele</w>\": 39094,\n  \"ul\": 914,\n  \"ul</w>\": 6625,\n  \"ula\": 34104,\n  \"ula</w>\": 9506,\n  \"ular</w>\": 4927,\n  \"ulary</w>\": 21701,\n  \"ulate</w>\": 20467,\n  \"ulation</w>\": 32896,\n  \"ule</w>\": 35616,\n  \"ules</w>\": 26274,\n  \"ulf</w>\": 49331,\n  \"uli\": 41841,\n  \"uli</w>\": 22174,\n  \"ull\": 33254,\n  \"ulla</w>\": 30577,\n  \"ullah</w>\": 45310,\n  \"ullivan</w>\": 45252,\n  \"ulls</w>\": 37418,\n  \"ulo\": 46084,\n  \"ulo</w>\": 36738,\n  \"ulous\": 42490,\n  \"ulous</w>\": 4281,\n  \"ulously</w>\": 20167,\n  \"ulster\": 29709,\n  \"ulster</w>\": 24639,\n  \"ult</w>\": 4380,\n  \"ulti\": 11925,\n  \"ulties</w>\": 21884,\n  \"ultimat\": 16522,\n  \"ultimate\": 34684,\n  \"ultimate</w>\": 5377,\n  \"ultimatefan\": 48372,\n  \"ultimatefanlive</w>\": 48644,\n  \"ultimately</w>\": 23023,\n  \"ultr\": 25636,\n  \"ultra\": 11398,\n  \"ultra</w>\": 8118,\n  \"ultram\": 44519,\n  \"ultrasound</w>\": 29717,\n  \"ulture</w>\": 22272,\n  \"ulty</w>\": 8036,\n  \"ulu\": 41815,\n  \"ulu</w>\": 15659,\n  \"ulum</w>\": 17235,\n  \"uly\": 33220,\n  \"ulysses</w>\": 46114,\n  \"um\": 1622,\n  \"um</w>\": 1008,\n  \"uma\": 29982,\n  \"uma</w>\": 9256,\n  \"uman</w>\": 27112,\n  \"umar</w>\": 25656,\n  \"umass</w>\": 39390,\n  \"umatic</w>\": 45006,\n  \"umb\": 7493,\n  \"umber\": 19195,\n  \"umbrel\": 34773,\n  \"umbrella</w>\": 17143,\n  \"umbrellas</w>\": 42782,\n  \"umbria</w>\": 39287,\n  \"umc</w>\": 39491,\n  \"umd</w>\": 42067,\n  \"ume\": 38480,\n  \"umen</w>\": 42832,\n  \"uments</w>\": 25924,\n  \"umer</w>\": 23539,\n  \"umes</w>\": 21403,\n  \"umi\": 48772,\n  \"umi</w>\": 15458,\n  \"umich\": 41294,\n  \"umin</w>\": 31542,\n  \"umm\": 26129,\n  \"umm</w>\": 21215,\n  \"ummer</w>\": 47628,\n  \"ummm</w>\": 33665,\n  \"umni</w>\": 31739,\n  \"ump\": 22224,\n  \"umpire</w>\": 36214,\n  \"ums</w>\": 8643,\n  \"umu</w>\": 39788,\n  \"un\": 569,\n  \"un</w>\": 2271,\n  \"una</w>\": 6385,\n  \"unable</w>\": 17793,\n  \"unacceptable</w>\": 25234,\n  \"unanim\": 20800,\n  \"unanimous</w>\": 33520,\n  \"unanimously</w>\": 31798,\n  \"unanswered</w>\": 43611,\n  \"unarmed</w>\": 41541,\n  \"unas</w>\": 41366,\n  \"unavailable</w>\": 48430,\n  \"unaware</w>\": 33347,\n  \"unbeat\": 37056,\n  \"unbeatable</w>\": 40267,\n  \"unbeaten</w>\": 19228,\n  \"unbeliev\": 11383,\n  \"unbelievable</w>\": 13306,\n  \"unbelievably</w>\": 33781,\n  \"unborn</w>\": 37257,\n  \"unboxing</w>\": 32866,\n  \"unbreakable</w>\": 32956,\n  \"unbroken</w>\": 49271,\n  \"unc\": 24921,\n  \"unc</w>\": 15322,\n  \"uncanny</w>\": 32556,\n  \"uncertain</w>\": 30384,\n  \"uncertainty</w>\": 23956,\n  \"unch</w>\": 1527,\n  \"unchanged</w>\": 34272,\n  \"uncharted</w>\": 34560,\n  \"unci\": 25521,\n  \"unciation</w>\": 34117,\n  \"uncle\": 31537,\n  \"uncle</w>\": 8002,\n  \"unclear</w>\": 32955,\n  \"uncles</w>\": 45335,\n  \"uncomfortable</w>\": 22470,\n  \"uncommon</w>\": 34888,\n  \"uncondition\": 46561,\n  \"unconditional</w>\": 31112,\n  \"unconscious</w>\": 34791,\n  \"unconstitutional</w>\": 43585,\n  \"unconventional</w>\": 39440,\n  \"uncover</w>\": 33031,\n  \"uncovered</w>\": 28234,\n  \"uncture</w>\": 38736,\n  \"uncut</w>\": 41056,\n  \"und\": 9762,\n  \"und</w>\": 9732,\n  \"unda</w>\": 39932,\n  \"undant</w>\": 25377,\n  \"unday</w>\": 29338,\n  \"unde</w>\": 45226,\n  \"undead</w>\": 40105,\n  \"undecided</w>\": 49368,\n  \"undefeated</w>\": 15326,\n  \"undeni\": 38424,\n  \"under\": 1473,\n  \"under</w>\": 1798,\n  \"underage</w>\": 45669,\n  \"underattack</w>\": 35075,\n  \"undercover</w>\": 21595,\n  \"underdog</w>\": 44266,\n  \"undere\": 21675,\n  \"underestim\": 23348,\n  \"underestimate</w>\": 31794,\n  \"undergo</w>\": 31545,\n  \"undergoing</w>\": 26419,\n  \"undergrad</w>\": 38331,\n  \"undergraduate</w>\": 24320,\n  \"underground</w>\": 9396,\n  \"undering</w>\": 30826,\n  \"underlying</w>\": 31812,\n  \"undermine</w>\": 42839,\n  \"underneath</w>\": 20857,\n  \"underrated</w>\": 19494,\n  \"unders</w>\": 20376,\n  \"understand\": 47582,\n  \"understand</w>\": 4600,\n  \"understanding</w>\": 7522,\n  \"understands</w>\": 21607,\n  \"understatement</w>\": 38296,\n  \"understood</w>\": 17303,\n  \"undertaker</w>\": 40144,\n  \"undertaking</w>\": 49067,\n  \"undertale</w>\": 48283,\n  \"underthe\": 41161,\n  \"underwater</w>\": 14760,\n  \"underway</w>\": 6273,\n  \"underwear</w>\": 21154,\n  \"underwood</w>\": 21474,\n  \"underworld</w>\": 34760,\n  \"undi</w>\": 23845,\n  \"undisclosed</w>\": 39334,\n  \"undo</w>\": 35454,\n  \"undocumented</w>\": 35414,\n  \"undoub\": 38836,\n  \"undoubtedly</w>\": 42204,\n  \"undp</w>\": 26691,\n  \"une\": 4522,\n  \"une</w>\": 10966,\n  \"unearth\": 32716,\n  \"unearthed</w>\": 36632,\n  \"unemp\": 15139,\n  \"unemployed</w>\": 32721,\n  \"unemployment</w>\": 19350,\n  \"unes</w>\": 6394,\n  \"unesco</w>\": 16216,\n  \"uneven</w>\": 43204,\n  \"unex\": 9484,\n  \"unexpe\": 10802,\n  \"unexpec\": 31829,\n  \"unexpected</w>\": 12293,\n  \"unexpectedly</w>\": 35622,\n  \"unf\": 29285,\n  \"unfair</w>\": 22193,\n  \"unfinished</w>\": 26526,\n  \"unfit</w>\": 45367,\n  \"unfold</w>\": 38681,\n  \"unfollow</w>\": 38797,\n  \"unfor\": 14010,\n  \"unforgettable</w>\": 16173,\n  \"unfortun\": 10194,\n  \"unfortunate</w>\": 22361,\n  \"unfortunately</w>\": 12863,\n  \"unfpa</w>\": 45048,\n  \"ung\": 10439,\n  \"ung</w>\": 4334,\n  \"unga</w>\": 19151,\n  \"ungsoo</w>\": 25582,\n  \"unh\": 25365,\n  \"unhappy</w>\": 26528,\n  \"unhcr</w>\": 43451,\n  \"unhealthy</w>\": 30994,\n  \"uni\": 1107,\n  \"uni</w>\": 5926,\n  \"unic\": 7648,\n  \"unicef\": 38286,\n  \"unicef</w>\": 19259,\n  \"unicorn</w>\": 15660,\n  \"unicorns</w>\": 35183,\n  \"unidenti\": 33707,\n  \"unidentified</w>\": 35563,\n  \"unification</w>\": 45036,\n  \"unified</w>\": 20876,\n  \"uniform</w>\": 11075,\n  \"uniforms</w>\": 17838,\n  \"unil\": 32388,\n  \"unilever</w>\": 48654,\n  \"uniof\": 21218,\n  \"union\": 14210,\n  \"union</w>\": 3503,\n  \"unions</w>\": 18353,\n  \"unis\": 30482,\n  \"unis</w>\": 39266,\n  \"unisex</w>\": 27609,\n  \"unison</w>\": 46694,\n  \"unit\": 28522,\n  \"unit</w>\": 5695,\n  \"unite\": 15078,\n  \"unite</w>\": 11305,\n  \"uniteblue</w>\": 20935,\n  \"united\": 10898,\n  \"united</w>\": 2690,\n  \"unitedstates</w>\": 39636,\n  \"unitedway\": 47486,\n  \"unites</w>\": 32061,\n  \"uniting</w>\": 31318,\n  \"units</w>\": 10394,\n  \"unity\": 38300,\n  \"unity</w>\": 8581,\n  \"univ\": 36680,\n  \"univ</w>\": 14896,\n  \"univer\": 15574,\n  \"univers\": 5855,\n  \"universal\": 19148,\n  \"universal</w>\": 8754,\n  \"universe</w>\": 6104,\n  \"universi\": 41692,\n  \"universit\": 26019,\n  \"universities</w>\": 16408,\n  \"university\": 40728,\n  \"university</w>\": 2182,\n  \"universityof\": 46158,\n  \"unk</w>\": 5542,\n  \"unknown</w>\": 8685,\n  \"unl</w>\": 43807,\n  \"unlawful</w>\": 42305,\n  \"unle\": 19677,\n  \"unlea\": 23893,\n  \"unleash</w>\": 26706,\n  \"unleashed</w>\": 27955,\n  \"unless</w>\": 10602,\n  \"unlike</w>\": 16694,\n  \"unlikely</w>\": 18904,\n  \"unlimited</w>\": 11015,\n  \"unlock</w>\": 18649,\n  \"unlocked</w>\": 16770,\n  \"unlocking</w>\": 40810,\n  \"unlucky</w>\": 35029,\n  \"unlv</w>\": 42283,\n  \"unmanned</w>\": 36751,\n  \"unmatched</w>\": 46054,\n  \"unn</w>\": 38364,\n  \"unnamed</w>\": 44985,\n  \"unnecessary</w>\": 24100,\n  \"unner</w>\": 31481,\n  \"unning</w>\": 43282,\n  \"unnoticed</w>\": 42807,\n  \"uno\": 32446,\n  \"uno</w>\": 17078,\n  \"unofficial</w>\": 22506,\n  \"unpacking</w>\": 43589,\n  \"unpaid</w>\": 32811,\n  \"unparalleled</w>\": 44396,\n  \"unplugged</w>\": 31724,\n  \"unpopular</w>\": 40232,\n  \"unprece\": 23054,\n  \"unprecedented</w>\": 23344,\n  \"unpredictable</w>\": 38684,\n  \"unra\": 45150,\n  \"unreal\": 46980,\n  \"unreal</w>\": 15636,\n  \"unrelated</w>\": 38644,\n  \"unreleased</w>\": 29654,\n  \"unrest</w>\": 36452,\n  \"uns</w>\": 25908,\n  \"unsafe</w>\": 32071,\n  \"unsc</w>\": 36395,\n  \"unseen</w>\": 19069,\n  \"unsigned</w>\": 39346,\n  \"unsolved</w>\": 40836,\n  \"unsplash</w>\": 46196,\n  \"unstable</w>\": 34730,\n  \"unstopp\": 22105,\n  \"unstoppable</w>\": 23484,\n  \"unsuccessful</w>\": 47478,\n  \"unsung</w>\": 33015,\n  \"unsure</w>\": 26396,\n  \"unt\": 19654,\n  \"unt</w>\": 6537,\n  \"until</w>\": 1942,\n  \"untitled</w>\": 21309,\n  \"unto</w>\": 19801,\n  \"untold</w>\": 32206,\n  \"untouch\": 44509,\n  \"untouched</w>\": 42764,\n  \"unused</w>\": 29636,\n  \"unusual</w>\": 12613,\n  \"unusually</w>\": 36465,\n  \"unve\": 6685,\n  \"unveil</w>\": 20483,\n  \"unveiled</w>\": 13572,\n  \"unveiling</w>\": 20327,\n  \"unveils</w>\": 15057,\n  \"unwanted</w>\": 25285,\n  \"unwind</w>\": 34064,\n  \"unya</w>\": 37142,\n  \"uo\": 30874,\n  \"uo</w>\": 36162,\n  \"uof\": 11155,\n  \"uoft</w>\": 37329,\n  \"uon\": 48144,\n  \"uous</w>\": 40185,\n  \"up\": 1083,\n  \"up</w>\": 705,\n  \"upa</w>\": 31727,\n  \"upbeat</w>\": 39201,\n  \"upcoming</w>\": 4196,\n  \"upcycled</w>\": 46552,\n  \"upd\": 3226,\n  \"update</w>\": 2491,\n  \"updated</w>\": 5974,\n  \"updates</w>\": 4904,\n  \"updating</w>\": 22792,\n  \"uper\": 38082,\n  \"uper</w>\": 33056,\n  \"upfront</w>\": 42064,\n  \"upgrade</w>\": 10365,\n  \"upgraded</w>\": 18577,\n  \"upgrades</w>\": 21253,\n  \"upgrading</w>\": 34368,\n  \"uph\": 14128,\n  \"uphill</w>\": 42767,\n  \"uphol\": 26195,\n  \"uphold</w>\": 43897,\n  \"upholstery</w>\": 44556,\n  \"upl\": 41939,\n  \"uplift</w>\": 45389,\n  \"uplifting</w>\": 29546,\n  \"upload</w>\": 13968,\n  \"uploaded</w>\": 16793,\n  \"uploading</w>\": 30145,\n  \"upon\": 23524,\n  \"upon</w>\": 5067,\n  \"upp\": 19549,\n  \"upp</w>\": 45946,\n  \"upper\": 22465,\n  \"upper</w>\": 7067,\n  \"upri\": 15982,\n  \"upright</w>\": 29818,\n  \"uprising</w>\": 26006,\n  \"upro\": 28922,\n  \"ups</w>\": 6926,\n  \"upscale</w>\": 47501,\n  \"upset</w>\": 11214,\n  \"upsets</w>\": 42637,\n  \"upside</w>\": 15362,\n  \"upstairs</w>\": 21387,\n  \"upstate</w>\": 33335,\n  \"upstream</w>\": 45517,\n  \"upthe\": 31510,\n  \"upto</w>\": 26575,\n  \"upton</w>\": 31910,\n  \"uptown</w>\": 23807,\n  \"upward</w>\": 32526,\n  \"upwards</w>\": 34915,\n  \"uq</w>\": 39591,\n  \"ur\": 565,\n  \"ur</w>\": 1775,\n  \"ura\": 29337,\n  \"ura</w>\": 3544,\n  \"urable</w>\": 40194,\n  \"ural\": 23547,\n  \"ural</w>\": 33948,\n  \"uran</w>\": 16197,\n  \"uranium</w>\": 29850,\n  \"urban\": 7931,\n  \"urban</w>\": 5800,\n  \"urbanart</w>\": 40834,\n  \"urd</w>\": 47880,\n  \"urday</w>\": 19742,\n  \"urdu</w>\": 29976,\n  \"ure\": 5514,\n  \"ure</w>\": 726,\n  \"ured</w>\": 4210,\n  \"urer</w>\": 20864,\n  \"ures</w>\": 2288,\n  \"urg</w>\": 35995,\n  \"urge</w>\": 14852,\n  \"urged</w>\": 23790,\n  \"urgency</w>\": 47612,\n  \"urgent</w>\": 13693,\n  \"urgently</w>\": 34534,\n  \"urges</w>\": 16692,\n  \"urging</w>\": 27748,\n  \"uri\": 11052,\n  \"uri</w>\": 8699,\n  \"urie</w>\": 46429,\n  \"urin\": 45245,\n  \"urine</w>\": 28864,\n  \"uring</w>\": 1351,\n  \"url</w>\": 23464,\n  \"urn</w>\": 38075,\n  \"uro\": 17343,\n  \"uro</w>\": 5925,\n  \"urology</w>\": 48585,\n  \"urope</w>\": 14918,\n  \"urs</w>\": 4794,\n  \"urself</w>\": 31942,\n  \"urst</w>\": 19181,\n  \"urstruly\": 34751,\n  \"urstrulymahesh</w>\": 35314,\n  \"ursula</w>\": 38390,\n  \"urt</w>\": 24309,\n  \"uru\": 16322,\n  \"uru</w>\": 11768,\n  \"uruguay</w>\": 27931,\n  \"urus</w>\": 14246,\n  \"urve\": 24583,\n  \"ury\": 8642,\n  \"ury</w>\": 2106,\n  \"us\": 904,\n  \"us</w>\": 718,\n  \"usa\": 9491,\n  \"usa</w>\": 2547,\n  \"usability</w>\": 46736,\n  \"usable</w>\": 22890,\n  \"usaf</w>\": 25017,\n  \"usage</w>\": 19137,\n  \"usaid</w>\": 34507,\n  \"usair\": 36742,\n  \"usairforce</w>\": 42179,\n  \"usarmy</w>\": 19132,\n  \"usatoday</w>\": 40263,\n  \"usav\": 36056,\n  \"usb</w>\": 10281,\n  \"usc\": 13346,\n  \"usc</w>\": 14995,\n  \"uscg</w>\": 43932,\n  \"usd</w>\": 7485,\n  \"usda</w>\": 25829,\n  \"use\": 4419,\n  \"use</w>\": 1483,\n  \"used\": 32289,\n  \"used</w>\": 2026,\n  \"useful</w>\": 9784,\n  \"useless</w>\": 20154,\n  \"usemb\": 39700,\n  \"user\": 21248,\n  \"user</w>\": 7031,\n  \"username</w>\": 28162,\n  \"users</w>\": 7433,\n  \"uses</w>\": 5282,\n  \"useum</w>\": 45189,\n  \"usf\": 32385,\n  \"usf</w>\": 28942,\n  \"usgs</w>\": 35103,\n  \"ush\": 12001,\n  \"ush</w>\": 18335,\n  \"usher</w>\": 27411,\n  \"ushi</w>\": 47734,\n  \"usi</w>\": 25540,\n  \"usic\": 34909,\n  \"usic</w>\": 16753,\n  \"using</w>\": 1996,\n  \"usky</w>\": 45778,\n  \"usl</w>\": 42113,\n  \"usm</w>\": 40041,\n  \"usmc</w>\": 21678,\n  \"usmnt</w>\": 30662,\n  \"usn</w>\": 40579,\n  \"usnavy</w>\": 24500,\n  \"usnews</w>\": 43752,\n  \"uso</w>\": 21539,\n  \"usopen</w>\": 21782,\n  \"usp\": 26651,\n  \"usps</w>\": 39980,\n  \"usrc</w>\": 33274,\n  \"uss\": 11545,\n  \"uss</w>\": 9260,\n  \"ussia</w>\": 29553,\n  \"ussoccer</w>\": 42828,\n  \"ussr</w>\": 32697,\n  \"ust\": 35501,\n  \"ust</w>\": 24725,\n  \"usu\": 4254,\n  \"usu</w>\": 40434,\n  \"usual</w>\": 6129,\n  \"usually</w>\": 8296,\n  \"usur\": 45582,\n  \"uswnt</w>\": 35255,\n  \"ut\": 1419,\n  \"ut</w>\": 3641,\n  \"uta\": 42706,\n  \"uta</w>\": 25925,\n  \"utah\": 27474,\n  \"utah</w>\": 9312,\n  \"utc</w>\": 18196,\n  \"utd</w>\": 10493,\n  \"ute\": 16856,\n  \"ute</w>\": 3130,\n  \"uten\": 32089,\n  \"uter\": 39197,\n  \"utes</w>\": 2850,\n  \"uth\": 48819,\n  \"uth</w>\": 44750,\n  \"uti</w>\": 24568,\n  \"util\": 28824,\n  \"utili\": 17015,\n  \"utilities</w>\": 27210,\n  \"utility</w>\": 14941,\n  \"utilize</w>\": 36861,\n  \"utilized</w>\": 47604,\n  \"utilizing</w>\": 40212,\n  \"utm</w>\": 47853,\n  \"utmost</w>\": 42352,\n  \"uto\": 18866,\n  \"uto</w>\": 13683,\n  \"utopia</w>\": 34433,\n  \"utpol</w>\": 42605,\n  \"utr\": 48726,\n  \"utrecht</w>\": 37216,\n  \"uts</w>\": 11740,\n  \"utsa</w>\": 37528,\n  \"utt\": 17096,\n  \"uttar</w>\": 40168,\n  \"uttarak\": 33755,\n  \"uttarakhand</w>\": 35655,\n  \"utter\": 18769,\n  \"utter</w>\": 24558,\n  \"utterly</w>\": 21353,\n  \"utto</w>\": 42183,\n  \"utv</w>\": 36351,\n  \"utz</w>\": 45320,\n  \"uu\": 5702,\n  \"uu</w>\": 14553,\n  \"uuu\": 44355,\n  \"uuu</w>\": 27656,\n  \"uuuu\": 16720,\n  \"uuuu</w>\": 40797,\n  \"uv\": 23777,\n  \"uv</w>\": 15977,\n  \"uva</w>\": 23908,\n  \"uw\": 13933,\n  \"uw</w>\": 19166,\n  \"uwe</w>\": 48785,\n  \"uwu</w>\": 35544,\n  \"ux\": 9251,\n  \"ux</w>\": 6213,\n  \"uy\": 31929,\n  \"uy</w>\": 48113,\n  \"uz\": 19398,\n  \"uz</w>\": 36991,\n  \"uzbe\": 43007,\n  \"uzbekistan</w>\": 45024,\n  \"uzzi</w>\": 48210,\n  \"v\": 85,\n  \"v</w>\": 341,\n  \"va\": 4648,\n  \"va</w>\": 1892,\n  \"vaa</w>\": 37488,\n  \"vable</w>\": 23088,\n  \"vac\": 3125,\n  \"vac</w>\": 34085,\n  \"vaca</w>\": 48215,\n  \"vacancies</w>\": 26333,\n  \"vacancy</w>\": 21247,\n  \"vacant</w>\": 25262,\n  \"vacation\": 28336,\n  \"vacation</w>\": 6561,\n  \"vacations</w>\": 29002,\n  \"vacay</w>\": 44716,\n  \"vacc\": 13342,\n  \"vaccin\": 19164,\n  \"vaccinated</w>\": 48134,\n  \"vaccination</w>\": 32518,\n  \"vaccine\": 47780,\n  \"vaccine</w>\": 17493,\n  \"vaccines</w>\": 25860,\n  \"vach\": 46211,\n  \"vacu\": 16058,\n  \"vacuum</w>\": 18420,\n  \"vad\": 11880,\n  \"vada</w>\": 46759,\n  \"vader</w>\": 21908,\n  \"vae</w>\": 39384,\n  \"vag\": 13015,\n  \"vague</w>\": 42154,\n  \"vah</w>\": 26921,\n  \"vai\": 26893,\n  \"vai</w>\": 36802,\n  \"vail</w>\": 21189,\n  \"vain</w>\": 25538,\n  \"vais</w>\": 28719,\n  \"vaj\": 34206,\n  \"vak\": 16288,\n  \"vak</w>\": 41597,\n  \"val\": 1214,\n  \"val</w>\": 1560,\n  \"vala</w>\": 48525,\n  \"valdez</w>\": 40617,\n  \"vale\": 35554,\n  \"vale</w>\": 10820,\n  \"valedic\": 43525,\n  \"valen\": 12630,\n  \"valence</w>\": 30225,\n  \"valenci\": 34183,\n  \"valencia</w>\": 16559,\n  \"valent\": 3655,\n  \"valent</w>\": 15300,\n  \"valentin</w>\": 48631,\n  \"valentina</w>\": 43741,\n  \"valentine\": 11208,\n  \"valentine</w>\": 5876,\n  \"valentines</w>\": 10259,\n  \"valentinesday</w>\": 12369,\n  \"valentino</w>\": 29624,\n  \"valeri\": 31951,\n  \"valerie</w>\": 25592,\n  \"valet</w>\": 45749,\n  \"vali\": 8230,\n  \"valiant</w>\": 33804,\n  \"valid</w>\": 15126,\n  \"validation</w>\": 32536,\n  \"valkyrie</w>\": 42326,\n  \"vall\": 23523,\n  \"vall</w>\": 35295,\n  \"vallarta</w>\": 47874,\n  \"valle\": 24857,\n  \"valle</w>\": 29105,\n  \"valley\": 18354,\n  \"valley</w>\": 3136,\n  \"valleys</w>\": 28649,\n  \"valor</w>\": 30930,\n  \"vals</w>\": 7431,\n  \"valu\": 6291,\n  \"valuable</w>\": 10056,\n  \"valuation</w>\": 25894,\n  \"value\": 41358,\n  \"value</w>\": 4602,\n  \"valued</w>\": 17801,\n  \"values</w>\": 8857,\n  \"valve</w>\": 17001,\n  \"valves</w>\": 33517,\n  \"vam\": 9983,\n  \"vamo\": 46718,\n  \"vamos</w>\": 30346,\n  \"vamp\": 10680,\n  \"vampi\": 47017,\n  \"vampire\": 47576,\n  \"vampire</w>\": 13220,\n  \"vampires</w>\": 30868,\n  \"vamps</w>\": 44810,\n  \"van\": 2446,\n  \"van</w>\": 2451,\n  \"vana</w>\": 20543,\n  \"vanc\": 6320,\n  \"vance</w>\": 31447,\n  \"vancou\": 6750,\n  \"vancouver\": 31904,\n  \"vancouver</w>\": 7208,\n  \"vand\": 11691,\n  \"vandalism</w>\": 45664,\n  \"vander\": 16264,\n  \"vanderbilt</w>\": 33524,\n  \"vandy\": 39268,\n  \"vane</w>\": 43828,\n  \"vaness\": 13328,\n  \"vanessa</w>\": 16836,\n  \"vangogh</w>\": 47849,\n  \"vanguard</w>\": 27916,\n  \"vani\": 15396,\n  \"vani</w>\": 26459,\n  \"vania</w>\": 10998,\n  \"vanilla</w>\": 11974,\n  \"vanished</w>\": 43783,\n  \"vanishing</w>\": 48296,\n  \"vanity\": 48353,\n  \"vanity</w>\": 22938,\n  \"vans</w>\": 11711,\n  \"vant\": 26298,\n  \"vantage</w>\": 31749,\n  \"vanu\": 42892,\n  \"vanuatu</w>\": 48766,\n  \"vap\": 10462,\n  \"vape\": 25423,\n  \"vape</w>\": 20219,\n  \"vaping</w>\": 29403,\n  \"vapor\": 37167,\n  \"vapor</w>\": 30729,\n  \"vapori\": 46183,\n  \"var\": 3187,\n  \"var</w>\": 12998,\n  \"vara</w>\": 47492,\n  \"varan\": 36585,\n  \"varanasi</w>\": 39364,\n  \"vard\": 21866,\n  \"vard</w>\": 8773,\n  \"vardy</w>\": 47371,\n  \"vare\": 38159,\n  \"vares</w>\": 42895,\n  \"vargas</w>\": 32752,\n  \"vari\": 3354,\n  \"variable</w>\": 26416,\n  \"varian</w>\": 34334,\n  \"variant</w>\": 20293,\n  \"variants</w>\": 38312,\n  \"variation</w>\": 26420,\n  \"variations</w>\": 29025,\n  \"varied</w>\": 32334,\n  \"varies</w>\": 32543,\n  \"varieties</w>\": 23805,\n  \"variety</w>\": 8396,\n  \"various</w>\": 7395,\n  \"varsity\": 43716,\n  \"varsity</w>\": 8574,\n  \"varun\": 48120,\n  \"varun</w>\": 22069,\n  \"vary</w>\": 18855,\n  \"varying</w>\": 36456,\n  \"vas\": 5669,\n  \"vas</w>\": 5995,\n  \"vasc</w>\": 40995,\n  \"vascular</w>\": 19218,\n  \"vase</w>\": 20431,\n  \"vasi\": 49092,\n  \"vast\": 24413,\n  \"vast</w>\": 16414,\n  \"vastly</w>\": 48257,\n  \"vat\": 11588,\n  \"vat</w>\": 18363,\n  \"vatican</w>\": 21030,\n  \"vation</w>\": 37884,\n  \"vau\": 6391,\n  \"vaugh\": 25158,\n  \"vaughan</w>\": 21392,\n  \"vaughn</w>\": 29013,\n  \"vaul\": 27469,\n  \"vault</w>\": 15240,\n  \"vaus</w>\": 40217,\n  \"vaux\": 27403,\n  \"vauxhall</w>\": 29173,\n  \"vaw</w>\": 47952,\n  \"vay\": 48000,\n  \"vaz\": 38142,\n  \"vb\": 29365,\n  \"vb</w>\": 8778,\n  \"vball</w>\": 38329,\n  \"vc\": 28670,\n  \"vc</w>\": 7952,\n  \"vcs</w>\": 43528,\n  \"vcu</w>\": 40102,\n  \"vd</w>\": 9515,\n  \"vday</w>\": 42055,\n  \"ve\": 673,\n  \"ve</w>\": 563,\n  \"vea</w>\": 43798,\n  \"veal</w>\": 36616,\n  \"veau</w>\": 24419,\n  \"vec\": 19912,\n  \"vector\": 40453,\n  \"vector</w>\": 21533,\n  \"ved\": 19515,\n  \"ved</w>\": 1102,\n  \"veda</w>\": 44401,\n  \"vedere</w>\": 45660,\n  \"vedi</w>\": 47971,\n  \"vee\": 35708,\n  \"vee</w>\": 17073,\n  \"veen</w>\": 22432,\n  \"veer\": 21243,\n  \"veer</w>\": 22058,\n  \"veg\": 9048,\n  \"veg</w>\": 16460,\n  \"vega</w>\": 22930,\n  \"vegan\": 15705,\n  \"vegan</w>\": 5615,\n  \"vegans</w>\": 48514,\n  \"vegas\": 20288,\n  \"vegas</w>\": 4413,\n  \"vege\": 6219,\n  \"vegetable</w>\": 15725,\n  \"vegetables</w>\": 14119,\n  \"vegetarian</w>\": 14600,\n  \"vegetation</w>\": 33947,\n  \"veggie</w>\": 19401,\n  \"veggies</w>\": 16767,\n  \"vehic\": 3973,\n  \"vehicle</w>\": 5299,\n  \"vehicles</w>\": 8361,\n  \"veil</w>\": 23516,\n  \"vein</w>\": 29169,\n  \"veins</w>\": 28867,\n  \"veit</w>\": 30620,\n  \"vel\": 942,\n  \"vel</w>\": 1287,\n  \"vela</w>\": 34898,\n  \"veld</w>\": 34011,\n  \"veled</w>\": 15370,\n  \"veli</w>\": 49166,\n  \"veling</w>\": 37970,\n  \"vell\": 21173,\n  \"vell</w>\": 32997,\n  \"velo\": 14357,\n  \"velo</w>\": 33850,\n  \"velocity</w>\": 23811,\n  \"vels</w>\": 5109,\n  \"velve\": 37849,\n  \"velvet</w>\": 11063,\n  \"vely</w>\": 1708,\n  \"vember</w>\": 3477,\n  \"vement</w>\": 3129,\n  \"vements</w>\": 11104,\n  \"ven\": 1240,\n  \"ven</w>\": 1638,\n  \"vena</w>\": 47442,\n  \"vend\": 10851,\n  \"vending</w>\": 29202,\n  \"vendor</w>\": 21261,\n  \"vendors</w>\": 20353,\n  \"vene\": 5365,\n  \"veness</w>\": 10516,\n  \"venetian</w>\": 34336,\n  \"venezia</w>\": 34139,\n  \"venezu\": 10939,\n  \"venezuela</w>\": 12839,\n  \"venezuelan</w>\": 34699,\n  \"veng</w>\": 31526,\n  \"venge\": 27757,\n  \"vengeance</w>\": 32057,\n  \"veni</w>\": 31142,\n  \"venice</w>\": 11010,\n  \"vening</w>\": 47532,\n  \"venison</w>\": 40037,\n  \"venom\": 42491,\n  \"venom</w>\": 21588,\n  \"vens</w>\": 20884,\n  \"vent\": 4373,\n  \"vent</w>\": 5687,\n  \"ventil\": 39522,\n  \"ventilation</w>\": 35066,\n  \"venting</w>\": 15731,\n  \"vention</w>\": 4122,\n  \"vents</w>\": 12833,\n  \"ventu\": 48217,\n  \"ventura</w>\": 20921,\n  \"venture\": 37046,\n  \"venture</w>\": 12543,\n  \"ventures</w>\": 20829,\n  \"venue</w>\": 5097,\n  \"venues</w>\": 18120,\n  \"venus</w>\": 14691,\n  \"ver\": 624,\n  \"ver</w>\": 667,\n  \"vera</w>\": 13350,\n  \"verage</w>\": 3725,\n  \"verb</w>\": 34952,\n  \"verbal</w>\": 26522,\n  \"verbally</w>\": 39985,\n  \"verbs</w>\": 45687,\n  \"verde</w>\": 16935,\n  \"verdi</w>\": 42306,\n  \"verdict</w>\": 18030,\n  \"vere\": 11135,\n  \"vere</w>\": 34707,\n  \"vered</w>\": 2868,\n  \"verge</w>\": 23913,\n  \"veri\": 11638,\n  \"verification</w>\": 33521,\n  \"verified</w>\": 22555,\n  \"verify</w>\": 34722,\n  \"vering</w>\": 4630,\n  \"veriz\": 19707,\n  \"verizon</w>\": 21532,\n  \"verma</w>\": 41261,\n  \"vermont</w>\": 19241,\n  \"vern\": 2214,\n  \"vern</w>\": 12586,\n  \"verne</w>\": 45553,\n  \"vernon</w>\": 18348,\n  \"vero\": 45217,\n  \"vero</w>\": 38208,\n  \"verona</w>\": 31819,\n  \"veronic\": 39551,\n  \"veronica</w>\": 24039,\n  \"vers\": 1219,\n  \"vers</w>\": 2094,\n  \"versa</w>\": 35765,\n  \"versace</w>\": 25422,\n  \"versail\": 29857,\n  \"versailles</w>\": 32129,\n  \"versary</w>\": 2940,\n  \"versatile</w>\": 18110,\n  \"versatility</w>\": 41340,\n  \"verse\": 39466,\n  \"verse</w>\": 3131,\n  \"verses</w>\": 30769,\n  \"versi\": 8934,\n  \"version</w>\": 3273,\n  \"versions</w>\": 16190,\n  \"versity</w>\": 1906,\n  \"verst\": 42484,\n  \"verstappen</w>\": 45064,\n  \"versus</w>\": 14548,\n  \"versy</w>\": 18522,\n  \"vert</w>\": 11742,\n  \"verte\": 35158,\n  \"verted</w>\": 48173,\n  \"verti\": 30459,\n  \"vertical</w>\": 14293,\n  \"vertigo</w>\": 42477,\n  \"verton</w>\": 40632,\n  \"verts</w>\": 37265,\n  \"very\": 11698,\n  \"very</w>\": 1070,\n  \"veryday</w>\": 37944,\n  \"verything</w>\": 45174,\n  \"ves\": 9616,\n  \"ves</w>\": 1003,\n  \"vesmatter</w>\": 47636,\n  \"vespa</w>\": 46029,\n  \"vessel</w>\": 16387,\n  \"vessels</w>\": 22822,\n  \"vest\": 31657,\n  \"vest</w>\": 12473,\n  \"vesti\": 40349,\n  \"vests</w>\": 41906,\n  \"vet\": 12294,\n  \"vet</w>\": 5951,\n  \"veter\": 4330,\n  \"veteran\": 20797,\n  \"veteran</w>\": 8814,\n  \"veterans</w>\": 7092,\n  \"veteransday</w>\": 26409,\n  \"veterin\": 43959,\n  \"veterinary</w>\": 25458,\n  \"veto</w>\": 36570,\n  \"vets</w>\": 13113,\n  \"vette</w>\": 17045,\n  \"vettel</w>\": 28700,\n  \"vevo</w>\": 35141,\n  \"vex\": 36187,\n  \"vex</w>\": 43978,\n  \"vey\": 34792,\n  \"vey</w>\": 3884,\n  \"vez\": 35987,\n  \"vez</w>\": 17226,\n  \"vf</w>\": 25966,\n  \"vfl</w>\": 33726,\n  \"vfx</w>\": 30149,\n  \"vg\": 40591,\n  \"vg</w>\": 22346,\n  \"vh\": 46953,\n  \"vh</w>\": 23847,\n  \"vhs</w>\": 21932,\n  \"vi\": 603,\n  \"vi</w>\": 4259,\n  \"via</w>\": 1048,\n  \"viable</w>\": 25752,\n  \"viadu\": 37012,\n  \"viaduct</w>\": 39113,\n  \"vial</w>\": 39951,\n  \"vian\": 40487,\n  \"vian</w>\": 16124,\n  \"vibe\": 37974,\n  \"vibe</w>\": 12813,\n  \"vibes</w>\": 7764,\n  \"vibr\": 9527,\n  \"vibrant</w>\": 14270,\n  \"vibration</w>\": 37456,\n  \"vibrations</w>\": 43660,\n  \"vic\": 1555,\n  \"vic</w>\": 4412,\n  \"vica</w>\": 46168,\n  \"vicar</w>\": 43899,\n  \"vice\": 43572,\n  \"vice</w>\": 6931,\n  \"vicente</w>\": 39411,\n  \"vices</w>\": 8332,\n  \"vich</w>\": 24143,\n  \"vici\": 46670,\n  \"vicious</w>\": 25177,\n  \"vick\": 15116,\n  \"vick</w>\": 29704,\n  \"vickers</w>\": 48452,\n  \"vicki</w>\": 34927,\n  \"vicky\": 37176,\n  \"vicky</w>\": 25788,\n  \"victi\": 6861,\n  \"victim</w>\": 9133,\n  \"victims</w>\": 7131,\n  \"victor\": 2423,\n  \"victor</w>\": 10690,\n  \"victori\": 17555,\n  \"victoria\": 39286,\n  \"victoria</w>\": 6127,\n  \"victorian</w>\": 12350,\n  \"victorias\": 47791,\n  \"victories</w>\": 24577,\n  \"victorious</w>\": 24033,\n  \"victory\": 36668,\n  \"victory</w>\": 4127,\n  \"vid\": 17233,\n  \"vid</w>\": 9284,\n  \"vida</w>\": 19015,\n  \"vidal</w>\": 36678,\n  \"vide\": 1334,\n  \"vide</w>\": 45244,\n  \"video\": 9478,\n  \"video</w>\": 1455,\n  \"videogame</w>\": 35097,\n  \"videogames</w>\": 21149,\n  \"videos</w>\": 6081,\n  \"vids</w>\": 23035,\n  \"vidy\": 29639,\n  \"vidya</w>\": 45264,\n  \"vie\": 922,\n  \"vie</w>\": 8538,\n  \"vien\": 36493,\n  \"vienna</w>\": 12670,\n  \"vier\": 15352,\n  \"vier</w>\": 11987,\n  \"viera</w>\": 21114,\n  \"viernes</w>\": 33826,\n  \"vies</w>\": 22458,\n  \"viest</w>\": 31979,\n  \"viet\": 17558,\n  \"viet</w>\": 13128,\n  \"vietnam\": 19558,\n  \"vietnam</w>\": 8623,\n  \"vietnamese</w>\": 22382,\n  \"view\": 12004,\n  \"view</w>\": 1093,\n  \"viewed</w>\": 7226,\n  \"viewer</w>\": 15061,\n  \"viewers</w>\": 14275,\n  \"viewing</w>\": 7124,\n  \"viewpoint</w>\": 41604,\n  \"views</w>\": 2758,\n  \"vig\": 8549,\n  \"vig</w>\": 45083,\n  \"vigil\": 21538,\n  \"vigil</w>\": 19896,\n  \"vigilant</w>\": 43026,\n  \"vigne\": 40447,\n  \"vigne</w>\": 34581,\n  \"vigo</w>\": 44097,\n  \"vigor\": 26781,\n  \"vii</w>\": 17759,\n  \"viii</w>\": 20414,\n  \"vijay\": 12014,\n  \"vijay</w>\": 10823,\n  \"vijaysethu\": 47966,\n  \"vik\": 10764,\n  \"vik</w>\": 17181,\n  \"vika</w>\": 39562,\n  \"vikas</w>\": 37116,\n  \"viking\": 26663,\n  \"viking</w>\": 15897,\n  \"vikings</w>\": 11713,\n  \"vikram\": 41136,\n  \"vikram</w>\": 24314,\n  \"viktor</w>\": 36101,\n  \"vil\": 1338,\n  \"vil</w>\": 3000,\n  \"vila</w>\": 37505,\n  \"vile</w>\": 27247,\n  \"vill\": 10481,\n  \"vill</w>\": 45698,\n  \"villa\": 3203,\n  \"villa</w>\": 7754,\n  \"village\": 34584,\n  \"village</w>\": 4331,\n  \"villagers</w>\": 34283,\n  \"villages</w>\": 17621,\n  \"villain</w>\": 15425,\n  \"villains</w>\": 25271,\n  \"villanova</w>\": 44025,\n  \"villar\": 35164,\n  \"villas</w>\": 28907,\n  \"ville\": 11110,\n  \"ville</w>\": 1930,\n  \"villen\": 46177,\n  \"villi\": 36907,\n  \"vimeo</w>\": 48720,\n  \"vin\": 1379,\n  \"vin</w>\": 2558,\n  \"vina</w>\": 35682,\n  \"vinai\": 37396,\n  \"vinaigrette</w>\": 39876,\n  \"vinay\": 43952,\n  \"vince\": 32429,\n  \"vince</w>\": 6236,\n  \"vincen\": 33402,\n  \"vincent\": 29069,\n  \"vincent</w>\": 10357,\n  \"vinci</w>\": 30199,\n  \"vind</w>\": 20275,\n  \"vindic\": 39582,\n  \"vine\": 8471,\n  \"vine</w>\": 7721,\n  \"vinegar</w>\": 23834,\n  \"vines</w>\": 21268,\n  \"vineyard</w>\": 16527,\n  \"vineyards</w>\": 23082,\n  \"ving\": 5375,\n  \"ving</w>\": 903,\n  \"vingne</w>\": 42579,\n  \"vings</w>\": 22510,\n  \"vini</w>\": 48119,\n  \"vinnie</w>\": 40885,\n  \"vinny</w>\": 36794,\n  \"vino</w>\": 14509,\n  \"vinod</w>\": 43348,\n  \"vins</w>\": 34820,\n  \"vinson</w>\": 45945,\n  \"vintag\": 10936,\n  \"vintage\": 13654,\n  \"vintage</w>\": 3266,\n  \"viny\": 40990,\n  \"vinyl\": 22835,\n  \"vinyl</w>\": 5754,\n  \"vio\": 11913,\n  \"vio</w>\": 20324,\n  \"viol\": 3164,\n  \"viola</w>\": 27438,\n  \"violate</w>\": 44875,\n  \"violated</w>\": 38192,\n  \"violating</w>\": 37554,\n  \"violation</w>\": 22919,\n  \"violations</w>\": 21969,\n  \"violence</w>\": 5450,\n  \"violent</w>\": 11565,\n  \"violently</w>\": 47758,\n  \"violet</w>\": 16118,\n  \"violets</w>\": 42861,\n  \"violin</w>\": 17058,\n  \"violinist</w>\": 36299,\n  \"vion</w>\": 35496,\n  \"vious</w>\": 6418,\n  \"viously</w>\": 7149,\n  \"vip\": 45714,\n  \"vip</w>\": 7111,\n  \"viper</w>\": 27401,\n  \"vips</w>\": 41149,\n  \"vir\": 1790,\n  \"vir</w>\": 25319,\n  \"vira</w>\": 35910,\n  \"viral</w>\": 11653,\n  \"virat</w>\": 32473,\n  \"virgil</w>\": 39076,\n  \"virgin\": 5651,\n  \"virgin</w>\": 12103,\n  \"virgini\": 43426,\n  \"virginia</w>\": 6728,\n  \"virgo</w>\": 39978,\n  \"viro\": 32301,\n  \"viron\": 38309,\n  \"virtu\": 7977,\n  \"virtual\": 18059,\n  \"virtual</w>\": 7790,\n  \"virtually</w>\": 22475,\n  \"virtualreality</w>\": 32608,\n  \"virtue</w>\": 26860,\n  \"virtues</w>\": 42167,\n  \"virtuoso</w>\": 47027,\n  \"virus</w>\": 11808,\n  \"viruses</w>\": 34830,\n  \"vis\": 1301,\n  \"vis</w>\": 5337,\n  \"visa</w>\": 12802,\n  \"visas</w>\": 41228,\n  \"vise</w>\": 24977,\n  \"vised</w>\": 14810,\n  \"vish\": 12024,\n  \"vish</w>\": 29124,\n  \"vishal</w>\": 33648,\n  \"vishnu</w>\": 37816,\n  \"visi\": 1409,\n  \"visibility</w>\": 15921,\n  \"visible\": 36658,\n  \"visible</w>\": 8626,\n  \"vising</w>\": 37439,\n  \"vision\": 11147,\n  \"vision</w>\": 2515,\n  \"visional</w>\": 24627,\n  \"visionary</w>\": 22959,\n  \"visions</w>\": 13804,\n  \"visit\": 3388,\n  \"visit</w>\": 1600,\n  \"visitation</w>\": 44370,\n  \"visited</w>\": 5580,\n  \"visiting</w>\": 4680,\n  \"visitor</w>\": 13881,\n  \"visitors</w>\": 9160,\n  \"visits</w>\": 8489,\n  \"visitscotland</w>\": 28760,\n  \"visitspain</w>\": 48860,\n  \"vism</w>\": 15514,\n  \"viso</w>\": 46732,\n  \"visor</w>\": 24217,\n  \"vist</w>\": 21436,\n  \"vista</w>\": 13865,\n  \"visu\": 7739,\n  \"visual\": 17004,\n  \"visual</w>\": 7195,\n  \"visualization</w>\": 28500,\n  \"visualize</w>\": 45057,\n  \"visually</w>\": 25743,\n  \"visuals</w>\": 21315,\n  \"viswas\": 36513,\n  \"viswasam</w>\": 47664,\n  \"vit\": 4056,\n  \"vit</w>\": 35580,\n  \"vita</w>\": 15700,\n  \"vital\": 32525,\n  \"vital</w>\": 10585,\n  \"vitality</w>\": 36385,\n  \"vitam\": 9856,\n  \"vitamin</w>\": 13675,\n  \"vitamins</w>\": 22582,\n  \"vito</w>\": 36725,\n  \"vity</w>\": 4893,\n  \"vitz</w>\": 26188,\n  \"vius</w>\": 41571,\n  \"viv\": 21827,\n  \"viv</w>\": 35363,\n  \"viva</w>\": 17399,\n  \"vival\": 35920,\n  \"vive\": 18980,\n  \"vive</w>\": 24004,\n  \"vivek</w>\": 36243,\n  \"vivi\": 11625,\n  \"vivian</w>\": 30129,\n  \"vivid</w>\": 22984,\n  \"vivo\": 28091,\n  \"vivo</w>\": 25888,\n  \"vix\": 28976,\n  \"vix</w>\": 34811,\n  \"vixen</w>\": 38757,\n  \"vixx</w>\": 32106,\n  \"viz\": 28251,\n  \"viz</w>\": 31786,\n  \"vj\": 45439,\n  \"vj</w>\": 30827,\n  \"vk</w>\": 41893,\n  \"vl\": 37580,\n  \"vl</w>\": 36442,\n  \"vla\": 23686,\n  \"vlad</w>\": 41089,\n  \"vladi\": 19320,\n  \"vladimir</w>\": 21702,\n  \"vlive</w>\": 46797,\n  \"vlog</w>\": 18894,\n  \"vm\": 16204,\n  \"vm</w>\": 20269,\n  \"vma</w>\": 35666,\n  \"vmas</w>\": 30236,\n  \"vmware</w>\": 29615,\n  \"vn\": 47098,\n  \"vn</w>\": 25076,\n  \"vo\": 947,\n  \"vo</w>\": 3951,\n  \"voc\": 4105,\n  \"voc</w>\": 20855,\n  \"vocab\": 21346,\n  \"vocabulary</w>\": 23804,\n  \"vocal\": 34037,\n  \"vocal</w>\": 13147,\n  \"vocali\": 19134,\n  \"vocalist</w>\": 22102,\n  \"vocals</w>\": 17666,\n  \"vocation</w>\": 20521,\n  \"vocational</w>\": 33751,\n  \"vod\": 11820,\n  \"vod</w>\": 35854,\n  \"vodaf\": 28436,\n  \"vodafone</w>\": 38695,\n  \"vodka</w>\": 13646,\n  \"vogel</w>\": 44960,\n  \"vogue\": 24418,\n  \"vogue</w>\": 13178,\n  \"voic\": 29185,\n  \"voice\": 13179,\n  \"voice</w>\": 3386,\n  \"voiced</w>\": 34352,\n  \"voiceof\": 44966,\n  \"voiceover</w>\": 41979,\n  \"voices</w>\": 9144,\n  \"void</w>\": 21561,\n  \"voip</w>\": 42762,\n  \"voir</w>\": 16036,\n  \"vol\": 1343,\n  \"vol</w>\": 7945,\n  \"volatile</w>\": 41022,\n  \"volatility</w>\": 32355,\n  \"volcan\": 9916,\n  \"volcanic</w>\": 24072,\n  \"volcano</w>\": 14581,\n  \"volcanoes</w>\": 38055,\n  \"voli</w>\": 40138,\n  \"volk\": 13432,\n  \"volkswag\": 14407,\n  \"volkswagen</w>\": 15342,\n  \"volley\": 7130,\n  \"volley</w>\": 34656,\n  \"volleyball</w>\": 7458,\n  \"volo</w>\": 44791,\n  \"vols</w>\": 20404,\n  \"volt</w>\": 26430,\n  \"volta\": 29879,\n  \"volta</w>\": 33480,\n  \"voltage</w>\": 23118,\n  \"voltron</w>\": 39314,\n  \"volu\": 3563,\n  \"volume</w>\": 8284,\n  \"volumes</w>\": 22651,\n  \"volun\": 3356,\n  \"voluntar\": 48823,\n  \"voluntary</w>\": 23815,\n  \"volunte\": 3556,\n  \"volunteer\": 32331,\n  \"volunteer</w>\": 7114,\n  \"volunteered</w>\": 34000,\n  \"volunteering</w>\": 14902,\n  \"volunteers</w>\": 5939,\n  \"volution</w>\": 24043,\n  \"volved</w>\": 42888,\n  \"volvo\": 39991,\n  \"volvo</w>\": 16906,\n  \"vom\": 24198,\n  \"vomit</w>\": 46485,\n  \"von\": 11269,\n  \"von</w>\": 8497,\n  \"voo\": 19497,\n  \"voodoo</w>\": 26869,\n  \"voor\": 34291,\n  \"voor</w>\": 34464,\n  \"vor\": 8338,\n  \"vor</w>\": 5308,\n  \"vore</w>\": 18215,\n  \"vortex</w>\": 30071,\n  \"vos</w>\": 16863,\n  \"vot</w>\": 48558,\n  \"vote\": 6830,\n  \"vote</w>\": 2187,\n  \"voted</w>\": 6454,\n  \"votel\": 41379,\n  \"voter\": 44474,\n  \"voter</w>\": 14065,\n  \"voters</w>\": 8925,\n  \"votes</w>\": 6693,\n  \"voting</w>\": 5756,\n  \"vou\": 11045,\n  \"voucher</w>\": 18190,\n  \"vouchers</w>\": 23384,\n  \"vous</w>\": 10636,\n  \"vow</w>\": 34787,\n  \"vows</w>\": 21677,\n  \"vox\": 29215,\n  \"vox</w>\": 22692,\n  \"voy\": 10622,\n  \"voy</w>\": 15021,\n  \"voyage</w>\": 16299,\n  \"voyager</w>\": 29669,\n  \"vp\": 32758,\n  \"vp</w>\": 3896,\n  \"vpn</w>\": 38212,\n  \"vr\": 16840,\n  \"vr</w>\": 5921,\n  \"vre\": 44500,\n  \"vre</w>\": 17501,\n  \"vs\": 11385,\n  \"vs</w>\": 1547,\n  \"vsco\": 26752,\n  \"vsco</w>\": 32822,\n  \"vscocam</w>\": 34694,\n  \"vsky</w>\": 37791,\n  \"vss</w>\": 31919,\n  \"vt\": 31732,\n  \"vt</w>\": 10291,\n  \"vu\": 8664,\n  \"vu</w>\": 13230,\n  \"vue\": 43915,\n  \"vue</w>\": 19313,\n  \"vuel\": 31312,\n  \"vuelta</w>\": 43856,\n  \"vuitton</w>\": 26705,\n  \"vul\": 6856,\n  \"vulcan</w>\": 34767,\n  \"vulner\": 11213,\n  \"vulnerability</w>\": 28797,\n  \"vulnerable</w>\": 14332,\n  \"vulture</w>\": 34593,\n  \"vultures</w>\": 47197,\n  \"vv\": 19264,\n  \"vv</w>\": 35686,\n  \"vw\": 28650,\n  \"vw</w>\": 13250,\n  \"vx</w>\": 47644,\n  \"vy\": 11566,\n  \"vy</w>\": 5157,\n  \"w\": 86,\n  \"w</w>\": 342,\n  \"wa\": 869,\n  \"wa</w>\": 2663,\n  \"waa</w>\": 35874,\n  \"wab\": 19893,\n  \"wab</w>\": 36852,\n  \"wac\": 27445,\n  \"wac</w>\": 37947,\n  \"wack\": 22880,\n  \"wack</w>\": 38270,\n  \"wacky</w>\": 34318,\n  \"waco</w>\": 36035,\n  \"wad\": 11133,\n  \"wad</w>\": 30451,\n  \"wada</w>\": 40006,\n  \"wade\": 40237,\n  \"wade</w>\": 14180,\n  \"wadi</w>\": 37253,\n  \"waf\": 17638,\n  \"wafc</w>\": 49086,\n  \"waff\": 13940,\n  \"waffle</w>\": 20375,\n  \"waffles</w>\": 24205,\n  \"wag\": 5764,\n  \"wag</w>\": 19177,\n  \"wage</w>\": 10716,\n  \"wager</w>\": 43430,\n  \"wages</w>\": 19114,\n  \"wagner</w>\": 18081,\n  \"wagon</w>\": 13260,\n  \"wagons</w>\": 47944,\n  \"wags</w>\": 48580,\n  \"wah\": 24812,\n  \"wah</w>\": 18014,\n  \"wahl\": 27500,\n  \"wahlberg</w>\": 35151,\n  \"wahoo</w>\": 47995,\n  \"wai\": 11469,\n  \"wai</w>\": 21569,\n  \"waifu</w>\": 46551,\n  \"waikiki</w>\": 44907,\n  \"wain\": 28358,\n  \"wain</w>\": 20120,\n  \"wainwright</w>\": 45878,\n  \"waist\": 36946,\n  \"waist</w>\": 18459,\n  \"wait\": 10021,\n  \"wait</w>\": 1885,\n  \"waite</w>\": 24272,\n  \"waited</w>\": 18492,\n  \"waiter</w>\": 32946,\n  \"waitin</w>\": 44482,\n  \"waiting</w>\": 2680,\n  \"waitress</w>\": 39760,\n  \"waitrose</w>\": 37164,\n  \"waits</w>\": 21361,\n  \"waiver</w>\": 42866,\n  \"waj</w>\": 49367,\n  \"wak\": 11172,\n  \"wak</w>\": 36015,\n  \"waka</w>\": 42696,\n  \"wake\": 10501,\n  \"wake</w>\": 5731,\n  \"wakefield</w>\": 26358,\n  \"wakes</w>\": 29108,\n  \"wakeup\": 26328,\n  \"wakeup</w>\": 35380,\n  \"wakeupamerica</w>\": 37474,\n  \"waking</w>\": 13025,\n  \"wal\": 1056,\n  \"wal</w>\": 6903,\n  \"wala</w>\": 16468,\n  \"walang</w>\": 49180,\n  \"walcott</w>\": 45744,\n  \"wald\": 46930,\n  \"wald</w>\": 15724,\n  \"walden</w>\": 39311,\n  \"waldo</w>\": 32440,\n  \"waldorf</w>\": 38227,\n  \"wale\": 41247,\n  \"wale</w>\": 20336,\n  \"wales\": 25383,\n  \"wales</w>\": 5110,\n  \"walgreens</w>\": 38490,\n  \"wali\": 37576,\n  \"wali</w>\": 14768,\n  \"walia</w>\": 44455,\n  \"walk\": 8588,\n  \"walk</w>\": 2374,\n  \"walkaway</w>\": 48255,\n  \"walked</w>\": 8667,\n  \"walker\": 24735,\n  \"walker</w>\": 6150,\n  \"walkers</w>\": 23366,\n  \"walkin</w>\": 45792,\n  \"walking\": 12644,\n  \"walking</w>\": 3941,\n  \"walkingdead</w>\": 14948,\n  \"walkout</w>\": 47470,\n  \"walks</w>\": 8192,\n  \"walkway</w>\": 36614,\n  \"wall\": 4316,\n  \"wall</w>\": 2569,\n  \"walla\": 26007,\n  \"walla</w>\": 39982,\n  \"wallabies</w>\": 48926,\n  \"wallace</w>\": 12535,\n  \"wallart</w>\": 36223,\n  \"walled</w>\": 36567,\n  \"waller</w>\": 45340,\n  \"wallet</w>\": 12154,\n  \"wallets</w>\": 38550,\n  \"walleye</w>\": 49099,\n  \"wallis</w>\": 42206,\n  \"wallpaper</w>\": 10560,\n  \"wallpapers</w>\": 29841,\n  \"walls</w>\": 8258,\n  \"wallstreet</w>\": 45341,\n  \"wally</w>\": 26024,\n  \"walmart</w>\": 11972,\n  \"walnut</w>\": 16310,\n  \"walnuts</w>\": 38294,\n  \"walsall</w>\": 42935,\n  \"walsh</w>\": 12856,\n  \"walt\": 23535,\n  \"walt</w>\": 14312,\n  \"waltdisneyworld</w>\": 36505,\n  \"walter\": 31156,\n  \"walter</w>\": 10645,\n  \"walters</w>\": 25532,\n  \"waltham\": 42742,\n  \"waltham</w>\": 45581,\n  \"walton</w>\": 19485,\n  \"waltz</w>\": 35982,\n  \"wam\": 20503,\n  \"wamy</w>\": 46970,\n  \"wan\": 2060,\n  \"wan</w>\": 4557,\n  \"wana</w>\": 30830,\n  \"wand\": 14636,\n  \"wand</w>\": 28559,\n  \"wanda</w>\": 25070,\n  \"wander\": 12985,\n  \"wander</w>\": 24473,\n  \"wandered</w>\": 46593,\n  \"wanderers</w>\": 27540,\n  \"wandering</w>\": 22597,\n  \"wanderlust</w>\": 16129,\n  \"wane</w>\": 27459,\n  \"wang\": 19731,\n  \"wang</w>\": 11900,\n  \"wani</w>\": 21674,\n  \"wankers</w>\": 42189,\n  \"wann\": 23622,\n  \"wanna\": 35940,\n  \"wanna</w>\": 3836,\n  \"wannabe</w>\": 40730,\n  \"wannaone</w>\": 44832,\n  \"want\": 18356,\n  \"want</w>\": 1280,\n  \"wanted</w>\": 3146,\n  \"wanting</w>\": 12801,\n  \"wants</w>\": 3107,\n  \"wap\": 27393,\n  \"wap</w>\": 30368,\n  \"waq\": 47512,\n  \"war\": 984,\n  \"war</w>\": 2238,\n  \"wara</w>\": 21631,\n  \"warbler</w>\": 33891,\n  \"warcraft</w>\": 13660,\n  \"ward\": 7728,\n  \"ward</w>\": 1460,\n  \"warden</w>\": 27798,\n  \"wardly</w>\": 30780,\n  \"wardro\": 14247,\n  \"wardrobe</w>\": 15020,\n  \"wards</w>\": 2593,\n  \"ware\": 7416,\n  \"ware</w>\": 4476,\n  \"wareagle</w>\": 35716,\n  \"warehouse</w>\": 13054,\n  \"wareness\": 41601,\n  \"wareness</w>\": 35870,\n  \"wares</w>\": 30692,\n  \"warfare</w>\": 15739,\n  \"warhammer</w>\": 26832,\n  \"warhol</w>\": 27554,\n  \"wari</w>\": 20977,\n  \"wark\": 46346,\n  \"wark</w>\": 15164,\n  \"warlock</w>\": 42455,\n  \"warm\": 14725,\n  \"warm</w>\": 3616,\n  \"warmed</w>\": 36695,\n  \"warmer</w>\": 14328,\n  \"warmest</w>\": 30910,\n  \"warming</w>\": 8606,\n  \"warmly</w>\": 45322,\n  \"warmongers</w>\": 33205,\n  \"warms</w>\": 32917,\n  \"warmth</w>\": 19636,\n  \"warmup</w>\": 29904,\n  \"warmups</w>\": 44094,\n  \"warn</w>\": 19360,\n  \"warned</w>\": 16409,\n  \"warner\": 28564,\n  \"warner</w>\": 13402,\n  \"warning</w>\": 4994,\n  \"warnings</w>\": 18098,\n  \"warns</w>\": 14086,\n  \"waron\": 38947,\n  \"warp</w>\": 32411,\n  \"warped</w>\": 32125,\n  \"warran\": 17392,\n  \"warrant</w>\": 22554,\n  \"warrants</w>\": 45677,\n  \"warranty</w>\": 23999,\n  \"warren\": 23143,\n  \"warren</w>\": 9234,\n  \"warri\": 4109,\n  \"warrington</w>\": 31203,\n  \"warrior\": 18998,\n  \"warrior</w>\": 8148,\n  \"warriors</w>\": 6421,\n  \"wars</w>\": 3931,\n  \"warsaw</w>\": 21072,\n  \"warship</w>\": 47846,\n  \"wart\": 43535,\n  \"wart</w>\": 7346,\n  \"wartime</w>\": 42998,\n  \"warts</w>\": 21781,\n  \"warwick\": 23081,\n  \"warwick</w>\": 22215,\n  \"warwickshire</w>\": 36766,\n  \"wary</w>\": 36213,\n  \"was\": 3398,\n  \"was</w>\": 739,\n  \"wasabi</w>\": 47334,\n  \"wash\": 3363,\n  \"wash</w>\": 7810,\n  \"washed</w>\": 14092,\n  \"washer</w>\": 24085,\n  \"washes</w>\": 38950,\n  \"washing</w>\": 13029,\n  \"washington\": 16774,\n  \"washington</w>\": 4365,\n  \"washingtondc</w>\": 40225,\n  \"washingtonpost</w>\": 28426,\n  \"wasn</w>\": 5044,\n  \"wasnt</w>\": 29607,\n  \"wasp</w>\": 24889,\n  \"wasps</w>\": 35300,\n  \"wassup</w>\": 45708,\n  \"wast\": 28886,\n  \"waste\": 18157,\n  \"waste</w>\": 6065,\n  \"wasted</w>\": 18278,\n  \"wasteland</w>\": 44035,\n  \"wastewater</w>\": 34463,\n  \"wasting</w>\": 25577,\n  \"wat\": 800,\n  \"wat</w>\": 10621,\n  \"wata</w>\": 42509,\n  \"watch\": 7046,\n  \"watch</w>\": 1239,\n  \"watchdog</w>\": 35303,\n  \"watched</w>\": 5775,\n  \"watcher</w>\": 35971,\n  \"watchers</w>\": 28443,\n  \"watches</w>\": 9521,\n  \"watchin</w>\": 32432,\n  \"watching</w>\": 2113,\n  \"water\": 2505,\n  \"water</w>\": 1573,\n  \"watercolor</w>\": 14211,\n  \"watercolour</w>\": 18377,\n  \"waterfall</w>\": 16403,\n  \"waterfalls</w>\": 26692,\n  \"waterford</w>\": 24448,\n  \"waterfront</w>\": 16605,\n  \"waterhouse</w>\": 45072,\n  \"watering</w>\": 19871,\n  \"waterloo</w>\": 17465,\n  \"watermelon</w>\": 19889,\n  \"waterproof</w>\": 17613,\n  \"waters</w>\": 7753,\n  \"watershed</w>\": 33204,\n  \"waterstones</w>\": 45014,\n  \"waterways</w>\": 37395,\n  \"watford</w>\": 23162,\n  \"watfordfc</w>\": 37328,\n  \"wati</w>\": 27966,\n  \"watkins</w>\": 22539,\n  \"watson\": 35490,\n  \"watson</w>\": 9294,\n  \"watt\": 22899,\n  \"watt</w>\": 15805,\n  \"wattpad</w>\": 32351,\n  \"watts</w>\": 14750,\n  \"wau\": 9479,\n  \"wav\": 6054,\n  \"wave\": 17530,\n  \"wave</w>\": 4535,\n  \"waved</w>\": 44657,\n  \"waver\": 25997,\n  \"waves</w>\": 7882,\n  \"waving</w>\": 26545,\n  \"wavy</w>\": 31941,\n  \"waw\": 22039,\n  \"wawrinka</w>\": 48414,\n  \"wawx</w>\": 47387,\n  \"wax\": 18789,\n  \"wax</w>\": 11910,\n  \"waxing</w>\": 38781,\n  \"way\": 3079,\n  \"way</w>\": 923,\n  \"wayback\": 47822,\n  \"wayne\": 23632,\n  \"wayne</w>\": 7003,\n  \"ways</w>\": 1248,\n  \"waz\": 20889,\n  \"waz</w>\": 48835,\n  \"wb\": 10726,\n  \"wb</w>\": 12377,\n  \"wba</w>\": 22675,\n  \"wbb</w>\": 14482,\n  \"wbc</w>\": 26745,\n  \"wbo</w>\": 49053,\n  \"wbz</w>\": 35471,\n  \"wc\": 4842,\n  \"wc</w>\": 5755,\n  \"wcc\": 47166,\n  \"wcc</w>\": 34926,\n  \"wcpo</w>\": 46624,\n  \"wcs</w>\": 39916,\n  \"wcvb</w>\": 32709,\n  \"wcw</w>\": 9041,\n  \"wd\": 15998,\n  \"wd</w>\": 7494,\n  \"wdw</w>\": 40334,\n  \"we\": 598,\n  \"we</w>\": 649,\n  \"wea\": 37146,\n  \"wea</w>\": 47301,\n  \"weak\": 12128,\n  \"weak</w>\": 10128,\n  \"weaker</w>\": 39735,\n  \"weakness</w>\": 21448,\n  \"weaknesses</w>\": 43487,\n  \"weal\": 14759,\n  \"wealth\": 33150,\n  \"wealth</w>\": 7904,\n  \"wealthy</w>\": 22617,\n  \"weap\": 6156,\n  \"weapon\": 42612,\n  \"weapon</w>\": 10537,\n  \"weapons</w>\": 10007,\n  \"wear\": 12206,\n  \"wear</w>\": 2839,\n  \"wearab\": 22983,\n  \"wearable\": 44943,\n  \"wearable</w>\": 24973,\n  \"wearables</w>\": 30319,\n  \"weare\": 4264,\n  \"weare</w>\": 27867,\n  \"weareall\": 45980,\n  \"wearec\": 43620,\n  \"wearen\": 45635,\n  \"weareone\": 16149,\n  \"weareoneexo</w>\": 16448,\n  \"wearethe\": 40242,\n  \"wearing</w>\": 3309,\n  \"wears</w>\": 11869,\n  \"weary</w>\": 38766,\n  \"weasel</w>\": 44308,\n  \"weather\": 8808,\n  \"weather</w>\": 2237,\n  \"weathercee</w>\": 44980,\n  \"weatherchannel</w>\": 42138,\n  \"weav\": 22260,\n  \"weave</w>\": 22450,\n  \"weaver</w>\": 20297,\n  \"weaving</w>\": 27131,\n  \"web\": 2055,\n  \"web</w>\": 4601,\n  \"webb</w>\": 15708,\n  \"webber</w>\": 34248,\n  \"webcam\": 24211,\n  \"webcam</w>\": 22589,\n  \"webcamtoy</w>\": 27719,\n  \"webcast</w>\": 28256,\n  \"webcomic</w>\": 34286,\n  \"webcomics</w>\": 39811,\n  \"webdesign</w>\": 20470,\n  \"webdev</w>\": 37000,\n  \"webdevelopment</w>\": 47553,\n  \"weber</w>\": 20179,\n  \"webin\": 8460,\n  \"webinar</w>\": 8921,\n  \"webinars</w>\": 47755,\n  \"webpage</w>\": 46964,\n  \"webs</w>\": 32829,\n  \"webseries</w>\": 44819,\n  \"website</w>\": 3364,\n  \"websites</w>\": 19278,\n  \"webster</w>\": 19471,\n  \"websummit</w>\": 48069,\n  \"wec</w>\": 33152,\n  \"wechat</w>\": 46124,\n  \"wed\": 1687,\n  \"wed</w>\": 3478,\n  \"wedd\": 7576,\n  \"wedding\": 11204,\n  \"wedding</w>\": 3101,\n  \"weddings</w>\": 15964,\n  \"wedge</w>\": 21446,\n  \"wedges</w>\": 33179,\n  \"wedne\": 2380,\n  \"wednesday\": 9311,\n  \"wednesday</w>\": 2689,\n  \"wednesdaymotivation</w>\": 37860,\n  \"wednesdays</w>\": 24943,\n  \"wednesdaywisdom</w>\": 11445,\n  \"wedo</w>\": 43432,\n  \"weds</w>\": 19107,\n  \"wee\": 716,\n  \"wee</w>\": 8288,\n  \"weed\": 36935,\n  \"weed</w>\": 8015,\n  \"weeds</w>\": 26326,\n  \"week\": 1286,\n  \"week</w>\": 994,\n  \"weekday</w>\": 29244,\n  \"weekdays</w>\": 44330,\n  \"weekend\": 17205,\n  \"weekend</w>\": 1456,\n  \"weekender</w>\": 36547,\n  \"weekends</w>\": 14564,\n  \"weekly\": 34652,\n  \"weekly</w>\": 5885,\n  \"weeknd</w>\": 29925,\n  \"weeks</w>\": 2898,\n  \"weeksary</w>\": 24628,\n  \"ween\": 17517,\n  \"ween</w>\": 1599,\n  \"weep</w>\": 39270,\n  \"weeping</w>\": 36629,\n  \"weer</w>\": 32491,\n  \"weet</w>\": 17742,\n  \"weets</w>\": 13454,\n  \"wef</w>\": 23313,\n  \"weg\": 47867,\n  \"weg</w>\": 47561,\n  \"wego\": 44784,\n  \"wego</w>\": 28220,\n  \"weh\": 48458,\n  \"weh</w>\": 40313,\n  \"weho</w>\": 47798,\n  \"wei\": 6958,\n  \"wei</w>\": 20952,\n  \"weibo</w>\": 20613,\n  \"weigh\": 10565,\n  \"weigh</w>\": 17346,\n  \"weighed</w>\": 33210,\n  \"weighing</w>\": 24455,\n  \"weighs</w>\": 20481,\n  \"weight\": 12723,\n  \"weight</w>\": 3868,\n  \"weighted</w>\": 43179,\n  \"weightlifting</w>\": 36164,\n  \"weightloss</w>\": 20359,\n  \"weights</w>\": 21374,\n  \"weil</w>\": 43720,\n  \"weiler</w>\": 42203,\n  \"wein\": 29134,\n  \"wein</w>\": 37684,\n  \"weiner</w>\": 38822,\n  \"weinstein</w>\": 34367,\n  \"weir\": 11299,\n  \"weir</w>\": 25517,\n  \"weird\": 27981,\n  \"weird</w>\": 5613,\n  \"weirdest</w>\": 29482,\n  \"weirdo</w>\": 32476,\n  \"weis\": 26251,\n  \"weiser</w>\": 34833,\n  \"weiss</w>\": 24794,\n  \"wel\": 1267,\n  \"wel</w>\": 8042,\n  \"welch</w>\": 25820,\n  \"welcom\": 11578,\n  \"welcome\": 18318,\n  \"welcome</w>\": 1881,\n  \"welcomed</w>\": 12590,\n  \"welcomes</w>\": 9304,\n  \"welcometo\": 47511,\n  \"welcoming</w>\": 8775,\n  \"weld</w>\": 39776,\n  \"welding</w>\": 24956,\n  \"welfare</w>\": 12129,\n  \"well\": 3277,\n  \"well</w>\": 1123,\n  \"wellbeing</w>\": 14273,\n  \"weller</w>\": 40921,\n  \"welling</w>\": 49165,\n  \"wellington</w>\": 15389,\n  \"wellness\": 40574,\n  \"wellness</w>\": 9904,\n  \"wells\": 42705,\n  \"wells</w>\": 9804,\n  \"welove\": 13573,\n  \"welp</w>\": 28391,\n  \"wels</w>\": 20852,\n  \"welsh\": 19173,\n  \"welsh</w>\": 10977,\n  \"welt</w>\": 38595,\n  \"welter\": 37115,\n  \"welterweight</w>\": 39617,\n  \"wemb\": 15213,\n  \"wembley</w>\": 16579,\n  \"wen\": 6590,\n  \"wen</w>\": 11278,\n  \"wend\": 15166,\n  \"wendell</w>\": 42091,\n  \"wendy\": 31616,\n  \"wendy</w>\": 14074,\n  \"wenger</w>\": 21105,\n  \"went\": 18633,\n  \"went</w>\": 2437,\n  \"wentworth</w>\": 36423,\n  \"wentz</w>\": 39179,\n  \"wer\": 6316,\n  \"wer</w>\": 2980,\n  \"were\": 15461,\n  \"were</w>\": 1365,\n  \"wered</w>\": 6605,\n  \"weren</w>\": 13611,\n  \"werewolf</w>\": 32001,\n  \"werk</w>\": 30176,\n  \"werner</w>\": 29917,\n  \"wers</w>\": 7110,\n  \"wes\": 18620,\n  \"wes</w>\": 14738,\n  \"wesle\": 29606,\n  \"wesley</w>\": 17332,\n  \"wesleyan</w>\": 32509,\n  \"wesome</w>\": 33292,\n  \"wess</w>\": 44431,\n  \"west\": 2973,\n  \"west</w>\": 1593,\n  \"westbound</w>\": 29208,\n  \"westbrook</w>\": 26948,\n  \"westchester</w>\": 36675,\n  \"westcoast</w>\": 44610,\n  \"westend</w>\": 44815,\n  \"wester\": 9846,\n  \"western\": 17079,\n  \"western</w>\": 4463,\n  \"westfield</w>\": 32309,\n  \"westh\": 36798,\n  \"westin</w>\": 43232,\n  \"westlake</w>\": 41535,\n  \"westminster</w>\": 15158,\n  \"weston</w>\": 22771,\n  \"westside</w>\": 33762,\n  \"westwood</w>\": 26371,\n  \"westworld</w>\": 42287,\n  \"wet\": 12406,\n  \"wet</w>\": 6682,\n  \"weta</w>\": 40946,\n  \"wethenorth</w>\": 45281,\n  \"wethepeople</w>\": 48030,\n  \"wether\": 33794,\n  \"wether</w>\": 48405,\n  \"wetland</w>\": 37357,\n  \"wetlands</w>\": 26547,\n  \"wett</w>\": 41971,\n  \"wetter</w>\": 43957,\n  \"wewant\": 39280,\n  \"wewill\": 37241,\n  \"wex\": 17234,\n  \"wexford</w>\": 29876,\n  \"wexmondays</w>\": 49042,\n  \"wey\": 30376,\n  \"wey</w>\": 19781,\n  \"weymouth</w>\": 41433,\n  \"wf\": 14576,\n  \"wf</w>\": 22313,\n  \"wfa\": 44606,\n  \"wfc</w>\": 36431,\n  \"wfp</w>\": 35193,\n  \"wftv</w>\": 47075,\n  \"wg\": 21091,\n  \"wg</w>\": 25857,\n  \"wga</w>\": 32354,\n  \"wgn\": 48828,\n  \"wh\": 573,\n  \"wh</w>\": 13844,\n  \"wha\": 18994,\n  \"wha</w>\": 25884,\n  \"whal\": 38967,\n  \"whale\": 37083,\n  \"whale</w>\": 11650,\n  \"whales</w>\": 17722,\n  \"wham\": 42506,\n  \"whar\": 15517,\n  \"wharf</w>\": 22452,\n  \"wharton</w>\": 43320,\n  \"what\": 4268,\n  \"what</w>\": 768,\n  \"whatcha</w>\": 37160,\n  \"whate\": 6695,\n  \"whatever</w>\": 6743,\n  \"whati\": 23500,\n  \"whats\": 9263,\n  \"whats</w>\": 13084,\n  \"whatsapp</w>\": 10119,\n  \"whatsoever</w>\": 39928,\n  \"whatson\": 35632,\n  \"whatyou\": 30508,\n  \"whe\": 2009,\n  \"whead</w>\": 34583,\n  \"wheat\": 20505,\n  \"wheat</w>\": 10303,\n  \"wheaton</w>\": 46933,\n  \"wheel\": 7360,\n  \"wheel</w>\": 6744,\n  \"wheelchair</w>\": 17713,\n  \"wheeler</w>\": 18405,\n  \"wheeling</w>\": 34839,\n  \"wheels</w>\": 8025,\n  \"whel\": 9792,\n  \"whelan</w>\": 40715,\n  \"when\": 8753,\n  \"when</w>\": 827,\n  \"whenever</w>\": 10500,\n  \"where\": 7052,\n  \"where</w>\": 1234,\n  \"whereabouts</w>\": 47808,\n  \"whereas</w>\": 42234,\n  \"wheres\": 46345,\n  \"wherever</w>\": 14103,\n  \"whereyou\": 46837,\n  \"whether</w>\": 5903,\n  \"whew</w>\": 39016,\n  \"whey</w>\": 34556,\n  \"whi\": 4295,\n  \"whi</w>\": 33129,\n  \"which</w>\": 1448,\n  \"whiche\": 48719,\n  \"whichever</w>\": 49138,\n  \"whil\": 8499,\n  \"while</w>\": 1519,\n  \"whilst</w>\": 8596,\n  \"whim\": 27766,\n  \"whimsical</w>\": 42282,\n  \"whip</w>\": 14412,\n  \"whipped</w>\": 22323,\n  \"whipping</w>\": 41567,\n  \"whir\": 20873,\n  \"whirl\": 30962,\n  \"whirlwind</w>\": 47771,\n  \"whis\": 6024,\n  \"whiskey\": 41381,\n  \"whiskey</w>\": 11610,\n  \"whisky\": 37567,\n  \"whisky</w>\": 12599,\n  \"whisp\": 21986,\n  \"whispe\": 30356,\n  \"whisper</w>\": 27616,\n  \"whisperer</w>\": 41368,\n  \"whispering</w>\": 42599,\n  \"whispers</w>\": 29133,\n  \"whist\": 13640,\n  \"whistle\": 23972,\n  \"whistle</w>\": 19746,\n  \"whistleblower</w>\": 40410,\n  \"whistler</w>\": 29633,\n  \"whit\": 4398,\n  \"whit</w>\": 31498,\n  \"whitaker</w>\": 35851,\n  \"whitby</w>\": 30858,\n  \"white\": 4699,\n  \"white</w>\": 1579,\n  \"whiteboard</w>\": 40839,\n  \"whitec\": 24575,\n  \"whitehall</w>\": 42827,\n  \"whitehead</w>\": 43560,\n  \"whitehouse</w>\": 20776,\n  \"whitening</w>\": 35540,\n  \"whitepaper</w>\": 42713,\n  \"whites\": 35886,\n  \"whites</w>\": 18835,\n  \"whitesox</w>\": 28816,\n  \"whitewater</w>\": 49350,\n  \"whitfield</w>\": 48404,\n  \"whitley</w>\": 40564,\n  \"whitman</w>\": 32394,\n  \"whitney\": 43021,\n  \"whitney</w>\": 18048,\n  \"whitt\": 33784,\n  \"whittaker</w>\": 47595,\n  \"whl</w>\": 25801,\n  \"who\": 2969,\n  \"who</w>\": 822,\n  \"whoa</w>\": 16943,\n  \"whoever</w>\": 11137,\n  \"whois\": 41884,\n  \"whole\": 10360,\n  \"whole</w>\": 2954,\n  \"wholefoods</w>\": 42840,\n  \"wholesale</w>\": 18306,\n  \"wholesome</w>\": 35959,\n  \"whom\": 38158,\n  \"whom</w>\": 12873,\n  \"whoo\": 20003,\n  \"whoo</w>\": 49290,\n  \"whoop</w>\": 22060,\n  \"whoops</w>\": 28433,\n  \"whopping</w>\": 34384,\n  \"whore</w>\": 31690,\n  \"whos\": 41460,\n  \"whos</w>\": 27130,\n  \"whose</w>\": 6933,\n  \"whouse</w>\": 45927,\n  \"whs</w>\": 26292,\n  \"wht</w>\": 32470,\n  \"whufc</w>\": 31695,\n  \"whun\": 18272,\n  \"why\": 11040,\n  \"why</w>\": 1182,\n  \"whyte</w>\": 42386,\n  \"wi\": 820,\n  \"wi</w>\": 5585,\n  \"wib</w>\": 45303,\n  \"wic\": 7834,\n  \"wich\": 9759,\n  \"wich</w>\": 5238,\n  \"wichita</w>\": 22566,\n  \"wick\": 6798,\n  \"wick</w>\": 6479,\n  \"wicked\": 32579,\n  \"wicked</w>\": 12825,\n  \"wicker</w>\": 38096,\n  \"wicket</w>\": 19180,\n  \"wickets</w>\": 22110,\n  \"wicklow</w>\": 39039,\n  \"wicz</w>\": 30121,\n  \"wid\": 11886,\n  \"wid</w>\": 20886,\n  \"wide\": 19341,\n  \"wide</w>\": 3184,\n  \"widely</w>\": 16195,\n  \"widening</w>\": 46598,\n  \"wider</w>\": 21263,\n  \"widesp\": 20598,\n  \"widespread</w>\": 21258,\n  \"widget</w>\": 43906,\n  \"wido\": 28068,\n  \"widow</w>\": 19949,\n  \"widows</w>\": 42129,\n  \"width</w>\": 23571,\n  \"wie\": 21378,\n  \"wie</w>\": 9131,\n  \"wielding</w>\": 47272,\n  \"wien</w>\": 38131,\n  \"wiener</w>\": 40567,\n  \"wies\": 42788,\n  \"wif</w>\": 37572,\n  \"wife</w>\": 3607,\n  \"wifey</w>\": 35282,\n  \"wifi</w>\": 11026,\n  \"wig\": 23690,\n  \"wig</w>\": 12216,\n  \"wigan</w>\": 23130,\n  \"wiggins</w>\": 32329,\n  \"wiggle</w>\": 47812,\n  \"wight\": 41278,\n  \"wight</w>\": 15545,\n  \"wigs</w>\": 31207,\n  \"wii</w>\": 8005,\n  \"wiiu</w>\": 40980,\n  \"wiki\": 10373,\n  \"wiki</w>\": 24265,\n  \"wikileaks</w>\": 28731,\n  \"wikipedia</w>\": 15176,\n  \"wil\": 1352,\n  \"wil</w>\": 20581,\n  \"wilbur</w>\": 43069,\n  \"wilcox</w>\": 43231,\n  \"wild\": 2780,\n  \"wild</w>\": 3220,\n  \"wildatlantic\": 35500,\n  \"wildatlanticway</w>\": 35776,\n  \"wildcard</w>\": 37360,\n  \"wildcat\": 49077,\n  \"wildcat</w>\": 25870,\n  \"wildcats</w>\": 15909,\n  \"wilde</w>\": 23498,\n  \"wilder\": 14343,\n  \"wilder</w>\": 23499,\n  \"wilderness</w>\": 16506,\n  \"wildest</w>\": 43028,\n  \"wildfire</w>\": 22788,\n  \"wildfires</w>\": 29184,\n  \"wildflower\": 27628,\n  \"wildflower</w>\": 33181,\n  \"wildflowerhour</w>\": 31302,\n  \"wildflowers</w>\": 29136,\n  \"wildlife\": 13298,\n  \"wildlife</w>\": 5250,\n  \"wildlifephotography</w>\": 32307,\n  \"wildlifewednesday</w>\": 48537,\n  \"wildly</w>\": 35981,\n  \"wildoz</w>\": 40113,\n  \"wiley</w>\": 32747,\n  \"wilhelm</w>\": 39696,\n  \"wilkes</w>\": 39548,\n  \"wilkins</w>\": 36986,\n  \"wilkinson</w>\": 26797,\n  \"will\": 5062,\n  \"will</w>\": 751,\n  \"willam\": 43276,\n  \"willard</w>\": 44920,\n  \"wille\": 48739,\n  \"willem</w>\": 38044,\n  \"willi\": 2256,\n  \"william\": 8420,\n  \"william</w>\": 4705,\n  \"williams\": 38452,\n  \"williams</w>\": 4075,\n  \"williamsburg</w>\": 30683,\n  \"williamson</w>\": 20793,\n  \"willie</w>\": 13907,\n  \"willing\": 34160,\n  \"willing</w>\": 11718,\n  \"willingness</w>\": 40573,\n  \"willis</w>\": 18491,\n  \"willow\": 33887,\n  \"willow</w>\": 15665,\n  \"wills</w>\": 26913,\n  \"willy\": 34502,\n  \"willy</w>\": 19599,\n  \"wilmington</w>\": 28052,\n  \"wilms\": 47879,\n  \"wilshere</w>\": 48359,\n  \"wilson\": 23629,\n  \"wilson</w>\": 5622,\n  \"wilt\": 23394,\n  \"wilt</w>\": 47357,\n  \"wilton</w>\": 46638,\n  \"wiltshire</w>\": 28025,\n  \"wim\": 8662,\n  \"wim</w>\": 27580,\n  \"wimble\": 11752,\n  \"wimbledon</w>\": 12229,\n  \"win\": 831,\n  \"win</w>\": 1225,\n  \"winchester</w>\": 20647,\n  \"wind\": 6812,\n  \"wind</w>\": 3630,\n  \"winder\": 44454,\n  \"winder</w>\": 46245,\n  \"winding</w>\": 22390,\n  \"windmill</w>\": 34084,\n  \"windo\": 3110,\n  \"window\": 26675,\n  \"window</w>\": 4879,\n  \"windows</w>\": 5437,\n  \"winds\": 12668,\n  \"winds</w>\": 7012,\n  \"windshield</w>\": 33002,\n  \"windsor\": 44322,\n  \"windsor</w>\": 12884,\n  \"windy</w>\": 13446,\n  \"wine\": 7375,\n  \"wine</w>\": 2604,\n  \"winelover</w>\": 26357,\n  \"winemaker</w>\": 41588,\n  \"wineoclock</w>\": 43846,\n  \"wineries</w>\": 49349,\n  \"winery</w>\": 15500,\n  \"wines</w>\": 8263,\n  \"winetasting</w>\": 41288,\n  \"winewednesday</w>\": 35447,\n  \"wing\": 8141,\n  \"wing</w>\": 1340,\n  \"winged</w>\": 24993,\n  \"winger</w>\": 22727,\n  \"winget</w>\": 44578,\n  \"wings</w>\": 5178,\n  \"wink\": 34455,\n  \"wink</w>\": 25859,\n  \"winkle</w>\": 36430,\n  \"winn</w>\": 38104,\n  \"winne\": 46273,\n  \"winner\": 32961,\n  \"winner</w>\": 2520,\n  \"winners</w>\": 4320,\n  \"winni\": 13018,\n  \"winnie</w>\": 29022,\n  \"winning\": 42099,\n  \"winning</w>\": 2577,\n  \"winnings</w>\": 46490,\n  \"winnipeg</w>\": 14369,\n  \"winona</w>\": 49202,\n  \"wins\": 46839,\n  \"wins</w>\": 2718,\n  \"winslow</w>\": 39658,\n  \"winston</w>\": 14848,\n  \"winter\": 7340,\n  \"winter</w>\": 2541,\n  \"winters</w>\": 21587,\n  \"wintry</w>\": 39504,\n  \"wip</w>\": 10447,\n  \"wipe</w>\": 26761,\n  \"wiped</w>\": 31822,\n  \"wipes</w>\": 33463,\n  \"wir\": 16849,\n  \"wir</w>\": 44838,\n  \"wire\": 7558,\n  \"wire</w>\": 7794,\n  \"wired</w>\": 18935,\n  \"wireless</w>\": 9103,\n  \"wires</w>\": 24311,\n  \"wiring</w>\": 36434,\n  \"wirral</w>\": 34675,\n  \"wis\": 3392,\n  \"wis</w>\": 20405,\n  \"wiscon\": 9857,\n  \"wisconsin</w>\": 10265,\n  \"wisdom\": 42474,\n  \"wisdom</w>\": 5425,\n  \"wise\": 19116,\n  \"wise</w>\": 5558,\n  \"wisely</w>\": 26173,\n  \"wiser</w>\": 44859,\n  \"wish\": 11328,\n  \"wish</w>\": 2412,\n  \"wished</w>\": 25883,\n  \"wishes</w>\": 6045,\n  \"wishing</w>\": 5307,\n  \"wishlist</w>\": 31969,\n  \"wit\": 584,\n  \"wit</w>\": 8531,\n  \"witch\": 20139,\n  \"witch</w>\": 10083,\n  \"witchcraft</w>\": 35065,\n  \"witcher</w>\": 33684,\n  \"witches</w>\": 21673,\n  \"with\": 1435,\n  \"with</w>\": 593,\n  \"withdra\": 24696,\n  \"withdraw</w>\": 31670,\n  \"withdrawal</w>\": 25765,\n  \"withdrawn</w>\": 46687,\n  \"withdraws</w>\": 48637,\n  \"wither\": 39655,\n  \"witherspoon</w>\": 45409,\n  \"within</w>\": 4154,\n  \"withme</w>\": 44670,\n  \"without\": 32836,\n  \"without</w>\": 2193,\n  \"withstand</w>\": 42236,\n  \"withthe\": 36872,\n  \"withus</w>\": 30572,\n  \"withyou</w>\": 30351,\n  \"witne\": 12096,\n  \"witness</w>\": 8793,\n  \"witnessed</w>\": 20187,\n  \"witnesses</w>\": 22778,\n  \"witnessing</w>\": 33618,\n  \"wits</w>\": 30938,\n  \"witt\": 38194,\n  \"witt</w>\": 17168,\n  \"witter</w>\": 31597,\n  \"witty</w>\": 29970,\n  \"witz\": 44186,\n  \"witz</w>\": 13265,\n  \"wiv</w>\": 48925,\n  \"wives</w>\": 14378,\n  \"wiwx</w>\": 44461,\n  \"wiz\": 7730,\n  \"wiz</w>\": 23178,\n  \"wizar\": 49121,\n  \"wizard\": 30490,\n  \"wizard</w>\": 14295,\n  \"wizards</w>\": 19140,\n  \"wizkid</w>\": 40146,\n  \"wj\": 19739,\n  \"wj</w>\": 35453,\n  \"wk\": 11512,\n  \"wk</w>\": 11528,\n  \"wkend</w>\": 42336,\n  \"wknd</w>\": 20851,\n  \"wks</w>\": 25508,\n  \"wku</w>\": 43377,\n  \"wl\": 13299,\n  \"wl</w>\": 9613,\n  \"wm\": 20268,\n  \"wm</w>\": 15790,\n  \"wn\": 1186,\n  \"wn</w>\": 757,\n  \"wnba</w>\": 32358,\n  \"wned</w>\": 8628,\n  \"wns</w>\": 12950,\n  \"wnt</w>\": 22484,\n  \"wny</w>\": 24833,\n  \"wo\": 1613,\n  \"wo</w>\": 11132,\n  \"woah</w>\": 17751,\n  \"wob\": 35984,\n  \"woc</w>\": 39011,\n  \"wod</w>\": 41522,\n  \"woes</w>\": 27860,\n  \"wof\": 45671,\n  \"woj\": 48931,\n  \"wok</w>\": 28912,\n  \"woke</w>\": 9331,\n  \"woken</w>\": 43697,\n  \"woking</w>\": 43931,\n  \"wol\": 2798,\n  \"wol</w>\": 48622,\n  \"wold</w>\": 42399,\n  \"wolf\": 9453,\n  \"wolf</w>\": 5916,\n  \"wolfe</w>\": 24989,\n  \"wolff</w>\": 34369,\n  \"wolfgang</w>\": 34061,\n  \"wolfpack</w>\": 30887,\n  \"wolve\": 45101,\n  \"wolver\": 14334,\n  \"wolverhampton</w>\": 34518,\n  \"wolverine</w>\": 23353,\n  \"wolverines</w>\": 42003,\n  \"wolves</w>\": 9372,\n  \"wom\": 1087,\n  \"womack</w>\": 48980,\n  \"woman\": 15716,\n  \"woman</w>\": 2308,\n  \"womanc\": 35630,\n  \"womancrush\": 37721,\n  \"womancrushwednesday</w>\": 39714,\n  \"womanin\": 30562,\n  \"womaninbiz</w>\": 36482,\n  \"womb</w>\": 37023,\n  \"women\": 3648,\n  \"women</w>\": 1507,\n  \"womenin\": 13062,\n  \"womeninscience</w>\": 41343,\n  \"womeninstem</w>\": 29380,\n  \"womenintech</w>\": 31470,\n  \"womenof\": 48421,\n  \"womens\": 12822,\n  \"womens</w>\": 14408,\n  \"womensart</w>\": 38548,\n  \"womensday</w>\": 13956,\n  \"womenshi\": 22887,\n  \"womenshistorymonth</w>\": 24982,\n  \"womensmarch</w>\": 30102,\n  \"won\": 1528,\n  \"won</w>\": 1749,\n  \"wonder\": 2070,\n  \"wonder</w>\": 3936,\n  \"wondercon</w>\": 46944,\n  \"wondered</w>\": 15550,\n  \"wonderful</w>\": 2582,\n  \"wonderfully</w>\": 23245,\n  \"wondering</w>\": 8360,\n  \"wonderland</w>\": 13874,\n  \"wonders</w>\": 14048,\n  \"wonderwoman</w>\": 31000,\n  \"wondo</w>\": 38402,\n  \"wondr\": 46771,\n  \"wong</w>\": 17876,\n  \"wonka</w>\": 43463,\n  \"wont\": 43174,\n  \"wont</w>\": 15952,\n  \"woo\": 1867,\n  \"woo</w>\": 9322,\n  \"wood\": 3269,\n  \"wood</w>\": 1704,\n  \"woodbridge</w>\": 49074,\n  \"wooden\": 48226,\n  \"wooden</w>\": 9057,\n  \"woodland\": 44314,\n  \"woodland</w>\": 17447,\n  \"woodlands</w>\": 32430,\n  \"woodley</w>\": 40566,\n  \"woodpecker</w>\": 32684,\n  \"woods</w>\": 6267,\n  \"woodson</w>\": 48967,\n  \"woodstock</w>\": 29486,\n  \"woodward</w>\": 27419,\n  \"woodwork</w>\": 47386,\n  \"woodworking</w>\": 29267,\n  \"woody\": 38627,\n  \"woody</w>\": 17144,\n  \"woof\": 34234,\n  \"woof</w>\": 24028,\n  \"woohoo</w>\": 20172,\n  \"wook</w>\": 29192,\n  \"wool\": 9967,\n  \"wool</w>\": 13283,\n  \"woolf</w>\": 43728,\n  \"woolly</w>\": 47722,\n  \"woon</w>\": 33126,\n  \"wooo</w>\": 43217,\n  \"woop</w>\": 31884,\n  \"woot</w>\": 22466,\n  \"wor\": 641,\n  \"worcester\": 22172,\n  \"worcester</w>\": 19580,\n  \"worcestershire</w>\": 38440,\n  \"worcestershirehour</w>\": 43644,\n  \"word\": 8272,\n  \"word</w>\": 2653,\n  \"wordof\": 33500,\n  \"wordoftheday</w>\": 43594,\n  \"wordpress</w>\": 15193,\n  \"words\": 31007,\n  \"words</w>\": 2709,\n  \"wore</w>\": 8953,\n  \"work\": 1636,\n  \"work</w>\": 951,\n  \"workday</w>\": 29735,\n  \"worked</w>\": 5410,\n  \"worker</w>\": 8098,\n  \"workers</w>\": 4795,\n  \"workflow</w>\": 28502,\n  \"workforce</w>\": 14672,\n  \"workin\": 31825,\n  \"workin</w>\": 26323,\n  \"working\": 20806,\n  \"working</w>\": 1699,\n  \"workinprogress</w>\": 46086,\n  \"workout</w>\": 6773,\n  \"workouts</w>\": 22779,\n  \"workplace</w>\": 11959,\n  \"workplaces</w>\": 47383,\n  \"works</w>\": 2322,\n  \"workshop</w>\": 3832,\n  \"workshops</w>\": 12262,\n  \"workspace</w>\": 34470,\n  \"worl\": 5221,\n  \"world\": 2334,\n  \"world</w>\": 1002,\n  \"worlda\": 46627,\n  \"worldbank</w>\": 36759,\n  \"worldbookday</w>\": 31191,\n  \"worldcup\": 42525,\n  \"worldcup</w>\": 8650,\n  \"worlden\": 44668,\n  \"worldenviron\": 47115,\n  \"worldenvironmentday</w>\": 47522,\n  \"worldly</w>\": 36268,\n  \"worldo\": 41698,\n  \"worldof\": 22636,\n  \"worldre\": 33951,\n  \"worlds</w>\": 7691,\n  \"worldseries</w>\": 26695,\n  \"worldtour</w>\": 23202,\n  \"worldwater\": 41176,\n  \"worldwaterday</w>\": 44520,\n  \"worldwide</w>\": 6214,\n  \"worm\": 33709,\n  \"worm</w>\": 10945,\n  \"worms</w>\": 20231,\n  \"worn</w>\": 9037,\n  \"worried</w>\": 11911,\n  \"worries</w>\": 17684,\n  \"worry</w>\": 7534,\n  \"worrying</w>\": 24058,\n  \"worse</w>\": 8236,\n  \"worsen\": 46344,\n  \"worshi\": 31840,\n  \"worship\": 46399,\n  \"worship</w>\": 9023,\n  \"worst</w>\": 5719,\n  \"wort</w>\": 30209,\n  \"worth\": 10671,\n  \"worth</w>\": 2450,\n  \"worthing</w>\": 39929,\n  \"worthit</w>\": 40830,\n  \"worthless</w>\": 44736,\n  \"worths</w>\": 44633,\n  \"worthwhile</w>\": 36295,\n  \"worthy</w>\": 8881,\n  \"worx</w>\": 44973,\n  \"wot</w>\": 24863,\n  \"wou\": 5279,\n  \"would\": 39873,\n  \"would</w>\": 1311,\n  \"wouldn</w>\": 5878,\n  \"wouldnt</w>\": 41595,\n  \"wound</w>\": 19231,\n  \"wounded</w>\": 14859,\n  \"wounds</w>\": 21290,\n  \"woven</w>\": 19830,\n  \"wow\": 22191,\n  \"wow</w>\": 2781,\n  \"woz\": 44558,\n  \"wozni\": 47782,\n  \"wp\": 15378,\n  \"wp</w>\": 13302,\n  \"wpg</w>\": 35048,\n  \"wps</w>\": 33386,\n  \"wq\": 45195,\n  \"wr\": 1189,\n  \"wr</w>\": 8028,\n  \"wra\": 3852,\n  \"wra</w>\": 46004,\n  \"wral</w>\": 49050,\n  \"wrangler</w>\": 30923,\n  \"wrap</w>\": 7094,\n  \"wrapped</w>\": 9875,\n  \"wrapping</w>\": 15223,\n  \"wraps</w>\": 18236,\n  \"wrath</w>\": 29783,\n  \"wray</w>\": 48943,\n  \"wrc</w>\": 16004,\n  \"wre\": 3168,\n  \"wreath</w>\": 23091,\n  \"wrec\": 20879,\n  \"wreck\": 28775,\n  \"wreck</w>\": 15017,\n  \"wrecked</w>\": 32695,\n  \"wreckem</w>\": 45676,\n  \"wrecking</w>\": 36956,\n  \"wrecks</w>\": 45545,\n  \"wren\": 20191,\n  \"wren</w>\": 31970,\n  \"wrench</w>\": 30980,\n  \"wrest\": 4177,\n  \"wrestle\": 17097,\n  \"wrestle</w>\": 28086,\n  \"wrestlemania</w>\": 18849,\n  \"wrestler</w>\": 19790,\n  \"wrestlers</w>\": 25902,\n  \"wrestling\": 31292,\n  \"wrestling</w>\": 5904,\n  \"wrexham</w>\": 34479,\n  \"wri\": 7667,\n  \"wri</w>\": 42007,\n  \"wright\": 28616,\n  \"wright</w>\": 6991,\n  \"wrights</w>\": 43711,\n  \"wrigley</w>\": 33538,\n  \"wrink\": 22201,\n  \"wrinkle</w>\": 46642,\n  \"wrinkles</w>\": 35525,\n  \"wrist\": 19243,\n  \"wrist</w>\": 16139,\n  \"wristband</w>\": 36890,\n  \"wristbands</w>\": 44864,\n  \"writ\": 2902,\n  \"write\": 28874,\n  \"write</w>\": 4946,\n  \"writer\": 27886,\n  \"writer</w>\": 4422,\n  \"writers\": 18742,\n  \"writers</w>\": 7307,\n  \"writerslife</w>\": 25007,\n  \"writes</w>\": 8023,\n  \"writing\": 16053,\n  \"writing</w>\": 2979,\n  \"writingcommunity</w>\": 39178,\n  \"writings</w>\": 36259,\n  \"written</w>\": 5231,\n  \"wro\": 5447,\n  \"wrong\": 18381,\n  \"wrong</w>\": 3669,\n  \"wrongly</w>\": 45642,\n  \"wrote</w>\": 5796,\n  \"wrought</w>\": 48125,\n  \"wrs</w>\": 45280,\n  \"ws\": 6300,\n  \"ws</w>\": 799,\n  \"wsb\": 30681,\n  \"wsbtv</w>\": 38394,\n  \"wsj</w>\": 19764,\n  \"wski</w>\": 12548,\n  \"wsl</w>\": 43706,\n  \"wsoc</w>\": 40253,\n  \"wson</w>\": 33954,\n  \"wsop</w>\": 41231,\n  \"wsu\": 44674,\n  \"wsu</w>\": 32913,\n  \"wsw</w>\": 43285,\n  \"wt\": 15873,\n  \"wt</w>\": 12255,\n  \"wta</w>\": 25984,\n  \"wtc</w>\": 39718,\n  \"wtf</w>\": 6891,\n  \"wth</w>\": 23021,\n  \"wthr\": 45269,\n  \"wti</w>\": 47345,\n  \"wto</w>\": 36406,\n  \"wts</w>\": 32159,\n  \"wu\": 9710,\n  \"wu</w>\": 9837,\n  \"wud</w>\": 43870,\n  \"wul\": 35154,\n  \"wunder\": 36661,\n  \"wur\": 24040,\n  \"wurst</w>\": 44409,\n  \"wusa</w>\": 40021,\n  \"wut</w>\": 28590,\n  \"wv\": 18920,\n  \"wv</w>\": 14743,\n  \"wvu\": 44878,\n  \"wvu</w>\": 25879,\n  \"ww\": 3181,\n  \"ww</w>\": 4491,\n  \"wwc</w>\": 26505,\n  \"wwdc</w>\": 47441,\n  \"wwe\": 12112,\n  \"wwe</w>\": 5290,\n  \"wwen\": 23308,\n  \"wwenetwork</w>\": 37228,\n  \"wwenxt</w>\": 39898,\n  \"wwer\": 32038,\n  \"wwf</w>\": 23332,\n  \"wwfc</w>\": 42681,\n  \"wwg</w>\": 35322,\n  \"wwi</w>\": 20194,\n  \"wwii</w>\": 10261,\n  \"www\": 26074,\n  \"www</w>\": 9667,\n  \"wwwbigbaldhead</w>\": 30761,\n  \"wwww\": 34224,\n  \"wwww</w>\": 25200,\n  \"wwwww</w>\": 48268,\n  \"wwx</w>\": 47431,\n  \"wx\": 18192,\n  \"wx</w>\": 3561,\n  \"wy\": 4665,\n  \"wy</w>\": 7625,\n  \"wyatt</w>\": 21660,\n  \"wyd</w>\": 33113,\n  \"wye\": 48436,\n  \"wye</w>\": 43751,\n  \"wylie</w>\": 49330,\n  \"wyn\": 11802,\n  \"wyn</w>\": 17504,\n  \"wynn</w>\": 36117,\n  \"wynne</w>\": 35951,\n  \"wynonna\": 41456,\n  \"wynonnaearp</w>\": 43755,\n  \"wyoming</w>\": 18693,\n  \"x\": 87,\n  \"x</w>\": 343,\n  \"xa</w>\": 24831,\n  \"xan\": 45530,\n  \"xander</w>\": 45601,\n  \"xavi\": 36342,\n  \"xavier\": 41044,\n  \"xavier</w>\": 18567,\n  \"xb</w>\": 33678,\n  \"xbox\": 18063,\n  \"xbox</w>\": 7748,\n  \"xboxone</w>\": 27410,\n  \"xc</w>\": 12515,\n  \"xchange</w>\": 49132,\n  \"xd</w>\": 6380,\n  \"xe\": 42886,\n  \"xe</w>\": 19183,\n  \"xen\": 15568,\n  \"xer\": 49005,\n  \"xf</w>\": 35274,\n  \"xfactor</w>\": 25211,\n  \"xfinity</w>\": 35107,\n  \"xford</w>\": 34732,\n  \"xh</w>\": 45771,\n  \"xham</w>\": 25284,\n  \"xi\": 2467,\n  \"xi</w>\": 7376,\n  \"xia\": 19854,\n  \"xia</w>\": 20724,\n  \"xian</w>\": 42570,\n  \"xiao</w>\": 49318,\n  \"xiaomi</w>\": 27477,\n  \"xico</w>\": 38469,\n  \"xide</w>\": 17398,\n  \"xie\": 40122,\n  \"xie</w>\": 15976,\n  \"xii</w>\": 36525,\n  \"xiii</w>\": 28199,\n  \"xim\": 11217,\n  \"xin\": 27053,\n  \"xin</w>\": 41517,\n  \"xing</w>\": 14383,\n  \"xion</w>\": 24164,\n  \"xis</w>\": 35793,\n  \"xit</w>\": 5316,\n  \"xiumin</w>\": 36563,\n  \"xiv</w>\": 16125,\n  \"xj</w>\": 42453,\n  \"xl\": 36529,\n  \"xl</w>\": 8833,\n  \"xley</w>\": 38223,\n  \"xm</w>\": 18626,\n  \"xma\": 48805,\n  \"xmas\": 48848,\n  \"xmas</w>\": 6425,\n  \"xmen</w>\": 28708,\n  \"xn</w>\": 25388,\n  \"xo\": 26936,\n  \"xo</w>\": 9000,\n  \"xon\": 29186,\n  \"xon</w>\": 8482,\n  \"xox\": 11531,\n  \"xox</w>\": 34050,\n  \"xoxo</w>\": 13313,\n  \"xp</w>\": 15651,\n  \"xper\": 32200,\n  \"xperia</w>\": 37615,\n  \"xpo</w>\": 44377,\n  \"xpress</w>\": 31809,\n  \"xq</w>\": 40606,\n  \"xr</w>\": 26276,\n  \"xrp</w>\": 26965,\n  \"xs</w>\": 16397,\n  \"xt</w>\": 1052,\n  \"xtina</w>\": 45520,\n  \"xton\": 32666,\n  \"xton</w>\": 10597,\n  \"xtra</w>\": 26969,\n  \"xtre\": 27025,\n  \"xtreme</w>\": 33483,\n  \"xu\": 42063,\n  \"xu</w>\": 37198,\n  \"xv</w>\": 17768,\n  \"xvi</w>\": 44031,\n  \"xx\": 5675,\n  \"xx</w>\": 3553,\n  \"xxl</w>\": 29777,\n  \"xxx\": 33923,\n  \"xxx</w>\": 8352,\n  \"xxxx\": 32035,\n  \"xxxx</w>\": 22819,\n  \"xxxxx</w>\": 44195,\n  \"xy\": 20023,\n  \"xy</w>\": 11443,\n  \"y\": 88,\n  \"y</w>\": 344,\n  \"ya\": 5018,\n  \"ya</w>\": 1430,\n  \"yaa\": 48847,\n  \"yaa</w>\": 34498,\n  \"yaan</w>\": 34680,\n  \"yab\": 27737,\n  \"yach\": 9039,\n  \"yacht\": 43806,\n  \"yacht</w>\": 12859,\n  \"yachts</w>\": 29260,\n  \"yad\": 13276,\n  \"yad</w>\": 40047,\n  \"yadav</w>\": 26650,\n  \"yaf\": 38019,\n  \"yag\": 35081,\n  \"yah\": 16170,\n  \"yah</w>\": 12381,\n  \"yaho\": 37929,\n  \"yahoo\": 38152,\n  \"yahoo</w>\": 16846,\n  \"yak\": 11014,\n  \"yak</w>\": 29074,\n  \"yaki</w>\": 44677,\n  \"yaku\": 29572,\n  \"yakuza</w>\": 42628,\n  \"yal\": 16198,\n  \"yal</w>\": 13418,\n  \"yale\": 39926,\n  \"yale</w>\": 17157,\n  \"yall</w>\": 9210,\n  \"yam\": 6666,\n  \"yam</w>\": 19318,\n  \"yama</w>\": 23512,\n  \"yamaha</w>\": 18854,\n  \"yan\": 3949,\n  \"yan</w>\": 4788,\n  \"yana</w>\": 18698,\n  \"yand\": 38609,\n  \"yang\": 23818,\n  \"yang</w>\": 12605,\n  \"yani</w>\": 26439,\n  \"yankee</w>\": 21554,\n  \"yankees</w>\": 11889,\n  \"yann\": 40246,\n  \"yann</w>\": 38657,\n  \"yao</w>\": 45231,\n  \"yap\": 48700,\n  \"yap</w>\": 34468,\n  \"yar\": 6786,\n  \"yar</w>\": 23071,\n  \"yard\": 20234,\n  \"yard</w>\": 4313,\n  \"yards</w>\": 7550,\n  \"yarmouth</w>\": 45941,\n  \"yarn</w>\": 19702,\n  \"yarra</w>\": 46824,\n  \"yas\": 8168,\n  \"yas</w>\": 20570,\n  \"yash\": 30216,\n  \"yash</w>\": 37836,\n  \"yasi\": 37700,\n  \"yasss</w>\": 23873,\n  \"yat\": 29443,\n  \"yat</w>\": 34965,\n  \"yates</w>\": 27677,\n  \"yatra</w>\": 38932,\n  \"yav\": 41275,\n  \"yaw\": 31989,\n  \"yawn</w>\": 48643,\n  \"yay\": 20614,\n  \"yay</w>\": 6712,\n  \"yaya</w>\": 37608,\n  \"yaz\": 19348,\n  \"yaz</w>\": 42252,\n  \"yb\": 41785,\n  \"yb</w>\": 27615,\n  \"yc</w>\": 11931,\n  \"ycle</w>\": 38089,\n  \"yd\": 29896,\n  \"yd</w>\": 9534,\n  \"yday</w>\": 15899,\n  \"yds</w>\": 24819,\n  \"ye\": 693,\n  \"ye</w>\": 4582,\n  \"yea</w>\": 13687,\n  \"yeah\": 29405,\n  \"yeah</w>\": 3908,\n  \"year\": 5163,\n  \"year</w>\": 935,\n  \"yearbook</w>\": 21636,\n  \"yearling</w>\": 48392,\n  \"yearly</w>\": 24541,\n  \"yearof\": 31944,\n  \"yearofthe\": 47899,\n  \"years\": 30864,\n  \"years</w>\": 1151,\n  \"yearsof\": 14932,\n  \"yearswith\": 45249,\n  \"yeast</w>\": 25819,\n  \"yeats</w>\": 44903,\n  \"yed\": 28137,\n  \"yed</w>\": 3301,\n  \"yee\": 18114,\n  \"yee</w>\": 23108,\n  \"yeezy</w>\": 24901,\n  \"yeg\": 16854,\n  \"yeg</w>\": 11976,\n  \"yegfood</w>\": 48711,\n  \"yeh</w>\": 21331,\n  \"yel\": 3323,\n  \"yel</w>\": 48164,\n  \"yell</w>\": 30824,\n  \"yelled</w>\": 39199,\n  \"yelling</w>\": 26581,\n  \"yellow\": 12059,\n  \"yellow</w>\": 4481,\n  \"yellowstone</w>\": 29241,\n  \"yelp</w>\": 31674,\n  \"yemen\": 29276,\n  \"yemen</w>\": 12513,\n  \"yemeni</w>\": 44656,\n  \"yemi</w>\": 42267,\n  \"yen\": 29602,\n  \"yen</w>\": 17960,\n  \"yeo\": 32292,\n  \"yeo</w>\": 43830,\n  \"yeol</w>\": 15808,\n  \"yeon</w>\": 16602,\n  \"yep</w>\": 10964,\n  \"yer\": 15491,\n  \"yer</w>\": 2371,\n  \"yers</w>\": 3722,\n  \"yes\": 21620,\n  \"yes</w>\": 1958,\n  \"yess\": 42778,\n  \"yess</w>\": 40189,\n  \"yesss</w>\": 36210,\n  \"yessss</w>\": 45620,\n  \"yester\": 1905,\n  \"yesterday</w>\": 1926,\n  \"yesterdays</w>\": 36238,\n  \"yesung</w>\": 38527,\n  \"yet</w>\": 2296,\n  \"yeti</w>\": 34228,\n  \"yev</w>\": 39855,\n  \"yew</w>\": 34660,\n  \"yey</w>\": 45447,\n  \"yg</w>\": 16396,\n  \"ygk</w>\": 44758,\n  \"ygo\": 46166,\n  \"yh</w>\": 41978,\n  \"yi\": 5826,\n  \"yi</w>\": 14762,\n  \"yield</w>\": 16825,\n  \"yields</w>\": 24856,\n  \"yikes</w>\": 25094,\n  \"yin\": 26476,\n  \"yin</w>\": 23543,\n  \"ying\": 42933,\n  \"ying</w>\": 910,\n  \"yixing</w>\": 32120,\n  \"yk</w>\": 30965,\n  \"yl\": 2656,\n  \"yl</w>\": 4045,\n  \"ylan</w>\": 41875,\n  \"ylde</w>\": 42850,\n  \"yle\": 32305,\n  \"yle</w>\": 10770,\n  \"ylene</w>\": 34239,\n  \"yler</w>\": 48081,\n  \"yles</w>\": 42860,\n  \"ylon</w>\": 22375,\n  \"ylor</w>\": 48468,\n  \"ym\": 1786,\n  \"ym</w>\": 19587,\n  \"yman</w>\": 29077,\n  \"ymc\": 47101,\n  \"ymca</w>\": 22369,\n  \"yment</w>\": 8199,\n  \"ymes</w>\": 39968,\n  \"ymi</w>\": 5271,\n  \"ymm</w>\": 37133,\n  \"ymoun\": 41426,\n  \"ymouth</w>\": 36429,\n  \"yn\": 2823,\n  \"yn</w>\": 4100,\n  \"yne</w>\": 18238,\n  \"ynes</w>\": 18020,\n  \"ynn</w>\": 10499,\n  \"ynna</w>\": 48292,\n  \"ynwa</w>\": 27372,\n  \"yo\": 586,\n  \"yo</w>\": 3497,\n  \"yoda</w>\": 31922,\n  \"yof\": 5966,\n  \"yofficial</w>\": 21818,\n  \"yofthe\": 43983,\n  \"yog\": 34985,\n  \"yog</w>\": 36539,\n  \"yoga\": 25872,\n  \"yoga</w>\": 5523,\n  \"yogh\": 32626,\n  \"yoghurt</w>\": 33491,\n  \"yogi</w>\": 22766,\n  \"yogur\": 16137,\n  \"yogurt</w>\": 16819,\n  \"yoh</w>\": 48880,\n  \"yoke</w>\": 41969,\n  \"yoko\": 25929,\n  \"yoko</w>\": 32256,\n  \"yokohama</w>\": 42409,\n  \"yol\": 19387,\n  \"yol</w>\": 35218,\n  \"yolanda</w>\": 43845,\n  \"yolo</w>\": 20905,\n  \"yom\": 34718,\n  \"yom</w>\": 44527,\n  \"yon\": 10147,\n  \"yon</w>\": 7604,\n  \"yong\": 27960,\n  \"yong</w>\": 20887,\n  \"yonge</w>\": 48592,\n  \"yoo\": 25842,\n  \"yoo</w>\": 20775,\n  \"yoon\": 30863,\n  \"yoon</w>\": 22113,\n  \"yoona</w>\": 32736,\n  \"yoongi</w>\": 24037,\n  \"yor\": 2028,\n  \"yor</w>\": 21132,\n  \"york\": 5318,\n  \"york</w>\": 2705,\n  \"yorker</w>\": 23865,\n  \"yorkers</w>\": 41041,\n  \"yorks</w>\": 39093,\n  \"yorkshi\": 43367,\n  \"yorkshire\": 27007,\n  \"yorkshire</w>\": 8633,\n  \"yoruba</w>\": 46083,\n  \"yos</w>\": 35607,\n  \"yosemite</w>\": 25893,\n  \"yoshi\": 22920,\n  \"yoshi</w>\": 25354,\n  \"yot\": 22875,\n  \"yotes</w>\": 46157,\n  \"yotpo</w>\": 26113,\n  \"you\": 1562,\n  \"you</w>\": 592,\n  \"youare\": 33879,\n  \"youcan\": 32498,\n  \"youknow\": 47919,\n  \"youknow</w>\": 41088,\n  \"youn\": 1596,\n  \"young\": 6939,\n  \"young</w>\": 1888,\n  \"younger</w>\": 10414,\n  \"youngest</w>\": 12316,\n  \"youngjae</w>\": 46426,\n  \"youngster</w>\": 35881,\n  \"youngsters</w>\": 28098,\n  \"younow</w>\": 33831,\n  \"your\": 2130,\n  \"your</w>\": 695,\n  \"youre\": 28344,\n  \"youre</w>\": 19695,\n  \"yourown\": 28583,\n  \"yours</w>\": 3834,\n  \"yourself</w>\": 3053,\n  \"yourselves</w>\": 19747,\n  \"youth\": 10743,\n  \"youth</w>\": 3281,\n  \"youthful</w>\": 37480,\n  \"youths</w>\": 23614,\n  \"youts</w>\": 22737,\n  \"youtu\": 13868,\n  \"youtube\": 31258,\n  \"youtube</w>\": 3895,\n  \"youtuber</w>\": 24720,\n  \"youtubers</w>\": 36822,\n  \"youu</w>\": 35055,\n  \"youuu</w>\": 35324,\n  \"youuuu</w>\": 47123,\n  \"yoy</w>\": 41865,\n  \"yp\": 38370,\n  \"yp</w>\": 34734,\n  \"ypg</w>\": 37386,\n  \"yql</w>\": 46122,\n  \"yqr</w>\": 36881,\n  \"yr\": 18395,\n  \"yr</w>\": 4333,\n  \"yrs</w>\": 4822,\n  \"ys\": 1971,\n  \"ys</w>\": 961,\n  \"yser</w>\": 33121,\n  \"ysis</w>\": 4843,\n  \"ysl</w>\": 45681,\n  \"ysm</w>\": 23842,\n  \"yst\": 40528,\n  \"yt\": 36777,\n  \"yt</w>\": 14779,\n  \"ytd</w>\": 47524,\n  \"yte</w>\": 48172,\n  \"yu\": 3371,\n  \"yu</w>\": 8887,\n  \"yuan</w>\": 26236,\n  \"yuck</w>\": 48282,\n  \"yugo\": 48231,\n  \"yuh</w>\": 42547,\n  \"yui</w>\": 47932,\n  \"yuk\": 17037,\n  \"yuk</w>\": 24063,\n  \"yuki</w>\": 34010,\n  \"yukon</w>\": 27094,\n  \"yul\": 39832,\n  \"yum\": 6869,\n  \"yum</w>\": 7259,\n  \"yuma</w>\": 47566,\n  \"yummy</w>\": 7687,\n  \"yun\": 14976,\n  \"yun</w>\": 18288,\n  \"yung\": 44545,\n  \"yung</w>\": 17676,\n  \"yunho</w>\": 39748,\n  \"yup</w>\": 13231,\n  \"yur\": 42533,\n  \"yuri</w>\": 23823,\n  \"yusuf</w>\": 33222,\n  \"yuv\": 36784,\n  \"yves</w>\": 33698,\n  \"yvon\": 23327,\n  \"yvonne</w>\": 32583,\n  \"yvr</w>\": 29058,\n  \"yw\": 33741,\n  \"yx</w>\": 35624,\n  \"yxe</w>\": 34240,\n  \"yy\": 3433,\n  \"yy</w>\": 8321,\n  \"yya</w>\": 37444,\n  \"yyc\": 27542,\n  \"yyc</w>\": 11741,\n  \"yyj</w>\": 26203,\n  \"yyy</w>\": 11514,\n  \"yyyy\": 38749,\n  \"yyyy</w>\": 16955,\n  \"yyyyy</w>\": 26089,\n  \"yyyyyy</w>\": 47055,\n  \"yz\": 37579,\n  \"yz</w>\": 46451,\n  \"yÃ¼\": 48232,\n  \"z\": 89,\n  \"z</w>\": 345,\n  \"za\": 3710,\n  \"za</w>\": 2186,\n  \"zab\": 22982,\n  \"zable</w>\": 37002,\n  \"zac\": 25501,\n  \"zac</w>\": 19159,\n  \"zach\": 13401,\n  \"zach</w>\": 11815,\n  \"zachary</w>\": 32401,\n  \"zack\": 30567,\n  \"zack</w>\": 19120,\n  \"zad\": 47314,\n  \"zad</w>\": 27838,\n  \"zada</w>\": 34889,\n  \"zaf\": 21837,\n  \"zafar</w>\": 46668,\n  \"zag\": 26091,\n  \"zag</w>\": 29346,\n  \"zagre\": 34107,\n  \"zagreb</w>\": 35355,\n  \"zah\": 23258,\n  \"zah</w>\": 43297,\n  \"zaha</w>\": 44408,\n  \"zai\": 44329,\n  \"zai</w>\": 27065,\n  \"zain\": 34400,\n  \"zain</w>\": 45366,\n  \"zak\": 13050,\n  \"zak</w>\": 20738,\n  \"zaki</w>\": 48091,\n  \"zal\": 20552,\n  \"zal</w>\": 33298,\n  \"zam\": 7218,\n  \"zam</w>\": 41578,\n  \"zambia</w>\": 21671,\n  \"zan\": 7284,\n  \"zan</w>\": 17835,\n  \"zana</w>\": 39643,\n  \"zand\": 37712,\n  \"zane</w>\": 34786,\n  \"zani</w>\": 45373,\n  \"zania</w>\": 15059,\n  \"zano</w>\": 27637,\n  \"zanzi\": 47835,\n  \"zap\": 24134,\n  \"zapp\": 33504,\n  \"zappa</w>\": 46592,\n  \"zar\": 5458,\n  \"zar</w>\": 16392,\n  \"zara</w>\": 24454,\n  \"zardari</w>\": 20174,\n  \"zas</w>\": 48261,\n  \"zation</w>\": 3683,\n  \"zawa</w>\": 49281,\n  \"zay\": 7102,\n  \"zayed</w>\": 36726,\n  \"zayn\": 22292,\n  \"zayn</w>\": 10308,\n  \"zaynmalik</w>\": 25278,\n  \"zazzle</w>\": 47857,\n  \"ze\": 2254,\n  \"ze</w>\": 1298,\n  \"zeal\": 44951,\n  \"zealand</w>\": 7618,\n  \"zeb</w>\": 46518,\n  \"zebra\": 47394,\n  \"zebra</w>\": 22548,\n  \"zed\": 21047,\n  \"zed</w>\": 1993,\n  \"zedd</w>\": 45608,\n  \"zee\": 25468,\n  \"zee</w>\": 14080,\n  \"zeiss</w>\": 47460,\n  \"zeit\": 37898,\n  \"zeit</w>\": 37906,\n  \"zek</w>\": 40829,\n  \"zeke</w>\": 47065,\n  \"zel\": 10389,\n  \"zel</w>\": 12027,\n  \"zelda</w>\": 17138,\n  \"zell</w>\": 39526,\n  \"zen\": 8518,\n  \"zen</w>\": 3928,\n  \"zend\": 33478,\n  \"zendaya</w>\": 35956,\n  \"zenith</w>\": 44740,\n  \"zens</w>\": 15298,\n  \"zeph\": 40726,\n  \"zepp\": 22977,\n  \"zeppelin</w>\": 25408,\n  \"zer\": 6118,\n  \"zer</w>\": 3716,\n  \"zero\": 14867,\n  \"zero</w>\": 5848,\n  \"zers</w>\": 9547,\n  \"zes</w>\": 4073,\n  \"zest</w>\": 37709,\n  \"zet\": 34098,\n  \"zeta</w>\": 30954,\n  \"zetta</w>\": 45993,\n  \"zeus</w>\": 32800,\n  \"zey\": 46647,\n  \"zh\": 33389,\n  \"zh</w>\": 41621,\n  \"zhang</w>\": 21127,\n  \"zhen\": 37374,\n  \"zhen</w>\": 33236,\n  \"zhou</w>\": 17384,\n  \"zhu\": 42049,\n  \"zi\": 2651,\n  \"zi</w>\": 5819,\n  \"zia</w>\": 13764,\n  \"zid\": 30235,\n  \"zidane</w>\": 34643,\n  \"zie\": 29316,\n  \"zie</w>\": 8956,\n  \"zieg\": 40157,\n  \"ziegler</w>\": 46812,\n  \"ziel</w>\": 32151,\n  \"zier</w>\": 15399,\n  \"zies</w>\": 38001,\n  \"ziest</w>\": 28159,\n  \"zig\": 15950,\n  \"zig</w>\": 21345,\n  \"ziggy</w>\": 39274,\n  \"zik</w>\": 30125,\n  \"zika</w>\": 28783,\n  \"zil\": 25039,\n  \"zil</w>\": 33190,\n  \"zilla</w>\": 17879,\n  \"zim\": 8112,\n  \"zim</w>\": 22577,\n  \"zimbab\": 12373,\n  \"zimbabwe\": 45668,\n  \"zimbabwe</w>\": 13583,\n  \"zimmer\": 27452,\n  \"zimmer</w>\": 35211,\n  \"zimmerman</w>\": 38231,\n  \"zin\": 14085,\n  \"zin</w>\": 21278,\n  \"zinc</w>\": 27458,\n  \"zind\": 26206,\n  \"zindabad</w>\": 42208,\n  \"zine</w>\": 16100,\n  \"zing\": 25062,\n  \"zing</w>\": 3152,\n  \"zinger</w>\": 42027,\n  \"zio</w>\": 13906,\n  \"zion\": 31763,\n  \"zion</w>\": 20963,\n  \"zione</w>\": 36161,\n  \"zionist</w>\": 33078,\n  \"zip\": 26479,\n  \"zip</w>\": 16083,\n  \"zipper</w>\": 33670,\n  \"zir\": 31892,\n  \"zl</w>\": 39168,\n  \"zlat\": 32489,\n  \"zlatan</w>\": 37877,\n  \"zm</w>\": 43691,\n  \"zman</w>\": 24248,\n  \"zn</w>\": 18004,\n  \"zo\": 4397,\n  \"zo</w>\": 5056,\n  \"zodi\": 22660,\n  \"zodiac</w>\": 27753,\n  \"zoe\": 43114,\n  \"zoe</w>\": 16662,\n  \"zoey</w>\": 39871,\n  \"zog</w>\": 40680,\n  \"zol\": 25939,\n  \"zola</w>\": 46105,\n  \"zom\": 6623,\n  \"zombi\": 29452,\n  \"zombie</w>\": 11819,\n  \"zombies\": 46702,\n  \"zombies</w>\": 16517,\n  \"zon\": 15109,\n  \"zon</w>\": 14618,\n  \"zona</w>\": 42134,\n  \"zone\": 37197,\n  \"zone</w>\": 4442,\n  \"zones</w>\": 17247,\n  \"zoning</w>\": 36790,\n  \"zoo\": 8182,\n  \"zoo</w>\": 7147,\n  \"zoom\": 32671,\n  \"zoom</w>\": 13909,\n  \"zor\": 17605,\n  \"zou\": 38072,\n  \"zr</w>\": 39275,\n  \"zs</w>\": 35248,\n  \"zshq</w>\": 41442,\n  \"zt</w>\": 42629,\n  \"zu\": 4091,\n  \"zu</w>\": 14184,\n  \"zucchini</w>\": 29873,\n  \"zucker\": 26890,\n  \"zuckerberg</w>\": 30066,\n  \"zul\": 31146,\n  \"zulu</w>\": 32821,\n  \"zum</w>\": 35094,\n  \"zuma</w>\": 23326,\n  \"zumba</w>\": 32976,\n  \"zun\": 42440,\n  \"zur\": 17128,\n  \"zurich</w>\": 21288,\n  \"zw</w>\": 42188,\n  \"zx</w>\": 31604,\n  \"zy\": 6615,\n  \"zy</w>\": 2303,\n  \"zyk</w>\": 39112,\n  \"zyme</w>\": 36472,\n  \"zyn\": 45287,\n  \"zz\": 1544,\n  \"zz</w>\": 4943,\n  \"zza</w>\": 14642,\n  \"zzi</w>\": 13974,\n  \"zzie</w>\": 18635,\n  \"zzle</w>\": 7873,\n  \"zzled</w>\": 39075,\n  \"zzo</w>\": 14036,\n  \"zzy\": 21275,\n  \"zzy</w>\": 8353,\n  \"zzz</w>\": 20055,\n  \"zzzz\": 35742,\n  \"zzzz</w>\": 43103,\n  \"{\": 90,\n  \"{</w>\": 346,\n  \"{}</w>\": 39025,\n  \"|\": 91,\n  \"|#</w>\": 31183,\n  \"|</w>\": 347,\n  \"|@</w>\": 41677,\n  \"||</w>\": 7566,\n  \"}\": 92,\n  \"}</w>\": 348,\n  \"~\": 93,\n  \"~!</w>\": 31181,\n  \"~\\\"</w>\": 48442,\n  \"~</w>\": 349,\n  \"~></w>\": 43291,\n  \"~@</w>\": 44247,\n  \"~~\": 11461,\n  \"~~</w>\": 16671,\n  \"~~~</w>\": 32472,\n  \"~~~~\": 28295,\n  \"¡\": 94,\n  \"¡</w>\": 350,\n  \"¡ï¸ı\": 15113,\n  \"¡ï¸ı</w>\": 4174,\n  \"¡ľ\": 43991,\n  \"¢\": 95,\n  \"¢</w>\": 351,\n  \"£\": 96,\n  \"£</w>\": 352,\n  \"£ï¸ı</w>\": 18446,\n  \"¤\": 97,\n  \"¤</w>\": 353,\n  \"¥\": 98,\n  \"¥</w>\": 354,\n  \"¦\": 99,\n  \"¦</w>\": 355,\n  \"¦Ī</w>\": 47615,\n  \"§\": 100,\n  \"§</w>\": 356,\n  \"¨\": 101,\n  \"¨</w>\": 357,\n  \"©\": 102,\n  \"©</w>\": 358,\n  \"ª\": 103,\n  \"ª</w>\": 359,\n  \"«\": 104,\n  \"«</w>\": 360,\n  \"¬\": 105,\n  \"¬</w>\": 361,\n  \"¬ë\": 31736,\n  \"®\": 106,\n  \"®</w>\": 362,\n  \"¯\": 107,\n  \"¯</w>\": 363,\n  \"°\": 108,\n  \"°:</w>\": 21787,\n  \"°</w>\": 364,\n  \"°ï¸ı</w>\": 34777,\n  \"±\": 109,\n  \"±</w>\": 365,\n  \"±ï¸ı</w>\": 41020,\n  \"²\": 110,\n  \"²</w>\": 366,\n  \"³\": 111,\n  \"³</w>\": 367,\n  \"³ï¸ı\": 22195,\n  \"³ï¸ı</w>\": 24706,\n  \"´\": 112,\n  \"´</w>\": 368,\n  \"µ\": 113,\n  \"µ</w>\": 369,\n  \"µï¸ı</w>\": 27605,\n  \"¶\": 114,\n  \"¶</w>\": 370,\n  \"·\": 115,\n  \"·</w>\": 371,\n  \"¸\": 116,\n  \"¸</w>\": 372,\n  \"¸ë\": 19693,\n  \"¹\": 117,\n  \"¹</w>\": 373,\n  \"º\": 118,\n  \"º</w>\": 374,\n  \"»\": 119,\n  \"»</w>\": 375,\n  \"¼\": 120,\n  \"¼</w>\": 376,\n  \"½\": 121,\n  \"½</w>\": 377,\n  \"½ï¸ı</w>\": 31333,\n  \"¾\": 122,\n  \"¾</w>\": 378,\n  \"¿\": 123,\n  \"¿</w>\": 379,\n  \"À\": 124,\n  \"À</w>\": 380,\n  \"Á\": 125,\n  \"Á</w>\": 381,\n  \"Â\": 126,\n  \"Â</w>\": 382,\n  \"Â¡\": 26868,\n  \"Â¡</w>\": 10830,\n  \"Â¡Â¡</w>\": 45505,\n  \"Â¢</w>\": 41359,\n  \"Â£\": 31117,\n  \"Â£</w>\": 1950,\n  \"Â¥</w>\": 20199,\n  \"Â¨\": 19957,\n  \"Â¨Â¨\": 23089,\n  \"Â¨Â¨Â¨Â¨\": 41223,\n  \"Â©\": 31148,\n  \"Â©</w>\": 5811,\n  \"Â«</w>\": 14434,\n  \"Â®\": 30857,\n  \"Â®</w>\": 8436,\n  \"Â¯\": 38682,\n  \"Â¯</w>\": 43593,\n  \"Â¯\\\\\": 44096,\n  \"Â¯\\\\_(</w>\": 45115,\n  \"Â°\": 21305,\n  \"Â°</w>\": 6858,\n  \"Â²</w>\": 41175,\n  \"Â´\": 30560,\n  \"Â´</w>\": 12559,\n  \"Â·</w>\": 14844,\n  \"Âº</w>\": 28059,\n  \"Â»\": 31642,\n  \"Â»</w>\": 7599,\n  \"Â½</w>\": 33613,\n  \"Â¿\": 44559,\n  \"Â¿</w>\": 17133,\n  \"ÂŃ</w>\": 22618,\n  \"Ã\": 127,\n  \"Ã</w>\": 383,\n  \"Ã¡\": 7261,\n  \"Ã¡</w>\": 22229,\n  \"Ã¡n\": 38340,\n  \"Ã¡n</w>\": 21385,\n  \"Ã¢\": 26170,\n  \"Ã£\": 19339,\n  \"Ã£o</w>\": 21141,\n  \"Ã¤\": 10896,\n  \"Ã¤</w>\": 47276,\n  \"Ã¤n\": 42787,\n  \"Ã¥\": 23176,\n  \"Ã¦\": 42495,\n  \"Ã§\": 10067,\n  \"Ã§a</w>\": 22711,\n  \"Ã¨\": 12138,\n  \"Ã¨</w>\": 37761,\n  \"Ã¨re</w>\": 30272,\n  \"Ã¨s</w>\": 41210,\n  \"Ã©\": 3459,\n  \"Ã©</w>\": 4166,\n  \"Ã©al</w>\": 45251,\n  \"Ã©e</w>\": 13489,\n  \"Ã©s</w>\": 20507,\n  \"Ãª\": 27515,\n  \"Ã«\": 29526,\n  \"Ã«</w>\": 40520,\n  \"Ã®\": 48704,\n  \"Ã¯\": 35689,\n  \"Ã±\": 6445,\n  \"Ã±a</w>\": 17753,\n  \"Ã±o</w>\": 16574,\n  \"Ã±os</w>\": 40104,\n  \"Ã³\": 8891,\n  \"Ã³</w>\": 27733,\n  \"Ã³n</w>\": 13926,\n  \"Ã´\": 26815,\n  \"Ã¶\": 7255,\n  \"Ã¶</w>\": 37423,\n  \"Ã¶r\": 31762,\n  \"Ã¸\": 17483,\n  \"Ã¸</w>\": 45598,\n  \"Ãº\": 17963,\n  \"Ãº</w>\": 36019,\n  \"Ã¼\": 6522,\n  \"Ã¼</w>\": 47177,\n  \"Ã¼r\": 26132,\n  \"ÃĹ</w>\": 16165,\n  \"Ãł\": 36149,\n  \"Ãł</w>\": 21259,\n  \"ÃŃ\": 8366,\n  \"ÃŃ</w>\": 23928,\n  \"ÃŃa</w>\": 16609,\n  \"ÃŃn</w>\": 33623,\n  \"Ä\": 128,\n  \"Ä</w>\": 384,\n  \"Ä±\": 18562,\n  \"Ä±</w>\": 41901,\n  \"Äģ\": 23134,\n  \"Äĩ</w>\": 31719,\n  \"Äį\": 45414,\n  \"ÄŁ\": 26540,\n  \"Å\": 129,\n  \"Å</w>\": 385,\n  \"Å¡\": 35621,\n  \"ÅĤ\": 40419,\n  \"Åį\": 41267,\n  \"ÅŁ\": 21254,\n  \"ÅŁ</w>\": 40706,\n  \"Æ\": 130,\n  \"Æ</w>\": 386,\n  \"Ç\": 131,\n  \"Ç</w>\": 387,\n  \"È\": 132,\n  \"È</w>\": 388,\n  \"É\": 133,\n  \"É</w>\": 389,\n  \"Ê\": 134,\n  \"Ê</w>\": 390,\n  \"Ë\": 135,\n  \"Ë</w>\": 391,\n  \"Ì\": 136,\n  \"Ì</w>\": 392,\n  \"Ìĩ</w>\": 16384,\n  \"Í\": 137,\n  \"Í</w>\": 393,\n  \"Î\": 138,\n  \"Î</w>\": 394,\n  \"Ï\": 139,\n  \"Ï</w>\": 395,\n  \"Ïī</w>\": 38065,\n  \"Ð\": 140,\n  \"Ð</w>\": 396,\n  \"Ð°\": 16912,\n  \"Ð°</w>\": 27080,\n  \"Ð°Ð\": 31090,\n  \"Ð²\": 39813,\n  \"Ðµ\": 22176,\n  \"Ð¸\": 16701,\n  \"Ð¸Ð\": 29503,\n  \"Ðº\": 27152,\n  \"Ð»\": 47611,\n  \"Ð¼\": 38018,\n  \"Ð½\": 22705,\n  \"Ð¾\": 13506,\n  \"Ð¾</w>\": 29386,\n  \"Ð¾Ð\": 20978,\n  \"Ð¾Ð´\": 38416,\n  \"Ð¾ÑĤ\": 28599,\n  \"Ð¿\": 26302,\n  \"Ð¿ÑĢÐ¸\": 46321,\n  \"Ð¿ÑĢÐ¸ÑĢÐ¾Ð´Ð°</w>\": 48150,\n  \"Ñ\": 141,\n  \"Ñ</w>\": 397,\n  \"ÑĢ\": 16370,\n  \"ÑĢÐ¸\": 41092,\n  \"ÑĢÐ¾Ð´\": 47039,\n  \"ÑĢÐ¾Ð´Ð°</w>\": 47929,\n  \"Ñģ\": 23669,\n  \"ÑĤ\": 17875,\n  \"Ñĥ\": 39729,\n  \"ÑĦ\": 27993,\n  \"ÑĦÐ¾ÑĤ\": 35155,\n  \"ÑĦÐ¾ÑĤÐ¾</w>\": 38981,\n  \"Ñĭ\": 45001,\n  \"Ò\": 142,\n  \"Ò</w>\": 398,\n  \"Ó\": 143,\n  \"Ó</w>\": 399,\n  \"Ô\": 144,\n  \"Ô</w>\": 400,\n  \"Õ\": 145,\n  \"Õ</w>\": 401,\n  \"Ö\": 146,\n  \"Ö</w>\": 402,\n  \"×\": 147,\n  \"×</w>\": 403,\n  \"Ø\": 148,\n  \"Ø</w>\": 404,\n  \"Ø§\": 6042,\n  \"Ø§</w>\": 22625,\n  \"Ø§Ø\": 13189,\n  \"Ø§Ø±\": 40137,\n  \"Ø§Ù\": 8453,\n  \"Ø§ÙĦ\": 12973,\n  \"Ø§Ùħ\": 47626,\n  \"Ø§ÙĨ\": 42773,\n  \"Ø§ÙĨ</w>\": 33200,\n  \"Ø¨\": 16378,\n  \"Ø¨</w>\": 35330,\n  \"Ø©</w>\": 20915,\n  \"Øª\": 18197,\n  \"Øª</w>\": 44333,\n  \"Ø¬\": 26375,\n  \"Ø®\": 41495,\n  \"Ø¯\": 19872,\n  \"Ø¯</w>\": 35566,\n  \"Ø±\": 10948,\n  \"Ø±</w>\": 24933,\n  \"Ø±ÙĬ\": 43273,\n  \"Ø²\": 36169,\n  \"Ø³\": 17856,\n  \"Ø´\": 28770,\n  \"Øµ\": 27271,\n  \"Ø·\": 32050,\n  \"Ø¹\": 18843,\n  \"Øº\": 48510,\n  \"ØŃ\": 25722,\n  \"Ù\": 149,\n  \"Ù</w>\": 405,\n  \"Ùģ\": 24112,\n  \"ÙĤ\": 27585,\n  \"Ùĥ\": 33499,\n  \"ÙĦ\": 14251,\n  \"ÙĦ</w>\": 37899,\n  \"Ùħ\": 12986,\n  \"Ùħ</w>\": 29945,\n  \"ÙĨ\": 16655,\n  \"ÙĨ</w>\": 25386,\n  \"Ùĩ\": 34274,\n  \"Ùĩ</w>\": 31343,\n  \"ÙĪ\": 12203,\n  \"ÙĪ</w>\": 38310,\n  \"ÙĪØ±\": 48242,\n  \"ÙĬ\": 12046,\n  \"ÙĬ</w>\": 23853,\n  \"Ú\": 150,\n  \"Ú</w>\": 406,\n  \"Ú©\": 26475,\n  \"Û\": 151,\n  \"Û</w>\": 407,\n  \"Ûģ\": 40480,\n  \"ÛĮ\": 21452,\n  \"ÛĮ</w>\": 32703,\n  \"Ü\": 152,\n  \"Ü</w>\": 408,\n  \"Ý\": 153,\n  \"Ý</w>\": 409,\n  \"Þ\": 154,\n  \"Þ</w>\": 410,\n  \"ß\": 155,\n  \"ß</w>\": 411,\n  \"à\": 156,\n  \"à</w>\": 412,\n  \"à¤\": 3124,\n  \"à¤¤</w>\": 27263,\n  \"à¤¦</w>\": 29552,\n  \"à¤¨</w>\": 26090,\n  \"à¤ª</w>\": 44149,\n  \"à¤¬</w>\": 43599,\n  \"à¤®\": 48254,\n  \"à¤®</w>\": 26774,\n  \"à¤¯</w>\": 37299,\n  \"à¤°\": 39136,\n  \"à¤°</w>\": 19052,\n  \"à¤²</w>\": 30881,\n  \"à¤µ</w>\": 39545,\n  \"à¤¶</w>\": 43181,\n  \"à¤¸</w>\": 28505,\n  \"à¤¹</w>\": 29446,\n  \"à¤¾\": 37973,\n  \"à¤¾</w>\": 13343,\n  \"à¤¿</w>\": 26721,\n  \"à¤Ĥ</w>\": 30833,\n  \"à¤ķ</w>\": 22067,\n  \"à¤Ĺ</w>\": 42598,\n  \"à¤ľ</w>\": 39561,\n  \"à¥\": 7410,\n  \"à¥Ģ\": 45791,\n  \"à¥Ģ</w>\": 25751,\n  \"à¥ģ</w>\": 39653,\n  \"à¥ĩ\": 48612,\n  \"à¥ĩ</w>\": 25130,\n  \"à¥ĭ</w>\": 34452,\n  \"à¥į</w>\": 19389,\n  \"à¦\": 11322,\n  \"à¦¾</w>\": 41532,\n  \"à§\": 26339,\n  \"à¨\": 15741,\n  \"à©\": 32086,\n  \"àª\": 22990,\n  \"à«\": 48347,\n  \"à¬\": 32791,\n  \"à®\": 6022,\n  \"à®¤</w>\": 34691,\n  \"à®©</w>\": 43394,\n  \"à®ª</w>\": 47388,\n  \"à®®</w>\": 35463,\n  \"à®°</w>\": 43270,\n  \"à®²</w>\": 47705,\n  \"à®¾</w>\": 32831,\n  \"à®¿</w>\": 27126,\n  \"à®ķ</w>\": 36168,\n  \"à®Ł</w>\": 45263,\n  \"à¯\": 11259,\n  \"à¯ģ</w>\": 33115,\n  \"à¯į</w>\": 16631,\n  \"à°\": 12100,\n  \"à±\": 23550,\n  \"à±į</w>\": 46098,\n  \"à²\": 9992,\n  \"à²¿</w>\": 47797,\n  \"à³\": 20745,\n  \"à³į</w>\": 36148,\n  \"à´\": 15418,\n  \"àµ\": 27392,\n  \"àµį</w>\": 45266,\n  \"à¶\": 29881,\n  \"à·\": 30766,\n  \"à¸\": 1777,\n  \"à¸¡\": 26137,\n  \"à¸¡</w>\": 29570,\n  \"à¸¢\": 27241,\n  \"à¸¢</w>\": 33091,\n  \"à¸£\": 32225,\n  \"à¸£</w>\": 27331,\n  \"à¸¥\": 34696,\n  \"à¸¥</w>\": 32746,\n  \"à¸§\": 26990,\n  \"à¸§</w>\": 30245,\n  \"à¸ª\": 37883,\n  \"à¸ª</w>\": 35737,\n  \"à¸«\": 33064,\n  \"à¸°\": 43920,\n  \"à¸°</w>\": 49234,\n  \"à¸±</w>\": 14978,\n  \"à¸²\": 11529,\n  \"à¸²</w>\": 38476,\n  \"à¸²à¸\": 12330,\n  \"à¸´</w>\": 17092,\n  \"à¸µ\": 22421,\n  \"à¸µ</w>\": 20278,\n  \"à¸µà¹Ī</w>\": 31511,\n  \"à¸·</w>\": 47991,\n  \"à¸¸</w>\": 30524,\n  \"à¸¹</w>\": 35273,\n  \"à¸ģ</w>\": 30767,\n  \"à¸ģà¸\": 31474,\n  \"à¸Ħ</w>\": 31757,\n  \"à¸Ħà¸\": 39628,\n  \"à¸ĩ\": 24603,\n  \"à¸ĩ</w>\": 33382,\n  \"à¸Ī\": 47608,\n  \"à¸Ĭ</w>\": 46324,\n  \"à¸Ķ\": 31107,\n  \"à¸Ķ</w>\": 38825,\n  \"à¸ķ\": 40273,\n  \"à¸ķ</w>\": 41108,\n  \"à¸Ĺ</w>\": 36171,\n  \"à¸Ļ\": 17474,\n  \"à¸Ļ</w>\": 17639,\n  \"à¸Ļà¸\": 23121,\n  \"à¸ļ\": 33859,\n  \"à¸ļ</w>\": 39616,\n  \"à¸ŀ</w>\": 48171,\n  \"à¸Ń\": 13398,\n  \"à¸Ń</w>\": 32818,\n  \"à¸Ńà¸\": 14649,\n  \"à¸Ńà¸ĩ\": 46622,\n  \"à¹\": 4484,\n  \"à¹Ģ\": 13729,\n  \"à¹Ģà¸\": 14076,\n  \"à¹ģà¸\": 23916,\n  \"à¹Ĥ\": 33118,\n  \"à¹ĥ\": 40962,\n  \"à¹Ħà¸\": 31718,\n  \"à¹ĩ</w>\": 38699,\n  \"à¹Ī</w>\": 11722,\n  \"à¹ī</w>\": 13123,\n  \"à¹Į</w>\": 28353,\n  \"à¼\": 46186,\n  \"à½\": 39219,\n  \"á\": 157,\n  \"á</w>\": 413,\n  \"á´\": 19036,\n  \"áµ\": 17330,\n  \"áĢ\": 45932,\n  \"áĥ\": 24829,\n  \"áĥ¦</w>\": 32193,\n  \"â\": 158,\n  \"â</w>\": 414,\n  \"â¤\": 25087,\n  \"â¤µï¸ı</w>\": 36026,\n  \"â¬\": 7930,\n  \"â¬ħï¸ı</w>\": 42111,\n  \"â¬Ĩ\": 27718,\n  \"â¬Ĩï¸ı</w>\": 32798,\n  \"â¬ĩ\": 10917,\n  \"â¬ĩ</w>\": 39370,\n  \"â¬ĩï¸ı\": 25621,\n  \"â¬ĩï¸ı</w>\": 13984,\n  \"â¬ĩï¸ıâ¬ĩï¸ı\": 40159,\n  \"âĢ\": 728,\n  \"âĢ¢\": 9485,\n  \"âĢ¢</w>\": 2701,\n  \"âĢ¢âĢ¢\": 15006,\n  \"âĢ¢âĢ¢</w>\": 47575,\n  \"âĢ¢âĢ¢âĢ¢âĢ¢\": 27502,\n  \"âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢âĢ¢\": 48630,\n  \"âĢ¦\": 7095,\n  \"âĢ¦\\\"</w>\": 20215,\n  \"âĢ¦..</w>\": 47779,\n  \"âĢ¦.</w>\": 18615,\n  \"âĢ¦/</w>\": 29842,\n  \"âĢ¦</w>\": 959,\n  \"âĢ¦âĢ¦</w>\": 40066,\n  \"âĢ²</w>\": 32633,\n  \"âĢ³</w>\": 25061,\n  \"âĢ¼\": 6578,\n  \"âĢ¼ï¸ı\": 15622,\n  \"âĢ¼ï¸ı</w>\": 8310,\n  \"âĢ¼ï¸ıâĢ¼ï¸ı</w>\": 33218,\n  \"âĢĭ\": 17086,\n  \"âĢĭ</w>\": 9844,\n  \"âĢį\": 4244,\n  \"âĢįâĻ\": 5177,\n  \"âĢįâĻĢï¸ı\": 18897,\n  \"âĢįâĻĢï¸ı</w>\": 9605,\n  \"âĢįâĻĤ\": 8832,\n  \"âĢįâĻĤï¸ı\": 21779,\n  \"âĢįâĻĤï¸ı</w>\": 10613,\n  \"âĢİ</w>\": 31001,\n  \"âĢĲ</w>\": 34512,\n  \"âĢĵ\": 21070,\n  \"âĢĵ</w>\": 1224,\n  \"âĢĶ\": 6718,\n  \"âĢĶ</w>\": 2005,\n  \"âĢĶ></w>\": 26341,\n  \"âĢĶ@</w>\": 28470,\n  \"âĢĶâĢĶ\": 10037,\n  \"âĢĶâĢĶ</w>\": 44800,\n  \"âĢĶâĢĶâĢĶâĢĶ\": 17797,\n  \"âĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶâĢĶ\": 34432,\n  \"âĢķ</w>\": 14236,\n  \"âģ\": 1667,\n  \"âģ£\": 31089,\n  \"âģ£</w>\": 16845,\n  \"âģ¦\": 2773,\n  \"âģ¦</w>\": 34855,\n  \"âģ¦@</w>\": 2859,\n  \"âģ¦âģ¦@</w>\": 27783,\n  \"âģ©\": 20097,\n  \"âģ©,</w>\": 48749,\n  \"âģ©.</w>\": 35777,\n  \"âģ©</w>\": 2918,\n  \"âģīï¸ı</w>\": 46534,\n  \"âģł\": 23881,\n  \"âģł</w>\": 13503,\n  \"âģłâģł</w>\": 33488,\n  \"âĤ\": 5227,\n  \"âĤ¬\": 34919,\n  \"âĤ¬</w>\": 6309,\n  \"âĤ¹</w>\": 21777,\n  \"âĥ\": 2805,\n  \"âĥ£\": 11250,\n  \"âĥ£</w>\": 3076,\n  \"âĥ£@</w>\": 48291,\n  \"âĦ\": 8604,\n  \"âĦ¢\": 29438,\n  \"âĦ¢</w>\": 11675,\n  \"âĦ¹</w>\": 45462,\n  \"âĨ\": 6059,\n  \"âĨĴ</w>\": 7481,\n  \"âĨĵ</w>\": 41603,\n  \"âĩ\": 27228,\n  \"âĪ\": 17788,\n  \"âī\": 22684,\n  \"âīĪ</w>\": 45451,\n  \"âĮ\": 17848,\n  \"âĮļ\": 31301,\n  \"âĮļï¸ı</w>\": 35931,\n  \"âı\": 7960,\n  \"âı©</w>\": 40847,\n  \"âı°</w>\": 12714,\n  \"âı±</w>\": 33149,\n  \"âı³</w>\": 47617,\n  \"âĵ\": 27400,\n  \"âĶ\": 13389,\n  \"âĶĢ\": 45139,\n  \"âĶģ\": 42022,\n  \"âķ\": 17027,\n  \"âķĲ\": 48039,\n  \"âĸ\": 4168,\n  \"âĸª\": 21203,\n  \"âĸª</w>\": 36628,\n  \"âĸªï¸ı</w>\": 24974,\n  \"âĸ«\": 39478,\n  \"âĸ¬\": 33798,\n  \"âĸ¬âĸ¬\": 36975,\n  \"âĸ¶\": 12509,\n  \"âĸ¶</w>\": 21126,\n  \"âĸ¶ï¸ı</w>\": 14442,\n  \"âĸº\": 46061,\n  \"âĸº</w>\": 12086,\n  \"âĸ½\": 45634,\n  \"âĸł</w>\": 36791,\n  \"âĹ\": 9323,\n  \"âĹĨ</w>\": 48961,\n  \"âĹı</w>\": 26999,\n  \"âĺ\": 1741,\n  \"âĺ®</w>\": 45851,\n  \"âĺ¹\": 28811,\n  \"âĺ¹ï¸ı</w>\": 39605,\n  \"âĺº\": 5010,\n  \"âĺº</w>\": 8703,\n  \"âĺºâĺº</w>\": 46051,\n  \"âĺºï¸ı\": 11506,\n  \"âĺºï¸ı</w>\": 7779,\n  \"âĺºï¸ıâĺºï¸ı</w>\": 41315,\n  \"âĺ¼</w>\": 38877,\n  \"âĺĢ\": 32146,\n  \"âĺĢ</w>\": 22242,\n  \"âĺĢï¸ı\": 12817,\n  \"âĺĢï¸ı</w>\": 8219,\n  \"âĺĢï¸ıâĺĢï¸ı\": 44550,\n  \"âĺģ\": 25195,\n  \"âĺģï¸ı</w>\": 35197,\n  \"âĺĥ\": 38972,\n  \"âĺħ\": 9339,\n  \"âĺħ</w>\": 10643,\n  \"âĺħâĺħ\": 12681,\n  \"âĺħâĺħ</w>\": 36644,\n  \"âĺħâĺħâĺħâĺħ\": 34431,\n  \"âĺħâĺħâĺħâĺħ</w>\": 44034,\n  \"âĺħâĺħâĺħâĺħâĺħ</w>\": 45984,\n  \"âĺĨ\": 23941,\n  \"âĺĨ</w>\": 13439,\n  \"âĺİ\": 24045,\n  \"âĺİ</w>\": 45493,\n  \"âĺİï¸ı</w>\": 27219,\n  \"âĺĳ\": 20983,\n  \"âĺĳ</w>\": 42300,\n  \"âĺĳï¸ı</w>\": 22291,\n  \"âĺĶï¸ı</w>\": 31238,\n  \"âĺķ\": 11454,\n  \"âĺķ</w>\": 26561,\n  \"âĺķï¸ı\": 25839,\n  \"âĺķï¸ı</w>\": 15499,\n  \"âĺĺ\": 23483,\n  \"âĺĺï¸ı</w>\": 31454,\n  \"âĺĿ\": 21982,\n  \"âĺĿï¸ı</w>\": 38891,\n  \"âĺŀ</w>\": 31255,\n  \"âĺłï¸ı</w>\": 34672,\n  \"âĻ\": 1548,\n  \"âĻ¡\": 11091,\n  \"âĻ¡</w>\": 6251,\n  \"âĻ¡âĻ¡\": 22360,\n  \"âĻ¡âĻ¡</w>\": 34267,\n  \"âĻ¡âĻ¡âĻ¡</w>\": 36611,\n  \"âĻ¤</w>\": 47435,\n  \"âĻ¥\": 4622,\n  \"âĻ¥</w>\": 3405,\n  \"âĻ¥âĻ¥\": 12975,\n  \"âĻ¥âĻ¥</w>\": 19604,\n  \"âĻ¥âĻ¥âĻ¥</w>\": 23255,\n  \"âĻ¥âĻ¥âĻ¥âĻ¥\": 49020,\n  \"âĻ¥ï¸ı\": 17774,\n  \"âĻ¥ï¸ı</w>\": 10561,\n  \"âĻ¥ï¸ıâĻ¥ï¸ı\": 40309,\n  \"âĻ¦\": 32376,\n  \"âĻ¦</w>\": 47547,\n  \"âĻ©\": 30339,\n  \"âĻ©âĻ«</w>\": 31636,\n  \"âĻª\": 27364,\n  \"âĻª</w>\": 12382,\n  \"âĻ«\": 39217,\n  \"âĻ«</w>\": 10814,\n  \"âĻ¬</w>\": 24753,\n  \"âĻ»\": 39611,\n  \"âĻ»ï¸ı</w>\": 46075,\n  \"âļ\": 2234,\n  \"âļ¡\": 40098,\n  \"âļ¡</w>\": 20712,\n  \"âļ¡ï¸ı\": 19500,\n  \"âļ¡ï¸ı</w>\": 11605,\n  \"âļ¡ï¸ıâļ¡ï¸ı</w>\": 45922,\n  \"âļª\": 11922,\n  \"âļª</w>\": 36373,\n  \"âļªï¸ı\": 22251,\n  \"âļªï¸ı</w>\": 17885,\n  \"âļ«\": 15374,\n  \"âļ«ï¸ı\": 26529,\n  \"âļ«ï¸ı</w>\": 24649,\n  \"âļ½\": 4867,\n  \"âļ½</w>\": 13173,\n  \"âļ½âļ½\": 43259,\n  \"âļ½ï¸ı\": 11342,\n  \"âļ½ï¸ı</w>\": 6768,\n  \"âļ½ï¸ıâļ½ï¸ı\": 30358,\n  \"âļ½ï¸ıâļ½ï¸ı</w>\": 44148,\n  \"âļ¾\": 11314,\n  \"âļ¾</w>\": 34717,\n  \"âļ¾ï¸ı\": 24727,\n  \"âļ¾ï¸ı</w>\": 14858,\n  \"âļĵ\": 23522,\n  \"âļĵï¸ı</w>\": 35299,\n  \"âļĶï¸ı</w>\": 29361,\n  \"âļľ\": 47491,\n  \"âļł</w>\": 39203,\n  \"âļłï¸ı\": 40966,\n  \"âļłï¸ı</w>\": 15596,\n  \"âĽ\": 7956,\n  \"âĽ³ï¸ı</w>\": 29204,\n  \"âĽĦ\": 30668,\n  \"âĽĦï¸ı</w>\": 45465,\n  \"âľ\": 1508,\n  \"âľ¨\": 7181,\n  \"âľ¨</w>\": 3531,\n  \"âľ¨âľ¨\": 35174,\n  \"âľ¨âľ¨</w>\": 21985,\n  \"âľ¨âľ¨âľ¨</w>\": 39424,\n  \"âľĤ\": 38602,\n  \"âľħ\": 29544,\n  \"âľħ</w>\": 5564,\n  \"âľĪ\": 10682,\n  \"âľĪ</w>\": 30712,\n  \"âľĪï¸ı\": 26176,\n  \"âľĪï¸ı</w>\": 13413,\n  \"âľĬ\": 12392,\n  \"âľĬ</w>\": 17819,\n  \"âľĬðŁı½</w>\": 48547,\n  \"âľĬðŁı¾</w>\": 41185,\n  \"âľĭ\": 39383,\n  \"âľĭ</w>\": 30239,\n  \"âľĮ\": 6419,\n  \"âľĮ</w>\": 12656,\n  \"âľĮï¸ı\": 21906,\n  \"âľĮï¸ı</w>\": 12239,\n  \"âľĮðŁı»</w>\": 30538,\n  \"âľĮðŁı¼</w>\": 30588,\n  \"âľį\": 20872,\n  \"âľįï¸ı</w>\": 30888,\n  \"âľı\": 32574,\n  \"âľıï¸ı</w>\": 40724,\n  \"âľĵ</w>\": 36700,\n  \"âľĶ\": 47200,\n  \"âľĶ</w>\": 13749,\n  \"âľĶï¸ı\": 40544,\n  \"âľĶï¸ı</w>\": 9191,\n  \"âľĸï¸ı</w>\": 44133,\n  \"âľĿ\": 42220,\n  \"âĿ\": 1045,\n  \"âĿ£\": 37007,\n  \"âĿ£</w>\": 25623,\n  \"âĿ£ï¸ı</w>\": 25240,\n  \"âĿ¤\": 1266,\n  \"âĿ¤</w>\": 2720,\n  \"âĿ¤âĿ¤\": 9033,\n  \"âĿ¤âĿ¤</w>\": 14058,\n  \"âĿ¤âĿ¤âĿ¤</w>\": 16708,\n  \"âĿ¤âĿ¤âĿ¤âĿ¤\": 37918,\n  \"âĿ¤âĿ¤âĿ¤âĿ¤</w>\": 43970,\n  \"âĿ¤ï¸ı\": 2626,\n  \"âĿ¤ï¸ı#</w>\": 30281,\n  \"âĿ¤ï¸ı.</w>\": 45326,\n  \"âĿ¤ï¸ı</w>\": 1752,\n  \"âĿ¤ï¸ı@</w>\": 31187,\n  \"âĿ¤ï¸ıâĿ¤ï¸ı\": 6713,\n  \"âĿ¤ï¸ıâĿ¤ï¸ı</w>\": 10363,\n  \"âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı</w>\": 12282,\n  \"âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı\": 39167,\n  \"âĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ıâĿ¤ï¸ı</w>\": 29880,\n  \"âĿ¤ï¸ıðŁĴĻ</w>\": 37380,\n  \"âĿ¤ï¸ıðŁĺį</w>\": 37272,\n  \"âĿ¤ï¸ıðŁĺĺ</w>\": 41800,\n  \"âĿ¤ðŁĺį</w>\": 49120,\n  \"âĿ¥</w>\": 36914,\n  \"âĿĦ\": 8501,\n  \"âĿĦ</w>\": 30494,\n  \"âĿĦï¸ı\": 16834,\n  \"âĿĦï¸ı</w>\": 12402,\n  \"âĿĦï¸ıâĿĦï¸ı\": 41626,\n  \"âĿĮ\": 44485,\n  \"âĿĮ</w>\": 17975,\n  \"âĿĵ</w>\": 29791,\n  \"âĿĹ\": 12868,\n  \"âĿĹ</w>\": 29079,\n  \"âĿĹï¸ı\": 28642,\n  \"âĿĹï¸ı</w>\": 17391,\n  \"âĿĿ</w>\": 46951,\n  \"âŀ\": 3257,\n  \"âŀ¡</w>\": 12854,\n  \"âŀ¡ï¸ı\": 31860,\n  \"âŀ¡ï¸ı</w>\": 4956,\n  \"âŀ¤</w>\": 18651,\n  \"âŀķ</w>\": 46526,\n  \"âŀĸ\": 21327,\n  \"âŀĸ</w>\": 34902,\n  \"âŀĸâŀĸ\": 23316,\n  \"âŀĸâŀĸâŀĸâŀĸ\": 40401,\n  \"âŀľ</w>\": 23775,\n  \"âł\": 5689,\n  \"âłĢ\": 9691,\n  \"âłĢ</w>\": 8621,\n  \"âłĢâłĢ\": 11466,\n  \"âłĢâłĢ</w>\": 39092,\n  \"âłĢâłĢâłĢâłĢ\": 20976,\n  \"âłĢâłĢâłĢâłĢâłĢâłĢâłĢâłĢ\": 46063,\n  \"âŃ\": 5527,\n  \"âŃĲ\": 6410,\n  \"âŃĲ</w>\": 19012,\n  \"âŃĲâŃĲ\": 32663,\n  \"âŃĲï¸ı\": 12427,\n  \"âŃĲï¸ı</w>\": 10251,\n  \"âŃĲï¸ıâŃĲï¸ı\": 18640,\n  \"âŃĲï¸ıâŃĲï¸ıâŃĲï¸ı</w>\": 40746,\n  \"ã\": 159,\n  \"ã</w>\": 415,\n  \"ãĢ\": 4092,\n  \"ãĢģ</w>\": 45262,\n  \"ãĢĤ\": 38060,\n  \"ãĢĤ</w>\": 38000,\n  \"ãĢĬ</w>\": 39920,\n  \"ãĢĭ</w>\": 32898,\n  \"ãĢĮ</w>\": 18116,\n  \"ãĢį</w>\": 19149,\n  \"ãĢİ</w>\": 26947,\n  \"ãĢı</w>\": 30293,\n  \"ãĢĲ</w>\": 12534,\n  \"ãĢĳ</w>\": 12990,\n  \"ãĢľ</w>\": 39581,\n  \"ãģ\": 4813,\n  \"ãģ¦\": 48029,\n  \"ãģ¨\": 34671,\n  \"ãģ¨ç¹ĭãģ\": 47310,\n  \"ãģ¨ç¹ĭãģĮãĤĬãģŁãģĦ</w>\": 48290,\n  \"ãģª\": 29104,\n  \"ãģ®\": 21575,\n  \"ãģ·\": 44130,\n  \"ãģĦ\": 33523,\n  \"ãģĦ</w>\": 38850,\n  \"ãģĨ\": 44235,\n  \"ãģį\": 42184,\n  \"ãĤ\": 3909,\n  \"ãĤ¢\": 26560,\n  \"ãĤ¤\": 19319,\n  \"ãĤ¤ãĥ\": 36294,\n  \"ãĤ«\": 37367,\n  \"ãĤ¯\": 31574,\n  \"ãĤ·\": 37665,\n  \"ãĤ¸\": 32234,\n  \"ãĤ¸ãĥ\": 43491,\n  \"ãĤ¹\": 22694,\n  \"ãĤ¹</w>\": 39220,\n  \"ãĤ¹ãĥ\": 32421,\n  \"ãĤ¿\": 34941,\n  \"ãĤĬãģ\": 40500,\n  \"ãĤĮ</w>\": 45211,\n  \"ãĤŃ\": 47121,\n  \"ãĥ\": 2429,\n  \"ãĥ©\": 23007,\n  \"ãĥª\": 32115,\n  \"ãĥ«\": 33257,\n  \"ãĥ¬\": 32965,\n  \"ãĥ³\": 17671,\n  \"ãĥ³</w>\": 26875,\n  \"ãĥ³ãĤ\": 45105,\n  \"ãĥ³ãĥ\": 25914,\n  \"ãĥ»\": 8415,\n  \"ãĥ»</w>\": 11158,\n  \"ãĥ»ãĥ»\": 13949,\n  \"ãĥ»ãĥ»ãĥ»</w>\": 14234,\n  \"ãĥ¼\": 13457,\n  \"ãĥ¼</w>\": 30391,\n  \"ãĥ¼ãĥ\": 18584,\n  \"ãĥĥ\": 28902,\n  \"ãĥĦ</w>\": 32173,\n  \"ãĥĪ\": 42384,\n  \"ãĥİ</w>\": 39967,\n  \"ãĥķãĤ\": 33371,\n  \"ãĥŀ\": 48924,\n  \"ãĥŃ\": 35827,\n  \"ãħ\": 5947,\n  \"ãħ¤\": 21096,\n  \"ãħ¤ãħ¤\": 22583,\n  \"ãħ¤ãħ¤ãħ¤ãħ¤\": 39329,\n  \"ãħĭ\": 13052,\n  \"ãħĭ</w>\": 25108,\n  \"ãħĭãħĭ\": 16604,\n  \"ãħĭãħĭ</w>\": 42581,\n  \"ãħĭãħĭãħĭ</w>\": 46407,\n  \"ãħĭãħĭãħĭãħĭ\": 39362,\n  \"ãħł\": 16089,\n  \"ãħł</w>\": 25781,\n  \"ãħłãħł\": 22021,\n  \"ãħłãħł</w>\": 34398,\n  \"ãħłãħłãħłãħł\": 47028,\n  \"ä\": 160,\n  \"ä</w>\": 416,\n  \"ä¸\": 19759,\n  \"ä¹\": 41854,\n  \"äº\": 21078,\n  \"äºº\": 36839,\n  \"ä»\": 37743,\n  \"ä½\": 47466,\n  \"å\": 161,\n  \"å</w>\": 417,\n  \"å¤\": 23170,\n  \"å¥\": 29290,\n  \"å®\": 27047,\n  \"å°\": 34720,\n  \"å±\": 46096,\n  \"å¸\": 42021,\n  \"å¹\": 38780,\n  \"åħ\": 34314,\n  \"åĨ\": 27972,\n  \"åĨĻ\": 44653,\n  \"åĪ\": 42748,\n  \"åĭ\": 47505,\n  \"åı\": 34517,\n  \"åĲ\": 41673,\n  \"åĽ\": 39027,\n  \"åľ\": 37746,\n  \"åŃ\": 35751,\n  \"æ\": 162,\n  \"æ</w>\": 418,\n  \"æĸ\": 29032,\n  \"æĹ\": 22265,\n  \"æĹ¥\": 39121,\n  \"æĹ¥</w>\": 37156,\n  \"æĺ\": 42891,\n  \"æĻ\": 48132,\n  \"æľ\": 19277,\n  \"æľ¬\": 44353,\n  \"æĿ\": 27667,\n  \"æĿ±\": 48338,\n  \"ç\": 163,\n  \"ç</w>\": 419,\n  \"ç¥\": 26369,\n  \"ç¥Ń</w>\": 42557,\n  \"çµ\": 37810,\n  \"ç¹\": 43431,\n  \"ç¹ĭãģ\": 45930,\n  \"çĶ\": 20211,\n  \"çĶŁ\": 33375,\n  \"çľ\": 33440,\n  \"çľŁ\": 41570,\n  \"è\": 164,\n  \"è</w>\": 420,\n  \"èª\": 34002,\n  \"èªķ\": 41293,\n  \"é\": 165,\n  \"é</w>\": 421,\n  \"éģ\": 44854,\n  \"éĩ\": 38283,\n  \"ê\": 166,\n  \"ê</w>\": 422,\n  \"ê°\": 21122,\n  \"ê°ĵ\": 41076,\n  \"ê°ĵìĦ¸ë¸Ĳ</w>\": 41689,\n  \"ê°ķ\": 45758,\n  \"ê²\": 35555,\n  \"ê³\": 36216,\n  \"êµ\": 31871,\n  \"ê·\": 42680,\n  \"ê¸\": 32495,\n  \"ê¹\": 24531,\n  \"ê¹Ģ\": 25203,\n  \"ë\": 167,\n  \"ë</w>\": 423,\n  \"ë¦\": 24621,\n  \"ë¦¬\": 47649,\n  \"ë§\": 28024,\n  \"ë§Ī\": 40027,\n  \"ëª\": 36311,\n  \"ë¯\": 19528,\n  \"ë¯¼\": 34442,\n  \"ë¯¼</w>\": 44632,\n  \"ë°\": 15810,\n  \"ë°©\": 23273,\n  \"ë°©íĥ\": 25081,\n  \"ë°©íĥĦ\": 25641,\n  \"ë°©íĥĦìĨĮëħĦëĭ\": 26068,\n  \"ë°©íĥĦìĨĮëħĦëĭ¨</w>\": 27129,\n  \"ë°ķ\": 40988,\n  \"ë²\": 48267,\n  \"ë³\": 44693,\n  \"ë¹\": 24193,\n  \"ëĤ\": 27252,\n  \"ëĤĺ\": 48484,\n  \"ëĭ\": 13094,\n  \"ëĭ¤\": 46680,\n  \"ëĭĪ\": 33708,\n  \"ëį\": 45543,\n  \"ëı\": 31972,\n  \"ëĵ\": 30850,\n  \"ëĿ\": 44317,\n  \"ì\": 168,\n  \"ì</w>\": 424,\n  \"ì£\": 39856,\n  \"ì£¼\": 45161,\n  \"ì¤\": 31153,\n  \"ì§\": 16279,\n  \"ì§Ģ\": 28836,\n  \"ì§Ħ</w>\": 38890,\n  \"ì°\": 40742,\n  \"ì¶\": 42476,\n  \"ì¶ķ\": 46403,\n  \"ì¶ķíķĺ\": 47866,\n  \"ì¹\": 45088,\n  \"ìĤ\": 31061,\n  \"ìĥ\": 30587,\n  \"ìĥĿ\": 47858,\n  \"ìĦ\": 15074,\n  \"ìĦ¸ë\": 29254,\n  \"ìĦ¸ë¸\": 29658,\n  \"ìĦ¸ë¸Ĳ</w>\": 41415,\n  \"ìĨ\": 15115,\n  \"ìĨĮë\": 20515,\n  \"ìĨĮëħ\": 21391,\n  \"ìĨĮëħĦëĭ\": 25887,\n  \"ìĪ\": 32757,\n  \"ìĬ\": 12125,\n  \"ìĬ¤\": 20305,\n  \"ìĬ¤</w>\": 23829,\n  \"ìĭ\": 23924,\n  \"ìķ\": 16071,\n  \"ìķĦ\": 23233,\n  \"ìĸ\": 31625,\n  \"ìĹ\": 13252,\n  \"ìĹĲ\": 37622,\n  \"ìĹĳ\": 31036,\n  \"ìĹĳìĨ\": 42763,\n  \"ìĹĳìĨĮ</w>\": 45606,\n  \"ìĺ\": 21144,\n  \"ìĻ\": 39405,\n  \"ìļ\": 18541,\n  \"ìļ°\": 38415,\n  \"ìļ°</w>\": 49344,\n  \"ìĽ\": 22543,\n  \"ìĽĲ</w>\": 36495,\n  \"ìľ\": 20909,\n  \"ìľł\": 42890,\n  \"ìĿ\": 8276,\n  \"ìĿ´\": 12286,\n  \"ìĿ´</w>\": 34746,\n  \"ìĿ´ì\": 37590,\n  \"ìĿ¼\": 43406,\n  \"ìŀ\": 20849,\n  \"ìł\": 20580,\n  \"ìłķ\": 34725,\n  \"í\": 169,\n  \"í</w>\": 425,\n  \"íģ\": 35641,\n  \"íģ¬</w>\": 45832,\n  \"íĤ\": 43565,\n  \"íĥ\": 15012,\n  \"íĥĢ\": 41126,\n  \"íĥľ\": 37663,\n  \"íĬ\": 23215,\n  \"íĬ¸\": 48974,\n  \"íĬ¸</w>\": 39820,\n  \"íĭ\": 34350,\n  \"íĶ\": 29450,\n  \"íķ\": 15197,\n  \"íķ´</w>\": 35286,\n  \"íķĺ\": 33992,\n  \"íĺ\": 15962,\n  \"íĺ¸</w>\": 39657,\n  \"íĺĦ</w>\": 34645,\n  \"íĻ\": 31882,\n  \"î\": 170,\n  \"î</w>\": 426,\n  \"îĢ\": 36288,\n  \"îĦ\": 35368,\n  \"îĮ\": 41006,\n  \"îĲ\": 16929,\n  \"îĲĴ\": 40100,\n  \"ï\": 171,\n  \"ï</w>\": 427,\n  \"ï¸\": 842,\n  \"ï¸İ</w>\": 24029,\n  \"ï¸ı\": 1392,\n  \"ï¸ı#</w>\": 46997,\n  \"ï¸ı:</w>\": 32604,\n  \"ï¸ı</w>\": 1001,\n  \"ï¸ı@</w>\": 34600,\n  \"ï¸ıâĥ£\": 17394,\n  \"ï¸ıâĥ£-</w>\": 40376,\n  \"ï¸ıâĥ£</w>\": 4603,\n  \"ï¿\": 27850,\n  \"ï¿½\": 47356,\n  \"ï¿½</w>\": 39802,\n  \"ð\": 172,\n  \"ð</w>\": 428,\n  \"ðĿ\": 6874,\n  \"ðĿĲ\": 15889,\n  \"ðĿĳ\": 43794,\n  \"ðĿĴ\": 43387,\n  \"ðĿĵ\": 47110,\n  \"ðĿĹ\": 18865,\n  \"ðĿĺ\": 26109,\n  \"ðĿĻ\": 29415,\n  \"ðŁ\": 558,\n  \"ðŁ¤\": 1793,\n  \"ðŁ¤£\": 9665,\n  \"ðŁ¤£</w>\": 9909,\n  \"ðŁ¤£ðŁ¤£\": 16430,\n  \"ðŁ¤£ðŁ¤£</w>\": 31009,\n  \"ðŁ¤£ðŁ¤£ðŁ¤£</w>\": 32262,\n  \"ðŁ¤¤\": 39550,\n  \"ðŁ¤¤</w>\": 26759,\n  \"ðŁ¤¦\": 17186,\n  \"ðŁ¤§</w>\": 40983,\n  \"ðŁ¤©\": 27351,\n  \"ðŁ¤©</w>\": 16074,\n  \"ðŁ¤ª\": 44230,\n  \"ðŁ¤ª</w>\": 24920,\n  \"ðŁ¤«</w>\": 47671,\n  \"ðŁ¤¯</w>\": 37595,\n  \"ðŁ¤·\": 13185,\n  \"ðŁ¤·ðŁı»âĢįâĻĢï¸ı</w>\": 46770,\n  \"ðŁ¤ĳ</w>\": 34801,\n  \"ðŁ¤ĵ\": 36580,\n  \"ðŁ¤ĵ</w>\": 18928,\n  \"ðŁ¤Ķ\": 12706,\n  \"ðŁ¤Ķ</w>\": 6497,\n  \"ðŁ¤ĶðŁ¤Ķ</w>\": 28490,\n  \"ðŁ¤ĶðŁ¤ĶðŁ¤Ķ</w>\": 43361,\n  \"ðŁ¤ĸ</w>\": 46146,\n  \"ðŁ¤Ĺ\": 16646,\n  \"ðŁ¤Ĺ</w>\": 10465,\n  \"ðŁ¤ĹðŁ¤Ĺ</w>\": 44321,\n  \"ðŁ¤ĺ\": 10623,\n  \"ðŁ¤ĺ</w>\": 17288,\n  \"ðŁ¤ĺðŁı»\": 46449,\n  \"ðŁ¤ĺðŁı»</w>\": 30891,\n  \"ðŁ¤ĺðŁı¼</w>\": 31458,\n  \"ðŁ¤ĺðŁı½</w>\": 49362,\n  \"ðŁ¤Ļ\": 23800,\n  \"ðŁ¤Ļ</w>\": 39101,\n  \"ðŁ¤Ŀ</w>\": 35242,\n  \"ðŁ¤ŀ\": 29463,\n  \"ðŁ¤ŀ</w>\": 38597,\n  \"ðŁ¤Ł\": 48509,\n  \"ðŁ¤ł</w>\": 36737,\n  \"ðŁ¤Ń</w>\": 47289,\n  \"ðŁ¥\": 4156,\n  \"ðŁ¥°\": 29246,\n  \"ðŁ¥°</w>\": 17597,\n  \"ðŁ¥³\": 45823,\n  \"ðŁ¥³</w>\": 28055,\n  \"ðŁ¥º\": 43380,\n  \"ðŁ¥º</w>\": 36858,\n  \"ðŁ¥Ĥ\": 43805,\n  \"ðŁ¥Ĥ</w>\": 25212,\n  \"ðŁ¥ĥ</w>\": 47790,\n  \"ðŁ¥ĩ\": 34372,\n  \"ðŁ¥ĩ</w>\": 20069,\n  \"ðŁ¥Ī</w>\": 35858,\n  \"ðŁ¥ī</w>\": 36782,\n  \"ðŁ¥Ĭ</w>\": 29275,\n  \"ðŁ¦\": 6040,\n  \"ðŁ¦ģ\": 36367,\n  \"ðŁ¦ģ</w>\": 26056,\n  \"ðŁ¦ĥ</w>\": 40184,\n  \"ðŁ¦Ħ</w>\": 37659,\n  \"ðŁ¦ħ</w>\": 28800,\n  \"ðŁ¦Ī</w>\": 48984,\n  \"ðŁ¦ĭ\": 49325,\n  \"ðŁ¦ĭ</w>\": 28985,\n  \"ðŁ§\": 8792,\n  \"ðŁ§¡\": 30996,\n  \"ðŁ§¡</w>\": 24578,\n  \"ðŁ§Ĳ</w>\": 33549,\n  \"ðŁħ\": 22010,\n  \"ðŁĨ\": 9536,\n  \"ðŁĨķ</w>\": 34956,\n  \"ðŁĨĺ</w>\": 39868,\n  \"ðŁĨļ</w>\": 16325,\n  \"ðŁĩ\": 1173,\n  \"ðŁĩ¦\": 12469,\n  \"ðŁĩ¦</w>\": 28565,\n  \"ðŁĩ¦ðŁĩ\": 33196,\n  \"ðŁĩ¦ðŁĩ·</w>\": 41629,\n  \"ðŁĩ¦ðŁĩº</w>\": 25192,\n  \"ðŁĩ§\": 14660,\n  \"ðŁĩ§ðŁĩ\": 37342,\n  \"ðŁĩ§ðŁĩª</w>\": 38794,\n  \"ðŁĩ§ðŁĩ·</w>\": 28182,\n  \"ðŁĩ¨\": 8889,\n  \"ðŁĩ¨ðŁĩ\": 8989,\n  \"ðŁĩ¨ðŁĩ¦\": 34324,\n  \"ðŁĩ¨ðŁĩ¦</w>\": 16364,\n  \"ðŁĩ¨ðŁĩ³</w>\": 36819,\n  \"ðŁĩ¨ðŁĩŃ</w>\": 41119,\n  \"ðŁĩ©\": 15222,\n  \"ðŁĩ©ðŁĩ\": 36350,\n  \"ðŁĩ©ðŁĩª</w>\": 21531,\n  \"ðŁĩª\": 11428,\n  \"ðŁĩª</w>\": 12331,\n  \"ðŁĩªðŁĩ\": 13917,\n  \"ðŁĩªðŁĩ¸</w>\": 22177,\n  \"ðŁĩªðŁĩº</w>\": 34655,\n  \"ðŁĩ«\": 12977,\n  \"ðŁĩ«ðŁĩ·\": 39109,\n  \"ðŁĩ«ðŁĩ·</w>\": 16223,\n  \"ðŁĩ¬\": 8129,\n  \"ðŁĩ¬ðŁĩ\": 8354,\n  \"ðŁĩ¬ðŁĩ§\": 23762,\n  \"ðŁĩ¬ðŁĩ§</w>\": 11559,\n  \"ðŁĩ®\": 8268,\n  \"ðŁĩ®ðŁĩ\": 8347,\n  \"ðŁĩ®ðŁĩª</w>\": 34148,\n  \"ðŁĩ®ðŁĩ³\": 47299,\n  \"ðŁĩ®ðŁĩ³</w>\": 23602,\n  \"ðŁĩ®ðŁĩ¹\": 42034,\n  \"ðŁĩ®ðŁĩ¹</w>\": 17070,\n  \"ðŁĩ¯\": 20090,\n  \"ðŁĩ¯ðŁĩ\": 22924,\n  \"ðŁĩ¯ðŁĩµ</w>\": 26527,\n  \"ðŁĩ°\": 28232,\n  \"ðŁĩ±\": 29533,\n  \"ðŁĩ±ðŁĩ\": 40941,\n  \"ðŁĩ²\": 16411,\n  \"ðŁĩ²ðŁĩ\": 17562,\n  \"ðŁĩ²ðŁĩ½</w>\": 32073,\n  \"ðŁĩ³\": 16645,\n  \"ðŁĩ³ðŁĩ\": 17747,\n  \"ðŁĩ³ðŁĩ±</w>\": 36747,\n  \"ðŁĩµ\": 12127,\n  \"ðŁĩµðŁĩ\": 13608,\n  \"ðŁĩµðŁĩ°</w>\": 37764,\n  \"ðŁĩµðŁĩ¹</w>\": 42621,\n  \"ðŁĩµðŁĩŃ</w>\": 42777,\n  \"ðŁĩ·\": 16026,\n  \"ðŁĩ·</w>\": 9869,\n  \"ðŁĩ·ðŁĩº</w>\": 37902,\n  \"ðŁĩ¸\": 19447,\n  \"ðŁĩ¸ðŁĩ\": 33325,\n  \"ðŁĩ¸ðŁĩª</w>\": 39260,\n  \"ðŁĩ¹\": 21810,\n  \"ðŁĩ¹ðŁĩ\": 36250,\n  \"ðŁĩº\": 4054,\n  \"ðŁĩº</w>\": 17467,\n  \"ðŁĩºðŁĩ\": 4131,\n  \"ðŁĩºðŁĩ¸\": 8907,\n  \"ðŁĩºðŁĩ¸</w>\": 5688,\n  \"ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸\": 18739,\n  \"ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸</w>\": 41411,\n  \"ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸ðŁĩºðŁĩ¸</w>\": 43357,\n  \"ðŁĩ¿\": 25520,\n  \"ðŁĩ¿ðŁĩ¦</w>\": 36982,\n  \"ðŁĩŃ\": 30370,\n  \"ðŁĮ\": 1576,\n  \"ðŁĮ±\": 35318,\n  \"ðŁĮ±</w>\": 20665,\n  \"ðŁĮ²\": 34071,\n  \"ðŁĮ²</w>\": 28154,\n  \"ðŁĮ³\": 44265,\n  \"ðŁĮ³</w>\": 28543,\n  \"ðŁĮ´\": 20643,\n  \"ðŁĮ´</w>\": 15968,\n  \"ðŁĮµ</w>\": 40871,\n  \"ðŁĮ·\": 32328,\n  \"ðŁĮ·</w>\": 24259,\n  \"ðŁĮ¸\": 16314,\n  \"ðŁĮ¸</w>\": 10980,\n  \"ðŁĮ¸ðŁĮ¸\": 46210,\n  \"ðŁĮ¹\": 14990,\n  \"ðŁĮ¹</w>\": 10662,\n  \"ðŁĮ¹ðŁĮ¹\": 37933,\n  \"ðŁĮº\": 27608,\n  \"ðŁĮº</w>\": 19829,\n  \"ðŁĮ»\": 27196,\n  \"ðŁĮ»</w>\": 19772,\n  \"ðŁĮ¼\": 36484,\n  \"ðŁĮ¼</w>\": 26312,\n  \"ðŁĮ¾</w>\": 39796,\n  \"ðŁĮ¿\": 27736,\n  \"ðŁĮ¿</w>\": 18588,\n  \"ðŁĮĢ</w>\": 34348,\n  \"ðŁĮħ</w>\": 27547,\n  \"ðŁĮĪ\": 23038,\n  \"ðŁĮĪ</w>\": 13042,\n  \"ðŁĮĬ\": 20465,\n  \"ðŁĮĬ</w>\": 14302,\n  \"ðŁĮĮ</w>\": 43393,\n  \"ðŁĮį\": 34931,\n  \"ðŁĮį</w>\": 18641,\n  \"ðŁĮİ\": 31125,\n  \"ðŁĮİ</w>\": 16969,\n  \"ðŁĮı</w>\": 31527,\n  \"ðŁĮĲ</w>\": 33071,\n  \"ðŁĮĻ\": 42330,\n  \"ðŁĮĻ</w>\": 23283,\n  \"ðŁĮļ\": 49004,\n  \"ðŁĮļ</w>\": 27877,\n  \"ðŁĮŀ\": 21152,\n  \"ðŁĮŀ</w>\": 12980,\n  \"ðŁĮŁ\": 13196,\n  \"ðŁĮŁ</w>\": 8542,\n  \"ðŁĮŁðŁĮŁ\": 26014,\n  \"ðŁį\": 2011,\n  \"ðŁį¦\": 47375,\n  \"ðŁį¦</w>\": 32032,\n  \"ðŁį©</w>\": 38379,\n  \"ðŁįª</w>\": 38958,\n  \"ðŁį«\": 47994,\n  \"ðŁį«</w>\": 33401,\n  \"ðŁį°\": 43732,\n  \"ðŁį°</w>\": 30051,\n  \"ðŁį³</w>\": 37441,\n  \"ðŁį´\": 41531,\n  \"ðŁį´</w>\": 25338,\n  \"ðŁį·\": 24445,\n  \"ðŁį·</w>\": 18072,\n  \"ðŁį¸\": 43058,\n  \"ðŁį¸</w>\": 31217,\n  \"ðŁį¹</w>\": 35598,\n  \"ðŁįº\": 31081,\n  \"ðŁįº</w>\": 21590,\n  \"ðŁį»\": 22793,\n  \"ðŁį»</w>\": 13167,\n  \"ðŁį¾\": 27294,\n  \"ðŁį¾</w>\": 21656,\n  \"ðŁįĢ\": 22865,\n  \"ðŁįĢ</w>\": 15764,\n  \"ðŁįģ\": 29837,\n  \"ðŁįģ</w>\": 23075,\n  \"ðŁįĤ\": 35015,\n  \"ðŁįĤ</w>\": 25721,\n  \"ðŁįĥ\": 27157,\n  \"ðŁįĥ</w>\": 20147,\n  \"ðŁįĩ</w>\": 48697,\n  \"ðŁįĬ\": 35001,\n  \"ðŁįĬ</w>\": 28036,\n  \"ðŁįĭ</w>\": 39543,\n  \"ðŁįĮ</w>\": 44987,\n  \"ðŁįį</w>\": 48946,\n  \"ðŁįİ</w>\": 32069,\n  \"ðŁįĳ</w>\": 32889,\n  \"ðŁįĴ</w>\": 33160,\n  \"ðŁįĵ\": 44739,\n  \"ðŁįĵ</w>\": 33456,\n  \"ðŁįĶ\": 46415,\n  \"ðŁįĶ</w>\": 36031,\n  \"ðŁįķ\": 31469,\n  \"ðŁįķ</w>\": 23904,\n  \"ðŁįŃ</w>\": 42100,\n  \"ðŁİ\": 1165,\n  \"ðŁİ£</w>\": 43158,\n  \"ðŁİ¤\": 23490,\n  \"ðŁİ¤</w>\": 15690,\n  \"ðŁİ¥\": 22186,\n  \"ðŁİ¥:</w>\": 43640,\n  \"ðŁİ¥</w>\": 13233,\n  \"ðŁİ§\": 31254,\n  \"ðŁİ§</w>\": 14266,\n  \"ðŁİ¨\": 31953,\n  \"ðŁİ¨</w>\": 13461,\n  \"ðŁİ©</w>\": 37701,\n  \"ðŁİ«</w>\": 30331,\n  \"ðŁİ¬\": 36020,\n  \"ðŁİ¬</w>\": 18150,\n  \"ðŁİ®</w>\": 29312,\n  \"ðŁİ¯</w>\": 23114,\n  \"ðŁİµ\": 27435,\n  \"ðŁİµ</w>\": 14946,\n  \"ðŁİ¶\": 11755,\n  \"ðŁİ¶</w>\": 6011,\n  \"ðŁİ¶ðŁİ¶</w>\": 36283,\n  \"ðŁİ¸\": 29135,\n  \"ðŁİ¸</w>\": 22122,\n  \"ðŁİ¹</w>\": 43493,\n  \"ðŁİ¼\": 34949,\n  \"ðŁİ¼</w>\": 23757,\n  \"ðŁİ¾\": 41982,\n  \"ðŁİ¾</w>\": 24222,\n  \"ðŁİĢ\": 34347,\n  \"ðŁİĢ</w>\": 20151,\n  \"ðŁİģ\": 18368,\n  \"ðŁİģ</w>\": 13462,\n  \"ðŁİĤ\": 13026,\n  \"ðŁİĤ</w>\": 10392,\n  \"ðŁİĤðŁİĤ\": 39338,\n  \"ðŁİĥ\": 22622,\n  \"ðŁİĥ</w>\": 16780,\n  \"ðŁİĦ\": 12942,\n  \"ðŁİĦ</w>\": 11267,\n  \"ðŁİħ\": 17685,\n  \"ðŁİħ</w>\": 24276,\n  \"ðŁİĨ</w>\": 39222,\n  \"ðŁİĪ\": 16142,\n  \"ðŁİĪ</w>\": 14448,\n  \"ðŁİĪðŁİī</w>\": 48049,\n  \"ðŁİī\": 4310,\n  \"ðŁİī:</w>\": 17310,\n  \"ðŁİī</w>\": 3986,\n  \"ðŁİīðŁİ\": 11473,\n  \"ðŁİīðŁİĪ\": 40499,\n  \"ðŁİīðŁİĪ</w>\": 34008,\n  \"ðŁİīðŁİī\": 25159,\n  \"ðŁİīðŁİī</w>\": 13450,\n  \"ðŁİīðŁİīðŁİī</w>\": 20828,\n  \"ðŁİīðŁİĬ\": 31662,\n  \"ðŁİīðŁİĬ</w>\": 30781,\n  \"ðŁİĬ\": 22763,\n  \"ðŁİĬ</w>\": 22425,\n  \"ðŁİĬðŁİī</w>\": 48801,\n  \"ðŁİĵ\": 28916,\n  \"ðŁİĵ</w>\": 18744,\n  \"ðŁİĻ\": 29001,\n  \"ðŁİĻ</w>\": 29753,\n  \"ðŁİĻï¸ı</w>\": 44205,\n  \"ðŁİŁ\": 19248,\n  \"ðŁİŁ</w>\": 21107,\n  \"ðŁİŁï¸ı</w>\": 30243,\n  \"ðŁİŃ</w>\": 28856,\n  \"ðŁı\": 1109,\n  \"ðŁı¡</w>\": 27318,\n  \"ðŁı³ï¸ı\": 26844,\n  \"ðŁı³ï¸ıâĢį\": 27093,\n  \"ðŁı³ï¸ıâĢįðŁĮĪ</w>\": 32610,\n  \"ðŁı´\": 39690,\n  \"ðŁı´</w>\": 19704,\n  \"ðŁı»\": 5042,\n  \"ðŁı»</w>\": 3702,\n  \"ðŁı»âĢį\": 46250,\n  \"ðŁı»âĢįâĻĢï¸ı\": 48391,\n  \"ðŁı»âĢįâĻĢï¸ı</w>\": 23595,\n  \"ðŁı»âĢįâĻĤï¸ı</w>\": 30984,\n  \"ðŁı¼\": 6193,\n  \"ðŁı¼</w>\": 4027,\n  \"ðŁı¼âĢįâĻĢï¸ı</w>\": 28955,\n  \"ðŁı½\": 8514,\n  \"ðŁı½</w>\": 6114,\n  \"ðŁı½âĢįâĻĢï¸ı</w>\": 37036,\n  \"ðŁı½âĢįâĻĤï¸ı</w>\": 43157,\n  \"ðŁı¾\": 10230,\n  \"ðŁı¾</w>\": 7778,\n  \"ðŁı¾âĢįâĻĤï¸ı</w>\": 47189,\n  \"ðŁı¿\": 29854,\n  \"ðŁı¿</w>\": 21094,\n  \"ðŁıĢ\": 13708,\n  \"ðŁıĢ</w>\": 8813,\n  \"ðŁıĢðŁıĢ\": 43169,\n  \"ðŁıģ\": 29423,\n  \"ðŁıģ</w>\": 17473,\n  \"ðŁıĥ\": 16820,\n  \"ðŁıĥ</w>\": 32751,\n  \"ðŁıħ</w>\": 25500,\n  \"ðŁıĨ\": 9585,\n  \"ðŁıĨ</w>\": 5596,\n  \"ðŁıĨðŁıĨ\": 18946,\n  \"ðŁıĨðŁıĨ</w>\": 38269,\n  \"ðŁıĨðŁıĨðŁıĨ</w>\": 44484,\n  \"ðŁıĩ\": 45789,\n  \"ðŁıĩ</w>\": 40288,\n  \"ðŁıĪ\": 16144,\n  \"ðŁıĪ</w>\": 10477,\n  \"ðŁıī</w>\": 26020,\n  \"ðŁıĬ\": 33061,\n  \"ðŁıĬ</w>\": 47830,\n  \"ðŁıĮ\": 41116,\n  \"ðŁıı</w>\": 32460,\n  \"ðŁıĲ\": 46334,\n  \"ðŁıĲ</w>\": 29433,\n  \"ðŁıĴ</w>\": 37756,\n  \"ðŁıŁ\": 35914,\n  \"ðŁıŁ</w>\": 26472,\n  \"ðŁıŁï¸ı</w>\": 42627,\n  \"ðŁıł</w>\": 33727,\n  \"ðŁĲ\": 2074,\n  \"ðŁĲ¢</w>\": 37049,\n  \"ðŁĲ£</w>\": 39597,\n  \"ðŁĲ¥</w>\": 42981,\n  \"ðŁĲ¦</w>\": 37260,\n  \"ðŁĲ¬</w>\": 44238,\n  \"ðŁĲ¯\": 34825,\n  \"ðŁĲ¯</w>\": 26111,\n  \"ðŁĲ°\": 35378,\n  \"ðŁĲ°</w>\": 25050,\n  \"ðŁĲ±\": 35710,\n  \"ðŁĲ±</w>\": 22979,\n  \"ðŁĲ´</w>\": 33509,\n  \"ðŁĲ¶\": 14466,\n  \"ðŁĲ¶</w>\": 10631,\n  \"ðŁĲ·</w>\": 38408,\n  \"ðŁĲ¸\": 45597,\n  \"ðŁĲ¸</w>\": 40298,\n  \"ðŁĲº\": 44281,\n  \"ðŁĲº</w>\": 31445,\n  \"ðŁĲ»\": 30750,\n  \"ðŁĲ»</w>\": 25322,\n  \"ðŁĲ¼</w>\": 46234,\n  \"ðŁĲ¾\": 16057,\n  \"ðŁĲ¾</w>\": 11317,\n  \"ðŁĲ¾ðŁĲ¾</w>\": 42202,\n  \"ðŁĲī</w>\": 46908,\n  \"ðŁĲĬ</w>\": 43974,\n  \"ðŁĲį\": 48903,\n  \"ðŁĲį</w>\": 30177,\n  \"ðŁĲİ\": 48281,\n  \"ðŁĲİ</w>\": 32726,\n  \"ðŁĲĲ\": 47735,\n  \"ðŁĲĲ</w>\": 27954,\n  \"ðŁĲĳ</w>\": 49389,\n  \"ðŁĲķ</w>\": 41069,\n  \"ðŁĲĺ</w>\": 38733,\n  \"ðŁĲĿ\": 30619,\n  \"ðŁĲĿ</w>\": 20111,\n  \"ðŁĲŁ\": 42084,\n  \"ðŁĲŁ</w>\": 29989,\n  \"ðŁĲł</w>\": 42725,\n  \"ðŁĳ\": 964,\n  \"ðŁĳ£</w>\": 39755,\n  \"ðŁĳ§\": 48938,\n  \"ðŁĳ¨\": 18966,\n  \"ðŁĳ¨âĢį\": 25023,\n  \"ðŁĳ©\": 18800,\n  \"ðŁĳ©âĢį\": 26304,\n  \"ðŁĳ«\": 47106,\n  \"ðŁĳ«</w>\": 35457,\n  \"ðŁĳ®\": 42686,\n  \"ðŁĳ¯\": 25910,\n  \"ðŁĳ¯</w>\": 20582,\n  \"ðŁĳ¶\": 26187,\n  \"ðŁĳ¶</w>\": 33189,\n  \"ðŁĳ¸\": 26268,\n  \"ðŁĳ¸</w>\": 36645,\n  \"ðŁĳ¹</w>\": 46766,\n  \"ðŁĳ»\": 24625,\n  \"ðŁĳ»</w>\": 16243,\n  \"ðŁĳ¼\": 25270,\n  \"ðŁĳ¼</w>\": 31083,\n  \"ðŁĳ½\": 42677,\n  \"ðŁĳ½</w>\": 26257,\n  \"ðŁĳĢ\": 11524,\n  \"ðŁĳĢ</w>\": 5908,\n  \"ðŁĳĢðŁĳĢ</w>\": 31561,\n  \"ðŁĳģ\": 47796,\n  \"ðŁĳģ</w>\": 45705,\n  \"ðŁĳĦ</w>\": 47445,\n  \"ðŁĳħ\": 31833,\n  \"ðŁĳħ</w>\": 24672,\n  \"ðŁĳĨ\": 42975,\n  \"ðŁĳĨ</w>\": 45194,\n  \"ðŁĳĩ\": 7662,\n  \"ðŁĳĩ</w>\": 7475,\n  \"ðŁĳĩðŁı»\": 45811,\n  \"ðŁĳĩðŁı»</w>\": 32813,\n  \"ðŁĳĩðŁı¼</w>\": 37504,\n  \"ðŁĳĩðŁĳĩ\": 17915,\n  \"ðŁĳĩðŁĳĩ</w>\": 31891,\n  \"ðŁĳĩðŁĳĩðŁĳĩ</w>\": 35627,\n  \"ðŁĳĪ\": 32794,\n  \"ðŁĳĪ</w>\": 20832,\n  \"ðŁĳī\": 9477,\n  \"ðŁĳī</w>\": 3988,\n  \"ðŁĳīðŁı»</w>\": 23481,\n  \"ðŁĳīðŁı¼</w>\": 27534,\n  \"ðŁĳīðŁı½</w>\": 38059,\n  \"ðŁĳīðŁĳī</w>\": 41480,\n  \"ðŁĳĬ\": 8897,\n  \"ðŁĳĬ</w>\": 9704,\n  \"ðŁĳĬðŁı»\": 47393,\n  \"ðŁĳĬðŁı»</w>\": 29152,\n  \"ðŁĳĬðŁı¼\": 49000,\n  \"ðŁĳĬðŁı¼</w>\": 30115,\n  \"ðŁĳĬðŁĳĬ</w>\": 46521,\n  \"ðŁĳĭ\": 19351,\n  \"ðŁĳĭ</w>\": 17686,\n  \"ðŁĳĮ\": 4890,\n  \"ðŁĳĮ</w>\": 4494,\n  \"ðŁĳĮðŁı»\": 31818,\n  \"ðŁĳĮðŁı»</w>\": 18606,\n  \"ðŁĳĮðŁı¼\": 37655,\n  \"ðŁĳĮðŁı¼</w>\": 20031,\n  \"ðŁĳĮðŁı½</w>\": 35834,\n  \"ðŁĳĮðŁĳĮ\": 36139,\n  \"ðŁĳĮðŁĳĮ</w>\": 21435,\n  \"ðŁĳĮðŁĳĮðŁĳĮ</w>\": 40876,\n  \"ðŁĳį\": 4686,\n  \"ðŁĳį</w>\": 4201,\n  \"ðŁĳįðŁı»\": 25803,\n  \"ðŁĳįðŁı»</w>\": 15129,\n  \"ðŁĳįðŁı¼\": 37285,\n  \"ðŁĳįðŁı¼</w>\": 19689,\n  \"ðŁĳįðŁı½</w>\": 43722,\n  \"ðŁĳįðŁĳį\": 33012,\n  \"ðŁĳįðŁĳį</w>\": 18997,\n  \"ðŁĳįðŁĳįðŁĳį</w>\": 37284,\n  \"ðŁĳİ\": 39702,\n  \"ðŁĳİ</w>\": 32568,\n  \"ðŁĳı\": 3802,\n  \"ðŁĳı</w>\": 4829,\n  \"ðŁĳıðŁı»\": 19236,\n  \"ðŁĳıðŁı»</w>\": 17029,\n  \"ðŁĳıðŁı»ðŁĳıðŁı»\": 35254,\n  \"ðŁĳıðŁı¼\": 24496,\n  \"ðŁĳıðŁı¼</w>\": 19979,\n  \"ðŁĳıðŁı¼ðŁĳıðŁı¼</w>\": 46712,\n  \"ðŁĳıðŁı½\": 40796,\n  \"ðŁĳıðŁı½</w>\": 33978,\n  \"ðŁĳıðŁı¾</w>\": 45450,\n  \"ðŁĳıðŁĳı\": 10356,\n  \"ðŁĳıðŁĳı</w>\": 16706,\n  \"ðŁĳıðŁĳıðŁĳı</w>\": 17254,\n  \"ðŁĳĲ</w>\": 40877,\n  \"ðŁĳĳ\": 14955,\n  \"ðŁĳĳ</w>\": 8717,\n  \"ðŁĳĳðŁĳĳ\": 48532,\n  \"ðŁĳķ</w>\": 47865,\n  \"ðŁĳŁ</w>\": 41183,\n  \"ðŁĳł</w>\": 41264,\n  \"ðŁĳŃ\": 34175,\n  \"ðŁĳŃ</w>\": 27943,\n  \"ðŁĴ\": 837,\n  \"ðŁĴ¡</w>\": 24081,\n  \"ðŁĴ£\": 36862,\n  \"ðŁĴ£</w>\": 29006,\n  \"ðŁĴ¤\": 34706,\n  \"ðŁĴ¤</w>\": 25632,\n  \"ðŁĴ¥\": 12209,\n  \"ðŁĴ¥</w>\": 7347,\n  \"ðŁĴ¥ðŁĴ¥\": 27396,\n  \"ðŁĴ¥ðŁĴ¥</w>\": 39246,\n  \"ðŁĴ¥ðŁĴ¥ðŁĴ¥</w>\": 48890,\n  \"ðŁĴ¦\": 21180,\n  \"ðŁĴ¦</w>\": 14060,\n  \"ðŁĴ¦ðŁĴ¦</w>\": 44469,\n  \"ðŁĴ§</w>\": 34095,\n  \"ðŁĴ¨\": 27408,\n  \"ðŁĴ¨</w>\": 17891,\n  \"ðŁĴ©\": 48621,\n  \"ðŁĴ©</w>\": 28847,\n  \"ðŁĴª\": 5475,\n  \"ðŁĴª</w>\": 6440,\n  \"ðŁĴªðŁı»\": 31669,\n  \"ðŁĴªðŁı»</w>\": 21903,\n  \"ðŁĴªðŁı¼\": 32041,\n  \"ðŁĴªðŁı¼</w>\": 20759,\n  \"ðŁĴªðŁı½\": 46380,\n  \"ðŁĴªðŁı½</w>\": 31111,\n  \"ðŁĴªðŁı¾</w>\": 39398,\n  \"ðŁĴªðŁĴª</w>\": 24747,\n  \"ðŁĴªðŁĴªðŁĴª</w>\": 39913,\n  \"ðŁĴ«\": 25770,\n  \"ðŁĴ«</w>\": 12526,\n  \"ðŁĴ¬</w>\": 30947,\n  \"ðŁĴ¯\": 10611,\n  \"ðŁĴ¯</w>\": 7018,\n  \"ðŁĴ¯ðŁĴ¯\": 30234,\n  \"ðŁĴ¯ðŁĴ¯</w>\": 44070,\n  \"ðŁĴ°\": 20454,\n  \"ðŁĴ°</w>\": 14078,\n  \"ðŁĴ°ðŁĴ°\": 41747,\n  \"ðŁĴµ\": 47412,\n  \"ðŁĴµ</w>\": 38041,\n  \"ðŁĴ¸\": 37696,\n  \"ðŁĴ¸</w>\": 25957,\n  \"ðŁĴ»\": 33433,\n  \"ðŁĴ»</w>\": 18135,\n  \"ðŁĴ¿</w>\": 39541,\n  \"ðŁĴĢ\": 14888,\n  \"ðŁĴĢ</w>\": 12158,\n  \"ðŁĴĢðŁĴĢ\": 30884,\n  \"ðŁĴģ\": 13997,\n  \"ðŁĴģ</w>\": 14392,\n  \"ðŁĴĥ\": 9947,\n  \"ðŁĴĥ</w>\": 14333,\n  \"ðŁĴĥðŁı»</w>\": 38624,\n  \"ðŁĴĥðŁĴĥ\": 28041,\n  \"ðŁĴĦ\": 46116,\n  \"ðŁĴĦ</w>\": 34571,\n  \"ðŁĴħ\": 27457,\n  \"ðŁĴħ</w>\": 32414,\n  \"ðŁĴī\": 44316,\n  \"ðŁĴī</w>\": 30503,\n  \"ðŁĴĭ\": 12217,\n  \"ðŁĴĭ</w>\": 7417,\n  \"ðŁĴĭðŁĴĭ</w>\": 29214,\n  \"ðŁĴĮ</w>\": 40817,\n  \"ðŁĴį\": 35850,\n  \"ðŁĴį</w>\": 24898,\n  \"ðŁĴİ\": 25938,\n  \"ðŁĴİ</w>\": 15874,\n  \"ðŁĴĲ\": 27375,\n  \"ðŁĴĲ</w>\": 20554,\n  \"ðŁĴĳ</w>\": 49404,\n  \"ðŁĴĵ\": 20628,\n  \"ðŁĴĵ</w>\": 12568,\n  \"ðŁĴĵðŁĴĵ</w>\": 43505,\n  \"ðŁĴĶ\": 18880,\n  \"ðŁĴĶ</w>\": 10704,\n  \"ðŁĴĶðŁĴĶ\": 44673,\n  \"ðŁĴķ\": 5412,\n  \"ðŁĴķ</w>\": 3082,\n  \"ðŁĴķðŁĴķ\": 23106,\n  \"ðŁĴķðŁĴķ</w>\": 14117,\n  \"ðŁĴķðŁĴķðŁĴķ</w>\": 26772,\n  \"ðŁĴĸ\": 8466,\n  \"ðŁĴĸ</w>\": 5582,\n  \"ðŁĴĸðŁĴĸ\": 19562,\n  \"ðŁĴĸðŁĴĸ</w>\": 30595,\n  \"ðŁĴĸðŁĴĸðŁĴĸ</w>\": 33915,\n  \"ðŁĴĹ\": 10148,\n  \"ðŁĴĹ</w>\": 6690,\n  \"ðŁĴĹðŁĴĹ\": 47158,\n  \"ðŁĴĹðŁĴĹ</w>\": 24064,\n  \"ðŁĴĹðŁĴĹðŁĴĹ</w>\": 36990,\n  \"ðŁĴĺ\": 18223,\n  \"ðŁĴĺ</w>\": 10816,\n  \"ðŁĴĺðŁĴĺ</w>\": 40464,\n  \"ðŁĴĻ\": 5305,\n  \"ðŁĴĻ</w>\": 4074,\n  \"ðŁĴĻðŁĴĻ\": 17833,\n  \"ðŁĴĻðŁĴĻ</w>\": 27101,\n  \"ðŁĴĻðŁĴĻðŁĴĻ</w>\": 30698,\n  \"ðŁĴĻðŁĴĽ\": 46804,\n  \"ðŁĴĻðŁĴĽ</w>\": 26230,\n  \"ðŁĴĻðŁĴľ\": 47931,\n  \"ðŁĴĻðŁĴľ</w>\": 42541,\n  \"ðŁĴļ\": 8102,\n  \"ðŁĴļ</w>\": 6521,\n  \"ðŁĴļðŁĴļ\": 27497,\n  \"ðŁĴļðŁĴļ</w>\": 46209,\n  \"ðŁĴļðŁĴļðŁĴļ</w>\": 46182,\n  \"ðŁĴļðŁĴĽ</w>\": 41232,\n  \"ðŁĴĽ\": 8221,\n  \"ðŁĴĽ</w>\": 6233,\n  \"ðŁĴĽðŁĴĻ</w>\": 36337,\n  \"ðŁĴĽðŁĴļ\": 37994,\n  \"ðŁĴĽðŁĴĽ\": 32420,\n  \"ðŁĴľ\": 6832,\n  \"ðŁĴľ</w>\": 4882,\n  \"ðŁĴľðŁĴľ\": 17280,\n  \"ðŁĴľðŁĴľ</w>\": 28211,\n  \"ðŁĴľðŁĴľðŁĴľ</w>\": 31004,\n  \"ðŁĴĿ\": 36761,\n  \"ðŁĴĿ</w>\": 22002,\n  \"ðŁĴŀ\": 14862,\n  \"ðŁĴŀ</w>\": 8988,\n  \"ðŁĴŀðŁĴŀ</w>\": 36448,\n  \"ðŁĴŁ\": 49394,\n  \"ðŁĴŁ</w>\": 28828,\n  \"ðŁĴŃ</w>\": 33848,\n  \"ðŁĵ\": 1497,\n  \"ðŁĵ¢\": 46560,\n  \"ðŁĵ¢</w>\": 20901,\n  \"ðŁĵ£\": 48841,\n  \"ðŁĵ£</w>\": 21282,\n  \"ðŁĵ°:</w>\": 28952,\n  \"ðŁĵ°</w>\": 14985,\n  \"ðŁĵ±\": 36104,\n  \"ðŁĵ±</w>\": 20824,\n  \"ðŁĵ²</w>\": 19363,\n  \"ðŁĵ·\": 6966,\n  \"ðŁĵ·:</w>\": 8294,\n  \"ðŁĵ·</w>\": 5551,\n  \"ðŁĵ·@</w>\": 40032,\n  \"ðŁĵ¸\": 8401,\n  \"ðŁĵ¸:</w>\": 10379,\n  \"ðŁĵ¸</w>\": 6074,\n  \"ðŁĵ¸@</w>\": 39660,\n  \"ðŁĵ¹</w>\": 49251,\n  \"ðŁĵº\": 21792,\n  \"ðŁĵº:</w>\": 29728,\n  \"ðŁĵº</w>\": 10450,\n  \"ðŁĵ»\": 32711,\n  \"ðŁĵ»</w>\": 15882,\n  \"ðŁĵ½</w>\": 45361,\n  \"ðŁĵħ</w>\": 21277,\n  \"ðŁĵĨ</w>\": 23471,\n  \"ðŁĵĪ</w>\": 23359,\n  \"ðŁĵĬ</w>\": 22244,\n  \"ðŁĵĭ</w>\": 46351,\n  \"ðŁĵĮ</w>\": 22289,\n  \"ðŁĵį\": 25043,\n  \"ðŁĵį:</w>\": 36845,\n  \"ðŁĵį</w>\": 8903,\n  \"ðŁĵĸ\": 49003,\n  \"ðŁĵĸ</w>\": 23043,\n  \"ðŁĵļ\": 25433,\n  \"ðŁĵļ</w>\": 15566,\n  \"ðŁĵĿ\": 31888,\n  \"ðŁĵĿ:</w>\": 48398,\n  \"ðŁĵĿ</w>\": 15853,\n  \"ðŁĵŀ</w>\": 24022,\n  \"ðŁĶ\": 1428,\n  \"ðŁĶ¥\": 3191,\n  \"ðŁĶ¥#</w>\": 44354,\n  \"ðŁĶ¥</w>\": 3016,\n  \"ðŁĶ¥ðŁĶ¥\": 5692,\n  \"ðŁĶ¥ðŁĶ¥</w>\": 11771,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\": 11004,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥\": 23408,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\": 30989,\n  \"ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥ðŁĶ¥</w>\": 48401,\n  \"ðŁĶ¥ðŁĶĹ</w>\": 35130,\n  \"ðŁĶª\": 47078,\n  \"ðŁĶª</w>\": 34545,\n  \"ðŁĶ«\": 38116,\n  \"ðŁĶ«</w>\": 20583,\n  \"ðŁĶ¬</w>\": 44227,\n  \"ðŁĶ®</w>\": 38077,\n  \"ðŁĶ´\": 12408,\n  \"ðŁĶ´</w>\": 10854,\n  \"ðŁĶ´âļªï¸ı\": 46879,\n  \"ðŁĶ´âļªï¸ı</w>\": 40055,\n  \"ðŁĶµ\": 17531,\n  \"ðŁĶµ</w>\": 17193,\n  \"ðŁĶµâļªï¸ı</w>\": 42412,\n  \"ðŁĶ¶\": 42880,\n  \"ðŁĶ¶</w>\": 36222,\n  \"ðŁĶ·</w>\": 37740,\n  \"ðŁĶ¸</w>\": 24200,\n  \"ðŁĶ¹</w>\": 19995,\n  \"ðŁĶº</w>\": 45561,\n  \"ðŁĶģ</w>\": 41299,\n  \"ðŁĶĬ\": 32580,\n  \"ðŁĶĬ</w>\": 20502,\n  \"ðŁĶİ</w>\": 44935,\n  \"ðŁĶĳ</w>\": 35127,\n  \"ðŁĶĴ</w>\": 44972,\n  \"ðŁĶĶ</w>\": 45753,\n  \"ðŁĶĹ\": 47475,\n  \"ðŁĶĹ</w>\": 14561,\n  \"ðŁĶĺ</w>\": 38995,\n  \"ðŁĶľ</w>\": 36011,\n  \"ðŁĶĿ\": 44387,\n  \"ðŁĶĿ</w>\": 29506,\n  \"ðŁķ\": 7692,\n  \"ðŁķº\": 33958,\n  \"ðŁķĬ\": 42624,\n  \"ðŁķĬ</w>\": 37760,\n  \"ðŁĸ\": 6269,\n  \"ðŁĸ¤\": 17603,\n  \"ðŁĸ¤</w>\": 10860,\n  \"ðŁĸ¥</w>\": 47990,\n  \"ðŁĹ\": 7045,\n  \"ðŁĹ£\": 33232,\n  \"ðŁĹ£</w>\": 18583,\n  \"ðŁĹ£ï¸ı</w>\": 37476,\n  \"ðŁĹĵ\": 34335,\n  \"ðŁĹĵ</w>\": 28773,\n  \"ðŁĹĵï¸ı</w>\": 39847,\n  \"ðŁĺ\": 668,\n  \"ðŁĺ¡\": 21968,\n  \"ðŁĺ¡</w>\": 17452,\n  \"ðŁĺ¡ðŁĺ¡\": 37223,\n  \"ðŁĺ¢\": 14308,\n  \"ðŁĺ¢</w>\": 9925,\n  \"ðŁĺ¢ðŁĺ¢\": 32923,\n  \"ðŁĺ¢ðŁĺ¢</w>\": 47921,\n  \"ðŁĺ£</w>\": 32718,\n  \"ðŁĺ¤\": 26872,\n  \"ðŁĺ¤</w>\": 20740,\n  \"ðŁĺ¥\": 38383,\n  \"ðŁĺ¥</w>\": 23951,\n  \"ðŁĺ¨</w>\": 38080,\n  \"ðŁĺ©\": 9051,\n  \"ðŁĺ©</w>\": 9494,\n  \"ðŁĺ©ðŁĺ©\": 22820,\n  \"ðŁĺ©ðŁĺ©</w>\": 38031,\n  \"ðŁĺ©ðŁĺ©ðŁĺ©</w>\": 49063,\n  \"ðŁĺª\": 38181,\n  \"ðŁĺª</w>\": 22243,\n  \"ðŁĺ«\": 25141,\n  \"ðŁĺ«</w>\": 22340,\n  \"ðŁĺ¬\": 23704,\n  \"ðŁĺ¬</w>\": 14549,\n  \"ðŁĺ®\": 40163,\n  \"ðŁĺ®</w>\": 21616,\n  \"ðŁĺ¯</w>\": 37858,\n  \"ðŁĺ°</w>\": 34728,\n  \"ðŁĺ±\": 10938,\n  \"ðŁĺ±</w>\": 9055,\n  \"ðŁĺ±ðŁĺ±\": 22061,\n  \"ðŁĺ±ðŁĺ±</w>\": 40767,\n  \"ðŁĺ±ðŁĺ±ðŁĺ±</w>\": 40909,\n  \"ðŁĺ²\": 40460,\n  \"ðŁĺ²</w>\": 24620,\n  \"ðŁĺ³\": 12047,\n  \"ðŁĺ³</w>\": 8223,\n  \"ðŁĺ³ðŁĺ³\": 32592,\n  \"ðŁĺ´\": 23527,\n  \"ðŁĺ´</w>\": 16415,\n  \"ðŁĺ´ðŁĺ´</w>\": 49307,\n  \"ðŁĺµ</w>\": 39368,\n  \"ðŁĺ¶</w>\": 35207,\n  \"ðŁĺ·\": 37943,\n  \"ðŁĺ·</w>\": 25759,\n  \"ðŁĺ¸</w>\": 36912,\n  \"ðŁĺ¹\": 26477,\n  \"ðŁĺ¹</w>\": 26573,\n  \"ðŁĺ¹ðŁĺ¹\": 46287,\n  \"ðŁĺº</w>\": 40613,\n  \"ðŁĺ»\": 15453,\n  \"ðŁĺ»</w>\": 12911,\n  \"ðŁĺ»ðŁĺ»\": 34414,\n  \"ðŁĺ¼</w>\": 44245,\n  \"ðŁĺ½</w>\": 45156,\n  \"ðŁĺĢ\": 12832,\n  \"ðŁĺĢ</w>\": 7334,\n  \"ðŁĺĢðŁĺĢ</w>\": 34503,\n  \"ðŁĺģ\": 6967,\n  \"ðŁĺģ</w>\": 4821,\n  \"ðŁĺģðŁĺģ\": 37900,\n  \"ðŁĺģðŁĺģ</w>\": 19213,\n  \"ðŁĺģðŁĺģðŁĺģ</w>\": 29083,\n  \"ðŁĺĤ\": 1424,\n  \"ðŁĺĤ)</w>\": 42643,\n  \"ðŁĺĤ.</w>\": 42550,\n  \"ðŁĺĤ</w>\": 1558,\n  \"ðŁĺĤâĿ¤ï¸ı</w>\": 36412,\n  \"ðŁĺĤðŁĳĮ</w>\": 42000,\n  \"ðŁĺĤðŁĺĤ\": 2286,\n  \"ðŁĺĤðŁĺĤ</w>\": 4112,\n  \"ðŁĺĤðŁĺĤðŁĺĤ\": 22233,\n  \"ðŁĺĤðŁĺĤðŁĺĤ</w>\": 4887,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ\": 9936,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 11522,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 19295,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 33415,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ</w>\": 48973,\n  \"ðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤðŁĺĤ\": 28504,\n  \"ðŁĺĤðŁĺį</w>\": 43128,\n  \"ðŁĺĤðŁĺŃ\": 28965,\n  \"ðŁĺĤðŁĺŃ</w>\": 25802,\n  \"ðŁĺĥ\": 14079,\n  \"ðŁĺĥ</w>\": 8520,\n  \"ðŁĺĥðŁĺĥ</w>\": 38358,\n  \"ðŁĺĦ\": 12141,\n  \"ðŁĺĦ</w>\": 7624,\n  \"ðŁĺĦðŁĺĦ</w>\": 32312,\n  \"ðŁĺħ\": 15245,\n  \"ðŁĺħ</w>\": 9188,\n  \"ðŁĺħðŁĺħ</w>\": 39078,\n  \"ðŁĺĨ\": 16541,\n  \"ðŁĺĨ</w>\": 10943,\n  \"ðŁĺĨðŁĺĨ</w>\": 39503,\n  \"ðŁĺĩ\": 21694,\n  \"ðŁĺĩ</w>\": 13091,\n  \"ðŁĺĪ\": 14377,\n  \"ðŁĺĪ</w>\": 9756,\n  \"ðŁĺĪðŁĺĪ</w>\": 44473,\n  \"ðŁĺī\": 9740,\n  \"ðŁĺī</w>\": 4955,\n  \"ðŁĺīðŁĺī</w>\": 40430,\n  \"ðŁĺĬ\": 4692,\n  \"ðŁĺĬ</w>\": 3020,\n  \"ðŁĺĬâĿ¤ï¸ı</w>\": 43606,\n  \"ðŁĺĬðŁĺĬ\": 12838,\n  \"ðŁĺĬðŁĺĬ</w>\": 20842,\n  \"ðŁĺĬðŁĺĬðŁĺĬ</w>\": 28685,\n  \"ðŁĺĬðŁĺĬðŁĺĬðŁĺĬ\": 35519,\n  \"ðŁĺĭ\": 12391,\n  \"ðŁĺĭ</w>\": 7203,\n  \"ðŁĺĭðŁĺĭ</w>\": 33304,\n  \"ðŁĺĮ\": 19221,\n  \"ðŁĺĮ</w>\": 12163,\n  \"ðŁĺį\": 1796,\n  \"ðŁĺį#</w>\": 42357,\n  \"ðŁĺį.</w>\": 48579,\n  \"ðŁĺį</w>\": 1754,\n  \"ðŁĺįâĿ¤</w>\": 29122,\n  \"ðŁĺįâĿ¤ï¸ı</w>\": 21945,\n  \"ðŁĺįðŁĳĮ</w>\": 41005,\n  \"ðŁĺįðŁĴķ</w>\": 35946,\n  \"ðŁĺįðŁĶ¥</w>\": 46648,\n  \"ðŁĺįðŁĺĤ</w>\": 48715,\n  \"ðŁĺįðŁĺį\": 3663,\n  \"ðŁĺįðŁĺį</w>\": 6471,\n  \"ðŁĺįðŁĺįðŁĺį\": 30614,\n  \"ðŁĺįðŁĺįðŁĺį</w>\": 7703,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺį\": 16603,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺį</w>\": 18925,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺįðŁĺį</w>\": 32078,\n  \"ðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺįðŁĺį\": 48683,\n  \"ðŁĺįðŁĺĺ\": 29646,\n  \"ðŁĺįðŁĺĺ</w>\": 19849,\n  \"ðŁĺįðŁĺŃ</w>\": 39555,\n  \"ðŁĺİ\": 7426,\n  \"ðŁĺİ</w>\": 4345,\n  \"ðŁĺİðŁĺİ</w>\": 24048,\n  \"ðŁĺİðŁĺİðŁĺİ</w>\": 39742,\n  \"ðŁĺı\": 11624,\n  \"ðŁĺı</w>\": 6909,\n  \"ðŁĺıðŁĺı</w>\": 38151,\n  \"ðŁĺĲ\": 38586,\n  \"ðŁĺĲ</w>\": 19618,\n  \"ðŁĺĳ\": 32469,\n  \"ðŁĺĳ</w>\": 18937,\n  \"ðŁĺĴ\": 20792,\n  \"ðŁĺĴ</w>\": 11702,\n  \"ðŁĺĵ</w>\": 28733,\n  \"ðŁĺĶ\": 19532,\n  \"ðŁĺĶ</w>\": 11432,\n  \"ðŁĺķ\": 45741,\n  \"ðŁĺķ</w>\": 20602,\n  \"ðŁĺĸ</w>\": 35006,\n  \"ðŁĺĺ\": 4240,\n  \"ðŁĺĺ</w>\": 3352,\n  \"ðŁĺĺâĿ¤</w>\": 48409,\n  \"ðŁĺĺâĿ¤ï¸ı</w>\": 39150,\n  \"ðŁĺĺðŁĺį</w>\": 38176,\n  \"ðŁĺĺðŁĺĺ\": 15663,\n  \"ðŁĺĺðŁĺĺ</w>\": 10507,\n  \"ðŁĺĺðŁĺĺðŁĺĺ</w>\": 20208,\n  \"ðŁĺĺðŁĺĺðŁĺĺðŁĺĺ</w>\": 44892,\n  \"ðŁĺĻ\": 36201,\n  \"ðŁĺĻ</w>\": 29209,\n  \"ðŁĺļ\": 24897,\n  \"ðŁĺļ</w>\": 19102,\n  \"ðŁĺĽ\": 24550,\n  \"ðŁĺĽ</w>\": 15745,\n  \"ðŁĺľ\": 13226,\n  \"ðŁĺľ</w>\": 7830,\n  \"ðŁĺľðŁĺľ</w>\": 43065,\n  \"ðŁĺĿ\": 20064,\n  \"ðŁĺĿ</w>\": 12970,\n  \"ðŁĺŀ\": 40458,\n  \"ðŁĺŀ</w>\": 21103,\n  \"ðŁĺŁ</w>\": 46947,\n  \"ðŁĺł</w>\": 34094,\n  \"ðŁĺŃ\": 2962,\n  \"ðŁĺŃ</w>\": 3915,\n  \"ðŁĺŃâĿ¤ï¸ı</w>\": 29567,\n  \"ðŁĺŃðŁĴķ</w>\": 46306,\n  \"ðŁĺŃðŁĺĤ</w>\": 38505,\n  \"ðŁĺŃðŁĺį</w>\": 36893,\n  \"ðŁĺŃðŁĺŃ\": 5300,\n  \"ðŁĺŃðŁĺŃ</w>\": 11834,\n  \"ðŁĺŃðŁĺŃðŁĺŃ\": 44089,\n  \"ðŁĺŃðŁĺŃðŁĺŃ</w>\": 13116,\n  \"ðŁĺŃðŁĺŃðŁĺŃðŁĺŃ\": 19793,\n  \"ðŁĺŃðŁĺŃðŁĺŃðŁĺŃ</w>\": 27322,\n  \"ðŁĺŃðŁĺŃðŁĺŃðŁĺŃðŁĺŃ</w>\": 43366,\n  \"ðŁĻ\": 1478,\n  \"ðŁĻĢ</w>\": 43092,\n  \"ðŁĻĤ\": 32006,\n  \"ðŁĻĤ</w>\": 14860,\n  \"ðŁĻĥ\": 27222,\n  \"ðŁĻĥ</w>\": 15652,\n  \"ðŁĻĦ\": 20648,\n  \"ðŁĻĦ</w>\": 13049,\n  \"ðŁĻħ\": 42702,\n  \"ðŁĻĨ\": 30050,\n  \"ðŁĻĨ</w>\": 35730,\n  \"ðŁĻĪ\": 12661,\n  \"ðŁĻĪ</w>\": 9516,\n  \"ðŁĻĪðŁĻĪ</w>\": 41796,\n  \"ðŁĻĬ\": 23684,\n  \"ðŁĻĬ</w>\": 16636,\n  \"ðŁĻĭ\": 19193,\n  \"ðŁĻĭ</w>\": 30274,\n  \"ðŁĻĮ\": 4366,\n  \"ðŁĻĮ</w>\": 4855,\n  \"ðŁĻĮðŁı»\": 26756,\n  \"ðŁĻĮðŁı»</w>\": 15799,\n  \"ðŁĻĮðŁı¼\": 26584,\n  \"ðŁĻĮðŁı¼</w>\": 15364,\n  \"ðŁĻĮðŁı½\": 36660,\n  \"ðŁĻĮðŁı½</w>\": 22962,\n  \"ðŁĻĮðŁı¾\": 38023,\n  \"ðŁĻĮðŁı¾</w>\": 26466,\n  \"ðŁĻĮðŁĻĮ\": 21202,\n  \"ðŁĻĮðŁĻĮ</w>\": 30430,\n  \"ðŁĻĮðŁĻĮðŁĻĮ</w>\": 37127,\n  \"ðŁĻı\": 4260,\n  \"ðŁĻı</w>\": 5503,\n  \"ðŁĻıðŁı»\": 25100,\n  \"ðŁĻıðŁı»</w>\": 16650,\n  \"ðŁĻıðŁı¼\": 31163,\n  \"ðŁĻıðŁı¼</w>\": 18952,\n  \"ðŁĻıðŁı½\": 34103,\n  \"ðŁĻıðŁı½</w>\": 21540,\n  \"ðŁĻıðŁı¾\": 34277,\n  \"ðŁĻıðŁı¾</w>\": 21979,\n  \"ðŁĻıðŁĻı\": 18227,\n  \"ðŁĻıðŁĻı</w>\": 26510,\n  \"ðŁĻıðŁĻıðŁĻı</w>\": 31702,\n  \"ðŁļ\": 2730,\n  \"ðŁļ¨\": 12198,\n  \"ðŁļ¨</w>\": 6056,\n  \"ðŁļ¨ðŁļ¨\": 36487,\n  \"ðŁļ¨ðŁļ¨</w>\": 21440,\n  \"ðŁļ¨ðŁļ¨ðŁļ¨</w>\": 41515,\n  \"ðŁļ©</w>\": 44514,\n  \"ðŁļ«</w>\": 35291,\n  \"ðŁļ²</w>\": 37085,\n  \"ðŁļ´\": 30825,\n  \"ðŁļ¶\": 46060,\n  \"ðŁļĢ\": 22400,\n  \"ðŁļĢ</w>\": 13542,\n  \"ðŁļĢðŁļĢ\": 49033,\n  \"ðŁļĤ</w>\": 38949,\n  \"ðŁļĮ</w>\": 46891,\n  \"ðŁļĹ\": 33054,\n  \"ðŁļĹ</w>\": 22783,\n  \"ðŁļĺ</w>\": 35825,\n  \"ðŁļĻ</w>\": 48487,\n  \"ðŁĽ\": 11306,\n  \"ñ\": 173,\n  \"ñ</w>\": 429,\n  \"ò\": 174,\n  \"ò</w>\": 430,\n  \"ó\": 175,\n  \"ó</w>\": 431,\n  \"ô\": 176,\n  \"ô</w>\": 432,\n  \"õ\": 177,\n  \"õ</w>\": 433,\n  \"ö\": 178,\n  \"ö</w>\": 434,\n  \"÷\": 179,\n  \"÷</w>\": 435,\n  \"ø\": 180,\n  \"ø</w>\": 436,\n  \"ù\": 181,\n  \"ù</w>\": 437,\n  \"ú\": 182,\n  \"ú</w>\": 438,\n  \"û\": 183,\n  \"û</w>\": 439,\n  \"ü\": 184,\n  \"ü</w>\": 440,\n  \"ý\": 185,\n  \"ý</w>\": 441,\n  \"þ\": 186,\n  \"þ</w>\": 442,\n  \"ÿ\": 187,\n  \"ÿ</w>\": 443,\n  \"Ā\": 188,\n  \"Ā</w>\": 444,\n  \"ā\": 189,\n  \"ā</w>\": 445,\n  \"Ă\": 190,\n  \"Ă</w>\": 446,\n  \"ă\": 191,\n  \"ă</w>\": 447,\n  \"Ą\": 192,\n  \"Ą</w>\": 448,\n  \"ą\": 193,\n  \"ą</w>\": 449,\n  \"Ć\": 194,\n  \"Ć</w>\": 450,\n  \"ć\": 195,\n  \"ć</w>\": 451,\n  \"Ĉ\": 196,\n  \"Ĉ</w>\": 452,\n  \"ĉ\": 197,\n  \"ĉ</w>\": 453,\n  \"Ċ\": 198,\n  \"Ċ</w>\": 454,\n  \"ċ\": 199,\n  \"ċ</w>\": 455,\n  \"Č\": 200,\n  \"Č</w>\": 456,\n  \"č\": 201,\n  \"č</w>\": 457,\n  \"Ď\": 202,\n  \"Ď</w>\": 458,\n  \"ď\": 203,\n  \"ď</w>\": 459,\n  \"Đ\": 204,\n  \"Đ</w>\": 460,\n  \"đ\": 205,\n  \"đ</w>\": 461,\n  \"Ē\": 206,\n  \"Ē</w>\": 462,\n  \"ē\": 207,\n  \"ē</w>\": 463,\n  \"Ĕ\": 208,\n  \"Ĕ</w>\": 464,\n  \"ĕ\": 209,\n  \"ĕ</w>\": 465,\n  \"Ė\": 210,\n  \"Ė</w>\": 466,\n  \"ė\": 211,\n  \"ė</w>\": 467,\n  \"Ę\": 212,\n  \"Ę</w>\": 468,\n  \"ę\": 213,\n  \"ę</w>\": 469,\n  \"Ě\": 214,\n  \"Ě</w>\": 470,\n  \"ě\": 215,\n  \"ě</w>\": 471,\n  \"Ĝ\": 216,\n  \"Ĝ</w>\": 472,\n  \"ĝ\": 217,\n  \"ĝ</w>\": 473,\n  \"Ğ\": 218,\n  \"Ğ</w>\": 474,\n  \"ğ\": 219,\n  \"ğ</w>\": 475,\n  \"Ġ\": 220,\n  \"Ġ</w>\": 476,\n  \"ġ\": 221,\n  \"ġ</w>\": 477,\n  \"Ģ\": 222,\n  \"Ģ</w>\": 478,\n  \"Ģï¸ı\": 9668,\n  \"Ģï¸ı</w>\": 5511,\n  \"ģ\": 223,\n  \"ģ</w>\": 479,\n  \"ģà¸\": 15016,\n  \"Ĥ\": 224,\n  \"Ĥ</w>\": 480,\n  \"Ĥâĸ\": 29036,\n  \"ĤâĸĤâĸ\": 30832,\n  \"ĥ\": 225,\n  \"ĥ</w>\": 481,\n  \"Ħ\": 226,\n  \"Ħ</w>\": 482,\n  \"Ħà¸\": 20537,\n  \"Ħë\": 34462,\n  \"Ħëĭ\": 25170,\n  \"ħ\": 227,\n  \"ħ</w>\": 483,\n  \"ħï¸ı</w>\": 33950,\n  \"Ĩ\": 228,\n  \"Ĩ</w>\": 484,\n  \"ĩ\": 229,\n  \"ĩ</w>\": 485,\n  \"Ī\": 230,\n  \"Ī</w>\": 486,\n  \"ī\": 231,\n  \"ī</w>\": 487,\n  \"īï¸ı</w>\": 37463,\n  \"Ĭ\": 232,\n  \"Ĭ</w>\": 488,\n  \"Ĭãģ\": 30294,\n  \"ĭ\": 233,\n  \"ĭ</w>\": 489,\n  \"ĭãģ\": 36218,\n  \"ĭãĤ\": 45737,\n  \"Į\": 234,\n  \"Į</w>\": 490,\n  \"ĮãĤĬãģ\": 45969,\n  \"ĮãĤĬãģŁãģĦ</w>\": 47021,\n  \"Įë\": 17003,\n  \"į\": 235,\n  \"į</w>\": 491,\n  \"İ\": 236,\n  \"İ</w>\": 492,\n  \"ı\": 237,\n  \"ı</w>\": 493,\n  \"Ĳ\": 238,\n  \"Ĳ</w>\": 494,\n  \"ĳ\": 239,\n  \"ĳ</w>\": 495,\n  \"Ĵ\": 240,\n  \"Ĵ</w>\": 496,\n  \"ĵ\": 241,\n  \"ĵ</w>\": 497,\n  \"Ķ\": 242,\n  \"Ķ</w>\": 498,\n  \"Ķë\": 37978,\n  \"Ķï¸ı\": 24395,\n  \"Ķï¸ı</w>\": 7443,\n  \"ķ\": 243,\n  \"ķ</w>\": 499,\n  \"ķãĤ\": 26609,\n  \"ķï¸ı</w>\": 44853,\n  \"ĸ\": 244,\n  \"ĸ</w>\": 500,\n  \"ĸï¸ı</w>\": 28877,\n  \"Ĺ\": 245,\n  \"Ĺ</w>\": 501,\n  \"ĺ\": 246,\n  \"ĺ</w>\": 502,\n  \"Ļ\": 247,\n  \"Ļ</w>\": 503,\n  \"ļ\": 248,\n  \"ļ</w>\": 504,\n  \"Ľ\": 249,\n  \"Ľ</w>\": 505,\n  \"ľ\": 250,\n  \"ľ</w>\": 506,\n  \"ľë\": 39810,\n  \"Ŀ\": 251,\n  \"Ŀ</w>\": 507,\n  \"ŀ\": 252,\n  \"ŀ</w>\": 508,\n  \"Ł\": 253,\n  \"Ł</w>\": 509,\n  \"ŁãģĦ</w>\": 46023,\n  \"ł\": 254,\n  \"ł</w>\": 510,\n  \"łï¸ı\": 27899,\n  \"łï¸ı</w>\": 12715,\n  \"łĪ\": 43364,\n  \"Ń\": 255,\n  \"Ń</w>\": 511\n}\n"
  },
  {
    "path": "configs/sdxl-refiner/unet/config.json",
    "content": "{\n  \"_class_name\": \"UNet2DConditionModel\",\n  \"_diffusers_version\": \"0.19.0.dev0\",\n  \"act_fn\": \"silu\",\n  \"addition_embed_type\": \"text_time\",\n  \"addition_embed_type_num_heads\": 64,\n  \"addition_time_embed_dim\": 256,\n  \"attention_head_dim\": [\n    6,\n    12,\n    24,\n    24\n  ],\n  \"block_out_channels\": [\n    384,\n    768,\n    1536,\n    1536\n  ],\n  \"center_input_sample\": false,\n  \"class_embed_type\": null,\n  \"class_embeddings_concat\": false,\n  \"conv_in_kernel\": 3,\n  \"conv_out_kernel\": 3,\n  \"cross_attention_dim\": 1280,\n  \"cross_attention_norm\": null,\n  \"down_block_types\": [\n    \"DownBlock2D\",\n    \"CrossAttnDownBlock2D\",\n    \"CrossAttnDownBlock2D\",\n    \"DownBlock2D\"\n  ],\n  \"downsample_padding\": 1,\n  \"dual_cross_attention\": false,\n  \"encoder_hid_dim\": null,\n  \"encoder_hid_dim_type\": null,\n  \"flip_sin_to_cos\": true,\n  \"freq_shift\": 0,\n  \"in_channels\": 4,\n  \"layers_per_block\": 2,\n  \"mid_block_only_cross_attention\": null,\n  \"mid_block_scale_factor\": 1,\n  \"mid_block_type\": \"UNetMidBlock2DCrossAttn\",\n  \"norm_eps\": 1e-05,\n  \"norm_num_groups\": 32,\n  \"num_attention_heads\": null,\n  \"num_class_embeds\": null,\n  \"only_cross_attention\": false,\n  \"out_channels\": 4,\n  \"projection_class_embeddings_input_dim\": 2560,\n  \"resnet_out_scale_factor\": 1.0,\n  \"resnet_skip_time_act\": false,\n  \"resnet_time_scale_shift\": \"default\",\n  \"sample_size\": 128,\n  \"time_cond_proj_dim\": null,\n  \"time_embedding_act_fn\": null,\n  \"time_embedding_dim\": null,\n  \"time_embedding_type\": \"positional\",\n  \"timestep_post_act\": null,\n  \"transformer_layers_per_block\": 4,\n  \"up_block_types\": [\n    \"UpBlock2D\",\n    \"CrossAttnUpBlock2D\",\n    \"CrossAttnUpBlock2D\",\n    \"UpBlock2D\"\n  ],\n  \"upcast_attention\": null,\n  \"use_linear_projection\": true\n}\n"
  },
  {
    "path": "configs/sdxl-refiner/vae/config.json",
    "content": "{\n  \"_class_name\": \"AutoencoderKL\",\n  \"_diffusers_version\": \"0.20.0.dev0\",\n  \"_name_or_path\": \"../sdxl-vae/\",\n  \"act_fn\": \"silu\",\n  \"block_out_channels\": [\n    128,\n    256,\n    512,\n    512\n  ],\n  \"down_block_types\": [\n    \"DownEncoderBlock2D\",\n    \"DownEncoderBlock2D\",\n    \"DownEncoderBlock2D\",\n    \"DownEncoderBlock2D\"\n  ],\n  \"force_upcast\": true,\n  \"in_channels\": 3,\n  \"latent_channels\": 4,\n  \"layers_per_block\": 2,\n  \"norm_num_groups\": 32,\n  \"out_channels\": 3,\n  \"sample_size\": 1024,\n  \"scaling_factor\": 0.13025,\n  \"up_block_types\": [\n    \"UpDecoderBlock2D\",\n    \"UpDecoderBlock2D\",\n    \"UpDecoderBlock2D\",\n    \"UpDecoderBlock2D\"\n  ]\n}\n"
  },
  {
    "path": "configs/stable-cascade/prior/config.json",
    "content": "{\n  \"_class_name\": \"StableCascadeUNet\",\n  \"_diffusers_version\": \"0.27.0.dev0\",\n  \"block_out_channels\": [\n    2048,\n    2048\n  ],\n  \"block_types_per_layer\": [\n    [\n      \"SDCascadeResBlock\",\n      \"SDCascadeTimestepBlock\",\n      \"SDCascadeAttnBlock\"\n    ],\n    [\n      \"SDCascadeResBlock\",\n      \"SDCascadeTimestepBlock\",\n      \"SDCascadeAttnBlock\"\n    ]\n  ],\n  \"clip_image_in_channels\": 768,\n  \"clip_seq\": 4,\n  \"clip_text_in_channels\": 1280,\n  \"clip_text_pooled_in_channels\": 1280,\n  \"conditioning_dim\": 2048,\n  \"down_blocks_repeat_mappers\": [\n    1,\n    1\n  ],\n  \"down_num_layers_per_block\": [\n    8,\n    24\n  ],\n  \"dropout\": [\n    0.1,\n    0.1\n  ],\n  \"effnet_in_channels\": null,\n  \"in_channels\": 16,\n  \"kernel_size\": 3,\n  \"num_attention_heads\": [\n    32,\n    32\n  ],\n  \"out_channels\": 16,\n  \"patch_size\": 1,\n  \"pixel_mapper_in_channels\": null,\n  \"self_attn\": true,\n  \"switch_level\": [\n    false\n  ],\n  \"timestep_conditioning_type\": [\n    \"sca\",\n    \"crp\"\n  ],\n  \"timestep_ratio_embedding_dim\": 64,\n  \"up_blocks_repeat_mappers\": [\n    1,\n    1\n  ],\n  \"up_num_layers_per_block\": [\n    24,\n    8\n  ]\n}\n"
  },
  {
    "path": "configs/stable-cascade/prior_lite/config.json",
    "content": "{\n  \"_class_name\": \"StableCascadeUNet\",\n  \"_diffusers_version\": \"0.27.0.dev0\",\n  \"block_out_channels\": [\n    1536,\n    1536\n  ],\n  \"block_types_per_layer\": [\n    [\n      \"SDCascadeResBlock\",\n      \"SDCascadeTimestepBlock\",\n      \"SDCascadeAttnBlock\"\n    ],\n    [\n      \"SDCascadeResBlock\",\n      \"SDCascadeTimestepBlock\",\n      \"SDCascadeAttnBlock\"\n    ]\n  ],\n  \"clip_image_in_channels\": 768,\n  \"clip_seq\": 4,\n  \"clip_text_in_channels\": 1280,\n  \"clip_text_pooled_in_channels\": 1280,\n  \"conditioning_dim\": 1536,\n  \"down_blocks_repeat_mappers\": [\n    1,\n    1\n  ],\n  \"down_num_layers_per_block\": [\n    4,\n    12\n  ],\n  \"dropout\": [\n    0.1,\n    0.1\n  ],\n  \"effnet_in_channels\": null,\n  \"in_channels\": 16,\n  \"kernel_size\": 3,\n  \"num_attention_heads\": [\n    24,\n    24\n  ],\n  \"out_channels\": 16,\n  \"patch_size\": 1,\n  \"pixel_mapper_in_channels\": null,\n  \"self_attn\": true,\n  \"switch_level\": [\n    false\n  ],\n  \"timestep_conditioning_type\": [\n    \"sca\",\n    \"crp\"\n  ],\n  \"timestep_ratio_embedding_dim\": 64,\n  \"up_blocks_repeat_mappers\": [\n    1,\n    1\n  ],\n  \"up_num_layers_per_block\": [\n    12,\n    4\n  ]\n}\n"
  },
  {
    "path": "data/previews.json",
    "content": "{\n  \"sd-v21-512-ema\": \"models/Reference/stabilityai--stable-diffusion-2-1-base.jpg\",\n  \"stabilityai--stable-diffusion-xl-base-1.0\": \"models/Reference/stabilityai--stable-diffusion-xl-base-1.0.jpg\",\n  \"stabilityai--stable-diffusion-3-medium-diffusers\": \"models/Reference/stabilityai--stable-diffusion-3.jpg\",\n  \"stabilityai--stable-diffusion-3.5-medium\": \"models/Reference/stabilityai--stable-diffusion-3_5-medium.jpg\",\n  \"stabilityai--stable-diffusion-3.5-large\": \"models/Reference/stabilityai--stable-diffusion-3_5-large.jpg\",\n  \"stabilityai--stable-diffusion-3.5-large-turbo\": \"models/Reference/stabilityai--stable-diffusion-3_5-large-turbo.jpg\",\n  \"Disty0--FLUX.1-dev-qint8\": \"models/Reference/black-forest-labs--FLUX.1-dev.jpg\",\n  \"Disty0--FLUX.1-dev-qint4\": \"models/Reference/black-forest-labs--FLUX.1-dev.jpg\",\n  \"sayakpaul--flux.1-dev-nf4\": \"models/Reference/black-forest-labs--FLUX.1-dev.jpg\",\n  \"THUDM--CogVideoX-2b\": \"models/Reference/THUDM--CogView3-Plus-3B.jpg\",\n  \"THUDM--CogVideoX-5b\": \"models/Reference/THUDM--CogView3-Plus-3B.jpg\",\n  \"THUDM--CogVideoX-5b-I2V\": \"models/Reference/THUDM--CogView3-Plus-3B.jpg\",\n  \"Efficient-Large-Model--Sana_1600M_1024px_BF16_diffusers\": \"models/Reference/Efficient-Large-Model--Sana_1600M_1024px_diffusers.jpg\",\n  \"Efficient-Large-Model--Sana_1600M_2Kpx_BF16_diffusers\": \"models/Reference/Efficient-Large-Model--Sana_1600M_1024px_diffusers.jpg\",\n  \"Efficient-Large-Model--Sana_1600M_4Kpx_BF16_diffusers\": \"models/Reference/Efficient-Large-Model--Sana_1600M_1024px_diffusers.jpg\",\n  \"Efficient-Large-Model--Sana_600M_1024px_diffusers\": \"models/Reference/Efficient-Large-Model--Sana_1600M_1024px_diffusers.jpg\",\n  \"stabilityai--stable-video-diffusion-img2vid-xt-1-1\": \"models/Reference/stabilityai--stable-video-diffusion-img2vid-xt.jpg\",\n  \"shuttleai--shuttle-3-diffusion\": \"models/Reference/shuttleai--shuttle-3-diffusion.jpg\",\n  \"HiDream-I1-Full\": \"models/Reference/HiDream-I1 Full\",\n  \"lodestones--Chroma1-Base\": \"models/Reference/lodestones--Chroma-Base.jpg\",\n  \"lodestones--Chroma1-HD\": \"models/Reference/lodestones--Chroma-HD.jpg\",\n  \"chroma-unlocked-v50\": \"models/Reference/lodestones--Chroma-detail.jpg\",\n  \"chroma-unlocked-v50-annealed\": \"models/Reference/lodestones--Chroma-annealed.jpg\",\n  \"vladmandic--Qwen-Lightning\": \"models/Reference/Qwen-Lightning.jpg\",\n  \"vladmandic--Qwen-Lightning-Edit\": \"models/Reference/Qwen-Lightning.jpg\",\n  \"Wan-AI--Wan2.2-T2V-A14B-Diffusers\": \"models/Reference/Wan-AI--Wan2.2-T2V-A14B-Diffusers.jpg\",\n  \"Wan-AI--Wan2.1-T2V-14B-Diffusers\": \"models/Reference/Wan-AI--Wan2.1-T2V-14B-Diffusers.jpg\",\n  \"linoyts--Wan2.2-VACE-Fun-14B-diffusers\": \"models/Reference/linoyts--Wan2.2-VACE-Fun-14B-diffusers.jpg\"\n}\n"
  },
  {
    "path": "data/reference-cloud.json",
    "content": "{\n    \"Google Gemini 2.5 Flash Nano Banana\": {\n    \"path\": \"gemini-2.5-flash-image\",\n    \"desc\": \"Gemini can generate and process images conversationally. You can prompt Gemini with text, images, or a combination of both allowing you to create, edit, and iterate on visuals with unprecedented control.\",\n    \"preview\": \"gemini-2.5-flash-image.jpg\",\n    \"tags\": \"cloud\",\n    \"skip\": true\n  },\n  \"Google Gemini 3.0 Pro Nano Banana\": {\n    \"path\": \"gemini-3-pro-image-preview\",\n    \"desc\": \"Built on Gemini 3. Create and edit images with studio-quality levels of precision and control\",\n    \"preview\": \"gemini-3-pro-image-preview.jpg\",\n    \"tags\": \"cloud\",\n    \"skip\": true\n  }\n}\n"
  },
  {
    "path": "data/reference-community.json",
    "content": "{\n    \"Tempest-by-Vlad XL\": {\n    \"path\": \"tempestByVlad_baseV01.safetensors@https://civitai.com/api/download/models/1301775\",\n    \"preview\": \"tempestByVlad_baseV01.jpg\",\n    \"desc\": \"Flexible SDXL model with custom encoder and finetuned for larger landscape resolutions with high details and high contrast.\",\n    \"tags\": \"community\",\n    \"size\": 6.94,\n    \"date\": \"2025 January\",\n    \"extras\": \"\"\n  },\n  \"Tempest-by-Vlad XL Hyper\": {\n    \"path\": \"tempestByVlad_hyperV01.safetensors@https://civitai.com/api/download/models/1343512\",\n    \"preview\": \"tempestByVlad_hyperV01.jpg\",\n    \"desc\": \"Custom distilled variant with goal to get as-normal-as-possible model that works with low steps and guidance-free\",\n    \"tags\": \"community\",\n    \"size\": 6.94,\n    \"date\": \"2025 January\",\n    \"extras\": \"\"\n  },\n  \"Juggernaut XL XI\": {\n    \"path\": \"juggernautXL_juggXIByRundiffusion.safetensors@https://civitai.com/api/download/models/782002\",\n    \"preview\": \"juggernautXL_juggXIByRundiffusion.jpg\",\n    \"desc\": \"Showcase finetuned model based on Stable diffusion XL\",\n    \"date\": \"2024 August\",\n    \"size\": 6.94,\n    \"tags\": \"community\",\n    \"extras\": \"sampler: DEIS, steps: 20, cfg_scale: 6.0\"\n  },\n  \"Juggernaut XL XI Lightning\": {\n    \"path\": \"juggernautXL_juggXILightningByRD.safetensors@https://civitai.com/api/download/models/920957\",\n    \"preview\": \"juggernautXL_juggXILightningByRD.jpg\",\n    \"desc\": \"Showcase finetuned model based on Stable diffusion XL\",\n    \"date\": \"2024 August\",\n    \"size\": 6.94,\n    \"tags\": \"community\",\n    \"extras\": \"sampler: DPM SDE, steps: 6, cfg_scale: 2.0\"\n  },\n  \"Juggernaut SD Reborn\": {\n    \"original\": true,\n    \"path\": \"juggernaut_reborn.safetensors@https://civitai.com/api/download/models/274039\",\n    \"preview\": \"juggernaut_reborn.jpg\",\n    \"desc\": \"Showcase finetuned model based on Stable diffusion 1.5\",\n    \"date\": \"2023 December\",\n    \"size\": 2.28,\n    \"tags\": \"community\",\n    \"extras\": \"width: 512, height: 512, sampler: DEIS, steps: 20, cfg_scale: 6.0\"\n  },\n  \"WAI Illustrious XL v15\": {\n    \"path\": \"waiIllustriousSDXL_v150.safetensors@https://civitai.com/api/download/models/2167369\",\n    \"preview\": \"waiIllustriousSDXL_v150.jpg\",\n    \"desc\": \"\",\n    \"tags\": \"community\",\n    \"size\": 6.94,\n    \"date\": \"2025 August\",\n    \"extras\": \"\"\n  },\n  \"Pony Realism XL v2.3\": {\n    \"path\": \"ponyRealism_V23.safetensors@https://civitai.com/api/download/models/1763661\",\n    \"preview\": \"ponyRealism_V23.jpg\",\n    \"desc\": \"\",\n    \"tags\": \"community\",\n    \"size\": 6.94,\n    \"date\": \"2025 May\",\n    \"extras\": \"\"\n  },\n  \"NoobAI XL 1.0 V-Pred\": {\n    \"path\": \"noobaiXLNAIXL_vPred10Version.safetensors@https://huggingface.co/Laxhar/noobai-XL-Vpred-1.0/resolve/main/NoobAI-XL-Vpred-v1.0.safetensors\",\n    \"preview\": \"noobaiXLNAIXL_vPred10Version.jpg\",\n    \"desc\": \"\",\n    \"tags\": \"community\",\n    \"size\": 6.94,\n    \"date\": \"2024 December\",\n    \"extras\": \"\"\n  },\n  \"NoobAI XL 1.1 Epsilon\": {\n    \"path\": \"noobaiXLNAIXL_epsilonPred11Version.safetensors@https://huggingface.co/Laxhar/noobai-XL-1.1/resolve/main/NoobAI-XL-v1.1.safetensors\",\n    \"preview\": \"noobaiXLNAIXL_epsilonPred11Version.jpg\",\n    \"desc\": \"\",\n    \"tags\": \"community\",\n    \"size\": 6.94,\n    \"date\": \"2024 November\",\n    \"extras\": \"\"\n  },\n  \"WAI-Ani-Pony XL v14\": {\n    \"path\": \"waiANIPONYXL_v140.safetensors.safetensors@https://civitai.com/api/download/models/1767402\",\n    \"preview\": \"waiANIPONYXL_v140.jpg\",\n    \"desc\": \"\",\n    \"tags\": \"community\",\n    \"size\": 6.94,\n    \"date\": \"2025 May\",\n    \"extras\": \"\"\n  },\n  \"Tiwaz CenKreChro\": {\n    \"path\": \"Tiwaz/CenKreChro\",\n    \"preview\": \"Tiwaz--CenKreChro.jpg\",\n    \"skip\": true,\n    \"desc\": \"Based Centerfold Flux 5, trying to merge in Chroma and Krea.\",\n    \"extras\": \"\",\n    \"tags\": \"community\",\n    \"date\": \"2025 September\"\n  },\n  \"purplesmartai Pony 7\": {\n    \"path\": \"purplesmartai/pony-v7-base\",\n    \"preview\": \"purplesmartai--pony-v7-base.jpg\",\n    \"skip\": true,\n    \"desc\": \"Pony V7 is a versatile character generation model based on AuraFlow architecture. It supports a wide range of styles and species types (humanoid, anthro, feral, and more) and handles character interactions through natural language prompts.\",\n    \"extras\": \"\",\n    \"tags\": \"community\",\n    \"date\": \"October September\"\n  },\n  \"ShuttleAI Shuttle 3.0 Diffusion\": {\n    \"path\": \"shuttleai/shuttle-3-diffusion\",\n    \"desc\": \"Shuttle uses Flux.1 Schnell as its base. It can produce images similar to Flux Dev or Pro in just 4 steps, and it is licensed under Apache 2. The model was partially de-distilled during training. When used beyond 10 steps, it enters refiner mode enhancing image details without altering the composition\",\n    \"preview\": \"shuttleai--shuttle-3-diffusion.jpg\",\n    \"tags\": \"community\",\n    \"skip\": true\n  },\n  \"ShuttleAI Shuttle 3.1 Aesthetic\": {\n    \"path\": \"shuttleai/shuttle-3.1-aesthetic\",\n    \"desc\": \"Shuttle uses Flux.1 Schnell as its base. It can produce images similar to Flux Dev or Pro in just 4 steps, and it is licensed under Apache 2. The model was partially de-distilled during training. When used beyond 10 steps, it enters refiner mode enhancing image details without altering the composition\",\n    \"preview\": \"shuttleai--shuttle-3_1-aestetic.jpg\",\n    \"tags\": \"community\",\n    \"skip\": true\n  },\n  \"ShuttleAI Shuttle Jaguar\": {\n    \"path\": \"shuttleai/shuttle-jaguar\",\n    \"desc\": \"Shuttle uses Flux.1 Schnell as its base. It can produce images similar to Flux Dev or Pro in just 4 steps, and it is licensed under Apache 2. The model was partially de-distilled during training. When used beyond 10 steps, it enters refiner mode enhancing image details without altering the composition\",\n    \"preview\": \"shuttleai--shuttle-jaguar.jpg\",\n    \"tags\": \"community\",\n    \"skip\": true\n  },\n  \"Anima\": {\n    \"path\": \"CalamitousFelicitousness/Anima-sdnext-diffusers\",\n    \"preview\": \"CalamitousFelicitousness--Anima-sdnext-diffusers.png\",\n    \"desc\": \"Modified Cosmos-Predict-2B that replaces the T5-11B text encoder with Qwen3-0.6B. Anima is a 2 billion parameter text-to-image model created via a collaboration between CircleStone Labs and Comfy Org. It is focused mainly on anime concepts, characters, and styles, but is also capable of generating a wide variety of other non-photorealistic content. The model is designed for making illustrations and artistic images, and will not work well at realism.\",\n    \"tags\": \"community\",\n    \"skip\": true\n  }\n}\n"
  },
  {
    "path": "data/reference-distilled.json",
    "content": "{\n    \"StabilityAI StableDiffusion XL Turbo\": {\n    \"path\": \"stabilityai/sdxl-turbo\",\n    \"preview\": \"stabilityai--sdxl-turbo.jpg\",\n    \"desc\": \"SDXL-Turbo is a fast generative text-to-image model that can synthesize photorealistic images from a text prompt in a 1-4 steps.\",\n    \"skip\": true,\n    \"variant\": \"fp16\",\n    \"tags\": \"distilled\",\n    \"extras\": \"steps: 4, cfg_scale: 0.0\"\n  },\n  \"StabilityAI Stable Cascade Lite\": {\n    \"path\": \"huggingface/stabilityai/stable-cascade-lite\",\n    \"skip\": true,\n    \"variant\": \"bf16\",\n    \"desc\": \"Stable Cascade is a diffusion model built upon the Würstchen architecture and its main difference to other models like Stable Diffusion is that it is working at a much smaller latent space. Why is this important? The smaller the latent space, the faster you can run inference and the cheaper the training becomes. How small is the latent space? Stable Diffusion uses a compression factor of 8, resulting in a 1024x1024 image being encoded to 128x128. Stable Cascade achieves a compression factor of 42, meaning that it is possible to encode a 1024x1024 image to 24x24, while maintaining crisp reconstructions. The text-conditional model is then trained in the highly compressed latent space. Previous versions of this architecture, achieved a 16x cost reduction over Stable Diffusion 1.5\",\n    \"preview\": \"stabilityai--stable-cascade-lite.jpg\",\n    \"extras\": \"sampler: Default, cfg_scale: 4.0, image_cfg_scale: 1.0\",\n    \"size\": 4.97,\n    \"tags\": \"distilled\",\n    \"date\": \"2024 February\"\n  },\n  \"StabilityAI Stable Diffusion 3.5 Turbo\": {\n    \"path\": \"stabilityai/stable-diffusion-3.5-large-turbo\",\n    \"skip\": true,\n    \"variant\": \"fp16\",\n    \"desc\": \"Stable Diffusion 3.5 Large Turbo is a Multimodal Diffusion Transformer (MMDiT) text-to-image model with Adversarial Diffusion Distillation (ADD) that features improved performance in image quality, typography, complex prompt understanding, and resource-efficiency, with a focus on fewer inference steps.\",\n    \"preview\": \"stabilityai--stable-diffusion-3_5-large-turbo.jpg\",\n    \"tags\": \"distilled\",\n    \"extras\": \"sampler: Default, cfg_scale: 7.0\"\n  },\n  \"Tencent FLUX.1 Dev SRPO\": {\n    \"path\": \"vladmandic/flux.1-dev-SRPO\",\n    \"preview\": \"vladmandic--flux.1-dev-SRPO.jpg\",\n    \"desc\": \"FLUX.1 Dev SRPO is Tencent trained with specific technique: Directly Aligning the Full Diffusion Trajectory with Fine-Grained Human Preference\",\n    \"tags\": \"distilled\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default, cfg_scale: 4.5\"\n  },\n  \"Qwen-Image-Lightning\": {\n    \"path\": \"vladmandic/Qwen-Lightning\",\n    \"preview\": \"vladmandic--Qwen-Lightning.jpg\",\n    \"desc\": \"Qwen-Lightning is step-distilled from Qwen-Image to allow for generation in 8 steps.\",\n    \"skip\": true,\n    \"extras\": \"steps: 8\",\n    \"size\": 56.1,\n    \"tags\": \"distilled\",\n    \"date\": \"2025 August\"\n  },\n  \"Qwen-Image-Distill\": {\n    \"path\": \"SahilCarterr/Qwen-Image-Distill-Full\",\n    \"preview\": \"SahilCarterr--Qwen-Image-Distill-Full.jpg\",\n    \"desc\": \"Qwen-Image-Distill is a distilled and accelerated version of Qwen-Image by DiffSynth-Studio.\",\n    \"skip\": true,\n    \"extras\": \"steps: 15\",\n    \"size\": 56.1,\n    \"tags\": \"distilled\",\n    \"date\": \"2025 August\"\n  },\n  \"Qwen-Image-Lightning-Edit\": {\n    \"path\": \"vladmandic/Qwen-Lightning-Edit\",\n    \"preview\": \"vladmandic--Qwen-Lightning-Edit.jpg\",\n    \"desc\": \"Qwen-Lightning-Edit is step-distilled from Qwen-Image-Edit to allow for generation in 8 steps.\",\n    \"skip\": true,\n    \"extras\": \"steps: 8\",\n    \"size\": 56.1,\n    \"tags\": \"distilled\",\n    \"date\": \"2025 August\"\n  },\n  \"Qwen-Image Pruning-12B\": {\n    \"path\": \"OPPOer/Qwen-Image-Pruning\",\n    \"subfolder\": \"Qwen-Image-12B-8steps\",\n    \"preview\": \"OPPOer--Qwen-Image-Pruning.jpg\",\n    \"desc\": \"This open-source project is based on Qwen-Image and has attempted model pruning, removing 20 layers while retaining the weights of 40 layers, resulting in a model size of 12B parameters.\",\n    \"skip\": true,\n    \"tags\": \"distilled\",\n    \"date\": \"2025 Ocotober\"\n  },\n  \"Qwen-Image-Edit Pruning-13B\": {\n    \"path\": \"OPPOer/Qwen-Image-Edit-Pruning\",\n    \"subfolder\": \"Qwen-Image-Edit-13B-4steps\",\n    \"preview\": \"OPPOer--Qwen-Image-Edit-Pruning.jpg\",\n    \"desc\": \"This open-source project is based on Qwen-Image-Edit and has attempted model pruning, removing 20 layers while retaining the weights of 40 layers, resulting in a model size of 13.6B parameters.\",\n    \"skip\": true,\n    \"tags\": \"distilled\",\n    \"date\": \"2025 Ocotober\"\n  },\n  \"Qwen-Image-Edit-2509 Pruning-13B\": {\n    \"path\": \"OPPOer/Qwen-Image-Edit-2509-Pruning\",\n    \"subfolder\": \"Qwen-Image-Edit-2509-13B-4steps\",\n    \"preview\": \"OPPOer--Qwen-Image-Edit-2509-Pruning.jpg\",\n    \"desc\": \"This open-source project is based on Qwen-Image-Edit and has attempted model pruning, removing 20 layers while retaining the weights of 40 layers, resulting in a model size of 13.6B parameters.\",\n    \"skip\": true,\n    \"tags\": \"distilled\",\n    \"date\": \"2025 Ocotober\"\n  },\n  \"lodestones Chroma1 Flash\": {\n    \"path\": \"lodestones/Chroma1-Flash\",\n    \"preview\": \"lodestones--Chroma1-Flash.jpg\",\n    \"desc\": \"Chroma is a 8.9B parameter model based on FLUX.1-schnell. It’s fully Apache 2.0 licensed, ensuring that anyone can use, modify, and build on top of it—no corporate gatekeeping. A fine-tuned version of the Chroma1-Base made to find the best way to make these flow matching models faster.\",\n    \"skip\": true,\n    \"extras\": \"\",\n    \"size\": 26.84,\n    \"tags\": \"distilled\",\n    \"date\": \"2025 July\"\n  },\n  \"SDXL Flash Mini\": {\n    \"path\": \"SDXL-Flash_Mini.safetensors@https://huggingface.co/sd-community/sdxl-flash-mini/resolve/main/SDXL-Flash_Mini.safetensors?download=true\",\n    \"preview\": \"SDXL-Flash_Mini.jpg\",\n    \"desc\": \"Introducing the new fast model SDXL Flash (Mini), we learned that all fast XL models work fast, but the quality decreases, and we also made a fast model, but it is not as fast as LCM, Turbo, Lightning and Hyper, but the quality is higher.\",\n    \"extras\": \"width: 2048, height: 1024, sampler: DEIS, steps: 40, cfg_scale: 6.0\",\n    \"tags\": \"distilled\",\n    \"experimental\": true\n  },\n  \"NVLabs Sana 1.5 1.6B 1k Sprint\": {\n    \"path\": \"Efficient-Large-Model/Sana_Sprint_1.6B_1024px_diffusers\",\n    \"desc\": \"SANA-Sprint is an ultra-efficient diffusion model for text-to-image (T2I) generation, reducing inference steps from 20 to 1-4 while achieving state-of-the-art performance.\",\n    \"preview\": \"Efficient-Large-Model--Sana15_Sprint_1600M_1024px_diffusers.jpg\",\n    \"tags\": \"distilled\",\n    \"skip\": true\n  },\n  \"Segmind SSD-1B\": {\n    \"path\": \"huggingface/segmind/SSD-1B\",\n    \"preview\": \"segmind--SSD-1B.jpg\",\n    \"desc\": \"The Segmind Stable Diffusion Model (SSD-1B) offers a compact, efficient, and distilled version of the SDXL model. At 50% smaller and 60% faster than Stable Diffusion XL (SDXL), it provides quick and seamless performance without sacrificing image quality.\",\n    \"variant\": \"fp16\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default, cfg_scale: 9.0\",\n    \"size\": 8.72,\n    \"tags\": \"distilled\",\n    \"date\": \"2023 October\"\n  },\n  \"Segmind Tiny\": {\n    \"path\": \"segmind/tiny-sd\",\n    \"preview\": \"segmind--tiny-sd.jpg\",\n    \"desc\": \"Segmind's Tiny-SD offers a compact, efficient, and distilled version of Realistic Vision 4.0 and is up to 80% faster than SD1.5\",\n    \"extras\": \"width: 512, height: 512, sampler: Default, cfg_scale: 9.0\",\n    \"size\": 1.03,\n    \"tags\": \"distilled\",\n    \"date\": \"2023 July\"\n  },\n  \"Tencent HunyuanImage 2.1 Distilled\": {\n    \"path\": \"hunyuanvideo-community/HunyuanImage-2.1-Distilled-Diffusers\",\n    \"desc\": \"HunyuanImage-2.1, a highly efficient text-to-image model that is capable of generating 2K (2048 × 2048) resolution images.\",\n    \"preview\": \"hunyuanvideo-community--HunyuanImage-2.1-Distilled-Diffusers.jpg\",\n    \"extras\": \"\",\n    \"tags\": \"distilled\",\n    \"skip\": true,\n    \"size\": 0,\n    \"date\": \"2025 August\"\n  },\n  \"Tencent HunyuanDiT 1.2 Distilled\": {\n    \"path\": \"Tencent-Hunyuan/HunyuanDiT-v1.2-Diffusers-Distilled\",\n    \"desc\": \"Hunyuan-DiT : A Powerful Multi-Resolution Diffusion Transformer with Fine-Grained Chinese Understanding.\",\n    \"preview\": \"Tencent-Hunyuan--HunyuanDiT-v1.2-Diffusers-Distilled.jpg\",\n    \"tags\": \"distilled\",\n    \"extras\": \"sampler: Default, cfg_scale: 2.0\"\n  },\n  \"Tencent HunyuanDiT 1.1 Distilled\": {\n    \"path\": \"Tencent-Hunyuan/HunyuanDiT-v1.1-Diffusers-Distilled\",\n    \"desc\": \"Hunyuan-DiT : A Powerful Multi-Resolution Diffusion Transformer with Fine-Grained Chinese Understanding.\",\n    \"preview\": \"Tencent-Hunyuan--HunyuanDiT-v1.1-Diffusers-Distilled.jpg\",\n    \"tags\": \"distilled\",\n    \"extras\": \"sampler: Default, cfg_scale: 2.0\"\n  },\n  \"Black Forest Labs FLUX.2 Klein 4B\": {\n    \"path\": \"black-forest-labs/FLUX.2-klein-4B\",\n    \"preview\": \"black-forest-labs--FLUX.2-klein-4B.jpg\",\n    \"desc\": \"FLUX.2-klein-4B is a 4 billion parameter size-distilled version of FLUX.2-dev optimized for consumer GPUs. Achieves sub-second inference with 4 steps. Supports both text-to-image generation and multi-reference image editing. Apache 2.0 licensed.\",\n    \"skip\": true,\n    \"tags\": \"distilled\",\n    \"extras\": \"sampler: Default, cfg_scale: 1.0, steps: 4\",\n    \"size\": 8.5,\n    \"date\": \"2025 January\"\n  },\n  \"Black Forest Labs FLUX.2 Klein 9B\": {\n    \"path\": \"black-forest-labs/FLUX.2-klein-9B\",\n    \"preview\": \"black-forest-labs--FLUX.2-klein-9B.jpg\",\n    \"desc\": \"FLUX.2-klein-9B is a 9 billion parameter size-distilled version of FLUX.2-dev. Higher quality than 4B variant with sub-second inference using 4 steps. Supports text-to-image and multi-reference editing. Non-commercial license.\",\n    \"skip\": true,\n    \"tags\": \"distilled\",\n    \"extras\": \"sampler: Default, cfg_scale: 1.0, steps: 4\",\n    \"size\": 18.5,\n    \"date\": \"2025 January\"\n  }\n}\n"
  },
  {
    "path": "data/reference-quant.json",
    "content": "{\n   \"FLUX.1-Dev sdnq-svd-uint4\": {\n    \"path\": \"Disty0/FLUX.1-dev-SDNQ-uint4-svd-r32\",\n    \"preview\": \"Disty0--FLUX.1-dev-SDNQ-uint4-svd-r32.jpg\",\n    \"desc\": \"Quantization of black-forest-labs/FLUX.1-dev using SDNQ: sdnq-svd 4-bit uint with svd rank 32\",\n    \"skip\": true,\n    \"tags\": \"quantized\",\n    \"size\": 12.60,\n    \"date\": \"2025 October\",\n    \"extras\": \"\"\n  },\n  \"FLUX.1-Schnell sdnq-svd-uint4\": {\n    \"path\": \"Disty0/FLUX.1-schnell-SDNQ-uint4-svd-r32\",\n    \"preview\": \"Disty0--FLUX.1-schnell-SDNQ-uint4-svd-r32.jpg\",\n    \"desc\": \"Quantization of black-forest-labs/FLUX.1-schnell using SDNQ: sdnq-svd 4-bit uint with svd rank 32\",\n    \"skip\": true,\n    \"tags\": \"quantized\",\n    \"size\": 12.60,\n    \"date\": \"2025 October\",\n    \"extras\": \"\"\n  },\n  \"FLUX.1-Dev Krea sdnq-svd-uint4\": {\n    \"path\": \"Disty0/FLUX.1-Krea-dev-SDNQ-uint4-svd-r32\",\n    \"preview\": \"Disty0--FLUX.1-Krea-dev-SDNQ-uint4-svd-r32.jpg\",\n    \"desc\": \"Quantization of black-forest-labs/FLUX.1-Krea-dev using SDNQ: sdnq-svd 4-bit uint with svd rank 32\",\n    \"skip\": true,\n    \"tags\": \"quantized\",\n    \"size\": 12.60,\n    \"date\": \"2025 October\",\n    \"extras\": \"\"\n  },\n  \"FLUX.1-Dev Kontext sdnq-svd-uint4\": {\n    \"path\": \"Disty0/FLUX.1-Kontext-dev-SDNQ-uint4-svd-r32\",\n    \"preview\": \"Disty0--FLUX.1-Kontext-dev-SDNQ-uint4-svd-r32.jpg\",\n    \"desc\": \"Quantization of black-forest-labs/FLUX.1-Kontext-dev using SDNQ: sdnq-svd 4-bit uint with svd rank 32\",\n    \"skip\": true,\n    \"tags\": \"quantized\",\n    \"size\": 12.60,\n    \"date\": \"2025 October\",\n    \"extras\": \"\"\n  },\n  \"FLUX.2 Dev sdnq-svd-uint4\": {\n    \"path\": \"Disty0/FLUX.2-dev-SDNQ-uint4-svd-r32\",\n    \"preview\": \"Disty0--FLUX.2-dev-SDNQ-uint4-svd-r32.jpg\",\n    \"desc\": \"Quantization of black-forest-labs/FLUX.2-dev using SDNQ: sdnq-svd 4-bit uint with svd rank 32\",\n    \"skip\": true,\n    \"tags\": \"quantized\",\n    \"extras\": \"\",\n    \"size\": 31.58,\n    \"date\": \"2025 November\"\n  },\n  \"Black Forest Labs FLUX.2 Klein 4B sdnq-uint4-dynamic\": {\n    \"path\": \"Disty0/FLUX.2-klein-4B-SDNQ-4bit-dynamic\",\n    \"preview\": \"Disty0--FLUX.2-klein-4B-SDNQ-4bit-dynamic.jpg\",\n    \"desc\": \"Dynamic 4-bit quantization of black-forest-labs/FLUX.2-klein-4B using SDNQ.\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default, cfg_scale: 1.0, steps: 4\",\n    \"tags\": \"quantized\",\n    \"size\": 5.1,\n    \"date\": \"2026 January\"\n  },\n  \"Black Forest Labs FLUX.2 Klein 9B sdnq-uint4-dynamic-svd\": {\n    \"path\": \"Disty0/FLUX.2-klein-9B-SDNQ-4bit-dynamic-svd-r32\",\n    \"preview\": \"Disty0--FLUX.2-klein-9B-SDNQ-4bit-dynamic-svd-r32.jpg\",\n    \"desc\": \"Dynamic 4-bit quantization of black-forest-labs/FLUX.2-klein-9B using SDNQ with SVD rank 32.\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default, cfg_scale: 1.0, steps: 4\",\n    \"tags\": \"quantized\",\n    \"size\": 11.7,\n    \"date\": \"2026 January\"\n  },\n  \"Chroma1-HD sdnq-svd-uint4\": {\n    \"path\": \"Disty0/Chroma1-HD-SDNQ-uint4-svd-r32\",\n    \"preview\": \"Disty0--Chroma1-HD-SDNQ-uint4-svd-r32.jpg\",\n    \"desc\": \"Quantization of lodestones/Chroma1-HD using SDNQ: sdnq-svd 4-bit uint with svd rank 32\",\n    \"skip\": true,\n    \"tags\": \"quantized\",\n    \"size\": 11.89,\n    \"date\": \"2025 October\",\n    \"extras\": \"\"\n  },\n  \"Wan-AI Wan2.2 A14B T2I sdnq-svd-uint4\": {\n    \"path\": \"Disty0/Wan2.2-T2V-A14B-SDNQ-uint4-svd-r32\",\n    \"preview\": \"Wan-AI--Wan2.2-T2V-A14B-Diffusers.jpg\",\n    \"desc\": \"Quantization of black-forest-labs/FLUX.1-dev using SDNQ: sdnq-svd 4-bit uint with svd rank 32\",\n    \"skip\": true,\n    \"tags\": \"quantized\",\n    \"date\": \"2025 October\",\n    \"size\": 23.54,\n    \"extras\": \"\"\n  },\n  \"Wan-AI Wan2.2 A14B I2I sdnq-svd-uint4\": {\n    \"path\": \"Disty0/Wan2.2-I2V-A14B-SDNQ-uint4-svd-r32\",\n    \"preview\": \"Wan-AI--Wan2.2-T2V-A14B-Diffusers.jpg\",\n    \"desc\": \"Quantization of Laxhar/noobai-XL-1.1 using SDNQ: sdnq-svd 4-bit uint with svd rank 128\",\n    \"skip\": true,\n    \"tags\": \"quantized\",\n    \"date\": \"2025 October\",\n    \"size\": 23.55,\n    \"extras\": \"\"\n  },\n  \"Z-Image-Turbo sdnq-svd-uint4\": {\n    \"path\": \"Disty0/Z-Image-Turbo-SDNQ-uint4-svd-r32\",\n    \"preview\": \"Disty0--Z-Image-Turbo-SDNQ-uint4-svd-r32.jpg\",\n    \"desc\": \"Quantization of Tongyi-MAI/Z-Image-Turbo using SDNQ: sdnq-svd 4-bit uint with svd rank 32\",\n    \"skip\": true,\n    \"tags\": \"quantized\",\n    \"extras\": \"sampler: Default, cfg_scale: 1.0, steps: 9\",\n    \"size\": 6.5,\n    \"date\": \"2025 November\"\n  },\n  \"Qwen-Image sdnq-svd-uint4\": {\n    \"path\": \"Disty0/Qwen-Image-SDNQ-uint4-svd-r32\",\n    \"preview\": \"Qwen--Qwen-Image.jpg\",\n    \"desc\": \"Quantization of Qwen/Qwen-Image using SDNQ: sdnq-svd 4-bit uint with svd rank 32\",\n    \"skip\": true,\n    \"tags\": \"quantized\",\n    \"date\": \"2025 October\",\n    \"size\": 16.09,\n    \"extras\": \"\"\n  },\n  \"Qwen-Image-2512 sdnq-svd-uint4\": {\n    \"path\": \"Disty0/Qwen-Image-2512-SDNQ-uint4-svd-r32\",\n    \"preview\": \"Disty0--Qwen-Image-2512-SDNQ-uint4-svd-r32.jpg\",\n    \"desc\": \"Quantization of Qwen/Qwen-Image-2512 using SDNQ: sdnq-svd 4-bit uint with svd rank 32\",\n    \"skip\": true,\n    \"tags\": \"quantized\",\n    \"extras\": \"\",\n    \"size\": 16.10,\n    \"date\": \"2025 December\"\n  },\n  \"Qwen-Image-2512 sdnq-dynamic-uint4\": {\n    \"path\": \"Disty0/Qwen-Image-2512-SDNQ-4bit-dynamic\",\n    \"preview\": \"Disty0--Qwen-Image-2512-SDNQ-uint4-svd-r32.jpg\",\n    \"desc\": \"Quantization of Qwen/Qwen-Image-2512 using SDNQ: sdnq-dynamic 4-bit uint\",\n    \"skip\": true,\n    \"tags\": \"quantized\",\n    \"extras\": \"\",\n    \"size\": 17.2,\n    \"date\": \"2026 January\"\n  },\n  \"Qwen-Image-Edit sdnq-svd-uint4\": {\n    \"path\": \"Disty0/Qwen-Image-Edit-SDNQ-uint4-svd-r32\",\n    \"preview\": \"Qwen--Qwen-Image-Edit.jpg\",\n    \"desc\": \"Quantization of Qwen/Qwen-Image-Edit using SDNQ: sdnq-svd 4-bit uint with svd rank 32\",\n    \"skip\": true,\n    \"tags\": \"quantized\",\n    \"date\": \"2025 October\",\n    \"size\": 16.10,\n    \"extras\": \"\"\n  },\n  \"Qwen-Image-Edit-2509 sdnq-svd-uint4\": {\n    \"path\": \"Disty0/Qwen-Image-Edit-2509-SDNQ-uint4-svd-r32\",\n    \"preview\": \"Qwen--Qwen-Image-Edit-2509.jpg\",\n    \"desc\": \"Quantization of Qwen/Qwen-Image-Edit-2509 using SDNQ: sdnq-svd 4-bit uint with svd rank 32\",\n    \"skip\": true,\n    \"tags\": \"quantized\",\n    \"date\": \"2025 October\",\n    \"size\": 16.10,\n    \"extras\": \"\"\n  },\n  \"Qwen-Image-Edit-2511 sdnq-svd-uint4\": {\n    \"path\": \"Disty0/Qwen-Image-Edit-2511-SDNQ-uint4-svd-r32\",\n    \"preview\": \"Disty0--Qwen-Image-Edit-2511-SDNQ-uint4-svd-r32.jpg\",\n    \"desc\": \"Quantization of Qwen/Qwen-Image-Edit-2511 using SDNQ: sdnq-svd 4-bit uint with svd rank 32\",\n    \"skip\": true,\n    \"tags\": \"quantized\",\n    \"date\": \"2025 December\",\n    \"size\": 16.10,\n    \"extras\": \"\"\n  },\n  \"Qwen-Image-Layered sdnq-svd-uint4\": {\n    \"path\": \"Disty0/Qwen-Image-Layered-SDNQ-uint4-svd-r32\",\n    \"preview\": \"Disty0--Qwen-Image-Layered-SDNQ-uint4-svd-r32.jpg\",\n    \"desc\": \"Quantization of Qwen/Qwen-Image-Layered using SDNQ: sdnq-svd 4-bit uint with svd rank 32\",\n    \"skip\": true,\n    \"tags\": \"quantized\",\n    \"date\": \"2025 December\",\n    \"size\": 16.10,\n    \"extras\": \"\"\n  },\n  \"nVidia ChronoEdit sdnq-svd-uint4\": {\n    \"path\": \"Disty0/ChronoEdit-14B-SDNQ-uint4-svd-r32\",\n    \"preview\": \"Disty0--ChronoEdit-14B-SDNQ-uint4-svd-r32.jpg\",\n    \"desc\": \"Quantization of nvidia/ChronoEdit-14B-Diffusers using SDNQ: sdnq-svd 4-bit uint with svd rank 32.\",\n    \"skip\": true,\n    \"tags\": \"quantized\",\n    \"date\": \"2025 October\",\n    \"size\": 18.10,\n    \"extras\": \"\"\n  },\n  \"Tencent HunyuanImage 3.0 sdnq-svd-uint4\": {\n    \"path\": \"Disty0/HunyuanImage3-SDNQ-uint4-svd-r32\",\n    \"desc\": \"Quantization of tencent/HunyuanImage-3.0 using SDNQ: sdnq-svd 4-bit uint with svd rank 32.\",\n    \"preview\": \"Disty0--HunyuanImage3-SDNQ-uint4-svd-r32.jpg\",\n    \"extras\": \"\",\n    \"skip\": true,\n    \"tags\": \"quantized\",\n    \"size\": 57.06,\n    \"date\": \"2025 September\"\n  },\n  \"Tempest-by-Vlad XL sdnq-svd-uint4\": {\n    \"path\": \"vladmandic/tempestByVlad_baseV01-SDNQ-uint4-svd\",\n    \"preview\": \"vladmandic--tempestByVlad_baseV01-SDNQ-uint4-svd.jpg\",\n    \"desc\": \"Quantization of vladmandic/tempestByVlad_baseV01 using SDNQ: sdnq-svd 4-bit uint with svd rank 128\",\n    \"tags\": \"quantized\",\n    \"size\": 3.37,\n    \"date\": \"2025 October\",\n    \"extras\": \"\"\n  },\n  \"NoobAI-XL v1.1 epsilon sdnq-svd-uint4\": {\n    \"path\": \"Disty0/NoobAI-XL-v1.1-SDNQ-uint4-svd-r128\",\n    \"preview\": \"Disty0--NoobAI-XL-v1.1-SDNQ-uint4-svd-r128.jpg\",\n    \"desc\": \"Quantization of Laxhar/noobai-XL-1.1 using SDNQ: sdnq-svd 4-bit uint with svd rank 128\",\n    \"tags\": \"quantized\",\n    \"size\": 3.37,\n    \"date\": \"2025 October\",\n    \"extras\": \"\"\n  },\n  \"NoobAI-XL v1.0 v-pred sdnq-svd-uint4\": {\n    \"path\": \"Disty0/NoobAI-XL-Vpred-v1.0-SDNQ-uint4-svd-r128\",\n    \"preview\": \"Disty0--NoobAI-XL-Vpred-v1.0-SDNQ-uint4-svd-r128.jpg\",\n    \"desc\": \"Quantization of Laxhar/noobai-XL-Vpred-1.0 using SDNQ: sdnq-svd 4-bit uint with svd rank 128\",\n    \"tags\": \"quantized\",\n    \"size\": 3.37,\n    \"date\": \"2025 October\",\n    \"extras\": \"\"\n  },\n  \"ZAI GLM-Image sdnq-dynamic-uint4\": {\n    \"path\": \"Disty0/GLM-Image-SDNQ-4bit-dynamic\",\n    \"preview\": \"zai-org--GLM-Image.jpg\",\n    \"desc\": \"Quantization of ZAI GLM-Image using SDNQ: sdnq-dynamic 4-bit uint\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default, cfg_scale: 1.5, steps: 50\",\n    \"size\": 11.6,\n    \"tags\": \"quantized\",\n    \"date\": \"2026 January\"\n  }\n}\n"
  },
  {
    "path": "data/reference.json",
    "content": "{\n  \"RunwayML StableDiffusion 1.5\": {\n    \"original\": true,\n    \"path\": \"v1-5-pruned-fp16-emaonly.safetensors@https://huggingface.co/Aptronym/SDNext/resolve/main/Reference/v1-5-pruned-fp16-emaonly.safetensors?download=true\",\n    \"preview\": \"v1-5-pruned-fp16-emaonly.jpg\",\n    \"desc\": \"Stable Diffusion 1.5 is the base model all other 1.5 checkpoint were trained from. It's a latent text-to-image diffusion model capable of generating photo-realistic images given any text input. The Stable-Diffusion-v1-5 checkpoint was initialized with the weights of the Stable-Diffusion-v1-2 checkpoint and subsequently fine-tuned on 595k steps at resolution 512x512.\",\n    \"extras\": \"width: 512, height: 512, sampler: DEIS, steps: 20, cfg_scale: 6.0\",\n    \"size\": 2.28,\n    \"date\": \"2022 October\"\n  },\n  \"StabilityAI StableDiffusion 2.1\": {\n    \"path\": \"huggingface/stabilityai/stable-diffusion-2-1-base\",\n    \"preview\": \"stabilityai--stable-diffusion-2-1-base.jpg\",\n    \"skip\": true,\n    \"variant\": \"fp16\",\n    \"desc\": \"This stable-diffusion-2-1-base model fine-tunes stable-diffusion-2-base (512-base-ema.ckpt) with 220k extra steps taken\",\n    \"extras\": \"width: 512, height: 512, sampler: DEIS, steps: 20, cfg_scale: 6.0\",\n    \"size\": 2.58,\n    \"date\": \"2022 December\"\n  },\n  \"StabilityAI StableDiffusion 2.1 V\": {\n    \"path\": \"huggingface/stabilityai/stable-diffusion-2-1\",\n    \"preview\": \"stabilityai--stable-diffusion-2-1.jpg\",\n    \"skip\": true,\n    \"variant\": \"fp16\",\n    \"size\": 2.58,\n    \"date\": \"2022 December\",\n    \"desc\": \"This stable-diffusion-2 model is resumed from stable-diffusion-2-base (512-base-ema.ckpt) and trained for 150k steps using a v-objective on the same dataset. Resumed for another 140k steps on 768x768 images\",\n    \"extras\": \"width: 768, height: 768, sampler: DEIS, steps: 20, cfg_scale: 6.0\"\n  },\n  \"StabilityAI StableDiffusion XL\": {\n    \"path\": \"stabilityai/stable-diffusion-xl-base-1.0\",\n    \"preview\": \"stabilityai--stable-diffusion-xl-base-1.0.jpg\",\n    \"desc\": \"Stable Diffusion XL (SDXL) is AI image generation model that is tailored towards more photorealistic outputs with more detailed imagery and composition compared to previous SD models, including SD 2.1. It can make realistic faces and better image composition, all while using shorter and simpler prompts at a greatly increased base resolution of 1024x1024. Just like its predecessors, SDXL has the ability to generate image variations using image-to-image prompting, inpainting (reimagining of the selected parts of an image), and outpainting (creating new parts that lie outside the image borders).\",\n    \"skip\": true,\n    \"variant\": \"fp16\",\n    \"extras\": \"\",\n    \"size\": 6.94,\n    \"date\": \"2023 July\"\n  },\n  \"StabilityAI Stable Cascade\": {\n    \"path\": \"huggingface/stabilityai/stable-cascade\",\n    \"skip\": true,\n    \"variant\": \"bf16\",\n    \"desc\": \"Stable Cascade is a diffusion model built upon the Würstchen architecture and its main difference to other models like Stable Diffusion is that it is working at a much smaller latent space. Why is this important? The smaller the latent space, the faster you can run inference and the cheaper the training becomes. How small is the latent space? Stable Diffusion uses a compression factor of 8, resulting in a 1024x1024 image being encoded to 128x128. Stable Cascade achieves a compression factor of 42, meaning that it is possible to encode a 1024x1024 image to 24x24, while maintaining crisp reconstructions. The text-conditional model is then trained in the highly compressed latent space. Previous versions of this architecture, achieved a 16x cost reduction over Stable Diffusion 1.5\",\n    \"preview\": \"stabilityai--stable-cascade.jpg\",\n    \"extras\": \"sampler: Default, cfg_scale: 4.0, image_cfg_scale: 1.0\",\n    \"size\": 11.82,\n    \"date\": \"2024 February\"\n  },\n  \"StabilityAI Stable Diffusion 3.0 Medium\": {\n    \"path\": \"stabilityai/stable-diffusion-3-medium-diffusers\",\n    \"skip\": true,\n    \"variant\": \"fp16\",\n    \"desc\": \"Stable Diffusion 3 Medium is a Multimodal Diffusion Transformer (MMDiT) text-to-image model that features greatly improved performance in image quality, typography, complex prompt understanding, and resource-efficiency\",\n    \"preview\": \"stabilityai--stable-diffusion-3.jpg\",\n    \"extras\": \"sampler: Default, cfg_scale: 7.0\",\n    \"size\": 15.14,\n    \"date\": \"2024 June\"\n  },\n  \"StabilityAI Stable Diffusion 3.5 Medium\": {\n    \"path\": \"stabilityai/stable-diffusion-3.5-medium\",\n    \"skip\": true,\n    \"variant\": \"fp16\",\n    \"desc\": \"Stable Diffusion 3.5 Medium is a Multimodal Diffusion Transformer with improvements (MMDiT-X) text-to-image model that features improved performance in image quality, typography, complex prompt understanding, and resource-efficiency.\",\n    \"preview\": \"stabilityai--stable-diffusion-3_5-medium.jpg\",\n    \"extras\": \"sampler: Default, cfg_scale: 7.0\",\n    \"size\": 15.89,\n    \"date\": \"2024 October\"\n  },\n  \"StabilityAI Stable Diffusion 3.5 Large\": {\n    \"path\": \"stabilityai/stable-diffusion-3.5-large\",\n    \"skip\": true,\n    \"variant\": \"fp16\",\n    \"desc\": \"Stable Diffusion 3.5 Large is a Multimodal Diffusion Transformer (MMDiT) text-to-image model that features improved performance in image quality, typography, complex prompt understanding, and resource-efficiency.\",\n    \"preview\": \"stabilityai--stable-diffusion-3_5-large.jpg\",\n    \"extras\": \"sampler: Default, cfg_scale: 7.0\",\n    \"size\": 26.98,\n    \"date\": \"2024 October\"\n  },\n\n  \"Black Forest Labs FLUX.1 Dev\": {\n    \"path\": \"black-forest-labs/FLUX.1-dev\",\n    \"preview\": \"black-forest-labs--FLUX.1-dev.jpg\",\n    \"desc\": \"FLUX.1 models are based on a hybrid architecture of multimodal and parallel diffusion transformer blocks, scaled to 12B parameters and builing on flow matching\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default, cfg_scale: 3.5\",\n    \"size\": 32.93,\n    \"date\": \"2024 August\"\n  },\n  \"Black Forest Labs FLUX.1 Schnell\": {\n    \"path\": \"black-forest-labs/FLUX.1-schnell\",\n    \"preview\": \"black-forest-labs--FLUX.1-schnell.jpg\",\n    \"desc\": \"FLUX.1 models are based on a hybrid architecture of multimodal and parallel diffusion transformer blocks, scaled to 12B parameters and builing on flow matching. Trained using latent adversarial diffusion distillation, FLUX.1 [schnell] can generate high-quality images in only 1 to 4 steps\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default, cfg_scale: 3.5\",\n    \"size\": 32.93,\n    \"date\": \"2024 August\"\n  },\n  \"Black Forest Labs FLUX.1 Kontext Dev\": {\n    \"path\": \"black-forest-labs/FLUX.1-Kontext-dev\",\n    \"preview\": \"black-forest-labs--FLUX.1-Kontext-dev.jpg\",\n    \"desc\": \"FLUX.1 Kontext [dev] is a 12 billion parameter rectified flow transformer capable of editing images based on text instructions.\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default, cfg_scale: 3.5\",\n    \"size\": 32.93,\n    \"date\": \"2025 June\"\n  },\n  \"Black Forest Labs FLUX.1 Krea Dev\": {\n    \"path\": \"black-forest-labs/FLUX.1-Krea-dev\",\n    \"preview\": \"black-forest-labs--FLUX.1-Krea-dev.jpg\",\n    \"desc\": \"FLUX.1 Krea [dev] is a 12 billion parameter rectified flow transformer capable of generating images from text descriptions.\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default, cfg_scale: 4.5\",\n    \"size\": 32.93,\n    \"date\": \"2025 July\"\n  },\n  \"Black Forest Labs FLUX.2 Dev\": {\n    \"path\": \"black-forest-labs/FLUX.2-dev\",\n    \"preview\": \"black-forest-labs--FLUX.2-dev.jpg\",\n    \"desc\": \"FLUX.2 generates high-quality images while maintaining character and style consistency across multiple reference images, following structured prompts, reading and writing complex text, adhering to brand guidelines, and reliably handling lighting, layouts, and logos.\",\n    \"skip\": true,\n    \"extras\": \"\",\n    \"size\": 104.74,\n    \"date\": \"2025 November\"\n  },\n  \"Black Forest Labs FLUX.2 Klein Base 4B\": {\n    \"path\": \"black-forest-labs/FLUX.2-klein-base-4B\",\n    \"preview\": \"black-forest-labs--FLUX.2-klein-base-4B.jpg\",\n    \"desc\": \"FLUX.2-klein-base-4B is the undistilled 4 billion parameter base model of FLUX.2-klein. Requires 50 inference steps for full quality but offers flexibility for fine-tuning. Supports text-to-image and multi-reference editing. Apache 2.0 licensed.\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default, cfg_scale: 4.0, steps: 50\",\n    \"size\": 8.5,\n    \"date\": \"2025 January\"\n  },\n  \"Black Forest Labs FLUX.2 Klein Base 9B\": {\n    \"path\": \"black-forest-labs/FLUX.2-klein-base-9B\",\n    \"preview\": \"black-forest-labs--FLUX.2-klein-base-9B.jpg\",\n    \"desc\": \"FLUX.2-klein-base-9B is the undistilled 9 billion parameter base model of FLUX.2-klein. Requires 50 inference steps for full quality but offers flexibility for fine-tuning. Supports text-to-image and multi-reference editing. Non-commercial license.\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default, cfg_scale: 4.0, steps: 50\",\n    \"size\": 18.5,\n    \"date\": \"2025 January\"\n  },\n\n  \"Z-Image\": {\n    \"path\": \"Tongyi-MAI/Z-Image\",\n    \"preview\": \"Tongyi-MAI--Z-Image.jpg\",\n    \"desc\": \"Z-Image, an efficient image generation foundation model built on a Single-Stream Diffusion Transformer architecture. It preserves the complete training signal with full CFG support, enabling aesthetic versatility from hyper-realistic photography to anime, enhanced output diversity, and robust negative prompting for artifact suppression. Ideal base for LoRA training, ControlNet, and semantic conditioning.\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default, cfg_scale: 4.0, steps: 50\",\n    \"size\": 20.3,\n    \"date\": \"2026 January\"\n  },\n  \"Z-Image-Turbo\": {\n    \"path\": \"Tongyi-MAI/Z-Image-Turbo\",\n    \"preview\": \"Tongyi-MAI--Z-Image-Turbo.jpg\",\n    \"desc\": \"Z-Image-Turbo, a distilled version of Z-Image that matches or exceeds leading competitors with only 8 NFEs (Number of Function Evaluations). It excels in photorealistic image generation, bilingual text rendering (English & Chinese), and robust instruction adherence.\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default, cfg_scale: 1.0, steps: 9\",\n    \"size\": 20.3,\n    \"date\": \"2025 November\"\n  },\n\n  \"Qwen-Image\": {\n    \"path\": \"Qwen/Qwen-Image\",\n    \"preview\": \"Qwen--Qwen-Image.jpg\",\n    \"desc\": \"Qwen-Image, an image generation foundation model in the Qwen series that achieves significant advances in complex text rendering and precise image editing.\",\n    \"skip\": true,\n    \"extras\": \"\",\n    \"size\": 56.1,\n    \"date\": \"2025 August\"\n  },\n  \"Qwen-Image-2512\": {\n    \"path\": \"Qwen/Qwen-Image-2512\",\n    \"preview\": \"Qwen--Qwen-Image-2512.jpg\",\n    \"desc\": \"Qwen-Image-2512 is an Qwen Image successor, that significantly reduces the AI-generated look, got finer natural detailils and improved text rendering.\",\n    \"skip\": true,\n    \"extras\": \"\",\n    \"size\": 53.7,\n    \"date\": \"2025 December\"\n  },\n  \"Qwen-Image-Edit\": {\n    \"path\": \"Qwen/Qwen-Image-Edit\",\n    \"preview\": \"Qwen--Qwen-Image-Edit.jpg\",\n    \"desc\": \"Qwen-Image-Edit, the image editing version of Qwen-Image. Built upon our 20B Qwen-Image model, Qwen-Image-Edit successfully extends Qwen-Image’s unique text rendering capabilities to image editing tasks, enabling precise text editing.\",\n    \"skip\": true,\n    \"extras\": \"\",\n    \"size\": 56.1,\n    \"date\": \"2025 August\"\n  },\n  \"Qwen-Image-Edit-2509\": {\n    \"path\": \"Qwen/Qwen-Image-Edit-2509\",\n    \"preview\": \"Qwen--Qwen-Image-Edit-2509.jpg\",\n    \"desc\": \"Qwen-Image-Edit, the image editing version of Qwen-Image. Built upon our 20B Qwen-Image model, Qwen-Image-Edit successfully extends Qwen-Image’s unique text rendering capabilities to image editing tasks, enabling precise text editing.\",\n    \"skip\": true,\n    \"extras\": \"\",\n    \"size\": 56.1,\n    \"date\": \"2025 September\"\n  },\n  \"Qwen-Image-Edit-2511\": {\n    \"path\": \"Qwen/Qwen-Image-Edit-2511\",\n    \"preview\": \"Qwen--Qwen-Image-Edit-2511.jpg\",\n    \"desc\": \"Key enhancements: mitigate image drift, improved character consistency, enhanced industrial design generation, and strengthened geometric reasoning ability.\",\n    \"skip\": true,\n    \"extras\": \"\",\n    \"size\": 56.1,\n    \"date\": \"2025 December\"\n  },\n  \"Qwen-Image-Layered\": {\n    \"path\": \"Qwen/Qwen-Image-Layered\",\n    \"preview\": \"Qwen--Qwen-Image-Layered.jpg\",\n    \"desc\": \"Qwen-Image-Layered, a model capable of decomposing an image into multiple RGBA layers\",\n    \"skip\": true,\n    \"extras\": \"\",\n    \"size\": 53.7,\n    \"date\": \"2025 December\"\n  },\n\n  \"lodestones Chroma1 HD\": {\n    \"path\": \"lodestones/Chroma1-HD\",\n    \"preview\": \"lodestones--Chroma1-HD.jpg\",\n    \"desc\": \"Chroma is a 8.9B parameter model based on FLUX.1-schnell. It’s fully Apache 2.0 licensed, ensuring that anyone can use, modify, and build on top of it—no corporate gatekeeping. This is the high-res fine-tune of the Chroma1-Base at a 1024x1024 resolution.\",\n    \"skip\": true,\n    \"extras\": \"\",\n    \"size\": 26.84,\n    \"date\": \"2025 July\"\n  },\n  \"lodestones Chroma1 Base\": {\n    \"path\": \"lodestones/Chroma1-Base\",\n    \"preview\": \"lodestones--Chroma1-Base.jpg\",\n    \"desc\": \"Chroma is a 8.9B parameter model based on FLUX.1-schnell. It’s fully Apache 2.0 licensed, ensuring that anyone can use, modify, and build on top of it—no corporate gatekeeping. This is the core 512x512 model. It's a solid, all-around foundation for pretty much any creative project.\",\n    \"skip\": true,\n    \"extras\": \"\",\n    \"size\": 26.84,\n    \"date\": \"2025 July\"\n  },\n  \"lodestones Chroma1 v50 Preview Annealed\": {\n    \"path\": \"vladmandic/chroma-unlocked-v50-annealed\",\n    \"preview\": \"vladmandic--chroma-unlocked-v50-annealed.jpg\",\n    \"desc\": \"Chroma is a 8.9B parameter model based on FLUX.1-schnell. It’s fully Apache 2.0 licensed, ensuring that anyone can use, modify, and build on top of it—no corporate gatekeeping. Re-tweaked variant with extra noise added.\",\n    \"skip\": true,\n    \"extras\": \"\",\n    \"size\": 26.84,\n    \"date\": \"2025 July\"\n  },\n\n  \"Meituan LongCat Image\": {\n    \"path\": \"meituan-longcat/LongCat-Image\",\n    \"preview\": \"meituan-longcat--LongCat-Image.jpg\",\n    \"desc\": \"Pioneering open-source and bilingual (Chinese-English) foundation model for image generation, designed to address core challenges in multilingual text rendering, photorealism, deployment efficiency, and developer accessibility prevalent in current leading models.\",\n    \"skip\": true,\n    \"extras\": \"\",\n    \"size\": 27.30,\n    \"date\": \"2025 December\"\n  },\n  \"Meituan LongCat Image-Edit\": {\n    \"path\": \"meituan-longcat/LongCat-Image-Edit\",\n    \"preview\": \"meituan-longcat--LongCat-Image-Edit.jpg\",\n    \"desc\": \"Pioneering open-source and bilingual (Chinese-English) foundation model for image generation, designed to address core challenges in multilingual text rendering, photorealism, deployment efficiency, and developer accessibility prevalent in current leading models.\",\n    \"skip\": true,\n    \"extras\": \"\",\n    \"size\": 27.30,\n    \"date\": \"2025 December\"\n  },\n\n  \"Ostris Flex.2 Preview\": {\n    \"path\": \"ostris/Flex.2-preview\",\n    \"preview\": \"ostris--Flex.2-preview.jpg\",\n    \"desc\": \"Open Source 8B parameter Text to Image Diffusion Model with universal control and inpainting support built in. Early access preview release. The next version of Flex.1-alpha\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default, cfg_scale: 3.5\",\n    \"size\": 25.65,\n    \"date\": \"2025 April\"\n  },\n  \"Ostris Flex.1 Alpha\": {\n    \"path\": \"ostris/Flex.1-alpha\",\n    \"preview\": \"ostris--Flex.1-alpha.jpg\",\n    \"desc\": \"Flex.1 alpha is a pre-trained base 8 billion parameter rectified flow transformer capable of generating images from text descriptions. It has a similar architecture to FLUX.1-dev, but with fewer double transformer blocks (8 vs 19)\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default, cfg_scale: 3.5\",\n    \"size\": 25.65,\n    \"date\": \"2025 January\"\n  },\n\n  \"Wan-AI Wan2.1 1.3B\": {\n    \"path\": \"Wan-AI/Wan2.1-T2V-1.3B-Diffusers\",\n    \"preview\": \"Wan-AI--Wan2.1-T2V-1.3B-Diffusers.jpg\",\n    \"desc\": \"Wan is an advanced and powerful visual generation model developed by Tongyi Lab of Alibaba Group. It can generate videos based on text, images, and other control signals. The Wan2.1 series models are now fully open-source.\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default\",\n    \"size\": 27.72,\n    \"date\": \"2025 February\"\n  },\n  \"Wan-AI Wan2.1 14B\": {\n    \"path\": \"Wan-AI/Wan2.1-T2V-14B-Diffusers\",\n    \"preview\": \"Wan-AI--Wan2.1-T2V-14B-Diffusers.jpg\",\n    \"desc\": \"Wan is an advanced and powerful visual generation model developed by Tongyi Lab of Alibaba Group. It can generate videos based on text, images, and other control signals. The Wan2.1 series models are now fully open-source.\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default\",\n    \"size\": 78.52,\n    \"date\": \"2025 February\"\n  },\n  \"Wan-AI Wan2.2 5B\": {\n    \"path\": \"Wan-AI/Wan2.2-TI2V-5B-Diffusers\",\n    \"preview\": \"Wan-AI--Wan2.2-TI2V-5B-Diffusers.jpg\",\n    \"desc\": \"Wan2.2, offering more powerful capabilities, better performance, and superior visual quality. With Wan2.2, we have focused on incorporating the following technical innovations: MoE Architecture, Data Scalling, Cinematic Aesthetics, Efficient High-Definition Hybrid\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default\"\n  },\n  \"Wan-AI Wan2.2 A14B T2I\": {\n    \"path\": \"Wan-AI/Wan2.2-T2V-A14B-Diffusers\",\n    \"preview\": \"Wan-AI--Wan2.2-T2V-A14B-Diffusers.jpg\",\n    \"desc\": \"Wan2.2, offering more powerful capabilities, better performance, and superior visual quality. With Wan2.2, we have focused on incorporating the following technical innovations: MoE Architecture, Data Scalling, Cinematic Aesthetics, Efficient High-Definition Hybrid\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default\"\n  },\n  \"Wan-AI Wan2.2 A14B I2I\": {\n    \"path\": \"Wan-AI/Wan2.2-I2V-A14B-Diffusers\",\n    \"preview\": \"Wan-AI--Wan2.2-T2V-A14B-Diffusers.jpg\",\n    \"desc\": \"Wan2.2, offering more powerful capabilities, better performance, and superior visual quality. With Wan2.2, we have focused on incorporating the following technical innovations: MoE Architecture, Data Scalling, Cinematic Aesthetics, Efficient High-Definition Hybrid\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default\"\n  },\n  \"Wan-AI Wan2.2 14B VACE\": {\n    \"path\": \"linoyts/Wan2.2-VACE-Fun-14B-diffusers\",\n    \"preview\": \"linoyts--Wan2.2-VACE-Fun-14B-diffusers.jpg\",\n    \"desc\": \"Wan2.2, offering more powerful capabilities, better performance, and superior visual quality. With Wan2.2, we have focused on incorporating the following technical innovations: MoE Architecture, Data Scalling, Cinematic Aesthetics, Efficient High-Definition Hybrid\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default\"\n  },\n\n  \"Freepik F-Lite\": {\n    \"path\": \"Freepik/F-Lite\",\n    \"preview\": \"Freepik--F-Lite.jpg\",\n    \"desc\": \"F Lite is a 10B parameter diffusion model created by Freepik and Fal, trained exclusively on copyright-safe and SFW content. The model was trained on Freepik's internal dataset comprising approximately 80 million copyright-safe images, making it the first publicly available model of this scale trained exclusively on legally compliant and SFW content.\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default, cfg_scale: 3.5\",\n    \"size\": 19.81,\n    \"date\": \"2025 May\"\n  },\n  \"Freepik F-Lite Texture\": {\n    \"path\": \"Freepik/F-Lite-Texture\",\n    \"preview\": \"Freepik--F-Lite-Texture.jpg\",\n    \"desc\": \"F Lite is a 10B parameter diffusion model created by Freepik and Fal, trained exclusively on copyright-safe and SFW content. The model was trained on Freepik's internal dataset comprising approximately 80 million copyright-safe images, making it the first publicly available model of this scale trained exclusively on legally compliant and SFW content.\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default, cfg_scale: 3.5\",\n    \"size\": 19.81,\n    \"date\": \"2025 May\"\n  },\n  \"Freepik F-Lite 7B\": {\n    \"path\": \"Freepik/F-Lite-7B\",\n    \"preview\": \"Freepik--F-Lite-7B.jpg\",\n    \"desc\": \"F Lite is a 10B parameter diffusion model created by Freepik and Fal, trained exclusively on copyright-safe and SFW content. The model was trained on Freepik's internal dataset comprising approximately 80 million copyright-safe images, making it the first publicly available model of this scale trained exclusively on legally compliant and SFW content.\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default, cfg_scale: 3.5\",\n    \"size\": 13.89,\n    \"date\": \"2025 May\"\n  },\n\n  \"SDXS DreamShaper 512\": {\n    \"path\": \"IDKiro/sdxs-512-dreamshaper\",\n    \"preview\": \"IDKiro--sdxs-512-dreamshaper.jpg\",\n    \"desc\": \"SDXS: Real-Time One-Step Latent Diffusion Models with Image Conditions\",\n    \"extras\": \"width: 512, height: 512, sampler: CMSI, steps: 1, cfg_scale: 0.0\"\n  },\n\n  \"NVLabs Sana 1.5 1.6B 1k\": {\n    \"path\": \"Efficient-Large-Model/SANA1.5_1.6B_1024px_diffusers\",\n    \"desc\": \"Sana is an efficient model with scaling of training-time and inference time techniques. SANA-1.5 delivers: efficient model growth from 1.6B Sana-1.0 model to 4.8B, achieving similar or better performance than training from scratch and saving 60% training cost; efficient model depth pruning, slimming any model size as you want; powerful VLM selection based inference scaling, smaller model+inference scaling > larger model.\",\n    \"preview\": \"Efficient-Large-Model--SANA1.5_1.6B_1024px_diffusers.jpg\",\n    \"skip\": true,\n    \"size\": 9.49,\n    \"date\": \"2025 March\"\n  },\n  \"NVLabs Sana 1.5 4.8B 1k\": {\n    \"path\": \"Efficient-Large-Model/SANA1.5_4.8B_1024px_diffusers\",\n    \"desc\": \"Sana is an efficient model with scaling of training-time and inference time techniques. SANA-1.5 delivers: efficient model growth from 1.6B Sana-1.0 model to 4.8B, achieving similar or better performance than training from scratch and saving 60% training cost; efficient model depth pruning, slimming any model size as you want; powerful VLM selection based inference scaling, smaller model+inference scaling > larger model.\",\n    \"preview\": \"Efficient-Large-Model--SANA1.5_4.8B_1024px_diffusers.jpg\",\n    \"skip\": true,\n    \"size\": 15.58,\n    \"date\": \"2025 March\"\n  },\n  \"NVLabs Sana 1.0 1.6B 4k\": {\n    \"path\": \"Efficient-Large-Model/Sana_1600M_4Kpx_BF16_diffusers\",\n    \"desc\": \"Sana is a text-to-image framework that can efficiently generate images up to 4096 × 4096 resolution. Sana can synthesize high-resolution, high-quality images with strong text-image alignment at a remarkably fast speed, deployable on laptop GPU.\",\n    \"preview\": \"Efficient-Large-Model--Sana_1600M_4Kpx_BF16_diffusers.jpg\",\n    \"skip\": true,\n    \"size\": 12.63,\n    \"date\": \"2024 November\"\n  },\n  \"NVLabs Sana 1.0 1.6B 2k\": {\n    \"path\": \"Efficient-Large-Model/Sana_1600M_2Kpx_BF16_diffusers\",\n    \"desc\": \"Sana is a text-to-image framework that can efficiently generate images up to 4096 × 4096 resolution. Sana can synthesize high-resolution, high-quality images with strong text-image alignment at a remarkably fast speed, deployable on laptop GPU.\",\n    \"preview\": \"Efficient-Large-Model--Sana_1600M_2Kpx_BF16_diffusers.jpg\",\n    \"skip\": true,\n    \"size\": 12.63,\n    \"date\": \"2024 November\"\n  },\n  \"NVLabs Sana 1.0 1.6B 1k\": {\n    \"path\": \"Efficient-Large-Model/Sana_1600M_1024px_diffusers\",\n    \"desc\": \"Sana is a text-to-image framework that can efficiently generate images up to 4096 × 4096 resolution. Sana can synthesize high-resolution, high-quality images with strong text-image alignment at a remarkably fast speed, deployable on laptop GPU.\",\n    \"preview\": \"Efficient-Large-Model--Sana_1600M_1024px_diffusers.jpg\",\n    \"skip\": true,\n    \"size\": 12.63,\n    \"date\": \"2024 November\"\n  },\n  \"NVLabs Sana 1.0 0.6B 0.5k\": {\n    \"path\": \"Efficient-Large-Model/Sana_600M_512px_diffusers\",\n    \"desc\": \"Sana is a text-to-image framework that can efficiently generate images up to 4096 × 4096 resolution. Sana can synthesize high-resolution, high-quality images with strong text-image alignment at a remarkably fast speed, deployable on laptop GPU.\",\n    \"preview\": \"Efficient-Large-Model--Sana_600M_512px_diffusers.jpg\",\n    \"skip\": true,\n    \"size\": 7.51,\n    \"date\": \"2024 November\"\n  },\n  \"nVidia ChronoEdit\": {\n    \"path\": \"nvidia/ChronoEdit-14B-Diffusers\",\n    \"preview\": \"nvidia--ChronoEdit-14B-Diffusers.jpg\",\n    \"desc\": \"ChronoEdit reframes image editing as a video generation task, using input and edited images as start/end frames to leverage pretrained video models with temporal consistency.\",\n    \"skip\": true,\n    \"extras\": \"\"\n  },\n  \"nVidia Cosmos-Predict2 T2I 2B\": {\n    \"path\": \"nvidia/Cosmos-Predict2-2B-Text2Image\",\n    \"desc\": \"Cosmos-Predict2: A family of highly performant pre-trained world foundation models purpose-built for generating physics-aware images, videos and world states for physical AI development.\",\n    \"preview\": \"nvidia--Cosmos-Predict2-2B-Text2Image.jpg\",\n    \"skip\": true,\n    \"size\": 13.32,\n    \"date\": \"2025 June\"\n  },\n  \"nVidia Cosmos-Predict2 T2I 14B\": {\n    \"path\": \"nvidia/Cosmos-Predict2-14B-Text2Image\",\n    \"desc\": \"Cosmos-Predict2: A family of highly performant pre-trained world foundation models purpose-built for generating physics-aware images, videos and world states for physical AI development.\",\n    \"preview\": \"nvidia--Cosmos-Predict2-14B-Text2Image.jpg\",\n    \"skip\": true,\n    \"size\": 37.36,\n    \"date\": \"2025 June\"\n  },\n\n  \"X-Omni SFT\": {\n    \"path\": \"X-Omni/X-Omni-SFT\",\n    \"desc\": \"X-Omni: Reinforcement learning makes discrete autoregressive image generative models great again\",\n    \"preview\": \"X-Omni--X-Omni-SFT.jpg\",\n    \"skip\": true,\n    \"size\": 0,\n    \"date\": \"2024 September\",\n    \"experimental\": true\n  },\n\n  \"VectorSpaceLab OmniGen v1\": {\n    \"path\": \"Shitao/OmniGen-v1-diffusers\",\n    \"desc\": \"OmniGen is a unified image generation model that can generate a wide range of images from multi-modal prompts. It is designed to be simple, flexible and easy to use.\",\n    \"preview\": \"Shitao--OmniGen-v1.jpg\",\n    \"skip\": true,\n    \"size\": 15.47,\n    \"date\": \"2024 October\"\n  },\n  \"VectorSpaceLab OmniGen v2\": {\n    \"path\": \"OmniGen2/OmniGen2\",\n    \"desc\": \"OmniGen2 is a powerful and efficient unified multimodal model. Unlike OmniGen v1, OmniGen2 features two distinct decoding pathways for text and image modalities, utilizing unshared parameters and a decoupled image tokenizer.\",\n    \"preview\": \"OmniGen2--OmniGen2.jpg\",\n    \"skip\": true,\n    \"size\": 30.5,\n    \"date\": \"2025 June\"\n  },\n\n  \"AuraFlow 0.3\": {\n    \"path\": \"fal/AuraFlow-v0.3\",\n    \"desc\": \"AuraFlow v0.3 is the fully open-sourced flow-based text-to-image generation model. The model was trained with more compute compared to the previous version, AuraFlow-v0.2. Compared to AuraFlow-v0.2, the model is fine-tuned on more aesthetic datasets and now supports various aspect ratio, (now width and height up to 1536 pixels).\",\n    \"preview\": \"fal--AuraFlow-v0.3.jpg\",\n    \"skip\": true,\n    \"size\": 31.9,\n    \"date\": \"2024 August\"\n  },\n  \"AuraFlow 0.2\": {\n    \"path\": \"fal/AuraFlow-v0.2\",\n    \"desc\": \"AuraFlow v0.2 is the fully open-sourced largest flow-based text-to-image generation model. The model was trained with more compute compared to the previous version, AuraFlow-v0.1\",\n    \"preview\": \"fal--AuraFlow-v0.2.jpg\",\n    \"skip\": true,\n    \"size\": 31.9,\n    \"date\": \"2024 July\"\n  },\n\n  \"Segmind Vega\": {\n    \"path\": \"huggingface/segmind/Segmind-Vega\",\n    \"preview\": \"segmind--Segmind-Vega.jpg\",\n    \"desc\": \"The Segmind-Vega Model is a distilled version of the Stable Diffusion XL (SDXL), offering a remarkable 70% reduction in size and an impressive 100% speedup while retaining high-quality text-to-image generation capabilities. Trained on diverse datasets, including Grit and Midjourney scrape data, it excels at creating a wide range of visual content based on textual prompts. Employing a knowledge distillation strategy, Segmind-Vega leverages the teachings of several expert models, including SDXL, ZavyChromaXL, and JuggernautXL, to combine their strengths and produce compelling visual outputs.\",\n    \"variant\": \"fp16\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default, cfg_scale: 9.0\",\n    \"size\": 6.43,\n    \"date\": \"2023 November\"\n  },\n  \"Segmind SegMoE SD 4x2\": {\n    \"path\": \"segmind/SegMoE-SD-4x2-v0\",\n    \"preview\": \"segmind--SegMoE-SD-4x2-v0.jpg\",\n    \"desc\": \"SegMoE-SD-4x2-v0 is an untrained Segmind Mixture of Diffusion Experts Model generated using segmoe from 4 Expert SD1.5 models. SegMoE is a powerful framework for dynamically combining Stable Diffusion Models into a Mixture of Experts within minutes without training\",\n    \"extras\": \"width: 512, height: 512, sampler: Default\"\n  },\n  \"Segmind SegMoE XL 4x2\": {\n    \"path\": \"segmind/SegMoE-4x2-v0\",\n    \"preview\": \"segmind--SegMoE-4x2-v0.jpg\",\n    \"desc\": \"SegMoE-4x2-v0 is an untrained Segmind Mixture of Diffusion Experts Model generated using segmoe from 4 Expert SDXL models. SegMoE is a powerful framework for dynamically combining Stable Diffusion Models into a Mixture of Experts within minutes without training\",\n    \"extras\": \"sampler: Default\"\n  },\n  \"Pixart-α XL 2 Medium\": {\n    \"path\": \"PixArt-alpha/PixArt-XL-2-512x512\",\n    \"desc\": \"PixArt-α is a Transformer-based T2I diffusion model whose image generation quality is competitive with state-of-the-art image generators (e.g., Imagen, SDXL, and even Midjourney), and the training speed markedly surpasses existing large-scale T2I models. Extensive experiments demonstrate that PIXART-α excels in image quality, artistry, and semantic control. It can directly generate 512px images from text prompts within a single sampling process.\",\n    \"preview\": \"PixArt-alpha--PixArt-XL-2-512x512.jpg\",\n    \"extras\": \"width: 512, height: 512, sampler: Default, cfg_scale: 2.0\"\n  },\n  \"Pixart-α XL 2 Large\": {\n    \"path\": \"PixArt-alpha/PixArt-XL-2-1024-MS\",\n    \"desc\": \"PixArt-α is a Transformer-based T2I diffusion model whose image generation quality is competitive with state-of-the-art image generators (e.g., Imagen, SDXL, and even Midjourney), and the training speed markedly surpasses existing large-scale T2I models. Extensive experiments demonstrate that PIXART-α excels in image quality, artistry, and semantic control. It can directly generate 1024px images from text prompts within a single sampling process.\",\n    \"preview\": \"PixArt-alpha--PixArt-XL-2-1024-MS.jpg\",\n    \"extras\": \"sampler: Default, cfg_scale: 2.0\",\n    \"size\": 21.3,\n    \"date\": \"2023 November\"\n  },\n  \"Pixart-Σ Small\": {\n    \"path\": \"huggingface/PixArt-alpha/PixArt-Sigma-XL-2-512-MS\",\n    \"desc\": \"PixArt-Σ, a Diffusion Transformer model (DiT) capable of directly generating images at 4K resolution. PixArt-Σ represents a significant advancement over its predecessor, PixArt-α, offering images of markedly higher fidelity and improved alignment with text prompts.\",\n    \"preview\": \"PixArt-alpha--PixArt-Sigma-XL-2-512-MS.jpg\",\n    \"skip\": true,\n    \"extras\": \"width: 512, height: 512, sampler: Default, cfg_scale: 2.0\"\n  },\n  \"Pixart-Σ Medium\": {\n    \"path\": \"huggingface/PixArt-alpha/PixArt-Sigma-XL-2-1024-MS\",\n    \"desc\": \"PixArt-Σ, a Diffusion Transformer model (DiT) capable of directly generating images at 4K resolution. PixArt-Σ represents a significant advancement over its predecessor, PixArt-α, offering images of markedly higher fidelity and improved alignment with text prompts.\",\n    \"preview\": \"PixArt-alpha--PixArt-Sigma-XL-2-1024-MS.jpg\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default, cfg_scale: 2.0\"\n  },\n  \"Pixart-Σ Large\": {\n    \"path\": \"huggingface/PixArt-alpha/PixArt-Sigma-XL-2-2K-MS\",\n    \"desc\": \"PixArt-Σ, a Diffusion Transformer model (DiT) capable of directly generating images at 4K resolution. PixArt-Σ represents a significant advancement over its predecessor, PixArt-α, offering images of markedly higher fidelity and improved alignment with text prompts.\",\n    \"preview\": \"PixArt-alpha--PixArt-Sigma-XL-2-2K-MS.jpg\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default, cfg_scale: 2.0\",\n    \"size\": 21.3,\n    \"date\": \"2024 April\"\n  },\n\n  \"Tencent HunyuanImage 2.1\": {\n    \"path\": \"hunyuanvideo-community/HunyuanImage-2.1-Diffusers\",\n    \"desc\": \"HunyuanImage-2.1, a highly efficient text-to-image model that is capable of generating 2K (2048 × 2048) resolution images.\",\n    \"preview\": \"hunyuanvideo-community--HunyuanImage-2.1-Diffusers.jpg\",\n    \"extras\": \"\",\n    \"skip\": true,\n    \"size\": 0,\n    \"date\": \"2025 August\"\n  },\n  \"Tencent HunyuanImage 2.1 Refiner\": {\n    \"path\": \"hunyuanvideo-community/HunyuanImage-2.1-Refiner-Diffusers\",\n    \"desc\": \"HunyuanImage-2.1, a highly efficient text-to-image model that is capable of generating 2K (2048 × 2048) resolution images.\",\n    \"preview\": \"hunyuanvideo-community--HunyuanImage-2.1-Diffusers.jpg\",\n    \"extras\": \"\",\n    \"skip\": true,\n    \"size\": 0,\n    \"date\": \"2025 August\"\n  },\n  \"Tencent HunyuanDiT 1.2\": {\n    \"path\": \"Tencent-Hunyuan/HunyuanDiT-v1.2-Diffusers\",\n    \"desc\": \"Hunyuan-DiT : A Powerful Multi-Resolution Diffusion Transformer with Fine-Grained Chinese Understanding.\",\n    \"preview\": \"Tencent-Hunyuan--HunyuanDiT-v1.2-Diffusers.jpg\",\n    \"extras\": \"sampler: Default, cfg_scale: 2.0\",\n    \"size\": 14.09,\n    \"date\": \"2024 May\"\n  },\n  \"Tencent HunyuanDiT 1.1\": {\n    \"path\": \"Tencent-Hunyuan/HunyuanDiT-v1.1-Diffusers\",\n    \"desc\": \"Hunyuan-DiT : A Powerful Multi-Resolution Diffusion Transformer with Fine-Grained Chinese Understanding.\",\n    \"preview\": \"Tencent-Hunyuan--HunyuanDiT-v1.1-Diffusers.jpg\",\n    \"extras\": \"sampler: Default, cfg_scale: 2.0\"\n  },\n\n  \"AlphaVLLM Lumina Next SFT\": {\n    \"path\": \"Alpha-VLLM/Lumina-Next-SFT-diffusers\",\n    \"desc\": \"The Lumina-Next-SFT is a Next-DiT model containing 2B parameters and utilizes Gemma-2B as the text encoder, enhanced through high-quality supervised fine-tuning (SFT).\",\n    \"preview\": \"Alpha-VLLM--Lumina-Next-SFT-diffusers.jpg\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default\",\n    \"size\": 8.67,\n    \"date\": \"2024 June\"\n  },\n  \"AlphaVLLM Lumina 2\": {\n    \"path\": \"Alpha-VLLM/Lumina-Image-2.0\",\n    \"desc\": \"A Unified and Efficient Image Generative Model. Lumina-Image-2.0 is a 2 billion parameter flow-based diffusion transformer capable of generating images from text descriptions.\",\n    \"preview\": \"Alpha-VLLM--Lumina-Image-2.0.jpg\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default\",\n    \"size\": 20.75,\n    \"date\": \"2025 January\"\n  },\n\n  \"HiDream-I1 Fast\": {\n    \"path\": \"HiDream-ai/HiDream-I1-Fast\",\n    \"desc\": \"HiDream-I1 is a new open-source image generative foundation model with 17B parameters that achieves state-of-the-art image generation quality within seconds.\",\n    \"preview\": \"HiDream-ai--HiDream-I1-Fast.jpg\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default\",\n    \"size\": 58.4,\n    \"date\": \"2025 April\"\n  },\n  \"HiDream-I1 Dev\": {\n    \"path\": \"HiDream-ai/HiDream-I1-Dev\",\n    \"desc\": \"HiDream-I1 is a new open-source image generative foundation model with 17B parameters that achieves state-of-the-art image generation quality within seconds.\",\n    \"preview\": \"HiDream-ai--HiDream-I1-Dev.jpg\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default\",\n    \"size\": 58.4,\n    \"date\": \"2025 April\"\n  },\n  \"HiDream-I1 Full\": {\n    \"path\": \"HiDream-ai/HiDream-I1-Full\",\n    \"desc\": \"HiDream-I1 is a new open-source image generative foundation model with 17B parameters that achieves state-of-the-art image generation quality within seconds.\",\n    \"preview\": \"HiDream-ai--HiDream-I1-Full.jpg\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default\",\n    \"size\": 58.4,\n    \"date\": \"2025 April\"\n  },\n  \"HiDream-E1 Full\": {\n    \"path\": \"HiDream-ai/HiDream-E1-Full\",\n    \"desc\": \"HiDream-E1 is an image editing model built on HiDream-I1.\",\n    \"preview\": \"HiDream-ai--HiDream-E1-Full.jpg\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default\"\n  },\n  \"HiDream-E1.1\": {\n    \"path\": \"HiDream-ai/HiDream-E1-1\",\n    \"desc\": \"HiDream-E1 is an image editing model built on HiDream-I1.\",\n    \"preview\": \"HiDream-ai--HiDream-E1-1.jpg\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default\"\n  },\n\n  \"Kwai Kolors\": {\n    \"path\": \"Kwai-Kolors/Kolors-diffusers\",\n    \"desc\": \"Kolors is a large-scale text-to-image generation model based on latent diffusion, developed by the Kuaishou Kolors team. Trained on billions of text-image pairs, Kolors exhibits significant advantages over both open-source and proprietary models in visual quality, complex semantic accuracy, and text rendering for both Chinese and English characters. Furthermore, Kolors supports both Chinese and English inputs\",\n    \"preview\": \"Kwai-Kolors--Kolors-diffusers.jpg\",\n    \"skip\": true,\n    \"extras\": \"width: 1024, height: 1024\",\n    \"size\": 17.40,\n    \"date\": \"2024 July\"\n  },\n\n  \"Kandinsky 2.1\": {\n    \"path\": \"kandinsky-community/kandinsky-2-1\",\n    \"desc\": \"Kandinsky 2.1 is a text-conditional diffusion model based on unCLIP and latent diffusion, composed of a transformer-based image prior model, a unet diffusion model, and a decoder. Kandinsky 2.1 inherits best practices from Dall-E 2 and Latent diffusion while introducing some new ideas. It uses the CLIP model as a text and image encoder, and diffusion image prior (mapping) between latent spaces of CLIP modalities. This approach increases the visual performance of the model and unveils new horizons in blending images and text-guided image manipulation.\",\n    \"preview\": \"kandinsky-community--kandinsky-2-1.jpg\",\n    \"extras\": \"width: 768, height: 768, sampler: Default\",\n    \"size\": 5.15,\n    \"date\": \"2023 April\"\n  },\n  \"Kandinsky 2.2\": {\n    \"path\": \"kandinsky-community/kandinsky-2-2-decoder\",\n    \"desc\": \"Kandinsky 2.2 is a text-conditional diffusion model (+0.1!) based on unCLIP and latent diffusion, composed of a transformer-based image prior model, a unet diffusion model, and a decoder. Kandinsky 2.2 inherits best practices from Dall-E 2 and Latent diffusion while introducing some new ideas. It uses the CLIP model as a text and image encoder, and diffusion image prior (mapping) between latent spaces of CLIP modalities. This approach increases the visual performance of the model and unveils new horizons in blending images and text-guided image manipulation.\",\n    \"preview\": \"kandinsky-community--kandinsky-2-2-decoder.jpg\",\n    \"extras\": \"width: 768, height: 768, sampler: Default\",\n    \"size\": 5.15,\n    \"date\": \"2023 July\"\n  },\n  \"Kandinsky 3.0\": {\n    \"path\": \"kandinsky-community/kandinsky-3\",\n    \"desc\": \"Kandinsky 3.0 is an open-source text-to-image diffusion model built upon the Kandinsky2-x model family. In comparison to its predecessors, Kandinsky 3.0 incorporates more data and specifically related to Russian culture, which allows to generate pictures related to Russin culture. Furthermore, enhancements have been made to the text understanding and visual quality of the model, achieved by increasing the size of the text encoder and Diffusion U-Net models, respectively.\",\n    \"preview\": \"kandinsky-community--kandinsky-3.jpg\",\n    \"variant\": \"fp16\",\n    \"extras\": \"sampler: Default\",\n    \"size\": 27.72,\n    \"date\": \"2023 November\"\n  },\n  \"Kandinsky 5.0 T2I Lite\": {\n    \"path\": \"kandinskylab/Kandinsky-5.0-T2I-Lite-sft-Diffusers\",\n    \"desc\": \"Kandinsky 5.0 Image Lite is a 6B image generation models 1K resulution, high visual quality and strong text-writing\",\n    \"preview\": \"kandinskylab--Kandinsky-5.0-T2I-Lite-sft-Diffusers.jpg\",\n    \"skip\": true,\n    \"size\": 33.20,\n    \"date\": \"2025 November\"\n  },\n  \"Kandinsky 5.0 I2I Lite\": {\n    \"path\": \"kandinskylab/Kandinsky-5.0-I2I-Lite-sft-Diffusers\",\n    \"desc\": \"Kandinsky 5.0 Image Lite is a 6B image editing models 1K resulution, high visual quality and strong text-writing\",\n    \"preview\": \"kandinskylab--Kandinsky-5.0-T2I-Lite-sft-Diffusers.jpg\",\n    \"skip\": true,\n    \"size\": 33.20,\n    \"date\": \"2025 November\"\n  },\n\n  \"Playground v1\": {\n    \"path\": \"playgroundai/playground-v1\",\n    \"desc\": \"Playground v1 is a latent diffusion model that improves the overall HDR quality to get more stunning images.\",\n    \"preview\": \"playgroundai--playground-v1.jpg\",\n    \"extras\": \"width: 512, height: 512, sampler: Default\",\n    \"size\": 4.95,\n    \"date\": \"2023 December\"\n  },\n  \"Playground v2 Small\": {\n    \"path\": \"playgroundai/playground-v2-256px-base\",\n    \"desc\": \"Playground v2 is a diffusion-based text-to-image generative model. The model was trained from scratch by the research team at Playground. Images generated by Playground v2 are favored 2.5 times more than those produced by Stable Diffusion XL, according to Playground’s user study.\",\n    \"preview\": \"playgroundai--playground-v2-256px-base.jpg\",\n    \"extras\": \"width: 256, height: 256, sampler: Default\"\n  },\n  \"Playground v2 Medium\": {\n    \"path\": \"playgroundai/playground-v2-512px-base\",\n    \"desc\": \"Playground v2 is a diffusion-based text-to-image generative model. The model was trained from scratch by the research team at Playground. Images generated by Playground v2 are favored 2.5 times more than those produced by Stable Diffusion XL, according to Playground’s user study.\",\n    \"preview\": \"playgroundai--playground-v2-512px-base.jpg\",\n    \"extras\": \"width: 512, height: 512, sampler: Default\"\n  },\n  \"Playground v2 Large\": {\n    \"path\": \"playgroundai/playground-v2-1024px-aesthetic\",\n    \"desc\": \"Playground v2 is a diffusion-based text-to-image generative model. The model was trained from scratch by the research team at Playground. Images generated by Playground v2 are favored 2.5 times more than those produced by Stable Diffusion XL, according to Playground’s user study.\",\n    \"preview\": \"playgroundai--playground-v2-1024px-aesthetic.jpg\",\n    \"extras\": \"sampler: Default\"\n  },\n  \"Playground v2.5\": {\n    \"path\": \"playgroundai/playground-v2.5-1024px-aesthetic\",\n    \"desc\": \"Playground v2.5 is a diffusion-based text-to-image generative model, and a successor to Playground v2. Playground v2.5 is the state-of-the-art open-source model in aesthetic quality.\",\n    \"preview\": \"playgroundai--playground-v2.5-1024px-aesthetic.jpg\",\n    \"variant\": \"fp16\",\n    \"extras\": \"sampler: DPM++ 2M EDM\",\n    \"size\": 13.35,\n    \"date\": \"2023 December\"\n  },\n\n  \"CogView 4\": {\n    \"path\": \"zai-org/CogView4-6B\",\n    \"desc\": \"An innovative cascaded framework that enhances the performance of text-to-image diffusion. CogView is the first model implementing relay diffusion in the realm of text-to-image generation, executing the task by first creating low-resolution images and subsequently applying relay-based super-resolution.\",\n    \"preview\": \"THUDM--CogView4-6B.jpg\",\n    \"skip\": true,\n    \"size\": 30.39,\n    \"date\": \"2025 March\"\n  },\n  \"CogView 3 Plus\": {\n    \"path\": \"zai-org/CogView3-Plus-3B\",\n    \"desc\": \"An innovative cascaded framework that enhances the performance of text-to-image diffusion. CogView is the first model implementing relay diffusion in the realm of text-to-image generation, executing the task by first creating low-resolution images and subsequently applying relay-based super-resolution.\",\n    \"preview\": \"THUDM--CogView3-Plus-3B.jpg\",\n    \"skip\": true,\n    \"size\": 24.96,\n    \"date\": \"2024 October\"\n  },\n\n  \"Bria 3.2\": {\n    \"path\": \"briaai/BRIA-3.2\",\n    \"desc\": \"Bria 3.2 is the next-generation commercial-ready text-to-image model. With just 4 billion parameters, it provides exceptional aesthetics and text rendering, evaluated to provide on par results to leading open-source models, and outperforming other licensed models.\",\n    \"preview\": \"briaai--BRIA-3.2.jpg\",\n    \"skip\": true,\n    \"size\": 18.66,\n    \"date\": \"2025 June\"\n  },\n\n  \"Meissonic\": {\n    \"path\": \"MeissonFlow/Meissonic\",\n    \"desc\": \"Meissonic is a non-autoregressive mask image modeling text-to-image synthesis model that can generate high-resolution images. It is designed to run on consumer graphics cards.\",\n    \"preview\": \"MeissonFlow--Meissonic.jpg\",\n    \"skip\": true,\n    \"size\": 3.64,\n    \"date\": \"2024 October\"\n  },\n\n  \"aMUSEd 256\": {\n    \"path\": \"huggingface/amused/amused-256\",\n    \"skip\": true,\n    \"desc\": \"Amused is a lightweight text to image model based off of the muse architecture. Amused is particularly useful in applications that require a lightweight and fast model such as generating many images quickly at once.\",\n    \"preview\": \"amused--amused-256.jpg\",\n    \"extras\": \"width: 256, height: 256, sampler: Default\"\n  },\n  \"aMUSEd 512\": {\n    \"path\": \"amused/amused-512\",\n    \"desc\": \"Amused is a lightweight text to image model based off of the muse architecture. Amused is particularly useful in applications that require a lightweight and fast model such as generating many images quickly at once.\",\n    \"preview\": \"amused--amused-512.jpg\",\n    \"extras\": \"width: 512, height: 512, sampler: Default\"\n  },\n\n  \"Warp Wuerstchen\": {\n    \"path\": \"warp-ai/wuerstchen\",\n    \"desc\": \"Würstchen is a diffusion model whose text-conditional model works in a highly compressed latent space of images. Why is this important? Compressing data can reduce computational costs for both training and inference by magnitudes. Training on 1024x1024 images, is way more expensive than training at 32x32. Usually, other works make use of a relatively small compression, in the range of 4x - 8x spatial compression. Würstchen takes this to an extreme. Through its novel design, we achieve a 42x spatial compression. Würstchen employs a two-stage compression, what we call Stage A and Stage B. Stage A is a VQGAN, and Stage B is a Diffusion Autoencoder (more details can be found in the paper). A third model, Stage C, is learned in that highly compressed latent space. This training requires fractions of the compute used for current top-performing models, allowing also cheaper and faster inference.\",\n    \"preview\": \"warp-ai--wuerstchen.jpg\",\n    \"extras\": \"sampler: Default, cfg_scale: 4.0, image_cfg_scale: 0.0\",\n    \"size\": 12.16,\n    \"date\": \"2023 August\"\n  },\n\n  \"KOALA 700M\": {\n    \"path\": \"huggingface/etri-vilab/koala-700m-llava-cap\",\n    \"variant\": \"fp16\",\n    \"skip\": true,\n    \"desc\": \"Fast text-to-image model, called KOALA, by compressing SDXL's U-Net and distilling knowledge from SDXL into our model. KOALA-700M can generate a 1024x1024 image in less than 1.5 seconds on an NVIDIA 4090 GPU, which is more than 2x faster than SDXL.\",\n    \"preview\": \"etri-vilab--koala-700m-llava-cap.jpg\",\n    \"extras\": \"sampler: Default\",\n    \"size\": 6.58,\n    \"date\": \"2024 January\"\n  },\n\n  \"AIDC Ovis-Image 7B\": {\n    \"path\": \"AIDC-AI/Ovis-Image-7B\",\n    \"skip\": true,\n    \"desc\": \"Built upon Ovis-U1, Ovis-Image is a 7B text-to-image model specifically optimized for high-quality text rendering, designed to operate efficiently under stringent computational constraints.\",\n    \"preview\": \"AIDC-AI--Ovis-Image-7B.jpg\",\n    \"size\": 23.38,\n    \"date\": \"2025 December\",\n    \"extras\": \"\"\n  },\n\n  \"HDM-XUT 340M Anime\": {\n    \"path\": \"KBlueLeaf/HDM-xut-340M-anime\",\n    \"skip\": true,\n    \"desc\": \"HDM(Home made Diffusion Model) is a project to investigate specialized training recipe/scheme for pretraining T2I model at home which require the training setup should be exectuable on customer level hardware or cheap enough second handed server hardware.\",\n    \"preview\": \"KBlueLeaf--HDM-xut-340M-anime.jpg\",\n    \"extras\": \"\"\n  },\n\n  \"Tsinghua UniDiffuser\": {\n    \"path\": \"thu-ml/unidiffuser-v1\",\n    \"desc\": \"UniDiffuser is a unified diffusion framework to fit all distributions relevant to a set of multi-modal data in one transformer. UniDiffuser is able to perform image, text, text-to-image, image-to-text, and image-text pair generation by setting proper timesteps without additional overhead.\\nSpecifically, UniDiffuser employs a variation of transformer, called U-ViT, which parameterizes the joint noise prediction network. Other components perform as encoders and decoders of different modalities, including a pretrained image autoencoder from Stable Diffusion, a pretrained image ViT-B/32 CLIP encoder, a pretrained text ViT-L CLIP encoder, and a GPT-2 text decoder finetuned by ourselves.\",\n    \"preview\": \"thu-ml--unidiffuser-v1.jpg\",\n    \"extras\": \"width: 512, height: 512, sampler: Default\",\n    \"size\": 5.37,\n    \"date\": \"2023 May\"\n  },\n\n  \"SalesForce BLIP-Diffusion\": {\n    \"path\": \"salesforce/blipdiffusion\",\n    \"desc\": \"BLIP-Diffusion, a new subject-driven image generation model that supports multimodal control which consumes inputs of subject images and text prompts. Unlike other subject-driven generation models, BLIP-Diffusion introduces a new multimodal encoder which is pre-trained to provide subject representation.\",\n    \"preview\": \"salesforce--blipdiffusion.jpg\",\n    \"size\": 7.23,\n    \"date\": \"2023 July\"\n  },\n\n  \"InstaFlow 0.9B\": {\n    \"path\": \"XCLiu/instaflow_0_9B_from_sd_1_5\",\n    \"desc\": \"InstaFlow is an ultra-fast, one-step image generator that achieves image quality close to Stable Diffusion. This efficiency is made possible through a recent Rectified Flow technique, which trains probability flows with straight trajectories, hence inherently requiring only a single step for fast inference.\",\n    \"preview\": \"XCLiu--instaflow_0_9B_from_sd_1_5.jpg\"\n  },\n\n  \"DeepFloyd IF Medium\": {\n    \"path\": \"DeepFloyd/IF-I-M-v1.0\",\n    \"desc\": \"DeepFloyd-IF is a pixel-based text-to-image triple-cascaded diffusion model, that can generate pictures with new state-of-the-art for photorealism and language understanding. The result is a highly efficient model that outperforms current state-of-the-art models, achieving a zero-shot FID-30K score of 6.66 on the COCO dataset. It is modular and composed of frozen text mode and three pixel cascaded diffusion modules, each designed to generate images of increasing resolution: 64x64, 256x256, and 1024x1024.\",\n    \"preview\": \"DeepFloyd--IF-I-M-v1.0.jpg\",\n    \"extras\": \"sampler: Default\",\n    \"size\": 12.79,\n    \"date\": \"2023 April\"\n  },\n  \"DeepFloyd IF Large\": {\n    \"path\": \"DeepFloyd/IF-I-L-v1.0\",\n    \"desc\": \"DeepFloyd-IF is a pixel-based text-to-image triple-cascaded diffusion model, that can generate pictures with new state-of-the-art for photorealism and language understanding. The result is a highly efficient model that outperforms current state-of-the-art models, achieving a zero-shot FID-30K score of 6.66 on the COCO dataset. It is modular and composed of frozen text mode and three pixel cascaded diffusion modules, each designed to generate images of increasing resolution: 64x64, 256x256, and 1024x1024.\",\n    \"preview\": \"DeepFloyd--IF-I-L-v1.0.jpg\",\n    \"extras\": \"sampler: Default\",\n    \"size\": 15.48,\n    \"date\": \"2023 April\"\n  },\n  \"Photoroom PRX 1024\": {\n    \"path\": \"Photoroom/prx-1024-t2i-beta\",\n    \"desc\": \"PRX (Photoroom Experimental) is a 1.3-billion-parameter text-to-image model trained entirely from scratch and released under an Apache 2.0 license.\",\n    \"preview\": \"Photoroom--prx-1024-t2i-beta.jpg\",\n    \"skip\": true\n  },\n\n  \"ZAI GLM-Image\": {\n    \"path\": \"zai-org/GLM-Image\",\n    \"preview\": \"zai-org--GLM-Image.jpg\",\n    \"desc\": \"GLM-Image is a two-stage image generation model combining autoregressive token generation (9B vision-language encoder) with diffusion refinement (7B DiT transformer). Features strong text rendering and compositional capabilities.\",\n    \"skip\": true,\n    \"extras\": \"sampler: Default, cfg_scale: 1.5, steps: 50\",\n    \"size\": 15.3,\n    \"date\": \"2025 January\"\n  }\n\n}\n"
  },
  {
    "path": "data/upscalers.json",
    "content": "{\n  \"SwinIR\": [\n        [\"4x GAN\", \"https://github.com/JingyunLiang/SwinIR/releases/download/v0.0/003_realSR_BSRGAN_DFOWMFC_s64w8_SwinIR-L_x4_GAN.pth\"],\n        [\"4x PSNR\", \"https://github.com/JingyunLiang/SwinIR/releases/download/v0.0/003_realSR_BSRGAN_DFOWMFC_s64w8_SwinIR-L_x4_PSNR.pth\"]\n  ],\n  \"ESRGAN\": [\n        [\"4x GAN\", \"https://github.com/cszn/KAIR/releases/download/v1.0/ESRGAN.pth\"],\n        [\"4x Ultrasharp\", \"https://huggingface.co/vladmandic/sdnext-upscalers/resolve/main/ESRGAN-UltraSharp-4x.pth\"],\n        [\"4x Valar\", \"https://huggingface.co/vladmandic/sdnext-upscalers/resolve/main/ESRGAN-Valar-4x.pth\"],\n        [\"4x Box\", \"https://huggingface.co/vladmandic/sdnext-upscalers/resolve/main/ESRGAN-Box-4x.pth\"],\n        [\"4x BigFace V3\", \"https://huggingface.co/vladmandic/sdnext-upscalers/resolve/main/ESRGAN-BigFace-v3-4x.pth\"],\n        [\"4x Remacri\", \"https://huggingface.co/vladmandic/sdnext-upscalers/resolve/main/ESRGAN-Remacri-4x.pth\"],\n        [\"4x NMKD Siax\", \"https://huggingface.co/vladmandic/sdnext-upscalers/resolve/main/ESRGAN-NMKD-Siax-4x.pth\"],\n        [\"4x NMKD Superscale\", \"https://huggingface.co/vladmandic/sdnext-upscalers/resolve/main/ESRGAN-NMKD-Superscale-4x.pth\"],\n        [\"4x NMKD YandereNeoXL\", \"https://huggingface.co/vladmandic/sdnext-upscalers/resolve/main/ESRGAN-NMKD-YandereNeoXL-4x.pth\"],\n        [\"8x NMKD Faces\", \"https://huggingface.co/Zabin/Resizers/resolve/main/8x_NMKD-Faces_160000_G.pth\"],\n        [\"8x Superscale\", \"https://huggingface.co/vladmandic/sdnext-upscalers/resolve/main/ESRGAN-NMKD-Superscale-8x.pth\"],\n        [\"8x HugePaint\", \"https://huggingface.co/vladmandic/sdnext-upscalers/resolve/main/ESRGAN-HugePaint-8x.pth\"]\n  ],\n  \"RealESRGAN\": [\n        [\"4x General V3\", \"https://github.com/xinntao/Real-ESRGAN/releases/download/v0.2.5.0/realesr-general-x4v3.pth\"],\n        [\"4x General WDN V3\", \"https://github.com/xinntao/Real-ESRGAN/releases/download/v0.2.5.0/realesr-general-wdn-x4v3.pth\"],\n        [\"AnimeVideo V3\", \"https://github.com/xinntao/Real-ESRGAN/releases/download/v0.2.5.0/realesr-animevideov3.pth\"],\n        [\"4x+ Anime6B\", \"https://github.com/xinntao/Real-ESRGAN/releases/download/v0.2.2.4/RealESRGAN_x4plus_anime_6B.pth\"],\n        [\"4x+\", \"https://github.com/xinntao/Real-ESRGAN/releases/download/v0.1.0/RealESRGAN_x4plus.pth\"],\n        [\"2x+\", \"https://github.com/xinntao/Real-ESRGAN/releases/download/v0.2.1/RealESRGAN_x2plus.pth\"]\n  ],\n  \"SCUNet\": [\n        [\"GAN\", \"https://github.com/cszn/KAIR/releases/download/v1.0/scunet_color_real_gan.pth\"],\n        [\"PSNR\", \"https://github.com/cszn/KAIR/releases/download/v1.0/scunet_color_real_psnr.pth\"]\n  ]\n}\n"
  },
  {
    "path": "eslint.config.mjs",
    "content": "import path from 'node:path';\n\nimport { includeIgnoreFile } from '@eslint/compat';\nimport css from '@eslint/css';\nimport js from '@eslint/js';\nimport json from '@eslint/json';\nimport markdown from '@eslint/markdown';\nimport html from '@html-eslint/eslint-plugin';\nimport { configs, helpers, plugins, rules } from 'eslint-config-airbnb-extended';\nimport pluginPromise from 'eslint-plugin-promise';\nimport { defineConfig, globalIgnores } from 'eslint/config';\nimport globals from 'globals';\n\nconst gitignorePath = path.resolve('.', '.gitignore');\n\nconst jsConfig = defineConfig([\n  // ESLint recommended config\n  {\n    name: 'js/config',\n    files: helpers.extensions.allFiles,\n    ...js.configs.recommended,\n    languageOptions: {\n      ecmaVersion: 'latest',\n      parserOptions: {\n        ecmaVersion: 'latest',\n      },\n      globals: { // Set per project\n        ...globals.builtin,\n        ...globals.browser,\n        ...globals.jquery,\n        panzoom: 'readonly',\n        authFetch: 'readonly',\n        log: 'readonly',\n        debug: 'readonly',\n        error: 'readonly',\n        xhrGet: 'readonly',\n        xhrPost: 'readonly',\n        gradioApp: 'readonly',\n        executeCallbacks: 'readonly',\n        onAfterUiUpdate: 'readonly',\n        onOptionsChanged: 'readonly',\n        optionsChangedCallbacks: 'readonly',\n        onUiLoaded: 'readonly',\n        onUiUpdate: 'readonly',\n        onUiTabChange: 'readonly',\n        onUiReady: 'readonly',\n        uiCurrentTab: 'writable',\n        uiElementIsVisible: 'readonly',\n        uiElementInSight: 'readonly',\n        getUICurrentTabContent: 'readonly',\n        waitForFlag: 'readonly',\n        logFn: 'readonly',\n        generateForever: 'readonly',\n        showContributors: 'readonly',\n        opts: 'writable',\n        monitorOption: 'readonly',\n        sortUIElements: 'readonly',\n        all_gallery_buttons: 'readonly',\n        selected_gallery_button: 'readonly',\n        selected_gallery_index: 'readonly',\n        switch_to_txt2img: 'readonly',\n        switch_to_img2img_tab: 'readonly',\n        switch_to_img2img: 'readonly',\n        switch_to_sketch: 'readonly',\n        switch_to_inpaint: 'readonly',\n        witch_to_inpaint_sketch: 'readonly',\n        switch_to_extras: 'readonly',\n        get_tab_index: 'readonly',\n        create_submit_args: 'readonly',\n        restartReload: 'readonly',\n        markSelectedCards: 'readonly',\n        updateInput: 'readonly',\n        toggleCompact: 'readonly',\n        setFontSize: 'readonly',\n        setTheme: 'readonly',\n        registerDragDrop: 'readonly',\n        getToken: 'readonly',\n        getENActiveTab: 'readonly',\n        quickApplyStyle: 'readonly',\n        quickSaveStyle: 'readonly',\n        setupExtraNetworks: 'readonly',\n        showNetworks: 'readonly',\n        localization: 'readonly',\n        randomId: 'readonly',\n        requestProgress: 'readonly',\n        setRefreshInterval: 'readonly',\n        modalPrevImage: 'readonly',\n        modalNextImage: 'readonly',\n        galleryClickEventHandler: 'readonly',\n        getExif: 'readonly',\n        jobStatusEl: 'readonly',\n        removeSplash: 'readonly',\n        initGPU: 'readonly',\n        startGPU: 'readonly',\n        disableNVML: 'readonly',\n        idbGet: 'readonly',\n        idbPut: 'readonly',\n        idbDel: 'readonly',\n        idbAdd: 'readonly',\n        idbCount: 'readonly',\n        idbFolderCleanup: 'readonly',\n        idbClearAll: 'readonly',\n        idbIsReady: 'readonly',\n        initChangelog: 'readonly',\n        sendNotification: 'readonly',\n        monitorConnection: 'readonly',\n      },\n    },\n  },\n  pluginPromise.configs['flat/recommended'],\n  // Stylistic plugin\n  plugins.stylistic,\n  // Import X plugin\n  plugins.importX,\n  // Airbnb base recommended config\n  ...configs.base.recommended,\n  {\n    name: 'sdnext/js',\n    files: helpers.extensions.allFiles,\n    languageOptions: {\n      ecmaVersion: 'latest',\n      parserOptions: {\n        ecmaVersion: 'latest',\n      },\n    },\n    rules: {\n      camelcase: 'off',\n      'default-case': 'off',\n      'max-classes-per-file': 'warn',\n      'no-await-in-loop': 'off',\n      'no-bitwise': 'off',\n      'no-continue': 'off',\n      'no-console': 'off',\n      'no-loop-func': 'off',\n      'no-param-reassign': 'off',\n      'no-plusplus': 'off',\n      'no-redeclare': 'off',\n      'no-restricted-globals': 'off',\n      'no-restricted-syntax': 'off',\n      'no-unused-vars': 'off',\n      'no-use-before-define': 'warn',\n      'no-useless-escape': 'warn',\n      'prefer-destructuring': 'off',\n      'prefer-rest-params': 'off',\n      'prefer-template': 'warn',\n      'promise/no-nesting': 'off',\n      radix: 'off',\n      '@stylistic/brace-style': [\n        'error',\n        '1tbs',\n        {\n          allowSingleLine: true,\n        },\n      ],\n      '@stylistic/indent': ['error', 2],\n      '@stylistic/lines-between-class-members': [\n        'error',\n        'always',\n        {\n          exceptAfterSingleLine: true,\n        },\n      ],\n      '@stylistic/max-len': [\n        'warn',\n        {\n          code: 275,\n          tabWidth: 2,\n        },\n      ],\n      '@stylistic/max-statements-per-line': 'off',\n      '@stylistic/no-mixed-operators': 'off',\n      '@stylistic/object-curly-newline': [\n        'error',\n        {\n          multiline: true,\n          consistent: true,\n        },\n      ],\n      '@stylistic/quotes': [\n        'error',\n        'single',\n        {\n          avoidEscape: true,\n        },\n      ],\n      '@stylistic/semi': [\n        'error',\n        'always',\n        {\n          omitLastInOneLineBlock: false,\n        },\n      ],\n      'promise/always-return': 'off',\n      'promise/catch-or-return': 'off',\n    },\n  },\n]);\n\n// const typescriptConfig = defineConfig([\n//   // TypeScript ESLint plugin\n//   plugins.typescriptEslint,\n//   // Airbnb base TypeScript config\n//   ...configs.base.typescript,\n//   {\n//     name: 'sdnext/typescript',\n//     files: helpers.extensions.tsFiles,\n//     rules: {\n//       '@typescript-eslint/ban-ts-comment': 'off',\n//       '@typescript-eslint/explicit-module-boundary-types': 'off',\n//       '@typescript-eslint/no-shadow': 'error',\n//       '@typescript-eslint/no-var-requires': 'off',\n//     },\n//   },\n// ]);\n\nconst nodeConfig = defineConfig([\n  // Node plugin\n  plugins.node,\n  {\n    name: 'sdnext/node',\n    files: ['**/cli/*.js'],\n    languageOptions: {\n      globals: {\n        ...globals.node,\n      },\n    },\n    rules: {\n      // Import as rule sets to override the `files` setting from default config\n      ...rules.node.base.rules,\n      ...rules.node.globals.rules,\n      ...rules.node.noUnsupportedFeatures.rules,\n      ...rules.node.promises.rules,\n      'n/no-sync': 'off',\n      'n/no-process-exit': 'off',\n      'n/hashbang': 'off',\n    },\n  },\n]);\n\nconst jsonConfig = defineConfig([\n  {\n    files: ['**/*.json'],\n    ignores: ['package-lock.json'],\n    plugins: { json },\n    language: 'json/json',\n    extends: ['json/recommended'],\n    rules: {\n      'json/no-empty-keys': 'off',\n    },\n  },\n]);\n\nconst markdownConfig = defineConfig([\n  {\n    files: ['**/*.md'],\n    plugins: { markdown },\n    language: 'markdown/gfm',\n    processor: 'markdown/markdown',\n    extends: ['markdown/recommended'],\n  },\n]);\n\nconst cssConfig = defineConfig([\n  {\n    files: ['**/*.css'],\n    language: 'css/css',\n    plugins: { css },\n    extends: ['css/recommended'],\n    // languageOptions: {\n    //   tolerant: true,\n    // },\n    rules: {\n      'css/font-family-fallbacks': 'off',\n      'css/no-invalid-properties': [\n        'error',\n        {\n          allowUnknownVariables: true,\n        },\n      ],\n      'css/no-important': 'off',\n      'css/use-baseline': 'off',\n    },\n  },\n]);\n\nconst htmlConfig = defineConfig([\n  {\n    files: ['**/*.html'],\n    plugins: {\n      html,\n    },\n    extends: ['html/recommended'],\n    language: 'html/html',\n    rules: {\n      'html/attrs-newline': 'off',\n      'html/element-newline': 'off',\n      'html/indent': [\n        'warn',\n        2,\n      ],\n      'html/no-duplicate-class': 'error',\n      'html/no-extra-spacing-attrs': [\n        'error',\n        {\n          enforceBeforeSelfClose: true,\n          disallowMissing: true,\n          disallowTabs: true,\n          disallowInAssignment: true,\n        },\n      ],\n      'html/require-closing-tags': [\n        'error',\n        {\n          selfClosing: 'always',\n        },\n      ],\n      'html/use-baseline': 'off',\n    },\n  },\n]);\n\nexport default defineConfig([\n  // Ignore files and folders listed in .gitignore\n  includeIgnoreFile(gitignorePath),\n  globalIgnores([\n    '**/node_modules',\n    '**/extensions',\n    '**/extensions-builtin',\n    '**/repositories',\n    '**/venv',\n    '**/panZoom.js',\n    '**/split.js',\n    '**/exifr.js',\n    '**/jquery.js',\n    '**/sparkline.js',\n    '**/iframeResizer.min.js',\n  ]),\n  ...jsConfig,\n  // ...typescriptConfig,\n  ...nodeConfig,\n  ...jsonConfig,\n  ...markdownConfig,\n  ...cssConfig,\n  ...htmlConfig,\n]);\n"
  },
  {
    "path": "html/art-styles.json",
    "content": "[\n  {\n    \"name\": \"3d print\",\n    \"prompt\": \"3d print {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"3D render\",\n    \"prompt\": \"3D render {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"50s illustration style\",\n    \"prompt\": \"50s illustration style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"60s illustration style\",\n    \"prompt\": \"60s illustration style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"70s illustration style\",\n    \"prompt\": \"70s illustration style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"80s illustration style\",\n    \"prompt\": \"80s illustration style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"90s illustration style\",\n    \"prompt\": \"90s illustration style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"a doll\",\n    \"prompt\": \"a doll {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDm6KKKYh6deavWsnklzgHcuKitNqxEvErqxwc9R9DSyRhPmhYlf7rdRU31sPlurlq1LpMrREh88Yrobe+V2WOchJScAZ4Y+1cpb3pikUuMgH8qm1SZZoI5EYElyeO1MnY3NV04zH7Rb5WdOeO//wBep4J55reM3MRjkHB9G9xRptyZLSFZD82xfmPfip7psGIerf0oGRXJxay/7ppNGlZ7VWfnD7fwpLs/6JL/ALhpmjHFiD/00NIZt1UvruO18syEjJPQZqWGUsxBOeM1na/BLMkPkxs+M5x26U1uRNtRuhIbiORpJkOUQHNcdK5kkZz1Ykmt/Etno1yJVKOx2gH34/xrnyKYRba1EHWnbCUYgZA6n0pEHzVaX/jynXeANwO3u1JuxSRRpTSU5hhVPrmmBq6TbfarV0zgq+f0qS7sJIUJI49RU3hg/JNnPUdK2NSVWtTj2/nXNOTUjeGqSOKcYJ+ppgBJwOTVy5XEb8f8tWGfwqG0jMlwqjqa3T0uZNa2Og0y5hlt0i3YcbQVPB4rTI3qPMP3SdrdxWPeWO1C+3DAD5lqG01aWCMCfMiY69xTTuQ42NS583yJFbJUqfm4x0pmkyeXEbaUbZA24ejD1FUdHupvKMePPi7xnqB7f4VcsxLBPhE3wMeAfvR57UDRrQNiQn2FSX0hhs5JV6qOKrxth2/3RVi7ia4sXjTG5hgZ6UCd7OxyWpXk00Plytvy+cgY7f8A16y61bjTLqSRtoQ45ID9KqSWrxKd2M7c8HNNijeyuVol3PVoootp2J5BAX8+ais42kmVVGSc8VZnhZbaaQjADbfxzUt62NEtLmZUsn+qj/Goqkc/u0/GmSbHh8Ntl2uFII6962bgyfZSHAPQ5H1rn9IRXjk3S+Xg8GteZAsJxcE9sGuaqtWdNPZGHd/6uT/rs38qZpQzfJTrrpJz/wAtW4pul/8AH6lbfZMX8R1l0MwP06CuegjRoxvHAAxxkZ5xmt+5I8mTJH3RWLAm60BVsHge3ej0DTS5HNfSNB5Y+UggggYq9p1xczqjS5Cg8Of4h6e9YxzLctEiOzjOcd8V0Gn3MU8CBI3jWIYK9jSSsOTuidJf3knoFFacbgQ7uwFZBeKOaQMkoVsBWGCD61bgkD2425wRj5hWhmVDKDI6nrt7fWsllDW5I/55D+VW7lAyy5YqSwXPtVZM/ZHz/wA8h/KlbUfQpaYxW6jKgE89atXjH+zZge8xPH1qppu77Sm1tpweamuyfsEnPWT196hr3jRP3TKpzH5VH1ptKegrUyLdkjyKVjBJJ6Ctb7G6QCR26+lZVi7qP3ZYHd/D1rZRLhrZQwbgkndxxxWFVnRS2Ma4XAkOf+WjCk00ZvFqS5U7JGP/AD2YfpTNLXdeqK0v7pl9o6i4UeTIfVRXOz3CxWIjDESMAQB6c10lwP3D/QVyt7CogjlBweFx69aaE9ivDPJAS0bbSeprpjcslibh0GQoY/lXLxoXkVFUsWIAA6mun1CB4tKjRx8iAeZj0A6ficCmyTLsbj/RZzHuDR/Pzz1p7ajNa21umTkkOeeo9Kd4ct1naTI3D7sgz1UjI/UfrV/V9L3m1FuFUB9vPbNMRRublwGYrlJmBQenH/16SJs2Mnb93j9K1tStUjhEvVlPGegrmFu5gCu/5SMEY7VN9bFW0uLaBjKoU4ODzUk4b7LIT08zFGmKXukC8HBqS8VlsWJ6GYik3rYpLS5mUp6UUHoKsg2/Dn3pvwram/1LVh+HmCNMWIAwOtXrrUYwDHGN7GuWpBynobwkox1Mm6/1Un/Xdv5VHpbBLxWPQA9KvRadJcHdKSiFtxX1rSttPtYGDJEN3qea6EtLGLlrceTNdDGPKjP5msbXpI42jtIgPk+Zj3z2FdGD7VyGrKV1GUNneWy3Ofp+lMRVjdkkV1OCpyK6+yvV1HSpQ+DIqEOMdeODXHCtvw2yfaJVLMHKYUZ4I96YjS8PxrGGAUAtDGx/HNa8ihsZ7HIqK2QQwpGAPlULn1xUpNIZS1c5sWPocmuLH3q7yUB1KsAQeoNY1xo1s2Si7D6Ckgb0sZekttulPsaffPnTwuP+WzH9TU9vY+ROCD8uO9Vb7iyQ+sjf1pOOtylLSxm0p6U5Y3c/KpNXrW0AGZgCewFWQM06J5dyo20dzWzbW0UAyBlvU1HHtQYXgelSCTHegRaDU9Tnp+dV0yfvflU6mkMkkkWCF5H+6gLGuLmlaaZ5X+87FjXQa9LILNYo0Yhz8zAcACucoAKlt53tp1ljOGQ5HvUdOjjeVwsaM7HsozTA7mzuY7y1SePow5HofSpzWLoFjeWiuZyEjfpGeTn19q2WNIZG5qBjipXNQSGgRVnGG9jyKx9RBS1jRjyHNbMh3Lj8qxNVcHy1xzzQA5MDpUyviqoanKxbp+dMRaEmTgcmp4uOep9aqJgVMrUAXFapkaqaPU6PQBaVs8VjeXBc68B5SGPJBXHBwOv51p+aEUsegGTVDRoj892/Vshfp3NIaNNdLsN2fssf5VkPE+ka/G0fywTNxjpgnkfhW/GeKravbfatOcqP3kf7xD7igZoE8ikY9KgtblLqCOZCCGXJx2PpUjnkUAMlNVZCanlOBVSVqBEMjYqjcxxynLKCfWrMr981Vkf3piKajPWpR9ahBpwagCcH3qZD71VD1Ir0AXFz6ipVY+1UfOwKia5k7HFAFnU7ryrYxgjfJx16Crtmx+ywgLgbBxn2rnzhWJ6565q7HeuAKBm+shx90/mKdNcxRwO0p2qAQckelY6X7Lyahubz7VtTaBhshu4+lIC7oNo9rG00m4GVRhfTr/8AWrTeUbhw3fsaq2kv7kAsWPqTk095fm/CgAmlXaeT+RqpLKpHWnyyVTeTigBskgPpVdnz3pXeoHamI//Z\"\n  },\n  {\n    \"name\": \"abstract style\",\n    \"prompt\": \"abstract style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"abstractionism style\",\n    \"prompt\": \"abstractionism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"acrylic painting\",\n    \"prompt\": \"acrylic painting {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"action figure\",\n    \"prompt\": \"action figure {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"action painting art\",\n    \"prompt\": \"action painting art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"aetherpunk style\",\n    \"prompt\": \"aetherpunk style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"alcohol ink art\",\n    \"prompt\": \"alcohol ink art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"alcohol ink drawing\",\n    \"prompt\": \"alcohol ink drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDcYE7/AKVXlRldtvIPUUqTnBJOQR1FT7yz8HPI/lWlzG1iFZTIgAPzjo3r7VVuruYY2yMOD6+1WpUwjkcEcgjscVVTa6nf83PepZRGLufzAC7Y3eh9a2rbIQqfrWSyoSu0Dr1rVgO5wfRf61I0TmkzSkUmKohjJW2xn34rlNQKjUrjP9411U7AKq9yRiuU1AFtRnP+0RSLWxb0pl81tp52/wBa1I42S6eQ4xIBgD2FZelRnz2weSuBWyp8tfnYM+MZ6VjJXkbQ2ElkCDBYZ9ax538+5RcnYeMetTXMpkkQtwol2Ee1Pa3S3aOaRwAhPHr1xXRFqCL5e4+K3WB3lcgLgY9sVA00t7J5cOViH604JLfuC4KQjoPWtGGBYlwowK56lZt2W4lG+rOcjgvNOObVxcwd4zwR9K0bG/iuW/csUlH3on4IqtHLHKu6GRZVHdeo+o6imTQR3GGYfMPuupww/GtjA1y5aGUYOcGsyQtg49/6U2K+ntgVuszRYx5yj5lH+0P61IrIQHV1aNujDoaGK1hIy29cZ+8PT1NbK3cMLgFlyVHGazUZNw5HWq9y2LzIODgfw5PSs5y5Vc2oU1UlZnTq29FYdCM0tRWpzbqM5xxU1aIyaKdy4Mqrxxx/KuV1HP8Aac+CQNxrprjIuzz1wRXN32Pt8+cffNICfSZGSZ3JJ2rWhPPkxMP73T8Kz9P+Z2UdSv8AWp2kSAYA3y5PXotcspS9o0jspcip3ZYaWKBWdxuaQhlX3xS29vJcv59z0/hXsKrQmGMG6vpAFB4z1Y/SqOoeIppsx2YMMf8Ae/iP+FW1KWiM5SvqzcvdStNOXErgvjiNeT/9aubv9bur3KKfKiP8Knr9TWd8ztnlmPc8k1MtqwGZWWMf7R5/KrjBRM3JsqqzI4ZGKsOhBwRV6DVpUOJh5n+0OG/+vWrL4cibmNnT8dwqjP4fu4/9WVkHtwapSXcTiy5BeQXGNrgP78EVUe9S1vpE2hVyMlRlW+q/1H61R+y3FvcR+dC6DeOSPeujvdP067ZpGmCyHq4PJqidhluqSBZYGV0yM45xzS3eRcIwIAwDz9ayWsrmxl8yxuPMA6lOD+I71qsjTMnmMAwHJ7H/AArOpqrG+HajO72Nu0mBQL/dfGfrV6saGQIF5+8yH+daxcJHuNaIwZnzNuvAB0Awa5rUVJ1KfA/iNb4cvcyN1+YAD86xtQJtrp2ZDKzN0U96AHaUm2aRnOxQh+bOAKq3GpQw/LbASuP4j90f41DMt7dr+9xHEOdg4A/DvVUPbx/dRpW9W4H5UrDTBjcXkm5t0jevYf4UpiSH/XNlv7q0v2maV1TdtUkDaoxSrp9yWO6PYPV+KewEZnfGIgI19uv50zqckkmtS20XziQZdxAztjH9TVqLTrVD/qHfHd2wKXMh8rNT7SAxAH8K9uBg1Il5mIFkJI3ZH8qSOYMBttxyobkDjNIbgEcQAk54Cg4rFK5o3YkuVWW3bA6nH61lOhBGME5xjGK043ZoiHi8vGOgxmsq4vFgMec5MmMe1aQVkZy1YM/3TIMc4yOtOR3idV7sCCTyMVUv7kzwJ9nY5WU5XHPHf6VYivIzcuJuNm0AdeSOR+dU1cRZZvnhI6cVLd60rXH2VQQAcF/emJb3UgaQpsjiIIwMlhzxWG5bzy3ctmhsuEOY20d1J25AJzkf596z7gy/a3BJHPrUtxPIuky3SAESEICD9096iglMqQ3LcosZ8wnuQP8A61BFh9vE1wwiZiA2QT6cVeh0CzgOWjMvIA3H1rFXUTHbbukjyk/L2HGa39Qu5lt4vJIUSKDu7j6VMk7DiWZLe1tLeQtHHEqpndgACm3cSSBDgHpg/gaxNc1OWezii4Uv97B6gf8A16ktryeaxtsSDcoxg9WIJ61PK+Vlp6m5YoqtkDble9Uo49pzIw2j1X6/41VMtw42u25fQNtP8qYzsqDYJR7Fwfw5pJNK1xt3d7GgsiLEm6F2+QY39zTyZpExgRJz7VVuNRttPQcr5gVeOrGsS81y5uvljJiX1B5NUkyGzclurazYI9wzyNhQuf6Vj3q+ZIABnDZ5rPto3edXAJwckmtM5Y5atErENk9lp6bQWZoZOeSpIrRtdEtmkLgs2erkY/LNZKNIjDyZGRvVTjFaEOp3iYHm7/ZlHNOwnJI2ZYJVtJkWbgxsF4wRx6iuAmkmgJhkUqwHeu/nklOn/OmyaTCbQehNcNrMyT6m5i+4gEYPrgYzUlrY17SxP/COTRTKVlknXCn8P/r1Y/siWKykQqoQKdwz04PNaenR295FFfD5iyjKnoGxgnHrV6WMSIwwDkYIPQ0COJGkmWHEQLMDnjoRViU6vp0jMqM8HYMNwA/mK3Fj8qQEYOOxGAKtIwYZXt1U9RUttDSOPu7qHVPLDp9nlU7dw5U/4Vc0uNJLVVi8mQqTuVjz9ateIrSFLeO4hRVn8wDIGN3WsX+y7pIUnhw5Khv3Z+ZaejQbM3fs+3G61kU9QYycVFMEZvklkBYE4cAdKzbTXL20ba580DqG4P5/41rxa1Y3wC3ChH/2xj8jS5X0KUl1RyhBZskkk1bgsy3zScD+7Vm3sxH8x5b1qduOBVmdyMKFGFGKXB6Dk/yp6qTwBk1YEYCdD+VMhuxCowMAGrmmf8fkZMZfnoKiijJJwrH6CtC1tJt6tGpUqc7jTbIW5Y1tpRaOIwQBG7Fx2OMD+dcDnNel3Kl7d1C78jBFeePYXCtKBE2I2wcjFQbnReEJJRDKhDGItx7GumrC8MQ3NtZbJYNqsxOTwR+FbnQ0CI5oBICRw386zJGaG4UMGUdCw6j2962MiobiBZ4yp4PY0h3KkyR3EBiZ8q3RlP8AnFZzwiH5Z1Y46Sp1/GgW8trMzAncDypOQR61oRyrImR8wHVT1Wk1bYpMy7qwMqbmCzr2J4YfjWNPprLkwknH8DcGuv2pj5BxVa4tUkHI5pKQ2jIL5GBSrGWOB+J9KcqdAOtWEjCritTBuw+O3VRgU8p2qWLG3FWbaAST7j91eTRci1yext/IhGR8zct/QVaoHrRUmq0DFZN9CvmytnG5lGPfIFa1Z2pW7SyR+WRv3BwucbivOPypNFxdmaAGAB1wMUtQ211HcoGXKt3VuoqagkBRQfWigCKeBZ1w3DDo3pWTKkltKWX5ZF9OhFbdRXNutxHg8MPut6UwKUMnmrvjxv8A4k9fp71IrLIpwefTuKzJ4XjlK8xyLzwf1FSw3AmOJGCTj+Ls31qXEpMiSBVXAGT3NS+WAPu1OE46cUbas5tyKNAW4XntWrDEIownfq1V7SIGTeei/wA6uD19aTNILqGBRgUtFIsMVlaqzpqNhsby8lwHP3c44B+tapOAT6VlanJZahYSx+cm5eQ2Mke4pgRXFyI1a4jBSWM/vIs8g+o9RS2HiS1u5VhfMcjcDPQmuRvYby1bE5l2klVZsjdj61ToGep0lecwanfQOrR3MmV6BjkD8DW9o+srNOZr6djIq4AJwo+gosI6n8aOfWoLS8hvI98MiuO+DU9ICC6tVuY8E4cfdbHSueuI3ikZHG11611FVr2zju4/m4dR8rDtTA//2Q==\"\n  },\n  {\n    \"name\": \"alebrije art\",\n    \"prompt\": \"alebrije art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"amigurumi\",\n    \"prompt\": \"amigurumi {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"anime style\",\n    \"prompt\": \"anime style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"aquatint technique\",\n    \"prompt\": \"aquatint technique {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"art deco style\",\n    \"prompt\": \"art deco style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"art nouveau style\",\n    \"prompt\": \"art nouveau style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwCy9zOkjFpjtLsqIigk4OPSlW5nlbYkjxydVVwpDe2ccVAx8yR/LwZI3cbCcEgk8jP1NID5BWadVjVMlUB5Zvpk+1YmpW1LVb+2jiaOXblmRgUGcjkfoRVD/hIdS/57j/vgf4VNrk/nWVoz48xyzMfXGBms21tTOWZ28uFPvyEdPYep9q0SVtTNt3NCDWdXuZNkMgZup+RcAepParkWr3MbbPOa+n7pCgCD6tjJqo6qsJjZWigUbvs6H52/2pG7fT9KdaQzXkLyOUtLCP7xC8fT/aP1paD1JpNT1GZsNdQwZ/giXeR+Iz/Oo4Fu72fy4r2+kfrwu0D35aqxT7fcpa2ETEE8Fzkn3PYCuksvDcVvHiW5nZm+8I3KL+lGwjDkN3aTmJ769icf3lyP/QulTR6nqMTbRcw3H+xINjfritW98NQ3CZiuJlcD5fMcuP8AGucCCyuJLTUI2UA4LIeV98dCKNwL8mr3TtsW4a0m/wCec6Dafo2P5/nVObW9XgkMc0mxh2MYp91DPZRIW8u7sZPuNj5f8VNMCJJF5YDyw43eU3+sjHqh/iHtRoGoz/hIdS/57r/3wK0tN1K+uoCzy7maTau1BnAGT/MVz9xbmBh8weNxlHHRh/j7VsaNcG30t5YwDIk23nsCAT/LFOSVtAi3fU1jdToxj815nX7xQKFU+nTmlhuLg3UOZ98TsRgoAeh/+tVdU3nfCizQs27HGR6gjPWnQER3drBuDSCRnfByF+XAGazNBXhjF2X3LlmwUJ54JyfpkD8zVSW2kZUj24kZ/lB75xmrF1E4km+0KqxFyyO0gXbn+Y9qo3WpRpZSLasW2r5SyH35OPwzz9KaE2Ubwi91BYIGHlRLsDnpgcs38zT1BmZRCxgtID/rG9fX3Y+lMs7fNqfnEfm8u56LGD/U/wAq1LLyYftU7qrR2cYa3TqGLdH9yeKtkeZFZWh1O8+xxI0NrF88pb77n1b3Pp2q5dywssk7KPsFkfLgi7Syep9QKs2atpvhqa6c/v5lMjMeuT0/nXM3F201vBABtihXAGerHqxpLUDa0O80/TbNri4mBuZiSVQZIGent61ZbxZATiG0mf6kD/GqdhoSpYtfX44VC6w5xn03GiwhbUFmkaIiIZEaxEKqnHTFJ2KSuXE8W2+7EtrKn0IP+FVtbvLDULVLq2lX7TAw+RxgsM9Md/8A9dLpjrPfPp2oosowQgcAlSO2evSmax4c+zxtcWRLRry0Z5IHqD3pqwmrE1rJAoikCA6dfHZLEekMvt6CqN7aHTL37JKry27/ADwsv30/3ff271nwXjQ2s9sRuimGcZ+6w6MK6a9U6l4chu0P7+FRKrDqCOv8qNhHOsuwlJ3821nORKo6H+97EdxRp+YLuWymIHm4AOeNw5U/Q/1rRvvInFrOiqqXcZadegUr1Yeh6/Wsu9gK26MHDmPG2RejIeh/A5FMPM24bZhHEUGWVsMD2YHn+lWbaGNb8yBlODsUA59efyFZsOpRTWyLcuYjMBlx91mXg59D/jV6xgb7RC0aKYlYsXVw2flI7VD8y0c9rn/IZuf9/wDpTb6PyLW0h7lDI31P/wBYCptSi8/xFLF/flAP6VNfxifWbZD90hc/TJNXfYi25FqbC3hhs06hFaT644H6k/jUduXmto4lPVxE3uCcj9c0t2sd1cySF2gldslZen4Ht+NSafDLDPiVCBvjcHqDhgOD360dBnReKn8nSEiXjc6qB7AZ/oKzV0aKPWrG2GWBiEsoJ7jOaveKRvksIv70p/oP61HdXbW2vS34TzIoiLbYp+YkjPH40lsI3L6eG3s5JLnmLGCMZznjFYWjwwGSZ7KaUR5GUlAOD2Ix/OoNRm8zTZZpZ1aeeVSYlP8AqlAOBiodN1GK0tGhcOGL7tyAHPHTmla6NIrS5a0yTTrHUnMssrzlivmOAVBPU5rp/avPp382eSQLtV2JwOi5PSui+1h7KyvorhFuo0KGJj/rR0IwPp1ptCkrFBtGifWL625ULEZYce/T/CtLwq/naQ8LchZCuPYj/wDXVe2u3uddivyhjic/ZijfeBxnn8ak8LfJLfxf3ZR/Uf0oexBzs7PFavGT0cxL7AHJ/XFP09hcWlxaPywjZ4v5kfoDS38Uk0wSJC2Xkc47ZYjn8qZaKlpcxymQyyIc7IuR+LdPyp9BkVunn6bcL3iIkX+R/wA+1WPDmf7ahAPZv5GptOhEV9eQH7v3fwz/AIGo9AQx69Gh6rvB/AGi+4rbF24hU66ZAACN7E+vYfzpkq51dW/uW7H9D/jVuZGGozyFSFCkbm4HLf8A1qjCK95LLvjwLYgfOPX+VRcuxWZFdwrKGBm5B/3KZaxiFQEZtrqrFc8ZDrzUwRmkVlG5fNzlTnjb7VGhwiH0i/8AZ1qhs1PEkipqenF/uqxY/TI/wqKxZSzzTMNyfOR6M/J/HGBUXiTE+tW8Z+4qgMfxyf0plrZNI008rGIcvNJ/zzHUIv8AtY79qXQhFXVbnzpSODjr/s+i/wCPufaqZtyjuhJLKPm9uB/KpTCRD9oUeXGZNsY9T1P5cfjUQ3Akg4J689ataGqRr2NlG/hi6mX5pGfkgZKhT/8ArNU9MujDMMsBn7uehPcZ7Z/mBRpd/Jp1yrqT5ROJE7Ef41d1vS1ime4tkBgOGZR0XPf6Un2ZNraMnvShCSxNh5TgDvvXlfxBGPxp3hmYSalqDL0chx+Z/wAapz2WYYZ7eQyIcGGQnlW/uN/Q1J4eYQ67OMYSRCR7fxD9KlbEMqzp5qqrsxRTnZng5kbOabsVVwoAA34A/wB8U8n5FP8Au/8AoxqGjfaTtIHz8twPvD1plrYliTbqtwf70Sn+VLp8IXxG745OGH4qc1Kyqt0su+PDQAffH96pLSNhqscgUlWQDcORwG/+tU3FYjhUPq+oBgG5Xr+NR3SgXk4AwPsnT/gVTR/LrV1/tpn8mxUd3/x9XJ/6dR/6FR1ApG2iMowu0mXbleDjbmlUy+UweUyBoiRuGSMMO/Wpf+Ww/wCvj/2WmL/ql/64v/6EKobRdeEDU7Xkvu3Od3P8IAFIbt4X2DO0Z5x74J/E55qUkDUYWPRIGb+VRQ73ibkqpGGYdTjt+ZJ/GpEN10BbexVIxHHsbagOcdO/rWKSQemRWtqagWUAX7sbkAemR/8AWrLPStFsaR2E7HNdnZumyCKY/wCtt0GD0PHSuNClyEXqxCj8a6zUVRWjjA4VAp/ClImZnzzgTm3WNViT5Dt7rkcn6ZB+tIsCtqc4ckEIj/LxnqDTZCEhEYOQB8p7jIwR/X8KmRt2ob/79uD+o/xqCTNPmmKMJIY12rnaME5Y96iNvHtYsu5tsnLHJ4PFT4+RfpH/AOhGkP3X+k386oaRbtkU3gXaNotlAGP9o09FC+IrUKAAITwPxpLX/j8H/XsP/QjT4sHXw39xFX8wxqeoDS2NVB9WljP/AKEP5Go7v/X3R/6dl/8AQjSXB8q+d3+UCbcNxA7+/sTU1x5NxGwhnhMhXb98cjOaAKY/16/9fH/stNT/AFa/9cX/AJinMrLOAylT5+eR/s0xP9Wv/XF/5imN7F6Y4mlPpbEfmcU6I4tzHySoz+dQXRIklwcZjAI9s1LdXK21krcGVuAPp60iSHVpkS1jtQQZN25sdhWSelBLMxZySx6k01jhTWiVjVKyLNht+32+48Bwfy5reMhnu85HLZOf8+1cwspRkdeoYGuit3UrHN03ZP19BUyM5bkckX+jFiNzMp246DHeiA5ltz6wEf8AjwpodpIipbKpkZHSm2md8OT0UgD2yKkRX/gX/tl/Omn7rfSb+dKfuL/2y/nQiNIdiKWJEo4+tMpFy1/4+lP/AE7D/wBCotm3aqrd2nb8lXaP60+J4LZP3k8XmbQCN47dhUOmgtewMCGwTkqQccH09zSEUdTt0l1CZ2yoDEEr7dKgSGALjyQT/eY5/TpV2+I+2zIT1duPx61WOY1dgNxVSenFWtiSAXU9thoykkIONuOAfp2P0q9A63Eatbgn5HTaTkhjyB/9estLqRSc7WU8MpUYIq7pREGqRbDmG4Uhc9j6fUGhrQSNG6UEyux27EXP03c1lzymaUufoB6CtedfMW8XOMxf1rClWWCUxyDDClE0i0mOqMncjGhpAVI706FVeCXOcgZGKspyIK3LB/Os0U9I8isQDNaOls++SNcfMM8/596T2MzU2hbdgo7H8Kitk2SKwGSQw/8AHhxUsX/Ho3O44PPWmw/62M9vm7/7VZgUZ5FtoA04OQEAQdSw6j8O9UvtM9wMyMqQk8IAQpPsB1P1qfVSJ9TlMmfJt1AIHc+n1Jqi91K5HKqqjCqqjAFWkSy00MBXHk7T/eVsfpVvR7dIdTiZSWB6E/Q/4VCfm2sRtLKD04q5pZ/4mEK56H+hpPYaK2tErNNInBMhQn05rMtt3nqVO3HLH27/AKV0tzptzJPN+5R45GJwXxkVW/sGdM+UirkYIYg8emaE1YGjFZrYudqShfXI/l/9erVmpjeM7gyrKjow75OCP5VaPhu4zx09NwqxFolzGAiooQMHyZMnINDaFYtLbzMsxEZIlTaDg+tLeWAu4sPA4kAAVwvIqdYrlFC/ZYmx33nn9adsuv8Anzg/77P+NSPUyV0NjbmN1bfuJDhTVRrKSx81ZzjcmVxmugK3YHy2cGf+uh/xqrdafd3Uit5UcYAwwVs5/OncaMSz026uY98UeVzjJrVttLltxnyyznqcHFXIre5hQJHZwBB2Mh/xqULdj/l0h/7+H/GhyDUrC2uRCUEbc+xxTfs00e1mQhVzk4Pds+lXNt3/AM+cP/fw/wCNMkhupF2/ZolyRyHPHP1pXFqc5ervkl+YKvnO7se3OAP51Uja2VxuSQj+8SP5f/Xrcm0W5l3IY1KM5ckSYOT/APWqEeG588/luFUmgsY1xv8APfzDls5z/KtjQSTcwu/ViVB9cA1MdBmc7pUVz6KQv4Zq3Z6fcxXkLvGiRof4W6DB/wAaG1YEj//Z\"\n  },\n  {\n    \"name\": \"ASCII art\",\n    \"prompt\": \"ASCII art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDkqcq7u4/E02poPut/nsaAEMYA6nO3P45xTXQocEg1NL95v90/+hUHD3IyMgdfzoArUUp60lABRRVi1srm8JFvEX29T0A/GgCvRVm60+6swDcQlFboeo/Sq1ABUtvtMoVkD7jjnPH5GoqmtyFDk44x/OgCzcQJHESIlBJxnDDH61SKMCAccnGc1NGuE+Zec56fSnDv/vH+YoArsu3qQfoabUsvRfXJ/nUVABU8H3W/z2NQU5XZc7TjNAErHIyTyY/605vuy9Krkk4yenFWbMefdLHISVbOQO+B/wDWoAq0VNHazSSmJUxIOqsQp/Wo3Ro3ZHGGU4I9DQA2vQLW1jtbeG3jKICBgE4LnHJ96420tIhbm8vCwtw20Kv3nPp7V0mla9bXsscU8flTKcRHkg+31oAv3Fsk8UsEm1xjDKDkj/CvPyMEiu11PXLXT7hoghkmcjzdvG0f41yV9bfZp9obejqHRsYyp6UAVqli/wBXL9P60Q28twzCJd20bjyAAPxpYtoDhzgdOOaAJDwufbP6ChcgcjGScfiRTLklLiWNT8quVA9un9KjMrkYLUAOm6L9T/OoqcWLdTmm0AFSIm5GPcVHU0J/dv8A57GgCMoyjJUgVY03/j+j+jf+gmiX51IUgknjkepp2mKV1KIHg8/yNAEm9obqR1DKwAYZgzz+J4+tIbyK6iYXoIk3bg8Uagn2PSq5urgPIfPky/DHcfmHoagoA17eFtYuFt4WMVpAowD1A9cdya2LHQ7ezuBOrvI6j5N2PlPrWd4V/wCPi4/3B/OukDBhlTkUAZt7o0N86yzSMs2MO64+eszUoPsUYtruR5rdhmF8AvGR1HXpiukZlQZY4FYPir7lt9W/pQBkS3apa/ZrTesbcyM3DOf8KjtTgSYCk44yAf51XqaCbyc/uo3J7tnj8jQAt7/x+z/9dG/nUSKWYAf/AKqtTKG1C4yAfnP/AKFTFUZJAx8v9D/hQBA67GxnPFNqWbO1ST2/oKioAKsW6u6SBFZj/sgnsar1JFL5efkVs+pP9DQBbMMwC/uJiAR0Q0+xt5xqUTtDIqjqShAHFVftX/TFPzb/ABo+1f8ATFPzb/GgB62M7ynfG0a55ZlI/wD1n2qWVLGF9jhyw645x9eetQfbHCkRokZIxuGc/qeKgRS7qi8sxwKAOm8PRRjzZoY3VGAXc3f6c1d0xWEdxuBGbhyM+mafBCbDTkhB3ug2g9Mkn8fWp4oxFEqD+EdfWgCprCs1rHtyQJkJx6Zqv4iSIwxSTI7IrEZXtmtV1DoUJOCMcVWuYGvNPkgztdl2/iD/APWoA5Vf7PZguJFz3bgfzpk1hMjkRo8i+qrnH1qs6lHZW6qcGpkunWMIyq4XpuzkfkaALM1vOL6dvIlKlzghCQeaj8iYf8sJumPuH0NRfav+mMf5t/jR9pH/ADxj/Nv8aAEuFZFRXR0Powx2FQVJLJ5hB2KuPTP9TUdABVi2tvtG7lht9Fz/AFqvVi28j5vPx7ZB/pQBP/Z3+2//AHwP8aT+zx3dx/wAf/FUf6F/sf8AfL/40f6F6p/3y/8AjQBXubd7aTa/IPKsOjClskL30CDq0ij9atrPaeUYXOYjzwpyp9Rkmqs0L2kqOj5B+aORT1/+vQB1dzLJ/wAJFDbEjyhGZMY/i55rQrk/D8jy60HkYuxViSxyTxXWUAFUrZ3Ouzwbv3flK+Md+BV0VyviGR4tZ3xOyMEXBU4IoAzLxSt5Op6iRh+tSW1oJUMsz+XEOASQCx9BmlghEoe6umbyg3zHu59P/r1NLd20pG9eFGFXyzhR6feoAZ9mt/75/wC/qUfZYP7x/wC/qUebZ/3B/wB+z/8AF0nm2n9wf9+z/wDFUAQ3MaRsojOcjn5gf5VBU1w0TMvkgAY5+XH9TUNABU0Atznz2kHpsANQ0+OJ5M7BnHXmgCxtsP79x/3yP8aNth/fuP8AvkVF9lm/ufqKPss39z9RQBMPsCndmd8fwkAA/jUNxcPcOC2Ao4VR0Ue1T/Z1/wCfaT/v6P8ACk+zr/z7P/39H+FAFnw3/wAhdf8Acb+VddXO+HrZftzy+U6bEOCXBBzx6V0Z6UAJWP4jsY5bM3QGJYsZwPvCtkUy4gW4t5IWJCyLtJHUUwOFtrlrdjwGRuHQ9GFTmezz8seB6GPP/s1LJaqkjL9mkOCRnzR/hTfs6/8APs//AH9H+FIBfPtP7g/79f8A2VJ51r/cH/fr/wCyqJ7aQsdkZVfQsDTfs039z9RQAXDxOy+UMADn5dv9TUNPkiePG8Yz05plABVuyUsHxIE6dVU5/M1Uq1aStGG2qDnHWTb/AFoAteW3/PdP+/af40eW3/PZP+/Sf4037U//ADzX/wACD/jS/a5P+eY/8CD/AI0AO8pv+eyf9+o/8aQxN/z2T/v3H/jTftcn/PMf+BB/xpDdP/zzH/gQf8aAOl0aFI7BHAUu+dzKoBPJ9KvGsiLXLWKzjHzGRUAKAjr9SanttYtrl40XIkkYDZkcfjQBoClrN1LVRYSiMQ+Y5AblwoxVeDxCjuRPD5S44KyBsn9KAItZskhkWWJ1j8wnKlFIz+NZvlt/z2T/AL9p/jVvUtX+1EJFENiEkMZsE/gDVL7VJ/zzX/wIP+NAD/Kb/nsn/ftP8aQxN/z2X/v2n+NJ9rk/uL/4EH/Gk+1Sf3F/8CD/AI0AVrxSpTLhuvRVH8jVarN3I0hXcAMekm/+pqtQAVcsWdQ+wZ6Z/eBap1as5RGHBdEzj7xb/wBloAuBp/7n/kwKN0//ADz/APJhaZ9pX/nvF/31LS/aV/5+Iv8AvqWgB2+f/nn/AOTAo3T/APPP/wAmBTftK/8APeL/AL6lo+0r/wA94v8AvqWgBxaf+5/5MCrGmiZ9QgG0D5snM2entVT7Sv8Az3i/76lqxYX0cN7G8k0WwHnmT096ALuveat6uxcqYx/y1C9z2rN3T/3P/JgVa1TUorm5Vopotirjq/8ATFUvtK/894v++paAJN0/9z/yYFG6f/nn/wCTApn2lf8AnvF/31LR9pX/AJ7xf99S0AP3T/8APP8A8mBSFp/+ef8A5MCm/al/57xf99S0n2kf894v++paAK16zkpvGODj94GqrVm8kEhTDq+M/dLH/wBCqtQB/9k=\"\n  },\n  {\n    \"name\": \"assemblage art\",\n    \"prompt\": \"assemblage art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"astropunk style\",\n    \"prompt\": \"astropunk style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"atompunk style\",\n    \"prompt\": \"atompunk style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"azulejo texture\",\n    \"prompt\": \"azulejo texture {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"baroque style\",\n    \"prompt\": \"baroque style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"bas-relief art\",\n    \"prompt\": \"bas-relief art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"bauhaus drawing\",\n    \"prompt\": \"bauhaus drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"bauhaus style\",\n    \"prompt\": \"bauhaus style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"bestiary\",\n    \"prompt\": \"bestiary {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"biopunk style\",\n    \"prompt\": \"biopunk style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDAWpVNRClJpklpJFHVgPrWnYMrodpB57VhIhkPB6Vt6Uix2zBj827IovY0VGUldF1l/dtWZHH5s6rnHatOWTZGwHU8VmxMI7pmJxgnFMwR09gAsQUdBxVuqOmNvt1Oc571eqS0LRSUtBRXk/rWDqLAzhD0yM1uydK5jU5gLth6UyClqO6SX5VJGSSQKzyMHBrdjbdFu6KxrLnVTKMenNAxkS96SdsCp9uxKpzNuf2FAx60HpSJx9P5U40ALFL5eeM5rVtjhIzjBYZNZUcBdc5xWtGApjU9lAqJHfh+ZLXYsSMWKD3qo8bPdFVBJY1ciXfMuem6op/3d8NvsauLujirRUZtI3dKiaK2VX6g9qvkgDJOB71Ws+UH1qjrN2I5I4myE+8femldkGuGBGQQR7Up6GsmwuUWdI0dmEgyQR0rW7USVmTCfOrlaXpXJakrG9lbaQN3BxXWy/drG1J1eMgA5zjNIZlGQx2AHfmq9nAZWJA4UZNSXYLEIinAGTitC1iFrYl2+8w5FTJ2LirmZeMI0469BWaanupTJKfReKgNUI172xMeZo1yh++o7e9UXG0eo7H1rqsowB454IrJ1PTxb/vE/wBQ56/3D/hXPTqa8rOqrTW6M6GZQAuPxrWwCVx+dYRUo5U9a1dPm8yLaT8y1rJdS6FVt8ki5G5W4C+oBFMt386+LMMg5FNnO0Bx1U0zTXK3IGeG61UVoctZ3mzp7E5THoaq65awyW5neQRyIPlP949hU1sdsUuGC4Unce3FYFu5u0ZrlxtDDOTyaZn0L/h1VmUyyP8AvEOApPb1rf7Vzk5igsi9vIoKkfKD2zW1pzSPYRtKQXIOcfWhgnfVCTEBDXMzyqWOTyTmujuziFh6iuRuWHmnr7UAXbGEXMmM/Ln5voKbrNz5aeWh9h9am0mRY7O4k7jisO9nM9wzE8ZrPeXoa7R9SsabTu9JitCDpo5wyAg/jVtJEkh8qT5lc7SDXM2l2YiFblc/lW/ZBJkYlhtJG01yypdjrVZOOpi6hbG2lKHkD7p9qhtpjDMrDp0PuK3PEMYFurjuQPcVzoreF+XU5m0pXibzrvgOPrUNm/lygjBPoadpk3nQlG+8gx9RUKqVnO0ZweKtGcnd3Z064NncEYAMZ5P0rjzCwKMSdrEgfga6G8nMdrFEM/MNzD19BWRKxkjhHAijG1cdz3P1zSGiBrdjKwRsgKWPPbFdboQI0tSccsx4Oawrdo47tlkIKSxmPPpnjNbOjuVsjDgjZ1B9ec/rQMlvGBTA/GuUuYZPMZscE8c8101z/qWxWNOu9ximQZxlaCzdQfvtVA1Zu5RJKdv3V4FV8cUFiUhqdYGZQQOMgUXUJhZQe4pAQVZtrpoTjJK5yRmq1TxQ7492D1oYI1tYvobu1h8onG7oe3FZDLxT/K+8CelDKUG1uOKFoDFtJmgnV17dR6itfTGRrvdnqazYEAAyM8Vq2kI8lZVGGDc+4pkskY/a3vZlOTFEdnPA6j88Z/Oq0EIutLxEsm9T1HK5rRsoFs7edpVB3EgHs4PT+dVNIEiLMgkKOvQAcHHrQxK9jIVnYMxzlRXRaXcb5y/QXEW4j0Ydf5E/jXP3CkXMqj/noRx9a37W0ePVIkUMEghAkOMDdg/40imWrjmJgPSsS6mCCSNc7j8pPpW1OQEYnoBXPTK00x24+Y8ZpiM1x8+BUxtgln5rE7iRgD096dJCYp8NjIPb6VJJ/wAg/Hof60ikPkkAtwEG1QQcCq97JvaNsdKczZt+naoJzlVosFyEgAnFWY3MKhlYgmq2OamkOVHtQBOoDRu3HJpLoYbBOcACo4z8q/WnSc5NADEZum41q6bclG8qQna3QnsazI8YI25Pr6Vt2EMbKN6A4pksv3wk+wkx/wAKnp+X9TWctwtpf4k+QNGuTnJJI6mteYZs5Ag5Cnb9a5i7ZZ7lQANqBV4PWgETWMYu9aQfeQyFz7gc12J5BrkNLzL4gVoxtG9mwOy811pOKQzG1OXanlrjc3v2rJiYm6TIHWtm+RWBJUE+uKx2wrqqjBJ59aYiC/cfajtIIyP5VA7k27L/AJ60twAHxUbH5GFAwBJjxkdKic5jFOB4ph5SgYgBJ6U/k8HtUgt1/wCe0X6/4VILdf8AnvF+bf4UrlcrIV4C0rNkfjVlbdO80X5n/Cni0iPWaL8z/hRcORlROT1xW7YsRCn79Tn+HHNZ4soiwxcIB9T/AIVbt7GISKRdLkUXE4G2nzRlfUYrnNQgFvdRsN22RQfm65rpYIlVAPMzWV4ijAjgYc7Tz+NBOw3w75Zu7qTI3dFHfGef6VuSyBEJJrG8NxAQTy8bi+3PsB/9etC8haVeJNtAmZuo3KMm3zDnOcA1kvcrHGRHks3Vj29qv3GnPknzv0rOk091J+b9KY0UyQTSdjipjbMOp/Q0wxlfU/hQMYDimk8YpxX/ADimkf5xQA4Y9KeNvpUYNKKAJwV9BTgy/wB0VACKcGFIC2kij+GrMVyqnO2s8MKmicZFAG5DfcDaDn2FU9XumltkDNwXGcip7REaPLDNZd++5QmPutTJNjQnX7GQrcbzyB1rRfp/rDWPorgWpUgda0XYDsKQFO7OM4es2V89TVm9cbugrOdwSaYDXYVGzZoY0wmgYE/Smk/SkJppNAz/2Q==\"\n  },\n  {\n    \"name\": \"black ink art\",\n    \"prompt\": \"black ink art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"blacklight palette\",\n    \"prompt\": \"blacklight palette {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"blueprint drawing\",\n    \"prompt\": \"blueprint drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"bronze sculpture\",\n    \"prompt\": \"bronze sculpture {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDP0UhXJYcEkVqbfKfy2/1bHKH0NZ2jDJP1P9K1ioZfKfofums3uaLYxtSAW4GeCRzVNGKyAjrmp9YZ0uIg/UDGfWqu7LEU1sI1533MoWQFGG4gdjV7R3wk0fbO4VlWnNnIrJzncp/pWhYq6Tgqu0Ed6voZbTuad26MVUg8D0qD92VxhvypL66Fs6hoy2R1FRQahFI+1o9vU/Nxn6GpTZpaJahkjjR12t81RgoDnDGoZ9RgQ/u13ZGQO9Q/2qv/ADxNK7HaJbQxxuG2twavBY5QZdp3Y4zWL/aik48k81swMnlDepzjtTu7isuhlTt5UbE/wgmsQTMsMg7ynk+1bd8EnMiLkDpXPy8OV9OKEA0cmrtunSq0a5NX4Fxikxobo5I5Azycj8q2CA6ZHQ1k6MOfxP8AStRsody8g9R60nuNbGHrhLTxA9RVLG2dh6Cr+sYe4iYcirGnabHeXEzSOy4wOKpbEspJIyjapOCa6qARywxOv93B56GsC6sVgmcRMSoODntU2kSMs7Rux6+tDTEmmaeox75UGM8VhXkix+dHubghlyANrexrb1EsWQoT07Vk3tiZ083DmQEAe9PoHUpWSG6uUO4ABstWz9lGRxVaPRGDZYEkjOYm+ZPrUsaSoFQuzFTgmhCkK1uA/TvWsWLBEWPJx1zWM6yeb/FjNaysMr8+35aGESjMu2Z8jHNVWtrcnlFyc96k1V8AIpyz9651shzhjwfWlYu9jUjjxVqJelRwr+6X6VJJIIIS+M47UhkOjjJ6kHJ/pWvuzw3B/nWTovU/j/StdlDDik9wRg6ufLukGOOtPs9XazZ8RB9+O+MUzVwTdR5qhMMXTgVSJZrpe/ankfG0sclaWCL/AEncpOKyo2ZGDLwRW3prliWK43Cqb0M1FqV0axuLaJVEzqpxxmorcWcssjyXCuc7tu/CqPQDvVDWow0Wc4KrmsNY2blWx61Jobl5rZ8wQ2eI4wew60thexx3UzXT4WRQwJ6E1z5iZnCrnOc59Kux/vI1MvVG2scUrDudD/aWn/8APRfypJXRwZY2ULt71gFYc8E/lW1EF8hQ3UrgYqrWJTuY7XBublnPRRgVmyA7z9atzxm1lkTnk8VScHceaYG9bjMK/So74gWrjPIxmonnNrpyuoy2ABmqVvI0lvcs5JY4OT9alIq5oaN9ccn+lbGSPvD8RWPo5x2z1/pWuCOxwfQ1L3GtjF1jm6ixVCcf6a/0rQ1gf6TF0qlMP9Ok+n9KpEscsQeVc8AlQcVsWXM7xdRGODWdGuWH1WrliFS5uCxPHegCfV/+PXaMcrzn0qnp9g044OOM1DqV20+QnzRggMw6ewq7oVw7TLGoz60DIvshtJp0lHzEDB9qZbQiWS4QMAWTcBjqRVzxBKvnLtPzJ1xVdIfLWG8jbKZGeOx4NHQXW5SONy1ugApGQeAKzFsxsLs5G0kHj0NWmlU+UVyRim0KNr6mZdKzXziQ/j7VQfG9setXtTmMl2qgjAGDiqJ6mmgNC950uP8ACqlpxb3GfQfzq3eYOmJj2qnB/wAe0/0H86S2GzS0fHc46/0rY6jrmsfR+nTPX+la2P8AZFQ9ylsZGrjFxDVOb/j+k+n9KuavxcQ8VUm/4/n+n9KpEssxffH1WpZJHh89oxliwHtUcX3/AMUq/ZgNPcBgCD2NAFTU4fJ02JQMAFS3HU45NTaIVtbZ53+8elN1olkRAeDjNV55NlqsYOARzQwRBe3Jmkdic5NSQXTxWKLKB5f90/xc/wAqz3O7gVdNr+9EZUjjpnihaIN2RrdyfOobajEnArWiH+jREDnFZjWJEihe5/Kti0dRaDOcrwMetO90Jqz1MG5BF62euagb7xq1d5fUW55J61VcYdh70xGhc/8AILT8Kpwf6ib/AHR/Orlxzpa/hVKD/VTf7lJFM6GKFI3zGqxjHRDmp+vdqRpYYv8AWSIvsDk/pVeTUol/1aM/ueKmzY7oo6t/r4ev41VnH+nP9P6VJf3LTyoxVVweMVDMzPdFmPJFUkS2WhIiHJP901ct5kE0r78K3tWTjgfhWlbWsk8XyL0PU07BcZfMJV8wHpgVTmDP2OFFaVzp9wtqAkRdtwJC9arTzQmF02So44cFOh+tSxxM5ELzqvfNaJEmPN54GDmqdqVa9jwc/vADngV0y2bBCrKCDVJXE3YxH82TJQYO3PFPhLNahRkEt1rW+wERsAMMeM0kVg0cKpgZBz1p2E9dzmrjIuiD1BqFvvGreoLs1KQe9VG+8aQGhMrDS1JBwcVUter9Pu96tyzM+lrGcYXpVK3JDnBwcUhl4CilApTgdevpTEVLj760rqzXQVR8xGKsvp91cBWSPA9+K2LC08qH98i785zQBTstKPJul9MYNbSYRQFAAFNApwFMQ8Ma5rVQYtRuB2kAaukxWF4hUCeNx1MZz+dJ7FR3MRTiRx612tpIZbSGQnlkBP5Vh6jp6ppFtOgw8Sjf7g//AFzWho1yk1ikecSRDaVPp60LQHqaNIc9jSEH1ppX3pkmBrdksUouA5LO3IrJfZno1dfPaRXAAlG4DpWbJoKM5IlKg9BigZldbKq8H3/wrVvdN+yWpZX3Doc1lQf6wUhmnEjytsiUk1p2tgkWGk+d/wBBViGNIk2ooUfzqUUCAClxRmlyKYBilxSb1/vD86r3m2e1eNJgj4+Uhsc0gJpJ4onCPIqsRkAnFYesXEMo2rmRieSBwPaqKXt1G2RM+Rxyc083crD53LE9zSZS0NC+v0fRI4v+WsqKCuOgHf8ASpdDsdka3bFt7AhR2ArFkupGABc4HQUxbicHakzrnjAYii4rHac0VXsxFb2qReejso+YlwcnvVhSJEDIQynuKoQmKaRTjSE0CKOqxPJZOqKWb0Fc6lrPGwZ4nVR1JFdcaq3/APx5S/SgZ//Z\"\n  },\n  {\n    \"name\": \"brush pen art\",\n    \"prompt\": \"brush pen art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDbbVYY9XOnzYRigaNieGJ7fWlvdQWwht5Z/wDVyMFdvTI61zHicf8AFSRZHBCfzra8Q2z3WjRogJ24YkdhjrQBpXs0kNu8kTDiNiOM89jVCx1WW803zAVFxGCsi4/iH+NU/DV/JcW72F0NxgGFJ7qe1J/Z0lhqlz5ZIilgYj3I6UALpet3T2V1c3Th1hcDAUDgn2rpAQQCDkHkGuJ04BvDuqDPO4Ej8RXUpdrCscO0YXC/e5/KgC9RRRQAUUUUAFVpJ2+0Mi/dRcn3NWGO1ST2rNiILuT6Fm9zkUAZa6zfE3++RVERxHhRkfOBn8qmGq3V1MZYXMdop2ghQWlb0X1rF3hv7XL84kUYHp5lbQaVZ1trREa9C4AHMdoh/m386AJ5Ly+DCzgZZL6T5m6FLdfc9zWtGGjjRJZfMfpuIA3H6VmwxQaMCq7555QD6vK2Tk+w/lVS1uvP8RRLLMsswRiQv3Y+Oi/1PegA1q1jn1BzI20iNSnYkj0rTDsq2IZsbiATnGfl6UXctjczmwuGHm7QwB4P1BrK1sTPYi1bP7l12zLx24z6GgC3c6fHZNd3dv8AIZIWG0dmHIIqKy1MapprLJhbqIFZB+HUexpNG1OS9t3t75QZIjtZ+zjHemtpAsNRmnjP7mWFgPY8cUAYmm8aXqpPTAyPxqa2ZX8T3TKOChK+3TFGjwNPpWpxIMu+MD1psDY8TXJ+7kMMflxQB2qHcit6jNOpkTb41YdxT6ACkc7UZvQZpahus/ZZAOpGBQBlx6lLLfS2rAYji8wn16cVPbnMjkjjy8/iazIWH/CRXo7LbY/QVftzkEA/8sV/AUAYN5Zrb22oSrcK7zNuKKPufvB3roYvs+lWxt7RQ8g+aR3bgH+87f061zKXMscmomLanlsQXxk4L9veriwTX0Yaf/RbENwmOZD9OrMaAHPLcX9w6WTtIzjbLcONoC98ei+3tV/QrKC3k3WsfnDnzLt+Nx9E9R70htraztd1632ezzkQE5aQ/wC1jr/uj8aLDW3vtXjt4oxDbBWwpHzNgcfT6UAR65Y2t9qAQT+VdqgK84JHb/IqrBqV1pjeRqsPmwscGUDOR7+tXdaisbm/8mdlWYICDnB/CqhS9tU2OBfW/wDdb74Hse9AFs2sAtbifT8TQXCYIU5Kn+v86hsdTlNrJBcEP5HKSH+IehqrbII5TPo83lyDl7eTjP4VNI0OoRSxIotL50IeOThZD6g0AU9An+zWuoXQXJjKnHqM8iq0spHiK4kQgh3JH0JFWdEJtFuobu3JjdgsqkfMo7EVUvYlt9abY25Ny7T/AHgcc0AdtaS/O0RI45HqatVjNJs1D5WIkEZYDHbNbCncoI7jNAC1XvnEcAZugcZqxWJeP5s07ZO0EY/SgCjb/wDIyaiP+mB/ktaFsfnIHH7haz7YH/hJdSODgQkdPZauWp5IzyYFxn8KAMeS3t4o7945zI8jAsu3AX5wce9XrnWIrdz9lxd3QGDMRiOP2Uf5+tVdIi+06jfeY4WOIsD2yCT1NS3mo6Xbp5VnbJcFeM9EH49/woAwrq8nuZy8jtLKeNzfyA7VpeF4ZP7ajkc9FYYPXpWYZACxRVG45OBx/n61p+GSW12IsSTsb8OKAE8Xbf7awxx+6Xtkd6z7fUrq1IEcxZf7rcir/i8Z1v8A7ZL/AFrJRQYxz3oA1v7UtrnH2uAxuOkidvxHIqtqV5KXVFmWeIDKuQM5+tS2MK/Z7xjyfsrnn6iq2sxhL0Kqgfu1PFAGppOpGWLGosRHnbHcEZAP91j6U3UrNoUjfOR5meORgnqKg0qzL2JljlMTlipzyrDjgjpT/ONszWs26KPeNyDLIcEH5T1U/pQBrTtt1pB0zbt/Ot23bdbqfauaVle7icOW+QxqT1weRmt7TmzaKp64zQBKknl2ayHnC5+tc0L0tJqKMv8AqVGCvVuR/hU15rTxalb6eFRojsDnuCaqWsbLe6oDwXwq+pOe1AFyxlJEc8zRB5o2Ziz/ADck8Yz6Y5qvBFcaijIHEMKgLJsblvqf6CopLeIGMbo1KjDAHcfz6frUcaG3tZNt+kayHe2zqvOPr+lAFq50+yjRLcsE3uufmxu59O9QeINFWwt/NhYmLIGD1BqvYC2/tO32yvM7OPmK/wBTzXQeKcto0voCp/WgDnbXTka1jmkZ23LnaBgD8a1NCEKarGkYhU7W4Byx49ea5q7Zh5S7jt8tTjPHStDwn/yHov8Acb+VAF/xRDG2rq00pRWjUAIu5j17ZFU7e009wF8y7JJ4xGvP610upaVaXt75s9wUk2Bdu4DioG8NWhQ4upwpGDtcc0AULWLT2WeKG5mzJG0ZLRZC575H0qnrlo5uEnjy6sgUAe3etea0tNOtzuv5ViQcoFU5/IVH5Ub7WkYvG5LpHGMEA9MnrQBX0bZDZKkssKsJCxHmrwOPeoL23Z9TuGTcCz7gygHjH1oRVtb1bRJZETO4L8ueeeeKdcTQsztucsTgMGA/WgCWJZHlBl2KueGZcHknORWvY3UcKiN2BPTiudthJcOUtIi8gbh92Qo9zW7ZaX5CNO+ZpQCQoPf0FAHJavcb9WndF27ZOCeuRxW+Viu0jmeQxl0UsoGMHvXNXspmvXeYbWZyXAGMe1dNpkK39oYZuLm3A5U/fT+FqAIPscXmxYmYhMfTGD/9as5LV/sMwZSvyL1/3if5Vp3OnXcXEUjN3IxzTNPsLs3QNwqmMqQQXHH4UAZEMiW8i3MLHMZwBjv610N9ejUfCzS5y+Ar/wC8CKxzpsiabcTnaSs4jAX8s/qK14bJovDGTyZVDkHtnpQBzV2iGQfMcJGF47kdP51e8J/8h6L/AHG/lWekLyQMYlL7nVOOSTgnH6VseFLaU6usojwkSkOf94HFAF/xFPcJqaRW1wsZKAlST/ICkhKQ2269m81x8zkMQqj04ql4tuJYtZAjbH7pew96yVu7+Q4V5G9gtAHVQNbzATRrGIsGRsp83Hfn2qs2rx28CyT7fMbJwoxkdh+XFZlvp+tXp2ZlRGGCXJUEe9dJYaDDbuJrgLNPxkgcD6UAYI0zUNRIuIYYyki53Oe56/rWhZ+HRErS6nKuxedqcKPrXQzzQ2lu0sxCRqOay4PN1aXzrgGO1Q/JGe59/egC1ZxJIuII1hth0ULgt9R2FVvEWrDTLMxxN/pMowgH8I/vVqq4AxjH0rM1XQLXVHMrM8c2Mb1OR+IoA8/Jycmti21o2sNmRBmWAECQPgsuT8p9qbc+H7iDVYrBZI3eVdyvyBjn/Cm6lot1YTQW5HnSOCV8oE5oA7HR9QXWLAzSQquHKlc5/wA9aln02OVcKcezDcP15/WsLw00+mwyR3sEsMckg2sykc4/+tXTptYB1bcp5BByDQBz15pdzDC6wwbgxDFoXznH+yf/AK9Ni1OUw/ZZxC3y7PLkBicDGOM101RzQRXCFJo0kU9mUGgDm7eS3srNY5LeVJBOHyVyOBgHI7YrS0W3jhLvFPDKsirnYeQQAP6VI2jQoP8ARZZbf/ZVty/98nIplrYTQ38csq28gGR5iqUccenOaALc9jDPP5roGbGM5xSeRawdVGakuJSvyg7c9z0FV/JVyD5hOPQf/WoAmSZdpMKZ/wCBACo5rr7PE0srKiKMn5gabNm3hL+aVUfePIwPrWA8txrN+scbnyFOV8w8Af3j/n29cAFhDca9fAsGS0i5x3//AFn9K6BEVI1RQURRgKOP5GorW1FtAsUJG0dSCOT3PSpZTFbwPK6jailjhR2oAU+WOST+LUKy44YH8c1y8vjCLd+608EA/wAbY/pTU8YuTzaxoM9smgDcuoVk1uwk/ijWRvwxj+tWry1W6iUHKuh3I4HKt6iuXg1+0GpfbbhpsqhVY48kc9c5P04FWn8YWxOIrWRs93bH8s0Abe6DUbZ4mYnBKOF6qw/zmsCG+udDu3guVMkIOXUeh/jX29R61f0S5jeOZ0jcSSSGRtinv74qXVrFr+2DLH5c0fMcjt+YPsaANGC4iuIllgYSIwyGUcVJ83oB9TXDWOoT6RMzx5NsX2zQg52H2/oa6u3vIryFZoWQo3TcS7f98igC8rAk4YHHpS1AglJyNx/3vlH5Dn86nGcc4J9qAK9yR5n3nHH8JH+NRFlVCzFgB/fcH+hq08e85wv/AAIZrN1ayubmNIoQm1jghRj8T7fz6UAYV/fy6nKltDkpnog5c9vw/wD1+ldHplnHZW3lxNG8hwXPv/hUWjaQtgrSyDMzcZPO0f4n/wCt2rVoAjZnXhIt3vkAUgMx/gRf+BE/0qWigClLpsNwxaeKBye/lA/qaiXQtPHW2jP/AABf8K0qKAMxdLtiSFsYtuSPnOO/oBViKwjhwYY4YSO8cQB/OrQGKWgCLyM/fllb/gWP5YqP7L82cRj3Klj+ZqzRQBjaxo5uVNzb/NcKuGVsYlX+6cfpXL2l5No12Li13NbucMjfqp9CK9BrntZ0Z3uTc2sXmxz4W4hBAJ9GHuP896ANSx1BdQtxPbKpU8EF+QfQjFWkMpPzqij2Yn+lcfY6dq+j6gJLeNpLdiAxAyGX3HXNdkCSBkYPcUAf/9k=\"\n  },\n  {\n    \"name\": \"caricature style\",\n    \"prompt\": \"caricature style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"cartoon drawing\",\n    \"prompt\": \"cartoon drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"cartoon style\",\n    \"prompt\": \"cartoon style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"carving technique\",\n    \"prompt\": \"carving technique {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"cast paper art\",\n    \"prompt\": \"cast paper art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDIQLKvHX0pAskD74z/APXqurFSCDg1dhnSUbZMK3r2NAGhY3iTrtbhh1B7f4ilms/LJeIZQnJHpWfLbsj70JVgc8VoafqG8iKbCydPZv8A69AFWcfIfUcg1o6IwWyYuwBMnUnGTgVDfWv7tpIhle49KSzt5LnTPLjKg+bklhnA20Aabs0dyWb/AFT/ACn2NSqCPk7ryvuKr2R823MU7b3HD+/vU6Fh8jffTlfcUhF625jJ7E1NUNtgx5HQnNTUDEZlRcsQB0yaRgp+8B6dKrajaPeW4jSUxkNk4705pjFCPNSTCYy+M59+OaAMO6iAfKcfN61kzqzysqgsS3YVry39tvJMp6+hqhbXzWs0skIVs92z60wKrHy9Nf1llx+C8/zIqmOoq3fnAhi/uqWP1Y5/liqyLkFuwoAb1qRY1dRsfD91bv8AQ/0NRUZoAuQ3bwnyp1JUcYPVatvbx3EfmQsGHqO31rNWbICyrvUdM9R9DUsLSQP5ls5OOo749x3FAGnaX7wN5N5kr0En+NaFkPLSXYBjzCQPUYHSsyG4t75AjgJJ6dj9KliebTnwQXg7juv0pATFZYpftEX8PDL61pKwuIkliPI5H+FV45kf94hDxt19qdHGbRt6HdE33gO3vQBcjl2p8pwCc4qeGUuSCc1VcLsDL3NOgPJ5piL1Rz8wsKeThSahkl3IRikM5q5niDsrliQe7Vm4CoxU5DPxRfnN5IfeoUbHB6UwC5fzbl2HQnA+nQUjDBCDovX61o6ba2UjeZJNISBypQDn86dLHZJaSmEuX3HG4e9TzalW0MeijGatafard3scDsVDZ5HXpmq2EVh1oBZTkEgitKXR5kv3t4GEjIm/njIqvNazwj99A6D1I4/OkmmDREW8xd7qc/3wO/vV+z1J41Ec6+bHj/gQrOVjG2UbH9asww+ehdV2lSASvTn27fhTA1I02j7RYuGB+8nrV60uVdSO38Snqtc/CZoJNyPt44Ycg1p29zHO43YhuB0P8L0hGnINihV5TqKfbnrmqxclQG+UjqKltz15zTEzSkOYSRVKQnB5xjrVpj/o5rPuG2xSn/Z/pQBy10Q1w5HektIxJdRIwyrSAH6Zq/LEjAj5QT3xVvTDbeWXMQLNLtRsdMAVLlZFpamIkhjdwvA6frTQ5wR60x/9a/1P86UDimIAjB2Ug5Xr7Vo6VE8Wo20jbQr7sYYHt+lVY9wuJhkDjnPerlqFS/tySMEN/KieiKS1NZGB8RTEHI+zj+dRay5NlOvTGMHPvUSyFdZkK8fuV6fWmavNuhlXjGB/MVz21RfRkJtoZDJuQdeMcUllCSHijOC7nBPbb/8ArqQHqf8AaNJpp/0gf77/ANK2RmyJ7SQHpnBIJFJDC4uIxgnkdulaXmbdxClvnbgVNDqTRfKItoHoMVZNxHBUBT9eakg4zUn9owz5WZB7H0qJcK52tuU9DQIvF/3RHasnVZHSEqhUBiM5HNaBfKfjVO7RJhtkOAerelAGDI8kin5tw9Qpq3DIyrbKMIAw4Hemq00ReKF8R7SxAJHt2qWNAWt275AqGa37GM/+tf8A3j/OngfJTG/1r/U1KB+7qzMW2kYzuzclhznvU8QCXkJ5PB4P0qtEH85gGwwHJzVm2DG9i8xwevfPapZaLsc4XU5ZGGf3QHH1qPUWDW0mCOw/Wh9ralKMjHlDp61Bdhvs7nkjufyrNJXRXQuKCUOB/GaZp+VnBPTe/wDSm5Izj+8f50um/PPgYyGfj8q0Rmy4hyGx/fao9QkZLKTaQNwCnJ7e1Ro5UyckYZqqXTmW5OSSoxgZ9qpCNlWZoIpHxuKg5U5BpUIxwR1rNt55VtpIVLEErt/2ee351JY2st3cXKCRlMfTP1piNIsdoAxgtjPvTZUYZ3FRgdz0rA33BuxCrHghf161Pq0Ztrox7iSIwT7mgCY4X7QeRlR1NJAeLcd9wqlGnmWBkeQ8HG3H9aTT5cXUIc5+YYPpUNblplRv9a/+8f51KP8AVfhUTf61/qalH+q/CqJI1kIkZjzmnxN++Xb71BViyXfPj2NAx7z+Tcu23fkYGeKjkupHjKcBSc4pb5ds+Paq9KwXNq3jZ7dGPUjJJ71HpSyf2hKI9u7nrV+DyksomdgBsHX6VFoMLSX88oU+Xk4OKBFi0sxKsrSEnEjA46VnOqsRtHOSxP16D8q6T7MsNvKp8xxIxJCDkZrDuIVivJY0ztVtoz7VSEyzp4jBh7NvKN7g9P1FbMNssckjjq/WsfS40kvQkgyMZHPcc10GBSYIzV0+D7csgix5YwM8544pmrWaTKWEYMhAGfatTaM5pjqD1pAcxcxG3t4Yxx8gDY4yf61QHEqEf3h/OtrXkCLGwPXisQH96n+8P50FIqN/rX+pqUf6r8Kib/WP9TUo/wBV+FMRXqzp/wDx8f8AATVaprVXeXEfUigCa/UvdHb0A6023064uGxGnH948CtS005AQ0vzH0PStaIBQAowKWwXIbPS441QznzWUAYPQVqIAoAAAHoKhU1MtAFPWG2WisJTGwPyherH0rGjB25Y5Pc10rwxS48yNXx03DOKx9XgENyrRDYjW8vC8DcBkGmmJoZp77NQhPqcfmK6KqWn20cdlb70VpAiksRkk4q5mhsEBpjGnE1E55pDM/Vrb7Vb4DEMhyMVzKxOlwgYnhh1+tdfJzkVl3luvLgcjmgEc23+sb6mpR/qvwqHPzGpgf3X4UwGQ27Sn0FbFpbpDyoGfWq0WAOKtxtQIuoasIapI9TrJSAuKalVqoPcpDGXkOAKzL3VWl+WAsiY5Pc0WGdGbiJDtaRFPoWrG1u8tpnijEyMAkmSrdCVwBxWGzknOTn1oihMkoAGST3NOwHXaXOZbKP92yKFAUucluOT9Ku5wKp274RV4+UAcVMX4pASZ4qJ25NBeoWfk0ANduTUEoV0KnuMcUrv81Qu9AjnLu0ktpCDyvZqjRvlIrduAsqlWHFYs8PlOQKYz//Z\"\n  },\n  {\n    \"name\": \"catholic icon\",\n    \"prompt\": \"catholic icon {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"ceramic figurine\",\n    \"prompt\": \"ceramic figurine {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDn7df3lWJlw6/WmQL+8p93xg0hmtaMojFTNIuKxrWZjgVoBcrmsnHUu+g8ctTJUqSNTUU74OK2RmxV6UwHEooU8UzPz0yEdBZPlBU1w3yGqFi/AFWrlv3RoKMW6bLtVWOIu+aklYmQirNugVcmkxohkzElZk8jO3tWleSA8Csx8E1JQ63HNTSj5TUcHWp5B8p+lICvCPnpbscCiL79OuRnFUIjtgQQa0UmAXFVYI/lpXQ9qlPUroaMMgYVXusZzUEbMtJKzPVohkiN8tN3fPTVDAUwg7qohGtZScirs7ZiNZVo+CKuzSfuzUlGc2BKTTpbgJHxVWWbDmonlDL1oZSIZbgliTTYzuNQyjJqW2HFICzCOanfofpUMXWpm6GpGQR/fp8wyRTI/v1PjLiqET20fy09oqliAC0kjDFZLct7FfZg00sqnmpeuao3fU4rVEMmadPUVE0qluKzsMW4pQWBxTEb+nz2q5Eybu5bdjH4d6ku2RJCsbblIyKyrfLrtKZJ9qBKwwrfw8c1CvcroMuUOSapF2BxWnJ86cdazZFKtyKskcRlc1Jb9KQD5Kdb96kosRfeqduhqGP71TN0pAV0+/Ukj7CDUa/fNOn6CqEWoZ8rSNIS1Q24+WnEHfxUpalN6FgH5apTfMTV5FJXmmG2y2atEtmcFANSW8aNcAuuUUZI9av/AGVfSkeHy4nIHUYzSegIu2zWiTkcAAAn/wCtTNbS2mjZoUHmxqGLDuPSs6IMe65HcmrVsrSPKh53JgYrPqUVIGGzmqd7t3cVdmhKpxWc0bMea2IHL/q6fbjrSbCEp1uOtQUTR/eqY9KhX71SnpQBEqneakePdUwQCpFjJqiSGKPFTpF61KkYFPAoEIqgCnYFFGKYBilvkWPyrc/ePzNTWbYN2GODxtPNRSbzdRyStuds5NRIpFy2lhiOCik+4p80sSXUE6gDJ2Nj9KgvrIfLLE23PUVWkCv5cXJGcnmo3ZRNfQATuq4wTkYqg9tjoKvLjaAEC44OBjNBANarYhmU6Y4NNChavywhhVKWNkoAamd1THpVdZAKGmpNDuayQY61LtxTutOxTER4NLin4zS7aAI8UuKftpdtAEeKhuRhUb+61WgtQ3g22rn6fzpMC7Kd1kD7VlW/zzMf7oqxFd7rTyyOcVDY/wCsdfWs1uW9ifFJtqYrS7a1IK5Wo3hDDkVb2UbKAMmaxzyBVKSF4+oro9gqKa2WQdKAHgUYJpOd3Ting+1IAAxQT2o5xwKVQQORQAAY70tL+FIxwM4oAAKr3/8Ax6N9R/OrOPaoLuJ5YdqAZyDyaBlIDbGDRaPtuVz34psl1GkZjdHDIdpqxa2gkVZXJweQBUWKL2KQU7HtSEc8VZAYpvIPWn0hGR2oGNI96TpTgOO1GPpQBEM+v6UvOfvfpUe47tvenA0ASD/epf8AgVR5pGkCjk0AS85+9QRnGW6VUafA+WoXmkPc0AaJbH8YFMMijrMorMJY9c1G0Rcc0AT3MavBLIDuzJwRWhbY8hAG4xWfb2zMm3LbPTFX4oRGuApqRk//AAKgjg4Y5poH+yadz6GmIQcgHJ5pce9IARnil59KAEIPY0n40vPpTeR2oA//2Q==\"\n  },\n  {\n    \"name\": \"charcoal art\",\n    \"prompt\": \"charcoal art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"chiaroscuro style\",\n    \"prompt\": \"chiaroscuro style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"child s drawing\",\n    \"prompt\": \"child s drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"cibulak porcelain technique\",\n    \"prompt\": \"cibulak porcelain technique {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"classicism style\",\n    \"prompt\": \"classicism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"claymation\",\n    \"prompt\": \"claymation {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"clockpunk style\",\n    \"prompt\": \"clockpunk style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"cloisonne technique\",\n    \"prompt\": \"cloisonne technique {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"cmyk palette\",\n    \"prompt\": \"cmyk palette {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"cold color palette\",\n    \"prompt\": \"cold color palette {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDl+9FLjPSnuoEUZA5IOfzoAjFGOtLg7c449aXHy5oAjop1IetACUUUUAFFFFACgZpQvNKBilHUUASgcUxxg1MFyKZKBngUxEXvSYyaU9aOn1pDEUlWyKlmZWii2nkA5HpyajI5yKMZoAt2UyvEbKUhI5ZFJkxylQXEJgnkiJztYjI6H3qPGKnluDLaRQv1hyFIHUHnmgCtQ3SloPSgBlFFFABRRSgZNAD6UDkUlSKPmH1oAuYWO1LH7z8Cqcuc896uMDKrPj5UXiq05DkH6/zNUyIkIGBmk70p5NPRD0HXGaRZH/FS/SpGjyyjGGqLpn60gLVpFDN5qSkiQr+5x3bPQ1DNC8EzxSrtdDhh6GlVZAplRW2oRlgOAe1XZZo9SXdNtjnjjdnfgeYeooAzKcRhQfWm1IR+7Uj8frQBCetJSnrQFLHCgk+gFACU5PvUhBBwRginRErIGU4I5FADu9TpGxK8cHFQH71TRlt64J6imJl+4bZD5EXJxlj7VQnTYQM9c/zIrR8ry7WRjyzDk1nytubJ7ZxVMzh5EQG0ZPWpYxiQ/wC5n9KjPJqTOw7uMbcfpUmjGJPtAEg3L69xQ8XG+M70z1Hb61C3vV3SSgvh5gyNhwPfHFCBuyuLa38lnFPCEVo5lwyt/OkvZbaZYWt4vLbZiRe2R3rZl0uLUI0WIhJlQktjg88A1h3dnPZy+XPGVOOD2P0oasTGXMrk4tov+EfNzs/fCfZuz2x0qmARGPQjNaY/5FR/+vkfyqhGuYSO4GRQWVCOTXUaYIbbT4XSLY0q8serfj2rmivNatnfNDbJDb5JAyxb+E047mNZXjYg1dhJeng7gMEkYJ9KpwpuuFUZ5OOBk1evryS5QRygFlOQ1UohmcfNt9/SiW5VP4UIww5FWYZWDIpchMjI9qrkfMauxQwYjYSsznHyFePpmkW9ixKHuY2f7kSjIH941Smjw2B7/j1rakjH2ZmdlRcYBPArGuLhWc+VkDn5j1PJ/KqZlTuyN9sfUBmHb0571CzFpCSe1DdDVi10+5u2JijO0Dlj0qDY6q70gT58+GK4/wBtP3b/AOBrEu9FEG6S3mKlQT5co2t+B6GuxJb0H51Bf4awuAy5/dN1HtQI5aw1C8sQkjoXjlwcOMZHqDWtcX1pqWlTgY8wRkiOQfMpx1FTaZbRNo1sxcqDECwY5U/gap3ml2E0btBMEkj52o3Bx7GmGxhedOunmyIXyzJvz3zTjbyQRJ5yFQwyrYq01sGydkpJ7lhU92ZLuON1IUiMIUPcDPNAXuY3lZp4mEaCNVxz8x/GriwDyy5OAvXjoPWqaRiSJpCcBjnn0zTiRO1tRtwB5xPtUSD98Kc0nz+YQSi8U2J1eYbRt59aHuVDYmMfLH2rQtLSdpI2SHfyOpwPaoltmIkwDwm7n0q3apBDLDK1190hiuD27UhmlLpYFtLNdv50oQlR0VOOwrnrPS7u9bEMR292PAFdAL+W+hlZGEcadV25Le1acE++JSieWm/YFAxxQBmWfhy1tQJLxxI3XHYVfa5hSIxwRcYxk8CrTKBG/HUNVMRL5AOATu6n6UhkN9rsFnJJGQCyqDyepJ6YHtzT73VLQ2tygly6wliAOxGB/MVyWqhvtcrs2WZyD+HSqzM+5wxOcAN+GKAOv0vUoYrDTYDgmVdmc9CKbcS25hlDbVEUhLce+a5pI5meyVcjfjYc981LdRTLZSu7H74DD15P+FAG9PJaiwS6lkBiYgLheefxqC804W6KyPkM2MdvWsCUSHTLc5Zk3uMdgeP8a6a3s3lsYTLesWKq2NuQOKZLaRUutOnubApbMis3JUnG4elYs0bCIIHChBgj1rorq2FvbtIbuQ7R8o24ya56bbtJbJ54HqapIzlJNqxGZVEXlhcjGDU1ro9xJAt0JEVOo5yapmtrQopLiKRDLJGifMh25UnvSZUbIuWFqjs/nFyMAFV4yPetFbfTxIyCIbhw3tVc6YnJW7l3H1FZkOnXD6lcorsPLI+Y8ZXsaRSaZdSaGyWVpSFRpsDFaEN9btemzQ/vFYP7fT61yV/FNDCqyZ2FyRn1wP8AGjT5X/tVZASG+Yk56fKetIo6ttagNjeTqAfIZkxu+96fnUR1SAaTFc5wJHwFPrjkVykZkXTJ+AY3kUEn1GTUi7zpca4bb5jkAjj7o6UAdHqmkW8ktq5DMDKFkweqmmajpkEUGoT+QABEBEfQjr/SnDXE/uN+QqO/1F7rT5okgmO9cD5adibot6TY2r6ZZStFmRFDq2Twafq1hBeWpgDrCzOGyFyTVLT72WOzghaOVAiBSduKupdIOURsnqxosxOcUR2mlx2lgLcnzCZN5Yrgn2x9M/nWnCoSGNMY2qB09BVRbpV52sT604XwH8LUWYvaR7lqSKOVCkiKynqCM1ymr2dv/b1rY2ylFfbvwc9T/hXQnUEUZIYAdzisaxkS61ifVJFJXO2EfQYzRZhzwepV0+1htPEz2d3GJEORFuGR6g/lXXBFVQAAAOgArnddZJDDfxIwntmBz/eXNakeqwzRrJGGZWGQeKLMOeNrl7C+tN2R7mbAywwTjrVX+0I/7r006gn91v0osw9pHuLqmnxXtmybAZEGY/Y//X6Vl2WlRDWRcQofsjRn5CPukjBU5rQa+idSrK+D74qITwICEWYA9g5/xosw9pHuR3WmRRW15b2zeVG8XmCPrhgeevrgVYsdO8rTIYmkDfJyGXjnn+tVna3fO5ZeeuTQs6x4CPLgdA2CKfKw9pEz01KFfuxY+mKkGqoexH41ggmnD6mi4vZRNwalGfvAn23U9dRiJ5BH41hfiaXPuaLh7OJ0AvYD/wAtB+JpftUZ6On/AH1XPZ9zS596fMR7FdzS1KaeWNoYxGEccuHycemKltGS2tY4s7io5II61kcUuR6Ci5Xs1axq3lxut3URlt6kADH+NQ2DNa2gicjIJP3hxVHcKNwouHs1axrfak7yqP8AgQpPtcI/5bLWTuFJuFHML2SNc30HeQfkab9ugH8efwNZO4UhYUczD2MTWfUIRjZ83r2qM6jGf4B/31WYWppalzMpUon/2Q==\"\n  },\n  {\n    \"name\": \"collagraph technique\",\n    \"prompt\": \"collagraph technique {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"color sketchnote drawing\",\n    \"prompt\": \"color sketchnote drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"colored pencil drawing\",\n    \"prompt\": \"colored pencil drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"comic book art\",\n    \"prompt\": \"comic book art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"comics art\",\n    \"prompt\": \"comics art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"constructivism style\",\n    \"prompt\": \"constructivism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"continuous line art\",\n    \"prompt\": \"continuous line art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"contour drawing\",\n    \"prompt\": \"contour drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"contour rivalry drawing\",\n    \"prompt\": \"contour rivalry drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"crocheted technique\",\n    \"prompt\": \"crocheted technique {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"cross stitch\",\n    \"prompt\": \"cross stitch {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"cross-stitching technique\",\n    \"prompt\": \"cross-stitching technique {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"cubism style\",\n    \"prompt\": \"cubism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"cutout art\",\n    \"prompt\": \"cutout art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"cyberpunk style\",\n    \"prompt\": \"cyberpunk style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"dadaism style\",\n    \"prompt\": \"dadaism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"darksynth style\",\n    \"prompt\": \"darksynth style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"de stijl style\",\n    \"prompt\": \"de stijl style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"decal art\",\n    \"prompt\": \"decal art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDmqBz9auy2u/5k4b09apYIbBBBFFgNfRr7yn+zyH5G+6T2PpW665jYY/h4rj2GGJHrXQWGoefYurn97Gv/AH0PWgBoK+Z5mP4DWzA2beM/7I/lWJEwUhexBArZtxthUdgi/wAqAL9t/qvxqaoLX/Vn61PQAUhIHU4pahn6rQBCx4JrB1W2uJ78yiM+UFAVs9a3X4WqFxL8hH91ePxoAzQRb2/PAUZP171iOxllZ26k5NX9TmwoiB5PJqnDEXYKO/U+lADavWDZhcejVUuFCSsq9BU+nn5ZFHqKAJ096dNZpcYxw54BoQCrEXEik9ARTc0aexktSlcMIwY3jAKg9R1NLHCItONwM79+3r2rUksVurNUfiQLgMO1V5rdodLMT8ESVlCopEyjYrRyZAIrXtpd0rFSceWnGen4Vz0TmN9p6VtWB3Qu+c4wuPTmtCTctmIGO26rVUrc/wDoVM1XV7bSo1M+5nf7qL1PvQBoVDN95ar6XqttqkTPbkhl+8jdRVif7y0AVZWwM9f/ANVY00nyAnpjJ/WtWVvkP1x+lZBBc8d+KQzEdmmmaRh1PFWbeIggZxk81clgy4bghelU5pPKJX+L+VMRDcj/AElxngHrRbzeXIcdMVXdyTRD9+gDUt7iGXHzBG9GPB/Gr4VTww2tXNirVvfSwYXO9P7rdKhx7G0arW5vo7wNjORTr3bc2oCMFO7nNUYL2GcAbtjf3WP9akvSYrVnU4PHWoUVzXNJWlG6KV1atHjcQQeQw71p2caxWbBS2SATmslr13tWifk8bSK0LQlrFdzYIGRz1rY5TaR9iMx7HNcZr9w9zqsjuTjAC59K6iW4W20+a68vzCgztJxn8a42+u2vblpnRUJ7LQBf8NTPBqgZASrKVYDvXbzNkqcYyK4HS9Vl0x2KRRyK2MhxXatcefaw3AXb5kYfb6ZFAFWYny5MAkk8AfjWdH+9ZlAI2H5sitGJsy89lNZl/eC2LrHjzHOTjtQBDd3QhBVD85/SslmLEkmldizEsSaAueWOBSsAw9KWL/WL9aVhxwMU2Ph1+tMBoNOFNFOWgBR1FXDJM9sIQxZSoODVNfvD61a3tGqFDg7BQAJbzAF1j3AdR1q7HveOI7eR2AxVWG9uInOHyPQirEN++Q0iAn1HFAF2RpBoV2s3UIcD2yK5eeBoCm7+NA4+hre1S7ZtPKIMNKQmPxzWZrEyPcRQx4ItolhLDuR1/XNAFSKFpUlZekSbj9Mgf1rtYH3aRZkf88V/lXLaRKokuLZ8D7TCY1J7N1H6itnRrgyaSiP1iLJ/X+tAFmKTZMfm6qT+NZuoRKkhO0ZYZz1PWp3uBBIJD8x24x71SmuHuWLOAMAgAUAUX+9RycZpX6/lSA9KAFxwc+tRDhh9amY4U49ag70AApy0gRvQ1JHGx/hNACIPnH1qw/CJn+6KWKznZxtiY8+lXf7JuplQbNuFAOTQBn4XfkNU8RUYBI4FXk0SQDdIwHHcgc5/wqW20bDAyMDx29aAMu8kAZMHmNWcfXoP1NZFdlqmmxPBPMpCt5BXaBwcHP58VxlACgkEEHBFbtncBDMDx5m2UD3I5/WsGu303ToljjnY7iYFj2kcDHX9aAMCafePao1b5vbBrorjRYXDeVx8uB7e9UZ9LKRuVHO0ADHU0AYrkZ60hG3rVt9PuCQRFkY9RVedcYoAaf8AVFh0zUYUsM5A+tTYzaH61Eo+UUAbsNhCOo3VbUW0PB2g+nU1nCWR/vyHHoOBUsZA6ACgDRW5HREP48U4Su3Vsf7tU0apVagC0pAOcZPqae7ZQhWUN2yTUMal+hUfU4olhme3byZI1fopJB/GgDD1bVLhJXgBt3jI6qd3+TWDWje2U1ndE3eJtxJJQ53VQcguSM4J4zQAldtb3YmijaEgjAIPp7f0riQMnArY0e9Fsfs8vmlmbCqvP5UAdT5vv+hpryMemT+FHlLldz7Vb6cGopcRsV3E+4NADHw3VRn1HFUZbGB/4AfrVlmqJnoAptZRIpXYwX/ZORWfcIschEedtajn/aNV5RuGGwfrQA1GqdWpiXEWc/Zlx6bjUy3MX/Psn/fRoAejVKrVGtxFjH2dM+uTUqXEQHNupP8AvGgB4anbqRbiLOTbqfbcaeLiLdn7OuMdMmgCCUCRCjZ2kcgGue1G0NqU4UBicY9M/wD166kTw7sm3X6bjWV4haOW0RkjCFX7HNAGPBCZWiVNwlblSeB16/zrSg0ZQ4eWYv3O0Y/WtGwaBbCAG3jLqg+Y9fUirTTxEjFugx7nmgCMHCgZJwMc0hapGuIjjFug/E0xriPj/R06+poAiZqhZqne5iI4tkH4momuYuP9GT8zQBXdqgZqtvcxEf8AHrH+ZqFriLH/AB7Jn1yaAKimpVaq6mpFagCyrVKrVVVqkVqALKtTw1Vw1I0mBQBNJOFGaxr+d5s/3RVqaQtVKVty+Wq5JNAG1aDZAnOcgHNT7qqwHbEo9BipN9AEhamM1MLU0tQArNUTNQzVGWoAGNRsaGaoy1AH/9k=\"\n  },\n  {\n    \"name\": \"decoupage technique\",\n    \"prompt\": \"decoupage technique {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"diagram\",\n    \"prompt\": \"diagram {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDESpgOjdxUCVYX7tIZuTlZ9JS4H8OB/n8aTR3V7lou7oQKpLK0FvPaP0chl+uan0d1j1KIscZyPzpDNJFPmsT13qa1YVwh5zkk1UlBiklIA5wRmrFs5ZOevWhCZPUF1eW1moa5nSIHpuOM1PXnXiO4efXLnc2QjbFHoBVCO/trqC7j8y2mSVfVTnFTVwXhGZ49bSNWISRWDD1wMiu9oAyywWNiSAATya56TEuohDyGl/TNbcu3yijOQDnPFYMsmy+aVBkK3y1KKGagQb6bHTdVNqlmDJKyv97qfrUTVQjQtyBACeKhvusX+9TZyfsiYP8AEKde9Iv96kMoRNg7T+FW0PFUsfP+FWYXycHrQI6S5hhmsBcLglVBDeorMVsMGXgjkVJZ3O23ltn5SQHb7GmWcSSXMaHozAVJRttdieMP6xgnHrnmpdPaRrrPzGPZ1xxmqcVu0EE0UvVZMfUVo6e4A2A++PSmtxPYvV5/4osjaaxI+5Ss58xcHkeufxrf13xI+m3RtYIA7hQS7njn2rkL+/uNRuTPcsGfGBgYAHpVEjLS6ls7qO4gbbIhyK73TdZh1axkZFMcqL86Ht9DXnldD4RI+1zjJB8lsjsemP60AbUsigEMM4GTxWTIyyahGuBgNzjvWhOhMhO/AK4xWXdI0UxVOZMljipKIL51e9lZTkbqrGnMpAyRTDVCLUv/AB6p/vinXnSL/epsvNqmP7wqV03sCTwO1IZnY/eD6VNbpm5UEZ9qiiy0uD2q/bxhL+EfeBGTj60MROJoYGZmDY7fL0qO1uPKmSUc7WBx60zUJf380W3hZDt9h6VFagbvmztAzxSGdJf3XnSIIgTFKgO4djVjTIAspYyMWVcFe2DVDSwkltIEJOBnB7VqWEMqytKxXay7dvfIpLcHscz41iC6lBIOrxYP4H/69c3XU+Nxm6s/Uqw/UVzdxA9tcSQyjDxsVIqySKuu8HW6/Yby4I+cnYD7AZ/rXLw28k0U0iD5YVDMfxA/rXVeHJvs3hqaQAEtMV59wBQAszssxGPl4PWqshaN5JGP7yQn8BVjzVZ90gAWMbifU9hVS6k3tuIwSvSoKG34VbOLbwW+Y+5rMNTXEjvtaTIAG1fSqrPuYAdKpCZpxKGiXPah5Qq/N8uTgVEZvJtlIGSeBVaRsyoz5JIB+lAyS2iJvGT0JBqxpgxqaj0J/nSaeub9889f50/Th/xNPxP86QDNRI/tG4B/vmnW9u72zyJzt4I9qZqY/wCJlcf7xotLiW3LBTlW4IoAvaZdm1lcbC4dcECtvTrtJL51zy44H0FY1pJ5MyyhSFkGAcVsaZZxef8AaQzbxzjtzR1BnNeKrkv4gIblYAqgfqf51jTzPcTyTSnLyMWJ96s6vN5+r3UnYysB9AcVSqiSxa3TW4mTrHNGUcfyP4HFb/hN0ltb22nGY1xKAT09f6VzFa/huby9ReMnAmhdPxxn+lAGheRbI1YDCscrVSST5RxyBir87+cixn5EQYye5qjcyDARB90cn3qUUQ3ZzZxZ67jVEdfxq1OvysPSTH6VXA4/GmhFqbm0j+tQzD54/ZRU8o/0WP8A3qjmHzr/ALlAy7p4/wCJhL9D/Ol04f8AE0/E/wA6dYD/AImEv4/zpdPH/Ez/ABP86kZDqY/4mM/+8arq4RgCOrVa1If8TCf/AHjVCQ4l+hzVEmi96ivawqeFBEnHcniulspo4bN5i21FTJJ7YriZGDXeSMfMM+1dhZpFc6VIrx7o3HIpAcNcQsgWRmDeYSeO3NQV0mqaIq6Z9qicqYUGY8deeTmubqhBV/ToWTF8JAqwSoCO5zn+gNUlUu4VRkscAV1MWhJapNA0rS5KsflxgjP+NJjQ65lhjgkl27kQZDDuTWPcXCCMyAEh+n6VPrE6x5tYmBGQXx0HoKynYtAFJ+6Sf5UJA2PhmynlEHJbdnNPxx+NVofvg+hFW+340wLEn/HtH9ajm/1g/wBypJf9RH9RUcv+s/4BSGaGnj/iYS/j/Onaf/yEvxP861rXQvJmaV5yS3YLVqLTLK2k8wKS/qWyfyqQOc1Bc38+P7x/nVG5tpVuSm0knpjvXdKFySkQXPfbyahljC30dy+AkcbKS2BySMf1pgcZLbYvNg3HJz7+9aWrrNbeHrdkkdMzHIUkcEdD+VXlnhg1drkAyqQ2NowATj/Cq/iK/F5pToItu11bJP8An1piMzw45lvZ7aR/luIGQ7j+NYzAqxU9QcGrWl3JtNTt5wM7XGR7Hiobh/MupZCPvOxx9TTEaXhiz+161FuGUh/eH8On64roXuC1zM0hO0khc+1YHhm9FlfSFk3K8eDjtyK6VtZgPWAn8aTA4++ga3lwzBt3zA1CgzFICM8ZB9Oa6bULy2uYlX7Oww6nrnjPNZ58g2Rj8t9+CM5HWmBl26DazEchgB+tS9vxq5p5t4In+0W7SlmJxuxinTfZX/1UDx/Vs0AQSn9yg96jlP7z/gFSNGrADdwKY8bE5yOmKLDud2SX+9JtHoox+tOURJ93A96QswHVR+NZt5rCxFo4/mf+8FyB+tQMu3N9FbofmDN2UGsW4upblsyPkdlHQVUkmMr75ZGYn1FN3p2/maqxNyVmx3FQzqssbQknB6ketKCEAducngZp5njP/LIZ9TVCKSWFuhBILEeprMlTFxKp7E1s7qzL0bbtj/eX/wCtQBNpa7VeT14FXi1VrXC2yAelSFqAHlqaTTSaaTTAUmkzSE00mkAppDSE0lAGi97dyHm5GPTzP/rU0T3P/PcH/gYqkCP8vS59P/QhSsMu+fdf89D/AN9LSk+Yo8xyxHXpxVDJB5p5crHgHk0CHtJvYnoOw9BSbqiBpC1MCXdVG8cNOAOy81MzGoHQMcnrQBZtmHkLUvJqpGSi7R0qQNQBOQ3pTSDUe73pM0APOaTNNzSZoAdmkzTc0ZoA/9k=\"\n  },\n  {\n    \"name\": \"dieselpunk style\",\n    \"prompt\": \"dieselpunk style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"divisionism style\",\n    \"prompt\": \"divisionism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"doodling drawing\",\n    \"prompt\": \"doodling drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"dotted lines art\",\n    \"prompt\": \"dotted lines art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"dribbble style\",\n    \"prompt\": \"dribbble style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"egyptian hieroglyphs\",\n    \"prompt\": \"egyptian hieroglyphs {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"embossing art\",\n    \"prompt\": \"embossing art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"embroidery art\",\n    \"prompt\": \"embroidery art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"enamel painting art\",\n    \"prompt\": \"enamel painting art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"encaustic texture\",\n    \"prompt\": \"encaustic texture {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"engraving drawing\",\n    \"prompt\": \"engraving drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDBMfPHFLHLLAcoxH8qfnBpPlPUUhlqO/VxiYYPqKJcEKyMCuaoOORirFuMW7f71Ay8FdDkdf51Hk7ye/cetT8x27scMiqSQahjjke2EwQtGeNwHSkA8DfyvXuKvWtxkCKY4x91j29j7VSSGXcNqnPY1aW1LJuY/P7UAasWR8p61ZHA9qp2SSLEBKQSOnsPSrh/1bfSgCxS1HE24YPUVJQISoLtwsJB6sKsVUv/ALi/jQMxLjo1VD155q5c96pTsI0J7igDJEpycgfypyyf3h+VKyHJGAabs9AR9KYhWG7BXn2qeAf6M3+/VYsUPODVuEk25P8AtUAXjg6XcY6hP8K0tAyNITjILNkH61QIX+zLjHHyf1FUrO/urMfuZCE/un5lpDNjUzFZSRPEu3zcggH0x27062uonADDHYEcjP8ASsvUL9tREBaEAx5zg5Bzin6ZO8N7GiNxIQrI45xQB0SCpW/1LfSq8U0e4o3yMCQCehqw4/dN9KAFgOGb6/0qxVWLqfr/AEqyORQAtVb37i/WrVVL5sR4/GgDGmwX9yazLtt0hx2Oav3WI2Y55A7+9ZpGTz+JoAhWQA5IPpSl0PtQFXIpxjBHBpgVJRyPp/WrcH/Hsf8Af/pVabqPp/WrUH/Hsf8Arp/SgRoRBTplwAc5A/mKpRWZdvlYD3q/bhfsE2BgEDOfrU1tGAvK4z3zSGZ6wSI4IA9jWvZISxaVRvAGOOlQBVXGPvMavRnLE9eMUASIgYncMjNTKmyJwCcY6elV7mX7NZyzd1UkfXtWHpep3Ju0ikkLpIcEE0AdLH3/AN4VYB4qFR/OpRQA+qOoElCPbFXc1R1DOzgZNAGLdnzZm9OKoypnaBwvBxWg8eMfWq0i4I/D+dAGaImJOKd5bjr/ADpBI+47eKeDKRk9KYiCbqP93+tWoDi1J/6af0qrKeQP9mrdsAbXn/np/SgC5HIX06RCOpC8fWrNtKIXW253J69zVXG22YIDyc/rT0cfaVncckc/ypDFtJDNqL/vDsxwtbEQxkkds1z4imt5laL5j1BAroLN/MRSwwxGCKAMHVtQe4kMIJEanoO9UrWQQzrJjO05rR1+yWG5ieFT+9ByPesxFLsFjXc7HCj3piOyt7uKa1E/3QRkg9qsCaPcF3jNYelQ+fo8uCcrlcD6g1oCwP2m3+Y7RHhqQy408aqSXGAMmsS01V764lR1AULuXHaptcdLO2KxOBK2Bt74rnIZzDMjqcc8+470AbF6zJE7pjcBkVQhkaWFGflv/r0uqTlZEjVuCuSKpW8pFwozwTzQA7zAD90k9qeJJCvCADrQAi55APanmdB0Xt0NMCnN95f93+tWrdtlmWHZyf0qtPgsMf3asRf8eD/7x/lQIdFfAD95hjnvVtJUuMvFIY3HXuD+FYta2hwed553Y2AHp160DLmnZvEkV8YRtpJFXdJ/eRBiSWDsufYVU0FQ0V0WGf3lXdCA+zD/AK6P/OkBR8QTFdQgVeSi7h9TWZArQSpKn3oyGAPtWn4gt5UvjclGMeAN3YVliXDn0NAG3oUwkvbuKI4jl/eKPTnp+tdCF5yetcz4ehMV5DJhsSox9up/wrqCcCmI5XxSqpeJt+9IoLe2OKw2VQox1rr9ds1uLRnjg8y4GApHUCuUMTtL5AQiTO3B4OaAHXIPyM/O5FA/Kq0YzKoHrmrN3HNuO9D+7UAntUNsrmZWVSQDgkdqAHqmSRnj2qURKoqMPhjtGSauwaZeXK7mURR92kOBQMy5uo/3asR/8eD/AO8f5VZntbGH5RM9zJ6RjC/nUBsrqVdsUDhc52jNAilW34cICXef7o/rWdNp9zAuZYjGD/eOKs6RGZPMUHGSM/rQBd0aUxRzoFyWk/KtLQ49sSsf7zD9TVbRoP3lzxnExratrdLePYnqTk+5zSGVdeZV0iYMM7sAfXNcl5eByOa7DVLE38Cor7SpyAehrl4E8+dbdNxkY7cEYpiOxskWOygVQMCNR+lSk5qG0R4rSOKUguq4JFSMeDQBUub9ITtALEdawr+PN1dSgfNujkU+meKuXK5lP1qhqBCvMVYgsqKcHvnNIYt+f3b+hBFUtOP7p/8Ae/pV2XE0RB7isuGR7eQqeVJ5oA047u1tj5en23myn+Nhn/69W49Nvb9g+oTFE/55j/DoKv2lrBariKML6nuagvdagtgVjxLJ7HgfjQBcgtrSwjLIqRgDl26/nWdfa+BmOzGT/fI/kKx7m8uL190znb2UcAUtraS3TbYF+Xu56CgCGZ5JnLSsXdvxrY0PS54VZ7hfLDYwM81dsdNgtPmxvk7u39K0FGfpQAsUaRjbGgAzk4HepBSAY6Uo96AFrntNiQeJLnGCE3Ffrn/65rRv9Xgs1IB8yTso/rWVokrf2g0kkS77hiQ3cDnOPxoEdLUUrYQ08nFVbiTggUDM+Y5cmsS6ZjK+e5zWzIeetZV0Azkj1oAeGOwH2qnOvz59aso2YwO44qOUZFAEl3qk91lVPlx+g7/WqgGCOMnsKfDFJPJshXJ7nsK2rKwjtsMfnk/vHt9KAK9lpTSYe6+Ve0Y6n61sxqsaBUUKo6AU0c9Knjjxy3WkA5FJ5bpUw6dKYM+tKWCjJOBTAdwOtY2q6pjMFsf95h/IUmo6pnMUB46Fqx+poAZtLNlua0dOmJ1KJmxgAIPpjFUqs6ehe9iH+1mgDpnOFrPmY1dmI2E4rNlYZNICGQnNUZk4OKtuwPeq7mgZT5ByKDyKewGTTT0piP/Z\"\n  },\n  {\n    \"name\": \"etching technique\",\n    \"prompt\": \"etching technique {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"expressionism style\",\n    \"prompt\": \"expressionism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"fantasy style\",\n    \"prompt\": \"fantasy style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"fashion illustration\",\n    \"prompt\": \"fashion illustration {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"fauvism style\",\n    \"prompt\": \"fauvism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"felt tip pen drawing\",\n    \"prompt\": \"felt tip pen drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"figurativism style\",\n    \"prompt\": \"figurativism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"flat art style\",\n    \"prompt\": \"flat art style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"fortnite\",\n    \"prompt\": \"fortnite {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"fresco art\",\n    \"prompt\": \"fresco art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"frostpunk style\",\n    \"prompt\": \"frostpunk style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"funk art style\",\n    \"prompt\": \"funk art style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"funko pop\",\n    \"prompt\": \"funko pop {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"fused glass art\",\n    \"prompt\": \"fused glass art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"futurism style\",\n    \"prompt\": \"futurism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"geometric style\",\n    \"prompt\": \"geometric style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"gilded drawing\",\n    \"prompt\": \"gilded drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"gilded technique\",\n    \"prompt\": \"gilded technique {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"glitch art style\",\n    \"prompt\": \"glitch art style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwA80TwIw61KvzRZ71mq4t3K5+Q8rWpGAYty9CKtNNXQmrOzJ7Mchh9DSalPJDs8tsZp1lw+OxqHWOsdC3IkFjdyyXADtkVsCsDTv9f+FbyHKA0S3COw6iio7m5htIjLcSLGg7moKJKKbFLHNGskTq6N0ZTkGn0AJSGlooAaRVS6UY5+p+lXDVe5j3IecDuaaEYspyS3rWXfS5OwfjV+6lChmHQdKyUVp5sevU+ldD0VjaWkVFbssW7efB5Z++nK/StSwlzCYyeR0rAjcxuGXqKu21wQ4YVhGNm0TdStfc6OxwTg9R0qDWesf41LYMrASDt1qDV3WTyyvOM018RnNEOm/wCvP0rdh+5WHpn+uP0rch+7RPcmOxJXA65fvfajITwkbFUHsK74lVHzEAe5rj9f0qzgkae2uolLHmDdk59vaoLQzwtfPDqAtusc2ePQ4612dc14e0yyjKXTXUc02MhAwGw/410oIIyDke1AMQnAJNQG6j96knOIjWWepppXGlc0oZRKpIGMVU1Sfy4vLB5b+VRLIyj5SRVK9MjsWOTx1NXBK+pcIq+pl3km5ggpDi2t8f8ALR/0FBwhLtyewqtLIZHLNV83UTlq31GspRirDBHUU6NtprV1O0WaP7TBgnHOO4rIrCnUU1cVSDg7G5pt6sIKyHhhWnhXT1BFczbsSQBXSxf6pfpVT7he5V08bLt19BW3Ca57di8k5xW7aH5EPtRIhK2hneKG22MJ9Jc/+OmudilDplsE5wa3PF74tIF9WY/p/wDXrnhbtBI8btgq2KSBobLOyzlVZVUDPI612mif8ge2/wB3+pri3EjRzIiqUULIzEc+mM/jXY+H336ND7bh+poBFu5PAFZjH5jWhO2ZMe1ZzfeNNGkRaq377YfbvVnPFYt/M7MQx49KobdipNJuNRUE5q5p1kbuXLDEa9T61MpKKuzOMXJ2Q7TtQMB8qXmI/pTL6ARS705jfkYqiDU6THZ5b8of0rNQtLmRpzXjysfahmlG3rW+srJECc8etYlmuJ+TgdjWrJJ+6PzA8VruEFoV5XzduVPWuitT+4jPsK5iBfMeX1AzXTWnNvH9BRLYy6sxPFcoN5bRH7qDcw+p/wDrVkSStNM8r8s5LGpfEExuNWnKnhDsH4f/AKjVQVIAtwIp5FP3JYyjAfp+oFdT4Um36a8ZPMb/AMx/+uuWWIyS7QVHmYXLLnHvWz4Vm8vUJrfOQynHuQf/ANdIZuzf6yqDH5z9avTn94PxrOdv3jfWqRrAeTxWFfq4lJbgdq2d4A5IFZeoqWkBByTVBNaFKGIzShF79/StC5vltYBbWuMj7zCs8yeWpVOp6moSaylDneuxMZcq03F20nSnBx3p2ARxVEjreURuCwyvetkRrJGGjKgN3ArFiQM2CavW5EAO1iQeoNWJSaJLM7LiVW64xXQ2bk2646gcVzMQ867cKcZ5re0yUKmwkkg1LGjnpzJJoj3Up3SG7Ayf905/nVNTwK7y4060vrcxSxDYX3nZ8uTjrxXDXsBtbmeEMcxSFeR2zxSuJk0LLDbvc7Q7RsAATxVvRWli1OyKHCzoxYdjy2f5VJ4esFv3uIrkFoFUEgHGWPTn8DXSR2dtZRoIYlXYu0MeWxnOM/jUpWbJjGzbZTu3xKtZMswEzD3rQuZA01Y07f6Q31rSJt8KuWDIjD51Bx6is27nWRtqABRU0h3rt3ED2qpKgVsA02S5XIutLsNTKgAyeKY0iqMDmsm29gtbcgGacDikxSitCCaFsPmrQYFenPrVJfapFDKRk9R60xFi0bbOx9q2NKfLn61hwn5j0rV0pwHIJHWhlRZ01s2Ux71w+tZm1O8lyFUOcD1xgf0rsLZ+lcv4ihaC+nAxskIcDHr7/WqpxjLmv2LjZml4NkBguoyPmDA5z25rZu3ycegrH8JxeXZTTHPzttH4f/rrQnfn8Ky6iMi7fE9ZsrZnPuatXkn77g1Qlb952q0En0LXkhVyzc+1UpyN/BzQxdyfmJx6monz3oJbXQazk9aZzTzTSKQDxG3p+tL5bf5NXRbN/EUX/ek/+vTwIYvvNAx9txouh8pRRDnnipRECeGz+FXIrpN2ESEf8Aq4s8mwkKo98ACndCcTIjR1c4BNWbdZA+djdc9KuQXbNLtaVD7KK0YJSe9FybD7KRto3jB+lY/imfNzFHxjyjn8/wD61dHG1c/4st3EsF2CuzHl89QeTU31LRq6Tsj0i3CEEFM8ep5NQXkjnO0E/hVzScf2PaY/55CnytSQmcrIkvmZ2N+VQGNmfnI+orpJpSD96s+W7dZMCVPowq7k2MoxAHJb9KjdPStxp5Noyqn3wDVSW6Tdh0iP/AKLorlMzym9P1ppjb0/WtHMEo4MKn33CmG2P8Jjb/dl/wATSuh2KPmGkLE96ZThSsK5LE208DJ9TU7OzL87HH+e1Vl4p+c9adhXZNC+2QYFbdq5IFYUIywrZtTgCmyTUiLdjiqevqraePPfIDjaFHOfx9s1biYYrJ8RTsfJhwNh+fPv0qSjXs+LGEQOPKCDbkc4xTZd3c1FpsgOm2+0g4QD8afK4xQDKFy5ANY0r5c5Fa10cg1jyjDGqESK7BflY1BK277w59RRnFMY560rDuNBI6Gl3kU00lIdz//Z\"\n  },\n  {\n    \"name\": \"glitter texture\",\n    \"prompt\": \"glitter texture {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"gobelin tapestry technique\",\n    \"prompt\": \"gobelin tapestry technique {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"gold leafing technique\",\n    \"prompt\": \"gold leafing technique {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDlqmgfa2D0NQ0opgaC1r6bIHTYeq/yrDt5NwweorRs5fKnVu3Q1EloNG2On1AqaNVLBu4FZl3dyQlRGQDgdRS2F9LJchJSpB6YGOaI7De50SnpT6iRgeKkqiBarMwqwelVHbauaBorXRGM9wOKyCRuP1rSvJcIfUjFZhIVSx6DmkMrXsmFEY6nk1RNSSOXcse9V5nwNo6nrQBFK+9vYVHS0VQiSeIxPg8g9DUYqWSYyoQetQjpmpje2pUrX0JEYowYdq0YmDKCOhrMFWbaXY+D90/pTJNGaTeqknJ4BpbZykyMOoINN2hoSe4bH6VLa2c0p3RgED3pIZ1KH5qnFVoz8w5qwtMQN92s67YqEA65rQfpWPqMhV8LkHpSYIzLt/Ml2nkD+dU7gbUGO5qwxVHO/JJ9Kr3bqVXaCOe5oGVXYKuTVViSST1NPkfc3sOlRmmISlTlgAMk9BTT0zU0UogGU5c9/SlJ6DW5GUOKQfdrWk0S7SJnK8AZrKA+UVMZqWxUlYQfewKkANFsge7jQqWDMBgHBNbaQW9rbTNsEoIwQ45U/wBDUzqcugRjcqW8qm1Csf3gfj6YrT0yXZMQTgYrDU46VoWUmXyOorQk6OCdXlAU1oLXPWuI7tDn5Scj6VvpQJhKeKybuCS4kJXGFOOTWpOcLmsr7VCm7zH2neTjGaTKi7O5hSuPNJJ4HFVrpwyqFOfWllbLEe9QkjNMRAwNR98Gugkt7e5ghOzyxtAAQfMx/rWHOmy6dACAGIwTkis4VOcqUOUY3SnBDSEcVrJol0yK23qKc5qO7CKbLs2qO1rKM/w1gouYxUzMfKce1NiH7pazhFQWhbd2QAfvwK0ReOYmSXLHaQG/iHsfUfWqQH+loPpU0ikA/U1crO1yVoRJmrMLmNgwqOPlAMd6lACkZrS5NjVgyzo4bgYOPaujhbcuR3rl7dshSvBHBHtXSWTboB7UITC8bbET6CsSNLeUyGdypBwOcVqaq4WID1rAkXCF9xx71MldWuOIt9aWcVqzxPmT+H5s55rGYYNWZGL4ySQOlQyrhwPaiCcVZu45WexYa7fYEiyuQAWzlm9s9h7Cs8jM5FW0U5x/tCq+P9KcfWpjZXsN6g4wma6CPVWEKDP8IrCmH7o1IGO1foKicVNK5SdmWLi2KW0jY6D+tR28Ja3QgdRV68n3WUy8fd/qKZpzgWiAgHio5nyXKt7xnrGf7SiX1I/nVu5hKR5/6aOPypCR/btuQONy/wA6u3ZBi/7bzVTlqibbmZCOB9assASBjov+FVozjH1q2J0YsRnkbVz6Vq07krYtW0qeXiReCMZFbNjKsETmRsKo3ZPpXPQyjYA4+lbFqbe4je3kZQXHQnFDfKJ+8O1CZZmVs5iAByvesabc7dMKDgD0rTvBBDGsUUisAMDBzWa8n7wDuGFF76gtCqUJUH3xUVxgzDHpVsv/AKOB6NVLOZBQmNlq3gLhT6yqv6VSKf8AEwlX0J/nW3bEfJ/18xf+g1mx4/tm4yONzfzrGMtymtiK6iK27Ej0qxFaloUbHVRT9TcG0YAAcip7efbbxLx9wUnJ8qKsrmfNJmGQeq061k22yj2qCSQmNhk9KdC+LdRk1o46Ep6irJnVIW9CP51cuJMxf9tJDWekipqEbtkqCCcHBrTmurZ4WCxyg/Nglx1NTJO6sgT3KEXIX607YVg8wMOWxjPNLaRvIoRR35NW7a0iiuJvNIKqRjuSRg10GRZttOaQo0rYB6/Wny2ommDxZAZgseeN2Op+laFqpkPmSDH90egqrdrJHfReX8oEeEB9Aaym9C47ka2Yt5Myg45VyBnbk8H6VVuLRoZBzlWJG6tSETS3Qeb5g0Ryo9M8UXK+UxZRuX+JaIMJGAMGMqTzmoXQIwYHOO1X7y0VYzPA3yHk+tZZR35GTzWliTRgmwFP/TZD+lUA+NSmb1J/nWlFd2yRKGSUkYJO8dRWUzq19Ky5CkkjJ561hBO7ujRvYnvJN1qw+lOjkxGnsoqK4fNswyaRZDtHzHpVKOgN6kL/AOrY9sULLtjAAyfU9KlkSKNSJGMkmOg6LUGMDFarUzegxiS2ScmrFsuVakFnO/Kpx71cs7F1DNPhEHJ5qhGrDFHBAGJwMZJpluolmMm3C5yBVdpTcyBc7Y16CrkA4wDx61lKVi0rmlEcsADTNRjDRxPnBVwCfY0sLL15JqWfa9s4bptz9KlaoNmNtwoEhU5w23PsOKhnOCTU0OBCMd8k/XPNQynrj+VDWgLczpD5LkhQ0bfeWniGAxFolUAg9KknRSuUGTjnnNZ4ka2kOMmM8EU4SuDVjKuhgLUCEq2VODWnd2TyBWt8OnUc8iqTWk0YJZOBWxA2SXdEQRg+3SnL90fSo+CMGrKpHKv7ltj/ANxuh+lQ9BrUrVetYFADtyTyPaq0MW85bp6VeQgDA4AqhFpWA5PSq81wZ22Jwg/X3qvNOX+Vfu/zqW3JQ4UBmPqKT0GtS3BGcAbMDGcnrVtFCAEEjPp3qupYHMzIFPb0NSBkcjy+cdTz1rmlds1WhfgbC9Me1TSSKIm3Yxg5qnE+B61IwEiFT3rWKsiHuN0+UNZxjdnA6+tLK3eq1v8AucpngU9347U3sLqRNcBOMHPPNRFYp8kEjA5Bp00q7MCIbs9c1Wa7fI4Xg8cVny9i7kSyPaylTyh/z+dWS6uuRyDVaeYzjbIF9iBVeKZomKt07/41tHXczasF3AoBdOMdRVOtJyrrjqDVCWMxnI5FUI//2Q==\"\n  },\n  {\n    \"name\": \"gond painting\",\n    \"prompt\": \"gond painting {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"gothic style\",\n    \"prompt\": \"gothic style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"gouache art\",\n    \"prompt\": \"gouache art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwCPVLmePUJkWZ1XI4DYHSqQnkbgyv7ZY1Nq7btTn9iB+lUqYjUsLxg3kyuefuknp7U+yuHDGN2OGJKHPvyKzFO/jOG7e9XLdhNb+WPlljO4Z9atMzmupZtHbZ94/ePf3rXJ+cVi2WfLG4YO45H41s5/eUp9AhuyvcuwPDEc+tV/McdGb86muv61WpIplu0ldpcMxIx3qhq99cQTokMrINuTj61cs/8AXfhVDVLKe4u98a5UKAKGNFRdUviQBcOSfpV9r26W7RDMceXkjsTVOCxkifdKvI6CpZATqCgdfLP86TGFreXs0hZ7h9g61PJf3If5ZWA9KYAqKEToP1NQzff/AArnVTmnZbHZ7Llp3e5MdQuj/wAtmqe1v7mS4iRpMqWAPA5rOzUtq4W8gBPJcY/OtzFpDNSIOoTiQcbzhgOn+NUnUp15B6EdDWhf4N9P/vmqhUqDt5U9VNCZm0QVagYysNpCzr90/wB/2+tVmXqVzjuD1FIDw3+e9Mk2reUS4YDBzhh6GtQnEmTnGaxLC5SZtsmBNx839/8A+vWxKc5x605O9iIxs2Q3X9ar1Yuf61XoQ2T2f+u/CqmrX01tMiQvjK5PGat2n+u/CsTV336g/wDsgLQxoR9SuX+84P4CrcCyH97N/rWGMY6Cs2KFpVdh91BkmtdeFBrnrSaVkdeHgm7voLjHJqtN9/8ACpZZVjXdIcelUZpWmOT8ienc1jS3udNXVW6g838MfJ9ewp9kMX0JY5YyDn8aqtIBwgqbT8/2hATz+8H866tWcjlGO2rLlyu/Up1J43GoZE2NgnNWJuNVuP8AeNQ3H+s/CsOdqdjWNNSRAyhueh9RUTLjIPBPfsakZsEfSmzcxg+9dCZzSRDkg5HBFb1rcyzafudskcZxWCORyR+dbGnkfYCoIJB7GqMy28nmRBu/eo6F/wBV+NABPTtTJ3JrT/XfhVW40qJ5nkedlLMTzirNoQZcggjHUVT1KTzWULyN3AqZSSaNIQbTfYWSFILCRE6BTz6moJbkINqfM+PwH1ounLOfOO2JTwufvVUnVwgkVNkbdPWs5w5rXNqVTkuNkk+bc53P/KomJc8/lVtLBhEZJTjjIUVWkAWYgDAyKqKXQzlUci7DZInMnzH07UkeF1eLAwA61aqov/IWj/31/pW80kjkpyblqWZz/wATS4/3jUE/+s/CpZv+Qncf7x/nTJF3SfhXnS+M9mGyKknX8DRN/qV+opZPvfgaSb/VL9a6kcUupq6YiHT0JRScnkj3qdwFUhVAB9Biq9hMsGmRlioyxHzH3qSa5RF3Mw2Z+8Oad9dDOwq/6v8AGqupOUhVAcFjk/Sp4blJpnijZWIOVIHGKyb27824fHzIpIU+vvSld6I1o8sZXky7o84SUxOcbvu/X0qysflyEuQZWBAPZR7VhxyKZVDZCk8kdq3fMChQTnHGTzQvMdRpv3WZrRu1ynntuLHp2qxqgAtowOgx/KmS/wDHzD+H9asXkQlWJWzjqcD2qmZJXHP/AMep/wB0VkTf64/hWqGLWh3EbgvOO1ZU3+uP4VnTJtY1aqr/AMhaL/fWrVVB/wAhWP8A31rqnsc9H4ief/kJ3Gf7x/nSgc5pt023UZzzyxprOyjLKEHq5xXnThJy0PWU4qG5Vk+/+dJP/ql+tEpIbjHeklB8kZJOT/SupHKx3zfZotxOOdo7YzSsJJLUDHyKC2aVw32WAlSE2kA9icmrrxs2iwRRKd8r4APfqahL3hyfuozrVmiilnUgFBt+u7gflVeSPy1jOQd67uO1bWi2scyTRzIGVlGQfrWdqVvDaz+RE7PtyST2z2rQzKeDt3YOAcZ960bqUlYuSAyg49/WqcTFtsDvsiZwWOM47ZrV1Cy+zbVGWRUAVjQAjQyGaMkfdAyakv5gtsFB5YDkGqMhLKp3NyoPWpbgf8S6H2OST171GvUqG5DbSlN24/Kw25J79qin/wBcfwohVH8wMMkLkVGetUtxzXU2Kqpzq0Y/21qsu9PuOR+NWdMVp9Vh3nkHcfwFaSldHNThZ3uWbq4canOi7VAY8qOT+NZ94SZ8k5OKtXHGq3H++386qXf+uH0rlv8AvDu/5dBJ1/A0Tf6lfr/Sn+WX5yFUA5Y9BUbnzmWKIcdie/vWyMmzT8tZPD8IPUNkfmRWvsjktCqj7qFRxyOO1VLKAm1jgbDIg544NW1tvLOYXK+x5oJG6dGkVnEq7dwUbiOua5XUDm/nP+2a7EKMhiBu9QK42+/4/wC4/wCujfzpiIK6y2231mkV5FiRex4J9xXJjqKs+ZIGDCRtw53Z5zQBsXmmsMeSQAvY96qXSFLSJXIyB2rbtXF1YxOTlivJ9+9Ub61Dbtw5wcc8ZqSlo7mdAB9ic45wapHrV3cIImgkUo2DjPeqR61ME03c1qtNKxNVnSX2arCfU4/MVVqfTv8AkKQf74rZnJDcluv+Qtcf7xqvcKvmBnOFx0HU1JqUnl6ncFcZ3Gqaq80mByxrBQfPzHS5rk5RcvM+1R1PA9K0LKz3uETk/wATGm21vuYRQjcT1Pr/APWretoFt4gq8nufU1oQSQxLDGEToP1qSm0tAhk8y28DyucKgzXEu5d2durHJruGVXXDqGHoRms3ULWNriAeWuxjtIAx3pOVlcqEeZ2OZVWdsIpY+gGak8wfjXQ6dbrb6lOsa7VAP8+K0wijoq/lQpXFKPK7GdoXmraMskbIA2V3DGc1fljEi4PWn0hpiMuaIICkyb4vfqv/ANasq8sTb/vIzviPQ+ldLIgkX37Gs6RGgLYXdGfvR/1H+FAzEVgasaYM6pB/v0XdoEHn253Qn0/hpdJ/5CkGf71O9yFGzE1KMyarOqDkt/k0sUeMRxDcW4J/vf8A1qv6hbytdSNHA+1iNzYzu/8ArVasbPyF3uP3h/8AHalloks7UW0WOrn7x/pVmm0tAC0uabS0ALVe+IWAStgeU4b9anqvfQvcWUsSHDMOKHqCdncbBLG2pXKKDuCqT71bzXPKRAxL7i5QIeoKkdCP8KgW4uI92JDhuoIyD+FFrA3c6ikrmIrqeBt0chH+z2/KrsWsyrxNGG914NMDZqOWMOPQjoaqR6vav94tGf8AaFW45Y5V3Rurj1BzSAzpI3hdniXIP34/X3HvUdlbJ/aENxb8xluV/unFakke8cdR0qvawbL7eAVzncOx96AZ/9k=\"\n  },\n  {\n    \"name\": \"graffiti print\",\n    \"prompt\": \"graffiti print {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"graphic print\",\n    \"prompt\": \"graphic print {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"graphite technique\",\n    \"prompt\": \"graphite technique {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"grimdark style\",\n    \"prompt\": \"grimdark style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"grotesque style\",\n    \"prompt\": \"grotesque style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"grunge style\",\n    \"prompt\": \"grunge style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDmBkHIrcsbj7RCM/fXg1h1Nazm3mDjp3FAmdRZyYJjP4VdXrWTG4IEiH3FacMgkQMKYhL9XeFAjYO6pLIN9sTJBG2or4v5KCMjdu71Vm1AWsqovzSY59qQ0rs6TI9aWucjjuZomvIzuOflQn71WtG1X7TIYJeH7A9fcUirGzWSCfPPJ6mtasna3nM2MDJ5zTRLMDWLu4jnRUmdQQeh96zTdXLf8tZD+NXNcI+0pgg/Ken1rPCuBlSBn3piNTSRIwd5GYgcAE1FrU2GEQPXk1esF8mxBkPONxrBuZTPcPIe54pDRFTo0MjgCm1saPZGRg5HWplKyLirso39o1tcFccHpVYjBwa7LVLJLi5hYAfe5H4VzGqQ/Z7woBwBUxlfQco21JtMutp8lzwfu1t2cmx9p6GuTUkEEdRW/p9wJ4sk/MOtaGbNW8kEcW89EG7Jrl281pg7Al5eQB1rc1KTdZbTySeFHesiObybi3DkDY3LelJlpG5ZXl4tg7fZQqRJ8q4wW9qxBesNUFwE8ptwJH862NQvXZYvL8xVH3ijcN+lYV9ObnUGcfTikhs7wThrcSDuOlULmQhSgGS4NCOf7PhI74BFRXzMihgxXg496ozZg3Om3U8gwgGB0JqsumT+YA23GecGt0XiLGCz5fbziqsExabaV2g80D1lqRapN5FoIlPLDH4VhVc1KbzrpsH5V4FU8ZOKARYtbZp95A4UE12GmQLb2aORyVGKy9Bth/Z00rjswrSSUtax4/uisJO7NUrIHcm7hB/vf0rJ1O0FzrYj6ZUVoM+b6H/e/pUNyca8p/2B/OgZh32mT2buSh8sH72OKitJzBMGHTuK6m5vVaSS1mQMhwBWJfaNJZfvmw0Oc/Ke1aKXcza7Fya4j+zoxOVPeshgJbpUTnJB4q3JOhtCqqqKP4R2/Gm6UkM1+qhsfLxjjmrZKfQddiaAGNJXCH+EGq+kxxSXapK21wwIz0PtXRXWnIQWJLfXiubkiVJX2cgMRUxKkdhKixWsaKeAQPrVe9Csvzk8KcD1rAj1FoMDGQpHFbd4wdFZJQuVyo/vVRBgwwGW4dugC9Kkld4U8wntgVKk8UMDGThyD0rMluGkjAJ4HSkxpkJyzY7k1Zt7Yi5KsPu1Z0KyW6uDJJ9yPn6mrM4X+1Z9owM1EpdC4rqXNOYrpUijoN1T22PskZP90VWsTjTZv+BU6CTFqg/2RUFjFkzfw/739KS+fbrSn/YH86rwsft0Wf71GpvjVlP+yKqxNwu33Xbn6U2+vHOmGIsTufHPpTJGzKx+lVr5gYkXPO4nFWkRcqxnc204PpmtCyVY7uFsYUnafxrPgkMcpwQAwwSRVlrhcIBwysCQaok6W/VVtHZi3yDd179q5k2oJ3NgYGSTV691Z7i22Dywjvwo+9gHqfyrPln3gleFHU+tAFd33MeMD0rfzvsbRtwDiLgmudByxPStZWUWto/O1QQc+ueaBj9PsRcS+ZPloypLY7VSltUN00du29ApbNXWnt1QpFIyu4x8p4x3qOSVEvAIFChYtpI71Ll0saKKtcs+HR+6k/3qbOcalP8AWl0FtsMn+9UNy3/EwmPvUtaiT0LVm/8AxL5R/vU2F/3Cj/ZFQW0qraSKTyd2KZHOFjC4ydvWlYdxLNj9si/3hUmpvjU1P+yKitV23cQ96ZrEhXUMjsoq+pHQnhzLdYCbiSPlFV9UI+1hVXGOo9KdDqYWMKsQR8ffXqapytvl3HOSOp5zTsK5Efv1K+XkRR1qH+KrdihlvE4BwcnNMRLqdqtrHAAoEkgLMRVMsViUe+a19eBaSJhyACoNYznpQAnfPrzWxYQC707a7/6tz+ArJiiklk2xqWb0FXjFd2NuT0DjJA5x9aBhc7I7hEypWM43AYzTJZENySnTbVOQsTlj1qVZSyqmAAo696mxTk3uaejHEEn+9UFy3+nS/WpNJP8Ao8n1qC5OL2T607CGI2Iz/wACphOTjOPlqWFQYHJ6jNRiMsMjoVxQIuQjF9F9aq6x/wAf7fQVdUYvovrVHVj/AKe30FHUCtAAZlB6V0dosQ08K3lk4OQea5uL/WDFbsdmkekTSSRhpTyDjn2ovYLXMOTBlfaAozwB2rT0SINLvbIz90+/pWUB271uaQAsJ7qTyD2PqKYifX1U2UXy4KvXOtiuh1WTNiyscnPBrnyOcdaAHQSeTMr4Jx1A710em+XfwzMVwuNpXqT75rmwu75VBJ7+1dJoEYiikUty2GFAFHUdNWNFWLOdwxn6VmMhjnZWBBA6GuvurSO4KlnYFTkY9aq3enwT8v8Af/vCgDJ0r/j3k+tRXQ/0yT61ahiFl5sbtweVPrVefm6k+tIYW65tJD9aSEfuRUtqP9Ck/GkgH7haAG3FyI7hWTDMvakWxlvJDLOdue1XbWyjhGR8zeprRigzy3T0piuZtvo8UbeYdzY9elSpdvMywfZmETNw+OuK1sBUJIwAM1TS5DtsiRm2ZII/i4ycUmNHLyIChkyQxY8GpYbi5g2qshC46Zp3nsipFPERg5ORzUxktJZxkbVA+lMCq93cyKVkkJU9RmnRW251QPkt2A5+lOItQsm0Ek8LmrUM8v2qNbaFm2AABRQIcIjbSYihA2nDEsCan0p3TDLGSGJXeT269Ko3sl1FO7TK6bjwGq1p92BKIgvyliwH9KTKSNdpD61E8hq20S1E0S0yCjcQLcR4YE+47VmS2z25LqS6989RW8B5Z46Go54dw3IPqKAMi0cGzkAPPPFLb/6haLmzYZe3O1j1X1qO2mXaIm+Vh2NAzchjCcnk1ZWq4JxxjPvUsZf+Lb+FMRYGD1rNgs57a+Ei/PHk8A+vFaAOPrTxSGmZevQK4t5XxtVtrE+h/wD1VlXNlbqu+FwPbdW7rFubnTZUB5HzAfSuMpWGma2nWkM8TZyWWVRkHtg/4V0cD20EflxvEvsCK4+J9thMoJBaROh9mqHoOKLDudeii4vyTgrGp6jPJ4/xqC20cw3nnNIGAO7gYz7VH4YVvsksjOSGfAB7Y/8A11tE0JCbI3NRMakaoSePpTJInNNin8s7W5WiUkfdGfxqE5I+YYP1oAW42Mdyde4rOurdZhuHDjv61d68dxUc6GNdxGQfQZoA/9k=\"\n  },\n  {\n    \"name\": \"halftone texture\",\n    \"prompt\": \"halftone texture {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"hologram\",\n    \"prompt\": \"hologram {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"horror style\",\n    \"prompt\": \"horror style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"hyperrealistic painting\",\n    \"prompt\": \"hyperrealistic painting {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"icon style\",\n    \"prompt\": \"icon style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"impasto art\",\n    \"prompt\": \"impasto art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"impressionism style\",\n    \"prompt\": \"impressionism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"ink wash art\",\n    \"prompt\": \"ink wash art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"inktober drawing\",\n    \"prompt\": \"inktober drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"ironpunk style\",\n    \"prompt\": \"ironpunk style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"isometric art\",\n    \"prompt\": \"isometric art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"ivory carving technique\",\n    \"prompt\": \"ivory carving technique {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"iznik tiles pattern\",\n    \"prompt\": \"iznik tiles pattern {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"japanese vintage poster print\",\n    \"prompt\": \"japanese vintage poster print {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"kachina doll art\",\n    \"prompt\": \"kachina doll art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"kalighat painting\",\n    \"prompt\": \"kalighat painting {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"kinetic art style\",\n    \"prompt\": \"kinetic art style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"kintsugi texture\",\n    \"prompt\": \"kintsugi texture {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"kirigami art\",\n    \"prompt\": \"kirigami art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"knitted art\",\n    \"prompt\": \"knitted art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDMXPI+n86eGBcAdQ+D+VQwk7EJPP8AOnqf3mf9v+lSaFtVV12McDHJ9ua09LUrYx8/dLA/nWUhyAR6f41t2WPsvHAYnj0OKaJki0pLKGHQjNUtYz/ZsmfVf51etubaP/dFU9bAGlyn3X+YrS5jbU5ofX/x008ZAwG6/wCyaiB9/wBTTgR/kmmVYmGcYz/46a3dPJ+yoD2ArAUj/JNdBp//AB6p9BTRMizRS0AgcnoKZBSvZG3Kq5CAZY9jVEoSRk9sD8atXZJwBxlqhcj72O3FYSd2dEVZCNgHjoCAKrOWE0uwHOfwFTS/My84G4E1AD+/bn3IqSyhHjykB9RUnR1x/fqItkoPelU/OT/tj+VMC5EflH0GP1ra08/uQvuSPrWCj4XPqP6Gt7TcG0BPZiR+VNClsNsryUzpAceWF9OelSa4wGlS/Vf5iqFkSdQPOcL/AEq5rYP9kSsT/d/mKtGTOZEnuf8AvqnCT3P/AH1UW73/AFpQ/v8A+PUDLAf3/wDHq6HTubVP90VzSv7/APj1dLpnNon+6KpES2LdEnEefehztQsBnAqs10zLgqg/4HTbFFFeY/Ng+v8AWqzsQMjsOBU0zADJ789arn5nX8v0rB7nQtg4Eg4ztYn9Krg/6SVHbkn3p0r4/MZqLeEuXJ9KQynG3yKSfm7UqjBB9XqMYKRj3p+7LfRsUwJ0OVA9Rx+tb+ltm1A77yR+lc9GcDn0/oa3NM/490PPEhOfwoQpbBpwP205I2lSMd6n1vI0aUHoNv8AMVDYKBcBhwSp5z7VNrmf7FmJ6/L/ADFWjNnJbvf9acG9/wBaj3e/60ob3/WmBOre/wCtdPpXNmn+7XKq3v8ArXVaOR9hQn+7/WmiZFqbiI1nce36VcvJlEYweM4/SsqSQDc28AZ67BQ3qCWgkh3deg6VGzbVJ7g5FOJBjB7cVEfmkA9eB+VYs2QABnAJzzk/Sof+W5PrTmk2NnPOAPxqMZ+0568UDK7xldhTlQfypoPz/wDA6s7SvI5FRvECQycc5IpiBTke+Oa3NJkAgCN0dzj2OBWAh4Hbj+hrb0wZt1OPuOTn8KED2HaexN6UbO3BA/Km+IZCIVUHgryM+9Fh/wAfoOexP6VBrZUwRt0+U/8AoVUTYws+/wCtTWtvNdzCKBdznnrgD61Bn/Oa1NBuFjumQnBkHBz6UxEN3Y3Fg6rcKBu+6Q2Qa3NKuAdNdVzujTn061X165Q20UO7Llt4Geg5FM0c/wCiXXf92P500yWWZZd8ILH+I9sdqjRhsGBUWchV6fNTt3J+pqJPUuK0Ipjk8dqjJCEY7UsjDNR8kn1x/SpLGyfMcd2FCsRJjjHNBIDqW9BTMksemCelADWL27hTyKczI65B2nIzTLh/NKlQeKI15x6kUySWSMPnHDevrWjprvEigdGkIYH6CqLSKshSQYGeCO1XrPYEXc3Rzhu30PpQDCxYG+GMjIOB+FQa6QIkHThh+tS2iyJfAOMYU8fhVbXG/dRfQ/zFMRkRIZZUjB5Zgo/Gu1sNPsIY/kiXK/L5jH5m9TXG2WTewY6+Yv8AOt+GOWZ3BcgKxFDYjZu9PsZ4P3sYYDjcDyufSsOxha2bUIGbmNcZ9Rmr00Ulvabg7EMyqc/Wq0six31/5jAF4FxnucU0xMqbuRj+/S7uT9areZnB7bs0/d1+tS9y0DnJ/H+tA+Xkdf8A61QyT7TtXkj0pWJKYPQpmkMJm2KCPmPA5qPZm5ywOAOPTNLO21FG0HKgio0cyXKFvXFOwnJbEa3GMbh+VWY3DYx6is8g5GRV9Bgj8KYiSb55TxwMirVszRiIIcBmIYdQRxVKRSJjgnljVyA8Q/75/lQAyFjPeODlcdNpqHUctaxksTtA6+9OtG23kh9R/SnyCOSNASPurlW/xoAi8PRLJqYeTG2JS3Pr0FdLDGqJnHLHca5fTrm3tRdeahJeMqmOxroIZWmA2+lJgaAVJojG/Rqxddh2NDMuAzfunyPTvWvFG6DLGsrWZYnDASHzFl5Xt92ncRQtwoVweMp1qrOPLkRF6MoJzU8Dk7h/s1WuCDNHknOwcY9qRQ8mNV4GcDtUmDhQw25TB3cYphyyA8DIPAGB0prjckZPJ2nrQA25A+TDAjaeRUcQxIrZ5BFOP+ph+hqISHeo96aeliWtbk81i6FghEmzrtPIpd4U5J4GKsxxQRvvjWRSep8zk/pTrhbUqZDEofryx596BlUSB5c89SfzrSESR28TeYC/3wp4zVezlt8nFpE5H94H+tLLdGachQq+XwAowFFAEUKlLhmbIB6Eg4qR7VxIEJHCjnsaZ9rkj+YSHJHc+tWba1vL0lx8kZ/jegCj9gzIEz8zNjjnmtzTUNuQsh4UYJPFXLWzitkAA3N3Yjqao627xeW8TbGbIJA5pMErmyZEZflYH2rkZoZZbuZ3ChnJbGe2a3NOljeQhbkylRkoW3YNVdS0y4mvnuLdwQ6gbc4x2x/WhO6BqzMyKFjk5GNucg1XuIysy7gAQoB5rT/s6/tIsKolUnnbyRVBp5BMDIhDDswxz+NMNyRotkfzMNyjJHpn3qv5gIRR2yKvXN6Uh4C4Y9lHTH0qnZos7u0hJweAOKA1Fjt5JbZXVflQHJJqoEO/OcYOa2IJI0BCKCoyu0sce+arzzQyH9xFEoHXA7/jQAvmBR1AqpM4cNKPmwdox/n3qGI3ErfIuc962NN0mWJczsFB/hxk0AZKTSrxHC3PsTVy206/uDuWLyg3V5OP0ro4baGLlEGfXvU4H1oAzrLRIoWD3Dee/oR8o/CtccAAdKaB70o9R0oAf9axPFGwWlvkc+bkfTHNW7zfE/mG7kXPRUjzxWNO93cshmLSBDkBhxQBd0OJE1fUdpBAbA+m41uVzdm1zBcSTRx/NL1+Xpk54rZg8yT5jPKT3BjCj+VAFqoLi3huU2zxq47Z7VNkEZBpM54PWgDDufD0b5ME7r/styKzZNNvbHlIzIM8kV1hHtTSKAOJaeSAkbcZ5OR3pglWM4wCCAa7OW3hmGJI1b6jmsy50GF8mLaM9iP60Af/2Q==\"\n  },\n  {\n    \"name\": \"letterism style\",\n    \"prompt\": \"letterism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"letterpress print\",\n    \"prompt\": \"letterpress print {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"linocut drawing\",\n    \"prompt\": \"linocut drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"linocut technique\",\n    \"prompt\": \"linocut technique {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"lithography print\",\n    \"prompt\": \"lithography print {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"loose sketching drawing\",\n    \"prompt\": \"loose sketching drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"low-poly drawing\",\n    \"prompt\": \"low-poly drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwCEVesD8r/WqAq1ZzIjGNmwzcjPekNFm5g8z50HzDqPWq9nP9nl2t/q2P5GrwNV7q3DAug57igC1OBtB9TUkLZT6VnJMzW6q3VGGD6irkDgrkdCKQzQhcnj0qaqluetWx0poTEk/wBW30NZE75U4+laV0cQGsidv0oY0QStwBUDNTpG+UVWkkwKBMSaTHTrVY0rHPJqNmx9aYgJxyaI4nnfaq59qntrJ5yGf5U9f8K1IokiXai4H86Q0ikKrXZ+ZSOwNOEzr/rI/wAVpXUTruT5sDGR2piLNjqRACXHQcB/8a1lYEAg5B71z8MfyuD7VYgnktjgfNH/AHfT6UhmnIipkqOGPIp0HyKec1WnuFkgjeJs4fkf0p8MmUyvT+VAzStz8pNXlOVFZtsw2nnisefxHMl24hK+QDgDHJ980ITOivziEfWsW4fIAH41EniFbgmKfhSflfGMexpZHBI285oY0V53GAM1UZsmpbobJdoOcAVFHFJO+2MfU9hQIjyWbaoyxq/a2AXDz8n+7/jU9vbR268ct3Y0ye+jiyE+Zv0oGkWSQq5JAAqpNfquREMn1PSs24vXkb5iT7dhVZnZ+p/CiwXLaXinqVP6Vbt7tIyTjg9RWN5XoRSqjrnkj05pknRFbecbsFCe4qN7Z15UiRfUVnQ3mxQrBuPxqzHfoOd+0+4IpDJoombfsHIOSMVPAditxzUMd+iuJN4PY81NPcRyIGiYB88j1FAF2ELLA6MMqwwRXO6xpyWWGhckN/AeoH1q1JqzwKY4kw/csOn4VXiuhdEpcHdIe570AaVnbtaaaIzIJEfEgwuOoFMVlVTI/AXgVBDcOu23JymCAPSobhzISp4AHA9KAQ9GF5dnPCgZ4qzLdwWqbVxkdhWYJBFna2cjBxVeT52LdOKB3LM+oSTHAOF9B0qtkswyaYo+apQpyKBDJvv0zNPn++fpUdMCUdBUsvyheOtMCEAA1bnt2kVNg7c0gKmc44pQM8YqcWbj7zChrfYAQck0wEjX9wTU0RVhtOATyKfHAREVkIXP406OCNGzyTjvSAhmhiWKWdiWIGFHbNZskEkCRueki7ga17hBPJHbKMJ958elQTyC5mGAPLX5UHbFMRUsX33gMmW4JH1qzMVIyOKjC7XVh1iP5r/9apJADQMrlt34GmnofpTiuOlNOR2oAan36nHOKgU4bNTqwJFICOf/AFh+lQ1PP/rD9BUOKYF90yQFGT7VeVTgZ4qJp44+EGT6CozJJJ1O0egpATu0a8E5PoKjLbuihR+tMAA6U6mIcKcWIBIGT2FMzUg/dgE/ePQenvQBSaZ4bWRnyJpW247gCmWn3M+lWZYkmHzjnse4qDyJUkSK32tuP8XGKAGzEq5I7jFTKpMalxhsc1LLaGNgk/LgZ46UYAGB0FAFdoxURQjpVvaWOAMmm4FAFMoCcHg0hjdTkdqtmMEcim7Xj+78w9DQBUdizZbrSgCriiGXgja3oaR7EjlDQA9VC9KdRRQAtFJRnFAEyAKvmOMj+Ff7x/wphYsxYnJNM3DNLmgBc1HHMkkq7D8y8/rTyeD9Kp6ehG+U9/lFIadjWvriK4MLowLFPmHpz/8ArqrmqUJIuSp9TVyhKwN3dwzzkVIw8xTIv3h98f1qOimISiiigBrxq45H40iyywdDvT0NPooAKWkooAWkPIpaKAIHyKZ5jL0NWcVG8Kt04NAEL3RCMCOSMVNblBEqKegqCS3bHIyKhw0XTIxQBZI2331Gas1TjmEs0ZPDDINW6ACiiigAooooAKKKKACiiigAooooAKKKKACkZVYYIzS0UAVjabZVeM9+RVkUUUAFFFFABRRRQAUUUUAf/9k=\"\n  },\n  {\n    \"name\": \"made of agate\",\n    \"prompt\": \"made of agate {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"made of beads\",\n    \"prompt\": \"made of beads {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"made of felt\",\n    \"prompt\": \"made of felt {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"made of glass\",\n    \"prompt\": \"made of glass {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwCxb3yzwq/fuPQ0+3uFWZ4+x+Yf1rnbG5ZGKZ61Ze5kSQMeqmruZcruRTtummI6Fqu6MP8AS1P+yazi27zD64NaOin/AEtP900ijpbb/WH6VarNlYpypIq9bvvhUnrSGmSVFcSGKEuoyRUtVr//AI9HoBlOa8lkjaPao3DFc9PeKNyAHIOK0ZnP2hADgYyTWDOwMzkHPzGi+oW0uWLOUC4jY9A4NdC18DKMHjFcxa/6xf8AeFbBVDNgtt4obsHLclubzznEIPyDl/f2okuVC5PAFJDZZXg9TnPrWZqs6xsYIyCR94iquRboVL67a4mJ7dAPQVVooqTRKwKSCCOtXg5miDd14NVZYnt5SrqVZTgg9qdHIVJIzg8GgGS9N/4VpaL/AMfif7prMJyGP0rT0T/j7T6GmSzbuThR9au2X/HsPrVG84RfrV2w/wCPVfqaXQFuWKr3/wDx5vViq9//AMeb0Ib2Oc1CUxwsV5YjAwKxNpX7wIPvXRseeSx/KsjVR/pY/wB0U2hJ9CG3GMN6HJqy9wS+4Dg0yAKIHyOaZMNgUnuM0irl+fUTDZLtPzsMD2rCYlmJPJNSsxmbLHCj9BURxnjp2oElYSp7W0luphHEhZj2/qas6ZpU19J8o2oPvOeg/wATXXWlrbafBsiAH95j1Y1LkkWlcp6vp0d+hdQFmUdT39jXIyxtESpyB3Fdd9oS5j2Fyrj+IdqqLpKSzvFMQxMRYMvrms4T6MqUbamLp6JcSGGR9pI+U+9XNOkNtcjI3Fc8CsuSN4JeCQQeD9Kv20peXzHIBIJNaq9/Ih2sav8AaSXbiMIVI55rZ08j7MBnnJrkon8q5WQYwTXT6ccyvjptquhFrM0K5yXxHDdXD2awsqs21ZM9T9K2NTvUsLJ5pDjsvua8+hl8u6SU/wALbqRR0hkVnIXdx6isu/bddZPoKvtJ5yCZGDIwrOucvcgDkmjqJbD0P7siq0j5OBzjqat3QSKz2KcvwWNZoyeBSTuU4uLsxSxI2jpWtpmhyXSGaUmOIDIPdvpUmjaapQ3Myb8H5EI6+9dG86Im1+CRjYKzlNLQpRbGWpC2kaxKAAvbgVHLNDCSzsJH9M8Cs437fZkjBKgDGB3qlPMeDKM5X5ccVlyts1VkiaHfHPKU5CYyTVgXLw3iMCQduD9Kz1lYxStu5YAGkST5EdyT8taKN3dkzfLoRXsqSIEC8hjz+Jq/plvBMtuhALMG31kSHn8f61esnxF8r7XCk8HkVfL2M+Ya0Bguntn/AITlT6it6yYi5QZPasaaU3cas423MYzn+8K1LBw1zH68ZqkTN3sSeJo/PsYIc4Mk6gfka46ztzc3sMHTe4U+3rXSeIbpluzIvK2qAL/10bv+A5rmIZngnSaM4dGDA+9MDf0y2E9kBgbUJBJ+tJdwLZzskeHlPC47Cm2lwoM/lKVScCWNewPQj8DUMt2kEvLF5i3ztjOB6Vm+ZvyNYNRV+pYvLD7PpSyNy0hGSepqvpkUG93lAPynAPrV3U5RLpsbKcqcYNZlsTg/jUq8og9JG5bXYh0yNYxhtnJqnFcTO/yfOx7VFG4+zKCf4TVrRiFuGIX+CpklFNscXd2RnlsIuc9eavxQxHSzIy5kIOCe1Z833GPoamhvMWnlbckLySadRNpcoQau7kEjNsXIHPPApFG5Quf4atvp12Y0IgY9unSmR2k4aNTE25x8o9a1Ri3cz2xnmpLeTDMeuEIpsylSwI6H+tFsuZCDwDxTAS2mPmBWJIJ9elbdkzLfR46d6wwnlyrt5IY1rWkwF0uRyAKaEx+vW6pYTkOzn7R5hJ9+MVzNdXfSCXzFkQmOQZweM1z0SxCO3JTJMpDZ7jigEXbdfKgs2yQckn6H/IqhOSZnJ6kmteWKP5eGAAwAO3pVG9UNcbsdQD+tAyzI5OjwgiqUbkDg45rVv0LWoVB0rJQGoiUy0q4jDZOcYAp0MjhiI2Knb1Bp628zwxusbFSCMgU6KzuArN5L5A/u+1Nq5KdikSSrZP4U+M/uG9R6VIbK4ERcwuASBkjv2qZtOuYrcsY36c8dKGNGt5EwHz6lO2P7sYFR+UAysJ7lmQYUs6riqMy3CoDJJGMjOACai2qANzs2R2O3+VQrvqU0l0JprRXOXkVVH+0CT+NWbNLWJCCVlYnIOKyGlEZyqr9epqaBpHYOG5wT16VVhbmjaRwrOGO2QYI246HdmtNIYGfPkjJ4rmoLh/MDBu57Vs2k7NcKm7k+1VYlmk8ETABo1IHArmorNVkt02j5btwfoP8A9Vbc99HDciB2O8kAALWJuVbpMTZxdyHOOvFIDZdFx8u0fhmsvUVzIAduQmOF/wBoVMZXw2G/Ss66uG8394TkADp75qdbl9DTu23RBJgU91Gaora2u7K3OGznBqS9eQWqSsQd3aqKTs4wcY9DzSjqhy0ZsRECMRpqTIASdvlggZqYJdlSI9TBB9Y6yEEW0fJtOM5ViKmg8xjiOeVCBnkBqHddRJJlt7bUGTZ9uhYZBweOR07UsqazIhQywOD1wwqsLi62ri4hO7sylf5U1zcqSzRhwO8c9LmYcq7FVpCw9sUi5J6+9SSghVOQBtwRjGKhDjJwegqo7DluQygZGDnirVn2AGflOaoPLk1aSdUCtGvRcHPrVEih8SAAc9Mela+nZN0pAzgViRZaTjkk810OlxfOXz90YxTJkypfoI9dSTBIYg/jVHdDvTYp/wCPlyCfpWxrlwI7FzGwEm4LkHkZrlg7DGGIwcjnvQBsGYKSD3PpUFxMkk5+UL7etRh94izySMmoLg/vaXL1KUmtC/ezLJZRKCPl4x3FU4EBBOegpskpNuF7g1Ek7pnGOfapUbKyKk03cv7cRgg84ohkMRJJJBGOtLb3KzgRugHH3lqd7ZgC2MrjqKlvoxpdUUSeOtWUDm1LCTC4+7VZVLdBTz5oixk7cd6ctRRLV0nlxMwXdjvWS0mBx1NXNRvhIdkf3B39azc5NOCaWopu70HDk1ctYvOfZnGR1qovStDTf9b+HWtCGSC0Fu4Icmt3Th/o5OOSevrWXcdVrU0//j1HPehkmbrduqkTE/LKQrj3AODWAgDOoJwCeTXU61bPc2WIzyjbsetcqoJYAdTQUi9Dyu8bQCMAHsKhuf8AW/hUrhoIUUHkdeKquxc5PWgEPXBU5qJhTgeKGoAYrMjZU4rXs9T3xGKY4OOGrII/Km5weKmUU9yk2jfhiUwKT8px17Go5IXVTjkex4qvYaj5YEUvKevpWmoGN8TcH8QawleLNotNH//Z\"\n  },\n  {\n    \"name\": \"made of iridescent foil\",\n    \"prompt\": \"made of iridescent foil {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"made of ivory\",\n    \"prompt\": \"made of ivory {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"made of lace\",\n    \"prompt\": \"made of lace {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"made of lapidary\",\n    \"prompt\": \"made of lapidary {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"made of marble\",\n    \"prompt\": \"made of marble {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"made of metal\",\n    \"prompt\": \"made of metal {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"made of mosaic\",\n    \"prompt\": \"made of mosaic {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"made of sand\",\n    \"prompt\": \"made of sand {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"made of stone\",\n    \"prompt\": \"made of stone {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"made of textile\",\n    \"prompt\": \"made of textile {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"made of wood\",\n    \"prompt\": \"made of wood {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"mannerism style\",\n    \"prompt\": \"mannerism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"marble sculpture\",\n    \"prompt\": \"marble sculpture {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"marquetry technique\",\n    \"prompt\": \"marquetry technique {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"maximalism style\",\n    \"prompt\": \"maximalism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"medieval art\",\n    \"prompt\": \"medieval art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"medieval engraving\",\n    \"prompt\": \"medieval engraving {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"millefiori glass technique\",\n    \"prompt\": \"millefiori glass technique {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"minimalism style\",\n    \"prompt\": \"minimalism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"modernism style\",\n    \"prompt\": \"modernism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"monotype print\",\n    \"prompt\": \"monotype print {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"mosaic art\",\n    \"prompt\": \"mosaic art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDJtbNLi2II5xwaoyRS2VyAeGByD2IrZ07iEds9DU1/Ak8W115xwfSnYVzMinR5FYkLk9CelSIP9Im+o/lVJ4tsrL6GrsCuHk8wYbIBB+lQ0Wncu2Cg6qqMSQQw5/3RWtMuJoFHbIrGt8m7z3Mbn/x2tidwstuxOBzk/hSQ2WSdzcZ9qCnHv/nFOjZHTKEMPUGnVnOq09ASRCR7D8qqX+WuLZQDgtz6CtErkVXuHjiUB2AZvuj1NVGpzKzE4oqXcUdvF8oIG7J79qp28iyJIyHI8w/yFWrknzZQSSNwIHpxWZEqhXOwEmRue/Wixa2LI6mo5pVhiaR+gH50kGfm5J54rL1S582XykPyJ19zQkbOXLG5TmlaaVpH6sadDEW+Y8KOppbe3aZ8dh1NWX27ljT7uR+PvWhymppjxrEiOwDMPlz3q9IuVNYUqn7NAR71atNSIAiuDx0D/wCNUiWUZ123EoPrXQapZ4hjvYxyEUSgdxjr+FYesxrvWRcc+ldBo2qpqFoI3AE0Qw6dmXGM0mNGKMxykqTzkDn1rTlnM4VWTbhWxyDniqepWbWVzsTmJuYyfT0/CnWLmSZElHABBPtUlmhYuYrdMcDHP51pRusgHIB7is6RVjYKhwuODT/u8rww5OOxrmnrJm6heKNLiszVCGntwDkqxzVuK5DgrJhW7e9U1VGBZzhgeAacNzOUGk7lO4uWbewTG4jHPtTLiIW8cUYOcAnPrzUDu0lwkOOByT6UXdwHcNncMYHtW1tSUyGe5+z2p2n945wv+NZsELTSBQMk1NcIZZlIycgYFWVXyFEMI3TPwcdvaqQpO4khWNRBDyehI7mrltY+TE0sv+sIOB6f/Xp0cUOmRiSf57hhwo7f59aghnlubsvIeithR0XimSOSHzbSFe//ANaqhiJyR056Vp2jCO2icjIXnj6UxYCtluIydxH609lcjeVkY1yWEIUkkZHB7VDb3ElrOk0LFXQ5BFX9SiwQv+0P5VnFQJNvvQUdna3FvrenNu+Rl+ZwOsbeo9qreWLaORo3BEifuz696zoIFs43ubSZ1lUYKsQQwPUGmafcySW5tZekRBU9xntS0K1bsjTheR4kaQ7iRzVnecEsv49KqwZHyFtxHtiriAvweCDjrSjSjK9yp1pQUUuwwsDzk57nvVa6Tc0RxnDjoKueXudwTjAHaqFxloiyrkqevp71Lpckk0NVueDTIr947dJPKj2OxGSCTxVSeHyNOQt99ny3tx0q6I4rgiZmJCNwD0bA/wATVG/nNxEfLY+Wj4+p9acXcl6DYCwtw0a7nZ9i+3AqzG6WIKxYkuW+8/UL7CorFC9ljJB808j/AHatWUCoc4yfWqJZAIGOZbhjz1J6mpLZwZtqLtXaevU8VZviiwlCfmOCBVWzH7//AIC38qzlKzsdVKknSc2PjIFtFkcBQakjJLbFJ2k9Kijz9mTpgoBVi1jdyGByA3Nbzko03c86Kbqq3coamCXH++P5VluMXH41s6muJVH+2P5VkTDFyfrWVN3imdM/iZqXcS7bjbwF24/Gooh5TK7HGduf51o30Q8idv74B/I1nktNDuPX5enspojJTSYtYs2ZeLtZFACy4yw6A9jUqkeYokHA6+9ZenysyKj5KnsewOK1FG8gnsMZFbQfYzqdLj3GcurbucD2rKllM2YkOMHJz0/zxV9yoyAwDVmEuodSgBGW5PWk5KTXYajaDfXQhQtL/oaNg8sxHp6VDtC2sigdJB/KrMESrqS84EkG4+xIpLwAefj++h/8drJK2xo3fVj9OX/Rh/12P/oNOSVovOcYJXpn60ad/wAe4/67f+ymq1xzI3P8Rp2basVBpJpgHeUlnYsSepqxZkfaQM/wn+VVk/1TVPYf8fIHsf5VLgnJvsbVa7hCMEt0PQf6PGxGRtAqzaSLDI5YkA9M1XiP+hxjnBxnFOCEkDuePxrSyqQcZbHnzfs5qUSPU2DSKwPBcYP4Vl3I/wBKf61evyBBGT2cfyNUrrAu5KmMVFWRte+rN27kU2cnzenFUbRdyAEZ6Z/I1Nd7lspiwwflPP1qoGeWPgkuWUcfjWdJWika1UuZ2J45UhVCCMhRnH4VesLhiZFckr29uKNO0vYQ8+Gk4wP7v+NXNRQpbAR/fLce/Ga1bcYu25lZSZlzyeTqCSOfkHBpryJLcybTkCJv0xVWV5JnVQOg5+lWL+ye0keWMfuipHHbpxWcE1GxpPRiRc6hCM4/0Yfypt4OZ+c/Mh/Q0wORcoycEW4H6UwEmCYt13r/ACNUT0LWm/8AHv8A9tv/AGU1VuBidz6k1Z07/UH/AK7D/wBBNN+yvcztsIwG5/OqTtJFQS5ZNkIwYTj8ansP+PofQ/yqK5hNtcmHcSvH4g1PaqFuEIz6UpWhdPqXOEqyUo9BIFLxQqO4FWYY8DcR92Qc0zTlBhjbuAKtuAqMR9atv3Gji5b1FcyNTBFtg9pP8ao3n/H4/wBB/KtDU8tbnAJO4fyqnewTG6LLE5BA5Cn0qI6pG8lZtGvqmx7Zo4n3SuFAUexqHRrS4jn3yoUA7HvS2VlKZFlk+UAg89TW7BHgB2/Cq2J3JYk2rz1qhqkpHIP3QF/Fuv6D9a0hWRqwVXSNe5Ln6nionsaU7cxjSyNE+9OMgg+4rp2jjurZThWVlB55zXK3Poa6yyKtZQMgABQdPpRHYqrqzCvLGWK68+MhUQYAHUCqshBtpDtUEsuSOM9e1dRNCJUPHNYN7ZukbLEpbLA49Kqxlcj07mA/9dR/6Cat2HEsufWs+3eS0XbIrIGbOQeelaVvPEcuQMHq6f1FDWqKUrRa7lXUo916Wz0A4psBxMv1FT30bGTzVG6MgYYciq8J/fL/ALwrnm25WZ6NNRVG67FjSstbrj0FXpHigX96cn+7WPaXJt7YbTtyMbj/AEqvLdM5OzI/2j1NdJ5Vtbl+e+AlBCgYP3QOa0MVzaAlhjkk10sCGZ8dB3NMGSwR7zkj5R+tXMj6U1QEXAwAKXPoM1NykhRyODVC9sXmlaZXBOMbSKv8D1oHsTSdmNNx1RySwPf3KpCMFsj5uOnWulsbd7W0SCRw7J3FZ1iqDV2jTHyGXJB9SK2MAE88fWjYbbkBPWoZ4Q4yv3v51MeeQOlHPfH4UXFY53U0JVGA4UnPtWekjxNuRip9q6e7gV1LLgnuPWufu7YxHcg+Q/pVXuTtoT298M/e8pz1/ut9RVnELSKXXyXzxt5VqxTUsF1JBxncnoe30pNJ7lKTjsyrGxZBkk/WpFBJAAyTUUAJUADJNatrbiIbn++f0pkk1hZEMCcbz/47W0kaKgRRn39ar2xjwVibP944qVbmFnCK4LE46d6zld6IuPKtWywoGOnAp+MDqM+nvUTTxwpud9uP50q3EbqHjYEE8fSjULxuI+8kjtx71EQ/ZSOM80q3cIl2mQDBweD1/wAintNF5ixucMxHGaevYWnczxZPHqXnwBVVlIYZ5LZqwiz/AMWCGPXPSrBeNF3MceXT1kR8FcbSP6Ua9g0va4yMSDAkYe9TAZHPWqkl7Ckm1mOc84GcetOa6ijQMzEqSOnelr2HddyV4wD0P+FUru2BBZFyD95amW7jlTcp6AlgaiW9t5TtDEHHAYd6n3k9ENuLWrMC6tjEdy8of0qqa6C88kuQnJ7jHFY1zB5Z3J93+VbGVz//2Q==\"\n  },\n  {\n    \"name\": \"mosaic texture\",\n    \"prompt\": \"mosaic texture {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDJ0hQus22O7U7VIDDdKQfkkckD0OeaZphxq1sf9qrWsSI7W4UMGDNuz060dQNlubFv+uZ/lUcH/ILsf+uin+dOdv8AQX/65n+VP07bLp0MbD5kUMvvUjIddg+0aMWHLRBXH5c/pXH13fDhInHBIVh/wCuJu4GtbuWBusbFaqImNijMsqovVjiuhjVYY0iXA6KMnAqhpdvtQzt1PC/SrkUs39oxmCMSbTgq3Q561nN80rGkVZXLV5Clq6ASq6t0+YZrB1ODypw6j5X/AJ1tavK9wyQx25jy3JKAEY7CqMq/arNkYYkShWTugabVmY1dZ4di8nR3l6NIWb8AMCuVRGkkWNR8zEKB712tvGILFoE6IrKPfg1pIzQ6E5e89yP/AEAVDYcadF/uVYYLBCxwS8oyfb5cVVs2/wCJdF/uVAzE0yBp7txnEaOGb354FM1ZQ2tXJPZqtaNIiS3W4HJK4x+NVdTOdXuT/tVfURBbSmG8ikABKnoafdvuljP+0TVdT+9WnysS6Z7GmB0MkmLGT/cP8qt6cudPgZT8yqD9evFZEsv+iyD/AGavW1wbextWXuVVh6gioYy/LyUmX+8Cf5VzfiGItfG4A4JCtj1xxXRSuPKDr9xsHFZ88SXX2uFiPmVSD6EDinETLtnZQLBG23dlQcHtUN6ht5PNSM7R/dFWrJv9BhJ4+QVOZUUcsKVkO5kG5e5b5IpCT1ODk/4VNIphRQ4UPKcdM7RV43EQH3hWJf6or3iqiErHxu+vemBHZ2AXxPtA/doPNH5cfrW3Gu3Mj8BWZv5iqykefFcIcbo9hI9eo/rU8J3R7mPyLk/WhiW4+Rco0j43EfkMH/Gsy1k/4l8Q/wBmrZuDLJOpxtQgL/3zn+tZNvLi0QelJDKVpJsnlOM8io7qUy300hAG45wKbGxEsmO5pjn989WIfbxNPdJGv3mzj8qZLxKAeqsQfrVrSAf7Ugzz1/kaqXOPtUhHXef50AXJJP3DD2q68uLGAf3Sv8qy2fMX1FWJpP3aL6Y/lSaGjZaY/ZMZ/u/yFUZLtUu7iM/eZBj34xTvMza/iv8AIVQuBu1YnrgClETOimJg0dcddgpfshmRWL4yM4p93H5qwQdmYZ+gFW8ADjtQBhX1q8Skq2RVCOPrnuBXQ3Ee9SK5+6tp4t/BdVBI57UDRdtJgkEiSNhF7+lWEnzaEA8bW/HjNZkFsbnS5nBHCZVR61OjYtiPQEf+O0mCJIJcPP7lf/QRWbE+IwKkgmxK3uR/KqobAPsTTSBkUXMxA6swAp9zE0F1JG33hjNMtsfa4yf+ei/zq1rAP9qz49R/IVQhdLONSiPpn+RqndAecWHUsf51a08/6bGR6H+VV7j76/7xpdQG5OzFTzHJHpxUJHFLckpdHB4OMj8KYF6KTNsR7j+lQPP5Wqbiu4Erkd6bHIAhX1pvD6rEDyDIo/WkgOxh3vO7yJtKfKBnPuf6VMTTYtwaQOMNvP5dv0pWHNIYxwCKqTKBzVpsngCq9yNqjPWgRmWMbwXkllGV2vlk3ehHSqzSYiYe5/lUkjM+sRiOQxNwocc496gv42tZ5InfeQc7v7wPegaKsTfvB9RUbEjcPc0zcTKEHAzz709h8zfU1QhLRR9oVj1Vh/OreqHOpzH1x/IVWtv9cf8AeFT6gf8ATpM+g/lS6gNsji7Q+x/lUE/3l+tOtpAtwpOcc0yY5KH3o6gK3SnX3/H3+A/lTW6Ulyczg/SmIUnFEUvk3cM7DcEcMR9DTSeKa/3KAOzs79Lu5l2MGGAykehq4elcfod35F6m44B+U/jXY9RStYd7kZYL1rOu5cseasXbGNxzwRWPqE2yFjnrwKQGbLcn7UZFPzbtwPpzRcXDXMxkIxwAB6AdKqAksSe9SA8VVguIv/Hyv1qVvvt9TUK/8fAqUn5j9aACA4kY+4qW+O68kPsP5VDEcM59xTrqQNcuR04/lS6gRR/61aWXolNQ4kWhznb7UwFJ4pJj+8FITngVYSwurhgY4XI9SMD9aYiAmmt0ArXi0GZ/9bIiew5NXodBt1xv3SH3OBSuBzcYbzFwMZPau40+f7RZRueuMH61UTSbZWUiMfKMc9Kv28SwptRQo64FJginqzKBH8wBz0rB1XJRVHQDNaWtMTcqOwFS2tlFPZhpk3Fu59KSGzlQcmnA10suhWpXCqyH1BqhNoEq5MUqt7MMVVxGQv8ArhT88mp5NOu4H3PC20d15/lVbODg8GmA6M8vSS/61qRDgtnvRIcytSGXo9HnBDTukS/XJq5HptpHyxeU/kP0q19nOd2QT/eYmhZCXxEElYdlUnH4mlcQ+CJEH7qBUHqFAq2iknDOCfSo1jmkAMrhB/dTr+dTxokSnaoA7k/40AOweigfU0bsPsXDP3HZfrUH2h7lzHa8KPvSkdPpVuKJIIsDgdSxPX3NADZHESFnyf6mpIlIHzcseT/hVGBze3xfH7qL7o9+1S6jOIYAAMu5wo/rQBQ1WFpb+ONPvOQBmtGzP+iqg5KfK31FMNtFHe28gXazg984PHFNMn2XU8NxHOAfof8AP86lFMnkYxcsCY+/+z/9ajbkZXoe4709rm3DFDKm4dRmqMkotz5lq4kiY8x/4VRJJKCP4iD9Miqjweb/AK2FH+uKvxXMVymU/EHqKilgjILKuG/3iKAMqXSIX5AaP/dORVGXSZt58qRH9j8prYYxI2JxJE2eCzZB/GkKwnHJb03A0wBbQyHN1K0h/uLwoq2oUKFVQqjoBxgU3AUYOfoTVe7vorYFVw8pH3c8D6mo3KskWJporeMPJx6Y6moII5tSbfJ+6tx0UdWplnp813ILm+JIIysY6kf0FbQwBsAGMYIXt7CnYTYJEkUYVFCqOgFZmp3ReQWlv8xJwxHc+lT6nf8A2SLahHnsMAc/KPWq+kWrIBdPgu/Eef50xFxBHp1kxPOwZY/3mrBl1My3scso3BDgKD/nvV/XrnCpbIc7fmcjue1YGAHViNwBGRnrTSEdPrcpttOt5o/viQMp+uTURk/tWwR1wJlJxg9fasm/vTc20cHmtIi/dBXG36+pq5oAzFKq9VIYc4/z0pW0KbNHTpYriLayKJV4bjk+hq75ajGFAz+hrH1BXs71LqE4STnHHJ7j8a145UmRZFI2yD9fzoEUL6xcN9otCVlH3lHeo7S9W4+WTCSjqp4z9K1M8fNgkdR6is7UtN88+bbjbN1BBwG/+v70ASOu4FXUMpHQ9DVGW2mgG6zf5e8T8j8KLO98xxBc/LKDjp1/+vV3BC55xnB7VOqK0Z//2Q==\"\n  },\n  {\n    \"name\": \"multidimensional art style\",\n    \"prompt\": \"multidimensional art style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDCFaekD5ZfqKzBWro4+SX6is6vwM1huWrsf6M34fzrPA5X6itS6H+jN+H86ztv3f8AeFGH1gzOo/30fl+ZXvo+Vb14rNYda2L1cxr7GsyVcNWzN8QrVGV6KDwaKkwCgdaKco5piJIx3qXFCJgVa8nbaliOWI/KmXGLlsQwxeZKq9iea3ggRQqjAHAFZFoP9IFbhFc1d7F0t2jm5h+/k/3z/OoxUsw/0iX/AHz/ADqMV0LYhiitbRsbZRnnI4rFViKswMxkBjcIw6EnFROPPGwKSjqdBdD/AEZvw/nWeRwv+8KsCd3tikwG/jle9RMpKjAJwQeKVCLhFqRzzqRlXg09NPzIrgZUfWq19ACCyKBtUHj6mrc3Kj60MAZipGQyAH8zWqPSxV+WTXkYDjBptTXEZjkZT/CcVFikcSd1cSpYVywqPFWrZeM0IZOijcuR1NXbkfufxpkkaqlsVABZck+vNTXA/dH60XudlFWhIr2g/wBIFbbDHJrGteJwT2qTUrl3BG4JF6Z5asatNzascsakYTafkUJsGeQg5Bc4P41EOlOXkZpK2QyIU4j92aaKkYfuzQSiS3vJIflPzp6HqPpWtpt1HcTjB2MOgbvWVBaia1ll3YMfbHXioZVkt2AcFT1FTL3ouNzP2MU1Jo39RgERVk4Vj930NQ4/0n/gI/mao297LdsI7ib7o+TPrV9Sn2rDkqxUY/M0qUZRilJnXKolSlJmdqUQLggDJzn35NVrW2ExJdiqjjjqTWreR7s+x/8AZjVZl8lEUDBIya3pw5mc9BxulLb/AIBQmtzFP5edw6g+orRtI8WUgPd1/rSeX5satj5lOM+1WEXban/eSlOHK7Mcmk5cvmPulAFsO23+tTpbrcQtI77Ix39ahuP3zwRRAu4XkDtz3qK4QiRbZptyjJKqeBXM7v3U7P8A4JcavJS+S/Iqm58pjs+YngVXffKSzkk1djsC8kgiUkAAkselSWlvHLDcM4yUTK8+xrfYxi4y99GfGPkFWbOzNyGO8KqnB9arxj5BWrpI/dS/7w/lXPXm4QbRskZQtZBzwR7Gkf8A1Zq8PuH6VRf/AFZroZpVpqGxcsR/xLbr8f5VFrIxJD/1zFTWH/IMuvx/lUWtf6yH/rmKxXxCl/DK+noslyqMMqzAGrkiPFcy/ekjRtvJ5FVdL/4+0/31/nWnKv7y5P8A02A/StUc0tVYdEUmi+UsQuMk/XNMW/s8DKh8dCw6UigCFmHBw2T/AMBrBA4FUpOOxi4c3u3N8XlpI6xp8hY4AA4zS3DCKBlLbWO0hcZzgVhwZE8Tdg4/nW46ZQseTxyfwok3LVlw9x2epTMk4xKjlN/ye9MtVZb11ZskDrUr/wDHvH/12H8hTYf+QnLSTvK46itBpGtYji5/4D/I1V08f6Nd/wC5/Q1bselz9F/kaq6f/wAe13/uf0NKXUKPwGZH/qx+NaGnzLFHIGzkntWfH/qx+NWbf7rfWolBVFyyNKknCF0OH3D9Kov/AKs1cB+U/SqLH92a0Z1V3oi/Yf8AIMuvx/lUWtf6yH/rmKksD/xLLr8f5VFrP+sh/wCuYrFfERL+GRaZ/wAfaf76/wA61JT89z/13H8qytNOLpCegYfzq9NMPMn7ZlBx36Vqc76CXcvlWDY+8x2j8cVQaNNiL3UYJ96sXMUmI2ZT0Zz6DA4rO3H1ouTKLuWSimAqv3gdw9/WtRJhNaLJ3IGfrxWIjHzF57itOCF1hlQAho3K49R1FFwjBtiM48hBnnzQf0FJCc6lKRUbcRrn/npS2pzeufahbhV+BmvZSIv2hWcAkLgE9etV9PP+j3f+5/Q1VnP71voKiEzxqwRyoYYOO9NoVH4COM/J+dWbc/K31qqh+SrFsflb60Lcdf4CBrk4wg/E1ET8lRinZ+Wg1c3Lcv2Rxp1z+P8AKotWOZIv+uYpbVwthcbiBngflUZWS8YO4O0DAwKzS1uaSl7iRFaNsctjOMGtS2tt8nmStyeSPeo7TTyjA7XyfUcCtVIjGoyUC9yat3toYqpTjJKbI5LRJYJAAM7G249cVywrt43gz8pX061xUgAlcKcgMQD+NYU+a7TNKs4zd4klpGZbuFB3cV0pgRS3A5OTgd6w9EUHVIyccAkA9ziujK85Iz9RRUk+axrQSs2ZN3ZFkMkOTt5YVUtQRdE9iK2lNwrciHb3wCDiobyEMm+CNVcHJwOoq4z1szCrTlJOyM+4VtzuAdoABPpVZjwa19OdZFnyOu0EH8aq31h5atLD90DJX0rVvUxpaRsygp+WrFsflb61VU/LT45ShIxkGhF1E5RsivS54ptPRS7bRSAfDGXYZBKg9PWtuGNgFPyjH8PpWdGXQALuAFSrNJ/fb86qyMpOf2XY2EY4+bH4U4hXGGGRWZDLI8gXe3vzWgHotY4KqkpXb1GXts7WMohXaxXOcdq5TBBwRgjsa69rhI13TPiMdc1S1BLO6ubTaUZXLBinU8ZGTWMpuLtI7cPeUbr8TM0iMm9WXHyxc/j2rovtR/uj86paQkUFoHVAXkHzEnOeTippWBkJAxn0pTtvKJ1UHTqy5Ooy6vZI2Gy3aQH+72qsdRmJ/wCPRx74NW45fLkDfnV0vxnNYyrcr0RvLDJdTCeSZZvOjiZT/EADg1Ye4S4sJWT+4cj0q3Ndwx/flQfjWJdyxCRntZOHGGXFa06jnujKVLlW5UB4ozzSA8UZ5rcgaqlmCqMk1pW8Swrxyx6moYIhEvPLHqam3hRk9BVJGTdyWSby046npVUNUbOXbJpyfMwFAbIvWvyruPU1aD1TDYGBUofAqJy5TmVP2km2TlUmUpKu5T2NUbnT4YYnmjZ8qMhetWVeiTEsbIxIDDBwawc5N3OqnBQVkZ9tqMkMCgxKy84PI70+XVGYfu4wp9zmg6en8MrfiKYbEJy0mR6AYrRuD3No2UrxWpG19Of48fQVG000vDSO3tk1aEca9EH4807djpxRzJbI2dOT+JlIQSnohH14p32V+5UVbLZphajnYeyiio8TRj1FM71bbkYNVpE2nI6VSdzOcLao/9k=\"\n  },\n  {\n    \"name\": \"muppet technique\",\n    \"prompt\": \"muppet technique {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"mural drawing\",\n    \"prompt\": \"mural drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"naive art style\",\n    \"prompt\": \"naive art style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwCjVmyYWV6XlOI5V2h+wPHWq9XggaIK4yCOQayqSsejKn7RWLl0gKiToc4PvVF5EjIDsAT0p8PmRxmFm3RA5TPUe30qhefeX/fP9KmlNxehzVsPz01z7ovUVDcytEyhQOfWp67IzUtjyJ0pQ+ISiiiqMwoopQMnFJuyuwSbdkJRWdf5F24BPb+VRwfNPGCSQWGRmuf6x5Hq/wBmO13L8DYRe9RzXGPljP1b/Chpi0gVOF9fWq+M8Cs1Bylzz3/ILxpx9nT279y5B9059v5CqGof8fR/3RV63/1eff8ApVHUP+Pr/gIrkveqz0qStBBF/rU+tXmO1GPoM1Ri/wBav1FXmG5SPUYroq7oqGw9o2QKWHDDII6Gs/UQAYyO5Of0rThugFEVyABjAf8Ahb6+h96z9XUI6BegJx+lTFe8c8ptwcZLUkWMTQsrdVc/hzUpp2z5w6nB7+4qMEliPSnhZ+80c2NpNwuhaKKK9E8cKZEdkbyMSeu38KkUbmAFJcRliqpwMEZ9K5MRLVRPUwEbqTM+9Ba8YD0H8qS3UCePH94VPdbQxI6twT7CoYf9cn+8KiKsrsdfEupLkg9PzLUefMBxmp44AOWH4VIiKnQc+tOrkq4hz0WiO6lQUNXqwrM1D/j6/wCAitLcM4zz6Vm6h/x8/wDARUUviN73KlwxWWIqSDnqK2IiWjBPWsa6+/H9a2If9SPxrvrbI46Tf1iS8v8AIf14NUtSAEcQAwATVZb6WF1U4ddo61Y1E5hiPqc/pUcjjJXNZVI1KbaLqMTK69lAIpq43N2Pel2Zw8bYYgA+hprHbIxPeuej8WgTTa11Q4ik70uNzA5x2pygAnvgV6ftPcueH7L30uhWR2FzgscZPepGmEkY2jHOKilQpPk93/SnRRl1POAHPNc3uqKlI9OcG2+T0IblScMOgqKH/XJ/vCr7rtPselQlULAgDIYdPrRdSjdHnKLhPlfQuk7VJ9BVOa6OOSEWrkn+rb6GueulJkc5J5rmw8Yu7aPXrwqVJcsXZWNexdZMspyDVfUP+Pn/AICKNE/49B+P86NQ/wCPn/gIqp/xmGEVqVvNlO7+9H9a2IP9SPxrHu+sdbEH+pFdFb4SKf8AvL9P8jDl/wBYn+6K0b//AI9of89qz5v9ZH/uj+taF9/x6w/57VpU+yTR/hSHpcqJfKyQ2Pw6U9pAxJyM9c9qoH/j/wD+A/8AstT4+VP90VHKtzDDt8zjfSxbWQKQH6HgH3ojmQkqOWUc1JDa+c6K498eg9asxadEYlcrskZfmxUNpaMtWlH+uxn3I3SD5sd80CX7Pb/KNxIZsn1FRazMbSQiNfM24DHspPIB96p22oC4SSKVArBGKFe/HIqZRcqa7G8ZxTsty1fSyGSRNxCiPIA9ciotO+63++KfeczP/wBcf6im6d91v94U4aQXoY1NYyfmv0NaT/VP/umsGb/WPW9J/q2+hrBm/wBY1YUPhZ6Mf4vyLmif8eo/H+dGof8AHz/wEUaJ/wAeo/H+dGof8fP/AAEVU/4zOfC/w/mynd9UrYt/9SKx7v8Ag/Gte3/1IrprfCZ0/wDeX6f5GLN9+P8A3f6mtC+/49Ifw/lVG5Ro5kRhghf6mr15/wAecJ+n8qqf2SaSapyTKzELegk4GB/KtCGEKiu+CFA6VRmTdJCQv3gMkCtiNo4LdruXPkw9B/ePSpcrHLCLauvQvW0Jjjy/325b29qmZgilm6KMmoLO6S8g81FZecFWGCKnYAqQ3THNcrvfU6UklZHJyRzJbXSPazSb2ZllK5GPXNY8RdZVKqWIPTHWulmnM0jDJ2fwrngDtTI2ELgqMZPOO9dyg1G/U4nik5JNaEErNJmR4zGTB9w9uf8A61Jp/wB1v94VPfcyyf8AXH+tVrMlYZCOuRXLTd0elioqNFteRahuZZppEZcKFOfas+X75qdmJnjyetQSffNVyqN7Bgpuer8/0Lmif8eo/H+dGo/8fI/3RT9IiaO35wRk03Uf+Pkf7orGTTq6F4eLjC0l1ZEyK+Nyg49a0wABgDArOqzbSAAhm5J4rpqptXNYWTKGp/8AH6P90VavP+PKL8P5UtzbGe5BwMbRljTZ8zhbeBd2zGWzwO1F7qKRjUtBScupZs4jcBIlyBtBcjsP8adrc2IxZRlVjCB3AHP3gAPatKyt0tbcRqwZv4mz1NZ+rKDJM3B+VQR06c9R9ayc7yOehSs7D9DuPMWaPHff+fH9K0blXe2kWP75GBWboTBo2HQxjAUc8E5znrWvUN2dzatH3mrWOduZYre3SJkKzAktu6021uYJY5o34YrlCR3FM8RKy6kjn7rxjH4VBpsTTXGyJQXCluenHavRjGLpc7fmea6a5lFLXY0prQ/Z0d8jzU2Bj/Cc8Z9jVY2UlpA28hgxH3e1b0SNLaBLpFBYYZQcis66l+xxvFcfMQPkJ/jX/GuSEk79zoqqaiqd9DK/5eI6hk+/W5ZvanEgiR0PfbytWbvS7a7QMgWN8fK6Dg/hUc6kdOHXsH72xnab/wAev/AjUGo/8fA/3au29tJaxmKXGQSQQeCKpaj/AK9f92ueP8Rna2nqhlOjOJVPvTCQBknApkavdNhMrGOretela+hy1KsaauyzJM1y5igOEH35P8KSeRbWERxcMent71KxjtYOBgDoPU1nqsl1cBRy7nAp2VNWR5jnLET5pbGhodp5s5ncfLH092qbWbe5abzUBaIqAQvb61qW0C21ukSdFHX1PrUV5e28IaKR/wB4RwgGSfSuJycpaHfTl7N3KGkWtxDdF2TEZXBOetatwZVt3NuFaUD5Q3QmiAYiA9zUtTfW5VWbnK7OKu557i4L3JPmDjBGNvtirehPt1RB/eUj9P8A61b97Zw3Rj82MN82Ceh/OobDTraFzKsfzqeCSTiu94qDpuNrHKqMr81zRrl7tDZ6i6t8yg5APPBrqKyNft90KXCjlDtb6H/P61x0pWkaTV0V8cCSDAOOnZhVuzvMDKglc/Oh6qayrGfB8pjwfu1akjYN5sJxIPyYehrpq0vaLmjuctKs6L9nPWJo3LK8oZDlSowayNR/16/7tW7edJlJUbWH3lPUGqmpf65P92vPjf2mp7MLcqsQQ273JDy5SLsO5rQAWNMABVUflS1RvbjcfKQ8D7x9favX0ij528q09SG5nM0mR90dBWtoVpgG6ccn5U/qaxK0o9anijVEiiCqMAYP+Nc1TmktDvglHQ6Kql9Yx3kZyAsg+646isr+3rj/AJ5Rfr/jS/29P/zxi/WsVTktjTmRr2MUkNqqTEGTJLEHOaleREGXdV78nFYn9vzf88I/zNUr69N66u0aoVGMjvR7Nt6hzJLQ05dZikmRFVgiyA7844+laFpKkqu0edu44JHDD1FcnUsN1Pbn9zIU+lW6StoCn3Ovpk0SzQvE/wB1xg1lw65CIVEyyGQD5iFGCfzqT+3bT+7L/wB8j/GsuSS6DujAkRoZWRuGQ4NaVtN50WT94cGq2pzwXNz5sG4bh8wYY5qvBKYZQw6dx6iuyErbnNWp860NCaFiwlhO2UdD6+xqpc3ImZd42OowwNaCkMoZTkHkVFPaxzkF8gjuKqpSjN36mNDFSo6dD//Z\"\n  },\n  {\n    \"name\": \"naivism\",\n    \"prompt\": \"naivism {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"necropunk style\",\n    \"prompt\": \"necropunk style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"needlepoint technique\",\n    \"prompt\": \"needlepoint technique {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"neo-impressionism style\",\n    \"prompt\": \"neo-impressionism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"oil paint art\",\n    \"prompt\": \"oil paint art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"oil pastel painting\",\n    \"prompt\": \"oil pastel painting {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"op art style\",\n    \"prompt\": \"op art style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"origami art\",\n    \"prompt\": \"origami art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"orphism style\",\n    \"prompt\": \"orphism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"paint splatter\",\n    \"prompt\": \"paint splatter {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"palette knife art\",\n    \"prompt\": \"palette knife art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"paper quilling art\",\n    \"prompt\": \"paper quilling art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"papercut art\",\n    \"prompt\": \"papercut art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"papier-mache art\",\n    \"prompt\": \"papier-mache art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"patachitra painting\",\n    \"prompt\": \"patachitra painting {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"patchwork art\",\n    \"prompt\": \"patchwork art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"pebble art\",\n    \"prompt\": \"pebble art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"pen drawing\",\n    \"prompt\": \"pen drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"pencil drawing\",\n    \"prompt\": \"pencil drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"pin-up style\",\n    \"prompt\": \"pin-up style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"pixel art\",\n    \"prompt\": \"pixel art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"plastic art\",\n    \"prompt\": \"plastic art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"plasticine technique\",\n    \"prompt\": \"plasticine technique {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"pointillism style\",\n    \"prompt\": \"pointillism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"pop art style\",\n    \"prompt\": \"pop art style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"porcelain figurine\",\n    \"prompt\": \"porcelain figurine {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"postimpressionism style\",\n    \"prompt\": \"postimpressionism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"postmodernism style\",\n    \"prompt\": \"postmodernism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"primitivism style\",\n    \"prompt\": \"primitivism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"psychedelic art style\",\n    \"prompt\": \"psychedelic art style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"pulp art style\",\n    \"prompt\": \"pulp art style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"punk style\",\n    \"prompt\": \"punk style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"pyrography print\",\n    \"prompt\": \"pyrography print {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"quilted art\",\n    \"prompt\": \"quilted art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"recycled art\",\n    \"prompt\": \"recycled art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"relief art technique\",\n    \"prompt\": \"relief art technique {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"renaissance style\",\n    \"prompt\": \"renaissance style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"retrofuturism style\",\n    \"prompt\": \"retrofuturism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"retrowave style\",\n    \"prompt\": \"retrowave style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"risograph print\",\n    \"prompt\": \"risograph print {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"rococo style\",\n    \"prompt\": \"rococo style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDmsGpEXIGe9MGCKkQE4CjpWbNUJcJtYY9M1NHFu7elR3G7I3jBxUkZlI3Ip470ugFVs5J96erMqEBsA9R60j4JJ9aQdKYhwYkYY5A6A0/o3UgGmAZoycEUhl+NR5RZWJbHTPWq7yCJCqEq4YE5700sVUKp4I5xULD160kgbBySNzHJPJphzTj0FIcVQi2Ig3QelVk/1wz61ZjaVvmRc4HJxVZT+9zikhsueTwzY4A4/LNVNp9auRtP5YAT5D1qCYqhwMUkDKatg1etBl6rbU+zZ2/NnrmrVn9+qkTEXUB++H+7VqxXMJ/3f6VX1Afvh/u1d01cw/8AAf6VHQswnY596bk+tK4+akrVGbJI2zUh5YVDGOanI5FSykBOBVdmJPHSp3HHWq9OIpADing5FR09abEjasF/dN9DWXGP34rW08fum+hrLjH78VmizXcbbPj0rCmO5s1vTj/QT/un+VYkyAhCBg49acRSIc8YrQsx85rPH3a07FcyH605CiJqWRMB/s1f0sfuPw/pVTVVxOP9yr2lj9x+H9KjoWc445ptWoFyZG44XvTLtAlwQPQGtEyGiOP+tW4ojNOkYOCxqrGKuW0ghuopTnCMCcUmNG1Fax2UZzn3yM5z61gapCkOoSrGMIcMB6ZGa6bWmDad9ohYMg2hznPGa5S6m8+4eTseBSje45WsQVItR1KtWyEbmn/6pvoayYv9eK1rD/VN9DWXD/rxWaLNmb/jyP8Aun+Vc7k5xmujm/48j/un+Vc5/EacRMaPu1s6auZD9axwB/e/StrS/vn605hEbrP/AB8j/cq7pY/cf8B/pVPWf+Pn/gAq5pn+o/D+lQUYlucLN/u1HetvuSVPYCozIyZCnhuDTB0681ol1IHxn+dXbe2kuZAkePqaZZ6fLOpYFV43AHuKmjZ7WRSpIOealspI6Szs0sLRreU+YJichhx05rE1vQ47K2Fxa7ioOHBOcA9Kv300i28Mrvznqew71la1eTnbbGRWjZQ2Vzz/AJxRFhJKxj1KtRVKtWyEbth/qW+hrLh/14rVsP8AUt9DWVD/AK8VkjQ2Zv8Ajxb/AHT/ACrnP4jXRzn/AEFv90/yrnMDOdw/WriRIbW5pY5/GsKt7S+maJDiR61/x9D/AHBV7TB+4P0/pVHWDm6/4AKvaccW5P8Asn+VQM5iTrSLSv1FN5rVbEdS9HfMsQQIAQNuQccVoWVs8qxvchtjNhR3b3FZFooaYBuR1rqbGTzmMoBOABtHUD/Cs5WTNY3auXLiwiuI0DIMJ/CfSsfVtDlk3TwOWKDHlMOw9DXSQkMOBgU6RcPkd/501oS9dDzWpVrU8Q6WbS4NxEv7iU5IH8DdxWUvWrZKVjfsOIW+hrKh/wBeK0LeUR2zEnsazoT+/FZIs2pf+PFv90/yrms10cp/0F/90/yrnNp9vzq4kSJokEkyITgMwHFdNCqRKFQEAVkx2SrKjDqCD1FaShsf/XFS2UiC9hSfUIA2cMp3fhV9AirtAIHTFVHiLXEcndQR1Hephv8A8kUgOXnVY7iRB0ViBn60zj1rcksYmkZiq5JJPP8A9eozYRlvurj6/wD16vmRNijZ7cMR97NbulNtZXUnI4YVnxW6rcCNVABOOKurDLZzblO3PQnofY1m3rc1jtY6GJ84IqSQ4jLdwc1lwXswA3Jn6Lx+Yqy1yXUgI3PqMVSkhOJJdQR3ELwyjMcg2n29DXEfZHgv1gnRgPM25IxuGcZFdbFeM6suAeSAc1n6pD50tsR1Rif5UcwnEjv1SO1IXjms3TY1e9w3RQTWjeQvLGAc9fUVVtLR4bguMnIx1FJCNRlR4yjAlSMEVz09rsmdFZMA4GWGa3MP7/mKqSwhpCSvJPtQnYCIRFCC0TD/AIFV6OMlf9W3/fVZ6zvuyCM+u0VciuZO7/oKGMkdMSA+U3/fVTLGCP8AVn/vqqct1Jv4b9BU8dy+0/NSAgeE7jiB+v8Afpn2d/8Ang//AH1TXu5QeJP0FILyb/nqPyFMB4hk7RMMdDnNa1rdCVBDdIVb+8RwaxxeS/8APUfkKX7ZJ/z0H5CgDeFrGQTESvuhwDTo7dEI3MW74Zs1lR3dxaQLNu+SQ85XI/8ArUw65cswIjjIHHANPQNTZa1QvndsPQgHGTTbowxwGNly56J3B/z3rCm1K6mILSYx02jFRx3MpkBLZOepFAtS7PGTH/q3P41XgjYPzE/51M9xL5X3h+VV47mXf94flUjLJj4/1b/nVWRDvP7p/wA6sG5l28MPyqq93Nn7w/KmgNARR/8APNfyqRUT+4v5Vi/brj/nofyFPW+uP+en6CiwjYaNCfuL+VNMJKnbgf8AARWUb+4z/rP0FPF/cY/1n6CiwD5bO4YnDJ/3yKgbTrk/3TUgvJ8ff/SlF5P/AH/0oGQHTbvsq/nSx6XdNKiuoCE8kEHFTfbLj+/+gpy3lwCPn/QU7isS38V4+beBdtuoAAJxnHc0y0sZ40feqknpz0qea6kaISK2D34qGLUJt3zNkfSlcZYW2I+8kZ/4DTxBGD/q0/75qjJqE+44bj6VEdQuM/fH/fIoEbPlRlP9Wv5UwQRZ/wBUv5VmjUbgD7w/75pv9oXGfvD/AL5FFgNYwx4/1a/lUDW8P/PNfyqidRuNv3h/3zULajcf3h/3zRYD/9k=\"\n  },\n  {\n    \"name\": \"romanticism style\",\n    \"prompt\": \"romanticism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"sci-fi style\",\n    \"prompt\": \"sci-fi style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"scrap art technique\",\n    \"prompt\": \"scrap art technique {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"scratchboard art\",\n    \"prompt\": \"scratchboard art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"screenprint technique\",\n    \"prompt\": \"screenprint technique {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"screentone texture\",\n    \"prompt\": \"screentone texture {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDmqt3Fo8NtBcgZilUZP91qqV1enxJPo8UUq7kZMEUAZVlcGRQjn5h39av5rHubaTTLwI2WXqjf3h/jWpHIJIwynIPSgDUsZN0ZQnlen0rN7mpbebypg3bofpUGTk8UAX9HDeWWwcB2Ga36wdEkzDIh/vnH6VvUAFc74vz5VsACeW/pXRVieILwxwSR4yvAI9e9AHMJu+yOWOFyAB+NSp93P97mmsrNEyoMpgbSO/NPJwQMdqAGN978KaaVj81IaAGmkNKaaaAKtddpX/IMg/3a5Gun0e8he3jtt2JVUcHjd9PWgC3e2cd7bmKTg9Vbup9a56BpbO5a2nGDn/8AUR7V1NZutxxi2S4ZfnicYI64J5FAFcGrNsnnFk77TVJHDqGU5B6VoaXzM/8Au/1oANLVkhaUEcSkEelb8MhkznHHpXPWLmO4uom+60rD6dxW3aE7se1AFokDqcVzPiR/9YFGclefwrfuT0rl9blJZkyckj8qAMyLP2SUZ4zwKfuOdp6YznvSsuy1Yd8ZpuDuB7YoAQ/epDSnrSGgBDTGYKMk0SSCMZP5VUkkLnmgBlXba8VYlhuULxKfldOHjPsapVMjx7QrrjH8QoA6Sz1Ioi/aJBLCeFuF7ezDsas6rbveac8cJBY4ZeeDiuUSV7WTfDIPmHPcMPQitjSNQjMnlF/JDf8ALJuVz/snt9KAM22uGt5DHKCADgg9Qa6LSCDK5ByNv9ah1LS0u0DLhJ1HDevsao6PePYXrW90hUEYP+z7/SgDXih3XN1IHHyynK46cVrWp+f8KwoJCmqXG0grI+D7jaKn1aVktkVWwG6jPXigDYuWBAKkEe1cxqi77nH+1UujyMLwxBvkdTkE9xVLU5WTUZGI6L8o9aAIp2BSQA8gc03tVeLcYJWbqxzUw6UAIfvVFNMIxgctQ0m9yqH6mqbdTQAMxY5Y5NJRRQAVbTTbmWBZokDqwzgHmqldTo4/0KH/AHW/maAOditJpLgQbCkhBID8Uk9rPb8TRMo9SOPzrdkH/E8tv+uR/rTtaH/Eub/fX+dAGfp+sy22I58yxdOfvL9DW2FtdQQSxsrYGAw6r7Gse60mP7TDHAxTzAx+bkDFVdOeW3vG8t8MAQfQ80Ab+lJAkUsLbfPiY8464qbUZbR4THI7GVB8oTscd6paaks87XBQBWkJPPtUFwc3Ep7bz/OgC1pL2kMpluWZZBkJx8vT+dU9TAe7kYMAu0Hd7Uw55xVa+OQgJP3RxQASOiwBcgEr0qtNMWXC8L/Oo3B2jPJ5ocfuloAltxz+FQN1P1qxb/0qu/U/WgBtFFFABXWaMn/EuhfPZhj8TXJ1q22sTW1qkEcaYXPzNk96AJtXle3v4ZIjtcR8HHuapz6jcXMPlSspUkHhcGo7q6lvJg8u3KrgbRjvURH86AOllH/Eys/91/5CsvSYkl1OZXGRtJ/WqrTzySKXlcsAcHPSrmhDF++f+ef9RQBo2jzW0DHankgkg989v1qJkC6erMfnkkLD6dKWWVdkdpuxK7Z2n0zxUd0+6YqPup8q/QUALZ7Q0wIy7RMEHqfSqd9GUwjDmMkVJuKkEHBHQ1LqYEscU2QDKO/rQBjSDgfjSSf6pafOpTAPvTJP9UtAE0HQfSqz9T9asw9B9KrP1P1oAZRRRQAVMBxUVWo1+UUAMVcyY9qkZMKD7j+dPgieW7CRrubb/Wtm30yNcNP+8Yc7ew/xoAz7exlnlUouEwcselatpp0VrIZAzM5Xac9KtDA9qM0AVjYhtTN27dFAVR7etUbgAXEmDkbjWs4ZkIVtpPf0rI1FDYwrJnzAW246UARmtFreCbToRO2FT5gwOMGs23LT3/2UrtIXcW69s/1rUS1EMTCVw8WMlSOnvQBhTKpc4O4A8Gqs/wB0ACrlwYzK3lAhM8ZqAigBIv6VXfqasLwart3oAZRRRQA4CtnT9OM8SySNtjPQDqazrWznumxEmQOrHgCuntITBaxxEglRyRQA6KGOFdsahR7U/OKQt6UlADs0UgooAUVleIUZrJGHRX5/EVq1T1Vo/wCz5kdgCVyB3oAzrR/I12UyHAVME/gMVaudTdsrCNg9T1rPEonupJu5VR+lK3WgCNiSST1NRmntTDQAhqIpnvUhpDQBXZStJU5GaiZMcjpQB2KKsaBVUKo6ACgtmmFietAoAdS0lGaAHZqKW5jh4Y5Y9FHJNVry7iVCgkwe+3rWW1ywyIhsB6nufxoA0ri+Kj943kj+6vLn/Csu4ujKCiLsQ9eck/U1CeTk0mKAJbTBaTHqKmfg0tpGBGSe9LMBxigCBqYaeaYaAGmkNKaQ0AJSUtJQB//Z\"\n  },\n  {\n    \"name\": \"scribble art\",\n    \"prompt\": \"scribble art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"scribble technique\",\n    \"prompt\": \"scribble technique {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"sepia palette\",\n    \"prompt\": \"sepia palette {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"sgraffito drawing\",\n    \"prompt\": \"sgraffito drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwB+IbyLcDuH5FT/AEqEmaBlWRg8JI+c9R9ale3+fzIW8uT1HQ/UU6OcE+XOojc8c/db6Uhj3/1EH++tJ2j+p/lT5vuxD/potN7R/Vv5UAITjd9P6GqVgMQKe+R/Orj9D/u/0NVbVSlvGD1IU/maALA/1kZB6g1btOIfxP8AOqKffi/Gr1rgw49zQA9mJIwPz4pZc+S/P8JpSVHX+VI5zExHoaBFRjtycZ+UVReQnHbJ7elW5SRFntgVQJzIoHqCaBk8tnLczN+8RQpICk80WdmqTlnYPs6Y6ZrUKg9QD9RVeEfdH+0x/WgCytLSDpS9qAM+2vILofum57o3Wp3RXXa4BB7GuU5BBHyn1FX7XVp4iqTDzVzgHPIoA19nlqqbiQsygZOcDinf88/q38qHVnDFACwkVgCevAprE5iBQqWLfKx6cUAD9D/u/wBDUMXCQ/7sf9ambrjpx/Q1An+qhP8AsJ/OgCQgCeIr0Oat2nMR/wB41RjOZIPqRVmzOJiPc/jQBcK5P/16hvJCoCA8N1qxgbuv4Vn3r5mx6NgUCIbg/wCjt6bFqrGuACepYfhzVq6P+jqOxC/zqEjGB/tD+dAzYqCD1+v86nqG3/1efc/zNAE9FJS9qAONOeeKE/1q/wC8Kc6FGZSeVJBpqjDqfemI6RXcTzAcgYwPwpZ2IeFyCQhO7Az1FRblF1ICygkLgE9eKka5jgBeYlVZgMkZ7UhiiSJgGLArnB2nP/6qhulWKL903yqg2nr0NWYmglbzIyjn1XrVO/CxqQigBxz+dADyrJPCCB97qO9PgbbPz030rriSEqfl3jA/CoidsjY4+Y/yoA2JfkjZsZIGRWTcklyScnf1/KtSVv8ARHI/u1kzY6D+9/hQAXf/AB7pgc4X+YqNsJwRlyRkf3Rn+dSTP+5GOGVVwfyqvuyo2j5cjLHvz+tAG0TgVQ+2pHsiUbnL4IHRee9JfXEqyiGM7QVyW71QgXEij0mH86AOgFL2qJ5kjwpPzHsBk00vM/3VCD1bk/lQBzNzgXMoP981H1IPvUt4P9Ml/wB41EetAjpBDHLIPMQMPLHUVU1SFIrVFQYUv6+1Xofvp/1zqtrH/Hun+/8A0NAzKtUH2qHsd46fWtK6yQpYkk7utZ9uMXUJ/wBsVfvSB5eenzfzoAhhlUQxRqrLIpznPBqZSSxz13HP5VSjb5l9s1bXPmbT13UAaiNmxkB+lZ8v3Scdj/IU03brJ5YP7rgEf1pZOmP9k/yFAELMBAoPePH6UNxu9gtQOxCKo5IXn2qbdujdh3AoAnvDm6yP7o/maqx8SH/rov8AMVavP+Pof7n9TVZP4j/tigDWdtkkrYyQi/1qJJnaVQTwT0qSfky/7i/zNVoP9cuelAGRfAC9l7c1Af6VZ1AYvpfc1XOTQI6WA5MR/wCmX+FV9Y/49k/3x/Kp7bpD/wBc/wDCoNX/AOPVP9/+hoGZkGPtMeDkbx/OreoNh04ztyf/AB6qURxNGfRhWhfgHZ/vN/OgCrK2GUAdc1dtoWlhmlyFJ+6SeBVNxu245O6tG+At9LCr3IH9aAM/Eo4KAn1zxVxrdo7SNy+7B5I7CqW4jncfzrT03E9g8bc4b+dAGUmS5z35p6H92w7g0s8fkTsM+hFJGC0bkA9fSgC5d/8AHyv+5/Wqqcl/Z1FWrsZuF/3BUCj53Hqyn9aANKQx+dIjuq7lGMnHrSxpEg+VlJ9c0txAkwG5QceoqubKL/nmv5UAY+o/8f0v1H8hVbsataiP9Ok49P5VWx6UCOhtDmK3P/TM/wBKj1cZtB7OKWyOILb6EVYkZNybhuw2cY70DM6y01nxNcny4xyF7n/CrN8BJGQiBW6jjnA7mppZSCM8uei9hUWxyjBT87dWNAEFjbM1yCxGEw31yKl1tsQxIOpJ/wA/rVmzgMO4s24tj8ABgVV1pCWgfnAJB9KAM8qdu0c8VfsT9nvgigmOdcrjt/8Aq5FU+gq9pJjRiMjfJz1560AN1S3YSeaDkHjHpwTVGaNoMoTznqK3buETRFSSO/FVOUQB/mK9z1IoAjmGZE9oxUSAmYj3SrU8QCrMmSmMH2qCHm5P1WgDU7UY4pKUGgDnL8Zvn4ycj+VWbTTGf5p8qv8AdHU/X0q/HbBZWlKgu3f0qVpRGvIOewHegBPJhhjGV2qvQA/yqvI+yTIX5iMKpOcD1NEsrA5OGlPQdlFNijOcuck8kmgB8afxE5J6mrKDFMUYqUdelICRSPWqWrt/oyD1f+lXAfaqWo20k6K0Z+5n5fWmBllvlNR7ZILnCKfMRuwp3Xj14rpAAO1ACEkgcc1XmXIz3qyaicA9qAIIJArFH+43XPao0hMV265yMqR9KdIvtT4mEiDj54/1FAFmikDAjNFAEbyiNeeSegHeq0khVs8GQj8FFMaQhz/FIe/ZRSImOvJPXPegBY05yeSepPerCj2pijFSDFIY8DinimDb6/rTsj1NAh4FDMFHJqMvgcZqtKzEmgDPs0SS6jGflR5H+vPFbiupHUGseKN0vSwQhdmOnGc1eTIOeaYFs49KY2B2NNWT3oZ/akA1xn1qvkxybhxU5NRMAfSgCdWBG4dD+lSA5qnG5jbY3Q9Ksq1MD//Z\"\n  },\n  {\n    \"name\": \"silhouette art\",\n    \"prompt\": \"silhouette art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"silk screen\",\n    \"prompt\": \"silk screen {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"sketch art\",\n    \"prompt\": \"sketch art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"sketchnote art\",\n    \"prompt\": \"sketchnote art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"sloppy strokes art\",\n    \"prompt\": \"sloppy strokes art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"sloppy strokes drawing\",\n    \"prompt\": \"sloppy strokes drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"sloppy strokes technique\",\n    \"prompt\": \"sloppy strokes technique {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"socialism art style\",\n    \"prompt\": \"socialism art style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"sock puppet\",\n    \"prompt\": \"sock puppet {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"solarpunk style\",\n    \"prompt\": \"solarpunk style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"sots art style\",\n    \"prompt\": \"sots art style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"soviet art style\",\n    \"prompt\": \"soviet art style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwClaXLQSh1+jL6iuot5lnhV1Ocjr61x2SDkV1OlCP7AjRKyq3JDHPPeobuNxsXaKKKQgooooAKKKCcAmgAooooAKKKKACq19di0g3DBkbhB71O7rHGzucKoyTWDJObu4M78DpGvoKTdkXThzMgmUi3dmJLtySe/NUauytm2kLHv/WqOR6ipidMraBXUaP8A8guH8f5muXrRtNQuIbdY42UKM4yKtuxk4uWiOidyrYp24E4rn21K7JOWTgelNk1O7Qbty8H0qbidFpHR0VDaXC3VskyfxDkehqaqMQqOZtsf1qSmTf6s0Ma3CFt0YP4U+mQ/6paeeAaBPcO9FQmRs1FeXRhtvl/1jnav+NK4+VlHU7n7RN9mU4iQ5c/3j6VVHEoP+zTWXDY68D+dPxkg9sY+tZt31OyEOVWIZR/o0noef1qjV6Vi1s5P+eao1URS6WEqeBgPlP4VACD9aXpVtXM4uzuXD1b6Uyf/AFR+tNikzkMecU6c5iOPWs0rM3bTiy3oN0YrkwN92Tp7Guh3DOM1x1tI0VzG6HBDCuqPWtGcbjqWKZN9ynL90fSmTHiglbhB/qhT2+6aitz+7Yehpzn5FpDtqR1W1ADyEbA3BsZqzVa/P7hQf71S9jSHxIzDjdyeMDp9aUE+aP8AdpH6k+w/nThjIPfHSszqIZBi2eqVXZWLWzk1RrSJnLpYTg0UUd6syFzg09pC0ZVuuetR9zQaLAm0Oi/1qf7w/nXXHrXIw/65P94fzrq3PPGaTJZOW2gY9KZKcj8Kasm8AHqKpatcNDBGqttMrhc+gpCjHUuQkhWFSNyi1il3s9Qt0jPyyNscZJz781q3E6xRgdW7Ci+g2tdB1Vr7BhXn+KqM19OCU3ceoAFQpNJJkM2RSb0NIRtLUcxAY8Z4H86P+Wv/AACkIySPYfzp3Gc55x0rM3tcgkBFq4IxVKr0rBrZ8DAqjWkTOVtLBSHrSZcdgaU5rQxuJ3NKe9J60p70AKhIdSOoNblrqDNKsc2Pm4DDisJfvD61aJwc1LHa50a/60/Ssi91JZS0RgjdFbgtz+NW4bom3MkmN2w4x61gMXjBl25VmKg/T/8AXUu/Q0pRjvIvx6lFBfGTyi8RPBblk+npWjeMGdSOQVyK5lpmdWG3gjJrcjm8+zt3zk+WAfqOKUtgUUpaFe4/1n4CiE4Y0k5Bk49KIj8x4Jo6FL4iRyRuI44H86P+Wn/AaaTucgbcYHXmnKN4B3H8Bip2K3ZE4xauDVKpLuZ1keIY28detVt7etaRT3MZSS07ElLTAXPRCfwp22X/AJ5n8q0sZcyEPU0HvThFK38NPFtMf4f1osHOiJfvD61bbrUUdpMZCFXJ9Ac1Y+yXHdT+RpNAppC+cRaMp6VWDlrSJD90An8+TU01tP5RUKeeMYNVLoGMInTGRUSWp0UpK1+xGsgjkbaAVYFT7g1c0+UiF4u6nNUCAFHqauwW8yzqVU/vE3Dg07XRMpcruStT4udw9qc9pP5Zbb2oitLkR/KoORjk0miVNXHBQDnI+7Tlwqjng9DTHt7kqQUXBXFIYLllVdkZCkEfMO1TyvuX7WK2RQvf+Pp/w/lUFX5tPu5JC5iHPowqNdMu9o/cn8xWq0RhJ3bZcIRfvMfxNMMsY6Ln8Kg2+ppcVRjoWInEkgVnESnvjpWnDa2fVphKfdxj8qyoLaW4fbGuffsK1rbSoosNN+8b07UmCLsaxquIgoX/AGafSAADAAAHpQTUDK145XBzgKC1cvfOJZWdehckfjXVzwCdCpYqSCMiua1G0e2DblITOFY96T3Oii1qjPrsdOYPp9uwxnywM1yqWcvnW6SKUE5G09ePWuqsLQWVv5IkZxnOSOlURUaZPIu6qzQrnoVPqOKt9aay+tTYhSsUyJU+6Q49+DTTMOksZH1GassuKaQCMEZFI0TRCBC3TAPscU7y8dJHH45pr26N935TUZjmj+6SR7UFb7MyKXNJRW5yFqLULiFdqOMehHSrC6xMFIeNWPYjis2ilZDuaEerzhh5gVl74GDU41lCeYWH41kUUWQXNyHU4HjZnPlkdj3qvqU1re6fIgkG4fMoPHIrLpGztOPSlyhctC4iN5poLjy4ossfQ4rTk1S2U/Kxf/drno4/lXeOQOlSgAdBRyjubI1eLeBsYL61INUtmOCWHuRWFRRyoVzZfVIR90M34Yph1OAjhXz6YrJpaOVDTaNuG4jnHyHn0PWpCQOpFYAJHQ0pY9yaXIVzn//Z\"\n  },\n  {\n    \"name\": \"sovietwave style\",\n    \"prompt\": \"sovietwave style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDLtVy7Bh/DUlpJ83lP1H3T6ii15c4/u01Y9wkI6qRg+lAJ2SLcsWVyOopIY+oHUc1LbyeYpDcOvDClClGBHagtq+peiO9A3fvVpOoNU4DhsDowyKuKMAUjMnC0u2lTlRTqAGbaaVqWmvwpNAFOYZOKquMkn8qtSc1WnOxfftTEZ84JYxg9ep9qqxYWWY4/iwBV/ZgEnqeTUEUOHdyOrEig1SsMEeMs33jVKdzM5ih6fxNVieRp3MMB+Ufff+gpIIwkeAO5poiUuiLESrvLY2sRyKZbAgTAjB4qxtDD6UbCRzwfX1+tIuUbh5eJg465x+lWQoZajQ/MARg5/pTxlX3DpjkUErRD4+Pl7jkVfjO5Aap4z8wqxA3bsaQmXYvu05mVRlmAHuajiOK5++aa8117dywhTpt44xnA9zQxwSe50gIYZBBHtUcx+XFVdPhEUsnl71j2gFGfd81WJDlqBS0IH6VTk+d89h0qzO38I71WYdhTCK6kDje2P4R196pzytO7QwHCr99/6Cr0jCMYA5qjaD95N9T/ADoHJixosaqqjAxUSt8u1Blsn8KnOW6HC45ak2cYUbV9e5p3Eo33KltqJA2zDP8AtCtSGRJEBRgwqg9gj8gYPqKrESWs2AxB9RSKu1uboXBBAzilHJ/CqVtfhsCUc+oq+hV1BBBpA7S2HpwAO1TQjD1Go7VLFw1BLC6vEtVO44yO9Y0Cm4vXmllMOR8rE8E+9aGt7PsGGUFmYBTjp3/pWLDdKkpiY/Lgc0ramsEnE6fT/LFsQrhnzl8etPc9TWVptxHHdBI3XbLwR79q0pDmmZzjZldzlqibgHHWpW61E44ApiuVJB8/rUFvHkyHrlzx+NXivNVrYgJIScDe386Cku47Z3PJ/lTGqG41GGPIT529ulZk97LNxu2r6LQNySNlpCtzHFgEOCc+lQ3UYNyv0NSP/wAf8H+6aLr/AI+V+hpDK0cAJQDocZ/OrywSQnMbfhUEP3k+i/zrSB+9ns2KCWkNinDcOMGrcf3qppGMvx3qzCu1uvFMi5m69MfMijAyEUufx/8A1Vl3Fp5V0UDZ+VWPsSBmrupSKb6Vm+6pC/l1qvCzSEyufmc7mpG8Y7Im0uIJqMJY4AJPJ74roGrnn3kqIBmTPAHertnq8cuIpzsfpk8fnQTViX361ExVRljinSv3UjB71UkBIJPNMyvYZNdgHCLk+prIuS7O6hjtDnjt1rSdRu/CqRXdLL/vGgTdygUOeaMYqxInzj6VEw5NMRuGNmu4pAPlUHJqO8/4+Fx6VbSql2f9JX6GpOgbD99Of7v861Ap592zWVAfmX/gP861gaCWNj6v9asJwwqtEwy/1qZXGRTM2c1qDP8AaLlGIyJCadagOmMkVN4gMZuUCKBJt+c+vpVWzba2KRrTbvqWrUlNUgBJ27xwa2bzT7a53GSMByPvjgisKd/LmjlH8LA/rXSM4YZB60CqrUp29t9mgEXmF8HIJoccGpnYZqFz1+lMxIGHP/Aaz05ll/3jWg5/9BrPjP72X/eNMZHKP3g+lV2HzH61ak/1g+lVn+831oEbquKp3bZuFxzxUQlkbknAp6/Mcjn3NKxq5IWFXypxjGP0q8JGb2quoA6mpN+OlBHMyVSFyfWneb6VBuzT1GaCTIvoZvtDSSDcGOdw6VDG22UV0SoDWbJa/adQwAFQHHAxSNIyIZl3wkDkjkVp28z/AGaPeCG2gEGoraxG8z9g52jPSrDrTQ6kuYRpc9aiZ89DilYVGRQZDJJGUc88Y4qij7ZZM55Jq8ajZQaYym8g3j6VCzZY/WrUkQPYVXdMdOPrQIsIB1PNTq9U1eniSgZbD04NmqqtUyGgCylTpVdDUyuBSEWFpLaHYSzfeJrF1WadrlRFuCxruyvHPrWjpV2s1soaTdKM7snk0FdC1HlXli99w/GkcUTyxxSxvI6oOQSx/GmiVJV3xtuQ9DQDImqJqleoHNAhjGo2NK5qJmpgIxqJzQzVEzUARhqerVXBqRTQBZQ1ZQ1TRqnRqALatTt3FQK1O3UANkjSQ/Nmp7C0t4phIoIZRxzUQ5NXLNAwb8KAKOuyqyRhTkq/9KdptyrQCL+Jf5U69t0eRgRUVtarC24E5IxSHfSxeZqgc04tioXamIjdqru1SSNVd2oARmqNmoY1GTQB/9k=\"\n  },\n  {\n    \"name\": \"spray painting art\",\n    \"prompt\": \"spray painting art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"stained glass drawing\",\n    \"prompt\": \"stained glass drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"steampunk style\",\n    \"prompt\": \"steampunk style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"stencil art\",\n    \"prompt\": \"stencil art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDE1CyKjzohx/EP61QikMUgYdq6aIJInHIxWVe6etvcb8EwsCeP4TipTKaL+lysdQjnQ/MPm4712tcPpWBcoABjB6V3FCCQUUUVRIUVWnv7S3/186R+u49Pr6Vy+s+KZZH8nTmMaD70nBLfT2oA7GiuC03xLf206ieUzxMQCH6j3BrvQcjIoAKxPE/zWMo7JEW/EsAP61t1jeJQqaTduTy6Ko/OgDhJpnnZWkOSqhBx2AwKjoooAKKWkoAv6dqDWzhZCTH/AOg1q6qyyWIdCCpBII+hrnAMmrlg0s+bQP8AI2cZ7HGP60mhpk+jXSx3SrIwA6Ak8V3/ANpt/wDnvF/32K8xeJ4ZjE+FYcHPSrLbHgCF0yB/eoA9JVlZQykMD0IOaWszw7/yArX/AHf61p0xHPeItJurtC8cnmjPyR7BlfX5uuK4uWNopCjggj1GK9K1LUYdMtvPuAxUttAUZJNcZreuRaknlw2aRLnJduXNAFHSbeS61O3jiXLbw30A5NemV51omrnSbhpPIWVXGDnhh9DXZ6TrVvqwkEKSI0YBYOB3oA0q5bxtc7Yre2B++d7fQcD+ddTWH4q2Q6cLkQwvKHCBpIw2Bz60AcHTkXe6qP4iBSVLaDN5CP8Apov86ALet2kdjfC3j6LGuT6nuazq2fFX/Ibf/cX+VY1AEkQy5+h/lVjTZBDc+cwJWMZOKgg++3+6f5U+2bCTLjqhOaQ0XdQ2XkqSwsCuOTj+lXl8KagyAiWDBGen/wBasaBzFbMwAJLhT9MGvS4f9TH/ALo/lQhsraTavZabDbykF4xgkdOtXKKKZJzvjSZV0yGI/eeXI/Af/Xria6XxpN5moW9uvJRMkD1J/wDrVh6hamyvpLcnJTAJ/CgCtXS+Cpwl/PCRzJHkH6H/AOvXNgZIA71t6Yv9k+KkhkOArmMk+hHH8xQB3lU9U09NStPIkbaNwbP0q5RQBxmueHotO05riOQEqwGAp7/UmsGz/wCP2D/rov8AOu38Xf8AIBk/31/nXEWX/H9b/wDXRf50AaXir/kOSf7i/wAqxq2fFIJ12TAz8q/yrH6UAS2/3m/3G/lRb/8ALX/rmaLf7z/7jfyot+kv/XM/0pDHJ/x5/wDbUfyNemxf6lP90fyrzJP+PQf9dR/KvTYv9Un+6P5UAx9ISACScAdaWs3xBdfZNFuHBwzrsX6nj+WaYjkoJlvtfmv5uYYi07f7q/dH8hWVPM9xPJNIcvIxY/jV/Y9poG7aQbyTr6Iv+J/lWZQAVpX7G5tLW+UneB5Mp/2l6H8Rj8qza09IRrtLmwC585NyH0deR+fI/GgDu9Nuhe6dBcd3QZ+vf9atVzng6Z/stxZyqQ0D5wR0z2/MV0dAGL4u/wCQE/8Avr/OuJsf+P8At/8Arqv8xXa+Lv8AkBP/ANdF/nXFWH/IQtv+uq/zFAGxrjlPEU7DP+rXp9BWLdHNy5Pc1s+IGKa9cMDg+Wv9Kxro5uHPr/hS6j6CQdX/ANxv5UsHSX/rmf6UkHV/9w/ypYOkv/XM/wBKAHL/AMeg/wCuo/lXpsX+qT/dH8q8xX/j0H/XUfyr06L/AFKf7o/lQA+sXU9Zjgn8l7F7iFSRI2AQDx0HfrW0ehrypyd7cnqaYjtr+yi1jQwIUa3a3ziLHAYDla4auy8E/wDHldZ/56D+Vczqtt9j1S4gxgK52/Q8j9KAKddd4O0zCHUXZgTlEUdCO5P+e1ckBk4Fem6ZbCz023t8cogz9e/60AZlvZ3Nr4slljDG2uELOe2fT65rdoooAxPF3/ICb/rotcVYf8hC2/66r/MV13jK6WPT0tip3StuDDoMVyNh/wAhC2/66r/MUAbGv7Br1wXXcPKXj8qxbvH2l9owM8Vu65C0+vzIhAJiU8/hWHdqUunVuoODSH0GQ9W/3D/Klh6Sf7hpIvvN/un+VEX8f+4aAHr/AMev/bQfyr06H/Up/uj+VeYL/wAex/3x/I16fD/qI/8AdH8qAHHoa8ue3n3t+5k6/wB016lRTEc34LjeOzud6MuZBjcMdqyfGAQa3lepiUt9ef6Yruq4nxpCU1SKbtJHj8Qf/wBVAGVawrFrFvE/zKJU3fpmvS64G1tPN8UxRDkCRXP0A3V31ABRRRQByfjcf8eh/wB7+lc1ZcX1v/10X+ddV42Vfs9sxHzAnHP0rlLT/j8g/wCui/zoA6bUP+Rmk4/5YCud1L/kITf71dFqJC+JZCen2cfzrndR51Cb/epD6EEf3j9D/KlhG5ioIBYYGaanX8DSxcSr9aYEgzGhU4yJBx1FelWLF7C3ZupjUn8q8xc5lJ9+1dnYeKdOW3jhk86LYoUFlznA9qAOioqjb6vYXTBYLlGY9Fzg/lVzcKBDq5zxrCH06GbvHJj8CP8A61dFuFYviwBtBk9nUj86AMvwp/pes3N2RjbGAPqcD+ldfXLeCAogu3ydxZQR7YNdRuFAC0U3cKN4oA5vxt/x623+8f6VyVr/AMfcP++v8663xplrK3YD5Vcgn6j/AOtXJW5xcxH/AGx/OgDZ8TyvFq++JypMYU4rDd2kcs5JY9Sa2vFf/IRQ+qf1NYdJDYoOKKStfRdGe/cTSgi2U846t7CmIND0STU5fMkylsp+Zv73sK7FdNsVVVFpDgDAygNSwqscSxxxhI1GAB29ql6cmkAyKCKH/VRImf7qgVQvr+5tHPERXsXjcD8wCK0vrSigDmpvFMkSH9xAx7FJtw/LrWNqPiC81CBoJRGsTEEhV54966jVtGOojKPEh/2o8n8wa5WfQNShcj7K7jsyDINMBNO1q50yFo7ZY8M24llyTVtfFmohssIWHpsx/Ws/+yNR/wCfKf8A74NIdKvx1s5/+/ZoA2F8Y3I+/axH6Eirlj4sgmlCXUPkA/xhsj8eK5k6dej/AJc5/wDv2aabG7HW1n/79mgDvp0sNVt/Ld45k+8Nr9D68Gsi48KRZD2kuxl5CkZB/HNcubW5XrBKP+AGr+m6tqGmnaqu8WeY3Bx+HpSAm8VHN/H/ANc/6msOuj1KyuNaWK7sY96hdrKThlOemDWHcWlxattuIXjP+0uKENn/2Q==\"\n  },\n  {\n    \"name\": \"stencil drawing\",\n    \"prompt\": \"stencil drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"sticker art\",\n    \"prompt\": \"sticker art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"sticker drawing\",\n    \"prompt\": \"sticker drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"stippling art\",\n    \"prompt\": \"stippling art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwCFDwtOU/M1Mj6KakQcn3NADfEh22tgn+yx/lVvwyN0AHsx/UVT8TAtNaIv8MWfzP8A9ap9Au47MBZQxJUj5RnvQBo3cLZNZkqMM1t3OoWMe37TKIt4yu4daqrLY3rmO1uFkfGcAGgDDkyKhJrRvINhIrNfg0ASxctW5psZJBrDtuWFdPpajGaAMfxUp82Bv95fyxXOtXTeKx8sJ9JGH6LXMGgDY8KNjWgP70TD+VW9ZGNWn99p/QVneG2267B/tBh+lamuDGqv7opoAoZozSUcd6AHxH92lTR/eA96rxHEUf0FTwcyoP8AaoAZr7Z1FF/uxKP51DZ8yr9adrbbtVk9go/Sl0xd91GPegBPExxc26f3Yv607wuubqd/SPH6/wD1qh8StnVAv92MCrXhdfkum/3R/OgDQ1Mc5PpWDLjca3tV6kVz8h+Y0AT2nLiuq037o+lcrZn5xXT2m77OQv3mGBQBm+Kv9SvtN/NR/hXLN1rpNe50/P8A01U/oa5tqALmiNs1q0P/AE0xW74gGNTU+sQ/ma5zTm26nat6Sr/Oul8RjF7C3rGR+v8A9egDKNFJmkzQA9PuL7AVYtR/pEf1rPsZjLEQ7AsD+laFlzdxj3oApam27U7g/wC3ireiLuugfQVnXT77uZvVyf1rV8PjMrn2FAGZ4gbdrE3sFH6VpeGBi0nb1cD9KyNYbdq1yf8AbxWvoB2aZI3/AE1/woAu6uMM1c6/3q3r+VphMWOcOQOO2B/jWFJ96gCxZj94K6SO4jtYI3lJALEcDPY1zth/rBV++mZj5PG1Np98nNAEOqSebpp9Ayn+f+NYDVvXa50yYkYI2f5/WsFqAFgbZcxNnG11Ofxrcu746rdzyJ/qoFAQeozya581r+HFElxcRH+OI/zoAM0lK3HHvTSetAFTTv8AWOfRa2LA/wClx/WsiwHysfU1qWJ/0jd/dUn9KAMpzulY/wC0a3PD/WQ/SsFeTn1rS0+/NkT8gZT19aAMu9bffTt6yN/OtvTz5fh0t0y+f/HhXPu26Rm9STXQRKf+EaRVGS3OB/vZoAkd99u53AksWOPoB/SsiQ/Oa0VBjsZCwwcDH51luctQBe08/vBVm6ybmX6Kf8/nVPTz+8FW7g/6VL/uj+YoAfdf8gm4Pqsf8lrnXPOK6C4OdJmH+wlc84+agBta3ht9urqP7ykVlVe0N9msW59Wx+lAF+/j8q9lQdA2RVY9DV/W1235P95Qaz+goApW86xJgg/hWrZyg2txKO0RrCFakLhNImweWwv60AVVp7nEZpiUTHEZoArV0anbo8aD/nn/AENc3XS3A2WAX0jx/IUAQshXTCOMs46HNFrpT3C5AqaFPMs0Uf3wal1vUpNKs4ILR9k8vzM2ASF/+v8A0oApm1eylyy8Cmku13JvIyyf1FbEEy6vpEdyceZjbIB/eH+c1kTgi+VRxuBU/ln+lAFee5ZUkhzlSoHNZ78ird8MMmO6f1NVDQBHVjTm2albt6SL/Oq1PibZKjDswP60AdT4hXDQyfUVi5Nb+vDdZRv6N/MVz5PNAGcKvE7LAL/ecfoKoCpg5aMKTnBJoAlU8Uyc/KB70qnio5jkigBiDMij1IrpdROLcjtt/qK561XddxL6uK3tTP7o/gP1H+FAFzTUV4kA9c81ieKjH/bLqm4sqKHJOecdvSt7RgAm9jhVG4n0FcffXDXd7NcN1kct9B2oA6fwl5TabdbVIkDAN83BGODj86hugv8AaEPHO6o/CUnl3EsXaeHcPqpxT7vjUov+ug/nQBnX3/LL/d/qapmrd50j+h/nVM0ARnqaM0HqaQ0AdjqR83Q1f/ZU1zua31dZvDyAsM+UO/tXPZ4oAo5x1qe0jNzcxwRn55DgZ6VXbpWj4dTfrdv/ALOW/Q0AJd2dxYyCO5j2MRkc5yKpuctW14wk/wCJpGoP3YR+pNZYiT+yTcEHzPP2A57bc0ALpwzqEP1zWzqRyoHqy/1rLtUFnewPK2QyBhgf3hwK0L9wxABBw4B+oB/xoA1bCFptLniT70kZUY9xXIX8Yhv54l+7G5QfhxXcaJxGM+lcLdyedeTyj+ORm/M0AdL4bs99tbXmSPKaVT7ggf1qO/P/ABMIj/00X+daHhp1PhwBequwP1zn+tZV8227Qns4JPpzQBSvPup+NUiavzKJZIkJIBlaM+oPH+NVrfG6zfHLTEH35X/GgCGKIzSFFIB2s3PsCf6UWTAXtuSMgSLkH60/T/8Aj8A9Q4/8dNV4m2urejA0AS6guzUblfSVh+tSIcxIfal1gY1e695CfzpkJ/cj60AVmra8Jpu1Yt/djP8AMVinrXReDUzd3D+igfmf/rUAVPFL7tdmH90Kv6Cqsny6JAP708h/IKKl13fNrl2VVm/eY4GenFD2s82nWsUcZ3IXLBvlxkj1+lABcDOoWieiwj/x0VaiO5ZT6yyn9B/jTzps8t/FcAxhUKHaX5+UAf0q1b6W6Lh3yNzHK4749/agDV0lyHK9s8CsrxBpy/b7p1jX99ChTjo29VP8/wBa1bfbancltcSN9UA/nWdqy6he3ZkisplQxBCpZezhsg59qAN1rdLSxWGJFVVGPlGMnHWuZ1Aja+P7jfyY/wBK221DUJBg6WoH+3cD+lV3tEuFIuLPysgj5J89iPT3oA59j/pSf9frf+y1UhOI7X2uD/7LXQy6RCHDK8qkSeaARnJ/yKpPobIqBJgQr78sPpx19qAMmz41FB/tkVU7VtJo9zHdrMGjZRJuxu5xmqL6ZeJn9wSP9kg/yoAXWOdRdv76o35qKhgPyY96l1LJmiJBB8lAQexAxUMB+9QB/9k=\"\n  },\n  {\n    \"name\": \"stop-motion animation art\",\n    \"prompt\": \"stop-motion animation art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"stuffed toy\",\n    \"prompt\": \"stuffed toy {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"sumi-e outline art\",\n    \"prompt\": \"sumi-e outline art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"suprematism style\",\n    \"prompt\": \"suprematism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"surrealism style\",\n    \"prompt\": \"surrealism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"swirling line drawing\",\n    \"prompt\": \"swirling line drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"synthwave style\",\n    \"prompt\": \"synthwave style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"teal and orange palette\",\n    \"prompt\": \"teal and orange palette {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDnRIcfLxV6C0knsTOgztYgis+NGfIUZI5rS0zUTanyyAFJ5U9D/gaTZSWg+wvZLGXnJjb7y10VoyyWkRVs8DBHY1l3dpDdQme1IBHLL6VV06+eylw2TE3UenvQmS1Y25wTLuHDqcimXUXn2zDuOaV5Fd/MQ5U45FVPtsqXwiXbsYhTx2piF0WTbJLA3GeR9R1rXYcrjoDWe6iKZsA+x9qntHzKQe44oH0L6MC4GT1p8uBJk9qiRgXAwaS/jEqFC23oc0AVpW3F/wAqrNGHDkqBhc1IsYRFwSQOTmkLbYn3fxDNKWw4bopNSxQ+bncPl7+9KiGRwoq4qBQFHQVhThd3OutU5VZbmcTjVD/uip7iZIU3OfoPWqlw/k3zSEZ44qpNI0rl3OT/ACrqSPMnU5dOpX0pA9y4P901cuNPVxkDBqro5xdOf9k/zrbUg1hJ2Z6EI3iYiSz2RKvkqQQCOtbTWKXdlC4G2Qxrg+vFZ2tKAkZHqa0dLuCtsiOdyBRgdx9KG9g5d0EGYxscbSCeKquduohscKwJrXliSVA4OcdG9Kp3VqzqzxMQ2OcGtIyuc848pouwLqvcrkU2SRIFWVyAA1UdMmkfMcoO6MYBI7VHqImmj8qTKjOeehq0rmFSpyI17a7iuG/dkEjGRnpU15kZIGcCue0vzLJzjB3EcdTW7LIzKHZdpx0NElYVGqp6FCOSSRQXCgHoBSYLhgcnrtpGl8olWBBPSqqXb71GFxmspyS3OqnTlLVdDQij8pMfxHrVW9vBDmOPBk7n+7TdQ1AxExwjc3dvSs1LZ2ha5c7VzxuPLn2q0ktDKbbTkxHZnJZiST3NRmpcADJqJjmtLnFy21ZBppxO/wBK1kkrHsP9c/0rRBrgqu0j6GgrwItVbfEn1p9rcRlFQNhgAMHio7z5o1+tUcZrSEeaJhUn7Oozo4rpkB57Y+v1pmk3LgvvJZcAc1lWc0p3gtlUHepLC+WFj5i4VuMjtWtNNXucuJlzWcDoBJEhd1zjqaz9QnF7AI8bVBz15zTnYizMisWRjn6CqG/LHByK2SRw1Zz0toWtKlOnux++rYyCfStiS6W5tzNHwMYwexFc3I5AC5xk1r6fDKljIXGI3UFeefrSkkVRnNvUg3tP5e7JIY1XVQWyx2qD1qYslqMs2Tngdz7VWL7cluPr2rKUFNq/Q6/byowdt2F7LugZVXYnp3PuapwyLgKeWPqelJcXaspC5bPGapljuDDg1o7GEFJp36l+SVE+834VWe5ZvuDA9ar9QaeF4FS5mlOguupNY/65/pV+qFj/AK5/pV+uOr8R62H+AiuPuCqijrVucfKKgiA+fIzxW9H4TjxP8RjrRSWlApqxZQn0cCp7BcyzUqr+6k/66CtjmLRHk2RO4gEAY9+KrQq8hZlA29OafqLssESfwkZ/HFNilEcQHoKuJy179AnhcLvbHB4xW/b3Jk0lNuMLH+oOKxDMJIipPUVq2EbrpIBXlg3H40pjw7etzPmQy3MbMcktReJhJccf/rp7grNGCMEGnXQyJfoak6TniP3Y+tIR9361Iy/uQf8AbodMbPc0iluRgfK1TIvyj6U0L8svtU8a/u1+lZTZ00o3ZHY/61/pV4VRsf8AWv8ASr4rGr8R04f4COf7oqFB976VbKhhzUaxAlgOuK3o/AceJ/iMXTx+9mp8cbOkiqOd4NWbC1McshHIYckjir8FvHC7MOSxzz2rU5inNYSTLCSFwvUH09axck4FdPeXAt7WR/4iML9a5heDVIzqMtwQbnRV+8zAcmugsX82yBGR8x7YrETKlGXgqQa6UOj26MgCqVyAB0okiKEk7rqUpYg/YZFUbmNlV2YjBB6VduDjOKzJiec8g1JuZJx9nX/rpT7nBeMjGN3arFynnBFRFUg844zVe5Ux+WG7NmhlLcZjib/Pep4h+6X6VCCCJj6ip4f9Sn0rmqbHdR1f9dyvY/61/pVxpkjHzHn0FZ0LMpO04zU8MDzPhASa0dNSldmCruMeVFiGZpZCAvGOAOtaMNmT80h2+w60lnZrbfNuy5GParea1SSVkc8pOTux6/KoUHp7UO+wdck9BTJH8tNxPJ4Uepqk0pZwck5OaBFp40nAWUbufWs6+s47W5j2bih+Ygn35rRiPINJqsQe0EndD+hobaQKKb1JtMgiS53DL5U7d3OOa05j8vFUNMQGSRx0Hyr/AJ/Kr03SpTuW0o6JGZcFueKznPzbWrRuO/NZkxw2eaogikXBqCZfMI35OKsMcnmoyBQBSkTY2Oo7GnRzsnH3l9KnYBlK+tVHUqcGk0nuXGTi7ot2lixbMvyr7da1Iwsa7UXAqENTw1UQThqc0giTc34D1NV5JhEoJ5Y/dWqrzMxyW3N6+nsKVxpXJZJmkYljkn/OB7U1CSwqMZqWPikinoi7EelLqEmNPkHdsAfnUUTHtTr7AsJS2M44zTI16F7SSBakAg4YgkVbmbisjw9O0tpIGPKv/StSY4AwetJJLRDcnLWW5nXZODyfwFZc59Sa1LgnB5xWVNuJPOaYIh8xRwc041A6tToicEN26UAPNMdQ4wevY08mmGgC2DSvMIgO7HotQmQRjJ5PYetV2ckkk5J6mhuwJXJHcsxLHLHqaQGowakQVk2dEYkyH1qZahHFSA1cHczqKzLURwai1CUvFs7E0I+1c5qrNJvfrVGSNjRYlhtiF43HJq9Mfu1Q09x5YGatSt8vBoGV5+9Zk+4dD+lX52wcZrOnJ5xQIqPIw6gVH5vtSyBieaiPWgZaVg496a1Qo5Vs1KWDDIoA/9k=\"\n  },\n  {\n    \"name\": \"technical drawing\",\n    \"prompt\": \"technical drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"technopunk style\",\n    \"prompt\": \"technopunk style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"tenebrism style\",\n    \"prompt\": \"tenebrism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"teslapunk style\",\n    \"prompt\": \"teslapunk style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDCifHB/CrCmqgqVH4APUUAWU4x7VqRHcgZTwexrLWrlpLtbYejcimJmlZkBiT6fhWguCMg5FZ9kfnJOOFq4hRsEfKSM5BxQInFPFQqzA4BV/bODUiyLnB+U+jcUhkgpJP9WacKhlfjAP1oAyb7kbP77Bf1rJvDiWQ+9a86b7mP0Ukn8qxbrDXbKDnLZpghYU2R89TzUN3JtXaOp/lVkkKuTwBWZK/mOWP4UhjKKKfGm/cewBoGlcQUtNFOFAizE+R71YRiCCKoKxU5FWo3B6UAaDSZjWlVqq7+BUsbUxGjYNi6X8a2cAjBGR71hWJ/0lK3hQA0R7fuMV9uo/KqsrMHO4Z56rV3pVC5kVGYswAz1NICpPKFWVgeQpIBrAibfOWPJrQ1C8R4XCck8c/zrPhwiFzQNCXknAQd+tU6e7F3LHvTKAFRdzckDAzzU4ZUPznpxgemf51ApAbnpRJIXPsOg9KC4tJDQaUGm0mTQQSg1JG+1vaoVNPFAF5TkCpUbmqcL/wmp1ODQBpWLf6StdDGwYVzVi3+kLXQW2ecEfjTESSttFY2rN/o+PpWrcsRjI7Vi6m4KHmgDJc72ANQ3DYAQfjUgO0lj0xVVmLMSe9IYlIaKQmgBCabSk0lAD2UCmd6lZSBzyBUf8VADxxThTpF4FMGRQA8cGpt+VHrUCnNSAGgDTgO2aJh6D+VdFZtkfWuZtpMyIB2rdt7mO3iMkzhVHegRZveFH0rB1OQZCdzya2rqVJoVkjYMrDIIrm718zSNnPOBQBUnb+EfjVc09skkmmGgY0tTc5pSPmpUXNADcZNLtq1BavNMEUc4zVme1jhh++GcdQOgqXI1jTuNma2eFyI2R8cYPFZ38RqYn5TyDUP8RqjK1jStoUmQ7h0PrUIh+Ue9OtZNob5sUROzBeDgUhkOzEhFSKuKcEJmL7Ts9QKsEI33R60ANgjZnG3rmrWoL5kCqkmZUblF/zxUlioE/5Vm3MrR3s8kT4RpGXjv1piNqyKLpiQJKGmALFTwRnnpWRdJiQjsOlSaYztqUMkjcSBgufoauahCqNxzkUAYrChYGILY4AzVqPYuCeuf8KY0wCEA9VxUNvoaKK6lFvv06I4NMb71KhqiFuXJrtmnDLhcJtwBx1qGSVn6momPz/hRnFKxfMxuab/ABVJ24FM2tnpVGZOhPagFgnBIp0QIzUyD5cUAQQswbAyM9ferixyZzjH1NNQYPWnyTrH15PYCkxon3NDDJIDyq8fWs2AxiTL/MF557mtPTwZAzygFOmKq6jZpBqMCpnyZv4fx5piZA0gikJjONp3r9a1rtvNVXBBDLmqmhWQuUluJiXC/Kv1xz/OpL0lWwmABxigCm8b44GarkMOtWFnyMHg0jHKnntUl2KTfeoTpTmT5qVBgc02Shv8X4UpFKR8/TjFIQKRQ7FAHNLRVEEqHFPDBRknAquZQo9ab80hyTxQBMZmY4j/ADpyqF5PLHuajBCDAoByaANCzc7wM8VZ1H/j8tCRng7fY/5xVK0JDjFXNTfZbwy4LFH6D3BoEy3oYA0xiF2qzkgfgM/rWdqDASEZrUs8R6fCnT5BmsfUGzKaARSbawx39aarleG/OkbikyCMGkUOPNNFNJK/SlDUxCkYNNNPzk0hpDELYphcngU3JanDApiFVe5p270pmaWgBwNPBqMU4UAXrX7wqTVJisMSqcEHP6f/AF6gtjjmor6TfIB6CgRt2cu+xi55CgVm3/36dp83+jhc9KjvCGNMCi1NzTmphpDFBpDx0ptKDQA4NTs5qM+ooDUAf//Z\"\n  },\n  {\n    \"name\": \"tilt and drip drawing\",\n    \"prompt\": \"tilt and drip drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"tilt and drip painting art\",\n    \"prompt\": \"tilt and drip painting art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDl6fEAZUB6E4plKoLMAOpOBQBdY/Iyuctt4P8AeH+NaVhEJNNi/H+Zqjpwhnn8i7yHz8pzjJ9PrW3HALaFAo/dHp/snNZ4lylDToVSspamO8bW13t/hfqPpXQ2LhreIjtxWRq2I5IJMZxu/lWpaSr9ghdSCMClSqXpczHKPv2RqRn5RUlVoZOcewqz2q4yUtiGrBTGbin1QM58xlz0BOPyrRK4iVpNzuvpWZfy+bOIl+7Hy3u3/wBb+tTC4EMUsh5OAFHqaoxxvM4iRvmbl39PX8aGrMuas7GfqN8UzBCeTw7f0FZgOSB61e1uFIdQ8uMAKEXA/CqCD51+tSSa+mrutAf9o1eVcVW0kf6EP941dxTEcpUkH/HxH/vD+dR1JBxPH/vD+dIZtahp4mHmR4EmAcjv9ak0zVN6/Y7ziQfKrN/F7GpkfbuOeoxj1rO1aONovNC4cEDIqVILF7U7WTbE6jdGpbJ7rkVS0yd4xJCT+7zuA9CDiptJ1bEQgvP9WflWQ9PoalurJLW9fygfLeMt7A7ulEorkaRdPWauadpOWnAPQopFaanKA1iWH+tRyfl2KMVswndH+JFYUX7zSNcQuV2JCcCsSP8A4+pmz1BA/Mf41rzNtT9P0rFVSL98f3On4iu+nszhlK00UnR5CxMrg7um44rTsI9sYYkksoySaydWxayKkMrtK/zOONq0mktO98qvI5XaflJ4qJSTWhajJSk29CtrwI1I5OfkWs5P9Yv1FafiLjU/+ALWYn3x9ags2tLbFmB/tGr26svT2xbAe5q6r0hnOUtJRTEWbe9lhwM709DVi8uUmtcDKtkHa3Ws6ugmjjfQtzKpZI8qSORVKNzOdTka8yppaRSWskcvQtwant75bKdrK7YyWxAAbqU/+tVawhlNm80e0qpJZTwfwqrOHuZt0SM3HpSsylJX0ex1EEXkyKFbehAKt2IrRsWJR/QHisHTbgxosTbgqpkqw6H1FaNpfwqrYcY6kmlCg4Sk1syauI9o4t9C/eg/Zzj1rOLpGwkYgDqT7VM9/FKojZxkiqbMGmRQQynitIyV3B7mMldqa2MS+uvOuXliXKDgE96n0K4aTUgpAHyHpTLm3EUcgAwMNj8qb4f/AOQqP9xqmSsztmrMXxF/yEv+ALWYn3x9a1PEf/IT/wC2a1lp98fWpIL9m2IR9TVtXqjbHEI+pqcNUlGVRRRVEhWtPcFtOEK8AJz71k1ozEG0XHXy+aUm0tDWjCM5+8r2TJdNl22UkfYhiT7YpbP/AI8o/q/81qHThmF/ZHz+VTWX/HlH9X/9lrSDu0c9WKjHTqv8zWeFZF+z5IH3Sw6j1rP1awOmxKwnV1c/dAw35VsRpnJ78fzrK15s6jtYZUKoz6Vq5yXwmWHpqTak7Ip6daNqUxWGURsmD8/XHtWyLIWaJEHMjCTJJGOMVlaSANVgKAgF8Z/DpXRXC/NuPqKzu3O8jWrHlXLF3MvVEAt9wxzG38qzdA/5Cw/3WrT1Pm1znP7th+hqrpQUX1uVABKNk468VMjafQg8R/8AIT/4AtZa/eH1rT8Rf8hM/wC4tZi/eH1qSC5b/wCp/E0/NMt/9T+JpxqOpfQz6KKKsglt1VmcOAcIxGfXFW22/ZF2jB2c/Ws+rwybX/gNRN6HThl779GWdKQNaTt3AI/SlsgDboO29/8A2WmaU7CCZf4WU5/KlsObWMf7bf8AstawTTu+/wDkcVSXNdLov8zo7Y5jJPHT+lZgU3hmlcYMjhwSOAqjA/PNXJnkWBlh+8fkBPb3rIe8Ec86KxARdq+mB/8Aqq2pP4XYiL5Y7XJoY2tYvMVAxVvNX6AYP44/lW5IwljRl5DAEVz8epb5IuMD5ARjg8jIrZtkkgi8t2yIzheP4e1TzOS5mtS1FrRmfqg2xFPSJj+hqhokrPqcanoqNj8qv6oCTMxPHlsB+RrN0D/kLD/calI6KnQXxD/yEz/uLWYv3h9a0vEP/ITP+4tZg6ipMy9bf6n8TTzTLb/Ufiaeaze5otjNooorQzCtCMZsv+Ams+tGEZsf+AmsquyOrC/E/RkukAtbzD/PQ1JYxNFb7ZAM+ZkH8BVfTJTFDKBwSRz6VohcAAdAePbpXZDZHlVW05eZpWrHkHnNZ2uadBAkVypZRvVCnbBJJrSthwT2qXUrX7ZYPEOWxuX/AHhyKiT10Naexj6ZpUdyZzOWBhkKqB7d/wBK0bydoXAVRtHBLe//AOql0l/MhmlxgPI2PoDTdSj8wxjaSC3J9B1rKfM17p0Rcef3tjOu5fMjeM8b1+XPYmq+jWzwaoN/9xqmvIwWKf3gOvvVrTyfOZJf9fF8r/7Q7GtpJWKdnFMyfEH/ACEz/uLWYOorS1//AJCbf7o/lWaOorIzL9qP3H4mpCKbZjNsPqakIrN7mi2MmiiitDMDWnasq2OX+6Cfx9qz0jaRwq9TV6wUPeQQn54w/II4IqZpWuzWlJp+6S2yb5JQABhc8cAVpRIp5JyMnvUSJ5V5MAmAUUYHOBU6nYMFTjcevepnVUbrqYKnzu5ftwoXg+tWtwUgk9BVW3YMp4x/+oVZcrswwBBB49a1vcVraFDRGDaemBgEtx/wI1YnXI/A1V0WWMW7RKwLKTkZ6c1NJOOfUA9jVdRN6GTdnbKrcnGOv4Ut05hu5LuEA7ZMMF7jHNMvn3hcqRtwOakdgIJtoJRkzyO5UZrSZpGV4oy9akWa/wDMQ5VkUj8qojrWnYRR3EbxMg8wZZCR94dxTZrVVRmA6DNYAPsh/oo+pqQio7I4tl+pqU1m9zToYtFFFaGZbiwI1ROWcfMfQelTaYSL+Ij+/VWLgCrFlIIpd57NxxWNRtpo7aUUki9EZEuA+7O+PJz+VWjM+SNuQKoRzAyocjO0/wA6siX9514+lc1XV3sOnHlTXma0L5i3c/d6ClupjDEh2bx0wTioYJPkHPaqOr3LIFTzSu4Zx/XNd8Fszzpvch0mZY9QlXyX3uflI6KM+ma0nl+Q++a5iOYxziTLFs9TWvJcYzkDGfrW0VczqNxsiO7mL4zjBx+mRUU05+ZN+AYxx74qOaXnO07QSKaXTymyec9PXitJI3pL3dSxaRn7H5qMRJD8ye5zU97tlsmuYx8rqcj+6apRzBLdAOjZBGeeDSi62QXUJ+5KpK+zVzCEtTi3Wpc1Bb/6lalrNmqP/9k=\"\n  },\n  {\n    \"name\": \"torn paper collage art\",\n    \"prompt\": \"torn paper collage art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwB2q6ldxGN4ZdgORgcj9aNP8QEQst4jyyA8MoA4qLVoMiUAH5W3AfzrLs4nln2ocDGTWV9TpUU6Z1NtrNvPMsbI8W7gM2MZrSIAI3EDJwPeuPPZSMg5zVuG+mCIjyFkU5Vj1Wquc9jptlVvOZbswsBgng1nwX0yzBmkLDHIPStMNBPG0xj3Ece9MCZVDDIOQe9QiYiXy5EIJOAfWmrcvvBZNkY9quKwdQw6H2oAqLI+4+amxR3NSxvHKDsbOKZOJJiYwoBHfsRUS/6CSBEdh/iB/wA4oAg1W7e22RQttdvmZsZwP/r1kvqOog5SZiMZ5Qf4Va1Sbz7sZH7tVyKz5mYknPvQMuW3iQY23cByvBZD1/Cq2o6s98hWMGODP3e7fWs0w87yeDzirVnCZWJ2ZAGQD0oAbb3clo+EYhJBh8dK3LKQ7lRXIB5IB6+lc7cruYIpBLHrj86v6VFMjhXclCRxUsq2hZnUskoBHcZNZliwit5ZM/OSEArRL5up7diRyWU+1ZVwhiv2X+FzkAUiovRosbipUjkYOQe9OUBvuHBx90/55qM43Lk44P0p4XAyenHIqjMnibacDJA7ela+mzhF7nPQD1rHRiw5I+vrVy3YqFOMfNQgZ0GBIuHT8DXNaz4jkiu2gsnCLGcM4AO4/wCFdGN0tvwcMy8H0rzu/wBPu7OVvtELoCxAJHB/GrJO20PVRqlqxbAmjOHA7+hqxeO8ds2WyTxwMYrmPCdvdxX5k8l1hZCGZlIB9K6HV3xbqAep6UgMW7YeaCTwB09arON2TnFPnYebzycDFRuSBwcZqShipuUn+6N3rVi7vRb2CKoy0g9Mce9MjmghwZAxkPAJ6VJ9vtRDuWFnY8DcOKRSt1KttDIxSSYcsMqMYwK17cBXT/eFZdvcmWfMpxk8c8CtVcMABghjikDZVMPm6lLL5nKkrs9qzr1WXUCQu7jOPatOYBb4kL8xY4Pv6Gs+4PmXkm4FDtGB7d6Y4uw5ImldcdMcn0qwIkhjLct056CpbZ4re3WORt7dflFJPcxyRsixHB75oJGxEM2QBVlSQwU+tUoeHypxxVgSB5QVIOSOlCBmnc37WsVukZ5YZY4zgVQvbkXqIJW34AYDGAMkYpNYVo4opVBJddqgdc+9Z0c2FlR8gsMj2YdB+lNi2RoDUZ7IGKGTMSYVQwzz/hVu/uFuLOKUfxqM+x71zheSTJVSUiOWI9z1P41sTEDToyCcsNxHpTFYqbh5mMZzgA1PLEEA2jOePUGqobnGPlJBPrVuJlBDSSkqPuj0pFFb5lXaVzkkKpHf1potsQ7MY29PrWk+CwJAz2qCKRJmIBGA2DSAq21ozFsjAHf1q5FC8bKd5HzDpVlVA4XpVWWbdqdvAp4VwW+ueKQwuS0Z8z7zI2SPWmzxrcRJIhALY2t9abd5kmughO+Nzn6dRVeGUrbFCcfxIT6+lVbS5N9bD5bR45drklex9aTBAJHBHSrjQyXPlzI+Rj7vsaYI/KfMpCj3qSitEcEgntU0I2uvHA71YuLm3hRVUI7scDHQfWq8WWkPOQDTEW7iVZ7y0iJwkWGcnoAOT/KqEsAvb25nh+SFmLDIpofMMkjEgzNsX6Z5/pV61eMXItv4Yxuduwxzj+tMGV9G8tY7i0uAB9qUbHPr2H503e4iNrMu2SM4xTjsktTJs2hSShP93ND7rmMSZ/fIMf7wpXuCII1JfaOncY/WrJWJpFy4EgHAB6iqxYhd6FlJ4yOMe1Mj2m4V5Izvz94NyaAHTtIreWjkZXgY5GfSmWsflFjgjtVuePfGrIASD1p+6KePbGfnTqD1oAjkunhiZl5I6ZqCzjxKsjMxZnBzjknNJcfMyR55zkirUAAmhUYAVwWOffpSQMbG4Gr3UT9XOR74pLi2PTblKr39lObyW4ifBDkg55qbTr5roPHMAHTuO9MpoqeTOH8qJ3AbsGIFWWtGjiG35iPvUtxEbdBsJyDuU+laVq6XEKyAY3Dp6UEmFGcNkDv3q+XWOBiTjPGakvnhY/Ioyp6+tVUAnOxx8tADLqRLaGHceRGCq+mef1qm9yVskjRv3su5pW9AT0rU1fTZZ7WKWAFxEu3Yqks3vxWHHE0rCKNSZJDgD1Jq1sS9y4dULaZEg4mhfafR0IxVnQJTK8kZwdq5GT2rGWB2YIqkvnGPeuo0W0ks9PYzpsaQ5Xvx/Sh2sGpTuo3W4zGPlJ55pJQGY8/KKmu25PQUWcQZC4IPbHpUFkVtOIVKOCR/Km/I9yBG+H27gR6VYazkeX5BtQ85qH+zmW9WRSVIGeKAQ4wOJPNY7jVm3hw0QPXeD+tSSOkC7pWCL6k1Al8slxH5P3Q46/xHP8qVrivYet1DMhJwAxPJ6dazVieyuDLGck569CKsGFYYHCDIOTTbbE1koX7yfKRT8wT6Eh1GCWPbKjqT7ZFQLOyW7RREheTkd6ik2I6q/BamgMfl3cFccHrQFidzHJECrfP1PvUlquG5BAxVREznnp2NaVuiGNeOMYIIOPypgbFgxEY2OPbd3/KsK4tfsusqQu0CVXA9BnNbOnugPcY/2cfpVW9jFzqSkkhWcLx6CkwW5Q0K3E2tFuyFn/w/nW7eu+MOD9enNZXhxRHqcydflYfka1rwMcrEAwXnr0p9Ae5i3HykMwHPqcVVa4aAsImIB/WrtwC5G/8Adg/wkZJrPkjGCRux0yRikBatbyRZDFFJu3dPNHf0FTT3c9tC7yxgv0B7Z7Vlsueh6ippb55LE283zHjD9+vegCErJdN5k7s7DpnoKuWcQWeL/fH86jtlyEU9M1oRRASRsOzj+dXF9zOSd9CpIzLgdjwRVaOQ2VyxKkxv94Dt71c2MVAYZ96jmQM6gjGTj86UrLYqN3uS3KQ+WsmAycH1xnvWc64lKKMjPBHpUjRfZpi2DtIz/wDWp2+3dAYslv7vRh/jUlE0Lxsu1sKy9CRk/wAqs28Yil5kPPQl6jiXaQWz9VU5qVY03bpoEGehfJJoA17MoH27gH7hf6mq5jI1RR/ddj+hIp1sSAAqlQOmRgfhVDVdQez1qEnlGX5hjrnIzT3Fci8NgteyMd3CnkepNbt3+7UFSxOMEAZzVLw3D5envJ/FI56+g/yas3EOCZF+8eysQM0+gPcypowr/vZNwbuFwaqXSkfwhVHbdz+PpVx2d3P2pYtx+6FBJNQSQoOVVl7lfu1IygVLbWYYz0xSYU5xzk4FPlIkkOJOP0pFMduhlk5UHgZ5Y+1AEzSrbBCQSSTgD0qe3vDNcRBVKpuHJ65zVJGa6l8x1C56AdhWhbKqzRjaPvDt71fLZGblrYmUb55omHygkqfx6VHJAGBjkYqP4W9Kp3V9cSOVgHlKCeR1P41VW0kmbdIWf15zWaRqzVmjY2x3srMvVh0YetU7eO3kkI84xt6dqatrDFh0mbef4QpyfYitAOev2RVX1Zuf0FPYQyJoMFVlmB/vKCVqeCMwR7jKpj6420yOMjMhuWAPoflH60Nahm3BTJnvuJx+tCE7ouxXEXlBU24PcVz+u3G/U0Y/MEQD61qPFN5eEGPTPGKoXGnSbwZMfUE1WwlqW9I1XbYxxEsChIOOO9XDfCTePu7u461St7GONQGG4+o61bAtSAnKgd3TAP50hjJpFfnDZxxgCq02SAHADdio6fnV/wA61TgEOR/cUmoTHPNJujAKZ6Srg/pSYGebUNkvIHx2C8n8qzbuNhckPgEAYA7Vq3tvKbgrvcKgGNvGTVWazlLhmYyY7k5OKnm6G1NJO7JLMYhRD1xxV6BcTRk/3h/OqYjdxjowHBx0qS3naSRI3Uhw4Dccda0jNOJhOm+Y/9k=\"\n  },\n  {\n    \"name\": \"triadic palette\",\n    \"prompt\": \"triadic palette {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"ukiyo-e style\",\n    \"prompt\": \"ukiyo-e style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"underpainting technique\",\n    \"prompt\": \"underpainting technique {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"vaporwave style\",\n    \"prompt\": \"vaporwave style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"vector art\",\n    \"prompt\": \"vector art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"verdure tapestry drawing\",\n    \"prompt\": \"verdure tapestry drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"victorian style\",\n    \"prompt\": \"victorian style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"vintage style\",\n    \"prompt\": \"vintage style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"vivid color palette\",\n    \"prompt\": \"vivid color palette {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"vorticism style\",\n    \"prompt\": \"vorticism style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"warm color palette\",\n    \"prompt\": \"warm color palette {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"waterbrush strokes\",\n    \"prompt\": \"waterbrush strokes {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"watercolor drawing\",\n    \"prompt\": \"watercolor drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"waved lines drawing\",\n    \"prompt\": \"waved lines drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"wax crayon drawing\",\n    \"prompt\": \"wax crayon drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"wax pastel painting\",\n    \"prompt\": \"wax pastel painting {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"westernpunk style\",\n    \"prompt\": \"westernpunk style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"wet watercolor art\",\n    \"prompt\": \"wet watercolor art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"whimsical style\",\n    \"prompt\": \"whimsical style {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"wire sculpture art\",\n    \"prompt\": \"wire sculpture art {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"wireframe drawing\",\n    \"prompt\": \"wireframe drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"woodblock print\",\n    \"prompt\": \"woodblock print {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABcQERQRDhcUEhQaGBcbIjklIh8fIkYyNSk5UkhXVVFIUE5bZoNvW2F8Yk5QcptzfIeLkpSSWG2grJ+OqoOPko3/2wBDARgaGiIeIkMlJUONXlBejY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3/wAARCACAAIADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDo6guL2G2cJJuLEbsKueKnrF1eRo79SpAPljg9G5PFQMu/2tbf3Zf++KP7Wt/7sv8A3xWVhXj8yL7o4ZT1U+9Ih+aiwGwmpQv91ZD/AMBqT7WMZ8if/visOX73B7/4Vr6YzPaANghThee1AEv2sf8APCf/AL4o+1/9MJ/++KlBBYjuKdikMg+1/wDTCf8A74pjahErhGjmDHkApSf8u/8AwL+lVJP+P6L/AHTTEXG1GFQSyTAD/pmaj/te1PQSn/tmainzsb6VRiC7S7n92mCT6n0FAGp/a9qOvm/9+zR/a9p6yf8Aftv8KwZpDJIWIx6AdqYFzwDx3NOwHVW9zFcx74W3KDg8YwalFZmhn/Rpf+un/sorTFIYlYGvRtJdjaM4jH8zW/3rOuQGv3BAIMS8H6mhCMG1ndZMfxgdT0I9DV5QH+eLgfxKeqn/AApbmyVcyp2Bznt/jVGB5YJNrZBUcH29PcUwLcgPcjOf6CpbS6ktyfLwd3Y1FMc84xn/AAppAGPegDd3lHZsDOBxT4pC4bIAx6VRgdjH8xzjgfSp0bg89xUjAn90B71Vk/4/Yz/smrFVbhttwjeimmA64dVQhj1GKzbiYMiRRjCIOnqe5rRv1P2OErnO/d9ay5rUuMgkHHUGmhEapk9acATwvA9abEDEhEhyScjHemyOzDGML6CgRv6Hxby4ORvHP/ARWmKytB/49ZP98f8AoIrVHWkMSs+4/wCQi2P+eS/zNaFZ9wcai3/XJf5mgZFc/wDHrJ/umq10qjDYyePxqzdc20n+6agvBiI/hTEMjjWeNsnDA8UiwOzBO49KihOJExz9KvwTqjkP07+opAQTXcNllGcs56qnOKii1eLo6uv+1waj1LT4gJLmBxt6lev5VloUd1UNyxA6U0hXOnEu6MSIRJGf4lqpIwklY5JAFWbaOG0thHF8zHnOevvVZ5FExQtuznJH9aQylNcGchGyAgwoJpIIx5gOOlTmIPKCuPr6VMkao3HJweT9KYFLGdv+4v8AKgoKcOq/7i/ypGzigDX0Pi3l/wB8f+gitUVlaH/qZf8AeH/oIrUHWkMSs+4x/aJz/wA8h/M1oVn3OTqJx/zyH8zQBFdf8e8mP7pqvdH9yfwqxdD/AEaT/dNQXqbLYtnPT+YoEQRcSr9alnG52PTkY/KoUTe4TJG7jI7VLs8qR4ixYKobJ60wBQM4wDng5PWqX9nRyy7V2qAxzhuWqa4fy9r89gR2IpWu49oIYHjbt2kEj0oESElRgZAHGAabIF8qIKOgOaXaTgOdrEknPb2pGXbbk8bgcA0DFgGMfj/Spv4/wNQQEkDPv/Spu4+hoAqDqP8AcX+VJQOo/wBxaTPtQBr6H/qZv94f+gitQdaytD/1U3+8P/QRWqOtIY2s+5ONRP8A1yH8zWhWdcHGpH/riP5mgBlyc20v+6ahv/8Aj0Ofapbg/wCjSf7pqG//AOPNvw/nQIhhP79PqKsED7XKWGQEFVoT+/T6irgiaSeTB4ZQOOtAFKVWuCYCQAeSFPU9v0qrHZICHMrfLz0yM+lWlQxyFWwcgO27jJqRSoRG3AZ+XceQB6fUUxCwRrdERklW7nFRXMMlqr7sHceKsach+2YlcksgkQAdulaF1bLcxFG/OkMw7R2ZMtjPPT8Kt55H0NQNALUlXKqRwMt1pY50d8b1JweAc0wIB1H+4tBoT7w/3FpSAfagDV0P/VTf74/9BFagrL0TiKb/AHx/6CK1B1pANrOuf+Qkf+uQ/ma0azLo/wDEzP8A1yH8zQMbcH/RpP8AdNQ6gT9mI9cVJccwuo5JU4qObNyGhjHIABP9KYiqk0aOCwO4d61dNkWWJnCkfNjJ71njTJHcEsAo4Na0CLDEEQYA6UmBQ1Rdt2rdpFx9T/nFU3ccgLxnnufTGaua2fkgJ4UMQSPpVGIeZESrcn+dNCNQ2Uq3trPE4Com2QHuB6fnWgTTFOFAPbA/Sgt/KpKMfXB8yfUVkWn/AB8LXT3UKXEeHGccg+lZL2yW8vCnPYgdapMREn3h/uipAo2UA+Xz1TofanMuFyORQBo6L/q5/wDfH/oIrTHWszRf9VP/ANdP6CtMdaQDazLo/wDE0b/riP5mtOsbUpBHqLE8nylAHryaEA2aUlgkf+sbp/sj1q1BGsMYUVXtYtgLvzI3JP8ASrG48nvQBLmnbqh3EDApC+ATQBJcRJcW0kTjII/KsnTBvZIQAwT5mcHpz/Wrsl35SDjJPFU9LnQz3BVCpLc+n+etMDaLcn60hb9DVcyHJx/nijzDjNIZMT+lVrmMSJjv2pxfqPSgtnj1oAzASrcj2IpQfK6cxt09qmuYxneO/WoFZRkHJB6imI1NH/1c/wD10/oK0hWbo4AhlA/56f0FaIpAJWNfbP7YG8gDyQRn6mtimtGjnLorH3GaBmcJExw6/wDfQpQwz94fnV77PAesMf8A3wKPs1v/AM8I/wDvgUAUS3BxSYyMVe+yW/8Azwj/AO+BR9ktv+eEf/fIoEZzwBuD0FCQrEPkGMnmtH7Hbf8APCP/AL5FH2O2/wCeEf8A3zQBRAOaAcrV77Hbf88I/wDvmk+x23/PCP8A75FAFLPNJyOKvfY7X/n3j/75pPsVr/z7x/8AfNAzPfB69DVJ42RyACR2IFbv2O1/594/++RSfYrX/n3j/wC+RRcRBpH+pm/66n+QrQFRxRxwptiRUXrhRgU8GgZ//9k=\"\n  },\n  {\n    \"name\": \"woodcut drawing\",\n    \"prompt\": \"woodcut drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"woodcut technique\",\n    \"prompt\": \"woodcut technique {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  },\n  {\n    \"name\": \"zig-zag lines drawing\",\n    \"prompt\": \"zig-zag lines drawing {prompt}\",\n    \"negative\": \"\",\n    \"extra\": \"\",\n    \"preview\": \"data:image/jpeg;base64,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\"\n  }\n]\n"
  },
  {
    "path": "html/licenses.html",
    "content": "<style>\n    #licenses h2 {font-size: 1.2em; font-weight: bold; margin-bottom: 0.2em;}\n    #licenses small {font-size: 0.95em; opacity: 0.85;}\n    #licenses pre { margin: 1em 0 2em 0;}\n</style>\n\n<h2><a href=\"https://github.com/sczhou/CodeFormer/blob/master/LICENSE\">CodeFormer</a></h2>\n<small>Parts of CodeFormer code had to be copied to be compatible with GFPGAN.</small>\n<pre>\nS-Lab License 1.0\n\nCopyright 2022 S-Lab\n\nRedistribution and use for non-commercial purpose in source and\nbinary forms, with or without modification, are permitted provided\nthat the following conditions are met:\n\n1. Redistributions of source code must retain the above copyright\n   notice, this list of conditions and the following disclaimer.\n\n2. Redistributions in binary form must reproduce the above copyright\n   notice, this list of conditions and the following disclaimer in\n   the documentation and/or other materials provided with the\n   distribution.\n\n3. Neither the name of the copyright holder nor the names of its\n   contributors may be used to endorse or promote products derived\n   from this software without specific prior written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n\"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\nLIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\nA PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\nHOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\nSPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\nLIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\nDATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\nTHEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\nOF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n\nIn the event that redistribution and/or use for commercial purpose in\nsource or binary forms, with or without modification is required,\nplease contact the contributor(s) of the work.\n</pre>\n\n\n<h2><a href=\"https://github.com/victorca25/iNNfer/blob/main/LICENSE\">ESRGAN</a></h2>\n<small>Code for architecture and reading models copied.</small>\n<pre>\nMIT License\n\nCopyright (c) 2021 victorca25\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n</pre>\n\n<h2><a href=\"https://github.com/xinntao/Real-ESRGAN/blob/master/LICENSE\">Real-ESRGAN</a></h2>\n<small>Some code is copied to support ESRGAN models.</small>\n<pre>\nBSD 3-Clause License\n\nCopyright (c) 2021, Xintao Wang\nAll rights reserved.\n\nRedistribution and use in source and binary forms, with or without\nmodification, are permitted provided that the following conditions are met:\n\n1. Redistributions of source code must retain the above copyright notice, this\n   list of conditions and the following disclaimer.\n\n2. Redistributions in binary form must reproduce the above copyright notice,\n   this list of conditions and the following disclaimer in the documentation\n   and/or other materials provided with the distribution.\n\n3. Neither the name of the copyright holder nor the names of its\n   contributors may be used to endorse or promote products derived from\n   this software without specific prior written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\nAND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\nIMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\nDISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE\nFOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\nDAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR\nSERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\nCAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,\nOR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\nOF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n</pre>\n\n<h2><a href=\"https://github.com/invoke-ai/InvokeAI/blob/main/LICENSE\">InvokeAI</a></h2>\n<small>Some code for compatibility with OSX is taken from lstein's repository.</small>\n<pre>\nMIT License\n\nCopyright (c) 2022 InvokeAI Team\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n</pre>\n\n<h2><a href=\"https://github.com/Hafiidz/latent-diffusion/blob/main/LICENSE\">LDSR</a></h2>\n<small>Code added by contirubtors, most likely copied from this repository.</small>\n<pre>\nMIT License\n\nCopyright (c) 2022 Machine Vision and Learning Group, LMU Munich\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n</pre>\n\n<h2><a href=\"https://github.com/pharmapsychotic/clip-interrogator/blob/main/LICENSE\">CLIP Interrogator</a></h2>\n<small>Some small amounts of code borrowed and reworked.</small>\n<pre>\nMIT License\n\nCopyright (c) 2022 pharmapsychotic\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n</pre>\n\n<h2><a href=\"https://github.com/JingyunLiang/SwinIR/blob/main/LICENSE\">SwinIR</a></h2>\n<small>Code added by contributors, most likely copied from this repository.</small>\n\n<pre>\n                                 Apache License\n                           Version 2.0, January 2004\n                        http://www.apache.org/licenses/\n\n   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n\n   1. Definitions.\n\n      \"License\" shall mean the terms and conditions for use, reproduction,\n      and distribution as defined by Sections 1 through 9 of this document.\n\n      \"Licensor\" shall mean the copyright owner or entity authorized by\n      the copyright owner that is granting the License.\n\n      \"Legal Entity\" shall mean the union of the acting entity and all\n      other entities that control, are controlled by, or are under common\n      control with that entity. For the purposes of this definition,\n      \"control\" means (i) the power, direct or indirect, to cause the\n      direction or management of such entity, whether by contract or\n      otherwise, or (ii) ownership of fifty percent (50%) or more of the\n      outstanding shares, or (iii) beneficial ownership of such entity.\n\n      \"You\" (or \"Your\") shall mean an individual or Legal Entity\n      exercising permissions granted by this License.\n\n      \"Source\" form shall mean the preferred form for making modifications,\n      including but not limited to software source code, documentation\n      source, and configuration files.\n\n      \"Object\" form shall mean any form resulting from mechanical\n      transformation or translation of a Source form, including but\n      not limited to compiled object code, generated documentation,\n      and conversions to other media types.\n\n      \"Work\" shall mean the work of authorship, whether in Source or\n      Object form, made available under the License, as indicated by a\n      copyright notice that is included in or attached to the work\n      (an example is provided in the Appendix below).\n\n      \"Derivative Works\" shall mean any work, whether in Source or Object\n      form, that is based on (or derived from) the Work and for which the\n      editorial revisions, annotations, elaborations, or other modifications\n      represent, as a whole, an original work of authorship. For the purposes\n      of this License, Derivative Works shall not include works that remain\n      separable from, or merely link (or bind by name) to the interfaces of,\n      the Work and Derivative Works thereof.\n\n      \"Contribution\" shall mean any work of authorship, including\n      the original version of the Work and any modifications or additions\n      to that Work or Derivative Works thereof, that is intentionally\n      submitted to Licensor for inclusion in the Work by the copyright owner\n      or by an individual or Legal Entity authorized to submit on behalf of\n      the copyright owner. For the purposes of this definition, \"submitted\"\n      means any form of electronic, verbal, or written communication sent\n      to the Licensor or its representatives, including but not limited to\n      communication on electronic mailing lists, source code control systems,\n      and issue tracking systems that are managed by, or on behalf of, the\n      Licensor for the purpose of discussing and improving the Work, but\n      excluding communication that is conspicuously marked or otherwise\n      designated in writing by the copyright owner as \"Not a Contribution.\"\n\n      \"Contributor\" shall mean Licensor and any individual or Legal Entity\n      on behalf of whom a Contribution has been received by Licensor and\n      subsequently incorporated within the Work.\n\n   2. Grant of Copyright License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      copyright license to reproduce, prepare Derivative Works of,\n      publicly display, publicly perform, sublicense, and distribute the\n      Work and such Derivative Works in Source or Object form.\n\n   3. Grant of Patent License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      (except as stated in this section) patent license to make, have made,\n      use, offer to sell, sell, import, and otherwise transfer the Work,\n      where such license applies only to those patent claims licensable\n      by such Contributor that are necessarily infringed by their\n      Contribution(s) alone or by combination of their Contribution(s)\n      with the Work to which such Contribution(s) was submitted. If You\n      institute patent litigation against any entity (including a\n      cross-claim or counterclaim in a lawsuit) alleging that the Work\n      or a Contribution incorporated within the Work constitutes direct\n      or contributory patent infringement, then any patent licenses\n      granted to You under this License for that Work shall terminate\n      as of the date such litigation is filed.\n\n   4. Redistribution. You may reproduce and distribute copies of the\n      Work or Derivative Works thereof in any medium, with or without\n      modifications, and in Source or Object form, provided that You\n      meet the following conditions:\n\n      (a) You must give any other recipients of the Work or\n          Derivative Works a copy of this License; and\n\n      (b) You must cause any modified files to carry prominent notices\n          stating that You changed the files; and\n\n      (c) You must retain, in the Source form of any Derivative Works\n          that You distribute, all copyright, patent, trademark, and\n          attribution notices from the Source form of the Work,\n          excluding those notices that do not pertain to any part of\n          the Derivative Works; and\n\n      (d) If the Work includes a \"NOTICE\" text file as part of its\n          distribution, then any Derivative Works that You distribute must\n          include a readable copy of the attribution notices contained\n          within such NOTICE file, excluding those notices that do not\n          pertain to any part of the Derivative Works, in at least one\n          of the following places: within a NOTICE text file distributed\n          as part of the Derivative Works; within the Source form or\n          documentation, if provided along with the Derivative Works; or,\n          within a display generated by the Derivative Works, if and\n          wherever such third-party notices normally appear. The contents\n          of the NOTICE file are for informational purposes only and\n          do not modify the License. You may add Your own attribution\n          notices within Derivative Works that You distribute, alongside\n          or as an addendum to the NOTICE text from the Work, provided\n          that such additional attribution notices cannot be construed\n          as modifying the License.\n\n      You may add Your own copyright statement to Your modifications and\n      may provide additional or different license terms and conditions\n      for use, reproduction, or distribution of Your modifications, or\n      for any such Derivative Works as a whole, provided Your use,\n      reproduction, and distribution of the Work otherwise complies with\n      the conditions stated in this License.\n\n   5. Submission of Contributions. Unless You explicitly state otherwise,\n      any Contribution intentionally submitted for inclusion in the Work\n      by You to the Licensor shall be under the terms and conditions of\n      this License, without any additional terms or conditions.\n      Notwithstanding the above, nothing herein shall supersede or modify\n      the terms of any separate license agreement you may have executed\n      with Licensor regarding such Contributions.\n\n   6. Trademarks. This License does not grant permission to use the trade\n      names, trademarks, service marks, or product names of the Licensor,\n      except as required for reasonable and customary use in describing the\n      origin of the Work and reproducing the content of the NOTICE file.\n\n   7. Disclaimer of Warranty. Unless required by applicable law or\n      agreed to in writing, Licensor provides the Work (and each\n      Contributor provides its Contributions) on an \"AS IS\" BASIS,\n      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\n      implied, including, without limitation, any warranties or conditions\n      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\n      PARTICULAR PURPOSE. You are solely responsible for determining the\n      appropriateness of using or redistributing the Work and assume any\n      risks associated with Your exercise of permissions under this License.\n\n   8. Limitation of Liability. In no event and under no legal theory,\n      whether in tort (including negligence), contract, or otherwise,\n      unless required by applicable law (such as deliberate and grossly\n      negligent acts) or agreed to in writing, shall any Contributor be\n      liable to You for damages, including any direct, indirect, special,\n      incidental, or consequential damages of any character arising as a\n      result of this License or out of the use or inability to use the\n      Work (including but not limited to damages for loss of goodwill,\n      work stoppage, computer failure or malfunction, or any and all\n      other commercial damages or losses), even if such Contributor\n      has been advised of the possibility of such damages.\n\n   9. Accepting Warranty or Additional Liability. While redistributing\n      the Work or Derivative Works thereof, You may choose to offer,\n      and charge a fee for, acceptance of support, warranty, indemnity,\n      or other liability obligations and/or rights consistent with this\n      License. However, in accepting such obligations, You may act only\n      on Your own behalf and on Your sole responsibility, not on behalf\n      of any other Contributor, and only if You agree to indemnify,\n      defend, and hold each Contributor harmless for any liability\n      incurred by, or claims asserted against, such Contributor by reason\n      of your accepting any such warranty or additional liability.\n\n   END OF TERMS AND CONDITIONS\n\n   APPENDIX: How to apply the Apache License to your work.\n\n      To apply the Apache License to your work, attach the following\n      boilerplate notice, with the fields enclosed by brackets \"[]\"\n      replaced with your own identifying information. (Don't include\n      the brackets!)  The text should be enclosed in the appropriate\n      comment syntax for the file format. We also recommend that a\n      file or class name and description of purpose be included on the\n      same \"printed page\" as the copyright notice for easier\n      identification within third-party archives.\n\n   Copyright [2021] [SwinIR Authors]\n\n   Licensed under the Apache License, Version 2.0 (the \"License\");\n   you may not use this file except in compliance with the License.\n   You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n   Unless required by applicable law or agreed to in writing, software\n   distributed under the License is distributed on an \"AS IS\" BASIS,\n   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n   See the License for the specific language governing permissions and\n   limitations under the License.\n</pre>\n\n<h2><a href=\"https://github.com/AminRezaei0x443/memory-efficient-attention/blob/main/LICENSE\">Memory Efficient Attention</a></h2>\n<small>The sub-quadratic cross attention optimization uses modified code from the Memory Efficient Attention package that Alex Birch optimized for 3D tensors. This license is updated to reflect that.</small>\n<pre>\nMIT License\n\nCopyright (c) 2023 Alex Birch\nCopyright (c) 2023 Amin Rezaei\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n</pre>\n\n<h2><a href=\"https://github.com/huggingface/diffusers/blob/c7da8fd23359a22d0df2741688b5b4f33c26df21/LICENSE\">Scaled Dot Product Attention</a></h2>\n<small>Some small amounts of code borrowed and reworked.</small>\n<pre>\n   Copyright 2023 The HuggingFace Team. All rights reserved.\n\n   Licensed under the Apache License, Version 2.0 (the \"License\");\n   you may not use this file except in compliance with the License.\n   You may obtain a copy of the License at\n\n      http://www.apache.org/licenses/LICENSE-2.0\n\n   Unless required by applicable law or agreed to in writing, software\n   distributed under the License is distributed on an \"AS IS\" BASIS,\n   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n   See the License for the specific language governing permissions and\n   limitations under the License.\n\n                                 Apache License\n                           Version 2.0, January 2004\n                        http://www.apache.org/licenses/\n\n   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n\n   1. Definitions.\n\n      \"License\" shall mean the terms and conditions for use, reproduction,\n      and distribution as defined by Sections 1 through 9 of this document.\n\n      \"Licensor\" shall mean the copyright owner or entity authorized by\n      the copyright owner that is granting the License.\n\n      \"Legal Entity\" shall mean the union of the acting entity and all\n      other entities that control, are controlled by, or are under common\n      control with that entity. For the purposes of this definition,\n      \"control\" means (i) the power, direct or indirect, to cause the\n      direction or management of such entity, whether by contract or\n      otherwise, or (ii) ownership of fifty percent (50%) or more of the\n      outstanding shares, or (iii) beneficial ownership of such entity.\n\n      \"You\" (or \"Your\") shall mean an individual or Legal Entity\n      exercising permissions granted by this License.\n\n      \"Source\" form shall mean the preferred form for making modifications,\n      including but not limited to software source code, documentation\n      source, and configuration files.\n\n      \"Object\" form shall mean any form resulting from mechanical\n      transformation or translation of a Source form, including but\n      not limited to compiled object code, generated documentation,\n      and conversions to other media types.\n\n      \"Work\" shall mean the work of authorship, whether in Source or\n      Object form, made available under the License, as indicated by a\n      copyright notice that is included in or attached to the work\n      (an example is provided in the Appendix below).\n\n      \"Derivative Works\" shall mean any work, whether in Source or Object\n      form, that is based on (or derived from) the Work and for which the\n      editorial revisions, annotations, elaborations, or other modifications\n      represent, as a whole, an original work of authorship. For the purposes\n      of this License, Derivative Works shall not include works that remain\n      separable from, or merely link (or bind by name) to the interfaces of,\n      the Work and Derivative Works thereof.\n\n      \"Contribution\" shall mean any work of authorship, including\n      the original version of the Work and any modifications or additions\n      to that Work or Derivative Works thereof, that is intentionally\n      submitted to Licensor for inclusion in the Work by the copyright owner\n      or by an individual or Legal Entity authorized to submit on behalf of\n      the copyright owner. For the purposes of this definition, \"submitted\"\n      means any form of electronic, verbal, or written communication sent\n      to the Licensor or its representatives, including but not limited to\n      communication on electronic mailing lists, source code control systems,\n      and issue tracking systems that are managed by, or on behalf of, the\n      Licensor for the purpose of discussing and improving the Work, but\n      excluding communication that is conspicuously marked or otherwise\n      designated in writing by the copyright owner as \"Not a Contribution.\"\n\n      \"Contributor\" shall mean Licensor and any individual or Legal Entity\n      on behalf of whom a Contribution has been received by Licensor and\n      subsequently incorporated within the Work.\n\n   2. Grant of Copyright License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      copyright license to reproduce, prepare Derivative Works of,\n      publicly display, publicly perform, sublicense, and distribute the\n      Work and such Derivative Works in Source or Object form.\n\n   3. Grant of Patent License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      (except as stated in this section) patent license to make, have made,\n      use, offer to sell, sell, import, and otherwise transfer the Work,\n      where such license applies only to those patent claims licensable\n      by such Contributor that are necessarily infringed by their\n      Contribution(s) alone or by combination of their Contribution(s)\n      with the Work to which such Contribution(s) was submitted. If You\n      institute patent litigation against any entity (including a\n      cross-claim or counterclaim in a lawsuit) alleging that the Work\n      or a Contribution incorporated within the Work constitutes direct\n      or contributory patent infringement, then any patent licenses\n      granted to You under this License for that Work shall terminate\n      as of the date such litigation is filed.\n\n   4. Redistribution. You may reproduce and distribute copies of the\n      Work or Derivative Works thereof in any medium, with or without\n      modifications, and in Source or Object form, provided that You\n      meet the following conditions:\n\n      (a) You must give any other recipients of the Work or\n          Derivative Works a copy of this License; and\n\n      (b) You must cause any modified files to carry prominent notices\n          stating that You changed the files; and\n\n      (c) You must retain, in the Source form of any Derivative Works\n          that You distribute, all copyright, patent, trademark, and\n          attribution notices from the Source form of the Work,\n          excluding those notices that do not pertain to any part of\n          the Derivative Works; and\n\n      (d) If the Work includes a \"NOTICE\" text file as part of its\n          distribution, then any Derivative Works that You distribute must\n          include a readable copy of the attribution notices contained\n          within such NOTICE file, excluding those notices that do not\n          pertain to any part of the Derivative Works, in at least one\n          of the following places: within a NOTICE text file distributed\n          as part of the Derivative Works; within the Source form or\n          documentation, if provided along with the Derivative Works; or,\n          within a display generated by the Derivative Works, if and\n          wherever such third-party notices normally appear. The contents\n          of the NOTICE file are for informational purposes only and\n          do not modify the License. You may add Your own attribution\n          notices within Derivative Works that You distribute, alongside\n          or as an addendum to the NOTICE text from the Work, provided\n          that such additional attribution notices cannot be construed\n          as modifying the License.\n\n      You may add Your own copyright statement to Your modifications and\n      may provide additional or different license terms and conditions\n      for use, reproduction, or distribution of Your modifications, or\n      for any such Derivative Works as a whole, provided Your use,\n      reproduction, and distribution of the Work otherwise complies with\n      the conditions stated in this License.\n\n   5. Submission of Contributions. Unless You explicitly state otherwise,\n      any Contribution intentionally submitted for inclusion in the Work\n      by You to the Licensor shall be under the terms and conditions of\n      this License, without any additional terms or conditions.\n      Notwithstanding the above, nothing herein shall supersede or modify\n      the terms of any separate license agreement you may have executed\n      with Licensor regarding such Contributions.\n\n   6. Trademarks. This License does not grant permission to use the trade\n      names, trademarks, service marks, or product names of the Licensor,\n      except as required for reasonable and customary use in describing the\n      origin of the Work and reproducing the content of the NOTICE file.\n\n   7. Disclaimer of Warranty. Unless required by applicable law or\n      agreed to in writing, Licensor provides the Work (and each\n      Contributor provides its Contributions) on an \"AS IS\" BASIS,\n      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\n      implied, including, without limitation, any warranties or conditions\n      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\n      PARTICULAR PURPOSE. You are solely responsible for determining the\n      appropriateness of using or redistributing the Work and assume any\n      risks associated with Your exercise of permissions under this License.\n\n   8. Limitation of Liability. In no event and under no legal theory,\n      whether in tort (including negligence), contract, or otherwise,\n      unless required by applicable law (such as deliberate and grossly\n      negligent acts) or agreed to in writing, shall any Contributor be\n      liable to You for damages, including any direct, indirect, special,\n      incidental, or consequential damages of any character arising as a\n      result of this License or out of the use or inability to use the\n      Work (including but not limited to damages for loss of goodwill,\n      work stoppage, computer failure or malfunction, or any and all\n      other commercial damages or losses), even if such Contributor\n      has been advised of the possibility of such damages.\n\n   9. Accepting Warranty or Additional Liability. While redistributing\n      the Work or Derivative Works thereof, You may choose to offer,\n      and charge a fee for, acceptance of support, warranty, indemnity,\n      or other liability obligations and/or rights consistent with this\n      License. However, in accepting such obligations, You may act only\n      on Your own behalf and on Your sole responsibility, not on behalf\n      of any other Contributor, and only if You agree to indemnify,\n      defend, and hold each Contributor harmless for any liability\n      incurred by, or claims asserted against, such Contributor by reason\n      of your accepting any such warranty or additional liability.\n\n   END OF TERMS AND CONDITIONS\n\n   APPENDIX: How to apply the Apache License to your work.\n\n      To apply the Apache License to your work, attach the following\n      boilerplate notice, with the fields enclosed by brackets \"[]\"\n      replaced with your own identifying information. (Don't include\n      the brackets!)  The text should be enclosed in the appropriate\n      comment syntax for the file format. We also recommend that a\n      file or class name and description of purpose be included on the\n      same \"printed page\" as the copyright notice for easier\n      identification within third-party archives.\n\n   Copyright [yyyy] [name of copyright owner]\n\n   Licensed under the Apache License, Version 2.0 (the \"License\");\n   you may not use this file except in compliance with the License.\n   You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n   Unless required by applicable law or agreed to in writing, software\n   distributed under the License is distributed on an \"AS IS\" BASIS,\n   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n   See the License for the specific language governing permissions and\n   limitations under the License.\n</pre>\n\n<h2><a href=\"https://github.com/Dao-AILab/flash-attention/blob/main/LICENSE\">Flash Attention</a></h2>\n<small>Fast and memory-efficient exact attention</small>\n<pre>\nBSD 3-Clause License\n\nCopyright (c) 2022, the respective contributors, as shown by the AUTHORS file.\nAll rights reserved.\n\nRedistribution and use in source and binary forms, with or without\nmodification, are permitted provided that the following conditions are met:\n\n* Redistributions of source code must retain the above copyright notice, this\n   list of conditions and the following disclaimer.\n\n* Redistributions in binary form must reproduce the above copyright notice,\n   this list of conditions and the following disclaimer in the documentation\n   and/or other materials provided with the distribution.\n\n* Neither the name of the copyright holder nor the names of its\n   contributors may be used to endorse or promote products derived from\n   this software without specific prior written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\nAND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\nIMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\nDISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE\nFOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\nDAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR\nSERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\nCAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,\nOR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\nOF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n</pre>\n\n<h2><a href=\"https://github.com/explosion/curated-transformers/blob/main/LICENSE\">Curated transformers</a></h2>\n<small>The MPS workaround for nn.Linear on macOS 13.2.X is based on the MPS workaround for nn.Linear created by danieldk for Curated transformers</small>\n<pre>\nThe MIT License (MIT)\n\nCopyright (C) 2021 ExplosionAI GmbH\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n</pre>\n\n<h2><a href=\"https://github.com/madebyollin/taesd/blob/main/LICENSE\">TAESD</a></h2>\n<small>Tiny AutoEncoder for Stable Diffusion option for live previews</small>\n<pre>\nMIT License\n\nCopyright (c) 2023 Ollin Boer Bohan\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n</pre>\n\n<h2><a href=\"https://github.com/microsoft/Olive/blob/main/LICENSE\">Olive</a></h2>\n<small>An easy-to-use hardware-aware model optimization tool that composes industry-leading techniques across model compression, optimization, and compilation.</small>\n<pre>\nMIT License\n\nCopyright (c) Microsoft Corporation.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE\n</pre>\n"
  },
  {
    "path": "html/locale_de.json",
    "content": "{\n  \"icons\": [\n    {\n      \"id\": \"\",\n      \"label\": \"🎲️\",\n      \"localized\": \"🎲️\",\n      \"reload\": \"\",\n      \"hint\": \"Zufälligen Seed verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔄\",\n      \"localized\": \"🔄\",\n      \"reload\": \"\",\n      \"hint\": \"Werte zurücksetzen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⬆️\",\n      \"localized\": \"⬆️\",\n      \"reload\": \"\",\n      \"hint\": \"Bild hochladen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⬅️\",\n      \"localized\": \"⬅️\",\n      \"reload\": \"\",\n      \"hint\": \"Bild wiederverwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇅\",\n      \"localized\": \"⇅\",\n      \"reload\": \"\",\n      \"hint\": \"Werte tauschen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇨\",\n      \"localized\": \"⇨\",\n      \"reload\": \"\",\n      \"hint\": \"Preset auf Registerkarte 'Manuelle Blockzusammenführung' anwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🕮\",\n      \"localized\": \"🕮\",\n      \"reload\": \"\",\n      \"hint\": \"Parameter des zuletzt generierten Bildes als Stilvorlage speichern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇕\",\n      \"localized\": \"⇕\",\n      \"reload\": \"\",\n      \"hint\": \"Sortieren nach: Name aufsteigend/absteigend, Größe größtes/kleinstes, Zeit neuestes/ältestes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⟲\",\n      \"localized\": \"⟲\",\n      \"reload\": \"\",\n      \"hint\": \"Aktualisieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"✕\",\n      \"localized\": \"✕\",\n      \"reload\": \"\",\n      \"hint\": \"Schließen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⊜\",\n      \"localized\": \"⊜\",\n      \"reload\": \"\",\n      \"hint\": \"Füllen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"※\",\n      \"localized\": \"※\",\n      \"reload\": \"\",\n      \"hint\": \"Modell bei Auswahl als Refiner-Modell laden, andernfalls als Basismodell laden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔎︎\",\n      \"localized\": \"🔎︎\",\n      \"reload\": \"\",\n      \"hint\": \"CivitAI nach fehlenden Metadaten und Vorschauen durchsuchen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"☲\",\n      \"localized\": \"☲\",\n      \"reload\": \"\",\n      \"hint\": \"Ansichtstyp ändern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⊗\",\n      \"localized\": \"⊗\",\n      \"reload\": \"\",\n      \"hint\": \"Werte zurücksetzen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"📐\",\n      \"localized\": \"📐\",\n      \"reload\": \"\",\n      \"hint\": \"Messen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔍\",\n      \"localized\": \"🔍\",\n      \"reload\": \"\",\n      \"hint\": \"Suchen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🖌️\",\n      \"localized\": \"🖌️\",\n      \"reload\": \"\",\n      \"hint\": \"LaMa ausgewähltes Objekt aus Bild entfernen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🖼️\",\n      \"localized\": \"🖼️\",\n      \"reload\": \"\",\n      \"hint\": \"Vorschau anzeigen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Bild befragen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⁜\",\n      \"localized\": \"⁜\",\n      \"reload\": \"\",\n      \"hint\": \"Bildanpassungsmethode wechseln\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"↶\",\n      \"localized\": \"↶\",\n      \"reload\": \"\",\n      \"hint\": \"Ausgewählten Stil auf Prompt anwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"↷\",\n      \"localized\": \"↷\",\n      \"reload\": \"\",\n      \"hint\": \"Aktuellen Prompt als Stil speichern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Nach Name aufsteigend sortieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Nach Name absteigend sortieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Nach Größe aufsteigend sortieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Nach Größe absteigend sortieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Nach Auflösung aufsteigend sortieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Nach Auflösung absteigend sortieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Nach Zeit aufsteigend sortieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Nach Zeit absteigend sortieren\"\n    }\n  ],\n  \"main\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt\",\n      \"localized\": \"Eingabeaufforderung\",\n      \"reload\": \"\",\n      \"hint\": \"Beschreiben Sie das Bild, das Sie generieren möchten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Start\",\n      \"localized\": \"Start\",\n      \"reload\": \"\",\n      \"hint\": \"Startwert\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"End\",\n      \"localized\": \"Ende\",\n      \"reload\": \"\",\n      \"hint\": \"Endwert\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Core\",\n      \"localized\": \"Kern\",\n      \"reload\": \"\",\n      \"hint\": \"Kernerinstellungen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System prompt\",\n      \"localized\": \"Systemaufforderung\",\n      \"reload\": \"\",\n      \"hint\": \"Die Systemaufforderung steuert das Verhalten des LLM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Negative prompt\",\n      \"localized\": \"Negative Eingabeaufforderung\",\n      \"reload\": \"\",\n      \"hint\": \"Beschreiben Sie, was Sie im generierten Bild nicht sehen möchten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Text\",\n      \"localized\": \"Text\",\n      \"reload\": \"\",\n      \"hint\": \"Bild aus Text erstellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image\",\n      \"localized\": \"Bild\",\n      \"reload\": \"\",\n      \"hint\": \"Bild aus Bild erstellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control\",\n      \"localized\": \"Steuerung\",\n      \"reload\": \"\",\n      \"hint\": \"Bild mit vollständiger Steuerung erstellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process\",\n      \"localized\": \"Verarbeiten\",\n      \"reload\": \"\",\n      \"hint\": \"Vorhandenes Bild verarbeiten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Caption\",\n      \"localized\": \"Beschriftung\",\n      \"reload\": \"\",\n      \"hint\": \"Analysieren Sie vorhandene Bilder und erstellen Sie Textbeschreibungen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Interrogate\",\n      \"localized\": \"Abfragen\",\n      \"reload\": \"\",\n      \"hint\": \"Führen Sie eine Abfrage durch, um eine Beschreibung Ihres Bildes zu erhalten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models\",\n      \"localized\": \"Modelle\",\n      \"reload\": \"\",\n      \"hint\": \"Laden Sie Ihre Modelle herunter, konvertieren oder zusammenführen Sie sie und verwalten Sie Modell-Metadaten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Agent Scheduler\",\n      \"localized\": \"Agenten-Scheduler\",\n      \"reload\": \"\",\n      \"hint\": \"Reihen Sie Ihre Generierungsanfragen ein und führen Sie sie im Hintergrund aus\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"AgentScheduler\",\n      \"localized\": \"Agenten-Scheduler\",\n      \"reload\": \"\",\n      \"hint\": \"Reihen Sie Ihre Generierungsanfragen ein und führen Sie sie im Hintergrund aus\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System\",\n      \"localized\": \"System\",\n      \"reload\": \"\",\n      \"hint\": \"Systemeinstellungen und -informationen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System Info\",\n      \"localized\": \"Systeminformationen\",\n      \"reload\": \"\",\n      \"hint\": \"Systeminformationen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Settings\",\n      \"localized\": \"Einstellungen\",\n      \"reload\": \"\",\n      \"hint\": \"Anwendungseinstellungen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Script\",\n      \"localized\": \"Skript\",\n      \"reload\": \"\",\n      \"hint\": \"Zusätzliche Skripte zur Verwendung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Generate\",\n      \"localized\": \"Generieren\",\n      \"reload\": \"\",\n      \"hint\": \"Verarbeitung starten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Generate forever\",\n      \"localized\": \"Dauerhaft generieren\",\n      \"reload\": \"\",\n      \"hint\": \"Verarbeitung starten und fortsetzen, bis abgebrochen wird\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enqueue\",\n      \"localized\": \"Einreihen\",\n      \"reload\": \"\",\n      \"hint\": \"Aufgabe zur Hintergrundwarteschlange im Agenten-Scheduler hinzufügen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reprocess\",\n      \"localized\": \"Neu verarbeiten\",\n      \"reload\": \"\",\n      \"hint\": \"Vorherige Generierungen mit anderen Parametern neu verarbeiten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Stop\",\n      \"localized\": \"Stoppen\",\n      \"reload\": \"\",\n      \"hint\": \"Verarbeitung stoppen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Skip\",\n      \"localized\": \"Überspringen\",\n      \"reload\": \"\",\n      \"hint\": \"Aktuellen Job stoppen und mit der Verarbeitung fortfahren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Pause\",\n      \"localized\": \"Pausieren\",\n      \"reload\": \"\",\n      \"hint\": \"Verarbeitung pausieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore\",\n      \"localized\": \"Wiederherstellen\",\n      \"reload\": \"\",\n      \"hint\": \"Parameter aus der aktuellen Eingabeaufforderung oder dem zuletzt bekannten generierten Bild wiederherstellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Clear\",\n      \"localized\": \"Leeren\",\n      \"reload\": \"\",\n      \"hint\": \"Eingabeaufforderungen leeren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Networks\",\n      \"localized\": \"Netzwerke\",\n      \"reload\": \"\",\n      \"hint\": \"Benutzeroberfläche für Netzwerke\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Default strength\",\n      \"localized\": \"Standardstärke\",\n      \"reload\": \"\",\n      \"hint\": \"Beim Hinzufügen eines zusätzlichen Netzwerks wie Lora zur Eingabeaufforderung diesen Multiplikator verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscale\",\n      \"localized\": \"Hochskalieren\",\n      \"reload\": \"\",\n      \"hint\": \"Bild hochskalieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model\",\n      \"localized\": \"Modell\",\n      \"reload\": \"\",\n      \"hint\": \"Basismodell\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompts\",\n      \"localized\": \"Eingabeaufforderungen\",\n      \"reload\": \"\",\n      \"hint\": \"Bildeingabeaufforderung und negative Eingabeaufforderung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Base\",\n      \"localized\": \"Basis\",\n      \"reload\": \"\",\n      \"hint\": \"Basiseinstellungen zur Durchführung der Bildgenerierung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Style\",\n      \"localized\": \"Stil\",\n      \"reload\": \"\",\n      \"hint\": \"Zusätzliche Stile, die auf ausgewählte Generierungsparameter angewendet werden sollen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Styles\",\n      \"localized\": \"Stile\",\n      \"reload\": \"\",\n      \"hint\": \"Zusätzliche Stile, die auf ausgewählte Generierungsparameter angewendet werden sollen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Lora\",\n      \"localized\": \"LoRA\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA: Low-Rank Adaptation. Ein feineingestelltes Modell, das auf ein geladenes Modell angewendet wird\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Embedding\",\n      \"localized\": \"Embedding\",\n      \"reload\": \"\",\n      \"hint\": \"Textual Inversion Embedding ist eine trainierte eingebettete Information über das Thema\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Hypernetwork\",\n      \"localized\": \"Hypernetzwerk\",\n      \"reload\": \"\",\n      \"hint\": \"Kleines trainiertes neuronales Netzwerk, das das Verhalten des geladenen Modells modifiziert\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VLM Caption\",\n      \"localized\": \"VLM-Bildunterschrift\",\n      \"reload\": \"\",\n      \"hint\": \"Bild mit einem visuellen Sprachmodell analysieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CLiP Interrogate\",\n      \"localized\": \"CLiP-Abfrage\",\n      \"reload\": \"\",\n      \"hint\": \"Bild mit CLiP-Modell analysieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE\",\n      \"localized\": \"VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Variational Auto Encoder: Modell zur Bilddecodierung am Ende der Generierung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"History\",\n      \"localized\": \"Verlauf\",\n      \"reload\": \"\",\n      \"hint\": \"Liste früherer Generierungen, die weiterverarbeitet werden können\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"UI disable variable aspect ratio\",\n      \"localized\": \"UI variables Seitenverhältnis deaktivieren\",\n      \"reload\": \"\",\n      \"hint\": \"Wenn deaktiviert, erscheinen alle Miniaturansichten als quadratische Bilder\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Build info on first access\",\n      \"localized\": \"Info beim ersten Zugriff erstellen\",\n      \"reload\": \"\",\n      \"hint\": \"Verhindert, dass der Server beim Start die EN-Seite erstellt, und erstellt sie stattdessen bei Anforderung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show reference styles\",\n      \"localized\": \"Referenzstile anzeigen\",\n      \"reload\": \"\",\n      \"hint\": \"Eingebaute Stile anzeigen oder ausblenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA load using Diffusers method\",\n      \"localized\": \"LoRA-Laden mit Diffusers-Methode\",\n      \"reload\": \"\",\n      \"hint\": \"Alternative Methode verwendet die integrierten LoRA-Fähigkeiten von Diffusers anstelle der nativen SD.Next-Implementierung (kann die LoRA-Kompatibilität reduzieren)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA fuse directly to model\",\n      \"localized\": \"LoRA direkt ins Modell integrieren\",\n      \"reload\": \"\",\n      \"hint\": \"Beim Laden von LoRAs Gewichte sofort mit dem zugrunde liegenden Modell zusammenführen, anstatt sie dynamisch anzuwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA memory cache\",\n      \"localized\": \"LoRA-Speicher-Cache\",\n      \"reload\": \"\",\n      \"hint\": \"Wie viele LoRAs im Netzwerk für zukünftige Verwendung gehalten werden sollen, bevor ein Neuladen aus dem Speicher erforderlich ist\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Local\",\n      \"localized\": \"Lokal\",\n      \"reload\": \"\",\n      \"hint\": \"Modelle, die heruntergeladen und einsatzbereit sind\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Gallery\",\n      \"localized\": \"Galerie\",\n      \"reload\": \"\",\n      \"hint\": \"Bildergalerie\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reference\",\n      \"localized\": \"Referenz\",\n      \"reload\": \"\",\n      \"hint\": \"Liste der Referenzmodelle, die bei der ersten Verwendung automatisch heruntergeladen werden können\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Samplers\",\n      \"localized\": \"Sampler\",\n      \"reload\": \"\",\n      \"hint\": \"Erweiterte Einstellungen für Sampler/Scheduler\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Seed\",\n      \"localized\": \"Seed\",\n      \"reload\": \"\",\n      \"hint\": \"Initialer Seed und Variation\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Advanced\",\n      \"localized\": \"Erweitert\",\n      \"reload\": \"\",\n      \"hint\": \"Erweiterte Einstellungen zur Durchführung der Bildgenerierung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scripts\",\n      \"localized\": \"Skripte\",\n      \"reload\": \"\",\n      \"hint\": \"Zusätzliche Funktionen durch die Verwendung ausgewählter Skripte während des Generierungsprozesses aktivieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Corrections\",\n      \"localized\": \"Korrekturen\",\n      \"reload\": \"\",\n      \"hint\": \"Steuerung von Bildfarb-, Schärfe- und Helligkeitskorrekturen während des Generierungsprozesses\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Parameters\",\n      \"localized\": \"Parameter\",\n      \"reload\": \"\",\n      \"hint\": \"Basisparameter, die während der Bildgenerierung verwendet werden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine\",\n      \"localized\": \"Verfeinern\",\n      \"reload\": \"\",\n      \"hint\": \"Verfeinern führt zusätzliche Verarbeitung nach Abschluss der initialen Verarbeitung durch und kann verwendet werden, um das Bild hochzuskalieren und optional erneut zu verarbeiten, um Qualität und Details zu erhöhen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer\",\n      \"localized\": \"Detailer\",\n      \"reload\": \"\",\n      \"hint\": \"Detailer führt eine zusätzliche Generierung mit höherer Auflösung für erkannte Objekte durch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize\",\n      \"localized\": \"Größe ändern\",\n      \"reload\": \"\",\n      \"hint\": \"Bildgröße ändern, kann feste Auflösung oder Skalierung verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch\",\n      \"localized\": \"Stapel\",\n      \"reload\": \"\",\n      \"hint\": \"Einstellungen für die Stapelverarbeitung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoise\",\n      \"localized\": \"Entrauschen\",\n      \"reload\": \"\",\n      \"hint\": \"Entrauschungseinstellungen. Ein höheres Entrauschen bedeutet, dass mehr vom vorhandenen Bildinhalt während der Generierung geändert werden darf\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mask\",\n      \"localized\": \"Maske\",\n      \"reload\": \"\",\n      \"hint\": \"Bildmaskierung und Maskenoptionen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Input\",\n      \"localized\": \"Eingabe\",\n      \"reload\": \"\",\n      \"hint\": \"Auswahl der Eingabemedien\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Video\",\n      \"localized\": \"Video\",\n      \"reload\": \"\",\n      \"hint\": \"Video mit Steuerung erstellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control elements\",\n      \"localized\": \"Steuerungselemente\",\n      \"reload\": \"\",\n      \"hint\": \"Steuerungselemente sind erweiterte Modelle, die die Generierung zum gewünschten Ergebnis führen können\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"IP adapter\",\n      \"localized\": \"IP-Adapter\",\n      \"reload\": \"\",\n      \"hint\": \"Generierung zum gewünschten Ergebnis mit IP-Adapter-Plugin-Modellen führen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"IP adapters\",\n      \"localized\": \"IP-Adapter\",\n      \"reload\": \"\",\n      \"hint\": \"IP-Adapter sind Plugin-Modelle, die die Generierung zum gewünschten Ergebnis führen können\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Extensions\",\n      \"localized\": \"Erweiterungen\",\n      \"reload\": \"\",\n      \"hint\": \"Anwendungserweiterungen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"XYZ Grid\",\n      \"localized\": \"XYZ-Gitter\",\n      \"reload\": \"\",\n      \"hint\": \"XYZ-Gitter ist ein leistungsstarkes Modul, das ein Bildraster basierend auf der Variation mehrerer Generierungsparameter erstellt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Cover\",\n      \"localized\": \"Abdecken\",\n      \"reload\": \"\",\n      \"hint\": \"Gesamten Bereich abdecken\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inline\",\n      \"localized\": \"Inline\",\n      \"reload\": \"\",\n      \"hint\": \"Inline mit allen zusätzlichen Elementen (scrollbar)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sidebar\",\n      \"localized\": \"Seitenleiste\",\n      \"reload\": \"\",\n      \"hint\": \"Seitenleiste auf der rechten Seite des Bildschirms\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD15\",\n      \"localized\": \"SD15\",\n      \"reload\": \"\",\n      \"hint\": \"StableDiffusion 1.5\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD21\",\n      \"localized\": \"SD21\",\n      \"reload\": \"\",\n      \"hint\": \"StableDiffusion 2.1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD35\",\n      \"localized\": \"SD35\",\n      \"reload\": \"\",\n      \"hint\": \"StableDiffusion 3.5\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SDXL\",\n      \"localized\": \"SDXL\",\n      \"reload\": \"\",\n      \"hint\": \"StableDiffusion XL\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SC\",\n      \"localized\": \"SC\",\n      \"reload\": \"\",\n      \"hint\": \"StableCascade\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Flux\",\n      \"localized\": \"Flux\",\n      \"reload\": \"\",\n      \"hint\": \"FLUX.1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show\",\n      \"localized\": \"Anzeigen\",\n      \"reload\": \"\",\n      \"hint\": \"Bildspeicherort anzeigen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Save\",\n      \"localized\": \"Speichern\",\n      \"reload\": \"\",\n      \"hint\": \"Bild speichern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Delete\",\n      \"localized\": \"Löschen\",\n      \"reload\": \"\",\n      \"hint\": \"Bild löschen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Replace\",\n      \"localized\": \"Ersetzen\",\n      \"reload\": \"\",\n      \"hint\": \"Bild ersetzen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Text\",\n      \"localized\": \"➠ Text\",\n      \"reload\": \"\",\n      \"hint\": \"Bild an Text-Schnittstelle übertragen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Image\",\n      \"localized\": \"➠ Bild\",\n      \"reload\": \"\",\n      \"hint\": \"Bild an Bild-Schnittstelle übertragen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Inpaint\",\n      \"localized\": \"➠ Inpainting\",\n      \"reload\": \"\",\n      \"hint\": \"Bild an Inpaint-Schnittstelle übertragen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Sketch\",\n      \"localized\": \"➠ Skizze\",\n      \"reload\": \"\",\n      \"hint\": \"Bild an Skizzen-Schnittstelle übertragen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Composite\",\n      \"localized\": \"➠ Komposit\",\n      \"reload\": \"\",\n      \"hint\": \"Bild an Inpaint-Skizzen-Schnittstelle übertragen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Process\",\n      \"localized\": \"➠ Verarbeiten\",\n      \"reload\": \"\",\n      \"hint\": \"Bild an Verarbeitungs-Schnittstelle übertragen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Control\",\n      \"localized\": \"➠ Steuerung\",\n      \"reload\": \"\",\n      \"hint\": \"Bild an Steuerungs-Schnittstelle übertragen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Caption\",\n      \"localized\": \"➠ Beschriftung\",\n      \"reload\": \"\",\n      \"hint\": \"Bild an Beschriftungs-Schnittstelle übertragen\"\n    }\n  ],\n  \"generate\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Sampling method\",\n      \"localized\": \"Abtastmethode\",\n      \"reload\": \"\",\n      \"hint\": \"Welcher Algorithmus soll zur Erzeugung des Bildes verwendet werden.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Steps\",\n      \"localized\": \"Schritte\",\n      \"reload\": \"\",\n      \"hint\": \"Wie oft das generierte Bild iterativ verbessert werden soll; höhere Werte dauern länger; sehr niedrige Werte können schlechte Ergebnisse liefern.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Tiling\",\n      \"localized\": \"Kachel\",\n      \"reload\": \"\",\n      \"hint\": \"Ein Bild erzeugen, das gekachelt werden kann.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full quality\",\n      \"localized\": \"Volle Qualität\",\n      \"reload\": \"\",\n      \"hint\": \"Volle Qualität VAE verwenden, um latente Samples zu dekodieren.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HiDiffusion\",\n      \"localized\": \"HiDiffusion\",\n      \"reload\": \"\",\n      \"hint\": \"HiDiffusion ermöglicht die Erstellung hochauflösender Bilder mit Ihren Standardmodellen ohne Duplikate/Verzerrungen und mit verbesserter Leistung.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HDR Clamp\",\n      \"localized\": \"HDR-Begrenzung\",\n      \"reload\": \"\",\n      \"hint\": \"Passt den Grad unsinniger Details an, indem Werte beschnitten werden, die erheblich vom Verteilungsdurchschnitt abweichen. Dies ist besonders nützlich, um die Generierung bei höheren Führungsskalen zu verbessern, Ausreißer frühzeitig im Prozess zu identifizieren und mathematische Anpassungen basierend auf den Einstellungen für Bereich (Grenze) und Schwellenwert vorzunehmen. Stellen Sie sich vor, Sie legen den Bereich fest, in dem Ihre Bildwerte liegen sollen, und das Anpassen des Schwellenwerts bestimmt, welche Werte in diesen Bereich zurückgebracht werden sollen.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HDR Maximize\",\n      \"localized\": \"HDR Maximieren\",\n      \"reload\": \"\",\n      \"hint\": \"Berechnet einen 'Normalisierungsfaktor', indem der maximale Tensorwert durch den angegebenen Bereich multipliziert mit 4 geteilt wird. Dieser Faktor wird dann verwendet, um die Kanäle innerhalb der gegebenen Grenze zu verschieben, wodurch ein maximaler Dynamikbereich für die nachfolgende Verarbeitung gewährleistet wird. Ziel ist es, den Dynamikbereich für externe Anwendungen wie Photoshop zu optimieren, insbesondere für die Anpassung von Tonwerten, Kontrast und Helligkeit.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enable refine pass\",\n      \"localized\": \"Verfeinerungsdurchlauf aktivieren\",\n      \"reload\": \"\",\n      \"hint\": \"Verwenden Sie einen ähnlichen Prozess wie Bild-zu-Bild, um das endgültige Bild hochzuskalieren und/oder Details hinzuzufügen. Optional wird ein Verfeinerungsmodell zur Verbesserung der Bilddetails verwendet.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enable detailer pass\",\n      \"localized\": \"Detailer-Durchlauf aktivieren\",\n      \"reload\": \"\",\n      \"hint\": \"Zielobjekte wie Gesichter erkennen und in höherer Auflösung neu verarbeiten.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoising strength\",\n      \"localized\": \"Entrauschungsstärke\",\n      \"reload\": \"\",\n      \"hint\": \"Bestimmt, wie wenig Respekt der Algorithmus vor dem Bildinhalt haben sollte. Bei 0 ändert sich nichts, und bei 1 erhalten Sie ein unabhängiges Bild. Bei Werten unter 1.0 benötigt die Verarbeitung weniger Schritte als der Schieberegler für 'Abtastschritte' angibt.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoise start\",\n      \"localized\": \"Entrauschungsbeginn\",\n      \"reload\": \"\",\n      \"hint\": \"Entrauschungsstärke überschreiben, indem angegeben wird, wie früh das Basismodell fertig sein soll und wann der Refiner beginnen soll. Nur für die Refiner-Nutzung anwendbar. Wenn auf 0 oder 1 gesetzt, wird die Entrauschungsstärke verwendet.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Hires steps\",\n      \"localized\": \"Hires-Schritte\",\n      \"reload\": \"\",\n      \"hint\": \"Anzahl der Abtastschritte für das hochskalierte Bild. Wenn 0, wird die gleiche Anzahl wie für das Original verwendet.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Strength\",\n      \"localized\": \"Stärke\",\n      \"reload\": \"\",\n      \"hint\": \"Die Entrauschungsstärke während des Bildvorgangs steuert, wie stark sich das Originalbild während der Generierung ändern darf.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler\",\n      \"localized\": \"Hochskalierer\",\n      \"reload\": \"\",\n      \"hint\": \"Welches vortrainierte Modell für den Hochskalierungsprozess verwendet werden soll.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Force Hires\",\n      \"localized\": \"Hires erzwingen\",\n      \"reload\": \"\",\n      \"hint\": \"Hires wird automatisch ausgeführt, wenn die latente Hochskalierung ausgewählt ist, wird aber bei der Verwendung von nicht-latenten Hochskalierern übersprungen. Aktivieren Sie 'Hires erzwingen', um Hires mit nicht-latenten Hochskalierern auszuführen.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize width\",\n      \"localized\": \"Breite anpassen\",\n      \"reload\": \"\",\n      \"hint\": \"Bild auf diese Breite anpassen. Wenn 0, wird die Breite von einem der beiden benachbarten Schieberegler abgeleitet.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize height\",\n      \"localized\": \"Höhe anpassen\",\n      \"reload\": \"\",\n      \"hint\": \"Bild auf diese Höhe anpassen. Wenn 0, wird die Höhe von einem der beiden benachbarten Schieberegler abgeleitet.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine sampler\",\n      \"localized\": \"Verfeinerungs-Sampler\",\n      \"reload\": \"\",\n      \"hint\": \"Spezifischen Sampler als Fallback-Sampler verwenden, wenn der primäre für eine bestimmte Operation nicht unterstützt wird.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner start\",\n      \"localized\": \"Refiner-Start\",\n      \"reload\": \"\",\n      \"hint\": \"Der Refiner-Durchlauf beginnt, wenn das Basismodell zu diesem Grad fertig ist (Wert größer als 0 und kleiner als 1 einstellen, um nach dem vollständigen Durchlauf des Basismodells zu starten).\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner steps\",\n      \"localized\": \"Refiner-Schritte\",\n      \"reload\": \"\",\n      \"hint\": \"Anzahl der Schritte, die für den Refiner-Durchlauf verwendet werden sollen.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine guidance\",\n      \"localized\": \"Verfeinerungs-Führung\",\n      \"reload\": \"\",\n      \"hint\": \"CFG-Skala, die für den Refiner-Durchlauf verwendet wird.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Attention guidance\",\n      \"localized\": \"Aufmerksamkeitsführung\",\n      \"reload\": \"\",\n      \"hint\": \"CFG-Skala, die mit PAG: Perturbed-Attention Guidance verwendet wird.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adaptive scaling\",\n      \"localized\": \"Adaptive Skalierung\",\n      \"reload\": \"\",\n      \"hint\": \"Adaptiver Modifikator für die Aufmerksamkeitsführungsskala.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Rescale guidance\",\n      \"localized\": \"Führung neu skalieren\",\n      \"reload\": \"\",\n      \"hint\": \"CFG-generiertes Rauschen neu skalieren, um überbelichtete Bilder zu vermeiden.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine Prompt\",\n      \"localized\": \"Prompt verfeinern\",\n      \"reload\": \"\",\n      \"hint\": \"Prompt, der sowohl für den zweiten Encoder im Basismodell (falls vorhanden) als auch für den Refiner-Durchlauf (falls aktiviert) verwendet wird.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine negative prompt\",\n      \"localized\": \"Negativen Prompt verfeinern\",\n      \"reload\": \"\",\n      \"hint\": \"Negativer Prompt, der sowohl für den zweiten Encoder im Basismodell (falls vorhanden) als auch für den Refiner-Durchlauf (falls aktiviert) verwendet wird.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Width\",\n      \"localized\": \"Breite\",\n      \"reload\": \"\",\n      \"hint\": \"Bildbreite.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Height\",\n      \"localized\": \"Höhe\",\n      \"reload\": \"\",\n      \"hint\": \"Bildhöhe.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch count\",\n      \"localized\": \"Batch-Anzahl\",\n      \"reload\": \"\",\n      \"hint\": \"Wie viele Bild-Batches erstellt werden sollen (hat keinen Einfluss auf die Generierungsleistung oder den VRAM-Verbrauch).\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch size\",\n      \"localized\": \"Batch-Größe\",\n      \"reload\": \"\",\n      \"hint\": \"Wie viele Bilder in einem einzelnen Batch erstellt werden sollen (erhöht die Generierungsleistung auf Kosten eines höheren VRAM-Verbrauchs).\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance scale\",\n      \"localized\": \"Führungsskala\",\n      \"reload\": \"\",\n      \"hint\": \"Classifier Free Guidance-Skala: wie stark sich das Bild an den Prompt anpassen soll. Niedrigere Werte erzeugen kreativere Ergebnisse, höhere Werte lassen es dem Prompt strenger folgen; empfohlene Werte zwischen 5-10.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Guidance End\",\n      \"localized\": \"Führungsende\",\n      \"reload\": \"\",\n      \"hint\": \"Beendet den Effekt von CFG und PAG frühzeitig: Ein Wert von 1 verhält sich normal, 0.5 stoppt die Führung bei 50% der Schritte.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Initial seed\",\n      \"localized\": \"Start-Seed\",\n      \"reload\": \"\",\n      \"hint\": \"Ein Wert, der die Ausgabe des Zufallszahlengenerators bestimmt - wenn Sie ein Bild mit denselben Parametern und demselben Seed wie ein anderes Bild erstellen, erhalten Sie dasselbe Ergebnis.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variation\",\n      \"localized\": \"Variation\",\n      \"reload\": \"\",\n      \"hint\": \"Zweiter Seed, der mit dem primären Seed gemischt werden soll.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variation strength\",\n      \"localized\": \"Variationsstärke\",\n      \"reload\": \"\",\n      \"hint\": \"Wie stark eine Variation erzeugt werden soll. Bei 0 gibt es keinen Effekt. Bei 1 erhalten Sie das vollständige Bild mit dem Variations-Seed (außer bei ancestral Samplern, wo Sie einfach etwas erhalten).\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize seed from width\",\n      \"localized\": \"Seed von Breite anpassen\",\n      \"reload\": \"\",\n      \"hint\": \"Versuchen, ein Bild zu erzeugen, das dem ähnlich ist, was mit demselben Seed bei der angegebenen Auflösung erzeugt worden wäre.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize seed from height\",\n      \"localized\": \"Seed von Höhe anpassen\",\n      \"reload\": \"\",\n      \"hint\": \"Versuchen, ein Bild zu erzeugen, das dem ähnlich ist, was mit demselben Seed bei der angegebenen Auflösung erzeugt worden wäre.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Fixed\",\n      \"localized\": \"Fixiert\",\n      \"reload\": \"\",\n      \"hint\": \"Bild auf Zielauflösung anpassen. Sofern Höhe und Breite nicht übereinstimmen, erhalten Sie ein falsches Seitenverhältnis.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale\",\n      \"localized\": \"Skalierung\",\n      \"reload\": \"\",\n      \"hint\": \"Bild auf Zielskalierung anpassen. Wenn feste Breite/Höhe für die Größenänderung festgelegt sind, wird diese Option ignoriert.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop\",\n      \"localized\": \"Zuschneiden\",\n      \"reload\": \"\",\n      \"hint\": \"Das Bild so skalieren, dass die gesamte Zielauflösung mit dem Bild gefüllt wird. Überstehende Teile zuschneiden.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Fill\",\n      \"localized\": \"Füllen\",\n      \"reload\": \"\",\n      \"hint\": \"Das Bild so skalieren, dass das gesamte Bild innerhalb der Zielauflösung liegt. Leeren Raum mit den Farben des Bildes füllen.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mask blur\",\n      \"localized\": \"Maskenunschärfe\",\n      \"reload\": \"\",\n      \"hint\": \"Wie stark die Maske vor der Verarbeitung unscharf gemacht werden soll, in Pixeln.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Latent noise\",\n      \"localized\": \"Latentes Rauschen\",\n      \"reload\": \"\",\n      \"hint\": \"Mit latentem Raumrauschen füllen.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Latent nothing\",\n      \"localized\": \"Latentes Nichts\",\n      \"reload\": \"\",\n      \"hint\": \"Mit latentem Raum-Nullen füllen.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adapters\",\n      \"localized\": \"Adapter\",\n      \"reload\": \"\",\n      \"hint\": \"Einstellungen bezüglich IP-Adaptern.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inputs\",\n      \"localized\": \"Eingaben\",\n      \"reload\": \"\",\n      \"hint\": \"Einstellungen bezüglich Eingabebildern.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control input type\",\n      \"localized\": \"Steuereingabetyp\",\n      \"reload\": \"\",\n      \"hint\": \"Wählen Sie, welches Eingabebild für den Steuerungsprozess verwendet wird.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Video format\",\n      \"localized\": \"Videoformat\",\n      \"reload\": \"\",\n      \"hint\": \"Format und Codec des Ausgabevideos.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Size & Batch\",\n      \"localized\": \"Größe & Batch\",\n      \"reload\": \"\",\n      \"hint\": \"Bildgröße und Batch.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sigma adjust\",\n      \"localized\": \"Sigma anpassen\",\n      \"reload\": \"\",\n      \"hint\": \"Sampler-Sigmawert anpassen.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adjust start\",\n      \"localized\": \"Anpassungsstart\",\n      \"reload\": \"\",\n      \"hint\": \"Startschritt, wenn Sigma-Anpassung erfolgt.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adjust end\",\n      \"localized\": \"Anpassungsende\",\n      \"reload\": \"\",\n      \"hint\": \"Endschritt, wenn Sigma-Anpassung erfolgt.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Options\",\n      \"localized\": \"Optionen\",\n      \"reload\": \"\",\n      \"hint\": \"Optionen.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ControlNet\",\n      \"localized\": \"ControlNet\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet ist ein erweitertes Führungsmodell.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Renoise\",\n      \"localized\": \"Rauschen hinzufügen\",\n      \"reload\": \"\",\n      \"hint\": \"Zusätzliches Rauschen während der Detaillierung anwenden.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Renoise end\",\n      \"localized\": \"Rausch-Ende\",\n      \"reload\": \"\",\n      \"hint\": \"Letzter Schritt, wenn Rauschen angewendet wird.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Merge detailers\",\n      \"localized\": \"Detailer zusammenführen\",\n      \"reload\": \"\",\n      \"hint\": \"Ergebnisse mehrerer Detailer vor dem Detaillierungsprozess in einer einzigen Maske zusammenführen.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpaint mode\",\n      \"localized\": \"Inpaint-Modus\",\n      \"reload\": \"\",\n      \"hint\": \"Inpaint-Modus.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpaint area\",\n      \"localized\": \"Inpaint-Bereich\",\n      \"reload\": \"\",\n      \"hint\": \"Inpaint-Bereich.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Texture tiling\",\n      \"localized\": \"Texturkachelung\",\n      \"reload\": \"\",\n      \"hint\": \"Nahtlose Kachelung auf das generierte Bild anwenden, damit es als Textur verwendet werden kann.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Override\",\n      \"localized\": \"Überschreiben\",\n      \"reload\": \"\",\n      \"hint\": \"Einstellungen überschreiben, die das Serververhalten ändern können und typischerweise aus importierten Bildmetadaten übernommen werden.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE type\",\n      \"localized\": \"VAE-Typ\",\n      \"reload\": \"\",\n      \"hint\": \"Wählen Sie, ob Sie die volle VAE, eine VAE mit reduzierter Qualität ausführen oder versuchen möchten, einen Remote-VAE-Dienst zu verwenden.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Guess Mode\",\n      \"localized\": \"Schätzmodus\",\n      \"reload\": \"\",\n      \"hint\": \"Entfernt die Notwendigkeit, einen Prompt an ein ControlNet zu liefern. Es zwingt den ControlNet-Encoder, seine 'beste Schätzung' basierend auf dem Inhalt der Eingabe-Kontrollkarte vorzunehmen.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control Only\",\n      \"localized\": \"Nur Steuerung\",\n      \"reload\": \"\",\n      \"hint\": \"Dies verwendet nur die unten stehende Steuerungseingabe als Quelle für alle ControlNet- oder IP-Adapter-Aufgaben, basierend auf unseren verschiedenen Optionen.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Init Image Same As Control\",\n      \"localized\": \"Initialbild gleich Steuerung\",\n      \"reload\": \"\",\n      \"hint\": \"Behandelt zusätzlich jedes Bild, das in das Steuerungseingabefenster platziert wird, als Quelle für img2img-Aufgaben, zum Beispiel ein zu modifizierendes Bild.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Separate Init Image\",\n      \"localized\": \"Separates Initialbild\",\n      \"reload\": \"\",\n      \"hint\": \"Erstellt ein zusätzliches Fenster neben der Steuerungseingabe, das als Initialeingabe bezeichnet wird, sodass Sie ein separates Bild für Steuerungsoperationen und eine Initialquelle haben können.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Override settings\",\n      \"localized\": \"Einstellungen überschreiben\",\n      \"reload\": \"\",\n      \"hint\": \"Wenn die Generierungsparameter von Ihren Systemeinstellungen abweichen, überschreiben Sie die Einstellungen, die mit diesen Parametern gefüllt sind, um Ihre Systemkonfiguration für diesen Workflow zu überschreiben.\"\n    }\n  ],\n  \"other\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Install\",\n      \"localized\": \"Installieren\",\n      \"reload\": \"\",\n      \"hint\": \"Installieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Search\",\n      \"localized\": \"Suchen\",\n      \"reload\": \"\",\n      \"hint\": \"Suchen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sort by\",\n      \"localized\": \"Sortieren nach\",\n      \"reload\": \"\",\n      \"hint\": \"Sortieren nach\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Nudenet\",\n      \"localized\": \"Nudenet\",\n      \"reload\": \"\",\n      \"hint\": \"Flexible Erweiterung, die Nacktheit in Bildern erkennen und unkenntlich machen kann\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt enhance\",\n      \"localized\": \"Prompt verbessern\",\n      \"reload\": \"\",\n      \"hint\": \"Erweiterung, die verschiedene LLMs verwenden kann, um Prompts für verbesserte Ergebnisse umzuschreiben\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Manage extensions\",\n      \"localized\": \"Erweiterungen verwalten\",\n      \"reload\": \"\",\n      \"hint\": \"Erweiterungen verwalten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Manual install\",\n      \"localized\": \"Manuelle Installation\",\n      \"reload\": \"\",\n      \"hint\": \"Erweiterung manuell installieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Extension GIT repository URL\",\n      \"localized\": \"GIT-Repository-URL der Erweiterung\",\n      \"reload\": \"\",\n      \"hint\": \"Geben Sie die Repository-URL der Erweiterung auf GitHub an\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Specific branch name\",\n      \"localized\": \"Spezifischer Branch-Name\",\n      \"reload\": \"\",\n      \"hint\": \"Geben Sie den Branch-Namen der Erweiterung an, lassen Sie ihn für die Standardeinstellung leer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Local directory name\",\n      \"localized\": \"Name des lokalen Verzeichnisses\",\n      \"reload\": \"\",\n      \"hint\": \"Verzeichnis, in dem die Erweiterung installiert werden soll, für Standardeinstellung leer lassen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refresh extension list\",\n      \"localized\": \"Erweiterungsliste aktualisieren\",\n      \"reload\": \"\",\n      \"hint\": \"Liste der verfügbaren Erweiterungen aktualisieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Update all installed\",\n      \"localized\": \"Alle installierten aktualisieren\",\n      \"reload\": \"\",\n      \"hint\": \"Installierte Erweiterungen auf die neueste verfügbare Version aktualisieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Apply changes\",\n      \"localized\": \"Änderungen anwenden\",\n      \"reload\": \"\",\n      \"hint\": \"Alle Änderungen anwenden und Server neu starten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Uninstall\",\n      \"localized\": \"Deinstallieren\",\n      \"reload\": \"\",\n      \"hint\": \"Diese Erweiterung deinstallieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"User interface\",\n      \"localized\": \"Benutzeroberfläche\",\n      \"reload\": \"\",\n      \"hint\": \"Benutzeroberflächen-Einstellungen überprüfen und festlegen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Set UI defaults\",\n      \"localized\": \"UI-Standardwerte festlegen\",\n      \"reload\": \"\",\n      \"hint\": \"Aktuelle Werte als Standardwerte für die Benutzeroberfläche festlegen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Benchmark\",\n      \"localized\": \"Benchmark\",\n      \"reload\": \"\",\n      \"hint\": \"Benchmarks ausführen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models & Networks\",\n      \"localized\": \"Modelle & Netzwerke\",\n      \"reload\": \"\",\n      \"hint\": \"Listen aller verfügbaren Modelle und Netzwerke anzeigen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore UI defaults\",\n      \"localized\": \"UI-Standardwerte wiederherstellen\",\n      \"reload\": \"\",\n      \"hint\": \"Standardwerte der Benutzeroberfläche wiederherstellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer classes\",\n      \"localized\": \"Detailer-Klassen\",\n      \"reload\": \"\",\n      \"hint\": \"Spezifische Klassen angeben, die verwendet werden sollen, wenn das ausgewählte Detailer-Modell ein Multi-Klassen-Modell ist\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer models\",\n      \"localized\": \"Detailer-Modelle\",\n      \"reload\": \"\",\n      \"hint\": \"Erkennungsmodelle für die Detaillierung auswählen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer negative prompt\",\n      \"localized\": \"Detailer negativer Prompt\",\n      \"reload\": \"\",\n      \"hint\": \"Separaten negativen Prompt für den Detailer verwenden. Falls nicht vorhanden, wird der primäre negative Prompt verwendet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer prompt\",\n      \"localized\": \"Detailer-Prompt\",\n      \"reload\": \"\",\n      \"hint\": \"Separaten Prompt für den Detailer verwenden. Falls nicht vorhanden, wird der primäre Prompt verwendet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer steps\",\n      \"localized\": \"Detailer-Schritte\",\n      \"reload\": \"\",\n      \"hint\": \"Anzahl der Schritte, die für den Detailer-Prozess ausgeführt werden sollen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer strength\",\n      \"localized\": \"Detailer-Stärke\",\n      \"reload\": \"\",\n      \"hint\": \"Entrauschungsstärke des Detailer-Prozesses\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer use model augment\",\n      \"localized\": \"Detailer Modell-Augmentierung verwenden\",\n      \"reload\": \"\",\n      \"hint\": \"Detailer-Erkennungsmodelle mit zusätzlicher Präzision ausführen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max detected\",\n      \"localized\": \"Maximal erkannt\",\n      \"reload\": \"\",\n      \"hint\": \"Maximale Anzahl erkannter Objekte, auf die der Detailer angewendet werden soll\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Edge blur\",\n      \"localized\": \"Kantenunschärfe\",\n      \"reload\": \"\",\n      \"hint\": \"Kanten des maskierten Bereichs um diesen Prozentsatz unscharf machen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Edge padding\",\n      \"localized\": \"Kantenabstand\",\n      \"reload\": \"\",\n      \"hint\": \"Kanten des maskierten Bereichs um diesen Prozentsatz erweitern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Min confidence\",\n      \"localized\": \"Min. Vertrauen\",\n      \"reload\": \"\",\n      \"hint\": \"Mindestvertrauen in erkanntes Element\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max overlap\",\n      \"localized\": \"Max. Überlappung\",\n      \"reload\": \"\",\n      \"hint\": \"Maximale Überlappung zwischen zwei erkannten Elementen, bevor eines verworfen wird\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Min size\",\n      \"localized\": \"Min. Größe\",\n      \"reload\": \"\",\n      \"hint\": \"Mindestgröße des erkannten Objekts als Prozentsatz des Gesamtbildes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max size\",\n      \"localized\": \"Max. Größe\",\n      \"reload\": \"\",\n      \"hint\": \"Maximale Größe des erkannten Objekts als Prozentsatz des Gesamtbildes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Image\",\n      \"localized\": \"Bild verarbeiten\",\n      \"reload\": \"\",\n      \"hint\": \"Einzelnes Bild verarbeiten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Batch\",\n      \"localized\": \"Stapel verarbeiten\",\n      \"reload\": \"\",\n      \"hint\": \"Bilderstapel verarbeiten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Folder\",\n      \"localized\": \"Ordner verarbeiten\",\n      \"reload\": \"\",\n      \"hint\": \"Alle Bilder in einem Ordner verarbeiten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Current\",\n      \"localized\": \"Aktuell\",\n      \"reload\": \"\",\n      \"hint\": \"Module im aktuell geladenen Modell analysieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Merge\",\n      \"localized\": \"Zusammenführen\",\n      \"reload\": \"\",\n      \"hint\": \"Zwei oder mehr Modelle zu einem neuen Modell zusammenführen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Modules\",\n      \"localized\": \"Module\",\n      \"reload\": \"\",\n      \"hint\": \"Module in ein bestehendes Modell zusammenführen und/oder ersetzen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Validate\",\n      \"localized\": \"Validieren\",\n      \"reload\": \"\",\n      \"hint\": \"Alle lokalen Modelle validieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CivitAI\",\n      \"localized\": \"CivitAI\",\n      \"reload\": \"\",\n      \"hint\": \"Modelle von CivitAI suchen und herunterladen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scale by\",\n      \"localized\": \"Skalieren um\",\n      \"reload\": \"\",\n      \"hint\": \"Dieser Tab dient zum Ändern der Größe des/der Quellbilder(s) um einen gewählten Faktor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scale to\",\n      \"localized\": \"Skalieren auf\",\n      \"reload\": \"\",\n      \"hint\": \"Dieser Tab dient zum Ändern der Größe des/der Quellbilder(s) auf eine gewählte Zielgröße\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Input directory\",\n      \"localized\": \"Eingabeverzeichnis\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner, in dem sich die Bilder befinden, die Sie verarbeiten möchten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Output directory\",\n      \"localized\": \"Ausgabeverzeichnis\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner, in dem die verarbeiteten Bilder gespeichert werden sollen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show result images\",\n      \"localized\": \"Ergebnisbilder anzeigen\",\n      \"reload\": \"\",\n      \"hint\": \"Aktivieren, um die verarbeiteten Bilder im Bildbereich anzuzeigen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop to fit\",\n      \"localized\": \"Auf Passform zuschneiden\",\n      \"reload\": \"\",\n      \"hint\": \"Wenn die Abmessungen Ihres Quellbildes (z.B. 512x510) von Ihren Zielabmessungen (z.B. 1024x768) abweichen, passt diese Funktion Ihr hochskaliertes Bild an die Zielgröße an. Überschuss wird zugeschnitten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine Upscaler\",\n      \"localized\": \"Upscaler verfeinern\",\n      \"reload\": \"\",\n      \"hint\": \"Sekundären Upscaler auswählen, der nach dem initialen Upscaler ausgeführt werden soll\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler 2 visibility\",\n      \"localized\": \"Sichtbarkeit Upscaler 2\",\n      \"reload\": \"\",\n      \"hint\": \"Stärke des sekundären Upscalers\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Calculate hash for all models\",\n      \"localized\": \"Hash für alle Modelle berechnen\",\n      \"reload\": \"\",\n      \"hint\": \"Berechnet den Hash für alle verfügbaren Modelle, was sehr lange dauern kann\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Weights Clip\",\n      \"localized\": \"Gewichte begrenzen\",\n      \"reload\": \"\",\n      \"hint\": \"Zusammengeführte Gewichte werden erzwungenermaßen nicht schwerer als das ursprüngliche Modell, wodurch Einbrennen und übersättigte Modelle verhindert werden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ReBasin\",\n      \"localized\": \"ReBasin\",\n      \"reload\": \"\",\n      \"hint\": \"Führt mehrere Zusammenführungen mit Permutationen durch, um mehr Funktionen von beiden Modellen zu erhalten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Number of ReBasin Iterations\",\n      \"localized\": \"Anzahl der ReBasin-Iterationen\",\n      \"reload\": \"\",\n      \"hint\": \"Anzahl der Male, wie oft das Modell zusammengeführt und permutiert werden soll, bevor es gespeichert wird\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CPU\",\n      \"localized\": \"CPU\",\n      \"reload\": \"\",\n      \"hint\": \"Verwendet nur CPU und RAM: am langsamsten, aber am unwahrscheinlichsten, dass es zu OOM kommt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Shuffle\",\n      \"localized\": \"Mischen\",\n      \"reload\": \"\",\n      \"hint\": \"Lädt das vollständige Modell in den RAM und berechnet auf dem VRAM: Weniger Beschleunigung, empfohlen für SDXL-Zusammenführungen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"In Blocks\",\n      \"localized\": \"In Blöcken\",\n      \"reload\": \"\",\n      \"hint\": \"Downsampling-Blöcke des UNet (12 Werte für SD1.5, 9 Werte für SDXL)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mid Block\",\n      \"localized\": \"Mittelblock\",\n      \"reload\": \"\",\n      \"hint\": \"Zentraler Block des UNet (1 Wert)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Out Block\",\n      \"localized\": \"Ausgabe-Block\",\n      \"reload\": \"\",\n      \"hint\": \"Upsampling-Blöcke des UNet (12 Werte für SD1.5, 9 Werte für SDXL)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Preset Interpolation Ratio\",\n      \"localized\": \"Voreingestelltes Interpolationsverhältnis\",\n      \"reload\": \"\",\n      \"hint\": \"Wenn zwei Voreinstellungen ausgewählt sind, interpolieren Sie dazwischen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adapter\",\n      \"localized\": \"Adapter\",\n      \"reload\": \"\",\n      \"hint\": \"IP-Adapter-Modell\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Active ip adapters\",\n      \"localized\": \"Aktive IP-Adapter\",\n      \"reload\": \"\",\n      \"hint\": \"Anzahl der aktiven IP-Adapter\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Unload adapter\",\n      \"localized\": \"Adapter entladen\",\n      \"reload\": \"\",\n      \"hint\": \"IP-Adapter sofort nach der Generierung entladen. Andernfalls bleibt der IP-Adapter für eine schnellere Verwendung im nächsten Generierungsprozess geladen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop to portrait\",\n      \"localized\": \"Auf Hochformat zuschneiden\",\n      \"reload\": \"\",\n      \"hint\": \"Eingabebild auf reines Hochformat zuschneiden, bevor es als IP-Adapter-Eingabe verwendet wird\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Layer options\",\n      \"localized\": \"Ebenenoptionen\",\n      \"reload\": \"\",\n      \"hint\": \"Erweiterte IP-Adapter-Ebenenoptionen manuell angeben\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"X values\",\n      \"localized\": \"X-Werte\",\n      \"reload\": \"\",\n      \"hint\": \"Werte für die X-Achse durch Kommas trennen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Y values\",\n      \"localized\": \"Y-Werte\",\n      \"reload\": \"\",\n      \"hint\": \"Werte für die Y-Achse durch Kommas trennen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Z values\",\n      \"localized\": \"Z-Werte\",\n      \"reload\": \"\",\n      \"hint\": \"Werte für die Z-Achse durch Kommas trennen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Loops\",\n      \"localized\": \"Schleifen\",\n      \"reload\": \"\",\n      \"hint\": \"Wie oft ein Bild verarbeitet werden soll. Jede Ausgabe wird als Eingabe der nächsten Schleife verwendet. Wenn auf 1 gesetzt, verhält es sich, als ob dieses Skript nicht verwendet wurde\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Final denoising strength\",\n      \"localized\": \"Endgültige Entrauschungsstärke\",\n      \"reload\": \"\",\n      \"hint\": \"Die Entrauschungsstärke für die letzte Schleife jedes Bildes im Stapel\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoising strength curve\",\n      \"localized\": \"Entrauschungsstärkenkurve\",\n      \"reload\": \"\",\n      \"hint\": \"Die Entrauschungskurve steuert die Änderungsrate der Entrauschungsstärke in jeder Schleife. Aggressiv: Der größte Teil der Änderung erfolgt am Anfang der Schleifen. Linear: Die Änderung bleibt über alle Schleifen konstant. Träge: Der größte Teil der Änderung erfolgt gegen Ende der Schleifen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Tile overlap\",\n      \"localized\": \"Kachelüberlappung\",\n      \"reload\": \"\",\n      \"hint\": \"Für SD-Upscale, wie viel Überlappung in Pixeln zwischen Kacheln bestehen sollte. Kacheln überlappen sich, damit beim Zusammenführen zu einem Bild keine deutlich sichtbare Naht entsteht\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Color to Mask\",\n      \"localized\": \"ACI: Farbe zu Maske\",\n      \"reload\": \"\",\n      \"hint\": \"Wählen Sie die Farbe aus, die Sie maskieren und inpainten möchten. Klicken Sie auf die Farbe im Bild, um sie automatisch auszuwählen.\\n Es wird empfohlen, Bilder wie Green Screens zu verwenden, um präzise Ergebnisse zu erzielen.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Color Tolerance\",\n      \"localized\": \"ACI: Farbtoleranz\",\n      \"reload\": \"\",\n      \"hint\": \"Passen Sie die Toleranz an, um ähnliche Farben in die Maske aufzunehmen. Niedrigere Werte = nur sehr ähnliche Farben maskieren. Höhere Werte = maskieren einen größeren Bereich ähnlicher Farben.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Mask Erode\",\n      \"localized\": \"ACI: Masken-Erosion\",\n      \"reload\": \"\",\n      \"hint\": \"Passen Sie den Abstand an, um einen inneren Versatz auf die Maske anzuwenden. (Empfohlener Wert = 2, um Reste an den Rändern zu entfernen)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Mask Blur\",\n      \"localized\": \"ACI: Maskenunschärfe\",\n      \"reload\": \"\",\n      \"hint\": \"Passen Sie die Unschärfe an, um einen sanften Übergang zwischen Bild und Inpainted-Bereich anzuwenden. (Empfohlener Wert = 0 für Schärfe)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Denoising Strength\",\n      \"localized\": \"ACI: Entrauschungsstärke\",\n      \"reload\": \"\",\n      \"hint\": \"Entrauschungsstärke ändern, um die gewünschte Inpaint-Menge zu erreichen.\"\n    }\n  ],\n  \"settings\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Apply settings\",\n      \"localized\": \"Einstellungen anwenden\",\n      \"reload\": \"\",\n      \"hint\": \"Aktuelle Einstellungen speichern, Serverneustart wird empfohlen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Loading\",\n      \"localized\": \"Modell laden\",\n      \"reload\": \"\",\n      \"hint\": \"Einstellungen zum Laden von Modellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Options\",\n      \"localized\": \"Modelloptionen\",\n      \"reload\": \"\",\n      \"hint\": \"Einstellungen zum Verhalten spezifischer Modelle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Offloading\",\n      \"localized\": \"Modell-Offloading\",\n      \"reload\": \"\",\n      \"hint\": \"Einstellungen zum Modell-Offloading und Speichermanagement\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Quantization\",\n      \"localized\": \"Modellquantisierung\",\n      \"reload\": \"\",\n      \"hint\": \"Einstellungen zur Modellquantisierung, die zur Reduzierung des Speicherverbrauchs verwendet wird\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Metadata\",\n      \"localized\": \"Bildmetadaten\",\n      \"reload\": \"\",\n      \"hint\": \"Einstellungen zur Handhabung von Metadaten, die mit generierten Bildern erstellt werden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Legacy Options\",\n      \"localized\": \"Legacy-Optionen\",\n      \"reload\": \"\",\n      \"hint\": \"Einstellungen zu Legacy-Optionen - sollten nicht verwendet werden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restart server\",\n      \"localized\": \"Server neu starten\",\n      \"reload\": \"\",\n      \"hint\": \"Server neu starten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Shutdown server\",\n      \"localized\": \"Server herunterfahren\",\n      \"reload\": \"\",\n      \"hint\": \"Server herunterfahren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Preview theme\",\n      \"localized\": \"Designvorschau\",\n      \"reload\": \"\",\n      \"hint\": \"Designvorschau anzeigen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore defaults\",\n      \"localized\": \"Standardeinstellungen wiederherstellen\",\n      \"reload\": \"\",\n      \"hint\": \"Standard-Servereinstellungen wiederherstellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Unload model\",\n      \"localized\": \"Modell entladen\",\n      \"reload\": \"\",\n      \"hint\": \"Aktuell geladenes Modell entladen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reload model\",\n      \"localized\": \"Modell neu laden\",\n      \"reload\": \"\",\n      \"hint\": \"Aktuell ausgewähltes Modell neu laden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models & Loading\",\n      \"localized\": \"Modelle & Laden\",\n      \"reload\": \"\",\n      \"hint\": \"Einstellungen zu Basismodellen, primärem Backend und Modellladeverhalten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variational Auto Encoder\",\n      \"localized\": \"Variationaler Autoencoder\",\n      \"reload\": \"\",\n      \"hint\": \"Einstellungen zum Variationalen Autoencoder und Bilddecodierungsprozess während der Generierung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Text encoder\",\n      \"localized\": \"Text-Encoder\",\n      \"reload\": \"\",\n      \"hint\": \"Einstellungen zum Text-Encoder und zur Prompt-Encoding-Verarbeitung während der Generierung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Compute Settings\",\n      \"localized\": \"Berechnungseinstellungen\",\n      \"reload\": \"\",\n      \"hint\": \"Einstellungen zu Berechnungspräzision, Cross-Attention und Optimierungen für Rechenplattformen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Backend Settings\",\n      \"localized\": \"Backend-Einstellungen\",\n      \"reload\": \"\",\n      \"hint\": \"Einstellungen zu Berechnungs-Backends: Torch, ONNX und Olive\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Quantization Settings\",\n      \"localized\": \"Quantisierungseinstellungen\",\n      \"reload\": \"\",\n      \"hint\": \"Einstellungen zur Modellquantisierung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Pipeline modifiers\",\n      \"localized\": \"Pipeline-Modifikatoren\",\n      \"reload\": \"\",\n      \"hint\": \"Zusätzliche Funktionalität, die während der Generierung aktiviert werden kann\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model compile\",\n      \"localized\": \"Modell kompilieren\",\n      \"reload\": \"\",\n      \"hint\": \"Einstellungen zu verschiedenen Modellkompilierungsmethoden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System Paths\",\n      \"localized\": \"Systempfade\",\n      \"reload\": \"\",\n      \"hint\": \"Einstellungen zum Speicherort verschiedener Modellverzeichnisse\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Options\",\n      \"localized\": \"Bildoptionen\",\n      \"reload\": \"\",\n      \"hint\": \"Einstellungen zu Bildformat, Metadaten und Bildrastern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Paths\",\n      \"localized\": \"Bildpfade\",\n      \"reload\": \"\",\n      \"hint\": \"Einstellungen zu Bilddateinamen und Ausgabeverzeichnissen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Live Previews\",\n      \"localized\": \"Live-Vorschauen\",\n      \"reload\": \"\",\n      \"hint\": \"Einstellungen zu Live-Vorschauen, Audiobenachrichtigungen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sampler Settings\",\n      \"localized\": \"Sampler-Einstellungen\",\n      \"reload\": \"\",\n      \"hint\": \"Einstellungen zur Sampler-Auswahl und -Konfiguration sowie zur diffuser-spezifischen Sampler-Konfiguration\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Postprocessing\",\n      \"localized\": \"Nachbearbeitung\",\n      \"reload\": \"\",\n      \"hint\": \"Einstellungen zur Nachbearbeitung von Bildern, Gesichtsrestaurierung und Hochskalierung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control Options\",\n      \"localized\": \"Steuerungsoptionen\",\n      \"reload\": \"\",\n      \"hint\": \"Einstellungen zum Steuerungs-Tab\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Huggingface\",\n      \"localized\": \"Hugging Face\",\n      \"reload\": \"\",\n      \"hint\": \"Einstellungen zum Hugging Face-Zugriff\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show all pages\",\n      \"localized\": \"Alle Seiten anzeigen\",\n      \"reload\": \"\",\n      \"hint\": \"Alle Einstellungsseiten anzeigen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Base model\",\n      \"localized\": \"Basismodell\",\n      \"reload\": \"\",\n      \"hint\": \"Hauptmodell für alle Operationen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner model\",\n      \"localized\": \"Verfeinerungsmodell\",\n      \"reload\": \"\",\n      \"hint\": \"Verfeinerungsmodell für Zweitpass-Operationen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Cached models\",\n      \"localized\": \"Gecachte Modelle\",\n      \"reload\": \"\",\n      \"hint\": \"Anzahl der Modelle, die für schnellen Zugriff im RAM gespeichert werden sollen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE model\",\n      \"localized\": \"VAE-Modell\",\n      \"reload\": \"\",\n      \"hint\": \"VAE hilft bei feinen Details im finalen Bild und kann auch Farben verändern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model load using streams\",\n      \"localized\": \"Modell per Stream laden\",\n      \"reload\": \"\",\n      \"hint\": \"Beim Laden von Modellen das Stream-Laden versuchen, optimiert für langsamen oder Netzwerkspeicher\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xFormers\",\n      \"localized\": \"xFormers\",\n      \"reload\": \"\",\n      \"hint\": \"Speicheroptimierung. Nicht-deterministisch (jedes Mal andere Ergebnisse)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scaled-Dot-Product\",\n      \"localized\": \"Skalierter Punktprodukt\",\n      \"reload\": \"\",\n      \"hint\": \"Speicheroptimierung. Nicht-deterministisch, es sei denn, SDP-Speicheraufmerksamkeit ist deaktiviert.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt padding\",\n      \"localized\": \"Prompt-Auffüllung\",\n      \"reload\": \"\",\n      \"hint\": \"Kohärenz erhöhen durch Auffüllen ab dem letzten Komma innerhalb von n Token bei Verwendung von mehr als 75 Token\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Original\",\n      \"localized\": \"Original\",\n      \"reload\": \"\",\n      \"hint\": \"Original LDM-Backend\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Autocast\",\n      \"localized\": \"Autocast\",\n      \"reload\": \"\",\n      \"hint\": \"Präzision während der Laufzeit automatisch bestimmen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full\",\n      \"localized\": \"Voll\",\n      \"reload\": \"\",\n      \"hint\": \"Immer volle Präzision verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"FP32\",\n      \"localized\": \"FP32\",\n      \"reload\": \"\",\n      \"hint\": \"32-Bit-Gleitkommapräzision für Berechnungen verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"FP16\",\n      \"localized\": \"FP16\",\n      \"reload\": \"\",\n      \"hint\": \"16-Bit-Gleitkommapräzision für Berechnungen verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"BF16\",\n      \"localized\": \"BF16\",\n      \"reload\": \"\",\n      \"hint\": \"Modifizierte 16-Bit-Gleitkommapräzision für Berechnungen verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full precision (--no-half-vae)\",\n      \"localized\": \"Volle Präzision (--no-half-vae)\",\n      \"reload\": \"\",\n      \"hint\": \"Verwendet FP32 für den VAE. Kann bessere Ergebnisse liefern, verbraucht aber mehr VRAM und führt zu langsamerer Generierung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Force full precision (--no-half)\",\n      \"localized\": \"Volle Präzision erzwingen (--no-half)\",\n      \"reload\": \"\",\n      \"hint\": \"Verwendet FP32 für das Modell. Kann bessere Ergebnisse liefern, verbraucht aber mehr VRAM und führt zu langsamerer Generierung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upcast sampling\",\n      \"localized\": \"Upcast-Sampling\",\n      \"reload\": \"\",\n      \"hint\": \"Liefert normalerweise ähnliche Ergebnisse wie --no-half mit besserer Leistung bei geringerem Speicherverbrauch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Attempt VAE roll back for NaN values\",\n      \"localized\": \"VAE-Rollback für NaN-Werte versuchen\",\n      \"reload\": \"\",\n      \"hint\": \"Benötigt Torch 2.1 und aktivierte NaN-Prüfung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive use FP16 on optimization\",\n      \"localized\": \"Olive verwendet FP16 bei Optimierung\",\n      \"reload\": \"\",\n      \"hint\": \"Verwendet 16-Bit-Gleitkommapräzision für das Ausgabemodell des Olive-Optimierungsprozesses. Verwendet 32-Bit-Gleitkommapräzision, wenn deaktiviert\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive force FP32 for VAE Encoder\",\n      \"localized\": \"Olive erzwingt FP32 für VAE-Encoder\",\n      \"reload\": \"\",\n      \"hint\": \"Verwendet 32-Bit-Gleitkommapräzision für den VAE-Encoder des Ausgabemodells. Dies überschreibt die Option 'FP16 bei Optimierung verwenden'. Wenn Sie NaN-Werte oder leere schwarze Bilder von Img2Img erhalten, aktivieren Sie diese Option und leeren Sie den Cache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive use static dimensions\",\n      \"localized\": \"Olive verwendet statische Dimensionen\",\n      \"reload\": \"\",\n      \"hint\": \"Macht die Inferenz mit Olive-optimierten Modellen viel schneller. (OrtTransformersOptimization)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive cache optimized models\",\n      \"localized\": \"Olive optimierte Modelle cachen\",\n      \"reload\": \"\",\n      \"hint\": \"Olive-verarbeitete Modelle als Cache speichern. Sie können diese im ONNX-Tab verwalten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"File format\",\n      \"localized\": \"Dateiformat\",\n      \"reload\": \"\",\n      \"hint\": \"Dateiformat für Bilder auswählen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Include metadata\",\n      \"localized\": \"Metadaten einschließen\",\n      \"reload\": \"\",\n      \"hint\": \"Bildparameter als Metadaten-Tags in der Bilddatei speichern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Images filename pattern\",\n      \"localized\": \"Dateinamenmuster für Bilder\",\n      \"reload\": \"\",\n      \"hint\": \"Verwenden Sie die folgenden Tags, um festzulegen, wie Dateinamen für Bilder gewählt werden:<br><pre>seq, uuid<br>date, datetime, job_timestamp<br>generation_number, batch_number<br>model, model_shortname<br>model_hash, model_name<br>sampler, seed, steps, cfg<br>clip_skip, denoising<br>hasprompt, prompt, styles<br>prompt_hash, prompt_no_styles<br>prompt_spaces, prompt_words<br>height, width, image_hash<br></pre>\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Row count\",\n      \"localized\": \"Zeilenanzahl\",\n      \"reload\": \"\",\n      \"hint\": \"Verwenden Sie -1 für automatische Erkennung und 0, um der Batch-Größe zu entsprechen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Directory name pattern\",\n      \"localized\": \"Verzeichnisnamenmuster\",\n      \"reload\": \"\",\n      \"hint\": \"Verwenden Sie die folgenden Tags, um festzulegen, wie Unterverzeichnisse für Bilder und Gitter gewählt werden: [steps], [cfg],[prompt_hash], [prompt], [prompt_no_styles], [prompt_spaces], [width], [height], [styles], [sampler], [seed], [model_hash], [model_name], [prompt_words], [date], [datetime], [datetime<Format>], [datetime<Format><Time Zone>], [job_timestamp]; leer lassen für Standard\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpainting conditioning mask strength\",\n      \"localized\": \"Inpainting-Konditionierungsmaskenstärke\",\n      \"reload\": \"\",\n      \"hint\": \"Bestimmt, wie stark das Originalbild für Inpainting und Img2Img maskiert wird. 1.0 bedeutet vollständig maskiert (Standard). 0.0 bedeutet eine vollständig unmaskierte Konditionierung. Kleinere Werte helfen, die Gesamtkomposition des Bildes zu erhalten, haben aber Schwierigkeiten bei großen Änderungen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Clip skip\",\n      \"localized\": \"Clip-Skip\",\n      \"reload\": \"\",\n      \"hint\": \"Früher Stoppparameter für CLIP-Modell; 1 stoppt wie üblich bei der letzten Schicht, 2 stoppt bei der vorletzten Schicht usw.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Images folder\",\n      \"localized\": \"Bilderordner\",\n      \"reload\": \"\",\n      \"hint\": \"Wenn leer, Standard auf drei Verzeichnisse tiefer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Grids folder\",\n      \"localized\": \"Gitterordner\",\n      \"reload\": \"\",\n      \"hint\": \"Wenn leer, Standard auf zwei Verzeichnisse tiefer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Quicksettings list\",\n      \"localized\": \"Schnelleinstellungen-Liste\",\n      \"reload\": \"\",\n      \"hint\": \"Liste der Einstellungsnamen, durch Kommas getrennt, für Einstellungen, die stattdessen in die Schnellzugriffsleiste oben statt in den Einstellungs-Tab verschoben werden sollen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Live preview display period\",\n      \"localized\": \"Live-Vorschau-Anzeigeperiode\",\n      \"reload\": \"\",\n      \"hint\": \"Vorschaubild alle n Schritte anfordern, auf 0 setzen, um zu deaktivieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Approximate\",\n      \"localized\": \"Approximativ\",\n      \"reload\": \"\",\n      \"hint\": \"Günstige neuronale Netzwerk-Approximation. Sehr schnell im Vergleich zu VAE, erzeugt aber Bilder mit 4-mal geringerer horizontaler/vertikaler Auflösung und niedrigerer Qualität\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Simple\",\n      \"localized\": \"Einfach\",\n      \"reload\": \"\",\n      \"hint\": \"Sehr günstige Approximation. Sehr schnell im Vergleich zu VAE, erzeugt aber Bilder mit 8-mal geringerer horizontaler/vertikaler Auflösung und extrem niedriger Qualität\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Progress update period\",\n      \"localized\": \"Fortschrittsaktualisierungsperiode\",\n      \"reload\": \"\",\n      \"hint\": \"Aktualisierungsperiode für UI-Fortschrittsbalken und Vorschauprüfungen, in Millisekunden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Euler a\",\n      \"localized\": \"Euler a\",\n      \"reload\": \"\",\n      \"hint\": \"Euler Ancestral - sehr kreativ, jedes kann ein völlig anderes Bild ergeben, abhängig von der Schrittanzahl, das Setzen von Schritten höher als 30-40 hilft nicht\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"DDIM\",\n      \"localized\": \"DDIM\",\n      \"reload\": \"\",\n      \"hint\": \"Denoising Diffusion Implicit Models - am besten für Inpainting\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"UniPC\",\n      \"localized\": \"UniPC\",\n      \"reload\": \"\",\n      \"hint\": \"Vereinheitlichtes Prädiktor-Korrektor-Framework für schnelles Sampling von Diffusionsmodellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sigma negative guidance minimum\",\n      \"localized\": \"Sigma negative Guidance Minimum\",\n      \"reload\": \"\",\n      \"hint\": \"Negative Aufforderung für einige Schritte überspringen, wenn das Bild fast fertig ist, 0=deaktivieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler tile size\",\n      \"localized\": \"Upscaler-Kachelgröße\",\n      \"reload\": \"\",\n      \"hint\": \"0 = kein Tiling\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler tile overlap\",\n      \"localized\": \"Upscaler-Kachelüberlappung\",\n      \"reload\": \"\",\n      \"hint\": \"Niedrige Werte = sichtbare Naht\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"GFPGAN\",\n      \"localized\": \"GFPGAN\",\n      \"reload\": \"\",\n      \"hint\": \"Gesichter geringer Qualität mit dem GFPGAN neuronalen Netzwerk wiederherstellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CodeFormer\",\n      \"localized\": \"CodeFormer\",\n      \"reload\": \"\",\n      \"hint\": \"Gesichter geringer Qualität mit dem CodeFormer neuronalen Netzwerk wiederherstellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CodeFormer weight parameter\",\n      \"localized\": \"CodeFormer Gewichtsparameter\",\n      \"reload\": \"\",\n      \"hint\": \"0 = maximale Wirkung; 1 = minimale Wirkung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ToMe token merging ratio\",\n      \"localized\": \"ToMe Token-Merge-Verhältnis\",\n      \"reload\": \"\",\n      \"hint\": \"Redundantes Token-Merging über tomesd für Geschwindigkeits- und Speicherverbesserungen aktivieren, 0=deaktiviert\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Todo token merging ratio\",\n      \"localized\": \"Todo Token-Merge-Verhältnis\",\n      \"reload\": \"\",\n      \"hint\": \"Redundantes Token-Merging über todo für Geschwindigkeits- und Speicherverbesserungen aktivieren, 0=deaktiviert\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model pipeline\",\n      \"localized\": \"Modell-Pipeline\",\n      \"reload\": \"\",\n      \"hint\": \"Wenn die automatische Erkennung das Modell nicht automatisch erkennt, wählen Sie den Modelltyp vor dem Laden eines Modells\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE slicing\",\n      \"localized\": \"VAE-Slicing\",\n      \"reload\": \"\",\n      \"hint\": \"Decodiert Batch-Latents Bild für Bild mit begrenztem VRAM. Kleiner Leistungsanstieg beim VAE-Decodieren bei Mehrbild-Batches\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE tiling\",\n      \"localized\": \"VAE-Tiling\",\n      \"reload\": \"\",\n      \"hint\": \"Teilt große Bilder in überlappende Kacheln mit begrenztem VRAM. Führt zu einem geringfügigen Anstieg der Verarbeitungszeit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Dynamic attention BMM\",\n      \"localized\": \"Dynamische Attention BMM\",\n      \"reload\": \"\",\n      \"hint\": \"Führt die Attention-Berechnung schrittweise statt auf einmal durch. Längere Inferenzzeiten, aber stark reduzierter Speicherverbrauch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX Execution Provider\",\n      \"localized\": \"ONNX Ausführungsanbieter\",\n      \"reload\": \"\",\n      \"hint\": \"ONNX Ausführungsanbieter\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX allow fallback to CPU\",\n      \"localized\": \"ONNX Fallback zur CPU erlauben\",\n      \"reload\": \"\",\n      \"hint\": \"Fallback zur CPU erlauben, wenn der ausgewählte Ausführungsanbieter fehlgeschlagen ist\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX cache converted models\",\n      \"localized\": \"ONNX konvertierte Modelle cachen\",\n      \"reload\": \"\",\n      \"hint\": \"Die in das ONNX-Format konvertierten Modelle als Cache speichern. Sie können diese im ONNX-Tab verwalten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX unload base model when processing refiner\",\n      \"localized\": \"ONNX Basismd. entladen, wenn Refiner verarbeitet wird\",\n      \"reload\": \"\",\n      \"hint\": \"Basismodell entladen, wenn der Refiner konvertiert/optimiert/verarbeitet wird\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inference-mode\",\n      \"localized\": \"Inferenzmodus\",\n      \"reload\": \"\",\n      \"hint\": \"torch.inference_mode verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"no-grad\",\n      \"localized\": \"no-grad\",\n      \"reload\": \"\",\n      \"hint\": \"torch.no_grad verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model compile precompile\",\n      \"localized\": \"Modell-Kompilierung vorkompilieren\",\n      \"reload\": \"\",\n      \"hint\": \"Modellkompilierung sofort beim Laden des Modells ausführen, statt bei der ersten Verwendung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Use zeros for prompt padding\",\n      \"localized\": \"Nullen für Prompt-Auffüllung verwenden\",\n      \"reload\": \"\",\n      \"hint\": \"Vollen Null-Tensor erzwingen, wenn der Prompt leer ist, um Restrauschen zu entfernen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Include invisible watermark\",\n      \"localized\": \"Unsichtbares Wasserzeichen einschließen\",\n      \"reload\": \"\",\n      \"hint\": \"Unsichtbares Wasserzeichen zum Bild hinzufügen, indem einige Pixelwerte geändert werden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invisible watermark string\",\n      \"localized\": \"Unsichtbarer Wasserzeichen-String\",\n      \"reload\": \"\",\n      \"hint\": \"Wasserzeichen-String, der zum Bild hinzugefügt werden soll. Sehr kurz halten, um Bildbeschädigung zu vermeiden.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show log view\",\n      \"localized\": \"Log-Ansicht anzeigen\",\n      \"reload\": \"\",\n      \"hint\": \"Log-Ansicht am unteren Rand des Hauptfensters anzeigen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Log view update period\",\n      \"localized\": \"Log-Ansicht Aktualisierungsperiode\",\n      \"reload\": \"\",\n      \"hint\": \"Aktualisierungsperiode der Log-Ansicht, in Millisekunden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"PAG layer names\",\n      \"localized\": \"PAG-Schichtnamen\",\n      \"reload\": \"\",\n      \"hint\": \"Leerzeichengetrennte Liste von Schichten<br>Verfügbar: d[0-5], m[0], u[0-8]<br>Standard: m0\"\n    }\n  ],\n  \"missing\": [\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage\",\n      \"localized\": \"1. Stufe\",\n      \"reload\": \"\",\n      \"hint\": \"1. Stufe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage backbone\",\n      \"localized\": \"Backbone 1. Stufe\",\n      \"reload\": \"\",\n      \"hint\": \"Backbone 1. Stufe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage skip\",\n      \"localized\": \"1. Stufe Skip\",\n      \"reload\": \"\",\n      \"hint\": \"1. Stufe Skip\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd restart step\",\n      \"localized\": \"2. Neustart-Schritt\",\n      \"reload\": \"\",\n      \"hint\": \"2. Neustart-Schritt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd scale\",\n      \"localized\": \"2. Skalierung\",\n      \"reload\": \"\",\n      \"hint\": \"2. Skalierung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage\",\n      \"localized\": \"2. Stufe\",\n      \"reload\": \"\",\n      \"hint\": \"2. Stufe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage backbone\",\n      \"localized\": \"Backbone 2. Stufe\",\n      \"reload\": \"\",\n      \"hint\": \"Backbone 2. Stufe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage skip\",\n      \"localized\": \"2. Stufe Skip\",\n      \"reload\": \"\",\n      \"hint\": \"2. Stufe Skip\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd restart step\",\n      \"localized\": \"3. Neustart-Schritt\",\n      \"reload\": \"\",\n      \"hint\": \"3. Neustart-Schritt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd scale\",\n      \"localized\": \"3. Skalierung\",\n      \"reload\": \"\",\n      \"hint\": \"3. Skalierung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd stage\",\n      \"localized\": \"3. Stufe\",\n      \"reload\": \"\",\n      \"hint\": \"3. Stufe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th restart step\",\n      \"localized\": \"4. Neustart-Schritt\",\n      \"reload\": \"\",\n      \"hint\": \"4. Neustart-Schritt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th scale\",\n      \"localized\": \"4. Skalierung\",\n      \"reload\": \"\",\n      \"hint\": \"4. Skalierung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th stage\",\n      \"localized\": \"4. Stufe\",\n      \"reload\": \"\",\n      \"hint\": \"4. Stufe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"a1111\",\n      \"localized\": \"a1111\",\n      \"reload\": \"\",\n      \"hint\": \"a1111\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"accuracy\",\n      \"localized\": \"Genauigkeit\",\n      \"reload\": \"\",\n      \"hint\": \"Genauigkeit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aci: mask dilate\",\n      \"localized\": \"ACI: Masken-Dilatation\",\n      \"reload\": \"\",\n      \"hint\": \"ACI: Masken-Dilatation\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"active\",\n      \"localized\": \"Aktiv\",\n      \"reload\": \"\",\n      \"hint\": \"Aktiv\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adain\",\n      \"localized\": \"Adain\",\n      \"reload\": \"\",\n      \"hint\": \"Adain\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 1\",\n      \"localized\": \"Adapter 1\",\n      \"reload\": \"\",\n      \"hint\": \"Adapter 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 2\",\n      \"localized\": \"Adapter 2\",\n      \"reload\": \"\",\n      \"hint\": \"Adapter 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 3\",\n      \"localized\": \"Adapter 3\",\n      \"reload\": \"\",\n      \"hint\": \"Adapter 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 4\",\n      \"localized\": \"Adapter 4\",\n      \"reload\": \"\",\n      \"hint\": \"Adapter 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adaptive restore\",\n      \"localized\": \"Adaptive Wiederherstellung\",\n      \"reload\": \"\",\n      \"hint\": \"Adaptive Wiederherstellung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"add text info\",\n      \"localized\": \"Textinfo hinzufügen\",\n      \"reload\": \"\",\n      \"hint\": \"Textinfo hinzufügen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"add time info\",\n      \"localized\": \"Zeitinfo hinzufügen\",\n      \"reload\": \"\",\n      \"hint\": \"Zeitinfo hinzufügen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"additional image browser folders\",\n      \"localized\": \"Zusätzliche Bildbrowser-Ordner\",\n      \"reload\": \"\",\n      \"hint\": \"Zusätzliche Bildbrowser-Ordner\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"additional postprocessing operations\",\n      \"localized\": \"Zusätzliche Nachbearbeitungsoperationen\",\n      \"reload\": \"\",\n      \"hint\": \"Zusätzliche Nachbearbeitungsoperationen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"advanced options\",\n      \"localized\": \"Erweiterte Optionen\",\n      \"reload\": \"\",\n      \"hint\": \"Erweiterte Optionen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"after\",\n      \"localized\": \"Nach\",\n      \"reload\": \"\",\n      \"hint\": \"Nach\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aggressive at step\",\n      \"localized\": \"Aggressiv bei Schritt\",\n      \"reload\": \"\",\n      \"hint\": \"Aggressiv bei Schritt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alias\",\n      \"localized\": \"Alias\",\n      \"reload\": \"\",\n      \"hint\": \"Alias\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"all\",\n      \"localized\": \"Alle\",\n      \"reload\": \"\",\n      \"hint\": \"Alle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"allowed aspect ratios\",\n      \"localized\": \"Erlaubte Seitenverhältnisse\",\n      \"reload\": \"\",\n      \"hint\": \"Erlaubte Seitenverhältnisse\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha\",\n      \"localized\": \"Alpha\",\n      \"reload\": \"\",\n      \"hint\": \"Alpha\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha block weight preset\",\n      \"localized\": \"Alpha Blockgewicht Voreinstellung\",\n      \"reload\": \"\",\n      \"hint\": \"Alpha Blockgewicht Voreinstellung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha matting\",\n      \"localized\": \"Alpha Matting\",\n      \"reload\": \"\",\n      \"hint\": \"Alpha Matting\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha preset\",\n      \"localized\": \"Alpha-Voreinstellung\",\n      \"reload\": \"\",\n      \"hint\": \"Alpha-Voreinstellung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha ratio\",\n      \"localized\": \"Alpha-Verhältnis\",\n      \"reload\": \"\",\n      \"hint\": \"Alpha-Verhältnis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"amplify lut\",\n      \"localized\": \"LUT verstärken\",\n      \"reload\": \"\",\n      \"hint\": \"LUT verstärken\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"analyze\",\n      \"localized\": \"Analysieren\",\n      \"reload\": \"\",\n      \"hint\": \"Analysieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"anchor settings\",\n      \"localized\": \"Anker-Einstellungen\",\n      \"reload\": \"\",\n      \"hint\": \"Anker-Einstellungen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"animateddiff\",\n      \"localized\": \"Animatediff\",\n      \"reload\": \"\",\n      \"hint\": \"Animatediff\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"answer\",\n      \"localized\": \"Antwort\",\n      \"reload\": \"\",\n      \"hint\": \"Antwort\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aot_ts_nvfuser\",\n      \"localized\": \"aot_ts_nvfuser\",\n      \"reload\": \"\",\n      \"hint\": \"aot_ts_nvfuser\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"appearance\",\n      \"localized\": \"Erscheinungsbild\",\n      \"reload\": \"\",\n      \"hint\": \"Erscheinungsbild\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append caption files\",\n      \"localized\": \"Beschriftungsdateien anhängen\",\n      \"reload\": \"\",\n      \"hint\": \"Beschriftungsdateien anhängen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append image info json file\",\n      \"localized\": \"Bildinfo JSON-Datei anhängen\",\n      \"reload\": \"\",\n      \"hint\": \"Bildinfo JSON-Datei anhängen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append interrogated prompt at each iteration\",\n      \"localized\": \"Abgefragten Prompt bei jeder Iteration anhängen\",\n      \"reload\": \"\",\n      \"hint\": \"Abgefragten Prompt bei jeder Iteration anhängen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply color correction\",\n      \"localized\": \"Farbkorrektur anwenden\",\n      \"reload\": \"\",\n      \"hint\": \"Farbkorrektur anwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply filter\",\n      \"localized\": \"Filter anwenden\",\n      \"reload\": \"\",\n      \"hint\": \"Filter anwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply linfusion distillation on load\",\n      \"localized\": \"Linfusion Destillation beim Laden anwenden\",\n      \"reload\": \"\",\n      \"hint\": \"Linfusion Destillation beim Laden anwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply mask as overlay\",\n      \"localized\": \"Maske als Overlay anwenden\",\n      \"reload\": \"\",\n      \"hint\": \"Maske als Overlay anwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply msw-msa\",\n      \"localized\": \"MSW-MSA anwenden\",\n      \"reload\": \"\",\n      \"hint\": \"MSW-MSA anwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply rau-net\",\n      \"localized\": \"RAU-Net anwenden\",\n      \"reload\": \"\",\n      \"hint\": \"RAU-Net anwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply to model\",\n      \"localized\": \"Auf Modell anwenden\",\n      \"reload\": \"\",\n      \"hint\": \"Auf Modell anwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"artists\",\n      \"localized\": \"Künstler\",\n      \"reload\": \"\",\n      \"hint\": \"Künstler\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"atiadlxx (amd only)\",\n      \"localized\": \"atiadlxx (nur AMD)\",\n      \"reload\": \"\",\n      \"hint\": \"atiadlxx (nur AMD)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention\",\n      \"localized\": \"Attention\",\n      \"reload\": \"\",\n      \"hint\": \"Attention\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention adain\",\n      \"localized\": \"Attention Adain\",\n      \"reload\": \"\",\n      \"hint\": \"Attention Adain\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention cache enabled\",\n      \"localized\": \"Attention Cache aktiviert\",\n      \"reload\": \"\",\n      \"hint\": \"Attention Cache aktiviert\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention chunking threshold\",\n      \"localized\": \"Attention Chunking Schwellenwert\",\n      \"reload\": \"\",\n      \"hint\": \"Attention Chunking Schwellenwert\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention kv chunk size\",\n      \"localized\": \"Attention KV Chunk Größe\",\n      \"reload\": \"\",\n      \"hint\": \"Attention KV Chunk Größe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention query chunk size\",\n      \"localized\": \"Attention Query Chunk Größe\",\n      \"reload\": \"\",\n      \"hint\": \"Attention Query Chunk Größe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto\",\n      \"localized\": \"Auto\",\n      \"reload\": \"\",\n      \"hint\": \"Auto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto apply\",\n      \"localized\": \"Automatisch anwenden\",\n      \"reload\": \"\",\n      \"hint\": \"Automatisch anwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-convert sd15 embeddings to sdxl\",\n      \"localized\": \"SD15 Embeddings automatisch nach SDXL konvertieren\",\n      \"reload\": \"\",\n      \"hint\": \"SD15 Embeddings automatisch nach SDXL konvertieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-mask\",\n      \"localized\": \"Auto-Maske\",\n      \"reload\": \"\",\n      \"hint\": \"Auto-Maske\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-segment\",\n      \"localized\": \"Auto-Segment\",\n      \"reload\": \"\",\n      \"hint\": \"Auto-Segment\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"autolaunch browser upon startup\",\n      \"localized\": \"Browser beim Start automatisch starten\",\n      \"reload\": \"\",\n      \"hint\": \"Browser beim Start automatisch starten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"automatically determine rank\",\n      \"localized\": \"Rang automatisch bestimmen\",\n      \"reload\": \"\",\n      \"hint\": \"Rang automatisch bestimmen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"autorank ratio\",\n      \"localized\": \"Autorank-Verhältnis\",\n      \"reload\": \"\",\n      \"hint\": \"Autorank-Verhältnis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"available networks\",\n      \"localized\": \"Verfügbare Netzwerke\",\n      \"reload\": \"\",\n      \"hint\": \"Verfügbare Netzwerke\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"backend\",\n      \"localized\": \"Backend\",\n      \"reload\": \"\",\n      \"hint\": \"Backend\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"backend storage\",\n      \"localized\": \"Backend-Speicher\",\n      \"reload\": \"\",\n      \"hint\": \"Backend-Speicher\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"background threshold\",\n      \"localized\": \"Hintergrund-Schwellenwert\",\n      \"reload\": \"\",\n      \"hint\": \"Hintergrund-Schwellenwert\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced\",\n      \"localized\": \"Ausgeglichen\",\n      \"reload\": \"\",\n      \"hint\": \"Ausgeglichen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload cpu high watermark\",\n      \"localized\": \"Ausgeglichener Offload CPU-High Watermark\",\n      \"reload\": \"\",\n      \"hint\": \"Ausgeglichener Offload CPU-High Watermark\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload gpu high watermark\",\n      \"localized\": \"Ausgeglichener Offload GPU-High Watermark\",\n      \"reload\": \"\",\n      \"hint\": \"Ausgeglichener Offload GPU-High Watermark\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload gpu low watermark\",\n      \"localized\": \"Ausgeglichener Offload GPU-Low Watermark\",\n      \"reload\": \"\",\n      \"hint\": \"Ausgeglichener Offload GPU-Low Watermark\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"base\",\n      \"localized\": \"Basis\",\n      \"reload\": \"\",\n      \"hint\": \"Basis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch caption\",\n      \"localized\": \"Stapel-Beschriftung\",\n      \"reload\": \"\",\n      \"hint\": \"Stapel-Beschriftung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch input directory\",\n      \"localized\": \"Stapel-Eingabeverzeichnis\",\n      \"reload\": \"\",\n      \"hint\": \"Stapel-Eingabeverzeichnis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch interogate\",\n      \"localized\": \"Stapel-Interrogation\",\n      \"reload\": \"\",\n      \"hint\": \"Stapel-Interrogation\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch interrogate\",\n      \"localized\": \"Stapel-Interrogation\",\n      \"reload\": \"\",\n      \"hint\": \"Stapel-Interrogation\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch mask directory\",\n      \"localized\": \"Stapel-Maskenverzeichnis\",\n      \"reload\": \"\",\n      \"hint\": \"Stapel-Maskenverzeichnis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch matrix-matrix\",\n      \"localized\": \"Stapel Matrix-Matrix\",\n      \"reload\": \"\",\n      \"hint\": \"Stapel Matrix-Matrix\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch mode uses sequential seeds\",\n      \"localized\": \"Stapelmodus verwendet sequentielle Seeds\",\n      \"reload\": \"\",\n      \"hint\": \"Stapelmodus verwendet sequentielle Seeds\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch output directory\",\n      \"localized\": \"Stapel-Ausgabeverzeichnis\",\n      \"reload\": \"\",\n      \"hint\": \"Stapel-Ausgabeverzeichnis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch uses original name\",\n      \"localized\": \"Stapel verwendet Originalnamen\",\n      \"reload\": \"\",\n      \"hint\": \"Stapel verwendet Originalnamen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bdia ddim\",\n      \"localized\": \"BDIA DDIM\",\n      \"reload\": \"\",\n      \"hint\": \"BDIA DDIM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"before\",\n      \"localized\": \"Vorher\",\n      \"reload\": \"\",\n      \"hint\": \"Vorher\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"benchmark level\",\n      \"localized\": \"Benchmark-Level\",\n      \"reload\": \"\",\n      \"hint\": \"Benchmark-Level\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"benchmark steps\",\n      \"localized\": \"Benchmark-Schritte\",\n      \"reload\": \"\",\n      \"hint\": \"Benchmark-Schritte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta block weight preset\",\n      \"localized\": \"Beta Blockgewicht Voreinstellung\",\n      \"reload\": \"\",\n      \"hint\": \"Beta Blockgewicht Voreinstellung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta end\",\n      \"localized\": \"Beta Ende\",\n      \"reload\": \"\",\n      \"hint\": \"Beta Ende\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta ratio\",\n      \"localized\": \"Beta-Verhältnis\",\n      \"reload\": \"\",\n      \"hint\": \"Beta-Verhältnis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta schedule\",\n      \"localized\": \"Beta-Zeitplan\",\n      \"reload\": \"\",\n      \"hint\": \"Beta-Zeitplan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta start\",\n      \"localized\": \"Beta Start\",\n      \"reload\": \"\",\n      \"hint\": \"Beta Start\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bh1\",\n      \"localized\": \"bh1\",\n      \"reload\": \"\",\n      \"hint\": \"bh1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bh2\",\n      \"localized\": \"bh2\",\n      \"reload\": \"\",\n      \"hint\": \"bh2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"block\",\n      \"localized\": \"Block\",\n      \"reload\": \"\",\n      \"hint\": \"Block\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"block skip range\",\n      \"localized\": \"Block-Sprungbereich\",\n      \"reload\": \"\",\n      \"hint\": \"Block-Sprungbereich\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"blur\",\n      \"localized\": \"Unschärfe\",\n      \"reload\": \"\",\n      \"hint\": \"Unschärfe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"body\",\n      \"localized\": \"Körper\",\n      \"reload\": \"\",\n      \"hint\": \"Körper\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"boost\",\n      \"localized\": \"Verstärkung\",\n      \"reload\": \"\",\n      \"hint\": \"Verstärkung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"brightness\",\n      \"localized\": \"Helligkeit\",\n      \"reload\": \"\",\n      \"hint\": \"Helligkeit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cache model\",\n      \"localized\": \"Modell cachen\",\n      \"reload\": \"\",\n      \"hint\": \"Modell cachen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cache text encoder results\",\n      \"localized\": \"Text-Encoder-Ergebnisse cachen\",\n      \"reload\": \"\",\n      \"hint\": \"Text-Encoder-Ergebnisse cachen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"canny\",\n      \"localized\": \"Canny\",\n      \"reload\": \"\",\n      \"hint\": \"Canny\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"caption\",\n      \"localized\": \"Bildunterschrift\",\n      \"reload\": \"\",\n      \"hint\": \"Bildunterschrift\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"caption model\",\n      \"localized\": \"Bildunterschrift-Modell\",\n      \"reload\": \"\",\n      \"hint\": \"Bildunterschrift-Modell\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"center\",\n      \"localized\": \"Zentrieren\",\n      \"reload\": \"\",\n      \"hint\": \"Zentrieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change log\",\n      \"localized\": \"Änderungsprotokoll\",\n      \"reload\": \"\",\n      \"hint\": \"Änderungsprotokoll\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change model\",\n      \"localized\": \"Modell wechseln\",\n      \"reload\": \"\",\n      \"hint\": \"Modell wechseln\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change rate\",\n      \"localized\": \"Änderungsrate\",\n      \"reload\": \"\",\n      \"hint\": \"Änderungsrate\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change reference\",\n      \"localized\": \"Referenz ändern\",\n      \"reload\": \"\",\n      \"hint\": \"Referenz ändern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change refiner\",\n      \"localized\": \"Refiner wechseln\",\n      \"reload\": \"\",\n      \"hint\": \"Refiner wechseln\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change vae\",\n      \"localized\": \"VAE wechseln\",\n      \"reload\": \"\",\n      \"hint\": \"VAE wechseln\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"channels last\",\n      \"localized\": \"Kanäle zuletzt\",\n      \"reload\": \"\",\n      \"hint\": \"Kanäle zuletzt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"check alternative hash\",\n      \"localized\": \"Alternativen Hash prüfen\",\n      \"reload\": \"\",\n      \"hint\": \"Alternativen Hash prüfen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"check for updates\",\n      \"localized\": \"Nach Updates suchen\",\n      \"reload\": \"\",\n      \"hint\": \"Nach Updates suchen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"check status\",\n      \"localized\": \"Status prüfen\",\n      \"reload\": \"\",\n      \"hint\": \"Status prüfen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"chunk size\",\n      \"localized\": \"Blockgröße\",\n      \"reload\": \"\",\n      \"hint\": \"Blockgröße\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"civitai model type\",\n      \"localized\": \"Civitai Modelltyp\",\n      \"reload\": \"\",\n      \"hint\": \"Civitai Modelltyp\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"civitai token\",\n      \"localized\": \"Civitai Token\",\n      \"reload\": \"\",\n      \"hint\": \"Civitai Token\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ck flash attention\",\n      \"localized\": \"CK Flash Attention\",\n      \"reload\": \"\",\n      \"hint\": \"CK Flash Attention\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ckpt\",\n      \"localized\": \"ckpt\",\n      \"reload\": \"\",\n      \"hint\": \"ckpt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cleanup temporary folder on startup\",\n      \"localized\": \"Temporären Ordner beim Start bereinigen\",\n      \"reload\": \"\",\n      \"hint\": \"Temporären Ordner beim Start bereinigen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip model\",\n      \"localized\": \"CLIP Modell\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP Modell\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: chunk size\",\n      \"localized\": \"CLIP: Blockgröße\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: Blockgröße\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: default captioner\",\n      \"localized\": \"CLIP: Standard-Captioner\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: Standard-Captioner\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: default mode\",\n      \"localized\": \"CLIP: Standardmodus\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: Standardmodus\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: default model\",\n      \"localized\": \"CLIP: Standardmodell\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: Standardmodell\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: intermediate flavors\",\n      \"localized\": \"CLIP: Zwischenvarianten\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: Zwischenvarianten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: max flavors\",\n      \"localized\": \"CLIP: Max. Varianten\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: Max. Varianten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: max length\",\n      \"localized\": \"CLIP: Max. Länge\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: Max. Länge\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: min flavors\",\n      \"localized\": \"CLIP: Min. Varianten\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: Min. Varianten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: min length\",\n      \"localized\": \"CLIP: Min. Länge\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: Min. Länge\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: num beams\",\n      \"localized\": \"CLIP: Anzahl der Beams\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: Anzahl der Beams\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"close\",\n      \"localized\": \"Schließen\",\n      \"reload\": \"\",\n      \"hint\": \"Schließen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cmsi\",\n      \"localized\": \"cmsi\",\n      \"reload\": \"\",\n      \"hint\": \"cmsi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn end\",\n      \"localized\": \"CN Ende\",\n      \"reload\": \"\",\n      \"hint\": \"CN Ende\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn mode\",\n      \"localized\": \"CN Modus\",\n      \"reload\": \"\",\n      \"hint\": \"CN Modus\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn start\",\n      \"localized\": \"CN Start\",\n      \"reload\": \"\",\n      \"hint\": \"CN Start\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn strength\",\n      \"localized\": \"CN Stärke\",\n      \"reload\": \"\",\n      \"hint\": \"CN Stärke\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn tiles\",\n      \"localized\": \"CN Kacheln\",\n      \"reload\": \"\",\n      \"hint\": \"CN Kacheln\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"coarse\",\n      \"localized\": \"Grob\",\n      \"reload\": \"\",\n      \"hint\": \"Grob\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color\",\n      \"localized\": \"Farbe\",\n      \"reload\": \"\",\n      \"hint\": \"Farbe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color grading\",\n      \"localized\": \"Farbkorrektur\",\n      \"reload\": \"\",\n      \"hint\": \"Farbkorrektur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color map\",\n      \"localized\": \"Farbkarte\",\n      \"reload\": \"\",\n      \"hint\": \"Farbkarte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color variation\",\n      \"localized\": \"Farbvariation\",\n      \"reload\": \"\",\n      \"hint\": \"Farbvariation\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"colormap\",\n      \"localized\": \"Farbkarte\",\n      \"reload\": \"\",\n      \"hint\": \"Farbkarte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"columns\",\n      \"localized\": \"Spalten\",\n      \"reload\": \"\",\n      \"hint\": \"Spalten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"comma\",\n      \"localized\": \"Komma\",\n      \"reload\": \"\",\n      \"hint\": \"Komma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"comma separated list with optional strength per lora\",\n      \"localized\": \"Kommagetrennte Liste mit optionaler Stärke pro Lora\",\n      \"reload\": \"\",\n      \"hint\": \"Kommagetrennte Liste mit optionaler Stärke pro Lora\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"compact view\",\n      \"localized\": \"Kompakte Ansicht\",\n      \"reload\": \"\",\n      \"hint\": \"Kompakte Ansicht\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"compel\",\n      \"localized\": \"Compel\",\n      \"reload\": \"\",\n      \"hint\": \"Compel\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"composite\",\n      \"localized\": \"Komposit\",\n      \"reload\": \"\",\n      \"hint\": \"Komposit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"compress ratio\",\n      \"localized\": \"Kompressionsverhältnis\",\n      \"reload\": \"\",\n      \"hint\": \"Kompressionsverhältnis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"concept tokens\",\n      \"localized\": \"Konzept-Token\",\n      \"reload\": \"\",\n      \"hint\": \"Konzept-Token\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context\",\n      \"localized\": \"Kontext\",\n      \"reload\": \"\",\n      \"hint\": \"Kontext\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context after\",\n      \"localized\": \"Kontext danach\",\n      \"reload\": \"\",\n      \"hint\": \"Kontext danach\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context before\",\n      \"localized\": \"Kontext davor\",\n      \"reload\": \"\",\n      \"hint\": \"Kontext davor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context mask\",\n      \"localized\": \"Kontextmaske\",\n      \"reload\": \"\",\n      \"hint\": \"Kontextmaske\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"contrast\",\n      \"localized\": \"Kontrast\",\n      \"reload\": \"\",\n      \"hint\": \"Kontrast\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control factor\",\n      \"localized\": \"Steuerfaktor\",\n      \"reload\": \"\",\n      \"hint\": \"Steuerfaktor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control override denoise strength\",\n      \"localized\": \"Steuerung Denoise-Stärke überschreiben\",\n      \"reload\": \"\",\n      \"hint\": \"Steuerung Denoise-Stärke überschreiben\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control preprocess input images\",\n      \"localized\": \"Steuerungseingabebilder vorverarbeiten\",\n      \"reload\": \"\",\n      \"hint\": \"Steuerungseingabebilder vorverarbeiten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 1\",\n      \"localized\": \"Control-lllite Einheit 1\",\n      \"reload\": \"\",\n      \"hint\": \"Control-lllite Einheit 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 2\",\n      \"localized\": \"Control-lllite Einheit 2\",\n      \"reload\": \"\",\n      \"hint\": \"Control-lllite Einheit 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 3\",\n      \"localized\": \"Control-lllite Einheit 3\",\n      \"reload\": \"\",\n      \"hint\": \"Control-lllite Einheit 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 4\",\n      \"localized\": \"Control-lllite Einheit 4\",\n      \"reload\": \"\",\n      \"hint\": \"Control-lllite Einheit 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet\",\n      \"localized\": \"ControlNet\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 1\",\n      \"localized\": \"ControlNet Einheit 1\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet Einheit 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 2\",\n      \"localized\": \"ControlNet Einheit 2\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet Einheit 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 3\",\n      \"localized\": \"ControlNet Einheit 3\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet Einheit 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 4\",\n      \"localized\": \"ControlNet Einheit 4\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet Einheit 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs\",\n      \"localized\": \"ControlNet-XS\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet-XS\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 1\",\n      \"localized\": \"ControlNet-XS Einheit 1\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet-XS Einheit 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 2\",\n      \"localized\": \"ControlNet-XS Einheit 2\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet-XS Einheit 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 3\",\n      \"localized\": \"ControlNet-XS Einheit 3\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet-XS Einheit 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 4\",\n      \"localized\": \"ControlNet-XS Einheit 4\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet-XS Einheit 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"correction mode\",\n      \"localized\": \"Korrekturmodus\",\n      \"reload\": \"\",\n      \"hint\": \"Korrekturmodus\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine background\",\n      \"localized\": \"Kosinushintergrund\",\n      \"reload\": \"\",\n      \"hint\": \"Kosinushintergrund\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale\",\n      \"localized\": \"Kosinusskala\",\n      \"reload\": \"\",\n      \"hint\": \"Kosinusskala\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale 1\",\n      \"localized\": \"Kosinusskala 1\",\n      \"reload\": \"\",\n      \"hint\": \"Kosinusskala 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale 2\",\n      \"localized\": \"Kosinusskala 2\",\n      \"reload\": \"\",\n      \"hint\": \"Kosinusskala 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale 3\",\n      \"localized\": \"Kosinusskala 3\",\n      \"reload\": \"\",\n      \"hint\": \"Kosinusskala 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"create image info text file\",\n      \"localized\": \"Bildinfo-Textdatei erstellen\",\n      \"reload\": \"\",\n      \"hint\": \"Bildinfo-Textdatei erstellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"create video\",\n      \"localized\": \"Video erstellen\",\n      \"reload\": \"\",\n      \"hint\": \"Video erstellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"create zip archive\",\n      \"localized\": \"ZIP-Archiv erstellen\",\n      \"reload\": \"\",\n      \"hint\": \"ZIP-Archiv erstellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cross-attention\",\n      \"localized\": \"Cross-Attention\",\n      \"reload\": \"\",\n      \"hint\": \"Cross-Attention\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cudagraphs\",\n      \"localized\": \"CUDAGraphs\",\n      \"reload\": \"\",\n      \"hint\": \"CUDAGraphs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cudamallocasync\",\n      \"localized\": \"CUDAMallocAsync\",\n      \"reload\": \"\",\n      \"hint\": \"CUDAMallocAsync\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"custom pipeline\",\n      \"localized\": \"Benutzerdefinierte Pipeline\",\n      \"reload\": \"\",\n      \"hint\": \"Benutzerdefinierte Pipeline\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dark\",\n      \"localized\": \"Dunkel\",\n      \"reload\": \"\",\n      \"hint\": \"Dunkel\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dc solver\",\n      \"localized\": \"DC Solver\",\n      \"reload\": \"\",\n      \"hint\": \"DC Solver\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ddpm\",\n      \"localized\": \"DDPM\",\n      \"reload\": \"\",\n      \"hint\": \"DDPM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"debug info\",\n      \"localized\": \"Debug-Informationen\",\n      \"reload\": \"\",\n      \"hint\": \"Debug-Informationen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"decode\",\n      \"localized\": \"dekodieren\",\n      \"reload\": \"\",\n      \"hint\": \"dekodieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"decode chunks\",\n      \"localized\": \"Blöcke dekodieren\",\n      \"reload\": \"\",\n      \"hint\": \"Blöcke dekodieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deep-cache\",\n      \"localized\": \"Deep-Cache\",\n      \"reload\": \"\",\n      \"hint\": \"Deep-Cache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru\",\n      \"localized\": \"DeepBooru\",\n      \"reload\": \"\",\n      \"hint\": \"DeepBooru\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: escape brackets\",\n      \"localized\": \"DeepBooru: Klammern escapen\",\n      \"reload\": \"\",\n      \"hint\": \"DeepBooru: Klammern escapen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: exclude tags\",\n      \"localized\": \"DeepBooru: Tags ausschließen\",\n      \"reload\": \"\",\n      \"hint\": \"DeepBooru: Tags ausschließen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: include scores in results\",\n      \"localized\": \"DeepBooru: Punktzahlen in Ergebnissen berücksichtigen\",\n      \"reload\": \"\",\n      \"hint\": \"DeepBooru: Punktzahlen in Ergebnissen berücksichtigen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: max tags\",\n      \"localized\": \"DeepBooru: maximale Tags\",\n      \"reload\": \"\",\n      \"hint\": \"DeepBooru: maximale Tags\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: score threshold\",\n      \"localized\": \"DeepBooru: Punkteschwelle\",\n      \"reload\": \"\",\n      \"hint\": \"DeepBooru: Punkteschwelle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: sort alphabetically\",\n      \"localized\": \"DeepBooru: alphabetisch sortieren\",\n      \"reload\": \"\",\n      \"hint\": \"DeepBooru: alphabetisch sortieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: use spaces for tags\",\n      \"localized\": \"DeepBooru: Leerzeichen für Tags verwenden\",\n      \"reload\": \"\",\n      \"hint\": \"DeepBooru: Leerzeichen für Tags verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepcache cache interval\",\n      \"localized\": \"Deepcache Cache-Intervall\",\n      \"reload\": \"\",\n      \"hint\": \"Deepcache Cache-Intervall\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"default\",\n      \"localized\": \"Standard\",\n      \"reload\": \"\",\n      \"hint\": \"Standard\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deis\",\n      \"localized\": \"deis\",\n      \"reload\": \"\",\n      \"hint\": \"deis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"denoising batch size\",\n      \"localized\": \"Rauschunterdrückungs-Batch-Größe\",\n      \"reload\": \"\",\n      \"hint\": \"Rauschunterdrückungs-Batch-Größe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"denoising steps\",\n      \"localized\": \"Rauschunterdrückungsschritte\",\n      \"reload\": \"\",\n      \"hint\": \"Rauschunterdrückungsschritte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth and normal\",\n      \"localized\": \"Tiefe und Normal\",\n      \"reload\": \"\",\n      \"hint\": \"Tiefe und Normal\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth anything\",\n      \"localized\": \"Tiefe beliebig\",\n      \"reload\": \"\",\n      \"hint\": \"Tiefe beliebig\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth map\",\n      \"localized\": \"Tiefenkarte\",\n      \"reload\": \"\",\n      \"hint\": \"Tiefenkarte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth threshold\",\n      \"localized\": \"Tiefenschwelle\",\n      \"reload\": \"\",\n      \"hint\": \"Tiefenschwelle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"description\",\n      \"localized\": \"Beschreibung\",\n      \"reload\": \"\",\n      \"hint\": \"Beschreibung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"details\",\n      \"localized\": \"Details\",\n      \"reload\": \"\",\n      \"hint\": \"Details\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deterministic mode\",\n      \"localized\": \"Deterministischer Modus\",\n      \"reload\": \"\",\n      \"hint\": \"Deterministischer Modus\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"device info\",\n      \"localized\": \"Geräteinformationen\",\n      \"reload\": \"\",\n      \"hint\": \"Geräteinformationen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"diffusers\",\n      \"localized\": \"Diffusers\",\n      \"reload\": \"\",\n      \"hint\": \"Diffusers\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dilate\",\n      \"localized\": \"Dilatieren\",\n      \"reload\": \"\",\n      \"hint\": \"Dilatieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dilate tau\",\n      \"localized\": \"Dilatieren Tau\",\n      \"reload\": \"\",\n      \"hint\": \"Dilatieren Tau\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"directml retry ops for nan\",\n      \"localized\": \"DirectML Operationen bei NaN wiederholen\",\n      \"reload\": \"\",\n      \"hint\": \"DirectML Operationen bei NaN wiederholen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"directory for temporary images; leave empty for default\",\n      \"localized\": \"Verzeichnis für temporäre Bilder; für Standard leer lassen\",\n      \"reload\": \"\",\n      \"hint\": \"Verzeichnis für temporäre Bilder; für Standard leer lassen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disable accelerate\",\n      \"localized\": \"Accelerate deaktivieren\",\n      \"reload\": \"\",\n      \"hint\": \"Accelerate deaktivieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disable conditional batching\",\n      \"localized\": \"Bedingtes Batching deaktivieren\",\n      \"reload\": \"\",\n      \"hint\": \"Bedingtes Batching deaktivieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disabled\",\n      \"localized\": \"Deaktiviert\",\n      \"reload\": \"\",\n      \"hint\": \"Deaktiviert\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"discard penultimate sigma\",\n      \"localized\": \"Vorletztes Sigma verwerfen\",\n      \"reload\": \"\",\n      \"hint\": \"Vorletztes Sigma verwerfen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"distance threshold\",\n      \"localized\": \"Abstandsschwelle\",\n      \"reload\": \"\",\n      \"hint\": \"Abstandsschwelle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"do not change selected model when reading generation parameters\",\n      \"localized\": \"Ausgewähltes Modell beim Lesen von Generierungsparametern nicht ändern\",\n      \"reload\": \"\",\n      \"hint\": \"Ausgewähltes Modell beim Lesen von Generierungsparametern nicht ändern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"do not display video output in ui\",\n      \"localized\": \"Videoausgabe in der Benutzeroberfläche nicht anzeigen\",\n      \"reload\": \"\",\n      \"hint\": \"Videoausgabe in der Benutzeroberfläche nicht anzeigen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"down\",\n      \"localized\": \"Herunter\",\n      \"reload\": \"\",\n      \"hint\": \"Herunter\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download\",\n      \"localized\": \"Herunterladen\",\n      \"reload\": \"\",\n      \"hint\": \"Herunterladen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download model\",\n      \"localized\": \"Modell herunterladen\",\n      \"reload\": \"\",\n      \"hint\": \"Modell herunterladen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download path\",\n      \"localized\": \"Download-Pfad\",\n      \"reload\": \"\",\n      \"hint\": \"Download-Pfad\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download updates\",\n      \"localized\": \"Updates herunterladen\",\n      \"reload\": \"\",\n      \"hint\": \"Updates herunterladen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"downscale high resolution live previews\",\n      \"localized\": \"Hochauflösende Live-Vorschauen herunterskalieren\",\n      \"reload\": \"\",\n      \"hint\": \"Hochauflösende Live-Vorschauen herunterskalieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm sde\",\n      \"localized\": \"dpm sde\",\n      \"reload\": \"\",\n      \"hint\": \"dpm sde\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++\",\n      \"localized\": \"dpm++\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 1s\",\n      \"localized\": \"dpm++ 1s\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 1s\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m\",\n      \"localized\": \"dpm++ 2m\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 2m\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m edm\",\n      \"localized\": \"dpm++ 2m edm\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 2m edm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m inverse\",\n      \"localized\": \"DPM++ 2m Invers\",\n      \"reload\": \"\",\n      \"hint\": \"DPM++ 2m Invers\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m sde\",\n      \"localized\": \"dpm++ 2m sde\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 2m sde\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 3m\",\n      \"localized\": \"dpm++ 3m\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 3m\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 3m inverse\",\n      \"localized\": \"DPM++ 3m Invers\",\n      \"reload\": \"\",\n      \"hint\": \"DPM++ 3m Invers\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ cosine\",\n      \"localized\": \"DPM++ Cosinus\",\n      \"reload\": \"\",\n      \"hint\": \"DPM++ Cosinus\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ inverse\",\n      \"localized\": \"DPM++ Invers\",\n      \"reload\": \"\",\n      \"hint\": \"DPM++ Invers\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ sde\",\n      \"localized\": \"dpm++ sde\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ sde\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2 flowmatch\",\n      \"localized\": \"dpm2 flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2 flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2m flowmatch\",\n      \"localized\": \"dpm2++ 2m flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 2m flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2m sde flowmatch\",\n      \"localized\": \"dpm2++ 2m sde flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 2m sde flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2s flowmatch\",\n      \"localized\": \"dpm2++ 2s flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 2s flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 3m sde flowmatch\",\n      \"localized\": \"dpm2++ 3m sde flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 3m sde flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ sde flowmatch\",\n      \"localized\": \"dpm2++ sde flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ sde flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2a flowmatch\",\n      \"localized\": \"dpm2a flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2a flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"draw legend\",\n      \"localized\": \"Legende zeichnen\",\n      \"reload\": \"\",\n      \"hint\": \"Legende zeichnen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dropdown\",\n      \"localized\": \"Dropdown\",\n      \"reload\": \"\",\n      \"hint\": \"Dropdown\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"duration\",\n      \"localized\": \"Dauer\",\n      \"reload\": \"\",\n      \"hint\": \"Dauer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dwpose\",\n      \"localized\": \"dwpose\",\n      \"reload\": \"\",\n      \"hint\": \"dwpose\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic\",\n      \"localized\": \"Dynamisch\",\n      \"reload\": \"\",\n      \"hint\": \"Dynamisch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention\",\n      \"localized\": \"Dynamische Aufmerksamkeit\",\n      \"reload\": \"\",\n      \"hint\": \"Dynamische Aufmerksamkeit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention slicing rate in gb\",\n      \"localized\": \"Rate des dynamischen Attention Slicing in GB\",\n      \"reload\": \"\",\n      \"hint\": \"Rate des dynamischen Attention Slicing in GB\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention trigger rate in gb\",\n      \"localized\": \"Rate des dynamischen Attention Trigger in GB\",\n      \"reload\": \"\",\n      \"hint\": \"Rate des dynamischen Attention Trigger in GB\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edge\",\n      \"localized\": \"Kante\",\n      \"reload\": \"\",\n      \"hint\": \"Kante\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edit start\",\n      \"localized\": \"Bearbeitung starten\",\n      \"reload\": \"\",\n      \"hint\": \"Bearbeitung starten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edit stop\",\n      \"localized\": \"Bearbeitung stoppen\",\n      \"reload\": \"\",\n      \"hint\": \"Bearbeitung stoppen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"embedded metadata\",\n      \"localized\": \"Eingebettete Metadaten\",\n      \"reload\": \"\",\n      \"hint\": \"Eingebettete Metadaten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable embeddings support\",\n      \"localized\": \"Einbettungsunterstützung aktivieren\",\n      \"reload\": \"\",\n      \"hint\": \"Einbettungsunterstützung aktivieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable file wildcards support\",\n      \"localized\": \"Unterstützung für Dateimasken aktivieren\",\n      \"reload\": \"\",\n      \"hint\": \"Unterstützung für Dateimasken aktivieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable freeu\",\n      \"localized\": \"FreeU aktivieren\",\n      \"reload\": \"\",\n      \"hint\": \"FreeU aktivieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable teacache\",\n      \"localized\": \"Teacache aktivieren\",\n      \"reload\": \"\",\n      \"hint\": \"Teacache aktivieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable tonemap\",\n      \"localized\": \"Tonemapping aktivieren\",\n      \"reload\": \"\",\n      \"hint\": \"Tonemapping aktivieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable use of reference models\",\n      \"localized\": \"Verwendung von Referenzmodellen aktivieren\",\n      \"reload\": \"\",\n      \"hint\": \"Verwendung von Referenzmodellen aktivieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enabled\",\n      \"localized\": \"Aktiviert\",\n      \"reload\": \"\",\n      \"hint\": \"Aktiviert\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"encoder\",\n      \"localized\": \"Encoder\",\n      \"reload\": \"\",\n      \"hint\": \"Encoder\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"end\",\n      \"localized\": \"Ende\",\n      \"reload\": \"\",\n      \"hint\": \"Ende\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enhance prompt\",\n      \"localized\": \"Prompt verbessern\",\n      \"reload\": \"\",\n      \"hint\": \"Prompt verbessern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ensemble size\",\n      \"localized\": \"Ensemble-Größe\",\n      \"reload\": \"\",\n      \"hint\": \"Ensemble-Größe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"epsilon\",\n      \"localized\": \"Epsilon\",\n      \"reload\": \"\",\n      \"hint\": \"Epsilon\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"erode\",\n      \"localized\": \"Erodieren\",\n      \"reload\": \"\",\n      \"hint\": \"Erodieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"erode size\",\n      \"localized\": \"Erosionsgröße\",\n      \"reload\": \"\",\n      \"hint\": \"Erosionsgröße\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"eta\",\n      \"localized\": \"Eta\",\n      \"reload\": \"\",\n      \"hint\": \"Eta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler\",\n      \"localized\": \"Euler\",\n      \"reload\": \"\",\n      \"hint\": \"Euler\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler edm\",\n      \"localized\": \"Euler EDM\",\n      \"reload\": \"\",\n      \"hint\": \"Euler EDM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler flowmatch\",\n      \"localized\": \"Euler Flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"Euler Flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler sgm\",\n      \"localized\": \"Euler SGM\",\n      \"reload\": \"\",\n      \"hint\": \"Euler SGM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.cpu\",\n      \"localized\": \"executionprovider.cpu\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.cpu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.cuda\",\n      \"localized\": \"executionprovider.cuda\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.cuda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.directml\",\n      \"localized\": \"executionprovider.directml\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.directml\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.migraphx\",\n      \"localized\": \"executionprovider.migraphx\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.migraphx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.openvino\",\n      \"localized\": \"executionprovider.openvino\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.openvino\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.rocm\",\n      \"localized\": \"executionprovider.rocm\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.rocm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"expandable segments\",\n      \"localized\": \"Erweiterbare Segmente\",\n      \"reload\": \"\",\n      \"hint\": \"Erweiterbare Segmente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"exponential\",\n      \"localized\": \"Exponentiell\",\n      \"reload\": \"\",\n      \"hint\": \"Exponentiell\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"exposure\",\n      \"localized\": \"Belichtung\",\n      \"reload\": \"\",\n      \"hint\": \"Belichtung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"extra noise multiplier for img2img\",\n      \"localized\": \"zusätzlicher Rauschmultiplikator für img2img\",\n      \"reload\": \"\",\n      \"hint\": \"zusätzlicher Rauschmultiplikator für img2img\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"extract lora\",\n      \"localized\": \"Lora extrahieren\",\n      \"reload\": \"\",\n      \"hint\": \"Lora extrahieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"face\",\n      \"localized\": \"Gesicht\",\n      \"reload\": \"\",\n      \"hint\": \"Gesicht\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"face confidence\",\n      \"localized\": \"Gesichts-Konfidenz\",\n      \"reload\": \"\",\n      \"hint\": \"Gesichts-Konfidenz\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"faceid model\",\n      \"localized\": \"FaceID-Modell\",\n      \"reload\": \"\",\n      \"hint\": \"FaceID-Modell\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fall-off exponent (lower=higher detail)\",\n      \"localized\": \"Abfall-Exponent (niedriger=höhere Details)\",\n      \"reload\": \"\",\n      \"hint\": \"Abfall-Exponent (niedriger=höhere Details)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"false\",\n      \"localized\": \"falsch\",\n      \"reload\": \"\",\n      \"hint\": \"falsch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fast\",\n      \"localized\": \"schnell\",\n      \"reload\": \"\",\n      \"hint\": \"schnell\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"file or folder with user-defined styles\",\n      \"localized\": \"Datei oder Ordner mit benutzerdefinierten Stilen\",\n      \"reload\": \"\",\n      \"hint\": \"Datei oder Ordner mit benutzerdefinierten Stilen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"filename\",\n      \"localized\": \"Dateiname\",\n      \"reload\": \"\",\n      \"hint\": \"Dateiname\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"first-block cache enabled\",\n      \"localized\": \"Cache für ersten Block aktiviert\",\n      \"reload\": \"\",\n      \"hint\": \"Cache für ersten Block aktiviert\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fixed unet precision\",\n      \"localized\": \"feste UNet-Präzision\",\n      \"reload\": \"\",\n      \"hint\": \"feste UNet-Präzision\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flash attention\",\n      \"localized\": \"Flash Attention\",\n      \"reload\": \"\",\n      \"hint\": \"Flash Attention\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flavors\",\n      \"localized\": \"Varianten\",\n      \"reload\": \"\",\n      \"hint\": \"Varianten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flow shift\",\n      \"localized\": \"Flussverschiebung\",\n      \"reload\": \"\",\n      \"hint\": \"Flussverschiebung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder\",\n      \"localized\": \"Ordner\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for control generate\",\n      \"localized\": \"Ordner für Kontrollgenerierung\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner für Kontrollgenerierung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for control grids\",\n      \"localized\": \"Ordner für Kontrollgitter\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner für Kontrollgitter\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for disk offload\",\n      \"localized\": \"Ordner für Festplattenauslagerung\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner für Festplattenauslagerung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for huggingface cache\",\n      \"localized\": \"Ordner für Hugging Face Cache\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner für Hugging Face Cache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for image generate\",\n      \"localized\": \"Ordner für Bildgenerierung\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner für Bildgenerierung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for img2img grids\",\n      \"localized\": \"Ordner für Img2Img-Gitter\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner für Img2Img-Gitter\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for init images\",\n      \"localized\": \"Ordner für Initialisierungsbilder\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner für Initialisierungsbilder\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for manually saved images\",\n      \"localized\": \"Ordner für manuell gespeicherte Bilder\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner für manuell gespeicherte Bilder\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for onnx cached models\",\n      \"localized\": \"Ordner für ONNX-Cache-Modelle\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner für ONNX-Cache-Modelle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for onnx conversion\",\n      \"localized\": \"Ordner für ONNX-Konvertierung\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner für ONNX-Konvertierung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for openvino cache\",\n      \"localized\": \"Ordner für OpenVINO Cache\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner für OpenVINO Cache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for processed images\",\n      \"localized\": \"Ordner für verarbeitete Bilder\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner für verarbeitete Bilder\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for text generate\",\n      \"localized\": \"Ordner für Textgenerierung\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner für Textgenerierung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for tunable ops cache\",\n      \"localized\": \"Ordner für abstimmbaren Ops-Cache\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner für abstimmbaren Ops-Cache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for txt2img grids\",\n      \"localized\": \"Ordner für Txt2Img-Gitter\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner für Txt2Img-Gitter\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for videos\",\n      \"localized\": \"Ordner für Videos\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner für Videos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with bsrgan models\",\n      \"localized\": \"Ordner mit BSRGAN-Modellen\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner mit BSRGAN-Modellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with chainner models\",\n      \"localized\": \"Ordner mit Chainner-Modellen\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner mit Chainner-Modellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with clip models\",\n      \"localized\": \"Ordner mit CLIP-Modellen\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner mit CLIP-Modellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with codeformer models\",\n      \"localized\": \"Ordner mit CodeFormer-Modellen\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner mit CodeFormer-Modellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with control models\",\n      \"localized\": \"Ordner mit Kontrollmodellen\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner mit Kontrollmodellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with esrgan models\",\n      \"localized\": \"Ordner mit ESRGAN-Modellen\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner mit ESRGAN-Modellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with gfpgan models\",\n      \"localized\": \"Ordner mit GFPGAN-Modellen\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner mit GFPGAN-Modellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with huggingface models\",\n      \"localized\": \"Ordner mit Hugging Face Modellen\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner mit Hugging Face Modellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with hypernetwork models\",\n      \"localized\": \"Ordner mit Hypernetzwerk-Modellen\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner mit Hypernetzwerk-Modellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with ldsr models\",\n      \"localized\": \"Ordner mit LDSR-Modellen\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner mit LDSR-Modellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with lora network(s)\",\n      \"localized\": \"Ordner mit Lora-Netzwerk(en)\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner mit Lora-Netzwerk(en)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with realesrgan models\",\n      \"localized\": \"Ordner mit Real-ESRGAN-Modellen\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner mit Real-ESRGAN-Modellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with scunet models\",\n      \"localized\": \"Ordner mit SCUNet-Modellen\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner mit SCUNet-Modellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with stable diffusion models\",\n      \"localized\": \"Ordner mit Stable Diffusion Modellen\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner mit Stable Diffusion Modellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with swinir models\",\n      \"localized\": \"Ordner mit SwinIR-Modellen\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner mit SwinIR-Modellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with text encoder files\",\n      \"localized\": \"Ordner mit Text-Encoder-Dateien\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner mit Text-Encoder-Dateien\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with textual inversion embeddings\",\n      \"localized\": \"Ordner mit Text-Inversions-Embeddings\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner mit Text-Inversions-Embeddings\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with unet files\",\n      \"localized\": \"Ordner mit UNet-Dateien\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner mit UNet-Dateien\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with user-defined wildcards\",\n      \"localized\": \"Ordner mit benutzerdefinierten Wildcards\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner mit benutzerdefinierten Wildcards\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with vae files\",\n      \"localized\": \"Ordner mit VAE-Dateien\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner mit VAE-Dateien\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with yolo models\",\n      \"localized\": \"Ordner mit YOLO-Modellen\",\n      \"reload\": \"\",\n      \"hint\": \"Ordner mit YOLO-Modellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font color\",\n      \"localized\": \"Schriftfarbe\",\n      \"reload\": \"\",\n      \"hint\": \"Schriftfarbe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font file\",\n      \"localized\": \"Schriftdatei\",\n      \"reload\": \"\",\n      \"hint\": \"Schriftdatei\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font size\",\n      \"localized\": \"Schriftgröße\",\n      \"reload\": \"\",\n      \"hint\": \"Schriftgröße\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"force model eval\",\n      \"localized\": \"Modellauswertung erzwingen\",\n      \"reload\": \"\",\n      \"hint\": \"Modellauswertung erzwingen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"foreground threshold\",\n      \"localized\": \"Vordergrundschwellenwert\",\n      \"reload\": \"\",\n      \"hint\": \"Vordergrundschwellenwert\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fp4\",\n      \"localized\": \"FP4\",\n      \"reload\": \"\",\n      \"hint\": \"FP4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"frame change sensitivity\",\n      \"localized\": \"Bildwechsel-Empfindlichkeit\",\n      \"reload\": \"\",\n      \"hint\": \"Bildwechsel-Empfindlichkeit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"frames\",\n      \"localized\": \"Bilder\",\n      \"reload\": \"\",\n      \"hint\": \"Bilder\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeinit\",\n      \"localized\": \"FreeInit\",\n      \"reload\": \"\",\n      \"hint\": \"FreeInit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeu enabled\",\n      \"localized\": \"FreeU aktiviert\",\n      \"reload\": \"\",\n      \"hint\": \"FreeU aktiviert\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeu preset\",\n      \"localized\": \"FreeU-Voreinstellung\",\n      \"reload\": \"\",\n      \"hint\": \"FreeU-Voreinstellung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"full vae\",\n      \"localized\": \"volles VAE\",\n      \"reload\": \"\",\n      \"hint\": \"volles VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"full-depth cudnn benchmark\",\n      \"localized\": \"CuDNN-Benchmark mit voller Tiefe\",\n      \"reload\": \"\",\n      \"hint\": \"CuDNN-Benchmark mit voller Tiefe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fuse strength\",\n      \"localized\": \"Fusionsstärke\",\n      \"reload\": \"\",\n      \"hint\": \"Fusionsstärke\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fused projections\",\n      \"localized\": \"Fusionierte Projektionen\",\n      \"reload\": \"\",\n      \"hint\": \"Fusionierte Projektionen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gamma\",\n      \"localized\": \"Gamma\",\n      \"reload\": \"\",\n      \"hint\": \"Gamma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gamma corrected\",\n      \"localized\": \"Gamma-korrigiert\",\n      \"reload\": \"\",\n      \"hint\": \"Gamma-korrigiert\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gate step\",\n      \"localized\": \"Gate-Schritt\",\n      \"reload\": \"\",\n      \"hint\": \"Gate-Schritt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gc threshold\",\n      \"localized\": \"GC-Schwellenwert\",\n      \"reload\": \"\",\n      \"hint\": \"GC-Schwellenwert\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"get changelog\",\n      \"localized\": \"Änderungsprotokoll abrufen\",\n      \"reload\": \"\",\n      \"hint\": \"Änderungsprotokoll abrufen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gpu\",\n      \"localized\": \"GPU\",\n      \"reload\": \"\",\n      \"hint\": \"GPU\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gradient\",\n      \"localized\": \"Gradient\",\n      \"reload\": \"\",\n      \"hint\": \"Gradient\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid background color\",\n      \"localized\": \"Gitter-Hintergrundfarbe\",\n      \"reload\": \"\",\n      \"hint\": \"Gitter-Hintergrundfarbe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid margins\",\n      \"localized\": \"Gitterränder\",\n      \"reload\": \"\",\n      \"hint\": \"Gitterränder\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid sections:\",\n      \"localized\": \"Gitterabschnitte:\",\n      \"reload\": \"\",\n      \"hint\": \"Gitterabschnitte:\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"group size\",\n      \"localized\": \"Gruppengröße\",\n      \"reload\": \"\",\n      \"hint\": \"Gruppengröße\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance\",\n      \"localized\": \"Guidance\",\n      \"reload\": \"\",\n      \"hint\": \"Guidance\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance start\",\n      \"localized\": \"Guidance-Start\",\n      \"reload\": \"\",\n      \"hint\": \"Guidance-Start\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance stop\",\n      \"localized\": \"Guidance-Stopp\",\n      \"reload\": \"\",\n      \"hint\": \"Guidance-Stopp\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance strength\",\n      \"localized\": \"Guidance-Stärke\",\n      \"reload\": \"\",\n      \"hint\": \"Guidance-Stärke\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hands\",\n      \"localized\": \"Hände\",\n      \"reload\": \"\",\n      \"hint\": \"Hände\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hdr range\",\n      \"localized\": \"HDR-Bereich\",\n      \"reload\": \"\",\n      \"hint\": \"HDR-Bereich\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hed\",\n      \"localized\": \"HED\",\n      \"reload\": \"\",\n      \"hint\": \"HED\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height  after\",\n      \"localized\": \"Höhe danach\",\n      \"reload\": \"\",\n      \"hint\": \"Höhe danach\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height  before\",\n      \"localized\": \"Höhe davor\",\n      \"reload\": \"\",\n      \"hint\": \"Höhe davor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height  mask\",\n      \"localized\": \"Höhenmaske\",\n      \"reload\": \"\",\n      \"hint\": \"Höhenmaske\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"heun\",\n      \"localized\": \"Heun\",\n      \"reload\": \"\",\n      \"hint\": \"Heun\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"heun flowmatch\",\n      \"localized\": \"Heun Flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"Heun Flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hidet\",\n      \"localized\": \"Hidet\",\n      \"reload\": \"\",\n      \"hint\": \"Hidet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"high threshold\",\n      \"localized\": \"hoher Schwellenwert\",\n      \"reload\": \"\",\n      \"hint\": \"hoher Schwellenwert\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hires pass only\",\n      \"localized\": \"nur Hires-Durchlauf\",\n      \"reload\": \"\",\n      \"hint\": \"nur Hires-Durchlauf\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hq init latents\",\n      \"localized\": \"HQ Init Latents\",\n      \"reload\": \"\",\n      \"hint\": \"HQ Init Latents\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hue\",\n      \"localized\": \"Farbton\",\n      \"reload\": \"\",\n      \"hint\": \"Farbton\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"huggingface mirror\",\n      \"localized\": \"Hugging Face Spiegel\",\n      \"reload\": \"\",\n      \"hint\": \"Hugging Face Spiegel\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"huggingface token\",\n      \"localized\": \"Hugging Face Token\",\n      \"reload\": \"\",\n      \"hint\": \"Hugging Face Token\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hunyuan\",\n      \"localized\": \"Hunyuan\",\n      \"reload\": \"\",\n      \"hint\": \"Hunyuan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"il\",\n      \"localized\": \"il\",\n      \"reload\": \"\",\n      \"hint\": \"il\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image height\",\n      \"localized\": \"Bildhöhe\",\n      \"reload\": \"\",\n      \"hint\": \"Bildhöhe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image quality\",\n      \"localized\": \"Bildqualität\",\n      \"reload\": \"\",\n      \"hint\": \"Bildqualität\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image transparent color fill\",\n      \"localized\": \"Füllung mit transparenter Bildfarbe\",\n      \"reload\": \"\",\n      \"hint\": \"Füllung mit transparenter Bildfarbe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image watermark file\",\n      \"localized\": \"Bildwasserzeichendatei\",\n      \"reload\": \"\",\n      \"hint\": \"Bildwasserzeichendatei\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image watermark position\",\n      \"localized\": \"Bildwasserzeichenposition\",\n      \"reload\": \"\",\n      \"hint\": \"Bildwasserzeichenposition\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image width\",\n      \"localized\": \"Bildbreite\",\n      \"reload\": \"\",\n      \"hint\": \"Bildbreite\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include images\",\n      \"localized\": \"Bilder einschließen\",\n      \"reload\": \"\",\n      \"hint\": \"Bilder einschließen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include main grid\",\n      \"localized\": \"Hauptgitter einschließen\",\n      \"reload\": \"\",\n      \"hint\": \"Hauptgitter einschließen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include mask in outputs\",\n      \"localized\": \"Maske in Ausgaben einschließen\",\n      \"reload\": \"\",\n      \"hint\": \"Maske in Ausgaben einschließen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include original image\",\n      \"localized\": \"Originalbild einschließen\",\n      \"reload\": \"\",\n      \"hint\": \"Originalbild einschließen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include scores in results when available\",\n      \"localized\": \"Ergebnisse mit Bewertungen anzeigen, wenn verfügbar\",\n      \"reload\": \"\",\n      \"hint\": \"Ergebnisse mit Bewertungen anzeigen, wenn verfügbar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include sub grids\",\n      \"localized\": \"Untergitter einschließen\",\n      \"reload\": \"\",\n      \"hint\": \"Untergitter einschließen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inductor\",\n      \"localized\": \"Induktor\",\n      \"reload\": \"\",\n      \"hint\": \"Induktor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"info\",\n      \"localized\": \"Info\",\n      \"reload\": \"\",\n      \"hint\": \"Info\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"info object\",\n      \"localized\": \"Info-Objekt\",\n      \"reload\": \"\",\n      \"hint\": \"Info-Objekt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpaint\",\n      \"localized\": \"Inpaint\",\n      \"reload\": \"\",\n      \"hint\": \"Inpaint\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpaint masked only\",\n      \"localized\": \"Nur maskierten Bereich wiederherstellen\",\n      \"reload\": \"\",\n      \"hint\": \"Nur maskierten Bereich wiederherstellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpainting include greyscale mask in results\",\n      \"localized\": \"Inpainting: Graustufenmaske in Ergebnissen einschließen\",\n      \"reload\": \"\",\n      \"hint\": \"Inpainting: Graustufenmaske in Ergebnissen einschließen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpainting include masked composite in results\",\n      \"localized\": \"Inpainting: Maskierte Komposition in Ergebnissen einschließen\",\n      \"reload\": \"\",\n      \"hint\": \"Inpainting: Maskierte Komposition in Ergebnissen einschließen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"input model\",\n      \"localized\": \"Eingabemodell\",\n      \"reload\": \"\",\n      \"hint\": \"Eingabemodell\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"intermediates\",\n      \"localized\": \"Zwischenergebnisse\",\n      \"reload\": \"\",\n      \"hint\": \"Zwischenergebnisse\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"interpolate frames\",\n      \"localized\": \"Bilder interpolieren\",\n      \"reload\": \"\",\n      \"hint\": \"Bilder interpolieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"interpolation method\",\n      \"localized\": \"Interpolationsmethode\",\n      \"reload\": \"\",\n      \"hint\": \"Interpolationsmethode\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invert\",\n      \"localized\": \"Invertieren\",\n      \"reload\": \"\",\n      \"hint\": \"Invertieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invert mask\",\n      \"localized\": \"Maske invertieren\",\n      \"reload\": \"\",\n      \"hint\": \"Maske invertieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iou\",\n      \"localized\": \"IoU\",\n      \"reload\": \"\",\n      \"hint\": \"IoU\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ipex\",\n      \"localized\": \"IPEX\",\n      \"reload\": \"\",\n      \"hint\": \"IPEX\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ipndm\",\n      \"localized\": \"IPNDM\",\n      \"reload\": \"\",\n      \"hint\": \"IPNDM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"item edge blur\",\n      \"localized\": \"Kantenunschärfe des Elements\",\n      \"reload\": \"\",\n      \"hint\": \"Kantenunschärfe des Elements\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"item padding\",\n      \"localized\": \"Elementabstand\",\n      \"reload\": \"\",\n      \"hint\": \"Elementabstand\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iterate seed per line\",\n      \"localized\": \"Seed pro Zeile iterieren\",\n      \"reload\": \"\",\n      \"hint\": \"Seed pro Zeile iterieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iterations\",\n      \"localized\": \"Iterationen\",\n      \"reload\": \"\",\n      \"hint\": \"Iterationen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"karras\",\n      \"localized\": \"Karras\",\n      \"reload\": \"\",\n      \"hint\": \"Karras\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"kdpm2\",\n      \"localized\": \"KDPM2\",\n      \"reload\": \"\",\n      \"hint\": \"KDPM2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"kdpm2 a\",\n      \"localized\": \"KDPM2 A\",\n      \"reload\": \"\",\n      \"hint\": \"KDPM2 A\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"keep incomplete images\",\n      \"localized\": \"Unvollständige Bilder behalten\",\n      \"reload\": \"\",\n      \"hint\": \"Unvollständige Bilder behalten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"large\",\n      \"localized\": \"Groß\",\n      \"reload\": \"\",\n      \"hint\": \"Groß\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"latent history size\",\n      \"localized\": \"Latente Historie-Größe\",\n      \"reload\": \"\",\n      \"hint\": \"Latente Historie-Größe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"latent mode\",\n      \"localized\": \"Latenzmodus\",\n      \"reload\": \"\",\n      \"hint\": \"Latenzmodus\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layer scales\",\n      \"localized\": \"Schichtskalen\",\n      \"reload\": \"\",\n      \"hint\": \"Schichtskalen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layerwise casting storage\",\n      \"localized\": \"Schichtweises Casting-Speicher\",\n      \"reload\": \"\",\n      \"hint\": \"Schichtweises Casting-Speicher\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layerwise non-blocking operations\",\n      \"localized\": \"Schichtweise nicht-blockierende Operationen\",\n      \"reload\": \"\",\n      \"hint\": \"Schichtweise nicht-blockierende Operationen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lcm\",\n      \"localized\": \"LCM\",\n      \"reload\": \"\",\n      \"hint\": \"LCM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ldsr processing steps\",\n      \"localized\": \"LDSR Verarbeitungsschritte\",\n      \"reload\": \"\",\n      \"hint\": \"LDSR Verarbeitungsschritte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"left\",\n      \"localized\": \"Links\",\n      \"reload\": \"\",\n      \"hint\": \"Links\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"legend\",\n      \"localized\": \"Legende\",\n      \"reload\": \"\",\n      \"hint\": \"Legende\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"length\",\n      \"localized\": \"Länge\",\n      \"reload\": \"\",\n      \"hint\": \"Länge\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"leres depth\",\n      \"localized\": \"LeReS Tiefe\",\n      \"reload\": \"\",\n      \"hint\": \"LeReS Tiefe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"level\",\n      \"localized\": \"Stufe\",\n      \"reload\": \"\",\n      \"hint\": \"Stufe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"libs\",\n      \"localized\": \"Bibliotheken\",\n      \"reload\": \"\",\n      \"hint\": \"Bibliotheken\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"light\",\n      \"localized\": \"Licht\",\n      \"reload\": \"\",\n      \"hint\": \"Licht\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lineart\",\n      \"localized\": \"Linienzeichnung\",\n      \"reload\": \"\",\n      \"hint\": \"Linienzeichnung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"list\",\n      \"localized\": \"Liste\",\n      \"reload\": \"\",\n      \"hint\": \"Liste\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"list model details\",\n      \"localized\": \"Modelldetails auflisten\",\n      \"reload\": \"\",\n      \"hint\": \"Modelldetails auflisten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lite\",\n      \"localized\": \"Leicht\",\n      \"reload\": \"\",\n      \"hint\": \"Leicht\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"live update\",\n      \"localized\": \"Live-Update\",\n      \"reload\": \"\",\n      \"hint\": \"Live-Update\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lmsd\",\n      \"localized\": \"LMSD\",\n      \"reload\": \"\",\n      \"hint\": \"LMSD\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"load custom diffusers pipeline\",\n      \"localized\": \"Benutzerdefinierte Diffusers-Pipeline laden\",\n      \"reload\": \"\",\n      \"hint\": \"Benutzerdefinierte Diffusers-Pipeline laden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"load model directly to gpu\",\n      \"localized\": \"Modell direkt auf GPU laden\",\n      \"reload\": \"\",\n      \"hint\": \"Modell direkt auf GPU laden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"loaded lora\",\n      \"localized\": \"Geladene LoRA\",\n      \"reload\": \"\",\n      \"hint\": \"Geladene LoRA\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"logsnr\",\n      \"localized\": \"LogSNR\",\n      \"reload\": \"\",\n      \"hint\": \"LogSNR\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"loop\",\n      \"localized\": \"Schleife\",\n      \"reload\": \"\",\n      \"hint\": \"Schleife\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora add hash info to metadata\",\n      \"localized\": \"LoRA: Hash-Info zu Metadaten hinzufügen\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA: Hash-Info zu Metadaten hinzufügen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora auto-apply tags\",\n      \"localized\": \"LoRA: Tags automatisch anwenden\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA: Tags automatisch anwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora load using diffusers method for selected models\",\n      \"localized\": \"LoRA: Laden mit Diffusers-Methode für ausgewählte Modelle\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA: Laden mit Diffusers-Methode für ausgewählte Modelle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora load using legacy method\",\n      \"localized\": \"LoRA: Laden mit älterer Methode\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA: Laden mit älterer Methode\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora target filename\",\n      \"localized\": \"LoRA: Ziel-Dateiname\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA: Ziel-Dateiname\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"low order\",\n      \"localized\": \"Niedrige Ordnung\",\n      \"reload\": \"\",\n      \"hint\": \"Niedrige Ordnung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"low threshold\",\n      \"localized\": \"Niedriger Schwellenwert\",\n      \"reload\": \"\",\n      \"hint\": \"Niedriger Schwellenwert\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ltx model\",\n      \"localized\": \"LTX Modell\",\n      \"reload\": \"\",\n      \"hint\": \"LTX Modell\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lumina: use mask in transformers\",\n      \"localized\": \"Lumina: Maske in Transformatoren verwenden\",\n      \"reload\": \"\",\n      \"hint\": \"Lumina: Maske in Transformatoren verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"manual block merge\",\n      \"localized\": \"Manuelles Block-Merge\",\n      \"reload\": \"\",\n      \"hint\": \"Manuelles Block-Merge\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"marigold depth\",\n      \"localized\": \"Marigold-Tiefe\",\n      \"reload\": \"\",\n      \"hint\": \"Marigold-Tiefe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask dropout\",\n      \"localized\": \"Masken-Dropout\",\n      \"reload\": \"\",\n      \"hint\": \"Masken-Dropout\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask invert\",\n      \"localized\": \"Maske invertieren\",\n      \"reload\": \"\",\n      \"hint\": \"Maske invertieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask only\",\n      \"localized\": \"Nur Maske\",\n      \"reload\": \"\",\n      \"hint\": \"Nur Maske\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask strength\",\n      \"localized\": \"Maskenstärke\",\n      \"reload\": \"\",\n      \"hint\": \"Maskenstärke\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"masked\",\n      \"localized\": \"Maskiert\",\n      \"reload\": \"\",\n      \"hint\": \"Maskiert\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"math attention\",\n      \"localized\": \"Mathematische Aufmerksamkeit\",\n      \"reload\": \"\",\n      \"hint\": \"Mathematische Aufmerksamkeit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max faces\",\n      \"localized\": \"Max. Gesichter\",\n      \"reload\": \"\",\n      \"hint\": \"Max. Gesichter\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max flavors\",\n      \"localized\": \"Max. Varianten\",\n      \"reload\": \"\",\n      \"hint\": \"Max. Varianten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max guidance\",\n      \"localized\": \"Maximale Führung\",\n      \"reload\": \"\",\n      \"hint\": \"Maximale Führung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max length\",\n      \"localized\": \"Max. Länge\",\n      \"reload\": \"\",\n      \"hint\": \"Max. Länge\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max object size\",\n      \"localized\": \"Max. Objektgröße\",\n      \"reload\": \"\",\n      \"hint\": \"Max. Objektgröße\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max range\",\n      \"localized\": \"Max. Bereich\",\n      \"reload\": \"\",\n      \"hint\": \"Max. Bereich\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max tokens\",\n      \"localized\": \"Max. Token\",\n      \"reload\": \"\",\n      \"hint\": \"Max. Token\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max words\",\n      \"localized\": \"Max. Wörter\",\n      \"reload\": \"\",\n      \"hint\": \"Max. Wörter\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max-autotune\",\n      \"localized\": \"Max-Autotune\",\n      \"reload\": \"\",\n      \"hint\": \"Max-Autotune\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max-autotune-no-cudagraphs\",\n      \"localized\": \"Max-Autotune ohne CUDA-Graphen\",\n      \"reload\": \"\",\n      \"hint\": \"Max-Autotune ohne CUDA-Graphen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum image size (mp)\",\n      \"localized\": \"Maximale Bildgröße (MP)\",\n      \"reload\": \"\",\n      \"hint\": \"Maximale Bildgröße (MP)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum number of units\",\n      \"localized\": \"Maximale Anzahl von Einheiten\",\n      \"reload\": \"\",\n      \"hint\": \"Maximale Anzahl von Einheiten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum rank\",\n      \"localized\": \"Maximaler Rang\",\n      \"reload\": \"\",\n      \"hint\": \"Maximaler Rang\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mediapipe face\",\n      \"localized\": \"MediaPipe Gesicht\",\n      \"reload\": \"\",\n      \"hint\": \"MediaPipe Gesicht\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"medium\",\n      \"localized\": \"Mittel\",\n      \"reload\": \"\",\n      \"hint\": \"Mittel\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mediums\",\n      \"localized\": \"Medien\",\n      \"reload\": \"\",\n      \"hint\": \"Medien\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory\",\n      \"localized\": \"Speicher\",\n      \"reload\": \"\",\n      \"hint\": \"Speicher\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory attention\",\n      \"localized\": \"Speicher-Aufmerksamkeit\",\n      \"reload\": \"\",\n      \"hint\": \"Speicher-Aufmerksamkeit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory limit\",\n      \"localized\": \"Speicherlimit\",\n      \"reload\": \"\",\n      \"hint\": \"Speicherlimit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory optimization\",\n      \"localized\": \"Speicheroptimierung\",\n      \"reload\": \"\",\n      \"hint\": \"Speicheroptimierung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"merge alpha\",\n      \"localized\": \"Alpha zusammenführen\",\n      \"reload\": \"\",\n      \"hint\": \"Alpha zusammenführen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method\",\n      \"localized\": \"Methode\",\n      \"reload\": \"\",\n      \"hint\": \"Methode\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method after\",\n      \"localized\": \"Methode danach\",\n      \"reload\": \"\",\n      \"hint\": \"Methode danach\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method before\",\n      \"localized\": \"Methode davor\",\n      \"reload\": \"\",\n      \"hint\": \"Methode davor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method mask\",\n      \"localized\": \"Methodenmaske\",\n      \"reload\": \"\",\n      \"hint\": \"Methodenmaske\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"midas depth\",\n      \"localized\": \"Midas Tiefe\",\n      \"reload\": \"\",\n      \"hint\": \"Midas Tiefe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"migraphx\",\n      \"localized\": \"migraphx\",\n      \"reload\": \"\",\n      \"hint\": \"migraphx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min flavors\",\n      \"localized\": \"Minimale Variationen\",\n      \"reload\": \"\",\n      \"hint\": \"Minimale Variationen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min guidance\",\n      \"localized\": \"Minimale Führung\",\n      \"reload\": \"\",\n      \"hint\": \"Minimale Führung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min length\",\n      \"localized\": \"Minimale Länge\",\n      \"reload\": \"\",\n      \"hint\": \"Minimale Länge\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min object size\",\n      \"localized\": \"Minimale Objektgröße\",\n      \"reload\": \"\",\n      \"hint\": \"Minimale Objektgröße\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mine\",\n      \"localized\": \"mine\",\n      \"reload\": \"\",\n      \"hint\": \"mine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mlsd\",\n      \"localized\": \"mlsd\",\n      \"reload\": \"\",\n      \"hint\": \"mlsd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mm\",\n      \"localized\": \"mm\",\n      \"reload\": \"\",\n      \"hint\": \"mm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode\",\n      \"localized\": \"Modus\",\n      \"reload\": \"\",\n      \"hint\": \"Modus\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode after\",\n      \"localized\": \"Modus danach\",\n      \"reload\": \"\",\n      \"hint\": \"Modus danach\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode before\",\n      \"localized\": \"Modus davor\",\n      \"reload\": \"\",\n      \"hint\": \"Modus davor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode mask\",\n      \"localized\": \"Modusmaske\",\n      \"reload\": \"\",\n      \"hint\": \"Modusmaske\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode x-axis\",\n      \"localized\": \"Modus X-Achse\",\n      \"reload\": \"\",\n      \"hint\": \"Modus X-Achse\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode y-axis\",\n      \"localized\": \"Modus Y-Achse\",\n      \"reload\": \"\",\n      \"hint\": \"Modus Y-Achse\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model auto-download on demand\",\n      \"localized\": \"Modell Auto-Download bei Bedarf\",\n      \"reload\": \"\",\n      \"hint\": \"Modell Auto-Download bei Bedarf\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model autoload on start\",\n      \"localized\": \"Modell automatisch beim Start laden\",\n      \"reload\": \"\",\n      \"hint\": \"Modell automatisch beim Start laden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model compile fullgraph\",\n      \"localized\": \"Modell kompilieren Vollgraph\",\n      \"reload\": \"\",\n      \"hint\": \"Modell kompilieren Vollgraph\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model compile suppress errors\",\n      \"localized\": \"Modell kompilieren Fehler unterdrücken\",\n      \"reload\": \"\",\n      \"hint\": \"Modell kompilieren Fehler unterdrücken\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model compile verbose mode\",\n      \"localized\": \"Modell kompilieren ausführlicher Modus\",\n      \"reload\": \"\",\n      \"hint\": \"Modell kompilieren ausführlicher Modus\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model info\",\n      \"localized\": \"Modell-Informationen\",\n      \"reload\": \"\",\n      \"hint\": \"Modell-Informationen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model metadata\",\n      \"localized\": \"Modell-Metadaten\",\n      \"reload\": \"\",\n      \"hint\": \"Modell-Metadaten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model name\",\n      \"localized\": \"Modellname\",\n      \"reload\": \"\",\n      \"hint\": \"Modellname\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model precision\",\n      \"localized\": \"Modellpräzision\",\n      \"reload\": \"\",\n      \"hint\": \"Modellpräzision\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model type\",\n      \"localized\": \"Modelltyp\",\n      \"reload\": \"\",\n      \"hint\": \"Modelltyp\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model url\",\n      \"localized\": \"Modell-URL\",\n      \"reload\": \"\",\n      \"hint\": \"Modell-URL\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"modern\",\n      \"localized\": \"modern\",\n      \"reload\": \"\",\n      \"hint\": \"modern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"momentum\",\n      \"localized\": \"Momentum\",\n      \"reload\": \"\",\n      \"hint\": \"Momentum\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"motion level\",\n      \"localized\": \"Bewegungslevel\",\n      \"reload\": \"\",\n      \"hint\": \"Bewegungslevel\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mount url subpath\",\n      \"localized\": \"URL-Unterpfad mounten\",\n      \"reload\": \"\",\n      \"hint\": \"URL-Unterpfad mounten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move base model to cpu when using refiner\",\n      \"localized\": \"Basismodell auf CPU verschieben, wenn Refiner verwendet wird\",\n      \"reload\": \"\",\n      \"hint\": \"Basismodell auf CPU verschieben, wenn Refiner verwendet wird\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move base model to cpu when using vae\",\n      \"localized\": \"Basismodell auf CPU verschieben, wenn VAE verwendet wird\",\n      \"reload\": \"\",\n      \"hint\": \"Basismodell auf CPU verschieben, wenn VAE verwendet wird\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move detailer model to cpu when complete\",\n      \"localized\": \"Detailer-Modell nach Abschluss auf CPU verschieben\",\n      \"reload\": \"\",\n      \"hint\": \"Detailer-Modell nach Abschluss auf CPU verschieben\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move refiner model to cpu when not in use\",\n      \"localized\": \"Refiner-Modell auf CPU verschieben, wenn nicht in Gebrauch\",\n      \"reload\": \"\",\n      \"hint\": \"Refiner-Modell auf CPU verschieben, wenn nicht in Gebrauch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"movements\",\n      \"localized\": \"Bewegungen\",\n      \"reload\": \"\",\n      \"hint\": \"Bewegungen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"multi decoder\",\n      \"localized\": \"Multi-Decoder\",\n      \"reload\": \"\",\n      \"hint\": \"Multi-Decoder\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"multistep restore\",\n      \"localized\": \"Mehrstufige Wiederherstellung\",\n      \"reload\": \"\",\n      \"hint\": \"Mehrstufige Wiederherstellung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"native\",\n      \"localized\": \"nativ\",\n      \"reload\": \"\",\n      \"hint\": \"nativ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"near threshold\",\n      \"localized\": \"Nahe Schwelle\",\n      \"reload\": \"\",\n      \"hint\": \"Nahe Schwelle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"negative\",\n      \"localized\": \"negativ\",\n      \"reload\": \"\",\n      \"hint\": \"negativ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"network negative prompt\",\n      \"localized\": \"Netzwerk negativer Prompt\",\n      \"reload\": \"\",\n      \"hint\": \"Netzwerk negativer Prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"network parameters\",\n      \"localized\": \"Netzwerkparameter\",\n      \"reload\": \"\",\n      \"hint\": \"Netzwerkparameter\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"network prompt\",\n      \"localized\": \"Netzwerk-Prompt\",\n      \"reload\": \"\",\n      \"hint\": \"Netzwerk-Prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"new model name\",\n      \"localized\": \"Neuer Modellname\",\n      \"reload\": \"\",\n      \"hint\": \"Neuer Modellname\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"nf4\",\n      \"localized\": \"nf4\",\n      \"reload\": \"\",\n      \"hint\": \"nf4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"nms\",\n      \"localized\": \"nms\",\n      \"reload\": \"\",\n      \"hint\": \"nms\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise\",\n      \"localized\": \"Rauschen\",\n      \"reload\": \"\",\n      \"hint\": \"Rauschen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise multiplier (eta)\",\n      \"localized\": \"Rausch-Multiplikator (Eta)\",\n      \"reload\": \"\",\n      \"hint\": \"Rausch-Multiplikator (Eta)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise multiplier for image processing\",\n      \"localized\": \"Rausch-Multiplikator für Bildverarbeitung\",\n      \"reload\": \"\",\n      \"hint\": \"Rausch-Multiplikator für Bildverarbeitung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise seed delta (eta)\",\n      \"localized\": \"Rausch-Seed-Delta (Eta)\",\n      \"reload\": \"\",\n      \"hint\": \"Rausch-Seed-Delta (Eta)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise strength\",\n      \"localized\": \"Rauschstärke\",\n      \"reload\": \"\",\n      \"hint\": \"Rauschstärke\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"none\",\n      \"localized\": \"Keine\",\n      \"reload\": \"\",\n      \"hint\": \"Keine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"note\",\n      \"localized\": \"Hinweis\",\n      \"reload\": \"\",\n      \"hint\": \"Hinweis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"nothing\",\n      \"localized\": \"Nichts\",\n      \"reload\": \"\",\n      \"hint\": \"Nichts\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"num beams\",\n      \"localized\": \"Anzahl Beams\",\n      \"reload\": \"\",\n      \"hint\": \"Anzahl Beams\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"number\",\n      \"localized\": \"Nummer\",\n      \"reload\": \"\",\n      \"hint\": \"Nummer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"numbered filenames\",\n      \"localized\": \"Nummerierte Dateinamen\",\n      \"reload\": \"\",\n      \"hint\": \"Nummerierte Dateinamen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"offload\",\n      \"localized\": \"Auslagern\",\n      \"reload\": \"\",\n      \"hint\": \"Auslagern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"offload face module\",\n      \"localized\": \"Gesichtsmodul auslagern\",\n      \"reload\": \"\",\n      \"hint\": \"Gesichtsmodul auslagern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"offload models\",\n      \"localized\": \"Modelle auslagern\",\n      \"reload\": \"\",\n      \"hint\": \"Modelle auslagern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"olive-ai\",\n      \"localized\": \"olive-ai\",\n      \"reload\": \"\",\n      \"hint\": \"olive-ai\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"onediff\",\n      \"localized\": \"onediff\",\n      \"reload\": \"\",\n      \"hint\": \"onediff\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"onnx\",\n      \"localized\": \"onnx\",\n      \"reload\": \"\",\n      \"hint\": \"onnx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openbody\",\n      \"localized\": \"openbody\",\n      \"reload\": \"\",\n      \"hint\": \"openbody\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openclip\",\n      \"localized\": \"openclip\",\n      \"reload\": \"\",\n      \"hint\": \"openclip\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino disable memory cleanup after compile\",\n      \"localized\": \"OpenVINO Speicherbereinigung nach Kompilierung deaktivieren\",\n      \"reload\": \"\",\n      \"hint\": \"OpenVINO Speicherbereinigung nach Kompilierung deaktivieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino disable model caching\",\n      \"localized\": \"OpenVINO Modell-Caching deaktivieren\",\n      \"reload\": \"\",\n      \"hint\": \"OpenVINO Modell-Caching deaktivieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino mode\",\n      \"localized\": \"OpenVINO Modus\",\n      \"reload\": \"\",\n      \"hint\": \"OpenVINO Modus\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino_fx\",\n      \"localized\": \"openvino_fx\",\n      \"reload\": \"\",\n      \"hint\": \"openvino_fx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"optional image description\",\n      \"localized\": \"Optionale Bildbeschreibung\",\n      \"reload\": \"\",\n      \"hint\": \"Optionale Bildbeschreibung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"optional init image or video\",\n      \"localized\": \"Optionales Initialisierungsbild oder -video\",\n      \"reload\": \"\",\n      \"hint\": \"Optionales Initialisierungsbild oder -video\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"order\",\n      \"localized\": \"Reihenfolge\",\n      \"reload\": \"\",\n      \"hint\": \"Reihenfolge\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ortho\",\n      \"localized\": \"ortho\",\n      \"reload\": \"\",\n      \"hint\": \"ortho\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"outpaint\",\n      \"localized\": \"Outpaint\",\n      \"reload\": \"\",\n      \"hint\": \"Outpaint\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"output model\",\n      \"localized\": \"Ausgabemodell\",\n      \"reload\": \"\",\n      \"hint\": \"Ausgabemodell\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override resolution\",\n      \"localized\": \"Auflösung überschreiben\",\n      \"reload\": \"\",\n      \"hint\": \"Auflösung überschreiben\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override sampler\",\n      \"localized\": \"Sampler überschreiben\",\n      \"reload\": \"\",\n      \"hint\": \"Sampler überschreiben\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override scheduler\",\n      \"localized\": \"Scheduler überschreiben\",\n      \"reload\": \"\",\n      \"hint\": \"Scheduler überschreiben\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override steps\",\n      \"localized\": \"Schritte überschreiben\",\n      \"reload\": \"\",\n      \"hint\": \"Schritte überschreiben\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override t1 ratio\",\n      \"localized\": \"T1-Verhältnis überschreiben\",\n      \"reload\": \"\",\n      \"hint\": \"T1-Verhältnis überschreiben\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override t2 ratio\",\n      \"localized\": \"T2-Verhältnis überschreiben\",\n      \"reload\": \"\",\n      \"hint\": \"T2-Verhältnis überschreiben\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"overwrite existing file\",\n      \"localized\": \"Existierende Datei überschreiben\",\n      \"reload\": \"\",\n      \"hint\": \"Existierende Datei überschreiben\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"overwrite model\",\n      \"localized\": \"Modell überschreiben\",\n      \"reload\": \"\",\n      \"hint\": \"Modell überschreiben\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pad frames\",\n      \"localized\": \"Frames auffüllen\",\n      \"reload\": \"\",\n      \"hint\": \"Frames auffüllen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"padding\",\n      \"localized\": \"Auffüllung\",\n      \"reload\": \"\",\n      \"hint\": \"Auffüllung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"parallel process images in batch\",\n      \"localized\": \"Bilder im Batch parallel verarbeiten\",\n      \"reload\": \"\",\n      \"hint\": \"Bilder im Batch parallel verarbeiten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"parameter free\",\n      \"localized\": \"Parameterfrei\",\n      \"reload\": \"\",\n      \"hint\": \"Parameterfrei\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"path to model file\",\n      \"localized\": \"Pfad zur Modelldatei\",\n      \"reload\": \"\",\n      \"hint\": \"Pfad zur Modelldatei\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"path to notification sound\",\n      \"localized\": \"Pfad zum Benachrichtigungston\",\n      \"reload\": \"\",\n      \"hint\": \"Pfad zum Benachrichtigungston\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"peft\",\n      \"localized\": \"peft\",\n      \"reload\": \"\",\n      \"hint\": \"peft\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"penalty\",\n      \"localized\": \"Strafe\",\n      \"reload\": \"\",\n      \"hint\": \"Strafe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perflow\",\n      \"localized\": \"perflow\",\n      \"reload\": \"\",\n      \"hint\": \"perflow\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perform injection\",\n      \"localized\": \"Injektion durchführen\",\n      \"reload\": \"\",\n      \"hint\": \"Injektion durchführen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perform sdsa\",\n      \"localized\": \"SDSA durchführen\",\n      \"reload\": \"\",\n      \"hint\": \"SDSA durchführen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perform warmup\",\n      \"localized\": \"Warmup durchführen\",\n      \"reload\": \"\",\n      \"hint\": \"Warmup durchführen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"performance\",\n      \"localized\": \"Leistung\",\n      \"reload\": \"\",\n      \"hint\": \"Leistung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"photomaker model\",\n      \"localized\": \"Photomaker-Modell\",\n      \"reload\": \"\",\n      \"hint\": \"Photomaker-Modell\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pidinet\",\n      \"localized\": \"pidinet\",\n      \"reload\": \"\",\n      \"hint\": \"pidinet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pipeline\",\n      \"localized\": \"Pipeline\",\n      \"reload\": \"\",\n      \"hint\": \"Pipeline\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pixels to expand\",\n      \"localized\": \"Zu erweiternde Pixel\",\n      \"reload\": \"\",\n      \"hint\": \"Zu erweiternde Pixel\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"platform\",\n      \"localized\": \"Plattform\",\n      \"reload\": \"\",\n      \"hint\": \"Plattform\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"play\",\n      \"localized\": \"Abspielen\",\n      \"reload\": \"\",\n      \"hint\": \"Abspielen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"play a notification upon completion\",\n      \"localized\": \"Eine Benachrichtigung nach Abschluss abspielen\",\n      \"reload\": \"\",\n      \"hint\": \"Eine Benachrichtigung nach Abschluss abspielen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pndm\",\n      \"localized\": \"pndm\",\n      \"reload\": \"\",\n      \"hint\": \"pndm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"polyexponential\",\n      \"localized\": \"Polyexponentiell\",\n      \"reload\": \"\",\n      \"hint\": \"Polyexponentiell\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pony\",\n      \"localized\": \"Pony\",\n      \"reload\": \"\",\n      \"hint\": \"Pony\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pose confidence\",\n      \"localized\": \"Haltungssicherheit\",\n      \"reload\": \"\",\n      \"hint\": \"Haltungssicherheit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"positive\",\n      \"localized\": \"Positiv\",\n      \"reload\": \"\",\n      \"hint\": \"Positiv\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocess mask\",\n      \"localized\": \"Maske nachbearbeiten\",\n      \"reload\": \"\",\n      \"hint\": \"Maske nachbearbeiten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocess upscale\",\n      \"localized\": \"Upscale nachbearbeiten\",\n      \"reload\": \"\",\n      \"hint\": \"Upscale nachbearbeiten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocessing operation order\",\n      \"localized\": \"Reihenfolge der Nachbearbeitungsvorgänge\",\n      \"reload\": \"\",\n      \"hint\": \"Reihenfolge der Nachbearbeitungsvorgänge\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"power\",\n      \"localized\": \"Leistung\",\n      \"reload\": \"\",\n      \"hint\": \"Leistung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"predefined question\",\n      \"localized\": \"Vordefinierte Frage\",\n      \"reload\": \"\",\n      \"hint\": \"Vordefinierte Frage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prediction method\",\n      \"localized\": \"Vorhersagemethode\",\n      \"reload\": \"\",\n      \"hint\": \"Vorhersagemethode\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preset\",\n      \"localized\": \"Voreinstellung\",\n      \"reload\": \"\",\n      \"hint\": \"Voreinstellung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preset block merge\",\n      \"localized\": \"Voreingestellte Blockzusammenführung\",\n      \"reload\": \"\",\n      \"hint\": \"Voreingestellte Blockzusammenführung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview\",\n      \"localized\": \"Vorschau\",\n      \"reload\": \"\",\n      \"hint\": \"Vorschau\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview end\",\n      \"localized\": \"Vorschau Ende\",\n      \"reload\": \"\",\n      \"hint\": \"Vorschau Ende\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview start\",\n      \"localized\": \"Vorschau Start\",\n      \"reload\": \"\",\n      \"hint\": \"Vorschau Start\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"primary model\",\n      \"localized\": \"Primärmodell\",\n      \"reload\": \"\",\n      \"hint\": \"Primärmodell\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor\",\n      \"localized\": \"Prozessor\",\n      \"reload\": \"\",\n      \"hint\": \"Prozessor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor move to cpu after use\",\n      \"localized\": \"Prozessor nach Verwendung auf CPU verschieben\",\n      \"reload\": \"\",\n      \"hint\": \"Prozessor nach Verwendung auf CPU verschieben\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor settings\",\n      \"localized\": \"Prozessoreinstellungen\",\n      \"reload\": \"\",\n      \"hint\": \"Prozessoreinstellungen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor unload after use\",\n      \"localized\": \"Prozessor nach Verwendung entladen\",\n      \"reload\": \"\",\n      \"hint\": \"Prozessor nach Verwendung entladen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt attention normalization\",\n      \"localized\": \"Prompt-Aufmerksamkeitsnormalisierung\",\n      \"reload\": \"\",\n      \"hint\": \"Prompt-Aufmerksamkeitsnormalisierung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt ex\",\n      \"localized\": \"Prompt Ex\",\n      \"reload\": \"\",\n      \"hint\": \"Prompt Ex\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt processor\",\n      \"localized\": \"Prompt-Prozessor\",\n      \"reload\": \"\",\n      \"hint\": \"Prompt-Prozessor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt strength\",\n      \"localized\": \"Prompt-Stärke\",\n      \"reload\": \"\",\n      \"hint\": \"Prompt-Stärke\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt thresholds:\",\n      \"localized\": \"Prompt-Schwellenwerte:\",\n      \"reload\": \"\",\n      \"hint\": \"Prompt-Schwellenwerte:\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompts\",\n      \"localized\": \"Prompts\",\n      \"reload\": \"\",\n      \"hint\": \"Prompts\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"provider\",\n      \"localized\": \"Anbieter\",\n      \"reload\": \"\",\n      \"hint\": \"Anbieter\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prune\",\n      \"localized\": \"Beschneiden\",\n      \"reload\": \"\",\n      \"hint\": \"Beschneiden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quad\",\n      \"localized\": \"Quad\",\n      \"reload\": \"\",\n      \"hint\": \"Quad\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization activations type\",\n      \"localized\": \"Quantisierungs-Aktivierungstyp\",\n      \"reload\": \"\",\n      \"hint\": \"Quantisierungs-Aktivierungstyp\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization mode\",\n      \"localized\": \"Quantisierungsmodus\",\n      \"reload\": \"\",\n      \"hint\": \"Quantisierungsmodus\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization type\",\n      \"localized\": \"Quantisierungstyp\",\n      \"reload\": \"\",\n      \"hint\": \"Quantisierungstyp\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization weights type\",\n      \"localized\": \"Quantisierungs-Gewichtungstyp\",\n      \"reload\": \"\",\n      \"hint\": \"Quantisierungs-Gewichtungstyp\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"random seeds\",\n      \"localized\": \"Zufällige Seeds\",\n      \"reload\": \"\",\n      \"hint\": \"Zufällige Seeds\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"range\",\n      \"localized\": \"Bereich\",\n      \"reload\": \"\",\n      \"hint\": \"Bereich\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rebase\",\n      \"localized\": \"Rebase\",\n      \"reload\": \"\",\n      \"hint\": \"Rebase\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"recursive\",\n      \"localized\": \"Rekursiv\",\n      \"reload\": \"\",\n      \"hint\": \"Rekursiv\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reduce-overhead\",\n      \"localized\": \"Overhead reduzieren\",\n      \"reload\": \"\",\n      \"hint\": \"Overhead reduzieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"redux prompt strength\",\n      \"localized\": \"Redux-Prompt-Stärke\",\n      \"reload\": \"\",\n      \"hint\": \"Redux-Prompt-Stärke\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference adain weight\",\n      \"localized\": \"Referenz Adain-Gewichtung\",\n      \"reload\": \"\",\n      \"hint\": \"Referenz Adain-Gewichtung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference query weight\",\n      \"localized\": \"Referenz Abfrage-Gewichtung\",\n      \"reload\": \"\",\n      \"hint\": \"Referenz Abfrage-Gewichtung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference unit 1\",\n      \"localized\": \"Referenzeinheit 1\",\n      \"reload\": \"\",\n      \"hint\": \"Referenzeinheit 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refine foreground\",\n      \"localized\": \"Vordergrund verfeinern\",\n      \"reload\": \"\",\n      \"hint\": \"Vordergrund verfeinern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh bench\",\n      \"localized\": \"Benchmark aktualisieren\",\n      \"reload\": \"\",\n      \"hint\": \"Benchmark aktualisieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh data\",\n      \"localized\": \"Daten aktualisieren\",\n      \"reload\": \"\",\n      \"hint\": \"Daten aktualisieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh state\",\n      \"localized\": \"Status aktualisieren\",\n      \"reload\": \"\",\n      \"hint\": \"Status aktualisieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh ui values\",\n      \"localized\": \"UI-Werte aktualisieren\",\n      \"reload\": \"\",\n      \"hint\": \"UI-Werte aktualisieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reinstall\",\n      \"localized\": \"Neu installieren\",\n      \"reload\": \"\",\n      \"hint\": \"Neu installieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"remove background\",\n      \"localized\": \"Hintergrund entfernen\",\n      \"reload\": \"\",\n      \"hint\": \"Hintergrund entfernen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repeat x-axis\",\n      \"localized\": \"X-Achse wiederholen\",\n      \"reload\": \"\",\n      \"hint\": \"X-Achse wiederholen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repeat y-axis\",\n      \"localized\": \"Y-Achse wiederholen\",\n      \"reload\": \"\",\n      \"hint\": \"Y-Achse wiederholen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"replace vae\",\n      \"localized\": \"VAE ersetzen\",\n      \"reload\": \"\",\n      \"hint\": \"VAE ersetzen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repos\",\n      \"localized\": \"Repos\",\n      \"reload\": \"\",\n      \"hint\": \"Repos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess decode\",\n      \"localized\": \"Dekodierung neu verarbeiten\",\n      \"reload\": \"\",\n      \"hint\": \"Dekodierung neu verarbeiten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess face\",\n      \"localized\": \"Gesicht neu verarbeiten\",\n      \"reload\": \"\",\n      \"hint\": \"Gesicht neu verarbeiten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess refine\",\n      \"localized\": \"Verfeinerung neu verarbeiten\",\n      \"reload\": \"\",\n      \"hint\": \"Verfeinerung neu verarbeiten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"request browser notifications\",\n      \"localized\": \"Browser-Benachrichtigungen anfordern\",\n      \"reload\": \"\",\n      \"hint\": \"Browser-Benachrichtigungen anfordern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rescale\",\n      \"localized\": \"Neu skalieren\",\n      \"reload\": \"\",\n      \"hint\": \"Neu skalieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rescale betas with zero terminal snr\",\n      \"localized\": \"Betas mit Null-End-SNR neu skalieren\",\n      \"reload\": \"\",\n      \"hint\": \"Betas mit Null-End-SNR neu skalieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reset anchors\",\n      \"localized\": \"Anker zurücksetzen\",\n      \"reload\": \"\",\n      \"hint\": \"Anker zurücksetzen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"residual diff threshold\",\n      \"localized\": \"Schwellenwert für Restdifferenz\",\n      \"reload\": \"\",\n      \"hint\": \"Schwellenwert für Restdifferenz\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize background color\",\n      \"localized\": \"Hintergrundfarbe ändern\",\n      \"reload\": \"\",\n      \"hint\": \"Hintergrundfarbe ändern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize method\",\n      \"localized\": \"Größenänderungsmethode\",\n      \"reload\": \"\",\n      \"hint\": \"Größenänderungsmethode\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize mode\",\n      \"localized\": \"Größenänderungsmodus\",\n      \"reload\": \"\",\n      \"hint\": \"Größenänderungsmodus\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize scale\",\n      \"localized\": \"Skalierung der Größenänderung\",\n      \"reload\": \"\",\n      \"hint\": \"Skalierung der Größenänderung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restart step\",\n      \"localized\": \"Schritt neu starten\",\n      \"reload\": \"\",\n      \"hint\": \"Schritt neu starten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore faces: codeformer\",\n      \"localized\": \"Gesichter wiederherstellen: CodeFormer\",\n      \"reload\": \"\",\n      \"hint\": \"Gesichter wiederherstellen: CodeFormer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore faces: gfpgan\",\n      \"localized\": \"Gesichter wiederherstellen: GFPGAN\",\n      \"reload\": \"\",\n      \"hint\": \"Gesichter wiederherstellen: GFPGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore pipe on end\",\n      \"localized\": \"Pipe am Ende wiederherstellen\",\n      \"reload\": \"\",\n      \"hint\": \"Pipe am Ende wiederherstellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore unparsed prompt\",\n      \"localized\": \"Nicht geparsten Prompt wiederherstellen\",\n      \"reload\": \"\",\n      \"hint\": \"Nicht geparsten Prompt wiederherstellen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reswapper model\",\n      \"localized\": \"Reswapper-Modell\",\n      \"reload\": \"\",\n      \"hint\": \"Reswapper-Modell\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"return original images\",\n      \"localized\": \"Originalbilder zurückgeben\",\n      \"reload\": \"\",\n      \"hint\": \"Originalbilder zurückgeben\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"right\",\n      \"localized\": \"Rechts\",\n      \"reload\": \"\",\n      \"hint\": \"Rechts\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"root model folder\",\n      \"localized\": \"Stammmodellordner\",\n      \"reload\": \"\",\n      \"hint\": \"Stammmodellordner\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rows\",\n      \"localized\": \"Zeilen\",\n      \"reload\": \"\",\n      \"hint\": \"Zeilen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"run\",\n      \"localized\": \"Ausführen\",\n      \"reload\": \"\",\n      \"hint\": \"Ausführen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"run benchmark\",\n      \"localized\": \"Benchmark ausführen\",\n      \"reload\": \"\",\n      \"hint\": \"Benchmark ausführen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sa solver\",\n      \"localized\": \"SA-Solver\",\n      \"reload\": \"\",\n      \"hint\": \"SA-Solver\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"safetensors\",\n      \"localized\": \"SafeTensors\",\n      \"reload\": \"\",\n      \"hint\": \"SafeTensors\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sage attention\",\n      \"localized\": \"SAGE-Aufmerksamkeit\",\n      \"reload\": \"\",\n      \"hint\": \"SAGE-Aufmerksamkeit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"same as primary\",\n      \"localized\": \"Gleich wie primär\",\n      \"reload\": \"\",\n      \"hint\": \"Gleich wie primär\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"same latent\",\n      \"localized\": \"Gleiches Latent\",\n      \"reload\": \"\",\n      \"hint\": \"Gleiches Latent\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sample\",\n      \"localized\": \"Abtasten\",\n      \"reload\": \"\",\n      \"hint\": \"Abtasten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler\",\n      \"localized\": \"Sampler\",\n      \"reload\": \"\",\n      \"hint\": \"Sampler\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler dynamic shift\",\n      \"localized\": \"Sampler dynamische Verschiebung\",\n      \"reload\": \"\",\n      \"hint\": \"Sampler dynamische Verschiebung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler order\",\n      \"localized\": \"Sampler-Reihenfolge\",\n      \"reload\": \"\",\n      \"hint\": \"Sampler-Reihenfolge\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler shift\",\n      \"localized\": \"Sampler-Verschiebung\",\n      \"reload\": \"\",\n      \"hint\": \"Sampler-Verschiebung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sana: use complex human instructions\",\n      \"localized\": \"SANA: Komplexe menschliche Anweisungen verwenden\",\n      \"reload\": \"\",\n      \"hint\": \"SANA: Komplexe menschliche Anweisungen verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"saturation\",\n      \"localized\": \"Sättigung\",\n      \"reload\": \"\",\n      \"hint\": \"Sättigung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save all generated image grids\",\n      \"localized\": \"Alle generierten Bildgitter speichern\",\n      \"reload\": \"\",\n      \"hint\": \"Alle generierten Bildgitter speichern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save all generated images\",\n      \"localized\": \"Alle generierten Bilder speichern\",\n      \"reload\": \"\",\n      \"hint\": \"Alle generierten Bilder speichern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save caption files\",\n      \"localized\": \"Bildunterschrift-Dateien speichern\",\n      \"reload\": \"\",\n      \"hint\": \"Bildunterschrift-Dateien speichern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save diffusers\",\n      \"localized\": \"Diffusoren speichern\",\n      \"reload\": \"\",\n      \"hint\": \"Diffusoren speichern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save hdr image\",\n      \"localized\": \"HDR-Bild speichern\",\n      \"reload\": \"\",\n      \"hint\": \"HDR-Bild speichern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before color correction\",\n      \"localized\": \"Bild vor Farbkorrektur speichern\",\n      \"reload\": \"\",\n      \"hint\": \"Bild vor Farbkorrektur speichern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before detailer\",\n      \"localized\": \"Bild vor Detailer speichern\",\n      \"reload\": \"\",\n      \"hint\": \"Bild vor Detailer speichern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before hires\",\n      \"localized\": \"Bild vor Hochskalierung speichern\",\n      \"reload\": \"\",\n      \"hint\": \"Bild vor Hochskalierung speichern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before refiner\",\n      \"localized\": \"Bild vor Refiner speichern\",\n      \"reload\": \"\",\n      \"hint\": \"Bild vor Refiner speichern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save images to a subdirectory\",\n      \"localized\": \"Bilder in ein Unterverzeichnis speichern\",\n      \"reload\": \"\",\n      \"hint\": \"Bilder in ein Unterverzeichnis speichern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save init images\",\n      \"localized\": \"Init-Bilder speichern\",\n      \"reload\": \"\",\n      \"hint\": \"Init-Bilder speichern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save inpainting mask\",\n      \"localized\": \"Inpainting-Maske speichern\",\n      \"reload\": \"\",\n      \"hint\": \"Inpainting-Maske speichern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save inpainting masked composite\",\n      \"localized\": \"Inpainting-maskiertes Komposit speichern\",\n      \"reload\": \"\",\n      \"hint\": \"Inpainting-maskiertes Komposit speichern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save metadata\",\n      \"localized\": \"Metadaten speichern\",\n      \"reload\": \"\",\n      \"hint\": \"Metadaten speichern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save only saves selected image\",\n      \"localized\": \"Speichern speichert nur ausgewähltes Bild\",\n      \"reload\": \"\",\n      \"hint\": \"Speichert nur das aktuell ausgewählte Bild\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save output\",\n      \"localized\": \"Ausgabe speichern\",\n      \"reload\": \"\",\n      \"hint\": \"Ausgabe speichern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save safetensors\",\n      \"localized\": \"Safetensors speichern\",\n      \"reload\": \"\",\n      \"hint\": \"Safetensors speichern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save unparsed prompt\",\n      \"localized\": \"Ungeparsten Prompt speichern\",\n      \"reload\": \"\",\n      \"hint\": \"Ungeparsten Prompt speichern\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale after\",\n      \"localized\": \"Skalieren danach\",\n      \"reload\": \"\",\n      \"hint\": \"Skalieren danach\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale before\",\n      \"localized\": \"Skalieren davor\",\n      \"reload\": \"\",\n      \"hint\": \"Skalieren davor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale mask\",\n      \"localized\": \"Maske skalieren\",\n      \"reload\": \"\",\n      \"hint\": \"Maske skalieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale factor\",\n      \"localized\": \"Skalierungsfaktor\",\n      \"reload\": \"\",\n      \"hint\": \"Skalierungsfaktor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"score\",\n      \"localized\": \"Score\",\n      \"reload\": \"\",\n      \"hint\": \"Score\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"score threshold\",\n      \"localized\": \"Score-Schwellenwert\",\n      \"reload\": \"\",\n      \"hint\": \"Score-Schwellenwert\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scribble\",\n      \"localized\": \"Scribble\",\n      \"reload\": \"\",\n      \"hint\": \"Scribble\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-attire\",\n      \"localized\": \"SD15-Bekleidung\",\n      \"reload\": \"\",\n      \"hint\": \"SD15-Bekleidung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-likeness\",\n      \"localized\": \"SD15-Ähnlichkeit\",\n      \"reload\": \"\",\n      \"hint\": \"SD15-Ähnlichkeit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-navimixu\",\n      \"localized\": \"SD15-Navimixu\",\n      \"reload\": \"\",\n      \"hint\": \"SD15-Navimixu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-sexy\",\n      \"localized\": \"SD15-Sexy\",\n      \"reload\": \"\",\n      \"hint\": \"SD15-Sexy\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-artstyle\",\n      \"localized\": \"SDXL-Kunststil\",\n      \"reload\": \"\",\n      \"hint\": \"SDXL-Kunststil\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-negative\",\n      \"localized\": \"SDXL-Negativ\",\n      \"reload\": \"\",\n      \"hint\": \"SDXL-Negativ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-sexy\",\n      \"localized\": \"SDXL-Sexy\",\n      \"reload\": \"\",\n      \"hint\": \"SDXL-Sexy\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-sliders\",\n      \"localized\": \"SDXL-Schieberegler\",\n      \"reload\": \"\",\n      \"hint\": \"SDXL-Schieberegler\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-toon\",\n      \"localized\": \"SDXL-Cartoon\",\n      \"reload\": \"\",\n      \"hint\": \"SDXL-Cartoon\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl: use weighted pooled embeds\",\n      \"localized\": \"SDXL: Gewichtete gepoolte Embeddings verwenden\",\n      \"reload\": \"\",\n      \"hint\": \"SDXL: Gewichtete gepoolte Embeddings verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search changelog\",\n      \"localized\": \"Änderungsprotokoll durchsuchen\",\n      \"reload\": \"\",\n      \"hint\": \"Änderungsprotokoll durchsuchen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search models\",\n      \"localized\": \"Modelle durchsuchen\",\n      \"reload\": \"\",\n      \"hint\": \"Modelle durchsuchen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search wiki pages\",\n      \"localized\": \"Wiki-Seiten durchsuchen\",\n      \"reload\": \"\",\n      \"hint\": \"Wiki-Seiten durchsuchen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"secondary model\",\n      \"localized\": \"Sekundäres Modell\",\n      \"reload\": \"\",\n      \"hint\": \"Sekundäres Modell\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"segmentanything\",\n      \"localized\": \"SegmentAnything\",\n      \"reload\": \"\",\n      \"hint\": \"SegmentAnything\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"select\",\n      \"localized\": \"Auswählen\",\n      \"reload\": \"\",\n      \"hint\": \"Auswählen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"select model\",\n      \"localized\": \"Modell auswählen\",\n      \"reload\": \"\",\n      \"hint\": \"Modell auswählen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send interrupt\",\n      \"localized\": \"Unterbrechung senden\",\n      \"reload\": \"\",\n      \"hint\": \"Unterbrechung senden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send seed when sending prompt or image to other interface\",\n      \"localized\": \"Seed senden beim Senden von Prompt oder Bild an andere Oberfläche\",\n      \"reload\": \"\",\n      \"hint\": \"Seed senden beim Senden von Prompt oder Bild an andere Oberfläche\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send size when sending prompt or image to another interface\",\n      \"localized\": \"Größe senden beim Senden von Prompt oder Bild an andere Oberfläche\",\n      \"reload\": \"\",\n      \"hint\": \"Größe senden beim Senden von Prompt oder Bild an andere Oberfläche\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sequential\",\n      \"localized\": \"Sequentiell\",\n      \"reload\": \"\",\n      \"hint\": \"Sequentiell\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"server start time\",\n      \"localized\": \"Server-Startzeit\",\n      \"reload\": \"\",\n      \"hint\": \"Server-Startzeit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"set at prompt start\",\n      \"localized\": \"Beim Prompt-Start festlegen\",\n      \"reload\": \"\",\n      \"hint\": \"Beim Prompt-Start festlegen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"set ui menu states\",\n      \"localized\": \"UI-Menüzustände festlegen\",\n      \"reload\": \"\",\n      \"hint\": \"UI-Menüzustände festlegen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"share queries\",\n      \"localized\": \"Abfragen teilen\",\n      \"reload\": \"\",\n      \"hint\": \"Abfragen teilen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shared options\",\n      \"localized\": \"Geteilte Optionen\",\n      \"reload\": \"\",\n      \"hint\": \"Geteilte Optionen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sharpen\",\n      \"localized\": \"Schärfen\",\n      \"reload\": \"\",\n      \"hint\": \"Schärfen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shift\",\n      \"localized\": \"Verschieben\",\n      \"reload\": \"\",\n      \"hint\": \"Verschieben\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show grid in results\",\n      \"localized\": \"Gitter in Ergebnissen anzeigen\",\n      \"reload\": \"\",\n      \"hint\": \"Gitter in Ergebnissen anzeigen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show input\",\n      \"localized\": \"Eingabe anzeigen\",\n      \"reload\": \"\",\n      \"hint\": \"Eingabe anzeigen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show metadata in full screen image browser\",\n      \"localized\": \"Metadaten im Vollbild-Bildbrowser anzeigen\",\n      \"reload\": \"\",\n      \"hint\": \"Metadaten im Vollbild-Bildbrowser anzeigen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show motd\",\n      \"localized\": \"MOTD anzeigen\",\n      \"reload\": \"\",\n      \"hint\": \"MOTD anzeigen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show preview\",\n      \"localized\": \"Vorschau anzeigen\",\n      \"reload\": \"\",\n      \"hint\": \"Vorschau anzeigen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shuffle weights\",\n      \"localized\": \"Gewichtungen mischen\",\n      \"reload\": \"\",\n      \"hint\": \"Gewichtungen mischen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma\",\n      \"localized\": \"Sigma\",\n      \"reload\": \"\",\n      \"hint\": \"Sigma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma churn\",\n      \"localized\": \"Sigma-Churn\",\n      \"reload\": \"\",\n      \"hint\": \"Sigma-Churn\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma max\",\n      \"localized\": \"Sigma Max\",\n      \"reload\": \"\",\n      \"hint\": \"Sigma Max\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma method\",\n      \"localized\": \"Sigma-Methode\",\n      \"reload\": \"\",\n      \"hint\": \"Sigma-Methode\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma min\",\n      \"localized\": \"Sigma Min\",\n      \"reload\": \"\",\n      \"hint\": \"Sigma Min\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma noise\",\n      \"localized\": \"Sigma-Rauschen\",\n      \"reload\": \"\",\n      \"hint\": \"Sigma-Rauschen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma tmin\",\n      \"localized\": \"Sigma TMin\",\n      \"reload\": \"\",\n      \"hint\": \"Sigma TMin\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"simple merge\",\n      \"localized\": \"Einfaches Zusammenführen\",\n      \"reload\": \"\",\n      \"hint\": \"Einfaches Zusammenführen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"size\",\n      \"localized\": \"Größe\",\n      \"reload\": \"\",\n      \"hint\": \"Größe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sketch\",\n      \"localized\": \"Skizze\",\n      \"reload\": \"\",\n      \"hint\": \"Skizze\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip generation if nan found in latents\",\n      \"localized\": \"Generierung überspringen, wenn NaN in Latenten gefunden wird\",\n      \"reload\": \"\",\n      \"hint\": \"Generierung überspringen, wenn NaN in Latenten gefunden wird\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip guidance layers\",\n      \"localized\": \"Guidance-Ebenen überspringen\",\n      \"reload\": \"\",\n      \"hint\": \"Guidance-Ebenen überspringen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip input frames\",\n      \"localized\": \"Eingabe-Frames überspringen\",\n      \"reload\": \"\",\n      \"hint\": \"Eingabe-Frames überspringen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"slider\",\n      \"localized\": \"Schieberegler\",\n      \"reload\": \"\",\n      \"hint\": \"Schieberegler\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"smooth mask\",\n      \"localized\": \"Maske glätten\",\n      \"reload\": \"\",\n      \"hint\": \"Maske glätten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"solver order (where\",\n      \"localized\": \"Solver-Reihenfolge (wo\",\n      \"reload\": \"\",\n      \"hint\": \"Solver-Reihenfolge (wo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sort order\",\n      \"localized\": \"Sortierreihenfolge\",\n      \"reload\": \"\",\n      \"hint\": \"Sortierreihenfolge\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"source subject\",\n      \"localized\": \"Quell-Subjekt\",\n      \"reload\": \"\",\n      \"hint\": \"Quell-Subjekt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"space\",\n      \"localized\": \"Raum\",\n      \"reload\": \"\",\n      \"hint\": \"Raum\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"spatial frequency\",\n      \"localized\": \"Raumfrequenz\",\n      \"reload\": \"\",\n      \"hint\": \"Raumfrequenz\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"specify model revision\",\n      \"localized\": \"Modellrevision angeben\",\n      \"reload\": \"\",\n      \"hint\": \"Modellrevision angeben\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"specify model variant\",\n      \"localized\": \"Modellvariante angeben\",\n      \"reload\": \"\",\n      \"hint\": \"Modellvariante angeben\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"split attention\",\n      \"localized\": \"Split-Attention\",\n      \"reload\": \"\",\n      \"hint\": \"Split-Attention\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"stable-fast\",\n      \"localized\": \"Stable-Fast\",\n      \"reload\": \"\",\n      \"hint\": \"Stable-Fast\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"standard\",\n      \"localized\": \"Standard\",\n      \"reload\": \"\",\n      \"hint\": \"Standard\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"start\",\n      \"localized\": \"Start\",\n      \"reload\": \"\",\n      \"hint\": \"Start\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"start profiling\",\n      \"localized\": \"Profiling starten\",\n      \"reload\": \"\",\n      \"hint\": \"Profiling starten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"state\",\n      \"localized\": \"Zustand\",\n      \"reload\": \"\",\n      \"hint\": \"Zustand\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"stride\",\n      \"localized\": \"Schrittweite\",\n      \"reload\": \"\",\n      \"hint\": \"Schrittweite\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"structure\",\n      \"localized\": \"Struktur\",\n      \"reload\": \"\",\n      \"hint\": \"Struktur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"style fidelity\",\n      \"localized\": \"Stilgetreue\",\n      \"reload\": \"\",\n      \"hint\": \"Stilgetreue\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"subject\",\n      \"localized\": \"Subjekt\",\n      \"reload\": \"\",\n      \"hint\": \"Subjekt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"submit results\",\n      \"localized\": \"Ergebnisse einreichen\",\n      \"reload\": \"\",\n      \"hint\": \"Ergebnisse einreichen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"submodules\",\n      \"localized\": \"Untermodule\",\n      \"reload\": \"\",\n      \"hint\": \"Untermodule\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap x/y\",\n      \"localized\": \"X/Y tauschen\",\n      \"reload\": \"\",\n      \"hint\": \"X/Y tauschen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap x/z\",\n      \"localized\": \"X/Z tauschen\",\n      \"reload\": \"\",\n      \"hint\": \"X/Z tauschen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap y/z\",\n      \"localized\": \"Y/Z tauschen\",\n      \"reload\": \"\",\n      \"hint\": \"Y/Z tauschen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i adapter\",\n      \"localized\": \"T2I-Adapter\",\n      \"reload\": \"\",\n      \"hint\": \"T2I-Adapter\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i strength\",\n      \"localized\": \"T2I-Stärke\",\n      \"reload\": \"\",\n      \"hint\": \"T2I-Stärke\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 1\",\n      \"localized\": \"T2I-Adapter Einheit 1\",\n      \"reload\": \"\",\n      \"hint\": \"T2I-Adapter Einheit 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 2\",\n      \"localized\": \"T2I-Adapter Einheit 2\",\n      \"reload\": \"\",\n      \"hint\": \"T2I-Adapter Einheit 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 3\",\n      \"localized\": \"T2I-Adapter Einheit 3\",\n      \"reload\": \"\",\n      \"hint\": \"T2I-Adapter Einheit 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 4\",\n      \"localized\": \"T2I-Adapter Einheit 4\",\n      \"reload\": \"\",\n      \"hint\": \"T2I-Adapter Einheit 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd\",\n      \"localized\": \"taesd\",\n      \"reload\": \"\",\n      \"hint\": \"taesd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd decode layers\",\n      \"localized\": \"taesd Dekodierschichten\",\n      \"reload\": \"\",\n      \"hint\": \"taesd Dekodierschichten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd variant\",\n      \"localized\": \"taesd Variante\",\n      \"reload\": \"\",\n      \"hint\": \"taesd Variante\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"target subject\",\n      \"localized\": \"Zielmotiv\",\n      \"reload\": \"\",\n      \"hint\": \"Zielmotiv\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tcd\",\n      \"localized\": \"tcd\",\n      \"reload\": \"\",\n      \"hint\": \"tcd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tdd\",\n      \"localized\": \"tdd\",\n      \"reload\": \"\",\n      \"hint\": \"tdd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"te\",\n      \"localized\": \"te\",\n      \"reload\": \"\",\n      \"hint\": \"te\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"temperature\",\n      \"localized\": \"Temperatur\",\n      \"reload\": \"\",\n      \"hint\": \"Temperatur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"temporal frequency\",\n      \"localized\": \"Temporale Frequenz\",\n      \"reload\": \"\",\n      \"hint\": \"Temporale Frequenz\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tertiary model\",\n      \"localized\": \"Tertiärmodell\",\n      \"reload\": \"\",\n      \"hint\": \"Tertiärmodell\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text encoder cache size\",\n      \"localized\": \"Text-Encoder-Cache-Größe\",\n      \"reload\": \"\",\n      \"hint\": \"Text-Encoder-Cache-Größe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text encoder model\",\n      \"localized\": \"Text-Encoder-Modell\",\n      \"reload\": \"\",\n      \"hint\": \"Text-Encoder-Modell\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text inputs\",\n      \"localized\": \"Texteingaben\",\n      \"reload\": \"\",\n      \"hint\": \"Texteingaben\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"textbox\",\n      \"localized\": \"Textfeld\",\n      \"reload\": \"\",\n      \"hint\": \"Textfeld\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"threshold\",\n      \"localized\": \"Schwellenwert\",\n      \"reload\": \"\",\n      \"hint\": \"Schwellenwert\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"thresholding\",\n      \"localized\": \"Schwellenwertbildung\",\n      \"reload\": \"\",\n      \"hint\": \"Schwellenwertbildung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile frames\",\n      \"localized\": \"Kachelrahmen\",\n      \"reload\": \"\",\n      \"hint\": \"Kachelrahmen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=1\",\n      \"localized\": \"Kachel-Prompt: x=1 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"Kachel-Prompt: x=1 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=2\",\n      \"localized\": \"Kachel-Prompt: x=1 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"Kachel-Prompt: x=1 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=3\",\n      \"localized\": \"Kachel-Prompt: x=1 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"Kachel-Prompt: x=1 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=4\",\n      \"localized\": \"Kachel-Prompt: x=1 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"Kachel-Prompt: x=1 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=1\",\n      \"localized\": \"Kachel-Prompt: x=2 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"Kachel-Prompt: x=2 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=2\",\n      \"localized\": \"Kachel-Prompt: x=2 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"Kachel-Prompt: x=2 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=3\",\n      \"localized\": \"Kachel-Prompt: x=2 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"Kachel-Prompt: x=2 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=4\",\n      \"localized\": \"Kachel-Prompt: x=2 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"Kachel-Prompt: x=2 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=1\",\n      \"localized\": \"Kachel-Prompt: x=3 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"Kachel-Prompt: x=3 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=2\",\n      \"localized\": \"Kachel-Prompt: x=3 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"Kachel-Prompt: x=3 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=3\",\n      \"localized\": \"Kachel-Prompt: x=3 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"Kachel-Prompt: x=3 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=4\",\n      \"localized\": \"Kachel-Prompt: x=3 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"Kachel-Prompt: x=3 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=1\",\n      \"localized\": \"Kachel-Prompt: x=4 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"Kachel-Prompt: x=4 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=2\",\n      \"localized\": \"Kachel-Prompt: x=4 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"Kachel-Prompt: x=4 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=3\",\n      \"localized\": \"Kachel-Prompt: x=4 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"Kachel-Prompt: x=4 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=4\",\n      \"localized\": \"Kachel-Prompt: x=4 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"Kachel-Prompt: x=4 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tiling options\",\n      \"localized\": \"Kachelungsoptionen\",\n      \"reload\": \"\",\n      \"hint\": \"Kachelungsoptionen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time embedding mix\",\n      \"localized\": \"Zeit-Embedding-Mix\",\n      \"reload\": \"\",\n      \"hint\": \"Zeit-Embedding-Mix\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time_quadratic\",\n      \"localized\": \"time_quadratic\",\n      \"reload\": \"\",\n      \"hint\": \"time_quadratic\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time_uniform\",\n      \"localized\": \"time_uniform\",\n      \"reload\": \"\",\n      \"hint\": \"time_uniform\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep\",\n      \"localized\": \"Zeitschritt\",\n      \"reload\": \"\",\n      \"hint\": \"Zeitschritt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep skip end\",\n      \"localized\": \"Zeitschritt-Ende überspringen\",\n      \"reload\": \"\",\n      \"hint\": \"Zeitschritt-Ende überspringen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep skip start\",\n      \"localized\": \"Zeitschritt-Start überspringen\",\n      \"reload\": \"\",\n      \"hint\": \"Zeitschritt-Start überspringen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep spacing\",\n      \"localized\": \"Zeitschritt-Abstand\",\n      \"reload\": \"\",\n      \"hint\": \"Zeitschritt-Abstand\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps\",\n      \"localized\": \"Zeitschritte\",\n      \"reload\": \"\",\n      \"hint\": \"Zeitschritte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps override\",\n      \"localized\": \"Zeitschritte überschreiben\",\n      \"reload\": \"\",\n      \"hint\": \"Zeitschritte überschreiben\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps presets\",\n      \"localized\": \"Zeitschritt-Voreinstellungen\",\n      \"reload\": \"\",\n      \"hint\": \"Zeitschritt-Voreinstellungen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps range\",\n      \"localized\": \"Zeitschritt-Bereich\",\n      \"reload\": \"\",\n      \"hint\": \"Zeitschritt-Bereich\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tiny\",\n      \"localized\": \"Klein\",\n      \"reload\": \"\",\n      \"hint\": \"Klein\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"todo\",\n      \"localized\": \"Zu erledigen\",\n      \"reload\": \"\",\n      \"hint\": \"Zu erledigen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tome\",\n      \"localized\": \"tome\",\n      \"reload\": \"\",\n      \"hint\": \"tome\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tool\",\n      \"localized\": \"Werkzeug\",\n      \"reload\": \"\",\n      \"hint\": \"Werkzeug\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"top-k\",\n      \"localized\": \"top-k\",\n      \"reload\": \"\",\n      \"hint\": \"top-k\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"top-p\",\n      \"localized\": \"top-p\",\n      \"reload\": \"\",\n      \"hint\": \"top-p\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"torch\",\n      \"localized\": \"torch\",\n      \"reload\": \"\",\n      \"hint\": \"torch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"transformer\",\n      \"localized\": \"Transformer\",\n      \"reload\": \"\",\n      \"hint\": \"Transformer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"trigger word\",\n      \"localized\": \"Triggerwort\",\n      \"reload\": \"\",\n      \"hint\": \"Triggerwort\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"true\",\n      \"localized\": \"Wahr\",\n      \"reload\": \"\",\n      \"hint\": \"Wahr\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tunable ops limit\",\n      \"localized\": \"Grenze der einstellbaren Operationen\",\n      \"reload\": \"\",\n      \"hint\": \"Grenze der einstellbaren Operationen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ufogen\",\n      \"localized\": \"ufogen\",\n      \"reload\": \"\",\n      \"hint\": \"ufogen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui card size (px)\",\n      \"localized\": \"UI-Kartengröße (px)\",\n      \"reload\": \"\",\n      \"hint\": \"UI-Kartengröße (px)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui fetch network info on mouse-over\",\n      \"localized\": \"UI-Netzwerkinfo bei Mauszeigerbewegung abrufen\",\n      \"reload\": \"\",\n      \"hint\": \"UI-Netzwerkinfo bei Mauszeigerbewegung abrufen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui height (%)\",\n      \"localized\": \"UI-Höhe (%)\",\n      \"reload\": \"\",\n      \"hint\": \"UI-Höhe (%)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui locale\",\n      \"localized\": \"UI-Sprache\",\n      \"reload\": \"\",\n      \"hint\": \"UI-Sprache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui request timeout\",\n      \"localized\": \"UI-Anfrage-Timeout\",\n      \"reload\": \"\",\n      \"hint\": \"UI-Anfrage-Timeout\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui show on startup\",\n      \"localized\": \"UI beim Start anzeigen\",\n      \"reload\": \"\",\n      \"hint\": \"UI beim Start anzeigen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui sidebar width (%)\",\n      \"localized\": \"UI-Seitenleistenbreite (%)\",\n      \"reload\": \"\",\n      \"hint\": \"UI-Seitenleistenbreite (%)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui theme\",\n      \"localized\": \"UI-Design\",\n      \"reload\": \"\",\n      \"hint\": \"UI-Design\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet\",\n      \"localized\": \"UNet\",\n      \"reload\": \"\",\n      \"hint\": \"UNet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet depth\",\n      \"localized\": \"UNet-Tiefe\",\n      \"reload\": \"\",\n      \"hint\": \"UNet-Tiefe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet enabled\",\n      \"localized\": \"UNet aktiviert\",\n      \"reload\": \"\",\n      \"hint\": \"UNet aktiviert\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet max tile size\",\n      \"localized\": \"UNet maximale Kachelgröße\",\n      \"reload\": \"\",\n      \"hint\": \"UNet maximale Kachelgröße\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet min tile size\",\n      \"localized\": \"UNet minimale Kachelgröße\",\n      \"reload\": \"\",\n      \"hint\": \"UNet minimale Kachelgröße\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet model\",\n      \"localized\": \"UNet-Modell\",\n      \"reload\": \"\",\n      \"hint\": \"UNet-Modell\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet swap size\",\n      \"localized\": \"UNet-Swap-Größe\",\n      \"reload\": \"\",\n      \"hint\": \"UNet-Swap-Größe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"uniform\",\n      \"localized\": \"Gleichmäßig\",\n      \"reload\": \"\",\n      \"hint\": \"Gleichmäßig\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"units\",\n      \"localized\": \"Einheiten\",\n      \"reload\": \"\",\n      \"hint\": \"Einheiten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unload current model from vram\",\n      \"localized\": \"Aktuelles Modell aus VRAM entladen\",\n      \"reload\": \"\",\n      \"hint\": \"Aktuelles Modell aus VRAM entladen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unload upscaler after processing\",\n      \"localized\": \"Upscaler nach Verarbeitung entladen\",\n      \"reload\": \"\",\n      \"hint\": \"Upscaler nach Verarbeitung entladen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unset\",\n      \"localized\": \"Nicht gesetzt\",\n      \"reload\": \"\",\n      \"hint\": \"Nicht gesetzt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"up\",\n      \"localized\": \"up\",\n      \"reload\": \"\",\n      \"hint\": \"up\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"upcast attention layer\",\n      \"localized\": \"Upcast-Aufmerksamkeits-Layer\",\n      \"reload\": \"\",\n      \"hint\": \"Upcast-Aufmerksamkeits-Layer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"update\",\n      \"localized\": \"Aktualisieren\",\n      \"reload\": \"\",\n      \"hint\": \"Aktualisieren\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"upload\",\n      \"localized\": \"Hochladen\",\n      \"reload\": \"\",\n      \"hint\": \"Hochladen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use brownian noise\",\n      \"localized\": \"Brownsches Rauschen verwenden\",\n      \"reload\": \"\",\n      \"hint\": \"Brownsches Rauschen verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use cached model config when available\",\n      \"localized\": \"Gecachte Modellkonfiguration verwenden, wenn verfügbar\",\n      \"reload\": \"\",\n      \"hint\": \"Gecachte Modellkonfiguration verwenden, wenn verfügbar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use defaults\",\n      \"localized\": \"Standardwerte verwenden\",\n      \"reload\": \"\",\n      \"hint\": \"Standardwerte verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use dynamic thresholding\",\n      \"localized\": \"Dynamische Schwellenwertbildung verwenden\",\n      \"reload\": \"\",\n      \"hint\": \"Dynamische Schwellenwertbildung verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use fixed width thumbnails\",\n      \"localized\": \"Vorschaubilder mit fester Breite verwenden\",\n      \"reload\": \"\",\n      \"hint\": \"Vorschaubilder mit fester Breite verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use image gallery cache\",\n      \"localized\": \"Bildgalerie-Cache verwenden\",\n      \"reload\": \"\",\n      \"hint\": \"Bildgalerie-Cache verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use karras sigmas\",\n      \"localized\": \"Karras-Sigmas verwenden\",\n      \"reload\": \"\",\n      \"hint\": \"Karras-Sigmas verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use line break as prompt segment marker\",\n      \"localized\": \"Zeilenumbruch als Prompt-Segment-Marker verwenden\",\n      \"reload\": \"\",\n      \"hint\": \"Zeilenumbruch als Prompt-Segment-Marker verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use model ema weights when possible\",\n      \"localized\": \"Modell-EMA-Gewichtungen verwenden, wenn möglich\",\n      \"reload\": \"\",\n      \"hint\": \"Modell-EMA-Gewichtungen verwenden, wenn möglich\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use quantization\",\n      \"localized\": \"Quantisierung verwenden\",\n      \"reload\": \"\",\n      \"hint\": \"Quantisierung verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use random seeds\",\n      \"localized\": \"Zufällige Seeds verwenden\",\n      \"reload\": \"\",\n      \"hint\": \"Zufällige Seeds verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use reference values when available\",\n      \"localized\": \"Referenzwerte verwenden, wenn verfügbar\",\n      \"reload\": \"\",\n      \"hint\": \"Referenzwerte verwenden, wenn verfügbar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use same seed\",\n      \"localized\": \"Gleichen Seed verwenden\",\n      \"reload\": \"\",\n      \"hint\": \"Gleichen Seed verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use sample\",\n      \"localized\": \"Beispiel verwenden\",\n      \"reload\": \"\",\n      \"hint\": \"Beispiel verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use separate base dict\",\n      \"localized\": \"Separates Basis-Dict verwenden\",\n      \"reload\": \"\",\n      \"hint\": \"Separates Basis-Dict verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use simplified solvers in final steps\",\n      \"localized\": \"Vereinfachte Solver in letzten Schritten verwenden\",\n      \"reload\": \"\",\n      \"hint\": \"Vereinfachte Solver in letzten Schritten verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use text inputs\",\n      \"localized\": \"Texteingaben verwenden\",\n      \"reload\": \"\",\n      \"hint\": \"Texteingaben verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"user\",\n      \"localized\": \"Benutzer\",\n      \"reload\": \"\",\n      \"hint\": \"Benutzer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"username\",\n      \"localized\": \"Benutzername\",\n      \"reload\": \"\",\n      \"hint\": \"Benutzername\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"v_prediction\",\n      \"localized\": \"v_prediction\",\n      \"reload\": \"\",\n      \"hint\": \"v_prediction\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae enabled\",\n      \"localized\": \"VAE aktiviert\",\n      \"reload\": \"\",\n      \"hint\": \"VAE aktiviert\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae sliced encode\",\n      \"localized\": \"VAE geschnittene Kodierung\",\n      \"reload\": \"\",\n      \"hint\": \"VAE geschnittene Kodierung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae swap size\",\n      \"localized\": \"VAE Auslagerungsgröße\",\n      \"reload\": \"\",\n      \"hint\": \"VAE Auslagerungsgröße\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae tile overlap\",\n      \"localized\": \"VAE Kachelüberlappung\",\n      \"reload\": \"\",\n      \"hint\": \"VAE Kachelüberlappung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae tile size\",\n      \"localized\": \"VAE Kachelgröße\",\n      \"reload\": \"\",\n      \"hint\": \"VAE Kachelgröße\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vary_coeff\",\n      \"localized\": \"vary_coeff\",\n      \"reload\": \"\",\n      \"hint\": \"vary_coeff\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vdm solver\",\n      \"localized\": \"VDM Solver\",\n      \"reload\": \"\",\n      \"hint\": \"VDM Solver\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"version\",\n      \"localized\": \"Version\",\n      \"reload\": \"\",\n      \"hint\": \"Version\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vgen params\",\n      \"localized\": \"VGen Parameter\",\n      \"reload\": \"\",\n      \"hint\": \"VGen Parameter\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vibrance\",\n      \"localized\": \"Leuchtkraft\",\n      \"reload\": \"\",\n      \"hint\": \"Leuchtkraft\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"video file\",\n      \"localized\": \"Videodatei\",\n      \"reload\": \"\",\n      \"hint\": \"Videodatei\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"video type\",\n      \"localized\": \"Videotyp\",\n      \"reload\": \"\",\n      \"hint\": \"Videotyp\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm\",\n      \"localized\": \"VLM\",\n      \"reload\": \"\",\n      \"hint\": \"VLM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm model\",\n      \"localized\": \"VLM-Modell\",\n      \"reload\": \"\",\n      \"hint\": \"VLM-Modell\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: default model\",\n      \"localized\": \"VLM: Standardmodell\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: Standardmodell\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: default prompt\",\n      \"localized\": \"VLM: Standard-Prompt\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: Standard-Prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: max length\",\n      \"localized\": \"VLM: Maximale Länge\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: Maximale Länge\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: num beams\",\n      \"localized\": \"VLM: Anzahl Strahlen\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: Anzahl Strahlen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: top-k\",\n      \"localized\": \"VLM: Top-K\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: Top-K\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: top-p\",\n      \"localized\": \"VLM: Top-P\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: Top-P\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: use sample method\",\n      \"localized\": \"VLM: Abtastmethode verwenden\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: Abtastmethode verwenden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"warmth\",\n      \"localized\": \"Wärme\",\n      \"reload\": \"\",\n      \"hint\": \"Wärme\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"webp lossless compression\",\n      \"localized\": \"WebP verlustfreie Komprimierung\",\n      \"reload\": \"\",\n      \"hint\": \"WebP verlustfreie Komprimierung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"weight\",\n      \"localized\": \"Gewicht\",\n      \"reload\": \"\",\n      \"hint\": \"Gewicht\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width  after\",\n      \"localized\": \"Breite  danach\",\n      \"reload\": \"\",\n      \"hint\": \"Breite  danach\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width  before\",\n      \"localized\": \"Breite  davor\",\n      \"reload\": \"\",\n      \"hint\": \"Breite  davor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width  mask\",\n      \"localized\": \"Breite  Maske\",\n      \"reload\": \"\",\n      \"hint\": \"Breite  Maske\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"wiki\",\n      \"localized\": \"Wiki\",\n      \"reload\": \"\",\n      \"hint\": \"Wiki\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"wildcards\",\n      \"localized\": \"Platzhalter\",\n      \"reload\": \"\",\n      \"hint\": \"Platzhalter\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x components\",\n      \"localized\": \"X-Komponenten\",\n      \"reload\": \"\",\n      \"hint\": \"X-Komponenten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x overlap\",\n      \"localized\": \"X-Überlappung\",\n      \"reload\": \"\",\n      \"hint\": \"X-Überlappung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x type\",\n      \"localized\": \"X-Typ\",\n      \"reload\": \"\",\n      \"hint\": \"X-Typ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x-axis tile overlap\",\n      \"localized\": \"X-Achsen-Kachelüberlappung\",\n      \"reload\": \"\",\n      \"hint\": \"X-Achsen-Kachelüberlappung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x-axis tiles\",\n      \"localized\": \"X-Achsen-Kacheln\",\n      \"reload\": \"\",\n      \"hint\": \"X-Achsen-Kacheln\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xhinker\",\n      \"localized\": \"xhinker\",\n      \"reload\": \"\",\n      \"hint\": \"xhinker\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xs\",\n      \"localized\": \"xs\",\n      \"reload\": \"\",\n      \"hint\": \"xs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y components\",\n      \"localized\": \"Y-Komponenten\",\n      \"reload\": \"\",\n      \"hint\": \"Y-Komponenten\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y overlap\",\n      \"localized\": \"Y-Überlappung\",\n      \"reload\": \"\",\n      \"hint\": \"Y-Überlappung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y type\",\n      \"localized\": \"Y-Typ\",\n      \"reload\": \"\",\n      \"hint\": \"Y-Typ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y-axis tile overlap\",\n      \"localized\": \"Y-Achsen-Kachelüberlappung\",\n      \"reload\": \"\",\n      \"hint\": \"Y-Achsen-Kachelüberlappung\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y-axis tiles\",\n      \"localized\": \"Y-Achsen-Kacheln\",\n      \"reload\": \"\",\n      \"hint\": \"Y-Achsen-Kacheln\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"z type\",\n      \"localized\": \"Z-Typ\",\n      \"reload\": \"\",\n      \"hint\": \"Z-Typ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"zero\",\n      \"localized\": \"Null\",\n      \"reload\": \"\",\n      \"hint\": \"Null\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"zoe depth\",\n      \"localized\": \"Zoe Tiefe\",\n      \"reload\": \"\",\n      \"hint\": \"Zoe Tiefe\"\n    }\n  ]\n}\n"
  },
  {
    "path": "html/locale_en.json",
    "content": "{\"icons\": [\n  {\"id\":\"\",\"label\":\"🎲️\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Use random seed\"},\n  {\"id\":\"\",\"label\":\"🔄\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Reset values\"},\n  {\"id\":\"\",\"label\":\"⬆️\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Upload image\"},\n  {\"id\":\"\",\"label\":\"⬅️\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Reuse image\"},\n  {\"id\":\"\",\"label\":\"⇅\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Swap values\"},\n  {\"id\":\"\",\"label\":\"⇨\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Apply preset to Manual Block Merge tab\"},\n  {\"id\":\"\",\"label\":\"🕮\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Save parameters from last generated image as style template\"},\n  {\"id\":\"\",\"label\":\"⇕\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Sort by: Name asc/desc, Size largest/smallest, Time newest/oldest\"},\n  {\"id\":\"\",\"label\":\"⟲\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Refresh\"},\n  {\"id\":\"\",\"label\":\"✕\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Close\"},\n  {\"id\":\"\",\"label\":\"⊜\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Fill\"},\n  {\"id\":\"\",\"label\":\"※\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Load model as refiner model when selected, otherwise load as base model\"},\n  {\"id\":\"\",\"label\":\"🔎︎\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Scan CivitAI for missing metadata and previews\"},\n  {\"id\":\"\",\"label\":\"☲\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Change view type\"},\n  {\"id\":\"\",\"label\":\"⊗\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Reset values\"},\n  {\"id\":\"\",\"label\":\"📐\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Measure\"},\n  {\"id\":\"\",\"label\":\"🔍\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Search\"},\n  {\"id\":\"\",\"label\":\"🖌️\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"LaMa remove selected object from image\"},\n  {\"id\":\"\",\"label\":\"🖼️\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Show preview\"},\n  {\"id\":\"\",\"label\":\"\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Interrogate image\"},\n  {\"id\":\"\",\"label\":\"⁜\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Cycle image fit method\"},\n  {\"id\":\"\",\"label\":\"↶\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Apply selected style to prompt\"},\n  {\"id\":\"\",\"label\":\"↷\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Save current prompt to style\"},\n  {\"id\":\"\",\"label\":\"\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Sort by name, ascending\"},\n  {\"id\":\"\",\"label\":\"\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Sort by name, descending\"},\n  {\"id\":\"\",\"label\":\"\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Sort by size, ascending\"},\n  {\"id\":\"\",\"label\":\"\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Sort by size, descending\"},\n  {\"id\":\"\",\"label\":\"\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Sort by resolution, ascending\"},\n  {\"id\":\"\",\"label\":\"\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Sort by resolution, descending\"},\n  {\"id\":\"\",\"label\":\"\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Sort by time, ascending\"},\n  {\"id\":\"\",\"label\":\"\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Sort by time, descending\"}\n],\n\"main\": [\n  {\"id\":\"\",\"label\":\"Prompt\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Describe image you want to generate\"},\n  {\"id\":\"\",\"label\":\"VLM: Prompt\",\"localized\":\"Prompt\",\"reload\":\"\",\"hint\":\"Enter your prompt/question here.\"},\n  {\"id\":\"\",\"label\":\"VLM: Advanced Options\",\"localized\":\"Advanced Options\",\"reload\":\"\",\"hint\":\"Advanced configuration options for the VLM model.\"},\n  {\"id\":\"\",\"label\":\"VLM: Batch Caption\",\"localized\":\"Batch Caption\",\"reload\":\"\",\"hint\":\"Process multiple images in a batch using VLM.\"},\n  {\"id\":\"\",\"label\":\"CLiP: Advanced Options\",\"localized\":\"Advanced Options\",\"reload\":\"\",\"hint\":\"Advanced configuration options for CLiP interrogation.\"},\n  {\"id\":\"\",\"label\":\"CLiP: Batch Interrogate\",\"localized\":\"Batch Interrogate\",\"reload\":\"\",\"hint\":\"Process multiple images in a batch using CLiP.\"},\n  {\"id\":\"\",\"label\":\"Task\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Changes which task the model will perform. Regular text prompts can be used when the task is set to <b>Use Prompt</b>.<br>When other options are selected, see the hint text inside an empty <b>Prompt</b> field for guidance.\"},\n  {\"id\":\"\",\"label\":\"Prefill text\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Pre-fills the start of the model's response to guide its output format or content by forcing it to continue the prefill text.<br>Prefill is filtered out and does not appear in the final response.<br><br>Leave empty to let the model generate its own response from scratch.\"},\n  {\"id\":\"\",\"label\":\"Start\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Start\"},\n  {\"id\":\"\",\"label\":\"End\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"End\"},\n  {\"id\":\"\",\"label\":\"Core\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Core settings\"},\n  {\"id\":\"\",\"label\":\"System prompt\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"System prompt controls behavior of the LLM. Processed first and persists throughout conversation. Has highest priority weighting and is always appended at the beginning of the sequence.<br><br>Use for: Response formatting rules, role definition, style.\"},\n  {\"id\":\"\",\"label\":\"Negative prompt\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Describe what you don't want to see in generated image\"},\n  {\"id\":\"\",\"label\":\"Text\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Create image from text\"},\n  {\"id\":\"\",\"label\":\"Image\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Create image from image\"},\n  {\"id\":\"\",\"label\":\"Control\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Create image with full guidance\"},\n  {\"id\":\"\",\"label\":\"Images\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Create images<br>Unified interface<br>Supports T2I and I2I<br>With optional control guidance\"},\n  {\"id\":\"\",\"label\":\"T2I\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Create image from text<br>Legacy interface that mimics original text-to-image interface and behavior\"},\n  {\"id\":\"\",\"label\":\"I2I\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Create image from image<br>Legacy interface that mimics original image-to-image interface and behavior\"},\n  {\"id\":\"\",\"label\":\"Process\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Process existing image<br>Can be used to upscale images, remove backgrounds, obfuscate NSFW content, apply various filters and effects\"},\n  {\"id\":\"\",\"label\":\"Caption\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Analyze existing images and create text descriptions\"},\n  {\"id\":\"\",\"label\":\"clip: min length\",\"localized\":\"Min Length\",\"reload\":\"\",\"hint\":\"Minimum number of tokens in the generated caption.\"},\n  {\"id\":\"\",\"label\":\"clip: max length\",\"localized\":\"Max Length\",\"reload\":\"\",\"hint\":\"Maximum number of tokens in the generated caption.\"},\n  {\"id\":\"\",\"label\":\"clip: chunk size\",\"localized\":\"Chunk Size\",\"reload\":\"\",\"hint\":\"Batch size for processing description candidates (flavors). Higher values speed up interrogation but increase VRAM usage.\"},\n  {\"id\":\"\",\"label\":\"clip: min flavors\",\"localized\":\"Min Flavors\",\"reload\":\"\",\"hint\":\"Minimum number of descriptive tags (flavors) to keep in the final prompt.\"},\n  {\"id\":\"\",\"label\":\"clip: max flavors\",\"localized\":\"Max Flavors\",\"reload\":\"\",\"hint\":\"Maximum number of descriptive tags (flavors) to keep in the final prompt.\"},\n  {\"id\":\"\",\"label\":\"clip: intermediates\",\"localized\":\"Intermediates\",\"reload\":\"\",\"hint\":\"Size of the intermediate candidate pool when matching image features to descriptive tags (flavours). From this pool, the final tags are selected based on Min/Max Flavors. Higher values may improve quality but are slower.\"},\n  {\"id\":\"\",\"label\":\"clip: num beams\",\"localized\":\"CLiP Num Beams\",\"reload\":\"\",\"hint\":\"Number of beams for beam search during caption generation. Higher values search more possibilities but are slower.\"},\n  {\"id\":\"\",\"label\":\"Interrogate\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Run interrogate to get description of your image\"},\n  {\"id\":\"\",\"label\":\"Models\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Download, convert or merge your models and manage models metadata\"},\n  {\"id\":\"\",\"label\":\"Sampler\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Settings related to sampler and seed selection and configuration. Samplers guide the process of turning noise into an image over multiple steps.\"},\n  {\"id\":\"\",\"label\":\"Agent Scheduler\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Enqueue your generate requests and run them in the background\"},\n  {\"id\":\"\",\"label\":\"AgentScheduler\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Enqueue your generate requests and run them in the background\"},\n  {\"id\":\"\",\"label\":\"System\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"System settings and information\"},\n  {\"id\":\"\",\"label\":\"System Info\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"System information\"},\n  {\"id\":\"\",\"label\":\"Settings\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Application settings\"},\n  {\"id\":\"\",\"label\":\"Script\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Additional scripts to be used\"},\n  {\"id\":\"\",\"label\":\"Generate\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Start processing\"},\n  {\"id\":\"\",\"label\":\"Generate forever\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Start processing and continue until cancelled\"},\n  {\"id\":\"\",\"label\":\"Enqueue\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Add task to background queue in Agent Scheduler\"},\n  {\"id\":\"\",\"label\":\"Reprocess\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Reprocess previous generations using different parameters\"},\n  {\"id\":\"\",\"label\":\"Stop\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Stop processing\"},\n  {\"id\":\"\",\"label\":\"Skip\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Stop processing current job and continue processing\"},\n  {\"id\":\"\",\"label\":\"Pause\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Pause processing\"},\n  {\"id\":\"\",\"label\":\"Restore\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Restore parameters from current prompt or last known generated image\"},\n  {\"id\":\"\",\"label\":\"Clear\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Clear prompts\"},\n  {\"id\":\"\",\"label\":\"Networks\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Networks user interface\"},\n  {\"id\":\"\",\"label\":\"Default strength\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"When adding extra network such as Lora to prompt, use this multiplier for it\"},\n  {\"id\":\"\",\"label\":\"Upscale\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Upscale image\"},\n  {\"id\":\"\",\"label\":\"Model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Base model\"},\n  {\"id\":\"\",\"label\":\"Prompts\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Image prompt and negative prompt\"},\n  {\"id\":\"\",\"label\":\"Base\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Base settings used to run image generation\"},\n  {\"id\":\"\",\"label\":\"Style\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Additional styles to be applied on selected generation parameters\"},\n  {\"id\":\"\",\"label\":\"Styles\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Additional styles to be applied on selected generation parameters\"},\n  {\"id\":\"\",\"label\":\"Lora\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"LoRA: Low-Rank Adaptation. Fine-tuned model that is applied on top of a loaded model\"},\n  {\"id\":\"\",\"label\":\"Embedding\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Textual inversion embedding is a trained embedded information about the subject\"},\n  {\"id\":\"\",\"label\":\"Hypernetwork\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Small trained neural network that modifies behavior of the loaded model\"},\n  {\"id\":\"\",\"label\":\"VLM Caption\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Analyze image using vision langugage model\"},\n  {\"id\":\"\",\"label\":\"OpenCLiP\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Analyze image using CLiP model via OpenCLiP\"},\n  {\"id\":\"\",\"label\":\"VAE\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Variational Auto Encoder: model used to run image decode at the end of generate\"},\n  {\"id\":\"\",\"label\":\"History\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"List of previous generations that can be further reprocessed\"},\n  {\"id\":\"\",\"label\":\"UI disable variable aspect ratio\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"When disabled, all thumbnails appear as squared images\"},\n  {\"id\":\"\",\"label\":\"Build info on first access\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Prevents server from building EN page on server startup and instead build it when requested\"},\n  {\"id\":\"\",\"label\":\"Show reference styles\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Show or hide build-it styles\"},\n  {\"id\":\"\",\"label\":\"LoRA load using Diffusers method\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Alternative method uses diffusers built-in LoRA capabilities instead of native SD.Next implementation (may reduce LoRA compatibility)\"},\n  {\"id\":\"\",\"label\":\"LoRA native fuse with model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Merge LoRA into the model for lower memory usage.<br><br><b style=\\\"color: #ef4444\\\">Warning:</b> After removing or switching a LoRA, you may still see its style in generated images. To get a clean model, reload it from the model selector.\"},\n  {\"id\":\"\",\"label\":\"LoRA memory cache\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"How many LoRAs to keep in network for future use before requiring reloading from storage\"},\n  {\"id\":\"\",\"label\":\"LoRA force reload always\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Forces LoRA networks to reload from storage on every generation, even if already cached.<br>Useful for debugging or when LoRA files are being modified externally.<br>Disable for normal use to benefit from caching.\"},\n  {\"id\":\"\",\"label\":\"LoRA diffusers fuse with model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Merge LoRA into the model for lower memory usage and torch.compile compatibility.<br><br><b style=\\\"color: #ef4444\\\">Warning:</b> After removing or switching a LoRA, you may still see its style in generated images. To get a clean model, reload it from the model selector.\"},\n  {\"id\":\"\",\"label\":\"LoRA precision when quantized\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"When using a BnB 4-bit model, LoRA is applied by decompressing the weights, adding the LoRA, then recompressing. This controls the format used for recompression.<br><br>Only affects BnB 4-bit models. SDNQ models keep their original format.\"},\n  {\"id\":\"\",\"label\":\"Local\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Models that are downlaoded and ready to use\"},\n  {\"id\":\"\",\"label\":\"Gallery\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Image gallery\"},\n  {\"id\":\"\",\"label\":\"Reference\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"List of reference models that can be automatically downloaded on first use\"},\n  {\"id\":\"\",\"label\":\"Samplers\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Samplers/schedulers advanced settings\"},\n  {\"id\":\"\",\"label\":\"Seed\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Initial seed and variation\"},\n  {\"id\":\"\",\"label\":\"Advanced\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Advanced settings used to run image generation\"},\n  {\"id\":\"\",\"label\":\"Scripts\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Enable additional features by using selected scripts during generate process\"},\n  {\"id\":\"\",\"label\":\"Corrections\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Control image color/sharpen/brighness corrections during generate process\"},\n  {\"id\":\"\",\"label\":\"Parameters\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Base parameters used during image generation\"},\n  {\"id\":\"\",\"label\":\"Refine\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Refine runs additonal processing after initial processing has completed and can be used to upscale image and run optionally process it again to increase quality and details\"},\n  {\"id\":\"\",\"label\":\"Detailer\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Detailer runs additional generate at higher resolution for a detected objects\"},\n  {\"id\":\"\",\"label\":\"Resize\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Image resizing, can be using fixed resolution on based on scale\"},\n  {\"id\":\"\",\"label\":\"Batch\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Batch processing settings\"},\n  {\"id\":\"\",\"label\":\"Denoise\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Denoising settings. Higher denoise means that more of existing image content is allowed to change during generate\"},\n  {\"id\":\"\",\"label\":\"Mask\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Image masking and mask options\"},\n  {\"id\":\"\",\"label\":\"Input\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Selection of input media\"},\n  {\"id\":\"\",\"label\":\"Video\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Create videos using different methods<br>Supports text-to-image, image-to-image first-last-frame, etc.\"},\n  {\"id\":\"\",\"label\":\"Control elements\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Control elements are advanced models that can guide generation towards desired outcome\"},\n  {\"id\":\"\",\"label\":\"IP adapter\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Guide generation towards desired outcome using IP adapters plugin models\"},\n  {\"id\":\"\",\"label\":\"IP adapters\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"IP adapters are plugin models that can guide generation towards desired outcome\"},\n  {\"id\":\"\",\"label\":\"Extensions\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Application extensions\"},\n  {\"id\":\"\",\"label\":\"XYZ Grid\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"XYZ grid is a powerful module that create image grid based on varying multiple generation parameters\"},\n  {\"id\":\"\",\"label\":\"Cover\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"cover full area\"},\n  {\"id\":\"\",\"label\":\"Inline\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"inline with all additional elements (scrollable)\"},\n  {\"id\":\"\",\"label\":\"Sidebar\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"sidebar on the right side of the screen\"},\n  {\"id\":\"\",\"label\":\"SD15\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"StableDiffusion 1.5\"},\n  {\"id\":\"\",\"label\":\"SD21\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"StableDiffusion 2.1\"},\n  {\"id\":\"\",\"label\":\"SD35\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"StableDiffusion 3.5\"},\n  {\"id\":\"\",\"label\":\"SDXL\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"StableDiffusion XL\"},\n  {\"id\":\"\",\"label\":\"SC\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"StableCascade\"},\n  {\"id\":\"\",\"label\":\"Flux\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"FLUX.1\"},\n  {\"id\":\"\",\"label\":\"Show\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Show image location\"},\n  {\"id\":\"\",\"label\":\"Save\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Save image\"},\n  {\"id\":\"\",\"label\":\"Delete\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Delete image\"},\n  {\"id\":\"\",\"label\":\"Replace\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Replace image\"},\n  {\"id\":\"\",\"label\":\"List\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"List all available models\"},\n  {\"id\":\"\",\"label\":\"Metadata\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Update metadata for all available models\"},\n  {\"id\":\"\",\"label\":\"Loader\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Allows to manually assemble a diffusion model from individual modules\"},\n  {\"id\":\"\",\"label\":\"➠ Text\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Transfer image to text interface\"},\n  {\"id\":\"\",\"label\":\"➠ Image\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Transfer image to image interface\"},\n  {\"id\":\"\",\"label\":\"➠ Inpaint\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Transfer image to inpaint interface\"},\n  {\"id\":\"\",\"label\":\"➠ Sketch\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Transfer image to sketch interface\"},\n  {\"id\":\"\",\"label\":\"➠ Composite\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Transfer image to inpaint sketch interface\"},\n  {\"id\":\"\",\"label\":\"➠ Process\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Transfer image to process interface\"},\n  {\"id\":\"\",\"label\":\"➠ Control\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Transfer image to control interface\"},\n  {\"id\":\"\",\"label\":\"➠ Caption\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Transfer image to caption interface\"}\n],\n\"generate\": [\n  {\"id\":\"\",\"label\":\"Sampling method\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Which algorithm to use to produce the image\"},\n  {\"id\":\"\",\"label\":\"Steps\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"How many times to improve the generated image iteratively; higher values take longer; very low values can produce bad results\"},\n  {\"id\":\"\",\"label\":\"Tiling\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Produce an image that can be tiled\"},\n  {\"id\":\"\",\"label\":\"Full quality\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Use full quality VAE to decode latent samples\"},\n  {\"id\":\"\",\"label\":\"HiDiffusion\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"HiDiffusion allows creation of high-resolution images using your standard models without duplicates/distortions and improved performance\"},\n  {\"id\":\"\",\"label\":\"HDR Clamp\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Adjusts the level of nonsensical details by pruning values that deviate significantly from the distribution mean. It is particularly useful for enhancing generation at higher guidance scales, identifying outliers early in the process and applying mathematical adjustments based on the Range (Boundary) and Threshold settings. Think of it as setting the range within which you want your image values to be, and adjusting the threshold determines which values should be brought back into that range\"},\n  {\"id\":\"\",\"label\":\"HDR Maximize\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Calculates a 'normalization factor' by dividing the maximum tensor value by the specified range multiplied by 4. This factor is then used to shift the channels within the given boundary, ensuring maximum dynamic range for subsequent processing. The objective is to optimize dynamic range for external applications like Photoshop, particularly for adjusting levels, contrast, and brightness\"},\n  {\"id\":\"\",\"label\":\"Enable refine pass\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Use a similar process as image to image to upscale and/or add detail to the final image. Optionally uses refiner model to enhance image details.\"},\n  {\"id\":\"\",\"label\":\"Enable detailer pass\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Detect target objects such as face and reprocess it at higher resolution\"},\n  {\"id\":\"\",\"label\":\"Include detections\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Include original image with detected areas marked\"},\n  {\"id\":\"\",\"label\":\"Sort detections\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Sort detected areas by from left to right instead of detection score\"},\n  {\"id\":\"\",\"label\":\"Denoising strength\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Determines how little respect the algorithm should have for image's content. At 0, nothing will change, and at 1 you'll get an unrelated image. With values below 1.0, processing will take less steps than the Sampling Steps slider specifies\"},\n  {\"id\":\"\",\"label\":\"Denoise start\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Override denoise strength by stating how early base model should finish and when refiner should start. Only applicable to refiner usage. If set to 0 or 1, denoising strength will be used\"},\n  {\"id\":\"\",\"label\":\"Hires steps\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Number of sampling steps for upscaled picture. If 0, uses same as for original\"},\n  {\"id\":\"\",\"label\":\"Strength\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Denoising strength of during image operation controls how much of original image is allowed to change during generate\"},\n  {\"id\":\"\",\"label\":\"Upscaler\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Which pre-trained model to use for the upscaling process.\"},\n  {\"id\":\"\",\"label\":\"Force Hires\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Hires runs automatically when Latent upscale is selected, but its skipped when using non-latent upscalers. Enable force hires to run hires with non-latent upscalers\"},\n  {\"id\":\"\",\"label\":\"Resize width\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Resizes image to this width. If 0, width is inferred from either of two nearby sliders\"},\n  {\"id\":\"\",\"label\":\"Resize height\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Resizes image to this height. If 0, height is inferred from either of two nearby sliders\"},\n  {\"id\":\"\",\"label\":\"Refine sampler\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Use specific sampler as fallback sampler if primary is not supported for specific operation\"},\n  {\"id\":\"\",\"label\":\"Refiner start\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Refiner pass will start when base model is this much complete (set to larger than 0 and smaller than 1 to run after full base model run)\"},\n  {\"id\":\"\",\"label\":\"Refiner steps\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Number of steps to use for refiner pass\"},\n  {\"id\":\"\",\"label\":\"Refine guidance\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"CFG scale used for refiner pass\"},\n  {\"id\":\"\",\"label\":\"Input media\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Add input image to be used for image-to-image, inpaint or control processing\"},\n  {\"id\":\"\",\"label\":\"Control media\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Add input image as separate initialization image for control processing\"},\n  {\"id\":\"\",\"label\":\"Processed preview\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Display results from pre-processing of input images before actual generate\"},\n  {\"id\":\"\",\"label\":\"Attention guidance\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"CFG scale used for with PAG: Perturbed-Attention Guidance\"},\n  {\"id\":\"\",\"label\":\"Adaptive scaling\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Adaptive modifier for attention guidance scale\"},\n  {\"id\":\"\",\"label\":\"Rescale guidance\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Rescale CFG generated noise to avoid overexposed images\"},\n  {\"id\":\"\",\"label\":\"Refine Prompt\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Prompt used for both second encoder in base model (if it exists) and for refiner pass (if enabled)\"},\n  {\"id\":\"\",\"label\":\"Refine negative prompt\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Negative prompt used for both second encoder in base model (if it exists) and for refiner pass (if enabled)\"},\n  {\"id\":\"\",\"label\":\"Initial\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Set image resolution before processing\"},\n  {\"id\":\"\",\"label\":\"Post\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Resize image after processing\"},\n  {\"id\":\"\",\"label\":\"Width\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Image width\"},\n  {\"id\":\"\",\"label\":\"Height\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Image height\"},\n  {\"id\":\"\",\"label\":\"Batch count\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"How many batches of images to create (has no impact on generation performance or VRAM usage)\"},\n  {\"id\":\"\",\"label\":\"Batch size\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"How many image to create in a single batch (increases generation performance at cost of higher VRAM usage)\"},\n  {\"id\":\"\",\"label\":\"Guidance scale\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Classifier Free Guidance scale: how strongly the image should conform to prompt. Lower values produce more creative results, higher values make it follow the prompt more strictly; recommended values between 5-10\"},\n  {\"id\":\"\",\"label\":\"Guidance rescale\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Rescale guidance to avoid overexposed images at higher guidance values\"},\n  {\"id\":\"\",\"label\":\"Guidance End\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Ends the effect of CFG and PAG early: A value of 1 acts as normal, 0.5 stops guidance at 50% of steps\"},\n  {\"id\":\"\",\"label\":\"Initial seed\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"A value that determines the output of random number generator - if you create an image with same parameters and seed as another image, you'll get the same result\"},\n  {\"id\":\"\",\"label\":\"Variation\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Second seed to be mixed with primary seed\"},\n  {\"id\":\"\",\"label\":\"Variation strength\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"How strong of a variation to produce. At 0, there will be no effect. At 1, you will get the complete picture with variation seed (except for ancestral samplers, where you will just get something)\"},\n  {\"id\":\"\",\"label\":\"Resize method\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Method used to resize the image: can be simple resize, upscaling model, latent resize or asymmetric decode\"},\n  {\"id\":\"\",\"label\":\"Resize seed from width\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Make an attempt to produce a picture similar to what would have been produced with same seed at specified resolution\"},\n  {\"id\":\"\",\"label\":\"Resize seed from height\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Make an attempt to produce a picture similar to what would have been produced with same seed at specified resolution\"},\n  {\"id\":\"\",\"label\":\"Fixed\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Resize image to target resolution. Unless height and width match, you will get incorrect aspect ratio\"},\n  {\"id\":\"\",\"label\":\"scale\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Resize image to target scale. If resize fixed width/height are set this option is ignored\"},\n  {\"id\":\"\",\"label\":\"Crop\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Resize the image so that entirety of target resolution is filled with the image. Crop parts that stick out\"},\n  {\"id\":\"\",\"label\":\"Fill\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Resize the image so that entirety of image is inside target resolution. Fill empty space with image's colors\"},\n  {\"id\":\"\",\"label\":\"Mask blur\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"How much to blur the mask before processing, in pixels\"},\n  {\"id\":\"\",\"label\":\"Latent noise\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"fill it with latent space noise\"},\n  {\"id\":\"\",\"label\":\"Latent nothing\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"fill it with latent space zeroes\"},\n  {\"id\":\"\",\"label\":\"Adapters\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Settings related to IP Adapters\"},\n  {\"id\":\"\",\"label\":\"Inputs\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Settings related to Input images\"},\n  {\"id\":\"\",\"label\":\"Control input type\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Choose which input image is used for control process\"},\n  {\"id\":\"\",\"label\":\"Video format\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Format and codec of output video\"},\n  {\"id\":\"\",\"label\":\"Size & Batch\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Image size and batch\"},\n  {\"id\":\"\",\"label\":\"Sigma adjust\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Adjust sampler sigma value\"},\n  {\"id\":\"\",\"label\":\"Adjust start\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Starting step when sigma adjust occurs\"},\n  {\"id\":\"\",\"label\":\"Adjust end\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Ending step when sigma adjust occurs\"},\n  {\"id\":\"\",\"label\":\"Options\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Options\"},\n  {\"id\":\"\",\"label\":\"ControlNet\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"ControlNet is an advanced guidance model\"},\n  {\"id\":\"\",\"label\":\"Processor\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Processor type to use to preprocess image used for ControlNet\"},\n  {\"id\":\"\",\"label\":\"Renoise\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Apply additional noise during detailing\"},\n  {\"id\":\"\",\"label\":\"Renoise end\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Final step when renoise is applied\"},\n  {\"id\":\"\",\"label\":\"Merge detailers\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Merge results from multiple detailers into single mask before running detailing process\"},\n  {\"id\":\"\",\"label\":\"Inpaint mode\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Inpaint mode\"},\n  {\"id\":\"\",\"label\":\"Inpaint area\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Inpaint area\"},\n  {\"id\":\"\",\"label\":\"Texture tiling\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Apply seamless tiling to generated image so it can be used as a texture\"},\n  {\"id\":\"\",\"label\":\"Override\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Override settings that can change server behavior and are typically applied from imported image metadata\"},\n  {\"id\":\"\",\"label\":\"VAE type\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Choose if you want to run full VAE, reduced quality VAE or attempt to use remote VAE service\"},\n  {\"id\":\"\",\"label\":\"Guess Mode\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Removes the requirement to supply a prompt to a ControlNet. It forces Controlnet encoder to do it's 'best guess' based on the contents of the input control map.\"},\n  {\"id\":\"\",\"label\":\"Control Only\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"This uses only the Control input below as the source for any ControlNet or IP Adapter type tasks based on any of our various options.\"},\n  {\"id\":\"\",\"label\":\"Init Image Same As Control\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Will additionally treat any image placed into the Control input window as a source for img2img type tasks, an image to modify for example.\"},\n  {\"id\":\"\",\"label\":\"Separate Init Image\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Creates an additional window next to Control input labeled Init input, so you can have a separate image for both Control operations and an init source.\"},\n  {\"id\":\"\",\"label\":\"Override settings\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"If generation parameters deviate from your system settings override settings populated with those settings to override your system configuration for this workflow\"},\n  {\"id\":\"\",\"label\":\"sigma method\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Controls how noise levels (sigmas) are distributed across diffusion steps. Options:<br>- default: the model default<br>- karras: smoother noise schedule, higher quality with fewer steps<br>- beta: based on beta schedule values<br>- exponential: exponential decay of noise<br>- lambdas: experimental, balances signal-to-noise<br>- flowmatch: tuned for flow-matching models\"},\n  {\"id\":\"\",\"label\":\"timestep spacing\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Determines how timesteps are spaced across the diffusion process. Options:<br>- default: the model default<br>- leading: creates evenly spaced steps<br>- linspace: includes the first and last steps and evenly selects the remaining intermediate steps<br>- trailing: only includes the last step and evenly selects the remaining intermediate steps starting from the end\"},\n  {\"id\":\"\",\"label\":\"beta schedule\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Defines how beta (noise strength per step) grows. Options:<br>- default: the model default<br>- linear: evenly decays noise per step<br>- scaled: squared version of linear, used only by Stable Diffusion<br>- cosine: smoother decay, often better results with fewer steps<br>- sigmoid: sharp transition, experimental\"},\n  {\"id\":\"\",\"label\":\"prediction method\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Defines what the model predicts at each step. Options:<br>- default: the model default<br>- epsilon: noise (most common for Stable Diffusion)<br>- sample: direct denoised image prediction, also called as x0 prediction<br>- v_prediction: velocity prediction, used by CosXL and NoobAI VPred models<br>- flow_prediction: used with newer flow-matching models like SD3 and Flux\"},\n  {\"id\":\"\",\"label\":\"sampler order\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Order of solver updates in the sampler. Higher order improves stability/accuracy but increases compute cost.\"},\n  {\"id\":\"\",\"label\":\"flow shift\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Shift value for flowmatching models. Controls the distribution of denoising steps.<br><br>Values:<br>- >1.0: allocate more steps to early denoising (better structure)<br>-<1.0: allocate more steps to late denoising (better fine details)<br>- 1.0: balanced schedule<br><br>Most flowmatching models use the value of 3 as default. Effectively inactive if dynamic shift is enabled.\"},\n  {\"id\":\"\",\"label\":\"dynamic\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Dynamic shifting automatically adjusts the denoising schedule based on your image resolution.<br><br>The scheduler interpolates between base_shift and max_shift based on actual image resolution.<br><br>Enabling disables static Flow shift.\"},\n  {\"id\":\"\",\"label\":\"base shift\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Minimum shift value for low resolutions when using dynamic shifting.\"},\n  {\"id\":\"\",\"label\":\"max shift\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Maximum shift value for high resolutions when using dynamic shifting.\"},\n  {\"id\":\"\",\"label\":\"resize mode\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Defines how the input is resized or adapted in second-pass refinement:<br>- none: no resizing, keep original resolution<br>- fixed: force resize to target resolution (may distort)<br>- crop: center-crop to fit target while keeping aspect ratio<br>- fill: resize to fit and pad empty space with borders<br>- outpaint: extend canvas beyond image borders<br>- context aware: smart resize that blends or adapts surrounding areas\"}\n],\n\"other\": [\n  {\"id\":\"\",\"label\":\"Install\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Install\"},\n  {\"id\":\"\",\"label\":\"Search\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Search\"},\n  {\"id\":\"\",\"label\":\"Sort by\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Sort by\"},\n  {\"id\":\"\",\"label\":\"Nudenet\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Flexible extension that can detect and obfustate nudity in images\"},\n  {\"id\":\"\",\"label\":\"Prompt enhance\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Extension that can use different LLMs to rewrite prompt for improved results\"},\n  {\"id\":\"\",\"label\":\"Enhance now\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Run prompt enhancement using the selected LLM model\"},\n  {\"id\":\"\",\"label\":\"Apply to prompt\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Automatically copy enhanced result to the prompt input box\"},\n  {\"id\":\"\",\"label\":\"Auto enhance\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Automatically enhance prompt before every image generation\"},\n  {\"id\":\"\",\"label\":\"Use vision\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Include input image when enhancing prompt.<br><br>Only available for vision-capable models, marked with \\uf06e icon.\"},\n  {\"id\":\"\",\"label\":\"LLM model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Select the language model to use for prompt enhancement.<br><br>Models supporting vision are marked with \\uf06e icon.<br>Models supporting thinking mode are marked with \\uf0eb icon.\"},\n  {\"id\":\"\",\"label\":\"Model repo\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"HuggingFace repository ID for the model\"},\n  {\"id\":\"\",\"label\":\"Model gguf\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Optional GGUF quantized model repository on HuggingFace\"},\n  {\"id\":\"\",\"label\":\"Model type\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Optional GGUF model quantization type\"},\n  {\"id\":\"\",\"label\":\"Model file\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Optional specific GGUF model file inside the repository\"},\n  {\"id\":\"\",\"label\":\"Load custom model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Load a custom model with the specified configuration\"},\n  {\"id\":\"\",\"label\":\"NSFW allowed\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Allow the model to generate adult content in enhanced prompts\"},\n  {\"id\":\"\",\"label\":\"Prompt prefix\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Text prepended at the beginning of the enhanced prompt result.<br><br>Useful for adding prompt elements which need to be copied to the image prompt unchanged, like quality tags 'masterpiece, best quality' or artist names, which would otherwise be rewritten by the LLM.\"},\n  {\"id\":\"\",\"label\":\"Prompt suffix\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Text appended to the end of the enhanced prompt result.<br><br>Useful for adding prompt elements which need to be copied to the image prompt unchanged, which would otherwise be rewritten by the LLM.\"},\n  {\"id\":\"\",\"label\":\"Enhanced prompt\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"The enhanced prompt output from the LLM\"},\n  {\"id\":\"\",\"label\":\"Set prompt\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Copy the enhanced prompt to the main prompt input\"},\n  {\"id\":\"\",\"label\":\"Manage extensions\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Manage extensions\"},\n  {\"id\":\"\",\"label\":\"Manual install\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Manually install extension\"},\n  {\"id\":\"\",\"label\":\"Extension GIT repository URL\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Specify extension repository URL on GitHub\"},\n  {\"id\":\"\",\"label\":\"Specific branch name\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Specify extension branch name, leave blank for default\"},\n  {\"id\":\"\",\"label\":\"Local directory name\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Directory where to install extension, leave blank for default\"},\n  {\"id\":\"\",\"label\":\"Refresh extension list\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Refresh list of available extensions\"},\n  {\"id\":\"\",\"label\":\"Update all installed\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Update installed extensions to their latest available version\"},\n  {\"id\":\"\",\"label\":\"Apply changes\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Apply all changes and restart server\"},\n  {\"id\":\"\",\"label\":\"Uninstall\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"uninstall this extension\"},\n  {\"id\":\"\",\"label\":\"User interface\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Review and set user interface preferences\"},\n  {\"id\":\"\",\"label\":\"Set UI defaults\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Set current values as default values for the user interface\"},\n  {\"id\":\"\",\"label\":\"Benchmark\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Run benchmarks\"},\n  {\"id\":\"\",\"label\":\"Models & Networks\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"View lists of all available models and networks\"},\n  {\"id\":\"\",\"label\":\"Restore UI defaults\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Restore default user interface values\"},\n  {\"id\":\"\",\"label\":\"Detailer classes\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Specify specific classes to use if selected detailer model is a multi-class model\"},\n  {\"id\":\"\",\"label\":\"Detailer models\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Select detection models to use for detailing\"},\n  {\"id\":\"\",\"label\":\"Detailer negative prompt\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Use separate negative prompt for detailer. If not present, it will use primary negative prompt\"},\n  {\"id\":\"\",\"label\":\"Detailer prompt\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Use separate prompt for detailer. If not present, it will use primary prompt\"},\n  {\"id\":\"\",\"label\":\"Detailer steps\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Number of steps to run for detailer process\"},\n  {\"id\":\"\",\"label\":\"Detailer strength\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Denoising strength of detailer process\"},\n  {\"id\":\"\",\"label\":\"Detailer use model augment\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Run detailer detection models at extra precision\"},\n  {\"id\":\"\",\"label\":\"Max detected\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Maximum number of detected objects to run detailer on\"},\n  {\"id\":\"\",\"label\":\"Edge blur\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Blur edge of masked area by this percentage\"},\n  {\"id\":\"\",\"label\":\"Edge padding\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Expand edge of masked area by this percentage\"},\n  {\"id\":\"\",\"label\":\"Min confidence\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Minimum confidence in detected item\"},\n  {\"id\":\"\",\"label\":\"Max overlap\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Maximum overlap between two detected items before one is discarded\"},\n  {\"id\":\"\",\"label\":\"Min size\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Minimum size of detected object as percentage of overal image\"},\n  {\"id\":\"\",\"label\":\"Max size\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Maximum size of detected object as percentage of overal image\"},\n  {\"id\":\"\",\"label\":\"Process Image\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Process single image\"},\n  {\"id\":\"\",\"label\":\"Process Batch\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Process batch of images\"},\n  {\"id\":\"\",\"label\":\"Process Folder\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Process all images in a folder\"},\n  {\"id\":\"\",\"label\":\"Current\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Analyze modules inside currently loaded model\"},\n  {\"id\":\"\",\"label\":\"Merge\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Merge two or more models into a new model\"},\n  {\"id\":\"\",\"label\":\"Modules\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Merge and/or replace modules into an existing model\"},\n  {\"id\":\"\",\"label\":\"Validate\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Validate all local models\"},\n  {\"id\":\"\",\"label\":\"CivitAI\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Search and download models from CitivAI\"},\n  {\"id\":\"\",\"label\":\"Scale by\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Use this tab to resize the source image(s) by a chosen factor\"},\n  {\"id\":\"\",\"label\":\"Scale to\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Use this tab to resize the source image(s) to a chosen target size\"},\n  {\"id\":\"\",\"label\":\"Input directory\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Folder where the images are that you want to process\"},\n  {\"id\":\"\",\"label\":\"Output directory\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Folder where the processed images should be saved to\"},\n  {\"id\":\"\",\"label\":\"Show result images\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Enable to show the processed images in the image pane\"},\n  {\"id\":\"\",\"label\":\"Crop to fit\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"If the dimensions of your source image (e.g. 512x510) deviate from your target dimensions (e.g. 1024x768) this function will fit your upscaled image into your target size image. Excess will be cropped\"},\n  {\"id\":\"\",\"label\":\"Refine Upscaler\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Select secondary upscaler to run after initial upscaler\"},\n  {\"id\":\"\",\"label\":\"Upscaler 2 visibility\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Strength of the secondary upscaler\"},\n  {\"id\":\"\",\"label\":\"Calculate hash for all models\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Calculates hash for all available models which may take a very long time\"},\n  {\"id\":\"\",\"label\":\"Weights Clip\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Forced merged weights to be no heavier than the original model, preventing burn in and overly saturated models\"},\n  {\"id\":\"\",\"label\":\"ReBasin\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Performs multiple merges with permutations in order to keep more features from both models\"},\n  {\"id\":\"\",\"label\":\"Number of ReBasin Iterations\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Number of times to merge and permute the model before saving\"},\n  {\"id\":\"\",\"label\":\"CPU\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Uses cpu and RAM only: slowest but least likely to OOM\"},\n  {\"id\":\"\",\"label\":\"Shuffle\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Loads full model in RAM and calculates on VRAM: Less speedup, suggested for SDXL merges\"},\n  {\"id\":\"\",\"label\":\"In Blocks\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Downsampling Blocks of the UNet (12 values for SD1.5, 9 values for SDXL)\"},\n  {\"id\":\"\",\"label\":\"Mid Block\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Central Block of the UNet (1 value)\"},\n  {\"id\":\"\",\"label\":\"Out Block\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Upsampling Blocks of the UNet (12 values for SD1.5, 9 values for SDXL)\"},\n  {\"id\":\"\",\"label\":\"Preset Interpolation Ratio\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"If two presets are selected, interpolate between them\"},\n  {\"id\":\"\",\"label\":\"Adapter\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"IP adapter model\"},\n  {\"id\":\"\",\"label\":\"Active ip adapters\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Number of active IP adapter\"},\n  {\"id\":\"\",\"label\":\"Unload adapter\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Unload IP adapter immediately after generate. Otherwise IP adapter will remain loaded for faster use in next generate process\"},\n  {\"id\":\"\",\"label\":\"Crop to portrait\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Crop input image to portrait-only before using it as IP adapter input\"},\n  {\"id\":\"\",\"label\":\"Layer options\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Manually specify IP adapter advanced layer options\"},\n  {\"id\":\"\",\"label\":\"X values\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Separate values for X axis using commas\"},\n  {\"id\":\"\",\"label\":\"Y values\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Separate values for Y axis using commas\"},\n  {\"id\":\"\",\"label\":\"Z values\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Separate values for Z axis using commas\"},\n  {\"id\":\"\",\"label\":\"Loops\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"How many times to process an image. Each output is used as the input of the next loop. If set to 1, behavior will be as if this script were not used\"},\n  {\"id\":\"\",\"label\":\"Final denoising strength\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"The denoising strength for the final loop of each image in the batch\"},\n  {\"id\":\"\",\"label\":\"Denoising strength curve\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"The denoising curve controls the rate of denoising strength change each loop. Aggressive: Most of the change will happen towards the start of the loops. Linear: Change will be constant through all loops. Lazy: Most of the change will happen towards the end of the loops\"},\n  {\"id\":\"\",\"label\":\"Tile overlap\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"For SD upscale, how much overlap in pixels should there be between tiles. Tiles overlap so that when they are merged back into one picture, there is no clearly visible seam\"},\n  {\"id\":\"\",\"label\":\"ACI: Color to Mask\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Pick the color you want to mask and inpaint. Click on the color in the image to automatically select it.<br> Advised to use images like green screens to get precise results.\"},\n  {\"id\":\"\",\"label\":\"ACI: Color Tolerance\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Adjust the tolerance to include similar colors in the mask. Lower values = mask only very similar colors. Higher = values mask a wider range of similar colors.\"},\n  {\"id\":\"\",\"label\":\"ACI: Mask Erode\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Adjust padding to apply a inside offset to the mask. (Recommended value = 2 to remove leftovers at edges)\"},\n  {\"id\":\"\",\"label\":\"ACI: Mask Blur\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Adjust blur to apply a smooth transition between image and inpainted area. (Recommended value = 0 for sharpness)\"},\n  {\"id\":\"\",\"label\":\"ACI: Denoising Strength\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Change Denoising Strength to achieve desired inpaint amount.\"}\n],\n\"settings\": [\n  {\"id\":\"\",\"label\":\"Apply settings\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Save current settings, server restart is recommended\"},\n  {\"id\":\"\",\"label\":\"Model Loading\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Settings related to how model is loaded\"},\n  {\"id\":\"\",\"label\":\"Model Options\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Settings related to behavior of specific models\"},\n  {\"id\":\"\",\"label\":\"Model Offloading\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Settings related to model offloading and memory management\"},\n  {\"id\":\"\",\"label\":\"Model Quantization\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Settings related to model quantization which is used to reduce memory usage\"},\n  {\"id\":\"\",\"label\":\"Image Metadata\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Settings related to handling of metadata that is created with generated images\"},\n  {\"id\":\"\",\"label\":\"Legacy Options\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Settings related to legacy options - should not be used\"},\n  {\"id\":\"\",\"label\":\"Restart server\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Restart server\"},\n  {\"id\":\"\",\"label\":\"Shutdown server\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Shutdown server\"},\n  {\"id\":\"\",\"label\":\"Preview theme\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Show theme preview\"},\n  {\"id\":\"\",\"label\":\"Restore defaults\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Restore default server settings\"},\n  {\"id\":\"\",\"label\":\"Unload model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Unload currently loaded model\"},\n  {\"id\":\"\",\"label\":\"Reload model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Reload currently selected model\"},\n  {\"id\":\"\",\"label\":\"Models & Loading\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Settings related to base models, primary backend and model load behavior\"},\n  {\"id\":\"\",\"label\":\"Variational Auto Encoder\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Settings related to Variational Auto Encoder and image decoding process during generate\"},\n  {\"id\":\"\",\"label\":\"Text encoder\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Settings related to text encoder and prompt encoding processing during generate\"},\n  {\"id\":\"\",\"label\":\"Compute Settings\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Settings related to compute precision, cross attention, and optimizations for computing platforms\"},\n  {\"id\":\"\",\"label\":\"Backend Settings\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Settings related to compute backends: torch, onnx and olive\"},\n  {\"id\":\"\",\"label\":\"Pipeline modifiers\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Additional functionality that can be enabled during generate\"},\n  {\"id\":\"\",\"label\":\"Model compile\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Settings related to different model compilation methods\"},\n  {\"id\":\"\",\"label\":\"System Paths\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Settings related to location of various model directories\"},\n  {\"id\":\"\",\"label\":\"Image Options\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Settings related to image format, metadata, and image grids\"},\n  {\"id\":\"\",\"label\":\"Image Paths\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Settings related to image filenames, and output directories\"},\n  {\"id\":\"\",\"label\":\"Live Previews\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Settings related to live previews, audio notification\"},\n  {\"id\":\"\",\"label\":\"Sampler Settings\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Settings related to sampler selection and configuration, and diffuser specific sampler configuration\"},\n  {\"id\":\"\",\"label\":\"Postprocessing\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Settings related to post image generation processing, face restoration, and upscaling\"},\n  {\"id\":\"\",\"label\":\"Control Options\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Settings related the Control tab\"},\n  {\"id\":\"\",\"label\":\"Huggingface\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Settings related huggingface access\"},\n  {\"id\":\"\",\"label\":\"Show all pages\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Show all settings pages\"},\n  {\"id\":\"\",\"label\":\"Base model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Main model used for all operations\"},\n  {\"id\":\"\",\"label\":\"Refiner model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Refiner model used for second-pass operations\"},\n  {\"id\":\"\",\"label\":\"Cached models\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"The number of models to store in RAM for quick access\"},\n  {\"id\":\"\",\"label\":\"VAE model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"VAE helps with fine details in the final image and may also alter colors\"},\n  {\"id\":\"\",\"label\":\"Model load using streams\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"When loading models attempt stream loading optimized for slow or network storage\"},\n  {\"id\":\"\",\"label\":\"xFormers\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Memory optimization. Non-Deterministic (different results each time)\"},\n  {\"id\":\"\",\"label\":\"Scaled-Dot-Product\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Memory optimization. Non-Deterministic unless SDP memory attention is disabled.\"},\n  {\"id\":\"\",\"label\":\"Prompt padding\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Increase coherency by padding from the last comma within n tokens when using more than 75 tokens\"},\n  {\"id\":\"\",\"label\":\"Original\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Original LDM backend\"},\n  {\"id\":\"\",\"label\":\"Autocast\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Automatically determine precision during runtime\"},\n  {\"id\":\"\",\"label\":\"Full\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Always use full precision\"},\n  {\"id\":\"\",\"label\":\"FP32\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Use 32-bit floating point precision for calculations\"},\n  {\"id\":\"\",\"label\":\"FP16\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Use 16-bit floating point precision for calculations\"},\n  {\"id\":\"\",\"label\":\"BF16\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Use modified 16-bit floating point precision for calculations\"},\n  {\"id\":\"\",\"label\":\"Full precision (--no-half-vae)\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Uses FP32 for the VAE. May produce better results while using more VRAM and slower generation\"},\n  {\"id\":\"\",\"label\":\"Force full precision (--no-half)\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Uses FP32 for the model. May produce better results while using more VRAM and slower generation\"},\n  {\"id\":\"\",\"label\":\"Upcast sampling\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Usually produces similar results to --no-half with better performance while using less memory\"},\n  {\"id\":\"\",\"label\":\"Attempt VAE roll back for NaN values\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Requires Torch 2.1 and NaN check enabled\"},\n  {\"id\":\"\",\"label\":\"Olive use FP16 on optimization\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Use 16-bit floating point precision for the output model of Olive optimization process. Use 32-bit floating point precision if disabled\"},\n  {\"id\":\"\",\"label\":\"Olive force FP32 for VAE Encoder\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Use 32-bit floating point precision for VAE Encoder of the output model. This overrides 'use FP16 on optimization' option. If you are getting NaN or black blank images from Img2Img, enable this option and remove cache\"},\n  {\"id\":\"\",\"label\":\"Olive use static dimensions\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Make the inference with Olive optimized models much faster. (OrtTransformersOptimization)\"},\n  {\"id\":\"\",\"label\":\"Olive cache optimized models\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Save Olive processed models as a cache. You can manage them in ONNX tab\"},\n  {\"id\":\"\",\"label\":\"File format\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Select file format for images\"},\n  {\"id\":\"\",\"label\":\"Include metadata\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Save image create parameters as metadata tags inside image file\"},\n  {\"id\":\"\",\"label\":\"Images filename pattern\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Use following tags to define how filenames for images are chosen:<br><pre>seq, uuid<br>date, datetime, job_timestamp<br>generation_number, batch_number<br>model, model_shortname<br>model_hash, model_name<br>sampler, seed, steps, cfg<br>clip_skip, denoising<br>hasprompt, prompt, styles<br>prompt_hash, prompt_no_styles<br>prompt_spaces, prompt_words<br>height, width, image_hash<br></pre>\"},\n  {\"id\":\"\",\"label\":\"Row count\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Use -1 for autodetect and 0 for it to be same as batch size\"},\n  {\"id\":\"\",\"label\":\"Directory name pattern\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Use following tags to define how subdirectories for images and grids are chosen: [steps], [cfg],[prompt_hash], [prompt], [prompt_no_styles], [prompt_spaces], [width], [height], [styles], [sampler], [seed], [model_hash], [model_name], [prompt_words], [date], [datetime], [datetime<Format>], [datetime<Format><Time Zone>], [job_timestamp]; leave empty for default\"},\n  {\"id\":\"\",\"label\":\"Inpainting conditioning mask strength\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Determines how strongly to mask off the original image for inpainting and img2img. 1.0 means fully masked (default). 0.0 means a fully unmasked conditioning. Lower values will help preserve the overall composition of the image, but will struggle with large changes\"},\n  {\"id\":\"\",\"label\":\"Clip skip\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Early stopping parameter for CLIP model; 1 is stop at last layer as usual, 2 is stop at penultimate layer, etc\"},\n  {\"id\":\"\",\"label\":\"Images folder\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"If empty, defaults to three directories below\"},\n  {\"id\":\"\",\"label\":\"Grids folder\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"If empty, defaults to two directories below\"},\n  {\"id\":\"\",\"label\":\"Quicksettings list\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"List of setting names, separated by commas, for settings that should go to the quick access bar at the top instead the setting tab\"},\n  {\"id\":\"\",\"label\":\"Live preview display period\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Request preview image every n steps, set to 0 to disable\"},\n  {\"id\":\"\",\"label\":\"Approximate\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Cheap neural network approximation. Very fast compared to VAE, but produces pictures with 4 times smaller horizontal/vertical resolution and lower quality\"},\n  {\"id\":\"\",\"label\":\"Simple\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Very cheap approximation. Very fast compared to VAE, but produces pictures with 8 times smaller horizontal/vertical resolution and extremely low quality\"},\n  {\"id\":\"\",\"label\":\"Progress update period\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Update period for UI progress bar and preview checks, in milliseconds\"},\n  {\"id\":\"\",\"label\":\"Euler a\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Euler Ancestral - very creative, each can get a completely different picture depending on step count, setting steps higher than 30-40 does not help\"},\n  {\"id\":\"\",\"label\":\"DDIM\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Denoising Diffusion Implicit Models - best at inpainting\"},\n  {\"id\":\"\",\"label\":\"UniPC\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Unified Predictor-Corrector Framework for Fast Sampling of Diffusion Models\"},\n  {\"id\":\"\",\"label\":\"Sigma negative guidance minimum\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Skip negative prompt for some steps when the image is almost ready, 0=disable\"},\n  {\"id\":\"\",\"label\":\"Upscaler tile size\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"0 = no tiling\"},\n  {\"id\":\"\",\"label\":\"Upscaler tile overlap\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Low values = visible seam\"},\n  {\"id\":\"\",\"label\":\"GFPGAN\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Restore low quality faces using GFPGAN neural network\"},\n  {\"id\":\"\",\"label\":\"CodeFormer\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Restore low quality faces using Codeformer neural network\"},\n  {\"id\":\"\",\"label\":\"CodeFormer weight parameter\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"0 = maximum effect; 1 = minimum effect\"},\n  {\"id\":\"\",\"label\":\"ToMe token merging ratio\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Enable redundant token merging via tomesd for speed and memory improvements, 0=disabled\"},\n  {\"id\":\"\",\"label\":\"Todo token merging ratio\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Enable redundant token merging via todo for speed and memory improvements, 0=disabled\"},\n  {\"id\":\"\",\"label\":\"Model pipeline\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"If autodetect does not detect model automatically, select model type before loading a model\"},\n  {\"id\":\"\",\"label\":\"VAE slicing\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Decodes batch latents one image at a time with limited VRAM. Small performance boost in VAE decode on multi-image batches\"},\n  {\"id\":\"\",\"label\":\"VAE tiling\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Divide large images into overlapping tiles with limited VRAM. Results in a minor increase in processing time\"},\n  {\"id\":\"\",\"label\":\"Dynamic attention BMM\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Performs attention computation in steps instead of all at once. Slower inference times, but greatly reduced memory usage\"},\n  {\"id\":\"\",\"label\":\"ONNX Execution Provider\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"ONNX Execution Provider\"},\n  {\"id\":\"\",\"label\":\"ONNX allow fallback to CPU\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Allow fallback to CPU when selected execution provider failed\"},\n  {\"id\":\"\",\"label\":\"ONNX cache converted models\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Save the models that are converted to ONNX format as a cache. You can manage them in ONNX tab\"},\n  {\"id\":\"\",\"label\":\"ONNX unload base model when processing refiner\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Unload base model when the refiner is being converted/optimized/processed\"},\n  {\"id\":\"\",\"label\":\"Model compile precompile\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Run model compile immediately on model load instead of first use\"},\n  {\"id\":\"\",\"label\":\"Use zeros for prompt padding\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Force full zero tensor when prompt is empty to remove any residual noise\"},\n  {\"id\":\"\",\"label\":\"Include invisible watermark\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Add invisible watermark to image by altering some pixel values\"},\n  {\"id\":\"\",\"label\":\"invisible watermark string\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Watermark string to add to image. Keep very short to avoid image corruption.\"},\n  {\"id\":\"\",\"label\":\"show log view\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Show log view at the bottom of the main window\"},\n  {\"id\":\"\",\"label\":\"Log view update period\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Log view update period, in milliseconds\"},\n  {\"id\":\"\",\"label\":\"PAG layer names\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Space separated list of layers<br>Available: d[0-5], m[0], u[0-8]<br>Default: m0\"},\n  {\"id\":\"\",\"label\":\"prompt attention normalization\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Balances prompt token weights to avoid overly strong/weak influence. Helps stabilize outputs.\"},\n  {\"id\":\"\",\"label\":\"ck flash attention\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Custom Flash Attention kernel. Very fast, but may be unstable or hardware-dependent.\"},\n  {\"id\":\"\",\"label\":\"flash attention\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Highly optimized attention algorithm. Greatly reduces VRAM use and speeds up inference, but can be non-deterministic.\"},\n  {\"id\":\"\",\"label\":\"memory attention\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Uses less VRAM by chunking attention computation. Slower but allows bigger batches or images.\"},\n  {\"id\":\"\",\"label\":\"math attention\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Fallback pure-math attention implementation. Stable and predictable but very slow.\"},\n  {\"id\":\"\",\"label\":\"dynamic attention\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Adjusts attention computation dynamically per step. Saves VRAM but slows generation.\"},\n  {\"id\":\"\",\"label\":\"sage attention\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Experimental attention optimization method. May improve speed but less tested and can cause bugs.\"},\n  {\"id\":\"\",\"label\":\"batch matrix-matrix\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Standard batched matrix multiplication for attention. Reliable but not VRAM-efficient.\"},\n  {\"id\":\"\",\"label\":\"split attention\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Splits attention layers into smaller chunks. Helps with very large images at the cost of slower inference.\"},\n  {\"id\":\"\",\"label\":\"deterministic mode\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Forces deterministic output across runs. Useful for reproducibility, but may disable some optimizations.\"},\n  {\"id\":\"\",\"label\":\"no-grad\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Disables gradient tracking with torch.no_grad. Reduces memory usage and speeds up inference.\"},\n  {\"id\":\"\",\"label\":\"Inference-mode\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Like no-grad but stricter. Ensures model runs only in inference mode for safety and speed.\"},\n  {\"id\":\"\",\"label\":\"cudamallocasync\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Uses CUDA async memory allocator. Improves performance and VRAM fragmentation, but may cause instability on some GPUs.\"}\n],\n\"missing\": [\n  {\"id\":\"\",\"label\":\"1st stage\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"1st stage\"},\n  {\"id\":\"\",\"label\":\"1st stage backbone\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"1st stage backbone\"},\n  {\"id\":\"\",\"label\":\"1st stage skip\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"1st stage skip\"},\n  {\"id\":\"\",\"label\":\"2nd restart step\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"2nd restart step\"},\n  {\"id\":\"\",\"label\":\"2nd scale\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"2nd scale\"},\n  {\"id\":\"\",\"label\":\"2nd stage\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"2nd stage\"},\n  {\"id\":\"\",\"label\":\"2nd stage backbone\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"2nd stage backbone\"},\n  {\"id\":\"\",\"label\":\"2nd stage skip\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"2nd stage skip\"},\n  {\"id\":\"\",\"label\":\"3rd restart step\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"3rd restart step\"},\n  {\"id\":\"\",\"label\":\"3rd scale\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"3rd scale\"},\n  {\"id\":\"\",\"label\":\"3rd stage\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"3rd stage\"},\n  {\"id\":\"\",\"label\":\"4th restart step\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"4th restart step\"},\n  {\"id\":\"\",\"label\":\"4th scale\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"4th scale\"},\n  {\"id\":\"\",\"label\":\"4th stage\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"4th stage\"},\n  {\"id\":\"\",\"label\":\"a1111\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"a1111\"},\n  {\"id\":\"\",\"label\":\"accuracy\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"accuracy\"},\n  {\"id\":\"\",\"label\":\"aci: mask dilate\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"aci: mask dilate\"},\n  {\"id\":\"\",\"label\":\"active\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"active\"},\n  {\"id\":\"\",\"label\":\"adain\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"adain\"},\n  {\"id\":\"\",\"label\":\"adapter 1\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"adapter 1\"},\n  {\"id\":\"\",\"label\":\"adapter 2\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"adapter 2\"},\n  {\"id\":\"\",\"label\":\"adapter 3\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"adapter 3\"},\n  {\"id\":\"\",\"label\":\"adapter 4\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"adapter 4\"},\n  {\"id\":\"\",\"label\":\"adaptive restore\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"adaptive restore\"},\n  {\"id\":\"\",\"label\":\"add text info\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"add text info\"},\n  {\"id\":\"\",\"label\":\"add time info\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"add time info\"},\n  {\"id\":\"\",\"label\":\"additional image browser folders\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"additional image browser folders\"},\n  {\"id\":\"\",\"label\":\"additional postprocessing operations\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"additional postprocessing operations\"},\n  {\"id\":\"\",\"label\":\"advanced options\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"advanced options\"},\n  {\"id\":\"\",\"label\":\"after\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"after\"},\n  {\"id\":\"\",\"label\":\"aggressive at step\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"aggressive at step\"},\n  {\"id\":\"\",\"label\":\"alias\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"alias\"},\n  {\"id\":\"\",\"label\":\"all\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"all\"},\n  {\"id\":\"\",\"label\":\"allowed aspect ratios\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"allowed aspect ratios\"},\n  {\"id\":\"\",\"label\":\"alpha\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"alpha\"},\n  {\"id\":\"\",\"label\":\"alpha block weight preset\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"alpha block weight preset\"},\n  {\"id\":\"\",\"label\":\"alpha matting\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"alpha matting\"},\n  {\"id\":\"\",\"label\":\"alpha preset\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"alpha preset\"},\n  {\"id\":\"\",\"label\":\"alpha ratio\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"alpha ratio\"},\n  {\"id\":\"\",\"label\":\"amplify lut\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"amplify lut\"},\n  {\"id\":\"\",\"label\":\"analyze\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"analyze\"},\n  {\"id\":\"\",\"label\":\"anchor settings\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"anchor settings\"},\n  {\"id\":\"\",\"label\":\"animateddiff\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"animateddiff\"},\n  {\"id\":\"\",\"label\":\"answer\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"answer\"},\n  {\"id\":\"\",\"label\":\"aot_ts_nvfuser\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"aot_ts_nvfuser\"},\n  {\"id\":\"\",\"label\":\"appearance\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"appearance\"},\n  {\"id\":\"\",\"label\":\"append caption files\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"append caption files\"},\n  {\"id\":\"\",\"label\":\"append image info json file\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"append image info json file\"},\n  {\"id\":\"\",\"label\":\"append interrogated prompt at each iteration\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"append interrogated prompt at each iteration\"},\n  {\"id\":\"\",\"label\":\"apply color correction\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"apply color correction\"},\n  {\"id\":\"\",\"label\":\"apply filter\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"apply filter\"},\n  {\"id\":\"\",\"label\":\"apply linfusion distillation on load\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"apply linfusion distillation on load\"},\n  {\"id\":\"\",\"label\":\"apply mask as overlay\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"apply mask as overlay\"},\n  {\"id\":\"\",\"label\":\"apply msw-msa\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"apply msw-msa\"},\n  {\"id\":\"\",\"label\":\"apply rau-net\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"apply rau-net\"},\n  {\"id\":\"\",\"label\":\"apply to model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"apply to model\"},\n  {\"id\":\"\",\"label\":\"artists\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"artists\"},\n  {\"id\":\"\",\"label\":\"atiadlxx (amd only)\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"atiadlxx (amd only)\"},\n  {\"id\":\"\",\"label\":\"attention\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"attention\"},\n  {\"id\":\"\",\"label\":\"attention adain\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"attention adain\"},\n  {\"id\":\"\",\"label\":\"attention cache enabled\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"attention cache enabled\"},\n  {\"id\":\"\",\"label\":\"attention chunking threshold\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"attention chunking threshold\"},\n  {\"id\":\"\",\"label\":\"attention kv chunk size\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"attention kv chunk size\"},\n  {\"id\":\"\",\"label\":\"attention query chunk size\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"attention query chunk size\"},\n  {\"id\":\"\",\"label\":\"auto\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"auto\"},\n  {\"id\":\"\",\"label\":\"auto apply\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"auto apply\"},\n  {\"id\":\"\",\"label\":\"auto-convert sd15 embeddings to sdxl\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"auto-convert sd15 embeddings to sdxl\"},\n  {\"id\":\"\",\"label\":\"auto-mask\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"auto-mask\"},\n  {\"id\":\"\",\"label\":\"auto-segment\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"auto-segment\"},\n  {\"id\":\"\",\"label\":\"autolaunch browser upon startup\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"autolaunch browser upon startup\"},\n  {\"id\":\"\",\"label\":\"automatically determine rank\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"automatically determine rank\"},\n  {\"id\":\"\",\"label\":\"autorank ratio\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"autorank ratio\"},\n  {\"id\":\"\",\"label\":\"available networks\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"available networks\"},\n  {\"id\":\"\",\"label\":\"backend\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"backend\"},\n  {\"id\":\"\",\"label\":\"backend storage\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"backend storage\"},\n  {\"id\":\"\",\"label\":\"background threshold\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"background threshold\"},\n  {\"id\":\"\",\"label\":\"balanced\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"balanced\"},\n  {\"id\":\"\",\"label\":\"balanced offload cpu high watermark\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"balanced offload cpu high watermark\"},\n  {\"id\":\"\",\"label\":\"balanced offload gpu high watermark\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"balanced offload gpu high watermark\"},\n  {\"id\":\"\",\"label\":\"balanced offload gpu low watermark\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"balanced offload gpu low watermark\"},\n  {\"id\":\"\",\"label\":\"base\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"base\"},\n  {\"id\":\"\",\"label\":\"batch caption\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"batch caption\"},\n  {\"id\":\"\",\"label\":\"batch input directory\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"batch input directory\"},\n  {\"id\":\"\",\"label\":\"batch interogate\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"batch interogate\"},\n  {\"id\":\"\",\"label\":\"batch interrogate\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"batch interrogate\"},\n  {\"id\":\"\",\"label\":\"batch mask directory\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"batch mask directory\"},\n  {\"id\":\"\",\"label\":\"batch mode uses sequential seeds\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"batch mode uses sequential seeds\"},\n  {\"id\":\"\",\"label\":\"batch output directory\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"batch output directory\"},\n  {\"id\":\"\",\"label\":\"batch uses original name\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"batch uses original name\"},\n  {\"id\":\"\",\"label\":\"bdia ddim\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"bdia ddim\"},\n  {\"id\":\"\",\"label\":\"before\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"before\"},\n  {\"id\":\"\",\"label\":\"benchmark level\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"benchmark level\"},\n  {\"id\":\"\",\"label\":\"benchmark steps\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"benchmark steps\"},\n  {\"id\":\"\",\"label\":\"beta block weight preset\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"beta block weight preset\"},\n  {\"id\":\"\",\"label\":\"beta end\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"beta end\"},\n  {\"id\":\"\",\"label\":\"beta ratio\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"beta ratio\"},\n  {\"id\":\"\",\"label\":\"beta start\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"beta start\"},\n  {\"id\":\"\",\"label\":\"bh1\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"bh1\"},\n  {\"id\":\"\",\"label\":\"bh2\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"bh2\"},\n  {\"id\":\"\",\"label\":\"block\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"block\"},\n  {\"id\":\"\",\"label\":\"block skip range\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"block skip range\"},\n  {\"id\":\"\",\"label\":\"blur\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"blur\"},\n  {\"id\":\"\",\"label\":\"body\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"body\"},\n  {\"id\":\"\",\"label\":\"boost\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"boost\"},\n  {\"id\":\"\",\"label\":\"brightness\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"brightness\"},\n  {\"id\":\"\",\"label\":\"cache model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"cache model\"},\n  {\"id\":\"\",\"label\":\"cache text encoder results\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"cache text encoder results\"},\n  {\"id\":\"\",\"label\":\"canny\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"canny\"},\n  {\"id\":\"\",\"label\":\"caption\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"caption\"},\n  {\"id\":\"\",\"label\":\"caption model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"caption model\"},\n  {\"id\":\"\",\"label\":\"center\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"center\"},\n  {\"id\":\"\",\"label\":\"change log\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"change log\"},\n  {\"id\":\"\",\"label\":\"change model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"change model\"},\n  {\"id\":\"\",\"label\":\"change rate\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"change rate\"},\n  {\"id\":\"\",\"label\":\"change reference\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"change reference\"},\n  {\"id\":\"\",\"label\":\"change refiner\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"change refiner\"},\n  {\"id\":\"\",\"label\":\"change vae\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"change vae\"},\n  {\"id\":\"\",\"label\":\"channels last\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"channels last\"},\n  {\"id\":\"\",\"label\":\"check alternative hash\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"check alternative hash\"},\n  {\"id\":\"\",\"label\":\"check for updates\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"check for updates\"},\n  {\"id\":\"\",\"label\":\"check status\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"check status\"},\n  {\"id\":\"\",\"label\":\"chunk size\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"chunk size\"},\n  {\"id\":\"\",\"label\":\"civitai model type\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"civitai model type\"},\n  {\"id\":\"\",\"label\":\"civitai token\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"civitai token\"},\n  {\"id\":\"\",\"label\":\"ckpt\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"ckpt\"},\n  {\"id\":\"\",\"label\":\"cleanup temporary folder on startup\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"cleanup temporary folder on startup\"},\n  {\"id\":\"\",\"label\":\"clip model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"clip model\"},\n  {\"id\":\"\",\"label\":\"clip: chunk size\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"clip: chunk size\"},\n  {\"id\":\"\",\"label\":\"clip: default captioner\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"clip: default captioner\"},\n  {\"id\":\"\",\"label\":\"clip: default mode\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"clip: default mode\"},\n  {\"id\":\"\",\"label\":\"clip: default model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"clip: default model\"},\n  {\"id\":\"\",\"label\":\"clip: intermediate flavors\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"clip: intermediate flavors\"},\n  {\"id\":\"\",\"label\":\"clip: max flavors\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"clip: max flavors\"},\n  {\"id\":\"\",\"label\":\"clip: max length\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"clip: max length\"},\n  {\"id\":\"\",\"label\":\"clip: min flavors\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"clip: min flavors\"},\n  {\"id\":\"\",\"label\":\"clip: min length\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"clip: min length\"},\n  {\"id\":\"\",\"label\":\"clip: num beams\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"clip: num beams\"},\n  {\"id\":\"\",\"label\":\"close\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"close\"},\n  {\"id\":\"\",\"label\":\"cmsi\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"cmsi\"},\n  {\"id\":\"\",\"label\":\"cn end\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"cn end\"},\n  {\"id\":\"\",\"label\":\"cn mode\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"cn mode\"},\n  {\"id\":\"\",\"label\":\"cn start\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"cn start\"},\n  {\"id\":\"\",\"label\":\"cn strength\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"cn strength\"},\n  {\"id\":\"\",\"label\":\"cn tiles\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"cn tiles\"},\n  {\"id\":\"\",\"label\":\"coarse\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"coarse\"},\n  {\"id\":\"\",\"label\":\"color\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"color\"},\n  {\"id\":\"\",\"label\":\"color grading\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"color grading\"},\n  {\"id\":\"\",\"label\":\"color map\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"color map\"},\n  {\"id\":\"\",\"label\":\"color variation\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"color variation\"},\n  {\"id\":\"\",\"label\":\"colormap\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"colormap\"},\n  {\"id\":\"\",\"label\":\"columns\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"columns\"},\n  {\"id\":\"\",\"label\":\"comma\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"comma\"},\n  {\"id\":\"\",\"label\":\"comma separated list with optional strength per lora\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"comma separated list with optional strength per lora\"},\n  {\"id\":\"\",\"label\":\"compact view\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"compact view\"},\n  {\"id\":\"\",\"label\":\"compel\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"compel\"},\n  {\"id\":\"\",\"label\":\"composite\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"composite\"},\n  {\"id\":\"\",\"label\":\"compress ratio\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"compress ratio\"},\n  {\"id\":\"\",\"label\":\"concept tokens\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"concept tokens\"},\n  {\"id\":\"\",\"label\":\"context\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"context\"},\n  {\"id\":\"\",\"label\":\"context after\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"context after\"},\n  {\"id\":\"\",\"label\":\"context before\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"context before\"},\n  {\"id\":\"\",\"label\":\"context mask\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"context mask\"},\n  {\"id\":\"\",\"label\":\"contrast\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"contrast\"},\n  {\"id\":\"\",\"label\":\"control factor\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"control factor\"},\n  {\"id\":\"\",\"label\":\"control override denoise strength\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"control override denoise strength\"},\n  {\"id\":\"\",\"label\":\"control preprocess input images\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"control preprocess input images\"},\n  {\"id\":\"\",\"label\":\"control-lllite unit 1\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"control-lllite unit 1\"},\n  {\"id\":\"\",\"label\":\"control-lllite unit 2\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"control-lllite unit 2\"},\n  {\"id\":\"\",\"label\":\"control-lllite unit 3\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"control-lllite unit 3\"},\n  {\"id\":\"\",\"label\":\"control-lllite unit 4\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"control-lllite unit 4\"},\n  {\"id\":\"\",\"label\":\"controlnet\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"controlnet\"},\n  {\"id\":\"\",\"label\":\"controlnet unit 1\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"controlnet unit 1\"},\n  {\"id\":\"\",\"label\":\"controlnet unit 2\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"controlnet unit 2\"},\n  {\"id\":\"\",\"label\":\"controlnet unit 3\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"controlnet unit 3\"},\n  {\"id\":\"\",\"label\":\"controlnet unit 4\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"controlnet unit 4\"},\n  {\"id\":\"\",\"label\":\"controlnet-xs\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"controlnet-xs\"},\n  {\"id\":\"\",\"label\":\"controlnet-xs unit 1\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"controlnet-xs unit 1\"},\n  {\"id\":\"\",\"label\":\"controlnet-xs unit 2\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"controlnet-xs unit 2\"},\n  {\"id\":\"\",\"label\":\"controlnet-xs unit 3\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"controlnet-xs unit 3\"},\n  {\"id\":\"\",\"label\":\"controlnet-xs unit 4\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"controlnet-xs unit 4\"},\n  {\"id\":\"\",\"label\":\"correction mode\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"correction mode\"},\n  {\"id\":\"\",\"label\":\"cosine background\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"cosine background\"},\n  {\"id\":\"\",\"label\":\"cosine scale\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"cosine scale\"},\n  {\"id\":\"\",\"label\":\"cosine scale 1\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"cosine scale 1\"},\n  {\"id\":\"\",\"label\":\"cosine scale 2\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"cosine scale 2\"},\n  {\"id\":\"\",\"label\":\"cosine scale 3\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"cosine scale 3\"},\n  {\"id\":\"\",\"label\":\"create image info text file\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"create image info text file\"},\n  {\"id\":\"\",\"label\":\"create video\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"create video\"},\n  {\"id\":\"\",\"label\":\"create zip archive\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"create zip archive\"},\n  {\"id\":\"\",\"label\":\"cross-attention\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"cross-attention\"},\n  {\"id\":\"\",\"label\":\"cudagraphs\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"cudagraphs\"},\n  {\"id\":\"\",\"label\":\"custom pipeline\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"custom pipeline\"},\n  {\"id\":\"\",\"label\":\"dark\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"dark\"},\n  {\"id\":\"\",\"label\":\"dc solver\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"dc solver\"},\n  {\"id\":\"\",\"label\":\"ddpm\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"ddpm\"},\n  {\"id\":\"\",\"label\":\"debug info\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"debug info\"},\n  {\"id\":\"\",\"label\":\"decode\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"decode\"},\n  {\"id\":\"\",\"label\":\"decode chunks\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"decode chunks\"},\n  {\"id\":\"\",\"label\":\"deep-cache\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"deep-cache\"},\n  {\"id\":\"\",\"label\":\"deepbooru\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"deepbooru\"},\n  {\"id\":\"\",\"label\":\"deepbooru: escape brackets\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"deepbooru: escape brackets\"},\n  {\"id\":\"\",\"label\":\"deepbooru: exclude tags\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"deepbooru: exclude tags\"},\n  {\"id\":\"\",\"label\":\"deepbooru: include scores in results\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"deepbooru: include scores in results\"},\n  {\"id\":\"\",\"label\":\"deepbooru: max tags\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"deepbooru: max tags\"},\n  {\"id\":\"\",\"label\":\"deepbooru: score threshold\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"deepbooru: score threshold\"},\n  {\"id\":\"\",\"label\":\"deepbooru: sort alphabetically\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"deepbooru: sort alphabetically\"},\n  {\"id\":\"\",\"label\":\"deepbooru: use spaces for tags\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"deepbooru: use spaces for tags\"},\n  {\"id\":\"\",\"label\":\"deepcache cache interval\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"deepcache cache interval\"},\n  {\"id\":\"\",\"label\":\"default\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"default\"},\n  {\"id\":\"\",\"label\":\"deis\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"deis\"},\n  {\"id\":\"\",\"label\":\"denoising batch size\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"denoising batch size\"},\n  {\"id\":\"\",\"label\":\"denoising steps\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"denoising steps\"},\n  {\"id\":\"\",\"label\":\"depth and normal\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"depth and normal\"},\n  {\"id\":\"\",\"label\":\"depth anything\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"depth anything\"},\n  {\"id\":\"\",\"label\":\"depth map\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"depth map\"},\n  {\"id\":\"\",\"label\":\"depth threshold\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"depth threshold\"},\n  {\"id\":\"\",\"label\":\"description\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"description\"},\n  {\"id\":\"\",\"label\":\"details\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"details\"},\n  {\"id\":\"\",\"label\":\"device info\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"device info\"},\n  {\"id\":\"\",\"label\":\"diffusers\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"diffusers\"},\n  {\"id\":\"\",\"label\":\"dilate\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"dilate\"},\n  {\"id\":\"\",\"label\":\"dilate tau\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"dilate tau\"},\n  {\"id\":\"\",\"label\":\"directml retry ops for nan\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"directml retry ops for nan\"},\n  {\"id\":\"\",\"label\":\"directory for temporary images; leave empty for default\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"directory for temporary images; leave empty for default\"},\n  {\"id\":\"\",\"label\":\"disable accelerate\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"disable accelerate\"},\n  {\"id\":\"\",\"label\":\"disable conditional batching\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"disable conditional batching\"},\n  {\"id\":\"\",\"label\":\"disabled\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"disabled\"},\n  {\"id\":\"\",\"label\":\"discard penultimate sigma\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"discard penultimate sigma\"},\n  {\"id\":\"\",\"label\":\"distance threshold\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"distance threshold\"},\n  {\"id\":\"\",\"label\":\"do not change selected model when reading generation parameters\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"do not change selected model when reading generation parameters\"},\n  {\"id\":\"\",\"label\":\"do not display video output in ui\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"do not display video output in ui\"},\n  {\"id\":\"\",\"label\":\"down\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"down\"},\n  {\"id\":\"\",\"label\":\"download\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"download\"},\n  {\"id\":\"\",\"label\":\"download model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"download model\"},\n  {\"id\":\"\",\"label\":\"download path\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"download path\"},\n  {\"id\":\"\",\"label\":\"download updates\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"download updates\"},\n  {\"id\":\"\",\"label\":\"downscale high resolution live previews\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"downscale high resolution live previews\"},\n  {\"id\":\"\",\"label\":\"dpm sde\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"dpm sde\"},\n  {\"id\":\"\",\"label\":\"dpm++\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"dpm++\"},\n  {\"id\":\"\",\"label\":\"dpm++ 1s\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"dpm++ 1s\"},\n  {\"id\":\"\",\"label\":\"dpm++ 2m\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"dpm++ 2m\"},\n  {\"id\":\"\",\"label\":\"dpm++ 2m edm\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"dpm++ 2m edm\"},\n  {\"id\":\"\",\"label\":\"dpm++ 2m inverse\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"dpm++ 2m inverse\"},\n  {\"id\":\"\",\"label\":\"dpm++ 2m sde\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"dpm++ 2m sde\"},\n  {\"id\":\"\",\"label\":\"dpm++ 3m\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"dpm++ 3m\"},\n  {\"id\":\"\",\"label\":\"dpm++ 3m inverse\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"dpm++ 3m inverse\"},\n  {\"id\":\"\",\"label\":\"dpm++ cosine\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"dpm++ cosine\"},\n  {\"id\":\"\",\"label\":\"dpm++ inverse\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"dpm++ inverse\"},\n  {\"id\":\"\",\"label\":\"dpm++ sde\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"dpm++ sde\"},\n  {\"id\":\"\",\"label\":\"dpm2 flowmatch\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"dpm2 flowmatch\"},\n  {\"id\":\"\",\"label\":\"dpm2++ 2m flowmatch\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"dpm2++ 2m flowmatch\"},\n  {\"id\":\"\",\"label\":\"dpm2++ 2m sde flowmatch\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"dpm2++ 2m sde flowmatch\"},\n  {\"id\":\"\",\"label\":\"dpm2++ 2s flowmatch\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"dpm2++ 2s flowmatch\"},\n  {\"id\":\"\",\"label\":\"dpm2++ 3m sde flowmatch\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"dpm2++ 3m sde flowmatch\"},\n  {\"id\":\"\",\"label\":\"dpm2++ sde flowmatch\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"dpm2++ sde flowmatch\"},\n  {\"id\":\"\",\"label\":\"dpm2a flowmatch\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"dpm2a flowmatch\"},\n  {\"id\":\"\",\"label\":\"draw legend\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"draw legend\"},\n  {\"id\":\"\",\"label\":\"dropdown\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"dropdown\"},\n  {\"id\":\"\",\"label\":\"duration\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"duration\"},\n  {\"id\":\"\",\"label\":\"dwpose\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"dwpose\"},\n  {\"id\":\"\",\"label\":\"dynamic attention slicing rate in gb\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"dynamic attention slicing rate in gb\"},\n  {\"id\":\"\",\"label\":\"dynamic attention trigger rate in gb\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"dynamic attention trigger rate in gb\"},\n  {\"id\":\"\",\"label\":\"edge\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"edge\"},\n  {\"id\":\"\",\"label\":\"edit start\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"edit start\"},\n  {\"id\":\"\",\"label\":\"edit stop\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"edit stop\"},\n  {\"id\":\"\",\"label\":\"embedded metadata\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"embedded metadata\"},\n  {\"id\":\"\",\"label\":\"enable embeddings support\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"enable embeddings support\"},\n  {\"id\":\"\",\"label\":\"enable file wildcards support\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"enable file wildcards support\"},\n  {\"id\":\"\",\"label\":\"enable freeu\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"enable freeu\"},\n  {\"id\":\"\",\"label\":\"enable teacache\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"enable teacache\"},\n  {\"id\":\"\",\"label\":\"enable tonemap\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"enable tonemap\"},\n  {\"id\":\"\",\"label\":\"enable use of reference models\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"enable use of reference models\"},\n  {\"id\":\"\",\"label\":\"enabled\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"enabled\"},\n  {\"id\":\"\",\"label\":\"encoder\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"encoder\"},\n  {\"id\":\"\",\"label\":\"end\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"end\"},\n  {\"id\":\"\",\"label\":\"enhance prompt\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"enhance prompt\"},\n  {\"id\":\"\",\"label\":\"ensemble size\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"ensemble size\"},\n  {\"id\":\"\",\"label\":\"epsilon\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"epsilon\"},\n  {\"id\":\"\",\"label\":\"erode\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"erode\"},\n  {\"id\":\"\",\"label\":\"erode size\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"erode size\"},\n  {\"id\":\"\",\"label\":\"eta\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"eta\"},\n  {\"id\":\"\",\"label\":\"euler\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"euler\"},\n  {\"id\":\"\",\"label\":\"euler edm\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"euler edm\"},\n  {\"id\":\"\",\"label\":\"euler flowmatch\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"euler flowmatch\"},\n  {\"id\":\"\",\"label\":\"euler sgm\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"euler sgm\"},\n  {\"id\":\"\",\"label\":\"executionprovider.cpu\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"executionprovider.cpu\"},\n  {\"id\":\"\",\"label\":\"executionprovider.cuda\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"executionprovider.cuda\"},\n  {\"id\":\"\",\"label\":\"executionprovider.directml\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"executionprovider.directml\"},\n  {\"id\":\"\",\"label\":\"executionprovider.migraphx\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"executionprovider.migraphx\"},\n  {\"id\":\"\",\"label\":\"executionprovider.openvino\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"executionprovider.openvino\"},\n  {\"id\":\"\",\"label\":\"executionprovider.rocm\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"executionprovider.rocm\"},\n  {\"id\":\"\",\"label\":\"expandable segments\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"expandable segments\"},\n  {\"id\":\"\",\"label\":\"exponential\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"exponential\"},\n  {\"id\":\"\",\"label\":\"exposure\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"exposure\"},\n  {\"id\":\"\",\"label\":\"extra noise multiplier for img2img\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"extra noise multiplier for img2img\"},\n  {\"id\":\"\",\"label\":\"extract lora\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"extract lora\"},\n  {\"id\":\"\",\"label\":\"face\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"face\"},\n  {\"id\":\"\",\"label\":\"face confidence\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"face confidence\"},\n  {\"id\":\"\",\"label\":\"faceid model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"faceid model\"},\n  {\"id\":\"\",\"label\":\"fall-off exponent (lower=higher detail)\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"fall-off exponent (lower=higher detail)\"},\n  {\"id\":\"\",\"label\":\"false\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"false\"},\n  {\"id\":\"\",\"label\":\"fast\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"fast\"},\n  {\"id\":\"\",\"label\":\"file or folder with user-defined styles\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"file or folder with user-defined styles\"},\n  {\"id\":\"\",\"label\":\"filename\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"filename\"},\n  {\"id\":\"\",\"label\":\"first-block cache enabled\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"first-block cache enabled\"},\n  {\"id\":\"\",\"label\":\"fixed unet precision\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"fixed unet precision\"},\n  {\"id\":\"\",\"label\":\"flavors\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"flavors\"},\n  {\"id\":\"\",\"label\":\"folder\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder\"},\n  {\"id\":\"\",\"label\":\"folder for control generate\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder for control generate\"},\n  {\"id\":\"\",\"label\":\"folder for control grids\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder for control grids\"},\n  {\"id\":\"\",\"label\":\"folder for disk offload\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder for disk offload\"},\n  {\"id\":\"\",\"label\":\"folder for huggingface cache\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder for huggingface cache\"},\n  {\"id\":\"\",\"label\":\"folder for image generate\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder for image generate\"},\n  {\"id\":\"\",\"label\":\"folder for img2img grids\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder for img2img grids\"},\n  {\"id\":\"\",\"label\":\"folder for init images\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder for init images\"},\n  {\"id\":\"\",\"label\":\"folder for manually saved images\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder for manually saved images\"},\n  {\"id\":\"\",\"label\":\"folder for onnx cached models\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder for onnx cached models\"},\n  {\"id\":\"\",\"label\":\"folder for onnx conversion\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder for onnx conversion\"},\n  {\"id\":\"\",\"label\":\"folder for openvino cache\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder for openvino cache\"},\n  {\"id\":\"\",\"label\":\"folder for processed images\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder for processed images\"},\n  {\"id\":\"\",\"label\":\"folder for text generate\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder for text generate\"},\n  {\"id\":\"\",\"label\":\"folder for tunable ops cache\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder for tunable ops cache\"},\n  {\"id\":\"\",\"label\":\"folder for txt2img grids\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder for txt2img grids\"},\n  {\"id\":\"\",\"label\":\"folder for videos\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder for videos\"},\n  {\"id\":\"\",\"label\":\"folder with bsrgan models\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder with bsrgan models\"},\n  {\"id\":\"\",\"label\":\"folder with chainner models\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder with chainner models\"},\n  {\"id\":\"\",\"label\":\"folder with clip models\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder with clip models\"},\n  {\"id\":\"\",\"label\":\"folder with codeformer models\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder with codeformer models\"},\n  {\"id\":\"\",\"label\":\"folder with control models\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder with control models\"},\n  {\"id\":\"\",\"label\":\"folder with esrgan models\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder with esrgan models\"},\n  {\"id\":\"\",\"label\":\"folder with gfpgan models\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder with gfpgan models\"},\n  {\"id\":\"\",\"label\":\"folder with huggingface models\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder with huggingface models\"},\n  {\"id\":\"\",\"label\":\"folder with hypernetwork models\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder with hypernetwork models\"},\n  {\"id\":\"\",\"label\":\"folder with ldsr models\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder with ldsr models\"},\n  {\"id\":\"\",\"label\":\"folder with lora network(s)\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder with lora network(s)\"},\n  {\"id\":\"\",\"label\":\"folder with realesrgan models\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder with realesrgan models\"},\n  {\"id\":\"\",\"label\":\"folder with scunet models\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder with scunet models\"},\n  {\"id\":\"\",\"label\":\"folder with stable diffusion models\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder with stable diffusion models\"},\n  {\"id\":\"\",\"label\":\"folder with swinir models\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder with swinir models\"},\n  {\"id\":\"\",\"label\":\"folder with text encoder files\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder with text encoder files\"},\n  {\"id\":\"\",\"label\":\"folder with textual inversion embeddings\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder with textual inversion embeddings\"},\n  {\"id\":\"\",\"label\":\"folder with unet files\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder with unet files\"},\n  {\"id\":\"\",\"label\":\"folder with user-defined wildcards\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder with user-defined wildcards\"},\n  {\"id\":\"\",\"label\":\"folder with vae files\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder with vae files\"},\n  {\"id\":\"\",\"label\":\"folder with yolo models\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"folder with yolo models\"},\n  {\"id\":\"\",\"label\":\"font color\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"font color\"},\n  {\"id\":\"\",\"label\":\"font file\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"font file\"},\n  {\"id\":\"\",\"label\":\"font size\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"font size\"},\n  {\"id\":\"\",\"label\":\"force model eval\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"force model eval\"},\n  {\"id\":\"\",\"label\":\"foreground threshold\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"foreground threshold\"},\n  {\"id\":\"\",\"label\":\"fp4\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"fp4\"},\n  {\"id\":\"\",\"label\":\"frame change sensitivity\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"frame change sensitivity\"},\n  {\"id\":\"\",\"label\":\"frames\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"frames\"},\n  {\"id\":\"\",\"label\":\"freeinit\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"freeinit\"},\n  {\"id\":\"\",\"label\":\"freeu enabled\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"freeu enabled\"},\n  {\"id\":\"\",\"label\":\"freeu preset\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"freeu preset\"},\n  {\"id\":\"\",\"label\":\"full vae\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"full vae\"},\n  {\"id\":\"\",\"label\":\"full-depth cudnn benchmark\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"full-depth cudnn benchmark\"},\n  {\"id\":\"\",\"label\":\"fuse strength\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"fuse strength\"},\n  {\"id\":\"\",\"label\":\"fused projections\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"fused projections\"},\n  {\"id\":\"\",\"label\":\"gamma\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"gamma\"},\n  {\"id\":\"\",\"label\":\"gamma corrected\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"gamma corrected\"},\n  {\"id\":\"\",\"label\":\"gate step\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"gate step\"},\n  {\"id\":\"\",\"label\":\"gc threshold\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"gc threshold\"},\n  {\"id\":\"\",\"label\":\"get changelog\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"get changelog\"},\n  {\"id\":\"\",\"label\":\"gpu\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"gpu\"},\n  {\"id\":\"\",\"label\":\"gradient\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"gradient\"},\n  {\"id\":\"\",\"label\":\"grid background color\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"grid background color\"},\n  {\"id\":\"\",\"label\":\"grid margins\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"grid margins\"},\n  {\"id\":\"\",\"label\":\"grid sections:\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"grid sections:\"},\n  {\"id\":\"\",\"label\":\"group size\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"group size\"},\n  {\"id\":\"\",\"label\":\"guidance\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"guidance\"},\n  {\"id\":\"\",\"label\":\"guidance start\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"guidance start\"},\n  {\"id\":\"\",\"label\":\"guidance stop\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"guidance stop\"},\n  {\"id\":\"\",\"label\":\"guidance strength\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"guidance strength\"},\n  {\"id\":\"\",\"label\":\"hands\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"hands\"},\n  {\"id\":\"\",\"label\":\"hdr range\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"hdr range\"},\n  {\"id\":\"\",\"label\":\"hed\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"hed\"},\n  {\"id\":\"\",\"label\":\"height  after\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"height  after\"},\n  {\"id\":\"\",\"label\":\"height  before\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"height  before\"},\n  {\"id\":\"\",\"label\":\"height  mask\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"height  mask\"},\n  {\"id\":\"\",\"label\":\"heun\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"heun\"},\n  {\"id\":\"\",\"label\":\"heun flowmatch\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"heun flowmatch\"},\n  {\"id\":\"\",\"label\":\"hidet\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"hidet\"},\n  {\"id\":\"\",\"label\":\"high threshold\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"high threshold\"},\n  {\"id\":\"\",\"label\":\"hires pass only\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"hires pass only\"},\n  {\"id\":\"\",\"label\":\"hq init latents\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"hq init latents\"},\n  {\"id\":\"\",\"label\":\"hue\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"hue\"},\n  {\"id\":\"\",\"label\":\"huggingface mirror\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"huggingface mirror\"},\n  {\"id\":\"\",\"label\":\"huggingface token\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"huggingface token\"},\n  {\"id\":\"\",\"label\":\"hunyuan\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"hunyuan\"},\n  {\"id\":\"\",\"label\":\"il\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"il\"},\n  {\"id\":\"\",\"label\":\"image height\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"image height\"},\n  {\"id\":\"\",\"label\":\"image quality\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"image quality\"},\n  {\"id\":\"\",\"label\":\"image transparent color fill\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"image transparent color fill\"},\n  {\"id\":\"\",\"label\":\"image watermark file\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"image watermark file\"},\n  {\"id\":\"\",\"label\":\"image watermark position\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"image watermark position\"},\n  {\"id\":\"\",\"label\":\"image width\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"image width\"},\n  {\"id\":\"\",\"label\":\"include images\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"include images\"},\n  {\"id\":\"\",\"label\":\"include main grid\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"include main grid\"},\n  {\"id\":\"\",\"label\":\"include mask in outputs\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"include mask in outputs\"},\n  {\"id\":\"\",\"label\":\"include original image\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"include original image\"},\n  {\"id\":\"\",\"label\":\"include scores in results when available\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"include scores in results when available\"},\n  {\"id\":\"\",\"label\":\"include sub grids\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"include sub grids\"},\n  {\"id\":\"\",\"label\":\"inductor\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"inductor\"},\n  {\"id\":\"\",\"label\":\"info\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"info\"},\n  {\"id\":\"\",\"label\":\"info object\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"info object\"},\n  {\"id\":\"\",\"label\":\"inpaint\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"inpaint\"},\n  {\"id\":\"\",\"label\":\"inpaint masked only\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"inpaint masked only\"},\n  {\"id\":\"\",\"label\":\"inpainting include greyscale mask in results\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"inpainting include greyscale mask in results\"},\n  {\"id\":\"\",\"label\":\"inpainting include masked composite in results\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"inpainting include masked composite in results\"},\n  {\"id\":\"\",\"label\":\"input model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"input model\"},\n  {\"id\":\"\",\"label\":\"intermediates\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"intermediates\"},\n  {\"id\":\"\",\"label\":\"interpolate frames\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"interpolate frames\"},\n  {\"id\":\"\",\"label\":\"interpolation method\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"interpolation method\"},\n  {\"id\":\"\",\"label\":\"invert\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"invert\"},\n  {\"id\":\"\",\"label\":\"invert mask\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"invert mask\"},\n  {\"id\":\"\",\"label\":\"iou\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"iou\"},\n  {\"id\":\"\",\"label\":\"ipex\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"ipex\"},\n  {\"id\":\"\",\"label\":\"ipndm\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"ipndm\"},\n  {\"id\":\"\",\"label\":\"item edge blur\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"item edge blur\"},\n  {\"id\":\"\",\"label\":\"item padding\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"item padding\"},\n  {\"id\":\"\",\"label\":\"iterate seed per line\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"iterate seed per line\"},\n  {\"id\":\"\",\"label\":\"iterations\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"iterations\"},\n  {\"id\":\"\",\"label\":\"karras\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"karras\"},\n  {\"id\":\"\",\"label\":\"kdpm2\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"kdpm2\"},\n  {\"id\":\"\",\"label\":\"kdpm2 a\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"kdpm2 a\"},\n  {\"id\":\"\",\"label\":\"keep incomplete images\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"keep incomplete images\"},\n  {\"id\":\"\",\"label\":\"Keep Thinking Trace\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Include the model's reasoning process in the final output.<br>Useful for understanding how the model arrived at its answer.<br>Only works with models that support thinking mode.\"},\n  {\"id\":\"\",\"label\":\"Keep Prefill\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Include the prefill text at the beginning of the final output.<br>If disabled, the prefill text used to guide the model is removed from the result.\"},\n  {\"id\":\"\",\"label\":\"large\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"large\"},\n  {\"id\":\"\",\"label\":\"latent history size\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"latent history size\"},\n  {\"id\":\"\",\"label\":\"latent mode\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"latent mode\"},\n  {\"id\":\"\",\"label\":\"layer scales\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"layer scales\"},\n  {\"id\":\"\",\"label\":\"layerwise casting storage\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"layerwise casting storage\"},\n  {\"id\":\"\",\"label\":\"layerwise non-blocking operations\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"layerwise non-blocking operations\"},\n  {\"id\":\"\",\"label\":\"lcm\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"lcm\"},\n  {\"id\":\"\",\"label\":\"ldsr processing steps\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"ldsr processing steps\"},\n  {\"id\":\"\",\"label\":\"left\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"left\"},\n  {\"id\":\"\",\"label\":\"legend\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"legend\"},\n  {\"id\":\"\",\"label\":\"length\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"length\"},\n  {\"id\":\"\",\"label\":\"leres depth\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"leres depth\"},\n  {\"id\":\"\",\"label\":\"level\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"level\"},\n  {\"id\":\"\",\"label\":\"libs\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"libs\"},\n  {\"id\":\"\",\"label\":\"light\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"light\"},\n  {\"id\":\"\",\"label\":\"lineart\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"lineart\"},\n  {\"id\":\"\",\"label\":\"list\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"list\"},\n  {\"id\":\"\",\"label\":\"list model details\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"list model details\"},\n  {\"id\":\"\",\"label\":\"lite\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"lite\"},\n  {\"id\":\"\",\"label\":\"live update\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"live update\"},\n  {\"id\":\"\",\"label\":\"lmsd\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"lmsd\"},\n  {\"id\":\"\",\"label\":\"load custom diffusers pipeline\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"load custom diffusers pipeline\"},\n  {\"id\":\"\",\"label\":\"load model directly to gpu\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"load model directly to gpu\"},\n  {\"id\":\"\",\"label\":\"loaded lora\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"loaded lora\"},\n  {\"id\":\"\",\"label\":\"logsnr\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"logsnr\"},\n  {\"id\":\"\",\"label\":\"loop\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"loop\"},\n  {\"id\":\"\",\"label\":\"LoRA add hash info to metadata\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Include LoRA file hashes in generated image metadata.<br>Useful for reproducibility and tracking which exact LoRA versions were used.\"},\n  {\"id\":\"\",\"label\":\"LoRA auto-apply tags\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Automatically add trigger words/tags from LoRA metadata to your prompt.<br>Set to the number of tags to auto-apply, e.g., 3 = add top 3 trigger tags.<br>Set to 0 to disable, -1 to add all available tags.\"},\n  {\"id\":\"\",\"label\":\"lora load using diffusers method for selected models\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"lora load using diffusers method for selected models\"},\n  {\"id\":\"\",\"label\":\"lora load using legacy method\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"lora load using legacy method\"},\n  {\"id\":\"\",\"label\":\"lora target filename\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"lora target filename\"},\n  {\"id\":\"\",\"label\":\"low order\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"low order\"},\n  {\"id\":\"\",\"label\":\"low threshold\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"low threshold\"},\n  {\"id\":\"\",\"label\":\"ltx model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"ltx model\"},\n  {\"id\":\"\",\"label\":\"lumina: use mask in transformers\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"lumina: use mask in transformers\"},\n  {\"id\":\"\",\"label\":\"manual block merge\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"manual block merge\"},\n  {\"id\":\"\",\"label\":\"marigold depth\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"marigold depth\"},\n  {\"id\":\"\",\"label\":\"mask dropout\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"mask dropout\"},\n  {\"id\":\"\",\"label\":\"mask invert\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"mask invert\"},\n  {\"id\":\"\",\"label\":\"mask only\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"mask only\"},\n  {\"id\":\"\",\"label\":\"mask strength\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"mask strength\"},\n  {\"id\":\"\",\"label\":\"masked\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"masked\"},\n  {\"id\":\"\",\"label\":\"max faces\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"max faces\"},\n  {\"id\":\"\",\"label\":\"max flavors\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"max flavors\"},\n  {\"id\":\"\",\"label\":\"max guidance\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"max guidance\"},\n  {\"id\":\"\",\"label\":\"max length\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"max length\"},\n  {\"id\":\"\",\"label\":\"max object size\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"max object size\"},\n  {\"id\":\"\",\"label\":\"max range\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"max range\"},\n  {\"id\":\"\",\"label\":\"Max tokens\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Maximum number of tokens the model can generate in its response.<br>The model is not aware of this limit during generation and it won't make the model try to generate more detailed or more concise responses, it simply sets the hard limit for the length, and will forcefully cut off the response when the limit is reached.\"},\n  {\"id\":\"\",\"label\":\"max words\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"max words\"},\n  {\"id\":\"\",\"label\":\"max-autotune\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"max-autotune\"},\n  {\"id\":\"\",\"label\":\"max-autotune-no-cudagraphs\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"max-autotune-no-cudagraphs\"},\n  {\"id\":\"\",\"label\":\"maximum image size (mp)\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"maximum image size (mp)\"},\n  {\"id\":\"\",\"label\":\"maximum number of units\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"maximum number of units\"},\n  {\"id\":\"\",\"label\":\"maximum rank\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"maximum rank\"},\n  {\"id\":\"\",\"label\":\"mediapipe face\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"mediapipe face\"},\n  {\"id\":\"\",\"label\":\"medium\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"medium\"},\n  {\"id\":\"\",\"label\":\"mediums\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"mediums\"},\n  {\"id\":\"\",\"label\":\"memory\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"memory\"},\n  {\"id\":\"\",\"label\":\"memory limit\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"memory limit\"},\n  {\"id\":\"\",\"label\":\"memory optimization\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"memory optimization\"},\n  {\"id\":\"\",\"label\":\"merge alpha\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"merge alpha\"},\n  {\"id\":\"\",\"label\":\"method\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"method\"},\n  {\"id\":\"\",\"label\":\"method after\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"method after\"},\n  {\"id\":\"\",\"label\":\"method before\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"method before\"},\n  {\"id\":\"\",\"label\":\"method mask\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"method mask\"},\n  {\"id\":\"\",\"label\":\"midas depth\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"midas depth\"},\n  {\"id\":\"\",\"label\":\"migraphx\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"migraphx\"},\n  {\"id\":\"\",\"label\":\"min flavors\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"min flavors\"},\n  {\"id\":\"\",\"label\":\"min guidance\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"min guidance\"},\n  {\"id\":\"\",\"label\":\"min length\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"min length\"},\n  {\"id\":\"\",\"label\":\"min object size\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"min object size\"},\n  {\"id\":\"\",\"label\":\"mine\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"mine\"},\n  {\"id\":\"\",\"label\":\"mlsd\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"mlsd\"},\n  {\"id\":\"\",\"label\":\"mm\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"mm\"},\n  {\"id\":\"\",\"label\":\"mode\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"mode\"},\n  {\"id\":\"\",\"label\":\"mode after\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"mode after\"},\n  {\"id\":\"\",\"label\":\"mode before\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"mode before\"},\n  {\"id\":\"\",\"label\":\"mode mask\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"mode mask\"},\n  {\"id\":\"\",\"label\":\"mode x-axis\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"mode x-axis\"},\n  {\"id\":\"\",\"label\":\"mode y-axis\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"mode y-axis\"},\n  {\"id\":\"\",\"label\":\"model auto-download on demand\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"model auto-download on demand\"},\n  {\"id\":\"\",\"label\":\"model autoload on start\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"model autoload on start\"},\n  {\"id\":\"\",\"label\":\"model compile fullgraph\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"model compile fullgraph\"},\n  {\"id\":\"\",\"label\":\"model compile suppress errors\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"model compile suppress errors\"},\n  {\"id\":\"\",\"label\":\"model compile verbose mode\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"model compile verbose mode\"},\n  {\"id\":\"\",\"label\":\"model info\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"model info\"},\n  {\"id\":\"\",\"label\":\"model metadata\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"model metadata\"},\n  {\"id\":\"\",\"label\":\"model name\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"model name\"},\n  {\"id\":\"\",\"label\":\"model precision\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"model precision\"},\n  {\"id\":\"\",\"label\":\"model type\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"model type\"},\n  {\"id\":\"\",\"label\":\"model url\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"model url\"},\n  {\"id\":\"\",\"label\":\"modern\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"modern\"},\n  {\"id\":\"\",\"label\":\"momentum\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"momentum\"},\n  {\"id\":\"\",\"label\":\"motion level\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"motion level\"},\n  {\"id\":\"\",\"label\":\"mount url subpath\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"mount url subpath\"},\n  {\"id\":\"\",\"label\":\"move base model to cpu when using refiner\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"move base model to cpu when using refiner\"},\n  {\"id\":\"\",\"label\":\"move base model to cpu when using vae\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"move base model to cpu when using vae\"},\n  {\"id\":\"\",\"label\":\"move detailer model to cpu when complete\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"move detailer model to cpu when complete\"},\n  {\"id\":\"\",\"label\":\"move refiner model to cpu when not in use\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"move refiner model to cpu when not in use\"},\n  {\"id\":\"\",\"label\":\"movements\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"movements\"},\n  {\"id\":\"\",\"label\":\"multi decoder\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"multi decoder\"},\n  {\"id\":\"\",\"label\":\"multistep restore\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"multistep restore\"},\n  {\"id\":\"\",\"label\":\"native\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"native\"},\n  {\"id\":\"\",\"label\":\"near threshold\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"near threshold\"},\n  {\"id\":\"\",\"label\":\"negative\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"negative\"},\n  {\"id\":\"\",\"label\":\"network negative prompt\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"network negative prompt\"},\n  {\"id\":\"\",\"label\":\"network parameters\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"network parameters\"},\n  {\"id\":\"\",\"label\":\"network prompt\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"network prompt\"},\n  {\"id\":\"\",\"label\":\"new model name\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"new model name\"},\n  {\"id\":\"\",\"label\":\"nf4\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"nf4\"},\n  {\"id\":\"\",\"label\":\"nms\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"nms\"},\n  {\"id\":\"\",\"label\":\"noise\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"noise\"},\n  {\"id\":\"\",\"label\":\"noise multiplier (eta)\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"noise multiplier (eta)\"},\n  {\"id\":\"\",\"label\":\"noise multiplier for image processing\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"noise multiplier for image processing\"},\n  {\"id\":\"\",\"label\":\"noise seed delta (eta)\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"noise seed delta (eta)\"},\n  {\"id\":\"\",\"label\":\"noise strength\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"noise strength\"},\n  {\"id\":\"\",\"label\":\"none\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"none\"},\n  {\"id\":\"\",\"label\":\"note\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"note\"},\n  {\"id\":\"\",\"label\":\"nothing\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"nothing\"},\n  {\"id\":\"\",\"label\":\"num beams\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Maintains multiple candidate paths simultaneously and selects the overall best sequence.<br>Like exploring several drafts at once to find the best one. More thorough but much slower and less creative than random sampling.<br>Generally not recommended, most modern VLMs perform better with sampling methods.<br>Set to 1 to disable.\"},\n  {\"id\":\"\",\"label\":\"number\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"number\"},\n  {\"id\":\"\",\"label\":\"numbered filenames\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"numbered filenames\"},\n  {\"id\":\"\",\"label\":\"offload\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"offload\"},\n  {\"id\":\"\",\"label\":\"offload face module\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"offload face module\"},\n  {\"id\":\"\",\"label\":\"offload models\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"offload models\"},\n  {\"id\":\"\",\"label\":\"olive-ai\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"olive-ai\"},\n  {\"id\":\"\",\"label\":\"onediff\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"onediff\"},\n  {\"id\":\"\",\"label\":\"onnx\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"onnx\"},\n  {\"id\":\"\",\"label\":\"openbody\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"openbody\"},\n  {\"id\":\"\",\"label\":\"openclip\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"openclip\"},\n  {\"id\":\"\",\"label\":\"openvino disable memory cleanup after compile\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"openvino disable memory cleanup after compile\"},\n  {\"id\":\"\",\"label\":\"openvino disable model caching\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"openvino disable model caching\"},\n  {\"id\":\"\",\"label\":\"openvino mode\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"openvino mode\"},\n  {\"id\":\"\",\"label\":\"openvino_fx\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"openvino_fx\"},\n  {\"id\":\"\",\"label\":\"optional image description\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"optional image description\"},\n  {\"id\":\"\",\"label\":\"optional init image or video\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"optional init image or video\"},\n  {\"id\":\"\",\"label\":\"order\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"order\"},\n  {\"id\":\"\",\"label\":\"ortho\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"ortho\"},\n  {\"id\":\"\",\"label\":\"outpaint\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"outpaint\"},\n  {\"id\":\"\",\"label\":\"output model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"output model\"},\n  {\"id\":\"\",\"label\":\"override resolution\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"override resolution\"},\n  {\"id\":\"\",\"label\":\"override sampler\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"override sampler\"},\n  {\"id\":\"\",\"label\":\"override scheduler\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"override scheduler\"},\n  {\"id\":\"\",\"label\":\"override steps\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"override steps\"},\n  {\"id\":\"\",\"label\":\"override t1 ratio\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"override t1 ratio\"},\n  {\"id\":\"\",\"label\":\"override t2 ratio\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"override t2 ratio\"},\n  {\"id\":\"\",\"label\":\"overwrite existing file\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"overwrite existing file\"},\n  {\"id\":\"\",\"label\":\"overwrite model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"overwrite model\"},\n  {\"id\":\"\",\"label\":\"pad frames\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"pad frames\"},\n  {\"id\":\"\",\"label\":\"padding\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"padding\"},\n  {\"id\":\"\",\"label\":\"parallel process images in batch\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"parallel process images in batch\"},\n  {\"id\":\"\",\"label\":\"parameter free\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"parameter free\"},\n  {\"id\":\"\",\"label\":\"path to model file\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"path to model file\"},\n  {\"id\":\"\",\"label\":\"path to notification sound\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"path to notification sound\"},\n  {\"id\":\"\",\"label\":\"peft\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"peft\"},\n  {\"id\":\"\",\"label\":\"penalty\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"penalty\"},\n  {\"id\":\"\",\"label\":\"perflow\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"perflow\"},\n  {\"id\":\"\",\"label\":\"perform injection\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"perform injection\"},\n  {\"id\":\"\",\"label\":\"perform sdsa\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"perform sdsa\"},\n  {\"id\":\"\",\"label\":\"perform warmup\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"perform warmup\"},\n  {\"id\":\"\",\"label\":\"performance\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"performance\"},\n  {\"id\":\"\",\"label\":\"photomaker model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"photomaker model\"},\n  {\"id\":\"\",\"label\":\"pidinet\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"pidinet\"},\n  {\"id\":\"\",\"label\":\"pipeline\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"pipeline\"},\n  {\"id\":\"\",\"label\":\"pixels to expand\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"pixels to expand\"},\n  {\"id\":\"\",\"label\":\"platform\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"platform\"},\n  {\"id\":\"\",\"label\":\"play\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"play\"},\n  {\"id\":\"\",\"label\":\"play a notification upon completion\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"play a notification upon completion\"},\n  {\"id\":\"\",\"label\":\"pndm\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"pndm\"},\n  {\"id\":\"\",\"label\":\"polyexponential\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"polyexponential\"},\n  {\"id\":\"\",\"label\":\"pony\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"pony\"},\n  {\"id\":\"\",\"label\":\"pose confidence\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"pose confidence\"},\n  {\"id\":\"\",\"label\":\"positive\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"positive\"},\n  {\"id\":\"\",\"label\":\"postprocess mask\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"postprocess mask\"},\n  {\"id\":\"\",\"label\":\"postprocess upscale\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"postprocess upscale\"},\n  {\"id\":\"\",\"label\":\"postprocessing operation order\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"postprocessing operation order\"},\n  {\"id\":\"\",\"label\":\"power\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"power\"},\n  {\"id\":\"\",\"label\":\"preset\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"preset\"},\n  {\"id\":\"\",\"label\":\"preset block merge\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"preset block merge\"},\n  {\"id\":\"\",\"label\":\"preview\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"preview\"},\n  {\"id\":\"\",\"label\":\"preview end\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"preview end\"},\n  {\"id\":\"\",\"label\":\"preview start\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"preview start\"},\n  {\"id\":\"\",\"label\":\"primary model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"primary model\"},\n  {\"id\":\"\",\"label\":\"processor move to cpu after use\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"processor move to cpu after use\"},\n  {\"id\":\"\",\"label\":\"processor settings\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"processor settings\"},\n  {\"id\":\"\",\"label\":\"processor unload after use\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"processor unload after use\"},\n  {\"id\":\"\",\"label\":\"prompt ex\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"prompt ex\"},\n  {\"id\":\"\",\"label\":\"prompt processor\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"prompt processor\"},\n  {\"id\":\"\",\"label\":\"prompt strength\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"prompt strength\"},\n  {\"id\":\"\",\"label\":\"prompt thresholds:\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"prompt thresholds:\"},\n  {\"id\":\"\",\"label\":\"prompts\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"prompts\"},\n  {\"id\":\"\",\"label\":\"provider\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"provider\"},\n  {\"id\":\"\",\"label\":\"prune\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"prune\"},\n  {\"id\":\"\",\"label\":\"quad\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"quad\"},\n  {\"id\":\"\",\"label\":\"quantization activations type\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"quantization activations type\"},\n  {\"id\":\"\",\"label\":\"quantization mode\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"quantization mode\"},\n  {\"id\":\"\",\"label\":\"quantization type\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"quantization type\"},\n  {\"id\":\"\",\"label\":\"quantization weights type\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"quantization weights type\"},\n  {\"id\":\"\",\"label\":\"random seeds\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"random seeds\"},\n  {\"id\":\"\",\"label\":\"range\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"range\"},\n  {\"id\":\"\",\"label\":\"rebase\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"rebase\"},\n  {\"id\":\"\",\"label\":\"recursive\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"recursive\"},\n  {\"id\":\"\",\"label\":\"reduce-overhead\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"reduce-overhead\"},\n  {\"id\":\"\",\"label\":\"redux prompt strength\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"redux prompt strength\"},\n  {\"id\":\"\",\"label\":\"reference adain weight\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"reference adain weight\"},\n  {\"id\":\"\",\"label\":\"reference query weight\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"reference query weight\"},\n  {\"id\":\"\",\"label\":\"reference unit 1\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"reference unit 1\"},\n  {\"id\":\"\",\"label\":\"refine foreground\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"refine foreground\"},\n  {\"id\":\"\",\"label\":\"refresh bench\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"refresh bench\"},\n  {\"id\":\"\",\"label\":\"refresh data\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"refresh data\"},\n  {\"id\":\"\",\"label\":\"refresh state\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"refresh state\"},\n  {\"id\":\"\",\"label\":\"refresh ui values\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"refresh ui values\"},\n  {\"id\":\"\",\"label\":\"reinstall\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"reinstall\"},\n  {\"id\":\"\",\"label\":\"remove background\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"remove background\"},\n  {\"id\":\"\",\"label\":\"repeat x-axis\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"repeat x-axis\"},\n  {\"id\":\"\",\"label\":\"repeat y-axis\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"repeat y-axis\"},\n  {\"id\":\"\",\"label\":\"replace vae\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"replace vae\"},\n  {\"id\":\"\",\"label\":\"repos\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"repos\"},\n  {\"id\":\"\",\"label\":\"reprocess decode\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"reprocess decode\"},\n  {\"id\":\"\",\"label\":\"reprocess face\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"reprocess face\"},\n  {\"id\":\"\",\"label\":\"reprocess refine\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"reprocess refine\"},\n  {\"id\":\"\",\"label\":\"request browser notifications\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"request browser notifications\"},\n  {\"id\":\"\",\"label\":\"rescale\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"rescale betas with zero terminal snr\"},\n  {\"id\":\"\",\"label\":\"rescale betas with zero terminal snr\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"rescale betas with zero terminal snr\"},\n  {\"id\":\"\",\"label\":\"reset anchors\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"reset anchors\"},\n  {\"id\":\"\",\"label\":\"residual diff threshold\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"residual diff threshold\"},\n  {\"id\":\"\",\"label\":\"resize background color\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"resize background color\"},\n  {\"id\":\"\",\"label\":\"resize method\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"resize method\"},\n  {\"id\":\"\",\"label\":\"resize scale\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"resize scale\"},\n  {\"id\":\"\",\"label\":\"restart step\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"restart step\"},\n  {\"id\":\"\",\"label\":\"restore faces: codeformer\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"restore faces: codeformer\"},\n  {\"id\":\"\",\"label\":\"restore faces: gfpgan\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"restore faces: gfpgan\"},\n  {\"id\":\"\",\"label\":\"restore pipe on end\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"restore pipe on end\"},\n  {\"id\":\"\",\"label\":\"restore unparsed prompt\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"restore unparsed prompt\"},\n  {\"id\":\"\",\"label\":\"reswapper model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"reswapper model\"},\n  {\"id\":\"\",\"label\":\"return original images\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"return original images\"},\n  {\"id\":\"\",\"label\":\"right\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"right\"},\n  {\"id\":\"\",\"label\":\"root model folder\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"root model folder\"},\n  {\"id\":\"\",\"label\":\"rows\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"rows\"},\n  {\"id\":\"\",\"label\":\"run\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"run\"},\n  {\"id\":\"\",\"label\":\"run benchmark\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"run benchmark\"},\n  {\"id\":\"\",\"label\":\"sa solver\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"sa solver\"},\n  {\"id\":\"\",\"label\":\"safetensors\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"safetensors\"},\n  {\"id\":\"\",\"label\":\"same as primary\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"same as primary\"},\n  {\"id\":\"\",\"label\":\"same latent\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"same latent\"},\n  {\"id\":\"\",\"label\":\"sample\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"sample\"},\n  {\"id\":\"\",\"label\":\"sampler\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"sampler\"},\n  {\"id\":\"\",\"label\":\"sampler shift\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"sampler shift\"},\n  {\"id\":\"\",\"label\":\"sana: use complex human instructions\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"sana: use complex human instructions\"},\n  {\"id\":\"\",\"label\":\"saturation\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"saturation\"},\n  {\"id\":\"\",\"label\":\"save all generated image grids\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"save all generated image grids\"},\n  {\"id\":\"\",\"label\":\"save all generated images\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"save all generated images\"},\n  {\"id\":\"\",\"label\":\"save caption files\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"save caption files\"},\n  {\"id\":\"\",\"label\":\"save diffusers\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"save diffusers\"},\n  {\"id\":\"\",\"label\":\"save hdr image\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"save hdr image\"},\n  {\"id\":\"\",\"label\":\"save image before color correction\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"save image before color correction\"},\n  {\"id\":\"\",\"label\":\"save image before detailer\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"save image before detailer\"},\n  {\"id\":\"\",\"label\":\"save image before hires\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"save image before hires\"},\n  {\"id\":\"\",\"label\":\"save image before refiner\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"save image before refiner\"},\n  {\"id\":\"\",\"label\":\"save images to a subdirectory\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"save images to a subdirectory\"},\n  {\"id\":\"\",\"label\":\"save init images\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"save init images\"},\n  {\"id\":\"\",\"label\":\"save inpainting mask\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"save inpainting mask\"},\n  {\"id\":\"\",\"label\":\"save inpainting masked composite\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"save inpainting masked composite\"},\n  {\"id\":\"\",\"label\":\"save metadata\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"save metadata\"},\n  {\"id\":\"\",\"label\":\"save only saves selected image\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"save only saves selected image\"},\n  {\"id\":\"\",\"label\":\"save output\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"save output\"},\n  {\"id\":\"\",\"label\":\"save safetensors\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"save safetensors\"},\n  {\"id\":\"\",\"label\":\"save unparsed prompt\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"save unparsed prompt\"},\n  {\"id\":\"\",\"label\":\"scale  after\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"scale  after\"},\n  {\"id\":\"\",\"label\":\"scale  before\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"scale  before\"},\n  {\"id\":\"\",\"label\":\"scale  mask\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"scale  mask\"},\n  {\"id\":\"\",\"label\":\"scale factor\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"scale factor\"},\n  {\"id\":\"\",\"label\":\"score\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"score\"},\n  {\"id\":\"\",\"label\":\"score threshold\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"score threshold\"},\n  {\"id\":\"\",\"label\":\"scribble\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"scribble\"},\n  {\"id\":\"\",\"label\":\"sd15-attire\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"sd15-attire\"},\n  {\"id\":\"\",\"label\":\"sd15-likeness\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"sd15-likeness\"},\n  {\"id\":\"\",\"label\":\"sd15-navimixu\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"sd15-navimixu\"},\n  {\"id\":\"\",\"label\":\"sd15-sexy\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"sd15-sexy\"},\n  {\"id\":\"\",\"label\":\"sdxl-artstyle\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"sdxl-artstyle\"},\n  {\"id\":\"\",\"label\":\"sdxl-negative\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"sdxl-negative\"},\n  {\"id\":\"\",\"label\":\"sdxl-sexy\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"sdxl-sexy\"},\n  {\"id\":\"\",\"label\":\"sdxl-sliders\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"sdxl-sliders\"},\n  {\"id\":\"\",\"label\":\"sdxl-toon\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"sdxl-toon\"},\n  {\"id\":\"\",\"label\":\"sdxl: use weighted pooled embeds\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"sdxl: use weighted pooled embeds\"},\n  {\"id\":\"\",\"label\":\"search changelog\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"search changelog\"},\n  {\"id\":\"\",\"label\":\"search models\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"search models\"},\n  {\"id\":\"\",\"label\":\"search wiki pages\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"search wiki pages\"},\n  {\"id\":\"\",\"label\":\"secondary model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"secondary model\"},\n  {\"id\":\"\",\"label\":\"segmentanything\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"segmentanything\"},\n  {\"id\":\"\",\"label\":\"select\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"select\"},\n  {\"id\":\"\",\"label\":\"select model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"select model\"},\n  {\"id\":\"\",\"label\":\"send interrupt\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"send interrupt\"},\n  {\"id\":\"\",\"label\":\"send seed when sending prompt or image to other interface\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"send seed when sending prompt or image to other interface\"},\n  {\"id\":\"\",\"label\":\"send size when sending prompt or image to another interface\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"send size when sending prompt or image to another interface\"},\n  {\"id\":\"\",\"label\":\"sequential\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"sequential\"},\n  {\"id\":\"\",\"label\":\"server start time\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"server start time\"},\n  {\"id\":\"\",\"label\":\"set at prompt start\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"set at prompt start\"},\n  {\"id\":\"\",\"label\":\"set ui menu states\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"set ui menu states\"},\n  {\"id\":\"\",\"label\":\"share queries\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"share queries\"},\n  {\"id\":\"\",\"label\":\"shared options\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"shared options\"},\n  {\"id\":\"\",\"label\":\"sharpen\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"sharpen\"},\n  {\"id\":\"\",\"label\":\"shift\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"shift\"},\n  {\"id\":\"\",\"label\":\"show grid in results\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"show grid in results\"},\n  {\"id\":\"\",\"label\":\"show input\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"show input\"},\n  {\"id\":\"\",\"label\":\"show metadata in full screen image browser\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"show metadata in full screen image browser\"},\n  {\"id\":\"\",\"label\":\"show motd\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"show motd\"},\n  {\"id\":\"\",\"label\":\"show preview\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"show preview\"},\n  {\"id\":\"\",\"label\":\"shuffle weights\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"shuffle weights\"},\n  {\"id\":\"\",\"label\":\"sigma\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"sigma\"},\n  {\"id\":\"\",\"label\":\"sigma churn\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"sigma churn\"},\n  {\"id\":\"\",\"label\":\"sigma max\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"sigma max\"},\n  {\"id\":\"\",\"label\":\"sigma min\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"sigma min\"},\n  {\"id\":\"\",\"label\":\"sigma noise\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"sigma noise\"},\n  {\"id\":\"\",\"label\":\"sigma tmin\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"sigma tmin\"},\n  {\"id\":\"\",\"label\":\"simple merge\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"simple merge\"},\n  {\"id\":\"\",\"label\":\"size\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"size\"},\n  {\"id\":\"\",\"label\":\"sketch\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"sketch\"},\n  {\"id\":\"\",\"label\":\"skip generation if nan found in latents\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"skip generation if nan found in latents\"},\n  {\"id\":\"\",\"label\":\"skip guidance layers\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"skip guidance layers\"},\n  {\"id\":\"\",\"label\":\"skip input frames\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"skip input frames\"},\n  {\"id\":\"\",\"label\":\"slider\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"slider\"},\n  {\"id\":\"\",\"label\":\"smooth mask\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"smooth mask\"},\n  {\"id\":\"\",\"label\":\"solver order (where\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"solver order (where\"},\n  {\"id\":\"\",\"label\":\"sort order\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"sort order\"},\n  {\"id\":\"\",\"label\":\"source subject\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"source subject\"},\n  {\"id\":\"\",\"label\":\"space\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"space\"},\n  {\"id\":\"\",\"label\":\"spatial frequency\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"spatial frequency\"},\n  {\"id\":\"\",\"label\":\"specify model revision\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"specify model revision\"},\n  {\"id\":\"\",\"label\":\"specify model variant\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"specify model variant\"},\n  {\"id\":\"\",\"label\":\"stable-fast\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"stable-fast\"},\n  {\"id\":\"\",\"label\":\"standard\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"standard\"},\n  {\"id\":\"\",\"label\":\"start\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"start\"},\n  {\"id\":\"\",\"label\":\"start profiling\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"start profiling\"},\n  {\"id\":\"\",\"label\":\"state\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"state\"},\n  {\"id\":\"\",\"label\":\"stride\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"stride\"},\n  {\"id\":\"\",\"label\":\"structure\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"structure\"},\n  {\"id\":\"\",\"label\":\"style fidelity\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"style fidelity\"},\n  {\"id\":\"\",\"label\":\"subject\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"subject\"},\n  {\"id\":\"\",\"label\":\"submit results\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"submit results\"},\n  {\"id\":\"\",\"label\":\"submodules\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"submodules\"},\n  {\"id\":\"\",\"label\":\"swap x/y\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"swap x/y\"},\n  {\"id\":\"\",\"label\":\"swap x/z\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"swap x/z\"},\n  {\"id\":\"\",\"label\":\"swap y/z\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"swap y/z\"},\n  {\"id\":\"\",\"label\":\"t2i adapter\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"t2i adapter\"},\n  {\"id\":\"\",\"label\":\"t2i strength\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"t2i strength\"},\n  {\"id\":\"\",\"label\":\"t2i-adapter unit 1\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"t2i-adapter unit 1\"},\n  {\"id\":\"\",\"label\":\"t2i-adapter unit 2\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"t2i-adapter unit 2\"},\n  {\"id\":\"\",\"label\":\"t2i-adapter unit 3\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"t2i-adapter unit 3\"},\n  {\"id\":\"\",\"label\":\"t2i-adapter unit 4\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"t2i-adapter unit 4\"},\n  {\"id\":\"\",\"label\":\"taesd\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"taesd\"},\n  {\"id\":\"\",\"label\":\"taesd decode layers\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"taesd decode layers\"},\n  {\"id\":\"\",\"label\":\"taesd variant\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"taesd variant\"},\n  {\"id\":\"\",\"label\":\"target subject\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"target subject\"},\n  {\"id\":\"\",\"label\":\"tcd\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"tcd\"},\n  {\"id\":\"\",\"label\":\"tdd\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"tdd\"},\n  {\"id\":\"\",\"label\":\"te\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"te\"},\n  {\"id\":\"\",\"label\":\"temperature\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Controls randomness in token selection by reshaping the probability distribution.<br>Like adjusting a dial between cautious predictability (low values ~0.4) and creative exploration (higher values ~1). Higher temperatures increase willingness to choose less obvious options, but makes outputs more unpredictable.<br><br>Set to 0 to disable, resulting in silent switch to greedy decoding, disabling sampling.\"},\n  {\"id\":\"\",\"label\":\"Thinking Mode\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Enables thinking/reasoning, allowing the model to take more time to generate responses.<br>This can lead to more thoughtful and detailed answers, but will increase response time.<br>This setting affects both hybrid and thinking-only models, and in some may result in lower overall quality than expected. For thinking-only models like Qwen3-VL this setting might have to be combined with prefill to guarantee preventing thinking.<br><br>Models supporting this feature are marked with an \\uf0eb icon.\"},\n  {\"id\":\"\",\"label\":\"Repetition penalty\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Discourages reusing tokens that already appear in the prompt or output by penalizing their probabilities.<br>Like adding friction to revisiting previous choices. Helps break repetitive loops but may reduce coherence at aggressive values.<br><br>Set to 1 to disable.\"},\n  {\"id\":\"\",\"label\":\"text guidance scale\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"text guidance scale\"},\n  {\"id\":\"\",\"label\":\"template\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"template\"},\n  {\"id\":\"\",\"label\":\"temporal frequency\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"temporal frequency\"},\n  {\"id\":\"\",\"label\":\"tertiary model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"tertiary model\"},\n  {\"id\":\"\",\"label\":\"text encoder cache size\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"text encoder cache size\"},\n  {\"id\":\"\",\"label\":\"text encoder model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"text encoder model\"},\n  {\"id\":\"\",\"label\":\"text inputs\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"text inputs\"},\n  {\"id\":\"\",\"label\":\"textbox\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"textbox\"},\n  {\"id\":\"\",\"label\":\"threshold\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"threshold\"},\n  {\"id\":\"\",\"label\":\"thresholding\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"thresholding\"},\n  {\"id\":\"\",\"label\":\"tile frames\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"tile frames\"},\n  {\"id\":\"\",\"label\":\"tile prompt: x=1 y=1\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"tile prompt: x=1 y=1\"},\n  {\"id\":\"\",\"label\":\"tile prompt: x=1 y=2\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"tile prompt: x=1 y=2\"},\n  {\"id\":\"\",\"label\":\"tile prompt: x=1 y=3\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"tile prompt: x=1 y=3\"},\n  {\"id\":\"\",\"label\":\"tile prompt: x=1 y=4\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"tile prompt: x=1 y=4\"},\n  {\"id\":\"\",\"label\":\"tile prompt: x=2 y=1\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"tile prompt: x=2 y=1\"},\n  {\"id\":\"\",\"label\":\"tile prompt: x=2 y=2\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"tile prompt: x=2 y=2\"},\n  {\"id\":\"\",\"label\":\"tile prompt: x=2 y=3\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"tile prompt: x=2 y=3\"},\n  {\"id\":\"\",\"label\":\"tile prompt: x=2 y=4\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"tile prompt: x=2 y=4\"},\n  {\"id\":\"\",\"label\":\"tile prompt: x=3 y=1\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"tile prompt: x=3 y=1\"},\n  {\"id\":\"\",\"label\":\"tile prompt: x=3 y=2\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"tile prompt: x=3 y=2\"},\n  {\"id\":\"\",\"label\":\"tile prompt: x=3 y=3\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"tile prompt: x=3 y=3\"},\n  {\"id\":\"\",\"label\":\"tile prompt: x=3 y=4\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"tile prompt: x=3 y=4\"},\n  {\"id\":\"\",\"label\":\"tile prompt: x=4 y=1\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"tile prompt: x=4 y=1\"},\n  {\"id\":\"\",\"label\":\"tile prompt: x=4 y=2\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"tile prompt: x=4 y=2\"},\n  {\"id\":\"\",\"label\":\"tile prompt: x=4 y=3\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"tile prompt: x=4 y=3\"},\n  {\"id\":\"\",\"label\":\"tile prompt: x=4 y=4\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"tile prompt: x=4 y=4\"},\n  {\"id\":\"\",\"label\":\"tiling options\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"tiling options\"},\n  {\"id\":\"\",\"label\":\"time embedding mix\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"time embedding mix\"},\n  {\"id\":\"\",\"label\":\"time_quadratic\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"time_quadratic\"},\n  {\"id\":\"\",\"label\":\"time_uniform\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"time_uniform\"},\n  {\"id\":\"\",\"label\":\"timestep\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"timestep\"},\n  {\"id\":\"\",\"label\":\"timestep skip end\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"timestep skip end\"},\n  {\"id\":\"\",\"label\":\"timestep skip start\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"timestep skip start\"},\n  {\"id\":\"\",\"label\":\"timesteps\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"timesteps\"},\n  {\"id\":\"\",\"label\":\"timesteps override\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"timesteps override\"},\n  {\"id\":\"\",\"label\":\"timesteps presets\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"timesteps presets\"},\n  {\"id\":\"\",\"label\":\"timesteps range\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"timesteps range\"},\n  {\"id\":\"\",\"label\":\"tiny\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"tiny\"},\n  {\"id\":\"\",\"label\":\"todo\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"todo\"},\n  {\"id\":\"\",\"label\":\"tome\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"tome\"},\n  {\"id\":\"\",\"label\":\"tool\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"tool\"},\n  {\"id\":\"\",\"label\":\"top-k\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Limits token selection to the K most likely candidates at each step.<br>Lower values (e.g., 40) make outputs more focused and predictable, while higher values allow more diverse choices.<br><br>Set to 0 to disable.\"},\n  {\"id\":\"\",\"label\":\"top-p\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Selects tokens from the smallest set whose cumulative probability exceeds P (e.g., 0.9).<br>Dynamically adapts the number of candidates based on model confidence; fewer options when certain, more when uncertain.<br><br>Set to 1 to disable.\"},\n  {\"id\":\"\",\"label\":\"torch\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"torch\"},\n  {\"id\":\"\",\"label\":\"transformer\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"transformer\"},\n  {\"id\":\"\",\"label\":\"trigger word\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"trigger word\"},\n  {\"id\":\"\",\"label\":\"true\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"true\"},\n  {\"id\":\"\",\"label\":\"tunable ops limit\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"tunable ops limit\"},\n  {\"id\":\"\",\"label\":\"ufogen\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"ufogen\"},\n  {\"id\":\"\",\"label\":\"ui card size (px)\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"ui card size (px)\"},\n  {\"id\":\"\",\"label\":\"ui fetch network info on mouse-over\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"ui fetch network info on mouse-over\"},\n  {\"id\":\"\",\"label\":\"ui height (%)\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"ui height (%)\"},\n  {\"id\":\"\",\"label\":\"ui locale\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"ui locale\"},\n  {\"id\":\"\",\"label\":\"ui request timeout\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"ui request timeout\"},\n  {\"id\":\"\",\"label\":\"ui show on startup\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"ui show on startup\"},\n  {\"id\":\"\",\"label\":\"ui sidebar width (%)\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"ui sidebar width (%)\"},\n  {\"id\":\"\",\"label\":\"ui theme\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"ui theme\"},\n  {\"id\":\"\",\"label\":\"unet\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"unet\"},\n  {\"id\":\"\",\"label\":\"unet depth\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"unet depth\"},\n  {\"id\":\"\",\"label\":\"unet enabled\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"unet enabled\"},\n  {\"id\":\"\",\"label\":\"unet max tile size\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"unet max tile size\"},\n  {\"id\":\"\",\"label\":\"unet min tile size\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"unet min tile size\"},\n  {\"id\":\"\",\"label\":\"unet model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"unet model\"},\n  {\"id\":\"\",\"label\":\"unet swap size\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"unet swap size\"},\n  {\"id\":\"\",\"label\":\"uniform\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"uniform\"},\n  {\"id\":\"\",\"label\":\"units\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"units\"},\n  {\"id\":\"\",\"label\":\"unload current model from vram\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"unload current model from vram\"},\n  {\"id\":\"\",\"label\":\"unload upscaler after processing\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"unload upscaler after processing\"},\n  {\"id\":\"\",\"label\":\"unset\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"unset\"},\n  {\"id\":\"\",\"label\":\"up\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"up\"},\n  {\"id\":\"\",\"label\":\"upcast attention layer\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"upcast attention layer\"},\n  {\"id\":\"\",\"label\":\"update\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"update\"},\n  {\"id\":\"\",\"label\":\"upload\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"upload\"},\n  {\"id\":\"\",\"label\":\"use brownian noise\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"use brownian noise\"},\n  {\"id\":\"\",\"label\":\"use cached model config when available\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"use cached model config when available\"},\n  {\"id\":\"\",\"label\":\"use defaults\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"use defaults\"},\n  {\"id\":\"\",\"label\":\"use dynamic thresholding\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"use dynamic thresholding\"},\n  {\"id\":\"\",\"label\":\"use fixed width thumbnails\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"use fixed width thumbnails\"},\n  {\"id\":\"\",\"label\":\"use image gallery cache\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"use image gallery cache\"},\n  {\"id\":\"\",\"label\":\"use karras sigmas\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"use karras sigmas\"},\n  {\"id\":\"\",\"label\":\"use line break as prompt segment marker\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"use line break as prompt segment marker\"},\n  {\"id\":\"\",\"label\":\"use model ema weights when possible\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"use model ema weights when possible\"},\n  {\"id\":\"\",\"label\":\"use quantization\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"use quantization\"},\n  {\"id\":\"\",\"label\":\"use random seeds\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"use random seeds\"},\n  {\"id\":\"\",\"label\":\"use reference values when available\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"use reference values when available\"},\n  {\"id\":\"\",\"label\":\"use same seed\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"use same seed\"},\n  {\"id\":\"\",\"label\":\"use samplers\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Enable to use sampling (randomly selecting tokens based on sampling methods like Top-k or Top-p) or disable to use greedy decoding (selecting the most probable token at each step).<br>Enabling makes outputs more diverse and more creative but less deterministic.\"},\n  {\"id\":\"\",\"label\":\"use separate base dict\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"use separate base dict\"},\n  {\"id\":\"\",\"label\":\"use simplified solvers in final steps\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"use simplified solvers in final steps\"},\n  {\"id\":\"\",\"label\":\"use text inputs\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"use text inputs\"},\n  {\"id\":\"\",\"label\":\"user\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"user\"},\n  {\"id\":\"\",\"label\":\"username\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"username\"},\n  {\"id\":\"\",\"label\":\"v_prediction\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"v_prediction\"},\n  {\"id\":\"\",\"label\":\"vae enabled\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"vae enabled\"},\n  {\"id\":\"\",\"label\":\"vae sliced encode\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"vae sliced encode\"},\n  {\"id\":\"\",\"label\":\"vae swap size\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"vae swap size\"},\n  {\"id\":\"\",\"label\":\"vae tile overlap\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"vae tile overlap\"},\n  {\"id\":\"\",\"label\":\"vae tile size\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"vae tile size\"},\n  {\"id\":\"\",\"label\":\"vary_coeff\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"vary_coeff\"},\n  {\"id\":\"\",\"label\":\"vdm solver\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"vdm solver\"},\n  {\"id\":\"\",\"label\":\"version\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"version\"},\n  {\"id\":\"\",\"label\":\"vgen params\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"vgen params\"},\n  {\"id\":\"\",\"label\":\"vibrance\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"vibrance\"},\n  {\"id\":\"\",\"label\":\"video file\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"video file\"},\n  {\"id\":\"\",\"label\":\"video type\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"video type\"},\n  {\"id\":\"\",\"label\":\"vlm\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"vlm\"},\n  {\"id\":\"\",\"label\":\"vlm model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Select which model to use for Visual Language tasks.<br><br>Models which support thinking mode are marked with an \\uf0eb icon.\"},\n  {\"id\":\"\",\"label\":\"vlm: default model\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"vlm: default model\"},\n  {\"id\":\"\",\"label\":\"vlm: default prompt\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"vlm: default prompt\"},\n  {\"id\":\"\",\"label\":\"vlm: max length\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"vlm: max length\"},\n  {\"id\":\"\",\"label\":\"VLM Num Beams\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Maintains multiple candidate paths simultaneously and selects the overall best sequence.<br>Like exploring several drafts at once to find the best one. More thorough but much slower and less creative than random sampling.<br>Generally not recommended, most modern VLMs perform better with sampling methods.<br>Set to 1 to disable.\"},\n  {\"id\":\"\",\"label\":\"vlm: top-k\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Limits token selection to the K most likely candidates at each step.<br>Lower values (e.g., 40) make outputs more focused and predictable, while higher values allow more diverse choices.<br>Set to 0 to disable.\"},\n  {\"id\":\"\",\"label\":\"vlm: top-p\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Selects tokens from the smallest set whose cumulative probability exceeds P (e.g., 0.9).<br>Dynamically adapts the number of candidates based on model confidence; fewer options when certain, more when uncertain.<br>Set to 1 to disable.\"},\n  {\"id\":\"\",\"label\":\"vlm: use sample method\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Enable to use sampling (randomly selecting tokens based on sampling methods like Top-k or Top-p) or disable to use greedy decoding (selecting the most probable token at each step).<br>Enabling makes outputs more diverse and creative but less deterministic.\"},\n  {\"id\":\"\",\"label\":\"VLM Max tokens\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Maximum number of tokens the model can generate in its response.<br>The model is not aware of this limit during generation and it won't make the model try to generate more detailed or more concise responses, it simply sets the hard limit for the length, and will forcefully cut off the response when the limit is reached.\"},\n  {\"id\":\"\",\"label\":\"VLM Temperature\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"Controls randomness in token selection. Lower values (e.g., 0.1) make outputs more focused and deterministic, always choosing high-probability tokens.<br>Higher values (e.g., 0.9) increase creativity and diversity by allowing less probable tokens.<br><br>Set to 0 for fully deterministic output (always picks the most likely token).\"},\n  {\"id\":\"\",\"label\":\"warmth\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"warmth\"},\n  {\"id\":\"\",\"label\":\"webp lossless compression\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"webp lossless compression\"},\n  {\"id\":\"\",\"label\":\"weight\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"weight\"},\n  {\"id\":\"\",\"label\":\"width  after\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"width  after\"},\n  {\"id\":\"\",\"label\":\"width  before\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"width  before\"},\n  {\"id\":\"\",\"label\":\"width  mask\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"width  mask\"},\n  {\"id\":\"\",\"label\":\"wiki\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"wiki\"},\n  {\"id\":\"\",\"label\":\"wildcards\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"wildcards\"},\n  {\"id\":\"\",\"label\":\"x components\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"x components\"},\n  {\"id\":\"\",\"label\":\"x overlap\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"x overlap\"},\n  {\"id\":\"\",\"label\":\"x type\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"x type\"},\n  {\"id\":\"\",\"label\":\"x-axis tile overlap\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"x-axis tile overlap\"},\n  {\"id\":\"\",\"label\":\"x-axis tiles\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"x-axis tiles\"},\n  {\"id\":\"\",\"label\":\"xhinker\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"xhinker\"},\n  {\"id\":\"\",\"label\":\"xs\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"xs\"},\n  {\"id\":\"\",\"label\":\"y components\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"y components\"},\n  {\"id\":\"\",\"label\":\"y overlap\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"y overlap\"},\n  {\"id\":\"\",\"label\":\"y type\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"y type\"},\n  {\"id\":\"\",\"label\":\"y-axis tile overlap\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"y-axis tile overlap\"},\n  {\"id\":\"\",\"label\":\"y-axis tiles\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"y-axis tiles\"},\n  {\"id\":\"\",\"label\":\"z type\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"z type\"},\n  {\"id\":\"\",\"label\":\"zero\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"zero\"},\n  {\"id\":\"\",\"label\":\"zoe depth\",\"localized\":\"\",\"reload\":\"\",\"hint\":\"zoe depth\"}\n]\n}\n"
  },
  {
    "path": "html/locale_es.json",
    "content": "{\n  \"icons\": [\n    {\n      \"id\": \"\",\n      \"label\": \"🎲️\",\n      \"localized\": \"🎲️\",\n      \"reload\": \"\",\n      \"hint\": \"Usar semilla aleatoria\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔄\",\n      \"localized\": \"🔄\",\n      \"reload\": \"\",\n      \"hint\": \"Restablecer valores\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⬆️\",\n      \"localized\": \"⬆️\",\n      \"reload\": \"\",\n      \"hint\": \"Subir imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⬅️\",\n      \"localized\": \"⬅️\",\n      \"reload\": \"\",\n      \"hint\": \"Reutilizar imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇅\",\n      \"localized\": \"⇅\",\n      \"reload\": \"\",\n      \"hint\": \"Intercambiar valores\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇨\",\n      \"localized\": \"⇨\",\n      \"reload\": \"\",\n      \"hint\": \"Aplicar preajuste a la pestaña de Fusión Manual de Bloques\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🕮\",\n      \"localized\": \"🕮\",\n      \"reload\": \"\",\n      \"hint\": \"Guardar parámetros de la última imagen generada como plantilla de estilo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇕\",\n      \"localized\": \"⇕\",\n      \"reload\": \"\",\n      \"hint\": \"Ordenar por: Nombre asc/desc, Tamaño mayor/menor, Tiempo más nuevo/antiguo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⟲\",\n      \"localized\": \"⟲\",\n      \"reload\": \"\",\n      \"hint\": \"Actualizar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"✕\",\n      \"localized\": \"✕\",\n      \"reload\": \"\",\n      \"hint\": \"Cerrar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⊜\",\n      \"localized\": \"⊜\",\n      \"reload\": \"\",\n      \"hint\": \"Rellenar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"※\",\n      \"localized\": \"※\",\n      \"reload\": \"\",\n      \"hint\": \"Cargar modelo como modelo de refinador cuando se selecciona, de lo contrario cargar como modelo base\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔎︎\",\n      \"localized\": \"🔎︎\",\n      \"reload\": \"\",\n      \"hint\": \"Escanear CivitAI en busca de metadatos y previsualizaciones faltantes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"☲\",\n      \"localized\": \"☲\",\n      \"reload\": \"\",\n      \"hint\": \"Cambiar tipo de vista\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⊗\",\n      \"localized\": \"⊗\",\n      \"reload\": \"\",\n      \"hint\": \"Restablecer valores\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"📐\",\n      \"localized\": \"📐\",\n      \"reload\": \"\",\n      \"hint\": \"Medir\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔍\",\n      \"localized\": \"🔍\",\n      \"reload\": \"\",\n      \"hint\": \"Buscar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🖌️\",\n      \"localized\": \"🖌️\",\n      \"reload\": \"\",\n      \"hint\": \"LaMa eliminar objeto seleccionado de la imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🖼️\",\n      \"localized\": \"🖼️\",\n      \"reload\": \"\",\n      \"hint\": \"Mostrar previsualización\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Interrogar imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⁜\",\n      \"localized\": \"⁜\",\n      \"reload\": \"\",\n      \"hint\": \"Alternar método de ajuste de imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"↶\",\n      \"localized\": \"↶\",\n      \"reload\": \"\",\n      \"hint\": \"Aplicar estilo seleccionado al prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"↷\",\n      \"localized\": \"↷\",\n      \"reload\": \"\",\n      \"hint\": \"Guardar prompt actual como estilo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Ordenar por nombre, ascendente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Ordenar por nombre, descendente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Ordenar por tamaño, ascendente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Ordenar por tamaño, descendente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Ordenar por resolución, ascendente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Ordenar por resolución, descendente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Ordenar por tiempo, ascendente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Ordenar por tiempo, descendente\"\n    }\n  ],\n  \"main\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt\",\n      \"localized\": \"Indicación\",\n      \"reload\": \"\",\n      \"hint\": \"Describe la imagen que deseas generar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Start\",\n      \"localized\": \"Iniciar\",\n      \"reload\": \"\",\n      \"hint\": \"Iniciar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"End\",\n      \"localized\": \"Fin\",\n      \"reload\": \"\",\n      \"hint\": \"Fin\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Core\",\n      \"localized\": \"Núcleo\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes del núcleo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System prompt\",\n      \"localized\": \"Indicación del sistema\",\n      \"reload\": \"\",\n      \"hint\": \"La indicación del sistema controla el comportamiento del LLM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Negative prompt\",\n      \"localized\": \"Indicación negativa\",\n      \"reload\": \"\",\n      \"hint\": \"Describe lo que no quieres ver en la imagen generada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Text\",\n      \"localized\": \"Texto\",\n      \"reload\": \"\",\n      \"hint\": \"Crear imagen desde texto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image\",\n      \"localized\": \"Imagen\",\n      \"reload\": \"\",\n      \"hint\": \"Crear imagen desde imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control\",\n      \"localized\": \"Control\",\n      \"reload\": \"\",\n      \"hint\": \"Crear imagen con guía completa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process\",\n      \"localized\": \"Procesar\",\n      \"reload\": \"\",\n      \"hint\": \"Procesar imagen existente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Caption\",\n      \"localized\": \"Leyenda\",\n      \"reload\": \"\",\n      \"hint\": \"Analiza imágenes existentes y crea descripciones de texto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Interrogate\",\n      \"localized\": \"Interrogar\",\n      \"reload\": \"\",\n      \"hint\": \"Ejecuta interrogación para obtener una descripción de tu imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models\",\n      \"localized\": \"Modelos\",\n      \"reload\": \"\",\n      \"hint\": \"Descarga, convierte o fusiona tus modelos y gestiona los metadatos de los modelos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Agent Scheduler\",\n      \"localized\": \"Programador de Agente\",\n      \"reload\": \"\",\n      \"hint\": \"Pon en cola tus solicitudes de generación y ejecútalas en segundo plano\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"AgentScheduler\",\n      \"localized\": \"Programador de Agente\",\n      \"reload\": \"\",\n      \"hint\": \"Pon en cola tus solicitudes de generación y ejecútalas en segundo plano\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System\",\n      \"localized\": \"Sistema\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes e información del sistema\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System Info\",\n      \"localized\": \"Información del sistema\",\n      \"reload\": \"\",\n      \"hint\": \"Información del sistema\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Settings\",\n      \"localized\": \"Configuración\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes de la aplicación\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Script\",\n      \"localized\": \"Script\",\n      \"reload\": \"\",\n      \"hint\": \"Scripts adicionales a utilizar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Generate\",\n      \"localized\": \"Generar\",\n      \"reload\": \"\",\n      \"hint\": \"Iniciar procesamiento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Generate forever\",\n      \"localized\": \"Generar continuamente\",\n      \"reload\": \"\",\n      \"hint\": \"Iniciar procesamiento y continuar hasta cancelar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enqueue\",\n      \"localized\": \"Poner en cola\",\n      \"reload\": \"\",\n      \"hint\": \"Añadir tarea a la cola en segundo plano en el Programador de Agente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reprocess\",\n      \"localized\": \"Reprocesar\",\n      \"reload\": \"\",\n      \"hint\": \"Reprocesar generaciones anteriores usando parámetros diferentes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Stop\",\n      \"localized\": \"Detener\",\n      \"reload\": \"\",\n      \"hint\": \"Detener procesamiento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Skip\",\n      \"localized\": \"Omitir\",\n      \"reload\": \"\",\n      \"hint\": \"Detener el trabajo actual y continuar procesando\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Pause\",\n      \"localized\": \"Pausar\",\n      \"reload\": \"\",\n      \"hint\": \"Pausar procesamiento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore\",\n      \"localized\": \"Restaurar\",\n      \"reload\": \"\",\n      \"hint\": \"Restaurar parámetros de la indicación actual o de la última imagen generada conocida\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Clear\",\n      \"localized\": \"Limpiar\",\n      \"reload\": \"\",\n      \"hint\": \"Borrar indicaciones\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Networks\",\n      \"localized\": \"Redes\",\n      \"reload\": \"\",\n      \"hint\": \"Interfaz de usuario de redes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Default strength\",\n      \"localized\": \"Fuerza predeterminada\",\n      \"reload\": \"\",\n      \"hint\": \"Al añadir una red extra como LoRA a la indicación, usa este multiplicador para ella\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscale\",\n      \"localized\": \"Escalar\",\n      \"reload\": \"\",\n      \"hint\": \"Escalar imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model\",\n      \"localized\": \"Modelo\",\n      \"reload\": \"\",\n      \"hint\": \"Modelo base\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompts\",\n      \"localized\": \"Indicaciones\",\n      \"reload\": \"\",\n      \"hint\": \"Indicación de imagen e indicación negativa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Base\",\n      \"localized\": \"Base\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes base utilizados para ejecutar la generación de imágenes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Style\",\n      \"localized\": \"Estilo\",\n      \"reload\": \"\",\n      \"hint\": \"Estilos adicionales a aplicar sobre los parámetros de generación seleccionados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Styles\",\n      \"localized\": \"Estilos\",\n      \"reload\": \"\",\n      \"hint\": \"Estilos adicionales a aplicar sobre los parámetros de generación seleccionados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Lora\",\n      \"localized\": \"LoRA\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA: Adaptación de Bajo Rango. Modelo afinado que se aplica sobre un modelo cargado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Embedding\",\n      \"localized\": \"Incrustación\",\n      \"reload\": \"\",\n      \"hint\": \"La incrustación de inversión textual es información incrustada entrenada sobre el tema\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Hypernetwork\",\n      \"localized\": \"Hiperred\",\n      \"reload\": \"\",\n      \"hint\": \"Pequeña red neuronal entrenada que modifica el comportamiento del modelo cargado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VLM Caption\",\n      \"localized\": \"Leyenda VLM\",\n      \"reload\": \"\",\n      \"hint\": \"Analizar imagen usando un modelo de lenguaje de visión\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CLiP Interrogate\",\n      \"localized\": \"Interrogación CLiP\",\n      \"reload\": \"\",\n      \"hint\": \"Analizar imagen usando el modelo CLiP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE\",\n      \"localized\": \"VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Autoencoder Variacional: modelo utilizado para decodificar la imagen al final de la generación\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"History\",\n      \"localized\": \"Historial\",\n      \"reload\": \"\",\n      \"hint\": \"Lista de generaciones anteriores que pueden ser reprocesadas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"UI disable variable aspect ratio\",\n      \"localized\": \"Deshabilitar relación de aspecto variable de la UI\",\n      \"reload\": \"\",\n      \"hint\": \"Cuando está deshabilitado, todas las miniaturas aparecen como imágenes cuadradas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Build info on first access\",\n      \"localized\": \"Construir información en el primer acceso\",\n      \"reload\": \"\",\n      \"hint\": \"Evita que el servidor construya la página EN al inicio del servidor y en su lugar la construya cuando se solicite\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show reference styles\",\n      \"localized\": \"Mostrar estilos de referencia\",\n      \"reload\": \"\",\n      \"hint\": \"Mostrar u ocultar estilos incorporados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA load using Diffusers method\",\n      \"localized\": \"Carga de LoRA usando el método Diffusers\",\n      \"reload\": \"\",\n      \"hint\": \"Método alternativo que utiliza las capacidades LoRA incorporadas de Diffusers en lugar de la implementación nativa de SD.Next (puede reducir la compatibilidad con LoRA)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA fuse directly to model\",\n      \"localized\": \"Fusionar LoRA directamente al modelo\",\n      \"reload\": \"\",\n      \"hint\": \"Al cargar LoRAs, fusionar inmediatamente los pesos con el modelo subyacente en lugar de aplicarlos sobre la marcha\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA memory cache\",\n      \"localized\": \"Caché de memoria LoRA\",\n      \"reload\": \"\",\n      \"hint\": \"Cuántos LoRAs mantener en la red para uso futuro antes de requerir la recarga desde el almacenamiento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Local\",\n      \"localized\": \"Local\",\n      \"reload\": \"\",\n      \"hint\": \"Modelos que han sido descargados y están listos para usar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Gallery\",\n      \"localized\": \"Galería\",\n      \"reload\": \"\",\n      \"hint\": \"Galería de imágenes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reference\",\n      \"localized\": \"Referencia\",\n      \"reload\": \"\",\n      \"hint\": \"Lista de modelos de referencia que se pueden descargar automáticamente en el primer uso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Samplers\",\n      \"localized\": \"Muestreadores\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes avanzados de muestreadores/planificadores\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Seed\",\n      \"localized\": \"Semilla\",\n      \"reload\": \"\",\n      \"hint\": \"Semilla inicial y variación\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Advanced\",\n      \"localized\": \"Avanzado\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes avanzados utilizados para ejecutar la generación de imágenes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scripts\",\n      \"localized\": \"Scripts\",\n      \"reload\": \"\",\n      \"hint\": \"Habilitar características adicionales usando los scripts seleccionados durante el proceso de generación\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Corrections\",\n      \"localized\": \"Correcciones\",\n      \"reload\": \"\",\n      \"hint\": \"Control de correcciones de color/nitidez/brillo de la imagen durante el proceso de generación\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Parameters\",\n      \"localized\": \"Parámetros\",\n      \"reload\": \"\",\n      \"hint\": \"Parámetros base utilizados durante la generación de imágenes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine\",\n      \"localized\": \"Refinar\",\n      \"reload\": \"\",\n      \"hint\": \"Refinar ejecuta procesamiento adicional después de que el procesamiento inicial ha terminado y se puede usar para escalar la imagen y opcionalmente procesarla de nuevo para aumentar la calidad y los detalles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer\",\n      \"localized\": \"Detallador\",\n      \"reload\": \"\",\n      \"hint\": \"El detallador ejecuta una generación adicional a mayor resolución para objetos detectados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize\",\n      \"localized\": \"Redimensionar\",\n      \"reload\": \"\",\n      \"hint\": \"Redimensionamiento de imagen, puede usar resolución fija o basarse en escala\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch\",\n      \"localized\": \"Lote\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes de procesamiento por lotes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoise\",\n      \"localized\": \"Reducción de ruido\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes de reducción de ruido. Mayor reducción de ruido significa que se permite que más contenido de la imagen existente cambie durante la generación\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mask\",\n      \"localized\": \"Máscara\",\n      \"reload\": \"\",\n      \"hint\": \"Enmascaramiento de imagen y opciones de máscara\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Input\",\n      \"localized\": \"Entrada\",\n      \"reload\": \"\",\n      \"hint\": \"Selección de medios de entrada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Video\",\n      \"localized\": \"Video\",\n      \"reload\": \"\",\n      \"hint\": \"Crear video usando guía\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control elements\",\n      \"localized\": \"Elementos de control\",\n      \"reload\": \"\",\n      \"hint\": \"Los elementos de control son modelos avanzados que pueden guiar la generación hacia el resultado deseado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"IP adapter\",\n      \"localized\": \"Adaptador IP\",\n      \"reload\": \"\",\n      \"hint\": \"Guía la generación hacia el resultado deseado usando modelos de plugin de adaptadores IP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"IP adapters\",\n      \"localized\": \"Adaptadores IP\",\n      \"reload\": \"\",\n      \"hint\": \"Los adaptadores IP son modelos de plugin que pueden guiar la generación hacia el resultado deseado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Extensions\",\n      \"localized\": \"Extensiones\",\n      \"reload\": \"\",\n      \"hint\": \"Extensiones de la aplicación\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"XYZ Grid\",\n      \"localized\": \"Cuadrícula XYZ\",\n      \"reload\": \"\",\n      \"hint\": \"La cuadrícula XYZ es un módulo potente que crea una cuadrícula de imágenes basada en la variación de múltiples parámetros de generación\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Cover\",\n      \"localized\": \"Cubrir\",\n      \"reload\": \"\",\n      \"hint\": \"cubrir toda el área\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inline\",\n      \"localized\": \"En línea\",\n      \"reload\": \"\",\n      \"hint\": \"en línea con todos los elementos adicionales (desplazable)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sidebar\",\n      \"localized\": \"Barra lateral\",\n      \"reload\": \"\",\n      \"hint\": \"barra lateral en el lado derecho de la pantalla\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD15\",\n      \"localized\": \"SD15\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Diffusion 1.5\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD21\",\n      \"localized\": \"SD21\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Diffusion 2.1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD35\",\n      \"localized\": \"SD35\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Diffusion 3.5\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SDXL\",\n      \"localized\": \"SDXL\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Diffusion XL\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SC\",\n      \"localized\": \"SC\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Cascade\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Flux\",\n      \"localized\": \"Flux\",\n      \"reload\": \"\",\n      \"hint\": \"FLUX.1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show\",\n      \"localized\": \"Mostrar\",\n      \"reload\": \"\",\n      \"hint\": \"Mostrar ubicación de la imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Save\",\n      \"localized\": \"Guardar\",\n      \"reload\": \"\",\n      \"hint\": \"Guardar imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Delete\",\n      \"localized\": \"Eliminar\",\n      \"reload\": \"\",\n      \"hint\": \"Eliminar imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Replace\",\n      \"localized\": \"Reemplazar\",\n      \"reload\": \"\",\n      \"hint\": \"Reemplazar imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Text\",\n      \"localized\": \"➠ Texto\",\n      \"reload\": \"\",\n      \"hint\": \"Transferir imagen a interfaz de texto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Image\",\n      \"localized\": \"➠ Imagen\",\n      \"reload\": \"\",\n      \"hint\": \"Transferir imagen a interfaz de imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Inpaint\",\n      \"localized\": \"➠ Inpaint\",\n      \"reload\": \"\",\n      \"hint\": \"Transferir imagen a interfaz de inpainting\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Sketch\",\n      \"localized\": \"➠ Boceto\",\n      \"reload\": \"\",\n      \"hint\": \"Transferir imagen a interfaz de boceto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Composite\",\n      \"localized\": \"➠ Compuesto\",\n      \"reload\": \"\",\n      \"hint\": \"Transferir imagen a interfaz de inpainting/boceto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Process\",\n      \"localized\": \"➠ Procesar\",\n      \"reload\": \"\",\n      \"hint\": \"Transferir imagen a interfaz de procesamiento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Control\",\n      \"localized\": \"➠ Control\",\n      \"reload\": \"\",\n      \"hint\": \"Transferir imagen a interfaz de control\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Caption\",\n      \"localized\": \"➠ Leyenda\",\n      \"reload\": \"\",\n      \"hint\": \"Transferir imagen a interfaz de leyenda\"\n    }\n  ],\n  \"generate\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Sampling method\",\n      \"localized\": \"Método de muestreo\",\n      \"reload\": \"\",\n      \"hint\": \"Qué algoritmo usar para producir la imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Steps\",\n      \"localized\": \"Pasos\",\n      \"reload\": \"\",\n      \"hint\": \"Cuántas veces mejorar la imagen generada iterativamente; valores más altos tardan más; valores muy bajos pueden producir malos resultados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Tiling\",\n      \"localized\": \"Mosaico\",\n      \"reload\": \"\",\n      \"hint\": \"Produce una imagen que puede ser usada como mosaico\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full quality\",\n      \"localized\": \"Calidad completa\",\n      \"reload\": \"\",\n      \"hint\": \"Usar VAE de calidad completa para decodificar muestras latentes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HiDiffusion\",\n      \"localized\": \"HiDiffusion\",\n      \"reload\": \"\",\n      \"hint\": \"HiDiffusion permite la creación de imágenes de alta resolución utilizando sus modelos estándar sin duplicados/distorsiones y con un rendimiento mejorado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HDR Clamp\",\n      \"localized\": \"Límite HDR\",\n      \"reload\": \"\",\n      \"hint\": \"Ajusta el nivel de detalles sin sentido podando valores que se desvían significativamente de la media de la distribución. Es particularmente útil para mejorar la generación en escalas de guía más altas, identificando valores atípicos temprano en el proceso y aplicando ajustes matemáticos basados en la configuración de Rango (Límite) y Umbral. Piense en ello como establecer el rango dentro del cual desea que estén los valores de su imagen, y ajustar el umbral determina qué valores deben volver a ese rango\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HDR Maximize\",\n      \"localized\": \"Maximizar HDR\",\n      \"reload\": \"\",\n      \"hint\": \"Calcula un 'factor de normalización' dividiendo el valor máximo del tensor por el rango especificado multiplicado por 4. Este factor se utiliza luego para desplazar los canales dentro del límite dado, asegurando el máximo rango dinámico para el procesamiento posterior. El objetivo es optimizar el rango dinámico para aplicaciones externas como Photoshop, particularmente para ajustar niveles, contraste y brillo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enable refine pass\",\n      \"localized\": \"Habilitar paso de refinamiento\",\n      \"reload\": \"\",\n      \"hint\": \"Utiliza un proceso similar al de imagen a imagen para escalar y/o añadir detalles a la imagen final. Opcionalmente utiliza el modelo de refinado para mejorar los detalles de la imagen.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enable detailer pass\",\n      \"localized\": \"Habilitar paso de detallado\",\n      \"reload\": \"\",\n      \"hint\": \"Detectar objetos objetivo como caras y reprocesarlos a mayor resolución\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoising strength\",\n      \"localized\": \"Fuerza de eliminación de ruido\",\n      \"reload\": \"\",\n      \"hint\": \"Determina cuán poco respeto debe tener el algoritmo por el contenido de la imagen. En 0, nada cambiará, y en 1 obtendrás una imagen no relacionada. Con valores por debajo de 1.0, el procesamiento tomará menos pasos de los especificados por el deslizador de Pasos de Muestreo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoise start\",\n      \"localized\": \"Inicio de eliminación de ruido\",\n      \"reload\": \"\",\n      \"hint\": \"Anula la fuerza de eliminación de ruido indicando cuán temprano debe terminar el modelo base y cuándo debe comenzar el refinador. Solo aplicable al uso del refinador. Si se establece en 0 o 1, se utilizará la fuerza de eliminación de ruido\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Hires steps\",\n      \"localized\": \"Pasos de alta resolución\",\n      \"reload\": \"\",\n      \"hint\": \"Número de pasos de muestreo para la imagen escalada. Si es 0, usa los mismos que para la original\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Strength\",\n      \"localized\": \"Fuerza\",\n      \"reload\": \"\",\n      \"hint\": \"La fuerza de eliminación de ruido durante la operación de imagen controla cuánto de la imagen original se permite cambiar durante la generación\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler\",\n      \"localized\": \"Escalador\",\n      \"reload\": \"\",\n      \"hint\": \"Qué modelo pre-entrenado usar para el proceso de escalado.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Force Hires\",\n      \"localized\": \"Forzar alta resolución\",\n      \"reload\": \"\",\n      \"hint\": \"La alta resolución se ejecuta automáticamente cuando se selecciona escalado latente, pero se omite al usar escaladores no latentes. Habilite 'Forzar alta resolución' para ejecutar alta resolución con escaladores no latentes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize width\",\n      \"localized\": \"Redimensionar ancho\",\n      \"reload\": \"\",\n      \"hint\": \"Redimensiona la imagen a este ancho. Si es 0, el ancho se infiere de cualquiera de los dos deslizadores cercanos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize height\",\n      \"localized\": \"Redimensionar alto\",\n      \"reload\": \"\",\n      \"hint\": \"Redimensiona la imagen a este alto. Si es 0, el alto se infiere de cualquiera de los dos deslizadores cercanos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine sampler\",\n      \"localized\": \"Muestreador de refinamiento\",\n      \"reload\": \"\",\n      \"hint\": \"Usar un muestreador específico como muestreador de respaldo si el primario no es compatible para una operación específica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner start\",\n      \"localized\": \"Inicio del refinador\",\n      \"reload\": \"\",\n      \"hint\": \"El paso del refinador comenzará cuando el modelo base esté completo en esta medida (establezca un valor mayor que 0 y menor que 1 para ejecutarlo después de la ejecución completa del modelo base)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner steps\",\n      \"localized\": \"Pasos del refinador\",\n      \"reload\": \"\",\n      \"hint\": \"Número de pasos a usar para el paso del refinador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine guidance\",\n      \"localized\": \"Guía de refinamiento\",\n      \"reload\": \"\",\n      \"hint\": \"Escala CFG utilizada para el paso del refinador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Attention guidance\",\n      \"localized\": \"Guía de atención\",\n      \"reload\": \"\",\n      \"hint\": \"Escala CFG utilizada con PAG: Guía de Atención Perturbada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adaptive scaling\",\n      \"localized\": \"Escalado adaptativo\",\n      \"reload\": \"\",\n      \"hint\": \"Modificador adaptativo para la escala de guía de atención\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Rescale guidance\",\n      \"localized\": \"Reescalar guía\",\n      \"reload\": \"\",\n      \"hint\": \"Reescalar el ruido generado por CFG para evitar imágenes sobreexpuestas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine Prompt\",\n      \"localized\": \"Prompt de refinamiento\",\n      \"reload\": \"\",\n      \"hint\": \"Prompt utilizado tanto para el segundo codificador en el modelo base (si existe) como para el paso del refinador (si está habilitado)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine negative prompt\",\n      \"localized\": \"Prompt negativo de refinamiento\",\n      \"reload\": \"\",\n      \"hint\": \"Prompt negativo utilizado tanto para el segundo codificador en el modelo base (si existe) como para el paso del refinador (si está habilitado)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Width\",\n      \"localized\": \"Ancho\",\n      \"reload\": \"\",\n      \"hint\": \"Ancho de la imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Height\",\n      \"localized\": \"Alto\",\n      \"reload\": \"\",\n      \"hint\": \"Alto de la imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch count\",\n      \"localized\": \"Recuento de lotes\",\n      \"reload\": \"\",\n      \"hint\": \"Cuántos lotes de imágenes crear (no tiene impacto en el rendimiento de generación ni en el uso de VRAM)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch size\",\n      \"localized\": \"Tamaño de lote\",\n      \"reload\": \"\",\n      \"hint\": \"Cuántas imágenes crear en un solo lote (aumenta el rendimiento de generación a costa de un mayor uso de VRAM)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance scale\",\n      \"localized\": \"Escala de guía\",\n      \"reload\": \"\",\n      \"hint\": \"Escala de Guía Libre de Clasificador (CFG): cuán fuertemente la imagen debe ajustarse al prompt. Valores más bajos producen resultados más creativos, valores más altos hacen que siga el prompt más estrictamente; valores recomendados entre 5-10\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Guidance End\",\n      \"localized\": \"Fin de la guía\",\n      \"reload\": \"\",\n      \"hint\": \"Termina el efecto de CFG y PAG anticipadamente: Un valor de 1 actúa normalmente, 0.5 detiene la guía al 50% de los pasos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Initial seed\",\n      \"localized\": \"Semilla inicial\",\n      \"reload\": \"\",\n      \"hint\": \"Un valor que determina la salida del generador de números aleatorios - si creas una imagen con los mismos parámetros y semilla que otra imagen, obtendrás el mismo resultado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variation\",\n      \"localized\": \"Variación\",\n      \"reload\": \"\",\n      \"hint\": \"Segunda semilla para mezclar con la semilla primaria\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variation strength\",\n      \"localized\": \"Fuerza de variación\",\n      \"reload\": \"\",\n      \"hint\": \"Cuán fuerte debe ser la variación a producir. En 0, no habrá efecto. En 1, obtendrás la imagen completa con la semilla de variación (excepto para los muestreadores ancestrales, donde simplemente obtendrás algo)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize seed from width\",\n      \"localized\": \"Redimensionar semilla desde ancho\",\n      \"reload\": \"\",\n      \"hint\": \"Intentar producir una imagen similar a la que se habría producido con la misma semilla a la resolución especificada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize seed from height\",\n      \"localized\": \"Redimensionar semilla desde alto\",\n      \"reload\": \"\",\n      \"hint\": \"Intentar producir una imagen similar a la que se habría producido con la misma semilla a la resolución especificada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Fixed\",\n      \"localized\": \"Fijo\",\n      \"reload\": \"\",\n      \"hint\": \"Redimensionar imagen a la resolución objetivo. A menos que el alto y el ancho coincidan, obtendrás una relación de aspecto incorrecta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale\",\n      \"localized\": \"Escala\",\n      \"reload\": \"\",\n      \"hint\": \"Redimensionar imagen a la escala objetivo. Si se establecen el ancho/alto fijo de redimensionamiento, esta opción se ignora\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop\",\n      \"localized\": \"Recortar\",\n      \"reload\": \"\",\n      \"hint\": \"Redimensionar la imagen para que toda la resolución objetivo se llene con la imagen. Recortar las partes que sobresalen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Fill\",\n      \"localized\": \"Rellenar\",\n      \"reload\": \"\",\n      \"hint\": \"Redimensionar la imagen para que la totalidad de la imagen esté dentro de la resolución objetivo. Rellenar el espacio vacío con los colores de la imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mask blur\",\n      \"localized\": \"Desenfoque de máscara\",\n      \"reload\": \"\",\n      \"hint\": \"Cuánto desenfocar la máscara antes de procesar, en píxeles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Latent noise\",\n      \"localized\": \"Ruido latente\",\n      \"reload\": \"\",\n      \"hint\": \"Llenarlo con ruido del espacio latente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Latent nothing\",\n      \"localized\": \"Nada latente\",\n      \"reload\": \"\",\n      \"hint\": \"Llenarlo con ceros del espacio latente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adapters\",\n      \"localized\": \"Adaptadores\",\n      \"reload\": \"\",\n      \"hint\": \"Configuración relacionada con los Adaptadores IP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inputs\",\n      \"localized\": \"Entradas\",\n      \"reload\": \"\",\n      \"hint\": \"Configuración relacionada con las imágenes de entrada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control input type\",\n      \"localized\": \"Tipo de entrada de control\",\n      \"reload\": \"\",\n      \"hint\": \"Elija qué imagen de entrada se usa para el proceso de control\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Video format\",\n      \"localized\": \"Formato de video\",\n      \"reload\": \"\",\n      \"hint\": \"Formato y códec del video de salida\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Size & Batch\",\n      \"localized\": \"Tamaño y Lote\",\n      \"reload\": \"\",\n      \"hint\": \"Tamaño de imagen y lote\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sigma adjust\",\n      \"localized\": \"Ajuste Sigma\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustar el valor sigma del muestreador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adjust start\",\n      \"localized\": \"Inicio de ajuste\",\n      \"reload\": \"\",\n      \"hint\": \"Paso de inicio cuando ocurre el ajuste de sigma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adjust end\",\n      \"localized\": \"Fin de ajuste\",\n      \"reload\": \"\",\n      \"hint\": \"Paso final cuando ocurre el ajuste de sigma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Options\",\n      \"localized\": \"Opciones\",\n      \"reload\": \"\",\n      \"hint\": \"Opciones\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ControlNet\",\n      \"localized\": \"ControlNet\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet es un modelo de guía avanzado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Renoise\",\n      \"localized\": \"Renoise\",\n      \"reload\": \"\",\n      \"hint\": \"Aplicar ruido adicional durante el detallado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Renoise end\",\n      \"localized\": \"Fin de Renoise\",\n      \"reload\": \"\",\n      \"hint\": \"Paso final cuando se aplica el ruido adicional\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Merge detailers\",\n      \"localized\": \"Fusionar detalladores\",\n      \"reload\": \"\",\n      \"hint\": \"Fusionar resultados de múltiples detalladores en una sola máscara antes de ejecutar el proceso de detallado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpaint mode\",\n      \"localized\": \"Modo Inpaint\",\n      \"reload\": \"\",\n      \"hint\": \"Modo Inpaint\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpaint area\",\n      \"localized\": \"Área Inpaint\",\n      \"reload\": \"\",\n      \"hint\": \"Área Inpaint\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Texture tiling\",\n      \"localized\": \"Mosaico de textura\",\n      \"reload\": \"\",\n      \"hint\": \"Aplicar mosaico continuo a la imagen generada para que pueda usarse como textura\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Override\",\n      \"localized\": \"Anular\",\n      \"reload\": \"\",\n      \"hint\": \"Anular la configuración que puede cambiar el comportamiento del servidor y que normalmente se aplica desde los metadatos de la imagen importada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE type\",\n      \"localized\": \"Tipo de VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Elija si desea ejecutar VAE completo, VAE de calidad reducida o intentar usar un servicio VAE remoto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Guess Mode\",\n      \"localized\": \"Modo Adivinanza\",\n      \"reload\": \"\",\n      \"hint\": \"Elimina el requisito de proporcionar un prompt a un ControlNet. Fuerza al codificador de Controlnet a hacer su 'mejor suposición' basándose en el contenido del mapa de control de entrada.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control Only\",\n      \"localized\": \"Solo Control\",\n      \"reload\": \"\",\n      \"hint\": \"Esto utiliza únicamente la entrada de Control a continuación como fuente para cualquier tarea de tipo ControlNet o Adaptador IP basada en cualquiera de nuestras diversas opciones.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Init Image Same As Control\",\n      \"localized\": \"Imagen Inicial Igual Que Control\",\n      \"reload\": \"\",\n      \"hint\": \"Tratará adicionalmente cualquier imagen colocada en la ventana de entrada de Control como una fuente para tareas de tipo img2img, una imagen para modificar, por ejemplo.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Separate Init Image\",\n      \"localized\": \"Separar Imagen Inicial\",\n      \"reload\": \"\",\n      \"hint\": \"Crea una ventana adicional junto a la entrada de Control etiquetada como 'Entrada inicial', para que pueda tener una imagen separada tanto para las operaciones de Control como para una fuente inicial.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Override settings\",\n      \"localized\": \"Anular configuración\",\n      \"reload\": \"\",\n      \"hint\": \"Si los parámetros de generación se desvían de la configuración de su sistema, anule la configuración rellenada con esos parámetros para anular la configuración de su sistema para este flujo de trabajo\"\n    }\n  ],\n  \"other\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Install\",\n      \"localized\": \"Instalar\",\n      \"reload\": \"\",\n      \"hint\": \"Instalar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Search\",\n      \"localized\": \"Buscar\",\n      \"reload\": \"\",\n      \"hint\": \"Buscar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sort by\",\n      \"localized\": \"Ordenar por\",\n      \"reload\": \"\",\n      \"hint\": \"Ordenar por\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Nudenet\",\n      \"localized\": \"Nudenet\",\n      \"reload\": \"\",\n      \"hint\": \"Extensión flexible que puede detectar y ofuscar la desnudez en imágenes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt enhance\",\n      \"localized\": \"Mejorar prompt\",\n      \"reload\": \"\",\n      \"hint\": \"Extensión que puede usar diferentes LLMs para reescribir el prompt para mejorar los resultados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Manage extensions\",\n      \"localized\": \"Gestionar extensiones\",\n      \"reload\": \"\",\n      \"hint\": \"Gestionar extensiones\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Manual install\",\n      \"localized\": \"Instalación manual\",\n      \"reload\": \"\",\n      \"hint\": \"Instalar extensión manualmente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Extension GIT repository URL\",\n      \"localized\": \"URL del repositorio GIT de la extensión\",\n      \"reload\": \"\",\n      \"hint\": \"Especificar la URL del repositorio de la extensión en GitHub\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Specific branch name\",\n      \"localized\": \"Nombre de rama específico\",\n      \"reload\": \"\",\n      \"hint\": \"Especificar el nombre de la rama de la extensión, dejar en blanco para el predeterminado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Local directory name\",\n      \"localized\": \"Nombre del directorio local\",\n      \"reload\": \"\",\n      \"hint\": \"Directorio donde instalar la extensión, dejar en blanco para el predeterminado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refresh extension list\",\n      \"localized\": \"Actualizar lista de extensiones\",\n      \"reload\": \"\",\n      \"hint\": \"Actualizar lista de extensiones disponibles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Update all installed\",\n      \"localized\": \"Actualizar todas las instaladas\",\n      \"reload\": \"\",\n      \"hint\": \"Actualizar las extensiones instaladas a su última versión disponible\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Apply changes\",\n      \"localized\": \"Aplicar cambios\",\n      \"reload\": \"\",\n      \"hint\": \"Aplicar todos los cambios y reiniciar el servidor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Uninstall\",\n      \"localized\": \"Desinstalar\",\n      \"reload\": \"\",\n      \"hint\": \"Desinstalar esta extensión\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"User interface\",\n      \"localized\": \"Interfaz de usuario\",\n      \"reload\": \"\",\n      \"hint\": \"Revisar y establecer preferencias de la interfaz de usuario\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Set UI defaults\",\n      \"localized\": \"Establecer valores predeterminados de la UI\",\n      \"reload\": \"\",\n      \"hint\": \"Establecer los valores actuales como valores predeterminados para la interfaz de usuario\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Benchmark\",\n      \"localized\": \"Rendimiento\",\n      \"reload\": \"\",\n      \"hint\": \"Ejecutar pruebas de rendimiento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models & Networks\",\n      \"localized\": \"Modelos y Redes\",\n      \"reload\": \"\",\n      \"hint\": \"Ver listas de todos los modelos y redes disponibles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore UI defaults\",\n      \"localized\": \"Restaurar valores predeterminados de la UI\",\n      \"reload\": \"\",\n      \"hint\": \"Restaurar valores predeterminados de la interfaz de usuario\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer classes\",\n      \"localized\": \"Clases de detallador\",\n      \"reload\": \"\",\n      \"hint\": \"Especificar clases específicas a usar si el modelo de detallador seleccionado es un modelo de múltiples clases\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer models\",\n      \"localized\": \"Modelos de detallador\",\n      \"reload\": \"\",\n      \"hint\": \"Seleccionar modelos de detección para usar en el detallado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer negative prompt\",\n      \"localized\": \"Prompt negativo del detallador\",\n      \"reload\": \"\",\n      \"hint\": \"Usar un prompt negativo separado para el detallador. Si no está presente, usará el prompt negativo principal\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer prompt\",\n      \"localized\": \"Prompt del detallador\",\n      \"reload\": \"\",\n      \"hint\": \"Usar un prompt separado para el detallador. Si no está presente, usará el prompt principal\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer steps\",\n      \"localized\": \"Pasos del detallador\",\n      \"reload\": \"\",\n      \"hint\": \"Número de pasos a ejecutar para el proceso del detallador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer strength\",\n      \"localized\": \"Fuerza del detallador\",\n      \"reload\": \"\",\n      \"hint\": \"Fuerza de eliminación de ruido del proceso del detallador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer use model augment\",\n      \"localized\": \"Detallador: usar aumento de modelo\",\n      \"reload\": \"\",\n      \"hint\": \"Ejecutar modelos de detección del detallador con precisión extra\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max detected\",\n      \"localized\": \"Máx. detectado\",\n      \"reload\": \"\",\n      \"hint\": \"Número máximo de objetos detectados sobre los que ejecutar el detallador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Edge blur\",\n      \"localized\": \"Desenfoque de borde\",\n      \"reload\": \"\",\n      \"hint\": \"Difuminar el borde del área enmascarada en este porcentaje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Edge padding\",\n      \"localized\": \"Relleno de borde\",\n      \"reload\": \"\",\n      \"hint\": \"Expandir el borde del área enmascarada en este porcentaje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Min confidence\",\n      \"localized\": \"Confianza mínima\",\n      \"reload\": \"\",\n      \"hint\": \"Confianza mínima en el elemento detectado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max overlap\",\n      \"localized\": \"Máx. superposición\",\n      \"reload\": \"\",\n      \"hint\": \"Superposición máxima entre dos elementos detectados antes de que uno sea descartado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Min size\",\n      \"localized\": \"Tamaño mínimo\",\n      \"reload\": \"\",\n      \"hint\": \"Tamaño mínimo del objeto detectado como porcentaje de la imagen total\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max size\",\n      \"localized\": \"Tamaño máximo\",\n      \"reload\": \"\",\n      \"hint\": \"Tamaño máximo del objeto detectado como porcentaje de la imagen total\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Image\",\n      \"localized\": \"Procesar imagen\",\n      \"reload\": \"\",\n      \"hint\": \"Procesar una sola imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Batch\",\n      \"localized\": \"Procesar lote\",\n      \"reload\": \"\",\n      \"hint\": \"Procesar lote de imágenes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Folder\",\n      \"localized\": \"Procesar carpeta\",\n      \"reload\": \"\",\n      \"hint\": \"Procesar todas las imágenes en una carpeta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Current\",\n      \"localized\": \"Actual\",\n      \"reload\": \"\",\n      \"hint\": \"Analizar módulos dentro del modelo actualmente cargado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Merge\",\n      \"localized\": \"Fusionar\",\n      \"reload\": \"\",\n      \"hint\": \"Fusionar dos o más modelos en un nuevo modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Modules\",\n      \"localized\": \"Módulos\",\n      \"reload\": \"\",\n      \"hint\": \"Fusionar y/o reemplazar módulos en un modelo existente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Validate\",\n      \"localized\": \"Validar\",\n      \"reload\": \"\",\n      \"hint\": \"Validar todos los modelos locales\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CivitAI\",\n      \"localized\": \"CivitAI\",\n      \"reload\": \"\",\n      \"hint\": \"Buscar y descargar modelos de CitivAI\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scale by\",\n      \"localized\": \"Escalar por\",\n      \"reload\": \"\",\n      \"hint\": \"Usar esta pestaña para redimensionar la(s) imagen(es) de origen por un factor elegido\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scale to\",\n      \"localized\": \"Escalar a\",\n      \"reload\": \"\",\n      \"hint\": \"Usar esta pestaña para redimensionar la(s) imagen(es) de origen a un tamaño objetivo elegido\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Input directory\",\n      \"localized\": \"Directorio de entrada\",\n      \"reload\": \"\",\n      \"hint\": \"Carpeta donde se encuentran las imágenes que desea procesar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Output directory\",\n      \"localized\": \"Directorio de salida\",\n      \"reload\": \"\",\n      \"hint\": \"Carpeta donde se deben guardar las imágenes procesadas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show result images\",\n      \"localized\": \"Mostrar imágenes de resultado\",\n      \"reload\": \"\",\n      \"hint\": \"Habilitar para mostrar las imágenes procesadas en el panel de imágenes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop to fit\",\n      \"localized\": \"Recortar para ajustar\",\n      \"reload\": \"\",\n      \"hint\": \"Si las dimensiones de su imagen de origen (ej. 512x510) se desvían de sus dimensiones objetivo (ej. 1024x768) esta función ajustará su imagen escalada al tamaño de su imagen objetivo. El exceso será recortado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine Upscaler\",\n      \"localized\": \"Refinar escalador\",\n      \"reload\": \"\",\n      \"hint\": \"Seleccionar escalador secundario para ejecutar después del escalador inicial\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler 2 visibility\",\n      \"localized\": \"Visibilidad del escalador 2\",\n      \"reload\": \"\",\n      \"hint\": \"Fuerza del escalador secundario\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Calculate hash for all models\",\n      \"localized\": \"Calcular hash para todos los modelos\",\n      \"reload\": \"\",\n      \"hint\": \"Calcula el hash para todos los modelos disponibles, lo que puede llevar mucho tiempo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Weights Clip\",\n      \"localized\": \"Recorte de pesos\",\n      \"reload\": \"\",\n      \"hint\": \"Fuerza que los pesos fusionados no sean más pesados que el modelo original, previniendo el 'burn in' y modelos excesivamente saturados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ReBasin\",\n      \"localized\": \"ReBasin\",\n      \"reload\": \"\",\n      \"hint\": \"Realiza múltiples fusiones con permutaciones para mantener más características de ambos modelos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Number of ReBasin Iterations\",\n      \"localized\": \"Número de iteraciones de ReBasin\",\n      \"reload\": \"\",\n      \"hint\": \"Número de veces que se fusionará y permuta el modelo antes de guardar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CPU\",\n      \"localized\": \"CPU\",\n      \"reload\": \"\",\n      \"hint\": \"Usa solo CPU y RAM: el más lento pero el menos propenso a OOM (Out Of Memory)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Shuffle\",\n      \"localized\": \"Aleatorizar\",\n      \"reload\": \"\",\n      \"hint\": \"Carga el modelo completo en RAM y calcula en VRAM: Menor aceleración, sugerido para fusiones SDXL\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"In Blocks\",\n      \"localized\": \"Bloques de entrada\",\n      \"reload\": \"\",\n      \"hint\": \"Bloques de submuestreo del UNet (12 valores para SD1.5, 9 valores para SDXL)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mid Block\",\n      \"localized\": \"Bloque central\",\n      \"reload\": \"\",\n      \"hint\": \"Bloque Central del UNet (1 valor)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Out Block\",\n      \"localized\": \"Bloques de salida\",\n      \"reload\": \"\",\n      \"hint\": \"Bloques de sobremuestreo del UNet (12 valores para SD1.5, 9 valores para SDXL)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Preset Interpolation Ratio\",\n      \"localized\": \"Relación de interpolación preestablecida\",\n      \"reload\": \"\",\n      \"hint\": \"Si se seleccionan dos preajustes, interpolar entre ellos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adapter\",\n      \"localized\": \"Adaptador\",\n      \"reload\": \"\",\n      \"hint\": \"Modelo de adaptador IP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Active ip adapters\",\n      \"localized\": \"Adaptadores IP activos\",\n      \"reload\": \"\",\n      \"hint\": \"Número de adaptadores IP activos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Unload adapter\",\n      \"localized\": \"Descargar adaptador\",\n      \"reload\": \"\",\n      \"hint\": \"Descargar el adaptador IP inmediatamente después de generar. De lo contrario, el adaptador IP permanecerá cargado para un uso más rápido en el siguiente proceso de generación\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop to portrait\",\n      \"localized\": \"Recortar a retrato\",\n      \"reload\": \"\",\n      \"hint\": \"Recortar la imagen de entrada solo a retrato antes de usarla como entrada del adaptador IP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Layer options\",\n      \"localized\": \"Opciones de capa\",\n      \"reload\": \"\",\n      \"hint\": \"Especificar manualmente las opciones avanzadas de capa del adaptador IP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"X values\",\n      \"localized\": \"Valores X\",\n      \"reload\": \"\",\n      \"hint\": \"Separar valores para el eje X usando comas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Y values\",\n      \"localized\": \"Valores Y\",\n      \"reload\": \"\",\n      \"hint\": \"Separar valores para el eje Y usando comas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Z values\",\n      \"localized\": \"Valores Z\",\n      \"reload\": \"\",\n      \"hint\": \"Separar valores para el eje Z usando comas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Loops\",\n      \"localized\": \"Bucles\",\n      \"reload\": \"\",\n      \"hint\": \"Cuántas veces procesar una imagen. Cada salida se usa como entrada del siguiente bucle. Si se establece en 1, el comportamiento será como si este script no se usara\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Final denoising strength\",\n      \"localized\": \"Fuerza de eliminación de ruido final\",\n      \"reload\": \"\",\n      \"hint\": \"La fuerza de eliminación de ruido para el bucle final de cada imagen en el lote\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoising strength curve\",\n      \"localized\": \"Curva de fuerza de eliminación de ruido\",\n      \"reload\": \"\",\n      \"hint\": \"La curva de eliminación de ruido controla la tasa de cambio de la fuerza de eliminación de ruido en cada bucle. Agresiva: La mayor parte del cambio ocurrirá al principio de los bucles. Lineal: El cambio será constante a lo largo de todos los bucles. Lenta: La mayor parte del cambio ocurrirá hacia el final de los bucles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Tile overlap\",\n      \"localized\": \"Superposición de mosaicos\",\n      \"reload\": \"\",\n      \"hint\": \"Para SD upscale, cuánta superposición en píxeles debe haber entre los mosaicos. Los mosaicos se superponen para que, al fusionarlos de nuevo en una sola imagen, no haya una costura claramente visible\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Color to Mask\",\n      \"localized\": \"ACI: Color a Máscara\",\n      \"reload\": \"\",\n      \"hint\": \"Elige el color que quieres enmascarar y repintar. Haz clic en el color de la imagen para seleccionarlo automáticamente.\\n Se aconseja usar imágenes como pantallas verdes para obtener resultados precisos.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Color Tolerance\",\n      \"localized\": \"ACI: Tolerancia de Color\",\n      \"reload\": \"\",\n      \"hint\": \"Ajusta la tolerancia para incluir colores similares en la máscara. Valores más bajos = enmascarar solo colores muy similares. Valores más altos = enmascarar un rango más amplio de colores similares.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Mask Erode\",\n      \"localized\": \"ACI: Erosión de Máscara\",\n      \"reload\": \"\",\n      \"hint\": \"Ajusta el relleno para aplicar un desplazamiento interno a la máscara. (Valor recomendado = 2 para eliminar restos en los bordes)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Mask Blur\",\n      \"localized\": \"ACI: Desenfoque de Máscara\",\n      \"reload\": \"\",\n      \"hint\": \"Ajusta el desenfoque para aplicar una transición suave entre la imagen y el área repintada. (Valor recomendado = 0 para nitidez)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Denoising Strength\",\n      \"localized\": \"ACI: Fuerza de Eliminación de Ruido\",\n      \"reload\": \"\",\n      \"hint\": \"Cambia la Fuerza de Eliminación de Ruido para lograr la cantidad deseada de repintado.\"\n    }\n  ],\n  \"settings\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Apply settings\",\n      \"localized\": \"Aplicar ajustes\",\n      \"reload\": \"\",\n      \"hint\": \"Guardar la configuración actual, se recomienda reiniciar el servidor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Loading\",\n      \"localized\": \"Carga del modelo\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes relacionados con cómo se carga el modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Options\",\n      \"localized\": \"Opciones del modelo\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes relacionados con el comportamiento de modelos específicos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Offloading\",\n      \"localized\": \"Descarga del modelo\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes relacionados con la descarga del modelo y la gestión de memoria\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Quantization\",\n      \"localized\": \"Cuantificación del modelo\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes relacionados con la cuantificación del modelo, utilizada para reducir el uso de memoria\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Metadata\",\n      \"localized\": \"Metadatos de imagen\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes relacionados con el manejo de metadatos creados con las imágenes generadas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Legacy Options\",\n      \"localized\": \"Opciones heredadas\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes relacionados con opciones heredadas - no deberían usarse\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restart server\",\n      \"localized\": \"Reiniciar servidor\",\n      \"reload\": \"\",\n      \"hint\": \"Reinicia el servidor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Shutdown server\",\n      \"localized\": \"Apagar servidor\",\n      \"reload\": \"\",\n      \"hint\": \"Apaga el servidor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Preview theme\",\n      \"localized\": \"Previsualizar tema\",\n      \"reload\": \"\",\n      \"hint\": \"Muestra la previsualización del tema\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore defaults\",\n      \"localized\": \"Restaurar valores predeterminados\",\n      \"reload\": \"\",\n      \"hint\": \"Restaura la configuración predeterminada del servidor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Unload model\",\n      \"localized\": \"Descargar modelo\",\n      \"reload\": \"\",\n      \"hint\": \"Descarga el modelo cargado actualmente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reload model\",\n      \"localized\": \"Recargar modelo\",\n      \"reload\": \"\",\n      \"hint\": \"Recarga el modelo seleccionado actualmente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models & Loading\",\n      \"localized\": \"Modelos y carga\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes relacionados con los modelos base, el backend principal y el comportamiento de carga del modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variational Auto Encoder\",\n      \"localized\": \"Autoencoder Variacional\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes relacionados con el Autoencoder Variacional y el proceso de decodificación de imagen durante la generación\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Text encoder\",\n      \"localized\": \"Codificador de texto\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes relacionados con el codificador de texto y el procesamiento de codificación de prompt durante la generación\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Compute Settings\",\n      \"localized\": \"Ajustes de cálculo\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes relacionados con la precisión de cálculo, la atención cruzada y las optimizaciones para plataformas de computación\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Backend Settings\",\n      \"localized\": \"Ajustes de backend\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes relacionados con los backends de computación: torch, onnx y olive\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Quantization Settings\",\n      \"localized\": \"Ajustes de cuantificación\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes relacionados con la cuantificación del modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Pipeline modifiers\",\n      \"localized\": \"Modificadores de pipeline\",\n      \"reload\": \"\",\n      \"hint\": \"Funcionalidad adicional que se puede habilitar durante la generación\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model compile\",\n      \"localized\": \"Compilación del modelo\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes relacionados con diferentes métodos de compilación del modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System Paths\",\n      \"localized\": \"Rutas del sistema\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes relacionados con la ubicación de varios directorios de modelos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Options\",\n      \"localized\": \"Opciones de imagen\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes relacionados con el formato de imagen, metadatos y cuadrículas de imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Paths\",\n      \"localized\": \"Rutas de imagen\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes relacionados con los nombres de archivo de imagen y los directorios de salida\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Live Previews\",\n      \"localized\": \"Previsualizaciones en vivo\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes relacionados con las previsualizaciones en vivo, notificación de audio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sampler Settings\",\n      \"localized\": \"Ajustes del muestreador\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes relacionados con la selección y configuración del muestreador, y la configuración específica del muestreador del difusor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Postprocessing\",\n      \"localized\": \"Postprocesamiento\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes relacionados con el procesamiento posterior a la generación de imágenes, la restauración de rostros y el escalado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control Options\",\n      \"localized\": \"Opciones de Control\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes relacionados con la pestaña Control\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Huggingface\",\n      \"localized\": \"Huggingface\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustes relacionados con el acceso a Huggingface\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show all pages\",\n      \"localized\": \"Mostrar todas las páginas\",\n      \"reload\": \"\",\n      \"hint\": \"Muestra todas las páginas de configuración\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Base model\",\n      \"localized\": \"Modelo base\",\n      \"reload\": \"\",\n      \"hint\": \"Modelo principal utilizado para todas las operaciones\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner model\",\n      \"localized\": \"Modelo de refinado\",\n      \"reload\": \"\",\n      \"hint\": \"Modelo de refinado utilizado para operaciones de segunda pasada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Cached models\",\n      \"localized\": \"Modelos en caché\",\n      \"reload\": \"\",\n      \"hint\": \"El número de modelos a almacenar en RAM para un acceso rápido\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE model\",\n      \"localized\": \"Modelo VAE\",\n      \"reload\": \"\",\n      \"hint\": \"VAE ayuda con los detalles finos en la imagen final y también puede alterar los colores\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model load using streams\",\n      \"localized\": \"Carga de modelo usando flujos\",\n      \"reload\": \"\",\n      \"hint\": \"Al cargar modelos, intentar la carga por flujo optimizada para almacenamiento lento o en red\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xFormers\",\n      \"localized\": \"xFormers\",\n      \"reload\": \"\",\n      \"hint\": \"Optimización de memoria. No determinista (resultados diferentes cada vez)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scaled-Dot-Product\",\n      \"localized\": \"Producto escalar escalado\",\n      \"reload\": \"\",\n      \"hint\": \"Optimización de memoria. No determinista a menos que la atención de memoria SDP esté deshabilitada.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt padding\",\n      \"localized\": \"Relleno de prompt\",\n      \"reload\": \"\",\n      \"hint\": \"Aumenta la coherencia rellenando desde la última coma dentro de 'n' tokens cuando se usan más de 75 tokens\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Original\",\n      \"localized\": \"Original\",\n      \"reload\": \"\",\n      \"hint\": \"Backend LDM original\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Autocast\",\n      \"localized\": \"Autocast\",\n      \"reload\": \"\",\n      \"hint\": \"Determinar automáticamente la precisión durante la ejecución\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full\",\n      \"localized\": \"Completa\",\n      \"reload\": \"\",\n      \"hint\": \"Siempre usar precisión completa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"FP32\",\n      \"localized\": \"FP32\",\n      \"reload\": \"\",\n      \"hint\": \"Usar precisión de punto flotante de 32 bits para los cálculos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"FP16\",\n      \"localized\": \"FP16\",\n      \"reload\": \"\",\n      \"hint\": \"Usar precisión de punto flotante de 16 bits para los cálculos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"BF16\",\n      \"localized\": \"BF16\",\n      \"reload\": \"\",\n      \"hint\": \"Usar precisión de punto flotante modificada de 16 bits para los cálculos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full precision (--no-half-vae)\",\n      \"localized\": \"Precisión completa (--no-half-vae)\",\n      \"reload\": \"\",\n      \"hint\": \"Usa FP32 para el VAE. Puede producir mejores resultados usando más VRAM y una generación más lenta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Force full precision (--no-half)\",\n      \"localized\": \"Forzar precisión completa (--no-half)\",\n      \"reload\": \"\",\n      \"hint\": \"Usa FP32 para el modelo. Puede producir mejores resultados usando más VRAM y una generación más lenta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upcast sampling\",\n      \"localized\": \"Muestreo ascendente\",\n      \"reload\": \"\",\n      \"hint\": \"Generalmente produce resultados similares a --no-half con mejor rendimiento usando menos memoria\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Attempt VAE roll back for NaN values\",\n      \"localized\": \"Intentar retroceso de VAE para valores NaN\",\n      \"reload\": \"\",\n      \"hint\": \"Requiere Torch 2.1 y la comprobación de NaN habilitada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive use FP16 on optimization\",\n      \"localized\": \"Olive usa FP16 en la optimización\",\n      \"reload\": \"\",\n      \"hint\": \"Usar precisión de punto flotante de 16 bits para el modelo de salida del proceso de optimización de Olive. Usar precisión de punto flotante de 32 bits si está deshabilitado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive force FP32 for VAE Encoder\",\n      \"localized\": \"Olive fuerza FP32 para el codificador VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Usar precisión de punto flotante de 32 bits para el codificador VAE del modelo de salida. Esto anula la opción 'usar FP16 en la optimización'. Si obtienes valores NaN o imágenes en blanco y negro de Img2Img, habilita esta opción y elimina la caché\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive use static dimensions\",\n      \"localized\": \"Olive usa dimensiones estáticas\",\n      \"reload\": \"\",\n      \"hint\": \"Hace que la inferencia con los modelos optimizados de Olive sea mucho más rápida. (OrtTransformersOptimization)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive cache optimized models\",\n      \"localized\": \"Olive cachea modelos optimizados\",\n      \"reload\": \"\",\n      \"hint\": \"Guarda los modelos procesados por Olive como caché. Puedes gestionarlos en la pestaña ONNX\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"File format\",\n      \"localized\": \"Formato de archivo\",\n      \"reload\": \"\",\n      \"hint\": \"Selecciona el formato de archivo para las imágenes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Include metadata\",\n      \"localized\": \"Incluir metadatos\",\n      \"reload\": \"\",\n      \"hint\": \"Guardar los parámetros de creación de imagen como etiquetas de metadatos dentro del archivo de imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Images filename pattern\",\n      \"localized\": \"Patrón de nombre de archivo de imágenes\",\n      \"reload\": \"\",\n      \"hint\": \"Usa las siguientes etiquetas para definir cómo se eligen los nombres de archivo para las imágenes:<br><pre>seq, uuid<br>date, datetime, job_timestamp<br>generation_number, batch_number<br>model, model_shortname<br>model_hash, model_name<br>sampler, seed, steps, cfg<br>clip_skip, denoising<br>hasprompt, prompt, styles<br>prompt_hash, prompt_no_styles<br>prompt_spaces, prompt_words<br>height, width, image_hash<br></pre>\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Row count\",\n      \"localized\": \"Número de filas\",\n      \"reload\": \"\",\n      \"hint\": \"Usa -1 para autodetección y 0 para que sea igual al tamaño del lote\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Directory name pattern\",\n      \"localized\": \"Patrón de nombre de directorio\",\n      \"reload\": \"\",\n      \"hint\": \"Usa las siguientes etiquetas para definir cómo se eligen los subdirectorios para imágenes y cuadrículas: [steps], [cfg],[prompt_hash], [prompt], [prompt_no_styles], [prompt_spaces], [width], [height], [styles], [sampler], [seed], [model_hash], [model_name], [prompt_words], [date], [datetime], [datetime<Format>], [datetime<Format><Time Zone>], [job_timestamp]; dejar vacío para el valor predeterminado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpainting conditioning mask strength\",\n      \"localized\": \"Fuerza de la máscara de acondicionamiento de inpainting\",\n      \"reload\": \"\",\n      \"hint\": \"Determina la fuerza con la que se enmascara la imagen original para inpainting e img2img. 1.0 significa completamente enmascarado (predeterminado). 0.0 significa un acondicionamiento completamente sin máscara. Valores más bajos ayudarán a preservar la composición general de la imagen, pero tendrán dificultades con cambios grandes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Clip skip\",\n      \"localized\": \"Salto de Clip\",\n      \"reload\": \"\",\n      \"hint\": \"Parámetro de parada temprana para el modelo CLIP; 1 es detenerse en la última capa como de costumbre, 2 es detenerse en la penúltima capa, etc.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Images folder\",\n      \"localized\": \"Carpeta de imágenes\",\n      \"reload\": \"\",\n      \"hint\": \"Si está vacío, se establecerá por defecto en tres directorios más abajo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Grids folder\",\n      \"localized\": \"Carpeta de cuadrículas\",\n      \"reload\": \"\",\n      \"hint\": \"Si está vacío, se establecerá por defecto en dos directorios más abajo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Quicksettings list\",\n      \"localized\": \"Lista de ajustes rápidos\",\n      \"reload\": \"\",\n      \"hint\": \"Lista de nombres de ajustes, separados por comas, para ajustes que deberían ir a la barra de acceso rápido en la parte superior en lugar de a la pestaña de ajustes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Live preview display period\",\n      \"localized\": \"Período de visualización de previsualización en vivo\",\n      \"reload\": \"\",\n      \"hint\": \"Solicitar imagen de previsualización cada 'n' pasos, establecer en 0 para deshabilitar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Approximate\",\n      \"localized\": \"Aproximado\",\n      \"reload\": \"\",\n      \"hint\": \"Aproximación de red neuronal barata. Muy rápida comparada con VAE, pero produce imágenes con una resolución horizontal/vertical 4 veces menor y menor calidad\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Simple\",\n      \"localized\": \"Simple\",\n      \"reload\": \"\",\n      \"hint\": \"Aproximación muy barata. Muy rápida comparada con VAE, pero produce imágenes con una resolución horizontal/vertical 8 veces menor y una calidad extremadamente baja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Progress update period\",\n      \"localized\": \"Período de actualización del progreso\",\n      \"reload\": \"\",\n      \"hint\": \"Período de actualización para la barra de progreso de la interfaz de usuario y las comprobaciones de previsualización, en milisegundos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Euler a\",\n      \"localized\": \"Euler a\",\n      \"reload\": \"\",\n      \"hint\": \"Euler Ancestral - muy creativo, cada uno puede obtener una imagen completamente diferente dependiendo del número de pasos, establecer pasos por encima de 30-40 no ayuda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"DDIM\",\n      \"localized\": \"DDIM\",\n      \"reload\": \"\",\n      \"hint\": \"Modelos Implícitos de Difusión de Denoising - los mejores para inpainting\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"UniPC\",\n      \"localized\": \"UniPC\",\n      \"reload\": \"\",\n      \"hint\": \"Marco Unificado Predictor-Corrector para el Muestreo Rápido de Modelos de Difusión\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sigma negative guidance minimum\",\n      \"localized\": \"Mínimo de guía negativa Sigma\",\n      \"reload\": \"\",\n      \"hint\": \"Saltar el prompt negativo durante algunos pasos cuando la imagen está casi lista, 0=deshabilitar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler tile size\",\n      \"localized\": \"Tamaño de tesela del escalador\",\n      \"reload\": \"\",\n      \"hint\": \"0 = sin teselado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler tile overlap\",\n      \"localized\": \"Superposición de tesela del escalador\",\n      \"reload\": \"\",\n      \"hint\": \"Valores bajos = costura visible\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"GFPGAN\",\n      \"localized\": \"GFPGAN\",\n      \"reload\": \"\",\n      \"hint\": \"Restaurar rostros de baja calidad usando la red neuronal GFPGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CodeFormer\",\n      \"localized\": \"CodeFormer\",\n      \"reload\": \"\",\n      \"hint\": \"Restaurar rostros de baja calidad usando la red neuronal CodeFormer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CodeFormer weight parameter\",\n      \"localized\": \"Parámetro de peso de CodeFormer\",\n      \"reload\": \"\",\n      \"hint\": \"0 = efecto máximo; 1 = efecto mínimo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ToMe token merging ratio\",\n      \"localized\": \"Ratio de fusión de tokens ToMe\",\n      \"reload\": \"\",\n      \"hint\": \"Habilitar la fusión de tokens redundantes a través de tomesd para mejoras de velocidad y memoria, 0=deshabilitado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Todo token merging ratio\",\n      \"localized\": \"Ratio de fusión de tokens Todo\",\n      \"reload\": \"\",\n      \"hint\": \"Habilitar la fusión de tokens redundantes a través de todo para mejoras de velocidad y memoria, 0=deshabilitado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model pipeline\",\n      \"localized\": \"Pipeline del modelo\",\n      \"reload\": \"\",\n      \"hint\": \"Si la autodetección no detecta el modelo automáticamente, selecciona el tipo de modelo antes de cargar un modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE slicing\",\n      \"localized\": \"Corte VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Decodifica lotes de latentes una imagen a la vez con VRAM limitada. Pequeña mejora de rendimiento en la decodificación VAE en lotes de múltiples imágenes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE tiling\",\n      \"localized\": \"Teselado VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Divide imágenes grandes en teselas superpuestas con VRAM limitada. Resulta en un aumento menor del tiempo de procesamiento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Dynamic attention BMM\",\n      \"localized\": \"Atención dinámica BMM\",\n      \"reload\": \"\",\n      \"hint\": \"Realiza el cálculo de atención en pasos en lugar de todo a la vez. Tiempos de inferencia más lentos, pero uso de memoria muy reducido\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX Execution Provider\",\n      \"localized\": \"Proveedor de ejecución ONNX\",\n      \"reload\": \"\",\n      \"hint\": \"Proveedor de ejecución ONNX\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX allow fallback to CPU\",\n      \"localized\": \"ONNX permite recurrir a la CPU\",\n      \"reload\": \"\",\n      \"hint\": \"Permitir recurrir a la CPU cuando el proveedor de ejecución seleccionado falla\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX cache converted models\",\n      \"localized\": \"ONNX cachea modelos convertidos\",\n      \"reload\": \"\",\n      \"hint\": \"Guarda los modelos convertidos a formato ONNX como caché. Puedes gestionarlos en la pestaña ONNX\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX unload base model when processing refiner\",\n      \"localized\": \"ONNX descarga el modelo base al procesar el refinador\",\n      \"reload\": \"\",\n      \"hint\": \"Descarga el modelo base cuando el refinador está siendo convertido/optimizado/procesado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inference-mode\",\n      \"localized\": \"Modo de inferencia\",\n      \"reload\": \"\",\n      \"hint\": \"Usar torch.inference_mode\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"no-grad\",\n      \"localized\": \"sin-gradiente\",\n      \"reload\": \"\",\n      \"hint\": \"Usar torch.no_grad\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model compile precompile\",\n      \"localized\": \"Precompilación del modelo\",\n      \"reload\": \"\",\n      \"hint\": \"Ejecutar la compilación del modelo inmediatamente al cargar el modelo en lugar de en el primer uso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Use zeros for prompt padding\",\n      \"localized\": \"Usar ceros para el relleno de prompt\",\n      \"reload\": \"\",\n      \"hint\": \"Forzar un tensor completamente cero cuando el prompt está vacío para eliminar cualquier ruido residual\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Include invisible watermark\",\n      \"localized\": \"Incluir marca de agua invisible\",\n      \"reload\": \"\",\n      \"hint\": \"Añadir marca de agua invisible a la imagen alterando algunos valores de píxeles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invisible watermark string\",\n      \"localized\": \"Cadena de marca de agua invisible\",\n      \"reload\": \"\",\n      \"hint\": \"Cadena de marca de agua para añadir a la imagen. Mantener muy corta para evitar corrupción de imagen.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show log view\",\n      \"localized\": \"mostrar vista de registro\",\n      \"reload\": \"\",\n      \"hint\": \"Muestra la vista de registro en la parte inferior de la ventana principal\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Log view update period\",\n      \"localized\": \"Período de actualización de la vista de registro\",\n      \"reload\": \"\",\n      \"hint\": \"Período de actualización de la vista de registro, en milisegundos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"PAG layer names\",\n      \"localized\": \"Nombres de capa PAG\",\n      \"reload\": \"\",\n      \"hint\": \"Lista de capas separadas por espacios<br>Disponibles: d[0-5], m[0], u[0-8]<br>Predeterminado: m0\"\n    }\n  ],\n  \"missing\": [\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage\",\n      \"localized\": \"1ª etapa\",\n      \"reload\": \"\",\n      \"hint\": \"1ª etapa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage backbone\",\n      \"localized\": \"Backbone de 1ª etapa\",\n      \"reload\": \"\",\n      \"hint\": \"Backbone de 1ª etapa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage skip\",\n      \"localized\": \"Salto de 1ª etapa\",\n      \"reload\": \"\",\n      \"hint\": \"Salto de 1ª etapa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd restart step\",\n      \"localized\": \"2º paso de reinicio\",\n      \"reload\": \"\",\n      \"hint\": \"2º paso de reinicio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd scale\",\n      \"localized\": \"2ª escala\",\n      \"reload\": \"\",\n      \"hint\": \"2ª escala\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage\",\n      \"localized\": \"2ª etapa\",\n      \"reload\": \"\",\n      \"hint\": \"2ª etapa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage backbone\",\n      \"localized\": \"Backbone de 2ª etapa\",\n      \"reload\": \"\",\n      \"hint\": \"Backbone de 2ª etapa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage skip\",\n      \"localized\": \"Salto de 2ª etapa\",\n      \"reload\": \"\",\n      \"hint\": \"Salto de 2ª etapa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd restart step\",\n      \"localized\": \"3º paso de reinicio\",\n      \"reload\": \"\",\n      \"hint\": \"3º paso de reinicio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd scale\",\n      \"localized\": \"3ª escala\",\n      \"reload\": \"\",\n      \"hint\": \"3ª escala\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd stage\",\n      \"localized\": \"3ª etapa\",\n      \"reload\": \"\",\n      \"hint\": \"3ª etapa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th restart step\",\n      \"localized\": \"4º paso de reinicio\",\n      \"reload\": \"\",\n      \"hint\": \"4º paso de reinicio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th scale\",\n      \"localized\": \"4ª escala\",\n      \"reload\": \"\",\n      \"hint\": \"4ª escala\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th stage\",\n      \"localized\": \"4ª etapa\",\n      \"reload\": \"\",\n      \"hint\": \"4ª etapa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"a1111\",\n      \"localized\": \"a1111\",\n      \"reload\": \"\",\n      \"hint\": \"a1111\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"accuracy\",\n      \"localized\": \"Precisión\",\n      \"reload\": \"\",\n      \"hint\": \"Precisión\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aci: mask dilate\",\n      \"localized\": \"aci: dilatar máscara\",\n      \"reload\": \"\",\n      \"hint\": \"aci: dilatar máscara\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"active\",\n      \"localized\": \"Activo\",\n      \"reload\": \"\",\n      \"hint\": \"Activo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adain\",\n      \"localized\": \"adain\",\n      \"reload\": \"\",\n      \"hint\": \"adain\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 1\",\n      \"localized\": \"Adaptador 1\",\n      \"reload\": \"\",\n      \"hint\": \"Adaptador 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 2\",\n      \"localized\": \"Adaptador 2\",\n      \"reload\": \"\",\n      \"hint\": \"Adaptador 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 3\",\n      \"localized\": \"Adaptador 3\",\n      \"reload\": \"\",\n      \"hint\": \"Adaptador 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 4\",\n      \"localized\": \"Adaptador 4\",\n      \"reload\": \"\",\n      \"hint\": \"Adaptador 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adaptive restore\",\n      \"localized\": \"Restauración adaptativa\",\n      \"reload\": \"\",\n      \"hint\": \"Restauración adaptativa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"add text info\",\n      \"localized\": \"Añadir información de texto\",\n      \"reload\": \"\",\n      \"hint\": \"Añadir información de texto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"add time info\",\n      \"localized\": \"Añadir información de tiempo\",\n      \"reload\": \"\",\n      \"hint\": \"Añadir información de tiempo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"additional image browser folders\",\n      \"localized\": \"Carpetas adicionales del navegador de imágenes\",\n      \"reload\": \"\",\n      \"hint\": \"Carpetas adicionales del navegador de imágenes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"additional postprocessing operations\",\n      \"localized\": \"Operaciones de postprocesamiento adicionales\",\n      \"reload\": \"\",\n      \"hint\": \"Operaciones de postprocesamiento adicionales\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"advanced options\",\n      \"localized\": \"Opciones avanzadas\",\n      \"reload\": \"\",\n      \"hint\": \"Opciones avanzadas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"after\",\n      \"localized\": \"Después\",\n      \"reload\": \"\",\n      \"hint\": \"Después\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aggressive at step\",\n      \"localized\": \"Agresivo en el paso\",\n      \"reload\": \"\",\n      \"hint\": \"Agresivo en el paso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alias\",\n      \"localized\": \"Alias\",\n      \"reload\": \"\",\n      \"hint\": \"Alias\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"all\",\n      \"localized\": \"Todos\",\n      \"reload\": \"\",\n      \"hint\": \"Todos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"allowed aspect ratios\",\n      \"localized\": \"Relaciones de aspecto permitidas\",\n      \"reload\": \"\",\n      \"hint\": \"Relaciones de aspecto permitidas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha\",\n      \"localized\": \"Alfa\",\n      \"reload\": \"\",\n      \"hint\": \"Alfa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha block weight preset\",\n      \"localized\": \"Preajuste de peso de bloque alfa\",\n      \"reload\": \"\",\n      \"hint\": \"Preajuste de peso de bloque alfa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha matting\",\n      \"localized\": \"Matizado alfa\",\n      \"reload\": \"\",\n      \"hint\": \"Matizado alfa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha preset\",\n      \"localized\": \"Preajuste alfa\",\n      \"reload\": \"\",\n      \"hint\": \"Preajuste alfa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha ratio\",\n      \"localized\": \"Proporción alfa\",\n      \"reload\": \"\",\n      \"hint\": \"Proporción alfa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"amplify lut\",\n      \"localized\": \"Amplificar LUT\",\n      \"reload\": \"\",\n      \"hint\": \"Amplificar LUT\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"analyze\",\n      \"localized\": \"Analizar\",\n      \"reload\": \"\",\n      \"hint\": \"Analizar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"anchor settings\",\n      \"localized\": \"Configuración de anclaje\",\n      \"reload\": \"\",\n      \"hint\": \"Configuración de anclaje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"animateddiff\",\n      \"localized\": \"Animatediff\",\n      \"reload\": \"\",\n      \"hint\": \"Animatediff\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"answer\",\n      \"localized\": \"Respuesta\",\n      \"reload\": \"\",\n      \"hint\": \"Respuesta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aot_ts_nvfuser\",\n      \"localized\": \"aot_ts_nvfuser\",\n      \"reload\": \"\",\n      \"hint\": \"aot_ts_nvfuser\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"appearance\",\n      \"localized\": \"Apariencia\",\n      \"reload\": \"\",\n      \"hint\": \"Apariencia\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append caption files\",\n      \"localized\": \"Adjuntar archivos de subtítulos\",\n      \"reload\": \"\",\n      \"hint\": \"Adjuntar archivos de subtítulos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append image info json file\",\n      \"localized\": \"Adjuntar archivo JSON de información de imagen\",\n      \"reload\": \"\",\n      \"hint\": \"Adjuntar archivo JSON de información de imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append interrogated prompt at each iteration\",\n      \"localized\": \"Adjuntar prompt interrogado en cada iteración\",\n      \"reload\": \"\",\n      \"hint\": \"Adjuntar prompt interrogado en cada iteración\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply color correction\",\n      \"localized\": \"Aplicar corrección de color\",\n      \"reload\": \"\",\n      \"hint\": \"Aplicar corrección de color\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply filter\",\n      \"localized\": \"Aplicar filtro\",\n      \"reload\": \"\",\n      \"hint\": \"Aplicar filtro\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply linfusion distillation on load\",\n      \"localized\": \"Aplicar destilación Linfusion al cargar\",\n      \"reload\": \"\",\n      \"hint\": \"Aplicar destilación Linfusion al cargar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply mask as overlay\",\n      \"localized\": \"Aplicar máscara como superposición\",\n      \"reload\": \"\",\n      \"hint\": \"Aplicar máscara como superposición\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply msw-msa\",\n      \"localized\": \"Aplicar MSW-MSA\",\n      \"reload\": \"\",\n      \"hint\": \"Aplicar MSW-MSA\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply rau-net\",\n      \"localized\": \"Aplicar Rau-Net\",\n      \"reload\": \"\",\n      \"hint\": \"Aplicar Rau-Net\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply to model\",\n      \"localized\": \"Aplicar al modelo\",\n      \"reload\": \"\",\n      \"hint\": \"Aplicar al modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"artists\",\n      \"localized\": \"Artistas\",\n      \"reload\": \"\",\n      \"hint\": \"Artistas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"atiadlxx (amd only)\",\n      \"localized\": \"atiadlxx (solo AMD)\",\n      \"reload\": \"\",\n      \"hint\": \"atiadlxx (solo AMD)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention\",\n      \"localized\": \"Atención\",\n      \"reload\": \"\",\n      \"hint\": \"Atención\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention adain\",\n      \"localized\": \"Atención Adain\",\n      \"reload\": \"\",\n      \"hint\": \"Atención Adain\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention cache enabled\",\n      \"localized\": \"Caché de atención habilitada\",\n      \"reload\": \"\",\n      \"hint\": \"Caché de atención habilitada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention chunking threshold\",\n      \"localized\": \"Umbral de fragmentación de atención\",\n      \"reload\": \"\",\n      \"hint\": \"Umbral de fragmentación de atención\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention kv chunk size\",\n      \"localized\": \"Tamaño de fragmento KV de atención\",\n      \"reload\": \"\",\n      \"hint\": \"Tamaño de fragmento KV de atención\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention query chunk size\",\n      \"localized\": \"Tamaño de fragmento de consulta de atención\",\n      \"reload\": \"\",\n      \"hint\": \"Tamaño de fragmento de consulta de atención\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto\",\n      \"localized\": \"Auto\",\n      \"reload\": \"\",\n      \"hint\": \"Auto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto apply\",\n      \"localized\": \"Aplicar automáticamente\",\n      \"reload\": \"\",\n      \"hint\": \"Aplicar automáticamente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-convert sd15 embeddings to sdxl\",\n      \"localized\": \"Convertir automáticamente incrustaciones SD15 a SDXL\",\n      \"reload\": \"\",\n      \"hint\": \"Convertir automáticamente incrustaciones SD15 a SDXL\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-mask\",\n      \"localized\": \"Máscara automática\",\n      \"reload\": \"\",\n      \"hint\": \"Máscara automática\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-segment\",\n      \"localized\": \"Segmentación automática\",\n      \"reload\": \"\",\n      \"hint\": \"Segmentación automática\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"autolaunch browser upon startup\",\n      \"localized\": \"Abrir navegador automáticamente al iniciar\",\n      \"reload\": \"\",\n      \"hint\": \"Abrir navegador automáticamente al iniciar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"automatically determine rank\",\n      \"localized\": \"Determinar el rango automáticamente\",\n      \"reload\": \"\",\n      \"hint\": \"Determinar el rango automáticamente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"autorank ratio\",\n      \"localized\": \"Relación de autorango\",\n      \"reload\": \"\",\n      \"hint\": \"Relación de autorango\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"available networks\",\n      \"localized\": \"Redes disponibles\",\n      \"reload\": \"\",\n      \"hint\": \"Redes disponibles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"backend\",\n      \"localized\": \"Backend\",\n      \"reload\": \"\",\n      \"hint\": \"Backend\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"backend storage\",\n      \"localized\": \"Almacenamiento de backend\",\n      \"reload\": \"\",\n      \"hint\": \"Almacenamiento de backend\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"background threshold\",\n      \"localized\": \"Umbral de fondo\",\n      \"reload\": \"\",\n      \"hint\": \"Umbral de fondo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced\",\n      \"localized\": \"Equilibrado\",\n      \"reload\": \"\",\n      \"hint\": \"Equilibrado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload cpu high watermark\",\n      \"localized\": \"Marca de agua alta de descarga de CPU equilibrada\",\n      \"reload\": \"\",\n      \"hint\": \"Marca de agua alta de descarga de CPU equilibrada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload gpu high watermark\",\n      \"localized\": \"Marca de agua alta de descarga de GPU equilibrada\",\n      \"reload\": \"\",\n      \"hint\": \"Marca de agua alta de descarga de GPU equilibrada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload gpu low watermark\",\n      \"localized\": \"Marca de agua baja de descarga de GPU equilibrada\",\n      \"reload\": \"\",\n      \"hint\": \"Marca de agua baja de descarga de GPU equilibrada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"base\",\n      \"localized\": \"Base\",\n      \"reload\": \"\",\n      \"hint\": \"Base\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch caption\",\n      \"localized\": \"Subtítulo por lotes\",\n      \"reload\": \"\",\n      \"hint\": \"Subtítulo por lotes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch input directory\",\n      \"localized\": \"Directorio de entrada por lotes\",\n      \"reload\": \"\",\n      \"hint\": \"Directorio de entrada por lotes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch interogate\",\n      \"localized\": \"Interrogación por lotes\",\n      \"reload\": \"\",\n      \"hint\": \"Interrogación por lotes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch interrogate\",\n      \"localized\": \"Interrogación por lotes\",\n      \"reload\": \"\",\n      \"hint\": \"Interrogación por lotes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch mask directory\",\n      \"localized\": \"Directorio de máscara por lotes\",\n      \"reload\": \"\",\n      \"hint\": \"Directorio de máscara por lotes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch matrix-matrix\",\n      \"localized\": \"Matriz-matriz por lotes\",\n      \"reload\": \"\",\n      \"hint\": \"Matriz-matriz por lotes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch mode uses sequential seeds\",\n      \"localized\": \"El modo por lotes usa semillas secuenciales\",\n      \"reload\": \"\",\n      \"hint\": \"El modo por lotes usa semillas secuenciales\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch output directory\",\n      \"localized\": \"Directorio de salida por lotes\",\n      \"reload\": \"\",\n      \"hint\": \"Directorio de salida por lotes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch uses original name\",\n      \"localized\": \"El lote usa el nombre original\",\n      \"reload\": \"\",\n      \"hint\": \"El lote usa el nombre original\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bdia ddim\",\n      \"localized\": \"bdia ddim\",\n      \"reload\": \"\",\n      \"hint\": \"bdia ddim\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"before\",\n      \"localized\": \"Antes\",\n      \"reload\": \"\",\n      \"hint\": \"Antes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"benchmark level\",\n      \"localized\": \"Nivel de rendimiento\",\n      \"reload\": \"\",\n      \"hint\": \"Nivel de rendimiento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"benchmark steps\",\n      \"localized\": \"Pasos de rendimiento\",\n      \"reload\": \"\",\n      \"hint\": \"Pasos de rendimiento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta block weight preset\",\n      \"localized\": \"Preajuste de peso de bloque beta\",\n      \"reload\": \"\",\n      \"hint\": \"Preajuste de peso de bloque beta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta end\",\n      \"localized\": \"Fin de beta\",\n      \"reload\": \"\",\n      \"hint\": \"Fin de beta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta ratio\",\n      \"localized\": \"Relación beta\",\n      \"reload\": \"\",\n      \"hint\": \"Relación beta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta schedule\",\n      \"localized\": \"Calendario beta\",\n      \"reload\": \"\",\n      \"hint\": \"Calendario beta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta start\",\n      \"localized\": \"Inicio de beta\",\n      \"reload\": \"\",\n      \"hint\": \"Inicio de beta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bh1\",\n      \"localized\": \"bh1\",\n      \"reload\": \"\",\n      \"hint\": \"bh1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bh2\",\n      \"localized\": \"bh2\",\n      \"reload\": \"\",\n      \"hint\": \"bh2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"block\",\n      \"localized\": \"bloque\",\n      \"reload\": \"\",\n      \"hint\": \"bloque\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"block skip range\",\n      \"localized\": \"rango de salto de bloque\",\n      \"reload\": \"\",\n      \"hint\": \"rango de salto de bloque\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"blur\",\n      \"localized\": \"desenfoque\",\n      \"reload\": \"\",\n      \"hint\": \"desenfoque\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"body\",\n      \"localized\": \"cuerpo\",\n      \"reload\": \"\",\n      \"hint\": \"cuerpo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"boost\",\n      \"localized\": \"impulso\",\n      \"reload\": \"\",\n      \"hint\": \"impulso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"brightness\",\n      \"localized\": \"brillo\",\n      \"reload\": \"\",\n      \"hint\": \"brillo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cache model\",\n      \"localized\": \"modelo de caché\",\n      \"reload\": \"\",\n      \"hint\": \"modelo de caché\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cache text encoder results\",\n      \"localized\": \"resultados del codificador de texto de caché\",\n      \"reload\": \"\",\n      \"hint\": \"resultados del codificador de texto de caché\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"canny\",\n      \"localized\": \"canny\",\n      \"reload\": \"\",\n      \"hint\": \"canny\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"caption\",\n      \"localized\": \"subtítulo\",\n      \"reload\": \"\",\n      \"hint\": \"subtítulo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"caption model\",\n      \"localized\": \"modelo de subtítulos\",\n      \"reload\": \"\",\n      \"hint\": \"modelo de subtítulos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"center\",\n      \"localized\": \"centro\",\n      \"reload\": \"\",\n      \"hint\": \"centro\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change log\",\n      \"localized\": \"registro de cambios\",\n      \"reload\": \"\",\n      \"hint\": \"registro de cambios\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change model\",\n      \"localized\": \"cambiar modelo\",\n      \"reload\": \"\",\n      \"hint\": \"cambiar modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change rate\",\n      \"localized\": \"tasa de cambio\",\n      \"reload\": \"\",\n      \"hint\": \"tasa de cambio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change reference\",\n      \"localized\": \"cambiar referencia\",\n      \"reload\": \"\",\n      \"hint\": \"cambiar referencia\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change refiner\",\n      \"localized\": \"cambiar refinador\",\n      \"reload\": \"\",\n      \"hint\": \"cambiar refinador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change vae\",\n      \"localized\": \"cambiar vae\",\n      \"reload\": \"\",\n      \"hint\": \"cambiar vae\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"channels last\",\n      \"localized\": \"canales al final\",\n      \"reload\": \"\",\n      \"hint\": \"canales al final\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"check alternative hash\",\n      \"localized\": \"verificar hash alternativo\",\n      \"reload\": \"\",\n      \"hint\": \"verificar hash alternativo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"check for updates\",\n      \"localized\": \"buscar actualizaciones\",\n      \"reload\": \"\",\n      \"hint\": \"buscar actualizaciones\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"check status\",\n      \"localized\": \"verificar estado\",\n      \"reload\": \"\",\n      \"hint\": \"verificar estado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"chunk size\",\n      \"localized\": \"tamaño de fragmento\",\n      \"reload\": \"\",\n      \"hint\": \"tamaño de fragmento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"civitai model type\",\n      \"localized\": \"tipo de modelo civitai\",\n      \"reload\": \"\",\n      \"hint\": \"tipo de modelo civitai\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"civitai token\",\n      \"localized\": \"token civitai\",\n      \"reload\": \"\",\n      \"hint\": \"token civitai\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ck flash attention\",\n      \"localized\": \"atención flash ck\",\n      \"reload\": \"\",\n      \"hint\": \"atención flash ck\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ckpt\",\n      \"localized\": \"ckpt\",\n      \"reload\": \"\",\n      \"hint\": \"ckpt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cleanup temporary folder on startup\",\n      \"localized\": \"limpiar carpeta temporal al iniciar\",\n      \"reload\": \"\",\n      \"hint\": \"limpiar carpeta temporal al iniciar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip model\",\n      \"localized\": \"modelo clip\",\n      \"reload\": \"\",\n      \"hint\": \"modelo clip\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: chunk size\",\n      \"localized\": \"clip: tamaño de fragmento\",\n      \"reload\": \"\",\n      \"hint\": \"clip: tamaño de fragmento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: default captioner\",\n      \"localized\": \"clip: subtitulador predeterminado\",\n      \"reload\": \"\",\n      \"hint\": \"clip: subtitulador predeterminado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: default mode\",\n      \"localized\": \"clip: modo predeterminado\",\n      \"reload\": \"\",\n      \"hint\": \"clip: modo predeterminado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: default model\",\n      \"localized\": \"clip: modelo predeterminado\",\n      \"reload\": \"\",\n      \"hint\": \"clip: modelo predeterminado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: intermediate flavors\",\n      \"localized\": \"clip: sabores intermedios\",\n      \"reload\": \"\",\n      \"hint\": \"clip: sabores intermedios\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: max flavors\",\n      \"localized\": \"clip: sabores máximos\",\n      \"reload\": \"\",\n      \"hint\": \"clip: sabores máximos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: max length\",\n      \"localized\": \"clip: longitud máxima\",\n      \"reload\": \"\",\n      \"hint\": \"clip: longitud máxima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: min flavors\",\n      \"localized\": \"clip: sabores mínimos\",\n      \"reload\": \"\",\n      \"hint\": \"clip: sabores mínimos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: min length\",\n      \"localized\": \"clip: longitud mínima\",\n      \"reload\": \"\",\n      \"hint\": \"clip: longitud mínima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: num beams\",\n      \"localized\": \"clip: número de haces\",\n      \"reload\": \"\",\n      \"hint\": \"clip: número de haces\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"close\",\n      \"localized\": \"cerrar\",\n      \"reload\": \"\",\n      \"hint\": \"cerrar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cmsi\",\n      \"localized\": \"cmsi\",\n      \"reload\": \"\",\n      \"hint\": \"cmsi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn end\",\n      \"localized\": \"cn final\",\n      \"reload\": \"\",\n      \"hint\": \"cn final\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn mode\",\n      \"localized\": \"modo cn\",\n      \"reload\": \"\",\n      \"hint\": \"modo cn\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn start\",\n      \"localized\": \"cn inicio\",\n      \"reload\": \"\",\n      \"hint\": \"cn inicio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn strength\",\n      \"localized\": \"fuerza cn\",\n      \"reload\": \"\",\n      \"hint\": \"fuerza cn\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn tiles\",\n      \"localized\": \"baldosas cn\",\n      \"reload\": \"\",\n      \"hint\": \"baldosas cn\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"coarse\",\n      \"localized\": \"grueso\",\n      \"reload\": \"\",\n      \"hint\": \"grueso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color\",\n      \"localized\": \"color\",\n      \"reload\": \"\",\n      \"hint\": \"color\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color grading\",\n      \"localized\": \"gradación de color\",\n      \"reload\": \"\",\n      \"hint\": \"gradación de color\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color map\",\n      \"localized\": \"mapa de color\",\n      \"reload\": \"\",\n      \"hint\": \"mapa de color\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color variation\",\n      \"localized\": \"variación de color\",\n      \"reload\": \"\",\n      \"hint\": \"variación de color\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"colormap\",\n      \"localized\": \"mapa de colores\",\n      \"reload\": \"\",\n      \"hint\": \"mapa de colores\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"columns\",\n      \"localized\": \"columnas\",\n      \"reload\": \"\",\n      \"hint\": \"columnas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"comma\",\n      \"localized\": \"coma\",\n      \"reload\": \"\",\n      \"hint\": \"coma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"comma separated list with optional strength per lora\",\n      \"localized\": \"lista separada por comas con fuerza opcional por lora\",\n      \"reload\": \"\",\n      \"hint\": \"lista separada por comas con fuerza opcional por lora\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"compact view\",\n      \"localized\": \"vista compacta\",\n      \"reload\": \"\",\n      \"hint\": \"vista compacta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"compel\",\n      \"localized\": \"compel\",\n      \"reload\": \"\",\n      \"hint\": \"compel\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"composite\",\n      \"localized\": \"compuesto\",\n      \"reload\": \"\",\n      \"hint\": \"compuesto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"compress ratio\",\n      \"localized\": \"relación de compresión\",\n      \"reload\": \"\",\n      \"hint\": \"relación de compresión\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"concept tokens\",\n      \"localized\": \"tokens de concepto\",\n      \"reload\": \"\",\n      \"hint\": \"tokens de concepto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context\",\n      \"localized\": \"contexto\",\n      \"reload\": \"\",\n      \"hint\": \"contexto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context after\",\n      \"localized\": \"contexto después\",\n      \"reload\": \"\",\n      \"hint\": \"contexto después\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context before\",\n      \"localized\": \"contexto antes\",\n      \"reload\": \"\",\n      \"hint\": \"contexto antes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context mask\",\n      \"localized\": \"máscara de contexto\",\n      \"reload\": \"\",\n      \"hint\": \"máscara de contexto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"contrast\",\n      \"localized\": \"contraste\",\n      \"reload\": \"\",\n      \"hint\": \"contraste\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control factor\",\n      \"localized\": \"factor de control\",\n      \"reload\": \"\",\n      \"hint\": \"factor de control\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control override denoise strength\",\n      \"localized\": \"fuerza de eliminación de ruido de anulación de control\",\n      \"reload\": \"\",\n      \"hint\": \"fuerza de eliminación de ruido de anulación de control\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control preprocess input images\",\n      \"localized\": \"controlar el preprocesamiento de imágenes de entrada\",\n      \"reload\": \"\",\n      \"hint\": \"controlar el preprocesamiento de imágenes de entrada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 1\",\n      \"localized\": \"unidad 1 de control-lllite\",\n      \"reload\": \"\",\n      \"hint\": \"unidad 1 de control-lllite\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 2\",\n      \"localized\": \"unidad 2 de control-lllite\",\n      \"reload\": \"\",\n      \"hint\": \"unidad 2 de control-lllite\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 3\",\n      \"localized\": \"unidad 3 de control-lllite\",\n      \"reload\": \"\",\n      \"hint\": \"unidad 3 de control-lllite\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 4\",\n      \"localized\": \"unidad 4 de control-lllite\",\n      \"reload\": \"\",\n      \"hint\": \"unidad 4 de control-lllite\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet\",\n      \"localized\": \"controlnet\",\n      \"reload\": \"\",\n      \"hint\": \"controlnet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 1\",\n      \"localized\": \"unidad 1 de controlnet\",\n      \"reload\": \"\",\n      \"hint\": \"unidad 1 de controlnet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 2\",\n      \"localized\": \"unidad 2 de controlnet\",\n      \"reload\": \"\",\n      \"hint\": \"unidad 2 de controlnet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 3\",\n      \"localized\": \"unidad 3 de controlnet\",\n      \"reload\": \"\",\n      \"hint\": \"unidad 3 de controlnet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 4\",\n      \"localized\": \"unidad 4 de controlnet\",\n      \"reload\": \"\",\n      \"hint\": \"unidad 4 de controlnet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs\",\n      \"localized\": \"controlnet-xs\",\n      \"reload\": \"\",\n      \"hint\": \"controlnet-xs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 1\",\n      \"localized\": \"unidad 1 de controlnet-xs\",\n      \"reload\": \"\",\n      \"hint\": \"unidad 1 de controlnet-xs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 2\",\n      \"localized\": \"unidad 2 de controlnet-xs\",\n      \"reload\": \"\",\n      \"hint\": \"unidad 2 de controlnet-xs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 3\",\n      \"localized\": \"unidad 3 de controlnet-xs\",\n      \"reload\": \"\",\n      \"hint\": \"unidad 3 de controlnet-xs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 4\",\n      \"localized\": \"unidad 4 de controlnet-xs\",\n      \"reload\": \"\",\n      \"hint\": \"unidad 4 de controlnet-xs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"correction mode\",\n      \"localized\": \"modo de corrección\",\n      \"reload\": \"\",\n      \"hint\": \"modo de corrección\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine background\",\n      \"localized\": \"fondo coseno\",\n      \"reload\": \"\",\n      \"hint\": \"fondo coseno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale\",\n      \"localized\": \"escala coseno\",\n      \"reload\": \"\",\n      \"hint\": \"escala coseno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale 1\",\n      \"localized\": \"escala coseno 1\",\n      \"reload\": \"\",\n      \"hint\": \"escala coseno 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale 2\",\n      \"localized\": \"escala coseno 2\",\n      \"reload\": \"\",\n      \"hint\": \"escala coseno 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale 3\",\n      \"localized\": \"escala coseno 3\",\n      \"reload\": \"\",\n      \"hint\": \"escala coseno 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"create image info text file\",\n      \"localized\": \"crear archivo de texto de información de imagen\",\n      \"reload\": \"\",\n      \"hint\": \"crear archivo de texto de información de imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"create video\",\n      \"localized\": \"crear vídeo\",\n      \"reload\": \"\",\n      \"hint\": \"crear vídeo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"create zip archive\",\n      \"localized\": \"crear archivo zip\",\n      \"reload\": \"\",\n      \"hint\": \"crear archivo zip\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cross-attention\",\n      \"localized\": \"atención cruzada\",\n      \"reload\": \"\",\n      \"hint\": \"atención cruzada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cudagraphs\",\n      \"localized\": \"cudagraphs\",\n      \"reload\": \"\",\n      \"hint\": \"cudagraphs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cudamallocasync\",\n      \"localized\": \"cudamallocasync\",\n      \"reload\": \"\",\n      \"hint\": \"cudamallocasync\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"custom pipeline\",\n      \"localized\": \"pipeline personalizado\",\n      \"reload\": \"\",\n      \"hint\": \"pipeline personalizado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dark\",\n      \"localized\": \"oscuro\",\n      \"reload\": \"\",\n      \"hint\": \"oscuro\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dc solver\",\n      \"localized\": \"solucionador dc\",\n      \"reload\": \"\",\n      \"hint\": \"solucionador dc\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ddpm\",\n      \"localized\": \"ddpm\",\n      \"reload\": \"\",\n      \"hint\": \"ddpm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"debug info\",\n      \"localized\": \"información de depuración\",\n      \"reload\": \"\",\n      \"hint\": \"información de depuración\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"decode\",\n      \"localized\": \"decodificar\",\n      \"reload\": \"\",\n      \"hint\": \"decodificar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"decode chunks\",\n      \"localized\": \"decodificar trozos\",\n      \"reload\": \"\",\n      \"hint\": \"decodificar trozos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deep-cache\",\n      \"localized\": \"deep-cache\",\n      \"reload\": \"\",\n      \"hint\": \"deep-cache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru\",\n      \"localized\": \"deepbooru\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: escape brackets\",\n      \"localized\": \"deepbooru: escapar corchetes\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: escapar corchetes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: exclude tags\",\n      \"localized\": \"deepbooru: excluir etiquetas\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: excluir etiquetas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: include scores in results\",\n      \"localized\": \"deepbooru: incluir puntuaciones en los resultados\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: incluir puntuaciones en los resultados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: max tags\",\n      \"localized\": \"deepbooru: etiquetas máximas\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: etiquetas máximas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: score threshold\",\n      \"localized\": \"deepbooru: umbral de puntuación\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: umbral de puntuación\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: sort alphabetically\",\n      \"localized\": \"deepbooru: ordenar alfabéticamente\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: ordenar alfabéticamente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: use spaces for tags\",\n      \"localized\": \"deepbooru: usar espacios para etiquetas\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: usar espacios para etiquetas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepcache cache interval\",\n      \"localized\": \"intervalo de caché de deepcache\",\n      \"reload\": \"\",\n      \"hint\": \"intervalo de caché de deepcache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"default\",\n      \"localized\": \"predeterminado\",\n      \"reload\": \"\",\n      \"hint\": \"predeterminado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deis\",\n      \"localized\": \"deis\",\n      \"reload\": \"\",\n      \"hint\": \"deis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"denoising batch size\",\n      \"localized\": \"tamaño de lote de eliminación de ruido\",\n      \"reload\": \"\",\n      \"hint\": \"tamaño de lote de eliminación de ruido\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"denoising steps\",\n      \"localized\": \"pasos de eliminación de ruido\",\n      \"reload\": \"\",\n      \"hint\": \"pasos de eliminación de ruido\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth and normal\",\n      \"localized\": \"profundidad y normal\",\n      \"reload\": \"\",\n      \"hint\": \"profundidad y normal\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth anything\",\n      \"localized\": \"cualquier profundidad\",\n      \"reload\": \"\",\n      \"hint\": \"cualquier profundidad\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth map\",\n      \"localized\": \"mapa de profundidad\",\n      \"reload\": \"\",\n      \"hint\": \"mapa de profundidad\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth threshold\",\n      \"localized\": \"umbral de profundidad\",\n      \"reload\": \"\",\n      \"hint\": \"umbral de profundidad\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"description\",\n      \"localized\": \"descripción\",\n      \"reload\": \"\",\n      \"hint\": \"descripción\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"details\",\n      \"localized\": \"detalles\",\n      \"reload\": \"\",\n      \"hint\": \"detalles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deterministic mode\",\n      \"localized\": \"modo determinista\",\n      \"reload\": \"\",\n      \"hint\": \"modo determinista\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"device info\",\n      \"localized\": \"información del dispositivo\",\n      \"reload\": \"\",\n      \"hint\": \"información del dispositivo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"diffusers\",\n      \"localized\": \"diffusers\",\n      \"reload\": \"\",\n      \"hint\": \"diffusers\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dilate\",\n      \"localized\": \"dilatar\",\n      \"reload\": \"\",\n      \"hint\": \"dilatar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dilate tau\",\n      \"localized\": \"dilatar tau\",\n      \"reload\": \"\",\n      \"hint\": \"dilatar tau\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"directml retry ops for nan\",\n      \"localized\": \"reintentar operaciones de directml para nan\",\n      \"reload\": \"\",\n      \"hint\": \"reintentar operaciones de directml para nan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"directory for temporary images; leave empty for default\",\n      \"localized\": \"directorio para imágenes temporales; dejar vacío para predeterminado\",\n      \"reload\": \"\",\n      \"hint\": \"directorio para imágenes temporales; dejar vacío para predeterminado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disable accelerate\",\n      \"localized\": \"deshabilitar aceleración\",\n      \"reload\": \"\",\n      \"hint\": \"deshabilitar aceleración\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disable conditional batching\",\n      \"localized\": \"deshabilitar procesamiento por lotes condicional\",\n      \"reload\": \"\",\n      \"hint\": \"deshabilitar procesamiento por lotes condicional\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disabled\",\n      \"localized\": \"deshabilitado\",\n      \"reload\": \"\",\n      \"hint\": \"deshabilitado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"discard penultimate sigma\",\n      \"localized\": \"descartar penúltimo sigma\",\n      \"reload\": \"\",\n      \"hint\": \"descartar penúltimo sigma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"distance threshold\",\n      \"localized\": \"umbral de distancia\",\n      \"reload\": \"\",\n      \"hint\": \"umbral de distancia\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"do not change selected model when reading generation parameters\",\n      \"localized\": \"no cambiar el modelo seleccionado al leer parámetros de generación\",\n      \"reload\": \"\",\n      \"hint\": \"no cambiar el modelo seleccionado al leer parámetros de generación\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"do not display video output in ui\",\n      \"localized\": \"no mostrar salida de video en la interfaz de usuario\",\n      \"reload\": \"\",\n      \"hint\": \"no mostrar salida de video en la interfaz de usuario\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"down\",\n      \"localized\": \"abajo\",\n      \"reload\": \"\",\n      \"hint\": \"abajo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download\",\n      \"localized\": \"descargar\",\n      \"reload\": \"\",\n      \"hint\": \"descargar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download model\",\n      \"localized\": \"descargar modelo\",\n      \"reload\": \"\",\n      \"hint\": \"descargar modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download path\",\n      \"localized\": \"ruta de descarga\",\n      \"reload\": \"\",\n      \"hint\": \"ruta de descarga\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download updates\",\n      \"localized\": \"descargar actualizaciones\",\n      \"reload\": \"\",\n      \"hint\": \"descargar actualizaciones\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"downscale high resolution live previews\",\n      \"localized\": \"reducir escala de previsualizaciones en vivo de alta resolución\",\n      \"reload\": \"\",\n      \"hint\": \"reducir escala de previsualizaciones en vivo de alta resolución\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm sde\",\n      \"localized\": \"dpm sde\",\n      \"reload\": \"\",\n      \"hint\": \"dpm sde\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++\",\n      \"localized\": \"dpm++\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 1s\",\n      \"localized\": \"dpm++ 1s\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 1s\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m\",\n      \"localized\": \"dpm++ 2m\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 2m\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m edm\",\n      \"localized\": \"dpm++ 2m edm\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 2m edm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m inverse\",\n      \"localized\": \"dpm++ 2m inverso\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 2m inverso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m sde\",\n      \"localized\": \"dpm++ 2m sde\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 2m sde\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 3m\",\n      \"localized\": \"dpm++ 3m\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 3m\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 3m inverse\",\n      \"localized\": \"dpm++ 3m inverso\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 3m inverso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ cosine\",\n      \"localized\": \"dpm++ coseno\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ coseno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ inverse\",\n      \"localized\": \"dpm++ inverso\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ inverso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ sde\",\n      \"localized\": \"dpm++ sde\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ sde\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2 flowmatch\",\n      \"localized\": \"dpm2 flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2 flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2m flowmatch\",\n      \"localized\": \"dpm2++ 2m flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 2m flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2m sde flowmatch\",\n      \"localized\": \"dpm2++ 2m sde flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 2m sde flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2s flowmatch\",\n      \"localized\": \"dpm2++ 2s flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 2s flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 3m sde flowmatch\",\n      \"localized\": \"dpm2++ 3m sde flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 3m sde flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ sde flowmatch\",\n      \"localized\": \"dpm2++ sde flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ sde flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2a flowmatch\",\n      \"localized\": \"dpm2a flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2a flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"draw legend\",\n      \"localized\": \"dibujar leyenda\",\n      \"reload\": \"\",\n      \"hint\": \"dibujar leyenda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dropdown\",\n      \"localized\": \"desplegable\",\n      \"reload\": \"\",\n      \"hint\": \"desplegable\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"duration\",\n      \"localized\": \"duración\",\n      \"reload\": \"\",\n      \"hint\": \"duración\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dwpose\",\n      \"localized\": \"dwpose\",\n      \"reload\": \"\",\n      \"hint\": \"dwpose\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic\",\n      \"localized\": \"dinámico\",\n      \"reload\": \"\",\n      \"hint\": \"dinámico\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention\",\n      \"localized\": \"atención dinámica\",\n      \"reload\": \"\",\n      \"hint\": \"atención dinámica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention slicing rate in gb\",\n      \"localized\": \"tasa de división de atención dinámica en gb\",\n      \"reload\": \"\",\n      \"hint\": \"tasa de división de atención dinámica en gb\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention trigger rate in gb\",\n      \"localized\": \"tasa de activación de atención dinámica en gb\",\n      \"reload\": \"\",\n      \"hint\": \"tasa de activación de atención dinámica en gb\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edge\",\n      \"localized\": \"borde\",\n      \"reload\": \"\",\n      \"hint\": \"borde\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edit start\",\n      \"localized\": \"editar inicio\",\n      \"reload\": \"\",\n      \"hint\": \"editar inicio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edit stop\",\n      \"localized\": \"editar detención\",\n      \"reload\": \"\",\n      \"hint\": \"editar detención\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"embedded metadata\",\n      \"localized\": \"metadatos incrustados\",\n      \"reload\": \"\",\n      \"hint\": \"metadatos incrustados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable embeddings support\",\n      \"localized\": \"habilitar soporte de incrustaciones\",\n      \"reload\": \"\",\n      \"hint\": \"habilitar soporte de incrustaciones\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable file wildcards support\",\n      \"localized\": \"habilitar soporte de comodines de archivo\",\n      \"reload\": \"\",\n      \"hint\": \"habilitar soporte de comodines de archivo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable freeu\",\n      \"localized\": \"habilitar freeu\",\n      \"reload\": \"\",\n      \"hint\": \"habilitar freeu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable teacache\",\n      \"localized\": \"habilitar teacache\",\n      \"reload\": \"\",\n      \"hint\": \"habilitar teacache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable tonemap\",\n      \"localized\": \"habilitar mapeo de tonos\",\n      \"reload\": \"\",\n      \"hint\": \"habilitar mapeo de tonos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable use of reference models\",\n      \"localized\": \"habilitar uso de modelos de referencia\",\n      \"reload\": \"\",\n      \"hint\": \"habilitar uso de modelos de referencia\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enabled\",\n      \"localized\": \"habilitado\",\n      \"reload\": \"\",\n      \"hint\": \"habilitado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"encoder\",\n      \"localized\": \"codificador\",\n      \"reload\": \"\",\n      \"hint\": \"codificador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"end\",\n      \"localized\": \"fin\",\n      \"reload\": \"\",\n      \"hint\": \"fin\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enhance prompt\",\n      \"localized\": \"mejorar indicación\",\n      \"reload\": \"\",\n      \"hint\": \"mejorar indicación\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ensemble size\",\n      \"localized\": \"tamaño de conjunto\",\n      \"reload\": \"\",\n      \"hint\": \"tamaño de conjunto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"epsilon\",\n      \"localized\": \"épsilon\",\n      \"reload\": \"\",\n      \"hint\": \"épsilon\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"erode\",\n      \"localized\": \"erosionar\",\n      \"reload\": \"\",\n      \"hint\": \"erosionar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"erode size\",\n      \"localized\": \"tamaño de erosión\",\n      \"reload\": \"\",\n      \"hint\": \"tamaño de erosión\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"eta\",\n      \"localized\": \"eta\",\n      \"reload\": \"\",\n      \"hint\": \"eta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler\",\n      \"localized\": \"euler\",\n      \"reload\": \"\",\n      \"hint\": \"euler\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler edm\",\n      \"localized\": \"euler edm\",\n      \"reload\": \"\",\n      \"hint\": \"euler edm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler flowmatch\",\n      \"localized\": \"euler flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"euler flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler sgm\",\n      \"localized\": \"euler sgm\",\n      \"reload\": \"\",\n      \"hint\": \"euler sgm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.cpu\",\n      \"localized\": \"executionprovider.cpu\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.cpu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.cuda\",\n      \"localized\": \"executionprovider.cuda\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.cuda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.directml\",\n      \"localized\": \"executionprovider.directml\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.directml\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.migraphx\",\n      \"localized\": \"executionprovider.migraphx\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.migraphx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.openvino\",\n      \"localized\": \"executionprovider.openvino\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.openvino\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.rocm\",\n      \"localized\": \"executionprovider.rocm\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.rocm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"expandable segments\",\n      \"localized\": \"segmentos expandibles\",\n      \"reload\": \"\",\n      \"hint\": \"segmentos expandibles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"exponential\",\n      \"localized\": \"exponencial\",\n      \"reload\": \"\",\n      \"hint\": \"exponencial\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"exposure\",\n      \"localized\": \"exposición\",\n      \"reload\": \"\",\n      \"hint\": \"exposición\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"extra noise multiplier for img2img\",\n      \"localized\": \"multiplicador de ruido extra para img2img\",\n      \"reload\": \"\",\n      \"hint\": \"multiplicador de ruido extra para img2img\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"extract lora\",\n      \"localized\": \"extraer lora\",\n      \"reload\": \"\",\n      \"hint\": \"extraer lora\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"face\",\n      \"localized\": \"rostro\",\n      \"reload\": \"\",\n      \"hint\": \"rostro\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"face confidence\",\n      \"localized\": \"confianza facial\",\n      \"reload\": \"\",\n      \"hint\": \"confianza facial\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"faceid model\",\n      \"localized\": \"modelo de faceid\",\n      \"reload\": \"\",\n      \"hint\": \"modelo de faceid\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fall-off exponent (lower=higher detail)\",\n      \"localized\": \"exponente de atenuación (menor=mayor detalle)\",\n      \"reload\": \"\",\n      \"hint\": \"exponente de atenuación (menor=mayor detalle)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"false\",\n      \"localized\": \"falso\",\n      \"reload\": \"\",\n      \"hint\": \"falso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fast\",\n      \"localized\": \"rápido\",\n      \"reload\": \"\",\n      \"hint\": \"rápido\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"file or folder with user-defined styles\",\n      \"localized\": \"archivo o carpeta con estilos definidos por el usuario\",\n      \"reload\": \"\",\n      \"hint\": \"archivo o carpeta con estilos definidos por el usuario\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"filename\",\n      \"localized\": \"nombre de archivo\",\n      \"reload\": \"\",\n      \"hint\": \"nombre de archivo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"first-block cache enabled\",\n      \"localized\": \"caché de primer bloque habilitado\",\n      \"reload\": \"\",\n      \"hint\": \"caché de primer bloque habilitado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fixed unet precision\",\n      \"localized\": \"precisión unet fija\",\n      \"reload\": \"\",\n      \"hint\": \"precisión unet fija\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flash attention\",\n      \"localized\": \"atención flash\",\n      \"reload\": \"\",\n      \"hint\": \"atención flash\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flavors\",\n      \"localized\": \"sabores\",\n      \"reload\": \"\",\n      \"hint\": \"sabores\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flow shift\",\n      \"localized\": \"desplazamiento de flujo\",\n      \"reload\": \"\",\n      \"hint\": \"desplazamiento de flujo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder\",\n      \"localized\": \"carpeta\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for control generate\",\n      \"localized\": \"carpeta para generar control\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta para generar control\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for control grids\",\n      \"localized\": \"carpeta para rejillas de control\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta para rejillas de control\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for disk offload\",\n      \"localized\": \"carpeta para descarga a disco\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta para descarga a disco\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for huggingface cache\",\n      \"localized\": \"carpeta para caché de huggingface\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta para caché de huggingface\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for image generate\",\n      \"localized\": \"carpeta para generar imagen\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta para generar imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for img2img grids\",\n      \"localized\": \"carpeta para rejillas de img2img\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta para rejillas de img2img\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for init images\",\n      \"localized\": \"carpeta para imágenes de inicio\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta para imágenes de inicio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for manually saved images\",\n      \"localized\": \"carpeta para imágenes guardadas manualmente\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta para imágenes guardadas manualmente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for onnx cached models\",\n      \"localized\": \"carpeta para modelos onnx en caché\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta para modelos onnx en caché\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for onnx conversion\",\n      \"localized\": \"carpeta para conversión onnx\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta para conversión onnx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for openvino cache\",\n      \"localized\": \"carpeta para caché de openvino\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta para caché de openvino\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for processed images\",\n      \"localized\": \"carpeta para imágenes procesadas\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta para imágenes procesadas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for text generate\",\n      \"localized\": \"carpeta para generar texto\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta para generar texto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for tunable ops cache\",\n      \"localized\": \"carpeta para caché de operaciones ajustables\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta para caché de operaciones ajustables\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for txt2img grids\",\n      \"localized\": \"carpeta para rejillas de txt2img\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta para rejillas de txt2img\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for videos\",\n      \"localized\": \"carpeta para videos\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta para videos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with bsrgan models\",\n      \"localized\": \"carpeta con modelos bsrgan\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta con modelos bsrgan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with chainner models\",\n      \"localized\": \"carpeta con modelos chainner\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta con modelos chainner\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with clip models\",\n      \"localized\": \"carpeta con modelos clip\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta con modelos clip\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with codeformer models\",\n      \"localized\": \"carpeta con modelos codeformer\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta con modelos codeformer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with control models\",\n      \"localized\": \"carpeta con modelos de control\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta con modelos de control\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with esrgan models\",\n      \"localized\": \"carpeta con modelos esrgan\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta con modelos esrgan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with gfpgan models\",\n      \"localized\": \"carpeta con modelos gfpgan\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta con modelos gfpgan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with huggingface models\",\n      \"localized\": \"carpeta con modelos huggingface\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta con modelos huggingface\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with hypernetwork models\",\n      \"localized\": \"carpeta con modelos de hiperred\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta con modelos de hiperred\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with ldsr models\",\n      \"localized\": \"carpeta con modelos ldsr\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta con modelos ldsr\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with lora network(s)\",\n      \"localized\": \"carpeta con red(es) lora\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta con red(es) lora\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with realesrgan models\",\n      \"localized\": \"carpeta con modelos realesrgan\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta con modelos realesrgan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with scunet models\",\n      \"localized\": \"carpeta con modelos scunet\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta con modelos scunet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with stable diffusion models\",\n      \"localized\": \"carpeta con modelos de stable diffusion\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta con modelos de stable diffusion\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with swinir models\",\n      \"localized\": \"carpeta con modelos swinir\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta con modelos swinir\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with text encoder files\",\n      \"localized\": \"carpeta con archivos de codificador de texto\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta con archivos de codificador de texto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with textual inversion embeddings\",\n      \"localized\": \"carpeta con incrustaciones de inversión textual\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta con incrustaciones de inversión textual\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with unet files\",\n      \"localized\": \"carpeta con archivos unet\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta con archivos unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with user-defined wildcards\",\n      \"localized\": \"carpeta con comodines definidos por el usuario\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta con comodines definidos por el usuario\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with vae files\",\n      \"localized\": \"carpeta con archivos vae\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta con archivos vae\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with yolo models\",\n      \"localized\": \"carpeta con modelos yolo\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta con modelos yolo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font color\",\n      \"localized\": \"color de fuente\",\n      \"reload\": \"\",\n      \"hint\": \"color de fuente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font file\",\n      \"localized\": \"archivo de fuente\",\n      \"reload\": \"\",\n      \"hint\": \"archivo de fuente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font size\",\n      \"localized\": \"tamaño de fuente\",\n      \"reload\": \"\",\n      \"hint\": \"tamaño de fuente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"force model eval\",\n      \"localized\": \"forzar evaluación de modelo\",\n      \"reload\": \"\",\n      \"hint\": \"forzar evaluación de modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"foreground threshold\",\n      \"localized\": \"umbral de primer plano\",\n      \"reload\": \"\",\n      \"hint\": \"umbral de primer plano\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fp4\",\n      \"localized\": \"fp4\",\n      \"reload\": \"\",\n      \"hint\": \"fp4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"frame change sensitivity\",\n      \"localized\": \"sensibilidad al cambio de fotograma\",\n      \"reload\": \"\",\n      \"hint\": \"sensibilidad al cambio de fotograma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"frames\",\n      \"localized\": \"fotogramas\",\n      \"reload\": \"\",\n      \"hint\": \"fotogramas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeinit\",\n      \"localized\": \"freeinit\",\n      \"reload\": \"\",\n      \"hint\": \"freeinit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeu enabled\",\n      \"localized\": \"freeu habilitado\",\n      \"reload\": \"\",\n      \"hint\": \"freeu habilitado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeu preset\",\n      \"localized\": \"ajuste preestablecido de freeu\",\n      \"reload\": \"\",\n      \"hint\": \"ajuste preestablecido de freeu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"full vae\",\n      \"localized\": \"vae completo\",\n      \"reload\": \"\",\n      \"hint\": \"vae completo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"full-depth cudnn benchmark\",\n      \"localized\": \"benchmark cudnn de profundidad completa\",\n      \"reload\": \"\",\n      \"hint\": \"benchmark cudnn de profundidad completa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fuse strength\",\n      \"localized\": \"fuerza de fusión\",\n      \"reload\": \"\",\n      \"hint\": \"fuerza de fusión\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fused projections\",\n      \"localized\": \"proyecciones fusionadas\",\n      \"reload\": \"\",\n      \"hint\": \"proyecciones fusionadas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gamma\",\n      \"localized\": \"gamma\",\n      \"reload\": \"\",\n      \"hint\": \"gamma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gamma corrected\",\n      \"localized\": \"corregido por gamma\",\n      \"reload\": \"\",\n      \"hint\": \"corregido por gamma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gate step\",\n      \"localized\": \"paso de puerta\",\n      \"reload\": \"\",\n      \"hint\": \"paso de puerta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gc threshold\",\n      \"localized\": \"umbral de gc\",\n      \"reload\": \"\",\n      \"hint\": \"umbral de gc\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"get changelog\",\n      \"localized\": \"obtener registro de cambios\",\n      \"reload\": \"\",\n      \"hint\": \"obtener registro de cambios\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gpu\",\n      \"localized\": \"gpu\",\n      \"reload\": \"\",\n      \"hint\": \"gpu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gradient\",\n      \"localized\": \"gradiente\",\n      \"reload\": \"\",\n      \"hint\": \"gradiente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid background color\",\n      \"localized\": \"color de fondo de la rejilla\",\n      \"reload\": \"\",\n      \"hint\": \"color de fondo de la rejilla\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid margins\",\n      \"localized\": \"márgenes de la rejilla\",\n      \"reload\": \"\",\n      \"hint\": \"márgenes de la rejilla\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid sections:\",\n      \"localized\": \"secciones de la rejilla:\",\n      \"reload\": \"\",\n      \"hint\": \"secciones de la rejilla:\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"group size\",\n      \"localized\": \"tamaño de grupo\",\n      \"reload\": \"\",\n      \"hint\": \"tamaño de grupo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance\",\n      \"localized\": \"guía\",\n      \"reload\": \"\",\n      \"hint\": \"guía\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance start\",\n      \"localized\": \"inicio de guía\",\n      \"reload\": \"\",\n      \"hint\": \"inicio de guía\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance stop\",\n      \"localized\": \"fin de guía\",\n      \"reload\": \"\",\n      \"hint\": \"fin de guía\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance strength\",\n      \"localized\": \"intensidad de guía\",\n      \"reload\": \"\",\n      \"hint\": \"intensidad de guía\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hands\",\n      \"localized\": \"manos\",\n      \"reload\": \"\",\n      \"hint\": \"manos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hdr range\",\n      \"localized\": \"rango hdr\",\n      \"reload\": \"\",\n      \"hint\": \"rango hdr\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hed\",\n      \"localized\": \"hed\",\n      \"reload\": \"\",\n      \"hint\": \"hed\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height  after\",\n      \"localized\": \"altura después\",\n      \"reload\": \"\",\n      \"hint\": \"altura después\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height  before\",\n      \"localized\": \"altura antes\",\n      \"reload\": \"\",\n      \"hint\": \"altura antes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height  mask\",\n      \"localized\": \"máscara de altura\",\n      \"reload\": \"\",\n      \"hint\": \"máscara de altura\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"heun\",\n      \"localized\": \"heun\",\n      \"reload\": \"\",\n      \"hint\": \"heun\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"heun flowmatch\",\n      \"localized\": \"coincidencia de flujo heun\",\n      \"reload\": \"\",\n      \"hint\": \"coincidencia de flujo heun\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hidet\",\n      \"localized\": \"hidet\",\n      \"reload\": \"\",\n      \"hint\": \"hidet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"high threshold\",\n      \"localized\": \"umbral alto\",\n      \"reload\": \"\",\n      \"hint\": \"umbral alto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hires pass only\",\n      \"localized\": \"solo pase de alta resolución\",\n      \"reload\": \"\",\n      \"hint\": \"solo pase de alta resolución\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hq init latents\",\n      \"localized\": \"latentes de inicio de alta calidad\",\n      \"reload\": \"\",\n      \"hint\": \"latentes de inicio de alta calidad\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hue\",\n      \"localized\": \"matiz\",\n      \"reload\": \"\",\n      \"hint\": \"matiz\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"huggingface mirror\",\n      \"localized\": \"espejo de huggingface\",\n      \"reload\": \"\",\n      \"hint\": \"espejo de huggingface\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"huggingface token\",\n      \"localized\": \"token de huggingface\",\n      \"reload\": \"\",\n      \"hint\": \"token de huggingface\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hunyuan\",\n      \"localized\": \"hunyuan\",\n      \"reload\": \"\",\n      \"hint\": \"hunyuan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"il\",\n      \"localized\": \"il\",\n      \"reload\": \"\",\n      \"hint\": \"il\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image height\",\n      \"localized\": \"altura de la imagen\",\n      \"reload\": \"\",\n      \"hint\": \"altura de la imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image quality\",\n      \"localized\": \"calidad de la imagen\",\n      \"reload\": \"\",\n      \"hint\": \"calidad de la imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image transparent color fill\",\n      \"localized\": \"relleno de color transparente de la imagen\",\n      \"reload\": \"\",\n      \"hint\": \"relleno de color transparente de la imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image watermark file\",\n      \"localized\": \"archivo de marca de agua de imagen\",\n      \"reload\": \"\",\n      \"hint\": \"archivo de marca de agua de imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image watermark position\",\n      \"localized\": \"posición de la marca de agua de imagen\",\n      \"reload\": \"\",\n      \"hint\": \"posición de la marca de agua de imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image width\",\n      \"localized\": \"ancho de la imagen\",\n      \"reload\": \"\",\n      \"hint\": \"ancho de la imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include images\",\n      \"localized\": \"incluir imágenes\",\n      \"reload\": \"\",\n      \"hint\": \"incluir imágenes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include main grid\",\n      \"localized\": \"incluir cuadrícula principal\",\n      \"reload\": \"\",\n      \"hint\": \"incluir cuadrícula principal\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include mask in outputs\",\n      \"localized\": \"incluir máscara en las salidas\",\n      \"reload\": \"\",\n      \"hint\": \"incluir máscara en las salidas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include original image\",\n      \"localized\": \"incluir imagen original\",\n      \"reload\": \"\",\n      \"hint\": \"incluir imagen original\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include scores in results when available\",\n      \"localized\": \"incluir puntuaciones en los resultados cuando estén disponibles\",\n      \"reload\": \"\",\n      \"hint\": \"incluir puntuaciones en los resultados cuando estén disponibles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include sub grids\",\n      \"localized\": \"incluir subcuadrículas\",\n      \"reload\": \"\",\n      \"hint\": \"incluir subcuadrículas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inductor\",\n      \"localized\": \"inductor\",\n      \"reload\": \"\",\n      \"hint\": \"inductor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"info\",\n      \"localized\": \"información\",\n      \"reload\": \"\",\n      \"hint\": \"información\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"info object\",\n      \"localized\": \"objeto de información\",\n      \"reload\": \"\",\n      \"hint\": \"objeto de información\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpaint\",\n      \"localized\": \"inpintar\",\n      \"reload\": \"\",\n      \"hint\": \"inpintar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpaint masked only\",\n      \"localized\": \"inpintar solo enmascarado\",\n      \"reload\": \"\",\n      \"hint\": \"inpintar solo enmascarado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpainting include greyscale mask in results\",\n      \"localized\": \"inpainting incluir máscara de escala de grises en los resultados\",\n      \"reload\": \"\",\n      \"hint\": \"inpainting incluir máscara de escala de grises en los resultados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpainting include masked composite in results\",\n      \"localized\": \"inpainting incluir compuesto enmascarado en los resultados\",\n      \"reload\": \"\",\n      \"hint\": \"inpainting incluir compuesto enmascarado en los resultados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"input model\",\n      \"localized\": \"modelo de entrada\",\n      \"reload\": \"\",\n      \"hint\": \"modelo de entrada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"intermediates\",\n      \"localized\": \"intermedios\",\n      \"reload\": \"\",\n      \"hint\": \"intermedios\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"interpolate frames\",\n      \"localized\": \"interpolar fotogramas\",\n      \"reload\": \"\",\n      \"hint\": \"interpolar fotogramas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"interpolation method\",\n      \"localized\": \"método de interpolación\",\n      \"reload\": \"\",\n      \"hint\": \"método de interpolación\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invert\",\n      \"localized\": \"invertir\",\n      \"reload\": \"\",\n      \"hint\": \"invertir\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invert mask\",\n      \"localized\": \"invertir máscara\",\n      \"reload\": \"\",\n      \"hint\": \"invertir máscara\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iou\",\n      \"localized\": \"iou\",\n      \"reload\": \"\",\n      \"hint\": \"iou\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ipex\",\n      \"localized\": \"ipex\",\n      \"reload\": \"\",\n      \"hint\": \"ipex\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ipndm\",\n      \"localized\": \"ipndm\",\n      \"reload\": \"\",\n      \"hint\": \"ipndm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"item edge blur\",\n      \"localized\": \"desenfoque de borde de elemento\",\n      \"reload\": \"\",\n      \"hint\": \"desenfoque de borde de elemento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"item padding\",\n      \"localized\": \"relleno de elemento\",\n      \"reload\": \"\",\n      \"hint\": \"relleno de elemento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iterate seed per line\",\n      \"localized\": \"iterar semilla por línea\",\n      \"reload\": \"\",\n      \"hint\": \"iterar semilla por línea\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iterations\",\n      \"localized\": \"iteraciones\",\n      \"reload\": \"\",\n      \"hint\": \"iteraciones\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"karras\",\n      \"localized\": \"karras\",\n      \"reload\": \"\",\n      \"hint\": \"karras\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"kdpm2\",\n      \"localized\": \"kdpm2\",\n      \"reload\": \"\",\n      \"hint\": \"kdpm2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"kdpm2 a\",\n      \"localized\": \"kdpm2 a\",\n      \"reload\": \"\",\n      \"hint\": \"kdpm2 a\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"keep incomplete images\",\n      \"localized\": \"mantener imágenes incompletas\",\n      \"reload\": \"\",\n      \"hint\": \"mantener imágenes incompletas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"large\",\n      \"localized\": \"grande\",\n      \"reload\": \"\",\n      \"hint\": \"grande\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"latent history size\",\n      \"localized\": \"tamaño del historial latente\",\n      \"reload\": \"\",\n      \"hint\": \"tamaño del historial latente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"latent mode\",\n      \"localized\": \"modo latente\",\n      \"reload\": \"\",\n      \"hint\": \"modo latente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layer scales\",\n      \"localized\": \"escalas de capa\",\n      \"reload\": \"\",\n      \"hint\": \"escalas de capa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layerwise casting storage\",\n      \"localized\": \"almacenamiento de casting por capas\",\n      \"reload\": \"\",\n      \"hint\": \"almacenamiento de casting por capas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layerwise non-blocking operations\",\n      \"localized\": \"operaciones no bloqueantes por capas\",\n      \"reload\": \"\",\n      \"hint\": \"operaciones no bloqueantes por capas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lcm\",\n      \"localized\": \"lcm\",\n      \"reload\": \"\",\n      \"hint\": \"lcm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ldsr processing steps\",\n      \"localized\": \"pasos de procesamiento ldsr\",\n      \"reload\": \"\",\n      \"hint\": \"pasos de procesamiento ldsr\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"left\",\n      \"localized\": \"izquierda\",\n      \"reload\": \"\",\n      \"hint\": \"izquierda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"legend\",\n      \"localized\": \"leyenda\",\n      \"reload\": \"\",\n      \"hint\": \"leyenda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"length\",\n      \"localized\": \"longitud\",\n      \"reload\": \"\",\n      \"hint\": \"longitud\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"leres depth\",\n      \"localized\": \"profundidad leres\",\n      \"reload\": \"\",\n      \"hint\": \"profundidad leres\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"level\",\n      \"localized\": \"nivel\",\n      \"reload\": \"\",\n      \"hint\": \"nivel\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"libs\",\n      \"localized\": \"libs\",\n      \"reload\": \"\",\n      \"hint\": \"libs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"light\",\n      \"localized\": \"luz\",\n      \"reload\": \"\",\n      \"hint\": \"luz\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lineart\",\n      \"localized\": \"arte lineal\",\n      \"reload\": \"\",\n      \"hint\": \"arte lineal\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"list\",\n      \"localized\": \"lista\",\n      \"reload\": \"\",\n      \"hint\": \"lista\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"list model details\",\n      \"localized\": \"detalles del modelo de lista\",\n      \"reload\": \"\",\n      \"hint\": \"detalles del modelo de lista\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lite\",\n      \"localized\": \"lite\",\n      \"reload\": \"\",\n      \"hint\": \"lite\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"live update\",\n      \"localized\": \"actualización en vivo\",\n      \"reload\": \"\",\n      \"hint\": \"actualización en vivo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lmsd\",\n      \"localized\": \"lmsd\",\n      \"reload\": \"\",\n      \"hint\": \"lmsd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"load custom diffusers pipeline\",\n      \"localized\": \"cargar pipeline de diffusers personalizado\",\n      \"reload\": \"\",\n      \"hint\": \"cargar pipeline de diffusers personalizado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"load model directly to gpu\",\n      \"localized\": \"cargar modelo directamente a la gpu\",\n      \"reload\": \"\",\n      \"hint\": \"cargar modelo directamente a la gpu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"loaded lora\",\n      \"localized\": \"lora cargado\",\n      \"reload\": \"\",\n      \"hint\": \"lora cargado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"logsnr\",\n      \"localized\": \"logsnr\",\n      \"reload\": \"\",\n      \"hint\": \"logsnr\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"loop\",\n      \"localized\": \"bucle\",\n      \"reload\": \"\",\n      \"hint\": \"bucle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora add hash info to metadata\",\n      \"localized\": \"lora añadir información de hash a los metadatos\",\n      \"reload\": \"\",\n      \"hint\": \"lora añadir información de hash a los metadatos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora auto-apply tags\",\n      \"localized\": \"lora aplicar etiquetas automáticamente\",\n      \"reload\": \"\",\n      \"hint\": \"lora aplicar etiquetas automáticamente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora load using diffusers method for selected models\",\n      \"localized\": \"lora cargar usando el método diffusers para modelos seleccionados\",\n      \"reload\": \"\",\n      \"hint\": \"lora cargar usando el método diffusers para modelos seleccionados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora load using legacy method\",\n      \"localized\": \"lora cargar usando el método heredado\",\n      \"reload\": \"\",\n      \"hint\": \"lora cargar usando el método heredado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora target filename\",\n      \"localized\": \"nombre de archivo de destino lora\",\n      \"reload\": \"\",\n      \"hint\": \"nombre de archivo de destino lora\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"low order\",\n      \"localized\": \"orden bajo\",\n      \"reload\": \"\",\n      \"hint\": \"orden bajo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"low threshold\",\n      \"localized\": \"umbral bajo\",\n      \"reload\": \"\",\n      \"hint\": \"umbral bajo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ltx model\",\n      \"localized\": \"modelo ltx\",\n      \"reload\": \"\",\n      \"hint\": \"modelo ltx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lumina: use mask in transformers\",\n      \"localized\": \"lumina: usar máscara en transformadores\",\n      \"reload\": \"\",\n      \"hint\": \"lumina: usar máscara en transformadores\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"manual block merge\",\n      \"localized\": \"fusión manual de bloques\",\n      \"reload\": \"\",\n      \"hint\": \"fusión manual de bloques\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"marigold depth\",\n      \"localized\": \"profundidad marigold\",\n      \"reload\": \"\",\n      \"hint\": \"profundidad marigold\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask dropout\",\n      \"localized\": \"abandono de máscara\",\n      \"reload\": \"\",\n      \"hint\": \"abandono de máscara\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask invert\",\n      \"localized\": \"inversión de máscara\",\n      \"reload\": \"\",\n      \"hint\": \"inversión de máscara\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask only\",\n      \"localized\": \"solo máscara\",\n      \"reload\": \"\",\n      \"hint\": \"solo máscara\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask strength\",\n      \"localized\": \"intensidad de la máscara\",\n      \"reload\": \"\",\n      \"hint\": \"intensidad de la máscara\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"masked\",\n      \"localized\": \"enmascarado\",\n      \"reload\": \"\",\n      \"hint\": \"enmascarado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"math attention\",\n      \"localized\": \"atención matemática\",\n      \"reload\": \"\",\n      \"hint\": \"atención matemática\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max faces\",\n      \"localized\": \"caras máximas\",\n      \"reload\": \"\",\n      \"hint\": \"caras máximas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max flavors\",\n      \"localized\": \"sabores máximos\",\n      \"reload\": \"\",\n      \"hint\": \"sabores máximos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max guidance\",\n      \"localized\": \"guía máxima\",\n      \"reload\": \"\",\n      \"hint\": \"guía máxima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max length\",\n      \"localized\": \"longitud máxima\",\n      \"reload\": \"\",\n      \"hint\": \"longitud máxima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max object size\",\n      \"localized\": \"tamaño máximo de objeto\",\n      \"reload\": \"\",\n      \"hint\": \"tamaño máximo de objeto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max range\",\n      \"localized\": \"rango máximo\",\n      \"reload\": \"\",\n      \"hint\": \"rango máximo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max tokens\",\n      \"localized\": \"tokens máximos\",\n      \"reload\": \"\",\n      \"hint\": \"tokens máximos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max words\",\n      \"localized\": \"palabras máximas\",\n      \"reload\": \"\",\n      \"hint\": \"palabras máximas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max-autotune\",\n      \"localized\": \"ajuste automático máximo\",\n      \"reload\": \"\",\n      \"hint\": \"ajuste automático máximo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max-autotune-no-cudagraphs\",\n      \"localized\": \"ajuste automático máximo sin cudagraphs\",\n      \"reload\": \"\",\n      \"hint\": \"ajuste automático máximo sin cudagraphs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum image size (mp)\",\n      \"localized\": \"tamaño máximo de imagen (mp)\",\n      \"reload\": \"\",\n      \"hint\": \"tamaño máximo de imagen (mp)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum number of units\",\n      \"localized\": \"número máximo de unidades\",\n      \"reload\": \"\",\n      \"hint\": \"número máximo de unidades\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum rank\",\n      \"localized\": \"rango máximo\",\n      \"reload\": \"\",\n      \"hint\": \"rango máximo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mediapipe face\",\n      \"localized\": \"cara de mediapipe\",\n      \"reload\": \"\",\n      \"hint\": \"cara de mediapipe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"medium\",\n      \"localized\": \"medio\",\n      \"reload\": \"\",\n      \"hint\": \"medio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mediums\",\n      \"localized\": \"medios\",\n      \"reload\": \"\",\n      \"hint\": \"medios\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory\",\n      \"localized\": \"memoria\",\n      \"reload\": \"\",\n      \"hint\": \"memoria\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory attention\",\n      \"localized\": \"atención de memoria\",\n      \"reload\": \"\",\n      \"hint\": \"atención de memoria\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory limit\",\n      \"localized\": \"límite de memoria\",\n      \"reload\": \"\",\n      \"hint\": \"límite de memoria\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory optimization\",\n      \"localized\": \"optimización de memoria\",\n      \"reload\": \"\",\n      \"hint\": \"optimización de memoria\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"merge alpha\",\n      \"localized\": \"fusionar alfa\",\n      \"reload\": \"\",\n      \"hint\": \"fusionar alfa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method\",\n      \"localized\": \"método\",\n      \"reload\": \"\",\n      \"hint\": \"método\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method after\",\n      \"localized\": \"método después\",\n      \"reload\": \"\",\n      \"hint\": \"método después\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method before\",\n      \"localized\": \"método antes\",\n      \"reload\": \"\",\n      \"hint\": \"método antes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method mask\",\n      \"localized\": \"máscara de método\",\n      \"reload\": \"\",\n      \"hint\": \"máscara de método\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"midas depth\",\n      \"localized\": \"profundidad midas\",\n      \"reload\": \"\",\n      \"hint\": \"profundidad midas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"migraphx\",\n      \"localized\": \"migraphx\",\n      \"reload\": \"\",\n      \"hint\": \"migraphx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min flavors\",\n      \"localized\": \"sabores mínimos\",\n      \"reload\": \"\",\n      \"hint\": \"sabores mínimos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min guidance\",\n      \"localized\": \"guía mínima\",\n      \"reload\": \"\",\n      \"hint\": \"guía mínima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min length\",\n      \"localized\": \"longitud mínima\",\n      \"reload\": \"\",\n      \"hint\": \"longitud mínima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min object size\",\n      \"localized\": \"tamaño mínimo de objeto\",\n      \"reload\": \"\",\n      \"hint\": \"tamaño mínimo de objeto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mine\",\n      \"localized\": \"mina\",\n      \"reload\": \"\",\n      \"hint\": \"mina\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mlsd\",\n      \"localized\": \"mlsd\",\n      \"reload\": \"\",\n      \"hint\": \"mlsd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mm\",\n      \"localized\": \"mm\",\n      \"reload\": \"\",\n      \"hint\": \"mm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode\",\n      \"localized\": \"modo\",\n      \"reload\": \"\",\n      \"hint\": \"modo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode after\",\n      \"localized\": \"modo después\",\n      \"reload\": \"\",\n      \"hint\": \"modo después\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode before\",\n      \"localized\": \"modo antes\",\n      \"reload\": \"\",\n      \"hint\": \"modo antes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode mask\",\n      \"localized\": \"máscara de modo\",\n      \"reload\": \"\",\n      \"hint\": \"máscara de modo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode x-axis\",\n      \"localized\": \"modo eje x\",\n      \"reload\": \"\",\n      \"hint\": \"modo eje x\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode y-axis\",\n      \"localized\": \"modo eje y\",\n      \"reload\": \"\",\n      \"hint\": \"modo eje y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model auto-download on demand\",\n      \"localized\": \"descarga automática de modelos bajo demanda\",\n      \"reload\": \"\",\n      \"hint\": \"descarga automática de modelos bajo demanda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model autoload on start\",\n      \"localized\": \"carga automática de modelo al inicio\",\n      \"reload\": \"\",\n      \"hint\": \"carga automática de modelo al inicio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model compile fullgraph\",\n      \"localized\": \"compilar modelo (gráfico completo)\",\n      \"reload\": \"\",\n      \"hint\": \"compilar modelo (gráfico completo)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model compile suppress errors\",\n      \"localized\": \"compilar modelo (suprimir errores)\",\n      \"reload\": \"\",\n      \"hint\": \"compilar modelo (suprimir errores)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model compile verbose mode\",\n      \"localized\": \"compilar modelo (modo detallado)\",\n      \"reload\": \"\",\n      \"hint\": \"compilar modelo (modo detallado)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model info\",\n      \"localized\": \"información del modelo\",\n      \"reload\": \"\",\n      \"hint\": \"información del modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model metadata\",\n      \"localized\": \"metadatos del modelo\",\n      \"reload\": \"\",\n      \"hint\": \"metadatos del modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model name\",\n      \"localized\": \"nombre del modelo\",\n      \"reload\": \"\",\n      \"hint\": \"nombre del modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model precision\",\n      \"localized\": \"precisión del modelo\",\n      \"reload\": \"\",\n      \"hint\": \"precisión del modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model type\",\n      \"localized\": \"tipo de modelo\",\n      \"reload\": \"\",\n      \"hint\": \"tipo de modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model url\",\n      \"localized\": \"url del modelo\",\n      \"reload\": \"\",\n      \"hint\": \"url del modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"modern\",\n      \"localized\": \"moderno\",\n      \"reload\": \"\",\n      \"hint\": \"moderno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"momentum\",\n      \"localized\": \"momento\",\n      \"reload\": \"\",\n      \"hint\": \"momento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"motion level\",\n      \"localized\": \"nivel de movimiento\",\n      \"reload\": \"\",\n      \"hint\": \"nivel de movimiento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mount url subpath\",\n      \"localized\": \"montar subruta url\",\n      \"reload\": \"\",\n      \"hint\": \"montar subruta url\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move base model to cpu when using refiner\",\n      \"localized\": \"mover modelo base a cpu al usar refinador\",\n      \"reload\": \"\",\n      \"hint\": \"mover modelo base a cpu al usar refinador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move base model to cpu when using vae\",\n      \"localized\": \"mover modelo base a cpu al usar vae\",\n      \"reload\": \"\",\n      \"hint\": \"mover modelo base a cpu al usar vae\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move detailer model to cpu when complete\",\n      \"localized\": \"mover modelo detallador a cpu al completar\",\n      \"reload\": \"\",\n      \"hint\": \"mover modelo detallador a cpu al completar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move refiner model to cpu when not in use\",\n      \"localized\": \"mover modelo refinador a cpu cuando no esté en uso\",\n      \"reload\": \"\",\n      \"hint\": \"mover modelo refinador a cpu cuando no esté en uso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"movements\",\n      \"localized\": \"movimientos\",\n      \"reload\": \"\",\n      \"hint\": \"movimientos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"multi decoder\",\n      \"localized\": \"multidecodificador\",\n      \"reload\": \"\",\n      \"hint\": \"multidecodificador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"multistep restore\",\n      \"localized\": \"restauración multipaso\",\n      \"reload\": \"\",\n      \"hint\": \"restauración multipaso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"native\",\n      \"localized\": \"nativo\",\n      \"reload\": \"\",\n      \"hint\": \"nativo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"near threshold\",\n      \"localized\": \"cerca del umbral\",\n      \"reload\": \"\",\n      \"hint\": \"cerca del umbral\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"negative\",\n      \"localized\": \"negativo\",\n      \"reload\": \"\",\n      \"hint\": \"negativo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"network negative prompt\",\n      \"localized\": \"prompt negativo de red\",\n      \"reload\": \"\",\n      \"hint\": \"prompt negativo de red\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"network parameters\",\n      \"localized\": \"parámetros de red\",\n      \"reload\": \"\",\n      \"hint\": \"parámetros de red\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"network prompt\",\n      \"localized\": \"prompt de red\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de red\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"new model name\",\n      \"localized\": \"nuevo nombre de modelo\",\n      \"reload\": \"\",\n      \"hint\": \"nuevo nombre de modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"nf4\",\n      \"localized\": \"nf4\",\n      \"reload\": \"\",\n      \"hint\": \"nf4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"nms\",\n      \"localized\": \"nms\",\n      \"reload\": \"\",\n      \"hint\": \"nms\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise\",\n      \"localized\": \"ruido\",\n      \"reload\": \"\",\n      \"hint\": \"ruido\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise multiplier (eta)\",\n      \"localized\": \"multiplicador de ruido (eta)\",\n      \"reload\": \"\",\n      \"hint\": \"multiplicador de ruido (eta)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise multiplier for image processing\",\n      \"localized\": \"multiplicador de ruido para procesamiento de imagen\",\n      \"reload\": \"\",\n      \"hint\": \"multiplicador de ruido para procesamiento de imagen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise seed delta (eta)\",\n      \"localized\": \"delta de semilla de ruido (eta)\",\n      \"reload\": \"\",\n      \"hint\": \"delta de semilla de ruido (eta)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise strength\",\n      \"localized\": \"fuerza del ruido\",\n      \"reload\": \"\",\n      \"hint\": \"fuerza del ruido\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"none\",\n      \"localized\": \"ninguno\",\n      \"reload\": \"\",\n      \"hint\": \"ninguno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"note\",\n      \"localized\": \"nota\",\n      \"reload\": \"\",\n      \"hint\": \"nota\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"nothing\",\n      \"localized\": \"nada\",\n      \"reload\": \"\",\n      \"hint\": \"nada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"num beams\",\n      \"localized\": \"número de haces\",\n      \"reload\": \"\",\n      \"hint\": \"número de haces\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"number\",\n      \"localized\": \"número\",\n      \"reload\": \"\",\n      \"hint\": \"número\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"numbered filenames\",\n      \"localized\": \"nombres de archivo numerados\",\n      \"reload\": \"\",\n      \"hint\": \"nombres de archivo numerados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"offload\",\n      \"localized\": \"descargar\",\n      \"reload\": \"\",\n      \"hint\": \"descargar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"offload face module\",\n      \"localized\": \"descargar módulo de cara\",\n      \"reload\": \"\",\n      \"hint\": \"descargar módulo de cara\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"offload models\",\n      \"localized\": \"descargar modelos\",\n      \"reload\": \"\",\n      \"hint\": \"descargar modelos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"olive-ai\",\n      \"localized\": \"olive-ai\",\n      \"reload\": \"\",\n      \"hint\": \"olive-ai\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"onediff\",\n      \"localized\": \"onediff\",\n      \"reload\": \"\",\n      \"hint\": \"onediff\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"onnx\",\n      \"localized\": \"onnx\",\n      \"reload\": \"\",\n      \"hint\": \"onnx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openbody\",\n      \"localized\": \"openbody\",\n      \"reload\": \"\",\n      \"hint\": \"openbody\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openclip\",\n      \"localized\": \"openclip\",\n      \"reload\": \"\",\n      \"hint\": \"openclip\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino disable memory cleanup after compile\",\n      \"localized\": \"openvino deshabilitar limpieza de memoria después de compilar\",\n      \"reload\": \"\",\n      \"hint\": \"openvino deshabilitar limpieza de memoria después de compilar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino disable model caching\",\n      \"localized\": \"openvino deshabilitar caché de modelo\",\n      \"reload\": \"\",\n      \"hint\": \"openvino deshabilitar caché de modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino mode\",\n      \"localized\": \"modo openvino\",\n      \"reload\": \"\",\n      \"hint\": \"modo openvino\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino_fx\",\n      \"localized\": \"openvino_fx\",\n      \"reload\": \"\",\n      \"hint\": \"openvino_fx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"optional image description\",\n      \"localized\": \"descripción de imagen opcional\",\n      \"reload\": \"\",\n      \"hint\": \"descripción de imagen opcional\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"optional init image or video\",\n      \"localized\": \"imagen o video de inicio opcional\",\n      \"reload\": \"\",\n      \"hint\": \"imagen o video de inicio opcional\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"order\",\n      \"localized\": \"orden\",\n      \"reload\": \"\",\n      \"hint\": \"orden\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ortho\",\n      \"localized\": \"orto\",\n      \"reload\": \"\",\n      \"hint\": \"orto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"outpaint\",\n      \"localized\": \"extrapintar\",\n      \"reload\": \"\",\n      \"hint\": \"extrapintar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"output model\",\n      \"localized\": \"modelo de salida\",\n      \"reload\": \"\",\n      \"hint\": \"modelo de salida\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override resolution\",\n      \"localized\": \"anular resolución\",\n      \"reload\": \"\",\n      \"hint\": \"anular resolución\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override sampler\",\n      \"localized\": \"anular muestreador\",\n      \"reload\": \"\",\n      \"hint\": \"anular muestreador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override scheduler\",\n      \"localized\": \"anular planificador\",\n      \"reload\": \"\",\n      \"hint\": \"anular planificador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override steps\",\n      \"localized\": \"anular pasos\",\n      \"reload\": \"\",\n      \"hint\": \"anular pasos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override t1 ratio\",\n      \"localized\": \"anular relación t1\",\n      \"reload\": \"\",\n      \"hint\": \"anular relación t1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override t2 ratio\",\n      \"localized\": \"anular relación t2\",\n      \"reload\": \"\",\n      \"hint\": \"anular relación t2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"overwrite existing file\",\n      \"localized\": \"sobrescribir archivo existente\",\n      \"reload\": \"\",\n      \"hint\": \"sobrescribir archivo existente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"overwrite model\",\n      \"localized\": \"sobrescribir modelo\",\n      \"reload\": \"\",\n      \"hint\": \"sobrescribir modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pad frames\",\n      \"localized\": \"rellenar fotogramas\",\n      \"reload\": \"\",\n      \"hint\": \"rellenar fotogramas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"padding\",\n      \"localized\": \"relleno\",\n      \"reload\": \"\",\n      \"hint\": \"relleno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"parallel process images in batch\",\n      \"localized\": \"procesar imágenes en paralelo en lote\",\n      \"reload\": \"\",\n      \"hint\": \"procesar imágenes en paralelo en lote\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"parameter free\",\n      \"localized\": \"sin parámetros\",\n      \"reload\": \"\",\n      \"hint\": \"sin parámetros\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"path to model file\",\n      \"localized\": \"ruta al archivo del modelo\",\n      \"reload\": \"\",\n      \"hint\": \"ruta al archivo del modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"path to notification sound\",\n      \"localized\": \"ruta al sonido de notificación\",\n      \"reload\": \"\",\n      \"hint\": \"ruta al sonido de notificación\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"peft\",\n      \"localized\": \"peft\",\n      \"reload\": \"\",\n      \"hint\": \"peft\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"penalty\",\n      \"localized\": \"penalización\",\n      \"reload\": \"\",\n      \"hint\": \"penalización\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perflow\",\n      \"localized\": \"perflow\",\n      \"reload\": \"\",\n      \"hint\": \"perflow\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perform injection\",\n      \"localized\": \"realizar inyección\",\n      \"reload\": \"\",\n      \"hint\": \"realizar inyección\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perform sdsa\",\n      \"localized\": \"realizar sdsa\",\n      \"reload\": \"\",\n      \"hint\": \"realizar sdsa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perform warmup\",\n      \"localized\": \"realizar calentamiento\",\n      \"reload\": \"\",\n      \"hint\": \"realizar calentamiento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"performance\",\n      \"localized\": \"rendimiento\",\n      \"reload\": \"\",\n      \"hint\": \"rendimiento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"photomaker model\",\n      \"localized\": \"modelo photomaker\",\n      \"reload\": \"\",\n      \"hint\": \"modelo photomaker\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pidinet\",\n      \"localized\": \"pidinet\",\n      \"reload\": \"\",\n      \"hint\": \"pidinet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pipeline\",\n      \"localized\": \"pipeline\",\n      \"reload\": \"\",\n      \"hint\": \"pipeline\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pixels to expand\",\n      \"localized\": \"píxeles a expandir\",\n      \"reload\": \"\",\n      \"hint\": \"píxeles a expandir\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"platform\",\n      \"localized\": \"plataforma\",\n      \"reload\": \"\",\n      \"hint\": \"plataforma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"play\",\n      \"localized\": \"reproducir\",\n      \"reload\": \"\",\n      \"hint\": \"reproducir\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"play a notification upon completion\",\n      \"localized\": \"reproducir una notificación al finalizar\",\n      \"reload\": \"\",\n      \"hint\": \"reproducir una notificación al finalizar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pndm\",\n      \"localized\": \"pndm\",\n      \"reload\": \"\",\n      \"hint\": \"pndm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"polyexponential\",\n      \"localized\": \"poli-exponencial\",\n      \"reload\": \"\",\n      \"hint\": \"poli-exponencial\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pony\",\n      \"localized\": \"pony\",\n      \"reload\": \"\",\n      \"hint\": \"pony\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pose confidence\",\n      \"localized\": \"confianza de pose\",\n      \"reload\": \"\",\n      \"hint\": \"confianza de pose\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"positive\",\n      \"localized\": \"positivo\",\n      \"reload\": \"\",\n      \"hint\": \"positivo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocess mask\",\n      \"localized\": \"máscara de postprocesamiento\",\n      \"reload\": \"\",\n      \"hint\": \"máscara de postprocesamiento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocess upscale\",\n      \"localized\": \"escalado de postprocesamiento\",\n      \"reload\": \"\",\n      \"hint\": \"escalado de postprocesamiento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocessing operation order\",\n      \"localized\": \"orden de operación de postprocesamiento\",\n      \"reload\": \"\",\n      \"hint\": \"orden de operación de postprocesamiento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"power\",\n      \"localized\": \"potencia\",\n      \"reload\": \"\",\n      \"hint\": \"potencia\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"predefined question\",\n      \"localized\": \"pregunta predefinida\",\n      \"reload\": \"\",\n      \"hint\": \"pregunta predefinida\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prediction method\",\n      \"localized\": \"método de predicción\",\n      \"reload\": \"\",\n      \"hint\": \"método de predicción\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preset\",\n      \"localized\": \"preajuste\",\n      \"reload\": \"\",\n      \"hint\": \"preajuste\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preset block merge\",\n      \"localized\": \"fusión de bloques preestablecidos\",\n      \"reload\": \"\",\n      \"hint\": \"fusión de bloques preestablecidos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview\",\n      \"localized\": \"vista previa\",\n      \"reload\": \"\",\n      \"hint\": \"vista previa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview end\",\n      \"localized\": \"fin de vista previa\",\n      \"reload\": \"\",\n      \"hint\": \"fin de vista previa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview start\",\n      \"localized\": \"inicio de vista previa\",\n      \"reload\": \"\",\n      \"hint\": \"inicio de vista previa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"primary model\",\n      \"localized\": \"modelo primario\",\n      \"reload\": \"\",\n      \"hint\": \"modelo primario\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor\",\n      \"localized\": \"procesador\",\n      \"reload\": \"\",\n      \"hint\": \"procesador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor move to cpu after use\",\n      \"localized\": \"mover procesador a cpu después de usar\",\n      \"reload\": \"\",\n      \"hint\": \"mover procesador a cpu después de usar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor settings\",\n      \"localized\": \"configuración del procesador\",\n      \"reload\": \"\",\n      \"hint\": \"configuración del procesador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor unload after use\",\n      \"localized\": \"descargar procesador después de usar\",\n      \"reload\": \"\",\n      \"hint\": \"descargar procesador después de usar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt attention normalization\",\n      \"localized\": \"normalización de atención del prompt\",\n      \"reload\": \"\",\n      \"hint\": \"normalización de atención del prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt ex\",\n      \"localized\": \"prompt ex\",\n      \"reload\": \"\",\n      \"hint\": \"prompt ex\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt processor\",\n      \"localized\": \"procesador de prompt\",\n      \"reload\": \"\",\n      \"hint\": \"procesador de prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt strength\",\n      \"localized\": \"intensidad del prompt\",\n      \"reload\": \"\",\n      \"hint\": \"intensidad del prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt thresholds:\",\n      \"localized\": \"umbrales de prompt:\",\n      \"reload\": \"\",\n      \"hint\": \"umbrales de prompt:\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompts\",\n      \"localized\": \"indicaciones\",\n      \"reload\": \"\",\n      \"hint\": \"indicaciones\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"provider\",\n      \"localized\": \"proveedor\",\n      \"reload\": \"\",\n      \"hint\": \"proveedor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prune\",\n      \"localized\": \"podar\",\n      \"reload\": \"\",\n      \"hint\": \"podar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quad\",\n      \"localized\": \"quad\",\n      \"reload\": \"\",\n      \"hint\": \"quad\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization activations type\",\n      \"localized\": \"tipo de activaciones de cuantización\",\n      \"reload\": \"\",\n      \"hint\": \"tipo de activaciones de cuantización\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization mode\",\n      \"localized\": \"modo de cuantización\",\n      \"reload\": \"\",\n      \"hint\": \"modo de cuantización\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization type\",\n      \"localized\": \"tipo de cuantización\",\n      \"reload\": \"\",\n      \"hint\": \"tipo de cuantización\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization weights type\",\n      \"localized\": \"tipo de pesos de cuantización\",\n      \"reload\": \"\",\n      \"hint\": \"tipo de pesos de cuantización\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"random seeds\",\n      \"localized\": \"semillas aleatorias\",\n      \"reload\": \"\",\n      \"hint\": \"semillas aleatorias\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"range\",\n      \"localized\": \"rango\",\n      \"reload\": \"\",\n      \"hint\": \"rango\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rebase\",\n      \"localized\": \"rebase\",\n      \"reload\": \"\",\n      \"hint\": \"rebase\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"recursive\",\n      \"localized\": \"recursivo\",\n      \"reload\": \"\",\n      \"hint\": \"recursivo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reduce-overhead\",\n      \"localized\": \"reducir sobrecarga\",\n      \"reload\": \"\",\n      \"hint\": \"reducir sobrecarga\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"redux prompt strength\",\n      \"localized\": \"fuerza de prompt redux\",\n      \"reload\": \"\",\n      \"hint\": \"fuerza de prompt redux\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference adain weight\",\n      \"localized\": \"peso adain de referencia\",\n      \"reload\": \"\",\n      \"hint\": \"peso adain de referencia\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference query weight\",\n      \"localized\": \"peso de consulta de referencia\",\n      \"reload\": \"\",\n      \"hint\": \"peso de consulta de referencia\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference unit 1\",\n      \"localized\": \"unidad de referencia 1\",\n      \"reload\": \"\",\n      \"hint\": \"unidad de referencia 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refine foreground\",\n      \"localized\": \"refinar primer plano\",\n      \"reload\": \"\",\n      \"hint\": \"refinar primer plano\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh bench\",\n      \"localized\": \"actualizar benchmark\",\n      \"reload\": \"\",\n      \"hint\": \"actualizar benchmark\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh data\",\n      \"localized\": \"actualizar datos\",\n      \"reload\": \"\",\n      \"hint\": \"actualizar datos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh state\",\n      \"localized\": \"actualizar estado\",\n      \"reload\": \"\",\n      \"hint\": \"actualizar estado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh ui values\",\n      \"localized\": \"actualizar valores de interfaz de usuario\",\n      \"reload\": \"\",\n      \"hint\": \"actualizar valores de interfaz de usuario\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reinstall\",\n      \"localized\": \"reinstalar\",\n      \"reload\": \"\",\n      \"hint\": \"reinstalar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"remove background\",\n      \"localized\": \"eliminar fondo\",\n      \"reload\": \"\",\n      \"hint\": \"eliminar fondo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repeat x-axis\",\n      \"localized\": \"repetir eje x\",\n      \"reload\": \"\",\n      \"hint\": \"repetir eje x\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repeat y-axis\",\n      \"localized\": \"repetir eje y\",\n      \"reload\": \"\",\n      \"hint\": \"repetir eje y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"replace vae\",\n      \"localized\": \"reemplazar vae\",\n      \"reload\": \"\",\n      \"hint\": \"reemplazar vae\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repos\",\n      \"localized\": \"repositorios\",\n      \"reload\": \"\",\n      \"hint\": \"repositorios\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess decode\",\n      \"localized\": \"reprocesar decodificación\",\n      \"reload\": \"\",\n      \"hint\": \"reprocesar decodificación\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess face\",\n      \"localized\": \"reprocesar cara\",\n      \"reload\": \"\",\n      \"hint\": \"reprocesar cara\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess refine\",\n      \"localized\": \"reprocesar refinamiento\",\n      \"reload\": \"\",\n      \"hint\": \"reprocesar refinamiento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"request browser notifications\",\n      \"localized\": \"solicitar notificaciones del navegador\",\n      \"reload\": \"\",\n      \"hint\": \"solicitar notificaciones del navegador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rescale\",\n      \"localized\": \"reescalar\",\n      \"reload\": \"\",\n      \"hint\": \"reescalar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rescale betas with zero terminal snr\",\n      \"localized\": \"reescalar betas con snr terminal cero\",\n      \"reload\": \"\",\n      \"hint\": \"reescalar betas con snr terminal cero\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reset anchors\",\n      \"localized\": \"restablecer anclajes\",\n      \"reload\": \"\",\n      \"hint\": \"restablecer anclajes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"residual diff threshold\",\n      \"localized\": \"umbral de diferencia residual\",\n      \"reload\": \"\",\n      \"hint\": \"umbral de diferencia residual\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize background color\",\n      \"localized\": \"redimensionar color de fondo\",\n      \"reload\": \"\",\n      \"hint\": \"redimensionar color de fondo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize method\",\n      \"localized\": \"método de redimensionamiento\",\n      \"reload\": \"\",\n      \"hint\": \"método de redimensionamiento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize mode\",\n      \"localized\": \"modo de redimensionamiento\",\n      \"reload\": \"\",\n      \"hint\": \"modo de redimensionamiento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize scale\",\n      \"localized\": \"escala de redimensionamiento\",\n      \"reload\": \"\",\n      \"hint\": \"escala de redimensionamiento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restart step\",\n      \"localized\": \"reiniciar paso\",\n      \"reload\": \"\",\n      \"hint\": \"reiniciar paso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore faces: codeformer\",\n      \"localized\": \"restaurar caras: codeformer\",\n      \"reload\": \"\",\n      \"hint\": \"restaurar caras: codeformer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore faces: gfpgan\",\n      \"localized\": \"restaurar caras: gfpgan\",\n      \"reload\": \"\",\n      \"hint\": \"restaurar caras: gfpgan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore pipe on end\",\n      \"localized\": \"restaurar pipeline al finalizar\",\n      \"reload\": \"\",\n      \"hint\": \"restaurar pipeline al finalizar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore unparsed prompt\",\n      \"localized\": \"restaurar prompt no parseado\",\n      \"reload\": \"\",\n      \"hint\": \"restaurar prompt no parseado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reswapper model\",\n      \"localized\": \"modelo reswapper\",\n      \"reload\": \"\",\n      \"hint\": \"modelo reswapper\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"return original images\",\n      \"localized\": \"devolver imágenes originales\",\n      \"reload\": \"\",\n      \"hint\": \"devolver imágenes originales\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"right\",\n      \"localized\": \"derecha\",\n      \"reload\": \"\",\n      \"hint\": \"derecha\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"root model folder\",\n      \"localized\": \"carpeta del modelo raíz\",\n      \"reload\": \"\",\n      \"hint\": \"carpeta del modelo raíz\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rows\",\n      \"localized\": \"filas\",\n      \"reload\": \"\",\n      \"hint\": \"filas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"run\",\n      \"localized\": \"ejecutar\",\n      \"reload\": \"\",\n      \"hint\": \"ejecutar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"run benchmark\",\n      \"localized\": \"ejecutar benchmark\",\n      \"reload\": \"\",\n      \"hint\": \"ejecutar benchmark\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sa solver\",\n      \"localized\": \"solucionador sa\",\n      \"reload\": \"\",\n      \"hint\": \"solucionador sa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"safetensors\",\n      \"localized\": \"safetensors\",\n      \"reload\": \"\",\n      \"hint\": \"safetensors\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sage attention\",\n      \"localized\": \"atención sage\",\n      \"reload\": \"\",\n      \"hint\": \"atención sage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"same as primary\",\n      \"localized\": \"igual que el primario\",\n      \"reload\": \"\",\n      \"hint\": \"igual que el primario\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"same latent\",\n      \"localized\": \"latente igual\",\n      \"reload\": \"\",\n      \"hint\": \"latente igual\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sample\",\n      \"localized\": \"muestra\",\n      \"reload\": \"\",\n      \"hint\": \"muestra\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler\",\n      \"localized\": \"muestreador\",\n      \"reload\": \"\",\n      \"hint\": \"muestreador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler dynamic shift\",\n      \"localized\": \"desplazamiento dinámico del muestreador\",\n      \"reload\": \"\",\n      \"hint\": \"desplazamiento dinámico del muestreador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler order\",\n      \"localized\": \"orden del muestreador\",\n      \"reload\": \"\",\n      \"hint\": \"orden del muestreador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler shift\",\n      \"localized\": \"desplazamiento del muestreador\",\n      \"reload\": \"\",\n      \"hint\": \"desplazamiento del muestreador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sana: use complex human instructions\",\n      \"localized\": \"sana: usar instrucciones humanas complejas\",\n      \"reload\": \"\",\n      \"hint\": \"sana: usar instrucciones humanas complejas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"saturation\",\n      \"localized\": \"saturación\",\n      \"reload\": \"\",\n      \"hint\": \"saturación\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save all generated image grids\",\n      \"localized\": \"guardar todas las cuadrículas de imágenes generadas\",\n      \"reload\": \"\",\n      \"hint\": \"guardar todas las cuadrículas de imágenes generadas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save all generated images\",\n      \"localized\": \"guardar todas las imágenes generadas\",\n      \"reload\": \"\",\n      \"hint\": \"guardar todas las imágenes generadas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save caption files\",\n      \"localized\": \"guardar archivos de subtítulos\",\n      \"reload\": \"\",\n      \"hint\": \"guardar archivos de subtítulos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save diffusers\",\n      \"localized\": \"guardar difusores\",\n      \"reload\": \"\",\n      \"hint\": \"guardar difusores\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save hdr image\",\n      \"localized\": \"guardar imagen HDR\",\n      \"reload\": \"\",\n      \"hint\": \"guardar imagen HDR\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before color correction\",\n      \"localized\": \"guardar imagen antes de la corrección de color\",\n      \"reload\": \"\",\n      \"hint\": \"guardar imagen antes de la corrección de color\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before detailer\",\n      \"localized\": \"guardar imagen antes del detallador\",\n      \"reload\": \"\",\n      \"hint\": \"guardar imagen antes del detallador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before hires\",\n      \"localized\": \"guardar imagen antes de la alta resolución\",\n      \"reload\": \"\",\n      \"hint\": \"guardar imagen antes de la alta resolución\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before refiner\",\n      \"localized\": \"guardar imagen antes del refinador\",\n      \"reload\": \"\",\n      \"hint\": \"guardar imagen antes del refinador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save images to a subdirectory\",\n      \"localized\": \"guardar imágenes en un subdirectorio\",\n      \"reload\": \"\",\n      \"hint\": \"guardar imágenes en un subdirectorio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save init images\",\n      \"localized\": \"guardar imágenes iniciales\",\n      \"reload\": \"\",\n      \"hint\": \"guardar imágenes iniciales\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save inpainting mask\",\n      \"localized\": \"guardar máscara de inpainting\",\n      \"reload\": \"\",\n      \"hint\": \"guardar máscara de inpainting\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save inpainting masked composite\",\n      \"localized\": \"guardar compuesto enmascarado de inpainting\",\n      \"reload\": \"\",\n      \"hint\": \"guardar compuesto enmascarado de inpainting\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save metadata\",\n      \"localized\": \"guardar metadatos\",\n      \"reload\": \"\",\n      \"hint\": \"guardar metadatos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save only saves selected image\",\n      \"localized\": \"guardar solo guarda la imagen seleccionada\",\n      \"reload\": \"\",\n      \"hint\": \"guardar solo guarda la imagen seleccionada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save output\",\n      \"localized\": \"guardar salida\",\n      \"reload\": \"\",\n      \"hint\": \"guardar salida\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save safetensors\",\n      \"localized\": \"guardar safetensors\",\n      \"reload\": \"\",\n      \"hint\": \"guardar safetensors\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save unparsed prompt\",\n      \"localized\": \"guardar prompt sin analizar\",\n      \"reload\": \"\",\n      \"hint\": \"guardar prompt sin analizar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale after\",\n      \"localized\": \"escalar después\",\n      \"reload\": \"\",\n      \"hint\": \"escalar después\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale before\",\n      \"localized\": \"escalar antes\",\n      \"reload\": \"\",\n      \"hint\": \"escalar antes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale mask\",\n      \"localized\": \"escalar máscara\",\n      \"reload\": \"\",\n      \"hint\": \"escalar máscara\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale factor\",\n      \"localized\": \"factor de escala\",\n      \"reload\": \"\",\n      \"hint\": \"factor de escala\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"score\",\n      \"localized\": \"puntuación\",\n      \"reload\": \"\",\n      \"hint\": \"puntuación\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"score threshold\",\n      \"localized\": \"umbral de puntuación\",\n      \"reload\": \"\",\n      \"hint\": \"umbral de puntuación\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scribble\",\n      \"localized\": \"garabato\",\n      \"reload\": \"\",\n      \"hint\": \"garabato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-attire\",\n      \"localized\": \"sd15-atuendo\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-atuendo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-likeness\",\n      \"localized\": \"sd15-parecido\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-parecido\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-navimixu\",\n      \"localized\": \"sd15-navimixu\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-navimixu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-sexy\",\n      \"localized\": \"sd15-sexy\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-sexy\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-artstyle\",\n      \"localized\": \"sdxl-estilo artístico\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-estilo artístico\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-negative\",\n      \"localized\": \"sdxl-negativo\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-negativo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-sexy\",\n      \"localized\": \"sdxl-sexy\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-sexy\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-sliders\",\n      \"localized\": \"sdxl-deslizadores\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-deslizadores\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-toon\",\n      \"localized\": \"sdxl-dibujos animados\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-dibujos animados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl: use weighted pooled embeds\",\n      \"localized\": \"sdxl: usar incrustaciones ponderadas agrupadas\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl: usar incrustaciones ponderadas agrupadas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search changelog\",\n      \"localized\": \"buscar registro de cambios\",\n      \"reload\": \"\",\n      \"hint\": \"buscar registro de cambios\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search models\",\n      \"localized\": \"buscar modelos\",\n      \"reload\": \"\",\n      \"hint\": \"buscar modelos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search wiki pages\",\n      \"localized\": \"buscar páginas wiki\",\n      \"reload\": \"\",\n      \"hint\": \"buscar páginas wiki\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"secondary model\",\n      \"localized\": \"modelo secundario\",\n      \"reload\": \"\",\n      \"hint\": \"modelo secundario\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"segmentanything\",\n      \"localized\": \"segmentanything\",\n      \"reload\": \"\",\n      \"hint\": \"segmentanything\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"select\",\n      \"localized\": \"seleccionar\",\n      \"reload\": \"\",\n      \"hint\": \"seleccionar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"select model\",\n      \"localized\": \"seleccionar modelo\",\n      \"reload\": \"\",\n      \"hint\": \"seleccionar modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send interrupt\",\n      \"localized\": \"enviar interrupción\",\n      \"reload\": \"\",\n      \"hint\": \"enviar interrupción\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send seed when sending prompt or image to other interface\",\n      \"localized\": \"enviar semilla al enviar prompt o imagen a otra interfaz\",\n      \"reload\": \"\",\n      \"hint\": \"enviar semilla al enviar prompt o imagen a otra interfaz\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send size when sending prompt or image to another interface\",\n      \"localized\": \"enviar tamaño al enviar prompt o imagen a otra interfaz\",\n      \"reload\": \"\",\n      \"hint\": \"enviar tamaño al enviar prompt o imagen a otra interfaz\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sequential\",\n      \"localized\": \"secuencial\",\n      \"reload\": \"\",\n      \"hint\": \"secuencial\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"server start time\",\n      \"localized\": \"hora de inicio del servidor\",\n      \"reload\": \"\",\n      \"hint\": \"hora de inicio del servidor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"set at prompt start\",\n      \"localized\": \"establecer al inicio del prompt\",\n      \"reload\": \"\",\n      \"hint\": \"establecer al inicio del prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"set ui menu states\",\n      \"localized\": \"establecer estados del menú de la interfaz de usuario\",\n      \"reload\": \"\",\n      \"hint\": \"establecer estados del menú de la interfaz de usuario\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"share queries\",\n      \"localized\": \"compartir consultas\",\n      \"reload\": \"\",\n      \"hint\": \"compartir consultas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shared options\",\n      \"localized\": \"opciones compartidas\",\n      \"reload\": \"\",\n      \"hint\": \"opciones compartidas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sharpen\",\n      \"localized\": \"afilar\",\n      \"reload\": \"\",\n      \"hint\": \"afilar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shift\",\n      \"localized\": \"desplazamiento\",\n      \"reload\": \"\",\n      \"hint\": \"desplazamiento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show grid in results\",\n      \"localized\": \"mostrar cuadrícula en los resultados\",\n      \"reload\": \"\",\n      \"hint\": \"mostrar cuadrícula en los resultados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show input\",\n      \"localized\": \"mostrar entrada\",\n      \"reload\": \"\",\n      \"hint\": \"mostrar entrada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show metadata in full screen image browser\",\n      \"localized\": \"mostrar metadatos en el navegador de imágenes a pantalla completa\",\n      \"reload\": \"\",\n      \"hint\": \"mostrar metadatos en el navegador de imágenes a pantalla completa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show motd\",\n      \"localized\": \"mostrar mensaje del día\",\n      \"reload\": \"\",\n      \"hint\": \"mostrar mensaje del día\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show preview\",\n      \"localized\": \"mostrar vista previa\",\n      \"reload\": \"\",\n      \"hint\": \"mostrar vista previa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shuffle weights\",\n      \"localized\": \"mezclar pesos\",\n      \"reload\": \"\",\n      \"hint\": \"mezclar pesos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma\",\n      \"localized\": \"sigma\",\n      \"reload\": \"\",\n      \"hint\": \"sigma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma churn\",\n      \"localized\": \"agitación de sigma\",\n      \"reload\": \"\",\n      \"hint\": \"agitación de sigma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma max\",\n      \"localized\": \"sigma máximo\",\n      \"reload\": \"\",\n      \"hint\": \"sigma máximo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma method\",\n      \"localized\": \"método sigma\",\n      \"reload\": \"\",\n      \"hint\": \"método sigma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma min\",\n      \"localized\": \"sigma mínimo\",\n      \"reload\": \"\",\n      \"hint\": \"sigma mínimo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma noise\",\n      \"localized\": \"ruido sigma\",\n      \"reload\": \"\",\n      \"hint\": \"ruido sigma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma tmin\",\n      \"localized\": \"sigma tmin\",\n      \"reload\": \"\",\n      \"hint\": \"sigma tmin\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"simple merge\",\n      \"localized\": \"fusión simple\",\n      \"reload\": \"\",\n      \"hint\": \"fusión simple\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"size\",\n      \"localized\": \"tamaño\",\n      \"reload\": \"\",\n      \"hint\": \"tamaño\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sketch\",\n      \"localized\": \"boceto\",\n      \"reload\": \"\",\n      \"hint\": \"boceto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip generation if nan found in latents\",\n      \"localized\": \"omitir generación si se encuentra NaN en los latentes\",\n      \"reload\": \"\",\n      \"hint\": \"omitir generación si se encuentra NaN en los latentes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip guidance layers\",\n      \"localized\": \"omitir capas de guía\",\n      \"reload\": \"\",\n      \"hint\": \"omitir capas de guía\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip input frames\",\n      \"localized\": \"omitir fotogramas de entrada\",\n      \"reload\": \"\",\n      \"hint\": \"omitir fotogramas de entrada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"slider\",\n      \"localized\": \"deslizador\",\n      \"reload\": \"\",\n      \"hint\": \"deslizador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"smooth mask\",\n      \"localized\": \"máscara suave\",\n      \"reload\": \"\",\n      \"hint\": \"máscara suave\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"solver order (where\",\n      \"localized\": \"orden del solucionador (donde\",\n      \"reload\": \"\",\n      \"hint\": \"orden del solucionador (donde\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sort order\",\n      \"localized\": \"orden de clasificación\",\n      \"reload\": \"\",\n      \"hint\": \"orden de clasificación\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"source subject\",\n      \"localized\": \"sujeto fuente\",\n      \"reload\": \"\",\n      \"hint\": \"sujeto fuente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"space\",\n      \"localized\": \"espacio\",\n      \"reload\": \"\",\n      \"hint\": \"espacio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"spatial frequency\",\n      \"localized\": \"frecuencia espacial\",\n      \"reload\": \"\",\n      \"hint\": \"frecuencia espacial\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"specify model revision\",\n      \"localized\": \"especificar revisión del modelo\",\n      \"reload\": \"\",\n      \"hint\": \"especificar revisión del modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"specify model variant\",\n      \"localized\": \"especificar variante del modelo\",\n      \"reload\": \"\",\n      \"hint\": \"especificar variante del modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"split attention\",\n      \"localized\": \"atención dividida\",\n      \"reload\": \"\",\n      \"hint\": \"atención dividida\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"stable-fast\",\n      \"localized\": \"stable-fast\",\n      \"reload\": \"\",\n      \"hint\": \"stable-fast\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"standard\",\n      \"localized\": \"estándar\",\n      \"reload\": \"\",\n      \"hint\": \"estándar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"start\",\n      \"localized\": \"inicio\",\n      \"reload\": \"\",\n      \"hint\": \"inicio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"start profiling\",\n      \"localized\": \"iniciar perfilado\",\n      \"reload\": \"\",\n      \"hint\": \"iniciar perfilado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"state\",\n      \"localized\": \"estado\",\n      \"reload\": \"\",\n      \"hint\": \"estado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"stride\",\n      \"localized\": \"paso\",\n      \"reload\": \"\",\n      \"hint\": \"paso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"structure\",\n      \"localized\": \"estructura\",\n      \"reload\": \"\",\n      \"hint\": \"estructura\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"style fidelity\",\n      \"localized\": \"fidelidad de estilo\",\n      \"reload\": \"\",\n      \"hint\": \"fidelidad de estilo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"subject\",\n      \"localized\": \"sujeto\",\n      \"reload\": \"\",\n      \"hint\": \"sujeto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"submit results\",\n      \"localized\": \"enviar resultados\",\n      \"reload\": \"\",\n      \"hint\": \"enviar resultados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"submodules\",\n      \"localized\": \"submódulos\",\n      \"reload\": \"\",\n      \"hint\": \"submódulos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap x/y\",\n      \"localized\": \"intercambiar x/y\",\n      \"reload\": \"\",\n      \"hint\": \"intercambiar x/y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap x/z\",\n      \"localized\": \"intercambiar x/z\",\n      \"reload\": \"\",\n      \"hint\": \"intercambiar x/z\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap y/z\",\n      \"localized\": \"intercambiar y/z\",\n      \"reload\": \"\",\n      \"hint\": \"intercambiar y/z\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i adapter\",\n      \"localized\": \"adaptador t2i\",\n      \"reload\": \"\",\n      \"hint\": \"adaptador t2i\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i strength\",\n      \"localized\": \"intensidad t2i\",\n      \"reload\": \"\",\n      \"hint\": \"intensidad t2i\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 1\",\n      \"localized\": \"unidad 1 del adaptador t2i\",\n      \"reload\": \"\",\n      \"hint\": \"unidad 1 del adaptador t2i\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 2\",\n      \"localized\": \"unidad 2 del adaptador t2i\",\n      \"reload\": \"\",\n      \"hint\": \"unidad 2 del adaptador t2i\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 3\",\n      \"localized\": \"unidad 3 del adaptador t2i\",\n      \"reload\": \"\",\n      \"hint\": \"unidad 3 del adaptador t2i\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 4\",\n      \"localized\": \"unidad 4 del adaptador t2i\",\n      \"reload\": \"\",\n      \"hint\": \"unidad 4 del adaptador t2i\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd\",\n      \"localized\": \"taesd\",\n      \"reload\": \"\",\n      \"hint\": \"taesd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd decode layers\",\n      \"localized\": \"capas de decodificación taesd\",\n      \"reload\": \"\",\n      \"hint\": \"capas de decodificación taesd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd variant\",\n      \"localized\": \"variante taesd\",\n      \"reload\": \"\",\n      \"hint\": \"variante taesd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"target subject\",\n      \"localized\": \"sujeto objetivo\",\n      \"reload\": \"\",\n      \"hint\": \"sujeto objetivo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tcd\",\n      \"localized\": \"tcd\",\n      \"reload\": \"\",\n      \"hint\": \"tcd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tdd\",\n      \"localized\": \"tdd\",\n      \"reload\": \"\",\n      \"hint\": \"tdd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"te\",\n      \"localized\": \"te\",\n      \"reload\": \"\",\n      \"hint\": \"te\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"temperature\",\n      \"localized\": \"temperatura\",\n      \"reload\": \"\",\n      \"hint\": \"temperatura\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"temporal frequency\",\n      \"localized\": \"frecuencia temporal\",\n      \"reload\": \"\",\n      \"hint\": \"frecuencia temporal\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tertiary model\",\n      \"localized\": \"modelo terciario\",\n      \"reload\": \"\",\n      \"hint\": \"modelo terciario\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text encoder cache size\",\n      \"localized\": \"tamaño de caché del codificador de texto\",\n      \"reload\": \"\",\n      \"hint\": \"tamaño de caché del codificador de texto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text encoder model\",\n      \"localized\": \"modelo de codificador de texto\",\n      \"reload\": \"\",\n      \"hint\": \"modelo de codificador de texto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text inputs\",\n      \"localized\": \"entradas de texto\",\n      \"reload\": \"\",\n      \"hint\": \"entradas de texto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"textbox\",\n      \"localized\": \"cuadro de texto\",\n      \"reload\": \"\",\n      \"hint\": \"cuadro de texto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"threshold\",\n      \"localized\": \"umbral\",\n      \"reload\": \"\",\n      \"hint\": \"umbral\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"thresholding\",\n      \"localized\": \"umbralización\",\n      \"reload\": \"\",\n      \"hint\": \"umbralización\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile frames\",\n      \"localized\": \"cuadros de mosaico\",\n      \"reload\": \"\",\n      \"hint\": \"cuadros de mosaico\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=1\",\n      \"localized\": \"prompt de mosaico: x=1 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de mosaico: x=1 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=2\",\n      \"localized\": \"prompt de mosaico: x=1 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de mosaico: x=1 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=3\",\n      \"localized\": \"prompt de mosaico: x=1 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de mosaico: x=1 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=4\",\n      \"localized\": \"prompt de mosaico: x=1 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de mosaico: x=1 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=1\",\n      \"localized\": \"prompt de mosaico: x=2 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de mosaico: x=2 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=2\",\n      \"localized\": \"prompt de mosaico: x=2 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de mosaico: x=2 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=3\",\n      \"localized\": \"prompt de mosaico: x=2 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de mosaico: x=2 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=4\",\n      \"localized\": \"prompt de mosaico: x=2 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de mosaico: x=2 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=1\",\n      \"localized\": \"prompt de mosaico: x=3 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de mosaico: x=3 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=2\",\n      \"localized\": \"prompt de mosaico: x=3 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de mosaico: x=3 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=3\",\n      \"localized\": \"prompt de mosaico: x=3 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de mosaico: x=3 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=4\",\n      \"localized\": \"prompt de mosaico: x=3 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de mosaico: x=3 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=1\",\n      \"localized\": \"prompt de mosaico: x=4 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de mosaico: x=4 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=2\",\n      \"localized\": \"prompt de mosaico: x=4 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de mosaico: x=4 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=3\",\n      \"localized\": \"prompt de mosaico: x=4 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de mosaico: x=4 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=4\",\n      \"localized\": \"prompt de mosaico: x=4 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de mosaico: x=4 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tiling options\",\n      \"localized\": \"opciones de mosaico\",\n      \"reload\": \"\",\n      \"hint\": \"opciones de mosaico\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time embedding mix\",\n      \"localized\": \"mezcla de incrustación de tiempo\",\n      \"reload\": \"\",\n      \"hint\": \"mezcla de incrustación de tiempo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time_quadratic\",\n      \"localized\": \"time_quadratic\",\n      \"reload\": \"\",\n      \"hint\": \"time_quadratic\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time_uniform\",\n      \"localized\": \"time_uniform\",\n      \"reload\": \"\",\n      \"hint\": \"time_uniform\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep\",\n      \"localized\": \"paso de tiempo\",\n      \"reload\": \"\",\n      \"hint\": \"paso de tiempo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep skip end\",\n      \"localized\": \"fin de salto de paso de tiempo\",\n      \"reload\": \"\",\n      \"hint\": \"fin de salto de paso de tiempo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep skip start\",\n      \"localized\": \"inicio de salto de paso de tiempo\",\n      \"reload\": \"\",\n      \"hint\": \"inicio de salto de paso de tiempo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep spacing\",\n      \"localized\": \"espaciado de pasos de tiempo\",\n      \"reload\": \"\",\n      \"hint\": \"espaciado de pasos de tiempo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps\",\n      \"localized\": \"pasos de tiempo\",\n      \"reload\": \"\",\n      \"hint\": \"pasos de tiempo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps override\",\n      \"localized\": \"anulación de pasos de tiempo\",\n      \"reload\": \"\",\n      \"hint\": \"anulación de pasos de tiempo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps presets\",\n      \"localized\": \"preajustes de pasos de tiempo\",\n      \"reload\": \"\",\n      \"hint\": \"preajustes de pasos de tiempo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps range\",\n      \"localized\": \"rango de pasos de tiempo\",\n      \"reload\": \"\",\n      \"hint\": \"rango de pasos de tiempo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tiny\",\n      \"localized\": \"pequeño\",\n      \"reload\": \"\",\n      \"hint\": \"pequeño\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"todo\",\n      \"localized\": \"pendiente\",\n      \"reload\": \"\",\n      \"hint\": \"pendiente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tome\",\n      \"localized\": \"tome\",\n      \"reload\": \"\",\n      \"hint\": \"tome\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tool\",\n      \"localized\": \"herramienta\",\n      \"reload\": \"\",\n      \"hint\": \"herramienta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"top-k\",\n      \"localized\": \"top-k\",\n      \"reload\": \"\",\n      \"hint\": \"top-k\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"top-p\",\n      \"localized\": \"top-p\",\n      \"reload\": \"\",\n      \"hint\": \"top-p\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"torch\",\n      \"localized\": \"torch\",\n      \"reload\": \"\",\n      \"hint\": \"torch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"transformer\",\n      \"localized\": \"transformador\",\n      \"reload\": \"\",\n      \"hint\": \"transformador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"trigger word\",\n      \"localized\": \"palabra clave\",\n      \"reload\": \"\",\n      \"hint\": \"palabra clave\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"true\",\n      \"localized\": \"verdadero\",\n      \"reload\": \"\",\n      \"hint\": \"verdadero\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tunable ops limit\",\n      \"localized\": \"límite de operaciones ajustables\",\n      \"reload\": \"\",\n      \"hint\": \"límite de operaciones ajustables\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ufogen\",\n      \"localized\": \"ufogen\",\n      \"reload\": \"\",\n      \"hint\": \"ufogen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui card size (px)\",\n      \"localized\": \"tamaño de tarjeta de interfaz (px)\",\n      \"reload\": \"\",\n      \"hint\": \"tamaño de tarjeta de interfaz (px)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui fetch network info on mouse-over\",\n      \"localized\": \"interfaz: obtener información de red al pasar el ratón\",\n      \"reload\": \"\",\n      \"hint\": \"interfaz: obtener información de red al pasar el ratón\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui height (%)\",\n      \"localized\": \"altura de interfaz (%)\",\n      \"reload\": \"\",\n      \"hint\": \"altura de interfaz (%)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui locale\",\n      \"localized\": \"idioma de interfaz\",\n      \"reload\": \"\",\n      \"hint\": \"idioma de interfaz\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui request timeout\",\n      \"localized\": \"tiempo de espera de solicitud de interfaz\",\n      \"reload\": \"\",\n      \"hint\": \"tiempo de espera de solicitud de interfaz\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui show on startup\",\n      \"localized\": \"interfaz: mostrar al inicio\",\n      \"reload\": \"\",\n      \"hint\": \"interfaz: mostrar al inicio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui sidebar width (%)\",\n      \"localized\": \"ancho de barra lateral de interfaz (%)\",\n      \"reload\": \"\",\n      \"hint\": \"ancho de barra lateral de interfaz (%)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui theme\",\n      \"localized\": \"tema de interfaz\",\n      \"reload\": \"\",\n      \"hint\": \"tema de interfaz\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet\",\n      \"localized\": \"unet\",\n      \"reload\": \"\",\n      \"hint\": \"unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet depth\",\n      \"localized\": \"profundidad unet\",\n      \"reload\": \"\",\n      \"hint\": \"profundidad unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet enabled\",\n      \"localized\": \"unet habilitado\",\n      \"reload\": \"\",\n      \"hint\": \"unet habilitado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet max tile size\",\n      \"localized\": \"tamaño máximo de mosaico unet\",\n      \"reload\": \"\",\n      \"hint\": \"tamaño máximo de mosaico unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet min tile size\",\n      \"localized\": \"tamaño mínimo de mosaico unet\",\n      \"reload\": \"\",\n      \"hint\": \"tamaño mínimo de mosaico unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet model\",\n      \"localized\": \"modelo unet\",\n      \"reload\": \"\",\n      \"hint\": \"modelo unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet swap size\",\n      \"localized\": \"tamaño de intercambio unet\",\n      \"reload\": \"\",\n      \"hint\": \"tamaño de intercambio unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"uniform\",\n      \"localized\": \"uniforme\",\n      \"reload\": \"\",\n      \"hint\": \"uniforme\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"units\",\n      \"localized\": \"unidades\",\n      \"reload\": \"\",\n      \"hint\": \"unidades\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unload current model from vram\",\n      \"localized\": \"descargar modelo actual de vram\",\n      \"reload\": \"\",\n      \"hint\": \"descargar modelo actual de vram\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unload upscaler after processing\",\n      \"localized\": \"descargar reescalador después de procesar\",\n      \"reload\": \"\",\n      \"hint\": \"descargar reescalador después de procesar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unset\",\n      \"localized\": \"desestablecer\",\n      \"reload\": \"\",\n      \"hint\": \"desestablecer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"up\",\n      \"localized\": \"up\",\n      \"reload\": \"\",\n      \"hint\": \"up\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"upcast attention layer\",\n      \"localized\": \"capa de atención de upcast\",\n      \"reload\": \"\",\n      \"hint\": \"capa de atención de upcast\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"update\",\n      \"localized\": \"actualizar\",\n      \"reload\": \"\",\n      \"hint\": \"actualizar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"upload\",\n      \"localized\": \"subir\",\n      \"reload\": \"\",\n      \"hint\": \"subir\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use brownian noise\",\n      \"localized\": \"usar ruido browniano\",\n      \"reload\": \"\",\n      \"hint\": \"usar ruido browniano\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use cached model config when available\",\n      \"localized\": \"usar configuración de modelo en caché cuando esté disponible\",\n      \"reload\": \"\",\n      \"hint\": \"usar configuración de modelo en caché cuando esté disponible\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use defaults\",\n      \"localized\": \"usar valores predeterminados\",\n      \"reload\": \"\",\n      \"hint\": \"usar valores predeterminados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use dynamic thresholding\",\n      \"localized\": \"usar umbralización dinámica\",\n      \"reload\": \"\",\n      \"hint\": \"usar umbralización dinámica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use fixed width thumbnails\",\n      \"localized\": \"usar miniaturas de ancho fijo\",\n      \"reload\": \"\",\n      \"hint\": \"usar miniaturas de ancho fijo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use image gallery cache\",\n      \"localized\": \"usar caché de galería de imágenes\",\n      \"reload\": \"\",\n      \"hint\": \"usar caché de galería de imágenes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use karras sigmas\",\n      \"localized\": \"usar sigmas de karras\",\n      \"reload\": \"\",\n      \"hint\": \"usar sigmas de karras\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use line break as prompt segment marker\",\n      \"localized\": \"usar salto de línea como marcador de segmento de prompt\",\n      \"reload\": \"\",\n      \"hint\": \"usar salto de línea como marcador de segmento de prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use model ema weights when possible\",\n      \"localized\": \"usar pesos ema del modelo cuando sea posible\",\n      \"reload\": \"\",\n      \"hint\": \"usar pesos ema del modelo cuando sea posible\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use quantization\",\n      \"localized\": \"usar cuantificación\",\n      \"reload\": \"\",\n      \"hint\": \"usar cuantificación\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use random seeds\",\n      \"localized\": \"usar semillas aleatorias\",\n      \"reload\": \"\",\n      \"hint\": \"usar semillas aleatorias\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use reference values when available\",\n      \"localized\": \"usar valores de referencia cuando estén disponibles\",\n      \"reload\": \"\",\n      \"hint\": \"usar valores de referencia cuando estén disponibles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use same seed\",\n      \"localized\": \"usar misma semilla\",\n      \"reload\": \"\",\n      \"hint\": \"usar misma semilla\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use sample\",\n      \"localized\": \"usar muestra\",\n      \"reload\": \"\",\n      \"hint\": \"usar muestra\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use separate base dict\",\n      \"localized\": \"usar diccionario base separado\",\n      \"reload\": \"\",\n      \"hint\": \"usar diccionario base separado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use simplified solvers in final steps\",\n      \"localized\": \"usar solucionadores simplificados en los pasos finales\",\n      \"reload\": \"\",\n      \"hint\": \"usar solucionadores simplificados en los pasos finales\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use text inputs\",\n      \"localized\": \"usar entradas de texto\",\n      \"reload\": \"\",\n      \"hint\": \"usar entradas de texto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"user\",\n      \"localized\": \"usuario\",\n      \"reload\": \"\",\n      \"hint\": \"usuario\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"username\",\n      \"localized\": \"nombre de usuario\",\n      \"reload\": \"\",\n      \"hint\": \"nombre de usuario\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"v_prediction\",\n      \"localized\": \"v_predicción\",\n      \"reload\": \"\",\n      \"hint\": \"v_predicción\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae enabled\",\n      \"localized\": \"VAE habilitado\",\n      \"reload\": \"\",\n      \"hint\": \"VAE habilitado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae sliced encode\",\n      \"localized\": \"codificación segmentada de VAE\",\n      \"reload\": \"\",\n      \"hint\": \"codificación segmentada de VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae swap size\",\n      \"localized\": \"tamaño de intercambio de VAE\",\n      \"reload\": \"\",\n      \"hint\": \"tamaño de intercambio de VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae tile overlap\",\n      \"localized\": \"superposición de mosaico VAE\",\n      \"reload\": \"\",\n      \"hint\": \"superposición de mosaico VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae tile size\",\n      \"localized\": \"tamaño de mosaico VAE\",\n      \"reload\": \"\",\n      \"hint\": \"tamaño de mosaico VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vary_coeff\",\n      \"localized\": \"coeficiente de variación\",\n      \"reload\": \"\",\n      \"hint\": \"coeficiente de variación\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vdm solver\",\n      \"localized\": \"solucionador VDM\",\n      \"reload\": \"\",\n      \"hint\": \"solucionador VDM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"version\",\n      \"localized\": \"versión\",\n      \"reload\": \"\",\n      \"hint\": \"versión\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vgen params\",\n      \"localized\": \"parámetros vgen\",\n      \"reload\": \"\",\n      \"hint\": \"parámetros vgen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vibrance\",\n      \"localized\": \"viveza\",\n      \"reload\": \"\",\n      \"hint\": \"viveza\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"video file\",\n      \"localized\": \"archivo de video\",\n      \"reload\": \"\",\n      \"hint\": \"archivo de video\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"video type\",\n      \"localized\": \"tipo de video\",\n      \"reload\": \"\",\n      \"hint\": \"tipo de video\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm\",\n      \"localized\": \"VLM\",\n      \"reload\": \"\",\n      \"hint\": \"VLM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm model\",\n      \"localized\": \"modelo VLM\",\n      \"reload\": \"\",\n      \"hint\": \"modelo VLM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: default model\",\n      \"localized\": \"VLM: modelo predeterminado\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: modelo predeterminado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: default prompt\",\n      \"localized\": \"VLM: indicación predeterminada\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: indicación predeterminada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: max length\",\n      \"localized\": \"VLM: longitud máxima\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: longitud máxima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: num beams\",\n      \"localized\": \"VLM: número de haces\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: número de haces\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: top-k\",\n      \"localized\": \"VLM: top-k\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: top-k\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: top-p\",\n      \"localized\": \"VLM: top-p\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: top-p\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: use sample method\",\n      \"localized\": \"VLM: usar método de muestreo\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: usar método de muestreo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"warmth\",\n      \"localized\": \"calidez\",\n      \"reload\": \"\",\n      \"hint\": \"calidez\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"webp lossless compression\",\n      \"localized\": \"compresión sin pérdidas WebP\",\n      \"reload\": \"\",\n      \"hint\": \"compresión sin pérdidas WebP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"weight\",\n      \"localized\": \"peso\",\n      \"reload\": \"\",\n      \"hint\": \"peso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width  after\",\n      \"localized\": \"ancho  después\",\n      \"reload\": \"\",\n      \"hint\": \"ancho  después\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width  before\",\n      \"localized\": \"ancho  antes\",\n      \"reload\": \"\",\n      \"hint\": \"ancho  antes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width  mask\",\n      \"localized\": \"ancho  máscara\",\n      \"reload\": \"\",\n      \"hint\": \"ancho  máscara\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"wiki\",\n      \"localized\": \"wiki\",\n      \"reload\": \"\",\n      \"hint\": \"wiki\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"wildcards\",\n      \"localized\": \"comodines\",\n      \"reload\": \"\",\n      \"hint\": \"comodines\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x components\",\n      \"localized\": \"componentes X\",\n      \"reload\": \"\",\n      \"hint\": \"componentes X\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x overlap\",\n      \"localized\": \"superposición X\",\n      \"reload\": \"\",\n      \"hint\": \"superposición X\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x type\",\n      \"localized\": \"tipo X\",\n      \"reload\": \"\",\n      \"hint\": \"tipo X\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x-axis tile overlap\",\n      \"localized\": \"superposición de mosaico del eje X\",\n      \"reload\": \"\",\n      \"hint\": \"superposición de mosaico del eje X\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x-axis tiles\",\n      \"localized\": \"mosaicos del eje X\",\n      \"reload\": \"\",\n      \"hint\": \"mosaicos del eje X\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xhinker\",\n      \"localized\": \"xhinker\",\n      \"reload\": \"\",\n      \"hint\": \"xhinker\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xs\",\n      \"localized\": \"xs\",\n      \"reload\": \"\",\n      \"hint\": \"xs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y components\",\n      \"localized\": \"componentes Y\",\n      \"reload\": \"\",\n      \"hint\": \"componentes Y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y overlap\",\n      \"localized\": \"superposición Y\",\n      \"reload\": \"\",\n      \"hint\": \"superposición Y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y type\",\n      \"localized\": \"tipo Y\",\n      \"reload\": \"\",\n      \"hint\": \"tipo Y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y-axis tile overlap\",\n      \"localized\": \"superposición de mosaico del eje Y\",\n      \"reload\": \"\",\n      \"hint\": \"superposición de mosaico del eje Y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y-axis tiles\",\n      \"localized\": \"mosaicos del eje Y\",\n      \"reload\": \"\",\n      \"hint\": \"mosaicos del eje Y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"z type\",\n      \"localized\": \"tipo Z\",\n      \"reload\": \"\",\n      \"hint\": \"tipo Z\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"zero\",\n      \"localized\": \"cero\",\n      \"reload\": \"\",\n      \"hint\": \"cero\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"zoe depth\",\n      \"localized\": \"profundidad Zoe\",\n      \"reload\": \"\",\n      \"hint\": \"profundidad Zoe\"\n    }\n  ]\n}\n"
  },
  {
    "path": "html/locale_fr.json",
    "content": "{\n  \"icons\": [\n    {\n      \"id\": \"\",\n      \"label\": \"🎲️\",\n      \"localized\": \"🎲️\",\n      \"reload\": \"\",\n      \"hint\": \"Utiliser une graine aléatoire\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔄\",\n      \"localized\": \"🔄\",\n      \"reload\": \"\",\n      \"hint\": \"Réinitialiser les valeurs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⬆️\",\n      \"localized\": \"⬆️\",\n      \"reload\": \"\",\n      \"hint\": \"Importer une image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⬅️\",\n      \"localized\": \"⬅️\",\n      \"reload\": \"\",\n      \"hint\": \"Réutiliser l'image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇅\",\n      \"localized\": \"⇅\",\n      \"reload\": \"\",\n      \"hint\": \"Échanger les valeurs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇨\",\n      \"localized\": \"⇨\",\n      \"reload\": \"\",\n      \"hint\": \"Appliquer le préréglage à l'onglet Fusion manuelle des blocs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🕮\",\n      \"localized\": \"🕮\",\n      \"reload\": \"\",\n      \"hint\": \"Enregistrer les paramètres de la dernière image générée comme modèle de style\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇕\",\n      \"localized\": \"⇕\",\n      \"reload\": \"\",\n      \"hint\": \"Trier par : Nom asc/desc, Taille la plus grande/petite, Temps le plus récent/ancien\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⟲\",\n      \"localized\": \"⟲\",\n      \"reload\": \"\",\n      \"hint\": \"Actualiser\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"✕\",\n      \"localized\": \"✕\",\n      \"reload\": \"\",\n      \"hint\": \"Fermer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⊜\",\n      \"localized\": \"⊜\",\n      \"reload\": \"\",\n      \"hint\": \"Remplir\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"※\",\n      \"localized\": \"※\",\n      \"reload\": \"\",\n      \"hint\": \"Charger le modèle comme modèle de raffinement lorsqu'il est sélectionné, sinon charger comme modèle de base\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔎︎\",\n      \"localized\": \"🔎︎\",\n      \"reload\": \"\",\n      \"hint\": \"Scanner CivitAI pour les métadonnées et aperçus manquants\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"☲\",\n      \"localized\": \"☲\",\n      \"reload\": \"\",\n      \"hint\": \"Changer le type d'affichage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⊗\",\n      \"localized\": \"⊗\",\n      \"reload\": \"\",\n      \"hint\": \"Réinitialiser les valeurs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"📐\",\n      \"localized\": \"📐\",\n      \"reload\": \"\",\n      \"hint\": \"Mesurer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔍\",\n      \"localized\": \"🔍\",\n      \"reload\": \"\",\n      \"hint\": \"Rechercher\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🖌️\",\n      \"localized\": \"🖌️\",\n      \"reload\": \"\",\n      \"hint\": \"LaMa supprime l'objet sélectionné de l'image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🖼️\",\n      \"localized\": \"🖼️\",\n      \"reload\": \"\",\n      \"hint\": \"Afficher l'aperçu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Interroger l'image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⁜\",\n      \"localized\": \"⁜\",\n      \"reload\": \"\",\n      \"hint\": \"Basculer la méthode d'ajustement de l'image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"↶\",\n      \"localized\": \"↶\",\n      \"reload\": \"\",\n      \"hint\": \"Appliquer le style sélectionné au prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"↷\",\n      \"localized\": \"↷\",\n      \"reload\": \"\",\n      \"hint\": \"Enregistrer le prompt actuel dans le style\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Trier par nom, ascendant\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Trier par nom, descendant\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Trier par taille, ascendante\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Trier par taille, descendante\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Trier par résolution, ascendante\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Trier par résolution, descendante\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Trier par heure, ascendante\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Trier par heure, descendante\"\n    }\n  ],\n  \"main\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt\",\n      \"localized\": \"Invite\",\n      \"reload\": \"\",\n      \"hint\": \"Décrivez l'image que vous souhaitez générer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Start\",\n      \"localized\": \"Démarrer\",\n      \"reload\": \"\",\n      \"hint\": \"Démarrer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"End\",\n      \"localized\": \"Fin\",\n      \"reload\": \"\",\n      \"hint\": \"Fin\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Core\",\n      \"localized\": \"Principal\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres principaux\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System prompt\",\n      \"localized\": \"Invite système\",\n      \"reload\": \"\",\n      \"hint\": \"L'invite système contrôle le comportement du LLM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Negative prompt\",\n      \"localized\": \"Invite négative\",\n      \"reload\": \"\",\n      \"hint\": \"Décrivez ce que vous ne voulez pas voir dans l'image générée\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Text\",\n      \"localized\": \"Texte\",\n      \"reload\": \"\",\n      \"hint\": \"Créer une image à partir de texte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image\",\n      \"localized\": \"Image\",\n      \"reload\": \"\",\n      \"hint\": \"Créer une image à partir d'une image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control\",\n      \"localized\": \"Contrôle\",\n      \"reload\": \"\",\n      \"hint\": \"Créer une image avec un guidage complet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process\",\n      \"localized\": \"Traiter\",\n      \"reload\": \"\",\n      \"hint\": \"Traiter une image existante\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Caption\",\n      \"localized\": \"Légende\",\n      \"reload\": \"\",\n      \"hint\": \"Analyser les images existantes et créer des descriptions textuelles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Interrogate\",\n      \"localized\": \"Interroger\",\n      \"reload\": \"\",\n      \"hint\": \"Exécuter l'interrogation pour obtenir la description de votre image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models\",\n      \"localized\": \"Modèles\",\n      \"reload\": \"\",\n      \"hint\": \"Télécharger, convertir ou fusionner vos modèles et gérer les métadonnées des modèles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Agent Scheduler\",\n      \"localized\": \"Ordonnanceur d'agents\",\n      \"reload\": \"\",\n      \"hint\": \"Mettre en file d'attente vos requêtes de génération et les exécuter en arrière-plan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"AgentScheduler\",\n      \"localized\": \"Ordonnanceur d'agents\",\n      \"reload\": \"\",\n      \"hint\": \"Mettre en file d'attente vos requêtes de génération et les exécuter en arrière-plan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System\",\n      \"localized\": \"Système\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres et informations système\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System Info\",\n      \"localized\": \"Infos système\",\n      \"reload\": \"\",\n      \"hint\": \"Informations système\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Settings\",\n      \"localized\": \"Paramètres\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres de l'application\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Script\",\n      \"localized\": \"Script\",\n      \"reload\": \"\",\n      \"hint\": \"Scripts additionnels à utiliser\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Generate\",\n      \"localized\": \"Générer\",\n      \"reload\": \"\",\n      \"hint\": \"Démarrer le traitement\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Generate forever\",\n      \"localized\": \"Générer en continu\",\n      \"reload\": \"\",\n      \"hint\": \"Démarrer le traitement et continuer jusqu'à annulation\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enqueue\",\n      \"localized\": \"Mettre en file d'attente\",\n      \"reload\": \"\",\n      \"hint\": \"Ajouter la tâche à la file d'attente en arrière-plan dans l'Ordonnanceur d'agents\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reprocess\",\n      \"localized\": \"Retraiter\",\n      \"reload\": \"\",\n      \"hint\": \"Retraiter les générations précédentes en utilisant des paramètres différents\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Stop\",\n      \"localized\": \"Arrêter\",\n      \"reload\": \"\",\n      \"hint\": \"Arrêter le traitement\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Skip\",\n      \"localized\": \"Passer\",\n      \"reload\": \"\",\n      \"hint\": \"Arrêter le traitement de la tâche actuelle et continuer le traitement\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Pause\",\n      \"localized\": \"Pause\",\n      \"reload\": \"\",\n      \"hint\": \"Mettre le traitement en pause\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore\",\n      \"localized\": \"Restaurer\",\n      \"reload\": \"\",\n      \"hint\": \"Restaurer les paramètres de l'invite actuelle ou de la dernière image générée connue\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Clear\",\n      \"localized\": \"Effacer\",\n      \"reload\": \"\",\n      \"hint\": \"Effacer les invites\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Networks\",\n      \"localized\": \"Réseaux\",\n      \"reload\": \"\",\n      \"hint\": \"Interface utilisateur des réseaux\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Default strength\",\n      \"localized\": \"Force par défaut\",\n      \"reload\": \"\",\n      \"hint\": \"Lorsque vous ajoutez un réseau supplémentaire comme Lora à l'invite, utilisez ce multiplicateur pour celui-ci\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscale\",\n      \"localized\": \"Agrandir\",\n      \"reload\": \"\",\n      \"hint\": \"Agrandir l'image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model\",\n      \"localized\": \"Modèle\",\n      \"reload\": \"\",\n      \"hint\": \"Modèle de base\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompts\",\n      \"localized\": \"Invites\",\n      \"reload\": \"\",\n      \"hint\": \"Invite d'image et invite négative\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Base\",\n      \"localized\": \"Base\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres de base utilisés pour exécuter la génération d'images\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Style\",\n      \"localized\": \"Style\",\n      \"reload\": \"\",\n      \"hint\": \"Styles additionnels à appliquer sur les paramètres de génération sélectionnés\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Styles\",\n      \"localized\": \"Styles\",\n      \"reload\": \"\",\n      \"hint\": \"Styles additionnels à appliquer sur les paramètres de génération sélectionnés\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Lora\",\n      \"localized\": \"Lora\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA : Low-Rank Adaptation (Adaptation de faible rang). Modèle affiné qui est appliqué en plus d'un modèle chargé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Embedding\",\n      \"localized\": \"Embedding\",\n      \"reload\": \"\",\n      \"hint\": \"L'embedding d'inversion textuelle est une information intégrée entraînée concernant le sujet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Hypernetwork\",\n      \"localized\": \"Hyperréseau\",\n      \"reload\": \"\",\n      \"hint\": \"Petit réseau neuronal entraîné qui modifie le comportement du modèle chargé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VLM Caption\",\n      \"localized\": \"Légende VLM\",\n      \"reload\": \"\",\n      \"hint\": \"Analyser l'image à l'aide d'un modèle de langage visuel\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CLiP Interrogate\",\n      \"localized\": \"Interrogation CLiP\",\n      \"reload\": \"\",\n      \"hint\": \"Analyser l'image à l'aide du modèle CLiP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE\",\n      \"localized\": \"VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Variational Auto Encoder (Auto-encodeur variationnel) : modèle utilisé pour décoder l'image à la fin de la génération\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"History\",\n      \"localized\": \"Historique\",\n      \"reload\": \"\",\n      \"hint\": \"Liste des générations précédentes qui peuvent être retraitées\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"UI disable variable aspect ratio\",\n      \"localized\": \"Désactiver le ratio d'aspect variable de l'interface utilisateur\",\n      \"reload\": \"\",\n      \"hint\": \"Lorsque désactivé, toutes les vignettes apparaissent comme des images carrées\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Build info on first access\",\n      \"localized\": \"Construire les informations à la première utilisation\",\n      \"reload\": \"\",\n      \"hint\": \"Empêche le serveur de construire la page EN au démarrage et la construit plutôt sur demande\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show reference styles\",\n      \"localized\": \"Afficher les styles de référence\",\n      \"reload\": \"\",\n      \"hint\": \"Afficher ou masquer les styles intégrés\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA load using Diffusers method\",\n      \"localized\": \"Chargement LoRA avec la méthode Diffusers\",\n      \"reload\": \"\",\n      \"hint\": \"Méthode alternative utilisant les capacités LoRA intégrées de Diffusers au lieu de l'implémentation native de SD.Next (peut réduire la compatibilité LoRA)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA fuse directly to model\",\n      \"localized\": \"Fusionner LoRA directement au modèle\",\n      \"reload\": \"\",\n      \"hint\": \"Lors du chargement des LoRA, fusionner immédiatement les poids avec le modèle sous-jacent au lieu de les appliquer à la volée\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA memory cache\",\n      \"localized\": \"Cache mémoire LoRA\",\n      \"reload\": \"\",\n      \"hint\": \"Combien de LoRA conserver en réseau pour une utilisation future avant de devoir les recharger depuis le stockage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Local\",\n      \"localized\": \"Local\",\n      \"reload\": \"\",\n      \"hint\": \"Modèles téléchargés et prêts à l'emploi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Gallery\",\n      \"localized\": \"Galerie\",\n      \"reload\": \"\",\n      \"hint\": \"Galerie d'images\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reference\",\n      \"localized\": \"Référence\",\n      \"reload\": \"\",\n      \"hint\": \"Liste des modèles de référence qui peuvent être téléchargés automatiquement à la première utilisation\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Samplers\",\n      \"localized\": \"Échantillonneurs\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres avancés des échantillonneurs/planificateurs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Seed\",\n      \"localized\": \"Graine\",\n      \"reload\": \"\",\n      \"hint\": \"Graine initiale et variation\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Advanced\",\n      \"localized\": \"Avancé\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres avancés utilisés pour exécuter la génération d'images\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scripts\",\n      \"localized\": \"Scripts\",\n      \"reload\": \"\",\n      \"hint\": \"Activer des fonctionnalités additionnelles en utilisant les scripts sélectionnés pendant le processus de génération\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Corrections\",\n      \"localized\": \"Corrections\",\n      \"reload\": \"\",\n      \"hint\": \"Contrôler les corrections de couleur/netteté/luminosité de l'image pendant le processus de génération\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Parameters\",\n      \"localized\": \"Paramètres\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres de base utilisés pendant la génération d'images\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine\",\n      \"localized\": \"Affiner\",\n      \"reload\": \"\",\n      \"hint\": \"Affiner exécute un traitement additionnel après la fin du traitement initial et peut être utilisé pour agrandir l'image et éventuellement la traiter à nouveau pour augmenter la qualité et les détails\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer\",\n      \"localized\": \"Détailleur\",\n      \"reload\": \"\",\n      \"hint\": \"Le Détailleur exécute une génération additionnelle à plus haute résolution pour les objets détectés\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize\",\n      \"localized\": \"Redimensionner\",\n      \"reload\": \"\",\n      \"hint\": \"Redimensionnement d'image, peut utiliser une résolution fixe ou être basé sur une échelle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch\",\n      \"localized\": \"Lot\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres de traitement par lot\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoise\",\n      \"localized\": \"Débruitage\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres de débruitage. Un débruitage plus élevé signifie qu'une plus grande partie du contenu de l'image existante peut être modifiée pendant la génération\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mask\",\n      \"localized\": \"Masque\",\n      \"reload\": \"\",\n      \"hint\": \"Masquage d'image et options de masque\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Input\",\n      \"localized\": \"Entrée\",\n      \"reload\": \"\",\n      \"hint\": \"Sélection du média d'entrée\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Video\",\n      \"localized\": \"Vidéo\",\n      \"reload\": \"\",\n      \"hint\": \"Créer une vidéo en utilisant un guidage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control elements\",\n      \"localized\": \"Éléments de contrôle\",\n      \"reload\": \"\",\n      \"hint\": \"Les éléments de contrôle sont des modèles avancés qui peuvent guider la génération vers le résultat souhaité\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"IP adapter\",\n      \"localized\": \"Adaptateur IP\",\n      \"reload\": \"\",\n      \"hint\": \"Guider la génération vers le résultat souhaité en utilisant les modèles de plugin d'adaptateurs IP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"IP adapters\",\n      \"localized\": \"Adaptateurs IP\",\n      \"reload\": \"\",\n      \"hint\": \"Les adaptateurs IP sont des modèles de plugin qui peuvent guider la génération vers le résultat souhaité\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Extensions\",\n      \"localized\": \"Extensions\",\n      \"reload\": \"\",\n      \"hint\": \"Extensions d'application\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"XYZ Grid\",\n      \"localized\": \"Grille XYZ\",\n      \"reload\": \"\",\n      \"hint\": \"La grille XYZ est un module puissant qui crée une grille d'images basée sur la variation de multiples paramètres de génération\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Cover\",\n      \"localized\": \"Couverture\",\n      \"reload\": \"\",\n      \"hint\": \"couvrir toute la zone\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inline\",\n      \"localized\": \"En ligne\",\n      \"reload\": \"\",\n      \"hint\": \"en ligne avec tous les éléments additionnels (défilable)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sidebar\",\n      \"localized\": \"Barre latérale\",\n      \"reload\": \"\",\n      \"hint\": \"barre latérale sur le côté droit de l'écran\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD15\",\n      \"localized\": \"SD15\",\n      \"reload\": \"\",\n      \"hint\": \"StableDiffusion 1.5\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD21\",\n      \"localized\": \"SD21\",\n      \"reload\": \"\",\n      \"hint\": \"StableDiffusion 2.1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD35\",\n      \"localized\": \"SD35\",\n      \"reload\": \"\",\n      \"hint\": \"StableDiffusion 3.5\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SDXL\",\n      \"localized\": \"SDXL\",\n      \"reload\": \"\",\n      \"hint\": \"StableDiffusion XL\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SC\",\n      \"localized\": \"SC\",\n      \"reload\": \"\",\n      \"hint\": \"StableCascade\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Flux\",\n      \"localized\": \"Flux\",\n      \"reload\": \"\",\n      \"hint\": \"FLUX.1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show\",\n      \"localized\": \"Afficher\",\n      \"reload\": \"\",\n      \"hint\": \"Afficher l'emplacement de l'image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Save\",\n      \"localized\": \"Enregistrer\",\n      \"reload\": \"\",\n      \"hint\": \"Enregistrer l'image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Delete\",\n      \"localized\": \"Supprimer\",\n      \"reload\": \"\",\n      \"hint\": \"Supprimer l'image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Replace\",\n      \"localized\": \"Remplacer\",\n      \"reload\": \"\",\n      \"hint\": \"Remplacer l'image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Text\",\n      \"localized\": \"➠ Texte\",\n      \"reload\": \"\",\n      \"hint\": \"Transférer l'image vers l'interface texte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Image\",\n      \"localized\": \"➠ Image\",\n      \"reload\": \"\",\n      \"hint\": \"Transférer l'image vers l'interface image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Inpaint\",\n      \"localized\": \"➠ Inpainting\",\n      \"reload\": \"\",\n      \"hint\": \"Transférer l'image vers l'interface d'inpainting\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Sketch\",\n      \"localized\": \"➠ Croquis\",\n      \"reload\": \"\",\n      \"hint\": \"Transférer l'image vers l'interface de croquis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Composite\",\n      \"localized\": \"➠ Composite\",\n      \"reload\": \"\",\n      \"hint\": \"Transférer l'image vers l'interface de croquis d'inpainting\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Process\",\n      \"localized\": \"➠ Traiter\",\n      \"reload\": \"\",\n      \"hint\": \"Transférer l'image vers l'interface de traitement\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Control\",\n      \"localized\": \"➠ Contrôle\",\n      \"reload\": \"\",\n      \"hint\": \"Transférer l'image vers l'interface de contrôle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Caption\",\n      \"localized\": \"➠ Légende\",\n      \"reload\": \"\",\n      \"hint\": \"Transférer l'image vers l'interface de légende\"\n    }\n  ],\n  \"generate\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Sampling method\",\n      \"localized\": \"Méthode d'échantillonnage\",\n      \"reload\": \"\",\n      \"hint\": \"Quel algorithme utiliser pour produire l'image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Steps\",\n      \"localized\": \"Étapes\",\n      \"reload\": \"\",\n      \"hint\": \"Combien de fois améliorer l'image générée de manière itérative ; des valeurs plus élevées prennent plus de temps ; des valeurs très faibles peuvent produire de mauvais résultats\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Tiling\",\n      \"localized\": \"Pavages\",\n      \"reload\": \"\",\n      \"hint\": \"Produire une image qui peut être pavée\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full quality\",\n      \"localized\": \"Pleine qualité\",\n      \"reload\": \"\",\n      \"hint\": \"Utiliser le VAE en pleine qualité pour décoder les échantillons latents\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HiDiffusion\",\n      \"localized\": \"HiDiffusion\",\n      \"reload\": \"\",\n      \"hint\": \"HiDiffusion permet la création d'images haute résolution en utilisant vos modèles standard sans doublons/distorsions et avec des performances améliorées\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HDR Clamp\",\n      \"localized\": \"Restriction HDR\",\n      \"reload\": \"\",\n      \"hint\": \"Ajuste le niveau de détails incohérents en élaguant les valeurs qui s'écartent significativement de la moyenne de la distribution. C'est particulièrement utile pour améliorer la génération à des échelles de guidage plus élevées, identifier les valeurs aberrantes tôt dans le processus et appliquer des ajustements mathématiques basés sur les paramètres de Plage (Limite) et de Seuil. Considérez cela comme la définition de la plage dans laquelle vous souhaitez que les valeurs de votre image se situent, et l'ajustement du seuil détermine quelles valeurs doivent être ramenées dans cette plage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HDR Maximize\",\n      \"localized\": \"Maximisation HDR\",\n      \"reload\": \"\",\n      \"hint\": \"Calcule un 'facteur de normalisation' en divisant la valeur maximale du tenseur par la plage spécifiée multipliée par 4. Ce facteur est ensuite utilisé pour décaler les canaux dans la limite donnée, assurant une plage dynamique maximale pour le traitement ultérieur. L'objectif est d'optimiser la plage dynamique pour des applications externes comme Photoshop, en particulier pour ajuster les niveaux, le contraste et la luminosité\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enable refine pass\",\n      \"localized\": \"Activer la passe d'affinage\",\n      \"reload\": \"\",\n      \"hint\": \"Utilise un processus similaire à celui de l'image vers l'image pour mettre à l'échelle et/ou ajouter des détails à l'image finale. Utilise optionnellement un modèle de raffinement pour améliorer les détails de l'image.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enable detailer pass\",\n      \"localized\": \"Activer la passe de détaillage\",\n      \"reload\": \"\",\n      \"hint\": \"Détecte les objets cibles tels que le visage et les retraites à une résolution plus élevée\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoising strength\",\n      \"localized\": \"Force de débruitage\",\n      \"reload\": \"\",\n      \"hint\": \"Détermine le degré de respect que l'algorithme doit avoir pour le contenu de l'image. À 0, rien ne changera, et à 1, vous obtiendrez une image sans rapport. Avec des valeurs inférieures à 1.0, le traitement prendra moins d'étapes que celles spécifiées par le curseur des étapes d'échantillonnage.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoise start\",\n      \"localized\": \"Début du débruitage\",\n      \"reload\": \"\",\n      \"hint\": \"Outrepasse la force de débruitage en indiquant à quel point le modèle de base doit finir tôt et quand le raffineur doit commencer. Applicable uniquement à l'utilisation du raffineur. Si réglé sur 0 ou 1, la force de débruitage sera utilisée.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Hires steps\",\n      \"localized\": \"Étapes Hires\",\n      \"reload\": \"\",\n      \"hint\": \"Nombre d'étapes d'échantillonnage pour l'image mise à l'échelle. Si 0, utilise les mêmes que pour l'original.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Strength\",\n      \"localized\": \"Force\",\n      \"reload\": \"\",\n      \"hint\": \"La force de débruitage pendant l'opération d'image contrôle la quantité de l'image originale qui peut changer pendant la génération.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler\",\n      \"localized\": \"Upscaleur\",\n      \"reload\": \"\",\n      \"hint\": \"Quel modèle pré-entraîné utiliser pour le processus de mise à l'échelle.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Force Hires\",\n      \"localized\": \"Forcer Hires\",\n      \"reload\": \"\",\n      \"hint\": \"Hires s'exécute automatiquement lorsque la mise à l'échelle latente est sélectionnée, mais est ignoré lors de l'utilisation d'upscaleurs non latents. Activez le forçage Hires pour exécuter Hires avec des upscaleurs non latents.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize width\",\n      \"localized\": \"Redimensionner la largeur\",\n      \"reload\": \"\",\n      \"hint\": \"Redimensionne l'image à cette largeur. Si 0, la largeur est inférée de l'un des deux curseurs voisins.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize height\",\n      \"localized\": \"Redimensionner la hauteur\",\n      \"reload\": \"\",\n      \"hint\": \"Redimensionne l'image à cette hauteur. Si 0, la hauteur est inférée de l'un des deux curseurs voisins.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine sampler\",\n      \"localized\": \"Échantillonneur d'affinage\",\n      \"reload\": \"\",\n      \"hint\": \"Utiliser un échantillonneur spécifique comme échantillonneur de secours si le principal n'est pas pris en charge pour une opération spécifique.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner start\",\n      \"localized\": \"Début du raffineur\",\n      \"reload\": \"\",\n      \"hint\": \"La passe du raffineur commencera lorsque le modèle de base sera complet à ce degré (régler à une valeur supérieure à 0 et inférieure à 1 pour l'exécuter après l'exécution complète du modèle de base).\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner steps\",\n      \"localized\": \"Étapes du raffineur\",\n      \"reload\": \"\",\n      \"hint\": \"Nombre d'étapes à utiliser pour la passe du raffineur.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine guidance\",\n      \"localized\": \"Guidage d'affinage\",\n      \"reload\": \"\",\n      \"hint\": \"Échelle CFG utilisée pour la passe du raffineur.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Attention guidance\",\n      \"localized\": \"Guidage de l'attention\",\n      \"reload\": \"\",\n      \"hint\": \"Échelle CFG utilisée avec PAG : Guidance par Attention Perturbée.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adaptive scaling\",\n      \"localized\": \"Mise à l'échelle adaptative\",\n      \"reload\": \"\",\n      \"hint\": \"Modificateur adaptatif pour l'échelle de guidage de l'attention.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Rescale guidance\",\n      \"localized\": \"Redimensionner le guidage\",\n      \"reload\": \"\",\n      \"hint\": \"Redimensionner le bruit généré par CFG pour éviter les images surexposées.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine Prompt\",\n      \"localized\": \"Prompt d'affinage\",\n      \"reload\": \"\",\n      \"hint\": \"Prompt utilisé à la fois pour le second encodeur du modèle de base (s'il existe) et pour la passe de raffinement (si activée).\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine negative prompt\",\n      \"localized\": \"Prompt négatif d'affinage\",\n      \"reload\": \"\",\n      \"hint\": \"Prompt négatif utilisé à la fois pour le second encodeur du modèle de base (s'il existe) et pour la passe de raffinement (si activée).\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Width\",\n      \"localized\": \"Largeur\",\n      \"reload\": \"\",\n      \"hint\": \"Largeur de l'image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Height\",\n      \"localized\": \"Hauteur\",\n      \"reload\": \"\",\n      \"hint\": \"Hauteur de l'image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch count\",\n      \"localized\": \"Nombre de lots\",\n      \"reload\": \"\",\n      \"hint\": \"Combien de lots d'images créer (n'a aucun impact sur les performances de génération ou l'utilisation de la VRAM)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch size\",\n      \"localized\": \"Taille du lot\",\n      \"reload\": \"\",\n      \"hint\": \"Combien d'images créer en un seul lot (augmente les performances de génération au prix d'une utilisation plus élevée de la VRAM)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance scale\",\n      \"localized\": \"Échelle de guidage\",\n      \"reload\": \"\",\n      \"hint\": \"Échelle de guidance sans classifieur (CFG) : à quel point l'image doit se conformer au prompt. Des valeurs plus basses produisent des résultats plus créatifs, des valeurs plus élevées la font suivre le prompt plus strictement ; valeurs recommandées entre 5 et 10\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Guidance End\",\n      \"localized\": \"Fin du guidage\",\n      \"reload\": \"\",\n      \"hint\": \"Met fin prématurément à l'effet du CFG et du PAG : Une valeur de 1 agit normalement, 0.5 arrête le guidage à 50% des étapes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Initial seed\",\n      \"localized\": \"Graine initiale\",\n      \"reload\": \"\",\n      \"hint\": \"Une valeur qui détermine la sortie du générateur de nombres aléatoires - si vous créez une image avec les mêmes paramètres et la même graine qu'une autre image, vous obtiendrez le même résultat\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variation\",\n      \"localized\": \"Variation\",\n      \"reload\": \"\",\n      \"hint\": \"Deuxième graine à mélanger avec la graine principale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variation strength\",\n      \"localized\": \"Force de variation\",\n      \"reload\": \"\",\n      \"hint\": \"L'intensité de la variation à produire. À 0, il n'y aura aucun effet. À 1, vous obtiendrez l'image complète avec la graine de variation (sauf pour les échantillonneurs ancestraux, où vous obtiendrez juste quelque chose)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize seed from width\",\n      \"localized\": \"Redimensionner la graine à partir de la largeur\",\n      \"reload\": \"\",\n      \"hint\": \"Tenter de produire une image similaire à ce qui aurait été produit avec la même graine à la résolution spécifiée\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize seed from height\",\n      \"localized\": \"Redimensionner la graine à partir de la hauteur\",\n      \"reload\": \"\",\n      \"hint\": \"Tenter de produire une image similaire à ce qui aurait été produit avec la même graine à la résolution spécifiée\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Fixed\",\n      \"localized\": \"Fixe\",\n      \"reload\": \"\",\n      \"hint\": \"Redimensionner l'image à la résolution cible. À moins que la hauteur et la largeur ne correspondent, vous obtiendrez un rapport d'aspect incorrect\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale\",\n      \"localized\": \"Échelle\",\n      \"reload\": \"\",\n      \"hint\": \"Redimensionner l'image à l'échelle cible. Si la largeur/hauteur fixe est définie, cette option est ignorée\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop\",\n      \"localized\": \"Recadrer\",\n      \"reload\": \"\",\n      \"hint\": \"Redimensionner l'image de manière à ce que la résolution cible soit entièrement remplie par l'image. Recadrer les parties qui dépassent\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Fill\",\n      \"localized\": \"Remplir\",\n      \"reload\": \"\",\n      \"hint\": \"Redimensionner l'image de manière à ce que l'intégralité de l'image soit à l'intérieur de la résolution cible. Remplir l'espace vide avec les couleurs de l'image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mask blur\",\n      \"localized\": \"Flou du masque\",\n      \"reload\": \"\",\n      \"hint\": \"Quantité de flou à appliquer au masque avant le traitement, en pixels\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Latent noise\",\n      \"localized\": \"Bruit latent\",\n      \"reload\": \"\",\n      \"hint\": \"Remplir avec du bruit de l'espace latent\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Latent nothing\",\n      \"localized\": \"Néant latent\",\n      \"reload\": \"\",\n      \"hint\": \"Remplir avec des zéros de l'espace latent\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adapters\",\n      \"localized\": \"Adaptateurs\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres liés aux adaptateurs IP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inputs\",\n      \"localized\": \"Entrées\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres liés aux images d'entrée\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control input type\",\n      \"localized\": \"Type d'entrée de contrôle\",\n      \"reload\": \"\",\n      \"hint\": \"Choisir quelle image d'entrée est utilisée pour le processus de contrôle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Video format\",\n      \"localized\": \"Format vidéo\",\n      \"reload\": \"\",\n      \"hint\": \"Format et codec de la vidéo de sortie\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Size & Batch\",\n      \"localized\": \"Taille et lot\",\n      \"reload\": \"\",\n      \"hint\": \"Taille de l'image et lot\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sigma adjust\",\n      \"localized\": \"Ajustement Sigma\",\n      \"reload\": \"\",\n      \"hint\": \"Ajuster la valeur sigma de l'échantillonneur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adjust start\",\n      \"localized\": \"Début de l'ajustement\",\n      \"reload\": \"\",\n      \"hint\": \"Étape de début où l'ajustement sigma se produit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adjust end\",\n      \"localized\": \"Fin de l'ajustement\",\n      \"reload\": \"\",\n      \"hint\": \"Étape de fin où l'ajustement sigma se produit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Options\",\n      \"localized\": \"Options\",\n      \"reload\": \"\",\n      \"hint\": \"Options\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ControlNet\",\n      \"localized\": \"ControlNet\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet est un modèle de guidage avancé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Renoise\",\n      \"localized\": \"Ré-bruitage\",\n      \"reload\": \"\",\n      \"hint\": \"Appliquer un bruit additionnel pendant le détaillage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Renoise end\",\n      \"localized\": \"Fin du ré-bruitage\",\n      \"reload\": \"\",\n      \"hint\": \"Étape finale où le ré-bruitage est appliqué\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Merge detailers\",\n      \"localized\": \"Fusionner les détaileurs\",\n      \"reload\": \"\",\n      \"hint\": \"Fusionner les résultats de plusieurs détaileurs en un seul masque avant d'exécuter le processus de détaillage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpaint mode\",\n      \"localized\": \"Mode Inpainting\",\n      \"reload\": \"\",\n      \"hint\": \"Mode Inpainting\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpaint area\",\n      \"localized\": \"Zone d'inpainting\",\n      \"reload\": \"\",\n      \"hint\": \"Zone d'inpainting\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Texture tiling\",\n      \"localized\": \"Pavages de texture\",\n      \"reload\": \"\",\n      \"hint\": \"Appliquer un pavage sans couture à l'image générée afin qu'elle puisse être utilisée comme texture\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Override\",\n      \"localized\": \"Outrepasser\",\n      \"reload\": \"\",\n      \"hint\": \"Outrepasser les paramètres qui peuvent modifier le comportement du serveur et qui sont généralement appliqués à partir des métadonnées d'image importées\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE type\",\n      \"localized\": \"Type de VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Choisissez si vous voulez exécuter un VAE complet, un VAE de qualité réduite ou tenter d'utiliser un service VAE distant\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Guess Mode\",\n      \"localized\": \"Mode Estimation\",\n      \"reload\": \"\",\n      \"hint\": \"Supprime l'exigence de fournir un prompt à un ControlNet. Il force l'encodeur ControlNet à faire sa 'meilleure estimation' basée sur le contenu de la carte de contrôle d'entrée.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control Only\",\n      \"localized\": \"Contrôle Uniquement\",\n      \"reload\": \"\",\n      \"hint\": \"Ceci utilise uniquement l'entrée de Contrôle ci-dessous comme source pour toute tâche de type ControlNet ou IP Adapter basée sur l'une de nos diverses options.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Init Image Same As Control\",\n      \"localized\": \"Image Initiale Identique au Contrôle\",\n      \"reload\": \"\",\n      \"hint\": \"Traitera également toute image placée dans la fenêtre d'entrée de Contrôle comme source pour les tâches de type img2img, une image à modifier par exemple.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Separate Init Image\",\n      \"localized\": \"Séparer l'Image Initiale\",\n      \"reload\": \"\",\n      \"hint\": \"Crée une fenêtre supplémentaire à côté de l'entrée de Contrôle, étiquetée 'Entrée Initiale', afin que vous puissiez avoir une image distincte pour les opérations de Contrôle et une source d'initialisation.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Override settings\",\n      \"localized\": \"Outrepasser les paramètres\",\n      \"reload\": \"\",\n      \"hint\": \"Si les paramètres de génération s'écartent de vos paramètres système, outrepasser les paramètres renseignés avec ces derniers pour remplacer votre configuration système pour ce flux de travail.\"\n    }\n  ],\n  \"other\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Install\",\n      \"localized\": \"Installer\",\n      \"reload\": \"\",\n      \"hint\": \"Installer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Search\",\n      \"localized\": \"Rechercher\",\n      \"reload\": \"\",\n      \"hint\": \"Rechercher\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sort by\",\n      \"localized\": \"Trier par\",\n      \"reload\": \"\",\n      \"hint\": \"Trier par\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Nudenet\",\n      \"localized\": \"Nudenet\",\n      \"reload\": \"\",\n      \"hint\": \"Extension flexible capable de détecter et d'obfusquer la nudité dans les images\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt enhance\",\n      \"localized\": \"Amélioration du prompt\",\n      \"reload\": \"\",\n      \"hint\": \"Extension capable d'utiliser différents LLM pour réécrire le prompt afin d'améliorer les résultats\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Manage extensions\",\n      \"localized\": \"Gérer les extensions\",\n      \"reload\": \"\",\n      \"hint\": \"Gérer les extensions\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Manual install\",\n      \"localized\": \"Installation manuelle\",\n      \"reload\": \"\",\n      \"hint\": \"Installer manuellement l'extension\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Extension GIT repository URL\",\n      \"localized\": \"URL du dépôt GIT de l'extension\",\n      \"reload\": \"\",\n      \"hint\": \"Spécifier l'URL du dépôt de l'extension sur GitHub\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Specific branch name\",\n      \"localized\": \"Nom de branche spécifique\",\n      \"reload\": \"\",\n      \"hint\": \"Spécifier le nom de la branche de l'extension, laisser vide pour le défaut\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Local directory name\",\n      \"localized\": \"Nom du répertoire local\",\n      \"reload\": \"\",\n      \"hint\": \"Répertoire où installer l'extension, laisser vide pour le défaut\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refresh extension list\",\n      \"localized\": \"Actualiser la liste des extensions\",\n      \"reload\": \"\",\n      \"hint\": \"Actualiser la liste des extensions disponibles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Update all installed\",\n      \"localized\": \"Mettre à jour toutes les installées\",\n      \"reload\": \"\",\n      \"hint\": \"Mettre à jour les extensions installées vers leur dernière version disponible\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Apply changes\",\n      \"localized\": \"Appliquer les changements\",\n      \"reload\": \"\",\n      \"hint\": \"Appliquer tous les changements et redémarrer le serveur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Uninstall\",\n      \"localized\": \"Désinstaller\",\n      \"reload\": \"\",\n      \"hint\": \"Désinstaller cette extension\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"User interface\",\n      \"localized\": \"Interface utilisateur\",\n      \"reload\": \"\",\n      \"hint\": \"Examiner et définir les préférences de l'interface utilisateur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Set UI defaults\",\n      \"localized\": \"Définir les valeurs par défaut de l'interface utilisateur\",\n      \"reload\": \"\",\n      \"hint\": \"Définir les valeurs actuelles comme valeurs par défaut pour l'interface utilisateur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Benchmark\",\n      \"localized\": \"Test de performance\",\n      \"reload\": \"\",\n      \"hint\": \"Exécuter les tests de performance\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models & Networks\",\n      \"localized\": \"Modèles et Réseaux\",\n      \"reload\": \"\",\n      \"hint\": \"Afficher les listes de tous les modèles et réseaux disponibles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore UI defaults\",\n      \"localized\": \"Restaurer les valeurs par défaut de l'interface utilisateur\",\n      \"reload\": \"\",\n      \"hint\": \"Restaurer les valeurs par défaut de l'interface utilisateur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer classes\",\n      \"localized\": \"Classes du détaillant\",\n      \"reload\": \"\",\n      \"hint\": \"Spécifier les classes spécifiques à utiliser si le modèle de détaillant sélectionné est un modèle multi-classes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer models\",\n      \"localized\": \"Modèles du détaillant\",\n      \"reload\": \"\",\n      \"hint\": \"Sélectionner les modèles de détection à utiliser pour le détaillage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer negative prompt\",\n      \"localized\": \"Prompt négatif du détaillant\",\n      \"reload\": \"\",\n      \"hint\": \"Utiliser un prompt négatif séparé pour le détaillant. S'il n'est pas présent, il utilisera le prompt négatif principal\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer prompt\",\n      \"localized\": \"Prompt du détaillant\",\n      \"reload\": \"\",\n      \"hint\": \"Utiliser un prompt séparé pour le détaillant. S'il n'est pas présent, il utilisera le prompt principal\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer steps\",\n      \"localized\": \"Étapes du détaillant\",\n      \"reload\": \"\",\n      \"hint\": \"Nombre d'étapes à exécuter pour le processus de détaillage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer strength\",\n      \"localized\": \"Force du détaillant\",\n      \"reload\": \"\",\n      \"hint\": \"Force de débruitage du processus de détaillage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer use model augment\",\n      \"localized\": \"Détaillant : utiliser l'augmentation du modèle\",\n      \"reload\": \"\",\n      \"hint\": \"Exécuter les modèles de détection du détaillant avec une précision supplémentaire\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max detected\",\n      \"localized\": \"Max. détectés\",\n      \"reload\": \"\",\n      \"hint\": \"Nombre maximal d'objets détectés sur lesquels exécuter le détaillant\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Edge blur\",\n      \"localized\": \"Flou des bords\",\n      \"reload\": \"\",\n      \"hint\": \"Flouter le bord de la zone masquée selon ce pourcentage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Edge padding\",\n      \"localized\": \"Marge des bords\",\n      \"reload\": \"\",\n      \"hint\": \"Étendre le bord de la zone masquée selon ce pourcentage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Min confidence\",\n      \"localized\": \"Confiance min.\",\n      \"reload\": \"\",\n      \"hint\": \"Confiance minimale dans l'élément détecté\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max overlap\",\n      \"localized\": \"Chevauchement max.\",\n      \"reload\": \"\",\n      \"hint\": \"Chevauchement maximal entre deux éléments détectés avant qu'un ne soit écarté\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Min size\",\n      \"localized\": \"Taille min.\",\n      \"reload\": \"\",\n      \"hint\": \"Taille minimale de l'objet détecté en pourcentage de l'image globale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max size\",\n      \"localized\": \"Taille max.\",\n      \"reload\": \"\",\n      \"hint\": \"Taille maximale de l'objet détecté en pourcentage de l'image globale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Image\",\n      \"localized\": \"Traiter l'image\",\n      \"reload\": \"\",\n      \"hint\": \"Traiter une seule image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Batch\",\n      \"localized\": \"Traiter le lot\",\n      \"reload\": \"\",\n      \"hint\": \"Traiter un lot d'images\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Folder\",\n      \"localized\": \"Traiter le dossier\",\n      \"reload\": \"\",\n      \"hint\": \"Traiter toutes les images d'un dossier\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Current\",\n      \"localized\": \"Actuel\",\n      \"reload\": \"\",\n      \"hint\": \"Analyser les modules à l'intérieur du modèle actuellement chargé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Merge\",\n      \"localized\": \"Fusionner\",\n      \"reload\": \"\",\n      \"hint\": \"Fusionner deux ou plusieurs modèles en un nouveau modèle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Modules\",\n      \"localized\": \"Modules\",\n      \"reload\": \"\",\n      \"hint\": \"Fusionner et/ou remplacer des modules dans un modèle existant\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Validate\",\n      \"localized\": \"Valider\",\n      \"reload\": \"\",\n      \"hint\": \"Valider tous les modèles locaux\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CivitAI\",\n      \"localized\": \"CivitAI\",\n      \"reload\": \"\",\n      \"hint\": \"Rechercher et télécharger des modèles depuis CitivAI\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scale by\",\n      \"localized\": \"Mettre à l'échelle par\",\n      \"reload\": \"\",\n      \"hint\": \"Utilisez cet onglet pour redimensionner l'image/les images source selon un facteur choisi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scale to\",\n      \"localized\": \"Mettre à l'échelle vers\",\n      \"reload\": \"\",\n      \"hint\": \"Utilisez cet onglet pour redimensionner l'image/les images source à une taille cible choisie\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Input directory\",\n      \"localized\": \"Répertoire d'entrée\",\n      \"reload\": \"\",\n      \"hint\": \"Dossier où se trouvent les images que vous souhaitez traiter\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Output directory\",\n      \"localized\": \"Répertoire de sortie\",\n      \"reload\": \"\",\n      \"hint\": \"Dossier où les images traitées doivent être enregistrées\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show result images\",\n      \"localized\": \"Afficher les images résultantes\",\n      \"reload\": \"\",\n      \"hint\": \"Activer pour afficher les images traitées dans le panneau d'images\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop to fit\",\n      \"localized\": \"Recadrer pour ajuster\",\n      \"reload\": \"\",\n      \"hint\": \"Si les dimensions de votre image source (par exemple 512x510) diffèrent de vos dimensions cibles (par exemple 1024x768), cette fonction ajustera votre image agrandie à la taille de l'image cible. L'excès sera recadré\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine Upscaler\",\n      \"localized\": \"Affiner l'Upscaler\",\n      \"reload\": \"\",\n      \"hint\": \"Sélectionner un upscaler secondaire à exécuter après l'upscaler initial\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler 2 visibility\",\n      \"localized\": \"Visibilité de l'Upscaler 2\",\n      \"reload\": \"\",\n      \"hint\": \"Force de l'upscaler secondaire\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Calculate hash for all models\",\n      \"localized\": \"Calculer le hachage pour tous les modèles\",\n      \"reload\": \"\",\n      \"hint\": \"Calcule le hachage pour tous les modèles disponibles, ce qui peut prendre beaucoup de temps\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Weights Clip\",\n      \"localized\": \"Clip de poids\",\n      \"reload\": \"\",\n      \"hint\": \"Poids fusionnés forcés à ne pas être plus lourds que le modèle original, prévenant le 'burn-in' et les modèles trop saturés\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ReBasin\",\n      \"localized\": \"ReBasin\",\n      \"reload\": \"\",\n      \"hint\": \"Effectue plusieurs fusions avec permutations afin de conserver davantage de caractéristiques des deux modèles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Number of ReBasin Iterations\",\n      \"localized\": \"Nombre d'itérations ReBasin\",\n      \"reload\": \"\",\n      \"hint\": \"Nombre de fois pour fusionner et permuter le modèle avant de sauvegarder\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CPU\",\n      \"localized\": \"CPU\",\n      \"reload\": \"\",\n      \"hint\": \"Utilise uniquement le CPU et la RAM : le plus lent mais le moins susceptible de provoquer une erreur OOM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Shuffle\",\n      \"localized\": \"Mélanger\",\n      \"reload\": \"\",\n      \"hint\": \"Charge le modèle complet en RAM et calcule sur la VRAM : moins d'accélération, suggéré pour les fusions SDXL\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"In Blocks\",\n      \"localized\": \"Blocs d'entrée\",\n      \"reload\": \"\",\n      \"hint\": \"Blocs de sous-échantillonnage de l'UNet (12 valeurs pour SD1.5, 9 valeurs pour SDXL)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mid Block\",\n      \"localized\": \"Bloc central\",\n      \"reload\": \"\",\n      \"hint\": \"Bloc central de l'UNet (1 valeur)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Out Block\",\n      \"localized\": \"Blocs de sortie\",\n      \"reload\": \"\",\n      \"hint\": \"Blocs de suréchantillonnage de l'UNet (12 valeurs pour SD1.5, 9 valeurs pour SDXL)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Preset Interpolation Ratio\",\n      \"localized\": \"Ratio d'interpolation de préréglage\",\n      \"reload\": \"\",\n      \"hint\": \"Si deux préréglages sont sélectionnés, interpoler entre eux\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adapter\",\n      \"localized\": \"Adaptateur\",\n      \"reload\": \"\",\n      \"hint\": \"Modèle d'adaptateur IP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Active ip adapters\",\n      \"localized\": \"Adaptateurs IP actifs\",\n      \"reload\": \"\",\n      \"hint\": \"Nombre d'adaptateurs IP actifs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Unload adapter\",\n      \"localized\": \"Décharger l'adaptateur\",\n      \"reload\": \"\",\n      \"hint\": \"Décharger l'adaptateur IP immédiatement après la génération. Sinon, l'adaptateur IP restera chargé pour une utilisation plus rapide lors du prochain processus de génération\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop to portrait\",\n      \"localized\": \"Recadrer en portrait\",\n      \"reload\": \"\",\n      \"hint\": \"Recadrer l'image d'entrée en mode portrait uniquement avant de l'utiliser comme entrée d'adaptateur IP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Layer options\",\n      \"localized\": \"Options de calque\",\n      \"reload\": \"\",\n      \"hint\": \"Spécifier manuellement les options de calque avancées de l'adaptateur IP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"X values\",\n      \"localized\": \"Valeurs X\",\n      \"reload\": \"\",\n      \"hint\": \"Séparer les valeurs pour l'axe X en utilisant des virgules\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Y values\",\n      \"localized\": \"Valeurs Y\",\n      \"reload\": \"\",\n      \"hint\": \"Séparer les valeurs pour l'axe Y en utilisant des virgules\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Z values\",\n      \"localized\": \"Valeurs Z\",\n      \"reload\": \"\",\n      \"hint\": \"Séparer les valeurs pour l'axe Z en utilisant des virgules\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Loops\",\n      \"localized\": \"Boucles\",\n      \"reload\": \"\",\n      \"hint\": \"Combien de fois traiter une image. Chaque sortie est utilisée comme entrée de la boucle suivante. Si défini sur 1, le comportement sera comme si ce script n'était pas utilisé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Final denoising strength\",\n      \"localized\": \"Force de débruitage finale\",\n      \"reload\": \"\",\n      \"hint\": \"La force de débruitage pour la dernière boucle de chaque image du lot\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoising strength curve\",\n      \"localized\": \"Courbe de force de débruitage\",\n      \"reload\": \"\",\n      \"hint\": \"La courbe de débruitage contrôle le taux de changement de la force de débruitage à chaque boucle. Agressif : La majeure partie du changement se produira vers le début des boucles. Linéaire : Le changement sera constant tout au long des boucles. Lent : La majeure partie du changement se produira vers la fin des boucles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Tile overlap\",\n      \"localized\": \"Chevauchement des tuiles\",\n      \"reload\": \"\",\n      \"hint\": \"Pour l'upscaling SD, quel est le chevauchement en pixels entre les tuiles. Les tuiles se chevauchent afin qu'une fois fusionnées en une seule image, il n'y ait pas de joint visible\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Color to Mask\",\n      \"localized\": \"ACI : Couleur vers masque\",\n      \"reload\": \"\",\n      \"hint\": \"Choisissez la couleur que vous souhaitez masquer et inpainter. Cliquez sur la couleur dans l'image pour la sélectionner automatiquement.\\n Il est conseillé d'utiliser des images comme des fonds verts pour obtenir des résultats précis.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Color Tolerance\",\n      \"localized\": \"ACI : Tolérance de couleur\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustez la tolérance pour inclure des couleurs similaires dans le masque. Des valeurs plus basses = masque uniquement des couleurs très similaires. Des valeurs plus élevées = masque une plus grande gamme de couleurs similaires.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Mask Erode\",\n      \"localized\": \"ACI : Érosion du masque\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustez le remplissage pour appliquer un décalage interne au masque. (Valeur recommandée = 2 pour éliminer les résidus aux bords)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Mask Blur\",\n      \"localized\": \"ACI : Flou du masque\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustez le flou pour appliquer une transition douce entre l'image et la zone inpaintée. (Valeur recommandée = 0 pour la netteté)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Denoising Strength\",\n      \"localized\": \"ACI : Force de débruitage\",\n      \"reload\": \"\",\n      \"hint\": \"Changez la force de débruitage pour obtenir la quantité d'inpainting désirée.\"\n    }\n  ],\n  \"settings\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Apply settings\",\n      \"localized\": \"Appliquer les paramètres\",\n      \"reload\": \"\",\n      \"hint\": \"Enregistrer les paramètres actuels, un redémarrage du serveur est recommandé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Loading\",\n      \"localized\": \"Chargement du modèle\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres liés à la manière dont le modèle est chargé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Options\",\n      \"localized\": \"Options du modèle\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres liés au comportement de modèles spécifiques\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Offloading\",\n      \"localized\": \"Déchargement du modèle\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres liés au déchargement du modèle et à la gestion de la mémoire\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Quantization\",\n      \"localized\": \"Quantification du modèle\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres liés à la quantification du modèle, utilisée pour réduire l'utilisation de la mémoire\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Metadata\",\n      \"localized\": \"Métadonnées d'image\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres liés à la gestion des métadonnées créées avec les images générées\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Legacy Options\",\n      \"localized\": \"Options héritées\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres liés aux options héritées - ne devraient pas être utilisés\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restart server\",\n      \"localized\": \"Redémarrer le serveur\",\n      \"reload\": \"\",\n      \"hint\": \"Redémarrer le serveur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Shutdown server\",\n      \"localized\": \"Arrêter le serveur\",\n      \"reload\": \"\",\n      \"hint\": \"Arrêter le serveur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Preview theme\",\n      \"localized\": \"Aperçu du thème\",\n      \"reload\": \"\",\n      \"hint\": \"Afficher l'aperçu du thème\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore defaults\",\n      \"localized\": \"Restaurer les valeurs par défaut\",\n      \"reload\": \"\",\n      \"hint\": \"Restaurer les paramètres par défaut du serveur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Unload model\",\n      \"localized\": \"Décharger le modèle\",\n      \"reload\": \"\",\n      \"hint\": \"Décharger le modèle actuellement chargé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reload model\",\n      \"localized\": \"Recharger le modèle\",\n      \"reload\": \"\",\n      \"hint\": \"Recharger le modèle actuellement sélectionné\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models & Loading\",\n      \"localized\": \"Modèles et chargement\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres liés aux modèles de base, au backend principal et au comportement de chargement du modèle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variational Auto Encoder\",\n      \"localized\": \"Auto-encodeur variationnel\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres liés à l'Auto-encodeur variationnel et au processus de décodage d'image lors de la génération\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Text encoder\",\n      \"localized\": \"Encodeur de texte\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres liés à l'encodeur de texte et au traitement d'encodage de l'invite lors de la génération\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Compute Settings\",\n      \"localized\": \"Paramètres de calcul\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres liés à la précision de calcul, à l'attention croisée et aux optimisations pour les plateformes de calcul\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Backend Settings\",\n      \"localized\": \"Paramètres du backend\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres liés aux backends de calcul : torch, onnx et olive\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Quantization Settings\",\n      \"localized\": \"Paramètres de quantification\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres liés à la quantification du modèle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Pipeline modifiers\",\n      \"localized\": \"Modificateurs de pipeline\",\n      \"reload\": \"\",\n      \"hint\": \"Fonctionnalités supplémentaires pouvant être activées lors de la génération\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model compile\",\n      \"localized\": \"Compilation du modèle\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres liés aux différentes méthodes de compilation de modèles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System Paths\",\n      \"localized\": \"Chemins système\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres liés à l'emplacement des différents répertoires de modèles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Options\",\n      \"localized\": \"Options d'image\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres liés au format d'image, aux métadonnées et aux grilles d'images\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Paths\",\n      \"localized\": \"Chemins d'image\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres liés aux noms de fichiers d'image et aux répertoires de sortie\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Live Previews\",\n      \"localized\": \"Aperçus en direct\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres liés aux aperçus en direct, notification audio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sampler Settings\",\n      \"localized\": \"Paramètres de l'échantillonneur\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres liés à la sélection et à la configuration de l'échantillonneur, et à la configuration spécifique de l'échantillonneur de diffuseur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Postprocessing\",\n      \"localized\": \"Post-traitement\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres liés au post-traitement des images générées, à la restauration des visages et à l'upscaling\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control Options\",\n      \"localized\": \"Options de contrôle\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres liés à l'onglet Contrôle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Huggingface\",\n      \"localized\": \"Huggingface\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres liés à l'accès Huggingface\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show all pages\",\n      \"localized\": \"Afficher toutes les pages\",\n      \"reload\": \"\",\n      \"hint\": \"Afficher toutes les pages de paramètres\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Base model\",\n      \"localized\": \"Modèle de base\",\n      \"reload\": \"\",\n      \"hint\": \"Modèle principal utilisé pour toutes les opérations\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner model\",\n      \"localized\": \"Modèle de raffineur\",\n      \"reload\": \"\",\n      \"hint\": \"Modèle de raffineur utilisé pour les opérations de second passage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Cached models\",\n      \"localized\": \"Modèles mis en cache\",\n      \"reload\": \"\",\n      \"hint\": \"Le nombre de modèles à stocker en RAM pour un accès rapide\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE model\",\n      \"localized\": \"Modèle VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Le VAE aide avec les détails fins de l'image finale et peut également modifier les couleurs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model load using streams\",\n      \"localized\": \"Chargement du modèle par flux\",\n      \"reload\": \"\",\n      \"hint\": \"Lors du chargement des modèles, tentez un chargement en flux optimisé pour le stockage lent ou réseau\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xFormers\",\n      \"localized\": \"xFormers\",\n      \"reload\": \"\",\n      \"hint\": \"Optimisation de la mémoire. Non-déterministe (résultats différents à chaque fois)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scaled-Dot-Product\",\n      \"localized\": \"Produit scalaire\",\n      \"reload\": \"\",\n      \"hint\": \"Optimisation de la mémoire. Non-déterministe, sauf si l'attention de la mémoire SDP est désactivée.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt padding\",\n      \"localized\": \"Remplissage de l'invite\",\n      \"reload\": \"\",\n      \"hint\": \"Augmente la cohérence en ajoutant un remplissage à partir de la dernière virgule dans n jetons lors de l'utilisation de plus de 75 jetons\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Original\",\n      \"localized\": \"Original\",\n      \"reload\": \"\",\n      \"hint\": \"Backend LDM original\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Autocast\",\n      \"localized\": \"Autocast\",\n      \"reload\": \"\",\n      \"hint\": \"Détermine automatiquement la précision pendant l'exécution\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full\",\n      \"localized\": \"Complet\",\n      \"reload\": \"\",\n      \"hint\": \"Toujours utiliser la pleine précision\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"FP32\",\n      \"localized\": \"FP32\",\n      \"reload\": \"\",\n      \"hint\": \"Utiliser la précision de virgule flottante 32 bits pour les calculs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"FP16\",\n      \"localized\": \"FP16\",\n      \"reload\": \"\",\n      \"hint\": \"Utiliser la précision de virgule flottante 16 bits pour les calculs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"BF16\",\n      \"localized\": \"BF16\",\n      \"reload\": \"\",\n      \"hint\": \"Utiliser la précision de virgule flottante 16 bits modifiée pour les calculs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full precision (--no-half-vae)\",\n      \"localized\": \"Pleine précision (--no-half-vae)\",\n      \"reload\": \"\",\n      \"hint\": \"Utilise FP32 pour le VAE. Peut produire de meilleurs résultats tout en utilisant plus de VRAM et une génération plus lente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Force full precision (--no-half)\",\n      \"localized\": \"Forcer la pleine précision (--no-half)\",\n      \"reload\": \"\",\n      \"hint\": \"Utilise FP32 pour le modèle. Peut produire de meilleurs résultats tout en utilisant plus de VRAM et une génération plus lente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upcast sampling\",\n      \"localized\": \"Échantillonnage Upcast\",\n      \"reload\": \"\",\n      \"hint\": \"Produit généralement des résultats similaires à --no-half avec de meilleures performances tout en utilisant moins de mémoire\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Attempt VAE roll back for NaN values\",\n      \"localized\": \"Tenter un retour arrière VAE pour les valeurs NaN\",\n      \"reload\": \"\",\n      \"hint\": \"Nécessite Torch 2.1 et la vérification NaN activée\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive use FP16 on optimization\",\n      \"localized\": \"Olive utilise FP16 lors de l'optimisation\",\n      \"reload\": \"\",\n      \"hint\": \"Utilise la précision de virgule flottante 16 bits pour le modèle de sortie du processus d'optimisation Olive. Utilise la précision de virgule flottante 32 bits si désactivé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive force FP32 for VAE Encoder\",\n      \"localized\": \"Olive force FP32 pour l'encodeur VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Utilise la précision de virgule flottante 32 bits pour l'encodeur VAE du modèle de sortie. Cela remplace l'option 'utiliser FP16 sur l'optimisation'. Si vous obtenez des NaN ou des images noires vides de Img2Img, activez cette option et supprimez le cache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive use static dimensions\",\n      \"localized\": \"Olive utilise des dimensions statiques\",\n      \"reload\": \"\",\n      \"hint\": \"Rend l'inférence avec les modèles optimisés par Olive beaucoup plus rapide. (OrtTransformersOptimization)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive cache optimized models\",\n      \"localized\": \"Olive met en cache les modèles optimisés\",\n      \"reload\": \"\",\n      \"hint\": \"Enregistre les modèles traités par Olive comme un cache. Vous pouvez les gérer dans l'onglet ONNX\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"File format\",\n      \"localized\": \"Format de fichier\",\n      \"reload\": \"\",\n      \"hint\": \"Sélectionner le format de fichier pour les images\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Include metadata\",\n      \"localized\": \"Inclure les métadonnées\",\n      \"reload\": \"\",\n      \"hint\": \"Enregistrer les paramètres de création d'image comme balises de métadonnées à l'intérieur du fichier image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Images filename pattern\",\n      \"localized\": \"Modèle de nom de fichier d'images\",\n      \"reload\": \"\",\n      \"hint\": \"Utilisez les balises suivantes pour définir comment les noms de fichiers d'images sont choisis:<br><pre>seq, uuid<br>date, datetime, job_timestamp<br>generation_number, batch_number<br>model, model_shortname<br>model_hash, model_name<br>sampler, seed, steps, cfg<br>clip_skip, denoising<br>hasprompt, prompt, styles<br>prompt_hash, prompt_no_styles<br>prompt_spaces, prompt_words<br>height, width, image_hash<br></pre>\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Row count\",\n      \"localized\": \"Nombre de lignes\",\n      \"reload\": \"\",\n      \"hint\": \"Utilisez -1 pour la détection automatique et 0 pour qu'il soit identique à la taille du lot\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Directory name pattern\",\n      \"localized\": \"Modèle de nom de répertoire\",\n      \"reload\": \"\",\n      \"hint\": \"Utilisez les balises suivantes pour définir comment les sous-répertoires pour les images et les grilles sont choisis : [steps], [cfg],[prompt_hash], [prompt], [prompt_no_styles], [prompt_spaces], [width], [height], [styles], [sampler], [seed], [model_hash], [model_name], [prompt_words], [date], [datetime], [datetime<Format>], [datetime<Format><Time Zone>], [job_timestamp] ; laissez vide pour la valeur par défaut\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpainting conditioning mask strength\",\n      \"localized\": \"Force du masque de conditionnement d'inpainting\",\n      \"reload\": \"\",\n      \"hint\": \"Détermine la force avec laquelle masquer l'image originale pour l'inpainting et l'img2img. 1.0 signifie entièrement masqué (par défaut). 0.0 signifie un conditionnement entièrement non masqué. Des valeurs inférieures aideront à préserver la composition globale de l'image, mais auront du mal avec les grands changements\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Clip skip\",\n      \"localized\": \"Saut de Clip\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètre d'arrêt précoce pour le modèle CLIP ; 1 est l'arrêt à la dernière couche comme d'habitude, 2 est l'arrêt à l'avant-dernière couche, etc.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Images folder\",\n      \"localized\": \"Dossier d'images\",\n      \"reload\": \"\",\n      \"hint\": \"Si vide, utilise par défaut trois répertoires en dessous\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Grids folder\",\n      \"localized\": \"Dossier de grilles\",\n      \"reload\": \"\",\n      \"hint\": \"Si vide, utilise par défaut deux répertoires en dessous\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Quicksettings list\",\n      \"localized\": \"Liste des paramètres rapides\",\n      \"reload\": \"\",\n      \"hint\": \"Liste des noms de paramètres, séparés par des virgules, pour les paramètres qui devraient apparaître dans la barre d'accès rapide en haut plutôt que dans l'onglet des paramètres\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Live preview display period\",\n      \"localized\": \"Période d'affichage de l'aperçu en direct\",\n      \"reload\": \"\",\n      \"hint\": \"Demande une image d'aperçu toutes les n étapes, mettre à 0 pour désactiver\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Approximate\",\n      \"localized\": \"Approximation\",\n      \"reload\": \"\",\n      \"hint\": \"Approximation de réseau neuronal bon marché. Très rapide comparé au VAE, mais produit des images avec une résolution horizontale/verticale 4 fois plus petite et une qualité inférieure\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Simple\",\n      \"localized\": \"Simple\",\n      \"reload\": \"\",\n      \"hint\": \"Approximation très bon marché. Très rapide comparé au VAE, mais produit des images avec une résolution horizontale/verticale 8 fois plus petite et une qualité extrêmement faible\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Progress update period\",\n      \"localized\": \"Période de mise à jour de la progression\",\n      \"reload\": \"\",\n      \"hint\": \"Période de mise à jour de la barre de progression de l'interface utilisateur et des vérifications de prévisualisation, en millisecondes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Euler a\",\n      \"localized\": \"Euler a\",\n      \"reload\": \"\",\n      \"hint\": \"Euler Ancestral - très créatif, chacun peut obtenir une image complètement différente selon le nombre d'étapes, définir des étapes supérieures à 30-40 n'aide pas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"DDIM\",\n      \"localized\": \"DDIM\",\n      \"reload\": \"\",\n      \"hint\": \"Modèles implicites de diffusion de débruitage - les meilleurs pour l'inpainting\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"UniPC\",\n      \"localized\": \"UniPC\",\n      \"reload\": \"\",\n      \"hint\": \"Cadre unifié prédicteur-correcteur pour un échantillonnage rapide des modèles de diffusion\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sigma negative guidance minimum\",\n      \"localized\": \"Minimum de guidage négatif Sigma\",\n      \"reload\": \"\",\n      \"hint\": \"Ignorer l'invite négative pour certaines étapes lorsque l'image est presque prête, 0=désactivé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler tile size\",\n      \"localized\": \"Taille des tuiles d'upscaler\",\n      \"reload\": \"\",\n      \"hint\": \"0 = pas de mosaïque\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler tile overlap\",\n      \"localized\": \"Chevauchement des tuiles d'upscaler\",\n      \"reload\": \"\",\n      \"hint\": \"Faibles valeurs = couture visible\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"GFPGAN\",\n      \"localized\": \"GFPGAN\",\n      \"reload\": \"\",\n      \"hint\": \"Restaurer les visages de faible qualité à l'aide du réseau neuronal GFPGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CodeFormer\",\n      \"localized\": \"CodeFormer\",\n      \"reload\": \"\",\n      \"hint\": \"Restaurer les visages de faible qualité à l'aide du réseau neuronal Codeformer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CodeFormer weight parameter\",\n      \"localized\": \"Paramètre de poids CodeFormer\",\n      \"reload\": \"\",\n      \"hint\": \"0 = effet maximum ; 1 = effet minimum\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ToMe token merging ratio\",\n      \"localized\": \"Ratio de fusion de jetons ToMe\",\n      \"reload\": \"\",\n      \"hint\": \"Activer la fusion de jetons redondants via tomesd pour des améliorations de vitesse et de mémoire, 0=désactivé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Todo token merging ratio\",\n      \"localized\": \"Ratio de fusion de jetons Todo\",\n      \"reload\": \"\",\n      \"hint\": \"Activer la fusion de jetons redondants via todo pour des améliorations de vitesse et de mémoire, 0=désactivé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model pipeline\",\n      \"localized\": \"Pipeline de modèle\",\n      \"reload\": \"\",\n      \"hint\": \"Si l'autodétection ne détecte pas le modèle automatiquement, sélectionnez le type de modèle avant de charger un modèle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE slicing\",\n      \"localized\": \"Découpage VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Décode les latents par lot une image à la fois avec une VRAM limitée. Petit gain de performance dans le décodage VAE sur les lots multi-images\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE tiling\",\n      \"localized\": \"Tuilage VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Divise les grandes images en tuiles qui se chevauchent avec une VRAM limitée. Entraîne une légère augmentation du temps de traitement\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Dynamic attention BMM\",\n      \"localized\": \"Attention dynamique BMM\",\n      \"reload\": \"\",\n      \"hint\": \"Effectue le calcul de l'attention par étapes plutôt qu'en une seule fois. Temps d'inférence plus lents, mais utilisation de la mémoire considérablement réduite\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX Execution Provider\",\n      \"localized\": \"Fournisseur d'exécution ONNX\",\n      \"reload\": \"\",\n      \"hint\": \"Fournisseur d'exécution ONNX\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX allow fallback to CPU\",\n      \"localized\": \"ONNX autoriser le recours au CPU\",\n      \"reload\": \"\",\n      \"hint\": \"Permettre le recours au CPU si le fournisseur d'exécution sélectionné a échoué\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX cache converted models\",\n      \"localized\": \"ONNX met en cache les modèles convertis\",\n      \"reload\": \"\",\n      \"hint\": \"Enregistre les modèles convertis au format ONNX comme un cache. Vous pouvez les gérer dans l'onglet ONNX\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX unload base model when processing refiner\",\n      \"localized\": \"ONNX décharge le modèle de base lors du traitement du raffineur\",\n      \"reload\": \"\",\n      \"hint\": \"Décharge le modèle de base lorsque le raffineur est en cours de conversion/optimisation/traitement\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inference-mode\",\n      \"localized\": \"Mode inférence\",\n      \"reload\": \"\",\n      \"hint\": \"Utiliser torch.inference_mode\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"no-grad\",\n      \"localized\": \"no-grad\",\n      \"reload\": \"\",\n      \"hint\": \"Utiliser torch.no_grad\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model compile precompile\",\n      \"localized\": \"Précompilation du modèle\",\n      \"reload\": \"\",\n      \"hint\": \"Exécuter la compilation du modèle immédiatement au chargement du modèle au lieu de la première utilisation\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Use zeros for prompt padding\",\n      \"localized\": \"Utiliser des zéros pour le remplissage de l'invite\",\n      \"reload\": \"\",\n      \"hint\": \"Force un tenseur entièrement nul lorsque l'invite est vide pour supprimer tout bruit résiduel\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Include invisible watermark\",\n      \"localized\": \"Inclure un filigrane invisible\",\n      \"reload\": \"\",\n      \"hint\": \"Ajouter un filigrane invisible à l'image en modifiant certaines valeurs de pixels\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invisible watermark string\",\n      \"localized\": \"Chaîne de filigrane invisible\",\n      \"reload\": \"\",\n      \"hint\": \"Chaîne de filigrane à ajouter à l'image. Garder très courte pour éviter la corruption d'image.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show log view\",\n      \"localized\": \"afficher la vue des journaux\",\n      \"reload\": \"\",\n      \"hint\": \"Afficher la vue des journaux en bas de la fenêtre principale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Log view update period\",\n      \"localized\": \"Période de mise à jour de la vue des journaux\",\n      \"reload\": \"\",\n      \"hint\": \"Période de mise à jour de la vue des journaux, en millisecondes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"PAG layer names\",\n      \"localized\": \"Noms des couches PAG\",\n      \"reload\": \"\",\n      \"hint\": \"Liste de couches séparées par des espaces<br>Disponible : d[0-5], m[0], u[0-8]<br>Par défaut : m0\"\n    }\n  ],\n  \"missing\": [\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage\",\n      \"localized\": \"1ère étape\",\n      \"reload\": \"\",\n      \"hint\": \"1ère étape\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage backbone\",\n      \"localized\": \"Dorsale de la 1ère étape\",\n      \"reload\": \"\",\n      \"hint\": \"Dorsale de la 1ère étape\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage skip\",\n      \"localized\": \"Saut de la 1ère étape\",\n      \"reload\": \"\",\n      \"hint\": \"Saut de la 1ère étape\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd restart step\",\n      \"localized\": \"2ème étape de redémarrage\",\n      \"reload\": \"\",\n      \"hint\": \"2ème étape de redémarrage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd scale\",\n      \"localized\": \"2ème échelle\",\n      \"reload\": \"\",\n      \"hint\": \"2ème échelle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage\",\n      \"localized\": \"2ème étape\",\n      \"reload\": \"\",\n      \"hint\": \"2ème étape\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage backbone\",\n      \"localized\": \"Dorsale de la 2ème étape\",\n      \"reload\": \"\",\n      \"hint\": \"Dorsale de la 2ème étape\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage skip\",\n      \"localized\": \"Saut de la 2ème étape\",\n      \"reload\": \"\",\n      \"hint\": \"Saut de la 2ème étape\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd restart step\",\n      \"localized\": \"3ème étape de redémarrage\",\n      \"reload\": \"\",\n      \"hint\": \"3ème étape de redémarrage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd scale\",\n      \"localized\": \"3ème échelle\",\n      \"reload\": \"\",\n      \"hint\": \"3ème échelle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd stage\",\n      \"localized\": \"3ème étape\",\n      \"reload\": \"\",\n      \"hint\": \"3ème étape\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th restart step\",\n      \"localized\": \"4ème étape de redémarrage\",\n      \"reload\": \"\",\n      \"hint\": \"4ème étape de redémarrage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th scale\",\n      \"localized\": \"4ème échelle\",\n      \"reload\": \"\",\n      \"hint\": \"4ème échelle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th stage\",\n      \"localized\": \"4ème étape\",\n      \"reload\": \"\",\n      \"hint\": \"4ème étape\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"a1111\",\n      \"localized\": \"a1111\",\n      \"reload\": \"\",\n      \"hint\": \"a1111\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"accuracy\",\n      \"localized\": \"Précision\",\n      \"reload\": \"\",\n      \"hint\": \"Précision\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aci: mask dilate\",\n      \"localized\": \"aci : dilatation du masque\",\n      \"reload\": \"\",\n      \"hint\": \"aci : dilatation du masque\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"active\",\n      \"localized\": \"Actif\",\n      \"reload\": \"\",\n      \"hint\": \"Actif\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adain\",\n      \"localized\": \"Adain\",\n      \"reload\": \"\",\n      \"hint\": \"Adain\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 1\",\n      \"localized\": \"Adaptateur 1\",\n      \"reload\": \"\",\n      \"hint\": \"Adaptateur 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 2\",\n      \"localized\": \"Adaptateur 2\",\n      \"reload\": \"\",\n      \"hint\": \"Adaptateur 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 3\",\n      \"localized\": \"Adaptateur 3\",\n      \"reload\": \"\",\n      \"hint\": \"Adaptateur 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 4\",\n      \"localized\": \"Adaptateur 4\",\n      \"reload\": \"\",\n      \"hint\": \"Adaptateur 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adaptive restore\",\n      \"localized\": \"Restauration adaptative\",\n      \"reload\": \"\",\n      \"hint\": \"Restauration adaptative\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"add text info\",\n      \"localized\": \"Ajouter des informations textuelles\",\n      \"reload\": \"\",\n      \"hint\": \"Ajouter des informations textuelles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"add time info\",\n      \"localized\": \"Ajouter des informations temporelles\",\n      \"reload\": \"\",\n      \"hint\": \"Ajouter des informations temporelles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"additional image browser folders\",\n      \"localized\": \"Dossiers supplémentaires du navigateur d'images\",\n      \"reload\": \"\",\n      \"hint\": \"Dossiers supplémentaires du navigateur d'images\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"additional postprocessing operations\",\n      \"localized\": \"Opérations de post-traitement supplémentaires\",\n      \"reload\": \"\",\n      \"hint\": \"Opérations de post-traitement supplémentaires\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"advanced options\",\n      \"localized\": \"Options avancées\",\n      \"reload\": \"\",\n      \"hint\": \"Options avancées\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"after\",\n      \"localized\": \"Après\",\n      \"reload\": \"\",\n      \"hint\": \"Après\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aggressive at step\",\n      \"localized\": \"Agressif à l'étape\",\n      \"reload\": \"\",\n      \"hint\": \"Agressif à l'étape\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alias\",\n      \"localized\": \"Alias\",\n      \"reload\": \"\",\n      \"hint\": \"Alias\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"all\",\n      \"localized\": \"Tout\",\n      \"reload\": \"\",\n      \"hint\": \"Tout\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"allowed aspect ratios\",\n      \"localized\": \"Rapports d'aspect autorisés\",\n      \"reload\": \"\",\n      \"hint\": \"Rapports d'aspect autorisés\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha\",\n      \"localized\": \"Alpha\",\n      \"reload\": \"\",\n      \"hint\": \"Alpha\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha block weight preset\",\n      \"localized\": \"Préréglage du poids de bloc alpha\",\n      \"reload\": \"\",\n      \"hint\": \"Préréglage du poids de bloc alpha\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha matting\",\n      \"localized\": \"Incrustation alpha\",\n      \"reload\": \"\",\n      \"hint\": \"Incrustation alpha\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha preset\",\n      \"localized\": \"Préréglage alpha\",\n      \"reload\": \"\",\n      \"hint\": \"Préréglage alpha\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha ratio\",\n      \"localized\": \"Rapport alpha\",\n      \"reload\": \"\",\n      \"hint\": \"Rapport alpha\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"amplify lut\",\n      \"localized\": \"Amplifier la LUT\",\n      \"reload\": \"\",\n      \"hint\": \"Amplifier la LUT\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"analyze\",\n      \"localized\": \"Analyser\",\n      \"reload\": \"\",\n      \"hint\": \"Analyser\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"anchor settings\",\n      \"localized\": \"Paramètres d'ancrage\",\n      \"reload\": \"\",\n      \"hint\": \"Paramètres d'ancrage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"animateddiff\",\n      \"localized\": \"AnimatedDiff\",\n      \"reload\": \"\",\n      \"hint\": \"AnimatedDiff\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"answer\",\n      \"localized\": \"Réponse\",\n      \"reload\": \"\",\n      \"hint\": \"Réponse\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aot_ts_nvfuser\",\n      \"localized\": \"aot_ts_nvfuser\",\n      \"reload\": \"\",\n      \"hint\": \"aot_ts_nvfuser\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"appearance\",\n      \"localized\": \"Apparence\",\n      \"reload\": \"\",\n      \"hint\": \"Apparence\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append caption files\",\n      \"localized\": \"Ajouter des fichiers de légende\",\n      \"reload\": \"\",\n      \"hint\": \"Ajouter des fichiers de légende\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append image info json file\",\n      \"localized\": \"Ajouter le fichier JSON d'infos image\",\n      \"reload\": \"\",\n      \"hint\": \"Ajouter le fichier JSON d'infos image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append interrogated prompt at each iteration\",\n      \"localized\": \"Ajouter l'invite interrogée à chaque itération\",\n      \"reload\": \"\",\n      \"hint\": \"Ajouter l'invite interrogée à chaque itération\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply color correction\",\n      \"localized\": \"Appliquer la correction des couleurs\",\n      \"reload\": \"\",\n      \"hint\": \"Appliquer la correction des couleurs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply filter\",\n      \"localized\": \"Appliquer le filtre\",\n      \"reload\": \"\",\n      \"hint\": \"Appliquer le filtre\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply linfusion distillation on load\",\n      \"localized\": \"Appliquer la distillation Linfusion au chargement\",\n      \"reload\": \"\",\n      \"hint\": \"Appliquer la distillation Linfusion au chargement\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply mask as overlay\",\n      \"localized\": \"Appliquer le masque comme superposition\",\n      \"reload\": \"\",\n      \"hint\": \"Appliquer le masque comme superposition\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply msw-msa\",\n      \"localized\": \"Appliquer MSW-MSA\",\n      \"reload\": \"\",\n      \"hint\": \"Appliquer MSW-MSA\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply rau-net\",\n      \"localized\": \"Appliquer RAU-Net\",\n      \"reload\": \"\",\n      \"hint\": \"Appliquer RAU-Net\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply to model\",\n      \"localized\": \"Appliquer au modèle\",\n      \"reload\": \"\",\n      \"hint\": \"Appliquer au modèle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"artists\",\n      \"localized\": \"Artistes\",\n      \"reload\": \"\",\n      \"hint\": \"Artistes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"atiadlxx (amd only)\",\n      \"localized\": \"atiadlxx (AMD uniquement)\",\n      \"reload\": \"\",\n      \"hint\": \"atiadlxx (AMD uniquement)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention\",\n      \"localized\": \"Attention\",\n      \"reload\": \"\",\n      \"hint\": \"Attention\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention adain\",\n      \"localized\": \"Attention Adain\",\n      \"reload\": \"\",\n      \"hint\": \"Attention Adain\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention cache enabled\",\n      \"localized\": \"Cache d'attention activé\",\n      \"reload\": \"\",\n      \"hint\": \"Cache d'attention activé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention chunking threshold\",\n      \"localized\": \"Seuil de découpage de l'attention\",\n      \"reload\": \"\",\n      \"hint\": \"Seuil de découpage de l'attention\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention kv chunk size\",\n      \"localized\": \"Taille de fragment KV d'attention\",\n      \"reload\": \"\",\n      \"hint\": \"Taille de fragment KV d'attention\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention query chunk size\",\n      \"localized\": \"Taille de fragment de requête d'attention\",\n      \"reload\": \"\",\n      \"hint\": \"Taille de fragment de requête d'attention\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto\",\n      \"localized\": \"Auto\",\n      \"reload\": \"\",\n      \"hint\": \"Auto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto apply\",\n      \"localized\": \"Appliquer auto\",\n      \"reload\": \"\",\n      \"hint\": \"Appliquer auto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-convert sd15 embeddings to sdxl\",\n      \"localized\": \"Convertir automatiquement les embeddings SD15 en SDXL\",\n      \"reload\": \"\",\n      \"hint\": \"Convertir automatiquement les embeddings SD15 en SDXL\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-mask\",\n      \"localized\": \"Masque automatique\",\n      \"reload\": \"\",\n      \"hint\": \"Masque automatique\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-segment\",\n      \"localized\": \"Segmentation automatique\",\n      \"reload\": \"\",\n      \"hint\": \"Segmentation automatique\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"autolaunch browser upon startup\",\n      \"localized\": \"Lancer automatiquement le navigateur au démarrage\",\n      \"reload\": \"\",\n      \"hint\": \"Lancer automatiquement le navigateur au démarrage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"automatically determine rank\",\n      \"localized\": \"Déterminer automatiquement le rang\",\n      \"reload\": \"\",\n      \"hint\": \"Déterminer automatiquement le rang\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"autorank ratio\",\n      \"localized\": \"Rapport d'autorank\",\n      \"reload\": \"\",\n      \"hint\": \"Rapport d'autorank\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"available networks\",\n      \"localized\": \"Réseaux disponibles\",\n      \"reload\": \"\",\n      \"hint\": \"Réseaux disponibles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"backend\",\n      \"localized\": \"Backend\",\n      \"reload\": \"\",\n      \"hint\": \"Backend\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"backend storage\",\n      \"localized\": \"Stockage backend\",\n      \"reload\": \"\",\n      \"hint\": \"Stockage backend\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"background threshold\",\n      \"localized\": \"Seuil d'arrière-plan\",\n      \"reload\": \"\",\n      \"hint\": \"Seuil d'arrière-plan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced\",\n      \"localized\": \"Équilibré\",\n      \"reload\": \"\",\n      \"hint\": \"Équilibré\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload cpu high watermark\",\n      \"localized\": \"Seuil haut de déchargement CPU équilibré\",\n      \"reload\": \"\",\n      \"hint\": \"Seuil haut de déchargement CPU équilibré\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload gpu high watermark\",\n      \"localized\": \"Seuil haut de déchargement GPU équilibré\",\n      \"reload\": \"\",\n      \"hint\": \"Seuil haut de déchargement GPU équilibré\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload gpu low watermark\",\n      \"localized\": \"Seuil bas de déchargement GPU équilibré\",\n      \"reload\": \"\",\n      \"hint\": \"Seuil bas de déchargement GPU équilibré\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"base\",\n      \"localized\": \"Base\",\n      \"reload\": \"\",\n      \"hint\": \"Base\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch caption\",\n      \"localized\": \"Légende par lot\",\n      \"reload\": \"\",\n      \"hint\": \"Légende par lot\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch input directory\",\n      \"localized\": \"Répertoire d'entrée par lot\",\n      \"reload\": \"\",\n      \"hint\": \"Répertoire d'entrée par lot\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch interogate\",\n      \"localized\": \"Interroger par lot\",\n      \"reload\": \"\",\n      \"hint\": \"Interroger par lot\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch interrogate\",\n      \"localized\": \"Interroger par lot\",\n      \"reload\": \"\",\n      \"hint\": \"Interroger par lot\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch mask directory\",\n      \"localized\": \"Répertoire de masques par lot\",\n      \"reload\": \"\",\n      \"hint\": \"Répertoire de masques par lot\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch matrix-matrix\",\n      \"localized\": \"Matrice-matrice par lot\",\n      \"reload\": \"\",\n      \"hint\": \"Matrice-matrice par lot\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch mode uses sequential seeds\",\n      \"localized\": \"Le mode lot utilise des graines séquentielles\",\n      \"reload\": \"\",\n      \"hint\": \"Le mode lot utilise des graines séquentielles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch output directory\",\n      \"localized\": \"Répertoire de sortie par lot\",\n      \"reload\": \"\",\n      \"hint\": \"Répertoire de sortie par lot\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch uses original name\",\n      \"localized\": \"Le lot utilise le nom original\",\n      \"reload\": \"\",\n      \"hint\": \"Le lot utilise le nom original\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bdia ddim\",\n      \"localized\": \"BDIA DDIM\",\n      \"reload\": \"\",\n      \"hint\": \"BDIA DDIM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"before\",\n      \"localized\": \"Avant\",\n      \"reload\": \"\",\n      \"hint\": \"Avant\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"benchmark level\",\n      \"localized\": \"Niveau de benchmark\",\n      \"reload\": \"\",\n      \"hint\": \"Niveau de benchmark\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"benchmark steps\",\n      \"localized\": \"Étapes de benchmark\",\n      \"reload\": \"\",\n      \"hint\": \"Étapes de benchmark\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta block weight preset\",\n      \"localized\": \"Préréglage du poids de bloc bêta\",\n      \"reload\": \"\",\n      \"hint\": \"Préréglage du poids de bloc bêta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta end\",\n      \"localized\": \"Fin bêta\",\n      \"reload\": \"\",\n      \"hint\": \"Fin bêta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta ratio\",\n      \"localized\": \"Rapport bêta\",\n      \"reload\": \"\",\n      \"hint\": \"Rapport bêta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta schedule\",\n      \"localized\": \"Calendrier bêta\",\n      \"reload\": \"\",\n      \"hint\": \"Calendrier bêta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta start\",\n      \"localized\": \"Début bêta\",\n      \"reload\": \"\",\n      \"hint\": \"Début bêta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bh1\",\n      \"localized\": \"BH1\",\n      \"reload\": \"\",\n      \"hint\": \"BH1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bh2\",\n      \"localized\": \"bh2\",\n      \"reload\": \"\",\n      \"hint\": \"bh2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"block\",\n      \"localized\": \"bloc\",\n      \"reload\": \"\",\n      \"hint\": \"bloc\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"block skip range\",\n      \"localized\": \"plage de saut de bloc\",\n      \"reload\": \"\",\n      \"hint\": \"plage de saut de bloc\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"blur\",\n      \"localized\": \"flou\",\n      \"reload\": \"\",\n      \"hint\": \"flou\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"body\",\n      \"localized\": \"corps\",\n      \"reload\": \"\",\n      \"hint\": \"corps\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"boost\",\n      \"localized\": \"boost\",\n      \"reload\": \"\",\n      \"hint\": \"boost\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"brightness\",\n      \"localized\": \"luminosité\",\n      \"reload\": \"\",\n      \"hint\": \"luminosité\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cache model\",\n      \"localized\": \"modèle de cache\",\n      \"reload\": \"\",\n      \"hint\": \"modèle de cache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cache text encoder results\",\n      \"localized\": \"mettre en cache les résultats de l'encodeur de texte\",\n      \"reload\": \"\",\n      \"hint\": \"mettre en cache les résultats de l'encodeur de texte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"canny\",\n      \"localized\": \"Canny\",\n      \"reload\": \"\",\n      \"hint\": \"Canny\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"caption\",\n      \"localized\": \"légende\",\n      \"reload\": \"\",\n      \"hint\": \"légende\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"caption model\",\n      \"localized\": \"modèle de légende\",\n      \"reload\": \"\",\n      \"hint\": \"modèle de légende\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"center\",\n      \"localized\": \"centre\",\n      \"reload\": \"\",\n      \"hint\": \"centre\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change log\",\n      \"localized\": \"journal des modifications\",\n      \"reload\": \"\",\n      \"hint\": \"journal des modifications\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change model\",\n      \"localized\": \"changer de modèle\",\n      \"reload\": \"\",\n      \"hint\": \"changer de modèle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change rate\",\n      \"localized\": \"taux de changement\",\n      \"reload\": \"\",\n      \"hint\": \"taux de changement\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change reference\",\n      \"localized\": \"changer de référence\",\n      \"reload\": \"\",\n      \"hint\": \"changer de référence\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change refiner\",\n      \"localized\": \"changer de raffineur\",\n      \"reload\": \"\",\n      \"hint\": \"changer de raffineur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change vae\",\n      \"localized\": \"changer de VAE\",\n      \"reload\": \"\",\n      \"hint\": \"changer de VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"channels last\",\n      \"localized\": \"canaux en dernier\",\n      \"reload\": \"\",\n      \"hint\": \"canaux en dernier\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"check alternative hash\",\n      \"localized\": \"vérifier le hachage alternatif\",\n      \"reload\": \"\",\n      \"hint\": \"vérifier le hachage alternatif\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"check for updates\",\n      \"localized\": \"vérifier les mises à jour\",\n      \"reload\": \"\",\n      \"hint\": \"vérifier les mises à jour\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"check status\",\n      \"localized\": \"vérifier l'état\",\n      \"reload\": \"\",\n      \"hint\": \"vérifier l'état\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"chunk size\",\n      \"localized\": \"taille du bloc\",\n      \"reload\": \"\",\n      \"hint\": \"taille du bloc\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"civitai model type\",\n      \"localized\": \"type de modèle Civitai\",\n      \"reload\": \"\",\n      \"hint\": \"type de modèle Civitai\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"civitai token\",\n      \"localized\": \"jeton Civitai\",\n      \"reload\": \"\",\n      \"hint\": \"jeton Civitai\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ck flash attention\",\n      \"localized\": \"attention flash CK\",\n      \"reload\": \"\",\n      \"hint\": \"attention flash CK\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ckpt\",\n      \"localized\": \"ckpt\",\n      \"reload\": \"\",\n      \"hint\": \"ckpt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cleanup temporary folder on startup\",\n      \"localized\": \"nettoyer le dossier temporaire au démarrage\",\n      \"reload\": \"\",\n      \"hint\": \"nettoyer le dossier temporaire au démarrage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip model\",\n      \"localized\": \"modèle CLIP\",\n      \"reload\": \"\",\n      \"hint\": \"modèle CLIP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: chunk size\",\n      \"localized\": \"CLIP : taille du bloc\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP : taille du bloc\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: default captioner\",\n      \"localized\": \"CLIP : générateur de légendes par défaut\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP : générateur de légendes par défaut\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: default mode\",\n      \"localized\": \"CLIP : mode par défaut\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP : mode par défaut\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: default model\",\n      \"localized\": \"CLIP : modèle par défaut\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP : modèle par défaut\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: intermediate flavors\",\n      \"localized\": \"CLIP : variantes intermédiaires\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP : variantes intermédiaires\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: max flavors\",\n      \"localized\": \"CLIP : max. de variantes\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP : max. de variantes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: max length\",\n      \"localized\": \"CLIP : longueur max.\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP : longueur max.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: min flavors\",\n      \"localized\": \"CLIP : min. de variantes\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP : min. de variantes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: min length\",\n      \"localized\": \"CLIP : longueur min.\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP : longueur min.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: num beams\",\n      \"localized\": \"CLIP : nombre de faisceaux\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP : nombre de faisceaux\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"close\",\n      \"localized\": \"fermer\",\n      \"reload\": \"\",\n      \"hint\": \"fermer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cmsi\",\n      \"localized\": \"cmsi\",\n      \"reload\": \"\",\n      \"hint\": \"cmsi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn end\",\n      \"localized\": \"fin CN\",\n      \"reload\": \"\",\n      \"hint\": \"fin CN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn mode\",\n      \"localized\": \"mode CN\",\n      \"reload\": \"\",\n      \"hint\": \"mode CN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn start\",\n      \"localized\": \"début CN\",\n      \"reload\": \"\",\n      \"hint\": \"début CN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn strength\",\n      \"localized\": \"force CN\",\n      \"reload\": \"\",\n      \"hint\": \"force CN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn tiles\",\n      \"localized\": \"tuiles CN\",\n      \"reload\": \"\",\n      \"hint\": \"tuiles CN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"coarse\",\n      \"localized\": \"grossier\",\n      \"reload\": \"\",\n      \"hint\": \"grossier\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color\",\n      \"localized\": \"couleur\",\n      \"reload\": \"\",\n      \"hint\": \"couleur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color grading\",\n      \"localized\": \"étalonnage des couleurs\",\n      \"reload\": \"\",\n      \"hint\": \"étalonnage des couleurs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color map\",\n      \"localized\": \"carte des couleurs\",\n      \"reload\": \"\",\n      \"hint\": \"carte des couleurs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color variation\",\n      \"localized\": \"variation de couleur\",\n      \"reload\": \"\",\n      \"hint\": \"variation de couleur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"colormap\",\n      \"localized\": \"palette de couleurs\",\n      \"reload\": \"\",\n      \"hint\": \"palette de couleurs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"columns\",\n      \"localized\": \"colonnes\",\n      \"reload\": \"\",\n      \"hint\": \"colonnes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"comma\",\n      \"localized\": \"virgule\",\n      \"reload\": \"\",\n      \"hint\": \"virgule\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"comma separated list with optional strength per lora\",\n      \"localized\": \"liste séparée par des virgules avec force optionnelle par Lora\",\n      \"reload\": \"\",\n      \"hint\": \"liste séparée par des virgules avec force optionnelle par Lora\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"compact view\",\n      \"localized\": \"vue compacte\",\n      \"reload\": \"\",\n      \"hint\": \"vue compacte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"compel\",\n      \"localized\": \"compel\",\n      \"reload\": \"\",\n      \"hint\": \"compel\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"composite\",\n      \"localized\": \"composite\",\n      \"reload\": \"\",\n      \"hint\": \"composite\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"compress ratio\",\n      \"localized\": \"rapport de compression\",\n      \"reload\": \"\",\n      \"hint\": \"rapport de compression\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"concept tokens\",\n      \"localized\": \"jetons conceptuels\",\n      \"reload\": \"\",\n      \"hint\": \"jetons conceptuels\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context\",\n      \"localized\": \"contexte\",\n      \"reload\": \"\",\n      \"hint\": \"contexte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context after\",\n      \"localized\": \"contexte après\",\n      \"reload\": \"\",\n      \"hint\": \"contexte après\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context before\",\n      \"localized\": \"contexte avant\",\n      \"reload\": \"\",\n      \"hint\": \"contexte avant\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context mask\",\n      \"localized\": \"masque de contexte\",\n      \"reload\": \"\",\n      \"hint\": \"masque de contexte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"contrast\",\n      \"localized\": \"contraste\",\n      \"reload\": \"\",\n      \"hint\": \"contraste\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control factor\",\n      \"localized\": \"facteur de contrôle\",\n      \"reload\": \"\",\n      \"hint\": \"facteur de contrôle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control override denoise strength\",\n      \"localized\": \"contrôle de la force de débruitage de remplacement\",\n      \"reload\": \"\",\n      \"hint\": \"contrôle de la force de débruitage de remplacement\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control preprocess input images\",\n      \"localized\": \"contrôle du prétraitement des images d'entrée\",\n      \"reload\": \"\",\n      \"hint\": \"contrôle du prétraitement des images d'entrée\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 1\",\n      \"localized\": \"unité Control-LLLite 1\",\n      \"reload\": \"\",\n      \"hint\": \"unité Control-LLLite 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 2\",\n      \"localized\": \"unité Control-LLLite 2\",\n      \"reload\": \"\",\n      \"hint\": \"unité Control-LLLite 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 3\",\n      \"localized\": \"unité Control-LLLite 3\",\n      \"reload\": \"\",\n      \"hint\": \"unité Control-LLLite 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 4\",\n      \"localized\": \"unité Control-LLLite 4\",\n      \"reload\": \"\",\n      \"hint\": \"unité Control-LLLite 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet\",\n      \"localized\": \"ControlNet\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 1\",\n      \"localized\": \"unité ControlNet 1\",\n      \"reload\": \"\",\n      \"hint\": \"unité ControlNet 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 2\",\n      \"localized\": \"unité ControlNet 2\",\n      \"reload\": \"\",\n      \"hint\": \"unité ControlNet 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 3\",\n      \"localized\": \"unité ControlNet 3\",\n      \"reload\": \"\",\n      \"hint\": \"unité ControlNet 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 4\",\n      \"localized\": \"unité ControlNet 4\",\n      \"reload\": \"\",\n      \"hint\": \"unité ControlNet 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs\",\n      \"localized\": \"ControlNet-XS\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet-XS\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 1\",\n      \"localized\": \"unité ControlNet-XS 1\",\n      \"reload\": \"\",\n      \"hint\": \"unité ControlNet-XS 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 2\",\n      \"localized\": \"unité ControlNet-XS 2\",\n      \"reload\": \"\",\n      \"hint\": \"unité ControlNet-XS 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 3\",\n      \"localized\": \"unité ControlNet-XS 3\",\n      \"reload\": \"\",\n      \"hint\": \"unité ControlNet-XS 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 4\",\n      \"localized\": \"unité ControlNet-XS 4\",\n      \"reload\": \"\",\n      \"hint\": \"unité ControlNet-XS 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"correction mode\",\n      \"localized\": \"mode de correction\",\n      \"reload\": \"\",\n      \"hint\": \"mode de correction\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine background\",\n      \"localized\": \"fond cosinus\",\n      \"reload\": \"\",\n      \"hint\": \"fond cosinus\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale\",\n      \"localized\": \"échelle cosinus\",\n      \"reload\": \"\",\n      \"hint\": \"échelle cosinus\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale 1\",\n      \"localized\": \"échelle cosinus 1\",\n      \"reload\": \"\",\n      \"hint\": \"échelle cosinus 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale 2\",\n      \"localized\": \"échelle cosinus 2\",\n      \"reload\": \"\",\n      \"hint\": \"échelle cosinus 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale 3\",\n      \"localized\": \"échelle cosinus 3\",\n      \"reload\": \"\",\n      \"hint\": \"échelle cosinus 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"create image info text file\",\n      \"localized\": \"créer un fichier texte d'informations sur l'image\",\n      \"reload\": \"\",\n      \"hint\": \"créer un fichier texte d'informations sur l'image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"create video\",\n      \"localized\": \"créer une vidéo\",\n      \"reload\": \"\",\n      \"hint\": \"créer une vidéo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"create zip archive\",\n      \"localized\": \"créer une archive zip\",\n      \"reload\": \"\",\n      \"hint\": \"créer une archive zip\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cross-attention\",\n      \"localized\": \"attention croisée\",\n      \"reload\": \"\",\n      \"hint\": \"attention croisée\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cudagraphs\",\n      \"localized\": \"cudagraphs\",\n      \"reload\": \"\",\n      \"hint\": \"cudagraphs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cudamallocasync\",\n      \"localized\": \"cudamallocasync\",\n      \"reload\": \"\",\n      \"hint\": \"cudamallocasync\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"custom pipeline\",\n      \"localized\": \"pipeline personnalisé\",\n      \"reload\": \"\",\n      \"hint\": \"pipeline personnalisé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dark\",\n      \"localized\": \"sombre\",\n      \"reload\": \"\",\n      \"hint\": \"sombre\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dc solver\",\n      \"localized\": \"solveur DC\",\n      \"reload\": \"\",\n      \"hint\": \"solveur DC\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ddpm\",\n      \"localized\": \"DDPM\",\n      \"reload\": \"\",\n      \"hint\": \"DDPM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"debug info\",\n      \"localized\": \"informations de débogage\",\n      \"reload\": \"\",\n      \"hint\": \"informations de débogage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"decode\",\n      \"localized\": \"décoder\",\n      \"reload\": \"\",\n      \"hint\": \"décoder\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"decode chunks\",\n      \"localized\": \"décoder des morceaux\",\n      \"reload\": \"\",\n      \"hint\": \"décoder des morceaux\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deep-cache\",\n      \"localized\": \"deep-cache\",\n      \"reload\": \"\",\n      \"hint\": \"deep-cache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru\",\n      \"localized\": \"deepbooru\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: escape brackets\",\n      \"localized\": \"deepbooru : échapper les crochets\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru : échapper les crochets\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: exclude tags\",\n      \"localized\": \"deepbooru : exclure les tags\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru : exclure les tags\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: include scores in results\",\n      \"localized\": \"deepbooru : inclure les scores dans les résultats\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru : inclure les scores dans les résultats\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: max tags\",\n      \"localized\": \"deepbooru : tags max\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru : tags max\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: score threshold\",\n      \"localized\": \"deepbooru : seuil de score\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru : seuil de score\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: sort alphabetically\",\n      \"localized\": \"deepbooru : trier alphabétiquement\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru : trier alphabétiquement\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: use spaces for tags\",\n      \"localized\": \"deepbooru : utiliser des espaces pour les tags\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru : utiliser des espaces pour les tags\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepcache cache interval\",\n      \"localized\": \"intervalle de cache deepcache\",\n      \"reload\": \"\",\n      \"hint\": \"intervalle de cache deepcache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"default\",\n      \"localized\": \"par défaut\",\n      \"reload\": \"\",\n      \"hint\": \"par défaut\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deis\",\n      \"localized\": \"deis\",\n      \"reload\": \"\",\n      \"hint\": \"deis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"denoising batch size\",\n      \"localized\": \"taille du lot de débruitage\",\n      \"reload\": \"\",\n      \"hint\": \"taille du lot de débruitage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"denoising steps\",\n      \"localized\": \"étapes de débruitage\",\n      \"reload\": \"\",\n      \"hint\": \"étapes de débruitage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth and normal\",\n      \"localized\": \"profondeur et normale\",\n      \"reload\": \"\",\n      \"hint\": \"profondeur et normale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth anything\",\n      \"localized\": \"Depth Anything\",\n      \"reload\": \"\",\n      \"hint\": \"Depth Anything\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth map\",\n      \"localized\": \"carte de profondeur\",\n      \"reload\": \"\",\n      \"hint\": \"carte de profondeur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth threshold\",\n      \"localized\": \"seuil de profondeur\",\n      \"reload\": \"\",\n      \"hint\": \"seuil de profondeur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"description\",\n      \"localized\": \"description\",\n      \"reload\": \"\",\n      \"hint\": \"description\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"details\",\n      \"localized\": \"détails\",\n      \"reload\": \"\",\n      \"hint\": \"détails\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deterministic mode\",\n      \"localized\": \"mode déterministe\",\n      \"reload\": \"\",\n      \"hint\": \"mode déterministe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"device info\",\n      \"localized\": \"informations sur l'appareil\",\n      \"reload\": \"\",\n      \"hint\": \"informations sur l'appareil\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"diffusers\",\n      \"localized\": \"diffusers\",\n      \"reload\": \"\",\n      \"hint\": \"diffusers\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dilate\",\n      \"localized\": \"dilater\",\n      \"reload\": \"\",\n      \"hint\": \"dilater\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dilate tau\",\n      \"localized\": \"dilater tau\",\n      \"reload\": \"\",\n      \"hint\": \"dilater tau\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"directml retry ops for nan\",\n      \"localized\": \"directml réessayer les opérations pour nan\",\n      \"reload\": \"\",\n      \"hint\": \"directml réessayer les opérations pour nan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"directory for temporary images; leave empty for default\",\n      \"localized\": \"répertoire pour les images temporaires ; laisser vide pour la valeur par défaut\",\n      \"reload\": \"\",\n      \"hint\": \"répertoire pour les images temporaires ; laisser vide pour la valeur par défaut\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disable accelerate\",\n      \"localized\": \"désactiver accelerate\",\n      \"reload\": \"\",\n      \"hint\": \"désactiver accelerate\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disable conditional batching\",\n      \"localized\": \"désactiver le regroupement conditionnel\",\n      \"reload\": \"\",\n      \"hint\": \"désactiver le regroupement conditionnel\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disabled\",\n      \"localized\": \"désactivé\",\n      \"reload\": \"\",\n      \"hint\": \"désactivé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"discard penultimate sigma\",\n      \"localized\": \"rejeter l'avant-dernier sigma\",\n      \"reload\": \"\",\n      \"hint\": \"rejeter l'avant-dernier sigma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"distance threshold\",\n      \"localized\": \"seuil de distance\",\n      \"reload\": \"\",\n      \"hint\": \"seuil de distance\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"do not change selected model when reading generation parameters\",\n      \"localized\": \"ne pas changer le modèle sélectionné lors de la lecture des paramètres de génération\",\n      \"reload\": \"\",\n      \"hint\": \"ne pas changer le modèle sélectionné lors de la lecture des paramètres de génération\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"do not display video output in ui\",\n      \"localized\": \"ne pas afficher la sortie vidéo dans l'interface utilisateur\",\n      \"reload\": \"\",\n      \"hint\": \"ne pas afficher la sortie vidéo dans l'interface utilisateur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"down\",\n      \"localized\": \"bas\",\n      \"reload\": \"\",\n      \"hint\": \"bas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download\",\n      \"localized\": \"télécharger\",\n      \"reload\": \"\",\n      \"hint\": \"télécharger\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download model\",\n      \"localized\": \"télécharger le modèle\",\n      \"reload\": \"\",\n      \"hint\": \"télécharger le modèle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download path\",\n      \"localized\": \"chemin de téléchargement\",\n      \"reload\": \"\",\n      \"hint\": \"chemin de téléchargement\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download updates\",\n      \"localized\": \"télécharger les mises à jour\",\n      \"reload\": \"\",\n      \"hint\": \"télécharger les mises à jour\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"downscale high resolution live previews\",\n      \"localized\": \"réduire la résolution des aperçus en direct\",\n      \"reload\": \"\",\n      \"hint\": \"réduire la résolution des aperçus en direct\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm sde\",\n      \"localized\": \"dpm sde\",\n      \"reload\": \"\",\n      \"hint\": \"dpm sde\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++\",\n      \"localized\": \"dpm++\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 1s\",\n      \"localized\": \"dpm++ 1s\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 1s\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m\",\n      \"localized\": \"dpm++ 2m\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 2m\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m edm\",\n      \"localized\": \"dpm++ 2m edm\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 2m edm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m inverse\",\n      \"localized\": \"dpm++ 2m inverse\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 2m inverse\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m sde\",\n      \"localized\": \"dpm++ 2m sde\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 2m sde\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 3m\",\n      \"localized\": \"dpm++ 3m\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 3m\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 3m inverse\",\n      \"localized\": \"dpm++ 3m inverse\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 3m inverse\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ cosine\",\n      \"localized\": \"dpm++ cosinus\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ cosinus\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ inverse\",\n      \"localized\": \"dpm++ inverse\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ inverse\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ sde\",\n      \"localized\": \"dpm++ sde\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ sde\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2 flowmatch\",\n      \"localized\": \"dpm2 flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2 flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2m flowmatch\",\n      \"localized\": \"dpm2++ 2m flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 2m flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2m sde flowmatch\",\n      \"localized\": \"dpm2++ 2m sde flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 2m sde flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2s flowmatch\",\n      \"localized\": \"dpm2++ 2s flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 2s flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 3m sde flowmatch\",\n      \"localized\": \"dpm2++ 3m sde flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 3m sde flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ sde flowmatch\",\n      \"localized\": \"dpm2++ sde flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ sde flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2a flowmatch\",\n      \"localized\": \"dpm2a flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2a flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"draw legend\",\n      \"localized\": \"afficher la légende\",\n      \"reload\": \"\",\n      \"hint\": \"afficher la légende\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dropdown\",\n      \"localized\": \"menu déroulant\",\n      \"reload\": \"\",\n      \"hint\": \"menu déroulant\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"duration\",\n      \"localized\": \"durée\",\n      \"reload\": \"\",\n      \"hint\": \"durée\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dwpose\",\n      \"localized\": \"dwpose\",\n      \"reload\": \"\",\n      \"hint\": \"dwpose\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic\",\n      \"localized\": \"dynamique\",\n      \"reload\": \"\",\n      \"hint\": \"dynamique\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention\",\n      \"localized\": \"attention dynamique\",\n      \"reload\": \"\",\n      \"hint\": \"attention dynamique\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention slicing rate in gb\",\n      \"localized\": \"taux de découpage d'attention dynamique en Go\",\n      \"reload\": \"\",\n      \"hint\": \"taux de découpage d'attention dynamique en Go\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention trigger rate in gb\",\n      \"localized\": \"taux de déclenchement d'attention dynamique en Go\",\n      \"reload\": \"\",\n      \"hint\": \"taux de déclenchement d'attention dynamique en Go\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edge\",\n      \"localized\": \"bord\",\n      \"reload\": \"\",\n      \"hint\": \"bord\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edit start\",\n      \"localized\": \"début de l'édition\",\n      \"reload\": \"\",\n      \"hint\": \"début de l'édition\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edit stop\",\n      \"localized\": \"fin de l'édition\",\n      \"reload\": \"\",\n      \"hint\": \"fin de l'édition\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"embedded metadata\",\n      \"localized\": \"métadonnées embarquées\",\n      \"reload\": \"\",\n      \"hint\": \"métadonnées embarquées\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable embeddings support\",\n      \"localized\": \"activer le support des embeddings\",\n      \"reload\": \"\",\n      \"hint\": \"activer le support des embeddings\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable file wildcards support\",\n      \"localized\": \"activer le support des jokers de fichier\",\n      \"reload\": \"\",\n      \"hint\": \"activer le support des jokers de fichier\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable freeu\",\n      \"localized\": \"activer freeu\",\n      \"reload\": \"\",\n      \"hint\": \"activer freeu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable teacache\",\n      \"localized\": \"activer teacache\",\n      \"reload\": \"\",\n      \"hint\": \"activer teacache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable tonemap\",\n      \"localized\": \"activer le tonemapping\",\n      \"reload\": \"\",\n      \"hint\": \"activer le tonemapping\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable use of reference models\",\n      \"localized\": \"activer l'utilisation de modèles de référence\",\n      \"reload\": \"\",\n      \"hint\": \"activer l'utilisation de modèles de référence\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enabled\",\n      \"localized\": \"activé\",\n      \"reload\": \"\",\n      \"hint\": \"activé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"encoder\",\n      \"localized\": \"encodeur\",\n      \"reload\": \"\",\n      \"hint\": \"encodeur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"end\",\n      \"localized\": \"fin\",\n      \"reload\": \"\",\n      \"hint\": \"fin\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enhance prompt\",\n      \"localized\": \"améliorer le prompt\",\n      \"reload\": \"\",\n      \"hint\": \"améliorer le prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ensemble size\",\n      \"localized\": \"taille de l'ensemble\",\n      \"reload\": \"\",\n      \"hint\": \"taille de l'ensemble\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"epsilon\",\n      \"localized\": \"epsilon\",\n      \"reload\": \"\",\n      \"hint\": \"epsilon\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"erode\",\n      \"localized\": \"éroder\",\n      \"reload\": \"\",\n      \"hint\": \"éroder\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"erode size\",\n      \"localized\": \"taille d'érosion\",\n      \"reload\": \"\",\n      \"hint\": \"taille d'érosion\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"eta\",\n      \"localized\": \"eta\",\n      \"reload\": \"\",\n      \"hint\": \"eta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler\",\n      \"localized\": \"euler\",\n      \"reload\": \"\",\n      \"hint\": \"euler\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler edm\",\n      \"localized\": \"euler edm\",\n      \"reload\": \"\",\n      \"hint\": \"euler edm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler flowmatch\",\n      \"localized\": \"euler flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"euler flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler sgm\",\n      \"localized\": \"euler sgm\",\n      \"reload\": \"\",\n      \"hint\": \"euler sgm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.cpu\",\n      \"localized\": \"executionprovider.cpu\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.cpu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.cuda\",\n      \"localized\": \"executionprovider.cuda\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.cuda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.directml\",\n      \"localized\": \"executionprovider.directml\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.directml\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.migraphx\",\n      \"localized\": \"executionprovider.migraphx\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.migraphx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.openvino\",\n      \"localized\": \"executionprovider.openvino\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.openvino\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.rocm\",\n      \"localized\": \"executionprovider.rocm\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.rocm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"expandable segments\",\n      \"localized\": \"segments extensibles\",\n      \"reload\": \"\",\n      \"hint\": \"segments extensibles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"exponential\",\n      \"localized\": \"exponentiel\",\n      \"reload\": \"\",\n      \"hint\": \"exponentiel\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"exposure\",\n      \"localized\": \"exposition\",\n      \"reload\": \"\",\n      \"hint\": \"exposition\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"extra noise multiplier for img2img\",\n      \"localized\": \"multiplicateur de bruit supplémentaire pour img2img\",\n      \"reload\": \"\",\n      \"hint\": \"multiplicateur de bruit supplémentaire pour img2img\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"extract lora\",\n      \"localized\": \"extraire Lora\",\n      \"reload\": \"\",\n      \"hint\": \"extraire Lora\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"face\",\n      \"localized\": \"visage\",\n      \"reload\": \"\",\n      \"hint\": \"visage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"face confidence\",\n      \"localized\": \"confiance du visage\",\n      \"reload\": \"\",\n      \"hint\": \"confiance du visage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"faceid model\",\n      \"localized\": \"modèle FaceID\",\n      \"reload\": \"\",\n      \"hint\": \"modèle FaceID\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fall-off exponent (lower=higher detail)\",\n      \"localized\": \"exposant de décroissance (plus bas = plus de détails)\",\n      \"reload\": \"\",\n      \"hint\": \"exposant de décroissance (plus bas = plus de détails)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"false\",\n      \"localized\": \"faux\",\n      \"reload\": \"\",\n      \"hint\": \"faux\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fast\",\n      \"localized\": \"rapide\",\n      \"reload\": \"\",\n      \"hint\": \"rapide\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"file or folder with user-defined styles\",\n      \"localized\": \"fichier ou dossier avec des styles définis par l'utilisateur\",\n      \"reload\": \"\",\n      \"hint\": \"fichier ou dossier avec des styles définis par l'utilisateur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"filename\",\n      \"localized\": \"nom de fichier\",\n      \"reload\": \"\",\n      \"hint\": \"nom de fichier\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"first-block cache enabled\",\n      \"localized\": \"cache du premier bloc activé\",\n      \"reload\": \"\",\n      \"hint\": \"cache du premier bloc activé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fixed unet precision\",\n      \"localized\": \"précision UNet fixe\",\n      \"reload\": \"\",\n      \"hint\": \"précision UNet fixe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flash attention\",\n      \"localized\": \"attention flash\",\n      \"reload\": \"\",\n      \"hint\": \"attention flash\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flavors\",\n      \"localized\": \"saveurs\",\n      \"reload\": \"\",\n      \"hint\": \"saveurs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flow shift\",\n      \"localized\": \"décalage de flux\",\n      \"reload\": \"\",\n      \"hint\": \"décalage de flux\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder\",\n      \"localized\": \"dossier\",\n      \"reload\": \"\",\n      \"hint\": \"dossier\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for control generate\",\n      \"localized\": \"dossier pour la génération de contrôle\",\n      \"reload\": \"\",\n      \"hint\": \"dossier pour la génération de contrôle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for control grids\",\n      \"localized\": \"dossier pour les grilles de contrôle\",\n      \"reload\": \"\",\n      \"hint\": \"dossier pour les grilles de contrôle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for disk offload\",\n      \"localized\": \"dossier pour le déchargement sur disque\",\n      \"reload\": \"\",\n      \"hint\": \"dossier pour le déchargement sur disque\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for huggingface cache\",\n      \"localized\": \"dossier pour le cache Hugging Face\",\n      \"reload\": \"\",\n      \"hint\": \"dossier pour le cache Hugging Face\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for image generate\",\n      \"localized\": \"dossier pour la génération d'images\",\n      \"reload\": \"\",\n      \"hint\": \"dossier pour la génération d'images\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for img2img grids\",\n      \"localized\": \"dossier pour les grilles img2img\",\n      \"reload\": \"\",\n      \"hint\": \"dossier pour les grilles img2img\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for init images\",\n      \"localized\": \"dossier pour les images d'initialisation\",\n      \"reload\": \"\",\n      \"hint\": \"dossier pour les images d'initialisation\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for manually saved images\",\n      \"localized\": \"dossier pour les images enregistrées manuellement\",\n      \"reload\": \"\",\n      \"hint\": \"dossier pour les images enregistrées manuellement\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for onnx cached models\",\n      \"localized\": \"dossier pour les modèles ONNX mis en cache\",\n      \"reload\": \"\",\n      \"hint\": \"dossier pour les modèles ONNX mis en cache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for onnx conversion\",\n      \"localized\": \"dossier pour la conversion ONNX\",\n      \"reload\": \"\",\n      \"hint\": \"dossier pour la conversion ONNX\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for openvino cache\",\n      \"localized\": \"dossier pour le cache OpenVINO\",\n      \"reload\": \"\",\n      \"hint\": \"dossier pour le cache OpenVINO\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for processed images\",\n      \"localized\": \"dossier pour les images traitées\",\n      \"reload\": \"\",\n      \"hint\": \"dossier pour les images traitées\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for text generate\",\n      \"localized\": \"dossier pour la génération de texte\",\n      \"reload\": \"\",\n      \"hint\": \"dossier pour la génération de texte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for tunable ops cache\",\n      \"localized\": \"dossier pour le cache des opérations ajustables\",\n      \"reload\": \"\",\n      \"hint\": \"dossier pour le cache des opérations ajustables\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for txt2img grids\",\n      \"localized\": \"dossier pour les grilles txt2img\",\n      \"reload\": \"\",\n      \"hint\": \"dossier pour les grilles txt2img\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for videos\",\n      \"localized\": \"dossier pour les vidéos\",\n      \"reload\": \"\",\n      \"hint\": \"dossier pour les vidéos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with bsrgan models\",\n      \"localized\": \"dossier avec les modèles BSRGAN\",\n      \"reload\": \"\",\n      \"hint\": \"dossier avec les modèles BSRGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with chainner models\",\n      \"localized\": \"dossier avec les modèles Chainner\",\n      \"reload\": \"\",\n      \"hint\": \"dossier avec les modèles Chainner\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with clip models\",\n      \"localized\": \"dossier avec les modèles CLIP\",\n      \"reload\": \"\",\n      \"hint\": \"dossier avec les modèles CLIP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with codeformer models\",\n      \"localized\": \"dossier avec les modèles CodeFormer\",\n      \"reload\": \"\",\n      \"hint\": \"dossier avec les modèles CodeFormer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with control models\",\n      \"localized\": \"dossier avec les modèles de contrôle\",\n      \"reload\": \"\",\n      \"hint\": \"dossier avec les modèles de contrôle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with esrgan models\",\n      \"localized\": \"dossier avec les modèles ESRGAN\",\n      \"reload\": \"\",\n      \"hint\": \"dossier avec les modèles ESRGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with gfpgan models\",\n      \"localized\": \"dossier avec les modèles GFPGAN\",\n      \"reload\": \"\",\n      \"hint\": \"dossier avec les modèles GFPGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with huggingface models\",\n      \"localized\": \"dossier avec les modèles Hugging Face\",\n      \"reload\": \"\",\n      \"hint\": \"dossier avec les modèles Hugging Face\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with hypernetwork models\",\n      \"localized\": \"dossier avec les modèles HyperNetwork\",\n      \"reload\": \"\",\n      \"hint\": \"dossier avec les modèles HyperNetwork\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with ldsr models\",\n      \"localized\": \"dossier avec les modèles LDSR\",\n      \"reload\": \"\",\n      \"hint\": \"dossier avec les modèles LDSR\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with lora network(s)\",\n      \"localized\": \"dossier avec les réseaux Lora\",\n      \"reload\": \"\",\n      \"hint\": \"dossier avec les réseaux Lora\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with realesrgan models\",\n      \"localized\": \"dossier avec les modèles RealESRGAN\",\n      \"reload\": \"\",\n      \"hint\": \"dossier avec les modèles RealESRGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with scunet models\",\n      \"localized\": \"dossier avec les modèles SCUNet\",\n      \"reload\": \"\",\n      \"hint\": \"dossier avec les modèles SCUNet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with stable diffusion models\",\n      \"localized\": \"dossier avec les modèles Stable Diffusion\",\n      \"reload\": \"\",\n      \"hint\": \"dossier avec les modèles Stable Diffusion\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with swinir models\",\n      \"localized\": \"dossier avec les modèles SwinIR\",\n      \"reload\": \"\",\n      \"hint\": \"dossier avec les modèles SwinIR\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with text encoder files\",\n      \"localized\": \"dossier avec les fichiers de l'encodeur de texte\",\n      \"reload\": \"\",\n      \"hint\": \"dossier avec les fichiers de l'encodeur de texte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with textual inversion embeddings\",\n      \"localized\": \"dossier avec les embeddings d'inversion textuelle\",\n      \"reload\": \"\",\n      \"hint\": \"dossier avec les embeddings d'inversion textuelle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with unet files\",\n      \"localized\": \"dossier avec les fichiers UNet\",\n      \"reload\": \"\",\n      \"hint\": \"dossier avec les fichiers UNet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with user-defined wildcards\",\n      \"localized\": \"dossier avec les jokers définis par l'utilisateur\",\n      \"reload\": \"\",\n      \"hint\": \"dossier avec les jokers définis par l'utilisateur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with vae files\",\n      \"localized\": \"dossier avec les fichiers VAE\",\n      \"reload\": \"\",\n      \"hint\": \"dossier avec les fichiers VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with yolo models\",\n      \"localized\": \"dossier avec les modèles YOLO\",\n      \"reload\": \"\",\n      \"hint\": \"dossier avec les modèles YOLO\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font color\",\n      \"localized\": \"couleur de police\",\n      \"reload\": \"\",\n      \"hint\": \"couleur de police\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font file\",\n      \"localized\": \"fichier de police\",\n      \"reload\": \"\",\n      \"hint\": \"fichier de police\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font size\",\n      \"localized\": \"taille de police\",\n      \"reload\": \"\",\n      \"hint\": \"taille de police\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"force model eval\",\n      \"localized\": \"forcer l'évaluation du modèle\",\n      \"reload\": \"\",\n      \"hint\": \"forcer l'évaluation du modèle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"foreground threshold\",\n      \"localized\": \"seuil de premier plan\",\n      \"reload\": \"\",\n      \"hint\": \"seuil de premier plan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fp4\",\n      \"localized\": \"fp4\",\n      \"reload\": \"\",\n      \"hint\": \"fp4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"frame change sensitivity\",\n      \"localized\": \"sensibilité au changement de cadre\",\n      \"reload\": \"\",\n      \"hint\": \"sensibilité au changement de cadre\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"frames\",\n      \"localized\": \"images\",\n      \"reload\": \"\",\n      \"hint\": \"images\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeinit\",\n      \"localized\": \"FreeInit\",\n      \"reload\": \"\",\n      \"hint\": \"FreeInit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeu enabled\",\n      \"localized\": \"FreeU activé\",\n      \"reload\": \"\",\n      \"hint\": \"FreeU activé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeu preset\",\n      \"localized\": \"préréglage FreeU\",\n      \"reload\": \"\",\n      \"hint\": \"préréglage FreeU\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"full vae\",\n      \"localized\": \"VAE complet\",\n      \"reload\": \"\",\n      \"hint\": \"VAE complet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"full-depth cudnn benchmark\",\n      \"localized\": \"benchmark cuDNN pleine profondeur\",\n      \"reload\": \"\",\n      \"hint\": \"benchmark cuDNN pleine profondeur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fuse strength\",\n      \"localized\": \"force de fusion\",\n      \"reload\": \"\",\n      \"hint\": \"force de fusion\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fused projections\",\n      \"localized\": \"projections fusionnées\",\n      \"reload\": \"\",\n      \"hint\": \"projections fusionnées\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gamma\",\n      \"localized\": \"gamma\",\n      \"reload\": \"\",\n      \"hint\": \"gamma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gamma corrected\",\n      \"localized\": \"gamma corrigé\",\n      \"reload\": \"\",\n      \"hint\": \"gamma corrigé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gate step\",\n      \"localized\": \"étape de porte\",\n      \"reload\": \"\",\n      \"hint\": \"étape de porte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gc threshold\",\n      \"localized\": \"seuil GC\",\n      \"reload\": \"\",\n      \"hint\": \"seuil GC\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"get changelog\",\n      \"localized\": \"obtenir le journal des modifications\",\n      \"reload\": \"\",\n      \"hint\": \"obtenir le journal des modifications\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gpu\",\n      \"localized\": \"GPU\",\n      \"reload\": \"\",\n      \"hint\": \"GPU\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gradient\",\n      \"localized\": \"dégradé\",\n      \"reload\": \"\",\n      \"hint\": \"dégradé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid background color\",\n      \"localized\": \"couleur de fond de la grille\",\n      \"reload\": \"\",\n      \"hint\": \"couleur de fond de la grille\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid margins\",\n      \"localized\": \"marges de la grille\",\n      \"reload\": \"\",\n      \"hint\": \"marges de la grille\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid sections:\",\n      \"localized\": \"sections de la grille :\",\n      \"reload\": \"\",\n      \"hint\": \"sections de la grille :\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"group size\",\n      \"localized\": \"taille du groupe\",\n      \"reload\": \"\",\n      \"hint\": \"taille du groupe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance\",\n      \"localized\": \"guidage\",\n      \"reload\": \"\",\n      \"hint\": \"guidage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance start\",\n      \"localized\": \"début du guidage\",\n      \"reload\": \"\",\n      \"hint\": \"début du guidage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance stop\",\n      \"localized\": \"arrêt du guidage\",\n      \"reload\": \"\",\n      \"hint\": \"arrêt du guidage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance strength\",\n      \"localized\": \"force du guidage\",\n      \"reload\": \"\",\n      \"hint\": \"force du guidage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hands\",\n      \"localized\": \"mains\",\n      \"reload\": \"\",\n      \"hint\": \"mains\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hdr range\",\n      \"localized\": \"plage HDR\",\n      \"reload\": \"\",\n      \"hint\": \"plage HDR\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hed\",\n      \"localized\": \"HED\",\n      \"reload\": \"\",\n      \"hint\": \"HED\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height  after\",\n      \"localized\": \"hauteur après\",\n      \"reload\": \"\",\n      \"hint\": \"hauteur après\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height  before\",\n      \"localized\": \"hauteur avant\",\n      \"reload\": \"\",\n      \"hint\": \"hauteur avant\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height  mask\",\n      \"localized\": \"masque de hauteur\",\n      \"reload\": \"\",\n      \"hint\": \"masque de hauteur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"heun\",\n      \"localized\": \"Heun\",\n      \"reload\": \"\",\n      \"hint\": \"Heun\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"heun flowmatch\",\n      \"localized\": \"Heun FlowMatch\",\n      \"reload\": \"\",\n      \"hint\": \"Heun FlowMatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hidet\",\n      \"localized\": \"Hidet\",\n      \"reload\": \"\",\n      \"hint\": \"Hidet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"high threshold\",\n      \"localized\": \"seuil haut\",\n      \"reload\": \"\",\n      \"hint\": \"seuil haut\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hires pass only\",\n      \"localized\": \"passe haute résolution seulement\",\n      \"reload\": \"\",\n      \"hint\": \"passe haute résolution seulement\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hq init latents\",\n      \"localized\": \"latents d'initialisation HQ\",\n      \"reload\": \"\",\n      \"hint\": \"latents d'initialisation HQ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hue\",\n      \"localized\": \"teinte\",\n      \"reload\": \"\",\n      \"hint\": \"teinte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"huggingface mirror\",\n      \"localized\": \"miroir Hugging Face\",\n      \"reload\": \"\",\n      \"hint\": \"miroir Hugging Face\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"huggingface token\",\n      \"localized\": \"jeton Hugging Face\",\n      \"reload\": \"\",\n      \"hint\": \"jeton Hugging Face\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hunyuan\",\n      \"localized\": \"Hunyuan\",\n      \"reload\": \"\",\n      \"hint\": \"Hunyuan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"il\",\n      \"localized\": \"il\",\n      \"reload\": \"\",\n      \"hint\": \"il\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image height\",\n      \"localized\": \"hauteur de l'image\",\n      \"reload\": \"\",\n      \"hint\": \"hauteur de l'image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image quality\",\n      \"localized\": \"qualité de l'image\",\n      \"reload\": \"\",\n      \"hint\": \"qualité de l'image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image transparent color fill\",\n      \"localized\": \"remplissage couleur transparente de l'image\",\n      \"reload\": \"\",\n      \"hint\": \"remplissage couleur transparente de l'image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image watermark file\",\n      \"localized\": \"fichier de filigrane de l'image\",\n      \"reload\": \"\",\n      \"hint\": \"fichier de filigrane de l'image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image watermark position\",\n      \"localized\": \"position du filigrane de l'image\",\n      \"reload\": \"\",\n      \"hint\": \"position du filigrane de l'image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image width\",\n      \"localized\": \"largeur de l'image\",\n      \"reload\": \"\",\n      \"hint\": \"largeur de l'image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include images\",\n      \"localized\": \"inclure les images\",\n      \"reload\": \"\",\n      \"hint\": \"inclure les images\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include main grid\",\n      \"localized\": \"inclure la grille principale\",\n      \"reload\": \"\",\n      \"hint\": \"inclure la grille principale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include mask in outputs\",\n      \"localized\": \"inclure le masque dans les sorties\",\n      \"reload\": \"\",\n      \"hint\": \"inclure le masque dans les sorties\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include original image\",\n      \"localized\": \"inclure l'image originale\",\n      \"reload\": \"\",\n      \"hint\": \"inclure l'image originale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include scores in results when available\",\n      \"localized\": \"inclure les scores dans les résultats si disponibles\",\n      \"reload\": \"\",\n      \"hint\": \"inclure les scores dans les résultats si disponibles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include sub grids\",\n      \"localized\": \"inclure les sous-grilles\",\n      \"reload\": \"\",\n      \"hint\": \"inclure les sous-grilles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inductor\",\n      \"localized\": \"inducteur\",\n      \"reload\": \"\",\n      \"hint\": \"inducteur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"info\",\n      \"localized\": \"info\",\n      \"reload\": \"\",\n      \"hint\": \"info\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"info object\",\n      \"localized\": \"objet d'information\",\n      \"reload\": \"\",\n      \"hint\": \"objet d'information\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpaint\",\n      \"localized\": \"inpaint\",\n      \"reload\": \"\",\n      \"hint\": \"inpaint\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpaint masked only\",\n      \"localized\": \"inpaint masqué seulement\",\n      \"reload\": \"\",\n      \"hint\": \"inpaint masqué seulement\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpainting include greyscale mask in results\",\n      \"localized\": \"inpainting inclure le masque en niveaux de gris dans les résultats\",\n      \"reload\": \"\",\n      \"hint\": \"inpainting inclure le masque en niveaux de gris dans les résultats\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpainting include masked composite in results\",\n      \"localized\": \"inpainting inclure le composite masqué dans les résultats\",\n      \"reload\": \"\",\n      \"hint\": \"inpainting inclure le composite masqué dans les résultats\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"input model\",\n      \"localized\": \"modèle d'entrée\",\n      \"reload\": \"\",\n      \"hint\": \"modèle d'entrée\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"intermediates\",\n      \"localized\": \"intermédiaires\",\n      \"reload\": \"\",\n      \"hint\": \"intermédiaires\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"interpolate frames\",\n      \"localized\": \"interpoler les images\",\n      \"reload\": \"\",\n      \"hint\": \"interpoler les images\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"interpolation method\",\n      \"localized\": \"méthode d'interpolation\",\n      \"reload\": \"\",\n      \"hint\": \"méthode d'interpolation\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invert\",\n      \"localized\": \"inverser\",\n      \"reload\": \"\",\n      \"hint\": \"inverser\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invert mask\",\n      \"localized\": \"inverser le masque\",\n      \"reload\": \"\",\n      \"hint\": \"inverser le masque\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iou\",\n      \"localized\": \"iou\",\n      \"reload\": \"\",\n      \"hint\": \"iou\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ipex\",\n      \"localized\": \"ipex\",\n      \"reload\": \"\",\n      \"hint\": \"ipex\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ipndm\",\n      \"localized\": \"ipndm\",\n      \"reload\": \"\",\n      \"hint\": \"ipndm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"item edge blur\",\n      \"localized\": \"flou de bord d'élément\",\n      \"reload\": \"\",\n      \"hint\": \"flou de bord d'élément\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"item padding\",\n      \"localized\": \"remplissage d'élément\",\n      \"reload\": \"\",\n      \"hint\": \"remplissage d'élément\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iterate seed per line\",\n      \"localized\": \"itérer la graine par ligne\",\n      \"reload\": \"\",\n      \"hint\": \"itérer la graine par ligne\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iterations\",\n      \"localized\": \"itérations\",\n      \"reload\": \"\",\n      \"hint\": \"itérations\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"karras\",\n      \"localized\": \"karras\",\n      \"reload\": \"\",\n      \"hint\": \"karras\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"kdpm2\",\n      \"localized\": \"kdpm2\",\n      \"reload\": \"\",\n      \"hint\": \"kdpm2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"kdpm2 a\",\n      \"localized\": \"kdpm2 a\",\n      \"reload\": \"\",\n      \"hint\": \"kdpm2 a\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"keep incomplete images\",\n      \"localized\": \"garder les images incomplètes\",\n      \"reload\": \"\",\n      \"hint\": \"garder les images incomplètes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"large\",\n      \"localized\": \"grand\",\n      \"reload\": \"\",\n      \"hint\": \"grand\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"latent history size\",\n      \"localized\": \"taille de l'historique latent\",\n      \"reload\": \"\",\n      \"hint\": \"taille de l'historique latent\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"latent mode\",\n      \"localized\": \"mode latent\",\n      \"reload\": \"\",\n      \"hint\": \"mode latent\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layer scales\",\n      \"localized\": \"échelles de couche\",\n      \"reload\": \"\",\n      \"hint\": \"échelles de couche\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layerwise casting storage\",\n      \"localized\": \"stockage de conversion par couche\",\n      \"reload\": \"\",\n      \"hint\": \"stockage de conversion par couche\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layerwise non-blocking operations\",\n      \"localized\": \"opérations non-bloquantes par couche\",\n      \"reload\": \"\",\n      \"hint\": \"opérations non-bloquantes par couche\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lcm\",\n      \"localized\": \"lcm\",\n      \"reload\": \"\",\n      \"hint\": \"lcm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ldsr processing steps\",\n      \"localized\": \"étapes de traitement ldsr\",\n      \"reload\": \"\",\n      \"hint\": \"étapes de traitement ldsr\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"left\",\n      \"localized\": \"gauche\",\n      \"reload\": \"\",\n      \"hint\": \"gauche\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"legend\",\n      \"localized\": \"légende\",\n      \"reload\": \"\",\n      \"hint\": \"légende\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"length\",\n      \"localized\": \"longueur\",\n      \"reload\": \"\",\n      \"hint\": \"longueur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"leres depth\",\n      \"localized\": \"profondeur leres\",\n      \"reload\": \"\",\n      \"hint\": \"profondeur leres\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"level\",\n      \"localized\": \"niveau\",\n      \"reload\": \"\",\n      \"hint\": \"niveau\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"libs\",\n      \"localized\": \"libs\",\n      \"reload\": \"\",\n      \"hint\": \"libs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"light\",\n      \"localized\": \"léger\",\n      \"reload\": \"\",\n      \"hint\": \"léger\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lineart\",\n      \"localized\": \"dessin au trait\",\n      \"reload\": \"\",\n      \"hint\": \"dessin au trait\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"list\",\n      \"localized\": \"liste\",\n      \"reload\": \"\",\n      \"hint\": \"liste\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"list model details\",\n      \"localized\": \"afficher les détails du modèle\",\n      \"reload\": \"\",\n      \"hint\": \"afficher les détails du modèle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lite\",\n      \"localized\": \"lite\",\n      \"reload\": \"\",\n      \"hint\": \"lite\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"live update\",\n      \"localized\": \"mise à jour en direct\",\n      \"reload\": \"\",\n      \"hint\": \"mise à jour en direct\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lmsd\",\n      \"localized\": \"lmsd\",\n      \"reload\": \"\",\n      \"hint\": \"lmsd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"load custom diffusers pipeline\",\n      \"localized\": \"charger un pipeline diffusers personnalisé\",\n      \"reload\": \"\",\n      \"hint\": \"charger un pipeline diffusers personnalisé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"load model directly to gpu\",\n      \"localized\": \"charger le modèle directement sur le gpu\",\n      \"reload\": \"\",\n      \"hint\": \"charger le modèle directement sur le gpu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"loaded lora\",\n      \"localized\": \"lora chargé\",\n      \"reload\": \"\",\n      \"hint\": \"lora chargé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"logsnr\",\n      \"localized\": \"logsnr\",\n      \"reload\": \"\",\n      \"hint\": \"logsnr\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"loop\",\n      \"localized\": \"boucle\",\n      \"reload\": \"\",\n      \"hint\": \"boucle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora add hash info to metadata\",\n      \"localized\": \"lora ajouter les informations de hachage aux métadonnées\",\n      \"reload\": \"\",\n      \"hint\": \"lora ajouter les informations de hachage aux métadonnées\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora auto-apply tags\",\n      \"localized\": \"lora appliquer automatiquement les tags\",\n      \"reload\": \"\",\n      \"hint\": \"lora appliquer automatiquement les tags\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora load using diffusers method for selected models\",\n      \"localized\": \"lora charger avec la méthode diffusers pour les modèles sélectionnés\",\n      \"reload\": \"\",\n      \"hint\": \"lora charger avec la méthode diffusers pour les modèles sélectionnés\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora load using legacy method\",\n      \"localized\": \"lora charger avec la méthode héritée\",\n      \"reload\": \"\",\n      \"hint\": \"lora charger avec la méthode héritée\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora target filename\",\n      \"localized\": \"nom de fichier cible lora\",\n      \"reload\": \"\",\n      \"hint\": \"nom de fichier cible lora\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"low order\",\n      \"localized\": \"ordre inférieur\",\n      \"reload\": \"\",\n      \"hint\": \"ordre inférieur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"low threshold\",\n      \"localized\": \"seuil bas\",\n      \"reload\": \"\",\n      \"hint\": \"seuil bas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ltx model\",\n      \"localized\": \"modèle ltx\",\n      \"reload\": \"\",\n      \"hint\": \"modèle ltx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lumina: use mask in transformers\",\n      \"localized\": \"lumina : utiliser le masque dans les transformeurs\",\n      \"reload\": \"\",\n      \"hint\": \"lumina : utiliser le masque dans les transformeurs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"manual block merge\",\n      \"localized\": \"fusion de blocs manuelle\",\n      \"reload\": \"\",\n      \"hint\": \"fusion de blocs manuelle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"marigold depth\",\n      \"localized\": \"profondeur marigold\",\n      \"reload\": \"\",\n      \"hint\": \"profondeur marigold\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask dropout\",\n      \"localized\": \"dropout de masque\",\n      \"reload\": \"\",\n      \"hint\": \"dropout de masque\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask invert\",\n      \"localized\": \"inversion de masque\",\n      \"reload\": \"\",\n      \"hint\": \"inversion de masque\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask only\",\n      \"localized\": \"masque seulement\",\n      \"reload\": \"\",\n      \"hint\": \"masque seulement\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask strength\",\n      \"localized\": \"force du masque\",\n      \"reload\": \"\",\n      \"hint\": \"force du masque\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"masked\",\n      \"localized\": \"masqué\",\n      \"reload\": \"\",\n      \"hint\": \"masqué\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"math attention\",\n      \"localized\": \"attention mathématique\",\n      \"reload\": \"\",\n      \"hint\": \"attention mathématique\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max faces\",\n      \"localized\": \"nombre max de visages\",\n      \"reload\": \"\",\n      \"hint\": \"nombre max de visages\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max flavors\",\n      \"localized\": \"nombre max de variantes\",\n      \"reload\": \"\",\n      \"hint\": \"nombre max de variantes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max guidance\",\n      \"localized\": \"guidage maximal\",\n      \"reload\": \"\",\n      \"hint\": \"guidage maximal\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max length\",\n      \"localized\": \"longueur maximale\",\n      \"reload\": \"\",\n      \"hint\": \"longueur maximale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max object size\",\n      \"localized\": \"taille d'objet maximale\",\n      \"reload\": \"\",\n      \"hint\": \"taille d'objet maximale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max range\",\n      \"localized\": \"plage maximale\",\n      \"reload\": \"\",\n      \"hint\": \"plage maximale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max tokens\",\n      \"localized\": \"nombre max de jetons\",\n      \"reload\": \"\",\n      \"hint\": \"nombre max de jetons\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max words\",\n      \"localized\": \"nombre max de mots\",\n      \"reload\": \"\",\n      \"hint\": \"nombre max de mots\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max-autotune\",\n      \"localized\": \"autotune maximal\",\n      \"reload\": \"\",\n      \"hint\": \"autotune maximal\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max-autotune-no-cudagraphs\",\n      \"localized\": \"autotune maximal sans cudagraphs\",\n      \"reload\": \"\",\n      \"hint\": \"autotune maximal sans cudagraphs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum image size (mp)\",\n      \"localized\": \"taille d'image maximale (mp)\",\n      \"reload\": \"\",\n      \"hint\": \"taille d'image maximale (mp)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum number of units\",\n      \"localized\": \"nombre maximal d'unités\",\n      \"reload\": \"\",\n      \"hint\": \"nombre maximal d'unités\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum rank\",\n      \"localized\": \"rang maximal\",\n      \"reload\": \"\",\n      \"hint\": \"rang maximal\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mediapipe face\",\n      \"localized\": \"visage mediapipe\",\n      \"reload\": \"\",\n      \"hint\": \"visage mediapipe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"medium\",\n      \"localized\": \"moyen\",\n      \"reload\": \"\",\n      \"hint\": \"moyen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mediums\",\n      \"localized\": \"médiums\",\n      \"reload\": \"\",\n      \"hint\": \"médiums\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory\",\n      \"localized\": \"mémoire\",\n      \"reload\": \"\",\n      \"hint\": \"mémoire\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory attention\",\n      \"localized\": \"attention de la mémoire\",\n      \"reload\": \"\",\n      \"hint\": \"attention de la mémoire\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory limit\",\n      \"localized\": \"limite de mémoire\",\n      \"reload\": \"\",\n      \"hint\": \"limite de mémoire\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory optimization\",\n      \"localized\": \"optimisation de la mémoire\",\n      \"reload\": \"\",\n      \"hint\": \"optimisation de la mémoire\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"merge alpha\",\n      \"localized\": \"fusionner l'alpha\",\n      \"reload\": \"\",\n      \"hint\": \"fusionner l'alpha\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method\",\n      \"localized\": \"méthode\",\n      \"reload\": \"\",\n      \"hint\": \"méthode\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method after\",\n      \"localized\": \"méthode après\",\n      \"reload\": \"\",\n      \"hint\": \"méthode après\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method before\",\n      \"localized\": \"méthode avant\",\n      \"reload\": \"\",\n      \"hint\": \"méthode avant\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method mask\",\n      \"localized\": \"méthode masque\",\n      \"reload\": \"\",\n      \"hint\": \"méthode masque\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"midas depth\",\n      \"localized\": \"profondeur midas\",\n      \"reload\": \"\",\n      \"hint\": \"profondeur midas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"migraphx\",\n      \"localized\": \"migraphx\",\n      \"reload\": \"\",\n      \"hint\": \"migraphx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min flavors\",\n      \"localized\": \"saveurs min\",\n      \"reload\": \"\",\n      \"hint\": \"saveurs min\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min guidance\",\n      \"localized\": \"guidance min\",\n      \"reload\": \"\",\n      \"hint\": \"guidance min\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min length\",\n      \"localized\": \"longueur min\",\n      \"reload\": \"\",\n      \"hint\": \"longueur min\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min object size\",\n      \"localized\": \"taille min objet\",\n      \"reload\": \"\",\n      \"hint\": \"taille min objet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mine\",\n      \"localized\": \"mien\",\n      \"reload\": \"\",\n      \"hint\": \"mien\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mlsd\",\n      \"localized\": \"mlsd\",\n      \"reload\": \"\",\n      \"hint\": \"mlsd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mm\",\n      \"localized\": \"mm\",\n      \"reload\": \"\",\n      \"hint\": \"mm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode\",\n      \"localized\": \"mode\",\n      \"reload\": \"\",\n      \"hint\": \"mode\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode after\",\n      \"localized\": \"mode après\",\n      \"reload\": \"\",\n      \"hint\": \"mode après\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode before\",\n      \"localized\": \"mode avant\",\n      \"reload\": \"\",\n      \"hint\": \"mode avant\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode mask\",\n      \"localized\": \"mode masque\",\n      \"reload\": \"\",\n      \"hint\": \"mode masque\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode x-axis\",\n      \"localized\": \"mode axe x\",\n      \"reload\": \"\",\n      \"hint\": \"mode axe x\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode y-axis\",\n      \"localized\": \"mode axe y\",\n      \"reload\": \"\",\n      \"hint\": \"mode axe y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model auto-download on demand\",\n      \"localized\": \"téléchargement automatique du modèle sur demande\",\n      \"reload\": \"\",\n      \"hint\": \"téléchargement automatique du modèle sur demande\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model autoload on start\",\n      \"localized\": \"chargement automatique du modèle au démarrage\",\n      \"reload\": \"\",\n      \"hint\": \"chargement automatique du modèle au démarrage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model compile fullgraph\",\n      \"localized\": \"compilation du modèle fullgraph\",\n      \"reload\": \"\",\n      \"hint\": \"compilation du modèle fullgraph\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model compile suppress errors\",\n      \"localized\": \"compilation du modèle (supprimer les erreurs)\",\n      \"reload\": \"\",\n      \"hint\": \"compilation du modèle (supprimer les erreurs)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model compile verbose mode\",\n      \"localized\": \"compilation du modèle (mode verbeux)\",\n      \"reload\": \"\",\n      \"hint\": \"compilation du modèle (mode verbeux)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model info\",\n      \"localized\": \"infos modèle\",\n      \"reload\": \"\",\n      \"hint\": \"infos modèle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model metadata\",\n      \"localized\": \"métadonnées du modèle\",\n      \"reload\": \"\",\n      \"hint\": \"métadonnées du modèle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model name\",\n      \"localized\": \"nom du modèle\",\n      \"reload\": \"\",\n      \"hint\": \"nom du modèle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model precision\",\n      \"localized\": \"précision du modèle\",\n      \"reload\": \"\",\n      \"hint\": \"précision du modèle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model type\",\n      \"localized\": \"type de modèle\",\n      \"reload\": \"\",\n      \"hint\": \"type de modèle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model url\",\n      \"localized\": \"url du modèle\",\n      \"reload\": \"\",\n      \"hint\": \"url du modèle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"modern\",\n      \"localized\": \"moderne\",\n      \"reload\": \"\",\n      \"hint\": \"moderne\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"momentum\",\n      \"localized\": \"momentum\",\n      \"reload\": \"\",\n      \"hint\": \"momentum\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"motion level\",\n      \"localized\": \"niveau de mouvement\",\n      \"reload\": \"\",\n      \"hint\": \"niveau de mouvement\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mount url subpath\",\n      \"localized\": \"monter le sous-chemin url\",\n      \"reload\": \"\",\n      \"hint\": \"monter le sous-chemin url\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move base model to cpu when using refiner\",\n      \"localized\": \"déplacer le modèle de base vers le cpu lors de l'utilisation du raffineur\",\n      \"reload\": \"\",\n      \"hint\": \"déplacer le modèle de base vers le cpu lors de l'utilisation du raffineur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move base model to cpu when using vae\",\n      \"localized\": \"déplacer le modèle de base vers le cpu lors de l'utilisation du vae\",\n      \"reload\": \"\",\n      \"hint\": \"déplacer le modèle de base vers le cpu lors de l'utilisation du vae\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move detailer model to cpu when complete\",\n      \"localized\": \"déplacer le modèle de détaillage vers le cpu une fois terminé\",\n      \"reload\": \"\",\n      \"hint\": \"déplacer le modèle de détaillage vers le cpu une fois terminé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move refiner model to cpu when not in use\",\n      \"localized\": \"déplacer le modèle de raffineur vers le cpu lorsqu'il n'est pas utilisé\",\n      \"reload\": \"\",\n      \"hint\": \"déplacer le modèle de raffineur vers le cpu lorsqu'il n'est pas utilisé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"movements\",\n      \"localized\": \"mouvements\",\n      \"reload\": \"\",\n      \"hint\": \"mouvements\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"multi decoder\",\n      \"localized\": \"décodeur multiple\",\n      \"reload\": \"\",\n      \"hint\": \"décodeur multiple\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"multistep restore\",\n      \"localized\": \"restauration multi-étapes\",\n      \"reload\": \"\",\n      \"hint\": \"restauration multi-étapes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"native\",\n      \"localized\": \"natif\",\n      \"reload\": \"\",\n      \"hint\": \"natif\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"near threshold\",\n      \"localized\": \"près du seuil\",\n      \"reload\": \"\",\n      \"hint\": \"près du seuil\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"negative\",\n      \"localized\": \"négatif\",\n      \"reload\": \"\",\n      \"hint\": \"négatif\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"network negative prompt\",\n      \"localized\": \"invite négative du réseau\",\n      \"reload\": \"\",\n      \"hint\": \"invite négative du réseau\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"network parameters\",\n      \"localized\": \"paramètres du réseau\",\n      \"reload\": \"\",\n      \"hint\": \"paramètres du réseau\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"network prompt\",\n      \"localized\": \"invite du réseau\",\n      \"reload\": \"\",\n      \"hint\": \"invite du réseau\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"new model name\",\n      \"localized\": \"nouveau nom de modèle\",\n      \"reload\": \"\",\n      \"hint\": \"nouveau nom de modèle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"nf4\",\n      \"localized\": \"nf4\",\n      \"reload\": \"\",\n      \"hint\": \"nf4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"nms\",\n      \"localized\": \"nms\",\n      \"reload\": \"\",\n      \"hint\": \"nms\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise\",\n      \"localized\": \"bruit\",\n      \"reload\": \"\",\n      \"hint\": \"bruit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise multiplier (eta)\",\n      \"localized\": \"multiplicateur de bruit (eta)\",\n      \"reload\": \"\",\n      \"hint\": \"multiplicateur de bruit (eta)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise multiplier for image processing\",\n      \"localized\": \"multiplicateur de bruit pour le traitement d'image\",\n      \"reload\": \"\",\n      \"hint\": \"multiplicateur de bruit pour le traitement d'image\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise seed delta (eta)\",\n      \"localized\": \"delta de la graine de bruit (eta)\",\n      \"reload\": \"\",\n      \"hint\": \"delta de la graine de bruit (eta)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise strength\",\n      \"localized\": \"force du bruit\",\n      \"reload\": \"\",\n      \"hint\": \"force du bruit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"none\",\n      \"localized\": \"aucun\",\n      \"reload\": \"\",\n      \"hint\": \"aucun\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"note\",\n      \"localized\": \"note\",\n      \"reload\": \"\",\n      \"hint\": \"note\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"nothing\",\n      \"localized\": \"rien\",\n      \"reload\": \"\",\n      \"hint\": \"rien\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"num beams\",\n      \"localized\": \"nombre de faisceaux\",\n      \"reload\": \"\",\n      \"hint\": \"nombre de faisceaux\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"number\",\n      \"localized\": \"nombre\",\n      \"reload\": \"\",\n      \"hint\": \"nombre\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"numbered filenames\",\n      \"localized\": \"noms de fichiers numérotés\",\n      \"reload\": \"\",\n      \"hint\": \"noms de fichiers numérotés\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"offload\",\n      \"localized\": \"décharger\",\n      \"reload\": \"\",\n      \"hint\": \"décharger\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"offload face module\",\n      \"localized\": \"décharger le module facial\",\n      \"reload\": \"\",\n      \"hint\": \"décharger le module facial\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"offload models\",\n      \"localized\": \"décharger les modèles\",\n      \"reload\": \"\",\n      \"hint\": \"décharger les modèles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"olive-ai\",\n      \"localized\": \"olive-ai\",\n      \"reload\": \"\",\n      \"hint\": \"olive-ai\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"onediff\",\n      \"localized\": \"onediff\",\n      \"reload\": \"\",\n      \"hint\": \"onediff\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"onnx\",\n      \"localized\": \"onnx\",\n      \"reload\": \"\",\n      \"hint\": \"onnx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openbody\",\n      \"localized\": \"openbody\",\n      \"reload\": \"\",\n      \"hint\": \"openbody\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openclip\",\n      \"localized\": \"openclip\",\n      \"reload\": \"\",\n      \"hint\": \"openclip\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino disable memory cleanup after compile\",\n      \"localized\": \"openvino désactiver le nettoyage de la mémoire après compilation\",\n      \"reload\": \"\",\n      \"hint\": \"openvino désactiver le nettoyage de la mémoire après compilation\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino disable model caching\",\n      \"localized\": \"openvino désactiver la mise en cache du modèle\",\n      \"reload\": \"\",\n      \"hint\": \"openvino désactiver la mise en cache du modèle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino mode\",\n      \"localized\": \"mode openvino\",\n      \"reload\": \"\",\n      \"hint\": \"mode openvino\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino_fx\",\n      \"localized\": \"openvino_fx\",\n      \"reload\": \"\",\n      \"hint\": \"openvino_fx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"optional image description\",\n      \"localized\": \"description d'image facultative\",\n      \"reload\": \"\",\n      \"hint\": \"description d'image facultative\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"optional init image or video\",\n      \"localized\": \"image ou vidéo d'initialisation facultative\",\n      \"reload\": \"\",\n      \"hint\": \"image ou vidéo d'initialisation facultative\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"order\",\n      \"localized\": \"ordre\",\n      \"reload\": \"\",\n      \"hint\": \"ordre\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ortho\",\n      \"localized\": \"ortho\",\n      \"reload\": \"\",\n      \"hint\": \"ortho\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"outpaint\",\n      \"localized\": \"outpaint\",\n      \"reload\": \"\",\n      \"hint\": \"outpaint\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"output model\",\n      \"localized\": \"modèle de sortie\",\n      \"reload\": \"\",\n      \"hint\": \"modèle de sortie\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override resolution\",\n      \"localized\": \"outrepasser la résolution\",\n      \"reload\": \"\",\n      \"hint\": \"outrepasser la résolution\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override sampler\",\n      \"localized\": \"outrepasser l'échantillonneur\",\n      \"reload\": \"\",\n      \"hint\": \"outrepasser l'échantillonneur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override scheduler\",\n      \"localized\": \"outrepasser l'ordonnanceur\",\n      \"reload\": \"\",\n      \"hint\": \"outrepasser l'ordonnanceur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override steps\",\n      \"localized\": \"outrepasser les étapes\",\n      \"reload\": \"\",\n      \"hint\": \"outrepasser les étapes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override t1 ratio\",\n      \"localized\": \"outrepasser le ratio t1\",\n      \"reload\": \"\",\n      \"hint\": \"outrepasser le ratio t1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override t2 ratio\",\n      \"localized\": \"outrepasser le ratio t2\",\n      \"reload\": \"\",\n      \"hint\": \"outrepasser le ratio t2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"overwrite existing file\",\n      \"localized\": \"écraser le fichier existant\",\n      \"reload\": \"\",\n      \"hint\": \"écraser le fichier existant\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"overwrite model\",\n      \"localized\": \"écraser le modèle\",\n      \"reload\": \"\",\n      \"hint\": \"écraser le modèle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pad frames\",\n      \"localized\": \"remplir les cadres\",\n      \"reload\": \"\",\n      \"hint\": \"remplir les cadres\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"padding\",\n      \"localized\": \"remplissage\",\n      \"reload\": \"\",\n      \"hint\": \"remplissage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"parallel process images in batch\",\n      \"localized\": \"traiter les images en parallèle par lot\",\n      \"reload\": \"\",\n      \"hint\": \"traiter les images en parallèle par lot\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"parameter free\",\n      \"localized\": \"sans paramètre\",\n      \"reload\": \"\",\n      \"hint\": \"sans paramètre\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"path to model file\",\n      \"localized\": \"chemin vers le fichier modèle\",\n      \"reload\": \"\",\n      \"hint\": \"chemin vers le fichier modèle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"path to notification sound\",\n      \"localized\": \"chemin vers le son de notification\",\n      \"reload\": \"\",\n      \"hint\": \"chemin vers le son de notification\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"peft\",\n      \"localized\": \"peft\",\n      \"reload\": \"\",\n      \"hint\": \"peft\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"penalty\",\n      \"localized\": \"pénalité\",\n      \"reload\": \"\",\n      \"hint\": \"pénalité\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perflow\",\n      \"localized\": \"perflow\",\n      \"reload\": \"\",\n      \"hint\": \"perflow\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perform injection\",\n      \"localized\": \"effectuer l'injection\",\n      \"reload\": \"\",\n      \"hint\": \"effectuer l'injection\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perform sdsa\",\n      \"localized\": \"effectuer sdsa\",\n      \"reload\": \"\",\n      \"hint\": \"effectuer sdsa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perform warmup\",\n      \"localized\": \"effectuer le préchauffage\",\n      \"reload\": \"\",\n      \"hint\": \"effectuer le préchauffage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"performance\",\n      \"localized\": \"performance\",\n      \"reload\": \"\",\n      \"hint\": \"performance\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"photomaker model\",\n      \"localized\": \"modèle photomaker\",\n      \"reload\": \"\",\n      \"hint\": \"modèle photomaker\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pidinet\",\n      \"localized\": \"pidinet\",\n      \"reload\": \"\",\n      \"hint\": \"pidinet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pipeline\",\n      \"localized\": \"pipeline\",\n      \"reload\": \"\",\n      \"hint\": \"pipeline\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pixels to expand\",\n      \"localized\": \"pixels à étendre\",\n      \"reload\": \"\",\n      \"hint\": \"pixels à étendre\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"platform\",\n      \"localized\": \"plateforme\",\n      \"reload\": \"\",\n      \"hint\": \"plateforme\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"play\",\n      \"localized\": \"jouer\",\n      \"reload\": \"\",\n      \"hint\": \"jouer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"play a notification upon completion\",\n      \"localized\": \"émettre une notification à la fin\",\n      \"reload\": \"\",\n      \"hint\": \"émettre une notification à la fin\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pndm\",\n      \"localized\": \"pndm\",\n      \"reload\": \"\",\n      \"hint\": \"pndm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"polyexponential\",\n      \"localized\": \"polyexponentiel\",\n      \"reload\": \"\",\n      \"hint\": \"polyexponentiel\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pony\",\n      \"localized\": \"poney\",\n      \"reload\": \"\",\n      \"hint\": \"poney\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pose confidence\",\n      \"localized\": \"confiance de la pose\",\n      \"reload\": \"\",\n      \"hint\": \"confiance de la pose\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"positive\",\n      \"localized\": \"positif\",\n      \"reload\": \"\",\n      \"hint\": \"positif\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocess mask\",\n      \"localized\": \"masque post-traitement\",\n      \"reload\": \"\",\n      \"hint\": \"masque post-traitement\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocess upscale\",\n      \"localized\": \"mise à l'échelle post-traitement\",\n      \"reload\": \"\",\n      \"hint\": \"mise à l'échelle post-traitement\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocessing operation order\",\n      \"localized\": \"ordre des opérations de post-traitement\",\n      \"reload\": \"\",\n      \"hint\": \"ordre des opérations de post-traitement\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"power\",\n      \"localized\": \"puissance\",\n      \"reload\": \"\",\n      \"hint\": \"puissance\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"predefined question\",\n      \"localized\": \"question prédéfinie\",\n      \"reload\": \"\",\n      \"hint\": \"question prédéfinie\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prediction method\",\n      \"localized\": \"méthode de prédiction\",\n      \"reload\": \"\",\n      \"hint\": \"méthode de prédiction\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preset\",\n      \"localized\": \"préréglage\",\n      \"reload\": \"\",\n      \"hint\": \"préréglage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preset block merge\",\n      \"localized\": \"fusion de blocs de préréglage\",\n      \"reload\": \"\",\n      \"hint\": \"fusion de blocs de préréglage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview\",\n      \"localized\": \"aperçu\",\n      \"reload\": \"\",\n      \"hint\": \"aperçu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview end\",\n      \"localized\": \"fin de l'aperçu\",\n      \"reload\": \"\",\n      \"hint\": \"fin de l'aperçu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview start\",\n      \"localized\": \"début de l'aperçu\",\n      \"reload\": \"\",\n      \"hint\": \"début de l'aperçu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"primary model\",\n      \"localized\": \"modèle principal\",\n      \"reload\": \"\",\n      \"hint\": \"modèle principal\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor\",\n      \"localized\": \"processeur\",\n      \"reload\": \"\",\n      \"hint\": \"processeur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor move to cpu after use\",\n      \"localized\": \"déplacer le processeur vers le cpu après utilisation\",\n      \"reload\": \"\",\n      \"hint\": \"déplacer le processeur vers le cpu après utilisation\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor settings\",\n      \"localized\": \"paramètres du processeur\",\n      \"reload\": \"\",\n      \"hint\": \"paramètres du processeur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor unload after use\",\n      \"localized\": \"décharger le processeur après utilisation\",\n      \"reload\": \"\",\n      \"hint\": \"décharger le processeur après utilisation\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt attention normalization\",\n      \"localized\": \"normalisation de l'attention du prompt\",\n      \"reload\": \"\",\n      \"hint\": \"normalisation de l'attention du prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt ex\",\n      \"localized\": \"prompt ex\",\n      \"reload\": \"\",\n      \"hint\": \"prompt ex\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt processor\",\n      \"localized\": \"processeur de prompt\",\n      \"reload\": \"\",\n      \"hint\": \"processeur de prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt strength\",\n      \"localized\": \"force du prompt\",\n      \"reload\": \"\",\n      \"hint\": \"force du prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt thresholds:\",\n      \"localized\": \"seuils de prompt :\",\n      \"reload\": \"\",\n      \"hint\": \"seuils de prompt :\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompts\",\n      \"localized\": \"prompts\",\n      \"reload\": \"\",\n      \"hint\": \"prompts\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"provider\",\n      \"localized\": \"fournisseur\",\n      \"reload\": \"\",\n      \"hint\": \"fournisseur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prune\",\n      \"localized\": \"élaguer\",\n      \"reload\": \"\",\n      \"hint\": \"élaguer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quad\",\n      \"localized\": \"quad\",\n      \"reload\": \"\",\n      \"hint\": \"quad\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization activations type\",\n      \"localized\": \"type d'activations de quantification\",\n      \"reload\": \"\",\n      \"hint\": \"type d'activations de quantification\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization mode\",\n      \"localized\": \"mode de quantification\",\n      \"reload\": \"\",\n      \"hint\": \"mode de quantification\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization type\",\n      \"localized\": \"type de quantification\",\n      \"reload\": \"\",\n      \"hint\": \"type de quantification\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization weights type\",\n      \"localized\": \"type de poids de quantification\",\n      \"reload\": \"\",\n      \"hint\": \"type de poids de quantification\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"random seeds\",\n      \"localized\": \"graines aléatoires\",\n      \"reload\": \"\",\n      \"hint\": \"graines aléatoires\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"range\",\n      \"localized\": \"plage\",\n      \"reload\": \"\",\n      \"hint\": \"plage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rebase\",\n      \"localized\": \"rebaser\",\n      \"reload\": \"\",\n      \"hint\": \"rebaser\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"recursive\",\n      \"localized\": \"récursif\",\n      \"reload\": \"\",\n      \"hint\": \"récursif\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reduce-overhead\",\n      \"localized\": \"réduire la surcharge\",\n      \"reload\": \"\",\n      \"hint\": \"réduire la surcharge\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"redux prompt strength\",\n      \"localized\": \"force de prompt redux\",\n      \"reload\": \"\",\n      \"hint\": \"force de prompt redux\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference adain weight\",\n      \"localized\": \"poids adain de référence\",\n      \"reload\": \"\",\n      \"hint\": \"poids adain de référence\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference query weight\",\n      \"localized\": \"poids de requête de référence\",\n      \"reload\": \"\",\n      \"hint\": \"poids de requête de référence\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference unit 1\",\n      \"localized\": \"unité de référence 1\",\n      \"reload\": \"\",\n      \"hint\": \"unité de référence 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refine foreground\",\n      \"localized\": \"affiner le premier plan\",\n      \"reload\": \"\",\n      \"hint\": \"affiner le premier plan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh bench\",\n      \"localized\": \"rafraîchir le benchmark\",\n      \"reload\": \"\",\n      \"hint\": \"rafraîchir le benchmark\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh data\",\n      \"localized\": \"rafraîchir les données\",\n      \"reload\": \"\",\n      \"hint\": \"rafraîchir les données\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh state\",\n      \"localized\": \"rafraîchir l'état\",\n      \"reload\": \"\",\n      \"hint\": \"rafraîchir l'état\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh ui values\",\n      \"localized\": \"rafraîchir les valeurs de l'interface utilisateur\",\n      \"reload\": \"\",\n      \"hint\": \"rafraîchir les valeurs de l'interface utilisateur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reinstall\",\n      \"localized\": \"réinstaller\",\n      \"reload\": \"\",\n      \"hint\": \"réinstaller\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"remove background\",\n      \"localized\": \"supprimer l'arrière-plan\",\n      \"reload\": \"\",\n      \"hint\": \"supprimer l'arrière-plan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repeat x-axis\",\n      \"localized\": \"répéter sur l'axe x\",\n      \"reload\": \"\",\n      \"hint\": \"répéter sur l'axe x\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repeat y-axis\",\n      \"localized\": \"répéter sur l'axe y\",\n      \"reload\": \"\",\n      \"hint\": \"répéter sur l'axe y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"replace vae\",\n      \"localized\": \"remplacer le vae\",\n      \"reload\": \"\",\n      \"hint\": \"remplacer le vae\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repos\",\n      \"localized\": \"dépôts\",\n      \"reload\": \"\",\n      \"hint\": \"dépôts\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess decode\",\n      \"localized\": \"retraiter le décodage\",\n      \"reload\": \"\",\n      \"hint\": \"retraiter le décodage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess face\",\n      \"localized\": \"retraiter le visage\",\n      \"reload\": \"\",\n      \"hint\": \"retraiter le visage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess refine\",\n      \"localized\": \"retraiter et affiner\",\n      \"reload\": \"\",\n      \"hint\": \"retraiter et affiner\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"request browser notifications\",\n      \"localized\": \"demander les notifications du navigateur\",\n      \"reload\": \"\",\n      \"hint\": \"demander les notifications du navigateur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rescale\",\n      \"localized\": \"remettre à l'échelle\",\n      \"reload\": \"\",\n      \"hint\": \"remettre à l'échelle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rescale betas with zero terminal snr\",\n      \"localized\": \"remettre à l'échelle les bêtas avec un snr terminal zéro\",\n      \"reload\": \"\",\n      \"hint\": \"remettre à l'échelle les bêtas avec un snr terminal zéro\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reset anchors\",\n      \"localized\": \"réinitialiser les ancres\",\n      \"reload\": \"\",\n      \"hint\": \"réinitialiser les ancres\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"residual diff threshold\",\n      \"localized\": \"seuil de différence résiduelle\",\n      \"reload\": \"\",\n      \"hint\": \"seuil de différence résiduelle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize background color\",\n      \"localized\": \"redimensionner la couleur de fond\",\n      \"reload\": \"\",\n      \"hint\": \"redimensionner la couleur de fond\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize method\",\n      \"localized\": \"méthode de redimensionnement\",\n      \"reload\": \"\",\n      \"hint\": \"méthode de redimensionnement\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize mode\",\n      \"localized\": \"mode de redimensionnement\",\n      \"reload\": \"\",\n      \"hint\": \"mode de redimensionnement\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize scale\",\n      \"localized\": \"échelle de redimensionnement\",\n      \"reload\": \"\",\n      \"hint\": \"échelle de redimensionnement\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restart step\",\n      \"localized\": \"étape de redémarrage\",\n      \"reload\": \"\",\n      \"hint\": \"étape de redémarrage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore faces: codeformer\",\n      \"localized\": \"restaurer les visages : codeformer\",\n      \"reload\": \"\",\n      \"hint\": \"restaurer les visages : codeformer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore faces: gfpgan\",\n      \"localized\": \"restaurer les visages : gfpgan\",\n      \"reload\": \"\",\n      \"hint\": \"restaurer les visages : gfpgan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore pipe on end\",\n      \"localized\": \"restaurer le pipeline à la fin\",\n      \"reload\": \"\",\n      \"hint\": \"restaurer le pipeline à la fin\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore unparsed prompt\",\n      \"localized\": \"restaurer le prompt non analysé\",\n      \"reload\": \"\",\n      \"hint\": \"restaurer le prompt non analysé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reswapper model\",\n      \"localized\": \"modèle reswapper\",\n      \"reload\": \"\",\n      \"hint\": \"modèle reswapper\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"return original images\",\n      \"localized\": \"retourner les images originales\",\n      \"reload\": \"\",\n      \"hint\": \"retourner les images originales\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"right\",\n      \"localized\": \"droite\",\n      \"reload\": \"\",\n      \"hint\": \"droite\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"root model folder\",\n      \"localized\": \"dossier racine des modèles\",\n      \"reload\": \"\",\n      \"hint\": \"dossier racine des modèles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rows\",\n      \"localized\": \"lignes\",\n      \"reload\": \"\",\n      \"hint\": \"lignes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"run\",\n      \"localized\": \"exécuter\",\n      \"reload\": \"\",\n      \"hint\": \"exécuter\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"run benchmark\",\n      \"localized\": \"exécuter le benchmark\",\n      \"reload\": \"\",\n      \"hint\": \"exécuter le benchmark\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sa solver\",\n      \"localized\": \"solveur sa\",\n      \"reload\": \"\",\n      \"hint\": \"solveur sa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"safetensors\",\n      \"localized\": \"safetensors\",\n      \"reload\": \"\",\n      \"hint\": \"safetensors\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sage attention\",\n      \"localized\": \"attention sage\",\n      \"reload\": \"\",\n      \"hint\": \"attention sage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"same as primary\",\n      \"localized\": \"identique au principal\",\n      \"reload\": \"\",\n      \"hint\": \"identique au principal\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"same latent\",\n      \"localized\": \"même latent\",\n      \"reload\": \"\",\n      \"hint\": \"même latent\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sample\",\n      \"localized\": \"échantillon\",\n      \"reload\": \"\",\n      \"hint\": \"échantillon\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler\",\n      \"localized\": \"échantillonneur\",\n      \"reload\": \"\",\n      \"hint\": \"échantillonneur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler dynamic shift\",\n      \"localized\": \"décalage dynamique de l'échantillonneur\",\n      \"reload\": \"\",\n      \"hint\": \"décalage dynamique de l'échantillonneur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler order\",\n      \"localized\": \"ordre de l'échantillonneur\",\n      \"reload\": \"\",\n      \"hint\": \"ordre de l'échantillonneur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler shift\",\n      \"localized\": \"décalage de l'échantillonneur\",\n      \"reload\": \"\",\n      \"hint\": \"décalage de l'échantillonneur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sana: use complex human instructions\",\n      \"localized\": \"sana : utiliser des instructions humaines complexes\",\n      \"reload\": \"\",\n      \"hint\": \"sana : utiliser des instructions humaines complexes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"saturation\",\n      \"localized\": \"saturation\",\n      \"reload\": \"\",\n      \"hint\": \"saturation\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save all generated image grids\",\n      \"localized\": \"enregistrer toutes les grilles d'images générées\",\n      \"reload\": \"\",\n      \"hint\": \"enregistrer toutes les grilles d'images générées\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save all generated images\",\n      \"localized\": \"enregistrer toutes les images générées\",\n      \"reload\": \"\",\n      \"hint\": \"enregistrer toutes les images générées\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save caption files\",\n      \"localized\": \"sauvegarder les fichiers de légende\",\n      \"reload\": \"\",\n      \"hint\": \"sauvegarder les fichiers de légende\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save diffusers\",\n      \"localized\": \"sauvegarder les diffuseurs\",\n      \"reload\": \"\",\n      \"hint\": \"sauvegarder les diffuseurs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save hdr image\",\n      \"localized\": \"sauvegarder l'image HDR\",\n      \"reload\": \"\",\n      \"hint\": \"sauvegarder l'image HDR\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before color correction\",\n      \"localized\": \"sauvegarder l'image avant correction des couleurs\",\n      \"reload\": \"\",\n      \"hint\": \"sauvegarder l'image avant correction des couleurs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before detailer\",\n      \"localized\": \"sauvegarder l'image avant le détaileur\",\n      \"reload\": \"\",\n      \"hint\": \"sauvegarder l'image avant le détaileur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before hires\",\n      \"localized\": \"sauvegarder l'image avant l'upscaling haute résolution\",\n      \"reload\": \"\",\n      \"hint\": \"sauvegarder l'image avant l'upscaling haute résolution\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before refiner\",\n      \"localized\": \"sauvegarder l'image avant l'affineur\",\n      \"reload\": \"\",\n      \"hint\": \"sauvegarder l'image avant l'affineur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save images to a subdirectory\",\n      \"localized\": \"sauvegarder les images dans un sous-répertoire\",\n      \"reload\": \"\",\n      \"hint\": \"sauvegarder les images dans un sous-répertoire\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save init images\",\n      \"localized\": \"sauvegarder les images d'initialisation\",\n      \"reload\": \"\",\n      \"hint\": \"sauvegarder les images d'initialisation\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save inpainting mask\",\n      \"localized\": \"sauvegarder le masque d'inpainting\",\n      \"reload\": \"\",\n      \"hint\": \"sauvegarder le masque d'inpainting\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save inpainting masked composite\",\n      \"localized\": \"sauvegarder le composite masqué d'inpainting\",\n      \"reload\": \"\",\n      \"hint\": \"sauvegarder le composite masqué d'inpainting\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save metadata\",\n      \"localized\": \"sauvegarder les métadonnées\",\n      \"reload\": \"\",\n      \"hint\": \"sauvegarder les métadonnées\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save only saves selected image\",\n      \"localized\": \"enregistrer uniquement l'image sélectionnée\",\n      \"reload\": \"\",\n      \"hint\": \"enregistrer uniquement l'image sélectionnée\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save output\",\n      \"localized\": \"sauvegarder la sortie\",\n      \"reload\": \"\",\n      \"hint\": \"sauvegarder la sortie\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save safetensors\",\n      \"localized\": \"sauvegarder les safetensors\",\n      \"reload\": \"\",\n      \"hint\": \"sauvegarder les safetensors\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save unparsed prompt\",\n      \"localized\": \"sauvegarder l'invite non analysée\",\n      \"reload\": \"\",\n      \"hint\": \"sauvegarder l'invite non analysée\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale  after\",\n      \"localized\": \"mise à l'échelle après\",\n      \"reload\": \"\",\n      \"hint\": \"mise à l'échelle après\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale  before\",\n      \"localized\": \"mise à l'échelle avant\",\n      \"reload\": \"\",\n      \"hint\": \"mise à l'échelle avant\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale  mask\",\n      \"localized\": \"mise à l'échelle du masque\",\n      \"reload\": \"\",\n      \"hint\": \"mise à l'échelle du masque\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale factor\",\n      \"localized\": \"facteur d'échelle\",\n      \"reload\": \"\",\n      \"hint\": \"facteur d'échelle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"score\",\n      \"localized\": \"score\",\n      \"reload\": \"\",\n      \"hint\": \"score\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"score threshold\",\n      \"localized\": \"seuil de score\",\n      \"reload\": \"\",\n      \"hint\": \"seuil de score\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scribble\",\n      \"localized\": \"gribouillis\",\n      \"reload\": \"\",\n      \"hint\": \"gribouillis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-attire\",\n      \"localized\": \"sd15-tenue\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-tenue\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-likeness\",\n      \"localized\": \"sd15-ressemblance\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-ressemblance\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-navimixu\",\n      \"localized\": \"sd15-navimixu\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-navimixu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-sexy\",\n      \"localized\": \"sd15-sexy\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-sexy\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-artstyle\",\n      \"localized\": \"sdxl-style artistique\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-style artistique\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-negative\",\n      \"localized\": \"sdxl-négatif\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-négatif\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-sexy\",\n      \"localized\": \"sdxl-sexy\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-sexy\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-sliders\",\n      \"localized\": \"sdxl-curseurs\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-curseurs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-toon\",\n      \"localized\": \"sdxl-cartoon\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-cartoon\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl: use weighted pooled embeds\",\n      \"localized\": \"sdxl: utiliser des embeddings pondérés agrégés\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl: utiliser des embeddings pondérés agrégés\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search changelog\",\n      \"localized\": \"rechercher le journal des modifications\",\n      \"reload\": \"\",\n      \"hint\": \"rechercher le journal des modifications\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search models\",\n      \"localized\": \"rechercher les modèles\",\n      \"reload\": \"\",\n      \"hint\": \"rechercher les modèles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search wiki pages\",\n      \"localized\": \"rechercher les pages wiki\",\n      \"reload\": \"\",\n      \"hint\": \"rechercher les pages wiki\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"secondary model\",\n      \"localized\": \"modèle secondaire\",\n      \"reload\": \"\",\n      \"hint\": \"modèle secondaire\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"segmentanything\",\n      \"localized\": \"segmentanything\",\n      \"reload\": \"\",\n      \"hint\": \"segmentanything\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"select\",\n      \"localized\": \"sélectionner\",\n      \"reload\": \"\",\n      \"hint\": \"sélectionner\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"select model\",\n      \"localized\": \"sélectionner le modèle\",\n      \"reload\": \"\",\n      \"hint\": \"sélectionner le modèle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send interrupt\",\n      \"localized\": \"envoyer une interruption\",\n      \"reload\": \"\",\n      \"hint\": \"envoyer une interruption\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send seed when sending prompt or image to other interface\",\n      \"localized\": \"envoyer la graine lors de l'envoi de l'invite ou de l'image à une autre interface\",\n      \"reload\": \"\",\n      \"hint\": \"envoyer la graine lors de l'envoi de l'invite ou de l'image à une autre interface\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send size when sending prompt or image to another interface\",\n      \"localized\": \"envoyer la taille lors de l'envoi de l'invite ou de l'image à une autre interface\",\n      \"reload\": \"\",\n      \"hint\": \"envoyer la taille lors de l'envoi de l'invite ou de l'image à une autre interface\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sequential\",\n      \"localized\": \"séquentiel\",\n      \"reload\": \"\",\n      \"hint\": \"séquentiel\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"server start time\",\n      \"localized\": \"heure de démarrage du serveur\",\n      \"reload\": \"\",\n      \"hint\": \"heure de démarrage du serveur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"set at prompt start\",\n      \"localized\": \"définir au début de l'invite\",\n      \"reload\": \"\",\n      \"hint\": \"définir au début de l'invite\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"set ui menu states\",\n      \"localized\": \"définir les états du menu de l'interface utilisateur\",\n      \"reload\": \"\",\n      \"hint\": \"définir les états du menu de l'interface utilisateur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"share queries\",\n      \"localized\": \"partager les requêtes\",\n      \"reload\": \"\",\n      \"hint\": \"partager les requêtes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shared options\",\n      \"localized\": \"options partagées\",\n      \"reload\": \"\",\n      \"hint\": \"options partagées\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sharpen\",\n      \"localized\": \"netteté\",\n      \"reload\": \"\",\n      \"hint\": \"netteté\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shift\",\n      \"localized\": \"décalage\",\n      \"reload\": \"\",\n      \"hint\": \"décalage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show grid in results\",\n      \"localized\": \"afficher la grille dans les résultats\",\n      \"reload\": \"\",\n      \"hint\": \"afficher la grille dans les résultats\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show input\",\n      \"localized\": \"afficher l'entrée\",\n      \"reload\": \"\",\n      \"hint\": \"afficher l'entrée\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show metadata in full screen image browser\",\n      \"localized\": \"afficher les métadonnées dans le navigateur d'images plein écran\",\n      \"reload\": \"\",\n      \"hint\": \"afficher les métadonnées dans le navigateur d'images plein écran\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show motd\",\n      \"localized\": \"afficher le message du jour\",\n      \"reload\": \"\",\n      \"hint\": \"afficher le message du jour\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show preview\",\n      \"localized\": \"afficher l'aperçu\",\n      \"reload\": \"\",\n      \"hint\": \"afficher l'aperçu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shuffle weights\",\n      \"localized\": \"mélanger les poids\",\n      \"reload\": \"\",\n      \"hint\": \"mélanger les poids\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma\",\n      \"localized\": \"sigma\",\n      \"reload\": \"\",\n      \"hint\": \"sigma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma churn\",\n      \"localized\": \"agitation sigma\",\n      \"reload\": \"\",\n      \"hint\": \"agitation sigma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma max\",\n      \"localized\": \"sigma max\",\n      \"reload\": \"\",\n      \"hint\": \"sigma max\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma method\",\n      \"localized\": \"méthode sigma\",\n      \"reload\": \"\",\n      \"hint\": \"méthode sigma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma min\",\n      \"localized\": \"sigma min\",\n      \"reload\": \"\",\n      \"hint\": \"sigma min\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma noise\",\n      \"localized\": \"bruit sigma\",\n      \"reload\": \"\",\n      \"hint\": \"bruit sigma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma tmin\",\n      \"localized\": \"sigma tmin\",\n      \"reload\": \"\",\n      \"hint\": \"sigma tmin\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"simple merge\",\n      \"localized\": \"fusion simple\",\n      \"reload\": \"\",\n      \"hint\": \"fusion simple\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"size\",\n      \"localized\": \"taille\",\n      \"reload\": \"\",\n      \"hint\": \"taille\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sketch\",\n      \"localized\": \"esquisse\",\n      \"reload\": \"\",\n      \"hint\": \"esquisse\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip generation if nan found in latents\",\n      \"localized\": \"ignorer la génération si NaN est trouvé dans les latents\",\n      \"reload\": \"\",\n      \"hint\": \"ignorer la génération si NaN est trouvé dans les latents\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip guidance layers\",\n      \"localized\": \"ignorer les couches de guidage\",\n      \"reload\": \"\",\n      \"hint\": \"ignorer les couches de guidage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip input frames\",\n      \"localized\": \"ignorer les images d'entrée\",\n      \"reload\": \"\",\n      \"hint\": \"ignorer les images d'entrée\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"slider\",\n      \"localized\": \"curseur\",\n      \"reload\": \"\",\n      \"hint\": \"curseur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"smooth mask\",\n      \"localized\": \"masque lisse\",\n      \"reload\": \"\",\n      \"hint\": \"masque lisse\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"solver order (where\",\n      \"localized\": \"ordre du solveur (où\",\n      \"reload\": \"\",\n      \"hint\": \"ordre du solveur (où\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sort order\",\n      \"localized\": \"ordre de tri\",\n      \"reload\": \"\",\n      \"hint\": \"ordre de tri\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"source subject\",\n      \"localized\": \"sujet source\",\n      \"reload\": \"\",\n      \"hint\": \"sujet source\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"space\",\n      \"localized\": \"espace\",\n      \"reload\": \"\",\n      \"hint\": \"espace\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"spatial frequency\",\n      \"localized\": \"fréquence spatiale\",\n      \"reload\": \"\",\n      \"hint\": \"fréquence spatiale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"specify model revision\",\n      \"localized\": \"spécifier la révision du modèle\",\n      \"reload\": \"\",\n      \"hint\": \"spécifier la révision du modèle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"specify model variant\",\n      \"localized\": \"spécifier la variante du modèle\",\n      \"reload\": \"\",\n      \"hint\": \"spécifier la variante du modèle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"split attention\",\n      \"localized\": \"attention partagée\",\n      \"reload\": \"\",\n      \"hint\": \"attention partagée\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"stable-fast\",\n      \"localized\": \"stable-rapide\",\n      \"reload\": \"\",\n      \"hint\": \"stable-rapide\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"standard\",\n      \"localized\": \"standard\",\n      \"reload\": \"\",\n      \"hint\": \"standard\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"start\",\n      \"localized\": \"démarrer\",\n      \"reload\": \"\",\n      \"hint\": \"démarrer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"start profiling\",\n      \"localized\": \"démarrer le profilage\",\n      \"reload\": \"\",\n      \"hint\": \"démarrer le profilage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"state\",\n      \"localized\": \"état\",\n      \"reload\": \"\",\n      \"hint\": \"état\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"stride\",\n      \"localized\": \"pas\",\n      \"reload\": \"\",\n      \"hint\": \"pas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"structure\",\n      \"localized\": \"structure\",\n      \"reload\": \"\",\n      \"hint\": \"structure\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"style fidelity\",\n      \"localized\": \"fidélité au style\",\n      \"reload\": \"\",\n      \"hint\": \"fidélité au style\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"subject\",\n      \"localized\": \"sujet\",\n      \"reload\": \"\",\n      \"hint\": \"sujet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"submit results\",\n      \"localized\": \"soumettre les résultats\",\n      \"reload\": \"\",\n      \"hint\": \"soumettre les résultats\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"submodules\",\n      \"localized\": \"sous-modules\",\n      \"reload\": \"\",\n      \"hint\": \"sous-modules\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap x/y\",\n      \"localized\": \"échanger x/y\",\n      \"reload\": \"\",\n      \"hint\": \"échanger x/y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap x/z\",\n      \"localized\": \"échanger x/z\",\n      \"reload\": \"\",\n      \"hint\": \"échanger x/z\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap y/z\",\n      \"localized\": \"échanger y/z\",\n      \"reload\": \"\",\n      \"hint\": \"échanger y/z\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i adapter\",\n      \"localized\": \"adaptateur t2i\",\n      \"reload\": \"\",\n      \"hint\": \"adaptateur t2i\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i strength\",\n      \"localized\": \"force t2i\",\n      \"reload\": \"\",\n      \"hint\": \"force t2i\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 1\",\n      \"localized\": \"unité 1 de l'adaptateur t2i\",\n      \"reload\": \"\",\n      \"hint\": \"unité 1 de l'adaptateur t2i\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 2\",\n      \"localized\": \"unité 2 de l'adaptateur t2i\",\n      \"reload\": \"\",\n      \"hint\": \"unité 2 de l'adaptateur t2i\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 3\",\n      \"localized\": \"unité 3 de l'adaptateur t2i\",\n      \"reload\": \"\",\n      \"hint\": \"unité 3 de l'adaptateur t2i\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 4\",\n      \"localized\": \"unité 4 de l'adaptateur t2i\",\n      \"reload\": \"\",\n      \"hint\": \"unité 4 de l'adaptateur t2i\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd\",\n      \"localized\": \"taesd\",\n      \"reload\": \"\",\n      \"hint\": \"taesd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd decode layers\",\n      \"localized\": \"couches de décodage taesd\",\n      \"reload\": \"\",\n      \"hint\": \"couches de décodage taesd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd variant\",\n      \"localized\": \"variante taesd\",\n      \"reload\": \"\",\n      \"hint\": \"variante taesd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"target subject\",\n      \"localized\": \"sujet cible\",\n      \"reload\": \"\",\n      \"hint\": \"sujet cible\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tcd\",\n      \"localized\": \"tcd\",\n      \"reload\": \"\",\n      \"hint\": \"tcd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tdd\",\n      \"localized\": \"tdd\",\n      \"reload\": \"\",\n      \"hint\": \"tdd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"te\",\n      \"localized\": \"te\",\n      \"reload\": \"\",\n      \"hint\": \"te\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"temperature\",\n      \"localized\": \"température\",\n      \"reload\": \"\",\n      \"hint\": \"température\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"temporal frequency\",\n      \"localized\": \"fréquence temporelle\",\n      \"reload\": \"\",\n      \"hint\": \"fréquence temporelle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tertiary model\",\n      \"localized\": \"modèle tertiaire\",\n      \"reload\": \"\",\n      \"hint\": \"modèle tertiaire\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text encoder cache size\",\n      \"localized\": \"taille du cache de l'encodeur de texte\",\n      \"reload\": \"\",\n      \"hint\": \"taille du cache de l'encodeur de texte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text encoder model\",\n      \"localized\": \"modèle d'encodeur de texte\",\n      \"reload\": \"\",\n      \"hint\": \"modèle d'encodeur de texte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text inputs\",\n      \"localized\": \"entrées de texte\",\n      \"reload\": \"\",\n      \"hint\": \"entrées de texte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"textbox\",\n      \"localized\": \"zone de texte\",\n      \"reload\": \"\",\n      \"hint\": \"zone de texte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"threshold\",\n      \"localized\": \"seuil\",\n      \"reload\": \"\",\n      \"hint\": \"seuil\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"thresholding\",\n      \"localized\": \"seuillage\",\n      \"reload\": \"\",\n      \"hint\": \"seuillage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile frames\",\n      \"localized\": \"images tuilées\",\n      \"reload\": \"\",\n      \"hint\": \"images tuilées\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=1\",\n      \"localized\": \"invite de tuile: x=1 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"invite de tuile: x=1 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=2\",\n      \"localized\": \"invite de tuile: x=1 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"invite de tuile: x=1 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=3\",\n      \"localized\": \"invite de tuile: x=1 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"invite de tuile: x=1 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=4\",\n      \"localized\": \"invite de tuile: x=1 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"invite de tuile: x=1 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=1\",\n      \"localized\": \"invite de tuile: x=2 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"invite de tuile: x=2 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=2\",\n      \"localized\": \"invite de tuile: x=2 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"invite de tuile: x=2 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=3\",\n      \"localized\": \"invite de tuile: x=2 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"invite de tuile: x=2 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=4\",\n      \"localized\": \"invite de tuile: x=2 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"invite de tuile: x=2 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=1\",\n      \"localized\": \"invite de tuile: x=3 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"invite de tuile: x=3 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=2\",\n      \"localized\": \"invite de tuile: x=3 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"invite de tuile: x=3 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=3\",\n      \"localized\": \"invite de tuile: x=3 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"invite de tuile: x=3 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=4\",\n      \"localized\": \"invite de tuile: x=3 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"invite de tuile: x=3 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=1\",\n      \"localized\": \"invite de tuile: x=4 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"invite de tuile: x=4 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=2\",\n      \"localized\": \"invite de tuile: x=4 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"invite de tuile: x=4 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=3\",\n      \"localized\": \"invite de tuile: x=4 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"invite de tuile: x=4 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=4\",\n      \"localized\": \"invite de tuile: x=4 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"invite de tuile: x=4 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tiling options\",\n      \"localized\": \"options de tuilage\",\n      \"reload\": \"\",\n      \"hint\": \"options de tuilage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time embedding mix\",\n      \"localized\": \"mélange d'intégration temporelle\",\n      \"reload\": \"\",\n      \"hint\": \"mélange d'intégration temporelle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time_quadratic\",\n      \"localized\": \"time_quadratic\",\n      \"reload\": \"\",\n      \"hint\": \"time_quadratic\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time_uniform\",\n      \"localized\": \"time_uniform\",\n      \"reload\": \"\",\n      \"hint\": \"time_uniform\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep\",\n      \"localized\": \"pas de temps\",\n      \"reload\": \"\",\n      \"hint\": \"pas de temps\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep skip end\",\n      \"localized\": \"fin de saut du pas de temps\",\n      \"reload\": \"\",\n      \"hint\": \"fin de saut du pas de temps\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep skip start\",\n      \"localized\": \"début de saut du pas de temps\",\n      \"reload\": \"\",\n      \"hint\": \"début de saut du pas de temps\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep spacing\",\n      \"localized\": \"espacement des pas de temps\",\n      \"reload\": \"\",\n      \"hint\": \"espacement des pas de temps\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps\",\n      \"localized\": \"pas de temps\",\n      \"reload\": \"\",\n      \"hint\": \"pas de temps\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps override\",\n      \"localized\": \"remplacement des pas de temps\",\n      \"reload\": \"\",\n      \"hint\": \"remplacement des pas de temps\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps presets\",\n      \"localized\": \"préréglages des pas de temps\",\n      \"reload\": \"\",\n      \"hint\": \"préréglages des pas de temps\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps range\",\n      \"localized\": \"plage des pas de temps\",\n      \"reload\": \"\",\n      \"hint\": \"plage des pas de temps\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tiny\",\n      \"localized\": \"minuscule\",\n      \"reload\": \"\",\n      \"hint\": \"minuscule\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"todo\",\n      \"localized\": \"à faire\",\n      \"reload\": \"\",\n      \"hint\": \"à faire\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tome\",\n      \"localized\": \"tome\",\n      \"reload\": \"\",\n      \"hint\": \"tome\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tool\",\n      \"localized\": \"outil\",\n      \"reload\": \"\",\n      \"hint\": \"outil\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"top-k\",\n      \"localized\": \"top-k\",\n      \"reload\": \"\",\n      \"hint\": \"top-k\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"top-p\",\n      \"localized\": \"top-p\",\n      \"reload\": \"\",\n      \"hint\": \"top-p\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"torch\",\n      \"localized\": \"torch\",\n      \"reload\": \"\",\n      \"hint\": \"torch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"transformer\",\n      \"localized\": \"transformateur\",\n      \"reload\": \"\",\n      \"hint\": \"transformateur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"trigger word\",\n      \"localized\": \"mot déclencheur\",\n      \"reload\": \"\",\n      \"hint\": \"mot déclencheur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"true\",\n      \"localized\": \"vrai\",\n      \"reload\": \"\",\n      \"hint\": \"vrai\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tunable ops limit\",\n      \"localized\": \"limite d'opérations ajustables\",\n      \"reload\": \"\",\n      \"hint\": \"limite d'opérations ajustables\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ufogen\",\n      \"localized\": \"ufogen\",\n      \"reload\": \"\",\n      \"hint\": \"ufogen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui card size (px)\",\n      \"localized\": \"taille de carte UI (px)\",\n      \"reload\": \"\",\n      \"hint\": \"taille de carte UI (px)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui fetch network info on mouse-over\",\n      \"localized\": \"UI récupérer les informations réseau au survol de la souris\",\n      \"reload\": \"\",\n      \"hint\": \"UI récupérer les informations réseau au survol de la souris\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui height (%)\",\n      \"localized\": \"hauteur UI (%)\",\n      \"reload\": \"\",\n      \"hint\": \"hauteur UI (%)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui locale\",\n      \"localized\": \"langue de l'interface utilisateur\",\n      \"reload\": \"\",\n      \"hint\": \"langue de l'interface utilisateur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui request timeout\",\n      \"localized\": \"délai d'attente de la requête UI\",\n      \"reload\": \"\",\n      \"hint\": \"délai d'attente de la requête UI\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui show on startup\",\n      \"localized\": \"afficher l'interface utilisateur au démarrage\",\n      \"reload\": \"\",\n      \"hint\": \"afficher l'interface utilisateur au démarrage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui sidebar width (%)\",\n      \"localized\": \"largeur de la barre latérale UI (%)\",\n      \"reload\": \"\",\n      \"hint\": \"largeur de la barre latérale UI (%)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui theme\",\n      \"localized\": \"thème de l'interface utilisateur\",\n      \"reload\": \"\",\n      \"hint\": \"thème de l'interface utilisateur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet\",\n      \"localized\": \"unet\",\n      \"reload\": \"\",\n      \"hint\": \"unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet depth\",\n      \"localized\": \"profondeur unet\",\n      \"reload\": \"\",\n      \"hint\": \"profondeur unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet enabled\",\n      \"localized\": \"unet activé\",\n      \"reload\": \"\",\n      \"hint\": \"unet activé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet max tile size\",\n      \"localized\": \"taille maximale de tuile unet\",\n      \"reload\": \"\",\n      \"hint\": \"taille maximale de tuile unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet min tile size\",\n      \"localized\": \"taille minimale de tuile unet\",\n      \"reload\": \"\",\n      \"hint\": \"taille minimale de tuile unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet model\",\n      \"localized\": \"modèle unet\",\n      \"reload\": \"\",\n      \"hint\": \"modèle unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet swap size\",\n      \"localized\": \"taille d'échange unet\",\n      \"reload\": \"\",\n      \"hint\": \"taille d'échange unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"uniform\",\n      \"localized\": \"uniforme\",\n      \"reload\": \"\",\n      \"hint\": \"uniforme\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"units\",\n      \"localized\": \"unités\",\n      \"reload\": \"\",\n      \"hint\": \"unités\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unload current model from vram\",\n      \"localized\": \"décharger le modèle actuel de la vram\",\n      \"reload\": \"\",\n      \"hint\": \"décharger le modèle actuel de la vram\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unload upscaler after processing\",\n      \"localized\": \"décharger l'upscaler après traitement\",\n      \"reload\": \"\",\n      \"hint\": \"décharger l'upscaler après traitement\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unset\",\n      \"localized\": \"non défini\",\n      \"reload\": \"\",\n      \"hint\": \"non défini\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"up\",\n      \"localized\": \"up\",\n      \"reload\": \"\",\n      \"hint\": \"up\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"upcast attention layer\",\n      \"localized\": \"couche d'attention upcast\",\n      \"reload\": \"\",\n      \"hint\": \"couche d'attention upcast\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"update\",\n      \"localized\": \"mise à jour\",\n      \"reload\": \"\",\n      \"hint\": \"mise à jour\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"upload\",\n      \"localized\": \"télécharger\",\n      \"reload\": \"\",\n      \"hint\": \"télécharger\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use brownian noise\",\n      \"localized\": \"utiliser le bruit brownien\",\n      \"reload\": \"\",\n      \"hint\": \"utiliser le bruit brownien\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use cached model config when available\",\n      \"localized\": \"utiliser la configuration du modèle en cache si disponible\",\n      \"reload\": \"\",\n      \"hint\": \"utiliser la configuration du modèle en cache si disponible\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use defaults\",\n      \"localized\": \"utiliser les valeurs par défaut\",\n      \"reload\": \"\",\n      \"hint\": \"utiliser les valeurs par défaut\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use dynamic thresholding\",\n      \"localized\": \"utiliser le seuillage dynamique\",\n      \"reload\": \"\",\n      \"hint\": \"utiliser le seuillage dynamique\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use fixed width thumbnails\",\n      \"localized\": \"utiliser des miniatures à largeur fixe\",\n      \"reload\": \"\",\n      \"hint\": \"utiliser des miniatures à largeur fixe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use image gallery cache\",\n      \"localized\": \"utiliser le cache de la galerie d'images\",\n      \"reload\": \"\",\n      \"hint\": \"utiliser le cache de la galerie d'images\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use karras sigmas\",\n      \"localized\": \"utiliser les sigmas de Karras\",\n      \"reload\": \"\",\n      \"hint\": \"utiliser les sigmas de Karras\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use line break as prompt segment marker\",\n      \"localized\": \"utiliser le saut de ligne comme marqueur de segment d'invite\",\n      \"reload\": \"\",\n      \"hint\": \"utiliser le saut de ligne comme marqueur de segment d'invite\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use model ema weights when possible\",\n      \"localized\": \"utiliser les poids EMA du modèle si possible\",\n      \"reload\": \"\",\n      \"hint\": \"utiliser les poids EMA du modèle si possible\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use quantization\",\n      \"localized\": \"utiliser la quantification\",\n      \"reload\": \"\",\n      \"hint\": \"utiliser la quantification\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use random seeds\",\n      \"localized\": \"utiliser des graines aléatoires\",\n      \"reload\": \"\",\n      \"hint\": \"utiliser des graines aléatoires\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use reference values when available\",\n      \"localized\": \"utiliser les valeurs de référence si disponibles\",\n      \"reload\": \"\",\n      \"hint\": \"utiliser les valeurs de référence si disponibles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use same seed\",\n      \"localized\": \"utiliser la même graine\",\n      \"reload\": \"\",\n      \"hint\": \"utiliser la même graine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use sample\",\n      \"localized\": \"utiliser un échantillon\",\n      \"reload\": \"\",\n      \"hint\": \"utiliser un échantillon\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use separate base dict\",\n      \"localized\": \"utiliser un dictionnaire de base séparé\",\n      \"reload\": \"\",\n      \"hint\": \"utiliser un dictionnaire de base séparé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use simplified solvers in final steps\",\n      \"localized\": \"utiliser des solveurs simplifiés dans les étapes finales\",\n      \"reload\": \"\",\n      \"hint\": \"utiliser des solveurs simplifiés dans les étapes finales\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use text inputs\",\n      \"localized\": \"utiliser les entrées de texte\",\n      \"reload\": \"\",\n      \"hint\": \"utiliser les entrées de texte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"user\",\n      \"localized\": \"utilisateur\",\n      \"reload\": \"\",\n      \"hint\": \"utilisateur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"username\",\n      \"localized\": \"nom d'utilisateur\",\n      \"reload\": \"\",\n      \"hint\": \"nom d'utilisateur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"v_prediction\",\n      \"localized\": \"v_prediction\",\n      \"reload\": \"\",\n      \"hint\": \"v_prediction\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae enabled\",\n      \"localized\": \"VAE activé\",\n      \"reload\": \"\",\n      \"hint\": \"VAE activé\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae sliced encode\",\n      \"localized\": \"VAE encodage par tranches\",\n      \"reload\": \"\",\n      \"hint\": \"VAE encodage par tranches\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae swap size\",\n      \"localized\": \"VAE taille de swap\",\n      \"reload\": \"\",\n      \"hint\": \"VAE taille de swap\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae tile overlap\",\n      \"localized\": \"VAE chevauchement de tuiles\",\n      \"reload\": \"\",\n      \"hint\": \"VAE chevauchement de tuiles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae tile size\",\n      \"localized\": \"VAE taille des tuiles\",\n      \"reload\": \"\",\n      \"hint\": \"VAE taille des tuiles\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vary_coeff\",\n      \"localized\": \"vary_coeff\",\n      \"reload\": \"\",\n      \"hint\": \"vary_coeff\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vdm solver\",\n      \"localized\": \"VDM solveur\",\n      \"reload\": \"\",\n      \"hint\": \"VDM solveur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"version\",\n      \"localized\": \"Version\",\n      \"reload\": \"\",\n      \"hint\": \"Version\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vgen params\",\n      \"localized\": \"vgen paramètres\",\n      \"reload\": \"\",\n      \"hint\": \"vgen paramètres\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vibrance\",\n      \"localized\": \"Vibrance\",\n      \"reload\": \"\",\n      \"hint\": \"Vibrance\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"video file\",\n      \"localized\": \"Fichier vidéo\",\n      \"reload\": \"\",\n      \"hint\": \"Fichier vidéo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"video type\",\n      \"localized\": \"Type de vidéo\",\n      \"reload\": \"\",\n      \"hint\": \"Type de vidéo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm\",\n      \"localized\": \"vlm\",\n      \"reload\": \"\",\n      \"hint\": \"vlm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm model\",\n      \"localized\": \"Modèle vlm\",\n      \"reload\": \"\",\n      \"hint\": \"Modèle vlm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: default model\",\n      \"localized\": \"vlm: modèle par défaut\",\n      \"reload\": \"\",\n      \"hint\": \"vlm: modèle par défaut\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: default prompt\",\n      \"localized\": \"vlm: invite par défaut\",\n      \"reload\": \"\",\n      \"hint\": \"vlm: invite par défaut\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: max length\",\n      \"localized\": \"vlm: longueur maximale\",\n      \"reload\": \"\",\n      \"hint\": \"vlm: longueur maximale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: num beams\",\n      \"localized\": \"vlm: nombre de faisceaux\",\n      \"reload\": \"\",\n      \"hint\": \"vlm: nombre de faisceaux\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: top-k\",\n      \"localized\": \"vlm: top-k\",\n      \"reload\": \"\",\n      \"hint\": \"vlm: top-k\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: top-p\",\n      \"localized\": \"vlm: top-p\",\n      \"reload\": \"\",\n      \"hint\": \"vlm: top-p\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: use sample method\",\n      \"localized\": \"vlm: utiliser la méthode d'échantillonnage\",\n      \"reload\": \"\",\n      \"hint\": \"vlm: utiliser la méthode d'échantillonnage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"warmth\",\n      \"localized\": \"Chaleur\",\n      \"reload\": \"\",\n      \"hint\": \"Chaleur\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"webp lossless compression\",\n      \"localized\": \"WebP compression sans perte\",\n      \"reload\": \"\",\n      \"hint\": \"WebP compression sans perte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"weight\",\n      \"localized\": \"Poids\",\n      \"reload\": \"\",\n      \"hint\": \"Poids\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width  after\",\n      \"localized\": \"Largeur après\",\n      \"reload\": \"\",\n      \"hint\": \"Largeur après\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width  before\",\n      \"localized\": \"Largeur avant\",\n      \"reload\": \"\",\n      \"hint\": \"Largeur avant\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width  mask\",\n      \"localized\": \"Largeur masque\",\n      \"reload\": \"\",\n      \"hint\": \"Largeur masque\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"wiki\",\n      \"localized\": \"wiki\",\n      \"reload\": \"\",\n      \"hint\": \"wiki\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"wildcards\",\n      \"localized\": \"Jokers\",\n      \"reload\": \"\",\n      \"hint\": \"Jokers\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x components\",\n      \"localized\": \"x composants\",\n      \"reload\": \"\",\n      \"hint\": \"x composants\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x overlap\",\n      \"localized\": \"x chevauchement\",\n      \"reload\": \"\",\n      \"hint\": \"x chevauchement\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x type\",\n      \"localized\": \"x type\",\n      \"reload\": \"\",\n      \"hint\": \"x type\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x-axis tile overlap\",\n      \"localized\": \"Chevauchement des tuiles de l'axe des x\",\n      \"reload\": \"\",\n      \"hint\": \"Chevauchement des tuiles de l'axe des x\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x-axis tiles\",\n      \"localized\": \"Tuiles de l'axe des x\",\n      \"reload\": \"\",\n      \"hint\": \"Tuiles de l'axe des x\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xhinker\",\n      \"localized\": \"xhinker\",\n      \"reload\": \"\",\n      \"hint\": \"xhinker\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xs\",\n      \"localized\": \"xs\",\n      \"reload\": \"\",\n      \"hint\": \"xs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y components\",\n      \"localized\": \"y composants\",\n      \"reload\": \"\",\n      \"hint\": \"y composants\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y overlap\",\n      \"localized\": \"y chevauchement\",\n      \"reload\": \"\",\n      \"hint\": \"y chevauchement\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y type\",\n      \"localized\": \"y type\",\n      \"reload\": \"\",\n      \"hint\": \"y type\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y-axis tile overlap\",\n      \"localized\": \"Chevauchement des tuiles de l'axe des y\",\n      \"reload\": \"\",\n      \"hint\": \"Chevauchement des tuiles de l'axe des y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y-axis tiles\",\n      \"localized\": \"Tuiles de l'axe des y\",\n      \"reload\": \"\",\n      \"hint\": \"Tuiles de l'axe des y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"z type\",\n      \"localized\": \"z type\",\n      \"reload\": \"\",\n      \"hint\": \"z type\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"zero\",\n      \"localized\": \"Zéro\",\n      \"reload\": \"\",\n      \"hint\": \"Zéro\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"zoe depth\",\n      \"localized\": \"zoe profondeur\",\n      \"reload\": \"\",\n      \"hint\": \"zoe profondeur\"\n    }\n  ]\n}\n"
  },
  {
    "path": "html/locale_hr.json",
    "content": "{\n  \"icons\": [\n    {\n      \"id\": \"\",\n      \"label\": \"🎲️\",\n      \"localized\": \"🎲️\",\n      \"reload\": \"\",\n      \"hint\": \"Koristi nasumično sjeme\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔄\",\n      \"localized\": \"🔄\",\n      \"reload\": \"\",\n      \"hint\": \"Poništi vrijednosti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⬆️\",\n      \"localized\": \"⬆️\",\n      \"reload\": \"\",\n      \"hint\": \"Učitaj sliku\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⬅️\",\n      \"localized\": \"⬅️\",\n      \"reload\": \"\",\n      \"hint\": \"Ponovno koristi sliku\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇅\",\n      \"localized\": \"⇅\",\n      \"reload\": \"\",\n      \"hint\": \"Zamijeni vrijednosti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇨\",\n      \"localized\": \"⇨\",\n      \"reload\": \"\",\n      \"hint\": \"Primijeni predložak na karticu Ručno spajanje blokova\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🕮\",\n      \"localized\": \"🕮\",\n      \"reload\": \"\",\n      \"hint\": \"Spremi parametre zadnje generirane slike kao predložak stila\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇕\",\n      \"localized\": \"⇕\",\n      \"reload\": \"\",\n      \"hint\": \"Sortiraj po: Nazivu uzl/sil, Veličini najveći/najmanji, Vremenu najnovije/najstarije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⟲\",\n      \"localized\": \"⟲\",\n      \"reload\": \"\",\n      \"hint\": \"Osvježi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"✕\",\n      \"localized\": \"✕\",\n      \"reload\": \"\",\n      \"hint\": \"Zatvori\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⊜\",\n      \"localized\": \"⊜\",\n      \"reload\": \"\",\n      \"hint\": \"Popuni\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"※\",\n      \"localized\": \"※\",\n      \"reload\": \"\",\n      \"hint\": \"Učitaj model kao model za rafiniranje kada je odabran, inače učitaj kao osnovni model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔎︎\",\n      \"localized\": \"🔎︎\",\n      \"reload\": \"\",\n      \"hint\": \"Skeniraj CivitAI za nedostajuće metapodatke i preglede\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"☲\",\n      \"localized\": \"☲\",\n      \"reload\": \"\",\n      \"hint\": \"Promijeni vrstu prikaza\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⊗\",\n      \"localized\": \"⊗\",\n      \"reload\": \"\",\n      \"hint\": \"Poništi vrijednosti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"📐\",\n      \"localized\": \"📐\",\n      \"reload\": \"\",\n      \"hint\": \"Mjeri\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔍\",\n      \"localized\": \"🔍\",\n      \"reload\": \"\",\n      \"hint\": \"Pretraži\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🖌️\",\n      \"localized\": \"🖌️\",\n      \"reload\": \"\",\n      \"hint\": \"LaMa ukloni odabrani objekt sa slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🖼️\",\n      \"localized\": \"🖼️\",\n      \"reload\": \"\",\n      \"hint\": \"Prikaži pregled\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Ispitaj sliku\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⁜\",\n      \"localized\": \"⁜\",\n      \"reload\": \"\",\n      \"hint\": \"Cikliraj metodu prilagodbe slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"↶\",\n      \"localized\": \"↶\",\n      \"reload\": \"\",\n      \"hint\": \"Primijeni odabrani stil na upit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"↷\",\n      \"localized\": \"↷\",\n      \"reload\": \"\",\n      \"hint\": \"Spremi trenutni upit u stil\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Sortiraj po nazivu, uzlazno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Sortiraj po nazivu, silazno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Sortiraj po veličini, uzlazno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Sortiraj po veličini, silazno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Sortiraj po rezoluciji, uzlazno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Sortiraj po rezoluciji, silazno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Sortiraj po vremenu, uzlazno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Sortiraj po vremenu, silazno\"\n    }\n  ],\n  \"main\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt\",\n      \"localized\": \"Upit\",\n      \"reload\": \"\",\n      \"hint\": \"Opišite sliku koju želite generirati\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Start\",\n      \"localized\": \"Pokreni\",\n      \"reload\": \"\",\n      \"hint\": \"Pokreni\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"End\",\n      \"localized\": \"Kraj\",\n      \"reload\": \"\",\n      \"hint\": \"Kraj\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Core\",\n      \"localized\": \"Jezgra\",\n      \"reload\": \"\",\n      \"hint\": \"Osnovne postavke\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System prompt\",\n      \"localized\": \"Sistemski upit\",\n      \"reload\": \"\",\n      \"hint\": \"Sistemski upit kontrolira ponašanje LLM-a\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Negative prompt\",\n      \"localized\": \"Negativni upit\",\n      \"reload\": \"\",\n      \"hint\": \"Opišite što ne želite vidjeti na generiranoj slici\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Text\",\n      \"localized\": \"Tekst\",\n      \"reload\": \"\",\n      \"hint\": \"Stvori sliku iz teksta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image\",\n      \"localized\": \"Slika\",\n      \"reload\": \"\",\n      \"hint\": \"Stvori sliku iz slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control\",\n      \"localized\": \"Kontrola\",\n      \"reload\": \"\",\n      \"hint\": \"Stvori sliku uz potpuno vođenje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process\",\n      \"localized\": \"Obrada\",\n      \"reload\": \"\",\n      \"hint\": \"Obradi postojeću sliku\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Caption\",\n      \"localized\": \"Opis\",\n      \"reload\": \"\",\n      \"hint\": \"Analizirajte postojeće slike i stvorite tekstualne opise\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Interrogate\",\n      \"localized\": \"Analiziraj\",\n      \"reload\": \"\",\n      \"hint\": \"Pokreni analizu da dobijete opis svoje slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models\",\n      \"localized\": \"Modeli\",\n      \"reload\": \"\",\n      \"hint\": \"Preuzmite, pretvorite ili spojite svoje modele i upravljajte metapodacima modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Agent Scheduler\",\n      \"localized\": \"Raspoređivač agenata\",\n      \"reload\": \"\",\n      \"hint\": \"Dodajte zahtjeve za generiranje u red i pokrenite ih u pozadini\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"AgentScheduler\",\n      \"localized\": \"Raspoređivač agenata\",\n      \"reload\": \"\",\n      \"hint\": \"Dodajte zahtjeve za generiranje u red i pokrenite ih u pozadini\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System\",\n      \"localized\": \"Sustav\",\n      \"reload\": \"\",\n      \"hint\": \"Postavke i informacije sustava\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System Info\",\n      \"localized\": \"Informacije o sustavu\",\n      \"reload\": \"\",\n      \"hint\": \"Informacije o sustavu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Settings\",\n      \"localized\": \"Postavke\",\n      \"reload\": \"\",\n      \"hint\": \"Postavke aplikacije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Script\",\n      \"localized\": \"Skripta\",\n      \"reload\": \"\",\n      \"hint\": \"Dodatne skripte za korištenje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Generate\",\n      \"localized\": \"Generiraj\",\n      \"reload\": \"\",\n      \"hint\": \"Pokreni obradu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Generate forever\",\n      \"localized\": \"Generiraj zauvijek\",\n      \"reload\": \"\",\n      \"hint\": \"Pokreni obradu i nastavi dok se ne otkaže\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enqueue\",\n      \"localized\": \"Dodaj u red\",\n      \"reload\": \"\",\n      \"hint\": \"Dodaj zadatak u pozadinski red u Raspoređivaču agenata\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reprocess\",\n      \"localized\": \"Ponovno obradi\",\n      \"reload\": \"\",\n      \"hint\": \"Ponovno obradite prethodne generacije koristeći različite parametre\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Stop\",\n      \"localized\": \"Zaustavi\",\n      \"reload\": \"\",\n      \"hint\": \"Zaustavi obradu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Skip\",\n      \"localized\": \"Preskoči\",\n      \"reload\": \"\",\n      \"hint\": \"Zaustavi obradu trenutnog zadatka i nastavi obradu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Pause\",\n      \"localized\": \"Pauziraj\",\n      \"reload\": \"\",\n      \"hint\": \"Pauziraj obradu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore\",\n      \"localized\": \"Vrati\",\n      \"reload\": \"\",\n      \"hint\": \"Vrati parametre iz trenutnog upita ili zadnje poznate generirane slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Clear\",\n      \"localized\": \"Očisti\",\n      \"reload\": \"\",\n      \"hint\": \"Očisti upite\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Networks\",\n      \"localized\": \"Mreže\",\n      \"reload\": \"\",\n      \"hint\": \"Korisničko sučelje mreža\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Default strength\",\n      \"localized\": \"Zadana jačina\",\n      \"reload\": \"\",\n      \"hint\": \"Prilikom dodavanja dodatne mreže poput LoRA-e u upit, koristite ovaj množitelj za nju\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscale\",\n      \"localized\": \"Uvećaj\",\n      \"reload\": \"\",\n      \"hint\": \"Uvećaj sliku\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model\",\n      \"localized\": \"Model\",\n      \"reload\": \"\",\n      \"hint\": \"Osnovni model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompts\",\n      \"localized\": \"Upiti\",\n      \"reload\": \"\",\n      \"hint\": \"Slika upita i negativni upit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Base\",\n      \"localized\": \"Osnovno\",\n      \"reload\": \"\",\n      \"hint\": \"Osnovne postavke korištene za pokretanje generiranja slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Style\",\n      \"localized\": \"Stil\",\n      \"reload\": \"\",\n      \"hint\": \"Dodatni stilovi za primjenu na odabranim parametrima generiranja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Styles\",\n      \"localized\": \"Stilovi\",\n      \"reload\": \"\",\n      \"hint\": \"Dodatni stilovi za primjenu na odabranim parametrima generiranja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Lora\",\n      \"localized\": \"LoRA\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA: Low-Rank Adaptation. Dotjerani model koji se primjenjuje povrh učitanog modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Embedding\",\n      \"localized\": \"Ugrađivanje\",\n      \"reload\": \"\",\n      \"hint\": \"Ugrađivanje tekstualne inverzije je obučena ugrađena informacija o subjektu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Hypernetwork\",\n      \"localized\": \"Hipermreža\",\n      \"reload\": \"\",\n      \"hint\": \"Mala obučena neuronska mreža koja modificira ponašanje učitanog modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VLM Caption\",\n      \"localized\": \"VLM Opis\",\n      \"reload\": \"\",\n      \"hint\": \"Analizirajte sliku koristeći vizualno-jezični model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CLiP Interrogate\",\n      \"localized\": \"CLiP Analiza\",\n      \"reload\": \"\",\n      \"hint\": \"Analizirajte sliku koristeći CLiP model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE\",\n      \"localized\": \"VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Varijacijski autoenkoder: model koji se koristi za dekodiranje slike na kraju generiranja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"History\",\n      \"localized\": \"Povijest\",\n      \"reload\": \"\",\n      \"hint\": \"Popis prethodnih generacija koje se mogu dodatno obraditi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"UI disable variable aspect ratio\",\n      \"localized\": \"UI onemogući promjenjiv omjer slike\",\n      \"reload\": \"\",\n      \"hint\": \"Kada je onemogućeno, sve sličice se prikazuju kao kvadratne slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Build info on first access\",\n      \"localized\": \"Izgradnja informacija pri prvom pristupu\",\n      \"reload\": \"\",\n      \"hint\": \"Sprječava poslužitelj da izgradi EN stranicu pri pokretanju poslužitelja, već je izgradi kada se zatraži\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show reference styles\",\n      \"localized\": \"Prikaži referentne stilove\",\n      \"reload\": \"\",\n      \"hint\": \"Prikaži ili sakrij ugrađene stilove\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA load using Diffusers method\",\n      \"localized\": \"Učitavanje LoRA-e Diffusers metodom\",\n      \"reload\": \"\",\n      \"hint\": \"Alternativna metoda koristi ugrađene LoRA mogućnosti Diffusersa umjesto izvorne SD.Next implementacije (može smanjiti kompatibilnost LoRA-e)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA fuse directly to model\",\n      \"localized\": \"Spajanje LoRA-e izravno s modelom\",\n      \"reload\": \"\",\n      \"hint\": \"Prilikom učitavanja LoRA-e, odmah spojite utege s temeljnim modelom umjesto da ih primjenjujete u hodu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA memory cache\",\n      \"localized\": \"LoRA memorijska predmemorija\",\n      \"reload\": \"\",\n      \"hint\": \"Koliko LoRA-a zadržati u mreži za buduću upotrebu prije ponovnog učitavanja iz pohrane\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Local\",\n      \"localized\": \"Lokalno\",\n      \"reload\": \"\",\n      \"hint\": \"Modeli koji su preuzeti i spremni za upotrebu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Gallery\",\n      \"localized\": \"Galerija\",\n      \"reload\": \"\",\n      \"hint\": \"Galerija slika\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reference\",\n      \"localized\": \"Referenca\",\n      \"reload\": \"\",\n      \"hint\": \"Popis referentnih modela koji se mogu automatski preuzeti pri prvoj upotrebi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Samplers\",\n      \"localized\": \"Uzorcivači\",\n      \"reload\": \"\",\n      \"hint\": \"Napredne postavke uzorcivača/raspoređivača\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Seed\",\n      \"localized\": \"Sjeme\",\n      \"reload\": \"\",\n      \"hint\": \"Početno sjeme i varijacija\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Advanced\",\n      \"localized\": \"Napredno\",\n      \"reload\": \"\",\n      \"hint\": \"Napredne postavke korištene za pokretanje generiranja slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scripts\",\n      \"localized\": \"Skripte\",\n      \"reload\": \"\",\n      \"hint\": \"Omogućite dodatne značajke korištenjem odabranih skripti tijekom procesa generiranja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Corrections\",\n      \"localized\": \"Korekcije\",\n      \"reload\": \"\",\n      \"hint\": \"Kontrolirajte korekcije boje/izoštravanja/svjetline slike tijekom procesa generiranja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Parameters\",\n      \"localized\": \"Parametri\",\n      \"reload\": \"\",\n      \"hint\": \"Osnovni parametri korišteni tijekom generiranja slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine\",\n      \"localized\": \"Dorada\",\n      \"reload\": \"\",\n      \"hint\": \"Dorada pokreće dodatnu obradu nakon što je početna obrada završena i može se koristiti za povećanje rezolucije slike te opcionalno ponovno obraditi kako bi se povećala kvaliteta i detalji\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer\",\n      \"localized\": \"Detaljizer\",\n      \"reload\": \"\",\n      \"hint\": \"Detaljizer pokreće dodatno generiranje u višoj rezoluciji za detektirane objekte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize\",\n      \"localized\": \"Promjena veličine\",\n      \"reload\": \"\",\n      \"hint\": \"Promjena veličine slike, može koristiti fiksnu rezoluciju ili se temeljiti na skali\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch\",\n      \"localized\": \"Skupno\",\n      \"reload\": \"\",\n      \"hint\": \"Postavke skupne obrade\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoise\",\n      \"localized\": \"Uklanjanje šuma\",\n      \"reload\": \"\",\n      \"hint\": \"Postavke uklanjanja šuma. Veće uklanjanje šuma znači da se više postojećeg sadržaja slike smije promijeniti tijekom generiranja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mask\",\n      \"localized\": \"Maska\",\n      \"reload\": \"\",\n      \"hint\": \"Maskiranje slike i opcije maske\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Input\",\n      \"localized\": \"Ulaz\",\n      \"reload\": \"\",\n      \"hint\": \"Odabir ulaznih medija\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Video\",\n      \"localized\": \"Video\",\n      \"reload\": \"\",\n      \"hint\": \"Stvori video koristeći vođenje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control elements\",\n      \"localized\": \"Kontrolni elementi\",\n      \"reload\": \"\",\n      \"hint\": \"Kontrolni elementi su napredni modeli koji mogu voditi generiranje prema željenom ishodu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"IP adapter\",\n      \"localized\": \"IP adapter\",\n      \"reload\": \"\",\n      \"hint\": \"Vodite generiranje prema željenom ishodu koristeći plugin modele IP adaptera\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"IP adapters\",\n      \"localized\": \"IP adapteri\",\n      \"reload\": \"\",\n      \"hint\": \"IP adapteri su plugin modeli koji mogu voditi generiranje prema željenom ishodu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Extensions\",\n      \"localized\": \"Proširenja\",\n      \"reload\": \"\",\n      \"hint\": \"Proširenja aplikacije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"XYZ Grid\",\n      \"localized\": \"XYZ Mreža\",\n      \"reload\": \"\",\n      \"hint\": \"XYZ mreža je moćan modul koji stvara slikovnu mrežu na temelju mijenjanja više parametara generiranja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Cover\",\n      \"localized\": \"Prekrij\",\n      \"reload\": \"\",\n      \"hint\": \"pokrij cijelo područje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inline\",\n      \"localized\": \"Unutar retka\",\n      \"reload\": \"\",\n      \"hint\": \"unutar retka sa svim dodatnim elementima (pomicanje)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sidebar\",\n      \"localized\": \"Bočna traka\",\n      \"reload\": \"\",\n      \"hint\": \"bočna traka na desnoj strani zaslona\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD15\",\n      \"localized\": \"SD15\",\n      \"reload\": \"\",\n      \"hint\": \"StableDiffusion 1.5\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD21\",\n      \"localized\": \"SD21\",\n      \"reload\": \"\",\n      \"hint\": \"StableDiffusion 2.1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD35\",\n      \"localized\": \"SD35\",\n      \"reload\": \"\",\n      \"hint\": \"StableDiffusion 3.5\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SDXL\",\n      \"localized\": \"SDXL\",\n      \"reload\": \"\",\n      \"hint\": \"StableDiffusion XL\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SC\",\n      \"localized\": \"SC\",\n      \"reload\": \"\",\n      \"hint\": \"StableCascade\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Flux\",\n      \"localized\": \"Fluks\",\n      \"reload\": \"\",\n      \"hint\": \"FLUX.1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show\",\n      \"localized\": \"Prikaži\",\n      \"reload\": \"\",\n      \"hint\": \"Prikaži lokaciju slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Save\",\n      \"localized\": \"Spremi\",\n      \"reload\": \"\",\n      \"hint\": \"Spremi sliku\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Delete\",\n      \"localized\": \"Izbriši\",\n      \"reload\": \"\",\n      \"hint\": \"Izbriši sliku\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Replace\",\n      \"localized\": \"Zamijeni\",\n      \"reload\": \"\",\n      \"hint\": \"Zamijeni sliku\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Text\",\n      \"localized\": \"➠ Tekst\",\n      \"reload\": \"\",\n      \"hint\": \"Prenesi sliku na tekstualno sučelje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Image\",\n      \"localized\": \"➠ Slika\",\n      \"reload\": \"\",\n      \"hint\": \"Prenesi sliku na sučelje slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Inpaint\",\n      \"localized\": \"➠ Inpaint\",\n      \"reload\": \"\",\n      \"hint\": \"Prenesi sliku na inpaint sučelje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Sketch\",\n      \"localized\": \"➠ Skica\",\n      \"reload\": \"\",\n      \"hint\": \"Prenesi sliku na sučelje skice\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Composite\",\n      \"localized\": \"➠ Kompozit\",\n      \"reload\": \"\",\n      \"hint\": \"Prenesi sliku na inpaint skica sučelje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Process\",\n      \"localized\": \"➠ Obrada\",\n      \"reload\": \"\",\n      \"hint\": \"Prenesi sliku na sučelje za obradu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Control\",\n      \"localized\": \"➠ Kontrola\",\n      \"reload\": \"\",\n      \"hint\": \"Prenesi sliku na sučelje za kontrolu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Caption\",\n      \"localized\": \"➠ Opis\",\n      \"reload\": \"\",\n      \"hint\": \"Prenesi sliku na sučelje opisa\"\n    }\n  ],\n  \"generate\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Sampling method\",\n      \"localized\": \"Metoda uzorkovanja\",\n      \"reload\": \"\",\n      \"hint\": \"Koji algoritam koristiti za stvaranje slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Steps\",\n      \"localized\": \"Koraci\",\n      \"reload\": \"\",\n      \"hint\": \"Koliko puta iterativno poboljšati generiranu sliku; veće vrijednosti traju duže; vrlo niske vrijednosti mogu proizvesti loše rezultate\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Tiling\",\n      \"localized\": \"Popločavanje\",\n      \"reload\": \"\",\n      \"hint\": \"Stvorite sliku koja se može popločati\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full quality\",\n      \"localized\": \"Puna kvaliteta\",\n      \"reload\": \"\",\n      \"hint\": \"Koristite VAE pune kvalitete za dekodiranje latentnih uzoraka\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HiDiffusion\",\n      \"localized\": \"HiDiffusion\",\n      \"reload\": \"\",\n      \"hint\": \"HiDiffusion omogućuje stvaranje slika visoke rezolucije korištenjem vaših standardnih modela bez duplikata/izobličenja i uz poboljšane performanse\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HDR Clamp\",\n      \"localized\": \"HDR Ograničenje\",\n      \"reload\": \"\",\n      \"hint\": \"Podešava razinu besmislenih detalja obrezivanjem vrijednosti koje značajno odstupaju od srednje vrijednosti distribucije. Posebno je korisno za poboljšanje generiranja pri višim skalama navođenja, rano identificiranje odstupanja u procesu i primjenu matematičkih prilagodbi na temelju postavki Raspona (Granice) i Prag. Zamislite to kao postavljanje raspona unutar kojeg želite da budu vrijednosti vaše slike, a podešavanje praga određuje koje vrijednosti treba vratiti u taj raspon\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HDR Maximize\",\n      \"localized\": \"HDR Maksimiziranje\",\n      \"reload\": \"\",\n      \"hint\": \"Izračunava 'faktor normalizacije' dijeljenjem maksimalne vrijednosti tenzora s navedenim rasponom pomnoženim s 4. Ovaj se faktor zatim koristi za pomicanje kanala unutar zadane granice, osiguravajući maksimalni dinamički raspon za naknadnu obradu. Cilj je optimizirati dinamički raspon za vanjske aplikacije poput Photoshopa, posebno za podešavanje razina, kontrasta i svjetline\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enable refine pass\",\n      \"localized\": \"Omogući prolaz pročišćavanja\",\n      \"reload\": \"\",\n      \"hint\": \"Koristite sličan postupak kao pretvaranje slike u sliku za skaliranje i/ili dodavanje detalja konačnoj slici. Opcionalno koristi model za pročišćavanje za poboljšanje detalja slike.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enable detailer pass\",\n      \"localized\": \"Omogući prolaz detaljizacije\",\n      \"reload\": \"\",\n      \"hint\": \"Detektira ciljane objekte poput lica i ponovno ih obrađuje u višoj rezoluciji\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoising strength\",\n      \"localized\": \"Snaga uklanjanja šuma\",\n      \"reload\": \"\",\n      \"hint\": \"Određuje koliko malo poštovanja algoritam treba imati prema sadržaju slike. Na 0 se ništa neće promijeniti, a na 1 ćete dobiti nepovezanu sliku. S vrijednostima ispod 1.0, obrada će trajati manje koraka od onih koje određuje klizač 'Sampling Steps'\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoise start\",\n      \"localized\": \"Početak uklanjanja šuma\",\n      \"reload\": \"\",\n      \"hint\": \"Prebrišite snagu uklanjanja šuma navodeći koliko rano bi osnovni model trebao završiti i kada bi se pročišćivač trebao pokrenuti. Primjenjivo samo na upotrebu pročišćivača. Ako je postavljeno na 0 ili 1, koristit će se snaga uklanjanja šuma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Hires steps\",\n      \"localized\": \"Koraci visoke rezolucije\",\n      \"reload\": \"\",\n      \"hint\": \"Broj koraka uzorkovanja za sliku povećane rezolucije. Ako je 0, koristi se isti broj kao za original\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Strength\",\n      \"localized\": \"Snaga\",\n      \"reload\": \"\",\n      \"hint\": \"Snaga uklanjanja šuma tijekom operacije slike kontrolira koliko se originalne slike smije promijeniti tijekom generiranja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler\",\n      \"localized\": \"Povećivač\",\n      \"reload\": \"\",\n      \"hint\": \"Koji prethodno trenirani model koristiti za proces povećanja rezolucije.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Force Hires\",\n      \"localized\": \"Prisilno visoka rezolucija\",\n      \"reload\": \"\",\n      \"hint\": \"Visoka rezolucija se automatski pokreće kada je odabrano latentno povećanje, ali se preskače pri korištenju nelatentnih povećivača. Omogućite prisilnu visoku rezoluciju za pokretanje visoke rezolucije s nelatentnim povećivačima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize width\",\n      \"localized\": \"Promijeni širinu\",\n      \"reload\": \"\",\n      \"hint\": \"Mijenja veličinu slike na ovu širinu. Ako je 0, širina se zaključuje iz jednog od dva obližnja klizača\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize height\",\n      \"localized\": \"Promijeni visinu\",\n      \"reload\": \"\",\n      \"hint\": \"Mijenja veličinu slike na ovu visinu. Ako je 0, visina se zaključuje iz jednog od dva obližnja klizača\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine sampler\",\n      \"localized\": \"Pročišćivač uzorka\",\n      \"reload\": \"\",\n      \"hint\": \"Koristite specifični uzorkivač kao rezervni uzorkivač ako primarni nije podržan za određenu operaciju\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner start\",\n      \"localized\": \"Početak pročišćivača\",\n      \"reload\": \"\",\n      \"hint\": \"Prolaz pročišćivača započet će kada je osnovni model toliko potpun (postavite na više od 0 i manje od 1 za pokretanje nakon potpunog pokretanja osnovnog modela)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner steps\",\n      \"localized\": \"Koraci pročišćivača\",\n      \"reload\": \"\",\n      \"hint\": \"Broj koraka koje treba koristiti za prolaz pročišćivača\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine guidance\",\n      \"localized\": \"Usmjeravanje pročišćavanja\",\n      \"reload\": \"\",\n      \"hint\": \"CFG skala korištena za prolaz pročišćivača\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Attention guidance\",\n      \"localized\": \"Usmjeravanje pažnje\",\n      \"reload\": \"\",\n      \"hint\": \"CFG skala korištena za PAG: Usmjeravanje poremećene pažnje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adaptive scaling\",\n      \"localized\": \"Prilagodljivo skaliranje\",\n      \"reload\": \"\",\n      \"hint\": \"Prilagodljivi modifikator za skalu usmjeravanja pažnje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Rescale guidance\",\n      \"localized\": \"Promjena skale usmjeravanja\",\n      \"reload\": \"\",\n      \"hint\": \"Promijenite skalu šuma generiranog CFG-om kako biste izbjegli preeksponirane slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine Prompt\",\n      \"localized\": \"Pročišćena naredba\",\n      \"reload\": \"\",\n      \"hint\": \"Naredba (prompt) korištena za drugi enkoder u osnovnom modelu (ako postoji) i za prolaz pročišćivača (ako je omogućen)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine negative prompt\",\n      \"localized\": \"Pročišćena negativna naredba\",\n      \"reload\": \"\",\n      \"hint\": \"Negativna naredba (prompt) korištena za drugi enkoder u osnovnom modelu (ako postoji) i za prolaz pročišćivača (ako je omogućen)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Width\",\n      \"localized\": \"Širina\",\n      \"reload\": \"\",\n      \"hint\": \"Širina slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Height\",\n      \"localized\": \"Visina\",\n      \"reload\": \"\",\n      \"hint\": \"Visina slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch count\",\n      \"localized\": \"Broj serija\",\n      \"reload\": \"\",\n      \"hint\": \"Koliko serija slika stvoriti (nema utjecaja na performanse generiranja ili potrošnju VRAM-a)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch size\",\n      \"localized\": \"Veličina serije\",\n      \"reload\": \"\",\n      \"hint\": \"Koliko slika stvoriti u jednoj seriji (povećava performanse generiranja po cijeni veće potrošnje VRAM-a)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance scale\",\n      \"localized\": \"skala navođenja\",\n      \"reload\": \"\",\n      \"hint\": \"Skala navođenja bez klasifikatora: koliko bi se snažno slika trebala uskladiti s naredbom. Niže vrijednosti daju kreativnije rezultate, više vrijednosti čine da strože slijedi naredbu; preporučene vrijednosti između 5-10\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Guidance End\",\n      \"localized\": \"Kraj navođenja\",\n      \"reload\": \"\",\n      \"hint\": \"Rano prekida učinak CFG i PAG-a: Vrijednost 1 djeluje normalno, 0.5 zaustavlja navođenje na 50% koraka\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Initial seed\",\n      \"localized\": \"Početno sjeme\",\n      \"reload\": \"\",\n      \"hint\": \"Vrijednost koja određuje izlaz generatora slučajnih brojeva - ako stvorite sliku s istim parametrima i sjemenom kao drugu sliku, dobit ćete isti rezultat\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variation\",\n      \"localized\": \"Varijacija\",\n      \"reload\": \"\",\n      \"hint\": \"Drugo sjeme koje se miješa s primarnim sjemenom\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variation strength\",\n      \"localized\": \"Snaga varijacije\",\n      \"reload\": \"\",\n      \"hint\": \"Koliko snažnu varijaciju proizvesti. Na 0 neće biti efekta. Na 1 ćete dobiti potpunu sliku sa sjemenom varijacije (osim za ancestralne uzorkivače, gdje ćete samo nešto dobiti)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize seed from width\",\n      \"localized\": \"Promijeni sjeme iz širine\",\n      \"reload\": \"\",\n      \"hint\": \"Pokušajte proizvesti sliku sličnu onoj koja bi bila proizvedena s istim sjemenom pri navedenoj rezoluciji\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize seed from height\",\n      \"localized\": \"Promijeni sjeme iz visine\",\n      \"reload\": \"\",\n      \"hint\": \"Pokušajte proizvesti sliku sličnu onoj koja bi bila proizvedena s istim sjemenom pri navedenoj rezoluciji\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Fixed\",\n      \"localized\": \"Fiksno\",\n      \"reload\": \"\",\n      \"hint\": \"Promijenite veličinu slike na ciljanu rezoluciju. Osim ako se visina i širina ne podudaraju, dobit ćete netočan omjer slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale\",\n      \"localized\": \"skala\",\n      \"reload\": \"\",\n      \"hint\": \"Promijenite veličinu slike na ciljanu skalu. Ako su postavljene fiksne širina/visina, ova se opcija ignorira\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop\",\n      \"localized\": \"Obreži\",\n      \"reload\": \"\",\n      \"hint\": \"Promijenite veličinu slike tako da cijela ciljana rezolucija bude popunjena slikom. Obrežite dijelove koji strše\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Fill\",\n      \"localized\": \"Popuni\",\n      \"reload\": \"\",\n      \"hint\": \"Promijenite veličinu slike tako da cijela slika bude unutar ciljane rezolucije. Prazan prostor popunite bojama slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mask blur\",\n      \"localized\": \"Zamagljenje maske\",\n      \"reload\": \"\",\n      \"hint\": \"Koliko zamagliti masku prije obrade, u pikselima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Latent noise\",\n      \"localized\": \"Latentni šum\",\n      \"reload\": \"\",\n      \"hint\": \"Ispunite ga šumom latentnog prostora\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Latent nothing\",\n      \"localized\": \"Latentno ništa\",\n      \"reload\": \"\",\n      \"hint\": \"Ispunite ga nulama latentnog prostora\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adapters\",\n      \"localized\": \"Adapteri\",\n      \"reload\": \"\",\n      \"hint\": \"Postavke vezane uz IP adaptere\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inputs\",\n      \"localized\": \"Unosi\",\n      \"reload\": \"\",\n      \"hint\": \"Postavke vezane uz ulazne slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control input type\",\n      \"localized\": \"Vrsta kontrolnog unosa\",\n      \"reload\": \"\",\n      \"hint\": \"Odaberite koja ulazna slika se koristi za kontrolni proces\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Video format\",\n      \"localized\": \"Video format\",\n      \"reload\": \"\",\n      \"hint\": \"Format i kodek izlaznog videa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Size & Batch\",\n      \"localized\": \"Veličina i serija\",\n      \"reload\": \"\",\n      \"hint\": \"Veličina slike i serija\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sigma adjust\",\n      \"localized\": \"Podešavanje sigme\",\n      \"reload\": \"\",\n      \"hint\": \"Podesite sigma vrijednost uzorkivača\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adjust start\",\n      \"localized\": \"Početak podešavanja\",\n      \"reload\": \"\",\n      \"hint\": \"Početni korak kada se događa podešavanje sigme\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adjust end\",\n      \"localized\": \"Kraj podešavanja\",\n      \"reload\": \"\",\n      \"hint\": \"Završni korak kada se događa podešavanje sigme\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Options\",\n      \"localized\": \"Opcije\",\n      \"reload\": \"\",\n      \"hint\": \"Opcije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ControlNet\",\n      \"localized\": \"ControlNet\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet je napredni model navođenja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Renoise\",\n      \"localized\": \"Ponovno šumiranje\",\n      \"reload\": \"\",\n      \"hint\": \"Primijenite dodatni šum tijekom detaljiziranja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Renoise end\",\n      \"localized\": \"Kraj ponovnog šumiranja\",\n      \"reload\": \"\",\n      \"hint\": \"Završni korak kada se primjenjuje ponovno šumiranje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Merge detailers\",\n      \"localized\": \"Spoji detaljizatore\",\n      \"reload\": \"\",\n      \"hint\": \"Spojite rezultate više detaljizatora u jednu masku prije pokretanja procesa detaljiziranja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpaint mode\",\n      \"localized\": \"Način prebojenja\",\n      \"reload\": \"\",\n      \"hint\": \"Način prebojenja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpaint area\",\n      \"localized\": \"Područje prebojenja\",\n      \"reload\": \"\",\n      \"hint\": \"Područje prebojenja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Texture tiling\",\n      \"localized\": \"Popločavanje teksture\",\n      \"reload\": \"\",\n      \"hint\": \"Primijenite besprijekorno popločavanje na generiranu sliku kako bi se mogla koristiti kao tekstura\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Override\",\n      \"localized\": \"Premošćenje\",\n      \"reload\": \"\",\n      \"hint\": \"Premošćivanje postavki koje mogu promijeniti ponašanje poslužitelja i obično se primjenjuju iz uvezenih metapodataka slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE type\",\n      \"localized\": \"Tip VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Odaberite želite li pokrenuti puni VAE, VAE smanjene kvalitete ili pokušati koristiti udaljenu VAE uslugu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Guess Mode\",\n      \"localized\": \"Način pogađanja\",\n      \"reload\": \"\",\n      \"hint\": \"Uklanja zahtjev za davanjem naredbe (prompta) ControlNetu. Prisiljava Controlnet enkoder da 'nagađa' na temelju sadržaja ulazne kontrolne mape.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control Only\",\n      \"localized\": \"Samo kontrola\",\n      \"reload\": \"\",\n      \"hint\": \"Ovo koristi samo donji Kontrolni ulaz kao izvor za sve zadatke tipa ControlNet ili IP adaptera na temelju bilo koje od naših različitih opcija.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Init Image Same As Control\",\n      \"localized\": \"Početna slika ista kao kontrolna\",\n      \"reload\": \"\",\n      \"hint\": \"Dodatno će tretirati svaku sliku postavljenu u prozor Kontrolnog unosa kao izvor za zadatke tipa img2img, npr. sliku za izmjenu.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Separate Init Image\",\n      \"localized\": \"Odvojena početna slika\",\n      \"reload\": \"\",\n      \"hint\": \"Stvara dodatni prozor pored Kontrolnog unosa s oznakom 'Init input', tako da možete imati zasebnu sliku za Kontrolne operacije i početni izvor.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Override settings\",\n      \"localized\": \"Premošćenje postavki\",\n      \"reload\": \"\",\n      \"hint\": \"Ako se parametri generiranja odstupaju od vaših sistemskih postavki, prebrišite postavke popunjene tim postavkama kako biste premostili konfiguraciju vašeg sustava za ovaj tijek rada\"\n    }\n  ],\n  \"other\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Install\",\n      \"localized\": \"Instaliraj\",\n      \"reload\": \"\",\n      \"hint\": \"Instaliraj\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Search\",\n      \"localized\": \"Pretraži\",\n      \"reload\": \"\",\n      \"hint\": \"Pretraži\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sort by\",\n      \"localized\": \"Sortiraj po\",\n      \"reload\": \"\",\n      \"hint\": \"Sortiraj po\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Nudenet\",\n      \"localized\": \"Nudenet\",\n      \"reload\": \"\",\n      \"hint\": \"Fleksibilna ekstenzija koja može detektirati i zamagliti golotinju na slikama\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt enhance\",\n      \"localized\": \"Poboljšanje prompta\",\n      \"reload\": \"\",\n      \"hint\": \"Ekstenzija koja može koristiti različite LLM-ove za prepisivanje prompta radi poboljšanih rezultata\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Manage extensions\",\n      \"localized\": \"Upravljanje ekstenzijama\",\n      \"reload\": \"\",\n      \"hint\": \"Upravljanje ekstenzijama\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Manual install\",\n      \"localized\": \"Ručna instalacija\",\n      \"reload\": \"\",\n      \"hint\": \"Ručno instaliraj ekstenziju\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Extension GIT repository URL\",\n      \"localized\": \"URL GIT repozitorija ekstenzije\",\n      \"reload\": \"\",\n      \"hint\": \"Odredi URL repozitorija ekstenzije na GitHubu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Specific branch name\",\n      \"localized\": \"Naziv specifične grane\",\n      \"reload\": \"\",\n      \"hint\": \"Odredi naziv grane ekstenzije, ostavi prazno za zadano\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Local directory name\",\n      \"localized\": \"Naziv lokalnog direktorija\",\n      \"reload\": \"\",\n      \"hint\": \"Direktorij za instalaciju ekstenzije, ostavi prazno za zadano\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refresh extension list\",\n      \"localized\": \"Osvježi popis ekstenzija\",\n      \"reload\": \"\",\n      \"hint\": \"Osvježi popis dostupnih ekstenzija\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Update all installed\",\n      \"localized\": \"Ažuriraj sve instalirane\",\n      \"reload\": \"\",\n      \"hint\": \"Ažuriraj instalirane ekstenzije na njihovu najnoviju dostupnu verziju\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Apply changes\",\n      \"localized\": \"Primijeni promjene\",\n      \"reload\": \"\",\n      \"hint\": \"Primijeni sve promjene i ponovno pokreni poslužitelj\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Uninstall\",\n      \"localized\": \"Deinstaliraj\",\n      \"reload\": \"\",\n      \"hint\": \"Deinstaliraj ovu ekstenziju\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"User interface\",\n      \"localized\": \"Korisničko sučelje\",\n      \"reload\": \"\",\n      \"hint\": \"Pregledaj i postavi preferencije korisničkog sučelja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Set UI defaults\",\n      \"localized\": \"Postavi zadane UI postavke\",\n      \"reload\": \"\",\n      \"hint\": \"Postavi trenutne vrijednosti kao zadane vrijednosti za korisničko sučelje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Benchmark\",\n      \"localized\": \"Mjerilo performansi\",\n      \"reload\": \"\",\n      \"hint\": \"Pokreni mjerila performansi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models & Networks\",\n      \"localized\": \"Modeli i Mreže\",\n      \"reload\": \"\",\n      \"hint\": \"Pregledaj popise svih dostupnih modela i mreža\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore UI defaults\",\n      \"localized\": \"Vrati zadane UI postavke\",\n      \"reload\": \"\",\n      \"hint\": \"Vrati zadane vrijednosti korisničkog sučelja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer classes\",\n      \"localized\": \"Klase detailera\",\n      \"reload\": \"\",\n      \"hint\": \"Odredi specifične klase za korištenje ako je odabrani model detailera višeklasni model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer models\",\n      \"localized\": \"Modeli detailera\",\n      \"reload\": \"\",\n      \"hint\": \"Odaberi modele detekcije za detaljiziranje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer negative prompt\",\n      \"localized\": \"Negativni prompt detailera\",\n      \"reload\": \"\",\n      \"hint\": \"Koristi zasebni negativni prompt za detailer. Ako nije prisutan, koristit će primarni negativni prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer prompt\",\n      \"localized\": \"Prompt detailera\",\n      \"reload\": \"\",\n      \"hint\": \"Koristi zasebni prompt za detailer. Ako nije prisutan, koristit će primarni prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer steps\",\n      \"localized\": \"Koraci detailera\",\n      \"reload\": \"\",\n      \"hint\": \"Broj koraka za izvođenje procesa detailera\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer strength\",\n      \"localized\": \"Jačina detailera\",\n      \"reload\": \"\",\n      \"hint\": \"Jačina uklanjanja šuma procesa detailera\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer use model augment\",\n      \"localized\": \"Detailer koristi pojačanje modela\",\n      \"reload\": \"\",\n      \"hint\": \"Pokreni modele detekcije detailera s dodatnom preciznošću\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max detected\",\n      \"localized\": \"Maksimalno detektirano\",\n      \"reload\": \"\",\n      \"hint\": \"Maksimalan broj detektiranih objekata za primjenu detailera\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Edge blur\",\n      \"localized\": \"Zamućenje ruba\",\n      \"reload\": \"\",\n      \"hint\": \"Zamuti rub maskiranog područja za ovaj postotak\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Edge padding\",\n      \"localized\": \"Popunjavanje ruba\",\n      \"reload\": \"\",\n      \"hint\": \"Proširi rub maskiranog područja za ovaj postotak\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Min confidence\",\n      \"localized\": \"Minimalno povjerenje\",\n      \"reload\": \"\",\n      \"hint\": \"Minimalno povjerenje u detektiranu stavku\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max overlap\",\n      \"localized\": \"Maksimalno preklapanje\",\n      \"reload\": \"\",\n      \"hint\": \"Maksimalno preklapanje između dviju detektiranih stavki prije nego što se jedna odbaci\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Min size\",\n      \"localized\": \"Minimalna veličina\",\n      \"reload\": \"\",\n      \"hint\": \"Minimalna veličina detektiranog objekta kao postotak ukupne slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max size\",\n      \"localized\": \"Maksimalna veličina\",\n      \"reload\": \"\",\n      \"hint\": \"Maksimalna veličina detektiranog objekta kao postotak ukupne slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Image\",\n      \"localized\": \"Obrađuj sliku\",\n      \"reload\": \"\",\n      \"hint\": \"Obrađuj jednu sliku\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Batch\",\n      \"localized\": \"Obrađuj skupno\",\n      \"reload\": \"\",\n      \"hint\": \"Obrađuj skup slika\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Folder\",\n      \"localized\": \"Obrađuj mapu\",\n      \"reload\": \"\",\n      \"hint\": \"Obrađuj sve slike u mapi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Current\",\n      \"localized\": \"Trenutni\",\n      \"reload\": \"\",\n      \"hint\": \"Analiziraj module unutar trenutno učitanog modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Merge\",\n      \"localized\": \"Spajanje\",\n      \"reload\": \"\",\n      \"hint\": \"Spoji dva ili više modela u novi model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Modules\",\n      \"localized\": \"Moduli\",\n      \"reload\": \"\",\n      \"hint\": \"Spoji i/ili zamijeni module u postojeći model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Validate\",\n      \"localized\": \"Validacija\",\n      \"reload\": \"\",\n      \"hint\": \"Validiraj sve lokalne modele\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CivitAI\",\n      \"localized\": \"CivitAI\",\n      \"reload\": \"\",\n      \"hint\": \"Pretraži i preuzmi modele s CivitAI\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scale by\",\n      \"localized\": \"Skaliraj po\",\n      \"reload\": \"\",\n      \"hint\": \"Koristi ovu karticu za promjenu veličine izvorne(ih) slike(a) odabranim faktorom\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scale to\",\n      \"localized\": \"Skaliraj na\",\n      \"reload\": \"\",\n      \"hint\": \"Koristi ovu karticu za promjenu veličine izvorne(ih) slike(a) na odabranu ciljnu veličinu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Input directory\",\n      \"localized\": \"Ulazni direktorij\",\n      \"reload\": \"\",\n      \"hint\": \"Mapa u kojoj su slike koje želiš obraditi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Output directory\",\n      \"localized\": \"Izlazni direktorij\",\n      \"reload\": \"\",\n      \"hint\": \"Mapa u koju bi se trebale spremiti obrađene slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show result images\",\n      \"localized\": \"Prikaži rezultirajuće slike\",\n      \"reload\": \"\",\n      \"hint\": \"Omogući prikaz obrađenih slika u oknu za slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop to fit\",\n      \"localized\": \"Izreži za prilagodbu\",\n      \"reload\": \"\",\n      \"hint\": \"Ako se dimenzije tvoje izvorne slike (npr. 512x510) odstupaju od ciljanih dimenzija (npr. 1024x768), ova funkcija će prilagoditi tvoju povećanu sliku ciljanoj veličini. Višak će biti izrezan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine Upscaler\",\n      \"localized\": \"Rafiniraj Upscaler\",\n      \"reload\": \"\",\n      \"hint\": \"Odaberi sekundarni upscaler za pokretanje nakon početnog upscalera\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler 2 visibility\",\n      \"localized\": \"Vidljivost Upscalera 2\",\n      \"reload\": \"\",\n      \"hint\": \"Jačina sekundarnog upscalera\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Calculate hash for all models\",\n      \"localized\": \"Izračunaj hash za sve modele\",\n      \"reload\": \"\",\n      \"hint\": \"Izračunava hash za sve dostupne modele, što može potrajati vrlo dugo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Weights Clip\",\n      \"localized\": \"Ograničenje težina\",\n      \"reload\": \"\",\n      \"hint\": \"Prisiljava spojene težine da ne budu teže od originalnog modela, sprječavajući \\\"burn in\\\" i prezasićene modele\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ReBasin\",\n      \"localized\": \"ReBasin\",\n      \"reload\": \"\",\n      \"hint\": \"Izvodi višestruka spajanja s permutacijama kako bi zadržao više značajki iz oba modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Number of ReBasin Iterations\",\n      \"localized\": \"Broj ReBasin iteracija\",\n      \"reload\": \"\",\n      \"hint\": \"Broj puta za spajanje i permutaciju modela prije spremanja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CPU\",\n      \"localized\": \"CPU\",\n      \"reload\": \"\",\n      \"hint\": \"Koristi samo CPU i RAM: najsporije, ali najmanje vjerojatno da će doći do OOM-a\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Shuffle\",\n      \"localized\": \"Promiješaj\",\n      \"reload\": \"\",\n      \"hint\": \"Učitava cijeli model u RAM i izračunava na VRAM-u: Manje ubrzanje, preporučeno za SDXL spajanja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"In Blocks\",\n      \"localized\": \"Ulazni blokovi\",\n      \"reload\": \"\",\n      \"hint\": \"Blokovi za smanjivanje uzorkovanja UNeta (12 vrijednosti za SD1.5, 9 vrijednosti za SDXL)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mid Block\",\n      \"localized\": \"Srednji blok\",\n      \"reload\": \"\",\n      \"hint\": \"Centralni blok UNeta (1 vrijednost)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Out Block\",\n      \"localized\": \"Izlazni blokovi\",\n      \"reload\": \"\",\n      \"hint\": \"Blokovi za povećavanje uzorkovanja UNeta (12 vrijednosti za SD1.5, 9 vrijednosti za SDXL)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Preset Interpolation Ratio\",\n      \"localized\": \"Omjer interpolacije predpostavke\",\n      \"reload\": \"\",\n      \"hint\": \"Ako su odabrane dvije predpostavke, interpoliraj između njih\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adapter\",\n      \"localized\": \"Adapter\",\n      \"reload\": \"\",\n      \"hint\": \"IP adapter model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Active ip adapters\",\n      \"localized\": \"Aktivni IP adapteri\",\n      \"reload\": \"\",\n      \"hint\": \"Broj aktivnih IP adaptera\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Unload adapter\",\n      \"localized\": \"Istovari adapter\",\n      \"reload\": \"\",\n      \"hint\": \"Istovari IP adapter odmah nakon generiranja. Inače će IP adapter ostati učitan za brže korištenje u sljedećem procesu generiranja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop to portrait\",\n      \"localized\": \"Izreži na portret\",\n      \"reload\": \"\",\n      \"hint\": \"Izreži ulaznu sliku samo na portret prije korištenja kao ulaz za IP adapter\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Layer options\",\n      \"localized\": \"Opcije slojeva\",\n      \"reload\": \"\",\n      \"hint\": \"Ručno odredi napredne opcije slojeva IP adaptera\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"X values\",\n      \"localized\": \"X vrijednosti\",\n      \"reload\": \"\",\n      \"hint\": \"Odvoji vrijednosti za X os pomoću zareza\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Y values\",\n      \"localized\": \"Y vrijednosti\",\n      \"reload\": \"\",\n      \"hint\": \"Odvoji vrijednosti za Y os pomoću zareza\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Z values\",\n      \"localized\": \"Z vrijednosti\",\n      \"reload\": \"\",\n      \"hint\": \"Odvoji vrijednosti za Z os pomoću zareza\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Loops\",\n      \"localized\": \"Petlje\",\n      \"reload\": \"\",\n      \"hint\": \"Koliko puta obraditi sliku. Svaki izlaz se koristi kao ulaz za sljedeću petlju. Ako je postavljeno na 1, ponašanje će biti kao da ova skripta nije korištena\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Final denoising strength\",\n      \"localized\": \"Konačna jačina uklanjanja šuma\",\n      \"reload\": \"\",\n      \"hint\": \"Jačina uklanjanja šuma za završnu petlju svake slike u seriji\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoising strength curve\",\n      \"localized\": \"Krivulja jačine uklanjanja šuma\",\n      \"reload\": \"\",\n      \"hint\": \"Krivulja uklanjanja šuma kontrolira brzinu promjene jačine uklanjanja šuma u svakoj petlji. Agresivno: Većina promjena dogodit će se na početku petlji. Linearno: Promjena će biti konstantna kroz sve petlje. Lijen: Većina promjena dogodit će se pred kraj petlji\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Tile overlap\",\n      \"localized\": \"Preklapanje pločica\",\n      \"reload\": \"\",\n      \"hint\": \"Za SD povećanje, koliko bi se piksela trebalo preklapati između pločica. Pločice se preklapaju tako da kada se ponovno spoje u jednu sliku, nema jasno vidljivog šava\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Color to Mask\",\n      \"localized\": \"ACI: Boja u Masku\",\n      \"reload\": \"\",\n      \"hint\": \"Odaberi boju koju želiš maskirati i inpaintati. Klikni na boju na slici za automatski odabir.\\n Preporučuje se korištenje slika poput zelenih platna za precizne rezultate.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Color Tolerance\",\n      \"localized\": \"ACI: Tolerancija boje\",\n      \"reload\": \"\",\n      \"hint\": \"Podesi toleranciju za uključivanje sličnih boja u masku. Niže vrijednosti = maskiraju samo vrlo slične boje. Više = vrijednosti maskiraju širi raspon sličnih boja.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Mask Erode\",\n      \"localized\": \"ACI: Erodiranje maske\",\n      \"reload\": \"\",\n      \"hint\": \"Podesi popunjavanje za primjenu unutrašnjeg pomaka na masku. (Preporučena vrijednost = 2 za uklanjanje ostataka na rubovima)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Mask Blur\",\n      \"localized\": \"ACI: Zamućenje maske\",\n      \"reload\": \"\",\n      \"hint\": \"Podesi zamućenje za primjenu glatkog prijelaza između slike i inpainted područja. (Preporučena vrijednost = 0 za oštrinu)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Denoising Strength\",\n      \"localized\": \"ACI: Jačina uklanjanja šuma\",\n      \"reload\": \"\",\n      \"hint\": \"Promijeni jačinu uklanjanja šuma kako bi se postigla željena količina inpainta.\"\n    }\n  ],\n  \"settings\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Apply settings\",\n      \"localized\": \"Primijeni postavke\",\n      \"reload\": \"\",\n      \"hint\": \"Spremite trenutne postavke, preporučuje se ponovno pokretanje poslužitelja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Loading\",\n      \"localized\": \"Učitavanje modela\",\n      \"reload\": \"\",\n      \"hint\": \"Postavke vezane uz način učitavanja modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Options\",\n      \"localized\": \"Opcije modela\",\n      \"reload\": \"\",\n      \"hint\": \"Postavke vezane uz ponašanje specifičnih modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Offloading\",\n      \"localized\": \"Rasterećenje modela\",\n      \"reload\": \"\",\n      \"hint\": \"Postavke vezane uz rasterećenje modela i upravljanje memorijom\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Quantization\",\n      \"localized\": \"Kvantizacija modela\",\n      \"reload\": \"\",\n      \"hint\": \"Postavke vezane uz kvantizaciju modela koja se koristi za smanjenje potrošnje memorije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Metadata\",\n      \"localized\": \"Metapodaci slike\",\n      \"reload\": \"\",\n      \"hint\": \"Postavke vezane uz obradu metapodataka koji se stvaraju s generiranim slikama\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Legacy Options\",\n      \"localized\": \"Naslijeđene opcije\",\n      \"reload\": \"\",\n      \"hint\": \"Postavke vezane uz naslijeđene opcije - ne bi se trebale koristiti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restart server\",\n      \"localized\": \"Ponovo pokreni poslužitelj\",\n      \"reload\": \"\",\n      \"hint\": \"Ponovo pokreni poslužitelj\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Shutdown server\",\n      \"localized\": \"Ugasi poslužitelj\",\n      \"reload\": \"\",\n      \"hint\": \"Ugasi poslužitelj\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Preview theme\",\n      \"localized\": \"Pregled teme\",\n      \"reload\": \"\",\n      \"hint\": \"Prikaži pregled teme\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore defaults\",\n      \"localized\": \"Vrati zadano\",\n      \"reload\": \"\",\n      \"hint\": \"Vrati zadane postavke poslužitelja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Unload model\",\n      \"localized\": \"Iskrcaj model\",\n      \"reload\": \"\",\n      \"hint\": \"Iskrcaj trenutno učitani model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reload model\",\n      \"localized\": \"Ponovo učitaj model\",\n      \"reload\": \"\",\n      \"hint\": \"Ponovo učitaj trenutno odabrani model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models & Loading\",\n      \"localized\": \"Modeli i učitavanje\",\n      \"reload\": \"\",\n      \"hint\": \"Postavke vezane uz osnovne modele, primarni backend i ponašanje učitavanja modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variational Auto Encoder\",\n      \"localized\": \"Varijacijski autoenkoder\",\n      \"reload\": \"\",\n      \"hint\": \"Postavke vezane uz varijacijski autoenkoder i proces dekodiranja slike tijekom generiranja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Text encoder\",\n      \"localized\": \"Tekstualni enkoder\",\n      \"reload\": \"\",\n      \"hint\": \"Postavke vezane uz tekstualni enkoder i obradu prompta tijekom generiranja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Compute Settings\",\n      \"localized\": \"Postavke računanja\",\n      \"reload\": \"\",\n      \"hint\": \"Postavke vezane uz preciznost računanja, unakrsnu pažnju i optimizacije za računalne platforme\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Backend Settings\",\n      \"localized\": \"Postavke backenda\",\n      \"reload\": \"\",\n      \"hint\": \"Postavke vezane uz compute backende: torch, onnx i olive\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Quantization Settings\",\n      \"localized\": \"Postavke kvantizacije\",\n      \"reload\": \"\",\n      \"hint\": \"Postavke vezane uz kvantizaciju modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Pipeline modifiers\",\n      \"localized\": \"Modifikatori cjevovoda\",\n      \"reload\": \"\",\n      \"hint\": \"Dodatna funkcionalnost koja se može omogućiti tijekom generiranja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model compile\",\n      \"localized\": \"Kompilacija modela\",\n      \"reload\": \"\",\n      \"hint\": \"Postavke vezane uz različite metode kompilacije modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System Paths\",\n      \"localized\": \"Sistemske putanje\",\n      \"reload\": \"\",\n      \"hint\": \"Postavke vezane uz lokaciju različitih direktorija modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Options\",\n      \"localized\": \"Opcije slike\",\n      \"reload\": \"\",\n      \"hint\": \"Postavke vezane uz format slike, metapodatke i mreže slika\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Paths\",\n      \"localized\": \"Putanja slike\",\n      \"reload\": \"\",\n      \"hint\": \"Postavke vezane uz nazive datoteka slika i izlazne direktorije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Live Previews\",\n      \"localized\": \"Pregledi uživo\",\n      \"reload\": \"\",\n      \"hint\": \"Postavke vezane uz preglede uživo, audio obavijesti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sampler Settings\",\n      \"localized\": \"Postavke samplera\",\n      \"reload\": \"\",\n      \"hint\": \"Postavke vezane uz odabir i konfiguraciju samplera, te konfiguraciju samplera specifičnu za difuzor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Postprocessing\",\n      \"localized\": \"Naknadna obrada\",\n      \"reload\": \"\",\n      \"hint\": \"Postavke vezane uz obradu nakon generiranja slike, obnavljanje lica i povećanje rezolucije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control Options\",\n      \"localized\": \"Opcije kontrole\",\n      \"reload\": \"\",\n      \"hint\": \"Postavke vezane uz karticu Kontrole\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Huggingface\",\n      \"localized\": \"Huggingface\",\n      \"reload\": \"\",\n      \"hint\": \"Postavke vezane uz pristup Huggingfaceu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show all pages\",\n      \"localized\": \"Prikaži sve stranice\",\n      \"reload\": \"\",\n      \"hint\": \"Prikaži sve stranice postavki\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Base model\",\n      \"localized\": \"Osnovni model\",\n      \"reload\": \"\",\n      \"hint\": \"Glavni model koji se koristi za sve operacije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner model\",\n      \"localized\": \"Model za doradu\",\n      \"reload\": \"\",\n      \"hint\": \"Model za doradu koji se koristi za operacije drugog prolaza\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Cached models\",\n      \"localized\": \"Keširani modeli\",\n      \"reload\": \"\",\n      \"hint\": \"Broj modela za pohranu u RAM-u za brzi pristup\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE model\",\n      \"localized\": \"VAE model\",\n      \"reload\": \"\",\n      \"hint\": \"VAE pomaže s finim detaljima u konačnoj slici i može također promijeniti boje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model load using streams\",\n      \"localized\": \"Učitavanje modela pomoću streamova\",\n      \"reload\": \"\",\n      \"hint\": \"Prilikom učitavanja modela pokušajte stream učitavanje optimizirano za sporu ili mrežnu pohranu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xFormers\",\n      \"localized\": \"xFormers\",\n      \"reload\": \"\",\n      \"hint\": \"Optimizacija memorije. Nedeterminističko (različiti rezultati svaki put)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scaled-Dot-Product\",\n      \"localized\": \"Scaled-Dot-Product\",\n      \"reload\": \"\",\n      \"hint\": \"Optimizacija memorije. Nedeterminističko, osim ako je SDP memorijska pažnja onemogućena.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt padding\",\n      \"localized\": \"Dopunjavanje prompta\",\n      \"reload\": \"\",\n      \"hint\": \"Povećajte koherenciju dopunjavanjem od posljednjeg zareza unutar n tokena kada koristite više od 75 tokena\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Original\",\n      \"localized\": \"Original\",\n      \"reload\": \"\",\n      \"hint\": \"Originalni LDM backend\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Autocast\",\n      \"localized\": \"Automatsko pretvaranje\",\n      \"reload\": \"\",\n      \"hint\": \"Automatski određuje preciznost tijekom izvođenja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full\",\n      \"localized\": \"Puna\",\n      \"reload\": \"\",\n      \"hint\": \"Uvijek koristite punu preciznost\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"FP32\",\n      \"localized\": \"FP32\",\n      \"reload\": \"\",\n      \"hint\": \"Koristite 32-bitnu preciznost s pomičnim zarezom za izračune\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"FP16\",\n      \"localized\": \"FP16\",\n      \"reload\": \"\",\n      \"hint\": \"Koristite 16-bitnu preciznost s pomičnim zarezom za izračune\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"BF16\",\n      \"localized\": \"BF16\",\n      \"reload\": \"\",\n      \"hint\": \"Koristite modificiranu 16-bitnu preciznost s pomičnim zarezom za izračune\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full precision (--no-half-vae)\",\n      \"localized\": \"Puna preciznost (--no-half-vae)\",\n      \"reload\": \"\",\n      \"hint\": \"Koristi FP32 za VAE. Može proizvesti bolje rezultate uz veću potrošnju VRAM-a i sporije generiranje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Force full precision (--no-half)\",\n      \"localized\": \"Prisilna puna preciznost (--no-half)\",\n      \"reload\": \"\",\n      \"hint\": \"Koristi FP32 za model. Može proizvesti bolje rezultate uz veću potrošnju VRAM-a i sporije generiranje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upcast sampling\",\n      \"localized\": \"Uzorkovanje s višom preciznošću\",\n      \"reload\": \"\",\n      \"hint\": \"Obično daje slične rezultate kao --no-half s boljim performansama uz manju potrošnju memorije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Attempt VAE roll back for NaN values\",\n      \"localized\": \"Pokušaj VAE povrata za NaN vrijednosti\",\n      \"reload\": \"\",\n      \"hint\": \"Zahtijeva Torch 2.1 i omogućenu provjeru NaN vrijednosti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive use FP16 on optimization\",\n      \"localized\": \"Olive koristi FP16 za optimizaciju\",\n      \"reload\": \"\",\n      \"hint\": \"Koristite 16-bitnu preciznost s pomičnim zarezom za izlazni model procesa optimizacije Olive. Koristite 32-bitnu preciznost s pomičnim zarezom ako je onemogućeno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive force FP32 for VAE Encoder\",\n      \"localized\": \"Olive prisiljava FP32 za VAE enkoder\",\n      \"reload\": \"\",\n      \"hint\": \"Koristite 32-bitnu preciznost s pomičnim zarezom za VAE enkoder izlaznog modela. Ovo nadjačava opciju 'use FP16 on optimization'. Ako dobivate NaN ili crne prazne slike iz Img2Img, omogućite ovu opciju i obrišite cache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive use static dimensions\",\n      \"localized\": \"Olive koristi statične dimenzije\",\n      \"reload\": \"\",\n      \"hint\": \"Učinite zaključivanje s Olive optimiziranim modelima mnogo bržim. (OrtTransformersOptimization)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive cache optimized models\",\n      \"localized\": \"Olive kešira optimizirane modele\",\n      \"reload\": \"\",\n      \"hint\": \"Spremite Olive obrađene modele kao cache. Možete ih upravljati na ONNX kartici\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"File format\",\n      \"localized\": \"Format datoteke\",\n      \"reload\": \"\",\n      \"hint\": \"Odaberite format datoteke za slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Include metadata\",\n      \"localized\": \"Uključi metapodatke\",\n      \"reload\": \"\",\n      \"hint\": \"Spremite parametre kreiranja slike kao metapodatke unutar datoteke slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Images filename pattern\",\n      \"localized\": \"Obrazac naziva datoteke slike\",\n      \"reload\": \"\",\n      \"hint\": \"Koristite sljedeće oznake za definiranje načina odabira naziva datoteka za slike:<br><pre>seq, uuid<br>date, datetime, job_timestamp<br>generation_number, batch_number<br>model, model_shortname<br>model_hash, model_name<br>sampler, seed, steps, cfg<br>clip_skip, denoising<br>hasprompt, prompt, styles<br>prompt_hash, prompt_no_styles<br>prompt_spaces, prompt_words<br>height, width, image_hash<br></pre>\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Row count\",\n      \"localized\": \"Broj redaka\",\n      \"reload\": \"\",\n      \"hint\": \"Koristite -1 za automatsku detekciju i 0 da bude isto kao veličina serije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Directory name pattern\",\n      \"localized\": \"Obrazac naziva direktorija\",\n      \"reload\": \"\",\n      \"hint\": \"Koristite sljedeće oznake za definiranje načina odabira poddirektorija za slike i mreže: [steps], [cfg],[prompt_hash], [prompt], [prompt_no_styles], [prompt_spaces], [width], [height], [styles], [sampler], [seed], [model_hash], [model_name], [prompt_words], [date], [datetime], [datetime<Format>], [datetime<Format><Time Zone>], [job_timestamp]; ostavite prazno za zadano\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpainting conditioning mask strength\",\n      \"localized\": \"Jačina maske za kondicioniranje inpaintinga\",\n      \"reload\": \"\",\n      \"hint\": \"Određuje koliko snažno maskirati originalnu sliku za inpainting i img2img. 1.0 znači potpuno maskirano (zadano). 0.0 znači potpuno nemaskirano kondicioniranje. Niže vrijednosti pomoći će očuvanju cjelokupne kompozicije slike, ali će se boriti s velikim promjenama\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Clip skip\",\n      \"localized\": \"Clip skip\",\n      \"reload\": \"\",\n      \"hint\": \"Parametar ranog zaustavljanja za CLIP model; 1 znači zaustavljanje na zadnjem sloju kao i obično, 2 znači zaustavljanje na pretposljednjem sloju itd.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Images folder\",\n      \"localized\": \"Mapa slika\",\n      \"reload\": \"\",\n      \"hint\": \"Ako je prazno, zadano je tri direktorija niže\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Grids folder\",\n      \"localized\": \"Mapa mreža\",\n      \"reload\": \"\",\n      \"hint\": \"Ako je prazno, zadano je dva direktorija niže\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Quicksettings list\",\n      \"localized\": \"Popis brzih postavki\",\n      \"reload\": \"\",\n      \"hint\": \"Popis naziva postavki, odvojenih zarezima, za postavke koje bi trebale ići na traku za brzi pristup na vrhu umjesto na karticu postavki\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Live preview display period\",\n      \"localized\": \"Razdoblje prikaza pregleda uživo\",\n      \"reload\": \"\",\n      \"hint\": \"Zatraži sliku pregleda svakih n koraka, postavite na 0 za onemogućavanje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Approximate\",\n      \"localized\": \"Približno\",\n      \"reload\": \"\",\n      \"hint\": \"Jeftina aproksimacija neuronske mreže. Vrlo brzo u usporedbi s VAE-om, ali proizvodi slike s 4 puta manjom horizontalnom/vertikalnom rezolucijom i nižom kvalitetom\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Simple\",\n      \"localized\": \"Jednostavno\",\n      \"reload\": \"\",\n      \"hint\": \"Vrlo jeftina aproksimacija. Vrlo brzo u usporedbi s VAE-om, ali proizvodi slike s 8 puta manjom horizontalnom/vertikalnom rezolucijom i iznimno niskom kvalitetom\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Progress update period\",\n      \"localized\": \"Razdoblje ažuriranja napretka\",\n      \"reload\": \"\",\n      \"hint\": \"Razdoblje ažuriranja trake napretka UI-ja i provjera pregleda, u milisekundama\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Euler a\",\n      \"localized\": \"Euler a\",\n      \"reload\": \"\",\n      \"hint\": \"Euler Ancestral - vrlo kreativno, svako generiranje može dati potpuno drugačiju sliku ovisno o broju koraka, postavljanje koraka iznad 30-40 ne pomaže\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"DDIM\",\n      \"localized\": \"DDIM\",\n      \"reload\": \"\",\n      \"hint\": \"Denoising Diffusion Implicit Models - najbolje za inpainting\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"UniPC\",\n      \"localized\": \"UniPC\",\n      \"reload\": \"\",\n      \"hint\": \"Jedinstveni prediktor-korektor okvir za brzo uzorkovanje difuzijskih modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sigma negative guidance minimum\",\n      \"localized\": \"Minimalna sigma negativnog vođenja\",\n      \"reload\": \"\",\n      \"hint\": \"Preskočite negativni prompt za neke korake kada je slika gotovo spremna, 0=onemogući\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler tile size\",\n      \"localized\": \"Veličina pločice upscalera\",\n      \"reload\": \"\",\n      \"hint\": \"0 = bez pločica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler tile overlap\",\n      \"localized\": \"Preklapanje pločica upscalera\",\n      \"reload\": \"\",\n      \"hint\": \"Niske vrijednosti = vidljiv šav\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"GFPGAN\",\n      \"localized\": \"GFPGAN\",\n      \"reload\": \"\",\n      \"hint\": \"Vrati lica niske kvalitete pomoću neuronske mreže GFPGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CodeFormer\",\n      \"localized\": \"CodeFormer\",\n      \"reload\": \"\",\n      \"hint\": \"Vrati lica niske kvalitete pomoću neuronske mreže Codeformer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CodeFormer weight parameter\",\n      \"localized\": \"Parametar težine CodeFormera\",\n      \"reload\": \"\",\n      \"hint\": \"0 = maksimalni učinak; 1 = minimalni učinak\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ToMe token merging ratio\",\n      \"localized\": \"Omjer spajanja ToMe tokena\",\n      \"reload\": \"\",\n      \"hint\": \"Omogućite spajanje redundantnih tokena putem tomesd za poboljšanje brzine i memorije, 0=onemogućeno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Todo token merging ratio\",\n      \"localized\": \"Omjer spajanja Todo tokena\",\n      \"reload\": \"\",\n      \"hint\": \"Omogućite spajanje redundantnih tokena putem todo za poboljšanje brzine i memorije, 0=onemogućeno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model pipeline\",\n      \"localized\": \"Cjevovod modela\",\n      \"reload\": \"\",\n      \"hint\": \"Ako automatsko prepoznavanje ne prepozna model automatski, odaberite vrstu modela prije učitavanja modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE slicing\",\n      \"localized\": \"VAE rezanje\",\n      \"reload\": \"\",\n      \"hint\": \"Dekodira latentne batch slike jednu po jednu s ograničenim VRAM-om. Malo poboljšanje performansi u VAE dekodiranju na batch slikama s više slika\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE tiling\",\n      \"localized\": \"VAE slaganje pločica\",\n      \"reload\": \"\",\n      \"hint\": \"Dijeli velike slike u preklapajuće pločice s ograničenim VRAM-om. Rezultira manjim povećanjem vremena obrade\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Dynamic attention BMM\",\n      \"localized\": \"Dinamička pažnja BMM\",\n      \"reload\": \"\",\n      \"hint\": \"Izvodi izračun pažnje u koracima umjesto odjednom. Sporija vremena zaključivanja, ali znatno smanjena potrošnja memorije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX Execution Provider\",\n      \"localized\": \"ONNX pružatelj izvršenja\",\n      \"reload\": \"\",\n      \"hint\": \"ONNX pružatelj izvršenja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX allow fallback to CPU\",\n      \"localized\": \"ONNX dopusti povratak na CPU\",\n      \"reload\": \"\",\n      \"hint\": \"Dopusti povratak na CPU kada odabrani pružatelj izvršenja ne uspije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX cache converted models\",\n      \"localized\": \"ONNX kešira konvertirane modele\",\n      \"reload\": \"\",\n      \"hint\": \"Spremite modele pretvorene u ONNX format kao cache. Možete ih upravljati na ONNX kartici\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX unload base model when processing refiner\",\n      \"localized\": \"ONNX iskrcaj osnovni model prilikom obrade refine-a\",\n      \"reload\": \"\",\n      \"hint\": \"Iskrcaj osnovni model kada se refiner pretvara/optimizira/obrađuje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inference-mode\",\n      \"localized\": \"Način zaključivanja\",\n      \"reload\": \"\",\n      \"hint\": \"Koristite torch.inference_mode\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"no-grad\",\n      \"localized\": \"no-grad\",\n      \"reload\": \"\",\n      \"hint\": \"Koristite torch.no_grad\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model compile precompile\",\n      \"localized\": \"Model kompilacija predkompilacija\",\n      \"reload\": \"\",\n      \"hint\": \"Pokrenite kompilaciju modela odmah pri učitavanju modela umjesto pri prvoj upotrebi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Use zeros for prompt padding\",\n      \"localized\": \"Koristi nule za dopunjavanje prompta\",\n      \"reload\": \"\",\n      \"hint\": \"Prisilite puni nul tensor kada je prompt prazan kako biste uklonili preostali šum\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Include invisible watermark\",\n      \"localized\": \"Uključi nevidljivi vodeni žig\",\n      \"reload\": \"\",\n      \"hint\": \"Dodajte nevidljivi vodeni žig slici mijenjajući neke vrijednosti piksela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invisible watermark string\",\n      \"localized\": \"Nevidljivi string vodenog žiga\",\n      \"reload\": \"\",\n      \"hint\": \"String vodenog žiga za dodavanje slici. Neka bude vrlo kratak kako bi se izbjeglo oštećenje slike.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show log view\",\n      \"localized\": \"Prikaži prikaz dnevnika\",\n      \"reload\": \"\",\n      \"hint\": \"Prikaži prikaz dnevnika na dnu glavnog prozora\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Log view update period\",\n      \"localized\": \"Razdoblje ažuriranja prikaza dnevnika\",\n      \"reload\": \"\",\n      \"hint\": \"Razdoblje ažuriranja prikaza dnevnika, u milisekundama\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"PAG layer names\",\n      \"localized\": \"Nazivi PAG slojeva\",\n      \"reload\": \"\",\n      \"hint\": \"Popis slojeva odvojenih razmakom<br>Dostupno: d[0-5], m[0], u[0-8]<br>Zadano: m0\"\n    }\n  ],\n  \"missing\": [\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage\",\n      \"localized\": \"1. faza\",\n      \"reload\": \"\",\n      \"hint\": \"1. faza\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage backbone\",\n      \"localized\": \"Okosnica 1. faze\",\n      \"reload\": \"\",\n      \"hint\": \"Okosnica 1. faze\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage skip\",\n      \"localized\": \"Preskok 1. faze\",\n      \"reload\": \"\",\n      \"hint\": \"Preskok 1. faze\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd restart step\",\n      \"localized\": \"Korak 2. ponovnog pokretanja\",\n      \"reload\": \"\",\n      \"hint\": \"Korak 2. ponovnog pokretanja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd scale\",\n      \"localized\": \"2. skaliranje\",\n      \"reload\": \"\",\n      \"hint\": \"2. skaliranje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage\",\n      \"localized\": \"2. faza\",\n      \"reload\": \"\",\n      \"hint\": \"2. faza\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage backbone\",\n      \"localized\": \"Okosnica 2. faze\",\n      \"reload\": \"\",\n      \"hint\": \"Okosnica 2. faze\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage skip\",\n      \"localized\": \"Preskok 2. faze\",\n      \"reload\": \"\",\n      \"hint\": \"Preskok 2. faze\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd restart step\",\n      \"localized\": \"Korak 3. ponovnog pokretanja\",\n      \"reload\": \"\",\n      \"hint\": \"Korak 3. ponovnog pokretanja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd scale\",\n      \"localized\": \"3. skaliranje\",\n      \"reload\": \"\",\n      \"hint\": \"3. skaliranje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd stage\",\n      \"localized\": \"3. faza\",\n      \"reload\": \"\",\n      \"hint\": \"3. faza\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th restart step\",\n      \"localized\": \"Korak 4. ponovnog pokretanja\",\n      \"reload\": \"\",\n      \"hint\": \"Korak 4. ponovnog pokretanja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th scale\",\n      \"localized\": \"4. skaliranje\",\n      \"reload\": \"\",\n      \"hint\": \"4. skaliranje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th stage\",\n      \"localized\": \"4. faza\",\n      \"reload\": \"\",\n      \"hint\": \"4. faza\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"a1111\",\n      \"localized\": \"a1111\",\n      \"reload\": \"\",\n      \"hint\": \"a1111\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"accuracy\",\n      \"localized\": \"preciznost\",\n      \"reload\": \"\",\n      \"hint\": \"preciznost\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aci: mask dilate\",\n      \"localized\": \"aci: proširenje maske\",\n      \"reload\": \"\",\n      \"hint\": \"aci: proširenje maske\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"active\",\n      \"localized\": \"aktivno\",\n      \"reload\": \"\",\n      \"hint\": \"aktivno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adain\",\n      \"localized\": \"adain\",\n      \"reload\": \"\",\n      \"hint\": \"adain\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 1\",\n      \"localized\": \"adapter 1\",\n      \"reload\": \"\",\n      \"hint\": \"adapter 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 2\",\n      \"localized\": \"adapter 2\",\n      \"reload\": \"\",\n      \"hint\": \"adapter 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 3\",\n      \"localized\": \"adapter 3\",\n      \"reload\": \"\",\n      \"hint\": \"adapter 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 4\",\n      \"localized\": \"adapter 4\",\n      \"reload\": \"\",\n      \"hint\": \"adapter 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adaptive restore\",\n      \"localized\": \"prilagodljiva obnova\",\n      \"reload\": \"\",\n      \"hint\": \"prilagodljiva obnova\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"add text info\",\n      \"localized\": \"dodaj tekstualne informacije\",\n      \"reload\": \"\",\n      \"hint\": \"dodaj tekstualne informacije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"add time info\",\n      \"localized\": \"dodaj informacije o vremenu\",\n      \"reload\": \"\",\n      \"hint\": \"dodaj informacije o vremenu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"additional image browser folders\",\n      \"localized\": \"dodatne mape preglednika slika\",\n      \"reload\": \"\",\n      \"hint\": \"dodatne mape preglednika slika\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"additional postprocessing operations\",\n      \"localized\": \"dodatne operacije post-obrade\",\n      \"reload\": \"\",\n      \"hint\": \"dodatne operacije post-obrade\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"advanced options\",\n      \"localized\": \"napredne opcije\",\n      \"reload\": \"\",\n      \"hint\": \"napredne opcije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"after\",\n      \"localized\": \"nakon\",\n      \"reload\": \"\",\n      \"hint\": \"nakon\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aggressive at step\",\n      \"localized\": \"agresivno u koraku\",\n      \"reload\": \"\",\n      \"hint\": \"agresivno u koraku\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alias\",\n      \"localized\": \"alias\",\n      \"reload\": \"\",\n      \"hint\": \"alias\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"all\",\n      \"localized\": \"sve\",\n      \"reload\": \"\",\n      \"hint\": \"sve\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"allowed aspect ratios\",\n      \"localized\": \"dopušteni omjeri stranica\",\n      \"reload\": \"\",\n      \"hint\": \"dopušteni omjeri stranica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha\",\n      \"localized\": \"alpha\",\n      \"reload\": \"\",\n      \"hint\": \"alpha\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha block weight preset\",\n      \"localized\": \"predpostavka težine alfa bloka\",\n      \"reload\": \"\",\n      \"hint\": \"predpostavka težine alfa bloka\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha matting\",\n      \"localized\": \"alfa matiranje\",\n      \"reload\": \"\",\n      \"hint\": \"alfa matiranje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha preset\",\n      \"localized\": \"alfa predpostavka\",\n      \"reload\": \"\",\n      \"hint\": \"alfa predpostavka\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha ratio\",\n      \"localized\": \"alfa omjer\",\n      \"reload\": \"\",\n      \"hint\": \"alfa omjer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"amplify lut\",\n      \"localized\": \"pojačaj LUT\",\n      \"reload\": \"\",\n      \"hint\": \"pojačaj LUT\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"analyze\",\n      \"localized\": \"analiziraj\",\n      \"reload\": \"\",\n      \"hint\": \"analiziraj\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"anchor settings\",\n      \"localized\": \"postavke sidra\",\n      \"reload\": \"\",\n      \"hint\": \"postavke sidra\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"animateddiff\",\n      \"localized\": \"Animatediff\",\n      \"reload\": \"\",\n      \"hint\": \"Animatediff\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"answer\",\n      \"localized\": \"odgovor\",\n      \"reload\": \"\",\n      \"hint\": \"odgovor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aot_ts_nvfuser\",\n      \"localized\": \"aot_ts_nvfuser\",\n      \"reload\": \"\",\n      \"hint\": \"aot_ts_nvfuser\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"appearance\",\n      \"localized\": \"izgled\",\n      \"reload\": \"\",\n      \"hint\": \"izgled\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append caption files\",\n      \"localized\": \"dodaj datoteke s opisima\",\n      \"reload\": \"\",\n      \"hint\": \"dodaj datoteke s opisima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append image info json file\",\n      \"localized\": \"dodaj JSON datoteku s informacijama o slici\",\n      \"reload\": \"\",\n      \"hint\": \"dodaj JSON datoteku s informacijama o slici\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append interrogated prompt at each iteration\",\n      \"localized\": \"dodaj ispitani upit u svakoj iteraciji\",\n      \"reload\": \"\",\n      \"hint\": \"dodaj ispitani upit u svakoj iteraciji\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply color correction\",\n      \"localized\": \"primijeni korekciju boja\",\n      \"reload\": \"\",\n      \"hint\": \"primijeni korekciju boja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply filter\",\n      \"localized\": \"primijeni filtar\",\n      \"reload\": \"\",\n      \"hint\": \"primijeni filtar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply linfusion distillation on load\",\n      \"localized\": \"primijeni linfusion destilaciju pri učitavanju\",\n      \"reload\": \"\",\n      \"hint\": \"primijeni linfusion destilaciju pri učitavanju\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply mask as overlay\",\n      \"localized\": \"primijeni masku kao preklop\",\n      \"reload\": \"\",\n      \"hint\": \"primijeni masku kao preklop\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply msw-msa\",\n      \"localized\": \"primijeni msw-msa\",\n      \"reload\": \"\",\n      \"hint\": \"primijeni msw-msa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply rau-net\",\n      \"localized\": \"primijeni rau-net\",\n      \"reload\": \"\",\n      \"hint\": \"primijeni rau-net\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply to model\",\n      \"localized\": \"primijeni na model\",\n      \"reload\": \"\",\n      \"hint\": \"primijeni na model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"artists\",\n      \"localized\": \"umjetnici\",\n      \"reload\": \"\",\n      \"hint\": \"umjetnici\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"atiadlxx (amd only)\",\n      \"localized\": \"atiadlxx (samo AMD)\",\n      \"reload\": \"\",\n      \"hint\": \"atiadlxx (samo AMD)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention\",\n      \"localized\": \"pažnja\",\n      \"reload\": \"\",\n      \"hint\": \"pažnja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention adain\",\n      \"localized\": \"pažnja adain\",\n      \"reload\": \"\",\n      \"hint\": \"pažnja adain\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention cache enabled\",\n      \"localized\": \"predmemorija pažnje omogućena\",\n      \"reload\": \"\",\n      \"hint\": \"predmemorija pažnje omogućena\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention chunking threshold\",\n      \"localized\": \"prag razdvajanja pažnje\",\n      \"reload\": \"\",\n      \"hint\": \"prag razdvajanja pažnje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention kv chunk size\",\n      \"localized\": \"veličina dijela KV pažnje\",\n      \"reload\": \"\",\n      \"hint\": \"veličina dijela KV pažnje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention query chunk size\",\n      \"localized\": \"veličina dijela upita pažnje\",\n      \"reload\": \"\",\n      \"hint\": \"veličina dijela upita pažnje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto\",\n      \"localized\": \"automatski\",\n      \"reload\": \"\",\n      \"hint\": \"automatski\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto apply\",\n      \"localized\": \"automatska primjena\",\n      \"reload\": \"\",\n      \"hint\": \"automatska primjena\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-convert sd15 embeddings to sdxl\",\n      \"localized\": \"automatska konverzija SD15 ugradnji u SDXL\",\n      \"reload\": \"\",\n      \"hint\": \"automatska konverzija SD15 ugradnji u SDXL\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-mask\",\n      \"localized\": \"automatska maska\",\n      \"reload\": \"\",\n      \"hint\": \"automatska maska\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-segment\",\n      \"localized\": \"automatsko segmentiranje\",\n      \"reload\": \"\",\n      \"hint\": \"automatsko segmentiranje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"autolaunch browser upon startup\",\n      \"localized\": \"automatsko pokretanje preglednika pri pokretanju\",\n      \"reload\": \"\",\n      \"hint\": \"automatsko pokretanje preglednika pri pokretanju\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"automatically determine rank\",\n      \"localized\": \"automatski odredi rang\",\n      \"reload\": \"\",\n      \"hint\": \"automatski odredi rang\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"autorank ratio\",\n      \"localized\": \"omjer automatskog ranga\",\n      \"reload\": \"\",\n      \"hint\": \"omjer automatskog ranga\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"available networks\",\n      \"localized\": \"dostupne mreže\",\n      \"reload\": \"\",\n      \"hint\": \"dostupne mreže\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"backend\",\n      \"localized\": \"pozadina\",\n      \"reload\": \"\",\n      \"hint\": \"pozadina\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"backend storage\",\n      \"localized\": \"pohrana pozadine\",\n      \"reload\": \"\",\n      \"hint\": \"pohrana pozadine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"background threshold\",\n      \"localized\": \"prag pozadine\",\n      \"reload\": \"\",\n      \"hint\": \"prag pozadine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced\",\n      \"localized\": \"uravnoteženo\",\n      \"reload\": \"\",\n      \"hint\": \"uravnoteženo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload cpu high watermark\",\n      \"localized\": \"uravnoteženo rasterećenje CPU-a visoka oznaka\",\n      \"reload\": \"\",\n      \"hint\": \"uravnoteženo rasterećenje CPU-a visoka oznaka\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload gpu high watermark\",\n      \"localized\": \"uravnoteženo rasterećenje GPU-a visoka oznaka\",\n      \"reload\": \"\",\n      \"hint\": \"uravnoteženo rasterećenje GPU-a visoka oznaka\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload gpu low watermark\",\n      \"localized\": \"uravnoteženo rasterećenje GPU-a niska oznaka\",\n      \"reload\": \"\",\n      \"hint\": \"uravnoteženo rasterećenje GPU-a niska oznaka\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"base\",\n      \"localized\": \"baza\",\n      \"reload\": \"\",\n      \"hint\": \"baza\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch caption\",\n      \"localized\": \"skupni opis\",\n      \"reload\": \"\",\n      \"hint\": \"skupni opis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch input directory\",\n      \"localized\": \"ulazna mapa skupine\",\n      \"reload\": \"\",\n      \"hint\": \"ulazna mapa skupine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch interogate\",\n      \"localized\": \"skupno ispitivanje\",\n      \"reload\": \"\",\n      \"hint\": \"skupno ispitivanje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch interrogate\",\n      \"localized\": \"skupno ispitivanje\",\n      \"reload\": \"\",\n      \"hint\": \"skupno ispitivanje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch mask directory\",\n      \"localized\": \"mapa skupnih maski\",\n      \"reload\": \"\",\n      \"hint\": \"mapa skupnih maski\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch matrix-matrix\",\n      \"localized\": \"skupna matrica-matrica\",\n      \"reload\": \"\",\n      \"hint\": \"skupna matrica-matrica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch mode uses sequential seeds\",\n      \"localized\": \"skupni način koristi sekvencijalne sjemenke\",\n      \"reload\": \"\",\n      \"hint\": \"skupni način koristi sekvencijalne sjemenke\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch output directory\",\n      \"localized\": \"izlazna mapa skupine\",\n      \"reload\": \"\",\n      \"hint\": \"izlazna mapa skupine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch uses original name\",\n      \"localized\": \"skupina koristi originalno ime\",\n      \"reload\": \"\",\n      \"hint\": \"skupina koristi originalno ime\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bdia ddim\",\n      \"localized\": \"bdia ddim\",\n      \"reload\": \"\",\n      \"hint\": \"bdia ddim\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"before\",\n      \"localized\": \"prije\",\n      \"reload\": \"\",\n      \"hint\": \"prije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"benchmark level\",\n      \"localized\": \"razina mjerila\",\n      \"reload\": \"\",\n      \"hint\": \"razina mjerila\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"benchmark steps\",\n      \"localized\": \"koraci mjerila\",\n      \"reload\": \"\",\n      \"hint\": \"koraci mjerila\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta block weight preset\",\n      \"localized\": \"predpostavka težine beta bloka\",\n      \"reload\": \"\",\n      \"hint\": \"predpostavka težine beta bloka\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta end\",\n      \"localized\": \"beta kraj\",\n      \"reload\": \"\",\n      \"hint\": \"beta kraj\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta ratio\",\n      \"localized\": \"beta omjer\",\n      \"reload\": \"\",\n      \"hint\": \"beta omjer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta schedule\",\n      \"localized\": \"beta raspored\",\n      \"reload\": \"\",\n      \"hint\": \"beta raspored\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta start\",\n      \"localized\": \"beta početak\",\n      \"reload\": \"\",\n      \"hint\": \"beta početak\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bh1\",\n      \"localized\": \"bh1\",\n      \"reload\": \"\",\n      \"hint\": \"bh1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bh2\",\n      \"localized\": \"bh2\",\n      \"reload\": \"\",\n      \"hint\": \"bh2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"block\",\n      \"localized\": \"blok\",\n      \"reload\": \"\",\n      \"hint\": \"blok\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"block skip range\",\n      \"localized\": \"raspon preskakanja bloka\",\n      \"reload\": \"\",\n      \"hint\": \"raspon preskakanja bloka\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"blur\",\n      \"localized\": \"zamućenje\",\n      \"reload\": \"\",\n      \"hint\": \"zamućenje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"body\",\n      \"localized\": \"tijelo\",\n      \"reload\": \"\",\n      \"hint\": \"tijelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"boost\",\n      \"localized\": \"pojačanje\",\n      \"reload\": \"\",\n      \"hint\": \"pojačanje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"brightness\",\n      \"localized\": \"svjetlina\",\n      \"reload\": \"\",\n      \"hint\": \"svjetlina\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cache model\",\n      \"localized\": \"keširaj model\",\n      \"reload\": \"\",\n      \"hint\": \"keširaj model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cache text encoder results\",\n      \"localized\": \"keširaj rezultate tekstualnog enkodera\",\n      \"reload\": \"\",\n      \"hint\": \"keširaj rezultate tekstualnog enkodera\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"canny\",\n      \"localized\": \"canny\",\n      \"reload\": \"\",\n      \"hint\": \"canny\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"caption\",\n      \"localized\": \"natpis\",\n      \"reload\": \"\",\n      \"hint\": \"natpis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"caption model\",\n      \"localized\": \"model natpisa\",\n      \"reload\": \"\",\n      \"hint\": \"model natpisa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"center\",\n      \"localized\": \"centar\",\n      \"reload\": \"\",\n      \"hint\": \"centar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change log\",\n      \"localized\": \"dnevnik promjena\",\n      \"reload\": \"\",\n      \"hint\": \"dnevnik promjena\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change model\",\n      \"localized\": \"promijeni model\",\n      \"reload\": \"\",\n      \"hint\": \"promijeni model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change rate\",\n      \"localized\": \"stopa promjene\",\n      \"reload\": \"\",\n      \"hint\": \"stopa promjene\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change reference\",\n      \"localized\": \"promijeni referencu\",\n      \"reload\": \"\",\n      \"hint\": \"promijeni referencu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change refiner\",\n      \"localized\": \"promijeni refiner\",\n      \"reload\": \"\",\n      \"hint\": \"promijeni refiner\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change vae\",\n      \"localized\": \"promijeni vae\",\n      \"reload\": \"\",\n      \"hint\": \"promijeni vae\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"channels last\",\n      \"localized\": \"kanali zadnji\",\n      \"reload\": \"\",\n      \"hint\": \"kanali zadnji\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"check alternative hash\",\n      \"localized\": \"provjeri alternativni hash\",\n      \"reload\": \"\",\n      \"hint\": \"provjeri alternativni hash\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"check for updates\",\n      \"localized\": \"provjeri ažuriranja\",\n      \"reload\": \"\",\n      \"hint\": \"provjeri ažuriranja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"check status\",\n      \"localized\": \"provjeri status\",\n      \"reload\": \"\",\n      \"hint\": \"provjeri status\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"chunk size\",\n      \"localized\": \"veličina bloka\",\n      \"reload\": \"\",\n      \"hint\": \"veličina bloka\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"civitai model type\",\n      \"localized\": \"civitai tip modela\",\n      \"reload\": \"\",\n      \"hint\": \"civitai tip modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"civitai token\",\n      \"localized\": \"civitai token\",\n      \"reload\": \"\",\n      \"hint\": \"civitai token\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ck flash attention\",\n      \"localized\": \"ck flash pažnja\",\n      \"reload\": \"\",\n      \"hint\": \"ck flash pažnja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ckpt\",\n      \"localized\": \"ckpt\",\n      \"reload\": \"\",\n      \"hint\": \"ckpt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cleanup temporary folder on startup\",\n      \"localized\": \"očisti privremenu mapu pri pokretanju\",\n      \"reload\": \"\",\n      \"hint\": \"očisti privremenu mapu pri pokretanju\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip model\",\n      \"localized\": \"clip model\",\n      \"reload\": \"\",\n      \"hint\": \"clip model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: chunk size\",\n      \"localized\": \"clip: veličina bloka\",\n      \"reload\": \"\",\n      \"hint\": \"clip: veličina bloka\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: default captioner\",\n      \"localized\": \"clip: zadani alat za natpise\",\n      \"reload\": \"\",\n      \"hint\": \"clip: zadani alat za natpise\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: default mode\",\n      \"localized\": \"clip: zadani način rada\",\n      \"reload\": \"\",\n      \"hint\": \"clip: zadani način rada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: default model\",\n      \"localized\": \"clip: zadani model\",\n      \"reload\": \"\",\n      \"hint\": \"clip: zadani model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: intermediate flavors\",\n      \"localized\": \"clip: međufaze\",\n      \"reload\": \"\",\n      \"hint\": \"clip: međufaze\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: max flavors\",\n      \"localized\": \"clip: maksimalan broj faza\",\n      \"reload\": \"\",\n      \"hint\": \"clip: maksimalan broj faza\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: max length\",\n      \"localized\": \"clip: maksimalna duljina\",\n      \"reload\": \"\",\n      \"hint\": \"clip: maksimalna duljina\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: min flavors\",\n      \"localized\": \"clip: minimalan broj faza\",\n      \"reload\": \"\",\n      \"hint\": \"clip: minimalan broj faza\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: min length\",\n      \"localized\": \"clip: minimalna duljina\",\n      \"reload\": \"\",\n      \"hint\": \"clip: minimalna duljina\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: num beams\",\n      \"localized\": \"clip: broj snopova\",\n      \"reload\": \"\",\n      \"hint\": \"clip: broj snopova\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"close\",\n      \"localized\": \"zatvori\",\n      \"reload\": \"\",\n      \"hint\": \"zatvori\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cmsi\",\n      \"localized\": \"cmsi\",\n      \"reload\": \"\",\n      \"hint\": \"cmsi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn end\",\n      \"localized\": \"cn kraj\",\n      \"reload\": \"\",\n      \"hint\": \"cn kraj\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn mode\",\n      \"localized\": \"cn način\",\n      \"reload\": \"\",\n      \"hint\": \"cn način\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn start\",\n      \"localized\": \"cn početak\",\n      \"reload\": \"\",\n      \"hint\": \"cn početak\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn strength\",\n      \"localized\": \"cn jačina\",\n      \"reload\": \"\",\n      \"hint\": \"cn jačina\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn tiles\",\n      \"localized\": \"cn pločice\",\n      \"reload\": \"\",\n      \"hint\": \"cn pločice\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"coarse\",\n      \"localized\": \"grubo\",\n      \"reload\": \"\",\n      \"hint\": \"grubo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color\",\n      \"localized\": \"boja\",\n      \"reload\": \"\",\n      \"hint\": \"boja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color grading\",\n      \"localized\": \"ocjenjivanje boja\",\n      \"reload\": \"\",\n      \"hint\": \"ocjenjivanje boja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color map\",\n      \"localized\": \"karta boja\",\n      \"reload\": \"\",\n      \"hint\": \"karta boja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color variation\",\n      \"localized\": \"varijacija boje\",\n      \"reload\": \"\",\n      \"hint\": \"varijacija boje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"colormap\",\n      \"localized\": \"karta boja\",\n      \"reload\": \"\",\n      \"hint\": \"karta boja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"columns\",\n      \"localized\": \"stupci\",\n      \"reload\": \"\",\n      \"hint\": \"stupci\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"comma\",\n      \"localized\": \"zarez\",\n      \"reload\": \"\",\n      \"hint\": \"zarez\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"comma separated list with optional strength per lora\",\n      \"localized\": \"popis odvojen zarezima s opcionalnom jačinom po lora\",\n      \"reload\": \"\",\n      \"hint\": \"popis odvojen zarezima s opcionalnom jačinom po lora\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"compact view\",\n      \"localized\": \"kompaktan prikaz\",\n      \"reload\": \"\",\n      \"hint\": \"kompaktan prikaz\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"compel\",\n      \"localized\": \"compel\",\n      \"reload\": \"\",\n      \"hint\": \"compel\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"composite\",\n      \"localized\": \"kompozitno\",\n      \"reload\": \"\",\n      \"hint\": \"kompozitno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"compress ratio\",\n      \"localized\": \"omjer kompresije\",\n      \"reload\": \"\",\n      \"hint\": \"omjer kompresije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"concept tokens\",\n      \"localized\": \"konceptualni tokeni\",\n      \"reload\": \"\",\n      \"hint\": \"konceptualni tokeni\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context\",\n      \"localized\": \"kontekst\",\n      \"reload\": \"\",\n      \"hint\": \"kontekst\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context after\",\n      \"localized\": \"kontekst poslije\",\n      \"reload\": \"\",\n      \"hint\": \"kontekst poslije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context before\",\n      \"localized\": \"kontekst prije\",\n      \"reload\": \"\",\n      \"hint\": \"kontekst prije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context mask\",\n      \"localized\": \"maska konteksta\",\n      \"reload\": \"\",\n      \"hint\": \"maska konteksta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"contrast\",\n      \"localized\": \"kontrast\",\n      \"reload\": \"\",\n      \"hint\": \"kontrast\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control factor\",\n      \"localized\": \"faktor kontrole\",\n      \"reload\": \"\",\n      \"hint\": \"faktor kontrole\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control override denoise strength\",\n      \"localized\": \"kontrola premošćivanja jačine smanjenja šuma\",\n      \"reload\": \"\",\n      \"hint\": \"kontrola premošćivanja jačine smanjenja šuma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control preprocess input images\",\n      \"localized\": \"kontrola predprocesiranja ulaznih slika\",\n      \"reload\": \"\",\n      \"hint\": \"kontrola predprocesiranja ulaznih slika\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 1\",\n      \"localized\": \"control-lllite jedinica 1\",\n      \"reload\": \"\",\n      \"hint\": \"control-lllite jedinica 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 2\",\n      \"localized\": \"control-lllite jedinica 2\",\n      \"reload\": \"\",\n      \"hint\": \"control-lllite jedinica 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 3\",\n      \"localized\": \"control-lllite jedinica 3\",\n      \"reload\": \"\",\n      \"hint\": \"control-lllite jedinica 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 4\",\n      \"localized\": \"control-lllite jedinica 4\",\n      \"reload\": \"\",\n      \"hint\": \"control-lllite jedinica 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet\",\n      \"localized\": \"controlnet\",\n      \"reload\": \"\",\n      \"hint\": \"controlnet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 1\",\n      \"localized\": \"controlnet jedinica 1\",\n      \"reload\": \"\",\n      \"hint\": \"controlnet jedinica 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 2\",\n      \"localized\": \"controlnet jedinica 2\",\n      \"reload\": \"\",\n      \"hint\": \"controlnet jedinica 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 3\",\n      \"localized\": \"controlnet jedinica 3\",\n      \"reload\": \"\",\n      \"hint\": \"controlnet jedinica 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 4\",\n      \"localized\": \"controlnet jedinica 4\",\n      \"reload\": \"\",\n      \"hint\": \"controlnet jedinica 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs\",\n      \"localized\": \"controlnet-xs\",\n      \"reload\": \"\",\n      \"hint\": \"controlnet-xs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 1\",\n      \"localized\": \"controlnet-xs jedinica 1\",\n      \"reload\": \"\",\n      \"hint\": \"controlnet-xs jedinica 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 2\",\n      \"localized\": \"controlnet-xs jedinica 2\",\n      \"reload\": \"\",\n      \"hint\": \"controlnet-xs jedinica 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 3\",\n      \"localized\": \"controlnet-xs jedinica 3\",\n      \"reload\": \"\",\n      \"hint\": \"controlnet-xs jedinica 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 4\",\n      \"localized\": \"controlnet-xs jedinica 4\",\n      \"reload\": \"\",\n      \"hint\": \"controlnet-xs jedinica 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"correction mode\",\n      \"localized\": \"način ispravka\",\n      \"reload\": \"\",\n      \"hint\": \"način ispravka\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine background\",\n      \"localized\": \"kosinus pozadina\",\n      \"reload\": \"\",\n      \"hint\": \"kosinus pozadina\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale\",\n      \"localized\": \"kosinus skala\",\n      \"reload\": \"\",\n      \"hint\": \"kosinus skala\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale 1\",\n      \"localized\": \"kosinus skala 1\",\n      \"reload\": \"\",\n      \"hint\": \"kosinus skala 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale 2\",\n      \"localized\": \"kosinus skala 2\",\n      \"reload\": \"\",\n      \"hint\": \"kosinus skala 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale 3\",\n      \"localized\": \"kosinus skala 3\",\n      \"reload\": \"\",\n      \"hint\": \"kosinus skala 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"create image info text file\",\n      \"localized\": \"stvori tekstualnu datoteku s informacijama o slici\",\n      \"reload\": \"\",\n      \"hint\": \"stvori tekstualnu datoteku s informacijama o slici\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"create video\",\n      \"localized\": \"stvori video\",\n      \"reload\": \"\",\n      \"hint\": \"stvori video\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"create zip archive\",\n      \"localized\": \"stvori zip arhivu\",\n      \"reload\": \"\",\n      \"hint\": \"stvori zip arhivu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cross-attention\",\n      \"localized\": \"unakrsna pažnja\",\n      \"reload\": \"\",\n      \"hint\": \"unakrsna pažnja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cudagraphs\",\n      \"localized\": \"cudagraphs\",\n      \"reload\": \"\",\n      \"hint\": \"cudagraphs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cudamallocasync\",\n      \"localized\": \"cudamallocasync\",\n      \"reload\": \"\",\n      \"hint\": \"cudamallocasync\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"custom pipeline\",\n      \"localized\": \"prilagođeni cjevovod\",\n      \"reload\": \"\",\n      \"hint\": \"prilagođeni cjevovod\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dark\",\n      \"localized\": \"tamno\",\n      \"reload\": \"\",\n      \"hint\": \"tamno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dc solver\",\n      \"localized\": \"dc rješavač\",\n      \"reload\": \"\",\n      \"hint\": \"dc rješavač\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ddpm\",\n      \"localized\": \"ddpm\",\n      \"reload\": \"\",\n      \"hint\": \"ddpm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"debug info\",\n      \"localized\": \"informacije za otklanjanje grešaka\",\n      \"reload\": \"\",\n      \"hint\": \"informacije za otklanjanje grešaka\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"decode\",\n      \"localized\": \"dekodiranje\",\n      \"reload\": \"\",\n      \"hint\": \"dekodiranje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"decode chunks\",\n      \"localized\": \"dekodiranje dijelova\",\n      \"reload\": \"\",\n      \"hint\": \"dekodiranje dijelova\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deep-cache\",\n      \"localized\": \"deep-cache\",\n      \"reload\": \"\",\n      \"hint\": \"deep-cache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru\",\n      \"localized\": \"deepbooru\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: escape brackets\",\n      \"localized\": \"deepbooru: izbjegni zagrade\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: izbjegni zagrade\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: exclude tags\",\n      \"localized\": \"deepbooru: isključi oznake\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: isključi oznake\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: include scores in results\",\n      \"localized\": \"deepbooru: uključi bodove u rezultate\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: uključi bodove u rezultate\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: max tags\",\n      \"localized\": \"deepbooru: maksimalan broj oznaka\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: maksimalan broj oznaka\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: score threshold\",\n      \"localized\": \"deepbooru: prag bodova\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: prag bodova\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: sort alphabetically\",\n      \"localized\": \"deepbooru: sortiraj abecedno\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: sortiraj abecedno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: use spaces for tags\",\n      \"localized\": \"deepbooru: koristi razmake za oznake\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: koristi razmake za oznake\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepcache cache interval\",\n      \"localized\": \"deepcache interval predmemorije\",\n      \"reload\": \"\",\n      \"hint\": \"deepcache interval predmemorije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"default\",\n      \"localized\": \"zadano\",\n      \"reload\": \"\",\n      \"hint\": \"zadano\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deis\",\n      \"localized\": \"deis\",\n      \"reload\": \"\",\n      \"hint\": \"deis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"denoising batch size\",\n      \"localized\": \"veličina serije za uklanjanje šuma\",\n      \"reload\": \"\",\n      \"hint\": \"veličina serije za uklanjanje šuma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"denoising steps\",\n      \"localized\": \"koraci uklanjanja šuma\",\n      \"reload\": \"\",\n      \"hint\": \"koraci uklanjanja šuma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth and normal\",\n      \"localized\": \"dubina i normala\",\n      \"reload\": \"\",\n      \"hint\": \"dubina i normala\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth anything\",\n      \"localized\": \"depth anything\",\n      \"reload\": \"\",\n      \"hint\": \"depth anything\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth map\",\n      \"localized\": \"mapa dubine\",\n      \"reload\": \"\",\n      \"hint\": \"mapa dubine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth threshold\",\n      \"localized\": \"prag dubine\",\n      \"reload\": \"\",\n      \"hint\": \"prag dubine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"description\",\n      \"localized\": \"opis\",\n      \"reload\": \"\",\n      \"hint\": \"opis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"details\",\n      \"localized\": \"detalji\",\n      \"reload\": \"\",\n      \"hint\": \"detalji\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deterministic mode\",\n      \"localized\": \"deterministički način\",\n      \"reload\": \"\",\n      \"hint\": \"deterministički način\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"device info\",\n      \"localized\": \"informacije o uređaju\",\n      \"reload\": \"\",\n      \"hint\": \"informacije o uređaju\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"diffusers\",\n      \"localized\": \"diffusers\",\n      \"reload\": \"\",\n      \"hint\": \"diffusers\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dilate\",\n      \"localized\": \"dilatacija\",\n      \"reload\": \"\",\n      \"hint\": \"dilatacija\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dilate tau\",\n      \"localized\": \"dilatacija tau\",\n      \"reload\": \"\",\n      \"hint\": \"dilatacija tau\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"directml retry ops for nan\",\n      \"localized\": \"directml ponovi operacije za nan\",\n      \"reload\": \"\",\n      \"hint\": \"directml ponovi operacije za nan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"directory for temporary images; leave empty for default\",\n      \"localized\": \"direktorij za privremene slike; ostavi prazno za zadano\",\n      \"reload\": \"\",\n      \"hint\": \"direktorij za privremene slike; ostavi prazno za zadano\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disable accelerate\",\n      \"localized\": \"onemogući ubrzanje\",\n      \"reload\": \"\",\n      \"hint\": \"onemogući ubrzanje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disable conditional batching\",\n      \"localized\": \"onemogući uvjetno grupiranje\",\n      \"reload\": \"\",\n      \"hint\": \"onemogući uvjetno grupiranje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disabled\",\n      \"localized\": \"onemogućeno\",\n      \"reload\": \"\",\n      \"hint\": \"onemogućeno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"discard penultimate sigma\",\n      \"localized\": \"odbaci pretposljednju sigmu\",\n      \"reload\": \"\",\n      \"hint\": \"odbaci pretposljednju sigmu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"distance threshold\",\n      \"localized\": \"prag udaljenosti\",\n      \"reload\": \"\",\n      \"hint\": \"prag udaljenosti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"do not change selected model when reading generation parameters\",\n      \"localized\": \"ne mijenjaj odabrani model prilikom čitanja parametara generiranja\",\n      \"reload\": \"\",\n      \"hint\": \"ne mijenjaj odabrani model prilikom čitanja parametara generiranja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"do not display video output in ui\",\n      \"localized\": \"ne prikazuj video izlaz u korisničkom sučelju\",\n      \"reload\": \"\",\n      \"hint\": \"ne prikazuj video izlaz u korisničkom sučelju\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"down\",\n      \"localized\": \"dolje\",\n      \"reload\": \"\",\n      \"hint\": \"dolje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download\",\n      \"localized\": \"preuzmi\",\n      \"reload\": \"\",\n      \"hint\": \"preuzmi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download model\",\n      \"localized\": \"preuzmi model\",\n      \"reload\": \"\",\n      \"hint\": \"preuzmi model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download path\",\n      \"localized\": \"putanja za preuzimanje\",\n      \"reload\": \"\",\n      \"hint\": \"putanja za preuzimanje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download updates\",\n      \"localized\": \"preuzmi ažuriranja\",\n      \"reload\": \"\",\n      \"hint\": \"preuzmi ažuriranja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"downscale high resolution live previews\",\n      \"localized\": \"smanji razlučivost pregleda uživo visoke rezolucije\",\n      \"reload\": \"\",\n      \"hint\": \"smanji razlučivost pregleda uživo visoke rezolucije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm sde\",\n      \"localized\": \"dpm sde\",\n      \"reload\": \"\",\n      \"hint\": \"dpm sde\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++\",\n      \"localized\": \"dpm++\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 1s\",\n      \"localized\": \"dpm++ 1s\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 1s\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m\",\n      \"localized\": \"dpm++ 2m\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 2m\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m edm\",\n      \"localized\": \"dpm++ 2m edm\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 2m edm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m inverse\",\n      \"localized\": \"dpm++ 2m inverzno\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 2m inverzno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m sde\",\n      \"localized\": \"dpm++ 2m sde\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 2m sde\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 3m\",\n      \"localized\": \"dpm++ 3m\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 3m\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 3m inverse\",\n      \"localized\": \"dpm++ 3m inverzno\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 3m inverzno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ cosine\",\n      \"localized\": \"dpm++ kosinus\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ kosinus\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ inverse\",\n      \"localized\": \"dpm++ inverzno\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ inverzno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ sde\",\n      \"localized\": \"dpm++ sde\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ sde\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2 flowmatch\",\n      \"localized\": \"dpm2 flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2 flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2m flowmatch\",\n      \"localized\": \"dpm2++ 2m flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 2m flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2m sde flowmatch\",\n      \"localized\": \"dpm2++ 2m sde flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 2m sde flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2s flowmatch\",\n      \"localized\": \"dpm2++ 2s flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 2s flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 3m sde flowmatch\",\n      \"localized\": \"dpm2++ 3m sde flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 3m sde flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ sde flowmatch\",\n      \"localized\": \"dpm2++ sde flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ sde flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2a flowmatch\",\n      \"localized\": \"dpm2a flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2a flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"draw legend\",\n      \"localized\": \"nacrtaj legendu\",\n      \"reload\": \"\",\n      \"hint\": \"nacrtaj legendu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dropdown\",\n      \"localized\": \"padajući izbornik\",\n      \"reload\": \"\",\n      \"hint\": \"padajući izbornik\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"duration\",\n      \"localized\": \"trajanje\",\n      \"reload\": \"\",\n      \"hint\": \"trajanje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dwpose\",\n      \"localized\": \"dwpose\",\n      \"reload\": \"\",\n      \"hint\": \"dwpose\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic\",\n      \"localized\": \"dinamično\",\n      \"reload\": \"\",\n      \"hint\": \"dinamično\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention\",\n      \"localized\": \"dinamična pažnja\",\n      \"reload\": \"\",\n      \"hint\": \"dinamična pažnja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention slicing rate in gb\",\n      \"localized\": \"stopa rezanja dinamične pažnje u GB\",\n      \"reload\": \"\",\n      \"hint\": \"stopa rezanja dinamične pažnje u GB\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention trigger rate in gb\",\n      \"localized\": \"stopa okidanja dinamične pažnje u GB\",\n      \"reload\": \"\",\n      \"hint\": \"stopa okidanja dinamične pažnje u GB\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edge\",\n      \"localized\": \"rub\",\n      \"reload\": \"\",\n      \"hint\": \"rub\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edit start\",\n      \"localized\": \"uredi početak\",\n      \"reload\": \"\",\n      \"hint\": \"uredi početak\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edit stop\",\n      \"localized\": \"uredi zaustavljanje\",\n      \"reload\": \"\",\n      \"hint\": \"uredi zaustavljanje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"embedded metadata\",\n      \"localized\": \"ugrađeni metapodaci\",\n      \"reload\": \"\",\n      \"hint\": \"ugrađeni metapodaci\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable embeddings support\",\n      \"localized\": \"omogući podršku za ugradnje\",\n      \"reload\": \"\",\n      \"hint\": \"omogući podršku za ugradnje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable file wildcards support\",\n      \"localized\": \"omogući podršku za zamjenske znakove datoteka\",\n      \"reload\": \"\",\n      \"hint\": \"omogući podršku za zamjenske znakove datoteka\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable freeu\",\n      \"localized\": \"omogući freeu\",\n      \"reload\": \"\",\n      \"hint\": \"omogući freeu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable teacache\",\n      \"localized\": \"omogući teacache\",\n      \"reload\": \"\",\n      \"hint\": \"omogući teacache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable tonemap\",\n      \"localized\": \"omogući toniranje\",\n      \"reload\": \"\",\n      \"hint\": \"omogući toniranje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable use of reference models\",\n      \"localized\": \"omogući korištenje referentnih modela\",\n      \"reload\": \"\",\n      \"hint\": \"omogući korištenje referentnih modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enabled\",\n      \"localized\": \"omogućeno\",\n      \"reload\": \"\",\n      \"hint\": \"omogućeno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"encoder\",\n      \"localized\": \"enkoder\",\n      \"reload\": \"\",\n      \"hint\": \"enkoder\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"end\",\n      \"localized\": \"kraj\",\n      \"reload\": \"\",\n      \"hint\": \"kraj\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enhance prompt\",\n      \"localized\": \"poboljšaj upit\",\n      \"reload\": \"\",\n      \"hint\": \"poboljšaj upit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ensemble size\",\n      \"localized\": \"veličina ansambla\",\n      \"reload\": \"\",\n      \"hint\": \"veličina ansambla\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"epsilon\",\n      \"localized\": \"epsilon\",\n      \"reload\": \"\",\n      \"hint\": \"epsilon\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"erode\",\n      \"localized\": \"erodiranje\",\n      \"reload\": \"\",\n      \"hint\": \"erodiranje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"erode size\",\n      \"localized\": \"veličina erodiranja\",\n      \"reload\": \"\",\n      \"hint\": \"veličina erodiranja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"eta\",\n      \"localized\": \"eta\",\n      \"reload\": \"\",\n      \"hint\": \"eta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler\",\n      \"localized\": \"euler\",\n      \"reload\": \"\",\n      \"hint\": \"euler\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler edm\",\n      \"localized\": \"euler edm\",\n      \"reload\": \"\",\n      \"hint\": \"euler edm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler flowmatch\",\n      \"localized\": \"euler flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"euler flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler sgm\",\n      \"localized\": \"euler sgm\",\n      \"reload\": \"\",\n      \"hint\": \"euler sgm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.cpu\",\n      \"localized\": \"executionprovider.cpu\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.cpu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.cuda\",\n      \"localized\": \"executionprovider.cuda\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.cuda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.directml\",\n      \"localized\": \"executionprovider.directml\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.directml\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.migraphx\",\n      \"localized\": \"executionprovider.migraphx\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.migraphx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.openvino\",\n      \"localized\": \"executionprovider.openvino\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.openvino\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.rocm\",\n      \"localized\": \"executionprovider.rocm\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.rocm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"expandable segments\",\n      \"localized\": \"proširivi segmenti\",\n      \"reload\": \"\",\n      \"hint\": \"proširivi segmenti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"exponential\",\n      \"localized\": \"eksponencijalno\",\n      \"reload\": \"\",\n      \"hint\": \"eksponencijalno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"exposure\",\n      \"localized\": \"izloženost\",\n      \"reload\": \"\",\n      \"hint\": \"izloženost\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"extra noise multiplier for img2img\",\n      \"localized\": \"dodatni množitelj šuma za img2img\",\n      \"reload\": \"\",\n      \"hint\": \"dodatni množitelj šuma za img2img\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"extract lora\",\n      \"localized\": \"izdvoji LoRA\",\n      \"reload\": \"\",\n      \"hint\": \"izdvoji LoRA\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"face\",\n      \"localized\": \"lice\",\n      \"reload\": \"\",\n      \"hint\": \"lice\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"face confidence\",\n      \"localized\": \"razina pouzdanosti lica\",\n      \"reload\": \"\",\n      \"hint\": \"razina pouzdanosti lica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"faceid model\",\n      \"localized\": \"FaceID model\",\n      \"reload\": \"\",\n      \"hint\": \"FaceID model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fall-off exponent (lower=higher detail)\",\n      \"localized\": \"eksponent opadanja (manje=više detalja)\",\n      \"reload\": \"\",\n      \"hint\": \"eksponent opadanja (manje=više detalja)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"false\",\n      \"localized\": \"netočno\",\n      \"reload\": \"\",\n      \"hint\": \"netočno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fast\",\n      \"localized\": \"brzo\",\n      \"reload\": \"\",\n      \"hint\": \"brzo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"file or folder with user-defined styles\",\n      \"localized\": \"datoteka ili mapa s korisnički definiranim stilovima\",\n      \"reload\": \"\",\n      \"hint\": \"datoteka ili mapa s korisnički definiranim stilovima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"filename\",\n      \"localized\": \"naziv datoteke\",\n      \"reload\": \"\",\n      \"hint\": \"naziv datoteke\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"first-block cache enabled\",\n      \"localized\": \"omogućena predmemorija prvog bloka\",\n      \"reload\": \"\",\n      \"hint\": \"omogućena predmemorija prvog bloka\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fixed unet precision\",\n      \"localized\": \"fiksna Unet preciznost\",\n      \"reload\": \"\",\n      \"hint\": \"fiksna Unet preciznost\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flash attention\",\n      \"localized\": \"Flash Attention\",\n      \"reload\": \"\",\n      \"hint\": \"Flash Attention\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flavors\",\n      \"localized\": \"varijante\",\n      \"reload\": \"\",\n      \"hint\": \"varijante\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flow shift\",\n      \"localized\": \"pomak toka\",\n      \"reload\": \"\",\n      \"hint\": \"pomak toka\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder\",\n      \"localized\": \"mapa\",\n      \"reload\": \"\",\n      \"hint\": \"mapa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for control generate\",\n      \"localized\": \"mapa za generiranje kontrole\",\n      \"reload\": \"\",\n      \"hint\": \"mapa za generiranje kontrole\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for control grids\",\n      \"localized\": \"mapa za kontrolne mreže\",\n      \"reload\": \"\",\n      \"hint\": \"mapa za kontrolne mreže\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for disk offload\",\n      \"localized\": \"mapa za prebacivanje na disk\",\n      \"reload\": \"\",\n      \"hint\": \"mapa za prebacivanje na disk\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for huggingface cache\",\n      \"localized\": \"mapa za Hugging Face predmemoriju\",\n      \"reload\": \"\",\n      \"hint\": \"mapa za Hugging Face predmemoriju\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for image generate\",\n      \"localized\": \"mapa za generiranje slike\",\n      \"reload\": \"\",\n      \"hint\": \"mapa za generiranje slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for img2img grids\",\n      \"localized\": \"mapa za img2img mreže\",\n      \"reload\": \"\",\n      \"hint\": \"mapa za img2img mreže\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for init images\",\n      \"localized\": \"mapa za početne slike\",\n      \"reload\": \"\",\n      \"hint\": \"mapa za početne slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for manually saved images\",\n      \"localized\": \"mapa za ručno spremljene slike\",\n      \"reload\": \"\",\n      \"hint\": \"mapa za ručno spremljene slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for onnx cached models\",\n      \"localized\": \"mapa za ONNX keširane modele\",\n      \"reload\": \"\",\n      \"hint\": \"mapa za ONNX keširane modele\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for onnx conversion\",\n      \"localized\": \"mapa za ONNX konverziju\",\n      \"reload\": \"\",\n      \"hint\": \"mapa za ONNX konverziju\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for openvino cache\",\n      \"localized\": \"mapa za OpenVINO predmemoriju\",\n      \"reload\": \"\",\n      \"hint\": \"mapa za OpenVINO predmemoriju\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for processed images\",\n      \"localized\": \"mapa za obrađene slike\",\n      \"reload\": \"\",\n      \"hint\": \"mapa za obrađene slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for text generate\",\n      \"localized\": \"mapa za generiranje teksta\",\n      \"reload\": \"\",\n      \"hint\": \"mapa za generiranje teksta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for tunable ops cache\",\n      \"localized\": \"mapa za predmemoriju podesivih operacija\",\n      \"reload\": \"\",\n      \"hint\": \"mapa za predmemoriju podesivih operacija\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for txt2img grids\",\n      \"localized\": \"mapa za txt2img mreže\",\n      \"reload\": \"\",\n      \"hint\": \"mapa za txt2img mreže\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for videos\",\n      \"localized\": \"mapa za videozapise\",\n      \"reload\": \"\",\n      \"hint\": \"mapa za videozapise\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with bsrgan models\",\n      \"localized\": \"mapa s BSRGAN modelima\",\n      \"reload\": \"\",\n      \"hint\": \"mapa s BSRGAN modelima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with chainner models\",\n      \"localized\": \"mapa s Chainner modelima\",\n      \"reload\": \"\",\n      \"hint\": \"mapa s Chainner modelima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with clip models\",\n      \"localized\": \"mapa s CLIP modelima\",\n      \"reload\": \"\",\n      \"hint\": \"mapa s CLIP modelima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with codeformer models\",\n      \"localized\": \"mapa s CodeFormer modelima\",\n      \"reload\": \"\",\n      \"hint\": \"mapa s CodeFormer modelima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with control models\",\n      \"localized\": \"mapa s kontrolnim modelima\",\n      \"reload\": \"\",\n      \"hint\": \"mapa s kontrolnim modelima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with esrgan models\",\n      \"localized\": \"mapa s ESRGAN modelima\",\n      \"reload\": \"\",\n      \"hint\": \"mapa s ESRGAN modelima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with gfpgan models\",\n      \"localized\": \"mapa s GFPGAN modelima\",\n      \"reload\": \"\",\n      \"hint\": \"mapa s GFPGAN modelima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with huggingface models\",\n      \"localized\": \"mapa s Hugging Face modelima\",\n      \"reload\": \"\",\n      \"hint\": \"mapa s Hugging Face modelima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with hypernetwork models\",\n      \"localized\": \"mapa s Hypernetwork modelima\",\n      \"reload\": \"\",\n      \"hint\": \"mapa s Hypernetwork modelima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with ldsr models\",\n      \"localized\": \"mapa s LDSR modelima\",\n      \"reload\": \"\",\n      \"hint\": \"mapa s LDSR modelima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with lora network(s)\",\n      \"localized\": \"mapa s LoRA mrežom/mrežama\",\n      \"reload\": \"\",\n      \"hint\": \"mapa s LoRA mrežom/mrežama\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with realesrgan models\",\n      \"localized\": \"mapa s Real-ESRGAN modelima\",\n      \"reload\": \"\",\n      \"hint\": \"mapa s Real-ESRGAN modelima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with scunet models\",\n      \"localized\": \"mapa sa ScuNet modelima\",\n      \"reload\": \"\",\n      \"hint\": \"mapa sa ScuNet modelima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with stable diffusion models\",\n      \"localized\": \"mapa s modelima Stable Diffusion\",\n      \"reload\": \"\",\n      \"hint\": \"mapa s modelima Stable Diffusion\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with swinir models\",\n      \"localized\": \"mapa sa SwinIR modelima\",\n      \"reload\": \"\",\n      \"hint\": \"mapa sa SwinIR modelima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with text encoder files\",\n      \"localized\": \"mapa s datotekama tekstualnog enkodera\",\n      \"reload\": \"\",\n      \"hint\": \"mapa s datotekama tekstualnog enkodera\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with textual inversion embeddings\",\n      \"localized\": \"mapa s tekstualnim inverzijskim ugradnjama\",\n      \"reload\": \"\",\n      \"hint\": \"mapa s tekstualnim inverzijskim ugradnjama\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with unet files\",\n      \"localized\": \"mapa s Unet datotekama\",\n      \"reload\": \"\",\n      \"hint\": \"mapa s Unet datotekama\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with user-defined wildcards\",\n      \"localized\": \"mapa s korisnički definiranim zamjenskim znakovima\",\n      \"reload\": \"\",\n      \"hint\": \"mapa s korisnički definiranim zamjenskim znakovima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with vae files\",\n      \"localized\": \"mapa s VAE datotekama\",\n      \"reload\": \"\",\n      \"hint\": \"mapa s VAE datotekama\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with yolo models\",\n      \"localized\": \"mapa s YOLO modelima\",\n      \"reload\": \"\",\n      \"hint\": \"mapa s YOLO modelima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font color\",\n      \"localized\": \"boja fonta\",\n      \"reload\": \"\",\n      \"hint\": \"boja fonta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font file\",\n      \"localized\": \"datoteka fonta\",\n      \"reload\": \"\",\n      \"hint\": \"datoteka fonta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font size\",\n      \"localized\": \"veličina fonta\",\n      \"reload\": \"\",\n      \"hint\": \"veličina fonta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"force model eval\",\n      \"localized\": \"prisili evaluaciju modela\",\n      \"reload\": \"\",\n      \"hint\": \"prisili evaluaciju modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"foreground threshold\",\n      \"localized\": \"prag prednjeg plana\",\n      \"reload\": \"\",\n      \"hint\": \"prag prednjeg plana\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fp4\",\n      \"localized\": \"FP4\",\n      \"reload\": \"\",\n      \"hint\": \"FP4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"frame change sensitivity\",\n      \"localized\": \"osjetljivost na promjenu okvira\",\n      \"reload\": \"\",\n      \"hint\": \"osjetljivost na promjenu okvira\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"frames\",\n      \"localized\": \"okviri\",\n      \"reload\": \"\",\n      \"hint\": \"okviri\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeinit\",\n      \"localized\": \"FreeInit\",\n      \"reload\": \"\",\n      \"hint\": \"FreeInit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeu enabled\",\n      \"localized\": \"FreeU omogućeno\",\n      \"reload\": \"\",\n      \"hint\": \"FreeU omogućeno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeu preset\",\n      \"localized\": \"FreeU predložak\",\n      \"reload\": \"\",\n      \"hint\": \"FreeU predložak\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"full vae\",\n      \"localized\": \"puni VAE\",\n      \"reload\": \"\",\n      \"hint\": \"puni VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"full-depth cudnn benchmark\",\n      \"localized\": \"cuDNN benchmark pune dubine\",\n      \"reload\": \"\",\n      \"hint\": \"cuDNN benchmark pune dubine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fuse strength\",\n      \"localized\": \"snaga fuzije\",\n      \"reload\": \"\",\n      \"hint\": \"snaga fuzije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fused projections\",\n      \"localized\": \"stopljene projekcije\",\n      \"reload\": \"\",\n      \"hint\": \"stopljene projekcije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gamma\",\n      \"localized\": \"gama\",\n      \"reload\": \"\",\n      \"hint\": \"gama\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gamma corrected\",\n      \"localized\": \"gama korigirano\",\n      \"reload\": \"\",\n      \"hint\": \"gama korigirano\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gate step\",\n      \"localized\": \"korak vrata\",\n      \"reload\": \"\",\n      \"hint\": \"korak vrata\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gc threshold\",\n      \"localized\": \"GC prag\",\n      \"reload\": \"\",\n      \"hint\": \"GC prag\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"get changelog\",\n      \"localized\": \"preuzmi popis promjena\",\n      \"reload\": \"\",\n      \"hint\": \"preuzmi popis promjena\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gpu\",\n      \"localized\": \"GPU\",\n      \"reload\": \"\",\n      \"hint\": \"GPU\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gradient\",\n      \"localized\": \"gradijent\",\n      \"reload\": \"\",\n      \"hint\": \"gradijent\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid background color\",\n      \"localized\": \"boja pozadine mreže\",\n      \"reload\": \"\",\n      \"hint\": \"boja pozadine mreže\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid margins\",\n      \"localized\": \"margine mreže\",\n      \"reload\": \"\",\n      \"hint\": \"margine mreže\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid sections:\",\n      \"localized\": \"sekcije mreže:\",\n      \"reload\": \"\",\n      \"hint\": \"sekcije mreže:\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"group size\",\n      \"localized\": \"veličina grupe\",\n      \"reload\": \"\",\n      \"hint\": \"veličina grupe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance\",\n      \"localized\": \"vodstvo\",\n      \"reload\": \"\",\n      \"hint\": \"vodstvo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance start\",\n      \"localized\": \"početak vodstva\",\n      \"reload\": \"\",\n      \"hint\": \"početak vodstva\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance stop\",\n      \"localized\": \"zaustavljanje vodstva\",\n      \"reload\": \"\",\n      \"hint\": \"zaustavljanje vodstva\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance strength\",\n      \"localized\": \"snaga vodstva\",\n      \"reload\": \"\",\n      \"hint\": \"snaga vodstva\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hands\",\n      \"localized\": \"ruke\",\n      \"reload\": \"\",\n      \"hint\": \"ruke\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hdr range\",\n      \"localized\": \"HDR raspon\",\n      \"reload\": \"\",\n      \"hint\": \"HDR raspon\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hed\",\n      \"localized\": \"HED\",\n      \"reload\": \"\",\n      \"hint\": \"HED\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height after\",\n      \"localized\": \"visina poslije\",\n      \"reload\": \"\",\n      \"hint\": \"visina poslije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height before\",\n      \"localized\": \"visina prije\",\n      \"reload\": \"\",\n      \"hint\": \"visina prije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height mask\",\n      \"localized\": \"maska visine\",\n      \"reload\": \"\",\n      \"hint\": \"maska visine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"heun\",\n      \"localized\": \"Heun\",\n      \"reload\": \"\",\n      \"hint\": \"Heun\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"heun flowmatch\",\n      \"localized\": \"Heun Flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"Heun Flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hidet\",\n      \"localized\": \"Hidet\",\n      \"reload\": \"\",\n      \"hint\": \"Hidet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"high threshold\",\n      \"localized\": \"visoki prag\",\n      \"reload\": \"\",\n      \"hint\": \"visoki prag\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hires pass only\",\n      \"localized\": \"samo visokorezolucijski prolaz\",\n      \"reload\": \"\",\n      \"hint\": \"samo visokorezolucijski prolaz\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hq init latents\",\n      \"localized\": \"HQ inicijalni latentni\",\n      \"reload\": \"\",\n      \"hint\": \"HQ inicijalni latentni\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hue\",\n      \"localized\": \"nijansa\",\n      \"reload\": \"\",\n      \"hint\": \"nijansa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"huggingface mirror\",\n      \"localized\": \"Hugging Face ogledalo\",\n      \"reload\": \"\",\n      \"hint\": \"Hugging Face ogledalo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"huggingface token\",\n      \"localized\": \"Hugging Face token\",\n      \"reload\": \"\",\n      \"hint\": \"Hugging Face token\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hunyuan\",\n      \"localized\": \"Hunyuan\",\n      \"reload\": \"\",\n      \"hint\": \"Hunyuan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"il\",\n      \"localized\": \"il\",\n      \"reload\": \"\",\n      \"hint\": \"il\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image height\",\n      \"localized\": \"visina slike\",\n      \"reload\": \"\",\n      \"hint\": \"visina slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image quality\",\n      \"localized\": \"kvaliteta slike\",\n      \"reload\": \"\",\n      \"hint\": \"kvaliteta slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image transparent color fill\",\n      \"localized\": \"ispuna prozirne boje slike\",\n      \"reload\": \"\",\n      \"hint\": \"ispuna prozirne boje slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image watermark file\",\n      \"localized\": \"datoteka vodenog žiga slike\",\n      \"reload\": \"\",\n      \"hint\": \"datoteka vodenog žiga slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image watermark position\",\n      \"localized\": \"pozicija vodenog žiga slike\",\n      \"reload\": \"\",\n      \"hint\": \"pozicija vodenog žiga slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image width\",\n      \"localized\": \"širina slike\",\n      \"reload\": \"\",\n      \"hint\": \"širina slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include images\",\n      \"localized\": \"uključi slike\",\n      \"reload\": \"\",\n      \"hint\": \"uključi slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include main grid\",\n      \"localized\": \"uključi glavnu mrežu\",\n      \"reload\": \"\",\n      \"hint\": \"uključi glavnu mrežu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include mask in outputs\",\n      \"localized\": \"uključi masku u izlaze\",\n      \"reload\": \"\",\n      \"hint\": \"uključi masku u izlaze\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include original image\",\n      \"localized\": \"uključi originalnu sliku\",\n      \"reload\": \"\",\n      \"hint\": \"uključi originalnu sliku\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include scores in results when available\",\n      \"localized\": \"uključi bodove u rezultate kada su dostupni\",\n      \"reload\": \"\",\n      \"hint\": \"uključi bodove u rezultate kada su dostupni\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include sub grids\",\n      \"localized\": \"uključi podrešetke\",\n      \"reload\": \"\",\n      \"hint\": \"uključi podrešetke\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inductor\",\n      \"localized\": \"induktor\",\n      \"reload\": \"\",\n      \"hint\": \"induktor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"info\",\n      \"localized\": \"informacije\",\n      \"reload\": \"\",\n      \"hint\": \"informacije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"info object\",\n      \"localized\": \"informacijski objekt\",\n      \"reload\": \"\",\n      \"hint\": \"informacijski objekt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpaint\",\n      \"localized\": \"dopuni sliku\",\n      \"reload\": \"\",\n      \"hint\": \"dopuni sliku\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpaint masked only\",\n      \"localized\": \"dopuni samo maskirano\",\n      \"reload\": \"\",\n      \"hint\": \"dopuni samo maskirano\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpainting include greyscale mask in results\",\n      \"localized\": \"dopunjavanje uključi sivu masku u rezultate\",\n      \"reload\": \"\",\n      \"hint\": \"dopunjavanje uključi sivu masku u rezultate\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpainting include masked composite in results\",\n      \"localized\": \"dopunjavanje uključi maskiranu kompoziciju u rezultate\",\n      \"reload\": \"\",\n      \"hint\": \"dopunjavanje uključi maskiranu kompoziciju u rezultate\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"input model\",\n      \"localized\": \"ulazni model\",\n      \"reload\": \"\",\n      \"hint\": \"ulazni model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"intermediates\",\n      \"localized\": \"međurezultati\",\n      \"reload\": \"\",\n      \"hint\": \"međurezultati\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"interpolate frames\",\n      \"localized\": \"interpoliraj okvire\",\n      \"reload\": \"\",\n      \"hint\": \"interpoliraj okvire\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"interpolation method\",\n      \"localized\": \"metoda interpolacije\",\n      \"reload\": \"\",\n      \"hint\": \"metoda interpolacije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invert\",\n      \"localized\": \"invertiraj\",\n      \"reload\": \"\",\n      \"hint\": \"invertiraj\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invert mask\",\n      \"localized\": \"invertiraj masku\",\n      \"reload\": \"\",\n      \"hint\": \"invertiraj masku\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iou\",\n      \"localized\": \"iou\",\n      \"reload\": \"\",\n      \"hint\": \"iou\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ipex\",\n      \"localized\": \"ipex\",\n      \"reload\": \"\",\n      \"hint\": \"ipex\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ipndm\",\n      \"localized\": \"ipndm\",\n      \"reload\": \"\",\n      \"hint\": \"ipndm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"item edge blur\",\n      \"localized\": \"zamućenje ruba stavke\",\n      \"reload\": \"\",\n      \"hint\": \"zamućenje ruba stavke\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"item padding\",\n      \"localized\": \"ispuna stavke\",\n      \"reload\": \"\",\n      \"hint\": \"ispuna stavke\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iterate seed per line\",\n      \"localized\": \"ponavljaj sjeme po retku\",\n      \"reload\": \"\",\n      \"hint\": \"ponavljaj sjeme po retku\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iterations\",\n      \"localized\": \"iteracije\",\n      \"reload\": \"\",\n      \"hint\": \"iteracije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"karras\",\n      \"localized\": \"karras\",\n      \"reload\": \"\",\n      \"hint\": \"karras\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"kdpm2\",\n      \"localized\": \"kdpm2\",\n      \"reload\": \"\",\n      \"hint\": \"kdpm2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"kdpm2 a\",\n      \"localized\": \"kdpm2 a\",\n      \"reload\": \"\",\n      \"hint\": \"kdpm2 a\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"keep incomplete images\",\n      \"localized\": \"zadrži nepotpune slike\",\n      \"reload\": \"\",\n      \"hint\": \"zadrži nepotpune slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"large\",\n      \"localized\": \"veliko\",\n      \"reload\": \"\",\n      \"hint\": \"veliko\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"latent history size\",\n      \"localized\": \"veličina latentne povijesti\",\n      \"reload\": \"\",\n      \"hint\": \"veličina latentne povijesti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"latent mode\",\n      \"localized\": \"latentni način\",\n      \"reload\": \"\",\n      \"hint\": \"latentni način\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layer scales\",\n      \"localized\": \"skale slojeva\",\n      \"reload\": \"\",\n      \"hint\": \"skale slojeva\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layerwise casting storage\",\n      \"localized\": \"pohrana pretvorbe po slojevima\",\n      \"reload\": \"\",\n      \"hint\": \"pohrana pretvorbe po slojevima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layerwise non-blocking operations\",\n      \"localized\": \"operacije bez blokiranja po slojevima\",\n      \"reload\": \"\",\n      \"hint\": \"operacije bez blokiranja po slojevima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lcm\",\n      \"localized\": \"lcm\",\n      \"reload\": \"\",\n      \"hint\": \"lcm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ldsr processing steps\",\n      \"localized\": \"koraci LDSR obrade\",\n      \"reload\": \"\",\n      \"hint\": \"koraci LDSR obrade\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"left\",\n      \"localized\": \"lijevo\",\n      \"reload\": \"\",\n      \"hint\": \"lijevo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"legend\",\n      \"localized\": \"legenda\",\n      \"reload\": \"\",\n      \"hint\": \"legenda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"length\",\n      \"localized\": \"duljina\",\n      \"reload\": \"\",\n      \"hint\": \"duljina\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"leres depth\",\n      \"localized\": \"Leres dubina\",\n      \"reload\": \"\",\n      \"hint\": \"Leres dubina\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"level\",\n      \"localized\": \"razina\",\n      \"reload\": \"\",\n      \"hint\": \"razina\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"libs\",\n      \"localized\": \"libs\",\n      \"reload\": \"\",\n      \"hint\": \"libs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"light\",\n      \"localized\": \"svjetlo\",\n      \"reload\": \"\",\n      \"hint\": \"svjetlo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lineart\",\n      \"localized\": \"linijska umjetnost\",\n      \"reload\": \"\",\n      \"hint\": \"linijska umjetnost\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"list\",\n      \"localized\": \"popis\",\n      \"reload\": \"\",\n      \"hint\": \"popis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"list model details\",\n      \"localized\": \"popis detalja modela\",\n      \"reload\": \"\",\n      \"hint\": \"popis detalja modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lite\",\n      \"localized\": \"lagana\",\n      \"reload\": \"\",\n      \"hint\": \"lagana\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"live update\",\n      \"localized\": \"ažuriranje uživo\",\n      \"reload\": \"\",\n      \"hint\": \"ažuriranje uživo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lmsd\",\n      \"localized\": \"lmsd\",\n      \"reload\": \"\",\n      \"hint\": \"lmsd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"load custom diffusers pipeline\",\n      \"localized\": \"učitaj prilagođeni diffusers cjevovod\",\n      \"reload\": \"\",\n      \"hint\": \"učitaj prilagođeni diffusers cjevovod\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"load model directly to gpu\",\n      \"localized\": \"učitaj model direktno na GPU\",\n      \"reload\": \"\",\n      \"hint\": \"učitaj model direktno na GPU\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"loaded lora\",\n      \"localized\": \"učitana LoRA\",\n      \"reload\": \"\",\n      \"hint\": \"učitana LoRA\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"logsnr\",\n      \"localized\": \"logsnr\",\n      \"reload\": \"\",\n      \"hint\": \"logsnr\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"loop\",\n      \"localized\": \"petlja\",\n      \"reload\": \"\",\n      \"hint\": \"petlja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora add hash info to metadata\",\n      \"localized\": \"LoRA dodaj hash info u metapodatke\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA dodaj hash info u metapodatke\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora auto-apply tags\",\n      \"localized\": \"LoRA automatski primijeni oznake\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA automatski primijeni oznake\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora load using diffusers method for selected models\",\n      \"localized\": \"LoRA učitavanje pomoću diffusers metode za odabrane modele\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA učitavanje pomoću diffusers metode za odabrane modele\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora load using legacy method\",\n      \"localized\": \"LoRA učitavanje pomoću naslijeđene metode\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA učitavanje pomoću naslijeđene metode\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora target filename\",\n      \"localized\": \"LoRA ciljani naziv datoteke\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA ciljani naziv datoteke\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"low order\",\n      \"localized\": \"niski red\",\n      \"reload\": \"\",\n      \"hint\": \"niski red\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"low threshold\",\n      \"localized\": \"niski prag\",\n      \"reload\": \"\",\n      \"hint\": \"niski prag\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ltx model\",\n      \"localized\": \"ltx model\",\n      \"reload\": \"\",\n      \"hint\": \"ltx model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lumina: use mask in transformers\",\n      \"localized\": \"lumina: koristi masku u transformerima\",\n      \"reload\": \"\",\n      \"hint\": \"lumina: koristi masku u transformerima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"manual block merge\",\n      \"localized\": \"ručno spajanje blokova\",\n      \"reload\": \"\",\n      \"hint\": \"ručno spajanje blokova\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"marigold depth\",\n      \"localized\": \"Marigold dubina\",\n      \"reload\": \"\",\n      \"hint\": \"Marigold dubina\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask dropout\",\n      \"localized\": \"ispuštanje maske\",\n      \"reload\": \"\",\n      \"hint\": \"ispuštanje maske\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask invert\",\n      \"localized\": \"invertiranje maske\",\n      \"reload\": \"\",\n      \"hint\": \"invertiranje maske\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask only\",\n      \"localized\": \"samo maska\",\n      \"reload\": \"\",\n      \"hint\": \"samo maska\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask strength\",\n      \"localized\": \"snaga maske\",\n      \"reload\": \"\",\n      \"hint\": \"snaga maske\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"masked\",\n      \"localized\": \"maskirano\",\n      \"reload\": \"\",\n      \"hint\": \"maskirano\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"math attention\",\n      \"localized\": \"matematička pažnja\",\n      \"reload\": \"\",\n      \"hint\": \"matematička pažnja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max faces\",\n      \"localized\": \"maksimalno lica\",\n      \"reload\": \"\",\n      \"hint\": \"maksimalno lica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max flavors\",\n      \"localized\": \"maksimalno varijacija\",\n      \"reload\": \"\",\n      \"hint\": \"maksimalno varijacija\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max guidance\",\n      \"localized\": \"maksimalno navođenje\",\n      \"reload\": \"\",\n      \"hint\": \"maksimalno navođenje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max length\",\n      \"localized\": \"maksimalna duljina\",\n      \"reload\": \"\",\n      \"hint\": \"maksimalna duljina\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max object size\",\n      \"localized\": \"maksimalna veličina objekta\",\n      \"reload\": \"\",\n      \"hint\": \"maksimalna veličina objekta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max range\",\n      \"localized\": \"maksimalni raspon\",\n      \"reload\": \"\",\n      \"hint\": \"maksimalni raspon\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max tokens\",\n      \"localized\": \"maksimalno tokena\",\n      \"reload\": \"\",\n      \"hint\": \"maksimalno tokena\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max words\",\n      \"localized\": \"maksimalno riječi\",\n      \"reload\": \"\",\n      \"hint\": \"maksimalno riječi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max-autotune\",\n      \"localized\": \"maks-autotune\",\n      \"reload\": \"\",\n      \"hint\": \"maks-autotune\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max-autotune-no-cudagraphs\",\n      \"localized\": \"maks-autotune-bez-cudagrafova\",\n      \"reload\": \"\",\n      \"hint\": \"maks-autotune-bez-cudagrafova\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum image size (mp)\",\n      \"localized\": \"maksimalna veličina slike (MP)\",\n      \"reload\": \"\",\n      \"hint\": \"maksimalna veličina slike (MP)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum number of units\",\n      \"localized\": \"maksimalan broj jedinica\",\n      \"reload\": \"\",\n      \"hint\": \"maksimalan broj jedinica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum rank\",\n      \"localized\": \"maksimalni rang\",\n      \"reload\": \"\",\n      \"hint\": \"maksimalni rang\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mediapipe face\",\n      \"localized\": \"Mediapipe lice\",\n      \"reload\": \"\",\n      \"hint\": \"Mediapipe lice\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"medium\",\n      \"localized\": \"srednje\",\n      \"reload\": \"\",\n      \"hint\": \"srednje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mediums\",\n      \"localized\": \"mediji\",\n      \"reload\": \"\",\n      \"hint\": \"mediji\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory\",\n      \"localized\": \"memorija\",\n      \"reload\": \"\",\n      \"hint\": \"memorija\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory attention\",\n      \"localized\": \"memorijska pažnja\",\n      \"reload\": \"\",\n      \"hint\": \"memorijska pažnja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory limit\",\n      \"localized\": \"ograničenje memorije\",\n      \"reload\": \"\",\n      \"hint\": \"ograničenje memorije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory optimization\",\n      \"localized\": \"optimizacija memorije\",\n      \"reload\": \"\",\n      \"hint\": \"optimizacija memorije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"merge alpha\",\n      \"localized\": \"spoji alfu\",\n      \"reload\": \"\",\n      \"hint\": \"spoji alfu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method\",\n      \"localized\": \"metoda\",\n      \"reload\": \"\",\n      \"hint\": \"metoda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method after\",\n      \"localized\": \"metoda poslije\",\n      \"reload\": \"\",\n      \"hint\": \"metoda poslije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method before\",\n      \"localized\": \"metoda prije\",\n      \"reload\": \"\",\n      \"hint\": \"metoda prije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method mask\",\n      \"localized\": \"metoda maske\",\n      \"reload\": \"\",\n      \"hint\": \"metoda maske\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"midas depth\",\n      \"localized\": \"midas dubina\",\n      \"reload\": \"\",\n      \"hint\": \"midas dubina\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"migraphx\",\n      \"localized\": \"migraphx\",\n      \"reload\": \"\",\n      \"hint\": \"migraphx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min flavors\",\n      \"localized\": \"min okusa\",\n      \"reload\": \"\",\n      \"hint\": \"min okusa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min guidance\",\n      \"localized\": \"min smjernice\",\n      \"reload\": \"\",\n      \"hint\": \"min smjernice\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min length\",\n      \"localized\": \"min duljina\",\n      \"reload\": \"\",\n      \"hint\": \"min duljina\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min object size\",\n      \"localized\": \"min veličina objekta\",\n      \"reload\": \"\",\n      \"hint\": \"min veličina objekta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mine\",\n      \"localized\": \"mine\",\n      \"reload\": \"\",\n      \"hint\": \"mine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mlsd\",\n      \"localized\": \"mlsd\",\n      \"reload\": \"\",\n      \"hint\": \"mlsd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mm\",\n      \"localized\": \"mm\",\n      \"reload\": \"\",\n      \"hint\": \"mm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode\",\n      \"localized\": \"način\",\n      \"reload\": \"\",\n      \"hint\": \"način\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode after\",\n      \"localized\": \"način poslije\",\n      \"reload\": \"\",\n      \"hint\": \"način poslije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode before\",\n      \"localized\": \"način prije\",\n      \"reload\": \"\",\n      \"hint\": \"način prije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode mask\",\n      \"localized\": \"način maske\",\n      \"reload\": \"\",\n      \"hint\": \"način maske\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode x-axis\",\n      \"localized\": \"način x-osi\",\n      \"reload\": \"\",\n      \"hint\": \"način x-osi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode y-axis\",\n      \"localized\": \"način y-osi\",\n      \"reload\": \"\",\n      \"hint\": \"način y-osi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model auto-download on demand\",\n      \"localized\": \"automatsko preuzimanje modela na zahtjev\",\n      \"reload\": \"\",\n      \"hint\": \"automatsko preuzimanje modela na zahtjev\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model autoload on start\",\n      \"localized\": \"automatsko učitavanje modela pri pokretanju\",\n      \"reload\": \"\",\n      \"hint\": \"automatsko učitavanje modela pri pokretanju\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model compile fullgraph\",\n      \"localized\": \"kompajliranje modela cijeli graf\",\n      \"reload\": \"\",\n      \"hint\": \"kompajliranje modela cijeli graf\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model compile suppress errors\",\n      \"localized\": \"kompajliranje modela potisni greške\",\n      \"reload\": \"\",\n      \"hint\": \"kompajliranje modela potisni greške\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model compile verbose mode\",\n      \"localized\": \"kompajliranje modela detaljni način rada\",\n      \"reload\": \"\",\n      \"hint\": \"kompajliranje modela detaljni način rada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model info\",\n      \"localized\": \"informacije o modelu\",\n      \"reload\": \"\",\n      \"hint\": \"informacije o modelu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model metadata\",\n      \"localized\": \"metapodaci modela\",\n      \"reload\": \"\",\n      \"hint\": \"metapodaci modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model name\",\n      \"localized\": \"naziv modela\",\n      \"reload\": \"\",\n      \"hint\": \"naziv modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model precision\",\n      \"localized\": \"preciznost modela\",\n      \"reload\": \"\",\n      \"hint\": \"preciznost modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model type\",\n      \"localized\": \"vrsta modela\",\n      \"reload\": \"\",\n      \"hint\": \"vrsta modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model url\",\n      \"localized\": \"URL modela\",\n      \"reload\": \"\",\n      \"hint\": \"URL modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"modern\",\n      \"localized\": \"moderan\",\n      \"reload\": \"\",\n      \"hint\": \"moderan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"momentum\",\n      \"localized\": \"moment\",\n      \"reload\": \"\",\n      \"hint\": \"moment\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"motion level\",\n      \"localized\": \"razina pokreta\",\n      \"reload\": \"\",\n      \"hint\": \"razina pokreta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mount url subpath\",\n      \"localized\": \"montiraj URL podputanju\",\n      \"reload\": \"\",\n      \"hint\": \"montiraj URL podputanju\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move base model to cpu when using refiner\",\n      \"localized\": \"premjestite osnovni model na CPU kada koristite refiner\",\n      \"reload\": \"\",\n      \"hint\": \"premjestite osnovni model na CPU kada koristite refiner\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move base model to cpu when using vae\",\n      \"localized\": \"premjestite osnovni model na CPU kada koristite VAE\",\n      \"reload\": \"\",\n      \"hint\": \"premjestite osnovni model na CPU kada koristite VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move detailer model to cpu when complete\",\n      \"localized\": \"premjestite detailer model na CPU kada je dovršen\",\n      \"reload\": \"\",\n      \"hint\": \"premjestite detailer model na CPU kada je dovršen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move refiner model to cpu when not in use\",\n      \"localized\": \"premjestite refiner model na CPU kada se ne koristi\",\n      \"reload\": \"\",\n      \"hint\": \"premjestite refiner model na CPU kada se ne koristi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"movements\",\n      \"localized\": \"pokreti\",\n      \"reload\": \"\",\n      \"hint\": \"pokreti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"multi decoder\",\n      \"localized\": \"multi dekoder\",\n      \"reload\": \"\",\n      \"hint\": \"multi dekoder\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"multistep restore\",\n      \"localized\": \"višestupanjsko vraćanje\",\n      \"reload\": \"\",\n      \"hint\": \"višestupanjsko vraćanje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"native\",\n      \"localized\": \"izvorno\",\n      \"reload\": \"\",\n      \"hint\": \"izvorno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"near threshold\",\n      \"localized\": \"blizu praga\",\n      \"reload\": \"\",\n      \"hint\": \"blizu praga\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"negative\",\n      \"localized\": \"negativno\",\n      \"reload\": \"\",\n      \"hint\": \"negativno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"network negative prompt\",\n      \"localized\": \"negativna mrežna uputa\",\n      \"reload\": \"\",\n      \"hint\": \"negativna mrežna uputa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"network parameters\",\n      \"localized\": \"mrežni parametri\",\n      \"reload\": \"\",\n      \"hint\": \"mrežni parametri\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"network prompt\",\n      \"localized\": \"mrežna uputa\",\n      \"reload\": \"\",\n      \"hint\": \"mrežna uputa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"new model name\",\n      \"localized\": \"novo ime modela\",\n      \"reload\": \"\",\n      \"hint\": \"novo ime modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"nf4\",\n      \"localized\": \"nf4\",\n      \"reload\": \"\",\n      \"hint\": \"nf4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"nms\",\n      \"localized\": \"nms\",\n      \"reload\": \"\",\n      \"hint\": \"nms\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise\",\n      \"localized\": \"šum\",\n      \"reload\": \"\",\n      \"hint\": \"šum\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise multiplier (eta)\",\n      \"localized\": \"množitelj šuma (eta)\",\n      \"reload\": \"\",\n      \"hint\": \"množitelj šuma (eta)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise multiplier for image processing\",\n      \"localized\": \"množitelj šuma za obradu slike\",\n      \"reload\": \"\",\n      \"hint\": \"množitelj šuma za obradu slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise seed delta (eta)\",\n      \"localized\": \"delta sjemena šuma (eta)\",\n      \"reload\": \"\",\n      \"hint\": \"delta sjemena šuma (eta)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise strength\",\n      \"localized\": \"jačina šuma\",\n      \"reload\": \"\",\n      \"hint\": \"jačina šuma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"none\",\n      \"localized\": \"ništa\",\n      \"reload\": \"\",\n      \"hint\": \"ništa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"note\",\n      \"localized\": \"bilješka\",\n      \"reload\": \"\",\n      \"hint\": \"bilješka\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"nothing\",\n      \"localized\": \"ništa\",\n      \"reload\": \"\",\n      \"hint\": \"ništa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"num beams\",\n      \"localized\": \"broj zraka\",\n      \"reload\": \"\",\n      \"hint\": \"broj zraka\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"number\",\n      \"localized\": \"broj\",\n      \"reload\": \"\",\n      \"hint\": \"broj\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"numbered filenames\",\n      \"localized\": \"numerirane datoteke\",\n      \"reload\": \"\",\n      \"hint\": \"numerirane datoteke\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"offload\",\n      \"localized\": \"istovari\",\n      \"reload\": \"\",\n      \"hint\": \"istovari\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"offload face module\",\n      \"localized\": \"istovari modul lica\",\n      \"reload\": \"\",\n      \"hint\": \"istovari modul lica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"offload models\",\n      \"localized\": \"istovari modele\",\n      \"reload\": \"\",\n      \"hint\": \"istovari modele\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"olive-ai\",\n      \"localized\": \"olive-ai\",\n      \"reload\": \"\",\n      \"hint\": \"olive-ai\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"onediff\",\n      \"localized\": \"onediff\",\n      \"reload\": \"\",\n      \"hint\": \"onediff\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"onnx\",\n      \"localized\": \"onnx\",\n      \"reload\": \"\",\n      \"hint\": \"onnx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openbody\",\n      \"localized\": \"openbody\",\n      \"reload\": \"\",\n      \"hint\": \"openbody\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openclip\",\n      \"localized\": \"openclip\",\n      \"reload\": \"\",\n      \"hint\": \"openclip\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino disable memory cleanup after compile\",\n      \"localized\": \"OpenVINO onemogući čišćenje memorije nakon kompilacije\",\n      \"reload\": \"\",\n      \"hint\": \"OpenVINO onemogući čišćenje memorije nakon kompilacije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino disable model caching\",\n      \"localized\": \"OpenVINO onemogući keširanje modela\",\n      \"reload\": \"\",\n      \"hint\": \"OpenVINO onemogući keširanje modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino mode\",\n      \"localized\": \"OpenVINO način rada\",\n      \"reload\": \"\",\n      \"hint\": \"OpenVINO način rada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino_fx\",\n      \"localized\": \"openvino_fx\",\n      \"reload\": \"\",\n      \"hint\": \"openvino_fx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"optional image description\",\n      \"localized\": \"opcionalni opis slike\",\n      \"reload\": \"\",\n      \"hint\": \"opcionalni opis slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"optional init image or video\",\n      \"localized\": \"opcionalna početna slika ili video\",\n      \"reload\": \"\",\n      \"hint\": \"opcionalna početna slika ili video\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"order\",\n      \"localized\": \"redoslijed\",\n      \"reload\": \"\",\n      \"hint\": \"redoslijed\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ortho\",\n      \"localized\": \"orto\",\n      \"reload\": \"\",\n      \"hint\": \"orto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"outpaint\",\n      \"localized\": \"dopunjavanje izvan okvira\",\n      \"reload\": \"\",\n      \"hint\": \"dopunjavanje izvan okvira\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"output model\",\n      \"localized\": \"izlazni model\",\n      \"reload\": \"\",\n      \"hint\": \"izlazni model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override resolution\",\n      \"localized\": \"premosti rezoluciju\",\n      \"reload\": \"\",\n      \"hint\": \"premosti rezoluciju\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override sampler\",\n      \"localized\": \"premosti sampler\",\n      \"reload\": \"\",\n      \"hint\": \"premosti sampler\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override scheduler\",\n      \"localized\": \"premosti scheduler\",\n      \"reload\": \"\",\n      \"hint\": \"premosti scheduler\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override steps\",\n      \"localized\": \"premosti korake\",\n      \"reload\": \"\",\n      \"hint\": \"premosti korake\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override t1 ratio\",\n      \"localized\": \"premosti t1 omjer\",\n      \"reload\": \"\",\n      \"hint\": \"premosti t1 omjer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override t2 ratio\",\n      \"localized\": \"premosti t2 omjer\",\n      \"reload\": \"\",\n      \"hint\": \"premosti t2 omjer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"overwrite existing file\",\n      \"localized\": \"prepiši postojeću datoteku\",\n      \"reload\": \"\",\n      \"hint\": \"prepiši postojeću datoteku\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"overwrite model\",\n      \"localized\": \"prepiši model\",\n      \"reload\": \"\",\n      \"hint\": \"prepiši model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pad frames\",\n      \"localized\": \"dopuni okvire\",\n      \"reload\": \"\",\n      \"hint\": \"dopuni okvire\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"padding\",\n      \"localized\": \"punjenje\",\n      \"reload\": \"\",\n      \"hint\": \"punjenje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"parallel process images in batch\",\n      \"localized\": \"paralelno obradi slike u seriji\",\n      \"reload\": \"\",\n      \"hint\": \"paralelno obradi slike u seriji\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"parameter free\",\n      \"localized\": \"bez parametara\",\n      \"reload\": \"\",\n      \"hint\": \"bez parametara\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"path to model file\",\n      \"localized\": \"putanja do datoteke modela\",\n      \"reload\": \"\",\n      \"hint\": \"putanja do datoteke modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"path to notification sound\",\n      \"localized\": \"putanja do zvuka obavijesti\",\n      \"reload\": \"\",\n      \"hint\": \"putanja do zvuka obavijesti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"peft\",\n      \"localized\": \"peft\",\n      \"reload\": \"\",\n      \"hint\": \"peft\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"penalty\",\n      \"localized\": \"kazna\",\n      \"reload\": \"\",\n      \"hint\": \"kazna\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perflow\",\n      \"localized\": \"perflow\",\n      \"reload\": \"\",\n      \"hint\": \"perflow\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perform injection\",\n      \"localized\": \"izvrši injekciju\",\n      \"reload\": \"\",\n      \"hint\": \"izvrši injekciju\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perform sdsa\",\n      \"localized\": \"izvrši SDSA\",\n      \"reload\": \"\",\n      \"hint\": \"izvrši SDSA\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perform warmup\",\n      \"localized\": \"izvrši zagrijavanje\",\n      \"reload\": \"\",\n      \"hint\": \"izvrši zagrijavanje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"performance\",\n      \"localized\": \"izvedba\",\n      \"reload\": \"\",\n      \"hint\": \"izvedba\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"photomaker model\",\n      \"localized\": \"Photomaker model\",\n      \"reload\": \"\",\n      \"hint\": \"Photomaker model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pidinet\",\n      \"localized\": \"pidinet\",\n      \"reload\": \"\",\n      \"hint\": \"pidinet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pipeline\",\n      \"localized\": \"cjevovod\",\n      \"reload\": \"\",\n      \"hint\": \"cjevovod\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pixels to expand\",\n      \"localized\": \"pikseli za proširenje\",\n      \"reload\": \"\",\n      \"hint\": \"pikseli za proširenje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"platform\",\n      \"localized\": \"platforma\",\n      \"reload\": \"\",\n      \"hint\": \"platforma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"play\",\n      \"localized\": \"pokreni\",\n      \"reload\": \"\",\n      \"hint\": \"pokreni\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"play a notification upon completion\",\n      \"localized\": \"reproduciraj obavijest po završetku\",\n      \"reload\": \"\",\n      \"hint\": \"reproduciraj obavijest po završetku\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pndm\",\n      \"localized\": \"pndm\",\n      \"reload\": \"\",\n      \"hint\": \"pndm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"polyexponential\",\n      \"localized\": \"polieksponencijalno\",\n      \"reload\": \"\",\n      \"hint\": \"polieksponencijalno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pony\",\n      \"localized\": \"pony\",\n      \"reload\": \"\",\n      \"hint\": \"pony\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pose confidence\",\n      \"localized\": \"pouzdanost poze\",\n      \"reload\": \"\",\n      \"hint\": \"pouzdanost poze\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"positive\",\n      \"localized\": \"pozitivno\",\n      \"reload\": \"\",\n      \"hint\": \"pozitivno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocess mask\",\n      \"localized\": \"post-procesna maska\",\n      \"reload\": \"\",\n      \"hint\": \"post-procesna maska\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocess upscale\",\n      \"localized\": \"post-procesno povećanje razlučivosti\",\n      \"reload\": \"\",\n      \"hint\": \"post-procesno povećanje razlučivosti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocessing operation order\",\n      \"localized\": \"redoslijed post-procesnih operacija\",\n      \"reload\": \"\",\n      \"hint\": \"redoslijed post-procesnih operacija\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"power\",\n      \"localized\": \"snaga\",\n      \"reload\": \"\",\n      \"hint\": \"snaga\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"predefined question\",\n      \"localized\": \"unaprijed definirano pitanje\",\n      \"reload\": \"\",\n      \"hint\": \"unaprijed definirano pitanje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prediction method\",\n      \"localized\": \"metoda predviđanja\",\n      \"reload\": \"\",\n      \"hint\": \"metoda predviđanja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preset\",\n      \"localized\": \"postavka\",\n      \"reload\": \"\",\n      \"hint\": \"postavka\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preset block merge\",\n      \"localized\": \"spajanje preddefiniranih blokova\",\n      \"reload\": \"\",\n      \"hint\": \"spajanje preddefiniranih blokova\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview\",\n      \"localized\": \"pregled\",\n      \"reload\": \"\",\n      \"hint\": \"pregled\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview end\",\n      \"localized\": \"kraj pregleda\",\n      \"reload\": \"\",\n      \"hint\": \"kraj pregleda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview start\",\n      \"localized\": \"početak pregleda\",\n      \"reload\": \"\",\n      \"hint\": \"početak pregleda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"primary model\",\n      \"localized\": \"primarni model\",\n      \"reload\": \"\",\n      \"hint\": \"primarni model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor\",\n      \"localized\": \"procesor\",\n      \"reload\": \"\",\n      \"hint\": \"procesor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor move to cpu after use\",\n      \"localized\": \"procesor premjesti na CPU nakon upotrebe\",\n      \"reload\": \"\",\n      \"hint\": \"procesor premjesti na CPU nakon upotrebe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor settings\",\n      \"localized\": \"postavke procesora\",\n      \"reload\": \"\",\n      \"hint\": \"postavke procesora\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor unload after use\",\n      \"localized\": \"procesor isprazni nakon upotrebe\",\n      \"reload\": \"\",\n      \"hint\": \"procesor isprazni nakon upotrebe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt attention normalization\",\n      \"localized\": \"normalizacija pažnje upita\",\n      \"reload\": \"\",\n      \"hint\": \"normalizacija pažnje upita\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt ex\",\n      \"localized\": \"prompt ex\",\n      \"reload\": \"\",\n      \"hint\": \"prompt ex\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt processor\",\n      \"localized\": \"procesor upita\",\n      \"reload\": \"\",\n      \"hint\": \"procesor upita\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt strength\",\n      \"localized\": \"snaga upita\",\n      \"reload\": \"\",\n      \"hint\": \"snaga upita\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt thresholds:\",\n      \"localized\": \"pragovi upita:\",\n      \"reload\": \"\",\n      \"hint\": \"pragovi upita:\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompts\",\n      \"localized\": \"upiti\",\n      \"reload\": \"\",\n      \"hint\": \"upiti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"provider\",\n      \"localized\": \"davatelj\",\n      \"reload\": \"\",\n      \"hint\": \"davatelj\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prune\",\n      \"localized\": \"prorijedi\",\n      \"reload\": \"\",\n      \"hint\": \"prorijedi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quad\",\n      \"localized\": \"četverostruki\",\n      \"reload\": \"\",\n      \"hint\": \"četverostruki\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization activations type\",\n      \"localized\": \"tip kvantizacije aktivacija\",\n      \"reload\": \"\",\n      \"hint\": \"tip kvantizacije aktivacija\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization mode\",\n      \"localized\": \"način kvantizacije\",\n      \"reload\": \"\",\n      \"hint\": \"način kvantizacije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization type\",\n      \"localized\": \"tip kvantizacije\",\n      \"reload\": \"\",\n      \"hint\": \"tip kvantizacije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization weights type\",\n      \"localized\": \"tip kvantizacije težina\",\n      \"reload\": \"\",\n      \"hint\": \"tip kvantizacije težina\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"random seeds\",\n      \"localized\": \"nasumični seedovi\",\n      \"reload\": \"\",\n      \"hint\": \"nasumični seedovi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"range\",\n      \"localized\": \"raspon\",\n      \"reload\": \"\",\n      \"hint\": \"raspon\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rebase\",\n      \"localized\": \"ponovno baziraj\",\n      \"reload\": \"\",\n      \"hint\": \"ponovno baziraj\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"recursive\",\n      \"localized\": \"rekurzivno\",\n      \"reload\": \"\",\n      \"hint\": \"rekurzivno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reduce-overhead\",\n      \"localized\": \"smanji opterećenje\",\n      \"reload\": \"\",\n      \"hint\": \"smanji opterećenje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"redux prompt strength\",\n      \"localized\": \"Redux snaga upita\",\n      \"reload\": \"\",\n      \"hint\": \"Redux snaga upita\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference adain weight\",\n      \"localized\": \"referentna Adain težina\",\n      \"reload\": \"\",\n      \"hint\": \"referentna Adain težina\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference query weight\",\n      \"localized\": \"referentna težina upita\",\n      \"reload\": \"\",\n      \"hint\": \"referentna težina upita\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference unit 1\",\n      \"localized\": \"referentna jedinica 1\",\n      \"reload\": \"\",\n      \"hint\": \"referentna jedinica 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refine foreground\",\n      \"localized\": \"pročisti prvi plan\",\n      \"reload\": \"\",\n      \"hint\": \"pročisti prvi plan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh bench\",\n      \"localized\": \"osvježi benchmark\",\n      \"reload\": \"\",\n      \"hint\": \"osvježi benchmark\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh data\",\n      \"localized\": \"osvježi podatke\",\n      \"reload\": \"\",\n      \"hint\": \"osvježi podatke\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh state\",\n      \"localized\": \"osvježi stanje\",\n      \"reload\": \"\",\n      \"hint\": \"osvježi stanje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh ui values\",\n      \"localized\": \"osvježi UI vrijednosti\",\n      \"reload\": \"\",\n      \"hint\": \"osvježi UI vrijednosti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reinstall\",\n      \"localized\": \"ponovna instalacija\",\n      \"reload\": \"\",\n      \"hint\": \"ponovna instalacija\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"remove background\",\n      \"localized\": \"ukloni pozadinu\",\n      \"reload\": \"\",\n      \"hint\": \"ukloni pozadinu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repeat x-axis\",\n      \"localized\": \"ponovi x-os\",\n      \"reload\": \"\",\n      \"hint\": \"ponovi x-os\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repeat y-axis\",\n      \"localized\": \"ponovi y-os\",\n      \"reload\": \"\",\n      \"hint\": \"ponovi y-os\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"replace vae\",\n      \"localized\": \"zamijeni VAE\",\n      \"reload\": \"\",\n      \"hint\": \"zamijeni VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repos\",\n      \"localized\": \"repozitoriji\",\n      \"reload\": \"\",\n      \"hint\": \"repozitoriji\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess decode\",\n      \"localized\": \"ponovno obradi dekodiranje\",\n      \"reload\": \"\",\n      \"hint\": \"ponovno obradi dekodiranje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess face\",\n      \"localized\": \"ponovno obradi lice\",\n      \"reload\": \"\",\n      \"hint\": \"ponovno obradi lice\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess refine\",\n      \"localized\": \"ponovno obradi pročišćavanje\",\n      \"reload\": \"\",\n      \"hint\": \"ponovno obradi pročišćavanje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"request browser notifications\",\n      \"localized\": \"zatraži obavijesti preglednika\",\n      \"reload\": \"\",\n      \"hint\": \"zatraži obavijesti preglednika\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rescale\",\n      \"localized\": \"ponovno skaliraj\",\n      \"reload\": \"\",\n      \"hint\": \"ponovno skaliraj\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rescale betas with zero terminal snr\",\n      \"localized\": \"ponovno skaliraj bete s nultim terminalnim SNR-om\",\n      \"reload\": \"\",\n      \"hint\": \"ponovno skaliraj bete s nultim terminalnim SNR-om\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reset anchors\",\n      \"localized\": \"resetiraj sidra\",\n      \"reload\": \"\",\n      \"hint\": \"resetiraj sidra\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"residual diff threshold\",\n      \"localized\": \"prag preostale razlike\",\n      \"reload\": \"\",\n      \"hint\": \"prag preostale razlike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize background color\",\n      \"localized\": \"promijeni veličinu boje pozadine\",\n      \"reload\": \"\",\n      \"hint\": \"promijeni veličinu boje pozadine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize method\",\n      \"localized\": \"metoda promjene veličine\",\n      \"reload\": \"\",\n      \"hint\": \"metoda promjene veličine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize mode\",\n      \"localized\": \"način promjene veličine\",\n      \"reload\": \"\",\n      \"hint\": \"način promjene veličine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize scale\",\n      \"localized\": \"skala promjene veličine\",\n      \"reload\": \"\",\n      \"hint\": \"skala promjene veličine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restart step\",\n      \"localized\": \"ponovi korak\",\n      \"reload\": \"\",\n      \"hint\": \"ponovi korak\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore faces: codeformer\",\n      \"localized\": \"obnovi lica: CodeFormer\",\n      \"reload\": \"\",\n      \"hint\": \"obnovi lica: CodeFormer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore faces: gfpgan\",\n      \"localized\": \"obnovi lica: GFPGAN\",\n      \"reload\": \"\",\n      \"hint\": \"obnovi lica: GFPGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore pipe on end\",\n      \"localized\": \"vrati cjevovod na kraju\",\n      \"reload\": \"\",\n      \"hint\": \"vrati cjevovod na kraju\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore unparsed prompt\",\n      \"localized\": \"vrati neobrađeni upit\",\n      \"reload\": \"\",\n      \"hint\": \"vrati neobrađeni upit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reswapper model\",\n      \"localized\": \"reswapper model\",\n      \"reload\": \"\",\n      \"hint\": \"reswapper model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"return original images\",\n      \"localized\": \"vrati originalne slike\",\n      \"reload\": \"\",\n      \"hint\": \"vrati originalne slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"right\",\n      \"localized\": \"desno\",\n      \"reload\": \"\",\n      \"hint\": \"desno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"root model folder\",\n      \"localized\": \"korijenska mapa modela\",\n      \"reload\": \"\",\n      \"hint\": \"korijenska mapa modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rows\",\n      \"localized\": \"redovi\",\n      \"reload\": \"\",\n      \"hint\": \"redovi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"run\",\n      \"localized\": \"pokreni\",\n      \"reload\": \"\",\n      \"hint\": \"pokreni\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"run benchmark\",\n      \"localized\": \"pokreni benchmark\",\n      \"reload\": \"\",\n      \"hint\": \"pokreni benchmark\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sa solver\",\n      \"localized\": \"SA rješavač\",\n      \"reload\": \"\",\n      \"hint\": \"SA rješavač\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"safetensors\",\n      \"localized\": \"safetensors\",\n      \"reload\": \"\",\n      \"hint\": \"safetensors\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sage attention\",\n      \"localized\": \"Sage pažnja\",\n      \"reload\": \"\",\n      \"hint\": \"Sage pažnja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"same as primary\",\n      \"localized\": \"isto kao primarno\",\n      \"reload\": \"\",\n      \"hint\": \"isto kao primarno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"same latent\",\n      \"localized\": \"isti latent\",\n      \"reload\": \"\",\n      \"hint\": \"isti latent\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sample\",\n      \"localized\": \"uzorak\",\n      \"reload\": \"\",\n      \"hint\": \"uzorak\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler\",\n      \"localized\": \"uzorkivač\",\n      \"reload\": \"\",\n      \"hint\": \"uzorkivač\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler dynamic shift\",\n      \"localized\": \"dinamičko pomicanje uzorkivača\",\n      \"reload\": \"\",\n      \"hint\": \"dinamičko pomicanje uzorkivača\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler order\",\n      \"localized\": \"redoslijed uzorkivača\",\n      \"reload\": \"\",\n      \"hint\": \"redoslijed uzorkivača\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler shift\",\n      \"localized\": \"pomicanje uzorkivača\",\n      \"reload\": \"\",\n      \"hint\": \"pomicanje uzorkivača\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sana: use complex human instructions\",\n      \"localized\": \"SANA: koristi složene ljudske upute\",\n      \"reload\": \"\",\n      \"hint\": \"SANA: koristi složene ljudske upute\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"saturation\",\n      \"localized\": \"zasićenost\",\n      \"reload\": \"\",\n      \"hint\": \"zasićenost\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save all generated image grids\",\n      \"localized\": \"spremi sve generirane mreže slika\",\n      \"reload\": \"\",\n      \"hint\": \"spremi sve generirane mreže slika\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save all generated images\",\n      \"localized\": \"spremi sve generirane slike\",\n      \"reload\": \"\",\n      \"hint\": \"spremi sve generirane slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save caption files\",\n      \"localized\": \"spremi datoteke s opisima\",\n      \"reload\": \"\",\n      \"hint\": \"spremi datoteke s opisima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save diffusers\",\n      \"localized\": \"spremi diffusers modele\",\n      \"reload\": \"\",\n      \"hint\": \"spremi diffusers modele\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save hdr image\",\n      \"localized\": \"spremi HDR sliku\",\n      \"reload\": \"\",\n      \"hint\": \"spremi HDR sliku\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before color correction\",\n      \"localized\": \"spremi sliku prije korekcije boja\",\n      \"reload\": \"\",\n      \"hint\": \"spremi sliku prije korekcije boja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before detailer\",\n      \"localized\": \"spremi sliku prije detailera\",\n      \"reload\": \"\",\n      \"hint\": \"spremi sliku prije detailera\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before hires\",\n      \"localized\": \"spremi sliku prije hiresa\",\n      \"reload\": \"\",\n      \"hint\": \"spremi sliku prije hiresa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before refiner\",\n      \"localized\": \"spremi sliku prije refiner modela\",\n      \"reload\": \"\",\n      \"hint\": \"spremi sliku prije refiner modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save images to a subdirectory\",\n      \"localized\": \"spremi slike u poddirektorij\",\n      \"reload\": \"\",\n      \"hint\": \"spremi slike u poddirektorij\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save init images\",\n      \"localized\": \"spremi početne slike\",\n      \"reload\": \"\",\n      \"hint\": \"spremi početne slike\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save inpainting mask\",\n      \"localized\": \"spremi masku za inpainting\",\n      \"reload\": \"\",\n      \"hint\": \"spremi masku za inpainting\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save inpainting masked composite\",\n      \"localized\": \"spremi kompozit s inpainting maskom\",\n      \"reload\": \"\",\n      \"hint\": \"spremi kompozit s inpainting maskom\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save metadata\",\n      \"localized\": \"spremi metapodatke\",\n      \"reload\": \"\",\n      \"hint\": \"spremi metapodatke\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save only saves selected image\",\n      \"localized\": \"sprema samo odabranu sliku\",\n      \"reload\": \"\",\n      \"hint\": \"sprema samo odabranu sliku\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save output\",\n      \"localized\": \"spremi izlaz\",\n      \"reload\": \"\",\n      \"hint\": \"spremi izlaz\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save safetensors\",\n      \"localized\": \"spremi safetensors modele\",\n      \"reload\": \"\",\n      \"hint\": \"spremi safetensors modele\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save unparsed prompt\",\n      \"localized\": \"spremi neobrađeni prompt\",\n      \"reload\": \"\",\n      \"hint\": \"spremi neobrađeni prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale  after\",\n      \"localized\": \"skaliraj poslije\",\n      \"reload\": \"\",\n      \"hint\": \"skaliraj poslije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale  before\",\n      \"localized\": \"skaliraj prije\",\n      \"reload\": \"\",\n      \"hint\": \"skaliraj prije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale  mask\",\n      \"localized\": \"skaliraj masku\",\n      \"reload\": \"\",\n      \"hint\": \"skaliraj masku\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale factor\",\n      \"localized\": \"faktor skaliranja\",\n      \"reload\": \"\",\n      \"hint\": \"faktor skaliranja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"score\",\n      \"localized\": \"ocjena\",\n      \"reload\": \"\",\n      \"hint\": \"ocjena\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"score threshold\",\n      \"localized\": \"prag ocjene\",\n      \"reload\": \"\",\n      \"hint\": \"prag ocjene\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scribble\",\n      \"localized\": \"škrabotina\",\n      \"reload\": \"\",\n      \"hint\": \"škrabotina\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-attire\",\n      \"localized\": \"sd15-attire\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-attire\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-likeness\",\n      \"localized\": \"sd15-likeness\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-likeness\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-navimixu\",\n      \"localized\": \"sd15-navimixu\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-navimixu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-sexy\",\n      \"localized\": \"sd15-sexy\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-sexy\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-artstyle\",\n      \"localized\": \"sdxl-artstyle\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-artstyle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-negative\",\n      \"localized\": \"sdxl-negative\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-negative\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-sexy\",\n      \"localized\": \"sdxl-sexy\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-sexy\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-sliders\",\n      \"localized\": \"sdxl-sliders\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-sliders\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-toon\",\n      \"localized\": \"sdxl-toon\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-toon\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl: use weighted pooled embeds\",\n      \"localized\": \"sdxl: koristi ponderirane združene ugradnje\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl: koristi ponderirane združene ugradnje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search changelog\",\n      \"localized\": \"pretraži dnevnik promjena\",\n      \"reload\": \"\",\n      \"hint\": \"pretraži dnevnik promjena\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search models\",\n      \"localized\": \"pretraži modele\",\n      \"reload\": \"\",\n      \"hint\": \"pretraži modele\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search wiki pages\",\n      \"localized\": \"pretraži wiki stranice\",\n      \"reload\": \"\",\n      \"hint\": \"pretraži wiki stranice\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"secondary model\",\n      \"localized\": \"sekundarni model\",\n      \"reload\": \"\",\n      \"hint\": \"sekundarni model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"segmentanything\",\n      \"localized\": \"segmentanything\",\n      \"reload\": \"\",\n      \"hint\": \"segmentanything\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"select\",\n      \"localized\": \"odaberi\",\n      \"reload\": \"\",\n      \"hint\": \"odaberi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"select model\",\n      \"localized\": \"odaberi model\",\n      \"reload\": \"\",\n      \"hint\": \"odaberi model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send interrupt\",\n      \"localized\": \"pošalji prekid\",\n      \"reload\": \"\",\n      \"hint\": \"pošalji prekid\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send seed when sending prompt or image to other interface\",\n      \"localized\": \"pošalji seed prilikom slanja prompta ili slike na drugo sučelje\",\n      \"reload\": \"\",\n      \"hint\": \"pošalji seed prilikom slanja prompta ili slike na drugo sučelje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send size when sending prompt or image to another interface\",\n      \"localized\": \"pošalji veličinu prilikom slanja prompta ili slike na drugo sučelje\",\n      \"reload\": \"\",\n      \"hint\": \"pošalji veličinu prilikom slanja prompta ili slike na drugo sučelje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sequential\",\n      \"localized\": \"sekvencijalno\",\n      \"reload\": \"\",\n      \"hint\": \"sekvencijalno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"server start time\",\n      \"localized\": \"vrijeme pokretanja poslužitelja\",\n      \"reload\": \"\",\n      \"hint\": \"vrijeme pokretanja poslužitelja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"set at prompt start\",\n      \"localized\": \"postavi na početku prompta\",\n      \"reload\": \"\",\n      \"hint\": \"postavi na početku prompta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"set ui menu states\",\n      \"localized\": \"postavi stanja UI izbornika\",\n      \"reload\": \"\",\n      \"hint\": \"postavi stanja UI izbornika\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"share queries\",\n      \"localized\": \"dijeli upite\",\n      \"reload\": \"\",\n      \"hint\": \"dijeli upite\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shared options\",\n      \"localized\": \"zajedničke opcije\",\n      \"reload\": \"\",\n      \"hint\": \"zajedničke opcije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sharpen\",\n      \"localized\": \"izoštri\",\n      \"reload\": \"\",\n      \"hint\": \"izoštri\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shift\",\n      \"localized\": \"pomak\",\n      \"reload\": \"\",\n      \"hint\": \"pomak\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show grid in results\",\n      \"localized\": \"prikaži mrežu u rezultatima\",\n      \"reload\": \"\",\n      \"hint\": \"prikaži mrežu u rezultatima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show input\",\n      \"localized\": \"prikaži ulaz\",\n      \"reload\": \"\",\n      \"hint\": \"prikaži ulaz\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show metadata in full screen image browser\",\n      \"localized\": \"prikaži metapodatke u pregledniku slika preko cijelog zaslona\",\n      \"reload\": \"\",\n      \"hint\": \"prikaži metapodatke u pregledniku slika preko cijelog zaslona\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show motd\",\n      \"localized\": \"prikaži MOTD\",\n      \"reload\": \"\",\n      \"hint\": \"prikaži MOTD\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show preview\",\n      \"localized\": \"prikaži pregled\",\n      \"reload\": \"\",\n      \"hint\": \"prikaži pregled\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shuffle weights\",\n      \"localized\": \"izmiješaj težine\",\n      \"reload\": \"\",\n      \"hint\": \"izmiješaj težine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma\",\n      \"localized\": \"sigma\",\n      \"reload\": \"\",\n      \"hint\": \"sigma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma churn\",\n      \"localized\": \"sigma pomak\",\n      \"reload\": \"\",\n      \"hint\": \"sigma pomak\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma max\",\n      \"localized\": \"sigma maksimum\",\n      \"reload\": \"\",\n      \"hint\": \"sigma maksimum\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma method\",\n      \"localized\": \"sigma metoda\",\n      \"reload\": \"\",\n      \"hint\": \"sigma metoda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma min\",\n      \"localized\": \"sigma minimum\",\n      \"reload\": \"\",\n      \"hint\": \"sigma minimum\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma noise\",\n      \"localized\": \"sigma šum\",\n      \"reload\": \"\",\n      \"hint\": \"sigma šum\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma tmin\",\n      \"localized\": \"sigma tmin\",\n      \"reload\": \"\",\n      \"hint\": \"sigma tmin\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"simple merge\",\n      \"localized\": \"jednostavno spajanje\",\n      \"reload\": \"\",\n      \"hint\": \"jednostavno spajanje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"size\",\n      \"localized\": \"veličina\",\n      \"reload\": \"\",\n      \"hint\": \"veličina\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sketch\",\n      \"localized\": \"skica\",\n      \"reload\": \"\",\n      \"hint\": \"skica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip generation if nan found in latents\",\n      \"localized\": \"preskoči generiranje ako je nan pronađen u latentima\",\n      \"reload\": \"\",\n      \"hint\": \"preskoči generiranje ako je nan pronađen u latentima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip guidance layers\",\n      \"localized\": \"preskoči slojeve navođenja\",\n      \"reload\": \"\",\n      \"hint\": \"preskoči slojeve navođenja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip input frames\",\n      \"localized\": \"preskoči ulazne okvire\",\n      \"reload\": \"\",\n      \"hint\": \"preskoči ulazne okvire\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"slider\",\n      \"localized\": \"klizač\",\n      \"reload\": \"\",\n      \"hint\": \"klizač\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"smooth mask\",\n      \"localized\": \"zagladi masku\",\n      \"reload\": \"\",\n      \"hint\": \"zagladi masku\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"solver order (where\",\n      \"localized\": \"red rješavača (gdje\",\n      \"reload\": \"\",\n      \"hint\": \"red rješavača (gdje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sort order\",\n      \"localized\": \"redoslijed sortiranja\",\n      \"reload\": \"\",\n      \"hint\": \"redoslijed sortiranja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"source subject\",\n      \"localized\": \"izvorni subjekt\",\n      \"reload\": \"\",\n      \"hint\": \"izvorni subjekt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"space\",\n      \"localized\": \"prostor\",\n      \"reload\": \"\",\n      \"hint\": \"prostor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"spatial frequency\",\n      \"localized\": \"prostorna frekvencija\",\n      \"reload\": \"\",\n      \"hint\": \"prostorna frekvencija\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"specify model revision\",\n      \"localized\": \"odredi reviziju modela\",\n      \"reload\": \"\",\n      \"hint\": \"odredi reviziju modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"specify model variant\",\n      \"localized\": \"odredi varijantu modela\",\n      \"reload\": \"\",\n      \"hint\": \"odredi varijantu modela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"split attention\",\n      \"localized\": \"podijeljena pažnja\",\n      \"reload\": \"\",\n      \"hint\": \"podijeljena pažnja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"stable-fast\",\n      \"localized\": \"stable-fast\",\n      \"reload\": \"\",\n      \"hint\": \"stable-fast\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"standard\",\n      \"localized\": \"standardno\",\n      \"reload\": \"\",\n      \"hint\": \"standardno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"start\",\n      \"localized\": \"početak\",\n      \"reload\": \"\",\n      \"hint\": \"početak\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"start profiling\",\n      \"localized\": \"pokreni profiliranje\",\n      \"reload\": \"\",\n      \"hint\": \"pokreni profiliranje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"state\",\n      \"localized\": \"stanje\",\n      \"reload\": \"\",\n      \"hint\": \"stanje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"stride\",\n      \"localized\": \"korak\",\n      \"reload\": \"\",\n      \"hint\": \"korak\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"structure\",\n      \"localized\": \"struktura\",\n      \"reload\": \"\",\n      \"hint\": \"struktura\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"style fidelity\",\n      \"localized\": \"vjernost stilu\",\n      \"reload\": \"\",\n      \"hint\": \"vjernost stilu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"subject\",\n      \"localized\": \"subjekt\",\n      \"reload\": \"\",\n      \"hint\": \"subjekt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"submit results\",\n      \"localized\": \"pošalji rezultate\",\n      \"reload\": \"\",\n      \"hint\": \"pošalji rezultate\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"submodules\",\n      \"localized\": \"podmoduli\",\n      \"reload\": \"\",\n      \"hint\": \"podmoduli\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap x/y\",\n      \"localized\": \"zamijeni x/y\",\n      \"reload\": \"\",\n      \"hint\": \"zamijeni x/y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap x/z\",\n      \"localized\": \"zamijeni x/z\",\n      \"reload\": \"\",\n      \"hint\": \"zamijeni x/z\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap y/z\",\n      \"localized\": \"zamijeni y/z\",\n      \"reload\": \"\",\n      \"hint\": \"zamijeni y/z\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i adapter\",\n      \"localized\": \"t2i adapter\",\n      \"reload\": \"\",\n      \"hint\": \"t2i adapter\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i strength\",\n      \"localized\": \"t2i snaga\",\n      \"reload\": \"\",\n      \"hint\": \"t2i snaga\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 1\",\n      \"localized\": \"t2i-adapter jedinica 1\",\n      \"reload\": \"\",\n      \"hint\": \"t2i-adapter jedinica 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 2\",\n      \"localized\": \"t2i-adapter jedinica 2\",\n      \"reload\": \"\",\n      \"hint\": \"t2i-adapter jedinica 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 3\",\n      \"localized\": \"t2i-adapter jedinica 3\",\n      \"reload\": \"\",\n      \"hint\": \"t2i-adapter jedinica 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 4\",\n      \"localized\": \"t2i-adapter jedinica 4\",\n      \"reload\": \"\",\n      \"hint\": \"t2i-adapter jedinica 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd\",\n      \"localized\": \"taesd\",\n      \"reload\": \"\",\n      \"hint\": \"taesd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd decode layers\",\n      \"localized\": \"taesd slojevi dekodiranja\",\n      \"reload\": \"\",\n      \"hint\": \"taesd slojevi dekodiranja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd variant\",\n      \"localized\": \"taesd varijanta\",\n      \"reload\": \"\",\n      \"hint\": \"taesd varijanta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"target subject\",\n      \"localized\": \"ciljani subjekt\",\n      \"reload\": \"\",\n      \"hint\": \"ciljani subjekt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tcd\",\n      \"localized\": \"tcd\",\n      \"reload\": \"\",\n      \"hint\": \"tcd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tdd\",\n      \"localized\": \"tdd\",\n      \"reload\": \"\",\n      \"hint\": \"tdd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"te\",\n      \"localized\": \"te\",\n      \"reload\": \"\",\n      \"hint\": \"te\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"temperature\",\n      \"localized\": \"temperatura\",\n      \"reload\": \"\",\n      \"hint\": \"temperatura\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"temporal frequency\",\n      \"localized\": \"vremenska frekvencija\",\n      \"reload\": \"\",\n      \"hint\": \"vremenska frekvencija\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tertiary model\",\n      \"localized\": \"tercijarni model\",\n      \"reload\": \"\",\n      \"hint\": \"tercijarni model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text encoder cache size\",\n      \"localized\": \"veličina predmemorije tekstualnog kodera\",\n      \"reload\": \"\",\n      \"hint\": \"veličina predmemorije tekstualnog kodera\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text encoder model\",\n      \"localized\": \"model tekstualnog kodera\",\n      \"reload\": \"\",\n      \"hint\": \"model tekstualnog kodera\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text inputs\",\n      \"localized\": \"tekstualni unosi\",\n      \"reload\": \"\",\n      \"hint\": \"tekstualni unosi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"textbox\",\n      \"localized\": \"okvir za tekst\",\n      \"reload\": \"\",\n      \"hint\": \"okvir za tekst\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"threshold\",\n      \"localized\": \"prag\",\n      \"reload\": \"\",\n      \"hint\": \"prag\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"thresholding\",\n      \"localized\": \"pragovanje\",\n      \"reload\": \"\",\n      \"hint\": \"pragovanje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile frames\",\n      \"localized\": \"okviri pločica\",\n      \"reload\": \"\",\n      \"hint\": \"okviri pločica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=1\",\n      \"localized\": \"prompt pločice: x=1 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"prompt pločice: x=1 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=2\",\n      \"localized\": \"prompt pločice: x=1 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"prompt pločice: x=1 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=3\",\n      \"localized\": \"prompt pločice: x=1 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"prompt pločice: x=1 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=4\",\n      \"localized\": \"prompt pločice: x=1 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"prompt pločice: x=1 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=1\",\n      \"localized\": \"prompt pločice: x=2 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"prompt pločice: x=2 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=2\",\n      \"localized\": \"prompt pločice: x=2 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"prompt pločice: x=2 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=3\",\n      \"localized\": \"prompt pločice: x=2 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"prompt pločice: x=2 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=4\",\n      \"localized\": \"prompt pločice: x=2 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"prompt pločice: x=2 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=1\",\n      \"localized\": \"prompt pločice: x=3 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"prompt pločice: x=3 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=2\",\n      \"localized\": \"prompt pločice: x=3 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"prompt pločice: x=3 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=3\",\n      \"localized\": \"prompt pločice: x=3 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"prompt pločice: x=3 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=4\",\n      \"localized\": \"prompt pločice: x=3 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"prompt pločice: x=3 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=1\",\n      \"localized\": \"prompt pločice: x=4 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"prompt pločice: x=4 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=2\",\n      \"localized\": \"prompt pločice: x=4 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"prompt pločice: x=4 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=3\",\n      \"localized\": \"prompt pločice: x=4 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"prompt pločice: x=4 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=4\",\n      \"localized\": \"prompt pločice: x=4 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"prompt pločice: x=4 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tiling options\",\n      \"localized\": \"opcije pločica\",\n      \"reload\": \"\",\n      \"hint\": \"opcije pločica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time embedding mix\",\n      \"localized\": \"mješavina vremenskog ugrađivanja\",\n      \"reload\": \"\",\n      \"hint\": \"mješavina vremenskog ugrađivanja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time_quadratic\",\n      \"localized\": \"time_quadratic\",\n      \"reload\": \"\",\n      \"hint\": \"time_quadratic\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time_uniform\",\n      \"localized\": \"time_uniform\",\n      \"reload\": \"\",\n      \"hint\": \"time_uniform\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep\",\n      \"localized\": \"vremenski korak\",\n      \"reload\": \"\",\n      \"hint\": \"vremenski korak\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep skip end\",\n      \"localized\": \"preskoči kraj vremenskog koraka\",\n      \"reload\": \"\",\n      \"hint\": \"preskoči kraj vremenskog koraka\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep skip start\",\n      \"localized\": \"preskoči početak vremenskog koraka\",\n      \"reload\": \"\",\n      \"hint\": \"preskoči početak vremenskog koraka\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep spacing\",\n      \"localized\": \"razmak vremenskih koraka\",\n      \"reload\": \"\",\n      \"hint\": \"razmak vremenskih koraka\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps\",\n      \"localized\": \"vremenski koraci\",\n      \"reload\": \"\",\n      \"hint\": \"vremenski koraci\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps override\",\n      \"localized\": \"nadjačavanje vremenskih koraka\",\n      \"reload\": \"\",\n      \"hint\": \"nadjačavanje vremenskih koraka\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps presets\",\n      \"localized\": \"predefinirani vremenski koraci\",\n      \"reload\": \"\",\n      \"hint\": \"predefinirani vremenski koraci\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps range\",\n      \"localized\": \"raspon vremenskih koraka\",\n      \"reload\": \"\",\n      \"hint\": \"raspon vremenskih koraka\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tiny\",\n      \"localized\": \"malo\",\n      \"reload\": \"\",\n      \"hint\": \"malo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"todo\",\n      \"localized\": \"todo\",\n      \"reload\": \"\",\n      \"hint\": \"todo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tome\",\n      \"localized\": \"tome\",\n      \"reload\": \"\",\n      \"hint\": \"tome\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tool\",\n      \"localized\": \"alat\",\n      \"reload\": \"\",\n      \"hint\": \"alat\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"top-k\",\n      \"localized\": \"top-k\",\n      \"reload\": \"\",\n      \"hint\": \"top-k\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"top-p\",\n      \"localized\": \"top-p\",\n      \"reload\": \"\",\n      \"hint\": \"top-p\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"torch\",\n      \"localized\": \"torch\",\n      \"reload\": \"\",\n      \"hint\": \"torch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"transformer\",\n      \"localized\": \"transformator\",\n      \"reload\": \"\",\n      \"hint\": \"transformator\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"trigger word\",\n      \"localized\": \"okidačka riječ\",\n      \"reload\": \"\",\n      \"hint\": \"okidačka riječ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"true\",\n      \"localized\": \"istina\",\n      \"reload\": \"\",\n      \"hint\": \"istina\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tunable ops limit\",\n      \"localized\": \"ograničenje prilagodljivih operacija\",\n      \"reload\": \"\",\n      \"hint\": \"ograničenje prilagodljivih operacija\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ufogen\",\n      \"localized\": \"ufogen\",\n      \"reload\": \"\",\n      \"hint\": \"ufogen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui card size (px)\",\n      \"localized\": \"veličina UI kartice (px)\",\n      \"reload\": \"\",\n      \"hint\": \"veličina UI kartice (px)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui fetch network info on mouse-over\",\n      \"localized\": \"UI dohvati mrežne informacije pri prelasku mišem\",\n      \"reload\": \"\",\n      \"hint\": \"UI dohvati mrežne informacije pri prelasku mišem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui height (%)\",\n      \"localized\": \"UI visina (%)\",\n      \"reload\": \"\",\n      \"hint\": \"UI visina (%)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui locale\",\n      \"localized\": \"UI lokalizacija\",\n      \"reload\": \"\",\n      \"hint\": \"UI lokalizacija\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui request timeout\",\n      \"localized\": \"UI vremensko ograničenje zahtjeva\",\n      \"reload\": \"\",\n      \"hint\": \"UI vremensko ograničenje zahtjeva\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui show on startup\",\n      \"localized\": \"UI prikazati pri pokretanju\",\n      \"reload\": \"\",\n      \"hint\": \"UI prikazati pri pokretanju\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui sidebar width (%)\",\n      \"localized\": \"UI širina bočne trake (%)\",\n      \"reload\": \"\",\n      \"hint\": \"UI širina bočne trake (%)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui theme\",\n      \"localized\": \"UI tema\",\n      \"reload\": \"\",\n      \"hint\": \"UI tema\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet\",\n      \"localized\": \"unet\",\n      \"reload\": \"\",\n      \"hint\": \"unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet depth\",\n      \"localized\": \"unet dubina\",\n      \"reload\": \"\",\n      \"hint\": \"unet dubina\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet enabled\",\n      \"localized\": \"unet omogućen\",\n      \"reload\": \"\",\n      \"hint\": \"unet omogućen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet max tile size\",\n      \"localized\": \"unet maksimalna veličina pločice\",\n      \"reload\": \"\",\n      \"hint\": \"unet maksimalna veličina pločice\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet min tile size\",\n      \"localized\": \"unet minimalna veličina pločice\",\n      \"reload\": \"\",\n      \"hint\": \"unet minimalna veličina pločice\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet model\",\n      \"localized\": \"unet model\",\n      \"reload\": \"\",\n      \"hint\": \"unet model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet swap size\",\n      \"localized\": \"unet veličina zamjene\",\n      \"reload\": \"\",\n      \"hint\": \"unet veličina zamjene\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"uniform\",\n      \"localized\": \"jednoliko\",\n      \"reload\": \"\",\n      \"hint\": \"jednoliko\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"units\",\n      \"localized\": \"jedinice\",\n      \"reload\": \"\",\n      \"hint\": \"jedinice\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unload current model from vram\",\n      \"localized\": \"istovari trenutni model iz vram-a\",\n      \"reload\": \"\",\n      \"hint\": \"istovari trenutni model iz vram-a\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unload upscaler after processing\",\n      \"localized\": \"istovari upscaler nakon obrade\",\n      \"reload\": \"\",\n      \"hint\": \"istovari upscaler nakon obrade\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unset\",\n      \"localized\": \"poništi\",\n      \"reload\": \"\",\n      \"hint\": \"poništi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"up\",\n      \"localized\": \"up\",\n      \"reload\": \"\",\n      \"hint\": \"up\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"upcast attention layer\",\n      \"localized\": \"upcast sloj pažnje\",\n      \"reload\": \"\",\n      \"hint\": \"upcast sloj pažnje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"update\",\n      \"localized\": \"ažuriraj\",\n      \"reload\": \"\",\n      \"hint\": \"ažuriraj\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"upload\",\n      \"localized\": \"učitaj\",\n      \"reload\": \"\",\n      \"hint\": \"učitaj\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use brownian noise\",\n      \"localized\": \"koristi brownov šum\",\n      \"reload\": \"\",\n      \"hint\": \"koristi brownov šum\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use cached model config when available\",\n      \"localized\": \"koristi konfiguraciju modela iz predmemorije kada je dostupna\",\n      \"reload\": \"\",\n      \"hint\": \"koristi konfiguraciju modela iz predmemorije kada je dostupna\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use defaults\",\n      \"localized\": \"koristi zadane vrijednosti\",\n      \"reload\": \"\",\n      \"hint\": \"koristi zadane vrijednosti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use dynamic thresholding\",\n      \"localized\": \"koristi dinamičko pragovanje\",\n      \"reload\": \"\",\n      \"hint\": \"koristi dinamičko pragovanje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use fixed width thumbnails\",\n      \"localized\": \"koristi sličice fiksne širine\",\n      \"reload\": \"\",\n      \"hint\": \"koristi sličice fiksne širine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use image gallery cache\",\n      \"localized\": \"koristi predmemoriju galerije slika\",\n      \"reload\": \"\",\n      \"hint\": \"koristi predmemoriju galerije slika\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use karras sigmas\",\n      \"localized\": \"koristi karras sigme\",\n      \"reload\": \"\",\n      \"hint\": \"koristi karras sigme\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use line break as prompt segment marker\",\n      \"localized\": \"koristi prijelom retka kao oznaku segmenta prompta\",\n      \"reload\": \"\",\n      \"hint\": \"koristi prijelom retka kao oznaku segmenta prompta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use model ema weights when possible\",\n      \"localized\": \"koristi ema težine modela kada je moguće\",\n      \"reload\": \"\",\n      \"hint\": \"koristi ema težine modela kada je moguće\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use quantization\",\n      \"localized\": \"koristi kvantizaciju\",\n      \"reload\": \"\",\n      \"hint\": \"koristi kvantizaciju\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use random seeds\",\n      \"localized\": \"koristi nasumične sjemenke\",\n      \"reload\": \"\",\n      \"hint\": \"koristi nasumične sjemenke\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use reference values when available\",\n      \"localized\": \"koristi referentne vrijednosti kada su dostupne\",\n      \"reload\": \"\",\n      \"hint\": \"koristi referentne vrijednosti kada su dostupne\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use same seed\",\n      \"localized\": \"koristi istu sjemenku\",\n      \"reload\": \"\",\n      \"hint\": \"koristi istu sjemenku\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use sample\",\n      \"localized\": \"koristi uzorak\",\n      \"reload\": \"\",\n      \"hint\": \"koristi uzorak\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use separate base dict\",\n      \"localized\": \"koristi zasebni osnovni rječnik\",\n      \"reload\": \"\",\n      \"hint\": \"koristi zasebni osnovni rječnik\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use simplified solvers in final steps\",\n      \"localized\": \"koristi pojednostavljene rješavače u završnim koracima\",\n      \"reload\": \"\",\n      \"hint\": \"koristi pojednostavljene rješavače u završnim koracima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use text inputs\",\n      \"localized\": \"koristi tekstualne unose\",\n      \"reload\": \"\",\n      \"hint\": \"koristi tekstualne unose\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"user\",\n      \"localized\": \"korisnik\",\n      \"reload\": \"\",\n      \"hint\": \"korisnik\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"username\",\n      \"localized\": \"korisničko ime\",\n      \"reload\": \"\",\n      \"hint\": \"korisničko ime\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"v_prediction\",\n      \"localized\": \"v_prediction\",\n      \"reload\": \"\",\n      \"hint\": \"v_prediction\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae enabled\",\n      \"localized\": \"VAE omogućen\",\n      \"reload\": \"\",\n      \"hint\": \"VAE omogućen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae sliced encode\",\n      \"localized\": \"VAE segmentirano kodiranje\",\n      \"reload\": \"\",\n      \"hint\": \"VAE segmentirano kodiranje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae swap size\",\n      \"localized\": \"VAE veličina zamjene\",\n      \"reload\": \"\",\n      \"hint\": \"VAE veličina zamjene\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae tile overlap\",\n      \"localized\": \"VAE preklapanje pločica\",\n      \"reload\": \"\",\n      \"hint\": \"VAE preklapanje pločica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae tile size\",\n      \"localized\": \"VAE veličina pločice\",\n      \"reload\": \"\",\n      \"hint\": \"VAE veličina pločice\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vary_coeff\",\n      \"localized\": \"vary_coeff\",\n      \"reload\": \"\",\n      \"hint\": \"vary_coeff\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vdm solver\",\n      \"localized\": \"VDM rješavač\",\n      \"reload\": \"\",\n      \"hint\": \"VDM rješavač\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"version\",\n      \"localized\": \"Verzija\",\n      \"reload\": \"\",\n      \"hint\": \"Verzija\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vgen params\",\n      \"localized\": \"Vgen parametri\",\n      \"reload\": \"\",\n      \"hint\": \"Vgen parametri\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vibrance\",\n      \"localized\": \"Vibracija\",\n      \"reload\": \"\",\n      \"hint\": \"Vibracija\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"video file\",\n      \"localized\": \"Video datoteka\",\n      \"reload\": \"\",\n      \"hint\": \"Video datoteka\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"video type\",\n      \"localized\": \"Vrsta videozapisa\",\n      \"reload\": \"\",\n      \"hint\": \"Vrsta videozapisa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm\",\n      \"localized\": \"VLM\",\n      \"reload\": \"\",\n      \"hint\": \"VLM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm model\",\n      \"localized\": \"VLM model\",\n      \"reload\": \"\",\n      \"hint\": \"VLM model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: default model\",\n      \"localized\": \"VLM: zadani model\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: zadani model\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: default prompt\",\n      \"localized\": \"VLM: zadani upit\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: zadani upit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: max length\",\n      \"localized\": \"VLM: maksimalna duljina\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: maksimalna duljina\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: num beams\",\n      \"localized\": \"VLM: broj snopova\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: broj snopova\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: top-k\",\n      \"localized\": \"VLM: top-k\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: top-k\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: top-p\",\n      \"localized\": \"VLM: top-p\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: top-p\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: use sample method\",\n      \"localized\": \"VLM: koristi metodu uzorkovanja\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: koristi metodu uzorkovanja\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"warmth\",\n      \"localized\": \"Toplina\",\n      \"reload\": \"\",\n      \"hint\": \"Toplina\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"webp lossless compression\",\n      \"localized\": \"WebP kompresija bez gubitaka\",\n      \"reload\": \"\",\n      \"hint\": \"WebP kompresija bez gubitaka\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"weight\",\n      \"localized\": \"Težina\",\n      \"reload\": \"\",\n      \"hint\": \"Težina\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width  after\",\n      \"localized\": \"Širina nakon\",\n      \"reload\": \"\",\n      \"hint\": \"Širina nakon\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width  before\",\n      \"localized\": \"Širina prije\",\n      \"reload\": \"\",\n      \"hint\": \"Širina prije\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width  mask\",\n      \"localized\": \"Širina maske\",\n      \"reload\": \"\",\n      \"hint\": \"Širina maske\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"wiki\",\n      \"localized\": \"Wiki\",\n      \"reload\": \"\",\n      \"hint\": \"Wiki\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"wildcards\",\n      \"localized\": \"Jokeri\",\n      \"reload\": \"\",\n      \"hint\": \"Jokeri\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x components\",\n      \"localized\": \"X komponente\",\n      \"reload\": \"\",\n      \"hint\": \"X komponente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x overlap\",\n      \"localized\": \"X preklapanje\",\n      \"reload\": \"\",\n      \"hint\": \"X preklapanje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x type\",\n      \"localized\": \"X tip\",\n      \"reload\": \"\",\n      \"hint\": \"X tip\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x-axis tile overlap\",\n      \"localized\": \"Preklapanje pločica X-osi\",\n      \"reload\": \"\",\n      \"hint\": \"Preklapanje pločica X-osi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x-axis tiles\",\n      \"localized\": \"Pločice X-osi\",\n      \"reload\": \"\",\n      \"hint\": \"Pločice X-osi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xhinker\",\n      \"localized\": \"xhinker\",\n      \"reload\": \"\",\n      \"hint\": \"xhinker\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xs\",\n      \"localized\": \"xs\",\n      \"reload\": \"\",\n      \"hint\": \"xs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y components\",\n      \"localized\": \"Y komponente\",\n      \"reload\": \"\",\n      \"hint\": \"Y komponente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y overlap\",\n      \"localized\": \"Y preklapanje\",\n      \"reload\": \"\",\n      \"hint\": \"Y preklapanje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y type\",\n      \"localized\": \"Y tip\",\n      \"reload\": \"\",\n      \"hint\": \"Y tip\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y-axis tile overlap\",\n      \"localized\": \"Preklapanje pločica Y-osi\",\n      \"reload\": \"\",\n      \"hint\": \"Preklapanje pločica Y-osi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y-axis tiles\",\n      \"localized\": \"Pločice Y-osi\",\n      \"reload\": \"\",\n      \"hint\": \"Pločice Y-osi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"z type\",\n      \"localized\": \"Z tip\",\n      \"reload\": \"\",\n      \"hint\": \"Z tip\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"zero\",\n      \"localized\": \"Nula\",\n      \"reload\": \"\",\n      \"hint\": \"Nula\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"zoe depth\",\n      \"localized\": \"Zoe dubina\",\n      \"reload\": \"\",\n      \"hint\": \"Zoe dubina\"\n    }\n  ]\n}\n"
  },
  {
    "path": "html/locale_it.json",
    "content": "{\n  \"icons\": [\n    {\n      \"id\": \"\",\n      \"label\": \"🎲️\",\n      \"localized\": \"🎲️\",\n      \"reload\": \"\",\n      \"hint\": \"Usa seed casuale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔄\",\n      \"localized\": \"🔄\",\n      \"reload\": \"\",\n      \"hint\": \"Ripristina valori\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⬆️\",\n      \"localized\": \"⬆️\",\n      \"reload\": \"\",\n      \"hint\": \"Carica immagine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⬅️\",\n      \"localized\": \"⬅️\",\n      \"reload\": \"\",\n      \"hint\": \"Riutilizza immagine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇅\",\n      \"localized\": \"⇅\",\n      \"reload\": \"\",\n      \"hint\": \"Scambia valori\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇨\",\n      \"localized\": \"⇨\",\n      \"reload\": \"\",\n      \"hint\": \"Applica preset alla scheda Unione Blocchi Manuale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🕮\",\n      \"localized\": \"🕮\",\n      \"reload\": \"\",\n      \"hint\": \"Salva i parametri dell'ultima immagine generata come modello di stile\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇕\",\n      \"localized\": \"⇕\",\n      \"reload\": \"\",\n      \"hint\": \"Ordina per: Nome crescente/decrescente, Dimensione più grande/più piccola, Tempo più recente/meno recente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⟲\",\n      \"localized\": \"⟲\",\n      \"reload\": \"\",\n      \"hint\": \"Aggiorna\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"✕\",\n      \"localized\": \"✕\",\n      \"reload\": \"\",\n      \"hint\": \"Chiudi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⊜\",\n      \"localized\": \"⊜\",\n      \"reload\": \"\",\n      \"hint\": \"Riempi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"※\",\n      \"localized\": \"※\",\n      \"reload\": \"\",\n      \"hint\": \"Carica il modello come modello di raffinamento quando selezionato, altrimenti carica come modello base\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔎︎\",\n      \"localized\": \"🔎︎\",\n      \"reload\": \"\",\n      \"hint\": \"Scansiona CivitAI per metadati e anteprime mancanti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"☲\",\n      \"localized\": \"☲\",\n      \"reload\": \"\",\n      \"hint\": \"Cambia tipo di visualizzazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⊗\",\n      \"localized\": \"⊗\",\n      \"reload\": \"\",\n      \"hint\": \"Ripristina valori\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"📐\",\n      \"localized\": \"📐\",\n      \"reload\": \"\",\n      \"hint\": \"Misura\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔍\",\n      \"localized\": \"🔍\",\n      \"reload\": \"\",\n      \"hint\": \"Cerca\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🖌️\",\n      \"localized\": \"🖌️\",\n      \"reload\": \"\",\n      \"hint\": \"LaMa rimuove l'oggetto selezionato dall'immagine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🖼️\",\n      \"localized\": \"🖼️\",\n      \"reload\": \"\",\n      \"hint\": \"Mostra anteprima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Interroga immagine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⁜\",\n      \"localized\": \"⁜\",\n      \"reload\": \"\",\n      \"hint\": \"Cicla metodo di adattamento immagine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"↶\",\n      \"localized\": \"↶\",\n      \"reload\": \"\",\n      \"hint\": \"Applica lo stile selezionato al prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"↷\",\n      \"localized\": \"↷\",\n      \"reload\": \"\",\n      \"hint\": \"Salva il prompt corrente come stile\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Ordina per nome, crescente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Ordina per nome, decrescente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Ordina per dimensione, crescente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Ordina per dimensione, decrescente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Ordina per risoluzione, crescente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Ordina per risoluzione, decrescente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Ordina per tempo, crescente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Ordina per tempo, decrescente\"\n    }\n  ],\n  \"main\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt\",\n      \"localized\": \"Prompt\",\n      \"reload\": \"\",\n      \"hint\": \"Descrivi l'immagine che vuoi generare\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Start\",\n      \"localized\": \"Inizio\",\n      \"reload\": \"\",\n      \"hint\": \"Inizio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"End\",\n      \"localized\": \"Fine\",\n      \"reload\": \"\",\n      \"hint\": \"Fine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Core\",\n      \"localized\": \"Base\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni principali\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System prompt\",\n      \"localized\": \"Prompt di sistema\",\n      \"reload\": \"\",\n      \"hint\": \"Il prompt di sistema controlla il comportamento del LLM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Negative prompt\",\n      \"localized\": \"Prompt negativo\",\n      \"reload\": \"\",\n      \"hint\": \"Descrivi cosa non vuoi vedere nell'immagine generata\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Text\",\n      \"localized\": \"Testo\",\n      \"reload\": \"\",\n      \"hint\": \"Crea immagine da testo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image\",\n      \"localized\": \"Immagine\",\n      \"reload\": \"\",\n      \"hint\": \"Crea immagine da immagine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control\",\n      \"localized\": \"Controllo\",\n      \"reload\": \"\",\n      \"hint\": \"Crea immagine con guida completa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process\",\n      \"localized\": \"Elabora\",\n      \"reload\": \"\",\n      \"hint\": \"Elabora immagine esistente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Caption\",\n      \"localized\": \"Didascalia\",\n      \"reload\": \"\",\n      \"hint\": \"Analizza le immagini esistenti e crea descrizioni testuali\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Interrogate\",\n      \"localized\": \"Interroga\",\n      \"reload\": \"\",\n      \"hint\": \"Esegui interrogazione per ottenere una descrizione della tua immagine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models\",\n      \"localized\": \"Modelli\",\n      \"reload\": \"\",\n      \"hint\": \"Scarica, converti o unisci i tuoi modelli e gestisci i metadati dei modelli\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Agent Scheduler\",\n      \"localized\": \"Pianificatore Agente\",\n      \"reload\": \"\",\n      \"hint\": \"Metti in coda le tue richieste di generazione ed eseguile in background\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"AgentScheduler\",\n      \"localized\": \"Pianificatore Agente\",\n      \"reload\": \"\",\n      \"hint\": \"Metti in coda le tue richieste di generazione ed eseguile in background\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System\",\n      \"localized\": \"Sistema\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni e informazioni di sistema\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System Info\",\n      \"localized\": \"Info Sistema\",\n      \"reload\": \"\",\n      \"hint\": \"Informazioni di sistema\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Settings\",\n      \"localized\": \"Impostazioni\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni applicazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Script\",\n      \"localized\": \"Script\",\n      \"reload\": \"\",\n      \"hint\": \"Script aggiuntivi da utilizzare\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Generate\",\n      \"localized\": \"Genera\",\n      \"reload\": \"\",\n      \"hint\": \"Avvia elaborazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Generate forever\",\n      \"localized\": \"Genera per sempre\",\n      \"reload\": \"\",\n      \"hint\": \"Avvia elaborazione e continua fino all'annullamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enqueue\",\n      \"localized\": \"Metti in coda\",\n      \"reload\": \"\",\n      \"hint\": \"Aggiungi attività alla coda in background nel Pianificatore Agente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reprocess\",\n      \"localized\": \"Rielabora\",\n      \"reload\": \"\",\n      \"hint\": \"Rielabora le generazioni precedenti usando parametri diversi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Stop\",\n      \"localized\": \"Ferma\",\n      \"reload\": \"\",\n      \"hint\": \"Ferma elaborazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Skip\",\n      \"localized\": \"Salta\",\n      \"reload\": \"\",\n      \"hint\": \"Ferma l'elaborazione del lavoro corrente e continua l'elaborazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Pause\",\n      \"localized\": \"Pausa\",\n      \"reload\": \"\",\n      \"hint\": \"Metti in pausa l'elaborazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore\",\n      \"localized\": \"Ripristina\",\n      \"reload\": \"\",\n      \"hint\": \"Ripristina i parametri dal prompt corrente o dall'ultima immagine generata conosciuta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Clear\",\n      \"localized\": \"Cancella\",\n      \"reload\": \"\",\n      \"hint\": \"Cancella prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Networks\",\n      \"localized\": \"Reti\",\n      \"reload\": \"\",\n      \"hint\": \"Interfaccia utente delle reti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Default strength\",\n      \"localized\": \"Forza predefinita\",\n      \"reload\": \"\",\n      \"hint\": \"Quando aggiungi una rete extra come Lora al prompt, usa questo moltiplicatore per essa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscale\",\n      \"localized\": \"Upscale\",\n      \"reload\": \"\",\n      \"hint\": \"Ingrandisci immagine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model\",\n      \"localized\": \"Modello\",\n      \"reload\": \"\",\n      \"hint\": \"Modello base\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompts\",\n      \"localized\": \"Prompt\",\n      \"reload\": \"\",\n      \"hint\": \"Prompt immagine e prompt negativo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Base\",\n      \"localized\": \"Base\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni base usate per eseguire la generazione di immagini\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Style\",\n      \"localized\": \"Stile\",\n      \"reload\": \"\",\n      \"hint\": \"Stili aggiuntivi da applicare sui parametri di generazione selezionati\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Styles\",\n      \"localized\": \"Stili\",\n      \"reload\": \"\",\n      \"hint\": \"Stili aggiuntivi da applicare sui parametri di generazione selezionati\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Lora\",\n      \"localized\": \"Lora\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA: Low-Rank Adaptation. Modello affinato che viene applicato su un modello caricato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Embedding\",\n      \"localized\": \"Embedding\",\n      \"reload\": \"\",\n      \"hint\": \"L'embedding per inversione testuale è un'informazione incorporata addestrata sull'argomento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Hypernetwork\",\n      \"localized\": \"Hypernetwork\",\n      \"reload\": \"\",\n      \"hint\": \"Piccola rete neurale addestrata che modifica il comportamento del modello caricato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VLM Caption\",\n      \"localized\": \"Didascalia VLM\",\n      \"reload\": \"\",\n      \"hint\": \"Analizza l'immagine usando un modello di linguaggio visivo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CLiP Interrogate\",\n      \"localized\": \"Interroga CLiP\",\n      \"reload\": \"\",\n      \"hint\": \"Analizza l'immagine usando il modello CLiP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE\",\n      \"localized\": \"VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Variational Auto Encoder: modello usato per eseguire la decodifica dell'immagine alla fine della generazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"History\",\n      \"localized\": \"Cronologia\",\n      \"reload\": \"\",\n      \"hint\": \"Elenco delle generazioni precedenti che possono essere ulteriormente rielaborate\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"UI disable variable aspect ratio\",\n      \"localized\": \"Disabilita rapporto aspetto variabile UI\",\n      \"reload\": \"\",\n      \"hint\": \"Quando disabilitato, tutte le miniature appaiono come immagini quadrate\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Build info on first access\",\n      \"localized\": \"Genera info al primo accesso\",\n      \"reload\": \"\",\n      \"hint\": \"Impedisce al server di costruire la pagina EN all'avvio del server e la costruisce invece su richiesta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show reference styles\",\n      \"localized\": \"Mostra stili di riferimento\",\n      \"reload\": \"\",\n      \"hint\": \"Mostra o nascondi gli stili incorporati\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA load using Diffusers method\",\n      \"localized\": \"Caricamento LoRA con metodo Diffusers\",\n      \"reload\": \"\",\n      \"hint\": \"Metodo alternativo che usa le capacità LoRA integrate di Diffusers invece dell'implementazione nativa di SD.Next (potrebbe ridurre la compatibilità LoRA)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA fuse directly to model\",\n      \"localized\": \"Fondi LoRA direttamente al modello\",\n      \"reload\": \"\",\n      \"hint\": \"Quando si caricano i LoRA, unire immediatamente i pesi con il modello sottostante invece di applicarli al volo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA memory cache\",\n      \"localized\": \"Cache di memoria LoRA\",\n      \"reload\": \"\",\n      \"hint\": \"Quanti LoRA mantenere in rete per uso futuro prima di richiedere il ricaricamento dalla memoria\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Local\",\n      \"localized\": \"Locale\",\n      \"reload\": \"\",\n      \"hint\": \"Modelli scaricati e pronti all'uso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Gallery\",\n      \"localized\": \"Galleria\",\n      \"reload\": \"\",\n      \"hint\": \"Galleria immagini\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reference\",\n      \"localized\": \"Riferimento\",\n      \"reload\": \"\",\n      \"hint\": \"Elenco di modelli di riferimento che possono essere scaricati automaticamente al primo utilizzo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Samplers\",\n      \"localized\": \"Campionatori\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni avanzate di campionatori/scheduler\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Seed\",\n      \"localized\": \"Seed\",\n      \"reload\": \"\",\n      \"hint\": \"Seed iniziale e variazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Advanced\",\n      \"localized\": \"Avanzate\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni avanzate usate per eseguire la generazione di immagini\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scripts\",\n      \"localized\": \"Script\",\n      \"reload\": \"\",\n      \"hint\": \"Abilita funzionalità aggiuntive utilizzando script selezionati durante il processo di generazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Corrections\",\n      \"localized\": \"Correzioni\",\n      \"reload\": \"\",\n      \"hint\": \"Controlla le correzioni di colore/nitidezza/luminosità dell'immagine durante il processo di generazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Parameters\",\n      \"localized\": \"Parametri\",\n      \"reload\": \"\",\n      \"hint\": \"Parametri base usati durante la generazione di immagini\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine\",\n      \"localized\": \"Affina\",\n      \"reload\": \"\",\n      \"hint\": \"Affina esegue elaborazioni aggiuntive dopo che l'elaborazione iniziale è stata completata e può essere usato per ingrandire l'immagine e opzionalmente rielaborarla per aumentare qualità e dettagli\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer\",\n      \"localized\": \"Detailer\",\n      \"reload\": \"\",\n      \"hint\": \"Detailer esegue una generazione aggiuntiva a risoluzione più alta per gli oggetti rilevati\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize\",\n      \"localized\": \"Ridimensiona\",\n      \"reload\": \"\",\n      \"hint\": \"Ridimensionamento immagine, può usare risoluzione fissa o basarsi su scala\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch\",\n      \"localized\": \"Batch\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni di elaborazione batch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoise\",\n      \"localized\": \"Denoise\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni di denoise. Un denoise più alto significa che più contenuto dell'immagine esistente può cambiare durante la generazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mask\",\n      \"localized\": \"Maschera\",\n      \"reload\": \"\",\n      \"hint\": \"Mascheratura immagine e opzioni maschera\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Input\",\n      \"localized\": \"Input\",\n      \"reload\": \"\",\n      \"hint\": \"Selezione del mezzo di input\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Video\",\n      \"localized\": \"Video\",\n      \"reload\": \"\",\n      \"hint\": \"Crea video usando la guida\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control elements\",\n      \"localized\": \"Elementi di controllo\",\n      \"reload\": \"\",\n      \"hint\": \"Gli elementi di controllo sono modelli avanzati che possono guidare la generazione verso il risultato desiderato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"IP adapter\",\n      \"localized\": \"Adattatore IP\",\n      \"reload\": \"\",\n      \"hint\": \"Guida la generazione verso il risultato desiderato usando i modelli plugin degli adattatori IP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"IP adapters\",\n      \"localized\": \"Adattatori IP\",\n      \"reload\": \"\",\n      \"hint\": \"Gli adattatori IP sono modelli plugin che possono guidare la generazione verso il risultato desiderato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Extensions\",\n      \"localized\": \"Estensioni\",\n      \"reload\": \"\",\n      \"hint\": \"Estensioni applicazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"XYZ Grid\",\n      \"localized\": \"Griglia XYZ\",\n      \"reload\": \"\",\n      \"hint\": \"La griglia XYZ è un modulo potente che crea una griglia di immagini basata sulla variazione di molteplici parametri di generazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Cover\",\n      \"localized\": \"Copri\",\n      \"reload\": \"\",\n      \"hint\": \"copri intera area\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inline\",\n      \"localized\": \"In linea\",\n      \"reload\": \"\",\n      \"hint\": \"in linea con tutti gli elementi aggiuntivi (scorrevole)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sidebar\",\n      \"localized\": \"Sidebar\",\n      \"reload\": \"\",\n      \"hint\": \"sidebar sul lato destro dello schermo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD15\",\n      \"localized\": \"SD15\",\n      \"reload\": \"\",\n      \"hint\": \"StableDiffusion 1.5\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD21\",\n      \"localized\": \"SD21\",\n      \"reload\": \"\",\n      \"hint\": \"StableDiffusion 2.1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD35\",\n      \"localized\": \"SD35\",\n      \"reload\": \"\",\n      \"hint\": \"StableDiffusion 3.5\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SDXL\",\n      \"localized\": \"SDXL\",\n      \"reload\": \"\",\n      \"hint\": \"StableDiffusion XL\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SC\",\n      \"localized\": \"SC\",\n      \"reload\": \"\",\n      \"hint\": \"StableCascade\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Flux\",\n      \"localized\": \"Flux\",\n      \"reload\": \"\",\n      \"hint\": \"FLUX.1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show\",\n      \"localized\": \"Mostra\",\n      \"reload\": \"\",\n      \"hint\": \"Mostra posizione immagine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Save\",\n      \"localized\": \"Salva\",\n      \"reload\": \"\",\n      \"hint\": \"Salva immagine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Delete\",\n      \"localized\": \"Elimina\",\n      \"reload\": \"\",\n      \"hint\": \"Elimina immagine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Replace\",\n      \"localized\": \"Sostituisci\",\n      \"reload\": \"\",\n      \"hint\": \"Sostituisci immagine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Text\",\n      \"localized\": \"➠ Testo\",\n      \"reload\": \"\",\n      \"hint\": \"Trasferisci immagine all'interfaccia testo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Image\",\n      \"localized\": \"➠ Immagine\",\n      \"reload\": \"\",\n      \"hint\": \"Trasferisci immagine all'interfaccia immagine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Inpaint\",\n      \"localized\": \"➠ Inpaint\",\n      \"reload\": \"\",\n      \"hint\": \"Trasferisci immagine all'interfaccia inpaint\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Sketch\",\n      \"localized\": \"➠ Schizzo\",\n      \"reload\": \"\",\n      \"hint\": \"Trasferisci immagine all'interfaccia schizzo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Composite\",\n      \"localized\": \"➠ Composito\",\n      \"reload\": \"\",\n      \"hint\": \"Trasferisci immagine all'interfaccia schizzo inpaint\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Process\",\n      \"localized\": \"➠ Elabora\",\n      \"reload\": \"\",\n      \"hint\": \"Trasferisci immagine all'interfaccia di elaborazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Control\",\n      \"localized\": \"➠ Controllo\",\n      \"reload\": \"\",\n      \"hint\": \"Trasferisci immagine all'interfaccia di controllo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Caption\",\n      \"localized\": \"➠ Didascalia\",\n      \"reload\": \"\",\n      \"hint\": \"Trasferisci immagine all'interfaccia didascalia\"\n    }\n  ],\n  \"generate\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Sampling method\",\n      \"localized\": \"Metodo di campionamento\",\n      \"reload\": \"\",\n      \"hint\": \"Quale algoritmo utilizzare per produrre l'immagine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Steps\",\n      \"localized\": \"Passi\",\n      \"reload\": \"\",\n      \"hint\": \"Quante volte migliorare l'immagine generata iterativamente; valori più alti richiedono più tempo; valori molto bassi possono produrre risultati scadenti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Tiling\",\n      \"localized\": \"Piastrellatura\",\n      \"reload\": \"\",\n      \"hint\": \"Produce un'immagine che può essere piastrellata\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full quality\",\n      \"localized\": \"Qualità massima\",\n      \"reload\": \"\",\n      \"hint\": \"Utilizza VAE a piena qualità per decodificare i campioni latenti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HiDiffusion\",\n      \"localized\": \"HiDiffusion\",\n      \"reload\": \"\",\n      \"hint\": \"HiDiffusion consente la creazione di immagini ad alta risoluzione utilizzando i tuoi modelli standard senza duplicati/distorsioni e con prestazioni migliorate\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HDR Clamp\",\n      \"localized\": \"Blocco HDR\",\n      \"reload\": \"\",\n      \"hint\": \"Regola il livello di dettagli insignificanti potando i valori che si discostano significativamente dalla media della distribuzione. È particolarmente utile per migliorare la generazione a scale di guida più elevate, identificando gli outlier all'inizio del processo e applicando aggiustamenti matematici basati sulle impostazioni di Intervallo (Confine) e Soglia. Pensalo come impostare l'intervallo entro il quale vuoi che siano i valori della tua immagine, e regolare la soglia determina quali valori dovrebbero essere riportati in quell'intervallo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HDR Maximize\",\n      \"localized\": \"Massimizzazione HDR\",\n      \"reload\": \"\",\n      \"hint\": \"Calcola un 'fattore di normalizzazione' dividendo il valore massimo del tensore per l'intervallo specificato moltiplicato per 4. Questo fattore viene quindi utilizzato per spostare i canali all'interno del confine dato, garantendo il massimo intervallo dinamico per la successiva elaborazione. L'obiettivo è ottimizzare l'intervallo dinamico per applicazioni esterne come Photoshop, in particolare per regolare livelli, contrasto e luminosità\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enable refine pass\",\n      \"localized\": \"Abilita passaggio di affinamento\",\n      \"reload\": \"\",\n      \"hint\": \"Utilizza un processo simile a quello da immagine a immagine per aumentare la risoluzione e/o aggiungere dettagli all'immagine finale. Opzionalmente utilizza il modello di affinamento per migliorare i dettagli dell'immagine.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enable detailer pass\",\n      \"localized\": \"Abilita passaggio di dettaglio\",\n      \"reload\": \"\",\n      \"hint\": \"Rileva oggetti target come i volti e rielaborali a una risoluzione più alta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoising strength\",\n      \"localized\": \"Forza di denoising\",\n      \"reload\": \"\",\n      \"hint\": \"Determina quanto poco rispetto l'algoritmo dovrebbe avere per il contenuto dell'immagine. A 0, nulla cambierà, e a 1 otterrai un'immagine non correlata. Con valori inferiori a 1.0, l'elaborazione richiederà meno passaggi di quelli specificati dal cursore 'Passi di Campionamento'.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoise start\",\n      \"localized\": \"Inizio denoising\",\n      \"reload\": \"\",\n      \"hint\": \"Sovrascrivi la forza di denoising indicando quanto presto il modello base dovrebbe terminare e quando il refiner dovrebbe iniziare. Applicabile solo all'uso del refiner. Se impostato a 0 o 1, verrà utilizzata la forza di denoising.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Hires steps\",\n      \"localized\": \"Passi ad alta risoluzione\",\n      \"reload\": \"\",\n      \"hint\": \"Numero di passaggi di campionamento per l'immagine ingrandita. Se 0, usa lo stesso dell'originale.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Strength\",\n      \"localized\": \"Forza\",\n      \"reload\": \"\",\n      \"hint\": \"La forza di denoising durante l'operazione sull'immagine controlla quanto dell'immagine originale è consentito modificare durante la generazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler\",\n      \"localized\": \"Upscaler\",\n      \"reload\": \"\",\n      \"hint\": \"Quale modello pre-addestrato utilizzare per il processo di upscaling.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Force Hires\",\n      \"localized\": \"Forza Hires\",\n      \"reload\": \"\",\n      \"hint\": \"Hires viene eseguito automaticamente quando è selezionato l'upscaling latente, ma viene saltato quando si utilizzano upscaler non latenti. Abilita la forza hires per eseguire hires con upscaler non latenti.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize width\",\n      \"localized\": \"Ridimensiona larghezza\",\n      \"reload\": \"\",\n      \"hint\": \"Ridimensiona l'immagine a questa larghezza. Se 0, la larghezza viene inferita da uno dei due cursori vicini.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize height\",\n      \"localized\": \"Ridimensiona altezza\",\n      \"reload\": \"\",\n      \"hint\": \"Ridimensiona l'immagine a questa altezza. Se 0, l'altezza viene inferita da uno dei due cursori vicini.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine sampler\",\n      \"localized\": \"Campionatore di affinamento\",\n      \"reload\": \"\",\n      \"hint\": \"Utilizza un campionatore specifico come campionatore di fallback se quello primario non è supportato per un'operazione specifica.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner start\",\n      \"localized\": \"Inizio Refiner\",\n      \"reload\": \"\",\n      \"hint\": \"Il passaggio del refiner inizierà quando il modello base sarà completato in questa misura (impostare a un valore maggiore di 0 e minore di 1 per eseguire dopo l'esecuzione completa del modello base).\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner steps\",\n      \"localized\": \"Passi Refiner\",\n      \"reload\": \"\",\n      \"hint\": \"Numero di passaggi da utilizzare per il passaggio del refiner.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine guidance\",\n      \"localized\": \"Guida di affinamento\",\n      \"reload\": \"\",\n      \"hint\": \"Scala CFG utilizzata per il passaggio del refiner.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Attention guidance\",\n      \"localized\": \"Guida all'attenzione\",\n      \"reload\": \"\",\n      \"hint\": \"Scala CFG utilizzata con PAG: Guida all'attenzione perturbata.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adaptive scaling\",\n      \"localized\": \"Scalatura adattiva\",\n      \"reload\": \"\",\n      \"hint\": \"Modificatore adattivo per la scala di guida dell'attenzione.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Rescale guidance\",\n      \"localized\": \"Riscalatura della guida\",\n      \"reload\": \"\",\n      \"hint\": \"Riscala il rumore generato da CFG per evitare immagini sovraesposte.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine Prompt\",\n      \"localized\": \"Prompt di affinamento\",\n      \"reload\": \"\",\n      \"hint\": \"Prompt utilizzato sia per il secondo encoder nel modello base (se esiste) che per il passaggio del refiner (se abilitato).\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine negative prompt\",\n      \"localized\": \"Prompt negativo di affinamento\",\n      \"reload\": \"\",\n      \"hint\": \"Prompt negativo utilizzato sia per il secondo encoder nel modello base (se esiste) che per il passaggio del refiner (se abilitato).\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Width\",\n      \"localized\": \"Larghezza\",\n      \"reload\": \"\",\n      \"hint\": \"Larghezza dell'immagine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Height\",\n      \"localized\": \"Altezza\",\n      \"reload\": \"\",\n      \"hint\": \"Altezza dell'immagine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch count\",\n      \"localized\": \"Conteggio batch\",\n      \"reload\": \"\",\n      \"hint\": \"Quanti batch di immagini creare (non ha impatto sulle prestazioni di generazione o sull'uso della VRAM).\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch size\",\n      \"localized\": \"Dimensione batch\",\n      \"reload\": \"\",\n      \"hint\": \"Quante immagini creare in un singolo batch (aumenta le prestazioni di generazione a costo di un maggiore utilizzo della VRAM).\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance scale\",\n      \"localized\": \"Scala di guida\",\n      \"reload\": \"\",\n      \"hint\": \"Scala di Guida Libera da Classificatore (CFG): quanto fortemente l'immagine dovrebbe conformarsi al prompt. Valori più bassi producono risultati più creativi, valori più alti la fanno seguire il prompt più rigorosamente; valori raccomandati tra 5-10.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Guidance End\",\n      \"localized\": \"Fine della guida\",\n      \"reload\": \"\",\n      \"hint\": \"Termina precocemente l'effetto di CFG e PAG: un valore di 1 agisce normalmente, 0.5 ferma la guida al 50% dei passaggi.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Initial seed\",\n      \"localized\": \"Seed iniziale\",\n      \"reload\": \"\",\n      \"hint\": \"Un valore che determina l'output del generatore di numeri casuali - se crei un'immagine con gli stessi parametri e seed di un'altra immagine, otterrai lo stesso risultato.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variation\",\n      \"localized\": \"Variazione\",\n      \"reload\": \"\",\n      \"hint\": \"Secondo seed da mescolare con il seed primario.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variation strength\",\n      \"localized\": \"Forza della variazione\",\n      \"reload\": \"\",\n      \"hint\": \"Quanto forte variazione produrre. A 0, non ci sarà alcun effetto. A 1, otterrai l'immagine completa con il seed di variazione (tranne per i campionatori ancestrali, dove otterrai semplicemente qualcosa).\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize seed from width\",\n      \"localized\": \"Ridimensiona seed da larghezza\",\n      \"reload\": \"\",\n      \"hint\": \"Tenta di produrre un'immagine simile a quella che sarebbe stata prodotta con lo stesso seed alla risoluzione specificata.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize seed from height\",\n      \"localized\": \"Ridimensiona seed da altezza\",\n      \"reload\": \"\",\n      \"hint\": \"Tenta di produrre un'immagine simile a quella che sarebbe stata prodotta con lo stesso seed alla risoluzione specificata.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Fixed\",\n      \"localized\": \"Fisso\",\n      \"reload\": \"\",\n      \"hint\": \"Ridimensiona l'immagine alla risoluzione target. A meno che altezza e larghezza non corrispondano, otterrai un rapporto d'aspetto non corretto.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale\",\n      \"localized\": \"scala\",\n      \"reload\": \"\",\n      \"hint\": \"Ridimensiona l'immagine alla scala target. Se sono impostate larghezza/altezza fissa di ridimensionamento, questa opzione viene ignorata.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop\",\n      \"localized\": \"Ritaglio\",\n      \"reload\": \"\",\n      \"hint\": \"Ridimensiona l'immagine in modo che l'intera risoluzione target sia riempita con l'immagine. Ritaglia le parti che sporgono.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Fill\",\n      \"localized\": \"Riempi\",\n      \"reload\": \"\",\n      \"hint\": \"Ridimensiona l'immagine in modo che l'intera immagine sia all'interno della risoluzione target. Riempi lo spazio vuoto con i colori dell'immagine.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mask blur\",\n      \"localized\": \"Sfocatura maschera\",\n      \"reload\": \"\",\n      \"hint\": \"Quanto sfocare la maschera prima dell'elaborazione, in pixel.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Latent noise\",\n      \"localized\": \"Rumore latente\",\n      \"reload\": \"\",\n      \"hint\": \"Riempilo con rumore dello spazio latente.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Latent nothing\",\n      \"localized\": \"Nessun latente\",\n      \"reload\": \"\",\n      \"hint\": \"Riempilo con zeri dello spazio latente.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adapters\",\n      \"localized\": \"Adattatori\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni relative agli IP Adapter.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inputs\",\n      \"localized\": \"Input\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni relative alle immagini di input.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control input type\",\n      \"localized\": \"Tipo di input di controllo\",\n      \"reload\": \"\",\n      \"hint\": \"Scegli quale immagine di input viene utilizzata per il processo di controllo.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Video format\",\n      \"localized\": \"Formato video\",\n      \"reload\": \"\",\n      \"hint\": \"Formato e codec del video di output.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Size & Batch\",\n      \"localized\": \"Dimensione e Batch\",\n      \"reload\": \"\",\n      \"hint\": \"Dimensione e batch dell'immagine.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sigma adjust\",\n      \"localized\": \"Regolazione Sigma\",\n      \"reload\": \"\",\n      \"hint\": \"Regola il valore sigma del campionatore.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adjust start\",\n      \"localized\": \"Inizio regolazione\",\n      \"reload\": \"\",\n      \"hint\": \"Passaggio iniziale in cui avviene la regolazione del sigma.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adjust end\",\n      \"localized\": \"Fine regolazione\",\n      \"reload\": \"\",\n      \"hint\": \"Passaggio finale in cui avviene la regolazione del sigma.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Options\",\n      \"localized\": \"Opzioni\",\n      \"reload\": \"\",\n      \"hint\": \"Opzioni\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ControlNet\",\n      \"localized\": \"ControlNet\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet è un modello di guida avanzato.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Renoise\",\n      \"localized\": \"Rirumore\",\n      \"reload\": \"\",\n      \"hint\": \"Applica rumore aggiuntivo durante la dettagliatura.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Renoise end\",\n      \"localized\": \"Fine Renoise\",\n      \"reload\": \"\",\n      \"hint\": \"Passaggio finale in cui viene applicato il rirumore.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Merge detailers\",\n      \"localized\": \"Unisci dettagliatori\",\n      \"reload\": \"\",\n      \"hint\": \"Unisci i risultati di più dettagliatori in una singola maschera prima di eseguire il processo di dettagliatura.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpaint mode\",\n      \"localized\": \"Modalità Inpaint\",\n      \"reload\": \"\",\n      \"hint\": \"Modalità Inpaint\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpaint area\",\n      \"localized\": \"Area Inpaint\",\n      \"reload\": \"\",\n      \"hint\": \"Area Inpaint\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Texture tiling\",\n      \"localized\": \"Piastrellatura texture\",\n      \"reload\": \"\",\n      \"hint\": \"Applica una piastrellatura senza giunture all'immagine generata in modo che possa essere usata come texture.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Override\",\n      \"localized\": \"Sovrascrivi\",\n      \"reload\": \"\",\n      \"hint\": \"Sovrascrivi le impostazioni che possono modificare il comportamento del server e che sono tipicamente applicate dai metadati delle immagini importate.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE type\",\n      \"localized\": \"Tipo VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Scegli se vuoi eseguire VAE completo, VAE a qualità ridotta o tentare di utilizzare un servizio VAE remoto.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Guess Mode\",\n      \"localized\": \"Modalità Indovina\",\n      \"reload\": \"\",\n      \"hint\": \"Rimuove l'obbligo di fornire un prompt a un ControlNet. Forza l'encoder ControlNet a fare la sua 'migliore ipotesi' basandosi sul contenuto della mappa di controllo in input.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control Only\",\n      \"localized\": \"Solo Controllo\",\n      \"reload\": \"\",\n      \"hint\": \"Questo utilizza solo l'input di Controllo sottostante come sorgente per qualsiasi attività di tipo ControlNet o IP Adapter basata su una qualsiasi delle nostre varie opzioni.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Init Image Same As Control\",\n      \"localized\": \"Immagine Iniziale Uguale al Controllo\",\n      \"reload\": \"\",\n      \"hint\": \"Tratterà inoltre qualsiasi immagine inserita nella finestra di input di Controllo come sorgente per attività di tipo img2img, ad esempio un'immagine da modificare.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Separate Init Image\",\n      \"localized\": \"Immagine Iniziale Separata\",\n      \"reload\": \"\",\n      \"hint\": \"Crea una finestra aggiuntiva accanto all'input di Controllo etichettata 'Init input', in modo da poter avere un'immagine separata sia per le operazioni di Controllo che per una sorgente iniziale.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Override settings\",\n      \"localized\": \"Sovrascrivi impostazioni\",\n      \"reload\": \"\",\n      \"hint\": \"Se i parametri di generazione deviano dalle impostazioni del sistema, sovrascrivi le impostazioni popolate con tali valori per sovrascrivere la configurazione del sistema per questo flusso di lavoro.\"\n    }\n  ],\n  \"other\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Install\",\n      \"localized\": \"Installa\",\n      \"reload\": \"\",\n      \"hint\": \"Installa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Search\",\n      \"localized\": \"Cerca\",\n      \"reload\": \"\",\n      \"hint\": \"Cerca\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sort by\",\n      \"localized\": \"Ordina per\",\n      \"reload\": \"\",\n      \"hint\": \"Ordina per\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Nudenet\",\n      \"localized\": \"Nudenet\",\n      \"reload\": \"\",\n      \"hint\": \"Estensione flessibile in grado di rilevare e oscurare la nudità nelle immagini\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt enhance\",\n      \"localized\": \"Migliora prompt\",\n      \"reload\": \"\",\n      \"hint\": \"Estensione che può utilizzare diversi LLM per riscrivere il prompt per risultati migliorati\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Manage extensions\",\n      \"localized\": \"Gestisci estensioni\",\n      \"reload\": \"\",\n      \"hint\": \"Gestisci estensioni\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Manual install\",\n      \"localized\": \"Installa manualmente\",\n      \"reload\": \"\",\n      \"hint\": \"Installa manualmente l'estensione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Extension GIT repository URL\",\n      \"localized\": \"URL repository GIT estensione\",\n      \"reload\": \"\",\n      \"hint\": \"Specifica l'URL del repository dell'estensione su GitHub\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Specific branch name\",\n      \"localized\": \"Nome branch specifico\",\n      \"reload\": \"\",\n      \"hint\": \"Specifica il nome del branch dell'estensione, lascia vuoto per il valore predefinito\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Local directory name\",\n      \"localized\": \"Nome directory locale\",\n      \"reload\": \"\",\n      \"hint\": \"Directory dove installare l'estensione, lascia vuoto per il valore predefinito\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refresh extension list\",\n      \"localized\": \"Aggiorna elenco estensioni\",\n      \"reload\": \"\",\n      \"hint\": \"Aggiorna l'elenco delle estensioni disponibili\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Update all installed\",\n      \"localized\": \"Aggiorna tutti gli installati\",\n      \"reload\": \"\",\n      \"hint\": \"Aggiorna le estensioni installate alla loro ultima versione disponibile\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Apply changes\",\n      \"localized\": \"Applica modifiche\",\n      \"reload\": \"\",\n      \"hint\": \"Applica tutte le modifiche e riavvia il server\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Uninstall\",\n      \"localized\": \"Disinstalla\",\n      \"reload\": \"\",\n      \"hint\": \"Disinstalla questa estensione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"User interface\",\n      \"localized\": \"Interfaccia utente\",\n      \"reload\": \"\",\n      \"hint\": \"Rivedi e imposta le preferenze dell'interfaccia utente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Set UI defaults\",\n      \"localized\": \"Imposta predefiniti UI\",\n      \"reload\": \"\",\n      \"hint\": \"Imposta i valori attuali come valori predefiniti per l'interfaccia utente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Benchmark\",\n      \"localized\": \"Benchmark\",\n      \"reload\": \"\",\n      \"hint\": \"Esegui benchmark\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models & Networks\",\n      \"localized\": \"Modelli e Reti\",\n      \"reload\": \"\",\n      \"hint\": \"Visualizza gli elenchi di tutti i modelli e le reti disponibili\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore UI defaults\",\n      \"localized\": \"Ripristina predefiniti UI\",\n      \"reload\": \"\",\n      \"hint\": \"Ripristina i valori predefiniti dell'interfaccia utente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer classes\",\n      \"localized\": \"Classi del Detailer\",\n      \"reload\": \"\",\n      \"hint\": \"Specifica le classi specifiche da usare se il modello di detailer selezionato è un modello multi-classe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer models\",\n      \"localized\": \"Modelli del Detailer\",\n      \"reload\": \"\",\n      \"hint\": \"Seleziona i modelli di rilevamento da utilizzare per il detailing\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer negative prompt\",\n      \"localized\": \"Prompt negativo del Detailer\",\n      \"reload\": \"\",\n      \"hint\": \"Usa un prompt negativo separato per il detailer. Se non presente, userà il prompt negativo primario\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer prompt\",\n      \"localized\": \"Prompt del Detailer\",\n      \"reload\": \"\",\n      \"hint\": \"Usa un prompt separato per il detailer. Se non presente, userà il prompt primario\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer steps\",\n      \"localized\": \"Passi del Detailer\",\n      \"reload\": \"\",\n      \"hint\": \"Numero di passi da eseguire per il processo del detailer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer strength\",\n      \"localized\": \"Forza del Detailer\",\n      \"reload\": \"\",\n      \"hint\": \"Forza di denoising del processo del detailer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer use model augment\",\n      \"localized\": \"Detailer: usa aumento modello\",\n      \"reload\": \"\",\n      \"hint\": \"Esegui i modelli di rilevamento del detailer con precisione extra\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max detected\",\n      \"localized\": \"Max rilevati\",\n      \"reload\": \"\",\n      \"hint\": \"Numero massimo di oggetti rilevati su cui eseguire il detailer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Edge blur\",\n      \"localized\": \"Sfocatura bordo\",\n      \"reload\": \"\",\n      \"hint\": \"Sfoca il bordo dell'area mascherata di questa percentuale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Edge padding\",\n      \"localized\": \"Padding bordo\",\n      \"reload\": \"\",\n      \"hint\": \"Espandi il bordo dell'area mascherata di questa percentuale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Min confidence\",\n      \"localized\": \"Confidenza minima\",\n      \"reload\": \"\",\n      \"hint\": \"Confidenza minima nell'elemento rilevato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max overlap\",\n      \"localized\": \"Sovrapposizione massima\",\n      \"reload\": \"\",\n      \"hint\": \"Massima sovrapposizione tra due elementi rilevati prima che uno venga scartato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Min size\",\n      \"localized\": \"Dimensione minima\",\n      \"reload\": \"\",\n      \"hint\": \"Dimensione minima dell'oggetto rilevato come percentuale dell'immagine totale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max size\",\n      \"localized\": \"Dimensione massima\",\n      \"reload\": \"\",\n      \"hint\": \"Dimensione massima dell'oggetto rilevato come percentuale dell'immagine totale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Image\",\n      \"localized\": \"Elabora Immagine\",\n      \"reload\": \"\",\n      \"hint\": \"Elabora una singola immagine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Batch\",\n      \"localized\": \"Elabora Batch\",\n      \"reload\": \"\",\n      \"hint\": \"Elabora un batch di immagini\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Folder\",\n      \"localized\": \"Elabora Cartella\",\n      \"reload\": \"\",\n      \"hint\": \"Elabora tutte le immagini in una cartella\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Current\",\n      \"localized\": \"Corrente\",\n      \"reload\": \"\",\n      \"hint\": \"Analizza i moduli all'interno del modello attualmente caricato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Merge\",\n      \"localized\": \"Unisci\",\n      \"reload\": \"\",\n      \"hint\": \"Unisci due o più modelli in un nuovo modello\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Modules\",\n      \"localized\": \"Moduli\",\n      \"reload\": \"\",\n      \"hint\": \"Unisci e/o sostituisci i moduli in un modello esistente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Validate\",\n      \"localized\": \"Valida\",\n      \"reload\": \"\",\n      \"hint\": \"Valida tutti i modelli locali\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CivitAI\",\n      \"localized\": \"CivitAI\",\n      \"reload\": \"\",\n      \"hint\": \"Cerca e scarica modelli da CivitAI\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scale by\",\n      \"localized\": \"Scala per\",\n      \"reload\": \"\",\n      \"hint\": \"Usa questa scheda per ridimensionare l'immagine/le immagini sorgente di un fattore scelto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scale to\",\n      \"localized\": \"Scala a\",\n      \"reload\": \"\",\n      \"hint\": \"Usa questa scheda per ridimensionare l'immagine/le immagini sorgente a una dimensione target scelta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Input directory\",\n      \"localized\": \"Directory di input\",\n      \"reload\": \"\",\n      \"hint\": \"Cartella dove si trovano le immagini che vuoi elaborare\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Output directory\",\n      \"localized\": \"Directory di output\",\n      \"reload\": \"\",\n      \"hint\": \"Cartella dove le immagini elaborate dovrebbero essere salvate\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show result images\",\n      \"localized\": \"Mostra immagini risultato\",\n      \"reload\": \"\",\n      \"hint\": \"Abilita per mostrare le immagini elaborate nel pannello immagini\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop to fit\",\n      \"localized\": \"Ritaglia per adattarsi\",\n      \"reload\": \"\",\n      \"hint\": \"Se le dimensioni della tua immagine sorgente (ad es. 512x510) deviano dalle dimensioni target (ad es. 1024x768) questa funzione adatterà la tua immagine ingrandita all'immagine della dimensione target. L'eccesso verrà ritagliato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine Upscaler\",\n      \"localized\": \"Rifinisci Upscaler\",\n      \"reload\": \"\",\n      \"hint\": \"Seleziona l'upscaler secondario da eseguire dopo l'upscaler iniziale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler 2 visibility\",\n      \"localized\": \"Visibilità Upscaler 2\",\n      \"reload\": \"\",\n      \"hint\": \"Forza dell'upscaler secondario\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Calculate hash for all models\",\n      \"localized\": \"Calcola hash per tutti i modelli\",\n      \"reload\": \"\",\n      \"hint\": \"Calcola l'hash per tutti i modelli disponibili, il che potrebbe richiedere molto tempo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Weights Clip\",\n      \"localized\": \"Clip Pesi\",\n      \"reload\": \"\",\n      \"hint\": \"Forza i pesi uniti a non essere più pesanti del modello originale, prevenendo il burn-in e i modelli eccessivamente saturi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ReBasin\",\n      \"localized\": \"ReBasin\",\n      \"reload\": \"\",\n      \"hint\": \"Esegue più unioni con permutazioni per mantenere più caratteristiche da entrambi i modelli\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Number of ReBasin Iterations\",\n      \"localized\": \"Numero di iterazioni ReBasin\",\n      \"reload\": \"\",\n      \"hint\": \"Numero di volte per unire e permutare il modello prima di salvare\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CPU\",\n      \"localized\": \"CPU\",\n      \"reload\": \"\",\n      \"hint\": \"Usa solo CPU e RAM: il più lento ma meno propenso a OOM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Shuffle\",\n      \"localized\": \"Mescola\",\n      \"reload\": \"\",\n      \"hint\": \"Carica il modello completo in RAM e calcola su VRAM: Meno accelerazione, suggerito per unioni SDXL\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"In Blocks\",\n      \"localized\": \"Blocchi In\",\n      \"reload\": \"\",\n      \"hint\": \"Blocchi di downsampling della UNet (12 valori per SD1.5, 9 valori per SDXL)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mid Block\",\n      \"localized\": \"Blocco Centrale\",\n      \"reload\": \"\",\n      \"hint\": \"Blocco centrale della UNet (1 valore)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Out Block\",\n      \"localized\": \"Blocchi Out\",\n      \"reload\": \"\",\n      \"hint\": \"Blocchi di upsampling della UNet (12 valori per SD1.5, 9 valori per SDXL)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Preset Interpolation Ratio\",\n      \"localized\": \"Rapporto di interpolazione preset\",\n      \"reload\": \"\",\n      \"hint\": \"Se sono selezionati due preset, interpola tra di essi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adapter\",\n      \"localized\": \"Adattatore\",\n      \"reload\": \"\",\n      \"hint\": \"Modello adattatore IP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Active ip adapters\",\n      \"localized\": \"Adattatori IP attivi\",\n      \"reload\": \"\",\n      \"hint\": \"Numero di adattatori IP attivi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Unload adapter\",\n      \"localized\": \"Scarica adattatore\",\n      \"reload\": \"\",\n      \"hint\": \"Scarica l'adattatore IP immediatamente dopo la generazione. Altrimenti l'adattatore IP rimarrà caricato per un uso più rapido nel prossimo processo di generazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop to portrait\",\n      \"localized\": \"Ritaglia a ritratto\",\n      \"reload\": \"\",\n      \"hint\": \"Ritaglia l'immagine di input solo a ritratto prima di usarla come input per l'adattatore IP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Layer options\",\n      \"localized\": \"Opzioni livelli\",\n      \"reload\": \"\",\n      \"hint\": \"Specifica manualmente le opzioni avanzate dei livelli dell'adattatore IP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"X values\",\n      \"localized\": \"Valori X\",\n      \"reload\": \"\",\n      \"hint\": \"Separa i valori per l'asse X usando le virgole\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Y values\",\n      \"localized\": \"Valori Y\",\n      \"reload\": \"\",\n      \"hint\": \"Separa i valori per l'asse Y usando le virgole\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Z values\",\n      \"localized\": \"Valori Z\",\n      \"reload\": \"\",\n      \"hint\": \"Separa i valori per l'asse Z usando le virgole\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Loops\",\n      \"localized\": \"Cicli\",\n      \"reload\": \"\",\n      \"hint\": \"Quante volte elaborare un'immagine. Ogni output viene utilizzato come input del ciclo successivo. Se impostato su 1, il comportamento sarà come se questo script non fosse stato utilizzato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Final denoising strength\",\n      \"localized\": \"Forza di denoising finale\",\n      \"reload\": \"\",\n      \"hint\": \"La forza di denoising per il ciclo finale di ogni immagine nel batch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoising strength curve\",\n      \"localized\": \"Curva forza di denoising\",\n      \"reload\": \"\",\n      \"hint\": \"La curva di denoising controlla la velocità di cambiamento della forza di denoising in ogni ciclo. Aggressivo: La maggior parte del cambiamento avverrà verso l'inizio dei cicli. Lineare: Il cambiamento sarà costante in tutti i cicli. Lento: La maggior parte del cambiamento avverrà verso la fine dei cicli\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Tile overlap\",\n      \"localized\": \"Sovrapposizione tile\",\n      \"reload\": \"\",\n      \"hint\": \"Per l'upscaling SD, quanta sovrapposizione in pixel dovrebbe esserci tra i tile. I tile si sovrappongono in modo che, quando vengono uniti di nuovo in un'unica immagine, non ci sia una giunzione chiaramente visibile\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Color to Mask\",\n      \"localized\": \"ACI: Colore a Maschera\",\n      \"reload\": \"\",\n      \"hint\": \"Scegli il colore che vuoi mascherare e su cui vuoi inpaint. Clicca sul colore nell'immagine per selezionarlo automaticamente.\\n Si consiglia di usare immagini come green screen per ottenere risultati precisi.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Color Tolerance\",\n      \"localized\": \"ACI: Tolleranza Colore\",\n      \"reload\": \"\",\n      \"hint\": \"Regola la tolleranza per includere colori simili nella maschera. Valori inferiori = maschera solo colori molto simili. Valori superiori = maschera una gamma più ampia di colori simili.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Mask Erode\",\n      \"localized\": \"ACI: Erode Maschera\",\n      \"reload\": \"\",\n      \"hint\": \"Regola il padding per applicare un offset interno alla maschera. (Valore consigliato = 2 per rimuovere i residui ai bordi)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Mask Blur\",\n      \"localized\": \"ACI: Sfocatura Maschera\",\n      \"reload\": \"\",\n      \"hint\": \"Regola la sfocatura per applicare una transizione fluida tra l'immagine e l'area inpainted. (Valore consigliato = 0 per la nitidezza)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Denoising Strength\",\n      \"localized\": \"ACI: Forza Denoising\",\n      \"reload\": \"\",\n      \"hint\": \"Cambia la Forza di Denoising per ottenere la quantità di inpaint desiderata.\"\n    }\n  ],\n  \"settings\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Apply settings\",\n      \"localized\": \"Applica impostazioni\",\n      \"reload\": \"\",\n      \"hint\": \"Salva le impostazioni attuali, si consiglia il riavvio del server\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Loading\",\n      \"localized\": \"Caricamento Modello\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni relative a come viene caricato il modello\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Options\",\n      \"localized\": \"Opzioni Modello\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni relative al comportamento di modelli specifici\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Offloading\",\n      \"localized\": \"Scarico Modello\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni relative allo scarico del modello e alla gestione della memoria\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Quantization\",\n      \"localized\": \"Quantizzazione Modello\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni relative alla quantizzazione del modello, utilizzata per ridurre l'utilizzo della memoria\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Metadata\",\n      \"localized\": \"Metadati Immagine\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni relative alla gestione dei metadati creati con le immagini generate\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Legacy Options\",\n      \"localized\": \"Opzioni Legacy\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni relative alle opzioni legacy - da non utilizzare\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restart server\",\n      \"localized\": \"Riavvia server\",\n      \"reload\": \"\",\n      \"hint\": \"Riavvia il server\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Shutdown server\",\n      \"localized\": \"Spegni server\",\n      \"reload\": \"\",\n      \"hint\": \"Spegni il server\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Preview theme\",\n      \"localized\": \"Anteprima tema\",\n      \"reload\": \"\",\n      \"hint\": \"Mostra l'anteprima del tema\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore defaults\",\n      \"localized\": \"Ripristina predefinite\",\n      \"reload\": \"\",\n      \"hint\": \"Ripristina le impostazioni predefinite del server\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Unload model\",\n      \"localized\": \"Scarica modello\",\n      \"reload\": \"\",\n      \"hint\": \"Scarica il modello attualmente caricato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reload model\",\n      \"localized\": \"Ricarica modello\",\n      \"reload\": \"\",\n      \"hint\": \"Ricarica il modello attualmente selezionato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models & Loading\",\n      \"localized\": \"Modelli e Caricamento\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni relative ai modelli base, al backend primario e al comportamento di caricamento del modello\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variational Auto Encoder\",\n      \"localized\": \"Autoencoder Variazionale\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni relative all'Autoencoder Variazionale e al processo di decodifica dell'immagine durante la generazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Text encoder\",\n      \"localized\": \"Encoder di testo\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni relative all'encoder di testo e all'elaborazione della codifica del prompt durante la generazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Compute Settings\",\n      \"localized\": \"Impostazioni di Calcolo\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni relative alla precisione di calcolo, all'attenzione incrociata e alle ottimizzazioni per le piattaforme di calcolo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Backend Settings\",\n      \"localized\": \"Impostazioni Backend\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni relative ai backend di calcolo: torch, onnx e olive\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Quantization Settings\",\n      \"localized\": \"Impostazioni di Quantizzazione\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni relative alla quantizzazione del modello\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Pipeline modifiers\",\n      \"localized\": \"Modificatori Pipeline\",\n      \"reload\": \"\",\n      \"hint\": \"Funzionalità aggiuntive che possono essere abilitate durante la generazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model compile\",\n      \"localized\": \"Compilazione modello\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni relative ai diversi metodi di compilazione del modello\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System Paths\",\n      \"localized\": \"Percorsi di Sistema\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni relative alla posizione delle varie directory del modello\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Options\",\n      \"localized\": \"Opzioni Immagine\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni relative al formato immagine, ai metadati e alle griglie di immagini\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Paths\",\n      \"localized\": \"Percorsi Immagine\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni relative ai nomi file delle immagini e alle directory di output\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Live Previews\",\n      \"localized\": \"Anteprime Live\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni relative alle anteprime live, notifica audio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sampler Settings\",\n      \"localized\": \"Impostazioni Sampler\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni relative alla selezione e configurazione del campionatore, e alla configurazione del campionatore specifico per il diffusore\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Postprocessing\",\n      \"localized\": \"Post-elaborazione\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni relative all'elaborazione post-generazione dell'immagine, al ripristino del viso e all'upscaling\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control Options\",\n      \"localized\": \"Opzioni di Controllo\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni relative alla scheda Controllo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Huggingface\",\n      \"localized\": \"Huggingface\",\n      \"reload\": \"\",\n      \"hint\": \"Impostazioni relative all'accesso a Huggingface\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show all pages\",\n      \"localized\": \"Mostra tutte le pagine\",\n      \"reload\": \"\",\n      \"hint\": \"Mostra tutte le pagine delle impostazioni\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Base model\",\n      \"localized\": \"Modello base\",\n      \"reload\": \"\",\n      \"hint\": \"Modello principale utilizzato per tutte le operazioni\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner model\",\n      \"localized\": \"Modello Refiner\",\n      \"reload\": \"\",\n      \"hint\": \"Modello Refiner utilizzato per operazioni di secondo passaggio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Cached models\",\n      \"localized\": \"Modelli in cache\",\n      \"reload\": \"\",\n      \"hint\": \"Il numero di modelli da memorizzare nella RAM per un accesso rapido\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE model\",\n      \"localized\": \"Modello VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Il VAE aiuta con i dettagli fini nell'immagine finale e potrebbe anche alterare i colori\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model load using streams\",\n      \"localized\": \"Caricamento modello tramite stream\",\n      \"reload\": \"\",\n      \"hint\": \"Quando si caricano i modelli, tenta il caricamento in streaming ottimizzato per archiviazione lenta o di rete\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xFormers\",\n      \"localized\": \"xFormers\",\n      \"reload\": \"\",\n      \"hint\": \"Ottimizzazione della memoria. Non deterministico (risultati diversi ogni volta)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scaled-Dot-Product\",\n      \"localized\": \"Scaled-Dot-Product\",\n      \"reload\": \"\",\n      \"hint\": \"Ottimizzazione della memoria. Non deterministico a meno che l'attenzione della memoria SDP non sia disabilitata.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt padding\",\n      \"localized\": \"Padding del prompt\",\n      \"reload\": \"\",\n      \"hint\": \"Aumenta la coerenza aggiungendo padding dall'ultima virgola entro n token quando si usano più di 75 token\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Original\",\n      \"localized\": \"Originale\",\n      \"reload\": \"\",\n      \"hint\": \"Backend LDM originale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Autocast\",\n      \"localized\": \"Autocast\",\n      \"reload\": \"\",\n      \"hint\": \"Determina automaticamente la precisione durante l'esecuzione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full\",\n      \"localized\": \"Completa\",\n      \"reload\": \"\",\n      \"hint\": \"Usa sempre la precisione completa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"FP32\",\n      \"localized\": \"FP32\",\n      \"reload\": \"\",\n      \"hint\": \"Usa la precisione in virgola mobile a 32 bit per i calcoli\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"FP16\",\n      \"localized\": \"FP16\",\n      \"reload\": \"\",\n      \"hint\": \"Usa la precisione in virgola mobile a 16 bit per i calcoli\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"BF16\",\n      \"localized\": \"BF16\",\n      \"reload\": \"\",\n      \"hint\": \"Usa la precisione in virgola mobile a 16 bit modificata per i calcoli\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full precision (--no-half-vae)\",\n      \"localized\": \"Precisione completa (--no-half-vae)\",\n      \"reload\": \"\",\n      \"hint\": \"Utilizza FP32 per il VAE. Potrebbe produrre risultati migliori ma con maggiore VRAM e generazione più lenta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Force full precision (--no-half)\",\n      \"localized\": \"Forza precisione completa (--no-half)\",\n      \"reload\": \"\",\n      \"hint\": \"Utilizza FP32 per il modello. Potrebbe produrre risultati migliori ma con maggiore VRAM e generazione più lenta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upcast sampling\",\n      \"localized\": \"Campionamento upcast\",\n      \"reload\": \"\",\n      \"hint\": \"Di solito produce risultati simili a --no-half con prestazioni migliori e un minore utilizzo di memoria\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Attempt VAE roll back for NaN values\",\n      \"localized\": \"Tenta il rollback VAE per valori NaN\",\n      \"reload\": \"\",\n      \"hint\": \"Richiede Torch 2.1 e controllo NaN abilitato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive use FP16 on optimization\",\n      \"localized\": \"Olive usa FP16 sull'ottimizzazione\",\n      \"reload\": \"\",\n      \"hint\": \"Utilizza la precisione in virgola mobile a 16 bit per il modello di output del processo di ottimizzazione Olive. Utilizza la precisione in virgola mobile a 32 bit se disabilitato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive force FP32 for VAE Encoder\",\n      \"localized\": \"Olive forza FP32 per Encoder VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Utilizza la precisione in virgola mobile a 32 bit per l'Encoder VAE del modello di output. Questo sovrascrive l'opzione 'usa FP16 sull'ottimizzazione'. Se stai ottenendo valori NaN o immagini nere vuote da Img2Img, abilita questa opzione e rimuovi la cache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive use static dimensions\",\n      \"localized\": \"Olive usa dimensioni statiche\",\n      \"reload\": \"\",\n      \"hint\": \"Rende l'inferenza con i modelli ottimizzati da Olive molto più veloce. (OrtTransformersOptimization)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive cache optimized models\",\n      \"localized\": \"Olive memorizza in cache i modelli ottimizzati\",\n      \"reload\": \"\",\n      \"hint\": \"Salva i modelli elaborati da Olive come cache. Puoi gestirli nella scheda ONNX\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"File format\",\n      \"localized\": \"Formato file\",\n      \"reload\": \"\",\n      \"hint\": \"Seleziona il formato file per le immagini\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Include metadata\",\n      \"localized\": \"Includi metadati\",\n      \"reload\": \"\",\n      \"hint\": \"Salva i parametri di creazione dell'immagine come tag di metadati all'interno del file immagine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Images filename pattern\",\n      \"localized\": \"Pattern nome file immagini\",\n      \"reload\": \"\",\n      \"hint\": \"Utilizza i seguenti tag per definire come vengono scelti i nomi dei file per le immagini:<br><pre>seq, uuid<br>date, datetime, job_timestamp<br>generation_number, batch_number<br>model, model_shortname<br>model_hash, model_name<br>sampler, seed, steps, cfg<br>clip_skip, denoising<br>hasprompt, prompt, styles<br>prompt_hash, prompt_no_styles<br>prompt_spaces, prompt_words<br>height, width, image_hash<br></pre>\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Row count\",\n      \"localized\": \"Conteggio righe\",\n      \"reload\": \"\",\n      \"hint\": \"Usa -1 per il rilevamento automatico e 0 per renderlo uguale alla dimensione del batch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Directory name pattern\",\n      \"localized\": \"Pattern nome directory\",\n      \"reload\": \"\",\n      \"hint\": \"Utilizza i seguenti tag per definire come vengono scelte le sottodirectory per immagini e griglie: [steps], [cfg],[prompt_hash], [prompt], [prompt_no_styles], [prompt_spaces], [width], [height], [styles], [sampler], [seed], [model_hash], [model_name], [prompt_words], [date], [datetime], [datetime<Format>], [datetime<Format><Time Zone>], [job_timestamp]; lascia vuoto per il default\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpainting conditioning mask strength\",\n      \"localized\": \"Forza maschera di condizionamento Inpainting\",\n      \"reload\": \"\",\n      \"hint\": \"Determina quanto intensamente mascherare l'immagine originale per inpainting e img2img. 1.0 significa completamente mascherato (predefinito). 0.0 significa un condizionamento completamente smascherato. Valori più bassi aiuteranno a preservare la composizione generale dell'immagine, ma avranno difficoltà con grandi cambiamenti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Clip skip\",\n      \"localized\": \"Clip skip\",\n      \"reload\": \"\",\n      \"hint\": \"Parametro di interruzione anticipata per il modello CLIP; 1 significa interruzione all'ultimo strato come al solito, 2 significa interruzione al penultimo strato, ecc\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Images folder\",\n      \"localized\": \"Cartella immagini\",\n      \"reload\": \"\",\n      \"hint\": \"Se vuoto, il valore predefinito sono le tre directory sottostanti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Grids folder\",\n      \"localized\": \"Cartella griglie\",\n      \"reload\": \"\",\n      \"hint\": \"Se vuoto, il valore predefinito sono le due directory sottostanti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Quicksettings list\",\n      \"localized\": \"Lista impostazioni rapide\",\n      \"reload\": \"\",\n      \"hint\": \"Elenco dei nomi delle impostazioni, separati da virgole, per le impostazioni che dovrebbero andare nella barra di accesso rapido in alto invece che nella scheda delle impostazioni\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Live preview display period\",\n      \"localized\": \"Periodo di visualizzazione anteprima live\",\n      \"reload\": \"\",\n      \"hint\": \"Richiedi l'immagine di anteprima ogni n passi, imposta a 0 per disabilitare\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Approximate\",\n      \"localized\": \"Approssimato\",\n      \"reload\": \"\",\n      \"hint\": \"Approssimazione economica della rete neurale. Molto veloce rispetto al VAE, ma produce immagini con risoluzione orizzontale/verticale 4 volte inferiore e qualità inferiore\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Simple\",\n      \"localized\": \"Semplice\",\n      \"reload\": \"\",\n      \"hint\": \"Approssimazione molto economica. Molto veloce rispetto al VAE, ma produce immagini con risoluzione orizzontale/verticale 8 volte inferiore e qualità estremamente bassa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Progress update period\",\n      \"localized\": \"Periodo di aggiornamento progresso\",\n      \"reload\": \"\",\n      \"hint\": \"Periodo di aggiornamento per la barra di progresso dell'interfaccia utente e i controlli di anteprima, in millisecondi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Euler a\",\n      \"localized\": \"Euler a\",\n      \"reload\": \"\",\n      \"hint\": \"Euler Ancestral - molto creativo, ogni passo può generare un'immagine completamente diversa a seconda del conteggio dei passi; impostare i passi oltre 30-40 non aiuta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"DDIM\",\n      \"localized\": \"DDIM\",\n      \"reload\": \"\",\n      \"hint\": \"Modelli Impliciti di Diffusione Denoising - ottimi per l'inpainting\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"UniPC\",\n      \"localized\": \"UniPC\",\n      \"reload\": \"\",\n      \"hint\": \"Framework Unificato Predittore-Correttore per il Campionamento Veloce dei Modelli di Diffusione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sigma negative guidance minimum\",\n      \"localized\": \"Guida negativa Sigma minima\",\n      \"reload\": \"\",\n      \"hint\": \"Salta il prompt negativo per alcuni passi quando l'immagine è quasi pronta, 0=disabilita\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler tile size\",\n      \"localized\": \"Dimensione tile upscaler\",\n      \"reload\": \"\",\n      \"hint\": \"0 = nessun tiling\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler tile overlap\",\n      \"localized\": \"Sovrapposizione tile upscaler\",\n      \"reload\": \"\",\n      \"hint\": \"Valori bassi = cucitura visibile\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"GFPGAN\",\n      \"localized\": \"GFPGAN\",\n      \"reload\": \"\",\n      \"hint\": \"Ripristina i volti a bassa qualità utilizzando la rete neurale GFPGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CodeFormer\",\n      \"localized\": \"CodeFormer\",\n      \"reload\": \"\",\n      \"hint\": \"Ripristina i volti a bassa qualità utilizzando la rete neurale Codeformer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CodeFormer weight parameter\",\n      \"localized\": \"Parametro peso CodeFormer\",\n      \"reload\": \"\",\n      \"hint\": \"0 = effetto massimo; 1 = effetto minimo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ToMe token merging ratio\",\n      \"localized\": \"Rapporto di fusione token ToMe\",\n      \"reload\": \"\",\n      \"hint\": \"Abilita la fusione di token ridondanti tramite tomesd per miglioramenti di velocità e memoria, 0=disabilitato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Todo token merging ratio\",\n      \"localized\": \"Rapporto di fusione token Todo\",\n      \"reload\": \"\",\n      \"hint\": \"Abilita la fusione di token ridondanti tramite todo per miglioramenti di velocità e memoria, 0=disabilitato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model pipeline\",\n      \"localized\": \"Pipeline modello\",\n      \"reload\": \"\",\n      \"hint\": \"Se il rilevamento automatico non rileva il modello automaticamente, seleziona il tipo di modello prima di caricare un modello\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE slicing\",\n      \"localized\": \"Slicing VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Decodifica i latenti batch un'immagine alla volta con VRAM limitata. Piccolo aumento delle prestazioni nella decodifica VAE su batch di più immagini\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE tiling\",\n      \"localized\": \"Tiling VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Divide le immagini di grandi dimensioni in tile sovrapposte con VRAM limitata. Comporta un lieve aumento del tempo di elaborazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Dynamic attention BMM\",\n      \"localized\": \"Attenzione dinamica BMM\",\n      \"reload\": \"\",\n      \"hint\": \"Esegue il calcolo dell'attenzione a passi invece che tutto in una volta. Tempi di inferenza più lenti, ma utilizzo di memoria notevolmente ridotto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX Execution Provider\",\n      \"localized\": \"Provider di Esecuzione ONNX\",\n      \"reload\": \"\",\n      \"hint\": \"Provider di Esecuzione ONNX\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX allow fallback to CPU\",\n      \"localized\": \"ONNX consente il fallback alla CPU\",\n      \"reload\": \"\",\n      \"hint\": \"Consente il fallback alla CPU quando il provider di esecuzione selezionato è fallito\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX cache converted models\",\n      \"localized\": \"ONNX memorizza in cache i modelli convertiti\",\n      \"reload\": \"\",\n      \"hint\": \"Salva i modelli convertiti in formato ONNX come cache. Puoi gestirli nella scheda ONNX\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX unload base model when processing refiner\",\n      \"localized\": \"ONNX scarica il modello base durante l'elaborazione del refiner\",\n      \"reload\": \"\",\n      \"hint\": \"Scarica il modello base quando il refiner viene convertito/ottimizzato/elaborato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inference-mode\",\n      \"localized\": \"Modalità inferenza\",\n      \"reload\": \"\",\n      \"hint\": \"Usa torch.inference_mode\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"no-grad\",\n      \"localized\": \"no-grad\",\n      \"reload\": \"\",\n      \"hint\": \"Usa torch.no_grad\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model compile precompile\",\n      \"localized\": \"Precompilazione del modello\",\n      \"reload\": \"\",\n      \"hint\": \"Esegui la compilazione del modello immediatamente al caricamento del modello invece che al primo utilizzo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Use zeros for prompt padding\",\n      \"localized\": \"Usa zeri per il padding del prompt\",\n      \"reload\": \"\",\n      \"hint\": \"Forza un tensore completamente zero quando il prompt è vuoto per rimuovere qualsiasi rumore residuo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Include invisible watermark\",\n      \"localized\": \"Includi filigrana invisibile\",\n      \"reload\": \"\",\n      \"hint\": \"Aggiungi una filigrana invisibile all'immagine alterando alcuni valori di pixel\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invisible watermark string\",\n      \"localized\": \"Stringa filigrana invisibile\",\n      \"reload\": \"\",\n      \"hint\": \"Stringa di filigrana da aggiungere all'immagine. Mantienila molto corta per evitare la corruzione dell'immagine.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show log view\",\n      \"localized\": \"mostra vista log\",\n      \"reload\": \"\",\n      \"hint\": \"Mostra la vista log nella parte inferiore della finestra principale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Log view update period\",\n      \"localized\": \"Periodo aggiornamento vista log\",\n      \"reload\": \"\",\n      \"hint\": \"Periodo di aggiornamento della vista log, in millisecondi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"PAG layer names\",\n      \"localized\": \"Nomi layer PAG\",\n      \"reload\": \"\",\n      \"hint\": \"Elenco di layer separati da spazi<br>Disponibili: d[0-5], m[0], u[0-8]<br>Predefinito: m0\"\n    }\n  ],\n  \"missing\": [\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage\",\n      \"localized\": \"1° stadio\",\n      \"reload\": \"\",\n      \"hint\": \"1° stadio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage backbone\",\n      \"localized\": \"backbone del 1° stadio\",\n      \"reload\": \"\",\n      \"hint\": \"backbone del 1° stadio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage skip\",\n      \"localized\": \"salto 1° stadio\",\n      \"reload\": \"\",\n      \"hint\": \"salto 1° stadio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd restart step\",\n      \"localized\": \"2° passo di riavvio\",\n      \"reload\": \"\",\n      \"hint\": \"2° passo di riavvio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd scale\",\n      \"localized\": \"2a scala\",\n      \"reload\": \"\",\n      \"hint\": \"2a scala\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage\",\n      \"localized\": \"2° stadio\",\n      \"reload\": \"\",\n      \"hint\": \"2° stadio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage backbone\",\n      \"localized\": \"backbone del 2° stadio\",\n      \"reload\": \"\",\n      \"hint\": \"backbone del 2° stadio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage skip\",\n      \"localized\": \"salto 2° stadio\",\n      \"reload\": \"\",\n      \"hint\": \"salto 2° stadio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd restart step\",\n      \"localized\": \"3° passo di riavvio\",\n      \"reload\": \"\",\n      \"hint\": \"3° passo di riavvio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd scale\",\n      \"localized\": \"3a scala\",\n      \"reload\": \"\",\n      \"hint\": \"3a scala\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd stage\",\n      \"localized\": \"3° stadio\",\n      \"reload\": \"\",\n      \"hint\": \"3° stadio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th restart step\",\n      \"localized\": \"4° passo di riavvio\",\n      \"reload\": \"\",\n      \"hint\": \"4° passo di riavvio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th scale\",\n      \"localized\": \"4a scala\",\n      \"reload\": \"\",\n      \"hint\": \"4a scala\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th stage\",\n      \"localized\": \"4° stadio\",\n      \"reload\": \"\",\n      \"hint\": \"4° stadio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"a1111\",\n      \"localized\": \"a1111\",\n      \"reload\": \"\",\n      \"hint\": \"a1111\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"accuracy\",\n      \"localized\": \"precisione\",\n      \"reload\": \"\",\n      \"hint\": \"precisione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aci: mask dilate\",\n      \"localized\": \"aci: dilata maschera\",\n      \"reload\": \"\",\n      \"hint\": \"aci: dilata maschera\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"active\",\n      \"localized\": \"attivo\",\n      \"reload\": \"\",\n      \"hint\": \"attivo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adain\",\n      \"localized\": \"adain\",\n      \"reload\": \"\",\n      \"hint\": \"adain\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 1\",\n      \"localized\": \"adattatore 1\",\n      \"reload\": \"\",\n      \"hint\": \"adattatore 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 2\",\n      \"localized\": \"adattatore 2\",\n      \"reload\": \"\",\n      \"hint\": \"adattatore 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 3\",\n      \"localized\": \"adattatore 3\",\n      \"reload\": \"\",\n      \"hint\": \"adattatore 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 4\",\n      \"localized\": \"adattatore 4\",\n      \"reload\": \"\",\n      \"hint\": \"adattatore 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adaptive restore\",\n      \"localized\": \"ripristino adattivo\",\n      \"reload\": \"\",\n      \"hint\": \"ripristino adattivo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"add text info\",\n      \"localized\": \"aggiungi info testo\",\n      \"reload\": \"\",\n      \"hint\": \"aggiungi info testo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"add time info\",\n      \"localized\": \"aggiungi info tempo\",\n      \"reload\": \"\",\n      \"hint\": \"aggiungi info tempo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"additional image browser folders\",\n      \"localized\": \"cartelle aggiuntive browser immagini\",\n      \"reload\": \"\",\n      \"hint\": \"cartelle aggiuntive browser immagini\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"additional postprocessing operations\",\n      \"localized\": \"operazioni aggiuntive di post-elaborazione\",\n      \"reload\": \"\",\n      \"hint\": \"operazioni aggiuntive di post-elaborazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"advanced options\",\n      \"localized\": \"opzioni avanzate\",\n      \"reload\": \"\",\n      \"hint\": \"opzioni avanzate\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"after\",\n      \"localized\": \"dopo\",\n      \"reload\": \"\",\n      \"hint\": \"dopo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aggressive at step\",\n      \"localized\": \"aggressivo al passo\",\n      \"reload\": \"\",\n      \"hint\": \"aggressivo al passo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alias\",\n      \"localized\": \"alias\",\n      \"reload\": \"\",\n      \"hint\": \"alias\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"all\",\n      \"localized\": \"tutto\",\n      \"reload\": \"\",\n      \"hint\": \"tutto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"allowed aspect ratios\",\n      \"localized\": \"rapporti d'aspetto consentiti\",\n      \"reload\": \"\",\n      \"hint\": \"rapporti d'aspetto consentiti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha\",\n      \"localized\": \"alfa\",\n      \"reload\": \"\",\n      \"hint\": \"alfa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha block weight preset\",\n      \"localized\": \"preset peso blocco alfa\",\n      \"reload\": \"\",\n      \"hint\": \"preset peso blocco alfa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha matting\",\n      \"localized\": \"matting alfa\",\n      \"reload\": \"\",\n      \"hint\": \"matting alfa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha preset\",\n      \"localized\": \"preset alfa\",\n      \"reload\": \"\",\n      \"hint\": \"preset alfa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha ratio\",\n      \"localized\": \"rapporto alfa\",\n      \"reload\": \"\",\n      \"hint\": \"rapporto alfa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"amplify lut\",\n      \"localized\": \"amplifica lut\",\n      \"reload\": \"\",\n      \"hint\": \"amplifica lut\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"analyze\",\n      \"localized\": \"analizza\",\n      \"reload\": \"\",\n      \"hint\": \"analizza\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"anchor settings\",\n      \"localized\": \"impostazioni ancora\",\n      \"reload\": \"\",\n      \"hint\": \"impostazioni ancora\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"animateddiff\",\n      \"localized\": \"animateddiff\",\n      \"reload\": \"\",\n      \"hint\": \"animateddiff\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"answer\",\n      \"localized\": \"risposta\",\n      \"reload\": \"\",\n      \"hint\": \"risposta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aot_ts_nvfuser\",\n      \"localized\": \"aot_ts_nvfuser\",\n      \"reload\": \"\",\n      \"hint\": \"aot_ts_nvfuser\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"appearance\",\n      \"localized\": \"aspetto\",\n      \"reload\": \"\",\n      \"hint\": \"aspetto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append caption files\",\n      \"localized\": \"aggiungi file didascalia\",\n      \"reload\": \"\",\n      \"hint\": \"aggiungi file didascalia\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append image info json file\",\n      \"localized\": \"aggiungi file json info immagine\",\n      \"reload\": \"\",\n      \"hint\": \"aggiungi file json info immagine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append interrogated prompt at each iteration\",\n      \"localized\": \"aggiungi prompt interrogato ad ogni iterazione\",\n      \"reload\": \"\",\n      \"hint\": \"aggiungi prompt interrogato ad ogni iterazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply color correction\",\n      \"localized\": \"applica correzione colore\",\n      \"reload\": \"\",\n      \"hint\": \"applica correzione colore\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply filter\",\n      \"localized\": \"applica filtro\",\n      \"reload\": \"\",\n      \"hint\": \"applica filtro\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply linfusion distillation on load\",\n      \"localized\": \"applica distillazione linfusion al caricamento\",\n      \"reload\": \"\",\n      \"hint\": \"applica distillazione linfusion al caricamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply mask as overlay\",\n      \"localized\": \"applica maschera come sovrapposizione\",\n      \"reload\": \"\",\n      \"hint\": \"applica maschera come sovrapposizione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply msw-msa\",\n      \"localized\": \"applica msw-msa\",\n      \"reload\": \"\",\n      \"hint\": \"applica msw-msa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply rau-net\",\n      \"localized\": \"applica rau-net\",\n      \"reload\": \"\",\n      \"hint\": \"applica rau-net\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply to model\",\n      \"localized\": \"applica al modello\",\n      \"reload\": \"\",\n      \"hint\": \"applica al modello\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"artists\",\n      \"localized\": \"artisti\",\n      \"reload\": \"\",\n      \"hint\": \"artisti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"atiadlxx (amd only)\",\n      \"localized\": \"atiadlxx (solo amd)\",\n      \"reload\": \"\",\n      \"hint\": \"atiadlxx (solo amd)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention\",\n      \"localized\": \"attenzione\",\n      \"reload\": \"\",\n      \"hint\": \"attenzione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention adain\",\n      \"localized\": \"attenzione adain\",\n      \"reload\": \"\",\n      \"hint\": \"attenzione adain\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention cache enabled\",\n      \"localized\": \"cache attenzione abilitata\",\n      \"reload\": \"\",\n      \"hint\": \"cache attenzione abilitata\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention chunking threshold\",\n      \"localized\": \"soglia di chunking attenzione\",\n      \"reload\": \"\",\n      \"hint\": \"soglia di chunking attenzione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention kv chunk size\",\n      \"localized\": \"dimensione chunk kv attenzione\",\n      \"reload\": \"\",\n      \"hint\": \"dimensione chunk kv attenzione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention query chunk size\",\n      \"localized\": \"dimensione chunk query attenzione\",\n      \"reload\": \"\",\n      \"hint\": \"dimensione chunk query attenzione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto\",\n      \"localized\": \"automatico\",\n      \"reload\": \"\",\n      \"hint\": \"automatico\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto apply\",\n      \"localized\": \"applica automaticamente\",\n      \"reload\": \"\",\n      \"hint\": \"applica automaticamente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-convert sd15 embeddings to sdxl\",\n      \"localized\": \"riconverti automaticamente embedding sd15 in sdxl\",\n      \"reload\": \"\",\n      \"hint\": \"riconverti automaticamente embedding sd15 in sdxl\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-mask\",\n      \"localized\": \"maschera automatica\",\n      \"reload\": \"\",\n      \"hint\": \"maschera automatica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-segment\",\n      \"localized\": \"segmentazione automatica\",\n      \"reload\": \"\",\n      \"hint\": \"segmentazione automatica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"autolaunch browser upon startup\",\n      \"localized\": \"avvia automaticamente il browser all'avvio\",\n      \"reload\": \"\",\n      \"hint\": \"avvia automaticamente il browser all'avvio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"automatically determine rank\",\n      \"localized\": \"determina automaticamente il rango\",\n      \"reload\": \"\",\n      \"hint\": \"determina automaticamente il rango\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"autorank ratio\",\n      \"localized\": \"rapporto autorango\",\n      \"reload\": \"\",\n      \"hint\": \"rapporto autorango\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"available networks\",\n      \"localized\": \"reti disponibili\",\n      \"reload\": \"\",\n      \"hint\": \"reti disponibili\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"backend\",\n      \"localized\": \"backend\",\n      \"reload\": \"\",\n      \"hint\": \"backend\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"backend storage\",\n      \"localized\": \"archiviazione backend\",\n      \"reload\": \"\",\n      \"hint\": \"archiviazione backend\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"background threshold\",\n      \"localized\": \"soglia sfondo\",\n      \"reload\": \"\",\n      \"hint\": \"soglia sfondo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced\",\n      \"localized\": \"bilanciato\",\n      \"reload\": \"\",\n      \"hint\": \"bilanciato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload cpu high watermark\",\n      \"localized\": \"watermark superiore cpu offload bilanciato\",\n      \"reload\": \"\",\n      \"hint\": \"watermark superiore cpu offload bilanciato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload gpu high watermark\",\n      \"localized\": \"watermark superiore gpu offload bilanciato\",\n      \"reload\": \"\",\n      \"hint\": \"watermark superiore gpu offload bilanciato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload gpu low watermark\",\n      \"localized\": \"watermark inferiore gpu offload bilanciato\",\n      \"reload\": \"\",\n      \"hint\": \"watermark inferiore gpu offload bilanciato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"base\",\n      \"localized\": \"base\",\n      \"reload\": \"\",\n      \"hint\": \"base\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch caption\",\n      \"localized\": \"didascalia batch\",\n      \"reload\": \"\",\n      \"hint\": \"didascalia batch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch input directory\",\n      \"localized\": \"directory input batch\",\n      \"reload\": \"\",\n      \"hint\": \"directory input batch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch interogate\",\n      \"localized\": \"interrogazione batch\",\n      \"reload\": \"\",\n      \"hint\": \"interrogazione batch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch interrogate\",\n      \"localized\": \"interrogazione batch\",\n      \"reload\": \"\",\n      \"hint\": \"interrogazione batch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch mask directory\",\n      \"localized\": \"directory maschera batch\",\n      \"reload\": \"\",\n      \"hint\": \"directory maschera batch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch matrix-matrix\",\n      \"localized\": \"matrice-matrice batch\",\n      \"reload\": \"\",\n      \"hint\": \"matrice-matrice batch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch mode uses sequential seeds\",\n      \"localized\": \"la modalità batch usa seed sequenziali\",\n      \"reload\": \"\",\n      \"hint\": \"la modalità batch usa seed sequenziali\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch output directory\",\n      \"localized\": \"directory output batch\",\n      \"reload\": \"\",\n      \"hint\": \"directory output batch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch uses original name\",\n      \"localized\": \"il batch usa il nome originale\",\n      \"reload\": \"\",\n      \"hint\": \"il batch usa il nome originale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bdia ddim\",\n      \"localized\": \"bdia ddim\",\n      \"reload\": \"\",\n      \"hint\": \"bdia ddim\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"before\",\n      \"localized\": \"prima\",\n      \"reload\": \"\",\n      \"hint\": \"prima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"benchmark level\",\n      \"localized\": \"livello benchmark\",\n      \"reload\": \"\",\n      \"hint\": \"livello benchmark\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"benchmark steps\",\n      \"localized\": \"passi benchmark\",\n      \"reload\": \"\",\n      \"hint\": \"passi benchmark\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta block weight preset\",\n      \"localized\": \"preset peso blocco beta\",\n      \"reload\": \"\",\n      \"hint\": \"preset peso blocco beta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta end\",\n      \"localized\": \"fine beta\",\n      \"reload\": \"\",\n      \"hint\": \"fine beta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta ratio\",\n      \"localized\": \"rapporto beta\",\n      \"reload\": \"\",\n      \"hint\": \"rapporto beta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta schedule\",\n      \"localized\": \"programmazione beta\",\n      \"reload\": \"\",\n      \"hint\": \"programmazione beta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta start\",\n      \"localized\": \"inizio beta\",\n      \"reload\": \"\",\n      \"hint\": \"inizio beta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bh1\",\n      \"localized\": \"bh1\",\n      \"reload\": \"\",\n      \"hint\": \"bh1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bh2\",\n      \"localized\": \"bh2\",\n      \"reload\": \"\",\n      \"hint\": \"bh2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"block\",\n      \"localized\": \"blocco\",\n      \"reload\": \"\",\n      \"hint\": \"blocco\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"block skip range\",\n      \"localized\": \"intervallo di salto blocco\",\n      \"reload\": \"\",\n      \"hint\": \"intervallo di salto blocco\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"blur\",\n      \"localized\": \"sfocatura\",\n      \"reload\": \"\",\n      \"hint\": \"sfocatura\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"body\",\n      \"localized\": \"corpo\",\n      \"reload\": \"\",\n      \"hint\": \"corpo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"boost\",\n      \"localized\": \"boost\",\n      \"reload\": \"\",\n      \"hint\": \"boost\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"brightness\",\n      \"localized\": \"luminosità\",\n      \"reload\": \"\",\n      \"hint\": \"luminosità\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cache model\",\n      \"localized\": \"modello in cache\",\n      \"reload\": \"\",\n      \"hint\": \"modello in cache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cache text encoder results\",\n      \"localized\": \"risultati codificatore testo in cache\",\n      \"reload\": \"\",\n      \"hint\": \"risultati codificatore testo in cache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"canny\",\n      \"localized\": \"canny\",\n      \"reload\": \"\",\n      \"hint\": \"canny\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"caption\",\n      \"localized\": \"didascalia\",\n      \"reload\": \"\",\n      \"hint\": \"didascalia\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"caption model\",\n      \"localized\": \"modello di didascalia\",\n      \"reload\": \"\",\n      \"hint\": \"modello di didascalia\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"center\",\n      \"localized\": \"centro\",\n      \"reload\": \"\",\n      \"hint\": \"centro\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change log\",\n      \"localized\": \"registro modifiche\",\n      \"reload\": \"\",\n      \"hint\": \"registro modifiche\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change model\",\n      \"localized\": \"cambia modello\",\n      \"reload\": \"\",\n      \"hint\": \"cambia modello\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change rate\",\n      \"localized\": \"tasso di cambiamento\",\n      \"reload\": \"\",\n      \"hint\": \"tasso di cambiamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change reference\",\n      \"localized\": \"cambia riferimento\",\n      \"reload\": \"\",\n      \"hint\": \"cambia riferimento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change refiner\",\n      \"localized\": \"cambia rifinitore\",\n      \"reload\": \"\",\n      \"hint\": \"cambia rifinitore\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change vae\",\n      \"localized\": \"cambia VAE\",\n      \"reload\": \"\",\n      \"hint\": \"cambia VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"channels last\",\n      \"localized\": \"canali per ultimi\",\n      \"reload\": \"\",\n      \"hint\": \"canali per ultimi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"check alternative hash\",\n      \"localized\": \"controlla hash alternativo\",\n      \"reload\": \"\",\n      \"hint\": \"controlla hash alternativo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"check for updates\",\n      \"localized\": \"controlla aggiornamenti\",\n      \"reload\": \"\",\n      \"hint\": \"controlla aggiornamenti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"check status\",\n      \"localized\": \"controlla stato\",\n      \"reload\": \"\",\n      \"hint\": \"controlla stato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"chunk size\",\n      \"localized\": \"dimensione del blocco\",\n      \"reload\": \"\",\n      \"hint\": \"dimensione del blocco\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"civitai model type\",\n      \"localized\": \"tipo di modello Civitai\",\n      \"reload\": \"\",\n      \"hint\": \"tipo di modello Civitai\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"civitai token\",\n      \"localized\": \"token Civitai\",\n      \"reload\": \"\",\n      \"hint\": \"token Civitai\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ck flash attention\",\n      \"localized\": \"attenzione flash CK\",\n      \"reload\": \"\",\n      \"hint\": \"attenzione flash CK\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ckpt\",\n      \"localized\": \"ckpt\",\n      \"reload\": \"\",\n      \"hint\": \"ckpt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cleanup temporary folder on startup\",\n      \"localized\": \"pulisci cartella temporanea all'avvio\",\n      \"reload\": \"\",\n      \"hint\": \"pulisci cartella temporanea all'avvio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip model\",\n      \"localized\": \"modello CLIP\",\n      \"reload\": \"\",\n      \"hint\": \"modello CLIP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: chunk size\",\n      \"localized\": \"clip: dimensione del blocco\",\n      \"reload\": \"\",\n      \"hint\": \"clip: dimensione del blocco\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: default captioner\",\n      \"localized\": \"clip: didascalia predefinita\",\n      \"reload\": \"\",\n      \"hint\": \"clip: didascalia predefinita\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: default mode\",\n      \"localized\": \"clip: modalità predefinita\",\n      \"reload\": \"\",\n      \"hint\": \"clip: modalità predefinita\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: default model\",\n      \"localized\": \"clip: modello predefinito\",\n      \"reload\": \"\",\n      \"hint\": \"clip: modello predefinito\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: intermediate flavors\",\n      \"localized\": \"clip: varianti intermedie\",\n      \"reload\": \"\",\n      \"hint\": \"clip: varianti intermedie\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: max flavors\",\n      \"localized\": \"clip: massimo varianti\",\n      \"reload\": \"\",\n      \"hint\": \"clip: massimo varianti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: max length\",\n      \"localized\": \"clip: lunghezza massima\",\n      \"reload\": \"\",\n      \"hint\": \"clip: lunghezza massima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: min flavors\",\n      \"localized\": \"clip: minimo varianti\",\n      \"reload\": \"\",\n      \"hint\": \"clip: minimo varianti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: min length\",\n      \"localized\": \"clip: lunghezza minima\",\n      \"reload\": \"\",\n      \"hint\": \"clip: lunghezza minima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: num beams\",\n      \"localized\": \"clip: numero di beam\",\n      \"reload\": \"\",\n      \"hint\": \"clip: numero di beam\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"close\",\n      \"localized\": \"chiudi\",\n      \"reload\": \"\",\n      \"hint\": \"chiudi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cmsi\",\n      \"localized\": \"cmsi\",\n      \"reload\": \"\",\n      \"hint\": \"cmsi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn end\",\n      \"localized\": \"fine CN\",\n      \"reload\": \"\",\n      \"hint\": \"fine CN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn mode\",\n      \"localized\": \"modalità CN\",\n      \"reload\": \"\",\n      \"hint\": \"modalità CN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn start\",\n      \"localized\": \"inizio CN\",\n      \"reload\": \"\",\n      \"hint\": \"inizio CN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn strength\",\n      \"localized\": \"forza CN\",\n      \"reload\": \"\",\n      \"hint\": \"forza CN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn tiles\",\n      \"localized\": \"tessere CN\",\n      \"reload\": \"\",\n      \"hint\": \"tessere CN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"coarse\",\n      \"localized\": \"grossolano\",\n      \"reload\": \"\",\n      \"hint\": \"grossolano\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color\",\n      \"localized\": \"colore\",\n      \"reload\": \"\",\n      \"hint\": \"colore\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color grading\",\n      \"localized\": \"gradazione colore\",\n      \"reload\": \"\",\n      \"hint\": \"gradazione colore\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color map\",\n      \"localized\": \"mappa colori\",\n      \"reload\": \"\",\n      \"hint\": \"mappa colori\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color variation\",\n      \"localized\": \"variazione colore\",\n      \"reload\": \"\",\n      \"hint\": \"variazione colore\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"colormap\",\n      \"localized\": \"mappa colori\",\n      \"reload\": \"\",\n      \"hint\": \"mappa colori\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"columns\",\n      \"localized\": \"colonne\",\n      \"reload\": \"\",\n      \"hint\": \"colonne\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"comma\",\n      \"localized\": \"virgola\",\n      \"reload\": \"\",\n      \"hint\": \"virgola\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"comma separated list with optional strength per lora\",\n      \"localized\": \"elenco separato da virgole con forza opzionale per lora\",\n      \"reload\": \"\",\n      \"hint\": \"elenco separato da virgole con forza opzionale per lora\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"compact view\",\n      \"localized\": \"vista compatta\",\n      \"reload\": \"\",\n      \"hint\": \"vista compatta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"compel\",\n      \"localized\": \"compel\",\n      \"reload\": \"\",\n      \"hint\": \"compel\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"composite\",\n      \"localized\": \"composito\",\n      \"reload\": \"\",\n      \"hint\": \"composito\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"compress ratio\",\n      \"localized\": \"rapporto di compressione\",\n      \"reload\": \"\",\n      \"hint\": \"rapporto di compressione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"concept tokens\",\n      \"localized\": \"token di concetto\",\n      \"reload\": \"\",\n      \"hint\": \"token di concetto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context\",\n      \"localized\": \"contesto\",\n      \"reload\": \"\",\n      \"hint\": \"contesto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context after\",\n      \"localized\": \"contesto dopo\",\n      \"reload\": \"\",\n      \"hint\": \"contesto dopo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context before\",\n      \"localized\": \"contesto prima\",\n      \"reload\": \"\",\n      \"hint\": \"contesto prima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context mask\",\n      \"localized\": \"maschera di contesto\",\n      \"reload\": \"\",\n      \"hint\": \"maschera di contesto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"contrast\",\n      \"localized\": \"contrasto\",\n      \"reload\": \"\",\n      \"hint\": \"contrasto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control factor\",\n      \"localized\": \"fattore di controllo\",\n      \"reload\": \"\",\n      \"hint\": \"fattore di controllo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control override denoise strength\",\n      \"localized\": \"controllo sovrascrittura forza di denoising\",\n      \"reload\": \"\",\n      \"hint\": \"controllo sovrascrittura forza di denoising\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control preprocess input images\",\n      \"localized\": \"controllo pre-elaborazione immagini di input\",\n      \"reload\": \"\",\n      \"hint\": \"controllo pre-elaborazione immagini di input\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 1\",\n      \"localized\": \"unità Control-LLLITE 1\",\n      \"reload\": \"\",\n      \"hint\": \"unità Control-LLLITE 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 2\",\n      \"localized\": \"unità Control-LLLITE 2\",\n      \"reload\": \"\",\n      \"hint\": \"unità Control-LLLITE 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 3\",\n      \"localized\": \"unità Control-LLLITE 3\",\n      \"reload\": \"\",\n      \"hint\": \"unità Control-LLLITE 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 4\",\n      \"localized\": \"unità Control-LLLITE 4\",\n      \"reload\": \"\",\n      \"hint\": \"unità Control-LLLITE 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet\",\n      \"localized\": \"controlnet\",\n      \"reload\": \"\",\n      \"hint\": \"controlnet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 1\",\n      \"localized\": \"unità ControlNet 1\",\n      \"reload\": \"\",\n      \"hint\": \"unità ControlNet 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 2\",\n      \"localized\": \"unità ControlNet 2\",\n      \"reload\": \"\",\n      \"hint\": \"unità ControlNet 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 3\",\n      \"localized\": \"unità ControlNet 3\",\n      \"reload\": \"\",\n      \"hint\": \"unità ControlNet 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 4\",\n      \"localized\": \"unità ControlNet 4\",\n      \"reload\": \"\",\n      \"hint\": \"unità ControlNet 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs\",\n      \"localized\": \"controlnet-xs\",\n      \"reload\": \"\",\n      \"hint\": \"controlnet-xs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 1\",\n      \"localized\": \"unità ControlNet-XS 1\",\n      \"reload\": \"\",\n      \"hint\": \"unità ControlNet-XS 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 2\",\n      \"localized\": \"unità ControlNet-XS 2\",\n      \"reload\": \"\",\n      \"hint\": \"unità ControlNet-XS 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 3\",\n      \"localized\": \"unità ControlNet-XS 3\",\n      \"reload\": \"\",\n      \"hint\": \"unità ControlNet-XS 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 4\",\n      \"localized\": \"unità ControlNet-XS 4\",\n      \"reload\": \"\",\n      \"hint\": \"unità ControlNet-XS 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"correction mode\",\n      \"localized\": \"modalità di correzione\",\n      \"reload\": \"\",\n      \"hint\": \"modalità di correzione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine background\",\n      \"localized\": \"sfondo coseno\",\n      \"reload\": \"\",\n      \"hint\": \"sfondo coseno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale\",\n      \"localized\": \"scala coseno\",\n      \"reload\": \"\",\n      \"hint\": \"scala coseno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale 1\",\n      \"localized\": \"scala coseno 1\",\n      \"reload\": \"\",\n      \"hint\": \"scala coseno 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale 2\",\n      \"localized\": \"scala coseno 2\",\n      \"reload\": \"\",\n      \"hint\": \"scala coseno 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale 3\",\n      \"localized\": \"scala coseno 3\",\n      \"reload\": \"\",\n      \"hint\": \"scala coseno 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"create image info text file\",\n      \"localized\": \"crea file di testo informazioni immagine\",\n      \"reload\": \"\",\n      \"hint\": \"crea file di testo informazioni immagine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"create video\",\n      \"localized\": \"crea video\",\n      \"reload\": \"\",\n      \"hint\": \"crea video\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"create zip archive\",\n      \"localized\": \"crea archivio zip\",\n      \"reload\": \"\",\n      \"hint\": \"crea archivio zip\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cross-attention\",\n      \"localized\": \"cross-attenzione\",\n      \"reload\": \"\",\n      \"hint\": \"cross-attenzione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cudagraphs\",\n      \"localized\": \"cudagraphs\",\n      \"reload\": \"\",\n      \"hint\": \"cudagraphs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cudamallocasync\",\n      \"localized\": \"cudamallocasync\",\n      \"reload\": \"\",\n      \"hint\": \"cudamallocasync\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"custom pipeline\",\n      \"localized\": \"pipeline personalizzata\",\n      \"reload\": \"\",\n      \"hint\": \"pipeline personalizzata\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dark\",\n      \"localized\": \"scuro\",\n      \"reload\": \"\",\n      \"hint\": \"scuro\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dc solver\",\n      \"localized\": \"solutore DC\",\n      \"reload\": \"\",\n      \"hint\": \"solutore DC\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ddpm\",\n      \"localized\": \"ddpm\",\n      \"reload\": \"\",\n      \"hint\": \"ddpm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"debug info\",\n      \"localized\": \"informazioni di debug\",\n      \"reload\": \"\",\n      \"hint\": \"informazioni di debug\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"decode\",\n      \"localized\": \"decodifica\",\n      \"reload\": \"\",\n      \"hint\": \"decodifica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"decode chunks\",\n      \"localized\": \"decodifica blocchi\",\n      \"reload\": \"\",\n      \"hint\": \"decodifica blocchi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deep-cache\",\n      \"localized\": \"cache profonda\",\n      \"reload\": \"\",\n      \"hint\": \"cache profonda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru\",\n      \"localized\": \"deepbooru\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: escape brackets\",\n      \"localized\": \"deepbooru: sfuggi parentesi\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: sfuggi parentesi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: exclude tags\",\n      \"localized\": \"deepbooru: escludi tag\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: escludi tag\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: include scores in results\",\n      \"localized\": \"deepbooru: includi punteggi nei risultati\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: includi punteggi nei risultati\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: max tags\",\n      \"localized\": \"deepbooru: tag massimi\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: tag massimi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: score threshold\",\n      \"localized\": \"deepbooru: soglia punteggio\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: soglia punteggio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: sort alphabetically\",\n      \"localized\": \"deepbooru: ordina alfabeticamente\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: ordina alfabeticamente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: use spaces for tags\",\n      \"localized\": \"deepbooru: usa spazi per i tag\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: usa spazi per i tag\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepcache cache interval\",\n      \"localized\": \"intervallo cache deepcache\",\n      \"reload\": \"\",\n      \"hint\": \"intervallo cache deepcache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"default\",\n      \"localized\": \"predefinito\",\n      \"reload\": \"\",\n      \"hint\": \"predefinito\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deis\",\n      \"localized\": \"deis\",\n      \"reload\": \"\",\n      \"hint\": \"deis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"denoising batch size\",\n      \"localized\": \"dimensione batch denoising\",\n      \"reload\": \"\",\n      \"hint\": \"dimensione batch denoising\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"denoising steps\",\n      \"localized\": \"passi di denoising\",\n      \"reload\": \"\",\n      \"hint\": \"passi di denoising\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth and normal\",\n      \"localized\": \"profondità e normale\",\n      \"reload\": \"\",\n      \"hint\": \"profondità e normale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth anything\",\n      \"localized\": \"profondità qualsiasi\",\n      \"reload\": \"\",\n      \"hint\": \"profondità qualsiasi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth map\",\n      \"localized\": \"mappa di profondità\",\n      \"reload\": \"\",\n      \"hint\": \"mappa di profondità\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth threshold\",\n      \"localized\": \"soglia di profondità\",\n      \"reload\": \"\",\n      \"hint\": \"soglia di profondità\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"description\",\n      \"localized\": \"descrizione\",\n      \"reload\": \"\",\n      \"hint\": \"descrizione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"details\",\n      \"localized\": \"dettagli\",\n      \"reload\": \"\",\n      \"hint\": \"dettagli\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deterministic mode\",\n      \"localized\": \"modalità deterministica\",\n      \"reload\": \"\",\n      \"hint\": \"modalità deterministica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"device info\",\n      \"localized\": \"info dispositivo\",\n      \"reload\": \"\",\n      \"hint\": \"info dispositivo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"diffusers\",\n      \"localized\": \"diffusers\",\n      \"reload\": \"\",\n      \"hint\": \"diffusers\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dilate\",\n      \"localized\": \"dilata\",\n      \"reload\": \"\",\n      \"hint\": \"dilata\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dilate tau\",\n      \"localized\": \"dilata tau\",\n      \"reload\": \"\",\n      \"hint\": \"dilata tau\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"directml retry ops for nan\",\n      \"localized\": \"directml riprova operazioni per nan\",\n      \"reload\": \"\",\n      \"hint\": \"directml riprova operazioni per nan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"directory for temporary images; leave empty for default\",\n      \"localized\": \"directory per immagini temporanee; lascia vuoto per predefinito\",\n      \"reload\": \"\",\n      \"hint\": \"directory per immagini temporanee; lascia vuoto per predefinito\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disable accelerate\",\n      \"localized\": \"disabilita accelerate\",\n      \"reload\": \"\",\n      \"hint\": \"disabilita accelerate\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disable conditional batching\",\n      \"localized\": \"disabilita batching condizionale\",\n      \"reload\": \"\",\n      \"hint\": \"disabilita batching condizionale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disabled\",\n      \"localized\": \"disabilitato\",\n      \"reload\": \"\",\n      \"hint\": \"disabilitato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"discard penultimate sigma\",\n      \"localized\": \"scarta penultimo sigma\",\n      \"reload\": \"\",\n      \"hint\": \"scarta penultimo sigma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"distance threshold\",\n      \"localized\": \"soglia di distanza\",\n      \"reload\": \"\",\n      \"hint\": \"soglia di distanza\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"do not change selected model when reading generation parameters\",\n      \"localized\": \"non cambiare il modello selezionato durante la lettura dei parametri di generazione\",\n      \"reload\": \"\",\n      \"hint\": \"non cambiare il modello selezionato durante la lettura dei parametri di generazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"do not display video output in ui\",\n      \"localized\": \"non mostrare l'output video nell'interfaccia utente\",\n      \"reload\": \"\",\n      \"hint\": \"non mostrare l'output video nell'interfaccia utente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"down\",\n      \"localized\": \"giù\",\n      \"reload\": \"\",\n      \"hint\": \"giù\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download\",\n      \"localized\": \"scarica\",\n      \"reload\": \"\",\n      \"hint\": \"scarica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download model\",\n      \"localized\": \"scarica modello\",\n      \"reload\": \"\",\n      \"hint\": \"scarica modello\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download path\",\n      \"localized\": \"percorso di download\",\n      \"reload\": \"\",\n      \"hint\": \"percorso di download\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download updates\",\n      \"localized\": \"scarica aggiornamenti\",\n      \"reload\": \"\",\n      \"hint\": \"scarica aggiornamenti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"downscale high resolution live previews\",\n      \"localized\": \"ridimensiona anteprime live ad alta risoluzione\",\n      \"reload\": \"\",\n      \"hint\": \"ridimensiona anteprime live ad alta risoluzione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm sde\",\n      \"localized\": \"dpm sde\",\n      \"reload\": \"\",\n      \"hint\": \"dpm sde\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++\",\n      \"localized\": \"dpm++\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 1s\",\n      \"localized\": \"dpm++ 1s\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 1s\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m\",\n      \"localized\": \"dpm++ 2m\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 2m\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m edm\",\n      \"localized\": \"dpm++ 2m edm\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 2m edm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m inverse\",\n      \"localized\": \"dpm++ 2m inverso\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 2m inverso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m sde\",\n      \"localized\": \"dpm++ 2m sde\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 2m sde\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 3m\",\n      \"localized\": \"dpm++ 3m\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 3m\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 3m inverse\",\n      \"localized\": \"dpm++ 3m inverso\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 3m inverso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ cosine\",\n      \"localized\": \"dpm++ coseno\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ coseno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ inverse\",\n      \"localized\": \"dpm++ inverso\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ inverso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ sde\",\n      \"localized\": \"dpm++ sde\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ sde\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2 flowmatch\",\n      \"localized\": \"dpm2 flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2 flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2m flowmatch\",\n      \"localized\": \"dpm2++ 2m flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 2m flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2m sde flowmatch\",\n      \"localized\": \"dpm2++ 2m sde flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 2m sde flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2s flowmatch\",\n      \"localized\": \"dpm2++ 2s flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 2s flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 3m sde flowmatch\",\n      \"localized\": \"dpm2++ 3m sde flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 3m sde flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ sde flowmatch\",\n      \"localized\": \"dpm2++ sde flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ sde flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2a flowmatch\",\n      \"localized\": \"dpm2a flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2a flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"draw legend\",\n      \"localized\": \"disegna legenda\",\n      \"reload\": \"\",\n      \"hint\": \"disegna legenda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dropdown\",\n      \"localized\": \"menu a discesa\",\n      \"reload\": \"\",\n      \"hint\": \"menu a discesa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"duration\",\n      \"localized\": \"durata\",\n      \"reload\": \"\",\n      \"hint\": \"durata\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dwpose\",\n      \"localized\": \"dwpose\",\n      \"reload\": \"\",\n      \"hint\": \"dwpose\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic\",\n      \"localized\": \"dinamico\",\n      \"reload\": \"\",\n      \"hint\": \"dinamico\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention\",\n      \"localized\": \"attenzione dinamica\",\n      \"reload\": \"\",\n      \"hint\": \"attenzione dinamica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention slicing rate in gb\",\n      \"localized\": \"tasso di slicing dell'attenzione dinamica in gb\",\n      \"reload\": \"\",\n      \"hint\": \"tasso di slicing dell'attenzione dinamica in gb\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention trigger rate in gb\",\n      \"localized\": \"tasso di attivazione dell'attenzione dinamica in gb\",\n      \"reload\": \"\",\n      \"hint\": \"tasso di attivazione dell'attenzione dinamica in gb\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edge\",\n      \"localized\": \"bordo\",\n      \"reload\": \"\",\n      \"hint\": \"bordo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edit start\",\n      \"localized\": \"modifica inizio\",\n      \"reload\": \"\",\n      \"hint\": \"modifica inizio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edit stop\",\n      \"localized\": \"modifica fine\",\n      \"reload\": \"\",\n      \"hint\": \"modifica fine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"embedded metadata\",\n      \"localized\": \"metadati incorporati\",\n      \"reload\": \"\",\n      \"hint\": \"metadati incorporati\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable embeddings support\",\n      \"localized\": \"abilita supporto embeddings\",\n      \"reload\": \"\",\n      \"hint\": \"abilita supporto embeddings\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable file wildcards support\",\n      \"localized\": \"abilita supporto caratteri jolly file\",\n      \"reload\": \"\",\n      \"hint\": \"abilita supporto caratteri jolly file\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable freeu\",\n      \"localized\": \"abilita freeu\",\n      \"reload\": \"\",\n      \"hint\": \"abilita freeu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable teacache\",\n      \"localized\": \"abilita teacache\",\n      \"reload\": \"\",\n      \"hint\": \"abilita teacache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable tonemap\",\n      \"localized\": \"abilita tonemap\",\n      \"reload\": \"\",\n      \"hint\": \"abilita tonemap\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable use of reference models\",\n      \"localized\": \"abilita l'uso di modelli di riferimento\",\n      \"reload\": \"\",\n      \"hint\": \"abilita l'uso di modelli di riferimento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enabled\",\n      \"localized\": \"abilitato\",\n      \"reload\": \"\",\n      \"hint\": \"abilitato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"encoder\",\n      \"localized\": \"encoder\",\n      \"reload\": \"\",\n      \"hint\": \"encoder\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"end\",\n      \"localized\": \"fine\",\n      \"reload\": \"\",\n      \"hint\": \"fine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enhance prompt\",\n      \"localized\": \"migliora prompt\",\n      \"reload\": \"\",\n      \"hint\": \"migliora prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ensemble size\",\n      \"localized\": \"dimensione ensemble\",\n      \"reload\": \"\",\n      \"hint\": \"dimensione ensemble\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"epsilon\",\n      \"localized\": \"epsilon\",\n      \"reload\": \"\",\n      \"hint\": \"epsilon\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"erode\",\n      \"localized\": \"erodi\",\n      \"reload\": \"\",\n      \"hint\": \"erodi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"erode size\",\n      \"localized\": \"dimensione erosione\",\n      \"reload\": \"\",\n      \"hint\": \"dimensione erosione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"eta\",\n      \"localized\": \"eta\",\n      \"reload\": \"\",\n      \"hint\": \"eta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler\",\n      \"localized\": \"euler\",\n      \"reload\": \"\",\n      \"hint\": \"euler\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler edm\",\n      \"localized\": \"euler edm\",\n      \"reload\": \"\",\n      \"hint\": \"euler edm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler flowmatch\",\n      \"localized\": \"euler flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"euler flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler sgm\",\n      \"localized\": \"euler sgm\",\n      \"reload\": \"\",\n      \"hint\": \"euler sgm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.cpu\",\n      \"localized\": \"executionprovider.cpu\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.cpu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.cuda\",\n      \"localized\": \"executionprovider.cuda\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.cuda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.directml\",\n      \"localized\": \"executionprovider.directml\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.directml\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.migraphx\",\n      \"localized\": \"executionprovider.migraphx\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.migraphx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.openvino\",\n      \"localized\": \"executionprovider.openvino\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.openvino\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.rocm\",\n      \"localized\": \"executionprovider.rocm\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.rocm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"expandable segments\",\n      \"localized\": \"segmenti espandibili\",\n      \"reload\": \"\",\n      \"hint\": \"segmenti espandibili\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"exponential\",\n      \"localized\": \"esponenziale\",\n      \"reload\": \"\",\n      \"hint\": \"esponenziale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"exposure\",\n      \"localized\": \"esposizione\",\n      \"reload\": \"\",\n      \"hint\": \"esposizione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"extra noise multiplier for img2img\",\n      \"localized\": \"moltiplicatore di rumore extra per img2img\",\n      \"reload\": \"\",\n      \"hint\": \"moltiplicatore di rumore extra per img2img\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"extract lora\",\n      \"localized\": \"estrai lora\",\n      \"reload\": \"\",\n      \"hint\": \"estrai lora\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"face\",\n      \"localized\": \"volto\",\n      \"reload\": \"\",\n      \"hint\": \"volto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"face confidence\",\n      \"localized\": \"confidenza del volto\",\n      \"reload\": \"\",\n      \"hint\": \"confidenza del volto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"faceid model\",\n      \"localized\": \"modello faceid\",\n      \"reload\": \"\",\n      \"hint\": \"modello faceid\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fall-off exponent (lower=higher detail)\",\n      \"localized\": \"esponente di decadimento (minore=maggiore dettaglio)\",\n      \"reload\": \"\",\n      \"hint\": \"esponente di decadimento (minore=maggiore dettaglio)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"false\",\n      \"localized\": \"falso\",\n      \"reload\": \"\",\n      \"hint\": \"falso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fast\",\n      \"localized\": \"veloce\",\n      \"reload\": \"\",\n      \"hint\": \"veloce\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"file or folder with user-defined styles\",\n      \"localized\": \"file o cartella con stili definiti dall'utente\",\n      \"reload\": \"\",\n      \"hint\": \"file o cartella con stili definiti dall'utente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"filename\",\n      \"localized\": \"nome file\",\n      \"reload\": \"\",\n      \"hint\": \"nome file\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"first-block cache enabled\",\n      \"localized\": \"cache del primo blocco abilitata\",\n      \"reload\": \"\",\n      \"hint\": \"cache del primo blocco abilitata\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fixed unet precision\",\n      \"localized\": \"precisione UNet fissa\",\n      \"reload\": \"\",\n      \"hint\": \"precisione UNet fissa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flash attention\",\n      \"localized\": \"attenzione flash\",\n      \"reload\": \"\",\n      \"hint\": \"attenzione flash\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flavors\",\n      \"localized\": \"varianti\",\n      \"reload\": \"\",\n      \"hint\": \"varianti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flow shift\",\n      \"localized\": \"spostamento del flusso\",\n      \"reload\": \"\",\n      \"hint\": \"spostamento del flusso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder\",\n      \"localized\": \"cartella\",\n      \"reload\": \"\",\n      \"hint\": \"cartella\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for control generate\",\n      \"localized\": \"cartella per la generazione di controllo\",\n      \"reload\": \"\",\n      \"hint\": \"cartella per la generazione di controllo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for control grids\",\n      \"localized\": \"cartella per le griglie di controllo\",\n      \"reload\": \"\",\n      \"hint\": \"cartella per le griglie di controllo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for disk offload\",\n      \"localized\": \"cartella per lo scaricamento su disco\",\n      \"reload\": \"\",\n      \"hint\": \"cartella per lo scaricamento su disco\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for huggingface cache\",\n      \"localized\": \"cartella per la cache di HuggingFace\",\n      \"reload\": \"\",\n      \"hint\": \"cartella per la cache di HuggingFace\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for image generate\",\n      \"localized\": \"cartella per la generazione di immagini\",\n      \"reload\": \"\",\n      \"hint\": \"cartella per la generazione di immagini\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for img2img grids\",\n      \"localized\": \"cartella per le griglie img2img\",\n      \"reload\": \"\",\n      \"hint\": \"cartella per le griglie img2img\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for init images\",\n      \"localized\": \"cartella per le immagini iniziali\",\n      \"reload\": \"\",\n      \"hint\": \"cartella per le immagini iniziali\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for manually saved images\",\n      \"localized\": \"cartella per le immagini salvate manualmente\",\n      \"reload\": \"\",\n      \"hint\": \"cartella per le immagini salvate manualmente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for onnx cached models\",\n      \"localized\": \"cartella per i modelli ONNX in cache\",\n      \"reload\": \"\",\n      \"hint\": \"cartella per i modelli ONNX in cache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for onnx conversion\",\n      \"localized\": \"cartella per la conversione ONNX\",\n      \"reload\": \"\",\n      \"hint\": \"cartella per la conversione ONNX\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for openvino cache\",\n      \"localized\": \"cartella per la cache di OpenVINO\",\n      \"reload\": \"\",\n      \"hint\": \"cartella per la cache di OpenVINO\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for processed images\",\n      \"localized\": \"cartella per le immagini elaborate\",\n      \"reload\": \"\",\n      \"hint\": \"cartella per le immagini elaborate\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for text generate\",\n      \"localized\": \"cartella per la generazione di testo\",\n      \"reload\": \"\",\n      \"hint\": \"cartella per la generazione di testo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for tunable ops cache\",\n      \"localized\": \"cartella per la cache delle operazioni sintonizzabili\",\n      \"reload\": \"\",\n      \"hint\": \"cartella per la cache delle operazioni sintonizzabili\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for txt2img grids\",\n      \"localized\": \"cartella per le griglie txt2img\",\n      \"reload\": \"\",\n      \"hint\": \"cartella per le griglie txt2img\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for videos\",\n      \"localized\": \"cartella per i video\",\n      \"reload\": \"\",\n      \"hint\": \"cartella per i video\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with bsrgan models\",\n      \"localized\": \"cartella con modelli BSRGAN\",\n      \"reload\": \"\",\n      \"hint\": \"cartella con modelli BSRGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with chainner models\",\n      \"localized\": \"cartella con modelli Chainner\",\n      \"reload\": \"\",\n      \"hint\": \"cartella con modelli Chainner\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with clip models\",\n      \"localized\": \"cartella con modelli CLIP\",\n      \"reload\": \"\",\n      \"hint\": \"cartella con modelli CLIP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with codeformer models\",\n      \"localized\": \"cartella con modelli CodeFormer\",\n      \"reload\": \"\",\n      \"hint\": \"cartella con modelli CodeFormer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with control models\",\n      \"localized\": \"cartella con modelli di controllo\",\n      \"reload\": \"\",\n      \"hint\": \"cartella con modelli di controllo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with esrgan models\",\n      \"localized\": \"cartella con modelli ESRGAN\",\n      \"reload\": \"\",\n      \"hint\": \"cartella con modelli ESRGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with gfpgan models\",\n      \"localized\": \"cartella con modelli GFPGAN\",\n      \"reload\": \"\",\n      \"hint\": \"cartella con modelli GFPGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with huggingface models\",\n      \"localized\": \"cartella con modelli HuggingFace\",\n      \"reload\": \"\",\n      \"hint\": \"cartella con modelli HuggingFace\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with hypernetwork models\",\n      \"localized\": \"cartella con modelli di iperrete\",\n      \"reload\": \"\",\n      \"hint\": \"cartella con modelli di iperrete\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with ldsr models\",\n      \"localized\": \"cartella con modelli LDSR\",\n      \"reload\": \"\",\n      \"hint\": \"cartella con modelli LDSR\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with lora network(s)\",\n      \"localized\": \"cartella con rete(i) LORA\",\n      \"reload\": \"\",\n      \"hint\": \"cartella con rete(i) LORA\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with realesrgan models\",\n      \"localized\": \"cartella con modelli RealESRGAN\",\n      \"reload\": \"\",\n      \"hint\": \"cartella con modelli RealESRGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with scunet models\",\n      \"localized\": \"cartella con modelli SCUNet\",\n      \"reload\": \"\",\n      \"hint\": \"cartella con modelli SCUNet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with stable diffusion models\",\n      \"localized\": \"cartella con modelli Stable Diffusion\",\n      \"reload\": \"\",\n      \"hint\": \"cartella con modelli Stable Diffusion\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with swinir models\",\n      \"localized\": \"cartella con modelli SwinIR\",\n      \"reload\": \"\",\n      \"hint\": \"cartella con modelli SwinIR\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with text encoder files\",\n      \"localized\": \"cartella con file dell'encoder di testo\",\n      \"reload\": \"\",\n      \"hint\": \"cartella con file dell'encoder di testo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with textual inversion embeddings\",\n      \"localized\": \"cartella con embedding di inversione testuale\",\n      \"reload\": \"\",\n      \"hint\": \"cartella con embedding di inversione testuale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with unet files\",\n      \"localized\": \"cartella con file UNet\",\n      \"reload\": \"\",\n      \"hint\": \"cartella con file UNet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with user-defined wildcards\",\n      \"localized\": \"cartella con wildcard definite dall'utente\",\n      \"reload\": \"\",\n      \"hint\": \"cartella con wildcard definite dall'utente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with vae files\",\n      \"localized\": \"cartella con file VAE\",\n      \"reload\": \"\",\n      \"hint\": \"cartella con file VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with yolo models\",\n      \"localized\": \"cartella con modelli YOLO\",\n      \"reload\": \"\",\n      \"hint\": \"cartella con modelli YOLO\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font color\",\n      \"localized\": \"colore carattere\",\n      \"reload\": \"\",\n      \"hint\": \"colore carattere\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font file\",\n      \"localized\": \"file carattere\",\n      \"reload\": \"\",\n      \"hint\": \"file carattere\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font size\",\n      \"localized\": \"dimensione carattere\",\n      \"reload\": \"\",\n      \"hint\": \"dimensione carattere\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"force model eval\",\n      \"localized\": \"forza valutazione modello\",\n      \"reload\": \"\",\n      \"hint\": \"forza valutazione modello\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"foreground threshold\",\n      \"localized\": \"soglia primo piano\",\n      \"reload\": \"\",\n      \"hint\": \"soglia primo piano\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fp4\",\n      \"localized\": \"fp4\",\n      \"reload\": \"\",\n      \"hint\": \"fp4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"frame change sensitivity\",\n      \"localized\": \"sensibilità al cambio frame\",\n      \"reload\": \"\",\n      \"hint\": \"sensibilità al cambio frame\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"frames\",\n      \"localized\": \"fotogrammi\",\n      \"reload\": \"\",\n      \"hint\": \"fotogrammi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeinit\",\n      \"localized\": \"freeinit\",\n      \"reload\": \"\",\n      \"hint\": \"freeinit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeu enabled\",\n      \"localized\": \"freeu abilitato\",\n      \"reload\": \"\",\n      \"hint\": \"freeu abilitato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeu preset\",\n      \"localized\": \"preset freeu\",\n      \"reload\": \"\",\n      \"hint\": \"preset freeu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"full vae\",\n      \"localized\": \"VAE completo\",\n      \"reload\": \"\",\n      \"hint\": \"VAE completo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"full-depth cudnn benchmark\",\n      \"localized\": \"benchmark cuDNN a profondità completa\",\n      \"reload\": \"\",\n      \"hint\": \"benchmark cuDNN a profondità completa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fuse strength\",\n      \"localized\": \"forza di fusione\",\n      \"reload\": \"\",\n      \"hint\": \"forza di fusione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fused projections\",\n      \"localized\": \"proiezioni fuse\",\n      \"reload\": \"\",\n      \"hint\": \"proiezioni fuse\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gamma\",\n      \"localized\": \"gamma\",\n      \"reload\": \"\",\n      \"hint\": \"gamma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gamma corrected\",\n      \"localized\": \"gamma corretta\",\n      \"reload\": \"\",\n      \"hint\": \"gamma corretta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gate step\",\n      \"localized\": \"passo del gate\",\n      \"reload\": \"\",\n      \"hint\": \"passo del gate\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gc threshold\",\n      \"localized\": \"soglia GC\",\n      \"reload\": \"\",\n      \"hint\": \"soglia GC\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"get changelog\",\n      \"localized\": \"ottieni changelog\",\n      \"reload\": \"\",\n      \"hint\": \"ottieni changelog\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gpu\",\n      \"localized\": \"GPU\",\n      \"reload\": \"\",\n      \"hint\": \"GPU\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gradient\",\n      \"localized\": \"gradiente\",\n      \"reload\": \"\",\n      \"hint\": \"gradiente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid background color\",\n      \"localized\": \"colore sfondo griglia\",\n      \"reload\": \"\",\n      \"hint\": \"colore sfondo griglia\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid margins\",\n      \"localized\": \"margini griglia\",\n      \"reload\": \"\",\n      \"hint\": \"margini griglia\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid sections:\",\n      \"localized\": \"sezioni griglia:\",\n      \"reload\": \"\",\n      \"hint\": \"sezioni griglia:\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"group size\",\n      \"localized\": \"dimensione gruppo\",\n      \"reload\": \"\",\n      \"hint\": \"dimensione gruppo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance\",\n      \"localized\": \"guida\",\n      \"reload\": \"\",\n      \"hint\": \"guida\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance start\",\n      \"localized\": \"inizio guida\",\n      \"reload\": \"\",\n      \"hint\": \"inizio guida\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance stop\",\n      \"localized\": \"fine guida\",\n      \"reload\": \"\",\n      \"hint\": \"fine guida\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance strength\",\n      \"localized\": \"intensità guida\",\n      \"reload\": \"\",\n      \"hint\": \"intensità guida\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hands\",\n      \"localized\": \"mani\",\n      \"reload\": \"\",\n      \"hint\": \"mani\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hdr range\",\n      \"localized\": \"gamma HDR\",\n      \"reload\": \"\",\n      \"hint\": \"gamma HDR\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hed\",\n      \"localized\": \"hed\",\n      \"reload\": \"\",\n      \"hint\": \"hed\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height  after\",\n      \"localized\": \"altezza dopo\",\n      \"reload\": \"\",\n      \"hint\": \"altezza dopo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height  before\",\n      \"localized\": \"altezza prima\",\n      \"reload\": \"\",\n      \"hint\": \"altezza prima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height  mask\",\n      \"localized\": \"maschera altezza\",\n      \"reload\": \"\",\n      \"hint\": \"maschera altezza\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"heun\",\n      \"localized\": \"heun\",\n      \"reload\": \"\",\n      \"hint\": \"heun\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"heun flowmatch\",\n      \"localized\": \"Heun flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"Heun flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hidet\",\n      \"localized\": \"hidet\",\n      \"reload\": \"\",\n      \"hint\": \"hidet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"high threshold\",\n      \"localized\": \"soglia alta\",\n      \"reload\": \"\",\n      \"hint\": \"soglia alta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hires pass only\",\n      \"localized\": \"solo pass ad alta risoluzione\",\n      \"reload\": \"\",\n      \"hint\": \"solo pass ad alta risoluzione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hq init latents\",\n      \"localized\": \"latenti iniziali HQ\",\n      \"reload\": \"\",\n      \"hint\": \"latenti iniziali HQ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hue\",\n      \"localized\": \"tonalità\",\n      \"reload\": \"\",\n      \"hint\": \"tonalità\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"huggingface mirror\",\n      \"localized\": \"mirror HuggingFace\",\n      \"reload\": \"\",\n      \"hint\": \"mirror HuggingFace\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"huggingface token\",\n      \"localized\": \"token HuggingFace\",\n      \"reload\": \"\",\n      \"hint\": \"token HuggingFace\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hunyuan\",\n      \"localized\": \"hunyuan\",\n      \"reload\": \"\",\n      \"hint\": \"hunyuan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"il\",\n      \"localized\": \"il\",\n      \"reload\": \"\",\n      \"hint\": \"il\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image height\",\n      \"localized\": \"altezza immagine\",\n      \"reload\": \"\",\n      \"hint\": \"altezza immagine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image quality\",\n      \"localized\": \"qualità immagine\",\n      \"reload\": \"\",\n      \"hint\": \"qualità immagine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image transparent color fill\",\n      \"localized\": \"riempimento colore trasparente immagine\",\n      \"reload\": \"\",\n      \"hint\": \"riempimento colore trasparente immagine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image watermark file\",\n      \"localized\": \"file filigrana immagine\",\n      \"reload\": \"\",\n      \"hint\": \"file filigrana immagine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image watermark position\",\n      \"localized\": \"posizione filigrana immagine\",\n      \"reload\": \"\",\n      \"hint\": \"posizione filigrana immagine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image width\",\n      \"localized\": \"larghezza immagine\",\n      \"reload\": \"\",\n      \"hint\": \"larghezza immagine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include images\",\n      \"localized\": \"includi immagini\",\n      \"reload\": \"\",\n      \"hint\": \"includi immagini\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include main grid\",\n      \"localized\": \"includi griglia principale\",\n      \"reload\": \"\",\n      \"hint\": \"includi griglia principale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include mask in outputs\",\n      \"localized\": \"includi maschera negli output\",\n      \"reload\": \"\",\n      \"hint\": \"includi maschera negli output\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include original image\",\n      \"localized\": \"includi immagine originale\",\n      \"reload\": \"\",\n      \"hint\": \"includi immagine originale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include scores in results when available\",\n      \"localized\": \"includi punteggi nei risultati quando disponibili\",\n      \"reload\": \"\",\n      \"hint\": \"includi punteggi nei risultati quando disponibili\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include sub grids\",\n      \"localized\": \"includi sotto-griglie\",\n      \"reload\": \"\",\n      \"hint\": \"includi sotto-griglie\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inductor\",\n      \"localized\": \"induttore\",\n      \"reload\": \"\",\n      \"hint\": \"induttore\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"info\",\n      \"localized\": \"informazioni\",\n      \"reload\": \"\",\n      \"hint\": \"informazioni\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"info object\",\n      \"localized\": \"oggetto informazioni\",\n      \"reload\": \"\",\n      \"hint\": \"oggetto informazioni\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpaint\",\n      \"localized\": \"inpaint\",\n      \"reload\": \"\",\n      \"hint\": \"inpaint\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpaint masked only\",\n      \"localized\": \"inpaint solo mascherato\",\n      \"reload\": \"\",\n      \"hint\": \"inpaint solo mascherato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpainting include greyscale mask in results\",\n      \"localized\": \"inpainting includi maschera in scala di grigi nei risultati\",\n      \"reload\": \"\",\n      \"hint\": \"inpainting includi maschera in scala di grigi nei risultati\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpainting include masked composite in results\",\n      \"localized\": \"inpainting includi composito mascherato nei risultati\",\n      \"reload\": \"\",\n      \"hint\": \"inpainting includi composito mascherato nei risultati\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"input model\",\n      \"localized\": \"modello di input\",\n      \"reload\": \"\",\n      \"hint\": \"modello di input\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"intermediates\",\n      \"localized\": \"intermedi\",\n      \"reload\": \"\",\n      \"hint\": \"intermedi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"interpolate frames\",\n      \"localized\": \"interpola fotogrammi\",\n      \"reload\": \"\",\n      \"hint\": \"interpola fotogrammi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"interpolation method\",\n      \"localized\": \"metodo di interpolazione\",\n      \"reload\": \"\",\n      \"hint\": \"metodo di interpolazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invert\",\n      \"localized\": \"inverti\",\n      \"reload\": \"\",\n      \"hint\": \"inverti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invert mask\",\n      \"localized\": \"inverti maschera\",\n      \"reload\": \"\",\n      \"hint\": \"inverti maschera\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iou\",\n      \"localized\": \"iou\",\n      \"reload\": \"\",\n      \"hint\": \"iou\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ipex\",\n      \"localized\": \"ipex\",\n      \"reload\": \"\",\n      \"hint\": \"ipex\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ipndm\",\n      \"localized\": \"ipndm\",\n      \"reload\": \"\",\n      \"hint\": \"ipndm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"item edge blur\",\n      \"localized\": \"sfocatura bordo elemento\",\n      \"reload\": \"\",\n      \"hint\": \"sfocatura bordo elemento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"item padding\",\n      \"localized\": \"spaziatura elemento\",\n      \"reload\": \"\",\n      \"hint\": \"spaziatura elemento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iterate seed per line\",\n      \"localized\": \"itera seed per riga\",\n      \"reload\": \"\",\n      \"hint\": \"itera seed per riga\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iterations\",\n      \"localized\": \"iterazioni\",\n      \"reload\": \"\",\n      \"hint\": \"iterazioni\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"karras\",\n      \"localized\": \"karras\",\n      \"reload\": \"\",\n      \"hint\": \"karras\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"kdpm2\",\n      \"localized\": \"kdpm2\",\n      \"reload\": \"\",\n      \"hint\": \"kdpm2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"kdpm2 a\",\n      \"localized\": \"kdpm2 a\",\n      \"reload\": \"\",\n      \"hint\": \"kdpm2 a\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"keep incomplete images\",\n      \"localized\": \"mantieni immagini incomplete\",\n      \"reload\": \"\",\n      \"hint\": \"mantieni immagini incomplete\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"large\",\n      \"localized\": \"grande\",\n      \"reload\": \"\",\n      \"hint\": \"grande\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"latent history size\",\n      \"localized\": \"dimensione cronologia latente\",\n      \"reload\": \"\",\n      \"hint\": \"dimensione cronologia latente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"latent mode\",\n      \"localized\": \"modalità latente\",\n      \"reload\": \"\",\n      \"hint\": \"modalità latente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layer scales\",\n      \"localized\": \"scale dei livelli\",\n      \"reload\": \"\",\n      \"hint\": \"scale dei livelli\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layerwise casting storage\",\n      \"localized\": \"memorizzazione casting a livelli\",\n      \"reload\": \"\",\n      \"hint\": \"memorizzazione casting a livelli\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layerwise non-blocking operations\",\n      \"localized\": \"operazioni non bloccanti a livelli\",\n      \"reload\": \"\",\n      \"hint\": \"operazioni non bloccanti a livelli\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lcm\",\n      \"localized\": \"lcm\",\n      \"reload\": \"\",\n      \"hint\": \"lcm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ldsr processing steps\",\n      \"localized\": \"passi di elaborazione ldsr\",\n      \"reload\": \"\",\n      \"hint\": \"passi di elaborazione ldsr\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"left\",\n      \"localized\": \"sinistra\",\n      \"reload\": \"\",\n      \"hint\": \"sinistra\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"legend\",\n      \"localized\": \"legenda\",\n      \"reload\": \"\",\n      \"hint\": \"legenda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"length\",\n      \"localized\": \"lunghezza\",\n      \"reload\": \"\",\n      \"hint\": \"lunghezza\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"leres depth\",\n      \"localized\": \"profondità leres\",\n      \"reload\": \"\",\n      \"hint\": \"profondità leres\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"level\",\n      \"localized\": \"livello\",\n      \"reload\": \"\",\n      \"hint\": \"livello\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"libs\",\n      \"localized\": \"libs\",\n      \"reload\": \"\",\n      \"hint\": \"libs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"light\",\n      \"localized\": \"luce\",\n      \"reload\": \"\",\n      \"hint\": \"luce\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lineart\",\n      \"localized\": \"lineart\",\n      \"reload\": \"\",\n      \"hint\": \"lineart\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"list\",\n      \"localized\": \"lista\",\n      \"reload\": \"\",\n      \"hint\": \"lista\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"list model details\",\n      \"localized\": \"dettagli del modello elenco\",\n      \"reload\": \"\",\n      \"hint\": \"dettagli del modello elenco\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lite\",\n      \"localized\": \"lite\",\n      \"reload\": \"\",\n      \"hint\": \"lite\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"live update\",\n      \"localized\": \"aggiornamento in tempo reale\",\n      \"reload\": \"\",\n      \"hint\": \"aggiornamento in tempo reale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lmsd\",\n      \"localized\": \"lmsd\",\n      \"reload\": \"\",\n      \"hint\": \"lmsd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"load custom diffusers pipeline\",\n      \"localized\": \"carica pipeline diffusers personalizzata\",\n      \"reload\": \"\",\n      \"hint\": \"carica pipeline diffusers personalizzata\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"load model directly to gpu\",\n      \"localized\": \"carica modello direttamente su gpu\",\n      \"reload\": \"\",\n      \"hint\": \"carica modello direttamente su gpu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"loaded lora\",\n      \"localized\": \"lora caricato\",\n      \"reload\": \"\",\n      \"hint\": \"lora caricato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"logsnr\",\n      \"localized\": \"logsnr\",\n      \"reload\": \"\",\n      \"hint\": \"logsnr\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"loop\",\n      \"localized\": \"ciclo\",\n      \"reload\": \"\",\n      \"hint\": \"ciclo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora add hash info to metadata\",\n      \"localized\": \"lora aggiungi informazioni hash ai metadati\",\n      \"reload\": \"\",\n      \"hint\": \"lora aggiungi informazioni hash ai metadati\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora auto-apply tags\",\n      \"localized\": \"lora applica tag automaticamente\",\n      \"reload\": \"\",\n      \"hint\": \"lora applica tag automaticamente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora load using diffusers method for selected models\",\n      \"localized\": \"lora carica usando il metodo diffusers per i modelli selezionati\",\n      \"reload\": \"\",\n      \"hint\": \"lora carica usando il metodo diffusers per i modelli selezionati\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora load using legacy method\",\n      \"localized\": \"lora carica usando il metodo legacy\",\n      \"reload\": \"\",\n      \"hint\": \"lora carica usando il metodo legacy\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora target filename\",\n      \"localized\": \"nome file target lora\",\n      \"reload\": \"\",\n      \"hint\": \"nome file target lora\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"low order\",\n      \"localized\": \"ordine basso\",\n      \"reload\": \"\",\n      \"hint\": \"ordine basso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"low threshold\",\n      \"localized\": \"soglia bassa\",\n      \"reload\": \"\",\n      \"hint\": \"soglia bassa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ltx model\",\n      \"localized\": \"modello ltx\",\n      \"reload\": \"\",\n      \"hint\": \"modello ltx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lumina: use mask in transformers\",\n      \"localized\": \"lumina: usa maschera nei transformers\",\n      \"reload\": \"\",\n      \"hint\": \"lumina: usa maschera nei transformers\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"manual block merge\",\n      \"localized\": \"unione blocco manuale\",\n      \"reload\": \"\",\n      \"hint\": \"unione blocco manuale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"marigold depth\",\n      \"localized\": \"profondità marigold\",\n      \"reload\": \"\",\n      \"hint\": \"profondità marigold\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask dropout\",\n      \"localized\": \"dropout maschera\",\n      \"reload\": \"\",\n      \"hint\": \"dropout maschera\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask invert\",\n      \"localized\": \"inverti maschera\",\n      \"reload\": \"\",\n      \"hint\": \"inverti maschera\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask only\",\n      \"localized\": \"solo maschera\",\n      \"reload\": \"\",\n      \"hint\": \"solo maschera\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask strength\",\n      \"localized\": \"forza maschera\",\n      \"reload\": \"\",\n      \"hint\": \"forza maschera\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"masked\",\n      \"localized\": \"mascherato\",\n      \"reload\": \"\",\n      \"hint\": \"mascherato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"math attention\",\n      \"localized\": \"attenzione matematica\",\n      \"reload\": \"\",\n      \"hint\": \"attenzione matematica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max faces\",\n      \"localized\": \"massimo volti\",\n      \"reload\": \"\",\n      \"hint\": \"massimo volti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max flavors\",\n      \"localized\": \"massimo gusti\",\n      \"reload\": \"\",\n      \"hint\": \"massimo gusti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max guidance\",\n      \"localized\": \"massima guida\",\n      \"reload\": \"\",\n      \"hint\": \"massima guida\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max length\",\n      \"localized\": \"lunghezza massima\",\n      \"reload\": \"\",\n      \"hint\": \"lunghezza massima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max object size\",\n      \"localized\": \"dimensione massima oggetto\",\n      \"reload\": \"\",\n      \"hint\": \"dimensione massima oggetto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max range\",\n      \"localized\": \"intervallo massimo\",\n      \"reload\": \"\",\n      \"hint\": \"intervallo massimo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max tokens\",\n      \"localized\": \"massimo token\",\n      \"reload\": \"\",\n      \"hint\": \"massimo token\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max words\",\n      \"localized\": \"massimo parole\",\n      \"reload\": \"\",\n      \"hint\": \"massimo parole\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max-autotune\",\n      \"localized\": \"max-autotune\",\n      \"reload\": \"\",\n      \"hint\": \"max-autotune\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max-autotune-no-cudagraphs\",\n      \"localized\": \"max-autotune-no-cudagraphs\",\n      \"reload\": \"\",\n      \"hint\": \"max-autotune-no-cudagraphs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum image size (mp)\",\n      \"localized\": \"dimensione massima immagine (mp)\",\n      \"reload\": \"\",\n      \"hint\": \"dimensione massima immagine (mp)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum number of units\",\n      \"localized\": \"numero massimo di unità\",\n      \"reload\": \"\",\n      \"hint\": \"numero massimo di unità\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum rank\",\n      \"localized\": \"grado massimo\",\n      \"reload\": \"\",\n      \"hint\": \"grado massimo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mediapipe face\",\n      \"localized\": \"volto mediapipe\",\n      \"reload\": \"\",\n      \"hint\": \"volto mediapipe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"medium\",\n      \"localized\": \"medio\",\n      \"reload\": \"\",\n      \"hint\": \"medio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mediums\",\n      \"localized\": \"mezzi\",\n      \"reload\": \"\",\n      \"hint\": \"mezzi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory\",\n      \"localized\": \"memoria\",\n      \"reload\": \"\",\n      \"hint\": \"memoria\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory attention\",\n      \"localized\": \"attenzione memoria\",\n      \"reload\": \"\",\n      \"hint\": \"attenzione memoria\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory limit\",\n      \"localized\": \"limite memoria\",\n      \"reload\": \"\",\n      \"hint\": \"limite memoria\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory optimization\",\n      \"localized\": \"ottimizzazione memoria\",\n      \"reload\": \"\",\n      \"hint\": \"ottimizzazione memoria\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"merge alpha\",\n      \"localized\": \"unisci alfa\",\n      \"reload\": \"\",\n      \"hint\": \"unisci alfa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method\",\n      \"localized\": \"metodo\",\n      \"reload\": \"\",\n      \"hint\": \"metodo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method after\",\n      \"localized\": \"metodo dopo\",\n      \"reload\": \"\",\n      \"hint\": \"metodo dopo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method before\",\n      \"localized\": \"metodo prima\",\n      \"reload\": \"\",\n      \"hint\": \"metodo prima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method mask\",\n      \"localized\": \"maschera metodo\",\n      \"reload\": \"\",\n      \"hint\": \"maschera metodo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"midas depth\",\n      \"localized\": \"profondità Midas\",\n      \"reload\": \"\",\n      \"hint\": \"profondità Midas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"migraphx\",\n      \"localized\": \"migraphx\",\n      \"reload\": \"\",\n      \"hint\": \"migraphx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min flavors\",\n      \"localized\": \"minimo di varianti\",\n      \"reload\": \"\",\n      \"hint\": \"minimo di varianti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min guidance\",\n      \"localized\": \"minima guida\",\n      \"reload\": \"\",\n      \"hint\": \"minima guida\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min length\",\n      \"localized\": \"minima lunghezza\",\n      \"reload\": \"\",\n      \"hint\": \"minima lunghezza\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min object size\",\n      \"localized\": \"dimensione minima oggetto\",\n      \"reload\": \"\",\n      \"hint\": \"dimensione minima oggetto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mine\",\n      \"localized\": \"mine\",\n      \"reload\": \"\",\n      \"hint\": \"mine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mlsd\",\n      \"localized\": \"mlsd\",\n      \"reload\": \"\",\n      \"hint\": \"mlsd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mm\",\n      \"localized\": \"mm\",\n      \"reload\": \"\",\n      \"hint\": \"mm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode\",\n      \"localized\": \"modalità\",\n      \"reload\": \"\",\n      \"hint\": \"modalità\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode after\",\n      \"localized\": \"modalità dopo\",\n      \"reload\": \"\",\n      \"hint\": \"modalità dopo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode before\",\n      \"localized\": \"modalità prima\",\n      \"reload\": \"\",\n      \"hint\": \"modalità prima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode mask\",\n      \"localized\": \"maschera modalità\",\n      \"reload\": \"\",\n      \"hint\": \"maschera modalità\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode x-axis\",\n      \"localized\": \"modalità asse X\",\n      \"reload\": \"\",\n      \"hint\": \"modalità asse X\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode y-axis\",\n      \"localized\": \"modalità asse Y\",\n      \"reload\": \"\",\n      \"hint\": \"modalità asse Y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model auto-download on demand\",\n      \"localized\": \"download automatico modello su richiesta\",\n      \"reload\": \"\",\n      \"hint\": \"download automatico modello su richiesta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model autoload on start\",\n      \"localized\": \"caricamento automatico modello all'avvio\",\n      \"reload\": \"\",\n      \"hint\": \"caricamento automatico modello all'avvio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model compile fullgraph\",\n      \"localized\": \"compilazione modello fullgraph\",\n      \"reload\": \"\",\n      \"hint\": \"compilazione modello fullgraph\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model compile suppress errors\",\n      \"localized\": \"compilazione modello sopprimi errori\",\n      \"reload\": \"\",\n      \"hint\": \"compilazione modello sopprimi errori\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model compile verbose mode\",\n      \"localized\": \"modalità verbosa compilazione modello\",\n      \"reload\": \"\",\n      \"hint\": \"modalità verbosa compilazione modello\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model info\",\n      \"localized\": \"info modello\",\n      \"reload\": \"\",\n      \"hint\": \"info modello\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model metadata\",\n      \"localized\": \"metadati modello\",\n      \"reload\": \"\",\n      \"hint\": \"metadati modello\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model name\",\n      \"localized\": \"nome modello\",\n      \"reload\": \"\",\n      \"hint\": \"nome modello\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model precision\",\n      \"localized\": \"precisione modello\",\n      \"reload\": \"\",\n      \"hint\": \"precisione modello\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model type\",\n      \"localized\": \"tipo modello\",\n      \"reload\": \"\",\n      \"hint\": \"tipo modello\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model url\",\n      \"localized\": \"URL modello\",\n      \"reload\": \"\",\n      \"hint\": \"URL modello\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"modern\",\n      \"localized\": \"moderno\",\n      \"reload\": \"\",\n      \"hint\": \"moderno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"momentum\",\n      \"localized\": \"momentum\",\n      \"reload\": \"\",\n      \"hint\": \"momentum\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"motion level\",\n      \"localized\": \"livello di movimento\",\n      \"reload\": \"\",\n      \"hint\": \"livello di movimento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mount url subpath\",\n      \"localized\": \"monta sottopercorso URL\",\n      \"reload\": \"\",\n      \"hint\": \"monta sottopercorso URL\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move base model to cpu when using refiner\",\n      \"localized\": \"sposta modello base alla CPU quando si usa il refiner\",\n      \"reload\": \"\",\n      \"hint\": \"sposta modello base alla CPU quando si usa il refiner\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move base model to cpu when using vae\",\n      \"localized\": \"sposta modello base alla CPU quando si usa il VAE\",\n      \"reload\": \"\",\n      \"hint\": \"sposta modello base alla CPU quando si usa il VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move detailer model to cpu when complete\",\n      \"localized\": \"sposta modello detailer alla CPU quando completo\",\n      \"reload\": \"\",\n      \"hint\": \"sposta modello detailer alla CPU quando completo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move refiner model to cpu when not in use\",\n      \"localized\": \"sposta modello refiner alla CPU quando non in uso\",\n      \"reload\": \"\",\n      \"hint\": \"sposta modello refiner alla CPU quando non in uso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"movements\",\n      \"localized\": \"movimenti\",\n      \"reload\": \"\",\n      \"hint\": \"movimenti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"multi decoder\",\n      \"localized\": \"multi-decoder\",\n      \"reload\": \"\",\n      \"hint\": \"multi-decoder\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"multistep restore\",\n      \"localized\": \"ripristino a più fasi\",\n      \"reload\": \"\",\n      \"hint\": \"ripristino a più fasi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"native\",\n      \"localized\": \"nativo\",\n      \"reload\": \"\",\n      \"hint\": \"nativo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"near threshold\",\n      \"localized\": \"vicino alla soglia\",\n      \"reload\": \"\",\n      \"hint\": \"vicino alla soglia\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"negative\",\n      \"localized\": \"negativo\",\n      \"reload\": \"\",\n      \"hint\": \"negativo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"network negative prompt\",\n      \"localized\": \"prompt negativo di rete\",\n      \"reload\": \"\",\n      \"hint\": \"prompt negativo di rete\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"network parameters\",\n      \"localized\": \"parametri di rete\",\n      \"reload\": \"\",\n      \"hint\": \"parametri di rete\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"network prompt\",\n      \"localized\": \"prompt di rete\",\n      \"reload\": \"\",\n      \"hint\": \"prompt di rete\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"new model name\",\n      \"localized\": \"nuovo nome modello\",\n      \"reload\": \"\",\n      \"hint\": \"nuovo nome modello\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"nf4\",\n      \"localized\": \"nf4\",\n      \"reload\": \"\",\n      \"hint\": \"nf4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"nms\",\n      \"localized\": \"nms\",\n      \"reload\": \"\",\n      \"hint\": \"nms\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise\",\n      \"localized\": \"rumore\",\n      \"reload\": \"\",\n      \"hint\": \"rumore\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise multiplier (eta)\",\n      \"localized\": \"moltiplicatore di rumore (eta)\",\n      \"reload\": \"\",\n      \"hint\": \"moltiplicatore di rumore (eta)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise multiplier for image processing\",\n      \"localized\": \"moltiplicatore di rumore per elaborazione immagine\",\n      \"reload\": \"\",\n      \"hint\": \"moltiplicatore di rumore per elaborazione immagine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise seed delta (eta)\",\n      \"localized\": \"delta del seed di rumore (eta)\",\n      \"reload\": \"\",\n      \"hint\": \"delta del seed di rumore (eta)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise strength\",\n      \"localized\": \"intensità rumore\",\n      \"reload\": \"\",\n      \"hint\": \"intensità rumore\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"none\",\n      \"localized\": \"nessuno\",\n      \"reload\": \"\",\n      \"hint\": \"nessuno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"note\",\n      \"localized\": \"nota\",\n      \"reload\": \"\",\n      \"hint\": \"nota\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"nothing\",\n      \"localized\": \"niente\",\n      \"reload\": \"\",\n      \"hint\": \"niente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"num beams\",\n      \"localized\": \"numero di beam\",\n      \"reload\": \"\",\n      \"hint\": \"numero di beam\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"number\",\n      \"localized\": \"numero\",\n      \"reload\": \"\",\n      \"hint\": \"numero\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"numbered filenames\",\n      \"localized\": \"nomi file numerati\",\n      \"reload\": \"\",\n      \"hint\": \"nomi file numerati\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"offload\",\n      \"localized\": \"scarica\",\n      \"reload\": \"\",\n      \"hint\": \"scarica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"offload face module\",\n      \"localized\": \"scarica modulo viso\",\n      \"reload\": \"\",\n      \"hint\": \"scarica modulo viso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"offload models\",\n      \"localized\": \"scarica modelli\",\n      \"reload\": \"\",\n      \"hint\": \"scarica modelli\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"olive-ai\",\n      \"localized\": \"olive-ai\",\n      \"reload\": \"\",\n      \"hint\": \"olive-ai\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"onediff\",\n      \"localized\": \"onediff\",\n      \"reload\": \"\",\n      \"hint\": \"onediff\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"onnx\",\n      \"localized\": \"onnx\",\n      \"reload\": \"\",\n      \"hint\": \"onnx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openbody\",\n      \"localized\": \"openbody\",\n      \"reload\": \"\",\n      \"hint\": \"openbody\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openclip\",\n      \"localized\": \"openclip\",\n      \"reload\": \"\",\n      \"hint\": \"openclip\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino disable memory cleanup after compile\",\n      \"localized\": \"OpenVINO disabilita pulizia memoria dopo compilazione\",\n      \"reload\": \"\",\n      \"hint\": \"OpenVINO disabilita pulizia memoria dopo compilazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino disable model caching\",\n      \"localized\": \"OpenVINO disabilita caching modello\",\n      \"reload\": \"\",\n      \"hint\": \"OpenVINO disabilita caching modello\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino mode\",\n      \"localized\": \"modalità OpenVINO\",\n      \"reload\": \"\",\n      \"hint\": \"modalità OpenVINO\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino_fx\",\n      \"localized\": \"openvino_fx\",\n      \"reload\": \"\",\n      \"hint\": \"openvino_fx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"optional image description\",\n      \"localized\": \"descrizione immagine opzionale\",\n      \"reload\": \"\",\n      \"hint\": \"descrizione immagine opzionale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"optional init image or video\",\n      \"localized\": \"immagine o video di inizializzazione opzionale\",\n      \"reload\": \"\",\n      \"hint\": \"immagine o video di inizializzazione opzionale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"order\",\n      \"localized\": \"ordine\",\n      \"reload\": \"\",\n      \"hint\": \"ordine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ortho\",\n      \"localized\": \"orto\",\n      \"reload\": \"\",\n      \"hint\": \"orto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"outpaint\",\n      \"localized\": \"outpaint\",\n      \"reload\": \"\",\n      \"hint\": \"outpaint\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"output model\",\n      \"localized\": \"modello di output\",\n      \"reload\": \"\",\n      \"hint\": \"modello di output\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override resolution\",\n      \"localized\": \"sovrascrivi risoluzione\",\n      \"reload\": \"\",\n      \"hint\": \"sovrascrivi risoluzione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override sampler\",\n      \"localized\": \"sovrascrivi sampler\",\n      \"reload\": \"\",\n      \"hint\": \"sovrascrivi sampler\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override scheduler\",\n      \"localized\": \"sovrascrivi scheduler\",\n      \"reload\": \"\",\n      \"hint\": \"sovrascrivi scheduler\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override steps\",\n      \"localized\": \"sovrascrivi passi\",\n      \"reload\": \"\",\n      \"hint\": \"sovrascrivi passi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override t1 ratio\",\n      \"localized\": \"sovrascrivi rapporto T1\",\n      \"reload\": \"\",\n      \"hint\": \"sovrascrivi rapporto T1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override t2 ratio\",\n      \"localized\": \"sovrascrivi rapporto T2\",\n      \"reload\": \"\",\n      \"hint\": \"sovrascrivi rapporto T2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"overwrite existing file\",\n      \"localized\": \"sovrascrivi file esistente\",\n      \"reload\": \"\",\n      \"hint\": \"sovrascrivi file esistente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"overwrite model\",\n      \"localized\": \"sovrascrivi modello\",\n      \"reload\": \"\",\n      \"hint\": \"sovrascrivi modello\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pad frames\",\n      \"localized\": \"riempi fotogrammi\",\n      \"reload\": \"\",\n      \"hint\": \"riempi fotogrammi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"padding\",\n      \"localized\": \"padding\",\n      \"reload\": \"\",\n      \"hint\": \"padding\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"parallel process images in batch\",\n      \"localized\": \"elabora immagini in parallelo in batch\",\n      \"reload\": \"\",\n      \"hint\": \"elabora immagini in parallelo in batch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"parameter free\",\n      \"localized\": \"senza parametri\",\n      \"reload\": \"\",\n      \"hint\": \"senza parametri\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"path to model file\",\n      \"localized\": \"percorso del file modello\",\n      \"reload\": \"\",\n      \"hint\": \"percorso del file modello\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"path to notification sound\",\n      \"localized\": \"percorso del suono di notifica\",\n      \"reload\": \"\",\n      \"hint\": \"percorso del suono di notifica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"peft\",\n      \"localized\": \"peft\",\n      \"reload\": \"\",\n      \"hint\": \"peft\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"penalty\",\n      \"localized\": \"penalità\",\n      \"reload\": \"\",\n      \"hint\": \"penalità\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perflow\",\n      \"localized\": \"perflow\",\n      \"reload\": \"\",\n      \"hint\": \"perflow\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perform injection\",\n      \"localized\": \"esegui iniezione\",\n      \"reload\": \"\",\n      \"hint\": \"esegui iniezione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perform sdsa\",\n      \"localized\": \"esegui SDSA\",\n      \"reload\": \"\",\n      \"hint\": \"esegui SDSA\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perform warmup\",\n      \"localized\": \"esegui warmup\",\n      \"reload\": \"\",\n      \"hint\": \"esegui warmup\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"performance\",\n      \"localized\": \"prestazioni\",\n      \"reload\": \"\",\n      \"hint\": \"prestazioni\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"photomaker model\",\n      \"localized\": \"modello photomaker\",\n      \"reload\": \"\",\n      \"hint\": \"modello photomaker\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pidinet\",\n      \"localized\": \"pidinet\",\n      \"reload\": \"\",\n      \"hint\": \"pidinet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pipeline\",\n      \"localized\": \"pipeline\",\n      \"reload\": \"\",\n      \"hint\": \"pipeline\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pixels to expand\",\n      \"localized\": \"pixel da espandere\",\n      \"reload\": \"\",\n      \"hint\": \"pixel da espandere\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"platform\",\n      \"localized\": \"piattaforma\",\n      \"reload\": \"\",\n      \"hint\": \"piattaforma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"play\",\n      \"localized\": \"riproduci\",\n      \"reload\": \"\",\n      \"hint\": \"riproduci\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"play a notification upon completion\",\n      \"localized\": \"riproduci una notifica al completamento\",\n      \"reload\": \"\",\n      \"hint\": \"riproduci una notifica al completamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pndm\",\n      \"localized\": \"pndm\",\n      \"reload\": \"\",\n      \"hint\": \"pndm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"polyexponential\",\n      \"localized\": \"poliesponenziale\",\n      \"reload\": \"\",\n      \"hint\": \"poliesponenziale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pony\",\n      \"localized\": \"pony\",\n      \"reload\": \"\",\n      \"hint\": \"pony\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pose confidence\",\n      \"localized\": \"confidenza posa\",\n      \"reload\": \"\",\n      \"hint\": \"confidenza posa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"positive\",\n      \"localized\": \"positivo\",\n      \"reload\": \"\",\n      \"hint\": \"positivo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocess mask\",\n      \"localized\": \"maschera di post-elaborazione\",\n      \"reload\": \"\",\n      \"hint\": \"maschera di post-elaborazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocess upscale\",\n      \"localized\": \"upscale di post-elaborazione\",\n      \"reload\": \"\",\n      \"hint\": \"upscale di post-elaborazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocessing operation order\",\n      \"localized\": \"ordine delle operazioni di post-elaborazione\",\n      \"reload\": \"\",\n      \"hint\": \"ordine delle operazioni di post-elaborazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"power\",\n      \"localized\": \"potenza\",\n      \"reload\": \"\",\n      \"hint\": \"potenza\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"predefined question\",\n      \"localized\": \"domanda predefinita\",\n      \"reload\": \"\",\n      \"hint\": \"domanda predefinita\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prediction method\",\n      \"localized\": \"metodo di predizione\",\n      \"reload\": \"\",\n      \"hint\": \"metodo di predizione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preset\",\n      \"localized\": \"preset\",\n      \"reload\": \"\",\n      \"hint\": \"preset\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preset block merge\",\n      \"localized\": \"unione blocchi preset\",\n      \"reload\": \"\",\n      \"hint\": \"unione blocchi preset\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview\",\n      \"localized\": \"anteprima\",\n      \"reload\": \"\",\n      \"hint\": \"anteprima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview end\",\n      \"localized\": \"fine anteprima\",\n      \"reload\": \"\",\n      \"hint\": \"fine anteprima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview start\",\n      \"localized\": \"inizio anteprima\",\n      \"reload\": \"\",\n      \"hint\": \"inizio anteprima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"primary model\",\n      \"localized\": \"modello primario\",\n      \"reload\": \"\",\n      \"hint\": \"modello primario\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor\",\n      \"localized\": \"processore\",\n      \"reload\": \"\",\n      \"hint\": \"processore\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor move to cpu after use\",\n      \"localized\": \"sposta il processore alla cpu dopo l'uso\",\n      \"reload\": \"\",\n      \"hint\": \"sposta il processore alla cpu dopo l'uso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor settings\",\n      \"localized\": \"impostazioni processore\",\n      \"reload\": \"\",\n      \"hint\": \"impostazioni processore\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor unload after use\",\n      \"localized\": \"scarica il processore dopo l'uso\",\n      \"reload\": \"\",\n      \"hint\": \"scarica il processore dopo l'uso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt attention normalization\",\n      \"localized\": \"normalizzazione attenzione prompt\",\n      \"reload\": \"\",\n      \"hint\": \"normalizzazione attenzione prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt ex\",\n      \"localized\": \"prompt ex\",\n      \"reload\": \"\",\n      \"hint\": \"prompt ex\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt processor\",\n      \"localized\": \"processore prompt\",\n      \"reload\": \"\",\n      \"hint\": \"processore prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt strength\",\n      \"localized\": \"forza prompt\",\n      \"reload\": \"\",\n      \"hint\": \"forza prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt thresholds:\",\n      \"localized\": \"soglie prompt:\",\n      \"reload\": \"\",\n      \"hint\": \"soglie prompt:\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompts\",\n      \"localized\": \"prompt\",\n      \"reload\": \"\",\n      \"hint\": \"prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"provider\",\n      \"localized\": \"fornitore\",\n      \"reload\": \"\",\n      \"hint\": \"fornitore\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prune\",\n      \"localized\": \"potatura\",\n      \"reload\": \"\",\n      \"hint\": \"potatura\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quad\",\n      \"localized\": \"quad\",\n      \"reload\": \"\",\n      \"hint\": \"quad\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization activations type\",\n      \"localized\": \"tipo di attivazioni quantizzazione\",\n      \"reload\": \"\",\n      \"hint\": \"tipo di attivazioni quantizzazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization mode\",\n      \"localized\": \"modalità di quantizzazione\",\n      \"reload\": \"\",\n      \"hint\": \"modalità di quantizzazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization type\",\n      \"localized\": \"tipo di quantizzazione\",\n      \"reload\": \"\",\n      \"hint\": \"tipo di quantizzazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization weights type\",\n      \"localized\": \"tipo di pesi quantizzazione\",\n      \"reload\": \"\",\n      \"hint\": \"tipo di pesi quantizzazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"random seeds\",\n      \"localized\": \"seed casuali\",\n      \"reload\": \"\",\n      \"hint\": \"seed casuali\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"range\",\n      \"localized\": \"intervallo\",\n      \"reload\": \"\",\n      \"hint\": \"intervallo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rebase\",\n      \"localized\": \"rebase\",\n      \"reload\": \"\",\n      \"hint\": \"rebase\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"recursive\",\n      \"localized\": \"ricorsivo\",\n      \"reload\": \"\",\n      \"hint\": \"ricorsivo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reduce-overhead\",\n      \"localized\": \"riduci overhead\",\n      \"reload\": \"\",\n      \"hint\": \"riduci overhead\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"redux prompt strength\",\n      \"localized\": \"forza prompt redux\",\n      \"reload\": \"\",\n      \"hint\": \"forza prompt redux\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference adain weight\",\n      \"localized\": \"peso adain di riferimento\",\n      \"reload\": \"\",\n      \"hint\": \"peso adain di riferimento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference query weight\",\n      \"localized\": \"peso query di riferimento\",\n      \"reload\": \"\",\n      \"hint\": \"peso query di riferimento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference unit 1\",\n      \"localized\": \"unità di riferimento 1\",\n      \"reload\": \"\",\n      \"hint\": \"unità di riferimento 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refine foreground\",\n      \"localized\": \"affina primo piano\",\n      \"reload\": \"\",\n      \"hint\": \"affina primo piano\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh bench\",\n      \"localized\": \"aggiorna benchmark\",\n      \"reload\": \"\",\n      \"hint\": \"aggiorna benchmark\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh data\",\n      \"localized\": \"aggiorna dati\",\n      \"reload\": \"\",\n      \"hint\": \"aggiorna dati\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh state\",\n      \"localized\": \"aggiorna stato\",\n      \"reload\": \"\",\n      \"hint\": \"aggiorna stato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh ui values\",\n      \"localized\": \"aggiorna valori ui\",\n      \"reload\": \"\",\n      \"hint\": \"aggiorna valori ui\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reinstall\",\n      \"localized\": \"reinstalla\",\n      \"reload\": \"\",\n      \"hint\": \"reinstalla\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"remove background\",\n      \"localized\": \"rimuovi sfondo\",\n      \"reload\": \"\",\n      \"hint\": \"rimuovi sfondo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repeat x-axis\",\n      \"localized\": \"ripeti asse x\",\n      \"reload\": \"\",\n      \"hint\": \"ripeti asse x\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repeat y-axis\",\n      \"localized\": \"ripeti asse y\",\n      \"reload\": \"\",\n      \"hint\": \"ripeti asse y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"replace vae\",\n      \"localized\": \"sostituisci vae\",\n      \"reload\": \"\",\n      \"hint\": \"sostituisci vae\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repos\",\n      \"localized\": \"repos\",\n      \"reload\": \"\",\n      \"hint\": \"repos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess decode\",\n      \"localized\": \"decodifica rielabora\",\n      \"reload\": \"\",\n      \"hint\": \"decodifica rielabora\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess face\",\n      \"localized\": \"rielabora volto\",\n      \"reload\": \"\",\n      \"hint\": \"rielabora volto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess refine\",\n      \"localized\": \"affina rielabora\",\n      \"reload\": \"\",\n      \"hint\": \"affina rielabora\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"request browser notifications\",\n      \"localized\": \"richiedi notifiche browser\",\n      \"reload\": \"\",\n      \"hint\": \"richiedi notifiche browser\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rescale\",\n      \"localized\": \"riscala\",\n      \"reload\": \"\",\n      \"hint\": \"riscala\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rescale betas with zero terminal snr\",\n      \"localized\": \"riscala beta con snr terminale zero\",\n      \"reload\": \"\",\n      \"hint\": \"riscala beta con snr terminale zero\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reset anchors\",\n      \"localized\": \"reimposta ancoraggi\",\n      \"reload\": \"\",\n      \"hint\": \"reimposta ancoraggi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"residual diff threshold\",\n      \"localized\": \"soglia diff residua\",\n      \"reload\": \"\",\n      \"hint\": \"soglia diff residua\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize background color\",\n      \"localized\": \"ridimensiona colore sfondo\",\n      \"reload\": \"\",\n      \"hint\": \"ridimensiona colore sfondo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize method\",\n      \"localized\": \"metodo di ridimensionamento\",\n      \"reload\": \"\",\n      \"hint\": \"metodo di ridimensionamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize mode\",\n      \"localized\": \"modalità di ridimensionamento\",\n      \"reload\": \"\",\n      \"hint\": \"modalità di ridimensionamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize scale\",\n      \"localized\": \"scala di ridimensionamento\",\n      \"reload\": \"\",\n      \"hint\": \"scala di ridimensionamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restart step\",\n      \"localized\": \"riavvia passo\",\n      \"reload\": \"\",\n      \"hint\": \"riavvia passo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore faces: codeformer\",\n      \"localized\": \"ripristina volti: codeformer\",\n      \"reload\": \"\",\n      \"hint\": \"ripristina volti: codeformer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore faces: gfpgan\",\n      \"localized\": \"ripristina volti: gfpgan\",\n      \"reload\": \"\",\n      \"hint\": \"ripristina volti: gfpgan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore pipe on end\",\n      \"localized\": \"ripristina pipeline alla fine\",\n      \"reload\": \"\",\n      \"hint\": \"ripristina pipeline alla fine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore unparsed prompt\",\n      \"localized\": \"ripristina prompt non analizzato\",\n      \"reload\": \"\",\n      \"hint\": \"ripristina prompt non analizzato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reswapper model\",\n      \"localized\": \"modello reswapper\",\n      \"reload\": \"\",\n      \"hint\": \"modello reswapper\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"return original images\",\n      \"localized\": \"restituisci immagini originali\",\n      \"reload\": \"\",\n      \"hint\": \"restituisci immagini originali\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"right\",\n      \"localized\": \"destra\",\n      \"reload\": \"\",\n      \"hint\": \"destra\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"root model folder\",\n      \"localized\": \"cartella modelli principale\",\n      \"reload\": \"\",\n      \"hint\": \"cartella modelli principale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rows\",\n      \"localized\": \"righe\",\n      \"reload\": \"\",\n      \"hint\": \"righe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"run\",\n      \"localized\": \"esegui\",\n      \"reload\": \"\",\n      \"hint\": \"esegui\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"run benchmark\",\n      \"localized\": \"esegui benchmark\",\n      \"reload\": \"\",\n      \"hint\": \"esegui benchmark\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sa solver\",\n      \"localized\": \"solutore sa\",\n      \"reload\": \"\",\n      \"hint\": \"solutore sa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"safetensors\",\n      \"localized\": \"safetensors\",\n      \"reload\": \"\",\n      \"hint\": \"safetensors\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sage attention\",\n      \"localized\": \"attenzione sage\",\n      \"reload\": \"\",\n      \"hint\": \"attenzione sage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"same as primary\",\n      \"localized\": \"stesso del primario\",\n      \"reload\": \"\",\n      \"hint\": \"stesso del primario\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"same latent\",\n      \"localized\": \"stesso latente\",\n      \"reload\": \"\",\n      \"hint\": \"stesso latente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sample\",\n      \"localized\": \"campione\",\n      \"reload\": \"\",\n      \"hint\": \"campione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler\",\n      \"localized\": \"campionatore\",\n      \"reload\": \"\",\n      \"hint\": \"campionatore\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler dynamic shift\",\n      \"localized\": \"shift dinamico campionatore\",\n      \"reload\": \"\",\n      \"hint\": \"shift dinamico campionatore\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler order\",\n      \"localized\": \"ordine campionatore\",\n      \"reload\": \"\",\n      \"hint\": \"ordine campionatore\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler shift\",\n      \"localized\": \"shift campionatore\",\n      \"reload\": \"\",\n      \"hint\": \"shift campionatore\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sana: use complex human instructions\",\n      \"localized\": \"sana: usa istruzioni umane complesse\",\n      \"reload\": \"\",\n      \"hint\": \"sana: usa istruzioni umane complesse\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"saturation\",\n      \"localized\": \"saturazione\",\n      \"reload\": \"\",\n      \"hint\": \"saturazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save all generated image grids\",\n      \"localized\": \"salva tutte le griglie di immagini generate\",\n      \"reload\": \"\",\n      \"hint\": \"salva tutte le griglie di immagini generate\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save all generated images\",\n      \"localized\": \"salva tutte le immagini generate\",\n      \"reload\": \"\",\n      \"hint\": \"salva tutte le immagini generate\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save caption files\",\n      \"localized\": \"salva file di didascalie\",\n      \"reload\": \"\",\n      \"hint\": \"salva file di didascalie\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save diffusers\",\n      \"localized\": \"salva diffusori\",\n      \"reload\": \"\",\n      \"hint\": \"salva diffusori\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save hdr image\",\n      \"localized\": \"salva immagine hdr\",\n      \"reload\": \"\",\n      \"hint\": \"salva immagine hdr\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before color correction\",\n      \"localized\": \"salva immagine prima della correzione colore\",\n      \"reload\": \"\",\n      \"hint\": \"salva immagine prima della correzione colore\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before detailer\",\n      \"localized\": \"salva immagine prima del detailer\",\n      \"reload\": \"\",\n      \"hint\": \"salva immagine prima del detailer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before hires\",\n      \"localized\": \"salva immagine prima dell'hires\",\n      \"reload\": \"\",\n      \"hint\": \"salva immagine prima dell'hires\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before refiner\",\n      \"localized\": \"salva immagine prima del refiner\",\n      \"reload\": \"\",\n      \"hint\": \"salva immagine prima del refiner\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save images to a subdirectory\",\n      \"localized\": \"salva immagini in una sottocartella\",\n      \"reload\": \"\",\n      \"hint\": \"salva immagini in una sottocartella\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save init images\",\n      \"localized\": \"salva immagini iniziali\",\n      \"reload\": \"\",\n      \"hint\": \"salva immagini iniziali\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save inpainting mask\",\n      \"localized\": \"salva maschera di inpainting\",\n      \"reload\": \"\",\n      \"hint\": \"salva maschera di inpainting\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save inpainting masked composite\",\n      \"localized\": \"salva composito mascherato inpainting\",\n      \"reload\": \"\",\n      \"hint\": \"salva composito mascherato inpainting\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save metadata\",\n      \"localized\": \"salva metadati\",\n      \"reload\": \"\",\n      \"hint\": \"salva metadati\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save only saves selected image\",\n      \"localized\": \"salva solo l'immagine selezionata\",\n      \"reload\": \"\",\n      \"hint\": \"salva solo l'immagine selezionata\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save output\",\n      \"localized\": \"salva output\",\n      \"reload\": \"\",\n      \"hint\": \"salva output\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save safetensors\",\n      \"localized\": \"salva safetensors\",\n      \"reload\": \"\",\n      \"hint\": \"salva safetensors\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save unparsed prompt\",\n      \"localized\": \"salva prompt non analizzato\",\n      \"reload\": \"\",\n      \"hint\": \"salva prompt non analizzato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale  after\",\n      \"localized\": \"scala dopo\",\n      \"reload\": \"\",\n      \"hint\": \"scala dopo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale  before\",\n      \"localized\": \"scala prima\",\n      \"reload\": \"\",\n      \"hint\": \"scala prima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale  mask\",\n      \"localized\": \"scala maschera\",\n      \"reload\": \"\",\n      \"hint\": \"scala maschera\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale factor\",\n      \"localized\": \"fattore di scala\",\n      \"reload\": \"\",\n      \"hint\": \"fattore di scala\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"score\",\n      \"localized\": \"punteggio\",\n      \"reload\": \"\",\n      \"hint\": \"punteggio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"score threshold\",\n      \"localized\": \"soglia punteggio\",\n      \"reload\": \"\",\n      \"hint\": \"soglia punteggio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scribble\",\n      \"localized\": \"scarabocchio\",\n      \"reload\": \"\",\n      \"hint\": \"scarabocchio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-attire\",\n      \"localized\": \"sd15-abbigliamento\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-abbigliamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-likeness\",\n      \"localized\": \"sd15-somiglianza\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-somiglianza\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-navimixu\",\n      \"localized\": \"sd15-navimixu\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-navimixu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-sexy\",\n      \"localized\": \"sd15-sexy\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-sexy\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-artstyle\",\n      \"localized\": \"sdxl-stile artistico\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-stile artistico\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-negative\",\n      \"localized\": \"sdxl-negativo\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-negativo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-sexy\",\n      \"localized\": \"sdxl-sexy\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-sexy\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-sliders\",\n      \"localized\": \"sdxl-cursori\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-cursori\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-toon\",\n      \"localized\": \"sdxl-fumetto\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-fumetto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl: use weighted pooled embeds\",\n      \"localized\": \"sdxl: usa embed raggruppati pesati\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl: usa embed raggruppati pesati\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search changelog\",\n      \"localized\": \"cerca changelog\",\n      \"reload\": \"\",\n      \"hint\": \"cerca changelog\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search models\",\n      \"localized\": \"cerca modelli\",\n      \"reload\": \"\",\n      \"hint\": \"cerca modelli\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search wiki pages\",\n      \"localized\": \"cerca pagine wiki\",\n      \"reload\": \"\",\n      \"hint\": \"cerca pagine wiki\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"secondary model\",\n      \"localized\": \"modello secondario\",\n      \"reload\": \"\",\n      \"hint\": \"modello secondario\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"segmentanything\",\n      \"localized\": \"segmentanything\",\n      \"reload\": \"\",\n      \"hint\": \"segmentanything\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"select\",\n      \"localized\": \"seleziona\",\n      \"reload\": \"\",\n      \"hint\": \"seleziona\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"select model\",\n      \"localized\": \"seleziona modello\",\n      \"reload\": \"\",\n      \"hint\": \"seleziona modello\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send interrupt\",\n      \"localized\": \"invia interruzione\",\n      \"reload\": \"\",\n      \"hint\": \"invia interruzione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send seed when sending prompt or image to other interface\",\n      \"localized\": \"invia seed quando si invia prompt o immagine ad altra interfaccia\",\n      \"reload\": \"\",\n      \"hint\": \"invia seed quando si invia prompt o immagine ad altra interfaccia\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send size when sending prompt or image to another interface\",\n      \"localized\": \"invia dimensione quando si invia prompt o immagine ad un'altra interfaccia\",\n      \"reload\": \"\",\n      \"hint\": \"invia dimensione quando si invia prompt o immagine ad un'altra interfaccia\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sequential\",\n      \"localized\": \"sequenziale\",\n      \"reload\": \"\",\n      \"hint\": \"sequenziale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"server start time\",\n      \"localized\": \"ora di avvio server\",\n      \"reload\": \"\",\n      \"hint\": \"ora di avvio server\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"set at prompt start\",\n      \"localized\": \"imposta all'inizio del prompt\",\n      \"reload\": \"\",\n      \"hint\": \"imposta all'inizio del prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"set ui menu states\",\n      \"localized\": \"imposta stati del menu ui\",\n      \"reload\": \"\",\n      \"hint\": \"imposta stati del menu ui\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"share queries\",\n      \"localized\": \"condividi query\",\n      \"reload\": \"\",\n      \"hint\": \"condividi query\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shared options\",\n      \"localized\": \"opzioni condivise\",\n      \"reload\": \"\",\n      \"hint\": \"opzioni condivise\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sharpen\",\n      \"localized\": \"nitidezza\",\n      \"reload\": \"\",\n      \"hint\": \"nitidezza\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shift\",\n      \"localized\": \"spostamento\",\n      \"reload\": \"\",\n      \"hint\": \"spostamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show grid in results\",\n      \"localized\": \"mostra griglia nei risultati\",\n      \"reload\": \"\",\n      \"hint\": \"mostra griglia nei risultati\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show input\",\n      \"localized\": \"mostra input\",\n      \"reload\": \"\",\n      \"hint\": \"mostra input\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show metadata in full screen image browser\",\n      \"localized\": \"mostra metadati nel browser immagini a schermo intero\",\n      \"reload\": \"\",\n      \"hint\": \"mostra metadati nel browser immagini a schermo intero\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show motd\",\n      \"localized\": \"mostra motd\",\n      \"reload\": \"\",\n      \"hint\": \"mostra motd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show preview\",\n      \"localized\": \"mostra anteprima\",\n      \"reload\": \"\",\n      \"hint\": \"mostra anteprima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shuffle weights\",\n      \"localized\": \"mescola pesi\",\n      \"reload\": \"\",\n      \"hint\": \"mescola pesi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma\",\n      \"localized\": \"sigma\",\n      \"reload\": \"\",\n      \"hint\": \"sigma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma churn\",\n      \"localized\": \"sigma churn\",\n      \"reload\": \"\",\n      \"hint\": \"sigma churn\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma max\",\n      \"localized\": \"sigma max\",\n      \"reload\": \"\",\n      \"hint\": \"sigma max\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma method\",\n      \"localized\": \"metodo sigma\",\n      \"reload\": \"\",\n      \"hint\": \"metodo sigma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma min\",\n      \"localized\": \"sigma min\",\n      \"reload\": \"\",\n      \"hint\": \"sigma min\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma noise\",\n      \"localized\": \"rumore sigma\",\n      \"reload\": \"\",\n      \"hint\": \"rumore sigma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma tmin\",\n      \"localized\": \"sigma tmin\",\n      \"reload\": \"\",\n      \"hint\": \"sigma tmin\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"simple merge\",\n      \"localized\": \"unione semplice\",\n      \"reload\": \"\",\n      \"hint\": \"unione semplice\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"size\",\n      \"localized\": \"dimensione\",\n      \"reload\": \"\",\n      \"hint\": \"dimensione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sketch\",\n      \"localized\": \"schizzo\",\n      \"reload\": \"\",\n      \"hint\": \"schizzo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip generation if nan found in latents\",\n      \"localized\": \"salta generazione se nan trovato nei latenti\",\n      \"reload\": \"\",\n      \"hint\": \"salta generazione se nan trovato nei latenti\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip guidance layers\",\n      \"localized\": \"salta strati guida\",\n      \"reload\": \"\",\n      \"hint\": \"salta strati guida\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip input frames\",\n      \"localized\": \"salta fotogrammi di input\",\n      \"reload\": \"\",\n      \"hint\": \"salta fotogrammi di input\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"slider\",\n      \"localized\": \"cursore\",\n      \"reload\": \"\",\n      \"hint\": \"cursore\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"smooth mask\",\n      \"localized\": \"maschera liscia\",\n      \"reload\": \"\",\n      \"hint\": \"maschera liscia\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"solver order (where\",\n      \"localized\": \"ordine risolutore (dove\",\n      \"reload\": \"\",\n      \"hint\": \"ordine risolutore (dove\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sort order\",\n      \"localized\": \"ordine di ordinamento\",\n      \"reload\": \"\",\n      \"hint\": \"ordine di ordinamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"source subject\",\n      \"localized\": \"soggetto sorgente\",\n      \"reload\": \"\",\n      \"hint\": \"soggetto sorgente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"space\",\n      \"localized\": \"spazio\",\n      \"reload\": \"\",\n      \"hint\": \"spazio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"spatial frequency\",\n      \"localized\": \"frequenza spaziale\",\n      \"reload\": \"\",\n      \"hint\": \"frequenza spaziale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"specify model revision\",\n      \"localized\": \"specifica revisione modello\",\n      \"reload\": \"\",\n      \"hint\": \"specifica revisione modello\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"specify model variant\",\n      \"localized\": \"specifica variante modello\",\n      \"reload\": \"\",\n      \"hint\": \"specifica variante modello\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"split attention\",\n      \"localized\": \"attenzione divisa\",\n      \"reload\": \"\",\n      \"hint\": \"attenzione divisa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"stable-fast\",\n      \"localized\": \"stable-fast\",\n      \"reload\": \"\",\n      \"hint\": \"stable-fast\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"standard\",\n      \"localized\": \"standard\",\n      \"reload\": \"\",\n      \"hint\": \"standard\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"start\",\n      \"localized\": \"avvio\",\n      \"reload\": \"\",\n      \"hint\": \"avvio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"start profiling\",\n      \"localized\": \"avvia profilazione\",\n      \"reload\": \"\",\n      \"hint\": \"avvia profilazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"state\",\n      \"localized\": \"stato\",\n      \"reload\": \"\",\n      \"hint\": \"stato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"stride\",\n      \"localized\": \"passo\",\n      \"reload\": \"\",\n      \"hint\": \"passo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"structure\",\n      \"localized\": \"struttura\",\n      \"reload\": \"\",\n      \"hint\": \"struttura\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"style fidelity\",\n      \"localized\": \"fedeltà stile\",\n      \"reload\": \"\",\n      \"hint\": \"fedeltà stile\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"subject\",\n      \"localized\": \"soggetto\",\n      \"reload\": \"\",\n      \"hint\": \"soggetto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"submit results\",\n      \"localized\": \"invia risultati\",\n      \"reload\": \"\",\n      \"hint\": \"invia risultati\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"submodules\",\n      \"localized\": \"sottomoduli\",\n      \"reload\": \"\",\n      \"hint\": \"sottomoduli\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap x/y\",\n      \"localized\": \"scambia x/y\",\n      \"reload\": \"\",\n      \"hint\": \"scambia x/y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap x/z\",\n      \"localized\": \"scambia x/z\",\n      \"reload\": \"\",\n      \"hint\": \"scambia x/z\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap y/z\",\n      \"localized\": \"scambia y/z\",\n      \"reload\": \"\",\n      \"hint\": \"scambia y/z\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i adapter\",\n      \"localized\": \"adattatore t2i\",\n      \"reload\": \"\",\n      \"hint\": \"adattatore t2i\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i strength\",\n      \"localized\": \"forza t2i\",\n      \"reload\": \"\",\n      \"hint\": \"forza t2i\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 1\",\n      \"localized\": \"unità adattatore t2i 1\",\n      \"reload\": \"\",\n      \"hint\": \"unità adattatore t2i 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 2\",\n      \"localized\": \"unità adattatore t2i 2\",\n      \"reload\": \"\",\n      \"hint\": \"unità adattatore t2i 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 3\",\n      \"localized\": \"unità adattatore t2i 3\",\n      \"reload\": \"\",\n      \"hint\": \"unità adattatore t2i 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 4\",\n      \"localized\": \"unità adattatore t2i 4\",\n      \"reload\": \"\",\n      \"hint\": \"unità adattatore t2i 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd\",\n      \"localized\": \"taesd\",\n      \"reload\": \"\",\n      \"hint\": \"taesd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd decode layers\",\n      \"localized\": \"taesd decodifica livelli\",\n      \"reload\": \"\",\n      \"hint\": \"taesd decodifica livelli\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd variant\",\n      \"localized\": \"variante taesd\",\n      \"reload\": \"\",\n      \"hint\": \"variante taesd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"target subject\",\n      \"localized\": \"soggetto di destinazione\",\n      \"reload\": \"\",\n      \"hint\": \"soggetto di destinazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tcd\",\n      \"localized\": \"tcd\",\n      \"reload\": \"\",\n      \"hint\": \"tcd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tdd\",\n      \"localized\": \"tdd\",\n      \"reload\": \"\",\n      \"hint\": \"tdd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"te\",\n      \"localized\": \"te\",\n      \"reload\": \"\",\n      \"hint\": \"te\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"temperature\",\n      \"localized\": \"temperatura\",\n      \"reload\": \"\",\n      \"hint\": \"temperatura\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"temporal frequency\",\n      \"localized\": \"frequenza temporale\",\n      \"reload\": \"\",\n      \"hint\": \"frequenza temporale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tertiary model\",\n      \"localized\": \"modello terziario\",\n      \"reload\": \"\",\n      \"hint\": \"modello terziario\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text encoder cache size\",\n      \"localized\": \"dimensione cache encoder testo\",\n      \"reload\": \"\",\n      \"hint\": \"dimensione cache encoder testo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text encoder model\",\n      \"localized\": \"modello encoder testo\",\n      \"reload\": \"\",\n      \"hint\": \"modello encoder testo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text inputs\",\n      \"localized\": \"input di testo\",\n      \"reload\": \"\",\n      \"hint\": \"input di testo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"textbox\",\n      \"localized\": \"casella di testo\",\n      \"reload\": \"\",\n      \"hint\": \"casella di testo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"threshold\",\n      \"localized\": \"soglia\",\n      \"reload\": \"\",\n      \"hint\": \"soglia\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"thresholding\",\n      \"localized\": \"soglia\",\n      \"reload\": \"\",\n      \"hint\": \"soglia\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile frames\",\n      \"localized\": \"fotogrammi a piastrelle\",\n      \"reload\": \"\",\n      \"hint\": \"fotogrammi a piastrelle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=1\",\n      \"localized\": \"prompt a piastrelle: x=1 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"prompt a piastrelle: x=1 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=2\",\n      \"localized\": \"prompt a piastrelle: x=1 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"prompt a piastrelle: x=1 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=3\",\n      \"localized\": \"prompt a piastrelle: x=1 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"prompt a piastrelle: x=1 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=4\",\n      \"localized\": \"prompt a piastrelle: x=1 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"prompt a piastrelle: x=1 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=1\",\n      \"localized\": \"prompt a piastrelle: x=2 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"prompt a piastrelle: x=2 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=2\",\n      \"localized\": \"prompt a piastrelle: x=2 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"prompt a piastrelle: x=2 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=3\",\n      \"localized\": \"prompt a piastrelle: x=2 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"prompt a piastrelle: x=2 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=4\",\n      \"localized\": \"prompt a piastrelle: x=2 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"prompt a piastrelle: x=2 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=1\",\n      \"localized\": \"prompt a piastrelle: x=3 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"prompt a piastrelle: x=3 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=2\",\n      \"localized\": \"prompt a piastrelle: x=3 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"prompt a piastrelle: x=3 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=3\",\n      \"localized\": \"prompt a piastrelle: x=3 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"prompt a piastrelle: x=3 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=4\",\n      \"localized\": \"prompt a piastrelle: x=3 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"prompt a piastrelle: x=3 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=1\",\n      \"localized\": \"prompt a piastrelle: x=4 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"prompt a piastrelle: x=4 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=2\",\n      \"localized\": \"prompt a piastrelle: x=4 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"prompt a piastrelle: x=4 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=3\",\n      \"localized\": \"prompt a piastrelle: x=4 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"prompt a piastrelle: x=4 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=4\",\n      \"localized\": \"prompt a piastrelle: x=4 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"prompt a piastrelle: x=4 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tiling options\",\n      \"localized\": \"opzioni di piastrellatura\",\n      \"reload\": \"\",\n      \"hint\": \"opzioni di piastrellatura\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time embedding mix\",\n      \"localized\": \"mix di embedding temporale\",\n      \"reload\": \"\",\n      \"hint\": \"mix di embedding temporale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time_quadratic\",\n      \"localized\": \"time_quadratic\",\n      \"reload\": \"\",\n      \"hint\": \"time_quadratic\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time_uniform\",\n      \"localized\": \"time_uniform\",\n      \"reload\": \"\",\n      \"hint\": \"time_uniform\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep\",\n      \"localized\": \"passo temporale\",\n      \"reload\": \"\",\n      \"hint\": \"passo temporale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep skip end\",\n      \"localized\": \"fine salto passo temporale\",\n      \"reload\": \"\",\n      \"hint\": \"fine salto passo temporale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep skip start\",\n      \"localized\": \"inizio salto passo temporale\",\n      \"reload\": \"\",\n      \"hint\": \"inizio salto passo temporale\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep spacing\",\n      \"localized\": \"spaziatura passi temporali\",\n      \"reload\": \"\",\n      \"hint\": \"spaziatura passi temporali\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps\",\n      \"localized\": \"passi temporali\",\n      \"reload\": \"\",\n      \"hint\": \"passi temporali\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps override\",\n      \"localized\": \"sostituzione passi temporali\",\n      \"reload\": \"\",\n      \"hint\": \"sostituzione passi temporali\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps presets\",\n      \"localized\": \"preimpostazioni passi temporali\",\n      \"reload\": \"\",\n      \"hint\": \"preimpostazioni passi temporali\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps range\",\n      \"localized\": \"intervallo passi temporali\",\n      \"reload\": \"\",\n      \"hint\": \"intervallo passi temporali\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tiny\",\n      \"localized\": \"piccolo\",\n      \"reload\": \"\",\n      \"hint\": \"piccolo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"todo\",\n      \"localized\": \"da fare\",\n      \"reload\": \"\",\n      \"hint\": \"da fare\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tome\",\n      \"localized\": \"tome\",\n      \"reload\": \"\",\n      \"hint\": \"tome\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tool\",\n      \"localized\": \"strumento\",\n      \"reload\": \"\",\n      \"hint\": \"strumento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"top-k\",\n      \"localized\": \"top-k\",\n      \"reload\": \"\",\n      \"hint\": \"top-k\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"top-p\",\n      \"localized\": \"top-p\",\n      \"reload\": \"\",\n      \"hint\": \"top-p\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"torch\",\n      \"localized\": \"torch\",\n      \"reload\": \"\",\n      \"hint\": \"torch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"transformer\",\n      \"localized\": \"trasformatore\",\n      \"reload\": \"\",\n      \"hint\": \"trasformatore\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"trigger word\",\n      \"localized\": \"parola chiave\",\n      \"reload\": \"\",\n      \"hint\": \"parola chiave\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"true\",\n      \"localized\": \"vero\",\n      \"reload\": \"\",\n      \"hint\": \"vero\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tunable ops limit\",\n      \"localized\": \"limite operazioni sintonizzabili\",\n      \"reload\": \"\",\n      \"hint\": \"limite operazioni sintonizzabili\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ufogen\",\n      \"localized\": \"ufogen\",\n      \"reload\": \"\",\n      \"hint\": \"ufogen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui card size (px)\",\n      \"localized\": \"dimensione scheda UI (px)\",\n      \"reload\": \"\",\n      \"hint\": \"dimensione scheda UI (px)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui fetch network info on mouse-over\",\n      \"localized\": \"UI recupera informazioni rete al passaggio del mouse\",\n      \"reload\": \"\",\n      \"hint\": \"UI recupera informazioni rete al passaggio del mouse\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui height (%)\",\n      \"localized\": \"altezza UI (%)\",\n      \"reload\": \"\",\n      \"hint\": \"altezza UI (%)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui locale\",\n      \"localized\": \"lingua UI\",\n      \"reload\": \"\",\n      \"hint\": \"lingua UI\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui request timeout\",\n      \"localized\": \"timeout richiesta UI\",\n      \"reload\": \"\",\n      \"hint\": \"timeout richiesta UI\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui show on startup\",\n      \"localized\": \"mostra UI all'avvio\",\n      \"reload\": \"\",\n      \"hint\": \"mostra UI all'avvio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui sidebar width (%)\",\n      \"localized\": \"larghezza sidebar UI (%)\",\n      \"reload\": \"\",\n      \"hint\": \"larghezza sidebar UI (%)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui theme\",\n      \"localized\": \"tema UI\",\n      \"reload\": \"\",\n      \"hint\": \"tema UI\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet\",\n      \"localized\": \"unet\",\n      \"reload\": \"\",\n      \"hint\": \"unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet depth\",\n      \"localized\": \"profondità unet\",\n      \"reload\": \"\",\n      \"hint\": \"profondità unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet enabled\",\n      \"localized\": \"unet abilitato\",\n      \"reload\": \"\",\n      \"hint\": \"unet abilitato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet max tile size\",\n      \"localized\": \"dimensione massima piastrella unet\",\n      \"reload\": \"\",\n      \"hint\": \"dimensione massima piastrella unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet min tile size\",\n      \"localized\": \"dimensione minima piastrella unet\",\n      \"reload\": \"\",\n      \"hint\": \"dimensione minima piastrella unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet model\",\n      \"localized\": \"modello unet\",\n      \"reload\": \"\",\n      \"hint\": \"modello unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet swap size\",\n      \"localized\": \"dimensione swap unet\",\n      \"reload\": \"\",\n      \"hint\": \"dimensione swap unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"uniform\",\n      \"localized\": \"uniforme\",\n      \"reload\": \"\",\n      \"hint\": \"uniforme\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"units\",\n      \"localized\": \"unità\",\n      \"reload\": \"\",\n      \"hint\": \"unità\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unload current model from vram\",\n      \"localized\": \"scarica modello attuale da vram\",\n      \"reload\": \"\",\n      \"hint\": \"scarica modello attuale da vram\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unload upscaler after processing\",\n      \"localized\": \"scarica upscaler dopo l'elaborazione\",\n      \"reload\": \"\",\n      \"hint\": \"scarica upscaler dopo l'elaborazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unset\",\n      \"localized\": \"annulla impostazione\",\n      \"reload\": \"\",\n      \"hint\": \"annulla impostazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"up\",\n      \"localized\": \"su\",\n      \"reload\": \"\",\n      \"hint\": \"su\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"upcast attention layer\",\n      \"localized\": \"livello di attenzione upcast\",\n      \"reload\": \"\",\n      \"hint\": \"livello di attenzione upcast\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"update\",\n      \"localized\": \"aggiorna\",\n      \"reload\": \"\",\n      \"hint\": \"aggiorna\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"upload\",\n      \"localized\": \"carica\",\n      \"reload\": \"\",\n      \"hint\": \"carica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use brownian noise\",\n      \"localized\": \"usa rumore browniano\",\n      \"reload\": \"\",\n      \"hint\": \"usa rumore browniano\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use cached model config when available\",\n      \"localized\": \"usa configurazione modello in cache quando disponibile\",\n      \"reload\": \"\",\n      \"hint\": \"usa configurazione modello in cache quando disponibile\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use defaults\",\n      \"localized\": \"usa predefinite\",\n      \"reload\": \"\",\n      \"hint\": \"usa predefinite\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use dynamic thresholding\",\n      \"localized\": \"usa soglia dinamica\",\n      \"reload\": \"\",\n      \"hint\": \"usa soglia dinamica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use fixed width thumbnails\",\n      \"localized\": \"usa miniature a larghezza fissa\",\n      \"reload\": \"\",\n      \"hint\": \"usa miniature a larghezza fissa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use image gallery cache\",\n      \"localized\": \"usa cache galleria immagini\",\n      \"reload\": \"\",\n      \"hint\": \"usa cache galleria immagini\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use karras sigmas\",\n      \"localized\": \"usa sigmi di Karras\",\n      \"reload\": \"\",\n      \"hint\": \"usa sigmi di Karras\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use line break as prompt segment marker\",\n      \"localized\": \"usa interruzione di riga come marcatore di segmento prompt\",\n      \"reload\": \"\",\n      \"hint\": \"usa interruzione di riga come marcatore di segmento prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use model ema weights when possible\",\n      \"localized\": \"usa pesi EMA del modello quando possibile\",\n      \"reload\": \"\",\n      \"hint\": \"usa pesi EMA del modello quando possibile\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use quantization\",\n      \"localized\": \"usa quantizzazione\",\n      \"reload\": \"\",\n      \"hint\": \"usa quantizzazione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use random seeds\",\n      \"localized\": \"usa seed casuali\",\n      \"reload\": \"\",\n      \"hint\": \"usa seed casuali\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use reference values when available\",\n      \"localized\": \"usa valori di riferimento quando disponibili\",\n      \"reload\": \"\",\n      \"hint\": \"usa valori di riferimento quando disponibili\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use same seed\",\n      \"localized\": \"usa stesso seed\",\n      \"reload\": \"\",\n      \"hint\": \"usa stesso seed\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use sample\",\n      \"localized\": \"usa campione\",\n      \"reload\": \"\",\n      \"hint\": \"usa campione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use separate base dict\",\n      \"localized\": \"usa dizionario base separato\",\n      \"reload\": \"\",\n      \"hint\": \"usa dizionario base separato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use simplified solvers in final steps\",\n      \"localized\": \"usa risolutori semplificati nei passaggi finali\",\n      \"reload\": \"\",\n      \"hint\": \"usa risolutori semplificati nei passaggi finali\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use text inputs\",\n      \"localized\": \"usa input di testo\",\n      \"reload\": \"\",\n      \"hint\": \"usa input di testo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"user\",\n      \"localized\": \"utente\",\n      \"reload\": \"\",\n      \"hint\": \"utente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"username\",\n      \"localized\": \"nome utente\",\n      \"reload\": \"\",\n      \"hint\": \"nome utente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"v_prediction\",\n      \"localized\": \"v_prediction\",\n      \"reload\": \"\",\n      \"hint\": \"v_prediction\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae enabled\",\n      \"localized\": \"VAE abilitato\",\n      \"reload\": \"\",\n      \"hint\": \"VAE abilitato\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae sliced encode\",\n      \"localized\": \"codifica VAE a fette\",\n      \"reload\": \"\",\n      \"hint\": \"codifica VAE a fette\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae swap size\",\n      \"localized\": \"dimensione di swap VAE\",\n      \"reload\": \"\",\n      \"hint\": \"dimensione di swap VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae tile overlap\",\n      \"localized\": \"sovrapposizione di tile VAE\",\n      \"reload\": \"\",\n      \"hint\": \"sovrapposizione di tile VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae tile size\",\n      \"localized\": \"dimensione di tile VAE\",\n      \"reload\": \"\",\n      \"hint\": \"dimensione di tile VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vary_coeff\",\n      \"localized\": \"vary_coeff\",\n      \"reload\": \"\",\n      \"hint\": \"vary_coeff\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vdm solver\",\n      \"localized\": \"risolutore VDM\",\n      \"reload\": \"\",\n      \"hint\": \"risolutore VDM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"version\",\n      \"localized\": \"versione\",\n      \"reload\": \"\",\n      \"hint\": \"versione\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vgen params\",\n      \"localized\": \"parametri VGen\",\n      \"reload\": \"\",\n      \"hint\": \"parametri VGen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vibrance\",\n      \"localized\": \"vividezza\",\n      \"reload\": \"\",\n      \"hint\": \"vividezza\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"video file\",\n      \"localized\": \"file video\",\n      \"reload\": \"\",\n      \"hint\": \"file video\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"video type\",\n      \"localized\": \"tipo di video\",\n      \"reload\": \"\",\n      \"hint\": \"tipo di video\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm\",\n      \"localized\": \"vlm\",\n      \"reload\": \"\",\n      \"hint\": \"vlm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm model\",\n      \"localized\": \"modello VLM\",\n      \"reload\": \"\",\n      \"hint\": \"modello VLM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: default model\",\n      \"localized\": \"VLM: modello predefinito\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: modello predefinito\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: default prompt\",\n      \"localized\": \"VLM: prompt predefinito\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: prompt predefinito\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: max length\",\n      \"localized\": \"VLM: lunghezza massima\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: lunghezza massima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: num beams\",\n      \"localized\": \"VLM: numero di beam\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: numero di beam\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: top-k\",\n      \"localized\": \"VLM: top-k\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: top-k\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: top-p\",\n      \"localized\": \"VLM: top-p\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: top-p\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: use sample method\",\n      \"localized\": \"VLM: usa metodo di campionamento\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: usa metodo di campionamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"warmth\",\n      \"localized\": \"calore\",\n      \"reload\": \"\",\n      \"hint\": \"calore\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"webp lossless compression\",\n      \"localized\": \"compressione WebP senza perdita\",\n      \"reload\": \"\",\n      \"hint\": \"compressione WebP senza perdita\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"weight\",\n      \"localized\": \"peso\",\n      \"reload\": \"\",\n      \"hint\": \"peso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width  after\",\n      \"localized\": \"larghezza dopo\",\n      \"reload\": \"\",\n      \"hint\": \"larghezza dopo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width  before\",\n      \"localized\": \"larghezza prima\",\n      \"reload\": \"\",\n      \"hint\": \"larghezza prima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width  mask\",\n      \"localized\": \"maschera larghezza\",\n      \"reload\": \"\",\n      \"hint\": \"maschera larghezza\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"wiki\",\n      \"localized\": \"wiki\",\n      \"reload\": \"\",\n      \"hint\": \"wiki\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"wildcards\",\n      \"localized\": \"caratteri jolly\",\n      \"reload\": \"\",\n      \"hint\": \"caratteri jolly\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x components\",\n      \"localized\": \"componenti X\",\n      \"reload\": \"\",\n      \"hint\": \"componenti X\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x overlap\",\n      \"localized\": \"sovrapposizione X\",\n      \"reload\": \"\",\n      \"hint\": \"sovrapposizione X\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x type\",\n      \"localized\": \"tipo X\",\n      \"reload\": \"\",\n      \"hint\": \"tipo X\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x-axis tile overlap\",\n      \"localized\": \"sovrapposizione di tile sull'asse X\",\n      \"reload\": \"\",\n      \"hint\": \"sovrapposizione di tile sull'asse X\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x-axis tiles\",\n      \"localized\": \"tile dell'asse X\",\n      \"reload\": \"\",\n      \"hint\": \"tile dell'asse X\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xhinker\",\n      \"localized\": \"xhinker\",\n      \"reload\": \"\",\n      \"hint\": \"xhinker\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xs\",\n      \"localized\": \"xs\",\n      \"reload\": \"\",\n      \"hint\": \"xs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y components\",\n      \"localized\": \"componenti Y\",\n      \"reload\": \"\",\n      \"hint\": \"componenti Y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y overlap\",\n      \"localized\": \"sovrapposizione Y\",\n      \"reload\": \"\",\n      \"hint\": \"sovrapposizione Y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y type\",\n      \"localized\": \"tipo Y\",\n      \"reload\": \"\",\n      \"hint\": \"tipo Y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y-axis tile overlap\",\n      \"localized\": \"sovrapposizione di tile sull'asse Y\",\n      \"reload\": \"\",\n      \"hint\": \"sovrapposizione di tile sull'asse Y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y-axis tiles\",\n      \"localized\": \"tile dell'asse Y\",\n      \"reload\": \"\",\n      \"hint\": \"tile dell'asse Y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"z type\",\n      \"localized\": \"tipo Z\",\n      \"reload\": \"\",\n      \"hint\": \"tipo Z\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"zero\",\n      \"localized\": \"zero\",\n      \"reload\": \"\",\n      \"hint\": \"zero\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"zoe depth\",\n      \"localized\": \"profondità Zoe\",\n      \"reload\": \"\",\n      \"hint\": \"profondità Zoe\"\n    }\n  ]\n}\n"
  },
  {
    "path": "html/locale_ja.json",
    "content": "{\n  \"icons\": [\n    {\n      \"id\": \"\",\n      \"label\": \"🎲️\",\n      \"localized\": \"🎲️\",\n      \"reload\": \"\",\n      \"hint\": \"ランダムシードを使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔄\",\n      \"localized\": \"🔄\",\n      \"reload\": \"\",\n      \"hint\": \"値をリセット\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⬆️\",\n      \"localized\": \"⬆️\",\n      \"reload\": \"\",\n      \"hint\": \"画像をアップロード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⬅️\",\n      \"localized\": \"⬅️\",\n      \"reload\": \"\",\n      \"hint\": \"画像を再利用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇅\",\n      \"localized\": \"⇅\",\n      \"reload\": \"\",\n      \"hint\": \"値を入れ替え\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇨\",\n      \"localized\": \"⇨\",\n      \"reload\": \"\",\n      \"hint\": \"Manual Block Mergeタブにプリセットを適用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🕮\",\n      \"localized\": \"🕮\",\n      \"reload\": \"\",\n      \"hint\": \"最後に生成された画像のパラメータをスタイルテンプレートとして保存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇕\",\n      \"localized\": \"⇕\",\n      \"reload\": \"\",\n      \"hint\": \"ソート順：名前昇順/降順、サイズ大/小、時間新/古\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⟲\",\n      \"localized\": \"⟲\",\n      \"reload\": \"\",\n      \"hint\": \"更新\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"✕\",\n      \"localized\": \"✕\",\n      \"reload\": \"\",\n      \"hint\": \"閉じる\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⊜\",\n      \"localized\": \"⊜\",\n      \"reload\": \"\",\n      \"hint\": \"塗りつぶし\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"※\",\n      \"localized\": \"※\",\n      \"reload\": \"\",\n      \"hint\": \"選択時はリファイナーモデルとして、それ以外はベースモデルとしてモデルをロード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔎︎\",\n      \"localized\": \"🔎︎\",\n      \"reload\": \"\",\n      \"hint\": \"CivitAIで不足しているメタデータとプレビューをスキャン\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"☲\",\n      \"localized\": \"☲\",\n      \"reload\": \"\",\n      \"hint\": \"表示タイプを変更\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⊗\",\n      \"localized\": \"⊗\",\n      \"reload\": \"\",\n      \"hint\": \"値をリセット\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"📐\",\n      \"localized\": \"📐\",\n      \"reload\": \"\",\n      \"hint\": \"測定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔍\",\n      \"localized\": \"🔍\",\n      \"reload\": \"\",\n      \"hint\": \"検索\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🖌️\",\n      \"localized\": \"🖌️\",\n      \"reload\": \"\",\n      \"hint\": \"LaMaで選択したオブジェクトを画像から削除\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🖼️\",\n      \"localized\": \"🖼️\",\n      \"reload\": \"\",\n      \"hint\": \"プレビューを表示\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"画像を解析\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⁜\",\n      \"localized\": \"⁜\",\n      \"reload\": \"\",\n      \"hint\": \"画像フィット方法を切り替え\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"↶\",\n      \"localized\": \"↶\",\n      \"reload\": \"\",\n      \"hint\": \"選択したスタイルをプロンプトに適用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"↷\",\n      \"localized\": \"↷\",\n      \"reload\": \"\",\n      \"hint\": \"現在のプロンプトをスタイルとして保存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"名前で昇順ソート\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"名前で降順ソート\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"サイズで昇順ソート\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"サイズで降順ソート\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"解像度で昇順ソート\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"解像度で降順ソート\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"時間で昇順ソート\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"時間で降順ソート\"\n    }\n  ],\n  \"main\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt\",\n      \"localized\": \"プロンプト\",\n      \"reload\": \"\",\n      \"hint\": \"生成したい画像を記述してください\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Start\",\n      \"localized\": \"開始\",\n      \"reload\": \"\",\n      \"hint\": \"開始\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"End\",\n      \"localized\": \"終了\",\n      \"reload\": \"\",\n      \"hint\": \"終了\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Core\",\n      \"localized\": \"コア\",\n      \"reload\": \"\",\n      \"hint\": \"コア設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System prompt\",\n      \"localized\": \"システムプロンプト\",\n      \"reload\": \"\",\n      \"hint\": \"システムプロンプトはLLMの動作を制御します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Negative prompt\",\n      \"localized\": \"ネガティブプロンプト\",\n      \"reload\": \"\",\n      \"hint\": \"生成される画像に含めたくない要素を記述してください\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Text\",\n      \"localized\": \"テキスト\",\n      \"reload\": \"\",\n      \"hint\": \"テキストから画像を生成\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image\",\n      \"localized\": \"画像\",\n      \"reload\": \"\",\n      \"hint\": \"画像から画像を生成\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control\",\n      \"localized\": \"コントロール\",\n      \"reload\": \"\",\n      \"hint\": \"完全なガイダンスで画像を生成\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process\",\n      \"localized\": \"処理\",\n      \"reload\": \"\",\n      \"hint\": \"既存の画像を処理\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Caption\",\n      \"localized\": \"キャプション\",\n      \"reload\": \"\",\n      \"hint\": \"既存の画像を分析し、テキスト記述を作成\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Interrogate\",\n      \"localized\": \"画像解析\",\n      \"reload\": \"\",\n      \"hint\": \"画像を解析して説明を取得\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models\",\n      \"localized\": \"モデル\",\n      \"reload\": \"\",\n      \"hint\": \"モデルのダウンロード、変換、マージ、およびモデルメタデータの管理\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Agent Scheduler\",\n      \"localized\": \"エージェントスケジューラ\",\n      \"reload\": \"\",\n      \"hint\": \"生成リクエストをキューに入れてバックグラウンドで実行\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"AgentScheduler\",\n      \"localized\": \"エージェントスケジューラ\",\n      \"reload\": \"\",\n      \"hint\": \"生成リクエストをキューに入れてバックグラウンドで実行\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System\",\n      \"localized\": \"システム\",\n      \"reload\": \"\",\n      \"hint\": \"システム設定と情報\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System Info\",\n      \"localized\": \"システム情報\",\n      \"reload\": \"\",\n      \"hint\": \"システム情報\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Settings\",\n      \"localized\": \"設定\",\n      \"reload\": \"\",\n      \"hint\": \"アプリケーション設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Script\",\n      \"localized\": \"スクリプト\",\n      \"reload\": \"\",\n      \"hint\": \"使用する追加スクリプト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Generate\",\n      \"localized\": \"生成\",\n      \"reload\": \"\",\n      \"hint\": \"処理を開始\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Generate forever\",\n      \"localized\": \"連続生成\",\n      \"reload\": \"\",\n      \"hint\": \"処理を開始し、キャンセルされるまで継続\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enqueue\",\n      \"localized\": \"キューに追加\",\n      \"reload\": \"\",\n      \"hint\": \"エージェントスケジューラのバックグラウンドキューにタスクを追加\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reprocess\",\n      \"localized\": \"再処理\",\n      \"reload\": \"\",\n      \"hint\": \"異なるパラメータを使用して以前の生成を再処理\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Stop\",\n      \"localized\": \"停止\",\n      \"reload\": \"\",\n      \"hint\": \"処理を停止\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Skip\",\n      \"localized\": \"スキップ\",\n      \"reload\": \"\",\n      \"hint\": \"現在のジョブの処理を停止し、処理を続行\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Pause\",\n      \"localized\": \"一時停止\",\n      \"reload\": \"\",\n      \"hint\": \"処理を一時停止\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore\",\n      \"localized\": \"復元\",\n      \"reload\": \"\",\n      \"hint\": \"現在のプロンプトまたは最後に生成された画像からパラメータを復元\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Clear\",\n      \"localized\": \"クリア\",\n      \"reload\": \"\",\n      \"hint\": \"プロンプトをクリア\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Networks\",\n      \"localized\": \"ネットワーク\",\n      \"reload\": \"\",\n      \"hint\": \"ネットワークユーザーインターフェース\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Default strength\",\n      \"localized\": \"デフォルト強度\",\n      \"reload\": \"\",\n      \"hint\": \"Loraなどの追加ネットワークをプロンプトに追加する際に、この乗数を使用します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscale\",\n      \"localized\": \"アップスケール\",\n      \"reload\": \"\",\n      \"hint\": \"画像をアップスケール\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model\",\n      \"localized\": \"モデル\",\n      \"reload\": \"\",\n      \"hint\": \"ベースモデル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompts\",\n      \"localized\": \"プロンプト\",\n      \"reload\": \"\",\n      \"hint\": \"画像プロンプトとネガティブプロンプト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Base\",\n      \"localized\": \"基本\",\n      \"reload\": \"\",\n      \"hint\": \"画像生成に使用される基本設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Style\",\n      \"localized\": \"スタイル\",\n      \"reload\": \"\",\n      \"hint\": \"選択された生成パラメータに適用される追加スタイル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Styles\",\n      \"localized\": \"スタイル\",\n      \"reload\": \"\",\n      \"hint\": \"選択された生成パラメータに適用される追加スタイル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Lora\",\n      \"localized\": \"LoRA\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA: Low-Rank Adaptation。読み込まれたモデルの上に適用されるファインチューニングモデル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Embedding\",\n      \"localized\": \"埋め込み\",\n      \"reload\": \"\",\n      \"hint\": \"テキスト反転埋め込みは、被写体に関する学習済みの埋め込み情報です\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Hypernetwork\",\n      \"localized\": \"ハイパーネットワーク\",\n      \"reload\": \"\",\n      \"hint\": \"読み込まれたモデルの動作を変更する小さな学習済みニューラルネットワーク\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VLM Caption\",\n      \"localized\": \"VLMキャプション\",\n      \"reload\": \"\",\n      \"hint\": \"ビジョン言語モデルを使用して画像を分析\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CLiP Interrogate\",\n      \"localized\": \"CLiP解析\",\n      \"reload\": \"\",\n      \"hint\": \"CLiPモデルを使用して画像を分析\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE\",\n      \"localized\": \"VAE\",\n      \"reload\": \"\",\n      \"hint\": \"VAE: 変分オートエンコーダ。生成の最後に画像デコードを実行するために使用されるモデル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"History\",\n      \"localized\": \"履歴\",\n      \"reload\": \"\",\n      \"hint\": \"さらに再処理できる以前の生成のリスト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"UI disable variable aspect ratio\",\n      \"localized\": \"UI可変アスペクト比の無効化\",\n      \"reload\": \"\",\n      \"hint\": \"無効にすると、すべてのサムネイルが正方形の画像として表示されます\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Build info on first access\",\n      \"localized\": \"初回アクセス時に情報を構築\",\n      \"reload\": \"\",\n      \"hint\": \"サーバー起動時にENページを構築するのを防ぎ、代わりにリクエスト時に構築します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show reference styles\",\n      \"localized\": \"参照スタイルを表示\",\n      \"reload\": \"\",\n      \"hint\": \"組み込みスタイルを表示または非表示\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA load using Diffusers method\",\n      \"localized\": \"DiffusersメソッドでLoRAをロード\",\n      \"reload\": \"\",\n      \"hint\": \"代替方法として、ネイティブのSD.Next実装ではなく、Diffusersの組み込みLoRA機能を使用します（LoRAの互換性が低下する可能性があります）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA fuse directly to model\",\n      \"localized\": \"LoRAをモデルに直接統合\",\n      \"reload\": \"\",\n      \"hint\": \"LoRAを読み込む際、その場で適用するのではなく、すぐに基盤となるモデルと重みをマージします\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA memory cache\",\n      \"localized\": \"LoRAメモリキャッシュ\",\n      \"reload\": \"\",\n      \"hint\": \"ストレージからの再読み込みが必要になる前に、ネットワークに保持するLoRAの数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Local\",\n      \"localized\": \"ローカル\",\n      \"reload\": \"\",\n      \"hint\": \"ダウンロード済みで使用準備ができているモデル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Gallery\",\n      \"localized\": \"ギャラリー\",\n      \"reload\": \"\",\n      \"hint\": \"画像ギャラリー\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reference\",\n      \"localized\": \"参照\",\n      \"reload\": \"\",\n      \"hint\": \"初回使用時に自動的にダウンロードできる参照モデルのリスト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Samplers\",\n      \"localized\": \"サンプラー\",\n      \"reload\": \"\",\n      \"hint\": \"サンプラー/スケジューラーの詳細設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Seed\",\n      \"localized\": \"シード\",\n      \"reload\": \"\",\n      \"hint\": \"初期シードとバリエーション\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Advanced\",\n      \"localized\": \"高度な設定\",\n      \"reload\": \"\",\n      \"hint\": \"画像生成に使用される高度な設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scripts\",\n      \"localized\": \"スクリプト\",\n      \"reload\": \"\",\n      \"hint\": \"生成プロセス中に選択されたスクリプトを使用して追加機能を有効にする\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Corrections\",\n      \"localized\": \"補正\",\n      \"reload\": \"\",\n      \"hint\": \"生成プロセス中の画像の色彩/シャープネス/明るさの補正を制御\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Parameters\",\n      \"localized\": \"パラメータ\",\n      \"reload\": \"\",\n      \"hint\": \"画像生成中に使用される基本パラメータ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine\",\n      \"localized\": \"リファイン\",\n      \"reload\": \"\",\n      \"hint\": \"リファインは、初期処理が完了した後にさらに処理を実行し、画像をアップスケールしたり、オプションで再度処理して品質と詳細を向上させることができます\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer\",\n      \"localized\": \"ディテイラー\",\n      \"reload\": \"\",\n      \"hint\": \"ディテイラーは、検出されたオブジェクトに対して高解像度で追加の生成を実行します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize\",\n      \"localized\": \"リサイズ\",\n      \"reload\": \"\",\n      \"hint\": \"画像のリサイズ。スケールに基づいて固定解像度を使用できます\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch\",\n      \"localized\": \"バッチ\",\n      \"reload\": \"\",\n      \"hint\": \"バッチ処理設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoise\",\n      \"localized\": \"ノイズ除去\",\n      \"reload\": \"\",\n      \"hint\": \"ノイズ除去設定。ノイズ除去の値を高くすると、生成中に既存の画像コンテンツがより多く変更されることが許可されます\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mask\",\n      \"localized\": \"マスク\",\n      \"reload\": \"\",\n      \"hint\": \"画像マスキングとマスクオプション\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Input\",\n      \"localized\": \"入力\",\n      \"reload\": \"\",\n      \"hint\": \"入力メディアの選択\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Video\",\n      \"localized\": \"ビデオ\",\n      \"reload\": \"\",\n      \"hint\": \"ガイダンスを使用してビデオを作成\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control elements\",\n      \"localized\": \"コントロール要素\",\n      \"reload\": \"\",\n      \"hint\": \"コントロール要素は、望ましい結果に向けて生成をガイドできる高度なモデルです\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"IP adapter\",\n      \"localized\": \"IPアダプター\",\n      \"reload\": \"\",\n      \"hint\": \"IPアダプタープラグインモデルを使用して、望ましい結果に向けて生成をガイド\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"IP adapters\",\n      \"localized\": \"IPアダプター\",\n      \"reload\": \"\",\n      \"hint\": \"IPアダプターは、望ましい結果に向けて生成をガイドできるプラグインモデルです\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Extensions\",\n      \"localized\": \"拡張機能\",\n      \"reload\": \"\",\n      \"hint\": \"アプリケーション拡張機能\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"XYZ Grid\",\n      \"localized\": \"XYZグリッド\",\n      \"reload\": \"\",\n      \"hint\": \"XYZグリッドは、複数の生成パラメータを変化させて画像グリッドを作成する強力なモジュールです\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Cover\",\n      \"localized\": \"カバー\",\n      \"reload\": \"\",\n      \"hint\": \"全面をカバー\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inline\",\n      \"localized\": \"インライン\",\n      \"reload\": \"\",\n      \"hint\": \"すべての追加要素とインライン（スクロール可能）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sidebar\",\n      \"localized\": \"サイドバー\",\n      \"reload\": \"\",\n      \"hint\": \"画面右側のサイドバー\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD15\",\n      \"localized\": \"SD15\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Diffusion 1.5\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD21\",\n      \"localized\": \"SD21\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Diffusion 2.1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD35\",\n      \"localized\": \"SD35\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Diffusion 3.5\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SDXL\",\n      \"localized\": \"SDXL\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Diffusion XL\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SC\",\n      \"localized\": \"SC\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Cascade\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Flux\",\n      \"localized\": \"Flux\",\n      \"reload\": \"\",\n      \"hint\": \"FLUX.1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show\",\n      \"localized\": \"表示\",\n      \"reload\": \"\",\n      \"hint\": \"画像の位置を表示\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Save\",\n      \"localized\": \"保存\",\n      \"reload\": \"\",\n      \"hint\": \"画像を保存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Delete\",\n      \"localized\": \"削除\",\n      \"reload\": \"\",\n      \"hint\": \"画像を削除\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Replace\",\n      \"localized\": \"置換\",\n      \"reload\": \"\",\n      \"hint\": \"画像を置換\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Text\",\n      \"localized\": \"➠ テキスト\",\n      \"reload\": \"\",\n      \"hint\": \"画像をテキストインターフェースに転送\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Image\",\n      \"localized\": \"➠ 画像\",\n      \"reload\": \"\",\n      \"hint\": \"画像を画像インターフェースに転送\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Inpaint\",\n      \"localized\": \"➠ インペイント\",\n      \"reload\": \"\",\n      \"hint\": \"画像をインペイントインターフェースに転送\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Sketch\",\n      \"localized\": \"➠ スケッチ\",\n      \"reload\": \"\",\n      \"hint\": \"画像をスケッチインターフェースに転送\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Composite\",\n      \"localized\": \"➠ 合成\",\n      \"reload\": \"\",\n      \"hint\": \"画像をインペイントスケッチインターフェースに転送\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Process\",\n      \"localized\": \"➠ 処理\",\n      \"reload\": \"\",\n      \"hint\": \"画像を処理インターフェースに転送\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Control\",\n      \"localized\": \"➠ コントロール\",\n      \"reload\": \"\",\n      \"hint\": \"画像をコントロールインターフェースに転送\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Caption\",\n      \"localized\": \"➠ キャプション\",\n      \"reload\": \"\",\n      \"hint\": \"画像をキャプションインターフェースに転送\"\n    }\n  ],\n  \"generate\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Sampling method\",\n      \"localized\": \"サンプリング方法\",\n      \"reload\": \"\",\n      \"hint\": \"画像を生成するために使用するアルゴリズム\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Steps\",\n      \"localized\": \"ステップ数\",\n      \"reload\": \"\",\n      \"hint\": \"生成された画像を繰り返し改善する回数。値が高いほど時間がかかり、非常に低い値は悪い結果を生む可能性があります\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Tiling\",\n      \"localized\": \"タイリング\",\n      \"reload\": \"\",\n      \"hint\": \"タイリング可能な画像を生成する\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full quality\",\n      \"localized\": \"高画質\",\n      \"reload\": \"\",\n      \"hint\": \"潜在サンプルをデコードするためにフル品質のVAEを使用する\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HiDiffusion\",\n      \"localized\": \"HiDiffusion\",\n      \"reload\": \"\",\n      \"hint\": \"HiDiffusionは、標準モデルを使用して、重複や歪みなく、パフォーマンスを向上させながら高解像度画像を生成することを可能にします\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HDR Clamp\",\n      \"localized\": \"HDRクランプ\",\n      \"reload\": \"\",\n      \"hint\": \"分布平均から著しく逸脱する値を刈り込むことで、非現実的な詳細のレベルを調整します。これは、より高いガイダンススケールでの生成を強化し、プロセスの早期に外れ値を特定し、範囲（境界）と閾値の設定に基づいて数学的な調整を適用するのに特に役立ちます。これを、画像の値を収めたい範囲を設定し、閾値を調整することでどの値をその範囲に戻すべきかを決定するものと考えてください\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HDR Maximize\",\n      \"localized\": \"HDR最大化\",\n      \"reload\": \"\",\n      \"hint\": \"最大テンソル値を指定された範囲の4倍で割ることにより、「正規化係数」を計算します。この係数は、与えられた境界内でチャンネルをシフトするために使用され、後続の処理で最大のダイナミックレンジを確保します。目的は、Photoshopのような外部アプリケーション向けにダイナミックレンジを最適化することであり、特にレベル、コントラスト、明るさの調整に役立ちます\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enable refine pass\",\n      \"localized\": \"リファインパスを有効にする\",\n      \"reload\": \"\",\n      \"hint\": \"画像から画像へのプロセスと同様のプロセスを使用して、最終画像をアップスケールしたり、詳細を追加したりします。オプションで、リファイナーモデルを使用して画像の詳細を強化します。\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enable detailer pass\",\n      \"localized\": \"ディテーラーパスを有効にする\",\n      \"reload\": \"\",\n      \"hint\": \"顔などのターゲットオブジェクトを検出し、高解像度で再処理します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoising strength\",\n      \"localized\": \"デノイズ強度\",\n      \"reload\": \"\",\n      \"hint\": \"アルゴリズムが画像のコンテンツをどれだけ尊重しないかを決定します。0では何も変更されず、1では無関係な画像が得られます。1.0未満の値では、処理はサンプリングステップスライダーで指定されたよりも少ないステップで済みます\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoise start\",\n      \"localized\": \"デノイズ開始\",\n      \"reload\": \"\",\n      \"hint\": \"ベースモデルがどれだけ早く終了し、リファイナーがいつ開始するかを指定することで、デノイズ強度を上書きします。リファイナーの使用にのみ適用されます。0または1に設定されている場合、デノイズ強度が使用されます\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Hires steps\",\n      \"localized\": \"Hiresステップ数\",\n      \"reload\": \"\",\n      \"hint\": \"アップスケールされた画像のサンプリングステップ数。0の場合、オリジナルと同じ値を使用します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Strength\",\n      \"localized\": \"強度\",\n      \"reload\": \"\",\n      \"hint\": \"画像操作中のデノイズ強度は、生成中に元の画像がどれだけ変更されるかを制御します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler\",\n      \"localized\": \"アップスケーラー\",\n      \"reload\": \"\",\n      \"hint\": \"アップスケーリングプロセスに使用する事前学習済みモデル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Force Hires\",\n      \"localized\": \"Hiresを強制\",\n      \"reload\": \"\",\n      \"hint\": \"潜在アップスケールが選択されている場合、Hiresは自動的に実行されますが、非潜在アップスケーラーを使用している場合はスキップされます。非潜在アップスケーラーでHiresを実行するには、Hiresの強制を有効にしてください\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize width\",\n      \"localized\": \"幅をリサイズ\",\n      \"reload\": \"\",\n      \"hint\": \"画像をこの幅にリサイズします。0の場合、幅は近くの2つのスライダーのいずれかから推測されます\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize height\",\n      \"localized\": \"高さをリサイズ\",\n      \"reload\": \"\",\n      \"hint\": \"画像をこの高さにリサイズします。0の場合、高さは近くの2つのスライダーのいずれかから推測されます\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine sampler\",\n      \"localized\": \"リファインサンプラー\",\n      \"reload\": \"\",\n      \"hint\": \"特定の操作でプライマリがサポートされていない場合、特定のサンプラーをフォールバックサンプラーとして使用します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner start\",\n      \"localized\": \"リファイナー開始\",\n      \"reload\": \"\",\n      \"hint\": \"リファイナーパスは、ベースモデルがこれだけ完了したときに開始されます（ベースモデルの完全実行後に実行するには0より大きく1より小さい値に設定してください）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner steps\",\n      \"localized\": \"リファイナーステップ数\",\n      \"reload\": \"\",\n      \"hint\": \"リファイナーパスに使用するステップ数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine guidance\",\n      \"localized\": \"リファインガイダンス\",\n      \"reload\": \"\",\n      \"hint\": \"リファイナーパスに使用されるCFGスケール\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Attention guidance\",\n      \"localized\": \"アテンションガイダンス\",\n      \"reload\": \"\",\n      \"hint\": \"PAG: Perturbed-Attention Guidanceで使用されるCFGスケール\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adaptive scaling\",\n      \"localized\": \"適応型スケーリング\",\n      \"reload\": \"\",\n      \"hint\": \"アテンションガイダンススケール用の適応型モディファイア\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Rescale guidance\",\n      \"localized\": \"ガイダンスを再スケール\",\n      \"reload\": \"\",\n      \"hint\": \"CFGで生成されたノイズを再スケールし、露出過度な画像を避ける\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine Prompt\",\n      \"localized\": \"リファインプロンプト\",\n      \"reload\": \"\",\n      \"hint\": \"ベースモデルのセカンドエンコーダー（存在する場合）およびリファイナーパス（有効な場合）の両方に使用されるプロンプト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine negative prompt\",\n      \"localized\": \"リファインネガティブプロンプト\",\n      \"reload\": \"\",\n      \"hint\": \"ベースモデルのセカンドエンコーダー（存在する場合）およびリファイナーパス（有効な場合）の両方に使用されるネガティブプロンプト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Width\",\n      \"localized\": \"幅\",\n      \"reload\": \"\",\n      \"hint\": \"画像の幅\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Height\",\n      \"localized\": \"高さ\",\n      \"reload\": \"\",\n      \"hint\": \"画像の高さ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch count\",\n      \"localized\": \"バッチ数\",\n      \"reload\": \"\",\n      \"hint\": \"作成する画像のバッチ数（生成パフォーマンスやVRAM使用量には影響しません）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch size\",\n      \"localized\": \"バッチサイズ\",\n      \"reload\": \"\",\n      \"hint\": \"単一バッチで作成する画像の数（VRAM使用量が増える代わりに、生成パフォーマンスが向上します）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance scale\",\n      \"localized\": \"ガイダンススケール\",\n      \"reload\": \"\",\n      \"hint\": \"Classifier Free Guidanceスケール: 画像がプロンプトにどれだけ強く適合すべきかを示します。値が低いほどクリエイティブな結果になり、高いほどプロンプトに厳密に従います。推奨値は5〜10です\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Guidance End\",\n      \"localized\": \"ガイダンス終了\",\n      \"reload\": \"\",\n      \"hint\": \"CFGとPAGの効果を早期に終了します。値が1の場合は通常通り機能し、0.5の場合はステップの50%でガイダンスが停止します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Initial seed\",\n      \"localized\": \"初期シード\",\n      \"reload\": \"\",\n      \"hint\": \"乱数ジェネレーターの出力を決定する値です。同じパラメータとシードで別の画像を作成すると、同じ結果が得られます\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variation\",\n      \"localized\": \"バリエーション\",\n      \"reload\": \"\",\n      \"hint\": \"プライマリシードと混合されるセカンドシード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variation strength\",\n      \"localized\": \"バリエーション強度\",\n      \"reload\": \"\",\n      \"hint\": \"どれくらいの強さのバリエーションを生成するか。0の場合、効果はありません。1の場合、バリエーションシードによる完全な画像が得られます（アンセストラルサンプラーを除く、その場合は何かを得るだけです）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize seed from width\",\n      \"localized\": \"シードを幅からリサイズ\",\n      \"reload\": \"\",\n      \"hint\": \"指定された解像度で同じシードで生成されたであろう画像と類似した画像を生成しようと試みる\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize seed from height\",\n      \"localized\": \"シードを高からリサイズ\",\n      \"reload\": \"\",\n      \"hint\": \"指定された解像度で同じシードで生成されたであろう画像と類似した画像を生成しようと試みる\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Fixed\",\n      \"localized\": \"固定\",\n      \"reload\": \"\",\n      \"hint\": \"画像をターゲット解像度にリサイズします。高さと幅が一致しない限り、アスペクト比が不正確になります\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale\",\n      \"localized\": \"スケール\",\n      \"reload\": \"\",\n      \"hint\": \"画像をターゲットスケールにリサイズします。固定幅/高さのリサイズが設定されている場合、このオプションは無視されます\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop\",\n      \"localized\": \"切り抜き\",\n      \"reload\": \"\",\n      \"hint\": \"画像をリサイズして、ターゲット解像度全体が画像で埋まるようにします。はみ出た部分は切り抜かれます\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Fill\",\n      \"localized\": \"塗りつぶし\",\n      \"reload\": \"\",\n      \"hint\": \"画像をリサイズして、画像全体がターゲット解像度内に収まるようにします。空いたスペースは画像のR色が埋められます\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mask blur\",\n      \"localized\": \"マスクブラー\",\n      \"reload\": \"\",\n      \"hint\": \"処理前にマスクをぼかす量（ピクセル単位）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Latent noise\",\n      \"localized\": \"潜在ノイズ\",\n      \"reload\": \"\",\n      \"hint\": \"潜在空間ノイズで埋める\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Latent nothing\",\n      \"localized\": \"潜在空間ゼロ\",\n      \"reload\": \"\",\n      \"hint\": \"潜在空間のゼロで埋める\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adapters\",\n      \"localized\": \"アダプター\",\n      \"reload\": \"\",\n      \"hint\": \"IPアダプターに関連する設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inputs\",\n      \"localized\": \"入力\",\n      \"reload\": \"\",\n      \"hint\": \"入力画像に関連する設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control input type\",\n      \"localized\": \"コントロール入力タイプ\",\n      \"reload\": \"\",\n      \"hint\": \"制御プロセスに使用する入力画像を選択します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Video format\",\n      \"localized\": \"ビデオ形式\",\n      \"reload\": \"\",\n      \"hint\": \"出力ビデオの形式とコーデック\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Size & Batch\",\n      \"localized\": \"サイズとバッチ\",\n      \"reload\": \"\",\n      \"hint\": \"画像のサイズとバッチ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sigma adjust\",\n      \"localized\": \"シグマ調整\",\n      \"reload\": \"\",\n      \"hint\": \"サンプラーのシグマ値を調整\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adjust start\",\n      \"localized\": \"調整開始\",\n      \"reload\": \"\",\n      \"hint\": \"シグマ調整が開始されるステップ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adjust end\",\n      \"localized\": \"調整終了\",\n      \"reload\": \"\",\n      \"hint\": \"シグマ調整が終了するステップ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Options\",\n      \"localized\": \"オプション\",\n      \"reload\": \"\",\n      \"hint\": \"オプション\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ControlNet\",\n      \"localized\": \"ControlNet\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNetは高度なガイダンスモデルです\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Renoise\",\n      \"localized\": \"リノイズ\",\n      \"reload\": \"\",\n      \"hint\": \"詳細化中にノイズを追加適用する\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Renoise end\",\n      \"localized\": \"リノイズ終了\",\n      \"reload\": \"\",\n      \"hint\": \"リノイズが適用される最終ステップ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Merge detailers\",\n      \"localized\": \"ディテーラーをマージ\",\n      \"reload\": \"\",\n      \"hint\": \"詳細化プロセスを実行する前に、複数のディテーラーからの結果を単一のマスクにマージする\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpaint mode\",\n      \"localized\": \"インペイントモード\",\n      \"reload\": \"\",\n      \"hint\": \"インペイントモード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpaint area\",\n      \"localized\": \"インペイント領域\",\n      \"reload\": \"\",\n      \"hint\": \"インペイント領域\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Texture tiling\",\n      \"localized\": \"テクスチャタイリング\",\n      \"reload\": \"\",\n      \"hint\": \"生成された画像にシームレスなタイリングを適用し、テクスチャとして使用できるようにする\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Override\",\n      \"localized\": \"オーバーライド\",\n      \"reload\": \"\",\n      \"hint\": \"サーバーの動作を変更し、通常はインポートされた画像メタデータから適用される設定を上書きします\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE type\",\n      \"localized\": \"VAEタイプ\",\n      \"reload\": \"\",\n      \"hint\": \"フルVAE、品質を落としたVAEのどちらを実行するか、またはリモートVAEサービスの使用を試みるかを選択します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Guess Mode\",\n      \"localized\": \"推測モード\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNetにプロンプトを供給する要件をなくします。ControlNetエンコーダーが入力コントロールマップの内容に基づいて「最善の推測」を行うよう強制します。\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control Only\",\n      \"localized\": \"コントロールのみ\",\n      \"reload\": \"\",\n      \"hint\": \"これは、ControlNetまたはIPアダプタータイプのタスクのソースとして、以下のコントロール入力のみを使用します。これは、様々なオプションに基づいて行われます。\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Init Image Same As Control\",\n      \"localized\": \"初期画像をコントロールと同じにする\",\n      \"reload\": \"\",\n      \"hint\": \"コントロール入力ウィンドウに配置された画像を、img2imgタイプのタスクのソース（例：変更する画像）としても扱います。\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Separate Init Image\",\n      \"localized\": \"初期画像を分離する\",\n      \"reload\": \"\",\n      \"hint\": \"コントロール入力の隣に「Init input」とラベル付けされた追加のウィンドウを作成し、コントロール操作と初期ソースの両方に個別の画像を使用できるようにします。\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Override settings\",\n      \"localized\": \"設定を上書き\",\n      \"reload\": \"\",\n      \"hint\": \"生成パラメータがシステム設定と異なる場合、それらの設定でオーバーライド設定を適用し、このワークフローのシステム構成を上書きします\"\n    }\n  ],\n  \"other\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Install\",\n      \"localized\": \"インストール\",\n      \"reload\": \"\",\n      \"hint\": \"インストール\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Search\",\n      \"localized\": \"検索\",\n      \"reload\": \"\",\n      \"hint\": \"検索\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sort by\",\n      \"localized\": \"並べ替え\",\n      \"reload\": \"\",\n      \"hint\": \"並べ替え\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Nudenet\",\n      \"localized\": \"Nudenet\",\n      \"reload\": \"\",\n      \"hint\": \"画像内のヌードを検出・隠蔽できる柔軟な拡張機能\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt enhance\",\n      \"localized\": \"プロンプト強化\",\n      \"reload\": \"\",\n      \"hint\": \"異なるLLMを使用してプロンプトを書き換え、結果を向上させる拡張機能\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Manage extensions\",\n      \"localized\": \"拡張機能の管理\",\n      \"reload\": \"\",\n      \"hint\": \"拡張機能を管理する\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Manual install\",\n      \"localized\": \"手動インストール\",\n      \"reload\": \"\",\n      \"hint\": \"拡張機能を手動でインストールする\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Extension GIT repository URL\",\n      \"localized\": \"拡張機能のGITリポジトリURL\",\n      \"reload\": \"\",\n      \"hint\": \"GitHub上の拡張機能リポジトリURLを指定する\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Specific branch name\",\n      \"localized\": \"特定のブランチ名\",\n      \"reload\": \"\",\n      \"hint\": \"拡張機能のブランチ名を指定します。デフォルトの場合は空白のままにします\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Local directory name\",\n      \"localized\": \"ローカルディレクトリ名\",\n      \"reload\": \"\",\n      \"hint\": \"拡張機能をインストールするディレクトリ。デフォルトの場合は空白のままにします\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refresh extension list\",\n      \"localized\": \"拡張機能リストを更新\",\n      \"reload\": \"\",\n      \"hint\": \"利用可能な拡張機能のリストを更新する\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Update all installed\",\n      \"localized\": \"インストール済みのすべてを更新\",\n      \"reload\": \"\",\n      \"hint\": \"インストール済みの拡張機能を最新の利用可能なバージョンに更新する\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Apply changes\",\n      \"localized\": \"変更を適用\",\n      \"reload\": \"\",\n      \"hint\": \"すべての変更を適用し、サーバーを再起動する\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Uninstall\",\n      \"localized\": \"アンインストール\",\n      \"reload\": \"\",\n      \"hint\": \"この拡張機能をアンインストールする\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"User interface\",\n      \"localized\": \"ユーザーインターフェース\",\n      \"reload\": \"\",\n      \"hint\": \"ユーザーインターフェースの設定を確認・変更する\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Set UI defaults\",\n      \"localized\": \"UIデフォルトを設定\",\n      \"reload\": \"\",\n      \"hint\": \"現在の値をユーザーインターフェースのデフォルト値として設定する\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Benchmark\",\n      \"localized\": \"ベンチマーク\",\n      \"reload\": \"\",\n      \"hint\": \"ベンチマークを実行する\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models & Networks\",\n      \"localized\": \"モデルとネットワーク\",\n      \"reload\": \"\",\n      \"hint\": \"利用可能なすべてのモデルとネットワークのリストを表示する\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore UI defaults\",\n      \"localized\": \"UIデフォルトを復元\",\n      \"reload\": \"\",\n      \"hint\": \"ユーザーインターフェースのデフォルト値を復元する\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer classes\",\n      \"localized\": \"ディテーラーのクラス\",\n      \"reload\": \"\",\n      \"hint\": \"選択したディテーラーモデルがマルチクラスモデルの場合に、使用する特定のクラスを指定します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer models\",\n      \"localized\": \"ディテーラーモデル\",\n      \"reload\": \"\",\n      \"hint\": \"ディテール処理に使用する検出モデルを選択します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer negative prompt\",\n      \"localized\": \"ディテーラーのネガティブプロンプト\",\n      \"reload\": \"\",\n      \"hint\": \"ディテーラー用に別のネガティブプロンプトを使用します。指定しない場合は、プライマリのネガティブプロンプトを使用します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer prompt\",\n      \"localized\": \"ディテーラーのプロンプト\",\n      \"reload\": \"\",\n      \"hint\": \"ディテーラー用に別のプロンプトを使用します。指定しない場合は、プライマリのプロンプトを使用します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer steps\",\n      \"localized\": \"ディテーラーステップ\",\n      \"reload\": \"\",\n      \"hint\": \"ディテーラー処理を実行するステップ数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer strength\",\n      \"localized\": \"ディテーラー強度\",\n      \"reload\": \"\",\n      \"hint\": \"ディテーラー処理のノイズ除去強度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer use model augment\",\n      \"localized\": \"ディテーラーモデルのオーグメントを使用\",\n      \"reload\": \"\",\n      \"hint\": \"ディテーラー検出モデルをより高い精度で実行します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max detected\",\n      \"localized\": \"最大検出数\",\n      \"reload\": \"\",\n      \"hint\": \"ディテーラーを実行する検出オブジェクトの最大数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Edge blur\",\n      \"localized\": \"エッジのぼかし\",\n      \"reload\": \"\",\n      \"hint\": \"マスクされた領域のエッジをこのパーセンテージでぼかします\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Edge padding\",\n      \"localized\": \"エッジパディング\",\n      \"reload\": \"\",\n      \"hint\": \"マスクされた領域のエッジをこのパーセンテージで拡張します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Min confidence\",\n      \"localized\": \"最小信頼度\",\n      \"reload\": \"\",\n      \"hint\": \"検出されたアイテムの最小信頼度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max overlap\",\n      \"localized\": \"最大重複\",\n      \"reload\": \"\",\n      \"hint\": \"2つの検出されたアイテムが破棄される前の最大重複\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Min size\",\n      \"localized\": \"最小サイズ\",\n      \"reload\": \"\",\n      \"hint\": \"検出されたオブジェクトの最小サイズ（全体画像に対する割合）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max size\",\n      \"localized\": \"最大サイズ\",\n      \"reload\": \"\",\n      \"hint\": \"検出されたオブジェクトの最大サイズ（全体画像に対する割合）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Image\",\n      \"localized\": \"画像を処理\",\n      \"reload\": \"\",\n      \"hint\": \"単一の画像を処理する\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Batch\",\n      \"localized\": \"バッチ処理\",\n      \"reload\": \"\",\n      \"hint\": \"画像のバッチを処理する\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Folder\",\n      \"localized\": \"フォルダを処理\",\n      \"reload\": \"\",\n      \"hint\": \"フォルダ内のすべての画像を処理する\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Current\",\n      \"localized\": \"現在\",\n      \"reload\": \"\",\n      \"hint\": \"現在ロードされているモデル内のモジュールを分析する\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Merge\",\n      \"localized\": \"マージ\",\n      \"reload\": \"\",\n      \"hint\": \"2つ以上のモデルを新しいモデルにマージする\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Modules\",\n      \"localized\": \"モジュール\",\n      \"reload\": \"\",\n      \"hint\": \"既存のモデルにモジュールをマージおよび/または置換する\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Validate\",\n      \"localized\": \"検証\",\n      \"reload\": \"\",\n      \"hint\": \"すべてのローカルモデルを検証する\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CivitAI\",\n      \"localized\": \"CivitAI\",\n      \"reload\": \"\",\n      \"hint\": \"CivitAIからモデルを検索してダウンロードする\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scale by\",\n      \"localized\": \"倍率で拡大縮小\",\n      \"reload\": \"\",\n      \"hint\": \"このタブを使用して、選択した倍率でソース画像をリサイズします\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scale to\",\n      \"localized\": \"指定サイズに拡大縮小\",\n      \"reload\": \"\",\n      \"hint\": \"このタブを使用して、選択したターゲットサイズにソース画像をリサイズします\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Input directory\",\n      \"localized\": \"入力ディレクトリ\",\n      \"reload\": \"\",\n      \"hint\": \"処理したい画像があるフォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Output directory\",\n      \"localized\": \"出力ディレクトリ\",\n      \"reload\": \"\",\n      \"hint\": \"処理された画像を保存するフォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show result images\",\n      \"localized\": \"結果画像を表示\",\n      \"reload\": \"\",\n      \"hint\": \"画像ペインに処理された画像を表示するには有効にする\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop to fit\",\n      \"localized\": \"フィットするように切り抜き\",\n      \"reload\": \"\",\n      \"hint\": \"ソース画像（例：512x510）の寸法がターゲット寸法（例：1024x768）と異なる場合、この機能はアップスケールされた画像をターゲットサイズの画像に収めます。余分な部分は切り抜かれます\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine Upscaler\",\n      \"localized\": \"アップスケーラーを調整\",\n      \"reload\": \"\",\n      \"hint\": \"最初のアップスケーラーの後に実行するセカンダリアップスケーラーを選択します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler 2 visibility\",\n      \"localized\": \"アップスケーラー2の可視性\",\n      \"reload\": \"\",\n      \"hint\": \"セカンダリアップスケーラーの強度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Calculate hash for all models\",\n      \"localized\": \"すべてのモデルのハッシュを計算\",\n      \"reload\": \"\",\n      \"hint\": \"利用可能なすべてのモデルのハッシュを計算します。これには非常に長い時間がかかる場合があります\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Weights Clip\",\n      \"localized\": \"ウェイトクリップ\",\n      \"reload\": \"\",\n      \"hint\": \"結合されたウェイトが元のモデルよりも重くならないように強制し、焼き付きや過飽和モデルを防ぎます\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ReBasin\",\n      \"localized\": \"ReBasin\",\n      \"reload\": \"\",\n      \"hint\": \"両方のモデルからより多くの特徴を保持するために、順列を伴う複数のマージを実行します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Number of ReBasin Iterations\",\n      \"localized\": \"ReBasin反復回数\",\n      \"reload\": \"\",\n      \"hint\": \"保存する前にモデルをマージおよび順列する回数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CPU\",\n      \"localized\": \"CPU\",\n      \"reload\": \"\",\n      \"hint\": \"CPUとRAMのみを使用：最も遅いが、OOMになる可能性が最も低い\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Shuffle\",\n      \"localized\": \"シャッフル\",\n      \"reload\": \"\",\n      \"hint\": \"完全なモデルをRAMにロードし、VRAMで計算します：高速化は少ないですが、SDXLのマージに推奨されます\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"In Blocks\",\n      \"localized\": \"入力ブロック\",\n      \"reload\": \"\",\n      \"hint\": \"UNetのダウンサンプリングブロック（SD1.5では12値、SDXLでは9値）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mid Block\",\n      \"localized\": \"中間ブロック\",\n      \"reload\": \"\",\n      \"hint\": \"UNetの中央ブロック（1値）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Out Block\",\n      \"localized\": \"出力ブロック\",\n      \"reload\": \"\",\n      \"hint\": \"UNetのアップサンプリングブロック（SD1.5では12値、SDXLでは9値）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Preset Interpolation Ratio\",\n      \"localized\": \"プリセット補間比率\",\n      \"reload\": \"\",\n      \"hint\": \"2つのプリセットが選択されている場合、それらの間を補間します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adapter\",\n      \"localized\": \"アダプター\",\n      \"reload\": \"\",\n      \"hint\": \"IPアダプターモデル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Active ip adapters\",\n      \"localized\": \"アクティブなIPアダプター\",\n      \"reload\": \"\",\n      \"hint\": \"アクティブなIPアダプターの数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Unload adapter\",\n      \"localized\": \"アダプターをアンロード\",\n      \"reload\": \"\",\n      \"hint\": \"生成直後にIPアダプターをアンロードします。そうしないと、IPアダプターは次の生成プロセスでより高速に使用するためにロードされたままになります\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop to portrait\",\n      \"localized\": \"ポートレートに切り抜き\",\n      \"reload\": \"\",\n      \"hint\": \"IPアダプターの入力として使用する前に、入力画像をポートレートのみに切り抜きます\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Layer options\",\n      \"localized\": \"レイヤーオプション\",\n      \"reload\": \"\",\n      \"hint\": \"IPアダプターの詳細レイヤーオプションを手動で指定する\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"X values\",\n      \"localized\": \"X値\",\n      \"reload\": \"\",\n      \"hint\": \"X軸の値をコンマで区切る\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Y values\",\n      \"localized\": \"Y値\",\n      \"reload\": \"\",\n      \"hint\": \"Y軸の値をコンマで区切る\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Z values\",\n      \"localized\": \"Z値\",\n      \"reload\": \"\",\n      \"hint\": \"Z軸の値をコンマで区切る\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Loops\",\n      \"localized\": \"ループ\",\n      \"reload\": \"\",\n      \"hint\": \"画像を処理する回数。各出力は次のループの入力として使用されます。1に設定すると、このスクリプトが使用されなかった場合と同じ動作になります\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Final denoising strength\",\n      \"localized\": \"最終ノイズ除去強度\",\n      \"reload\": \"\",\n      \"hint\": \"バッチ内の各画像の最終ループでのノイズ除去強度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoising strength curve\",\n      \"localized\": \"ノイズ除去強度カーブ\",\n      \"reload\": \"\",\n      \"hint\": \"ノイズ除去カーブは、各ループでのノイズ除去強度の変化率を制御します。積極的：ほとんどの変化はループの開始時に起こります。線形：変化はすべてのループで一定です。遅延：ほとんどの変化はループの終わりに起こります\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Tile overlap\",\n      \"localized\": \"タイル重複\",\n      \"reload\": \"\",\n      \"hint\": \"SDアップスケールの場合、タイル間に何ピクセルの重なりがあるべきか。タイルは、1枚の画像に結合されたときに、はっきりと見える継ぎ目がないように重なり合います\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Color to Mask\",\n      \"localized\": \"ACI: 色をマスクに変換\",\n      \"reload\": \"\",\n      \"hint\": \"マスクしてインペイントしたい色を選択します。画像の色をクリックすると自動的に選択されます。\\n正確な結果を得るには、グリーンスクリーンなどの画像を使用することをお勧めします。\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Color Tolerance\",\n      \"localized\": \"ACI: 色の許容範囲\",\n      \"reload\": \"\",\n      \"hint\": \"マスクに似た色を含めるように許容範囲を調整します。低い値 = 非常に似た色のみをマスクします。高い値 = より広い範囲の似た色をマスクします。\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Mask Erode\",\n      \"localized\": \"ACI: マスクの縮小\",\n      \"reload\": \"\",\n      \"hint\": \"マスクに内側オフセットを適用するようにパディングを調整します。（推奨値 = エッジの残りを削除するには2）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Mask Blur\",\n      \"localized\": \"ACI: マスクのぼかし\",\n      \"reload\": \"\",\n      \"hint\": \"画像とインペイントされた領域の間を滑らかに移行させるためにぼかしを調整します。（推奨値 = シャープネスには0）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Denoising Strength\",\n      \"localized\": \"ACI: ノイズ除去強度\",\n      \"reload\": \"\",\n      \"hint\": \"希望するインペイント量を得るためにノイズ除去強度を変更します。\"\n    }\n  ],\n  \"settings\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Apply settings\",\n      \"localized\": \"設定を適用\",\n      \"reload\": \"\",\n      \"hint\": \"現在の設定を保存します。サーバーの再起動を推奨します。\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Loading\",\n      \"localized\": \"モデルの読み込み\",\n      \"reload\": \"\",\n      \"hint\": \"モデルの読み込み方法に関する設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Options\",\n      \"localized\": \"モデルオプション\",\n      \"reload\": \"\",\n      \"hint\": \"特定のモデルの動作に関する設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Offloading\",\n      \"localized\": \"モデルオフロード\",\n      \"reload\": \"\",\n      \"hint\": \"モデルのオフロードとメモリ管理に関する設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Quantization\",\n      \"localized\": \"モデル量子化\",\n      \"reload\": \"\",\n      \"hint\": \"メモリ使用量を削減するために使用されるモデル量子化に関する設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Metadata\",\n      \"localized\": \"画像メタデータ\",\n      \"reload\": \"\",\n      \"hint\": \"生成された画像とともに作成されるメタデータの処理に関する設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Legacy Options\",\n      \"localized\": \"レガシーオプション\",\n      \"reload\": \"\",\n      \"hint\": \"レガシーオプションに関する設定 - 使用すべきではありません\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restart server\",\n      \"localized\": \"サーバーを再起動\",\n      \"reload\": \"\",\n      \"hint\": \"サーバーを再起動します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Shutdown server\",\n      \"localized\": \"サーバーをシャットダウン\",\n      \"reload\": \"\",\n      \"hint\": \"サーバーをシャットダウンします\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Preview theme\",\n      \"localized\": \"テーマをプレビュー\",\n      \"reload\": \"\",\n      \"hint\": \"テーマのプレビューを表示\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore defaults\",\n      \"localized\": \"デフォルト設定に戻す\",\n      \"reload\": \"\",\n      \"hint\": \"デフォルトのサーバー設定に戻す\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Unload model\",\n      \"localized\": \"モデルをアンロード\",\n      \"reload\": \"\",\n      \"hint\": \"現在ロードされているモデルをアンロードします\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reload model\",\n      \"localized\": \"モデルをリロード\",\n      \"reload\": \"\",\n      \"hint\": \"現在選択されているモデルをリロードします\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models & Loading\",\n      \"localized\": \"モデルと読み込み\",\n      \"reload\": \"\",\n      \"hint\": \"ベースモデル、プライマリバックエンド、モデル読み込み動作に関する設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variational Auto Encoder\",\n      \"localized\": \"変分オートエンコーダ\",\n      \"reload\": \"\",\n      \"hint\": \"生成中の変分オートエンコーダと画像デコードプロセスに関する設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Text encoder\",\n      \"localized\": \"テキストエンコーダ\",\n      \"reload\": \"\",\n      \"hint\": \"生成中のテキストエンコーダとプロンプトエンコード処理に関する設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Compute Settings\",\n      \"localized\": \"計算設定\",\n      \"reload\": \"\",\n      \"hint\": \"計算精度、クロスアテンション、および計算プラットフォームの最適化に関する設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Backend Settings\",\n      \"localized\": \"バックエンド設定\",\n      \"reload\": \"\",\n      \"hint\": \"計算バックエンド（torch、onnx、olive）に関する設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Quantization Settings\",\n      \"localized\": \"量子化設定\",\n      \"reload\": \"\",\n      \"hint\": \"モデルの量子化に関する設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Pipeline modifiers\",\n      \"localized\": \"パイプライン修飾子\",\n      \"reload\": \"\",\n      \"hint\": \"生成中に有効にできる追加機能\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model compile\",\n      \"localized\": \"モデルコンパイル\",\n      \"reload\": \"\",\n      \"hint\": \"異なるモデルコンパイル方法に関する設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System Paths\",\n      \"localized\": \"システムパス\",\n      \"reload\": \"\",\n      \"hint\": \"様々なモデルディレクトリの場所に関する設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Options\",\n      \"localized\": \"画像オプション\",\n      \"reload\": \"\",\n      \"hint\": \"画像形式、メタデータ、および画像グリッドに関する設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Paths\",\n      \"localized\": \"画像パス\",\n      \"reload\": \"\",\n      \"hint\": \"画像ファイル名と出力ディレクトリに関する設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Live Previews\",\n      \"localized\": \"ライブプレビュー\",\n      \"reload\": \"\",\n      \"hint\": \"ライブプレビュー、音声通知に関する設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sampler Settings\",\n      \"localized\": \"サンプラー設定\",\n      \"reload\": \"\",\n      \"hint\": \"サンプラーの選択と設定、およびDiffusers固有のサンプラー設定に関する設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Postprocessing\",\n      \"localized\": \"後処理\",\n      \"reload\": \"\",\n      \"hint\": \"画像生成後の処理、顔の復元、およびアップスケーリングに関する設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control Options\",\n      \"localized\": \"Controlオプション\",\n      \"reload\": \"\",\n      \"hint\": \"Controlタブに関する設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Huggingface\",\n      \"localized\": \"Huggingface\",\n      \"reload\": \"\",\n      \"hint\": \"Huggingfaceアクセスに関する設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show all pages\",\n      \"localized\": \"全ページを表示\",\n      \"reload\": \"\",\n      \"hint\": \"すべての設定ページを表示\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Base model\",\n      \"localized\": \"ベースモデル\",\n      \"reload\": \"\",\n      \"hint\": \"すべての操作に使用されるメインモデル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner model\",\n      \"localized\": \"リファイナーモデル\",\n      \"reload\": \"\",\n      \"hint\": \"2パス操作に使用されるリファイナーモデル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Cached models\",\n      \"localized\": \"キャッシュされたモデル\",\n      \"reload\": \"\",\n      \"hint\": \"高速アクセス用にRAMに保存するモデルの数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE model\",\n      \"localized\": \"VAEモデル\",\n      \"reload\": \"\",\n      \"hint\": \"VAEは最終画像の細かいディテールに役立ち、色を変更することもあります\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model load using streams\",\n      \"localized\": \"ストリームを使用したモデル読み込み\",\n      \"reload\": \"\",\n      \"hint\": \"モデルをロードする際、低速またはネットワークストレージに最適化されたストリームロードを試行します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xFormers\",\n      \"localized\": \"xFormers\",\n      \"reload\": \"\",\n      \"hint\": \"メモリ最適化。非決定的（実行ごとに異なる結果が得られます）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scaled-Dot-Product\",\n      \"localized\": \"スケール化ドット積\",\n      \"reload\": \"\",\n      \"hint\": \"メモリ最適化。SDPメモリ注意が無効でない限り非決定的です。\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt padding\",\n      \"localized\": \"プロンプトパディング\",\n      \"reload\": \"\",\n      \"hint\": \"75トークンを超えるプロンプトを使用する際、nトークン内の最後のコンマからパディングを行うことで一貫性を向上させます\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Original\",\n      \"localized\": \"オリジナル\",\n      \"reload\": \"\",\n      \"hint\": \"元のLDMバックエンド\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Autocast\",\n      \"localized\": \"オートキャスト\",\n      \"reload\": \"\",\n      \"hint\": \"実行時に精度を自動的に決定します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full\",\n      \"localized\": \"フル\",\n      \"reload\": \"\",\n      \"hint\": \"常にフル精度を使用する\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"FP32\",\n      \"localized\": \"FP32\",\n      \"reload\": \"\",\n      \"hint\": \"計算に32ビット浮動小数点精度を使用する\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"FP16\",\n      \"localized\": \"FP16\",\n      \"reload\": \"\",\n      \"hint\": \"計算に16ビット浮動小数点精度を使用する\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"BF16\",\n      \"localized\": \"BF16\",\n      \"reload\": \"\",\n      \"hint\": \"計算に修正された16ビット浮動小数点精度を使用する\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full precision (--no-half-vae)\",\n      \"localized\": \"フル精度 (--no-half-vae)\",\n      \"reload\": \"\",\n      \"hint\": \"VAEにFP32を使用します。より多くのVRAMを使用し、生成が遅くなりますが、より良い結果を生成する可能性があります\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Force full precision (--no-half)\",\n      \"localized\": \"フル精度を強制 (--no-half)\",\n      \"reload\": \"\",\n      \"hint\": \"モデルにFP32を使用します。より多くのVRAMを使用し、生成が遅くなりますが、より良い結果を生成する可能性があります\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upcast sampling\",\n      \"localized\": \"アップキャストサンプリング\",\n      \"reload\": \"\",\n      \"hint\": \"通常、より少ないメモリでより良いパフォーマンスを発揮し、--no-halfと類似した結果を生成します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Attempt VAE roll back for NaN values\",\n      \"localized\": \"NaN値に対するVAEロールバックを試行\",\n      \"reload\": \"\",\n      \"hint\": \"Torch 2.1とNaNチェックの有効化が必要です\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive use FP16 on optimization\",\n      \"localized\": \"Olive最適化時にFP16を使用\",\n      \"reload\": \"\",\n      \"hint\": \"Olive最適化プロセスの出力モデルに16ビット浮動小数点精度を使用します。無効の場合、32ビット浮動小数点精度を使用します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive force FP32 for VAE Encoder\",\n      \"localized\": \"OliveでVAEエンコーダにFP32を強制\",\n      \"reload\": \"\",\n      \"hint\": \"出力モデルのVAEエンコーダに32ビット浮動小数点精度を使用します。これは「最適化時にFP16を使用」オプションを上書きします。Img2ImgからNaNまたは真っ黒な画像が表示される場合は、このオプションを有効にしてキャッシュを削除してください\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive use static dimensions\",\n      \"localized\": \"Oliveで静的ディメンションを使用\",\n      \"reload\": \"\",\n      \"hint\": \"Olive最適化モデルでの推論を大幅に高速化します。(OrtTransformersOptimization)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive cache optimized models\",\n      \"localized\": \"Olive最適化モデルをキャッシュ\",\n      \"reload\": \"\",\n      \"hint\": \"Olive処理済みモデルをキャッシュとして保存します。これらはONNXタブで管理できます\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"File format\",\n      \"localized\": \"ファイル形式\",\n      \"reload\": \"\",\n      \"hint\": \"画像のファイル形式を選択\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Include metadata\",\n      \"localized\": \"メタデータを含める\",\n      \"reload\": \"\",\n      \"hint\": \"画像作成パラメータを画像ファイル内のメタデータタグとして保存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Images filename pattern\",\n      \"localized\": \"画像ファイル名パターン\",\n      \"reload\": \"\",\n      \"hint\": \"画像のファイル名がどのように選択されるかを定義するために、以下のタグを使用します。<br><pre>seq, uuid<br>date, datetime, job_timestamp<br>generation_number, batch_number<br>model, model_shortname<br>model_hash, model_name<br>sampler, seed, steps, cfg<br>clip_skip, denoising<br>hasprompt, prompt, styles<br>prompt_hash, prompt_no_styles<br>prompt_spaces, prompt_words<br>height, width, image_hash<br></pre>\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Row count\",\n      \"localized\": \"行数\",\n      \"reload\": \"\",\n      \"hint\": \"自動検出の場合は -1 を使用し、バッチサイズと同じにする場合は 0 を使用します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Directory name pattern\",\n      \"localized\": \"ディレクトリ名パターン\",\n      \"reload\": \"\",\n      \"hint\": \"画像とグリッドのサブディレクトリがどのように選択されるかを定義するために、以下のタグを使用します: [steps], [cfg],[prompt_hash], [prompt], [prompt_no_styles], [prompt_spaces], [width], [height], [styles], [sampler], [seed], [model_hash], [model_name], [prompt_words], [date], [datetime], [datetime<Format>], [datetime<Format><Time Zone>], [job_timestamp]; デフォルトの場合は空のままにしてください\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpainting conditioning mask strength\",\n      \"localized\": \"インペインティングの条件付けマスク強度\",\n      \"reload\": \"\",\n      \"hint\": \"インペインティングとimg2imgにおいて、元の画像をどの程度強くマスクするかを決定します。1.0は完全にマスク（デフォルト）を意味します。0.0は完全にマスクされていない条件付けを意味します。値が低いほど画像の全体的な構成を維持するのに役立ちますが、大きな変更には対応が困難になります\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Clip skip\",\n      \"localized\": \"Clipスキップ\",\n      \"reload\": \"\",\n      \"hint\": \"CLIPモデルの早期停止パラメータ。1は通常通り最後のレイヤーで停止、2は最後から2番目のレイヤーで停止、など\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Images folder\",\n      \"localized\": \"画像フォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"空の場合、3つ下のディレクトリがデフォルトになります\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Grids folder\",\n      \"localized\": \"グリッドフォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"空の場合、2つ下のディレクトリがデフォルトになります\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Quicksettings list\",\n      \"localized\": \"クイック設定リスト\",\n      \"reload\": \"\",\n      \"hint\": \"設定タブではなく、上部のクイックアクセスバーに表示する設定名のリスト（カンマ区切り）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Live preview display period\",\n      \"localized\": \"ライブプレビュー表示期間\",\n      \"reload\": \"\",\n      \"hint\": \"nステップごとにプレビュー画像を要求します。無効にするには0に設定します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Approximate\",\n      \"localized\": \"近似\",\n      \"reload\": \"\",\n      \"hint\": \"安価なニューラルネットワークによる近似。VAEに比べて非常に高速ですが、水平/垂直解像度が4分の1になり、品質が低下した画像を生成します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Simple\",\n      \"localized\": \"シンプル\",\n      \"reload\": \"\",\n      \"hint\": \"非常に安価な近似。VAEに比べて非常に高速ですが、水平/垂直解像度が8分の1になり、極めて低品質な画像を生成します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Progress update period\",\n      \"localized\": \"進捗更新期間\",\n      \"reload\": \"\",\n      \"hint\": \"UIプログレスバーとプレビューチェックの更新期間（ミリ秒）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Euler a\",\n      \"localized\": \"Euler a\",\n      \"reload\": \"\",\n      \"hint\": \"Euler Ancestral - 非常に創造的で、ステップ数によって完全に異なる画像が得られることがあります。ステップ数を30-40以上に設定しても効果はありません\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"DDIM\",\n      \"localized\": \"DDIM\",\n      \"reload\": \"\",\n      \"hint\": \"Denoising Diffusion Implicit Models - インペインティングに最適です\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"UniPC\",\n      \"localized\": \"UniPC\",\n      \"reload\": \"\",\n      \"hint\": \"拡散モデルの高速サンプリングのための統合予測子-補正器フレームワーク\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sigma negative guidance minimum\",\n      \"localized\": \"シグマ負のガイダンス最小値\",\n      \"reload\": \"\",\n      \"hint\": \"画像がほぼ完成している場合、いくつかのステップでネガティブプロンプトをスキップします。0=無効\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler tile size\",\n      \"localized\": \"アップスケーラータイルサイズ\",\n      \"reload\": \"\",\n      \"hint\": \"0 = タイリングなし\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler tile overlap\",\n      \"localized\": \"アップスケーラータイルオーバーラップ\",\n      \"reload\": \"\",\n      \"hint\": \"値が低いと継ぎ目が見える\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"GFPGAN\",\n      \"localized\": \"GFPGAN\",\n      \"reload\": \"\",\n      \"hint\": \"GFPGANニューラルネットワークを使用して低品質な顔を復元します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CodeFormer\",\n      \"localized\": \"CodeFormer\",\n      \"reload\": \"\",\n      \"hint\": \"Codeformerニューラルネットワークを使用して低品質な顔を復元します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CodeFormer weight parameter\",\n      \"localized\": \"CodeFormer重みパラメータ\",\n      \"reload\": \"\",\n      \"hint\": \"0 = 最大効果; 1 = 最小効果\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ToMe token merging ratio\",\n      \"localized\": \"ToMeトークン結合比率\",\n      \"reload\": \"\",\n      \"hint\": \"tomesd経由での冗長トークン結合を有効にして速度とメモリを改善します。0=無効\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Todo token merging ratio\",\n      \"localized\": \"Todoトークン結合比率\",\n      \"reload\": \"\",\n      \"hint\": \"todo経由での冗長トークン結合を有効にして速度とメモリを改善します。0=無効\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model pipeline\",\n      \"localized\": \"モデルパイプライン\",\n      \"reload\": \"\",\n      \"hint\": \"自動検出でモデルが自動的に検出されない場合、モデルをロードする前にモデルタイプを選択してください\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE slicing\",\n      \"localized\": \"VAEスライシング\",\n      \"reload\": \"\",\n      \"hint\": \"限られたVRAMで一度に1つの画像をバッチ潜在をデコードします。複数画像バッチでのVAEデコードのパフォーマンスがわずかに向上します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE tiling\",\n      \"localized\": \"VAEタイリング\",\n      \"reload\": \"\",\n      \"hint\": \"限られたVRAMで大きな画像を重なり合うタイルに分割します。処理時間がわずかに増加します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Dynamic attention BMM\",\n      \"localized\": \"動的アテンションBMM\",\n      \"reload\": \"\",\n      \"hint\": \"一度に全てではなく、ステップごとにアテンション計算を実行します。推論時間は遅くなりますが、メモリ使用量が大幅に削減されます\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX Execution Provider\",\n      \"localized\": \"ONNX実行プロバイダー\",\n      \"reload\": \"\",\n      \"hint\": \"ONNX実行プロバイダー\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX allow fallback to CPU\",\n      \"localized\": \"ONNXでCPUへのフォールバックを許可\",\n      \"reload\": \"\",\n      \"hint\": \"選択された実行プロバイダーが失敗した場合にCPUへのフォールバックを許可します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX cache converted models\",\n      \"localized\": \"ONNX変換モデルをキャッシュ\",\n      \"reload\": \"\",\n      \"hint\": \"ONNX形式に変換されたモデルをキャッシュとして保存します。これらはONNXタブで管理できます\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX unload base model when processing refiner\",\n      \"localized\": \"リファイナー処理時にONNXでベースモデルをアンロード\",\n      \"reload\": \"\",\n      \"hint\": \"リファイナーが変換/最適化/処理されているときにベースモデルをアンロードします\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inference-mode\",\n      \"localized\": \"推論モード\",\n      \"reload\": \"\",\n      \"hint\": \"torch.inference_modeを使用します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"no-grad\",\n      \"localized\": \"no-grad\",\n      \"reload\": \"\",\n      \"hint\": \"torch.no_gradを使用します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model compile precompile\",\n      \"localized\": \"モデルコンパイルの事前コンパイル\",\n      \"reload\": \"\",\n      \"hint\": \"モデルロード時、初回使用時ではなく直ちにモデルコンパイルを実行します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Use zeros for prompt padding\",\n      \"localized\": \"プロンプトパディングにゼロを使用\",\n      \"reload\": \"\",\n      \"hint\": \"プロンプトが空の場合、残留ノイズを除去するためにフルゼロテンソルを強制します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Include invisible watermark\",\n      \"localized\": \"不可視透かしを含める\",\n      \"reload\": \"\",\n      \"hint\": \"いくつかのピクセル値を変更することで、画像に不可視の透かしを追加します\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invisible watermark string\",\n      \"localized\": \"不可視透かし文字列\",\n      \"reload\": \"\",\n      \"hint\": \"画像に追加する透かし文字列。画像の破損を避けるため、非常に短くしてください。\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show log view\",\n      \"localized\": \"ログビューを表示\",\n      \"reload\": \"\",\n      \"hint\": \"メインウィンドウの下部にログビューを表示\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Log view update period\",\n      \"localized\": \"ログビュー更新期間\",\n      \"reload\": \"\",\n      \"hint\": \"ログビューの更新期間（ミリ秒）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"PAG layer names\",\n      \"localized\": \"PAGレイヤー名\",\n      \"reload\": \"\",\n      \"hint\": \"スペース区切りのレイヤーリスト<br>利用可能: d[0-5], m[0], u[0-8]<br>デフォルト: m0\"\n    }\n  ],\n  \"missing\": [\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage\",\n      \"localized\": \"第1段階\",\n      \"reload\": \"\",\n      \"hint\": \"第1段階\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage backbone\",\n      \"localized\": \"第1段階バックボーン\",\n      \"reload\": \"\",\n      \"hint\": \"第1段階バックボーン\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage skip\",\n      \"localized\": \"第1段階スキップ\",\n      \"reload\": \"\",\n      \"hint\": \"第1段階スキップ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd restart step\",\n      \"localized\": \"2番目の再起動ステップ\",\n      \"reload\": \"\",\n      \"hint\": \"2番目の再起動ステップ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd scale\",\n      \"localized\": \"2番目のスケール\",\n      \"reload\": \"\",\n      \"hint\": \"2番目のスケール\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage\",\n      \"localized\": \"第2段階\",\n      \"reload\": \"\",\n      \"hint\": \"第2段階\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage backbone\",\n      \"localized\": \"第2段階バックボーン\",\n      \"reload\": \"\",\n      \"hint\": \"第2段階バックボーン\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage skip\",\n      \"localized\": \"第2段階スキップ\",\n      \"reload\": \"\",\n      \"hint\": \"第2段階スキップ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd restart step\",\n      \"localized\": \"3番目の再起動ステップ\",\n      \"reload\": \"\",\n      \"hint\": \"3番目の再起動ステップ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd scale\",\n      \"localized\": \"3番目のスケール\",\n      \"reload\": \"\",\n      \"hint\": \"3番目のスケール\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd stage\",\n      \"localized\": \"第3段階\",\n      \"reload\": \"\",\n      \"hint\": \"第3段階\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th restart step\",\n      \"localized\": \"4番目の再起動ステップ\",\n      \"reload\": \"\",\n      \"hint\": \"4番目の再起動ステップ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th scale\",\n      \"localized\": \"4番目のスケール\",\n      \"reload\": \"\",\n      \"hint\": \"4番目のスケール\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th stage\",\n      \"localized\": \"第4段階\",\n      \"reload\": \"\",\n      \"hint\": \"第4段階\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"a1111\",\n      \"localized\": \"a1111\",\n      \"reload\": \"\",\n      \"hint\": \"a1111\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"accuracy\",\n      \"localized\": \"精度\",\n      \"reload\": \"\",\n      \"hint\": \"精度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aci: mask dilate\",\n      \"localized\": \"ACI: マスク膨張\",\n      \"reload\": \"\",\n      \"hint\": \"ACI: マスク膨張\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"active\",\n      \"localized\": \"有効\",\n      \"reload\": \"\",\n      \"hint\": \"有効\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adain\",\n      \"localized\": \"adain\",\n      \"reload\": \"\",\n      \"hint\": \"adain\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 1\",\n      \"localized\": \"アダプター 1\",\n      \"reload\": \"\",\n      \"hint\": \"アダプター 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 2\",\n      \"localized\": \"アダプター 2\",\n      \"reload\": \"\",\n      \"hint\": \"アダプター 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 3\",\n      \"localized\": \"アダプター 3\",\n      \"reload\": \"\",\n      \"hint\": \"アダプター 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 4\",\n      \"localized\": \"アダプター 4\",\n      \"reload\": \"\",\n      \"hint\": \"アダプター 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adaptive restore\",\n      \"localized\": \"適応復元\",\n      \"reload\": \"\",\n      \"hint\": \"適応復元\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"add text info\",\n      \"localized\": \"テキスト情報追加\",\n      \"reload\": \"\",\n      \"hint\": \"テキスト情報追加\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"add time info\",\n      \"localized\": \"時間情報追加\",\n      \"reload\": \"\",\n      \"hint\": \"時間情報追加\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"additional image browser folders\",\n      \"localized\": \"追加の画像ブラウザフォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"追加の画像ブラウザフォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"additional postprocessing operations\",\n      \"localized\": \"追加の後処理操作\",\n      \"reload\": \"\",\n      \"hint\": \"追加の後処理操作\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"advanced options\",\n      \"localized\": \"詳細オプション\",\n      \"reload\": \"\",\n      \"hint\": \"詳細オプション\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"after\",\n      \"localized\": \"後\",\n      \"reload\": \"\",\n      \"hint\": \"後\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aggressive at step\",\n      \"localized\": \"ステップでの積極度\",\n      \"reload\": \"\",\n      \"hint\": \"ステップでの積極度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alias\",\n      \"localized\": \"エイリアス\",\n      \"reload\": \"\",\n      \"hint\": \"エイリアス\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"all\",\n      \"localized\": \"すべて\",\n      \"reload\": \"\",\n      \"hint\": \"すべて\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"allowed aspect ratios\",\n      \"localized\": \"許可されるアスペクト比\",\n      \"reload\": \"\",\n      \"hint\": \"許可されるアスペクト比\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha\",\n      \"localized\": \"アルファ\",\n      \"reload\": \"\",\n      \"hint\": \"アルファ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha block weight preset\",\n      \"localized\": \"アルファブロック重みプリセット\",\n      \"reload\": \"\",\n      \"hint\": \"アルファブロック重みプリセット\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha matting\",\n      \"localized\": \"アルファマッティング\",\n      \"reload\": \"\",\n      \"hint\": \"アルファマッティング\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha preset\",\n      \"localized\": \"アルファプリセット\",\n      \"reload\": \"\",\n      \"hint\": \"アルファプリセット\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha ratio\",\n      \"localized\": \"アルファ比率\",\n      \"reload\": \"\",\n      \"hint\": \"アルファ比率\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"amplify lut\",\n      \"localized\": \"LUT増幅\",\n      \"reload\": \"\",\n      \"hint\": \"LUT増幅\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"analyze\",\n      \"localized\": \"分析\",\n      \"reload\": \"\",\n      \"hint\": \"分析\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"anchor settings\",\n      \"localized\": \"アンカー設定\",\n      \"reload\": \"\",\n      \"hint\": \"アンカー設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"animateddiff\",\n      \"localized\": \"Animatediff\",\n      \"reload\": \"\",\n      \"hint\": \"Animatediff\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"answer\",\n      \"localized\": \"回答\",\n      \"reload\": \"\",\n      \"hint\": \"回答\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aot_ts_nvfuser\",\n      \"localized\": \"aot_ts_nvfuser\",\n      \"reload\": \"\",\n      \"hint\": \"aot_ts_nvfuser\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"appearance\",\n      \"localized\": \"外観\",\n      \"reload\": \"\",\n      \"hint\": \"外観\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append caption files\",\n      \"localized\": \"キャプションファイルを追加\",\n      \"reload\": \"\",\n      \"hint\": \"キャプションファイルを追加\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append image info json file\",\n      \"localized\": \"画像情報JSONファイルを追加\",\n      \"reload\": \"\",\n      \"hint\": \"画像情報JSONファイルを追加\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append interrogated prompt at each iteration\",\n      \"localized\": \"各イテレーションで審尋済みプロンプトを追加\",\n      \"reload\": \"\",\n      \"hint\": \"各イテレーションで審尋済みプロンプトを追加\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply color correction\",\n      \"localized\": \"色補正を適用\",\n      \"reload\": \"\",\n      \"hint\": \"色補正を適用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply filter\",\n      \"localized\": \"フィルターを適用\",\n      \"reload\": \"\",\n      \"hint\": \"フィルターを適用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply linfusion distillation on load\",\n      \"localized\": \"ロード時にLinFusion蒸留を適用\",\n      \"reload\": \"\",\n      \"hint\": \"ロード時にLinFusion蒸留を適用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply mask as overlay\",\n      \"localized\": \"マスクをオーバーレイとして適用\",\n      \"reload\": \"\",\n      \"hint\": \"マスクをオーバーレイとして適用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply msw-msa\",\n      \"localized\": \"msw-msaを適用\",\n      \"reload\": \"\",\n      \"hint\": \"msw-msaを適用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply rau-net\",\n      \"localized\": \"rau-netを適用\",\n      \"reload\": \"\",\n      \"hint\": \"rau-netを適用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply to model\",\n      \"localized\": \"モデルに適用\",\n      \"reload\": \"\",\n      \"hint\": \"モデルに適用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"artists\",\n      \"localized\": \"アーティスト\",\n      \"reload\": \"\",\n      \"hint\": \"アーティスト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"atiadlxx (amd only)\",\n      \"localized\": \"atiadlxx (AMDのみ)\",\n      \"reload\": \"\",\n      \"hint\": \"atiadlxx (AMDのみ)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention\",\n      \"localized\": \"アテンション\",\n      \"reload\": \"\",\n      \"hint\": \"アテンション\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention adain\",\n      \"localized\": \"アテンションadain\",\n      \"reload\": \"\",\n      \"hint\": \"アテンションadain\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention cache enabled\",\n      \"localized\": \"アテンションキャッシュ有効\",\n      \"reload\": \"\",\n      \"hint\": \"アテンションキャッシュ有効\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention chunking threshold\",\n      \"localized\": \"アテンションチャンキングしきい値\",\n      \"reload\": \"\",\n      \"hint\": \"アテンションチャンキングしきい値\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention kv chunk size\",\n      \"localized\": \"アテンションKVチャンクサイズ\",\n      \"reload\": \"\",\n      \"hint\": \"アテンションKVチャンクサイズ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention query chunk size\",\n      \"localized\": \"アテンションクエリチャンクサイズ\",\n      \"reload\": \"\",\n      \"hint\": \"アテンションクエリチャンクサイズ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto\",\n      \"localized\": \"自動\",\n      \"reload\": \"\",\n      \"hint\": \"自動\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto apply\",\n      \"localized\": \"自動適用\",\n      \"reload\": \"\",\n      \"hint\": \"自動適用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-convert sd15 embeddings to sdxl\",\n      \"localized\": \"SD15埋め込みをSDXLに自動変換\",\n      \"reload\": \"\",\n      \"hint\": \"SD15埋め込みをSDXLに自動変換\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-mask\",\n      \"localized\": \"自動マスク\",\n      \"reload\": \"\",\n      \"hint\": \"自動マスク\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-segment\",\n      \"localized\": \"自動セグメント\",\n      \"reload\": \"\",\n      \"hint\": \"自動セグメント\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"autolaunch browser upon startup\",\n      \"localized\": \"起動時にブラウザを自動起動\",\n      \"reload\": \"\",\n      \"hint\": \"起動時にブラウザを自動起動\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"automatically determine rank\",\n      \"localized\": \"ランクを自動決定\",\n      \"reload\": \"\",\n      \"hint\": \"ランクを自動決定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"autorank ratio\",\n      \"localized\": \"自動ランク比率\",\n      \"reload\": \"\",\n      \"hint\": \"自動ランク比率\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"available networks\",\n      \"localized\": \"利用可能なネットワーク\",\n      \"reload\": \"\",\n      \"hint\": \"利用可能なネットワーク\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"backend\",\n      \"localized\": \"バックエンド\",\n      \"reload\": \"\",\n      \"hint\": \"バックエンド\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"backend storage\",\n      \"localized\": \"バックエンドストレージ\",\n      \"reload\": \"\",\n      \"hint\": \"バックエンドストレージ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"background threshold\",\n      \"localized\": \"背景しきい値\",\n      \"reload\": \"\",\n      \"hint\": \"背景しきい値\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced\",\n      \"localized\": \"バランス\",\n      \"reload\": \"\",\n      \"hint\": \"バランス\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload cpu high watermark\",\n      \"localized\": \"バランスオフロードCPU高水位標\",\n      \"reload\": \"\",\n      \"hint\": \"バランスオフロードCPU高水位標\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload gpu high watermark\",\n      \"localized\": \"バランスオフロードGPU高水位標\",\n      \"reload\": \"\",\n      \"hint\": \"バランスオフロードGPU高水位標\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload gpu low watermark\",\n      \"localized\": \"バランスオフロードGPU低水位標\",\n      \"reload\": \"\",\n      \"hint\": \"バランスオフロードGPU低水位標\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"base\",\n      \"localized\": \"ベース\",\n      \"reload\": \"\",\n      \"hint\": \"ベース\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch caption\",\n      \"localized\": \"バッチキャプション\",\n      \"reload\": \"\",\n      \"hint\": \"バッチキャプション\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch input directory\",\n      \"localized\": \"バッチ入力ディレクトリ\",\n      \"reload\": \"\",\n      \"hint\": \"バッチ入力ディレクトリ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch interogate\",\n      \"localized\": \"バッチ審尋\",\n      \"reload\": \"\",\n      \"hint\": \"バッチ審尋\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch interrogate\",\n      \"localized\": \"バッチ審尋\",\n      \"reload\": \"\",\n      \"hint\": \"バッチ審尋\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch mask directory\",\n      \"localized\": \"バッチマスクディレクトリ\",\n      \"reload\": \"\",\n      \"hint\": \"バッチマスクディレクトリ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch matrix-matrix\",\n      \"localized\": \"バッチ行列-行列\",\n      \"reload\": \"\",\n      \"hint\": \"バッチ行列-行列\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch mode uses sequential seeds\",\n      \"localized\": \"バッチモードでシーケンシャルシードを使用\",\n      \"reload\": \"\",\n      \"hint\": \"バッチモードでシーケンシャルシードを使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch output directory\",\n      \"localized\": \"バッチ出力ディレクトリ\",\n      \"reload\": \"\",\n      \"hint\": \"バッチ出力ディレクトリ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch uses original name\",\n      \"localized\": \"バッチはオリジナル名を使用\",\n      \"reload\": \"\",\n      \"hint\": \"バッチはオリジナル名を使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bdia ddim\",\n      \"localized\": \"bdia ddim\",\n      \"reload\": \"\",\n      \"hint\": \"bdia ddim\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"before\",\n      \"localized\": \"前\",\n      \"reload\": \"\",\n      \"hint\": \"前\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"benchmark level\",\n      \"localized\": \"ベンチマークレベル\",\n      \"reload\": \"\",\n      \"hint\": \"ベンチマークレベル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"benchmark steps\",\n      \"localized\": \"ベンチマークステップ\",\n      \"reload\": \"\",\n      \"hint\": \"ベンチマークステップ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta block weight preset\",\n      \"localized\": \"ベータブロック重みプリセット\",\n      \"reload\": \"\",\n      \"hint\": \"ベータブロック重みプリセット\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta end\",\n      \"localized\": \"ベータ終了\",\n      \"reload\": \"\",\n      \"hint\": \"ベータ終了\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta ratio\",\n      \"localized\": \"ベータ比率\",\n      \"reload\": \"\",\n      \"hint\": \"ベータ比率\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta schedule\",\n      \"localized\": \"ベータスケジュール\",\n      \"reload\": \"\",\n      \"hint\": \"ベータスケジュール\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta start\",\n      \"localized\": \"ベータ開始\",\n      \"reload\": \"\",\n      \"hint\": \"ベータ開始\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bh1\",\n      \"localized\": \"bh1\",\n      \"reload\": \"\",\n      \"hint\": \"bh1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bh2\",\n      \"localized\": \"bh2\",\n      \"reload\": \"\",\n      \"hint\": \"bh2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"block\",\n      \"localized\": \"ブロック\",\n      \"reload\": \"\",\n      \"hint\": \"ブロック\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"block skip range\",\n      \"localized\": \"ブロックスキップ範囲\",\n      \"reload\": \"\",\n      \"hint\": \"ブロックスキップ範囲\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"blur\",\n      \"localized\": \"ぼかし\",\n      \"reload\": \"\",\n      \"hint\": \"ぼかし\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"body\",\n      \"localized\": \"ボディ\",\n      \"reload\": \"\",\n      \"hint\": \"ボディ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"boost\",\n      \"localized\": \"ブースト\",\n      \"reload\": \"\",\n      \"hint\": \"ブースト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"brightness\",\n      \"localized\": \"明るさ\",\n      \"reload\": \"\",\n      \"hint\": \"明るさ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cache model\",\n      \"localized\": \"モデルキャッシュ\",\n      \"reload\": \"\",\n      \"hint\": \"モデルキャッシュ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cache text encoder results\",\n      \"localized\": \"テキストエンコーダー結果をキャッシュ\",\n      \"reload\": \"\",\n      \"hint\": \"テキストエンコーダー結果をキャッシュ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"canny\",\n      \"localized\": \"Canny\",\n      \"reload\": \"\",\n      \"hint\": \"Canny\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"caption\",\n      \"localized\": \"キャプション\",\n      \"reload\": \"\",\n      \"hint\": \"キャプション\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"caption model\",\n      \"localized\": \"キャプションモデル\",\n      \"reload\": \"\",\n      \"hint\": \"キャプションモデル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"center\",\n      \"localized\": \"中央\",\n      \"reload\": \"\",\n      \"hint\": \"中央\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change log\",\n      \"localized\": \"変更履歴\",\n      \"reload\": \"\",\n      \"hint\": \"変更履歴\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change model\",\n      \"localized\": \"モデルを変更\",\n      \"reload\": \"\",\n      \"hint\": \"モデルを変更\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change rate\",\n      \"localized\": \"変更レート\",\n      \"reload\": \"\",\n      \"hint\": \"変更レート\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change reference\",\n      \"localized\": \"参照を変更\",\n      \"reload\": \"\",\n      \"hint\": \"参照を変更\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change refiner\",\n      \"localized\": \"リファイナーを変更\",\n      \"reload\": \"\",\n      \"hint\": \"リファイナーを変更\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change vae\",\n      \"localized\": \"VAEを変更\",\n      \"reload\": \"\",\n      \"hint\": \"VAEを変更\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"channels last\",\n      \"localized\": \"チャネルラスト\",\n      \"reload\": \"\",\n      \"hint\": \"チャネルラスト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"check alternative hash\",\n      \"localized\": \"代替ハッシュを確認\",\n      \"reload\": \"\",\n      \"hint\": \"代替ハッシュを確認\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"check for updates\",\n      \"localized\": \"アップデートを確認\",\n      \"reload\": \"\",\n      \"hint\": \"アップデートを確認\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"check status\",\n      \"localized\": \"ステータスを確認\",\n      \"reload\": \"\",\n      \"hint\": \"ステータスを確認\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"chunk size\",\n      \"localized\": \"チャンクサイズ\",\n      \"reload\": \"\",\n      \"hint\": \"チャンクサイズ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"civitai model type\",\n      \"localized\": \"Civitaiモデルタイプ\",\n      \"reload\": \"\",\n      \"hint\": \"Civitaiモデルタイプ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"civitai token\",\n      \"localized\": \"Civitaiトークン\",\n      \"reload\": \"\",\n      \"hint\": \"Civitaiトークン\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ck flash attention\",\n      \"localized\": \"CKフラッシュアテンション\",\n      \"reload\": \"\",\n      \"hint\": \"CKフラッシュアテンション\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ckpt\",\n      \"localized\": \"CKPT\",\n      \"reload\": \"\",\n      \"hint\": \"CKPT\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cleanup temporary folder on startup\",\n      \"localized\": \"起動時に一時フォルダーをクリーンアップ\",\n      \"reload\": \"\",\n      \"hint\": \"起動時に一時フォルダーをクリーンアップ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip model\",\n      \"localized\": \"CLIPモデル\",\n      \"reload\": \"\",\n      \"hint\": \"CLIPモデル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: chunk size\",\n      \"localized\": \"CLIP: チャンクサイズ\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: チャンクサイズ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: default captioner\",\n      \"localized\": \"CLIP: デフォルトキャプション生成器\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: デフォルトキャプション生成器\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: default mode\",\n      \"localized\": \"CLIP: デフォルトモード\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: デフォルトモード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: default model\",\n      \"localized\": \"CLIP: デフォルトモデル\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: デフォルトモデル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: intermediate flavors\",\n      \"localized\": \"CLIP: 中間フレーバー\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: 中間フレーバー\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: max flavors\",\n      \"localized\": \"CLIP: 最大フレーバー数\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: 最大フレーバー数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: max length\",\n      \"localized\": \"CLIP: 最大長\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: 最大長\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: min flavors\",\n      \"localized\": \"CLIP: 最小フレーバー数\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: 最小フレーバー数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: min length\",\n      \"localized\": \"CLIP: 最小長\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: 最小長\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: num beams\",\n      \"localized\": \"CLIP: ビーム数\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: ビーム数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"close\",\n      \"localized\": \"閉じる\",\n      \"reload\": \"\",\n      \"hint\": \"閉じる\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cmsi\",\n      \"localized\": \"CMSI\",\n      \"reload\": \"\",\n      \"hint\": \"CMSI\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn end\",\n      \"localized\": \"CN終了\",\n      \"reload\": \"\",\n      \"hint\": \"CN終了\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn mode\",\n      \"localized\": \"CNモード\",\n      \"reload\": \"\",\n      \"hint\": \"CNモード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn start\",\n      \"localized\": \"CN開始\",\n      \"reload\": \"\",\n      \"hint\": \"CN開始\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn strength\",\n      \"localized\": \"CN強度\",\n      \"reload\": \"\",\n      \"hint\": \"CN強度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn tiles\",\n      \"localized\": \"CNタイル\",\n      \"reload\": \"\",\n      \"hint\": \"CNタイル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"coarse\",\n      \"localized\": \"粗い\",\n      \"reload\": \"\",\n      \"hint\": \"粗い\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color\",\n      \"localized\": \"色\",\n      \"reload\": \"\",\n      \"hint\": \"色\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color grading\",\n      \"localized\": \"カラーグレーディング\",\n      \"reload\": \"\",\n      \"hint\": \"カラーグレーディング\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color map\",\n      \"localized\": \"カラーマップ\",\n      \"reload\": \"\",\n      \"hint\": \"カラーマップ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color variation\",\n      \"localized\": \"色バリエーション\",\n      \"reload\": \"\",\n      \"hint\": \"色バリエーション\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"colormap\",\n      \"localized\": \"カラーマップ\",\n      \"reload\": \"\",\n      \"hint\": \"カラーマップ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"columns\",\n      \"localized\": \"列\",\n      \"reload\": \"\",\n      \"hint\": \"列\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"comma\",\n      \"localized\": \"カンマ\",\n      \"reload\": \"\",\n      \"hint\": \"カンマ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"comma separated list with optional strength per lora\",\n      \"localized\": \"LoRAごとの強度をオプションで指定できるカンマ区切りリスト\",\n      \"reload\": \"\",\n      \"hint\": \"LoRAごとの強度をオプションで指定できるカンマ区切りリスト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"compact view\",\n      \"localized\": \"コンパクトビュー\",\n      \"reload\": \"\",\n      \"hint\": \"コンパクトビュー\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"compel\",\n      \"localized\": \"Compel\",\n      \"reload\": \"\",\n      \"hint\": \"Compel\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"composite\",\n      \"localized\": \"合成\",\n      \"reload\": \"\",\n      \"hint\": \"合成\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"compress ratio\",\n      \"localized\": \"圧縮率\",\n      \"reload\": \"\",\n      \"hint\": \"圧縮率\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"concept tokens\",\n      \"localized\": \"コンセプトトークン\",\n      \"reload\": \"\",\n      \"hint\": \"コンセプトトークン\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context\",\n      \"localized\": \"コンテキスト\",\n      \"reload\": \"\",\n      \"hint\": \"コンテキスト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context after\",\n      \"localized\": \"後のコンテキスト\",\n      \"reload\": \"\",\n      \"hint\": \"後のコンテキスト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context before\",\n      \"localized\": \"前のコンテキスト\",\n      \"reload\": \"\",\n      \"hint\": \"前のコンテキスト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context mask\",\n      \"localized\": \"コンテキストマスク\",\n      \"reload\": \"\",\n      \"hint\": \"コンテキストマスク\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"contrast\",\n      \"localized\": \"コントラスト\",\n      \"reload\": \"\",\n      \"hint\": \"コントラスト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control factor\",\n      \"localized\": \"制御ファクター\",\n      \"reload\": \"\",\n      \"hint\": \"制御ファクター\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control override denoise strength\",\n      \"localized\": \"デノイズ強度を制御オーバーライド\",\n      \"reload\": \"\",\n      \"hint\": \"デノイズ強度を制御オーバーライド\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control preprocess input images\",\n      \"localized\": \"入力画像を制御前処理\",\n      \"reload\": \"\",\n      \"hint\": \"入力画像を制御前処理\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 1\",\n      \"localized\": \"Control-LLLiteユニット1\",\n      \"reload\": \"\",\n      \"hint\": \"Control-LLLiteユニット1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 2\",\n      \"localized\": \"Control-LLLiteユニット2\",\n      \"reload\": \"\",\n      \"hint\": \"Control-LLLiteユニット2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 3\",\n      \"localized\": \"Control-LLLiteユニット3\",\n      \"reload\": \"\",\n      \"hint\": \"Control-LLLiteユニット3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 4\",\n      \"localized\": \"Control-LLLiteユニット4\",\n      \"reload\": \"\",\n      \"hint\": \"Control-LLLiteユニット4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet\",\n      \"localized\": \"ControlNet\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 1\",\n      \"localized\": \"ControlNetユニット1\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNetユニット1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 2\",\n      \"localized\": \"ControlNetユニット2\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNetユニット2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 3\",\n      \"localized\": \"ControlNetユニット3\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNetユニット3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 4\",\n      \"localized\": \"ControlNetユニット4\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNetユニット4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs\",\n      \"localized\": \"ControlNet-XS\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet-XS\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 1\",\n      \"localized\": \"ControlNet-XSユニット1\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet-XSユニット1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 2\",\n      \"localized\": \"ControlNet-XSユニット2\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet-XSユニット2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 3\",\n      \"localized\": \"ControlNet-XSユニット3\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet-XSユニット3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 4\",\n      \"localized\": \"ControlNet-XSユニット4\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet-XSユニット4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"correction mode\",\n      \"localized\": \"補正モード\",\n      \"reload\": \"\",\n      \"hint\": \"補正モード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine background\",\n      \"localized\": \"コサイン背景\",\n      \"reload\": \"\",\n      \"hint\": \"コサイン背景\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale\",\n      \"localized\": \"コサインスケール\",\n      \"reload\": \"\",\n      \"hint\": \"コサインスケール\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale 1\",\n      \"localized\": \"コサインスケール1\",\n      \"reload\": \"\",\n      \"hint\": \"コサインスケール1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale 2\",\n      \"localized\": \"コサインスケール2\",\n      \"reload\": \"\",\n      \"hint\": \"コサインスケール2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale 3\",\n      \"localized\": \"コサインスケール3\",\n      \"reload\": \"\",\n      \"hint\": \"コサインスケール3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"create image info text file\",\n      \"localized\": \"画像情報テキストファイルを作成\",\n      \"reload\": \"\",\n      \"hint\": \"画像情報テキストファイルを作成\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"create video\",\n      \"localized\": \"動画を作成\",\n      \"reload\": \"\",\n      \"hint\": \"動画を作成\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"create zip archive\",\n      \"localized\": \"zipアーカイブを作成\",\n      \"reload\": \"\",\n      \"hint\": \"zipアーカイブを作成\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cross-attention\",\n      \"localized\": \"クロスアテンション\",\n      \"reload\": \"\",\n      \"hint\": \"クロスアテンション\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cudagraphs\",\n      \"localized\": \"CUDAグラフ\",\n      \"reload\": \"\",\n      \"hint\": \"CUDAグラフ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cudamallocasync\",\n      \"localized\": \"cudamallocasync\",\n      \"reload\": \"\",\n      \"hint\": \"cudamallocasync\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"custom pipeline\",\n      \"localized\": \"カスタムパイプライン\",\n      \"reload\": \"\",\n      \"hint\": \"カスタムパイプライン\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dark\",\n      \"localized\": \"暗い\",\n      \"reload\": \"\",\n      \"hint\": \"暗い\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dc solver\",\n      \"localized\": \"DCソルバー\",\n      \"reload\": \"\",\n      \"hint\": \"DCソルバー\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ddpm\",\n      \"localized\": \"DDPM\",\n      \"reload\": \"\",\n      \"hint\": \"DDPM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"debug info\",\n      \"localized\": \"デバッグ情報\",\n      \"reload\": \"\",\n      \"hint\": \"デバッグ情報\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"decode\",\n      \"localized\": \"デコード\",\n      \"reload\": \"\",\n      \"hint\": \"デコード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"decode chunks\",\n      \"localized\": \"デコードチャンク\",\n      \"reload\": \"\",\n      \"hint\": \"デコードチャンク\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deep-cache\",\n      \"localized\": \"ディープキャッシュ\",\n      \"reload\": \"\",\n      \"hint\": \"ディープキャッシュ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru\",\n      \"localized\": \"ディープブールー\",\n      \"reload\": \"\",\n      \"hint\": \"ディープブールー\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: escape brackets\",\n      \"localized\": \"ディープブールー: 角括弧をエスケープ\",\n      \"reload\": \"\",\n      \"hint\": \"ディープブールー: 角括弧をエスケープ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: exclude tags\",\n      \"localized\": \"ディープブールー: タグを除外\",\n      \"reload\": \"\",\n      \"hint\": \"ディープブールー: タグを除外\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: include scores in results\",\n      \"localized\": \"ディープブールー: 結果にスコアを含める\",\n      \"reload\": \"\",\n      \"hint\": \"ディープブールー: 結果にスコアを含める\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: max tags\",\n      \"localized\": \"ディープブールー: 最大タグ数\",\n      \"reload\": \"\",\n      \"hint\": \"ディープブールー: 最大タグ数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: score threshold\",\n      \"localized\": \"ディープブールー: スコアしきい値\",\n      \"reload\": \"\",\n      \"hint\": \"ディープブールー: スコアしきい値\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: sort alphabetically\",\n      \"localized\": \"ディープブールー: アルファベット順にソート\",\n      \"reload\": \"\",\n      \"hint\": \"ディープブールー: アルファベット順にソート\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: use spaces for tags\",\n      \"localized\": \"ディープブールー: タグにスペースを使用\",\n      \"reload\": \"\",\n      \"hint\": \"ディープブールー: タグにスペースを使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepcache cache interval\",\n      \"localized\": \"ディープキャッシュキャッシュ間隔\",\n      \"reload\": \"\",\n      \"hint\": \"ディープキャッシュキャッシュ間隔\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"default\",\n      \"localized\": \"デフォルト\",\n      \"reload\": \"\",\n      \"hint\": \"デフォルト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deis\",\n      \"localized\": \"デイス\",\n      \"reload\": \"\",\n      \"hint\": \"デイス\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"denoising batch size\",\n      \"localized\": \"デノイズバッチサイズ\",\n      \"reload\": \"\",\n      \"hint\": \"デノイズバッチサイズ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"denoising steps\",\n      \"localized\": \"デノイズステップ数\",\n      \"reload\": \"\",\n      \"hint\": \"デノイズステップ数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth and normal\",\n      \"localized\": \"深度と法線\",\n      \"reload\": \"\",\n      \"hint\": \"深度と法線\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth anything\",\n      \"localized\": \"デプス・エニシング\",\n      \"reload\": \"\",\n      \"hint\": \"デプス・エニシング\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth map\",\n      \"localized\": \"深度マップ\",\n      \"reload\": \"\",\n      \"hint\": \"深度マップ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth threshold\",\n      \"localized\": \"深度しきい値\",\n      \"reload\": \"\",\n      \"hint\": \"深度しきい値\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"description\",\n      \"localized\": \"説明\",\n      \"reload\": \"\",\n      \"hint\": \"説明\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"details\",\n      \"localized\": \"詳細\",\n      \"reload\": \"\",\n      \"hint\": \"詳細\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deterministic mode\",\n      \"localized\": \"決定論的モード\",\n      \"reload\": \"\",\n      \"hint\": \"決定論的モード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"device info\",\n      \"localized\": \"デバイス情報\",\n      \"reload\": \"\",\n      \"hint\": \"デバイス情報\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"diffusers\",\n      \"localized\": \"Diffusers\",\n      \"reload\": \"\",\n      \"hint\": \"Diffusers\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dilate\",\n      \"localized\": \"膨張\",\n      \"reload\": \"\",\n      \"hint\": \"膨張\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dilate tau\",\n      \"localized\": \"膨張タウ\",\n      \"reload\": \"\",\n      \"hint\": \"膨張タウ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"directml retry ops for nan\",\n      \"localized\": \"DirectML NaN操作リトライ\",\n      \"reload\": \"\",\n      \"hint\": \"DirectML NaN操作リトライ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"directory for temporary images; leave empty for default\",\n      \"localized\": \"一時画像用ディレクトリ; デフォルトは空欄\",\n      \"reload\": \"\",\n      \"hint\": \"一時画像用ディレクトリ; デフォルトは空欄\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disable accelerate\",\n      \"localized\": \"アクセラレートを無効化\",\n      \"reload\": \"\",\n      \"hint\": \"アクセラレートを無効化\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disable conditional batching\",\n      \"localized\": \"条件付きバッチ処理を無効化\",\n      \"reload\": \"\",\n      \"hint\": \"条件付きバッチ処理を無効化\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disabled\",\n      \"localized\": \"無効\",\n      \"reload\": \"\",\n      \"hint\": \"無効\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"discard penultimate sigma\",\n      \"localized\": \"最後から2番目のシグマを破棄\",\n      \"reload\": \"\",\n      \"hint\": \"最後から2番目のシグマを破棄\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"distance threshold\",\n      \"localized\": \"距離しきい値\",\n      \"reload\": \"\",\n      \"hint\": \"距離しきい値\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"do not change selected model when reading generation parameters\",\n      \"localized\": \"生成パラメータ読み込み時に選択モデルを変更しない\",\n      \"reload\": \"\",\n      \"hint\": \"生成パラメータ読み込み時に選択モデルを変更しない\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"do not display video output in ui\",\n      \"localized\": \"UIでビデオ出力を表示しない\",\n      \"reload\": \"\",\n      \"hint\": \"UIでビデオ出力を表示しない\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"down\",\n      \"localized\": \"下\",\n      \"reload\": \"\",\n      \"hint\": \"下\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download\",\n      \"localized\": \"ダウンロード\",\n      \"reload\": \"\",\n      \"hint\": \"ダウンロード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download model\",\n      \"localized\": \"モデルをダウンロード\",\n      \"reload\": \"\",\n      \"hint\": \"モデルをダウンロード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download path\",\n      \"localized\": \"ダウンロードパス\",\n      \"reload\": \"\",\n      \"hint\": \"ダウンロードパス\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download updates\",\n      \"localized\": \"アップデートをダウンロード\",\n      \"reload\": \"\",\n      \"hint\": \"アップデートをダウンロード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"downscale high resolution live previews\",\n      \"localized\": \"高解像度ライブプレビューをダウンスケール\",\n      \"reload\": \"\",\n      \"hint\": \"高解像度ライブプレビューをダウンスケール\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm sde\",\n      \"localized\": \"DPM SDE\",\n      \"reload\": \"\",\n      \"hint\": \"DPM SDE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++\",\n      \"localized\": \"DPM++\",\n      \"reload\": \"\",\n      \"hint\": \"DPM++\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 1s\",\n      \"localized\": \"DPM++ 1s\",\n      \"reload\": \"\",\n      \"hint\": \"DPM++ 1s\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m\",\n      \"localized\": \"DPM++ 2m\",\n      \"reload\": \"\",\n      \"hint\": \"DPM++ 2m\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m edm\",\n      \"localized\": \"DPM++ 2m EDM\",\n      \"reload\": \"\",\n      \"hint\": \"DPM++ 2m EDM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m inverse\",\n      \"localized\": \"DPM++ 2m Inverse\",\n      \"reload\": \"\",\n      \"hint\": \"DPM++ 2m Inverse\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m sde\",\n      \"localized\": \"DPM++ 2m SDE\",\n      \"reload\": \"\",\n      \"hint\": \"DPM++ 2m SDE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 3m\",\n      \"localized\": \"DPM++ 3m\",\n      \"reload\": \"\",\n      \"hint\": \"DPM++ 3m\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 3m inverse\",\n      \"localized\": \"DPM++ 3m Inverse\",\n      \"reload\": \"\",\n      \"hint\": \"DPM++ 3m Inverse\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ cosine\",\n      \"localized\": \"DPM++ Cosine\",\n      \"reload\": \"\",\n      \"hint\": \"DPM++ Cosine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ inverse\",\n      \"localized\": \"DPM++ Inverse\",\n      \"reload\": \"\",\n      \"hint\": \"DPM++ Inverse\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ sde\",\n      \"localized\": \"DPM++ SDE\",\n      \"reload\": \"\",\n      \"hint\": \"DPM++ SDE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2 flowmatch\",\n      \"localized\": \"DPM2 FlowMatch\",\n      \"reload\": \"\",\n      \"hint\": \"DPM2 FlowMatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2m flowmatch\",\n      \"localized\": \"DPM2++ 2m FlowMatch\",\n      \"reload\": \"\",\n      \"hint\": \"DPM2++ 2m FlowMatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2m sde flowmatch\",\n      \"localized\": \"DPM2++ 2m SDE FlowMatch\",\n      \"reload\": \"\",\n      \"hint\": \"DPM2++ 2m SDE FlowMatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2s flowmatch\",\n      \"localized\": \"DPM2++ 2s FlowMatch\",\n      \"reload\": \"\",\n      \"hint\": \"DPM2++ 2s FlowMatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 3m sde flowmatch\",\n      \"localized\": \"DPM2++ 3m SDE FlowMatch\",\n      \"reload\": \"\",\n      \"hint\": \"DPM2++ 3m SDE FlowMatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ sde flowmatch\",\n      \"localized\": \"DPM2++ SDE FlowMatch\",\n      \"reload\": \"\",\n      \"hint\": \"DPM2++ SDE FlowMatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2a flowmatch\",\n      \"localized\": \"DPM2a FlowMatch\",\n      \"reload\": \"\",\n      \"hint\": \"DPM2a FlowMatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"draw legend\",\n      \"localized\": \"凡例を描画\",\n      \"reload\": \"\",\n      \"hint\": \"凡例を描画\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dropdown\",\n      \"localized\": \"ドロップダウン\",\n      \"reload\": \"\",\n      \"hint\": \"ドロップダウン\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"duration\",\n      \"localized\": \"期間\",\n      \"reload\": \"\",\n      \"hint\": \"期間\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dwpose\",\n      \"localized\": \"DWPOSE\",\n      \"reload\": \"\",\n      \"hint\": \"DWPOSE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic\",\n      \"localized\": \"動的\",\n      \"reload\": \"\",\n      \"hint\": \"動的\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention\",\n      \"localized\": \"動的アテンション\",\n      \"reload\": \"\",\n      \"hint\": \"動的アテンション\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention slicing rate in gb\",\n      \"localized\": \"動的アテンションスライシングレート (GB単位)\",\n      \"reload\": \"\",\n      \"hint\": \"動的アテンションスライシングレート (GB単位)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention trigger rate in gb\",\n      \"localized\": \"動的アテンショントリガーレート (GB単位)\",\n      \"reload\": \"\",\n      \"hint\": \"動的アテンショントリガーレート (GB単位)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edge\",\n      \"localized\": \"エッジ\",\n      \"reload\": \"\",\n      \"hint\": \"エッジ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edit start\",\n      \"localized\": \"編集開始\",\n      \"reload\": \"\",\n      \"hint\": \"編集開始\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edit stop\",\n      \"localized\": \"編集停止\",\n      \"reload\": \"\",\n      \"hint\": \"編集停止\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"embedded metadata\",\n      \"localized\": \"埋め込みメタデータ\",\n      \"reload\": \"\",\n      \"hint\": \"埋め込みメタデータ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable embeddings support\",\n      \"localized\": \"埋め込みサポートを有効化\",\n      \"reload\": \"\",\n      \"hint\": \"埋め込みサポートを有効化\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable file wildcards support\",\n      \"localized\": \"ファイルワイルドカードサポートを有効化\",\n      \"reload\": \"\",\n      \"hint\": \"ファイルワイルドカードサポートを有効化\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable freeu\",\n      \"localized\": \"FreeUを有効化\",\n      \"reload\": \"\",\n      \"hint\": \"FreeUを有効化\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable teacache\",\n      \"localized\": \"TEACacheを有効化\",\n      \"reload\": \"\",\n      \"hint\": \"TEACacheを有効化\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable tonemap\",\n      \"localized\": \"トーンマップを有効化\",\n      \"reload\": \"\",\n      \"hint\": \"トーンマップを有効化\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable use of reference models\",\n      \"localized\": \"参照モデルの使用を有効化\",\n      \"reload\": \"\",\n      \"hint\": \"参照モデルの使用を有効化\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enabled\",\n      \"localized\": \"有効\",\n      \"reload\": \"\",\n      \"hint\": \"有効\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"encoder\",\n      \"localized\": \"エンコーダー\",\n      \"reload\": \"\",\n      \"hint\": \"エンコーダー\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"end\",\n      \"localized\": \"終了\",\n      \"reload\": \"\",\n      \"hint\": \"終了\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enhance prompt\",\n      \"localized\": \"プロンプトを強化\",\n      \"reload\": \"\",\n      \"hint\": \"プロンプトを強化\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ensemble size\",\n      \"localized\": \"アンサンブルサイズ\",\n      \"reload\": \"\",\n      \"hint\": \"アンサンブルサイズ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"epsilon\",\n      \"localized\": \"イプシロン\",\n      \"reload\": \"\",\n      \"hint\": \"イプシロン\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"erode\",\n      \"localized\": \"収縮\",\n      \"reload\": \"\",\n      \"hint\": \"収縮\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"erode size\",\n      \"localized\": \"収縮サイズ\",\n      \"reload\": \"\",\n      \"hint\": \"収縮サイズ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"eta\",\n      \"localized\": \"イータ\",\n      \"reload\": \"\",\n      \"hint\": \"イータ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler\",\n      \"localized\": \"Euler\",\n      \"reload\": \"\",\n      \"hint\": \"Euler\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler edm\",\n      \"localized\": \"Euler EDM\",\n      \"reload\": \"\",\n      \"hint\": \"Euler EDM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler flowmatch\",\n      \"localized\": \"Euler FlowMatch\",\n      \"reload\": \"\",\n      \"hint\": \"Euler FlowMatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler sgm\",\n      \"localized\": \"Euler SGM\",\n      \"reload\": \"\",\n      \"hint\": \"Euler SGM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.cpu\",\n      \"localized\": \"ExecutionProvider.CPU\",\n      \"reload\": \"\",\n      \"hint\": \"ExecutionProvider.CPU\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.cuda\",\n      \"localized\": \"ExecutionProvider.CUDA\",\n      \"reload\": \"\",\n      \"hint\": \"ExecutionProvider.CUDA\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.directml\",\n      \"localized\": \"ExecutionProvider.DirectML\",\n      \"reload\": \"\",\n      \"hint\": \"ExecutionProvider.DirectML\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.migraphx\",\n      \"localized\": \"ExecutionProvider.MIGraphX\",\n      \"reload\": \"\",\n      \"hint\": \"ExecutionProvider.MIGraphX\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.openvino\",\n      \"localized\": \"ExecutionProvider.OpenVINO\",\n      \"reload\": \"\",\n      \"hint\": \"ExecutionProvider.OpenVINO\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.rocm\",\n      \"localized\": \"ExecutionProvider.ROCm\",\n      \"reload\": \"\",\n      \"hint\": \"ExecutionProvider.ROCm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"expandable segments\",\n      \"localized\": \"展開可能なセグメント\",\n      \"reload\": \"\",\n      \"hint\": \"展開可能なセグメント\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"exponential\",\n      \"localized\": \"指数関数的\",\n      \"reload\": \"\",\n      \"hint\": \"指数関数的\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"exposure\",\n      \"localized\": \"露光量\",\n      \"reload\": \"\",\n      \"hint\": \"露光量\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"extra noise multiplier for img2img\",\n      \"localized\": \"img2img用追加ノイズ乗数\",\n      \"reload\": \"\",\n      \"hint\": \"img2img用追加ノイズ乗数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"extract lora\",\n      \"localized\": \"LoRA抽出\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA抽出\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"face\",\n      \"localized\": \"顔\",\n      \"reload\": \"\",\n      \"hint\": \"顔\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"face confidence\",\n      \"localized\": \"顔の信頼度\",\n      \"reload\": \"\",\n      \"hint\": \"顔の信頼度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"faceid model\",\n      \"localized\": \"FaceIDモデル\",\n      \"reload\": \"\",\n      \"hint\": \"FaceIDモデル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fall-off exponent (lower=higher detail)\",\n      \"localized\": \"減衰指数 (低いほど高詳細)\",\n      \"reload\": \"\",\n      \"hint\": \"減衰指数 (低いほど高詳細)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"false\",\n      \"localized\": \"いいえ\",\n      \"reload\": \"\",\n      \"hint\": \"いいえ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fast\",\n      \"localized\": \"高速\",\n      \"reload\": \"\",\n      \"hint\": \"高速\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"file or folder with user-defined styles\",\n      \"localized\": \"ユーザー定義スタイルファイルまたはフォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"ユーザー定義スタイルファイルまたはフォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"filename\",\n      \"localized\": \"ファイル名\",\n      \"reload\": \"\",\n      \"hint\": \"ファイル名\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"first-block cache enabled\",\n      \"localized\": \"ファーストブロックキャッシュ有効\",\n      \"reload\": \"\",\n      \"hint\": \"ファーストブロックキャッシュ有効\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fixed unet precision\",\n      \"localized\": \"固定Unet精度\",\n      \"reload\": \"\",\n      \"hint\": \"固定Unet精度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flash attention\",\n      \"localized\": \"フラッシュアテンション\",\n      \"reload\": \"\",\n      \"hint\": \"フラッシュアテンション\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flavors\",\n      \"localized\": \"フレーバー\",\n      \"reload\": \"\",\n      \"hint\": \"フレーバー\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flow shift\",\n      \"localized\": \"フローシフト\",\n      \"reload\": \"\",\n      \"hint\": \"フローシフト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder\",\n      \"localized\": \"フォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"フォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for control generate\",\n      \"localized\": \"コントロール生成用フォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"コントロール生成用フォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for control grids\",\n      \"localized\": \"コントロールグリッド用フォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"コントロールグリッド用フォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for disk offload\",\n      \"localized\": \"ディスクオフロード用フォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"ディスクオフロード用フォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for huggingface cache\",\n      \"localized\": \"HuggingFaceキャッシュ用フォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"HuggingFaceキャッシュ用フォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for image generate\",\n      \"localized\": \"画像生成用フォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"画像生成用フォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for img2img grids\",\n      \"localized\": \"img2imgグリッド用フォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"img2imgグリッド用フォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for init images\",\n      \"localized\": \"初期画像用フォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"初期画像用フォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for manually saved images\",\n      \"localized\": \"手動保存画像用フォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"手動保存画像用フォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for onnx cached models\",\n      \"localized\": \"ONNXキャッシュモデル用フォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"ONNXキャッシュモデル用フォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for onnx conversion\",\n      \"localized\": \"ONNX変換用フォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"ONNX変換用フォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for openvino cache\",\n      \"localized\": \"OpenVINOキャッシュ用フォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"OpenVINOキャッシュ用フォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for processed images\",\n      \"localized\": \"処理済み画像用フォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"処理済み画像用フォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for text generate\",\n      \"localized\": \"テキスト生成用フォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"テキスト生成用フォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for tunable ops cache\",\n      \"localized\": \"チューナブルオペレーションキャッシュ用フォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"チューナブルオペレーションキャッシュ用フォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for txt2img grids\",\n      \"localized\": \"txt2imgグリッド用フォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"txt2imgグリッド用フォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for videos\",\n      \"localized\": \"ビデオ用フォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"ビデオ用フォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with bsrgan models\",\n      \"localized\": \"BSRGANモデルフォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"BSRGANモデルフォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with chainner models\",\n      \"localized\": \"Chainnerモデルフォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"Chainnerモデルフォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with clip models\",\n      \"localized\": \"CLIPモデルフォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"CLIPモデルフォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with codeformer models\",\n      \"localized\": \"CodeFormerモデルフォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"CodeFormerモデルフォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with control models\",\n      \"localized\": \"コントロールモデルフォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"コントロールモデルフォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with esrgan models\",\n      \"localized\": \"ESRGANモデルフォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"ESRGANモデルフォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with gfpgan models\",\n      \"localized\": \"GFPGANモデルフォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"GFPGANモデルフォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with huggingface models\",\n      \"localized\": \"HuggingFaceモデルフォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"HuggingFaceモデルフォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with hypernetwork models\",\n      \"localized\": \"ハイパーネットワークモデルフォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"ハイパーネットワークモデルフォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with ldsr models\",\n      \"localized\": \"LDSRモデルフォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"LDSRモデルフォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with lora network(s)\",\n      \"localized\": \"LoRAネットワークフォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"LoRAネットワークフォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with realesrgan models\",\n      \"localized\": \"Real-ESRGANモデルフォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"Real-ESRGANモデルフォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with scunet models\",\n      \"localized\": \"SCUNetモデルフォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"SCUNetモデルフォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with stable diffusion models\",\n      \"localized\": \"Stable Diffusionモデルフォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Diffusionモデルフォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with swinir models\",\n      \"localized\": \"SwinIRモデルフォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"SwinIRモデルフォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with text encoder files\",\n      \"localized\": \"テキストエンコーダファイルフォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"テキストエンコーダファイルフォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with textual inversion embeddings\",\n      \"localized\": \"Textual Inversion埋め込みフォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"Textual Inversion埋め込みフォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with unet files\",\n      \"localized\": \"Unetファイルフォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"Unetファイルフォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with user-defined wildcards\",\n      \"localized\": \"ユーザー定義ワイルドカードフォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"ユーザー定義ワイルドカードフォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with vae files\",\n      \"localized\": \"VAEファイルフォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"VAEファイルフォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with yolo models\",\n      \"localized\": \"YOLOモデルフォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"YOLOモデルフォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font color\",\n      \"localized\": \"フォント色\",\n      \"reload\": \"\",\n      \"hint\": \"フォント色\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font file\",\n      \"localized\": \"フォントファイル\",\n      \"reload\": \"\",\n      \"hint\": \"フォントファイル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font size\",\n      \"localized\": \"フォントサイズ\",\n      \"reload\": \"\",\n      \"hint\": \"フォントサイズ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"force model eval\",\n      \"localized\": \"モデル評価を強制\",\n      \"reload\": \"\",\n      \"hint\": \"モデル評価を強制\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"foreground threshold\",\n      \"localized\": \"前景しきい値\",\n      \"reload\": \"\",\n      \"hint\": \"前景しきい値\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fp4\",\n      \"localized\": \"fp4\",\n      \"reload\": \"\",\n      \"hint\": \"fp4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"frame change sensitivity\",\n      \"localized\": \"フレーム変更感度\",\n      \"reload\": \"\",\n      \"hint\": \"フレーム変更感度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"frames\",\n      \"localized\": \"フレーム\",\n      \"reload\": \"\",\n      \"hint\": \"フレーム\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeinit\",\n      \"localized\": \"FreeInit\",\n      \"reload\": \"\",\n      \"hint\": \"FreeInit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeu enabled\",\n      \"localized\": \"FreeU有効\",\n      \"reload\": \"\",\n      \"hint\": \"FreeU有効\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeu preset\",\n      \"localized\": \"FreeUプリセット\",\n      \"reload\": \"\",\n      \"hint\": \"FreeUプリセット\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"full vae\",\n      \"localized\": \"フルVAE\",\n      \"reload\": \"\",\n      \"hint\": \"フルVAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"full-depth cudnn benchmark\",\n      \"localized\": \"全深度cuDNNベンチマーク\",\n      \"reload\": \"\",\n      \"hint\": \"全深度cuDNNベンチマーク\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fuse strength\",\n      \"localized\": \"フューズ強度\",\n      \"reload\": \"\",\n      \"hint\": \"フューズ強度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fused projections\",\n      \"localized\": \"統合投影\",\n      \"reload\": \"\",\n      \"hint\": \"統合投影\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gamma\",\n      \"localized\": \"ガンマ\",\n      \"reload\": \"\",\n      \"hint\": \"ガンマ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gamma corrected\",\n      \"localized\": \"ガンマ補正\",\n      \"reload\": \"\",\n      \"hint\": \"ガンマ補正\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gate step\",\n      \"localized\": \"ゲートステップ\",\n      \"reload\": \"\",\n      \"hint\": \"ゲートステップ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gc threshold\",\n      \"localized\": \"GCしきい値\",\n      \"reload\": \"\",\n      \"hint\": \"GCしきい値\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"get changelog\",\n      \"localized\": \"変更ログを取得\",\n      \"reload\": \"\",\n      \"hint\": \"変更ログを取得\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gpu\",\n      \"localized\": \"gpu\",\n      \"reload\": \"\",\n      \"hint\": \"gpu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gradient\",\n      \"localized\": \"グラデーション\",\n      \"reload\": \"\",\n      \"hint\": \"グラデーション\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid background color\",\n      \"localized\": \"グリッド背景色\",\n      \"reload\": \"\",\n      \"hint\": \"グリッド背景色\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid margins\",\n      \"localized\": \"グリッド余白\",\n      \"reload\": \"\",\n      \"hint\": \"グリッド余白\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid sections:\",\n      \"localized\": \"グリッドセクション：\",\n      \"reload\": \"\",\n      \"hint\": \"グリッドセクション：\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"group size\",\n      \"localized\": \"グループサイズ\",\n      \"reload\": \"\",\n      \"hint\": \"グループサイズ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance\",\n      \"localized\": \"ガイダンス\",\n      \"reload\": \"\",\n      \"hint\": \"ガイダンス\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance start\",\n      \"localized\": \"ガイダンス開始\",\n      \"reload\": \"\",\n      \"hint\": \"ガイダンス開始\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance stop\",\n      \"localized\": \"ガイダンス停止\",\n      \"reload\": \"\",\n      \"hint\": \"ガイダンス停止\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance strength\",\n      \"localized\": \"ガイダンス強度\",\n      \"reload\": \"\",\n      \"hint\": \"ガイダンス強度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hands\",\n      \"localized\": \"手\",\n      \"reload\": \"\",\n      \"hint\": \"手\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hdr range\",\n      \"localized\": \"HDR範囲\",\n      \"reload\": \"\",\n      \"hint\": \"HDR範囲\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hed\",\n      \"localized\": \"hed\",\n      \"reload\": \"\",\n      \"hint\": \"hed\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height  after\",\n      \"localized\": \"高さ（変更後）\",\n      \"reload\": \"\",\n      \"hint\": \"高さ（変更後）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height  before\",\n      \"localized\": \"高さ（変更前）\",\n      \"reload\": \"\",\n      \"hint\": \"高さ（変更前）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height  mask\",\n      \"localized\": \"高さマスク\",\n      \"reload\": \"\",\n      \"hint\": \"高さマスク\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"heun\",\n      \"localized\": \"Heun\",\n      \"reload\": \"\",\n      \"hint\": \"Heun\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"heun flowmatch\",\n      \"localized\": \"Heunフローマッチ\",\n      \"reload\": \"\",\n      \"hint\": \"Heunフローマッチ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hidet\",\n      \"localized\": \"Hidet\",\n      \"reload\": \"\",\n      \"hint\": \"Hidet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"high threshold\",\n      \"localized\": \"高しきい値\",\n      \"reload\": \"\",\n      \"hint\": \"高しきい値\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hires pass only\",\n      \"localized\": \"高解像度パスのみ\",\n      \"reload\": \"\",\n      \"hint\": \"高解像度パスのみ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hq init latents\",\n      \"localized\": \"HQ初期潜在空間\",\n      \"reload\": \"\",\n      \"hint\": \"HQ初期潜在空間\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hue\",\n      \"localized\": \"色相\",\n      \"reload\": \"\",\n      \"hint\": \"色相\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"huggingface mirror\",\n      \"localized\": \"HuggingFaceミラー\",\n      \"reload\": \"\",\n      \"hint\": \"HuggingFaceミラー\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"huggingface token\",\n      \"localized\": \"HuggingFaceトークン\",\n      \"reload\": \"\",\n      \"hint\": \"HuggingFaceトークン\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hunyuan\",\n      \"localized\": \"Hunyuan\",\n      \"reload\": \"\",\n      \"hint\": \"Hunyuan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"il\",\n      \"localized\": \"il\",\n      \"reload\": \"\",\n      \"hint\": \"il\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image height\",\n      \"localized\": \"画像の高さ\",\n      \"reload\": \"\",\n      \"hint\": \"画像の高さ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image quality\",\n      \"localized\": \"画質\",\n      \"reload\": \"\",\n      \"hint\": \"画質\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image transparent color fill\",\n      \"localized\": \"画像の透明色塗りつぶし\",\n      \"reload\": \"\",\n      \"hint\": \"画像の透明色塗りつぶし\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image watermark file\",\n      \"localized\": \"画像の透かしファイル\",\n      \"reload\": \"\",\n      \"hint\": \"画像の透かしファイル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image watermark position\",\n      \"localized\": \"画像の透かし位置\",\n      \"reload\": \"\",\n      \"hint\": \"画像の透かし位置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image width\",\n      \"localized\": \"画像の幅\",\n      \"reload\": \"\",\n      \"hint\": \"画像の幅\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include images\",\n      \"localized\": \"画像を含める\",\n      \"reload\": \"\",\n      \"hint\": \"画像を含める\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include main grid\",\n      \"localized\": \"メイングリッドを含める\",\n      \"reload\": \"\",\n      \"hint\": \"メイングリッドを含める\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include mask in outputs\",\n      \"localized\": \"出力にマスクを含める\",\n      \"reload\": \"\",\n      \"hint\": \"出力にマスクを含める\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include original image\",\n      \"localized\": \"元画像を含める\",\n      \"reload\": \"\",\n      \"hint\": \"元画像を含める\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include scores in results when available\",\n      \"localized\": \"利用可能な場合、結果にスコアを含める\",\n      \"reload\": \"\",\n      \"hint\": \"利用可能な場合、結果にスコアを含める\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include sub grids\",\n      \"localized\": \"サブグリッドを含める\",\n      \"reload\": \"\",\n      \"hint\": \"サブグリッドを含める\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inductor\",\n      \"localized\": \"インダクタ\",\n      \"reload\": \"\",\n      \"hint\": \"インダクタ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"info\",\n      \"localized\": \"情報\",\n      \"reload\": \"\",\n      \"hint\": \"情報\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"info object\",\n      \"localized\": \"情報オブジェクト\",\n      \"reload\": \"\",\n      \"hint\": \"情報オブジェクト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpaint\",\n      \"localized\": \"インペイント\",\n      \"reload\": \"\",\n      \"hint\": \"インペイント\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpaint masked only\",\n      \"localized\": \"マスクされた部分のみインペイント\",\n      \"reload\": \"\",\n      \"hint\": \"マスクされた部分のみインペイント\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpainting include greyscale mask in results\",\n      \"localized\": \"インペイント結果にグレースケールマスクを含める\",\n      \"reload\": \"\",\n      \"hint\": \"インペイント結果にグレースケールマスクを含める\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpainting include masked composite in results\",\n      \"localized\": \"インペイント結果にマスク合成を含める\",\n      \"reload\": \"\",\n      \"hint\": \"インペイント結果にマスク合成を含める\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"input model\",\n      \"localized\": \"入力モデル\",\n      \"reload\": \"\",\n      \"hint\": \"入力モデル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"intermediates\",\n      \"localized\": \"中間生成物\",\n      \"reload\": \"\",\n      \"hint\": \"中間生成物\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"interpolate frames\",\n      \"localized\": \"フレームを補間する\",\n      \"reload\": \"\",\n      \"hint\": \"フレームを補間する\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"interpolation method\",\n      \"localized\": \"補間方法\",\n      \"reload\": \"\",\n      \"hint\": \"補間方法\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invert\",\n      \"localized\": \"反転\",\n      \"reload\": \"\",\n      \"hint\": \"反転\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invert mask\",\n      \"localized\": \"マスクを反転\",\n      \"reload\": \"\",\n      \"hint\": \"マスクを反転\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iou\",\n      \"localized\": \"iou\",\n      \"reload\": \"\",\n      \"hint\": \"iou\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ipex\",\n      \"localized\": \"ipex\",\n      \"reload\": \"\",\n      \"hint\": \"ipex\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ipndm\",\n      \"localized\": \"ipndm\",\n      \"reload\": \"\",\n      \"hint\": \"ipndm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"item edge blur\",\n      \"localized\": \"アイテムのエッジぼかし\",\n      \"reload\": \"\",\n      \"hint\": \"アイテムのエッジぼかし\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"item padding\",\n      \"localized\": \"アイテムのパディング\",\n      \"reload\": \"\",\n      \"hint\": \"アイテムのパディング\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iterate seed per line\",\n      \"localized\": \"シードを行ごとに反復\",\n      \"reload\": \"\",\n      \"hint\": \"シードを行ごとに反復\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iterations\",\n      \"localized\": \"イテレーション数\",\n      \"reload\": \"\",\n      \"hint\": \"イテレーション数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"karras\",\n      \"localized\": \"カラス\",\n      \"reload\": \"\",\n      \"hint\": \"カラス\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"kdpm2\",\n      \"localized\": \"kdpm2\",\n      \"reload\": \"\",\n      \"hint\": \"kdpm2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"kdpm2 a\",\n      \"localized\": \"kdpm2 a\",\n      \"reload\": \"\",\n      \"hint\": \"kdpm2 a\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"keep incomplete images\",\n      \"localized\": \"不完全な画像を保持\",\n      \"reload\": \"\",\n      \"hint\": \"不完全な画像を保持\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"large\",\n      \"localized\": \"大\",\n      \"reload\": \"\",\n      \"hint\": \"大\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"latent history size\",\n      \"localized\": \"潜在空間履歴サイズ\",\n      \"reload\": \"\",\n      \"hint\": \"潜在空間履歴サイズ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"latent mode\",\n      \"localized\": \"潜在モード\",\n      \"reload\": \"\",\n      \"hint\": \"潜在モード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layer scales\",\n      \"localized\": \"レイヤースケール\",\n      \"reload\": \"\",\n      \"hint\": \"レイヤースケール\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layerwise casting storage\",\n      \"localized\": \"レイヤーごとのキャストストレージ\",\n      \"reload\": \"\",\n      \"hint\": \"レイヤーごとのキャストストレージ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layerwise non-blocking operations\",\n      \"localized\": \"レイヤーごとの非ブロッキング操作\",\n      \"reload\": \"\",\n      \"hint\": \"レイヤーごとの非ブロッキング操作\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lcm\",\n      \"localized\": \"lcm\",\n      \"reload\": \"\",\n      \"hint\": \"lcm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ldsr processing steps\",\n      \"localized\": \"LDSR処理ステップ\",\n      \"reload\": \"\",\n      \"hint\": \"LDSR処理ステップ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"left\",\n      \"localized\": \"左\",\n      \"reload\": \"\",\n      \"hint\": \"左\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"legend\",\n      \"localized\": \"凡例\",\n      \"reload\": \"\",\n      \"hint\": \"凡例\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"length\",\n      \"localized\": \"長さ\",\n      \"reload\": \"\",\n      \"hint\": \"長さ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"leres depth\",\n      \"localized\": \"LeReS深度\",\n      \"reload\": \"\",\n      \"hint\": \"LeReS深度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"level\",\n      \"localized\": \"レベル\",\n      \"reload\": \"\",\n      \"hint\": \"レベル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"libs\",\n      \"localized\": \"libs\",\n      \"reload\": \"\",\n      \"hint\": \"libs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"light\",\n      \"localized\": \"ライト\",\n      \"reload\": \"\",\n      \"hint\": \"ライト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lineart\",\n      \"localized\": \"線画\",\n      \"reload\": \"\",\n      \"hint\": \"線画\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"list\",\n      \"localized\": \"リスト\",\n      \"reload\": \"\",\n      \"hint\": \"リスト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"list model details\",\n      \"localized\": \"モデルの詳細をリスト表示\",\n      \"reload\": \"\",\n      \"hint\": \"モデルの詳細をリスト表示\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lite\",\n      \"localized\": \"ライト\",\n      \"reload\": \"\",\n      \"hint\": \"ライト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"live update\",\n      \"localized\": \"ライブ更新\",\n      \"reload\": \"\",\n      \"hint\": \"ライブ更新\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lmsd\",\n      \"localized\": \"lmsd\",\n      \"reload\": \"\",\n      \"hint\": \"lmsd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"load custom diffusers pipeline\",\n      \"localized\": \"カスタムDiffusersパイプラインをロード\",\n      \"reload\": \"\",\n      \"hint\": \"カスタムDiffusersパイプラインをロード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"load model directly to gpu\",\n      \"localized\": \"モデルを直接GPUにロード\",\n      \"reload\": \"\",\n      \"hint\": \"モデルを直接GPUにロード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"loaded lora\",\n      \"localized\": \"ロード済みLoRA\",\n      \"reload\": \"\",\n      \"hint\": \"ロード済みLoRA\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"logsnr\",\n      \"localized\": \"LogSNR\",\n      \"reload\": \"\",\n      \"hint\": \"LogSNR\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"loop\",\n      \"localized\": \"ループ\",\n      \"reload\": \"\",\n      \"hint\": \"ループ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora add hash info to metadata\",\n      \"localized\": \"LoRAハッシュ情報をメタデータに追加\",\n      \"reload\": \"\",\n      \"hint\": \"LoRAハッシュ情報をメタデータに追加\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora auto-apply tags\",\n      \"localized\": \"LoRAタグを自動適用\",\n      \"reload\": \"\",\n      \"hint\": \"LoRAタグを自動適用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora load using diffusers method for selected models\",\n      \"localized\": \"選択モデルにDiffusersメソッドを使用してLoRAをロード\",\n      \"reload\": \"\",\n      \"hint\": \"選択モデルにDiffusersメソッドを使用してLoRAをロード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora load using legacy method\",\n      \"localized\": \"レガシーメソッドを使用してLoRAをロード\",\n      \"reload\": \"\",\n      \"hint\": \"レガシーメソッドを使用してLoRAをロード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora target filename\",\n      \"localized\": \"LoRAターゲットファイル名\",\n      \"reload\": \"\",\n      \"hint\": \"LoRAターゲットファイル名\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"low order\",\n      \"localized\": \"低次数\",\n      \"reload\": \"\",\n      \"hint\": \"低次数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"low threshold\",\n      \"localized\": \"低しきい値\",\n      \"reload\": \"\",\n      \"hint\": \"低しきい値\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ltx model\",\n      \"localized\": \"LTXモデル\",\n      \"reload\": \"\",\n      \"hint\": \"LTXモデル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lumina: use mask in transformers\",\n      \"localized\": \"Lumina: トランスフォーマーでマスクを使用\",\n      \"reload\": \"\",\n      \"hint\": \"Lumina: トランスフォーマーでマスクを使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"manual block merge\",\n      \"localized\": \"手動ブロックマージ\",\n      \"reload\": \"\",\n      \"hint\": \"手動ブロックマージ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"marigold depth\",\n      \"localized\": \"マリーゴールド深度\",\n      \"reload\": \"\",\n      \"hint\": \"マリーゴールド深度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask dropout\",\n      \"localized\": \"マスクドロップアウト\",\n      \"reload\": \"\",\n      \"hint\": \"マスクドロップアウト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask invert\",\n      \"localized\": \"マスク反転\",\n      \"reload\": \"\",\n      \"hint\": \"マスク反転\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask only\",\n      \"localized\": \"マスクのみ\",\n      \"reload\": \"\",\n      \"hint\": \"マスクのみ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask strength\",\n      \"localized\": \"マスク強度\",\n      \"reload\": \"\",\n      \"hint\": \"マスク強度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"masked\",\n      \"localized\": \"マスク済み\",\n      \"reload\": \"\",\n      \"hint\": \"マスク済み\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"math attention\",\n      \"localized\": \"数学アテンション\",\n      \"reload\": \"\",\n      \"hint\": \"数学アテンション\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max faces\",\n      \"localized\": \"最大顔数\",\n      \"reload\": \"\",\n      \"hint\": \"最大顔数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max flavors\",\n      \"localized\": \"最大フレイバー数\",\n      \"reload\": \"\",\n      \"hint\": \"最大フレイバー数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max guidance\",\n      \"localized\": \"最大ガイダンス\",\n      \"reload\": \"\",\n      \"hint\": \"最大ガイダンス\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max length\",\n      \"localized\": \"最大長\",\n      \"reload\": \"\",\n      \"hint\": \"最大長\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max object size\",\n      \"localized\": \"最大オブジェクトサイズ\",\n      \"reload\": \"\",\n      \"hint\": \"最大オブジェクトサイズ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max range\",\n      \"localized\": \"最大範囲\",\n      \"reload\": \"\",\n      \"hint\": \"最大範囲\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max tokens\",\n      \"localized\": \"最大トークン数\",\n      \"reload\": \"\",\n      \"hint\": \"最大トークン数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max words\",\n      \"localized\": \"最大単語数\",\n      \"reload\": \"\",\n      \"hint\": \"最大単語数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max-autotune\",\n      \"localized\": \"最大オートチューン\",\n      \"reload\": \"\",\n      \"hint\": \"最大オートチューン\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max-autotune-no-cudagraphs\",\n      \"localized\": \"最大オートチューン（CUDAグラフなし）\",\n      \"reload\": \"\",\n      \"hint\": \"最大オートチューン（CUDAグラフなし）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum image size (mp)\",\n      \"localized\": \"最大画像サイズ (MP)\",\n      \"reload\": \"\",\n      \"hint\": \"最大画像サイズ (MP)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum number of units\",\n      \"localized\": \"最大ユニット数\",\n      \"reload\": \"\",\n      \"hint\": \"最大ユニット数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum rank\",\n      \"localized\": \"最大ランク\",\n      \"reload\": \"\",\n      \"hint\": \"最大ランク\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mediapipe face\",\n      \"localized\": \"MediaPipe顔\",\n      \"reload\": \"\",\n      \"hint\": \"MediaPipe顔\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"medium\",\n      \"localized\": \"中\",\n      \"reload\": \"\",\n      \"hint\": \"中\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mediums\",\n      \"localized\": \"媒体\",\n      \"reload\": \"\",\n      \"hint\": \"媒体\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory\",\n      \"localized\": \"メモリ\",\n      \"reload\": \"\",\n      \"hint\": \"メモリ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory attention\",\n      \"localized\": \"メモリアテンション\",\n      \"reload\": \"\",\n      \"hint\": \"メモリアテンション\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory limit\",\n      \"localized\": \"メモリ制限\",\n      \"reload\": \"\",\n      \"hint\": \"メモリ制限\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory optimization\",\n      \"localized\": \"メモリ最適化\",\n      \"reload\": \"\",\n      \"hint\": \"メモリ最適化\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"merge alpha\",\n      \"localized\": \"アルファを結合\",\n      \"reload\": \"\",\n      \"hint\": \"アルファを結合\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method\",\n      \"localized\": \"メソッド\",\n      \"reload\": \"\",\n      \"hint\": \"メソッド\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method after\",\n      \"localized\": \"実行後メソッド\",\n      \"reload\": \"\",\n      \"hint\": \"実行後メソッド\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method before\",\n      \"localized\": \"実行前メソッド\",\n      \"reload\": \"\",\n      \"hint\": \"実行前メソッド\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method mask\",\n      \"localized\": \"メソッドマスク\",\n      \"reload\": \"\",\n      \"hint\": \"メソッドマスク\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"midas depth\",\n      \"localized\": \"MiDaS深度\",\n      \"reload\": \"\",\n      \"hint\": \"MiDaS深度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"migraphx\",\n      \"localized\": \"migraphx\",\n      \"reload\": \"\",\n      \"hint\": \"migraphx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min flavors\",\n      \"localized\": \"最小フレーバー数\",\n      \"reload\": \"\",\n      \"hint\": \"最小フレーバー数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min guidance\",\n      \"localized\": \"最小ガイダンス\",\n      \"reload\": \"\",\n      \"hint\": \"最小ガイダンス\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min length\",\n      \"localized\": \"最小長\",\n      \"reload\": \"\",\n      \"hint\": \"最小長\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min object size\",\n      \"localized\": \"最小オブジェクトサイズ\",\n      \"reload\": \"\",\n      \"hint\": \"最小オブジェクトサイズ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mine\",\n      \"localized\": \"マイニング\",\n      \"reload\": \"\",\n      \"hint\": \"マイニング\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mlsd\",\n      \"localized\": \"mlsd\",\n      \"reload\": \"\",\n      \"hint\": \"mlsd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mm\",\n      \"localized\": \"mm\",\n      \"reload\": \"\",\n      \"hint\": \"mm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode\",\n      \"localized\": \"モード\",\n      \"reload\": \"\",\n      \"hint\": \"モード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode after\",\n      \"localized\": \"実行後モード\",\n      \"reload\": \"\",\n      \"hint\": \"実行後モード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode before\",\n      \"localized\": \"実行前モード\",\n      \"reload\": \"\",\n      \"hint\": \"実行前モード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode mask\",\n      \"localized\": \"モードマスク\",\n      \"reload\": \"\",\n      \"hint\": \"モードマスク\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode x-axis\",\n      \"localized\": \"X軸モード\",\n      \"reload\": \"\",\n      \"hint\": \"X軸モード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode y-axis\",\n      \"localized\": \"Y軸モード\",\n      \"reload\": \"\",\n      \"hint\": \"Y軸モード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model auto-download on demand\",\n      \"localized\": \"モデルのオンデマンド自動ダウンロード\",\n      \"reload\": \"\",\n      \"hint\": \"モデルのオンデマンド自動ダウンロード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model autoload on start\",\n      \"localized\": \"起動時のモデル自動ロード\",\n      \"reload\": \"\",\n      \"hint\": \"起動時のモデル自動ロード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model compile fullgraph\",\n      \"localized\": \"モデルのフルグラフコンパイル\",\n      \"reload\": \"\",\n      \"hint\": \"モデルのフルグラフコンパイル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model compile suppress errors\",\n      \"localized\": \"モデルコンパイル時のエラー抑制\",\n      \"reload\": \"\",\n      \"hint\": \"モデルコンパイル時のエラー抑制\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model compile verbose mode\",\n      \"localized\": \"モデルコンパイルの詳細モード\",\n      \"reload\": \"\",\n      \"hint\": \"モデルコンパイルの詳細モード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model info\",\n      \"localized\": \"モデル情報\",\n      \"reload\": \"\",\n      \"hint\": \"モデル情報\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model metadata\",\n      \"localized\": \"モデルメタデータ\",\n      \"reload\": \"\",\n      \"hint\": \"モデルメタデータ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model name\",\n      \"localized\": \"モデル名\",\n      \"reload\": \"\",\n      \"hint\": \"モデル名\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model precision\",\n      \"localized\": \"モデル精度\",\n      \"reload\": \"\",\n      \"hint\": \"モデル精度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model type\",\n      \"localized\": \"モデルタイプ\",\n      \"reload\": \"\",\n      \"hint\": \"モデルタイプ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model url\",\n      \"localized\": \"モデルURL\",\n      \"reload\": \"\",\n      \"hint\": \"モデルURL\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"modern\",\n      \"localized\": \"モダン\",\n      \"reload\": \"\",\n      \"hint\": \"モダン\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"momentum\",\n      \"localized\": \"モーメンタム\",\n      \"reload\": \"\",\n      \"hint\": \"モーメンタム\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"motion level\",\n      \"localized\": \"動きのレベル\",\n      \"reload\": \"\",\n      \"hint\": \"動きのレベル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mount url subpath\",\n      \"localized\": \"URLサブパスのマウント\",\n      \"reload\": \"\",\n      \"hint\": \"URLサブパスのマウント\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move base model to cpu when using refiner\",\n      \"localized\": \"リファイナー使用時にベースモデルをCPUに移動\",\n      \"reload\": \"\",\n      \"hint\": \"リファイナー使用時にベースモデルをCPUに移動\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move base model to cpu when using vae\",\n      \"localized\": \"VAE使用時にベースモデルをCPUに移動\",\n      \"reload\": \"\",\n      \"hint\": \"VAE使用時にベースモデルをCPUに移動\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move detailer model to cpu when complete\",\n      \"localized\": \"完了時にディテイラーモデルをCPUに移動\",\n      \"reload\": \"\",\n      \"hint\": \"完了時にディテイラーモデルをCPUに移動\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move refiner model to cpu when not in use\",\n      \"localized\": \"使用しないときにリファイナーモデルをCPUに移動\",\n      \"reload\": \"\",\n      \"hint\": \"使用しないときにリファイナーモデルをCPUに移動\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"movements\",\n      \"localized\": \"ムーブメント\",\n      \"reload\": \"\",\n      \"hint\": \"ムーブメント\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"multi decoder\",\n      \"localized\": \"マルチデコーダー\",\n      \"reload\": \"\",\n      \"hint\": \"マルチデコーダー\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"multistep restore\",\n      \"localized\": \"マルチステップ復元\",\n      \"reload\": \"\",\n      \"hint\": \"マルチステップ復元\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"native\",\n      \"localized\": \"ネイティブ\",\n      \"reload\": \"\",\n      \"hint\": \"ネイティブ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"near threshold\",\n      \"localized\": \"閾値付近\",\n      \"reload\": \"\",\n      \"hint\": \"閾値付近\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"negative\",\n      \"localized\": \"ネガティブ\",\n      \"reload\": \"\",\n      \"hint\": \"ネガティブ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"network negative prompt\",\n      \"localized\": \"ネットワークネガティブプロンプト\",\n      \"reload\": \"\",\n      \"hint\": \"ネットワークネガティブプロンプト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"network parameters\",\n      \"localized\": \"ネットワークパラメータ\",\n      \"reload\": \"\",\n      \"hint\": \"ネットワークパラメータ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"network prompt\",\n      \"localized\": \"ネットワークプロンプト\",\n      \"reload\": \"\",\n      \"hint\": \"ネットワークプロンプト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"new model name\",\n      \"localized\": \"新しいモデル名\",\n      \"reload\": \"\",\n      \"hint\": \"新しいモデル名\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"nf4\",\n      \"localized\": \"nf4\",\n      \"reload\": \"\",\n      \"hint\": \"nf4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"nms\",\n      \"localized\": \"nms\",\n      \"reload\": \"\",\n      \"hint\": \"nms\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise\",\n      \"localized\": \"ノイズ\",\n      \"reload\": \"\",\n      \"hint\": \"ノイズ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise multiplier (eta)\",\n      \"localized\": \"ノイズ乗数 (イータ)\",\n      \"reload\": \"\",\n      \"hint\": \"ノイズ乗数 (イータ)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise multiplier for image processing\",\n      \"localized\": \"画像処理用ノイズ乗数\",\n      \"reload\": \"\",\n      \"hint\": \"画像処理用ノイズ乗数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise seed delta (eta)\",\n      \"localized\": \"ノイズシードデルタ (イータ)\",\n      \"reload\": \"\",\n      \"hint\": \"ノイズシードデルタ (イータ)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise strength\",\n      \"localized\": \"ノイズ強度\",\n      \"reload\": \"\",\n      \"hint\": \"ノイズ強度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"none\",\n      \"localized\": \"なし\",\n      \"reload\": \"\",\n      \"hint\": \"なし\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"note\",\n      \"localized\": \"メモ\",\n      \"reload\": \"\",\n      \"hint\": \"メモ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"nothing\",\n      \"localized\": \"何もなし\",\n      \"reload\": \"\",\n      \"hint\": \"何もなし\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"num beams\",\n      \"localized\": \"ビーム数\",\n      \"reload\": \"\",\n      \"hint\": \"ビーム数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"number\",\n      \"localized\": \"数値\",\n      \"reload\": \"\",\n      \"hint\": \"数値\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"numbered filenames\",\n      \"localized\": \"番号付きファイル名\",\n      \"reload\": \"\",\n      \"hint\": \"番号付きファイル名\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"offload\",\n      \"localized\": \"オフロード\",\n      \"reload\": \"\",\n      \"hint\": \"オフロード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"offload face module\",\n      \"localized\": \"顔モジュールのオフロード\",\n      \"reload\": \"\",\n      \"hint\": \"顔モジュールのオフロード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"offload models\",\n      \"localized\": \"モデルのオフロード\",\n      \"reload\": \"\",\n      \"hint\": \"モデルのオフロード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"olive-ai\",\n      \"localized\": \"olive-ai\",\n      \"reload\": \"\",\n      \"hint\": \"olive-ai\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"onediff\",\n      \"localized\": \"onediff\",\n      \"reload\": \"\",\n      \"hint\": \"onediff\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"onnx\",\n      \"localized\": \"onnx\",\n      \"reload\": \"\",\n      \"hint\": \"onnx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openbody\",\n      \"localized\": \"openbody\",\n      \"reload\": \"\",\n      \"hint\": \"openbody\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openclip\",\n      \"localized\": \"openclip\",\n      \"reload\": \"\",\n      \"hint\": \"openclip\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino disable memory cleanup after compile\",\n      \"localized\": \"OpenVINOコンパイル後のメモリクリーンアップ無効化\",\n      \"reload\": \"\",\n      \"hint\": \"OpenVINOコンパイル後のメモリクリーンアップ無効化\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino disable model caching\",\n      \"localized\": \"OpenVINOモデルキャッシュ無効化\",\n      \"reload\": \"\",\n      \"hint\": \"OpenVINOモデルキャッシュ無効化\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino mode\",\n      \"localized\": \"OpenVINOモード\",\n      \"reload\": \"\",\n      \"hint\": \"OpenVINOモード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino_fx\",\n      \"localized\": \"openvino_fx\",\n      \"reload\": \"\",\n      \"hint\": \"openvino_fx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"optional image description\",\n      \"localized\": \"オプションの画像説明\",\n      \"reload\": \"\",\n      \"hint\": \"オプションの画像説明\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"optional init image or video\",\n      \"localized\": \"オプションの初期画像またはビデオ\",\n      \"reload\": \"\",\n      \"hint\": \"オプションの初期画像またはビデオ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"order\",\n      \"localized\": \"順序\",\n      \"reload\": \"\",\n      \"hint\": \"順序\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ortho\",\n      \"localized\": \"オルソ\",\n      \"reload\": \"\",\n      \"hint\": \"オルソ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"outpaint\",\n      \"localized\": \"アウトペイント\",\n      \"reload\": \"\",\n      \"hint\": \"アウトペイント\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"output model\",\n      \"localized\": \"出力モデル\",\n      \"reload\": \"\",\n      \"hint\": \"出力モデル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override resolution\",\n      \"localized\": \"解像度を上書き\",\n      \"reload\": \"\",\n      \"hint\": \"解像度を上書き\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override sampler\",\n      \"localized\": \"サンプラーを上書き\",\n      \"reload\": \"\",\n      \"hint\": \"サンプラーを上書き\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override scheduler\",\n      \"localized\": \"スケジューラーを上書き\",\n      \"reload\": \"\",\n      \"hint\": \"スケジューラーを上書き\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override steps\",\n      \"localized\": \"ステップ数を上書き\",\n      \"reload\": \"\",\n      \"hint\": \"ステップ数を上書き\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override t1 ratio\",\n      \"localized\": \"t1比率を上書き\",\n      \"reload\": \"\",\n      \"hint\": \"t1比率を上書き\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override t2 ratio\",\n      \"localized\": \"t2比率を上書き\",\n      \"reload\": \"\",\n      \"hint\": \"t2比率を上書き\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"overwrite existing file\",\n      \"localized\": \"既存ファイルを上書き\",\n      \"reload\": \"\",\n      \"hint\": \"既存ファイルを上書き\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"overwrite model\",\n      \"localized\": \"モデルを上書き\",\n      \"reload\": \"\",\n      \"hint\": \"モデルを上書き\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pad frames\",\n      \"localized\": \"フレームをパディング\",\n      \"reload\": \"\",\n      \"hint\": \"フレームをパディング\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"padding\",\n      \"localized\": \"パディング\",\n      \"reload\": \"\",\n      \"hint\": \"パディング\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"parallel process images in batch\",\n      \"localized\": \"バッチで画像を並行処理\",\n      \"reload\": \"\",\n      \"hint\": \"バッチで画像を並行処理\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"parameter free\",\n      \"localized\": \"パラメータフリー\",\n      \"reload\": \"\",\n      \"hint\": \"パラメータフリー\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"path to model file\",\n      \"localized\": \"モデルファイルへのパス\",\n      \"reload\": \"\",\n      \"hint\": \"モデルファイルへのパス\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"path to notification sound\",\n      \"localized\": \"通知音へのパス\",\n      \"reload\": \"\",\n      \"hint\": \"通知音へのパス\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"peft\",\n      \"localized\": \"peft\",\n      \"reload\": \"\",\n      \"hint\": \"peft\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"penalty\",\n      \"localized\": \"ペナルティ\",\n      \"reload\": \"\",\n      \"hint\": \"ペナルティ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perflow\",\n      \"localized\": \"perflow\",\n      \"reload\": \"\",\n      \"hint\": \"perflow\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perform injection\",\n      \"localized\": \"インジェクションを実行\",\n      \"reload\": \"\",\n      \"hint\": \"インジェクションを実行\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perform sdsa\",\n      \"localized\": \"SDSAを実行\",\n      \"reload\": \"\",\n      \"hint\": \"SDSAを実行\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perform warmup\",\n      \"localized\": \"ウォームアップを実行\",\n      \"reload\": \"\",\n      \"hint\": \"ウォームアップを実行\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"performance\",\n      \"localized\": \"パフォーマンス\",\n      \"reload\": \"\",\n      \"hint\": \"パフォーマンス\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"photomaker model\",\n      \"localized\": \"PhotoMakerモデル\",\n      \"reload\": \"\",\n      \"hint\": \"PhotoMakerモデル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pidinet\",\n      \"localized\": \"PiDiNet\",\n      \"reload\": \"\",\n      \"hint\": \"PiDiNet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pipeline\",\n      \"localized\": \"パイプライン\",\n      \"reload\": \"\",\n      \"hint\": \"パイプライン\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pixels to expand\",\n      \"localized\": \"拡張するピクセル数\",\n      \"reload\": \"\",\n      \"hint\": \"拡張するピクセル数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"platform\",\n      \"localized\": \"プラットフォーム\",\n      \"reload\": \"\",\n      \"hint\": \"プラットフォーム\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"play\",\n      \"localized\": \"再生\",\n      \"reload\": \"\",\n      \"hint\": \"再生\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"play a notification upon completion\",\n      \"localized\": \"完了時に通知を再生する\",\n      \"reload\": \"\",\n      \"hint\": \"完了時に通知を再生する\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pndm\",\n      \"localized\": \"PNDM\",\n      \"reload\": \"\",\n      \"hint\": \"PNDM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"polyexponential\",\n      \"localized\": \"ポリ指数\",\n      \"reload\": \"\",\n      \"hint\": \"ポリ指数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pony\",\n      \"localized\": \"Pony\",\n      \"reload\": \"\",\n      \"hint\": \"Pony\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pose confidence\",\n      \"localized\": \"ポーズ信頼度\",\n      \"reload\": \"\",\n      \"hint\": \"ポーズ信頼度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"positive\",\n      \"localized\": \"ポジティブ\",\n      \"reload\": \"\",\n      \"hint\": \"ポジティブ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocess mask\",\n      \"localized\": \"マスクの後処理\",\n      \"reload\": \"\",\n      \"hint\": \"マスクの後処理\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocess upscale\",\n      \"localized\": \"アップスケールの後処理\",\n      \"reload\": \"\",\n      \"hint\": \"アップスケールの後処理\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocessing operation order\",\n      \"localized\": \"後処理操作順序\",\n      \"reload\": \"\",\n      \"hint\": \"後処理操作順序\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"power\",\n      \"localized\": \"パワー\",\n      \"reload\": \"\",\n      \"hint\": \"パワー\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"predefined question\",\n      \"localized\": \"事前定義された質問\",\n      \"reload\": \"\",\n      \"hint\": \"事前定義された質問\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prediction method\",\n      \"localized\": \"予測方法\",\n      \"reload\": \"\",\n      \"hint\": \"予測方法\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preset\",\n      \"localized\": \"プリセット\",\n      \"reload\": \"\",\n      \"hint\": \"プリセット\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preset block merge\",\n      \"localized\": \"プリセットブロックマージ\",\n      \"reload\": \"\",\n      \"hint\": \"プリセットブロックマージ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview\",\n      \"localized\": \"プレビュー\",\n      \"reload\": \"\",\n      \"hint\": \"プレビュー\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview end\",\n      \"localized\": \"プレビュー終了\",\n      \"reload\": \"\",\n      \"hint\": \"プレビュー終了\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview start\",\n      \"localized\": \"プレビュー開始\",\n      \"reload\": \"\",\n      \"hint\": \"プレビュー開始\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"primary model\",\n      \"localized\": \"プライマリモデル\",\n      \"reload\": \"\",\n      \"hint\": \"プライマリモデル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor\",\n      \"localized\": \"プロセッサ\",\n      \"reload\": \"\",\n      \"hint\": \"プロセッサ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor move to cpu after use\",\n      \"localized\": \"使用後プロセッサをCPUへ移動\",\n      \"reload\": \"\",\n      \"hint\": \"使用後プロセッサをCPUへ移動\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor settings\",\n      \"localized\": \"プロセッサ設定\",\n      \"reload\": \"\",\n      \"hint\": \"プロセッサ設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor unload after use\",\n      \"localized\": \"使用後プロセッサをアンロード\",\n      \"reload\": \"\",\n      \"hint\": \"使用後プロセッサをアンロード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt attention normalization\",\n      \"localized\": \"プロンプトアテンション正規化\",\n      \"reload\": \"\",\n      \"hint\": \"プロンプトアテンション正規化\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt ex\",\n      \"localized\": \"プロンプトEx\",\n      \"reload\": \"\",\n      \"hint\": \"プロンプトEx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt processor\",\n      \"localized\": \"プロンプトプロセッサ\",\n      \"reload\": \"\",\n      \"hint\": \"プロンプトプロセッサ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt strength\",\n      \"localized\": \"プロンプト強度\",\n      \"reload\": \"\",\n      \"hint\": \"プロンプト強度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt thresholds:\",\n      \"localized\": \"プロンプトしきい値：\",\n      \"reload\": \"\",\n      \"hint\": \"プロンプトしきい値：\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompts\",\n      \"localized\": \"プロンプト\",\n      \"reload\": \"\",\n      \"hint\": \"プロンプト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"provider\",\n      \"localized\": \"プロバイダー\",\n      \"reload\": \"\",\n      \"hint\": \"プロバイダー\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prune\",\n      \"localized\": \"プルーニング\",\n      \"reload\": \"\",\n      \"hint\": \"プルーニング\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quad\",\n      \"localized\": \"クアッド\",\n      \"reload\": \"\",\n      \"hint\": \"クアッド\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization activations type\",\n      \"localized\": \"量子化アクティベーションタイプ\",\n      \"reload\": \"\",\n      \"hint\": \"量子化アクティベーションタイプ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization mode\",\n      \"localized\": \"量子化モード\",\n      \"reload\": \"\",\n      \"hint\": \"量子化モード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization type\",\n      \"localized\": \"量子化タイプ\",\n      \"reload\": \"\",\n      \"hint\": \"量子化タイプ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization weights type\",\n      \"localized\": \"量子化重みタイプ\",\n      \"reload\": \"\",\n      \"hint\": \"量子化重みタイプ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"random seeds\",\n      \"localized\": \"ランダムシード\",\n      \"reload\": \"\",\n      \"hint\": \"ランダムシード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"range\",\n      \"localized\": \"範囲\",\n      \"reload\": \"\",\n      \"hint\": \"範囲\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rebase\",\n      \"localized\": \"リベース\",\n      \"reload\": \"\",\n      \"hint\": \"リベース\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"recursive\",\n      \"localized\": \"再帰的\",\n      \"reload\": \"\",\n      \"hint\": \"再帰的\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reduce-overhead\",\n      \"localized\": \"オーバーヘッド削減\",\n      \"reload\": \"\",\n      \"hint\": \"オーバーヘッド削減\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"redux prompt strength\",\n      \"localized\": \"リダックスプロンプト強度\",\n      \"reload\": \"\",\n      \"hint\": \"リダックスプロンプト強度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference adain weight\",\n      \"localized\": \"参照AdaINウェイト\",\n      \"reload\": \"\",\n      \"hint\": \"参照AdaINウェイト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference query weight\",\n      \"localized\": \"参照クエリウェイト\",\n      \"reload\": \"\",\n      \"hint\": \"参照クエリウェイト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference unit 1\",\n      \"localized\": \"参照ユニット1\",\n      \"reload\": \"\",\n      \"hint\": \"参照ユニット1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refine foreground\",\n      \"localized\": \"前景の洗練\",\n      \"reload\": \"\",\n      \"hint\": \"前景の洗練\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh bench\",\n      \"localized\": \"ベンチマークを更新\",\n      \"reload\": \"\",\n      \"hint\": \"ベンチマークを更新\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh data\",\n      \"localized\": \"データを更新\",\n      \"reload\": \"\",\n      \"hint\": \"データを更新\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh state\",\n      \"localized\": \"状態を更新\",\n      \"reload\": \"\",\n      \"hint\": \"状態を更新\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh ui values\",\n      \"localized\": \"UI値を更新\",\n      \"reload\": \"\",\n      \"hint\": \"UI値を更新\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reinstall\",\n      \"localized\": \"再インストール\",\n      \"reload\": \"\",\n      \"hint\": \"再インストール\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"remove background\",\n      \"localized\": \"背景を削除\",\n      \"reload\": \"\",\n      \"hint\": \"背景を削除\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repeat x-axis\",\n      \"localized\": \"X軸を繰り返す\",\n      \"reload\": \"\",\n      \"hint\": \"X軸を繰り返す\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repeat y-axis\",\n      \"localized\": \"Y軸を繰り返す\",\n      \"reload\": \"\",\n      \"hint\": \"Y軸を繰り返す\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"replace vae\",\n      \"localized\": \"VAEを置換\",\n      \"reload\": \"\",\n      \"hint\": \"VAEを置換\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repos\",\n      \"localized\": \"リポジトリ\",\n      \"reload\": \"\",\n      \"hint\": \"リポジトリ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess decode\",\n      \"localized\": \"デコードを再処理\",\n      \"reload\": \"\",\n      \"hint\": \"デコードを再処理\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess face\",\n      \"localized\": \"顔を再処理\",\n      \"reload\": \"\",\n      \"hint\": \"顔を再処理\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess refine\",\n      \"localized\": \"洗練を再処理\",\n      \"reload\": \"\",\n      \"hint\": \"洗練を再処理\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"request browser notifications\",\n      \"localized\": \"ブラウザ通知を要求\",\n      \"reload\": \"\",\n      \"hint\": \"ブラウザ通知を要求\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rescale\",\n      \"localized\": \"再スケーリング\",\n      \"reload\": \"\",\n      \"hint\": \"再スケーリング\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rescale betas with zero terminal snr\",\n      \"localized\": \"ゼロ終端SNRでベータをリスケール\",\n      \"reload\": \"\",\n      \"hint\": \"ゼロ終端SNRでベータをリスケール\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reset anchors\",\n      \"localized\": \"アンカーをリセット\",\n      \"reload\": \"\",\n      \"hint\": \"アンカーをリセット\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"residual diff threshold\",\n      \"localized\": \"残差差分しきい値\",\n      \"reload\": \"\",\n      \"hint\": \"残差差分しきい値\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize background color\",\n      \"localized\": \"背景色をリサイズ\",\n      \"reload\": \"\",\n      \"hint\": \"背景色をリサイズ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize method\",\n      \"localized\": \"リサイズ方法\",\n      \"reload\": \"\",\n      \"hint\": \"リサイズ方法\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize mode\",\n      \"localized\": \"リサイズモード\",\n      \"reload\": \"\",\n      \"hint\": \"リサイズモード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize scale\",\n      \"localized\": \"リサイズスケール\",\n      \"reload\": \"\",\n      \"hint\": \"リサイズスケール\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restart step\",\n      \"localized\": \"ステップを再開\",\n      \"reload\": \"\",\n      \"hint\": \"ステップを再開\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore faces: codeformer\",\n      \"localized\": \"顔の復元: CodeFormer\",\n      \"reload\": \"\",\n      \"hint\": \"顔の復元: CodeFormer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore faces: gfpgan\",\n      \"localized\": \"顔の復元: GFPGAN\",\n      \"reload\": \"\",\n      \"hint\": \"顔の復元: GFPGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore pipe on end\",\n      \"localized\": \"終了時にパイプを復元\",\n      \"reload\": \"\",\n      \"hint\": \"終了時にパイプを復元\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore unparsed prompt\",\n      \"localized\": \"未解析プロンプトを復元\",\n      \"reload\": \"\",\n      \"hint\": \"未解析プロンプトを復元\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reswapper model\",\n      \"localized\": \"Reswapperモデル\",\n      \"reload\": \"\",\n      \"hint\": \"Reswapperモデル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"return original images\",\n      \"localized\": \"元の画像を返す\",\n      \"reload\": \"\",\n      \"hint\": \"元の画像を返す\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"right\",\n      \"localized\": \"右\",\n      \"reload\": \"\",\n      \"hint\": \"右\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"root model folder\",\n      \"localized\": \"ルートモデルフォルダ\",\n      \"reload\": \"\",\n      \"hint\": \"ルートモデルフォルダ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rows\",\n      \"localized\": \"行\",\n      \"reload\": \"\",\n      \"hint\": \"行\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"run\",\n      \"localized\": \"実行\",\n      \"reload\": \"\",\n      \"hint\": \"実行\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"run benchmark\",\n      \"localized\": \"ベンチマークを実行\",\n      \"reload\": \"\",\n      \"hint\": \"ベンチマークを実行\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sa solver\",\n      \"localized\": \"SAソルバー\",\n      \"reload\": \"\",\n      \"hint\": \"SAソルバー\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"safetensors\",\n      \"localized\": \"Safetensors\",\n      \"reload\": \"\",\n      \"hint\": \"Safetensors\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sage attention\",\n      \"localized\": \"Sageアテンション\",\n      \"reload\": \"\",\n      \"hint\": \"Sageアテンション\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"same as primary\",\n      \"localized\": \"プライマリと同じ\",\n      \"reload\": \"\",\n      \"hint\": \"プライマリと同じ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"same latent\",\n      \"localized\": \"同じ潜在\",\n      \"reload\": \"\",\n      \"hint\": \"同じ潜在\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sample\",\n      \"localized\": \"サンプル\",\n      \"reload\": \"\",\n      \"hint\": \"サンプル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler\",\n      \"localized\": \"サンプラー\",\n      \"reload\": \"\",\n      \"hint\": \"サンプラー\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler dynamic shift\",\n      \"localized\": \"サンプラー動的シフト\",\n      \"reload\": \"\",\n      \"hint\": \"サンプラー動的シフト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler order\",\n      \"localized\": \"サンプラー順序\",\n      \"reload\": \"\",\n      \"hint\": \"サンプラー順序\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler shift\",\n      \"localized\": \"サンプラーシフト\",\n      \"reload\": \"\",\n      \"hint\": \"サンプラーシフト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sana: use complex human instructions\",\n      \"localized\": \"SANA: 複雑な人間の指示を使用\",\n      \"reload\": \"\",\n      \"hint\": \"SANA: 複雑な人間の指示を使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"saturation\",\n      \"localized\": \"彩度\",\n      \"reload\": \"\",\n      \"hint\": \"彩度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save all generated image grids\",\n      \"localized\": \"生成されたすべての画像グリッドを保存\",\n      \"reload\": \"\",\n      \"hint\": \"生成されたすべての画像グリッドを保存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save all generated images\",\n      \"localized\": \"生成されたすべての画像を保存\",\n      \"reload\": \"\",\n      \"hint\": \"生成されたすべての画像を保存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save caption files\",\n      \"localized\": \"キャプションファイルを保存\",\n      \"reload\": \"\",\n      \"hint\": \"キャプションファイルを保存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save diffusers\",\n      \"localized\": \"Diffusersを保存\",\n      \"reload\": \"\",\n      \"hint\": \"Diffusersを保存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save hdr image\",\n      \"localized\": \"HDR画像を保存\",\n      \"reload\": \"\",\n      \"hint\": \"HDR画像を保存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before color correction\",\n      \"localized\": \"色補正前の画像を保存\",\n      \"reload\": \"\",\n      \"hint\": \"色補正前の画像を保存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before detailer\",\n      \"localized\": \"Detailer適用前の画像を保存\",\n      \"reload\": \"\",\n      \"hint\": \"Detailer適用前の画像を保存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before hires\",\n      \"localized\": \"高解像度化前の画像を保存\",\n      \"reload\": \"\",\n      \"hint\": \"高解像度化前の画像を保存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before refiner\",\n      \"localized\": \"Refiner適用前の画像を保存\",\n      \"reload\": \"\",\n      \"hint\": \"Refiner適用前の画像を保存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save images to a subdirectory\",\n      \"localized\": \"画像をサブディレクトリに保存\",\n      \"reload\": \"\",\n      \"hint\": \"画像をサブディレクトリに保存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save init images\",\n      \"localized\": \"初期画像を保存\",\n      \"reload\": \"\",\n      \"hint\": \"初期画像を保存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save inpainting mask\",\n      \"localized\": \"Inpaintingマスクを保存\",\n      \"reload\": \"\",\n      \"hint\": \"Inpaintingマスクを保存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save inpainting masked composite\",\n      \"localized\": \"Inpaintingマスク適用合成画像を保存\",\n      \"reload\": \"\",\n      \"hint\": \"Inpaintingマスク適用合成画像を保存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save metadata\",\n      \"localized\": \"メタデータを保存\",\n      \"reload\": \"\",\n      \"hint\": \"メタデータを保存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save only saves selected image\",\n      \"localized\": \"選択した画像のみを保存\",\n      \"reload\": \"\",\n      \"hint\": \"選択した画像のみを保存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save output\",\n      \"localized\": \"出力を保存\",\n      \"reload\": \"\",\n      \"hint\": \"出力を保存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save safetensors\",\n      \"localized\": \"Safetensorsを保存\",\n      \"reload\": \"\",\n      \"hint\": \"Safetensorsを保存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save unparsed prompt\",\n      \"localized\": \"未解析プロンプトを保存\",\n      \"reload\": \"\",\n      \"hint\": \"未解析プロンプトを保存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale  after\",\n      \"localized\": \"適用後スケール\",\n      \"reload\": \"\",\n      \"hint\": \"適用後スケール\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale  before\",\n      \"localized\": \"適用前スケール\",\n      \"reload\": \"\",\n      \"hint\": \"適用前スケール\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale  mask\",\n      \"localized\": \"マスクを拡大縮小\",\n      \"reload\": \"\",\n      \"hint\": \"マスクを拡大縮小\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale factor\",\n      \"localized\": \"スケールファクター\",\n      \"reload\": \"\",\n      \"hint\": \"スケールファクター\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"score\",\n      \"localized\": \"スコア\",\n      \"reload\": \"\",\n      \"hint\": \"スコア\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"score threshold\",\n      \"localized\": \"スコアしきい値\",\n      \"reload\": \"\",\n      \"hint\": \"スコアしきい値\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scribble\",\n      \"localized\": \"スクリブル\",\n      \"reload\": \"\",\n      \"hint\": \"スクリブル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-attire\",\n      \"localized\": \"SD15-衣装\",\n      \"reload\": \"\",\n      \"hint\": \"SD15-衣装\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-likeness\",\n      \"localized\": \"SD15-似顔絵\",\n      \"reload\": \"\",\n      \"hint\": \"SD15-似顔絵\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-navimixu\",\n      \"localized\": \"SD15-Navimixu\",\n      \"reload\": \"\",\n      \"hint\": \"SD15-Navimixu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-sexy\",\n      \"localized\": \"SD15-セクシー\",\n      \"reload\": \"\",\n      \"hint\": \"SD15-セクシー\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-artstyle\",\n      \"localized\": \"SDXL-アートスタイル\",\n      \"reload\": \"\",\n      \"hint\": \"SDXL-アートスタイル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-negative\",\n      \"localized\": \"SDXL-ネガティブ\",\n      \"reload\": \"\",\n      \"hint\": \"SDXL-ネガティブ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-sexy\",\n      \"localized\": \"SDXL-セクシー\",\n      \"reload\": \"\",\n      \"hint\": \"SDXL-セクシー\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-sliders\",\n      \"localized\": \"SDXL-スライダー\",\n      \"reload\": \"\",\n      \"hint\": \"SDXL-スライダー\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-toon\",\n      \"localized\": \"SDXL-トゥーン\",\n      \"reload\": \"\",\n      \"hint\": \"SDXL-トゥーン\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl: use weighted pooled embeds\",\n      \"localized\": \"SDXL: 重み付きプール埋め込みを使用\",\n      \"reload\": \"\",\n      \"hint\": \"SDXL: 重み付きプール埋め込みを使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search changelog\",\n      \"localized\": \"変更履歴を検索\",\n      \"reload\": \"\",\n      \"hint\": \"変更履歴を検索\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search models\",\n      \"localized\": \"モデルを検索\",\n      \"reload\": \"\",\n      \"hint\": \"モデルを検索\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search wiki pages\",\n      \"localized\": \"Wikiページを検索\",\n      \"reload\": \"\",\n      \"hint\": \"Wikiページを検索\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"secondary model\",\n      \"localized\": \"セカンダリモデル\",\n      \"reload\": \"\",\n      \"hint\": \"セカンダリモデル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"segmentanything\",\n      \"localized\": \"SegmentAnything\",\n      \"reload\": \"\",\n      \"hint\": \"SegmentAnything\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"select\",\n      \"localized\": \"選択\",\n      \"reload\": \"\",\n      \"hint\": \"選択\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"select model\",\n      \"localized\": \"モデルを選択\",\n      \"reload\": \"\",\n      \"hint\": \"モデルを選択\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send interrupt\",\n      \"localized\": \"割り込みを送信\",\n      \"reload\": \"\",\n      \"hint\": \"割り込みを送信\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send seed when sending prompt or image to other interface\",\n      \"localized\": \"プロンプトまたは画像を他のインターフェースに送信する際にシードも送信\",\n      \"reload\": \"\",\n      \"hint\": \"プロンプトまたは画像を他のインターフェースに送信する際にシードも送信\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send size when sending prompt or image to another interface\",\n      \"localized\": \"プロンプトまたは画像を他のインターフェースに送信する際にサイズも送信\",\n      \"reload\": \"\",\n      \"hint\": \"プロンプトまたは画像を他のインターフェースに送信する際にサイズも送信\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sequential\",\n      \"localized\": \"シーケンシャル\",\n      \"reload\": \"\",\n      \"hint\": \"シーケンシャル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"server start time\",\n      \"localized\": \"サーバー開始時間\",\n      \"reload\": \"\",\n      \"hint\": \"サーバー開始時間\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"set at prompt start\",\n      \"localized\": \"プロンプト開始時に設定\",\n      \"reload\": \"\",\n      \"hint\": \"プロンプト開始時に設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"set ui menu states\",\n      \"localized\": \"UIメニューの状態を設定\",\n      \"reload\": \"\",\n      \"hint\": \"UIメニューの状態を設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"share queries\",\n      \"localized\": \"クエリを共有\",\n      \"reload\": \"\",\n      \"hint\": \"クエリを共有\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shared options\",\n      \"localized\": \"共有オプション\",\n      \"reload\": \"\",\n      \"hint\": \"共有オプション\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sharpen\",\n      \"localized\": \"シャープ化\",\n      \"reload\": \"\",\n      \"hint\": \"シャープ化\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shift\",\n      \"localized\": \"シフト\",\n      \"reload\": \"\",\n      \"hint\": \"シフト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show grid in results\",\n      \"localized\": \"結果をグリッド表示\",\n      \"reload\": \"\",\n      \"hint\": \"結果をグリッド表示\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show input\",\n      \"localized\": \"入力を表示\",\n      \"reload\": \"\",\n      \"hint\": \"入力を表示\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show metadata in full screen image browser\",\n      \"localized\": \"全画面画像ブラウザでメタデータを表示\",\n      \"reload\": \"\",\n      \"hint\": \"全画面画像ブラウザでメタデータを表示\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show motd\",\n      \"localized\": \"MOTDを表示\",\n      \"reload\": \"\",\n      \"hint\": \"MOTDを表示\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show preview\",\n      \"localized\": \"プレビューを表示\",\n      \"reload\": \"\",\n      \"hint\": \"プレビューを表示\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shuffle weights\",\n      \"localized\": \"重みをシャッフル\",\n      \"reload\": \"\",\n      \"hint\": \"重みをシャッフル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma\",\n      \"localized\": \"シグマ\",\n      \"reload\": \"\",\n      \"hint\": \"シグマ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma churn\",\n      \"localized\": \"シグマチャーン\",\n      \"reload\": \"\",\n      \"hint\": \"シグマチャーン\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma max\",\n      \"localized\": \"シグマ最大\",\n      \"reload\": \"\",\n      \"hint\": \"シグマ最大\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma method\",\n      \"localized\": \"シグマメソッド\",\n      \"reload\": \"\",\n      \"hint\": \"シグマメソッド\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma min\",\n      \"localized\": \"シグマ最小\",\n      \"reload\": \"\",\n      \"hint\": \"シグマ最小\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma noise\",\n      \"localized\": \"シグマノイズ\",\n      \"reload\": \"\",\n      \"hint\": \"シグマノイズ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma tmin\",\n      \"localized\": \"シグマtmin\",\n      \"reload\": \"\",\n      \"hint\": \"シグマtmin\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"simple merge\",\n      \"localized\": \"シンプルマージ\",\n      \"reload\": \"\",\n      \"hint\": \"シンプルマージ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"size\",\n      \"localized\": \"サイズ\",\n      \"reload\": \"\",\n      \"hint\": \"サイズ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sketch\",\n      \"localized\": \"スケッチ\",\n      \"reload\": \"\",\n      \"hint\": \"スケッチ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip generation if nan found in latents\",\n      \"localized\": \"潜在空間でNaNが見つかった場合、生成をスキップ\",\n      \"reload\": \"\",\n      \"hint\": \"潜在空間でNaNが見つかった場合、生成をスキ2ップ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip guidance layers\",\n      \"localized\": \"ガイダンスレイヤーをスキップ\",\n      \"reload\": \"\",\n      \"hint\": \"ガイダンスレイヤーをスキップ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip input frames\",\n      \"localized\": \"入力フレームをスキップ\",\n      \"reload\": \"\",\n      \"hint\": \"入力フレームをスキップ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"slider\",\n      \"localized\": \"スライダー\",\n      \"reload\": \"\",\n      \"hint\": \"スライダー\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"smooth mask\",\n      \"localized\": \"マスクを滑らかに\",\n      \"reload\": \"\",\n      \"hint\": \"マスクを滑らかに\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"solver order (where\",\n      \"localized\": \"ソルバー順序 (どこで\",\n      \"reload\": \"\",\n      \"hint\": \"ソルバー順序 (どこで\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sort order\",\n      \"localized\": \"ソート順\",\n      \"reload\": \"\",\n      \"hint\": \"ソート順\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"source subject\",\n      \"localized\": \"ソース被写体\",\n      \"reload\": \"\",\n      \"hint\": \"ソース被写体\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"space\",\n      \"localized\": \"スペース\",\n      \"reload\": \"\",\n      \"hint\": \"スペース\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"spatial frequency\",\n      \"localized\": \"空間周波数\",\n      \"reload\": \"\",\n      \"hint\": \"空間周波数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"specify model revision\",\n      \"localized\": \"モデルのリビジョンを指定\",\n      \"reload\": \"\",\n      \"hint\": \"モデルのリビジョンを指定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"specify model variant\",\n      \"localized\": \"モデルのバリアントを指定\",\n      \"reload\": \"\",\n      \"hint\": \"モデルのバリアントを指定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"split attention\",\n      \"localized\": \"分割アテンション\",\n      \"reload\": \"\",\n      \"hint\": \"分割アテンション\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"stable-fast\",\n      \"localized\": \"Stable-Fast\",\n      \"reload\": \"\",\n      \"hint\": \"Stable-Fast\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"standard\",\n      \"localized\": \"標準\",\n      \"reload\": \"\",\n      \"hint\": \"標準\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"start\",\n      \"localized\": \"開始\",\n      \"reload\": \"\",\n      \"hint\": \"開始\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"start profiling\",\n      \"localized\": \"プロファイリングを開始\",\n      \"reload\": \"\",\n      \"hint\": \"プロファイリングを開始\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"state\",\n      \"localized\": \"状態\",\n      \"reload\": \"\",\n      \"hint\": \"状態\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"stride\",\n      \"localized\": \"ストライド\",\n      \"reload\": \"\",\n      \"hint\": \"ストライド\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"structure\",\n      \"localized\": \"構造\",\n      \"reload\": \"\",\n      \"hint\": \"構造\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"style fidelity\",\n      \"localized\": \"スタイル忠実度\",\n      \"reload\": \"\",\n      \"hint\": \"スタイル忠実度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"subject\",\n      \"localized\": \"被写体\",\n      \"reload\": \"\",\n      \"hint\": \"被写体\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"submit results\",\n      \"localized\": \"結果を送信\",\n      \"reload\": \"\",\n      \"hint\": \"結果を送信\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"submodules\",\n      \"localized\": \"サブモジュール\",\n      \"reload\": \"\",\n      \"hint\": \"サブモジュール\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap x/y\",\n      \"localized\": \"X/Yを入れ替え\",\n      \"reload\": \"\",\n      \"hint\": \"X/Yを入れ替え\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap x/z\",\n      \"localized\": \"X/Zを入れ替え\",\n      \"reload\": \"\",\n      \"hint\": \"X/Zを入れ替え\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap y/z\",\n      \"localized\": \"Y/Zを入れ替え\",\n      \"reload\": \"\",\n      \"hint\": \"Y/Zを入れ替え\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i adapter\",\n      \"localized\": \"T2Iアダプター\",\n      \"reload\": \"\",\n      \"hint\": \"T2Iアダプター\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i strength\",\n      \"localized\": \"T2I強度\",\n      \"reload\": \"\",\n      \"hint\": \"T2I強度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 1\",\n      \"localized\": \"T2Iアダプターユニット1\",\n      \"reload\": \"\",\n      \"hint\": \"T2Iアダプターユニット1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 2\",\n      \"localized\": \"T2Iアダプターユニット2\",\n      \"reload\": \"\",\n      \"hint\": \"T2Iアダプターユニット2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 3\",\n      \"localized\": \"T2Iアダプターユニット3\",\n      \"reload\": \"\",\n      \"hint\": \"T2Iアダプターユニット3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 4\",\n      \"localized\": \"T2Iアダプターユニット4\",\n      \"reload\": \"\",\n      \"hint\": \"T2Iアダプターユニット4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd\",\n      \"localized\": \"タエスド\",\n      \"reload\": \"\",\n      \"hint\": \"タエスド\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd decode layers\",\n      \"localized\": \"タエスド デコード層\",\n      \"reload\": \"\",\n      \"hint\": \"タエスド デコード層\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd variant\",\n      \"localized\": \"タエスド バリアント\",\n      \"reload\": \"\",\n      \"hint\": \"タエスド バリアント\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"target subject\",\n      \"localized\": \"ターゲット被写体\",\n      \"reload\": \"\",\n      \"hint\": \"ターゲット被写体\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tcd\",\n      \"localized\": \"TCD\",\n      \"reload\": \"\",\n      \"hint\": \"TCD\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tdd\",\n      \"localized\": \"TDD\",\n      \"reload\": \"\",\n      \"hint\": \"TDD\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"te\",\n      \"localized\": \"te\",\n      \"reload\": \"\",\n      \"hint\": \"te\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"temperature\",\n      \"localized\": \"温度\",\n      \"reload\": \"\",\n      \"hint\": \"温度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"temporal frequency\",\n      \"localized\": \"時間周波数\",\n      \"reload\": \"\",\n      \"hint\": \"時間周波数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tertiary model\",\n      \"localized\": \"第三モデル\",\n      \"reload\": \"\",\n      \"hint\": \"第三モデル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text encoder cache size\",\n      \"localized\": \"テキストエンコーダキャッシュサイズ\",\n      \"reload\": \"\",\n      \"hint\": \"テキストエンコーダキャッシュサイズ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text encoder model\",\n      \"localized\": \"テキストエンコーダモデル\",\n      \"reload\": \"\",\n      \"hint\": \"テキストエンコーダモデル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text inputs\",\n      \"localized\": \"テキスト入力\",\n      \"reload\": \"\",\n      \"hint\": \"テキスト入力\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"textbox\",\n      \"localized\": \"テキストボックス\",\n      \"reload\": \"\",\n      \"hint\": \"テキストボックス\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"threshold\",\n      \"localized\": \"しきい値\",\n      \"reload\": \"\",\n      \"hint\": \"しきい値\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"thresholding\",\n      \"localized\": \"しきい値処理\",\n      \"reload\": \"\",\n      \"hint\": \"しきい値処理\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile frames\",\n      \"localized\": \"タイルフレーム\",\n      \"reload\": \"\",\n      \"hint\": \"タイルフレーム\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=1\",\n      \"localized\": \"タイルプロンプト: x=1 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"タイルプロンプト: x=1 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=2\",\n      \"localized\": \"タイルプロンプト: x=1 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"タイルプロンプト: x=1 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=3\",\n      \"localized\": \"タイルプロンプト: x=1 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"タイルプロンプト: x=1 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=4\",\n      \"localized\": \"タイルプロンプト: x=1 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"タイルプロンプト: x=1 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=1\",\n      \"localized\": \"タイルプロンプト: x=2 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"タイルプロンプト: x=2 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=2\",\n      \"localized\": \"タイルプロンプト: x=2 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"タイルプロンプト: x=2 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=3\",\n      \"localized\": \"タイルプロンプト: x=2 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"タイルプロンプト: x=2 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=4\",\n      \"localized\": \"タイルプロンプト: x=2 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"タイルプロンプト: x=2 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=1\",\n      \"localized\": \"タイルプロンプト: x=3 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"タイルプロンプト: x=3 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=2\",\n      \"localized\": \"タイルプロンプト: x=3 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"タイルプロンプト: x=3 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=3\",\n      \"localized\": \"タイルプロンプト: x=3 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"タイルプロンプト: x=3 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=4\",\n      \"localized\": \"タイルプロンプト: x=3 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"タイルプロンプト: x=3 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=1\",\n      \"localized\": \"タイルプロンプト: x=4 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"タイルプロンプト: x=4 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=2\",\n      \"localized\": \"タイルプロンプト: x=4 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"タイルプロンプト: x=4 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=3\",\n      \"localized\": \"タイルプロンプト: x=4 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"タイルプロンプト: x=4 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=4\",\n      \"localized\": \"タイルプロンプト: x=4 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"タイルプロンプト: x=4 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tiling options\",\n      \"localized\": \"タイリングオプション\",\n      \"reload\": \"\",\n      \"hint\": \"タイリングオプション\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time embedding mix\",\n      \"localized\": \"時間埋め込みミックス\",\n      \"reload\": \"\",\n      \"hint\": \"時間埋め込みミックス\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time_quadratic\",\n      \"localized\": \"時間_二次\",\n      \"reload\": \"\",\n      \"hint\": \"時間_二次\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time_uniform\",\n      \"localized\": \"時間_均一\",\n      \"reload\": \"\",\n      \"hint\": \"時間_均一\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep\",\n      \"localized\": \"タイムステップ\",\n      \"reload\": \"\",\n      \"hint\": \"タイムステップ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep skip end\",\n      \"localized\": \"タイムステップスキップ終了\",\n      \"reload\": \"\",\n      \"hint\": \"タイムステップスキップ終了\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep skip start\",\n      \"localized\": \"タイムステップスキップ開始\",\n      \"reload\": \"\",\n      \"hint\": \"タイムステップスキップ開始\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep spacing\",\n      \"localized\": \"タイムステップ間隔\",\n      \"reload\": \"\",\n      \"hint\": \"タイムステップ間隔\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps\",\n      \"localized\": \"タイムステップ数\",\n      \"reload\": \"\",\n      \"hint\": \"タイムステップ数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps override\",\n      \"localized\": \"タイムステップ数上書き\",\n      \"reload\": \"\",\n      \"hint\": \"タイムステップ数上書き\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps presets\",\n      \"localized\": \"タイムステップ数プリセット\",\n      \"reload\": \"\",\n      \"hint\": \"タイムステップ数プリセット\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps range\",\n      \"localized\": \"タイムステップ数範囲\",\n      \"reload\": \"\",\n      \"hint\": \"タイムステップ数範囲\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tiny\",\n      \"localized\": \"小\",\n      \"reload\": \"\",\n      \"hint\": \"小\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"todo\",\n      \"localized\": \"TODO\",\n      \"reload\": \"\",\n      \"hint\": \"TODO\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tome\",\n      \"localized\": \"トーム\",\n      \"reload\": \"\",\n      \"hint\": \"トーム\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tool\",\n      \"localized\": \"ツール\",\n      \"reload\": \"\",\n      \"hint\": \"ツール\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"top-k\",\n      \"localized\": \"Top-K\",\n      \"reload\": \"\",\n      \"hint\": \"Top-K\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"top-p\",\n      \"localized\": \"Top-P\",\n      \"reload\": \"\",\n      \"hint\": \"Top-P\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"torch\",\n      \"localized\": \"トーチ\",\n      \"reload\": \"\",\n      \"hint\": \"トーチ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"transformer\",\n      \"localized\": \"トランスフォーマー\",\n      \"reload\": \"\",\n      \"hint\": \"トランスフォーマー\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"trigger word\",\n      \"localized\": \"トリガーワード\",\n      \"reload\": \"\",\n      \"hint\": \"トリガーワード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"true\",\n      \"localized\": \"有効\",\n      \"reload\": \"\",\n      \"hint\": \"有効\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tunable ops limit\",\n      \"localized\": \"調整可能操作制限\",\n      \"reload\": \"\",\n      \"hint\": \"調整可能操作制限\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ufogen\",\n      \"localized\": \"ユーフォージェン\",\n      \"reload\": \"\",\n      \"hint\": \"ユーフォージェン\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui card size (px)\",\n      \"localized\": \"UIカードサイズ (px)\",\n      \"reload\": \"\",\n      \"hint\": \"UIカードサイズ (px)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui fetch network info on mouse-over\",\n      \"localized\": \"マウスオーバーでネットワーク情報を取得\",\n      \"reload\": \"\",\n      \"hint\": \"マウスオーバーでネットワーク情報を取得\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui height (%)\",\n      \"localized\": \"UI高さ (%)\",\n      \"reload\": \"\",\n      \"hint\": \"UI高さ (%)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui locale\",\n      \"localized\": \"UIロケール\",\n      \"reload\": \"\",\n      \"hint\": \"UIロケール\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui request timeout\",\n      \"localized\": \"UIリクエストタイムアウト\",\n      \"reload\": \"\",\n      \"hint\": \"UIリクエストタイムアウト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui show on startup\",\n      \"localized\": \"起動時にUIを表示\",\n      \"reload\": \"\",\n      \"hint\": \"起動時にUIを表示\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui sidebar width (%)\",\n      \"localized\": \"UIサイドバー幅 (%)\",\n      \"reload\": \"\",\n      \"hint\": \"UIサイドバー幅 (%)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui theme\",\n      \"localized\": \"UIテーマ\",\n      \"reload\": \"\",\n      \"hint\": \"UIテーマ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet\",\n      \"localized\": \"U-Net\",\n      \"reload\": \"\",\n      \"hint\": \"U-Net\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet depth\",\n      \"localized\": \"U-Net深度\",\n      \"reload\": \"\",\n      \"hint\": \"U-Net深度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet enabled\",\n      \"localized\": \"U-Net有効\",\n      \"reload\": \"\",\n      \"hint\": \"U-Net有効\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet max tile size\",\n      \"localized\": \"U-Net最大タイルサイズ\",\n      \"reload\": \"\",\n      \"hint\": \"U-Net最大タイルサイズ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet min tile size\",\n      \"localized\": \"U-Net最小タイルサイズ\",\n      \"reload\": \"\",\n      \"hint\": \"U-Net最小タイルサイズ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet model\",\n      \"localized\": \"U-Netモデル\",\n      \"reload\": \"\",\n      \"hint\": \"U-Netモデル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet swap size\",\n      \"localized\": \"U-Netスワップサイズ\",\n      \"reload\": \"\",\n      \"hint\": \"U-Netスワップサイズ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"uniform\",\n      \"localized\": \"均一\",\n      \"reload\": \"\",\n      \"hint\": \"均一\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"units\",\n      \"localized\": \"単位\",\n      \"reload\": \"\",\n      \"hint\": \"単位\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unload current model from vram\",\n      \"localized\": \"VRAMから現在のモデルをアンロード\",\n      \"reload\": \"\",\n      \"hint\": \"VRAMから現在のモデルをアンロード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unload upscaler after processing\",\n      \"localized\": \"処理後にアップスケーラーをアンロード\",\n      \"reload\": \"\",\n      \"hint\": \"処理後にアップスケーラーをアンロード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unset\",\n      \"localized\": \"未設定\",\n      \"reload\": \"\",\n      \"hint\": \"未設定\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"up\",\n      \"localized\": \"up\",\n      \"reload\": \"\",\n      \"hint\": \"up\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"upcast attention layer\",\n      \"localized\": \"アップキャストアテンション層\",\n      \"reload\": \"\",\n      \"hint\": \"アップキャストアテンション層\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"update\",\n      \"localized\": \"更新\",\n      \"reload\": \"\",\n      \"hint\": \"更新\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"upload\",\n      \"localized\": \"アップロード\",\n      \"reload\": \"\",\n      \"hint\": \"アップロード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use brownian noise\",\n      \"localized\": \"ブラウンノイズを使用\",\n      \"reload\": \"\",\n      \"hint\": \"ブラウンノイズを使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use cached model config when available\",\n      \"localized\": \"利用可能な場合はキャッシュされたモデル設定を使用\",\n      \"reload\": \"\",\n      \"hint\": \"利用可能な場合はキャッシュされたモデル設定を使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use defaults\",\n      \"localized\": \"デフォルトを使用\",\n      \"reload\": \"\",\n      \"hint\": \"デフォルトを使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use dynamic thresholding\",\n      \"localized\": \"動的しきい値処理を使用\",\n      \"reload\": \"\",\n      \"hint\": \"動的しきい値処理を使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use fixed width thumbnails\",\n      \"localized\": \"固定幅のサムネイルを使用\",\n      \"reload\": \"\",\n      \"hint\": \"固定幅のサムネイルを使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use image gallery cache\",\n      \"localized\": \"画像ギャラリーキャッシュを使用\",\n      \"reload\": \"\",\n      \"hint\": \"画像ギャラリーキャッシュを使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use karras sigmas\",\n      \"localized\": \"Karrasシグマを使用\",\n      \"reload\": \"\",\n      \"hint\": \"Karrasシグマを使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use line break as prompt segment marker\",\n      \"localized\": \"改行をプロンプトセグメントマーカーとして使用\",\n      \"reload\": \"\",\n      \"hint\": \"改行をプロンプトセグメントマーカーとして使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use model ema weights when possible\",\n      \"localized\": \"可能な場合はモデルのEMAウェイトを使用\",\n      \"reload\": \"\",\n      \"hint\": \"可能な場合はモデルのEMAウェイトを使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use quantization\",\n      \"localized\": \"量子化を使用\",\n      \"reload\": \"\",\n      \"hint\": \"量子化を使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use random seeds\",\n      \"localized\": \"ランダムシードを使用\",\n      \"reload\": \"\",\n      \"hint\": \"ランダムシードを使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use reference values when available\",\n      \"localized\": \"利用可能な場合は参照値を使用\",\n      \"reload\": \"\",\n      \"hint\": \"利用可能な場合は参照値を使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use same seed\",\n      \"localized\": \"同じシードを使用\",\n      \"reload\": \"\",\n      \"hint\": \"同じシードを使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use sample\",\n      \"localized\": \"サンプルを使用\",\n      \"reload\": \"\",\n      \"hint\": \"サンプルを使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use separate base dict\",\n      \"localized\": \"個別のベース辞書を使用\",\n      \"reload\": \"\",\n      \"hint\": \"個別のベース辞書を使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use simplified solvers in final steps\",\n      \"localized\": \"最終ステップで単純化されたソルバーを使用\",\n      \"reload\": \"\",\n      \"hint\": \"最終ステップで単純化されたソルバーを使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use text inputs\",\n      \"localized\": \"テキスト入力を使用\",\n      \"reload\": \"\",\n      \"hint\": \"テキスト入力を使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"user\",\n      \"localized\": \"ユーザー\",\n      \"reload\": \"\",\n      \"hint\": \"ユーザー\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"username\",\n      \"localized\": \"ユーザー名\",\n      \"reload\": \"\",\n      \"hint\": \"ユーザー名\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"v_prediction\",\n      \"localized\": \"v_prediction\",\n      \"reload\": \"\",\n      \"hint\": \"v_prediction\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae enabled\",\n      \"localized\": \"VAE有効\",\n      \"reload\": \"\",\n      \"hint\": \"VAE有効\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae sliced encode\",\n      \"localized\": \"VAEスライスエンコード\",\n      \"reload\": \"\",\n      \"hint\": \"VAEスライスエンコード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae swap size\",\n      \"localized\": \"VAEスワップサイズ\",\n      \"reload\": \"\",\n      \"hint\": \"VAEスワップサイズ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae tile overlap\",\n      \"localized\": \"VAEタイルオーバーラップ\",\n      \"reload\": \"\",\n      \"hint\": \"VAEタイルオーバーラップ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae tile size\",\n      \"localized\": \"VAEタイルサイズ\",\n      \"reload\": \"\",\n      \"hint\": \"VAEタイルサイズ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vary_coeff\",\n      \"localized\": \"vary_coeff\",\n      \"reload\": \"\",\n      \"hint\": \"vary_coeff\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vdm solver\",\n      \"localized\": \"VDMソルバー\",\n      \"reload\": \"\",\n      \"hint\": \"VDMソルバー\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"version\",\n      \"localized\": \"バージョン\",\n      \"reload\": \"\",\n      \"hint\": \"バージョン\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vgen params\",\n      \"localized\": \"vgenパラメータ\",\n      \"reload\": \"\",\n      \"hint\": \"vgenパラメータ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vibrance\",\n      \"localized\": \"鮮やかさ\",\n      \"reload\": \"\",\n      \"hint\": \"鮮やかさ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"video file\",\n      \"localized\": \"動画ファイル\",\n      \"reload\": \"\",\n      \"hint\": \"動画ファイル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"video type\",\n      \"localized\": \"動画タイプ\",\n      \"reload\": \"\",\n      \"hint\": \"動画タイプ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm\",\n      \"localized\": \"vlm\",\n      \"reload\": \"\",\n      \"hint\": \"vlm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm model\",\n      \"localized\": \"vlmモデル\",\n      \"reload\": \"\",\n      \"hint\": \"vlmモデル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: default model\",\n      \"localized\": \"vlm: デフォルトモデル\",\n      \"reload\": \"\",\n      \"hint\": \"vlm: デフォルトモデル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: default prompt\",\n      \"localized\": \"vlm: デフォルトプロンプト\",\n      \"reload\": \"\",\n      \"hint\": \"vlm: デフォルトプロンプト\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: max length\",\n      \"localized\": \"vlm: 最大長\",\n      \"reload\": \"\",\n      \"hint\": \"vlm: 最大長\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: num beams\",\n      \"localized\": \"vlm: ビーム数\",\n      \"reload\": \"\",\n      \"hint\": \"vlm: ビーム数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: top-k\",\n      \"localized\": \"vlm: top-k\",\n      \"reload\": \"\",\n      \"hint\": \"vlm: top-k\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: top-p\",\n      \"localized\": \"vlm: top-p\",\n      \"reload\": \"\",\n      \"hint\": \"vlm: top-p\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: use sample method\",\n      \"localized\": \"vlm: サンプル方式を使用\",\n      \"reload\": \"\",\n      \"hint\": \"vlm: サンプル方式を使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"warmth\",\n      \"localized\": \"暖かさ\",\n      \"reload\": \"\",\n      \"hint\": \"暖かさ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"webp lossless compression\",\n      \"localized\": \"WebPロスレス圧縮\",\n      \"reload\": \"\",\n      \"hint\": \"WebPロスレス圧縮\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"weight\",\n      \"localized\": \"重み\",\n      \"reload\": \"\",\n      \"hint\": \"重み\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width  after\",\n      \"localized\": \"変更後の幅\",\n      \"reload\": \"\",\n      \"hint\": \"変更後の幅\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width  before\",\n      \"localized\": \"変更前の幅\",\n      \"reload\": \"\",\n      \"hint\": \"変更前の幅\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width  mask\",\n      \"localized\": \"幅マスク\",\n      \"reload\": \"\",\n      \"hint\": \"幅マスク\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"wiki\",\n      \"localized\": \"Wiki\",\n      \"reload\": \"\",\n      \"hint\": \"Wiki\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"wildcards\",\n      \"localized\": \"ワイルドカード\",\n      \"reload\": \"\",\n      \"hint\": \"ワイルドカード\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x components\",\n      \"localized\": \"X成分\",\n      \"reload\": \"\",\n      \"hint\": \"X成分\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x overlap\",\n      \"localized\": \"X方向のオーバーラップ\",\n      \"reload\": \"\",\n      \"hint\": \"X方向のオーバーラップ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x type\",\n      \"localized\": \"Xタイプ\",\n      \"reload\": \"\",\n      \"hint\": \"Xタイプ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x-axis tile overlap\",\n      \"localized\": \"X軸タイルオーバーラップ\",\n      \"reload\": \"\",\n      \"hint\": \"X軸タイルオーバーラップ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x-axis tiles\",\n      \"localized\": \"X軸タイル\",\n      \"reload\": \"\",\n      \"hint\": \"X軸タイル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xhinker\",\n      \"localized\": \"xhinker\",\n      \"reload\": \"\",\n      \"hint\": \"xhinker\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xs\",\n      \"localized\": \"xs\",\n      \"reload\": \"\",\n      \"hint\": \"xs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y components\",\n      \"localized\": \"Y成分\",\n      \"reload\": \"\",\n      \"hint\": \"Y成分\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y overlap\",\n      \"localized\": \"Y方向のオーバーラップ\",\n      \"reload\": \"\",\n      \"hint\": \"Y方向のオーバーラップ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y type\",\n      \"localized\": \"Yタイプ\",\n      \"reload\": \"\",\n      \"hint\": \"Yタイプ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y-axis tile overlap\",\n      \"localized\": \"Y軸タイルオーバーラップ\",\n      \"reload\": \"\",\n      \"hint\": \"Y軸タイルオーバーラップ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y-axis tiles\",\n      \"localized\": \"Y軸タイル\",\n      \"reload\": \"\",\n      \"hint\": \"Y軸タイル\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"z type\",\n      \"localized\": \"Zタイプ\",\n      \"reload\": \"\",\n      \"hint\": \"Zタイプ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"zero\",\n      \"localized\": \"ゼロ\",\n      \"reload\": \"\",\n      \"hint\": \"ゼロ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"zoe depth\",\n      \"localized\": \"Zoe深度\",\n      \"reload\": \"\",\n      \"hint\": \"Zoe深度\"\n    }\n  ]\n}\n"
  },
  {
    "path": "html/locale_ko.json",
    "content": "{\n  \"icons\": [\n    {\n      \"id\": \"\",\n      \"label\": \"🎲️\",\n      \"localized\": \"🎲️\",\n      \"reload\": \"\",\n      \"hint\": \"랜덤 시드를 사용합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔄\",\n      \"localized\": \"🔄\",\n      \"reload\": \"\",\n      \"hint\": \"값 초기화\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⬆️\",\n      \"localized\": \"⬆️\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 업로드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⬅️\",\n      \"localized\": \"⬅️\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 재사용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇅\",\n      \"localized\": \"⇅\",\n      \"reload\": \"\",\n      \"hint\": \"값 교환\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇨\",\n      \"localized\": \"⇨\",\n      \"reload\": \"\",\n      \"hint\": \"수동 블록 병합 탭에 사전 설정 적용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🕮\",\n      \"localized\": \"🕮\",\n      \"reload\": \"\",\n      \"hint\": \"마지막으로 생성된 이미지의 매개변수를 스타일 템플릿으로 저장\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇕\",\n      \"localized\": \"⇕\",\n      \"reload\": \"\",\n      \"hint\": \"정렬 기준: 이름 오름차순/내림차순, 크기 가장 큼/가장 작음, 시간 최신순/오래된 순\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⟲\",\n      \"localized\": \"⟲\",\n      \"reload\": \"\",\n      \"hint\": \"새로 고침\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"✕\",\n      \"localized\": \"✕\",\n      \"reload\": \"\",\n      \"hint\": \"닫기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⊜\",\n      \"localized\": \"⊜\",\n      \"reload\": \"\",\n      \"hint\": \"채우기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"※\",\n      \"localized\": \"※\",\n      \"reload\": \"\",\n      \"hint\": \"선택 시 모델을 리파이너 모델로 로드하고, 그렇지 않으면 기본 모델로 로드합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔎︎\",\n      \"localized\": \"🔎︎\",\n      \"reload\": \"\",\n      \"hint\": \"누락된 메타데이터 및 미리보기를 위해 CivitAI 스캔\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"☲\",\n      \"localized\": \"☲\",\n      \"reload\": \"\",\n      \"hint\": \"보기 유형 변경\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⊗\",\n      \"localized\": \"⊗\",\n      \"reload\": \"\",\n      \"hint\": \"값 초기화\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"📐\",\n      \"localized\": \"📐\",\n      \"reload\": \"\",\n      \"hint\": \"측정\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔍\",\n      \"localized\": \"🔍\",\n      \"reload\": \"\",\n      \"hint\": \"검색\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🖌️\",\n      \"localized\": \"🖌️\",\n      \"reload\": \"\",\n      \"hint\": \"LaMa로 이미지에서 선택된 객체 제거\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🖼️\",\n      \"localized\": \"🖼️\",\n      \"reload\": \"\",\n      \"hint\": \"미리보기 표시\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 심문\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⁜\",\n      \"localized\": \"⁜\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 맞춤 방법 순환\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"↶\",\n      \"localized\": \"↶\",\n      \"reload\": \"\",\n      \"hint\": \"선택한 스타일을 프롬프트에 적용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"↷\",\n      \"localized\": \"↷\",\n      \"reload\": \"\",\n      \"hint\": \"현재 프롬프트를 스타일로 저장\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"이름으로 정렬, 오름차순\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"이름으로 정렬, 내림차순\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"크기로 정렬, 오름차순\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"크기로 정렬, 내림차순\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"해상도로 정렬, 오름차순\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"해상도로 정렬, 내림차순\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"시간으로 정렬, 오름차순\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"시간으로 정렬, 내림차순\"\n    }\n  ],\n  \"main\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt\",\n      \"localized\": \"프롬프트\",\n      \"reload\": \"\",\n      \"hint\": \"생성하고 싶은 이미지를 설명하세요\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Start\",\n      \"localized\": \"시작\",\n      \"reload\": \"\",\n      \"hint\": \"시작\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"End\",\n      \"localized\": \"끝\",\n      \"reload\": \"\",\n      \"hint\": \"끝\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Core\",\n      \"localized\": \"핵심\",\n      \"reload\": \"\",\n      \"hint\": \"핵심 설정\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System prompt\",\n      \"localized\": \"시스템 프롬프트\",\n      \"reload\": \"\",\n      \"hint\": \"시스템 프롬프트는 LLM의 동작을 제어합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Negative prompt\",\n      \"localized\": \"네거티브 프롬프트\",\n      \"reload\": \"\",\n      \"hint\": \"생성된 이미지에서 보고 싶지 않은 것을 설명하세요\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Text\",\n      \"localized\": \"텍스트\",\n      \"reload\": \"\",\n      \"hint\": \"텍스트로 이미지 생성\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image\",\n      \"localized\": \"이미지\",\n      \"reload\": \"\",\n      \"hint\": \"이미지로 이미지 생성\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control\",\n      \"localized\": \"제어\",\n      \"reload\": \"\",\n      \"hint\": \"완전한 안내로 이미지 생성\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process\",\n      \"localized\": \"처리\",\n      \"reload\": \"\",\n      \"hint\": \"기존 이미지 처리\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Caption\",\n      \"localized\": \"캡션\",\n      \"reload\": \"\",\n      \"hint\": \"기존 이미지를 분석하고 텍스트 설명 생성\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Interrogate\",\n      \"localized\": \"분석\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 설명을 얻기 위해 분석 실행\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models\",\n      \"localized\": \"모델\",\n      \"reload\": \"\",\n      \"hint\": \"모델을 다운로드, 변환 또는 병합하고 모델 메타데이터를 관리하세요\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Agent Scheduler\",\n      \"localized\": \"에이전트 스케줄러\",\n      \"reload\": \"\",\n      \"hint\": \"생성 요청을 대기열에 추가하고 백그라운드에서 실행하세요\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"AgentScheduler\",\n      \"localized\": \"AgentScheduler\",\n      \"reload\": \"\",\n      \"hint\": \"생성 요청을 대기열에 추가하고 백그라운드에서 실행하세요\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System\",\n      \"localized\": \"시스템\",\n      \"reload\": \"\",\n      \"hint\": \"시스템 설정 및 정보\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System Info\",\n      \"localized\": \"시스템 정보\",\n      \"reload\": \"\",\n      \"hint\": \"시스템 정보\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Settings\",\n      \"localized\": \"설정\",\n      \"reload\": \"\",\n      \"hint\": \"애플리케이션 설정\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Script\",\n      \"localized\": \"스크립트\",\n      \"reload\": \"\",\n      \"hint\": \"사용할 추가 스크립트\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Generate\",\n      \"localized\": \"생성\",\n      \"reload\": \"\",\n      \"hint\": \"처리 시작\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Generate forever\",\n      \"localized\": \"무한 생성\",\n      \"reload\": \"\",\n      \"hint\": \"처리를 시작하고 취소될 때까지 계속합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enqueue\",\n      \"localized\": \"대기열에 추가\",\n      \"reload\": \"\",\n      \"hint\": \"에이전트 스케줄러의 백그라운드 대기열에 작업을 추가합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reprocess\",\n      \"localized\": \"재처리\",\n      \"reload\": \"\",\n      \"hint\": \"다른 매개변수를 사용하여 이전 생성 재처리\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Stop\",\n      \"localized\": \"중지\",\n      \"reload\": \"\",\n      \"hint\": \"처리 중지\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Skip\",\n      \"localized\": \"건너뛰기\",\n      \"reload\": \"\",\n      \"hint\": \"현재 작업을 중지하고 처리를 계속합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Pause\",\n      \"localized\": \"일시 중지\",\n      \"reload\": \"\",\n      \"hint\": \"처리 일시 중지\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore\",\n      \"localized\": \"복원\",\n      \"reload\": \"\",\n      \"hint\": \"현재 프롬프트 또는 마지막으로 알려진 생성된 이미지에서 매개변수 복원\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Clear\",\n      \"localized\": \"지우기\",\n      \"reload\": \"\",\n      \"hint\": \"프롬프트 지우기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Networks\",\n      \"localized\": \"네트워크\",\n      \"reload\": \"\",\n      \"hint\": \"네트워크 사용자 인터페이스\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Default strength\",\n      \"localized\": \"기본 강도\",\n      \"reload\": \"\",\n      \"hint\": \"프롬프트에 Lora와 같은 추가 네트워크를 추가할 때, 이 배율을 사용합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscale\",\n      \"localized\": \"업스케일\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 업스케일\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model\",\n      \"localized\": \"모델\",\n      \"reload\": \"\",\n      \"hint\": \"기본 모델\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompts\",\n      \"localized\": \"프롬프트\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 프롬프트 및 네거티브 프롬프트\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Base\",\n      \"localized\": \"기본\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 생성을 실행하는 데 사용되는 기본 설정\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Style\",\n      \"localized\": \"스타일\",\n      \"reload\": \"\",\n      \"hint\": \"선택된 생성 매개변수에 적용될 추가 스타일\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Styles\",\n      \"localized\": \"스타일\",\n      \"reload\": \"\",\n      \"hint\": \"선택된 생성 매개변수에 적용될 추가 스타일\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Lora\",\n      \"localized\": \"Lora\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA: 저랭크 적응. 로드된 모델 위에 적용되는 미세 조정된 모델\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Embedding\",\n      \"localized\": \"임베딩\",\n      \"reload\": \"\",\n      \"hint\": \"텍스트 인버전 임베딩은 주제에 대해 학습된 임베딩 정보입니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Hypernetwork\",\n      \"localized\": \"하이퍼네트워크\",\n      \"reload\": \"\",\n      \"hint\": \"로드된 모델의 동작을 수정하는 작게 학습된 신경망\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VLM Caption\",\n      \"localized\": \"VLM Caption\",\n      \"reload\": \"\",\n      \"hint\": \"시각 언어 모델을 사용하여 이미지 분석\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CLiP Interrogate\",\n      \"localized\": \"CLiP Interrogate\",\n      \"reload\": \"\",\n      \"hint\": \"CLiP 모델을 사용하여 이미지 분석\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE\",\n      \"localized\": \"VAE\",\n      \"reload\": \"\",\n      \"hint\": \"변이형 오토인코더: 생성 끝에 이미지 디코딩을 실행하는 데 사용되는 모델\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"History\",\n      \"localized\": \"기록\",\n      \"reload\": \"\",\n      \"hint\": \"추가로 재처리할 수 있는 이전 생성 목록\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"UI disable variable aspect ratio\",\n      \"localized\": \"UI 가변 종횡비 비활성화\",\n      \"reload\": \"\",\n      \"hint\": \"비활성화하면 모든 썸네일이 정사각형 이미지로 나타납니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Build info on first access\",\n      \"localized\": \"첫 액세스 시 정보 빌드\",\n      \"reload\": \"\",\n      \"hint\": \"서버 시작 시 서버가 EN 페이지를 빌드하는 것을 방지하고 대신 요청 시 빌드합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show reference styles\",\n      \"localized\": \"참조 스타일 표시\",\n      \"reload\": \"\",\n      \"hint\": \"내장 스타일 표시 또는 숨기기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA load using Diffusers method\",\n      \"localized\": \"LoRA load using Diffusers method\",\n      \"reload\": \"\",\n      \"hint\": \"기본 SD.Next 구현 대신 diffusers 내장 LoRA 기능을 사용하는 대안 방법 (LoRA 호환성 감소 가능성 있음)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA fuse directly to model\",\n      \"localized\": \"LoRA fuse directly to model\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA를 로드할 때, 즉시 가중치를 기본 모델과 병합하고 즉시 적용하지 않습니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA memory cache\",\n      \"localized\": \"LoRA memory cache\",\n      \"reload\": \"\",\n      \"hint\": \"저장소에서 다시 로드해야 하기 전에 네트워크에 보관할 LoRA 수\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Local\",\n      \"localized\": \"로컬\",\n      \"reload\": \"\",\n      \"hint\": \"다운로드되어 사용할 준비가 된 모델\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Gallery\",\n      \"localized\": \"갤러리\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 갤러리\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reference\",\n      \"localized\": \"참조\",\n      \"reload\": \"\",\n      \"hint\": \"첫 사용 시 자동으로 다운로드할 수 있는 참조 모델 목록\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Samplers\",\n      \"localized\": \"샘플러\",\n      \"reload\": \"\",\n      \"hint\": \"샘플러/스케줄러 고급 설정\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Seed\",\n      \"localized\": \"시드\",\n      \"reload\": \"\",\n      \"hint\": \"초기 시드 및 변형\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Advanced\",\n      \"localized\": \"고급\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 생성을 실행하는 데 사용되는 고급 설정\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scripts\",\n      \"localized\": \"스크립트\",\n      \"reload\": \"\",\n      \"hint\": \"생성 프로세스 중 선택된 스크립트를 사용하여 추가 기능 활성화\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Corrections\",\n      \"localized\": \"보정\",\n      \"reload\": \"\",\n      \"hint\": \"생성 프로세스 중 이미지 색상/선명도/밝기 보정 제어\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Parameters\",\n      \"localized\": \"매개변수\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 생성 중 사용되는 기본 매개변수\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine\",\n      \"localized\": \"정제\",\n      \"reload\": \"\",\n      \"hint\": \"정제는 초기 처리가 완료된 후 추가 처리를 실행하며, 이미지를 업스케일하고 선택적으로 다시 처리하여 품질과 세부 사항을 높이는 데 사용할 수 있습니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer\",\n      \"localized\": \"디테일러\",\n      \"reload\": \"\",\n      \"hint\": \"디테일러는 감지된 객체에 대해 더 높은 해상도로 추가 생성을 실행합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize\",\n      \"localized\": \"크기 조정\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 크기 조정, 배율을 기반으로 고정 해상도를 사용할 수 있습니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch\",\n      \"localized\": \"배치\",\n      \"reload\": \"\",\n      \"hint\": \"배치 처리 설정\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoise\",\n      \"localized\": \"노이즈 제거\",\n      \"reload\": \"\",\n      \"hint\": \"노이즈 제거 설정. 노이즈 제거 값이 높을수록 생성 중 기존 이미지 콘텐츠가 더 많이 변경될 수 있습니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mask\",\n      \"localized\": \"마스크\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 마스킹 및 마스크 옵션\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Input\",\n      \"localized\": \"입력\",\n      \"reload\": \"\",\n      \"hint\": \"입력 미디어 선택\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Video\",\n      \"localized\": \"비디오\",\n      \"reload\": \"\",\n      \"hint\": \"안내를 사용하여 비디오 생성\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control elements\",\n      \"localized\": \"제어 요소\",\n      \"reload\": \"\",\n      \"hint\": \"제어 요소는 원하는 결과물로 생성을 안내할 수 있는 고급 모델입니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"IP adapter\",\n      \"localized\": \"IP adapter\",\n      \"reload\": \"\",\n      \"hint\": \"IP 어댑터 플러그인 모델을 사용하여 원하는 결과물로 생성 안내\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"IP adapters\",\n      \"localized\": \"IP adapters\",\n      \"reload\": \"\",\n      \"hint\": \"IP 어댑터는 원하는 결과물로 생성을 안내할 수 있는 플러그인 모델입니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Extensions\",\n      \"localized\": \"확장\",\n      \"reload\": \"\",\n      \"hint\": \"애플리케이션 확장\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"XYZ Grid\",\n      \"localized\": \"XYZ Grid\",\n      \"reload\": \"\",\n      \"hint\": \"XYZ 그리드는 다양한 생성 매개변수를 기반으로 이미지 그리드를 생성하는 강력한 모듈입니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Cover\",\n      \"localized\": \"커버\",\n      \"reload\": \"\",\n      \"hint\": \"전체 영역 덮기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inline\",\n      \"localized\": \"인라인\",\n      \"reload\": \"\",\n      \"hint\": \"모든 추가 요소와 인라인 (스크롤 가능)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sidebar\",\n      \"localized\": \"사이드바\",\n      \"reload\": \"\",\n      \"hint\": \"화면 오른쪽에 있는 사이드바\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD15\",\n      \"localized\": \"SD15\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Diffusion 1.5\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD21\",\n      \"localized\": \"SD21\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Diffusion 2.1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD35\",\n      \"localized\": \"SD35\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Diffusion 3.5\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SDXL\",\n      \"localized\": \"SDXL\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Diffusion XL\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SC\",\n      \"localized\": \"SC\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Cascade\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Flux\",\n      \"localized\": \"Flux\",\n      \"reload\": \"\",\n      \"hint\": \"FLUX.1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show\",\n      \"localized\": \"표시\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 위치 표시\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Save\",\n      \"localized\": \"저장\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 저장\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Delete\",\n      \"localized\": \"삭제\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 삭제\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Replace\",\n      \"localized\": \"교체\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 교체\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Text\",\n      \"localized\": \"➠ 텍스트\",\n      \"reload\": \"\",\n      \"hint\": \"이미지를 텍스트 인터페이스로 전송\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Image\",\n      \"localized\": \"➠ 이미지\",\n      \"reload\": \"\",\n      \"hint\": \"이미지를 이미지 인터페이스로 전송\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Inpaint\",\n      \"localized\": \"➠ 인페인트\",\n      \"reload\": \"\",\n      \"hint\": \"이미지를 인페인트 인터페이스로 전송\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Sketch\",\n      \"localized\": \"➠ 스케치\",\n      \"reload\": \"\",\n      \"hint\": \"이미지를 스케치 인터페이스로 전송\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Composite\",\n      \"localized\": \"➠ 합성\",\n      \"reload\": \"\",\n      \"hint\": \"이미지를 인페인트 스케치 인터페이스로 전송\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Process\",\n      \"localized\": \"➠ 처리\",\n      \"reload\": \"\",\n      \"hint\": \"이미지를 처리 인터페이스로 전송\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Control\",\n      \"localized\": \"➠ 제어\",\n      \"reload\": \"\",\n      \"hint\": \"이미지를 제어 인터페이스로 전송\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Caption\",\n      \"localized\": \"➠ 캡션\",\n      \"reload\": \"\",\n      \"hint\": \"이미지를 캡션 인터페이스로 전송\"\n    }\n  ],\n  \"generate\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Sampling method\",\n      \"localized\": \"샘플링 방식\",\n      \"reload\": \"\",\n      \"hint\": \"이미지를 생성하는 데 사용할 알고리즘\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Steps\",\n      \"localized\": \"단계\",\n      \"reload\": \"\",\n      \"hint\": \"생성된 이미지를 반복적으로 개선할 횟수; 값이 높을수록 오래 걸리고, 값이 매우 낮으면 좋지 않은 결과를 낼 수 있습니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Tiling\",\n      \"localized\": \"타일링\",\n      \"reload\": \"\",\n      \"hint\": \"타일링 가능한 이미지를 생성합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full quality\",\n      \"localized\": \"고품질\",\n      \"reload\": \"\",\n      \"hint\": \"잠재 샘플을 디코딩하기 위해 고품질 VAE를 사용합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HiDiffusion\",\n      \"localized\": \"하이디퓨전\",\n      \"reload\": \"\",\n      \"hint\": \"하이디퓨전은 표준 모델을 사용하여 중복/왜곡 없이 고해상도 이미지를 생성하고 성능을 향상시킵니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HDR Clamp\",\n      \"localized\": \"HDR 클램프\",\n      \"reload\": \"\",\n      \"hint\": \"분포 평균에서 크게 벗어나는 값을 제거하여 비논리적인 디테일 수준을 조정합니다. 이는 특히 높은 가이던스 스케일에서 생성을 향상하고, 프로세스 초기에 이상치를 식별하며, 범위(경계) 및 임계값 설정을 기반으로 수학적 조정을 적용하는 데 유용합니다. 이미지 값의 범위를 설정하고, 임계값을 조정하여 해당 범위 내로 되돌릴 값을 결정하는 것으로 생각할 수 있습니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HDR Maximize\",\n      \"localized\": \"HDR 최대화\",\n      \"reload\": \"\",\n      \"hint\": \"최대 텐서 값을 지정된 범위에 4를 곱한 값으로 나누어 '정규화 계수'를 계산합니다. 이 계수는 주어진 경계 내에서 채널을 이동시키는 데 사용되어 후속 처리를 위한 최대 동적 범위를 보장합니다. 목표는 Photoshop과 같은 외부 애플리케이션, 특히 레벨, 대비 및 밝기 조정을 위해 동적 범위를 최적화하는 것입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enable refine pass\",\n      \"localized\": \"리파인 패스 활성화\",\n      \"reload\": \"\",\n      \"hint\": \"이미지-투-이미지와 유사한 프로세스를 사용하여 최종 이미지를 업스케일하고/하거나 세부 정보를 추가합니다. 선택적으로 리파이너 모델을 사용하여 이미지 세부 정보를 향상시킬 수 있습니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enable detailer pass\",\n      \"localized\": \"디테일러 패스 활성화\",\n      \"reload\": \"\",\n      \"hint\": \"얼굴과 같은 대상 객체를 감지하고 더 높은 해상도로 재처리합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoising strength\",\n      \"localized\": \"노이즈 제거 강도\",\n      \"reload\": \"\",\n      \"hint\": \"알고리즘이 이미지 콘텐츠를 얼마나 존중해야 하는지를 결정합니다. 0에서는 아무것도 변경되지 않으며, 1에서는 관련 없는 이미지가 생성됩니다. 1.0 미만의 값에서는 샘플링 단계 슬라이더가 지정하는 것보다 적은 단계로 처리됩니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoise start\",\n      \"localized\": \"노이즈 제거 시작\",\n      \"reload\": \"\",\n      \"hint\": \"기본 모델이 얼마나 일찍 완료되어야 하고 리파이너가 언제 시작해야 하는지를 명시하여 노이즈 제거 강도를 재정의합니다. 리파이너 사용에만 적용됩니다. 0 또는 1로 설정된 경우 노이즈 제거 강도가 사용됩니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Hires steps\",\n      \"localized\": \"고해상도 단계\",\n      \"reload\": \"\",\n      \"hint\": \"업스케일된 그림의 샘플링 단계 수. 0이면 원본과 동일하게 사용됩니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Strength\",\n      \"localized\": \"강도\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 작업 중 노이즈 제거 강도는 생성 중에 원본 이미지가 얼마나 변경될 수 있는지를 제어합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler\",\n      \"localized\": \"업스케일러\",\n      \"reload\": \"\",\n      \"hint\": \"업스케일링 프로세스에 사용할 사전 훈련된 모델.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Force Hires\",\n      \"localized\": \"고해상도 강제\",\n      \"reload\": \"\",\n      \"hint\": \"잠재 업스케일이 선택되면 고해상도(Hires)가 자동으로 실행되지만, 비잠재 업스케일러를 사용할 때는 건너뛰어집니다. 비잠재 업스케일러로 고해상도를 실행하려면 고해상도 강제를 활성화하십시오.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize width\",\n      \"localized\": \"너비 조절\",\n      \"reload\": \"\",\n      \"hint\": \"이미지를 이 너비로 조절합니다. 0이면 근처 두 슬라이더 중 하나에서 너비가 추론됩니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize height\",\n      \"localized\": \"높이 조절\",\n      \"reload\": \"\",\n      \"hint\": \"이미지를 이 높이로 조절합니다. 0이면 근처 두 슬라이더 중 하나에서 높이가 추론됩니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine sampler\",\n      \"localized\": \"리파인 샘플러\",\n      \"reload\": \"\",\n      \"hint\": \"특정 작업에 기본 샘플러가 지원되지 않는 경우 특정 샘플러를 폴백 샘플러로 사용합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner start\",\n      \"localized\": \"리파이너 시작\",\n      \"reload\": \"\",\n      \"hint\": \"기본 모델이 이만큼 완료되면 리파이너 패스가 시작됩니다 (전체 기본 모델 실행 후 실행하려면 0보다 크고 1보다 작게 설정).\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner steps\",\n      \"localized\": \"리파이너 단계\",\n      \"reload\": \"\",\n      \"hint\": \"리파이너 패스에 사용할 단계 수.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine guidance\",\n      \"localized\": \"리파인 가이던스\",\n      \"reload\": \"\",\n      \"hint\": \"리파이너 패스에 사용되는 CFG 스케일.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Attention guidance\",\n      \"localized\": \"어텐션 가이던스\",\n      \"reload\": \"\",\n      \"hint\": \"PAG(Perturbed-Attention Guidance)와 함께 사용되는 CFG 스케일.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adaptive scaling\",\n      \"localized\": \"적응형 스케일링\",\n      \"reload\": \"\",\n      \"hint\": \"어텐션 가이던스 스케일을 위한 적응형 수정자.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Rescale guidance\",\n      \"localized\": \"가이던스 재조정\",\n      \"reload\": \"\",\n      \"hint\": \"과노출된 이미지를 방지하기 위해 CFG에서 생성된 노이즈를 재조정합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine Prompt\",\n      \"localized\": \"리파인 프롬프트\",\n      \"reload\": \"\",\n      \"hint\": \"기본 모델의 두 번째 인코더(존재하는 경우)와 리파이너 패스(활성화된 경우) 모두에 사용되는 프롬프트.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine negative prompt\",\n      \"localized\": \"리파인 네거티브 프롬프트\",\n      \"reload\": \"\",\n      \"hint\": \"기본 모델의 두 번째 인코더(존재하는 경우)와 리파이너 패스(활성화된 경우) 모두에 사용되는 네거티브 프롬프트.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Width\",\n      \"localized\": \"너비\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 너비\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Height\",\n      \"localized\": \"높이\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 높이\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch count\",\n      \"localized\": \"배치 수\",\n      \"reload\": \"\",\n      \"hint\": \"생성할 이미지 배치 수 (생성 성능 또는 VRAM 사용량에 영향 없음)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch size\",\n      \"localized\": \"배치 크기\",\n      \"reload\": \"\",\n      \"hint\": \"단일 배치에서 생성할 이미지 수 (높은 VRAM 사용량을 대가로 생성 성능 향상)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance scale\",\n      \"localized\": \"가이던스 스케일\",\n      \"reload\": \"\",\n      \"hint\": \"Classifier Free Guidance 스케일: 이미지가 프롬프트에 얼마나 강력하게 일치해야 하는지. 낮은 값은 더 창의적인 결과를 생성하고, 높은 값은 프롬프트를 더 엄격하게 따르도록 합니다; 권장 값은 5-10 사이입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Guidance End\",\n      \"localized\": \"가이던스 종료\",\n      \"reload\": \"\",\n      \"hint\": \"CFG 및 PAG의 효과를 조기에 종료합니다: 1은 정상적으로 작동하며, 0.5는 단계의 50%에서 가이던스를 중지합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Initial seed\",\n      \"localized\": \"초기 시드\",\n      \"reload\": \"\",\n      \"hint\": \"난수 생성기의 출력을 결정하는 값 - 다른 이미지와 동일한 매개변수 및 시드로 이미지를 생성하면 동일한 결과를 얻을 수 있습니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variation\",\n      \"localized\": \"변형\",\n      \"reload\": \"\",\n      \"hint\": \"주 시드와 혼합될 두 번째 시드.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variation strength\",\n      \"localized\": \"변형 강도\",\n      \"reload\": \"\",\n      \"hint\": \"얼마나 강력한 변형을 생성할지. 0에서는 효과가 없습니다. 1에서는 변형 시드를 사용하여 완전한 그림을 얻습니다 (조상 샘플러의 경우 그냥 뭔가를 얻게 됨).\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize seed from width\",\n      \"localized\": \"너비에서 시드 크기 조절\",\n      \"reload\": \"\",\n      \"hint\": \"지정된 해상도에서 동일한 시드로 생성되었을 그림과 유사한 그림을 생성하려고 시도합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize seed from height\",\n      \"localized\": \"높이에서 시드 크기 조절\",\n      \"reload\": \"\",\n      \"hint\": \"지정된 해상도에서 동일한 시드로 생성되었을 그림과 유사한 그림을 생성하려고 시도합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Fixed\",\n      \"localized\": \"고정\",\n      \"reload\": \"\",\n      \"hint\": \"이미지를 대상 해상도로 조절합니다. 높이와 너비가 일치하지 않으면 잘못된 가로 세로 비율이 됩니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale\",\n      \"localized\": \"스케일\",\n      \"reload\": \"\",\n      \"hint\": \"이미지를 대상 스케일로 조절합니다. 고정 너비/높이 조절이 설정된 경우 이 옵션은 무시됩니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop\",\n      \"localized\": \"자르기\",\n      \"reload\": \"\",\n      \"hint\": \"대상 해상도 전체가 이미지로 채워지도록 이미지를 조절합니다. 튀어나온 부분은 잘라냅니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Fill\",\n      \"localized\": \"채우기\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 전체가 대상 해상도 안에 들어가도록 이미지를 조절합니다. 빈 공간은 이미지 색상으로 채웁니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mask blur\",\n      \"localized\": \"마스크 블러\",\n      \"reload\": \"\",\n      \"hint\": \"처리 전 마스크를 얼마나 흐리게 할지 (픽셀 단위).\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Latent noise\",\n      \"localized\": \"잠재 노이즈\",\n      \"reload\": \"\",\n      \"hint\": \"잠재 공간 노이즈로 채웁니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Latent nothing\",\n      \"localized\": \"잠재 공간 0\",\n      \"reload\": \"\",\n      \"hint\": \"잠재 공간의 0으로 채웁니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adapters\",\n      \"localized\": \"어댑터\",\n      \"reload\": \"\",\n      \"hint\": \"IP 어댑터 관련 설정\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inputs\",\n      \"localized\": \"입력\",\n      \"reload\": \"\",\n      \"hint\": \"입력 이미지 관련 설정\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control input type\",\n      \"localized\": \"제어 입력 유형\",\n      \"reload\": \"\",\n      \"hint\": \"제어 프로세스에 사용될 입력 이미지를 선택합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Video format\",\n      \"localized\": \"비디오 형식\",\n      \"reload\": \"\",\n      \"hint\": \"출력 비디오의 형식 및 코덱.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Size & Batch\",\n      \"localized\": \"크기 및 배치\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 크기 및 배치.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sigma adjust\",\n      \"localized\": \"시그마 조절\",\n      \"reload\": \"\",\n      \"hint\": \"샘플러 시그마 값을 조절합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adjust start\",\n      \"localized\": \"조절 시작\",\n      \"reload\": \"\",\n      \"hint\": \"시그마 조절이 발생하는 시작 단계.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adjust end\",\n      \"localized\": \"조절 종료\",\n      \"reload\": \"\",\n      \"hint\": \"시그마 조절이 발생하는 종료 단계.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Options\",\n      \"localized\": \"옵션\",\n      \"reload\": \"\",\n      \"hint\": \"옵션\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ControlNet\",\n      \"localized\": \"컨트롤넷\",\n      \"reload\": \"\",\n      \"hint\": \"컨트롤넷은 고급 가이던스 모델입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Renoise\",\n      \"localized\": \"리노이즈\",\n      \"reload\": \"\",\n      \"hint\": \"디테일링 중 추가 노이즈를 적용합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Renoise end\",\n      \"localized\": \"리노이즈 종료\",\n      \"reload\": \"\",\n      \"hint\": \"리노이즈가 적용되는 최종 단계.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Merge detailers\",\n      \"localized\": \"디테일러 병합\",\n      \"reload\": \"\",\n      \"hint\": \"디테일링 프로세스를 실행하기 전에 여러 디테일러의 결과를 단일 마스크로 병합합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpaint mode\",\n      \"localized\": \"인페인트 모드\",\n      \"reload\": \"\",\n      \"hint\": \"인페인트 모드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpaint area\",\n      \"localized\": \"인페인트 영역\",\n      \"reload\": \"\",\n      \"hint\": \"인페인트 영역\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Texture tiling\",\n      \"localized\": \"텍스처 타일링\",\n      \"reload\": \"\",\n      \"hint\": \"생성된 이미지에 심리스 타일링을 적용하여 텍스처로 사용할 수 있도록 합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Override\",\n      \"localized\": \"재정의\",\n      \"reload\": \"\",\n      \"hint\": \"서버 동작을 변경할 수 있으며 일반적으로 가져온 이미지 메타데이터에서 적용되는 설정을 재정의합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE type\",\n      \"localized\": \"VAE 유형\",\n      \"reload\": \"\",\n      \"hint\": \"전체 VAE를 실행할지, 품질 저하 VAE를 실행할지 또는 원격 VAE 서비스를 사용할지 선택합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Guess Mode\",\n      \"localized\": \"추측 모드\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet에 프롬프트를 제공할 필요성을 제거합니다. 입력 제어 맵의 내용에 기반하여 ControlNet 인코더가 '최고의 추측'을 하도록 강제합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control Only\",\n      \"localized\": \"제어 전용\",\n      \"reload\": \"\",\n      \"hint\": \"이것은 아래의 제어 입력을 다양한 옵션 중 어떤 것이든 기반으로 하는 ControlNet 또는 IP 어댑터 유형 작업의 소스로만 사용합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Init Image Same As Control\",\n      \"localized\": \"초기 이미지 제어와 동일\",\n      \"reload\": \"\",\n      \"hint\": \"제어 입력 창에 배치된 모든 이미지를 img2img 유형 작업의 소스로도 처리합니다. 예를 들어 수정할 이미지로 사용할 수 있습니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Separate Init Image\",\n      \"localized\": \"초기 이미지 분리\",\n      \"reload\": \"\",\n      \"hint\": \"제어 입력 옆에 '초기 입력'이라는 레이블이 붙은 추가 창을 생성하여 제어 작업과 초기 소스 모두에 별도의 이미지를 사용할 수 있습니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Override settings\",\n      \"localized\": \"설정 재정의\",\n      \"reload\": \"\",\n      \"hint\": \"생성 매개변수가 시스템 설정과 다를 경우, 해당 설정으로 채워진 재정의 설정을 사용하여 이 워크플로우에 대한 시스템 구성을 재정의합니다.\"\n    }\n  ],\n  \"other\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Install\",\n      \"localized\": \"설치\",\n      \"reload\": \"\",\n      \"hint\": \"설치\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Search\",\n      \"localized\": \"검색\",\n      \"reload\": \"\",\n      \"hint\": \"검색\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sort by\",\n      \"localized\": \"정렬 기준\",\n      \"reload\": \"\",\n      \"hint\": \"정렬 기준\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Nudenet\",\n      \"localized\": \"누드넷\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 내 노출을 감지하고 가릴 수 있는 유연한 확장 프로그램\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt enhance\",\n      \"localized\": \"프롬프트 강화\",\n      \"reload\": \"\",\n      \"hint\": \"더 나은 결과를 위해 다양한 LLM을 사용하여 프롬프트를 다시 작성할 수 있는 확장 프로그램\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Manage extensions\",\n      \"localized\": \"확장 프로그램 관리\",\n      \"reload\": \"\",\n      \"hint\": \"확장 프로그램 관리\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Manual install\",\n      \"localized\": \"수동 설치\",\n      \"reload\": \"\",\n      \"hint\": \"확장 프로그램을 수동으로 설치\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Extension GIT repository URL\",\n      \"localized\": \"확장 프로그램 GIT 저장소 URL\",\n      \"reload\": \"\",\n      \"hint\": \"GitHub에서 확장 프로그램 저장소 URL 지정\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Specific branch name\",\n      \"localized\": \"특정 브랜치 이름\",\n      \"reload\": \"\",\n      \"hint\": \"확장 프로그램 브랜치 이름을 지정합니다. 기본값은 비워 두세요.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Local directory name\",\n      \"localized\": \"로컬 디렉터리 이름\",\n      \"reload\": \"\",\n      \"hint\": \"확장 프로그램을 설치할 디렉터리입니다. 기본값은 비워 두세요.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refresh extension list\",\n      \"localized\": \"확장 프로그램 목록 새로고침\",\n      \"reload\": \"\",\n      \"hint\": \"사용 가능한 확장 프로그램 목록 새로고침\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Update all installed\",\n      \"localized\": \"설치된 모든 항목 업데이트\",\n      \"reload\": \"\",\n      \"hint\": \"설치된 확장 프로그램을 최신 버전으로 업데이트\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Apply changes\",\n      \"localized\": \"변경 사항 적용\",\n      \"reload\": \"\",\n      \"hint\": \"모든 변경 사항을 적용하고 서버 재시작\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Uninstall\",\n      \"localized\": \"제거\",\n      \"reload\": \"\",\n      \"hint\": \"이 확장 프로그램 제거\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"User interface\",\n      \"localized\": \"사용자 인터페이스\",\n      \"reload\": \"\",\n      \"hint\": \"사용자 인터페이스 기본 설정 검토 및 설정\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Set UI defaults\",\n      \"localized\": \"UI 기본값 설정\",\n      \"reload\": \"\",\n      \"hint\": \"현재 값을 사용자 인터페이스의 기본값으로 설정\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Benchmark\",\n      \"localized\": \"벤치마크\",\n      \"reload\": \"\",\n      \"hint\": \"벤치마크 실행\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models & Networks\",\n      \"localized\": \"모델 및 네트워크\",\n      \"reload\": \"\",\n      \"hint\": \"사용 가능한 모든 모델 및 네트워크 목록 보기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore UI defaults\",\n      \"localized\": \"UI 기본값 복원\",\n      \"reload\": \"\",\n      \"hint\": \"기본 사용자 인터페이스 값 복원\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer classes\",\n      \"localized\": \"디테일러 클래스\",\n      \"reload\": \"\",\n      \"hint\": \"선택된 디테일러 모델이 다중 클래스 모델인 경우 사용할 특정 클래스를 지정\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer models\",\n      \"localized\": \"디테일러 모델\",\n      \"reload\": \"\",\n      \"hint\": \"디테일링에 사용할 감지 모델 선택\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer negative prompt\",\n      \"localized\": \"디테일러 부정 프롬프트\",\n      \"reload\": \"\",\n      \"hint\": \"디테일러에 별도의 부정 프롬프트 사용. 없으면 기본 부정 프롬프트를 사용합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer prompt\",\n      \"localized\": \"디테일러 프롬프트\",\n      \"reload\": \"\",\n      \"hint\": \"디테일러에 별도의 프롬프트 사용. 없으면 기본 프롬프트를 사용합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer steps\",\n      \"localized\": \"디테일러 스텝\",\n      \"reload\": \"\",\n      \"hint\": \"디테일러 프로세스를 실행할 스텝 수\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer strength\",\n      \"localized\": \"디테일러 강도\",\n      \"reload\": \"\",\n      \"hint\": \"디테일러 프로세스의 노이즈 제거 강도\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer use model augment\",\n      \"localized\": \"디테일러 모델 증강 사용\",\n      \"reload\": \"\",\n      \"hint\": \"디테일러 감지 모델을 추가 정밀도로 실행\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max detected\",\n      \"localized\": \"최대 감지 개수\",\n      \"reload\": \"\",\n      \"hint\": \"디테일러를 실행할 최대 감지 객체 수\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Edge blur\",\n      \"localized\": \"가장자리 흐림\",\n      \"reload\": \"\",\n      \"hint\": \"마스킹된 영역의 가장자리를 이 백분율만큼 흐리게 처리\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Edge padding\",\n      \"localized\": \"가장자리 패딩\",\n      \"reload\": \"\",\n      \"hint\": \"마스킹된 영역의 가장자리를 이 백분율만큼 확장\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Min confidence\",\n      \"localized\": \"최소 신뢰도\",\n      \"reload\": \"\",\n      \"hint\": \"감지된 항목에 대한 최소 신뢰도\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max overlap\",\n      \"localized\": \"최대 중첩\",\n      \"reload\": \"\",\n      \"hint\": \"두 감지된 항목 간의 최대 중첩 (하나가 버려지기 전)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Min size\",\n      \"localized\": \"최소 크기\",\n      \"reload\": \"\",\n      \"hint\": \"전체 이미지의 백분율로 표시된 감지된 객체의 최소 크기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max size\",\n      \"localized\": \"최대 크기\",\n      \"reload\": \"\",\n      \"hint\": \"전체 이미지의 백분율로 표시된 감지된 객체의 최대 크기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Image\",\n      \"localized\": \"이미지 처리\",\n      \"reload\": \"\",\n      \"hint\": \"단일 이미지 처리\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Batch\",\n      \"localized\": \"배치 처리\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 배치 처리\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Folder\",\n      \"localized\": \"폴더 처리\",\n      \"reload\": \"\",\n      \"hint\": \"폴더 내의 모든 이미지 처리\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Current\",\n      \"localized\": \"현재\",\n      \"reload\": \"\",\n      \"hint\": \"현재 로드된 모델 내부의 모듈 분석\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Merge\",\n      \"localized\": \"병합\",\n      \"reload\": \"\",\n      \"hint\": \"두 개 이상의 모델을 새 모델로 병합\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Modules\",\n      \"localized\": \"모듈\",\n      \"reload\": \"\",\n      \"hint\": \"기존 모델에 모듈 병합 및/또는 교체\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Validate\",\n      \"localized\": \"유효성 검사\",\n      \"reload\": \"\",\n      \"hint\": \"모든 로컬 모델 유효성 검사\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CivitAI\",\n      \"localized\": \"시빗AI\",\n      \"reload\": \"\",\n      \"hint\": \"CivitAI에서 모델 검색 및 다운로드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scale by\",\n      \"localized\": \"배율 조정\",\n      \"reload\": \"\",\n      \"hint\": \"이 탭을 사용하여 선택한 비율로 원본 이미지를 조정\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scale to\",\n      \"localized\": \"크기 조정\",\n      \"reload\": \"\",\n      \"hint\": \"이 탭을 사용하여 원본 이미지를 선택한 대상 크기로 조정\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Input directory\",\n      \"localized\": \"입력 디렉터리\",\n      \"reload\": \"\",\n      \"hint\": \"처리할 이미지가 있는 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Output directory\",\n      \"localized\": \"출력 디렉터리\",\n      \"reload\": \"\",\n      \"hint\": \"처리된 이미지를 저장할 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show result images\",\n      \"localized\": \"결과 이미지 표시\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 창에 처리된 이미지 표시를 활성화\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop to fit\",\n      \"localized\": \"맞게 자르기\",\n      \"reload\": \"\",\n      \"hint\": \"원본 이미지의 크기(예: 512x510)가 대상 크기(예: 1024x768)와 다를 경우, 이 기능은 업스케일된 이미지를 대상 크기 이미지에 맞춥니다. 초과 부분은 잘립니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine Upscaler\",\n      \"localized\": \"업스케일러 정제\",\n      \"reload\": \"\",\n      \"hint\": \"초기 업스케일러 실행 후 보조 업스케일러 선택\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler 2 visibility\",\n      \"localized\": \"업스케일러 2 가시성\",\n      \"reload\": \"\",\n      \"hint\": \"보조 업스케일러의 강도\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Calculate hash for all models\",\n      \"localized\": \"모든 모델의 해시 계산\",\n      \"reload\": \"\",\n      \"hint\": \"사용 가능한 모든 모델의 해시를 계산합니다. 이는 매우 오래 걸릴 수 있습니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Weights Clip\",\n      \"localized\": \"가중치 클립\",\n      \"reload\": \"\",\n      \"hint\": \"병합된 가중치가 원본 모델보다 무겁지 않도록 강제하여 번인 및 과도하게 포화된 모델 방지\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ReBasin\",\n      \"localized\": \"리베이신\",\n      \"reload\": \"\",\n      \"hint\": \"두 모델의 더 많은 특징을 유지하기 위해 순열을 사용하여 여러 병합 수행\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Number of ReBasin Iterations\",\n      \"localized\": \"리베이신 반복 횟수\",\n      \"reload\": \"\",\n      \"hint\": \"저장하기 전에 모델을 병합하고 순열할 횟수\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CPU\",\n      \"localized\": \"CPU\",\n      \"reload\": \"\",\n      \"hint\": \"CPU와 RAM만 사용: 가장 느리지만 OOM(메모리 부족) 가능성 낮음\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Shuffle\",\n      \"localized\": \"셔플\",\n      \"reload\": \"\",\n      \"hint\": \"전체 모델을 RAM에 로드하고 VRAM에서 계산: 속도 향상이 적지만 SDXL 병합에 권장됨\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"In Blocks\",\n      \"localized\": \"입력 블록\",\n      \"reload\": \"\",\n      \"hint\": \"UNet의 다운샘플링 블록 (SD1.5는 12개 값, SDXL은 9개 값)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mid Block\",\n      \"localized\": \"중간 블록\",\n      \"reload\": \"\",\n      \"hint\": \"UNet의 중앙 블록 (1개 값)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Out Block\",\n      \"localized\": \"출력 블록\",\n      \"reload\": \"\",\n      \"hint\": \"UNet의 업샘플링 블록 (SD1.5는 12개 값, SDXL은 9개 값)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Preset Interpolation Ratio\",\n      \"localized\": \"프리셋 보간 비율\",\n      \"reload\": \"\",\n      \"hint\": \"두 프리셋이 선택된 경우, 그 사이를 보간\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adapter\",\n      \"localized\": \"어댑터\",\n      \"reload\": \"\",\n      \"hint\": \"IP 어댑터 모델\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Active ip adapters\",\n      \"localized\": \"활성 IP 어댑터\",\n      \"reload\": \"\",\n      \"hint\": \"활성 IP 어댑터 수\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Unload adapter\",\n      \"localized\": \"어댑터 언로드\",\n      \"reload\": \"\",\n      \"hint\": \"생성 직후 IP 어댑터 언로드. 그렇지 않으면 다음 생성 프로세스에서 더 빠른 사용을 위해 IP 어댑터가 로드된 상태로 유지됩니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop to portrait\",\n      \"localized\": \"세로로 자르기\",\n      \"reload\": \"\",\n      \"hint\": \"IP 어댑터 입력으로 사용하기 전에 입력 이미지를 세로 전용으로 자르기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Layer options\",\n      \"localized\": \"레이어 옵션\",\n      \"reload\": \"\",\n      \"hint\": \"IP 어댑터 고급 레이어 옵션을 수동으로 지정\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"X values\",\n      \"localized\": \"X 값\",\n      \"reload\": \"\",\n      \"hint\": \"쉼표를 사용하여 X축 값 분리\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Y values\",\n      \"localized\": \"Y 값\",\n      \"reload\": \"\",\n      \"hint\": \"쉼표를 사용하여 Y축 값 분리\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Z values\",\n      \"localized\": \"Z 값\",\n      \"reload\": \"\",\n      \"hint\": \"쉼표를 사용하여 Z축 값 분리\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Loops\",\n      \"localized\": \"반복 횟수\",\n      \"reload\": \"\",\n      \"hint\": \"이미지를 처리할 횟수. 각 출력은 다음 루프의 입력으로 사용됩니다. 1로 설정하면 이 스크립트가 사용되지 않은 것과 동일하게 작동합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Final denoising strength\",\n      \"localized\": \"최종 노이즈 제거 강도\",\n      \"reload\": \"\",\n      \"hint\": \"배치의 각 이미지의 최종 루프에 대한 노이즈 제거 강도\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoising strength curve\",\n      \"localized\": \"노이즈 제거 강도 곡선\",\n      \"reload\": \"\",\n      \"hint\": \"노이즈 제거 곡선은 각 루프에서 노이즈 제거 강도 변경 속도를 제어합니다. 공격적: 대부분의 변경이 루프 시작 부분에서 발생합니다. 선형: 모든 루프에서 변경이 일정합니다. 느슨함: 대부분의 변경이 루프 끝 부분에서 발생합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Tile overlap\",\n      \"localized\": \"타일 중첩\",\n      \"reload\": \"\",\n      \"hint\": \"SD 업스케일의 경우, 타일 간에 얼마나 많은 픽셀 중첩이 있어야 하는지. 타일은 하나의 그림으로 다시 병합될 때 명확하게 보이는 이음새가 없도록 중첩됩니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Color to Mask\",\n      \"localized\": \"ACI: 색상을 마스크로\",\n      \"reload\": \"\",\n      \"hint\": \"마스크하고 인페인팅할 색상을 선택하세요. 이미지에서 색상을 클릭하여 자동으로 선택할 수 있습니다.\\n정확한 결과를 얻으려면 그린 스크린과 같은 이미지를 사용하는 것이 좋습니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Color Tolerance\",\n      \"localized\": \"ACI: 색상 허용 오차\",\n      \"reload\": \"\",\n      \"hint\": \"마스크에 유사한 색상을 포함하도록 허용 오차를 조정합니다. 낮은 값 = 매우 유사한 색상만 마스크. 높은 값 = 더 넓은 범위의 유사한 색상을 마스크.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Mask Erode\",\n      \"localized\": \"ACI: 마스크 침식\",\n      \"reload\": \"\",\n      \"hint\": \"마스크에 내부 오프셋을 적용하도록 패딩을 조정합니다. (가장자리 잔여물 제거를 위해 권장 값 = 2)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Mask Blur\",\n      \"localized\": \"ACI: 마스크 흐림\",\n      \"reload\": \"\",\n      \"hint\": \"이미지와 인페인팅된 영역 사이에 부드러운 전환을 적용하도록 흐림 효과를 조정합니다. (선명도를 위해 권장 값 = 0)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Denoising Strength\",\n      \"localized\": \"ACI: 노이즈 제거 강도\",\n      \"reload\": \"\",\n      \"hint\": \"원하는 인페인팅 양을 달성하려면 노이즈 제거 강도를 변경하세요.\"\n    }\n  ],\n  \"settings\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Apply settings\",\n      \"localized\": \"설정 적용\",\n      \"reload\": \"\",\n      \"hint\": \"현재 설정을 저장합니다. 서버 재시작이 권장됩니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Loading\",\n      \"localized\": \"모델 로딩\",\n      \"reload\": \"\",\n      \"hint\": \"모델 로드 방식과 관련된 설정입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Options\",\n      \"localized\": \"모델 옵션\",\n      \"reload\": \"\",\n      \"hint\": \"특정 모델의 동작과 관련된 설정입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Offloading\",\n      \"localized\": \"모델 오프로딩\",\n      \"reload\": \"\",\n      \"hint\": \"모델 오프로딩 및 메모리 관리와 관련된 설정입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Quantization\",\n      \"localized\": \"모델 양자화\",\n      \"reload\": \"\",\n      \"hint\": \"메모리 사용량을 줄이는 데 사용되는 모델 양자화와 관련된 설정입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Metadata\",\n      \"localized\": \"이미지 메타데이터\",\n      \"reload\": \"\",\n      \"hint\": \"생성된 이미지와 함께 생성되는 메타데이터 처리와 관련된 설정입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Legacy Options\",\n      \"localized\": \"레거시 옵션\",\n      \"reload\": \"\",\n      \"hint\": \"레거시 옵션과 관련된 설정입니다. 사용하지 않는 것이 좋습니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restart server\",\n      \"localized\": \"서버 재시작\",\n      \"reload\": \"\",\n      \"hint\": \"서버를 재시작합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Shutdown server\",\n      \"localized\": \"서버 종료\",\n      \"reload\": \"\",\n      \"hint\": \"서버를 종료합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Preview theme\",\n      \"localized\": \"테마 미리보기\",\n      \"reload\": \"\",\n      \"hint\": \"테마 미리보기를 표시합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore defaults\",\n      \"localized\": \"기본값 복원\",\n      \"reload\": \"\",\n      \"hint\": \"기본 서버 설정을 복원합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Unload model\",\n      \"localized\": \"모델 언로드\",\n      \"reload\": \"\",\n      \"hint\": \"현재 로드된 모델을 언로드합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reload model\",\n      \"localized\": \"모델 재로드\",\n      \"reload\": \"\",\n      \"hint\": \"현재 선택된 모델을 재로드합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models & Loading\",\n      \"localized\": \"모델 및 로딩\",\n      \"reload\": \"\",\n      \"hint\": \"기본 모델, 주 백엔드 및 모델 로드 동작과 관련된 설정입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variational Auto Encoder\",\n      \"localized\": \"변분 오토인코더\",\n      \"reload\": \"\",\n      \"hint\": \"생성 중 변분 오토인코더 및 이미지 디코딩 프로세스와 관련된 설정입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Text encoder\",\n      \"localized\": \"텍스트 인코더\",\n      \"reload\": \"\",\n      \"hint\": \"생성 중 텍스트 인코더 및 프롬프트 인코딩 처리와 관련된 설정입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Compute Settings\",\n      \"localized\": \"계산 설정\",\n      \"reload\": \"\",\n      \"hint\": \"계산 정밀도, 교차 어텐션 및 컴퓨팅 플랫폼 최적화와 관련된 설정입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Backend Settings\",\n      \"localized\": \"백엔드 설정\",\n      \"reload\": \"\",\n      \"hint\": \"계산 백엔드(torch, onnx, olive)와 관련된 설정입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Quantization Settings\",\n      \"localized\": \"양자화 설정\",\n      \"reload\": \"\",\n      \"hint\": \"모델 양자화와 관련된 설정입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Pipeline modifiers\",\n      \"localized\": \"파이프라인 수정자\",\n      \"reload\": \"\",\n      \"hint\": \"생성 중에 활성화할 수 있는 추가 기능입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model compile\",\n      \"localized\": \"모델 컴파일\",\n      \"reload\": \"\",\n      \"hint\": \"다양한 모델 컴파일 방법과 관련된 설정입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System Paths\",\n      \"localized\": \"시스템 경로\",\n      \"reload\": \"\",\n      \"hint\": \"다양한 모델 디렉터리의 위치와 관련된 설정입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Options\",\n      \"localized\": \"이미지 옵션\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 형식, 메타데이터 및 이미지 격자와 관련된 설정입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Paths\",\n      \"localized\": \"이미지 경로\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 파일 이름 및 출력 디렉터리와 관련된 설정입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Live Previews\",\n      \"localized\": \"라이브 미리보기\",\n      \"reload\": \"\",\n      \"hint\": \"라이브 미리보기, 오디오 알림과 관련된 설정입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sampler Settings\",\n      \"localized\": \"샘플러 설정\",\n      \"reload\": \"\",\n      \"hint\": \"샘플러 선택 및 구성, 그리고 디퓨저 특정 샘플러 구성과 관련된 설정입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Postprocessing\",\n      \"localized\": \"후처리\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 생성 후 처리, 얼굴 복원 및 업스케일링과 관련된 설정입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control Options\",\n      \"localized\": \"제어 옵션\",\n      \"reload\": \"\",\n      \"hint\": \"제어 탭과 관련된 설정입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Huggingface\",\n      \"localized\": \"허깅페이스\",\n      \"reload\": \"\",\n      \"hint\": \"허깅페이스 접근과 관련된 설정입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show all pages\",\n      \"localized\": \"모든 페이지 표시\",\n      \"reload\": \"\",\n      \"hint\": \"모든 설정 페이지를 표시합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Base model\",\n      \"localized\": \"기본 모델\",\n      \"reload\": \"\",\n      \"hint\": \"모든 작업에 사용되는 주 모델입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner model\",\n      \"localized\": \"리파이너 모델\",\n      \"reload\": \"\",\n      \"hint\": \"두 번째 통과 작업에 사용되는 리파이너 모델입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Cached models\",\n      \"localized\": \"캐시된 모델\",\n      \"reload\": \"\",\n      \"hint\": \"빠른 접근을 위해 RAM에 저장할 모델의 수입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE model\",\n      \"localized\": \"VAE 모델\",\n      \"reload\": \"\",\n      \"hint\": \"VAE는 최종 이미지의 미세한 디테일을 돕고 색상을 변경할 수도 있습니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model load using streams\",\n      \"localized\": \"스트림을 사용하여 모델 로드\",\n      \"reload\": \"\",\n      \"hint\": \"모델 로드 시 느린 저장소 또는 네트워크 저장소에 최적화된 스트림 로딩을 시도합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xFormers\",\n      \"localized\": \"xFormers\",\n      \"reload\": \"\",\n      \"hint\": \"메모리 최적화. 비결정론적 (매번 다른 결과).\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scaled-Dot-Product\",\n      \"localized\": \"스케일드 닷 프로덕트\",\n      \"reload\": \"\",\n      \"hint\": \"메모리 최적화. SDP 메모리 어텐션이 비활성화되지 않는 한 비결정론적입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt padding\",\n      \"localized\": \"프롬프트 패딩\",\n      \"reload\": \"\",\n      \"hint\": \"75개 이상의 토큰을 사용할 때 마지막 콤마로부터 n개의 토큰 내에서 패딩하여 일관성을 높입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Original\",\n      \"localized\": \"원본\",\n      \"reload\": \"\",\n      \"hint\": \"원본 LDM 백엔드입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Autocast\",\n      \"localized\": \"오토캐스트\",\n      \"reload\": \"\",\n      \"hint\": \"런타임 중 정밀도를 자동으로 결정합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full\",\n      \"localized\": \"전체\",\n      \"reload\": \"\",\n      \"hint\": \"항상 전체 정밀도를 사용합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"FP32\",\n      \"localized\": \"FP32\",\n      \"reload\": \"\",\n      \"hint\": \"계산에 32비트 부동 소수점 정밀도를 사용합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"FP16\",\n      \"localized\": \"FP16\",\n      \"reload\": \"\",\n      \"hint\": \"계산에 16비트 부동 소수점 정밀도를 사용합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"BF16\",\n      \"localized\": \"BF16\",\n      \"reload\": \"\",\n      \"hint\": \"계산에 수정된 16비트 부동 소수점 정밀도를 사용합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full precision (--no-half-vae)\",\n      \"localized\": \"전체 정밀도 (--no-half-vae)\",\n      \"reload\": \"\",\n      \"hint\": \"VAE에 FP32를 사용합니다. 더 많은 VRAM을 사용하고 생성 속도가 느려지지만 더 나은 결과를 얻을 수 있습니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Force full precision (--no-half)\",\n      \"localized\": \"전체 정밀도 강제 (--no-half)\",\n      \"reload\": \"\",\n      \"hint\": \"모델에 FP32를 사용합니다. 더 많은 VRAM을 사용하고 생성 속도가 느려지지만 더 나은 결과를 얻을 수 있습니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upcast sampling\",\n      \"localized\": \"업캐스트 샘플링\",\n      \"reload\": \"\",\n      \"hint\": \"--no-half와 유사한 결과를 생성하며, 더 적은 메모리를 사용하면서 더 나은 성능을 제공합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Attempt VAE roll back for NaN values\",\n      \"localized\": \"NaN 값에 대해 VAE 롤백 시도\",\n      \"reload\": \"\",\n      \"hint\": \"Torch 2.1 및 NaN 확인 활성화가 필요합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive use FP16 on optimization\",\n      \"localized\": \"Olive 최적화 시 FP16 사용\",\n      \"reload\": \"\",\n      \"hint\": \"Olive 최적화 프로세스의 출력 모델에 16비트 부동 소수점 정밀도를 사용합니다. 비활성화된 경우 32비트 부동 소수점 정밀도를 사용합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive force FP32 for VAE Encoder\",\n      \"localized\": \"Olive VAE 인코더에 FP32 강제\",\n      \"reload\": \"\",\n      \"hint\": \"출력 모델의 VAE 인코더에 32비트 부동 소수점 정밀도를 사용합니다. 이 옵션은 '최적화 시 FP16 사용' 옵션을 재정의합니다. Img2Img에서 NaN 또는 검은색 빈 이미지가 나타나면 이 옵션을 활성화하고 캐시를 제거하십시오.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive use static dimensions\",\n      \"localized\": \"Olive 정적 차원 사용\",\n      \"reload\": \"\",\n      \"hint\": \"Olive 최적화 모델을 사용하여 추론 속도를 훨씬 빠르게 만듭니다. (OrtTransformersOptimization)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive cache optimized models\",\n      \"localized\": \"Olive 최적화 모델 캐시\",\n      \"reload\": \"\",\n      \"hint\": \"Olive 처리된 모델을 캐시로 저장합니다. ONNX 탭에서 관리할 수 있습니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"File format\",\n      \"localized\": \"파일 형식\",\n      \"reload\": \"\",\n      \"hint\": \"이미지에 사용할 파일 형식을 선택합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Include metadata\",\n      \"localized\": \"메타데이터 포함\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 생성 매개변수를 이미지 파일 내에 메타데이터 태그로 저장합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Images filename pattern\",\n      \"localized\": \"이미지 파일명 패턴\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 파일 이름을 지정하는 데 다음 태그를 사용하십시오:<br><pre>seq, uuid<br>date, datetime, job_timestamp<br>generation_number, batch_number<br>model, model_shortname<br>model_hash, model_name<br>sampler, seed, steps, cfg<br>clip_skip, denoising<br>hasprompt, prompt, styles<br>prompt_hash, prompt_no_styles<br>prompt_spaces, prompt_words<br>height, width, image_hash<br></pre>\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Row count\",\n      \"localized\": \"행 수\",\n      \"reload\": \"\",\n      \"hint\": \"자동 감지를 위해 -1을 사용하고, 배치 크기와 동일하게 하려면 0을 사용하십시오.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Directory name pattern\",\n      \"localized\": \"디렉터리 이름 패턴\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 및 그리드의 하위 디렉터리를 선택하는 방법을 정의하는 데 다음 태그를 사용하십시오: [steps], [cfg], [prompt_hash], [prompt], [prompt_no_styles], [prompt_spaces], [width], [height], [styles], [sampler], [seed], [model_hash], [model_name], [prompt_words], [date], [datetime], [datetime<Format>], [datetime<Format><Time Zone>], [job_timestamp]; 기본값을 사용하려면 비워 두십시오.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpainting conditioning mask strength\",\n      \"localized\": \"인페인팅 조건부 마스크 강도\",\n      \"reload\": \"\",\n      \"hint\": \"인페인팅 및 img2img를 위해 원본 이미지를 얼마나 강하게 마스킹할지 결정합니다. 1.0은 완전히 마스킹됨(기본값)을 의미합니다. 0.0은 완전히 마스킹되지 않은 조건을 의미합니다. 값이 낮을수록 이미지의 전체 구성을 보존하는 데 도움이 되지만, 큰 변화에는 어려움을 겪을 수 있습니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Clip skip\",\n      \"localized\": \"클립 스킵\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP 모델의 조기 종료 매개변수입니다. 1은 일반적으로 마지막 레이어에서 중지하고, 2는 마지막에서 두 번째 레이어에서 중지하는 식입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Images folder\",\n      \"localized\": \"이미지 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"비어 있으면 아래 세 개의 디렉터리가 기본값으로 사용됩니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Grids folder\",\n      \"localized\": \"그리드 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"비어 있으면 아래 두 개의 디렉터리가 기본값으로 사용됩니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Quicksettings list\",\n      \"localized\": \"빠른 설정 목록\",\n      \"reload\": \"\",\n      \"hint\": \"설정 탭 대신 상단의 빠른 접근 바에 표시되어야 할 설정 이름 목록(콤마로 구분).\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Live preview display period\",\n      \"localized\": \"라이브 미리보기 표시 주기\",\n      \"reload\": \"\",\n      \"hint\": \"n 스텝마다 미리보기 이미지를 요청합니다. 0으로 설정하면 비활성화됩니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Approximate\",\n      \"localized\": \"근사\",\n      \"reload\": \"\",\n      \"hint\": \"저렴한 신경망 근사치. VAE에 비해 매우 빠르지만, 가로/세로 해상도가 4배 작고 품질이 낮은 사진을 생성합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Simple\",\n      \"localized\": \"단순\",\n      \"reload\": \"\",\n      \"hint\": \"매우 저렴한 근사치. VAE에 비해 매우 빠르지만, 가로/세로 해상도가 8배 작고 매우 낮은 품질의 사진을 생성합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Progress update period\",\n      \"localized\": \"진행 상황 업데이트 주기\",\n      \"reload\": \"\",\n      \"hint\": \"UI 진행률 바 및 미리보기 확인을 위한 업데이트 주기 (밀리초 단위).\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Euler a\",\n      \"localized\": \"오일러 a\",\n      \"reload\": \"\",\n      \"hint\": \"오일러 선조(Euler Ancestral) - 매우 창의적이며, 스텝 수에 따라 완전히 다른 그림을 얻을 수 있습니다. 스텝을 30-40보다 높게 설정해도 도움이 되지 않습니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"DDIM\",\n      \"localized\": \"DDIM\",\n      \"reload\": \"\",\n      \"hint\": \"잡음 제거 확산 암시적 모델(Denoising Diffusion Implicit Models) - 인페인팅에 최적입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"UniPC\",\n      \"localized\": \"UniPC\",\n      \"reload\": \"\",\n      \"hint\": \"확산 모델의 빠른 샘플링을 위한 통합 예측-수정 프레임워크입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sigma negative guidance minimum\",\n      \"localized\": \"시그마 음수 안내 최소값\",\n      \"reload\": \"\",\n      \"hint\": \"이미지가 거의 완성되었을 때 일부 스텝 동안 부정적 프롬프트를 건너뜁니다. 0은 비활성화입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler tile size\",\n      \"localized\": \"업스케일러 타일 크기\",\n      \"reload\": \"\",\n      \"hint\": \"0 = 타일링 없음\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler tile overlap\",\n      \"localized\": \"업스케일러 타일 오버랩\",\n      \"reload\": \"\",\n      \"hint\": \"낮은 값 = 눈에 띄는 이음새\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"GFPGAN\",\n      \"localized\": \"GFPGAN\",\n      \"reload\": \"\",\n      \"hint\": \"GFPGAN 신경망을 사용하여 낮은 품질의 얼굴을 복원합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CodeFormer\",\n      \"localized\": \"CodeFormer\",\n      \"reload\": \"\",\n      \"hint\": \"CodeFormer 신경망을 사용하여 낮은 품질의 얼굴을 복원합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CodeFormer weight parameter\",\n      \"localized\": \"CodeFormer 가중치 매개변수\",\n      \"reload\": \"\",\n      \"hint\": \"0 = 최대 효과; 1 = 최소 효과\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ToMe token merging ratio\",\n      \"localized\": \"ToMe 토큰 병합 비율\",\n      \"reload\": \"\",\n      \"hint\": \"속도 및 메모리 개선을 위해 tomesd를 통한 중복 토큰 병합을 활성화합니다. 0은 비활성화입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Todo token merging ratio\",\n      \"localized\": \"Todo 토큰 병합 비율\",\n      \"reload\": \"\",\n      \"hint\": \"속도 및 메모리 개선을 위해 todo를 통한 중복 토큰 병합을 활성화합니다. 0은 비활성화입니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model pipeline\",\n      \"localized\": \"모델 파이프라인\",\n      \"reload\": \"\",\n      \"hint\": \"자동 감지가 모델을 자동으로 감지하지 못하면 모델을 로드하기 전에 모델 유형을 선택하십시오.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE slicing\",\n      \"localized\": \"VAE 슬라이싱\",\n      \"reload\": \"\",\n      \"hint\": \"제한된 VRAM으로 배치 잠재 공간을 한 번에 한 이미지씩 디코딩합니다. 다중 이미지 배치에서 VAE 디코딩 성능이 약간 향상됩니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE tiling\",\n      \"localized\": \"VAE 타일링\",\n      \"reload\": \"\",\n      \"hint\": \"제한된 VRAM으로 큰 이미지를 겹치는 타일로 나눕니다. 처리 시간이 약간 증가합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Dynamic attention BMM\",\n      \"localized\": \"동적 어텐션 BMM\",\n      \"reload\": \"\",\n      \"hint\": \"어텐션 계산을 한 번에 모두 수행하는 대신 단계별로 수행합니다. 추론 시간이 느려지지만 메모리 사용량이 크게 줄어듭니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX Execution Provider\",\n      \"localized\": \"ONNX 실행 공급자\",\n      \"reload\": \"\",\n      \"hint\": \"ONNX 실행 공급자\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX allow fallback to CPU\",\n      \"localized\": \"ONNX CPU 폴백 허용\",\n      \"reload\": \"\",\n      \"hint\": \"선택한 실행 공급자가 실패했을 때 CPU로 폴백을 허용합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX cache converted models\",\n      \"localized\": \"ONNX 변환 모델 캐시\",\n      \"reload\": \"\",\n      \"hint\": \"ONNX 형식으로 변환된 모델을 캐시로 저장합니다. ONNX 탭에서 관리할 수 있습니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX unload base model when processing refiner\",\n      \"localized\": \"리파이너 처리 시 ONNX 기본 모델 언로드\",\n      \"reload\": \"\",\n      \"hint\": \"리파이너가 변환/최적화/처리되는 동안 기본 모델을 언로드합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inference-mode\",\n      \"localized\": \"추론 모드\",\n      \"reload\": \"\",\n      \"hint\": \"torch.inference_mode를 사용합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"no-grad\",\n      \"localized\": \"no-grad\",\n      \"reload\": \"\",\n      \"hint\": \"torch.no_grad를 사용합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model compile precompile\",\n      \"localized\": \"모델 컴파일 사전 컴파일\",\n      \"reload\": \"\",\n      \"hint\": \"모델을 처음 사용할 때가 아니라 로드 시 즉시 모델 컴파일을 실행합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Use zeros for prompt padding\",\n      \"localized\": \"프롬프트 패딩에 0 사용\",\n      \"reload\": \"\",\n      \"hint\": \"프롬프트가 비어 있을 때 잔여 노이즈를 제거하기 위해 전체 제로 텐서를 강제합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Include invisible watermark\",\n      \"localized\": \"투명 워터마크 포함\",\n      \"reload\": \"\",\n      \"hint\": \"일부 픽셀 값을 변경하여 이미지에 투명 워터마크를 추가합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invisible watermark string\",\n      \"localized\": \"투명 워터마크 문자열\",\n      \"reload\": \"\",\n      \"hint\": \"이미지에 추가할 워터마크 문자열입니다. 이미지 손상을 피하기 위해 매우 짧게 유지하십시오.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show log view\",\n      \"localized\": \"로그 뷰 표시\",\n      \"reload\": \"\",\n      \"hint\": \"메인 창 하단에 로그 뷰를 표시합니다.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Log view update period\",\n      \"localized\": \"로그 뷰 업데이트 주기\",\n      \"reload\": \"\",\n      \"hint\": \"로그 뷰 업데이트 주기 (밀리초 단위).\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"PAG layer names\",\n      \"localized\": \"PAG 레이어 이름\",\n      \"reload\": \"\",\n      \"hint\": \"공백으로 구분된 레이어 목록<br>사용 가능: d[0-5], m[0], u[0-8]<br>기본값: m0\"\n    }\n  ],\n  \"missing\": [\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage\",\n      \"localized\": \"1단계\",\n      \"reload\": \"\",\n      \"hint\": \"1단계\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage backbone\",\n      \"localized\": \"1단계 백본\",\n      \"reload\": \"\",\n      \"hint\": \"1단계 백본\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage skip\",\n      \"localized\": \"1단계 스킵\",\n      \"reload\": \"\",\n      \"hint\": \"1단계 스킵\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd restart step\",\n      \"localized\": \"2차 재시작 단계\",\n      \"reload\": \"\",\n      \"hint\": \"2차 재시작 단계\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd scale\",\n      \"localized\": \"2차 스케일\",\n      \"reload\": \"\",\n      \"hint\": \"2차 스케일\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage\",\n      \"localized\": \"2단계\",\n      \"reload\": \"\",\n      \"hint\": \"2단계\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage backbone\",\n      \"localized\": \"2단계 백본\",\n      \"reload\": \"\",\n      \"hint\": \"2단계 백본\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage skip\",\n      \"localized\": \"2단계 스킵\",\n      \"reload\": \"\",\n      \"hint\": \"2단계 스킵\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd restart step\",\n      \"localized\": \"3차 재시작 단계\",\n      \"reload\": \"\",\n      \"hint\": \"3차 재시작 단계\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd scale\",\n      \"localized\": \"3차 스케일\",\n      \"reload\": \"\",\n      \"hint\": \"3차 스케일\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd stage\",\n      \"localized\": \"3단계\",\n      \"reload\": \"\",\n      \"hint\": \"3단계\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th restart step\",\n      \"localized\": \"4차 재시작 단계\",\n      \"reload\": \"\",\n      \"hint\": \"4차 재시작 단계\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th scale\",\n      \"localized\": \"4차 스케일\",\n      \"reload\": \"\",\n      \"hint\": \"4차 스케일\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th stage\",\n      \"localized\": \"4단계\",\n      \"reload\": \"\",\n      \"hint\": \"4단계\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"a1111\",\n      \"localized\": \"a1111\",\n      \"reload\": \"\",\n      \"hint\": \"a1111\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"accuracy\",\n      \"localized\": \"정확도\",\n      \"reload\": \"\",\n      \"hint\": \"정확도\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aci: mask dilate\",\n      \"localized\": \"ACI: 마스크 팽창\",\n      \"reload\": \"\",\n      \"hint\": \"ACI: 마스크 팽창\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"active\",\n      \"localized\": \"활성\",\n      \"reload\": \"\",\n      \"hint\": \"활성\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adain\",\n      \"localized\": \"AdaIN\",\n      \"reload\": \"\",\n      \"hint\": \"AdaIN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 1\",\n      \"localized\": \"어댑터 1\",\n      \"reload\": \"\",\n      \"hint\": \"어댑터 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 2\",\n      \"localized\": \"어댑터 2\",\n      \"reload\": \"\",\n      \"hint\": \"어댑터 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 3\",\n      \"localized\": \"어댑터 3\",\n      \"reload\": \"\",\n      \"hint\": \"어댑터 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 4\",\n      \"localized\": \"어댑터 4\",\n      \"reload\": \"\",\n      \"hint\": \"어댑터 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adaptive restore\",\n      \"localized\": \"적응형 복원\",\n      \"reload\": \"\",\n      \"hint\": \"적응형 복원\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"add text info\",\n      \"localized\": \"텍스트 정보 추가\",\n      \"reload\": \"\",\n      \"hint\": \"텍스트 정보 추가\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"add time info\",\n      \"localized\": \"시간 정보 추가\",\n      \"reload\": \"\",\n      \"hint\": \"시간 정보 추가\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"additional image browser folders\",\n      \"localized\": \"추가 이미지 브라우저 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"추가 이미지 브라우저 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"additional postprocessing operations\",\n      \"localized\": \"추가 후처리 작업\",\n      \"reload\": \"\",\n      \"hint\": \"추가 후처리 작업\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"advanced options\",\n      \"localized\": \"고급 옵션\",\n      \"reload\": \"\",\n      \"hint\": \"고급 옵션\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"after\",\n      \"localized\": \"이후\",\n      \"reload\": \"\",\n      \"hint\": \"이후\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aggressive at step\",\n      \"localized\": \"단계에서 공격적\",\n      \"reload\": \"\",\n      \"hint\": \"단계에서 공격적\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alias\",\n      \"localized\": \"별칭\",\n      \"reload\": \"\",\n      \"hint\": \"별칭\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"all\",\n      \"localized\": \"모두\",\n      \"reload\": \"\",\n      \"hint\": \"모두\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"allowed aspect ratios\",\n      \"localized\": \"허용된 종횡비\",\n      \"reload\": \"\",\n      \"hint\": \"허용된 종횡비\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha\",\n      \"localized\": \"알파\",\n      \"reload\": \"\",\n      \"hint\": \"알파\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha block weight preset\",\n      \"localized\": \"알파 블록 가중치 프리셋\",\n      \"reload\": \"\",\n      \"hint\": \"알파 블록 가중치 프리셋\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha matting\",\n      \"localized\": \"알파 매팅\",\n      \"reload\": \"\",\n      \"hint\": \"알파 매팅\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha preset\",\n      \"localized\": \"알파 프리셋\",\n      \"reload\": \"\",\n      \"hint\": \"알파 프리셋\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha ratio\",\n      \"localized\": \"알파 비율\",\n      \"reload\": \"\",\n      \"hint\": \"알파 비율\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"amplify lut\",\n      \"localized\": \"LUT 증폭\",\n      \"reload\": \"\",\n      \"hint\": \"LUT 증폭\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"analyze\",\n      \"localized\": \"분석\",\n      \"reload\": \"\",\n      \"hint\": \"분석\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"anchor settings\",\n      \"localized\": \"앵커 설정\",\n      \"reload\": \"\",\n      \"hint\": \"앵커 설정\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"animateddiff\",\n      \"localized\": \"AnimatedDiff\",\n      \"reload\": \"\",\n      \"hint\": \"AnimatedDiff\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"answer\",\n      \"localized\": \"답변\",\n      \"reload\": \"\",\n      \"hint\": \"답변\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aot_ts_nvfuser\",\n      \"localized\": \"aot_ts_nvfuser\",\n      \"reload\": \"\",\n      \"hint\": \"aot_ts_nvfuser\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"appearance\",\n      \"localized\": \"외형\",\n      \"reload\": \"\",\n      \"hint\": \"외형\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append caption files\",\n      \"localized\": \"캡션 파일 추가\",\n      \"reload\": \"\",\n      \"hint\": \"캡션 파일 추가\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append image info json file\",\n      \"localized\": \"이미지 정보 JSON 파일 추가\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 정보 JSON 파일 추가\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append interrogated prompt at each iteration\",\n      \"localized\": \"각 반복에서 조사된 프롬프트 추가\",\n      \"reload\": \"\",\n      \"hint\": \"각 반복에서 조사된 프롬프트 추가\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply color correction\",\n      \"localized\": \"색상 보정 적용\",\n      \"reload\": \"\",\n      \"hint\": \"색상 보정 적용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply filter\",\n      \"localized\": \"필터 적용\",\n      \"reload\": \"\",\n      \"hint\": \"필터 적용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply linfusion distillation on load\",\n      \"localized\": \"로드 시 LinFusion 증류 적용\",\n      \"reload\": \"\",\n      \"hint\": \"로드 시 LinFusion 증류 적용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply mask as overlay\",\n      \"localized\": \"오버레이로 마스크 적용\",\n      \"reload\": \"\",\n      \"hint\": \"오버레이로 마스크 적용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply msw-msa\",\n      \"localized\": \"MSW-MSA 적용\",\n      \"reload\": \"\",\n      \"hint\": \"MSW-MSA 적용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply rau-net\",\n      \"localized\": \"RAU-Net 적용\",\n      \"reload\": \"\",\n      \"hint\": \"RAU-Net 적용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply to model\",\n      \"localized\": \"모델에 적용\",\n      \"reload\": \"\",\n      \"hint\": \"모델에 적용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"artists\",\n      \"localized\": \"아티스트\",\n      \"reload\": \"\",\n      \"hint\": \"아티스트\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"atiadlxx (amd only)\",\n      \"localized\": \"atiadlxx (AMD 전용)\",\n      \"reload\": \"\",\n      \"hint\": \"atiadlxx (AMD 전용)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention\",\n      \"localized\": \"어텐션\",\n      \"reload\": \"\",\n      \"hint\": \"어텐션\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention adain\",\n      \"localized\": \"어텐션 AdaIN\",\n      \"reload\": \"\",\n      \"hint\": \"어텐션 AdaIN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention cache enabled\",\n      \"localized\": \"어텐션 캐시 활성화\",\n      \"reload\": \"\",\n      \"hint\": \"어텐션 캐시 활성화\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention chunking threshold\",\n      \"localized\": \"어텐션 청크 임계값\",\n      \"reload\": \"\",\n      \"hint\": \"어텐션 청크 임계값\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention kv chunk size\",\n      \"localized\": \"어텐션 KV 청크 크기\",\n      \"reload\": \"\",\n      \"hint\": \"어텐션 KV 청크 크기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention query chunk size\",\n      \"localized\": \"어텐션 쿼리 청크 크기\",\n      \"reload\": \"\",\n      \"hint\": \"어텐션 쿼리 청크 크기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto\",\n      \"localized\": \"자동\",\n      \"reload\": \"\",\n      \"hint\": \"자동\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto apply\",\n      \"localized\": \"자동 적용\",\n      \"reload\": \"\",\n      \"hint\": \"자동 적용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-convert sd15 embeddings to sdxl\",\n      \"localized\": \"SD15 임베딩을 SDXL로 자동 변환\",\n      \"reload\": \"\",\n      \"hint\": \"SD15 임베딩을 SDXL로 자동 변환\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-mask\",\n      \"localized\": \"자동 마스크\",\n      \"reload\": \"\",\n      \"hint\": \"자동 마스크\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-segment\",\n      \"localized\": \"자동 분할\",\n      \"reload\": \"\",\n      \"hint\": \"자동 분할\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"autolaunch browser upon startup\",\n      \"localized\": \"시작 시 브라우저 자동 실행\",\n      \"reload\": \"\",\n      \"hint\": \"시작 시 브라우저 자동 실행\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"automatically determine rank\",\n      \"localized\": \"랭크 자동 결정\",\n      \"reload\": \"\",\n      \"hint\": \"랭크 자동 결정\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"autorank ratio\",\n      \"localized\": \"자동 랭크 비율\",\n      \"reload\": \"\",\n      \"hint\": \"자동 랭크 비율\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"available networks\",\n      \"localized\": \"사용 가능한 네트워크\",\n      \"reload\": \"\",\n      \"hint\": \"사용 가능한 네트워크\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"backend\",\n      \"localized\": \"백엔드\",\n      \"reload\": \"\",\n      \"hint\": \"백엔드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"backend storage\",\n      \"localized\": \"백엔드 저장소\",\n      \"reload\": \"\",\n      \"hint\": \"백엔드 저장소\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"background threshold\",\n      \"localized\": \"배경 임계값\",\n      \"reload\": \"\",\n      \"hint\": \"배경 임계값\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced\",\n      \"localized\": \"균형\",\n      \"reload\": \"\",\n      \"hint\": \"균형\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload cpu high watermark\",\n      \"localized\": \"균형 오프로드 CPU 상한선\",\n      \"reload\": \"\",\n      \"hint\": \"균형 오프로드 CPU 상한선\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload gpu high watermark\",\n      \"localized\": \"균형 오프로드 GPU 상한선\",\n      \"reload\": \"\",\n      \"hint\": \"균형 오프로드 GPU 상한선\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload gpu low watermark\",\n      \"localized\": \"균형 오프로드 GPU 하한선\",\n      \"reload\": \"\",\n      \"hint\": \"균형 오프로드 GPU 하한선\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"base\",\n      \"localized\": \"기본\",\n      \"reload\": \"\",\n      \"hint\": \"기본\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch caption\",\n      \"localized\": \"일괄 캡션\",\n      \"reload\": \"\",\n      \"hint\": \"일괄 캡션\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch input directory\",\n      \"localized\": \"일괄 입력 디렉토리\",\n      \"reload\": \"\",\n      \"hint\": \"일괄 입력 디렉토리\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch interogate\",\n      \"localized\": \"일괄 조사\",\n      \"reload\": \"\",\n      \"hint\": \"일괄 조사\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch interrogate\",\n      \"localized\": \"일괄 조사\",\n      \"reload\": \"\",\n      \"hint\": \"일괄 조사\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch mask directory\",\n      \"localized\": \"일괄 마스크 디렉토리\",\n      \"reload\": \"\",\n      \"hint\": \"일괄 마스크 디렉토리\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch matrix-matrix\",\n      \"localized\": \"일괄 행렬-행렬\",\n      \"reload\": \"\",\n      \"hint\": \"일괄 행렬-행렬\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch mode uses sequential seeds\",\n      \"localized\": \"일괄 모드 순차 시드 사용\",\n      \"reload\": \"\",\n      \"hint\": \"일괄 모드 순차 시드 사용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch output directory\",\n      \"localized\": \"일괄 출력 디렉토리\",\n      \"reload\": \"\",\n      \"hint\": \"일괄 출력 디렉토리\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch uses original name\",\n      \"localized\": \"일괄 원본 이름 사용\",\n      \"reload\": \"\",\n      \"hint\": \"일괄 원본 이름 사용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bdia ddim\",\n      \"localized\": \"BDIA DDIM\",\n      \"reload\": \"\",\n      \"hint\": \"BDIA DDIM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"before\",\n      \"localized\": \"이전\",\n      \"reload\": \"\",\n      \"hint\": \"이전\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"benchmark level\",\n      \"localized\": \"벤치마크 레벨\",\n      \"reload\": \"\",\n      \"hint\": \"벤치마크 레벨\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"benchmark steps\",\n      \"localized\": \"벤치마크 단계\",\n      \"reload\": \"\",\n      \"hint\": \"벤치마크 단계\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta block weight preset\",\n      \"localized\": \"베타 블록 가중치 프리셋\",\n      \"reload\": \"\",\n      \"hint\": \"베타 블록 가중치 프리셋\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta end\",\n      \"localized\": \"베타 끝\",\n      \"reload\": \"\",\n      \"hint\": \"베타 끝\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta ratio\",\n      \"localized\": \"베타 비율\",\n      \"reload\": \"\",\n      \"hint\": \"베타 비율\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta schedule\",\n      \"localized\": \"베타 스케줄\",\n      \"reload\": \"\",\n      \"hint\": \"베타 스케줄\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta start\",\n      \"localized\": \"베타 시작\",\n      \"reload\": \"\",\n      \"hint\": \"베타 시작\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bh1\",\n      \"localized\": \"bh1\",\n      \"reload\": \"\",\n      \"hint\": \"bh1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bh2\",\n      \"localized\": \"bh2\",\n      \"reload\": \"\",\n      \"hint\": \"bh2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"block\",\n      \"localized\": \"블록\",\n      \"reload\": \"\",\n      \"hint\": \"블록\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"block skip range\",\n      \"localized\": \"블록 건너뛰기 범위\",\n      \"reload\": \"\",\n      \"hint\": \"블록 건너뛰기 범위\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"blur\",\n      \"localized\": \"흐림\",\n      \"reload\": \"\",\n      \"hint\": \"흐림\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"body\",\n      \"localized\": \"본문\",\n      \"reload\": \"\",\n      \"hint\": \"본문\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"boost\",\n      \"localized\": \"부스트\",\n      \"reload\": \"\",\n      \"hint\": \"부스트\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"brightness\",\n      \"localized\": \"밝기\",\n      \"reload\": \"\",\n      \"hint\": \"밝기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cache model\",\n      \"localized\": \"모델 캐시\",\n      \"reload\": \"\",\n      \"hint\": \"모델 캐시\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cache text encoder results\",\n      \"localized\": \"텍스트 인코더 결과 캐시\",\n      \"reload\": \"\",\n      \"hint\": \"텍스트 인코더 결과 캐시\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"canny\",\n      \"localized\": \"캐니\",\n      \"reload\": \"\",\n      \"hint\": \"캐니\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"caption\",\n      \"localized\": \"캡션\",\n      \"reload\": \"\",\n      \"hint\": \"캡션\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"caption model\",\n      \"localized\": \"캡션 모델\",\n      \"reload\": \"\",\n      \"hint\": \"캡션 모델\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"center\",\n      \"localized\": \"중앙\",\n      \"reload\": \"\",\n      \"hint\": \"중앙\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change log\",\n      \"localized\": \"변경 기록\",\n      \"reload\": \"\",\n      \"hint\": \"변경 기록\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change model\",\n      \"localized\": \"모델 변경\",\n      \"reload\": \"\",\n      \"hint\": \"모델 변경\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change rate\",\n      \"localized\": \"변화율\",\n      \"reload\": \"\",\n      \"hint\": \"변화율\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change reference\",\n      \"localized\": \"참조 변경\",\n      \"reload\": \"\",\n      \"hint\": \"참조 변경\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change refiner\",\n      \"localized\": \"리파이너 변경\",\n      \"reload\": \"\",\n      \"hint\": \"리파이너 변경\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change vae\",\n      \"localized\": \"VAE 변경\",\n      \"reload\": \"\",\n      \"hint\": \"VAE 변경\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"channels last\",\n      \"localized\": \"채널 마지막\",\n      \"reload\": \"\",\n      \"hint\": \"채널 마지막\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"check alternative hash\",\n      \"localized\": \"대체 해시 확인\",\n      \"reload\": \"\",\n      \"hint\": \"대체 해시 확인\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"check for updates\",\n      \"localized\": \"업데이트 확인\",\n      \"reload\": \"\",\n      \"hint\": \"업데이트 확인\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"check status\",\n      \"localized\": \"상태 확인\",\n      \"reload\": \"\",\n      \"hint\": \"상태 확인\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"chunk size\",\n      \"localized\": \"청크 크기\",\n      \"reload\": \"\",\n      \"hint\": \"청크 크기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"civitai model type\",\n      \"localized\": \"Civitai 모델 유형\",\n      \"reload\": \"\",\n      \"hint\": \"Civitai 모델 유형\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"civitai token\",\n      \"localized\": \"Civitai 토큰\",\n      \"reload\": \"\",\n      \"hint\": \"Civitai 토큰\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ck flash attention\",\n      \"localized\": \"ck 플래시 어텐션\",\n      \"reload\": \"\",\n      \"hint\": \"ck 플래시 어텐션\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ckpt\",\n      \"localized\": \"ckpt\",\n      \"reload\": \"\",\n      \"hint\": \"ckpt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cleanup temporary folder on startup\",\n      \"localized\": \"시작 시 임시 폴더 정리\",\n      \"reload\": \"\",\n      \"hint\": \"시작 시 임시 폴더 정리\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip model\",\n      \"localized\": \"CLIP 모델\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP 모델\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: chunk size\",\n      \"localized\": \"CLIP: 청크 크기\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: 청크 크기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: default captioner\",\n      \"localized\": \"CLIP: 기본 캡션 생성기\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: 기본 캡션 생성기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: default mode\",\n      \"localized\": \"CLIP: 기본 모드\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: 기본 모드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: default model\",\n      \"localized\": \"CLIP: 기본 모델\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: 기본 모델\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: intermediate flavors\",\n      \"localized\": \"CLIP: 중간 플레이버\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: 중간 플레이버\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: max flavors\",\n      \"localized\": \"CLIP: 최대 플레이버\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: 최대 플레이버\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: max length\",\n      \"localized\": \"CLIP: 최대 길이\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: 최대 길이\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: min flavors\",\n      \"localized\": \"CLIP: 최소 플레이버\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: 최소 플레이버\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: min length\",\n      \"localized\": \"CLIP: 최소 길이\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: 최소 길이\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: num beams\",\n      \"localized\": \"CLIP: 빔 개수\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: 빔 개수\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"close\",\n      \"localized\": \"닫기\",\n      \"reload\": \"\",\n      \"hint\": \"닫기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cmsi\",\n      \"localized\": \"cmsi\",\n      \"reload\": \"\",\n      \"hint\": \"cmsi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn end\",\n      \"localized\": \"CN 끝\",\n      \"reload\": \"\",\n      \"hint\": \"CN 끝\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn mode\",\n      \"localized\": \"CN 모드\",\n      \"reload\": \"\",\n      \"hint\": \"CN 모드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn start\",\n      \"localized\": \"CN 시작\",\n      \"reload\": \"\",\n      \"hint\": \"CN 시작\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn strength\",\n      \"localized\": \"CN 강도\",\n      \"reload\": \"\",\n      \"hint\": \"CN 강도\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn tiles\",\n      \"localized\": \"CN 타일\",\n      \"reload\": \"\",\n      \"hint\": \"CN 타일\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"coarse\",\n      \"localized\": \"거친\",\n      \"reload\": \"\",\n      \"hint\": \"거친\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color\",\n      \"localized\": \"색상\",\n      \"reload\": \"\",\n      \"hint\": \"색상\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color grading\",\n      \"localized\": \"색 보정\",\n      \"reload\": \"\",\n      \"hint\": \"색 보정\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color map\",\n      \"localized\": \"색상 맵\",\n      \"reload\": \"\",\n      \"hint\": \"색상 맵\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color variation\",\n      \"localized\": \"색상 변화\",\n      \"reload\": \"\",\n      \"hint\": \"색상 변화\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"colormap\",\n      \"localized\": \"컬러맵\",\n      \"reload\": \"\",\n      \"hint\": \"컬러맵\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"columns\",\n      \"localized\": \"열\",\n      \"reload\": \"\",\n      \"hint\": \"열\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"comma\",\n      \"localized\": \"쉼표\",\n      \"reload\": \"\",\n      \"hint\": \"쉼표\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"comma separated list with optional strength per lora\",\n      \"localized\": \"LoRA별 선택적 강도와 함께 쉼표로 구분된 목록\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA별 선택적 강도와 함께 쉼표로 구분된 목록\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"compact view\",\n      \"localized\": \"간결한 보기\",\n      \"reload\": \"\",\n      \"hint\": \"간결한 보기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"compel\",\n      \"localized\": \"컴펠\",\n      \"reload\": \"\",\n      \"hint\": \"컴펠\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"composite\",\n      \"localized\": \"합성\",\n      \"reload\": \"\",\n      \"hint\": \"합성\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"compress ratio\",\n      \"localized\": \"압축률\",\n      \"reload\": \"\",\n      \"hint\": \"압축률\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"concept tokens\",\n      \"localized\": \"개념 토큰\",\n      \"reload\": \"\",\n      \"hint\": \"개념 토큰\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context\",\n      \"localized\": \"컨텍스트\",\n      \"reload\": \"\",\n      \"hint\": \"컨텍스트\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context after\",\n      \"localized\": \"이후 컨텍스트\",\n      \"reload\": \"\",\n      \"hint\": \"이후 컨텍스트\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context before\",\n      \"localized\": \"이전 컨텍스트\",\n      \"reload\": \"\",\n      \"hint\": \"이전 컨텍스트\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context mask\",\n      \"localized\": \"컨텍스트 마스크\",\n      \"reload\": \"\",\n      \"hint\": \"컨텍스트 마스크\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"contrast\",\n      \"localized\": \"대비\",\n      \"reload\": \"\",\n      \"hint\": \"대비\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control factor\",\n      \"localized\": \"제어 계수\",\n      \"reload\": \"\",\n      \"hint\": \"제어 계수\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control override denoise strength\",\n      \"localized\": \"제어 디노이즈 강도 재정의\",\n      \"reload\": \"\",\n      \"hint\": \"제어 디노이즈 강도 재정의\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control preprocess input images\",\n      \"localized\": \"입력 이미지 제어 전처리\",\n      \"reload\": \"\",\n      \"hint\": \"입력 이미지 제어 전처리\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 1\",\n      \"localized\": \"Control-LLLITE 유닛 1\",\n      \"reload\": \"\",\n      \"hint\": \"Control-LLLITE 유닛 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 2\",\n      \"localized\": \"Control-LLLITE 유닛 2\",\n      \"reload\": \"\",\n      \"hint\": \"Control-LLLITE 유닛 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 3\",\n      \"localized\": \"Control-LLLITE 유닛 3\",\n      \"reload\": \"\",\n      \"hint\": \"Control-LLLITE 유닛 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 4\",\n      \"localized\": \"Control-LLLITE 유닛 4\",\n      \"reload\": \"\",\n      \"hint\": \"Control-LLLITE 유닛 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet\",\n      \"localized\": \"ControlNet\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 1\",\n      \"localized\": \"ControlNet 유닛 1\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet 유닛 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 2\",\n      \"localized\": \"ControlNet 유닛 2\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet 유닛 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 3\",\n      \"localized\": \"ControlNet 유닛 3\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet 유닛 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 4\",\n      \"localized\": \"ControlNet 유닛 4\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet 유닛 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs\",\n      \"localized\": \"ControlNet-XS\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet-XS\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 1\",\n      \"localized\": \"ControlNet-XS 유닛 1\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet-XS 유닛 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 2\",\n      \"localized\": \"ControlNet-XS 유닛 2\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet-XS 유닛 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 3\",\n      \"localized\": \"ControlNet-XS 유닛 3\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet-XS 유닛 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 4\",\n      \"localized\": \"ControlNet-XS 유닛 4\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet-XS 유닛 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"correction mode\",\n      \"localized\": \"보정 모드\",\n      \"reload\": \"\",\n      \"hint\": \"보정 모드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine background\",\n      \"localized\": \"코사인 배경\",\n      \"reload\": \"\",\n      \"hint\": \"코사인 배경\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale\",\n      \"localized\": \"코사인 스케일\",\n      \"reload\": \"\",\n      \"hint\": \"코사인 스케일\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale 1\",\n      \"localized\": \"코사인 스케일 1\",\n      \"reload\": \"\",\n      \"hint\": \"코사인 스케일 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale 2\",\n      \"localized\": \"코사인 스케일 2\",\n      \"reload\": \"\",\n      \"hint\": \"코사인 스케일 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale 3\",\n      \"localized\": \"코사인 스케일 3\",\n      \"reload\": \"\",\n      \"hint\": \"코사인 스케일 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"create image info text file\",\n      \"localized\": \"이미지 정보 텍스트 파일 생성\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 정보 텍스트 파일 생성\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"create video\",\n      \"localized\": \"비디오 생성\",\n      \"reload\": \"\",\n      \"hint\": \"비디오 생성\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"create zip archive\",\n      \"localized\": \"ZIP 압축 파일 생성\",\n      \"reload\": \"\",\n      \"hint\": \"ZIP 압축 파일 생성\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cross-attention\",\n      \"localized\": \"교차 어텐션\",\n      \"reload\": \"\",\n      \"hint\": \"교차 어텐션\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cudagraphs\",\n      \"localized\": \"CUDAGraphs\",\n      \"reload\": \"\",\n      \"hint\": \"CUDAGraphs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cudamallocasync\",\n      \"localized\": \"cudaMallocAsync\",\n      \"reload\": \"\",\n      \"hint\": \"cudaMallocAsync\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"custom pipeline\",\n      \"localized\": \"사용자 지정 파이프라인\",\n      \"reload\": \"\",\n      \"hint\": \"사용자 지정 파이프라인\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dark\",\n      \"localized\": \"어둡게\",\n      \"reload\": \"\",\n      \"hint\": \"어둡게\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dc solver\",\n      \"localized\": \"DC 솔버\",\n      \"reload\": \"\",\n      \"hint\": \"DC 솔버\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ddpm\",\n      \"localized\": \"DDPM\",\n      \"reload\": \"\",\n      \"hint\": \"DDPM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"debug info\",\n      \"localized\": \"디버그 정보\",\n      \"reload\": \"\",\n      \"hint\": \"디버그 정보\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"decode\",\n      \"localized\": \"디코드\",\n      \"reload\": \"\",\n      \"hint\": \"디코드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"decode chunks\",\n      \"localized\": \"청크 디코드\",\n      \"reload\": \"\",\n      \"hint\": \"청크 디코드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deep-cache\",\n      \"localized\": \"딥-캐시\",\n      \"reload\": \"\",\n      \"hint\": \"딥-캐시\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru\",\n      \"localized\": \"딥부루\",\n      \"reload\": \"\",\n      \"hint\": \"딥부루\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: escape brackets\",\n      \"localized\": \"딥부루: 괄호 이스케이프\",\n      \"reload\": \"\",\n      \"hint\": \"딥부루: 괄호 이스케이프\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: exclude tags\",\n      \"localized\": \"딥부루: 태그 제외\",\n      \"reload\": \"\",\n      \"hint\": \"딥부루: 태그 제외\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: include scores in results\",\n      \"localized\": \"딥부루: 결과에 점수 포함\",\n      \"reload\": \"\",\n      \"hint\": \"딥부루: 결과에 점수 포함\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: max tags\",\n      \"localized\": \"딥부루: 최대 태그 수\",\n      \"reload\": \"\",\n      \"hint\": \"딥부루: 최대 태그 수\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: score threshold\",\n      \"localized\": \"딥부루: 점수 임계값\",\n      \"reload\": \"\",\n      \"hint\": \"딥부루: 점수 임계값\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: sort alphabetically\",\n      \"localized\": \"딥부루: 알파벳순 정렬\",\n      \"reload\": \"\",\n      \"hint\": \"딥부루: 알파벳순 정렬\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: use spaces for tags\",\n      \"localized\": \"딥부루: 태그에 공백 사용\",\n      \"reload\": \"\",\n      \"hint\": \"딥부루: 태그에 공백 사용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepcache cache interval\",\n      \"localized\": \"딥캐시 캐시 간격\",\n      \"reload\": \"\",\n      \"hint\": \"딥캐시 캐시 간격\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"default\",\n      \"localized\": \"기본\",\n      \"reload\": \"\",\n      \"hint\": \"기본\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deis\",\n      \"localized\": \"deis\",\n      \"reload\": \"\",\n      \"hint\": \"deis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"denoising batch size\",\n      \"localized\": \"노이즈 제거 배치 크기\",\n      \"reload\": \"\",\n      \"hint\": \"노이즈 제거 배치 크기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"denoising steps\",\n      \"localized\": \"노이즈 제거 단계\",\n      \"reload\": \"\",\n      \"hint\": \"노이즈 제거 단계\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth and normal\",\n      \"localized\": \"깊이 및 노멀\",\n      \"reload\": \"\",\n      \"hint\": \"깊이 및 노멀\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth anything\",\n      \"localized\": \"뎁스 애니씽\",\n      \"reload\": \"\",\n      \"hint\": \"뎁스 애니씽\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth map\",\n      \"localized\": \"깊이 맵\",\n      \"reload\": \"\",\n      \"hint\": \"깊이 맵\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth threshold\",\n      \"localized\": \"깊이 임계값\",\n      \"reload\": \"\",\n      \"hint\": \"깊이 임계값\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"description\",\n      \"localized\": \"설명\",\n      \"reload\": \"\",\n      \"hint\": \"설명\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"details\",\n      \"localized\": \"세부 정보\",\n      \"reload\": \"\",\n      \"hint\": \"세부 정보\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deterministic mode\",\n      \"localized\": \"결정론적 모드\",\n      \"reload\": \"\",\n      \"hint\": \"결정론적 모드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"device info\",\n      \"localized\": \"장치 정보\",\n      \"reload\": \"\",\n      \"hint\": \"장치 정보\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"diffusers\",\n      \"localized\": \"디퓨저스\",\n      \"reload\": \"\",\n      \"hint\": \"디퓨저스\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dilate\",\n      \"localized\": \"팽창\",\n      \"reload\": \"\",\n      \"hint\": \"팽창\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dilate tau\",\n      \"localized\": \"팽창 타우\",\n      \"reload\": \"\",\n      \"hint\": \"팽창 타우\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"directml retry ops for nan\",\n      \"localized\": \"DirectML NaN 재시도 연산\",\n      \"reload\": \"\",\n      \"hint\": \"DirectML NaN 재시도 연산\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"directory for temporary images; leave empty for default\",\n      \"localized\": \"임시 이미지 디렉토리; 기본값은 비워두세요\",\n      \"reload\": \"\",\n      \"hint\": \"임시 이미지 디렉토리; 기본값은 비워두세요\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disable accelerate\",\n      \"localized\": \"accelerate 비활성화\",\n      \"reload\": \"\",\n      \"hint\": \"accelerate 비활성화\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disable conditional batching\",\n      \"localized\": \"조건부 배치 비활성화\",\n      \"reload\": \"\",\n      \"hint\": \"조건부 배치 비활성화\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disabled\",\n      \"localized\": \"비활성화됨\",\n      \"reload\": \"\",\n      \"hint\": \"비활성화됨\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"discard penultimate sigma\",\n      \"localized\": \"끝에서 두 번째 시그마 버리기\",\n      \"reload\": \"\",\n      \"hint\": \"끝에서 두 번째 시그마 버리기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"distance threshold\",\n      \"localized\": \"거리 임계값\",\n      \"reload\": \"\",\n      \"hint\": \"거리 임계값\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"do not change selected model when reading generation parameters\",\n      \"localized\": \"생성 매개변수 읽기 시 선택된 모델 변경 안함\",\n      \"reload\": \"\",\n      \"hint\": \"생성 매개변수 읽기 시 선택된 모델 변경 안함\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"do not display video output in ui\",\n      \"localized\": \"UI에 비디오 출력 표시 안함\",\n      \"reload\": \"\",\n      \"hint\": \"UI에 비디오 출력 표시 안함\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"down\",\n      \"localized\": \"아래로\",\n      \"reload\": \"\",\n      \"hint\": \"아래로\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download\",\n      \"localized\": \"다운로드\",\n      \"reload\": \"\",\n      \"hint\": \"다운로드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download model\",\n      \"localized\": \"모델 다운로드\",\n      \"reload\": \"\",\n      \"hint\": \"모델 다운로드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download path\",\n      \"localized\": \"다운로드 경로\",\n      \"reload\": \"\",\n      \"hint\": \"다운로드 경로\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download updates\",\n      \"localized\": \"업데이트 다운로드\",\n      \"reload\": \"\",\n      \"hint\": \"업데이트 다운로드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"downscale high resolution live previews\",\n      \"localized\": \"고해상도 라이브 미리보기 축소\",\n      \"reload\": \"\",\n      \"hint\": \"고해상도 라이브 미리보기 축소\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm sde\",\n      \"localized\": \"dpm sde\",\n      \"reload\": \"\",\n      \"hint\": \"dpm sde\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++\",\n      \"localized\": \"dpm++\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 1s\",\n      \"localized\": \"dpm++ 1s\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 1s\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m\",\n      \"localized\": \"dpm++ 2m\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 2m\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m edm\",\n      \"localized\": \"dpm++ 2m edm\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 2m edm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m inverse\",\n      \"localized\": \"dpm++ 2m inverse\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 2m inverse\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m sde\",\n      \"localized\": \"dpm++ 2m sde\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 2m sde\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 3m\",\n      \"localized\": \"dpm++ 3m\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 3m\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 3m inverse\",\n      \"localized\": \"dpm++ 3m inverse\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 3m inverse\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ cosine\",\n      \"localized\": \"dpm++ cosine\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ cosine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ inverse\",\n      \"localized\": \"dpm++ inverse\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ inverse\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ sde\",\n      \"localized\": \"dpm++ sde\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ sde\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2 flowmatch\",\n      \"localized\": \"dpm2 flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2 flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2m flowmatch\",\n      \"localized\": \"dpm2++ 2m flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 2m flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2m sde flowmatch\",\n      \"localized\": \"dpm2++ 2m sde flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 2m sde flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2s flowmatch\",\n      \"localized\": \"dpm2++ 2s flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 2s flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 3m sde flowmatch\",\n      \"localized\": \"dpm2++ 3m sde flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 3m sde flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ sde flowmatch\",\n      \"localized\": \"dpm2++ sde flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ sde flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2a flowmatch\",\n      \"localized\": \"dpm2a flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2a flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"draw legend\",\n      \"localized\": \"범례 그리기\",\n      \"reload\": \"\",\n      \"hint\": \"범례 그리기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dropdown\",\n      \"localized\": \"드롭다운\",\n      \"reload\": \"\",\n      \"hint\": \"드롭다운\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"duration\",\n      \"localized\": \"기간\",\n      \"reload\": \"\",\n      \"hint\": \"기간\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dwpose\",\n      \"localized\": \"dwpose\",\n      \"reload\": \"\",\n      \"hint\": \"dwpose\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic\",\n      \"localized\": \"동적\",\n      \"reload\": \"\",\n      \"hint\": \"동적\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention\",\n      \"localized\": \"동적 어텐션\",\n      \"reload\": \"\",\n      \"hint\": \"동적 어텐션\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention slicing rate in gb\",\n      \"localized\": \"GB 단위 동적 어텐션 슬라이싱 속도\",\n      \"reload\": \"\",\n      \"hint\": \"GB 단위 동적 어텐션 슬라이싱 속도\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention trigger rate in gb\",\n      \"localized\": \"GB 단위 동적 어텐션 트리거 속도\",\n      \"reload\": \"\",\n      \"hint\": \"GB 단위 동적 어텐션 트리거 속도\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edge\",\n      \"localized\": \"가장자리\",\n      \"reload\": \"\",\n      \"hint\": \"가장자리\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edit start\",\n      \"localized\": \"편집 시작\",\n      \"reload\": \"\",\n      \"hint\": \"편집 시작\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edit stop\",\n      \"localized\": \"편집 중지\",\n      \"reload\": \"\",\n      \"hint\": \"편집 중지\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"embedded metadata\",\n      \"localized\": \"임베디드 메타데이터\",\n      \"reload\": \"\",\n      \"hint\": \"임베디드 메타데이터\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable embeddings support\",\n      \"localized\": \"임베딩 지원 활성화\",\n      \"reload\": \"\",\n      \"hint\": \"임베딩 지원 활성화\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable file wildcards support\",\n      \"localized\": \"파일 와일드카드 지원 활성화\",\n      \"reload\": \"\",\n      \"hint\": \"파일 와일드카드 지원 활성화\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable freeu\",\n      \"localized\": \"FreeU 활성화\",\n      \"reload\": \"\",\n      \"hint\": \"FreeU 활성화\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable teacache\",\n      \"localized\": \"TeaCache 활성화\",\n      \"reload\": \"\",\n      \"hint\": \"TeaCache 활성화\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable tonemap\",\n      \"localized\": \"톤맵 활성화\",\n      \"reload\": \"\",\n      \"hint\": \"톤맵 활성화\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable use of reference models\",\n      \"localized\": \"참조 모델 사용 활성화\",\n      \"reload\": \"\",\n      \"hint\": \"참조 모델 사용 활성화\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enabled\",\n      \"localized\": \"활성화됨\",\n      \"reload\": \"\",\n      \"hint\": \"활성화됨\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"encoder\",\n      \"localized\": \"인코더\",\n      \"reload\": \"\",\n      \"hint\": \"인코더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"end\",\n      \"localized\": \"끝\",\n      \"reload\": \"\",\n      \"hint\": \"끝\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enhance prompt\",\n      \"localized\": \"프롬프트 향상\",\n      \"reload\": \"\",\n      \"hint\": \"프롬프트 향상\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ensemble size\",\n      \"localized\": \"앙상블 크기\",\n      \"reload\": \"\",\n      \"hint\": \"앙상블 크기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"epsilon\",\n      \"localized\": \"엡실론\",\n      \"reload\": \"\",\n      \"hint\": \"엡실론\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"erode\",\n      \"localized\": \"침식\",\n      \"reload\": \"\",\n      \"hint\": \"침식\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"erode size\",\n      \"localized\": \"침식 크기\",\n      \"reload\": \"\",\n      \"hint\": \"침식 크기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"eta\",\n      \"localized\": \"에타\",\n      \"reload\": \"\",\n      \"hint\": \"에타\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler\",\n      \"localized\": \"오일러\",\n      \"reload\": \"\",\n      \"hint\": \"오일러\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler edm\",\n      \"localized\": \"오일러 edm\",\n      \"reload\": \"\",\n      \"hint\": \"오일러 edm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler flowmatch\",\n      \"localized\": \"오일러 flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"오일러 flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler sgm\",\n      \"localized\": \"오일러 sgm\",\n      \"reload\": \"\",\n      \"hint\": \"오일러 sgm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.cpu\",\n      \"localized\": \"executionprovider.cpu\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.cpu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.cuda\",\n      \"localized\": \"executionprovider.cuda\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.cuda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.directml\",\n      \"localized\": \"executionprovider.directml\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.directml\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.migraphx\",\n      \"localized\": \"executionprovider.migraphx\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.migraphx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.openvino\",\n      \"localized\": \"executionprovider.openvino\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.openvino\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.rocm\",\n      \"localized\": \"executionprovider.rocm\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.rocm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"expandable segments\",\n      \"localized\": \"확장 가능한 세그먼트\",\n      \"reload\": \"\",\n      \"hint\": \"확장 가능한 세그먼트\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"exponential\",\n      \"localized\": \"지수\",\n      \"reload\": \"\",\n      \"hint\": \"지수\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"exposure\",\n      \"localized\": \"노출\",\n      \"reload\": \"\",\n      \"hint\": \"노출\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"extra noise multiplier for img2img\",\n      \"localized\": \"img2img용 추가 노이즈 승수\",\n      \"reload\": \"\",\n      \"hint\": \"img2img용 추가 노이즈 승수\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"extract lora\",\n      \"localized\": \"LoRA 추출\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA 추출\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"face\",\n      \"localized\": \"얼굴\",\n      \"reload\": \"\",\n      \"hint\": \"얼굴\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"face confidence\",\n      \"localized\": \"얼굴 신뢰도\",\n      \"reload\": \"\",\n      \"hint\": \"얼굴 신뢰도\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"faceid model\",\n      \"localized\": \"FaceID 모델\",\n      \"reload\": \"\",\n      \"hint\": \"FaceID 모델\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fall-off exponent (lower=higher detail)\",\n      \"localized\": \"감쇠 지수 (낮을수록 디테일 높음)\",\n      \"reload\": \"\",\n      \"hint\": \"감쇠 지수 (낮을수록 디테일 높음)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"false\",\n      \"localized\": \"거짓\",\n      \"reload\": \"\",\n      \"hint\": \"거짓\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fast\",\n      \"localized\": \"빠르게\",\n      \"reload\": \"\",\n      \"hint\": \"빠르게\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"file or folder with user-defined styles\",\n      \"localized\": \"사용자 정의 스타일 파일 또는 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"사용자 정의 스타일 파일 또는 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"filename\",\n      \"localized\": \"파일 이름\",\n      \"reload\": \"\",\n      \"hint\": \"파일 이름\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"first-block cache enabled\",\n      \"localized\": \"첫 블록 캐시 활성화\",\n      \"reload\": \"\",\n      \"hint\": \"첫 블록 캐시 활성화\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fixed unet precision\",\n      \"localized\": \"고정된 UNet 정밀도\",\n      \"reload\": \"\",\n      \"hint\": \"고정된 UNet 정밀도\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flash attention\",\n      \"localized\": \"플래시 어텐션\",\n      \"reload\": \"\",\n      \"hint\": \"플래시 어텐션\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flavors\",\n      \"localized\": \"플레이버\",\n      \"reload\": \"\",\n      \"hint\": \"플레이버\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flow shift\",\n      \"localized\": \"흐름 이동\",\n      \"reload\": \"\",\n      \"hint\": \"흐름 이동\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder\",\n      \"localized\": \"폴더\",\n      \"reload\": \"\",\n      \"hint\": \"폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for control generate\",\n      \"localized\": \"제어 생성용 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"제어 생성용 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for control grids\",\n      \"localized\": \"제어 그리드용 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"제어 그리드용 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for disk offload\",\n      \"localized\": \"디스크 오프로드용 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"디스크 오프로드용 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for huggingface cache\",\n      \"localized\": \"Hugging Face 캐시 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"Hugging Face 캐시 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for image generate\",\n      \"localized\": \"이미지 생성용 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 생성용 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for img2img grids\",\n      \"localized\": \"img2img 그리드용 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"img2img 그리드용 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for init images\",\n      \"localized\": \"초기 이미지용 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"초기 이미지용 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for manually saved images\",\n      \"localized\": \"수동 저장 이미지용 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"수동 저장 이미지용 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for onnx cached models\",\n      \"localized\": \"ONNX 캐시 모델 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"ONNX 캐시 모델 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for onnx conversion\",\n      \"localized\": \"ONNX 변환용 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"ONNX 변환용 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for openvino cache\",\n      \"localized\": \"OpenVINO 캐시 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"OpenVINO 캐시 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for processed images\",\n      \"localized\": \"처리된 이미지 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"처리된 이미지 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for text generate\",\n      \"localized\": \"텍스트 생성용 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"텍스트 생성용 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for tunable ops cache\",\n      \"localized\": \"튜닝 가능한 Ops 캐시 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"튜닝 가능한 Ops 캐시 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for txt2img grids\",\n      \"localized\": \"txt2img 그리드용 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"txt2img 그리드용 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for videos\",\n      \"localized\": \"동영상 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"동영상 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with bsrgan models\",\n      \"localized\": \"BSRGAN 모델 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"BSRGAN 모델 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with chainner models\",\n      \"localized\": \"Chainner 모델 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"Chainner 모델 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with clip models\",\n      \"localized\": \"CLIP 모델 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP 모델 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with codeformer models\",\n      \"localized\": \"CodeFormer 모델 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"CodeFormer 모델 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with control models\",\n      \"localized\": \"제어 모델 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"제어 모델 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with esrgan models\",\n      \"localized\": \"ESRGAN 모델 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"ESRGAN 모델 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with gfpgan models\",\n      \"localized\": \"GFPGAN 모델 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"GFPGAN 모델 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with huggingface models\",\n      \"localized\": \"Hugging Face 모델 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"Hugging Face 모델 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with hypernetwork models\",\n      \"localized\": \"하이퍼네트워크 모델 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"하이퍼네트워크 모델 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with ldsr models\",\n      \"localized\": \"LDSR 모델 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"LDSR 모델 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with lora network(s)\",\n      \"localized\": \"LoRA 네트워크(들) 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA 네트워크(들) 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with realesrgan models\",\n      \"localized\": \"RealESRGAN 모델 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"RealESRGAN 모델 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with scunet models\",\n      \"localized\": \"SCUNet 모델 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"SCUNet 모델 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with stable diffusion models\",\n      \"localized\": \"Stable Diffusion 모델 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Diffusion 모델 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with swinir models\",\n      \"localized\": \"SwinIR 모델 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"SwinIR 모델 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with text encoder files\",\n      \"localized\": \"텍스트 인코더 파일 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"텍스트 인코더 파일 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with textual inversion embeddings\",\n      \"localized\": \"텍스트 인버전 임베딩 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"텍스트 인버전 임베딩 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with unet files\",\n      \"localized\": \"UNet 파일 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"UNet 파일 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with user-defined wildcards\",\n      \"localized\": \"사용자 정의 와일드카드 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"사용자 정의 와일드카드 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with vae files\",\n      \"localized\": \"VAE 파일 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"VAE 파일 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with yolo models\",\n      \"localized\": \"YOLO 모델 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"YOLO 모델 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font color\",\n      \"localized\": \"글꼴 색상\",\n      \"reload\": \"\",\n      \"hint\": \"글꼴 색상\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font file\",\n      \"localized\": \"글꼴 파일\",\n      \"reload\": \"\",\n      \"hint\": \"글꼴 파일\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font size\",\n      \"localized\": \"글꼴 크기\",\n      \"reload\": \"\",\n      \"hint\": \"글꼴 크기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"force model eval\",\n      \"localized\": \"모델 평가 강제\",\n      \"reload\": \"\",\n      \"hint\": \"모델 평가 강제\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"foreground threshold\",\n      \"localized\": \"전경 임계값\",\n      \"reload\": \"\",\n      \"hint\": \"전경 임계값\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fp4\",\n      \"localized\": \"FP4\",\n      \"reload\": \"\",\n      \"hint\": \"FP4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"frame change sensitivity\",\n      \"localized\": \"프레임 변경 민감도\",\n      \"reload\": \"\",\n      \"hint\": \"프레임 변경 민감도\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"frames\",\n      \"localized\": \"프레임\",\n      \"reload\": \"\",\n      \"hint\": \"프레임\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeinit\",\n      \"localized\": \"FreeInit\",\n      \"reload\": \"\",\n      \"hint\": \"FreeInit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeu enabled\",\n      \"localized\": \"FreeU 활성화\",\n      \"reload\": \"\",\n      \"hint\": \"FreeU 활성화\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeu preset\",\n      \"localized\": \"FreeU 사전 설정\",\n      \"reload\": \"\",\n      \"hint\": \"FreeU 사전 설정\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"full vae\",\n      \"localized\": \"전체 VAE\",\n      \"reload\": \"\",\n      \"hint\": \"전체 VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"full-depth cudnn benchmark\",\n      \"localized\": \"전체 깊이 cuDNN 벤치마크\",\n      \"reload\": \"\",\n      \"hint\": \"전체 깊이 cuDNN 벤치마크\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fuse strength\",\n      \"localized\": \"융합 강도\",\n      \"reload\": \"\",\n      \"hint\": \"융합 강도\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fused projections\",\n      \"localized\": \"융합된 투영\",\n      \"reload\": \"\",\n      \"hint\": \"융합된 투영\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gamma\",\n      \"localized\": \"감마\",\n      \"reload\": \"\",\n      \"hint\": \"감마\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gamma corrected\",\n      \"localized\": \"감마 보정\",\n      \"reload\": \"\",\n      \"hint\": \"감마 보정\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gate step\",\n      \"localized\": \"게이트 스텝\",\n      \"reload\": \"\",\n      \"hint\": \"게이트 스텝\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gc threshold\",\n      \"localized\": \"GC 임계값\",\n      \"reload\": \"\",\n      \"hint\": \"GC 임계값\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"get changelog\",\n      \"localized\": \"변경 로그 가져오기\",\n      \"reload\": \"\",\n      \"hint\": \"변경 로그 가져오기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gpu\",\n      \"localized\": \"GPU\",\n      \"reload\": \"\",\n      \"hint\": \"GPU\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gradient\",\n      \"localized\": \"그라디언트\",\n      \"reload\": \"\",\n      \"hint\": \"그라디언트\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid background color\",\n      \"localized\": \"그리드 배경색\",\n      \"reload\": \"\",\n      \"hint\": \"그리드 배경색\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid margins\",\n      \"localized\": \"그리드 여백\",\n      \"reload\": \"\",\n      \"hint\": \"그리드 여백\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid sections:\",\n      \"localized\": \"그리드 섹션:\",\n      \"reload\": \"\",\n      \"hint\": \"그리드 섹션:\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"group size\",\n      \"localized\": \"그룹 크기\",\n      \"reload\": \"\",\n      \"hint\": \"그룹 크기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance\",\n      \"localized\": \"안내\",\n      \"reload\": \"\",\n      \"hint\": \"안내\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance start\",\n      \"localized\": \"안내 시작\",\n      \"reload\": \"\",\n      \"hint\": \"안내 시작\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance stop\",\n      \"localized\": \"안내 중지\",\n      \"reload\": \"\",\n      \"hint\": \"안내 중지\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance strength\",\n      \"localized\": \"안내 강도\",\n      \"reload\": \"\",\n      \"hint\": \"안내 강도\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hands\",\n      \"localized\": \"손\",\n      \"reload\": \"\",\n      \"hint\": \"손\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hdr range\",\n      \"localized\": \"HDR 범위\",\n      \"reload\": \"\",\n      \"hint\": \"HDR 범위\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hed\",\n      \"localized\": \"HED\",\n      \"reload\": \"\",\n      \"hint\": \"HED\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height  after\",\n      \"localized\": \"높이 (후)\",\n      \"reload\": \"\",\n      \"hint\": \"높이 (후)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height  before\",\n      \"localized\": \"높이 (전)\",\n      \"reload\": \"\",\n      \"hint\": \"높이 (전)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height  mask\",\n      \"localized\": \"높이 마스크\",\n      \"reload\": \"\",\n      \"hint\": \"높이 마스크\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"heun\",\n      \"localized\": \"Heun\",\n      \"reload\": \"\",\n      \"hint\": \"Heun\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"heun flowmatch\",\n      \"localized\": \"Heun 플로우 매치\",\n      \"reload\": \"\",\n      \"hint\": \"Heun 플로우 매치\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hidet\",\n      \"localized\": \"Hidet\",\n      \"reload\": \"\",\n      \"hint\": \"Hidet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"high threshold\",\n      \"localized\": \"높은 임계값\",\n      \"reload\": \"\",\n      \"hint\": \"높은 임계값\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hires pass only\",\n      \"localized\": \"고해상도 패스만\",\n      \"reload\": \"\",\n      \"hint\": \"고해상도 패스만\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hq init latents\",\n      \"localized\": \"HQ 초기 잠재\",\n      \"reload\": \"\",\n      \"hint\": \"HQ 초기 잠재\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hue\",\n      \"localized\": \"색조\",\n      \"reload\": \"\",\n      \"hint\": \"색조\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"huggingface mirror\",\n      \"localized\": \"Hugging Face 미러\",\n      \"reload\": \"\",\n      \"hint\": \"Hugging Face 미러\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"huggingface token\",\n      \"localized\": \"Hugging Face 토큰\",\n      \"reload\": \"\",\n      \"hint\": \"Hugging Face 토큰\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hunyuan\",\n      \"localized\": \"훈위안\",\n      \"reload\": \"\",\n      \"hint\": \"훈위안\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"il\",\n      \"localized\": \"il\",\n      \"reload\": \"\",\n      \"hint\": \"il\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image height\",\n      \"localized\": \"이미지 높이\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 높이\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image quality\",\n      \"localized\": \"이미지 품질\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 품질\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image transparent color fill\",\n      \"localized\": \"이미지 투명 색상 채우기\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 투명 색상 채우기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image watermark file\",\n      \"localized\": \"이미지 워터마크 파일\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 워터마크 파일\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image watermark position\",\n      \"localized\": \"이미지 워터마크 위치\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 워터마크 위치\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image width\",\n      \"localized\": \"이미지 너비\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 너비\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include images\",\n      \"localized\": \"이미지 포함\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 포함\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include main grid\",\n      \"localized\": \"메인 그리드 포함\",\n      \"reload\": \"\",\n      \"hint\": \"메인 그리드 포함\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include mask in outputs\",\n      \"localized\": \"출력에 마스크 포함\",\n      \"reload\": \"\",\n      \"hint\": \"출력에 마스크 포함\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include original image\",\n      \"localized\": \"원본 이미지 포함\",\n      \"reload\": \"\",\n      \"hint\": \"원본 이미지 포함\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include scores in results when available\",\n      \"localized\": \"사용 가능한 경우 결과에 점수 포함\",\n      \"reload\": \"\",\n      \"hint\": \"사용 가능한 경우 결과에 점수 포함\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include sub grids\",\n      \"localized\": \"하위 그리드 포함\",\n      \"reload\": \"\",\n      \"hint\": \"하위 그리드 포함\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inductor\",\n      \"localized\": \"인덕터\",\n      \"reload\": \"\",\n      \"hint\": \"인덕터\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"info\",\n      \"localized\": \"정보\",\n      \"reload\": \"\",\n      \"hint\": \"정보\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"info object\",\n      \"localized\": \"정보 객체\",\n      \"reload\": \"\",\n      \"hint\": \"정보 객체\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpaint\",\n      \"localized\": \"인페인트\",\n      \"reload\": \"\",\n      \"hint\": \"인페인트\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpaint masked only\",\n      \"localized\": \"마스크된 부분만 인페인트\",\n      \"reload\": \"\",\n      \"hint\": \"마스크된 부분만 인페인트\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpainting include greyscale mask in results\",\n      \"localized\": \"인페인팅 결과에 회색조 마스크 포함\",\n      \"reload\": \"\",\n      \"hint\": \"인페인팅 결과에 회색조 마스크 포함\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpainting include masked composite in results\",\n      \"localized\": \"인페인팅 결과에 마스크 합성 이미지 포함\",\n      \"reload\": \"\",\n      \"hint\": \"인페인팅 결과에 마스크 합성 이미지 포함\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"input model\",\n      \"localized\": \"입력 모델\",\n      \"reload\": \"\",\n      \"hint\": \"입력 모델\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"intermediates\",\n      \"localized\": \"중간 결과물\",\n      \"reload\": \"\",\n      \"hint\": \"중간 결과물\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"interpolate frames\",\n      \"localized\": \"프레임 보간\",\n      \"reload\": \"\",\n      \"hint\": \"프레임 보간\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"interpolation method\",\n      \"localized\": \"보간 방법\",\n      \"reload\": \"\",\n      \"hint\": \"보간 방법\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invert\",\n      \"localized\": \"반전\",\n      \"reload\": \"\",\n      \"hint\": \"반전\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invert mask\",\n      \"localized\": \"마스크 반전\",\n      \"reload\": \"\",\n      \"hint\": \"마스크 반전\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iou\",\n      \"localized\": \"iou\",\n      \"reload\": \"\",\n      \"hint\": \"iou\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ipex\",\n      \"localized\": \"아이펙스\",\n      \"reload\": \"\",\n      \"hint\": \"아이펙스\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ipndm\",\n      \"localized\": \"아이피엔디엠\",\n      \"reload\": \"\",\n      \"hint\": \"아이피엔디엠\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"item edge blur\",\n      \"localized\": \"항목 가장자리 흐림\",\n      \"reload\": \"\",\n      \"hint\": \"항목 가장자리 흐림\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"item padding\",\n      \"localized\": \"항목 패딩\",\n      \"reload\": \"\",\n      \"hint\": \"항목 패딩\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iterate seed per line\",\n      \"localized\": \"줄별 시드 반복\",\n      \"reload\": \"\",\n      \"hint\": \"줄별 시드 반복\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iterations\",\n      \"localized\": \"반복 횟수\",\n      \"reload\": \"\",\n      \"hint\": \"반복 횟수\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"karras\",\n      \"localized\": \"카라스\",\n      \"reload\": \"\",\n      \"hint\": \"카라스\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"kdpm2\",\n      \"localized\": \"케이디피엠2\",\n      \"reload\": \"\",\n      \"hint\": \"케이디피엠2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"kdpm2 a\",\n      \"localized\": \"케이디피엠2 A\",\n      \"reload\": \"\",\n      \"hint\": \"케이디피엠2 A\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"keep incomplete images\",\n      \"localized\": \"불완전한 이미지 유지\",\n      \"reload\": \"\",\n      \"hint\": \"불완전한 이미지 유지\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"large\",\n      \"localized\": \"크게\",\n      \"reload\": \"\",\n      \"hint\": \"크게\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"latent history size\",\n      \"localized\": \"잠재 공간 기록 크기\",\n      \"reload\": \"\",\n      \"hint\": \"잠재 공간 기록 크기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"latent mode\",\n      \"localized\": \"잠재 공간 모드\",\n      \"reload\": \"\",\n      \"hint\": \"잠재 공간 모드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layer scales\",\n      \"localized\": \"레이어 스케일\",\n      \"reload\": \"\",\n      \"hint\": \"레이어 스케일\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layerwise casting storage\",\n      \"localized\": \"레이어별 캐스팅 저장소\",\n      \"reload\": \"\",\n      \"hint\": \"레이어별 캐스팅 저장소\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layerwise non-blocking operations\",\n      \"localized\": \"레이어별 논블로킹 연산\",\n      \"reload\": \"\",\n      \"hint\": \"레이어별 논블로킹 연산\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lcm\",\n      \"localized\": \"lcm\",\n      \"reload\": \"\",\n      \"hint\": \"lcm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ldsr processing steps\",\n      \"localized\": \"LDSR 처리 단계\",\n      \"reload\": \"\",\n      \"hint\": \"LDSR 처리 단계\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"left\",\n      \"localized\": \"왼쪽\",\n      \"reload\": \"\",\n      \"hint\": \"왼쪽\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"legend\",\n      \"localized\": \"범례\",\n      \"reload\": \"\",\n      \"hint\": \"범례\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"length\",\n      \"localized\": \"길이\",\n      \"reload\": \"\",\n      \"hint\": \"길이\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"leres depth\",\n      \"localized\": \"레레스 깊이\",\n      \"reload\": \"\",\n      \"hint\": \"레레스 깊이\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"level\",\n      \"localized\": \"수준\",\n      \"reload\": \"\",\n      \"hint\": \"수준\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"libs\",\n      \"localized\": \"라이브러리\",\n      \"reload\": \"\",\n      \"hint\": \"라이브러리\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"light\",\n      \"localized\": \"라이트\",\n      \"reload\": \"\",\n      \"hint\": \"라이트\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lineart\",\n      \"localized\": \"선화\",\n      \"reload\": \"\",\n      \"hint\": \"선화\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"list\",\n      \"localized\": \"목록\",\n      \"reload\": \"\",\n      \"hint\": \"목록\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"list model details\",\n      \"localized\": \"모델 세부 정보 나열\",\n      \"reload\": \"\",\n      \"hint\": \"모델 세부 정보 나열\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lite\",\n      \"localized\": \"라이트\",\n      \"reload\": \"\",\n      \"hint\": \"라이트\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"live update\",\n      \"localized\": \"실시간 업데이트\",\n      \"reload\": \"\",\n      \"hint\": \"실시간 업데이트\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lmsd\",\n      \"localized\": \"엘엠에스디\",\n      \"reload\": \"\",\n      \"hint\": \"엘엠에스디\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"load custom diffusers pipeline\",\n      \"localized\": \"사용자 정의 Diffusers 파이프라인 로드\",\n      \"reload\": \"\",\n      \"hint\": \"사용자 정의 Diffusers 파이프라인 로드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"load model directly to gpu\",\n      \"localized\": \"모델을 GPU에 직접 로드\",\n      \"reload\": \"\",\n      \"hint\": \"모델을 GPU에 직접 로드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"loaded lora\",\n      \"localized\": \"로드된 LoRA\",\n      \"reload\": \"\",\n      \"hint\": \"로드된 LoRA\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"logsnr\",\n      \"localized\": \"로그SNR\",\n      \"reload\": \"\",\n      \"hint\": \"로그SNR\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"loop\",\n      \"localized\": \"반복\",\n      \"reload\": \"\",\n      \"hint\": \"반복\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora add hash info to metadata\",\n      \"localized\": \"LoRA 메타데이터에 해시 정보 추가\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA 메타데이터에 해시 정보 추가\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora auto-apply tags\",\n      \"localized\": \"LoRA 태그 자동 적용\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA 태그 자동 적용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora load using diffusers method for selected models\",\n      \"localized\": \"선택된 모델에 Diffusers 방식으로 LoRA 로드\",\n      \"reload\": \"\",\n      \"hint\": \"선택된 모델에 Diffusers 방식으로 LoRA 로드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora load using legacy method\",\n      \"localized\": \"레거시 방식으로 LoRA 로드\",\n      \"reload\": \"\",\n      \"hint\": \"레거시 방식으로 LoRA 로드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora target filename\",\n      \"localized\": \"LoRA 대상 파일 이름\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA 대상 파일 이름\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"low order\",\n      \"localized\": \"저차\",\n      \"reload\": \"\",\n      \"hint\": \"저차\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"low threshold\",\n      \"localized\": \"낮은 임계값\",\n      \"reload\": \"\",\n      \"hint\": \"낮은 임계값\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ltx model\",\n      \"localized\": \"LTX 모델\",\n      \"reload\": \"\",\n      \"hint\": \"LTX 모델\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lumina: use mask in transformers\",\n      \"localized\": \"Lumina: 트랜스포머에서 마스크 사용\",\n      \"reload\": \"\",\n      \"hint\": \"Lumina: 트랜스포머에서 마스크 사용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"manual block merge\",\n      \"localized\": \"수동 블록 병합\",\n      \"reload\": \"\",\n      \"hint\": \"수동 블록 병합\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"marigold depth\",\n      \"localized\": \"마리골드 깊이\",\n      \"reload\": \"\",\n      \"hint\": \"마리골드 깊이\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask dropout\",\n      \"localized\": \"마스크 드롭아웃\",\n      \"reload\": \"\",\n      \"hint\": \"마스크 드롭아웃\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask invert\",\n      \"localized\": \"마스크 반전\",\n      \"reload\": \"\",\n      \"hint\": \"마스크 반전\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask only\",\n      \"localized\": \"마스크만\",\n      \"reload\": \"\",\n      \"hint\": \"마스크만\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask strength\",\n      \"localized\": \"마스크 강도\",\n      \"reload\": \"\",\n      \"hint\": \"마스크 강도\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"masked\",\n      \"localized\": \"마스크된\",\n      \"reload\": \"\",\n      \"hint\": \"마스크된\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"math attention\",\n      \"localized\": \"수학 어텐션\",\n      \"reload\": \"\",\n      \"hint\": \"수학 어텐션\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max faces\",\n      \"localized\": \"최대 얼굴 수\",\n      \"reload\": \"\",\n      \"hint\": \"최대 얼굴 수\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max flavors\",\n      \"localized\": \"최대 플래버\",\n      \"reload\": \"\",\n      \"hint\": \"최대 플래버\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max guidance\",\n      \"localized\": \"최대 가이던스\",\n      \"reload\": \"\",\n      \"hint\": \"최대 가이던스\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max length\",\n      \"localized\": \"최대 길이\",\n      \"reload\": \"\",\n      \"hint\": \"최대 길이\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max object size\",\n      \"localized\": \"최대 객체 크기\",\n      \"reload\": \"\",\n      \"hint\": \"최대 객체 크기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max range\",\n      \"localized\": \"최대 범위\",\n      \"reload\": \"\",\n      \"hint\": \"최대 범위\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max tokens\",\n      \"localized\": \"최대 토큰 수\",\n      \"reload\": \"\",\n      \"hint\": \"최대 토큰 수\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max words\",\n      \"localized\": \"최대 단어 수\",\n      \"reload\": \"\",\n      \"hint\": \"최대 단어 수\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max-autotune\",\n      \"localized\": \"최대 자동 튜닝\",\n      \"reload\": \"\",\n      \"hint\": \"최대 자동 튜닝\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max-autotune-no-cudagraphs\",\n      \"localized\": \"최대 자동 튜닝 (CUDA 그래프 없음)\",\n      \"reload\": \"\",\n      \"hint\": \"최대 자동 튜닝 (CUDA 그래프 없음)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum image size (mp)\",\n      \"localized\": \"최대 이미지 크기 (MP)\",\n      \"reload\": \"\",\n      \"hint\": \"최대 이미지 크기 (MP)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum number of units\",\n      \"localized\": \"최대 단위 수\",\n      \"reload\": \"\",\n      \"hint\": \"최대 단위 수\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum rank\",\n      \"localized\": \"최대 랭크\",\n      \"reload\": \"\",\n      \"hint\": \"최대 랭크\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mediapipe face\",\n      \"localized\": \"미디어파이프 얼굴\",\n      \"reload\": \"\",\n      \"hint\": \"미디어파이프 얼굴\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"medium\",\n      \"localized\": \"중간\",\n      \"reload\": \"\",\n      \"hint\": \"중간\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mediums\",\n      \"localized\": \"매개체\",\n      \"reload\": \"\",\n      \"hint\": \"매개체\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory\",\n      \"localized\": \"메모리\",\n      \"reload\": \"\",\n      \"hint\": \"메모리\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory attention\",\n      \"localized\": \"메모리 어텐션\",\n      \"reload\": \"\",\n      \"hint\": \"메모리 어텐션\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory limit\",\n      \"localized\": \"메모리 제한\",\n      \"reload\": \"\",\n      \"hint\": \"메모리 제한\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory optimization\",\n      \"localized\": \"메모리 최적화\",\n      \"reload\": \"\",\n      \"hint\": \"메모리 최적화\"\n    },\n    {\n      \"id\": \"merge alpha\",\n      \"label\": \"merge alpha\",\n      \"localized\": \"알파 병합\",\n      \"reload\": \"\",\n      \"hint\": \"알파 병합\"\n    },\n    {\n      \"id\": \"method\",\n      \"label\": \"method\",\n      \"localized\": \"방법\",\n      \"reload\": \"\",\n      \"hint\": \"방법\"\n    },\n    {\n      \"id\": \"method after\",\n      \"label\": \"method after\",\n      \"localized\": \"후처리 방법\",\n      \"reload\": \"\",\n      \"hint\": \"후처리 방법\"\n    },\n    {\n      \"id\": \"method before\",\n      \"label\": \"method before\",\n      \"localized\": \"전처리 방법\",\n      \"reload\": \"\",\n      \"hint\": \"전처리 방법\"\n    },\n    {\n      \"id\": \"method mask\",\n      \"label\": \"method mask\",\n      \"localized\": \"마스크 방법\",\n      \"reload\": \"\",\n      \"hint\": \"마스크 방법\"\n    },\n    {\n      \"id\": \"midas depth\",\n      \"label\": \"midas depth\",\n      \"localized\": \"미다스 깊이\",\n      \"reload\": \"\",\n      \"hint\": \"미다스 깊이\"\n    },\n    {\n      \"id\": \"migraphx\",\n      \"label\": \"migraphx\",\n      \"localized\": \"migraphx\",\n      \"reload\": \"\",\n      \"hint\": \"migraphx\"\n    },\n    {\n      \"id\": \"min flavors\",\n      \"label\": \"min flavors\",\n      \"localized\": \"최소 플레이버\",\n      \"reload\": \"\",\n      \"hint\": \"최소 플레이버\"\n    },\n    {\n      \"id\": \"min guidance\",\n      \"label\": \"min guidance\",\n      \"localized\": \"최소 가이던스\",\n      \"reload\": \"\",\n      \"hint\": \"최소 가이던스\"\n    },\n    {\n      \"id\": \"min length\",\n      \"label\": \"min length\",\n      \"localized\": \"최소 길이\",\n      \"reload\": \"\",\n      \"hint\": \"최소 길이\"\n    },\n    {\n      \"id\": \"min object size\",\n      \"label\": \"min object size\",\n      \"localized\": \"최소 객체 크기\",\n      \"reload\": \"\",\n      \"hint\": \"최소 객체 크기\"\n    },\n    {\n      \"id\": \"mine\",\n      \"label\": \"mine\",\n      \"localized\": \"나의 것\",\n      \"reload\": \"\",\n      \"hint\": \"나의 것\"\n    },\n    {\n      \"id\": \"mlsd\",\n      \"label\": \"mlsd\",\n      \"localized\": \"mlsd\",\n      \"reload\": \"\",\n      \"hint\": \"mlsd\"\n    },\n    {\n      \"id\": \"mm\",\n      \"label\": \"mm\",\n      \"localized\": \"mm\",\n      \"reload\": \"\",\n      \"hint\": \"mm\"\n    },\n    {\n      \"id\": \"mode\",\n      \"label\": \"mode\",\n      \"localized\": \"모드\",\n      \"reload\": \"\",\n      \"hint\": \"모드\"\n    },\n    {\n      \"id\": \"mode after\",\n      \"label\": \"mode after\",\n      \"localized\": \"후처리 모드\",\n      \"reload\": \"\",\n      \"hint\": \"후처리 모드\"\n    },\n    {\n      \"id\": \"mode before\",\n      \"label\": \"mode before\",\n      \"localized\": \"전처리 모드\",\n      \"reload\": \"\",\n      \"hint\": \"전처리 모드\"\n    },\n    {\n      \"id\": \"mode mask\",\n      \"label\": \"mode mask\",\n      \"localized\": \"마스크 모드\",\n      \"reload\": \"\",\n      \"hint\": \"마스크 모드\"\n    },\n    {\n      \"id\": \"mode x-axis\",\n      \"label\": \"mode x-axis\",\n      \"localized\": \"X축 모드\",\n      \"reload\": \"\",\n      \"hint\": \"X축 모드\"\n    },\n    {\n      \"id\": \"mode y-axis\",\n      \"label\": \"mode y-axis\",\n      \"localized\": \"Y축 모드\",\n      \"reload\": \"\",\n      \"hint\": \"Y축 모드\"\n    },\n    {\n      \"id\": \"model auto-download on demand\",\n      \"label\": \"model auto-download on demand\",\n      \"localized\": \"모델 자동 요청 다운로드\",\n      \"reload\": \"\",\n      \"hint\": \"모델 자동 요청 다운로드\"\n    },\n    {\n      \"id\": \"model autoload on start\",\n      \"label\": \"model autoload on start\",\n      \"localized\": \"시작 시 모델 자동 로드\",\n      \"reload\": \"\",\n      \"hint\": \"시작 시 모델 자동 로드\"\n    },\n    {\n      \"id\": \"model compile fullgraph\",\n      \"label\": \"model compile fullgraph\",\n      \"localized\": \"모델 전체 그래프 컴파일\",\n      \"reload\": \"\",\n      \"hint\": \"모델 전체 그래프 컴파일\"\n    },\n    {\n      \"id\": \"model compile suppress errors\",\n      \"label\": \"model compile suppress errors\",\n      \"localized\": \"모델 컴파일 오류 억제\",\n      \"reload\": \"\",\n      \"hint\": \"모델 컴파일 오류 억제\"\n    },\n    {\n      \"id\": \"model compile verbose mode\",\n      \"label\": \"model compile verbose mode\",\n      \"localized\": \"모델 컴파일 상세 모드\",\n      \"reload\": \"\",\n      \"hint\": \"모델 컴파일 상세 모드\"\n    },\n    {\n      \"id\": \"model info\",\n      \"label\": \"model info\",\n      \"localized\": \"모델 정보\",\n      \"reload\": \"\",\n      \"hint\": \"모델 정보\"\n    },\n    {\n      \"id\": \"model metadata\",\n      \"label\": \"model metadata\",\n      \"localized\": \"모델 메타데이터\",\n      \"reload\": \"\",\n      \"hint\": \"모델 메타데이터\"\n    },\n    {\n      \"id\": \"model name\",\n      \"label\": \"model name\",\n      \"localized\": \"모델 이름\",\n      \"reload\": \"\",\n      \"hint\": \"모델 이름\"\n    },\n    {\n      \"id\": \"model precision\",\n      \"label\": \"model precision\",\n      \"localized\": \"모델 정밀도\",\n      \"reload\": \"\",\n      \"hint\": \"모델 정밀도\"\n    },\n    {\n      \"id\": \"model type\",\n      \"label\": \"model type\",\n      \"localized\": \"모델 유형\",\n      \"reload\": \"\",\n      \"hint\": \"모델 유형\"\n    },\n    {\n      \"id\": \"model url\",\n      \"label\": \"model url\",\n      \"localized\": \"모델 URL\",\n      \"reload\": \"\",\n      \"hint\": \"모델 URL\"\n    },\n    {\n      \"id\": \"modern\",\n      \"label\": \"modern\",\n      \"localized\": \"현대적\",\n      \"reload\": \"\",\n      \"hint\": \"현대적\"\n    },\n    {\n      \"id\": \"momentum\",\n      \"label\": \"momentum\",\n      \"localized\": \"모멘텀\",\n      \"reload\": \"\",\n      \"hint\": \"모멘텀\"\n    },\n    {\n      \"id\": \"motion level\",\n      \"label\": \"motion level\",\n      \"localized\": \"움직임 수준\",\n      \"reload\": \"\",\n      \"hint\": \"움직임 수준\"\n    },\n    {\n      \"id\": \"mount url subpath\",\n      \"label\": \"mount url subpath\",\n      \"localized\": \"URL 서브 경로 마운트\",\n      \"reload\": \"\",\n      \"hint\": \"URL 서브 경로 마운트\"\n    },\n    {\n      \"id\": \"move base model to cpu when using refiner\",\n      \"label\": \"move base model to cpu when using refiner\",\n      \"localized\": \"리파이너 사용 시 기본 모델을 CPU로 이동\",\n      \"reload\": \"\",\n      \"hint\": \"리파이너 사용 시 기본 모델을 CPU로 이동\"\n    },\n    {\n      \"id\": \"move base model to cpu when using vae\",\n      \"label\": \"move base model to cpu when using vae\",\n      \"localized\": \"VAE 사용 시 기본 모델을 CPU로 이동\",\n      \"reload\": \"\",\n      \"hint\": \"VAE 사용 시 기본 모델을 CPU로 이동\"\n    },\n    {\n      \"id\": \"move detailer model to cpu when complete\",\n      \"label\": \"move detailer model to cpu when complete\",\n      \"localized\": \"완료 시 디테일러 모델을 CPU로 이동\",\n      \"reload\": \"\",\n      \"hint\": \"완료 시 디테일러 모델을 CPU로 이동\"\n    },\n    {\n      \"id\": \"move refiner model to cpu when not in use\",\n      \"label\": \"move refiner model to cpu when not in use\",\n      \"localized\": \"사용하지 않을 때 리파이너 모델을 CPU로 이동\",\n      \"reload\": \"\",\n      \"hint\": \"사용하지 않을 때 리파이너 모델을 CPU로 이동\"\n    },\n    {\n      \"id\": \"movements\",\n      \"label\": \"movements\",\n      \"localized\": \"움직임\",\n      \"reload\": \"\",\n      \"hint\": \"움직임\"\n    },\n    {\n      \"id\": \"multi decoder\",\n      \"label\": \"multi decoder\",\n      \"localized\": \"멀티 디코더\",\n      \"reload\": \"\",\n      \"hint\": \"멀티 디코더\"\n    },\n    {\n      \"id\": \"multistep restore\",\n      \"label\": \"multistep restore\",\n      \"localized\": \"다단계 복원\",\n      \"reload\": \"\",\n      \"hint\": \"다단계 복원\"\n    },\n    {\n      \"id\": \"native\",\n      \"label\": \"native\",\n      \"localized\": \"네이티브\",\n      \"reload\": \"\",\n      \"hint\": \"네이티브\"\n    },\n    {\n      \"id\": \"near threshold\",\n      \"label\": \"near threshold\",\n      \"localized\": \"임계값 근처\",\n      \"reload\": \"\",\n      \"hint\": \"임계값 근처\"\n    },\n    {\n      \"id\": \"negative\",\n      \"label\": \"negative\",\n      \"localized\": \"부정\",\n      \"reload\": \"\",\n      \"hint\": \"부정\"\n    },\n    {\n      \"id\": \"network negative prompt\",\n      \"label\": \"network negative prompt\",\n      \"localized\": \"네트워크 부정 프롬프트\",\n      \"reload\": \"\",\n      \"hint\": \"네트워크 부정 프롬프트\"\n    },\n    {\n      \"id\": \"network parameters\",\n      \"label\": \"network parameters\",\n      \"localized\": \"네트워크 파라미터\",\n      \"reload\": \"\",\n      \"hint\": \"네트워크 파라미터\"\n    },\n    {\n      \"id\": \"network prompt\",\n      \"label\": \"network prompt\",\n      \"localized\": \"네트워크 프롬프트\",\n      \"reload\": \"\",\n      \"hint\": \"네트워크 프롬프트\"\n    },\n    {\n      \"id\": \"new model name\",\n      \"label\": \"new model name\",\n      \"localized\": \"새 모델 이름\",\n      \"reload\": \"\",\n      \"hint\": \"새 모델 이름\"\n    },\n    {\n      \"id\": \"nf4\",\n      \"label\": \"nf4\",\n      \"localized\": \"nf4\",\n      \"reload\": \"\",\n      \"hint\": \"nf4\"\n    },\n    {\n      \"id\": \"nms\",\n      \"label\": \"nms\",\n      \"localized\": \"nms\",\n      \"reload\": \"\",\n      \"hint\": \"nms\"\n    },\n    {\n      \"id\": \"noise\",\n      \"label\": \"noise\",\n      \"localized\": \"노이즈\",\n      \"reload\": \"\",\n      \"hint\": \"노이즈\"\n    },\n    {\n      \"id\": \"noise multiplier (eta)\",\n      \"label\": \"noise multiplier (eta)\",\n      \"localized\": \"노이즈 승수 (eta)\",\n      \"reload\": \"\",\n      \"hint\": \"노이즈 승수 (eta)\"\n    },\n    {\n      \"id\": \"noise multiplier for image processing\",\n      \"label\": \"noise multiplier for image processing\",\n      \"localized\": \"이미지 처리용 노이즈 승수\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 처리용 노이즈 승수\"\n    },\n    {\n      \"id\": \"noise seed delta (eta)\",\n      \"label\": \"noise seed delta (eta)\",\n      \"localized\": \"노이즈 시드 델타 (eta)\",\n      \"reload\": \"\",\n      \"hint\": \"노이즈 시드 델타 (eta)\"\n    },\n    {\n      \"id\": \"noise strength\",\n      \"label\": \"noise strength\",\n      \"localized\": \"노이즈 강도\",\n      \"reload\": \"\",\n      \"hint\": \"노이즈 강도\"\n    },\n    {\n      \"id\": \"none\",\n      \"label\": \"none\",\n      \"localized\": \"없음\",\n      \"reload\": \"\",\n      \"hint\": \"없음\"\n    },\n    {\n      \"id\": \"note\",\n      \"label\": \"note\",\n      \"localized\": \"참고\",\n      \"reload\": \"\",\n      \"hint\": \"참고\"\n    },\n    {\n      \"id\": \"nothing\",\n      \"label\": \"nothing\",\n      \"localized\": \"없음\",\n      \"reload\": \"\",\n      \"hint\": \"없음\"\n    },\n    {\n      \"id\": \"num beams\",\n      \"label\": \"num beams\",\n      \"localized\": \"빔 개수\",\n      \"reload\": \"\",\n      \"hint\": \"빔 개수\"\n    },\n    {\n      \"id\": \"number\",\n      \"label\": \"number\",\n      \"localized\": \"숫자\",\n      \"reload\": \"\",\n      \"hint\": \"숫자\"\n    },\n    {\n      \"id\": \"numbered filenames\",\n      \"label\": \"numbered filenames\",\n      \"localized\": \"번호가 매겨진 파일 이름\",\n      \"reload\": \"\",\n      \"hint\": \"번호가 매겨진 파일 이름\"\n    },\n    {\n      \"id\": \"offload\",\n      \"label\": \"offload\",\n      \"localized\": \"오프로드\",\n      \"reload\": \"\",\n      \"hint\": \"오프로드\"\n    },\n    {\n      \"id\": \"offload face module\",\n      \"label\": \"offload face module\",\n      \"localized\": \"페이스 모듈 오프로드\",\n      \"reload\": \"\",\n      \"hint\": \"페이스 모듈 오프로드\"\n    },\n    {\n      \"id\": \"offload models\",\n      \"label\": \"offload models\",\n      \"localized\": \"모델 오프로드\",\n      \"reload\": \"\",\n      \"hint\": \"모델 오프로드\"\n    },\n    {\n      \"id\": \"olive-ai\",\n      \"label\": \"olive-ai\",\n      \"localized\": \"olive-ai\",\n      \"reload\": \"\",\n      \"hint\": \"olive-ai\"\n    },\n    {\n      \"id\": \"onediff\",\n      \"label\": \"onediff\",\n      \"localized\": \"onediff\",\n      \"reload\": \"\",\n      \"hint\": \"onediff\"\n    },\n    {\n      \"id\": \"onnx\",\n      \"label\": \"onnx\",\n      \"localized\": \"onnx\",\n      \"reload\": \"\",\n      \"hint\": \"onnx\"\n    },\n    {\n      \"id\": \"openbody\",\n      \"label\": \"openbody\",\n      \"localized\": \"오픈바디\",\n      \"reload\": \"\",\n      \"hint\": \"오픈바디\"\n    },\n    {\n      \"id\": \"openclip\",\n      \"label\": \"openclip\",\n      \"localized\": \"오픈클립\",\n      \"reload\": \"\",\n      \"hint\": \"오픈클립\"\n    },\n    {\n      \"id\": \"openvino disable memory cleanup after compile\",\n      \"label\": \"openvino disable memory cleanup after compile\",\n      \"localized\": \"OpenVINO 컴파일 후 메모리 정리 비활성화\",\n      \"reload\": \"\",\n      \"hint\": \"OpenVINO 컴파일 후 메모리 정리 비활성화\"\n    },\n    {\n      \"id\": \"openvino disable model caching\",\n      \"label\": \"openvino disable model caching\",\n      \"localized\": \"OpenVINO 모델 캐싱 비활성화\",\n      \"reload\": \"\",\n      \"hint\": \"OpenVINO 모델 캐싱 비활성화\"\n    },\n    {\n      \"id\": \"openvino mode\",\n      \"label\": \"openvino mode\",\n      \"localized\": \"OpenVINO 모드\",\n      \"reload\": \"\",\n      \"hint\": \"OpenVINO 모드\"\n    },\n    {\n      \"id\": \"openvino_fx\",\n      \"label\": \"openvino_fx\",\n      \"localized\": \"openvino_fx\",\n      \"reload\": \"\",\n      \"hint\": \"openvino_fx\"\n    },\n    {\n      \"id\": \"optional image description\",\n      \"label\": \"optional image description\",\n      \"localized\": \"선택적 이미지 설명\",\n      \"reload\": \"\",\n      \"hint\": \"선택적 이미지 설명\"\n    },\n    {\n      \"id\": \"optional init image or video\",\n      \"label\": \"optional init image or video\",\n      \"localized\": \"선택적 초기 이미지 또는 비디오\",\n      \"reload\": \"\",\n      \"hint\": \"선택적 초기 이미지 또는 비디오\"\n    },\n    {\n      \"id\": \"order\",\n      \"label\": \"order\",\n      \"localized\": \"순서\",\n      \"reload\": \"\",\n      \"hint\": \"순서\"\n    },\n    {\n      \"id\": \"ortho\",\n      \"label\": \"ortho\",\n      \"localized\": \"직교\",\n      \"reload\": \"\",\n      \"hint\": \"직교\"\n    },\n    {\n      \"id\": \"outpaint\",\n      \"label\": \"outpaint\",\n      \"localized\": \"아웃페인트\",\n      \"reload\": \"\",\n      \"hint\": \"아웃페인트\"\n    },\n    {\n      \"id\": \"output model\",\n      \"label\": \"output model\",\n      \"localized\": \"출력 모델\",\n      \"reload\": \"\",\n      \"hint\": \"출력 모델\"\n    },\n    {\n      \"id\": \"override resolution\",\n      \"label\": \"override resolution\",\n      \"localized\": \"해상도 재정의\",\n      \"reload\": \"\",\n      \"hint\": \"해상도 재정의\"\n    },\n    {\n      \"id\": \"override sampler\",\n      \"label\": \"override sampler\",\n      \"localized\": \"샘플러 재정의\",\n      \"reload\": \"\",\n      \"hint\": \"샘플러 재정의\"\n    },\n    {\n      \"id\": \"override scheduler\",\n      \"label\": \"override scheduler\",\n      \"localized\": \"스케줄러 재정의\",\n      \"reload\": \"\",\n      \"hint\": \"스케줄러 재정의\"\n    },\n    {\n      \"id\": \"override steps\",\n      \"label\": \"override steps\",\n      \"localized\": \"단계 재정의\",\n      \"reload\": \"\",\n      \"hint\": \"단계 재정의\"\n    },\n    {\n      \"id\": \"override t1 ratio\",\n      \"label\": \"override t1 ratio\",\n      \"localized\": \"T1 비율 재정의\",\n      \"reload\": \"\",\n      \"hint\": \"T1 비율 재정의\"\n    },\n    {\n      \"id\": \"override t2 ratio\",\n      \"label\": \"override t2 ratio\",\n      \"localized\": \"T2 비율 재정의\",\n      \"reload\": \"\",\n      \"hint\": \"T2 비율 재정의\"\n    },\n    {\n      \"id\": \"overwrite existing file\",\n      \"label\": \"overwrite existing file\",\n      \"localized\": \"기존 파일 덮어쓰기\",\n      \"reload\": \"\",\n      \"hint\": \"기존 파일 덮어쓰기\"\n    },\n    {\n      \"id\": \"overwrite model\",\n      \"label\": \"overwrite model\",\n      \"localized\": \"모델 덮어쓰기\",\n      \"reload\": \"\",\n      \"hint\": \"모델 덮어쓰기\"\n    },\n    {\n      \"id\": \"pad frames\",\n      \"label\": \"pad frames\",\n      \"localized\": \"프레임 채우기\",\n      \"reload\": \"\",\n      \"hint\": \"프레임 채우기\"\n    },\n    {\n      \"id\": \"padding\",\n      \"label\": \"padding\",\n      \"localized\": \"패딩\",\n      \"reload\": \"\",\n      \"hint\": \"패딩\"\n    },\n    {\n      \"id\": \"parallel process images in batch\",\n      \"label\": \"parallel process images in batch\",\n      \"localized\": \"배치에서 이미지 병렬 처리\",\n      \"reload\": \"\",\n      \"hint\": \"배치에서 이미지 병렬 처리\"\n    },\n    {\n      \"id\": \"parameter free\",\n      \"label\": \"parameter free\",\n      \"localized\": \"매개변수 없음\",\n      \"reload\": \"\",\n      \"hint\": \"매개변수 없음\"\n    },\n    {\n      \"id\": \"path to model file\",\n      \"label\": \"path to model file\",\n      \"localized\": \"모델 파일 경로\",\n      \"reload\": \"\",\n      \"hint\": \"모델 파일 경로\"\n    },\n    {\n      \"id\": \"path to notification sound\",\n      \"label\": \"path to notification sound\",\n      \"localized\": \"알림 소리 경로\",\n      \"reload\": \"\",\n      \"hint\": \"알림 소리 경로\"\n    },\n    {\n      \"id\": \"peft\",\n      \"label\": \"peft\",\n      \"localized\": \"peft\",\n      \"reload\": \"\",\n      \"hint\": \"peft\"\n    },\n    {\n      \"id\": \"penalty\",\n      \"label\": \"penalty\",\n      \"localized\": \"페널티\",\n      \"reload\": \"\",\n      \"hint\": \"페널티\"\n    },\n    {\n      \"id\": \"perflow\",\n      \"label\": \"perflow\",\n      \"localized\": \"perflow\",\n      \"reload\": \"\",\n      \"hint\": \"perflow\"\n    },\n    {\n      \"id\": \"perform injection\",\n      \"label\": \"perform injection\",\n      \"localized\": \"주입 수행\",\n      \"reload\": \"\",\n      \"hint\": \"주입 수행\"\n    },\n    {\n      \"id\": \"perform sdsa\",\n      \"label\": \"perform sdsa\",\n      \"localized\": \"SDSA 수행\",\n      \"reload\": \"\",\n      \"hint\": \"SDSA 수행\"\n    },\n    {\n      \"id\": \"perform warmup\",\n      \"label\": \"perform warmup\",\n      \"localized\": \"웜업 수행\",\n      \"reload\": \"\",\n      \"hint\": \"웜업 수행\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"performance\",\n      \"localized\": \"성능\",\n      \"reload\": \"\",\n      \"hint\": \"성능\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"photomaker model\",\n      \"localized\": \"포토메이커 모델\",\n      \"reload\": \"\",\n      \"hint\": \"포토메이커 모델\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pidinet\",\n      \"localized\": \"피디아이넷\",\n      \"reload\": \"\",\n      \"hint\": \"피디아이넷\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pipeline\",\n      \"localized\": \"파이프라인\",\n      \"reload\": \"\",\n      \"hint\": \"파이프라인\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pixels to expand\",\n      \"localized\": \"확장할 픽셀\",\n      \"reload\": \"\",\n      \"hint\": \"확장할 픽셀\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"platform\",\n      \"localized\": \"플랫폼\",\n      \"reload\": \"\",\n      \"hint\": \"플랫폼\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"play\",\n      \"localized\": \"재생\",\n      \"reload\": \"\",\n      \"hint\": \"재생\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"play a notification upon completion\",\n      \"localized\": \"완료 시 알림 재생\",\n      \"reload\": \"\",\n      \"hint\": \"완료 시 알림 재생\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pndm\",\n      \"localized\": \"PNDM\",\n      \"reload\": \"\",\n      \"hint\": \"PNDM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"polyexponential\",\n      \"localized\": \"폴리익스포넨셜\",\n      \"reload\": \"\",\n      \"hint\": \"폴리익스포넨셜\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pony\",\n      \"localized\": \"포니\",\n      \"reload\": \"\",\n      \"hint\": \"포니\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pose confidence\",\n      \"localized\": \"포즈 신뢰도\",\n      \"reload\": \"\",\n      \"hint\": \"포즈 신뢰도\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"positive\",\n      \"localized\": \"긍정\",\n      \"reload\": \"\",\n      \"hint\": \"긍정\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocess mask\",\n      \"localized\": \"마스크 후처리\",\n      \"reload\": \"\",\n      \"hint\": \"마스크 후처리\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocess upscale\",\n      \"localized\": \"업스케일 후처리\",\n      \"reload\": \"\",\n      \"hint\": \"업스케일 후처리\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocessing operation order\",\n      \"localized\": \"후처리 작업 순서\",\n      \"reload\": \"\",\n      \"hint\": \"후처리 작업 순서\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"power\",\n      \"localized\": \"파워\",\n      \"reload\": \"\",\n      \"hint\": \"파워\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"predefined question\",\n      \"localized\": \"미리 정의된 질문\",\n      \"reload\": \"\",\n      \"hint\": \"미리 정의된 질문\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prediction method\",\n      \"localized\": \"예측 방식\",\n      \"reload\": \"\",\n      \"hint\": \"예측 방식\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preset\",\n      \"localized\": \"프리셋\",\n      \"reload\": \"\",\n      \"hint\": \"프리셋\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preset block merge\",\n      \"localized\": \"프리셋 블록 병합\",\n      \"reload\": \"\",\n      \"hint\": \"프리셋 블록 병합\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview\",\n      \"localized\": \"미리보기\",\n      \"reload\": \"\",\n      \"hint\": \"미리보기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview end\",\n      \"localized\": \"미리보기 종료\",\n      \"reload\": \"\",\n      \"hint\": \"미리보기 종료\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview start\",\n      \"localized\": \"미리보기 시작\",\n      \"reload\": \"\",\n      \"hint\": \"미리보기 시작\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"primary model\",\n      \"localized\": \"주요 모델\",\n      \"reload\": \"\",\n      \"hint\": \"주요 모델\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor\",\n      \"localized\": \"프로세서\",\n      \"reload\": \"\",\n      \"hint\": \"프로세서\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor move to cpu after use\",\n      \"localized\": \"사용 후 프로세서 CPU로 이동\",\n      \"reload\": \"\",\n      \"hint\": \"사용 후 프로세서 CPU로 이동\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor settings\",\n      \"localized\": \"프로세서 설정\",\n      \"reload\": \"\",\n      \"hint\": \"프로세서 설정\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor unload after use\",\n      \"localized\": \"사용 후 프로세서 언로드\",\n      \"reload\": \"\",\n      \"hint\": \"사용 후 프로세서 언로드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt attention normalization\",\n      \"localized\": \"프롬프트 어텐션 정규화\",\n      \"reload\": \"\",\n      \"hint\": \"프롬프트 어텐션 정규화\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt ex\",\n      \"localized\": \"프롬프트 예시\",\n      \"reload\": \"\",\n      \"hint\": \"프롬프트 예시\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt processor\",\n      \"localized\": \"프롬프트 프로세서\",\n      \"reload\": \"\",\n      \"hint\": \"프롬프트 프로세서\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt strength\",\n      \"localized\": \"프롬프트 강도\",\n      \"reload\": \"\",\n      \"hint\": \"프롬프트 강도\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt thresholds:\",\n      \"localized\": \"프롬프트 임계값:\",\n      \"reload\": \"\",\n      \"hint\": \"프롬프트 임계값:\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompts\",\n      \"localized\": \"프롬프트\",\n      \"reload\": \"\",\n      \"hint\": \"프롬프트\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"provider\",\n      \"localized\": \"제공자\",\n      \"reload\": \"\",\n      \"hint\": \"제공자\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prune\",\n      \"localized\": \"가지치기\",\n      \"reload\": \"\",\n      \"hint\": \"가지치기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quad\",\n      \"localized\": \"쿼드\",\n      \"reload\": \"\",\n      \"hint\": \"쿼드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization activations type\",\n      \"localized\": \"양자화 활성화 유형\",\n      \"reload\": \"\",\n      \"hint\": \"양자화 활성화 유형\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization mode\",\n      \"localized\": \"양자화 모드\",\n      \"reload\": \"\",\n      \"hint\": \"양자화 모드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization type\",\n      \"localized\": \"양자화 유형\",\n      \"reload\": \"\",\n      \"hint\": \"양자화 유형\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization weights type\",\n      \"localized\": \"양자화 가중치 유형\",\n      \"reload\": \"\",\n      \"hint\": \"양자화 가중치 유형\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"random seeds\",\n      \"localized\": \"랜덤 시드\",\n      \"reload\": \"\",\n      \"hint\": \"랜덤 시드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"range\",\n      \"localized\": \"범위\",\n      \"reload\": \"\",\n      \"hint\": \"범위\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rebase\",\n      \"localized\": \"리베이스\",\n      \"reload\": \"\",\n      \"hint\": \"리베이스\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"recursive\",\n      \"localized\": \"재귀적\",\n      \"reload\": \"\",\n      \"hint\": \"재귀적\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reduce-overhead\",\n      \"localized\": \"오버헤드 감소\",\n      \"reload\": \"\",\n      \"hint\": \"오버헤드 감소\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"redux prompt strength\",\n      \"localized\": \"리덕스 프롬프트 강도\",\n      \"reload\": \"\",\n      \"hint\": \"리덕스 프롬프트 강도\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference adain weight\",\n      \"localized\": \"레퍼런스 AdaIN 가중치\",\n      \"reload\": \"\",\n      \"hint\": \"레퍼런스 AdaIN 가중치\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference query weight\",\n      \"localized\": \"레퍼런스 쿼리 가중치\",\n      \"reload\": \"\",\n      \"hint\": \"레퍼런스 쿼리 가중치\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference unit 1\",\n      \"localized\": \"레퍼런스 유닛 1\",\n      \"reload\": \"\",\n      \"hint\": \"레퍼런스 유닛 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refine foreground\",\n      \"localized\": \"전경 세분화\",\n      \"reload\": \"\",\n      \"hint\": \"전경 세분화\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh bench\",\n      \"localized\": \"벤치 새로 고침\",\n      \"reload\": \"\",\n      \"hint\": \"벤치 새로 고침\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh data\",\n      \"localized\": \"데이터 새로 고침\",\n      \"reload\": \"\",\n      \"hint\": \"데이터 새로 고침\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh state\",\n      \"localized\": \"상태 새로 고침\",\n      \"reload\": \"\",\n      \"hint\": \"상태 새로 고침\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh ui values\",\n      \"localized\": \"UI 값 새로 고침\",\n      \"reload\": \"\",\n      \"hint\": \"UI 값 새로 고침\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reinstall\",\n      \"localized\": \"재설치\",\n      \"reload\": \"\",\n      \"hint\": \"재설치\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"remove background\",\n      \"localized\": \"배경 제거\",\n      \"reload\": \"\",\n      \"hint\": \"배경 제거\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repeat x-axis\",\n      \"localized\": \"X축 반복\",\n      \"reload\": \"\",\n      \"hint\": \"X축 반복\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repeat y-axis\",\n      \"localized\": \"Y축 반복\",\n      \"reload\": \"\",\n      \"hint\": \"Y축 반복\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"replace vae\",\n      \"localized\": \"VAE 교체\",\n      \"reload\": \"\",\n      \"hint\": \"VAE 교체\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repos\",\n      \"localized\": \"저장소\",\n      \"reload\": \"\",\n      \"hint\": \"저장소\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess decode\",\n      \"localized\": \"디코드 재처리\",\n      \"reload\": \"\",\n      \"hint\": \"디코드 재처리\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess face\",\n      \"localized\": \"얼굴 재처리\",\n      \"reload\": \"\",\n      \"hint\": \"얼굴 재처리\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess refine\",\n      \"localized\": \"세분화 재처리\",\n      \"reload\": \"\",\n      \"hint\": \"세분화 재처리\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"request browser notifications\",\n      \"localized\": \"브라우저 알림 요청\",\n      \"reload\": \"\",\n      \"hint\": \"브라우저 알림 요청\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rescale\",\n      \"localized\": \"재조정\",\n      \"reload\": \"\",\n      \"hint\": \"재조정\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rescale betas with zero terminal snr\",\n      \"localized\": \"제로 터미널 SNR로 베타 재조정\",\n      \"reload\": \"\",\n      \"hint\": \"제로 터미널 SNR로 베타 재조정\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reset anchors\",\n      \"localized\": \"앵커 재설정\",\n      \"reload\": \"\",\n      \"hint\": \"앵커 재설정\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"residual diff threshold\",\n      \"localized\": \"잔차 차이 임계값\",\n      \"reload\": \"\",\n      \"hint\": \"잔차 차이 임계값\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize background color\",\n      \"localized\": \"배경색 크기 조정\",\n      \"reload\": \"\",\n      \"hint\": \"배경색 크기 조정\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize method\",\n      \"localized\": \"크기 조정 방식\",\n      \"reload\": \"\",\n      \"hint\": \"크기 조정 방식\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize mode\",\n      \"localized\": \"크기 조정 모드\",\n      \"reload\": \"\",\n      \"hint\": \"크기 조정 모드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize scale\",\n      \"localized\": \"크기 조정 배율\",\n      \"reload\": \"\",\n      \"hint\": \"크기 조정 배율\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restart step\",\n      \"localized\": \"단계 재시작\",\n      \"reload\": \"\",\n      \"hint\": \"단계 재시작\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore faces: codeformer\",\n      \"localized\": \"얼굴 복원: CodeFormer\",\n      \"reload\": \"\",\n      \"hint\": \"얼굴 복원: CodeFormer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore faces: gfpgan\",\n      \"localized\": \"얼굴 복원: GFPGAN\",\n      \"reload\": \"\",\n      \"hint\": \"얼굴 복원: GFPGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore pipe on end\",\n      \"localized\": \"종료 시 파이프 복원\",\n      \"reload\": \"\",\n      \"hint\": \"종료 시 파이프 복원\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore unparsed prompt\",\n      \"localized\": \"구문 분석되지 않은 프롬프트 복원\",\n      \"reload\": \"\",\n      \"hint\": \"구문 분석되지 않은 프롬프트 복원\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reswapper model\",\n      \"localized\": \"레스와퍼 모델\",\n      \"reload\": \"\",\n      \"hint\": \"레스와퍼 모델\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"return original images\",\n      \"localized\": \"원본 이미지 반환\",\n      \"reload\": \"\",\n      \"hint\": \"원본 이미지 반환\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"right\",\n      \"localized\": \"오른쪽\",\n      \"reload\": \"\",\n      \"hint\": \"오른쪽\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"root model folder\",\n      \"localized\": \"루트 모델 폴더\",\n      \"reload\": \"\",\n      \"hint\": \"루트 모델 폴더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rows\",\n      \"localized\": \"행\",\n      \"reload\": \"\",\n      \"hint\": \"행\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"run\",\n      \"localized\": \"실행\",\n      \"reload\": \"\",\n      \"hint\": \"실행\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"run benchmark\",\n      \"localized\": \"벤치마크 실행\",\n      \"reload\": \"\",\n      \"hint\": \"벤치마크 실행\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sa solver\",\n      \"localized\": \"SA 솔버\",\n      \"reload\": \"\",\n      \"hint\": \"SA 솔버\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"safetensors\",\n      \"localized\": \"세이프텐서\",\n      \"reload\": \"\",\n      \"hint\": \"세이프텐서\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sage attention\",\n      \"localized\": \"SAGE 어텐션\",\n      \"reload\": \"\",\n      \"hint\": \"SAGE 어텐션\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"same as primary\",\n      \"localized\": \"기본과 동일\",\n      \"reload\": \"\",\n      \"hint\": \"기본과 동일\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"same latent\",\n      \"localized\": \"동일 잠재\",\n      \"reload\": \"\",\n      \"hint\": \"동일 잠재\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sample\",\n      \"localized\": \"샘플\",\n      \"reload\": \"\",\n      \"hint\": \"샘플\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler\",\n      \"localized\": \"샘플러\",\n      \"reload\": \"\",\n      \"hint\": \"샘플러\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler dynamic shift\",\n      \"localized\": \"샘플러 동적 시프트\",\n      \"reload\": \"\",\n      \"hint\": \"샘플러 동적 시프트\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler order\",\n      \"localized\": \"샘플러 순서\",\n      \"reload\": \"\",\n      \"hint\": \"샘플러 순서\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler shift\",\n      \"localized\": \"샘플러 시프트\",\n      \"reload\": \"\",\n      \"hint\": \"샘플러 시프트\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sana: use complex human instructions\",\n      \"localized\": \"SANA: 복잡한 사람 지시 사용\",\n      \"reload\": \"\",\n      \"hint\": \"SANA: 복잡한 사람 지시 사용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"saturation\",\n      \"localized\": \"채도\",\n      \"reload\": \"\",\n      \"hint\": \"채도\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save all generated image grids\",\n      \"localized\": \"생성된 모든 이미지 그리드 저장\",\n      \"reload\": \"\",\n      \"hint\": \"생성된 모든 이미지 그리드 저장\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save all generated images\",\n      \"localized\": \"생성된 모든 이미지 저장\",\n      \"reload\": \"\",\n      \"hint\": \"생성된 모든 이미지 저장\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save caption files\",\n      \"localized\": \"캡션 파일 저장\",\n      \"reload\": \"\",\n      \"hint\": \"캡션 파일을 저장합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save diffusers\",\n      \"localized\": \"디퓨저 저장\",\n      \"reload\": \"\",\n      \"hint\": \"디퓨저를 저장합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save hdr image\",\n      \"localized\": \"HDR 이미지 저장\",\n      \"reload\": \"\",\n      \"hint\": \"HDR 이미지를 저장합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before color correction\",\n      \"localized\": \"색상 보정 전 이미지 저장\",\n      \"reload\": \"\",\n      \"hint\": \"색상 보정 전 이미지를 저장합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before detailer\",\n      \"localized\": \"디테일러 전 이미지 저장\",\n      \"reload\": \"\",\n      \"hint\": \"디테일러 적용 전 이미지를 저장합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before hires\",\n      \"localized\": \"고해상도 처리 전 이미지 저장\",\n      \"reload\": \"\",\n      \"hint\": \"고해상도 처리 전 이미지를 저장합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before refiner\",\n      \"localized\": \"리파이너 전 이미지 저장\",\n      \"reload\": \"\",\n      \"hint\": \"리파이너 적용 전 이미지를 저장합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save images to a subdirectory\",\n      \"localized\": \"이미지를 하위 디렉토리에 저장\",\n      \"reload\": \"\",\n      \"hint\": \"이미지를 하위 디렉토리에 저장합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save init images\",\n      \"localized\": \"초기 이미지 저장\",\n      \"reload\": \"\",\n      \"hint\": \"초기 이미지를 저장합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save inpainting mask\",\n      \"localized\": \"인페인팅 마스크 저장\",\n      \"reload\": \"\",\n      \"hint\": \"인페인팅 마스크를 저장합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save inpainting masked composite\",\n      \"localized\": \"인페인팅 마스크 합성 이미지 저장\",\n      \"reload\": \"\",\n      \"hint\": \"인페인팅 마스크가 적용된 합성 이미지를 저장합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save metadata\",\n      \"localized\": \"메타데이터 저장\",\n      \"reload\": \"\",\n      \"hint\": \"메타데이터를 저장합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save only saves selected image\",\n      \"localized\": \"선택된 이미지만 저장\",\n      \"reload\": \"\",\n      \"hint\": \"선택된 이미지만 저장합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save output\",\n      \"localized\": \"결과물 저장\",\n      \"reload\": \"\",\n      \"hint\": \"결과물을 저장합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save safetensors\",\n      \"localized\": \"세이프텐서 저장\",\n      \"reload\": \"\",\n      \"hint\": \"세이프텐서를 저장합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save unparsed prompt\",\n      \"localized\": \"파싱되지 않은 프롬프트 저장\",\n      \"reload\": \"\",\n      \"hint\": \"파싱되지 않은 프롬프트를 저장합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale  after\",\n      \"localized\": \"이후 스케일\",\n      \"reload\": \"\",\n      \"hint\": \"이후 스케일\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale  before\",\n      \"localized\": \"이전 스케일\",\n      \"reload\": \"\",\n      \"hint\": \"이전 스케일\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale  mask\",\n      \"localized\": \"마스크 스케일\",\n      \"reload\": \"\",\n      \"hint\": \"마스크 스케일\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale factor\",\n      \"localized\": \"스케일 비율\",\n      \"reload\": \"\",\n      \"hint\": \"스케일 비율\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"score\",\n      \"localized\": \"점수\",\n      \"reload\": \"\",\n      \"hint\": \"점수\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"score threshold\",\n      \"localized\": \"점수 임계값\",\n      \"reload\": \"\",\n      \"hint\": \"점수 임계값\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scribble\",\n      \"localized\": \"스크리블\",\n      \"reload\": \"\",\n      \"hint\": \"스크리블\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-attire\",\n      \"localized\": \"sd15-의상\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-의상\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-likeness\",\n      \"localized\": \"sd15-유사성\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-유사성\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-navimixu\",\n      \"localized\": \"sd15-나비믹스\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-나비믹스\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-sexy\",\n      \"localized\": \"sd15-섹시\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-섹시\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-artstyle\",\n      \"localized\": \"sdxl-아트스타일\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-아트스타일\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-negative\",\n      \"localized\": \"sdxl-부정 프롬프트\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-부정 프롬프트\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-sexy\",\n      \"localized\": \"sdxl-섹시\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-섹시\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-sliders\",\n      \"localized\": \"sdxl-슬라이더\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-슬라이더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-toon\",\n      \"localized\": \"sdxl-툰\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-툰\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl: use weighted pooled embeds\",\n      \"localized\": \"sdxl: 가중 풀링 임베드 사용\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl: 가중 풀링 임베드를 사용합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search changelog\",\n      \"localized\": \"변경 로그 검색\",\n      \"reload\": \"\",\n      \"hint\": \"변경 로그를 검색합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search models\",\n      \"localized\": \"모델 검색\",\n      \"reload\": \"\",\n      \"hint\": \"모델을 검색합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search wiki pages\",\n      \"localized\": \"위키 페이지 검색\",\n      \"reload\": \"\",\n      \"hint\": \"위키 페이지를 검색합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"secondary model\",\n      \"localized\": \"보조 모델\",\n      \"reload\": \"\",\n      \"hint\": \"보조 모델\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"segmentanything\",\n      \"localized\": \"세그먼트애니씽\",\n      \"reload\": \"\",\n      \"hint\": \"세그먼트애니씽\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"select\",\n      \"localized\": \"선택\",\n      \"reload\": \"\",\n      \"hint\": \"선택\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"select model\",\n      \"localized\": \"모델 선택\",\n      \"reload\": \"\",\n      \"hint\": \"모델을 선택합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send interrupt\",\n      \"localized\": \"인터럽트 전송\",\n      \"reload\": \"\",\n      \"hint\": \"인터럽트를 전송합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send seed when sending prompt or image to other interface\",\n      \"localized\": \"다른 인터페이스로 프롬프트 또는 이미지 전송 시 시드 전송\",\n      \"reload\": \"\",\n      \"hint\": \"다른 인터페이스로 프롬프트 또는 이미지를 전송할 때 시드를 전송합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send size when sending prompt or image to another interface\",\n      \"localized\": \"다른 인터페이스로 프롬프트 또는 이미지 전송 시 크기 전송\",\n      \"reload\": \"\",\n      \"hint\": \"다른 인터페이스로 프롬프트 또는 이미지를 전송할 때 크기를 전송합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sequential\",\n      \"localized\": \"순차적\",\n      \"reload\": \"\",\n      \"hint\": \"순차적\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"server start time\",\n      \"localized\": \"서버 시작 시간\",\n      \"reload\": \"\",\n      \"hint\": \"서버 시작 시간\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"set at prompt start\",\n      \"localized\": \"프롬프트 시작 시 설정\",\n      \"reload\": \"\",\n      \"hint\": \"프롬프트 시작 시 설정합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"set ui menu states\",\n      \"localized\": \"UI 메뉴 상태 설정\",\n      \"reload\": \"\",\n      \"hint\": \"UI 메뉴 상태를 설정합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"share queries\",\n      \"localized\": \"쿼리 공유\",\n      \"reload\": \"\",\n      \"hint\": \"쿼리를 공유합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shared options\",\n      \"localized\": \"공유 옵션\",\n      \"reload\": \"\",\n      \"hint\": \"공유 옵션\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sharpen\",\n      \"localized\": \"선명하게\",\n      \"reload\": \"\",\n      \"hint\": \"선명하게\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shift\",\n      \"localized\": \"시프트\",\n      \"reload\": \"\",\n      \"hint\": \"시프트\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show grid in results\",\n      \"localized\": \"결과에 그리드 표시\",\n      \"reload\": \"\",\n      \"hint\": \"결과에 그리드를 표시합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show input\",\n      \"localized\": \"입력 표시\",\n      \"reload\": \"\",\n      \"hint\": \"입력을 표시합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show metadata in full screen image browser\",\n      \"localized\": \"전체 화면 이미지 브라우저에 메타데이터 표시\",\n      \"reload\": \"\",\n      \"hint\": \"전체 화면 이미지 브라우저에 메타데이터를 표시합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show motd\",\n      \"localized\": \"motd 표시\",\n      \"reload\": \"\",\n      \"hint\": \"motd를 표시합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show preview\",\n      \"localized\": \"미리보기 표시\",\n      \"reload\": \"\",\n      \"hint\": \"미리보기를 표시합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shuffle weights\",\n      \"localized\": \"가중치 섞기\",\n      \"reload\": \"\",\n      \"hint\": \"가중치를 섞습니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma\",\n      \"localized\": \"시그마\",\n      \"reload\": \"\",\n      \"hint\": \"시그마\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma churn\",\n      \"localized\": \"시그마 처언\",\n      \"reload\": \"\",\n      \"hint\": \"시그마 처언\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma max\",\n      \"localized\": \"시그마 최대\",\n      \"reload\": \"\",\n      \"hint\": \"시그마 최대\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma method\",\n      \"localized\": \"시그마 방식\",\n      \"reload\": \"\",\n      \"hint\": \"시그마 방식\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma min\",\n      \"localized\": \"시그마 최소\",\n      \"reload\": \"\",\n      \"hint\": \"시그마 최소\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma noise\",\n      \"localized\": \"시그마 노이즈\",\n      \"reload\": \"\",\n      \"hint\": \"시그마 노이즈\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma tmin\",\n      \"localized\": \"시그마 tmin\",\n      \"reload\": \"\",\n      \"hint\": \"시그마 tmin\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"simple merge\",\n      \"localized\": \"단순 병합\",\n      \"reload\": \"\",\n      \"hint\": \"단순 병합\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"size\",\n      \"localized\": \"크기\",\n      \"reload\": \"\",\n      \"hint\": \"크기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sketch\",\n      \"localized\": \"스케치\",\n      \"reload\": \"\",\n      \"hint\": \"스케치\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip generation if nan found in latents\",\n      \"localized\": \"잠재 공간에서 NaN 발견 시 생성 건너뛰기\",\n      \"reload\": \"\",\n      \"hint\": \"잠재 공간에서 NaN이 발견되면 생성을 건너뜁니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip guidance layers\",\n      \"localized\": \"안내 계층 건너뛰기\",\n      \"reload\": \"\",\n      \"hint\": \"안내 계층을 건너뜁니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip input frames\",\n      \"localized\": \"입력 프레임 건너뛰기\",\n      \"reload\": \"\",\n      \"hint\": \"입력 프레임을 건너뜁니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"slider\",\n      \"localized\": \"슬라이더\",\n      \"reload\": \"\",\n      \"hint\": \"슬라이더\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"smooth mask\",\n      \"localized\": \"마스크 부드럽게\",\n      \"reload\": \"\",\n      \"hint\": \"마스크를 부드럽게 합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"solver order (where\",\n      \"localized\": \"솔버 순서 (어디서)\",\n      \"reload\": \"\",\n      \"hint\": \"솔버 순서 (어디서)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sort order\",\n      \"localized\": \"정렬 순서\",\n      \"reload\": \"\",\n      \"hint\": \"정렬 순서\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"source subject\",\n      \"localized\": \"원본 피사체\",\n      \"reload\": \"\",\n      \"hint\": \"원본 피사체\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"space\",\n      \"localized\": \"공간\",\n      \"reload\": \"\",\n      \"hint\": \"공간\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"spatial frequency\",\n      \"localized\": \"공간 주파수\",\n      \"reload\": \"\",\n      \"hint\": \"공간 주파수\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"specify model revision\",\n      \"localized\": \"모델 리비전 지정\",\n      \"reload\": \"\",\n      \"hint\": \"모델 리비전을 지정합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"specify model variant\",\n      \"localized\": \"모델 변형 지정\",\n      \"reload\": \"\",\n      \"hint\": \"모델 변형을 지정합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"split attention\",\n      \"localized\": \"분할 어텐션\",\n      \"reload\": \"\",\n      \"hint\": \"분할 어텐션\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"stable-fast\",\n      \"localized\": \"스테이블-패스트\",\n      \"reload\": \"\",\n      \"hint\": \"스테이블-패스트\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"standard\",\n      \"localized\": \"표준\",\n      \"reload\": \"\",\n      \"hint\": \"표준\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"start\",\n      \"localized\": \"시작\",\n      \"reload\": \"\",\n      \"hint\": \"시작\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"start profiling\",\n      \"localized\": \"프로파일링 시작\",\n      \"reload\": \"\",\n      \"hint\": \"프로파일링을 시작합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"state\",\n      \"localized\": \"상태\",\n      \"reload\": \"\",\n      \"hint\": \"상태\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"stride\",\n      \"localized\": \"스트라이드\",\n      \"reload\": \"\",\n      \"hint\": \"스트라이드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"structure\",\n      \"localized\": \"구조\",\n      \"reload\": \"\",\n      \"hint\": \"구조\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"style fidelity\",\n      \"localized\": \"스타일 충실도\",\n      \"reload\": \"\",\n      \"hint\": \"스타일 충실도\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"subject\",\n      \"localized\": \"피사체\",\n      \"reload\": \"\",\n      \"hint\": \"피사체\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"submit results\",\n      \"localized\": \"결과 제출\",\n      \"reload\": \"\",\n      \"hint\": \"결과를 제출합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"submodules\",\n      \"localized\": \"서브모듈\",\n      \"reload\": \"\",\n      \"hint\": \"서브모듈\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap x/y\",\n      \"localized\": \"x/y 교환\",\n      \"reload\": \"\",\n      \"hint\": \"x/y를 교환합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap x/z\",\n      \"localized\": \"x/z 교환\",\n      \"reload\": \"\",\n      \"hint\": \"x/z를 교환합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap y/z\",\n      \"localized\": \"y/z 교환\",\n      \"reload\": \"\",\n      \"hint\": \"y/z를 교환합니다\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i adapter\",\n      \"localized\": \"t2i 어댑터\",\n      \"reload\": \"\",\n      \"hint\": \"t2i 어댑터\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i strength\",\n      \"localized\": \"t2i 강도\",\n      \"reload\": \"\",\n      \"hint\": \"t2i 강도\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 1\",\n      \"localized\": \"t2i-어댑터 유닛 1\",\n      \"reload\": \"\",\n      \"hint\": \"t2i-어댑터 유닛 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 2\",\n      \"localized\": \"t2i-어댑터 유닛 2\",\n      \"reload\": \"\",\n      \"hint\": \"t2i-어댑터 유닛 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 3\",\n      \"localized\": \"t2i-어댑터 유닛 3\",\n      \"reload\": \"\",\n      \"hint\": \"t2i-어댑터 유닛 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 4\",\n      \"localized\": \"t2i-어댑터 유닛 4\",\n      \"reload\": \"\",\n      \"hint\": \"t2i-어댑터 유닛 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd\",\n      \"localized\": \"taesd\",\n      \"reload\": \"\",\n      \"hint\": \"taesd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd decode layers\",\n      \"localized\": \"taesd 디코드 레이어\",\n      \"reload\": \"\",\n      \"hint\": \"taesd 디코드 레이어\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd variant\",\n      \"localized\": \"taesd 변형\",\n      \"reload\": \"\",\n      \"hint\": \"taesd 변형\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"target subject\",\n      \"localized\": \"타겟 피사체\",\n      \"reload\": \"\",\n      \"hint\": \"타겟 피사체\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tcd\",\n      \"localized\": \"tcd\",\n      \"reload\": \"\",\n      \"hint\": \"tcd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tdd\",\n      \"localized\": \"tdd\",\n      \"reload\": \"\",\n      \"hint\": \"tdd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"te\",\n      \"localized\": \"te\",\n      \"reload\": \"\",\n      \"hint\": \"te\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"temperature\",\n      \"localized\": \"온도\",\n      \"reload\": \"\",\n      \"hint\": \"온도\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"temporal frequency\",\n      \"localized\": \"시간 주파수\",\n      \"reload\": \"\",\n      \"hint\": \"시간 주파수\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tertiary model\",\n      \"localized\": \"3차 모델\",\n      \"reload\": \"\",\n      \"hint\": \"3차 모델\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text encoder cache size\",\n      \"localized\": \"텍스트 인코더 캐시 크기\",\n      \"reload\": \"\",\n      \"hint\": \"텍스트 인코더 캐시 크기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text encoder model\",\n      \"localized\": \"텍스트 인코더 모델\",\n      \"reload\": \"\",\n      \"hint\": \"텍스트 인코더 모델\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text inputs\",\n      \"localized\": \"텍스트 입력\",\n      \"reload\": \"\",\n      \"hint\": \"텍스트 입력\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"textbox\",\n      \"localized\": \"텍스트 상자\",\n      \"reload\": \"\",\n      \"hint\": \"텍스트 상자\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"threshold\",\n      \"localized\": \"임계값\",\n      \"reload\": \"\",\n      \"hint\": \"임계값\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"thresholding\",\n      \"localized\": \"임계 처리\",\n      \"reload\": \"\",\n      \"hint\": \"임계 처리\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile frames\",\n      \"localized\": \"타일 프레임\",\n      \"reload\": \"\",\n      \"hint\": \"타일 프레임\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=1\",\n      \"localized\": \"타일 프롬프트: x=1 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"타일 프롬프트: x=1 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=2\",\n      \"localized\": \"타일 프롬프트: x=1 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"타일 프롬프트: x=1 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=3\",\n      \"localized\": \"타일 프롬프트: x=1 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"타일 프롬프트: x=1 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=4\",\n      \"localized\": \"타일 프롬프트: x=1 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"타일 프롬프트: x=1 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=1\",\n      \"localized\": \"타일 프롬프트: x=2 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"타일 프롬프트: x=2 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=2\",\n      \"localized\": \"타일 프롬프트: x=2 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"타일 프롬프트: x=2 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=3\",\n      \"localized\": \"타일 프롬프트: x=2 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"타일 프롬프트: x=2 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=4\",\n      \"localized\": \"타일 프롬프트: x=2 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"타일 프롬프트: x=2 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=1\",\n      \"localized\": \"타일 프롬프트: x=3 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"타일 프롬프트: x=3 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=2\",\n      \"localized\": \"타일 프롬프트: x=3 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"타일 프롬프트: x=3 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=3\",\n      \"localized\": \"타일 프롬프트: x=3 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"타일 프롬프트: x=3 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=4\",\n      \"localized\": \"타일 프롬프트: x=3 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"타일 프롬프트: x=3 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=1\",\n      \"localized\": \"타일 프롬프트: x=4 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"타일 프롬프트: x=4 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=2\",\n      \"localized\": \"타일 프롬프트: x=4 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"타일 프롬프트: x=4 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=3\",\n      \"localized\": \"타일 프롬프트: x=4 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"타일 프롬프트: x=4 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=4\",\n      \"localized\": \"타일 프롬프트: x=4 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"타일 프롬프트: x=4 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tiling options\",\n      \"localized\": \"타일링 옵션\",\n      \"reload\": \"\",\n      \"hint\": \"타일링 옵션\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time embedding mix\",\n      \"localized\": \"시간 임베딩 혼합\",\n      \"reload\": \"\",\n      \"hint\": \"시간 임베딩 혼합\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time_quadratic\",\n      \"localized\": \"time_quadratic\",\n      \"reload\": \"\",\n      \"hint\": \"time_quadratic\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time_uniform\",\n      \"localized\": \"time_uniform\",\n      \"reload\": \"\",\n      \"hint\": \"time_uniform\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep\",\n      \"localized\": \"타임스텝\",\n      \"reload\": \"\",\n      \"hint\": \"타임스텝\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep skip end\",\n      \"localized\": \"타임스텝 건너뛰기 종료\",\n      \"reload\": \"\",\n      \"hint\": \"타임스텝 건너뛰기 종료\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep skip start\",\n      \"localized\": \"타임스텝 건너뛰기 시작\",\n      \"reload\": \"\",\n      \"hint\": \"타임스텝 건너뛰기 시작\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep spacing\",\n      \"localized\": \"타임스텝 간격\",\n      \"reload\": \"\",\n      \"hint\": \"타임스텝 간격\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps\",\n      \"localized\": \"타임스텝\",\n      \"reload\": \"\",\n      \"hint\": \"타임스텝\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps override\",\n      \"localized\": \"타임스텝 재정의\",\n      \"reload\": \"\",\n      \"hint\": \"타임스텝 재정의\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps presets\",\n      \"localized\": \"타임스텝 프리셋\",\n      \"reload\": \"\",\n      \"hint\": \"타임스텝 프리셋\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps range\",\n      \"localized\": \"타임스텝 범위\",\n      \"reload\": \"\",\n      \"hint\": \"타임스텝 범위\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tiny\",\n      \"localized\": \"작은\",\n      \"reload\": \"\",\n      \"hint\": \"작은\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"todo\",\n      \"localized\": \"할 일\",\n      \"reload\": \"\",\n      \"hint\": \"할 일\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tome\",\n      \"localized\": \"tome\",\n      \"reload\": \"\",\n      \"hint\": \"tome\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tool\",\n      \"localized\": \"도구\",\n      \"reload\": \"\",\n      \"hint\": \"도구\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"top-k\",\n      \"localized\": \"top-k\",\n      \"reload\": \"\",\n      \"hint\": \"top-k\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"top-p\",\n      \"localized\": \"top-p\",\n      \"reload\": \"\",\n      \"hint\": \"top-p\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"torch\",\n      \"localized\": \"torch\",\n      \"reload\": \"\",\n      \"hint\": \"torch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"transformer\",\n      \"localized\": \"트랜스포머\",\n      \"reload\": \"\",\n      \"hint\": \"트랜스포머\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"trigger word\",\n      \"localized\": \"트리거 단어\",\n      \"reload\": \"\",\n      \"hint\": \"트리거 단어\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"true\",\n      \"localized\": \"참\",\n      \"reload\": \"\",\n      \"hint\": \"참\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tunable ops limit\",\n      \"localized\": \"튜닝 가능한 연산 제한\",\n      \"reload\": \"\",\n      \"hint\": \"튜닝 가능한 연산 제한\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ufogen\",\n      \"localized\": \"ufogen\",\n      \"reload\": \"\",\n      \"hint\": \"ufogen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui card size (px)\",\n      \"localized\": \"UI 카드 크기 (px)\",\n      \"reload\": \"\",\n      \"hint\": \"UI 카드 크기 (px)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui fetch network info on mouse-over\",\n      \"localized\": \"UI 마우스 오버 시 네트워크 정보 가져오기\",\n      \"reload\": \"\",\n      \"hint\": \"UI 마우스 오버 시 네트워크 정보 가져오기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui height (%)\",\n      \"localized\": \"UI 높이 (%)\",\n      \"reload\": \"\",\n      \"hint\": \"UI 높이 (%)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui locale\",\n      \"localized\": \"UI 로케일\",\n      \"reload\": \"\",\n      \"hint\": \"UI 로케일\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui request timeout\",\n      \"localized\": \"UI 요청 시간 초과\",\n      \"reload\": \"\",\n      \"hint\": \"UI 요청 시간 초과\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui show on startup\",\n      \"localized\": \"UI 시작 시 표시\",\n      \"reload\": \"\",\n      \"hint\": \"UI 시작 시 표시\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui sidebar width (%)\",\n      \"localized\": \"UI 사이드바 너비 (%)\",\n      \"reload\": \"\",\n      \"hint\": \"UI 사이드바 너비 (%)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui theme\",\n      \"localized\": \"UI 테마\",\n      \"reload\": \"\",\n      \"hint\": \"UI 테마\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet\",\n      \"localized\": \"unet\",\n      \"reload\": \"\",\n      \"hint\": \"unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet depth\",\n      \"localized\": \"unet 깊이\",\n      \"reload\": \"\",\n      \"hint\": \"unet 깊이\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet enabled\",\n      \"localized\": \"unet 활성화됨\",\n      \"reload\": \"\",\n      \"hint\": \"unet 활성화됨\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet max tile size\",\n      \"localized\": \"unet 최대 타일 크기\",\n      \"reload\": \"\",\n      \"hint\": \"unet 최대 타일 크기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet min tile size\",\n      \"localized\": \"unet 최소 타일 크기\",\n      \"reload\": \"\",\n      \"hint\": \"unet 최소 타일 크기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet model\",\n      \"localized\": \"unet 모델\",\n      \"reload\": \"\",\n      \"hint\": \"unet 모델\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet swap size\",\n      \"localized\": \"unet 스왑 크기\",\n      \"reload\": \"\",\n      \"hint\": \"unet 스왑 크기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"uniform\",\n      \"localized\": \"균일\",\n      \"reload\": \"\",\n      \"hint\": \"균일\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"units\",\n      \"localized\": \"단위\",\n      \"reload\": \"\",\n      \"hint\": \"단위\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unload current model from vram\",\n      \"localized\": \"현재 모델을 VRAM에서 언로드\",\n      \"reload\": \"\",\n      \"hint\": \"현재 모델을 VRAM에서 언로드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unload upscaler after processing\",\n      \"localized\": \"처리 후 업스케일러 언로드\",\n      \"reload\": \"\",\n      \"hint\": \"처리 후 업스케일러 언로드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unset\",\n      \"localized\": \"설정 해제\",\n      \"reload\": \"\",\n      \"hint\": \"설정 해제\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"up\",\n      \"localized\": \"up\",\n      \"reload\": \"\",\n      \"hint\": \"up\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"upcast attention layer\",\n      \"localized\": \"업캐스트 어텐션 레이어\",\n      \"reload\": \"\",\n      \"hint\": \"업캐스트 어텐션 레이어\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"update\",\n      \"localized\": \"업데이트\",\n      \"reload\": \"\",\n      \"hint\": \"업데이트\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"upload\",\n      \"localized\": \"업로드\",\n      \"reload\": \"\",\n      \"hint\": \"업로드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use brownian noise\",\n      \"localized\": \"브라운 노이즈 사용\",\n      \"reload\": \"\",\n      \"hint\": \"브라운 노이즈 사용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use cached model config when available\",\n      \"localized\": \"사용 가능한 경우 캐시된 모델 설정 사용\",\n      \"reload\": \"\",\n      \"hint\": \"사용 가능한 경우 캐시된 모델 설정 사용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use defaults\",\n      \"localized\": \"기본값 사용\",\n      \"reload\": \"\",\n      \"hint\": \"기본값 사용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use dynamic thresholding\",\n      \"localized\": \"동적 임계 처리 사용\",\n      \"reload\": \"\",\n      \"hint\": \"동적 임계 처리 사용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use fixed width thumbnails\",\n      \"localized\": \"고정 너비 썸네일 사용\",\n      \"reload\": \"\",\n      \"hint\": \"고정 너비 썸네일 사용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use image gallery cache\",\n      \"localized\": \"이미지 갤러리 캐시 사용\",\n      \"reload\": \"\",\n      \"hint\": \"이미지 갤러리 캐시 사용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use karras sigmas\",\n      \"localized\": \"카라스 시그마 사용\",\n      \"reload\": \"\",\n      \"hint\": \"카라스 시그마 사용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use line break as prompt segment marker\",\n      \"localized\": \"줄 바꿈을 프롬프트 세그먼트 마커로 사용\",\n      \"reload\": \"\",\n      \"hint\": \"줄 바꿈을 프롬프트 세그먼트 마커로 사용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use model ema weights when possible\",\n      \"localized\": \"가능한 경우 모델 EMA 가중치 사용\",\n      \"reload\": \"\",\n      \"hint\": \"가능한 경우 모델 EMA 가중치 사용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use quantization\",\n      \"localized\": \"양자화 사용\",\n      \"reload\": \"\",\n      \"hint\": \"양자화 사용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use random seeds\",\n      \"localized\": \"무작위 시드 사용\",\n      \"reload\": \"\",\n      \"hint\": \"무작위 시드 사용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use reference values when available\",\n      \"localized\": \"사용 가능한 경우 참조 값 사용\",\n      \"reload\": \"\",\n      \"hint\": \"사용 가능한 경우 참조 값 사용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use same seed\",\n      \"localized\": \"동일한 시드 사용\",\n      \"reload\": \"\",\n      \"hint\": \"동일한 시드 사용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use sample\",\n      \"localized\": \"샘플 사용\",\n      \"reload\": \"\",\n      \"hint\": \"샘플 사용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use separate base dict\",\n      \"localized\": \"별도 기본 사전 사용\",\n      \"reload\": \"\",\n      \"hint\": \"별도 기본 사전 사용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use simplified solvers in final steps\",\n      \"localized\": \"최종 단계에서 간소화된 솔버 사용\",\n      \"reload\": \"\",\n      \"hint\": \"최종 단계에서 간소화된 솔버 사용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use text inputs\",\n      \"localized\": \"텍스트 입력 사용\",\n      \"reload\": \"\",\n      \"hint\": \"텍스트 입력 사용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"user\",\n      \"localized\": \"사용자\",\n      \"reload\": \"\",\n      \"hint\": \"사용자\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"username\",\n      \"localized\": \"사용자 이름\",\n      \"reload\": \"\",\n      \"hint\": \"사용자 이름\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"v_prediction\",\n      \"localized\": \"v_예측\",\n      \"reload\": \"\",\n      \"hint\": \"v_예측\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae enabled\",\n      \"localized\": \"VAE 활성화됨\",\n      \"reload\": \"\",\n      \"hint\": \"VAE 활성화됨\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae sliced encode\",\n      \"localized\": \"VAE 슬라이스 인코딩\",\n      \"reload\": \"\",\n      \"hint\": \"VAE 슬라이스 인코딩\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae swap size\",\n      \"localized\": \"VAE 스왑 크기\",\n      \"reload\": \"\",\n      \"hint\": \"VAE 스왑 크기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae tile overlap\",\n      \"localized\": \"VAE 타일 오버랩\",\n      \"reload\": \"\",\n      \"hint\": \"VAE 타일 오버랩\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae tile size\",\n      \"localized\": \"VAE 타일 크기\",\n      \"reload\": \"\",\n      \"hint\": \"VAE 타일 크기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vary_coeff\",\n      \"localized\": \"변이 계수\",\n      \"reload\": \"\",\n      \"hint\": \"변이 계수\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vdm solver\",\n      \"localized\": \"VDM 솔버\",\n      \"reload\": \"\",\n      \"hint\": \"VDM 솔버\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"version\",\n      \"localized\": \"버전\",\n      \"reload\": \"\",\n      \"hint\": \"버전\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vgen params\",\n      \"localized\": \"VGen 파라미터\",\n      \"reload\": \"\",\n      \"hint\": \"VGen 파라미터\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vibrance\",\n      \"localized\": \"생동감\",\n      \"reload\": \"\",\n      \"hint\": \"생동감\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"video file\",\n      \"localized\": \"비디오 파일\",\n      \"reload\": \"\",\n      \"hint\": \"비디오 파일\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"video type\",\n      \"localized\": \"비디오 유형\",\n      \"reload\": \"\",\n      \"hint\": \"비디오 유형\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm\",\n      \"localized\": \"VLM\",\n      \"reload\": \"\",\n      \"hint\": \"VLM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm model\",\n      \"localized\": \"VLM 모델\",\n      \"reload\": \"\",\n      \"hint\": \"VLM 모델\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: default model\",\n      \"localized\": \"VLM: 기본 모델\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: 기본 모델\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: default prompt\",\n      \"localized\": \"VLM: 기본 프롬프트\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: 기본 프롬프트\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: max length\",\n      \"localized\": \"VLM: 최대 길이\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: 최대 길이\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: num beams\",\n      \"localized\": \"VLM: 빔 개수\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: 빔 개수\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: top-k\",\n      \"localized\": \"VLM: top-k\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: top-k\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: top-p\",\n      \"localized\": \"VLM: top-p\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: top-p\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: use sample method\",\n      \"localized\": \"VLM: 샘플링 방식 사용\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: 샘플링 방식 사용\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"warmth\",\n      \"localized\": \"온기\",\n      \"reload\": \"\",\n      \"hint\": \"온기\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"webp lossless compression\",\n      \"localized\": \"WebP 무손실 압축\",\n      \"reload\": \"\",\n      \"hint\": \"WebP 무손실 압축\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"weight\",\n      \"localized\": \"가중치\",\n      \"reload\": \"\",\n      \"hint\": \"가중치\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width after\",\n      \"localized\": \"너비 (후)\",\n      \"reload\": \"\",\n      \"hint\": \"너비 (후)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width before\",\n      \"localized\": \"너비 (전)\",\n      \"reload\": \"\",\n      \"hint\": \"너비 (전)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width mask\",\n      \"localized\": \"너비 마스크\",\n      \"reload\": \"\",\n      \"hint\": \"너비 마스크\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"wiki\",\n      \"localized\": \"위키\",\n      \"reload\": \"\",\n      \"hint\": \"위키\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"wildcards\",\n      \"localized\": \"와일드카드\",\n      \"reload\": \"\",\n      \"hint\": \"와일드카드\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x components\",\n      \"localized\": \"X 구성 요소\",\n      \"reload\": \"\",\n      \"hint\": \"X 구성 요소\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x overlap\",\n      \"localized\": \"X 오버랩\",\n      \"reload\": \"\",\n      \"hint\": \"X 오버랩\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x type\",\n      \"localized\": \"X 유형\",\n      \"reload\": \"\",\n      \"hint\": \"X 유형\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x-axis tile overlap\",\n      \"localized\": \"X축 타일 오버랩\",\n      \"reload\": \"\",\n      \"hint\": \"X축 타일 오버랩\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x-axis tiles\",\n      \"localized\": \"X축 타일\",\n      \"reload\": \"\",\n      \"hint\": \"X축 타일\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xhinker\",\n      \"localized\": \"xhinker\",\n      \"reload\": \"\",\n      \"hint\": \"xhinker\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xs\",\n      \"localized\": \"xs\",\n      \"reload\": \"\",\n      \"hint\": \"xs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y components\",\n      \"localized\": \"Y 구성 요소\",\n      \"reload\": \"\",\n      \"hint\": \"Y 구성 요소\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y overlap\",\n      \"localized\": \"Y 오버랩\",\n      \"reload\": \"\",\n      \"hint\": \"Y 오버랩\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y type\",\n      \"localized\": \"Y 유형\",\n      \"reload\": \"\",\n      \"hint\": \"Y 유형\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y-axis tile overlap\",\n      \"localized\": \"Y축 타일 오버랩\",\n      \"reload\": \"\",\n      \"hint\": \"Y축 타일 오버랩\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y-axis tiles\",\n      \"localized\": \"Y축 타일\",\n      \"reload\": \"\",\n      \"hint\": \"Y축 타일\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"z type\",\n      \"localized\": \"Z 유형\",\n      \"reload\": \"\",\n      \"hint\": \"Z 유형\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"zero\",\n      \"localized\": \"제로\",\n      \"reload\": \"\",\n      \"hint\": \"제로\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"zoe depth\",\n      \"localized\": \"Zoe 깊이\",\n      \"reload\": \"\",\n      \"hint\": \"Zoe 깊이\"\n    }\n  ]\n}\n"
  },
  {
    "path": "html/locale_pt.json",
    "content": "{\n  \"icons\": [\n    {\n      \"id\": \"\",\n      \"label\": \"🎲️\",\n      \"localized\": \"Aleatório\",\n      \"reload\": \"\",\n      \"hint\": \"Usar semente aleatória\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔄\",\n      \"localized\": \"Redefinir\",\n      \"reload\": \"\",\n      \"hint\": \"Redefinir valores\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⬆️\",\n      \"localized\": \"Carregar imagem\",\n      \"reload\": \"\",\n      \"hint\": \"Carregar imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⬅️\",\n      \"localized\": \"Reutilizar imagem\",\n      \"reload\": \"\",\n      \"hint\": \"Reutilizar imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇅\",\n      \"localized\": \"Trocar valores\",\n      \"reload\": \"\",\n      \"hint\": \"Trocar valores\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇨\",\n      \"localized\": \"Aplicar predefinição\",\n      \"reload\": \"\",\n      \"hint\": \"Aplicar predefinição à aba de Fusão Manual de Blocos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🕮\",\n      \"localized\": \"Salvar estilo\",\n      \"reload\": \"\",\n      \"hint\": \"Salvar parâmetros da última imagem gerada como modelo de estilo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇕\",\n      \"localized\": \"Ordenar\",\n      \"reload\": \"\",\n      \"hint\": \"Ordenar por: Nome asc/desc, Tamanho maior/menor, Tempo mais novo/antigo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⟲\",\n      \"localized\": \"Atualizar\",\n      \"reload\": \"\",\n      \"hint\": \"Atualizar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"✕\",\n      \"localized\": \"Fechar\",\n      \"reload\": \"\",\n      \"hint\": \"Fechar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⊜\",\n      \"localized\": \"Preencher\",\n      \"reload\": \"\",\n      \"hint\": \"Preencher\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"※\",\n      \"localized\": \"Carregar modelo\",\n      \"reload\": \"\",\n      \"hint\": \"Carregar modelo como refinador quando selecionado, caso contrário, carregar como modelo base\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔎︎\",\n      \"localized\": \"Escanear\",\n      \"reload\": \"\",\n      \"hint\": \"Escanear CivitAI por metadados e pré-visualizações ausentes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"☲\",\n      \"localized\": \"Mudar visualização\",\n      \"reload\": \"\",\n      \"hint\": \"Mudar tipo de visualização\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⊗\",\n      \"localized\": \"Redefinir\",\n      \"reload\": \"\",\n      \"hint\": \"Redefinir valores\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"📐\",\n      \"localized\": \"Medir\",\n      \"reload\": \"\",\n      \"hint\": \"Medir\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔍\",\n      \"localized\": \"Pesquisar\",\n      \"reload\": \"\",\n      \"hint\": \"Pesquisar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🖌️\",\n      \"localized\": \"Remover LaMa\",\n      \"reload\": \"\",\n      \"hint\": \"LaMa remover objeto selecionado da imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🖼️\",\n      \"localized\": \"Mostrar pré-visualização\",\n      \"reload\": \"\",\n      \"hint\": \"Mostrar pré-visualização\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"Interrogar imagem\",\n      \"reload\": \"\",\n      \"hint\": \"Interrogar imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⁜\",\n      \"localized\": \"Ciclar ajuste de imagem\",\n      \"reload\": \"\",\n      \"hint\": \"Ciclar método de ajuste de imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"↶\",\n      \"localized\": \"Aplicar estilo\",\n      \"reload\": \"\",\n      \"hint\": \"Aplicar estilo selecionado ao prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"↷\",\n      \"localized\": \"Salvar prompt\",\n      \"reload\": \"\",\n      \"hint\": \"Salvar prompt atual no estilo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"Nome ascendente\",\n      \"reload\": \"\",\n      \"hint\": \"Ordenar por nome, ascendente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"Nome descendente\",\n      \"reload\": \"\",\n      \"hint\": \"Ordenar por nome, descendente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"Tamanho ascendente\",\n      \"reload\": \"\",\n      \"hint\": \"Ordenar por tamanho, ascendente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"Tamanho descendente\",\n      \"reload\": \"\",\n      \"hint\": \"Ordenar por tamanho, descendente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"Resolução ascendente\",\n      \"reload\": \"\",\n      \"hint\": \"Ordenar por resolução, ascendente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"Resolução descendente\",\n      \"reload\": \"\",\n      \"hint\": \"Ordenar por resolução, descendente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"Tempo ascendente\",\n      \"reload\": \"\",\n      \"hint\": \"Ordenar por tempo, ascendente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"Tempo descendente\",\n      \"reload\": \"\",\n      \"hint\": \"Ordenar por tempo, descendente\"\n    }\n  ],\n  \"main\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt\",\n      \"localized\": \"Prompt\",\n      \"reload\": \"\",\n      \"hint\": \"Descreva a imagem que você deseja gerar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Start\",\n      \"localized\": \"Iniciar\",\n      \"reload\": \"\",\n      \"hint\": \"Iniciar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"End\",\n      \"localized\": \"Fim\",\n      \"reload\": \"\",\n      \"hint\": \"Fim\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Core\",\n      \"localized\": \"Principal\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações principais\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System prompt\",\n      \"localized\": \"Prompt do sistema\",\n      \"reload\": \"\",\n      \"hint\": \"O prompt do sistema controla o comportamento do LLM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Negative prompt\",\n      \"localized\": \"Prompt negativo\",\n      \"reload\": \"\",\n      \"hint\": \"Descreva o que você não deseja ver na imagem gerada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Text\",\n      \"localized\": \"Texto\",\n      \"reload\": \"\",\n      \"hint\": \"Criar imagem a partir do texto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image\",\n      \"localized\": \"Imagem\",\n      \"reload\": \"\",\n      \"hint\": \"Criar imagem a partir de imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control\",\n      \"localized\": \"Controle\",\n      \"reload\": \"\",\n      \"hint\": \"Criar imagem com orientação completa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process\",\n      \"localized\": \"Processar\",\n      \"reload\": \"\",\n      \"hint\": \"Processar imagem existente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Caption\",\n      \"localized\": \"Legenda\",\n      \"reload\": \"\",\n      \"hint\": \"Analisar imagens existentes e criar descrições de texto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Interrogate\",\n      \"localized\": \"Interrogar\",\n      \"reload\": \"\",\n      \"hint\": \"Executar interrogação para obter a descrição da sua imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models\",\n      \"localized\": \"Modelos\",\n      \"reload\": \"\",\n      \"hint\": \"Baixe, converta ou mescle seus modelos e gerencie metadados de modelos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Agent Scheduler\",\n      \"localized\": \"Agendador de Agentes\",\n      \"reload\": \"\",\n      \"hint\": \"Enfileire suas solicitações de geração e execute-as em segundo plano\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"AgentScheduler\",\n      \"localized\": \"Agendador de Agentes\",\n      \"reload\": \"\",\n      \"hint\": \"Enfileire suas solicitações de geração e execute-as em segundo plano\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System\",\n      \"localized\": \"Sistema\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações e informações do sistema\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System Info\",\n      \"localized\": \"Informações do Sistema\",\n      \"reload\": \"\",\n      \"hint\": \"Informações do sistema\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Settings\",\n      \"localized\": \"Configurações\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações do aplicativo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Script\",\n      \"localized\": \"Script\",\n      \"reload\": \"\",\n      \"hint\": \"Scripts adicionais a serem usados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Generate\",\n      \"localized\": \"Gerar\",\n      \"reload\": \"\",\n      \"hint\": \"Iniciar processamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Generate forever\",\n      \"localized\": \"Gerar continuamente\",\n      \"reload\": \"\",\n      \"hint\": \"Iniciar processamento e continuar até ser cancelado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enqueue\",\n      \"localized\": \"Enfileirar\",\n      \"reload\": \"\",\n      \"hint\": \"Adicionar tarefa à fila em segundo plano no Agendador de Agentes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reprocess\",\n      \"localized\": \"Reprocessar\",\n      \"reload\": \"\",\n      \"hint\": \"Reprocessar gerações anteriores usando parâmetros diferentes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Stop\",\n      \"localized\": \"Parar\",\n      \"reload\": \"\",\n      \"hint\": \"Parar processamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Skip\",\n      \"localized\": \"Pular\",\n      \"reload\": \"\",\n      \"hint\": \"Parar o trabalho atual e continuar o processamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Pause\",\n      \"localized\": \"Pausar\",\n      \"reload\": \"\",\n      \"hint\": \"Pausar processamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore\",\n      \"localized\": \"Restaurar\",\n      \"reload\": \"\",\n      \"hint\": \"Restaurar parâmetros do prompt atual ou da última imagem gerada conhecida\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Clear\",\n      \"localized\": \"Limpar\",\n      \"reload\": \"\",\n      \"hint\": \"Limpar prompts\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Networks\",\n      \"localized\": \"Redes\",\n      \"reload\": \"\",\n      \"hint\": \"Interface de usuário de redes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Default strength\",\n      \"localized\": \"Força padrão\",\n      \"reload\": \"\",\n      \"hint\": \"Ao adicionar uma rede extra como LoRA ao prompt, use este multiplicador para ela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscale\",\n      \"localized\": \"Aumentar escala\",\n      \"reload\": \"\",\n      \"hint\": \"Aumentar a escala da imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model\",\n      \"localized\": \"Modelo\",\n      \"reload\": \"\",\n      \"hint\": \"Modelo base\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompts\",\n      \"localized\": \"Prompts\",\n      \"reload\": \"\",\n      \"hint\": \"Prompt de imagem e prompt negativo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Base\",\n      \"localized\": \"Base\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações base usadas para executar a geração de imagens\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Style\",\n      \"localized\": \"Estilo\",\n      \"reload\": \"\",\n      \"hint\": \"Estilos adicionais a serem aplicados nos parâmetros de geração selecionados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Styles\",\n      \"localized\": \"Estilos\",\n      \"reload\": \"\",\n      \"hint\": \"Estilos adicionais a serem aplicados nos parâmetros de geração selecionados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Lora\",\n      \"localized\": \"LoRA\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA: Adaptação de Baixa Classificação. Modelo ajustado que é aplicado sobre um modelo carregado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Embedding\",\n      \"localized\": \"Embedding\",\n      \"reload\": \"\",\n      \"hint\": \"O embedding de inversão textual é uma informação incorporada treinada sobre o assunto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Hypernetwork\",\n      \"localized\": \"Hiperrede\",\n      \"reload\": \"\",\n      \"hint\": \"Pequena rede neural treinada que modifica o comportamento do modelo carregado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VLM Caption\",\n      \"localized\": \"Legenda VLM\",\n      \"reload\": \"\",\n      \"hint\": \"Analisar imagem usando modelo de linguagem de visão\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CLiP Interrogate\",\n      \"localized\": \"CLiP Interrogar\",\n      \"reload\": \"\",\n      \"hint\": \"Analisar imagem usando modelo CLiP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE\",\n      \"localized\": \"VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Autoencoder Variacional: modelo usado para decodificar imagens no final da geração\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"History\",\n      \"localized\": \"Histórico\",\n      \"reload\": \"\",\n      \"hint\": \"Lista de gerações anteriores que podem ser reprocessadas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"UI disable variable aspect ratio\",\n      \"localized\": \"UI desabilitar proporção variável\",\n      \"reload\": \"\",\n      \"hint\": \"Quando desativado, todas as miniaturas aparecem como imagens quadradas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Build info on first access\",\n      \"localized\": \"Compilar informações no primeiro acesso\",\n      \"reload\": \"\",\n      \"hint\": \"Impede o servidor de construir a página EN na inicialização e, em vez disso, a constrói quando solicitada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show reference styles\",\n      \"localized\": \"Mostrar estilos de referência\",\n      \"reload\": \"\",\n      \"hint\": \"Mostrar ou ocultar estilos embutidos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA load using Diffusers method\",\n      \"localized\": \"Carregamento LoRA usando método Diffusers\",\n      \"reload\": \"\",\n      \"hint\": \"Método alternativo usa recursos LoRA embutidos do Diffusers em vez da implementação nativa do SD.Next (pode reduzir a compatibilidade do LoRA)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA fuse directly to model\",\n      \"localized\": \"Fusão LoRA diretamente no modelo\",\n      \"reload\": \"\",\n      \"hint\": \"Ao carregar LoRAs, mesclar imediatamente os pesos com o modelo subjacente em vez de aplicá-los em tempo real\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA memory cache\",\n      \"localized\": \"Cache de memória LoRA\",\n      \"reload\": \"\",\n      \"hint\": \"Quantos LoRAs manter na rede para uso futuro antes de exigir o recarregamento do armazenamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Local\",\n      \"localized\": \"Local\",\n      \"reload\": \"\",\n      \"hint\": \"Modelos que são baixados e prontos para uso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Gallery\",\n      \"localized\": \"Galeria\",\n      \"reload\": \"\",\n      \"hint\": \"Galeria de imagens\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reference\",\n      \"localized\": \"Referência\",\n      \"reload\": \"\",\n      \"hint\": \"Lista de modelos de referência que podem ser baixados automaticamente no primeiro uso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Samplers\",\n      \"localized\": \"Amostradores\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações avançadas de amostradores/agendadores\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Seed\",\n      \"localized\": \"Semente\",\n      \"reload\": \"\",\n      \"hint\": \"Semente inicial e variação\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Advanced\",\n      \"localized\": \"Avançado\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações avançadas usadas para executar a geração de imagens\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scripts\",\n      \"localized\": \"Scripts\",\n      \"reload\": \"\",\n      \"hint\": \"Habilitar recursos adicionais usando scripts selecionados durante o processo de geração\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Corrections\",\n      \"localized\": \"Correções\",\n      \"reload\": \"\",\n      \"hint\": \"Controlar correções de cor/nitidez/brilho da imagem durante o processo de geração\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Parameters\",\n      \"localized\": \"Parâmetros\",\n      \"reload\": \"\",\n      \"hint\": \"Parâmetros base usados durante a geração de imagens\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine\",\n      \"localized\": \"Refinar\",\n      \"reload\": \"\",\n      \"hint\": \"Refinar executa processamento adicional após a conclusão do processamento inicial e pode ser usado para aumentar a escala da imagem e, opcionalmente, processá-la novamente para aumentar a qualidade e os detalhes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer\",\n      \"localized\": \"Detalhador\",\n      \"reload\": \"\",\n      \"hint\": \"O detalhador executa uma geração adicional em resolução mais alta para objetos detectados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize\",\n      \"localized\": \"Redimensionar\",\n      \"reload\": \"\",\n      \"hint\": \"Redimensionamento de imagem, pode usar resolução fixa com base na escala\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch\",\n      \"localized\": \"Lote\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações de processamento em lote\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoise\",\n      \"localized\": \"Remover ruído\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações de remoção de ruído. Um valor de remoção de ruído mais alto significa que mais do conteúdo da imagem existente pode ser alterado durante a geração\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mask\",\n      \"localized\": \"Máscara\",\n      \"reload\": \"\",\n      \"hint\": \"Mascaramento de imagem e opções de máscara\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Input\",\n      \"localized\": \"Entrada\",\n      \"reload\": \"\",\n      \"hint\": \"Seleção de mídia de entrada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Video\",\n      \"localized\": \"Vídeo\",\n      \"reload\": \"\",\n      \"hint\": \"Criar vídeo usando orientação\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control elements\",\n      \"localized\": \"Elementos de controle\",\n      \"reload\": \"\",\n      \"hint\": \"Elementos de controle são modelos avançados que podem guiar a geração para o resultado desejado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"IP adapter\",\n      \"localized\": \"Adaptador IP\",\n      \"reload\": \"\",\n      \"hint\": \"Guiar a geração para o resultado desejado usando modelos de plugin de adaptadores IP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"IP adapters\",\n      \"localized\": \"Adaptadores IP\",\n      \"reload\": \"\",\n      \"hint\": \"Adaptadores IP são modelos de plugin que podem guiar a geração para o resultado desejado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Extensions\",\n      \"localized\": \"Extensões\",\n      \"reload\": \"\",\n      \"hint\": \"Extensões do aplicativo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"XYZ Grid\",\n      \"localized\": \"Grade XYZ\",\n      \"reload\": \"\",\n      \"hint\": \"A grade XYZ é um módulo poderoso que cria uma grade de imagens com base em múltiplos parâmetros de geração variáveis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Cover\",\n      \"localized\": \"Cobrir\",\n      \"reload\": \"\",\n      \"hint\": \"cobrir área total\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inline\",\n      \"localized\": \"Em linha\",\n      \"reload\": \"\",\n      \"hint\": \"em linha com todos os elementos adicionais (rolável)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sidebar\",\n      \"localized\": \"Barra lateral\",\n      \"reload\": \"\",\n      \"hint\": \"barra lateral no lado direito da tela\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD15\",\n      \"localized\": \"SD15\",\n      \"reload\": \"\",\n      \"hint\": \"StableDiffusion 1.5\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD21\",\n      \"localized\": \"SD21\",\n      \"reload\": \"\",\n      \"hint\": \"StableDiffusion 2.1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD35\",\n      \"localized\": \"SD35\",\n      \"reload\": \"\",\n      \"hint\": \"StableDiffusion 3.5\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SDXL\",\n      \"localized\": \"SDXL\",\n      \"reload\": \"\",\n      \"hint\": \"StableDiffusion XL\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SC\",\n      \"localized\": \"SC\",\n      \"reload\": \"\",\n      \"hint\": \"StableCascade\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Flux\",\n      \"localized\": \"Flux\",\n      \"reload\": \"\",\n      \"hint\": \"FLUX.1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show\",\n      \"localized\": \"Mostrar\",\n      \"reload\": \"\",\n      \"hint\": \"Mostrar localização da imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Save\",\n      \"localized\": \"Salvar\",\n      \"reload\": \"\",\n      \"hint\": \"Salvar imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Delete\",\n      \"localized\": \"Excluir\",\n      \"reload\": \"\",\n      \"hint\": \"Excluir imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Replace\",\n      \"localized\": \"Substituir\",\n      \"reload\": \"\",\n      \"hint\": \"Substituir imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Text\",\n      \"localized\": \"➠ Texto\",\n      \"reload\": \"\",\n      \"hint\": \"Transferir imagem para interface de texto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Image\",\n      \"localized\": \"➠ Imagem\",\n      \"reload\": \"\",\n      \"hint\": \"Transferir imagem para interface de imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Inpaint\",\n      \"localized\": \"➠ Inpaint\",\n      \"reload\": \"\",\n      \"hint\": \"Transferir imagem para interface de inpaint\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Sketch\",\n      \"localized\": \"➠ Esboço\",\n      \"reload\": \"\",\n      \"hint\": \"Transferir imagem para interface de esboço\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Composite\",\n      \"localized\": \"➠ Composto\",\n      \"reload\": \"\",\n      \"hint\": \"Transferir imagem para interface de esboço de inpaint\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Process\",\n      \"localized\": \"➠ Processar\",\n      \"reload\": \"\",\n      \"hint\": \"Transferir imagem para interface de processo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Control\",\n      \"localized\": \"➠ Controle\",\n      \"reload\": \"\",\n      \"hint\": \"Transferir imagem para interface de controle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Caption\",\n      \"localized\": \"➠ Legenda\",\n      \"reload\": \"\",\n      \"hint\": \"Transferir imagem para interface de legenda\"\n    }\n  ],\n  \"generate\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Sampling method\",\n      \"localized\": \"Método de amostragem\",\n      \"reload\": \"\",\n      \"hint\": \"Qual algoritmo usar para produzir a imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Steps\",\n      \"localized\": \"Passos\",\n      \"reload\": \"\",\n      \"hint\": \"Quantas vezes melhorar a imagem gerada iterativamente; valores mais altos demoram mais; valores muito baixos podem produzir resultados ruins\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Tiling\",\n      \"localized\": \"Ladrilhamento\",\n      \"reload\": \"\",\n      \"hint\": \"Produzir uma imagem que pode ser ladrilhada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full quality\",\n      \"localized\": \"Qualidade total\",\n      \"reload\": \"\",\n      \"hint\": \"Usar VAE de qualidade total para decodificar amostras latentes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HiDiffusion\",\n      \"localized\": \"HiDiffusion\",\n      \"reload\": \"\",\n      \"hint\": \"HiDiffusion permite a criação de imagens de alta resolução usando seus modelos padrão sem duplicatas/distorções e com desempenho aprimorado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HDR Clamp\",\n      \"localized\": \"Ajuste HDR\",\n      \"reload\": \"\",\n      \"hint\": \"Ajusta o nível de detalhes sem sentido, podando valores que se desviam significativamente da média da distribuição. É particularmente útil para aprimorar a geração em escalas de orientação mais altas, identificando valores discrepantes no início do processo e aplicando ajustes matemáticos com base nas configurações de Intervalo (Limite) e Limiar. Pense nisso como definir o intervalo dentro do qual você deseja que os valores da sua imagem estejam, e ajustar o limiar determina quais valores devem ser trazidos de volta para esse intervalo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HDR Maximize\",\n      \"localized\": \"Maximizar HDR\",\n      \"reload\": \"\",\n      \"hint\": \"Calcula um 'fator de normalização' dividindo o valor máximo do tensor pelo intervalo especificado multiplicado por 4. Este fator é então usado para deslocar os canais dentro do limite dado, garantindo o alcance dinâmico máximo para processamento subsequente. O objetivo é otimizar o alcance dinâmico para aplicações externas como Photoshop, particularmente para ajustar níveis, contraste e brilho\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enable refine pass\",\n      \"localized\": \"Ativar passagem de refinamento\",\n      \"reload\": \"\",\n      \"hint\": \"Usa um processo semelhante ao de imagem para imagem para aumentar a escala e/ou adicionar detalhes à imagem final. Opcionalmente, usa um modelo refinador para aprimorar os detalhes da imagem.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enable detailer pass\",\n      \"localized\": \"Ativar passagem de detalhamento\",\n      \"reload\": \"\",\n      \"hint\": \"Detectar objetos-alvo como rostos e reprocessá-los em maior resolução\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoising strength\",\n      \"localized\": \"Força de denoising\",\n      \"reload\": \"\",\n      \"hint\": \"Determina o quão pouco respeito o algoritmo deve ter pelo conteúdo da imagem. Em 0, nada mudará, e em 1 você obterá uma imagem não relacionada. Com valores abaixo de 1.0, o processamento levará menos passos do que o especificado no controle deslizante de Passos de Amostragem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoise start\",\n      \"localized\": \"Início do denoising\",\n      \"reload\": \"\",\n      \"hint\": \"Substitui a força de denoising indicando quão cedo o modelo base deve terminar e quando o refinador deve começar. Aplicável apenas ao uso do refinador. Se definido como 0 ou 1, a força de denoising será usada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Hires steps\",\n      \"localized\": \"Passos de alta resolução\",\n      \"reload\": \"\",\n      \"hint\": \"Número de passos de amostragem para a imagem ampliada. Se 0, usa o mesmo que para a original\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Strength\",\n      \"localized\": \"Força\",\n      \"reload\": \"\",\n      \"hint\": \"A força de denoising durante a operação da imagem controla o quanto da imagem original pode mudar durante a geração\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler\",\n      \"localized\": \"Upscaler\",\n      \"reload\": \"\",\n      \"hint\": \"Qual modelo pré-treinado usar para o processo de upscaling.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Force Hires\",\n      \"localized\": \"Forçar Hires\",\n      \"reload\": \"\",\n      \"hint\": \"Hires é executado automaticamente quando a ampliação latente é selecionada, mas é ignorado ao usar upscalers não latentes. Habilite 'forçar hires' para executar hires com upscalers não latentes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize width\",\n      \"localized\": \"Redimensionar largura\",\n      \"reload\": \"\",\n      \"hint\": \"Redimensiona a imagem para esta largura. Se 0, a largura é inferida de um dos dois controles deslizantes próximos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize height\",\n      \"localized\": \"Redimensionar altura\",\n      \"reload\": \"\",\n      \"hint\": \"Redimensiona a imagem para esta altura. Se 0, a altura é inferida de um dos dois controles deslizantes próximos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine sampler\",\n      \"localized\": \"Amostrador de refinamento\",\n      \"reload\": \"\",\n      \"hint\": \"Usar um amostrador específico como amostrador de fallback se o principal não for suportado para uma operação específica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner start\",\n      \"localized\": \"Início do refinador\",\n      \"reload\": \"\",\n      \"hint\": \"A passagem do refinador começará quando o modelo base estiver completo até este ponto (definir para maior que 0 e menor que 1 para executar após a execução completa do modelo base)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner steps\",\n      \"localized\": \"Passos do refinador\",\n      \"reload\": \"\",\n      \"hint\": \"Número de passos a usar para a passagem do refinador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine guidance\",\n      \"localized\": \"Orientação de refinamento\",\n      \"reload\": \"\",\n      \"hint\": \"Escala CFG usada para a passagem do refinador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Attention guidance\",\n      \"localized\": \"Orientação de atenção\",\n      \"reload\": \"\",\n      \"hint\": \"Escala CFG usada com PAG: Orientação de Atenção Perturbada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adaptive scaling\",\n      \"localized\": \"Escala adaptativa\",\n      \"reload\": \"\",\n      \"hint\": \"Modificador adaptativo para a escala de orientação de atenção\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Rescale guidance\",\n      \"localized\": \"Reescalar orientação\",\n      \"reload\": \"\",\n      \"hint\": \"Reescalar o ruído gerado por CFG para evitar imagens superexpostas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine Prompt\",\n      \"localized\": \"Prompt de refinamento\",\n      \"reload\": \"\",\n      \"hint\": \"Prompt usado para o segundo codificador no modelo base (se existir) e para a passagem do refinador (se ativada)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine negative prompt\",\n      \"localized\": \"Prompt negativo de refinamento\",\n      \"reload\": \"\",\n      \"hint\": \"Prompt negativo usado para o segundo codificador no modelo base (se existir) e para a passagem do refinador (se ativada)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Width\",\n      \"localized\": \"Largura\",\n      \"reload\": \"\",\n      \"hint\": \"Largura da imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Height\",\n      \"localized\": \"Altura\",\n      \"reload\": \"\",\n      \"hint\": \"Altura da imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch count\",\n      \"localized\": \"Contagem de lotes\",\n      \"reload\": \"\",\n      \"hint\": \"Quantos lotes de imagens criar (não tem impacto no desempenho da geração ou no uso de VRAM)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch size\",\n      \"localized\": \"Tamanho do lote\",\n      \"reload\": \"\",\n      \"hint\": \"Quantas imagens criar em um único lote (aumenta o desempenho da geração à custa de maior uso de VRAM)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance scale\",\n      \"localized\": \"Escala de orientação\",\n      \"reload\": \"\",\n      \"hint\": \"Escala de Orientação Livre de Classificador: quão fortemente a imagem deve se conformar ao prompt. Valores mais baixos produzem resultados mais criativos, valores mais altos fazem com que siga o prompt mais estritamente; valores recomendados entre 5-10\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Guidance End\",\n      \"localized\": \"Fim da Orientação\",\n      \"reload\": \"\",\n      \"hint\": \"Encerra o efeito de CFG e PAG mais cedo: Um valor de 1 age normalmente, 0.5 interrompe a orientação em 50% dos passos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Initial seed\",\n      \"localized\": \"Semente inicial\",\n      \"reload\": \"\",\n      \"hint\": \"Um valor que determina a saída do gerador de números aleatórios - se você criar uma imagem com os mesmos parâmetros e semente que outra imagem, obterá o mesmo resultado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variation\",\n      \"localized\": \"Variação\",\n      \"reload\": \"\",\n      \"hint\": \"Segunda semente a ser misturada com a semente primária\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variation strength\",\n      \"localized\": \"Força de variação\",\n      \"reload\": \"\",\n      \"hint\": \"Quão forte uma variação deve ser produzida. Em 0, não haverá efeito. Em 1, você obterá a imagem completa com a semente de variação (exceto para amostradores ancestrais, onde você obterá apenas algo)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize seed from width\",\n      \"localized\": \"Redimensionar semente a partir da largura\",\n      \"reload\": \"\",\n      \"hint\": \"Tentar produzir uma imagem semelhante ao que teria sido produzido com a mesma semente na resolução especificada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize seed from height\",\n      \"localized\": \"Redimensionar semente a partir da altura\",\n      \"reload\": \"\",\n      \"hint\": \"Tentar produzir uma imagem semelhante ao que teria sido produzido com a mesma semente na resolução especificada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Fixed\",\n      \"localized\": \"Fixo\",\n      \"reload\": \"\",\n      \"hint\": \"Redimensionar imagem para a resolução alvo. A menos que a altura e a largura correspondam, você obterá uma proporção incorreta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale\",\n      \"localized\": \"Escala\",\n      \"reload\": \"\",\n      \"hint\": \"Redimensionar imagem para a escala alvo. Se largura/altura fixas de redimensionamento estiverem definidas, esta opção é ignorada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop\",\n      \"localized\": \"Cortar\",\n      \"reload\": \"\",\n      \"hint\": \"Redimensionar a imagem para que toda a resolução alvo seja preenchida com a imagem. Cortar as partes que se destacam\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Fill\",\n      \"localized\": \"Preencher\",\n      \"reload\": \"\",\n      \"hint\": \"Redimensionar a imagem para que toda a imagem esteja dentro da resolução alvo. Preencher o espaço vazio com as cores da imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mask blur\",\n      \"localized\": \"Desfoque de máscara\",\n      \"reload\": \"\",\n      \"hint\": \"Quanto desfocar a máscara antes do processamento, em pixels\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Latent noise\",\n      \"localized\": \"Ruído latente\",\n      \"reload\": \"\",\n      \"hint\": \"preenchê-lo com ruído do espaço latente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Latent nothing\",\n      \"localized\": \"Nada latente\",\n      \"reload\": \"\",\n      \"hint\": \"preenchê-lo com zeros do espaço latente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adapters\",\n      \"localized\": \"Adaptadores\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações relacionadas aos IP Adapters\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inputs\",\n      \"localized\": \"Entradas\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações relacionadas às imagens de entrada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control input type\",\n      \"localized\": \"Tipo de entrada de controle\",\n      \"reload\": \"\",\n      \"hint\": \"Escolha qual imagem de entrada é usada para o processo de controle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Video format\",\n      \"localized\": \"Formato de vídeo\",\n      \"reload\": \"\",\n      \"hint\": \"Formato e codec do vídeo de saída\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Size & Batch\",\n      \"localized\": \"Tamanho e Lote\",\n      \"reload\": \"\",\n      \"hint\": \"Tamanho e lote da imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sigma adjust\",\n      \"localized\": \"Ajuste de Sigma\",\n      \"reload\": \"\",\n      \"hint\": \"Ajustar valor sigma do amostrador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adjust start\",\n      \"localized\": \"Início do ajuste\",\n      \"reload\": \"\",\n      \"hint\": \"Passo inicial quando ocorre o ajuste de sigma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adjust end\",\n      \"localized\": \"Fim do ajuste\",\n      \"reload\": \"\",\n      \"hint\": \"Passo final quando ocorre o ajuste de sigma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Options\",\n      \"localized\": \"Opções\",\n      \"reload\": \"\",\n      \"hint\": \"Opções\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ControlNet\",\n      \"localized\": \"ControlNet\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet é um modelo avançado de orientação\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Renoise\",\n      \"localized\": \"Renoise\",\n      \"reload\": \"\",\n      \"hint\": \"Aplicar ruído adicional durante o detalhamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Renoise end\",\n      \"localized\": \"Fim do Renoise\",\n      \"reload\": \"\",\n      \"hint\": \"Passo final quando o renoise é aplicado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Merge detailers\",\n      \"localized\": \"Mesclar detalhadores\",\n      \"reload\": \"\",\n      \"hint\": \"Mesclar resultados de múltiplos detalhadores em uma única máscara antes de executar o processo de detalhamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpaint mode\",\n      \"localized\": \"Modo Inpaint\",\n      \"reload\": \"\",\n      \"hint\": \"Modo Inpaint\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpaint area\",\n      \"localized\": \"Área Inpaint\",\n      \"reload\": \"\",\n      \"hint\": \"Área Inpaint\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Texture tiling\",\n      \"localized\": \"Ladrilhamento de textura\",\n      \"reload\": \"\",\n      \"hint\": \"Aplicar ladrilhamento contínuo à imagem gerada para que possa ser usada como textura\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Override\",\n      \"localized\": \"Substituir\",\n      \"reload\": \"\",\n      \"hint\": \"Substituir configurações que podem alterar o comportamento do servidor e que são tipicamente aplicadas a partir de metadados de imagem importados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE type\",\n      \"localized\": \"Tipo de VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Escolha se deseja executar VAE completo, VAE de qualidade reduzida ou tentar usar um serviço VAE remoto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Guess Mode\",\n      \"localized\": \"Modo Adivinhação\",\n      \"reload\": \"\",\n      \"hint\": \"Remove a exigência de fornecer um prompt para uma ControlNet. Força o codificador da ControlNet a fazer sua 'melhor estimativa' com base no conteúdo do mapa de controle de entrada.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control Only\",\n      \"localized\": \"Apenas Controle\",\n      \"reload\": \"\",\n      \"hint\": \"Isso usa apenas a entrada de Controle abaixo como fonte para qualquer tarefa do tipo ControlNet ou IP Adapter com base em qualquer uma de nossas várias opções.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Init Image Same As Control\",\n      \"localized\": \"Imagem Inicial Igual ao Controle\",\n      \"reload\": \"\",\n      \"hint\": \"Tratará adicionalmente qualquer imagem colocada na janela de entrada de Controle como uma fonte para tarefas do tipo img2img, uma imagem para modificar, por exemplo.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Separate Init Image\",\n      \"localized\": \"Separar Imagem Inicial\",\n      \"reload\": \"\",\n      \"hint\": \"Cria uma janela adicional ao lado da entrada de Controle rotulada como entrada Inicial, para que você possa ter uma imagem separada tanto para operações de Controle quanto para uma fonte inicial.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Override settings\",\n      \"localized\": \"Substituir configurações\",\n      \"reload\": \"\",\n      \"hint\": \"Se os parâmetros de geração desviarem das suas configurações de sistema, substitua as configurações preenchidas com essas configurações para sobrepor a sua configuração de sistema para este fluxo de trabalho\"\n    }\n  ],\n  \"other\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Install\",\n      \"localized\": \"Instalar\",\n      \"reload\": \"\",\n      \"hint\": \"Instalar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Search\",\n      \"localized\": \"Pesquisar\",\n      \"reload\": \"\",\n      \"hint\": \"Pesquisar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sort by\",\n      \"localized\": \"Ordenar por\",\n      \"reload\": \"\",\n      \"hint\": \"Ordenar por\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Nudenet\",\n      \"localized\": \"Nudenet\",\n      \"reload\": \"\",\n      \"hint\": \"Extensão flexível que pode detectar e ofuscar nudez em imagens\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt enhance\",\n      \"localized\": \"Melhorar Prompt\",\n      \"reload\": \"\",\n      \"hint\": \"Extensão que pode usar diferentes LLMs para reescrever o prompt para resultados aprimorados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Manage extensions\",\n      \"localized\": \"Gerenciar extensões\",\n      \"reload\": \"\",\n      \"hint\": \"Gerenciar extensões\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Manual install\",\n      \"localized\": \"Instalação manual\",\n      \"reload\": \"\",\n      \"hint\": \"Instalar extensão manualmente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Extension GIT repository URL\",\n      \"localized\": \"URL do repositório GIT da extensão\",\n      \"reload\": \"\",\n      \"hint\": \"Especificar URL do repositório da extensão no GitHub\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Specific branch name\",\n      \"localized\": \"Nome do branch específico\",\n      \"reload\": \"\",\n      \"hint\": \"Especificar nome do branch da extensão, deixe em branco para o padrão\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Local directory name\",\n      \"localized\": \"Nome do diretório local\",\n      \"reload\": \"\",\n      \"hint\": \"Diretório onde instalar a extensão, deixe em branco para o padrão\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refresh extension list\",\n      \"localized\": \"Atualizar lista de extensões\",\n      \"reload\": \"\",\n      \"hint\": \"Atualizar lista de extensões disponíveis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Update all installed\",\n      \"localized\": \"Atualizar todos instalados\",\n      \"reload\": \"\",\n      \"hint\": \"Atualizar extensões instaladas para a versão mais recente disponível\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Apply changes\",\n      \"localized\": \"Aplicar alterações\",\n      \"reload\": \"\",\n      \"hint\": \"Aplicar todas as alterações e reiniciar o servidor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Uninstall\",\n      \"localized\": \"Desinstalar\",\n      \"reload\": \"\",\n      \"hint\": \"desinstalar esta extensão\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"User interface\",\n      \"localized\": \"Interface do usuário\",\n      \"reload\": \"\",\n      \"hint\": \"Revisar e definir as preferências da interface do usuário\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Set UI defaults\",\n      \"localized\": \"Definir padrões da UI\",\n      \"reload\": \"\",\n      \"hint\": \"Definir os valores atuais como valores padrão para a interface do usuário\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Benchmark\",\n      \"localized\": \"Benchmark\",\n      \"reload\": \"\",\n      \"hint\": \"Executar benchmarks\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models & Networks\",\n      \"localized\": \"Modelos e Redes\",\n      \"reload\": \"\",\n      \"hint\": \"Visualizar listas de todos os modelos e redes disponíveis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore UI defaults\",\n      \"localized\": \"Restaurar padrões da UI\",\n      \"reload\": \"\",\n      \"hint\": \"Restaurar valores padrão da interface do usuário\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer classes\",\n      \"localized\": \"Classes do Detailer\",\n      \"reload\": \"\",\n      \"hint\": \"Especificar classes específicas a serem usadas se o modelo de detalhamento selecionado for um modelo multi-classe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer models\",\n      \"localized\": \"Modelos do Detailer\",\n      \"reload\": \"\",\n      \"hint\": \"Selecionar modelos de detecção para usar no detalhamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer negative prompt\",\n      \"localized\": \"Prompt negativo do Detailer\",\n      \"reload\": \"\",\n      \"hint\": \"Usar prompt negativo separado para o detailer. Se não estiver presente, usará o prompt negativo principal\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer prompt\",\n      \"localized\": \"Prompt do Detailer\",\n      \"reload\": \"\",\n      \"hint\": \"Usar prompt separado para o detailer. Se não estiver presente, usará o prompt principal\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer steps\",\n      \"localized\": \"Etapas do Detailer\",\n      \"reload\": \"\",\n      \"hint\": \"Número de etapas a serem executadas para o processo do detailer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer strength\",\n      \"localized\": \"Força do Detailer\",\n      \"reload\": \"\",\n      \"hint\": \"Força de denoising do processo do detailer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer use model augment\",\n      \"localized\": \"Detailer usar aumento do modelo\",\n      \"reload\": \"\",\n      \"hint\": \"Executar modelos de detecção do detailer com precisão extra\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max detected\",\n      \"localized\": \"Máximo detectado\",\n      \"reload\": \"\",\n      \"hint\": \"Número máximo de objetos detectados para executar o detailer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Edge blur\",\n      \"localized\": \"Desfoque de borda\",\n      \"reload\": \"\",\n      \"hint\": \"Desfocar a borda da área mascarada por esta porcentagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Edge padding\",\n      \"localized\": \"Preenchimento de borda\",\n      \"reload\": \"\",\n      \"hint\": \"Expandir a borda da área mascarada por esta porcentagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Min confidence\",\n      \"localized\": \"Confiança mínima\",\n      \"reload\": \"\",\n      \"hint\": \"Confiança mínima no item detectado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max overlap\",\n      \"localized\": \"Sobreposição máxima\",\n      \"reload\": \"\",\n      \"hint\": \"Sobreposição máxima entre dois itens detectados antes que um seja descartado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Min size\",\n      \"localized\": \"Tamanho mínimo\",\n      \"reload\": \"\",\n      \"hint\": \"Tamanho mínimo do objeto detectado como porcentagem da imagem geral\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max size\",\n      \"localized\": \"Tamanho máximo\",\n      \"reload\": \"\",\n      \"hint\": \"Tamanho máximo do objeto detectado como porcentagem da imagem geral\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Image\",\n      \"localized\": \"Processar Imagem\",\n      \"reload\": \"\",\n      \"hint\": \"Processar imagem única\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Batch\",\n      \"localized\": \"Processar Lote\",\n      \"reload\": \"\",\n      \"hint\": \"Processar lote de imagens\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Folder\",\n      \"localized\": \"Processar Pasta\",\n      \"reload\": \"\",\n      \"hint\": \"Processar todas as imagens em uma pasta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Current\",\n      \"localized\": \"Atual\",\n      \"reload\": \"\",\n      \"hint\": \"Analisar módulos dentro do modelo atualmente carregado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Merge\",\n      \"localized\": \"Mesclar\",\n      \"reload\": \"\",\n      \"hint\": \"Mesclar dois ou mais modelos em um novo modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Modules\",\n      \"localized\": \"Módulos\",\n      \"reload\": \"\",\n      \"hint\": \"Mesclar e/ou substituir módulos em um modelo existente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Validate\",\n      \"localized\": \"Validar\",\n      \"reload\": \"\",\n      \"hint\": \"Validar todos os modelos locais\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CivitAI\",\n      \"localized\": \"CivitAI\",\n      \"reload\": \"\",\n      \"hint\": \"Pesquisar e baixar modelos do CivitAI\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scale by\",\n      \"localized\": \"Escalar por\",\n      \"reload\": \"\",\n      \"hint\": \"Use esta aba para redimensionar a(s) imagem(ns) de origem por um fator escolhido\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scale to\",\n      \"localized\": \"Escalar para\",\n      \"reload\": \"\",\n      \"hint\": \"Use esta aba para redimensionar a(s) imagem(ns) de origem para um tamanho alvo escolhido\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Input directory\",\n      \"localized\": \"Diretório de entrada\",\n      \"reload\": \"\",\n      \"hint\": \"Pasta onde estão as imagens que você deseja processar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Output directory\",\n      \"localized\": \"Diretório de saída\",\n      \"reload\": \"\",\n      \"hint\": \"Pasta onde as imagens processadas devem ser salvas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show result images\",\n      \"localized\": \"Mostrar imagens de resultado\",\n      \"reload\": \"\",\n      \"hint\": \"Ativar para mostrar as imagens processadas no painel de imagens\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop to fit\",\n      \"localized\": \"Cortar para ajustar\",\n      \"reload\": \"\",\n      \"hint\": \"Se as dimensões da sua imagem de origem (por exemplo, 512x510) desviarem das dimensões alvo (por exemplo, 1024x768), esta função ajustará sua imagem redimensionada para o tamanho alvo. O excesso será cortado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine Upscaler\",\n      \"localized\": \"Refinar Upscaler\",\n      \"reload\": \"\",\n      \"hint\": \"Selecionar upscaler secundário para rodar após o upscaler inicial\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler 2 visibility\",\n      \"localized\": \"Visibilidade do Upscaler 2\",\n      \"reload\": \"\",\n      \"hint\": \"Força do upscaler secundário\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Calculate hash for all models\",\n      \"localized\": \"Calcular hash para todos os modelos\",\n      \"reload\": \"\",\n      \"hint\": \"Calcula o hash para todos os modelos disponíveis, o que pode levar muito tempo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Weights Clip\",\n      \"localized\": \"Corte de Pesos\",\n      \"reload\": \"\",\n      \"hint\": \"Pesos mesclados forçados a não serem mais pesados que o modelo original, prevenindo burn-in e modelos excessivamente saturados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ReBasin\",\n      \"localized\": \"ReBasin\",\n      \"reload\": \"\",\n      \"hint\": \"Realiza múltiplas mesclagens com permutações para manter mais recursos de ambos os modelos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Number of ReBasin Iterations\",\n      \"localized\": \"Número de Iterações ReBasin\",\n      \"reload\": \"\",\n      \"hint\": \"Número de vezes para mesclar e permutar o modelo antes de salvar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CPU\",\n      \"localized\": \"CPU\",\n      \"reload\": \"\",\n      \"hint\": \"Usa apenas CPU e RAM: mais lento, mas com menor probabilidade de OOM (Out Of Memory)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Shuffle\",\n      \"localized\": \"Embaralhar\",\n      \"reload\": \"\",\n      \"hint\": \"Carrega o modelo completo na RAM e calcula na VRAM: Menor aceleração, sugerido para mesclagens SDXL\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"In Blocks\",\n      \"localized\": \"Blocos de Entrada\",\n      \"reload\": \"\",\n      \"hint\": \"Blocos de Subamostragem da UNet (12 valores para SD1.5, 9 valores para SDXL)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mid Block\",\n      \"localized\": \"Bloco Central\",\n      \"reload\": \"\",\n      \"hint\": \"Bloco Central da UNet (1 valor)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Out Block\",\n      \"localized\": \"Blocos de Saída\",\n      \"reload\": \"\",\n      \"hint\": \"Blocos de Sobreamostragem da UNet (12 valores para SD1.5, 9 valores para SDXL)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Preset Interpolation Ratio\",\n      \"localized\": \"Proporção de Interpolação de Predefinições\",\n      \"reload\": \"\",\n      \"hint\": \"Se duas predefinições forem selecionadas, interpolar entre elas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adapter\",\n      \"localized\": \"Adaptador\",\n      \"reload\": \"\",\n      \"hint\": \"Modelo de adaptador IP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Active ip adapters\",\n      \"localized\": \"Adaptadores IP ativos\",\n      \"reload\": \"\",\n      \"hint\": \"Número de adaptadores IP ativos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Unload adapter\",\n      \"localized\": \"Descarregar adaptador\",\n      \"reload\": \"\",\n      \"hint\": \"Descarregar adaptador IP imediatamente após a geração. Caso contrário, o adaptador IP permanecerá carregado para uso mais rápido no próximo processo de geração\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop to portrait\",\n      \"localized\": \"Cortar para retrato\",\n      \"reload\": \"\",\n      \"hint\": \"Cortar imagem de entrada apenas para retrato antes de usá-la como entrada do adaptador IP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Layer options\",\n      \"localized\": \"Opções de camada\",\n      \"reload\": \"\",\n      \"hint\": \"Especificar manualmente as opções avançadas de camada do adaptador IP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"X values\",\n      \"localized\": \"Valores de X\",\n      \"reload\": \"\",\n      \"hint\": \"Separar valores para o eixo X usando vírgulas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Y values\",\n      \"localized\": \"Valores de Y\",\n      \"reload\": \"\",\n      \"hint\": \"Separar valores para o eixo Y usando vírgulas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Z values\",\n      \"localized\": \"Valores de Z\",\n      \"reload\": \"\",\n      \"hint\": \"Separar valores para o eixo Z usando vírgulas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Loops\",\n      \"localized\": \"Loops\",\n      \"reload\": \"\",\n      \"hint\": \"Quantas vezes processar uma imagem. Cada saída é usada como entrada do próximo loop. Se definido como 1, o comportamento será como se este script não tivesse sido usado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Final denoising strength\",\n      \"localized\": \"Força de denoising final\",\n      \"reload\": \"\",\n      \"hint\": \"A força de denoising para o loop final de cada imagem no lote\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoising strength curve\",\n      \"localized\": \"Curva de força de denoising\",\n      \"reload\": \"\",\n      \"hint\": \"A curva de denoising controla a taxa de mudança da força de denoising em cada loop. Agressiva: A maior parte da mudança ocorrerá no início dos loops. Linear: A mudança será constante em todos os loops. Lenta: A maior parte da mudança ocorrerá no final dos loops\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Tile overlap\",\n      \"localized\": \"Sobreposição de blocos\",\n      \"reload\": \"\",\n      \"hint\": \"Para o upscale de SD, quanta sobreposição em pixels deve haver entre os blocos. Os blocos se sobrepõem para que, quando mesclados de volta em uma única imagem, não haja uma emenda claramente visível\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Color to Mask\",\n      \"localized\": \"ACI: Cor para Máscara\",\n      \"reload\": \"\",\n      \"hint\": \"Escolha a cor que você deseja mascarar e pintar. Clique na cor na imagem para selecioná-la automaticamente.\\n Aconselha-se usar imagens como telas verdes para obter resultados precisos.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Color Tolerance\",\n      \"localized\": \"ACI: Tolerância de Cor\",\n      \"reload\": \"\",\n      \"hint\": \"Ajuste a tolerância para incluir cores semelhantes na máscara. Valores mais baixos = mascarar apenas cores muito semelhantes. Valores mais altos = mascarar uma gama mais ampla de cores semelhantes.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Mask Erode\",\n      \"localized\": \"ACI: Erosão da Máscara\",\n      \"reload\": \"\",\n      \"hint\": \"Ajuste o preenchimento para aplicar um deslocamento interno à máscara. (Valor recomendado = 2 para remover sobras nas bordas)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Mask Blur\",\n      \"localized\": \"ACI: Desfoque da Máscara\",\n      \"reload\": \"\",\n      \"hint\": \"Ajuste o desfoque para aplicar uma transição suave entre a imagem e a área repintada. (Valor recomendado = 0 para nitidez)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Denoising Strength\",\n      \"localized\": \"ACI: Força de Denoising\",\n      \"reload\": \"\",\n      \"hint\": \"Mude a Força de Denoising para alcançar a quantidade desejada de repintura.\"\n    }\n  ],\n  \"settings\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Apply settings\",\n      \"localized\": \"Aplicar configurações\",\n      \"reload\": \"\",\n      \"hint\": \"Salvar as configurações atuais, a reinicialização do servidor é recomendada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Loading\",\n      \"localized\": \"Carregamento do Modelo\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações relacionadas a como o modelo é carregado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Options\",\n      \"localized\": \"Opções do Modelo\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações relacionadas ao comportamento de modelos específicos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Offloading\",\n      \"localized\": \"Descarregamento do Modelo\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações relacionadas ao descarregamento do modelo e gerenciamento de memória\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Quantization\",\n      \"localized\": \"Quantização do Modelo\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações relacionadas à quantização do modelo, usada para reduzir o uso de memória\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Metadata\",\n      \"localized\": \"Metadados da Imagem\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações relacionadas ao tratamento de metadados criados com imagens geradas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Legacy Options\",\n      \"localized\": \"Opções Legadas\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações relacionadas a opções legadas - não devem ser usadas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restart server\",\n      \"localized\": \"Reiniciar servidor\",\n      \"reload\": \"\",\n      \"hint\": \"Reiniciar o servidor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Shutdown server\",\n      \"localized\": \"Desligar servidor\",\n      \"reload\": \"\",\n      \"hint\": \"Desligar o servidor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Preview theme\",\n      \"localized\": \"Pré-visualizar tema\",\n      \"reload\": \"\",\n      \"hint\": \"Mostrar pré-visualização do tema\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore defaults\",\n      \"localized\": \"Restaurar padrões\",\n      \"reload\": \"\",\n      \"hint\": \"Restaurar configurações padrão do servidor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Unload model\",\n      \"localized\": \"Descarregar modelo\",\n      \"reload\": \"\",\n      \"hint\": \"Descarregar o modelo atualmente carregado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reload model\",\n      \"localized\": \"Recarregar modelo\",\n      \"reload\": \"\",\n      \"hint\": \"Recarregar o modelo atualmente selecionado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models & Loading\",\n      \"localized\": \"Modelos e Carregamento\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações relacionadas a modelos base, backend primário e comportamento de carregamento de modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variational Auto Encoder\",\n      \"localized\": \"Autoencoder Variacional\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações relacionadas ao Autoencoder Variacional e ao processo de decodificação de imagem durante a geração\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Text encoder\",\n      \"localized\": \"Codificador de texto\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações relacionadas ao codificador de texto e ao processamento de codificação de prompt durante a geração\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Compute Settings\",\n      \"localized\": \"Configurações de Computação\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações relacionadas à precisão de cálculo, atenção cruzada e otimizações para plataformas de computação\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Backend Settings\",\n      \"localized\": \"Configurações de Backend\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações relacionadas aos backends de computação: torch, onnx e olive\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Quantization Settings\",\n      \"localized\": \"Configurações de Quantização\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações relacionadas à quantização do modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Pipeline modifiers\",\n      \"localized\": \"Modificadores de pipeline\",\n      \"reload\": \"\",\n      \"hint\": \"Funcionalidade adicional que pode ser ativada durante a geração\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model compile\",\n      \"localized\": \"Compilação do modelo\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações relacionadas a diferentes métodos de compilação de modelos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System Paths\",\n      \"localized\": \"Caminhos do Sistema\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações relacionadas à localização de vários diretórios de modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Options\",\n      \"localized\": \"Opções de Imagem\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações relacionadas ao formato de imagem, metadados e grades de imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Paths\",\n      \"localized\": \"Caminhos da Imagem\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações relacionadas a nomes de arquivos de imagem e diretórios de saída\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Live Previews\",\n      \"localized\": \"Pré-visualizações ao Vivo\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações relacionadas a pré-visualizações ao vivo, notificação de áudio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sampler Settings\",\n      \"localized\": \"Configurações do Sampler\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações relacionadas à seleção e configuração do sampler, e configuração específica do sampler do difusor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Postprocessing\",\n      \"localized\": \"Pós-processamento\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações relacionadas ao processamento pós-geração de imagem, restauração de rosto e upscaling\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control Options\",\n      \"localized\": \"Opções de Controle\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações relacionadas à aba Controle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Huggingface\",\n      \"localized\": \"Huggingface\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações relacionadas ao acesso Huggingface\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show all pages\",\n      \"localized\": \"Mostrar todas as páginas\",\n      \"reload\": \"\",\n      \"hint\": \"Mostrar todas as páginas de configurações\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Base model\",\n      \"localized\": \"Modelo base\",\n      \"reload\": \"\",\n      \"hint\": \"Modelo principal usado para todas as operações\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner model\",\n      \"localized\": \"Modelo refiner\",\n      \"reload\": \"\",\n      \"hint\": \"Modelo refiner usado para operações de segunda passagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Cached models\",\n      \"localized\": \"Modelos em cache\",\n      \"reload\": \"\",\n      \"hint\": \"O número de modelos a armazenar na RAM para acesso rápido\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE model\",\n      \"localized\": \"Modelo VAE\",\n      \"reload\": \"\",\n      \"hint\": \"VAE ajuda com detalhes finos na imagem final e também pode alterar cores\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model load using streams\",\n      \"localized\": \"Carregamento do modelo usando streams\",\n      \"reload\": \"\",\n      \"hint\": \"Ao carregar modelos, tentar carregamento por stream otimizado para armazenamento lento ou em rede\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xFormers\",\n      \"localized\": \"xFormers\",\n      \"reload\": \"\",\n      \"hint\": \"Otimização de memória. Não-determinístico (resultados diferentes a cada vez)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scaled-Dot-Product\",\n      \"localized\": \"Produto Escalar-Ponto\",\n      \"reload\": \"\",\n      \"hint\": \"Otimização de memória. Não-determinístico, a menos que a atenção de memória SDP esteja desabilitada.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt padding\",\n      \"localized\": \"Preenchimento de prompt\",\n      \"reload\": \"\",\n      \"hint\": \"Aumentar a coerência preenchendo a partir da última vírgula dentro de n tokens ao usar mais de 75 tokens\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Original\",\n      \"localized\": \"Original\",\n      \"reload\": \"\",\n      \"hint\": \"Backend LDM original\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Autocast\",\n      \"localized\": \"Autocast\",\n      \"reload\": \"\",\n      \"hint\": \"Determinar automaticamente a precisão durante o tempo de execução\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full\",\n      \"localized\": \"Completo\",\n      \"reload\": \"\",\n      \"hint\": \"Sempre usar precisão total\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"FP32\",\n      \"localized\": \"FP32\",\n      \"reload\": \"\",\n      \"hint\": \"Usar precisão de ponto flutuante de 32 bits para cálculos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"FP16\",\n      \"localized\": \"FP16\",\n      \"reload\": \"\",\n      \"hint\": \"Usar precisão de ponto flutuante de 16 bits para cálculos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"BF16\",\n      \"localized\": \"BF16\",\n      \"reload\": \"\",\n      \"hint\": \"Usar precisão de ponto flutuante de 16 bits modificada para cálculos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full precision (--no-half-vae)\",\n      \"localized\": \"Precisão total (--no-half-vae)\",\n      \"reload\": \"\",\n      \"hint\": \"Usa FP32 para o VAE. Pode produzir melhores resultados, mas usa mais VRAM e a geração é mais lenta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Force full precision (--no-half)\",\n      \"localized\": \"Forçar precisão total (--no-half)\",\n      \"reload\": \"\",\n      \"hint\": \"Usa FP32 para o modelo. Pode produzir melhores resultados, mas usa mais VRAM e a geração é mais lenta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upcast sampling\",\n      \"localized\": \"Amostragem Upcast\",\n      \"reload\": \"\",\n      \"hint\": \"Geralmente produz resultados semelhantes a --no-half com melhor desempenho e menor uso de memória\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Attempt VAE roll back for NaN values\",\n      \"localized\": \"Tentar reverter VAE para valores NaN\",\n      \"reload\": \"\",\n      \"hint\": \"Requer Torch 2.1 e verificação de NaN ativada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive use FP16 on optimization\",\n      \"localized\": \"Olive usar FP16 na otimização\",\n      \"reload\": \"\",\n      \"hint\": \"Usar precisão de ponto flutuante de 16 bits para o modelo de saída do processo de otimização Olive. Usar precisão de ponto flutuante de 32 bits se desabilitado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive force FP32 for VAE Encoder\",\n      \"localized\": \"Olive forçar FP32 para VAE Encoder\",\n      \"reload\": \"\",\n      \"hint\": \"Usar precisão de ponto flutuante de 32 bits para o Codificador VAE do modelo de saída. Isso anula a opção 'usar FP16 na otimização'. Se você estiver recebendo NaN ou imagens em branco pretas de Img2Img, habilite esta opção e remova o cache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive use static dimensions\",\n      \"localized\": \"Olive usar dimensões estáticas\",\n      \"reload\": \"\",\n      \"hint\": \"Tornar a inferência com modelos otimizados pelo Olive muito mais rápida. (OrtTransformersOptimization)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive cache optimized models\",\n      \"localized\": \"Olive armazenar modelos otimizados em cache\",\n      \"reload\": \"\",\n      \"hint\": \"Salvar modelos processados pelo Olive como cache. Você pode gerenciá-los na aba ONNX\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"File format\",\n      \"localized\": \"Formato de arquivo\",\n      \"reload\": \"\",\n      \"hint\": \"Selecionar formato de arquivo para imagens\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Include metadata\",\n      \"localized\": \"Incluir metadados\",\n      \"reload\": \"\",\n      \"hint\": \"Salvar parâmetros de criação de imagem como tags de metadados dentro do arquivo de imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Images filename pattern\",\n      \"localized\": \"Padrão de nome de arquivo de imagens\",\n      \"reload\": \"\",\n      \"hint\": \"Usar as seguintes tags para definir como os nomes de arquivos para imagens são escolhidos:<br><pre>seq, uuid<br>date, datetime, job_timestamp<br>generation_number, batch_number<br>model, model_shortname<br>model_hash, model_name<br>sampler, seed, steps, cfg<br>clip_skip, denoising<br>hasprompt, prompt, styles<br>prompt_hash, prompt_no_styles<br>prompt_spaces, prompt_words<br>height, width, image_hash<br></pre>\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Row count\",\n      \"localized\": \"Contagem de linhas\",\n      \"reload\": \"\",\n      \"hint\": \"Usar -1 para autodeterminar e 0 para ser o mesmo que o tamanho do lote\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Directory name pattern\",\n      \"localized\": \"Padrão de nome de diretório\",\n      \"reload\": \"\",\n      \"hint\": \"Usar as seguintes tags para definir como os subdiretórios para imagens e grades são escolhidos: [steps], [cfg],[prompt_hash], [prompt], [prompt_no_styles], [prompt_spaces], [width], [height], [styles], [sampler], [seed], [model_hash], [model_name], [prompt_words], [date], [datetime], [datetime<Format>], [datetime<Format><Time Zone>], [job_timestamp]; deixar vazio para o padrão\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpainting conditioning mask strength\",\n      \"localized\": \"Força da máscara de condicionamento de inpainting\",\n      \"reload\": \"\",\n      \"hint\": \"Determina a força da máscara na imagem original para inpainting e img2img. 1.0 significa totalmente mascarado (padrão). 0.0 significa um condicionamento totalmente sem máscara. Valores menores ajudarão a preservar a composição geral da imagem, mas terão dificuldade com grandes mudanças\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Clip skip\",\n      \"localized\": \"Clip skip\",\n      \"reload\": \"\",\n      \"hint\": \"Parâmetro de parada antecipada para o modelo CLIP; 1 é parar na última camada como de costume, 2 é parar na penúltima camada, etc\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Images folder\",\n      \"localized\": \"Pasta de imagens\",\n      \"reload\": \"\",\n      \"hint\": \"Se vazio, o padrão são três diretórios abaixo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Grids folder\",\n      \"localized\": \"Pasta de grades\",\n      \"reload\": \"\",\n      \"hint\": \"Se vazio, o padrão são dois diretórios abaixo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Quicksettings list\",\n      \"localized\": \"Lista de configurações rápidas\",\n      \"reload\": \"\",\n      \"hint\": \"Lista de nomes de configurações, separados por vírgulas, para configurações que devem ir para a barra de acesso rápido no topo em vez da aba de configurações\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Live preview display period\",\n      \"localized\": \"Período de exibição de pré-visualização ao vivo\",\n      \"reload\": \"\",\n      \"hint\": \"Solicitar imagem de pré-visualização a cada n passos, definir como 0 para desabilitar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Approximate\",\n      \"localized\": \"Aproximado\",\n      \"reload\": \"\",\n      \"hint\": \"Aproximação barata de rede neural. Muito rápido comparado ao VAE, mas produz imagens com resolução horizontal/vertical 4 vezes menor e qualidade inferior\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Simple\",\n      \"localized\": \"Simples\",\n      \"reload\": \"\",\n      \"hint\": \"Aproximação muito barata. Muito rápido comparado ao VAE, mas produz imagens com resolução horizontal/vertical 8 vezes menor e qualidade extremamente baixa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Progress update period\",\n      \"localized\": \"Período de atualização do progresso\",\n      \"reload\": \"\",\n      \"hint\": \"Período de atualização para barra de progresso da UI e verificações de pré-visualização, em milissegundos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Euler a\",\n      \"localized\": \"Euler a\",\n      \"reload\": \"\",\n      \"hint\": \"Euler Ancestral - muito criativo, cada um pode obter uma imagem completamente diferente dependendo da contagem de passos, definir passos acima de 30-40 não ajuda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"DDIM\",\n      \"localized\": \"DDIM\",\n      \"reload\": \"\",\n      \"hint\": \"Modelos Implícitos de Difusão de Denoising - melhores em inpainting\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"UniPC\",\n      \"localized\": \"UniPC\",\n      \"reload\": \"\",\n      \"hint\": \"Framework Unificado Preditor-Corretor para Amostragem Rápida de Modelos de Difusão\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sigma negative guidance minimum\",\n      \"localized\": \"Mínimo de orientação negativa Sigma\",\n      \"reload\": \"\",\n      \"hint\": \"Pular prompt negativo por alguns passos quando a imagem estiver quase pronta, 0=desabilitar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler tile size\",\n      \"localized\": \"Tamanho do bloco do upscaler\",\n      \"reload\": \"\",\n      \"hint\": \"0 = sem telhas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler tile overlap\",\n      \"localized\": \"Sobreposição de blocos do upscaler\",\n      \"reload\": \"\",\n      \"hint\": \"Valores baixos = emenda visível\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"GFPGAN\",\n      \"localized\": \"GFPGAN\",\n      \"reload\": \"\",\n      \"hint\": \"Restaurar rostos de baixa qualidade usando a rede neural GFPGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CodeFormer\",\n      \"localized\": \"CodeFormer\",\n      \"reload\": \"\",\n      \"hint\": \"Restaurar rostos de baixa qualidade usando a rede neural Codeformer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CodeFormer weight parameter\",\n      \"localized\": \"Parâmetro de peso CodeFormer\",\n      \"reload\": \"\",\n      \"hint\": \"0 = efeito máximo; 1 = efeito mínimo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ToMe token merging ratio\",\n      \"localized\": \"Proporção de fusão de tokens ToMe\",\n      \"reload\": \"\",\n      \"hint\": \"Ativar a fusão de tokens redundantes via tomesd para melhorias de velocidade e memória, 0=desabilitado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Todo token merging ratio\",\n      \"localized\": \"Proporção de fusão de tokens Todo\",\n      \"reload\": \"\",\n      \"hint\": \"Ativar a fusão de tokens redundantes via todo para melhorias de velocidade e memória, 0=desabilitado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model pipeline\",\n      \"localized\": \"Pipeline do modelo\",\n      \"reload\": \"\",\n      \"hint\": \"Se a autodeteção não detectar o modelo automaticamente, selecione o tipo de modelo antes de carregar um modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE slicing\",\n      \"localized\": \"Fatiamento VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Decodifica latentes em lote uma imagem por vez com VRAM limitada. Pequeno ganho de desempenho na decodificação VAE em lotes multi-imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE tiling\",\n      \"localized\": \"Telhamento VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Divide imagens grandes em blocos sobrepostos com VRAM limitada. Resulta em um pequeno aumento no tempo de processamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Dynamic attention BMM\",\n      \"localized\": \"Atenção dinâmica BMM\",\n      \"reload\": \"\",\n      \"hint\": \"Realiza o cálculo de atenção em etapas, em vez de tudo de uma vez. Tempos de inferência mais lentos, mas uso de memória muito reduzido\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX Execution Provider\",\n      \"localized\": \"Provedor de Execução ONNX\",\n      \"reload\": \"\",\n      \"hint\": \"Provedor de Execução ONNX\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX allow fallback to CPU\",\n      \"localized\": \"ONNX permitir fallback para CPU\",\n      \"reload\": \"\",\n      \"hint\": \"Permitir fallback para CPU quando o provedor de execução selecionado falhar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX cache converted models\",\n      \"localized\": \"ONNX armazenar modelos convertidos em cache\",\n      \"reload\": \"\",\n      \"hint\": \"Salvar os modelos convertidos para o formato ONNX como cache. Você pode gerenciá-los na aba ONNX\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX unload base model when processing refiner\",\n      \"localized\": \"ONNX descarregar modelo base ao processar refiner\",\n      \"reload\": \"\",\n      \"hint\": \"Descarregar modelo base quando o refiner estiver sendo convertido/otimizado/processado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inference-mode\",\n      \"localized\": \"Modo de inferência\",\n      \"reload\": \"\",\n      \"hint\": \"Usar torch.inference_mode\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"no-grad\",\n      \"localized\": \"no-grad\",\n      \"reload\": \"\",\n      \"hint\": \"Usar torch.no_grad\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model compile precompile\",\n      \"localized\": \"Pré-compilação do modelo\",\n      \"reload\": \"\",\n      \"hint\": \"Executar a compilação do modelo imediatamente ao carregar o modelo, em vez de no primeiro uso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Use zeros for prompt padding\",\n      \"localized\": \"Usar zeros para preenchimento de prompt\",\n      \"reload\": \"\",\n      \"hint\": \"Forçar tensor de zeros completo quando o prompt estiver vazio para remover qualquer ruído residual\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Include invisible watermark\",\n      \"localized\": \"Incluir marca d'água invisível\",\n      \"reload\": \"\",\n      \"hint\": \"Adicionar marca d'água invisível à imagem alterando alguns valores de pixel\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invisible watermark string\",\n      \"localized\": \"String da marca d'água invisível\",\n      \"reload\": \"\",\n      \"hint\": \"String da marca d'água para adicionar à imagem. Manter bem curta para evitar corrupção da imagem.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show log view\",\n      \"localized\": \"mostrar visualização de log\",\n      \"reload\": \"\",\n      \"hint\": \"Mostrar visualização de log na parte inferior da janela principal\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Log view update period\",\n      \"localized\": \"Período de atualização da visualização de log\",\n      \"reload\": \"\",\n      \"hint\": \"Período de atualização da visualização de log, em milissegundos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"PAG layer names\",\n      \"localized\": \"Nomes das camadas PAG\",\n      \"reload\": \"\",\n      \"hint\": \"Lista de camadas separadas por espaço<br>Disponível: d[0-5], m[0], u[0-8]<br>Padrão: m0\"\n    }\n  ],\n  \"missing\": [\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage\",\n      \"localized\": \"1ª etapa\",\n      \"reload\": \"\",\n      \"hint\": \"1ª etapa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage backbone\",\n      \"localized\": \"Backbone da 1ª etapa\",\n      \"reload\": \"\",\n      \"hint\": \"Backbone da 1ª etapa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage skip\",\n      \"localized\": \"Salto da 1ª etapa\",\n      \"reload\": \"\",\n      \"hint\": \"Salto da 1ª etapa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd restart step\",\n      \"localized\": \"2º passo de reinício\",\n      \"reload\": \"\",\n      \"hint\": \"2º passo de reinício\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd scale\",\n      \"localized\": \"2ª escala\",\n      \"reload\": \"\",\n      \"hint\": \"2ª escala\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage\",\n      \"localized\": \"2ª etapa\",\n      \"reload\": \"\",\n      \"hint\": \"2ª etapa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage backbone\",\n      \"localized\": \"Backbone da 2ª etapa\",\n      \"reload\": \"\",\n      \"hint\": \"Backbone da 2ª etapa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage skip\",\n      \"localized\": \"Salto da 2ª etapa\",\n      \"reload\": \"\",\n      \"hint\": \"Salto da 2ª etapa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd restart step\",\n      \"localized\": \"3º passo de reinício\",\n      \"reload\": \"\",\n      \"hint\": \"3º passo de reinício\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd scale\",\n      \"localized\": \"3ª escala\",\n      \"reload\": \"\",\n      \"hint\": \"3ª escala\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd stage\",\n      \"localized\": \"3ª etapa\",\n      \"reload\": \"\",\n      \"hint\": \"3ª etapa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th restart step\",\n      \"localized\": \"4º passo de reinício\",\n      \"reload\": \"\",\n      \"hint\": \"4º passo de reinício\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th scale\",\n      \"localized\": \"4ª escala\",\n      \"reload\": \"\",\n      \"hint\": \"4ª escala\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th stage\",\n      \"localized\": \"4ª etapa\",\n      \"reload\": \"\",\n      \"hint\": \"4ª etapa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"a1111\",\n      \"localized\": \"a1111\",\n      \"reload\": \"\",\n      \"hint\": \"a1111\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"accuracy\",\n      \"localized\": \"Precisão\",\n      \"reload\": \"\",\n      \"hint\": \"Precisão\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aci: mask dilate\",\n      \"localized\": \"aci: dilatar máscara\",\n      \"reload\": \"\",\n      \"hint\": \"aci: dilatar máscara\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"active\",\n      \"localized\": \"Ativo\",\n      \"reload\": \"\",\n      \"hint\": \"Ativo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adain\",\n      \"localized\": \"Adain\",\n      \"reload\": \"\",\n      \"hint\": \"Adain\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 1\",\n      \"localized\": \"Adaptador 1\",\n      \"reload\": \"\",\n      \"hint\": \"Adaptador 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 2\",\n      \"localized\": \"Adaptador 2\",\n      \"reload\": \"\",\n      \"hint\": \"Adaptador 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 3\",\n      \"localized\": \"Adaptador 3\",\n      \"reload\": \"\",\n      \"hint\": \"Adaptador 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 4\",\n      \"localized\": \"Adaptador 4\",\n      \"reload\": \"\",\n      \"hint\": \"Adaptador 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adaptive restore\",\n      \"localized\": \"Restauração adaptativa\",\n      \"reload\": \"\",\n      \"hint\": \"Restauração adaptativa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"add text info\",\n      \"localized\": \"Adicionar informações de texto\",\n      \"reload\": \"\",\n      \"hint\": \"Adicionar informações de texto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"add time info\",\n      \"localized\": \"Adicionar informações de tempo\",\n      \"reload\": \"\",\n      \"hint\": \"Adicionar informações de tempo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"additional image browser folders\",\n      \"localized\": \"Pastas adicionais do navegador de imagens\",\n      \"reload\": \"\",\n      \"hint\": \"Pastas adicionais do navegador de imagens\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"additional postprocessing operations\",\n      \"localized\": \"Operações adicionais de pós-processamento\",\n      \"reload\": \"\",\n      \"hint\": \"Operações adicionais de pós-processamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"advanced options\",\n      \"localized\": \"Opções avançadas\",\n      \"reload\": \"\",\n      \"hint\": \"Opções avançadas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"after\",\n      \"localized\": \"Depois\",\n      \"reload\": \"\",\n      \"hint\": \"Depois\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aggressive at step\",\n      \"localized\": \"Agressivo na etapa\",\n      \"reload\": \"\",\n      \"hint\": \"Agressivo na etapa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alias\",\n      \"localized\": \"Alias\",\n      \"reload\": \"\",\n      \"hint\": \"Alias\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"all\",\n      \"localized\": \"Todos\",\n      \"reload\": \"\",\n      \"hint\": \"Todos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"allowed aspect ratios\",\n      \"localized\": \"Proporções de aspecto permitidas\",\n      \"reload\": \"\",\n      \"hint\": \"Proporções de aspecto permitidas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha\",\n      \"localized\": \"Alfa\",\n      \"reload\": \"\",\n      \"hint\": \"Alfa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha block weight preset\",\n      \"localized\": \"Predefinição de peso de bloco alfa\",\n      \"reload\": \"\",\n      \"hint\": \"Predefinição de peso de bloco alfa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha matting\",\n      \"localized\": \"Mattificação alfa\",\n      \"reload\": \"\",\n      \"hint\": \"Mattificação alfa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha preset\",\n      \"localized\": \"Predefinição alfa\",\n      \"reload\": \"\",\n      \"hint\": \"Predefinição alfa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha ratio\",\n      \"localized\": \"Proporção alfa\",\n      \"reload\": \"\",\n      \"hint\": \"Proporção alfa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"amplify lut\",\n      \"localized\": \"Amplificar LUT\",\n      \"reload\": \"\",\n      \"hint\": \"Amplificar LUT\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"analyze\",\n      \"localized\": \"Analisar\",\n      \"reload\": \"\",\n      \"hint\": \"Analisar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"anchor settings\",\n      \"localized\": \"Configurações de âncora\",\n      \"reload\": \"\",\n      \"hint\": \"Configurações de âncora\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"animateddiff\",\n      \"localized\": \"Animatediff\",\n      \"reload\": \"\",\n      \"hint\": \"Animatediff\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"answer\",\n      \"localized\": \"Resposta\",\n      \"reload\": \"\",\n      \"hint\": \"Resposta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aot_ts_nvfuser\",\n      \"localized\": \"aot_ts_nvfuser\",\n      \"reload\": \"\",\n      \"hint\": \"aot_ts_nvfuser\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"appearance\",\n      \"localized\": \"Aparência\",\n      \"reload\": \"\",\n      \"hint\": \"Aparência\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append caption files\",\n      \"localized\": \"Anexar arquivos de legenda\",\n      \"reload\": \"\",\n      \"hint\": \"Anexar arquivos de legenda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append image info json file\",\n      \"localized\": \"Anexar arquivo JSON de informações da imagem\",\n      \"reload\": \"\",\n      \"hint\": \"Anexar arquivo JSON de informações da imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append interrogated prompt at each iteration\",\n      \"localized\": \"Anexar prompt interrogado a cada iteração\",\n      \"reload\": \"\",\n      \"hint\": \"Anexar prompt interrogado a cada iteração\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply color correction\",\n      \"localized\": \"Aplicar correção de cor\",\n      \"reload\": \"\",\n      \"hint\": \"Aplicar correção de cor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply filter\",\n      \"localized\": \"Aplicar filtro\",\n      \"reload\": \"\",\n      \"hint\": \"Aplicar filtro\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply linfusion distillation on load\",\n      \"localized\": \"Aplicar destilação Linfusion ao carregar\",\n      \"reload\": \"\",\n      \"hint\": \"Aplicar destilação Linfusion ao carregar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply mask as overlay\",\n      \"localized\": \"Aplicar máscara como sobreposição\",\n      \"reload\": \"\",\n      \"hint\": \"Aplicar máscara como sobreposição\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply msw-msa\",\n      \"localized\": \"Aplicar MSW-MSA\",\n      \"reload\": \"\",\n      \"hint\": \"Aplicar MSW-MSA\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply rau-net\",\n      \"localized\": \"Aplicar RAU-Net\",\n      \"reload\": \"\",\n      \"hint\": \"Aplicar RAU-Net\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply to model\",\n      \"localized\": \"Aplicar ao modelo\",\n      \"reload\": \"\",\n      \"hint\": \"Aplicar ao modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"artists\",\n      \"localized\": \"Artistas\",\n      \"reload\": \"\",\n      \"hint\": \"Artistas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"atiadlxx (amd only)\",\n      \"localized\": \"atiadlxx (somente AMD)\",\n      \"reload\": \"\",\n      \"hint\": \"atiadlxx (somente AMD)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention\",\n      \"localized\": \"Atenção\",\n      \"reload\": \"\",\n      \"hint\": \"Atenção\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention adain\",\n      \"localized\": \"Adain de atenção\",\n      \"reload\": \"\",\n      \"hint\": \"Adain de atenção\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention cache enabled\",\n      \"localized\": \"Cache de atenção habilitado\",\n      \"reload\": \"\",\n      \"hint\": \"Cache de atenção habilitado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention chunking threshold\",\n      \"localized\": \"Limite de chunking de atenção\",\n      \"reload\": \"\",\n      \"hint\": \"Limite de chunking de atenção\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention kv chunk size\",\n      \"localized\": \"Tamanho do chunk KV de atenção\",\n      \"reload\": \"\",\n      \"hint\": \"Tamanho do chunk KV de atenção\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention query chunk size\",\n      \"localized\": \"Tamanho do chunk de consulta de atenção\",\n      \"reload\": \"\",\n      \"hint\": \"Tamanho do chunk de consulta de atenção\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto\",\n      \"localized\": \"Automático\",\n      \"reload\": \"\",\n      \"hint\": \"Automático\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto apply\",\n      \"localized\": \"Aplicar automaticamente\",\n      \"reload\": \"\",\n      \"hint\": \"Aplicar automaticamente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-convert sd15 embeddings to sdxl\",\n      \"localized\": \"Converter automaticamente embeddings SD15 para SDXL\",\n      \"reload\": \"\",\n      \"hint\": \"Converter automaticamente embeddings SD15 para SDXL\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-mask\",\n      \"localized\": \"Máscara automática\",\n      \"reload\": \"\",\n      \"hint\": \"Máscara automática\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-segment\",\n      \"localized\": \"Segmentação automática\",\n      \"reload\": \"\",\n      \"hint\": \"Segmentação automática\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"autolaunch browser upon startup\",\n      \"localized\": \"Abrir navegador automaticamente ao iniciar\",\n      \"reload\": \"\",\n      \"hint\": \"Abrir navegador automaticamente ao iniciar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"automatically determine rank\",\n      \"localized\": \"Determinar automaticamente o rank\",\n      \"reload\": \"\",\n      \"hint\": \"Determinar automaticamente o rank\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"autorank ratio\",\n      \"localized\": \"Proporção de autorank\",\n      \"reload\": \"\",\n      \"hint\": \"Proporção de autorank\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"available networks\",\n      \"localized\": \"Redes disponíveis\",\n      \"reload\": \"\",\n      \"hint\": \"Redes disponíveis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"backend\",\n      \"localized\": \"Backend\",\n      \"reload\": \"\",\n      \"hint\": \"Backend\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"backend storage\",\n      \"localized\": \"Armazenamento de backend\",\n      \"reload\": \"\",\n      \"hint\": \"Armazenamento de backend\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"background threshold\",\n      \"localized\": \"Limite de fundo\",\n      \"reload\": \"\",\n      \"hint\": \"Limite de fundo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced\",\n      \"localized\": \"Balanceado\",\n      \"reload\": \"\",\n      \"hint\": \"Balanceado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload cpu high watermark\",\n      \"localized\": \"Marca d'água superior da CPU de descarregamento balanceado\",\n      \"reload\": \"\",\n      \"hint\": \"Marca d'água superior da CPU de descarregamento balanceado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload gpu high watermark\",\n      \"localized\": \"Marca d'água superior da GPU de descarregamento balanceado\",\n      \"reload\": \"\",\n      \"hint\": \"Marca d'água superior da GPU de descarregamento balanceado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload gpu low watermark\",\n      \"localized\": \"Marca d'água inferior da GPU de descarregamento balanceado\",\n      \"reload\": \"\",\n      \"hint\": \"Marca d'água inferior da GPU de descarregamento balanceado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"base\",\n      \"localized\": \"Base\",\n      \"reload\": \"\",\n      \"hint\": \"Base\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch caption\",\n      \"localized\": \"Legenda em lote\",\n      \"reload\": \"\",\n      \"hint\": \"Legenda em lote\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch input directory\",\n      \"localized\": \"Diretório de entrada em lote\",\n      \"reload\": \"\",\n      \"hint\": \"Diretório de entrada em lote\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch interogate\",\n      \"localized\": \"Interrogar em lote\",\n      \"reload\": \"\",\n      \"hint\": \"Interrogar em lote\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch interrogate\",\n      \"localized\": \"Interrogar em lote\",\n      \"reload\": \"\",\n      \"hint\": \"Interrogar em lote\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch mask directory\",\n      \"localized\": \"Diretório de máscara em lote\",\n      \"reload\": \"\",\n      \"hint\": \"Diretório de máscara em lote\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch matrix-matrix\",\n      \"localized\": \"Matriz-matriz em lote\",\n      \"reload\": \"\",\n      \"hint\": \"Matriz-matriz em lote\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch mode uses sequential seeds\",\n      \"localized\": \"Modo em lote usa seeds sequenciais\",\n      \"reload\": \"\",\n      \"hint\": \"Modo em lote usa seeds sequenciais\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch output directory\",\n      \"localized\": \"Diretório de saída em lote\",\n      \"reload\": \"\",\n      \"hint\": \"Diretório de saída em lote\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch uses original name\",\n      \"localized\": \"Lote usa nome original\",\n      \"reload\": \"\",\n      \"hint\": \"Lote usa nome original\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bdia ddim\",\n      \"localized\": \"BDIA DDIM\",\n      \"reload\": \"\",\n      \"hint\": \"BDIA DDIM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"before\",\n      \"localized\": \"Antes\",\n      \"reload\": \"\",\n      \"hint\": \"Antes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"benchmark level\",\n      \"localized\": \"Nível de benchmark\",\n      \"reload\": \"\",\n      \"hint\": \"Nível de benchmark\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"benchmark steps\",\n      \"localized\": \"Passos de benchmark\",\n      \"reload\": \"\",\n      \"hint\": \"Passos de benchmark\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta block weight preset\",\n      \"localized\": \"Predefinição de peso de bloco beta\",\n      \"reload\": \"\",\n      \"hint\": \"Predefinição de peso de bloco beta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta end\",\n      \"localized\": \"Fim beta\",\n      \"reload\": \"\",\n      \"hint\": \"Fim beta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta ratio\",\n      \"localized\": \"Proporção beta\",\n      \"reload\": \"\",\n      \"hint\": \"Proporção beta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta schedule\",\n      \"localized\": \"Cronograma beta\",\n      \"reload\": \"\",\n      \"hint\": \"Cronograma beta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta start\",\n      \"localized\": \"Início beta\",\n      \"reload\": \"\",\n      \"hint\": \"Início beta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bh1\",\n      \"localized\": \"bh1\",\n      \"reload\": \"\",\n      \"hint\": \"bh1\"\n    },\n    {\n      \"id\": \"bh2\",\n      \"label\": \"bh2\",\n      \"localized\": \"bh2\",\n      \"reload\": \"bh2\",\n      \"hint\": \"bh2\"\n    },\n    {\n      \"id\": \"block\",\n      \"label\": \"block\",\n      \"localized\": \"bloco\",\n      \"reload\": \"block\",\n      \"hint\": \"bloco\"\n    },\n    {\n      \"id\": \"block skip range\",\n      \"label\": \"block skip range\",\n      \"localized\": \"intervalo de salto de bloco\",\n      \"reload\": \"block skip range\",\n      \"hint\": \"intervalo de salto de bloco\"\n    },\n    {\n      \"id\": \"blur\",\n      \"label\": \"blur\",\n      \"localized\": \"desfoque\",\n      \"reload\": \"blur\",\n      \"hint\": \"desfoque\"\n    },\n    {\n      \"id\": \"body\",\n      \"label\": \"body\",\n      \"localized\": \"corpo\",\n      \"reload\": \"body\",\n      \"hint\": \"corpo\"\n    },\n    {\n      \"id\": \"boost\",\n      \"label\": \"boost\",\n      \"localized\": \"impulso\",\n      \"reload\": \"boost\",\n      \"hint\": \"impulso\"\n    },\n    {\n      \"id\": \"brightness\",\n      \"label\": \"brightness\",\n      \"localized\": \"brilho\",\n      \"reload\": \"brightness\",\n      \"hint\": \"brilho\"\n    },\n    {\n      \"id\": \"cache model\",\n      \"label\": \"cache model\",\n      \"localized\": \"modelo de cache\",\n      \"reload\": \"cache model\",\n      \"hint\": \"modelo de cache\"\n    },\n    {\n      \"id\": \"cache text encoder results\",\n      \"label\": \"cache text encoder results\",\n      \"localized\": \"armazenar resultados do codificador de texto em cache\",\n      \"reload\": \"cache text encoder results\",\n      \"hint\": \"armazenar resultados do codificador de texto em cache\"\n    },\n    {\n      \"id\": \"canny\",\n      \"label\": \"canny\",\n      \"localized\": \"canny\",\n      \"reload\": \"canny\",\n      \"hint\": \"canny\"\n    },\n    {\n      \"id\": \"caption\",\n      \"label\": \"caption\",\n      \"localized\": \"legenda\",\n      \"reload\": \"caption\",\n      \"hint\": \"legenda\"\n    },\n    {\n      \"id\": \"caption model\",\n      \"label\": \"caption model\",\n      \"localized\": \"modelo de legenda\",\n      \"reload\": \"caption model\",\n      \"hint\": \"modelo de legenda\"\n    },\n    {\n      \"id\": \"center\",\n      \"label\": \"center\",\n      \"localized\": \"centro\",\n      \"reload\": \"center\",\n      \"hint\": \"centro\"\n    },\n    {\n      \"id\": \"change log\",\n      \"label\": \"change log\",\n      \"localized\": \"registro de alterações\",\n      \"reload\": \"change log\",\n      \"hint\": \"registro de alterações\"\n    },\n    {\n      \"id\": \"change model\",\n      \"label\": \"change model\",\n      \"localized\": \"mudar modelo\",\n      \"reload\": \"change model\",\n      \"hint\": \"mudar modelo\"\n    },\n    {\n      \"id\": \"change rate\",\n      \"label\": \"change rate\",\n      \"localized\": \"taxa de alteração\",\n      \"reload\": \"change rate\",\n      \"hint\": \"taxa de alteração\"\n    },\n    {\n      \"id\": \"change reference\",\n      \"label\": \"change reference\",\n      \"localized\": \"mudar referência\",\n      \"reload\": \"change reference\",\n      \"hint\": \"mudar referência\"\n    },\n    {\n      \"id\": \"change refiner\",\n      \"label\": \"change refiner\",\n      \"localized\": \"mudar refinador\",\n      \"reload\": \"change refiner\",\n      \"hint\": \"mudar refinador\"\n    },\n    {\n      \"id\": \"change vae\",\n      \"label\": \"change vae\",\n      \"localized\": \"mudar vae\",\n      \"reload\": \"change vae\",\n      \"hint\": \"mudar vae\"\n    },\n    {\n      \"id\": \"channels last\",\n      \"label\": \"channels last\",\n      \"localized\": \"canais por último\",\n      \"reload\": \"channels last\",\n      \"hint\": \"canais por último\"\n    },\n    {\n      \"id\": \"check alternative hash\",\n      \"label\": \"check alternative hash\",\n      \"localized\": \"verificar hash alternativo\",\n      \"reload\": \"check alternative hash\",\n      \"hint\": \"verificar hash alternativo\"\n    },\n    {\n      \"id\": \"check for updates\",\n      \"label\": \"check for updates\",\n      \"localized\": \"verificar atualizações\",\n      \"reload\": \"check for updates\",\n      \"hint\": \"verificar atualizações\"\n    },\n    {\n      \"id\": \"check status\",\n      \"label\": \"check status\",\n      \"localized\": \"verificar status\",\n      \"reload\": \"check status\",\n      \"hint\": \"verificar status\"\n    },\n    {\n      \"id\": \"chunk size\",\n      \"label\": \"chunk size\",\n      \"localized\": \"tamanho do bloco\",\n      \"reload\": \"chunk size\",\n      \"hint\": \"tamanho do bloco\"\n    },\n    {\n      \"id\": \"civitai model type\",\n      \"label\": \"civitai model type\",\n      \"localized\": \"tipo de modelo civitai\",\n      \"reload\": \"civitai model type\",\n      \"hint\": \"tipo de modelo civitai\"\n    },\n    {\n      \"id\": \"civitai token\",\n      \"label\": \"civitai token\",\n      \"localized\": \"token civitai\",\n      \"reload\": \"civitai token\",\n      \"hint\": \"token civitai\"\n    },\n    {\n      \"id\": \"ck flash attention\",\n      \"label\": \"ck flash attention\",\n      \"localized\": \"atenção ck flash\",\n      \"reload\": \"ck flash attention\",\n      \"hint\": \"atenção ck flash\"\n    },\n    {\n      \"id\": \"ckpt\",\n      \"label\": \"ckpt\",\n      \"localized\": \"ckpt\",\n      \"reload\": \"ckpt\",\n      \"hint\": \"ckpt\"\n    },\n    {\n      \"id\": \"cleanup temporary folder on startup\",\n      \"label\": \"cleanup temporary folder on startup\",\n      \"localized\": \"limpar pasta temporária na inicialização\",\n      \"reload\": \"cleanup temporary folder on startup\",\n      \"hint\": \"limpar pasta temporária na inicialização\"\n    },\n    {\n      \"id\": \"clip model\",\n      \"label\": \"clip model\",\n      \"localized\": \"modelo clip\",\n      \"reload\": \"clip model\",\n      \"hint\": \"modelo clip\"\n    },\n    {\n      \"id\": \"clip: chunk size\",\n      \"label\": \"clip: chunk size\",\n      \"localized\": \"clip: tamanho do bloco\",\n      \"reload\": \"clip: chunk size\",\n      \"hint\": \"clip: tamanho do bloco\"\n    },\n    {\n      \"id\": \"clip: default captioner\",\n      \"label\": \"clip: default captioner\",\n      \"localized\": \"clip: legendador padrão\",\n      \"reload\": \"clip: default captioner\",\n      \"hint\": \"clip: legendador padrão\"\n    },\n    {\n      \"id\": \"clip: default mode\",\n      \"label\": \"clip: default mode\",\n      \"localized\": \"clip: modo padrão\",\n      \"reload\": \"clip: default mode\",\n      \"hint\": \"clip: modo padrão\"\n    },\n    {\n      \"id\": \"clip: default model\",\n      \"label\": \"clip: default model\",\n      \"localized\": \"clip: modelo padrão\",\n      \"reload\": \"clip: default model\",\n      \"hint\": \"clip: modelo padrão\"\n    },\n    {\n      \"id\": \"clip: intermediate flavors\",\n      \"label\": \"clip: intermediate flavors\",\n      \"localized\": \"clip: sabores intermediários\",\n      \"reload\": \"clip: intermediate flavors\",\n      \"hint\": \"clip: sabores intermediários\"\n    },\n    {\n      \"id\": \"clip: max flavors\",\n      \"label\": \"clip: max flavors\",\n      \"localized\": \"clip: máximo de sabores\",\n      \"reload\": \"clip: max flavors\",\n      \"hint\": \"clip: máximo de sabores\"\n    },\n    {\n      \"id\": \"clip: max length\",\n      \"label\": \"clip: max length\",\n      \"localized\": \"clip: comprimento máximo\",\n      \"reload\": \"clip: max length\",\n      \"hint\": \"clip: comprimento máximo\"\n    },\n    {\n      \"id\": \"clip: min flavors\",\n      \"label\": \"clip: min flavors\",\n      \"localized\": \"clip: mínimo de sabores\",\n      \"reload\": \"clip: min flavors\",\n      \"hint\": \"clip: mínimo de sabores\"\n    },\n    {\n      \"id\": \"clip: min length\",\n      \"label\": \"clip: min length\",\n      \"localized\": \"clip: comprimento mínimo\",\n      \"reload\": \"clip: min length\",\n      \"hint\": \"clip: comprimento mínimo\"\n    },\n    {\n      \"id\": \"clip: num beams\",\n      \"label\": \"clip: num beams\",\n      \"localized\": \"clip: número de feixes\",\n      \"reload\": \"clip: num beams\",\n      \"hint\": \"clip: número de feixes\"\n    },\n    {\n      \"id\": \"close\",\n      \"label\": \"close\",\n      \"localized\": \"fechar\",\n      \"reload\": \"close\",\n      \"hint\": \"fechar\"\n    },\n    {\n      \"id\": \"cmsi\",\n      \"label\": \"cmsi\",\n      \"localized\": \"cmsi\",\n      \"reload\": \"cmsi\",\n      \"hint\": \"cmsi\"\n    },\n    {\n      \"id\": \"cn end\",\n      \"label\": \"cn end\",\n      \"localized\": \"cn fim\",\n      \"reload\": \"cn end\",\n      \"hint\": \"cn fim\"\n    },\n    {\n      \"id\": \"cn mode\",\n      \"label\": \"cn mode\",\n      \"localized\": \"cn modo\",\n      \"reload\": \"cn mode\",\n      \"hint\": \"cn modo\"\n    },\n    {\n      \"id\": \"cn start\",\n      \"label\": \"cn start\",\n      \"localized\": \"cn início\",\n      \"reload\": \"cn start\",\n      \"hint\": \"cn início\"\n    },\n    {\n      \"id\": \"cn strength\",\n      \"label\": \"cn strength\",\n      \"localized\": \"cn força\",\n      \"reload\": \"cn strength\",\n      \"hint\": \"cn força\"\n    },\n    {\n      \"id\": \"cn tiles\",\n      \"label\": \"cn tiles\",\n      \"localized\": \"cn blocos\",\n      \"reload\": \"cn tiles\",\n      \"hint\": \"cn blocos\"\n    },\n    {\n      \"id\": \"coarse\",\n      \"label\": \"coarse\",\n      \"localized\": \"grosseiro\",\n      \"reload\": \"coarse\",\n      \"hint\": \"grosseiro\"\n    },\n    {\n      \"id\": \"color\",\n      \"label\": \"color\",\n      \"localized\": \"cor\",\n      \"reload\": \"color\",\n      \"hint\": \"cor\"\n    },\n    {\n      \"id\": \"color grading\",\n      \"label\": \"color grading\",\n      \"localized\": \"correção de cor\",\n      \"reload\": \"color grading\",\n      \"hint\": \"correção de cor\"\n    },\n    {\n      \"id\": \"color map\",\n      \"label\": \"color map\",\n      \"localized\": \"mapa de cores\",\n      \"reload\": \"color map\",\n      \"hint\": \"mapa de cores\"\n    },\n    {\n      \"id\": \"color variation\",\n      \"label\": \"color variation\",\n      \"localized\": \"variação de cor\",\n      \"reload\": \"color variation\",\n      \"hint\": \"variação de cor\"\n    },\n    {\n      \"id\": \"colormap\",\n      \"label\": \"colormap\",\n      \"localized\": \"mapa de cores\",\n      \"reload\": \"colormap\",\n      \"hint\": \"mapa de cores\"\n    },\n    {\n      \"id\": \"columns\",\n      \"label\": \"columns\",\n      \"localized\": \"colunas\",\n      \"reload\": \"columns\",\n      \"hint\": \"colunas\"\n    },\n    {\n      \"id\": \"comma\",\n      \"label\": \"comma\",\n      \"localized\": \"vírgula\",\n      \"reload\": \"comma\",\n      \"hint\": \"vírgula\"\n    },\n    {\n      \"id\": \"comma separated list with optional strength per lora\",\n      \"label\": \"comma separated list with optional strength per lora\",\n      \"localized\": \"lista separada por vírgulas com força opcional por lora\",\n      \"reload\": \"comma separated list with optional strength per lora\",\n      \"hint\": \"lista separada por vírgulas com força opcional por lora\"\n    },\n    {\n      \"id\": \"compact view\",\n      \"label\": \"compact view\",\n      \"localized\": \"visualização compacta\",\n      \"reload\": \"compact view\",\n      \"hint\": \"visualização compacta\"\n    },\n    {\n      \"id\": \"compel\",\n      \"label\": \"compel\",\n      \"localized\": \"compel\",\n      \"reload\": \"compel\",\n      \"hint\": \"compel\"\n    },\n    {\n      \"id\": \"composite\",\n      \"label\": \"composite\",\n      \"localized\": \"composto\",\n      \"reload\": \"composite\",\n      \"hint\": \"composto\"\n    },\n    {\n      \"id\": \"compress ratio\",\n      \"label\": \"compress ratio\",\n      \"localized\": \"taxa de compressão\",\n      \"reload\": \"compress ratio\",\n      \"hint\": \"taxa de compressão\"\n    },\n    {\n      \"id\": \"concept tokens\",\n      \"label\": \"concept tokens\",\n      \"localized\": \"tokens de conceito\",\n      \"reload\": \"concept tokens\",\n      \"hint\": \"tokens de conceito\"\n    },\n    {\n      \"id\": \"context\",\n      \"label\": \"context\",\n      \"localized\": \"contexto\",\n      \"reload\": \"context\",\n      \"hint\": \"contexto\"\n    },\n    {\n      \"id\": \"context after\",\n      \"label\": \"context after\",\n      \"localized\": \"contexto depois\",\n      \"reload\": \"context after\",\n      \"hint\": \"contexto depois\"\n    },\n    {\n      \"id\": \"context before\",\n      \"label\": \"context before\",\n      \"localized\": \"contexto antes\",\n      \"reload\": \"context before\",\n      \"hint\": \"contexto antes\"\n    },\n    {\n      \"id\": \"context mask\",\n      \"label\": \"context mask\",\n      \"localized\": \"máscara de contexto\",\n      \"reload\": \"context mask\",\n      \"hint\": \"máscara de contexto\"\n    },\n    {\n      \"id\": \"contrast\",\n      \"label\": \"contrast\",\n      \"localized\": \"contraste\",\n      \"reload\": \"contrast\",\n      \"hint\": \"contraste\"\n    },\n    {\n      \"id\": \"control factor\",\n      \"label\": \"control factor\",\n      \"localized\": \"fator de controle\",\n      \"reload\": \"control factor\",\n      \"hint\": \"fator de controle\"\n    },\n    {\n      \"id\": \"control override denoise strength\",\n      \"label\": \"control override denoise strength\",\n      \"localized\": \"controle de sobreposição da força de denoise\",\n      \"reload\": \"control override denoise strength\",\n      \"hint\": \"controle de sobreposição da força de denoise\"\n    },\n    {\n      \"id\": \"control preprocess input images\",\n      \"label\": \"control preprocess input images\",\n      \"localized\": \"controle de pré-processamento de imagens de entrada\",\n      \"reload\": \"control preprocess input images\",\n      \"hint\": \"controle de pré-processamento de imagens de entrada\"\n    },\n    {\n      \"id\": \"control-lllite unit 1\",\n      \"label\": \"control-lllite unit 1\",\n      \"localized\": \"control-lllite unidade 1\",\n      \"reload\": \"control-lllite unit 1\",\n      \"hint\": \"control-lllite unidade 1\"\n    },\n    {\n      \"id\": \"control-lllite unit 2\",\n      \"label\": \"control-lllite unit 2\",\n      \"localized\": \"control-lllite unidade 2\",\n      \"reload\": \"control-lllite unit 2\",\n      \"hint\": \"control-lllite unidade 2\"\n    },\n    {\n      \"id\": \"control-lllite unit 3\",\n      \"label\": \"control-lllite unit 3\",\n      \"localized\": \"control-lllite unidade 3\",\n      \"reload\": \"control-lllite unit 3\",\n      \"hint\": \"control-lllite unidade 3\"\n    },\n    {\n      \"id\": \"control-lllite unit 4\",\n      \"label\": \"control-lllite unit 4\",\n      \"localized\": \"control-lllite unidade 4\",\n      \"reload\": \"control-lllite unit 4\",\n      \"hint\": \"control-lllite unidade 4\"\n    },\n    {\n      \"id\": \"controlnet\",\n      \"label\": \"controlnet\",\n      \"localized\": \"controlnet\",\n      \"reload\": \"controlnet\",\n      \"hint\": \"controlnet\"\n    },\n    {\n      \"id\": \"controlnet unit 1\",\n      \"label\": \"controlnet unit 1\",\n      \"localized\": \"controlnet unidade 1\",\n      \"reload\": \"controlnet unit 1\",\n      \"hint\": \"controlnet unidade 1\"\n    },\n    {\n      \"id\": \"controlnet unit 2\",\n      \"label\": \"controlnet unit 2\",\n      \"localized\": \"controlnet unidade 2\",\n      \"reload\": \"controlnet unit 2\",\n      \"hint\": \"controlnet unidade 2\"\n    },\n    {\n      \"id\": \"controlnet unit 3\",\n      \"label\": \"controlnet unit 3\",\n      \"localized\": \"controlnet unidade 3\",\n      \"reload\": \"controlnet unit 3\",\n      \"hint\": \"controlnet unidade 3\"\n    },\n    {\n      \"id\": \"controlnet unit 4\",\n      \"label\": \"controlnet unit 4\",\n      \"localized\": \"controlnet unidade 4\",\n      \"reload\": \"controlnet unit 4\",\n      \"hint\": \"controlnet unidade 4\"\n    },\n    {\n      \"id\": \"controlnet-xs\",\n      \"label\": \"controlnet-xs\",\n      \"localized\": \"controlnet-xs\",\n      \"reload\": \"controlnet-xs\",\n      \"hint\": \"controlnet-xs\"\n    },\n    {\n      \"id\": \"controlnet-xs unit 1\",\n      \"label\": \"controlnet-xs unit 1\",\n      \"localized\": \"controlnet-xs unidade 1\",\n      \"reload\": \"controlnet-xs unit 1\",\n      \"hint\": \"controlnet-xs unidade 1\"\n    },\n    {\n      \"id\": \"controlnet-xs unit 2\",\n      \"label\": \"controlnet-xs unit 2\",\n      \"localized\": \"controlnet-xs unidade 2\",\n      \"reload\": \"controlnet-xs unit 2\",\n      \"hint\": \"controlnet-xs unidade 2\"\n    },\n    {\n      \"id\": \"controlnet-xs unit 3\",\n      \"label\": \"controlnet-xs unit 3\",\n      \"localized\": \"controlnet-xs unidade 3\",\n      \"reload\": \"controlnet-xs unit 3\",\n      \"hint\": \"controlnet-xs unidade 3\"\n    },\n    {\n      \"id\": \"controlnet-xs unit 4\",\n      \"label\": \"controlnet-xs unit 4\",\n      \"localized\": \"controlnet-xs unidade 4\",\n      \"reload\": \"controlnet-xs unit 4\",\n      \"hint\": \"controlnet-xs unidade 4\"\n    },\n    {\n      \"id\": \"correction mode\",\n      \"label\": \"correction mode\",\n      \"localized\": \"modo de correção\",\n      \"reload\": \"correction mode\",\n      \"hint\": \"modo de correção\"\n    },\n    {\n      \"id\": \"cosine background\",\n      \"label\": \"cosine background\",\n      \"localized\": \"fundo cosseno\",\n      \"reload\": \"cosine background\",\n      \"hint\": \"fundo cosseno\"\n    },\n    {\n      \"id\": \"cosine scale\",\n      \"label\": \"cosine scale\",\n      \"localized\": \"escala cosseno\",\n      \"reload\": \"cosine scale\",\n      \"hint\": \"escala cosseno\"\n    },\n    {\n      \"id\": \"cosine scale 1\",\n      \"label\": \"cosine scale 1\",\n      \"localized\": \"escala cosseno 1\",\n      \"reload\": \"cosine scale 1\",\n      \"hint\": \"escala cosseno 1\"\n    },\n    {\n      \"id\": \"cosine scale 2\",\n      \"label\": \"cosine scale 2\",\n      \"localized\": \"escala cosseno 2\",\n      \"reload\": \"cosine scale 2\",\n      \"hint\": \"escala cosseno 2\"\n    },\n    {\n      \"id\": \"cosine scale 3\",\n      \"label\": \"cosine scale 3\",\n      \"localized\": \"escala cosseno 3\",\n      \"reload\": \"cosine scale 3\",\n      \"hint\": \"escala cosseno 3\"\n    },\n    {\n      \"id\": \"create image info text file\",\n      \"label\": \"create image info text file\",\n      \"localized\": \"criar arquivo de texto de informações da imagem\",\n      \"reload\": \"create image info text file\",\n      \"hint\": \"criar arquivo de texto de informações da imagem\"\n    },\n    {\n      \"id\": \"create video\",\n      \"label\": \"create video\",\n      \"localized\": \"criar vídeo\",\n      \"reload\": \"create video\",\n      \"hint\": \"criar vídeo\"\n    },\n    {\n      \"id\": \"create zip archive\",\n      \"label\": \"create zip archive\",\n      \"localized\": \"criar arquivo zip\",\n      \"reload\": \"create zip archive\",\n      \"hint\": \"criar arquivo zip\"\n    },\n    {\n      \"id\": \"cross-attention\",\n      \"label\": \"cross-attention\",\n      \"localized\": \"cross-attention\",\n      \"reload\": \"cross-attention\",\n      \"hint\": \"cross-attention\"\n    },\n    {\n      \"id\": \"cudagraphs\",\n      \"label\": \"cudagraphs\",\n      \"localized\": \"cudagraphs\",\n      \"reload\": \"cudagraphs\",\n      \"hint\": \"cudagraphs\"\n    },\n    {\n      \"id\": \"cudamallocasync\",\n      \"label\": \"cudamallocasync\",\n      \"localized\": \"cudamallocasync\",\n      \"reload\": \"cudamallocasync\",\n      \"hint\": \"cudamallocasync\"\n    },\n    {\n      \"id\": \"custom pipeline\",\n      \"label\": \"custom pipeline\",\n      \"localized\": \"pipeline personalizado\",\n      \"reload\": \"custom pipeline\",\n      \"hint\": \"pipeline personalizado\"\n    },\n    {\n      \"id\": \"dark\",\n      \"label\": \"dark\",\n      \"localized\": \"escuro\",\n      \"reload\": \"dark\",\n      \"hint\": \"escuro\"\n    },\n    {\n      \"id\": \"dc solver\",\n      \"label\": \"dc solver\",\n      \"localized\": \"solucionador dc\",\n      \"reload\": \"dc solver\",\n      \"hint\": \"solucionador dc\"\n    },\n    {\n      \"id\": \"ddpm\",\n      \"label\": \"ddpm\",\n      \"localized\": \"ddpm\",\n      \"reload\": \"ddpm\",\n      \"hint\": \"ddpm\"\n    },\n    {\n      \"id\": \"debug info\",\n      \"label\": \"debug info\",\n      \"localized\": \"informações de depuração\",\n      \"reload\": \"debug info\",\n      \"hint\": \"informações de depuração\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"decode\",\n      \"localized\": \"descodificar\",\n      \"reload\": \"\",\n      \"hint\": \"descodificar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"decode chunks\",\n      \"localized\": \"descodificar blocos\",\n      \"reload\": \"\",\n      \"hint\": \"descodificar blocos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deep-cache\",\n      \"localized\": \"cache profunda\",\n      \"reload\": \"\",\n      \"hint\": \"cache profunda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru\",\n      \"localized\": \"deepbooru\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: escape brackets\",\n      \"localized\": \"deepbooru: escapar parênteses\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: escapar parênteses\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: exclude tags\",\n      \"localized\": \"deepbooru: excluir tags\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: excluir tags\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: include scores in results\",\n      \"localized\": \"deepbooru: incluir pontuações nos resultados\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: incluir pontuações nos resultados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: max tags\",\n      \"localized\": \"deepbooru: número máximo de tags\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: número máximo de tags\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: score threshold\",\n      \"localized\": \"deepbooru: limite de pontuação\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: limite de pontuação\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: sort alphabetically\",\n      \"localized\": \"deepbooru: ordenar alfabeticamente\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: ordenar alfabeticamente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: use spaces for tags\",\n      \"localized\": \"deepbooru: usar espaços para tags\",\n      \"reload\": \"\",\n      \"hint\": \"deepbooru: usar espaços para tags\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepcache cache interval\",\n      \"localized\": \"intervalo de cache deepcache\",\n      \"reload\": \"\",\n      \"hint\": \"intervalo de cache deepcache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"default\",\n      \"localized\": \"padrão\",\n      \"reload\": \"\",\n      \"hint\": \"padrão\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deis\",\n      \"localized\": \"deis\",\n      \"reload\": \"\",\n      \"hint\": \"deis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"denoising batch size\",\n      \"localized\": \"tamanho do lote de denoising\",\n      \"reload\": \"\",\n      \"hint\": \"tamanho do lote de denoising\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"denoising steps\",\n      \"localized\": \"etapas de denoising\",\n      \"reload\": \"\",\n      \"hint\": \"etapas de denoising\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth and normal\",\n      \"localized\": \"profundidade e normal\",\n      \"reload\": \"\",\n      \"hint\": \"profundidade e normal\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth anything\",\n      \"localized\": \"depth anything\",\n      \"reload\": \"\",\n      \"hint\": \"depth anything\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth map\",\n      \"localized\": \"mapa de profundidade\",\n      \"reload\": \"\",\n      \"hint\": \"mapa de profundidade\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth threshold\",\n      \"localized\": \"limiar de profundidade\",\n      \"reload\": \"\",\n      \"hint\": \"limiar de profundidade\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"description\",\n      \"localized\": \"descrição\",\n      \"reload\": \"\",\n      \"hint\": \"descrição\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"details\",\n      \"localized\": \"detalhes\",\n      \"reload\": \"\",\n      \"hint\": \"detalhes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deterministic mode\",\n      \"localized\": \"modo determinístico\",\n      \"reload\": \"\",\n      \"hint\": \"modo determinístico\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"device info\",\n      \"localized\": \"informações do dispositivo\",\n      \"reload\": \"\",\n      \"hint\": \"informações do dispositivo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"diffusers\",\n      \"localized\": \"diffusers\",\n      \"reload\": \"\",\n      \"hint\": \"diffusers\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dilate\",\n      \"localized\": \"dilatar\",\n      \"reload\": \"\",\n      \"hint\": \"dilatar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dilate tau\",\n      \"localized\": \"dilatar tau\",\n      \"reload\": \"\",\n      \"hint\": \"dilatar tau\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"directml retry ops for nan\",\n      \"localized\": \"DirectML tentar novamente operações para NaN\",\n      \"reload\": \"\",\n      \"hint\": \"DirectML tentar novamente operações para NaN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"directory for temporary images; leave empty for default\",\n      \"localized\": \"diretório para imagens temporárias; deixe vazio para o padrão\",\n      \"reload\": \"\",\n      \"hint\": \"diretório para imagens temporárias; deixe vazio para o padrão\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disable accelerate\",\n      \"localized\": \"desativar aceleração\",\n      \"reload\": \"\",\n      \"hint\": \"desativar aceleração\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disable conditional batching\",\n      \"localized\": \"desativar agrupamento condicional\",\n      \"reload\": \"\",\n      \"hint\": \"desativar agrupamento condicional\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disabled\",\n      \"localized\": \"desativado\",\n      \"reload\": \"\",\n      \"hint\": \"desativado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"discard penultimate sigma\",\n      \"localized\": \"descartar penúltimo sigma\",\n      \"reload\": \"\",\n      \"hint\": \"descartar penúltimo sigma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"distance threshold\",\n      \"localized\": \"limiar de distância\",\n      \"reload\": \"\",\n      \"hint\": \"limiar de distância\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"do not change selected model when reading generation parameters\",\n      \"localized\": \"não alterar o modelo selecionado ao ler parâmetros de geração\",\n      \"reload\": \"\",\n      \"hint\": \"não alterar o modelo selecionado ao ler parâmetros de geração\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"do not display video output in ui\",\n      \"localized\": \"não exibir saída de vídeo na interface\",\n      \"reload\": \"\",\n      \"hint\": \"não exibir saída de vídeo na interface\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"down\",\n      \"localized\": \"para baixo\",\n      \"reload\": \"\",\n      \"hint\": \"para baixo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download\",\n      \"localized\": \"baixar\",\n      \"reload\": \"\",\n      \"hint\": \"baixar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download model\",\n      \"localized\": \"baixar modelo\",\n      \"reload\": \"\",\n      \"hint\": \"baixar modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download path\",\n      \"localized\": \"caminho de download\",\n      \"reload\": \"\",\n      \"hint\": \"caminho de download\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download updates\",\n      \"localized\": \"baixar atualizações\",\n      \"reload\": \"\",\n      \"hint\": \"baixar atualizações\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"downscale high resolution live previews\",\n      \"localized\": \"reduzir escala de pré-visualizações ao vivo de alta resolução\",\n      \"reload\": \"\",\n      \"hint\": \"reduzir escala de pré-visualizações ao vivo de alta resolução\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm sde\",\n      \"localized\": \"dpm sde\",\n      \"reload\": \"\",\n      \"hint\": \"dpm sde\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++\",\n      \"localized\": \"dpm++\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 1s\",\n      \"localized\": \"dpm++ 1s\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 1s\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m\",\n      \"localized\": \"dpm++ 2m\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 2m\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m edm\",\n      \"localized\": \"dpm++ 2m edm\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 2m edm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m inverse\",\n      \"localized\": \"dpm++ 2m inverse\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 2m inverse\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m sde\",\n      \"localized\": \"dpm++ 2m sde\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 2m sde\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 3m\",\n      \"localized\": \"dpm++ 3m\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 3m\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 3m inverse\",\n      \"localized\": \"dpm++ 3m inverse\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ 3m inverse\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ cosine\",\n      \"localized\": \"dpm++ cosine\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ cosine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ inverse\",\n      \"localized\": \"dpm++ inverse\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ inverse\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ sde\",\n      \"localized\": \"dpm++ sde\",\n      \"reload\": \"\",\n      \"hint\": \"dpm++ sde\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2 flowmatch\",\n      \"localized\": \"dpm2 flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2 flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2m flowmatch\",\n      \"localized\": \"dpm2++ 2m flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 2m flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2m sde flowmatch\",\n      \"localized\": \"dpm2++ 2m sde flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 2m sde flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2s flowmatch\",\n      \"localized\": \"dpm2++ 2s flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 2s flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 3m sde flowmatch\",\n      \"localized\": \"dpm2++ 3m sde flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ 3m sde flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ sde flowmatch\",\n      \"localized\": \"dpm2++ sde flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2++ sde flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2a flowmatch\",\n      \"localized\": \"dpm2a flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"dpm2a flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"draw legend\",\n      \"localized\": \"desenhar legenda\",\n      \"reload\": \"\",\n      \"hint\": \"desenhar legenda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dropdown\",\n      \"localized\": \"menu suspenso\",\n      \"reload\": \"\",\n      \"hint\": \"menu suspenso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"duration\",\n      \"localized\": \"duração\",\n      \"reload\": \"\",\n      \"hint\": \"duração\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dwpose\",\n      \"localized\": \"dwpose\",\n      \"reload\": \"\",\n      \"hint\": \"dwpose\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic\",\n      \"localized\": \"dinâmico\",\n      \"reload\": \"\",\n      \"hint\": \"dinâmico\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention\",\n      \"localized\": \"atenção dinâmica\",\n      \"reload\": \"\",\n      \"hint\": \"atenção dinâmica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention slicing rate in gb\",\n      \"localized\": \"taxa de fatiamento de atenção dinâmica em GB\",\n      \"reload\": \"\",\n      \"hint\": \"taxa de fatiamento de atenção dinâmica em GB\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention trigger rate in gb\",\n      \"localized\": \"taxa de gatilho de atenção dinâmica em GB\",\n      \"reload\": \"\",\n      \"hint\": \"taxa de gatilho de atenção dinâmica em GB\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edge\",\n      \"localized\": \"borda\",\n      \"reload\": \"\",\n      \"hint\": \"borda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edit start\",\n      \"localized\": \"início da edição\",\n      \"reload\": \"\",\n      \"hint\": \"início da edição\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edit stop\",\n      \"localized\": \"fim da edição\",\n      \"reload\": \"\",\n      \"hint\": \"fim da edição\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"embedded metadata\",\n      \"localized\": \"metadados incorporados\",\n      \"reload\": \"\",\n      \"hint\": \"metadados incorporados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable embeddings support\",\n      \"localized\": \"ativar suporte a embeddings\",\n      \"reload\": \"\",\n      \"hint\": \"ativar suporte a embeddings\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable file wildcards support\",\n      \"localized\": \"ativar suporte a curingas de arquivo\",\n      \"reload\": \"\",\n      \"hint\": \"ativar suporte a curingas de arquivo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable freeu\",\n      \"localized\": \"ativar FreeU\",\n      \"reload\": \"\",\n      \"hint\": \"ativar FreeU\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable teacache\",\n      \"localized\": \"ativar Teacache\",\n      \"reload\": \"\",\n      \"hint\": \"ativar Teacache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable tonemap\",\n      \"localized\": \"ativar mapeamento de tons\",\n      \"reload\": \"\",\n      \"hint\": \"ativar mapeamento de tons\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable use of reference models\",\n      \"localized\": \"ativar uso de modelos de referência\",\n      \"reload\": \"\",\n      \"hint\": \"ativar uso de modelos de referência\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enabled\",\n      \"localized\": \"ativado\",\n      \"reload\": \"\",\n      \"hint\": \"ativado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"encoder\",\n      \"localized\": \"encoder\",\n      \"reload\": \"\",\n      \"hint\": \"encoder\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"end\",\n      \"localized\": \"fim\",\n      \"reload\": \"\",\n      \"hint\": \"fim\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enhance prompt\",\n      \"localized\": \"melhorar prompt\",\n      \"reload\": \"\",\n      \"hint\": \"melhorar prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ensemble size\",\n      \"localized\": \"tamanho do conjunto\",\n      \"reload\": \"\",\n      \"hint\": \"tamanho do conjunto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"epsilon\",\n      \"localized\": \"epsilon\",\n      \"reload\": \"\",\n      \"hint\": \"epsilon\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"erode\",\n      \"localized\": \"erodir\",\n      \"reload\": \"\",\n      \"hint\": \"erodir\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"erode size\",\n      \"localized\": \"tamanho da erosão\",\n      \"reload\": \"\",\n      \"hint\": \"tamanho da erosão\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"eta\",\n      \"localized\": \"eta\",\n      \"reload\": \"\",\n      \"hint\": \"eta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler\",\n      \"localized\": \"Euler\",\n      \"reload\": \"\",\n      \"hint\": \"Euler\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler edm\",\n      \"localized\": \"Euler EDM\",\n      \"reload\": \"\",\n      \"hint\": \"Euler EDM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler flowmatch\",\n      \"localized\": \"Euler Flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"Euler Flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler sgm\",\n      \"localized\": \"Euler SGM\",\n      \"reload\": \"\",\n      \"hint\": \"Euler SGM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.cpu\",\n      \"localized\": \"executionprovider.cpu\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.cpu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.cuda\",\n      \"localized\": \"executionprovider.cuda\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.cuda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.directml\",\n      \"localized\": \"executionprovider.directml\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.directml\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.migraphx\",\n      \"localized\": \"executionprovider.migraphx\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.migraphx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.openvino\",\n      \"localized\": \"executionprovider.openvino\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.openvino\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.rocm\",\n      \"localized\": \"executionprovider.rocm\",\n      \"reload\": \"\",\n      \"hint\": \"executionprovider.rocm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"expandable segments\",\n      \"localized\": \"segmentos expansíveis\",\n      \"reload\": \"\",\n      \"hint\": \"segmentos expansíveis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"exponential\",\n      \"localized\": \"exponencial\",\n      \"reload\": \"\",\n      \"hint\": \"exponencial\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"exposure\",\n      \"localized\": \"exposição\",\n      \"reload\": \"\",\n      \"hint\": \"exposição\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"extra noise multiplier for img2img\",\n      \"localized\": \"multiplicador de ruído extra para img2img\",\n      \"reload\": \"\",\n      \"hint\": \"multiplicador de ruído extra para img2img\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"extract lora\",\n      \"localized\": \"extrair lora\",\n      \"reload\": \"\",\n      \"hint\": \"extrair lora\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"face\",\n      \"localized\": \"rosto\",\n      \"reload\": \"\",\n      \"hint\": \"rosto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"face confidence\",\n      \"localized\": \"confiança do rosto\",\n      \"reload\": \"\",\n      \"hint\": \"confiança do rosto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"faceid model\",\n      \"localized\": \"modelo faceid\",\n      \"reload\": \"\",\n      \"hint\": \"modelo faceid\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fall-off exponent (lower=higher detail)\",\n      \"localized\": \"expoente de decaimento (menor=maior detalhe)\",\n      \"reload\": \"\",\n      \"hint\": \"expoente de decaimento (menor=maior detalhe)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"false\",\n      \"localized\": \"falso\",\n      \"reload\": \"\",\n      \"hint\": \"falso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fast\",\n      \"localized\": \"rápido\",\n      \"reload\": \"\",\n      \"hint\": \"rápido\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"file or folder with user-defined styles\",\n      \"localized\": \"arquivo ou pasta com estilos definidos pelo usuário\",\n      \"reload\": \"\",\n      \"hint\": \"arquivo ou pasta com estilos definidos pelo usuário\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"filename\",\n      \"localized\": \"nome do arquivo\",\n      \"reload\": \"\",\n      \"hint\": \"nome do arquivo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"first-block cache enabled\",\n      \"localized\": \"cache do primeiro bloco ativado\",\n      \"reload\": \"\",\n      \"hint\": \"cache do primeiro bloco ativado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fixed unet precision\",\n      \"localized\": \"precisão unet fixa\",\n      \"reload\": \"\",\n      \"hint\": \"precisão unet fixa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flash attention\",\n      \"localized\": \"atenção flash\",\n      \"reload\": \"\",\n      \"hint\": \"atenção flash\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flavors\",\n      \"localized\": \"sabores\",\n      \"reload\": \"\",\n      \"hint\": \"sabores\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flow shift\",\n      \"localized\": \"deslocamento de fluxo\",\n      \"reload\": \"\",\n      \"hint\": \"deslocamento de fluxo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder\",\n      \"localized\": \"pasta\",\n      \"reload\": \"\",\n      \"hint\": \"pasta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for control generate\",\n      \"localized\": \"pasta para geração de controle\",\n      \"reload\": \"\",\n      \"hint\": \"pasta para geração de controle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for control grids\",\n      \"localized\": \"pasta para grades de controle\",\n      \"reload\": \"\",\n      \"hint\": \"pasta para grades de controle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for disk offload\",\n      \"localized\": \"pasta para descarregamento de disco\",\n      \"reload\": \"\",\n      \"hint\": \"pasta para descarregamento de disco\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for huggingface cache\",\n      \"localized\": \"pasta para cache do huggingface\",\n      \"reload\": \"\",\n      \"hint\": \"pasta para cache do huggingface\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for image generate\",\n      \"localized\": \"pasta para geração de imagem\",\n      \"reload\": \"\",\n      \"hint\": \"pasta para geração de imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for img2img grids\",\n      \"localized\": \"pasta para grades img2img\",\n      \"reload\": \"\",\n      \"hint\": \"pasta para grades img2img\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for init images\",\n      \"localized\": \"pasta para imagens iniciais\",\n      \"reload\": \"\",\n      \"hint\": \"pasta para imagens iniciais\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for manually saved images\",\n      \"localized\": \"pasta para imagens salvas manualmente\",\n      \"reload\": \"\",\n      \"hint\": \"pasta para imagens salvas manualmente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for onnx cached models\",\n      \"localized\": \"pasta para modelos ONNX em cache\",\n      \"reload\": \"\",\n      \"hint\": \"pasta para modelos ONNX em cache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for onnx conversion\",\n      \"localized\": \"pasta para conversão ONNX\",\n      \"reload\": \"\",\n      \"hint\": \"pasta para conversão ONNX\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for openvino cache\",\n      \"localized\": \"pasta para cache do OpenVINO\",\n      \"reload\": \"\",\n      \"hint\": \"pasta para cache do OpenVINO\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for processed images\",\n      \"localized\": \"pasta para imagens processadas\",\n      \"reload\": \"\",\n      \"hint\": \"pasta para imagens processadas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for text generate\",\n      \"localized\": \"pasta para geração de texto\",\n      \"reload\": \"\",\n      \"hint\": \"pasta para geração de texto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for tunable ops cache\",\n      \"localized\": \"pasta para cache de operações ajustáveis\",\n      \"reload\": \"\",\n      \"hint\": \"pasta para cache de operações ajustáveis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for txt2img grids\",\n      \"localized\": \"pasta para grades txt2img\",\n      \"reload\": \"\",\n      \"hint\": \"pasta para grades txt2img\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for videos\",\n      \"localized\": \"pasta para vídeos\",\n      \"reload\": \"\",\n      \"hint\": \"pasta para vídeos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with bsrgan models\",\n      \"localized\": \"pasta com modelos BSRGAN\",\n      \"reload\": \"\",\n      \"hint\": \"pasta com modelos BSRGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with chainner models\",\n      \"localized\": \"pasta com modelos Chainner\",\n      \"reload\": \"\",\n      \"hint\": \"pasta com modelos Chainner\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with clip models\",\n      \"localized\": \"pasta com modelos CLIP\",\n      \"reload\": \"\",\n      \"hint\": \"pasta com modelos CLIP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with codeformer models\",\n      \"localized\": \"pasta com modelos CodeFormer\",\n      \"reload\": \"\",\n      \"hint\": \"pasta com modelos CodeFormer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with control models\",\n      \"localized\": \"pasta com modelos de controle\",\n      \"reload\": \"\",\n      \"hint\": \"pasta com modelos de controle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with esrgan models\",\n      \"localized\": \"pasta com modelos ESRGAN\",\n      \"reload\": \"\",\n      \"hint\": \"pasta com modelos ESRGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with gfpgan models\",\n      \"localized\": \"pasta com modelos GFPGAN\",\n      \"reload\": \"\",\n      \"hint\": \"pasta com modelos GFPGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with huggingface models\",\n      \"localized\": \"pasta com modelos Hugging Face\",\n      \"reload\": \"\",\n      \"hint\": \"pasta com modelos Hugging Face\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with hypernetwork models\",\n      \"localized\": \"pasta com modelos Hypernetwork\",\n      \"reload\": \"\",\n      \"hint\": \"pasta com modelos Hypernetwork\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with ldsr models\",\n      \"localized\": \"pasta com modelos LDSR\",\n      \"reload\": \"\",\n      \"hint\": \"pasta com modelos LDSR\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with lora network(s)\",\n      \"localized\": \"pasta com rede(s) lora\",\n      \"reload\": \"\",\n      \"hint\": \"pasta com rede(s) lora\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with realesrgan models\",\n      \"localized\": \"pasta com modelos RealESRGAN\",\n      \"reload\": \"\",\n      \"hint\": \"pasta com modelos RealESRGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with scunet models\",\n      \"localized\": \"pasta com modelos SCUNET\",\n      \"reload\": \"\",\n      \"hint\": \"pasta com modelos SCUNET\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with stable diffusion models\",\n      \"localized\": \"pasta com modelos Stable Diffusion\",\n      \"reload\": \"\",\n      \"hint\": \"pasta com modelos Stable Diffusion\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with swinir models\",\n      \"localized\": \"pasta com modelos SwinIR\",\n      \"reload\": \"\",\n      \"hint\": \"pasta com modelos SwinIR\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with text encoder files\",\n      \"localized\": \"pasta com arquivos do codificador de texto\",\n      \"reload\": \"\",\n      \"hint\": \"pasta com arquivos do codificador de texto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with textual inversion embeddings\",\n      \"localized\": \"pasta com embeddings de inversão textual\",\n      \"reload\": \"\",\n      \"hint\": \"pasta com embeddings de inversão textual\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with unet files\",\n      \"localized\": \"pasta com arquivos UNet\",\n      \"reload\": \"\",\n      \"hint\": \"pasta com arquivos UNet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with user-defined wildcards\",\n      \"localized\": \"pasta com curingas definidos pelo usuário\",\n      \"reload\": \"\",\n      \"hint\": \"pasta com curingas definidos pelo usuário\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with vae files\",\n      \"localized\": \"pasta com arquivos VAE\",\n      \"reload\": \"\",\n      \"hint\": \"pasta com arquivos VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with yolo models\",\n      \"localized\": \"pasta com modelos YOLO\",\n      \"reload\": \"\",\n      \"hint\": \"pasta com modelos YOLO\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font color\",\n      \"localized\": \"cor da fonte\",\n      \"reload\": \"\",\n      \"hint\": \"cor da fonte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font file\",\n      \"localized\": \"arquivo de fonte\",\n      \"reload\": \"\",\n      \"hint\": \"arquivo de fonte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font size\",\n      \"localized\": \"tamanho da fonte\",\n      \"reload\": \"\",\n      \"hint\": \"tamanho da fonte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"force model eval\",\n      \"localized\": \"forçar avaliação do modelo\",\n      \"reload\": \"\",\n      \"hint\": \"forçar avaliação do modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"foreground threshold\",\n      \"localized\": \"limiar de primeiro plano\",\n      \"reload\": \"\",\n      \"hint\": \"limiar de primeiro plano\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fp4\",\n      \"localized\": \"fp4\",\n      \"reload\": \"\",\n      \"hint\": \"fp4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"frame change sensitivity\",\n      \"localized\": \"sensibilidade à mudança de quadro\",\n      \"reload\": \"\",\n      \"hint\": \"sensibilidade à mudança de quadro\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"frames\",\n      \"localized\": \"quadros\",\n      \"reload\": \"\",\n      \"hint\": \"quadros\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeinit\",\n      \"localized\": \"freeinit\",\n      \"reload\": \"\",\n      \"hint\": \"freeinit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeu enabled\",\n      \"localized\": \"freeu ativado\",\n      \"reload\": \"\",\n      \"hint\": \"freeu ativado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeu preset\",\n      \"localized\": \"predefinição freeu\",\n      \"reload\": \"\",\n      \"hint\": \"predefinição freeu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"full vae\",\n      \"localized\": \"VAE completo\",\n      \"reload\": \"\",\n      \"hint\": \"VAE completo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"full-depth cudnn benchmark\",\n      \"localized\": \"benchmark cudnn de profundidade total\",\n      \"reload\": \"\",\n      \"hint\": \"benchmark cudnn de profundidade total\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fuse strength\",\n      \"localized\": \"força de fusão\",\n      \"reload\": \"\",\n      \"hint\": \"força de fusão\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fused projections\",\n      \"localized\": \"projeções fundidas\",\n      \"reload\": \"\",\n      \"hint\": \"projeções fundidas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gamma\",\n      \"localized\": \"gama\",\n      \"reload\": \"\",\n      \"hint\": \"gama\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gamma corrected\",\n      \"localized\": \"gama corrigida\",\n      \"reload\": \"\",\n      \"hint\": \"gama corrigida\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gate step\",\n      \"localized\": \"passo do portão\",\n      \"reload\": \"\",\n      \"hint\": \"passo do portão\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gc threshold\",\n      \"localized\": \"gc threshold\",\n      \"reload\": \"\",\n      \"hint\": \"gc threshold\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"get changelog\",\n      \"localized\": \"obter registro de alterações\",\n      \"reload\": \"\",\n      \"hint\": \"obter registro de alterações\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gpu\",\n      \"localized\": \"gpu\",\n      \"reload\": \"\",\n      \"hint\": \"gpu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gradient\",\n      \"localized\": \"gradiente\",\n      \"reload\": \"\",\n      \"hint\": \"gradiente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid background color\",\n      \"localized\": \"cor de fundo da grade\",\n      \"reload\": \"\",\n      \"hint\": \"cor de fundo da grade\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid margins\",\n      \"localized\": \"margens da grade\",\n      \"reload\": \"\",\n      \"hint\": \"margens da grade\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid sections:\",\n      \"localized\": \"seções da grade:\",\n      \"reload\": \"\",\n      \"hint\": \"seções da grade:\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"group size\",\n      \"localized\": \"tamanho do grupo\",\n      \"reload\": \"\",\n      \"hint\": \"tamanho do grupo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance\",\n      \"localized\": \"orientação\",\n      \"reload\": \"\",\n      \"hint\": \"orientação\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance start\",\n      \"localized\": \"início da orientação\",\n      \"reload\": \"\",\n      \"hint\": \"início da orientação\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance stop\",\n      \"localized\": \"fim da orientação\",\n      \"reload\": \"\",\n      \"hint\": \"fim da orientação\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance strength\",\n      \"localized\": \"força da orientação\",\n      \"reload\": \"\",\n      \"hint\": \"força da orientação\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hands\",\n      \"localized\": \"mãos\",\n      \"reload\": \"\",\n      \"hint\": \"mãos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hdr range\",\n      \"localized\": \"intervalo HDR\",\n      \"reload\": \"\",\n      \"hint\": \"intervalo HDR\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hed\",\n      \"localized\": \"hed\",\n      \"reload\": \"\",\n      \"hint\": \"hed\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height  after\",\n      \"localized\": \"altura depois\",\n      \"reload\": \"\",\n      \"hint\": \"altura depois\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height  before\",\n      \"localized\": \"altura antes\",\n      \"reload\": \"\",\n      \"hint\": \"altura antes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height  mask\",\n      \"localized\": \"máscara de altura\",\n      \"reload\": \"\",\n      \"hint\": \"máscara de altura\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"heun\",\n      \"localized\": \"heun\",\n      \"reload\": \"\",\n      \"hint\": \"heun\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"heun flowmatch\",\n      \"localized\": \"heun flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"heun flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hidet\",\n      \"localized\": \"hidet\",\n      \"reload\": \"\",\n      \"hint\": \"hidet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"high threshold\",\n      \"localized\": \"limiar alto\",\n      \"reload\": \"\",\n      \"hint\": \"limiar alto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hires pass only\",\n      \"localized\": \"apenas passagem hires\",\n      \"reload\": \"\",\n      \"hint\": \"apenas passagem hires\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hq init latents\",\n      \"localized\": \"latentes de inicialização HQ\",\n      \"reload\": \"\",\n      \"hint\": \"latentes de inicialização HQ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hue\",\n      \"localized\": \"matiz\",\n      \"reload\": \"\",\n      \"hint\": \"matiz\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"huggingface mirror\",\n      \"localized\": \"espelho Hugging Face\",\n      \"reload\": \"\",\n      \"hint\": \"espelho Hugging Face\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"huggingface token\",\n      \"localized\": \"token Hugging Face\",\n      \"reload\": \"\",\n      \"hint\": \"token Hugging Face\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hunyuan\",\n      \"localized\": \"hunyuan\",\n      \"reload\": \"\",\n      \"hint\": \"hunyuan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"il\",\n      \"localized\": \"il\",\n      \"reload\": \"\",\n      \"hint\": \"il\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image height\",\n      \"localized\": \"altura da imagem\",\n      \"reload\": \"\",\n      \"hint\": \"altura da imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image quality\",\n      \"localized\": \"qualidade da imagem\",\n      \"reload\": \"\",\n      \"hint\": \"qualidade da imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image transparent color fill\",\n      \"localized\": \"preenchimento de cor transparente da imagem\",\n      \"reload\": \"\",\n      \"hint\": \"preenchimento de cor transparente da imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image watermark file\",\n      \"localized\": \"arquivo de marca d'água da imagem\",\n      \"reload\": \"\",\n      \"hint\": \"arquivo de marca d'água da imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image watermark position\",\n      \"localized\": \"posição da marca d'água da imagem\",\n      \"reload\": \"\",\n      \"hint\": \"posição da marca d'água da imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image width\",\n      \"localized\": \"largura da imagem\",\n      \"reload\": \"\",\n      \"hint\": \"largura da imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include images\",\n      \"localized\": \"incluir imagens\",\n      \"reload\": \"\",\n      \"hint\": \"incluir imagens\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include main grid\",\n      \"localized\": \"incluir grade principal\",\n      \"reload\": \"\",\n      \"hint\": \"incluir grade principal\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include mask in outputs\",\n      \"localized\": \"incluir máscara nas saídas\",\n      \"reload\": \"\",\n      \"hint\": \"incluir máscara nas saídas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include original image\",\n      \"localized\": \"incluir imagem original\",\n      \"reload\": \"\",\n      \"hint\": \"incluir imagem original\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include scores in results when available\",\n      \"localized\": \"incluir pontuações nos resultados quando disponível\",\n      \"reload\": \"\",\n      \"hint\": \"incluir pontuações nos resultados quando disponível\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include sub grids\",\n      \"localized\": \"incluir subgrades\",\n      \"reload\": \"\",\n      \"hint\": \"incluir subgrades\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inductor\",\n      \"localized\": \"indutor\",\n      \"reload\": \"\",\n      \"hint\": \"indutor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"info\",\n      \"localized\": \"informações\",\n      \"reload\": \"\",\n      \"hint\": \"informações\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"info object\",\n      \"localized\": \"objeto de informações\",\n      \"reload\": \"\",\n      \"hint\": \"objeto de informações\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpaint\",\n      \"localized\": \"repintura\",\n      \"reload\": \"\",\n      \"hint\": \"repintura\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpaint masked only\",\n      \"localized\": \"repintar apenas área mascarada\",\n      \"reload\": \"\",\n      \"hint\": \"repintar apenas área mascarada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpainting include greyscale mask in results\",\n      \"localized\": \"repintura: incluir máscara em tons de cinza nos resultados\",\n      \"reload\": \"\",\n      \"hint\": \"repintura: incluir máscara em tons de cinza nos resultados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpainting include masked composite in results\",\n      \"localized\": \"repintura: incluir composto mascarado nos resultados\",\n      \"reload\": \"\",\n      \"hint\": \"repintura: incluir composto mascarado nos resultados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"input model\",\n      \"localized\": \"modelo de entrada\",\n      \"reload\": \"\",\n      \"hint\": \"modelo de entrada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"intermediates\",\n      \"localized\": \"intermediários\",\n      \"reload\": \"\",\n      \"hint\": \"intermediários\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"interpolate frames\",\n      \"localized\": \"interpolar quadros\",\n      \"reload\": \"\",\n      \"hint\": \"interpolar quadros\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"interpolation method\",\n      \"localized\": \"método de interpolação\",\n      \"reload\": \"\",\n      \"hint\": \"método de interpolação\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invert\",\n      \"localized\": \"inverter\",\n      \"reload\": \"\",\n      \"hint\": \"inverter\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invert mask\",\n      \"localized\": \"inverter máscara\",\n      \"reload\": \"\",\n      \"hint\": \"inverter máscara\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iou\",\n      \"localized\": \"iou\",\n      \"reload\": \"\",\n      \"hint\": \"iou\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ipex\",\n      \"localized\": \"ipex\",\n      \"reload\": \"\",\n      \"hint\": \"ipex\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ipndm\",\n      \"localized\": \"ipndm\",\n      \"reload\": \"\",\n      \"hint\": \"ipndm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"item edge blur\",\n      \"localized\": \"desfoque de borda do item\",\n      \"reload\": \"\",\n      \"hint\": \"desfoque de borda do item\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"item padding\",\n      \"localized\": \"preenchimento do item\",\n      \"reload\": \"\",\n      \"hint\": \"preenchimento do item\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iterate seed per line\",\n      \"localized\": \"iterar semente por linha\",\n      \"reload\": \"\",\n      \"hint\": \"iterar semente por linha\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iterations\",\n      \"localized\": \"iterações\",\n      \"reload\": \"\",\n      \"hint\": \"iterações\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"karras\",\n      \"localized\": \"karras\",\n      \"reload\": \"\",\n      \"hint\": \"karras\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"kdpm2\",\n      \"localized\": \"kdpm2\",\n      \"reload\": \"\",\n      \"hint\": \"kdpm2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"kdpm2 a\",\n      \"localized\": \"kdpm2 a\",\n      \"reload\": \"\",\n      \"hint\": \"kdpm2 a\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"keep incomplete images\",\n      \"localized\": \"manter imagens incompletas\",\n      \"reload\": \"\",\n      \"hint\": \"manter imagens incompletas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"large\",\n      \"localized\": \"grande\",\n      \"reload\": \"\",\n      \"hint\": \"grande\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"latent history size\",\n      \"localized\": \"tamanho do histórico latente\",\n      \"reload\": \"\",\n      \"hint\": \"tamanho do histórico latente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"latent mode\",\n      \"localized\": \"modo latente\",\n      \"reload\": \"\",\n      \"hint\": \"modo latente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layer scales\",\n      \"localized\": \"escalas de camada\",\n      \"reload\": \"\",\n      \"hint\": \"escalas de camada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layerwise casting storage\",\n      \"localized\": \"armazenamento de casting por camada\",\n      \"reload\": \"\",\n      \"hint\": \"armazenamento de casting por camada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layerwise non-blocking operations\",\n      \"localized\": \"operações não-bloqueadoras por camada\",\n      \"reload\": \"\",\n      \"hint\": \"operações não-bloqueadoras por camada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lcm\",\n      \"localized\": \"lcm\",\n      \"reload\": \"\",\n      \"hint\": \"lcm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ldsr processing steps\",\n      \"localized\": \"etapas de processamento ldsr\",\n      \"reload\": \"\",\n      \"hint\": \"etapas de processamento ldsr\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"left\",\n      \"localized\": \"esquerda\",\n      \"reload\": \"\",\n      \"hint\": \"esquerda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"legend\",\n      \"localized\": \"legenda\",\n      \"reload\": \"\",\n      \"hint\": \"legenda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"length\",\n      \"localized\": \"comprimento\",\n      \"reload\": \"\",\n      \"hint\": \"comprimento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"leres depth\",\n      \"localized\": \"profundidade leres\",\n      \"reload\": \"\",\n      \"hint\": \"profundidade leres\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"level\",\n      \"localized\": \"nível\",\n      \"reload\": \"\",\n      \"hint\": \"nível\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"libs\",\n      \"localized\": \"bibliotecas\",\n      \"reload\": \"\",\n      \"hint\": \"bibliotecas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"light\",\n      \"localized\": \"luz\",\n      \"reload\": \"\",\n      \"hint\": \"luz\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lineart\",\n      \"localized\": \"arte linear\",\n      \"reload\": \"\",\n      \"hint\": \"arte linear\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"list\",\n      \"localized\": \"lista\",\n      \"reload\": \"\",\n      \"hint\": \"lista\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"list model details\",\n      \"localized\": \"listar detalhes do modelo\",\n      \"reload\": \"\",\n      \"hint\": \"listar detalhes do modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lite\",\n      \"localized\": \"leve\",\n      \"reload\": \"\",\n      \"hint\": \"leve\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"live update\",\n      \"localized\": \"atualização em tempo real\",\n      \"reload\": \"\",\n      \"hint\": \"atualização em tempo real\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lmsd\",\n      \"localized\": \"lmsd\",\n      \"reload\": \"\",\n      \"hint\": \"lmsd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"load custom diffusers pipeline\",\n      \"localized\": \"carregar pipeline de diffusers personalizado\",\n      \"reload\": \"\",\n      \"hint\": \"carregar pipeline de diffusers personalizado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"load model directly to gpu\",\n      \"localized\": \"carregar modelo diretamente para gpu\",\n      \"reload\": \"\",\n      \"hint\": \"carregar modelo diretamente para gpu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"loaded lora\",\n      \"localized\": \"lora carregado\",\n      \"reload\": \"\",\n      \"hint\": \"lora carregado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"logsnr\",\n      \"localized\": \"logsnr\",\n      \"reload\": \"\",\n      \"hint\": \"logsnr\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"loop\",\n      \"localized\": \"ciclo\",\n      \"reload\": \"\",\n      \"hint\": \"ciclo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora add hash info to metadata\",\n      \"localized\": \"lora: adicionar informações de hash aos metadados\",\n      \"reload\": \"\",\n      \"hint\": \"lora: adicionar informações de hash aos metadados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora auto-apply tags\",\n      \"localized\": \"lora: aplicar tags automaticamente\",\n      \"reload\": \"\",\n      \"hint\": \"lora: aplicar tags automaticamente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora load using diffusers method for selected models\",\n      \"localized\": \"carregar lora usando método diffusers para modelos selecionados\",\n      \"reload\": \"\",\n      \"hint\": \"carregar lora usando método diffusers para modelos selecionados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora load using legacy method\",\n      \"localized\": \"carregar lora usando método legado\",\n      \"reload\": \"\",\n      \"hint\": \"carregar lora usando método legado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora target filename\",\n      \"localized\": \"nome de arquivo de destino lora\",\n      \"reload\": \"\",\n      \"hint\": \"nome de arquivo de destino lora\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"low order\",\n      \"localized\": \"baixa ordem\",\n      \"reload\": \"\",\n      \"hint\": \"baixa ordem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"low threshold\",\n      \"localized\": \"limiar baixo\",\n      \"reload\": \"\",\n      \"hint\": \"limiar baixo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ltx model\",\n      \"localized\": \"modelo ltx\",\n      \"reload\": \"\",\n      \"hint\": \"modelo ltx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lumina: use mask in transformers\",\n      \"localized\": \"lumina: usar máscara em transformadores\",\n      \"reload\": \"\",\n      \"hint\": \"lumina: usar máscara em transformadores\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"manual block merge\",\n      \"localized\": \"fusão manual de blocos\",\n      \"reload\": \"\",\n      \"hint\": \"fusão manual de blocos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"marigold depth\",\n      \"localized\": \"profundidade marigold\",\n      \"reload\": \"\",\n      \"hint\": \"profundidade marigold\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask dropout\",\n      \"localized\": \"descarte de máscara\",\n      \"reload\": \"\",\n      \"hint\": \"descarte de máscara\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask invert\",\n      \"localized\": \"inverter máscara\",\n      \"reload\": \"\",\n      \"hint\": \"inverter máscara\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask only\",\n      \"localized\": \"apenas máscara\",\n      \"reload\": \"\",\n      \"hint\": \"apenas máscara\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask strength\",\n      \"localized\": \"força da máscara\",\n      \"reload\": \"\",\n      \"hint\": \"força da máscara\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"masked\",\n      \"localized\": \"mascarado\",\n      \"reload\": \"\",\n      \"hint\": \"mascarado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"math attention\",\n      \"localized\": \"atenção matemática\",\n      \"reload\": \"\",\n      \"hint\": \"atenção matemática\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max faces\",\n      \"localized\": \"máximo de rostos\",\n      \"reload\": \"\",\n      \"hint\": \"máximo de rostos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max flavors\",\n      \"localized\": \"máximo de sabores\",\n      \"reload\": \"\",\n      \"hint\": \"máximo de sabores\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max guidance\",\n      \"localized\": \"guiamento máximo\",\n      \"reload\": \"\",\n      \"hint\": \"guiamento máximo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max length\",\n      \"localized\": \"comprimento máximo\",\n      \"reload\": \"\",\n      \"hint\": \"comprimento máximo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max object size\",\n      \"localized\": \"tamanho máximo do objeto\",\n      \"reload\": \"\",\n      \"hint\": \"tamanho máximo do objeto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max range\",\n      \"localized\": \"alcance máximo\",\n      \"reload\": \"\",\n      \"hint\": \"alcance máximo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max tokens\",\n      \"localized\": \"máximo de tokens\",\n      \"reload\": \"\",\n      \"hint\": \"máximo de tokens\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max words\",\n      \"localized\": \"máximo de palavras\",\n      \"reload\": \"\",\n      \"hint\": \"máximo de palavras\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max-autotune\",\n      \"localized\": \"auto-ajuste máximo\",\n      \"reload\": \"\",\n      \"hint\": \"auto-ajuste máximo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max-autotune-no-cudagraphs\",\n      \"localized\": \"auto-ajuste máximo - sem cudagraphs\",\n      \"reload\": \"\",\n      \"hint\": \"auto-ajuste máximo - sem cudagraphs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum image size (mp)\",\n      \"localized\": \"tamanho máximo da imagem (mp)\",\n      \"reload\": \"\",\n      \"hint\": \"tamanho máximo da imagem (mp)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum number of units\",\n      \"localized\": \"número máximo de unidades\",\n      \"reload\": \"\",\n      \"hint\": \"número máximo de unidades\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum rank\",\n      \"localized\": \"classificação máxima\",\n      \"reload\": \"\",\n      \"hint\": \"classificação máxima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mediapipe face\",\n      \"localized\": \"rosto mediapipe\",\n      \"reload\": \"\",\n      \"hint\": \"rosto mediapipe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"medium\",\n      \"localized\": \"médio\",\n      \"reload\": \"\",\n      \"hint\": \"médio\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mediums\",\n      \"localized\": \"mídias\",\n      \"reload\": \"\",\n      \"hint\": \"mídias\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory\",\n      \"localized\": \"memória\",\n      \"reload\": \"\",\n      \"hint\": \"memória\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory attention\",\n      \"localized\": \"atenção de memória\",\n      \"reload\": \"\",\n      \"hint\": \"atenção de memória\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory limit\",\n      \"localized\": \"limite de memória\",\n      \"reload\": \"\",\n      \"hint\": \"limite de memória\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory optimization\",\n      \"localized\": \"otimização de memória\",\n      \"reload\": \"\",\n      \"hint\": \"otimização de memória\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"merge alpha\",\n      \"localized\": \"mesclar alfa\",\n      \"reload\": \"\",\n      \"hint\": \"mesclar alfa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method\",\n      \"localized\": \"método\",\n      \"reload\": \"\",\n      \"hint\": \"método\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method after\",\n      \"localized\": \"método depois\",\n      \"reload\": \"\",\n      \"hint\": \"método depois\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method before\",\n      \"localized\": \"método antes\",\n      \"reload\": \"\",\n      \"hint\": \"método antes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method mask\",\n      \"localized\": \"máscara de método\",\n      \"reload\": \"\",\n      \"hint\": \"máscara de método\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"midas depth\",\n      \"localized\": \"profundidade midas\",\n      \"reload\": \"\",\n      \"hint\": \"profundidade midas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"migraphx\",\n      \"localized\": \"migraphx\",\n      \"reload\": \"\",\n      \"hint\": \"migraphx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min flavors\",\n      \"localized\": \"mínimo de sabores\",\n      \"reload\": \"\",\n      \"hint\": \"mínimo de sabores\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min guidance\",\n      \"localized\": \"orientação mínima\",\n      \"reload\": \"\",\n      \"hint\": \"orientação mínima\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min length\",\n      \"localized\": \"comprimento mínimo\",\n      \"reload\": \"\",\n      \"hint\": \"comprimento mínimo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min object size\",\n      \"localized\": \"tamanho mínimo do objeto\",\n      \"reload\": \"\",\n      \"hint\": \"tamanho mínimo do objeto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mine\",\n      \"localized\": \"minerar\",\n      \"reload\": \"\",\n      \"hint\": \"minerar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mlsd\",\n      \"localized\": \"mlsd\",\n      \"reload\": \"\",\n      \"hint\": \"mlsd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mm\",\n      \"localized\": \"mm\",\n      \"reload\": \"\",\n      \"hint\": \"mm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode\",\n      \"localized\": \"modo\",\n      \"reload\": \"\",\n      \"hint\": \"modo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode after\",\n      \"localized\": \"modo depois\",\n      \"reload\": \"\",\n      \"hint\": \"modo depois\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode before\",\n      \"localized\": \"modo antes\",\n      \"reload\": \"\",\n      \"hint\": \"modo antes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode mask\",\n      \"localized\": \"máscara de modo\",\n      \"reload\": \"\",\n      \"hint\": \"máscara de modo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode x-axis\",\n      \"localized\": \"modo eixo x\",\n      \"reload\": \"\",\n      \"hint\": \"modo eixo x\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode y-axis\",\n      \"localized\": \"modo eixo y\",\n      \"reload\": \"\",\n      \"hint\": \"modo eixo y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model auto-download on demand\",\n      \"localized\": \"download automático do modelo sob demanda\",\n      \"reload\": \"\",\n      \"hint\": \"download automático do modelo sob demanda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model autoload on start\",\n      \"localized\": \"carregamento automático do modelo ao iniciar\",\n      \"reload\": \"\",\n      \"hint\": \"carregamento automático do modelo ao iniciar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model compile fullgraph\",\n      \"localized\": \"compilação de modelo gráfico completo\",\n      \"reload\": \"\",\n      \"hint\": \"compilação de modelo gráfico completo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model compile suppress errors\",\n      \"localized\": \"compilação do modelo suprimir erros\",\n      \"reload\": \"\",\n      \"hint\": \"compilação do modelo suprimir erros\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model compile verbose mode\",\n      \"localized\": \"modo verboso de compilação do modelo\",\n      \"reload\": \"\",\n      \"hint\": \"modo verboso de compilação do modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model info\",\n      \"localized\": \"informações do modelo\",\n      \"reload\": \"\",\n      \"hint\": \"informações do modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model metadata\",\n      \"localized\": \"metadados do modelo\",\n      \"reload\": \"\",\n      \"hint\": \"metadados do modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model name\",\n      \"localized\": \"nome do modelo\",\n      \"reload\": \"\",\n      \"hint\": \"nome do modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model precision\",\n      \"localized\": \"precisão do modelo\",\n      \"reload\": \"\",\n      \"hint\": \"precisão do modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model type\",\n      \"localized\": \"tipo de modelo\",\n      \"reload\": \"\",\n      \"hint\": \"tipo de modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model url\",\n      \"localized\": \"url do modelo\",\n      \"reload\": \"\",\n      \"hint\": \"url do modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"modern\",\n      \"localized\": \"moderno\",\n      \"reload\": \"\",\n      \"hint\": \"moderno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"momentum\",\n      \"localized\": \"momento\",\n      \"reload\": \"\",\n      \"hint\": \"momento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"motion level\",\n      \"localized\": \"nível de movimento\",\n      \"reload\": \"\",\n      \"hint\": \"nível de movimento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mount url subpath\",\n      \"localized\": \"montar subcaminho url\",\n      \"reload\": \"\",\n      \"hint\": \"montar subcaminho url\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move base model to cpu when using refiner\",\n      \"localized\": \"mover modelo base para cpu ao usar refinador\",\n      \"reload\": \"\",\n      \"hint\": \"mover modelo base para cpu ao usar refinador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move base model to cpu when using vae\",\n      \"localized\": \"mover modelo base para cpu ao usar vae\",\n      \"reload\": \"\",\n      \"hint\": \"mover modelo base para cpu ao usar vae\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move detailer model to cpu when complete\",\n      \"localized\": \"mover modelo de detalhamento para cpu quando completo\",\n      \"reload\": \"\",\n      \"hint\": \"mover modelo de detalhamento para cpu quando completo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move refiner model to cpu when not in use\",\n      \"localized\": \"mover modelo refinador para cpu quando não estiver em uso\",\n      \"reload\": \"\",\n      \"hint\": \"mover modelo refinador para cpu quando não estiver em uso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"movements\",\n      \"localized\": \"movimentos\",\n      \"reload\": \"\",\n      \"hint\": \"movimentos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"multi decoder\",\n      \"localized\": \"multidecodificador\",\n      \"reload\": \"\",\n      \"hint\": \"multidecodificador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"multistep restore\",\n      \"localized\": \"restauração multi-passos\",\n      \"reload\": \"\",\n      \"hint\": \"restauração multi-passos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"native\",\n      \"localized\": \"nativo\",\n      \"reload\": \"\",\n      \"hint\": \"nativo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"near threshold\",\n      \"localized\": \"próximo ao limiar\",\n      \"reload\": \"\",\n      \"hint\": \"próximo ao limiar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"negative\",\n      \"localized\": \"negativo\",\n      \"reload\": \"\",\n      \"hint\": \"negativo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"network negative prompt\",\n      \"localized\": \"prompt negativo de rede\",\n      \"reload\": \"\",\n      \"hint\": \"prompt negativo de rede\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"network parameters\",\n      \"localized\": \"parâmetros de rede\",\n      \"reload\": \"\",\n      \"hint\": \"parâmetros de rede\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"network prompt\",\n      \"localized\": \"prompt de rede\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de rede\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"new model name\",\n      \"localized\": \"novo nome do modelo\",\n      \"reload\": \"\",\n      \"hint\": \"novo nome do modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"nf4\",\n      \"localized\": \"nf4\",\n      \"reload\": \"\",\n      \"hint\": \"nf4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"nms\",\n      \"localized\": \"nms\",\n      \"reload\": \"\",\n      \"hint\": \"nms\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise\",\n      \"localized\": \"ruído\",\n      \"reload\": \"\",\n      \"hint\": \"ruído\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise multiplier (eta)\",\n      \"localized\": \"multiplicador de ruído (eta)\",\n      \"reload\": \"\",\n      \"hint\": \"multiplicador de ruído (eta)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise multiplier for image processing\",\n      \"localized\": \"multiplicador de ruído para processamento de imagem\",\n      \"reload\": \"\",\n      \"hint\": \"multiplicador de ruído para processamento de imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise seed delta (eta)\",\n      \"localized\": \"delta da semente de ruído (eta)\",\n      \"reload\": \"\",\n      \"hint\": \"delta da semente de ruído (eta)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise strength\",\n      \"localized\": \"força do ruído\",\n      \"reload\": \"\",\n      \"hint\": \"força do ruído\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"none\",\n      \"localized\": \"nenhum\",\n      \"reload\": \"\",\n      \"hint\": \"nenhum\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"note\",\n      \"localized\": \"nota\",\n      \"reload\": \"\",\n      \"hint\": \"nota\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"nothing\",\n      \"localized\": \"nada\",\n      \"reload\": \"\",\n      \"hint\": \"nada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"num beams\",\n      \"localized\": \"número de feixes\",\n      \"reload\": \"\",\n      \"hint\": \"número de feixes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"number\",\n      \"localized\": \"número\",\n      \"reload\": \"\",\n      \"hint\": \"número\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"numbered filenames\",\n      \"localized\": \"nomes de arquivo numerados\",\n      \"reload\": \"\",\n      \"hint\": \"nomes de arquivo numerados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"offload\",\n      \"localized\": \"descarregar\",\n      \"reload\": \"\",\n      \"hint\": \"descarregar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"offload face module\",\n      \"localized\": \"descarregar módulo de face\",\n      \"reload\": \"\",\n      \"hint\": \"descarregar módulo de face\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"offload models\",\n      \"localized\": \"descarregar modelos\",\n      \"reload\": \"\",\n      \"hint\": \"descarregar modelos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"olive-ai\",\n      \"localized\": \"olive-ai\",\n      \"reload\": \"\",\n      \"hint\": \"olive-ai\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"onediff\",\n      \"localized\": \"onediff\",\n      \"reload\": \"\",\n      \"hint\": \"onediff\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"onnx\",\n      \"localized\": \"onnx\",\n      \"reload\": \"\",\n      \"hint\": \"onnx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openbody\",\n      \"localized\": \"openbody\",\n      \"reload\": \"\",\n      \"hint\": \"openbody\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openclip\",\n      \"localized\": \"openclip\",\n      \"reload\": \"\",\n      \"hint\": \"openclip\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino disable memory cleanup after compile\",\n      \"localized\": \"openvino desativar limpeza de memória após compilação\",\n      \"reload\": \"\",\n      \"hint\": \"openvino desativar limpeza de memória após compilação\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino disable model caching\",\n      \"localized\": \"openvino desativar cache de modelo\",\n      \"reload\": \"\",\n      \"hint\": \"openvino desativar cache de modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino mode\",\n      \"localized\": \"modo openvino\",\n      \"reload\": \"\",\n      \"hint\": \"modo openvino\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino_fx\",\n      \"localized\": \"openvino_fx\",\n      \"reload\": \"\",\n      \"hint\": \"openvino_fx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"optional image description\",\n      \"localized\": \"descrição opcional da imagem\",\n      \"reload\": \"\",\n      \"hint\": \"descrição opcional da imagem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"optional init image or video\",\n      \"localized\": \"imagem ou vídeo inicial opcional\",\n      \"reload\": \"\",\n      \"hint\": \"imagem ou vídeo inicial opcional\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"order\",\n      \"localized\": \"ordem\",\n      \"reload\": \"\",\n      \"hint\": \"ordem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ortho\",\n      \"localized\": \"orto\",\n      \"reload\": \"\",\n      \"hint\": \"orto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"outpaint\",\n      \"localized\": \"expansão de pintura\",\n      \"reload\": \"\",\n      \"hint\": \"expansão de pintura\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"output model\",\n      \"localized\": \"modelo de saída\",\n      \"reload\": \"\",\n      \"hint\": \"modelo de saída\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override resolution\",\n      \"localized\": \"substituir resolução\",\n      \"reload\": \"\",\n      \"hint\": \"substituir resolução\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override sampler\",\n      \"localized\": \"substituir amostrador\",\n      \"reload\": \"\",\n      \"hint\": \"substituir amostrador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override scheduler\",\n      \"localized\": \"substituir agendador\",\n      \"reload\": \"\",\n      \"hint\": \"substituir agendador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override steps\",\n      \"localized\": \"substituir passos\",\n      \"reload\": \"\",\n      \"hint\": \"substituir passos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override t1 ratio\",\n      \"localized\": \"substituir razão t1\",\n      \"reload\": \"\",\n      \"hint\": \"substituir razão t1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override t2 ratio\",\n      \"localized\": \"substituir razão t2\",\n      \"reload\": \"\",\n      \"hint\": \"substituir razão t2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"overwrite existing file\",\n      \"localized\": \"sobrescrever arquivo existente\",\n      \"reload\": \"\",\n      \"hint\": \"sobrescrever arquivo existente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"overwrite model\",\n      \"localized\": \"sobrescrever modelo\",\n      \"reload\": \"\",\n      \"hint\": \"sobrescrever modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pad frames\",\n      \"localized\": \"preencher quadros\",\n      \"reload\": \"\",\n      \"hint\": \"preencher quadros\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"padding\",\n      \"localized\": \"preenchimento\",\n      \"reload\": \"\",\n      \"hint\": \"preenchimento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"parallel process images in batch\",\n      \"localized\": \"processar imagens em lote paralelamente\",\n      \"reload\": \"\",\n      \"hint\": \"processar imagens em lote paralelamente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"parameter free\",\n      \"localized\": \"livre de parâmetros\",\n      \"reload\": \"\",\n      \"hint\": \"livre de parâmetros\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"path to model file\",\n      \"localized\": \"caminho para o arquivo do modelo\",\n      \"reload\": \"\",\n      \"hint\": \"caminho para o arquivo do modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"path to notification sound\",\n      \"localized\": \"caminho para o som de notificação\",\n      \"reload\": \"\",\n      \"hint\": \"caminho para o som de notificação\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"peft\",\n      \"localized\": \"peft\",\n      \"reload\": \"\",\n      \"hint\": \"peft\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"penalty\",\n      \"localized\": \"penalidade\",\n      \"reload\": \"\",\n      \"hint\": \"penalidade\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perflow\",\n      \"localized\": \"perflow\",\n      \"reload\": \"\",\n      \"hint\": \"perflow\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perform injection\",\n      \"localized\": \"realizar injeção\",\n      \"reload\": \"\",\n      \"hint\": \"realizar injeção\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perform sdsa\",\n      \"localized\": \"realizar sdsa\",\n      \"reload\": \"\",\n      \"hint\": \"realizar sdsa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perform warmup\",\n      \"localized\": \"realizar aquecimento\",\n      \"reload\": \"\",\n      \"hint\": \"realizar aquecimento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"performance\",\n      \"localized\": \"desempenho\",\n      \"reload\": \"\",\n      \"hint\": \"desempenho\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"photomaker model\",\n      \"localized\": \"modelo photomaker\",\n      \"reload\": \"\",\n      \"hint\": \"modelo photomaker\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pidinet\",\n      \"localized\": \"pidinet\",\n      \"reload\": \"\",\n      \"hint\": \"pidinet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pipeline\",\n      \"localized\": \"pipeline\",\n      \"reload\": \"\",\n      \"hint\": \"pipeline\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pixels to expand\",\n      \"localized\": \"pixels a expandir\",\n      \"reload\": \"\",\n      \"hint\": \"pixels a expandir\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"platform\",\n      \"localized\": \"plataforma\",\n      \"reload\": \"\",\n      \"hint\": \"plataforma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"play\",\n      \"localized\": \"jogar\",\n      \"reload\": \"\",\n      \"hint\": \"jogar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"play a notification upon completion\",\n      \"localized\": \"reproduzir uma notificação ao concluir\",\n      \"reload\": \"\",\n      \"hint\": \"reproduzir uma notificação ao concluir\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pndm\",\n      \"localized\": \"pndm\",\n      \"reload\": \"\",\n      \"hint\": \"pndm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"polyexponential\",\n      \"localized\": \"poliexponencial\",\n      \"reload\": \"\",\n      \"hint\": \"poliexponencial\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pony\",\n      \"localized\": \"pony\",\n      \"reload\": \"\",\n      \"hint\": \"pony\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pose confidence\",\n      \"localized\": \"confiança da pose\",\n      \"reload\": \"\",\n      \"hint\": \"confiança da pose\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"positive\",\n      \"localized\": \"positivo\",\n      \"reload\": \"\",\n      \"hint\": \"positivo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocess mask\",\n      \"localized\": \"máscara de pós-processamento\",\n      \"reload\": \"\",\n      \"hint\": \"máscara de pós-processamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocess upscale\",\n      \"localized\": \"upscale de pós-processamento\",\n      \"reload\": \"\",\n      \"hint\": \"upscale de pós-processamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocessing operation order\",\n      \"localized\": \"ordem de operação de pós-processamento\",\n      \"reload\": \"\",\n      \"hint\": \"ordem de operação de pós-processamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"power\",\n      \"localized\": \"potência\",\n      \"reload\": \"\",\n      \"hint\": \"potência\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"predefined question\",\n      \"localized\": \"pergunta predefinida\",\n      \"reload\": \"\",\n      \"hint\": \"pergunta predefinida\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prediction method\",\n      \"localized\": \"método de previsão\",\n      \"reload\": \"\",\n      \"hint\": \"método de previsão\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preset\",\n      \"localized\": \"predefinição\",\n      \"reload\": \"\",\n      \"hint\": \"predefinição\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preset block merge\",\n      \"localized\": \"fusão de bloco predefinida\",\n      \"reload\": \"\",\n      \"hint\": \"fusão de bloco predefinida\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview\",\n      \"localized\": \"pré-visualização\",\n      \"reload\": \"\",\n      \"hint\": \"pré-visualização\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview end\",\n      \"localized\": \"fim da pré-visualização\",\n      \"reload\": \"\",\n      \"hint\": \"fim da pré-visualização\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview start\",\n      \"localized\": \"início da pré-visualização\",\n      \"reload\": \"\",\n      \"hint\": \"início da pré-visualização\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"primary model\",\n      \"localized\": \"modelo primário\",\n      \"reload\": \"\",\n      \"hint\": \"modelo primário\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor\",\n      \"localized\": \"processador\",\n      \"reload\": \"\",\n      \"hint\": \"processador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor move to cpu after use\",\n      \"localized\": \"mover processador para cpu após uso\",\n      \"reload\": \"\",\n      \"hint\": \"mover processador para cpu após uso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor settings\",\n      \"localized\": \"configurações do processador\",\n      \"reload\": \"\",\n      \"hint\": \"configurações do processador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor unload after use\",\n      \"localized\": \"descarregar processador após uso\",\n      \"reload\": \"\",\n      \"hint\": \"descarregar processador após uso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt attention normalization\",\n      \"localized\": \"normalização da atenção do prompt\",\n      \"reload\": \"\",\n      \"hint\": \"normalização da atenção do prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt ex\",\n      \"localized\": \"prompt ex\",\n      \"reload\": \"\",\n      \"hint\": \"prompt ex\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt processor\",\n      \"localized\": \"processador de prompt\",\n      \"reload\": \"\",\n      \"hint\": \"processador de prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt strength\",\n      \"localized\": \"força do prompt\",\n      \"reload\": \"\",\n      \"hint\": \"força do prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt thresholds:\",\n      \"localized\": \"limites do prompt:\",\n      \"reload\": \"\",\n      \"hint\": \"limites do prompt:\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompts\",\n      \"localized\": \"prompts\",\n      \"reload\": \"\",\n      \"hint\": \"prompts\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"provider\",\n      \"localized\": \"provedor\",\n      \"reload\": \"\",\n      \"hint\": \"provedor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prune\",\n      \"localized\": \"podar\",\n      \"reload\": \"\",\n      \"hint\": \"podar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quad\",\n      \"localized\": \"quadro\",\n      \"reload\": \"\",\n      \"hint\": \"quadro\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization activations type\",\n      \"localized\": \"tipo de ativações de quantização\",\n      \"reload\": \"\",\n      \"hint\": \"tipo de ativações de quantização\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization mode\",\n      \"localized\": \"modo de quantização\",\n      \"reload\": \"\",\n      \"hint\": \"modo de quantização\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization type\",\n      \"localized\": \"tipo de quantização\",\n      \"reload\": \"\",\n      \"hint\": \"tipo de quantização\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization weights type\",\n      \"localized\": \"tipo de pesos de quantização\",\n      \"reload\": \"\",\n      \"hint\": \"tipo de pesos de quantização\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"random seeds\",\n      \"localized\": \"sementes aleatórias\",\n      \"reload\": \"\",\n      \"hint\": \"sementes aleatórias\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"range\",\n      \"localized\": \"intervalo\",\n      \"reload\": \"\",\n      \"hint\": \"intervalo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rebase\",\n      \"localized\": \"rebase\",\n      \"reload\": \"\",\n      \"hint\": \"rebase\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"recursive\",\n      \"localized\": \"recursivo\",\n      \"reload\": \"\",\n      \"hint\": \"recursivo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reduce-overhead\",\n      \"localized\": \"reduzir sobrecarga\",\n      \"reload\": \"\",\n      \"hint\": \"reduzir sobrecarga\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"redux prompt strength\",\n      \"localized\": \"força do prompt redux\",\n      \"reload\": \"\",\n      \"hint\": \"força do prompt redux\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference adain weight\",\n      \"localized\": \"peso adain de referência\",\n      \"reload\": \"\",\n      \"hint\": \"peso adain de referência\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference query weight\",\n      \"localized\": \"peso de consulta de referência\",\n      \"reload\": \"\",\n      \"hint\": \"peso de consulta de referência\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference unit 1\",\n      \"localized\": \"unidade de referência 1\",\n      \"reload\": \"\",\n      \"hint\": \"unidade de referência 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refine foreground\",\n      \"localized\": \"refinar primeiro plano\",\n      \"reload\": \"\",\n      \"hint\": \"refinar primeiro plano\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh bench\",\n      \"localized\": \"atualizar benchmark\",\n      \"reload\": \"\",\n      \"hint\": \"atualizar benchmark\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh data\",\n      \"localized\": \"atualizar dados\",\n      \"reload\": \"\",\n      \"hint\": \"atualizar dados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh state\",\n      \"localized\": \"atualizar estado\",\n      \"reload\": \"\",\n      \"hint\": \"atualizar estado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh ui values\",\n      \"localized\": \"atualizar valores da interface do usuário\",\n      \"reload\": \"\",\n      \"hint\": \"atualizar valores da interface do usuário\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reinstall\",\n      \"localized\": \"reinstalar\",\n      \"reload\": \"\",\n      \"hint\": \"reinstalar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"remove background\",\n      \"localized\": \"remover plano de fundo\",\n      \"reload\": \"\",\n      \"hint\": \"remover plano de fundo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repeat x-axis\",\n      \"localized\": \"repetir eixo x\",\n      \"reload\": \"\",\n      \"hint\": \"repetir eixo x\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repeat y-axis\",\n      \"localized\": \"repetir eixo y\",\n      \"reload\": \"\",\n      \"hint\": \"repetir eixo y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"replace vae\",\n      \"localized\": \"substituir vae\",\n      \"reload\": \"\",\n      \"hint\": \"substituir vae\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repos\",\n      \"localized\": \"repositórios\",\n      \"reload\": \"\",\n      \"hint\": \"repositórios\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess decode\",\n      \"localized\": \"decodificação de reprocessamento\",\n      \"reload\": \"\",\n      \"hint\": \"decodificação de reprocessamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess face\",\n      \"localized\": \"reprocessar face\",\n      \"reload\": \"\",\n      \"hint\": \"reprocessar face\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess refine\",\n      \"localized\": \"refinar reprocessamento\",\n      \"reload\": \"\",\n      \"hint\": \"refinar reprocessamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"request browser notifications\",\n      \"localized\": \"solicitar notificações do navegador\",\n      \"reload\": \"\",\n      \"hint\": \"solicitar notificações do navegador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rescale\",\n      \"localized\": \"reescalar\",\n      \"reload\": \"\",\n      \"hint\": \"reescalar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rescale betas with zero terminal snr\",\n      \"localized\": \"reescalar betas com snr terminal zero\",\n      \"reload\": \"\",\n      \"hint\": \"reescalar betas com snr terminal zero\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reset anchors\",\n      \"localized\": \"redefinir âncoras\",\n      \"reload\": \"\",\n      \"hint\": \"redefinir âncoras\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"residual diff threshold\",\n      \"localized\": \"limiar de diferença residual\",\n      \"reload\": \"\",\n      \"hint\": \"limiar de diferença residual\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize background color\",\n      \"localized\": \"redimensionar cor de fundo\",\n      \"reload\": \"\",\n      \"hint\": \"redimensionar cor de fundo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize method\",\n      \"localized\": \"método de redimensionamento\",\n      \"reload\": \"\",\n      \"hint\": \"método de redimensionamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize mode\",\n      \"localized\": \"modo de redimensionamento\",\n      \"reload\": \"\",\n      \"hint\": \"modo de redimensionamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize scale\",\n      \"localized\": \"escala de redimensionamento\",\n      \"reload\": \"\",\n      \"hint\": \"escala de redimensionamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restart step\",\n      \"localized\": \"reiniciar etapa\",\n      \"reload\": \"\",\n      \"hint\": \"reiniciar etapa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore faces: codeformer\",\n      \"localized\": \"restaurar rostos: codeformer\",\n      \"reload\": \"\",\n      \"hint\": \"restaurar rostos: codeformer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore faces: gfpgan\",\n      \"localized\": \"restaurar rostos: gfpgan\",\n      \"reload\": \"\",\n      \"hint\": \"restaurar rostos: gfpgan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore pipe on end\",\n      \"localized\": \"restaurar pipe no final\",\n      \"reload\": \"\",\n      \"hint\": \"restaurar pipe no final\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore unparsed prompt\",\n      \"localized\": \"restaurar prompt não analisado\",\n      \"reload\": \"\",\n      \"hint\": \"restaurar prompt não analisado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reswapper model\",\n      \"localized\": \"modelo reswapper\",\n      \"reload\": \"\",\n      \"hint\": \"modelo reswapper\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"return original images\",\n      \"localized\": \"retornar imagens originais\",\n      \"reload\": \"\",\n      \"hint\": \"retornar imagens originais\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"right\",\n      \"localized\": \"direita\",\n      \"reload\": \"\",\n      \"hint\": \"direita\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"root model folder\",\n      \"localized\": \"pasta raiz do modelo\",\n      \"reload\": \"\",\n      \"hint\": \"pasta raiz do modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rows\",\n      \"localized\": \"linhas\",\n      \"reload\": \"\",\n      \"hint\": \"linhas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"run\",\n      \"localized\": \"executar\",\n      \"reload\": \"\",\n      \"hint\": \"executar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"run benchmark\",\n      \"localized\": \"executar benchmark\",\n      \"reload\": \"\",\n      \"hint\": \"executar benchmark\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sa solver\",\n      \"localized\": \"resolvedor sa\",\n      \"reload\": \"\",\n      \"hint\": \"resolvedor sa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"safetensors\",\n      \"localized\": \"safetensors\",\n      \"reload\": \"\",\n      \"hint\": \"safetensors\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sage attention\",\n      \"localized\": \"atenção sage\",\n      \"reload\": \"\",\n      \"hint\": \"atenção sage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"same as primary\",\n      \"localized\": \"igual ao primário\",\n      \"reload\": \"\",\n      \"hint\": \"igual ao primário\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"same latent\",\n      \"localized\": \"latente igual\",\n      \"reload\": \"\",\n      \"hint\": \"latente igual\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sample\",\n      \"localized\": \"amostra\",\n      \"reload\": \"\",\n      \"hint\": \"amostra\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler\",\n      \"localized\": \"amostrador\",\n      \"reload\": \"\",\n      \"hint\": \"amostrador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler dynamic shift\",\n      \"localized\": \"desvio dinâmico do amostrador\",\n      \"reload\": \"\",\n      \"hint\": \"desvio dinâmico do amostrador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler order\",\n      \"localized\": \"ordem do amostrador\",\n      \"reload\": \"\",\n      \"hint\": \"ordem do amostrador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler shift\",\n      \"localized\": \"desvio do amostrador\",\n      \"reload\": \"\",\n      \"hint\": \"desvio do amostrador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sana: use complex human instructions\",\n      \"localized\": \"sana: usar instruções humanas complexas\",\n      \"reload\": \"\",\n      \"hint\": \"sana: usar instruções humanas complexas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"saturation\",\n      \"localized\": \"saturação\",\n      \"reload\": \"\",\n      \"hint\": \"saturação\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save all generated image grids\",\n      \"localized\": \"salvar todas as grades de imagem geradas\",\n      \"reload\": \"\",\n      \"hint\": \"salvar todas as grades de imagem geradas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save all generated images\",\n      \"localized\": \"salvar todas as imagens geradas\",\n      \"reload\": \"\",\n      \"hint\": \"salvar todas as imagens geradas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save caption files\",\n      \"localized\": \"salvar arquivos de legenda\",\n      \"reload\": \"\",\n      \"hint\": \"salvar arquivos de legenda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save diffusers\",\n      \"localized\": \"salvar difusores\",\n      \"reload\": \"\",\n      \"hint\": \"salvar difusores\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save hdr image\",\n      \"localized\": \"salvar imagem HDR\",\n      \"reload\": \"\",\n      \"hint\": \"salvar imagem HDR\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before color correction\",\n      \"localized\": \"salvar imagem antes da correção de cor\",\n      \"reload\": \"\",\n      \"hint\": \"salvar imagem antes da correção de cor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before detailer\",\n      \"localized\": \"salvar imagem antes do detalhador\",\n      \"reload\": \"\",\n      \"hint\": \"salvar imagem antes do detalhador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before hires\",\n      \"localized\": \"salvar imagem antes do hires\",\n      \"reload\": \"\",\n      \"hint\": \"salvar imagem antes do hires\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before refiner\",\n      \"localized\": \"salvar imagem antes do refinador\",\n      \"reload\": \"\",\n      \"hint\": \"salvar imagem antes do refinador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save images to a subdirectory\",\n      \"localized\": \"salvar imagens em um subdiretório\",\n      \"reload\": \"\",\n      \"hint\": \"salvar imagens em um subdiretório\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save init images\",\n      \"localized\": \"salvar imagens de inicialização\",\n      \"reload\": \"\",\n      \"hint\": \"salvar imagens de inicialização\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save inpainting mask\",\n      \"localized\": \"salvar máscara de inpainting\",\n      \"reload\": \"\",\n      \"hint\": \"salvar máscara de inpainting\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save inpainting masked composite\",\n      \"localized\": \"salvar composto mascarado de inpainting\",\n      \"reload\": \"\",\n      \"hint\": \"salvar composto mascarado de inpainting\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save metadata\",\n      \"localized\": \"salvar metadados\",\n      \"reload\": \"\",\n      \"hint\": \"salvar metadados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save only saves selected image\",\n      \"localized\": \"salvar apenas a imagem selecionada\",\n      \"reload\": \"\",\n      \"hint\": \"salvar apenas a imagem selecionada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save output\",\n      \"localized\": \"salvar saída\",\n      \"reload\": \"\",\n      \"hint\": \"salvar saída\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save safetensors\",\n      \"localized\": \"salvar safetensors\",\n      \"reload\": \"\",\n      \"hint\": \"salvar safetensors\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save unparsed prompt\",\n      \"localized\": \"salvar prompt não analisado\",\n      \"reload\": \"\",\n      \"hint\": \"salvar prompt não analisado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale after\",\n      \"localized\": \"escalar depois\",\n      \"reload\": \"\",\n      \"hint\": \"escalar depois\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale before\",\n      \"localized\": \"escalar antes\",\n      \"reload\": \"\",\n      \"hint\": \"escalar antes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale mask\",\n      \"localized\": \"escalar máscara\",\n      \"reload\": \"\",\n      \"hint\": \"escalar máscara\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale factor\",\n      \"localized\": \"fator de escala\",\n      \"reload\": \"\",\n      \"hint\": \"fator de escala\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"score\",\n      \"localized\": \"pontuação\",\n      \"reload\": \"\",\n      \"hint\": \"pontuação\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"score threshold\",\n      \"localized\": \"limite de pontuação\",\n      \"reload\": \"\",\n      \"hint\": \"limite de pontuação\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scribble\",\n      \"localized\": \"rabisco\",\n      \"reload\": \"\",\n      \"hint\": \"rabisco\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-attire\",\n      \"localized\": \"sd15-traje\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-traje\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-likeness\",\n      \"localized\": \"sd15-semelhança\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-semelhança\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-navimixu\",\n      \"localized\": \"sd15-navimixu\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-navimixu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-sexy\",\n      \"localized\": \"sd15-sexy\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-sexy\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-artstyle\",\n      \"localized\": \"sdxl-estilo de arte\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-estilo de arte\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-negative\",\n      \"localized\": \"sdxl-negativo\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-negativo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-sexy\",\n      \"localized\": \"sdxl-sexy\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-sexy\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-sliders\",\n      \"localized\": \"sdxl-controles deslizantes\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-controles deslizantes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-toon\",\n      \"localized\": \"sdxl-desenho animado\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-desenho animado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl: use weighted pooled embeds\",\n      \"localized\": \"sdxl: usar embeds agrupados ponderados\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl: usar embeds agrupados ponderados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search changelog\",\n      \"localized\": \"pesquisar registro de alterações\",\n      \"reload\": \"\",\n      \"hint\": \"pesquisar registro de alterações\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search models\",\n      \"localized\": \"pesquisar modelos\",\n      \"reload\": \"\",\n      \"hint\": \"pesquisar modelos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search wiki pages\",\n      \"localized\": \"pesquisar páginas wiki\",\n      \"reload\": \"\",\n      \"hint\": \"pesquisar páginas wiki\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"secondary model\",\n      \"localized\": \"modelo secundário\",\n      \"reload\": \"\",\n      \"hint\": \"modelo secundário\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"segmentanything\",\n      \"localized\": \"segmentanything\",\n      \"reload\": \"\",\n      \"hint\": \"segmentanything\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"select\",\n      \"localized\": \"selecionar\",\n      \"reload\": \"\",\n      \"hint\": \"selecionar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"select model\",\n      \"localized\": \"selecionar modelo\",\n      \"reload\": \"\",\n      \"hint\": \"selecionar modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send interrupt\",\n      \"localized\": \"enviar interrupção\",\n      \"reload\": \"\",\n      \"hint\": \"enviar interrupção\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send seed when sending prompt or image to other interface\",\n      \"localized\": \"enviar seed ao enviar prompt ou imagem para outra interface\",\n      \"reload\": \"\",\n      \"hint\": \"enviar seed ao enviar prompt ou imagem para outra interface\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send size when sending prompt or image to another interface\",\n      \"localized\": \"enviar tamanho ao enviar prompt ou imagem para outra interface\",\n      \"reload\": \"\",\n      \"hint\": \"enviar tamanho ao enviar prompt ou imagem para outra interface\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sequential\",\n      \"localized\": \"sequencial\",\n      \"reload\": \"\",\n      \"hint\": \"sequencial\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"server start time\",\n      \"localized\": \"hora de início do servidor\",\n      \"reload\": \"\",\n      \"hint\": \"hora de início do servidor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"set at prompt start\",\n      \"localized\": \"definir no início do prompt\",\n      \"reload\": \"\",\n      \"hint\": \"definir no início do prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"set ui menu states\",\n      \"localized\": \"definir estados do menu da UI\",\n      \"reload\": \"\",\n      \"hint\": \"definir estados do menu da UI\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"share queries\",\n      \"localized\": \"compartilhar consultas\",\n      \"reload\": \"\",\n      \"hint\": \"compartilhar consultas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shared options\",\n      \"localized\": \"opções compartilhadas\",\n      \"reload\": \"\",\n      \"hint\": \"opções compartilhadas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sharpen\",\n      \"localized\": \"nitidez\",\n      \"reload\": \"\",\n      \"hint\": \"nitidez\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shift\",\n      \"localized\": \"deslocamento\",\n      \"reload\": \"\",\n      \"hint\": \"deslocamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show grid in results\",\n      \"localized\": \"mostrar grade nos resultados\",\n      \"reload\": \"\",\n      \"hint\": \"mostrar grade nos resultados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show input\",\n      \"localized\": \"mostrar entrada\",\n      \"reload\": \"\",\n      \"hint\": \"mostrar entrada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show metadata in full screen image browser\",\n      \"localized\": \"mostrar metadados no navegador de imagens em tela cheia\",\n      \"reload\": \"\",\n      \"hint\": \"mostrar metadados no navegador de imagens em tela cheia\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show motd\",\n      \"localized\": \"mostrar motd\",\n      \"reload\": \"\",\n      \"hint\": \"mostrar motd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show preview\",\n      \"localized\": \"mostrar prévia\",\n      \"reload\": \"\",\n      \"hint\": \"mostrar prévia\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shuffle weights\",\n      \"localized\": \"embaralhar pesos\",\n      \"reload\": \"\",\n      \"hint\": \"embaralhar pesos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma\",\n      \"localized\": \"sigma\",\n      \"reload\": \"\",\n      \"hint\": \"sigma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma churn\",\n      \"localized\": \"sigma churn\",\n      \"reload\": \"\",\n      \"hint\": \"sigma churn\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma max\",\n      \"localized\": \"sigma máximo\",\n      \"reload\": \"\",\n      \"hint\": \"sigma máximo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma method\",\n      \"localized\": \"método sigma\",\n      \"reload\": \"\",\n      \"hint\": \"método sigma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma min\",\n      \"localized\": \"sigma mínimo\",\n      \"reload\": \"\",\n      \"hint\": \"sigma mínimo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma noise\",\n      \"localized\": \"ruído sigma\",\n      \"reload\": \"\",\n      \"hint\": \"ruído sigma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma tmin\",\n      \"localized\": \"sigma tmin\",\n      \"reload\": \"\",\n      \"hint\": \"sigma tmin\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"simple merge\",\n      \"localized\": \"fusão simples\",\n      \"reload\": \"\",\n      \"hint\": \"fusão simples\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"size\",\n      \"localized\": \"tamanho\",\n      \"reload\": \"\",\n      \"hint\": \"tamanho\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sketch\",\n      \"localized\": \"esboço\",\n      \"reload\": \"\",\n      \"hint\": \"esboço\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip generation if nan found in latents\",\n      \"localized\": \"pular geração se NaN for encontrado nos latentes\",\n      \"reload\": \"\",\n      \"hint\": \"pular geração se NaN for encontrado nos latentes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip guidance layers\",\n      \"localized\": \"pular camadas de orientação\",\n      \"reload\": \"\",\n      \"hint\": \"pular camadas de orientação\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip input frames\",\n      \"localized\": \"pular quadros de entrada\",\n      \"reload\": \"\",\n      \"hint\": \"pular quadros de entrada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"slider\",\n      \"localized\": \"controle deslizante\",\n      \"reload\": \"\",\n      \"hint\": \"controle deslizante\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"smooth mask\",\n      \"localized\": \"máscara suave\",\n      \"reload\": \"\",\n      \"hint\": \"máscara suave\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"solver order (where\",\n      \"localized\": \"ordem do solver (onde\",\n      \"reload\": \"\",\n      \"hint\": \"ordem do solver (onde\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sort order\",\n      \"localized\": \"ordem de classificação\",\n      \"reload\": \"\",\n      \"hint\": \"ordem de classificação\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"source subject\",\n      \"localized\": \"assunto de origem\",\n      \"reload\": \"\",\n      \"hint\": \"assunto de origem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"space\",\n      \"localized\": \"espaço\",\n      \"reload\": \"\",\n      \"hint\": \"espaço\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"spatial frequency\",\n      \"localized\": \"frequência espacial\",\n      \"reload\": \"\",\n      \"hint\": \"frequência espacial\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"specify model revision\",\n      \"localized\": \"especificar revisão do modelo\",\n      \"reload\": \"\",\n      \"hint\": \"especificar revisão do modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"specify model variant\",\n      \"localized\": \"especificar variante do modelo\",\n      \"reload\": \"\",\n      \"hint\": \"especificar variante do modelo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"split attention\",\n      \"localized\": \"atenção dividida\",\n      \"reload\": \"\",\n      \"hint\": \"atenção dividida\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"stable-fast\",\n      \"localized\": \"stable-fast\",\n      \"reload\": \"\",\n      \"hint\": \"stable-fast\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"standard\",\n      \"localized\": \"padrão\",\n      \"reload\": \"\",\n      \"hint\": \"padrão\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"start\",\n      \"localized\": \"iniciar\",\n      \"reload\": \"\",\n      \"hint\": \"iniciar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"start profiling\",\n      \"localized\": \"iniciar perfilamento\",\n      \"reload\": \"\",\n      \"hint\": \"iniciar perfilamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"state\",\n      \"localized\": \"estado\",\n      \"reload\": \"\",\n      \"hint\": \"estado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"stride\",\n      \"localized\": \"passo\",\n      \"reload\": \"\",\n      \"hint\": \"passo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"structure\",\n      \"localized\": \"estrutura\",\n      \"reload\": \"\",\n      \"hint\": \"estrutura\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"style fidelity\",\n      \"localized\": \"fidelidade de estilo\",\n      \"reload\": \"\",\n      \"hint\": \"fidelidade de estilo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"subject\",\n      \"localized\": \"assunto\",\n      \"reload\": \"\",\n      \"hint\": \"assunto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"submit results\",\n      \"localized\": \"enviar resultados\",\n      \"reload\": \"\",\n      \"hint\": \"enviar resultados\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"submodules\",\n      \"localized\": \"submódulos\",\n      \"reload\": \"\",\n      \"hint\": \"submódulos\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap x/y\",\n      \"localized\": \"trocar x/y\",\n      \"reload\": \"\",\n      \"hint\": \"trocar x/y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap x/z\",\n      \"localized\": \"trocar x/z\",\n      \"reload\": \"\",\n      \"hint\": \"trocar x/z\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap y/z\",\n      \"localized\": \"trocar y/z\",\n      \"reload\": \"\",\n      \"hint\": \"trocar y/z\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i adapter\",\n      \"localized\": \"adaptador t2i\",\n      \"reload\": \"\",\n      \"hint\": \"adaptador t2i\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i strength\",\n      \"localized\": \"força t2i\",\n      \"reload\": \"\",\n      \"hint\": \"força t2i\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 1\",\n      \"localized\": \"unidade 1 do adaptador t2i\",\n      \"reload\": \"\",\n      \"hint\": \"unidade 1 do adaptador t2i\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 2\",\n      \"localized\": \"unidade 2 do adaptador t2i\",\n      \"reload\": \"\",\n      \"hint\": \"unidade 2 do adaptador t2i\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 3\",\n      \"localized\": \"unidade 3 do adaptador t2i\",\n      \"reload\": \"\",\n      \"hint\": \"unidade 3 do adaptador t2i\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 4\",\n      \"localized\": \"unidade 4 do adaptador t2i\",\n      \"reload\": \"\",\n      \"hint\": \"unidade 4 do adaptador t2i\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd\",\n      \"localized\": \"taesd\",\n      \"reload\": \"\",\n      \"hint\": \"taesd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd decode layers\",\n      \"localized\": \"Camadas de decodificação taesd\",\n      \"reload\": \"\",\n      \"hint\": \"camadas de decodificação taesd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd variant\",\n      \"localized\": \"Variante taesd\",\n      \"reload\": \"\",\n      \"hint\": \"variante taesd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"target subject\",\n      \"localized\": \"Assunto alvo\",\n      \"reload\": \"\",\n      \"hint\": \"assunto alvo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tcd\",\n      \"localized\": \"tcd\",\n      \"reload\": \"\",\n      \"hint\": \"tcd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tdd\",\n      \"localized\": \"tdd\",\n      \"reload\": \"\",\n      \"hint\": \"tdd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"te\",\n      \"localized\": \"te\",\n      \"reload\": \"\",\n      \"hint\": \"te\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"temperature\",\n      \"localized\": \"Temperatura\",\n      \"reload\": \"\",\n      \"hint\": \"temperatura\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"temporal frequency\",\n      \"localized\": \"Frequência temporal\",\n      \"reload\": \"\",\n      \"hint\": \"frequência temporal\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tertiary model\",\n      \"localized\": \"Modelo terciário\",\n      \"reload\": \"\",\n      \"hint\": \"modelo terciário\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text encoder cache size\",\n      \"localized\": \"Tamanho do cache do codificador de texto\",\n      \"reload\": \"\",\n      \"hint\": \"tamanho do cache do codificador de texto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text encoder model\",\n      \"localized\": \"Modelo do codificador de texto\",\n      \"reload\": \"\",\n      \"hint\": \"modelo do codificador de texto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text inputs\",\n      \"localized\": \"Entradas de texto\",\n      \"reload\": \"\",\n      \"hint\": \"entradas de texto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"textbox\",\n      \"localized\": \"Caixa de texto\",\n      \"reload\": \"\",\n      \"hint\": \"caixa de texto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"threshold\",\n      \"localized\": \"Limiar\",\n      \"reload\": \"\",\n      \"hint\": \"limiar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"thresholding\",\n      \"localized\": \"Limiarização\",\n      \"reload\": \"\",\n      \"hint\": \"limiarização\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile frames\",\n      \"localized\": \"Quadros de bloco\",\n      \"reload\": \"\",\n      \"hint\": \"quadros de bloco\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=1\",\n      \"localized\": \"Prompt de bloco: x=1 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de bloco: x=1 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=2\",\n      \"localized\": \"Prompt de bloco: x=1 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de bloco: x=1 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=3\",\n      \"localized\": \"Prompt de bloco: x=1 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de bloco: x=1 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=4\",\n      \"localized\": \"Prompt de bloco: x=1 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de bloco: x=1 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=1\",\n      \"localized\": \"Prompt de bloco: x=2 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de bloco: x=2 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=2\",\n      \"localized\": \"Prompt de bloco: x=2 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de bloco: x=2 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=3\",\n      \"localized\": \"Prompt de bloco: x=2 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de bloco: x=2 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=4\",\n      \"localized\": \"Prompt de bloco: x=2 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de bloco: x=2 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=1\",\n      \"localized\": \"Prompt de bloco: x=3 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de bloco: x=3 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=2\",\n      \"localized\": \"Prompt de bloco: x=3 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de bloco: x=3 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=3\",\n      \"localized\": \"Prompt de bloco: x=3 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de bloco: x=3 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=4\",\n      \"localized\": \"Prompt de bloco: x=3 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de bloco: x=3 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=1\",\n      \"localized\": \"Prompt de bloco: x=4 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de bloco: x=4 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=2\",\n      \"localized\": \"Prompt de bloco: x=4 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de bloco: x=4 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=3\",\n      \"localized\": \"Prompt de bloco: x=4 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de bloco: x=4 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=4\",\n      \"localized\": \"Prompt de bloco: x=4 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"prompt de bloco: x=4 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tiling options\",\n      \"localized\": \"Opções de mosaico\",\n      \"reload\": \"\",\n      \"hint\": \"opções de mosaico\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time embedding mix\",\n      \"localized\": \"Mistura de incorporação de tempo\",\n      \"reload\": \"\",\n      \"hint\": \"mistura de incorporação de tempo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time_quadratic\",\n      \"localized\": \"time_quadratic\",\n      \"reload\": \"\",\n      \"hint\": \"time_quadratic\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time_uniform\",\n      \"localized\": \"time_uniform\",\n      \"reload\": \"\",\n      \"hint\": \"time_uniform\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep\",\n      \"localized\": \"Passo de tempo\",\n      \"reload\": \"\",\n      \"hint\": \"passo de tempo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep skip end\",\n      \"localized\": \"Pular fim do passo de tempo\",\n      \"reload\": \"\",\n      \"hint\": \"pular fim do passo de tempo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep skip start\",\n      \"localized\": \"Pular início do passo de tempo\",\n      \"reload\": \"\",\n      \"hint\": \"pular início do passo de tempo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep spacing\",\n      \"localized\": \"Espaçamento do passo de tempo\",\n      \"reload\": \"\",\n      \"hint\": \"espaçamento do passo de tempo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps\",\n      \"localized\": \"Passos de tempo\",\n      \"reload\": \"\",\n      \"hint\": \"passos de tempo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps override\",\n      \"localized\": \"Sobrescrita de passos de tempo\",\n      \"reload\": \"\",\n      \"hint\": \"sobrescrita de passos de tempo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps presets\",\n      \"localized\": \"Predefinições de passos de tempo\",\n      \"reload\": \"\",\n      \"hint\": \"predefinições de passos de tempo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps range\",\n      \"localized\": \"Intervalo de passos de tempo\",\n      \"reload\": \"\",\n      \"hint\": \"intervalo de passos de tempo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tiny\",\n      \"localized\": \"Pequeno\",\n      \"reload\": \"\",\n      \"hint\": \"pequeno\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"todo\",\n      \"localized\": \"A fazer\",\n      \"reload\": \"\",\n      \"hint\": \"a fazer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tome\",\n      \"localized\": \"tome\",\n      \"reload\": \"\",\n      \"hint\": \"tome\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tool\",\n      \"localized\": \"Ferramenta\",\n      \"reload\": \"\",\n      \"hint\": \"ferramenta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"top-k\",\n      \"localized\": \"top-k\",\n      \"reload\": \"\",\n      \"hint\": \"top-k\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"top-p\",\n      \"localized\": \"top-p\",\n      \"reload\": \"\",\n      \"hint\": \"top-p\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"torch\",\n      \"localized\": \"torch\",\n      \"reload\": \"\",\n      \"hint\": \"torch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"transformer\",\n      \"localized\": \"Transformador\",\n      \"reload\": \"\",\n      \"hint\": \"transformador\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"trigger word\",\n      \"localized\": \"Palavra-gatilho\",\n      \"reload\": \"\",\n      \"hint\": \"palavra-gatilho\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"true\",\n      \"localized\": \"Verdadeiro\",\n      \"reload\": \"\",\n      \"hint\": \"verdadeiro\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tunable ops limit\",\n      \"localized\": \"Limite de operações ajustáveis\",\n      \"reload\": \"\",\n      \"hint\": \"limite de operações ajustáveis\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ufogen\",\n      \"localized\": \"ufogen\",\n      \"reload\": \"\",\n      \"hint\": \"ufogen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui card size (px)\",\n      \"localized\": \"Tamanho do cartão da UI (px)\",\n      \"reload\": \"\",\n      \"hint\": \"tamanho do cartão da UI (px)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui fetch network info on mouse-over\",\n      \"localized\": \"UI buscar informações de rede ao passar o mouse\",\n      \"reload\": \"\",\n      \"hint\": \"UI buscar informações de rede ao passar o mouse\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui height (%)\",\n      \"localized\": \"Altura da UI (%)\",\n      \"reload\": \"\",\n      \"hint\": \"altura da UI (%)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui locale\",\n      \"localized\": \"Localização da UI\",\n      \"reload\": \"\",\n      \"hint\": \"localização da UI\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui request timeout\",\n      \"localized\": \"Tempo limite de requisição da UI\",\n      \"reload\": \"\",\n      \"hint\": \"tempo limite de requisição da UI\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui show on startup\",\n      \"localized\": \"UI mostrar na inicialização\",\n      \"reload\": \"\",\n      \"hint\": \"UI mostrar na inicialização\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui sidebar width (%)\",\n      \"localized\": \"Largura da barra lateral da UI (%)\",\n      \"reload\": \"\",\n      \"hint\": \"largura da barra lateral da UI (%)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui theme\",\n      \"localized\": \"Tema da UI\",\n      \"reload\": \"\",\n      \"hint\": \"tema da UI\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet\",\n      \"localized\": \"unet\",\n      \"reload\": \"\",\n      \"hint\": \"unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet depth\",\n      \"localized\": \"Profundidade da Unet\",\n      \"reload\": \"\",\n      \"hint\": \"profundidade da unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet enabled\",\n      \"localized\": \"Unet ativada\",\n      \"reload\": \"\",\n      \"hint\": \"unet ativada\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet max tile size\",\n      \"localized\": \"Tamanho máximo do bloco Unet\",\n      \"reload\": \"\",\n      \"hint\": \"tamanho máximo do bloco unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet min tile size\",\n      \"localized\": \"Tamanho mínimo do bloco Unet\",\n      \"reload\": \"\",\n      \"hint\": \"tamanho mínimo do bloco unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet model\",\n      \"localized\": \"Modelo Unet\",\n      \"reload\": \"\",\n      \"hint\": \"modelo unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet swap size\",\n      \"localized\": \"Tamanho de troca da Unet\",\n      \"reload\": \"\",\n      \"hint\": \"tamanho de troca da unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"uniform\",\n      \"localized\": \"Uniforme\",\n      \"reload\": \"\",\n      \"hint\": \"uniforme\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"units\",\n      \"localized\": \"Unidades\",\n      \"reload\": \"\",\n      \"hint\": \"unidades\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unload current model from vram\",\n      \"localized\": \"Descarregar modelo atual da VRAM\",\n      \"reload\": \"\",\n      \"hint\": \"descarregar modelo atual da VRAM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unload upscaler after processing\",\n      \"localized\": \"Descarregar upscaler após processamento\",\n      \"reload\": \"\",\n      \"hint\": \"descarregar upscaler após processamento\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unset\",\n      \"localized\": \"Desdefinir\",\n      \"reload\": \"\",\n      \"hint\": \"desdefinir\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"up\",\n      \"localized\": \"up\",\n      \"reload\": \"\",\n      \"hint\": \"up\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"upcast attention layer\",\n      \"localized\": \"Camada de atenção upcast\",\n      \"reload\": \"\",\n      \"hint\": \"camada de atenção upcast\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"update\",\n      \"localized\": \"Atualizar\",\n      \"reload\": \"\",\n      \"hint\": \"atualizar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"upload\",\n      \"localized\": \"Carregar\",\n      \"reload\": \"\",\n      \"hint\": \"carregar\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use brownian noise\",\n      \"localized\": \"Usar ruído browniano\",\n      \"reload\": \"\",\n      \"hint\": \"usar ruído browniano\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use cached model config when available\",\n      \"localized\": \"Usar configuração de modelo em cache quando disponível\",\n      \"reload\": \"\",\n      \"hint\": \"usar configuração de modelo em cache quando disponível\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use defaults\",\n      \"localized\": \"Usar padrões\",\n      \"reload\": \"\",\n      \"hint\": \"usar padrões\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use dynamic thresholding\",\n      \"localized\": \"Usar limiarização dinâmica\",\n      \"reload\": \"\",\n      \"hint\": \"usar limiarização dinâmica\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use fixed width thumbnails\",\n      \"localized\": \"Usar miniaturas de largura fixa\",\n      \"reload\": \"\",\n      \"hint\": \"usar miniaturas de largura fixa\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use image gallery cache\",\n      \"localized\": \"Usar cache da galeria de imagens\",\n      \"reload\": \"\",\n      \"hint\": \"usar cache da galeria de imagens\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use karras sigmas\",\n      \"localized\": \"Usar sigmas de Karras\",\n      \"reload\": \"\",\n      \"hint\": \"usar sigmas de Karras\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use line break as prompt segment marker\",\n      \"localized\": \"Usar quebra de linha como marcador de segmento de prompt\",\n      \"reload\": \"\",\n      \"hint\": \"usar quebra de linha como marcador de segmento de prompt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use model ema weights when possible\",\n      \"localized\": \"Usar pesos EMA do modelo quando possível\",\n      \"reload\": \"\",\n      \"hint\": \"usar pesos EMA do modelo quando possível\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use quantization\",\n      \"localized\": \"Usar quantização\",\n      \"reload\": \"\",\n      \"hint\": \"usar quantização\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use random seeds\",\n      \"localized\": \"Usar sementes aleatórias\",\n      \"reload\": \"\",\n      \"hint\": \"usar sementes aleatórias\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use reference values when available\",\n      \"localized\": \"Usar valores de referência quando disponível\",\n      \"reload\": \"\",\n      \"hint\": \"usar valores de referência quando disponível\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use same seed\",\n      \"localized\": \"Usar a mesma semente\",\n      \"reload\": \"\",\n      \"hint\": \"usar a mesma semente\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use sample\",\n      \"localized\": \"Usar amostra\",\n      \"reload\": \"\",\n      \"hint\": \"usar amostra\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use separate base dict\",\n      \"localized\": \"Usar dicionário base separado\",\n      \"reload\": \"\",\n      \"hint\": \"usar dicionário base separado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use simplified solvers in final steps\",\n      \"localized\": \"Usar resolvedores simplificados nas etapas finais\",\n      \"reload\": \"\",\n      \"hint\": \"usar resolvedores simplificados nas etapas finais\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use text inputs\",\n      \"localized\": \"Usar entradas de texto\",\n      \"reload\": \"\",\n      \"hint\": \"usar entradas de texto\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"user\",\n      \"localized\": \"Usuário\",\n      \"reload\": \"\",\n      \"hint\": \"usuário\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"username\",\n      \"localized\": \"Nome de usuário\",\n      \"reload\": \"\",\n      \"hint\": \"nome de usuário\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"v_prediction\",\n      \"localized\": \"Predição V\",\n      \"reload\": \"\",\n      \"hint\": \"Predição V\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae enabled\",\n      \"localized\": \"VAE ativado\",\n      \"reload\": \"\",\n      \"hint\": \"VAE ativado\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae sliced encode\",\n      \"localized\": \"Codificação fatiada VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Codificação fatiada VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae swap size\",\n      \"localized\": \"Tamanho de troca VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Tamanho de troca VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae tile overlap\",\n      \"localized\": \"Sobreposição de ladrilhos VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Sobreposição de ladrilhos VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae tile size\",\n      \"localized\": \"Tamanho do ladrilho VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Tamanho do ladrilho VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vary_coeff\",\n      \"localized\": \"Coeficiente de variação\",\n      \"reload\": \"\",\n      \"hint\": \"Coeficiente de variação\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vdm solver\",\n      \"localized\": \"Resolvedor VDM\",\n      \"reload\": \"\",\n      \"hint\": \"Resolvedor VDM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"version\",\n      \"localized\": \"Versão\",\n      \"reload\": \"\",\n      \"hint\": \"Versão\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vgen params\",\n      \"localized\": \"Parâmetros vgen\",\n      \"reload\": \"\",\n      \"hint\": \"Parâmetros vgen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vibrance\",\n      \"localized\": \"Vibrância\",\n      \"reload\": \"\",\n      \"hint\": \"Vibrância\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"video file\",\n      \"localized\": \"Arquivo de vídeo\",\n      \"reload\": \"\",\n      \"hint\": \"Arquivo de vídeo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"video type\",\n      \"localized\": \"Tipo de vídeo\",\n      \"reload\": \"\",\n      \"hint\": \"Tipo de vídeo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm\",\n      \"localized\": \"VLM\",\n      \"reload\": \"\",\n      \"hint\": \"VLM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm model\",\n      \"localized\": \"Modelo VLM\",\n      \"reload\": \"\",\n      \"hint\": \"Modelo VLM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: default model\",\n      \"localized\": \"VLM: modelo padrão\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: modelo padrão\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: default prompt\",\n      \"localized\": \"VLM: prompt padrão\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: prompt padrão\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: max length\",\n      \"localized\": \"VLM: comprimento máximo\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: comprimento máximo\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: num beams\",\n      \"localized\": \"VLM: número de feixes\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: número de feixes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: top-k\",\n      \"localized\": \"VLM: top-k\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: top-k\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: top-p\",\n      \"localized\": \"VLM: top-p\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: top-p\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: use sample method\",\n      \"localized\": \"VLM: usar método de amostragem\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: usar método de amostragem\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"warmth\",\n      \"localized\": \"Calor\",\n      \"reload\": \"\",\n      \"hint\": \"Calor\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"webp lossless compression\",\n      \"localized\": \"Compressão sem perdas WebP\",\n      \"reload\": \"\",\n      \"hint\": \"Compressão sem perdas WebP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"weight\",\n      \"localized\": \"Peso\",\n      \"reload\": \"\",\n      \"hint\": \"Peso\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width  after\",\n      \"localized\": \"Largura depois\",\n      \"reload\": \"\",\n      \"hint\": \"Largura depois\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width  before\",\n      \"localized\": \"Largura antes\",\n      \"reload\": \"\",\n      \"hint\": \"Largura antes\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width  mask\",\n      \"localized\": \"Máscara de largura\",\n      \"reload\": \"\",\n      \"hint\": \"Máscara de largura\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"wiki\",\n      \"localized\": \"Wiki\",\n      \"reload\": \"\",\n      \"hint\": \"Wiki\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"wildcards\",\n      \"localized\": \"Curingas\",\n      \"reload\": \"\",\n      \"hint\": \"Curingas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x components\",\n      \"localized\": \"Componentes X\",\n      \"reload\": \"\",\n      \"hint\": \"Componentes X\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x overlap\",\n      \"localized\": \"Sobreposição X\",\n      \"reload\": \"\",\n      \"hint\": \"Sobreposição X\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x type\",\n      \"localized\": \"Tipo X\",\n      \"reload\": \"\",\n      \"hint\": \"Tipo X\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x-axis tile overlap\",\n      \"localized\": \"Sobreposição de ladrilhos do eixo X\",\n      \"reload\": \"\",\n      \"hint\": \"Sobreposição de ladrilhos do eixo X\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x-axis tiles\",\n      \"localized\": \"Ladrilhos do eixo X\",\n      \"reload\": \"\",\n      \"hint\": \"Ladrilhos do eixo X\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xhinker\",\n      \"localized\": \"Xhinker\",\n      \"reload\": \"\",\n      \"hint\": \"Xhinker\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xs\",\n      \"localized\": \"xs\",\n      \"reload\": \"\",\n      \"hint\": \"xs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y components\",\n      \"localized\": \"Componentes Y\",\n      \"reload\": \"\",\n      \"hint\": \"Componentes Y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y overlap\",\n      \"localized\": \"Sobreposição Y\",\n      \"reload\": \"\",\n      \"hint\": \"Sobreposição Y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y type\",\n      \"localized\": \"Tipo Y\",\n      \"reload\": \"\",\n      \"hint\": \"Tipo Y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y-axis tile overlap\",\n      \"localized\": \"Sobreposição de ladrilhos do eixo Y\",\n      \"reload\": \"\",\n      \"hint\": \"Sobreposição de ladrilhos do eixo Y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y-axis tiles\",\n      \"localized\": \"Ladrilhos do eixo Y\",\n      \"reload\": \"\",\n      \"hint\": \"Ladrilhos do eixo Y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"z type\",\n      \"localized\": \"Tipo Z\",\n      \"reload\": \"\",\n      \"hint\": \"Tipo Z\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"zero\",\n      \"localized\": \"Zero\",\n      \"reload\": \"\",\n      \"hint\": \"Zero\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"zoe depth\",\n      \"localized\": \"Profundidade Zoe\",\n      \"reload\": \"\",\n      \"hint\": \"Profundidade Zoe\"\n    }\n  ]\n}\n"
  },
  {
    "path": "html/locale_ru.json",
    "content": "{\n  \"icons\": [\n    {\n      \"id\": \"\",\n      \"label\": \"🎲️\",\n      \"localized\": \"🎲️\",\n      \"reload\": \"\",\n      \"hint\": \"Использовать случайное зерно\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔄\",\n      \"localized\": \"🔄\",\n      \"reload\": \"\",\n      \"hint\": \"Сбросить значения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⬆️\",\n      \"localized\": \"⬆️\",\n      \"reload\": \"\",\n      \"hint\": \"Загрузить изображение\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⬅️\",\n      \"localized\": \"⬅️\",\n      \"reload\": \"\",\n      \"hint\": \"Повторно использовать изображение\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇅\",\n      \"localized\": \"⇅\",\n      \"reload\": \"\",\n      \"hint\": \"Поменять значения местами\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇨\",\n      \"localized\": \"⇨\",\n      \"reload\": \"\",\n      \"hint\": \"Применить пресет к вкладке Manual Block Merge\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🕮\",\n      \"localized\": \"🕮\",\n      \"reload\": \"\",\n      \"hint\": \"Сохранить параметры последнего сгенерированного изображения как шаблон стиля\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇕\",\n      \"localized\": \"⇕\",\n      \"reload\": \"\",\n      \"hint\": \"Сортировать по: Имя (возр./убыв.), Размер (от больш./к мал.), Время (от нов./к старым)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⟲\",\n      \"localized\": \"⟲\",\n      \"reload\": \"\",\n      \"hint\": \"Обновить\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"✕\",\n      \"localized\": \"✕\",\n      \"reload\": \"\",\n      \"hint\": \"Закрыть\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⊜\",\n      \"localized\": \"⊜\",\n      \"reload\": \"\",\n      \"hint\": \"Заполнить\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"※\",\n      \"localized\": \"※\",\n      \"reload\": \"\",\n      \"hint\": \"Загрузить модель как уточняющую (refiner) модель, если выбрано, иначе загрузить как базовую модель\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔎︎\",\n      \"localized\": \"🔎︎\",\n      \"reload\": \"\",\n      \"hint\": \"Сканировать CivitAI на предмет отсутствующих метаданных и предпросмотров\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"☲\",\n      \"localized\": \"☲\",\n      \"reload\": \"\",\n      \"hint\": \"Изменить тип просмотра\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⊗\",\n      \"localized\": \"⊗\",\n      \"reload\": \"\",\n      \"hint\": \"Сбросить значения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"📐\",\n      \"localized\": \"📐\",\n      \"reload\": \"\",\n      \"hint\": \"Измерить\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔍\",\n      \"localized\": \"🔍\",\n      \"reload\": \"\",\n      \"hint\": \"Поиск\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🖌️\",\n      \"localized\": \"🖌️\",\n      \"reload\": \"\",\n      \"hint\": \"LaMa: удалить выбранный объект с изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🖼️\",\n      \"localized\": \"🖼️\",\n      \"reload\": \"\",\n      \"hint\": \"Показать предпросмотр\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Проанализировать изображение\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⁜\",\n      \"localized\": \"⁜\",\n      \"reload\": \"\",\n      \"hint\": \"Циклически менять метод подгонки изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"↶\",\n      \"localized\": \"↶\",\n      \"reload\": \"\",\n      \"hint\": \"Применить выбранный стиль к промпту\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"↷\",\n      \"localized\": \"↷\",\n      \"reload\": \"\",\n      \"hint\": \"Сохранить текущий промпт как стиль\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Сортировать по имени, по возрастанию\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Сортировать по имени, по убыванию\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Сортировать по размеру, по возрастанию\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Сортировать по размеру, по убыванию\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Сортировать по разрешению, по возрастанию\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Сортировать по разрешению, по убыванию\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Сортировать по времени, по возрастанию\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"Сортировать по времени, по убыванию\"\n    }\n  ],\n  \"main\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt\",\n      \"localized\": \"Промпт\",\n      \"reload\": \"\",\n      \"hint\": \"Опишите изображение, которое вы хотите сгенерировать\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Start\",\n      \"localized\": \"Начало\",\n      \"reload\": \"\",\n      \"hint\": \"Начало\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"End\",\n      \"localized\": \"Конец\",\n      \"reload\": \"\",\n      \"hint\": \"Конец\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Core\",\n      \"localized\": \"Основные\",\n      \"reload\": \"\",\n      \"hint\": \"Основные настройки\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System prompt\",\n      \"localized\": \"Системный промпт\",\n      \"reload\": \"\",\n      \"hint\": \"Системный промпт контролирует поведение LLM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Negative prompt\",\n      \"localized\": \"Негативный промпт\",\n      \"reload\": \"\",\n      \"hint\": \"Опишите, что вы не хотите видеть в сгенерированном изображении\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Text\",\n      \"localized\": \"Текст\",\n      \"reload\": \"\",\n      \"hint\": \"Создать изображение из текста\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image\",\n      \"localized\": \"Изображение\",\n      \"reload\": \"\",\n      \"hint\": \"Создать изображение из изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control\",\n      \"localized\": \"Управление\",\n      \"reload\": \"\",\n      \"hint\": \"Создать изображение с полным руководством\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process\",\n      \"localized\": \"Обработка\",\n      \"reload\": \"\",\n      \"hint\": \"Обработать существующее изображение\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Caption\",\n      \"localized\": \"Описание\",\n      \"reload\": \"\",\n      \"hint\": \"Анализировать существующие изображения и создавать текстовые описания\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Interrogate\",\n      \"localized\": \"Анализ\",\n      \"reload\": \"\",\n      \"hint\": \"Запустить анализ для получения описания вашего изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models\",\n      \"localized\": \"Модели\",\n      \"reload\": \"\",\n      \"hint\": \"Скачивание, конвертация или объединение ваших моделей и управление метаданными моделей\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Agent Scheduler\",\n      \"localized\": \"Планировщик агентов\",\n      \"reload\": \"\",\n      \"hint\": \"Поставить ваши запросы на генерацию в очередь и запускать их в фоновом режиме\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"AgentScheduler\",\n      \"localized\": \"Планировщик агентов\",\n      \"reload\": \"\",\n      \"hint\": \"Поставить ваши запросы на генерацию в очередь и запускать их в фоновом режиме\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System\",\n      \"localized\": \"Система\",\n      \"reload\": \"\",\n      \"hint\": \"Системные настройки и информация\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System Info\",\n      \"localized\": \"Информация о системе\",\n      \"reload\": \"\",\n      \"hint\": \"Информация о системе\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Settings\",\n      \"localized\": \"Настройки\",\n      \"reload\": \"\",\n      \"hint\": \"Настройки приложения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Script\",\n      \"localized\": \"Скрипт\",\n      \"reload\": \"\",\n      \"hint\": \"Дополнительные скрипты для использования\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Generate\",\n      \"localized\": \"Генерировать\",\n      \"reload\": \"\",\n      \"hint\": \"Начать обработку\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Generate forever\",\n      \"localized\": \"Генерировать непрерывно\",\n      \"reload\": \"\",\n      \"hint\": \"Начать обработку и продолжать до отмены\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enqueue\",\n      \"localized\": \"Поставить в очередь\",\n      \"reload\": \"\",\n      \"hint\": \"Добавить задачу в фоновую очередь в Планировщике агентов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reprocess\",\n      \"localized\": \"Повторная обработка\",\n      \"reload\": \"\",\n      \"hint\": \"Повторно обработать предыдущие генерации, используя другие параметры\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Stop\",\n      \"localized\": \"Остановить\",\n      \"reload\": \"\",\n      \"hint\": \"Остановить обработку\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Skip\",\n      \"localized\": \"Пропустить\",\n      \"reload\": \"\",\n      \"hint\": \"Остановить обработку текущего задания и продолжить обработку\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Pause\",\n      \"localized\": \"Пауза\",\n      \"reload\": \"\",\n      \"hint\": \"Приостановить обработку\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore\",\n      \"localized\": \"Восстановить\",\n      \"reload\": \"\",\n      \"hint\": \"Восстановить параметры из текущего промпта или последнего известного сгенерированного изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Clear\",\n      \"localized\": \"Очистить\",\n      \"reload\": \"\",\n      \"hint\": \"Очистить промпты\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Networks\",\n      \"localized\": \"Сети\",\n      \"reload\": \"\",\n      \"hint\": \"Пользовательский интерфейс сетей\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Default strength\",\n      \"localized\": \"Сила по умолчанию\",\n      \"reload\": \"\",\n      \"hint\": \"При добавлении дополнительной сети, такой как LoRA, к промпту, используйте этот множитель для нее\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscale\",\n      \"localized\": \"Увеличить разрешение\",\n      \"reload\": \"\",\n      \"hint\": \"Увеличить разрешение изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model\",\n      \"localized\": \"Модель\",\n      \"reload\": \"\",\n      \"hint\": \"Базовая модель\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompts\",\n      \"localized\": \"Промпты\",\n      \"reload\": \"\",\n      \"hint\": \"Промпт изображения и негативный промпт\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Base\",\n      \"localized\": \"Базовые\",\n      \"reload\": \"\",\n      \"hint\": \"Базовые настройки, используемые для запуска генерации изображений\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Style\",\n      \"localized\": \"Стиль\",\n      \"reload\": \"\",\n      \"hint\": \"Дополнительные стили, применяемые к выбранным параметрам генерации\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Styles\",\n      \"localized\": \"Стили\",\n      \"reload\": \"\",\n      \"hint\": \"Дополнительные стили, применяемые к выбранным параметрам генерации\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Lora\",\n      \"localized\": \"LoRA\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA: Низкоранговая адаптация. Дообученная модель, которая применяется поверх загруженной модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Embedding\",\n      \"localized\": \"Эмбеддинг\",\n      \"reload\": \"\",\n      \"hint\": \"Эмбеддинг текстовой инверсии — это обученная встроенная информация о предмете\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Hypernetwork\",\n      \"localized\": \"Гиперсеть\",\n      \"reload\": \"\",\n      \"hint\": \"Малая обученная нейронная сеть, которая изменяет поведение загруженной модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VLM Caption\",\n      \"localized\": \"VLM Описание\",\n      \"reload\": \"\",\n      \"hint\": \"Анализировать изображение с использованием визуальной языковой модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CLiP Interrogate\",\n      \"localized\": \"CLiP Анализ\",\n      \"reload\": \"\",\n      \"hint\": \"Анализировать изображение с использованием модели CLiP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE\",\n      \"localized\": \"VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Вариационный автоэнкодер: модель, используемая для декодирования изображения в конце генерации\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"History\",\n      \"localized\": \"История\",\n      \"reload\": \"\",\n      \"hint\": \"Список предыдущих генераций, которые могут быть повторно обработаны\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"UI disable variable aspect ratio\",\n      \"localized\": \"UI отключить переменное соотношение сторон\",\n      \"reload\": \"\",\n      \"hint\": \"При отключении все миниатюры отображаются как квадратные изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Build info on first access\",\n      \"localized\": \"Создавать информацию при первом доступе\",\n      \"reload\": \"\",\n      \"hint\": \"Предотвращает создание EN страницы сервером при запуске и вместо этого создает ее по запросу\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show reference styles\",\n      \"localized\": \"Показать эталонные стили\",\n      \"reload\": \"\",\n      \"hint\": \"Показать или скрыть встроенные стили\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA load using Diffusers method\",\n      \"localized\": \"Загрузка LoRA методом Diffusers\",\n      \"reload\": \"\",\n      \"hint\": \"Альтернативный метод использует встроенные возможности LoRA в Diffusers вместо нативной реализации SD.Next (может снизить совместимость LoRA)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA fuse directly to model\",\n      \"localized\": \"LoRA слияние с моделью\",\n      \"reload\": \"\",\n      \"hint\": \"При загрузке LoRA немедленно объединять веса с базовой моделью вместо применения их на лету\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA memory cache\",\n      \"localized\": \"Кэш памяти LoRA\",\n      \"reload\": \"\",\n      \"hint\": \"Сколько LoRA хранить в сети для будущего использования до необходимости перезагрузки из хранилища\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Local\",\n      \"localized\": \"Локальные\",\n      \"reload\": \"\",\n      \"hint\": \"Модели, которые скачаны и готовы к использованию\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Gallery\",\n      \"localized\": \"Галерея\",\n      \"reload\": \"\",\n      \"hint\": \"Галерея изображений\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reference\",\n      \"localized\": \"Эталонные\",\n      \"reload\": \"\",\n      \"hint\": \"Список эталонных моделей, которые могут быть автоматически скачаны при первом использовании\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Samplers\",\n      \"localized\": \"Сэмплеры\",\n      \"reload\": \"\",\n      \"hint\": \"Расширенные настройки сэмплеров/планировщиков\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Seed\",\n      \"localized\": \"Зерно\",\n      \"reload\": \"\",\n      \"hint\": \"Начальное зерно и вариация\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Advanced\",\n      \"localized\": \"Расширенные\",\n      \"reload\": \"\",\n      \"hint\": \"Расширенные настройки, используемые для запуска генерации изображений\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scripts\",\n      \"localized\": \"Скрипты\",\n      \"reload\": \"\",\n      \"hint\": \"Включить дополнительные функции, используя выбранные скрипты во время процесса генерации\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Corrections\",\n      \"localized\": \"Коррекции\",\n      \"reload\": \"\",\n      \"hint\": \"Управление коррекциями цвета/резкости/яркости изображения во время процесса генерации\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Parameters\",\n      \"localized\": \"Параметры\",\n      \"reload\": \"\",\n      \"hint\": \"Базовые параметры, используемые во время генерации изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine\",\n      \"localized\": \"Уточнение\",\n      \"reload\": \"\",\n      \"hint\": \"Уточнение запускает дополнительную обработку после завершения первоначальной обработки и может использоваться для увеличения разрешения изображения и опциональной повторной обработки для повышения качества и детализации\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer\",\n      \"localized\": \"Детайлер\",\n      \"reload\": \"\",\n      \"hint\": \"Детайлер запускает дополнительную генерацию в более высоком разрешении для обнаруженных объектов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize\",\n      \"localized\": \"Изменение размера\",\n      \"reload\": \"\",\n      \"hint\": \"Изменение размера изображения, может быть с фиксированным разрешением или на основе масштаба\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch\",\n      \"localized\": \"Пакетная обработка\",\n      \"reload\": \"\",\n      \"hint\": \"Настройки пакетной обработки\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoise\",\n      \"localized\": \"Шумоподавление\",\n      \"reload\": \"\",\n      \"hint\": \"Настройки шумоподавления. Более высокое шумоподавление означает, что больше существующего содержимого изображения может измениться во время генерации\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mask\",\n      \"localized\": \"Маска\",\n      \"reload\": \"\",\n      \"hint\": \"Маскирование изображения и параметры маски\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Input\",\n      \"localized\": \"Ввод\",\n      \"reload\": \"\",\n      \"hint\": \"Выбор входного медиа\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Video\",\n      \"localized\": \"Видео\",\n      \"reload\": \"\",\n      \"hint\": \"Создать видео с использованием руководства\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control elements\",\n      \"localized\": \"Элементы управления\",\n      \"reload\": \"\",\n      \"hint\": \"Элементы управления — это продвинутые модели, которые могут направлять генерацию к желаемому результату\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"IP adapter\",\n      \"localized\": \"IP-адаптер\",\n      \"reload\": \"\",\n      \"hint\": \"Направлять генерацию к желаемому результату с использованием плагинов моделей IP-адаптеров\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"IP adapters\",\n      \"localized\": \"IP-адаптеры\",\n      \"reload\": \"\",\n      \"hint\": \"IP-адаптеры — это плагины моделей, которые могут направлять генерацию к желаемому результату\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Extensions\",\n      \"localized\": \"Расширения\",\n      \"reload\": \"\",\n      \"hint\": \"Расширения приложения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"XYZ Grid\",\n      \"localized\": \"Сетка XYZ\",\n      \"reload\": \"\",\n      \"hint\": \"Сетка XYZ — это мощный модуль, который создает сетку изображений на основе варьирования нескольких параметров генерации\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Cover\",\n      \"localized\": \"На весь экран\",\n      \"reload\": \"\",\n      \"hint\": \"Покрыть всю область\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inline\",\n      \"localized\": \"Встроенный\",\n      \"reload\": \"\",\n      \"hint\": \"Встроенный со всеми дополнительными элементами (с прокруткой)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sidebar\",\n      \"localized\": \"Боковая панель\",\n      \"reload\": \"\",\n      \"hint\": \"Боковая панель справа на экране\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD15\",\n      \"localized\": \"SD15\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Diffusion 1.5\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD21\",\n      \"localized\": \"SD21\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Diffusion 2.1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD35\",\n      \"localized\": \"SD35\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Diffusion 3.5\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SDXL\",\n      \"localized\": \"SDXL\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Diffusion XL\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SC\",\n      \"localized\": \"SC\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Cascade\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Flux\",\n      \"localized\": \"Flux\",\n      \"reload\": \"\",\n      \"hint\": \"FLUX.1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show\",\n      \"localized\": \"Показать\",\n      \"reload\": \"\",\n      \"hint\": \"Показать расположение изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Save\",\n      \"localized\": \"Сохранить\",\n      \"reload\": \"\",\n      \"hint\": \"Сохранить изображение\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Delete\",\n      \"localized\": \"Удалить\",\n      \"reload\": \"\",\n      \"hint\": \"Удалить изображение\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Replace\",\n      \"localized\": \"Заменить\",\n      \"reload\": \"\",\n      \"hint\": \"Заменить изображение\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Text\",\n      \"localized\": \"➠ Текст\",\n      \"reload\": \"\",\n      \"hint\": \"Перенести изображение в текстовый интерфейс\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Image\",\n      \"localized\": \"➠ Изображение\",\n      \"reload\": \"\",\n      \"hint\": \"Перенести изображение в интерфейс изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Inpaint\",\n      \"localized\": \"➠ Inpaint\",\n      \"reload\": \"\",\n      \"hint\": \"Перенести изображение в интерфейс Inpaint\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Sketch\",\n      \"localized\": \"➠ Скетч\",\n      \"reload\": \"\",\n      \"hint\": \"Перенести изображение в интерфейс Скетч\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Composite\",\n      \"localized\": \"➠ Композит\",\n      \"reload\": \"\",\n      \"hint\": \"Перенести изображение в интерфейс Inpaint скетч\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Process\",\n      \"localized\": \"➠ Обработка\",\n      \"reload\": \"\",\n      \"hint\": \"Перенести изображение в интерфейс обработки\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Control\",\n      \"localized\": \"➠ Управление\",\n      \"reload\": \"\",\n      \"hint\": \"Перенести изображение в интерфейс управления\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Caption\",\n      \"localized\": \"➠ Описание\",\n      \"reload\": \"\",\n      \"hint\": \"Перенести изображение в интерфейс описания\"\n    }\n  ],\n  \"generate\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Sampling method\",\n      \"localized\": \"Метод сэмплирования\",\n      \"reload\": \"\",\n      \"hint\": \"Какой алгоритм использовать для создания изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Steps\",\n      \"localized\": \"Шаги\",\n      \"reload\": \"\",\n      \"hint\": \"Сколько раз итеративно улучшать сгенерированное изображение; более высокие значения занимают больше времени; очень низкие значения могут привести к плохим результатам\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Tiling\",\n      \"localized\": \"Тайлинг\",\n      \"reload\": \"\",\n      \"hint\": \"Создать бесшовное изображение\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full quality\",\n      \"localized\": \"Полное качество\",\n      \"reload\": \"\",\n      \"hint\": \"Использовать VAE полного качества для декодирования латентных образцов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HiDiffusion\",\n      \"localized\": \"ХайДиффузия\",\n      \"reload\": \"\",\n      \"hint\": \"HiDiffusion позволяет создавать изображения высокого разрешения с использованием ваших стандартных моделей без дубликатов/искажений и с улучшенной производительностью\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HDR Clamp\",\n      \"localized\": \"Ограничение HDR\",\n      \"reload\": \"\",\n      \"hint\": \"Регулирует уровень бессмысленных деталей, обрезая значения, которые значительно отклоняются от среднего значения распределения. Особенно полезно для улучшения генерации при более высоких значениях масштаба руководства, раннего выявления выбросов в процессе и применения математических корректировок на основе настроек Диапазона (Границы) и Порога. Представьте это как установку диапазона, в котором должны находиться значения вашего изображения, а настройка порога определяет, какие значения должны быть возвращены в этот диапазон\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HDR Maximize\",\n      \"localized\": \"Максимизация HDR\",\n      \"reload\": \"\",\n      \"hint\": \"Вычисляет 'коэффициент нормализации', деля максимальное значение тензора на заданный диапазон, умноженный на 4. Этот фактор затем используется для сдвига каналов в пределах заданной границы, обеспечивая максимальный динамический диапазон для последующей обработки. Цель состоит в оптимизации динамического диапазона для внешних приложений, таких как Photoshop, особенно для регулировки уровней, контраста и яркости\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enable refine pass\",\n      \"localized\": \"Включить проход уточнения\",\n      \"reload\": \"\",\n      \"hint\": \"Использовать процесс, аналогичный преобразованию 'изображение в изображение', для масштабирования и/или добавления деталей к финальному изображению. Опционально использует модель уточнения для улучшения деталей изображения.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enable detailer pass\",\n      \"localized\": \"Включить проход детализации\",\n      \"reload\": \"\",\n      \"hint\": \"Обнаружить целевые объекты, такие как лицо, и переработать их в более высоком разрешении\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoising strength\",\n      \"localized\": \"Сила шумоподавления\",\n      \"reload\": \"\",\n      \"hint\": \"Определяет, насколько мало алгоритм должен учитывать содержимое изображения. При 0 ничего не изменится, а при 1 вы получите несвязанное изображение. При значениях ниже 1.0 обработка займет меньше шагов, чем указано в ползунке 'Шаги сэмплирования'.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoise start\",\n      \"localized\": \"Начало шумоподавления\",\n      \"reload\": \"\",\n      \"hint\": \"Переопределяет силу шумоподавления, указывая, как рано базовая модель должна завершить работу и когда должен начаться рефайнер. Применимо только при использовании рефайнера. Если установлено 0 или 1, будет использоваться сила шумоподавления.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Hires steps\",\n      \"localized\": \"Шаги высокого разрешения\",\n      \"reload\": \"\",\n      \"hint\": \"Количество шагов сэмплирования для увеличенного изображения. Если 0, используются те же, что и для оригинала.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Strength\",\n      \"localized\": \"Сила\",\n      \"reload\": \"\",\n      \"hint\": \"Сила шумоподавления во время операции с изображением контролирует, насколько оригинальное изображение может измениться в процессе генерации.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler\",\n      \"localized\": \"Апскейлер\",\n      \"reload\": \"\",\n      \"hint\": \"Какую предварительно обученную модель использовать для процесса увеличения разрешения.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Force Hires\",\n      \"localized\": \"Принудительное высокое разрешение\",\n      \"reload\": \"\",\n      \"hint\": \"Hires запускается автоматически при выборе латентного апскейла, но пропускается при использовании нелатентных апскейлеров. Включите принудительный Hires, чтобы запускать его с нелатентными апскейлерами.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize width\",\n      \"localized\": \"Изменить ширину\",\n      \"reload\": \"\",\n      \"hint\": \"Изменяет размер изображения до этой ширины. Если 0, ширина определяется одним из двух соседних ползунков.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize height\",\n      \"localized\": \"Изменить высоту\",\n      \"reload\": \"\",\n      \"hint\": \"Изменяет размер изображения до этой высоты. Если 0, высота определяется одним из двух соседних ползунков.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine sampler\",\n      \"localized\": \"Сэмплер уточнения\",\n      \"reload\": \"\",\n      \"hint\": \"Использовать определенный сэмплер как запасной, если основной не поддерживается для конкретной операции.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner start\",\n      \"localized\": \"Начало рефайнера\",\n      \"reload\": \"\",\n      \"hint\": \"Проход рефайнера начнется, когда базовая модель будет завершена на столько (установите значение больше 0 и меньше 1, чтобы запустить после полного прогона базовой модели).\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner steps\",\n      \"localized\": \"Шаги рефайнера\",\n      \"reload\": \"\",\n      \"hint\": \"Количество шагов для прохода рефайнера.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine guidance\",\n      \"localized\": \"Руководство уточнения\",\n      \"reload\": \"\",\n      \"hint\": \"Масштаб CFG, используемый для прохода рефайнера.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Attention guidance\",\n      \"localized\": \"Направляющая внимания\",\n      \"reload\": \"\",\n      \"hint\": \"Масштаб CFG, используемый с PAG: Направляющая возмущенного внимания (Perturbed-Attention Guidance).\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adaptive scaling\",\n      \"localized\": \"Адаптивное масштабирование\",\n      \"reload\": \"\",\n      \"hint\": \"Адаптивный модификатор для масштаба направляющей внимания.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Rescale guidance\",\n      \"localized\": \"Перемасштабирование направляющей\",\n      \"reload\": \"\",\n      \"hint\": \"Перемасштабировать шум, сгенерированный CFG, чтобы избежать переэкспонированных изображений.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine Prompt\",\n      \"localized\": \"Уточняющий промпт\",\n      \"reload\": \"\",\n      \"hint\": \"Промпт, используемый как для второго энкодера в базовой модели (если он существует), так и для прохода рефайнера (если включено).\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine negative prompt\",\n      \"localized\": \"Уточняющий негативный промпт\",\n      \"reload\": \"\",\n      \"hint\": \"Отрицательный промпт, используемый как для второго энкодера в базовой модели (если он существует), так и для прохода рефайнера (если включено).\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Width\",\n      \"localized\": \"Ширина\",\n      \"reload\": \"\",\n      \"hint\": \"Ширина изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Height\",\n      \"localized\": \"Высота\",\n      \"reload\": \"\",\n      \"hint\": \"Высота изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch count\",\n      \"localized\": \"Количество пакетов\",\n      \"reload\": \"\",\n      \"hint\": \"Сколько пакетов изображений создать (не влияет на производительность генерации или использование VRAM).\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch size\",\n      \"localized\": \"Размер пакета\",\n      \"reload\": \"\",\n      \"hint\": \"Сколько изображений создать за один пакет (увеличивает производительность генерации за счет более высокого использования VRAM).\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance scale\",\n      \"localized\": \"Масштаб руководства\",\n      \"reload\": \"\",\n      \"hint\": \"Масштаб Classifier Free Guidance: насколько сильно изображение должно соответствовать промпту. Меньшие значения дают более креативные результаты, большие значения заставляют его следовать промпту более строго; рекомендуемые значения от 5 до 10.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Guidance End\",\n      \"localized\": \"Окончание направляющей\",\n      \"reload\": \"\",\n      \"hint\": \"Завершает эффект CFG и PAG раньше: значение 1 действует как обычно, 0.5 останавливает руководство на 50% шагов.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Initial seed\",\n      \"localized\": \"Начальный сид\",\n      \"reload\": \"\",\n      \"hint\": \"Значение, определяющее вывод генератора случайных чисел — если вы создадите изображение с теми же параметрами и сидом, что и другое изображение, вы получите тот же результат.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variation\",\n      \"localized\": \"Вариация\",\n      \"reload\": \"\",\n      \"hint\": \"Второй сид, который будет смешан с основным сидом.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variation strength\",\n      \"localized\": \"Сила вариации\",\n      \"reload\": \"\",\n      \"hint\": \"Насколько сильную вариацию производить. При 0 эффекта не будет. При 1 вы получите полное изображение с сидом вариации (за исключением анцестральных сэмплеров, где вы просто получите что-то).\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize seed from width\",\n      \"localized\": \"Изменить размер сида по ширине\",\n      \"reload\": \"\",\n      \"hint\": \"Попытаться создать изображение, аналогичное тому, что было бы получено с тем же сидом при указанном разрешении.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize seed from height\",\n      \"localized\": \"Изменить размер сида по высоте\",\n      \"reload\": \"\",\n      \"hint\": \"Попытаться создать изображение, аналогичное тому, что было бы получено с тем же сидом при указанном разрешении.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Fixed\",\n      \"localized\": \"Фиксированный\",\n      \"reload\": \"\",\n      \"hint\": \"Изменить размер изображения до целевого разрешения. Если высота и ширина не совпадают, вы получите неправильное соотношение сторон.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale\",\n      \"localized\": \"Масштаб\",\n      \"reload\": \"\",\n      \"hint\": \"Изменить размер изображения до целевого масштаба. Если заданы фиксированная ширина/высота, эта опция игнорируется.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop\",\n      \"localized\": \"Обрезать\",\n      \"reload\": \"\",\n      \"hint\": \"Изменить размер изображения так, чтобы вся целевая область была заполнена изображением. Обрезать выступающие части.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Fill\",\n      \"localized\": \"Заполнить\",\n      \"reload\": \"\",\n      \"hint\": \"Изменить размер изображения так, чтобы все изображение находилось внутри целевого разрешения. Заполнить пустое пространство цветами изображения.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mask blur\",\n      \"localized\": \"Размытие маски\",\n      \"reload\": \"\",\n      \"hint\": \"Насколько сильно размыть маску перед обработкой, в пикселях.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Latent noise\",\n      \"localized\": \"Латентный шум\",\n      \"reload\": \"\",\n      \"hint\": \"заполнить его шумом латентного пространства.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Latent nothing\",\n      \"localized\": \"Латентные нули\",\n      \"reload\": \"\",\n      \"hint\": \"заполнить его нулями латентного пространства.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adapters\",\n      \"localized\": \"Адаптеры\",\n      \"reload\": \"\",\n      \"hint\": \"Настройки, связанные с IP-адаптерами.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inputs\",\n      \"localized\": \"Входные данные\",\n      \"reload\": \"\",\n      \"hint\": \"Настройки, связанные с входными изображениями.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control input type\",\n      \"localized\": \"Тип управляющего входа\",\n      \"reload\": \"\",\n      \"hint\": \"Выберите, какое входное изображение используется для процесса управления.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Video format\",\n      \"localized\": \"Формат видео\",\n      \"reload\": \"\",\n      \"hint\": \"Формат и кодек выходного видео.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Size & Batch\",\n      \"localized\": \"Размер и пакет\",\n      \"reload\": \"\",\n      \"hint\": \"Размер изображения и пакет.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sigma adjust\",\n      \"localized\": \"Регулировка сигмы\",\n      \"reload\": \"\",\n      \"hint\": \"Настроить значение сигмы сэмплера.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adjust start\",\n      \"localized\": \"Начало регулировки\",\n      \"reload\": \"\",\n      \"hint\": \"Начальный шаг, когда происходит регулировка сигмы.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adjust end\",\n      \"localized\": \"Конец регулировки\",\n      \"reload\": \"\",\n      \"hint\": \"Конечный шаг, когда происходит регулировка сигмы.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Options\",\n      \"localized\": \"Опции\",\n      \"reload\": \"\",\n      \"hint\": \"Опции.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ControlNet\",\n      \"localized\": \"ControlNet\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet — это продвинутая модель управления.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Renoise\",\n      \"localized\": \"Перешумление\",\n      \"reload\": \"\",\n      \"hint\": \"Применить дополнительный шум во время детализации.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Renoise end\",\n      \"localized\": \"Конец перешумления\",\n      \"reload\": \"\",\n      \"hint\": \"Финальный шаг, когда применяется перешумление.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Merge detailers\",\n      \"localized\": \"Объединить детализаторы\",\n      \"reload\": \"\",\n      \"hint\": \"Объединить результаты от нескольких детализаторов в одну маску перед запуском процесса детализации.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpaint mode\",\n      \"localized\": \"Режим инпейнтинга\",\n      \"reload\": \"\",\n      \"hint\": \"Режим инпейнтинга.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpaint area\",\n      \"localized\": \"Область инпейнтинга\",\n      \"reload\": \"\",\n      \"hint\": \"Область инпейнтинга.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Texture tiling\",\n      \"localized\": \"Текстурное тайлинг\",\n      \"reload\": \"\",\n      \"hint\": \"Применить бесшовное тайлинг к сгенерированному изображению, чтобы его можно было использовать как текстуру.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Override\",\n      \"localized\": \"Переопределить\",\n      \"reload\": \"\",\n      \"hint\": \"Переопределить настройки, которые могут изменить поведение сервера и обычно применяются из метаданных импортированного изображения.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE type\",\n      \"localized\": \"Тип VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Выберите, хотите ли вы использовать полный VAE, VAE пониженного качества или попытаться использовать удаленный сервис VAE.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Guess Mode\",\n      \"localized\": \"Режим угадывания\",\n      \"reload\": \"\",\n      \"hint\": \"Снимает требование предоставления промпта для ControlNet. Он заставляет энкодер ControlNet 'угадывать' наилучшим образом на основе содержимого входной карты управления.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control Only\",\n      \"localized\": \"Только управление\",\n      \"reload\": \"\",\n      \"hint\": \"Это использует только входной сигнал управления (Control input) ниже в качестве источника для любых задач типа ControlNet или IP-адаптера, основанных на любых наших различных опциях.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Init Image Same As Control\",\n      \"localized\": \"Исходное изображение то же, что и управляющее\",\n      \"reload\": \"\",\n      \"hint\": \"Дополнительно будет рассматривать любое изображение, помещенное в окно ввода управления, как источник для задач типа 'изображение в изображение' (img2img), например, изображение для модификации.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Separate Init Image\",\n      \"localized\": \"Отдельное исходное изображение\",\n      \"reload\": \"\",\n      \"hint\": \"Создает дополнительное окно рядом с вводом управления (Control input) с меткой 'Исходный ввод' (Init input), чтобы вы могли использовать отдельное изображение как для операций управления, так и в качестве исходного изображения.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Override settings\",\n      \"localized\": \"Переопределить настройки\",\n      \"reload\": \"\",\n      \"hint\": \"Если параметры генерации отличаются от системных настроек, переопределите настройки, заполненные этими параметрами, чтобы переопределить конфигурацию вашей системы для этого рабочего процесса.\"\n    }\n  ],\n  \"other\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Install\",\n      \"localized\": \"Установить\",\n      \"reload\": \"\",\n      \"hint\": \"Установить\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Search\",\n      \"localized\": \"Поиск\",\n      \"reload\": \"\",\n      \"hint\": \"Поиск\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sort by\",\n      \"localized\": \"Сортировать по\",\n      \"reload\": \"\",\n      \"hint\": \"Сортировать по\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Nudenet\",\n      \"localized\": \"Nudenet\",\n      \"reload\": \"\",\n      \"hint\": \"Гибкое расширение, которое может обнаруживать и скрывать наготу на изображениях\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt enhance\",\n      \"localized\": \"Улучшение промпта\",\n      \"reload\": \"\",\n      \"hint\": \"Расширение, которое может использовать различные большие языковые модели (LLM) для переписывания промптов с целью улучшения результатов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Manage extensions\",\n      \"localized\": \"Управление расширениями\",\n      \"reload\": \"\",\n      \"hint\": \"Управление расширениями\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Manual install\",\n      \"localized\": \"Установка вручную\",\n      \"reload\": \"\",\n      \"hint\": \"Установить расширение вручную\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Extension GIT repository URL\",\n      \"localized\": \"URL-адрес репозитория GIT расширения\",\n      \"reload\": \"\",\n      \"hint\": \"Укажите URL-адрес репозитория расширения на GitHub\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Specific branch name\",\n      \"localized\": \"Имя конкретной ветки\",\n      \"reload\": \"\",\n      \"hint\": \"Укажите имя ветки расширения, оставьте пустым для значения по умолчанию\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Local directory name\",\n      \"localized\": \"Имя локальной директории\",\n      \"reload\": \"\",\n      \"hint\": \"Директория для установки расширения, оставьте пустым для значения по умолчанию\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refresh extension list\",\n      \"localized\": \"Обновить список расширений\",\n      \"reload\": \"\",\n      \"hint\": \"Обновить список доступных расширений\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Update all installed\",\n      \"localized\": \"Обновить все установленные\",\n      \"reload\": \"\",\n      \"hint\": \"Обновить установленные расширения до их последней доступной версии\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Apply changes\",\n      \"localized\": \"Применить изменения\",\n      \"reload\": \"\",\n      \"hint\": \"Применить все изменения и перезапустить сервер\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Uninstall\",\n      \"localized\": \"Удалить\",\n      \"reload\": \"\",\n      \"hint\": \"Удалить это расширение\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"User interface\",\n      \"localized\": \"Пользовательский интерфейс\",\n      \"reload\": \"\",\n      \"hint\": \"Просмотр и настройка параметров пользовательского интерфейса\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Set UI defaults\",\n      \"localized\": \"Установить значения UI по умолчанию\",\n      \"reload\": \"\",\n      \"hint\": \"Установить текущие значения в качестве значений по умолчанию для пользовательского интерфейса\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Benchmark\",\n      \"localized\": \"Бенчмарк\",\n      \"reload\": \"\",\n      \"hint\": \"Запустить тесты производительности\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models & Networks\",\n      \"localized\": \"Модели и Сети\",\n      \"reload\": \"\",\n      \"hint\": \"Просмотр списков всех доступных моделей и сетей\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore UI defaults\",\n      \"localized\": \"Восстановить значения UI по умолчанию\",\n      \"reload\": \"\",\n      \"hint\": \"Восстановить значения пользовательского интерфейса по умолчанию\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer classes\",\n      \"localized\": \"Классы детализатора\",\n      \"reload\": \"\",\n      \"hint\": \"Укажите конкретные классы для использования, если выбранная модель детализатора является мультиклассовой моделью\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer models\",\n      \"localized\": \"Модели детализатора\",\n      \"reload\": \"\",\n      \"hint\": \"Выберите модели обнаружения для детализации\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer negative prompt\",\n      \"localized\": \"Отрицательный промпт детализатора\",\n      \"reload\": \"\",\n      \"hint\": \"Использовать отдельный отрицательный промпт для детализатора. Если не указан, будет использоваться основной отрицательный промпт\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer prompt\",\n      \"localized\": \"Промпт детализатора\",\n      \"reload\": \"\",\n      \"hint\": \"Использовать отдельный промпт для детализатора. Если не указан, будет использоваться основной промпт\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer steps\",\n      \"localized\": \"Шаги детализатора\",\n      \"reload\": \"\",\n      \"hint\": \"Количество шагов для процесса детализатора\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer strength\",\n      \"localized\": \"Сила детализатора\",\n      \"reload\": \"\",\n      \"hint\": \"Сила шумоподавления процесса детализатора\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer use model augment\",\n      \"localized\": \"Детализатор использовать улучшение модели\",\n      \"reload\": \"\",\n      \"hint\": \"Запускать модели обнаружения детализатора с повышенной точностью\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max detected\",\n      \"localized\": \"Макс. обнаружено\",\n      \"reload\": \"\",\n      \"hint\": \"Максимальное количество обнаруженных объектов для детализации\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Edge blur\",\n      \"localized\": \"Размытие края\",\n      \"reload\": \"\",\n      \"hint\": \"Размыть край маскированной области на этот процент\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Edge padding\",\n      \"localized\": \"Отступ края\",\n      \"reload\": \"\",\n      \"hint\": \"Расширить край маскированной области на этот процент\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Min confidence\",\n      \"localized\": \"Мин. уверенность\",\n      \"reload\": \"\",\n      \"hint\": \"Минимальная уверенность в обнаруженном элементе\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max overlap\",\n      \"localized\": \"Макс. перекрытие\",\n      \"reload\": \"\",\n      \"hint\": \"Максимальное перекрытие между двумя обнаруженными элементами, прежде чем один из них будет отброшен\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Min size\",\n      \"localized\": \"Мин. размер\",\n      \"reload\": \"\",\n      \"hint\": \"Минимальный размер обнаруженного объекта в процентах от общего изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max size\",\n      \"localized\": \"Макс. размер\",\n      \"reload\": \"\",\n      \"hint\": \"Максимальный размер обнаруженного объекта в процентах от общего изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Image\",\n      \"localized\": \"Обработать изображение\",\n      \"reload\": \"\",\n      \"hint\": \"Обработать одно изображение\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Batch\",\n      \"localized\": \"Обработать пакет\",\n      \"reload\": \"\",\n      \"hint\": \"Обработать пакет изображений\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Folder\",\n      \"localized\": \"Обработать папку\",\n      \"reload\": \"\",\n      \"hint\": \"Обработать все изображения в папке\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Current\",\n      \"localized\": \"Текущие\",\n      \"reload\": \"\",\n      \"hint\": \"Анализировать модули внутри текущей загруженной модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Merge\",\n      \"localized\": \"Слияние\",\n      \"reload\": \"\",\n      \"hint\": \"Объединить две или более моделей в новую модель\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Modules\",\n      \"localized\": \"Модули\",\n      \"reload\": \"\",\n      \"hint\": \"Объединить и/или заменить модули в существующей модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Validate\",\n      \"localized\": \"Проверить\",\n      \"reload\": \"\",\n      \"hint\": \"Проверить все локальные модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CivitAI\",\n      \"localized\": \"CivitAI\",\n      \"reload\": \"\",\n      \"hint\": \"Искать и загружать модели с CivitAI\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scale by\",\n      \"localized\": \"Масштабировать по\",\n      \"reload\": \"\",\n      \"hint\": \"Используйте эту вкладку для изменения размера исходных изображений по выбранному коэффициенту\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scale to\",\n      \"localized\": \"Масштабировать до\",\n      \"reload\": \"\",\n      \"hint\": \"Используйте эту вкладку для изменения размера исходных изображений до выбранного целевого размера\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Input directory\",\n      \"localized\": \"Входная директория\",\n      \"reload\": \"\",\n      \"hint\": \"Папка, содержащая изображения, которые вы хотите обработать\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Output directory\",\n      \"localized\": \"Выходная директория\",\n      \"reload\": \"\",\n      \"hint\": \"Папка, куда должны быть сохранены обработанные изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show result images\",\n      \"localized\": \"Показать результирующие изображения\",\n      \"reload\": \"\",\n      \"hint\": \"Включить для отображения обработанных изображений в панели изображений\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop to fit\",\n      \"localized\": \"Обрезать по размеру\",\n      \"reload\": \"\",\n      \"hint\": \"Если размеры вашего исходного изображения (например, 512x510) отличаются от целевых размеров (например, 1024x768), эта функция подгонит ваше масштабированное изображение под целевой размер. Излишки будут обрезаны\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine Upscaler\",\n      \"localized\": \"Улучшить апскейлер\",\n      \"reload\": \"\",\n      \"hint\": \"Выберите дополнительный апскейлер для запуска после основного апскейлера\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler 2 visibility\",\n      \"localized\": \"Видимость апскейлера 2\",\n      \"reload\": \"\",\n      \"hint\": \"Сила вторичного апскейлера\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Calculate hash for all models\",\n      \"localized\": \"Вычислить хеш для всех моделей\",\n      \"reload\": \"\",\n      \"hint\": \"Вычисляет хеш для всех доступных моделей, что может занять очень много времени\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Weights Clip\",\n      \"localized\": \"Ограничение весов\",\n      \"reload\": \"\",\n      \"hint\": \"Принудительное ограничение объединенных весов, чтобы они не были тяжелее исходной модели, предотвращая 'выгорание' и чрезмерно насыщенные модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ReBasin\",\n      \"localized\": \"ReBasin\",\n      \"reload\": \"\",\n      \"hint\": \"Выполняет множественные слияния с перестановками для сохранения большего количества признаков из обеих моделей\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Number of ReBasin Iterations\",\n      \"localized\": \"Количество итераций ReBasin\",\n      \"reload\": \"\",\n      \"hint\": \"Количество раз, которое модель будет объединяться и переставляться перед сохранением\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CPU\",\n      \"localized\": \"ЦПУ\",\n      \"reload\": \"\",\n      \"hint\": \"Использует только процессор и ОЗУ: самый медленный, но наименее подверженный ошибкам нехватки памяти (OOM)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Shuffle\",\n      \"localized\": \"Перемешивание\",\n      \"reload\": \"\",\n      \"hint\": \"Загружает полную модель в ОЗУ и вычисляет на видеопамяти: меньшее ускорение, рекомендуется для слияний SDXL\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"In Blocks\",\n      \"localized\": \"Входные блоки\",\n      \"reload\": \"\",\n      \"hint\": \"Блоки понижающей дискретизации UNet (12 значений для SD1.5, 9 значений для SDXL)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mid Block\",\n      \"localized\": \"Средний блок\",\n      \"reload\": \"\",\n      \"hint\": \"Центральный блок UNet (1 значение)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Out Block\",\n      \"localized\": \"Выходные блоки\",\n      \"reload\": \"\",\n      \"hint\": \"Блоки повышающей дискретизации UNet (12 значений для SD1.5, 9 значений для SDXL)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Preset Interpolation Ratio\",\n      \"localized\": \"Коэффициент интерполяции пресетов\",\n      \"reload\": \"\",\n      \"hint\": \"Если выбраны два пресета, интерполировать между ними\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adapter\",\n      \"localized\": \"Адаптер\",\n      \"reload\": \"\",\n      \"hint\": \"Модель IP-адаптера\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Active ip adapters\",\n      \"localized\": \"Активные IP-адаптеры\",\n      \"reload\": \"\",\n      \"hint\": \"Количество активных IP-адаптеров\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Unload adapter\",\n      \"localized\": \"Выгрузить адаптер\",\n      \"reload\": \"\",\n      \"hint\": \"Выгрузить IP-адаптер сразу после генерации. В противном случае IP-адаптер останется загруженным для более быстрого использования в следующем процессе генерации\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop to portrait\",\n      \"localized\": \"Обрезать до портрета\",\n      \"reload\": \"\",\n      \"hint\": \"Обрезать входное изображение до портретной ориентации перед использованием его в качестве входных данных IP-адаптера\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Layer options\",\n      \"localized\": \"Параметры слоя\",\n      \"reload\": \"\",\n      \"hint\": \"Вручную укажите расширенные параметры слоя IP-адаптера\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"X values\",\n      \"localized\": \"Значения X\",\n      \"reload\": \"\",\n      \"hint\": \"Разделяйте значения для оси X запятыми\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Y values\",\n      \"localized\": \"Значения Y\",\n      \"reload\": \"\",\n      \"hint\": \"Разделяйте значения для оси Y запятыми\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Z values\",\n      \"localized\": \"Значения Z\",\n      \"reload\": \"\",\n      \"hint\": \"Разделяйте значения для оси Z запятыми\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Loops\",\n      \"localized\": \"Циклы\",\n      \"reload\": \"\",\n      \"hint\": \"Сколько раз обрабатывать изображение. Каждый выход используется как вход для следующего цикла. Если установлено 1, поведение будет таким, как если бы этот скрипт не использовался\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Final denoising strength\",\n      \"localized\": \"Финальная сила шумоподавления\",\n      \"reload\": \"\",\n      \"hint\": \"Сила шумоподавления для последнего цикла каждого изображения в пакете\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoising strength curve\",\n      \"localized\": \"Кривая силы шумоподавления\",\n      \"reload\": \"\",\n      \"hint\": \"Кривая шумоподавления контролирует скорость изменения силы шумоподавления в каждом цикле. Агрессивная: Большая часть изменений произойдет в начале циклов. Линейная: Изменения будут постоянными на протяжении всех циклов. Ленивая: Большая часть изменений произойдет к концу циклов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Tile overlap\",\n      \"localized\": \"Перекрытие тайлов\",\n      \"reload\": \"\",\n      \"hint\": \"Для апскейлинга SD, какой должен быть нахлест в пикселях между тайлами. Тайлы перекрываются так, чтобы при их объединении обратно в одно изображение не было четко видимого шва\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Color to Mask\",\n      \"localized\": \"ACI: Цвет в маску\",\n      \"reload\": \"\",\n      \"hint\": \"Выберите цвет, который хотите маскировать и закрасить. Нажмите на цвет на изображении, чтобы выбрать его автоматически.\\n Рекомендуется использовать изображения, такие как зеленые экраны, для получения точных результатов.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Color Tolerance\",\n      \"localized\": \"ACI: Допуск цвета\",\n      \"reload\": \"\",\n      \"hint\": \"Отрегулируйте допуск для включения похожих цветов в маску. Низкие значения = маскировка только очень похожих цветов. Высокие значения = маскировка более широкого диапазона похожих цветов.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Mask Erode\",\n      \"localized\": \"ACI: Эрозия маски\",\n      \"reload\": \"\",\n      \"hint\": \"Отрегулируйте отступ для применения внутреннего смещения к маске. (Рекомендуемое значение = 2 для удаления остатков по краям)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Mask Blur\",\n      \"localized\": \"ACI: Размытие маски\",\n      \"reload\": \"\",\n      \"hint\": \"Отрегулируйте размытие для применения плавного перехода между изображением и закрашенной областью. (Рекомендуемое значение = 0 для резкости)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Denoising Strength\",\n      \"localized\": \"ACI: Сила шумоподавления\",\n      \"reload\": \"\",\n      \"hint\": \"Измените Силу шумоподавления для достижения желаемого уровня закрашивания.\"\n    }\n  ],\n  \"settings\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Apply settings\",\n      \"localized\": \"Применить настройки\",\n      \"reload\": \"\",\n      \"hint\": \"Сохранить текущие настройки, рекомендуется перезапуск сервера\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Loading\",\n      \"localized\": \"Загрузка модели\",\n      \"reload\": \"\",\n      \"hint\": \"Настройки, связанные с загрузкой модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Options\",\n      \"localized\": \"Параметры модели\",\n      \"reload\": \"\",\n      \"hint\": \"Настройки, связанные с поведением конкретных моделей\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Offloading\",\n      \"localized\": \"Выгрузка модели\",\n      \"reload\": \"\",\n      \"hint\": \"Настройки, связанные с выгрузкой модели и управлением памятью\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Quantization\",\n      \"localized\": \"Квантизация модели\",\n      \"reload\": \"\",\n      \"hint\": \"Настройки, связанные с квантизацией модели, используемой для снижения потребления памяти\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Metadata\",\n      \"localized\": \"Метаданные изображения\",\n      \"reload\": \"\",\n      \"hint\": \"Настройки, связанные с обработкой метаданных, создаваемых с сгенерированными изображениями\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Legacy Options\",\n      \"localized\": \"Устаревшие опции\",\n      \"reload\": \"\",\n      \"hint\": \"Настройки, связанные с устаревшими опциями - не следует использовать\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restart server\",\n      \"localized\": \"Перезапустить сервер\",\n      \"reload\": \"\",\n      \"hint\": \"Перезапустить сервер\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Shutdown server\",\n      \"localized\": \"Выключить сервер\",\n      \"reload\": \"\",\n      \"hint\": \"Выключить сервер\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Preview theme\",\n      \"localized\": \"Предварительный просмотр темы\",\n      \"reload\": \"\",\n      \"hint\": \"Показать предварительный просмотр темы\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore defaults\",\n      \"localized\": \"Восстановить настройки по умолчанию\",\n      \"reload\": \"\",\n      \"hint\": \"Восстановить настройки сервера по умолчанию\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Unload model\",\n      \"localized\": \"Выгрузить модель\",\n      \"reload\": \"\",\n      \"hint\": \"Выгрузить текущую загруженную модель\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reload model\",\n      \"localized\": \"Перезагрузить модель\",\n      \"reload\": \"\",\n      \"hint\": \"Перезагрузить текущую выбранную модель\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models & Loading\",\n      \"localized\": \"Модели и загрузка\",\n      \"reload\": \"\",\n      \"hint\": \"Настройки, связанные с базовыми моделями, основным бэкендом и поведением загрузки модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variational Auto Encoder\",\n      \"localized\": \"Вариационный автокодировщик\",\n      \"reload\": \"\",\n      \"hint\": \"Настройки, связанные с вариационным автокодировщиком и процессом декодирования изображения во время генерации\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Text encoder\",\n      \"localized\": \"Текстовый кодировщик\",\n      \"reload\": \"\",\n      \"hint\": \"Настройки, связанные с текстовым кодировщиком и обработкой кодирования промпта во время генерации\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Compute Settings\",\n      \"localized\": \"Настройки вычислений\",\n      \"reload\": \"\",\n      \"hint\": \"Настройки, связанные с точностью вычислений, кросс-вниманием и оптимизациями для вычислительных платформ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Backend Settings\",\n      \"localized\": \"Настройки бэкенда\",\n      \"reload\": \"\",\n      \"hint\": \"Настройки, связанные с вычислительными бэкендами: torch, onnx и olive\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Quantization Settings\",\n      \"localized\": \"Настройки квантизации\",\n      \"reload\": \"\",\n      \"hint\": \"Настройки, связанные с квантизацией модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Pipeline modifiers\",\n      \"localized\": \"Модификаторы пайплайна\",\n      \"reload\": \"\",\n      \"hint\": \"Дополнительный функционал, который может быть включен во время генерации\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model compile\",\n      \"localized\": \"Компиляция модели\",\n      \"reload\": \"\",\n      \"hint\": \"Настройки, связанные с различными методами компиляции модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System Paths\",\n      \"localized\": \"Системные пути\",\n      \"reload\": \"\",\n      \"hint\": \"Настройки, связанные с расположением различных каталогов моделей\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Options\",\n      \"localized\": \"Параметры изображения\",\n      \"reload\": \"\",\n      \"hint\": \"Настройки, связанные с форматом изображения, метаданными и сетками изображений\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Paths\",\n      \"localized\": \"Пути к изображениям\",\n      \"reload\": \"\",\n      \"hint\": \"Настройки, связанные с именами файлов изображений и выходными каталогами\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Live Previews\",\n      \"localized\": \"Живые превью\",\n      \"reload\": \"\",\n      \"hint\": \"Настройки, связанные с живыми превью, звуковыми уведомлениями\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sampler Settings\",\n      \"localized\": \"Настройки сэмплера\",\n      \"reload\": \"\",\n      \"hint\": \"Настройки, связанные с выбором и конфигурацией сэмплера, а также специфической конфигурацией сэмплера для диффузора\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Postprocessing\",\n      \"localized\": \"Постобработка\",\n      \"reload\": \"\",\n      \"hint\": \"Настройки, связанные с постобработкой сгенерированных изображений, восстановлением лиц и увеличением разрешения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control Options\",\n      \"localized\": \"Параметры управления\",\n      \"reload\": \"\",\n      \"hint\": \"Настройки, связанные с вкладкой «Управление»\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Huggingface\",\n      \"localized\": \"Huggingface\",\n      \"reload\": \"\",\n      \"hint\": \"Настройки, связанные с доступом к Huggingface\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show all pages\",\n      \"localized\": \"Показать все страницы\",\n      \"reload\": \"\",\n      \"hint\": \"Показать все страницы настроек\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Base model\",\n      \"localized\": \"Базовая модель\",\n      \"reload\": \"\",\n      \"hint\": \"Основная модель, используемая для всех операций\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner model\",\n      \"localized\": \"Модель рефайнера\",\n      \"reload\": \"\",\n      \"hint\": \"Модель рефайнера, используемая для операций второго прохода\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Cached models\",\n      \"localized\": \"Кэшированные модели\",\n      \"reload\": \"\",\n      \"hint\": \"Количество моделей для хранения в ОЗУ для быстрого доступа\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE model\",\n      \"localized\": \"Модель VAE\",\n      \"reload\": \"\",\n      \"hint\": \"VAE помогает с мелкими деталями на итоговом изображении, а также может изменять цвета\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model load using streams\",\n      \"localized\": \"Загрузка модели с использованием потоков\",\n      \"reload\": \"\",\n      \"hint\": \"При загрузке моделей попробовать потоковую загрузку, оптимизированную для медленного или сетевого хранилища\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xFormers\",\n      \"localized\": \"xFormers\",\n      \"reload\": \"\",\n      \"hint\": \"Оптимизация памяти. Недетерминировано (разные результаты каждый раз)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scaled-Dot-Product\",\n      \"localized\": \"Взвешенное точечное произведение\",\n      \"reload\": \"\",\n      \"hint\": \"Оптимизация памяти. Недетерминировано, если не отключено внимание памяти SDP.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt padding\",\n      \"localized\": \"Дополнение промпта\",\n      \"reload\": \"\",\n      \"hint\": \"Увеличить связность путем дополнения от последней запятой в пределах n токенов при использовании более 75 токенов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Original\",\n      \"localized\": \"Оригинал\",\n      \"reload\": \"\",\n      \"hint\": \"Оригинальный бэкенд LDM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Autocast\",\n      \"localized\": \"Автоматическое приведение типов\",\n      \"reload\": \"\",\n      \"hint\": \"Автоматически определять точность во время выполнения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full\",\n      \"localized\": \"Полная\",\n      \"reload\": \"\",\n      \"hint\": \"Всегда использовать полную точность\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"FP32\",\n      \"localized\": \"FP32\",\n      \"reload\": \"\",\n      \"hint\": \"Использовать 32-битную точность с плавающей запятой для вычислений\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"FP16\",\n      \"localized\": \"FP16\",\n      \"reload\": \"\",\n      \"hint\": \"Использовать 16-битную точность с плавающей запятой для вычислений\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"BF16\",\n      \"localized\": \"BF16\",\n      \"reload\": \"\",\n      \"hint\": \"Использовать модифицированную 16-битную точность с плавающей запятой для вычислений\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full precision (--no-half-vae)\",\n      \"localized\": \"Полная точность (--no-half-vae)\",\n      \"reload\": \"\",\n      \"hint\": \"Использует FP32 для VAE. Может давать лучшие результаты, но использует больше VRAM и замедляет генерацию\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Force full precision (--no-half)\",\n      \"localized\": \"Принудительная полная точность (--no-half)\",\n      \"reload\": \"\",\n      \"hint\": \"Использует FP32 для модели. Может давать лучшие результаты, но использует больше VRAM и замедляет генерацию\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upcast sampling\",\n      \"localized\": \"Сэмплирование с повышением разрядности\",\n      \"reload\": \"\",\n      \"hint\": \"Обычно дает результаты, аналогичные --no-half, с лучшей производительностью при меньшем использовании памяти\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Attempt VAE roll back for NaN values\",\n      \"localized\": \"Попытка отката VAE для значений NaN\",\n      \"reload\": \"\",\n      \"hint\": \"Требует Torch 2.1 и включенной проверки NaN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive use FP16 on optimization\",\n      \"localized\": \"Olive использовать FP16 при оптимизации\",\n      \"reload\": \"\",\n      \"hint\": \"Использовать 16-битную точность с плавающей запятой для выходной модели процесса оптимизации Olive. Использовать 32-битную точность с плавающей запятой, если отключено\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive force FP32 for VAE Encoder\",\n      \"localized\": \"Olive принудительно использовать FP32 для VAE Encoder\",\n      \"reload\": \"\",\n      \"hint\": \"Использовать 32-битную точность с плавающей запятой для VAE Encoder выходной модели. Это переопределяет опцию 'use FP16 on optimization'. Если вы получаете NaN или черные пустые изображения из Img2Img, включите эту опцию и очистите кэш\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive use static dimensions\",\n      \"localized\": \"Olive использовать статические размеры\",\n      \"reload\": \"\",\n      \"hint\": \"Значительно ускоряет инференс с моделями, оптимизированными Olive. (OrtTransformersOptimization)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive cache optimized models\",\n      \"localized\": \"Olive кэшировать оптимизированные модели\",\n      \"reload\": \"\",\n      \"hint\": \"Сохранять модели, обработанные Olive, как кэш. Вы можете управлять ими на вкладке ONNX\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"File format\",\n      \"localized\": \"Формат файла\",\n      \"reload\": \"\",\n      \"hint\": \"Выбрать формат файла для изображений\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Include metadata\",\n      \"localized\": \"Включить метаданные\",\n      \"reload\": \"\",\n      \"hint\": \"Сохранять параметры создания изображения как метаданные внутри файла изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Images filename pattern\",\n      \"localized\": \"Шаблон имени файла изображений\",\n      \"reload\": \"\",\n      \"hint\": \"Используйте следующие теги для определения имен файлов изображений:<br><pre>seq, uuid<br>date, datetime, job_timestamp<br>generation_number, batch_number<br>model, model_shortname<br>model_hash, model_name<br>sampler, seed, steps, cfg<br>clip_skip, denoising<br>hasprompt, prompt, styles<br>prompt_hash, prompt_no_styles<br>prompt_spaces, prompt_words<br>height, width, image_hash<br></pre>\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Row count\",\n      \"localized\": \"Количество строк\",\n      \"reload\": \"\",\n      \"hint\": \"Используйте -1 для автоопределения и 0, чтобы оно было таким же, как размер пакета\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Directory name pattern\",\n      \"localized\": \"Шаблон имени каталога\",\n      \"reload\": \"\",\n      \"hint\": \"Используйте следующие теги для определения имен подкаталогов для изображений и сеток: [steps], [cfg],[prompt_hash], [prompt], [prompt_no_styles], [prompt_spaces], [width], [height], [styles], [sampler], [seed], [model_hash], [model_name], [prompt_words], [date], [datetime], [datetime<Format>], [datetime<Format><Time Zone>], [job_timestamp]; оставьте пустым для значения по умолчанию\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpainting conditioning mask strength\",\n      \"localized\": \"Сила маскирования для инпейнта\",\n      \"reload\": \"\",\n      \"hint\": \"Определяет, насколько сильно маскировать исходное изображение для инпейнта и img2img. 1.0 означает полностью замаскировано (по умолчанию). 0.0 означает полностью не замаскированное условие. Меньшие значения помогут сохранить общую композицию изображения, но будут испытывать трудности с большими изменениями\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Clip skip\",\n      \"localized\": \"Пропуск CLIP\",\n      \"reload\": \"\",\n      \"hint\": \"Параметр ранней остановки для модели CLIP; 1 означает остановку на последнем слое, как обычно, 2 — на предпоследнем слое и т.д.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Images folder\",\n      \"localized\": \"Папка для изображений\",\n      \"reload\": \"\",\n      \"hint\": \"Если пусто, по умолчанию используются три каталога ниже\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Grids folder\",\n      \"localized\": \"Папка для сеток\",\n      \"reload\": \"\",\n      \"hint\": \"Если пусто, по умолчанию используются два каталога ниже\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Quicksettings list\",\n      \"localized\": \"Список быстрых настроек\",\n      \"reload\": \"\",\n      \"hint\": \"Список названий настроек, разделенных запятыми, для настроек, которые должны быть перемещены на панель быстрого доступа вверху вместо вкладки настроек\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Live preview display period\",\n      \"localized\": \"Период отображения живого превью\",\n      \"reload\": \"\",\n      \"hint\": \"Запрашивать изображение предварительного просмотра каждые n шагов, установите 0 для отключения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Approximate\",\n      \"localized\": \"Приблизительный\",\n      \"reload\": \"\",\n      \"hint\": \"Дешевая аппроксимация нейронной сети. Очень быстро по сравнению с VAE, но производит изображения с разрешением в 4 раза меньше по горизонтали/вертикали и более низким качеством\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Simple\",\n      \"localized\": \"Простой\",\n      \"reload\": \"\",\n      \"hint\": \"Очень дешевая аппроксимация. Очень быстро по сравнению с VAE, но производит изображения с разрешением в 8 раз меньше по горизонтали/вертикали и чрезвычайно низким качеством\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Progress update period\",\n      \"localized\": \"Период обновления прогресса\",\n      \"reload\": \"\",\n      \"hint\": \"Период обновления для индикатора прогресса UI и проверок предварительного просмотра, в миллисекундах\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Euler a\",\n      \"localized\": \"Эйлер а\",\n      \"reload\": \"\",\n      \"hint\": \"Эйлер Анонимный (Euler Ancestral) - очень креативный, каждый раз можно получить совершенно разную картину в зависимости от количества шагов, установка шагов выше 30-40 не помогает\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"DDIM\",\n      \"localized\": \"DDIM\",\n      \"reload\": \"\",\n      \"hint\": \"Модели неявной диффузии с шумоподавлением (Denoising Diffusion Implicit Models) - лучшие для инпейнта\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"UniPC\",\n      \"localized\": \"UniPC\",\n      \"reload\": \"\",\n      \"hint\": \"Единая структура предсказателя-корректора для быстрой выборки моделей диффузии\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sigma negative guidance minimum\",\n      \"localized\": \"Минимум отрицательного направления сигма\",\n      \"reload\": \"\",\n      \"hint\": \"Пропускать отрицательный промпт на некоторых шагах, когда изображение почти готово, 0=отключить\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler tile size\",\n      \"localized\": \"Размер тайла апскейлера\",\n      \"reload\": \"\",\n      \"hint\": \"0 = без тайлинга\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler tile overlap\",\n      \"localized\": \"Наложение тайлов апскейлера\",\n      \"reload\": \"\",\n      \"hint\": \"Низкие значения = видимый шов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"GFPGAN\",\n      \"localized\": \"GFPGAN\",\n      \"reload\": \"\",\n      \"hint\": \"Восстанавливать лица низкого качества с помощью нейронной сети GFPGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CodeFormer\",\n      \"localized\": \"CodeFormer\",\n      \"reload\": \"\",\n      \"hint\": \"Восстанавливать лица низкого качества с помощью нейронной сети Codeformer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CodeFormer weight parameter\",\n      \"localized\": \"Параметр веса CodeFormer\",\n      \"reload\": \"\",\n      \"hint\": \"0 = максимальный эффект; 1 = минимальный эффект\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ToMe token merging ratio\",\n      \"localized\": \"Коэффициент слияния токенов ToMe\",\n      \"reload\": \"\",\n      \"hint\": \"Включить слияние избыточных токенов через tomesd для повышения скорости и экономии памяти, 0=отключено\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Todo token merging ratio\",\n      \"localized\": \"Коэффициент слияния токенов Todo\",\n      \"reload\": \"\",\n      \"hint\": \"Включить слияние избыточных токенов через todo для повышения скорости и экономии памяти, 0=отключено\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model pipeline\",\n      \"localized\": \"Пайплайн модели\",\n      \"reload\": \"\",\n      \"hint\": \"Если автоопределение не обнаруживает модель автоматически, выберите тип модели перед загрузкой модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE slicing\",\n      \"localized\": \"Разделение VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Декодирует латенты пакетами по одному изображению за раз с ограниченной VRAM. Небольшой прирост производительности при декодировании VAE в пакетах из нескольких изображений\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE tiling\",\n      \"localized\": \"Тайлинг VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Разделяет большие изображения на перекрывающиеся тайлы с ограниченной VRAM. Приводит к небольшому увеличению времени обработки\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Dynamic attention BMM\",\n      \"localized\": \"Динамическое внимание BMM\",\n      \"reload\": \"\",\n      \"hint\": \"Выполняет вычисление внимания поэтапно, а не сразу. Увеличивает время инференса, но значительно снижает потребление памяти\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX Execution Provider\",\n      \"localized\": \"Провайдер выполнения ONNX\",\n      \"reload\": \"\",\n      \"hint\": \"Провайдер выполнения ONNX\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX allow fallback to CPU\",\n      \"localized\": \"ONNX разрешить откат к CPU\",\n      \"reload\": \"\",\n      \"hint\": \"Разрешить откат к CPU, если выбранный провайдер выполнения не справился\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX cache converted models\",\n      \"localized\": \"ONNX кэшировать преобразованные модели\",\n      \"reload\": \"\",\n      \"hint\": \"Сохранять модели, преобразованные в формат ONNX, как кэш. Вы можете управлять ими на вкладке ONNX\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX unload base model when processing refiner\",\n      \"localized\": \"ONNX выгружать базовую модель при обработке рефайнера\",\n      \"reload\": \"\",\n      \"hint\": \"Выгружать базовую модель, когда рефайнер преобразуется/оптимизируется/обрабатывается\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inference-mode\",\n      \"localized\": \"Режим вывода\",\n      \"reload\": \"\",\n      \"hint\": \"Использовать torch.inference_mode\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"no-grad\",\n      \"localized\": \"без градиента\",\n      \"reload\": \"\",\n      \"hint\": \"Использовать torch.no_grad\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model compile precompile\",\n      \"localized\": \"Предварительная компиляция модели\",\n      \"reload\": \"\",\n      \"hint\": \"Выполнять компиляцию модели сразу при загрузке модели, а не при первом использовании\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Use zeros for prompt padding\",\n      \"localized\": \"Использовать нули для дополнения промпта\",\n      \"reload\": \"\",\n      \"hint\": \"Принудительно использовать полный нулевой тензор, если промпт пуст, чтобы удалить остаточный шум\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Include invisible watermark\",\n      \"localized\": \"Включить невидимый водяной знак\",\n      \"reload\": \"\",\n      \"hint\": \"Добавить невидимый водяной знак к изображению, изменяя некоторые значения пикселей\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invisible watermark string\",\n      \"localized\": \"Строка невидимого водяного знака\",\n      \"reload\": \"\",\n      \"hint\": \"Строка водяного знака для добавления к изображению. Держите очень короткой, чтобы избежать повреждения изображения.\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show log view\",\n      \"localized\": \"Показать лог\",\n      \"reload\": \"\",\n      \"hint\": \"Показать лог внизу главного окна\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Log view update period\",\n      \"localized\": \"Период обновления лога\",\n      \"reload\": \"\",\n      \"hint\": \"Период обновления лога, в миллисекундах\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"PAG layer names\",\n      \"localized\": \"Имена PAG слоев\",\n      \"reload\": \"\",\n      \"hint\": \"Список слоев, разделенных пробелами<br>Доступно: d[0-5], m[0], u[0-8]<br>По умолчанию: m0\"\n    }\n  ],\n  \"missing\": [\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage\",\n      \"localized\": \"1-й этап\",\n      \"reload\": \"\",\n      \"hint\": \"1-й этап\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage backbone\",\n      \"localized\": \"Основа 1-го этапа\",\n      \"reload\": \"\",\n      \"hint\": \"Основа 1-го этапа\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage skip\",\n      \"localized\": \"Пропуск 1-го этапа\",\n      \"reload\": \"\",\n      \"hint\": \"Пропуск 1-го этапа\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd restart step\",\n      \"localized\": \"Шаг 2-го перезапуска\",\n      \"reload\": \"\",\n      \"hint\": \"Шаг 2-го перезапуска\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd scale\",\n      \"localized\": \"2-й масштаб\",\n      \"reload\": \"\",\n      \"hint\": \"2-й масштаб\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage\",\n      \"localized\": \"2-й этап\",\n      \"reload\": \"\",\n      \"hint\": \"2-й этап\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage backbone\",\n      \"localized\": \"Основа 2-го этапа\",\n      \"reload\": \"\",\n      \"hint\": \"Основа 2-го этапа\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage skip\",\n      \"localized\": \"Пропуск 2-го этапа\",\n      \"reload\": \"\",\n      \"hint\": \"Пропуск 2-го этапа\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd restart step\",\n      \"localized\": \"Шаг 3-го перезапуска\",\n      \"reload\": \"\",\n      \"hint\": \"Шаг 3-го перезапуска\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd scale\",\n      \"localized\": \"3-й масштаб\",\n      \"reload\": \"\",\n      \"hint\": \"3-й масштаб\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd stage\",\n      \"localized\": \"3-й этап\",\n      \"reload\": \"\",\n      \"hint\": \"3-й этап\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th restart step\",\n      \"localized\": \"Шаг 4-го перезапуска\",\n      \"reload\": \"\",\n      \"hint\": \"Шаг 4-го перезапуска\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th scale\",\n      \"localized\": \"4-й масштаб\",\n      \"reload\": \"\",\n      \"hint\": \"4-й масштаб\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th stage\",\n      \"localized\": \"4-й этап\",\n      \"reload\": \"\",\n      \"hint\": \"4-й этап\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"a1111\",\n      \"localized\": \"a1111\",\n      \"reload\": \"\",\n      \"hint\": \"a1111\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"accuracy\",\n      \"localized\": \"точность\",\n      \"reload\": \"\",\n      \"hint\": \"точность\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aci: mask dilate\",\n      \"localized\": \"ACI: расширение маски\",\n      \"reload\": \"\",\n      \"hint\": \"ACI: расширение маски\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"active\",\n      \"localized\": \"активно\",\n      \"reload\": \"\",\n      \"hint\": \"активно\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adain\",\n      \"localized\": \"Adain\",\n      \"reload\": \"\",\n      \"hint\": \"Adain\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 1\",\n      \"localized\": \"адаптер 1\",\n      \"reload\": \"\",\n      \"hint\": \"адаптер 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 2\",\n      \"localized\": \"адаптер 2\",\n      \"reload\": \"\",\n      \"hint\": \"адаптер 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 3\",\n      \"localized\": \"адаптер 3\",\n      \"reload\": \"\",\n      \"hint\": \"адаптер 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 4\",\n      \"localized\": \"адаптер 4\",\n      \"reload\": \"\",\n      \"hint\": \"адаптер 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adaptive restore\",\n      \"localized\": \"адаптивное восстановление\",\n      \"reload\": \"\",\n      \"hint\": \"адаптивное восстановление\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"add text info\",\n      \"localized\": \"добавить текстовую информацию\",\n      \"reload\": \"\",\n      \"hint\": \"добавить текстовую информацию\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"add time info\",\n      \"localized\": \"добавить информацию о времени\",\n      \"reload\": \"\",\n      \"hint\": \"добавить информацию о времени\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"additional image browser folders\",\n      \"localized\": \"дополнительные папки браузера изображений\",\n      \"reload\": \"\",\n      \"hint\": \"дополнительные папки браузера изображений\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"additional postprocessing operations\",\n      \"localized\": \"дополнительные операции постобработки\",\n      \"reload\": \"\",\n      \"hint\": \"дополнительные операции постобработки\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"advanced options\",\n      \"localized\": \"расширенные настройки\",\n      \"reload\": \"\",\n      \"hint\": \"расширенные настройки\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"after\",\n      \"localized\": \"после\",\n      \"reload\": \"\",\n      \"hint\": \"после\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aggressive at step\",\n      \"localized\": \"агрессивный на шаге\",\n      \"reload\": \"\",\n      \"hint\": \"агрессивный на шаге\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alias\",\n      \"localized\": \"псевдоним\",\n      \"reload\": \"\",\n      \"hint\": \"псевдоним\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"all\",\n      \"localized\": \"все\",\n      \"reload\": \"\",\n      \"hint\": \"все\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"allowed aspect ratios\",\n      \"localized\": \"допустимые соотношения сторон\",\n      \"reload\": \"\",\n      \"hint\": \"допустимые соотношения сторон\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha\",\n      \"localized\": \"альфа\",\n      \"reload\": \"\",\n      \"hint\": \"альфа\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha block weight preset\",\n      \"localized\": \"пресет веса альфа-блока\",\n      \"reload\": \"\",\n      \"hint\": \"пресет веса альфа-блока\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha matting\",\n      \"localized\": \"альфа-матирование\",\n      \"reload\": \"\",\n      \"hint\": \"альфа-матирование\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha preset\",\n      \"localized\": \"альфа-пресет\",\n      \"reload\": \"\",\n      \"hint\": \"альфа-пресет\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha ratio\",\n      \"localized\": \"альфа-коэффициент\",\n      \"reload\": \"\",\n      \"hint\": \"альфа-коэффициент\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"amplify lut\",\n      \"localized\": \"усилить LUT\",\n      \"reload\": \"\",\n      \"hint\": \"усилить LUT\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"analyze\",\n      \"localized\": \"анализировать\",\n      \"reload\": \"\",\n      \"hint\": \"анализировать\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"anchor settings\",\n      \"localized\": \"настройки привязки\",\n      \"reload\": \"\",\n      \"hint\": \"настройки привязки\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"animateddiff\",\n      \"localized\": \"AnimatedDiff\",\n      \"reload\": \"\",\n      \"hint\": \"AnimatedDiff\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"answer\",\n      \"localized\": \"ответ\",\n      \"reload\": \"\",\n      \"hint\": \"ответ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aot_ts_nvfuser\",\n      \"localized\": \"aot_ts_nvfuser\",\n      \"reload\": \"\",\n      \"hint\": \"aot_ts_nvfuser\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"appearance\",\n      \"localized\": \"внешний вид\",\n      \"reload\": \"\",\n      \"hint\": \"внешний вид\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append caption files\",\n      \"localized\": \"добавить файлы подписей\",\n      \"reload\": \"\",\n      \"hint\": \"добавить файлы подписей\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append image info json file\",\n      \"localized\": \"добавить JSON-файл информации об изображении\",\n      \"reload\": \"\",\n      \"hint\": \"добавить JSON-файл информации об изображении\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append interrogated prompt at each iteration\",\n      \"localized\": \"добавлять проинтеррогированный запрос на каждой итерации\",\n      \"reload\": \"\",\n      \"hint\": \"добавлять проинтеррогированный запрос на каждой итерации\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply color correction\",\n      \"localized\": \"применить коррекцию цвета\",\n      \"reload\": \"\",\n      \"hint\": \"применить коррекцию цвета\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply filter\",\n      \"localized\": \"применить фильтр\",\n      \"reload\": \"\",\n      \"hint\": \"применить фильтр\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply linfusion distillation on load\",\n      \"localized\": \"применить дистилляцию Linfusion при загрузке\",\n      \"reload\": \"\",\n      \"hint\": \"применить дистилляцию Linfusion при загрузке\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply mask as overlay\",\n      \"localized\": \"применить маску как наложение\",\n      \"reload\": \"\",\n      \"hint\": \"применить маску как наложение\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply msw-msa\",\n      \"localized\": \"применить MSW-MSA\",\n      \"reload\": \"\",\n      \"hint\": \"применить MSW-MSA\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply rau-net\",\n      \"localized\": \"применить RAU-Net\",\n      \"reload\": \"\",\n      \"hint\": \"применить RAU-Net\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply to model\",\n      \"localized\": \"применить к модели\",\n      \"reload\": \"\",\n      \"hint\": \"применить к модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"artists\",\n      \"localized\": \"художники\",\n      \"reload\": \"\",\n      \"hint\": \"художники\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"atiadlxx (amd only)\",\n      \"localized\": \"atiadlxx (только AMD)\",\n      \"reload\": \"\",\n      \"hint\": \"atiadlxx (только AMD)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention\",\n      \"localized\": \"внимание\",\n      \"reload\": \"\",\n      \"hint\": \"внимание\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention adain\",\n      \"localized\": \"внимание Adain\",\n      \"reload\": \"\",\n      \"hint\": \"внимание Adain\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention cache enabled\",\n      \"localized\": \"кэш внимания включен\",\n      \"reload\": \"\",\n      \"hint\": \"кэш внимания включен\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention chunking threshold\",\n      \"localized\": \"порог разбиения внимания\",\n      \"reload\": \"\",\n      \"hint\": \"порог разбиения внимания\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention kv chunk size\",\n      \"localized\": \"размер блока KV внимания\",\n      \"reload\": \"\",\n      \"hint\": \"размер блока KV внимания\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention query chunk size\",\n      \"localized\": \"размер блока запроса внимания\",\n      \"reload\": \"\",\n      \"hint\": \"размер блока запроса внимания\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto\",\n      \"localized\": \"авто\",\n      \"reload\": \"\",\n      \"hint\": \"авто\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto apply\",\n      \"localized\": \"автоприменение\",\n      \"reload\": \"\",\n      \"hint\": \"автоприменение\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-convert sd15 embeddings to sdxl\",\n      \"localized\": \"автоматическое преобразование встраиваний SD1.5 в SDXL\",\n      \"reload\": \"\",\n      \"hint\": \"автоматическое преобразование встраиваний SD1.5 в SDXL\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-mask\",\n      \"localized\": \"авто-маска\",\n      \"reload\": \"\",\n      \"hint\": \"авто-маска\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-segment\",\n      \"localized\": \"авто-сегмент\",\n      \"reload\": \"\",\n      \"hint\": \"авто-сегмент\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"autolaunch browser upon startup\",\n      \"localized\": \"автоматический запуск браузера при старте\",\n      \"reload\": \"\",\n      \"hint\": \"автоматический запуск браузера при старте\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"automatically determine rank\",\n      \"localized\": \"автоматически определить ранг\",\n      \"reload\": \"\",\n      \"hint\": \"автоматически определить ранг\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"autorank ratio\",\n      \"localized\": \"соотношение авторанга\",\n      \"reload\": \"\",\n      \"hint\": \"соотношение авторанга\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"available networks\",\n      \"localized\": \"доступные сети\",\n      \"reload\": \"\",\n      \"hint\": \"доступные сети\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"backend\",\n      \"localized\": \"бэкенд\",\n      \"reload\": \"\",\n      \"hint\": \"бэкенд\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"backend storage\",\n      \"localized\": \"хранилище бэкенда\",\n      \"reload\": \"\",\n      \"hint\": \"хранилище бэкенда\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"background threshold\",\n      \"localized\": \"порог фона\",\n      \"reload\": \"\",\n      \"hint\": \"порог фона\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced\",\n      \"localized\": \"сбалансировано\",\n      \"reload\": \"\",\n      \"hint\": \"сбалансировано\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload cpu high watermark\",\n      \"localized\": \"сбалансированный перенос, верхний порог ЦП\",\n      \"reload\": \"\",\n      \"hint\": \"сбалансированный перенос, верхний порог ЦП\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload gpu high watermark\",\n      \"localized\": \"сбалансированный перенос, верхний порог ГПУ\",\n      \"reload\": \"\",\n      \"hint\": \"сбалансированный перенос, верхний порог ГПУ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload gpu low watermark\",\n      \"localized\": \"сбалансированный перенос, нижний порог ГПУ\",\n      \"reload\": \"\",\n      \"hint\": \"сбалансированный перенос, нижний порог ГПУ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"base\",\n      \"localized\": \"базовый\",\n      \"reload\": \"\",\n      \"hint\": \"базовый\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch caption\",\n      \"localized\": \"пакетная подпись\",\n      \"reload\": \"\",\n      \"hint\": \"пакетная подпись\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch input directory\",\n      \"localized\": \"директория пакетного ввода\",\n      \"reload\": \"\",\n      \"hint\": \"директория пакетного ввода\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch interogate\",\n      \"localized\": \"пакетный опрос\",\n      \"reload\": \"\",\n      \"hint\": \"пакетный опрос\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch interrogate\",\n      \"localized\": \"пакетный опрос\",\n      \"reload\": \"\",\n      \"hint\": \"пакетный опрос\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch mask directory\",\n      \"localized\": \"директория пакетных масок\",\n      \"reload\": \"\",\n      \"hint\": \"директория пакетных масок\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch matrix-matrix\",\n      \"localized\": \"пакетная матрица-матрица\",\n      \"reload\": \"\",\n      \"hint\": \"пакетная матрица-матрица\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch mode uses sequential seeds\",\n      \"localized\": \"пакетный режим использует последовательные сиды\",\n      \"reload\": \"\",\n      \"hint\": \"пакетный режим использует последовательные сиды\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch output directory\",\n      \"localized\": \"директория пакетного вывода\",\n      \"reload\": \"\",\n      \"hint\": \"директория пакетного вывода\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch uses original name\",\n      \"localized\": \"пакет использует исходное имя\",\n      \"reload\": \"\",\n      \"hint\": \"пакет использует исходное имя\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bdia ddim\",\n      \"localized\": \"BDIA DDIM\",\n      \"reload\": \"\",\n      \"hint\": \"BDIA DDIM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"before\",\n      \"localized\": \"до\",\n      \"reload\": \"\",\n      \"hint\": \"до\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"benchmark level\",\n      \"localized\": \"уровень бенчмарка\",\n      \"reload\": \"\",\n      \"hint\": \"уровень бенчмарка\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"benchmark steps\",\n      \"localized\": \"шаги бенчмарка\",\n      \"reload\": \"\",\n      \"hint\": \"шаги бенчмарка\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta block weight preset\",\n      \"localized\": \"пресет веса бета-блока\",\n      \"reload\": \"\",\n      \"hint\": \"пресет веса бета-блока\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta end\",\n      \"localized\": \"бета-конец\",\n      \"reload\": \"\",\n      \"hint\": \"бета-конец\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta ratio\",\n      \"localized\": \"бета-коэффициент\",\n      \"reload\": \"\",\n      \"hint\": \"бета-коэффициент\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta schedule\",\n      \"localized\": \"бета-расписание\",\n      \"reload\": \"\",\n      \"hint\": \"бета-расписание\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta start\",\n      \"localized\": \"бета-старт\",\n      \"reload\": \"\",\n      \"hint\": \"бета-старт\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bh1\",\n      \"localized\": \"bh1\",\n      \"reload\": \"\",\n      \"hint\": \"bh1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bh2\",\n      \"localized\": \"bh2\",\n      \"reload\": \"\",\n      \"hint\": \"bh2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"block\",\n      \"localized\": \"блок\",\n      \"reload\": \"\",\n      \"hint\": \"блок\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"block skip range\",\n      \"localized\": \"диапазон пропуска блоков\",\n      \"reload\": \"\",\n      \"hint\": \"диапазон пропуска блоков\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"blur\",\n      \"localized\": \"размытие\",\n      \"reload\": \"\",\n      \"hint\": \"размытие\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"body\",\n      \"localized\": \"тело\",\n      \"reload\": \"\",\n      \"hint\": \"тело\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"boost\",\n      \"localized\": \"усиление\",\n      \"reload\": \"\",\n      \"hint\": \"усиление\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"brightness\",\n      \"localized\": \"яркость\",\n      \"reload\": \"\",\n      \"hint\": \"яркость\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cache model\",\n      \"localized\": \"кэшировать модель\",\n      \"reload\": \"\",\n      \"hint\": \"кэшировать модель\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cache text encoder results\",\n      \"localized\": \"кэшировать результаты текстового кодировщика\",\n      \"reload\": \"\",\n      \"hint\": \"кэшировать результаты текстового кодировщика\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"canny\",\n      \"localized\": \"канни\",\n      \"reload\": \"\",\n      \"hint\": \"канни\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"caption\",\n      \"localized\": \"описание\",\n      \"reload\": \"\",\n      \"hint\": \"описание\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"caption model\",\n      \"localized\": \"модель описания\",\n      \"reload\": \"\",\n      \"hint\": \"модель описания\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"center\",\n      \"localized\": \"центр\",\n      \"reload\": \"\",\n      \"hint\": \"центр\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change log\",\n      \"localized\": \"журнал изменений\",\n      \"reload\": \"\",\n      \"hint\": \"журнал изменений\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change model\",\n      \"localized\": \"сменить модель\",\n      \"reload\": \"\",\n      \"hint\": \"сменить модель\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change rate\",\n      \"localized\": \"скорость изменения\",\n      \"reload\": \"\",\n      \"hint\": \"скорость изменения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change reference\",\n      \"localized\": \"изменить референс\",\n      \"reload\": \"\",\n      \"hint\": \"изменить референс\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change refiner\",\n      \"localized\": \"сменить рефайнер\",\n      \"reload\": \"\",\n      \"hint\": \"сменить рефайнер\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change vae\",\n      \"localized\": \"сменить VAE\",\n      \"reload\": \"\",\n      \"hint\": \"сменить VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"channels last\",\n      \"localized\": \"каналы в конце\",\n      \"reload\": \"\",\n      \"hint\": \"каналы в конце\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"check alternative hash\",\n      \"localized\": \"проверить альтернативный хэш\",\n      \"reload\": \"\",\n      \"hint\": \"проверить альтернативный хэш\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"check for updates\",\n      \"localized\": \"проверить обновления\",\n      \"reload\": \"\",\n      \"hint\": \"проверить обновления\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"check status\",\n      \"localized\": \"проверить статус\",\n      \"reload\": \"\",\n      \"hint\": \"проверить статус\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"chunk size\",\n      \"localized\": \"размер чанка\",\n      \"reload\": \"\",\n      \"hint\": \"размер чанка\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"civitai model type\",\n      \"localized\": \"тип модели CivitAI\",\n      \"reload\": \"\",\n      \"hint\": \"тип модели CivitAI\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"civitai token\",\n      \"localized\": \"токен CivitAI\",\n      \"reload\": \"\",\n      \"hint\": \"токен CivitAI\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ck flash attention\",\n      \"localized\": \"CK Flash Attention\",\n      \"reload\": \"\",\n      \"hint\": \"CK Flash Attention\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ckpt\",\n      \"localized\": \"ckpt\",\n      \"reload\": \"\",\n      \"hint\": \"ckpt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cleanup temporary folder on startup\",\n      \"localized\": \"очищать временную папку при запуске\",\n      \"reload\": \"\",\n      \"hint\": \"очищать временную папку при запуске\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip model\",\n      \"localized\": \"модель CLIP\",\n      \"reload\": \"\",\n      \"hint\": \"модель CLIP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: chunk size\",\n      \"localized\": \"CLIP: размер чанка\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: размер чанка\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: default captioner\",\n      \"localized\": \"CLIP: капшнер по умолчанию\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: капшнер по умолчанию\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: default mode\",\n      \"localized\": \"CLIP: режим по умолчанию\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: режим по умолчанию\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: default model\",\n      \"localized\": \"CLIP: модель по умолчанию\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: модель по умолчанию\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: intermediate flavors\",\n      \"localized\": \"CLIP: промежуточные варианты\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: промежуточные варианты\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: max flavors\",\n      \"localized\": \"CLIP: макс. вариантов\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: макс. вариантов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: max length\",\n      \"localized\": \"CLIP: макс. длина\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: макс. длина\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: min flavors\",\n      \"localized\": \"CLIP: мин. вариантов\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: мин. вариантов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: min length\",\n      \"localized\": \"CLIP: мин. длина\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: мин. длина\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: num beams\",\n      \"localized\": \"CLIP: количество лучей\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: количество лучей\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"close\",\n      \"localized\": \"закрыть\",\n      \"reload\": \"\",\n      \"hint\": \"закрыть\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cmsi\",\n      \"localized\": \"cmsi\",\n      \"reload\": \"\",\n      \"hint\": \"cmsi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn end\",\n      \"localized\": \"конец CN\",\n      \"reload\": \"\",\n      \"hint\": \"конец CN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn mode\",\n      \"localized\": \"режим CN\",\n      \"reload\": \"\",\n      \"hint\": \"режим CN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn start\",\n      \"localized\": \"начало CN\",\n      \"reload\": \"\",\n      \"hint\": \"начало CN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn strength\",\n      \"localized\": \"сила CN\",\n      \"reload\": \"\",\n      \"hint\": \"сила CN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn tiles\",\n      \"localized\": \"плитки CN\",\n      \"reload\": \"\",\n      \"hint\": \"плитки CN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"coarse\",\n      \"localized\": \"грубый\",\n      \"reload\": \"\",\n      \"hint\": \"грубый\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color\",\n      \"localized\": \"цвет\",\n      \"reload\": \"\",\n      \"hint\": \"цвет\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color grading\",\n      \"localized\": \"цветокоррекция\",\n      \"reload\": \"\",\n      \"hint\": \"цветокоррекция\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color map\",\n      \"localized\": \"цветовая карта\",\n      \"reload\": \"\",\n      \"hint\": \"цветовая карта\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color variation\",\n      \"localized\": \"вариация цвета\",\n      \"reload\": \"\",\n      \"hint\": \"вариация цвета\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"colormap\",\n      \"localized\": \"цветовая карта\",\n      \"reload\": \"\",\n      \"hint\": \"цветовая карта\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"columns\",\n      \"localized\": \"столбцы\",\n      \"reload\": \"\",\n      \"hint\": \"столбцы\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"comma\",\n      \"localized\": \"запятая\",\n      \"reload\": \"\",\n      \"hint\": \"запятая\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"comma separated list with optional strength per lora\",\n      \"localized\": \"список, разделенный запятыми, с опциональной силой для каждой Lora\",\n      \"reload\": \"\",\n      \"hint\": \"список, разделенный запятыми, с опциональной силой для каждой Lora\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"compact view\",\n      \"localized\": \"компактный вид\",\n      \"reload\": \"\",\n      \"hint\": \"компактный вид\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"compel\",\n      \"localized\": \"Compel\",\n      \"reload\": \"\",\n      \"hint\": \"Compel\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"composite\",\n      \"localized\": \"композит\",\n      \"reload\": \"\",\n      \"hint\": \"композит\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"compress ratio\",\n      \"localized\": \"коэффициент сжатия\",\n      \"reload\": \"\",\n      \"hint\": \"коэффициент сжатия\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"concept tokens\",\n      \"localized\": \"токены концептов\",\n      \"reload\": \"\",\n      \"hint\": \"токены концептов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context\",\n      \"localized\": \"контекст\",\n      \"reload\": \"\",\n      \"hint\": \"контекст\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context after\",\n      \"localized\": \"контекст после\",\n      \"reload\": \"\",\n      \"hint\": \"контекст после\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context before\",\n      \"localized\": \"контекст до\",\n      \"reload\": \"\",\n      \"hint\": \"контекст до\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context mask\",\n      \"localized\": \"маска контекста\",\n      \"reload\": \"\",\n      \"hint\": \"маска контекста\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"contrast\",\n      \"localized\": \"контраст\",\n      \"reload\": \"\",\n      \"hint\": \"контраст\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control factor\",\n      \"localized\": \"фактор контроля\",\n      \"reload\": \"\",\n      \"hint\": \"фактор контроля\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control override denoise strength\",\n      \"localized\": \"контроль переопределения силы шумоподавления\",\n      \"reload\": \"\",\n      \"hint\": \"контроль переопределения силы шумоподавления\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control preprocess input images\",\n      \"localized\": \"контроль предобработки входных изображений\",\n      \"reload\": \"\",\n      \"hint\": \"контроль предобработки входных изображений\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 1\",\n      \"localized\": \"Control-LLLite блок 1\",\n      \"reload\": \"\",\n      \"hint\": \"Control-LLLite блок 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 2\",\n      \"localized\": \"Control-LLLite блок 2\",\n      \"reload\": \"\",\n      \"hint\": \"Control-LLLite блок 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 3\",\n      \"localized\": \"Control-LLLite блок 3\",\n      \"reload\": \"\",\n      \"hint\": \"Control-LLLite блок 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 4\",\n      \"localized\": \"Control-LLLite блок 4\",\n      \"reload\": \"\",\n      \"hint\": \"Control-LLLite блок 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet\",\n      \"localized\": \"ControlNet\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 1\",\n      \"localized\": \"ControlNet блок 1\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet блок 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 2\",\n      \"localized\": \"ControlNet блок 2\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet блок 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 3\",\n      \"localized\": \"ControlNet блок 3\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet блок 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 4\",\n      \"localized\": \"ControlNet блок 4\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet блок 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs\",\n      \"localized\": \"ControlNet-XS\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet-XS\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 1\",\n      \"localized\": \"ControlNet-XS блок 1\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet-XS блок 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 2\",\n      \"localized\": \"ControlNet-XS блок 2\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet-XS блок 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 3\",\n      \"localized\": \"ControlNet-XS блок 3\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet-XS блок 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 4\",\n      \"localized\": \"ControlNet-XS блок 4\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet-XS блок 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"correction mode\",\n      \"localized\": \"режим коррекции\",\n      \"reload\": \"\",\n      \"hint\": \"режим коррекции\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine background\",\n      \"localized\": \"косинусный фон\",\n      \"reload\": \"\",\n      \"hint\": \"косинусный фон\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale\",\n      \"localized\": \"косинусный масштаб\",\n      \"reload\": \"\",\n      \"hint\": \"косинусный масштаб\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale 1\",\n      \"localized\": \"косинусный масштаб 1\",\n      \"reload\": \"\",\n      \"hint\": \"косинусный масштаб 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale 2\",\n      \"localized\": \"косинусный масштаб 2\",\n      \"reload\": \"\",\n      \"hint\": \"косинусный масштаб 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale 3\",\n      \"localized\": \"косинусный масштаб 3\",\n      \"reload\": \"\",\n      \"hint\": \"косинусный масштаб 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"create image info text file\",\n      \"localized\": \"создать текстовый файл информации об изображении\",\n      \"reload\": \"\",\n      \"hint\": \"создать текстовый файл информации об изображении\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"create video\",\n      \"localized\": \"создать видео\",\n      \"reload\": \"\",\n      \"hint\": \"создать видео\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"create zip archive\",\n      \"localized\": \"создать ZIP-архив\",\n      \"reload\": \"\",\n      \"hint\": \"создать ZIP-архив\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cross-attention\",\n      \"localized\": \"кросс-внимание\",\n      \"reload\": \"\",\n      \"hint\": \"кросс-внимание\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cudagraphs\",\n      \"localized\": \"CUDA-графы\",\n      \"reload\": \"\",\n      \"hint\": \"CUDA-графы\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cudamallocasync\",\n      \"localized\": \"cudaMallocAsync\",\n      \"reload\": \"\",\n      \"hint\": \"cudaMallocAsync\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"custom pipeline\",\n      \"localized\": \"пользовательский пайплайн\",\n      \"reload\": \"\",\n      \"hint\": \"пользовательский пайплайн\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dark\",\n      \"localized\": \"тёмный\",\n      \"reload\": \"\",\n      \"hint\": \"тёмный\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dc solver\",\n      \"localized\": \"решатель DC\",\n      \"reload\": \"\",\n      \"hint\": \"решатель DC\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ddpm\",\n      \"localized\": \"DDPM\",\n      \"reload\": \"\",\n      \"hint\": \"DDPM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"debug info\",\n      \"localized\": \"информация для отладки\",\n      \"reload\": \"\",\n      \"hint\": \"информация для отладки\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"decode\",\n      \"localized\": \"декодировать\",\n      \"reload\": \"\",\n      \"hint\": \"декодировать\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"decode chunks\",\n      \"localized\": \"декодировать фрагменты\",\n      \"reload\": \"\",\n      \"hint\": \"декодировать фрагменты\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deep-cache\",\n      \"localized\": \"дип-кэш\",\n      \"reload\": \"\",\n      \"hint\": \"дип-кэш\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru\",\n      \"localized\": \"дипбуру\",\n      \"reload\": \"\",\n      \"hint\": \"дипбуру\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: escape brackets\",\n      \"localized\": \"дипбуру: экранировать скобки\",\n      \"reload\": \"\",\n      \"hint\": \"дипбуру: экранировать скобки\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: exclude tags\",\n      \"localized\": \"дипбуру: исключить теги\",\n      \"reload\": \"\",\n      \"hint\": \"дипбуру: исключить теги\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: include scores in results\",\n      \"localized\": \"дипбуру: включить оценки в результаты\",\n      \"reload\": \"\",\n      \"hint\": \"дипбуру: включить оценки в результаты\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: max tags\",\n      \"localized\": \"дипбуру: макс. тегов\",\n      \"reload\": \"\",\n      \"hint\": \"дипбуру: макс. тегов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: score threshold\",\n      \"localized\": \"дипбуру: порог оценки\",\n      \"reload\": \"\",\n      \"hint\": \"дипбуру: порог оценки\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: sort alphabetically\",\n      \"localized\": \"дипбуру: сортировать по алфавиту\",\n      \"reload\": \"\",\n      \"hint\": \"дипбуру: сортировать по алфавиту\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: use spaces for tags\",\n      \"localized\": \"дипбуру: использовать пробелы для тегов\",\n      \"reload\": \"\",\n      \"hint\": \"дипбуру: использовать пробелы для тегов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepcache cache interval\",\n      \"localized\": \"интервал кэширования дипкэш\",\n      \"reload\": \"\",\n      \"hint\": \"интервал кэширования дипкэш\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"default\",\n      \"localized\": \"по умолчанию\",\n      \"reload\": \"\",\n      \"hint\": \"по умолчанию\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deis\",\n      \"localized\": \"деис\",\n      \"reload\": \"\",\n      \"hint\": \"деис\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"denoising batch size\",\n      \"localized\": \"размер пакета шумоподавления\",\n      \"reload\": \"\",\n      \"hint\": \"размер пакета шумоподавления\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"denoising steps\",\n      \"localized\": \"шаги шумоподавления\",\n      \"reload\": \"\",\n      \"hint\": \"шаги шумоподавления\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth and normal\",\n      \"localized\": \"глубина и нормаль\",\n      \"reload\": \"\",\n      \"hint\": \"глубина и нормаль\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth anything\",\n      \"localized\": \"глубина всё\",\n      \"reload\": \"\",\n      \"hint\": \"глубина всё\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth map\",\n      \"localized\": \"карта глубины\",\n      \"reload\": \"\",\n      \"hint\": \"карта глубины\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth threshold\",\n      \"localized\": \"порог глубины\",\n      \"reload\": \"\",\n      \"hint\": \"порог глубины\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"description\",\n      \"localized\": \"описание\",\n      \"reload\": \"\",\n      \"hint\": \"описание\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"details\",\n      \"localized\": \"детали\",\n      \"reload\": \"\",\n      \"hint\": \"детали\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deterministic mode\",\n      \"localized\": \"детерминированный режим\",\n      \"reload\": \"\",\n      \"hint\": \"детерминированный режим\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"device info\",\n      \"localized\": \"информация об устройстве\",\n      \"reload\": \"\",\n      \"hint\": \"информация об устройстве\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"diffusers\",\n      \"localized\": \"диффузоры\",\n      \"reload\": \"\",\n      \"hint\": \"диффузоры\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dilate\",\n      \"localized\": \"расширение\",\n      \"reload\": \"\",\n      \"hint\": \"расширение\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dilate tau\",\n      \"localized\": \"расширение тау\",\n      \"reload\": \"\",\n      \"hint\": \"расширение тау\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"directml retry ops for nan\",\n      \"localized\": \"directml повторять операции для nan\",\n      \"reload\": \"\",\n      \"hint\": \"directml повторять операции для nan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"directory for temporary images; leave empty for default\",\n      \"localized\": \"каталог для временных изображений; оставьте пустым для значения по умолчанию\",\n      \"reload\": \"\",\n      \"hint\": \"каталог для временных изображений; оставьте пустым для значения по умолчанию\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disable accelerate\",\n      \"localized\": \"отключить ускорение\",\n      \"reload\": \"\",\n      \"hint\": \"отключить ускорение\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disable conditional batching\",\n      \"localized\": \"отключить условную пакетизацию\",\n      \"reload\": \"\",\n      \"hint\": \"отключить условную пакетизацию\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disabled\",\n      \"localized\": \"отключено\",\n      \"reload\": \"\",\n      \"hint\": \"отключено\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"discard penultimate sigma\",\n      \"localized\": \"отбросить предпоследнюю сигму\",\n      \"reload\": \"\",\n      \"hint\": \"отбросить предпоследнюю сигму\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"distance threshold\",\n      \"localized\": \"порог расстояния\",\n      \"reload\": \"\",\n      \"hint\": \"порог расстояния\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"do not change selected model when reading generation parameters\",\n      \"localized\": \"не менять выбранную модель при чтении параметров генерации\",\n      \"reload\": \"\",\n      \"hint\": \"не менять выбранную модель при чтении параметров генерации\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"do not display video output in ui\",\n      \"localized\": \"не отображать видеовыход в пользовательском интерфейсе\",\n      \"reload\": \"\",\n      \"hint\": \"не отображать видеовыход в пользовательском интерфейсе\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"down\",\n      \"localized\": \"вниз\",\n      \"reload\": \"\",\n      \"hint\": \"вниз\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download\",\n      \"localized\": \"скачать\",\n      \"reload\": \"\",\n      \"hint\": \"скачать\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download model\",\n      \"localized\": \"скачать модель\",\n      \"reload\": \"\",\n      \"hint\": \"скачать модель\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download path\",\n      \"localized\": \"путь загрузки\",\n      \"reload\": \"\",\n      \"hint\": \"путь загрузки\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download updates\",\n      \"localized\": \"скачать обновления\",\n      \"reload\": \"\",\n      \"hint\": \"скачать обновления\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"downscale high resolution live previews\",\n      \"localized\": \"уменьшить масштаб живых превью высокого разрешения\",\n      \"reload\": \"\",\n      \"hint\": \"уменьшить масштаб живых превью высокого разрешения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm sde\",\n      \"localized\": \"дпм сде\",\n      \"reload\": \"\",\n      \"hint\": \"дпм сде\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++\",\n      \"localized\": \"дпм++\",\n      \"reload\": \"\",\n      \"hint\": \"дпм++\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 1s\",\n      \"localized\": \"дпм++ 1с\",\n      \"reload\": \"\",\n      \"hint\": \"дпм++ 1с\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m\",\n      \"localized\": \"дпм++ 2м\",\n      \"reload\": \"\",\n      \"hint\": \"дпм++ 2м\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m edm\",\n      \"localized\": \"дпм++ 2м эдм\",\n      \"reload\": \"\",\n      \"hint\": \"дпм++ 2м эдм\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m inverse\",\n      \"localized\": \"дпм++ 2м обратный\",\n      \"reload\": \"\",\n      \"hint\": \"дпм++ 2м обратный\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m sde\",\n      \"localized\": \"дпм++ 2м сде\",\n      \"reload\": \"\",\n      \"hint\": \"дпм++ 2м сде\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 3m\",\n      \"localized\": \"дпм++ 3м\",\n      \"reload\": \"\",\n      \"hint\": \"дпм++ 3м\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 3m inverse\",\n      \"localized\": \"дпм++ 3м обратный\",\n      \"reload\": \"\",\n      \"hint\": \"дпм++ 3м обратный\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ cosine\",\n      \"localized\": \"дпм++ косинус\",\n      \"reload\": \"\",\n      \"hint\": \"дпм++ косинус\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ inverse\",\n      \"localized\": \"дпм++ обратный\",\n      \"reload\": \"\",\n      \"hint\": \"дпм++ обратный\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ sde\",\n      \"localized\": \"дпм++ сде\",\n      \"reload\": \"\",\n      \"hint\": \"дпм++ сде\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2 flowmatch\",\n      \"localized\": \"дпм2 флоуматч\",\n      \"reload\": \"\",\n      \"hint\": \"дпм2 флоуматч\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2m flowmatch\",\n      \"localized\": \"дпм2++ 2м флоуматч\",\n      \"reload\": \"\",\n      \"hint\": \"дпм2++ 2м флоуматч\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2m sde flowmatch\",\n      \"localized\": \"дпм2++ 2м сде флоуматч\",\n      \"reload\": \"\",\n      \"hint\": \"дпм2++ 2м сде флоуматч\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2s flowmatch\",\n      \"localized\": \"дпм2++ 2с флоуматч\",\n      \"reload\": \"\",\n      \"hint\": \"дпм2++ 2с флоуматч\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 3m sde flowmatch\",\n      \"localized\": \"дпм2++ 3м сде флоуматч\",\n      \"reload\": \"\",\n      \"hint\": \"дпм2++ 3м сде флоуматч\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ sde flowmatch\",\n      \"localized\": \"дпм2++ сде флоуматч\",\n      \"reload\": \"\",\n      \"hint\": \"дпм2++ сде флоуматч\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2a flowmatch\",\n      \"localized\": \"дпм2а флоуматч\",\n      \"reload\": \"\",\n      \"hint\": \"дпм2а флоуматч\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"draw legend\",\n      \"localized\": \"рисовать легенду\",\n      \"reload\": \"\",\n      \"hint\": \"рисовать легенду\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dropdown\",\n      \"localized\": \"выпадающий список\",\n      \"reload\": \"\",\n      \"hint\": \"выпадающий список\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"duration\",\n      \"localized\": \"длительность\",\n      \"reload\": \"\",\n      \"hint\": \"длительность\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dwpose\",\n      \"localized\": \"двпос\",\n      \"reload\": \"\",\n      \"hint\": \"двпос\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic\",\n      \"localized\": \"динамический\",\n      \"reload\": \"\",\n      \"hint\": \"динамический\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention\",\n      \"localized\": \"динамическое внимание\",\n      \"reload\": \"\",\n      \"hint\": \"динамическое внимание\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention slicing rate in gb\",\n      \"localized\": \"скорость нарезки динамического внимания в ГБ\",\n      \"reload\": \"\",\n      \"hint\": \"скорость нарезки динамического внимания в ГБ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention trigger rate in gb\",\n      \"localized\": \"скорость срабатывания динамического внимания в ГБ\",\n      \"reload\": \"\",\n      \"hint\": \"скорость срабатывания динамического внимания в ГБ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edge\",\n      \"localized\": \"край\",\n      \"reload\": \"\",\n      \"hint\": \"край\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edit start\",\n      \"localized\": \"начало редактирования\",\n      \"reload\": \"\",\n      \"hint\": \"начало редактирования\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edit stop\",\n      \"localized\": \"остановка редактирования\",\n      \"reload\": \"\",\n      \"hint\": \"остановка редактирования\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"embedded metadata\",\n      \"localized\": \"встроенные метаданные\",\n      \"reload\": \"\",\n      \"hint\": \"встроенные метаданные\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable embeddings support\",\n      \"localized\": \"включить поддержку эмбеддингов\",\n      \"reload\": \"\",\n      \"hint\": \"включить поддержку эмбеддингов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable file wildcards support\",\n      \"localized\": \"включить поддержку масок файлов\",\n      \"reload\": \"\",\n      \"hint\": \"включить поддержку масок файлов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable freeu\",\n      \"localized\": \"включить фриу\",\n      \"reload\": \"\",\n      \"hint\": \"включить фриу\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable teacache\",\n      \"localized\": \"включить тиакэш\",\n      \"reload\": \"\",\n      \"hint\": \"включить тиакэш\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable tonemap\",\n      \"localized\": \"включить тональную карту\",\n      \"reload\": \"\",\n      \"hint\": \"включить тональную карту\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable use of reference models\",\n      \"localized\": \"включить использование референсных моделей\",\n      \"reload\": \"\",\n      \"hint\": \"включить использование референсных моделей\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enabled\",\n      \"localized\": \"включено\",\n      \"reload\": \"\",\n      \"hint\": \"включено\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"encoder\",\n      \"localized\": \"кодировщик\",\n      \"reload\": \"\",\n      \"hint\": \"кодировщик\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"end\",\n      \"localized\": \"конец\",\n      \"reload\": \"\",\n      \"hint\": \"конец\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enhance prompt\",\n      \"localized\": \"улучшить промпт\",\n      \"reload\": \"\",\n      \"hint\": \"улучшить промпт\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ensemble size\",\n      \"localized\": \"размер ансамбля\",\n      \"reload\": \"\",\n      \"hint\": \"размер ансамбля\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"epsilon\",\n      \"localized\": \"эпсилон\",\n      \"reload\": \"\",\n      \"hint\": \"эпсилон\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"erode\",\n      \"localized\": \"эрозия\",\n      \"reload\": \"\",\n      \"hint\": \"эрозия\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"erode size\",\n      \"localized\": \"размер эрозии\",\n      \"reload\": \"\",\n      \"hint\": \"размер эрозии\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"eta\",\n      \"localized\": \"эта\",\n      \"reload\": \"\",\n      \"hint\": \"эта\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler\",\n      \"localized\": \"эйлер\",\n      \"reload\": \"\",\n      \"hint\": \"эйлер\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler edm\",\n      \"localized\": \"эйлер эдм\",\n      \"reload\": \"\",\n      \"hint\": \"эйлер эдм\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler flowmatch\",\n      \"localized\": \"эйлер флоуматч\",\n      \"reload\": \"\",\n      \"hint\": \"эйлер флоуматч\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler sgm\",\n      \"localized\": \"эйлер сгм\",\n      \"reload\": \"\",\n      \"hint\": \"эйлер сгм\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.cpu\",\n      \"localized\": \"поставщик выполнения.cpu\",\n      \"reload\": \"\",\n      \"hint\": \"поставщик выполнения.cpu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.cuda\",\n      \"localized\": \"поставщик выполнения.cuda\",\n      \"reload\": \"\",\n      \"hint\": \"поставщик выполнения.cuda\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.directml\",\n      \"localized\": \"поставщик выполнения.directml\",\n      \"reload\": \"\",\n      \"hint\": \"поставщик выполнения.directml\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.migraphx\",\n      \"localized\": \"поставщик выполнения.migraphx\",\n      \"reload\": \"\",\n      \"hint\": \"поставщик выполнения.migraphx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.openvino\",\n      \"localized\": \"поставщик выполнения.openvino\",\n      \"reload\": \"\",\n      \"hint\": \"поставщик выполнения.openvino\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.rocm\",\n      \"localized\": \"поставщик выполнения.rocm\",\n      \"reload\": \"\",\n      \"hint\": \"поставщик выполнения.rocm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"expandable segments\",\n      \"localized\": \"расширяемые сегменты\",\n      \"reload\": \"\",\n      \"hint\": \"расширяемые сегменты\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"exponential\",\n      \"localized\": \"экспоненциальный\",\n      \"reload\": \"\",\n      \"hint\": \"экспоненциальный\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"exposure\",\n      \"localized\": \"экспозиция\",\n      \"reload\": \"\",\n      \"hint\": \"экспозиция\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"extra noise multiplier for img2img\",\n      \"localized\": \"дополнительный множитель шума для img2img\",\n      \"reload\": \"\",\n      \"hint\": \"дополнительный множитель шума для img2img\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"extract lora\",\n      \"localized\": \"извлечь LoRA\",\n      \"reload\": \"\",\n      \"hint\": \"извлечь LoRA\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"face\",\n      \"localized\": \"лицо\",\n      \"reload\": \"\",\n      \"hint\": \"лицо\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"face confidence\",\n      \"localized\": \"уверенность лица\",\n      \"reload\": \"\",\n      \"hint\": \"уверенность лица\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"faceid model\",\n      \"localized\": \"модель FaceID\",\n      \"reload\": \"\",\n      \"hint\": \"модель FaceID\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fall-off exponent (lower=higher detail)\",\n      \"localized\": \"показатель спада (ниже = больше деталей)\",\n      \"reload\": \"\",\n      \"hint\": \"показатель спада (ниже = больше деталей)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"false\",\n      \"localized\": \"ложь\",\n      \"reload\": \"\",\n      \"hint\": \"ложь\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fast\",\n      \"localized\": \"быстрый\",\n      \"reload\": \"\",\n      \"hint\": \"быстрый\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"file or folder with user-defined styles\",\n      \"localized\": \"файл или папка с пользовательскими стилями\",\n      \"reload\": \"\",\n      \"hint\": \"файл или папка с пользовательскими стилями\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"filename\",\n      \"localized\": \"имя файла\",\n      \"reload\": \"\",\n      \"hint\": \"имя файла\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"first-block cache enabled\",\n      \"localized\": \"кэш первого блока включен\",\n      \"reload\": \"\",\n      \"hint\": \"кэш первого блока включен\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fixed unet precision\",\n      \"localized\": \"фиксированная точность UNet\",\n      \"reload\": \"\",\n      \"hint\": \"фиксированная точность UNet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flash attention\",\n      \"localized\": \"Flash Attention\",\n      \"reload\": \"\",\n      \"hint\": \"Flash Attention\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flavors\",\n      \"localized\": \"варианты\",\n      \"reload\": \"\",\n      \"hint\": \"варианты\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flow shift\",\n      \"localized\": \"сдвиг потока\",\n      \"reload\": \"\",\n      \"hint\": \"сдвиг потока\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder\",\n      \"localized\": \"папка\",\n      \"reload\": \"\",\n      \"hint\": \"папка\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for control generate\",\n      \"localized\": \"папка для генерации Control\",\n      \"reload\": \"\",\n      \"hint\": \"папка для генерации Control\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for control grids\",\n      \"localized\": \"папка для сеток Control\",\n      \"reload\": \"\",\n      \"hint\": \"папка для сеток Control\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for disk offload\",\n      \"localized\": \"папка для выгрузки на диск\",\n      \"reload\": \"\",\n      \"hint\": \"папка для выгрузки на диск\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for huggingface cache\",\n      \"localized\": \"папка для кэша Hugging Face\",\n      \"reload\": \"\",\n      \"hint\": \"папка для кэша Hugging Face\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for image generate\",\n      \"localized\": \"папка для генерации изображений\",\n      \"reload\": \"\",\n      \"hint\": \"папка для генерации изображений\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for img2img grids\",\n      \"localized\": \"папка для сеток img2img\",\n      \"reload\": \"\",\n      \"hint\": \"папка для сеток img2img\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for init images\",\n      \"localized\": \"папка для начальных изображений\",\n      \"reload\": \"\",\n      \"hint\": \"папка для начальных изображений\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for manually saved images\",\n      \"localized\": \"папка для изображений, сохраненных вручную\",\n      \"reload\": \"\",\n      \"hint\": \"папка для изображений, сохраненных вручную\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for onnx cached models\",\n      \"localized\": \"папка для кэшированных моделей ONNX\",\n      \"reload\": \"\",\n      \"hint\": \"папка для кэшированных моделей ONNX\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for onnx conversion\",\n      \"localized\": \"папка для конвертации ONNX\",\n      \"reload\": \"\",\n      \"hint\": \"папка для конвертации ONNX\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for openvino cache\",\n      \"localized\": \"папка для кэша OpenVINO\",\n      \"reload\": \"\",\n      \"hint\": \"папка для кэша OpenVINO\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for processed images\",\n      \"localized\": \"папка для обработанных изображений\",\n      \"reload\": \"\",\n      \"hint\": \"папка для обработанных изображений\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for text generate\",\n      \"localized\": \"папка для генерации текста\",\n      \"reload\": \"\",\n      \"hint\": \"папка для генерации текста\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for tunable ops cache\",\n      \"localized\": \"папка для кэша настраиваемых операций\",\n      \"reload\": \"\",\n      \"hint\": \"папка для кэша настраиваемых операций\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for txt2img grids\",\n      \"localized\": \"папка для сеток txt2img\",\n      \"reload\": \"\",\n      \"hint\": \"папка для сеток txt2img\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for videos\",\n      \"localized\": \"папка для видео\",\n      \"reload\": \"\",\n      \"hint\": \"папка для видео\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with bsrgan models\",\n      \"localized\": \"папка с моделями BSRGAN\",\n      \"reload\": \"\",\n      \"hint\": \"папка с моделями BSRGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with chainner models\",\n      \"localized\": \"папка с моделями Chainner\",\n      \"reload\": \"\",\n      \"hint\": \"папка с моделями Chainner\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with clip models\",\n      \"localized\": \"папка с моделями CLIP\",\n      \"reload\": \"\",\n      \"hint\": \"папка с моделями CLIP\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with codeformer models\",\n      \"localized\": \"папка с моделями CodeFormer\",\n      \"reload\": \"\",\n      \"hint\": \"папка с моделями CodeFormer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with control models\",\n      \"localized\": \"папка с моделями Control\",\n      \"reload\": \"\",\n      \"hint\": \"папка с моделями Control\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with esrgan models\",\n      \"localized\": \"папка с моделями ESRGAN\",\n      \"reload\": \"\",\n      \"hint\": \"папка с моделями ESRGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with gfpgan models\",\n      \"localized\": \"папка с моделями GFPGAN\",\n      \"reload\": \"\",\n      \"hint\": \"папка с моделями GFPGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with huggingface models\",\n      \"localized\": \"папка с моделями Hugging Face\",\n      \"reload\": \"\",\n      \"hint\": \"папка с моделями Hugging Face\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with hypernetwork models\",\n      \"localized\": \"папка с моделями Hypernetwork\",\n      \"reload\": \"\",\n      \"hint\": \"папка с моделями Hypernetwork\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with ldsr models\",\n      \"localized\": \"папка с моделями LDSR\",\n      \"reload\": \"\",\n      \"hint\": \"папка с моделями LDSR\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with lora network(s)\",\n      \"localized\": \"папка с сетью(сетями) LoRA\",\n      \"reload\": \"\",\n      \"hint\": \"папка с сетью(сетями) LoRA\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with realesrgan models\",\n      \"localized\": \"папка с моделями Real-ESRGAN\",\n      \"reload\": \"\",\n      \"hint\": \"папка с моделями Real-ESRGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with scunet models\",\n      \"localized\": \"папка с моделями SCUNet\",\n      \"reload\": \"\",\n      \"hint\": \"папка с моделями SCUNet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with stable diffusion models\",\n      \"localized\": \"папка с моделями Stable Diffusion\",\n      \"reload\": \"\",\n      \"hint\": \"папка с моделями Stable Diffusion\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with swinir models\",\n      \"localized\": \"папка с моделями SwinIR\",\n      \"reload\": \"\",\n      \"hint\": \"папка с моделями SwinIR\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with text encoder files\",\n      \"localized\": \"папка с файлами текстового энкодера\",\n      \"reload\": \"\",\n      \"hint\": \"папка с файлами текстового энкодера\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with textual inversion embeddings\",\n      \"localized\": \"папка с встраиваниями Textual Inversion\",\n      \"reload\": \"\",\n      \"hint\": \"папка с встраиваниями Textual Inversion\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with unet files\",\n      \"localized\": \"папка с файлами UNet\",\n      \"reload\": \"\",\n      \"hint\": \"папка с файлами UNet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with user-defined wildcards\",\n      \"localized\": \"папка с пользовательскими шаблонами\",\n      \"reload\": \"\",\n      \"hint\": \"папка с пользовательскими шаблонами\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with vae files\",\n      \"localized\": \"папка с файлами VAE\",\n      \"reload\": \"\",\n      \"hint\": \"папка с файлами VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with yolo models\",\n      \"localized\": \"папка с моделями YOLO\",\n      \"reload\": \"\",\n      \"hint\": \"папка с моделями YOLO\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font color\",\n      \"localized\": \"цвет шрифта\",\n      \"reload\": \"\",\n      \"hint\": \"цвет шрифта\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font file\",\n      \"localized\": \"файл шрифта\",\n      \"reload\": \"\",\n      \"hint\": \"файл шрифта\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font size\",\n      \"localized\": \"размер шрифта\",\n      \"reload\": \"\",\n      \"hint\": \"размер шрифта\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"force model eval\",\n      \"localized\": \"принудительная оценка модели\",\n      \"reload\": \"\",\n      \"hint\": \"принудительная оценка модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"foreground threshold\",\n      \"localized\": \"порог переднего плана\",\n      \"reload\": \"\",\n      \"hint\": \"порог переднего плана\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fp4\",\n      \"localized\": \"fp4\",\n      \"reload\": \"\",\n      \"hint\": \"fp4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"frame change sensitivity\",\n      \"localized\": \"чувствительность к изменению кадра\",\n      \"reload\": \"\",\n      \"hint\": \"чувствительность к изменению кадра\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"frames\",\n      \"localized\": \"кадры\",\n      \"reload\": \"\",\n      \"hint\": \"кадры\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeinit\",\n      \"localized\": \"FreeInit\",\n      \"reload\": \"\",\n      \"hint\": \"FreeInit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeu enabled\",\n      \"localized\": \"FreeU включен\",\n      \"reload\": \"\",\n      \"hint\": \"FreeU включен\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeu preset\",\n      \"localized\": \"пресет FreeU\",\n      \"reload\": \"\",\n      \"hint\": \"пресет FreeU\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"full vae\",\n      \"localized\": \"полный VAE\",\n      \"reload\": \"\",\n      \"hint\": \"полный VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"full-depth cudnn benchmark\",\n      \"localized\": \"полноценный тест cuDNN\",\n      \"reload\": \"\",\n      \"hint\": \"полноценный тест cuDNN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fuse strength\",\n      \"localized\": \"сила объединения\",\n      \"reload\": \"\",\n      \"hint\": \"сила объединения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fused projections\",\n      \"localized\": \"объединенные проекции\",\n      \"reload\": \"\",\n      \"hint\": \"объединенные проекции\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gamma\",\n      \"localized\": \"гамма\",\n      \"reload\": \"\",\n      \"hint\": \"гамма\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gamma corrected\",\n      \"localized\": \"скорректированный по гамме\",\n      \"reload\": \"\",\n      \"hint\": \"скорректированный по гамме\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gate step\",\n      \"localized\": \"шаг шлюза\",\n      \"reload\": \"\",\n      \"hint\": \"шаг шлюза\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gc threshold\",\n      \"localized\": \"порог GC\",\n      \"reload\": \"\",\n      \"hint\": \"порог GC\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"get changelog\",\n      \"localized\": \"получить список изменений\",\n      \"reload\": \"\",\n      \"hint\": \"получить список изменений\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gpu\",\n      \"localized\": \"gpu\",\n      \"reload\": \"\",\n      \"hint\": \"gpu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gradient\",\n      \"localized\": \"градиент\",\n      \"reload\": \"\",\n      \"hint\": \"градиент\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid background color\",\n      \"localized\": \"цвет фона сетки\",\n      \"reload\": \"\",\n      \"hint\": \"цвет фона сетки\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid margins\",\n      \"localized\": \"поля сетки\",\n      \"reload\": \"\",\n      \"hint\": \"поля сетки\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid sections:\",\n      \"localized\": \"разделы сетки:\",\n      \"reload\": \"\",\n      \"hint\": \"разделы сетки:\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"group size\",\n      \"localized\": \"размер группы\",\n      \"reload\": \"\",\n      \"hint\": \"размер группы\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance\",\n      \"localized\": \"направляющая\",\n      \"reload\": \"\",\n      \"hint\": \"направляющая\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance start\",\n      \"localized\": \"начало направляющей\",\n      \"reload\": \"\",\n      \"hint\": \"начало направляющей\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance stop\",\n      \"localized\": \"остановка направляющей\",\n      \"reload\": \"\",\n      \"hint\": \"остановка направляющей\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance strength\",\n      \"localized\": \"сила направляющей\",\n      \"reload\": \"\",\n      \"hint\": \"сила направляющей\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hands\",\n      \"localized\": \"руки\",\n      \"reload\": \"\",\n      \"hint\": \"руки\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hdr range\",\n      \"localized\": \"диапазон HDR\",\n      \"reload\": \"\",\n      \"hint\": \"диапазон HDR\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hed\",\n      \"localized\": \"hed\",\n      \"reload\": \"\",\n      \"hint\": \"hed\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height  after\",\n      \"localized\": \"высота после\",\n      \"reload\": \"\",\n      \"hint\": \"высота после\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height  before\",\n      \"localized\": \"высота до\",\n      \"reload\": \"\",\n      \"hint\": \"высота до\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height  mask\",\n      \"localized\": \"маска высоты\",\n      \"reload\": \"\",\n      \"hint\": \"маска высоты\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"heun\",\n      \"localized\": \"Heun\",\n      \"reload\": \"\",\n      \"hint\": \"Heun\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"heun flowmatch\",\n      \"localized\": \"Heun Flowmatch\",\n      \"reload\": \"\",\n      \"hint\": \"Heun Flowmatch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hidet\",\n      \"localized\": \"Hidet\",\n      \"reload\": \"\",\n      \"hint\": \"Hidet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"high threshold\",\n      \"localized\": \"высокий порог\",\n      \"reload\": \"\",\n      \"hint\": \"высокий порог\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hires pass only\",\n      \"localized\": \"только проход высокого разрешения\",\n      \"reload\": \"\",\n      \"hint\": \"только проход высокого разрешения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hq init latents\",\n      \"localized\": \"высококачественные начальные латенты\",\n      \"reload\": \"\",\n      \"hint\": \"высококачественные начальные латенты\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hue\",\n      \"localized\": \"hue\",\n      \"reload\": \"\",\n      \"hint\": \"hue\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"huggingface mirror\",\n      \"localized\": \"зеркало Hugging Face\",\n      \"reload\": \"\",\n      \"hint\": \"зеркало Hugging Face\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"huggingface token\",\n      \"localized\": \"токен Hugging Face\",\n      \"reload\": \"\",\n      \"hint\": \"токен Hugging Face\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hunyuan\",\n      \"localized\": \"Hunyuan\",\n      \"reload\": \"\",\n      \"hint\": \"Hunyuan\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"il\",\n      \"localized\": \"il\",\n      \"reload\": \"\",\n      \"hint\": \"il\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image height\",\n      \"localized\": \"высота изображения\",\n      \"reload\": \"\",\n      \"hint\": \"высота изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image quality\",\n      \"localized\": \"качество изображения\",\n      \"reload\": \"\",\n      \"hint\": \"качество изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image transparent color fill\",\n      \"localized\": \"заполнение прозрачным цветом изображения\",\n      \"reload\": \"\",\n      \"hint\": \"заполнение прозрачным цветом изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image watermark file\",\n      \"localized\": \"файл водяного знака изображения\",\n      \"reload\": \"\",\n      \"hint\": \"файл водяного знака изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image watermark position\",\n      \"localized\": \"положение водяного знака изображения\",\n      \"reload\": \"\",\n      \"hint\": \"положение водяного знака изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image width\",\n      \"localized\": \"ширина изображения\",\n      \"reload\": \"\",\n      \"hint\": \"ширина изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include images\",\n      \"localized\": \"включить изображения\",\n      \"reload\": \"\",\n      \"hint\": \"включить изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include main grid\",\n      \"localized\": \"включить основную сетку\",\n      \"reload\": \"\",\n      \"hint\": \"включить основную сетку\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include mask in outputs\",\n      \"localized\": \"включить маску в выходные данные\",\n      \"reload\": \"\",\n      \"hint\": \"включить маску в выходные данные\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include original image\",\n      \"localized\": \"включить исходное изображение\",\n      \"reload\": \"\",\n      \"hint\": \"включить исходное изображение\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include scores in results when available\",\n      \"localized\": \"включить баллы в результаты при наличии\",\n      \"reload\": \"\",\n      \"hint\": \"включить баллы в результаты при наличии\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include sub grids\",\n      \"localized\": \"включить подсетки\",\n      \"reload\": \"\",\n      \"hint\": \"включить подсетки\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inductor\",\n      \"localized\": \"индуктор\",\n      \"reload\": \"\",\n      \"hint\": \"индуктор\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"info\",\n      \"localized\": \"информация\",\n      \"reload\": \"\",\n      \"hint\": \"информация\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"info object\",\n      \"localized\": \"объект информации\",\n      \"reload\": \"\",\n      \"hint\": \"объект информации\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpaint\",\n      \"localized\": \"инпейнт\",\n      \"reload\": \"\",\n      \"hint\": \"инпейнт\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpaint masked only\",\n      \"localized\": \"инпейнт только замаскированных областей\",\n      \"reload\": \"\",\n      \"hint\": \"инпейнт только замаскированных областей\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpainting include greyscale mask in results\",\n      \"localized\": \"инпейнтинг: включить маску оттенков серого в результаты\",\n      \"reload\": \"\",\n      \"hint\": \"инпейнтинг: включить маску оттенков серого в результаты\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpainting include masked composite in results\",\n      \"localized\": \"инпейнтинг: включить составное изображение с маской в результаты\",\n      \"reload\": \"\",\n      \"hint\": \"инпейнтинг: включить составное изображение с маской в результаты\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"input model\",\n      \"localized\": \"входная модель\",\n      \"reload\": \"\",\n      \"hint\": \"входная модель\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"intermediates\",\n      \"localized\": \"промежуточные результаты\",\n      \"reload\": \"\",\n      \"hint\": \"промежуточные результаты\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"interpolate frames\",\n      \"localized\": \"интерполировать кадры\",\n      \"reload\": \"\",\n      \"hint\": \"интерполировать кадры\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"interpolation method\",\n      \"localized\": \"метод интерполяции\",\n      \"reload\": \"\",\n      \"hint\": \"метод интерполяции\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invert\",\n      \"localized\": \"инвертировать\",\n      \"reload\": \"\",\n      \"hint\": \"инвертировать\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invert mask\",\n      \"localized\": \"инвертировать маску\",\n      \"reload\": \"\",\n      \"hint\": \"инвертировать маску\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iou\",\n      \"localized\": \"iou\",\n      \"reload\": \"\",\n      \"hint\": \"iou\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ipex\",\n      \"localized\": \"ipex\",\n      \"reload\": \"\",\n      \"hint\": \"ipex\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ipndm\",\n      \"localized\": \"ipndm\",\n      \"reload\": \"\",\n      \"hint\": \"ipndm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"item edge blur\",\n      \"localized\": \"размытие края элемента\",\n      \"reload\": \"\",\n      \"hint\": \"размытие края элемента\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"item padding\",\n      \"localized\": \"отступ элемента\",\n      \"reload\": \"\",\n      \"hint\": \"отступ элемента\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iterate seed per line\",\n      \"localized\": \"итерировать сид для каждой строки\",\n      \"reload\": \"\",\n      \"hint\": \"итерировать сид для каждой строки\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iterations\",\n      \"localized\": \"итерации\",\n      \"reload\": \"\",\n      \"hint\": \"итерации\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"karras\",\n      \"localized\": \"karras\",\n      \"reload\": \"\",\n      \"hint\": \"karras\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"kdpm2\",\n      \"localized\": \"kdpm2\",\n      \"reload\": \"\",\n      \"hint\": \"kdpm2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"kdpm2 a\",\n      \"localized\": \"kdpm2 a\",\n      \"reload\": \"\",\n      \"hint\": \"kdpm2 a\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"keep incomplete images\",\n      \"localized\": \"сохранять неполные изображения\",\n      \"reload\": \"\",\n      \"hint\": \"сохранять неполные изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"large\",\n      \"localized\": \"большой\",\n      \"reload\": \"\",\n      \"hint\": \"большой\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"latent history size\",\n      \"localized\": \"размер истории скрытого пространства\",\n      \"reload\": \"\",\n      \"hint\": \"размер истории скрытого пространства\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"latent mode\",\n      \"localized\": \"латентный режим\",\n      \"reload\": \"\",\n      \"hint\": \"латентный режим\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layer scales\",\n      \"localized\": \"масштабы слоев\",\n      \"reload\": \"\",\n      \"hint\": \"масштабы слоев\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layerwise casting storage\",\n      \"localized\": \"послойное хранение приведения типов\",\n      \"reload\": \"\",\n      \"hint\": \"послойное хранение приведения типов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layerwise non-blocking operations\",\n      \"localized\": \"послойные неблокирующие операции\",\n      \"reload\": \"\",\n      \"hint\": \"послойные неблокирующие операции\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lcm\",\n      \"localized\": \"lcm\",\n      \"reload\": \"\",\n      \"hint\": \"lcm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ldsr processing steps\",\n      \"localized\": \"шаги обработки ldsr\",\n      \"reload\": \"\",\n      \"hint\": \"шаги обработки ldsr\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"left\",\n      \"localized\": \"слева\",\n      \"reload\": \"\",\n      \"hint\": \"слева\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"legend\",\n      \"localized\": \"легенда\",\n      \"reload\": \"\",\n      \"hint\": \"легенда\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"length\",\n      \"localized\": \"длина\",\n      \"reload\": \"\",\n      \"hint\": \"длина\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"leres depth\",\n      \"localized\": \"глубина leres\",\n      \"reload\": \"\",\n      \"hint\": \"глубина leres\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"level\",\n      \"localized\": \"уровень\",\n      \"reload\": \"\",\n      \"hint\": \"уровень\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"libs\",\n      \"localized\": \"библиотеки\",\n      \"reload\": \"\",\n      \"hint\": \"библиотеки\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"light\",\n      \"localized\": \"облегченный\",\n      \"reload\": \"\",\n      \"hint\": \"облегченный\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lineart\",\n      \"localized\": \"лайн-арт\",\n      \"reload\": \"\",\n      \"hint\": \"лайн-арт\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"list\",\n      \"localized\": \"список\",\n      \"reload\": \"\",\n      \"hint\": \"список\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"list model details\",\n      \"localized\": \"список деталей модели\",\n      \"reload\": \"\",\n      \"hint\": \"список деталей модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lite\",\n      \"localized\": \"облегченный\",\n      \"reload\": \"\",\n      \"hint\": \"облегченный\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"live update\",\n      \"localized\": \"обновление в реальном времени\",\n      \"reload\": \"\",\n      \"hint\": \"обновление в реальном времени\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lmsd\",\n      \"localized\": \"lmsd\",\n      \"reload\": \"\",\n      \"hint\": \"lmsd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"load custom diffusers pipeline\",\n      \"localized\": \"загрузить пользовательский конвейер diffusers\",\n      \"reload\": \"\",\n      \"hint\": \"загрузить пользовательский конвейер diffusers\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"load model directly to gpu\",\n      \"localized\": \"загрузить модель напрямую в gpu\",\n      \"reload\": \"\",\n      \"hint\": \"загрузить модель напрямую в gpu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"loaded lora\",\n      \"localized\": \"загруженная lora\",\n      \"reload\": \"\",\n      \"hint\": \"загруженная lora\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"logsnr\",\n      \"localized\": \"logsnr\",\n      \"reload\": \"\",\n      \"hint\": \"logsnr\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"loop\",\n      \"localized\": \"цикл\",\n      \"reload\": \"\",\n      \"hint\": \"цикл\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora add hash info to metadata\",\n      \"localized\": \"lora: добавить информацию о хеше в метаданные\",\n      \"reload\": \"\",\n      \"hint\": \"lora: добавить информацию о хеше в метаданные\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora auto-apply tags\",\n      \"localized\": \"lora: автоприменение тегов\",\n      \"reload\": \"\",\n      \"hint\": \"lora: автоприменение тегов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora load using diffusers method for selected models\",\n      \"localized\": \"lora: загрузка с использованием метода diffusers для выбранных моделей\",\n      \"reload\": \"\",\n      \"hint\": \"lora: загрузка с использованием метода diffusers для выбранных моделей\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora load using legacy method\",\n      \"localized\": \"lora: загрузка с использованием устаревшего метода\",\n      \"reload\": \"\",\n      \"hint\": \"lora: загрузка с использованием устаревшего метода\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora target filename\",\n      \"localized\": \"lora: целевое имя файла\",\n      \"reload\": \"\",\n      \"hint\": \"lora: целевое имя файла\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"low order\",\n      \"localized\": \"низкий порядок\",\n      \"reload\": \"\",\n      \"hint\": \"низкий порядок\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"low threshold\",\n      \"localized\": \"низкий порог\",\n      \"reload\": \"\",\n      \"hint\": \"низкий порог\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ltx model\",\n      \"localized\": \"модель ltx\",\n      \"reload\": \"\",\n      \"hint\": \"модель ltx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lumina: use mask in transformers\",\n      \"localized\": \"lumina: использовать маску в трансформерах\",\n      \"reload\": \"\",\n      \"hint\": \"lumina: использовать маску в трансформерах\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"manual block merge\",\n      \"localized\": \"ручное слияние блоков\",\n      \"reload\": \"\",\n      \"hint\": \"ручное слияние блоков\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"marigold depth\",\n      \"localized\": \"глубина marigold\",\n      \"reload\": \"\",\n      \"hint\": \"глубина marigold\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask dropout\",\n      \"localized\": \"отключение маски\",\n      \"reload\": \"\",\n      \"hint\": \"отключение маски\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask invert\",\n      \"localized\": \"инверсия маски\",\n      \"reload\": \"\",\n      \"hint\": \"инверсия маски\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask only\",\n      \"localized\": \"только маска\",\n      \"reload\": \"\",\n      \"hint\": \"только маска\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask strength\",\n      \"localized\": \"сила маски\",\n      \"reload\": \"\",\n      \"hint\": \"сила маски\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"masked\",\n      \"localized\": \"замаскированный\",\n      \"reload\": \"\",\n      \"hint\": \"замаскированный\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"math attention\",\n      \"localized\": \"математическое внимание\",\n      \"reload\": \"\",\n      \"hint\": \"математическое внимание\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max faces\",\n      \"localized\": \"максимум лиц\",\n      \"reload\": \"\",\n      \"hint\": \"максимум лиц\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max flavors\",\n      \"localized\": \"максимум вариантов\",\n      \"reload\": \"\",\n      \"hint\": \"максимум вариантов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max guidance\",\n      \"localized\": \"максимальное руководство\",\n      \"reload\": \"\",\n      \"hint\": \"максимальное руководство\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max length\",\n      \"localized\": \"максимальная длина\",\n      \"reload\": \"\",\n      \"hint\": \"максимальная длина\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max object size\",\n      \"localized\": \"максимальный размер объекта\",\n      \"reload\": \"\",\n      \"hint\": \"максимальный размер объекта\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max range\",\n      \"localized\": \"максимальный диапазон\",\n      \"reload\": \"\",\n      \"hint\": \"максимальный диапазон\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max tokens\",\n      \"localized\": \"максимум токенов\",\n      \"reload\": \"\",\n      \"hint\": \"максимум токенов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max words\",\n      \"localized\": \"максимум слов\",\n      \"reload\": \"\",\n      \"hint\": \"максимум слов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max-autotune\",\n      \"localized\": \"max-autotune\",\n      \"reload\": \"\",\n      \"hint\": \"max-autotune\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max-autotune-no-cudagraphs\",\n      \"localized\": \"max-autotune-no-cudagraphs\",\n      \"reload\": \"\",\n      \"hint\": \"max-autotune-no-cudagraphs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum image size (mp)\",\n      \"localized\": \"максимальный размер изображения (мп)\",\n      \"reload\": \"\",\n      \"hint\": \"максимальный размер изображения (мп)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum number of units\",\n      \"localized\": \"максимальное количество единиц\",\n      \"reload\": \"\",\n      \"hint\": \"максимальное количество единиц\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum rank\",\n      \"localized\": \"максимальный ранг\",\n      \"reload\": \"\",\n      \"hint\": \"максимальный ранг\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mediapipe face\",\n      \"localized\": \"лицо mediapipe\",\n      \"reload\": \"\",\n      \"hint\": \"лицо mediapipe\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"medium\",\n      \"localized\": \"средний\",\n      \"reload\": \"\",\n      \"hint\": \"средний\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mediums\",\n      \"localized\": \"средства\",\n      \"reload\": \"\",\n      \"hint\": \"средства\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory\",\n      \"localized\": \"память\",\n      \"reload\": \"\",\n      \"hint\": \"память\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory attention\",\n      \"localized\": \"внимание к памяти\",\n      \"reload\": \"\",\n      \"hint\": \"внимание к памяти\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory limit\",\n      \"localized\": \"лимит памяти\",\n      \"reload\": \"\",\n      \"hint\": \"лимит памяти\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory optimization\",\n      \"localized\": \"оптимизация памяти\",\n      \"reload\": \"\",\n      \"hint\": \"оптимизация памяти\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"merge alpha\",\n      \"localized\": \"объединить альфа\",\n      \"reload\": \"\",\n      \"hint\": \"объединить альфа\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method\",\n      \"localized\": \"метод\",\n      \"reload\": \"\",\n      \"hint\": \"метод\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method after\",\n      \"localized\": \"метод после\",\n      \"reload\": \"\",\n      \"hint\": \"метод после\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method before\",\n      \"localized\": \"метод до\",\n      \"reload\": \"\",\n      \"hint\": \"метод до\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method mask\",\n      \"localized\": \"маска метода\",\n      \"reload\": \"\",\n      \"hint\": \"маска метода\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"midas depth\",\n      \"localized\": \"глубина Midas\",\n      \"reload\": \"\",\n      \"hint\": \"глубина Midas\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"migraphx\",\n      \"localized\": \"migraphx\",\n      \"reload\": \"\",\n      \"hint\": \"migraphx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min flavors\",\n      \"localized\": \"мин. вкусы\",\n      \"reload\": \"\",\n      \"hint\": \"мин. вкусы\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min guidance\",\n      \"localized\": \"мин. руководство\",\n      \"reload\": \"\",\n      \"hint\": \"мин. руководство\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min length\",\n      \"localized\": \"мин. длина\",\n      \"reload\": \"\",\n      \"hint\": \"мин. длина\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min object size\",\n      \"localized\": \"мин. размер объекта\",\n      \"reload\": \"\",\n      \"hint\": \"мин. размер объекта\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mine\",\n      \"localized\": \"mine\",\n      \"reload\": \"\",\n      \"hint\": \"mine\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mlsd\",\n      \"localized\": \"mlsd\",\n      \"reload\": \"\",\n      \"hint\": \"mlsd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mm\",\n      \"localized\": \"mm\",\n      \"reload\": \"\",\n      \"hint\": \"mm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode\",\n      \"localized\": \"режим\",\n      \"reload\": \"\",\n      \"hint\": \"режим\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode after\",\n      \"localized\": \"режим после\",\n      \"reload\": \"\",\n      \"hint\": \"режим после\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode before\",\n      \"localized\": \"режим до\",\n      \"reload\": \"\",\n      \"hint\": \"режим до\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode mask\",\n      \"localized\": \"маска режима\",\n      \"reload\": \"\",\n      \"hint\": \"маска режима\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode x-axis\",\n      \"localized\": \"режим ось X\",\n      \"reload\": \"\",\n      \"hint\": \"режим ось X\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode y-axis\",\n      \"localized\": \"режим ось Y\",\n      \"reload\": \"\",\n      \"hint\": \"режим ось Y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model auto-download on demand\",\n      \"localized\": \"автоматическая загрузка модели по запросу\",\n      \"reload\": \"\",\n      \"hint\": \"автоматическая загрузка модели по запросу\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model autoload on start\",\n      \"localized\": \"автозагрузка модели при запуске\",\n      \"reload\": \"\",\n      \"hint\": \"автозагрузка модели при запуске\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model compile fullgraph\",\n      \"localized\": \"компиляция модели (полный граф)\",\n      \"reload\": \"\",\n      \"hint\": \"компиляция модели (полный граф)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model compile suppress errors\",\n      \"localized\": \"компиляция модели (подавлять ошибки)\",\n      \"reload\": \"\",\n      \"hint\": \"компиляция модели (подавлять ошибки)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model compile verbose mode\",\n      \"localized\": \"компиляция модели (подробный режим)\",\n      \"reload\": \"\",\n      \"hint\": \"компиляция модели (подробный режим)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model info\",\n      \"localized\": \"информация о модели\",\n      \"reload\": \"\",\n      \"hint\": \"информация о модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model metadata\",\n      \"localized\": \"метаданные модели\",\n      \"reload\": \"\",\n      \"hint\": \"метаданные модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model name\",\n      \"localized\": \"имя модели\",\n      \"reload\": \"\",\n      \"hint\": \"имя модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model precision\",\n      \"localized\": \"точность модели\",\n      \"reload\": \"\",\n      \"hint\": \"точность модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model type\",\n      \"localized\": \"тип модели\",\n      \"reload\": \"\",\n      \"hint\": \"тип модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model url\",\n      \"localized\": \"URL модели\",\n      \"reload\": \"\",\n      \"hint\": \"URL модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"modern\",\n      \"localized\": \"современный\",\n      \"reload\": \"\",\n      \"hint\": \"современный\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"momentum\",\n      \"localized\": \"импульс\",\n      \"reload\": \"\",\n      \"hint\": \"импульс\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"motion level\",\n      \"localized\": \"уровень движения\",\n      \"reload\": \"\",\n      \"hint\": \"уровень движения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mount url subpath\",\n      \"localized\": \"монтировать подпуть URL\",\n      \"reload\": \"\",\n      \"hint\": \"монтировать подпуть URL\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move base model to cpu when using refiner\",\n      \"localized\": \"перемещать базовую модель на CPU при использовании рефайнера\",\n      \"reload\": \"\",\n      \"hint\": \"перемещать базовую модель на CPU при использовании рефайнера\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move base model to cpu when using vae\",\n      \"localized\": \"перемещать базовую модель на CPU при использовании VAE\",\n      \"reload\": \"\",\n      \"hint\": \"перемещать базовую модель на CPU при использовании VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move detailer model to cpu when complete\",\n      \"localized\": \"перемещать модель детализатора на CPU по завершении\",\n      \"reload\": \"\",\n      \"hint\": \"перемещать модель детализатора на CPU по завершении\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move refiner model to cpu when not in use\",\n      \"localized\": \"перемещать модель рефайнера на CPU, когда не используется\",\n      \"reload\": \"\",\n      \"hint\": \"перемещать модель рефайнера на CPU, когда не используется\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"movements\",\n      \"localized\": \"движения\",\n      \"reload\": \"\",\n      \"hint\": \"движения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"multi decoder\",\n      \"localized\": \"мультидекодер\",\n      \"reload\": \"\",\n      \"hint\": \"мультидекодер\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"multistep restore\",\n      \"localized\": \"многошаговое восстановление\",\n      \"reload\": \"\",\n      \"hint\": \"многошаговое восстановление\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"native\",\n      \"localized\": \"нативный\",\n      \"reload\": \"\",\n      \"hint\": \"нативный\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"near threshold\",\n      \"localized\": \"около порога\",\n      \"reload\": \"\",\n      \"hint\": \"около порога\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"negative\",\n      \"localized\": \"отрицательный\",\n      \"reload\": \"\",\n      \"hint\": \"отрицательный\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"network negative prompt\",\n      \"localized\": \"негативный промпт сети\",\n      \"reload\": \"\",\n      \"hint\": \"негативный промпт сети\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"network parameters\",\n      \"localized\": \"параметры сети\",\n      \"reload\": \"\",\n      \"hint\": \"параметры сети\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"network prompt\",\n      \"localized\": \"промпт сети\",\n      \"reload\": \"\",\n      \"hint\": \"промпт сети\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"new model name\",\n      \"localized\": \"новое имя модели\",\n      \"reload\": \"\",\n      \"hint\": \"новое имя модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"nf4\",\n      \"localized\": \"nf4\",\n      \"reload\": \"\",\n      \"hint\": \"nf4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"nms\",\n      \"localized\": \"nms\",\n      \"reload\": \"\",\n      \"hint\": \"nms\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise\",\n      \"localized\": \"шум\",\n      \"reload\": \"\",\n      \"hint\": \"шум\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise multiplier (eta)\",\n      \"localized\": \"множитель шума (эта)\",\n      \"reload\": \"\",\n      \"hint\": \"множитель шума (эта)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise multiplier for image processing\",\n      \"localized\": \"множитель шума для обработки изображений\",\n      \"reload\": \"\",\n      \"hint\": \"множитель шума для обработки изображений\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise seed delta (eta)\",\n      \"localized\": \"дельта начального шума (эта)\",\n      \"reload\": \"\",\n      \"hint\": \"дельта начального шума (эта)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise strength\",\n      \"localized\": \"сила шума\",\n      \"reload\": \"\",\n      \"hint\": \"сила шума\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"none\",\n      \"localized\": \"нет\",\n      \"reload\": \"\",\n      \"hint\": \"нет\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"note\",\n      \"localized\": \"примечание\",\n      \"reload\": \"\",\n      \"hint\": \"примечание\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"nothing\",\n      \"localized\": \"ничего\",\n      \"reload\": \"\",\n      \"hint\": \"ничего\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"num beams\",\n      \"localized\": \"количество лучей\",\n      \"reload\": \"\",\n      \"hint\": \"количество лучей\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"number\",\n      \"localized\": \"число\",\n      \"reload\": \"\",\n      \"hint\": \"число\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"numbered filenames\",\n      \"localized\": \"нумерованные имена файлов\",\n      \"reload\": \"\",\n      \"hint\": \"нумерованные имена файлов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"offload\",\n      \"localized\": \"выгрузить\",\n      \"reload\": \"\",\n      \"hint\": \"выгрузить\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"offload face module\",\n      \"localized\": \"выгрузить модуль лица\",\n      \"reload\": \"\",\n      \"hint\": \"выгрузить модуль лица\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"offload models\",\n      \"localized\": \"выгрузить модели\",\n      \"reload\": \"\",\n      \"hint\": \"выгрузить модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"olive-ai\",\n      \"localized\": \"olive-ai\",\n      \"reload\": \"\",\n      \"hint\": \"olive-ai\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"onediff\",\n      \"localized\": \"onediff\",\n      \"reload\": \"\",\n      \"hint\": \"onediff\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"onnx\",\n      \"localized\": \"onnx\",\n      \"reload\": \"\",\n      \"hint\": \"onnx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openbody\",\n      \"localized\": \"openbody\",\n      \"reload\": \"\",\n      \"hint\": \"openbody\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openclip\",\n      \"localized\": \"openclip\",\n      \"reload\": \"\",\n      \"hint\": \"openclip\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino disable memory cleanup after compile\",\n      \"localized\": \"OpenVINO отключить очистку памяти после компиляции\",\n      \"reload\": \"\",\n      \"hint\": \"OpenVINO отключить очистку памяти после компиляции\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino disable model caching\",\n      \"localized\": \"OpenVINO отключить кэширование модели\",\n      \"reload\": \"\",\n      \"hint\": \"OpenVINO отключить кэширование модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino mode\",\n      \"localized\": \"режим OpenVINO\",\n      \"reload\": \"\",\n      \"hint\": \"режим OpenVINO\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino_fx\",\n      \"localized\": \"openvino_fx\",\n      \"reload\": \"\",\n      \"hint\": \"openvino_fx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"optional image description\",\n      \"localized\": \"необязательное описание изображения\",\n      \"reload\": \"\",\n      \"hint\": \"необязательное описание изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"optional init image or video\",\n      \"localized\": \"необязательное начальное изображение или видео\",\n      \"reload\": \"\",\n      \"hint\": \"необязательное начальное изображение или видео\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"order\",\n      \"localized\": \"порядок\",\n      \"reload\": \"\",\n      \"hint\": \"порядок\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ortho\",\n      \"localized\": \"орто\",\n      \"reload\": \"\",\n      \"hint\": \"орто\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"outpaint\",\n      \"localized\": \"дорисовка за пределы\",\n      \"reload\": \"\",\n      \"hint\": \"дорисовка за пределы\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"output model\",\n      \"localized\": \"выходная модель\",\n      \"reload\": \"\",\n      \"hint\": \"выходная модель\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override resolution\",\n      \"localized\": \"переопределить разрешение\",\n      \"reload\": \"\",\n      \"hint\": \"переопределить разрешение\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override sampler\",\n      \"localized\": \"переопределить сэмплер\",\n      \"reload\": \"\",\n      \"hint\": \"переопределить сэмплер\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override scheduler\",\n      \"localized\": \"переопределить планировщик\",\n      \"reload\": \"\",\n      \"hint\": \"переопределить планировщик\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override steps\",\n      \"localized\": \"переопределить шаги\",\n      \"reload\": \"\",\n      \"hint\": \"переопределить шаги\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override t1 ratio\",\n      \"localized\": \"переопределить соотношение T1\",\n      \"reload\": \"\",\n      \"hint\": \"переопределить соотношение T1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override t2 ratio\",\n      \"localized\": \"переопределить соотношение T2\",\n      \"reload\": \"\",\n      \"hint\": \"переопределить соотношение T2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"overwrite existing file\",\n      \"localized\": \"перезаписать существующий файл\",\n      \"reload\": \"\",\n      \"hint\": \"перезаписать существующий файл\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"overwrite model\",\n      \"localized\": \"перезаписать модель\",\n      \"reload\": \"\",\n      \"hint\": \"перезаписать модель\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pad frames\",\n      \"localized\": \"дополнить кадры\",\n      \"reload\": \"\",\n      \"hint\": \"дополнить кадры\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"padding\",\n      \"localized\": \"отступ\",\n      \"reload\": \"\",\n      \"hint\": \"отступ\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"parallel process images in batch\",\n      \"localized\": \"параллельная обработка изображений в пакете\",\n      \"reload\": \"\",\n      \"hint\": \"параллельная обработка изображений в пакете\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"parameter free\",\n      \"localized\": \"без параметров\",\n      \"reload\": \"\",\n      \"hint\": \"без параметров\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"path to model file\",\n      \"localized\": \"путь к файлу модели\",\n      \"reload\": \"\",\n      \"hint\": \"путь к файлу модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"path to notification sound\",\n      \"localized\": \"путь к звуку уведомления\",\n      \"reload\": \"\",\n      \"hint\": \"путь к звуку уведомления\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"peft\",\n      \"localized\": \"peft\",\n      \"reload\": \"\",\n      \"hint\": \"peft\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"penalty\",\n      \"localized\": \"штраф\",\n      \"reload\": \"\",\n      \"hint\": \"штраф\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perflow\",\n      \"localized\": \"perflow\",\n      \"reload\": \"\",\n      \"hint\": \"perflow\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perform injection\",\n      \"localized\": \"выполнить инъекцию\",\n      \"reload\": \"\",\n      \"hint\": \"выполнить инъекцию\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perform sdsa\",\n      \"localized\": \"выполнить SDSA\",\n      \"reload\": \"\",\n      \"hint\": \"выполнить SDSA\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perform warmup\",\n      \"localized\": \"выполнить разогрев\",\n      \"reload\": \"\",\n      \"hint\": \"выполнить разогрев\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"performance\",\n      \"localized\": \"производительность\",\n      \"reload\": \"\",\n      \"hint\": \"производительность\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"photomaker model\",\n      \"localized\": \"модель Photomaker\",\n      \"reload\": \"\",\n      \"hint\": \"модель Photomaker\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pidinet\",\n      \"localized\": \"pidinet\",\n      \"reload\": \"\",\n      \"hint\": \"pidinet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pipeline\",\n      \"localized\": \"конвейер\",\n      \"reload\": \"\",\n      \"hint\": \"конвейер\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pixels to expand\",\n      \"localized\": \"пикселей для расширения\",\n      \"reload\": \"\",\n      \"hint\": \"пикселей для расширения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"platform\",\n      \"localized\": \"платформа\",\n      \"reload\": \"\",\n      \"hint\": \"платформа\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"play\",\n      \"localized\": \"воспроизвести\",\n      \"reload\": \"\",\n      \"hint\": \"воспроизвести\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"play a notification upon completion\",\n      \"localized\": \"воспроизвести уведомление по завершении\",\n      \"reload\": \"\",\n      \"hint\": \"воспроизвести уведомление по завершении\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pndm\",\n      \"localized\": \"pndm\",\n      \"reload\": \"\",\n      \"hint\": \"pndm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"polyexponential\",\n      \"localized\": \"полиэкспоненциальный\",\n      \"reload\": \"\",\n      \"hint\": \"полиэкспоненциальный\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pony\",\n      \"localized\": \"пони\",\n      \"reload\": \"\",\n      \"hint\": \"пони\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pose confidence\",\n      \"localized\": \"уверенность позы\",\n      \"reload\": \"\",\n      \"hint\": \"уверенность позы\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"positive\",\n      \"localized\": \"положительный\",\n      \"reload\": \"\",\n      \"hint\": \"положительный\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocess mask\",\n      \"localized\": \"постобработка маски\",\n      \"reload\": \"\",\n      \"hint\": \"постобработка маски\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocess upscale\",\n      \"localized\": \"постобработка увеличения разрешения\",\n      \"reload\": \"\",\n      \"hint\": \"постобработка увеличения разрешения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocessing operation order\",\n      \"localized\": \"порядок операций постобработки\",\n      \"reload\": \"\",\n      \"hint\": \"порядок операций постобработки\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"power\",\n      \"localized\": \"мощность\",\n      \"reload\": \"\",\n      \"hint\": \"мощность\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"predefined question\",\n      \"localized\": \"предопределенный вопрос\",\n      \"reload\": \"\",\n      \"hint\": \"предопределенный вопрос\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prediction method\",\n      \"localized\": \"метод предсказания\",\n      \"reload\": \"\",\n      \"hint\": \"метод предсказания\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preset\",\n      \"localized\": \"пресет\",\n      \"reload\": \"\",\n      \"hint\": \"пресет\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preset block merge\",\n      \"localized\": \"объединение блоков пресетов\",\n      \"reload\": \"\",\n      \"hint\": \"объединение блоков пресетов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview\",\n      \"localized\": \"предпросмотр\",\n      \"reload\": \"\",\n      \"hint\": \"предпросмотр\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview end\",\n      \"localized\": \"конец предпросмотра\",\n      \"reload\": \"\",\n      \"hint\": \"конец предпросмотра\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview start\",\n      \"localized\": \"начало предпросмотра\",\n      \"reload\": \"\",\n      \"hint\": \"начало предпросмотра\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"primary model\",\n      \"localized\": \"основная модель\",\n      \"reload\": \"\",\n      \"hint\": \"основная модель\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor\",\n      \"localized\": \"процессор\",\n      \"reload\": \"\",\n      \"hint\": \"процессор\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor move to cpu after use\",\n      \"localized\": \"переместить процессор на ЦП после использования\",\n      \"reload\": \"\",\n      \"hint\": \"переместить процессор на ЦП после использования\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor settings\",\n      \"localized\": \"настройки процессора\",\n      \"reload\": \"\",\n      \"hint\": \"настройки процессора\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor unload after use\",\n      \"localized\": \"выгрузить процессор после использования\",\n      \"reload\": \"\",\n      \"hint\": \"выгрузить процессор после использования\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt attention normalization\",\n      \"localized\": \"нормализация внимания промта\",\n      \"reload\": \"\",\n      \"hint\": \"нормализация внимания промта\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt ex\",\n      \"localized\": \"расширенный промт\",\n      \"reload\": \"\",\n      \"hint\": \"расширенный промт\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt processor\",\n      \"localized\": \"процессор промтов\",\n      \"reload\": \"\",\n      \"hint\": \"процессор промтов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt strength\",\n      \"localized\": \"сила промта\",\n      \"reload\": \"\",\n      \"hint\": \"сила промта\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt thresholds:\",\n      \"localized\": \"пороги промта:\",\n      \"reload\": \"\",\n      \"hint\": \"пороги промта:\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompts\",\n      \"localized\": \"промты\",\n      \"reload\": \"\",\n      \"hint\": \"промты\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"provider\",\n      \"localized\": \"поставщик\",\n      \"reload\": \"\",\n      \"hint\": \"поставщик\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prune\",\n      \"localized\": \"усечь\",\n      \"reload\": \"\",\n      \"hint\": \"усечь\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quad\",\n      \"localized\": \"квадро\",\n      \"reload\": \"\",\n      \"hint\": \"квадро\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization activations type\",\n      \"localized\": \"тип квантования активаций\",\n      \"reload\": \"\",\n      \"hint\": \"тип квантования активаций\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization mode\",\n      \"localized\": \"режим квантования\",\n      \"reload\": \"\",\n      \"hint\": \"режим квантования\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization type\",\n      \"localized\": \"тип квантования\",\n      \"reload\": \"\",\n      \"hint\": \"тип квантования\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization weights type\",\n      \"localized\": \"тип квантования весов\",\n      \"reload\": \"\",\n      \"hint\": \"тип квантования весов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"random seeds\",\n      \"localized\": \"случайные сиды\",\n      \"reload\": \"\",\n      \"hint\": \"случайные сиды\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"range\",\n      \"localized\": \"диапазон\",\n      \"reload\": \"\",\n      \"hint\": \"диапазон\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rebase\",\n      \"localized\": \"перебазировать\",\n      \"reload\": \"\",\n      \"hint\": \"перебазировать\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"recursive\",\n      \"localized\": \"рекурсивный\",\n      \"reload\": \"\",\n      \"hint\": \"рекурсивный\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reduce-overhead\",\n      \"localized\": \"снижение накладных расходов\",\n      \"reload\": \"\",\n      \"hint\": \"снижение накладных расходов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"redux prompt strength\",\n      \"localized\": \"сила промта Redux\",\n      \"reload\": \"\",\n      \"hint\": \"сила промта Redux\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference adain weight\",\n      \"localized\": \"вес ссылки Adain\",\n      \"reload\": \"\",\n      \"hint\": \"вес ссылки Adain\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference query weight\",\n      \"localized\": \"вес запроса ссылки\",\n      \"reload\": \"\",\n      \"hint\": \"вес запроса ссылки\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference unit 1\",\n      \"localized\": \"ссылочный блок 1\",\n      \"reload\": \"\",\n      \"hint\": \"ссылочный блок 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refine foreground\",\n      \"localized\": \"уточнить передний план\",\n      \"reload\": \"\",\n      \"hint\": \"уточнить передний план\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh bench\",\n      \"localized\": \"обновить тест\",\n      \"reload\": \"\",\n      \"hint\": \"обновить тест\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh data\",\n      \"localized\": \"обновить данные\",\n      \"reload\": \"\",\n      \"hint\": \"обновить данные\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh state\",\n      \"localized\": \"обновить состояние\",\n      \"reload\": \"\",\n      \"hint\": \"обновить состояние\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh ui values\",\n      \"localized\": \"обновить значения интерфейса\",\n      \"reload\": \"\",\n      \"hint\": \"обновить значения интерфейса\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reinstall\",\n      \"localized\": \"переустановить\",\n      \"reload\": \"\",\n      \"hint\": \"переустановить\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"remove background\",\n      \"localized\": \"удалить фон\",\n      \"reload\": \"\",\n      \"hint\": \"удалить фон\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repeat x-axis\",\n      \"localized\": \"повтор по оси X\",\n      \"reload\": \"\",\n      \"hint\": \"повтор по оси X\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repeat y-axis\",\n      \"localized\": \"повтор по оси Y\",\n      \"reload\": \"\",\n      \"hint\": \"повтор по оси Y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"replace vae\",\n      \"localized\": \"заменить VAE\",\n      \"reload\": \"\",\n      \"hint\": \"заменить VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repos\",\n      \"localized\": \"репозитории\",\n      \"reload\": \"\",\n      \"hint\": \"репозитории\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess decode\",\n      \"localized\": \"повторная обработка декодирования\",\n      \"reload\": \"\",\n      \"hint\": \"повторная обработка декодирования\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess face\",\n      \"localized\": \"повторная обработка лица\",\n      \"reload\": \"\",\n      \"hint\": \"повторная обработка лица\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess refine\",\n      \"localized\": \"повторная обработка уточнения\",\n      \"reload\": \"\",\n      \"hint\": \"повторная обработка уточнения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"request browser notifications\",\n      \"localized\": \"запросить уведомления браузера\",\n      \"reload\": \"\",\n      \"hint\": \"запросить уведомления браузера\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rescale\",\n      \"localized\": \"перемасштабировать\",\n      \"reload\": \"\",\n      \"hint\": \"перемасштабировать\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rescale betas with zero terminal snr\",\n      \"localized\": \"перемасштабировать бета-коэффициенты с нулевым SNR на конце\",\n      \"reload\": \"\",\n      \"hint\": \"перемасштабировать бета-коэффициенты с нулевым SNR на конце\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reset anchors\",\n      \"localized\": \"сбросить якоря\",\n      \"reload\": \"\",\n      \"hint\": \"сбросить якоря\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"residual diff threshold\",\n      \"localized\": \"порог остаточной разницы\",\n      \"reload\": \"\",\n      \"hint\": \"порог остаточной разницы\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize background color\",\n      \"localized\": \"изменить размер цвета фона\",\n      \"reload\": \"\",\n      \"hint\": \"изменить размер цвета фона\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize method\",\n      \"localized\": \"метод изменения размера\",\n      \"reload\": \"\",\n      \"hint\": \"метод изменения размера\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize mode\",\n      \"localized\": \"режим изменения размера\",\n      \"reload\": \"\",\n      \"hint\": \"режим изменения размера\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize scale\",\n      \"localized\": \"масштаб изменения размера\",\n      \"reload\": \"\",\n      \"hint\": \"масштаб изменения размера\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restart step\",\n      \"localized\": \"перезапустить шаг\",\n      \"reload\": \"\",\n      \"hint\": \"перезапустить шаг\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore faces: codeformer\",\n      \"localized\": \"восстановить лица: CodeFormer\",\n      \"reload\": \"\",\n      \"hint\": \"восстановить лица: CodeFormer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore faces: gfpgan\",\n      \"localized\": \"восстановить лица: GFPGAN\",\n      \"reload\": \"\",\n      \"hint\": \"восстановить лица: GFPGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore pipe on end\",\n      \"localized\": \"восстановить пайплайн в конце\",\n      \"reload\": \"\",\n      \"hint\": \"восстановить пайплайн в конце\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore unparsed prompt\",\n      \"localized\": \"восстановить нераспарсенный промт\",\n      \"reload\": \"\",\n      \"hint\": \"восстановить нераспарсенный промт\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reswapper model\",\n      \"localized\": \"модель Reswapper\",\n      \"reload\": \"\",\n      \"hint\": \"модель Reswapper\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"return original images\",\n      \"localized\": \"вернуть исходные изображения\",\n      \"reload\": \"\",\n      \"hint\": \"вернуть исходные изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"right\",\n      \"localized\": \"вправо\",\n      \"reload\": \"\",\n      \"hint\": \"вправо\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"root model folder\",\n      \"localized\": \"корневая папка модели\",\n      \"reload\": \"\",\n      \"hint\": \"корневая папка модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rows\",\n      \"localized\": \"строки\",\n      \"reload\": \"\",\n      \"hint\": \"строки\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"run\",\n      \"localized\": \"запуск\",\n      \"reload\": \"\",\n      \"hint\": \"запуск\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"run benchmark\",\n      \"localized\": \"запустить тест производительности\",\n      \"reload\": \"\",\n      \"hint\": \"запустить тест производительности\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sa solver\",\n      \"localized\": \"решатель SA\",\n      \"reload\": \"\",\n      \"hint\": \"решатель SA\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"safetensors\",\n      \"localized\": \"safetensors\",\n      \"reload\": \"\",\n      \"hint\": \"safetensors\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sage attention\",\n      \"localized\": \"внимание Sage\",\n      \"reload\": \"\",\n      \"hint\": \"внимание Sage\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"same as primary\",\n      \"localized\": \"тот же, что и основной\",\n      \"reload\": \"\",\n      \"hint\": \"тот же, что и основной\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"same latent\",\n      \"localized\": \"тот же латентный\",\n      \"reload\": \"\",\n      \"hint\": \"тот же латентный\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sample\",\n      \"localized\": \"выборка\",\n      \"reload\": \"\",\n      \"hint\": \"выборка\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler\",\n      \"localized\": \"сэмплер\",\n      \"reload\": \"\",\n      \"hint\": \"сэмплер\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler dynamic shift\",\n      \"localized\": \"динамический сдвиг сэмплера\",\n      \"reload\": \"\",\n      \"hint\": \"динамический сдвиг сэмплера\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler order\",\n      \"localized\": \"порядок сэмплера\",\n      \"reload\": \"\",\n      \"hint\": \"порядок сэмплера\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler shift\",\n      \"localized\": \"сдвиг сэмплера\",\n      \"reload\": \"\",\n      \"hint\": \"сдвиг сэмплера\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sana: use complex human instructions\",\n      \"localized\": \"sana: использовать сложные человеческие инструкции\",\n      \"reload\": \"\",\n      \"hint\": \"sana: использовать сложные человеческие инструкции\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"saturation\",\n      \"localized\": \"насыщенность\",\n      \"reload\": \"\",\n      \"hint\": \"насыщенность\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save all generated image grids\",\n      \"localized\": \"сохранить все сгенерированные сетки изображений\",\n      \"reload\": \"\",\n      \"hint\": \"сохранить все сгенерированные сетки изображений\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save all generated images\",\n      \"localized\": \"сохранить все сгенерированные изображения\",\n      \"reload\": \"\",\n      \"hint\": \"сохранить все сгенерированные изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save caption files\",\n      \"localized\": \"сохранить файлы подписей\",\n      \"reload\": \"\",\n      \"hint\": \"сохранить файлы подписей\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save diffusers\",\n      \"localized\": \"сохранить диффузоры\",\n      \"reload\": \"\",\n      \"hint\": \"сохранить диффузоры\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save hdr image\",\n      \"localized\": \"сохранить HDR изображение\",\n      \"reload\": \"\",\n      \"hint\": \"сохранить HDR изображение\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before color correction\",\n      \"localized\": \"сохранить изображение до цветокоррекции\",\n      \"reload\": \"\",\n      \"hint\": \"сохранить изображение до цветокоррекции\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before detailer\",\n      \"localized\": \"сохранить изображение до детализатора\",\n      \"reload\": \"\",\n      \"hint\": \"сохранить изображение до детализатора\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before hires\",\n      \"localized\": \"сохранить изображение до увеличения разрешения\",\n      \"reload\": \"\",\n      \"hint\": \"сохранить изображение до увеличения разрешения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before refiner\",\n      \"localized\": \"сохранить изображение до рефайнера\",\n      \"reload\": \"\",\n      \"hint\": \"сохранить изображение до рефайнера\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save images to a subdirectory\",\n      \"localized\": \"сохранить изображения в подпапку\",\n      \"reload\": \"\",\n      \"hint\": \"сохранить изображения в подпапку\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save init images\",\n      \"localized\": \"сохранить исходные изображения\",\n      \"reload\": \"\",\n      \"hint\": \"сохранить исходные изображения\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save inpainting mask\",\n      \"localized\": \"сохранить маску инпейнта\",\n      \"reload\": \"\",\n      \"hint\": \"сохранить маску инпейнта\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save inpainting masked composite\",\n      \"localized\": \"сохранить композицию с маской инпейнта\",\n      \"reload\": \"\",\n      \"hint\": \"сохранить композицию с маской инпейнта\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save metadata\",\n      \"localized\": \"сохранить метаданные\",\n      \"reload\": \"\",\n      \"hint\": \"сохранить метаданные\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save only saves selected image\",\n      \"localized\": \"сохранить только выбранное изображение\",\n      \"reload\": \"\",\n      \"hint\": \"сохранить только выбранное изображение\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save output\",\n      \"localized\": \"сохранить вывод\",\n      \"reload\": \"\",\n      \"hint\": \"сохранить вывод\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save safetensors\",\n      \"localized\": \"сохранить safetensors\",\n      \"reload\": \"\",\n      \"hint\": \"сохранить safetensors\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save unparsed prompt\",\n      \"localized\": \"сохранить неразобранный промпт\",\n      \"reload\": \"\",\n      \"hint\": \"сохранить неразобранный промпт\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale  after\",\n      \"localized\": \"масштаб после\",\n      \"reload\": \"\",\n      \"hint\": \"масштаб после\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale  before\",\n      \"localized\": \"масштаб до\",\n      \"reload\": \"\",\n      \"hint\": \"масштаб до\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale  mask\",\n      \"localized\": \"масштаб маски\",\n      \"reload\": \"\",\n      \"hint\": \"масштаб маски\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale factor\",\n      \"localized\": \"коэффициент масштабирования\",\n      \"reload\": \"\",\n      \"hint\": \"коэффициент масштабирования\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"score\",\n      \"localized\": \"оценка\",\n      \"reload\": \"\",\n      \"hint\": \"оценка\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"score threshold\",\n      \"localized\": \"порог оценки\",\n      \"reload\": \"\",\n      \"hint\": \"порог оценки\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scribble\",\n      \"localized\": \"набросок\",\n      \"reload\": \"\",\n      \"hint\": \"набросок\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-attire\",\n      \"localized\": \"sd15-attire\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-attire\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-likeness\",\n      \"localized\": \"sd15-likeness\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-likeness\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-navimixu\",\n      \"localized\": \"sd15-navimixu\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-navimixu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-sexy\",\n      \"localized\": \"sd15-sexy\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-sexy\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-artstyle\",\n      \"localized\": \"sdxl-artstyle\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-artstyle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-negative\",\n      \"localized\": \"sdxl-negative\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-negative\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-sexy\",\n      \"localized\": \"sdxl-sexy\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-sexy\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-sliders\",\n      \"localized\": \"sdxl-sliders\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-sliders\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-toon\",\n      \"localized\": \"sdxl-toon\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-toon\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl: use weighted pooled embeds\",\n      \"localized\": \"sdxl: использовать взвешенные объединенные эмбеды\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl: использовать взвешенные объединенные эмбеды\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search changelog\",\n      \"localized\": \"поиск в списке изменений\",\n      \"reload\": \"\",\n      \"hint\": \"поиск в списке изменений\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search models\",\n      \"localized\": \"поиск моделей\",\n      \"reload\": \"\",\n      \"hint\": \"поиск моделей\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search wiki pages\",\n      \"localized\": \"поиск по страницам вики\",\n      \"reload\": \"\",\n      \"hint\": \"поиск по страницам вики\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"secondary model\",\n      \"localized\": \"вторичная модель\",\n      \"reload\": \"\",\n      \"hint\": \"вторичная модель\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"segmentanything\",\n      \"localized\": \"segmentanything\",\n      \"reload\": \"\",\n      \"hint\": \"segmentanything\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"select\",\n      \"localized\": \"выбрать\",\n      \"reload\": \"\",\n      \"hint\": \"выбрать\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"select model\",\n      \"localized\": \"выбрать модель\",\n      \"reload\": \"\",\n      \"hint\": \"выбрать модель\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send interrupt\",\n      \"localized\": \"отправить прерывание\",\n      \"reload\": \"\",\n      \"hint\": \"отправить прерывание\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send seed when sending prompt or image to other interface\",\n      \"localized\": \"отправить сид при отправке промпта или изображения в другой интерфейс\",\n      \"reload\": \"\",\n      \"hint\": \"отправить сид при отправке промпта или изображения в другой интерфейс\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send size when sending prompt or image to another interface\",\n      \"localized\": \"отправить размер при отправке промпта или изображения в другой интерфейс\",\n      \"reload\": \"\",\n      \"hint\": \"отправить размер при отправке промпта или изображения в другой интерфейс\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sequential\",\n      \"localized\": \"последовательный\",\n      \"reload\": \"\",\n      \"hint\": \"последовательный\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"server start time\",\n      \"localized\": \"время запуска сервера\",\n      \"reload\": \"\",\n      \"hint\": \"время запуска сервера\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"set at prompt start\",\n      \"localized\": \"установить в начале промпта\",\n      \"reload\": \"\",\n      \"hint\": \"установить в начале промпта\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"set ui menu states\",\n      \"localized\": \"установить состояния меню UI\",\n      \"reload\": \"\",\n      \"hint\": \"установить состояния меню UI\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"share queries\",\n      \"localized\": \"поделиться запросами\",\n      \"reload\": \"\",\n      \"hint\": \"поделиться запросами\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shared options\",\n      \"localized\": \"общие параметры\",\n      \"reload\": \"\",\n      \"hint\": \"общие параметры\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sharpen\",\n      \"localized\": \"резкость\",\n      \"reload\": \"\",\n      \"hint\": \"резкость\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shift\",\n      \"localized\": \"сдвиг\",\n      \"reload\": \"\",\n      \"hint\": \"сдвиг\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show grid in results\",\n      \"localized\": \"показать сетку в результатах\",\n      \"reload\": \"\",\n      \"hint\": \"показать сетку в результатах\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show input\",\n      \"localized\": \"показать ввод\",\n      \"reload\": \"\",\n      \"hint\": \"показать ввод\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show metadata in full screen image browser\",\n      \"localized\": \"показать метаданные в полноэкранном браузере изображений\",\n      \"reload\": \"\",\n      \"hint\": \"показать метаданные в полноэкранном браузере изображений\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show motd\",\n      \"localized\": \"показать сообщение дня\",\n      \"reload\": \"\",\n      \"hint\": \"показать сообщение дня\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show preview\",\n      \"localized\": \"показать предварительный просмотр\",\n      \"reload\": \"\",\n      \"hint\": \"показать предварительный просмотр\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shuffle weights\",\n      \"localized\": \"перемешать веса\",\n      \"reload\": \"\",\n      \"hint\": \"перемешать веса\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma\",\n      \"localized\": \"сигма\",\n      \"reload\": \"\",\n      \"hint\": \"сигма\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma churn\",\n      \"localized\": \"шум сигмы\",\n      \"reload\": \"\",\n      \"hint\": \"шум сигмы\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma max\",\n      \"localized\": \"сигма макс\",\n      \"reload\": \"\",\n      \"hint\": \"сигма макс\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma method\",\n      \"localized\": \"метод сигмы\",\n      \"reload\": \"\",\n      \"hint\": \"метод сигмы\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma min\",\n      \"localized\": \"сигма мин\",\n      \"reload\": \"\",\n      \"hint\": \"сигма мин\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma noise\",\n      \"localized\": \"шум сигмы\",\n      \"reload\": \"\",\n      \"hint\": \"шум сигмы\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma tmin\",\n      \"localized\": \"сигма tmin\",\n      \"reload\": \"\",\n      \"hint\": \"сигма tmin\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"simple merge\",\n      \"localized\": \"простое слияние\",\n      \"reload\": \"\",\n      \"hint\": \"простое слияние\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"size\",\n      \"localized\": \"размер\",\n      \"reload\": \"\",\n      \"hint\": \"размер\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sketch\",\n      \"localized\": \"эскиз\",\n      \"reload\": \"\",\n      \"hint\": \"эскиз\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip generation if nan found in latents\",\n      \"localized\": \"пропустить генерацию, если в латентах найдено NaN\",\n      \"reload\": \"\",\n      \"hint\": \"пропустить генерацию, если в латентах найдено NaN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip guidance layers\",\n      \"localized\": \"пропустить направляющие слои\",\n      \"reload\": \"\",\n      \"hint\": \"пропустить направляющие слои\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip input frames\",\n      \"localized\": \"пропустить входные кадры\",\n      \"reload\": \"\",\n      \"hint\": \"пропустить входные кадры\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"slider\",\n      \"localized\": \"ползунок\",\n      \"reload\": \"\",\n      \"hint\": \"ползунок\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"smooth mask\",\n      \"localized\": \"сглаженная маска\",\n      \"reload\": \"\",\n      \"hint\": \"сглаженная маска\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"solver order (where\",\n      \"localized\": \"порядок решателя (где\",\n      \"reload\": \"\",\n      \"hint\": \"порядок решателя (где\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sort order\",\n      \"localized\": \"порядок сортировки\",\n      \"reload\": \"\",\n      \"hint\": \"порядок сортировки\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"source subject\",\n      \"localized\": \"исходный объект\",\n      \"reload\": \"\",\n      \"hint\": \"исходный объект\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"space\",\n      \"localized\": \"пространство\",\n      \"reload\": \"\",\n      \"hint\": \"пространство\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"spatial frequency\",\n      \"localized\": \"пространственная частота\",\n      \"reload\": \"\",\n      \"hint\": \"пространственная частота\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"specify model revision\",\n      \"localized\": \"указать ревизию модели\",\n      \"reload\": \"\",\n      \"hint\": \"указать ревизию модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"specify model variant\",\n      \"localized\": \"указать вариант модели\",\n      \"reload\": \"\",\n      \"hint\": \"указать вариант модели\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"split attention\",\n      \"localized\": \"разделенное внимание\",\n      \"reload\": \"\",\n      \"hint\": \"разделенное внимание\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"stable-fast\",\n      \"localized\": \"stable-fast\",\n      \"reload\": \"\",\n      \"hint\": \"stable-fast\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"standard\",\n      \"localized\": \"стандарт\",\n      \"reload\": \"\",\n      \"hint\": \"стандарт\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"start\",\n      \"localized\": \"старт\",\n      \"reload\": \"\",\n      \"hint\": \"старт\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"start profiling\",\n      \"localized\": \"начать профилирование\",\n      \"reload\": \"\",\n      \"hint\": \"начать профилирование\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"state\",\n      \"localized\": \"состояние\",\n      \"reload\": \"\",\n      \"hint\": \"состояние\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"stride\",\n      \"localized\": \"шаг\",\n      \"reload\": \"\",\n      \"hint\": \"шаг\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"structure\",\n      \"localized\": \"структура\",\n      \"reload\": \"\",\n      \"hint\": \"структура\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"style fidelity\",\n      \"localized\": \"точность стиля\",\n      \"reload\": \"\",\n      \"hint\": \"точность стиля\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"subject\",\n      \"localized\": \"объект\",\n      \"reload\": \"\",\n      \"hint\": \"объект\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"submit results\",\n      \"localized\": \"отправить результаты\",\n      \"reload\": \"\",\n      \"hint\": \"отправить результаты\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"submodules\",\n      \"localized\": \"подмодули\",\n      \"reload\": \"\",\n      \"hint\": \"подмодули\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap x/y\",\n      \"localized\": \"поменять x/y\",\n      \"reload\": \"\",\n      \"hint\": \"поменять x/y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap x/z\",\n      \"localized\": \"поменять x/z\",\n      \"reload\": \"\",\n      \"hint\": \"поменять x/z\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap y/z\",\n      \"localized\": \"поменять y/z\",\n      \"reload\": \"\",\n      \"hint\": \"поменять y/z\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i adapter\",\n      \"localized\": \"адаптер t2i\",\n      \"reload\": \"\",\n      \"hint\": \"адаптер t2i\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i strength\",\n      \"localized\": \"сила t2i\",\n      \"reload\": \"\",\n      \"hint\": \"сила t2i\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 1\",\n      \"localized\": \"блок адаптера t2i 1\",\n      \"reload\": \"\",\n      \"hint\": \"блок адаптера t2i 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 2\",\n      \"localized\": \"блок адаптера t2i 2\",\n      \"reload\": \"\",\n      \"hint\": \"блок адаптера t2i 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 3\",\n      \"localized\": \"блок адаптера t2i 3\",\n      \"reload\": \"\",\n      \"hint\": \"блок адаптера t2i 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 4\",\n      \"localized\": \"блок адаптера t2i 4\",\n      \"reload\": \"\",\n      \"hint\": \"блок адаптера t2i 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd\",\n      \"localized\": \"taesd\",\n      \"reload\": \"\",\n      \"hint\": \"taesd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd decode layers\",\n      \"localized\": \"слои декодирования taesd\",\n      \"reload\": \"\",\n      \"hint\": \"слои декодирования taesd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd variant\",\n      \"localized\": \"вариант taesd\",\n      \"reload\": \"\",\n      \"hint\": \"вариант taesd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"target subject\",\n      \"localized\": \"целевой объект\",\n      \"reload\": \"\",\n      \"hint\": \"целевой объект\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tcd\",\n      \"localized\": \"tcd\",\n      \"reload\": \"\",\n      \"hint\": \"tcd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tdd\",\n      \"localized\": \"tdd\",\n      \"reload\": \"\",\n      \"hint\": \"tdd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"te\",\n      \"localized\": \"te\",\n      \"reload\": \"\",\n      \"hint\": \"te\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"temperature\",\n      \"localized\": \"температура\",\n      \"reload\": \"\",\n      \"hint\": \"температура\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"temporal frequency\",\n      \"localized\": \"временная частота\",\n      \"reload\": \"\",\n      \"hint\": \"временная частота\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tertiary model\",\n      \"localized\": \"третичная модель\",\n      \"reload\": \"\",\n      \"hint\": \"третичная модель\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text encoder cache size\",\n      \"localized\": \"размер кэша текстового кодировщика\",\n      \"reload\": \"\",\n      \"hint\": \"размер кэша текстового кодировщика\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text encoder model\",\n      \"localized\": \"модель текстового кодировщика\",\n      \"reload\": \"\",\n      \"hint\": \"модель текстового кодировщика\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text inputs\",\n      \"localized\": \"текстовые входы\",\n      \"reload\": \"\",\n      \"hint\": \"текстовые входы\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"textbox\",\n      \"localized\": \"текстовое поле\",\n      \"reload\": \"\",\n      \"hint\": \"текстовое поле\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"threshold\",\n      \"localized\": \"порог\",\n      \"reload\": \"\",\n      \"hint\": \"порог\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"thresholding\",\n      \"localized\": \"пороговая обработка\",\n      \"reload\": \"\",\n      \"hint\": \"пороговая обработка\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile frames\",\n      \"localized\": \"тайловые кадры\",\n      \"reload\": \"\",\n      \"hint\": \"тайловые кадры\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=1\",\n      \"localized\": \"тайловый промпт: x=1 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"тайловый промпт: x=1 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=2\",\n      \"localized\": \"тайловый промпт: x=1 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"тайловый промпт: x=1 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=3\",\n      \"localized\": \"тайловый промпт: x=1 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"тайловый промпт: x=1 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=4\",\n      \"localized\": \"тайловый промпт: x=1 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"тайловый промпт: x=1 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=1\",\n      \"localized\": \"тайловый промпт: x=2 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"тайловый промпт: x=2 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=2\",\n      \"localized\": \"тайловый промпт: x=2 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"тайловый промпт: x=2 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=3\",\n      \"localized\": \"тайловый промпт: x=2 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"тайловый промпт: x=2 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=4\",\n      \"localized\": \"тайловый промпт: x=2 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"тайловый промпт: x=2 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=1\",\n      \"localized\": \"тайловый промпт: x=3 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"тайловый промпт: x=3 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=2\",\n      \"localized\": \"тайловый промпт: x=3 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"тайловый промпт: x=3 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=3\",\n      \"localized\": \"тайловый промпт: x=3 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"тайловый промпт: x=3 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=4\",\n      \"localized\": \"тайловый промпт: x=3 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"тайловый промпт: x=3 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=1\",\n      \"localized\": \"тайловый промпт: x=4 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"тайловый промпт: x=4 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=2\",\n      \"localized\": \"тайловый промпт: x=4 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"тайловый промпт: x=4 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=3\",\n      \"localized\": \"тайловый промпт: x=4 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"тайловый промпт: x=4 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=4\",\n      \"localized\": \"тайловый промпт: x=4 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"тайловый промпт: x=4 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tiling options\",\n      \"localized\": \"параметры тайлинга\",\n      \"reload\": \"\",\n      \"hint\": \"параметры тайлинга\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time embedding mix\",\n      \"localized\": \"смешивание временных эмбеддингов\",\n      \"reload\": \"\",\n      \"hint\": \"смешивание временных эмбеддингов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time_quadratic\",\n      \"localized\": \"time_quadratic\",\n      \"reload\": \"\",\n      \"hint\": \"time_quadratic\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time_uniform\",\n      \"localized\": \"time_uniform\",\n      \"reload\": \"\",\n      \"hint\": \"time_uniform\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep\",\n      \"localized\": \"временной шаг\",\n      \"reload\": \"\",\n      \"hint\": \"временной шаг\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep skip end\",\n      \"localized\": \"пропуск временного шага в конце\",\n      \"reload\": \"\",\n      \"hint\": \"пропуск временного шага в конце\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep skip start\",\n      \"localized\": \"пропуск временного шага в начале\",\n      \"reload\": \"\",\n      \"hint\": \"пропуск временного шага в начале\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep spacing\",\n      \"localized\": \"интервал временных шагов\",\n      \"reload\": \"\",\n      \"hint\": \"интервал временных шагов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps\",\n      \"localized\": \"временные шаги\",\n      \"reload\": \"\",\n      \"hint\": \"временные шаги\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps override\",\n      \"localized\": \"переопределение временных шагов\",\n      \"reload\": \"\",\n      \"hint\": \"переопределение временных шагов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps presets\",\n      \"localized\": \"пресеты временных шагов\",\n      \"reload\": \"\",\n      \"hint\": \"пресеты временных шагов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps range\",\n      \"localized\": \"диапазон временных шагов\",\n      \"reload\": \"\",\n      \"hint\": \"диапазон временных шагов\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tiny\",\n      \"localized\": \"крошечный\",\n      \"reload\": \"\",\n      \"hint\": \"крошечный\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"todo\",\n      \"localized\": \"задача\",\n      \"reload\": \"\",\n      \"hint\": \"задача\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tome\",\n      \"localized\": \"tome\",\n      \"reload\": \"\",\n      \"hint\": \"tome\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tool\",\n      \"localized\": \"инструмент\",\n      \"reload\": \"\",\n      \"hint\": \"инструмент\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"top-k\",\n      \"localized\": \"топ-k\",\n      \"reload\": \"\",\n      \"hint\": \"топ-k\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"top-p\",\n      \"localized\": \"топ-p\",\n      \"reload\": \"\",\n      \"hint\": \"топ-p\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"torch\",\n      \"localized\": \"torch\",\n      \"reload\": \"\",\n      \"hint\": \"torch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"transformer\",\n      \"localized\": \"трансформер\",\n      \"reload\": \"\",\n      \"hint\": \"трансформер\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"trigger word\",\n      \"localized\": \"триггерное слово\",\n      \"reload\": \"\",\n      \"hint\": \"триггерное слово\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"true\",\n      \"localized\": \"истина\",\n      \"reload\": \"\",\n      \"hint\": \"истина\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tunable ops limit\",\n      \"localized\": \"предел настраиваемых операций\",\n      \"reload\": \"\",\n      \"hint\": \"предел настраиваемых операций\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ufogen\",\n      \"localized\": \"ufogen\",\n      \"reload\": \"\",\n      \"hint\": \"ufogen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui card size (px)\",\n      \"localized\": \"размер карточки UI (px)\",\n      \"reload\": \"\",\n      \"hint\": \"размер карточки UI (px)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui fetch network info on mouse-over\",\n      \"localized\": \"UI: получать информацию о сети при наведении\",\n      \"reload\": \"\",\n      \"hint\": \"UI: получать информацию о сети при наведении\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui height (%)\",\n      \"localized\": \"высота UI (%)\",\n      \"reload\": \"\",\n      \"hint\": \"высота UI (%)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui locale\",\n      \"localized\": \"локаль UI\",\n      \"reload\": \"\",\n      \"hint\": \"локаль UI\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui request timeout\",\n      \"localized\": \"таймаут запроса UI\",\n      \"reload\": \"\",\n      \"hint\": \"таймаут запроса UI\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui show on startup\",\n      \"localized\": \"показывать UI при запуске\",\n      \"reload\": \"\",\n      \"hint\": \"показывать UI при запуске\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui sidebar width (%)\",\n      \"localized\": \"ширина боковой панели UI (%)\",\n      \"reload\": \"\",\n      \"hint\": \"ширина боковой панели UI (%)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui theme\",\n      \"localized\": \"тема UI\",\n      \"reload\": \"\",\n      \"hint\": \"тема UI\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet\",\n      \"localized\": \"unet\",\n      \"reload\": \"\",\n      \"hint\": \"unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet depth\",\n      \"localized\": \"глубина unet\",\n      \"reload\": \"\",\n      \"hint\": \"глубина unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet enabled\",\n      \"localized\": \"unet включен\",\n      \"reload\": \"\",\n      \"hint\": \"unet включен\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet max tile size\",\n      \"localized\": \"максимальный размер тайла unet\",\n      \"reload\": \"\",\n      \"hint\": \"максимальный размер тайла unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet min tile size\",\n      \"localized\": \"минимальный размер тайла unet\",\n      \"reload\": \"\",\n      \"hint\": \"минимальный размер тайла unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet model\",\n      \"localized\": \"модель unet\",\n      \"reload\": \"\",\n      \"hint\": \"модель unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet swap size\",\n      \"localized\": \"размер свопа unet\",\n      \"reload\": \"\",\n      \"hint\": \"размер свопа unet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"uniform\",\n      \"localized\": \"равномерный\",\n      \"reload\": \"\",\n      \"hint\": \"равномерный\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"units\",\n      \"localized\": \"единицы\",\n      \"reload\": \"\",\n      \"hint\": \"единицы\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unload current model from vram\",\n      \"localized\": \"выгрузить текущую модель из VRAM\",\n      \"reload\": \"\",\n      \"hint\": \"выгрузить текущую модель из VRAM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unload upscaler after processing\",\n      \"localized\": \"выгружать апскейлер после обработки\",\n      \"reload\": \"\",\n      \"hint\": \"выгружать апскейлер после обработки\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unset\",\n      \"localized\": \"не установлено\",\n      \"reload\": \"\",\n      \"hint\": \"не установлено\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"up\",\n      \"localized\": \"up\",\n      \"reload\": \"\",\n      \"hint\": \"up\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"upcast attention layer\",\n      \"localized\": \"слой внимания с повышением точности\",\n      \"reload\": \"\",\n      \"hint\": \"слой внимания с повышением точности\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"update\",\n      \"localized\": \"обновить\",\n      \"reload\": \"\",\n      \"hint\": \"обновить\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"upload\",\n      \"localized\": \"загрузить\",\n      \"reload\": \"\",\n      \"hint\": \"загрузить\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use brownian noise\",\n      \"localized\": \"использовать броуновский шум\",\n      \"reload\": \"\",\n      \"hint\": \"использовать броуновский шум\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use cached model config when available\",\n      \"localized\": \"использовать кэшированную конфигурацию модели при наличии\",\n      \"reload\": \"\",\n      \"hint\": \"использовать кэшированную конфигурацию модели при наличии\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use defaults\",\n      \"localized\": \"использовать значения по умолчанию\",\n      \"reload\": \"\",\n      \"hint\": \"использовать значения по умолчанию\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use dynamic thresholding\",\n      \"localized\": \"использовать динамическую пороговую обработку\",\n      \"reload\": \"\",\n      \"hint\": \"использовать динамическую пороговую обработку\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use fixed width thumbnails\",\n      \"localized\": \"использовать миниатюры фиксированной ширины\",\n      \"reload\": \"\",\n      \"hint\": \"использовать миниатюры фиксированной ширины\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use image gallery cache\",\n      \"localized\": \"использовать кэш галереи изображений\",\n      \"reload\": \"\",\n      \"hint\": \"использовать кэш галереи изображений\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use karras sigmas\",\n      \"localized\": \"использовать сигмы Карраса\",\n      \"reload\": \"\",\n      \"hint\": \"использовать сигмы Карраса\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use line break as prompt segment marker\",\n      \"localized\": \"использовать разрыв строки как маркер сегмента промпта\",\n      \"reload\": \"\",\n      \"hint\": \"использовать разрыв строки как маркер сегмента промпта\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use model ema weights when possible\",\n      \"localized\": \"использовать веса EMA модели, если возможно\",\n      \"reload\": \"\",\n      \"hint\": \"использовать веса EMA модели, если возможно\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use quantization\",\n      \"localized\": \"использовать квантование\",\n      \"reload\": \"\",\n      \"hint\": \"использовать квантование\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use random seeds\",\n      \"localized\": \"использовать случайные зерна\",\n      \"reload\": \"\",\n      \"hint\": \"использовать случайные зерна\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use reference values when available\",\n      \"localized\": \"использовать эталонные значения при наличии\",\n      \"reload\": \"\",\n      \"hint\": \"использовать эталонные значения при наличии\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use same seed\",\n      \"localized\": \"использовать то же зерно\",\n      \"reload\": \"\",\n      \"hint\": \"использовать то же зерно\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use sample\",\n      \"localized\": \"использовать образец\",\n      \"reload\": \"\",\n      \"hint\": \"использовать образец\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use separate base dict\",\n      \"localized\": \"использовать отдельный базовый словарь\",\n      \"reload\": \"\",\n      \"hint\": \"использовать отдельный базовый словарь\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use simplified solvers in final steps\",\n      \"localized\": \"использовать упрощенные решатели на последних шагах\",\n      \"reload\": \"\",\n      \"hint\": \"использовать упрощенные решатели на последних шагах\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use text inputs\",\n      \"localized\": \"использовать текстовые входы\",\n      \"reload\": \"\",\n      \"hint\": \"использовать текстовые входы\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"user\",\n      \"localized\": \"пользователь\",\n      \"reload\": \"\",\n      \"hint\": \"пользователь\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"username\",\n      \"localized\": \"имя пользователя\",\n      \"reload\": \"\",\n      \"hint\": \"имя пользователя\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"v_prediction\",\n      \"localized\": \"v_prediction\",\n      \"reload\": \"\",\n      \"hint\": \"v_prediction\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae enabled\",\n      \"localized\": \"VAE включен\",\n      \"reload\": \"\",\n      \"hint\": \"VAE включен\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae sliced encode\",\n      \"localized\": \"Послойное кодирование VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Послойное кодирование VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae swap size\",\n      \"localized\": \"Размер подкачки VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Размер подкачки VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae tile overlap\",\n      \"localized\": \"Перекрытие тайлов VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Перекрытие тайлов VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae tile size\",\n      \"localized\": \"Размер тайлов VAE\",\n      \"reload\": \"\",\n      \"hint\": \"Размер тайлов VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vary_coeff\",\n      \"localized\": \"vary_coeff\",\n      \"reload\": \"\",\n      \"hint\": \"vary_coeff\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vdm solver\",\n      \"localized\": \"vdm solver\",\n      \"reload\": \"\",\n      \"hint\": \"vdm solver\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"version\",\n      \"localized\": \"Версия\",\n      \"reload\": \"\",\n      \"hint\": \"Версия\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vgen params\",\n      \"localized\": \"vgen params\",\n      \"reload\": \"\",\n      \"hint\": \"vgen params\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vibrance\",\n      \"localized\": \"Сочность\",\n      \"reload\": \"\",\n      \"hint\": \"Сочность\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"video file\",\n      \"localized\": \"Видеофайл\",\n      \"reload\": \"\",\n      \"hint\": \"Видеофайл\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"video type\",\n      \"localized\": \"Тип видео\",\n      \"reload\": \"\",\n      \"hint\": \"Тип видео\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm\",\n      \"localized\": \"VLM\",\n      \"reload\": \"\",\n      \"hint\": \"VLM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm model\",\n      \"localized\": \"Модель VLM\",\n      \"reload\": \"\",\n      \"hint\": \"Модель VLM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: default model\",\n      \"localized\": \"VLM: модель по умолчанию\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: модель по умолчанию\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: default prompt\",\n      \"localized\": \"VLM: промпт по умолчанию\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: промпт по умолчанию\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: max length\",\n      \"localized\": \"VLM: максимальная длина\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: максимальная длина\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: num beams\",\n      \"localized\": \"VLM: количество лучей\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: количество лучей\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: top-k\",\n      \"localized\": \"VLM: top-k\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: top-k\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: top-p\",\n      \"localized\": \"VLM: top-p\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: top-p\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: use sample method\",\n      \"localized\": \"VLM: использовать метод выборки\",\n      \"reload\": \"\",\n      \"hint\": \"VLM: использовать метод выборки\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"warmth\",\n      \"localized\": \"Теплота\",\n      \"reload\": \"\",\n      \"hint\": \"Теплота\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"webp lossless compression\",\n      \"localized\": \"Сжатие WebP без потерь\",\n      \"reload\": \"\",\n      \"hint\": \"Сжатие WebP без потерь\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"weight\",\n      \"localized\": \"Вес\",\n      \"reload\": \"\",\n      \"hint\": \"Вес\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width  after\",\n      \"localized\": \"Ширина после\",\n      \"reload\": \"\",\n      \"hint\": \"Ширина после\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width  before\",\n      \"localized\": \"Ширина до\",\n      \"reload\": \"\",\n      \"hint\": \"Ширина до\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width  mask\",\n      \"localized\": \"Ширина маски\",\n      \"reload\": \"\",\n      \"hint\": \"Ширина маски\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"wiki\",\n      \"localized\": \"Вики\",\n      \"reload\": \"\",\n      \"hint\": \"Вики\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"wildcards\",\n      \"localized\": \"Вайлдкарды\",\n      \"reload\": \"\",\n      \"hint\": \"Вайлдкарды\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x components\",\n      \"localized\": \"X-компоненты\",\n      \"reload\": \"\",\n      \"hint\": \"X-компоненты\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x overlap\",\n      \"localized\": \"Перекрытие по X\",\n      \"reload\": \"\",\n      \"hint\": \"Перекрытие по X\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x type\",\n      \"localized\": \"Тип X\",\n      \"reload\": \"\",\n      \"hint\": \"Тип X\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x-axis tile overlap\",\n      \"localized\": \"Перекрытие тайлов по оси X\",\n      \"reload\": \"\",\n      \"hint\": \"Перекрытие тайлов по оси X\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x-axis tiles\",\n      \"localized\": \"Тайлы по оси X\",\n      \"reload\": \"\",\n      \"hint\": \"Тайлы по оси X\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xhinker\",\n      \"localized\": \"xhinker\",\n      \"reload\": \"\",\n      \"hint\": \"xhinker\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xs\",\n      \"localized\": \"xs\",\n      \"reload\": \"\",\n      \"hint\": \"xs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y components\",\n      \"localized\": \"Y-компоненты\",\n      \"reload\": \"\",\n      \"hint\": \"Y-компоненты\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y overlap\",\n      \"localized\": \"Перекрытие по Y\",\n      \"reload\": \"\",\n      \"hint\": \"Перекрытие по Y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y type\",\n      \"localized\": \"Тип Y\",\n      \"reload\": \"\",\n      \"hint\": \"Тип Y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y-axis tile overlap\",\n      \"localized\": \"Перекрытие тайлов по оси Y\",\n      \"reload\": \"\",\n      \"hint\": \"Перекрытие тайлов по оси Y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y-axis tiles\",\n      \"localized\": \"Тайлы по оси Y\",\n      \"reload\": \"\",\n      \"hint\": \"Тайлы по оси Y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"z type\",\n      \"localized\": \"Тип Z\",\n      \"reload\": \"\",\n      \"hint\": \"Тип Z\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"zero\",\n      \"localized\": \"Ноль\",\n      \"reload\": \"\",\n      \"hint\": \"Ноль\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"zoe depth\",\n      \"localized\": \"Глубина Zoe\",\n      \"reload\": \"\",\n      \"hint\": \"Глубина Zoe\"\n    }\n  ]\n}\n"
  },
  {
    "path": "html/locale_zh.json",
    "content": "{\n  \"icons\": [\n    {\n      \"id\": \"\",\n      \"label\": \"🎲️\",\n      \"localized\": \"🎲️\",\n      \"reload\": \"\",\n      \"hint\": \"使用随机种子\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔄\",\n      \"localized\": \"🔄\",\n      \"reload\": \"\",\n      \"hint\": \"重置数值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⬆️\",\n      \"localized\": \"⬆️\",\n      \"reload\": \"\",\n      \"hint\": \"上传图片\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⬅️\",\n      \"localized\": \"⬅️\",\n      \"reload\": \"\",\n      \"hint\": \"重用图片\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇅\",\n      \"localized\": \"⇅\",\n      \"reload\": \"\",\n      \"hint\": \"交换数值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇨\",\n      \"localized\": \"⇨\",\n      \"reload\": \"\",\n      \"hint\": \"将预设应用于手动块合并选项卡\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🕮\",\n      \"localized\": \"🕮\",\n      \"reload\": \"\",\n      \"hint\": \"将上次生成图片的参数保存为样式模板\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⇕\",\n      \"localized\": \"⇕\",\n      \"reload\": \"\",\n      \"hint\": \"排序方式：名称升序/降序，大小最大/最小，时间最新/最旧\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⟲\",\n      \"localized\": \"⟲\",\n      \"reload\": \"\",\n      \"hint\": \"刷新\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"✕\",\n      \"localized\": \"✕\",\n      \"reload\": \"\",\n      \"hint\": \"关闭\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⊜\",\n      \"localized\": \"⊜\",\n      \"reload\": \"\",\n      \"hint\": \"填充\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"※\",\n      \"localized\": \"※\",\n      \"reload\": \"\",\n      \"hint\": \"选中时将模型加载为细化模型，否则加载为基础模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔎︎\",\n      \"localized\": \"🔎︎\",\n      \"reload\": \"\",\n      \"hint\": \"扫描 CivitAI 以查找缺失的元数据和预览图\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"☲\",\n      \"localized\": \"☲\",\n      \"reload\": \"\",\n      \"hint\": \"更改视图类型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⊗\",\n      \"localized\": \"⊗\",\n      \"reload\": \"\",\n      \"hint\": \"重置数值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"📐\",\n      \"localized\": \"📐\",\n      \"reload\": \"\",\n      \"hint\": \"测量\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🔍\",\n      \"localized\": \"🔍\",\n      \"reload\": \"\",\n      \"hint\": \"搜索\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🖌️\",\n      \"localized\": \"🖌️\",\n      \"reload\": \"\",\n      \"hint\": \"LaMa 从图像中移除选定对象\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"🖼️\",\n      \"localized\": \"🖼️\",\n      \"reload\": \"\",\n      \"hint\": \"显示预览\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"反推图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"⁜\",\n      \"localized\": \"⁜\",\n      \"reload\": \"\",\n      \"hint\": \"循环图像适应方法\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"↶\",\n      \"localized\": \"↶\",\n      \"reload\": \"\",\n      \"hint\": \"将选定样式应用于提示词\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"↷\",\n      \"localized\": \"↷\",\n      \"reload\": \"\",\n      \"hint\": \"将当前提示词保存为样式\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"按名称升序排序\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"按名称降序排序\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"按大小升序排序\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"按大小降序排序\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"按分辨率升序排序\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"按分辨率降序排序\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"按时间升序排序\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"\",\n      \"localized\": \"\",\n      \"reload\": \"\",\n      \"hint\": \"按时间降序排序\"\n    }\n  ],\n  \"main\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt\",\n      \"localized\": \"提示词\",\n      \"reload\": \"\",\n      \"hint\": \"描述您想要生成的图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Start\",\n      \"localized\": \"开始\",\n      \"reload\": \"\",\n      \"hint\": \"开始\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"End\",\n      \"localized\": \"结束\",\n      \"reload\": \"\",\n      \"hint\": \"结束\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Core\",\n      \"localized\": \"核心\",\n      \"reload\": \"\",\n      \"hint\": \"核心设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System prompt\",\n      \"localized\": \"系统提示词\",\n      \"reload\": \"\",\n      \"hint\": \"系统提示词控制LLM的行为\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Negative prompt\",\n      \"localized\": \"负面提示词\",\n      \"reload\": \"\",\n      \"hint\": \"描述您不希望在生成的图像中看到的内容\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Text\",\n      \"localized\": \"文本\",\n      \"reload\": \"\",\n      \"hint\": \"从文本创建图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image\",\n      \"localized\": \"图像\",\n      \"reload\": \"\",\n      \"hint\": \"从图像创建图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control\",\n      \"localized\": \"控制\",\n      \"reload\": \"\",\n      \"hint\": \"创建具有完全引导的图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process\",\n      \"localized\": \"处理\",\n      \"reload\": \"\",\n      \"hint\": \"处理现有图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Caption\",\n      \"localized\": \"图注\",\n      \"reload\": \"\",\n      \"hint\": \"分析现有图像并创建文本描述\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Interrogate\",\n      \"localized\": \"反推\",\n      \"reload\": \"\",\n      \"hint\": \"运行反推以获取图像描述\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models\",\n      \"localized\": \"模型\",\n      \"reload\": \"\",\n      \"hint\": \"下载、转换或合并您的模型并管理模型元数据\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Agent Scheduler\",\n      \"localized\": \"代理调度器\",\n      \"reload\": \"\",\n      \"hint\": \"将您的生成请求排队并在后台运行\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"AgentScheduler\",\n      \"localized\": \"代理调度器\",\n      \"reload\": \"\",\n      \"hint\": \"将您的生成请求排队并在后台运行\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System\",\n      \"localized\": \"系统\",\n      \"reload\": \"\",\n      \"hint\": \"系统设置和信息\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System Info\",\n      \"localized\": \"系统信息\",\n      \"reload\": \"\",\n      \"hint\": \"系统信息\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Settings\",\n      \"localized\": \"设置\",\n      \"reload\": \"\",\n      \"hint\": \"应用程序设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Script\",\n      \"localized\": \"脚本\",\n      \"reload\": \"\",\n      \"hint\": \"要使用的附加脚本\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Generate\",\n      \"localized\": \"生成\",\n      \"reload\": \"\",\n      \"hint\": \"开始处理\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Generate forever\",\n      \"localized\": \"持续生成\",\n      \"reload\": \"\",\n      \"hint\": \"开始处理并持续直到取消\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enqueue\",\n      \"localized\": \"入队\",\n      \"reload\": \"\",\n      \"hint\": \"将任务添加到代理调度器的后台队列\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reprocess\",\n      \"localized\": \"重新处理\",\n      \"reload\": \"\",\n      \"hint\": \"使用不同参数重新处理之前的生成\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Stop\",\n      \"localized\": \"停止\",\n      \"reload\": \"\",\n      \"hint\": \"停止处理\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Skip\",\n      \"localized\": \"跳过\",\n      \"reload\": \"\",\n      \"hint\": \"停止处理当前任务并继续处理\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Pause\",\n      \"localized\": \"暂停\",\n      \"reload\": \"\",\n      \"hint\": \"暂停处理\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore\",\n      \"localized\": \"恢复\",\n      \"reload\": \"\",\n      \"hint\": \"从当前提示词或最后已知的生成图像中恢复参数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Clear\",\n      \"localized\": \"清除\",\n      \"reload\": \"\",\n      \"hint\": \"清除提示词\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Networks\",\n      \"localized\": \"网络\",\n      \"reload\": \"\",\n      \"hint\": \"网络用户界面\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Default strength\",\n      \"localized\": \"默认强度\",\n      \"reload\": \"\",\n      \"hint\": \"当向提示词添加LoRA等额外网络时，使用此乘数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscale\",\n      \"localized\": \"放大\",\n      \"reload\": \"\",\n      \"hint\": \"放大图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model\",\n      \"localized\": \"模型\",\n      \"reload\": \"\",\n      \"hint\": \"基础模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompts\",\n      \"localized\": \"提示词\",\n      \"reload\": \"\",\n      \"hint\": \"图像提示词和负面提示词\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Base\",\n      \"localized\": \"基本\",\n      \"reload\": \"\",\n      \"hint\": \"用于运行图像生成的基本设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Style\",\n      \"localized\": \"样式\",\n      \"reload\": \"\",\n      \"hint\": \"应用于所选生成参数的附加样式\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Styles\",\n      \"localized\": \"样式\",\n      \"reload\": \"\",\n      \"hint\": \"应用于所选生成参数的附加样式\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Lora\",\n      \"localized\": \"LoRA\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA：低秩适应。在已加载模型之上应用的微调模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Embedding\",\n      \"localized\": \"嵌入\",\n      \"reload\": \"\",\n      \"hint\": \"文本反转嵌入是关于主题的训练过的嵌入信息\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Hypernetwork\",\n      \"localized\": \"超网络\",\n      \"reload\": \"\",\n      \"hint\": \"修改已加载模型行为的小型训练神经网络\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VLM Caption\",\n      \"localized\": \"VLM 图注\",\n      \"reload\": \"\",\n      \"hint\": \"使用视觉语言模型分析图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CLiP Interrogate\",\n      \"localized\": \"CLiP 反推\",\n      \"reload\": \"\",\n      \"hint\": \"使用CLiP模型分析图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE\",\n      \"localized\": \"VAE\",\n      \"reload\": \"\",\n      \"hint\": \"变分自编码器：在生成结束时用于运行图像解码的模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"History\",\n      \"localized\": \"历史记录\",\n      \"reload\": \"\",\n      \"hint\": \"可以进一步重新处理的先前生成列表\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"UI disable variable aspect ratio\",\n      \"localized\": \"UI禁用可变宽高比\",\n      \"reload\": \"\",\n      \"hint\": \"禁用时，所有缩略图显示为方形图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Build info on first access\",\n      \"localized\": \"首次访问时构建信息\",\n      \"reload\": \"\",\n      \"hint\": \"防止服务器在启动时构建英文页面，而是在请求时构建\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show reference styles\",\n      \"localized\": \"显示参考样式\",\n      \"reload\": \"\",\n      \"hint\": \"显示或隐藏内置样式\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA load using Diffusers method\",\n      \"localized\": \"使用Diffusers方法加载LoRA\",\n      \"reload\": \"\",\n      \"hint\": \"替代方法使用Diffusers内置LoRA功能，而非原生SD.Next实现（可能会降低LoRA兼容性）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA fuse directly to model\",\n      \"localized\": \"LoRA直接融合到模型\",\n      \"reload\": \"\",\n      \"hint\": \"加载LoRA时，立即将权重与底层模型合并，而不是即时应用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"LoRA memory cache\",\n      \"localized\": \"LoRA内存缓存\",\n      \"reload\": \"\",\n      \"hint\": \"在需要从存储重新加载之前，在网络中保留多少LoRA以供将来使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Local\",\n      \"localized\": \"本地\",\n      \"reload\": \"\",\n      \"hint\": \"已下载并可供使用的模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Gallery\",\n      \"localized\": \"图库\",\n      \"reload\": \"\",\n      \"hint\": \"图像图库\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reference\",\n      \"localized\": \"参考\",\n      \"reload\": \"\",\n      \"hint\": \"首次使用时可自动下载的参考模型列表\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Samplers\",\n      \"localized\": \"采样器\",\n      \"reload\": \"\",\n      \"hint\": \"采样器/调度器高级设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Seed\",\n      \"localized\": \"种子\",\n      \"reload\": \"\",\n      \"hint\": \"初始种子和变异\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Advanced\",\n      \"localized\": \"高级\",\n      \"reload\": \"\",\n      \"hint\": \"用于运行图像生成的高级设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scripts\",\n      \"localized\": \"脚本\",\n      \"reload\": \"\",\n      \"hint\": \"通过在生成过程中使用选定脚本启用附加功能\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Corrections\",\n      \"localized\": \"校正\",\n      \"reload\": \"\",\n      \"hint\": \"在生成过程中控制图像颜色/锐化/亮度校正\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Parameters\",\n      \"localized\": \"参数\",\n      \"reload\": \"\",\n      \"hint\": \"图像生成过程中使用的基本参数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine\",\n      \"localized\": \"精炼\",\n      \"reload\": \"\",\n      \"hint\": \"精炼在初始处理完成后运行附加处理，可用于放大图像并可选地再次处理以提高质量和细节\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer\",\n      \"localized\": \"细节增强器\",\n      \"reload\": \"\",\n      \"hint\": \"细节增强器对检测到的对象以更高分辨率进行额外生成\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize\",\n      \"localized\": \"调整大小\",\n      \"reload\": \"\",\n      \"hint\": \"图像大小调整，可以基于缩放使用固定分辨率\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch\",\n      \"localized\": \"批处理\",\n      \"reload\": \"\",\n      \"hint\": \"批处理设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoise\",\n      \"localized\": \"去噪\",\n      \"reload\": \"\",\n      \"hint\": \"去噪设置。更高的去噪意味着在生成过程中允许更改更多现有图像内容\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mask\",\n      \"localized\": \"蒙版\",\n      \"reload\": \"\",\n      \"hint\": \"图像蒙版和蒙版选项\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Input\",\n      \"localized\": \"输入\",\n      \"reload\": \"\",\n      \"hint\": \"输入媒体选择\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Video\",\n      \"localized\": \"视频\",\n      \"reload\": \"\",\n      \"hint\": \"使用引导创建视频\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control elements\",\n      \"localized\": \"控制元素\",\n      \"reload\": \"\",\n      \"hint\": \"控制元素是能够引导生成达到预期结果的高级模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"IP adapter\",\n      \"localized\": \"IP 适配器\",\n      \"reload\": \"\",\n      \"hint\": \"使用IP适配器插件模型引导生成达到预期结果\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"IP adapters\",\n      \"localized\": \"IP 适配器\",\n      \"reload\": \"\",\n      \"hint\": \"IP适配器是能够引导生成达到预期结果的插件模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Extensions\",\n      \"localized\": \"扩展\",\n      \"reload\": \"\",\n      \"hint\": \"应用程序扩展\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"XYZ Grid\",\n      \"localized\": \"XYZ 网格\",\n      \"reload\": \"\",\n      \"hint\": \"XYZ网格是一个强大的模块，可根据变化的多个生成参数创建图像网格\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Cover\",\n      \"localized\": \"覆盖\",\n      \"reload\": \"\",\n      \"hint\": \"覆盖整个区域\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inline\",\n      \"localized\": \"内联\",\n      \"reload\": \"\",\n      \"hint\": \"与所有附加元素内联（可滚动）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sidebar\",\n      \"localized\": \"侧边栏\",\n      \"reload\": \"\",\n      \"hint\": \"屏幕右侧的侧边栏\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD15\",\n      \"localized\": \"SD15\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Diffusion 1.5\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD21\",\n      \"localized\": \"SD21\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Diffusion 2.1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SD35\",\n      \"localized\": \"SD35\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Diffusion 3.5\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SDXL\",\n      \"localized\": \"SDXL\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Diffusion XL\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"SC\",\n      \"localized\": \"SC\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Cascade\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Flux\",\n      \"localized\": \"Flux\",\n      \"reload\": \"\",\n      \"hint\": \"FLUX.1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show\",\n      \"localized\": \"显示\",\n      \"reload\": \"\",\n      \"hint\": \"显示图像位置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Save\",\n      \"localized\": \"保存\",\n      \"reload\": \"\",\n      \"hint\": \"保存图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Delete\",\n      \"localized\": \"删除\",\n      \"reload\": \"\",\n      \"hint\": \"删除图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Replace\",\n      \"localized\": \"替换\",\n      \"reload\": \"\",\n      \"hint\": \"替换图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Text\",\n      \"localized\": \"➠ 文本\",\n      \"reload\": \"\",\n      \"hint\": \"将图像传输到文本界面\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Image\",\n      \"localized\": \"➠ 图像\",\n      \"reload\": \"\",\n      \"hint\": \"将图像传输到图像界面\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Inpaint\",\n      \"localized\": \"➠ 局部重绘\",\n      \"reload\": \"\",\n      \"hint\": \"将图像传输到局部重绘界面\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Sketch\",\n      \"localized\": \"➠ 草图\",\n      \"reload\": \"\",\n      \"hint\": \"将图像传输到草图界面\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Composite\",\n      \"localized\": \"➠ 合成\",\n      \"reload\": \"\",\n      \"hint\": \"将图像传输到局部重绘草图界面\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Process\",\n      \"localized\": \"➠ 处理\",\n      \"reload\": \"\",\n      \"hint\": \"将图像传输到处理界面\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Control\",\n      \"localized\": \"➠ 控制\",\n      \"reload\": \"\",\n      \"hint\": \"将图像传输到控制界面\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"➠ Caption\",\n      \"localized\": \"➠ 图注\",\n      \"reload\": \"\",\n      \"hint\": \"将图像传输到图注界面\"\n    }\n  ],\n  \"generate\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Sampling method\",\n      \"localized\": \"采样方法\",\n      \"reload\": \"\",\n      \"hint\": \"用于生成图像的算法\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Steps\",\n      \"localized\": \"步数\",\n      \"reload\": \"\",\n      \"hint\": \"迭代改进生成图像的次数；值越高所需时间越长；值过低可能会产生不良结果\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Tiling\",\n      \"localized\": \"平铺\",\n      \"reload\": \"\",\n      \"hint\": \"生成可平铺的图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full quality\",\n      \"localized\": \"全质量\",\n      \"reload\": \"\",\n      \"hint\": \"使用全质量 VAE 解码潜在样本\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HiDiffusion\",\n      \"localized\": \"高扩散\",\n      \"reload\": \"\",\n      \"hint\": \"高扩散允许您使用标准模型创建高分辨率图像，同时避免重复/失真并提高性能\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HDR Clamp\",\n      \"localized\": \"HDR钳位\",\n      \"reload\": \"\",\n      \"hint\": \"通过修剪显著偏离分布均值的值来调整非理性细节的水平。它在较高指导尺度下增强生成、在过程早期识别异常值以及根据范围（边界）和阈值设置应用数学调整方面特别有用。可以将其理解为设置图像值所需的范围，并调整阈值以确定哪些值应被带回该范围\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"HDR Maximize\",\n      \"localized\": \"HDR最大化\",\n      \"reload\": \"\",\n      \"hint\": \"通过将最大张量值除以指定范围的4倍来计算“归一化因子”。此因子随后用于在给定边界内移动通道，确保后续处理的最大动态范围。目标是优化外部应用程序（如Photoshop）的动态范围，特别是用于调整色阶、对比度和亮度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enable refine pass\",\n      \"localized\": \"启用精炼处理\",\n      \"reload\": \"\",\n      \"hint\": \"使用类似于图生图的过程来放大和/或为最终图像添加细节。可选地使用精炼模型来增强图像细节。\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Enable detailer pass\",\n      \"localized\": \"启用细节处理\",\n      \"reload\": \"\",\n      \"hint\": \"检测目标对象（如人脸）并以更高分辨率重新处理\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoising strength\",\n      \"localized\": \"去噪强度\",\n      \"reload\": \"\",\n      \"hint\": \"决定算法对图像内容的保留程度。设为0时，图像不会改变；设为1时，将得到一张不相关的图像。值低于1.0时，处理步骤将少于采样步数滑块指定的值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoise start\",\n      \"localized\": \"去噪起始\",\n      \"reload\": \"\",\n      \"hint\": \"通过指定基础模型应何时完成以及精炼器应何时开始来覆盖去噪强度。仅适用于精炼器使用。如果设置为0或1，将使用去噪强度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Hires steps\",\n      \"localized\": \"高分步数\",\n      \"reload\": \"\",\n      \"hint\": \"放大图像的采样步数。如果为0，则与原始图像相同\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Strength\",\n      \"localized\": \"强度\",\n      \"reload\": \"\",\n      \"hint\": \"图像操作期间的去噪强度，控制生成过程中允许原始图像改变的程度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler\",\n      \"localized\": \"放大器\",\n      \"reload\": \"\",\n      \"hint\": \"用于放大过程的预训练模型。\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Force Hires\",\n      \"localized\": \"强制高分\",\n      \"reload\": \"\",\n      \"hint\": \"当选择潜在空间放大时，高分辨率会自动运行，但使用非潜在空间放大器时会被跳过。启用强制高分辨率以与非潜在空间放大器一起运行高分辨率\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize width\",\n      \"localized\": \"调整宽度\",\n      \"reload\": \"\",\n      \"hint\": \"将图像调整到此宽度。如果为0，宽度将从附近两个滑块中的任一个推断\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize height\",\n      \"localized\": \"调整高度\",\n      \"reload\": \"\",\n      \"hint\": \"将图像调整到此高度。如果为0，高度将从附近两个滑块中的任一个推断\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine sampler\",\n      \"localized\": \"精炼采样器\",\n      \"reload\": \"\",\n      \"hint\": \"如果主采样器不支持特定操作，则使用特定采样器作为备用采样器\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner start\",\n      \"localized\": \"精炼起始\",\n      \"reload\": \"\",\n      \"hint\": \"当基础模型完成到此程度时，精炼处理将开始（设置为大于0且小于1可在完整基础模型运行后启动）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner steps\",\n      \"localized\": \"精炼步数\",\n      \"reload\": \"\",\n      \"hint\": \"精炼处理使用的步数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine guidance\",\n      \"localized\": \"精炼引导\",\n      \"reload\": \"\",\n      \"hint\": \"精炼处理使用的CFG尺度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Attention guidance\",\n      \"localized\": \"注意力引导\",\n      \"reload\": \"\",\n      \"hint\": \"与PAG（扰动注意力引导）一起使用的CFG尺度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adaptive scaling\",\n      \"localized\": \"自适应缩放\",\n      \"reload\": \"\",\n      \"hint\": \"注意力引导尺度的自适应修饰符\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Rescale guidance\",\n      \"localized\": \"重新缩放引导\",\n      \"reload\": \"\",\n      \"hint\": \"重新缩放CFG生成的噪声以避免图像过曝\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine Prompt\",\n      \"localized\": \"精炼提示词\",\n      \"reload\": \"\",\n      \"hint\": \"用于基础模型中的第二个编码器（如果存在）和精炼处理（如果启用）的提示词\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine negative prompt\",\n      \"localized\": \"精炼负面提示词\",\n      \"reload\": \"\",\n      \"hint\": \"用于基础模型中的第二个编码器（如果存在）和精炼处理（如果启用）的负面提示词\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Width\",\n      \"localized\": \"宽度\",\n      \"reload\": \"\",\n      \"hint\": \"图像宽度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Height\",\n      \"localized\": \"高度\",\n      \"reload\": \"\",\n      \"hint\": \"图像高度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch count\",\n      \"localized\": \"批次数量\",\n      \"reload\": \"\",\n      \"hint\": \"创建图像的批次数量（对生成性能或显存使用没有影响）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Batch size\",\n      \"localized\": \"批次大小\",\n      \"reload\": \"\",\n      \"hint\": \"单个批次中创建的图像数量（以更高的显存使用为代价提高生成性能）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance scale\",\n      \"localized\": \"引导尺度\",\n      \"reload\": \"\",\n      \"hint\": \"无分类器引导尺度：图像应与提示词符合的强度。较低的值会产生更具创意的结果，较高的值会使其更严格地遵循提示词；推荐值在5-10之间\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Guidance End\",\n      \"localized\": \"引导结束\",\n      \"reload\": \"\",\n      \"hint\": \"提前结束CFG和PAG的效果：值为1时正常作用，0.5时在50%的步数时停止引导\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Initial seed\",\n      \"localized\": \"初始种子\",\n      \"reload\": \"\",\n      \"hint\": \"决定随机数生成器输出的值 - 如果您使用与另一张图像相同的参数和种子创建图像，您将得到相同的结果\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variation\",\n      \"localized\": \"变体\",\n      \"reload\": \"\",\n      \"hint\": \"与主种子混合的第二个种子\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variation strength\",\n      \"localized\": \"变体强度\",\n      \"reload\": \"\",\n      \"hint\": \"生成变体的强度。0时无效果。1时，将得到带有变体种子的完整图像（祖先采样器除外，只会有某种结果）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize seed from width\",\n      \"localized\": \"从宽度调整种子\",\n      \"reload\": \"\",\n      \"hint\": \"尝试生成与在指定分辨率下使用相同种子可能产生的图像相似的图片\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Resize seed from height\",\n      \"localized\": \"从高度调整种子\",\n      \"reload\": \"\",\n      \"hint\": \"尝试生成与在指定分辨率下使用相同种子可能产生的图像相似的图片\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Fixed\",\n      \"localized\": \"固定\",\n      \"reload\": \"\",\n      \"hint\": \"将图像调整到目标分辨率。除非高度和宽度匹配，否则将得到不正确的长宽比\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale\",\n      \"localized\": \"缩放\",\n      \"reload\": \"\",\n      \"hint\": \"将图像调整到目标比例。如果设置了固定宽度/高度调整，则此选项将被忽略\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop\",\n      \"localized\": \"裁剪\",\n      \"reload\": \"\",\n      \"hint\": \"调整图像大小，使目标分辨率的全部区域被图像填充。裁剪超出部分\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Fill\",\n      \"localized\": \"填充\",\n      \"reload\": \"\",\n      \"hint\": \"调整图像大小，使图像的全部内容位于目标分辨率内。用图像的颜色填充空白区域\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mask blur\",\n      \"localized\": \"蒙版模糊\",\n      \"reload\": \"\",\n      \"hint\": \"处理前模糊蒙版的程度，以像素为单位\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Latent noise\",\n      \"localized\": \"潜在噪声\",\n      \"reload\": \"\",\n      \"hint\": \"用潜在空间噪声填充\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Latent nothing\",\n      \"localized\": \"潜在空无\",\n      \"reload\": \"\",\n      \"hint\": \"用潜在空间零填充\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adapters\",\n      \"localized\": \"适配器\",\n      \"reload\": \"\",\n      \"hint\": \"与IP适配器相关的设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inputs\",\n      \"localized\": \"输入\",\n      \"reload\": \"\",\n      \"hint\": \"与输入图像相关的设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control input type\",\n      \"localized\": \"控制输入类型\",\n      \"reload\": \"\",\n      \"hint\": \"选择哪个输入图像用于控制过程\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Video format\",\n      \"localized\": \"视频格式\",\n      \"reload\": \"\",\n      \"hint\": \"输出视频的格式和编解码器\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Size & Batch\",\n      \"localized\": \"尺寸与批次\",\n      \"reload\": \"\",\n      \"hint\": \"图像尺寸和批次\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sigma adjust\",\n      \"localized\": \"Sigma调整\",\n      \"reload\": \"\",\n      \"hint\": \"调整采样器Sigma值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adjust start\",\n      \"localized\": \"调整起始\",\n      \"reload\": \"\",\n      \"hint\": \"Sigma调整发生的起始步\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adjust end\",\n      \"localized\": \"调整结束\",\n      \"reload\": \"\",\n      \"hint\": \"Sigma调整发生的结束步\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Options\",\n      \"localized\": \"选项\",\n      \"reload\": \"\",\n      \"hint\": \"选项\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ControlNet\",\n      \"localized\": \"控制网络\",\n      \"reload\": \"\",\n      \"hint\": \"控制网络是一个先进的引导模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Renoise\",\n      \"localized\": \"重新去噪\",\n      \"reload\": \"\",\n      \"hint\": \"在细节处理过程中应用额外噪声\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Renoise end\",\n      \"localized\": \"重新去噪结束\",\n      \"reload\": \"\",\n      \"hint\": \"重新去噪应用时的最后一步\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Merge detailers\",\n      \"localized\": \"合并细节处理器\",\n      \"reload\": \"\",\n      \"hint\": \"在运行细节处理过程之前，将多个细节处理器的结果合并到单个蒙版中\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpaint mode\",\n      \"localized\": \"图像修复模式\",\n      \"reload\": \"\",\n      \"hint\": \"图像修复模式\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpaint area\",\n      \"localized\": \"图像修复区域\",\n      \"reload\": \"\",\n      \"hint\": \"图像修复区域\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Texture tiling\",\n      \"localized\": \"纹理平铺\",\n      \"reload\": \"\",\n      \"hint\": \"对生成的图像应用无缝平铺，使其可用作纹理\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Override\",\n      \"localized\": \"覆盖\",\n      \"reload\": \"\",\n      \"hint\": \"覆盖可能改变服务器行为的设置，通常从导入的图像元数据中应用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE type\",\n      \"localized\": \"VAE类型\",\n      \"reload\": \"\",\n      \"hint\": \"选择您是要运行完整VAE、降低质量的VAE还是尝试使用远程VAE服务\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Guess Mode\",\n      \"localized\": \"猜测模式\",\n      \"reload\": \"\",\n      \"hint\": \"取消了向控制网络提供提示词的要求。它强制控制网络编码器根据输入控制图的内容进行“最佳猜测”。\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control Only\",\n      \"localized\": \"仅控制\",\n      \"reload\": \"\",\n      \"hint\": \"此选项仅使用下方的控制输入作为任何控制网络或IP适配器类型任务的来源，基于我们的各种选项。\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Init Image Same As Control\",\n      \"localized\": \"初始图像与控制相同\",\n      \"reload\": \"\",\n      \"hint\": \"此外，会将放置在控制输入窗口中的任何图像视为图生图类型任务的来源，例如要修改的图像。\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Separate Init Image\",\n      \"localized\": \"单独初始图像\",\n      \"reload\": \"\",\n      \"hint\": \"在控制输入旁边创建一个名为“初始输入”的附加窗口，这样您就可以为控制操作和初始来源提供单独的图像。\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Override settings\",\n      \"localized\": \"覆盖设置\",\n      \"reload\": \"\",\n      \"hint\": \"如果生成参数偏离您的系统设置，则使用这些设置覆盖已填充的设置，以覆盖此工作流的系统配置\"\n    }\n  ],\n  \"other\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Install\",\n      \"localized\": \"安装\",\n      \"reload\": \"\",\n      \"hint\": \"安装\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Search\",\n      \"localized\": \"搜索\",\n      \"reload\": \"\",\n      \"hint\": \"搜索\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sort by\",\n      \"localized\": \"排序方式\",\n      \"reload\": \"\",\n      \"hint\": \"排序方式\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Nudenet\",\n      \"localized\": \"Nudenet\",\n      \"reload\": \"\",\n      \"hint\": \"灵活的扩展，可以检测并模糊图像中的裸露内容\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt enhance\",\n      \"localized\": \"提示词增强\",\n      \"reload\": \"\",\n      \"hint\": \"一个扩展，可以使用不同的LLM重写提示词以获得更好的结果\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Manage extensions\",\n      \"localized\": \"管理扩展\",\n      \"reload\": \"\",\n      \"hint\": \"管理扩展\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Manual install\",\n      \"localized\": \"手动安装\",\n      \"reload\": \"\",\n      \"hint\": \"手动安装扩展\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Extension GIT repository URL\",\n      \"localized\": \"扩展GIT仓库URL\",\n      \"reload\": \"\",\n      \"hint\": \"指定扩展在GitHub上的仓库URL\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Specific branch name\",\n      \"localized\": \"指定分支名称\",\n      \"reload\": \"\",\n      \"hint\": \"指定扩展分支名称，留空使用默认值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Local directory name\",\n      \"localized\": \"本地目录名称\",\n      \"reload\": \"\",\n      \"hint\": \"安装扩展的目录，留空使用默认值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refresh extension list\",\n      \"localized\": \"刷新扩展列表\",\n      \"reload\": \"\",\n      \"hint\": \"刷新可用扩展列表\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Update all installed\",\n      \"localized\": \"更新所有已安装\",\n      \"reload\": \"\",\n      \"hint\": \"将已安装的扩展更新到最新版本\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Apply changes\",\n      \"localized\": \"应用更改\",\n      \"reload\": \"\",\n      \"hint\": \"应用所有更改并重启服务器\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Uninstall\",\n      \"localized\": \"卸载\",\n      \"reload\": \"\",\n      \"hint\": \"卸载此扩展\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"User interface\",\n      \"localized\": \"用户界面\",\n      \"reload\": \"\",\n      \"hint\": \"查看并设置用户界面偏好\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Set UI defaults\",\n      \"localized\": \"设置UI默认值\",\n      \"reload\": \"\",\n      \"hint\": \"将当前值设置为用户界面的默认值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Benchmark\",\n      \"localized\": \"基准测试\",\n      \"reload\": \"\",\n      \"hint\": \"运行基准测试\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models & Networks\",\n      \"localized\": \"模型与网络\",\n      \"reload\": \"\",\n      \"hint\": \"查看所有可用模型和网络的列表\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore UI defaults\",\n      \"localized\": \"恢复UI默认值\",\n      \"reload\": \"\",\n      \"hint\": \"恢复默认用户界面值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer classes\",\n      \"localized\": \"Detailer 类\",\n      \"reload\": \"\",\n      \"hint\": \"如果选择的 Detailer 模型是多类别模型，则指定要使用的特定类别\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer models\",\n      \"localized\": \"Detailer 模型\",\n      \"reload\": \"\",\n      \"hint\": \"选择用于细节化（detailing）的检测模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer negative prompt\",\n      \"localized\": \"Detailer 负面提示词\",\n      \"reload\": \"\",\n      \"hint\": \"为 Detailer 使用单独的负面提示词。如果不存在，将使用主要负面提示词\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer prompt\",\n      \"localized\": \"Detailer 提示词\",\n      \"reload\": \"\",\n      \"hint\": \"为 Detailer 使用单独的提示词。如果不存在，将使用主要提示词\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer steps\",\n      \"localized\": \"Detailer 步数\",\n      \"reload\": \"\",\n      \"hint\": \"Detailer 过程运行的步数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer strength\",\n      \"localized\": \"Detailer 强度\",\n      \"reload\": \"\",\n      \"hint\": \"Detailer 过程的去噪强度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Detailer use model augment\",\n      \"localized\": \"Detailer 使用模型增强\",\n      \"reload\": \"\",\n      \"hint\": \"以额外精度运行 Detailer 检测模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max detected\",\n      \"localized\": \"最大检测数量\",\n      \"reload\": \"\",\n      \"hint\": \"对最大数量的检测对象运行 Detailer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Edge blur\",\n      \"localized\": \"边缘模糊\",\n      \"reload\": \"\",\n      \"hint\": \"按此百分比模糊遮罩区域的边缘\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Edge padding\",\n      \"localized\": \"边缘填充\",\n      \"reload\": \"\",\n      \"hint\": \"按此百分比扩展遮罩区域的边缘\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Min confidence\",\n      \"localized\": \"最小置信度\",\n      \"reload\": \"\",\n      \"hint\": \"检测到的项目的最小置信度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max overlap\",\n      \"localized\": \"最大重叠\",\n      \"reload\": \"\",\n      \"hint\": \"两个检测到的项目在其中一个被丢弃前的最大重叠度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Min size\",\n      \"localized\": \"最小尺寸\",\n      \"reload\": \"\",\n      \"hint\": \"检测到的对象占总图像的最小尺寸百分比\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Max size\",\n      \"localized\": \"最大尺寸\",\n      \"reload\": \"\",\n      \"hint\": \"检测到的对象占总图像的最大尺寸百分比\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Image\",\n      \"localized\": \"处理图像\",\n      \"reload\": \"\",\n      \"hint\": \"处理单张图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Batch\",\n      \"localized\": \"处理批次\",\n      \"reload\": \"\",\n      \"hint\": \"处理批量图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Process Folder\",\n      \"localized\": \"处理文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"处理文件夹中的所有图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Current\",\n      \"localized\": \"当前\",\n      \"reload\": \"\",\n      \"hint\": \"分析当前加载模型中的模块\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Merge\",\n      \"localized\": \"合并\",\n      \"reload\": \"\",\n      \"hint\": \"将两个或更多模型合并为一个新模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Modules\",\n      \"localized\": \"模块\",\n      \"reload\": \"\",\n      \"hint\": \"将模块合并和/或替换到现有模型中\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Validate\",\n      \"localized\": \"验证\",\n      \"reload\": \"\",\n      \"hint\": \"验证所有本地模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CivitAI\",\n      \"localized\": \"CivitAI\",\n      \"reload\": \"\",\n      \"hint\": \"从 CivitAI 搜索和下载模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scale by\",\n      \"localized\": \"按比例缩放\",\n      \"reload\": \"\",\n      \"hint\": \"使用此选项卡按选定因子调整源图像大小\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scale to\",\n      \"localized\": \"缩放到\",\n      \"reload\": \"\",\n      \"hint\": \"使用此选项卡将源图像调整到选定的目标大小\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Input directory\",\n      \"localized\": \"输入目录\",\n      \"reload\": \"\",\n      \"hint\": \"您要处理的图像所在的文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Output directory\",\n      \"localized\": \"输出目录\",\n      \"reload\": \"\",\n      \"hint\": \"处理后的图像应保存到的文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show result images\",\n      \"localized\": \"显示结果图像\",\n      \"reload\": \"\",\n      \"hint\": \"启用以在图像面板中显示处理后的图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop to fit\",\n      \"localized\": \"裁剪以适应\",\n      \"reload\": \"\",\n      \"hint\": \"如果您的源图像尺寸（例如 512x510）与目标尺寸（例如 1024x768）不符，此功能会将您的放大图像调整到目标尺寸图像中。超出部分将被裁剪\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refine Upscaler\",\n      \"localized\": \"精修放大器\",\n      \"reload\": \"\",\n      \"hint\": \"选择在初始放大器后运行的辅助放大器\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler 2 visibility\",\n      \"localized\": \"放大器2可见性\",\n      \"reload\": \"\",\n      \"hint\": \"辅助放大器的强度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Calculate hash for all models\",\n      \"localized\": \"计算所有模型的哈希值\",\n      \"reload\": \"\",\n      \"hint\": \"计算所有可用模型的哈希值，这可能需要很长时间\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Weights Clip\",\n      \"localized\": \"权重裁剪\",\n      \"reload\": \"\",\n      \"hint\": \"强制合并后的权重不超过原始模型，防止烧毁和过度饱和的模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ReBasin\",\n      \"localized\": \"ReBasin\",\n      \"reload\": \"\",\n      \"hint\": \"执行多次带排列的合并，以便保留两个模型的更多特征\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Number of ReBasin Iterations\",\n      \"localized\": \"ReBasin 迭代次数\",\n      \"reload\": \"\",\n      \"hint\": \"在保存前合并和置换模型的次数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CPU\",\n      \"localized\": \"CPU\",\n      \"reload\": \"\",\n      \"hint\": \"仅使用CPU和RAM：最慢但最不容易出现内存不足（OOM）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Shuffle\",\n      \"localized\": \"洗牌\",\n      \"reload\": \"\",\n      \"hint\": \"将完整模型加载到RAM并在VRAM上计算：加速效果较小，建议用于SDXL合并\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"In Blocks\",\n      \"localized\": \"输入块\",\n      \"reload\": \"\",\n      \"hint\": \"UNet的下采样块（SD1.5为12个值，SDXL为9个值）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Mid Block\",\n      \"localized\": \"中间块\",\n      \"reload\": \"\",\n      \"hint\": \"UNet的中心块（1个值）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Out Block\",\n      \"localized\": \"输出块\",\n      \"reload\": \"\",\n      \"hint\": \"UNet的上采样块（SD1.5为12个值，SDXL为9个值）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Preset Interpolation Ratio\",\n      \"localized\": \"预设插值比例\",\n      \"reload\": \"\",\n      \"hint\": \"如果选择了两个预设，则在其间进行插值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Adapter\",\n      \"localized\": \"适配器\",\n      \"reload\": \"\",\n      \"hint\": \"IP适配器模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Active ip adapters\",\n      \"localized\": \"活动的IP适配器\",\n      \"reload\": \"\",\n      \"hint\": \"活动IP适配器的数量\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Unload adapter\",\n      \"localized\": \"卸载适配器\",\n      \"reload\": \"\",\n      \"hint\": \"生成后立即卸载IP适配器。否则，IP适配器将保持加载状态，以便在下次生成过程中更快使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Crop to portrait\",\n      \"localized\": \"裁剪为肖像\",\n      \"reload\": \"\",\n      \"hint\": \"在用作IP适配器输入之前，将输入图像裁剪为仅肖像模式\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Layer options\",\n      \"localized\": \"层选项\",\n      \"reload\": \"\",\n      \"hint\": \"手动指定IP适配器高级层选项\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"X values\",\n      \"localized\": \"X 值\",\n      \"reload\": \"\",\n      \"hint\": \"使用逗号分隔X轴的值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Y values\",\n      \"localized\": \"Y 值\",\n      \"reload\": \"\",\n      \"hint\": \"使用逗号分隔Y轴的值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Z values\",\n      \"localized\": \"Z 值\",\n      \"reload\": \"\",\n      \"hint\": \"使用逗号分隔Z轴的值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Loops\",\n      \"localized\": \"循环\",\n      \"reload\": \"\",\n      \"hint\": \"处理图像的次数。每次输出都用作下一个循环的输入。如果设置为1，则行为将如同未使用此脚本\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Final denoising strength\",\n      \"localized\": \"最终去噪强度\",\n      \"reload\": \"\",\n      \"hint\": \"批处理中每张图像最终循环的去噪强度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Denoising strength curve\",\n      \"localized\": \"去噪强度曲线\",\n      \"reload\": \"\",\n      \"hint\": \"去噪曲线控制每次循环中去噪强度变化的速度。激进：大部分变化发生在循环开始时。线性：变化在所有循环中保持不变。惰性：大部分变化发生在循环结束时\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Tile overlap\",\n      \"localized\": \"瓦片重叠\",\n      \"reload\": \"\",\n      \"hint\": \"对于SD放大，瓦片之间应有多少像素重叠。瓦片重叠是为了当它们合并回一张图片时，没有清晰可见的接缝\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Color to Mask\",\n      \"localized\": \"ACI：颜色转遮罩\",\n      \"reload\": \"\",\n      \"hint\": \"选择您想要遮罩和内绘的颜色。点击图像中的颜色以自动选择它。\\n 建议使用绿幕等图像以获得精确结果。\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Color Tolerance\",\n      \"localized\": \"ACI：颜色容差\",\n      \"reload\": \"\",\n      \"hint\": \"调整容差以在遮罩中包含相似颜色。值越低 = 仅遮罩非常相似的颜色。值越高 = 遮罩更广泛的相似颜色。\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Mask Erode\",\n      \"localized\": \"ACI：遮罩侵蚀\",\n      \"reload\": \"\",\n      \"hint\": \"调整填充以对遮罩应用内部偏移。（建议值 = 2，以去除边缘残留）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Mask Blur\",\n      \"localized\": \"ACI：遮罩模糊\",\n      \"reload\": \"\",\n      \"hint\": \"调整模糊以在图像和内绘区域之间应用平滑过渡。（建议值 = 0 以获得锐利度）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ACI: Denoising Strength\",\n      \"localized\": \"ACI：去噪强度\",\n      \"reload\": \"\",\n      \"hint\": \"更改去噪强度以达到所需的内绘量。\"\n    }\n  ],\n  \"settings\": [\n    {\n      \"id\": \"\",\n      \"label\": \"Apply settings\",\n      \"localized\": \"应用设置\",\n      \"reload\": \"\",\n      \"hint\": \"保存当前设置，建议重启服务器\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Loading\",\n      \"localized\": \"模型加载\",\n      \"reload\": \"\",\n      \"hint\": \"与模型加载方式相关的设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Options\",\n      \"localized\": \"模型选项\",\n      \"reload\": \"\",\n      \"hint\": \"与特定模型行为相关的设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Offloading\",\n      \"localized\": \"模型卸载\",\n      \"reload\": \"\",\n      \"hint\": \"与模型卸载和内存管理相关的设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model Quantization\",\n      \"localized\": \"模型量化\",\n      \"reload\": \"\",\n      \"hint\": \"与模型量化相关的设置，用于减少内存使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Metadata\",\n      \"localized\": \"图像元数据\",\n      \"reload\": \"\",\n      \"hint\": \"与处理生成图像时创建的元数据相关的设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Legacy Options\",\n      \"localized\": \"旧版选项\",\n      \"reload\": \"\",\n      \"hint\": \"与旧版选项相关的设置 - 不应使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restart server\",\n      \"localized\": \"重启服务器\",\n      \"reload\": \"\",\n      \"hint\": \"重启服务器\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Shutdown server\",\n      \"localized\": \"关闭服务器\",\n      \"reload\": \"\",\n      \"hint\": \"关闭服务器\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Preview theme\",\n      \"localized\": \"预览主题\",\n      \"reload\": \"\",\n      \"hint\": \"显示主题预览\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Restore defaults\",\n      \"localized\": \"恢复默认设置\",\n      \"reload\": \"\",\n      \"hint\": \"恢复默认服务器设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Unload model\",\n      \"localized\": \"卸载模型\",\n      \"reload\": \"\",\n      \"hint\": \"卸载当前加载的模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Reload model\",\n      \"localized\": \"重新加载模型\",\n      \"reload\": \"\",\n      \"hint\": \"重新加载当前选定的模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Models & Loading\",\n      \"localized\": \"模型与加载\",\n      \"reload\": \"\",\n      \"hint\": \"与基础模型、主要后端和模型加载行为相关的设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Variational Auto Encoder\",\n      \"localized\": \"变分自编码器\",\n      \"reload\": \"\",\n      \"hint\": \"与变分自编码器以及生成过程中的图像解码相关的设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Text encoder\",\n      \"localized\": \"文本编码器\",\n      \"reload\": \"\",\n      \"hint\": \"与文本编码器以及生成过程中的提示词编码处理相关的设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Compute Settings\",\n      \"localized\": \"计算设置\",\n      \"reload\": \"\",\n      \"hint\": \"与计算精度、交叉注意力以及计算平台优化相关的设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Backend Settings\",\n      \"localized\": \"后端设置\",\n      \"reload\": \"\",\n      \"hint\": \"与计算后端相关的设置：torch、onnx 和 olive\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Quantization Settings\",\n      \"localized\": \"量化设置\",\n      \"reload\": \"\",\n      \"hint\": \"与模型量化相关的设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Pipeline modifiers\",\n      \"localized\": \"管道修改器\",\n      \"reload\": \"\",\n      \"hint\": \"生成过程中可启用的附加功能\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model compile\",\n      \"localized\": \"模型编译\",\n      \"reload\": \"\",\n      \"hint\": \"与不同模型编译方法相关的设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"System Paths\",\n      \"localized\": \"系统路径\",\n      \"reload\": \"\",\n      \"hint\": \"与各种模型目录位置相关的设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Options\",\n      \"localized\": \"图像选项\",\n      \"reload\": \"\",\n      \"hint\": \"与图像格式、元数据和图像网格相关的设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Image Paths\",\n      \"localized\": \"图像路径\",\n      \"reload\": \"\",\n      \"hint\": \"与图像文件名和输出目录相关的设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Live Previews\",\n      \"localized\": \"实时预览\",\n      \"reload\": \"\",\n      \"hint\": \"与实时预览、音频通知相关的设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sampler Settings\",\n      \"localized\": \"采样器设置\",\n      \"reload\": \"\",\n      \"hint\": \"与采样器选择和配置，以及扩散器特定采样器配置相关的设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Postprocessing\",\n      \"localized\": \"后处理\",\n      \"reload\": \"\",\n      \"hint\": \"与图像生成后处理、面部修复和放大相关的设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Control Options\",\n      \"localized\": \"控制选项\",\n      \"reload\": \"\",\n      \"hint\": \"与“控制”选项卡相关的设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Huggingface\",\n      \"localized\": \"Huggingface\",\n      \"reload\": \"\",\n      \"hint\": \"与 Huggingface 访问相关的设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Show all pages\",\n      \"localized\": \"显示所有页面\",\n      \"reload\": \"\",\n      \"hint\": \"显示所有设置页面\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Base model\",\n      \"localized\": \"基础模型\",\n      \"reload\": \"\",\n      \"hint\": \"用于所有操作的主模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Refiner model\",\n      \"localized\": \"Refiner model\",\n      \"reload\": \"\",\n      \"hint\": \"用于第二遍操作的 Refiner 模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Cached models\",\n      \"localized\": \"缓存模型\",\n      \"reload\": \"\",\n      \"hint\": \"在内存中存储的模型数量，以便快速访问\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE model\",\n      \"localized\": \"VAE 模型\",\n      \"reload\": \"\",\n      \"hint\": \"VAE 有助于处理最终图像中的精细细节，并可能改变颜色\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model load using streams\",\n      \"localized\": \"使用流加载模型\",\n      \"reload\": \"\",\n      \"hint\": \"加载模型时尝试流式加载，针对慢速或网络存储进行了优化\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xFormers\",\n      \"localized\": \"xFormers\",\n      \"reload\": \"\",\n      \"hint\": \"内存优化。非确定性（每次结果可能不同）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Scaled-Dot-Product\",\n      \"localized\": \"Scaled-Dot-Product\",\n      \"reload\": \"\",\n      \"hint\": \"内存优化。除非禁用 SDP 内存注意力，否则为非确定性。\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Prompt padding\",\n      \"localized\": \"提示词填充\",\n      \"reload\": \"\",\n      \"hint\": \"当使用超过 75 个 Token 时，通过在 n 个 Token 内从最后一个逗号进行填充来增加连贯性\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Original\",\n      \"localized\": \"原始\",\n      \"reload\": \"\",\n      \"hint\": \"原始 LDM 后端\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Autocast\",\n      \"localized\": \"Autocast\",\n      \"reload\": \"\",\n      \"hint\": \"在运行时自动确定精度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full\",\n      \"localized\": \"完整\",\n      \"reload\": \"\",\n      \"hint\": \"始终使用完整精度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"FP32\",\n      \"localized\": \"FP32\",\n      \"reload\": \"\",\n      \"hint\": \"计算中使用 32 位浮点精度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"FP16\",\n      \"localized\": \"FP16\",\n      \"reload\": \"\",\n      \"hint\": \"计算中使用 16 位浮点精度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"BF16\",\n      \"localized\": \"BF16\",\n      \"reload\": \"\",\n      \"hint\": \"计算中使用修改后的 16 位浮点精度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Full precision (--no-half-vae)\",\n      \"localized\": \"完整精度 (--no-half-vae)\",\n      \"reload\": \"\",\n      \"hint\": \"对 VAE 使用 FP32。可能会产生更好的结果，但会占用更多显存并减慢生成速度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Force full precision (--no-half)\",\n      \"localized\": \"强制完整精度 (--no-half)\",\n      \"reload\": \"\",\n      \"hint\": \"对模型使用 FP32。可能会产生更好的结果，但会占用更多显存并减慢生成速度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upcast sampling\",\n      \"localized\": \"上采样\",\n      \"reload\": \"\",\n      \"hint\": \"通常会产生与 --no-half 类似的结果，同时性能更好且内存使用更少\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Attempt VAE roll back for NaN values\",\n      \"localized\": \"尝试为 NaN 值回滚 VAE\",\n      \"reload\": \"\",\n      \"hint\": \"需要 Torch 2.1 并启用 NaN 检查\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive use FP16 on optimization\",\n      \"localized\": \"Olive 优化时使用 FP16\",\n      \"reload\": \"\",\n      \"hint\": \"对 Olive 优化过程的输出模型使用 16 位浮点精度。如果禁用，则使用 32 位浮点精度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive force FP32 for VAE Encoder\",\n      \"localized\": \"Olive 强制 VAE 编码器使用 FP32\",\n      \"reload\": \"\",\n      \"hint\": \"对输出模型的 VAE 编码器使用 32 位浮点精度。这将覆盖“优化时使用 FP16”选项。如果您从 Img2Img 获得 NaN 或黑色空白图像，请启用此选项并清除缓存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive use static dimensions\",\n      \"localized\": \"Olive 使用静态维度\",\n      \"reload\": \"\",\n      \"hint\": \"使使用 Olive 优化模型的推理速度大幅提升。(OrtTransformersOptimization)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Olive cache optimized models\",\n      \"localized\": \"Olive 缓存优化模型\",\n      \"reload\": \"\",\n      \"hint\": \"将 Olive 处理过的模型保存为缓存。您可以在 ONNX 选项卡中管理它们\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"File format\",\n      \"localized\": \"文件格式\",\n      \"reload\": \"\",\n      \"hint\": \"选择图像文件格式\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Include metadata\",\n      \"localized\": \"包含元数据\",\n      \"reload\": \"\",\n      \"hint\": \"将图像创建参数保存为图像文件内的元数据标签\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Images filename pattern\",\n      \"localized\": \"图像文件名模式\",\n      \"reload\": \"\",\n      \"hint\": \"使用以下标签定义图像文件名：<br><pre>seq, uuid<br>date, datetime, job_timestamp<br>generation_number, batch_number<br>model, model_shortname<br>model_hash, model_name<br>sampler, seed, steps, cfg<br>clip_skip, denoising<br>hasprompt, prompt, styles<br>prompt_hash, prompt_no_styles<br>prompt_spaces, prompt_words<br>height, width, image_hash<br></pre>\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Row count\",\n      \"localized\": \"行数\",\n      \"reload\": \"\",\n      \"hint\": \"使用 -1 自动检测，使用 0 则与批处理大小相同\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Directory name pattern\",\n      \"localized\": \"目录名模式\",\n      \"reload\": \"\",\n      \"hint\": \"使用以下标签定义图像和网格的子目录：[steps], [cfg],[prompt_hash], [prompt], [prompt_no_styles], [prompt_spaces], [width], [height], [styles], [sampler], [seed], [model_hash], [model_name], [prompt_words], [date], [datetime], [datetime<Format>], [datetime<Format><Time Zone>], [job_timestamp]; 留空则为默认\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inpainting conditioning mask strength\",\n      \"localized\": \"Inpainting 条件遮罩强度\",\n      \"reload\": \"\",\n      \"hint\": \"确定对原始图像进行 Inpainting 和 img2img 时的遮罩强度。1.0 表示完全遮罩（默认）。0.0 表示完全不遮罩。较低的值有助于保留图像的整体构图，但在大幅更改时会遇到困难\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Clip skip\",\n      \"localized\": \"Clip 跳过\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP 模型的提前停止参数；1 表示像往常一样在最后一层停止，2 表示在倒数第二层停止，以此类推\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Images folder\",\n      \"localized\": \"图像文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"如果为空，则默认为下方三个目录\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Grids folder\",\n      \"localized\": \"网格文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"如果为空，则默认为下方两个目录\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Quicksettings list\",\n      \"localized\": \"快速设置列表\",\n      \"reload\": \"\",\n      \"hint\": \"以逗号分隔的设置名称列表，用于应显示在顶部快速访问栏而非设置选项卡中的设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Live preview display period\",\n      \"localized\": \"实时预览显示周期\",\n      \"reload\": \"\",\n      \"hint\": \"每 n 步请求预览图像，设置为 0 禁用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Approximate\",\n      \"localized\": \"近似\",\n      \"reload\": \"\",\n      \"hint\": \"廉价的神经网络近似。与 VAE 相比非常快，但生成的图片水平/垂直分辨率小 4 倍，质量较低\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Simple\",\n      \"localized\": \"简单\",\n      \"reload\": \"\",\n      \"hint\": \"非常廉价的近似。与 VAE 相比非常快，但生成的图片水平/垂直分辨率小 8 倍，质量极低\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Progress update period\",\n      \"localized\": \"进度更新周期\",\n      \"reload\": \"\",\n      \"hint\": \"UI 进度条和预览检查的更新周期，单位为毫秒\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Euler a\",\n      \"localized\": \"Euler a\",\n      \"reload\": \"\",\n      \"hint\": \"Euler Ancestral - 非常具有创造性，每次可以根据步数获得完全不同的图片，将步数设置高于 30-40 没有帮助\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"DDIM\",\n      \"localized\": \"DDIM\",\n      \"reload\": \"\",\n      \"hint\": \"去噪扩散隐式模型 - 最擅长 Inpainting\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"UniPC\",\n      \"localized\": \"UniPC\",\n      \"reload\": \"\",\n      \"hint\": \"用于快速采样扩散模型的统一预测校正框架\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Sigma negative guidance minimum\",\n      \"localized\": \"Sigma 负面引导最小值\",\n      \"reload\": \"\",\n      \"hint\": \"当图像接近完成时，在某些步数跳过负面提示词，0=禁用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler tile size\",\n      \"localized\": \"放大器瓦片大小\",\n      \"reload\": \"\",\n      \"hint\": \"0 = 不分块\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Upscaler tile overlap\",\n      \"localized\": \"放大器瓦片重叠\",\n      \"reload\": \"\",\n      \"hint\": \"值低 = 可见接缝\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"GFPGAN\",\n      \"localized\": \"GFPGAN\",\n      \"reload\": \"\",\n      \"hint\": \"使用 GFPGAN 神经网络修复低质量面部\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CodeFormer\",\n      \"localized\": \"CodeFormer\",\n      \"reload\": \"\",\n      \"hint\": \"使用 CodeFormer 神经网络修复低质量面部\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"CodeFormer weight parameter\",\n      \"localized\": \"CodeFormer 权重参数\",\n      \"reload\": \"\",\n      \"hint\": \"0 = 最大效果；1 = 最小效果\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ToMe token merging ratio\",\n      \"localized\": \"ToMe token 合并比例\",\n      \"reload\": \"\",\n      \"hint\": \"通过 tomesd 启用冗余 token 合并以提高速度和内存，0=禁用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Todo token merging ratio\",\n      \"localized\": \"Todo token 合并比例\",\n      \"reload\": \"\",\n      \"hint\": \"通过 todo 启用冗余 token 合并以提高速度和内存，0=禁用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model pipeline\",\n      \"localized\": \"模型管道\",\n      \"reload\": \"\",\n      \"hint\": \"如果自动检测未能自动检测到模型，请在加载模型前选择模型类型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE slicing\",\n      \"localized\": \"VAE 切片\",\n      \"reload\": \"\",\n      \"hint\": \"在 VRAM 有限的情况下，一次解码一批潜在空间中的一张图像。在多图像批次上，VAE 解码性能略有提升\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"VAE tiling\",\n      \"localized\": \"VAE 分块\",\n      \"reload\": \"\",\n      \"hint\": \"在 VRAM 有限的情况下，将大图像分割成重叠的瓦片。导致处理时间略微增加\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Dynamic attention BMM\",\n      \"localized\": \"动态注意力 BMM\",\n      \"reload\": \"\",\n      \"hint\": \"分步执行注意力计算而不是一次性完成。推理时间更长，但内存使用量大幅减少\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX Execution Provider\",\n      \"localized\": \"ONNX 执行提供程序\",\n      \"reload\": \"\",\n      \"hint\": \"ONNX 执行提供程序\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX allow fallback to CPU\",\n      \"localized\": \"ONNX 允许回退到 CPU\",\n      \"reload\": \"\",\n      \"hint\": \"当选定的执行提供程序失败时，允许回退到 CPU\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX cache converted models\",\n      \"localized\": \"ONNX 缓存转换后的模型\",\n      \"reload\": \"\",\n      \"hint\": \"将转换为 ONNX 格式的模型保存为缓存。您可以在 ONNX 选项卡中管理它们\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ONNX unload base model when processing refiner\",\n      \"localized\": \"ONNX 在处理 Refiner 时卸载基础模型\",\n      \"reload\": \"\",\n      \"hint\": \"当 Refiner 模型正在转换/优化/处理时，卸载基础模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Inference-mode\",\n      \"localized\": \"推理模式\",\n      \"reload\": \"\",\n      \"hint\": \"使用 torch.inference_mode\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"no-grad\",\n      \"localized\": \"无梯度\",\n      \"reload\": \"\",\n      \"hint\": \"使用 torch.no_grad\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Model compile precompile\",\n      \"localized\": \"模型编译预编译\",\n      \"reload\": \"\",\n      \"hint\": \"在模型加载时立即运行模型编译，而不是首次使用时\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Use zeros for prompt padding\",\n      \"localized\": \"提示词填充使用零\",\n      \"reload\": \"\",\n      \"hint\": \"当提示词为空时，强制使用全零张量以消除任何残余噪声\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Include invisible watermark\",\n      \"localized\": \"包含隐形水印\",\n      \"reload\": \"\",\n      \"hint\": \"通过改变某些像素值向图像添加隐形水印\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invisible watermark string\",\n      \"localized\": \"隐形水印字符串\",\n      \"reload\": \"\",\n      \"hint\": \"要添加到图像的水印字符串。请保持非常短以避免图像损坏。\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show log view\",\n      \"localized\": \"显示日志视图\",\n      \"reload\": \"\",\n      \"hint\": \"在主窗口底部显示日志视图\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"Log view update period\",\n      \"localized\": \"日志视图更新周期\",\n      \"reload\": \"\",\n      \"hint\": \"日志视图更新周期，单位为毫秒\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"PAG layer names\",\n      \"localized\": \"PAG 层名称\",\n      \"reload\": \"\",\n      \"hint\": \"以空格分隔的层列表<br>可用：d[0-5], m[0], u[0-8]<br>默认：m0\"\n    }\n  ],\n  \"missing\": [\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage\",\n      \"localized\": \"第一阶段\",\n      \"reload\": \"\",\n      \"hint\": \"第一阶段\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage backbone\",\n      \"localized\": \"第一阶段主干\",\n      \"reload\": \"\",\n      \"hint\": \"第一阶段主干\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"1st stage skip\",\n      \"localized\": \"第一阶段跳过\",\n      \"reload\": \"\",\n      \"hint\": \"第一阶段跳过\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd restart step\",\n      \"localized\": \"第二次重启步骤\",\n      \"reload\": \"\",\n      \"hint\": \"第二次重启步骤\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd scale\",\n      \"localized\": \"第二次缩放\",\n      \"reload\": \"\",\n      \"hint\": \"第二次缩放\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage\",\n      \"localized\": \"第二阶段\",\n      \"reload\": \"\",\n      \"hint\": \"第二阶段\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage backbone\",\n      \"localized\": \"第二阶段主干\",\n      \"reload\": \"\",\n      \"hint\": \"第二阶段主干\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"2nd stage skip\",\n      \"localized\": \"第二阶段跳过\",\n      \"reload\": \"\",\n      \"hint\": \"第二阶段跳过\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd restart step\",\n      \"localized\": \"第三次重启步骤\",\n      \"reload\": \"\",\n      \"hint\": \"第三次重启步骤\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd scale\",\n      \"localized\": \"第三次缩放\",\n      \"reload\": \"\",\n      \"hint\": \"第三次缩放\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"3rd stage\",\n      \"localized\": \"第三阶段\",\n      \"reload\": \"\",\n      \"hint\": \"第三阶段\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th restart step\",\n      \"localized\": \"第四次重启步骤\",\n      \"reload\": \"\",\n      \"hint\": \"第四次重启步骤\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th scale\",\n      \"localized\": \"第四次缩放\",\n      \"reload\": \"\",\n      \"hint\": \"第四次缩放\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"4th stage\",\n      \"localized\": \"第四阶段\",\n      \"reload\": \"\",\n      \"hint\": \"第四阶段\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"a1111\",\n      \"localized\": \"A1111\",\n      \"reload\": \"\",\n      \"hint\": \"A1111\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"accuracy\",\n      \"localized\": \"精度\",\n      \"reload\": \"\",\n      \"hint\": \"精度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aci: mask dilate\",\n      \"localized\": \"ACI: 掩模膨胀\",\n      \"reload\": \"\",\n      \"hint\": \"ACI: 掩模膨胀\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"active\",\n      \"localized\": \"启用\",\n      \"reload\": \"\",\n      \"hint\": \"启用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adain\",\n      \"localized\": \"Adain\",\n      \"reload\": \"\",\n      \"hint\": \"Adain\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 1\",\n      \"localized\": \"适配器 1\",\n      \"reload\": \"\",\n      \"hint\": \"适配器 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 2\",\n      \"localized\": \"适配器 2\",\n      \"reload\": \"\",\n      \"hint\": \"适配器 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 3\",\n      \"localized\": \"适配器 3\",\n      \"reload\": \"\",\n      \"hint\": \"适配器 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adapter 4\",\n      \"localized\": \"适配器 4\",\n      \"reload\": \"\",\n      \"hint\": \"适配器 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"adaptive restore\",\n      \"localized\": \"自适应恢复\",\n      \"reload\": \"\",\n      \"hint\": \"自适应恢复\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"add text info\",\n      \"localized\": \"添加文本信息\",\n      \"reload\": \"\",\n      \"hint\": \"添加文本信息\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"add time info\",\n      \"localized\": \"添加时间信息\",\n      \"reload\": \"\",\n      \"hint\": \"添加时间信息\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"additional image browser folders\",\n      \"localized\": \"额外图片浏览器文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"额外图片浏览器文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"additional postprocessing operations\",\n      \"localized\": \"额外后处理操作\",\n      \"reload\": \"\",\n      \"hint\": \"额外后处理操作\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"advanced options\",\n      \"localized\": \"高级选项\",\n      \"reload\": \"\",\n      \"hint\": \"高级选项\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"after\",\n      \"localized\": \"之后\",\n      \"reload\": \"\",\n      \"hint\": \"之后\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aggressive at step\",\n      \"localized\": \"激进步数\",\n      \"reload\": \"\",\n      \"hint\": \"激进步数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alias\",\n      \"localized\": \"别名\",\n      \"reload\": \"\",\n      \"hint\": \"别名\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"all\",\n      \"localized\": \"全部\",\n      \"reload\": \"\",\n      \"hint\": \"全部\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"allowed aspect ratios\",\n      \"localized\": \"允许的宽高比\",\n      \"reload\": \"\",\n      \"hint\": \"允许的宽高比\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha\",\n      \"localized\": \"Alpha\",\n      \"reload\": \"\",\n      \"hint\": \"Alpha\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha block weight preset\",\n      \"localized\": \"Alpha块权重预设\",\n      \"reload\": \"\",\n      \"hint\": \"Alpha块权重预设\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha matting\",\n      \"localized\": \"Alpha抠图\",\n      \"reload\": \"\",\n      \"hint\": \"Alpha抠图\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha preset\",\n      \"localized\": \"Alpha预设\",\n      \"reload\": \"\",\n      \"hint\": \"Alpha预设\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"alpha ratio\",\n      \"localized\": \"Alpha比例\",\n      \"reload\": \"\",\n      \"hint\": \"Alpha比例\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"amplify lut\",\n      \"localized\": \"放大查找表\",\n      \"reload\": \"\",\n      \"hint\": \"放大查找表\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"analyze\",\n      \"localized\": \"分析\",\n      \"reload\": \"\",\n      \"hint\": \"分析\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"anchor settings\",\n      \"localized\": \"锚点设置\",\n      \"reload\": \"\",\n      \"hint\": \"锚点设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"animateddiff\",\n      \"localized\": \"AnimatedDiff\",\n      \"reload\": \"\",\n      \"hint\": \"AnimatedDiff\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"answer\",\n      \"localized\": \"答案\",\n      \"reload\": \"\",\n      \"hint\": \"答案\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"aot_ts_nvfuser\",\n      \"localized\": \"aot_ts_nvfuser\",\n      \"reload\": \"\",\n      \"hint\": \"aot_ts_nvfuser\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"appearance\",\n      \"localized\": \"外观\",\n      \"reload\": \"\",\n      \"hint\": \"外观\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append caption files\",\n      \"localized\": \"附加描述文件\",\n      \"reload\": \"\",\n      \"hint\": \"附加描述文件\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append image info json file\",\n      \"localized\": \"附加图像信息JSON文件\",\n      \"reload\": \"\",\n      \"hint\": \"附加图像信息JSON文件\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"append interrogated prompt at each iteration\",\n      \"localized\": \"在每次迭代时附加审问后的提示词\",\n      \"reload\": \"\",\n      \"hint\": \"在每次迭代时附加审问后的提示词\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply color correction\",\n      \"localized\": \"应用色彩校正\",\n      \"reload\": \"\",\n      \"hint\": \"应用色彩校正\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply filter\",\n      \"localized\": \"应用滤镜\",\n      \"reload\": \"\",\n      \"hint\": \"应用滤镜\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply linfusion distillation on load\",\n      \"localized\": \"在加载时应用LinFusion蒸馏\",\n      \"reload\": \"\",\n      \"hint\": \"在加载时应用LinFusion蒸馏\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply mask as overlay\",\n      \"localized\": \"将掩模作为叠加层应用\",\n      \"reload\": \"\",\n      \"hint\": \"将掩模作为叠加层应用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply msw-msa\",\n      \"localized\": \"应用MSW-MSA\",\n      \"reload\": \"\",\n      \"hint\": \"应用MSW-MSA\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply rau-net\",\n      \"localized\": \"应用RAU-Net\",\n      \"reload\": \"\",\n      \"hint\": \"应用RAU-Net\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"apply to model\",\n      \"localized\": \"应用到模型\",\n      \"reload\": \"\",\n      \"hint\": \"应用到模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"artists\",\n      \"localized\": \"艺术家\",\n      \"reload\": \"\",\n      \"hint\": \"艺术家\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"atiadlxx (amd only)\",\n      \"localized\": \"atiadlxx (仅限AMD)\",\n      \"reload\": \"\",\n      \"hint\": \"atiadlxx (仅限AMD)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention\",\n      \"localized\": \"注意力\",\n      \"reload\": \"\",\n      \"hint\": \"注意力\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention adain\",\n      \"localized\": \"注意力Adain\",\n      \"reload\": \"\",\n      \"hint\": \"注意力Adain\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention cache enabled\",\n      \"localized\": \"注意力缓存已启用\",\n      \"reload\": \"\",\n      \"hint\": \"注意力缓存已启用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention chunking threshold\",\n      \"localized\": \"注意力分块阈值\",\n      \"reload\": \"\",\n      \"hint\": \"注意力分块阈值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention kv chunk size\",\n      \"localized\": \"注意力KV块大小\",\n      \"reload\": \"\",\n      \"hint\": \"注意力KV块大小\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"attention query chunk size\",\n      \"localized\": \"注意力查询块大小\",\n      \"reload\": \"\",\n      \"hint\": \"注意力查询块大小\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto\",\n      \"localized\": \"自动\",\n      \"reload\": \"\",\n      \"hint\": \"自动\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto apply\",\n      \"localized\": \"自动应用\",\n      \"reload\": \"\",\n      \"hint\": \"自动应用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-convert sd15 embeddings to sdxl\",\n      \"localized\": \"自动将SD15嵌入转换为SDXL\",\n      \"reload\": \"\",\n      \"hint\": \"自动将SD15嵌入转换为SDXL\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-mask\",\n      \"localized\": \"自动掩模\",\n      \"reload\": \"\",\n      \"hint\": \"自动掩模\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"auto-segment\",\n      \"localized\": \"自动分割\",\n      \"reload\": \"\",\n      \"hint\": \"自动分割\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"autolaunch browser upon startup\",\n      \"localized\": \"启动时自动启动浏览器\",\n      \"reload\": \"\",\n      \"hint\": \"启动时自动启动浏览器\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"automatically determine rank\",\n      \"localized\": \"自动确定秩\",\n      \"reload\": \"\",\n      \"hint\": \"自动确定秩\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"autorank ratio\",\n      \"localized\": \"自动秩比例\",\n      \"reload\": \"\",\n      \"hint\": \"自动秩比例\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"available networks\",\n      \"localized\": \"可用网络\",\n      \"reload\": \"\",\n      \"hint\": \"可用网络\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"backend\",\n      \"localized\": \"后端\",\n      \"reload\": \"\",\n      \"hint\": \"后端\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"backend storage\",\n      \"localized\": \"后端存储\",\n      \"reload\": \"\",\n      \"hint\": \"后端存储\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"background threshold\",\n      \"localized\": \"背景阈值\",\n      \"reload\": \"\",\n      \"hint\": \"背景阈值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced\",\n      \"localized\": \"平衡\",\n      \"reload\": \"\",\n      \"hint\": \"平衡\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload cpu high watermark\",\n      \"localized\": \"平衡卸载CPU高水位线\",\n      \"reload\": \"\",\n      \"hint\": \"平衡卸载CPU高水位线\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload gpu high watermark\",\n      \"localized\": \"平衡卸载GPU高水位线\",\n      \"reload\": \"\",\n      \"hint\": \"平衡卸载GPU高水位线\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"balanced offload gpu low watermark\",\n      \"localized\": \"平衡卸载GPU低水位线\",\n      \"reload\": \"\",\n      \"hint\": \"平衡卸载GPU低水位线\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"base\",\n      \"localized\": \"基础\",\n      \"reload\": \"\",\n      \"hint\": \"基础\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch caption\",\n      \"localized\": \"批量描述\",\n      \"reload\": \"\",\n      \"hint\": \"批量描述\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch input directory\",\n      \"localized\": \"批量输入目录\",\n      \"reload\": \"\",\n      \"hint\": \"批量输入目录\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch interogate\",\n      \"localized\": \"批量审问\",\n      \"reload\": \"\",\n      \"hint\": \"批量审问\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch interrogate\",\n      \"localized\": \"批量审问\",\n      \"reload\": \"\",\n      \"hint\": \"批量审问\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch mask directory\",\n      \"localized\": \"批量掩模目录\",\n      \"reload\": \"\",\n      \"hint\": \"批量掩模目录\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch matrix-matrix\",\n      \"localized\": \"批量矩阵运算\",\n      \"reload\": \"\",\n      \"hint\": \"批量矩阵运算\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch mode uses sequential seeds\",\n      \"localized\": \"批处理模式使用顺序种子\",\n      \"reload\": \"\",\n      \"hint\": \"批处理模式使用顺序种子\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch output directory\",\n      \"localized\": \"批量输出目录\",\n      \"reload\": \"\",\n      \"hint\": \"批量输出目录\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"batch uses original name\",\n      \"localized\": \"批处理使用原始名称\",\n      \"reload\": \"\",\n      \"hint\": \"批处理使用原始名称\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bdia ddim\",\n      \"localized\": \"bdia ddim\",\n      \"reload\": \"\",\n      \"hint\": \"bdia ddim\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"before\",\n      \"localized\": \"之前\",\n      \"reload\": \"\",\n      \"hint\": \"之前\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"benchmark level\",\n      \"localized\": \"基准级别\",\n      \"reload\": \"\",\n      \"hint\": \"基准级别\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"benchmark steps\",\n      \"localized\": \"基准步数\",\n      \"reload\": \"\",\n      \"hint\": \"基准步数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta block weight preset\",\n      \"localized\": \"Beta块权重预设\",\n      \"reload\": \"\",\n      \"hint\": \"Beta块权重预设\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta end\",\n      \"localized\": \"Beta结束\",\n      \"reload\": \"\",\n      \"hint\": \"Beta结束\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta ratio\",\n      \"localized\": \"Beta比例\",\n      \"reload\": \"\",\n      \"hint\": \"Beta比例\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta schedule\",\n      \"localized\": \"Beta调度\",\n      \"reload\": \"\",\n      \"hint\": \"Beta调度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"beta start\",\n      \"localized\": \"Beta开始\",\n      \"reload\": \"\",\n      \"hint\": \"Beta开始\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bh1\",\n      \"localized\": \"bh1\",\n      \"reload\": \"\",\n      \"hint\": \"bh1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"bh2\",\n      \"localized\": \"bh2\",\n      \"reload\": \"\",\n      \"hint\": \"bh2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"block\",\n      \"localized\": \"块\",\n      \"reload\": \"\",\n      \"hint\": \"块\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"block skip range\",\n      \"localized\": \"块跳过范围\",\n      \"reload\": \"\",\n      \"hint\": \"块跳过范围\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"blur\",\n      \"localized\": \"模糊\",\n      \"reload\": \"\",\n      \"hint\": \"模糊\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"body\",\n      \"localized\": \"主体\",\n      \"reload\": \"\",\n      \"hint\": \"主体\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"boost\",\n      \"localized\": \"增强\",\n      \"reload\": \"\",\n      \"hint\": \"增强\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"brightness\",\n      \"localized\": \"亮度\",\n      \"reload\": \"\",\n      \"hint\": \"亮度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cache model\",\n      \"localized\": \"缓存模型\",\n      \"reload\": \"\",\n      \"hint\": \"缓存模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cache text encoder results\",\n      \"localized\": \"缓存文本编码器结果\",\n      \"reload\": \"\",\n      \"hint\": \"缓存文本编码器结果\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"canny\",\n      \"localized\": \"边缘检测\",\n      \"reload\": \"\",\n      \"hint\": \"边缘检测\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"caption\",\n      \"localized\": \"图像描述\",\n      \"reload\": \"\",\n      \"hint\": \"图像描述\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"caption model\",\n      \"localized\": \"图像描述模型\",\n      \"reload\": \"\",\n      \"hint\": \"图像描述模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"center\",\n      \"localized\": \"居中\",\n      \"reload\": \"\",\n      \"hint\": \"居中\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change log\",\n      \"localized\": \"更新日志\",\n      \"reload\": \"\",\n      \"hint\": \"更新日志\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change model\",\n      \"localized\": \"更改模型\",\n      \"reload\": \"\",\n      \"hint\": \"更改模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change rate\",\n      \"localized\": \"更改率\",\n      \"reload\": \"\",\n      \"hint\": \"更改率\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change reference\",\n      \"localized\": \"更改参考\",\n      \"reload\": \"\",\n      \"hint\": \"更改参考\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change refiner\",\n      \"localized\": \"更改细化器\",\n      \"reload\": \"\",\n      \"hint\": \"更改细化器\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"change vae\",\n      \"localized\": \"更改VAE\",\n      \"reload\": \"\",\n      \"hint\": \"更改VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"channels last\",\n      \"localized\": \"通道在后\",\n      \"reload\": \"\",\n      \"hint\": \"通道在后\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"check alternative hash\",\n      \"localized\": \"检查替代哈希\",\n      \"reload\": \"\",\n      \"hint\": \"检查替代哈希\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"check for updates\",\n      \"localized\": \"检查更新\",\n      \"reload\": \"\",\n      \"hint\": \"检查更新\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"check status\",\n      \"localized\": \"检查状态\",\n      \"reload\": \"\",\n      \"hint\": \"检查状态\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"chunk size\",\n      \"localized\": \"块大小\",\n      \"reload\": \"\",\n      \"hint\": \"块大小\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"civitai model type\",\n      \"localized\": \"Civitai模型类型\",\n      \"reload\": \"\",\n      \"hint\": \"Civitai模型类型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"civitai token\",\n      \"localized\": \"Civitai令牌\",\n      \"reload\": \"\",\n      \"hint\": \"Civitai令牌\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ck flash attention\",\n      \"localized\": \"CK Flash注意力\",\n      \"reload\": \"\",\n      \"hint\": \"CK Flash注意力\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ckpt\",\n      \"localized\": \"ckpt\",\n      \"reload\": \"\",\n      \"hint\": \"ckpt\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cleanup temporary folder on startup\",\n      \"localized\": \"启动时清理临时文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"启动时清理临时文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip model\",\n      \"localized\": \"CLIP模型\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: chunk size\",\n      \"localized\": \"CLIP: 块大小\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: 块大小\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: default captioner\",\n      \"localized\": \"CLIP: 默认图像描述器\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: 默认图像描述器\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: default mode\",\n      \"localized\": \"CLIP: 默认模式\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: 默认模式\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: default model\",\n      \"localized\": \"CLIP: 默认模型\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: 默认模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: intermediate flavors\",\n      \"localized\": \"CLIP: 中间风格\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: 中间风格\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: max flavors\",\n      \"localized\": \"CLIP: 最大风格数量\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: 最大风格数量\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: max length\",\n      \"localized\": \"CLIP: 最大长度\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: 最大长度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: min flavors\",\n      \"localized\": \"CLIP: 最小风格数量\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: 最小风格数量\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: min length\",\n      \"localized\": \"CLIP: 最小长度\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: 最小长度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"clip: num beams\",\n      \"localized\": \"CLIP: 波束数量\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP: 波束数量\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"close\",\n      \"localized\": \"关闭\",\n      \"reload\": \"\",\n      \"hint\": \"关闭\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cmsi\",\n      \"localized\": \"cmsi\",\n      \"reload\": \"\",\n      \"hint\": \"cmsi\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn end\",\n      \"localized\": \"CN结束\",\n      \"reload\": \"\",\n      \"hint\": \"CN结束\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn mode\",\n      \"localized\": \"CN模式\",\n      \"reload\": \"\",\n      \"hint\": \"CN模式\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn start\",\n      \"localized\": \"CN开始\",\n      \"reload\": \"\",\n      \"hint\": \"CN开始\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn strength\",\n      \"localized\": \"CN强度\",\n      \"reload\": \"\",\n      \"hint\": \"CN强度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cn tiles\",\n      \"localized\": \"CN平铺\",\n      \"reload\": \"\",\n      \"hint\": \"CN平铺\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"coarse\",\n      \"localized\": \"粗糙\",\n      \"reload\": \"\",\n      \"hint\": \"粗糙\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color\",\n      \"localized\": \"颜色\",\n      \"reload\": \"\",\n      \"hint\": \"颜色\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color grading\",\n      \"localized\": \"色彩校正\",\n      \"reload\": \"\",\n      \"hint\": \"色彩校正\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color map\",\n      \"localized\": \"色彩映射\",\n      \"reload\": \"\",\n      \"hint\": \"色彩映射\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"color variation\",\n      \"localized\": \"颜色变化\",\n      \"reload\": \"\",\n      \"hint\": \"颜色变化\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"colormap\",\n      \"localized\": \"色彩图\",\n      \"reload\": \"\",\n      \"hint\": \"色彩图\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"columns\",\n      \"localized\": \"列\",\n      \"reload\": \"\",\n      \"hint\": \"列\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"comma\",\n      \"localized\": \"逗号\",\n      \"reload\": \"\",\n      \"hint\": \"逗号\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"comma separated list with optional strength per lora\",\n      \"localized\": \"逗号分隔列表，每个Lora可选强度\",\n      \"reload\": \"\",\n      \"hint\": \"逗号分隔列表，每个Lora可选强度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"compact view\",\n      \"localized\": \"紧凑视图\",\n      \"reload\": \"\",\n      \"hint\": \"紧凑视图\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"compel\",\n      \"localized\": \"强制\",\n      \"reload\": \"\",\n      \"hint\": \"强制\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"composite\",\n      \"localized\": \"复合\",\n      \"reload\": \"\",\n      \"hint\": \"复合\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"compress ratio\",\n      \"localized\": \"压缩比例\",\n      \"reload\": \"\",\n      \"hint\": \"压缩比例\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"concept tokens\",\n      \"localized\": \"概念令牌\",\n      \"reload\": \"\",\n      \"hint\": \"概念令牌\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context\",\n      \"localized\": \"上下文\",\n      \"reload\": \"\",\n      \"hint\": \"上下文\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context after\",\n      \"localized\": \"后续上下文\",\n      \"reload\": \"\",\n      \"hint\": \"后续上下文\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context before\",\n      \"localized\": \"前置上下文\",\n      \"reload\": \"\",\n      \"hint\": \"前置上下文\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"context mask\",\n      \"localized\": \"上下文掩码\",\n      \"reload\": \"\",\n      \"hint\": \"上下文掩码\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"contrast\",\n      \"localized\": \"对比度\",\n      \"reload\": \"\",\n      \"hint\": \"对比度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control factor\",\n      \"localized\": \"控制因子\",\n      \"reload\": \"\",\n      \"hint\": \"控制因子\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control override denoise strength\",\n      \"localized\": \"控制覆盖去噪强度\",\n      \"reload\": \"\",\n      \"hint\": \"控制覆盖去噪强度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control preprocess input images\",\n      \"localized\": \"控制预处理输入图像\",\n      \"reload\": \"\",\n      \"hint\": \"控制预处理输入图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 1\",\n      \"localized\": \"Control-LLLite单元1\",\n      \"reload\": \"\",\n      \"hint\": \"Control-LLLite单元1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 2\",\n      \"localized\": \"Control-LLLite单元2\",\n      \"reload\": \"\",\n      \"hint\": \"Control-LLLite单元2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 3\",\n      \"localized\": \"Control-LLLite单元3\",\n      \"reload\": \"\",\n      \"hint\": \"Control-LLLite单元3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"control-lllite unit 4\",\n      \"localized\": \"Control-LLLite单元4\",\n      \"reload\": \"\",\n      \"hint\": \"Control-LLLite单元4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet\",\n      \"localized\": \"ControlNet\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 1\",\n      \"localized\": \"ControlNet单元1\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet单元1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 2\",\n      \"localized\": \"ControlNet单元2\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet单元2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 3\",\n      \"localized\": \"ControlNet单元3\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet单元3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet unit 4\",\n      \"localized\": \"ControlNet单元4\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet单元4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs\",\n      \"localized\": \"ControlNet-XS\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet-XS\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 1\",\n      \"localized\": \"ControlNet-XS单元1\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet-XS单元1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 2\",\n      \"localized\": \"ControlNet-XS单元2\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet-XS单元2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 3\",\n      \"localized\": \"ControlNet-XS单元3\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet-XS单元3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"controlnet-xs unit 4\",\n      \"localized\": \"ControlNet-XS单元4\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet-XS单元4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"correction mode\",\n      \"localized\": \"校正模式\",\n      \"reload\": \"\",\n      \"hint\": \"校正模式\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine background\",\n      \"localized\": \"余弦背景\",\n      \"reload\": \"\",\n      \"hint\": \"余弦背景\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale\",\n      \"localized\": \"余弦比例\",\n      \"reload\": \"\",\n      \"hint\": \"余弦比例\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale 1\",\n      \"localized\": \"余弦比例1\",\n      \"reload\": \"\",\n      \"hint\": \"余弦比例1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale 2\",\n      \"localized\": \"余弦比例2\",\n      \"reload\": \"\",\n      \"hint\": \"余弦比例2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cosine scale 3\",\n      \"localized\": \"余弦比例3\",\n      \"reload\": \"\",\n      \"hint\": \"余弦比例3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"create image info text file\",\n      \"localized\": \"创建图像信息文本文件\",\n      \"reload\": \"\",\n      \"hint\": \"创建图像信息文本文件\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"create video\",\n      \"localized\": \"创建视频\",\n      \"reload\": \"\",\n      \"hint\": \"创建视频\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"create zip archive\",\n      \"localized\": \"创建zip压缩包\",\n      \"reload\": \"\",\n      \"hint\": \"创建zip压缩包\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cross-attention\",\n      \"localized\": \"交叉注意力\",\n      \"reload\": \"\",\n      \"hint\": \"交叉注意力\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cudagraphs\",\n      \"localized\": \"CUDA图\",\n      \"reload\": \"\",\n      \"hint\": \"CUDA图\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"cudamallocasync\",\n      \"localized\": \"cudamallocasync\",\n      \"reload\": \"\",\n      \"hint\": \"cudamallocasync\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"custom pipeline\",\n      \"localized\": \"自定义管道\",\n      \"reload\": \"\",\n      \"hint\": \"自定义管道\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dark\",\n      \"localized\": \"暗\",\n      \"reload\": \"\",\n      \"hint\": \"暗\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dc solver\",\n      \"localized\": \"DC求解器\",\n      \"reload\": \"\",\n      \"hint\": \"DC求解器\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ddpm\",\n      \"localized\": \"DDPM\",\n      \"reload\": \"\",\n      \"hint\": \"DDPM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"debug info\",\n      \"localized\": \"调试信息\",\n      \"reload\": \"\",\n      \"hint\": \"调试信息\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"decode\",\n      \"localized\": \"解码\",\n      \"reload\": \"\",\n      \"hint\": \"解码\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"decode chunks\",\n      \"localized\": \"解码块\",\n      \"reload\": \"\",\n      \"hint\": \"解码块\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deep-cache\",\n      \"localized\": \"深度缓存\",\n      \"reload\": \"\",\n      \"hint\": \"深度缓存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru\",\n      \"localized\": \"DeepBooru\",\n      \"reload\": \"\",\n      \"hint\": \"DeepBooru\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: escape brackets\",\n      \"localized\": \"DeepBooru: 转义括号\",\n      \"reload\": \"\",\n      \"hint\": \"DeepBooru: 转义括号\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: exclude tags\",\n      \"localized\": \"DeepBooru: 排除标签\",\n      \"reload\": \"\",\n      \"hint\": \"DeepBooru: 排除标签\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: include scores in results\",\n      \"localized\": \"DeepBooru: 在结果中包含分数\",\n      \"reload\": \"\",\n      \"hint\": \"DeepBooru: 在结果中包含分数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: max tags\",\n      \"localized\": \"DeepBooru: 最大标签数\",\n      \"reload\": \"\",\n      \"hint\": \"DeepBooru: 最大标签数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: score threshold\",\n      \"localized\": \"DeepBooru: 分数阈值\",\n      \"reload\": \"\",\n      \"hint\": \"DeepBooru: 分数阈值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: sort alphabetically\",\n      \"localized\": \"DeepBooru: 按字母顺序排序\",\n      \"reload\": \"\",\n      \"hint\": \"DeepBooru: 按字母顺序排序\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepbooru: use spaces for tags\",\n      \"localized\": \"DeepBooru: 标签使用空格\",\n      \"reload\": \"\",\n      \"hint\": \"DeepBooru: 标签使用空格\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deepcache cache interval\",\n      \"localized\": \"深度缓存间隔\",\n      \"reload\": \"\",\n      \"hint\": \"深度缓存间隔\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"default\",\n      \"localized\": \"默认\",\n      \"reload\": \"\",\n      \"hint\": \"默认\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deis\",\n      \"localized\": \"迪斯\",\n      \"reload\": \"\",\n      \"hint\": \"迪斯\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"denoising batch size\",\n      \"localized\": \"去噪批次大小\",\n      \"reload\": \"\",\n      \"hint\": \"去噪批次大小\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"denoising steps\",\n      \"localized\": \"去噪步数\",\n      \"reload\": \"\",\n      \"hint\": \"去噪步数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth and normal\",\n      \"localized\": \"深度与法线\",\n      \"reload\": \"\",\n      \"hint\": \"深度与法线\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth anything\",\n      \"localized\": \"任意深度\",\n      \"reload\": \"\",\n      \"hint\": \"任意深度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth map\",\n      \"localized\": \"深度图\",\n      \"reload\": \"\",\n      \"hint\": \"深度图\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"depth threshold\",\n      \"localized\": \"深度阈值\",\n      \"reload\": \"\",\n      \"hint\": \"深度阈值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"description\",\n      \"localized\": \"描述\",\n      \"reload\": \"\",\n      \"hint\": \"描述\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"details\",\n      \"localized\": \"详情\",\n      \"reload\": \"\",\n      \"hint\": \"详情\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"deterministic mode\",\n      \"localized\": \"确定性模式\",\n      \"reload\": \"\",\n      \"hint\": \"确定性模式\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"device info\",\n      \"localized\": \"设备信息\",\n      \"reload\": \"\",\n      \"hint\": \"设备信息\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"diffusers\",\n      \"localized\": \"Diffusers\",\n      \"reload\": \"\",\n      \"hint\": \"Diffusers\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dilate\",\n      \"localized\": \"膨胀\",\n      \"reload\": \"\",\n      \"hint\": \"膨胀\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dilate tau\",\n      \"localized\": \"膨胀Tau\",\n      \"reload\": \"\",\n      \"hint\": \"膨胀Tau\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"directml retry ops for nan\",\n      \"localized\": \"DirectML NaN重试操作\",\n      \"reload\": \"\",\n      \"hint\": \"DirectML NaN重试操作\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"directory for temporary images; leave empty for default\",\n      \"localized\": \"临时图片目录；留空为默认\",\n      \"reload\": \"\",\n      \"hint\": \"临时图片目录；留空为默认\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disable accelerate\",\n      \"localized\": \"禁用加速\",\n      \"reload\": \"\",\n      \"hint\": \"禁用加速\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disable conditional batching\",\n      \"localized\": \"禁用条件批处理\",\n      \"reload\": \"\",\n      \"hint\": \"禁用条件批处理\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"disabled\",\n      \"localized\": \"已禁用\",\n      \"reload\": \"\",\n      \"hint\": \"已禁用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"discard penultimate sigma\",\n      \"localized\": \"丢弃倒数第二层Sigma\",\n      \"reload\": \"\",\n      \"hint\": \"丢弃倒数第二层Sigma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"distance threshold\",\n      \"localized\": \"距离阈值\",\n      \"reload\": \"\",\n      \"hint\": \"距离阈值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"do not change selected model when reading generation parameters\",\n      \"localized\": \"读取生成参数时不更改所选模型\",\n      \"reload\": \"\",\n      \"hint\": \"读取生成参数时不更改所选模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"do not display video output in ui\",\n      \"localized\": \"不在UI中显示视频输出\",\n      \"reload\": \"\",\n      \"hint\": \"不在UI中显示视频输出\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"down\",\n      \"localized\": \"向下\",\n      \"reload\": \"\",\n      \"hint\": \"向下\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download\",\n      \"localized\": \"下载\",\n      \"reload\": \"\",\n      \"hint\": \"下载\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download model\",\n      \"localized\": \"下载模型\",\n      \"reload\": \"\",\n      \"hint\": \"下载模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download path\",\n      \"localized\": \"下载路径\",\n      \"reload\": \"\",\n      \"hint\": \"下载路径\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"download updates\",\n      \"localized\": \"下载更新\",\n      \"reload\": \"\",\n      \"hint\": \"下载更新\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"downscale high resolution live previews\",\n      \"localized\": \"下采样高分辨率实时预览\",\n      \"reload\": \"\",\n      \"hint\": \"下采样高分辨率实时预览\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm sde\",\n      \"localized\": \"DPM SDE\",\n      \"reload\": \"\",\n      \"hint\": \"DPM SDE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++\",\n      \"localized\": \"DPM++\",\n      \"reload\": \"\",\n      \"hint\": \"DPM++\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 1s\",\n      \"localized\": \"DPM++ 1S\",\n      \"reload\": \"\",\n      \"hint\": \"DPM++ 1S\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m\",\n      \"localized\": \"DPM++ 2M\",\n      \"reload\": \"\",\n      \"hint\": \"DPM++ 2M\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m edm\",\n      \"localized\": \"DPM++ 2M EDM\",\n      \"reload\": \"\",\n      \"hint\": \"DPM++ 2M EDM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m inverse\",\n      \"localized\": \"DPM++ 2M 逆\",\n      \"reload\": \"\",\n      \"hint\": \"DPM++ 2M 逆\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 2m sde\",\n      \"localized\": \"DPM++ 2M SDE\",\n      \"reload\": \"\",\n      \"hint\": \"DPM++ 2M SDE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 3m\",\n      \"localized\": \"DPM++ 3M\",\n      \"reload\": \"\",\n      \"hint\": \"DPM++ 3M\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ 3m inverse\",\n      \"localized\": \"DPM++ 3M 逆\",\n      \"reload\": \"\",\n      \"hint\": \"DPM++ 3M 逆\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ cosine\",\n      \"localized\": \"DPM++ 余弦\",\n      \"reload\": \"\",\n      \"hint\": \"DPM++ 余弦\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ inverse\",\n      \"localized\": \"DPM++ 逆\",\n      \"reload\": \"\",\n      \"hint\": \"DPM++ 逆\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm++ sde\",\n      \"localized\": \"DPM++ SDE\",\n      \"reload\": \"\",\n      \"hint\": \"DPM++ SDE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2 flowmatch\",\n      \"localized\": \"DPM2 流量匹配\",\n      \"reload\": \"\",\n      \"hint\": \"DPM2 流量匹配\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2m flowmatch\",\n      \"localized\": \"DPM2++ 2M 流量匹配\",\n      \"reload\": \"\",\n      \"hint\": \"DPM2++ 2M 流量匹配\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2m sde flowmatch\",\n      \"localized\": \"DPM2++ 2M SDE 流量匹配\",\n      \"reload\": \"\",\n      \"hint\": \"DPM2++ 2M SDE 流量匹配\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 2s flowmatch\",\n      \"localized\": \"DPM2++ 2S 流量匹配\",\n      \"reload\": \"\",\n      \"hint\": \"DPM2++ 2S 流量匹配\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ 3m sde flowmatch\",\n      \"localized\": \"DPM2++ 3M SDE 流量匹配\",\n      \"reload\": \"\",\n      \"hint\": \"DPM2++ 3M SDE 流量匹配\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2++ sde flowmatch\",\n      \"localized\": \"DPM2++ SDE 流量匹配\",\n      \"reload\": \"\",\n      \"hint\": \"DPM2++ SDE 流量匹配\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dpm2a flowmatch\",\n      \"localized\": \"DPM2A 流量匹配\",\n      \"reload\": \"\",\n      \"hint\": \"DPM2A 流量匹配\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"draw legend\",\n      \"localized\": \"绘制图例\",\n      \"reload\": \"\",\n      \"hint\": \"绘制图例\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dropdown\",\n      \"localized\": \"下拉菜单\",\n      \"reload\": \"\",\n      \"hint\": \"下拉菜单\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"duration\",\n      \"localized\": \"持续时间\",\n      \"reload\": \"\",\n      \"hint\": \"持续时间\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dwpose\",\n      \"localized\": \"DWPose\",\n      \"reload\": \"\",\n      \"hint\": \"DWPose\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic\",\n      \"localized\": \"动态\",\n      \"reload\": \"\",\n      \"hint\": \"动态\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention\",\n      \"localized\": \"动态注意力\",\n      \"reload\": \"\",\n      \"hint\": \"动态注意力\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention slicing rate in gb\",\n      \"localized\": \"动态注意力切片速率 (GB)\",\n      \"reload\": \"\",\n      \"hint\": \"动态注意力切片速率 (GB)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"dynamic attention trigger rate in gb\",\n      \"localized\": \"动态注意力触发速率 (GB)\",\n      \"reload\": \"\",\n      \"hint\": \"动态注意力触发速率 (GB)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edge\",\n      \"localized\": \"边缘\",\n      \"reload\": \"\",\n      \"hint\": \"边缘\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edit start\",\n      \"localized\": \"编辑开始\",\n      \"reload\": \"\",\n      \"hint\": \"编辑开始\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"edit stop\",\n      \"localized\": \"编辑停止\",\n      \"reload\": \"\",\n      \"hint\": \"编辑停止\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"embedded metadata\",\n      \"localized\": \"嵌入式元数据\",\n      \"reload\": \"\",\n      \"hint\": \"嵌入式元数据\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable embeddings support\",\n      \"localized\": \"启用嵌入支持\",\n      \"reload\": \"\",\n      \"hint\": \"启用嵌入支持\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable file wildcards support\",\n      \"localized\": \"启用文件通配符支持\",\n      \"reload\": \"\",\n      \"hint\": \"启用文件通配符支持\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable freeu\",\n      \"localized\": \"启用FreeU\",\n      \"reload\": \"\",\n      \"hint\": \"启用FreeU\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable teacache\",\n      \"localized\": \"启用TeaCache\",\n      \"reload\": \"\",\n      \"hint\": \"启用TeaCache\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable tonemap\",\n      \"localized\": \"启用色调映射\",\n      \"reload\": \"\",\n      \"hint\": \"启用色调映射\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enable use of reference models\",\n      \"localized\": \"启用参考模型使用\",\n      \"reload\": \"\",\n      \"hint\": \"启用参考模型使用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enabled\",\n      \"localized\": \"已启用\",\n      \"reload\": \"\",\n      \"hint\": \"已启用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"encoder\",\n      \"localized\": \"编码器\",\n      \"reload\": \"\",\n      \"hint\": \"编码器\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"end\",\n      \"localized\": \"结束\",\n      \"reload\": \"\",\n      \"hint\": \"结束\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"enhance prompt\",\n      \"localized\": \"增强提示词\",\n      \"reload\": \"\",\n      \"hint\": \"增强提示词\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ensemble size\",\n      \"localized\": \"集成大小\",\n      \"reload\": \"\",\n      \"hint\": \"集成大小\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"epsilon\",\n      \"localized\": \"Epsilon\",\n      \"reload\": \"\",\n      \"hint\": \"Epsilon\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"erode\",\n      \"localized\": \"腐蚀\",\n      \"reload\": \"\",\n      \"hint\": \"腐蚀\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"erode size\",\n      \"localized\": \"腐蚀大小\",\n      \"reload\": \"\",\n      \"hint\": \"腐蚀大小\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"eta\",\n      \"localized\": \"Eta\",\n      \"reload\": \"\",\n      \"hint\": \"Eta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler\",\n      \"localized\": \"Euler\",\n      \"reload\": \"\",\n      \"hint\": \"Euler\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler edm\",\n      \"localized\": \"Euler EDM\",\n      \"reload\": \"\",\n      \"hint\": \"Euler EDM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler flowmatch\",\n      \"localized\": \"Euler 流量匹配\",\n      \"reload\": \"\",\n      \"hint\": \"Euler 流量匹配\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"euler sgm\",\n      \"localized\": \"Euler SGM\",\n      \"reload\": \"\",\n      \"hint\": \"Euler SGM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.cpu\",\n      \"localized\": \"执行提供者.CPU\",\n      \"reload\": \"\",\n      \"hint\": \"执行提供者.CPU\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.cuda\",\n      \"localized\": \"执行提供者.CUDA\",\n      \"reload\": \"\",\n      \"hint\": \"执行提供者.CUDA\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.directml\",\n      \"localized\": \"执行提供者.DirectML\",\n      \"reload\": \"\",\n      \"hint\": \"执行提供者.DirectML\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.migraphx\",\n      \"localized\": \"执行提供者.MIGraphX\",\n      \"reload\": \"\",\n      \"hint\": \"执行提供者.MIGraphX\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.openvino\",\n      \"localized\": \"执行提供者.OpenVINO\",\n      \"reload\": \"\",\n      \"hint\": \"执行提供者.OpenVINO\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"executionprovider.rocm\",\n      \"localized\": \"执行提供者.ROCm\",\n      \"reload\": \"\",\n      \"hint\": \"执行提供者.ROCm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"expandable segments\",\n      \"localized\": \"可展开段\",\n      \"reload\": \"\",\n      \"hint\": \"可展开段\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"exponential\",\n      \"localized\": \"指数\",\n      \"reload\": \"\",\n      \"hint\": \"指数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"exposure\",\n      \"localized\": \"曝光\",\n      \"reload\": \"\",\n      \"hint\": \"曝光\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"extra noise multiplier for img2img\",\n      \"localized\": \"img2img 的额外噪声乘数\",\n      \"reload\": \"\",\n      \"hint\": \"img2img 的额外噪声乘数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"extract lora\",\n      \"localized\": \"提取 LoRA\",\n      \"reload\": \"\",\n      \"hint\": \"提取 LoRA\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"face\",\n      \"localized\": \"人脸\",\n      \"reload\": \"\",\n      \"hint\": \"人脸\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"face confidence\",\n      \"localized\": \"人脸置信度\",\n      \"reload\": \"\",\n      \"hint\": \"人脸置信度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"faceid model\",\n      \"localized\": \"FaceID 模型\",\n      \"reload\": \"\",\n      \"hint\": \"FaceID 模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fall-off exponent (lower=higher detail)\",\n      \"localized\": \"衰减指数（越低细节越多）\",\n      \"reload\": \"\",\n      \"hint\": \"衰减指数（越低细节越多）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"false\",\n      \"localized\": \"否\",\n      \"reload\": \"\",\n      \"hint\": \"否\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fast\",\n      \"localized\": \"快速\",\n      \"reload\": \"\",\n      \"hint\": \"快速\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"file or folder with user-defined styles\",\n      \"localized\": \"包含用户定义样式的文件或文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"包含用户定义样式的文件或文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"filename\",\n      \"localized\": \"文件名\",\n      \"reload\": \"\",\n      \"hint\": \"文件名\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"first-block cache enabled\",\n      \"localized\": \"启用首块缓存\",\n      \"reload\": \"\",\n      \"hint\": \"启用首块缓存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fixed unet precision\",\n      \"localized\": \"固定 UNet 精度\",\n      \"reload\": \"\",\n      \"hint\": \"固定 UNet 精度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flash attention\",\n      \"localized\": \"Flash Attention\",\n      \"reload\": \"\",\n      \"hint\": \"Flash Attention\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flavors\",\n      \"localized\": \"风格\",\n      \"reload\": \"\",\n      \"hint\": \"风格\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"flow shift\",\n      \"localized\": \"流偏移\",\n      \"reload\": \"\",\n      \"hint\": \"流偏移\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder\",\n      \"localized\": \"文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for control generate\",\n      \"localized\": \"控制生成文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"控制生成文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for control grids\",\n      \"localized\": \"控制网格文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"控制网格文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for disk offload\",\n      \"localized\": \"磁盘卸载文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"磁盘卸载文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for huggingface cache\",\n      \"localized\": \"Hugging Face 缓存文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"Hugging Face 缓存文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for image generate\",\n      \"localized\": \"图像生成文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"图像生成文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for img2img grids\",\n      \"localized\": \"img2img 网格文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"img2img 网格文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for init images\",\n      \"localized\": \"初始化图像文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"初始化图像文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for manually saved images\",\n      \"localized\": \"手动保存图像文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"手动保存图像文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for onnx cached models\",\n      \"localized\": \"ONNX 缓存模型文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"ONNX 缓存模型文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for onnx conversion\",\n      \"localized\": \"ONNX 转换文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"ONNX 转换文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for openvino cache\",\n      \"localized\": \"OpenVINO 缓存文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"OpenVINO 缓存文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for processed images\",\n      \"localized\": \"处理过的图像文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"处理过的图像文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for text generate\",\n      \"localized\": \"文本生成文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"文本生成文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for tunable ops cache\",\n      \"localized\": \"可调操作缓存文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"可调操作缓存文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for txt2img grids\",\n      \"localized\": \"txt2img 网格文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"txt2img 网格文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder for videos\",\n      \"localized\": \"视频文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"视频文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with bsrgan models\",\n      \"localized\": \"BSRGAN 模型文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"BSRGAN 模型文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with chainner models\",\n      \"localized\": \"Chainner 模型文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"Chainner 模型文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with clip models\",\n      \"localized\": \"CLIP 模型文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"CLIP 模型文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with codeformer models\",\n      \"localized\": \"CodeFormer 模型文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"CodeFormer 模型文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with control models\",\n      \"localized\": \"ControlNet 模型文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"ControlNet 模型文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with esrgan models\",\n      \"localized\": \"ESRGAN 模型文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"ESRGAN 模型文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with gfpgan models\",\n      \"localized\": \"GFPGAN 模型文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"GFPGAN 模型文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with huggingface models\",\n      \"localized\": \"Hugging Face 模型文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"Hugging Face 模型文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with hypernetwork models\",\n      \"localized\": \"Hypernetwork 模型文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"Hypernetwork 模型文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with ldsr models\",\n      \"localized\": \"LDSR 模型文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"LDSR 模型文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with lora network(s)\",\n      \"localized\": \"LoRA 网络文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA 网络文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with realesrgan models\",\n      \"localized\": \"Real-ESRGAN 模型文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"Real-ESRGAN 模型文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with scunet models\",\n      \"localized\": \"SCUNet 模型文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"SCUNet 模型文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with stable diffusion models\",\n      \"localized\": \"Stable Diffusion 模型文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"Stable Diffusion 模型文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with swinir models\",\n      \"localized\": \"SwinIR 模型文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"SwinIR 模型文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with text encoder files\",\n      \"localized\": \"文本编码器文件文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"文本编码器文件文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with textual inversion embeddings\",\n      \"localized\": \"文本反转嵌入文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"文本反转嵌入文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with unet files\",\n      \"localized\": \"UNet 文件文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"UNet 文件文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with user-defined wildcards\",\n      \"localized\": \"用户定义通配符文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"用户定义通配符文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with vae files\",\n      \"localized\": \"VAE 文件文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"VAE 文件文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"folder with yolo models\",\n      \"localized\": \"YOLO 模型文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"YOLO 模型文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font color\",\n      \"localized\": \"字体颜色\",\n      \"reload\": \"\",\n      \"hint\": \"字体颜色\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font file\",\n      \"localized\": \"字体文件\",\n      \"reload\": \"\",\n      \"hint\": \"字体文件\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"font size\",\n      \"localized\": \"字体大小\",\n      \"reload\": \"\",\n      \"hint\": \"字体大小\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"force model eval\",\n      \"localized\": \"强制模型评估\",\n      \"reload\": \"\",\n      \"hint\": \"强制模型评估\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"foreground threshold\",\n      \"localized\": \"前景阈值\",\n      \"reload\": \"\",\n      \"hint\": \"前景阈值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fp4\",\n      \"localized\": \"fp4\",\n      \"reload\": \"\",\n      \"hint\": \"fp4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"frame change sensitivity\",\n      \"localized\": \"帧变化敏感度\",\n      \"reload\": \"\",\n      \"hint\": \"帧变化敏感度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"frames\",\n      \"localized\": \"帧\",\n      \"reload\": \"\",\n      \"hint\": \"帧\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeinit\",\n      \"localized\": \"FreeInit\",\n      \"reload\": \"\",\n      \"hint\": \"FreeInit\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeu enabled\",\n      \"localized\": \"启用 FreeU\",\n      \"reload\": \"\",\n      \"hint\": \"启用 FreeU\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"freeu preset\",\n      \"localized\": \"FreeU 预设\",\n      \"reload\": \"\",\n      \"hint\": \"FreeU 预设\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"full vae\",\n      \"localized\": \"完整 VAE\",\n      \"reload\": \"\",\n      \"hint\": \"完整 VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"full-depth cudnn benchmark\",\n      \"localized\": \"全深度 cuDNN 基准测试\",\n      \"reload\": \"\",\n      \"hint\": \"全深度 cuDNN 基准测试\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fuse strength\",\n      \"localized\": \"融合强度\",\n      \"reload\": \"\",\n      \"hint\": \"融合强度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"fused projections\",\n      \"localized\": \"融合投影\",\n      \"reload\": \"\",\n      \"hint\": \"融合投影\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gamma\",\n      \"localized\": \"伽马\",\n      \"reload\": \"\",\n      \"hint\": \"伽马\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gamma corrected\",\n      \"localized\": \"伽马校正\",\n      \"reload\": \"\",\n      \"hint\": \"伽马校正\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gate step\",\n      \"localized\": \"门控步长\",\n      \"reload\": \"\",\n      \"hint\": \"门控步长\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gc threshold\",\n      \"localized\": \"GC 阈值\",\n      \"reload\": \"\",\n      \"hint\": \"GC 阈值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"get changelog\",\n      \"localized\": \"获取更新日志\",\n      \"reload\": \"\",\n      \"hint\": \"获取更新日志\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gpu\",\n      \"localized\": \"GPU\",\n      \"reload\": \"\",\n      \"hint\": \"GPU\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"gradient\",\n      \"localized\": \"渐变\",\n      \"reload\": \"\",\n      \"hint\": \"渐变\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid background color\",\n      \"localized\": \"网格背景颜色\",\n      \"reload\": \"\",\n      \"hint\": \"网格背景颜色\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid margins\",\n      \"localized\": \"网格边距\",\n      \"reload\": \"\",\n      \"hint\": \"网格边距\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"grid sections:\",\n      \"localized\": \"网格部分：\",\n      \"reload\": \"\",\n      \"hint\": \"网格部分：\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"group size\",\n      \"localized\": \"组大小\",\n      \"reload\": \"\",\n      \"hint\": \"组大小\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance\",\n      \"localized\": \"指导\",\n      \"reload\": \"\",\n      \"hint\": \"指导\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance start\",\n      \"localized\": \"指导开始\",\n      \"reload\": \"\",\n      \"hint\": \"指导开始\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance stop\",\n      \"localized\": \"指导停止\",\n      \"reload\": \"\",\n      \"hint\": \"指导停止\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"guidance strength\",\n      \"localized\": \"指导强度\",\n      \"reload\": \"\",\n      \"hint\": \"指导强度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hands\",\n      \"localized\": \"手\",\n      \"reload\": \"\",\n      \"hint\": \"手\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hdr range\",\n      \"localized\": \"HDR 范围\",\n      \"reload\": \"\",\n      \"hint\": \"HDR 范围\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hed\",\n      \"localized\": \"HED\",\n      \"reload\": \"\",\n      \"hint\": \"HED\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height  after\",\n      \"localized\": \"调整后高度\",\n      \"reload\": \"\",\n      \"hint\": \"调整后高度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height  before\",\n      \"localized\": \"调整前高度\",\n      \"reload\": \"\",\n      \"hint\": \"调整前高度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"height  mask\",\n      \"localized\": \"高度遮罩\",\n      \"reload\": \"\",\n      \"hint\": \"高度遮罩\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"heun\",\n      \"localized\": \"Heun\",\n      \"reload\": \"\",\n      \"hint\": \"Heun\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"heun flowmatch\",\n      \"localized\": \"Heun 流匹配\",\n      \"reload\": \"\",\n      \"hint\": \"Heun 流匹配\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hidet\",\n      \"localized\": \"Hidet\",\n      \"reload\": \"\",\n      \"hint\": \"Hidet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"high threshold\",\n      \"localized\": \"高阈值\",\n      \"reload\": \"\",\n      \"hint\": \"高阈值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hires pass only\",\n      \"localized\": \"仅高分辨率处理\",\n      \"reload\": \"\",\n      \"hint\": \"仅高分辨率处理\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hq init latents\",\n      \"localized\": \"HQ 初始化潜在空间\",\n      \"reload\": \"\",\n      \"hint\": \"HQ 初始化潜在空间\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hue\",\n      \"localized\": \"色调\",\n      \"reload\": \"\",\n      \"hint\": \"色调\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"huggingface mirror\",\n      \"localized\": \"Hugging Face 镜像\",\n      \"reload\": \"\",\n      \"hint\": \"Hugging Face 镜像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"huggingface token\",\n      \"localized\": \"Hugging Face Token\",\n      \"reload\": \"\",\n      \"hint\": \"Hugging Face Token\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"hunyuan\",\n      \"localized\": \"混元\",\n      \"reload\": \"\",\n      \"hint\": \"混元\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"il\",\n      \"localized\": \"il\",\n      \"reload\": \"\",\n      \"hint\": \"il\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image height\",\n      \"localized\": \"图像高度\",\n      \"reload\": \"\",\n      \"hint\": \"图像高度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image quality\",\n      \"localized\": \"图像质量\",\n      \"reload\": \"\",\n      \"hint\": \"图像质量\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image transparent color fill\",\n      \"localized\": \"图像透明颜色填充\",\n      \"reload\": \"\",\n      \"hint\": \"图像透明颜色填充\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image watermark file\",\n      \"localized\": \"图像水印文件\",\n      \"reload\": \"\",\n      \"hint\": \"图像水印文件\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image watermark position\",\n      \"localized\": \"图像水印位置\",\n      \"reload\": \"\",\n      \"hint\": \"图像水印位置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"image width\",\n      \"localized\": \"图像宽度\",\n      \"reload\": \"\",\n      \"hint\": \"图像宽度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include images\",\n      \"localized\": \"包含图像\",\n      \"reload\": \"\",\n      \"hint\": \"包含图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include main grid\",\n      \"localized\": \"包含主网格\",\n      \"reload\": \"\",\n      \"hint\": \"包含主网格\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include mask in outputs\",\n      \"localized\": \"输出中包含蒙版\",\n      \"reload\": \"\",\n      \"hint\": \"输出中包含蒙版\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include original image\",\n      \"localized\": \"包含原始图像\",\n      \"reload\": \"\",\n      \"hint\": \"包含原始图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include scores in results when available\",\n      \"localized\": \"在结果中包含分数（如果可用）\",\n      \"reload\": \"\",\n      \"hint\": \"在结果中包含分数（如果可用）\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"include sub grids\",\n      \"localized\": \"包含子网格\",\n      \"reload\": \"\",\n      \"hint\": \"包含子网格\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inductor\",\n      \"localized\": \"电感器\",\n      \"reload\": \"\",\n      \"hint\": \"电感器\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"info\",\n      \"localized\": \"信息\",\n      \"reload\": \"\",\n      \"hint\": \"信息\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"info object\",\n      \"localized\": \"信息对象\",\n      \"reload\": \"\",\n      \"hint\": \"信息对象\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpaint\",\n      \"localized\": \"局部重绘\",\n      \"reload\": \"\",\n      \"hint\": \"局部重绘\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpaint masked only\",\n      \"localized\": \"仅重绘蒙版区域\",\n      \"reload\": \"\",\n      \"hint\": \"仅重绘蒙版区域\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpainting include greyscale mask in results\",\n      \"localized\": \"局部重绘结果中包含灰度蒙版\",\n      \"reload\": \"\",\n      \"hint\": \"局部重绘结果中包含灰度蒙版\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"inpainting include masked composite in results\",\n      \"localized\": \"局部重绘结果中包含蒙版合成图\",\n      \"reload\": \"\",\n      \"hint\": \"局部重绘结果中包含蒙版合成图\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"input model\",\n      \"localized\": \"输入模型\",\n      \"reload\": \"\",\n      \"hint\": \"输入模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"intermediates\",\n      \"localized\": \"中间产物\",\n      \"reload\": \"\",\n      \"hint\": \"中间产物\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"interpolate frames\",\n      \"localized\": \"插值帧\",\n      \"reload\": \"\",\n      \"hint\": \"插值帧\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"interpolation method\",\n      \"localized\": \"插值方法\",\n      \"reload\": \"\",\n      \"hint\": \"插值方法\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invert\",\n      \"localized\": \"反转\",\n      \"reload\": \"\",\n      \"hint\": \"反转\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"invert mask\",\n      \"localized\": \"反转蒙版\",\n      \"reload\": \"\",\n      \"hint\": \"反转蒙版\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iou\",\n      \"localized\": \"交并比\",\n      \"reload\": \"\",\n      \"hint\": \"交并比\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ipex\",\n      \"localized\": \"ipex\",\n      \"reload\": \"\",\n      \"hint\": \"ipex\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ipndm\",\n      \"localized\": \"ipndm\",\n      \"reload\": \"\",\n      \"hint\": \"ipndm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"item edge blur\",\n      \"localized\": \"项目边缘模糊\",\n      \"reload\": \"\",\n      \"hint\": \"项目边缘模糊\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"item padding\",\n      \"localized\": \"项目填充\",\n      \"reload\": \"\",\n      \"hint\": \"项目填充\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iterate seed per line\",\n      \"localized\": \"每行迭代种子\",\n      \"reload\": \"\",\n      \"hint\": \"每行迭代种子\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"iterations\",\n      \"localized\": \"迭代次数\",\n      \"reload\": \"\",\n      \"hint\": \"迭代次数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"karras\",\n      \"localized\": \"karras\",\n      \"reload\": \"\",\n      \"hint\": \"karras\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"kdpm2\",\n      \"localized\": \"kdpm2\",\n      \"reload\": \"\",\n      \"hint\": \"kdpm2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"kdpm2 a\",\n      \"localized\": \"kdpm2 a\",\n      \"reload\": \"\",\n      \"hint\": \"kdpm2 a\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"keep incomplete images\",\n      \"localized\": \"保留不完整的图像\",\n      \"reload\": \"\",\n      \"hint\": \"保留不完整的图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"large\",\n      \"localized\": \"大\",\n      \"reload\": \"\",\n      \"hint\": \"大\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"latent history size\",\n      \"localized\": \"潜在历史大小\",\n      \"reload\": \"\",\n      \"hint\": \"潜在历史大小\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"latent mode\",\n      \"localized\": \"潜在模式\",\n      \"reload\": \"\",\n      \"hint\": \"潜在模式\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layer scales\",\n      \"localized\": \"层级缩放\",\n      \"reload\": \"\",\n      \"hint\": \"层级缩放\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layerwise casting storage\",\n      \"localized\": \"逐层类型转换存储\",\n      \"reload\": \"\",\n      \"hint\": \"逐层类型转换存储\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"layerwise non-blocking operations\",\n      \"localized\": \"逐层非阻塞操作\",\n      \"reload\": \"\",\n      \"hint\": \"逐层非阻塞操作\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lcm\",\n      \"localized\": \"LCM\",\n      \"reload\": \"\",\n      \"hint\": \"LCM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ldsr processing steps\",\n      \"localized\": \"LDSR 处理步骤\",\n      \"reload\": \"\",\n      \"hint\": \"LDSR 处理步骤\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"left\",\n      \"localized\": \"左\",\n      \"reload\": \"\",\n      \"hint\": \"左\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"legend\",\n      \"localized\": \"图例\",\n      \"reload\": \"\",\n      \"hint\": \"图例\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"length\",\n      \"localized\": \"长度\",\n      \"reload\": \"\",\n      \"hint\": \"长度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"leres depth\",\n      \"localized\": \"LeReS 深度\",\n      \"reload\": \"\",\n      \"hint\": \"LeReS 深度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"level\",\n      \"localized\": \"级别\",\n      \"reload\": \"\",\n      \"hint\": \"级别\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"libs\",\n      \"localized\": \"库\",\n      \"reload\": \"\",\n      \"hint\": \"库\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"light\",\n      \"localized\": \"光线\",\n      \"reload\": \"\",\n      \"hint\": \"光线\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lineart\",\n      \"localized\": \"线稿\",\n      \"reload\": \"\",\n      \"hint\": \"线稿\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"list\",\n      \"localized\": \"列表\",\n      \"reload\": \"\",\n      \"hint\": \"列表\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"list model details\",\n      \"localized\": \"列出模型详情\",\n      \"reload\": \"\",\n      \"hint\": \"列出模型详情\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lite\",\n      \"localized\": \"精简版\",\n      \"reload\": \"\",\n      \"hint\": \"精简版\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"live update\",\n      \"localized\": \"实时更新\",\n      \"reload\": \"\",\n      \"hint\": \"实时更新\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lmsd\",\n      \"localized\": \"lmsd\",\n      \"reload\": \"\",\n      \"hint\": \"lmsd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"load custom diffusers pipeline\",\n      \"localized\": \"加载自定义 Diffusers 流水线\",\n      \"reload\": \"\",\n      \"hint\": \"加载自定义 Diffusers 流水线\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"load model directly to gpu\",\n      \"localized\": \"直接加载模型到 GPU\",\n      \"reload\": \"\",\n      \"hint\": \"直接加载模型到 GPU\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"loaded lora\",\n      \"localized\": \"已加载 LoRA\",\n      \"reload\": \"\",\n      \"hint\": \"已加载 LoRA\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"logsnr\",\n      \"localized\": \"logsnr\",\n      \"reload\": \"\",\n      \"hint\": \"logsnr\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"loop\",\n      \"localized\": \"循环\",\n      \"reload\": \"\",\n      \"hint\": \"循环\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora add hash info to metadata\",\n      \"localized\": \"LoRA 将哈希信息添加到元数据\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA 将哈希信息添加到元数据\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora auto-apply tags\",\n      \"localized\": \"LoRA 自动应用标签\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA 自动应用标签\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora load using diffusers method for selected models\",\n      \"localized\": \"LoRA 为选定模型使用 Diffusers 方法加载\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA 为选定模型使用 Diffusers 方法加载\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora load using legacy method\",\n      \"localized\": \"LoRA 使用旧方法加载\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA 使用旧方法加载\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lora target filename\",\n      \"localized\": \"LoRA 目标文件名\",\n      \"reload\": \"\",\n      \"hint\": \"LoRA 目标文件名\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"low order\",\n      \"localized\": \"低阶\",\n      \"reload\": \"\",\n      \"hint\": \"低阶\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"low threshold\",\n      \"localized\": \"低阈值\",\n      \"reload\": \"\",\n      \"hint\": \"低阈值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ltx model\",\n      \"localized\": \"ltx 模型\",\n      \"reload\": \"\",\n      \"hint\": \"ltx 模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"lumina: use mask in transformers\",\n      \"localized\": \"Lumina：在 Transformer 中使用蒙版\",\n      \"reload\": \"\",\n      \"hint\": \"Lumina：在 Transformer 中使用蒙版\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"manual block merge\",\n      \"localized\": \"手动块合并\",\n      \"reload\": \"\",\n      \"hint\": \"手动块合并\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"marigold depth\",\n      \"localized\": \"Marigold 深度\",\n      \"reload\": \"\",\n      \"hint\": \"Marigold 深度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask dropout\",\n      \"localized\": \"蒙版丢弃\",\n      \"reload\": \"\",\n      \"hint\": \"蒙版丢弃\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask invert\",\n      \"localized\": \"蒙版反转\",\n      \"reload\": \"\",\n      \"hint\": \"蒙版反转\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask only\",\n      \"localized\": \"仅蒙版\",\n      \"reload\": \"\",\n      \"hint\": \"仅蒙版\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mask strength\",\n      \"localized\": \"蒙版强度\",\n      \"reload\": \"\",\n      \"hint\": \"蒙版强度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"masked\",\n      \"localized\": \"已蒙版\",\n      \"reload\": \"\",\n      \"hint\": \"已蒙版\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"math attention\",\n      \"localized\": \"数学注意力\",\n      \"reload\": \"\",\n      \"hint\": \"数学注意力\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max faces\",\n      \"localized\": \"最大人脸数\",\n      \"reload\": \"\",\n      \"hint\": \"最大人脸数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max flavors\",\n      \"localized\": \"最大风格数\",\n      \"reload\": \"\",\n      \"hint\": \"最大风格数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max guidance\",\n      \"localized\": \"最大引导\",\n      \"reload\": \"\",\n      \"hint\": \"最大引导\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max length\",\n      \"localized\": \"最大长度\",\n      \"reload\": \"\",\n      \"hint\": \"最大长度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max object size\",\n      \"localized\": \"最大对象大小\",\n      \"reload\": \"\",\n      \"hint\": \"最大对象大小\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max range\",\n      \"localized\": \"最大范围\",\n      \"reload\": \"\",\n      \"hint\": \"最大范围\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max tokens\",\n      \"localized\": \"最大 Token 数\",\n      \"reload\": \"\",\n      \"hint\": \"最大 Token 数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max words\",\n      \"localized\": \"最大单词数\",\n      \"reload\": \"\",\n      \"hint\": \"最大单词数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max-autotune\",\n      \"localized\": \"max-autotune\",\n      \"reload\": \"\",\n      \"hint\": \"max-autotune\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"max-autotune-no-cudagraphs\",\n      \"localized\": \"max-autotune-no-cudagraphs\",\n      \"reload\": \"\",\n      \"hint\": \"max-autotune-no-cudagraphs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum image size (mp)\",\n      \"localized\": \"最大图像尺寸 (百万像素)\",\n      \"reload\": \"\",\n      \"hint\": \"最大图像尺寸 (百万像素)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum number of units\",\n      \"localized\": \"最大单元数\",\n      \"reload\": \"\",\n      \"hint\": \"最大单元数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"maximum rank\",\n      \"localized\": \"最大秩\",\n      \"reload\": \"\",\n      \"hint\": \"最大秩\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mediapipe face\",\n      \"localized\": \"MediaPipe 人脸\",\n      \"reload\": \"\",\n      \"hint\": \"MediaPipe 人脸\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"medium\",\n      \"localized\": \"中等\",\n      \"reload\": \"\",\n      \"hint\": \"中等\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mediums\",\n      \"localized\": \"媒介\",\n      \"reload\": \"\",\n      \"hint\": \"媒介\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory\",\n      \"localized\": \"内存\",\n      \"reload\": \"\",\n      \"hint\": \"内存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory attention\",\n      \"localized\": \"内存注意力\",\n      \"reload\": \"\",\n      \"hint\": \"内存注意力\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory limit\",\n      \"localized\": \"内存限制\",\n      \"reload\": \"\",\n      \"hint\": \"内存限制\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"memory optimization\",\n      \"localized\": \"内存优化\",\n      \"reload\": \"\",\n      \"hint\": \"内存优化\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"merge alpha\",\n      \"localized\": \"合并 Alpha\",\n      \"reload\": \"\",\n      \"hint\": \"合并 Alpha\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method\",\n      \"localized\": \"方法\",\n      \"reload\": \"\",\n      \"hint\": \"方法\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method after\",\n      \"localized\": \"后置方法\",\n      \"reload\": \"\",\n      \"hint\": \"后置方法\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method before\",\n      \"localized\": \"前置方法\",\n      \"reload\": \"\",\n      \"hint\": \"前置方法\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"method mask\",\n      \"localized\": \"方法蒙版\",\n      \"reload\": \"\",\n      \"hint\": \"方法蒙版\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"midas depth\",\n      \"localized\": \"MiDaS 深度\",\n      \"reload\": \"\",\n      \"hint\": \"MiDaS 深度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"migraphx\",\n      \"localized\": \"migraphx\",\n      \"reload\": \"\",\n      \"hint\": \"migraphx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min flavors\",\n      \"localized\": \"最小风格\",\n      \"reload\": \"\",\n      \"hint\": \"最小风格\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min guidance\",\n      \"localized\": \"最小引导\",\n      \"reload\": \"\",\n      \"hint\": \"最小引导\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min length\",\n      \"localized\": \"最小长度\",\n      \"reload\": \"\",\n      \"hint\": \"最小长度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"min object size\",\n      \"localized\": \"最小对象尺寸\",\n      \"reload\": \"\",\n      \"hint\": \"最小对象尺寸\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mine\",\n      \"localized\": \"我的\",\n      \"reload\": \"\",\n      \"hint\": \"我的\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mlsd\",\n      \"localized\": \"mlsd\",\n      \"reload\": \"\",\n      \"hint\": \"mlsd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mm\",\n      \"localized\": \"mm\",\n      \"reload\": \"\",\n      \"hint\": \"mm\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode\",\n      \"localized\": \"模式\",\n      \"reload\": \"\",\n      \"hint\": \"模式\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode after\",\n      \"localized\": \"后置模式\",\n      \"reload\": \"\",\n      \"hint\": \"后置模式\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode before\",\n      \"localized\": \"前置模式\",\n      \"reload\": \"\",\n      \"hint\": \"前置模式\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode mask\",\n      \"localized\": \"模式蒙版\",\n      \"reload\": \"\",\n      \"hint\": \"模式蒙版\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode x-axis\",\n      \"localized\": \"X轴模式\",\n      \"reload\": \"\",\n      \"hint\": \"X轴模式\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mode y-axis\",\n      \"localized\": \"Y轴模式\",\n      \"reload\": \"\",\n      \"hint\": \"Y轴模式\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model auto-download on demand\",\n      \"localized\": \"模型按需自动下载\",\n      \"reload\": \"\",\n      \"hint\": \"模型按需自动下载\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model autoload on start\",\n      \"localized\": \"模型启动时自动加载\",\n      \"reload\": \"\",\n      \"hint\": \"模型启动时自动加载\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model compile fullgraph\",\n      \"localized\": \"模型完整图编译\",\n      \"reload\": \"\",\n      \"hint\": \"模型完整图编译\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model compile suppress errors\",\n      \"localized\": \"模型编译抑制错误\",\n      \"reload\": \"\",\n      \"hint\": \"模型编译抑制错误\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model compile verbose mode\",\n      \"localized\": \"模型编译详细模式\",\n      \"reload\": \"\",\n      \"hint\": \"模型编译详细模式\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model info\",\n      \"localized\": \"模型信息\",\n      \"reload\": \"\",\n      \"hint\": \"模型信息\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model metadata\",\n      \"localized\": \"模型元数据\",\n      \"reload\": \"\",\n      \"hint\": \"模型元数据\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model name\",\n      \"localized\": \"模型名称\",\n      \"reload\": \"\",\n      \"hint\": \"模型名称\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model precision\",\n      \"localized\": \"模型精度\",\n      \"reload\": \"\",\n      \"hint\": \"模型精度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model type\",\n      \"localized\": \"模型类型\",\n      \"reload\": \"\",\n      \"hint\": \"模型类型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"model url\",\n      \"localized\": \"模型网址\",\n      \"reload\": \"\",\n      \"hint\": \"模型网址\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"modern\",\n      \"localized\": \"现代\",\n      \"reload\": \"\",\n      \"hint\": \"现代\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"momentum\",\n      \"localized\": \"动量\",\n      \"reload\": \"\",\n      \"hint\": \"动量\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"motion level\",\n      \"localized\": \"运动级别\",\n      \"reload\": \"\",\n      \"hint\": \"运动级别\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"mount url subpath\",\n      \"localized\": \"挂载URL子路径\",\n      \"reload\": \"\",\n      \"hint\": \"挂载URL子路径\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move base model to cpu when using refiner\",\n      \"localized\": \"使用精炼器时将基础模型移至CPU\",\n      \"reload\": \"\",\n      \"hint\": \"使用精炼器时将基础模型移至CPU\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move base model to cpu when using vae\",\n      \"localized\": \"使用VAE时将基础模型移至CPU\",\n      \"reload\": \"\",\n      \"hint\": \"使用VAE时将基础模型移至CPU\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move detailer model to cpu when complete\",\n      \"localized\": \"完成时将细节器模型移至CPU\",\n      \"reload\": \"\",\n      \"hint\": \"完成时将细节器模型移至CPU\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"move refiner model to cpu when not in use\",\n      \"localized\": \"不使用时将精炼器模型移至CPU\",\n      \"reload\": \"\",\n      \"hint\": \"不使用时将精炼器模型移至CPU\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"movements\",\n      \"localized\": \"移动\",\n      \"reload\": \"\",\n      \"hint\": \"移动\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"multi decoder\",\n      \"localized\": \"多解码器\",\n      \"reload\": \"\",\n      \"hint\": \"多解码器\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"multistep restore\",\n      \"localized\": \"多步恢复\",\n      \"reload\": \"\",\n      \"hint\": \"多步恢复\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"native\",\n      \"localized\": \"原生\",\n      \"reload\": \"\",\n      \"hint\": \"原生\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"near threshold\",\n      \"localized\": \"接近阈值\",\n      \"reload\": \"\",\n      \"hint\": \"接近阈值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"negative\",\n      \"localized\": \"负面\",\n      \"reload\": \"\",\n      \"hint\": \"负面\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"network negative prompt\",\n      \"localized\": \"网络负面提示\",\n      \"reload\": \"\",\n      \"hint\": \"网络负面提示\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"network parameters\",\n      \"localized\": \"网络参数\",\n      \"reload\": \"\",\n      \"hint\": \"网络参数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"network prompt\",\n      \"localized\": \"网络提示\",\n      \"reload\": \"\",\n      \"hint\": \"网络提示\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"new model name\",\n      \"localized\": \"新模型名称\",\n      \"reload\": \"\",\n      \"hint\": \"新模型名称\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"nf4\",\n      \"localized\": \"nf4\",\n      \"reload\": \"\",\n      \"hint\": \"nf4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"nms\",\n      \"localized\": \"nms\",\n      \"reload\": \"\",\n      \"hint\": \"nms\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise\",\n      \"localized\": \"噪声\",\n      \"reload\": \"\",\n      \"hint\": \"噪声\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise multiplier (eta)\",\n      \"localized\": \"噪声乘数 (eta)\",\n      \"reload\": \"\",\n      \"hint\": \"噪声乘数 (eta)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise multiplier for image processing\",\n      \"localized\": \"图像处理噪声乘数\",\n      \"reload\": \"\",\n      \"hint\": \"图像处理噪声乘数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise seed delta (eta)\",\n      \"localized\": \"噪声种子增量 (eta)\",\n      \"reload\": \"\",\n      \"hint\": \"噪声种子增量 (eta)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"noise strength\",\n      \"localized\": \"噪声强度\",\n      \"reload\": \"\",\n      \"hint\": \"噪声强度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"none\",\n      \"localized\": \"无\",\n      \"reload\": \"\",\n      \"hint\": \"无\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"note\",\n      \"localized\": \"备注\",\n      \"reload\": \"\",\n      \"hint\": \"备注\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"nothing\",\n      \"localized\": \"无\",\n      \"reload\": \"\",\n      \"hint\": \"无\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"num beams\",\n      \"localized\": \"波束数量\",\n      \"reload\": \"\",\n      \"hint\": \"波束数量\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"number\",\n      \"localized\": \"数字\",\n      \"reload\": \"\",\n      \"hint\": \"数字\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"numbered filenames\",\n      \"localized\": \"编号文件名\",\n      \"reload\": \"\",\n      \"hint\": \"编号文件名\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"offload\",\n      \"localized\": \"卸载\",\n      \"reload\": \"\",\n      \"hint\": \"卸载\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"offload face module\",\n      \"localized\": \"卸载面部模块\",\n      \"reload\": \"\",\n      \"hint\": \"卸载面部模块\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"offload models\",\n      \"localized\": \"卸载模型\",\n      \"reload\": \"\",\n      \"hint\": \"卸载模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"olive-ai\",\n      \"localized\": \"olive-ai\",\n      \"reload\": \"\",\n      \"hint\": \"olive-ai\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"onediff\",\n      \"localized\": \"onediff\",\n      \"reload\": \"\",\n      \"hint\": \"onediff\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"onnx\",\n      \"localized\": \"onnx\",\n      \"reload\": \"\",\n      \"hint\": \"onnx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openbody\",\n      \"localized\": \"openbody\",\n      \"reload\": \"\",\n      \"hint\": \"openbody\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openclip\",\n      \"localized\": \"openclip\",\n      \"reload\": \"\",\n      \"hint\": \"openclip\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino disable memory cleanup after compile\",\n      \"localized\": \"OpenVINO 编译后禁用内存清理\",\n      \"reload\": \"\",\n      \"hint\": \"OpenVINO 编译后禁用内存清理\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino disable model caching\",\n      \"localized\": \"OpenVINO 禁用模型缓存\",\n      \"reload\": \"\",\n      \"hint\": \"OpenVINO 禁用模型缓存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino mode\",\n      \"localized\": \"OpenVINO 模式\",\n      \"reload\": \"\",\n      \"hint\": \"OpenVINO 模式\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"openvino_fx\",\n      \"localized\": \"openvino_fx\",\n      \"reload\": \"\",\n      \"hint\": \"openvino_fx\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"optional image description\",\n      \"localized\": \"可选图像描述\",\n      \"reload\": \"\",\n      \"hint\": \"可选图像描述\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"optional init image or video\",\n      \"localized\": \"可选初始图像或视频\",\n      \"reload\": \"\",\n      \"hint\": \"可选初始图像或视频\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"order\",\n      \"localized\": \"顺序\",\n      \"reload\": \"\",\n      \"hint\": \"顺序\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ortho\",\n      \"localized\": \"正交\",\n      \"reload\": \"\",\n      \"hint\": \"正交\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"outpaint\",\n      \"localized\": \"外绘\",\n      \"reload\": \"\",\n      \"hint\": \"外绘\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"output model\",\n      \"localized\": \"输出模型\",\n      \"reload\": \"\",\n      \"hint\": \"输出模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override resolution\",\n      \"localized\": \"覆盖分辨率\",\n      \"reload\": \"\",\n      \"hint\": \"覆盖分辨率\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override sampler\",\n      \"localized\": \"覆盖采样器\",\n      \"reload\": \"\",\n      \"hint\": \"覆盖采样器\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override scheduler\",\n      \"localized\": \"覆盖调度器\",\n      \"reload\": \"\",\n      \"hint\": \"覆盖调度器\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override steps\",\n      \"localized\": \"覆盖步数\",\n      \"reload\": \"\",\n      \"hint\": \"覆盖步数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override t1 ratio\",\n      \"localized\": \"覆盖T1比例\",\n      \"reload\": \"\",\n      \"hint\": \"覆盖T1比例\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"override t2 ratio\",\n      \"localized\": \"覆盖T2比例\",\n      \"reload\": \"\",\n      \"hint\": \"覆盖T2比例\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"overwrite existing file\",\n      \"localized\": \"覆盖现有文件\",\n      \"reload\": \"\",\n      \"hint\": \"覆盖现有文件\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"overwrite model\",\n      \"localized\": \"覆盖模型\",\n      \"reload\": \"\",\n      \"hint\": \"覆盖模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pad frames\",\n      \"localized\": \"填充帧\",\n      \"reload\": \"\",\n      \"hint\": \"填充帧\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"padding\",\n      \"localized\": \"填充\",\n      \"reload\": \"\",\n      \"hint\": \"填充\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"parallel process images in batch\",\n      \"localized\": \"批量并行处理图像\",\n      \"reload\": \"\",\n      \"hint\": \"批量并行处理图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"parameter free\",\n      \"localized\": \"无参数\",\n      \"reload\": \"\",\n      \"hint\": \"无参数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"path to model file\",\n      \"localized\": \"模型文件路径\",\n      \"reload\": \"\",\n      \"hint\": \"模型文件路径\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"path to notification sound\",\n      \"localized\": \"通知声音路径\",\n      \"reload\": \"\",\n      \"hint\": \"通知声音路径\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"peft\",\n      \"localized\": \"peft\",\n      \"reload\": \"\",\n      \"hint\": \"peft\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"penalty\",\n      \"localized\": \"惩罚\",\n      \"reload\": \"\",\n      \"hint\": \"惩罚\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perflow\",\n      \"localized\": \"perflow\",\n      \"reload\": \"\",\n      \"hint\": \"perflow\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perform injection\",\n      \"localized\": \"执行注入\",\n      \"reload\": \"\",\n      \"hint\": \"执行注入\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perform sdsa\",\n      \"localized\": \"执行SDSA\",\n      \"reload\": \"\",\n      \"hint\": \"执行SDSA\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"perform warmup\",\n      \"localized\": \"执行预热\",\n      \"reload\": \"\",\n      \"hint\": \"执行预热\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"performance\",\n      \"localized\": \"性能\",\n      \"reload\": \"\",\n      \"hint\": \"性能\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"photomaker model\",\n      \"localized\": \"Photomaker 模型\",\n      \"reload\": \"\",\n      \"hint\": \"Photomaker 模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pidinet\",\n      \"localized\": \"PIDINet\",\n      \"reload\": \"\",\n      \"hint\": \"PIDINet\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pipeline\",\n      \"localized\": \"流水线\",\n      \"reload\": \"\",\n      \"hint\": \"流水线\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pixels to expand\",\n      \"localized\": \"扩展像素\",\n      \"reload\": \"\",\n      \"hint\": \"扩展像素\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"platform\",\n      \"localized\": \"平台\",\n      \"reload\": \"\",\n      \"hint\": \"平台\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"play\",\n      \"localized\": \"播放\",\n      \"reload\": \"\",\n      \"hint\": \"播放\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"play a notification upon completion\",\n      \"localized\": \"完成时播放通知\",\n      \"reload\": \"\",\n      \"hint\": \"完成时播放通知\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pndm\",\n      \"localized\": \"PNDM\",\n      \"reload\": \"\",\n      \"hint\": \"PNDM\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"polyexponential\",\n      \"localized\": \"多指数\",\n      \"reload\": \"\",\n      \"hint\": \"多指数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pony\",\n      \"localized\": \"小马\",\n      \"reload\": \"\",\n      \"hint\": \"小马\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"pose confidence\",\n      \"localized\": \"姿态置信度\",\n      \"reload\": \"\",\n      \"hint\": \"姿态置信度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"positive\",\n      \"localized\": \"正向\",\n      \"reload\": \"\",\n      \"hint\": \"正向\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocess mask\",\n      \"localized\": \"后处理遮罩\",\n      \"reload\": \"\",\n      \"hint\": \"后处理遮罩\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocess upscale\",\n      \"localized\": \"后处理放大\",\n      \"reload\": \"\",\n      \"hint\": \"后处理放大\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"postprocessing operation order\",\n      \"localized\": \"后处理操作顺序\",\n      \"reload\": \"\",\n      \"hint\": \"后处理操作顺序\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"power\",\n      \"localized\": \"强度\",\n      \"reload\": \"\",\n      \"hint\": \"强度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"predefined question\",\n      \"localized\": \"预定义问题\",\n      \"reload\": \"\",\n      \"hint\": \"预定义问题\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prediction method\",\n      \"localized\": \"预测方法\",\n      \"reload\": \"\",\n      \"hint\": \"预测方法\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preset\",\n      \"localized\": \"预设\",\n      \"reload\": \"\",\n      \"hint\": \"预设\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preset block merge\",\n      \"localized\": \"预设块合并\",\n      \"reload\": \"\",\n      \"hint\": \"预设块合并\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview\",\n      \"localized\": \"预览\",\n      \"reload\": \"\",\n      \"hint\": \"预览\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview end\",\n      \"localized\": \"预览结束\",\n      \"reload\": \"\",\n      \"hint\": \"预览结束\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"preview start\",\n      \"localized\": \"预览开始\",\n      \"reload\": \"\",\n      \"hint\": \"预览开始\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"primary model\",\n      \"localized\": \"主模型\",\n      \"reload\": \"\",\n      \"hint\": \"主模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor\",\n      \"localized\": \"处理器\",\n      \"reload\": \"\",\n      \"hint\": \"处理器\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor move to cpu after use\",\n      \"localized\": \"使用后将处理器移至CPU\",\n      \"reload\": \"\",\n      \"hint\": \"使用后将处理器移至CPU\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor settings\",\n      \"localized\": \"处理器设置\",\n      \"reload\": \"\",\n      \"hint\": \"处理器设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"processor unload after use\",\n      \"localized\": \"使用后卸载处理器\",\n      \"reload\": \"\",\n      \"hint\": \"使用后卸载处理器\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt attention normalization\",\n      \"localized\": \"提示词注意力归一化\",\n      \"reload\": \"\",\n      \"hint\": \"提示词注意力归一化\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt ex\",\n      \"localized\": \"提示词 Ex\",\n      \"reload\": \"\",\n      \"hint\": \"提示词 Ex\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt processor\",\n      \"localized\": \"提示词处理器\",\n      \"reload\": \"\",\n      \"hint\": \"提示词处理器\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt strength\",\n      \"localized\": \"提示词强度\",\n      \"reload\": \"\",\n      \"hint\": \"提示词强度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompt thresholds:\",\n      \"localized\": \"提示词阈值:\",\n      \"reload\": \"\",\n      \"hint\": \"提示词阈值:\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prompts\",\n      \"localized\": \"提示词\",\n      \"reload\": \"\",\n      \"hint\": \"提示词\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"provider\",\n      \"localized\": \"提供者\",\n      \"reload\": \"\",\n      \"hint\": \"提供者\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"prune\",\n      \"localized\": \"剪枝\",\n      \"reload\": \"\",\n      \"hint\": \"剪枝\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quad\",\n      \"localized\": \"四边形\",\n      \"reload\": \"\",\n      \"hint\": \"四边形\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization activations type\",\n      \"localized\": \"量化激活类型\",\n      \"reload\": \"\",\n      \"hint\": \"量化激活类型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization mode\",\n      \"localized\": \"量化模式\",\n      \"reload\": \"\",\n      \"hint\": \"量化模式\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization type\",\n      \"localized\": \"量化类型\",\n      \"reload\": \"\",\n      \"hint\": \"量化类型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"quantization weights type\",\n      \"localized\": \"量化权重类型\",\n      \"reload\": \"\",\n      \"hint\": \"量化权重类型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"random seeds\",\n      \"localized\": \"随机种子\",\n      \"reload\": \"\",\n      \"hint\": \"随机种子\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"range\",\n      \"localized\": \"范围\",\n      \"reload\": \"\",\n      \"hint\": \"范围\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rebase\",\n      \"localized\": \"重基\",\n      \"reload\": \"\",\n      \"hint\": \"重基\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"recursive\",\n      \"localized\": \"递归\",\n      \"reload\": \"\",\n      \"hint\": \"递归\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reduce-overhead\",\n      \"localized\": \"减少开销\",\n      \"reload\": \"\",\n      \"hint\": \"减少开销\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"redux prompt strength\",\n      \"localized\": \"Redux 提示词强度\",\n      \"reload\": \"\",\n      \"hint\": \"Redux 提示词强度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference adain weight\",\n      \"localized\": \"参考 Adain 权重\",\n      \"reload\": \"\",\n      \"hint\": \"参考 Adain 权重\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference query weight\",\n      \"localized\": \"参考查询权重\",\n      \"reload\": \"\",\n      \"hint\": \"参考查询权重\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reference unit 1\",\n      \"localized\": \"参考单元 1\",\n      \"reload\": \"\",\n      \"hint\": \"参考单元 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refine foreground\",\n      \"localized\": \"精炼前景\",\n      \"reload\": \"\",\n      \"hint\": \"精炼前景\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh bench\",\n      \"localized\": \"刷新基准\",\n      \"reload\": \"\",\n      \"hint\": \"刷新基准\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh data\",\n      \"localized\": \"刷新数据\",\n      \"reload\": \"\",\n      \"hint\": \"刷新数据\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh state\",\n      \"localized\": \"刷新状态\",\n      \"reload\": \"\",\n      \"hint\": \"刷新状态\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"refresh ui values\",\n      \"localized\": \"刷新 UI 值\",\n      \"reload\": \"\",\n      \"hint\": \"刷新 UI 值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reinstall\",\n      \"localized\": \"重新安装\",\n      \"reload\": \"\",\n      \"hint\": \"重新安装\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"remove background\",\n      \"localized\": \"移除背景\",\n      \"reload\": \"\",\n      \"hint\": \"移除背景\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repeat x-axis\",\n      \"localized\": \"重复 X 轴\",\n      \"reload\": \"\",\n      \"hint\": \"重复 X 轴\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repeat y-axis\",\n      \"localized\": \"重复 Y 轴\",\n      \"reload\": \"\",\n      \"hint\": \"重复 Y 轴\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"replace vae\",\n      \"localized\": \"替换 VAE\",\n      \"reload\": \"\",\n      \"hint\": \"替换 VAE\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"repos\",\n      \"localized\": \"仓库\",\n      \"reload\": \"\",\n      \"hint\": \"仓库\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess decode\",\n      \"localized\": \"重新处理解码\",\n      \"reload\": \"\",\n      \"hint\": \"重新处理解码\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess face\",\n      \"localized\": \"重新处理面部\",\n      \"reload\": \"\",\n      \"hint\": \"重新处理面部\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reprocess refine\",\n      \"localized\": \"重新处理精炼\",\n      \"reload\": \"\",\n      \"hint\": \"重新处理精炼\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"request browser notifications\",\n      \"localized\": \"请求浏览器通知\",\n      \"reload\": \"\",\n      \"hint\": \"请求浏览器通知\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rescale\",\n      \"localized\": \"重新缩放\",\n      \"reload\": \"\",\n      \"hint\": \"重新缩放\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rescale betas with zero terminal snr\",\n      \"localized\": \"使用零终端信噪比重新缩放 Beta\",\n      \"reload\": \"\",\n      \"hint\": \"使用零终端信噪比重新缩放 Beta\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reset anchors\",\n      \"localized\": \"重置锚点\",\n      \"reload\": \"\",\n      \"hint\": \"重置锚点\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"residual diff threshold\",\n      \"localized\": \"残差差异阈值\",\n      \"reload\": \"\",\n      \"hint\": \"残差差异阈值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize background color\",\n      \"localized\": \"调整背景颜色\",\n      \"reload\": \"\",\n      \"hint\": \"调整背景颜色\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize method\",\n      \"localized\": \"调整大小方法\",\n      \"reload\": \"\",\n      \"hint\": \"调整大小方法\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize mode\",\n      \"localized\": \"调整大小模式\",\n      \"reload\": \"\",\n      \"hint\": \"调整大小模式\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"resize scale\",\n      \"localized\": \"调整大小比例\",\n      \"reload\": \"\",\n      \"hint\": \"调整大小比例\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restart step\",\n      \"localized\": \"重启步骤\",\n      \"reload\": \"\",\n      \"hint\": \"重启步骤\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore faces: codeformer\",\n      \"localized\": \"恢复面部：CodeFormer\",\n      \"reload\": \"\",\n      \"hint\": \"恢复面部：CodeFormer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore faces: gfpgan\",\n      \"localized\": \"恢复面部：GFPGAN\",\n      \"reload\": \"\",\n      \"hint\": \"恢复面部：GFPGAN\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore pipe on end\",\n      \"localized\": \"结束时恢复管道\",\n      \"reload\": \"\",\n      \"hint\": \"结束时恢复管道\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"restore unparsed prompt\",\n      \"localized\": \"恢复未解析的提示词\",\n      \"reload\": \"\",\n      \"hint\": \"恢复未解析的提示词\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"reswapper model\",\n      \"localized\": \"Reswapper 模型\",\n      \"reload\": \"\",\n      \"hint\": \"Reswapper 模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"return original images\",\n      \"localized\": \"返回原始图像\",\n      \"reload\": \"\",\n      \"hint\": \"返回原始图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"right\",\n      \"localized\": \"右\",\n      \"reload\": \"\",\n      \"hint\": \"右\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"root model folder\",\n      \"localized\": \"根模型文件夹\",\n      \"reload\": \"\",\n      \"hint\": \"根模型文件夹\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"rows\",\n      \"localized\": \"行\",\n      \"reload\": \"\",\n      \"hint\": \"行\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"run\",\n      \"localized\": \"运行\",\n      \"reload\": \"\",\n      \"hint\": \"运行\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"run benchmark\",\n      \"localized\": \"运行基准测试\",\n      \"reload\": \"\",\n      \"hint\": \"运行基准测试\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sa solver\",\n      \"localized\": \"SA 求解器\",\n      \"reload\": \"\",\n      \"hint\": \"SA 求解器\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"safetensors\",\n      \"localized\": \"Safetensors\",\n      \"reload\": \"\",\n      \"hint\": \"Safetensors\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sage attention\",\n      \"localized\": \"Sage 注意力\",\n      \"reload\": \"\",\n      \"hint\": \"Sage 注意力\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"same as primary\",\n      \"localized\": \"与主项相同\",\n      \"reload\": \"\",\n      \"hint\": \"与主项相同\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"same latent\",\n      \"localized\": \"相同潜在空间\",\n      \"reload\": \"\",\n      \"hint\": \"相同潜在空间\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sample\",\n      \"localized\": \"采样\",\n      \"reload\": \"\",\n      \"hint\": \"采样\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler\",\n      \"localized\": \"采样器\",\n      \"reload\": \"\",\n      \"hint\": \"采样器\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler dynamic shift\",\n      \"localized\": \"采样器动态偏移\",\n      \"reload\": \"\",\n      \"hint\": \"采样器动态偏移\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler order\",\n      \"localized\": \"采样器顺序\",\n      \"reload\": \"\",\n      \"hint\": \"采样器顺序\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sampler shift\",\n      \"localized\": \"采样器偏移\",\n      \"reload\": \"\",\n      \"hint\": \"采样器偏移\"\n    },\n    {\n      \"id\": \"sana: use complex human instructions\",\n      \"label\": \"sana: use complex human instructions\",\n      \"localized\": \"SANA: 使用复杂人工指令\",\n      \"reload\": \"\",\n      \"hint\": \"SANA: 使用复杂人工指令\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"saturation\",\n      \"localized\": \"饱和度\",\n      \"reload\": \"\",\n      \"hint\": \"饱和度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save all generated image grids\",\n      \"localized\": \"保存所有生成的图像网格\",\n      \"reload\": \"\",\n      \"hint\": \"保存所有生成的图像网格\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save all generated images\",\n      \"localized\": \"保存所有生成的图像\",\n      \"reload\": \"\",\n      \"hint\": \"保存所有生成的图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save caption files\",\n      \"localized\": \"保存字幕文件\",\n      \"reload\": \"\",\n      \"hint\": \"保存字幕文件\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save diffusers\",\n      \"localized\": \"保存扩散器\",\n      \"reload\": \"\",\n      \"hint\": \"保存扩散器\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save hdr image\",\n      \"localized\": \"保存HDR图像\",\n      \"reload\": \"\",\n      \"hint\": \"保存HDR图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before color correction\",\n      \"localized\": \"保存色彩校正前的图像\",\n      \"reload\": \"\",\n      \"hint\": \"保存色彩校正前的图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before detailer\",\n      \"localized\": \"保存细节增强前的图像\",\n      \"reload\": \"\",\n      \"hint\": \"保存细节增强前的图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before hires\",\n      \"localized\": \"保存高分辨率前的图像\",\n      \"reload\": \"\",\n      \"hint\": \"保存高分辨率前的图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save image before refiner\",\n      \"localized\": \"保存精修器处理前的图像\",\n      \"reload\": \"\",\n      \"hint\": \"保存精修器处理前的图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save images to a subdirectory\",\n      \"localized\": \"将图像保存到子目录\",\n      \"reload\": \"\",\n      \"hint\": \"将图像保存到子目录\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save init images\",\n      \"localized\": \"保存初始图像\",\n      \"reload\": \"\",\n      \"hint\": \"保存初始图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save inpainting mask\",\n      \"localized\": \"保存局部重绘蒙版\",\n      \"reload\": \"\",\n      \"hint\": \"保存局部重绘蒙版\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save inpainting masked composite\",\n      \"localized\": \"保存局部重绘蒙版合成图\",\n      \"reload\": \"\",\n      \"hint\": \"保存局部重绘蒙版合成图\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save metadata\",\n      \"localized\": \"保存元数据\",\n      \"reload\": \"\",\n      \"hint\": \"保存元数据\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save only saves selected image\",\n      \"localized\": \"仅保存选定的图像\",\n      \"reload\": \"\",\n      \"hint\": \"仅保存选定的图像\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save output\",\n      \"localized\": \"保存输出\",\n      \"reload\": \"\",\n      \"hint\": \"保存输出\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save safetensors\",\n      \"localized\": \"保存safetensors\",\n      \"reload\": \"\",\n      \"hint\": \"保存safetensors\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"save unparsed prompt\",\n      \"localized\": \"保存未解析的提示词\",\n      \"reload\": \"\",\n      \"hint\": \"保存未解析的提示词\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale  after\",\n      \"localized\": \"后缩放\",\n      \"reload\": \"\",\n      \"hint\": \"后缩放\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale  before\",\n      \"localized\": \"前缩放\",\n      \"reload\": \"\",\n      \"hint\": \"前缩放\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale  mask\",\n      \"localized\": \"缩放蒙版\",\n      \"reload\": \"\",\n      \"hint\": \"缩放蒙版\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scale factor\",\n      \"localized\": \"缩放因子\",\n      \"reload\": \"\",\n      \"hint\": \"缩放因子\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"score\",\n      \"localized\": \"分数\",\n      \"reload\": \"\",\n      \"hint\": \"分数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"score threshold\",\n      \"localized\": \"分数阈值\",\n      \"reload\": \"\",\n      \"hint\": \"分数阈值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"scribble\",\n      \"localized\": \"涂鸦\",\n      \"reload\": \"\",\n      \"hint\": \"涂鸦\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-attire\",\n      \"localized\": \"sd15-attire\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-attire\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-likeness\",\n      \"localized\": \"sd15-likeness\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-likeness\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-navimixu\",\n      \"localized\": \"sd15-navimixu\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-navimixu\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sd15-sexy\",\n      \"localized\": \"sd15-sexy\",\n      \"reload\": \"\",\n      \"hint\": \"sd15-sexy\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-artstyle\",\n      \"localized\": \"sdxl-artstyle\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-artstyle\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-negative\",\n      \"localized\": \"sdxl-negative\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-negative\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-sexy\",\n      \"localized\": \"sdxl-sexy\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-sexy\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-sliders\",\n      \"localized\": \"sdxl-sliders\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-sliders\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl-toon\",\n      \"localized\": \"sdxl-toon\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl-toon\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sdxl: use weighted pooled embeds\",\n      \"localized\": \"sdxl: 使用加权池化嵌入\",\n      \"reload\": \"\",\n      \"hint\": \"sdxl: 使用加权池化嵌入\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search changelog\",\n      \"localized\": \"搜索更新日志\",\n      \"reload\": \"\",\n      \"hint\": \"搜索更新日志\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search models\",\n      \"localized\": \"搜索模型\",\n      \"reload\": \"\",\n      \"hint\": \"搜索模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"search wiki pages\",\n      \"localized\": \"搜索维基页面\",\n      \"reload\": \"\",\n      \"hint\": \"搜索维基页面\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"secondary model\",\n      \"localized\": \"辅助模型\",\n      \"reload\": \"\",\n      \"hint\": \"辅助模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"segmentanything\",\n      \"localized\": \"segmentanything\",\n      \"reload\": \"\",\n      \"hint\": \"segmentanything\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"select\",\n      \"localized\": \"选择\",\n      \"reload\": \"\",\n      \"hint\": \"选择\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"select model\",\n      \"localized\": \"选择模型\",\n      \"reload\": \"\",\n      \"hint\": \"选择模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send interrupt\",\n      \"localized\": \"发送中断信号\",\n      \"reload\": \"\",\n      \"hint\": \"发送中断信号\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send seed when sending prompt or image to other interface\",\n      \"localized\": \"将提示词或图像发送到其他界面时发送种子\",\n      \"reload\": \"\",\n      \"hint\": \"将提示词或图像发送到其他界面时发送种子\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"send size when sending prompt or image to another interface\",\n      \"localized\": \"将提示词或图像发送到其他界面时发送尺寸\",\n      \"reload\": \"\",\n      \"hint\": \"将提示词或图像发送到其他界面时发送尺寸\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sequential\",\n      \"localized\": \"顺序\",\n      \"reload\": \"\",\n      \"hint\": \"顺序\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"server start time\",\n      \"localized\": \"服务器启动时间\",\n      \"reload\": \"\",\n      \"hint\": \"服务器启动时间\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"set at prompt start\",\n      \"localized\": \"在提示词开始时设置\",\n      \"reload\": \"\",\n      \"hint\": \"在提示词开始时设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"set ui menu states\",\n      \"localized\": \"设置UI菜单状态\",\n      \"reload\": \"\",\n      \"hint\": \"设置UI菜单状态\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"share queries\",\n      \"localized\": \"分享查询\",\n      \"reload\": \"\",\n      \"hint\": \"分享查询\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shared options\",\n      \"localized\": \"共享选项\",\n      \"reload\": \"\",\n      \"hint\": \"共享选项\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sharpen\",\n      \"localized\": \"锐化\",\n      \"reload\": \"\",\n      \"hint\": \"锐化\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shift\",\n      \"localized\": \"偏移\",\n      \"reload\": \"\",\n      \"hint\": \"偏移\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show grid in results\",\n      \"localized\": \"在结果中显示网格\",\n      \"reload\": \"\",\n      \"hint\": \"在结果中显示网格\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show input\",\n      \"localized\": \"显示输入\",\n      \"reload\": \"\",\n      \"hint\": \"显示输入\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show metadata in full screen image browser\",\n      \"localized\": \"在全屏图像浏览器中显示元数据\",\n      \"reload\": \"\",\n      \"hint\": \"在全屏图像浏览器中显示元数据\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show motd\",\n      \"localized\": \"显示MOTD\",\n      \"reload\": \"\",\n      \"hint\": \"显示MOTD\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"show preview\",\n      \"localized\": \"显示预览\",\n      \"reload\": \"\",\n      \"hint\": \"显示预览\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"shuffle weights\",\n      \"localized\": \"打乱权重\",\n      \"reload\": \"\",\n      \"hint\": \"打乱权重\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma\",\n      \"localized\": \"西格玛\",\n      \"reload\": \"\",\n      \"hint\": \"西格玛\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma churn\",\n      \"localized\": \"西格玛搅动\",\n      \"reload\": \"\",\n      \"hint\": \"西格玛搅动\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma max\",\n      \"localized\": \"西格玛最大值\",\n      \"reload\": \"\",\n      \"hint\": \"西格玛最大值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma method\",\n      \"localized\": \"西格玛方法\",\n      \"reload\": \"\",\n      \"hint\": \"西格玛方法\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma min\",\n      \"localized\": \"西格玛最小值\",\n      \"reload\": \"\",\n      \"hint\": \"西格玛最小值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma noise\",\n      \"localized\": \"西格玛噪声\",\n      \"reload\": \"\",\n      \"hint\": \"西格玛噪声\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sigma tmin\",\n      \"localized\": \"西格玛 t最小值\",\n      \"reload\": \"\",\n      \"hint\": \"西格玛 t最小值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"simple merge\",\n      \"localized\": \"简单合并\",\n      \"reload\": \"\",\n      \"hint\": \"简单合并\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"size\",\n      \"localized\": \"尺寸\",\n      \"reload\": \"\",\n      \"hint\": \"尺寸\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sketch\",\n      \"localized\": \"草图\",\n      \"reload\": \"\",\n      \"hint\": \"草图\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip generation if nan found in latents\",\n      \"localized\": \"如果在潜在空间中发现NaN则跳过生成\",\n      \"reload\": \"\",\n      \"hint\": \"如果在潜在空间中发现NaN则跳过生成\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip guidance layers\",\n      \"localized\": \"跳过引导层\",\n      \"reload\": \"\",\n      \"hint\": \"跳过引导层\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"skip input frames\",\n      \"localized\": \"跳过输入帧\",\n      \"reload\": \"\",\n      \"hint\": \"跳过输入帧\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"slider\",\n      \"localized\": \"滑块\",\n      \"reload\": \"\",\n      \"hint\": \"滑块\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"smooth mask\",\n      \"localized\": \"平滑蒙版\",\n      \"reload\": \"\",\n      \"hint\": \"平滑蒙版\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"solver order (where\",\n      \"localized\": \"求解器顺序（其中\",\n      \"reload\": \"\",\n      \"hint\": \"求解器顺序（其中\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"sort order\",\n      \"localized\": \"排序顺序\",\n      \"reload\": \"\",\n      \"hint\": \"排序顺序\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"source subject\",\n      \"localized\": \"源主体\",\n      \"reload\": \"\",\n      \"hint\": \"源主体\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"space\",\n      \"localized\": \"空间\",\n      \"reload\": \"\",\n      \"hint\": \"空间\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"spatial frequency\",\n      \"localized\": \"空间频率\",\n      \"reload\": \"\",\n      \"hint\": \"空间频率\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"specify model revision\",\n      \"localized\": \"指定模型修订版\",\n      \"reload\": \"\",\n      \"hint\": \"指定模型修订版\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"specify model variant\",\n      \"localized\": \"指定模型变体\",\n      \"reload\": \"\",\n      \"hint\": \"指定模型变体\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"split attention\",\n      \"localized\": \"注意力分离\",\n      \"reload\": \"\",\n      \"hint\": \"注意力分离\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"stable-fast\",\n      \"localized\": \"stable-fast\",\n      \"reload\": \"\",\n      \"hint\": \"stable-fast\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"standard\",\n      \"localized\": \"标准\",\n      \"reload\": \"\",\n      \"hint\": \"标准\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"start\",\n      \"localized\": \"开始\",\n      \"reload\": \"\",\n      \"hint\": \"开始\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"start profiling\",\n      \"localized\": \"开始性能分析\",\n      \"reload\": \"\",\n      \"hint\": \"开始性能分析\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"state\",\n      \"localized\": \"状态\",\n      \"reload\": \"\",\n      \"hint\": \"状态\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"stride\",\n      \"localized\": \"步幅\",\n      \"reload\": \"\",\n      \"hint\": \"步幅\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"structure\",\n      \"localized\": \"结构\",\n      \"reload\": \"\",\n      \"hint\": \"结构\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"style fidelity\",\n      \"localized\": \"风格保真度\",\n      \"reload\": \"\",\n      \"hint\": \"风格保真度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"subject\",\n      \"localized\": \"主体\",\n      \"reload\": \"\",\n      \"hint\": \"主体\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"submit results\",\n      \"localized\": \"提交结果\",\n      \"reload\": \"\",\n      \"hint\": \"提交结果\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"submodules\",\n      \"localized\": \"子模块\",\n      \"reload\": \"\",\n      \"hint\": \"子模块\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap x/y\",\n      \"localized\": \"交换 x/y\",\n      \"reload\": \"\",\n      \"hint\": \"交换 x/y\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap x/z\",\n      \"localized\": \"交换 x/z\",\n      \"reload\": \"\",\n      \"hint\": \"交换 x/z\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"swap y/z\",\n      \"localized\": \"交换 y/z\",\n      \"reload\": \"\",\n      \"hint\": \"交换 y/z\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i adapter\",\n      \"localized\": \"t2i 适配器\",\n      \"reload\": \"\",\n      \"hint\": \"t2i 适配器\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i strength\",\n      \"localized\": \"t2i 强度\",\n      \"reload\": \"\",\n      \"hint\": \"t2i 强度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 1\",\n      \"localized\": \"t2i-adapter 单元 1\",\n      \"reload\": \"\",\n      \"hint\": \"t2i-adapter 单元 1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 2\",\n      \"localized\": \"t2i-adapter 单元 2\",\n      \"reload\": \"\",\n      \"hint\": \"t2i-adapter 单元 2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 3\",\n      \"localized\": \"t2i-adapter 单元 3\",\n      \"reload\": \"\",\n      \"hint\": \"t2i-adapter 单元 3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"t2i-adapter unit 4\",\n      \"localized\": \"t2i-adapter 单元 4\",\n      \"reload\": \"\",\n      \"hint\": \"t2i-adapter 单元 4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd\",\n      \"localized\": \"taesd\",\n      \"reload\": \"\",\n      \"hint\": \"taesd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd decode layers\",\n      \"localized\": \"taesd 解码层\",\n      \"reload\": \"\",\n      \"hint\": \"taesd 解码层\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"taesd variant\",\n      \"localized\": \"taesd 变体\",\n      \"reload\": \"\",\n      \"hint\": \"taesd 变体\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"target subject\",\n      \"localized\": \"目标主题\",\n      \"reload\": \"\",\n      \"hint\": \"目标主题\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tcd\",\n      \"localized\": \"tcd\",\n      \"reload\": \"\",\n      \"hint\": \"tcd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tdd\",\n      \"localized\": \"tdd\",\n      \"reload\": \"\",\n      \"hint\": \"tdd\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"te\",\n      \"localized\": \"te\",\n      \"reload\": \"\",\n      \"hint\": \"te\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"temperature\",\n      \"localized\": \"温度\",\n      \"reload\": \"\",\n      \"hint\": \"温度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"temporal frequency\",\n      \"localized\": \"时间频率\",\n      \"reload\": \"\",\n      \"hint\": \"时间频率\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tertiary model\",\n      \"localized\": \"三级模型\",\n      \"reload\": \"\",\n      \"hint\": \"三级模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text encoder cache size\",\n      \"localized\": \"文本编码器缓存大小\",\n      \"reload\": \"\",\n      \"hint\": \"文本编码器缓存大小\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text encoder model\",\n      \"localized\": \"文本编码器模型\",\n      \"reload\": \"\",\n      \"hint\": \"文本编码器模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"text inputs\",\n      \"localized\": \"文本输入\",\n      \"reload\": \"\",\n      \"hint\": \"文本输入\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"textbox\",\n      \"localized\": \"文本框\",\n      \"reload\": \"\",\n      \"hint\": \"文本框\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"threshold\",\n      \"localized\": \"阈值\",\n      \"reload\": \"\",\n      \"hint\": \"阈值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"thresholding\",\n      \"localized\": \"阈值处理\",\n      \"reload\": \"\",\n      \"hint\": \"阈值处理\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile frames\",\n      \"localized\": \"平铺帧\",\n      \"reload\": \"\",\n      \"hint\": \"平铺帧\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=1\",\n      \"localized\": \"平铺提示：x=1 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"平铺提示：x=1 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=2\",\n      \"localized\": \"平铺提示：x=1 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"平铺提示：x=1 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=3\",\n      \"localized\": \"平铺提示：x=1 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"平铺提示：x=1 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=1 y=4\",\n      \"localized\": \"平铺提示：x=1 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"平铺提示：x=1 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=1\",\n      \"localized\": \"平铺提示：x=2 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"平铺提示：x=2 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=2\",\n      \"localized\": \"平铺提示：x=2 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"平铺提示：x=2 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=3\",\n      \"localized\": \"平铺提示：x=2 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"平铺提示：x=2 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=2 y=4\",\n      \"localized\": \"平铺提示：x=2 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"平铺提示：x=2 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=1\",\n      \"localized\": \"平铺提示：x=3 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"平铺提示：x=3 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=2\",\n      \"localized\": \"平铺提示：x=3 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"平铺提示：x=3 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=3\",\n      \"localized\": \"平铺提示：x=3 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"平铺提示：x=3 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=3 y=4\",\n      \"localized\": \"平铺提示：x=3 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"平铺提示：x=3 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=1\",\n      \"localized\": \"平铺提示：x=4 y=1\",\n      \"reload\": \"\",\n      \"hint\": \"平铺提示：x=4 y=1\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=2\",\n      \"localized\": \"平铺提示：x=4 y=2\",\n      \"reload\": \"\",\n      \"hint\": \"平铺提示：x=4 y=2\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=3\",\n      \"localized\": \"平铺提示：x=4 y=3\",\n      \"reload\": \"\",\n      \"hint\": \"平铺提示：x=4 y=3\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tile prompt: x=4 y=4\",\n      \"localized\": \"平铺提示：x=4 y=4\",\n      \"reload\": \"\",\n      \"hint\": \"平铺提示：x=4 y=4\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tiling options\",\n      \"localized\": \"平铺选项\",\n      \"reload\": \"\",\n      \"hint\": \"平铺选项\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time embedding mix\",\n      \"localized\": \"时间嵌入混合\",\n      \"reload\": \"\",\n      \"hint\": \"时间嵌入混合\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time_quadratic\",\n      \"localized\": \"time_quadratic\",\n      \"reload\": \"\",\n      \"hint\": \"time_quadratic\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"time_uniform\",\n      \"localized\": \"time_uniform\",\n      \"reload\": \"\",\n      \"hint\": \"time_uniform\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep\",\n      \"localized\": \"时间步\",\n      \"reload\": \"\",\n      \"hint\": \"时间步\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep skip end\",\n      \"localized\": \"时间步跳过结束\",\n      \"reload\": \"\",\n      \"hint\": \"时间步跳过结束\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep skip start\",\n      \"localized\": \"时间步跳过开始\",\n      \"reload\": \"\",\n      \"hint\": \"时间步跳过开始\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timestep spacing\",\n      \"localized\": \"时间步间距\",\n      \"reload\": \"\",\n      \"hint\": \"时间步间距\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps\",\n      \"localized\": \"时间步数\",\n      \"reload\": \"\",\n      \"hint\": \"时间步数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps override\",\n      \"localized\": \"时间步数覆盖\",\n      \"reload\": \"\",\n      \"hint\": \"时间步数覆盖\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps presets\",\n      \"localized\": \"时间步数预设\",\n      \"reload\": \"\",\n      \"hint\": \"时间步数预设\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"timesteps range\",\n      \"localized\": \"时间步数范围\",\n      \"reload\": \"\",\n      \"hint\": \"时间步数范围\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tiny\",\n      \"localized\": \"微小\",\n      \"reload\": \"\",\n      \"hint\": \"微小\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"todo\",\n      \"localized\": \"待办事项\",\n      \"reload\": \"\",\n      \"hint\": \"待办事项\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tome\",\n      \"localized\": \"tome\",\n      \"reload\": \"\",\n      \"hint\": \"tome\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tool\",\n      \"localized\": \"工具\",\n      \"reload\": \"\",\n      \"hint\": \"工具\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"top-k\",\n      \"localized\": \"top-k\",\n      \"reload\": \"\",\n      \"hint\": \"top-k\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"top-p\",\n      \"localized\": \"top-p\",\n      \"reload\": \"\",\n      \"hint\": \"top-p\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"torch\",\n      \"localized\": \"torch\",\n      \"reload\": \"\",\n      \"hint\": \"torch\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"transformer\",\n      \"localized\": \"Transformer\",\n      \"reload\": \"\",\n      \"hint\": \"Transformer\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"trigger word\",\n      \"localized\": \"触发词\",\n      \"reload\": \"\",\n      \"hint\": \"触发词\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"true\",\n      \"localized\": \"真\",\n      \"reload\": \"\",\n      \"hint\": \"真\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"tunable ops limit\",\n      \"localized\": \"可调操作限制\",\n      \"reload\": \"\",\n      \"hint\": \"可调操作限制\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ufogen\",\n      \"localized\": \"ufogen\",\n      \"reload\": \"\",\n      \"hint\": \"ufogen\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui card size (px)\",\n      \"localized\": \"UI卡片大小 (像素)\",\n      \"reload\": \"\",\n      \"hint\": \"UI卡片大小 (像素)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui fetch network info on mouse-over\",\n      \"localized\": \"UI鼠标悬停时获取网络信息\",\n      \"reload\": \"\",\n      \"hint\": \"UI鼠标悬停时获取网络信息\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui height (%)\",\n      \"localized\": \"UI高度 (%)\",\n      \"reload\": \"\",\n      \"hint\": \"UI高度 (%)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui locale\",\n      \"localized\": \"UI语言环境\",\n      \"reload\": \"\",\n      \"hint\": \"UI语言环境\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui request timeout\",\n      \"localized\": \"UI请求超时\",\n      \"reload\": \"\",\n      \"hint\": \"UI请求超时\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui show on startup\",\n      \"localized\": \"UI启动时显示\",\n      \"reload\": \"\",\n      \"hint\": \"UI启动时显示\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui sidebar width (%)\",\n      \"localized\": \"UI侧边栏宽度 (%)\",\n      \"reload\": \"\",\n      \"hint\": \"UI侧边栏宽度 (%)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"ui theme\",\n      \"localized\": \"UI主题\",\n      \"reload\": \"\",\n      \"hint\": \"UI主题\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet\",\n      \"localized\": \"U-Net\",\n      \"reload\": \"\",\n      \"hint\": \"U-Net\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet depth\",\n      \"localized\": \"U-Net 深度\",\n      \"reload\": \"\",\n      \"hint\": \"U-Net 深度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet enabled\",\n      \"localized\": \"U-Net 已启用\",\n      \"reload\": \"\",\n      \"hint\": \"U-Net 已启用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet max tile size\",\n      \"localized\": \"U-Net 最大平铺大小\",\n      \"reload\": \"\",\n      \"hint\": \"U-Net 最大平铺大小\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet min tile size\",\n      \"localized\": \"U-Net 最小平铺大小\",\n      \"reload\": \"\",\n      \"hint\": \"U-Net 最小平铺大小\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet model\",\n      \"localized\": \"U-Net 模型\",\n      \"reload\": \"\",\n      \"hint\": \"U-Net 模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unet swap size\",\n      \"localized\": \"U-Net 交换大小\",\n      \"reload\": \"\",\n      \"hint\": \"U-Net 交换大小\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"uniform\",\n      \"localized\": \"均匀\",\n      \"reload\": \"\",\n      \"hint\": \"均匀\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"units\",\n      \"localized\": \"单位\",\n      \"reload\": \"\",\n      \"hint\": \"单位\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unload current model from vram\",\n      \"localized\": \"从显存卸载当前模型\",\n      \"reload\": \"\",\n      \"hint\": \"从显存卸载当前模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unload upscaler after processing\",\n      \"localized\": \"处理后卸载放大器\",\n      \"reload\": \"\",\n      \"hint\": \"处理后卸载放大器\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"unset\",\n      \"localized\": \"未设置\",\n      \"reload\": \"\",\n      \"hint\": \"未设置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"up\",\n      \"localized\": \"up\",\n      \"reload\": \"\",\n      \"hint\": \"up\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"upcast attention layer\",\n      \"localized\": \"向上转换注意力层\",\n      \"reload\": \"\",\n      \"hint\": \"向上转换注意力层\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"update\",\n      \"localized\": \"更新\",\n      \"reload\": \"\",\n      \"hint\": \"更新\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"upload\",\n      \"localized\": \"上传\",\n      \"reload\": \"\",\n      \"hint\": \"上传\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use brownian noise\",\n      \"localized\": \"使用布朗噪声\",\n      \"reload\": \"\",\n      \"hint\": \"使用布朗噪声\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use cached model config when available\",\n      \"localized\": \"可用时使用缓存的模型配置\",\n      \"reload\": \"\",\n      \"hint\": \"可用时使用缓存的模型配置\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use defaults\",\n      \"localized\": \"使用默认值\",\n      \"reload\": \"\",\n      \"hint\": \"使用默认值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use dynamic thresholding\",\n      \"localized\": \"使用动态阈值处理\",\n      \"reload\": \"\",\n      \"hint\": \"使用动态阈值处理\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use fixed width thumbnails\",\n      \"localized\": \"使用固定宽度缩略图\",\n      \"reload\": \"\",\n      \"hint\": \"使用固定宽度缩略图\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use image gallery cache\",\n      \"localized\": \"使用图像画廊缓存\",\n      \"reload\": \"\",\n      \"hint\": \"使用图像画廊缓存\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use karras sigmas\",\n      \"localized\": \"使用Karras sigma\",\n      \"reload\": \"\",\n      \"hint\": \"使用Karras sigma\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use line break as prompt segment marker\",\n      \"localized\": \"使用换行符作为提示段标记\",\n      \"reload\": \"\",\n      \"hint\": \"使用换行符作为提示段标记\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use model ema weights when possible\",\n      \"localized\": \"尽可能使用模型EMA权重\",\n      \"reload\": \"\",\n      \"hint\": \"尽可能使用模型EMA权重\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use quantization\",\n      \"localized\": \"使用量化\",\n      \"reload\": \"\",\n      \"hint\": \"使用量化\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use random seeds\",\n      \"localized\": \"使用随机种子\",\n      \"reload\": \"\",\n      \"hint\": \"使用随机种子\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use reference values when available\",\n      \"localized\": \"可用时使用参考值\",\n      \"reload\": \"\",\n      \"hint\": \"可用时使用参考值\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use same seed\",\n      \"localized\": \"使用相同种子\",\n      \"reload\": \"\",\n      \"hint\": \"使用相同种子\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use sample\",\n      \"localized\": \"使用样本\",\n      \"reload\": \"\",\n      \"hint\": \"使用样本\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use separate base dict\",\n      \"localized\": \"使用单独的基础字典\",\n      \"reload\": \"\",\n      \"hint\": \"使用单独的基础字典\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use simplified solvers in final steps\",\n      \"localized\": \"在最后步骤中使用简化求解器\",\n      \"reload\": \"\",\n      \"hint\": \"在最后步骤中使用简化求解器\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"use text inputs\",\n      \"localized\": \"使用文本输入\",\n      \"reload\": \"\",\n      \"hint\": \"使用文本输入\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"user\",\n      \"localized\": \"用户\",\n      \"reload\": \"\",\n      \"hint\": \"用户\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"username\",\n      \"localized\": \"用户名\",\n      \"reload\": \"\",\n      \"hint\": \"用户名\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"v_prediction\",\n      \"localized\": \"v预测\",\n      \"reload\": \"\",\n      \"hint\": \"v预测\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae enabled\",\n      \"localized\": \"VAE启用\",\n      \"reload\": \"\",\n      \"hint\": \"VAE启用\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae sliced encode\",\n      \"localized\": \"VAE切片编码\",\n      \"reload\": \"\",\n      \"hint\": \"VAE切片编码\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae swap size\",\n      \"localized\": \"VAE交换大小\",\n      \"reload\": \"\",\n      \"hint\": \"VAE交换大小\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae tile overlap\",\n      \"localized\": \"VAE瓦片重叠\",\n      \"reload\": \"\",\n      \"hint\": \"VAE瓦片重叠\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vae tile size\",\n      \"localized\": \"VAE瓦片大小\",\n      \"reload\": \"\",\n      \"hint\": \"VAE瓦片大小\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vary_coeff\",\n      \"localized\": \"变化系数\",\n      \"reload\": \"\",\n      \"hint\": \"变化系数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vdm solver\",\n      \"localized\": \"VDM求解器\",\n      \"reload\": \"\",\n      \"hint\": \"VDM求解器\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"version\",\n      \"localized\": \"版本\",\n      \"reload\": \"\",\n      \"hint\": \"版本\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vgen params\",\n      \"localized\": \"视频生成参数\",\n      \"reload\": \"\",\n      \"hint\": \"视频生成参数\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vibrance\",\n      \"localized\": \"鲜艳度\",\n      \"reload\": \"\",\n      \"hint\": \"鲜艳度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"video file\",\n      \"localized\": \"视频文件\",\n      \"reload\": \"\",\n      \"hint\": \"视频文件\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"video type\",\n      \"localized\": \"视频类型\",\n      \"reload\": \"\",\n      \"hint\": \"视频类型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm\",\n      \"localized\": \"视觉语言模型\",\n      \"reload\": \"\",\n      \"hint\": \"视觉语言模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm model\",\n      \"localized\": \"视觉语言模型\",\n      \"reload\": \"\",\n      \"hint\": \"视觉语言模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: default model\",\n      \"localized\": \"视觉语言模型: 默认模型\",\n      \"reload\": \"\",\n      \"hint\": \"视觉语言模型: 默认模型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: default prompt\",\n      \"localized\": \"视觉语言模型: 默认提示\",\n      \"reload\": \"\",\n      \"hint\": \"视觉语言模型: 默认提示\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: max length\",\n      \"localized\": \"视觉语言模型: 最大长度\",\n      \"reload\": \"\",\n      \"hint\": \"视觉语言模型: 最大长度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: num beams\",\n      \"localized\": \"视觉语言模型: 波束数量\",\n      \"reload\": \"\",\n      \"hint\": \"视觉语言模型: 波束数量\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: top-k\",\n      \"localized\": \"视觉语言模型: Top-K\",\n      \"reload\": \"\",\n      \"hint\": \"视觉语言模型: Top-K\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: top-p\",\n      \"localized\": \"视觉语言模型: Top-P\",\n      \"reload\": \"\",\n      \"hint\": \"视觉语言模型: Top-P\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"vlm: use sample method\",\n      \"localized\": \"视觉语言模型: 使用采样方法\",\n      \"reload\": \"\",\n      \"hint\": \"视觉语言模型: 使用采样方法\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"warmth\",\n      \"localized\": \"暖度\",\n      \"reload\": \"\",\n      \"hint\": \"暖度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"webp lossless compression\",\n      \"localized\": \"WebP无损压缩\",\n      \"reload\": \"\",\n      \"hint\": \"WebP无损压缩\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"weight\",\n      \"localized\": \"权重\",\n      \"reload\": \"\",\n      \"hint\": \"权重\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width  after\",\n      \"localized\": \"宽度 (之后)\",\n      \"reload\": \"\",\n      \"hint\": \"宽度 (之后)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width  before\",\n      \"localized\": \"宽度 (之前)\",\n      \"reload\": \"\",\n      \"hint\": \"宽度 (之前)\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"width  mask\",\n      \"localized\": \"蒙版宽度\",\n      \"reload\": \"\",\n      \"hint\": \"蒙版宽度\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"wiki\",\n      \"localized\": \"维基\",\n      \"reload\": \"\",\n      \"hint\": \"维基\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"wildcards\",\n      \"localized\": \"通配符\",\n      \"reload\": \"\",\n      \"hint\": \"通配符\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x components\",\n      \"localized\": \"X分量\",\n      \"reload\": \"\",\n      \"hint\": \"X分量\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x overlap\",\n      \"localized\": \"X轴重叠\",\n      \"reload\": \"\",\n      \"hint\": \"X轴重叠\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x type\",\n      \"localized\": \"X类型\",\n      \"reload\": \"\",\n      \"hint\": \"X类型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x-axis tile overlap\",\n      \"localized\": \"X轴瓦片重叠\",\n      \"reload\": \"\",\n      \"hint\": \"X轴瓦片重叠\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"x-axis tiles\",\n      \"localized\": \"X轴瓦片\",\n      \"reload\": \"\",\n      \"hint\": \"X轴瓦片\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xhinker\",\n      \"localized\": \"xhinker\",\n      \"reload\": \"\",\n      \"hint\": \"xhinker\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"xs\",\n      \"localized\": \"xs\",\n      \"reload\": \"\",\n      \"hint\": \"xs\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y components\",\n      \"localized\": \"Y分量\",\n      \"reload\": \"\",\n      \"hint\": \"Y分量\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y overlap\",\n      \"localized\": \"Y轴重叠\",\n      \"reload\": \"\",\n      \"hint\": \"Y轴重叠\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y type\",\n      \"localized\": \"Y类型\",\n      \"reload\": \"\",\n      \"hint\": \"Y类型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y-axis tile overlap\",\n      \"localized\": \"Y轴瓦片重叠\",\n      \"reload\": \"\",\n      \"hint\": \"Y轴瓦片重叠\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"y-axis tiles\",\n      \"localized\": \"Y轴瓦片\",\n      \"reload\": \"\",\n      \"hint\": \"Y轴瓦片\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"z type\",\n      \"localized\": \"Z类型\",\n      \"reload\": \"\",\n      \"hint\": \"Z类型\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"zero\",\n      \"localized\": \"零\",\n      \"reload\": \"\",\n      \"hint\": \"零\"\n    },\n    {\n      \"id\": \"\",\n      \"label\": \"zoe depth\",\n      \"localized\": \"Zoe深度\",\n      \"reload\": \"\",\n      \"hint\": \"Zoe深度\"\n    }\n  ]\n}\n"
  },
  {
    "path": "html/manifest.json",
    "content": "{\n  \"name\": \"SD.Next\",\n  \"short_name\": \"SD.Next\",\n  \"icons\": [{ \"src\": \"favicon.png\", \"sizes\": \"256x256\", \"type\": \"image/png\", \"purpose\": \"any maskable\" }],\n  \"start_url\": \"/\",\n  \"scope\": \"/\",\n  \"display\": \"standalone\"\n}\n"
  },
  {
    "path": "html/override_en.json",
    "content": "[\n]\n"
  },
  {
    "path": "html/override_hr.json",
    "content": "[\n  { \"id\": \"\", \"label\": \"Reprocess\", \"localized\": \"Ponovi\", \"hint\": \"Ponovno obradite prethodne generacije koristeći različite parametre\" }\n]\n"
  },
  {
    "path": "html/override_ko.json",
    "content": "[{\"id\":\"\",\"label\":\"🎲️\",\"localized\":\"\",\"hint\":\"무작위 시드 사용\"},{\"id\":\"\",\"label\":\"🔄\",\"localized\":\"\",\"hint\":\"초기화\"},{\"id\":\"\",\"label\":\"🔎︎\",\"localized\":\"\",\"hint\":\"누락된 메타데이터 및 미리보기를 CivitAI에서 검색\"},{\"id\":\"\",\"label\":\"Prompt\",\"localized\":\"프롬프트\",\"hint\":\"생성하고 싶은 이미지에 대해 설명하세요\"},{\"id\":\"\",\"label\":\"Negative prompt\",\"localized\":\"네거티브 프롬프트\",\"hint\":\"생성된 이미지에서 보고 싶지 않은 것에 대해 설명하세요\"},{\"id\":\"\",\"label\":\"Interrogate\",\"localized\":\"\",\"hint\":\"이미지 설명을 얻기 위해 Interrogate 실행\"},{\"id\":\"\",\"label\":\"Agent Scheduler\",\"localized\":\"작업 스케줄러\",\"hint\":\"생성 요청을 대기열에 넣고 백그라운드에서 실행\"},{\"id\":\"\",\"label\":\"System\",\"localized\":\"시스템 설정\",\"hint\":\"시스템 설정 및 정보\"},{\"id\":\"\",\"label\":\"Generate\",\"localized\":\"생성\",\"hint\":\"작업 시작\"},{\"id\":\"\",\"label\":\"Stop\",\"localized\":\"중지\",\"hint\":\"작업 중지\"},{\"id\":\"\",\"label\":\"Skip\",\"localized\":\"건너뛰기\",\"hint\":\"현재 작업을 건너뛰고 다음 작업 시작\"},{\"id\":\"\",\"label\":\"Pause\",\"localized\":\"일시 중지\",\"hint\":\"작업 일시 중지\"},{\"id\":\"\",\"label\":\"Restore\",\"localized\":\"복원\",\"hint\":\"현재 프롬프트 또는 마지막으로 생성된 이미지에서 매개변수 복원\"},{\"id\":\"\",\"label\":\"Default strength\",\"localized\":\"기본 강도\",\"hint\":\"LoRA와 같은 추가 네트워크를 프롬프트에 추가할 때 사용될 기본 강도\"},{\"id\":\"\",\"label\":\"Embedding\",\"localized\":\"임베딩\",\"hint\":\"Textual inversion embedding. 특정 주제에 대해 훈련된 보조 모델\"},{\"id\":\"\",\"label\":\"Hypernetwork\",\"localized\":\"하이퍼 네트워크\",\"hint\":\"로드된 모델의 동작을 수정하는 보조 모델\"},{\"id\":\"\",\"label\":\"VAE\",\"localized\":\"VAE\",\"hint\":\"Variational Auto Encoder. 생성 마지막에 이미지 디코드를 실행하는 데 사용되는 모델\"},{\"id\":\"\",\"label\":\"Corrections\",\"localized\":\"보정\",\"hint\":\"생성 프로세스 동안 이미지 색상/선명도/밝기를 보정합니다.\"},{\"id\":\"\",\"label\":\"Refine\",\"localized\":\"리파이너\",\"hint\":\"업스케일, HiRes 및 리파이너와 관련된 설정\"},{\"id\":\"\",\"label\":\"➠ text\",\"localized\":\"➠ 텍스트\",\"hint\":\"이미지를 텍스트 탭으로 전송\"},{\"id\":\"\",\"label\":\"➠ image\",\"localized\":\"➠ 이미지\",\"hint\":\"이미지를 이미지 탭으로 전송\"},{\"id\":\"\",\"label\":\"➠ inpaint\",\"localized\":\"➠ 인페인트\",\"hint\":\"이미지를 인페인트 탭으로 전송\"},{\"id\":\"\",\"label\":\"➠ sketch\",\"localized\":\"➠ 스케치\",\"hint\":\"이미지를 스케치 탭으로 전송\"},{\"id\":\"\",\"label\":\"➠ composite\",\"localized\":\"➠ 합성\",\"hint\":\"이미지를 합성 탭으로 전송\"},{\"id\":\"\",\"label\":\"Sampling method\",\"localized\":\"샘플링 알고리즘\",\"hint\":\"이미지를 생성하는 데 사용할 알고리즘입니다.\"},{\"id\":\"\",\"label\":\"Steps\",\"localized\":\"샘플링 스탭 수\",\"hint\":\"초기 이미지를 반복적으로 개선하는 횟수입니다. 스탭 수를 높일 수록 생성 시간이 더 오래 걸립니다. 모델에 따라 다르지만, 스탭 수가 너무 낮으면 결과물의 품질이 좋지 않을 수 있습니다.\"},{\"id\":\"\",\"label\":\"full quality\",\"localized\":\"최고 품질 VAE 사용\",\"hint\":\"최고 품질 VAE를 사용합니다. 이 옵션을 끄면 VAE 처리 단계에서 처리 속도가 빨라지고 VRAM 사용량이 낮아지지만 결과물의 품질이 떨어집니다.\"},{\"id\":\"\",\"label\":\"HDR Clamp\",\"localized\":\"HDR 클램프\",\"hint\":\"평균에서 크게 벗어나는 값을 제거합니다. 특히, 가이던스 스케일 값을 높게 설정했을 때 생성을 향상시킵니다. 생성 초기에 잘못된 값을 찾고, 범위(경계) 및 임계값 설정을 기반으로 수학적 조정을 적용하는 데 유용합니다. 이미지 값에 원하는 범위를 설정하고 임계값을 조정하여 잘못된 값을 해당 범위로 다시 조정한다고 생각하면 됩니다.\"},{\"id\":\"\",\"label\":\"Enable refine pass\",\"localized\":\"리파이너 활성화\",\"hint\":\"이미지-이미지와 유사한 프로세스를 사용하여 최종 이미지를 업스케일하거나 디테일을 추가합니다. 기본 모델과는 별개의 리파이너 모델을 사용하여 이미지 디테일을 향상시킬 수도 있습니다.\"},{\"id\":\"\",\"label\":\"enable detailer pass\",\"localized\":\"디테일러 활성화\",\"hint\":\"얼굴과 같은 특정 부위를 감지하고 별도의 모델을 사용하여 해당 부위만을 더 높은 해상도로 다시 처리합니다.\"},{\"id\":\"\",\"label\":\"Force Hires\",\"localized\":\"Hires 강제 활성화\",\"hint\":\"Latent 업스케일러가 선택되면 Hires가 자동으로 활성화되지만, 그 외의 업스케일러를 사용할 때는 건너뜁니다. 이 옵션을 활성화하면 업스케일러 종류와 무관하게 항상 Hires를 실행합니다.\"},{\"id\":\"\",\"label\":\"Refine sampler\",\"localized\":\"리파이너 샘플링 알고리즘\",\"hint\":\"리파이너 작업 시, 기본 샘플링 알고리즘을 사용할 수 없는 경우 이 샘플링 알고리즘을 대신 사용합니다.\"},{\"id\":\"\",\"label\":\"Refiner start\",\"localized\":\"리파이너 시작\",\"hint\":\"기본 모델이 이만큼 완료되면 리파이너 패스가 시작됩니다. (0보다 크고 1보다 작게 설정하여 전체 기본 모델 실행 후에 실행)\"},{\"id\":\"\",\"label\":\"Refiner steps\",\"localized\":\"리파이너 샘플링 스탭 수\",\"hint\":\"리파이너 작업에 사용할 샘플링 스탭 수입니다.\"},{\"id\":\"\",\"label\":\"Refine guidance\",\"localized\":\"리파이너 가이던스 스케일\",\"hint\":\"리파이너 작업에 사용되는 가이던스 스케일입니다.\"},{\"id\":\"\",\"label\":\"Attention guidance\",\"localized\":\"어텐션 가이던스 스케일\",\"hint\":\"PAG(Perturbed-Attention Guidance)와 함께 사용되는 가이던스 스케일입니다.\"},{\"id\":\"\",\"label\":\"Adaptive scaling\",\"localized\":\"적응형 스케일링\",\"hint\":\"어텐션 가이던스 스케일에 대한 적응형 수정자입니다.\"},{\"id\":\"\",\"label\":\"Rescale guidance\",\"localized\":\"가이던스 재조정\",\"hint\":\"노출 과다된 이미지를 피하기 위해 CFG 생성 노이즈를 재조정합니다.\"},{\"id\":\"\",\"label\":\"Refine Prompt\",\"localized\":\"리파이너 프롬프트\",\"hint\":\"기본 모델의 두 번째 인코더(있는 경우)와 리파이너 패스(활성화된 경우) 모두에 사용되는 프롬프트입니다.\"},{\"id\":\"\",\"label\":\"Refine negative prompt\",\"localized\":\"리파이너 네거티브 프롬프트\",\"hint\":\"기본 모델의 두 번째 인코더(있는 경우)와 리파이너 패스(활성화된 경우) 모두에 사용되는 네거티브 프롬프트입니다.\"},{\"id\":\"\",\"label\":\"Batch count\",\"localized\":\"배치 수\",\"hint\":\"생성할 이미지 배치 수입니다. (생성 성능 또는 VRAM 사용량에 영향을 미치지 않음)\"},{\"id\":\"\",\"label\":\"Batch size\",\"localized\":\"배치 크기\",\"hint\":\"단일 배치에서 생성할 이미지 수입니다. (VRAM 사용량이 높아지는 대신 생성 성능이 향상됨)\"},{\"id\":\"\",\"label\":\"guidance scale\",\"localized\":\"가이던스 스케일\",\"hint\":\"Classifier Free Guidance 스케일:이미지가 프롬프트에 얼마나 강하게 부합해야 하는지입니다. 값이 낮을수록 더 창의적인 결과를 생성하고, 값이 높을수록 프롬프트를 더 엄격하게 따릅니다. 5-10 사이의 값을 권장합니다.\"},{\"id\":\"\",\"label\":\"Guidance End\",\"localized\":\"가이던스 종료 시점\",\"hint\":\"CFG 및 PAG 효과가 끝나는 시점입니다. 이 값을 1로 설정하면 마지막까지 가이던스 효과를 유지하고, 0.5로 설정하면 이미지 생성 단계의 50% 시점에서 가이던스 효과를 끝냅니다.\"},{\"id\":\"\",\"label\":\"Variation strength\",\"localized\":\"변형 강도\",\"hint\":\"생성할 변형의 강도입니다. 0에서는 아무런 효과가 없습니다. 1에서는 변형 시드가 있는 완전한 사진을 얻을 수 있습니다. (a로 끝나는 ancestral 샘플링 알고리즘에는 적용되지 않음)\"},{\"id\":\"\",\"label\":\"Extension GIT repository URL\",\"localized\":\"확장 Git 레포지토리 URL\",\"hint\":\"GitHub의 확장 레포지토리 URL을 지정합니다.\"},{\"id\":\"\",\"label\":\"Specific branch name\",\"localized\":\"특정 브랜치 이름\",\"hint\":\"확장 레포지토리의 브랜치 이름을 지정합니다. 공백인 경우 기본값을 사용합니다.\"},{\"id\":\"\",\"label\":\"Local directory name\",\"localized\":\"로컬 디렉토리 이름\",\"hint\":\"확장을 설치할 디렉토리의 이름입니다. 공백인 경우 기본값을 사용합니다.\"},{\"id\":\"\",\"label\":\"Refresh extension list\",\"localized\":\"확장 목록 새로고침\",\"hint\":\"사용 가능한 확장의 목록을 다시 불러옵니다.\"},{\"id\":\"\",\"label\":\"Update all installed\",\"localized\":\"설치된 모든 확장 업데이트\",\"hint\":\"설치된 모든 확장을 사용 가능한 최신 버전으로 업데이트합니다.\"},{\"id\":\"\",\"label\":\"Apply changes\",\"localized\":\"변경 사항 적용\",\"hint\":\"모든 변경 사항을 적용하고 서버를 다시 시작합니다.\"},{\"id\":\"\",\"label\":\"uninstall\",\"localized\":\"제거\",\"hint\":\"이 확장을 제거합니다.\"},{\"id\":\"\",\"label\":\"User interface\",\"localized\":\"사용자 인터페이스\",\"hint\":\"사용자 인터페이스 기본 설정을 검토하고 설정합니다.\"},{\"id\":\"\",\"label\":\"Set ui defaults\",\"localized\":\"UI 기본값 설정\",\"hint\":\"현재 값을 사용자 인터페이스의 기본값으로 설정합니다.\"},{\"id\":\"\",\"label\":\"Models & Networks\",\"localized\":\"모델 및 네트워크\",\"hint\":\"사용 가능한 모든 모델 및 네트워크 목록을 봅니다.\"},{\"id\":\"\",\"label\":\"Restore UI defaults\",\"localized\":\"UI 기본값 복원\",\"hint\":\"기본 사용자 인터페이스 값을 복원합니다.\"},{\"id\":\"\",\"label\":\"detailer classes\",\"localized\":\"디테일러 클래스\",\"hint\":\"선택한 디테일러 모델이 다중 클래스 모델인 경우 사용할 특정 클래스를 지정합니다.\"},{\"id\":\"\",\"label\":\"detailer models\",\"localized\":\"디테일러 모델\",\"hint\":\"사용할 디테일러 모델을 선택합니다.\"},{\"id\":\"\",\"label\":\"detailer negative prompt\",\"localized\":\"디테일러 네거티브 프롬프트\",\"hint\":\"디테일러에 대한 별도의 네거티브 프롬프트를 사용합니다. 이 란이 공백인 경우 기본 네거티브 프롬프트를 사용합니다.\"},{\"id\":\"\",\"label\":\"detailer prompt\",\"localized\":\"디테일러 프롬프트\",\"hint\":\"디테일러에 대하여 별도의 프롬프트를 사용합니다. 이 란이 공백인 경우 기본 프롬프트를 사용합니다.\"},{\"id\":\"\",\"label\":\"detailer steps\",\"localized\":\"디테일러 스탭 수\",\"hint\":\"디테일러 작업을 실행할 스탭 수\"},{\"id\":\"\",\"label\":\"detailer use model augment\",\"localized\":\"디테일러 모델 augment 사용\",\"hint\":\"디테일러 감지 모델을 더 높은 정밀도로 실행합니다.\"},{\"id\":\"\",\"label\":\"edge blur\",\"localized\":\"가장자리 흐림\",\"hint\":\"마스크된 영역의 가장자리를 흐리게 합니다. 단위는 %이고 최댓값은 100%입니다.\"},{\"id\":\"\",\"label\":\"edge padding\",\"localized\":\"가장자리 패딩\",\"hint\":\"마스크된 영역의 가장자리를 확장합니다. 단위는 %이고 최댓값은 100%입니다.\"},{\"id\":\"\",\"label\":\"min confidence\",\"localized\":\"최소 신뢰도\",\"hint\":\"디테일러에 의해 감지된 항목의 최소 신뢰도\"},{\"id\":\"\",\"label\":\"ReBasin\",\"localized\":\"\",\"hint\":\"두 모델에서 더 많은 기능을 유지하기 위해 순열과 함께 여러 번 병합을 수행합니다.\"},{\"id\":\"\",\"label\":\"Number of ReBasin Iterations\",\"localized\":\"ReBasin 반복 횟수\",\"hint\":\"저장하기 전에 모델을 병합하고 순열하는 횟수\"},{\"id\":\"\",\"label\":\"cpu\",\"localized\":\"CPU\",\"hint\":\"CPU와 RAM만 사용합니다. 가장 느리지만 메모리 부족 오류가 발생할 가능성이 가장 적습니다.\"},{\"id\":\"\",\"label\":\"shuffle\",\"localized\":\"셔플\",\"hint\":\"전체 모델은 RAM에 로드하고 필요한 값만 VRAM으로 옮긴 후 연산합니다. CPU와 RAM만 사용했을 때에 비해 조금 더 빠릅니다. SDXL 병합에 권장합니다.\"},{\"id\":\"\",\"label\":\"Preset Interpolation Ratio\",\"localized\":\"사전 설정 보간 비율\",\"hint\":\"두 개의 사전 설정이 선택된 경우 그 사이를 보간합니다.\"},{\"id\":\"\",\"label\":\"active ip adapters\",\"localized\":\"활성 IP 어댑터 개수\",\"hint\":\"활성 IP 어댑터 개수\"},{\"id\":\"\",\"label\":\"unload adapter\",\"localized\":\"어댑터 언로드\",\"hint\":\"생성이 끝나면 즉시 IP 어댑터를 언로드합니다. 이 옵션을 비활성화하면 다음 생성에서 IP 어댑터를 더 빠르게 사용하기 위해 로드된 상태를 유지합니다.\"},{\"id\":\"\",\"label\":\"crop to portrait\",\"localized\":\"세로로 자르기\",\"hint\":\"IP 어댑터 입력으로 사용하기 전에 입력 이미지를 세로 전용으로 자릅니다.\"},{\"id\":\"\",\"label\":\"layer options\",\"localized\":\"레이어 옵션\",\"hint\":\"IP 어댑터 고급 레이어 옵션을 수동으로 지정합니다.\"},{\"id\":\"\",\"label\":\"X values\",\"localized\":\"X 값\",\"hint\":\"쉼표를 사용하여 X축에 대한 값을 분리합니다.\"},{\"id\":\"\",\"label\":\"Y values\",\"localized\":\"Y 값\",\"hint\":\"쉼표를 사용하여 Y축에 대한 값을 분리합니다.\"},{\"id\":\"\",\"label\":\"Z values\",\"localized\":\"Z 값\",\"hint\":\"쉼표를 사용하여 Z축에 대한 값을 분리합니다.\"},{\"id\":\"\",\"label\":\"Tile overlap\",\"localized\":\"타일 중복\",\"hint\":\"업스케일을 할 때 각 타일 사이에 겹치게 할 픽셀 수입니다. 겹치는 픽셀의 수가 많을 수록 모든 타일이 하나의 그림으로 다시 병합된 이후 타일 간 이음새가 눈에 덜 띕니다.\"},{\"id\":\"sett_reload_sd_model\",\"label\":\"Reload model\",\"localized\":\"모델 다시 로드\",\"hint\":\"현재 선택된 모델을 다시 로드합니다.\"},{\"id\":\"\",\"label\":\"Variational Auto Encoder\",\"localized\":\"Variational Auto Encoder\",\"hint\":\"VAE 및 이미지 디코드 작업과 관련된 설정\"},{\"id\":\"\",\"label\":\"Text encoder\",\"localized\":\"텍스트 인코더\",\"hint\":\"텍스트 인코더 및 프롬프트 인코드 관련 설정\"},{\"id\":\"\",\"label\":\"Compute Settings\",\"localized\":\"연산 설정\",\"hint\":\"연산 정밀도, cross-attention 및 최적화 관련 설정\"},{\"id\":\"\",\"label\":\"Backend Settings\",\"localized\":\"백엔드 설정\",\"hint\":\"torch, onnx 및 olive와 같은 연산 백엔드 관련 설정\"},{\"id\":\"\",\"label\":\"Pipeline modifiers\",\"localized\":\"파이프라인 고급 기능\",\"hint\":\"생성 중에 활성화할 수 있는 추가 기능\"},{\"id\":\"\",\"label\":\"Sampler Settings\",\"localized\":\"샘플러 설정\",\"hint\":\"샘플러 선택 및 구성, Diffusers 샘플러 구성 관련 설정\"},{\"id\":\"\",\"label\":\"Postprocessing\",\"localized\":\"후처리\",\"hint\":\"이미지 생성 후 처리, 얼굴 복원 및 업스케일 관련 설정\"},{\"id\":\"\",\"label\":\"Huggingface\",\"localized\":\"Huggingface\",\"hint\":\"Huggingface 관련 설정\"},{\"id\":\"\",\"label\":\"Show all pages\",\"localized\":\"모든 페이지 표시\",\"hint\":\"모든 설정 페이지를 표시합니다.\"},{\"id\":\"\",\"label\":\"VAE model\",\"localized\":\"VAE 모델\",\"hint\":\"VAE는 최종 이미지의 미세한 디테일을 보정합니다. 색감을 변경할 수도 있습니다.\"},{\"id\":\"\",\"label\":\"Model load using streams\",\"localized\":\"스트림을 사용하여 모델 로드\",\"hint\":\"모델을 로드할 때 느린 저장 장치와 네트워크 스토리지에 최적화된 스트리밍 로드를 시도합니다.\"},{\"id\":\"\",\"label\":\"Full\",\"localized\":\"\",\"hint\":\"항상 최대 정밀도를 사용합니다.\"},{\"id\":\"\",\"label\":\"FP32\",\"localized\":\"FP32\",\"hint\":\"32비트 부동 소수점을 사용합니다.\"},{\"id\":\"\",\"label\":\"FP16\",\"localized\":\"FP16\",\"hint\":\"16비트 부동 소수점을 사용합니다.\"},{\"id\":\"\",\"label\":\"BF16\",\"localized\":\"BF16\",\"hint\":\"수정된 16비트 부동 소수점을 사용합니다.\"},{\"id\":\"\",\"label\":\"Full precision (--no-half-vae)\",\"localized\":\"VAE 최대 정밀도 (--no-half-vae)\",\"hint\":\"VAE에 FP32를 사용합니다. 더 많은 VRAM을 사용하고 생성 속도가 느리지만 더 나은 결과를 얻을 수 있습니다.\"},{\"id\":\"\",\"label\":\"Force full precision (--no-half)\",\"localized\":\"모델 최대 정밀도 (--no-half)\",\"hint\":\"모델에 FP32를 사용합니다. 더 많은 VRAM을 사용하고 생성 속도가 느리지만 더 나은 결과를 얻을 수 있습니다.\"},{\"id\":\"\",\"label\":\"Upcast sampling\",\"localized\":\"업캐스트 샘플링\",\"hint\":\"--no-half를 사용했을 때와 유사한 결과를 얻을 수 있지만 생성 속도가 더 빠르고 메모리도 덜 사용합니다.\"},{\"id\":\"\",\"label\":\"Attempt VAE roll back for NaN values\",\"localized\":\"NaN 값 발생 시 VAE 롤백 시도\",\"hint\":\"Torch 2.1 및 NaN 검사가 활성화되어 있어야 합니다.\"},{\"id\":\"\",\"label\":\"Olive use FP16 on optimization\",\"localized\":\"Olive:최적화 시 FP16 사용\",\"hint\":\"Olive 최적화 프로세스의 출력 모델에 16비트 부동 소수점 정밀도를 사용합니다. 비활성화된 경우 32비트 부동 소수점 정밀도를 사용합니다.\"},{\"id\":\"\",\"label\":\"Olive force FP32 for VAE Encoder\",\"localized\":\"Olive:VAE 인코더에 대해 FP32 강제\",\"hint\":\"출력 모델의 VAE 인코더에 32비트 부동 소수점 정밀도를 사용합니다. 이는 '최적화 시 FP16 사용' 옵션을 무시합니다. Img2Img에서 NaN 또는 검은색 빈 이미지가 발생하는 경우 이 옵션을 활성화하고 캐시된 모델을 제거하세요.\"},{\"id\":\"\",\"label\":\"Olive use static dimensions\",\"localized\":\"Olive:정적 차원 사용\",\"hint\":\"Olive 최적화 모델의 이미지 생성 속도를 매우 빠르게 만듭니다. (OrtTransformersOptimization)\"},{\"id\":\"\",\"label\":\"Olive cache optimized models\",\"localized\":\"Olive:최적화 모델 캐시\",\"hint\":\"Olive 처리된 모델을 저장합니다. ONNX 탭에서 관리할 수 있습니다.\"},{\"id\":\"\",\"label\":\"Inpainting conditioning mask strength\",\"localized\":\"인페인트 conditioning mask 강도\",\"hint\":\"인페인트 및 img2img에 대해 원본 이미지를 얼마나 강하게 마스킹할지 결정합니다. 1.0은 완전히 마스킹(기본값)을 의미합니다. 0.0은 완전히 마스킹되지 않은 컨디셔닝을 의미합니다. 값이 낮을수록 이미지의 전체 구성을 보존하는 데 도움이 되지만 큰 변경에는 어려움을 겪습니다.\"},{\"id\":\"\",\"label\":\"Clip skip\",\"localized\":\"Clip skip\",\"hint\":\"CLIP 모델의 중단 시점. 이 값을 1로 설정하면 평소와 같이 마지막 레이어에서 중단하고, 2로 설정하면 끝에서 두 번째 레이어에서 중단합니다.\"},{\"id\":\"\",\"label\":\"Approximate\",\"localized\":\"\",\"hint\":\"빠르고 가벼운 근사 방식입니다. VAE에 비해 매우 빠르지만 가로/세로 해상도가 4배 작고 품질이 낮은 사진을 생성합니다.\"},{\"id\":\"\",\"label\":\"Simple\",\"localized\":\"\",\"hint\":\"매우 빠르고 가벼운 근사 방식입니다. VAE에 비해 매우 빠르지만 가로/세로 해상도가 8배 작고 품질이 매우 낮은 사진을 생성합니다.\"},{\"id\":\"\",\"label\":\"Progress update period\",\"localized\":\"진행률 업데이트 주기\",\"hint\":\"UI 프로그레스 바 및 미리보기를 위한 업데이트 주기입니다. (밀리초 단위)\"},{\"id\":\"\",\"label\":\"Euler a\",\"localized\":\"Euler a\",\"hint\":\"Euler Ancestral - 매우 창의적이며 스탭 수에 따라 완전히 다른 그림을 얻을 수 있습니다. 스탭 수를 30-40단계보다 높게 설정하는 것은 의미가 없습니다.\"},{\"id\":\"\",\"label\":\"DDIM\",\"localized\":\"DDIM\",\"hint\":\"Denoising Diffusion Implicit Models - 인페인트에 가장 적합합니다.\"},{\"id\":\"\",\"label\":\"UniPC\",\"localized\":\"UniPC\",\"hint\":\"Diffusion 모델의 빠른 샘플링을 위한 통합 예측기\"},{\"id\":\"\",\"label\":\"sigma negative guidance minimum\",\"localized\":\"시그마 음수 지침 최솟값\",\"hint\":\"이미지가 거의 준비되었을 때 일부 단계에 대한 음수 프롬프트를 건너뜁니다. 0=비활성화\"},{\"id\":\"\",\"label\":\"Upscaler tile overlap\",\"localized\":\"업스케일러 타일 중복\",\"hint\":\"이 값이 낮을 수록 타일 간 이음새 부분이 더 잘 보입니다.\"},{\"id\":\"\",\"label\":\"VAE slicing\",\"localized\":\"VAE 슬라이싱\",\"hint\":\"VRAM 사용량을 줄이기 위해 한 번에 하나의 이미지를 디코드합니다. 다중 이미지 배치에서 VAE 디코드 작업이 약간 빨라집니다.\"},{\"id\":\"\",\"label\":\"VAE tiling\",\"localized\":\"VAE 타일링\",\"hint\":\"VRAM 사용량을 줄이기 위해 큰 이미지를 여러 개의 타일로 나눕니다. 생성 시간이 약간 증가합니다.\"},{\"id\":\"\",\"label\":\"Dynamic attention BMM\",\"localized\":\"다이나믹 어텐션 BMM\",\"hint\":\"어텐션 계산을 한 번에 모두 수행하지 않고 단계별로 수행합니다. 생성 속도가 느려지지만 메모리 사용량이 크게 줄어듭니다.\"},{\"id\":\"\",\"label\":\"ONNX Execution Provider\",\"localized\":\"ONNX Execution Provider\",\"hint\":\"ONNX Runtime에서 사용할 장치 종류 (Execution Provider)\"},{\"id\":\"\",\"label\":\"ONNX allow fallback to CPU\",\"localized\":\"ONNX:CPU fallback 허용\",\"hint\":\"선택한 Execution Provider를 사용할 수 없을 때 CPU를 대신 사용합니다.\"},{\"id\":\"\",\"label\":\"ONNX cache converted models\",\"localized\":\"ONNX:변환된 모델 저장\",\"hint\":\"ONNX 형식으로 변환된 모델을 저장합니다. ONNX 탭에서 관리할 수 있습니다.\"},{\"id\":\"\",\"label\":\"ONNX unload base model when processing refiner\",\"localized\":\"ONNX:리파이너 단계에서 기본 모델 언로드\",\"hint\":\"리파이너가 변환/최적화/처리될 때 기본 모델을 언로드합니다.\"},{\"id\":\"\",\"label\":\"model compile precompile\",\"localized\":\"모델 컴파일 사전 컴파일\",\"hint\":\"모델을 로드할 때 모델 컴파일을 실행합니다. 이 옵션을 비활성화하면 새로 작업을 시작할 때 모델을 컴파일합니다.\"},{\"id\":\"\",\"label\":\"Use zeros for prompt padding\",\"localized\":\"프롬프트 패딩에 0 사용\",\"hint\":\"프롬프트가 비어 있을 때 노이즈를 제거하기 위해 나머지를 0으로 채웁니다.\"},{\"id\":\"\",\"label\":\"invisible watermark string\",\"localized\":\"보이지 않는 워터마크 문자열\",\"hint\":\"이미지에 추가할 보이지 않는 워터마크 문자열입니다. 이미지 손상을 방지하기 위해 매우 짧게 설정해야 합니다.\"},{\"id\":\"\",\"label\":\"1st stage backbone\",\"localized\":\"1단계 backbone\",\"hint\":\"1단계 backbone\"},{\"id\":\"\",\"label\":\"1st stage skip\",\"localized\":\"1단계 skip\",\"hint\":\"1단계 skip\"},{\"id\":\"\",\"label\":\"2nd stage backbone\",\"localized\":\"2단계 backbone\",\"hint\":\"2단계 backbone\"},{\"id\":\"\",\"label\":\"2nd stage skip\",\"localized\":\"2단계 skip\",\"hint\":\"2단계 skip\"},{\"id\":\"\",\"label\":\"aggressive at step\",\"localized\":\"\",\"hint\":\"aggressive at step\"},{\"id\":\"\",\"label\":\"alt\",\"localized\":\"\",\"hint\":\"Alt\"},{\"id\":\"\",\"label\":\"apply linfusion distillation on load\",\"localized\":\"로드 시 Linfusion distillation 적용\",\"hint\":\"로드 시 Linfusion distillation 적용\"},{\"id\":\"\",\"label\":\"as a tab\",\"localized\":\"탭\",\"hint\":\"탭\"},{\"id\":\"\",\"label\":\"auto requeue failed tasks\",\"localized\":\"실패한 작업 대기열에 다시 추가\",\"hint\":\"실패한 작업을 자동으로 대기열에 다시 추가합니다.\"},{\"id\":\"\",\"label\":\"backend storage\",\"localized\":\"연산 데이터 타입\",\"hint\":\"연산 데이터 타입\"},{\"id\":\"\",\"label\":\"batch matrix-matrix\",\"localized\":\"\",\"hint\":\"batch matrix-matrix\"},{\"id\":\"\",\"label\":\"batch mode uses sequential seeds\",\"localized\":\"연속적 시드 사용\",\"hint\":\"연속적 시드 사용\"},{\"id\":\"\",\"label\":\"beta end\",\"localized\":\"\",\"hint\":\"beta end\"},{\"id\":\"\",\"label\":\"beta start\",\"localized\":\"\",\"hint\":\"beta start\"},{\"id\":\"\",\"label\":\"change log\",\"localized\":\"체인지로그\",\"hint\":\"체인지로그\"},{\"id\":\"\",\"label\":\"channels last\",\"localized\":\"\",\"hint\":\"channels last\"},{\"id\":\"\",\"label\":\"civitai\",\"localized\":\"\",\"hint\":\"CivitAI\"},{\"id\":\"\",\"label\":\"civitai model type\",\"localized\":\"CivitAI 모델 유형\",\"hint\":\"CivitAI 모델 유형\"},{\"id\":\"\",\"label\":\"civitai token\",\"localized\":\"CivitAI 토큰\",\"hint\":\"CivitAI 토큰\"},{\"id\":\"\",\"label\":\"cross-attention\",\"localized\":\"\",\"hint\":\"cross-attention\"},{\"id\":\"\",\"label\":\"ctrl\",\"localized\":\"\",\"hint\":\"Ctrl\"},{\"id\":\"\",\"label\":\"cudamallocasync\",\"localized\":\"cudaMallocAsync\",\"hint\":\"cudaMallocAsync\"},{\"id\":\"\",\"label\":\"current\",\"localized\":\"현재 로드된 모델\",\"hint\":\"현재 로드된 모델\"},{\"id\":\"\",\"label\":\"deep-cache\",\"localized\":\"\",\"hint\":\"deep-cache\"},{\"id\":\"\",\"label\":\"deterministic mode\",\"localized\":\"\",\"hint\":\"deterministic mode\"},{\"id\":\"\",\"label\":\"disabled\",\"localized\":\"비활성화\",\"hint\":\"비활성화\"},{\"id\":\"\",\"label\":\"downscale high resolution live previews\",\"localized\":\"고해상도 실시간 미리보기 축소\",\"hint\":\"고해상도 실시간 미리보기 축소\"},{\"id\":\"\",\"label\":\"dynamic\",\"localized\":\"\",\"hint\":\"dynamic\"},{\"id\":\"\",\"label\":\"dynamic attention\",\"localized\":\"\",\"hint\":\"dynamic attention\"},{\"id\":\"\",\"label\":\"dynamic attention slicing rate in gb\",\"localized\":\"다이나믹 어텐션 슬라이싱 비율 (GB 단위)\",\"hint\":\"다이나믹 어텐션 슬라이싱 비율 (GB 단위)\"},{\"id\":\"\",\"label\":\"dynamic attention trigger rate in gb\",\"localized\":\"다이나믹 어텐션 트리거 비율 (GB 단위)\",\"hint\":\"다이나믹 어텐션 트리거 비율 (GB 단위)\"},{\"id\":\"\",\"label\":\"expandable segments\",\"localized\":\"\",\"hint\":\"expandable segments\"},{\"id\":\"\",\"label\":\"false\",\"localized\":\"비활성화\",\"hint\":\"비활성화\"},{\"id\":\"\",\"label\":\"first-block cache enabled\",\"localized\":\"First-block 캐시 활성화\",\"hint\":\"First-block 캐시 활성화\"},{\"id\":\"\",\"label\":\"flash attention\",\"localized\":\"\",\"hint\":\"flash attention\"},{\"id\":\"\",\"label\":\"folder for onnx conversion\",\"localized\":\"ONNX 변환을 위한 임시 폴더\",\"hint\":\"ONNX 변환을 위한 임시 폴더\"},{\"id\":\"\",\"label\":\"full vae\",\"localized\":\"VAE\",\"hint\":\"근사를 사용하지 않고 VAE를 사용합니다.\"},{\"id\":\"\",\"label\":\"full-depth cudnn benchmark\",\"localized\":\"Full-depth cuDNN 벤치마크\",\"hint\":\"Full-depth cuDNN 벤치마크\"},{\"id\":\"\",\"label\":\"fused projections\",\"localized\":\"\",\"hint\":\"fused projections\"},{\"id\":\"\",\"label\":\"gc threshold\",\"localized\":\"가비지 컬렉션 임계값\",\"hint\":\"가비지 컬렉션 임계값\"},{\"id\":\"\",\"label\":\"get changelog\",\"localized\":\"체인지로그 가져오기\",\"hint\":\"체인지로그 가져오기\"},{\"id\":\"\",\"label\":\"hide the custom checkpoint dropdown\",\"localized\":\"커스텀 모델 드롭다운 숨기기\",\"hint\":\"커스텀 모델 드롭다운 숨기기\"},{\"id\":\"\",\"label\":\"hidet\",\"localized\":\"\",\"hint\":\"hidet\"},{\"id\":\"\",\"label\":\"inductor\",\"localized\":\"\",\"hint\":\"inductor\"},{\"id\":\"\",\"label\":\"layerwise casting storage\",\"localized\":\"Layerwise casting 스토리지 타입\",\"hint\":\"Layerwise casting 스토리지 타입\"},{\"id\":\"\",\"label\":\"layerwise non-blocking operations\",\"localized\":\"Layerwise 작업 블로킹 안 함\",\"hint\":\"Layerwise 작업 블로킹 안 함\"},{\"id\":\"\",\"label\":\"ldsr processing steps\",\"localized\":\"LDSR 처리 스탭 수\",\"hint\":\"LDSR 처리 스탭 수\"},{\"id\":\"\",\"label\":\"load model directly to gpu\",\"localized\":\"모델을 GPU로 직접 로드\",\"hint\":\"모델을 GPU로 바로 로드합니다.\"},{\"id\":\"\",\"label\":\"low order\",\"localized\":\"\",\"hint\":\"low order\"},{\"id\":\"\",\"label\":\"math attention\",\"localized\":\"\",\"hint\":\"math attention\"},{\"id\":\"\",\"label\":\"max-autotune\",\"localized\":\"\",\"hint\":\"max-autotune\"},{\"id\":\"\",\"label\":\"max-autotune-no-cudagraphs\",\"localized\":\"\",\"hint\":\"max-autotune-no-cudagraphs\"},{\"id\":\"\",\"label\":\"memory attention\",\"localized\":\"\",\"hint\":\"memory attention\"},{\"id\":\"\",\"label\":\"migraphx\",\"localized\":\"\",\"hint\":\"MIGraphX\"},{\"id\":\"\",\"label\":\"model auto-download on demand\",\"localized\":\"필요한 경우 모델 자동 다운로드\",\"hint\":\"필요한 경우 모델을 자동으로 다운로드합니다.\"},{\"id\":\"\",\"label\":\"model autoload on start\",\"localized\":\"시작 시 모델 자동 로드\",\"hint\":\"시작 시 모델을 자동으로 로드합니다.\"},{\"id\":\"\",\"label\":\"model compile fullgraph\",\"localized\":\"모델 컴파일 fullgraph\",\"hint\":\"모델 컴파일 fullgraph\"},{\"id\":\"\",\"label\":\"model compile suppress errors\",\"localized\":\"모델 컴파일 오류 숨기기\",\"hint\":\"모델 컴파일 오류를 숨깁니다.\"},{\"id\":\"\",\"label\":\"modern\",\"localized\":\"모던\",\"hint\":\"모던\"},{\"id\":\"\",\"label\":\"native\",\"localized\":\"기본\",\"hint\":\"기본\"},{\"id\":\"\",\"label\":\"noise multiplier (eta)\",\"localized\":\"노이즈 배수 (eta)\",\"hint\":\"노이즈 배수 (eta)\"},{\"id\":\"\",\"label\":\"noise multiplier for image processing\",\"localized\":\"이미지 처리를 위한 노이즈 배수\",\"hint\":\"이미지 처리를 위한 노이즈 배수\"},{\"id\":\"\",\"label\":\"noise seed delta (eta)\",\"localized\":\"\",\"hint\":\"noise seed delta (eta)\"},{\"id\":\"\",\"label\":\"override t1 ratio\",\"localized\":\"\",\"hint\":\"override t1 ratio\"},{\"id\":\"\",\"label\":\"override t2 ratio\",\"localized\":\"\",\"hint\":\"override t1 ratio\"},{\"id\":\"\",\"label\":\"parallel process images in batch\",\"localized\":\"이미지 병렬 처리\",\"hint\":\"이미지를 배치에서 병렬 처리합니다.\"},{\"id\":\"\",\"label\":\"prediction method\",\"localized\":\"Prediction 종류\",\"hint\":\"Prediction 모델을 사용하는 경우 Prediction 종류를 올바른 값으로 변경해야 합니다.\"},{\"id\":\"\",\"label\":\"quantization activations type\",\"localized\":\"양자화 Activation 데이터 타입\",\"hint\":\"양자화 Activation 데이터 타입\"},{\"id\":\"\",\"label\":\"quantization type\",\"localized\":\"양자화 데이터 타입\",\"hint\":\"양자화 데이터 타입\"},{\"id\":\"\",\"label\":\"quantization weights type\",\"localized\":\"양자화 데이터 타입\",\"hint\":\"양자화 데이터 타입\"},{\"id\":\"\",\"label\":\"reduce-overhead\",\"localized\":\"\",\"hint\":\"reduce-overhead\"},{\"id\":\"\",\"label\":\"rescale\",\"localized\":\"\",\"hint\":\"rescale\"},{\"id\":\"\",\"label\":\"residual diff threshold\",\"localized\":\"\",\"hint\":\"residual diff threshold\"},{\"id\":\"\",\"label\":\"sage attention\",\"localized\":\"\",\"hint\":\"sage attention\"},{\"id\":\"\",\"label\":\"search changelog\",\"localized\":\"체인지로그 검색\",\"hint\":\"체인지로그 검색\"},{\"id\":\"\",\"label\":\"sharpen\",\"localized\":\"선명도\",\"hint\":\"선명도\"},{\"id\":\"\",\"label\":\"shift\",\"localized\":\"\",\"hint\":\"Shift\"},{\"id\":\"\",\"label\":\"shuffle weights\",\"localized\":\"가중치 셔플\",\"hint\":\"가중치 셔플\"},{\"id\":\"\",\"label\":\"sigma max\",\"localized\":\"시그마 최댓값\",\"hint\":\"시그마 최댓값\"},{\"id\":\"\",\"label\":\"sigma min\",\"localized\":\"시그마 최솟값\",\"hint\":\"시그마 최솟값\"},{\"id\":\"\",\"label\":\"skip generation if nan found in latents\",\"localized\":\"생성 중 NaN이 발견되면 건너뛰기\",\"hint\":\"생성 중 NaN이 발견되면 진행 중인 작업을 건너뜁니다.\"},{\"id\":\"\",\"label\":\"skip guidance layers\",\"localized\":\"가이던스 레이어 건너뛰기\",\"hint\":\"가이던스 레이어 건너뛰기\"},{\"id\":\"\",\"label\":\"split attention\",\"localized\":\"\",\"hint\":\"split attention\"},{\"id\":\"\",\"label\":\"taesd\",\"localized\":\"\",\"hint\":\"taesd\"},{\"id\":\"\",\"label\":\"taesd decode layers\",\"localized\":\"TAESD 디코드 레이어\",\"hint\":\"TAESD 디코드 레이어\"},{\"id\":\"\",\"label\":\"taesd variant\",\"localized\":\"TAESD 변형\",\"hint\":\"TAESD 변형\"},{\"id\":\"\",\"label\":\"task list page size (0 for auto)\",\"localized\":\"작업 목록 페이지 크기\",\"hint\":\"작업 목록 페이지 크기. 0으로 설정하면 자동으로 결정합니다.\"},{\"id\":\"\",\"label\":\"thresholding\",\"localized\":\"\",\"hint\":\"thresholding\"},{\"id\":\"\",\"label\":\"timestep\",\"localized\":\"타임스탭\",\"hint\":\"타임스탭\"},{\"id\":\"\",\"label\":\"timestep skip end\",\"localized\":\"타임스탭 스킵 끝\",\"hint\":\"타임스탭 스킵 끝\"},{\"id\":\"\",\"label\":\"timestep skip start\",\"localized\":\"타임스탭 스킵 시작\",\"hint\":\"타임스탭 스킵 시작\"},{\"id\":\"\",\"label\":\"timestep spacing\",\"localized\":\"타임스탭 간격\",\"hint\":\"타임스탭 간격\"},{\"id\":\"\",\"label\":\"timesteps\",\"localized\":\"타임스탭 수\",\"hint\":\"타임스탭 수\"},{\"id\":\"\",\"label\":\"timesteps override\",\"localized\":\"타임스탭 수 덮어쓰기\",\"hint\":\"타임스탭 수 덮어쓰기\"},{\"id\":\"\",\"label\":\"timesteps presets\",\"localized\":\"타임스탭 수 프리셋\",\"hint\":\"타임스탭 수 프리셋\"},{\"id\":\"\",\"label\":\"timesteps range\",\"localized\":\"타임스탭 수 범위\",\"hint\":\"타임스탭 수 범위\"},{\"id\":\"\",\"label\":\"todo\",\"localized\":\"ToDo\",\"hint\":\"ToDo\"},{\"id\":\"\",\"label\":\"tome\",\"localized\":\"ToMe\",\"hint\":\"Token Merging\"},{\"id\":\"\",\"label\":\"true\",\"localized\":\"활성화\",\"hint\":\"활성화\"},{\"id\":\"\",\"label\":\"tunable ops limit\",\"localized\":\"Tunable ops 제한\",\"hint\":\"Tunable ops 제한\"},{\"id\":\"\",\"label\":\"unet\",\"localized\":\"UNet\",\"hint\":\"UNet\"},{\"id\":\"\",\"label\":\"unet depth\",\"localized\":\"UNet 깊이\",\"hint\":\"UNet 깊이\"},{\"id\":\"\",\"label\":\"unet enabled\",\"localized\":\"UNet에 적용\",\"hint\":\"UNet에 HyperTile 적용\"},{\"id\":\"\",\"label\":\"unet max tile size\",\"localized\":\"UNet 최대 타일 크기\",\"hint\":\"UNet 최대 타일 크기\"},{\"id\":\"\",\"label\":\"unet min tile size\",\"localized\":\"UNet 최소 타일 크기\",\"hint\":\"UNet 최소 타일 크기\"},{\"id\":\"\",\"label\":\"unet model\",\"localized\":\"UNet 모델\",\"hint\":\"UNet 모델\"},{\"id\":\"\",\"label\":\"unet swap size\",\"localized\":\"UNet 스왑 크기\",\"hint\":\"UNet 스왑 크기\"},{\"id\":\"\",\"label\":\"unset\",\"localized\":\"기본값\",\"hint\":\"기본값\"},{\"id\":\"\",\"label\":\"use separate base dict\",\"localized\":\"별도의 모델 딕셔너리 사용\",\"hint\":\"별도의 모델 딕셔너리를 사용합니다.\"},{\"id\":\"\",\"label\":\"vae enabled\",\"localized\":\"VAE에 적용\",\"hint\":\"VAE에 HyperTile 적용\"},{\"id\":\"\",\"label\":\"visual query\",\"localized\":\"비주얼 쿼리\",\"hint\":\"비주얼 쿼리\"},{\"id\":\"\",\"label\":\"weighted\",\"localized\":\"가중치 적용\",\"hint\":\"가중치 적용\"}]\n"
  },
  {
    "path": "html/swagger.css",
    "content": "html {\n  background-color: #aaa;\n}\n\n.swagger-ui {\n    color: #3b4151;\n    font-family: system-ui, sans-serif;\n}\n\n.swagger-ui body {\n    margin: 0;\n}\n\n.swagger-ui article,.swagger-ui aside,.swagger-ui footer,.swagger-ui header,.swagger-ui nav,.swagger-ui section {\n    display: block\n}\n\n.swagger-ui h1 {\n    font-size: 2em;\n    margin: .67em 0\n}\n\n.swagger-ui figcaption,.swagger-ui figure,.swagger-ui main {\n    display: block\n}\n\n.swagger-ui figure {\n    margin: 1em 40px\n}\n\n.swagger-ui hr {\n    box-sizing: content-box;\n    height: 0;\n    overflow: visible\n}\n\n.swagger-ui pre {\n    font-family: monospace,monospace;\n    font-size: 1em\n}\n\n.swagger-ui a {\n    background-color: transparent;\n    -webkit-text-decoration-skip: objects\n}\n\n.swagger-ui abbr[title] {\n    text-decoration: underline;\n    -webkit-text-decoration: underline dotted;\n    text-decoration: underline dotted\n}\n\n.swagger-ui b,.swagger-ui strong {\n    font-weight: inherit;\n    font-weight: bolder\n}\n\n.swagger-ui code,.swagger-ui kbd,.swagger-ui samp {\n    font-family: monospace,monospace;\n    font-size: 1em\n}\n\n.swagger-ui dfn {\n    font-style: italic\n}\n\n.swagger-ui mark {\n    background-color: #ff0;\n    color: #000\n}\n\n.swagger-ui small {\n    font-size: 80%\n}\n\n.swagger-ui sub,.swagger-ui sup {\n    font-size: 75%;\n    line-height: 0;\n    position: relative;\n    vertical-align: baseline\n}\n\n.swagger-ui sub {\n    bottom: -.25em\n}\n\n.swagger-ui sup {\n    top: -.5em\n}\n\n.swagger-ui audio,.swagger-ui video {\n    display: inline-block\n}\n\n.swagger-ui audio:not([controls]) {\n    display: none;\n    height: 0\n}\n\n.swagger-ui svg:not(:root) {\n    overflow: hidden\n}\n\n.swagger-ui button,.swagger-ui input,.swagger-ui optgroup,.swagger-ui select,.swagger-ui textarea {\n    font-family: sans-serif;\n    font-size: 100%;\n    line-height: 1.15;\n    margin: 0\n}\n\n.swagger-ui button,.swagger-ui input {\n    overflow: visible\n}\n\n.swagger-ui button,.swagger-ui select {\n    text-transform: none\n}\n\n.swagger-ui [type=reset],.swagger-ui [type=submit],.swagger-ui button,.swagger-ui html [type=button] {\n    -webkit-appearance: button\n}\n\n.swagger-ui [type=button]::-moz-focus-inner,.swagger-ui [type=reset]::-moz-focus-inner,.swagger-ui [type=submit]::-moz-focus-inner,.swagger-ui button::-moz-focus-inner {\n    padding: 0\n}\n\n.swagger-ui [type=button]:-moz-focusring,.swagger-ui [type=reset]:-moz-focusring,.swagger-ui [type=submit]:-moz-focusring,.swagger-ui button:-moz-focusring {\n    outline: 1px dotted ButtonText\n}\n\n.swagger-ui fieldset {\n    padding: .35em .75em .625em\n}\n\n.swagger-ui legend {\n    box-sizing: border-box;\n    color: inherit;\n    display: table;\n    max-width: 100%;\n    padding: 0;\n    white-space: normal\n}\n\n.swagger-ui progress {\n    display: inline-block;\n    vertical-align: baseline\n}\n\n.swagger-ui textarea {\n    overflow: auto\n}\n\n.swagger-ui [type=checkbox],.swagger-ui [type=radio] {\n    box-sizing: border-box;\n    padding: 0\n}\n\n.swagger-ui [type=number]::-webkit-inner-spin-button,.swagger-ui [type=number]::-webkit-outer-spin-button {\n    height: auto\n}\n\n.swagger-ui [type=search] {\n    -webkit-appearance: textfield;\n    outline-offset: -2px\n}\n\n.swagger-ui [type=search]::-webkit-search-cancel-button,.swagger-ui [type=search]::-webkit-search-decoration {\n    -webkit-appearance: none\n}\n\n.swagger-ui ::-webkit-file-upload-button {\n    -webkit-appearance: button;\n    font: inherit\n}\n\n.swagger-ui details,.swagger-ui menu {\n    display: block\n}\n\n.swagger-ui summary {\n    display: list-item\n}\n\n.swagger-ui canvas {\n    display: inline-block\n}\n\n.swagger-ui [hidden],.swagger-ui template {\n    display: none\n}\n\n.swagger-ui .debug * {\n    outline: 1px solid gold\n}\n\n.swagger-ui .debug-white * {\n    outline: 1px solid #fff\n}\n\n.swagger-ui .debug-black * {\n    outline: 1px solid #000\n}\n\n.swagger-ui .debug-grid {\n    background: transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTExIDc5LjE1ODMyNSwgMjAxNS8wOS8xMC0wMToxMDoyMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MTRDOTY4N0U2N0VFMTFFNjg2MzZDQjkwNkQ4MjgwMEIiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MTRDOTY4N0Q2N0VFMTFFNjg2MzZDQjkwNkQ4MjgwMEIiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo3NjcyQkQ3NjY3QzUxMUU2QjJCQ0UyNDA4MTAwMjE3MSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo3NjcyQkQ3NzY3QzUxMUU2QjJCQ0UyNDA4MTAwMjE3MSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PsBS+GMAAAAjSURBVHjaYvz//z8DLsD4gcGXiYEAGBIKGBne//fFpwAgwAB98AaF2pjlUQAAAABJRU5ErkJggg==) repeat 0 0\n}\n\n.swagger-ui .debug-grid-16 {\n    background: transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTExIDc5LjE1ODMyNSwgMjAxNS8wOS8xMC0wMToxMDoyMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6ODYyRjhERDU2N0YyMTFFNjg2MzZDQjkwNkQ4MjgwMEIiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6ODYyRjhERDQ2N0YyMTFFNjg2MzZDQjkwNkQ4MjgwMEIiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo3NjcyQkQ3QTY3QzUxMUU2QjJCQ0UyNDA4MTAwMjE3MSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo3NjcyQkQ3QjY3QzUxMUU2QjJCQ0UyNDA4MTAwMjE3MSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PvCS01IAAABMSURBVHjaYmR4/5+BFPBfAMFm/MBgx8RAGWCn1AAmSg34Q6kBDKMGMDCwICeMIemF/5QawEipAWwUhwEjMDvbAWlWkvVBwu8vQIABAEwBCph8U6c0AAAAAElFTkSuQmCC) repeat 0 0\n}\n\n.swagger-ui .debug-grid-8-solid {\n    background: #fff url(data:image/jpeg;base64,/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAAAAAAD/4QMxaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjYtYzExMSA3OS4xNTgzMjUsIDIwMTUvMDkvMTAtMDE6MTA6MjAgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE1IChNYWNpbnRvc2gpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkIxMjI0OTczNjdCMzExRTZCMkJDRTI0MDgxMDAyMTcxIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkIxMjI0OTc0NjdCMzExRTZCMkJDRTI0MDgxMDAyMTcxIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QjEyMjQ5NzE2N0IzMTFFNkIyQkNFMjQwODEwMDIxNzEiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6QjEyMjQ5NzI2N0IzMTFFNkIyQkNFMjQwODEwMDIxNzEiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7/7gAOQWRvYmUAZMAAAAAB/9sAhAAbGhopHSlBJiZBQi8vL0JHPz4+P0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHAR0pKTQmND8oKD9HPzU/R0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0f/wAARCAAIAAgDASIAAhEBAxEB/8QAWQABAQAAAAAAAAAAAAAAAAAAAAYBAQEAAAAAAAAAAAAAAAAAAAIEEAEBAAMBAAAAAAAAAAAAAAABADECA0ERAAEDBQAAAAAAAAAAAAAAAAARITFBUWESIv/aAAwDAQACEQMRAD8AoOnTV1QTD7JJshP3vSM3P//Z) repeat 0 0\n}\n\n.swagger-ui .debug-grid-16-solid {\n    background: #fff url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTExIDc5LjE1ODMyNSwgMjAxNS8wOS8xMC0wMToxMDoyMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NzY3MkJEN0U2N0M1MTFFNkIyQkNFMjQwODEwMDIxNzEiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NzY3MkJEN0Y2N0M1MTFFNkIyQkNFMjQwODEwMDIxNzEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo3NjcyQkQ3QzY3QzUxMUU2QjJCQ0UyNDA4MTAwMjE3MSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo3NjcyQkQ3RDY3QzUxMUU2QjJCQ0UyNDA4MTAwMjE3MSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pve6J3kAAAAzSURBVHjaYvz//z8D0UDsMwMjSRoYP5Gq4SPNbRjVMEQ1fCRDg+in/6+J1AJUxsgAEGAA31BAJMS0GYEAAAAASUVORK5CYII=) repeat 0 0\n}\n\n.swagger-ui .border-box,.swagger-ui a,.swagger-ui article,.swagger-ui body,.swagger-ui code,.swagger-ui dd,.swagger-ui div,.swagger-ui dl,.swagger-ui dt,.swagger-ui fieldset,.swagger-ui footer,.swagger-ui form,.swagger-ui h1,.swagger-ui h2,.swagger-ui h3,.swagger-ui h4,.swagger-ui h5,.swagger-ui h6,.swagger-ui header,.swagger-ui html,.swagger-ui input[type=email],.swagger-ui input[type=number],.swagger-ui input[type=password],.swagger-ui input[type=tel],.swagger-ui input[type=text],.swagger-ui input[type=url],.swagger-ui legend,.swagger-ui li,.swagger-ui main,.swagger-ui ol,.swagger-ui p,.swagger-ui pre,.swagger-ui section,.swagger-ui table,.swagger-ui td,.swagger-ui textarea,.swagger-ui th,.swagger-ui tr,.swagger-ui ul {\n    box-sizing: border-box\n}\n\n.swagger-ui .aspect-ratio {\n    height: 0;\n    position: relative\n}\n\n.swagger-ui .aspect-ratio--16x9 {\n    padding-bottom: 56.25%\n}\n\n.swagger-ui .aspect-ratio--9x16 {\n    padding-bottom: 177.77%\n}\n\n.swagger-ui .aspect-ratio--4x3 {\n    padding-bottom: 75%\n}\n\n.swagger-ui .aspect-ratio--3x4 {\n    padding-bottom: 133.33%\n}\n\n.swagger-ui .aspect-ratio--6x4 {\n    padding-bottom: 66.6%\n}\n\n.swagger-ui .aspect-ratio--4x6 {\n    padding-bottom: 150%\n}\n\n.swagger-ui .aspect-ratio--8x5 {\n    padding-bottom: 62.5%\n}\n\n.swagger-ui .aspect-ratio--5x8 {\n    padding-bottom: 160%\n}\n\n.swagger-ui .aspect-ratio--7x5 {\n    padding-bottom: 71.42%\n}\n\n.swagger-ui .aspect-ratio--5x7 {\n    padding-bottom: 140%\n}\n\n.swagger-ui .aspect-ratio--1x1 {\n    padding-bottom: 100%\n}\n\n.swagger-ui .aspect-ratio--object {\n    bottom: 0;\n    height: 100%;\n    left: 0;\n    position: absolute;\n    right: 0;\n    top: 0;\n    width: 100%;\n    z-index: 100\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .aspect-ratio-ns {\n        height:0;\n        position: relative\n    }\n\n    .swagger-ui .aspect-ratio--16x9-ns {\n        padding-bottom: 56.25%\n    }\n\n    .swagger-ui .aspect-ratio--9x16-ns {\n        padding-bottom: 177.77%\n    }\n\n    .swagger-ui .aspect-ratio--4x3-ns {\n        padding-bottom: 75%\n    }\n\n    .swagger-ui .aspect-ratio--3x4-ns {\n        padding-bottom: 133.33%\n    }\n\n    .swagger-ui .aspect-ratio--6x4-ns {\n        padding-bottom: 66.6%\n    }\n\n    .swagger-ui .aspect-ratio--4x6-ns {\n        padding-bottom: 150%\n    }\n\n    .swagger-ui .aspect-ratio--8x5-ns {\n        padding-bottom: 62.5%\n    }\n\n    .swagger-ui .aspect-ratio--5x8-ns {\n        padding-bottom: 160%\n    }\n\n    .swagger-ui .aspect-ratio--7x5-ns {\n        padding-bottom: 71.42%\n    }\n\n    .swagger-ui .aspect-ratio--5x7-ns {\n        padding-bottom: 140%\n    }\n\n    .swagger-ui .aspect-ratio--1x1-ns {\n        padding-bottom: 100%\n    }\n\n    .swagger-ui .aspect-ratio--object-ns {\n        bottom: 0;\n        height: 100%;\n        left: 0;\n        position: absolute;\n        right: 0;\n        top: 0;\n        width: 100%;\n        z-index: 100\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .aspect-ratio-m {\n        height:0;\n        position: relative\n    }\n\n    .swagger-ui .aspect-ratio--16x9-m {\n        padding-bottom: 56.25%\n    }\n\n    .swagger-ui .aspect-ratio--9x16-m {\n        padding-bottom: 177.77%\n    }\n\n    .swagger-ui .aspect-ratio--4x3-m {\n        padding-bottom: 75%\n    }\n\n    .swagger-ui .aspect-ratio--3x4-m {\n        padding-bottom: 133.33%\n    }\n\n    .swagger-ui .aspect-ratio--6x4-m {\n        padding-bottom: 66.6%\n    }\n\n    .swagger-ui .aspect-ratio--4x6-m {\n        padding-bottom: 150%\n    }\n\n    .swagger-ui .aspect-ratio--8x5-m {\n        padding-bottom: 62.5%\n    }\n\n    .swagger-ui .aspect-ratio--5x8-m {\n        padding-bottom: 160%\n    }\n\n    .swagger-ui .aspect-ratio--7x5-m {\n        padding-bottom: 71.42%\n    }\n\n    .swagger-ui .aspect-ratio--5x7-m {\n        padding-bottom: 140%\n    }\n\n    .swagger-ui .aspect-ratio--1x1-m {\n        padding-bottom: 100%\n    }\n\n    .swagger-ui .aspect-ratio--object-m {\n        bottom: 0;\n        height: 100%;\n        left: 0;\n        position: absolute;\n        right: 0;\n        top: 0;\n        width: 100%;\n        z-index: 100\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .aspect-ratio-l {\n        height:0;\n        position: relative\n    }\n\n    .swagger-ui .aspect-ratio--16x9-l {\n        padding-bottom: 56.25%\n    }\n\n    .swagger-ui .aspect-ratio--9x16-l {\n        padding-bottom: 177.77%\n    }\n\n    .swagger-ui .aspect-ratio--4x3-l {\n        padding-bottom: 75%\n    }\n\n    .swagger-ui .aspect-ratio--3x4-l {\n        padding-bottom: 133.33%\n    }\n\n    .swagger-ui .aspect-ratio--6x4-l {\n        padding-bottom: 66.6%\n    }\n\n    .swagger-ui .aspect-ratio--4x6-l {\n        padding-bottom: 150%\n    }\n\n    .swagger-ui .aspect-ratio--8x5-l {\n        padding-bottom: 62.5%\n    }\n\n    .swagger-ui .aspect-ratio--5x8-l {\n        padding-bottom: 160%\n    }\n\n    .swagger-ui .aspect-ratio--7x5-l {\n        padding-bottom: 71.42%\n    }\n\n    .swagger-ui .aspect-ratio--5x7-l {\n        padding-bottom: 140%\n    }\n\n    .swagger-ui .aspect-ratio--1x1-l {\n        padding-bottom: 100%\n    }\n\n    .swagger-ui .aspect-ratio--object-l {\n        bottom: 0;\n        height: 100%;\n        left: 0;\n        position: absolute;\n        right: 0;\n        top: 0;\n        width: 100%;\n        z-index: 100\n    }\n}\n\n.swagger-ui img {\n    max-width: 100%\n}\n\n.swagger-ui .cover {\n    background-size: cover!important\n}\n\n.swagger-ui .contain {\n    background-size: contain!important\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .cover-ns {\n        background-size:cover!important\n    }\n\n    .swagger-ui .contain-ns {\n        background-size: contain!important\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .cover-m {\n        background-size:cover!important\n    }\n\n    .swagger-ui .contain-m {\n        background-size: contain!important\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .cover-l {\n        background-size:cover!important\n    }\n\n    .swagger-ui .contain-l {\n        background-size: contain!important\n    }\n}\n\n.swagger-ui .bg-center {\n    background-position: 50%;\n    background-repeat: no-repeat\n}\n\n.swagger-ui .bg-top {\n    background-position: top;\n    background-repeat: no-repeat\n}\n\n.swagger-ui .bg-right {\n    background-position: 100%;\n    background-repeat: no-repeat\n}\n\n.swagger-ui .bg-bottom {\n    background-position: bottom;\n    background-repeat: no-repeat\n}\n\n.swagger-ui .bg-left {\n    background-position: 0;\n    background-repeat: no-repeat\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .bg-center-ns {\n        background-position:50%;\n        background-repeat: no-repeat\n    }\n\n    .swagger-ui .bg-top-ns {\n        background-position: top;\n        background-repeat: no-repeat\n    }\n\n    .swagger-ui .bg-right-ns {\n        background-position: 100%;\n        background-repeat: no-repeat\n    }\n\n    .swagger-ui .bg-bottom-ns {\n        background-position: bottom;\n        background-repeat: no-repeat\n    }\n\n    .swagger-ui .bg-left-ns {\n        background-position: 0;\n        background-repeat: no-repeat\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .bg-center-m {\n        background-position:50%;\n        background-repeat: no-repeat\n    }\n\n    .swagger-ui .bg-top-m {\n        background-position: top;\n        background-repeat: no-repeat\n    }\n\n    .swagger-ui .bg-right-m {\n        background-position: 100%;\n        background-repeat: no-repeat\n    }\n\n    .swagger-ui .bg-bottom-m {\n        background-position: bottom;\n        background-repeat: no-repeat\n    }\n\n    .swagger-ui .bg-left-m {\n        background-position: 0;\n        background-repeat: no-repeat\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .bg-center-l {\n        background-position:50%;\n        background-repeat: no-repeat\n    }\n\n    .swagger-ui .bg-top-l {\n        background-position: top;\n        background-repeat: no-repeat\n    }\n\n    .swagger-ui .bg-right-l {\n        background-position: 100%;\n        background-repeat: no-repeat\n    }\n\n    .swagger-ui .bg-bottom-l {\n        background-position: bottom;\n        background-repeat: no-repeat\n    }\n\n    .swagger-ui .bg-left-l {\n        background-position: 0;\n        background-repeat: no-repeat\n    }\n}\n\n.swagger-ui .pre {\n    overflow-x: auto;\n    overflow-y: hidden;\n    overflow: scroll\n}\n\n.swagger-ui .top-0 {\n    top: 0\n}\n\n.swagger-ui .right-0 {\n    right: 0\n}\n\n.swagger-ui .bottom-0 {\n    bottom: 0\n}\n\n.swagger-ui .left-0 {\n    left: 0\n}\n\n.swagger-ui .top-1 {\n    top: 1rem\n}\n\n.swagger-ui .right-1 {\n    right: 1rem\n}\n\n.swagger-ui .bottom-1 {\n    bottom: 1rem\n}\n\n.swagger-ui .left-1 {\n    left: 1rem\n}\n\n.swagger-ui .top-2 {\n    top: 2rem\n}\n\n.swagger-ui .right-2 {\n    right: 2rem\n}\n\n.swagger-ui .bottom-2 {\n    bottom: 2rem\n}\n\n.swagger-ui .left-2 {\n    left: 2rem\n}\n\n.swagger-ui .top--1 {\n    top: -1rem\n}\n\n.swagger-ui .right--1 {\n    right: -1rem\n}\n\n.swagger-ui .bottom--1 {\n    bottom: -1rem\n}\n\n.swagger-ui .left--1 {\n    left: -1rem\n}\n\n.swagger-ui .top--2 {\n    top: -2rem\n}\n\n.swagger-ui .right--2 {\n    right: -2rem\n}\n\n.swagger-ui .bottom--2 {\n    bottom: -2rem\n}\n\n.swagger-ui .left--2 {\n    left: -2rem\n}\n\n.swagger-ui .absolute--fill {\n    bottom: 0;\n    left: 0;\n    right: 0;\n    top: 0\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .top-0-ns {\n        top:0\n    }\n\n    .swagger-ui .left-0-ns {\n        left: 0\n    }\n\n    .swagger-ui .right-0-ns {\n        right: 0\n    }\n\n    .swagger-ui .bottom-0-ns {\n        bottom: 0\n    }\n\n    .swagger-ui .top-1-ns {\n        top: 1rem\n    }\n\n    .swagger-ui .left-1-ns {\n        left: 1rem\n    }\n\n    .swagger-ui .right-1-ns {\n        right: 1rem\n    }\n\n    .swagger-ui .bottom-1-ns {\n        bottom: 1rem\n    }\n\n    .swagger-ui .top-2-ns {\n        top: 2rem\n    }\n\n    .swagger-ui .left-2-ns {\n        left: 2rem\n    }\n\n    .swagger-ui .right-2-ns {\n        right: 2rem\n    }\n\n    .swagger-ui .bottom-2-ns {\n        bottom: 2rem\n    }\n\n    .swagger-ui .top--1-ns {\n        top: -1rem\n    }\n\n    .swagger-ui .right--1-ns {\n        right: -1rem\n    }\n\n    .swagger-ui .bottom--1-ns {\n        bottom: -1rem\n    }\n\n    .swagger-ui .left--1-ns {\n        left: -1rem\n    }\n\n    .swagger-ui .top--2-ns {\n        top: -2rem\n    }\n\n    .swagger-ui .right--2-ns {\n        right: -2rem\n    }\n\n    .swagger-ui .bottom--2-ns {\n        bottom: -2rem\n    }\n\n    .swagger-ui .left--2-ns {\n        left: -2rem\n    }\n\n    .swagger-ui .absolute--fill-ns {\n        bottom: 0;\n        left: 0;\n        right: 0;\n        top: 0\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .top-0-m {\n        top:0\n    }\n\n    .swagger-ui .left-0-m {\n        left: 0\n    }\n\n    .swagger-ui .right-0-m {\n        right: 0\n    }\n\n    .swagger-ui .bottom-0-m {\n        bottom: 0\n    }\n\n    .swagger-ui .top-1-m {\n        top: 1rem\n    }\n\n    .swagger-ui .left-1-m {\n        left: 1rem\n    }\n\n    .swagger-ui .right-1-m {\n        right: 1rem\n    }\n\n    .swagger-ui .bottom-1-m {\n        bottom: 1rem\n    }\n\n    .swagger-ui .top-2-m {\n        top: 2rem\n    }\n\n    .swagger-ui .left-2-m {\n        left: 2rem\n    }\n\n    .swagger-ui .right-2-m {\n        right: 2rem\n    }\n\n    .swagger-ui .bottom-2-m {\n        bottom: 2rem\n    }\n\n    .swagger-ui .top--1-m {\n        top: -1rem\n    }\n\n    .swagger-ui .right--1-m {\n        right: -1rem\n    }\n\n    .swagger-ui .bottom--1-m {\n        bottom: -1rem\n    }\n\n    .swagger-ui .left--1-m {\n        left: -1rem\n    }\n\n    .swagger-ui .top--2-m {\n        top: -2rem\n    }\n\n    .swagger-ui .right--2-m {\n        right: -2rem\n    }\n\n    .swagger-ui .bottom--2-m {\n        bottom: -2rem\n    }\n\n    .swagger-ui .left--2-m {\n        left: -2rem\n    }\n\n    .swagger-ui .absolute--fill-m {\n        bottom: 0;\n        left: 0;\n        right: 0;\n        top: 0\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .top-0-l {\n        top:0\n    }\n\n    .swagger-ui .left-0-l {\n        left: 0\n    }\n\n    .swagger-ui .right-0-l {\n        right: 0\n    }\n\n    .swagger-ui .bottom-0-l {\n        bottom: 0\n    }\n\n    .swagger-ui .top-1-l {\n        top: 1rem\n    }\n\n    .swagger-ui .left-1-l {\n        left: 1rem\n    }\n\n    .swagger-ui .right-1-l {\n        right: 1rem\n    }\n\n    .swagger-ui .bottom-1-l {\n        bottom: 1rem\n    }\n\n    .swagger-ui .top-2-l {\n        top: 2rem\n    }\n\n    .swagger-ui .left-2-l {\n        left: 2rem\n    }\n\n    .swagger-ui .right-2-l {\n        right: 2rem\n    }\n\n    .swagger-ui .bottom-2-l {\n        bottom: 2rem\n    }\n\n    .swagger-ui .top--1-l {\n        top: -1rem\n    }\n\n    .swagger-ui .right--1-l {\n        right: -1rem\n    }\n\n    .swagger-ui .bottom--1-l {\n        bottom: -1rem\n    }\n\n    .swagger-ui .left--1-l {\n        left: -1rem\n    }\n\n    .swagger-ui .top--2-l {\n        top: -2rem\n    }\n\n    .swagger-ui .right--2-l {\n        right: -2rem\n    }\n\n    .swagger-ui .bottom--2-l {\n        bottom: -2rem\n    }\n\n    .swagger-ui .left--2-l {\n        left: -2rem\n    }\n\n    .swagger-ui .absolute--fill-l {\n        bottom: 0;\n        left: 0;\n        right: 0;\n        top: 0\n    }\n}\n\n.swagger-ui .cf:after,.swagger-ui .cf:before {\n    content: \" \";\n    display: table\n}\n\n.swagger-ui .cf:after {\n    clear: both\n}\n\n.swagger-ui .cf {\n    zoom:1}\n\n.swagger-ui .cl {\n    clear: left\n}\n\n.swagger-ui .cr {\n    clear: right\n}\n\n.swagger-ui .cb {\n    clear: both\n}\n\n.swagger-ui .cn {\n    clear: none\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .cl-ns {\n        clear:left\n    }\n\n    .swagger-ui .cr-ns {\n        clear: right\n    }\n\n    .swagger-ui .cb-ns {\n        clear: both\n    }\n\n    .swagger-ui .cn-ns {\n        clear: none\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .cl-m {\n        clear:left\n    }\n\n    .swagger-ui .cr-m {\n        clear: right\n    }\n\n    .swagger-ui .cb-m {\n        clear: both\n    }\n\n    .swagger-ui .cn-m {\n        clear: none\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .cl-l {\n        clear:left\n    }\n\n    .swagger-ui .cr-l {\n        clear: right\n    }\n\n    .swagger-ui .cb-l {\n        clear: both\n    }\n\n    .swagger-ui .cn-l {\n        clear: none\n    }\n}\n\n.swagger-ui .flex {\n    display: flex\n}\n\n.swagger-ui .inline-flex {\n    display: inline-flex\n}\n\n.swagger-ui .flex-auto {\n    flex: 1 1 auto;\n    min-height: 0;\n    min-width: 0\n}\n\n.swagger-ui .flex-none {\n    flex: none\n}\n\n.swagger-ui .flex-column {\n    flex-direction: column\n}\n\n.swagger-ui .flex-row {\n    flex-direction: row\n}\n\n.swagger-ui .flex-wrap {\n    flex-wrap: wrap\n}\n\n.swagger-ui .flex-nowrap {\n    flex-wrap: nowrap\n}\n\n.swagger-ui .flex-wrap-reverse {\n    flex-wrap: wrap-reverse\n}\n\n.swagger-ui .flex-column-reverse {\n    flex-direction: column-reverse\n}\n\n.swagger-ui .flex-row-reverse {\n    flex-direction: row-reverse\n}\n\n.swagger-ui .items-start {\n    align-items: flex-start\n}\n\n.swagger-ui .items-end {\n    align-items: flex-end\n}\n\n.swagger-ui .items-center {\n    align-items: center\n}\n\n.swagger-ui .items-baseline {\n    align-items: baseline\n}\n\n.swagger-ui .items-stretch {\n    align-items: stretch\n}\n\n.swagger-ui .self-start {\n    align-self: flex-start\n}\n\n.swagger-ui .self-end {\n    align-self: flex-end\n}\n\n.swagger-ui .self-center {\n    align-self: center\n}\n\n.swagger-ui .self-baseline {\n    align-self: baseline\n}\n\n.swagger-ui .self-stretch {\n    align-self: stretch\n}\n\n.swagger-ui .justify-start {\n    justify-content: flex-start\n}\n\n.swagger-ui .justify-end {\n    justify-content: flex-end\n}\n\n.swagger-ui .justify-center {\n    justify-content: center\n}\n\n.swagger-ui .justify-between {\n    justify-content: space-between\n}\n\n.swagger-ui .justify-around {\n    justify-content: space-around\n}\n\n.swagger-ui .content-start {\n    align-content: flex-start\n}\n\n.swagger-ui .content-end {\n    align-content: flex-end\n}\n\n.swagger-ui .content-center {\n    align-content: center\n}\n\n.swagger-ui .content-between {\n    align-content: space-between\n}\n\n.swagger-ui .content-around {\n    align-content: space-around\n}\n\n.swagger-ui .content-stretch {\n    align-content: stretch\n}\n\n.swagger-ui .order-0 {\n    order: 0\n}\n\n.swagger-ui .order-1 {\n    order: 1\n}\n\n.swagger-ui .order-2 {\n    order: 2\n}\n\n.swagger-ui .order-3 {\n    order: 3\n}\n\n.swagger-ui .order-4 {\n    order: 4\n}\n\n.swagger-ui .order-5 {\n    order: 5\n}\n\n.swagger-ui .order-6 {\n    order: 6\n}\n\n.swagger-ui .order-7 {\n    order: 7\n}\n\n.swagger-ui .order-8 {\n    order: 8\n}\n\n.swagger-ui .order-last {\n    order: 99999\n}\n\n.swagger-ui .flex-grow-0 {\n    flex-grow: 0\n}\n\n.swagger-ui .flex-grow-1 {\n    flex-grow: 1\n}\n\n.swagger-ui .flex-shrink-0 {\n    flex-shrink: 0\n}\n\n.swagger-ui .flex-shrink-1 {\n    flex-shrink: 1\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .flex-ns {\n        display:flex\n    }\n\n    .swagger-ui .inline-flex-ns {\n        display: inline-flex\n    }\n\n    .swagger-ui .flex-auto-ns {\n        flex: 1 1 auto;\n        min-height: 0;\n        min-width: 0\n    }\n\n    .swagger-ui .flex-none-ns {\n        flex: none\n    }\n\n    .swagger-ui .flex-column-ns {\n        flex-direction: column\n    }\n\n    .swagger-ui .flex-row-ns {\n        flex-direction: row\n    }\n\n    .swagger-ui .flex-wrap-ns {\n        flex-wrap: wrap\n    }\n\n    .swagger-ui .flex-nowrap-ns {\n        flex-wrap: nowrap\n    }\n\n    .swagger-ui .flex-wrap-reverse-ns {\n        flex-wrap: wrap-reverse\n    }\n\n    .swagger-ui .flex-column-reverse-ns {\n        flex-direction: column-reverse\n    }\n\n    .swagger-ui .flex-row-reverse-ns {\n        flex-direction: row-reverse\n    }\n\n    .swagger-ui .items-start-ns {\n        align-items: flex-start\n    }\n\n    .swagger-ui .items-end-ns {\n        align-items: flex-end\n    }\n\n    .swagger-ui .items-center-ns {\n        align-items: center\n    }\n\n    .swagger-ui .items-baseline-ns {\n        align-items: baseline\n    }\n\n    .swagger-ui .items-stretch-ns {\n        align-items: stretch\n    }\n\n    .swagger-ui .self-start-ns {\n        align-self: flex-start\n    }\n\n    .swagger-ui .self-end-ns {\n        align-self: flex-end\n    }\n\n    .swagger-ui .self-center-ns {\n        align-self: center\n    }\n\n    .swagger-ui .self-baseline-ns {\n        align-self: baseline\n    }\n\n    .swagger-ui .self-stretch-ns {\n        align-self: stretch\n    }\n\n    .swagger-ui .justify-start-ns {\n        justify-content: flex-start\n    }\n\n    .swagger-ui .justify-end-ns {\n        justify-content: flex-end\n    }\n\n    .swagger-ui .justify-center-ns {\n        justify-content: center\n    }\n\n    .swagger-ui .justify-between-ns {\n        justify-content: space-between\n    }\n\n    .swagger-ui .justify-around-ns {\n        justify-content: space-around\n    }\n\n    .swagger-ui .content-start-ns {\n        align-content: flex-start\n    }\n\n    .swagger-ui .content-end-ns {\n        align-content: flex-end\n    }\n\n    .swagger-ui .content-center-ns {\n        align-content: center\n    }\n\n    .swagger-ui .content-between-ns {\n        align-content: space-between\n    }\n\n    .swagger-ui .content-around-ns {\n        align-content: space-around\n    }\n\n    .swagger-ui .content-stretch-ns {\n        align-content: stretch\n    }\n\n    .swagger-ui .order-0-ns {\n        order: 0\n    }\n\n    .swagger-ui .order-1-ns {\n        order: 1\n    }\n\n    .swagger-ui .order-2-ns {\n        order: 2\n    }\n\n    .swagger-ui .order-3-ns {\n        order: 3\n    }\n\n    .swagger-ui .order-4-ns {\n        order: 4\n    }\n\n    .swagger-ui .order-5-ns {\n        order: 5\n    }\n\n    .swagger-ui .order-6-ns {\n        order: 6\n    }\n\n    .swagger-ui .order-7-ns {\n        order: 7\n    }\n\n    .swagger-ui .order-8-ns {\n        order: 8\n    }\n\n    .swagger-ui .order-last-ns {\n        order: 99999\n    }\n\n    .swagger-ui .flex-grow-0-ns {\n        flex-grow: 0\n    }\n\n    .swagger-ui .flex-grow-1-ns {\n        flex-grow: 1\n    }\n\n    .swagger-ui .flex-shrink-0-ns {\n        flex-shrink: 0\n    }\n\n    .swagger-ui .flex-shrink-1-ns {\n        flex-shrink: 1\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .flex-m {\n        display:flex\n    }\n\n    .swagger-ui .inline-flex-m {\n        display: inline-flex\n    }\n\n    .swagger-ui .flex-auto-m {\n        flex: 1 1 auto;\n        min-height: 0;\n        min-width: 0\n    }\n\n    .swagger-ui .flex-none-m {\n        flex: none\n    }\n\n    .swagger-ui .flex-column-m {\n        flex-direction: column\n    }\n\n    .swagger-ui .flex-row-m {\n        flex-direction: row\n    }\n\n    .swagger-ui .flex-wrap-m {\n        flex-wrap: wrap\n    }\n\n    .swagger-ui .flex-nowrap-m {\n        flex-wrap: nowrap\n    }\n\n    .swagger-ui .flex-wrap-reverse-m {\n        flex-wrap: wrap-reverse\n    }\n\n    .swagger-ui .flex-column-reverse-m {\n        flex-direction: column-reverse\n    }\n\n    .swagger-ui .flex-row-reverse-m {\n        flex-direction: row-reverse\n    }\n\n    .swagger-ui .items-start-m {\n        align-items: flex-start\n    }\n\n    .swagger-ui .items-end-m {\n        align-items: flex-end\n    }\n\n    .swagger-ui .items-center-m {\n        align-items: center\n    }\n\n    .swagger-ui .items-baseline-m {\n        align-items: baseline\n    }\n\n    .swagger-ui .items-stretch-m {\n        align-items: stretch\n    }\n\n    .swagger-ui .self-start-m {\n        align-self: flex-start\n    }\n\n    .swagger-ui .self-end-m {\n        align-self: flex-end\n    }\n\n    .swagger-ui .self-center-m {\n        align-self: center\n    }\n\n    .swagger-ui .self-baseline-m {\n        align-self: baseline\n    }\n\n    .swagger-ui .self-stretch-m {\n        align-self: stretch\n    }\n\n    .swagger-ui .justify-start-m {\n        justify-content: flex-start\n    }\n\n    .swagger-ui .justify-end-m {\n        justify-content: flex-end\n    }\n\n    .swagger-ui .justify-center-m {\n        justify-content: center\n    }\n\n    .swagger-ui .justify-between-m {\n        justify-content: space-between\n    }\n\n    .swagger-ui .justify-around-m {\n        justify-content: space-around\n    }\n\n    .swagger-ui .content-start-m {\n        align-content: flex-start\n    }\n\n    .swagger-ui .content-end-m {\n        align-content: flex-end\n    }\n\n    .swagger-ui .content-center-m {\n        align-content: center\n    }\n\n    .swagger-ui .content-between-m {\n        align-content: space-between\n    }\n\n    .swagger-ui .content-around-m {\n        align-content: space-around\n    }\n\n    .swagger-ui .content-stretch-m {\n        align-content: stretch\n    }\n\n    .swagger-ui .order-0-m {\n        order: 0\n    }\n\n    .swagger-ui .order-1-m {\n        order: 1\n    }\n\n    .swagger-ui .order-2-m {\n        order: 2\n    }\n\n    .swagger-ui .order-3-m {\n        order: 3\n    }\n\n    .swagger-ui .order-4-m {\n        order: 4\n    }\n\n    .swagger-ui .order-5-m {\n        order: 5\n    }\n\n    .swagger-ui .order-6-m {\n        order: 6\n    }\n\n    .swagger-ui .order-7-m {\n        order: 7\n    }\n\n    .swagger-ui .order-8-m {\n        order: 8\n    }\n\n    .swagger-ui .order-last-m {\n        order: 99999\n    }\n\n    .swagger-ui .flex-grow-0-m {\n        flex-grow: 0\n    }\n\n    .swagger-ui .flex-grow-1-m {\n        flex-grow: 1\n    }\n\n    .swagger-ui .flex-shrink-0-m {\n        flex-shrink: 0\n    }\n\n    .swagger-ui .flex-shrink-1-m {\n        flex-shrink: 1\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .flex-l {\n        display:flex\n    }\n\n    .swagger-ui .inline-flex-l {\n        display: inline-flex\n    }\n\n    .swagger-ui .flex-auto-l {\n        flex: 1 1 auto;\n        min-height: 0;\n        min-width: 0\n    }\n\n    .swagger-ui .flex-none-l {\n        flex: none\n    }\n\n    .swagger-ui .flex-column-l {\n        flex-direction: column\n    }\n\n    .swagger-ui .flex-row-l {\n        flex-direction: row\n    }\n\n    .swagger-ui .flex-wrap-l {\n        flex-wrap: wrap\n    }\n\n    .swagger-ui .flex-nowrap-l {\n        flex-wrap: nowrap\n    }\n\n    .swagger-ui .flex-wrap-reverse-l {\n        flex-wrap: wrap-reverse\n    }\n\n    .swagger-ui .flex-column-reverse-l {\n        flex-direction: column-reverse\n    }\n\n    .swagger-ui .flex-row-reverse-l {\n        flex-direction: row-reverse\n    }\n\n    .swagger-ui .items-start-l {\n        align-items: flex-start\n    }\n\n    .swagger-ui .items-end-l {\n        align-items: flex-end\n    }\n\n    .swagger-ui .items-center-l {\n        align-items: center\n    }\n\n    .swagger-ui .items-baseline-l {\n        align-items: baseline\n    }\n\n    .swagger-ui .items-stretch-l {\n        align-items: stretch\n    }\n\n    .swagger-ui .self-start-l {\n        align-self: flex-start\n    }\n\n    .swagger-ui .self-end-l {\n        align-self: flex-end\n    }\n\n    .swagger-ui .self-center-l {\n        align-self: center\n    }\n\n    .swagger-ui .self-baseline-l {\n        align-self: baseline\n    }\n\n    .swagger-ui .self-stretch-l {\n        align-self: stretch\n    }\n\n    .swagger-ui .justify-start-l {\n        justify-content: flex-start\n    }\n\n    .swagger-ui .justify-end-l {\n        justify-content: flex-end\n    }\n\n    .swagger-ui .justify-center-l {\n        justify-content: center\n    }\n\n    .swagger-ui .justify-between-l {\n        justify-content: space-between\n    }\n\n    .swagger-ui .justify-around-l {\n        justify-content: space-around\n    }\n\n    .swagger-ui .content-start-l {\n        align-content: flex-start\n    }\n\n    .swagger-ui .content-end-l {\n        align-content: flex-end\n    }\n\n    .swagger-ui .content-center-l {\n        align-content: center\n    }\n\n    .swagger-ui .content-between-l {\n        align-content: space-between\n    }\n\n    .swagger-ui .content-around-l {\n        align-content: space-around\n    }\n\n    .swagger-ui .content-stretch-l {\n        align-content: stretch\n    }\n\n    .swagger-ui .order-0-l {\n        order: 0\n    }\n\n    .swagger-ui .order-1-l {\n        order: 1\n    }\n\n    .swagger-ui .order-2-l {\n        order: 2\n    }\n\n    .swagger-ui .order-3-l {\n        order: 3\n    }\n\n    .swagger-ui .order-4-l {\n        order: 4\n    }\n\n    .swagger-ui .order-5-l {\n        order: 5\n    }\n\n    .swagger-ui .order-6-l {\n        order: 6\n    }\n\n    .swagger-ui .order-7-l {\n        order: 7\n    }\n\n    .swagger-ui .order-8-l {\n        order: 8\n    }\n\n    .swagger-ui .order-last-l {\n        order: 99999\n    }\n\n    .swagger-ui .flex-grow-0-l {\n        flex-grow: 0\n    }\n\n    .swagger-ui .flex-grow-1-l {\n        flex-grow: 1\n    }\n\n    .swagger-ui .flex-shrink-0-l {\n        flex-shrink: 0\n    }\n\n    .swagger-ui .flex-shrink-1-l {\n        flex-shrink: 1\n    }\n}\n\n.swagger-ui .dn {\n    display: none\n}\n\n.swagger-ui .di {\n    display: inline\n}\n\n.swagger-ui .db {\n    display: block\n}\n\n.swagger-ui .dib {\n    display: inline-block\n}\n\n.swagger-ui .dit {\n    display: inline-table\n}\n\n.swagger-ui .dt {\n    display: table\n}\n\n.swagger-ui .dtc {\n    display: table-cell\n}\n\n.swagger-ui .dt-row {\n    display: table-row\n}\n\n.swagger-ui .dt-row-group {\n    display: table-row-group\n}\n\n.swagger-ui .dt-column {\n    display: table-column\n}\n\n.swagger-ui .dt-column-group {\n    display: table-column-group\n}\n\n.swagger-ui .dt--fixed {\n    table-layout: fixed;\n    width: 100%\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .dn-ns {\n        display:none\n    }\n\n    .swagger-ui .di-ns {\n        display: inline\n    }\n\n    .swagger-ui .db-ns {\n        display: block\n    }\n\n    .swagger-ui .dib-ns {\n        display: inline-block\n    }\n\n    .swagger-ui .dit-ns {\n        display: inline-table\n    }\n\n    .swagger-ui .dt-ns {\n        display: table\n    }\n\n    .swagger-ui .dtc-ns {\n        display: table-cell\n    }\n\n    .swagger-ui .dt-row-ns {\n        display: table-row\n    }\n\n    .swagger-ui .dt-row-group-ns {\n        display: table-row-group\n    }\n\n    .swagger-ui .dt-column-ns {\n        display: table-column\n    }\n\n    .swagger-ui .dt-column-group-ns {\n        display: table-column-group\n    }\n\n    .swagger-ui .dt--fixed-ns {\n        table-layout: fixed;\n        width: 100%\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .dn-m {\n        display:none\n    }\n\n    .swagger-ui .di-m {\n        display: inline\n    }\n\n    .swagger-ui .db-m {\n        display: block\n    }\n\n    .swagger-ui .dib-m {\n        display: inline-block\n    }\n\n    .swagger-ui .dit-m {\n        display: inline-table\n    }\n\n    .swagger-ui .dt-m {\n        display: table\n    }\n\n    .swagger-ui .dtc-m {\n        display: table-cell\n    }\n\n    .swagger-ui .dt-row-m {\n        display: table-row\n    }\n\n    .swagger-ui .dt-row-group-m {\n        display: table-row-group\n    }\n\n    .swagger-ui .dt-column-m {\n        display: table-column\n    }\n\n    .swagger-ui .dt-column-group-m {\n        display: table-column-group\n    }\n\n    .swagger-ui .dt--fixed-m {\n        table-layout: fixed;\n        width: 100%\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .dn-l {\n        display:none\n    }\n\n    .swagger-ui .di-l {\n        display: inline\n    }\n\n    .swagger-ui .db-l {\n        display: block\n    }\n\n    .swagger-ui .dib-l {\n        display: inline-block\n    }\n\n    .swagger-ui .dit-l {\n        display: inline-table\n    }\n\n    .swagger-ui .dt-l {\n        display: table\n    }\n\n    .swagger-ui .dtc-l {\n        display: table-cell\n    }\n\n    .swagger-ui .dt-row-l {\n        display: table-row\n    }\n\n    .swagger-ui .dt-row-group-l {\n        display: table-row-group\n    }\n\n    .swagger-ui .dt-column-l {\n        display: table-column\n    }\n\n    .swagger-ui .dt-column-group-l {\n        display: table-column-group\n    }\n\n    .swagger-ui .dt--fixed-l {\n        table-layout: fixed;\n        width: 100%\n    }\n}\n\n.swagger-ui .fl {\n    _display: inline;\n    float: left\n}\n\n.swagger-ui .fr {\n    _display: inline;\n    float: right\n}\n\n.swagger-ui .fn {\n    float: none\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .fl-ns {\n        _display:inline;\n        float: left\n    }\n\n    .swagger-ui .fr-ns {\n        _display: inline;\n        float: right\n    }\n\n    .swagger-ui .fn-ns {\n        float: none\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .fl-m {\n        _display:inline;\n        float: left\n    }\n\n    .swagger-ui .fr-m {\n        _display: inline;\n        float: right\n    }\n\n    .swagger-ui .fn-m {\n        float: none\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .fl-l {\n        _display:inline;\n        float: left\n    }\n\n    .swagger-ui .fr-l {\n        _display: inline;\n        float: right\n    }\n\n    .swagger-ui .fn-l {\n        float: none\n    }\n}\n\n.swagger-ui .sans-serif {\n    font-family: -apple-system,BlinkMacSystemFont,avenir next,avenir,helvetica,helvetica neue,ubuntu,roboto,noto,segoe ui,arial,sans-serif\n}\n\n.swagger-ui .serif {\n    font-family: georgia,serif\n}\n\n.swagger-ui .system-sans-serif {\n    font-family: sans-serif\n}\n\n.swagger-ui .system-serif {\n    font-family: serif\n}\n\n.swagger-ui .code,.swagger-ui code {\n    font-family: Consolas,monaco,monospace\n}\n\n.swagger-ui .courier {\n    font-family: Courier Next,courier,monospace\n}\n\n.swagger-ui .helvetica {\n    font-family: helvetica neue,helvetica,sans-serif\n}\n\n.swagger-ui .avenir {\n    font-family: avenir next,avenir,sans-serif\n}\n\n.swagger-ui .athelas {\n    font-family: athelas,georgia,serif\n}\n\n.swagger-ui .georgia {\n    font-family: georgia,serif\n}\n\n.swagger-ui .times {\n    font-family: times,serif\n}\n\n.swagger-ui .bodoni {\n    font-family: Bodoni MT,serif\n}\n\n.swagger-ui .calisto {\n    font-family: Calisto MT,serif\n}\n\n.swagger-ui .garamond {\n    font-family: garamond,serif\n}\n\n.swagger-ui .baskerville {\n    font-family: baskerville,serif\n}\n\n.swagger-ui .i {\n    font-style: italic\n}\n\n.swagger-ui .fs-normal {\n    font-style: normal\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .i-ns {\n        font-style:italic\n    }\n\n    .swagger-ui .fs-normal-ns {\n        font-style: normal\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .i-m {\n        font-style:italic\n    }\n\n    .swagger-ui .fs-normal-m {\n        font-style: normal\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .i-l {\n        font-style:italic\n    }\n\n    .swagger-ui .fs-normal-l {\n        font-style: normal\n    }\n}\n\n.swagger-ui .normal {\n    font-weight: 400\n}\n\n.swagger-ui .b {\n    font-weight: 700\n}\n\n.swagger-ui .fw1 {\n    font-weight: 100\n}\n\n.swagger-ui .fw2 {\n    font-weight: 200\n}\n\n.swagger-ui .fw3 {\n    font-weight: 300\n}\n\n.swagger-ui .fw4 {\n    font-weight: 400\n}\n\n.swagger-ui .fw5 {\n    font-weight: 500\n}\n\n.swagger-ui .fw6 {\n    font-weight: 600\n}\n\n.swagger-ui .fw7 {\n    font-weight: 700\n}\n\n.swagger-ui .fw8 {\n    font-weight: 800\n}\n\n.swagger-ui .fw9 {\n    font-weight: 900\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .normal-ns {\n        font-weight:400\n    }\n\n    .swagger-ui .b-ns {\n        font-weight: 700\n    }\n\n    .swagger-ui .fw1-ns {\n        font-weight: 100\n    }\n\n    .swagger-ui .fw2-ns {\n        font-weight: 200\n    }\n\n    .swagger-ui .fw3-ns {\n        font-weight: 300\n    }\n\n    .swagger-ui .fw4-ns {\n        font-weight: 400\n    }\n\n    .swagger-ui .fw5-ns {\n        font-weight: 500\n    }\n\n    .swagger-ui .fw6-ns {\n        font-weight: 600\n    }\n\n    .swagger-ui .fw7-ns {\n        font-weight: 700\n    }\n\n    .swagger-ui .fw8-ns {\n        font-weight: 800\n    }\n\n    .swagger-ui .fw9-ns {\n        font-weight: 900\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .normal-m {\n        font-weight:400\n    }\n\n    .swagger-ui .b-m {\n        font-weight: 700\n    }\n\n    .swagger-ui .fw1-m {\n        font-weight: 100\n    }\n\n    .swagger-ui .fw2-m {\n        font-weight: 200\n    }\n\n    .swagger-ui .fw3-m {\n        font-weight: 300\n    }\n\n    .swagger-ui .fw4-m {\n        font-weight: 400\n    }\n\n    .swagger-ui .fw5-m {\n        font-weight: 500\n    }\n\n    .swagger-ui .fw6-m {\n        font-weight: 600\n    }\n\n    .swagger-ui .fw7-m {\n        font-weight: 700\n    }\n\n    .swagger-ui .fw8-m {\n        font-weight: 800\n    }\n\n    .swagger-ui .fw9-m {\n        font-weight: 900\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .normal-l {\n        font-weight:400\n    }\n\n    .swagger-ui .b-l {\n        font-weight: 700\n    }\n\n    .swagger-ui .fw1-l {\n        font-weight: 100\n    }\n\n    .swagger-ui .fw2-l {\n        font-weight: 200\n    }\n\n    .swagger-ui .fw3-l {\n        font-weight: 300\n    }\n\n    .swagger-ui .fw4-l {\n        font-weight: 400\n    }\n\n    .swagger-ui .fw5-l {\n        font-weight: 500\n    }\n\n    .swagger-ui .fw6-l {\n        font-weight: 600\n    }\n\n    .swagger-ui .fw7-l {\n        font-weight: 700\n    }\n\n    .swagger-ui .fw8-l {\n        font-weight: 800\n    }\n\n    .swagger-ui .fw9-l {\n        font-weight: 900\n    }\n}\n\n.swagger-ui .input-reset {\n    -webkit-appearance: none;\n    -moz-appearance: none\n}\n\n.swagger-ui .button-reset::-moz-focus-inner,.swagger-ui .input-reset::-moz-focus-inner {\n    padding: 0\n}\n\n.swagger-ui .h1 {\n    height: 1rem\n}\n\n.swagger-ui .h2 {\n    height: 2rem\n}\n\n.swagger-ui .h3 {\n    height: 4rem\n}\n\n.swagger-ui .h4 {\n    height: 8rem\n}\n\n.swagger-ui .h5 {\n    height: 16rem\n}\n\n.swagger-ui .h-25 {\n    height: 25%\n}\n\n.swagger-ui .h-50 {\n    height: 50%\n}\n\n.swagger-ui .h-75 {\n    height: 75%\n}\n\n.swagger-ui .h-100 {\n    height: 100%\n}\n\n.swagger-ui .min-h-100 {\n    min-height: 100%\n}\n\n.swagger-ui .vh-25 {\n    height: 25vh\n}\n\n.swagger-ui .vh-50 {\n    height: 50vh\n}\n\n.swagger-ui .vh-75 {\n    height: 75vh\n}\n\n.swagger-ui .vh-100 {\n    height: 100vh\n}\n\n.swagger-ui .min-vh-100 {\n    min-height: 100vh\n}\n\n.swagger-ui .h-auto {\n    height: auto\n}\n\n.swagger-ui .h-inherit {\n    height: inherit\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .h1-ns {\n        height:1rem\n    }\n\n    .swagger-ui .h2-ns {\n        height: 2rem\n    }\n\n    .swagger-ui .h3-ns {\n        height: 4rem\n    }\n\n    .swagger-ui .h4-ns {\n        height: 8rem\n    }\n\n    .swagger-ui .h5-ns {\n        height: 16rem\n    }\n\n    .swagger-ui .h-25-ns {\n        height: 25%\n    }\n\n    .swagger-ui .h-50-ns {\n        height: 50%\n    }\n\n    .swagger-ui .h-75-ns {\n        height: 75%\n    }\n\n    .swagger-ui .h-100-ns {\n        height: 100%\n    }\n\n    .swagger-ui .min-h-100-ns {\n        min-height: 100%\n    }\n\n    .swagger-ui .vh-25-ns {\n        height: 25vh\n    }\n\n    .swagger-ui .vh-50-ns {\n        height: 50vh\n    }\n\n    .swagger-ui .vh-75-ns {\n        height: 75vh\n    }\n\n    .swagger-ui .vh-100-ns {\n        height: 100vh\n    }\n\n    .swagger-ui .min-vh-100-ns {\n        min-height: 100vh\n    }\n\n    .swagger-ui .h-auto-ns {\n        height: auto\n    }\n\n    .swagger-ui .h-inherit-ns {\n        height: inherit\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .h1-m {\n        height:1rem\n    }\n\n    .swagger-ui .h2-m {\n        height: 2rem\n    }\n\n    .swagger-ui .h3-m {\n        height: 4rem\n    }\n\n    .swagger-ui .h4-m {\n        height: 8rem\n    }\n\n    .swagger-ui .h5-m {\n        height: 16rem\n    }\n\n    .swagger-ui .h-25-m {\n        height: 25%\n    }\n\n    .swagger-ui .h-50-m {\n        height: 50%\n    }\n\n    .swagger-ui .h-75-m {\n        height: 75%\n    }\n\n    .swagger-ui .h-100-m {\n        height: 100%\n    }\n\n    .swagger-ui .min-h-100-m {\n        min-height: 100%\n    }\n\n    .swagger-ui .vh-25-m {\n        height: 25vh\n    }\n\n    .swagger-ui .vh-50-m {\n        height: 50vh\n    }\n\n    .swagger-ui .vh-75-m {\n        height: 75vh\n    }\n\n    .swagger-ui .vh-100-m {\n        height: 100vh\n    }\n\n    .swagger-ui .min-vh-100-m {\n        min-height: 100vh\n    }\n\n    .swagger-ui .h-auto-m {\n        height: auto\n    }\n\n    .swagger-ui .h-inherit-m {\n        height: inherit\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .h1-l {\n        height:1rem\n    }\n\n    .swagger-ui .h2-l {\n        height: 2rem\n    }\n\n    .swagger-ui .h3-l {\n        height: 4rem\n    }\n\n    .swagger-ui .h4-l {\n        height: 8rem\n    }\n\n    .swagger-ui .h5-l {\n        height: 16rem\n    }\n\n    .swagger-ui .h-25-l {\n        height: 25%\n    }\n\n    .swagger-ui .h-50-l {\n        height: 50%\n    }\n\n    .swagger-ui .h-75-l {\n        height: 75%\n    }\n\n    .swagger-ui .h-100-l {\n        height: 100%\n    }\n\n    .swagger-ui .min-h-100-l {\n        min-height: 100%\n    }\n\n    .swagger-ui .vh-25-l {\n        height: 25vh\n    }\n\n    .swagger-ui .vh-50-l {\n        height: 50vh\n    }\n\n    .swagger-ui .vh-75-l {\n        height: 75vh\n    }\n\n    .swagger-ui .vh-100-l {\n        height: 100vh\n    }\n\n    .swagger-ui .min-vh-100-l {\n        min-height: 100vh\n    }\n\n    .swagger-ui .h-auto-l {\n        height: auto\n    }\n\n    .swagger-ui .h-inherit-l {\n        height: inherit\n    }\n}\n\n.swagger-ui .tracked {\n    letter-spacing: .1em\n}\n\n.swagger-ui .tracked-tight {\n    letter-spacing: -.05em\n}\n\n.swagger-ui .tracked-mega {\n    letter-spacing: .25em\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .tracked-ns {\n        letter-spacing:.1em\n    }\n\n    .swagger-ui .tracked-tight-ns {\n        letter-spacing: -.05em\n    }\n\n    .swagger-ui .tracked-mega-ns {\n        letter-spacing: .25em\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .tracked-m {\n        letter-spacing:.1em\n    }\n\n    .swagger-ui .tracked-tight-m {\n        letter-spacing: -.05em\n    }\n\n    .swagger-ui .tracked-mega-m {\n        letter-spacing: .25em\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .tracked-l {\n        letter-spacing:.1em\n    }\n\n    .swagger-ui .tracked-tight-l {\n        letter-spacing: -.05em\n    }\n\n    .swagger-ui .tracked-mega-l {\n        letter-spacing: .25em\n    }\n}\n\n.swagger-ui .lh-solid {\n    line-height: 1\n}\n\n.swagger-ui .lh-title {\n    line-height: 1.25\n}\n\n.swagger-ui .lh-copy {\n    line-height: 1.5\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .lh-solid-ns {\n        line-height:1\n    }\n\n    .swagger-ui .lh-title-ns {\n        line-height: 1.25\n    }\n\n    .swagger-ui .lh-copy-ns {\n        line-height: 1.5\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .lh-solid-m {\n        line-height:1\n    }\n\n    .swagger-ui .lh-title-m {\n        line-height: 1.25\n    }\n\n    .swagger-ui .lh-copy-m {\n        line-height: 1.5\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .lh-solid-l {\n        line-height:1\n    }\n\n    .swagger-ui .lh-title-l {\n        line-height: 1.25\n    }\n\n    .swagger-ui .lh-copy-l {\n        line-height: 1.5\n    }\n}\n\n.swagger-ui .link {\n    -webkit-text-decoration: none;\n    text-decoration: none\n}\n\n.swagger-ui .link,.swagger-ui .link:active,.swagger-ui .link:focus,.swagger-ui .link:hover,.swagger-ui .link:link,.swagger-ui .link:visited {\n    transition: color .15s ease-in\n}\n\n.swagger-ui .link:focus {\n    outline: 1px dotted currentColor\n}\n\n.swagger-ui .list {\n    list-style-type: none\n}\n\n.swagger-ui .mw-100 {\n    max-width: 100%\n}\n\n.swagger-ui .mw1 {\n    max-width: 1rem\n}\n\n.swagger-ui .mw2 {\n    max-width: 2rem\n}\n\n.swagger-ui .mw3 {\n    max-width: 4rem\n}\n\n.swagger-ui .mw4 {\n    max-width: 8rem\n}\n\n.swagger-ui .mw5 {\n    max-width: 16rem\n}\n\n.swagger-ui .mw6 {\n    max-width: 32rem\n}\n\n.swagger-ui .mw7 {\n    max-width: 48rem\n}\n\n.swagger-ui .mw8 {\n    max-width: 64rem\n}\n\n.swagger-ui .mw9 {\n    max-width: 96rem\n}\n\n.swagger-ui .mw-none {\n    max-width: none\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .mw-100-ns {\n        max-width:100%\n    }\n\n    .swagger-ui .mw1-ns {\n        max-width: 1rem\n    }\n\n    .swagger-ui .mw2-ns {\n        max-width: 2rem\n    }\n\n    .swagger-ui .mw3-ns {\n        max-width: 4rem\n    }\n\n    .swagger-ui .mw4-ns {\n        max-width: 8rem\n    }\n\n    .swagger-ui .mw5-ns {\n        max-width: 16rem\n    }\n\n    .swagger-ui .mw6-ns {\n        max-width: 32rem\n    }\n\n    .swagger-ui .mw7-ns {\n        max-width: 48rem\n    }\n\n    .swagger-ui .mw8-ns {\n        max-width: 64rem\n    }\n\n    .swagger-ui .mw9-ns {\n        max-width: 96rem\n    }\n\n    .swagger-ui .mw-none-ns {\n        max-width: none\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .mw-100-m {\n        max-width:100%\n    }\n\n    .swagger-ui .mw1-m {\n        max-width: 1rem\n    }\n\n    .swagger-ui .mw2-m {\n        max-width: 2rem\n    }\n\n    .swagger-ui .mw3-m {\n        max-width: 4rem\n    }\n\n    .swagger-ui .mw4-m {\n        max-width: 8rem\n    }\n\n    .swagger-ui .mw5-m {\n        max-width: 16rem\n    }\n\n    .swagger-ui .mw6-m {\n        max-width: 32rem\n    }\n\n    .swagger-ui .mw7-m {\n        max-width: 48rem\n    }\n\n    .swagger-ui .mw8-m {\n        max-width: 64rem\n    }\n\n    .swagger-ui .mw9-m {\n        max-width: 96rem\n    }\n\n    .swagger-ui .mw-none-m {\n        max-width: none\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .mw-100-l {\n        max-width:100%\n    }\n\n    .swagger-ui .mw1-l {\n        max-width: 1rem\n    }\n\n    .swagger-ui .mw2-l {\n        max-width: 2rem\n    }\n\n    .swagger-ui .mw3-l {\n        max-width: 4rem\n    }\n\n    .swagger-ui .mw4-l {\n        max-width: 8rem\n    }\n\n    .swagger-ui .mw5-l {\n        max-width: 16rem\n    }\n\n    .swagger-ui .mw6-l {\n        max-width: 32rem\n    }\n\n    .swagger-ui .mw7-l {\n        max-width: 48rem\n    }\n\n    .swagger-ui .mw8-l {\n        max-width: 64rem\n    }\n\n    .swagger-ui .mw9-l {\n        max-width: 96rem\n    }\n\n    .swagger-ui .mw-none-l {\n        max-width: none\n    }\n}\n\n.swagger-ui .w1 {\n    width: 1rem\n}\n\n.swagger-ui .w2 {\n    width: 2rem\n}\n\n.swagger-ui .w3 {\n    width: 4rem\n}\n\n.swagger-ui .w4 {\n    width: 8rem\n}\n\n.swagger-ui .w5 {\n    width: 16rem\n}\n\n.swagger-ui .w-10 {\n    width: 10%\n}\n\n.swagger-ui .w-20 {\n    width: 20%\n}\n\n.swagger-ui .w-25 {\n    width: 25%\n}\n\n.swagger-ui .w-30 {\n    width: 30%\n}\n\n.swagger-ui .w-33 {\n    width: 33%\n}\n\n.swagger-ui .w-34 {\n    width: 34%\n}\n\n.swagger-ui .w-40 {\n    width: 40%\n}\n\n.swagger-ui .w-50 {\n    width: 50%\n}\n\n.swagger-ui .w-60 {\n    width: 60%\n}\n\n.swagger-ui .w-70 {\n    width: 70%\n}\n\n.swagger-ui .w-75 {\n    width: 75%\n}\n\n.swagger-ui .w-80 {\n    width: 80%\n}\n\n.swagger-ui .w-90 {\n    width: 90%\n}\n\n.swagger-ui .w-100 {\n    width: 100%\n}\n\n.swagger-ui .w-third {\n    width: 33.3333333333%\n}\n\n.swagger-ui .w-two-thirds {\n    width: 66.6666666667%\n}\n\n.swagger-ui .w-auto {\n    width: auto\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .w1-ns {\n        width:1rem\n    }\n\n    .swagger-ui .w2-ns {\n        width: 2rem\n    }\n\n    .swagger-ui .w3-ns {\n        width: 4rem\n    }\n\n    .swagger-ui .w4-ns {\n        width: 8rem\n    }\n\n    .swagger-ui .w5-ns {\n        width: 16rem\n    }\n\n    .swagger-ui .w-10-ns {\n        width: 10%\n    }\n\n    .swagger-ui .w-20-ns {\n        width: 20%\n    }\n\n    .swagger-ui .w-25-ns {\n        width: 25%\n    }\n\n    .swagger-ui .w-30-ns {\n        width: 30%\n    }\n\n    .swagger-ui .w-33-ns {\n        width: 33%\n    }\n\n    .swagger-ui .w-34-ns {\n        width: 34%\n    }\n\n    .swagger-ui .w-40-ns {\n        width: 40%\n    }\n\n    .swagger-ui .w-50-ns {\n        width: 50%\n    }\n\n    .swagger-ui .w-60-ns {\n        width: 60%\n    }\n\n    .swagger-ui .w-70-ns {\n        width: 70%\n    }\n\n    .swagger-ui .w-75-ns {\n        width: 75%\n    }\n\n    .swagger-ui .w-80-ns {\n        width: 80%\n    }\n\n    .swagger-ui .w-90-ns {\n        width: 90%\n    }\n\n    .swagger-ui .w-100-ns {\n        width: 100%\n    }\n\n    .swagger-ui .w-third-ns {\n        width: 33.3333333333%\n    }\n\n    .swagger-ui .w-two-thirds-ns {\n        width: 66.6666666667%\n    }\n\n    .swagger-ui .w-auto-ns {\n        width: auto\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .w1-m {\n        width:1rem\n    }\n\n    .swagger-ui .w2-m {\n        width: 2rem\n    }\n\n    .swagger-ui .w3-m {\n        width: 4rem\n    }\n\n    .swagger-ui .w4-m {\n        width: 8rem\n    }\n\n    .swagger-ui .w5-m {\n        width: 16rem\n    }\n\n    .swagger-ui .w-10-m {\n        width: 10%\n    }\n\n    .swagger-ui .w-20-m {\n        width: 20%\n    }\n\n    .swagger-ui .w-25-m {\n        width: 25%\n    }\n\n    .swagger-ui .w-30-m {\n        width: 30%\n    }\n\n    .swagger-ui .w-33-m {\n        width: 33%\n    }\n\n    .swagger-ui .w-34-m {\n        width: 34%\n    }\n\n    .swagger-ui .w-40-m {\n        width: 40%\n    }\n\n    .swagger-ui .w-50-m {\n        width: 50%\n    }\n\n    .swagger-ui .w-60-m {\n        width: 60%\n    }\n\n    .swagger-ui .w-70-m {\n        width: 70%\n    }\n\n    .swagger-ui .w-75-m {\n        width: 75%\n    }\n\n    .swagger-ui .w-80-m {\n        width: 80%\n    }\n\n    .swagger-ui .w-90-m {\n        width: 90%\n    }\n\n    .swagger-ui .w-100-m {\n        width: 100%\n    }\n\n    .swagger-ui .w-third-m {\n        width: 33.3333333333%\n    }\n\n    .swagger-ui .w-two-thirds-m {\n        width: 66.6666666667%\n    }\n\n    .swagger-ui .w-auto-m {\n        width: auto\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .w1-l {\n        width:1rem\n    }\n\n    .swagger-ui .w2-l {\n        width: 2rem\n    }\n\n    .swagger-ui .w3-l {\n        width: 4rem\n    }\n\n    .swagger-ui .w4-l {\n        width: 8rem\n    }\n\n    .swagger-ui .w5-l {\n        width: 16rem\n    }\n\n    .swagger-ui .w-10-l {\n        width: 10%\n    }\n\n    .swagger-ui .w-20-l {\n        width: 20%\n    }\n\n    .swagger-ui .w-25-l {\n        width: 25%\n    }\n\n    .swagger-ui .w-30-l {\n        width: 30%\n    }\n\n    .swagger-ui .w-33-l {\n        width: 33%\n    }\n\n    .swagger-ui .w-34-l {\n        width: 34%\n    }\n\n    .swagger-ui .w-40-l {\n        width: 40%\n    }\n\n    .swagger-ui .w-50-l {\n        width: 50%\n    }\n\n    .swagger-ui .w-60-l {\n        width: 60%\n    }\n\n    .swagger-ui .w-70-l {\n        width: 70%\n    }\n\n    .swagger-ui .w-75-l {\n        width: 75%\n    }\n\n    .swagger-ui .w-80-l {\n        width: 80%\n    }\n\n    .swagger-ui .w-90-l {\n        width: 90%\n    }\n\n    .swagger-ui .w-100-l {\n        width: 100%\n    }\n\n    .swagger-ui .w-third-l {\n        width: 33.3333333333%\n    }\n\n    .swagger-ui .w-two-thirds-l {\n        width: 66.6666666667%\n    }\n\n    .swagger-ui .w-auto-l {\n        width: auto\n    }\n}\n\n.swagger-ui .overflow-visible {\n    overflow: visible\n}\n\n.swagger-ui .overflow-hidden {\n    overflow: hidden\n}\n\n.swagger-ui .overflow-scroll {\n    overflow: scroll\n}\n\n.swagger-ui .overflow-auto {\n    overflow: auto\n}\n\n.swagger-ui .overflow-x-visible {\n    overflow-x: visible\n}\n\n.swagger-ui .overflow-x-hidden {\n    overflow-x: hidden\n}\n\n.swagger-ui .overflow-x-scroll {\n    overflow-x: scroll\n}\n\n.swagger-ui .overflow-x-auto {\n    overflow-x: auto\n}\n\n.swagger-ui .overflow-y-visible {\n    overflow-y: visible\n}\n\n.swagger-ui .overflow-y-hidden {\n    overflow-y: hidden\n}\n\n.swagger-ui .overflow-y-scroll {\n    overflow-y: scroll\n}\n\n.swagger-ui .overflow-y-auto {\n    overflow-y: auto\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .overflow-visible-ns {\n        overflow:visible\n    }\n\n    .swagger-ui .overflow-hidden-ns {\n        overflow: hidden\n    }\n\n    .swagger-ui .overflow-scroll-ns {\n        overflow: scroll\n    }\n\n    .swagger-ui .overflow-auto-ns {\n        overflow: auto\n    }\n\n    .swagger-ui .overflow-x-visible-ns {\n        overflow-x: visible\n    }\n\n    .swagger-ui .overflow-x-hidden-ns {\n        overflow-x: hidden\n    }\n\n    .swagger-ui .overflow-x-scroll-ns {\n        overflow-x: scroll\n    }\n\n    .swagger-ui .overflow-x-auto-ns {\n        overflow-x: auto\n    }\n\n    .swagger-ui .overflow-y-visible-ns {\n        overflow-y: visible\n    }\n\n    .swagger-ui .overflow-y-hidden-ns {\n        overflow-y: hidden\n    }\n\n    .swagger-ui .overflow-y-scroll-ns {\n        overflow-y: scroll\n    }\n\n    .swagger-ui .overflow-y-auto-ns {\n        overflow-y: auto\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .overflow-visible-m {\n        overflow:visible\n    }\n\n    .swagger-ui .overflow-hidden-m {\n        overflow: hidden\n    }\n\n    .swagger-ui .overflow-scroll-m {\n        overflow: scroll\n    }\n\n    .swagger-ui .overflow-auto-m {\n        overflow: auto\n    }\n\n    .swagger-ui .overflow-x-visible-m {\n        overflow-x: visible\n    }\n\n    .swagger-ui .overflow-x-hidden-m {\n        overflow-x: hidden\n    }\n\n    .swagger-ui .overflow-x-scroll-m {\n        overflow-x: scroll\n    }\n\n    .swagger-ui .overflow-x-auto-m {\n        overflow-x: auto\n    }\n\n    .swagger-ui .overflow-y-visible-m {\n        overflow-y: visible\n    }\n\n    .swagger-ui .overflow-y-hidden-m {\n        overflow-y: hidden\n    }\n\n    .swagger-ui .overflow-y-scroll-m {\n        overflow-y: scroll\n    }\n\n    .swagger-ui .overflow-y-auto-m {\n        overflow-y: auto\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .overflow-visible-l {\n        overflow:visible\n    }\n\n    .swagger-ui .overflow-hidden-l {\n        overflow: hidden\n    }\n\n    .swagger-ui .overflow-scroll-l {\n        overflow: scroll\n    }\n\n    .swagger-ui .overflow-auto-l {\n        overflow: auto\n    }\n\n    .swagger-ui .overflow-x-visible-l {\n        overflow-x: visible\n    }\n\n    .swagger-ui .overflow-x-hidden-l {\n        overflow-x: hidden\n    }\n\n    .swagger-ui .overflow-x-scroll-l {\n        overflow-x: scroll\n    }\n\n    .swagger-ui .overflow-x-auto-l {\n        overflow-x: auto\n    }\n\n    .swagger-ui .overflow-y-visible-l {\n        overflow-y: visible\n    }\n\n    .swagger-ui .overflow-y-hidden-l {\n        overflow-y: hidden\n    }\n\n    .swagger-ui .overflow-y-scroll-l {\n        overflow-y: scroll\n    }\n\n    .swagger-ui .overflow-y-auto-l {\n        overflow-y: auto\n    }\n}\n\n.swagger-ui .static {\n    position: static\n}\n\n.swagger-ui .relative {\n    position: relative\n}\n\n.swagger-ui .absolute {\n    position: absolute\n}\n\n.swagger-ui .fixed {\n    position: fixed\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .static-ns {\n        position:static\n    }\n\n    .swagger-ui .relative-ns {\n        position: relative\n    }\n\n    .swagger-ui .absolute-ns {\n        position: absolute\n    }\n\n    .swagger-ui .fixed-ns {\n        position: fixed\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .static-m {\n        position:static\n    }\n\n    .swagger-ui .relative-m {\n        position: relative\n    }\n\n    .swagger-ui .absolute-m {\n        position: absolute\n    }\n\n    .swagger-ui .fixed-m {\n        position: fixed\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .static-l {\n        position:static\n    }\n\n    .swagger-ui .relative-l {\n        position: relative\n    }\n\n    .swagger-ui .absolute-l {\n        position: absolute\n    }\n\n    .swagger-ui .fixed-l {\n        position: fixed\n    }\n}\n\n.swagger-ui .o-100 {\n    opacity: 1\n}\n\n.swagger-ui .o-90 {\n    opacity: .9\n}\n\n.swagger-ui .o-80 {\n    opacity: .8\n}\n\n.swagger-ui .o-70 {\n    opacity: .7\n}\n\n.swagger-ui .o-60 {\n    opacity: .6\n}\n\n.swagger-ui .o-50 {\n    opacity: .5\n}\n\n.swagger-ui .o-40 {\n    opacity: .4\n}\n\n.swagger-ui .o-30 {\n    opacity: .3\n}\n\n.swagger-ui .o-20 {\n    opacity: .2\n}\n\n.swagger-ui .o-10 {\n    opacity: .1\n}\n\n.swagger-ui .o-05 {\n    opacity: .05\n}\n\n.swagger-ui .o-025 {\n    opacity: .025\n}\n\n.swagger-ui .o-0 {\n    opacity: 0\n}\n\n.swagger-ui .rotate-45 {\n    transform: rotate(45deg)\n}\n\n.swagger-ui .rotate-90 {\n    transform: rotate(90deg)\n}\n\n.swagger-ui .rotate-135 {\n    transform: rotate(135deg)\n}\n\n.swagger-ui .rotate-180 {\n    transform: rotate(180deg)\n}\n\n.swagger-ui .rotate-225 {\n    transform: rotate(225deg)\n}\n\n.swagger-ui .rotate-270 {\n    transform: rotate(270deg)\n}\n\n.swagger-ui .rotate-315 {\n    transform: rotate(315deg)\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .rotate-45-ns {\n        transform:rotate(45deg)\n    }\n\n    .swagger-ui .rotate-90-ns {\n        transform: rotate(90deg)\n    }\n\n    .swagger-ui .rotate-135-ns {\n        transform: rotate(135deg)\n    }\n\n    .swagger-ui .rotate-180-ns {\n        transform: rotate(180deg)\n    }\n\n    .swagger-ui .rotate-225-ns {\n        transform: rotate(225deg)\n    }\n\n    .swagger-ui .rotate-270-ns {\n        transform: rotate(270deg)\n    }\n\n    .swagger-ui .rotate-315-ns {\n        transform: rotate(315deg)\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .rotate-45-m {\n        transform:rotate(45deg)\n    }\n\n    .swagger-ui .rotate-90-m {\n        transform: rotate(90deg)\n    }\n\n    .swagger-ui .rotate-135-m {\n        transform: rotate(135deg)\n    }\n\n    .swagger-ui .rotate-180-m {\n        transform: rotate(180deg)\n    }\n\n    .swagger-ui .rotate-225-m {\n        transform: rotate(225deg)\n    }\n\n    .swagger-ui .rotate-270-m {\n        transform: rotate(270deg)\n    }\n\n    .swagger-ui .rotate-315-m {\n        transform: rotate(315deg)\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .rotate-45-l {\n        transform:rotate(45deg)\n    }\n\n    .swagger-ui .rotate-90-l {\n        transform: rotate(90deg)\n    }\n\n    .swagger-ui .rotate-135-l {\n        transform: rotate(135deg)\n    }\n\n    .swagger-ui .rotate-180-l {\n        transform: rotate(180deg)\n    }\n\n    .swagger-ui .rotate-225-l {\n        transform: rotate(225deg)\n    }\n\n    .swagger-ui .rotate-270-l {\n        transform: rotate(270deg)\n    }\n\n    .swagger-ui .rotate-315-l {\n        transform: rotate(315deg)\n    }\n}\n\n.swagger-ui .black-90 {\n    color: rgba(0,0,0,.9)\n}\n\n.swagger-ui .black-80 {\n    color: rgba(0,0,0,.8)\n}\n\n.swagger-ui .black-70 {\n    color: rgba(0,0,0,.7)\n}\n\n.swagger-ui .black-60 {\n    color: rgba(0,0,0,.6)\n}\n\n.swagger-ui .black-50 {\n    color: rgba(0,0,0,.5)\n}\n\n.swagger-ui .black-40 {\n    color: rgba(0,0,0,.4)\n}\n\n.swagger-ui .black-30 {\n    color: rgba(0,0,0,.3)\n}\n\n.swagger-ui .black-20 {\n    color: rgba(0,0,0,.2)\n}\n\n.swagger-ui .black-10 {\n    color: rgba(0,0,0,.1)\n}\n\n.swagger-ui .black-05 {\n    color: rgba(0,0,0,.05)\n}\n\n.swagger-ui .white-90 {\n    color: hsla(0,0%,100%,.9)\n}\n\n.swagger-ui .white-80 {\n    color: hsla(0,0%,100%,.8)\n}\n\n.swagger-ui .white-70 {\n    color: hsla(0,0%,100%,.7)\n}\n\n.swagger-ui .white-60 {\n    color: hsla(0,0%,100%,.6)\n}\n\n.swagger-ui .white-50 {\n    color: hsla(0,0%,100%,.5)\n}\n\n.swagger-ui .white-40 {\n    color: hsla(0,0%,100%,.4)\n}\n\n.swagger-ui .white-30 {\n    color: hsla(0,0%,100%,.3)\n}\n\n.swagger-ui .white-20 {\n    color: hsla(0,0%,100%,.2)\n}\n\n.swagger-ui .white-10 {\n    color: hsla(0,0%,100%,.1)\n}\n\n.swagger-ui .black {\n    color: #000\n}\n\n.swagger-ui .near-black {\n    color: #111\n}\n\n.swagger-ui .dark-gray {\n    color: #333\n}\n\n.swagger-ui .mid-gray {\n    color: #555\n}\n\n.swagger-ui .gray {\n    color: #777\n}\n\n.swagger-ui .silver {\n    color: #999\n}\n\n.swagger-ui .light-silver {\n    color: #aaa\n}\n\n.swagger-ui .moon-gray {\n    color: #ccc\n}\n\n.swagger-ui .light-gray {\n    color: #eee\n}\n\n.swagger-ui .near-white {\n    color: #f4f4f4\n}\n\n.swagger-ui .white {\n    color: #fff\n}\n\n.swagger-ui .dark-red {\n    color: #e7040f\n}\n\n.swagger-ui .red {\n    color: #ff4136\n}\n\n.swagger-ui .light-red {\n    color: #ff725c\n}\n\n.swagger-ui .orange {\n    color: #ff6300\n}\n\n.swagger-ui .gold {\n    color: #ffb700\n}\n\n.swagger-ui .yellow {\n    color: gold\n}\n\n.swagger-ui .light-yellow {\n    color: #fbf1a9\n}\n\n.swagger-ui .purple {\n    color: #5e2ca5\n}\n\n.swagger-ui .light-purple {\n    color: #a463f2\n}\n\n.swagger-ui .dark-pink {\n    color: #d5008f\n}\n\n.swagger-ui .hot-pink {\n    color: #ff41b4\n}\n\n.swagger-ui .pink {\n    color: #ff80cc\n}\n\n.swagger-ui .light-pink {\n    color: #ffa3d7\n}\n\n.swagger-ui .dark-green {\n    color: #137752\n}\n\n.swagger-ui .green {\n    color: #19a974\n}\n\n.swagger-ui .light-green {\n    color: #9eebcf\n}\n\n.swagger-ui .navy {\n    color: #001b44\n}\n\n.swagger-ui .dark-blue {\n    color: #00449e\n}\n\n.swagger-ui .blue {\n    color: #357edd\n}\n\n.swagger-ui .light-blue {\n    color: #96ccff\n}\n\n.swagger-ui .lightest-blue {\n    color: #cdecff\n}\n\n.swagger-ui .washed-blue {\n    color: #f6fffe\n}\n\n.swagger-ui .washed-green {\n    color: #e8fdf5\n}\n\n.swagger-ui .washed-yellow {\n    color: #fffceb\n}\n\n.swagger-ui .washed-red {\n    color: #ffdfdf\n}\n\n.swagger-ui .color-inherit {\n    color: inherit\n}\n\n.swagger-ui .bg-black-90 {\n    background-color: rgba(0,0,0,.9)\n}\n\n.swagger-ui .bg-black-80 {\n    background-color: rgba(0,0,0,.8)\n}\n\n.swagger-ui .bg-black-70 {\n    background-color: rgba(0,0,0,.7)\n}\n\n.swagger-ui .bg-black-60 {\n    background-color: rgba(0,0,0,.6)\n}\n\n.swagger-ui .bg-black-50 {\n    background-color: rgba(0,0,0,.5)\n}\n\n.swagger-ui .bg-black-40 {\n    background-color: rgba(0,0,0,.4)\n}\n\n.swagger-ui .bg-black-30 {\n    background-color: rgba(0,0,0,.3)\n}\n\n.swagger-ui .bg-black-20 {\n    background-color: rgba(0,0,0,.2)\n}\n\n.swagger-ui .bg-black-10 {\n    background-color: rgba(0,0,0,.1)\n}\n\n.swagger-ui .bg-black-05 {\n    background-color: rgba(0,0,0,.05)\n}\n\n.swagger-ui .bg-white-90 {\n    background-color: hsla(0,0%,100%,.9)\n}\n\n.swagger-ui .bg-white-80 {\n    background-color: hsla(0,0%,100%,.8)\n}\n\n.swagger-ui .bg-white-70 {\n    background-color: hsla(0,0%,100%,.7)\n}\n\n.swagger-ui .bg-white-60 {\n    background-color: hsla(0,0%,100%,.6)\n}\n\n.swagger-ui .bg-white-50 {\n    background-color: hsla(0,0%,100%,.5)\n}\n\n.swagger-ui .bg-white-40 {\n    background-color: hsla(0,0%,100%,.4)\n}\n\n.swagger-ui .bg-white-30 {\n    background-color: hsla(0,0%,100%,.3)\n}\n\n.swagger-ui .bg-white-20 {\n    background-color: hsla(0,0%,100%,.2)\n}\n\n.swagger-ui .bg-white-10 {\n    background-color: hsla(0,0%,100%,.1)\n}\n\n.swagger-ui .bg-black {\n    background-color: #000\n}\n\n.swagger-ui .bg-near-black {\n    background-color: #111\n}\n\n.swagger-ui .bg-dark-gray {\n    background-color: #333\n}\n\n.swagger-ui .bg-mid-gray {\n    background-color: #555\n}\n\n.swagger-ui .bg-gray {\n    background-color: #777\n}\n\n.swagger-ui .bg-silver {\n    background-color: #999\n}\n\n.swagger-ui .bg-light-silver {\n    background-color: #aaa\n}\n\n.swagger-ui .bg-moon-gray {\n    background-color: #ccc\n}\n\n.swagger-ui .bg-light-gray {\n    background-color: #eee\n}\n\n.swagger-ui .bg-near-white {\n    background-color: #f4f4f4\n}\n\n.swagger-ui .bg-white {\n    background-color: #fff\n}\n\n.swagger-ui .bg-transparent {\n    background-color: transparent\n}\n\n.swagger-ui .bg-dark-red {\n    background-color: #e7040f\n}\n\n.swagger-ui .bg-red {\n    background-color: #ff4136\n}\n\n.swagger-ui .bg-light-red {\n    background-color: #ff725c\n}\n\n.swagger-ui .bg-orange {\n    background-color: #ff6300\n}\n\n.swagger-ui .bg-gold {\n    background-color: #ffb700\n}\n\n.swagger-ui .bg-yellow {\n    background-color: gold\n}\n\n.swagger-ui .bg-light-yellow {\n    background-color: #fbf1a9\n}\n\n.swagger-ui .bg-purple {\n    background-color: #5e2ca5\n}\n\n.swagger-ui .bg-light-purple {\n    background-color: #a463f2\n}\n\n.swagger-ui .bg-dark-pink {\n    background-color: #d5008f\n}\n\n.swagger-ui .bg-hot-pink {\n    background-color: #ff41b4\n}\n\n.swagger-ui .bg-pink {\n    background-color: #ff80cc\n}\n\n.swagger-ui .bg-light-pink {\n    background-color: #ffa3d7\n}\n\n.swagger-ui .bg-dark-green {\n    background-color: #137752\n}\n\n.swagger-ui .bg-green {\n    background-color: #19a974\n}\n\n.swagger-ui .bg-light-green {\n    background-color: #9eebcf\n}\n\n.swagger-ui .bg-navy {\n    background-color: #001b44\n}\n\n.swagger-ui .bg-dark-blue {\n    background-color: #00449e\n}\n\n.swagger-ui .bg-blue {\n    background-color: #357edd\n}\n\n.swagger-ui .bg-light-blue {\n    background-color: #96ccff\n}\n\n.swagger-ui .bg-lightest-blue {\n    background-color: #cdecff\n}\n\n.swagger-ui .bg-washed-blue {\n    background-color: #f6fffe\n}\n\n.swagger-ui .bg-washed-green {\n    background-color: #e8fdf5\n}\n\n.swagger-ui .bg-washed-yellow {\n    background-color: #fffceb\n}\n\n.swagger-ui .bg-washed-red {\n    background-color: #ffdfdf\n}\n\n.swagger-ui .bg-inherit {\n    background-color: inherit\n}\n\n.swagger-ui .hover-black:focus,.swagger-ui .hover-black:hover {\n    color: #000\n}\n\n.swagger-ui .hover-near-black:focus,.swagger-ui .hover-near-black:hover {\n    color: #111\n}\n\n.swagger-ui .hover-dark-gray:focus,.swagger-ui .hover-dark-gray:hover {\n    color: #333\n}\n\n.swagger-ui .hover-mid-gray:focus,.swagger-ui .hover-mid-gray:hover {\n    color: #555\n}\n\n.swagger-ui .hover-gray:focus,.swagger-ui .hover-gray:hover {\n    color: #777\n}\n\n.swagger-ui .hover-silver:focus,.swagger-ui .hover-silver:hover {\n    color: #999\n}\n\n.swagger-ui .hover-light-silver:focus,.swagger-ui .hover-light-silver:hover {\n    color: #aaa\n}\n\n.swagger-ui .hover-moon-gray:focus,.swagger-ui .hover-moon-gray:hover {\n    color: #ccc\n}\n\n.swagger-ui .hover-light-gray:focus,.swagger-ui .hover-light-gray:hover {\n    color: #eee\n}\n\n.swagger-ui .hover-near-white:focus,.swagger-ui .hover-near-white:hover {\n    color: #f4f4f4\n}\n\n.swagger-ui .hover-white:focus,.swagger-ui .hover-white:hover {\n    color: #fff\n}\n\n.swagger-ui .hover-black-90:focus,.swagger-ui .hover-black-90:hover {\n    color: rgba(0,0,0,.9)\n}\n\n.swagger-ui .hover-black-80:focus,.swagger-ui .hover-black-80:hover {\n    color: rgba(0,0,0,.8)\n}\n\n.swagger-ui .hover-black-70:focus,.swagger-ui .hover-black-70:hover {\n    color: rgba(0,0,0,.7)\n}\n\n.swagger-ui .hover-black-60:focus,.swagger-ui .hover-black-60:hover {\n    color: rgba(0,0,0,.6)\n}\n\n.swagger-ui .hover-black-50:focus,.swagger-ui .hover-black-50:hover {\n    color: rgba(0,0,0,.5)\n}\n\n.swagger-ui .hover-black-40:focus,.swagger-ui .hover-black-40:hover {\n    color: rgba(0,0,0,.4)\n}\n\n.swagger-ui .hover-black-30:focus,.swagger-ui .hover-black-30:hover {\n    color: rgba(0,0,0,.3)\n}\n\n.swagger-ui .hover-black-20:focus,.swagger-ui .hover-black-20:hover {\n    color: rgba(0,0,0,.2)\n}\n\n.swagger-ui .hover-black-10:focus,.swagger-ui .hover-black-10:hover {\n    color: rgba(0,0,0,.1)\n}\n\n.swagger-ui .hover-white-90:focus,.swagger-ui .hover-white-90:hover {\n    color: hsla(0,0%,100%,.9)\n}\n\n.swagger-ui .hover-white-80:focus,.swagger-ui .hover-white-80:hover {\n    color: hsla(0,0%,100%,.8)\n}\n\n.swagger-ui .hover-white-70:focus,.swagger-ui .hover-white-70:hover {\n    color: hsla(0,0%,100%,.7)\n}\n\n.swagger-ui .hover-white-60:focus,.swagger-ui .hover-white-60:hover {\n    color: hsla(0,0%,100%,.6)\n}\n\n.swagger-ui .hover-white-50:focus,.swagger-ui .hover-white-50:hover {\n    color: hsla(0,0%,100%,.5)\n}\n\n.swagger-ui .hover-white-40:focus,.swagger-ui .hover-white-40:hover {\n    color: hsla(0,0%,100%,.4)\n}\n\n.swagger-ui .hover-white-30:focus,.swagger-ui .hover-white-30:hover {\n    color: hsla(0,0%,100%,.3)\n}\n\n.swagger-ui .hover-white-20:focus,.swagger-ui .hover-white-20:hover {\n    color: hsla(0,0%,100%,.2)\n}\n\n.swagger-ui .hover-white-10:focus,.swagger-ui .hover-white-10:hover {\n    color: hsla(0,0%,100%,.1)\n}\n\n.swagger-ui .hover-inherit:focus,.swagger-ui .hover-inherit:hover {\n    color: inherit\n}\n\n.swagger-ui .hover-bg-black:focus,.swagger-ui .hover-bg-black:hover {\n    background-color: #000\n}\n\n.swagger-ui .hover-bg-near-black:focus,.swagger-ui .hover-bg-near-black:hover {\n    background-color: #111\n}\n\n.swagger-ui .hover-bg-dark-gray:focus,.swagger-ui .hover-bg-dark-gray:hover {\n    background-color: #333\n}\n\n.swagger-ui .hover-bg-mid-gray:focus,.swagger-ui .hover-bg-mid-gray:hover {\n    background-color: #555\n}\n\n.swagger-ui .hover-bg-gray:focus,.swagger-ui .hover-bg-gray:hover {\n    background-color: #777\n}\n\n.swagger-ui .hover-bg-silver:focus,.swagger-ui .hover-bg-silver:hover {\n    background-color: #999\n}\n\n.swagger-ui .hover-bg-light-silver:focus,.swagger-ui .hover-bg-light-silver:hover {\n    background-color: #aaa\n}\n\n.swagger-ui .hover-bg-moon-gray:focus,.swagger-ui .hover-bg-moon-gray:hover {\n    background-color: #ccc\n}\n\n.swagger-ui .hover-bg-light-gray:focus,.swagger-ui .hover-bg-light-gray:hover {\n    background-color: #eee\n}\n\n.swagger-ui .hover-bg-near-white:focus,.swagger-ui .hover-bg-near-white:hover {\n    background-color: #f4f4f4\n}\n\n.swagger-ui .hover-bg-white:focus,.swagger-ui .hover-bg-white:hover {\n    background-color: #fff\n}\n\n.swagger-ui .hover-bg-transparent:focus,.swagger-ui .hover-bg-transparent:hover {\n    background-color: transparent\n}\n\n.swagger-ui .hover-bg-black-90:focus,.swagger-ui .hover-bg-black-90:hover {\n    background-color: rgba(0,0,0,.9)\n}\n\n.swagger-ui .hover-bg-black-80:focus,.swagger-ui .hover-bg-black-80:hover {\n    background-color: rgba(0,0,0,.8)\n}\n\n.swagger-ui .hover-bg-black-70:focus,.swagger-ui .hover-bg-black-70:hover {\n    background-color: rgba(0,0,0,.7)\n}\n\n.swagger-ui .hover-bg-black-60:focus,.swagger-ui .hover-bg-black-60:hover {\n    background-color: rgba(0,0,0,.6)\n}\n\n.swagger-ui .hover-bg-black-50:focus,.swagger-ui .hover-bg-black-50:hover {\n    background-color: rgba(0,0,0,.5)\n}\n\n.swagger-ui .hover-bg-black-40:focus,.swagger-ui .hover-bg-black-40:hover {\n    background-color: rgba(0,0,0,.4)\n}\n\n.swagger-ui .hover-bg-black-30:focus,.swagger-ui .hover-bg-black-30:hover {\n    background-color: rgba(0,0,0,.3)\n}\n\n.swagger-ui .hover-bg-black-20:focus,.swagger-ui .hover-bg-black-20:hover {\n    background-color: rgba(0,0,0,.2)\n}\n\n.swagger-ui .hover-bg-black-10:focus,.swagger-ui .hover-bg-black-10:hover {\n    background-color: rgba(0,0,0,.1)\n}\n\n.swagger-ui .hover-bg-white-90:focus,.swagger-ui .hover-bg-white-90:hover {\n    background-color: hsla(0,0%,100%,.9)\n}\n\n.swagger-ui .hover-bg-white-80:focus,.swagger-ui .hover-bg-white-80:hover {\n    background-color: hsla(0,0%,100%,.8)\n}\n\n.swagger-ui .hover-bg-white-70:focus,.swagger-ui .hover-bg-white-70:hover {\n    background-color: hsla(0,0%,100%,.7)\n}\n\n.swagger-ui .hover-bg-white-60:focus,.swagger-ui .hover-bg-white-60:hover {\n    background-color: hsla(0,0%,100%,.6)\n}\n\n.swagger-ui .hover-bg-white-50:focus,.swagger-ui .hover-bg-white-50:hover {\n    background-color: hsla(0,0%,100%,.5)\n}\n\n.swagger-ui .hover-bg-white-40:focus,.swagger-ui .hover-bg-white-40:hover {\n    background-color: hsla(0,0%,100%,.4)\n}\n\n.swagger-ui .hover-bg-white-30:focus,.swagger-ui .hover-bg-white-30:hover {\n    background-color: hsla(0,0%,100%,.3)\n}\n\n.swagger-ui .hover-bg-white-20:focus,.swagger-ui .hover-bg-white-20:hover {\n    background-color: hsla(0,0%,100%,.2)\n}\n\n.swagger-ui .hover-bg-white-10:focus,.swagger-ui .hover-bg-white-10:hover {\n    background-color: hsla(0,0%,100%,.1)\n}\n\n.swagger-ui .hover-dark-red:focus,.swagger-ui .hover-dark-red:hover {\n    color: #e7040f\n}\n\n.swagger-ui .hover-red:focus,.swagger-ui .hover-red:hover {\n    color: #ff4136\n}\n\n.swagger-ui .hover-light-red:focus,.swagger-ui .hover-light-red:hover {\n    color: #ff725c\n}\n\n.swagger-ui .hover-orange:focus,.swagger-ui .hover-orange:hover {\n    color: #ff6300\n}\n\n.swagger-ui .hover-gold:focus,.swagger-ui .hover-gold:hover {\n    color: #ffb700\n}\n\n.swagger-ui .hover-yellow:focus,.swagger-ui .hover-yellow:hover {\n    color: gold\n}\n\n.swagger-ui .hover-light-yellow:focus,.swagger-ui .hover-light-yellow:hover {\n    color: #fbf1a9\n}\n\n.swagger-ui .hover-purple:focus,.swagger-ui .hover-purple:hover {\n    color: #5e2ca5\n}\n\n.swagger-ui .hover-light-purple:focus,.swagger-ui .hover-light-purple:hover {\n    color: #a463f2\n}\n\n.swagger-ui .hover-dark-pink:focus,.swagger-ui .hover-dark-pink:hover {\n    color: #d5008f\n}\n\n.swagger-ui .hover-hot-pink:focus,.swagger-ui .hover-hot-pink:hover {\n    color: #ff41b4\n}\n\n.swagger-ui .hover-pink:focus,.swagger-ui .hover-pink:hover {\n    color: #ff80cc\n}\n\n.swagger-ui .hover-light-pink:focus,.swagger-ui .hover-light-pink:hover {\n    color: #ffa3d7\n}\n\n.swagger-ui .hover-dark-green:focus,.swagger-ui .hover-dark-green:hover {\n    color: #137752\n}\n\n.swagger-ui .hover-green:focus,.swagger-ui .hover-green:hover {\n    color: #19a974\n}\n\n.swagger-ui .hover-light-green:focus,.swagger-ui .hover-light-green:hover {\n    color: #9eebcf\n}\n\n.swagger-ui .hover-navy:focus,.swagger-ui .hover-navy:hover {\n    color: #001b44\n}\n\n.swagger-ui .hover-dark-blue:focus,.swagger-ui .hover-dark-blue:hover {\n    color: #00449e\n}\n\n.swagger-ui .hover-blue:focus,.swagger-ui .hover-blue:hover {\n    color: #357edd\n}\n\n.swagger-ui .hover-light-blue:focus,.swagger-ui .hover-light-blue:hover {\n    color: #96ccff\n}\n\n.swagger-ui .hover-lightest-blue:focus,.swagger-ui .hover-lightest-blue:hover {\n    color: #cdecff\n}\n\n.swagger-ui .hover-washed-blue:focus,.swagger-ui .hover-washed-blue:hover {\n    color: #f6fffe\n}\n\n.swagger-ui .hover-washed-green:focus,.swagger-ui .hover-washed-green:hover {\n    color: #e8fdf5\n}\n\n.swagger-ui .hover-washed-yellow:focus,.swagger-ui .hover-washed-yellow:hover {\n    color: #fffceb\n}\n\n.swagger-ui .hover-washed-red:focus,.swagger-ui .hover-washed-red:hover {\n    color: #ffdfdf\n}\n\n.swagger-ui .hover-bg-dark-red:focus,.swagger-ui .hover-bg-dark-red:hover {\n    background-color: #e7040f\n}\n\n.swagger-ui .hover-bg-red:focus,.swagger-ui .hover-bg-red:hover {\n    background-color: #ff4136\n}\n\n.swagger-ui .hover-bg-light-red:focus,.swagger-ui .hover-bg-light-red:hover {\n    background-color: #ff725c\n}\n\n.swagger-ui .hover-bg-orange:focus,.swagger-ui .hover-bg-orange:hover {\n    background-color: #ff6300\n}\n\n.swagger-ui .hover-bg-gold:focus,.swagger-ui .hover-bg-gold:hover {\n    background-color: #ffb700\n}\n\n.swagger-ui .hover-bg-yellow:focus,.swagger-ui .hover-bg-yellow:hover {\n    background-color: gold\n}\n\n.swagger-ui .hover-bg-light-yellow:focus,.swagger-ui .hover-bg-light-yellow:hover {\n    background-color: #fbf1a9\n}\n\n.swagger-ui .hover-bg-purple:focus,.swagger-ui .hover-bg-purple:hover {\n    background-color: #5e2ca5\n}\n\n.swagger-ui .hover-bg-light-purple:focus,.swagger-ui .hover-bg-light-purple:hover {\n    background-color: #a463f2\n}\n\n.swagger-ui .hover-bg-dark-pink:focus,.swagger-ui .hover-bg-dark-pink:hover {\n    background-color: #d5008f\n}\n\n.swagger-ui .hover-bg-hot-pink:focus,.swagger-ui .hover-bg-hot-pink:hover {\n    background-color: #ff41b4\n}\n\n.swagger-ui .hover-bg-pink:focus,.swagger-ui .hover-bg-pink:hover {\n    background-color: #ff80cc\n}\n\n.swagger-ui .hover-bg-light-pink:focus,.swagger-ui .hover-bg-light-pink:hover {\n    background-color: #ffa3d7\n}\n\n.swagger-ui .hover-bg-dark-green:focus,.swagger-ui .hover-bg-dark-green:hover {\n    background-color: #137752\n}\n\n.swagger-ui .hover-bg-green:focus,.swagger-ui .hover-bg-green:hover {\n    background-color: #19a974\n}\n\n.swagger-ui .hover-bg-light-green:focus,.swagger-ui .hover-bg-light-green:hover {\n    background-color: #9eebcf\n}\n\n.swagger-ui .hover-bg-navy:focus,.swagger-ui .hover-bg-navy:hover {\n    background-color: #001b44\n}\n\n.swagger-ui .hover-bg-dark-blue:focus,.swagger-ui .hover-bg-dark-blue:hover {\n    background-color: #00449e\n}\n\n.swagger-ui .hover-bg-blue:focus,.swagger-ui .hover-bg-blue:hover {\n    background-color: #357edd\n}\n\n.swagger-ui .hover-bg-light-blue:focus,.swagger-ui .hover-bg-light-blue:hover {\n    background-color: #96ccff\n}\n\n.swagger-ui .hover-bg-lightest-blue:focus,.swagger-ui .hover-bg-lightest-blue:hover {\n    background-color: #cdecff\n}\n\n.swagger-ui .hover-bg-washed-blue:focus,.swagger-ui .hover-bg-washed-blue:hover {\n    background-color: #f6fffe\n}\n\n.swagger-ui .hover-bg-washed-green:focus,.swagger-ui .hover-bg-washed-green:hover {\n    background-color: #e8fdf5\n}\n\n.swagger-ui .hover-bg-washed-yellow:focus,.swagger-ui .hover-bg-washed-yellow:hover {\n    background-color: #fffceb\n}\n\n.swagger-ui .hover-bg-washed-red:focus,.swagger-ui .hover-bg-washed-red:hover {\n    background-color: #ffdfdf\n}\n\n.swagger-ui .hover-bg-inherit:focus,.swagger-ui .hover-bg-inherit:hover {\n    background-color: inherit\n}\n\n.swagger-ui .pa0 {\n    padding: 0\n}\n\n.swagger-ui .pa1 {\n    padding: .25rem\n}\n\n.swagger-ui .pa2 {\n    padding: .5rem\n}\n\n.swagger-ui .pa3 {\n    padding: 1rem\n}\n\n.swagger-ui .pa4 {\n    padding: 2rem\n}\n\n.swagger-ui .pa5 {\n    padding: 4rem\n}\n\n.swagger-ui .pa6 {\n    padding: 8rem\n}\n\n.swagger-ui .pa7 {\n    padding: 16rem\n}\n\n.swagger-ui .pl0 {\n    padding-left: 0\n}\n\n.swagger-ui .pl1 {\n    padding-left: .25rem\n}\n\n.swagger-ui .pl2 {\n    padding-left: .5rem\n}\n\n.swagger-ui .pl3 {\n    padding-left: 1rem\n}\n\n.swagger-ui .pl4 {\n    padding-left: 2rem\n}\n\n.swagger-ui .pl5 {\n    padding-left: 4rem\n}\n\n.swagger-ui .pl6 {\n    padding-left: 8rem\n}\n\n.swagger-ui .pl7 {\n    padding-left: 16rem\n}\n\n.swagger-ui .pr0 {\n    padding-right: 0\n}\n\n.swagger-ui .pr1 {\n    padding-right: .25rem\n}\n\n.swagger-ui .pr2 {\n    padding-right: .5rem\n}\n\n.swagger-ui .pr3 {\n    padding-right: 1rem\n}\n\n.swagger-ui .pr4 {\n    padding-right: 2rem\n}\n\n.swagger-ui .pr5 {\n    padding-right: 4rem\n}\n\n.swagger-ui .pr6 {\n    padding-right: 8rem\n}\n\n.swagger-ui .pr7 {\n    padding-right: 16rem\n}\n\n.swagger-ui .pb0 {\n    padding-bottom: 0\n}\n\n.swagger-ui .pb1 {\n    padding-bottom: .25rem\n}\n\n.swagger-ui .pb2 {\n    padding-bottom: .5rem\n}\n\n.swagger-ui .pb3 {\n    padding-bottom: 1rem\n}\n\n.swagger-ui .pb4 {\n    padding-bottom: 2rem\n}\n\n.swagger-ui .pb5 {\n    padding-bottom: 4rem\n}\n\n.swagger-ui .pb6 {\n    padding-bottom: 8rem\n}\n\n.swagger-ui .pb7 {\n    padding-bottom: 16rem\n}\n\n.swagger-ui .pt0 {\n    padding-top: 0\n}\n\n.swagger-ui .pt1 {\n    padding-top: .25rem\n}\n\n.swagger-ui .pt2 {\n    padding-top: .5rem\n}\n\n.swagger-ui .pt3 {\n    padding-top: 1rem\n}\n\n.swagger-ui .pt4 {\n    padding-top: 2rem\n}\n\n.swagger-ui .pt5 {\n    padding-top: 4rem\n}\n\n.swagger-ui .pt6 {\n    padding-top: 8rem\n}\n\n.swagger-ui .pt7 {\n    padding-top: 16rem\n}\n\n.swagger-ui .pv0 {\n    padding-bottom: 0;\n    padding-top: 0\n}\n\n.swagger-ui .pv1 {\n    padding-bottom: .25rem;\n    padding-top: .25rem\n}\n\n.swagger-ui .pv2 {\n    padding-bottom: .5rem;\n    padding-top: .5rem\n}\n\n.swagger-ui .pv3 {\n    padding-bottom: 1rem;\n    padding-top: 1rem\n}\n\n.swagger-ui .pv4 {\n    padding-bottom: 2rem;\n    padding-top: 2rem\n}\n\n.swagger-ui .pv5 {\n    padding-bottom: 4rem;\n    padding-top: 4rem\n}\n\n.swagger-ui .pv6 {\n    padding-bottom: 8rem;\n    padding-top: 8rem\n}\n\n.swagger-ui .pv7 {\n    padding-bottom: 16rem;\n    padding-top: 16rem\n}\n\n.swagger-ui .ph0 {\n    padding-left: 0;\n    padding-right: 0\n}\n\n.swagger-ui .ph1 {\n    padding-left: .25rem;\n    padding-right: .25rem\n}\n\n.swagger-ui .ph2 {\n    padding-left: .5rem;\n    padding-right: .5rem\n}\n\n.swagger-ui .ph3 {\n    padding-left: 1rem;\n    padding-right: 1rem\n}\n\n.swagger-ui .ph4 {\n    padding-left: 2rem;\n    padding-right: 2rem\n}\n\n.swagger-ui .ph5 {\n    padding-left: 4rem;\n    padding-right: 4rem\n}\n\n.swagger-ui .ph6 {\n    padding-left: 8rem;\n    padding-right: 8rem\n}\n\n.swagger-ui .ph7 {\n    padding-left: 16rem;\n    padding-right: 16rem\n}\n\n.swagger-ui .ma0 {\n    margin: 0\n}\n\n.swagger-ui .ma1 {\n    margin: .25rem\n}\n\n.swagger-ui .ma2 {\n    margin: .5rem\n}\n\n.swagger-ui .ma3 {\n    margin: 1rem\n}\n\n.swagger-ui .ma4 {\n    margin: 2rem\n}\n\n.swagger-ui .ma5 {\n    margin: 4rem\n}\n\n.swagger-ui .ma6 {\n    margin: 8rem\n}\n\n.swagger-ui .ma7 {\n    margin: 16rem\n}\n\n.swagger-ui .ml0 {\n    margin-left: 0\n}\n\n.swagger-ui .ml1 {\n    margin-left: .25rem\n}\n\n.swagger-ui .ml2 {\n    margin-left: .5rem\n}\n\n.swagger-ui .ml3 {\n    margin-left: 1rem\n}\n\n.swagger-ui .ml4 {\n    margin-left: 2rem\n}\n\n.swagger-ui .ml5 {\n    margin-left: 4rem\n}\n\n.swagger-ui .ml6 {\n    margin-left: 8rem\n}\n\n.swagger-ui .ml7 {\n    margin-left: 16rem\n}\n\n.swagger-ui .mr0 {\n    margin-right: 0\n}\n\n.swagger-ui .mr1 {\n    margin-right: .25rem\n}\n\n.swagger-ui .mr2 {\n    margin-right: .5rem\n}\n\n.swagger-ui .mr3 {\n    margin-right: 1rem\n}\n\n.swagger-ui .mr4 {\n    margin-right: 2rem\n}\n\n.swagger-ui .mr5 {\n    margin-right: 4rem\n}\n\n.swagger-ui .mr6 {\n    margin-right: 8rem\n}\n\n.swagger-ui .mr7 {\n    margin-right: 16rem\n}\n\n.swagger-ui .mb0 {\n    margin-bottom: 0\n}\n\n.swagger-ui .mb1 {\n    margin-bottom: .25rem\n}\n\n.swagger-ui .mb2 {\n    margin-bottom: .5rem\n}\n\n.swagger-ui .mb3 {\n    margin-bottom: 1rem\n}\n\n.swagger-ui .mb4 {\n    margin-bottom: 2rem\n}\n\n.swagger-ui .mb5 {\n    margin-bottom: 4rem\n}\n\n.swagger-ui .mb6 {\n    margin-bottom: 8rem\n}\n\n.swagger-ui .mb7 {\n    margin-bottom: 16rem\n}\n\n.swagger-ui .mt0 {\n    margin-top: 0\n}\n\n.swagger-ui .mt1 {\n    margin-top: .25rem\n}\n\n.swagger-ui .mt2 {\n    margin-top: .5rem\n}\n\n.swagger-ui .mt3 {\n    margin-top: 1rem\n}\n\n.swagger-ui .mt4 {\n    margin-top: 2rem\n}\n\n.swagger-ui .mt5 {\n    margin-top: 4rem\n}\n\n.swagger-ui .mt6 {\n    margin-top: 8rem\n}\n\n.swagger-ui .mt7 {\n    margin-top: 16rem\n}\n\n.swagger-ui .mv0 {\n    margin-bottom: 0;\n    margin-top: 0\n}\n\n.swagger-ui .mv1 {\n    margin-bottom: .25rem;\n    margin-top: .25rem\n}\n\n.swagger-ui .mv2 {\n    margin-bottom: .5rem;\n    margin-top: .5rem\n}\n\n.swagger-ui .mv3 {\n    margin-bottom: 1rem;\n    margin-top: 1rem\n}\n\n.swagger-ui .mv4 {\n    margin-bottom: 2rem;\n    margin-top: 2rem\n}\n\n.swagger-ui .mv5 {\n    margin-bottom: 4rem;\n    margin-top: 4rem\n}\n\n.swagger-ui .mv6 {\n    margin-bottom: 8rem;\n    margin-top: 8rem\n}\n\n.swagger-ui .mv7 {\n    margin-bottom: 16rem;\n    margin-top: 16rem\n}\n\n.swagger-ui .mh0 {\n    margin-left: 0;\n    margin-right: 0\n}\n\n.swagger-ui .mh1 {\n    margin-left: .25rem;\n    margin-right: .25rem\n}\n\n.swagger-ui .mh2 {\n    margin-left: .5rem;\n    margin-right: .5rem\n}\n\n.swagger-ui .mh3 {\n    margin-left: 1rem;\n    margin-right: 1rem\n}\n\n.swagger-ui .mh4 {\n    margin-left: 2rem;\n    margin-right: 2rem\n}\n\n.swagger-ui .mh5 {\n    margin-left: 4rem;\n    margin-right: 4rem\n}\n\n.swagger-ui .mh6 {\n    margin-left: 8rem;\n    margin-right: 8rem\n}\n\n.swagger-ui .mh7 {\n    margin-left: 16rem;\n    margin-right: 16rem\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .pa0-ns {\n        padding:0\n    }\n\n    .swagger-ui .pa1-ns {\n        padding: .25rem\n    }\n\n    .swagger-ui .pa2-ns {\n        padding: .5rem\n    }\n\n    .swagger-ui .pa3-ns {\n        padding: 1rem\n    }\n\n    .swagger-ui .pa4-ns {\n        padding: 2rem\n    }\n\n    .swagger-ui .pa5-ns {\n        padding: 4rem\n    }\n\n    .swagger-ui .pa6-ns {\n        padding: 8rem\n    }\n\n    .swagger-ui .pa7-ns {\n        padding: 16rem\n    }\n\n    .swagger-ui .pl0-ns {\n        padding-left: 0\n    }\n\n    .swagger-ui .pl1-ns {\n        padding-left: .25rem\n    }\n\n    .swagger-ui .pl2-ns {\n        padding-left: .5rem\n    }\n\n    .swagger-ui .pl3-ns {\n        padding-left: 1rem\n    }\n\n    .swagger-ui .pl4-ns {\n        padding-left: 2rem\n    }\n\n    .swagger-ui .pl5-ns {\n        padding-left: 4rem\n    }\n\n    .swagger-ui .pl6-ns {\n        padding-left: 8rem\n    }\n\n    .swagger-ui .pl7-ns {\n        padding-left: 16rem\n    }\n\n    .swagger-ui .pr0-ns {\n        padding-right: 0\n    }\n\n    .swagger-ui .pr1-ns {\n        padding-right: .25rem\n    }\n\n    .swagger-ui .pr2-ns {\n        padding-right: .5rem\n    }\n\n    .swagger-ui .pr3-ns {\n        padding-right: 1rem\n    }\n\n    .swagger-ui .pr4-ns {\n        padding-right: 2rem\n    }\n\n    .swagger-ui .pr5-ns {\n        padding-right: 4rem\n    }\n\n    .swagger-ui .pr6-ns {\n        padding-right: 8rem\n    }\n\n    .swagger-ui .pr7-ns {\n        padding-right: 16rem\n    }\n\n    .swagger-ui .pb0-ns {\n        padding-bottom: 0\n    }\n\n    .swagger-ui .pb1-ns {\n        padding-bottom: .25rem\n    }\n\n    .swagger-ui .pb2-ns {\n        padding-bottom: .5rem\n    }\n\n    .swagger-ui .pb3-ns {\n        padding-bottom: 1rem\n    }\n\n    .swagger-ui .pb4-ns {\n        padding-bottom: 2rem\n    }\n\n    .swagger-ui .pb5-ns {\n        padding-bottom: 4rem\n    }\n\n    .swagger-ui .pb6-ns {\n        padding-bottom: 8rem\n    }\n\n    .swagger-ui .pb7-ns {\n        padding-bottom: 16rem\n    }\n\n    .swagger-ui .pt0-ns {\n        padding-top: 0\n    }\n\n    .swagger-ui .pt1-ns {\n        padding-top: .25rem\n    }\n\n    .swagger-ui .pt2-ns {\n        padding-top: .5rem\n    }\n\n    .swagger-ui .pt3-ns {\n        padding-top: 1rem\n    }\n\n    .swagger-ui .pt4-ns {\n        padding-top: 2rem\n    }\n\n    .swagger-ui .pt5-ns {\n        padding-top: 4rem\n    }\n\n    .swagger-ui .pt6-ns {\n        padding-top: 8rem\n    }\n\n    .swagger-ui .pt7-ns {\n        padding-top: 16rem\n    }\n\n    .swagger-ui .pv0-ns {\n        padding-bottom: 0;\n        padding-top: 0\n    }\n\n    .swagger-ui .pv1-ns {\n        padding-bottom: .25rem;\n        padding-top: .25rem\n    }\n\n    .swagger-ui .pv2-ns {\n        padding-bottom: .5rem;\n        padding-top: .5rem\n    }\n\n    .swagger-ui .pv3-ns {\n        padding-bottom: 1rem;\n        padding-top: 1rem\n    }\n\n    .swagger-ui .pv4-ns {\n        padding-bottom: 2rem;\n        padding-top: 2rem\n    }\n\n    .swagger-ui .pv5-ns {\n        padding-bottom: 4rem;\n        padding-top: 4rem\n    }\n\n    .swagger-ui .pv6-ns {\n        padding-bottom: 8rem;\n        padding-top: 8rem\n    }\n\n    .swagger-ui .pv7-ns {\n        padding-bottom: 16rem;\n        padding-top: 16rem\n    }\n\n    .swagger-ui .ph0-ns {\n        padding-left: 0;\n        padding-right: 0\n    }\n\n    .swagger-ui .ph1-ns {\n        padding-left: .25rem;\n        padding-right: .25rem\n    }\n\n    .swagger-ui .ph2-ns {\n        padding-left: .5rem;\n        padding-right: .5rem\n    }\n\n    .swagger-ui .ph3-ns {\n        padding-left: 1rem;\n        padding-right: 1rem\n    }\n\n    .swagger-ui .ph4-ns {\n        padding-left: 2rem;\n        padding-right: 2rem\n    }\n\n    .swagger-ui .ph5-ns {\n        padding-left: 4rem;\n        padding-right: 4rem\n    }\n\n    .swagger-ui .ph6-ns {\n        padding-left: 8rem;\n        padding-right: 8rem\n    }\n\n    .swagger-ui .ph7-ns {\n        padding-left: 16rem;\n        padding-right: 16rem\n    }\n\n    .swagger-ui .ma0-ns {\n        margin: 0\n    }\n\n    .swagger-ui .ma1-ns {\n        margin: .25rem\n    }\n\n    .swagger-ui .ma2-ns {\n        margin: .5rem\n    }\n\n    .swagger-ui .ma3-ns {\n        margin: 1rem\n    }\n\n    .swagger-ui .ma4-ns {\n        margin: 2rem\n    }\n\n    .swagger-ui .ma5-ns {\n        margin: 4rem\n    }\n\n    .swagger-ui .ma6-ns {\n        margin: 8rem\n    }\n\n    .swagger-ui .ma7-ns {\n        margin: 16rem\n    }\n\n    .swagger-ui .ml0-ns {\n        margin-left: 0\n    }\n\n    .swagger-ui .ml1-ns {\n        margin-left: .25rem\n    }\n\n    .swagger-ui .ml2-ns {\n        margin-left: .5rem\n    }\n\n    .swagger-ui .ml3-ns {\n        margin-left: 1rem\n    }\n\n    .swagger-ui .ml4-ns {\n        margin-left: 2rem\n    }\n\n    .swagger-ui .ml5-ns {\n        margin-left: 4rem\n    }\n\n    .swagger-ui .ml6-ns {\n        margin-left: 8rem\n    }\n\n    .swagger-ui .ml7-ns {\n        margin-left: 16rem\n    }\n\n    .swagger-ui .mr0-ns {\n        margin-right: 0\n    }\n\n    .swagger-ui .mr1-ns {\n        margin-right: .25rem\n    }\n\n    .swagger-ui .mr2-ns {\n        margin-right: .5rem\n    }\n\n    .swagger-ui .mr3-ns {\n        margin-right: 1rem\n    }\n\n    .swagger-ui .mr4-ns {\n        margin-right: 2rem\n    }\n\n    .swagger-ui .mr5-ns {\n        margin-right: 4rem\n    }\n\n    .swagger-ui .mr6-ns {\n        margin-right: 8rem\n    }\n\n    .swagger-ui .mr7-ns {\n        margin-right: 16rem\n    }\n\n    .swagger-ui .mb0-ns {\n        margin-bottom: 0\n    }\n\n    .swagger-ui .mb1-ns {\n        margin-bottom: .25rem\n    }\n\n    .swagger-ui .mb2-ns {\n        margin-bottom: .5rem\n    }\n\n    .swagger-ui .mb3-ns {\n        margin-bottom: 1rem\n    }\n\n    .swagger-ui .mb4-ns {\n        margin-bottom: 2rem\n    }\n\n    .swagger-ui .mb5-ns {\n        margin-bottom: 4rem\n    }\n\n    .swagger-ui .mb6-ns {\n        margin-bottom: 8rem\n    }\n\n    .swagger-ui .mb7-ns {\n        margin-bottom: 16rem\n    }\n\n    .swagger-ui .mt0-ns {\n        margin-top: 0\n    }\n\n    .swagger-ui .mt1-ns {\n        margin-top: .25rem\n    }\n\n    .swagger-ui .mt2-ns {\n        margin-top: .5rem\n    }\n\n    .swagger-ui .mt3-ns {\n        margin-top: 1rem\n    }\n\n    .swagger-ui .mt4-ns {\n        margin-top: 2rem\n    }\n\n    .swagger-ui .mt5-ns {\n        margin-top: 4rem\n    }\n\n    .swagger-ui .mt6-ns {\n        margin-top: 8rem\n    }\n\n    .swagger-ui .mt7-ns {\n        margin-top: 16rem\n    }\n\n    .swagger-ui .mv0-ns {\n        margin-bottom: 0;\n        margin-top: 0\n    }\n\n    .swagger-ui .mv1-ns {\n        margin-bottom: .25rem;\n        margin-top: .25rem\n    }\n\n    .swagger-ui .mv2-ns {\n        margin-bottom: .5rem;\n        margin-top: .5rem\n    }\n\n    .swagger-ui .mv3-ns {\n        margin-bottom: 1rem;\n        margin-top: 1rem\n    }\n\n    .swagger-ui .mv4-ns {\n        margin-bottom: 2rem;\n        margin-top: 2rem\n    }\n\n    .swagger-ui .mv5-ns {\n        margin-bottom: 4rem;\n        margin-top: 4rem\n    }\n\n    .swagger-ui .mv6-ns {\n        margin-bottom: 8rem;\n        margin-top: 8rem\n    }\n\n    .swagger-ui .mv7-ns {\n        margin-bottom: 16rem;\n        margin-top: 16rem\n    }\n\n    .swagger-ui .mh0-ns {\n        margin-left: 0;\n        margin-right: 0\n    }\n\n    .swagger-ui .mh1-ns {\n        margin-left: .25rem;\n        margin-right: .25rem\n    }\n\n    .swagger-ui .mh2-ns {\n        margin-left: .5rem;\n        margin-right: .5rem\n    }\n\n    .swagger-ui .mh3-ns {\n        margin-left: 1rem;\n        margin-right: 1rem\n    }\n\n    .swagger-ui .mh4-ns {\n        margin-left: 2rem;\n        margin-right: 2rem\n    }\n\n    .swagger-ui .mh5-ns {\n        margin-left: 4rem;\n        margin-right: 4rem\n    }\n\n    .swagger-ui .mh6-ns {\n        margin-left: 8rem;\n        margin-right: 8rem\n    }\n\n    .swagger-ui .mh7-ns {\n        margin-left: 16rem;\n        margin-right: 16rem\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .pa0-m {\n        padding:0\n    }\n\n    .swagger-ui .pa1-m {\n        padding: .25rem\n    }\n\n    .swagger-ui .pa2-m {\n        padding: .5rem\n    }\n\n    .swagger-ui .pa3-m {\n        padding: 1rem\n    }\n\n    .swagger-ui .pa4-m {\n        padding: 2rem\n    }\n\n    .swagger-ui .pa5-m {\n        padding: 4rem\n    }\n\n    .swagger-ui .pa6-m {\n        padding: 8rem\n    }\n\n    .swagger-ui .pa7-m {\n        padding: 16rem\n    }\n\n    .swagger-ui .pl0-m {\n        padding-left: 0\n    }\n\n    .swagger-ui .pl1-m {\n        padding-left: .25rem\n    }\n\n    .swagger-ui .pl2-m {\n        padding-left: .5rem\n    }\n\n    .swagger-ui .pl3-m {\n        padding-left: 1rem\n    }\n\n    .swagger-ui .pl4-m {\n        padding-left: 2rem\n    }\n\n    .swagger-ui .pl5-m {\n        padding-left: 4rem\n    }\n\n    .swagger-ui .pl6-m {\n        padding-left: 8rem\n    }\n\n    .swagger-ui .pl7-m {\n        padding-left: 16rem\n    }\n\n    .swagger-ui .pr0-m {\n        padding-right: 0\n    }\n\n    .swagger-ui .pr1-m {\n        padding-right: .25rem\n    }\n\n    .swagger-ui .pr2-m {\n        padding-right: .5rem\n    }\n\n    .swagger-ui .pr3-m {\n        padding-right: 1rem\n    }\n\n    .swagger-ui .pr4-m {\n        padding-right: 2rem\n    }\n\n    .swagger-ui .pr5-m {\n        padding-right: 4rem\n    }\n\n    .swagger-ui .pr6-m {\n        padding-right: 8rem\n    }\n\n    .swagger-ui .pr7-m {\n        padding-right: 16rem\n    }\n\n    .swagger-ui .pb0-m {\n        padding-bottom: 0\n    }\n\n    .swagger-ui .pb1-m {\n        padding-bottom: .25rem\n    }\n\n    .swagger-ui .pb2-m {\n        padding-bottom: .5rem\n    }\n\n    .swagger-ui .pb3-m {\n        padding-bottom: 1rem\n    }\n\n    .swagger-ui .pb4-m {\n        padding-bottom: 2rem\n    }\n\n    .swagger-ui .pb5-m {\n        padding-bottom: 4rem\n    }\n\n    .swagger-ui .pb6-m {\n        padding-bottom: 8rem\n    }\n\n    .swagger-ui .pb7-m {\n        padding-bottom: 16rem\n    }\n\n    .swagger-ui .pt0-m {\n        padding-top: 0\n    }\n\n    .swagger-ui .pt1-m {\n        padding-top: .25rem\n    }\n\n    .swagger-ui .pt2-m {\n        padding-top: .5rem\n    }\n\n    .swagger-ui .pt3-m {\n        padding-top: 1rem\n    }\n\n    .swagger-ui .pt4-m {\n        padding-top: 2rem\n    }\n\n    .swagger-ui .pt5-m {\n        padding-top: 4rem\n    }\n\n    .swagger-ui .pt6-m {\n        padding-top: 8rem\n    }\n\n    .swagger-ui .pt7-m {\n        padding-top: 16rem\n    }\n\n    .swagger-ui .pv0-m {\n        padding-bottom: 0;\n        padding-top: 0\n    }\n\n    .swagger-ui .pv1-m {\n        padding-bottom: .25rem;\n        padding-top: .25rem\n    }\n\n    .swagger-ui .pv2-m {\n        padding-bottom: .5rem;\n        padding-top: .5rem\n    }\n\n    .swagger-ui .pv3-m {\n        padding-bottom: 1rem;\n        padding-top: 1rem\n    }\n\n    .swagger-ui .pv4-m {\n        padding-bottom: 2rem;\n        padding-top: 2rem\n    }\n\n    .swagger-ui .pv5-m {\n        padding-bottom: 4rem;\n        padding-top: 4rem\n    }\n\n    .swagger-ui .pv6-m {\n        padding-bottom: 8rem;\n        padding-top: 8rem\n    }\n\n    .swagger-ui .pv7-m {\n        padding-bottom: 16rem;\n        padding-top: 16rem\n    }\n\n    .swagger-ui .ph0-m {\n        padding-left: 0;\n        padding-right: 0\n    }\n\n    .swagger-ui .ph1-m {\n        padding-left: .25rem;\n        padding-right: .25rem\n    }\n\n    .swagger-ui .ph2-m {\n        padding-left: .5rem;\n        padding-right: .5rem\n    }\n\n    .swagger-ui .ph3-m {\n        padding-left: 1rem;\n        padding-right: 1rem\n    }\n\n    .swagger-ui .ph4-m {\n        padding-left: 2rem;\n        padding-right: 2rem\n    }\n\n    .swagger-ui .ph5-m {\n        padding-left: 4rem;\n        padding-right: 4rem\n    }\n\n    .swagger-ui .ph6-m {\n        padding-left: 8rem;\n        padding-right: 8rem\n    }\n\n    .swagger-ui .ph7-m {\n        padding-left: 16rem;\n        padding-right: 16rem\n    }\n\n    .swagger-ui .ma0-m {\n        margin: 0\n    }\n\n    .swagger-ui .ma1-m {\n        margin: .25rem\n    }\n\n    .swagger-ui .ma2-m {\n        margin: .5rem\n    }\n\n    .swagger-ui .ma3-m {\n        margin: 1rem\n    }\n\n    .swagger-ui .ma4-m {\n        margin: 2rem\n    }\n\n    .swagger-ui .ma5-m {\n        margin: 4rem\n    }\n\n    .swagger-ui .ma6-m {\n        margin: 8rem\n    }\n\n    .swagger-ui .ma7-m {\n        margin: 16rem\n    }\n\n    .swagger-ui .ml0-m {\n        margin-left: 0\n    }\n\n    .swagger-ui .ml1-m {\n        margin-left: .25rem\n    }\n\n    .swagger-ui .ml2-m {\n        margin-left: .5rem\n    }\n\n    .swagger-ui .ml3-m {\n        margin-left: 1rem\n    }\n\n    .swagger-ui .ml4-m {\n        margin-left: 2rem\n    }\n\n    .swagger-ui .ml5-m {\n        margin-left: 4rem\n    }\n\n    .swagger-ui .ml6-m {\n        margin-left: 8rem\n    }\n\n    .swagger-ui .ml7-m {\n        margin-left: 16rem\n    }\n\n    .swagger-ui .mr0-m {\n        margin-right: 0\n    }\n\n    .swagger-ui .mr1-m {\n        margin-right: .25rem\n    }\n\n    .swagger-ui .mr2-m {\n        margin-right: .5rem\n    }\n\n    .swagger-ui .mr3-m {\n        margin-right: 1rem\n    }\n\n    .swagger-ui .mr4-m {\n        margin-right: 2rem\n    }\n\n    .swagger-ui .mr5-m {\n        margin-right: 4rem\n    }\n\n    .swagger-ui .mr6-m {\n        margin-right: 8rem\n    }\n\n    .swagger-ui .mr7-m {\n        margin-right: 16rem\n    }\n\n    .swagger-ui .mb0-m {\n        margin-bottom: 0\n    }\n\n    .swagger-ui .mb1-m {\n        margin-bottom: .25rem\n    }\n\n    .swagger-ui .mb2-m {\n        margin-bottom: .5rem\n    }\n\n    .swagger-ui .mb3-m {\n        margin-bottom: 1rem\n    }\n\n    .swagger-ui .mb4-m {\n        margin-bottom: 2rem\n    }\n\n    .swagger-ui .mb5-m {\n        margin-bottom: 4rem\n    }\n\n    .swagger-ui .mb6-m {\n        margin-bottom: 8rem\n    }\n\n    .swagger-ui .mb7-m {\n        margin-bottom: 16rem\n    }\n\n    .swagger-ui .mt0-m {\n        margin-top: 0\n    }\n\n    .swagger-ui .mt1-m {\n        margin-top: .25rem\n    }\n\n    .swagger-ui .mt2-m {\n        margin-top: .5rem\n    }\n\n    .swagger-ui .mt3-m {\n        margin-top: 1rem\n    }\n\n    .swagger-ui .mt4-m {\n        margin-top: 2rem\n    }\n\n    .swagger-ui .mt5-m {\n        margin-top: 4rem\n    }\n\n    .swagger-ui .mt6-m {\n        margin-top: 8rem\n    }\n\n    .swagger-ui .mt7-m {\n        margin-top: 16rem\n    }\n\n    .swagger-ui .mv0-m {\n        margin-bottom: 0;\n        margin-top: 0\n    }\n\n    .swagger-ui .mv1-m {\n        margin-bottom: .25rem;\n        margin-top: .25rem\n    }\n\n    .swagger-ui .mv2-m {\n        margin-bottom: .5rem;\n        margin-top: .5rem\n    }\n\n    .swagger-ui .mv3-m {\n        margin-bottom: 1rem;\n        margin-top: 1rem\n    }\n\n    .swagger-ui .mv4-m {\n        margin-bottom: 2rem;\n        margin-top: 2rem\n    }\n\n    .swagger-ui .mv5-m {\n        margin-bottom: 4rem;\n        margin-top: 4rem\n    }\n\n    .swagger-ui .mv6-m {\n        margin-bottom: 8rem;\n        margin-top: 8rem\n    }\n\n    .swagger-ui .mv7-m {\n        margin-bottom: 16rem;\n        margin-top: 16rem\n    }\n\n    .swagger-ui .mh0-m {\n        margin-left: 0;\n        margin-right: 0\n    }\n\n    .swagger-ui .mh1-m {\n        margin-left: .25rem;\n        margin-right: .25rem\n    }\n\n    .swagger-ui .mh2-m {\n        margin-left: .5rem;\n        margin-right: .5rem\n    }\n\n    .swagger-ui .mh3-m {\n        margin-left: 1rem;\n        margin-right: 1rem\n    }\n\n    .swagger-ui .mh4-m {\n        margin-left: 2rem;\n        margin-right: 2rem\n    }\n\n    .swagger-ui .mh5-m {\n        margin-left: 4rem;\n        margin-right: 4rem\n    }\n\n    .swagger-ui .mh6-m {\n        margin-left: 8rem;\n        margin-right: 8rem\n    }\n\n    .swagger-ui .mh7-m {\n        margin-left: 16rem;\n        margin-right: 16rem\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .pa0-l {\n        padding:0\n    }\n\n    .swagger-ui .pa1-l {\n        padding: .25rem\n    }\n\n    .swagger-ui .pa2-l {\n        padding: .5rem\n    }\n\n    .swagger-ui .pa3-l {\n        padding: 1rem\n    }\n\n    .swagger-ui .pa4-l {\n        padding: 2rem\n    }\n\n    .swagger-ui .pa5-l {\n        padding: 4rem\n    }\n\n    .swagger-ui .pa6-l {\n        padding: 8rem\n    }\n\n    .swagger-ui .pa7-l {\n        padding: 16rem\n    }\n\n    .swagger-ui .pl0-l {\n        padding-left: 0\n    }\n\n    .swagger-ui .pl1-l {\n        padding-left: .25rem\n    }\n\n    .swagger-ui .pl2-l {\n        padding-left: .5rem\n    }\n\n    .swagger-ui .pl3-l {\n        padding-left: 1rem\n    }\n\n    .swagger-ui .pl4-l {\n        padding-left: 2rem\n    }\n\n    .swagger-ui .pl5-l {\n        padding-left: 4rem\n    }\n\n    .swagger-ui .pl6-l {\n        padding-left: 8rem\n    }\n\n    .swagger-ui .pl7-l {\n        padding-left: 16rem\n    }\n\n    .swagger-ui .pr0-l {\n        padding-right: 0\n    }\n\n    .swagger-ui .pr1-l {\n        padding-right: .25rem\n    }\n\n    .swagger-ui .pr2-l {\n        padding-right: .5rem\n    }\n\n    .swagger-ui .pr3-l {\n        padding-right: 1rem\n    }\n\n    .swagger-ui .pr4-l {\n        padding-right: 2rem\n    }\n\n    .swagger-ui .pr5-l {\n        padding-right: 4rem\n    }\n\n    .swagger-ui .pr6-l {\n        padding-right: 8rem\n    }\n\n    .swagger-ui .pr7-l {\n        padding-right: 16rem\n    }\n\n    .swagger-ui .pb0-l {\n        padding-bottom: 0\n    }\n\n    .swagger-ui .pb1-l {\n        padding-bottom: .25rem\n    }\n\n    .swagger-ui .pb2-l {\n        padding-bottom: .5rem\n    }\n\n    .swagger-ui .pb3-l {\n        padding-bottom: 1rem\n    }\n\n    .swagger-ui .pb4-l {\n        padding-bottom: 2rem\n    }\n\n    .swagger-ui .pb5-l {\n        padding-bottom: 4rem\n    }\n\n    .swagger-ui .pb6-l {\n        padding-bottom: 8rem\n    }\n\n    .swagger-ui .pb7-l {\n        padding-bottom: 16rem\n    }\n\n    .swagger-ui .pt0-l {\n        padding-top: 0\n    }\n\n    .swagger-ui .pt1-l {\n        padding-top: .25rem\n    }\n\n    .swagger-ui .pt2-l {\n        padding-top: .5rem\n    }\n\n    .swagger-ui .pt3-l {\n        padding-top: 1rem\n    }\n\n    .swagger-ui .pt4-l {\n        padding-top: 2rem\n    }\n\n    .swagger-ui .pt5-l {\n        padding-top: 4rem\n    }\n\n    .swagger-ui .pt6-l {\n        padding-top: 8rem\n    }\n\n    .swagger-ui .pt7-l {\n        padding-top: 16rem\n    }\n\n    .swagger-ui .pv0-l {\n        padding-bottom: 0;\n        padding-top: 0\n    }\n\n    .swagger-ui .pv1-l {\n        padding-bottom: .25rem;\n        padding-top: .25rem\n    }\n\n    .swagger-ui .pv2-l {\n        padding-bottom: .5rem;\n        padding-top: .5rem\n    }\n\n    .swagger-ui .pv3-l {\n        padding-bottom: 1rem;\n        padding-top: 1rem\n    }\n\n    .swagger-ui .pv4-l {\n        padding-bottom: 2rem;\n        padding-top: 2rem\n    }\n\n    .swagger-ui .pv5-l {\n        padding-bottom: 4rem;\n        padding-top: 4rem\n    }\n\n    .swagger-ui .pv6-l {\n        padding-bottom: 8rem;\n        padding-top: 8rem\n    }\n\n    .swagger-ui .pv7-l {\n        padding-bottom: 16rem;\n        padding-top: 16rem\n    }\n\n    .swagger-ui .ph0-l {\n        padding-left: 0;\n        padding-right: 0\n    }\n\n    .swagger-ui .ph1-l {\n        padding-left: .25rem;\n        padding-right: .25rem\n    }\n\n    .swagger-ui .ph2-l {\n        padding-left: .5rem;\n        padding-right: .5rem\n    }\n\n    .swagger-ui .ph3-l {\n        padding-left: 1rem;\n        padding-right: 1rem\n    }\n\n    .swagger-ui .ph4-l {\n        padding-left: 2rem;\n        padding-right: 2rem\n    }\n\n    .swagger-ui .ph5-l {\n        padding-left: 4rem;\n        padding-right: 4rem\n    }\n\n    .swagger-ui .ph6-l {\n        padding-left: 8rem;\n        padding-right: 8rem\n    }\n\n    .swagger-ui .ph7-l {\n        padding-left: 16rem;\n        padding-right: 16rem\n    }\n\n    .swagger-ui .ma0-l {\n        margin: 0\n    }\n\n    .swagger-ui .ma1-l {\n        margin: .25rem\n    }\n\n    .swagger-ui .ma2-l {\n        margin: .5rem\n    }\n\n    .swagger-ui .ma3-l {\n        margin: 1rem\n    }\n\n    .swagger-ui .ma4-l {\n        margin: 2rem\n    }\n\n    .swagger-ui .ma5-l {\n        margin: 4rem\n    }\n\n    .swagger-ui .ma6-l {\n        margin: 8rem\n    }\n\n    .swagger-ui .ma7-l {\n        margin: 16rem\n    }\n\n    .swagger-ui .ml0-l {\n        margin-left: 0\n    }\n\n    .swagger-ui .ml1-l {\n        margin-left: .25rem\n    }\n\n    .swagger-ui .ml2-l {\n        margin-left: .5rem\n    }\n\n    .swagger-ui .ml3-l {\n        margin-left: 1rem\n    }\n\n    .swagger-ui .ml4-l {\n        margin-left: 2rem\n    }\n\n    .swagger-ui .ml5-l {\n        margin-left: 4rem\n    }\n\n    .swagger-ui .ml6-l {\n        margin-left: 8rem\n    }\n\n    .swagger-ui .ml7-l {\n        margin-left: 16rem\n    }\n\n    .swagger-ui .mr0-l {\n        margin-right: 0\n    }\n\n    .swagger-ui .mr1-l {\n        margin-right: .25rem\n    }\n\n    .swagger-ui .mr2-l {\n        margin-right: .5rem\n    }\n\n    .swagger-ui .mr3-l {\n        margin-right: 1rem\n    }\n\n    .swagger-ui .mr4-l {\n        margin-right: 2rem\n    }\n\n    .swagger-ui .mr5-l {\n        margin-right: 4rem\n    }\n\n    .swagger-ui .mr6-l {\n        margin-right: 8rem\n    }\n\n    .swagger-ui .mr7-l {\n        margin-right: 16rem\n    }\n\n    .swagger-ui .mb0-l {\n        margin-bottom: 0\n    }\n\n    .swagger-ui .mb1-l {\n        margin-bottom: .25rem\n    }\n\n    .swagger-ui .mb2-l {\n        margin-bottom: .5rem\n    }\n\n    .swagger-ui .mb3-l {\n        margin-bottom: 1rem\n    }\n\n    .swagger-ui .mb4-l {\n        margin-bottom: 2rem\n    }\n\n    .swagger-ui .mb5-l {\n        margin-bottom: 4rem\n    }\n\n    .swagger-ui .mb6-l {\n        margin-bottom: 8rem\n    }\n\n    .swagger-ui .mb7-l {\n        margin-bottom: 16rem\n    }\n\n    .swagger-ui .mt0-l {\n        margin-top: 0\n    }\n\n    .swagger-ui .mt1-l {\n        margin-top: .25rem\n    }\n\n    .swagger-ui .mt2-l {\n        margin-top: .5rem\n    }\n\n    .swagger-ui .mt3-l {\n        margin-top: 1rem\n    }\n\n    .swagger-ui .mt4-l {\n        margin-top: 2rem\n    }\n\n    .swagger-ui .mt5-l {\n        margin-top: 4rem\n    }\n\n    .swagger-ui .mt6-l {\n        margin-top: 8rem\n    }\n\n    .swagger-ui .mt7-l {\n        margin-top: 16rem\n    }\n\n    .swagger-ui .mv0-l {\n        margin-bottom: 0;\n        margin-top: 0\n    }\n\n    .swagger-ui .mv1-l {\n        margin-bottom: .25rem;\n        margin-top: .25rem\n    }\n\n    .swagger-ui .mv2-l {\n        margin-bottom: .5rem;\n        margin-top: .5rem\n    }\n\n    .swagger-ui .mv3-l {\n        margin-bottom: 1rem;\n        margin-top: 1rem\n    }\n\n    .swagger-ui .mv4-l {\n        margin-bottom: 2rem;\n        margin-top: 2rem\n    }\n\n    .swagger-ui .mv5-l {\n        margin-bottom: 4rem;\n        margin-top: 4rem\n    }\n\n    .swagger-ui .mv6-l {\n        margin-bottom: 8rem;\n        margin-top: 8rem\n    }\n\n    .swagger-ui .mv7-l {\n        margin-bottom: 16rem;\n        margin-top: 16rem\n    }\n\n    .swagger-ui .mh0-l {\n        margin-left: 0;\n        margin-right: 0\n    }\n\n    .swagger-ui .mh1-l {\n        margin-left: .25rem;\n        margin-right: .25rem\n    }\n\n    .swagger-ui .mh2-l {\n        margin-left: .5rem;\n        margin-right: .5rem\n    }\n\n    .swagger-ui .mh3-l {\n        margin-left: 1rem;\n        margin-right: 1rem\n    }\n\n    .swagger-ui .mh4-l {\n        margin-left: 2rem;\n        margin-right: 2rem\n    }\n\n    .swagger-ui .mh5-l {\n        margin-left: 4rem;\n        margin-right: 4rem\n    }\n\n    .swagger-ui .mh6-l {\n        margin-left: 8rem;\n        margin-right: 8rem\n    }\n\n    .swagger-ui .mh7-l {\n        margin-left: 16rem;\n        margin-right: 16rem\n    }\n}\n\n.swagger-ui .na1 {\n    margin: -.25rem\n}\n\n.swagger-ui .na2 {\n    margin: -.5rem\n}\n\n.swagger-ui .na3 {\n    margin: -1rem\n}\n\n.swagger-ui .na4 {\n    margin: -2rem\n}\n\n.swagger-ui .na5 {\n    margin: -4rem\n}\n\n.swagger-ui .na6 {\n    margin: -8rem\n}\n\n.swagger-ui .na7 {\n    margin: -16rem\n}\n\n.swagger-ui .nl1 {\n    margin-left: -.25rem\n}\n\n.swagger-ui .nl2 {\n    margin-left: -.5rem\n}\n\n.swagger-ui .nl3 {\n    margin-left: -1rem\n}\n\n.swagger-ui .nl4 {\n    margin-left: -2rem\n}\n\n.swagger-ui .nl5 {\n    margin-left: -4rem\n}\n\n.swagger-ui .nl6 {\n    margin-left: -8rem\n}\n\n.swagger-ui .nl7 {\n    margin-left: -16rem\n}\n\n.swagger-ui .nr1 {\n    margin-right: -.25rem\n}\n\n.swagger-ui .nr2 {\n    margin-right: -.5rem\n}\n\n.swagger-ui .nr3 {\n    margin-right: -1rem\n}\n\n.swagger-ui .nr4 {\n    margin-right: -2rem\n}\n\n.swagger-ui .nr5 {\n    margin-right: -4rem\n}\n\n.swagger-ui .nr6 {\n    margin-right: -8rem\n}\n\n.swagger-ui .nr7 {\n    margin-right: -16rem\n}\n\n.swagger-ui .nb1 {\n    margin-bottom: -.25rem\n}\n\n.swagger-ui .nb2 {\n    margin-bottom: -.5rem\n}\n\n.swagger-ui .nb3 {\n    margin-bottom: -1rem\n}\n\n.swagger-ui .nb4 {\n    margin-bottom: -2rem\n}\n\n.swagger-ui .nb5 {\n    margin-bottom: -4rem\n}\n\n.swagger-ui .nb6 {\n    margin-bottom: -8rem\n}\n\n.swagger-ui .nb7 {\n    margin-bottom: -16rem\n}\n\n.swagger-ui .nt1 {\n    margin-top: -.25rem\n}\n\n.swagger-ui .nt2 {\n    margin-top: -.5rem\n}\n\n.swagger-ui .nt3 {\n    margin-top: -1rem\n}\n\n.swagger-ui .nt4 {\n    margin-top: -2rem\n}\n\n.swagger-ui .nt5 {\n    margin-top: -4rem\n}\n\n.swagger-ui .nt6 {\n    margin-top: -8rem\n}\n\n.swagger-ui .nt7 {\n    margin-top: -16rem\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .na1-ns {\n        margin:-.25rem\n    }\n\n    .swagger-ui .na2-ns {\n        margin: -.5rem\n    }\n\n    .swagger-ui .na3-ns {\n        margin: -1rem\n    }\n\n    .swagger-ui .na4-ns {\n        margin: -2rem\n    }\n\n    .swagger-ui .na5-ns {\n        margin: -4rem\n    }\n\n    .swagger-ui .na6-ns {\n        margin: -8rem\n    }\n\n    .swagger-ui .na7-ns {\n        margin: -16rem\n    }\n\n    .swagger-ui .nl1-ns {\n        margin-left: -.25rem\n    }\n\n    .swagger-ui .nl2-ns {\n        margin-left: -.5rem\n    }\n\n    .swagger-ui .nl3-ns {\n        margin-left: -1rem\n    }\n\n    .swagger-ui .nl4-ns {\n        margin-left: -2rem\n    }\n\n    .swagger-ui .nl5-ns {\n        margin-left: -4rem\n    }\n\n    .swagger-ui .nl6-ns {\n        margin-left: -8rem\n    }\n\n    .swagger-ui .nl7-ns {\n        margin-left: -16rem\n    }\n\n    .swagger-ui .nr1-ns {\n        margin-right: -.25rem\n    }\n\n    .swagger-ui .nr2-ns {\n        margin-right: -.5rem\n    }\n\n    .swagger-ui .nr3-ns {\n        margin-right: -1rem\n    }\n\n    .swagger-ui .nr4-ns {\n        margin-right: -2rem\n    }\n\n    .swagger-ui .nr5-ns {\n        margin-right: -4rem\n    }\n\n    .swagger-ui .nr6-ns {\n        margin-right: -8rem\n    }\n\n    .swagger-ui .nr7-ns {\n        margin-right: -16rem\n    }\n\n    .swagger-ui .nb1-ns {\n        margin-bottom: -.25rem\n    }\n\n    .swagger-ui .nb2-ns {\n        margin-bottom: -.5rem\n    }\n\n    .swagger-ui .nb3-ns {\n        margin-bottom: -1rem\n    }\n\n    .swagger-ui .nb4-ns {\n        margin-bottom: -2rem\n    }\n\n    .swagger-ui .nb5-ns {\n        margin-bottom: -4rem\n    }\n\n    .swagger-ui .nb6-ns {\n        margin-bottom: -8rem\n    }\n\n    .swagger-ui .nb7-ns {\n        margin-bottom: -16rem\n    }\n\n    .swagger-ui .nt1-ns {\n        margin-top: -.25rem\n    }\n\n    .swagger-ui .nt2-ns {\n        margin-top: -.5rem\n    }\n\n    .swagger-ui .nt3-ns {\n        margin-top: -1rem\n    }\n\n    .swagger-ui .nt4-ns {\n        margin-top: -2rem\n    }\n\n    .swagger-ui .nt5-ns {\n        margin-top: -4rem\n    }\n\n    .swagger-ui .nt6-ns {\n        margin-top: -8rem\n    }\n\n    .swagger-ui .nt7-ns {\n        margin-top: -16rem\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .na1-m {\n        margin:-.25rem\n    }\n\n    .swagger-ui .na2-m {\n        margin: -.5rem\n    }\n\n    .swagger-ui .na3-m {\n        margin: -1rem\n    }\n\n    .swagger-ui .na4-m {\n        margin: -2rem\n    }\n\n    .swagger-ui .na5-m {\n        margin: -4rem\n    }\n\n    .swagger-ui .na6-m {\n        margin: -8rem\n    }\n\n    .swagger-ui .na7-m {\n        margin: -16rem\n    }\n\n    .swagger-ui .nl1-m {\n        margin-left: -.25rem\n    }\n\n    .swagger-ui .nl2-m {\n        margin-left: -.5rem\n    }\n\n    .swagger-ui .nl3-m {\n        margin-left: -1rem\n    }\n\n    .swagger-ui .nl4-m {\n        margin-left: -2rem\n    }\n\n    .swagger-ui .nl5-m {\n        margin-left: -4rem\n    }\n\n    .swagger-ui .nl6-m {\n        margin-left: -8rem\n    }\n\n    .swagger-ui .nl7-m {\n        margin-left: -16rem\n    }\n\n    .swagger-ui .nr1-m {\n        margin-right: -.25rem\n    }\n\n    .swagger-ui .nr2-m {\n        margin-right: -.5rem\n    }\n\n    .swagger-ui .nr3-m {\n        margin-right: -1rem\n    }\n\n    .swagger-ui .nr4-m {\n        margin-right: -2rem\n    }\n\n    .swagger-ui .nr5-m {\n        margin-right: -4rem\n    }\n\n    .swagger-ui .nr6-m {\n        margin-right: -8rem\n    }\n\n    .swagger-ui .nr7-m {\n        margin-right: -16rem\n    }\n\n    .swagger-ui .nb1-m {\n        margin-bottom: -.25rem\n    }\n\n    .swagger-ui .nb2-m {\n        margin-bottom: -.5rem\n    }\n\n    .swagger-ui .nb3-m {\n        margin-bottom: -1rem\n    }\n\n    .swagger-ui .nb4-m {\n        margin-bottom: -2rem\n    }\n\n    .swagger-ui .nb5-m {\n        margin-bottom: -4rem\n    }\n\n    .swagger-ui .nb6-m {\n        margin-bottom: -8rem\n    }\n\n    .swagger-ui .nb7-m {\n        margin-bottom: -16rem\n    }\n\n    .swagger-ui .nt1-m {\n        margin-top: -.25rem\n    }\n\n    .swagger-ui .nt2-m {\n        margin-top: -.5rem\n    }\n\n    .swagger-ui .nt3-m {\n        margin-top: -1rem\n    }\n\n    .swagger-ui .nt4-m {\n        margin-top: -2rem\n    }\n\n    .swagger-ui .nt5-m {\n        margin-top: -4rem\n    }\n\n    .swagger-ui .nt6-m {\n        margin-top: -8rem\n    }\n\n    .swagger-ui .nt7-m {\n        margin-top: -16rem\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .na1-l {\n        margin:-.25rem\n    }\n\n    .swagger-ui .na2-l {\n        margin: -.5rem\n    }\n\n    .swagger-ui .na3-l {\n        margin: -1rem\n    }\n\n    .swagger-ui .na4-l {\n        margin: -2rem\n    }\n\n    .swagger-ui .na5-l {\n        margin: -4rem\n    }\n\n    .swagger-ui .na6-l {\n        margin: -8rem\n    }\n\n    .swagger-ui .na7-l {\n        margin: -16rem\n    }\n\n    .swagger-ui .nl1-l {\n        margin-left: -.25rem\n    }\n\n    .swagger-ui .nl2-l {\n        margin-left: -.5rem\n    }\n\n    .swagger-ui .nl3-l {\n        margin-left: -1rem\n    }\n\n    .swagger-ui .nl4-l {\n        margin-left: -2rem\n    }\n\n    .swagger-ui .nl5-l {\n        margin-left: -4rem\n    }\n\n    .swagger-ui .nl6-l {\n        margin-left: -8rem\n    }\n\n    .swagger-ui .nl7-l {\n        margin-left: -16rem\n    }\n\n    .swagger-ui .nr1-l {\n        margin-right: -.25rem\n    }\n\n    .swagger-ui .nr2-l {\n        margin-right: -.5rem\n    }\n\n    .swagger-ui .nr3-l {\n        margin-right: -1rem\n    }\n\n    .swagger-ui .nr4-l {\n        margin-right: -2rem\n    }\n\n    .swagger-ui .nr5-l {\n        margin-right: -4rem\n    }\n\n    .swagger-ui .nr6-l {\n        margin-right: -8rem\n    }\n\n    .swagger-ui .nr7-l {\n        margin-right: -16rem\n    }\n\n    .swagger-ui .nb1-l {\n        margin-bottom: -.25rem\n    }\n\n    .swagger-ui .nb2-l {\n        margin-bottom: -.5rem\n    }\n\n    .swagger-ui .nb3-l {\n        margin-bottom: -1rem\n    }\n\n    .swagger-ui .nb4-l {\n        margin-bottom: -2rem\n    }\n\n    .swagger-ui .nb5-l {\n        margin-bottom: -4rem\n    }\n\n    .swagger-ui .nb6-l {\n        margin-bottom: -8rem\n    }\n\n    .swagger-ui .nb7-l {\n        margin-bottom: -16rem\n    }\n\n    .swagger-ui .nt1-l {\n        margin-top: -.25rem\n    }\n\n    .swagger-ui .nt2-l {\n        margin-top: -.5rem\n    }\n\n    .swagger-ui .nt3-l {\n        margin-top: -1rem\n    }\n\n    .swagger-ui .nt4-l {\n        margin-top: -2rem\n    }\n\n    .swagger-ui .nt5-l {\n        margin-top: -4rem\n    }\n\n    .swagger-ui .nt6-l {\n        margin-top: -8rem\n    }\n\n    .swagger-ui .nt7-l {\n        margin-top: -16rem\n    }\n}\n\n.swagger-ui .collapse {\n    border-collapse: collapse;\n    border-spacing: 0\n}\n\n.swagger-ui .striped--light-silver:nth-child(odd) {\n    background-color: #aaa\n}\n\n.swagger-ui .striped--moon-gray:nth-child(odd) {\n    background-color: #ccc\n}\n\n.swagger-ui .striped--light-gray:nth-child(odd) {\n    background-color: #eee\n}\n\n.swagger-ui .striped--near-white:nth-child(odd) {\n    background-color: #f4f4f4\n}\n\n.swagger-ui .stripe-light:nth-child(odd) {\n    background-color: hsla(0,0%,100%,.1)\n}\n\n.swagger-ui .stripe-dark:nth-child(odd) {\n    background-color: rgba(0,0,0,.1)\n}\n\n.swagger-ui .strike {\n    -webkit-text-decoration: line-through;\n    text-decoration: line-through\n}\n\n.swagger-ui .underline {\n    -webkit-text-decoration: underline;\n    text-decoration: underline\n}\n\n.swagger-ui .no-underline {\n    -webkit-text-decoration: none;\n    text-decoration: none\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .strike-ns {\n        -webkit-text-decoration:line-through;\n        text-decoration: line-through\n    }\n\n    .swagger-ui .underline-ns {\n        -webkit-text-decoration: underline;\n        text-decoration: underline\n    }\n\n    .swagger-ui .no-underline-ns {\n        -webkit-text-decoration: none;\n        text-decoration: none\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .strike-m {\n        -webkit-text-decoration:line-through;\n        text-decoration: line-through\n    }\n\n    .swagger-ui .underline-m {\n        -webkit-text-decoration: underline;\n        text-decoration: underline\n    }\n\n    .swagger-ui .no-underline-m {\n        -webkit-text-decoration: none;\n        text-decoration: none\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .strike-l {\n        -webkit-text-decoration:line-through;\n        text-decoration: line-through\n    }\n\n    .swagger-ui .underline-l {\n        -webkit-text-decoration: underline;\n        text-decoration: underline\n    }\n\n    .swagger-ui .no-underline-l {\n        -webkit-text-decoration: none;\n        text-decoration: none\n    }\n}\n\n.swagger-ui .tl {\n    text-align: left\n}\n\n.swagger-ui .tr {\n    text-align: right\n}\n\n.swagger-ui .tc {\n    text-align: center\n}\n\n.swagger-ui .tj {\n    text-align: justify\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .tl-ns {\n        text-align:left\n    }\n\n    .swagger-ui .tr-ns {\n        text-align: right\n    }\n\n    .swagger-ui .tc-ns {\n        text-align: center\n    }\n\n    .swagger-ui .tj-ns {\n        text-align: justify\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .tl-m {\n        text-align:left\n    }\n\n    .swagger-ui .tr-m {\n        text-align: right\n    }\n\n    .swagger-ui .tc-m {\n        text-align: center\n    }\n\n    .swagger-ui .tj-m {\n        text-align: justify\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .tl-l {\n        text-align:left\n    }\n\n    .swagger-ui .tr-l {\n        text-align: right\n    }\n\n    .swagger-ui .tc-l {\n        text-align: center\n    }\n\n    .swagger-ui .tj-l {\n        text-align: justify\n    }\n}\n\n.swagger-ui .ttc {\n    text-transform: capitalize\n}\n\n.swagger-ui .ttl {\n    text-transform: lowercase\n}\n\n.swagger-ui .ttu {\n    text-transform: uppercase\n}\n\n.swagger-ui .ttn {\n    text-transform: none\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .ttc-ns {\n        text-transform:capitalize\n    }\n\n    .swagger-ui .ttl-ns {\n        text-transform: lowercase\n    }\n\n    .swagger-ui .ttu-ns {\n        text-transform: uppercase\n    }\n\n    .swagger-ui .ttn-ns {\n        text-transform: none\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .ttc-m {\n        text-transform:capitalize\n    }\n\n    .swagger-ui .ttl-m {\n        text-transform: lowercase\n    }\n\n    .swagger-ui .ttu-m {\n        text-transform: uppercase\n    }\n\n    .swagger-ui .ttn-m {\n        text-transform: none\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .ttc-l {\n        text-transform:capitalize\n    }\n\n    .swagger-ui .ttl-l {\n        text-transform: lowercase\n    }\n\n    .swagger-ui .ttu-l {\n        text-transform: uppercase\n    }\n\n    .swagger-ui .ttn-l {\n        text-transform: none\n    }\n}\n\n.swagger-ui .f-6,.swagger-ui .f-headline {\n    font-size: 6rem\n}\n\n.swagger-ui .f-5,.swagger-ui .f-subheadline {\n    font-size: 5rem\n}\n\n.swagger-ui .f1 {\n    font-size: 3rem\n}\n\n.swagger-ui .f2 {\n    font-size: 2.25rem\n}\n\n.swagger-ui .f3 {\n    font-size: 1.5rem\n}\n\n.swagger-ui .f4 {\n    font-size: 1.25rem\n}\n\n.swagger-ui .f5 {\n    font-size: 1rem\n}\n\n.swagger-ui .f6 {\n    font-size: .875rem\n}\n\n.swagger-ui .f7 {\n    font-size: .75rem\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .f-6-ns,.swagger-ui .f-headline-ns {\n        font-size:6rem\n    }\n\n    .swagger-ui .f-5-ns,.swagger-ui .f-subheadline-ns {\n        font-size: 5rem\n    }\n\n    .swagger-ui .f1-ns {\n        font-size: 3rem\n    }\n\n    .swagger-ui .f2-ns {\n        font-size: 2.25rem\n    }\n\n    .swagger-ui .f3-ns {\n        font-size: 1.5rem\n    }\n\n    .swagger-ui .f4-ns {\n        font-size: 1.25rem\n    }\n\n    .swagger-ui .f5-ns {\n        font-size: 1rem\n    }\n\n    .swagger-ui .f6-ns {\n        font-size: .875rem\n    }\n\n    .swagger-ui .f7-ns {\n        font-size: .75rem\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .f-6-m,.swagger-ui .f-headline-m {\n        font-size:6rem\n    }\n\n    .swagger-ui .f-5-m,.swagger-ui .f-subheadline-m {\n        font-size: 5rem\n    }\n\n    .swagger-ui .f1-m {\n        font-size: 3rem\n    }\n\n    .swagger-ui .f2-m {\n        font-size: 2.25rem\n    }\n\n    .swagger-ui .f3-m {\n        font-size: 1.5rem\n    }\n\n    .swagger-ui .f4-m {\n        font-size: 1.25rem\n    }\n\n    .swagger-ui .f5-m {\n        font-size: 1rem\n    }\n\n    .swagger-ui .f6-m {\n        font-size: .875rem\n    }\n\n    .swagger-ui .f7-m {\n        font-size: .75rem\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .f-6-l,.swagger-ui .f-headline-l {\n        font-size:6rem\n    }\n\n    .swagger-ui .f-5-l,.swagger-ui .f-subheadline-l {\n        font-size: 5rem\n    }\n\n    .swagger-ui .f1-l {\n        font-size: 3rem\n    }\n\n    .swagger-ui .f2-l {\n        font-size: 2.25rem\n    }\n\n    .swagger-ui .f3-l {\n        font-size: 1.5rem\n    }\n\n    .swagger-ui .f4-l {\n        font-size: 1.25rem\n    }\n\n    .swagger-ui .f5-l {\n        font-size: 1rem\n    }\n\n    .swagger-ui .f6-l {\n        font-size: .875rem\n    }\n\n    .swagger-ui .f7-l {\n        font-size: .75rem\n    }\n}\n\n.swagger-ui .measure {\n    max-width: 30em\n}\n\n.swagger-ui .measure-wide {\n    max-width: 34em\n}\n\n.swagger-ui .measure-narrow {\n    max-width: 20em\n}\n\n.swagger-ui .indent {\n    margin-bottom: 0;\n    margin-top: 0;\n    text-indent: 1em\n}\n\n.swagger-ui .small-caps {\n    font-feature-settings: \"smcp\";\n    font-variant: small-caps\n}\n\n.swagger-ui .truncate {\n    overflow: hidden;\n    text-overflow: ellipsis;\n    white-space: nowrap\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .measure-ns {\n        max-width:30em\n    }\n\n    .swagger-ui .measure-wide-ns {\n        max-width: 34em\n    }\n\n    .swagger-ui .measure-narrow-ns {\n        max-width: 20em\n    }\n\n    .swagger-ui .indent-ns {\n        margin-bottom: 0;\n        margin-top: 0;\n        text-indent: 1em\n    }\n\n    .swagger-ui .small-caps-ns {\n        font-feature-settings: \"smcp\";\n        font-variant: small-caps\n    }\n\n    .swagger-ui .truncate-ns {\n        overflow: hidden;\n        text-overflow: ellipsis;\n        white-space: nowrap\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .measure-m {\n        max-width:30em\n    }\n\n    .swagger-ui .measure-wide-m {\n        max-width: 34em\n    }\n\n    .swagger-ui .measure-narrow-m {\n        max-width: 20em\n    }\n\n    .swagger-ui .indent-m {\n        margin-bottom: 0;\n        margin-top: 0;\n        text-indent: 1em\n    }\n\n    .swagger-ui .small-caps-m {\n        font-feature-settings: \"smcp\";\n        font-variant: small-caps\n    }\n\n    .swagger-ui .truncate-m {\n        overflow: hidden;\n        text-overflow: ellipsis;\n        white-space: nowrap\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .measure-l {\n        max-width:30em\n    }\n\n    .swagger-ui .measure-wide-l {\n        max-width: 34em\n    }\n\n    .swagger-ui .measure-narrow-l {\n        max-width: 20em\n    }\n\n    .swagger-ui .indent-l {\n        margin-bottom: 0;\n        margin-top: 0;\n        text-indent: 1em\n    }\n\n    .swagger-ui .small-caps-l {\n        font-feature-settings: \"smcp\";\n        font-variant: small-caps\n    }\n\n    .swagger-ui .truncate-l {\n        overflow: hidden;\n        text-overflow: ellipsis;\n        white-space: nowrap\n    }\n}\n\n.swagger-ui .overflow-container {\n    overflow-y: scroll\n}\n\n.swagger-ui .center {\n    margin-left: auto;\n    margin-right: auto\n}\n\n.swagger-ui .mr-auto {\n    margin-right: auto\n}\n\n.swagger-ui .ml-auto {\n    margin-left: auto\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .center-ns {\n        margin-left:auto;\n        margin-right: auto\n    }\n\n    .swagger-ui .mr-auto-ns {\n        margin-right: auto\n    }\n\n    .swagger-ui .ml-auto-ns {\n        margin-left: auto\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .center-m {\n        margin-left:auto;\n        margin-right: auto\n    }\n\n    .swagger-ui .mr-auto-m {\n        margin-right: auto\n    }\n\n    .swagger-ui .ml-auto-m {\n        margin-left: auto\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .center-l {\n        margin-left:auto;\n        margin-right: auto\n    }\n\n    .swagger-ui .mr-auto-l {\n        margin-right: auto\n    }\n\n    .swagger-ui .ml-auto-l {\n        margin-left: auto\n    }\n}\n\n.swagger-ui .clip {\n    position: fixed!important;\n    _position: absolute!important;\n    clip: rect(1px 1px 1px 1px);\n    clip: rect(1px,1px,1px,1px)\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .clip-ns {\n        position:fixed!important;\n        _position: absolute!important;\n        clip: rect(1px 1px 1px 1px);\n        clip: rect(1px,1px,1px,1px)\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .clip-m {\n        position:fixed!important;\n        _position: absolute!important;\n        clip: rect(1px 1px 1px 1px);\n        clip: rect(1px,1px,1px,1px)\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .clip-l {\n        position:fixed!important;\n        _position: absolute!important;\n        clip: rect(1px 1px 1px 1px);\n        clip: rect(1px,1px,1px,1px)\n    }\n}\n\n.swagger-ui .ws-normal {\n    white-space: normal\n}\n\n.swagger-ui .nowrap {\n    white-space: nowrap\n}\n\n.swagger-ui .pre {\n    white-space: pre\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .ws-normal-ns {\n        white-space:normal\n    }\n\n    .swagger-ui .nowrap-ns {\n        white-space: nowrap\n    }\n\n    .swagger-ui .pre-ns {\n        white-space: pre\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .ws-normal-m {\n        white-space:normal\n    }\n\n    .swagger-ui .nowrap-m {\n        white-space: nowrap\n    }\n\n    .swagger-ui .pre-m {\n        white-space: pre\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .ws-normal-l {\n        white-space:normal\n    }\n\n    .swagger-ui .nowrap-l {\n        white-space: nowrap\n    }\n\n    .swagger-ui .pre-l {\n        white-space: pre\n    }\n}\n\n.swagger-ui .v-base {\n    vertical-align: baseline\n}\n\n.swagger-ui .v-mid {\n    vertical-align: middle\n}\n\n.swagger-ui .v-top {\n    vertical-align: top\n}\n\n.swagger-ui .v-btm {\n    vertical-align: bottom\n}\n\n@media screen and (min-width: 30em) {\n    .swagger-ui .v-base-ns {\n        vertical-align:baseline\n    }\n\n    .swagger-ui .v-mid-ns {\n        vertical-align: middle\n    }\n\n    .swagger-ui .v-top-ns {\n        vertical-align: top\n    }\n\n    .swagger-ui .v-btm-ns {\n        vertical-align: bottom\n    }\n}\n\n@media screen and (min-width: 30em)and (max-width:60em) {\n    .swagger-ui .v-base-m {\n        vertical-align:baseline\n    }\n\n    .swagger-ui .v-mid-m {\n        vertical-align: middle\n    }\n\n    .swagger-ui .v-top-m {\n        vertical-align: top\n    }\n\n    .swagger-ui .v-btm-m {\n        vertical-align: bottom\n    }\n}\n\n@media screen and (min-width: 60em) {\n    .swagger-ui .v-base-l {\n        vertical-align:baseline\n    }\n\n    .swagger-ui .v-mid-l {\n        vertical-align: middle\n    }\n\n    .swagger-ui .v-top-l {\n        vertical-align: top\n    }\n\n    .swagger-ui .v-btm-l {\n        vertical-align: bottom\n    }\n}\n\n.swagger-ui .dim {\n    opacity: 1;\n    transition: opacity .15s ease-in\n}\n\n.swagger-ui .dim:focus,.swagger-ui .dim:hover {\n    opacity: .5;\n    transition: opacity .15s ease-in\n}\n\n.swagger-ui .dim:active {\n    opacity: .8;\n    transition: opacity .15s ease-out\n}\n\n.swagger-ui .glow {\n    transition: opacity .15s ease-in\n}\n\n.swagger-ui .glow:focus,.swagger-ui .glow:hover {\n    opacity: 1;\n    transition: opacity .15s ease-in\n}\n\n.swagger-ui .hide-child .child {\n    opacity: 0;\n    transition: opacity .15s ease-in\n}\n\n.swagger-ui .hide-child:active .child,.swagger-ui .hide-child:focus .child,.swagger-ui .hide-child:hover .child {\n    opacity: 1;\n    transition: opacity .15s ease-in\n}\n\n.swagger-ui .underline-hover:focus,.swagger-ui .underline-hover:hover {\n    -webkit-text-decoration: underline;\n    text-decoration: underline\n}\n\n.swagger-ui .grow {\n    -moz-osx-font-smoothing: grayscale;\n    backface-visibility: hidden;\n    transform: translateZ(0);\n    transition: transform .25s ease-out\n}\n\n.swagger-ui .grow:focus,.swagger-ui .grow:hover {\n    transform: scale(1.05)\n}\n\n.swagger-ui .grow:active {\n    transform: scale(.9)\n}\n\n.swagger-ui .grow-large {\n    -moz-osx-font-smoothing: grayscale;\n    backface-visibility: hidden;\n    transform: translateZ(0);\n    transition: transform .25s ease-in-out\n}\n\n.swagger-ui .grow-large:focus,.swagger-ui .grow-large:hover {\n    transform: scale(1.2)\n}\n\n.swagger-ui .grow-large:active {\n    transform: scale(.95)\n}\n\n.swagger-ui .pointer:hover {\n    cursor: pointer\n}\n\n.swagger-ui .shadow-hover {\n    cursor: pointer;\n    position: relative;\n    transition: all .5s cubic-bezier(.165,.84,.44,1)\n}\n\n.swagger-ui .shadow-hover:after {\n    content: \"\";\n    height: 100%;\n    left: 0;\n    opacity: 0;\n    position: absolute;\n    top: 0;\n    transition: opacity .5s cubic-bezier(.165,.84,.44,1);\n    width: 100%;\n    z-index: -1\n}\n\n.swagger-ui .shadow-hover:focus:after,.swagger-ui .shadow-hover:hover:after {\n    opacity: 1\n}\n\n.swagger-ui .bg-animate,.swagger-ui .bg-animate:focus,.swagger-ui .bg-animate:hover {\n    transition: background-color .15s ease-in-out\n}\n\n.swagger-ui .z-0 {\n    z-index: 0\n}\n\n.swagger-ui .z-1 {\n    z-index: 1\n}\n\n.swagger-ui .z-2 {\n    z-index: 2\n}\n\n.swagger-ui .z-3 {\n    z-index: 3\n}\n\n.swagger-ui .z-4 {\n    z-index: 4\n}\n\n.swagger-ui .z-5 {\n    z-index: 5\n}\n\n.swagger-ui .z-999 {\n    z-index: 999\n}\n\n.swagger-ui .z-9999 {\n    z-index: 9999\n}\n\n.swagger-ui .z-max {\n    z-index: 2147483647\n}\n\n.swagger-ui .z-inherit {\n    z-index: inherit\n}\n\n.swagger-ui .z-initial,.swagger-ui .z-unset {\n    z-index: auto\n}\n\n.swagger-ui .nested-copy-line-height ol,.swagger-ui .nested-copy-line-height p,.swagger-ui .nested-copy-line-height ul {\n    line-height: 1.5\n}\n\n.swagger-ui .nested-headline-line-height h1,.swagger-ui .nested-headline-line-height h2,.swagger-ui .nested-headline-line-height h3,.swagger-ui .nested-headline-line-height h4,.swagger-ui .nested-headline-line-height h5,.swagger-ui .nested-headline-line-height h6 {\n    line-height: 1.25\n}\n\n.swagger-ui .nested-list-reset ol,.swagger-ui .nested-list-reset ul {\n    list-style-type: none;\n    margin-left: 0;\n    padding-left: 0\n}\n\n.swagger-ui .nested-copy-indent p+p {\n    margin-bottom: 0;\n    margin-top: 0;\n    text-indent: .1em\n}\n\n.swagger-ui .nested-copy-seperator p+p {\n    margin-top: 1.5em\n}\n\n.swagger-ui .nested-img img {\n    display: block;\n    max-width: 100%;\n    width: 100%\n}\n\n.swagger-ui .nested-links a {\n    color: #357edd;\n    transition: color .15s ease-in\n}\n\n.swagger-ui .nested-links a:focus,.swagger-ui .nested-links a:hover {\n    color: #96ccff;\n    transition: color .15s ease-in\n}\n\n.swagger-ui .wrapper {\n    box-sizing: border-box;\n    margin: 0 auto;\n    max-width: 1460px;\n    padding: 0 20px;\n    width: 100%\n}\n\n.swagger-ui .opblock-tag-section {\n    display: flex;\n    flex-direction: column\n}\n\n.swagger-ui .try-out.btn-group {\n    display: flex;\n    flex: .1 2 auto;\n    padding: 0\n}\n\n.swagger-ui .try-out__btn {\n    margin-left: 1.25rem\n}\n\n.swagger-ui .opblock-tag {\n    align-items: center;\n    cursor: pointer;\n    display: none;\n    padding: 10px 20px 10px 10px;\n    transition: all .2s\n}\n\n.swagger-ui .opblock-tag:hover {\n    background: rgba(0,0,0,.02)\n}\n\n.swagger-ui .opblock-tag {\n    color: #3b4151;\n    font-family: sans-serif;\n    font-size: 24px;\n    margin: 0 0 5px\n}\n\n.swagger-ui .opblock-tag.no-desc span {\n    flex: 1\n}\n\n.swagger-ui .opblock-tag svg {\n    transition: all .4s\n}\n\n.swagger-ui .opblock-tag small {\n    color: #3b4151;\n    flex: 2;\n    font-family: sans-serif;\n    font-size: 14px;\n    font-weight: 400;\n    padding: 0 10px\n}\n\n.swagger-ui .opblock-tag>div {\n    flex: 1 1 150px;\n    font-weight: 400;\n    overflow: hidden;\n    text-overflow: ellipsis;\n    white-space: nowrap\n}\n\n@media(max-width: 640px) {\n    .swagger-ui .opblock-tag small,.swagger-ui .opblock-tag>div {\n        flex:1\n    }\n}\n\n.swagger-ui .opblock-tag .info__externaldocs {\n    text-align: right\n}\n\n.swagger-ui .parameter__type {\n    color: #3b4151;\n    font-family: monospace;\n    font-size: 12px;\n    font-weight: 600;\n    padding: 5px 0\n}\n\n.swagger-ui .parameter-controls {\n    margin-top: .75em\n}\n\n.swagger-ui .examples__title {\n    display: block;\n    font-size: 1.1em;\n    font-weight: 700;\n    margin-bottom: .75em\n}\n\n.swagger-ui .examples__section {\n    margin-top: 1.5em\n}\n\n.swagger-ui .examples__section-header {\n    font-size: .9rem;\n    font-weight: 700;\n    margin-bottom: .5rem\n}\n\n.swagger-ui .examples-select {\n    display: inline-block;\n    margin-bottom: .75em\n}\n\n.swagger-ui .examples-select .examples-select-element {\n    width: 100%\n}\n\n.swagger-ui .examples-select__section-label {\n    font-size: .9rem;\n    font-weight: 700;\n    margin-right: .5rem\n}\n\n.swagger-ui .example__section {\n    margin-top: 1.5em\n}\n\n.swagger-ui .example__section-header {\n    font-size: .9rem;\n    font-weight: 700;\n    margin-bottom: .5rem\n}\n\n.swagger-ui .view-line-link {\n    cursor: pointer;\n    margin: 0 5px;\n    position: relative;\n    top: 3px;\n    transition: all .5s;\n    width: 20px\n}\n\n.swagger-ui .opblock .tab-header {\n    display: flex;\n    flex: 1\n}\n\n.swagger-ui .opblock .tab-header .tab-item {\n    cursor: pointer;\n    padding: 0 40px\n}\n\n.swagger-ui .opblock .tab-header .tab-item:first-of-type {\n    padding: 0 40px 0 0\n}\n\n.swagger-ui .opblock .tab-header .tab-item.active h4 span {\n    position: relative\n}\n\n.swagger-ui .opblock .tab-header .tab-item.active h4 span:after {\n    background: grey;\n    bottom: -15px;\n    content: \"\";\n    height: 4px;\n    left: 50%;\n    position: absolute;\n    transform: translateX(-50%);\n    width: 120%\n}\n\n.swagger-ui .opblock .opblock-section-header {\n    align-items: center;\n    background: #ccc;\n    display: flex;\n    min-height: 50px;\n    padding: 8px 20px\n}\n\n.swagger-ui .opblock .opblock-section-header>label {\n    align-items: center;\n    color: #3b4151;\n    display: flex;\n    font-family: sans-serif;\n    font-size: 12px;\n    font-weight: 700;\n    margin: 0 0 0 auto\n}\n\n.swagger-ui .opblock .opblock-section-header>label>span {\n    padding: 0 10px 0 0\n}\n\n.swagger-ui .opblock .opblock-section-header h4 {\n    color: #3b4151;\n    flex: 1;\n    font-family: sans-serif;\n    font-size: 14px;\n    margin: 0\n}\n\n.swagger-ui .opblock .opblock-summary-method {\n    background: #000;\n    color: #fff;\n    font-family: sans-serif;\n    font-size: 14px;\n    font-weight: 700;\n    min-width: 80px;\n    padding: 6px 0;\n    text-align: center;\n    text-shadow: 0 1px 0 rgba(0,0,0,.1)\n}\n\n@media(max-width: 768px) {\n    .swagger-ui .opblock .opblock-summary-method {\n        font-size:12px\n    }\n}\n\n.swagger-ui .opblock .opblock-summary-operation-id,.swagger-ui .opblock .opblock-summary-path,.swagger-ui .opblock .opblock-summary-path__deprecated {\n    align-items: center;\n    color: #3b4151;\n    display: flex;\n    font-family: monospace;\n    font-size: 16px;\n    font-weight: 600;\n    word-break: break-word\n}\n\n@media(max-width: 768px) {\n    .swagger-ui .opblock .opblock-summary-operation-id,.swagger-ui .opblock .opblock-summary-path,.swagger-ui .opblock .opblock-summary-path__deprecated {\n        font-size:12px\n    }\n}\n\n.swagger-ui .opblock .opblock-summary-path {\n    flex-shrink: 1\n}\n\n@media(max-width: 640px) {\n    .swagger-ui .opblock .opblock-summary-path {\n        max-width:100%\n    }\n}\n\n.swagger-ui .opblock .opblock-summary-path__deprecated {\n    -webkit-text-decoration: line-through;\n    text-decoration: line-through\n}\n\n.swagger-ui .opblock .opblock-summary-operation-id {\n    font-size: 14px\n}\n\n.swagger-ui .opblock .opblock-summary-description {\n    color: #3b4151;\n    font-family: sans-serif;\n    font-size: 13px;\n    word-break: break-word\n}\n\n.swagger-ui .opblock .opblock-summary-path-description-wrapper {\n    align-items: center;\n    display: flex;\n    flex-direction: row;\n    flex-grow: 1;\n    flex-wrap: wrap;\n    gap: 0 10px;\n    padding: 0 10px\n}\n\n@media(max-width: 550px) {\n    .swagger-ui .opblock .opblock-summary-path-description-wrapper {\n        align-items:flex-start;\n        flex-direction: column\n    }\n}\n\n.swagger-ui .opblock .opblock-summary {\n    align-items: center;\n    cursor: pointer;\n    display: flex;\n    padding: 5px\n}\n\n.swagger-ui .opblock .opblock-summary .view-line-link {\n    cursor: pointer;\n    margin: 0;\n    position: relative;\n    top: 2px;\n    transition: all .5s;\n    width: 0\n}\n\n.swagger-ui .opblock .opblock-summary:hover .view-line-link {\n    margin: 0 5px;\n    width: 18px\n}\n\n.swagger-ui .opblock .opblock-summary:hover .view-line-link.copy-to-clipboard {\n    width: 24px\n}\n\n.swagger-ui .opblock.opblock-post {\n    background: rgba(73,204,144,.1);\n}\n\n.swagger-ui .opblock.opblock-post .opblock-summary-method {\n    background: darkmagenta;\n    box-shadow: 4px 4px 8px #444\n}\n\n.swagger-ui .opblock.opblock-post .tab-header .tab-item.active h4 span:after {\n    background: #49cc90\n}\n\n.swagger-ui .opblock.opblock-put {\n    background: rgba(252,161,48,.1);\n}\n\n.swagger-ui .opblock.opblock-put .opblock-summary-method {\n    background: #fca130\n}\n\n.swagger-ui .opblock.opblock-put .tab-header .tab-item.active h4 span:after {\n    background: #fca130\n}\n\n.swagger-ui .opblock.opblock-delete {\n    background: rgba(249,62,62,.1);\n}\n\n.swagger-ui .opblock.opblock-delete .opblock-summary-method {\n    background: #f93e3e\n}\n\n.swagger-ui .opblock.opblock-delete .tab-header .tab-item.active h4 span:after {\n    background: #f93e3e\n}\n\n.swagger-ui .opblock.opblock-get {\n    background: rgba(97,175,254,.1);\n}\n\n.swagger-ui .opblock.opblock-get .opblock-summary-method {\n    background: teal;\n    box-shadow: 4px 4px 8px #444;\n}\n\n.swagger-ui .opblock.opblock-get .tab-header .tab-item.active h4 span:after {\n    background: #61affe\n}\n\n.swagger-ui .opblock.opblock-patch {\n    background: rgba(80,227,194,.1);\n}\n\n.swagger-ui .opblock.opblock-patch .opblock-summary-method {\n    background: #50e3c2\n}\n\n.swagger-ui .opblock.opblock-patch .tab-header .tab-item.active h4 span:after {\n    background: #50e3c2\n}\n\n.swagger-ui .opblock.opblock-head .opblock-summary-method {\n    background: #9012fe;\n    box-shadow: 4px 4px 8px #444;\n}\n\n.swagger-ui .opblock.opblock-head .tab-header .tab-item.active h4 span:after {\n    background: #9012fe\n}\n\n.swagger-ui .opblock.opblock-options {\n    background: rgba(13,90,167,.1);\n}\n\n.swagger-ui .opblock.opblock-options .opblock-summary-method {\n    background: #0d5aa7\n}\n\n.swagger-ui .opblock.opblock-options .tab-header .tab-item.active h4 span:after {\n    background: #0d5aa7\n}\n\n.swagger-ui .opblock.opblock-deprecated {\n    background: hsla(0,0%,92%,.1);\n    opacity: .6\n}\n\n.swagger-ui .opblock.opblock-deprecated .opblock-summary-method {\n    background: #ebebeb\n}\n\n.swagger-ui .opblock.opblock-deprecated .tab-header .tab-item.active h4 span:after {\n    background: #ebebeb\n}\n\n.swagger-ui .opblock .opblock-schemes {\n    padding: 8px 20px\n}\n\n.swagger-ui .opblock .opblock-schemes .schemes-title {\n    padding: 0 10px 0 0\n}\n\n.swagger-ui .filter .operation-filter-input {\n    margin: 20px 0;\n    padding: 10px;\n    width: 100%\n}\n\n.swagger-ui .download-url-wrapper .failed,.swagger-ui .filter .failed {\n    color: red\n}\n\n.swagger-ui .download-url-wrapper .loading,.swagger-ui .filter .loading {\n    color: #aaa\n}\n\n.swagger-ui .model-example {\n    margin-top: 1em\n}\n\n.swagger-ui .model-example .model-container {\n    overflow-x: auto;\n    width: 100%\n}\n\n.swagger-ui .model-example .model-container .model-hint:not(.model-hint--embedded) {\n    top: -1.15em\n}\n\n.swagger-ui .tab {\n    display: flex;\n    list-style: none;\n    padding: 0;\n    margin: 0.1em;\n}\n\n.swagger-ui .tab li {\n    color: #3b4151;\n    cursor: pointer;\n    font-family: sans-serif;\n    font-size: 12px;\n    min-width: 60px;\n    padding: 0\n}\n\n.swagger-ui .tab li:first-of-type {\n    padding-left: 0;\n    padding-right: 12px;\n    position: relative\n}\n\n.swagger-ui .tab li:first-of-type:after {\n    background: rgba(0,0,0,.2);\n    content: \"\";\n    height: 100%;\n    position: absolute;\n    right: 6px;\n    top: 0;\n    width: 1px\n}\n\n.swagger-ui .tab li.active {\n    font-weight: 700\n}\n\n.swagger-ui .tab li button.tablinks {\n    background: none;\n    color: inherit;\n    font-family: inherit;\n    font-weight: inherit;\n    padding: 0\n}\n\n.swagger-ui .opblock-description-wrapper,.swagger-ui .opblock-external-docs-wrapper,.swagger-ui .opblock-title_normal {\n    color: #3b4151;\n    font-family: sans-serif;\n    font-size: 12px;\n    margin: 0 0 5px;\n    padding: 15px 20px\n}\n\n.swagger-ui .opblock-description-wrapper h4,.swagger-ui .opblock-external-docs-wrapper h4,.swagger-ui .opblock-title_normal h4 {\n    color: #3b4151;\n    font-family: sans-serif;\n    font-size: 12px;\n    margin: 0 0 5px\n}\n\n.swagger-ui .opblock-description-wrapper p,.swagger-ui .opblock-external-docs-wrapper p,.swagger-ui .opblock-title_normal p {\n    color: #3b4151;\n    font-family: sans-serif;\n    font-size: 14px;\n    margin: 0\n}\n\n.swagger-ui .opblock-external-docs-wrapper h4 {\n    padding-left: 0\n}\n\n.swagger-ui .execute-wrapper {\n    padding: 20px;\n    text-align: right\n}\n\n.swagger-ui .execute-wrapper .btn {\n    padding: 8px 40px;\n    width: 100%\n}\n\n.swagger-ui .body-param-options {\n    display: flex;\n    flex-direction: column\n}\n\n.swagger-ui .body-param-options .body-param-edit {\n    padding: 10px 0\n}\n\n.swagger-ui .body-param-options label {\n    padding: 8px 0\n}\n\n.swagger-ui .body-param-options label select {\n    margin: 3px 0 0\n}\n\n.swagger-ui .responses-inner {\n    padding-left: 20px;\n}\n\n.swagger-ui .responses-inner h4,.swagger-ui .responses-inner h5 {\n    color: #3b4151;\n    font-family: sans-serif;\n    font-size: 12px;\n    margin: 10px 0 5px\n}\n\n.swagger-ui .responses-inner .curl {\n    max-height: 400px;\n    min-height: 6em;\n    overflow-y: auto\n}\n\n.swagger-ui .response-col_status {\n    color: #3b4151;\n    font-family: sans-serif;\n    font-size: 14px\n}\n\n.swagger-ui .response-col_status .response-undocumented {\n    color: #909090;\n    font-family: monospace;\n    font-size: 11px;\n    font-weight: 600\n}\n\n.swagger-ui .response-col_links {\n    color: #3b4151;\n    font-family: sans-serif;\n    font-size: 14px;\n    max-width: 40em;\n    padding-left: 2em\n}\n\n.swagger-ui .response-col_links .response-undocumented {\n    color: #909090;\n    font-family: monospace;\n    font-size: 11px;\n    font-weight: 600\n}\n\n.swagger-ui .response-col_links .operation-link {\n    margin-bottom: 1.5em\n}\n\n.swagger-ui .response-col_links .operation-link .description {\n    margin-bottom: .5em\n}\n\n.swagger-ui .opblock-body .opblock-loading-animation {\n    display: block;\n    margin: 3em auto\n}\n\n.swagger-ui .opblock-body pre.microlight {\n    background: #333;\n    font-size: 12px;\n    hyphens: auto;\n    margin: 0;\n    padding: 10px;\n    white-space: pre-wrap;\n    word-break: break-all;\n    word-break: break-word;\n    word-wrap: break-word;\n    color: #fff;\n    font-family: monospace;\n    font-weight: 600\n}\n\n.swagger-ui .opblock-body pre.microlight .headerline {\n    display: block\n}\n\n.swagger-ui .highlight-code {\n    position: relative\n}\n\n.swagger-ui .highlight-code>.microlight {\n    max-height: 400px;\n    min-height: 6em;\n    overflow-y: auto\n}\n\n.swagger-ui .highlight-code>.microlight code {\n    white-space: pre-wrap!important;\n    word-break: break-all\n}\n\n.swagger-ui .curl-command {\n    position: relative\n}\n\n.swagger-ui .download-contents {\n    align-items: center;\n    background: #7d8293;\n    bottom: 10px;\n    color: #fff;\n    display: flex;\n    font-family: sans-serif;\n    font-size: 14px;\n    font-weight: 600;\n    height: 30px;\n    justify-content: center;\n    padding: 5px;\n    position: absolute;\n    right: 10px;\n    text-align: center\n}\n\n.swagger-ui .scheme-container {\n    background: #fff;\n    margin: 0 0 20px;\n    padding: 30px 0\n}\n\n.swagger-ui .scheme-container .schemes {\n    align-items: flex-end;\n    display: flex;\n    flex-wrap: wrap;\n    gap: 10px;\n    justify-content: space-between\n}\n\n.swagger-ui .scheme-container .schemes>.schemes-server-container {\n    display: flex;\n    flex-wrap: wrap;\n    gap: 10px\n}\n\n.swagger-ui .scheme-container .schemes>.schemes-server-container>label {\n    color: #3b4151;\n    display: flex;\n    flex-direction: column;\n    font-family: sans-serif;\n    font-size: 12px;\n    font-weight: 700;\n    margin: -20px 15px 0 0\n}\n\n.swagger-ui .scheme-container .schemes>.schemes-server-container>label select {\n    min-width: 130px;\n    text-transform: uppercase\n}\n\n.swagger-ui .scheme-container .schemes:not(:has(.schemes-server-container)) {\n    justify-content: flex-end\n}\n\n.swagger-ui .scheme-container .schemes .auth-wrapper {\n    flex: none;\n    justify-content: start\n}\n\n.swagger-ui .scheme-container .schemes .auth-wrapper .authorize {\n    display: flex;\n    flex-wrap: nowrap;\n    margin: 0;\n    padding-right: 20px\n}\n\n.swagger-ui .loading-container {\n    align-items: center;\n    display: flex;\n    flex-direction: column;\n    justify-content: center;\n    margin-top: 1em;\n    min-height: 1px;\n    padding: 40px 0 60px\n}\n\n.swagger-ui .loading-container .loading {\n    position: relative\n}\n\n.swagger-ui .loading-container .loading:after {\n    color: #3b4151;\n    content: \"loading\";\n    font-family: sans-serif;\n    font-size: 10px;\n    font-weight: 700;\n    left: 50%;\n    position: absolute;\n    text-transform: uppercase;\n    top: 50%;\n    transform: translate(-50%,-50%)\n}\n\n.swagger-ui .loading-container .loading:before {\n    animation: rotation 1s linear infinite,opacity .5s;\n    backface-visibility: hidden;\n    content: \"\";\n    display: block;\n    height: 60px;\n    left: 50%;\n    margin: -30px;\n    opacity: 1;\n    position: absolute;\n    top: 50%;\n    width: 60px\n}\n\n@keyframes rotation {\n    to {\n        transform: rotate(1turn)\n    }\n}\n\n.swagger-ui .response-controls {\n    display: none;\n}\n\n.swagger-ui .response-control-media-type {\n    margin-right: 1em\n}\n\n.swagger-ui .response-control-media-type__accept-message {\n    color: green;\n    font-size: .7em\n}\n\n.swagger-ui .response-control-examples__title,.swagger-ui .response-control-media-type__title {\n    display: block;\n    font-size: .7em;\n    margin-bottom: .2em\n}\n\n@keyframes blinker {\n    50% {\n        opacity: 0\n    }\n}\n\n.swagger-ui .hidden {\n    display: none\n}\n\n.swagger-ui .no-margin {\n    height: auto;\n    margin: 0;\n    padding: 0\n}\n\n.swagger-ui .float-right {\n    float: right\n}\n\n.swagger-ui .svg-assets {\n    height: 0;\n    position: absolute;\n    width: 0\n}\n\n.swagger-ui section h3 {\n    color: #3b4151;\n    font-family: sans-serif\n}\n\n.swagger-ui a.nostyle {\n    display: inline\n}\n\n.swagger-ui a.nostyle,.swagger-ui a.nostyle:visited {\n    color: inherit;\n    cursor: pointer;\n    text-decoration: inherit\n}\n\n.swagger-ui .fallback {\n    color: #aaa;\n    padding: 1em\n}\n\n.swagger-ui .version-pragma {\n    height: 100%;\n    padding: 5em 0\n}\n\n.swagger-ui .version-pragma__message {\n    display: flex;\n    font-size: 1.2em;\n    height: 100%;\n    justify-content: center;\n    line-height: 1.5em;\n    padding: 0 .6em;\n    text-align: center\n}\n\n.swagger-ui .version-pragma__message>div {\n    flex: 1;\n    max-width: 55ch\n}\n\n.swagger-ui .version-pragma__message code {\n    background-color: #dedede;\n    padding: 4px 4px 2px;\n    white-space: pre\n}\n\n.swagger-ui .opblock-link {\n    font-weight: 400\n}\n\n.swagger-ui .opblock-link.shown {\n    font-weight: 700\n}\n\n.swagger-ui span.token-string {\n    color: #555\n}\n\n.swagger-ui span.token-not-formatted {\n    color: #555;\n    font-weight: 700\n}\n\n.swagger-ui .btn {\n    background: transparent;\n    color: #3b4151;\n    font-family: sans-serif;\n    font-size: 14px;\n    font-weight: 700;\n    padding: 5px 23px;\n    transition: all .3s;\n    box-shadow: 4px 4px 8px #444\n}\n\n.swagger-ui .btn.btn-sm {\n    font-size: 12px;\n    padding: 4px 23px\n}\n\n.swagger-ui .btn[disabled] {\n    cursor: not-allowed;\n    opacity: .3\n}\n\n.swagger-ui .btn.cancel {\n    background-color: transparent;\n    color: #ff6060;\n    font-family: sans-serif\n}\n\n.swagger-ui .btn.authorize {\n    background-color: transparent;\n    color: #49cc90;\n    display: inline;\n    line-height: 1\n}\n\n.swagger-ui .btn.authorize span {\n    float: left;\n    padding: 4px 20px 0 0\n}\n\n.swagger-ui .btn.authorize svg {\n    fill: #49cc90\n}\n\n.swagger-ui .btn.execute {\n    background-color: #4990e2;\n    color: #fff\n}\n\n.swagger-ui .btn-group {\n    display: flex;\n    padding: 10px\n}\n\n.swagger-ui .btn-group .btn {\n    flex: 1\n}\n\n.swagger-ui .authorization__btn {\n    background: none;\n    padding: 0 0 0 10px\n}\n\n.swagger-ui .authorization__btn .locked {\n    opacity: 1\n}\n\n.swagger-ui .authorization__btn .unlocked {\n    opacity: .4\n}\n\n.swagger-ui .model-box-control,.swagger-ui .models-control,.swagger-ui .opblock-summary-control {\n    all: inherit;\n    cursor: pointer;\n    flex: 1;\n    padding: 0\n}\n\n.swagger-ui .model-box-control:focus,.swagger-ui .models-control:focus,.swagger-ui .opblock-summary-control:focus {\n    outline: auto\n}\n\n.swagger-ui .expand-methods,.swagger-ui .expand-operation {\n    background: none;\n}\n\n.swagger-ui .expand-methods svg,.swagger-ui .expand-operation svg {\n    height: 20px;\n    width: 20px\n}\n\n.swagger-ui .expand-methods {\n    padding: 0 10px\n}\n\n.swagger-ui .expand-methods:hover svg {\n    fill: #404040\n}\n\n.swagger-ui .expand-methods svg {\n    transition: all .3s;\n    fill: #707070\n}\n\n.swagger-ui button {\n    cursor: pointer;\n    border: none;\n    box-shadow: 2px 2px 8px #aaa;\n}\n\n.swagger-ui button.invalid {\n    animation: shake .4s 1;\n    background: #feebeb;\n}\n\n.swagger-ui .copy-to-clipboard {\n    align-items: center;\n    background: #7d8293;\n    bottom: 10px;\n    display: flex;\n    height: 30px;\n    justify-content: center;\n    position: absolute;\n    right: 100px;\n    width: 30px\n}\n\n.swagger-ui .copy-to-clipboard button {\n    background: url(\"data:image/svg+xml;charset=utf-8,<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" width=\\\"16\\\" height=\\\"15\\\" aria-hidden=\\\"true\\\"><path fill=\\\"%23fff\\\" fill-rule=\\\"evenodd\\\" d=\\\"M4 12h4v1H4zm5-6H4v1h5zm2 3V7l-3 3 3 3v-2h5V9zM6.5 8H4v1h2.5zM4 11h2.5v-1H4zm9 1h1v2c-.02.28-.11.52-.3.7s-.42.28-.7.3H3c-.55 0-1-.45-1-1V3c0-.55.45-1 1-1h3c0-1.11.89-2 2-2s2 .89 2 2h3c.55 0 1 .45 1 1v5h-1V5H3v9h10zM4 4h8c0-.55-.45-1-1-1h-1c-.55 0-1-.45-1-1s-.45-1-1-1-1 .45-1 1-.45 1-1 1H5c-.55 0-1 .45-1 1\\\"/></svg>\") 50% no-repeat;\n    flex-grow: 1;\n    flex-shrink: 1;\n    height: 25px\n}\n\n.swagger-ui .copy-to-clipboard:active {\n    background: #5e626f\n}\n\n.swagger-ui .opblock-control-arrow {\n    background: none;\n    text-align: center\n}\n\n.swagger-ui .curl-command .copy-to-clipboard {\n    bottom: 5px;\n    height: 20px;\n    right: 10px;\n    width: 20px\n}\n\n.swagger-ui .curl-command .copy-to-clipboard button {\n    height: 18px\n}\n\n.swagger-ui .opblock .opblock-summary .view-line-link.copy-to-clipboard {\n    height: 26px;\n    position: static\n}\n\n.swagger-ui select {\n    -webkit-appearance: none;\n    -moz-appearance: none;\n    appearance: none;\n    background: #f7f7f7 url(\"data:image/svg+xml;charset=utf-8,<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 20 20\\\"><path d=\\\"M13.418 7.859a.695.695 0 0 1 .978 0 .68.68 0 0 1 0 .969l-3.908 3.83a.697.697 0 0 1-.979 0l-3.908-3.83a.68.68 0 0 1 0-.969.695.695 0 0 1 .978 0L10 11z\\\"/></svg>\") right 10px center no-repeat;\n    background-size: 20px;\n    color: #3b4151;\n    font-family: sans-serif;\n    font-size: 14px;\n    font-weight: 700;\n    padding: 5px 40px 5px 10px;\n    border: none;\n}\n\n.swagger-ui select[multiple] {\n    background: #f7f7f7;\n    margin: 5px 0;\n    padding: 5px\n}\n\n.swagger-ui select.invalid {\n    animation: shake .4s 1;\n    background: #feebeb;\n}\n\n.swagger-ui .opblock-body select {\n    min-width: 230px\n}\n\n@media(max-width: 768px) {\n    .swagger-ui .opblock-body select {\n        min-width:180px\n    }\n}\n\n@media(max-width: 640px) {\n    .swagger-ui .opblock-body select {\n        min-width:100%;\n        width: 100%\n    }\n}\n\n.swagger-ui label {\n    color: #3b4151;\n    font-family: sans-serif;\n    font-size: 12px;\n    font-weight: 700;\n    margin: 0 0 5px\n}\n\n.swagger-ui input[type=email],.swagger-ui input[type=file],.swagger-ui input[type=password],.swagger-ui input[type=search],.swagger-ui input[type=text] {\n    line-height: 1\n}\n\n@media(max-width: 768px) {\n    .swagger-ui input[type=email],.swagger-ui input[type=file],.swagger-ui input[type=password],.swagger-ui input[type=search],.swagger-ui input[type=text] {\n        max-width:175px\n    }\n}\n\n.swagger-ui input[type=email],.swagger-ui input[type=file],.swagger-ui input[type=password],.swagger-ui input[type=search],.swagger-ui input[type=text],.swagger-ui textarea {\n    background: #fff;\n    margin: 5px 0;\n    min-width: 100px;\n    padding: 8px 10px\n}\n\n.swagger-ui input[type=email].invalid,.swagger-ui input[type=file].invalid,.swagger-ui input[type=password].invalid,.swagger-ui input[type=search].invalid,.swagger-ui input[type=text].invalid,.swagger-ui textarea.invalid {\n    animation: shake .4s 1;\n    background: #feebeb;\n}\n\n.swagger-ui input[disabled],.swagger-ui select[disabled],.swagger-ui textarea[disabled] {\n    background-color: #fafafa;\n    color: #888;\n    cursor: not-allowed\n}\n\n.swagger-ui textarea[disabled] {\n    background-color: #41444e;\n    color: #fff\n}\n\n@keyframes shake {\n    10%,90% {\n        transform: translate3d(-1px,0,0)\n    }\n\n    20%,80% {\n        transform: translate3d(2px,0,0)\n    }\n\n    30%,50%,70% {\n        transform: translate3d(-4px,0,0)\n    }\n\n    40%,60% {\n        transform: translate3d(4px,0,0)\n    }\n}\n\n.swagger-ui textarea {\n    background: hsla(0,0%,100%,.8);\n    color: #3b4151;\n    font-family: monospace;\n    font-size: 12px;\n    font-weight: 600;\n    min-height: 280px;\n    outline: none;\n    padding: 10px;\n    width: 100%\n}\n\n.swagger-ui textarea.curl {\n    background: #41444e;\n    color: #fff;\n    font-family: monospace;\n    font-size: 12px;\n    font-weight: 600;\n    margin: 0;\n    min-height: 100px;\n    padding: 10px;\n    resize: none\n}\n\n.swagger-ui .checkbox {\n    color: #303030;\n    padding: 5px 0 10px;\n    transition: opacity .5s\n}\n\n.swagger-ui .checkbox label {\n    display: flex\n}\n\n.swagger-ui .checkbox p {\n    color: #3b4151;\n    font-family: monospace;\n    font-style: italic;\n    font-weight: 400!important;\n    font-weight: 600;\n    margin: 0!important\n}\n\n.swagger-ui .checkbox input[type=checkbox] {\n    display: none\n}\n\n.swagger-ui .checkbox input[type=checkbox]+label>.item {\n    background: #e8e8e8;\n    cursor: pointer;\n    display: inline-block;\n    flex: none;\n    height: 16px;\n    margin: 0 8px 0 0;\n    padding: 5px;\n    position: relative;\n    top: 3px;\n    width: 16px\n}\n\n.swagger-ui .checkbox input[type=checkbox]+label>.item:active {\n    transform: scale(.9)\n}\n\n.swagger-ui .checkbox input[type=checkbox]:checked+label>.item {\n    background: #e8e8e8 url(\"data:image/svg+xml;charset=utf-8,<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" width=\\\"10\\\" height=\\\"8\\\" viewBox=\\\"3 7 10 8\\\"><path fill=\\\"%2341474E\\\" fill-rule=\\\"evenodd\\\" d=\\\"M6.333 15 3 11.667l1.333-1.334 2 2L11.667 7 13 8.333z\\\"/></svg>\") 50% no-repeat\n}\n\n.swagger-ui .dialog-ux {\n    bottom: 0;\n    left: 0;\n    position: fixed;\n    right: 0;\n    top: 0;\n    z-index: 9999\n}\n\n.swagger-ui .dialog-ux .backdrop-ux {\n    background: rgba(0,0,0,.8);\n    bottom: 0;\n    left: 0;\n    position: fixed;\n    right: 0;\n    top: 0\n}\n\n.swagger-ui .dialog-ux .modal-ux {\n    background: #fff;\n    left: 50%;\n    max-width: 650px;\n    min-width: 300px;\n    position: absolute;\n    top: 50%;\n    transform: translate(-50%,-50%);\n    width: 100%;\n    z-index: 9999\n}\n\n.swagger-ui .dialog-ux .modal-ux-content {\n    max-height: 540px;\n    overflow-y: auto;\n    padding: 20px\n}\n\n.swagger-ui .dialog-ux .modal-ux-content p {\n    color: #41444e;\n    color: #3b4151;\n    font-family: sans-serif;\n    font-size: 12px;\n    margin: 0 0 5px\n}\n\n.swagger-ui .dialog-ux .modal-ux-content h4 {\n    color: #3b4151;\n    font-family: sans-serif;\n    font-size: 18px;\n    font-weight: 600;\n    margin: 15px 0 0\n}\n\n.swagger-ui .dialog-ux .modal-ux-header {\n    align-items: center;\n    display: flex;\n    padding: 12px 0\n}\n\n.swagger-ui .dialog-ux .modal-ux-header .close-modal {\n    -webkit-appearance: none;\n    -moz-appearance: none;\n    appearance: none;\n    background: none;\n    padding: 0 10px\n}\n\n.swagger-ui .dialog-ux .modal-ux-header h3 {\n    color: #3b4151;\n    flex: 1;\n    font-family: sans-serif;\n    font-size: 20px;\n    font-weight: 600;\n    margin: 0;\n    padding: 0 20px\n}\n\n.swagger-ui .model {\n    color: #3b4151;\n    font-family: monospace;\n    font-size: 12px;\n    font-weight: 300;\n    font-weight: 600\n}\n\n.swagger-ui .model .deprecated span,.swagger-ui .model .deprecated td {\n    color: #a0a0a0!important\n}\n\n.swagger-ui .model .deprecated>td:first-of-type {\n    -webkit-text-decoration: line-through;\n    text-decoration: line-through\n}\n\n.swagger-ui .model-toggle {\n    cursor: pointer;\n    display: inline-block;\n    font-size: 10px;\n    margin: auto .3em;\n    position: relative;\n    top: 6px;\n    transform: rotate(90deg);\n    transform-origin: 50% 50%;\n    transition: transform .15s ease-in\n}\n\n.swagger-ui .model-toggle.collapsed {\n    transform: rotate(0deg)\n}\n\n.swagger-ui .model-toggle:after {\n    background: url(\"data:image/svg+xml;charset=utf-8,<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" width=\\\"24\\\" height=\\\"24\\\" viewBox=\\\"0 0 24 24\\\"><path d=\\\"M10 6 8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z\\\"/></svg>\") 50% no-repeat;\n    background-size: 100%;\n    content: \"\";\n    display: block;\n    height: 20px;\n    width: 20px\n}\n\n.swagger-ui .model-jump-to-path {\n    cursor: pointer;\n    position: relative\n}\n\n.swagger-ui .model-jump-to-path .view-line-link {\n    cursor: pointer;\n    position: absolute;\n    top: -.4em\n}\n\n.swagger-ui .model-title {\n    position: relative\n}\n\n.swagger-ui .model-title:hover .model-hint {\n    display: block\n}\n\n.swagger-ui .model-hint {\n    background: rgba(0,0,0,.7);\n    color: #ebebeb;\n    display: none;\n    padding: .1em .5em;\n    position: absolute;\n    top: -1.8em;\n    white-space: nowrap\n}\n\n.swagger-ui .model p {\n    margin: 0 0 1em\n}\n\n.swagger-ui .model .property {\n    color: #999;\n    font-style: italic\n}\n\n.swagger-ui .model .property.primitive {\n    color: #6b6b6b\n}\n\n.swagger-ui .model .property.primitive.extension {\n    display: block\n}\n\n.swagger-ui .model .property.primitive.extension>td:first-child {\n    padding-left: 0;\n    padding-right: 0;\n    width: auto\n}\n\n.swagger-ui .model .property.primitive.extension>td:first-child:after {\n    content: \": \"\n}\n\n.swagger-ui .model .external-docs,.swagger-ui table.model tr.description {\n    color: #666;\n    font-weight: 400\n}\n\n.swagger-ui table.model tr.description td:first-child,.swagger-ui table.model tr.property-row.required td:first-child {\n    font-weight: 700\n}\n\n.swagger-ui table.model tr.property-row td {\n    vertical-align: top\n}\n\n.swagger-ui table.model tr.property-row td:first-child {\n    padding-right: .2em\n}\n\n.swagger-ui table.model tr.property-row .star {\n    color: red\n}\n\n.swagger-ui table.model tr.extension {\n    color: #777\n}\n\n.swagger-ui table.model tr.extension td:last-child {\n    vertical-align: top\n}\n\n.swagger-ui table.model tr.external-docs td:first-child {\n    font-weight: 700\n}\n\n.swagger-ui table.model tr .renderedMarkdown p:first-child {\n    margin-top: 0\n}\n\n.swagger-ui section.models {\n    margin: 30px 0\n}\n\n.swagger-ui section.models .pointer {\n    cursor: pointer\n}\n\n.swagger-ui section.models.is-open {\n    padding: 0 0 20px\n}\n\n.swagger-ui section.models.is-open h4 {\n    margin: 0 0 5px\n}\n\n.swagger-ui section.models h4 {\n    align-items: center;\n    color: #606060;\n    cursor: pointer;\n    display: flex;\n    font-family: sans-serif;\n    font-size: 16px;\n    margin: 0;\n    padding: 10px 20px 10px 10px;\n    transition: all .2s\n}\n\n.swagger-ui section.models h4 svg {\n    transition: all .4s\n}\n\n.swagger-ui section.models h4 span {\n    flex: 1\n}\n\n.swagger-ui section.models h4:hover {\n    background: rgba(0,0,0,.02)\n}\n\n.swagger-ui section.models h5 {\n    color: #707070;\n    font-family: sans-serif;\n    font-size: 16px;\n    margin: 0 0 10px\n}\n\n.swagger-ui section.models .model-jump-to-path {\n    position: relative;\n    top: 5px\n}\n\n.swagger-ui section.models .model-container {\n    background: rgba(0,0,0,.05);\n    margin: 0 20px 15px;\n    position: relative;\n    transition: all .5s\n}\n\n.swagger-ui section.models .model-container:hover {\n    background: rgba(0,0,0,.07)\n}\n\n.swagger-ui section.models .model-container:first-of-type {\n    margin: 20px\n}\n\n.swagger-ui section.models .model-container:last-of-type {\n    margin: 0 20px\n}\n\n.swagger-ui section.models .model-container .models-jump-to-path {\n    opacity: .65;\n    position: absolute;\n    right: 5px;\n    top: 8px\n}\n\n.swagger-ui section.models .model-box {\n    background: none\n}\n\n.swagger-ui section.models .model-box:has(.model-box) {\n    overflow-x: auto;\n    width: 100%\n}\n\n.swagger-ui .model-box {\n    background: rgba(0,0,0,.1);\n    display: inline-block;\n    padding: 10px\n}\n\n.swagger-ui .model-box .model-jump-to-path {\n    position: relative;\n    top: 4px\n}\n\n.swagger-ui .model-box.deprecated {\n    opacity: .5\n}\n\n.swagger-ui .model-title {\n    color: #505050;\n    font-family: sans-serif;\n    font-size: 16px\n}\n\n.swagger-ui .model-title img {\n    bottom: 0;\n    margin-left: 1em;\n    position: relative\n}\n\n.swagger-ui .model-deprecated-warning {\n    color: #f93e3e;\n    font-family: sans-serif;\n    font-size: 16px;\n    font-weight: 600;\n    margin-right: 1em\n}\n\n.swagger-ui span>span.model .brace-close {\n    padding: 0 0 0 10px\n}\n\n.swagger-ui .prop-name {\n    display: inline-block;\n    margin-right: 1em\n}\n\n.swagger-ui .prop-type {\n    color: #55a\n}\n\n.swagger-ui .prop-enum {\n    display: block\n}\n\n.swagger-ui .prop-format {\n    color: #606060\n}\n\n.swagger-ui .servers>label {\n    color: #3b4151;\n    font-family: sans-serif;\n    font-size: 12px;\n    margin: -20px 15px 0 0\n}\n\n.swagger-ui .servers>label select {\n    max-width: 100%;\n    min-width: 130px;\n    width: 100%\n}\n\n.swagger-ui .servers h4.message {\n    padding-bottom: 2em\n}\n\n.swagger-ui .servers table tr {\n    width: 30em\n}\n\n.swagger-ui .servers table td {\n    display: inline-block;\n    max-width: 15em;\n    padding-bottom: 10px;\n    padding-top: 10px;\n    vertical-align: middle\n}\n\n.swagger-ui .servers table td:first-of-type {\n    padding-right: 1em\n}\n\n.swagger-ui .servers table td input {\n    height: 100%;\n    width: 100%\n}\n\n.swagger-ui .servers .computed-url {\n    margin: 2em 0\n}\n\n.swagger-ui .servers .computed-url code {\n    display: inline-block;\n    font-size: 16px;\n    margin: 0 1em;\n    padding: 4px\n}\n\n.swagger-ui .servers-title {\n    font-size: 12px;\n    font-weight: 700\n}\n\n.swagger-ui .operation-servers h4.message {\n    margin-bottom: 2em\n}\n\n.swagger-ui table {\n    border-collapse: collapse;\n    padding: 0 10px;\n    width: 100%\n}\n\n.swagger-ui table.model tbody tr td {\n    padding: 0 0 0 1em;\n    vertical-align: top\n}\n\n.swagger-ui table.model tbody tr td:first-of-type {\n    padding: 0 0 0 2em;\n    width: 174px\n}\n\n.swagger-ui table.headers td {\n    color: #3b4151;\n    font-family: monospace;\n    font-size: 12px;\n    font-weight: 300;\n    font-weight: 600;\n    vertical-align: middle\n}\n\n.swagger-ui table.headers .header-example {\n    color: #999;\n    font-style: italic\n}\n\n.swagger-ui table tbody tr td {\n    vertical-align: top\n}\n\n.swagger-ui table tbody tr td:first-of-type {\n    min-width: 6em;\n    padding: 4px;\n}\n\n.swagger-ui table tbody tr td:has(.model-box) {\n    max-width: 1px\n}\n\n.swagger-ui table thead tr td,.swagger-ui table thead tr th {\n    color: #3b4151;\n    font-family: sans-serif;\n    font-size: 12px;\n    font-weight: 700;\n    padding: 12px 0;\n    text-align: left\n}\n\n.swagger-ui .parameters-col_description {\n    margin-bottom: 2em;\n    width: 99%\n}\n\n.swagger-ui .parameters-col_description input {\n    max-width: 340px;\n    width: 100%;\n    border: none;\n    background-color: #eee;\n}\n\n.swagger-ui .parameters-col_description .markdown:first-child p:first-child,.swagger-ui .parameters-col_description .renderedMarkdown:first-child p:first-child {\n    margin: 0\n}\n\n.swagger-ui .parameter__name {\n    color: #3b4151;\n    font-family: sans-serif;\n    font-size: 16px;\n    font-weight: 400;\n    margin-right: .75em\n}\n\n.swagger-ui .parameter__name.required {\n    font-weight: 700\n}\n\n.swagger-ui .parameter__name.required span {\n    color: red\n}\n\n.swagger-ui .parameter__name.required:after {\n    color: rgba(255,0,0,.6);\n    content: \"required\";\n    font-size: 10px;\n    padding: 5px;\n    position: relative;\n    top: -6px\n}\n\n.swagger-ui .parameter__extension,.swagger-ui .parameter__in {\n    color: grey;\n    font-family: monospace;\n    font-size: 12px;\n    font-style: italic;\n    font-weight: 600\n}\n\n.swagger-ui .parameter__deprecated {\n    color: red;\n    font-family: monospace;\n    font-size: 12px;\n    font-style: italic;\n    font-weight: 600\n}\n\n.swagger-ui .parameter__empty_value_toggle {\n    display: block;\n    font-size: 13px;\n    padding-bottom: 12px;\n    padding-top: 5px\n}\n\n.swagger-ui .parameter__empty_value_toggle input {\n    margin-right: 7px;\n    width: auto\n}\n\n.swagger-ui .parameter__empty_value_toggle.disabled {\n    opacity: .7\n}\n\n.swagger-ui .table-container {\n    padding-left: 20px\n}\n\n.swagger-ui .response-col_description {\n    width: 99%\n}\n\n.swagger-ui .response-col_description .markdown p:first-child,.swagger-ui .response-col_description .renderedMarkdown p:first-child {\n    margin: 0\n}\n\n.swagger-ui .response-col_description .markdown p:last-child,.swagger-ui .response-col_description .renderedMarkdown p:last-child {\n    margin-bottom: 0\n}\n\n.swagger-ui .response-col_links {\n    min-width: 6em\n}\n\n.swagger-ui .response__extension {\n    color: grey;\n    font-family: monospace;\n    font-size: 12px;\n    font-style: italic;\n    font-weight: 600\n}\n\n.swagger-ui .topbar {\n    background-color: #1b1b1b;\n    padding: 10px 0\n}\n\n.swagger-ui .topbar .topbar-wrapper {\n    align-items: center;\n    display: flex;\n    flex-wrap: wrap;\n    gap: 10px\n}\n\n@media(max-width: 550px) {\n    .swagger-ui .topbar .topbar-wrapper {\n        align-items:start;\n        flex-direction: column\n    }\n}\n\n.swagger-ui .topbar a {\n    align-items: center;\n    color: #fff;\n    display: flex;\n    flex: 1;\n    font-family: sans-serif;\n    font-size: 1.5em;\n    font-weight: 700;\n    max-width: 300px;\n    -webkit-text-decoration: none;\n    text-decoration: none\n}\n\n.swagger-ui .topbar a span {\n    margin: 0;\n    padding: 0 10px\n}\n\n.swagger-ui .topbar .download-url-wrapper {\n    display: flex;\n    flex: 3;\n    justify-content: flex-end\n}\n\n.swagger-ui .topbar .download-url-wrapper input[type=text] {\n    margin: 0;\n    max-width: 100%;\n    outline: none;\n    width: 100%\n}\n\n.swagger-ui .topbar .download-url-wrapper .select-label {\n    align-items: center;\n    color: #f0f0f0;\n    display: flex;\n    margin: 0;\n    max-width: 600px;\n    width: 100%\n}\n\n.swagger-ui .topbar .download-url-wrapper .select-label span {\n    flex: 1;\n    font-size: 16px;\n    padding: 0 10px 0 0;\n    text-align: right\n}\n\n.swagger-ui .topbar .download-url-wrapper .select-label select {\n    flex: 2;\n    outline: none;\n    width: 100%\n}\n\n.swagger-ui .topbar .download-url-wrapper .download-url-button {\n    background: #62a03f;\n    color: #fff;\n    font-family: sans-serif;\n    font-size: 16px;\n    font-weight: 700;\n    padding: 4px 30px\n}\n\n@media(max-width: 550px) {\n    .swagger-ui .topbar .download-url-wrapper {\n        width:100%\n    }\n}\n\n.swagger-ui .info {\n    margin: 20px 0;\n}\n\n.swagger-ui .info.failed-config {\n    margin-left: auto;\n    margin-right: auto;\n    max-width: 880px;\n    text-align: center\n}\n\n.swagger-ui .info hgroup.main a {\n    font-size: 12px\n}\n\n.swagger-ui .info li,.swagger-ui .info p,.swagger-ui .info pre,.swagger-ui .info table {\n    font-size: 14px\n}\n\n.swagger-ui .info h1,.swagger-ui .info h2,.swagger-ui .info h3,.swagger-ui .info h4,.swagger-ui .info h5,.swagger-ui .info li,.swagger-ui .info p,.swagger-ui .info table {\n    color: #3b4151;\n    font-family: sans-serif\n}\n\n.swagger-ui .info a {\n    color: #4990e2;\n    font-family: sans-serif;\n    font-size: 14px;\n    transition: all .4s;\n    display: none;\n}\n\n.swagger-ui .info a:hover {\n    color: #1f69c0\n}\n\n.swagger-ui .info>div {\n    margin: 0 0 5px\n}\n\n.swagger-ui .info .base-url {\n    color: #3b4151;\n    font-family: monospace;\n    font-size: 12px;\n    font-weight: 300!important;\n    font-weight: 600;\n    margin: 0\n}\n\n.swagger-ui .info .title {\n    color: #3b4151;\n    font-family: sans-serif;\n    font-size: 36px;\n    margin: 0\n}\n\n.swagger-ui .info .title small {\n    background: #7d8492;\n    display: inline-block;\n    font-size: 10px;\n    margin: 0 0 0 5px;\n    padding: 2px 4px;\n    position: relative;\n    top: -5px;\n    vertical-align: super\n}\n\n.swagger-ui .info .title small.version-stamp {\n    background-color: #89bf04\n}\n\n.swagger-ui .info .title small pre {\n    color: #fff;\n    font-family: sans-serif;\n    margin: 0;\n    padding: 0\n}\n\n.swagger-ui .auth-btn-wrapper {\n    display: flex;\n    justify-content: center;\n    padding: 10px 0\n}\n\n.swagger-ui .auth-btn-wrapper .btn-done {\n    margin-right: 1em\n}\n\n.swagger-ui .auth-wrapper {\n    display: flex;\n    flex: 1;\n    justify-content: flex-end\n}\n\n.swagger-ui .auth-wrapper .authorize {\n    margin-left: 10px;\n    margin-right: 10px;\n    padding-right: 20px\n}\n\n.swagger-ui .auth-container {\n    margin: 0 0 10px;\n    padding: 10px 20px\n}\n\n.swagger-ui .auth-container:last-of-type {\n    margin: 0;\n    padding: 10px 20px\n}\n\n.swagger-ui .auth-container h4 {\n    margin: 5px 0 15px!important\n}\n\n.swagger-ui .auth-container .wrapper {\n    margin: 0;\n    padding: 0\n}\n\n.swagger-ui .auth-container input[type=password],.swagger-ui .auth-container input[type=text] {\n    min-width: 230px\n}\n\n.swagger-ui .auth-container .errors {\n    background-color: #fee;\n    color: red;\n    color: #3b4151;\n    font-family: monospace;\n    font-size: 12px;\n    font-weight: 600;\n    margin: 1em;\n    padding: 10px\n}\n\n.swagger-ui .auth-container .errors b {\n    margin-right: 1em;\n    text-transform: capitalize\n}\n\n.swagger-ui .scopes h2 {\n    color: #3b4151;\n    font-family: sans-serif;\n    font-size: 14px\n}\n\n.swagger-ui .scopes h2 a {\n    color: #4990e2;\n    cursor: pointer;\n    font-size: 12px;\n    padding-left: 10px;\n    -webkit-text-decoration: underline;\n    text-decoration: underline\n}\n\n.swagger-ui .scope-def {\n    padding: 0 0 20px\n}\n\n.swagger-ui .errors-wrapper {\n    animation: scaleUp .5s;\n    background: rgba(249,62,62,.1);\n    margin: 20px;\n    padding: 10px 20px\n}\n\n.swagger-ui .errors-wrapper .error-wrapper {\n    margin: 0 0 10px\n}\n\n.swagger-ui .errors-wrapper .errors h4 {\n    color: #3b4151;\n    font-family: monospace;\n    font-size: 14px;\n    font-weight: 600;\n    margin: 0\n}\n\n.swagger-ui .errors-wrapper .errors small {\n    color: #606060\n}\n\n.swagger-ui .errors-wrapper .errors .message {\n    white-space: pre-line\n}\n\n.swagger-ui .errors-wrapper .errors .message.thrown {\n    max-width: 100%\n}\n\n.swagger-ui .errors-wrapper .errors .error-line {\n    cursor: pointer;\n    -webkit-text-decoration: underline;\n    text-decoration: underline\n}\n\n.swagger-ui .errors-wrapper hgroup {\n    align-items: center;\n    display: flex\n}\n\n.swagger-ui .errors-wrapper hgroup h4 {\n    color: #3b4151;\n    flex: 1;\n    font-family: sans-serif;\n    font-size: 20px;\n    margin: 0\n}\n\n@keyframes scaleUp {\n    0% {\n        opacity: 0;\n        transform: scale(.8)\n    }\n\n    to {\n        opacity: 1;\n        transform: scale(1)\n    }\n}\n\n.swagger-ui .Resizer.vertical.disabled {\n    display: none\n}\n\n.swagger-ui .markdown p,.swagger-ui .markdown pre,.swagger-ui .renderedMarkdown p,.swagger-ui .renderedMarkdown pre {\n    margin: 1em auto;\n    word-break: break-all;\n    word-break: break-word\n}\n\n.swagger-ui .markdown pre,.swagger-ui .renderedMarkdown pre {\n    background: none;\n    color: #000;\n    font-weight: 400;\n    padding: 0;\n    white-space: pre-wrap\n}\n\n.swagger-ui .markdown code,.swagger-ui .renderedMarkdown code {\n    background: rgba(0,0,0,.05);\n    color: #9012fe;\n    font-family: monospace;\n    font-size: 14px;\n    font-weight: 600;\n    padding: 5px 7px\n}\n\n.swagger-ui .markdown pre>code,.swagger-ui .renderedMarkdown pre>code {\n    display: block\n}\n\n.swagger-ui .json-schema-2020-12-keyword--\\$vocabulary ul {\n    margin: 0 0 0 20px\n}\n\n.swagger-ui .json-schema-2020-12-\\$vocabulary-uri {\n    margin-left: 35px\n}\n\n.swagger-ui .json-schema-2020-12-\\$vocabulary-uri--disabled {\n    -webkit-text-decoration: line-through;\n    text-decoration: line-through\n}\n\n.swagger-ui .json-schema-2020-12-keyword--const .json-schema-2020-12-json-viewer__name,.swagger-ui .json-schema-2020-12-keyword--const .json-schema-2020-12-json-viewer__value {\n    color: #3b4151;\n    font-style: normal\n}\n\n.swagger-ui .json-schema-2020-12__constraint {\n    background-color: #805ad5;\n    color: #3b4151;\n    color: #fff;\n    font-family: monospace;\n    font-weight: 600;\n    line-height: 1.5;\n    margin-left: 10px;\n    padding: 1px 3px\n}\n\n.swagger-ui .json-schema-2020-12__constraint--string {\n    background-color: #d69e2e;\n    color: #fff\n}\n\n.swagger-ui .json-schema-2020-12-keyword--default .json-schema-2020-12-json-viewer__name,.swagger-ui .json-schema-2020-12-keyword--default .json-schema-2020-12-json-viewer__value {\n    color: #3b4151;\n    font-style: normal\n}\n\n.swagger-ui .json-schema-2020-12-keyword--dependentRequired>ul {\n    display: inline-block;\n    margin: 0;\n    padding: 0\n}\n\n.swagger-ui .json-schema-2020-12-keyword--dependentRequired>ul li {\n    display: inline;\n    list-style-type: none\n}\n\n.swagger-ui .json-schema-2020-12-keyword--description {\n    color: #6b6b6b;\n    font-size: 12px;\n    margin-left: 20px\n}\n\n.swagger-ui .json-schema-2020-12-keyword--description p {\n    margin: 0\n}\n\n.swagger-ui .json-schema-2020-12-keyword--enum .json-schema-2020-12-json-viewer__name,.swagger-ui .json-schema-2020-12-keyword--enum .json-schema-2020-12-json-viewer__value,.swagger-ui .json-schema-2020-12-keyword--examples .json-schema-2020-12-json-viewer__name,.swagger-ui .json-schema-2020-12-keyword--examples .json-schema-2020-12-json-viewer__value {\n    color: #3b4151;\n    font-style: normal\n}\n\n.swagger-ui .json-schema-2020-12-json-viewer-extension-keyword .json-schema-2020-12-json-viewer__name,.swagger-ui .json-schema-2020-12-json-viewer-extension-keyword .json-schema-2020-12-json-viewer__value {\n    color: #929292;\n    font-style: italic\n}\n\n.swagger-ui .json-schema-2020-12-keyword--patternProperties ul {\n    margin: 0;\n    padding: 0\n}\n\n.swagger-ui .json-schema-2020-12-keyword--patternProperties .json-schema-2020-12__title:first-of-type:after,.swagger-ui .json-schema-2020-12-keyword--patternProperties .json-schema-2020-12__title:first-of-type:before {\n    color: #55a;\n    content: \"/\"\n}\n\n.swagger-ui .json-schema-2020-12-keyword--properties>ul {\n    margin: 0;\n    padding: 0\n}\n\n.swagger-ui .json-schema-2020-12-property {\n    list-style-type: none\n}\n\n.swagger-ui .json-schema-2020-12-property--required>.json-schema-2020-12:first-of-type>.json-schema-2020-12-head .json-schema-2020-12__title:after {\n    color: red;\n    content: \"*\";\n    font-weight: 700\n}\n\n.swagger-ui .json-schema-2020-12__title {\n    color: #505050;\n    display: inline-block;\n    font-family: sans-serif;\n    font-size: 12px;\n    font-weight: 700;\n    line-height: normal\n}\n\n.swagger-ui .json-schema-2020-12__title .json-schema-2020-12-keyword__name {\n    margin: 0\n}\n\n.swagger-ui .json-schema-2020-12-property {\n    margin: 7px 0\n}\n\n.swagger-ui .json-schema-2020-12-property .json-schema-2020-12__title {\n    color: #3b4151;\n    font-family: monospace;\n    font-size: 12px;\n    font-weight: 600;\n    vertical-align: middle\n}\n\n.swagger-ui .json-schema-2020-12-keyword {\n    margin: 5px 0\n}\n\n.swagger-ui .json-schema-2020-12-keyword__children {\n    margin: 0 0 0 20px;\n    padding: 0\n}\n\n.swagger-ui .json-schema-2020-12-keyword__children--collapsed {\n    display: none\n}\n\n.swagger-ui .json-schema-2020-12-keyword__name {\n    font-size: 12px;\n    font-weight: 700;\n    margin-left: 20px\n}\n\n.swagger-ui .json-schema-2020-12-keyword__name--primary {\n    color: #3b4151;\n    font-style: normal\n}\n\n.swagger-ui .json-schema-2020-12-keyword__name--secondary {\n    color: #6b6b6b;\n    font-style: italic\n}\n\n.swagger-ui .json-schema-2020-12-keyword__name--extension {\n    color: #929292;\n    font-style: italic\n}\n\n.swagger-ui .json-schema-2020-12-keyword__value {\n    color: #6b6b6b;\n    font-size: 12px;\n    font-style: italic;\n    font-weight: 400\n}\n\n.swagger-ui .json-schema-2020-12-keyword__value--primary {\n    color: #3b4151;\n    font-style: normal\n}\n\n.swagger-ui .json-schema-2020-12-keyword__value--secondary {\n    color: #6b6b6b;\n    font-style: italic\n}\n\n.swagger-ui .json-schema-2020-12-keyword__value--extension {\n    color: #929292;\n    font-style: italic\n}\n\n.swagger-ui .json-schema-2020-12-keyword__value--warning {\n    color: #3b4151;\n    color: red;\n    display: inline-block;\n    font-family: monospace;\n    font-style: normal;\n    font-weight: 600;\n    line-height: 1.5;\n    margin-left: 10px;\n    padding: 1px 4px\n}\n\n.swagger-ui .json-schema-2020-12-keyword__name--secondary+.json-schema-2020-12-keyword__value--secondary:before {\n    content: \"=\"\n}\n\n.swagger-ui .json-schema-2020-12__attribute {\n    color: #3b4151;\n    font-family: monospace;\n    font-size: 12px;\n    padding-left: 10px;\n    text-transform: lowercase\n}\n\n.swagger-ui .json-schema-2020-12__attribute--primary {\n    color: #55a\n}\n\n.swagger-ui .json-schema-2020-12__attribute--muted {\n    color: gray\n}\n\n.swagger-ui .json-schema-2020-12__attribute--warning {\n    color: red\n}\n\n.swagger-ui .json-schema-2020-12-json-viewer {\n    margin: 5px 0\n}\n\n.swagger-ui .json-schema-2020-12-json-viewer__children {\n    margin: 0 0 0 20px;\n    padding: 0\n}\n\n.swagger-ui .json-schema-2020-12-json-viewer__children--collapsed {\n    display: none\n}\n\n.swagger-ui .json-schema-2020-12-json-viewer__name {\n    font-size: 12px;\n    font-weight: 700;\n    margin-left: 20px\n}\n\n.swagger-ui .json-schema-2020-12-json-viewer__name--primary {\n    color: #3b4151;\n    font-style: normal\n}\n\n.swagger-ui .json-schema-2020-12-json-viewer__name--secondary {\n    color: #6b6b6b;\n    font-style: italic\n}\n\n.swagger-ui .json-schema-2020-12-json-viewer__name--extension {\n    color: #929292;\n    font-style: italic\n}\n\n.swagger-ui .json-schema-2020-12-json-viewer__value {\n    color: #6b6b6b;\n    font-size: 12px;\n    font-style: italic;\n    font-weight: 400\n}\n\n.swagger-ui .json-schema-2020-12-json-viewer__value--primary {\n    color: #3b4151;\n    font-style: normal\n}\n\n.swagger-ui .json-schema-2020-12-json-viewer__value--secondary {\n    color: #6b6b6b;\n    font-style: italic\n}\n\n.swagger-ui .json-schema-2020-12-json-viewer__value--extension {\n    color: #929292;\n    font-style: italic\n}\n\n.swagger-ui .json-schema-2020-12-json-viewer__value--warning {\n    color: #3b4151;\n    color: red;\n    display: inline-block;\n    font-family: monospace;\n    font-style: normal;\n    font-weight: 600;\n    line-height: 1.5;\n    margin-left: 10px;\n    padding: 1px 4px\n}\n\n.swagger-ui .json-schema-2020-12-json-viewer__name--secondary+.json-schema-2020-12-json-viewer__value--secondary:before {\n    content: \"=\"\n}\n\n.swagger-ui .json-schema-2020-12 {\n    background-color: rgba(0,0,0,.05);\n    padding: 12px 0 12px 20px\n}\n\n.swagger-ui .json-schema-2020-12--embedded {\n    background-color: inherit;\n    padding-bottom: 0;\n    padding-left: inherit;\n    padding-right: inherit;\n    padding-top: 0\n}\n\n.swagger-ui .json-schema-2020-12-body {\n    margin: 2px 0\n}\n\n.swagger-ui .json-schema-2020-12-body--collapsed {\n    display: none\n}\n\n.swagger-ui .json-schema-2020-12-accordion {\n    outline: none;\n    padding-left: 0;\n    border: none;\n    background-color: transparent;\n}\n\n.swagger-ui .json-schema-2020-12-accordion__children {\n    display: inline-block\n}\n\n.swagger-ui .json-schema-2020-12-accordion__icon {\n    display: inline-block;\n    height: 18px;\n    vertical-align: bottom;\n    width: 18px\n}\n\n.swagger-ui .json-schema-2020-12-accordion__icon--expanded {\n    transform: rotate(-90deg);\n    transform-origin: 50% 50%;\n    transition: transform .15s ease-in\n}\n\n.swagger-ui .json-schema-2020-12-accordion__icon--collapsed {\n    transform: rotate(0deg);\n    transform-origin: 50% 50%;\n    transition: transform .15s ease-in\n}\n\n.swagger-ui .json-schema-2020-12-accordion__icon svg {\n    height: 20px;\n    width: 20px\n}\n\n.swagger-ui .json-schema-2020-12-expand-deep-button {\n    color: #505050;\n    color: #55a;\n    font-family: sans-serif;\n    font-size: 12px;\n    padding-right: 0;\n    border: none;\n    background-color: transparent;\n}\n\n.swagger-ui .model-box .json-schema-2020-12:not(.json-schema-2020-12--embedded)>.json-schema-2020-12-head .json-schema-2020-12__title:first-of-type {\n    font-size: 16px\n}\n\n.swagger-ui .model-box>.json-schema-2020-12 {\n    margin: 0\n}\n\n.swagger-ui .model-box .json-schema-2020-12 {\n    background-color: transparent;\n    padding: 0\n}\n\n.swagger-ui .model-box .json-schema-2020-12-accordion,.swagger-ui .model-box .json-schema-2020-12-expand-deep-button {\n    background-color: transparent\n}\n\n.swagger-ui .models .json-schema-2020-12:not(.json-schema-2020-12--embedded)>.json-schema-2020-12-head .json-schema-2020-12__title:first-of-type {\n    font-size: 16px\n}\n\n.swagger-ui .models .json-schema-2020-12:not(.json-schema-2020-12--embedded) {\n    overflow-x: auto;\n    width: calc(100% - 40px)\n}\n\n.response-col_description__inner {\n    font-weight: 500;\n    font-size: 1.2em;\n}\n"
  },
  {
    "path": "installer.py",
    "content": "from typing import overload, List, Optional\nimport os\nimport sys\nimport json\nimport time\nimport shutil\nimport locale\nimport socket\nimport logging\nimport platform\nimport subprocess\nimport cProfile\nimport importlib\nimport importlib.util\n\n\nclass Dot(dict): # dot notation access to dictionary attributes\n    __getattr__ = dict.get\n    __setattr__ = dict.__setitem__\n    __delattr__ = dict.__delitem__\n\nversion = {\n    'app': 'sd.next',\n    'updated': 'unknown',\n    'commit': 'unknown',\n    'branch': 'unknown',\n    'url': 'unknown',\n    'kanvas': 'unknown',\n}\npkg_resources, setuptools, distutils = None, None, None # defined via ensure_base_requirements\ncurrent_branch = None\nlog = logging.getLogger(\"sd\")\nconsole = None\ndebug = log.debug if os.environ.get('SD_INSTALL_DEBUG', None) is not None else lambda *args, **kwargs: None\npip_log = '--log pip.log ' if os.environ.get('SD_PIP_DEBUG', None) is not None else ''\nlog_file = os.path.join(os.path.dirname(__file__), 'sdnext.log')\nhostname = socket.gethostname()\nlog_rolled = False\nfirst_call = True\nquick_allowed = True\nerrors = []\nopts = {}\nargs = Dot({\n    'debug': False,\n    'reset': False,\n    'profile': False,\n    'upgrade': False,\n    'skip_extensions': False,\n    'skip_requirements': False,\n    'skip_git': False,\n    'skip_torch': False,\n    'use_directml': False,\n    'use_ipex': False,\n    'use_cuda': False,\n    'use_rocm': False,\n    'experimental': False,\n    'test': False,\n    'tls_selfsign': False,\n    'reinstall': False,\n    'version': False,\n    'ignore': False,\n    'uv': False,\n})\ngit_commit = \"unknown\"\ndiffusers_commit = \"unknown\"\nrestart_required = False\nextensions_commit = { # force specific commit for extensions\n    'sd-webui-controlnet': 'ecd33eb',\n    'adetailer': 'a89c01d'\n    # 'stable-diffusion-webui-images-browser': '27fe4a7',\n}\ncontrol_extensions = [ # 3rd party extensions marked as safe for control ui\n    'NudeNet',\n    'IP Adapters',\n    'Remove background',\n]\n\n\ntry:\n    from modules.timer import init\n    ts = init.ts\n    elapsed = init.elapsed\nexcept Exception:\n    ts = lambda *args, **kwargs: None # pylint: disable=unnecessary-lambda-assignment\n    elapsed = lambda *args, **kwargs: None # pylint: disable=unnecessary-lambda-assignment\n\n\ndef get_console():\n    return console\n\n\ndef get_log():\n    return log\n\n\n@overload\ndef str_to_bool(val: str | bool) -> bool: ...\n@overload\ndef str_to_bool(val: None) -> None: ...\ndef str_to_bool(val: str | bool | None) -> bool | None:\n    if isinstance(val, str):\n        if val.strip() and val.strip().lower() in (\"1\", \"true\"):\n            return True\n        return False\n    return val\n\n\ndef install_traceback(suppress: list = []):\n    from rich.traceback import install as traceback_install\n    from rich.pretty import install as pretty_install\n\n    width = os.environ.get(\"SD_TRACEWIDTH\", console.width if console else None)\n    if width is not None:\n        width = int(width)\n    log.excepthook = traceback_install(\n        console=console,\n        extra_lines=int(os.environ.get(\"SD_TRACELINES\", 1)),\n        max_frames=int(os.environ.get(\"SD_TRACEFRAMES\", 16)),\n        width=width,\n        word_wrap=str_to_bool(os.environ.get(\"SD_TRACEWRAP\", False)),\n        indent_guides=str_to_bool(os.environ.get(\"SD_TRACEINDENT\", False)),\n        show_locals=str_to_bool(os.environ.get(\"SD_TRACELOCALS\", False)),\n        locals_hide_dunder=str_to_bool(os.environ.get(\"SD_TRACEDUNDER\", True)),\n        locals_hide_sunder=str_to_bool(os.environ.get(\"SD_TRACESUNDER\", None)),\n        suppress=suppress,\n    )\n    pretty_install(console=console)\n\n\n# setup console and file logging\ndef setup_logging():\n    from functools import partial, partialmethod\n    from logging.handlers import RotatingFileHandler\n    try:\n        import rich # pylint: disable=unused-import\n    except Exception:\n        log.error('Please restart SD.Next so changes take effect')\n        sys.exit(1)\n    from rich.theme import Theme\n    from rich.logging import RichHandler\n    from rich.console import Console\n    from rich.padding import Padding\n    from rich.segment import Segment\n    from rich import box\n    from rich import print as rprint\n    from rich.pretty import install as pretty_install\n\n    class RingBuffer(logging.StreamHandler):\n        def __init__(self, capacity):\n            super().__init__()\n            self.capacity = capacity\n            self.buffer = []\n            self.formatter = logging.Formatter('{ \"asctime\":\"%(asctime)s\", \"created\":%(created)f, \"facility\":\"%(name)s\", \"pid\":%(process)d, \"tid\":%(thread)d, \"level\":\"%(levelname)s\", \"module\":\"%(module)s\", \"func\":\"%(funcName)s\", \"msg\":\"%(message)s\" }')\n\n        def emit(self, record):\n            if record.msg is not None and not isinstance(record.msg, str):\n                record.msg = str(record.msg)\n            try:\n                record.msg = record.msg.replace('\"', \"'\")\n            except Exception:\n                pass\n            msg = self.format(record)\n            # self.buffer.append(json.loads(msg))\n            self.buffer.append(msg)\n            if len(self.buffer) > self.capacity:\n                self.buffer.pop(0)\n\n        def get(self):\n            return self.buffer\n\n    class LogFilter(logging.Filter):\n        def __init__(self):\n            super().__init__()\n\n        def filter(self, record):\n            return len(record.getMessage()) > 2\n\n    def override_padding(self, console, options): # pylint: disable=redefined-outer-name\n        style = console.get_style(self.style)\n        width = options.max_width\n        self.left = 0\n        render_options = options.update_width(width - self.left - self.right)\n        if render_options.height is not None:\n            render_options = render_options.update_height(height=render_options.height - self.top - self.bottom)\n        lines = console.render_lines(self.renderable, render_options, style=style, pad=False)\n        _Segment = Segment\n        left = _Segment(\" \" * self.left, style) if self.left else None\n        right = [_Segment.line()]\n        blank_line: Optional[List[Segment]] = None\n        if self.top:\n            blank_line = [_Segment(f'{\" \" * width}\\n', style)]\n            yield from blank_line * self.top\n        if left:\n            for line in lines:\n                yield left\n                yield from line\n                yield from right\n        else:\n            for line in lines:\n                yield from line\n                yield from right\n        if self.bottom:\n            blank_line = blank_line or [_Segment(f'{\" \" * width}\\n', style)]\n            yield from blank_line * self.bottom\n\n    t_start = time.time()\n\n    if args.log:\n        global log_file # pylint: disable=global-statement\n        log_file = args.log\n\n    logging.TRACE = 25\n    logging.addLevelName(logging.TRACE, 'TRACE')\n    logging.Logger.trace = partialmethod(logging.Logger.log, logging.TRACE)\n    logging.trace = partial(logging.log, logging.TRACE)\n\n    def exception_hook(e: Exception, suppress=[]):\n        from rich.traceback import Traceback\n        tb = Traceback.from_exception(type(e), e, e.__traceback__, show_locals=False, max_frames=16, extra_lines=1, suppress=suppress, theme=\"ansi_dark\", word_wrap=False, width=console.width)\n        # print-to-console, does not get printed-to-file\n        exc_type, exc_value, exc_traceback = sys.exc_info()\n        log.excepthook(exc_type, exc_value, exc_traceback)\n        # print-to-file, temporarily disable-console-handler\n        for handler in log.handlers.copy():\n            if isinstance(handler, RichHandler):\n                log.removeHandler(handler)\n        with console.capture() as capture:\n            console.print(tb)\n        log.critical(capture.get())\n        log.addHandler(rh)\n\n    log.traceback = exception_hook\n\n    level = logging.DEBUG if (args.debug or args.trace) else logging.INFO\n    log.setLevel(logging.DEBUG) # log to file is always at level debug for facility `sd`\n    log.print = rprint\n    global console # pylint: disable=global-statement\n    theme = Theme({\n        \"traceback.border\": \"black\",\n        \"inspect.value.border\": \"black\",\n        \"traceback.border.syntax_error\": \"dark_red\",\n        \"logging.level.info\": \"blue_violet\",\n        \"logging.level.debug\": \"purple4\",\n        \"logging.level.trace\": \"dark_blue\",\n    })\n\n    Padding.__rich_console__ = override_padding\n    box.ROUNDED = box.SIMPLE\n    console = Console(\n        log_time=True,\n        log_time_format='%H:%M:%S-%f',\n        tab_size=4,\n        soft_wrap=True,\n        safe_box=True,\n        theme=theme,\n    )\n\n    logging.basicConfig(level=logging.ERROR, format='%(asctime)s | %(name)s | %(levelname)s | %(module)s | %(message)s', handlers=[logging.NullHandler()]) # redirect default logger to null\n\n    pretty_install(console=console)\n    install_traceback()\n\n    while log.hasHandlers() and len(log.handlers) > 0:\n        log.removeHandler(log.handlers[0])\n\n    log_filter = LogFilter()\n    # handlers\n    rh = RichHandler(show_time=True, omit_repeated_times=False, show_level=True, show_path=False, markup=False, rich_tracebacks=True, log_time_format='%H:%M:%S-%f', level=level, console=console)\n    if args.trace:\n        rh.formatter = logging.Formatter('[%(module)s][%(pathname)s:%(lineno)d]  %(message)s')\n    rh.addFilter(log_filter)\n    rh.setLevel(level)\n    log.addHandler(rh)\n\n    fh = RotatingFileHandler(log_file, maxBytes=32*1024*1024, backupCount=9, encoding='utf-8', delay=True) # 10MB default for log rotation\n    if args.trace:\n        fh.formatter = logging.Formatter(f'%(asctime)s | {hostname} | %(name)s | %(levelname)s | %(module)s | | %(pathname)s:%(lineno)d | %(message)s')\n    else:\n        fh.formatter = logging.Formatter(f'%(asctime)s | {hostname} | %(name)s | %(levelname)s | %(module)s | %(message)s')\n    fh.addFilter(log_filter)\n    fh.setLevel(logging.DEBUG)\n    log.addHandler(fh)\n    global log_rolled # pylint: disable=global-statement\n    if not log_rolled and args.debug and not args.log:\n        try:\n            fh.doRollover()\n        except Exception:\n            pass\n        log_rolled = True\n\n    rb = RingBuffer(100) # 100 entries default in log ring buffer\n    rb.addFilter(log_filter)\n    rb.setLevel(level)\n    log.addHandler(rb)\n    log.buffer = rb.buffer\n\n    def quiet_log(quiet: bool=False, *args, **kwargs): # pylint: disable=redefined-outer-name,keyword-arg-before-vararg\n        if not quiet:\n            log.debug(*args, **kwargs)\n    log.quiet = quiet_log\n\n    # overrides\n    logging.getLogger(\"urllib3\").setLevel(logging.ERROR)\n    logging.getLogger(\"httpx\").setLevel(logging.ERROR)\n    logging.getLogger(\"diffusers\").setLevel(logging.ERROR)\n    logging.getLogger(\"torch\").setLevel(logging.ERROR)\n    logging.getLogger(\"ControlNet\").handlers = log.handlers\n    logging.getLogger(\"lycoris\").handlers = log.handlers\n    ts('log', t_start)\n\n\ndef get_logfile():\n    log_size = os.path.getsize(log_file) if os.path.exists(log_file) else 0\n    log.info(f'Logger: file=\"{os.path.abspath(log_file)}\" level={logging.getLevelName(logging.DEBUG if args.debug else logging.INFO)} host=\"{hostname}\" size={log_size} mode={\"append\" if not log_rolled else \"create\"}')\n    return log_file\n\n\ndef custom_excepthook(exc_type, exc_value, exc_traceback):\n    import traceback\n    if issubclass(exc_type, KeyboardInterrupt):\n        sys.__excepthook__(exc_type, exc_value, exc_traceback)\n        return\n    log.error(f\"Uncaught exception occurred: type={exc_type} value={exc_value}\")\n    if exc_traceback:\n        format_exception = traceback.format_tb(exc_traceback)\n        for line in format_exception:\n            log.error(repr(line))\n\n\ndef print_dict(d):\n    if d is None:\n        return ''\n    return ' '.join([f'{k}={v}' for k, v in d.items()])\n\n\ndef print_profile(profiler: cProfile.Profile, msg: str):\n    profiler.disable()\n    from modules.errors import profile\n    profile(profiler, msg)\n\n\ndef package_version(package):\n    global pkg_resources # pylint: disable=global-statement\n    if pkg_resources is None:\n        import pkg_resources # pylint: disable=redefined-outer-name\n    try:\n        return pkg_resources.get_distribution(package).version\n    except Exception:\n        return None\n\n\ndef package_spec(package):\n    global pkg_resources # pylint: disable=global-statement\n    if pkg_resources is None:\n        import pkg_resources # pylint: disable=redefined-outer-name\n    spec = pkg_resources.working_set.by_key.get(package, None) # more reliable than importlib\n    if spec is None:\n        spec = pkg_resources.working_set.by_key.get(package.lower(), None) # check name variations\n    if spec is None:\n        spec = pkg_resources.working_set.by_key.get(package.replace('_', '-'), None) # check name variations\n    return spec\n\n\n# check if package is installed\ndef installed(package, friendly: str = None, reload = False, quiet = False): # pylint: disable=redefined-outer-name\n    t_start = time.time()\n    ok = True\n    try:\n        if reload:\n            try:\n                importlib.reload(pkg_resources)\n            except Exception:\n                pass\n        if friendly:\n            pkgs = friendly.split()\n        else:\n            pkgs = [p for p in package.split() if not p.startswith('-') and not p.startswith('=') and not p.startswith('git+')]\n            pkgs = [p.split('/')[-1] for p in pkgs] # get only package name if installing from url\n        for pkg in pkgs:\n            if '!=' in pkg:\n                p = pkg.split('!=')\n                return True # check for not equal always return true\n            elif '>=' in pkg:\n                p = pkg.split('>=')\n            else:\n                p = pkg.split('==')\n            spec = package_spec(p[0])\n            ok = ok and spec is not None\n            if ok:\n                pkg_version = package_version(p[0])\n                if len(p) > 1:\n                    exact = pkg_version == p[1]\n                    if not exact and not quiet:\n                        if args.experimental:\n                            log.warning(f'Install: package=\"{p[0]}\" installed={pkg_version} required={p[1]} allowing experimental')\n                        else:\n                            log.warning(f'Install: package=\"{p[0]}\" installed={pkg_version} required={p[1]} version mismatch')\n                            global restart_required # pylint: disable=global-statement\n                            restart_required = True\n                    ok = ok and (exact or args.experimental)\n            else:\n                if not quiet:\n                    log.debug(f'Install: package=\"{p[0]}\" install required')\n        ts('installed', t_start)\n        return ok\n    except Exception as e:\n        log.error(f'Install: package=\"{pkgs}\" {e}')\n        ts('installed', t_start)\n        return False\n\ndef uninstall(package, quiet = False):\n    t_start = time.time()\n    packages = package if isinstance(package, list) else [package]\n    res = ''\n    for p in packages:\n        if installed(p, p, quiet=True):\n            if not quiet:\n                log.warning(f'Package: {p} uninstall')\n            res += pip(f\"uninstall {p} --yes --quiet\", ignore=True, quiet=True, uv=False)\n    ts('uninstall', t_start)\n    return res\n\n\ndef run(cmd: str, arg: str):\n    result = subprocess.run(f'\"{cmd}\" {arg}', shell=True, check=False, env=os.environ, stdout=subprocess.PIPE, stderr=subprocess.PIPE)\n    txt = result.stdout.decode(encoding=\"utf8\", errors=\"ignore\")\n    if len(result.stderr) > 0:\n        txt += ('\\n' if len(txt) > 0 else '') + result.stderr.decode(encoding=\"utf8\", errors=\"ignore\")\n    txt = txt.strip()\n    debug(f'Exec {cmd}: {txt}')\n    return txt\n\n\ndef pip(arg: str, ignore: bool = False, quiet: bool = True, uv = True):\n    t_start = time.time()\n    originalArg = arg\n    arg = arg.replace('>=', '==')\n    if opts.get('offline_mode', False):\n        log.warning('Offline mode enabled')\n        return 'offline'\n    package = arg.replace(\"install\", \"\").replace(\"--upgrade\", \"\").replace(\"--no-deps\", \"\").replace(\"--force-reinstall\", \"\").replace(\" \", \" \").strip()\n    uv = uv and args.uv and not package.startswith('git+')\n    pipCmd = \"uv pip\" if uv else \"pip\"\n    if not quiet and '-r ' not in arg:\n        log.info(f'Install: package=\"{package}\" mode={\"uv\" if uv else \"pip\"}')\n    env_args = os.environ.get(\"PIP_EXTRA_ARGS\", \"\")\n    all_args = f'{pip_log}{arg} {env_args}'.strip()\n    if not quiet:\n        log.debug(f'Running: {pipCmd}=\"{all_args}\"')\n    result = subprocess.run(f'\"{sys.executable}\" -m {pipCmd} {all_args}', shell=True, check=False, env=os.environ, stdout=subprocess.PIPE, stderr=subprocess.PIPE)\n    txt = result.stdout.decode(encoding=\"utf8\", errors=\"ignore\")\n    if len(result.stderr) > 0:\n        if uv and result.returncode != 0:\n            err = result.stderr.decode(encoding=\"utf8\", errors=\"ignore\")\n            log.warning(f'Install: cmd=\"{pipCmd}\" args=\"{all_args}\" cannot use uv, fallback to pip')\n            debug(f'Install: uv pip error: {err}')\n            return pip(originalArg, ignore, quiet, uv=False)\n        else:\n            txt += ('\\n' if len(txt) > 0 else '') + result.stderr.decode(encoding=\"utf8\", errors=\"ignore\")\n    txt = txt.strip()\n    debug(f'Install {pipCmd}: {txt}')\n    if result.returncode != 0 and not ignore:\n        errors.append(f'pip: {package}')\n        log.error(f'Install: {pipCmd}: {arg}')\n        log.debug(f'Install: pip output {txt}')\n    ts('pip', t_start)\n    return txt\n\n\n# install package using pip if not already installed\ndef install(package, friendly: str = None, ignore: bool = False, reinstall: bool = False, no_deps: bool = False, quiet: bool = False, force: bool = False):\n    t_start = time.time()\n    res = ''\n    if args.reinstall or args.upgrade:\n        global quick_allowed # pylint: disable=global-statement\n        quick_allowed = False\n    if (args.reinstall) or (reinstall) or (not installed(package, friendly, quiet=quiet)):\n        deps = '' if not no_deps else '--no-deps '\n        cmd = f\"install{' --upgrade' if not args.uv else ''}{' --force-reinstall' if force else ''} {deps}{package}\"\n        res = pip(cmd, ignore=ignore, uv=package != \"uv\" and not package.startswith('git+'))\n        try:\n            importlib.reload(pkg_resources)\n        except Exception:\n            pass\n    ts('install', t_start)\n    return res\n\n\n# execute git command\ndef git(arg: str, folder: str = None, ignore: bool = False, optional: bool = False): # pylint: disable=unused-argument\n    t_start = time.time()\n    if args.skip_git:\n        return ''\n    if 'google.colab' in sys.modules:\n        return ''\n    git_cmd = os.environ.get('GIT', \"git\")\n    if git_cmd != \"git\":\n        git_cmd = os.path.abspath(git_cmd)\n    result = subprocess.run(f'\"{git_cmd}\" {arg}', check=False, shell=True, env=os.environ, stdout=subprocess.PIPE, stderr=subprocess.PIPE, cwd=folder or '.')\n    stdout = result.stdout.decode(encoding=\"utf8\", errors=\"ignore\")\n    if len(result.stderr) > 0:\n        stdout += ('\\n' if len(stdout) > 0 else '') + result.stderr.decode(encoding=\"utf8\", errors=\"ignore\")\n    stdout = stdout.strip()\n    if result.returncode != 0 and not ignore:\n        if folder is None:\n            folder = 'root'\n        if \"couldn't find remote ref\" in stdout: # not a git repo\n            log.error(f'Git: folder=\"{folder}\" could not identify repository')\n        elif \"no submodule mapping found\" in stdout:\n            log.warning(f'Git: folder=\"{folder}\" submodules changed')\n        elif 'or stash them' in stdout:\n            log.error(f'Git: folder=\"{folder}\" local changes detected')\n        else:\n            log.error(f'Git: folder=\"{folder}\" arg=\"{arg}\" output={stdout}')\n        errors.append(f'git: {folder}')\n    ts('git', t_start)\n    return stdout\n\n\n# reattach as needed as head can get detached\ndef branch(folder=None):\n    # if args.experimental:\n    #    return None\n    t_start = time.time()\n    if not os.path.exists(os.path.join(folder or os.curdir, '.git')):\n        return None\n    branches = []\n    try:\n        b = git('branch --show-current', folder, optional=True)\n        if b == '':\n            branches = git('branch', folder).split('\\n')\n        if len(branches) > 0:\n            b = [x for x in branches if x.startswith('*')][0]\n            if 'detached' in b and len(branches) > 1:\n                b = branches[1].strip()\n                log.debug(f'Git detached head detected: folder=\"{folder}\" reattach={b}')\n    except Exception:\n        b = git('git rev-parse --abbrev-ref HEAD', folder, optional=True)\n    if 'main' in b:\n        b = 'main'\n    elif 'master' in b:\n        b = 'master'\n    else:\n        b = b.split('\\n')[0].replace('*', '').strip()\n    log.debug(f'Git submodule: {folder} / {b}')\n    git(f'checkout {b}', folder, ignore=True, optional=True)\n    ts('branch', t_start)\n    return b\n\n\n# restart process\ndef restart():\n    log.critical('Restarting process...')\n    os.execv(sys.executable, ['python'] + sys.argv)\n\n\n# update git repository\ndef update(folder, keep_branch = False, rebase = True):\n    t_start = time.time()\n    try:\n        git('config rebase.Autostash true')\n    except Exception:\n        pass\n    arg = '--rebase --force' if rebase else ''\n    if keep_branch:\n        res = git(f'pull {arg}', folder)\n        debug(f'Install update: folder={folder} args={arg} {res}')\n    else:\n        b = branch(folder)\n        if branch is None:\n            res = git(f'pull {arg}', folder)\n            debug(f'Install update: folder={folder} branch={b} args={arg} {res}')\n        else:\n            res = git(f'pull origin {b} {arg}', folder)\n            debug(f'Install update: folder={folder} branch={b} args={arg} {res}')\n        if not args.experimental:\n            commit = extensions_commit.get(os.path.basename(folder), None)\n            if commit is not None:\n                res = git(f'checkout {commit}', folder)\n                debug(f'Install update: folder={folder} branch={b} args={arg} commit={commit} {res}')\n    ts('update', t_start)\n    return res\n\n\n# clone git repository\ndef clone(url, folder, commithash=None):\n    t_start = time.time()\n    if os.path.exists(folder):\n        if commithash is None:\n            update(folder)\n        else:\n            current_hash = git('rev-parse HEAD', folder).strip()\n            if current_hash != commithash:\n                res = git('fetch', folder)\n                debug(f'Install clone: {res}')\n                git(f'checkout {commithash}', folder)\n                return\n    else:\n        log.info(f'Cloning repository: {url}')\n        git(f'clone \"{url}\" \"{folder}\"')\n        if commithash is not None:\n            git(f'-C \"{folder}\" checkout {commithash}')\n    ts('clone', t_start)\n\n\ndef get_platform():\n    try:\n        if platform.system() == 'Windows':\n            release = platform.platform(aliased = True, terse = False)\n        else:\n            release = platform.release()\n        return {\n            'arch': platform.machine(),\n            'cpu': platform.processor(),\n            'system': platform.system(),\n            'release': release,\n            'python': platform.python_version(),\n            'locale': locale.getlocale(),\n            'docker': os.environ.get('SD_DOCKER', None) is not None,\n            # 'host': platform.node(),\n            # 'version': platform.version(),\n        }\n    except Exception as e:\n        return { 'error': e }\n\n\n# check python version\ndef check_python(supported_minors=[], experimental_minors=[], reason=None):\n    if supported_minors is None or len(supported_minors) == 0:\n        supported_minors = [10, 11, 12]\n        experimental_minors = [13]\n    t_start = time.time()\n    if args.quick:\n        return\n    log.info(f'Python: version={platform.python_version()} platform={platform.system()} bin=\"{sys.executable}\" venv=\"{sys.prefix}\"')\n    if int(sys.version_info.minor) == 12:\n        os.environ.setdefault('SETUPTOOLS_USE_DISTUTILS', 'local') # hack for python 3.11 setuptools\n    if int(sys.version_info.minor) == 10:\n        log.warning(f\"Python: version={platform.python_version()} is not actively supported\")\n    if int(sys.version_info.minor) == 9:\n        log.error(f\"Python: version={platform.python_version()} is end-of-life\")\n    if not (int(sys.version_info.major) == 3 and int(sys.version_info.minor) in supported_minors):\n        if (int(sys.version_info.major) == 3 and int(sys.version_info.minor) in experimental_minors):\n            log.warning(f\"Python experimental: {sys.version_info.major}.{sys.version_info.minor}.{sys.version_info.micro}\")\n        else:\n            log.error(f\"Python incompatible: current {sys.version_info.major}.{sys.version_info.minor}.{sys.version_info.micro} required 3.{supported_minors}\")\n            if reason is not None:\n                log.error(reason)\n            if not args.ignore and not args.experimental:\n                sys.exit(1)\n    if not args.skip_git:\n        git_cmd = os.environ.get('GIT', \"git\")\n        if shutil.which(git_cmd) is None:\n            log.error('Git not found')\n            if not args.ignore:\n                sys.exit(1)\n    else:\n        git_version = git('--version', folder=None, ignore=False)\n        log.debug(f'Git: version={git_version.replace(\"git version\", \"\").strip()}')\n    ts('python', t_start)\n\n\n# check diffusers version\ndef check_diffusers():\n    t_start = time.time()\n    if args.skip_all:\n        return\n    sha = '99e2cfff27dec514a43e260e885c5e6eca038b36' # diffusers commit hash\n    # if args.use_rocm or args.use_zluda or args.use_directml:\n    #     sha = '043ab2520f6a19fce78e6e060a68dbc947edb9f9' # lock diffusers versions for now\n    pkg = pkg_resources.working_set.by_key.get('diffusers', None)\n    minor = int(pkg.version.split('.')[1] if pkg is not None else -1)\n    cur = opts.get('diffusers_version', '') if minor > -1 else ''\n    if (minor == -1) or ((cur != sha) and (not args.experimental)):\n        if minor == -1:\n            log.info(f'Diffusers install: commit={sha}')\n        else:\n            log.info(f'Diffusers update: current={pkg.version} hash={cur} target={sha}')\n            pip('uninstall --yes diffusers', ignore=True, quiet=True, uv=False)\n        if args.skip_git:\n            log.warning('Git: marked as not available but required for diffusers installation')\n        pip(f'install --upgrade git+https://github.com/huggingface/diffusers@{sha}', ignore=False, quiet=True, uv=False)\n        global diffusers_commit # pylint: disable=global-statement\n        diffusers_commit = sha\n    ts('diffusers', t_start)\n\n\n# check transformers version\ndef check_transformers():\n    t_start = time.time()\n    if args.skip_all or args.skip_git or args.experimental:\n        return\n    pkg_transformers = pkg_resources.working_set.by_key.get('transformers', None)\n    pkg_tokenizers = pkg_resources.working_set.by_key.get('tokenizers', None)\n    if args.use_directml:\n        target_transformers = '4.52.4'\n        target_tokenizers = '0.21.4'\n    elif args.new:\n        target_transformers = '5.0.0rc2'\n        target_tokenizers = '0.22.2'\n    else:\n        target_transformers = '4.57.5'\n        target_tokenizers = '0.22.2'\n    if (pkg_transformers is None) or ((pkg_transformers.version != target_transformers) or (pkg_tokenizers is None) or ((pkg_tokenizers.version != target_tokenizers) and (not args.experimental))):\n        if pkg_transformers is None:\n            log.info(f'Transformers install: version={target_transformers}')\n        else:\n            log.info(f'Transformers update: current={pkg_transformers.version} target={target_transformers}')\n        pip('uninstall --yes transformers', ignore=True, quiet=True, uv=False)\n        pip(f'install --upgrade tokenizers=={target_tokenizers}', ignore=False, quiet=True, uv=False)\n        pip(f'install --upgrade transformers=={target_transformers}', ignore=False, quiet=True, uv=False)\n    ts('transformers', t_start)\n\n\n# check onnx version\ndef check_onnx():\n    t_start = time.time()\n    if args.skip_all or args.skip_requirements:\n        return\n    if not installed('onnx', quiet=True):\n        install('onnx', 'onnx', ignore=True)\n    if not installed('onnxruntime', quiet=True) and not (installed('onnxruntime-gpu', quiet=True) or installed('onnxruntime-openvino', quiet=True) or installed('onnxruntime-training', quiet=True)): # allow either\n        install(os.environ.get('ONNXRUNTIME_COMMAND', 'onnxruntime'), ignore=True)\n    ts('onnx', t_start)\n\n\ndef install_cuda():\n    t_start = time.time()\n    log.info('CUDA: nVidia toolkit detected')\n    ts('cuda', t_start)\n    if args.use_nightly:\n        cmd = os.environ.get('TORCH_COMMAND', '--upgrade --pre torch torchvision --index-url https://download.pytorch.org/whl/nightly/cu128 --extra-index-url https://download.pytorch.org/whl/nightly/cu130')\n    else:\n        cmd = os.environ.get('TORCH_COMMAND', 'torch==2.10.0+cu128 torchvision==0.25.0+cu128 --index-url https://download.pytorch.org/whl/cu128')\n    return cmd\n\n\ndef install_rocm_zluda():\n    torch_command = ''\n    t_start = time.time()\n    if args.skip_all or args.skip_requirements:\n        return torch_command\n    from modules import rocm\n\n    amd_gpus = []\n    try:\n        amd_gpus = rocm.get_agents()\n    except Exception as e:\n        log.warning(f'ROCm agent enumerator failed: {e}')\n\n    #os.environ.setdefault('TENSORFLOW_PACKAGE', 'tensorflow')\n\n    device = None\n    if len(amd_gpus) == 0:\n        log.warning('ROCm: no agent was found')\n    else:\n        log.info(f'ROCm: agents={[gpu.name for gpu in amd_gpus]}')\n        if args.device_id is None:\n            index = 0\n            for idx, gpu in enumerate(amd_gpus):\n                index = idx\n                if not gpu.is_apu:\n                    # although apu was found, there can be a dedicated card. do not break loop.\n                    # if no dedicated card was found, apu will be used.\n                    break\n            os.environ.setdefault('HIP_VISIBLE_DEVICES', str(index))\n            device = amd_gpus[index]\n        else:\n            device_id = int(args.device_id)\n            if device_id < len(amd_gpus):\n                device = amd_gpus[device_id]\n\n    if sys.platform == \"win32\" and not args.use_zluda and device is not None and device.therock is not None and not installed(\"rocm\"):\n        check_python(supported_minors=[11, 12, 13], reason='ROCm backend requires a Python version between 3.11 and 3.13')\n        install(f\"rocm[devel,libraries] --index-url https://rocm.nightlies.amd.com/{device.therock}\")\n        rocm.refresh()\n\n    msg = f'ROCm: version={rocm.version}'\n    if device is not None:\n        msg += f', using agent {device}'\n    log.info(msg)\n\n    if sys.platform == \"win32\":\n        if args.use_zluda:\n            torch_command = os.environ.get('TORCH_COMMAND', 'torch==2.7.1+cu118 torchvision==0.22.1+cu118 --index-url https://download.pytorch.org/whl/cu118')\n\n            if args.device_id is not None:\n                if os.environ.get('HIP_VISIBLE_DEVICES', None) is not None:\n                    log.warning('Setting HIP_VISIBLE_DEVICES and --device-id at the same time may be mistake.')\n                os.environ['HIP_VISIBLE_DEVICES'] = args.device_id\n                del args.device_id\n\n            from modules import zluda_installer\n            try:\n                if args.reinstall or zluda_installer.is_reinstall_needed():\n                    zluda_installer.uninstall()\n                zluda_installer.install()\n                zluda_installer.set_default_agent(device)\n            except Exception as e:\n                log.error(f'Install ZLUDA: {e}')\n\n            try:\n                zluda_installer.load()\n            except Exception as e:\n                log.error(f'Load ZLUDA: {e}')\n        else: # TODO rocm: switch to pytorch source when it becomes available\n            if device is None:\n                log.error('ROCm: no agent found - make sure that graphics driver is installed and up to date')\n            if isinstance(rocm.environment, rocm.PythonPackageEnvironment):\n                check_python(supported_minors=[11, 12, 13], reason='ROCm: python==3.11/3.12/3.13 required')\n                torch_command = os.environ.get('TORCH_COMMAND', f'torch torchvision --index-url https://rocm.nightlies.amd.com/{device.therock}')\n            else:\n                check_python(supported_minors=[12], reason='ROCm: Windows preview python==3.12 required')\n                # torch 2.8.0a0 is the last version with rocm 6.4 support\n                torch_command = os.environ.get('TORCH_COMMAND', '--no-cache-dir https://repo.radeon.com/rocm/windows/rocm-rel-6.4.4/torch-2.8.0a0%2Bgitfc14c65-cp312-cp312-win_amd64.whl https://repo.radeon.com/rocm/windows/rocm-rel-6.4.4/torchvision-0.24.0a0%2Bc85f008-cp312-cp312-win_amd64.whl')\n    else:\n        #check_python(supported_minors=[10, 11, 12, 13, 14], reason='ROCm backend requires a Python version between 3.10 and 3.13')\n        if args.use_nightly:\n            if rocm.version is None or float(rocm.version) >= 7.1: # assume the latest if version check fails\n                torch_command = os.environ.get('TORCH_COMMAND', '--upgrade --pre torch torchvision --index-url https://download.pytorch.org/whl/nightly/rocm7.1')\n            else: # oldest rocm version on nightly is 7.0\n                torch_command = os.environ.get('TORCH_COMMAND', '--upgrade --pre torch torchvision --index-url https://download.pytorch.org/whl/nightly/rocm7.0')\n        else:\n            if rocm.version is None or float(rocm.version) >= 7.1: # assume the latest if version check fails\n                torch_command = os.environ.get('TORCH_COMMAND', 'torch==2.10.0+rocm7.1 torchvision==0.25.0+rocm7.1 --index-url https://download.pytorch.org/whl/rocm7.1')\n            elif rocm.version == \"7.0\": # assume the latest if version check fails\n                torch_command = os.environ.get('TORCH_COMMAND', 'torch==2.10.0+rocm7.0 torchvision==0.25.0+rocm7.0 --index-url https://download.pytorch.org/whl/rocm7.0')\n            elif rocm.version == \"6.4\":\n                torch_command = os.environ.get('TORCH_COMMAND', 'torch==2.9.1+rocm6.4 torchvision==0.24.1+rocm6.4 --index-url https://download.pytorch.org/whl/rocm6.4')\n            elif rocm.version == \"6.3\":\n                torch_command = os.environ.get('TORCH_COMMAND', 'torch==2.9.1+rocm6.3 torchvision==0.24.1+rocm6.3 --index-url https://download.pytorch.org/whl/rocm6.3')\n            elif rocm.version == \"6.2\":\n                # use rocm 6.2.4 instead of 6.2 as torch==2.7.1+rocm6.2 doesn't exists\n                torch_command = os.environ.get('TORCH_COMMAND', 'torch==2.7.1+rocm6.2.4 torchvision==0.22.1+rocm6.2.4 --index-url https://download.pytorch.org/whl/rocm6.2.4')\n            elif rocm.version == \"6.1\":\n                torch_command = os.environ.get('TORCH_COMMAND', 'torch==2.6.0+rocm6.1 torchvision==0.21.0+rocm6.1 --index-url https://download.pytorch.org/whl/rocm6.1')\n            else:\n                # lock to 2.4.1 instead of 2.5.1 for performance reasons there are no support for torch 2.6 for rocm 6.0\n                torch_command = os.environ.get('TORCH_COMMAND', 'torch==2.4.1+rocm6.0 torchvision==0.19.1+rocm6.0 --index-url https://download.pytorch.org/whl/rocm6.0')\n                if float(rocm.version) < 6.0:\n                    log.warning(f\"ROCm: unsupported version={rocm.version}\")\n                    log.warning(\"ROCm: minimum supported version=6.0\")\n\n    if device is None or os.environ.get(\"HSA_OVERRIDE_GFX_VERSION\", None) is not None:\n        log.info(f'ROCm: HSA_OVERRIDE_GFX_VERSION auto config skipped: device={device} version={os.environ.get(\"HSA_OVERRIDE_GFX_VERSION\", None)}')\n    else:\n        gfx_ver = device.get_gfx_version()\n        if gfx_ver is not None and device.name.removeprefix(\"gfx\") != gfx_ver.replace(\".\", \"\"):\n            os.environ.setdefault('HSA_OVERRIDE_GFX_VERSION', gfx_ver)\n            log.info(f'ROCm: HSA_OVERRIDE_GFX_VERSION config overridden: device={device} version={os.environ.get(\"HSA_OVERRIDE_GFX_VERSION\", None)}')\n\n    ts('amd', t_start)\n    return torch_command\n\n\ndef install_ipex():\n    t_start = time.time()\n    #check_python(supported_minors=[10, 11, 12, 13, 14], reason='IPEX backend requires a Python version between 3.10 and 3.13')\n    args.use_ipex = True # pylint: disable=attribute-defined-outside-init\n    log.info('IPEX: Intel OneAPI toolkit detected')\n\n    if args.use_nightly:\n        torch_command = os.environ.get('TORCH_COMMAND', '--upgrade --pre torch torchvision --index-url https://download.pytorch.org/whl/nightly/xpu')\n    else:\n        torch_command = os.environ.get('TORCH_COMMAND', 'torch==2.10.0+xpu torchvision==0.25.0+xpu --index-url https://download.pytorch.org/whl/xpu')\n\n    ts('ipex', t_start)\n    return torch_command\n\n\ndef install_openvino():\n    t_start = time.time()\n    log.info('OpenVINO: selected')\n    os.environ.setdefault('PYTORCH_TRACING_MODE', 'TORCHFX')\n\n    #check_python(supported_minors=[10, 11, 12, 13], reason='OpenVINO backend requires a Python version between 3.10 and 3.13')\n    if sys.platform == 'darwin':\n        torch_command = os.environ.get('TORCH_COMMAND', 'torch==2.10.0 torchvision==0.25.0')\n    else:\n        torch_command = os.environ.get('TORCH_COMMAND', 'torch==2.10.0+cpu torchvision==0.25.0 --index-url https://download.pytorch.org/whl/cpu')\n\n    if not (args.skip_all or args.skip_requirements):\n        install(os.environ.get('OPENVINO_COMMAND', 'openvino==2025.4.1'), 'openvino')\n        install(os.environ.get('NNCF_COMMAND', 'nncf==2.19.0'), 'nncf')\n    ts('openvino', t_start)\n    return torch_command\n\n\ndef install_torch_addons():\n    t_start = time.time()\n    triton_command = os.environ.get('TRITON_COMMAND', None)\n    if triton_command is not None and triton_command != 'skip':\n        install(triton_command, 'triton', quiet=True)\n    xformers_package = os.environ.get('XFORMERS_PACKAGE', '--pre xformers') if opts.get('cross_attention_optimization', '') == 'xFormers' or args.use_xformers else 'none'\n    if 'xformers' in xformers_package:\n        try:\n            install(xformers_package, ignore=True, no_deps=True)\n            import torch # pylint: disable=unused-import\n            import xformers # pylint: disable=unused-import\n        except Exception as e:\n            log.debug(f'xFormers cannot install: {e}')\n    elif not args.experimental and not args.use_xformers and opts.get('cross_attention_optimization', '') != 'xFormers':\n        uninstall('xformers')\n    if opts.get('cuda_compile_backend', '') == 'hidet':\n        install('hidet', 'hidet')\n    if opts.get('cuda_compile_backend', '') == 'deep-cache':\n        install('DeepCache')\n    if opts.get('cuda_compile_backend', '') == 'olive-ai':\n        install('olive-ai')\n    if len(opts.get('optimum_quanto_weights', [])):\n        install('optimum-quanto==0.2.7', 'optimum-quanto')\n    if len(opts.get('torchao_quantization', [])):\n        install('torchao==0.10.0', 'torchao')\n    if opts.get('samples_format', 'jpg') == 'jxl' or opts.get('grid_format', 'jpg') == 'jxl':\n        install('pillow-jxl-plugin==1.3.5', 'pillow-jxl-plugin')\n    if not args.experimental:\n        uninstall('wandb', quiet=True)\n        uninstall('pynvml', quiet=True)\n    ts('addons', t_start)\n\n\n# check cudnn\ndef check_cudnn():\n    import site\n    site_packages = site.getsitepackages()\n    cuda_path = os.environ.get('CUDA_PATH', '')\n    if cuda_path == '':\n        for site_package in site_packages:\n            folder = os.path.join(site_package, 'nvidia', 'cudnn', 'lib')\n            if os.path.exists(folder) and folder not in cuda_path:\n                cuda_path = f\"{cuda_path}:{folder}\"\n                if cuda_path.startswith(':'):\n                    cuda_path = cuda_path[1:]\n                os.environ['CUDA_PATH'] = cuda_path\n\n\n# check torch version\ndef check_torch():\n    log.info('Verifying torch installation')\n    t_start = time.time()\n    if args.skip_torch:\n        log.info('Torch: skip tests')\n        return\n    if args.profile:\n        pr = cProfile.Profile()\n        pr.enable()\n    allow_cuda = not (args.use_rocm or args.use_directml or args.use_ipex or args.use_openvino)\n    allow_rocm = not (args.use_cuda or args.use_directml or args.use_ipex or args.use_openvino)\n    allow_ipex = not (args.use_cuda or args.use_rocm or args.use_directml or args.use_openvino)\n    allow_directml = not (args.use_cuda or args.use_rocm or args.use_ipex or args.use_openvino)\n    allow_openvino = not (args.use_cuda or args.use_rocm or args.use_ipex or args.use_directml)\n    log.debug(f'Torch overrides: cuda={args.use_cuda} rocm={args.use_rocm} ipex={args.use_ipex} directml={args.use_directml} openvino={args.use_openvino} zluda={args.use_zluda}')\n    # log.debug(f'Torch allowed: cuda={allow_cuda} rocm={allow_rocm} ipex={allow_ipex} diml={allow_directml} openvino={allow_openvino}')\n    torch_command = os.environ.get('TORCH_COMMAND', '')\n\n    if sys.platform != 'win32':\n        if args.use_zluda:\n            log.error('ZLUDA is only supported on Windows')\n        if args.use_directml:\n            log.error('DirectML is only supported on Windows')\n\n    if torch_command != '':\n        is_cuda_available = False\n        is_ipex_available = False\n        is_rocm_available = False\n    else:\n        is_cuda_available = allow_cuda and (args.use_cuda or shutil.which('nvidia-smi') is not None or os.path.exists(os.path.join(os.environ.get('SystemRoot') or r'C:\\Windows', 'System32', 'nvidia-smi.exe')))\n        is_ipex_available = allow_ipex and (args.use_ipex or shutil.which('sycl-ls') is not None or shutil.which('sycl-ls.exe') is not None or os.environ.get('ONEAPI_ROOT') is not None or os.path.exists('/opt/intel/oneapi') or os.path.exists(\"C:/Program Files (x86)/Intel/oneAPI\") or os.path.exists(\"C:/oneAPI\") or os.path.exists(\"C:/Program Files/Intel/Intel Graphics Software\"))\n        is_rocm_available = False\n\n        if not is_cuda_available and not is_ipex_available and allow_rocm:\n            from modules import rocm\n            is_rocm_available = allow_rocm and (args.use_rocm or args.use_zluda or rocm.is_installed) # late eval to avoid unnecessary import\n\n        if is_cuda_available and args.use_cuda: # prioritize cuda\n            torch_command = install_cuda()\n        elif is_rocm_available and (args.use_rocm or args.use_zluda): # prioritize rocm\n            torch_command = install_rocm_zluda()\n        elif allow_ipex and args.use_ipex: # prioritize ipex\n            torch_command = install_ipex()\n        elif allow_openvino and args.use_openvino: # prioritize openvino\n            torch_command = install_openvino()\n        elif is_cuda_available:\n            torch_command = install_cuda()\n        elif is_rocm_available:\n            torch_command = install_rocm_zluda()\n        elif is_ipex_available:\n            torch_command = install_ipex()\n        else:\n            machine = platform.machine()\n            if sys.platform == 'darwin':\n                torch_command = os.environ.get('TORCH_COMMAND', 'torch torchvision')\n            elif allow_directml and args.use_directml and ('arm' not in machine and 'aarch' not in machine):\n                log.info('DirectML: selected')\n                torch_command = os.environ.get('TORCH_COMMAND', 'torch==2.4.1 torchvision torch-directml==0.2.4.dev240913')\n                if 'torch' in torch_command and not args.version:\n                    install(torch_command, 'torch torchvision')\n                install('onnxruntime-directml', 'onnxruntime-directml', ignore=True)\n            else:\n                log.warning('Torch: CPU-only version installed')\n                torch_command = os.environ.get('TORCH_COMMAND', 'torch torchvision')\n\n    if args.version:\n        return\n\n    if 'torch' in torch_command:\n        if not installed('torch'):\n            log.info(f'Torch: download and install in progress... cmd=\"{torch_command}\"')\n            install('--upgrade pip', 'pip', reinstall=True) # pytorch rocm is too large for older pip\n        install(torch_command, 'torch torchvision', quiet=True)\n\n    try:\n        import torch\n        try:\n            import intel_extension_for_pytorch as ipex # pylint: disable=import-error, unused-import\n            log.info(f'Torch backend: type=IPEX version={ipex.__version__}')\n        except Exception:\n            pass\n        if 'cpu' in torch.__version__:\n            if is_cuda_available:\n                if args.use_cuda:\n                    log.warning(f'Torch: version=\"{torch.__version__}\" CPU version installed and CUDA is selected - reinstalling')\n                    install(torch_command, 'torch torchvision', quiet=True, reinstall=True, force=True) # foce reinstall\n                else:\n                    log.warning(f'Torch: version=\"{torch.__version__}\" CPU version installed and CUDA is available - consider reinstalling')\n            elif is_rocm_available:\n                if args.use_rocm:\n                    log.warning(f'Torch: version=\"{torch.__version__}\" CPU version installed and ROCm is selected - reinstalling')\n                    install(torch_command, 'torch torchvision', quiet=True, reinstall=True, force=True) # foce reinstall\n                else:\n                    log.warning(f'Torch: version=\"{torch.__version__}\" CPU version installed and ROCm is available - consider reinstalling')\n        if hasattr(torch, \"xpu\") and torch.xpu.is_available() and allow_ipex:\n            if shutil.which('icpx') is not None:\n                log.info(f'{os.popen(\"icpx --version\").read().rstrip()}')\n            for device in range(torch.xpu.device_count()):\n                log.info(f'Torch detected: gpu=\"{torch.xpu.get_device_name(device)}\" vram={round(torch.xpu.get_device_properties(device).total_memory / 1024 / 1024)} units={torch.xpu.get_device_properties(device).max_compute_units}')\n        elif torch.cuda.is_available() and (allow_cuda or allow_rocm):\n            if torch.version.cuda and allow_cuda:\n                log.info(f'Torch backend: version=\"{torch.__version__}\" type=CUDA CUDA={torch.version.cuda} cuDNN={torch.backends.cudnn.version() if torch.backends.cudnn.is_available() else \"N/A\"}')\n            elif torch.version.hip and allow_rocm:\n                log.info(f'Torch backend: version=\"{torch.__version__}\" type=ROCm HIP={torch.version.hip}')\n            else:\n                log.warning('Unknown Torch backend')\n            for device in [torch.cuda.device(i) for i in range(torch.cuda.device_count())]:\n                log.info(f'Torch detected: gpu=\"{torch.cuda.get_device_name(device)}\" vram={round(torch.cuda.get_device_properties(device).total_memory / 1024 / 1024)} arch={torch.cuda.get_device_capability(device)} cores={torch.cuda.get_device_properties(device).multi_processor_count}')\n        else:\n            try:\n                if args.use_directml and allow_directml:\n                    import torch_directml # pylint: disable=import-error\n                    dml_ver = pkg_resources.get_distribution(\"torch-directml\")\n                    log.warning(f'Torch backend: DirectML ({dml_ver})')\n                    log.warning('DirectML: end-of-life')\n                    for i in range(0, torch_directml.device_count()):\n                        log.info(f'Torch detected GPU: {torch_directml.device_name(i)}')\n            except Exception:\n                log.warning(\"Torch reports CUDA not available\")\n    except Exception as e:\n        log.error(f'Torch cannot load: {e}')\n        if not args.ignore:\n            sys.exit(1)\n\n    if is_rocm_available:\n        rocm.postinstall()\n    if not args.skip_all:\n        install_torch_addons()\n    check_cudnn()\n    if args.profile:\n        pr.disable()\n        print_profile(pr, 'Torch')\n    ts('torch', t_start)\n\n\n# check modified files\ndef check_modified_files():\n    t_start = time.time()\n    if args.quick:\n        return\n    if args.skip_git:\n        return\n    try:\n        res = git('status --porcelain')\n        files = [x[2:].strip() for x in res.split('\\n')]\n        files = [x for x in files if len(x) > 0 and (not x.startswith('extensions')) and (not x.startswith('wiki')) and (not x.endswith('.json')) and ('.log' not in x)]\n        deleted = [x for x in files if not os.path.exists(x)]\n        if len(deleted) > 0:\n            log.warning(f'Deleted files: {deleted}')\n        modified = [x for x in files if os.path.exists(x) and not os.path.isdir(x)]\n        if len(modified) > 0:\n            log.warning(f'Modified files: {modified}')\n    except Exception:\n        pass\n    ts('files', t_start)\n\n\n# install required packages\ndef install_packages():\n    t_start = time.time()\n    if args.profile:\n        pr = cProfile.Profile()\n        pr.enable()\n    # log.info('Install: verifying packages')\n    clip_package = os.environ.get('CLIP_PACKAGE', \"git+https://github.com/openai/CLIP.git\")\n    install(clip_package, 'clip', quiet=True)\n    install('open-clip-torch', no_deps=True, quiet=True)\n    # tensorflow_package = os.environ.get('TENSORFLOW_PACKAGE', 'tensorflow==2.13.0')\n    # tensorflow_package = os.environ.get('TENSORFLOW_PACKAGE', None)\n    # if tensorflow_package is not None:\n    #    install(tensorflow_package, 'tensorflow-rocm' if 'rocm' in tensorflow_package else 'tensorflow', ignore=True, quiet=True)\n    if args.profile:\n        pr.disable( )\n        print_profile(pr, 'Packages')\n    ts('packages', t_start)\n\n\n# run extension installer\ndef run_extension_installer(folder):\n    path_installer = os.path.realpath(os.path.join(folder, \"install.py\"))\n    if not os.path.isfile(path_installer):\n        return\n    try:\n        is_builtin = 'extensions-builtin' in folder\n        log.debug(f'Extension installer: builtin={is_builtin} file=\"{path_installer}\"')\n        if is_builtin:\n            module_spec = importlib.util.spec_from_file_location(os.path.basename(folder), path_installer)\n            module = importlib.util.module_from_spec(module_spec)\n            module_spec.loader.exec_module(module)\n        else:\n            env = os.environ.copy()\n            env['PYTHONPATH'] = os.path.abspath(\".\")\n            if os.environ.get('PYTHONPATH', None) is not None:\n                seperator = ';' if sys.platform == 'win32' else ':'\n                env['PYTHONPATH'] += seperator + os.environ.get('PYTHONPATH', None)\n            result = subprocess.run(f'\"{sys.executable}\" \"{path_installer}\"', shell=True, env=env, check=False, stdout=subprocess.PIPE, stderr=subprocess.PIPE, cwd=folder)\n            txt = result.stdout.decode(encoding=\"utf8\", errors=\"ignore\")\n            debug(f'Extension installer: file=\"{path_installer}\" {txt}')\n            if result.returncode != 0:\n                errors.append(f'ext: {os.path.basename(folder)}')\n                if len(result.stderr) > 0:\n                    txt = txt + '\\n' + result.stderr.decode(encoding=\"utf8\", errors=\"ignore\")\n                log.error(f'Extension installer error: {path_installer}')\n                log.debug(txt)\n    except Exception as e:\n        log.error(f'Extension installer exception: {e}')\n\n\n# get list of all enabled extensions\ndef list_extensions_folder(folder, quiet=False):\n    disabled_extensions_all = opts.get('disable_all_extensions', 'none')\n    if disabled_extensions_all != 'none':\n        return []\n    disabled_extensions = opts.get('disabled_extensions', [])\n    enabled_extensions = [x for x in os.listdir(folder) if os.path.isdir(os.path.join(folder, x)) and x not in disabled_extensions and not x.startswith('.')]\n    if not quiet:\n        log.info(f'Extensions: path=\"{folder}\" enabled={enabled_extensions}')\n    return enabled_extensions\n\n\n# run installer for each installed and enabled extension and optionally update them\ndef install_extensions(force=False):\n    if args.profile:\n        pr = cProfile.Profile()\n        pr.enable()\n    pkg_resources._initialize_master_working_set() # pylint: disable=protected-access\n    pkgs = [f'{p.project_name}=={p._version}' for p in pkg_resources.working_set] # pylint: disable=protected-access,not-an-iterable\n    log.debug(f'Installed packages: {len(pkgs)}')\n    from modules.paths import extensions_builtin_dir, extensions_dir\n    extensions_duplicates = []\n    extensions_enabled = []\n    extensions_disabled = [e.lower() for e in opts.get('disabled_extensions', [])]\n    extension_folders = [extensions_builtin_dir] if args.safe else [extensions_builtin_dir, extensions_dir]\n    res = []\n    for folder in extension_folders:\n        if not os.path.isdir(folder):\n            continue\n        extensions = list_extensions_folder(folder, quiet=True)\n        log.debug(f'Extensions all: {extensions}')\n        for ext in extensions:\n            if os.path.basename(ext).lower() in extensions_disabled:\n                continue\n            t_start = time.time()\n            if ext in extensions_enabled:\n                extensions_duplicates.append(ext)\n                continue\n            extensions_enabled.append(ext)\n            if args.upgrade or force:\n                try:\n                    res.append(update(os.path.join(folder, ext)))\n                except Exception:\n                    res.append(f'Extension update error: {os.path.join(folder, ext)}')\n                    log.error(f'Extension update error: {os.path.join(folder, ext)}')\n            if not args.skip_extensions:\n                commit = extensions_commit.get(os.path.basename(ext), None)\n                if commit is not None:\n                    log.debug(f'Extension force: name=\"{ext}\" commit={commit}')\n                    res.append(git(f'checkout {commit}', os.path.join(folder, ext)))\n                run_extension_installer(os.path.join(folder, ext))\n            pkg_resources._initialize_master_working_set() # pylint: disable=protected-access\n            try:\n                updated = [f'{p.project_name}=={p._version}' for p in pkg_resources.working_set] # pylint: disable=protected-access,not-an-iterable\n                diff = [x for x in updated if x not in pkgs]\n                pkgs = updated\n                if len(diff) > 0:\n                    log.info(f'Extension installed packages: {ext} {diff}')\n            except Exception as e:\n                log.error(f'Extension installed unknown package: {e}')\n            ts(ext, t_start)\n    log.info(f'Extensions enabled: {extensions_enabled}')\n    if len(extensions_duplicates) > 0:\n        log.warning(f'Extensions duplicates: {extensions_duplicates}')\n    if args.profile:\n        pr.disable()\n        print_profile(pr, 'Extensions')\n    # ts('extensions', t_start)\n    return '\\n'.join(res)\n\n\n# initialize and optionally update submodules\ndef install_submodules(force=True):\n    t_start = time.time()\n    if args.profile:\n        pr = cProfile.Profile()\n        pr.enable()\n    log.info('Verifying submodules')\n    txt = git('submodule')\n    # log.debug(f'Submodules list: {txt}')\n    if force and 'no submodule mapping found' in txt and 'extension-builtin' not in txt:\n        txt = git('submodule')\n        git_reset()\n        log.info('Continuing setup')\n    git('submodule --quiet update --init --recursive')\n    git('submodule --quiet sync --recursive')\n    submodules = txt.splitlines()\n    res = []\n    for submodule in submodules:\n        try:\n            name = submodule.split()[1].strip()\n            if args.upgrade:\n                res.append(update(name))\n            else:\n                branch(name)\n        except Exception:\n            log.error(f'Submodule update error: {submodule}')\n    setup_logging()\n    if args.profile:\n        pr.disable()\n        print_profile(pr, 'Submodule')\n    ts('submodules', t_start)\n    return '\\n'.join(res)\n\n\ndef reload(package, desired=None):\n    loaded = package in sys.modules\n    if not loaded:\n        return\n    current = sys.modules[package].__version__ if hasattr(sys.modules[package], \"__version__\") else None\n    if desired is not None and current == desired:\n        return\n    modules = [m for m in sys.modules if m.startswith(package)]\n    for m in modules:\n        del sys.modules[m]\n    sys.modules[package] = importlib.import_module(package)\n    log.debug(f'Reload: package={package} version={sys.modules[package].__version__ if hasattr(sys.modules[package], \"__version__\") else \"N/A\"}')\n\n\ndef ensure_base_requirements():\n    t_start = time.time()\n    setuptools_version = '69.5.1'\n\n    def update_setuptools():\n        local_log = logging.getLogger('sdnext.installer')\n        global pkg_resources, setuptools, distutils # pylint: disable=global-statement\n        # python may ship with incompatible setuptools\n        subprocess.run(f'\"{sys.executable}\" -m pip install setuptools=={setuptools_version}', shell=True, check=False, env=os.environ, stdout=subprocess.PIPE, stderr=subprocess.PIPE)\n        # need to delete all references to modules to be able to reload them otherwise python will use cached version\n        modules = [m for m in sys.modules if m.startswith('setuptools') or m.startswith('pkg_resources') or m.startswith('distutils')]\n        for m in modules:\n            del sys.modules[m]\n        try:\n            setuptools = importlib.import_module('setuptools')\n            sys.modules['setuptools'] = setuptools\n        except ImportError as e:\n            local_log.info(f'Python: version={platform.python_version()} platform={platform.system()} bin=\"{sys.executable}\" venv=\"{sys.prefix}\"')\n            local_log.critical(f'Import: setuptools {e}')\n            os._exit(1)\n        try:\n            distutils = importlib.import_module('distutils')\n            sys.modules['distutils'] = distutils\n        except ImportError as e:\n            local_log.info(f'Python: version={platform.python_version()} platform={platform.system()} bin=\"{sys.executable}\" venv=\"{sys.prefix}\"')\n            local_log.critical(f'Import: distutils {e}')\n            os._exit(1)\n        try:\n            pkg_resources = importlib.import_module('pkg_resources')\n            sys.modules['pkg_resources'] = pkg_resources\n        except ImportError as e:\n            local_log.info(f'Python: version={platform.python_version()} platform={platform.system()} bin=\"{sys.executable}\" venv=\"{sys.prefix}\"')\n            local_log.critical(f'Import: pkg_resources {e}')\n            os._exit(1)\n\n    try:\n        global pkg_resources, setuptools # pylint: disable=global-statement\n        import pkg_resources # pylint: disable=redefined-outer-name\n        import setuptools # pylint: disable=redefined-outer-name\n        if setuptools.__version__ != setuptools_version:\n            update_setuptools()\n    except ImportError:\n        update_setuptools()\n\n    # used by installler itself so must be installed before requirements\n    install('rich==14.1.0', 'rich', quiet=True)\n    install('psutil', 'psutil', quiet=True)\n    install('requests==2.32.3', 'requests', quiet=True)\n    ts('base', t_start)\n\n\ndef install_gradio():\n    # pip install gradio==3.43.2 installs:\n    # aiofiles-23.2.1 altair-5.5.0 annotated-types-0.7.0 anyio-4.9.0 attrs-25.3.0 certifi-2025.6.15 charset_normalizer-3.4.2 click-8.2.1 contourpy-1.3.2 cycler-0.12.1 fastapi-0.115.14 ffmpy-0.6.0 filelock-3.18.0 fonttools-4.58.4 fsspec-2025.5.1 gradio-3.43.2 gradio-client-0.5.0 h11-0.16.0 hf-xet-1.1.5 httpcore-1.0.9 httpx-0.28.1 huggingface-hub-0.33.1 idna-3.10 importlib-resources-6.5.2 jinja2-3.1.6 jsonschema-4.24.0 jsonschema-specifications-2025.4.1 kiwisolver-1.4.8 markupsafe-2.1.5 matplotlib-3.10.3 narwhals-1.45.0 numpy-1.26.4 orjson-3.10.18 packaging-25.0 pandas-2.3.0 pillow-10.4.0 pydantic-2.11.7 pydantic-core-2.33.2 pydub-0.25.1 pyparsing-3.2.3 python-dateutil-2.9.0.post0 python-multipart-0.0.20 pytz-2025.2 pyyaml-6.0.2 referencing-0.36.2 requests-2.32.4 rpds-py-0.25.1 semantic-version-2.10.0 six-1.17.0 sniffio-1.3.1 starlette-0.46.2 tqdm-4.67.1 typing-extensions-4.14.0 typing-inspection-0.4.1 tzdata-2025.2 urllib3-2.5.0 uvicorn-0.35.0 websockets-11.0.3\n    install('gradio==3.43.2', no_deps=True)\n    install('gradio-client==0.5.0', no_deps=True, quiet=True)\n    install('dctorch==0.1.2', no_deps=True, quiet=True)\n    pkgs = ['fastapi', 'websockets', 'aiofiles', 'ffmpy', 'pydub', 'uvicorn', 'semantic-version', 'altair', 'python-multipart', 'matplotlib']\n    for pkg in pkgs:\n        if not installed(pkg, quiet=True):\n            install(pkg, quiet=True)\n\n\ndef install_pydantic():\n    if args.new:\n        install('pydantic==2.11.7', ignore=True, quiet=True)\n        reload('pydantic', '2.11.7')\n    else:\n        install('pydantic==1.10.21', ignore=True, quiet=True)\n        reload('pydantic', '1.10.21')\n\n\ndef install_opencv():\n    install('opencv-python==4.12.0.88', ignore=True, quiet=True)\n    install('opencv-python-headless==4.12.0.88', ignore=True, quiet=True)\n    install('opencv-contrib-python==4.12.0.88', ignore=True, quiet=True)\n    install('opencv-contrib-python-headless==4.12.0.88', ignore=True, quiet=True)\n\n\ndef install_insightface():\n    install('git+https://github.com/deepinsight/insightface@29b6cd65aa0e9ae3b6602de3c52e9d8949c8ee86#subdirectory=python-package', 'insightface') # insightface==0.7.3 with patches\n    if args.new:\n        uninstall('albumentations')\n        install('albumentationsx')\n    else:\n        uninstall('albumentationsx')\n        install('albumentations==1.4.3', ignore=True, quiet=True)\n    install_pydantic()\n\n\ndef install_optional():\n    t_start = time.time()\n    log.info('Installing optional requirements...')\n    install('--no-build-isolation git+https://github.com/Disty0/BasicSR@23c1fb6f5c559ef5ce7ad657f2fa56e41b121754', 'basicsr', ignore=True, quiet=True)\n    install('--no-build-isolation git+https://github.com/Disty0/GFPGAN@ae0f7e44fafe0ef4716f3c10067f8f379b74c21c', 'gfpgan', ignore=True, quiet=True)\n    install('av', ignore=True, quiet=True)\n    install('beautifulsoup4', ignore=True, quiet=True)\n    install('clean-fid', ignore=True, quiet=True)\n    install('clip_interrogator==0.6.0', ignore=True, quiet=True)\n    install('Cython', ignore=True, quiet=True)\n    install('gguf', ignore=True, quiet=True)\n    install('hf_transfer', ignore=True, quiet=True)\n    install('hf_xet', ignore=True, quiet=True)\n    install('nvidia-ml-py', ignore=True, quiet=True)\n    install('pillow-jxl-plugin==1.3.5', ignore=True, quiet=True)\n    install('ultralytics==8.3.40', ignore=True, quiet=True)\n    install('git+https://github.com/tencent-ailab/IP-Adapter.git', 'ip_adapter', ignore=True, quiet=True)\n    # install('torchao==0.10.0', ignore=True, quiet=True)\n    # install('bitsandbytes==0.47.0', ignore=True, quiet=True)\n    # install('optimum-quanto==0.2.7', ignore=True, quiet=True)\n    try:\n        import gguf\n        scripts_dir = os.path.join(os.path.dirname(gguf.__file__), '..', 'scripts')\n        if os.path.exists(scripts_dir):\n            os.rename(scripts_dir, scripts_dir + '_gguf')\n    except Exception:\n        pass\n    ts('optional', t_start)\n\n\ndef install_requirements():\n    t_start = time.time()\n    if args.skip_requirements and not args.requirements:\n        return\n    if args.profile:\n        pr = cProfile.Profile()\n        pr.enable()\n    if int(sys.version_info.minor) >= 13:\n        install('audioop-lts')\n    if not installed('diffusers', quiet=True): # diffusers are not installed, so run initial installation\n        global quick_allowed # pylint: disable=global-statement\n        quick_allowed = False\n        log.info('Install requirements: this may take a while...')\n        pip('install -r requirements.txt')\n    if args.optional:\n        quick_allowed = False\n        install_optional()\n    installed('torch', reload=True) # reload packages cache\n    log.info('Install: verifying requirements')\n    if args.new:\n        log.debug('Install: flag=new')\n    with open('requirements.txt', 'r', encoding='utf8') as f:\n        lines = [line.strip() for line in f.readlines() if line.strip() != '' and not line.startswith('#') and line is not None]\n        for line in lines:\n            if not installed(line, quiet=True):\n                _res = install(line)\n    install_pydantic()\n    install_opencv()\n    if args.profile:\n        pr.disable()\n        print_profile(pr, 'Requirements')\n    ts('requirements', t_start)\n\n\n# set environment variables controling the behavior of various libraries\ndef set_environment():\n    log.debug('Setting environment tuning')\n    os.environ.setdefault('ACCELERATE', 'True')\n    os.environ.setdefault('ATTN_PRECISION', 'fp16')\n    os.environ.setdefault('ClDeviceGlobalMemSizeAvailablePercent', '100')\n    os.environ.setdefault('CUDA_AUTO_BOOST', '1')\n    os.environ.setdefault('CUDA_CACHE_DISABLE', '0')\n    os.environ.setdefault('CUDA_DEVICE_DEFAULT_PERSISTING_L2_CACHE_PERCENTAGE_LIMIT', '0')\n    os.environ.setdefault('CUDA_LAUNCH_BLOCKING', '0')\n    os.environ.setdefault('CUDA_MODULE_LOADING', 'LAZY')\n    os.environ.setdefault('DO_NOT_TRACK', '1')\n    os.environ.setdefault('FORCE_CUDA', '1')\n    os.environ.setdefault('GRADIO_ANALYTICS_ENABLED', 'False')\n    os.environ.setdefault('K_DIFFUSION_USE_COMPILE', '0')\n    os.environ.setdefault('KINETO_LOG_LEVEL', '3')\n    os.environ.setdefault('NEOReadDebugKeys', '1')\n    os.environ.setdefault('NUMEXPR_MAX_THREADS', '16')\n    os.environ.setdefault('PYTHONHTTPSVERIFY', '0')\n    os.environ.setdefault('PYTORCH_ENABLE_MPS_FALLBACK', '1')\n    os.environ.setdefault('PYTORCH_ENABLE_XPU_FALLBACK', '1')\n    os.environ.setdefault('RUNAI_STREAMER_CHUNK_BYTESIZE', '2097152')\n    os.environ.setdefault('RUNAI_STREAMER_LOG_LEVEL', 'DEBUG' if os.environ.get('SD_LOAD_DEBUG') else 'WARNING')\n    os.environ.setdefault('RUNAI_STREAMER_MEMORY_LIMIT', '-1')\n    os.environ.setdefault('SAFETENSORS_FAST_GPU', '1')\n    os.environ.setdefault('SYCL_CACHE_PERSISTENT', '1')\n    os.environ.setdefault('TF_CPP_MIN_LOG_LEVEL', '2')\n    os.environ.setdefault('TF_ENABLE_ONEDNN_OPTS', '0')\n    os.environ.setdefault('TOKENIZERS_PARALLELISM', '0')\n    os.environ.setdefault('TORCH_CUDNN_V8_API_ENABLED', '1')\n    os.environ.setdefault('TORCH_FORCE_NO_WEIGHTS_ONLY_LOAD', '1')\n    os.environ.setdefault('TORCH_ROCM_AOTRITON_ENABLE_EXPERIMENTAL', '1')\n    os.environ.setdefault('MIOPEN_FIND_MODE', '2')\n    os.environ.setdefault('UR_L0_ENABLE_RELAXED_ALLOCATION_LIMITS', '1')\n    os.environ.setdefault('USE_TORCH', '1')\n    os.environ.setdefault('UV_INDEX_STRATEGY', 'unsafe-any-match')\n    os.environ.setdefault('UV_NO_BUILD_ISOLATION', '1')\n    os.environ.setdefault('UVICORN_TIMEOUT_KEEP_ALIVE', '60')\n    allocator = f'garbage_collection_threshold:{opts.get(\"torch_gc_threshold\", 80)/100:0.2f},max_split_size_mb:512'\n    if opts.get(\"torch_malloc\", \"native\") == 'cudaMallocAsync':\n        allocator += ',backend:cudaMallocAsync'\n    if opts.get(\"torch_expandable_segments\", False):\n        allocator += ',expandable_segments:True'\n    os.environ.setdefault('PYTORCH_ALLOC_CONF', allocator)\n    os.environ.setdefault('PYTORCH_CUDA_ALLOC_CONF', allocator)\n    os.environ.setdefault('PYTORCH_HIP_ALLOC_CONF', allocator)\n    log.debug(f'Torch allocator: \"{allocator}\"')\n\n\ndef check_extensions():\n    newest_all = os.path.getmtime('requirements.txt')\n    from modules.paths import extensions_builtin_dir, extensions_dir\n    extension_folders = [extensions_builtin_dir] if args.safe else [extensions_builtin_dir, extensions_dir]\n    disabled_extensions_all = opts.get('disable_all_extensions', 'none')\n    if disabled_extensions_all != 'none':\n        log.info(f'Extensions: disabled={disabled_extensions_all}')\n    else:\n        log.info(f'Extensions: disabled={opts.get(\"disabled_extensions\", [])}')\n    for folder in extension_folders:\n        if not os.path.isdir(folder):\n            continue\n        extensions = list_extensions_folder(folder)\n        for ext in extensions:\n            newest = 0\n            extension_dir = os.path.join(folder, ext)\n            if not os.path.isdir(extension_dir):\n                log.debug(f'Extension listed as installed but folder missing: {extension_dir}')\n                continue\n            for f in os.listdir(extension_dir):\n                if '.json' in f or '.csv' in f or '__pycache__' in f:\n                    continue\n                mtime = os.path.getmtime(os.path.join(extension_dir, f))\n                newest = max(newest, mtime)\n            newest_all = max(newest_all, newest)\n            # log.debug(f'Extension version: {time.ctime(newest)} {folder}{os.path.sep}{ext}')\n    return round(newest_all)\n\n\ndef get_version(force=False):\n    t_start = time.time()\n    if (version is None) or (version.get('branch', 'unknown') == 'unknown') or force:\n        try:\n            subprocess.run('git config log.showsignature false', stdout = subprocess.PIPE, stderr = subprocess.PIPE, shell=True, check=True)\n        except Exception:\n            pass\n        try:\n            res = subprocess.run('git log --pretty=format:\"%h %ad\" -1 --date=short', stdout = subprocess.PIPE, stderr = subprocess.PIPE, shell=True, check=True)\n            ver = res.stdout.decode(encoding = 'utf8', errors='ignore') if len(res.stdout) > 0 else '  '\n            commit, updated = ver.split(' ')\n            version['commit'], version['updated'] = commit, updated\n        except Exception as e:\n            log.warning(f'Version: where=commit {e}')\n        try:\n            res = subprocess.run('git remote get-url origin', stdout = subprocess.PIPE, stderr = subprocess.PIPE, shell=True, check=True)\n            origin = res.stdout.decode(encoding = 'utf8', errors='ignore') if len(res.stdout) > 0 else ''\n            res = subprocess.run('git rev-parse --abbrev-ref HEAD', stdout = subprocess.PIPE, stderr = subprocess.PIPE, shell=True, check=True)\n            branch_name = res.stdout.decode(encoding = 'utf8', errors='ignore') if len(res.stdout) > 0 else ''\n            version['url'] = origin.replace('\\n', '').removesuffix('.git') + '/tree/' + branch_name.replace('\\n', '')\n            version['branch'] = branch_name.replace('\\n', '')\n            if version['branch'] == 'HEAD':\n                log.warning('Version: detached state detected')\n        except Exception as e:\n            log.warning(f'Version: where=branch {e}')\n        cwd = os.getcwd()\n        try:\n            if os.path.exists('extensions-builtin/sdnext-modernui'):\n                os.chdir('extensions-builtin/sdnext-modernui')\n                res = subprocess.run('git rev-parse --abbrev-ref HEAD', stdout = subprocess.PIPE, stderr = subprocess.PIPE, shell=True, check=True)\n                branch_ui = res.stdout.decode(encoding = 'utf8', errors='ignore') if len(res.stdout) > 0 else ''\n                branch_ui = 'dev' if 'dev' in branch_ui else 'main'\n                version['ui'] = branch_ui\n            else:\n                version['ui'] = 'unavailable'\n        except Exception as e:\n            log.warning(f'Version: where=modernui {e}')\n            version['ui'] = 'unknown'\n        finally:\n            os.chdir(cwd)\n        try:\n            if os.environ.get('SD_KANVAS_DISABLE', None) is not None:\n                version['kanvas'] = 'disabled'\n            elif os.path.exists('extensions-builtin/sdnext-kanvas'):\n                os.chdir('extensions-builtin/sdnext-kanvas')\n                res = subprocess.run('git rev-parse --abbrev-ref HEAD', stdout = subprocess.PIPE, stderr = subprocess.PIPE, shell=True, check=True)\n                branch_kanvas = res.stdout.decode(encoding = 'utf8', errors='ignore') if len(res.stdout) > 0 else ''\n                branch_kanvas = 'dev' if 'dev' in branch_kanvas else 'main'\n                version['kanvas'] = branch_kanvas\n            else:\n                version['kanvas'] = 'unavailable'\n        except Exception as e:\n            log.warning(f'Version: where=kanvas {e}')\n            version['kanvas'] = 'unknown'\n        finally:\n            os.chdir(cwd)\n    ts('version', t_start)\n    return version\n\n\ndef check_ui(ver):\n    def same(ver):\n        core = ver['branch'] if ver is not None and 'branch' in ver else 'unknown'\n        ui = ver['ui'] if ver is not None and 'ui' in ver else 'unknown'\n        return (core == ui) or (core == 'master' and ui == 'main') or (core == 'dev' and ui == 'dev') or (core == 'HEAD')\n\n    t_start = time.time()\n    if not same(ver):\n        log.debug(f'Branch mismatch: {ver}')\n        cwd = os.getcwd()\n        try:\n            os.chdir('extensions-builtin/sdnext-modernui')\n            target = 'dev' if 'dev' in ver['branch'] else 'main'\n            git('checkout ' + target, ignore=True, optional=True)\n            os.chdir(cwd)\n            ver = get_version(force=True)\n            log.debug(f'Branch sync: {ver}')\n        except Exception as e:\n            log.debug(f'Branch switch: {e}')\n        os.chdir(cwd)\n    ts('ui', t_start)\n\n\ndef check_venv():\n    def try_relpath(p):\n        try:\n            return os.path.relpath(p)\n        except ValueError:\n            return p\n\n    t_start = time.time()\n    import site\n    pkg_path = [try_relpath(p) for p in site.getsitepackages() if os.path.exists(p)]\n    log.debug(f'Packages: prefix={try_relpath(sys.prefix)} site={pkg_path}')\n    for p in pkg_path:\n        invalid = []\n        for f in os.listdir(p):\n            if f.startswith('~'):\n                invalid.append(f)\n        if len(invalid) > 0:\n            log.warning(f'Packages: site=\"{p}\" invalid={invalid} removing')\n        for f in invalid:\n            fn = os.path.join(p, f)\n            try:\n                if os.path.isdir(fn):\n                    shutil.rmtree(fn)\n                elif os.path.isfile(fn):\n                    os.unlink(fn)\n            except Exception as e:\n                log.error(f'Packages: site={p} invalid={f} error={e}')\n    ts('venv', t_start)\n\n\n# check version of the main repo and optionally upgrade it\ndef check_version(reset=True): # pylint: disable=unused-argument\n    if opts.get('offline_mode', False):\n        log.warning('Offline mode enabled')\n        args.skip_git = True # pylint: disable=attribute-defined-outside-init\n        args.skip_all = True # pylint: disable=attribute-defined-outside-init\n        return\n    t_start = time.time()\n    if args.skip_all:\n        return\n    if not os.path.exists('.git'):\n        log.warning('Not a git repository')\n        args.skip_git = True # pylint: disable=attribute-defined-outside-init\n    ver = get_version()\n    log.info(f'Version: {print_dict(ver)}')\n    branch_name = ver.get('branch', None) if ver is not None else 'master'\n    if branch_name is None or branch_name == 'unknown':\n        branch_name = 'master'\n    if args.version or args.skip_git:\n        return\n    check_ui(ver)\n    commit = git('rev-parse HEAD')\n    global git_commit # pylint: disable=global-statement\n    git_commit = commit[:7]\n    if args.quick:\n        return\n    try:\n        import requests\n    except ImportError:\n        return\n    commits = None\n    branch_names = []\n    try:\n        branches = requests.get('https://api.github.com/repos/vladmandic/sdnext/branches', timeout=10).json()\n        branch_names = [b['name'] for b in branches if 'name' in b]\n        log.trace(f'Repository branches: active={branch_name} available={branch_names}')\n    except Exception as e:\n        log.error(f'Repository: failed to get branches: {e}')\n        return\n    if branch_name not in branch_names:\n        log.warning(f'Repository: branch={branch_name} skipping update')\n        ts('latest', t_start)\n        return\n    try:\n        commits = requests.get(f'https://api.github.com/repos/vladmandic/sdnext/branches/{branch_name}', timeout=10).json()\n        latest = commits['commit']['sha']\n        if len(latest) != 40:\n            log.error(f'Repository error: commit={latest} invalid')\n        elif latest != commit and args.upgrade:\n            global quick_allowed # pylint: disable=global-statement\n            quick_allowed = False\n            log.info('Updating main repository')\n            try:\n                git('add .')\n                git('stash')\n                update('.', keep_branch=True)\n                # git('git stash pop')\n                ver = git('log -1 --pretty=format:\"%h %ad\"')\n                log.info(f'Repository upgraded: {ver}')\n                log.warning('Server restart is recommended to apply changes')\n                if ver == latest: # double check\n                    restart()\n            except Exception:\n                if not reset:\n                    log.error('Repository error upgrading')\n                else:\n                    log.warning('Repository: retrying upgrade...')\n                    git_reset()\n                    check_version(reset=False)\n        else:\n            dt = commits[\"commit\"][\"commit\"][\"author\"][\"date\"]\n            commit = commits[\"commit\"][\"sha\"][:8]\n            log.info(f'Version: app=sd.next latest={dt} hash={commit} branch={branch_name}')\n    except Exception as e:\n        log.error(f'Repository failed to check version: {e} {commits}')\n    ts('latest', t_start)\n\n\ndef update_wiki():\n    t_start = time.time()\n    if args.upgrade:\n        log.info('Updating Wiki')\n        try:\n            update(os.path.join(os.path.dirname(__file__), \"wiki\"))\n        except Exception:\n            log.error('Wiki update error')\n    ts('wiki', t_start)\n\n\n# check if we can run setup in quick mode\ndef check_timestamp():\n    if not quick_allowed or not os.path.isfile(log_file):\n        return False\n    if args.quick:\n        return True\n    if args.skip_git:\n        return True\n    ok = True\n    setup_time = -1\n    version_time = -1\n    with open(log_file, 'r', encoding='utf8') as f:\n        lines = f.readlines()\n        for line in lines:\n            if 'Setup complete without errors' in line:\n                setup_time = int(line.split(' ')[-1])\n    try:\n        version_time = git('log -1 --pretty=format:\"%at\"')\n        version_time = ''.join(filter(str.isdigit, version_time))\n        version_time = int(version_time) if len(version_time) > 0 else -1\n        log.debug(f'Timestamp repository update time: {time.ctime(version_time)}')\n    except Exception as e:\n        log.error(f'Timestamp local repository version: {e}')\n    if setup_time == -1:\n        return False\n    log.debug(f'Timestamp previous setup time: {time.ctime(setup_time)}')\n    if setup_time < version_time or version_time == -1:\n        ok = False\n    extension_time = check_extensions()\n    log.debug(f'Timestamp latest extensions time: {time.ctime(extension_time)}')\n    if setup_time < extension_time:\n        ok = False\n    log.debug(f'Timestamp: version:{version_time} setup:{setup_time} extension:{extension_time}')\n    if args.reinstall:\n        ok = False\n    return ok\n\n\ndef add_args(parser):\n    import argparse\n    group_install = parser.add_argument_group('Install')\n    group_install.add_argument('--quick', default=os.environ.get(\"SD_QUICK\",False), action='store_true', help=\"Bypass version checks, default: %(default)s\")\n    group_install.add_argument('--reset', default=os.environ.get(\"SD_RESET\",False), action='store_true', help=\"Reset main repository to latest version, default: %(default)s\")\n    group_install.add_argument('--upgrade', '--update', default=os.environ.get(\"SD_UPGRADE\",False), action='store_true', help=\"Upgrade main repository to latest version, default: %(default)s\")\n    group_install.add_argument('--requirements', default=os.environ.get(\"SD_REQUIREMENTS\",False), action='store_true', help=\"Force re-check of requirements, default: %(default)s\")\n    group_install.add_argument('--reinstall', default=os.environ.get(\"SD_REINSTALL\",False), action='store_true', help=\"Force reinstallation of all requirements, default: %(default)s\")\n    group_install.add_argument('--uv', default=os.environ.get(\"SD_UV\",False), action='store_true', help=\"Use uv instead of pip to install the packages\")\n    group_install.add_argument('--optional', default=os.environ.get(\"SD_OPTIONAL\",False), action='store_true', help=\"Force installation of optional requirements, default: %(default)s\")\n    group_install.add_argument('--skip-requirements', default=os.environ.get(\"SD_SKIPREQUIREMENTS\",False), action='store_true', help=\"Skips checking and installing requirements, default: %(default)s\")\n    group_install.add_argument('--skip-extensions', default=os.environ.get(\"SD_SKIPEXTENSION\",False), action='store_true', help=\"Skips running individual extension installers, default: %(default)s\")\n    group_install.add_argument('--skip-git', default=os.environ.get(\"SD_SKIPGIT\",False), action='store_true', help=\"Skips running all GIT operations, default: %(default)s\")\n    group_install.add_argument('--skip-torch', default=os.environ.get(\"SD_SKIPTORCH\",False), action='store_true', help=\"Skips running Torch checks, default: %(default)s\")\n    group_install.add_argument('--skip-all', default=os.environ.get(\"SD_SKIPALL\",False), action='store_true', help=\"Skips running all checks, default: %(default)s\")\n    group_install.add_argument('--skip-env', default=os.environ.get(\"SD_SKIPENV\",False), action='store_true', help=\"Skips setting of env variables during startup, default: %(default)s\")\n\n    group_compute = parser.add_argument_group('Compute Engine')\n    group_compute.add_argument(\"--device-id\", type=str, default=os.environ.get(\"SD_DEVICEID\", None), help=\"Select the default GPU device to use, default: %(default)s\")\n    group_compute.add_argument(\"--use-cuda\", default=os.environ.get(\"SD_USECUDA\",False), action='store_true', help=\"Force use nVidia CUDA backend, default: %(default)s\")\n    group_compute.add_argument(\"--use-ipex\", default=os.environ.get(\"SD_USEIPEX\",False), action='store_true', help=\"Force use Intel OneAPI XPU backend, default: %(default)s\")\n    group_compute.add_argument(\"--use-rocm\", default=os.environ.get(\"SD_USEROCM\",False), action='store_true', help=\"Force use AMD ROCm backend, default: %(default)s\")\n    group_compute.add_argument('--use-zluda', default=os.environ.get(\"SD_USEZLUDA\", False), action='store_true', help=\"Force use ZLUDA, AMD GPUs only, default: %(default)s\")\n    group_compute.add_argument(\"--use-openvino\", default=os.environ.get(\"SD_USEOPENVINO\",False), action='store_true', help=\"Use Intel OpenVINO backend, default: %(default)s\")\n    group_compute.add_argument('--use-directml', default=os.environ.get(\"SD_USEDIRECTML\",False), action='store_true', help=\"Use DirectML if no compatible GPU is detected, default: %(default)s\")\n    group_compute.add_argument(\"--use-xformers\", default=os.environ.get(\"SD_USEXFORMERS\",False), action='store_true', help=\"Force use xFormers cross-optimization, default: %(default)s\")\n    group_compute.add_argument(\"--use-nightly\", default=os.environ.get(\"SD_USENIGHTLY\",False), action='store_true', help=\"Force use nightly torch builds, default: %(default)s\")\n\n    group_paths = parser.add_argument_group('Paths')\n    group_paths.add_argument(\"--ckpt\", type=str, default=os.environ.get(\"SD_MODEL\", None), help=\"Path to model checkpoint to load immediately, default: %(default)s\")\n    group_paths.add_argument(\"--data-dir\", type=str, default=os.environ.get(\"SD_DATADIR\", ''), help=\"Base path where all user data is stored, default: %(default)s\")\n    group_paths.add_argument(\"--models-dir\", type=str, default=os.environ.get(\"SD_MODELSDIR\", 'models'), help=\"Base path where all models are stored, default: %(default)s\",)\n    group_paths.add_argument(\"--extensions-dir\", type=str, default=os.environ.get(\"SD_EXTENSIONSDIR\", None), help=\"Base path where all extensions are stored, default: %(default)s\",)\n\n    group_ui = parser.add_argument_group('UI')\n    group_ui.add_argument('--theme', type=str, default=os.environ.get(\"SD_THEME\", None), help='Override UI theme')\n    group_ui.add_argument('--locale', type=str, default=os.environ.get(\"SD_LOCALE\", None), help='Override UI locale')\n\n    group_http = parser.add_argument_group('HTTP')\n    group_http.add_argument(\"--server-name\", type=str, default=os.environ.get(\"SD_SERVERNAME\", None), help=\"Sets hostname of server, default: %(default)s\")\n    group_http.add_argument(\"--tls-keyfile\", type=str, default=os.environ.get(\"SD_TLSKEYFILE\", None), help=\"Enable TLS and specify key file, default: %(default)s\")\n    group_http.add_argument(\"--tls-certfile\", type=str, default=os.environ.get(\"SD_TLSCERTFILE\", None), help=\"Enable TLS and specify cert file, default: %(default)s\")\n    group_http.add_argument(\"--tls-selfsign\", action=\"store_true\", default=os.environ.get(\"SD_TLSSELFSIGN\", False), help=\"Enable TLS with self-signed certificates, default: %(default)s\")\n    group_http.add_argument(\"--cors-origins\", type=str, default=os.environ.get(\"SD_CORSORIGINS\", None), help=\"Allowed CORS origins as comma-separated list, default: %(default)s\")\n    group_http.add_argument(\"--cors-regex\", type=str, default=os.environ.get(\"SD_CORSREGEX\", None), help=\"Allowed CORS origins as regular expression, default: %(default)s\")\n    group_http.add_argument('--subpath', type=str, default=os.environ.get(\"SD_SUBPATH\", None), help='Customize the URL subpath for usage with reverse proxy')\n    group_http.add_argument(\"--autolaunch\", default=os.environ.get(\"SD_AUTOLAUNCH\", False), action='store_true', help=\"Open the UI URL in the system's default browser upon launch\")\n    group_http.add_argument(\"--auth\", type=str, default=os.environ.get(\"SD_AUTH\", None), help='Set access authentication like \"user:pwd,user:pwd\"\"')\n    group_http.add_argument(\"--auth-file\", type=str, default=os.environ.get(\"SD_AUTHFILE\", None), help='Set access authentication using file, default: %(default)s')\n    group_http.add_argument(\"--allowed-paths\", nargs='+', default=[], type=str, required=False, help=\"add additional paths to paths allowed for web access\")\n    group_http.add_argument(\"--share\", default=os.environ.get(\"SD_SHARE\", False), action='store_true', help=\"Enable UI accessible through Gradio site, default: %(default)s\")\n    group_http.add_argument(\"--insecure\", default=os.environ.get(\"SD_INSECURE\", False), action='store_true', help=\"Enable extensions tab regardless of other options, default: %(default)s\")\n    group_http.add_argument(\"--listen\", default=os.environ.get(\"SD_LISTEN\", False), action='store_true', help=\"Launch web server using public IP address, default: %(default)s\")\n    group_http.add_argument(\"--remote\", default=os.environ.get(\"SD_REMOTE\", False), action='store_true', help=\"Reduce client-server communication, default: %(default)s\")\n    group_http.add_argument(\"--port\", type=int, default=os.environ.get(\"SD_PORT\", 7860), help=\"Launch web server with given server port, default: %(default)s\")\n\n    group_diag = parser.add_argument_group('Diagnostics')\n    group_diag.add_argument('--experimental', default=os.environ.get(\"SD_EXPERIMENTAL\",False), action='store_true', help=\"Allow unsupported versions of libraries, default: %(default)s\")\n    group_diag.add_argument('--ignore', default=os.environ.get(\"SD_IGNORE\",False), action='store_true', help=\"Ignore any errors and attempt to continue\")\n    group_diag.add_argument('--new', default=os.environ.get(\"SD_NEW\",False), action='store_true', help=\"Force newer/untested version of libraries, default: %(default)s\")\n    group_diag.add_argument('--safe', default=os.environ.get(\"SD_SAFE\",False), action='store_true', help=\"Run in safe mode with no user extensions\")\n    group_diag.add_argument('--test', default=os.environ.get(\"SD_TEST\",False), action='store_true', help=\"Run test only and exit\")\n    group_diag.add_argument('--version', default=False, action='store_true', help=\"Print version information\")\n    group_diag.add_argument(\"--monitor\", default=os.environ.get(\"SD_MONITOR\", 0), help=\"Run memory monitor, default: %(default)s\")\n    group_diag.add_argument(\"--status\", default=os.environ.get(\"SD_STATUS\", 120), help=\"Run server is-alive status, default: %(default)s\")\n\n    group_log = parser.add_argument_group('Logging')\n    group_log.add_argument(\"--log\", type=str, default=os.environ.get(\"SD_LOG\", None), help=\"Set log file, default: %(default)s\")\n    group_log.add_argument('--debug', default=not os.environ.get(\"SD_NODEBUG\",False), action='store_true', help=\"Run with debug logging, default: %(default)s\")\n    group_log.add_argument(\"--trace\", default=os.environ.get(\"SD_TRACE\", False), action='store_true', help=\"Run with trace logging, default: %(default)s\")\n    group_log.add_argument(\"--profile\", default=os.environ.get(\"SD_PROFILE\", False), action='store_true', help=\"Run profiler, default: %(default)s\")\n    group_log.add_argument('--docs', default=not os.environ.get(\"SD_NODOCS\", False), action='store_true', help = \"Mount API docs, default: %(default)s\")\n    group_log.add_argument(\"--api-log\", default=not os.environ.get(\"SD_NOAPILOG\", False), action='store_true', help=\"Log all API requests\")\n\n    group_nargs = parser.add_argument_group('Other')\n    group_nargs.add_argument('args', type=str, nargs='*', help=argparse.SUPPRESS)\n\n\ndef parse_args(parser):\n    # command line args\n    global args # pylint: disable=global-statement\n    if \"USED_VSCODE_COMMAND_PICKARGS\" in os.environ:\n        import shlex\n        argv = shlex.split(\" \".join(sys.argv[1:])) if \"USED_VSCODE_COMMAND_PICKARGS\" in os.environ else sys.argv[1:]\n        log.debug('VSCode Launch')\n        args = parser.parse_args(argv)\n    else:\n        args = parser.parse_args()\n    return args\n\n\ndef extensions_preload(parser):\n    t_start = time.time()\n    if args.profile:\n        pr = cProfile.Profile()\n        pr.enable()\n    if args.safe:\n        log.info('Running in safe mode without user extensions')\n    try:\n        from modules.script_loading import preload_extensions\n        from modules.paths import extensions_builtin_dir, extensions_dir\n        extension_folders = [extensions_builtin_dir] if args.safe else [extensions_builtin_dir, extensions_dir]\n        preload_time = {}\n        for ext_dir in extension_folders:\n            t0 = time.time()\n            preload_extensions(ext_dir, parser)\n            t1 = time.time()\n            preload_time[ext_dir] = round(t1 - t0, 2)\n        log.debug(f'Extension preload: {preload_time}')\n    except Exception:\n        log.error('Error running extension preloading')\n    if args.profile:\n        pr.disable()\n        print_profile(pr, 'Preload')\n    ts('preload', t_start)\n\n\ndef git_reset(folder='.'):\n    t_start = time.time()\n    log.warning('Running GIT reset')\n    global quick_allowed # pylint: disable=global-statement\n    quick_allowed = False\n    b = branch(folder)\n    if b is None or b == '':\n        b = 'master'\n    git('add .')\n    git('stash')\n    git('merge --abort', folder=None, ignore=True)\n    git('fetch --all')\n    git(f'reset --hard origin/{b}')\n    git(f'checkout {b}')\n    git('submodule update --init --recursive')\n    git('submodule sync --recursive')\n    log.info('GIT reset complete')\n    ts('reset', t_start)\n\n\ndef read_options():\n    t_start = time.time()\n    global opts # pylint: disable=global-statement\n    if os.path.isfile(args.config):\n        with open(args.config, \"r\", encoding=\"utf8\") as file:\n            try:\n                opts = json.load(file)\n                if type(opts) is str:\n                    opts = json.loads(opts)\n            except Exception as e:\n                log.error(f'Error reading options file: {file} {e}')\n    ts('options', t_start)\n"
  },
  {
    "path": "javascript/amethyst-nightfall.css",
    "content": "/* generic html tags */\n:root {\n  --font: \"Source Sans Pro\", 'ui-sans-serif', 'system-ui', sans-serif, 'NotoSans';\n  --font-size: 16px;\n  --highlight-color: #8a3df6; /* Purple color */\n  --inactive-color: #404040; /* Darker shade of gray */\n  --background-color: #000000; /* Black */\n  --primary-50: #eff6ff; /* Lighter shade of purple */\n  --primary-100: #dbeafe; /* Lighter shade of purple */\n  --primary-200: #bfdbfe; /* Lighter shade of purple */\n  --primary-300: #93c5fd; /* Lighter shade of purple */\n  --primary-400: #60a5fa; /* Lighter shade of purple */\n  --primary-500: #8a3df6; /* Purple color */\n  --primary-600: #6629eb; /* Darker shade of purple */\n  --primary-700: #1d4ed8; /* Even darker shade of purple */\n  --primary-800: #1e40af; /* Dark purple */\n  --primary-900: #1e3a8a; /* Darker purple */\n  --primary-950: #1d3660; /* Darkest purple */\n}\n\n\n.light, .dark {\n  --input-padding: 4px;\n  --radius-lg: 2px;\n  --radius-sm: 1px;\n  --spacing-md: 4px;\n  --spacing-xxl: 12px;\n  --line-sm: 1.3em;\n}\n\nhtml { font-size: var(--font-size); }\nbody, button, input, select, textarea { font-family: var(--font);}\nimg { background-color: var(--background-color); }\ninput[type=checkbox] { background-color: transparent !important; }\ninput[type=range] { height: var(--line-sm); appearance: none; margin-top: 0; min-width: 160px; background-color: var(--background-color); width: 100%; background: transparent; }\ninput[type=range]::-webkit-slider-runnable-track { width: 100%; height: 18px; cursor: pointer; box-shadow: 2px 2px 3px #111111; background: var(--input-background-fill); border-radius: var(--radius-lg); border: 0px solid #222222; }\ninput[type=range]::-moz-range-track { width: 100%; height: 18px; cursor: pointer; box-shadow: 2px 2px 3px #111111; background: var(--input-background-fill); border-radius: var(--radius-lg); border: 0px solid #222222; }\ninput[type=range]::-webkit-slider-thumb { box-shadow: 2px 2px 3px #111111; border: 0px solid #000000; height: 18px; width: 40px; border-radius: var(--radius-lg); background: var(--highlight-color); cursor: pointer; appearance: none; margin-top: 0px; }\ninput[type=range]::-moz-range-thumb { box-shadow: 2px 2px 3px #111111; border: 0px solid #000000; height: 18px; width: 40px; border-radius: var(--radius-lg); background: var(--highlight-color); cursor: pointer; appearance: none; margin-top: 0px; }\n:root { scrollbar-color: var(--highlight-color) #333333; }\n::-webkit-scrollbar { width: 12px; height: 12px; }\n::-webkit-scrollbar-track { background: #333333; }\n::-webkit-scrollbar-thumb { background-color: var(--highlight-color); border-radius: var(--radius-lg); border-width: 0; box-shadow: 2px 2px 3px #111111; }\ndiv.form { border-width: 0; box-shadow: none; background: transparent; overflow: visible; gap: 1em; margin-bottom: 6px; }\ndiv.compact { gap: 1em; }\n\n/* gradio style classes */\nfieldset .gr-block.gr-box, label.block span { padding: 0; margin-top: -4px; }\n.border-2 { border-width: 0; }\n.border-b-2 { border-bottom-width: 2px; border-color: var(--highlight-color) !important; padding-bottom: 2px; margin-bottom: 8px; }\n.bg-white { color: lightyellow; background-color: var(--inactive-color); }\n.gr-box { border-radius: var(--radius-sm) !important; background-color: #111111 !important; box-shadow: 2px 2px 3px #000000; border-width: 0; padding: 4px; margin: 12px 0px 12px 0px }\n.gr-button { font-weight: normal; box-shadow: 2px 2px 3px #111111; font-size: 0.8rem; min-width: 32px; min-height: 32px; padding: 3px; margin: 3px; }\n.gr-check-radio { background-color: var(--inactive-color); border-width: 0; border-radius: var(--radius-lg); box-shadow: 2px 2px 3px #000000; }\n.gr-check-radio:checked { background-color: var(--highlight-color); }\n.gr-compact { background-color: var(--background-color); }\n.gr-form { border-width: 0; }\n.gr-input { background-color: #333333 !important; padding: 4px; margin: 4px; }\n.gr-input-label { color: lightyellow; border-width: 0; background: transparent; padding: 2px !important; }\n.gr-panel { background-color: var(--background-color); }\n.eta-bar { display: none !important }\nsvg.feather.feather-image, .feather .feather-image { display: none }\n.gap-2 { padding-top: 8px; }\n.gr-box > div > div > input.gr-text-input { right: 0; width: 4em; padding: 0; top: -12px; border: none; max-height: 20px; }\n.output-html { line-height: 1.2rem; overflow-x: hidden; }\n.output-html > div { margin-bottom: 8px; }\n.overflow-hidden .flex .flex-col .relative col .gap-4 { min-width: var(--left-column); max-width: var(--left-column); } /* this is a problematic one */\n.p-2 { padding: 0; }\n.px-4 { padding-lefT: 1rem; padding-right: 1rem; }\n.py-6 { padding-bottom: 0; }\n.tabs { background-color: var(--background-color); }\n.block.token-counter span { background-color: #222 !important; box-shadow: 2px 2px 2px #111; border: none !important; font-size: 0.8rem; }\n.tab-nav { zoom: 110%; margin-bottom: 10px; border-bottom: 2px solid var(--highlight-color) !important; padding-bottom: 2px; }\n.label-wrap { margin: 16px 0px 8px 0px; }\n.gradio-button.tool { border: none; background: none; box-shadow: none; }\n#tab_extensions table td, #tab_extensions table th { border: none; padding: 0.5em; }\n#tab_extensions table { width: 96vw }\n#tab_extensions table thead { background-color: var(--neutral-700); }\n\n/* automatic style classes */\n.progressDiv { border-radius: var(--radius-sm) !important; position: fixed; top: 44px; right: 26px; max-width: 262px; height: 48px; z-index: 99; box-shadow: var(--button-shadow); }\n.progressDiv .progress { border-radius: var(--radius-lg) !important; background: var(--highlight-color); line-height: 3rem; height: 48px; }\n.gallery-item { box-shadow: none !important; }\n.performance { color: #888; }\n.extra-networks { border-left: 2px solid var(--highlight-color) !important; padding-left: 4px; }\n.image-buttons { gap: 10px !important}\n\n/* gradio elements overrides */\n#div.gradio-container { overflow-x: hidden; }\n#img2img_label_copy_to_img2img { font-weight: normal; }\n#img2img_settings { min-width: calc(2 * var(--left-column)); max-width: calc(2 * var(--left-column)); background-color: #111111; padding-top: 16px; }\n#interrogate, #deepbooru { margin: 0 0px 10px 0px; max-width: 80px; max-height: 80px; font-weight: normal; font-size: 0.95em; }\n#quicksettings .gr-button-tool { font-size: 1.6rem; box-shadow: none; margin-left: -20px; margin-top: -2px; height: 2.4em; }\n#footer, #style_pos_col, #style_neg_col, #roll_col, #extras_upscaler_2, #extras_upscaler_2_visibility, #txt2img_seed_resize_from_w, #txt2img_seed_resize_from_h { display: none; }\n#save-animation { border-radius: var(--radius-sm) !important; margin-bottom: 16px; background-color: #111111; }\n#script_list { padding: 4px; margin-top: 16px; margin-bottom: 8px; }\n#tab_extensions table { background-color: #222222; }\n#txt2img_cfg_scale { min-width: 200px; }\n#txt2img_checkboxes, #img2img_checkboxes { background-color: transparent; }\n#txt2img_checkboxes, #img2img_checkboxes { margin-bottom: 0.2em; }\n#txt2img_gallery, #img2img_gallery, #extras_gallery { padding: 0; margin: 0; object-fit: contain; box-shadow: none; min-height: 0; }\n\n#extras_upscale { margin-top: 10px }\n#txt2img_progress_row > div { min-width: var(--left-column); max-width: var(--left-column); }\n#txt2img_seed_row { padding: 0; margin-top: 8px; }\n#txt2img_settings { min-width: var(--left-column); max-width: var(--left-column); background-color: #111111; padding-top: 16px; }\n#txt2img_subseed_row { padding: 0; margin-top: 16px; }\n#txt2img_subseed_show, #img2img_subseed_show { display: None }\n#txt2img_subseed_strength { margin-top: 0; }\n#pnginfo_html2_info { margin-top: -18px; background-color: var(--input-background-fill); padding: var(--input-padding) }\n.gradio-button.tool { filter: hue-rotate(180deg) saturate(0.5); }\n#txt2img_styles_row, #img2img_styles_row { margin-top: -6px; z-index: 200; }\n\n/* based on gradio built-in dark theme */\n:root, .light, .dark {\n  --body-background-fill: #000000; /* Black */\n  --body-text-color: #ffffff; /* White */\n  --color-accent-soft: var(--neutral-700);\n  --background-fill-primary: #222222; /* Dark gray */\n  --background-fill-secondary: none;\n  --border-color-accent: var(--background-color);\n  --border-color-primary: var(--background-color);\n  --link-text-color-active: #8a3df6; /* Purple color */\n  --link-text-color: #8a3df6; /* Purple color */\n  --link-text-color-hover: #6629eb; /* Darker shade of purple */\n  --link-text-color-visited: #401e99; /* Even darker shade of purple */\n  --body-text-color-subdued: var(--neutral-400);\n  --shadow-spread: 1px;\n  --block-background-fill: None;\n  --block-border-color: var(--border-color-primary);\n  --block_border_width: None;\n  --block-info-text-color: var(--body-text-color-subdued);\n  --block-label-background-fill: var(--background-fill-secondary);\n  --block-label-border-color: var(--border-color-primary);\n  --block_label_border_width: None;\n  --block-label-text-color: #ffffff; /* White */\n  --block_shadow: None;\n  --block_title_background_fill: None;\n  --block_title_border_color: None;\n  --block_title_border_width: None;\n  --block-title-text-color: white;\n  --panel-background-fill: var(--background-fill-secondary);\n  --panel-border-color: var(--border-color-primary);\n  --panel_border_width: None;\n  --checkbox-background-color: #707070; /* Dark gray color */\n  --checkbox-background-color-focus: var(--checkbox-background-color);\n  --checkbox-background-color-hover: var(--checkbox-background-color);\n  --checkbox-background-color-selected: #8a3df6; /* Purple color */\n  --checkbox-border-color: var(--neutral-700);\n  --checkbox-border-color-focus: #8a3df6; /* Purple color */\n  --checkbox-border-color-hover: #606060; /* Darker shade of gray */\n  --checkbox-border-color-selected: #8a3df6; /* Purple color */\n  --checkbox-border-width: var(--input-border-width);\n  --checkbox-label-background-fill: None;\n  --checkbox-label-background-fill-hover: None;\n  --checkbox-label-background-fill-selected: var(--checkbox-label-background-fill);\n  --checkbox-label-border-color: var(--border-color-primary);\n  --checkbox-label-border-color-hover: var(--checkbox-label-border-color);\n  --checkbox-label-border-width: var(--input-border-width);\n  --checkbox-label-text-color: var(--body-text-color);\n  --checkbox-label-text-color-selected: var(--checkbox-label-text-color);\n  --error-background-fill: #222222; /* Darker shade of background-fill-primary (black) */\n  --error-border-color: var(--border-color-primary);\n  --error_border_width: None;\n  --error-text-color: #ef4444;\n  --input-background-fill: #0e0420; /* Dark gray color */\n  --input-background-fill-focus: #8a3df6; /* Purple color */\n  --input-background-fill-hover: var(--input-background-fill);\n  --input-border-color: var(--border-color-primary);\n  --input-border-color-focus: #404040; /* Darker shade of gray */\n  --input-border-color-hover: var(--input-border-color);\n  --input_border_width: None;\n  --input-placeholder-color: var(--neutral-500);\n  --input-shadow: 2px 2px 2px 2px #111111;\n  --input-shadow-focus: 2px 2px 2px 2px #111111;\n  --loader_color: None;\n  --slider_color: None;\n  --stat-background-fill: linear-gradient(to right, #8a3df6, #6629eb); /* Purple to darker shade of purple */\n  --table-border-color: var(--neutral-700);\n  --table-even-background-fill: #222222; /* Darker shade of background-fill-primary (black) */\n  --table-odd-background-fill: #333333; /* Even darker shade of background-fill-primary (black) */\n  --table-row-focus: var(--color-accent-soft);\n  --button-border-width: var(--input-border-width);\n  --button-cancel-background-fill: linear-gradient(to bottom right, #8a3df6, #6629eb); /* Purple to darker shade of purple */\n  --button-cancel-background-fill-hover: linear-gradient(to bottom right, #8a3df6, #6629eb); /* Purple to darker shade of purple */\n  --button-cancel-border-color: #8a3df6; /* Purple color */\n  --button-cancel-border-color-hover: var(--button-cancel-border-color);\n  --button-cancel-text-color: white;\n  --button-cancel-text-color-hover: var(--button-cancel-text-color);\n  --button-primary-background-fill: linear-gradient(to bottom right, #8a3df6, #6629eb); /* Purple to darker shade of purple */\n  --button-primary-background-fill-hover: linear-gradient(to bottom right, #8a3df6, #401e99); /* Purple to even darker shade of purple */\n  --button-primary-border-color: #8a3df6; /* Purple color */\n  --button-primary-border-color-hover: var(--button-primary-border-color);\n  --button-primary-text-color: white;\n  --button-primary-text-color-hover: var(--button-primary-text-color);\n  --button-secondary-background-fill: linear-gradient(to bottom right, #866bd1, #1e0c25); /* Dark gray to darkest shade of gray */\n  --button-secondary-background-fill-hover: linear-gradient(to bottom right, #606060, #404040); /* Dark gray to darkest shade of gray */\n  --button-secondary-border-color: #606060; /* Dark gray color */\n  --button-secondary-border-color-hover: var(--button-secondary-border-color);\n  --button-secondary-text-color: white;\n  --button-secondary-text-color-hover: var(--button-secondary-text-color);\n  --secondary-50: #eff6ff;\n  --secondary-100: #dbeafe;\n  --secondary-200: #bfdbfe;\n  --secondary-300: #93c5fd;\n  --secondary-400: #60a5fa;\n  --secondary-500: #8a3df6; /* Purple color */\n  --secondary-600: #6629eb; /* Darker shade of purple */\n  --secondary-700: #1d4ed8;\n  --secondary-800: #1e40af;\n  --secondary-900: #1e3a8a;\n  --secondary-950: #1d3660;\n  --neutral-50: #f0f0f0;\n  --neutral-100: #e0e0e0;\n  --neutral-200: #d0d0d0;\n  --neutral-300: #b0b0b0;\n  --neutral-400: #909090;\n  --neutral-500: #707070;\n  --neutral-600: #606060;\n  --neutral-700: #404040;\n  --neutral-800: #333333;\n  --neutral-900: #111827;\n  --neutral-950: #0b0f19;\n  --radius-xxs: 0;\n  --radius-xs: 0;\n  --radius-md: 0;\n  --radius-xl: 0;\n  --radius-xxl: 0;\n  --font: 'Source Sans Pro', 'ui-sans-serif', 'system-ui', sans-serif, 'NotoSans';\n  --font-mono: 'IBM Plex Mono', 'ui-monospace', 'Consolas', monospace;\n  --body-text-size: var(--text-md);\n  --body-text-weight: 400;\n  --embed-radius: var(--radius-lg);\n  --color-accent: #8a3df6; /* Purple color */\n  --shadow-drop: 0;\n  --shadow-drop-lg: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n  --shadow-inset: rgba(0,0,0,0.05) 0px 2px 4px 0px inset;\n  --block-border-width: 1px;\n  --block-info-text-size: var(--text-sm);\n  --block-info-text-weight: 400;\n  --block-label-border-width: 1px;\n  --block-label-margin: 0;\n  --block-label-padding: var(--spacing-sm) var(--spacing-lg);\n  --block-label-radius: calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px) 0;\n  --block-label-right-radius: 0 calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px);\n  --block-label-text-size: var(--text-sm);\n  --block-label-text-weight: 400;\n  --block-padding: var(--spacing-xl) calc(var(--spacing-xl) + 2px);\n  --block-radius: var(--radius-lg);\n  --block-shadow: var(--shadow-drop);\n  --block-title-background-fill: none;\n  --block-title-border-color: none;\n  --block-title-border-width: 0px;\n  --block-title-padding: 0;\n  --block-title-radius: none;\n  --block-title-text-size: var(--text-md);\n  --block-title-text-weight: 400;\n  --container-radius: var(--radius-lg);\n  --form-gap-width: 1px;\n  --layout-gap: var(--spacing-xxl);\n  --panel-border-width: 0;\n  --section-header-text-size: var(--text-md);\n  --section-header-text-weight: 400;\n  --checkbox-border-radius: var(--radius-sm);\n  --checkbox-label-gap: 2px;\n  --checkbox-label-padding: var(--spacing-md);\n  --checkbox-label-shadow: var(--shadow-drop);\n  --checkbox-label-text-size: var(--text-md);\n  --checkbox-label-text-weight: 400;\n  --checkbox-check: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e\");\n  --radio-circle: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e\");\n  --checkbox-shadow: var(--input-shadow);\n  --error-border-width: 1px;\n  --input-border-width: 0;\n  --input-radius: var(--radius-lg);\n  --input-text-size: var(--text-md);\n  --input-text-weight: 400;\n  --loader-color: var(--color-accent);\n  --prose-text-size: var(--text-md);\n  --prose-text-weight: 400;\n  --prose-header-text-weight: 600;\n  --slider-color: ;\n  --table-radius: var(--radius-lg);\n  --button-large-padding: 2px 6px;\n  --button-large-radius: var(--radius-lg);\n  --button-large-text-size: var(--text-lg);\n  --button-large-text-weight: 400;\n  --button-shadow: 4px 4px 4px 0px #333333;\n  --button-shadow-active: 1px 1px 4px 0px #555555;\n  --button-shadow-hover: 1px 1px 4px 0px #555555;\n  --button-small-padding: var(--spacing-sm) calc(2 * var(--spacing-sm));\n  --button-small-radius: var(--radius-lg);\n  --button-small-text-size: var(--text-md);\n  --button-small-text-weight: 400;\n  --button-transition: none;\n  --size-9: 64px;\n  --size-14: 64px;\n}\n"
  },
  {
    "path": "javascript/aspectRatioOverlay.js",
    "content": "let currentWidth = null;\nlet currentHeight = null;\nlet arFrameTimeout = null;\n\nfunction dimensionChange(e, is_width, is_height) {\n  if (is_width) currentWidth = e.target.value * 1.0;\n  if (is_height) currentHeight = e.target.value * 1.0;\n  const inImg2img = gradioApp().querySelector('#tab_img2img').style.display === 'block';\n  if (!inImg2img) return;\n  let targetElement = null;\n  const tabIndex = get_tab_index('mode_img2img');\n  if (tabIndex === 0) targetElement = gradioApp().querySelector('#img2img_image div[data-testid=image] img'); // img2img\n  else if (tabIndex === 1) targetElement = gradioApp().querySelector('#img2img_sketch div[data-testid=image] img'); // Sketch\n  else if (tabIndex === 2) targetElement = gradioApp().querySelector('#img2maskimg div[data-testid=image] img'); // Inpaint\n  else if (tabIndex === 3) targetElement = gradioApp().querySelector('#composite div[data-testid=image] img'); // Inpaint sketch\n\n  if (targetElement) {\n    let arPreviewRect = gradioApp().querySelector('#imageARPreview');\n    if (!arPreviewRect) {\n      arPreviewRect = document.createElement('div');\n      arPreviewRect.id = 'imageARPreview';\n      gradioApp().appendChild(arPreviewRect);\n    }\n\n    const viewportOffset = targetElement.getBoundingClientRect();\n    const viewportscale = Math.min(targetElement.clientWidth / targetElement.naturalWidth, targetElement.clientHeight / targetElement.naturalHeight);\n    const scaledx = targetElement.naturalWidth * viewportscale;\n    const scaledy = targetElement.naturalHeight * viewportscale;\n    const cleintRectTop = (viewportOffset.top + window.scrollY);\n    const cleintRectLeft = (viewportOffset.left + window.scrollX);\n    const cleintRectCentreY = cleintRectTop + (targetElement.clientHeight / 2);\n    const cleintRectCentreX = cleintRectLeft + (targetElement.clientWidth / 2);\n    const arscale = Math.min(scaledx / currentWidth, scaledy / currentHeight);\n    const arscaledx = currentWidth * arscale;\n    const arscaledy = currentHeight * arscale;\n    const arRectTop = cleintRectCentreY - (arscaledy / 2);\n    const arRectLeft = cleintRectCentreX - (arscaledx / 2);\n    const arRectWidth = arscaledx;\n    const arRectHeight = arscaledy;\n    arPreviewRect.style.top = `${arRectTop}px`;\n    arPreviewRect.style.left = `${arRectLeft}px`;\n    arPreviewRect.style.width = `${arRectWidth}px`;\n    arPreviewRect.style.height = `${arRectHeight}px`;\n\n    if (arFrameTimeout) clearTimeout(arFrameTimeout);\n    arFrameTimeout = setTimeout(() => { arPreviewRect.style.display = 'none'; }, 2000);\n    arPreviewRect.style.display = 'block';\n  }\n}\n\nonAfterUiUpdate(() => {\n  const arPreviewRect = gradioApp().querySelector('#imageARPreview');\n  if (arPreviewRect) arPreviewRect.style.display = 'none';\n  const tabImg2img = gradioApp().querySelector('#tab_img2img');\n  if (tabImg2img) {\n    const inImg2img = tabImg2img.style.display === 'block';\n    if (inImg2img) {\n      const inputs = gradioApp().querySelectorAll('input');\n      inputs.forEach((e) => {\n        const is_width = e.parentElement.id === 'img2img_width';\n        const is_height = e.parentElement.id === 'img2img_height';\n        if ((is_width || is_height) && !e.classList.contains('scrollwatch')) {\n          e.addEventListener('input', (evt) => { dimensionChange(evt, is_width, is_height); });\n          e.classList.add('scrollwatch');\n        }\n        if (is_width) currentWidth = e.value * 1.0;\n        if (is_height) currentHeight = e.value * 1.0;\n      });\n    }\n  }\n});\n"
  },
  {
    "path": "javascript/authWrap.js",
    "content": "let user;\nlet token;\n\nasync function getToken() {\n  if (token === undefined || user === undefined) {\n    const res = await fetch(`${window.subpath}/token`);\n    if (res.ok) {\n      const data = await res.json();\n      user = data.user;\n      token = data.token;\n      log('getToken', user);\n    }\n  }\n  return { user, token };\n}\n\nasync function authFetch(url, options = {}) {\n  await getToken();\n  if (user && token) {\n    if (!options.headers) options.headers = {};\n    const encoded = btoa(`${user}:${token}`);\n    options.headers.Authorization = `Basic ${encoded}`;\n  }\n  let res;\n  try {\n    res = await fetch(url, options);\n    if (!res.ok) error('fetch', { status: res.status, url, user, token });\n  } catch (err) {\n    error('fetch', { status: res.status, url, user, token, error: err });\n  }\n  return res;\n}\n"
  },
  {
    "path": "javascript/base.css",
    "content": "@font-face { font-family: 'NotoSans'; font-display: swap; font-style: normal; font-weight: 100; src: local('NotoSansNerd'), url('notosans-nerdfont-regular.ttf') }\n\n/* toolbutton */\n.gradio-button.tool { max-width: min-content; min-width: min-content !important; align-self: end; font-size: 1.4em; color: var(--body-text-color) !important; }\n\n/* token counters */\n.token-counter { position: absolute; display: inline-block; right: 0; min-width: 0 !important; width: auto; z-index: 100; top: 0; }\n.token-counter span { background: var(--input-background-fill) !important; box-shadow: 0 0 0.0 0.3em rgba(192,192,192,0.15), inset 0 0 0.6em rgba(192,192,192,0.075); border: 2px solid rgba(192,192,192,0.4) !important; }\n.token-counter.error span{ box-shadow: 0 0 0.0 0.3em rgba(255,0,0,0.15), inset 0 0 0.6em rgba(255,0,0,0.075); border: 2px solid rgba(255,0,0,0.4) !important; }\n.token-counter div { display: inline; }\n.token-counter span { padding: 0.1em 0.75em; }\n\n/* tooltips and statuses */\n.infotext { overflow-wrap: break-word; }\n.tooltip { display: block; position: fixed; top: 1em; right: 1em; padding: 0.5em; background: var(--input-background-fill); color: var(--body-text-color); border: 1pt solid var(--button-primary-border-color);\n  width: 22em; min-height: 1.3em; font-size: 0.8em; transition: opacity 0.2s ease-in; pointer-events: none; opacity: 0; z-index: 999; }\n.tooltip-show { opacity: 0.9; }\n.tooltip-left { right: unset; left: 1em; }\n.toolbutton-selected { background: var(--background-fill-primary) !important; }\n.input-accordion-checkbox { display: none; }\n\n/* live preview */\n.progressDiv { position: relative; height: 20px; background: #b4c0cc; margin-bottom: -3px; }\n.dark .progressDiv { background: #424c5b; }\n.progressDiv .progress { width: 0%; height: 20px; background: #0060df; color: white; font-weight: bold; line-height: 20px; padding: 0 8px 0 0; text-align: right; overflow: visible; white-space: nowrap; padding: 0 0.5em; }\n.livePreview { position: absolute; z-index: 50; background-color: transparent; width: -moz-available; width: -webkit-fill-available; }\n.livePreview img { position: absolute; object-fit: contain; width: 100%; height: 100%; }\n.popup-metadata { color: white; background: #0000; display: inline-block; white-space: pre-wrap; font-size: 0.75em; }\n\n/* fullpage image viewer */\n#lightboxModal { display: none; position: fixed; z-index: 1001; left: 0; top: 0; width: 100%; height: 100%; overflow: auto; background-color: rgba(20, 20, 20, 0.75); backdrop-filter: blur(6px);\n  user-select: none; -webkit-user-select: none; flex-direction: row; font-family: 'NotoSans'; }\n.modalControls { display: flex; justify-content: space-evenly; background-color: transparent; position: absolute; width: 99%; z-index: 1; }\n.modalControls:hover { background-color: #50505050; }\n.modalControls span { color: white; font-size: 2em; font-weight: bold; cursor: pointer; filter: grayscale(100%); }\n.modalControls span:hover, .modalControls span:focus { color: var(--highlight-color); filter: none; }\n.lightboxModalPreviewZone { display: flex; width: 100%; height: 100%; }\n.lightboxModalPreviewZone:focus-visible { outline: none; }\n.lightboxModalPreviewZone > img { display: block; margin: auto; width: auto; }\n.lightboxModalPreviewZone > img.modalImageFullscreen { object-fit: contain;  height: 100%; width: 100%; min-height: 0; background: transparent; }\n.modalPrev, .modalNext { cursor: pointer; position: relative; z-index: 1; top: 0; width: auto; height: 100vh; line-height: 100vh; text-align: center; padding: 16px;\n  margin-top: -50px; color: white; font-weight: bold; font-size: 20px; transition: 0.6s ease; user-select: none; -webkit-user-select: none; }\n.modalNext { right: 0; }\n.modalPrev:hover, .modalNext:hover { background-color: rgba(0, 0, 0, 0.8); }\n#imageARPreview { position: absolute; top: 0px; left: 0px; border: 2px solid red; background: rgba(255, 0, 0, 0.3); z-index: 900; pointer-events: none; display: none; }\n\ntable.settings-value-table { background: white; border-collapse: collapse; margin: 1em; border: var(--spacing-sm) solid white; }\ntable.settings-value-table td { padding: 0.4em; border: 1px solid #ccc; max-width: 36em; }\n\n/* context menu (ie for the generate button) */\n#context-menu { z-index: 9999; position: absolute; display: block; padding: var(--spacing-md); border: 2px solid var(--highlight-color); background: var(--background-fill-primary); color: var(--body-text-color); }\n.context-menu-items { list-style: none; margin: 0; padding: 0; }\n.context-menu-items a { display: block; padding: var(--spacing-md); cursor: pointer; font-weight: normal; }\n.context-menu-items a:hover { background: var(--highlight-color) }\n\n/* log monitor */\n.log-monitor { display: none; justify-content: unset !important; overflow: hidden; padding: 0; margin-top: auto; font-family: monospace; font-size: 0.85em; }\n.log-monitor td, .log-monitor th { padding-left: 1em; }\n\n/* changelog */\n.md h2 { background-color: var(--background-fill-primary); padding: 0.5em; }\n.md ul { list-style-type: square !important; text-indent: 1em; margin-left: 4em; }\n.md li { list-style-position: outside !important; text-indent: 0; }\n.md p { margin-left: 2em; }\n\n/* extensions */\n#tab_extensions table, #tab_config table { border-collapse: collapse; }\n#tab_extensions table td, #tab_extensions table th, #tab_config table td, #tab_config table th { border: 1px solid #ccc; padding: 0.25em 0.5em; }\n#tab_extensions table input[type=\"checkbox\"] { margin-right: 0.5em; appearance: checkbox; }\n#tab_extensions button { max-width: 16em; }\n#tab_extensions input[disabled=\"disabled\"] { opacity: 0.5; }\n.extension-tag { font-weight: bold; font-size: 95%; }\n.extension-button { font-size: 95% !important; width: 6em; }\n#extensions .name { font-size: 1.1rem }\n#extensions .type { opacity: 0.5; font-size: 90%; text-align: center; }\n#extensions .version { opacity: 0.7; }\n#extensions .info { margin: 0; }\n#extensions .date { opacity: 0.85; font-size: 90%; }\n\n/* networks */\n.extra-networks > div { margin: 0; border-bottom: none !important; }\n.extra-networks .second-line { display: flex; width: -moz-available; width: -webkit-fill-available; gap: 0.3em; box-shadow: var(--input-shadow); margin-bottom: 2px; }\n.extra-networks .search { flex: 1; }\n.extra-networks .description { flex: 3; }\n.extra-networks .tab-nav > button { margin-right: 0; height: 24px; padding: 2px 4px 2px 4px; }\n.extra-networks .buttons { position: absolute; right: 0; margin: -4px; background: var(--background-color); }\n.extra-networks .buttons>button { height: 1.2em; margin-top: var(--spacing-md); }\n.extra-networks .custom-button { width: 120px; width: 100%; background: none; justify-content: left; text-align: left; padding: 2px 8px 2px 16px; text-indent: -8px; box-shadow: none; line-break: auto; }\n.extra-networks .custom-button:hover { background: var(--button-primary-background-fill) }\n.extra-networks-tab { padding: 0 !important; }\n.extra-network-subdirs { background: var(--input-background-fill); overflow-x: hidden; overflow-y: auto; min-width: max(15%, 120px); padding-top: 0.5em; }\n.extra-networks-page { display: flex }\n.extra-network-cards { display: flex; flex-wrap: wrap; overflow-y: auto; overflow-x: hidden; align-content: flex-start; width: -moz-available; width: -webkit-fill-available; }\n.extra-network-cards .card { height: fit-content; margin: 0 0 0.5em 0.5em; position: relative; scroll-snap-align: start; scroll-margin-top: 0; }\n.extra-network-cards .card .overlay { position: absolute; bottom: 0; padding: 0.2em; z-index: 10; width: 100%; background: none; }\n.extra-network-cards .card .overlay .name { text-shadow: 1px 1px black; color: white; overflow-wrap: break-word; }\n.extra-network-cards .card .preview { box-shadow: var(--button-shadow); min-height: 30px; }\n.extra-network-cards .card:hover .overlay { background: rgba(0, 0, 0, 0.40); }\n.extra-network-cards .card:hover .preview { box-shadow: none; filter: grayscale(100%); }\n.extra-network-cards .card:hover .overlay { background: rgba(0, 0, 0, 0.40); }\n.extra-network-cards .card .tags { margin: 4px; display: none; overflow-wrap: anywhere; }\n.extra-network-cards .card .tag { padding: 2px; margin: 2px; background: var(--neutral-700); cursor: pointer; display: inline-block; }\n.extra-network-cards .card .actions > span { padding: 4px; }\n.extra-network-cards .card:hover .actions { display: block; }\n.extra-network-cards .card:hover .tags { display: block; }\n.extra-network-cards .card .actions { font-size: 3em; display: none; text-align-last: right; cursor: pointer; font-variant: unicase; position: absolute; z-index: 100; right: 0; height: 0.7em; width: 100%; background: rgba(0, 0, 0, 0.40); }\n#txt2img_description, #img2img_description, #control_description, #video_description { max-height: 63px; overflow-y: auto !important; }\n#txt2img_description>label>textarea, #img2img_description>label>textarea, #control_description>label>textarea, #video_description>label>textarea { font-size: 0.9em }\n\n.extra-details { position: fixed; bottom: 50%; left: 50%; transform: translate(-50%, 50%); padding: 0.8em; border: var(--block-border-width) solid var(--highlight-color) !important; z-index: 100; box-shadow: var(--button-shadow); }\n.extra-details > div { overflow-y: auto; min-height: 40vh; max-height: 80vh; align-self: flex-start; }\n.extra-details td:first-child { font-weight: bold; vertical-align: top; }\n.extra-details td .gradio-image { max-height: 70vh; }\n\n/* custom component */\n.folder-selector textarea { height: 2em !important; padding: 6px !important; }\n.gpu { position: fixed; bottom: 10px; right: 10px; background: var(--background-fill-primary); border: 1px solid var(--button-primary-border-color); padding: 6px; color: var(--button-primary-text-color);\n  font-size: 0.7em; z-index: 50; font-family: monospace; display: none; }\n\n/* image browser */\n#tab-browser-folders { width: max-content; }\n#tab-browser-files { display: block; overflow-x: hidden !important; overflow-y: auto !important; height: 75vh; }\n#tab-browser-image { height: 100%; }\n#tab-browser-search { padding: 0; }\n#tab-browser-status { align-content: center; text-align: right; background: var(--input-background-fill); padding-right: 1em; margin-left: -1em; }\ndiv:has(>#tab-browser-folders) { flex-grow: 0 !important; background-color: var(--input-background-fill); min-width: max-content !important; }\n.browser-separator { background-color: var(--input-background-fill); font-size: larger; padding: 0.5em; display: block !important; }\n\n/* loader */\n.splash { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; z-index: 1000; display: block; text-align: center; }\n.motd { margin-top: 2em; color: var(--body-text-color-subdued); font-family: monospace; font-variant: all-petite-caps; font-size: 1.2em; }\n.splash-img {   margin: 10% auto 0 auto; width: 512px; background-repeat: no-repeat; height: 512px; animation: hue 5s infinite alternate; max-width: 80vw; background-size: contain; }\n.loading { color: white; position: absolute; top: 20%; left: 50%; transform: translateX(-50%); }\n.loader { width: 300px; height: 300px; border: var(--spacing-md) solid transparent; border-radius: 50%; border-top: var(--spacing-md) solid var(--primary-600); animation: spin 4s linear infinite; position: relative; }\n.loader::before, .loader::after { content: \"\"; position: absolute; top: 6px; bottom: 6px; left: 6px; right: 6px; border-radius: 50%; border: var(--spacing-md) solid transparent; }\n.loader::before { border-top-color: var(--primary-900); animation: 3s spin linear infinite; }\n.loader::after { border-top-color: var(--primary-300); animation: spin 1.5s linear infinite; }\n@keyframes move { from { background-position-x: 0, -40px; } to { background-position-x: 0, 40px; } }\n@keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }\n@keyframes hue { from { filter: hue-rotate(0deg) } to { filter: hue-rotate(360deg) } }\n"
  },
  {
    "path": "javascript/black-gray.css",
    "content": "/* generic html tags */\n@font-face { font-family: 'NotoSans'; font-display: swap; font-style: normal; font-weight: 100; src: local('NotoSansNerd'), url('notosans-nerdfont-regular.ttf') }\n:root, .light, .dark {\n  --font: 'NotoSans';\n  --font-mono: 'ui-monospace', 'Consolas', monospace;\n  --font-size: 16px;\n  --primary-50: #f0f0f0;\n  --primary-100: #e0e0e0;\n  --primary-200: #d0d0d0;\n  --primary-300: #b0b0b0;\n  --primary-400: #909090;\n  --primary-500: #707070;\n  --primary-600: #606060;\n  --primary-700: #404040;\n  --primary-800: #303030;\n  --primary-900: #202020;\n  --primary-950: #101010;\n  --highlight-color: var(--primary-200);\n  --inactive-color: var(--primary--800);\n  --body-text-color: var(--primary-100);\n  --body-text-color-subdued: var(--primary-300);\n  --background-color: var(--primary-950);\n  --background-fill-primary: var(--primary-700);\n  --input-padding: 4px;\n  --input-background-fill: var(--primary-800);\n  --input-shadow: none;\n  --button-primary-background-fill: var(--primary-600);\n  --button-primary-background-fill-hover: var(--primary-800);\n  --button-secondary-background-fill: var(--neutral-600);\n  --button-secondary-background-fill-hover: var(--neutral-800);\n  --block-title-text-color: var(--neutral-300);\n  --radius-sm: 0;\n  --radius-lg: 0;\n  --line-xs: 0.5em;\n  --line-sm: 1.0em;\n  --line-md: 1.3em;\n  --line-lg: 1.5em;\n}\n\n:root { scrollbar-color: var(--highlight-color) var(--primary-800); }\nhtml { font-size: var(--font-size); font-family: var(--font); }\nbody, button, input, select, textarea { font-family: var(--font); }\nbutton { max-width: 400px; white-space: nowrap; }\nimg { background-color: var(--background-color); }\n\ninput[type=range] { height: var(--line-xs) !important; appearance: none !important; margin-top: 0 !important; min-width: max(4em, 100%) !important; width: 100% !important; background: transparent !important; }\ninput[type=range]::-webkit-slider-runnable-track { width: 100% !important; height: var(--line-xs) !important; cursor: pointer !important; background: var(--input-background-fill) !important; border: 0px solid var(--primary-900) !important; }\ninput[type=range]::-moz-range-track              { width: 100% !important; height: var(--line-xs) !important; cursor: pointer !important; background: var(--input-background-fill) !important; border: 0px solid var(--primary-900) !important; }\ninput[type=range]::-webkit-slider-thumb { border: 0px solid var(--primary-950) !important; height: var(--line-sm) !important; width: var(--line-sm) !important; background: var(--highlight-color) !important; cursor: pointer !important; appearance: none !important; margin-top: -4px; border-radius: 4px; }\ninput[type=range]::-moz-range-thumb     { border: 0px solid var(--primary-950) !important; height: var(--line-sm) !important; width: var(--line-sm) !important; background: var(--highlight-color) !important; cursor: pointer !important; appearance: none !important; margin-top: -4px; border-radius: 4px; }\n\n::-webkit-scrollbar { width: 12px; height: 12px; }\n::-webkit-scrollbar-track { background: var(--primary-800); }\n::-webkit-scrollbar-thumb { background-color: var(--highlight-color); border-width: 0; }\ndiv.form { border-width: 0; box-shadow: none; background: transparent; overflow: visible; }\n\n/* gradio style classes */\nfieldset .gr-block.gr-box, label.block span { padding: 0; margin-top: -4px; }\n.border-2 { border-width: 0; }\n.border-b-2 { border-bottom-width: 2px; border-color: var(--highlight-color) !important; padding-bottom: 2px; margin-bottom: 8px; }\n.bg-white { color: lightyellow; background-color: var(--inactive-color); }\n.gr-box { border-radius: var(--radius-sm) !important; background-color: var(--primary-950) !important; box-shadow: none; border-width: 0; padding: 4px; margin: 12px 0px 12px 0px }\n.gr-button { font-weight: normal; box-shadow: none; font-size: 0.8rem; min-width: 32px; min-height: 32px; padding: 3px; margin: 3px; }\n.gr-check-radio { background-color: var(--inactive-color); border-width: 0; border-radius: var(--radius-lg); box-shadow: none; }\n.gr-check-radio:checked { background-color: var(--highlight-color); }\n.gr-compact { background-color: var(--background-color); }\n.gr-form { border-width: 0; }\n.gr-input { background-color: var(--primary-300) !important; padding: 4px; margin: 4px; }\n.gr-input-label { color: lightyellow; border-width: 0; background: transparent; padding: 2px !important; }\n.gr-panel { background-color: var(--background-color); }\n.eta-bar { display: none !important }\nsvg.feather.feather-image, .feather .feather-image { display: none }\n.gap-2 { padding-top: 8px; }\n.gr-box > div > div > input.gr-text-input { right: 0; width: 4em; padding: 0; top: -12px; border: none; max-height: 20px; }\n.output-html { line-height: 1.2rem; overflow-x: hidden; }\n.output-html > div { margin-bottom: 8px; }\n.overflow-hidden .flex .flex-col .relative col .gap-4 { min-width: var(--left-column); max-width: var(--left-column); } /* this is a problematic one */\n.p-2 { padding: 0; }\n.px-4 { padding-lefT: 1rem; padding-right: 1rem; }\n.py-6 { padding-bottom: 0; }\n.tabs { background-color: var(--background-color); }\n.block.token-counter span { background-color: var(--input-background-fill) !important; border: none !important; font-size: 0.7rem; }\n.tab-nav { zoom: 110%; margin-top: 10px; margin-bottom: 10px; border-bottom: 2px solid var(--highlight-color) !important; padding-bottom: 2px; }\n.label-wrap { margin: 8px 0px 4px 0px; }\n.gradio-button.tool { border: none; background: none; box-shadow: none; filter: hue-rotate(340deg) saturate(0.5); }\n#tab_extensions table td, #tab_extensions table th, #tab_config table td, #tab_config table th { border: none; }\n#tab_extensions table tr:hover, #tab_config table tr:hover { background-color: var(--neutral-500) !important; }\n#tab_extensions table, #tab_config table { width: 96vw }\n#tab_extensions table thead, #tab_config table thead { background-color: var(--neutral-700); }\n#tab_extensions table, #tab_config table { background-color: var(--primary-900); }\n\n/* automatic style classes */\n.progressDiv { border-radius: var(--radius-sm) !important; position: fixed; top: 44px; right: 26px; max-width: 262px; height: 48px; z-index: 99; }\n.progressDiv .progress { border-radius: var(--radius-lg) !important; background: var(--highlight-color); line-height: 3rem; height: 48px; }\n.gallery-item { box-shadow: none !important; }\n.performance { color: #888; }\n.extra-networks { border-left: 2px solid var(--highlight-color) !important; padding-left: 4px; }\n.image-buttons { gap: 10px !important; justify-content: center; }\n.image-buttons > button { max-width: 160px; }\n.tooltip { background: var(--primary-300); color: black; border: none; border-radius: var(--radius-lg) }\n#system_row > button, #settings_row > button, #config_row > button { max-width: 10em; }\n\n/* gradio elements overrides */\n#div.gradio-container { overflow-x: hidden; }\n#img2img_label_copy_to_img2img { font-weight: normal; }\n#img2img_settings { min-width: calc(2 * var(--left-column)); max-width: calc(2 * var(--left-column)); background-color: var(--primary-950); padding-top: 16px; }\n#interrogate, #deepbooru { margin: 0 0px 10px 0px; max-width: 80px; max-height: 80px; font-weight: normal; font-size: 0.95em; }\n#quicksettings .gr-button-tool { font-size: 1.6rem; box-shadow: none; margin-left: -20px; margin-top: -2px; height: 2.4em; }\n#footer, #style_pos_col, #style_neg_col, #roll_col, #extras_upscaler_2, #extras_upscaler_2_visibility, #txt2img_seed_resize_from_w, #txt2img_seed_resize_from_h { display: none; }\n#save-animation { border-radius: var(--radius-sm) !important; margin-bottom: 16px; background-color: var(--primary-950); }\n#script_list { padding: 4px; margin-top: 16px; margin-bottom: 8px; }\n#settings > div.flex-wrap { width: 15em; }\n#settings_search { margin-top: 1em; margin-left: 1em; }\n#settings_search textarea { padding: 0.5em; height: 2.2em !important; }\n#txt2img_cfg_scale { min-width: 200px; }\n#txt2img_checkboxes, #img2img_checkboxes, #control_checkboxes { background-color: transparent; margin-bottom: 0.2em; }\ntextarea[rows=\"1\"] { height: 33px !important; width: 99% !important; padding: 8px !important; }\n#extras_upscale { margin-top: 10px }\n#txt2img_progress_row > div { min-width: var(--left-column); max-width: var(--left-column); }\n#txt2img_settings { min-width: var(--left-column); max-width: var(--left-column); background-color: var(--primary-950); padding-top: 16px; }\n#pnginfo_html2_info { margin-top: -18px; background-color: var(--input-background-fill); padding: var(--input-padding) }\n#txt2img_styles_row, #img2img_styles_row, #control_styles_row { margin-top: -6px; }\n\n/* based on gradio built-in dark theme */\n:root, .light, .dark {\n  --body-background-fill: var(--background-color);\n  --color-accent-soft: var(--neutral-700);\n  --background-fill-secondary: none;\n  --border-color-accent: var(--background-color);\n  --border-color-primary: var(--background-color);\n  --link-text-color-active: var(--primary-500);\n  --link-text-color: var(--secondary-500);\n  --link-text-color-hover: var(--secondary-400);\n  --link-text-color-visited: var(--secondary-600);\n  --shadow-spread: 1px;\n  --block-background-fill: None;\n  --block-border-color: var(--border-color-primary);\n  --block_border_width: None;\n  --block-info-text-color: var(--body-text-color-subdued);\n  --block-label-background-fill: var(--background-fill-secondary);\n  --block-label-border-color: var(--border-color-primary);\n  --block_label_border_width: None;\n  --block-label-text-color: var(--neutral-200);\n  --block_shadow: None;\n  --block_title_background_fill: None;\n  --block_title_border_color: None;\n  --block_title_border_width: None;\n  --panel-background-fill: var(--background-fill-secondary);\n  --panel-border-color: var(--border-color-primary);\n  --panel_border_width: None;\n  --checkbox-background-color: var(--neutral-500);\n  --checkbox-background-color-focus: var(--checkbox-background-color);\n  --checkbox-background-color-hover: var(--checkbox-background-color);\n  --checkbox-background-color-selected: var(--primary-500);\n  --checkbox-border-color: transparent;\n  --checkbox-border-color-focus: var(--secondary-500);\n  --checkbox-border-color-hover: var(--neutral-600);\n  --checkbox-border-color-selected: var(--primary-600);\n  --checkbox-border-width: var(--input-border-width);\n  --checkbox-label-background-fill: None;\n  --checkbox-label-background-fill-hover: None;\n  --checkbox-label-background-fill-selected: var(--checkbox-label-background-fill);\n  --checkbox-label-border-color: var(--border-color-primary);\n  --checkbox-label-border-color-hover: var(--checkbox-label-border-color);\n  --checkbox-label-border-width: var(--input-border-width);\n  --checkbox-label-text-color: var(--body-text-color);\n  --checkbox-label-text-color-selected: var(--checkbox-label-text-color);\n  --error-background-fill: var(--background-fill-primary);\n  --error-border-color: var(--border-color-primary);\n  --error_border_width: None;\n  --error-text-color: #ef4444;\n  --input-background-fill-focus: var(--secondary-600);\n  --input-background-fill-hover: var(--input-background-fill);\n  --input-border-color: var(--border-color-primary);\n  --input-border-color-focus: var(--neutral-700);\n  --input-border-color-hover: var(--input-border-color);\n  --input_border_width: None;\n  --input-placeholder-color: var(--neutral-500);\n  --input-shadow-focus: none;\n  --loader_color: None;\n  --slider_color: None;\n  --stat-background-fill: var(--primary-500);\n  --table-border-color: var(--neutral-700);\n  --table-even-background-fill: var(--primary-900);\n  --table-odd-background-fill: #303030;\n  --table-row-focus: var(--color-accent-soft);\n  --button-border-width: var(--input-border-width);\n  --button-cancel-background-fill: #b91c1c;\n  --button-cancel-background-fill-hover: #dc2626;\n  --button-cancel-border-color: #dc2626;\n  --button-cancel-border-color-hover: var(--button-cancel-border-color);\n  --button-cancel-text-color: var(--primary-100);\n  --button-cancel-text-color-hover: var(--button-cancel-text-color);\n  --button-primary-border-color: var(--primary-500);\n  --button-primary-border-color-hover: var(--button-primary-border-color);\n  --button-primary-text-color: var(--primary-100);\n  --button-primary-text-color-hover: var(--button-primary-text-color);\n  --button-secondary-border-color: var(--neutral-600);\n  --button-secondary-border-color-hover: var(--button-secondary-border-color);\n  --button-secondary-text-color-hover: var(--button-secondary-text-color);\n  --secondary-50: #eff6ff;\n  --secondary-100: #dbeafe;\n  --secondary-200: #bfdbfe;\n  --secondary-300: #93c5fd;\n  --secondary-400: #60a5fa;\n  --secondary-500: #3b82f6;\n  --secondary-600: #2563eb;\n  --secondary-700: #1d4ed8;\n  --secondary-800: #1e40af;\n  --secondary-900: #1e3a8a;\n  --secondary-950: #1d3660;\n  --neutral-50: #f0f0f0;\n  --neutral-100: #e0e0e0;\n  --neutral-200: #d0d0d0;\n  --neutral-300: #b0b0b0;\n  --neutral-400: #909090;\n  --neutral-500: #707070;\n  --neutral-600: #606060;\n  --neutral-700: #404040;\n  --neutral-800: #303030;\n  --neutral-900: #111827;\n  --neutral-950: #0b0f19;\n  --radius-xxs: 0;\n  --radius-xs: 0;\n  --radius-md: 0;\n  --radius-xl: 0;\n  --radius-xxl: 0;\n  --body-text-size: var(--text-md);\n  --body-text-weight: 400;\n  --embed-radius: var(--radius-lg);\n  --color-accent: var(--primary-500);\n  --shadow-drop: 0;\n  --shadow-drop-lg: 0;\n  --shadow-inset: rgba(0,0,0,0.05) 0px 2px 4px 0px inset;\n  --block-border-width: 1px;\n  --block-info-text-size: var(--text-sm);\n  --block-info-text-weight: 400;\n  --block-label-border-width: 1px;\n  --block-label-margin: 0;\n  --block-label-padding: var(--spacing-sm) var(--spacing-lg);\n  --block-label-radius: calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px) 0;\n  --block-label-right-radius: 0 calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px);\n  --block-label-text-size: var(--text-sm);\n  --block-label-text-weight: 400;\n  --block-padding: var(--spacing-xl) calc(var(--spacing-xl) + 2px);\n  --block-radius: var(--radius-lg);\n  --block-shadow: var(--shadow-drop);\n  --block-title-background-fill: none;\n  --block-title-border-color: none;\n  --block-title-border-width: 0px;\n  --block-title-padding: 0;\n  --block-title-radius: none;\n  --block-title-text-size: var(--text-md);\n  --block-title-text-weight: 400;\n  --container-radius: var(--radius-lg);\n  --form-gap-width: 1px;\n  --layout-gap: var(--spacing-xxl);\n  --panel-border-width: 0;\n  --section-header-text-size: var(--text-md);\n  --section-header-text-weight: 400;\n  --checkbox-border-radius: var(--radius-sm);\n  --checkbox-label-gap: 2px;\n  --checkbox-label-padding: var(--spacing-md);\n  --checkbox-label-shadow: var(--shadow-drop);\n  --checkbox-label-text-size: var(--text-md);\n  --checkbox-label-text-weight: 400;\n  --checkbox-check: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e\");\n  --radio-circle: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e\");\n  --checkbox-shadow: var(--input-shadow);\n  --error-border-width: 1px;\n  --input-border-width: 0;\n  --input-radius: var(--radius-lg);\n  --input-text-size: var(--text-md);\n  --input-text-weight: 400;\n  --loader-color: var(--color-accent);\n  --prose-text-size: var(--text-md);\n  --prose-text-weight: 400;\n  --prose-header-text-weight: 400;\n  --slider-color: ;\n  --table-radius: var(--radius-lg);\n  --button-large-padding: 2px 6px;\n  --button-large-radius: var(--radius-lg);\n  --button-large-text-size: var(--text-lg);\n  --button-large-text-weight: 400;\n  --button-shadow: none;\n  --button-shadow-active: none;\n  --button-shadow-hover: none;\n  --button-small-padding: var(--spacing-sm) calc(2 * var(--spacing-sm));\n  --button-small-radius: var(--radius-lg);\n  --button-small-text-size: var(--text-md);\n  --button-small-text-weight: 400;\n  --button-transition: none;\n  --size-9: 64px;\n  --size-14: 64px;\n}\n"
  },
  {
    "path": "javascript/black-orange.css",
    "content": "/* generic html tags */\n@font-face { font-family: 'NotoSans'; font-display: swap; font-style: normal; font-weight: 100; src: local('NotoSansNerd'), url('notosans-nerdfont-regular.ttf') }\n:root, .light, .dark {\n  --font: 'NotoSans';\n  --font-mono: 'ui-monospace', 'Consolas', monospace;\n  --font-size: 16px;\n  --highlight-color: #ce6400;\n  --inactive-color: #4e1400;\n  --background-color: #000000;\n  --primary-50: #fff7ed;\n  --primary-100: #ffedd5;\n  --primary-200: #fed7aa;\n  --primary-300: #fdba74;\n  --primary-400: #fb923c;\n  --primary-500: #f97316;\n  --primary-600: #ea580c;\n  --primary-700: #c2410c;\n  --primary-800: #9a3412;\n  --primary-900: #7c2d12;\n  --primary-950: #6c2e12;\n  --highlight-color: var(--primary-200);\n  --inactive-color: var(--primary--800);\n  --body-text-color: var(--neutral-100);\n  --body-text-color-subdued: var(--neutral-300);\n  --background-color: #000000;\n  --background-fill-primary: var(--neutral-700);\n  --input-padding: 4px;\n  --input-background-fill: var(--neutral-800);\n  --input-shadow: 2px 2px 2px 2px var(--background-color);\n  --button-secondary-text-color: white;\n  --button-secondary-background-fill: linear-gradient(to bottom right, var(--neutral-400), var(--neutral-700));\n  --button-secondary-background-fill-hover: linear-gradient(to bottom right, var(--neutral-700), var(--neutral-400));\n  --block-title-text-color: var(--neutral-300);\n  --radius-sm: 2px;\n  --radius-lg: 4px;\n  --spacing-md: 4px;\n  --spacing-xxl: 6px;\n  --line-sm: 1.2em;\n  --line-md: 1.4em;\n}\n\nhtml { font-size: var(--font-size); }\nbody, button, input, select, textarea { font-family: var(--font);}\nbutton { max-width: 400px; }\nimg { background-color: var(--background-color); }\ninput[type=checkbox] { background-color: transparent !important; }\ninput[type=range] { height: var(--line-sm) !important; appearance: none !important; margin-top: 0 !important; min-width: 160px !important;\n  background-color: var(--background-color) !important; width: 100% !important; background: transparent !important; }\ninput[type=range]::-webkit-slider-runnable-track { width: 100% !important; height: var(--line-sm) !important; cursor: pointer !important; box-shadow: 2px 2px 3px #111111 !important;\n  background: var(--input-background-fill) !important; border-radius: var(--radius-lg) !important; border: 0px solid #222222 !important; }\ninput[type=range]::-moz-range-track { width: 100% !important; height: var(--line-sm) !important; cursor: pointer !important; box-shadow: 2px 2px 3px #111111 !important; background:\n  var(--input-background-fill) !important; border-radius: var(--radius-lg) !important; border: 0px solid #222222 !important; }\ninput[type=range]::-webkit-slider-thumb { box-shadow: 2px 2px 3px #111111 !important; border: 0px solid #000000 !important; height: var(--line-sm) !important; width: var(--line-sm) !important;\n  border-radius: var(--radius-lg) !important; background: var(--highlight-color) !important; cursor: pointer !important; appearance: none !important; margin-top: 0px !important; }\ninput[type=range]::-moz-range-thumb { box-shadow: 2px 2px 3px #111111 !important; border: 0px solid #000000 !important; height: var(--line-sm) !important; width: var(--line-sm) !important;\n  border-radius: var(--radius-lg) !important; background: var(--highlight-color) !important; cursor: pointer !important; appearance: none !important; margin-top: 0px !important; }\n:root { scrollbar-color: var(--highlight-color) #333333; }\n::-webkit-scrollbar { width: 12px; height: 12px; }\n::-webkit-scrollbar-track { background: #333333; }\n::-webkit-scrollbar-thumb { background-color: var(--highlight-color); border-radius: var(--radius-lg); border-width: 0; box-shadow: 2px 2px 3px #111111; }\ndiv.form { border-width: 0; box-shadow: none; background: transparent; overflow: visible; margin-bottom: 6px; }\ndiv.compact { gap: 1em; }\n\n/* gradio style classes */\nfieldset .gr-block.gr-box, label.block span { padding: 0; margin-top: -4px; }\n.border-2 { border-width: 0; }\n.border-b-2 { border-bottom-width: 2px; border-color: var(--highlight-color) !important; padding-bottom: 2px; margin-bottom: 8px; }\n.bg-white { color: lightyellow; background-color: var(--inactive-color); }\n.gr-box { border-radius: var(--radius-sm) !important; background-color: #111111 !important; box-shadow: 2px 2px 3px #111111; border-width: 0; padding: 4px; margin: 12px 0px 12px 0px }\n.gr-button { font-weight: normal; box-shadow: 2px 2px 3px #111111; font-size: 0.8rem; min-width: 32px; min-height: 32px; padding: 3px; margin: 3px; }\n.gr-check-radio { background-color: var(--inactive-color); border-width: 0; border-radius: var(--radius-lg); box-shadow: 2px 2px 3px #111111; }\n.gr-check-radio:checked { background-color: var(--highlight-color); }\n.gr-compact { background-color: var(--background-color); }\n.gr-form { border-width: 0; }\n.gr-input { background-color: #333333 !important; padding: 4px; margin: 4px; }\n.gr-input-label { color: lightyellow; border-width: 0; background: transparent; padding: 2px !important; }\n.gr-panel { background-color: var(--background-color); }\n.eta-bar { display: none !important }\nsvg.feather.feather-image, .feather .feather-image { display: none }\n.gap-2 { padding-top: 8px; }\n.gr-box > div > div > input.gr-text-input { right: 0; width: 4em; padding: 0; top: -12px; border: none; max-height: 20px; }\n.output-html { line-height: 1.2rem; overflow-x: hidden; }\n.output-html > div { margin-bottom: 8px; }\n.overflow-hidden .flex .flex-col .relative col .gap-4 { min-width: var(--left-column); max-width: var(--left-column); } /* this is a problematic one */\n.p-2 { padding: 0; }\n.px-4 { padding-lefT: 1rem; padding-right: 1rem; }\n.py-6 { padding-bottom: 0; }\n.tabs { background-color: var(--background-color); }\n.block.token-counter span { background-color: #222 !important; box-shadow: 2px 2px 2px #111; border: none !important; font-size: 0.8rem; }\n.tab-nav { zoom: 110%; margin-bottom: 10px; border-bottom: 2px solid var(--highlight-color) !important; padding-bottom: 2px; }\n.label-wrap { margin: 16px 0px 8px 0px; }\n.gradio-button.tool { border: none; background: none; box-shadow: none; }\n#tab_extensions table td, #tab_extensions table th { border: none; padding: 0.5em; }\n#tab_extensions table { width: 96vw }\n#tab_extensions table thead { background-color: var(--neutral-700); }\n\n/* automatic style classes */\n.progressDiv { border-radius: var(--radius-sm) !important; position: fixed; top: 44px; right: 26px; max-width: 262px; height: 48px; z-index: 99; box-shadow: var(--button-shadow); }\n.progressDiv .progress { border-radius: var(--radius-lg) !important; background: var(--highlight-color); line-height: 3rem; height: 48px; }\n.gallery-item { box-shadow: none !important; }\n.performance { color: #888; }\n.extra-networks { border-left: 2px solid var(--highlight-color) !important; padding-left: 4px; }\n.image-buttons { gap: 10px !important}\n\n/* gradio elements overrides */\n#div.gradio-container { overflow-x: hidden; }\n#img2img_label_copy_to_img2img { font-weight: normal; }\n#img2img_settings { min-width: calc(2 * var(--left-column)); max-width: calc(2 * var(--left-column)); background-color: #111111; padding-top: 16px; }\n#interrogate, #deepbooru { margin: 0 0px 10px 0px; max-width: 80px; max-height: 80px; font-weight: normal; font-size: 0.95em; }\n#quicksettings .gr-button-tool { font-size: 1.6rem; box-shadow: none; margin-left: -20px; margin-top: -2px; height: 2.4em; }\n#footer, #style_pos_col, #style_neg_col, #roll_col, #extras_upscaler_2, #extras_upscaler_2_visibility, #txt2img_seed_resize_from_w, #txt2img_seed_resize_from_h { display: none; }\n#save-animation { border-radius: var(--radius-sm) !important; margin-bottom: 16px; background-color: #111111; }\n#script_list { padding: 4px; margin-top: 16px; margin-bottom: 8px; }\n#settings > div.flex-wrap { width: 15em; }\n#tab_extensions table { background-color: #222222; }\n#txt2img_cfg_scale { min-width: 200px; }\n#txt2img_checkboxes, #img2img_checkboxes { background-color: transparent; }\n#txt2img_checkboxes, #img2img_checkboxes { margin-bottom: 0.2em; }\n\n#extras_upscale { margin-top: 10px }\n#txt2img_progress_row > div { min-width: var(--left-column); max-width: var(--left-column); }\n#txt2img_settings { min-width: var(--left-column); max-width: var(--left-column); background-color: #111111; padding-top: 16px; }\n#pnginfo_html2_info { margin-top: -18px; background-color: var(--input-background-fill); padding: var(--input-padding) }\n.gradio-button.tool { filter: hue-rotate(180deg) saturate(0.5); }\n#txt2img_styles_row, #img2img_styles_row { margin-top: -6px; z-index: 200; }\n\n/* based on gradio built-in dark theme */\n:root, .light, .dark {\n  --body-background-fill: var(--background-color);\n  --body-text-color: var(--neutral-100);\n  --color-accent-soft: var(--neutral-700);\n  --background-fill-primary: #222222;\n  --background-fill-secondary: none;\n  --border-color-accent: var(--background-color);\n  --border-color-primary: var(--background-color);\n  --link-text-color-active: var(--secondary-500);\n  --link-text-color: var(--secondary-500);\n  --link-text-color-hover: var(--secondary-400);\n  --link-text-color-visited: var(--secondary-600);\n  --body-text-color-subdued: var(--neutral-400);\n  --shadow-spread: 1px;\n  --block-background-fill: None;\n  --block-border-color: var(--border-color-primary);\n  --block_border_width: None;\n  --block-info-text-color: var(--body-text-color-subdued);\n  --block-label-background-fill: var(--background-fill-secondary);\n  --block-label-border-color: var(--border-color-primary);\n  --block_label_border_width: None;\n  --block-label-text-color: var(--neutral-200);\n  --block_shadow: None;\n  --block_title_background_fill: None;\n  --block_title_border_color: None;\n  --block_title_border_width: None;\n  --block-title-text-color: white;\n  --panel-background-fill: var(--background-fill-secondary);\n  --panel-border-color: var(--border-color-primary);\n  --panel_border_width: None;\n  --checkbox-background-color: var(--neutral-800);\n  --checkbox-background-color-focus: var(--checkbox-background-color);\n  --checkbox-background-color-hover: var(--checkbox-background-color);\n  --checkbox-background-color-selected: var(--secondary-600);\n  --checkbox-border-color: var(--neutral-700);\n  --checkbox-border-color-focus: var(--secondary-500);\n  --checkbox-border-color-hover: var(--neutral-600);\n  --checkbox-border-color-selected: var(--primary-600);\n  --checkbox-border-width: var(--input-border-width);\n  --checkbox-label-background-fill: None;\n  --checkbox-label-background-fill-hover: None;\n  --checkbox-label-background-fill-selected: var(--checkbox-label-background-fill);\n  --checkbox-label-border-color: var(--border-color-primary);\n  --checkbox-label-border-color-hover: var(--checkbox-label-border-color);\n  --checkbox-label-border-width: var(--input-border-width);\n  --checkbox-label-text-color: var(--body-text-color);\n  --checkbox-label-text-color-selected: var(--checkbox-label-text-color);\n  --error-background-fill: var(--background-fill-primary);\n  --error-border-color: var(--border-color-primary);\n  --error_border_width: None;\n  --error-text-color: #ef4444;\n  --input-background-fill: var(--neutral-800);\n  --input-background-fill-focus: var(--secondary-600);\n  --input-background-fill-hover: var(--input-background-fill);\n  --input-border-color: var(--border-color-primary);\n  --input-border-color-focus: var(--neutral-700);\n  --input-border-color-hover: var(--input-border-color);\n  --input_border_width: None;\n  --input-placeholder-color: var(--neutral-500);\n  --input-shadow: 2px 2px 2px 2px #111111;\n  --input-shadow-focus: 2px 2px 2px 2px #111111;\n  --loader_color: None;\n  --slider_color: None;\n  --stat-background-fill: linear-gradient(to right, var(--primary-400), var(--primary-600));\n  --table-border-color: var(--neutral-700);\n  --table-even-background-fill: #222222;\n  --table-odd-background-fill: #333333;\n  --table-row-focus: var(--color-accent-soft);\n  --button-border-width: var(--input-border-width);\n  --button-cancel-background-fill: linear-gradient(to bottom right, #dc2626, #b91c1c);\n  --button-cancel-background-fill-hover: linear-gradient(to bottom right, #dc2626, #dc2626);\n  --button-cancel-border-color: #dc2626;\n  --button-cancel-border-color-hover: var(--button-cancel-border-color);\n  --button-cancel-text-color: white;\n  --button-cancel-text-color-hover: var(--button-cancel-text-color);\n  --button-primary-background-fill: linear-gradient(to bottom right, var(--primary-500), var(--primary-800));\n  --button-primary-background-fill-hover: linear-gradient(to bottom right, var(--primary-500), var(--primary-300));\n  --button-primary-border-color: var(--primary-500);\n  --button-primary-border-color-hover: var(--button-primary-border-color);\n  --button-primary-text-color: white;\n  --button-primary-text-color-hover: var(--button-primary-text-color);\n  --button-secondary-background-fill: linear-gradient(to bottom right, var(--neutral-600), var(--neutral-800));\n  --button-secondary-background-fill-hover: linear-gradient(to bottom right, var(--neutral-600), var(--neutral-400));\n  --button-secondary-border-color: var(--neutral-600);\n  --button-secondary-border-color-hover: var(--button-secondary-border-color);\n  --button-secondary-text-color: white;\n  --button-secondary-text-color-hover: var(--button-secondary-text-color);\n  --secondary-50: #eff6ff;\n  --secondary-100: #dbeafe;\n  --secondary-200: #bfdbfe;\n  --secondary-300: #93c5fd;\n  --secondary-400: #60a5fa;\n  --secondary-500: #3b82f6;\n  --secondary-600: #2563eb;\n  --secondary-700: #1d4ed8;\n  --secondary-800: #1e40af;\n  --secondary-900: #1e3a8a;\n  --secondary-950: #1d3660;\n  --neutral-50: #f0f0f0;\n  --neutral-100: #e0e0e0;\n  --neutral-200: #d0d0d0;\n  --neutral-300: #b0b0b0;\n  --neutral-400: #909090;\n  --neutral-500: #707070;\n  --neutral-600: #606060;\n  --neutral-700: #404040;\n  --neutral-800: #333333;\n  --neutral-900: #111827;\n  --neutral-950: #0b0f19;\n  --radius-xxs: 0;\n  --radius-xs: 0;\n  --radius-md: 0;\n  --radius-xl: 0;\n  --radius-xxl: 0;\n  --body-text-size: var(--text-md);\n  --body-text-weight: 400;\n  --embed-radius: var(--radius-lg);\n  --color-accent: var(--primary-500);\n  --shadow-drop: 0;\n  --shadow-drop-lg: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n  --shadow-inset: rgba(0,0,0,0.05) 0px 2px 4px 0px inset;\n  --block-border-width: 1px;\n  --block-info-text-size: var(--text-sm);\n  --block-info-text-weight: 400;\n  --block-label-border-width: 1px;\n  --block-label-margin: 0;\n  --block-label-padding: var(--spacing-sm) var(--spacing-lg);\n  --block-label-radius: calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px) 0;\n  --block-label-right-radius: 0 calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px);\n  --block-label-text-size: var(--text-sm);\n  --block-label-text-weight: 400;\n  --block-padding: var(--spacing-xl) calc(var(--spacing-xl) + 2px);\n  --block-radius: var(--radius-lg);\n  --block-shadow: var(--shadow-drop);\n  --block-title-background-fill: none;\n  --block-title-border-color: none;\n  --block-title-border-width: 0px;\n  --block-title-padding: 0;\n  --block-title-radius: none;\n  --block-title-text-size: var(--text-md);\n  --block-title-text-weight: 400;\n  --container-radius: var(--radius-lg);\n  --form-gap-width: 1px;\n  --layout-gap: var(--spacing-xxl);\n  --panel-border-width: 0;\n  --section-header-text-size: var(--text-md);\n  --section-header-text-weight: 400;\n  --checkbox-border-radius: var(--radius-sm);\n  --checkbox-label-gap: 2px;\n  --checkbox-label-padding: var(--spacing-md);\n  --checkbox-label-shadow: var(--shadow-drop);\n  --checkbox-label-text-size: var(--text-md);\n  --checkbox-label-text-weight: 400;\n  --checkbox-check: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e\");\n  --radio-circle: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e\");\n  --checkbox-shadow: var(--input-shadow);\n  --error-border-width: 1px;\n  --input-border-width: 0;\n  --input-radius: var(--radius-lg);\n  --input-text-size: var(--text-md);\n  --input-text-weight: 400;\n  --loader-color: var(--color-accent);\n  --prose-text-size: var(--text-md);\n  --prose-text-weight: 400;\n  --prose-header-text-weight: 600;\n  --slider-color: ;\n  --table-radius: var(--radius-lg);\n  --button-large-padding: 2px 6px;\n  --button-large-radius: var(--radius-lg);\n  --button-large-text-size: var(--text-lg);\n  --button-large-text-weight: 400;\n  --button-shadow: 4px 4px 4px 0px #333333;\n  --button-shadow-active: 1px 1px 4px 0px #555555;\n  --button-shadow-hover: 1px 1px 4px 0px #555555;\n  --button-small-padding: var(--spacing-sm) calc(2 * var(--spacing-sm));\n  --button-small-radius: var(--radius-lg);\n  --button-small-text-size: var(--text-md);\n  --button-small-text-weight: 400;\n  --button-transition: none;\n  --size-9: 64px;\n  --size-14: 64px;\n}\n"
  },
  {
    "path": "javascript/black-teal-reimagined.css",
    "content": "/* Generic HTML Tags */\n@font-face {\n  font-family: 'NotoSans';\n  font-display: swap;\n  font-style: normal;\n  font-weight: 100;\n  src: local('NotoSansNerd'), url('notosans-nerdfont-regular.ttf');\n}\n\nhtml {\n  scroll-behavior: smooth;\n}\n\n:root,\n.light,\n.dark {\n  --font: 'NotoSans';\n  --font-mono: 'ui-monospace', 'Consolas', monospace;\n  --font-size: 16px;\n\n  /* Primary Colors */\n  --primary-50: #7dffff;\n  --primary-100: #72e8e8;\n  --primary-200: #67d2d2;\n  --primary-300: #5dbcbc;\n  --primary-400: #52a7a7;\n  --primary-500: #489292;\n  --primary-600: #3e7d7d;\n  --primary-700: #356969;\n  --primary-800: #2b5656;\n  --primary-900: #224444;\n  --primary-950: #193232;\n\n  /* Neutral Colors */\n  --neutral-50: #f0f0f0;\n  --neutral-100: #e0e0e0;\n  --neutral-200: #d0d0d0;\n  --neutral-300: #b0b0b0;\n  --neutral-400: #909090;\n  --neutral-500: #707070;\n  --neutral-600: #606060;\n  --neutral-700: #404040;\n  --neutral-800: #303030;\n  --neutral-900: #202020;\n  --neutral-950: #101010;\n\n  /* Highlight and Inactive Colors */\n  --highlight-color: var(--primary-200);\n  --inactive-color: var(--primary-800);\n\n  /* Text Colors */\n  --body-text-color: var(--neutral-100);\n  --body-text-color-subdued: var(--neutral-300);\n\n  /* Background Colors */\n  --background-color: var(--neutral-950);\n  --background-fill-primary: var(--neutral-800);\n  --input-background-fill: var(--neutral-900);\n\n  /* Padding and Borders */\n  --input-padding: 4px;\n  --input-shadow: none;\n  --button-primary-text-color: var(--neutral-100);\n  --button-primary-background-fill: var(--primary-600);\n  --button-primary-background-fill-hover: var(--primary-800);\n  --button-secondary-text-color: var(--neutral-100);\n  --button-secondary-background-fill: var(--neutral-900);\n  --button-secondary-background-fill-hover: var(--neutral-600);\n\n  /* Border Radius */\n  --radius-xs: 2px;\n  --radius-sm: 4px;\n  --radius-md: 6px;\n  --radius-lg: 8px;\n  --radius-xl: 10px;\n  --radius-xxl: 15px;\n  --radius-xxxl: 20px;\n\n  /* Shadows */\n  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.1);\n  --shadow-md: 0 2px 4px rgba(0, 0, 0, 0.1);\n  --shadow-lg: 0 4px 8px rgba(0, 0, 0, 0.1);\n  --shadow-xl: 0 8px 16px rgba(0, 0, 0, 0.1);\n\n  /* Animation */\n  --transition: all 0.3s ease;\n\n  /* Scrollbar */\n  --scrollbar-bg: var(--neutral-800);\n  --scrollbar-thumb: var(--highlight-color);\n}\n\nhtml {\n  font-size: var(--font-size);\n  font-family: var(--font);\n}\n\nbody,\nbutton,\ninput,\nselect,\ntextarea {\n  font-family: var(--font);\n  color: var(--body-text-color);\n  transition: var(--transition);\n}\n\nbutton {\n  max-width: 400px;\n  white-space: nowrap;\n  padding: 8px 12px;\n  border: none;\n  border-radius: var(--radius-md);\n  background-color: var(--button-primary-background-fill);\n  color: var(--button-primary-text-color);\n  cursor: pointer;\n  box-shadow: var(--shadow-sm);\n  transition: transform 0.2s ease, background-color 0.3s ease;\n}\n\nbutton:hover {\n  background-color: var(--button-primary-background-fill-hover);\n  transform: scale(1.05);\n}\n\n/* Range Input Styles */\n.slider-container {\n  width: 100%;\n  /* Ensures the container takes full width */\n  max-width: 100%;\n  /* Prevents overflow */\n  padding: 0 10px;\n  /* Adds padding for aesthetic spacing */\n  box-sizing: border-box;\n  /* Ensures padding doesn't affect width */\n}\n\ninput[type='range'] {\n  display: block;\n  margin: 0;\n  padding: 0;\n  height: 1em;\n  background-color: transparent;\n  overflow: hidden;\n  cursor: pointer;\n  box-shadow: none;\n  -webkit-appearance: none;\n  opacity: 0.7;\n  appearance: none;\n  width: 100%;\n  /* Makes the slider responsive */\n}\n\ninput[type='range'] {\n  opacity: 1;\n}\n\ninput[type='range']::-webkit-slider-thumb {\n  -webkit-appearance: none;\n  height: 1em;\n  width: 1em;\n  background-color: var(--highlight-color);\n  border-radius: var(--radius-xs);\n  box-shadow: var(--shadow-md);\n  cursor: pointer;\n  /* Ensures the thumb is clickable */\n}\n\ninput[type='range']::-webkit-slider-runnable-track {\n  -webkit-appearance: none;\n  height: 6px;\n  background: var(--input-background-fill);\n  border-radius: var(--radius-md);\n}\n\ninput[type='range']::-moz-range-thumb {\n  height: 1em;\n  width: 1em;\n  background-color: var(--highlight-color);\n  border-radius: var(--radius-xs);\n  box-shadow: var(--shadow-md);\n  cursor: pointer;\n  /* Ensures the thumb is clickable */\n}\n\ninput[type='range']::-moz-range-track {\n  height: 6px;\n  background: var(--input-background-fill);\n  border-radius: var(--radius-md);\n}\n\n@media (max-width: 768px) {\n  .slider-container {\n    width: 100%;\n    /* Adjust width for smaller screens */\n  }\n\n  .networks-menu,\n  .styles-menu {\n    width: 100%;\n    /* Ensure menus are full width */\n    margin: 0;\n    /* Reset margins for smaller screens */\n  }\n}\n\n/* Scrollbar Styles */\n:root {\n  scrollbar-color: var(--scrollbar-thumb) var(--scrollbar-bg);\n}\n\n::-webkit-scrollbar {\n  width: 12px;\n  height: 12px;\n}\n\n::-webkit-scrollbar-track {\n  background: var(--scrollbar-bg);\n  border-radius: var(--radius-lg);\n}\n\n::-webkit-scrollbar-thumb {\n  background-color: var(--scrollbar-thumb);\n  border-radius: var(--radius-lg);\n  box-shadow: var(--shadow-sm);\n}\n\n/* Tab Navigation Styles */\n.tab-nav {\n  display: flex;\n  /* Use flexbox for layout */\n  justify-content: space-evenly;\n  /* Space out the tabs evenly */\n  align-items: center;\n  /* Center items vertically */\n  background: var(--background-color);\n  /* Background color */\n  border-bottom: 1px dashed var(--highlight-color) !important;\n  /* Bottom border for separation */\n  box-shadow: var(--shadow-md);\n  /* Shadow for depth */\n  margin-bottom: 5px;\n  /* Add some space between the tab nav and the content */\n  padding-bottom: 5px;\n  /* Add space between buttons and border */\n}\n\n/* Individual Tab Styles */\n.tab-nav>button {\n  background: var(--neutral-900);\n  /* No background for default state */\n  color: var(--text-color);\n  /* Text color */\n  border: 1px solid var(--highlight-color);\n  /* No border */\n  border-radius: var(--radius-xxl);\n  /* Rounded corners */\n  cursor: pointer;\n  /* Pointer cursor */\n  transition: background 0.3s ease, color 0.3s ease;\n  /* Smooth transition */\n  padding-top: 5px;\n  padding-bottom: 5px;\n  padding-right: 10px;\n  padding-left: 10px;\n  margin-bottom: 3px;\n}\n\n/* Active Tab Style */\n.tab-nav>button.selected {\n  background: var(--primary-100);\n  /* Highlight active tab */\n  color: var(--background-color);\n  /* Change text color for active tab */\n}\n\n/* Hover State for Tabs */\n.tab-nav>button:hover {\n  background: var(--highlight-color);\n  /* Background on hover */\n  color: var(--background-color);\n  /* Change text color on hover */\n}\n\n/* Responsive Styles */\n@media (max-width: 768px) {\n  .tab-nav {\n    flex-direction: column;\n    /* Stack tabs vertically on smaller screens */\n    align-items: stretch;\n    /* Stretch tabs to full width */\n  }\n\n  .tab-nav>button {\n    width: 100%;\n    /* Full width for buttons */\n    text-align: left;\n    /* Align text to the left */\n  }\n}\n\n/* Quick Settings Panel Styles */\n#quicksettings {\n  background: var(--background-color);\n  /* Background color */\n  box-shadow: var(--shadow-lg);\n  /* Shadow for depth */\n  border-radius: var(--radius-lg);\n  /* Rounded corners */\n  padding: 1em;\n  /* Padding for spacing */\n  z-index: 200;\n  /* Ensure it stays on top */\n}\n\n/* Quick Settings Header */\n#quicksettings .header {\n  font-size: var(--text-lg);\n  /* Font size for header */\n  font-weight: bold;\n  /* Bold text */\n  margin-bottom: 0.5em;\n  /* Space below header */\n}\n\n/* Quick Settings Options */\n#quicksettings .option {\n  display: flex;\n  /* Flexbox for layout */\n  justify-content: space-between;\n  /* Space between label and toggle */\n  align-items: center;\n  /* Center items vertically */\n  padding: 0.5em 0;\n  /* Padding for each option */\n  border-bottom: 1px solid var(--neutral-600);\n  /* Separator line */\n}\n\n/* Option Label Styles */\n#quicksettings .option label {\n  color: var(--text-color);\n  /* Text color */\n}\n\n/* Toggle Switch Styles */\n#quicksettings .option input[type=\"checkbox\"] {\n  cursor: pointer;\n  /* Pointer cursor */\n}\n\n/* Quick Settings Footer */\n#quicksettings .footer {\n  margin-top: 1em;\n  /* Space above footer */\n  text-align: right;\n  /* Align text to the right */\n}\n\n/* Close Button Styles */\n#quicksettings .footer button {\n  background: var(--button-primary-background-fill);\n  /* Button background */\n  color: var(--button-primary-text-color);\n  /* Button text color */\n  border: none;\n  /* No border */\n  border-radius: var(--radius-md);\n  /* Rounded corners */\n  padding: 0.5em 1em;\n  /* Padding for button */\n  cursor: pointer;\n  /* Pointer cursor */\n  transition: 0.3s ease;\n  /* Smooth transition */\n}\n\n/* Close Button Hover State */\n#quicksettings .footer button:hover {\n  background: var(--highlight-color);\n  /* Change background on hover */\n}\n\n/* Responsive Styles */\n@media (max-width: 768px) {\n  #quicksettings {\n    right: 10px;\n    /* Adjust position for smaller screens */\n    width: 90%;\n    /* Full width on smaller screens */\n  }\n}\n\n/* Form Styles */\ndiv.form, #txt2img_seed_row, #txt2img_subseed_row {\n  border-width: 0;\n  box-shadow: var(--shadow-md);\n  background: var(--background-fill-primary);\n  border-bottom: 3px solid var(--highlight-color);\n  padding: 3px;\n  border-radius: var(--radius-lg);\n  margin: 1px;\n}\n\n/* Image preview styling*/\n#txt2img_gallery {\n  background: var(--background-fill-primary);\n  padding: 5px;\n  margin: 0px;\n}\n\n@keyframes colorChange {\n  0% {\n    background-color: var(--neutral-800);\n  }\n  50% {\n    background-color: var(--neutral-700);\n  }\n  100% {\n    background-color: var(--neutral-800);\n  }\n}\n\n.livePreview {\n  animation: colorChange 3s ease-in-out infinite; /* Adjust the duration as needed */\n  padding: 5px;\n}\n\n/* Gradio Style Classes */\nfieldset .gr-block.gr-box,\nlabel.block span {\n  padding: 0;\n  margin-top: -4px;\n}\n\n.border-2 {\n  border-width: 0;\n}\n\n.border-b-2 {\n  border-bottom-width: 2px;\n  border-color: var(--highlight-color) !important;\n  padding-bottom: 2px;\n  margin-bottom: 8px;\n}\n\n.bg-white {\n  color: lightyellow;\n  background-color: var(--inactive-color);\n}\n\n.gr-box {\n  border-radius: var(--radius-sm) !important;\n  background-color: var(--neutral-950) !important;\n  box-shadow: var(--shadow-md);\n  border-width: 0;\n  padding: 4px;\n  margin: 12px 0;\n}\n\n.gr-button {\n  font-weight: normal;\n  box-shadow: var(--shadow-sm);\n  font-size: 0.8rem;\n  min-width: 32px;\n  min-height: 32px;\n  padding: 3px;\n  margin: 3px;\n  transition: var(--transition);\n}\n\n.gr-button:hover {\n  background-color: var(--highlight-color);\n}\n\n.gr-check-radio {\n  background-color: var(--inactive-color);\n  border-width: 0;\n  border-radius: var(--radius-lg);\n  box-shadow: var(--shadow-sm);\n}\n\n.gr-check-radio:checked {\n  background-color: var(--highlight-color);\n}\n\n.gr-compact {\n  background-color: var(--background-color);\n}\n\n.gr-form {\n  border-width: 0;\n}\n\n.gr-input {\n  background-color: var(--neutral-800) !important;\n  padding: 4px;\n  margin: 4px;\n  border-radius: var(--radius-md);\n  transition: var(--transition);\n}\n\n.gr-input:hover {\n  background-color: var(--neutral-700);\n}\n\n.gr-input-label {\n  color: lightyellow;\n  border-width: 0;\n  background: transparent;\n  padding: 2px !important;\n}\n\n.gr-panel {\n  background-color: var(--background-color);\n  border-radius: var(--radius-md);\n  box-shadow: var(--shadow-md);\n}\n\n.eta-bar {\n  display: none !important;\n}\n\n.gradio-slider {\n  max-width: 200px;\n}\n\n.gradio-slider input[type=\"number\"] {\n  background: var(--neutral-950);\n  margin-top: 2px;\n}\n\n.gradio-image {\n  height: unset !important;\n}\n\nsvg.feather.feather-image,\n.feather .feather-image {\n  display: none;\n}\n\n.gap-2 {\n  padding-top: 8px;\n}\n\n.gr-box>div>div>input.gr-text-input {\n  right: 0;\n  width: 4em;\n  padding: 0;\n  top: -12px;\n  border: none;\n  max-height: 20px;\n}\n\n.output-html {\n  line-height: 1.2rem;\n  overflow-x: hidden;\n}\n\n.output-html>div {\n  margin-bottom: 8px;\n}\n\n.overflow-hidden .flex .flex-col .relative col .gap-4 {\n  min-width: var(--left-column);\n  max-width: var(--left-column);\n}\n\n.p-2 {\n  padding: 0;\n}\n\n.px-4 {\n  padding-left: 1rem;\n  padding-right: 1rem;\n}\n\n.py-6 {\n  padding-bottom: 0;\n}\n\n.tabs {\n  background-color: var(--background-color);\n}\n\n.block.token-counter span {\n  background-color: var(--input-background-fill) !important;\n  box-shadow: 2px 2px 2px #111;\n  border: none !important;\n  font-size: 0.7rem;\n}\n\n.label-wrap {\n  margin: 8px 0px 4px 0px;\n}\n\n.gradio-button.tool {\n  border: none;\n  background: none;\n  box-shadow: none;\n  filter: hue-rotate(340deg) saturate(0.5);\n}\n\n#tab_extensions table td,\n#tab_extensions table th,\n#tab_config table td,\n#tab_config table th {\n  border: none;\n}\n\n#tab_extensions table tr:hover,\n#tab_config table tr:hover {\n  background-color: var(--neutral-500) !important;\n}\n\n#tab_extensions table,\n#tab_config table {\n  width: 96vw;\n}\n\n#tab_extensions table thead,\n#tab_config table thead {\n  background-color: var(--neutral-700);\n}\n\n#tab_extensions table,\n#tab_config table {\n  background-color: var(--neutral-900);\n}\n\n/* Automatic Style Classes */\n.progressDiv {\n  border-radius: var(--radius-sm) !important;\n  position: fixed;\n  top: 44px;\n  right: 26px;\n  max-width: 262px;\n  height: 48px;\n  z-index: 99;\n  box-shadow: var(--button-shadow);\n}\n\n.progressDiv .progress {\n  border-radius: var(--radius-lg) !important;\n  background: var(--highlight-color);\n  line-height: 3rem;\n  height: 48px;\n}\n\n.gallery-item {\n  box-shadow: none !important;\n}\n\n.performance {\n  color: #888;\n}\n\n.image-buttons {\n  justify-content: center;\n  gap: 0 !important;\n}\n\n.image-buttons>button {\n  max-width: 160px;\n}\n\n.tooltip {\n  background: var(--primary-300);\n  color: black;\n  border: none;\n  border-radius: var(--radius-lg);\n}\n\n#system_row>button,\n#settings_row>button,\n#config_row>button {\n  max-width: 10em;\n}\n\n/* Gradio Elements Overrides */\n#div.gradio-container {\n  overflow-x: hidden;\n}\n\n#img2img_label_copy_to_img2img {\n  font-weight: normal;\n}\n\n#txt2img_styles,\n#img2img_styles,\n#control_styles {\n  padding: 0;\n  margin-top: 2px;\n}\n\n#txt2img_styles_refresh,\n#img2img_styles_refresh,\n#control_styles_refresh {\n  padding: 0;\n  margin-top: 1em;\n}\n\n#img2img_settings {\n  min-width: calc(2 * var(--left-column));\n  max-width: calc(2 * var(--left-column));\n  background-color: var(--neutral-950);\n  padding-top: 16px;\n}\n\n#interrogate,\n#deepbooru {\n  margin: 0 0px 10px 0px;\n  max-width: 80px;\n  max-height: 80px;\n  font-weight: normal;\n  font-size: 0.95em;\n}\n\n#quicksettings .gr-button-tool {\n  font-size: 1.6rem;\n  box-shadow: none;\n  margin-left: -20px;\n  margin-top: -2px;\n  height: 2.4em;\n}\n\n#save-animation {\n  border-radius: var(--radius-sm) !important;\n  margin-bottom: 16px;\n  background-color: var(--neutral-950);\n}\n\n#script_list {\n  padding: 4px;\n  margin-top: 16px;\n  margin-bottom: 8px;\n}\n\n#settings>div.flex-wrap {\n  width: 15em;\n}\n\n#txt2img_cfg_scale {\n  min-width: 200px;\n}\n\n#txt2img_checkboxes,\n#img2img_checkboxes,\n#control_checkboxes {\n  background-color: transparent;\n  margin-bottom: 0.2em;\n}\n\n#extras_upscale {\n  margin-top: 10px;\n}\n\n#txt2img_progress_row>div {\n  min-width: var(--left-column);\n  max-width: var(--left-column);\n}\n\n#txt2img_settings {\n  min-width: var(--left-column);\n  max-width: var(--left-column);\n  background-color: var(--neutral-950);\n}\n\n#pnginfo_html2_info {\n  margin-top: -18px;\n  background-color: var(--input-background-fill);\n  padding: var(--input-padding);\n}\n\n#txt2img_styles_row,\n#img2img_styles_row,\n#control_styles_row {\n  margin-top: -6px;\n}\n\n.block>span {\n  margin-bottom: 0 !important;\n  margin-top: var(--spacing-lg);\n}\n\n/* Networks Container */\n#extra_networks_root {\n  z-index: 100;\n  background: var(--background-color);\n  box-shadow: var(--shadow-md);\n  border-radius: var(--radius-lg);\n  transform: translateX(100%);\n  animation: slideIn 0.5s forwards;\n  overflow: hidden;\n  /* Prevents overflow of content */\n}\n\n@keyframes slideIn {\n  to {\n    transform: translateX(0);\n  }\n}\n\n/* Networks Styles */\n.extra-networks {\n  border-left: 2px solid var(--highlight-color) !important;\n  padding-left: 4px;\n}\n\n.extra-networks .tab-nav>button:hover {\n  background: var(--highlight-color);\n}\n\n/* Network tab search and description important fix, dont remove */\n#txt2img_description,\n#txt2img_extra_search,\n#img2img_description,\n#img2img_extra_search,\n#video_description,\n#video_extra_search,\n#control_description,\n#control_extra_search {\n  margin-top: 50px;\n}\n\n.extra-networks .buttons>button:hover {\n  background: var(--highlight-color);\n}\n\n/* Network Cards Container */\n.extra-network-cards {\n  display: flex;\n  flex-wrap: wrap;\n  overflow-y: auto;\n  overflow-x: hidden;\n  align-content: flex-start;\n  padding-top: 20px;\n  justify-content: center;\n  width: 100%;\n  /* Ensures it takes full width */\n}\n\n/* Individual Card Styles */\n.extra-network-cards .card {\n  height: fit-content;\n  margin: 0 0 0.5em 0.5em;\n  position: relative;\n  scroll-snap-align: start;\n  scroll-margin-top: 0;\n  background: var(--neutral-800);\n  /* Background for cards */\n  border-radius: var(--radius-md);\n  box-shadow: var(--shadow-md);\n  transition: var(--transition);\n}\n\n/* Overlay Styles */\n.extra-network-cards .card .overlay {\n  z-index: 10;\n  width: 100%;\n  background: none;\n  border-radius: var(--radius-md);\n}\n\n/* Preview Styles */\n.extra-network-cards .card .preview {\n  box-shadow: var(--button-shadow);\n  min-height: 30px;\n  border-radius: var(--radius-md);\n  z-index: 9999;\n}\n\n/* Hover Effects */\n.extra-network-cards .card:hover {\n  transform: scale(1.3);\n  z-index: 9999; /* Use a high value to ensure it appears on top */\n  transition: transform 0.3s ease, z-index 0s; /* Smooth transition */\n}\n\n.extra-network-cards .card:hover .overlay {\n  z-index: 10000; /* Ensure overlay is also on top */\n}\n\n.extra-network-cards .card:hover .preview {\n  box-shadow: none;\n  filter: grayscale(0%);\n}\n\n/* Tags Styles */\n.extra-network-cards .card .tags {\n  display: none;\n  overflow-wrap: anywhere;\n  position: absolute;\n  top: 100%;\n  z-index: 20;\n  background: var(--body-background-fill);\n  overflow-x: hidden;\n  overflow-y: auto;\n  max-height: 333px;\n}\n\n/* Individual Tag Styles */\n.extra-network-cards .card .tag {\n  padding: 2px;\n  margin: 2px;\n  background: rgba(70, 70, 70, 0.60);\n  font-size: var(--text-md);\n  cursor: pointer;\n  display: inline-block;\n}\n\n/* Actions Styles */\n.extra-network-cards .card .actions>span {\n  padding: 4px;\n  font-size: 34px !important;\n}\n\n.extra-network-cards .card .actions {\n  background: none;\n}\n\n.extra-network-cards .card .actions .details {\n  bottom: 50px;\n  background-color: var(--neutral-800);\n}\n\n.extra-network-cards .card .actions>span:hover {\n  color: var(--highlight-color);\n}\n\n/* Version Styles */\n.extra-network-cards .card .version {\n  position: absolute;\n  top: 0;\n  right: 0;\n  padding: 2px;\n  font-weight: bolder;\n  text-shadow: 1px 1px black;\n  text-transform: uppercase;\n  background: gray;\n  opacity: 75%;\n  margin: 4px;\n  line-height: 0.9rem;\n}\n\n/* Hover Actions */\n.extra-network-cards .card:hover .actions {\n  display: block;\n}\n\n.extra-network-cards .card:hover .tags {\n  display: block;\n}\n\n/* No Preview Card Styles */\n.extra-network-cards .card:has(>img[src*=\"missing.png\"])::before {\n  content: '';\n  position: absolute;\n  width: 100%;\n  height: 100%;\n  mix-blend-mode: multiply;\n  background-color: var(--data-color);\n}\n\n/* Card List Styles */\n.extra-network-cards .card-list {\n  display: flex;\n  margin: 0.3em;\n  padding: 0.3em;\n  background: var(--input-background-fill);\n  cursor: pointer;\n  border-radius: var(--button-large-radius);\n}\n\n.extra-network-cards .card-list .tag {\n  color: var(--primary-500);\n  margin-left: 0.8em;\n}\n\n/* Correction color picker styling */\n#txt2img_hdr_color_picker label input {\n  width: 100%;\n  height: 100%;\n}\n\n/* loader */\n.splash {\n  position: fixed;\n  top: 0;\n  left: 0;\n  width: 100vw;\n  height: 100vh;\n  z-index: 1000;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n  background-color: rgba(0, 0, 0, 0.8);\n}\n\n.motd {\n  margin-top: 1em;\n  color: var(--body-text-color-subdued);\n  font-family: monospace;\n  font-variant: all-petite-caps;\n  font-size: 1.2em;\n}\n\n.splash-img {\n  margin: 10% auto 0 auto;\n  width: 512px;\n  height: 512px;\n  background-repeat: no-repeat;\n  animation: hue 5s infinite alternate;\n}\n\n.loading {\n  color: white;\n  position: absolute;\n  top: 85%;\n  font-size: 1.5em;\n}\n\n.loader {\n  width: 100px;\n  height: 100px;\n  border: var(--spacing-md) solid transparent;\n  border-radius: 50%;\n  border-top: var(--spacing-md) solid var(--primary-600);\n  animation: spin 2s linear infinite, pulse 1.5s ease-in-out infinite;\n  position: absolute;\n}\n\n.loader::before,\n.loader::after {\n  content: \"\";\n  position: absolute;\n  top: 6px;\n  bottom: 6px;\n  left: 6px;\n  right: 6px;\n  border-radius: 50%;\n  border: var(--spacing-md) solid transparent;\n}\n\n.loader::before {\n  border-top-color: var(--primary-900);\n  animation: spin 3s linear infinite;\n}\n\n.loader::after {\n  border-top-color: var(--primary-300);\n  animation: spin 1.5s linear infinite;\n}\n\n@keyframes move {\n  0% {\n    transform: translateY(0);\n  }\n  50% {\n    transform: translateY(-10px);\n  }\n  100% {\n    transform: translateY(0);\n  }\n}\n\n@keyframes spin {\n  from {\n    transform: rotate(0deg);\n  }\n  to {\n    transform: rotate(360deg);\n  }\n}\n\n@keyframes pulse {\n  0%, 100% {\n    transform: scale(1);\n  }\n  50% {\n    transform: scale(1.1);\n  }\n}\n\n@keyframes color {\n  0% {\n    filter: hue-rotate(0deg);\n  }\n  100% {\n    filter: hue-rotate(360deg);\n  }\n}\n\n/* Token counters styling */\n#txt2img_token_counter, #txt2img_negative_token_counter {\n  display: flex;\n  flex-direction: row;\n  padding-top: 1px;\n  opacity: 0.6;\n  z-index: 99;\n}\n\n#txt2img_prompt_container {\n  margin: 5px;\n  padding: 0px;\n}\n\n#text2img_prompt label, #text2img_neg_prompt label {\n  margin: 0px;\n}\n\n/* Based on Gradio Built-in Dark Theme */\n:root, .light, .dark {\n  --body-background-fill: var(--background-color);\n  --color-accent-soft: var(--neutral-700);\n  --background-fill-secondary: none;\n  --border-color-accent: var(--background-color);\n  --border-color-primary: var(--background-color);\n  --link-text-color-active: var(--primary-500);\n  --link-text-color: var(--secondary-500);\n  --link-text-color-hover: var(--secondary-400);\n  --link-text-color-visited: var(--secondary-600);\n  --shadow-spread: 1px;\n  --block-background-fill: none;\n  --block-border-color: var(--border-color-primary);\n  --block_border_width: none;\n  --block-info-text-color: var(--body-text-color-subdued);\n  --block-label-background-fill: var(--background-fill-secondary);\n  --block-label-border-color: var(--border-color-primary);\n  --block_label_border_width: none;\n  --block-label-text-color: var(--neutral-200);\n  --block-shadow: none;\n  --block-title-background-fill: none;\n  --block-title-border-color: none;\n  --block-title-border-width: 0px;\n  --block-title-padding: 0;\n  --block-title-radius: none;\n  --block-title-text-size: var(--text-md);\n  --block-title-text-weight: 400;\n  --container-radius: var(--radius-lg);\n  --form-gap-width: 1px;\n  --layout-gap: var(--spacing-xxl);\n  --panel-border-width: 0;\n  --section-header-text-size: var(--text-md);\n  --section-header-text-weight: 400;\n  --checkbox-border-radius: var(--radius-sm);\n  --checkbox-label-gap: 2px;\n  --checkbox-label-padding: var(--spacing-md);\n  --checkbox-label-shadow: var(--shadow-drop);\n  --checkbox-label-text-size: var(--text-md);\n  --checkbox-label-text-weight: 400;\n  --checkbox-check: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e\");\n  --radio-circle: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e\");\n  --checkbox-shadow: var(--input-shadow);\n  --error-border-width: 1px;\n  --input-border-width: 0;\n  --input-radius: var(--radius-lg);\n  --input-text-size: var(--text-md);\n  --input-text-weight: 400;\n  --prose-text-size: var(--text-md);\n  --prose-text-weight: 400;\n  --prose-header-text-weight: 400;\n  --slider-color: var(--neutral-900);\n  --table-radius: var(--radius-lg);\n  --button-large-padding: 2px 6px;\n  --button-large-radius: var(--radius-lg);\n  --button-large-text-size: var(--text-lg);\n  --button-large-text-weight: 400;\n  --button-shadow: none;\n  --button-shadow-active: none;\n  --button-shadow-hover: none;\n  --button-small-padding: var(--spacing-sm) calc(2 * var(--spacing-sm));\n  --button-small-radius: var(--radius-lg);\n  --button-small-text-size: var(--text-md);\n  --button-small-text-weight: 400;\n  --button-transition: none;\n  --size-9: 64px;\n  --size-14: 64px;\n}\n"
  },
  {
    "path": "javascript/black-teal.css",
    "content": "/* generic html tags */\n@font-face { font-family: 'NotoSans'; font-display: swap; font-style: normal; font-weight: 100; src: local('NotoSansNerd'), url('notosans-nerdfont-regular.ttf') }\n:root, .light, .dark {\n  --font: 'NotoSans';\n  --font-mono: 'ui-monospace', 'Consolas', monospace;\n  --font-size: 16px;\n  --primary-50:  #7dffff;\n  --primary-100: #72e8e8;\n  --primary-200: #67d2d2;\n  --primary-300: #5dbcbc;\n  --primary-400: #52a7a7;\n  --primary-500: #489292;\n  --primary-600: #3e7d7d;\n  --primary-700: #356969;\n  --primary-800: #2b5656;\n  --primary-900: #224444;\n  --primary-950: #193232;\n  --neutral-50:  #f0f0f0;\n  --neutral-100: #e0e0e0;\n  --neutral-200: #d0d0d0;\n  --neutral-300: #b0b0b0;\n  --neutral-400: #909090;\n  --neutral-500: #707070;\n  --neutral-600: #606060;\n  --neutral-700: #404040;\n  --neutral-800: #303030;\n  --neutral-900: #202020;\n  --neutral-950: #101010;\n  --highlight-color: var(--primary-200);\n  --inactive-color: var(--primary--800);\n  --body-text-color: var(--neutral-100);\n  --body-text-color-subdued: var(--neutral-300);\n  --background-color: var(--neutral-950);\n  --background-fill-primary: var(--neutral-700);\n  --input-padding: 4px;\n  --input-background-fill: var(--neutral-800);\n  --input-shadow: none;\n  --button-primary-text-color: var(--neutral-100);\n  --button-primary-background-fill: var(--primary-600);\n  --button-primary-background-fill-hover: var(--primary-800);\n  --button-secondary-text-color: var(--neutral-100);\n  --button-secondary-background-fill: var(--neutral-900);\n  --button-secondary-background-fill-hover: var(--neutral-600);\n  --block-title-text-color: var(--neutral-300);\n  --radius-xxs: 0;\n  --radius-xs: 1px;\n  --radius-sm: 2px;\n  --radius-md: 3px;\n  --radius-lg: 4px;\n  --radius-xl: 5px;\n  --radius-xxl: 6px;\n  --line-xs: 1.0em;\n  --line-sm: 1.2em;\n  --line-md: 1.4em;\n  --line-lg: 1.5em;\n  --range-shadow:\n     -32em 0 0 0 hsl(180, 54%, 6%), -31em 0 0 0 hsl(180, 54%, 7%), -30em 0 0 0 hsl(180, 54%, 8%), -29em 0 0 0 hsl(180, 54%, 9%),\n     -28em 0 0 0 hsl(180, 54%, 10%), -27em 0 0 0 hsl(180, 54%, 11%), -26em 0 0 0 hsl(180, 54%, 12%), -25em 0 0 0 hsl(180, 54%, 13%),\n     -24em 0 0 0 hsl(180, 54%, 14%), -23em 0 0 0 hsl(180, 54%, 15%), -22em 0 0 0 hsl(180, 54%, 16%), -21em 0 0 0 hsl(180, 54%, 17%),\n     -20em 0 0 0 hsl(180, 54%, 18%), -19em 0 0 0 hsl(180, 54%, 19%), -18em 0 0 0 hsl(180, 54%, 20%), -17em 0 0 0 hsl(180, 54%, 21%),\n     -16em 0 0 0 hsl(180, 54%, 22%), -15em 0 0 0 hsl(180, 54%, 23%), -14em 0 0 0 hsl(180, 54%, 24%), -13em 0 0 0 hsl(180, 54%, 25%),\n     -12em 0 0 0 hsl(180, 54%, 26%), -11em 0 0 0 hsl(180, 54%, 29%), -10em 0 0 0 hsl(180, 54%, 32%),  -9em 0 0 0 hsl(180, 54%, 35%),\n      -8em 0 0 0 hsl(180, 54%, 38%),  -7em 0 0 0 hsl(180, 54%, 41%), -6em 0 0 0 hsl(180, 54%, 44%),  -5em 0 0 0 hsl(180, 54%, 47%),\n      -4em 0 0 0 hsl(180, 54%, 50%),  -3em 0 0 0 hsl(180, 54%, 53%), -2em 0 0 0 hsl(180, 54%, 56%),  -1em 0 0 0 hsl(180, 54%, 59%),\n      1em 0 0 0 var(--neutral-800),  2em 0 0 0 var(--neutral-800), 3em 0 0 0 var(--neutral-800),  4em 0 0 0 var(--neutral-800),\n      5em 0 0 0 var(--neutral-800),  6em 0 0 0 var(--neutral-800), 7em 0 0 0 var(--neutral-800),  8em 0 0 0 var(--neutral-800),\n      9em 0 0 0 var(--neutral-800), 10em 0 0 0 var(--neutral-800), 11em 0 0 0 var(--neutral-800), 12em 0 0 0 var(--neutral-800),\n     13em 0 0 0 var(--neutral-800), 14em 0 0 0 var(--neutral-800), 15em 0 0 0 var(--neutral-800), 16em 0 0 0 var(--neutral-800),\n     17em 0 0 0 var(--neutral-800), 18em 0 0 0 var(--neutral-800), 19em 0 0 0 var(--neutral-800), 20em 0 0 0 var(--neutral-800),\n     21em 0 0 0 var(--neutral-800), 22em 0 0 0 var(--neutral-800), 23em 0 0 0 var(--neutral-800), 24em 0 0 0 var(--neutral-800),\n     25em 0 0 0 var(--neutral-800), 26em 0 0 0 var(--neutral-800), 27em 0 0 0 var(--neutral-800), 28em 0 0 0 var(--neutral-800);\n}\n\nhtml { font-size: var(--font-size); font-family: var(--font); }\nbody, button, input, select, textarea { font-family: var(--font); }\nbutton { max-width: 400px; white-space: nowrap; }\nimg { background-color: var(--background-color); }\n\ninput[type='range'] { display: block; margin: 0; padding: 0; height: 0.8em; background-color: transparent; overflow: hidden; cursor: pointer; box-shadow: 0 0 0 0 transparent; -webkit-appearance: none; appearance: none; }\n/* eslint-disable-next-line css/no-invalid-properties */\ninput[type='range']::-webkit-slider-thumb { height: .9em; width: .9em; background-color: hsl(180, 54%, 61%); box-shadow: var(--range-shadow); border-radius: var(--radius-xs); }\ninput[type='range']::-webkit-slider-runnable-track, input[type='range']::-webkit-slider-thumb { -webkit-appearance: none; }\n/* eslint-disable-next-line css/no-invalid-properties */\ninput[type='range']::-moz-range-thumb { height: .9em; width: .9em; background-color: hsl(180, 54%, 61%); box-shadow: var(--range-shadow); }\ninput[type='range']::-moz-range-track, input[type='range']::-webkit-slider-runnable-track { border: none; background: none; width: 100%; height: 100%; }\n\n.gradio-dropdown .wrap-inner { padding: 2px !important; }\n\n:root { scrollbar-color: var(--highlight-color) #303030; }\n::-webkit-scrollbar { width: 12px; height: 12px; }\n::-webkit-scrollbar-track { background: #303030; }\n::-webkit-scrollbar-thumb { background-color: var(--highlight-color); border-radius: var(--radius-lg); border-width: 0; box-shadow: 2px 2px 3px var(--neutral-950); }\ndiv.form { border-width: 0; box-shadow: none; background: transparent; overflow: visible; }\n\n.button-icon { font-size: 1.5em !important; margin: 0 !important; padding: 0 !important; height: 1.7em !important; min-height: unset !important; }\n\n/* gradio style classes */\nfieldset .gr-block.gr-box, label.block span { padding: 0; margin-top: -4px; }\n.border-2 { border-width: 0; }\n.border-b-2 { border-bottom-width: 2px; border-color: var(--highlight-color) !important; padding-bottom: 2px; margin-bottom: 8px; }\n.bg-white { color: lightyellow; background-color: var(--inactive-color); }\n.gr-box { border-radius: var(--radius-sm) !important; background-color: var(--neutral-950) !important; box-shadow: none; border-width: 0; padding: 4px; margin: 12px 0px 12px 0px }\n.gr-button { font-weight: normal; box-shadow: none; font-size: 0.8rem; min-width: 32px; min-height: 32px; padding: 3px; margin: 3px; }\n.gr-check-radio { background-color: var(--inactive-color); border-width: 0; border-radius: var(--radius-lg); box-shadow: none; }\n.gr-check-radio:checked { background-color: var(--highlight-color); }\n.gr-compact { background-color: var(--background-color); }\n.gr-form { border-width: 0; }\n.gr-input { background-color: #303030 !important; padding: 4px; margin: 4px; }\n.gr-input-label { color: lightyellow; border-width: 0; background: transparent; padding: 2px !important; }\n.gr-panel { background-color: var(--background-color); }\n.eta-bar { display: none !important }\n.gradio-slider { max-width: 200px; }\n.gradio-slider input[type=\"number\"] { background: var(--neutral-950); margin-top: 2px; }\nsvg.feather.feather-image, .feather .feather-image { display: none }\n.gap-2 { padding-top: 8px; }\n.gr-box > div > div > input.gr-text-input { right: 0; width: 4em; padding: 0; top: -12px; border: none; max-height: 20px; }\n.output-html { line-height: 1.2rem; overflow-x: hidden; }\n.output-html > div { margin-bottom: 8px; }\n.overflow-hidden .flex .flex-col .relative col .gap-4 { min-width: var(--left-column); max-width: var(--left-column); } /* this is a problematic one */\n.p-2 { padding: 0; }\n.px-4 { padding-lefT: 1rem; padding-right: 1rem; }\n.py-6 { padding-bottom: 0; }\n.tabs { background-color: var(--background-color); }\n.block.token-counter span { background-color: var(--input-background-fill) !important; box-shadow: 2px 2px 2px #111; border: none !important; font-size: 0.7rem; }\n.tab-nav { zoom: 110%; margin-top: 10px; margin-bottom: 10px; border-bottom: 2px solid var(--highlight-color) !important; padding-bottom: 2px; }\n.label-wrap { margin: 8px 0px 4px 0px; }\n.gradio-button.tool { border: none; background: none; box-shadow: none; filter: hue-rotate(340deg) saturate(0.5); }\n#tab_extensions table td, #tab_extensions table th, #tab_config table td, #tab_config table th { border: none; }\n#tab_extensions table tr:hover, #tab_config table tr:hover { background-color: var(--neutral-500) !important; }\n#tab_extensions table, #tab_config table { width: 96vw }\n#tab_extensions table thead, #tab_config table thead { background-color: var(--neutral-700); }\n#tab_extensions table, #tab_config table { background-color: var(--neutral-900); }\n\n/* automatic style classes */\n.progressDiv { border-radius: var(--radius-sm) !important; position: fixed; top: 44px; right: 26px; max-width: 262px; height: 48px; z-index: 99; box-shadow: var(--button-shadow); }\n.progressDiv .progress { border-radius: var(--radius-lg) !important; background: var(--highlight-color); line-height: 3rem; height: 48px; }\n.gallery-item { box-shadow: none !important; }\n.performance { color: #888; }\n.extra-networks { border-left: 2px solid var(--highlight-color) !important; padding-left: 4px; }\n.image-buttons { justify-content: center; gap: 0 !important; }\n.image-buttons > button { max-width: 160px; }\n.tooltip { background: var(--primary-300); color: black; border: none; border-radius: var(--radius-lg) }\n#system_row > button, #settings_row > button, #config_row > button { max-width: 10em; }\n\n/* gradio elements overrides */\n#div.gradio-container { overflow-x: hidden; }\n#img2img_label_copy_to_img2img { font-weight: normal; }\n#img2img_settings { min-width: calc(2 * var(--left-column)); max-width: calc(2 * var(--left-column)); background-color: var(--neutral-950); padding-top: 16px; }\n#interrogate, #deepbooru { margin: 0 0px 10px 0px; max-width: 80px; max-height: 80px; font-weight: normal; font-size: 0.95em; }\n#quicksettings .gr-button-tool { font-size: 1.6rem; box-shadow: none; margin-left: -20px; margin-top: -2px; height: 2.4em; }\n#footer, #style_pos_col, #style_neg_col, #roll_col, #extras_upscaler_2, #extras_upscaler_2_visibility, #txt2img_seed_resize_from_w, #txt2img_seed_resize_from_h { display: none; }\n#save-animation { border-radius: var(--radius-sm) !important; margin-bottom: 16px; background-color: var(--neutral-950); }\n#script_list { padding: 4px; margin-top: 16px; margin-bottom: 8px; }\n#settings > div.flex-wrap { width: 15em; }\n#settings_search { margin-top: 1em; margin-left: 1em; }\n#settings_search textarea { padding: 0.5em; height: 2.2em !important; }\n#txt2img_cfg_scale { min-width: 200px; }\n#txt2img_checkboxes, #img2img_checkboxes, #control_checkboxes { background-color: transparent; margin-bottom: 0.2em; }\ntextarea[rows=\"1\"] { height: 33px !important; width: 99% !important; padding: 8px !important; }\n#extras_upscale { margin-top: 10px }\n#txt2img_progress_row > div { min-width: var(--left-column); max-width: var(--left-column); }\n#txt2img_settings { min-width: var(--left-column); max-width: var(--left-column); background-color: var(--neutral-950); padding-top: 16px; }\n#pnginfo_html2_info { margin-top: -18px; background-color: var(--input-background-fill); padding: var(--input-padding) }\n.block > span { margin-bottom: 0 !important; margin-top: var(--spacing-lg); }\n\n/* based on gradio built-in dark theme */\n:root, .light, .dark {\n  --body-background-fill: var(--background-color);\n  --color-accent-soft: var(--neutral-700);\n  --background-fill-secondary: none;\n  --border-color-accent: var(--background-color);\n  --border-color-primary: var(--background-color);\n  --link-text-color-active: var(--primary-500);\n  --link-text-color: var(--secondary-500);\n  --link-text-color-hover: var(--secondary-400);\n  --link-text-color-visited: var(--secondary-600);\n  --shadow-spread: 1px;\n  --block-background-fill: None;\n  --block-border-color: var(--border-color-primary);\n  --block_border_width: None;\n  --block-info-text-color: var(--body-text-color-subdued);\n  --block-label-background-fill: var(--background-fill-secondary);\n  --block-label-border-color: var(--border-color-primary);\n  --block_label_border_width: None;\n  --block-label-text-color: var(--neutral-200);\n  --block_shadow: None;\n  --block_title_background_fill: None;\n  --block_title_border_color: None;\n  --block_title_border_width: None;\n  --panel-background-fill: var(--background-fill-secondary);\n  --panel-border-color: var(--border-color-primary);\n  --panel_border_width: None;\n  --checkbox-background-color: var(--neutral-500);\n  --checkbox-background-color-focus: var(--checkbox-background-color);\n  --checkbox-background-color-hover: var(--checkbox-background-color);\n  --checkbox-background-color-selected: var(--primary-500);\n  --checkbox-border-color: transparent;\n  --checkbox-border-color-focus: var(--secondary-500);\n  --checkbox-border-color-hover: var(--neutral-600);\n  --checkbox-border-color-selected: var(--primary-600);\n  --checkbox-border-width: var(--input-border-width);\n  --checkbox-label-background-fill: None;\n  --checkbox-label-background-fill-hover: None;\n  --checkbox-label-background-fill-selected: var(--checkbox-label-background-fill);\n  --checkbox-label-border-color: var(--border-color-primary);\n  --checkbox-label-border-color-hover: var(--checkbox-label-border-color);\n  --checkbox-label-border-width: var(--input-border-width);\n  --checkbox-label-text-color: var(--block-title-text-color);\n  --checkbox-label-text-color-selected: var(--checkbox-label-text-color);\n  --error-background-fill: var(--background-fill-primary);\n  --error-border-color: var(--border-color-primary);\n  --error_border_width: None;\n  --error-text-color: #ef4444;\n  --input-background-fill-focus: var(--secondary-600);\n  --input-background-fill-hover: var(--input-background-fill);\n  --input-border-color: var(--border-color-primary);\n  --input-border-color-focus: var(--neutral-700);\n  --input-border-color-hover: var(--input-border-color);\n  --input_border_width: None;\n  --input-placeholder-color: var(--neutral-500);\n  --input-shadow-focus: none;\n  --loader_color: None;\n  --slider_color: None;\n  --stat-background-fill: linear-gradient(to right, var(--primary-400), var(--primary-600));\n  --table-border-color: var(--neutral-700);\n  --table-even-background-fill: var(--neutral-900);\n  --table-odd-background-fill: #303030;\n  --table-row-focus: var(--color-accent-soft);\n  --button-border-width: var(--input-border-width);\n  --button-cancel-background-fill: linear-gradient(to bottom right, #dc2626, #b91c1c);\n  --button-cancel-background-fill-hover: linear-gradient(to bottom right, #dc2626, #dc2626);\n  --button-cancel-border-color: #dc2626;\n  --button-cancel-border-color-hover: var(--button-cancel-border-color);\n  --button-cancel-text-color: var(--neutral-50);\n  --button-cancel-text-color-hover: var(--button-cancel-text-color);\n  --button-primary-border-color: var(--primary-500);\n  --button-primary-border-color-hover: var(--button-primary-border-color);\n  --button-primary-text-color-hover: var(--button-primary-text-color);\n  --button-secondary-border-color: var(--neutral-600);\n  --button-secondary-border-color-hover: var(--button-secondary-border-color);\n  --button-secondary-text-color-hover: var(--button-secondary-text-color);\n  --secondary-50: #eff6ff;\n  --secondary-100: #dbeafe;\n  --secondary-200: #bfdbfe;\n  --secondary-300: #93c5fd;\n  --secondary-400: #60a5fa;\n  --secondary-500: #3b82f6;\n  --secondary-600: #2563eb;\n  --secondary-700: #1d4ed8;\n  --secondary-800: #1e40af;\n  --secondary-900: #1e3a8a;\n  --secondary-950: #1d3660;\n  --body-text-size: var(--text-md);\n  --body-text-weight: 400;\n  --embed-radius: var(--radius-lg);\n  --color-accent: var(--primary-500);\n  --shadow-drop: 0;\n  --shadow-drop-lg: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n  --shadow-inset: rgba(0,0,0,0.05) 0px 2px 4px 0px inset;\n  --block-border-width: 1px;\n  --block-info-text-size: var(--text-sm);\n  --block-info-text-weight: 400;\n  --block-label-border-width: 1px;\n  --block-label-margin: 0;\n  --block-label-padding: var(--spacing-sm) var(--spacing-lg);\n  --block-label-radius: calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px) 0;\n  --block-label-right-radius: 0 calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px);\n  --block-label-text-size: var(--text-sm);\n  --block-label-text-weight: 400;\n  --block-padding: var(--spacing-xl) calc(var(--spacing-xl) + 2px);\n  --block-radius: var(--radius-lg);\n  --block-shadow: var(--shadow-drop);\n  --block-title-background-fill: none;\n  --block-title-border-color: none;\n  --block-title-border-width: 0px;\n  --block-title-padding: 0;\n  --block-title-radius: none;\n  --block-title-text-size: var(--text-md);\n  --block-title-text-weight: 400;\n  --container-radius: var(--radius-lg);\n  --form-gap-width: 1px;\n  --layout-gap: var(--spacing-xxl);\n  --panel-border-width: 0;\n  --section-header-text-size: var(--text-md);\n  --section-header-text-weight: 400;\n  --checkbox-border-radius: var(--radius-sm);\n  --checkbox-label-gap: 2px;\n  --checkbox-label-padding: var(--spacing-md);\n  --checkbox-label-shadow: var(--shadow-drop);\n  --checkbox-label-text-size: var(--text-md);\n  --checkbox-label-text-weight: 400;\n  --checkbox-check: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e\");\n  --radio-circle: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e\");\n  --checkbox-shadow: var(--input-shadow);\n  --error-border-width: 1px;\n  --input-border-width: 0;\n  --input-radius: var(--radius-lg);\n  --input-text-size: var(--text-md);\n  --input-text-weight: 400;\n  --loader-color: var(--color-accent);\n  --prose-text-size: var(--text-md);\n  --prose-text-weight: 400;\n  --prose-header-text-weight: 400;\n  --slider-color: ;\n  --table-radius: var(--radius-lg);\n  --button-large-padding: 2px 6px;\n  --button-large-radius: var(--radius-lg);\n  --button-large-text-size: var(--text-lg);\n  --button-large-text-weight: 400;\n  --button-shadow: none;\n  --button-shadow-active: none;\n  --button-shadow-hover: none;\n  --button-small-padding: var(--spacing-sm) calc(2 * var(--spacing-sm));\n  --button-small-radius: var(--radius-lg);\n  --button-small-text-size: var(--text-md);\n  --button-small-text-weight: 400;\n  --button-transition: none;\n  --size-9: 64px;\n  --size-14: 64px;\n}\n"
  },
  {
    "path": "javascript/changelog.js",
    "content": "let changelogElements = [];\n\nconst getAllChildren = (el) => {\n  const elements = [];\n  for (let i = 0; i < el.children.length; i++) {\n    elements.push(el.children[i]);\n    if (el.children[i].children.length) elements.push(...getAllChildren(el.children[i]));\n  }\n  return elements;\n};\n\nfunction getText(el) {\n  let text = '';\n  el.childNodes.forEach((node) => {\n    if (node.nodeType === Node.TEXT_NODE) text += node.nodeValue;\n  });\n  return text.trim();\n}\n\nlet currentElement = -1;\n\nfunction changelogNavigate(found) {\n  const result = gradioApp().getElementById('changelog_result');\n  result.innerHTML = '';\n  const text = document.createElement('p');\n\n  const onPrev = () => {\n    if (currentElement > 0) {\n      currentElement--;\n      found[currentElement].scrollIntoView();\n      text.innerHTML = ` &nbsp search item ${currentElement + 1} of ${found.length}`;\n    }\n  };\n  const onNext = () => {\n    if (currentElement < found.length - 1) {\n      currentElement++;\n      found[currentElement].scrollIntoView();\n      text.innerHTML = ` &nbsp search item ${currentElement + 1} of ${found.length}`;\n    }\n  };\n\n  const prev = document.createElement('p');\n  prev.innerHTML = ' ⇦ ';\n  prev.className = 'changelog_arrow';\n  prev.onclick = onPrev;\n  prev.title = 'Search previous';\n  result.appendChild(prev);\n\n  const next = document.createElement('p');\n  next.innerHTML = ' ⇨ ';\n  next.className = 'changelog_arrow';\n  next.title = 'Search next';\n  next.onclick = onNext;\n  result.appendChild(next);\n\n  text.innerHTML = ` &nbsp found ${found.length} items`;\n  result.appendChild(text);\n}\n\nasync function initChangelog() {\n  const search = gradioApp().querySelector('#changelog_search > label> textarea');\n  const md = gradioApp().getElementById('changelog_markdown');\n  if (!search || !md) {\n    // error('initChangelog', 'Missing search or markdown elements');\n    return;\n  }\n  const searchChangelog = async (e) => {\n    if (changelogElements.length < 100) changelogElements = getAllChildren(md);\n    const found = [];\n    for (const el of changelogElements) {\n      if (search.value.length > 1 && getText(el).toLowerCase().includes(search.value.toLowerCase())) {\n        el.classList.add('changelog_highlight');\n        found.push(el);\n      } else {\n        el.classList.remove('changelog_highlight');\n      }\n    }\n    changelogNavigate(found);\n  };\n  search.addEventListener('keyup', searchChangelog);\n}\n"
  },
  {
    "path": "javascript/civitai.js",
    "content": "String.prototype.format = function (args) { // eslint-disable-line no-extend-native, func-names\n  let thisString = '';\n  for (let charPos = 0; charPos < this.length; charPos++) thisString += this[charPos];\n  for (const key in args) { // eslint-disable-line guard-for-in\n    const stringKey = `{${key}}`;\n    thisString = thisString.replace(new RegExp(stringKey, 'g'), args[key]);\n  }\n  return thisString;\n};\n\nlet selectedURL = '';\nlet selectedName = '';\nlet selectedType = '';\n\nfunction clearModelDetails() {\n  const el = gradioApp().getElementById('model-details') || gradioApp().getElementById('civitai_models_output') || gradioApp().getElementById('models_outcome');\n  if (!el) return;\n  el.innerHTML = '';\n}\n\nconst modelDetailsHTML = `\n  <div>\n    <img src=\"{image}\" alt=\"model image\" class=\"preview\" style=\"display: none\">\n    <button style=\"float: right\" class=\"lg secondary gradio-button tool extra-details-close\" id=\"model_details_close\" data-hint=\"Close\" onclick=\"clearModelDetails()\"> ✕</button>\n    <table id=\"model-details-table\" class=\"model-details simple-table\">\n      <tr><td>Name</td><td>{name}</td></tr>\n      <tr><td>Type</td><td>{type}</td></tr>\n      <tr><td>Tags</td><td><div>{tags}</div></td></tr>\n      <tr><td>NSFW</td><td>{nsfw} | {level}</td></tr>\n      <tr><td>Availability</td><td>{availability}</td></tr>\n      <tr><td>Downloads</td><td>{downloads}</td></tr>\n      <tr><td>Author</td><td>{creator}</td></tr>\n      <tr><td>Description</td><td><div>{desc}</div></td></tr>\n      <tr><td>Download</td><td><div class=\"div-link\" onclick=\"startCivitAllDownload(event)\">All variants</div></td></tr>\n    </table>\n    <br>\n    <table id=\"model-versions-table\" class=\"model-versions simple-table\">\n      <thead>\n        <tr>\n          <th> </th>\n          <th>Version</th>\n          <th>Type</th>\n          <th>Base</th>\n          <th>File</th>\n          <th>Updated</th>\n          <th>Size</th>\n          <th>Availability</th>\n          <th>Description</th>\n        </tr>\n      </thead>\n      <tbody>\n        {versions}\n      </tbody>\n    </table>\n  </div>\n`;\n\nconst modelVersionsHTML = `\n  <tr>\n    <td>{url}</td>\n    <td>{name}</td>\n    <td>{type}</td>\n    <td>{base}</td>\n    <td>{file}</td>\n    <td>{mtime}</td>\n    <td>{size}</td>\n    <td>{availability}</td>\n    <td><div>{desc}</div></td>\n  </tr>\n`;\n\nasync function modelCardClick(id) {\n  log('modelCardClick id', id);\n  const el = gradioApp().getElementById('model-details') || gradioApp().getElementById('civitai_models_output') || gradioApp().getElementById('models_outcome');\n  if (!el) return;\n  const res = await authFetch(`${window.api}/civitai?model_id=${encodeURI(id)}`);\n  if (!res || res.status !== 200) {\n    error(`modelCardClick: id=${id} status=${res ? res.status : 'unknown'}`);\n    return;\n  }\n  let data = await res.json();\n  log('modelCardClick data', data);\n  if (!data || data.length === 0) return;\n  data = data[0]; // assuming the first item is the one we want\n\n  const versionsHTML = data.versions.map((v) => modelVersionsHTML.format({\n    url: `<div class=\"link\" onclick=\"startCivitDownload('${v.files[0]?.url}', '${v.files[0]?.name}', '${data.type}')\"> \\udb80\\uddda </div>`,\n    name: v.name || 'unknown',\n    type: v.files[0]?.type || 'unknown',\n    base: v.base || 'unknown',\n    mtime: (new Date(v.mtime)).toLocaleDateString(),\n    availability: v.availability || 'unknown',\n    size: v.files[0]?.size ? `${(v.files[0].size / 1024 / 1024).toFixed(2)} MB` : 'unknown',\n    file: `<a href=${v.files[0]?.url} target=\"_blank\" rel=\"noopener noreferrer\">${v.files[0]?.name || 'unknown'}</a>`,\n    desc: v.desc || 'no description available',\n  })).join('');\n  const url = `<a href=\"${data.url}\" target=\"_blank\" rel=\"noopener noreferrer\">${data.name || 'unknown'}</a>`;\n  const creator = `<a href=\"https://civitai.com/user/${data.creator}\" target=\"_blank\" rel=\"noopener noreferrer\">${data.creator || 'unknown'}</a>`;\n  const images = data.versions.map((v) => v.images).flat().map((i) => i.url); // TODO image gallery\n  const modelHTML = modelDetailsHTML.format({\n    name: url,\n    type: data.type || 'unknown',\n    tags: data.tags?.join(', ') || '',\n    nsfw: data.nsfw ? 'yes' : 'no',\n    level: data.level?.toString() || '',\n    availability: data.availability || 'unknown',\n    downloads: data.downloads?.toString() || '',\n    creator,\n    desc: data.desc || 'no description available',\n    image: images.length > 0 ? images[0] : '/sdapi/v1/network/thumb?filename=html/missing.png',\n    versions: versionsHTML || '',\n  });\n  el.innerHTML = modelHTML;\n}\n\nfunction startCivitDownload(url, name, type) {\n  log('startCivitDownload', { url, name, type });\n  selectedURL = [url];\n  selectedName = [name];\n  selectedType = [type];\n  const civitDownloadBtn = gradioApp().getElementById('civitai_download_btn');\n  if (civitDownloadBtn) civitDownloadBtn.click();\n}\n\nfunction startCivitAllDownload(evt) {\n  log('startCivitAllDownload', evt);\n  const versions = gradioApp().getElementById('model-versions-table').querySelectorAll('tr');\n  selectedURL = [];\n  selectedName = [];\n  selectedType = [];\n  for (const version of versions) {\n    const parsed = version.querySelector('td:nth-child(1) div')?.getAttribute('onclick')?.match(/startCivitDownload\\('([^']+)', '([^']+)', '([^']+)'\\)/);\n    if (!parsed || parsed.length < 4) continue;\n    selectedURL.push(parsed[1]);\n    selectedName.push(parsed[2]);\n    selectedType.push(parsed[3]);\n  }\n  const civitDownloadBtn = gradioApp().getElementById('civitai_download_btn');\n  if (civitDownloadBtn) civitDownloadBtn.click();\n}\n\nfunction downloadCivitModel(modelUrl, modelName, modelType, modelPath, civitToken, innerHTML) {\n  log('downloadCivitModel', { modelUrl, modelName, modelType, modelPath, civitToken });\n  const el = gradioApp().getElementById('civitai_models_output') || gradioApp().getElementById('models_outcome');\n  const currentHTML = el?.innerHTML || '';\n  return [selectedURL, selectedName, selectedType, modelPath, civitToken, currentHTML];\n}\n"
  },
  {
    "path": "javascript/contextMenus.js",
    "content": "const contextMenuInit = () => {\n  let eventListenerApplied = false;\n  const menuSpecs = new Map();\n\n  const uid = () => Date.now().toString(36) + Math.random().toString(36).substring(2);\n\n  function showContextMenu(event, element, menuEntries) {\n    const posx = event.clientX + document.body.scrollLeft + document.documentElement.scrollLeft;\n    const posy = event.clientY + document.body.scrollTop + document.documentElement.scrollTop;\n    const oldMenu = gradioApp().querySelector('#context-menu');\n    if (oldMenu) oldMenu.remove();\n    const contextMenu = document.createElement('nav');\n    contextMenu.id = 'context-menu';\n    contextMenu.style.top = `${posy}px`;\n    contextMenu.style.left = `${posx}px`;\n    const contextMenuList = document.createElement('ul');\n    contextMenuList.className = 'context-menu-items';\n    contextMenu.append(contextMenuList);\n    menuEntries.forEach((entry) => {\n      const contextMenuEntry = document.createElement('a');\n      contextMenuEntry.innerHTML = entry.name;\n      contextMenuEntry.addEventListener('click', (e) => entry.func());\n      contextMenuList.append(contextMenuEntry);\n    });\n    gradioApp().appendChild(contextMenu);\n    const menuWidth = contextMenu.offsetWidth + 4;\n    const menuHeight = contextMenu.offsetHeight + 4;\n    const windowWidth = window.innerWidth;\n    const windowHeight = window.innerHeight;\n    if ((windowWidth - posx) < menuWidth) contextMenu.style.left = `${windowWidth - menuWidth}px`;\n    if ((windowHeight - posy) < menuHeight) contextMenu.style.top = `${windowHeight - menuHeight}px`;\n  }\n\n  function appendContextMenuOption(targetElementSelector, entryName, entryFunction, primary = false) {\n    let currentItems = menuSpecs.get(targetElementSelector);\n    if (!currentItems) {\n      currentItems = [];\n      menuSpecs.set(targetElementSelector, currentItems);\n    }\n    const newItem = {\n      id: `${targetElementSelector}_${uid()}`,\n      name: entryName,\n      func: entryFunction,\n      primary,\n      // isNew: true,\n    };\n    currentItems.push(newItem);\n    return newItem.id;\n  }\n\n  function removeContextMenuOption(id) {\n    menuSpecs.forEach((v, k) => {\n      let index = -1;\n      v.forEach((e, ei) => {\n        if (e.id === id) { index = ei; }\n      });\n      if (index >= 0) v.splice(index, 1);\n    });\n  }\n\n  async function addContextMenuEventListener() {\n    if (eventListenerApplied) return;\n    log('initContextMenu');\n    gradioApp().addEventListener('click', (e) => {\n      if (!e.isTrusted) return;\n      const oldMenu = gradioApp().querySelector('#context-menu');\n      if (oldMenu) oldMenu.remove();\n      menuSpecs.forEach((v, k) => {\n        const items = v.filter((item) => item.primary);\n        if (items.length > 0 && e.composedPath()[0].matches(k)) {\n          showContextMenu(e, e.composedPath()[0], items);\n          e.preventDefault();\n        }\n      });\n    });\n    gradioApp().addEventListener('contextmenu', (e) => {\n      const oldMenu = gradioApp().querySelector('#context-menu');\n      if (oldMenu) oldMenu.remove();\n      menuSpecs.forEach((v, k) => {\n        const items = v.filter((item) => !item.primary);\n        if (items.length > 0 && e.composedPath()[0].matches(k)) {\n          showContextMenu(e, e.composedPath()[0], items);\n          e.preventDefault();\n        }\n      });\n    });\n    eventListenerApplied = true;\n  }\n  return [appendContextMenuOption, removeContextMenuOption, addContextMenuEventListener];\n};\n\nconst initContextResponse = contextMenuInit();\nconst appendContextMenuOption = initContextResponse[0];\nconst removeContextMenuOption = initContextResponse[1];\nconst addContextMenuEventListener = initContextResponse[2];\n\nconst generateForever = (genbuttonid) => {\n  if (window.generateOnRepeatInterval) {\n    log('generateForever: cancel');\n    clearInterval(window.generateOnRepeatInterval);\n    window.generateOnRepeatInterval = null;\n  } else {\n    const genbutton = gradioApp().querySelector(genbuttonid);\n    const isBusy = () => {\n      let busy = document.getElementById('progressbar')?.style.display === 'block';\n      if (!busy) {\n        // Also check in Modern UI\n        const outerButton = genbutton.parentElement.closest('button');\n        busy = outerButton?.classList.contains('generate') && outerButton?.classList.contains('active');\n      }\n      return busy;\n    };\n    log('generateForever: start');\n    if (!isBusy()) genbutton.click();\n    window.generateOnRepeatInterval = setInterval(() => {\n      if (!isBusy()) genbutton.click();\n    }, 500);\n  }\n};\n\nconst reprocessClick = (tabId, state) => {\n  const btn = document.getElementById(`${tabId}_${state}`);\n  window.submit_state = state;\n  if (btn) btn.click();\n};\n\nconst getStatus = async () => {\n  const headers = new Headers();\n  const body = JSON.stringify({ id_task: -1, id_live_preview: false });\n  headers.set('Content-Type', 'application/json');\n  const tab = getUICurrentTabContent()?.id.replace('tab_', '') || '';\n  const el = gradioApp().querySelector(`#html_log_${tab} .performance p`);\n\n  let res;\n  let data;\n  res = await fetch('./internal/progress', { method: 'POST', headers, body });\n  if (res?.ok) {\n    data = await res.json();\n    log('progressInternal:', data);\n    if (el) el.innerText += '\\nProgress internal:\\n' + JSON.stringify(data, null, 2); // eslint-disable-line prefer-template\n  }\n  res = await authFetch('./sdapi/v1/progress?skip_current_image=true', { method: 'GET', headers });\n  if (res?.ok) {\n    data = await res.json();\n    log('progressAPI:', data);\n    if (el) el.innerText += '\\nProgress API:\\n' + JSON.stringify(data, null, 2); // eslint-disable-line prefer-template\n  }\n};\n\nasync function initContextMenu() {\n  let id = '';\n  for (const tab of ['txt2img', 'img2img', 'control', 'video']) {\n    id = `#${tab}_generate`;\n    appendContextMenuOption(id, 'Get server status', getStatus);\n    appendContextMenuOption(id, 'Copy prompt to clipboard', () => navigator.clipboard.writeText(document.querySelector(`#${tab}_prompt > label > textarea`).value));\n    appendContextMenuOption(id, 'Generate forever', () => generateForever(`#${tab}_generate`));\n    appendContextMenuOption(id, 'Apply selected style', quickApplyStyle);\n    appendContextMenuOption(id, 'Quick save style', quickSaveStyle);\n    id = `#${tab}_reprocess`;\n    appendContextMenuOption(id, 'Decode full quality', () => reprocessClick(`${tab}`, 'reprocess_decode'), true);\n    appendContextMenuOption(id, 'Refine & HiRes pass', () => reprocessClick(`${tab}`, 'reprocess_refine'), true);\n    appendContextMenuOption(id, 'Detailer pass', () => reprocessClick(`${tab}`, 'reprocess_detail'), true);\n  }\n  addContextMenuEventListener();\n}\n"
  },
  {
    "path": "javascript/control.js",
    "content": "function controlInputMode(inputMode, ...args) {\n  const updateEl = gradioApp().getElementById('control_update');\n  if (updateEl) updateEl.click();\n  const tab = gradioApp().querySelector('#control-tab-input button.selected');\n  if (!tab) return ['Image', ...args];\n  const tabs = Array.from(gradioApp().querySelectorAll('#control-tab-input button'));\n  const tabIdx = tabs.findIndex((btn) => btn.classList.contains('selected'));\n  const tabNames = ['Image', 'Video', 'Batch', 'Folder'];\n  let inputTab = tabNames[tabIdx] || 'Image';\n  log('controlInputMode', { mode: inputMode, tab: inputTab, kanvas: typeof Kanvas });\n  if ((inputTab === 'Image') && (typeof 'Kanvas' !== 'undefined')) {\n    inputTab = 'Kanvas';\n    const imageData = window.kanvas.getImage();\n    args[0] = imageData;\n  }\n  return [inputTab, ...args];\n}\n\nasync function setupControlUI() {\n  const tabs = ['input', 'output', 'preview'];\n  for (const tab of tabs) {\n    const btn = gradioApp().getElementById(`control-${tab}-button`);\n    if (!btn) continue;\n    btn.style.cursor = 'pointer';\n    btn.onclick = () => {\n      const t = gradioApp().getElementById(`control-tab-${tab}`);\n      t.style.display = t.style.display === 'none' ? 'block' : 'none';\n      const c = gradioApp().getElementById(`control-${tab}-column`);\n      c.style.flexGrow = c.style.flexGrow === '0' ? '9' : '0';\n    };\n  }\n\n  const el = gradioApp().getElementById('control-input-column');\n  if (!el) return;\n  const intersectionObserver = new IntersectionObserver((entries) => {\n    if (entries[0].intersectionRatio > 0) {\n      const allTabs = Array.from(gradioApp().querySelectorAll('#control-tabs > .tab-nav > .selected'));\n      for (const tab of allTabs) {\n        const name = tab.innerText.toLowerCase();\n        for (let i = 0; i < 10; i += 1) {\n          const btn = gradioApp().getElementById(`refresh_${name}_models_${i}`);\n          if (btn) btn.click();\n        }\n      }\n    }\n  });\n  intersectionObserver.observe(el); // monitor visibility of tab\n\n  log('initControlUI');\n}\n"
  },
  {
    "path": "javascript/docs.js",
    "content": "let lastGitHubSearch = '';\nlet lastDocsSearch = '';\n\nasync function clickGitHubWikiPage(page) {\n  log(`clickGitHubWikiPage: page=\"${page}\"`);\n  lastGitHubSearch = page;\n  const el = gradioApp().getElementById('github_md_btn');\n  if (el) el.click();\n}\n\nfunction getGitHubWikiPage() {\n  return lastGitHubSearch;\n}\n\nasync function clickDocsPage(page) {\n  log(`clickDocsPage: page=\"${page}\"`);\n  lastDocsSearch = page;\n  const el = gradioApp().getElementById('docs_md_btn');\n  if (el) el.click();\n}\n\nfunction getDocsPage() {\n  return lastDocsSearch;\n}\n"
  },
  {
    "path": "javascript/dragDrop.js",
    "content": "function isValidImageList(files) {\n  return files && files?.length === 1 && ['image/png', 'image/gif', 'image/jpeg'].includes(files[0].type);\n}\n\nfunction dropReplaceImage(imgWrap, files) {\n  log('dropReplaceImage', imgWrap, files);\n  if (!isValidImageList(files)) return;\n  const tmpFile = files[0];\n  imgWrap.querySelector('.modify-upload button + button, .touch-none + div button + button')?.click();\n  const callback = () => {\n    const fileInput = imgWrap.querySelector('input[type=\"file\"]');\n    if (fileInput) {\n      if (files.length === 0) {\n        files = new DataTransfer();\n        files.items.add(tmpFile);\n        fileInput.files = files.files;\n      } else {\n        fileInput.files = files;\n      }\n      fileInput.dispatchEvent(new Event('change'));\n    }\n  };\n\n  if (imgWrap.closest('#pnginfo_image')) {\n    const oldFetch = window.fetch;\n    window.fetch = async (input, options) => {\n      const response = await oldFetch(input, options);\n      if (input === 'api/predict/') {\n        const content = await response.text();\n        window.fetch = oldFetch;\n        window.requestAnimationFrame(() => callback());\n        return new Response(content, {\n          status: response.status,\n          statusText: response.statusText,\n          headers: response.headers,\n        });\n      }\n      return response;\n    };\n  } else {\n    window.requestAnimationFrame(() => callback());\n  }\n}\n\nwindow.document.addEventListener('dragover', (e) => {\n  const target = e.composedPath()[0];\n  const imgWrap = target.closest('[data-testid=\"image\"]');\n  if (!imgWrap && target.placeholder && target.placeholder.indexOf('Prompt') === -1) return;\n  if ((e.dataTransfer?.files?.length || 0) > 0) {\n    e.stopPropagation();\n    e.preventDefault();\n    e.dataTransfer.dropEffect = 'copy';\n  }\n});\n\nwindow.document.addEventListener('drop', (e) => {\n  const target = e.composedPath()[0];\n  log('dropEvent', e, target);\n  if (!target.placeholder) return;\n  if (target.placeholder.indexOf('Prompt') === -1) return;\n  const imgWrap = target.closest('[data-testid=\"image\"]');\n  if (!imgWrap) return;\n  if ((e.dataTransfer?.files?.length || 0) > 0) {\n    e.stopPropagation();\n    e.preventDefault();\n    dropReplaceImage(imgWrap, e.dataTransfer.files);\n  }\n});\n\nwindow.addEventListener('paste', (e) => {\n  log('pasteEvent', e);\n  const { files } = e.clipboardData;\n  if (!isValidImageList(files)) return;\n  const visibleImageFields = [...gradioApp().querySelectorAll('[data-testid=\"image\"]')]\n    .filter((el) => uiElementIsVisible(el))\n    .sort((a, b) => uiElementInSight(b) - uiElementInSight(a));\n  if (!visibleImageFields.length) return;\n  const firstFreeImageField = visibleImageFields.filter((el) => el.querySelector('input[type=file]'))?.[0];\n  dropReplaceImage(firstFreeImageField || visibleImageFields[visibleImageFields.length - 1], files);\n});\n"
  },
  {
    "path": "javascript/editAttention.js",
    "content": "function keyupEditAttention(event) {\n  const target = event.originalTarget || event.composedPath()[0];\n  if (!target.matches(\"*:is([id*='_toprow'] [id*='_prompt'], .prompt) textarea\")) return;\n  if (!(event.metaKey || event.ctrlKey)) return;\n  const isPlus = event.key === 'ArrowUp';\n  const isMinus = event.key === 'ArrowDown';\n  if (!isPlus && !isMinus) return;\n  let { selectionStart } = target;\n  let { selectionEnd } = target;\n  let text = target.value;\n\n  function selectCurrentParenthesisBlock(OPEN, CLOSE) {\n    if (selectionStart !== selectionEnd) return false;\n\n    // Find opening parenthesis around current cursor\n    const before = text.substring(0, selectionStart);\n    let beforeParen = before.lastIndexOf(OPEN);\n    if (beforeParen === -1) return false;\n    let beforeParenClose = before.lastIndexOf(CLOSE);\n    while (beforeParenClose !== -1 && beforeParenClose > beforeParen) {\n      beforeParen = before.lastIndexOf(OPEN, beforeParen - 1);\n      beforeParenClose = before.lastIndexOf(CLOSE, beforeParenClose - 1);\n    }\n\n    // Find closing parenthesis around current cursor\n    const after = text.substring(selectionStart);\n    let afterParen = after.indexOf(CLOSE);\n    if (afterParen === -1) return false;\n    let afterParenOpen = after.indexOf(OPEN);\n    while (afterParenOpen !== -1 && afterParen > afterParenOpen) {\n      afterParen = after.indexOf(CLOSE, afterParen + 1);\n      afterParenOpen = after.indexOf(OPEN, afterParenOpen + 1);\n    }\n    if (beforeParen === -1 || afterParen === -1) return false;\n\n    // Set the selection to the text between the parenthesis\n    const parenContent = text.substring(beforeParen + 1, selectionStart + afterParen);\n    const lastColon = parenContent.lastIndexOf(':');\n    selectionStart = beforeParen + 1;\n    selectionEnd = selectionStart + lastColon;\n    target.setSelectionRange(selectionStart, selectionEnd);\n    return true;\n  }\n\n  function selectCurrentWord() {\n    if (selectionStart !== selectionEnd) return false;\n    const delimiters = `${opts.keyedit_delimiters} \\r\\n\\t`;\n    // seek backward until to find beggining\n    while (!delimiters.includes(text[selectionStart - 1]) && selectionStart > 0) selectionStart--;\n    // seek forward to find end\n    while (!delimiters.includes(text[selectionEnd]) && selectionEnd < text.length) selectionEnd++;\n    target.setSelectionRange(selectionStart, selectionEnd);\n    return true;\n  }\n\n  // If the user hasn't selected anything, let's select their current parenthesis block or word\n  if (!selectCurrentParenthesisBlock('<', '>') && !selectCurrentParenthesisBlock('(', ')')) selectCurrentWord();\n  event.preventDefault();\n\n  let closeCharacter = ')';\n  let delta = opts.keyedit_precision_attention;\n\n  if (selectionStart > 0 && text[selectionStart - 1] === '<') {\n    closeCharacter = '>';\n    delta = opts.keyedit_precision_extra;\n  } else if (selectionStart === 0 || text[selectionStart - 1] !== '(') {\n    while (selectionEnd > selectionStart && text[selectionEnd - 1] === ' ') selectionEnd -= 1;\n    if (selectionStart === selectionEnd) return;\n    text = `${text.slice(0, selectionStart)}(${text.slice(selectionStart, selectionEnd)}:1.0)${text.slice(selectionEnd)}`;\n    selectionStart += 1;\n    selectionEnd += 1;\n  }\n  const end = text.slice(selectionEnd + 1).indexOf(closeCharacter) + 1;\n  let weight = parseFloat(text.slice(selectionEnd + 1, selectionEnd + 1 + end));\n  if (Number.isNaN(weight)) return;\n  weight += isPlus ? delta : -delta;\n  weight = parseFloat(weight.toPrecision(12));\n  if (String(weight).length === 1) weight += '.0';\n  if (closeCharacter === ')' && weight === 1) {\n    text = text.slice(0, selectionStart - 1) + text.slice(selectionStart, selectionEnd) + text.slice(selectionEnd + 5);\n    selectionStart--;\n    selectionEnd--;\n  } else {\n    text = text.slice(0, selectionEnd + 1) + weight + text.slice(selectionEnd + 1 + end - 1);\n  }\n  target.focus();\n  target.value = text;\n  target.selectionStart = selectionStart;\n  target.selectionEnd = selectionEnd;\n  updateInput(target);\n}\n\naddEventListener('keydown', (event) => keyupEditAttention(event));\n"
  },
  {
    "path": "javascript/emerald-paradise.css",
    "content": "/* generic html tags */\n:root, .light, .dark {\n  --font: 'system-ui', 'ui-sans-serif', 'system-ui', \"Roboto\", sans-serif, 'NotoSans';\n  --font-mono: 'ui-monospace', 'Consolas', monospace;\n  --font-size: 16px;\n  --primary-100: #1e2223; /* bg color*/\n  --primary-200: #242a2c; /* drop down menu/ prompt window fill*/\n  --primary-300: #0a0c0e; /* black */\n  --primary-400: #2a302c; /* small buttons*/\n  --primary-500: #4b695d; /* main accent color green*/\n  --primary-700: #273538; /* extension box fill*/\n  --primary-800: #d15e84; /* pink(hover accent)*/\n  --highlight-color: var(--primary-500);\n  --inactive-color: var(--primary--800);\n  --body-text-color: var(--neutral-100);\n  --body-text-color-subdued: var(--neutral-300);\n  --background-color: var(--primary-100);\n  --background-fill-primary: var(--input-background-fill);\n  --input-padding: 8px;\n  --input-background-fill: var(--primary-200);\n  --input-shadow: none;\n  --button-secondary-text-color: white;\n  --button-secondary-background-fill: var(--primary-400);\n  --button-secondary-background-fill-hover: var(--primary-700);\n  --block-title-text-color: var(--neutral-300);\n  --radius-sm: 1px;\n  --radius-lg: 6px;\n  --spacing-md: 4px;\n  --spacing-xxl: 8px;\n  --line-sm: 1.2em;\n  --line-md: 1.4em;\n}\n\nhtml { font-size: var(--font-size); }\nbody, button, input, select, textarea { font-family: var(--font);}\nbutton { max-width: 400px; }\nimg { background-color: var(--background-color); }\ninput[type=range] { height: var(--line-sm); appearance: none; margin-top: 0; min-width: 160px; background-color: var(--background-color); width: 100%; background: transparent; }\ninput[type=range]::-webkit-slider-runnable-track, input[type=range]::-moz-range-track { width: 100%; height: 6px; cursor: pointer; background: var(--primary-400); border-radius: var(--radius-lg); border: 0px solid #222222; }\ninput[type=range]::-webkit-slider-thumb, input[type=range]::-moz-range-thumb { border: 0px solid #000000; height: var(--line-sm); width: 8px; border-radius: var(--radius-lg); background: white; cursor: pointer; appearance: none; margin-top: 0px; }\ninput[type=range]::-moz-range-progress {  background-color: var(--primary-500);  height: 6px;  border-radius: var(--radius-lg); }\n:root { scrollbar-color: var(--highlight-color) #333333; }\n::-webkit-scrollbar-track { background: #333333; }\n::-webkit-scrollbar-thumb { background-color: var(--highlight-color); border-radius: var(--radius-lg); border-width: 0; box-shadow: 2px 2px 3px #111111; }\ndiv.form { border-width: 0; box-shadow: none; background: transparent; overflow: visible; margin-bottom: 6px; }\ndiv.compact { gap: 1em; }\n\n/* gradio style classes */\nfieldset .gr-block.gr-box, label.block span { padding: 0; margin-top: -4px; }\n.border-2 { border-width: 0; }\n.border-b-2 { border-bottom-width: 2px; border-color: var(--highlight-color) !important; padding-bottom: 2px; margin-bottom: 8px; }\n.bg-white { color: lightyellow; background-color: var(--inactive-color); }\n.gr-box { border-radius: var(--radius-sm) !important; background-color: #111111 !important; box-shadow: 2px 2px 3px #111111; border-width: 0; padding: 4px; margin: 12px 0px 12px 0px }\n.gr-button { font-weight: normal; box-shadow: 2px 2px 3px #111111; font-size: 0.8rem; min-width: 32px; min-height: 32px; padding: 3px; margin: 3px; }\n.gr-check-radio { background-color: var(--inactive-color); border-width: 0; border-radius: var(--radius-lg); box-shadow: 2px 2px 3px #111111; }\n.gr-check-radio:checked { background-color: var(--highlight-color); }\n.gr-compact { background-color: var(--background-color); }\n.gr-form { border-width: 0; }\n.gr-input { background-color: #333333 !important; padding: 4px; margin: 4px; }\n.gr-input-label { color: lightyellow; border-width: 0; background: transparent; padding: 2px !important; }\n.gr-panel { background-color: var(--background-color); }\n.eta-bar { display: none !important }\nsvg.feather.feather-image, .feather .feather-image { display: none }\n.gap-2 { padding-top: 8px; }\n.gr-box > div > div > input.gr-text-input { right: 0; width: 4em; padding: 0; top: -12px; border: none; max-height: 20px; }\n.output-html { line-height: 1.2rem; overflow-x: hidden; }\n.output-html > div { margin-bottom: 8px; }\n.overflow-hidden .flex .flex-col .relative col .gap-4 { min-width: var(--left-column); max-width: var(--left-column); } /* this is a problematic one */\n.p-2 { padding: 0; }\n.px-4 { padding-lefT: 1rem; padding-right: 1rem; }\n.py-6 { padding-bottom: 0; }\n.tabs { background-color: var(--background-color); }\n.block.token-counter span { background-color: var(--input-background-fill) !important; box-shadow: 2px 2px 2px #111; border: none !important; font-size: 0.8rem; }\n.tab-nav { zoom: 110%; margin-top: 10px; margin-bottom: 10px; border-bottom: 2px solid var(--highlight-color) !important; padding-bottom: 2px; }\ndiv.tab-nav button.selected {background-color: var(--button-primary-background-fill);}\n#settings div.tab-nav button.selected {background-color: var(--background-color); color: var(--primary-800); font-weight: bold;}\n.label-wrap { background-color: #191919; /* extension tab color*/ padding: 16px 8px 8px 8px; border-radius: var(--radius-lg); padding-left: 8px !important; }\n.small-accordion .label-wrap { padding: 8px 0px 8px 0px; }\n.small-accordion .label-wrap .icon { margin-right: 1em; }\n.gradio-button.tool { border: none; box-shadow: none; border-radius: var(--radius-lg);}\nbutton.selected {background: var(--button-primary-background-fill);}\n.center.boundedheight.flex {background-color: var(--input-background-fill);}\n.compact {border-radius: var(--border-radius-lg);}\n#logMonitorData {background-color: var(--input-background-fill);}\n#tab_extensions table td, #tab_extensions table th, #tab_config table td, #tab_config table th { border: none; padding: 0.5em; background-color: var(--primary-200); }\n#tab_extensions table, #tab_config table { width: 96vw; }\n#tab_extensions table input[type=checkbox] {appearance: none; border-radius: 0px;}\n#tab_extensions button:hover { background-color: var(--button-secondary-background-fill-hover);}\n\n/* automatic style classes */\n.progressDiv { border-radius: var(--radius-sm) !important; position: fixed; top: 44px; right: 26px; max-width: 262px; height: 48px; z-index: 99; box-shadow: var(--button-shadow); }\n.progressDiv .progress { border-radius: var(--radius-lg) !important; background: var(--highlight-color); line-height: 3rem; height: 48px; }\n.gallery-item { box-shadow: none !important; }\n.performance { color: #888; }\n.extra-networks { border-left: 2px solid var(--highlight-color) !important; padding-left: 4px; }\n.image-buttons { gap: 10px !important; justify-content: center; }\n.image-buttons > button { max-width: 160px; }\n.tooltip { background: var(--primary-800); color: white; border: none; border-radius: var(--radius-lg) }\n#system_row > button, #settings_row > button, #config_row > button { max-width: 10em; }\n\n/* gradio elements overrides */\n#div.gradio-container { overflow-x: hidden; }\n#img2img_label_copy_to_img2img { font-weight: normal; }\n#img2img_settings { min-width: calc(2 * var(--left-column)); max-width: calc(2 * var(--left-column)); background-color: #111111; padding-top: 16px; }\n#interrogate, #deepbooru { margin: 0 0px 10px 0px; max-width: 80px; max-height: 80px; font-weight: normal; font-size: 0.95em; }\n#quicksettings .gr-button-tool { font-size: 1.6rem; box-shadow: none; margin-top: -2px; height: 2.4em; }\n#quicksettings button {padding: 0 0.5em 0.1em 0.5em;}\n#footer, #style_pos_col, #style_neg_col, #roll_col, #extras_upscaler_2, #extras_upscaler_2_visibility, #txt2img_seed_resize_from_w, #txt2img_seed_resize_from_h { display: none; }\n#save-animation { border-radius: var(--radius-sm) !important; margin-bottom: 16px; background-color: #111111; }\n#script_list { padding: 4px; margin-top: 16px; margin-bottom: 8px; }\n#settings > div.flex-wrap { width: 15em; }\n#txt2img_cfg_scale { min-width: 200px; }\n#txt2img_checkboxes, #img2img_checkboxes { background-color: transparent; }\n#txt2img_checkboxes, #img2img_checkboxes { margin-bottom: 0.2em; }\n#txt2img_actions_column, #img2img_actions_column { flex-flow: wrap; justify-content: space-between; }\n\n#extras_upscale { margin-top: 10px }\n#txt2img_progress_row > div { min-width: var(--left-column); max-width: var(--left-column); }\n#txt2img_settings { min-width: var(--left-column); max-width: var(--left-column); background-color: #111111; padding-top: 16px; }\n#pnginfo_html2_info { margin-top: -18px; background-color: var(--input-background-fill); padding: var(--input-padding) }\n#txt2img_tools, #img2img_tools { margin-top: -4px; margin-bottom: -4px; }\n#txt2img_styles_row, #img2img_styles_row { margin-top: -6px; z-index: 200; }\n\n/* based on gradio built-in dark theme */\n:root, .light, .dark {\n  --body-background-fill: var(--background-color);\n  --color-accent-soft: var(--neutral-700);\n  --background-fill-secondary: none;\n  --border-color-accent: var(--background-color);\n  --border-color-primary: var(--background-color);\n  --link-text-color-active: var(--primary-500);\n  --link-text-color: var(--secondary-500);\n  --link-text-color-hover: var(--secondary-400);\n  --link-text-color-visited: var(--secondary-600);\n  --shadow-spread: 1px;\n  --block-background-fill: None;\n  --block-border-color: var(--border-color-primary);\n  --block_border_width: None;\n  --block-info-text-color: var(--body-text-color-subdued);\n  --block-label-background-fill: var(--background-fill-secondary);\n  --block-label-border-color: var(--border-color-primary);\n  --block_label_border_width: None;\n  --block-label-text-color: var(--neutral-200);\n  --block_shadow: None;\n  --block_title_background_fill: None;\n  --block_title_border_color: None;\n  --block_title_border_width: None;\n  --panel-background-fill: var(--background-fill-secondary);\n  --panel-border-color: var(--border-color-primary);\n  --panel_border_width: None;\n  --checkbox-background-color: var(--primary-200);\n  --checkbox-background-color-focus: var(--primary-700);\n  --checkbox-background-color-hover: var(--primary-700);\n  --checkbox-background-color-selected: var(--primary-500);\n  --checkbox-border-color: transparent;\n  --checkbox-border-color-focus: var(--primary-800);\n  --checkbox-border-color-hover: var(--primary-800);\n  --checkbox-border-color-selected: var(--primary-800);\n  --checkbox-border-width: var(--input-border-width);\n  --checkbox-label-background-fill: None;\n  --checkbox-label-background-fill-hover: None;\n  --checkbox-label-background-fill-selected: var(--checkbox-label-background-fill);\n  --checkbox-label-border-color: var(--border-color-primary);\n  --checkbox-label-border-color-hover: var(--checkbox-label-border-color);\n  --checkbox-label-border-width: var(--input-border-width);\n  --checkbox-label-text-color: var(--body-text-color);\n  --checkbox-label-text-color-selected: var(--checkbox-label-text-color);\n  --error-background-fill: var(--background-fill-primary);\n  --error-border-color: var(--border-color-primary);\n  --error-text-color: #f768b7; /*was ef4444*/\n  --input-background-fill-focus: var(--secondary-600);\n  --input-background-fill-hover: var(--input-background-fill);\n  --input-border-color: var(--background-color);\n  --input-border-color-focus: var(--primary-800);\n  --input-placeholder-color: var(--neutral-500);\n  --input-shadow-focus: None;\n  --loader_color: None;\n  --slider_color: None;\n  --stat-background-fill: linear-gradient(to right, var(--primary-400), var(--primary-800));\n  --table-border-color: var(--neutral-700);\n  --table-even-background-fill: var(--primary-300);\n  --table-odd-background-fill: var(--primary-200);\n  --table-row-focus: var(--color-accent-soft);\n  --button-border-width: var(--input-border-width);\n  --button-cancel-background-fill: linear-gradient(to bottom right, #dc2626, #b91c1c);\n  --button-cancel-background-fill-hover: linear-gradient(to bottom right, #dc2626, #dc2626);\n  --button-cancel-border-color: #dc2626;\n  --button-cancel-border-color-hover: var(--button-cancel-border-color);\n  --button-cancel-text-color: white;\n  --button-cancel-text-color-hover: var(--button-cancel-text-color);\n  --button-primary-background-fill: var(--primary-500);\n  --button-primary-background-fill-hover: var(--primary-800);\n  --button-primary-border-color: var(--primary-500);\n  --button-primary-border-color-hover: var(--button-primary-border-color);\n  --button-primary-text-color: white;\n  --button-primary-text-color-hover: var(--button-primary-text-color);\n  --button-secondary-border-color: var(--neutral-600);\n  --button-secondary-border-color-hover: var(--button-secondary-border-color);\n  --button-secondary-text-color-hover: var(--button-secondary-text-color);\n  --secondary-50: #eff6ff;\n  --secondary-100: #dbeafe;\n  --secondary-200: #bfdbfe;\n  --secondary-300: #93c5fd;\n  --secondary-400: #60a5fa;\n  --secondary-500: #3b82f6;\n  --secondary-600: #2563eb;\n  --secondary-700: #1d4ed8;\n  --secondary-800: #1e40af;\n  --secondary-900: #1e3a8a;\n  --secondary-950: #1d3660;\n  --neutral-50: #f0f0f0; /*  */\n  --neutral-100: #e8e8e3;/* majority of text (neutral gray yellow) */\n  --neutral-200: #d0d0d0;\n  --neutral-300: #b3b5ac; /* top tab /sub text (light accent) */\n  --neutral-400: #ffba85;/* tab title (bright orange) */\n  --neutral-500: #48665b; /* prompt text (desat accent)*/\n  --neutral-600: #373f39; /* tab outline color (accent color)*/\n  --neutral-700: #2b373b; /* small settings tab accent */\n  --neutral-800: #f379c2; /* bright pink accent */\n  --neutral-900: #111827;\n  --neutral-950: #0b0f19;\n  --radius-xxs: 0;\n  --radius-xs: 0;\n  --radius-md: 0;\n  --radius-xl: 0;\n  --radius-xxl: 0;\n  --body-text-size: var(--text-md);\n  --body-text-weight: 400;\n  --embed-radius: var(--radius-lg);\n  --color-accent: var(--primary-500);\n  --shadow-drop: 0;\n  --shadow-drop-lg: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n  --shadow-inset: rgba(0,0,0,0.05) 0px 2px 4px 0px inset;\n  --block-border-width: 1px;\n  --block-info-text-size: var(--text-sm);\n  --block-info-text-weight: 400;\n  --block-label-border-width: 1px;\n  --block-label-margin: 0;\n  --block-label-padding: var(--spacing-sm) var(--spacing-lg);\n  --block-label-radius: calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px) 0;\n  --block-label-right-radius: 0 calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px);\n  --block-label-text-size: var(--text-sm);\n  --block-label-text-weight: 400;\n  --block-padding: var(--spacing-xl) calc(var(--spacing-xl) + 2px);\n  --block-radius: var(--radius-lg);\n  --block-shadow: var(--shadow-drop);\n  --block-title-background-fill: none;\n  --block-title-border-color: none;\n  --block-title-border-width: 0;\n  --block-title-padding: 0;\n  --block-title-radius: none;\n  --block-title-text-size: var(--text-md);\n  --block-title-text-weight: 400;\n  --container-radius: var(--radius-lg);\n  --form-gap-width: 1px;\n  --layout-gap: var(--spacing-xxl);\n  --panel-border-width: 0;\n  --section-header-text-size: var(--text-md);\n  --section-header-text-weight: 400;\n  --checkbox-border-radius: var(--radius-sm);\n  --checkbox-label-gap: 2px;\n  --checkbox-label-padding: var(--spacing-md);\n  --checkbox-label-shadow: var(--shadow-drop);\n  --checkbox-label-text-size: var(--text-md);\n  --checkbox-label-text-weight: 400;\n  --checkbox-check: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e\");\n  --radio-circle: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e\");\n  --checkbox-shadow: var(--input-shadow);\n  --error-border-width: 1px;\n  --input-border-width: 1px;\n  --input-radius: var(--radius-lg);\n  --input-text-size: var(--text-md);\n  --input-text-weight: 400;\n  --loader-color: var(--color-accent);\n  --prose-text-size: var(--text-md);\n  --prose-text-weight: 400;\n  --prose-header-text-weight: 600;\n  --slider-color: ;\n  --table-radius: var(--radius-lg);\n  --button-large-padding: 2px 6px;\n  --button-large-radius: var(--radius-lg);\n  --button-large-text-size: var(--text-lg);\n  --button-large-text-weight: 400;\n  --button-shadow: none;\n  --button-shadow-active: none;\n  --button-shadow-hover: none;\n  --button-small-padding: var(--spacing-sm) calc(2 * var(--spacing-sm));\n  --button-small-radius: var(--radius-lg);\n  --button-small-text-size: var(--text-md);\n  --button-small-text-weight: 400;\n  --button-transition: none;\n  --size-9: 64px;\n  --size-14: 64px;\n}\n"
  },
  {
    "path": "javascript/exifr.js",
    "content": "!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?t(exports):\"function\"==typeof define&&define.amd?define(\"exifr\",[\"exports\"],t):t((e=\"undefined\"!=typeof globalThis?globalThis:e||self).exifr={})}(this,(function(e){\"use strict\";var t=\"undefined\"!=typeof self?self:global;const i=\"undefined\"!=typeof navigator,n=i&&\"undefined\"==typeof HTMLImageElement,s=!(\"undefined\"==typeof global||\"undefined\"==typeof process||!process.versions||!process.versions.node),r=t.Buffer,a=t.BigInt,o=!!r,l=e=>e;function h(e,t=l){if(s)try{return\"function\"==typeof require?Promise.resolve(t(require(e))):import(/* webpackIgnore: true */ e).then(t)}catch(t){console.warn(`Couldn't load ${e}`)}}let u=t.fetch;const c=e=>u=e;if(!t.fetch){const e=h(\"http\",(e=>e)),t=h(\"https\",(e=>e)),i=(n,{headers:s}={})=>new Promise((async(r,a)=>{let{port:o,hostname:l,pathname:h,protocol:u,search:c}=new URL(n);const f={method:\"GET\",hostname:l,path:encodeURI(h)+c,headers:s};\"\"!==o&&(f.port=Number(o));const d=(\"https:\"===u?await t:await e).request(f,(e=>{if(301===e.statusCode||302===e.statusCode){let t=new URL(e.headers.location,n).toString();return i(t,{headers:s}).then(r).catch(a)}r({status:e.statusCode,arrayBuffer:()=>new Promise((t=>{let i=[];e.on(\"data\",(e=>i.push(e))),e.on(\"end\",(()=>t(Buffer.concat(i))))}))})}));d.on(\"error\",a),d.end()}));c(i)}function f(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}const d=e=>g(e)?void 0:e,p=e=>void 0!==e;function g(e){return void 0===e||(e instanceof Map?0===e.size:0===Object.values(e).filter(p).length)}function m(e){let t=new Error(e);throw delete t.stack,t}function S(e){return\"\"===(e=function(e){for(;e.endsWith(\"\\0\");)e=e.slice(0,-1);return e}(e).trim())?void 0:e}function C(e){let t=function(e){let t=0;return e.ifd0.enabled&&(t+=1024),e.exif.enabled&&(t+=2048),e.makerNote&&(t+=2048),e.userComment&&(t+=1024),e.gps.enabled&&(t+=512),e.interop.enabled&&(t+=100),e.ifd1.enabled&&(t+=1024),t+2048}(e);return e.jfif.enabled&&(t+=50),e.xmp.enabled&&(t+=2e4),e.iptc.enabled&&(t+=14e3),e.icc.enabled&&(t+=6e3),t}const y=e=>String.fromCharCode.apply(null,e),b=\"undefined\"!=typeof TextDecoder?new TextDecoder(\"utf-8\"):void 0;function P(e){return b?b.decode(e):o?Buffer.from(e).toString(\"utf8\"):decodeURIComponent(escape(y(e)))}class I{static from(e,t){return e instanceof this&&e.le===t?e:new I(e,void 0,void 0,t)}constructor(e,t=0,i,n){if(\"boolean\"==typeof n&&(this.le=n),Array.isArray(e)&&(e=new Uint8Array(e)),0===e)this.byteOffset=0,this.byteLength=0;else if(e instanceof ArrayBuffer){void 0===i&&(i=e.byteLength-t);let n=new DataView(e,t,i);this._swapDataView(n)}else if(e instanceof Uint8Array||e instanceof DataView||e instanceof I){void 0===i&&(i=e.byteLength-t),(t+=e.byteOffset)+i>e.byteOffset+e.byteLength&&m(\"Creating view outside of available memory in ArrayBuffer\");let n=new DataView(e.buffer,t,i);this._swapDataView(n)}else if(\"number\"==typeof e){let t=new DataView(new ArrayBuffer(e));this._swapDataView(t)}else m(\"Invalid input argument for BufferView: \"+e)}_swapArrayBuffer(e){this._swapDataView(new DataView(e))}_swapBuffer(e){this._swapDataView(new DataView(e.buffer,e.byteOffset,e.byteLength))}_swapDataView(e){this.dataView=e,this.buffer=e.buffer,this.byteOffset=e.byteOffset,this.byteLength=e.byteLength}_lengthToEnd(e){return this.byteLength-e}set(e,t,i=I){return e instanceof DataView||e instanceof I?e=new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e instanceof ArrayBuffer&&(e=new Uint8Array(e)),e instanceof Uint8Array||m(\"BufferView.set(): Invalid data argument.\"),this.toUint8().set(e,t),new i(this,t,e.byteLength)}subarray(e,t){return t=t||this._lengthToEnd(e),new I(this,e,t)}toUint8(){return new Uint8Array(this.buffer,this.byteOffset,this.byteLength)}getUint8Array(e,t){return new Uint8Array(this.buffer,this.byteOffset+e,t)}getString(e=0,t=this.byteLength){return P(this.getUint8Array(e,t))}getLatin1String(e=0,t=this.byteLength){let i=this.getUint8Array(e,t);return y(i)}getUnicodeString(e=0,t=this.byteLength){const i=[];for(let n=0;n<t&&e+n<this.byteLength;n+=2)i.push(this.getUint16(e+n));return y(i)}getInt8(e){return this.dataView.getInt8(e)}getUint8(e){return this.dataView.getUint8(e)}getInt16(e,t=this.le){return this.dataView.getInt16(e,t)}getInt32(e,t=this.le){return this.dataView.getInt32(e,t)}getUint16(e,t=this.le){return this.dataView.getUint16(e,t)}getUint32(e,t=this.le){return this.dataView.getUint32(e,t)}getFloat32(e,t=this.le){return this.dataView.getFloat32(e,t)}getFloat64(e,t=this.le){return this.dataView.getFloat64(e,t)}getFloat(e,t=this.le){return this.dataView.getFloat32(e,t)}getDouble(e,t=this.le){return this.dataView.getFloat64(e,t)}getUintBytes(e,t,i){switch(t){case 1:return this.getUint8(e,i);case 2:return this.getUint16(e,i);case 4:return this.getUint32(e,i);case 8:return this.getUint64&&this.getUint64(e,i)}}getUint(e,t,i){switch(t){case 8:return this.getUint8(e,i);case 16:return this.getUint16(e,i);case 32:return this.getUint32(e,i);case 64:return this.getUint64&&this.getUint64(e,i)}}toString(e){return this.dataView.toString(e,this.constructor.name)}ensureChunk(){}}function k(e,t){m(`${e} '${t}' was not loaded, try using full build of exifr.`)}class w extends Map{constructor(e){super(),this.kind=e}get(e,t){return this.has(e)||k(this.kind,e),t&&(e in t||function(e,t){m(`Unknown ${e} '${t}'.`)}(this.kind,e),t[e].enabled||k(this.kind,e)),super.get(e)}keyList(){return Array.from(this.keys())}}var T=new w(\"file parser\"),A=new w(\"segment parser\"),D=new w(\"file reader\");const O=\"Invalid input argument\";function x(e,t){return\"string\"==typeof e?v(e,t):i&&!n&&e instanceof HTMLImageElement?v(e.src,t):e instanceof Uint8Array||e instanceof ArrayBuffer||e instanceof DataView?new I(e):i&&e instanceof Blob?M(e,t,\"blob\",U):void m(O)}function v(e,t){return(n=e).startsWith(\"data:\")||n.length>1e4?R(e,t,\"base64\"):s&&e.includes(\"://\")?M(e,t,\"url\",L):s?R(e,t,\"fs\"):i?M(e,t,\"url\",L):void m(O);var n}async function M(e,t,i,n){return D.has(i)?R(e,t,i):n?async function(e,t){let i=await t(e);return new I(i)}(e,n):void m(`Parser ${i} is not loaded`)}async function R(e,t,i){let n=new(D.get(i))(e,t);return await n.read(),n}const L=e=>u(e).then((e=>e.arrayBuffer())),U=e=>new Promise(((t,i)=>{let n=new FileReader;n.onloadend=()=>t(n.result||new ArrayBuffer),n.onerror=i,n.readAsArrayBuffer(e)}));class F extends Map{get tagKeys(){return this.allKeys||(this.allKeys=Array.from(this.keys())),this.allKeys}get tagValues(){return this.allValues||(this.allValues=Array.from(this.values())),this.allValues}}function B(e,t,i){let n=new F;for(let[e,t]of i)n.set(e,t);if(Array.isArray(t))for(let i of t)e.set(i,n);else e.set(t,n);return n}function E(e,t,i){let n,s=e.get(t);for(n of i)s.set(n[0],n[1])}const N=new Map,G=new Map,V=new Map,z=37500,H=37510,j=700,W=33723,K=34675,X=34665,_=34853,Y=40965,$=[\"chunked\",\"firstChunkSize\",\"firstChunkSizeNode\",\"firstChunkSizeBrowser\",\"chunkSize\",\"chunkLimit\"],J=[\"jfif\",\"xmp\",\"icc\",\"iptc\",\"ihdr\"],q=[\"tiff\",...J],Q=[\"ifd0\",\"ifd1\",\"exif\",\"gps\",\"interop\"],Z=[...q,...Q],ee=[\"makerNote\",\"userComment\"],te=[\"translateKeys\",\"translateValues\",\"reviveValues\",\"multiSegment\"],ie=[...te,\"sanitize\",\"mergeOutput\",\"silentErrors\"];class ne{get translate(){return this.translateKeys||this.translateValues||this.reviveValues}}class se extends ne{get needed(){return this.enabled||this.deps.size>0}constructor(e,t,i,n){if(super(),f(this,\"enabled\",!1),f(this,\"skip\",new Set),f(this,\"pick\",new Set),f(this,\"deps\",new Set),f(this,\"translateKeys\",!1),f(this,\"translateValues\",!1),f(this,\"reviveValues\",!1),this.key=e,this.enabled=t,this.parse=this.enabled,this.applyInheritables(n),this.canBeFiltered=Q.includes(e),this.canBeFiltered&&(this.dict=N.get(e)),void 0!==i)if(Array.isArray(i))this.parse=this.enabled=!0,this.canBeFiltered&&i.length>0&&this.translateTagSet(i,this.pick);else if(\"object\"==typeof i){if(this.enabled=!0,this.parse=!1!==i.parse,this.canBeFiltered){let{pick:e,skip:t}=i;e&&e.length>0&&this.translateTagSet(e,this.pick),t&&t.length>0&&this.translateTagSet(t,this.skip)}this.applyInheritables(i)}else!0===i||!1===i?this.parse=this.enabled=i:m(`Invalid options argument: ${i}`)}applyInheritables(e){let t,i;for(t of te)i=e[t],void 0!==i&&(this[t]=i)}translateTagSet(e,t){if(this.dict){let i,n,{tagKeys:s,tagValues:r}=this.dict;for(i of e)\"string\"==typeof i?(n=r.indexOf(i),-1===n&&(n=s.indexOf(Number(i))),-1!==n&&t.add(Number(s[n]))):t.add(i)}else for(let i of e)t.add(i)}finalizeFilters(){!this.enabled&&this.deps.size>0?(this.enabled=!0,ue(this.pick,this.deps)):this.enabled&&this.pick.size>0&&ue(this.pick,this.deps)}}var re={jfif:!1,tiff:!0,xmp:!1,icc:!1,iptc:!1,ifd0:!0,ifd1:!1,exif:!0,gps:!0,interop:!1,ihdr:void 0,makerNote:!1,userComment:!1,multiSegment:!1,skip:[],pick:[],translateKeys:!0,translateValues:!0,reviveValues:!0,sanitize:!0,mergeOutput:!0,silentErrors:!0,chunked:!0,firstChunkSize:void 0,firstChunkSizeNode:512,firstChunkSizeBrowser:65536,chunkSize:65536,chunkLimit:5},ae=new Map;class oe extends ne{static useCached(e){let t=ae.get(e);return void 0!==t||(t=new this(e),ae.set(e,t)),t}constructor(e){super(),!0===e?this.setupFromTrue():void 0===e?this.setupFromUndefined():Array.isArray(e)?this.setupFromArray(e):\"object\"==typeof e?this.setupFromObject(e):m(`Invalid options argument ${e}`),void 0===this.firstChunkSize&&(this.firstChunkSize=i?this.firstChunkSizeBrowser:this.firstChunkSizeNode),this.mergeOutput&&(this.ifd1.enabled=!1),this.filterNestedSegmentTags(),this.traverseTiffDependencyTree(),this.checkLoadedPlugins()}setupFromUndefined(){let e;for(e of $)this[e]=re[e];for(e of ie)this[e]=re[e];for(e of ee)this[e]=re[e];for(e of Z)this[e]=new se(e,re[e],void 0,this)}setupFromTrue(){let e;for(e of $)this[e]=re[e];for(e of ie)this[e]=re[e];for(e of ee)this[e]=!0;for(e of Z)this[e]=new se(e,!0,void 0,this)}setupFromArray(e){let t;for(t of $)this[t]=re[t];for(t of ie)this[t]=re[t];for(t of ee)this[t]=re[t];for(t of Z)this[t]=new se(t,!1,void 0,this);this.setupGlobalFilters(e,void 0,Q)}setupFromObject(e){let t;for(t of(Q.ifd0=Q.ifd0||Q.image,Q.ifd1=Q.ifd1||Q.thumbnail,Object.assign(this,e),$))this[t]=he(e[t],re[t]);for(t of ie)this[t]=he(e[t],re[t]);for(t of ee)this[t]=he(e[t],re[t]);for(t of q)this[t]=new se(t,re[t],e[t],this);for(t of Q)this[t]=new se(t,re[t],e[t],this.tiff);this.setupGlobalFilters(e.pick,e.skip,Q,Z),!0===e.tiff?this.batchEnableWithBool(Q,!0):!1===e.tiff?this.batchEnableWithUserValue(Q,e):Array.isArray(e.tiff)?this.setupGlobalFilters(e.tiff,void 0,Q):\"object\"==typeof e.tiff&&this.setupGlobalFilters(e.tiff.pick,e.tiff.skip,Q)}batchEnableWithBool(e,t){for(let i of e)this[i].enabled=t}batchEnableWithUserValue(e,t){for(let i of e){let e=t[i];this[i].enabled=!1!==e&&void 0!==e}}setupGlobalFilters(e,t,i,n=i){if(e&&e.length){for(let e of n)this[e].enabled=!1;let t=le(e,i);for(let[e,i]of t)ue(this[e].pick,i),this[e].enabled=!0}else if(t&&t.length){let e=le(t,i);for(let[t,i]of e)ue(this[t].skip,i)}}filterNestedSegmentTags(){let{ifd0:e,exif:t,xmp:i,iptc:n,icc:s}=this;this.makerNote?t.deps.add(z):t.skip.add(z),this.userComment?t.deps.add(H):t.skip.add(H),i.enabled||e.skip.add(j),n.enabled||e.skip.add(W),s.enabled||e.skip.add(K)}traverseTiffDependencyTree(){let{ifd0:e,exif:t,gps:i,interop:n}=this;n.needed&&(t.deps.add(Y),e.deps.add(Y)),t.needed&&e.deps.add(X),i.needed&&e.deps.add(_),this.tiff.enabled=Q.some((e=>!0===this[e].enabled))||this.makerNote||this.userComment;for(let e of Q)this[e].finalizeFilters()}get onlyTiff(){return!J.map((e=>this[e].enabled)).some((e=>!0===e))&&this.tiff.enabled}checkLoadedPlugins(){for(let e of q)this[e].enabled&&!A.has(e)&&k(\"segment parser\",e)}}function le(e,t){let i,n,s,r,a=[];for(s of t){for(r of(i=N.get(s),n=[],i))(e.includes(r[0])||e.includes(r[1]))&&n.push(r[0]);n.length&&a.push([s,n])}return a}function he(e,t){return void 0!==e?e:void 0!==t?t:void 0}function ue(e,t){for(let i of t)e.add(i)}f(oe,\"default\",re);class ce{constructor(e){f(this,\"parsers\",{}),f(this,\"output\",{}),f(this,\"errors\",[]),f(this,\"pushToErrors\",(e=>this.errors.push(e))),this.options=oe.useCached(e)}async read(e){this.file=await x(e,this.options)}setup(){if(this.fileParser)return;let{file:e}=this,t=e.getUint16(0);for(let[i,n]of T)if(n.canHandle(e,t))return this.fileParser=new n(this.options,this.file,this.parsers),e[i]=!0;this.file.close&&this.file.close(),m(\"Unknown file format\")}async parse(){let{output:e,errors:t}=this;return this.setup(),this.options.silentErrors?(await this.executeParsers().catch(this.pushToErrors),t.push(...this.fileParser.errors)):await this.executeParsers(),this.file.close&&this.file.close(),this.options.silentErrors&&t.length>0&&(e.errors=t),d(e)}async executeParsers(){let{output:e}=this;await this.fileParser.parse();let t=Object.values(this.parsers).map((async t=>{let i=await t.parse();t.assignToOutput(e,i)}));this.options.silentErrors&&(t=t.map((e=>e.catch(this.pushToErrors)))),await Promise.all(t)}async extractThumbnail(){this.setup();let{options:e,file:t}=this,i=A.get(\"tiff\",e);var n;if(t.tiff?n={start:0,type:\"tiff\"}:t.jpeg&&(n=await this.fileParser.getOrFindSegment(\"tiff\")),void 0===n)return;let s=await this.fileParser.ensureSegmentChunk(n),r=this.parsers.tiff=new i(s,e,t),a=await r.extractThumbnail();return t.close&&t.close(),a}}async function fe(e,t){let i=new ce(t);return await i.read(e),i.parse()}var de=Object.freeze({__proto__:null,parse:fe,Exifr:ce,fileParsers:T,segmentParsers:A,fileReaders:D,tagKeys:N,tagValues:G,tagRevivers:V,createDictionary:B,extendDictionary:E,fetchUrlAsArrayBuffer:L,readBlobAsArrayBuffer:U,chunkedProps:$,otherSegments:J,segments:q,tiffBlocks:Q,segmentsAndBlocks:Z,tiffExtractables:ee,inheritables:te,allFormatters:ie,Options:oe});class pe{constructor(e,t,i){f(this,\"errors\",[]),f(this,\"ensureSegmentChunk\",(async e=>{let t=e.start,i=e.size||65536;if(this.file.chunked)if(this.file.available(t,i))e.chunk=this.file.subarray(t,i);else try{e.chunk=await this.file.readChunk(t,i)}catch(t){m(`Couldn't read segment: ${JSON.stringify(e)}. ${t.message}`)}else this.file.byteLength>t+i?e.chunk=this.file.subarray(t,i):void 0===e.size?e.chunk=this.file.subarray(t):m(\"Segment unreachable: \"+JSON.stringify(e));return e.chunk})),this.extendOptions&&this.extendOptions(e),this.options=e,this.file=t,this.parsers=i}injectSegment(e,t){this.options[e].enabled&&this.createParser(e,t)}createParser(e,t){let i=new(A.get(e))(t,this.options,this.file);return this.parsers[e]=i}createParsers(e){for(let t of e){let{type:e,chunk:i}=t,n=this.options[e];if(n&&n.enabled){let t=this.parsers[e];t&&t.append||t||this.createParser(e,i)}}}async readSegments(e){let t=e.map(this.ensureSegmentChunk);await Promise.all(t)}}class ge{static findPosition(e,t){let i=e.getUint16(t+2)+2,n=\"function\"==typeof this.headerLength?this.headerLength(e,t,i):this.headerLength,s=t+n,r=i-n;return{offset:t,length:i,headerLength:n,start:s,size:r,end:s+r}}static parse(e,t={}){return new this(e,new oe({[this.type]:t}),e).parse()}normalizeInput(e){return e instanceof I?e:new I(e)}constructor(e,t={},i){f(this,\"errors\",[]),f(this,\"raw\",new Map),f(this,\"handleError\",(e=>{if(!this.options.silentErrors)throw e;this.errors.push(e.message)})),this.chunk=this.normalizeInput(e),this.file=i,this.type=this.constructor.type,this.globalOptions=this.options=t,this.localOptions=t[this.type],this.canTranslate=this.localOptions&&this.localOptions.translate}translate(){this.canTranslate&&(this.translated=this.translateBlock(this.raw,this.type))}get output(){return this.translated?this.translated:this.raw?Object.fromEntries(this.raw):void 0}translateBlock(e,t){let i=V.get(t),n=G.get(t),s=N.get(t),r=this.options[t],a=r.reviveValues&&!!i,o=r.translateValues&&!!n,l=r.translateKeys&&!!s,h={};for(let[t,r]of e)a&&i.has(t)?r=i.get(t)(r):o&&n.has(t)&&(r=this.translateValue(r,n.get(t))),l&&s.has(t)&&(t=s.get(t)||t),h[t]=r;return h}translateValue(e,t){return t[e]||t.DEFAULT||e}assignToOutput(e,t){this.assignObjectToOutput(e,this.constructor.type,t)}assignObjectToOutput(e,t,i){if(this.globalOptions.mergeOutput)return Object.assign(e,i);e[t]?Object.assign(e[t],i):e[t]=i}}f(ge,\"headerLength\",4),f(ge,\"type\",void 0),f(ge,\"multiSegment\",!1),f(ge,\"canHandle\",(()=>!1));function me(e){return 192===e||194===e||196===e||219===e||221===e||218===e||254===e}function Se(e){return e>=224&&e<=239}function Ce(e,t,i){for(let[n,s]of A)if(s.canHandle(e,t,i))return n}class ye extends pe{constructor(...e){super(...e),f(this,\"appSegments\",[]),f(this,\"jpegSegments\",[]),f(this,\"unknownSegments\",[])}static canHandle(e,t){return 65496===t}async parse(){await this.findAppSegments(),await this.readSegments(this.appSegments),this.mergeMultiSegments(),this.createParsers(this.mergedAppSegments||this.appSegments)}setupSegmentFinderArgs(e){!0===e?(this.findAll=!0,this.wanted=new Set(A.keyList())):(e=void 0===e?A.keyList().filter((e=>this.options[e].enabled)):e.filter((e=>this.options[e].enabled&&A.has(e))),this.findAll=!1,this.remaining=new Set(e),this.wanted=new Set(e)),this.unfinishedMultiSegment=!1}async findAppSegments(e=0,t){this.setupSegmentFinderArgs(t);let{file:i,findAll:n,wanted:s,remaining:r}=this;if(!n&&this.file.chunked&&(n=Array.from(s).some((e=>{let t=A.get(e),i=this.options[e];return t.multiSegment&&i.multiSegment})),n&&await this.file.readWhole()),e=this.findAppSegmentsInRange(e,i.byteLength),!this.options.onlyTiff&&i.chunked){let t=!1;for(;r.size>0&&!t&&(i.canReadNextChunk||this.unfinishedMultiSegment);){let{nextChunkOffset:n}=i,s=this.appSegments.some((e=>!this.file.available(e.offset||e.start,e.length||e.size)));if(t=e>n&&!s?!await i.readNextChunk(e):!await i.readNextChunk(n),void 0===(e=this.findAppSegmentsInRange(e,i.byteLength)))return}}}findAppSegmentsInRange(e,t){t-=2;let i,n,s,r,a,o,{file:l,findAll:h,wanted:u,remaining:c,options:f}=this;for(;e<t;e++)if(255===l.getUint8(e))if(i=l.getUint8(e+1),Se(i)){if(n=l.getUint16(e+2),s=Ce(l,e,n),s&&u.has(s)&&(r=A.get(s),a=r.findPosition(l,e),o=f[s],a.type=s,this.appSegments.push(a),!h&&(r.multiSegment&&o.multiSegment?(this.unfinishedMultiSegment=a.chunkNumber<a.chunkCount,this.unfinishedMultiSegment||c.delete(s)):c.delete(s),0===c.size)))break;f.recordUnknownSegments&&(a=ge.findPosition(l,e),a.marker=i,this.unknownSegments.push(a)),e+=n+1}else if(me(i)){if(n=l.getUint16(e+2),218===i&&!1!==f.stopAfterSos)return;f.recordJpegSegments&&this.jpegSegments.push({offset:e,length:n,marker:i}),e+=n+1}return e}mergeMultiSegments(){if(!this.appSegments.some((e=>e.multiSegment)))return;let e=function(e,t){let i,n,s,r=new Map;for(let a=0;a<e.length;a++)i=e[a],n=i[t],r.has(n)?s=r.get(n):r.set(n,s=[]),s.push(i);return Array.from(r)}(this.appSegments,\"type\");this.mergedAppSegments=e.map((([e,t])=>{let i=A.get(e,this.options);if(i.handleMultiSegments){return{type:e,chunk:i.handleMultiSegments(t)}}return t[0]}))}getSegment(e){return this.appSegments.find((t=>t.type===e))}async getOrFindSegment(e){let t=this.getSegment(e);return void 0===t&&(await this.findAppSegments(0,[e]),t=this.getSegment(e)),t}}f(ye,\"type\",\"jpeg\"),T.set(\"jpeg\",ye);const be=[void 0,1,1,2,4,8,1,1,2,4,8,4,8,4];class Pe extends ge{parseHeader(){var e=this.chunk.getUint16();18761===e?this.le=!0:19789===e&&(this.le=!1),this.chunk.le=this.le,this.headerParsed=!0}parseTags(e,t,i=new Map){let{pick:n,skip:s}=this.options[t];n=new Set(n);let r=n.size>0,a=0===s.size,o=this.chunk.getUint16(e);e+=2;for(let l=0;l<o;l++){let o=this.chunk.getUint16(e);if(r){if(n.has(o)&&(i.set(o,this.parseTag(e,o,t)),n.delete(o),0===n.size))break}else!a&&s.has(o)||i.set(o,this.parseTag(e,o,t));e+=12}return i}parseTag(e,t,i){let{chunk:n}=this,s=n.getUint16(e+2),r=n.getUint32(e+4),a=be[s];if(a*r<=4?e+=8:e=n.getUint32(e+8),(s<1||s>13)&&m(`Invalid TIFF value type. block: ${i.toUpperCase()}, tag: ${t.toString(16)}, type: ${s}, offset ${e}`),e>n.byteLength&&m(`Invalid TIFF value offset. block: ${i.toUpperCase()}, tag: ${t.toString(16)}, type: ${s}, offset ${e} is outside of chunk size ${n.byteLength}`),1===s)return n.getUint8Array(e,r);if(2===s)return S(n.getString(e,r));if(7===s)return n.getUint8Array(e,r);if(1===r)return this.parseTagValue(s,e);{let t=new(function(e){switch(e){case 1:return Uint8Array;case 3:return Uint16Array;case 4:return Uint32Array;case 5:return Array;case 6:return Int8Array;case 8:return Int16Array;case 9:return Int32Array;case 10:return Array;case 11:return Float32Array;case 12:return Float64Array;default:return Array}}(s))(r),i=a;for(let n=0;n<r;n++)t[n]=this.parseTagValue(s,e),e+=i;return t}}parseTagValue(e,t){let{chunk:i}=this;switch(e){case 1:return i.getUint8(t);case 3:return i.getUint16(t);case 4:return i.getUint32(t);case 5:return i.getUint32(t)/i.getUint32(t+4);case 6:return i.getInt8(t);case 8:return i.getInt16(t);case 9:return i.getInt32(t);case 10:return i.getInt32(t)/i.getInt32(t+4);case 11:return i.getFloat(t);case 12:return i.getDouble(t);case 13:return i.getUint32(t);default:m(`Invalid tiff type ${e}`)}}}class Ie extends Pe{static canHandle(e,t){return 225===e.getUint8(t+1)&&1165519206===e.getUint32(t+4)&&0===e.getUint16(t+8)}async parse(){this.parseHeader();let{options:e}=this;return e.ifd0.enabled&&await this.parseIfd0Block(),e.exif.enabled&&await this.safeParse(\"parseExifBlock\"),e.gps.enabled&&await this.safeParse(\"parseGpsBlock\"),e.interop.enabled&&await this.safeParse(\"parseInteropBlock\"),e.ifd1.enabled&&await this.safeParse(\"parseThumbnailBlock\"),this.createOutput()}safeParse(e){let t=this[e]();return void 0!==t.catch&&(t=t.catch(this.handleError)),t}findIfd0Offset(){void 0===this.ifd0Offset&&(this.ifd0Offset=this.chunk.getUint32(4))}findIfd1Offset(){if(void 0===this.ifd1Offset){this.findIfd0Offset();let e=this.chunk.getUint16(this.ifd0Offset),t=this.ifd0Offset+2+12*e;this.ifd1Offset=this.chunk.getUint32(t)}}parseBlock(e,t){let i=new Map;return this[t]=i,this.parseTags(e,t,i),i}async parseIfd0Block(){if(this.ifd0)return;let{file:e}=this;this.findIfd0Offset(),this.ifd0Offset<8&&m(\"Malformed EXIF data\"),!e.chunked&&this.ifd0Offset>e.byteLength&&m(`IFD0 offset points to outside of file.\\nthis.ifd0Offset: ${this.ifd0Offset}, file.byteLength: ${e.byteLength}`),e.tiff&&await e.ensureChunk(this.ifd0Offset,C(this.options));let t=this.parseBlock(this.ifd0Offset,\"ifd0\");return 0!==t.size?(this.exifOffset=t.get(X),this.interopOffset=t.get(Y),this.gpsOffset=t.get(_),this.xmp=t.get(j),this.iptc=t.get(W),this.icc=t.get(K),this.options.sanitize&&(t.delete(X),t.delete(Y),t.delete(_),t.delete(j),t.delete(W),t.delete(K)),t):void 0}async parseExifBlock(){if(this.exif)return;if(this.ifd0||await this.parseIfd0Block(),void 0===this.exifOffset)return;this.file.tiff&&await this.file.ensureChunk(this.exifOffset,C(this.options));let e=this.parseBlock(this.exifOffset,\"exif\");return this.interopOffset||(this.interopOffset=e.get(Y)),this.makerNote=e.get(z),this.userComment=e.get(H),this.options.sanitize&&(e.delete(Y),e.delete(z),e.delete(H)),this.unpack(e,41728),this.unpack(e,41729),e}unpack(e,t){let i=e.get(t);i&&1===i.length&&e.set(t,i[0])}async parseGpsBlock(){if(this.gps)return;if(this.ifd0||await this.parseIfd0Block(),void 0===this.gpsOffset)return;let e=this.parseBlock(this.gpsOffset,\"gps\");return e&&e.has(2)&&e.has(4)&&(e.set(\"latitude\",ke(...e.get(2),e.get(1))),e.set(\"longitude\",ke(...e.get(4),e.get(3)))),e}async parseInteropBlock(){if(!this.interop&&(this.ifd0||await this.parseIfd0Block(),void 0!==this.interopOffset||this.exif||await this.parseExifBlock(),void 0!==this.interopOffset))return this.parseBlock(this.interopOffset,\"interop\")}async parseThumbnailBlock(e=!1){if(!this.ifd1&&!this.ifd1Parsed&&(!this.options.mergeOutput||e))return this.findIfd1Offset(),this.ifd1Offset>0&&(this.parseBlock(this.ifd1Offset,\"ifd1\"),this.ifd1Parsed=!0),this.ifd1}async extractThumbnail(){if(this.headerParsed||this.parseHeader(),this.ifd1Parsed||await this.parseThumbnailBlock(!0),void 0===this.ifd1)return;let e=this.ifd1.get(513),t=this.ifd1.get(514);return this.chunk.getUint8Array(e,t)}get image(){return this.ifd0}get thumbnail(){return this.ifd1}createOutput(){let e,t,i,n={};for(t of Q)if(e=this[t],!g(e))if(i=this.canTranslate?this.translateBlock(e,t):Object.fromEntries(e),this.options.mergeOutput){if(\"ifd1\"===t)continue;Object.assign(n,i)}else n[t]=i;return this.makerNote&&(n.makerNote=this.makerNote),this.userComment&&(n.userComment=this.userComment),n}assignToOutput(e,t){if(this.globalOptions.mergeOutput)Object.assign(e,t);else for(let[i,n]of Object.entries(t))this.assignObjectToOutput(e,i,n)}}function ke(e,t,i,n){var s=e+t/60+i/3600;return\"S\"!==n&&\"W\"!==n||(s*=-1),s}f(Ie,\"type\",\"tiff\"),f(Ie,\"headerLength\",10),A.set(\"tiff\",Ie);var we=Object.freeze({__proto__:null,default:de,Exifr:ce,fileParsers:T,segmentParsers:A,fileReaders:D,tagKeys:N,tagValues:G,tagRevivers:V,createDictionary:B,extendDictionary:E,fetchUrlAsArrayBuffer:L,readBlobAsArrayBuffer:U,chunkedProps:$,otherSegments:J,segments:q,tiffBlocks:Q,segmentsAndBlocks:Z,tiffExtractables:ee,inheritables:te,allFormatters:ie,Options:oe,parse:fe});const Te={ifd0:!1,ifd1:!1,exif:!1,gps:!1,interop:!1,sanitize:!1,reviveValues:!0,translateKeys:!1,translateValues:!1,mergeOutput:!1},Ae=Object.assign({},Te,{firstChunkSize:4e4,gps:[1,2,3,4]});async function De(e){let t=new ce(Ae);await t.read(e);let i=await t.parse();if(i&&i.gps){let{latitude:e,longitude:t}=i.gps;return{latitude:e,longitude:t}}}const Oe=Object.assign({},Te,{tiff:!1,ifd1:!0,mergeOutput:!1});async function xe(e){let t=new ce(Oe);await t.read(e);let i=await t.extractThumbnail();return i&&o?r.from(i):i}async function ve(e){let t=await this.thumbnail(e);if(void 0!==t){let e=new Blob([t]);return URL.createObjectURL(e)}}const Me=Object.assign({},Te,{firstChunkSize:4e4,ifd0:[274]});async function Re(e){let t=new ce(Me);await t.read(e);let i=await t.parse();if(i&&i.ifd0)return i.ifd0[274]}const Le=Object.freeze({1:{dimensionSwapped:!1,scaleX:1,scaleY:1,deg:0,rad:0},2:{dimensionSwapped:!1,scaleX:-1,scaleY:1,deg:0,rad:0},3:{dimensionSwapped:!1,scaleX:1,scaleY:1,deg:180,rad:180*Math.PI/180},4:{dimensionSwapped:!1,scaleX:-1,scaleY:1,deg:180,rad:180*Math.PI/180},5:{dimensionSwapped:!0,scaleX:1,scaleY:-1,deg:90,rad:90*Math.PI/180},6:{dimensionSwapped:!0,scaleX:1,scaleY:1,deg:90,rad:90*Math.PI/180},7:{dimensionSwapped:!0,scaleX:1,scaleY:-1,deg:270,rad:270*Math.PI/180},8:{dimensionSwapped:!0,scaleX:1,scaleY:1,deg:270,rad:270*Math.PI/180}});if(e.rotateCanvas=!0,e.rotateCss=!0,\"object\"==typeof navigator){let t=navigator.userAgent;if(t.includes(\"iPad\")||t.includes(\"iPhone\")){let i=t.match(/OS (\\d+)_(\\d+)/);if(i){let[,t,n]=i,s=Number(t)+.1*Number(n);e.rotateCanvas=s<13.4,e.rotateCss=!1}}else if(t.includes(\"OS X 10\")){let[,i]=t.match(/OS X 10[_.](\\d+)/);e.rotateCanvas=e.rotateCss=Number(i)<15}if(t.includes(\"Chrome/\")){let[,i]=t.match(/Chrome\\/(\\d+)/);e.rotateCanvas=e.rotateCss=Number(i)<81}else if(t.includes(\"Firefox/\")){let[,i]=t.match(/Firefox\\/(\\d+)/);e.rotateCanvas=e.rotateCss=Number(i)<77}}async function Ue(t){let i=await Re(t);return Object.assign({canvas:e.rotateCanvas,css:e.rotateCss},Le[i])}class Fe extends I{constructor(...e){super(...e),f(this,\"ranges\",new Be),0!==this.byteLength&&this.ranges.add(0,this.byteLength)}_tryExtend(e,t,i){if(0===e&&0===this.byteLength&&i){let e=new DataView(i.buffer||i,i.byteOffset,i.byteLength);this._swapDataView(e)}else{let i=e+t;if(i>this.byteLength){let{dataView:e}=this._extend(i);this._swapDataView(e)}}}_extend(e){let t;t=o?r.allocUnsafe(e):new Uint8Array(e);let i=new DataView(t.buffer,t.byteOffset,t.byteLength);return t.set(new Uint8Array(this.buffer,this.byteOffset,this.byteLength),0),{uintView:t,dataView:i}}subarray(e,t,i=!1){return t=t||this._lengthToEnd(e),i&&this._tryExtend(e,t),this.ranges.add(e,t),super.subarray(e,t)}set(e,t,i=!1){i&&this._tryExtend(t,e.byteLength,e);let n=super.set(e,t);return this.ranges.add(t,n.byteLength),n}async ensureChunk(e,t){this.chunked&&(this.ranges.available(e,t)||await this.readChunk(e,t))}available(e,t){return this.ranges.available(e,t)}}class Be{constructor(){f(this,\"list\",[])}get length(){return this.list.length}add(e,t,i=0){let n=e+t,s=this.list.filter((t=>Ee(e,t.offset,n)||Ee(e,t.end,n)));if(s.length>0){e=Math.min(e,...s.map((e=>e.offset))),n=Math.max(n,...s.map((e=>e.end))),t=n-e;let i=s.shift();i.offset=e,i.length=t,i.end=n,this.list=this.list.filter((e=>!s.includes(e)))}else this.list.push({offset:e,length:t,end:n})}available(e,t){let i=e+t;return this.list.some((t=>t.offset<=e&&i<=t.end))}}function Ee(e,t,i){return e<=t&&t<=i}class Ne extends Fe{constructor(e,t){super(0),f(this,\"chunksRead\",0),this.input=e,this.options=t}async readWhole(){this.chunked=!1,await this.readChunk(this.nextChunkOffset)}async readChunked(){this.chunked=!0,await this.readChunk(0,this.options.firstChunkSize)}async readNextChunk(e=this.nextChunkOffset){if(this.fullyRead)return this.chunksRead++,!1;let t=this.options.chunkSize,i=await this.readChunk(e,t);return!!i&&i.byteLength===t}async readChunk(e,t){if(this.chunksRead++,0!==(t=this.safeWrapAddress(e,t)))return this._readChunk(e,t)}safeWrapAddress(e,t){return void 0!==this.size&&e+t>this.size?Math.max(0,this.size-e):t}get nextChunkOffset(){if(0!==this.ranges.list.length)return this.ranges.list[0].length}get canReadNextChunk(){return this.chunksRead<this.options.chunkLimit}get fullyRead(){return void 0!==this.size&&this.nextChunkOffset===this.size}read(){return this.options.chunked?this.readChunked():this.readWhole()}close(){}}D.set(\"blob\",class extends Ne{async readWhole(){this.chunked=!1;let e=await U(this.input);this._swapArrayBuffer(e)}readChunked(){return this.chunked=!0,this.size=this.input.size,super.readChunked()}async _readChunk(e,t){let i=t?e+t:void 0,n=this.input.slice(e,i),s=await U(n);return this.set(s,e,!0)}});var Ge=Object.freeze({__proto__:null,default:we,Exifr:ce,fileParsers:T,segmentParsers:A,fileReaders:D,tagKeys:N,tagValues:G,tagRevivers:V,createDictionary:B,extendDictionary:E,fetchUrlAsArrayBuffer:L,readBlobAsArrayBuffer:U,chunkedProps:$,otherSegments:J,segments:q,tiffBlocks:Q,segmentsAndBlocks:Z,tiffExtractables:ee,inheritables:te,allFormatters:ie,Options:oe,parse:fe,gpsOnlyOptions:Ae,gps:De,thumbnailOnlyOptions:Oe,thumbnail:xe,thumbnailUrl:ve,orientationOnlyOptions:Me,orientation:Re,rotations:Le,get rotateCanvas(){return e.rotateCanvas},get rotateCss(){return e.rotateCss},rotation:Ue});D.set(\"url\",class extends Ne{async readWhole(){this.chunked=!1;let e=await L(this.input);e instanceof ArrayBuffer?this._swapArrayBuffer(e):e instanceof Uint8Array&&this._swapBuffer(e)}async _readChunk(e,t){let i=t?e+t-1:void 0,n=this.options.httpHeaders||{};(e||i)&&(n.range=`bytes=${[e,i].join(\"-\")}`);let s=await u(this.input,{headers:n}),r=await s.arrayBuffer(),a=r.byteLength;if(416!==s.status)return a!==t&&(this.size=e+a),this.set(r,e,!0)}});I.prototype.getUint64=function(e){let t=this.getUint32(e),i=this.getUint32(e+4);return t<1048575?t<<32|i:void 0!==typeof a?(console.warn(\"Using BigInt because of type 64uint but JS can only handle 53b numbers.\"),a(t)<<a(32)|a(i)):void m(\"Trying to read 64b value but JS can only handle 53b numbers.\")};class Ve extends pe{parseBoxes(e=0){let t=[];for(;e<this.file.byteLength-4;){let i=this.parseBoxHead(e);if(t.push(i),0===i.length)break;e+=i.length}return t}parseSubBoxes(e){e.boxes=this.parseBoxes(e.start)}findBox(e,t){return void 0===e.boxes&&this.parseSubBoxes(e),e.boxes.find((e=>e.kind===t))}parseBoxHead(e){let t=this.file.getUint32(e),i=this.file.getString(e+4,4),n=e+8;return 1===t&&(t=this.file.getUint64(e+8),n+=8),{offset:e,length:t,kind:i,start:n}}parseBoxFullHead(e){if(void 0!==e.version)return;let t=this.file.getUint32(e.start);e.version=t>>24,e.start+=4}}class ze extends Ve{static canHandle(e,t){if(0!==t)return!1;let i=e.getUint16(2);if(i>50)return!1;let n=16,s=[];for(;n<i;)s.push(e.getString(n,4)),n+=4;return s.includes(this.type)}async parse(){let e=this.file.getUint32(0),t=this.parseBoxHead(e);for(;\"meta\"!==t.kind;)e+=t.length,await this.file.ensureChunk(e,16),t=this.parseBoxHead(e);await this.file.ensureChunk(t.offset,t.length),this.parseBoxFullHead(t),this.parseSubBoxes(t),this.options.icc.enabled&&await this.findIcc(t),this.options.tiff.enabled&&await this.findExif(t)}async registerSegment(e,t,i){await this.file.ensureChunk(t,i);let n=this.file.subarray(t,i);this.createParser(e,n)}async findIcc(e){let t=this.findBox(e,\"iprp\");if(void 0===t)return;let i=this.findBox(t,\"ipco\");if(void 0===i)return;let n=this.findBox(i,\"colr\");void 0!==n&&await this.registerSegment(\"icc\",n.offset+12,n.length)}async findExif(e){let t=this.findBox(e,\"iinf\");if(void 0===t)return;let i=this.findBox(e,\"iloc\");if(void 0===i)return;let n=this.findExifLocIdInIinf(t),s=this.findExtentInIloc(i,n);if(void 0===s)return;let[r,a]=s;await this.file.ensureChunk(r,a);let o=4+this.file.getUint32(r);r+=o,a-=o,await this.registerSegment(\"tiff\",r,a)}findExifLocIdInIinf(e){this.parseBoxFullHead(e);let t,i,n,s,r=e.start,a=this.file.getUint16(r);for(r+=2;a--;){if(t=this.parseBoxHead(r),this.parseBoxFullHead(t),i=t.start,t.version>=2&&(n=3===t.version?4:2,s=this.file.getString(i+n+2,4),\"Exif\"===s))return this.file.getUintBytes(i,n);r+=t.length}}get8bits(e){let t=this.file.getUint8(e);return[t>>4,15&t]}findExtentInIloc(e,t){this.parseBoxFullHead(e);let i=e.start,[n,s]=this.get8bits(i++),[r,a]=this.get8bits(i++),o=2===e.version?4:2,l=1===e.version||2===e.version?2:0,h=a+n+s,u=2===e.version?4:2,c=this.file.getUintBytes(i,u);for(i+=u;c--;){let e=this.file.getUintBytes(i,o);i+=o+l+2+r;let u=this.file.getUint16(i);if(i+=2,e===t)return u>1&&console.warn(\"ILOC box has more than one extent but we're only processing one\\nPlease create an issue at https://github.com/MikeKovarik/exifr with this file\"),[this.file.getUintBytes(i+a,n),this.file.getUintBytes(i+a+n,s)];i+=u*h}}}class He extends ze{}f(He,\"type\",\"heic\");class je extends ze{}f(je,\"type\",\"avif\"),T.set(\"heic\",He),T.set(\"avif\",je),B(N,[\"ifd0\",\"ifd1\"],[[256,\"ImageWidth\"],[257,\"ImageHeight\"],[258,\"BitsPerSample\"],[259,\"Compression\"],[262,\"PhotometricInterpretation\"],[270,\"ImageDescription\"],[271,\"Make\"],[272,\"Model\"],[273,\"StripOffsets\"],[274,\"Orientation\"],[277,\"SamplesPerPixel\"],[278,\"RowsPerStrip\"],[279,\"StripByteCounts\"],[282,\"XResolution\"],[283,\"YResolution\"],[284,\"PlanarConfiguration\"],[296,\"ResolutionUnit\"],[301,\"TransferFunction\"],[305,\"Software\"],[306,\"ModifyDate\"],[315,\"Artist\"],[316,\"HostComputer\"],[317,\"Predictor\"],[318,\"WhitePoint\"],[319,\"PrimaryChromaticities\"],[513,\"ThumbnailOffset\"],[514,\"ThumbnailLength\"],[529,\"YCbCrCoefficients\"],[530,\"YCbCrSubSampling\"],[531,\"YCbCrPositioning\"],[532,\"ReferenceBlackWhite\"],[700,\"ApplicationNotes\"],[33432,\"Copyright\"],[33723,\"IPTC\"],[34665,\"ExifIFD\"],[34675,\"ICC\"],[34853,\"GpsIFD\"],[330,\"SubIFD\"],[40965,\"InteropIFD\"],[40091,\"XPTitle\"],[40092,\"XPComment\"],[40093,\"XPAuthor\"],[40094,\"XPKeywords\"],[40095,\"XPSubject\"]]),B(N,\"exif\",[[33434,\"ExposureTime\"],[33437,\"FNumber\"],[34850,\"ExposureProgram\"],[34852,\"SpectralSensitivity\"],[34855,\"ISO\"],[34858,\"TimeZoneOffset\"],[34859,\"SelfTimerMode\"],[34864,\"SensitivityType\"],[34865,\"StandardOutputSensitivity\"],[34866,\"RecommendedExposureIndex\"],[34867,\"ISOSpeed\"],[34868,\"ISOSpeedLatitudeyyy\"],[34869,\"ISOSpeedLatitudezzz\"],[36864,\"ExifVersion\"],[36867,\"DateTimeOriginal\"],[36868,\"CreateDate\"],[36873,\"GooglePlusUploadCode\"],[36880,\"OffsetTime\"],[36881,\"OffsetTimeOriginal\"],[36882,\"OffsetTimeDigitized\"],[37121,\"ComponentsConfiguration\"],[37122,\"CompressedBitsPerPixel\"],[37377,\"ShutterSpeedValue\"],[37378,\"ApertureValue\"],[37379,\"BrightnessValue\"],[37380,\"ExposureCompensation\"],[37381,\"MaxApertureValue\"],[37382,\"SubjectDistance\"],[37383,\"MeteringMode\"],[37384,\"LightSource\"],[37385,\"Flash\"],[37386,\"FocalLength\"],[37393,\"ImageNumber\"],[37394,\"SecurityClassification\"],[37395,\"ImageHistory\"],[37396,\"SubjectArea\"],[37500,\"MakerNote\"],[37510,\"UserComment\"],[37520,\"SubSecTime\"],[37521,\"SubSecTimeOriginal\"],[37522,\"SubSecTimeDigitized\"],[37888,\"AmbientTemperature\"],[37889,\"Humidity\"],[37890,\"Pressure\"],[37891,\"WaterDepth\"],[37892,\"Acceleration\"],[37893,\"CameraElevationAngle\"],[40960,\"FlashpixVersion\"],[40961,\"ColorSpace\"],[40962,\"ExifImageWidth\"],[40963,\"ExifImageHeight\"],[40964,\"RelatedSoundFile\"],[41483,\"FlashEnergy\"],[41486,\"FocalPlaneXResolution\"],[41487,\"FocalPlaneYResolution\"],[41488,\"FocalPlaneResolutionUnit\"],[41492,\"SubjectLocation\"],[41493,\"ExposureIndex\"],[41495,\"SensingMethod\"],[41728,\"FileSource\"],[41729,\"SceneType\"],[41730,\"CFAPattern\"],[41985,\"CustomRendered\"],[41986,\"ExposureMode\"],[41987,\"WhiteBalance\"],[41988,\"DigitalZoomRatio\"],[41989,\"FocalLengthIn35mmFormat\"],[41990,\"SceneCaptureType\"],[41991,\"GainControl\"],[41992,\"Contrast\"],[41993,\"Saturation\"],[41994,\"Sharpness\"],[41996,\"SubjectDistanceRange\"],[42016,\"ImageUniqueID\"],[42032,\"OwnerName\"],[42033,\"SerialNumber\"],[42034,\"LensInfo\"],[42035,\"LensMake\"],[42036,\"LensModel\"],[42037,\"LensSerialNumber\"],[42080,\"CompositeImage\"],[42081,\"CompositeImageCount\"],[42082,\"CompositeImageExposureTimes\"],[42240,\"Gamma\"],[59932,\"Padding\"],[59933,\"OffsetSchema\"],[65e3,\"OwnerName\"],[65001,\"SerialNumber\"],[65002,\"Lens\"],[65100,\"RawFile\"],[65101,\"Converter\"],[65102,\"WhiteBalance\"],[65105,\"Exposure\"],[65106,\"Shadows\"],[65107,\"Brightness\"],[65108,\"Contrast\"],[65109,\"Saturation\"],[65110,\"Sharpness\"],[65111,\"Smoothness\"],[65112,\"MoireFilter\"],[40965,\"InteropIFD\"]]),B(N,\"gps\",[[0,\"GPSVersionID\"],[1,\"GPSLatitudeRef\"],[2,\"GPSLatitude\"],[3,\"GPSLongitudeRef\"],[4,\"GPSLongitude\"],[5,\"GPSAltitudeRef\"],[6,\"GPSAltitude\"],[7,\"GPSTimeStamp\"],[8,\"GPSSatellites\"],[9,\"GPSStatus\"],[10,\"GPSMeasureMode\"],[11,\"GPSDOP\"],[12,\"GPSSpeedRef\"],[13,\"GPSSpeed\"],[14,\"GPSTrackRef\"],[15,\"GPSTrack\"],[16,\"GPSImgDirectionRef\"],[17,\"GPSImgDirection\"],[18,\"GPSMapDatum\"],[19,\"GPSDestLatitudeRef\"],[20,\"GPSDestLatitude\"],[21,\"GPSDestLongitudeRef\"],[22,\"GPSDestLongitude\"],[23,\"GPSDestBearingRef\"],[24,\"GPSDestBearing\"],[25,\"GPSDestDistanceRef\"],[26,\"GPSDestDistance\"],[27,\"GPSProcessingMethod\"],[28,\"GPSAreaInformation\"],[29,\"GPSDateStamp\"],[30,\"GPSDifferential\"],[31,\"GPSHPositioningError\"]]),B(G,[\"ifd0\",\"ifd1\"],[[274,{1:\"Horizontal (normal)\",2:\"Mirror horizontal\",3:\"Rotate 180\",4:\"Mirror vertical\",5:\"Mirror horizontal and rotate 270 CW\",6:\"Rotate 90 CW\",7:\"Mirror horizontal and rotate 90 CW\",8:\"Rotate 270 CW\"}],[296,{1:\"None\",2:\"inches\",3:\"cm\"}]]);let We=B(G,\"exif\",[[34850,{0:\"Not defined\",1:\"Manual\",2:\"Normal program\",3:\"Aperture priority\",4:\"Shutter priority\",5:\"Creative program\",6:\"Action program\",7:\"Portrait mode\",8:\"Landscape mode\"}],[37121,{0:\"-\",1:\"Y\",2:\"Cb\",3:\"Cr\",4:\"R\",5:\"G\",6:\"B\"}],[37383,{0:\"Unknown\",1:\"Average\",2:\"CenterWeightedAverage\",3:\"Spot\",4:\"MultiSpot\",5:\"Pattern\",6:\"Partial\",255:\"Other\"}],[37384,{0:\"Unknown\",1:\"Daylight\",2:\"Fluorescent\",3:\"Tungsten (incandescent light)\",4:\"Flash\",9:\"Fine weather\",10:\"Cloudy weather\",11:\"Shade\",12:\"Daylight fluorescent (D 5700 - 7100K)\",13:\"Day white fluorescent (N 4600 - 5400K)\",14:\"Cool white fluorescent (W 3900 - 4500K)\",15:\"White fluorescent (WW 3200 - 3700K)\",17:\"Standard light A\",18:\"Standard light B\",19:\"Standard light C\",20:\"D55\",21:\"D65\",22:\"D75\",23:\"D50\",24:\"ISO studio tungsten\",255:\"Other\"}],[37385,{0:\"Flash did not fire\",1:\"Flash fired\",5:\"Strobe return light not detected\",7:\"Strobe return light detected\",9:\"Flash fired, compulsory flash mode\",13:\"Flash fired, compulsory flash mode, return light not detected\",15:\"Flash fired, compulsory flash mode, return light detected\",16:\"Flash did not fire, compulsory flash mode\",24:\"Flash did not fire, auto mode\",25:\"Flash fired, auto mode\",29:\"Flash fired, auto mode, return light not detected\",31:\"Flash fired, auto mode, return light detected\",32:\"No flash function\",65:\"Flash fired, red-eye reduction mode\",69:\"Flash fired, red-eye reduction mode, return light not detected\",71:\"Flash fired, red-eye reduction mode, return light detected\",73:\"Flash fired, compulsory flash mode, red-eye reduction mode\",77:\"Flash fired, compulsory flash mode, red-eye reduction mode, return light not detected\",79:\"Flash fired, compulsory flash mode, red-eye reduction mode, return light detected\",89:\"Flash fired, auto mode, red-eye reduction mode\",93:\"Flash fired, auto mode, return light not detected, red-eye reduction mode\",95:\"Flash fired, auto mode, return light detected, red-eye reduction mode\"}],[41495,{1:\"Not defined\",2:\"One-chip color area sensor\",3:\"Two-chip color area sensor\",4:\"Three-chip color area sensor\",5:\"Color sequential area sensor\",7:\"Trilinear sensor\",8:\"Color sequential linear sensor\"}],[41728,{1:\"Film Scanner\",2:\"Reflection Print Scanner\",3:\"Digital Camera\"}],[41729,{1:\"Directly photographed\"}],[41985,{0:\"Normal\",1:\"Custom\",2:\"HDR (no original saved)\",3:\"HDR (original saved)\",4:\"Original (for HDR)\",6:\"Panorama\",7:\"Portrait HDR\",8:\"Portrait\"}],[41986,{0:\"Auto\",1:\"Manual\",2:\"Auto bracket\"}],[41987,{0:\"Auto\",1:\"Manual\"}],[41990,{0:\"Standard\",1:\"Landscape\",2:\"Portrait\",3:\"Night\",4:\"Other\"}],[41991,{0:\"None\",1:\"Low gain up\",2:\"High gain up\",3:\"Low gain down\",4:\"High gain down\"}],[41996,{0:\"Unknown\",1:\"Macro\",2:\"Close\",3:\"Distant\"}],[42080,{0:\"Unknown\",1:\"Not a Composite Image\",2:\"General Composite Image\",3:\"Composite Image Captured While Shooting\"}]]);const Ke={1:\"No absolute unit of measurement\",2:\"Inch\",3:\"Centimeter\"};We.set(37392,Ke),We.set(41488,Ke);const Xe={0:\"Normal\",1:\"Low\",2:\"High\"};function _e(e){return\"object\"==typeof e&&void 0!==e.length?e[0]:e}function Ye(e){let t=Array.from(e).slice(1);return t[1]>15&&(t=t.map((e=>String.fromCharCode(e)))),\"0\"!==t[2]&&0!==t[2]||t.pop(),t.join(\".\")}function $e(e){if(\"string\"==typeof e){var[t,i,n,s,r,a]=e.trim().split(/[-: ]/g).map(Number),o=new Date(t,i-1,n);return Number.isNaN(s)||Number.isNaN(r)||Number.isNaN(a)||(o.setHours(s),o.setMinutes(r),o.setSeconds(a)),Number.isNaN(+o)?e:o}}function Je(e){if(\"string\"==typeof e)return e;let t=[];if(0===e[1]&&0===e[e.length-1])for(let i=0;i<e.length;i+=2)t.push(qe(e[i+1],e[i]));else for(let i=0;i<e.length;i+=2)t.push(qe(e[i],e[i+1]));return S(String.fromCodePoint(...t))}function qe(e,t){return e<<8|t}We.set(41992,Xe),We.set(41993,Xe),We.set(41994,Xe),B(V,[\"ifd0\",\"ifd1\"],[[50827,function(e){return\"string\"!=typeof e?P(e):e}],[306,$e],[40091,Je],[40092,Je],[40093,Je],[40094,Je],[40095,Je]]),B(V,\"exif\",[[40960,Ye],[36864,Ye],[36867,$e],[36868,$e],[40962,_e],[40963,_e]]),B(V,\"gps\",[[0,e=>Array.from(e).join(\".\")],[7,e=>Array.from(e).join(\":\")]]);const Qe=\"http://ns.adobe.com/\",Ze=\"http://ns.adobe.com/xmp/extension/\";class et extends ge{static canHandle(e,t){return 225===e.getUint8(t+1)&&1752462448===e.getUint32(t+4)&&e.getString(t+4,Qe.length)===Qe}static headerLength(e,t){return e.getString(t+4,Ze.length)===Ze?79:4+\"http://ns.adobe.com/xap/1.0/\".length+1}static findPosition(e,t){let i=super.findPosition(e,t);return i.multiSegment=i.extended=79===i.headerLength,i.multiSegment?(i.chunkCount=e.getUint8(t+72),i.chunkNumber=e.getUint8(t+76),0!==e.getUint8(t+77)&&i.chunkNumber++):(i.chunkCount=1/0,i.chunkNumber=-1),i}static handleMultiSegments(e){return e.map((e=>e.chunk.getString())).join(\"\")}normalizeInput(e){return\"string\"==typeof e?e:I.from(e).getString()}parse(e=this.chunk){if(!this.localOptions.parse)return e;e=function(e){let t={},i={};for(let e of ut)t[e]=[],i[e]=0;return e.replace(ct,((e,n,s)=>{if(\"<\"===n){let n=++i[s];return t[s].push(n),`${e}#${n}`}return`${e}#${t[s].pop()}`}))}(e);let t=nt.findAll(e,\"rdf\",\"Description\");0===t.length&&t.push(new nt(\"rdf\",\"Description\",void 0,e));let i,n={};for(let e of t)for(let t of e.properties)i=ot(t.ns,n),st(t,i);return function(e){let t;for(let i in e)t=e[i]=d(e[i]),void 0===t&&delete e[i];return d(e)}(n)}assignToOutput(e,t){if(this.localOptions.parse)for(let[i,n]of Object.entries(t))switch(i){case\"tiff\":this.assignObjectToOutput(e,\"ifd0\",n);break;case\"exif\":this.assignObjectToOutput(e,\"exif\",n);break;case\"xmlns\":break;default:this.assignObjectToOutput(e,i,n)}else e.xmp=t}}f(et,\"type\",\"xmp\"),f(et,\"multiSegment\",!0),A.set(\"xmp\",et);class tt{static findAll(e){return lt(e,/([a-zA-Z0-9-]+):([a-zA-Z0-9-]+)=(\"[^\"]*\"|'[^']*')/gm).map(tt.unpackMatch)}static unpackMatch(e){let t=e[1],i=e[2],n=e[3].slice(1,-1);return n=ht(n),new tt(t,i,n)}constructor(e,t,i){this.ns=e,this.name=t,this.value=i}serialize(){return this.value}}const it=\"[\\\\w\\\\d-]+\";class nt{static findAll(e,t,i){if(void 0!==t||void 0!==i){t=t||it,i=i||it;var n=new RegExp(`<(${t}):(${i})(#\\\\d+)?((\\\\s+?[\\\\w\\\\d-:]+=(\"[^\"]*\"|'[^']*'))*\\\\s*)(\\\\/>|>([\\\\s\\\\S]*?)<\\\\/\\\\1:\\\\2\\\\3>)`,\"gm\")}else n=/<([\\w\\d-]+):([\\w\\d-]+)(#\\d+)?((\\s+?[\\w\\d-:]+=(\"[^\"]*\"|'[^']*'))*\\s*)(\\/>|>([\\s\\S]*?)<\\/\\1:\\2\\3>)/gm;return lt(e,n).map(nt.unpackMatch)}static unpackMatch(e){let t=e[1],i=e[2],n=e[4],s=e[8];return new nt(t,i,n,s)}constructor(e,t,i,n){this.ns=e,this.name=t,this.attrString=i,this.innerXml=n,this.attrs=tt.findAll(i),this.children=nt.findAll(n),this.value=0===this.children.length?ht(n):void 0,this.properties=[...this.attrs,...this.children]}get isPrimitive(){return void 0!==this.value&&0===this.attrs.length&&0===this.children.length}get isListContainer(){return 1===this.children.length&&this.children[0].isList}get isList(){let{ns:e,name:t}=this;return\"rdf\"===e&&(\"Seq\"===t||\"Bag\"===t||\"Alt\"===t)}get isListItem(){return\"rdf\"===this.ns&&\"li\"===this.name}serialize(){if(0===this.properties.length&&void 0===this.value)return;if(this.isPrimitive)return this.value;if(this.isListContainer)return this.children[0].serialize();if(this.isList)return at(this.children.map(rt));if(this.isListItem&&1===this.children.length&&0===this.attrs.length)return this.children[0].serialize();let e={};for(let t of this.properties)st(t,e);return void 0!==this.value&&(e.value=this.value),d(e)}}function st(e,t){let i=e.serialize();void 0!==i&&(t[e.name]=i)}var rt=e=>e.serialize(),at=e=>1===e.length?e[0]:e,ot=(e,t)=>t[e]?t[e]:t[e]={};function lt(e,t){let i,n=[];if(!e)return n;for(;null!==(i=t.exec(e));)n.push(i);return n}function ht(e){if(function(e){return null==e||\"null\"===e||\"undefined\"===e||\"\"===e||\"\"===e.trim()}(e))return;let t=Number(e);if(!Number.isNaN(t))return t;let i=e.toLowerCase();return\"true\"===i||\"false\"!==i&&e.trim()}const ut=[\"rdf:li\",\"rdf:Seq\",\"rdf:Bag\",\"rdf:Alt\",\"rdf:Description\"],ct=new RegExp(`(<|\\\\/)(${ut.join(\"|\")})`,\"g\");var ft=Object.freeze({__proto__:null,default:Ge,Exifr:ce,fileParsers:T,segmentParsers:A,fileReaders:D,tagKeys:N,tagValues:G,tagRevivers:V,createDictionary:B,extendDictionary:E,fetchUrlAsArrayBuffer:L,readBlobAsArrayBuffer:U,chunkedProps:$,otherSegments:J,segments:q,tiffBlocks:Q,segmentsAndBlocks:Z,tiffExtractables:ee,inheritables:te,allFormatters:ie,Options:oe,parse:fe,gpsOnlyOptions:Ae,gps:De,thumbnailOnlyOptions:Oe,thumbnail:xe,thumbnailUrl:ve,orientationOnlyOptions:Me,orientation:Re,rotations:Le,get rotateCanvas(){return e.rotateCanvas},get rotateCss(){return e.rotateCss},rotation:Ue});const dt=[\"xmp\",\"icc\",\"iptc\",\"tiff\"],pt=()=>{};async function gt(e,t,i){let n=i[e];return n.enabled=!0,n.parse=!0,A.get(e).parse(t,n)}let mt=h(\"fs\",(e=>e.promises));D.set(\"fs\",class extends Ne{async readWhole(){this.chunked=!1,this.fs=await mt;let e=await this.fs.readFile(this.input);this._swapBuffer(e)}async readChunked(){this.chunked=!0,this.fs=await mt,await this.open(),await this.readChunk(0,this.options.firstChunkSize)}async open(){void 0===this.fh&&(this.fh=await this.fs.open(this.input,\"r\"),this.size=(await this.fh.stat(this.input)).size)}async _readChunk(e,t){void 0===this.fh&&await this.open(),e+t>this.size&&(t=this.size-e);var i=this.subarray(e,t,!0);return await this.fh.read(i.dataView,0,t,e),i}async close(){if(this.fh){let e=this.fh;this.fh=void 0,await e.close()}}});D.set(\"base64\",class extends Ne{constructor(...e){super(...e),this.input=this.input.replace(/^data:([^;]+);base64,/gim,\"\"),this.size=this.input.length/4*3,this.input.endsWith(\"==\")?this.size-=2:this.input.endsWith(\"=\")&&(this.size-=1)}async _readChunk(e,t){let i,n,s=this.input;void 0===e?(e=0,i=0,n=0):(i=4*Math.floor(e/3),n=e-i/4*3),void 0===t&&(t=this.size);let a=e+t,l=i+4*Math.ceil(a/3);s=s.slice(i,l);let h=Math.min(t,this.size-e);if(o){let t=r.from(s,\"base64\").slice(n,n+h);return this.set(t,e,!0)}{let t=this.subarray(e,h,!0),i=atob(s),r=t.toUint8();for(let e=0;e<h;e++)r[e]=i.charCodeAt(n+e);return t}}});class St extends pe{static canHandle(e,t){return 18761===t||19789===t}extendOptions(e){let{ifd0:t,xmp:i,iptc:n,icc:s}=e;i.enabled&&t.deps.add(j),n.enabled&&t.deps.add(W),s.enabled&&t.deps.add(K),t.finalizeFilters()}async parse(){let{tiff:e,xmp:t,iptc:i,icc:n}=this.options;if(e.enabled||t.enabled||i.enabled||n.enabled){let e=Math.max(C(this.options),this.options.chunkSize);await this.file.ensureChunk(0,e),this.createParser(\"tiff\",this.file),this.parsers.tiff.parseHeader(),await this.parsers.tiff.parseIfd0Block(),this.adaptTiffPropAsSegment(\"xmp\"),this.adaptTiffPropAsSegment(\"iptc\"),this.adaptTiffPropAsSegment(\"icc\")}}adaptTiffPropAsSegment(e){if(this.parsers.tiff[e]){let t=this.parsers.tiff[e];this.injectSegment(e,t)}}}f(St,\"type\",\"tiff\"),T.set(\"tiff\",St);let Ct=h(\"zlib\");const yt=\"XML:com.adobe.xmp\",bt=\"ihdr\",Pt=\"iccp\",It=\"text\",kt=\"itxt\",wt=[bt,Pt,It,kt,\"exif\"];class Tt extends pe{constructor(...e){super(...e),f(this,\"catchError\",(e=>this.errors.push(e))),f(this,\"metaChunks\",[]),f(this,\"unknownChunks\",[])}static canHandle(e,t){return 35152===t&&2303741511===e.getUint32(0)&&218765834===e.getUint32(4)}async parse(){let{file:e}=this;await this.findPngChunksInRange(\"PNG\\r\\n\u001a\\n\".length,e.byteLength),await this.readSegments(this.metaChunks),this.findIhdr(),this.parseTextChunks(),await this.findExif().catch(this.catchError),await this.findXmp().catch(this.catchError),await this.findIcc().catch(this.catchError)}async findPngChunksInRange(e,t){let{file:i}=this;for(;e<t;){let t=i.getUint32(e),n=i.getUint32(e+4),s=i.getString(e+4,4).toLowerCase(),r=t+4+4+4,a={type:s,offset:e,length:r,start:e+4+4,size:t,marker:n};wt.includes(s)?this.metaChunks.push(a):this.unknownChunks.push(a),e+=r}}parseTextChunks(){let e=this.metaChunks.filter((e=>e.type===It));for(let t of e){let[e,i]=this.file.getString(t.start,t.size).split(\"\\0\");this.injectKeyValToIhdr(e,i)}}injectKeyValToIhdr(e,t){let i=this.parsers.ihdr;i&&i.raw.set(e,t)}findIhdr(){let e=this.metaChunks.find((e=>e.type===bt));e&&!1!==this.options.ihdr.enabled&&this.createParser(bt,e.chunk)}async findExif(){let e=this.metaChunks.find((e=>\"exif\"===e.type));e&&this.injectSegment(\"tiff\",e.chunk)}async findXmp(){let e=this.metaChunks.filter((e=>e.type===kt));for(let t of e){t.chunk.getString(0,yt.length)===yt&&this.injectSegment(\"xmp\",t.chunk)}}async findIcc(){let e=this.metaChunks.find((e=>e.type===Pt));if(!e)return;let{chunk:t}=e,i=t.getUint8Array(0,81),n=0;for(;n<80&&0!==i[n];)n++;let r=n+2,a=t.getString(0,n);if(this.injectKeyValToIhdr(\"ProfileName\",a),s){let e=await Ct,i=t.getUint8Array(r);i=e.inflateSync(i),this.injectSegment(\"icc\",i)}}}f(Tt,\"type\",\"png\"),T.set(\"png\",Tt),B(N,\"interop\",[[1,\"InteropIndex\"],[2,\"InteropVersion\"],[4096,\"RelatedImageFileFormat\"],[4097,\"RelatedImageWidth\"],[4098,\"RelatedImageHeight\"]]),E(N,\"ifd0\",[[11,\"ProcessingSoftware\"],[254,\"SubfileType\"],[255,\"OldSubfileType\"],[263,\"Thresholding\"],[264,\"CellWidth\"],[265,\"CellLength\"],[266,\"FillOrder\"],[269,\"DocumentName\"],[280,\"MinSampleValue\"],[281,\"MaxSampleValue\"],[285,\"PageName\"],[286,\"XPosition\"],[287,\"YPosition\"],[290,\"GrayResponseUnit\"],[297,\"PageNumber\"],[321,\"HalftoneHints\"],[322,\"TileWidth\"],[323,\"TileLength\"],[332,\"InkSet\"],[337,\"TargetPrinter\"],[18246,\"Rating\"],[18249,\"RatingPercent\"],[33550,\"PixelScale\"],[34264,\"ModelTransform\"],[34377,\"PhotoshopSettings\"],[50706,\"DNGVersion\"],[50707,\"DNGBackwardVersion\"],[50708,\"UniqueCameraModel\"],[50709,\"LocalizedCameraModel\"],[50736,\"DNGLensInfo\"],[50739,\"ShadowScale\"],[50740,\"DNGPrivateData\"],[33920,\"IntergraphMatrix\"],[33922,\"ModelTiePoint\"],[34118,\"SEMInfo\"],[34735,\"GeoTiffDirectory\"],[34736,\"GeoTiffDoubleParams\"],[34737,\"GeoTiffAsciiParams\"],[50341,\"PrintIM\"],[50721,\"ColorMatrix1\"],[50722,\"ColorMatrix2\"],[50723,\"CameraCalibration1\"],[50724,\"CameraCalibration2\"],[50725,\"ReductionMatrix1\"],[50726,\"ReductionMatrix2\"],[50727,\"AnalogBalance\"],[50728,\"AsShotNeutral\"],[50729,\"AsShotWhiteXY\"],[50730,\"BaselineExposure\"],[50731,\"BaselineNoise\"],[50732,\"BaselineSharpness\"],[50734,\"LinearResponseLimit\"],[50735,\"CameraSerialNumber\"],[50741,\"MakerNoteSafety\"],[50778,\"CalibrationIlluminant1\"],[50779,\"CalibrationIlluminant2\"],[50781,\"RawDataUniqueID\"],[50827,\"OriginalRawFileName\"],[50828,\"OriginalRawFileData\"],[50831,\"AsShotICCProfile\"],[50832,\"AsShotPreProfileMatrix\"],[50833,\"CurrentICCProfile\"],[50834,\"CurrentPreProfileMatrix\"],[50879,\"ColorimetricReference\"],[50885,\"SRawType\"],[50898,\"PanasonicTitle\"],[50899,\"PanasonicTitle2\"],[50931,\"CameraCalibrationSig\"],[50932,\"ProfileCalibrationSig\"],[50933,\"ProfileIFD\"],[50934,\"AsShotProfileName\"],[50936,\"ProfileName\"],[50937,\"ProfileHueSatMapDims\"],[50938,\"ProfileHueSatMapData1\"],[50939,\"ProfileHueSatMapData2\"],[50940,\"ProfileToneCurve\"],[50941,\"ProfileEmbedPolicy\"],[50942,\"ProfileCopyright\"],[50964,\"ForwardMatrix1\"],[50965,\"ForwardMatrix2\"],[50966,\"PreviewApplicationName\"],[50967,\"PreviewApplicationVersion\"],[50968,\"PreviewSettingsName\"],[50969,\"PreviewSettingsDigest\"],[50970,\"PreviewColorSpace\"],[50971,\"PreviewDateTime\"],[50972,\"RawImageDigest\"],[50973,\"OriginalRawFileDigest\"],[50981,\"ProfileLookTableDims\"],[50982,\"ProfileLookTableData\"],[51043,\"TimeCodes\"],[51044,\"FrameRate\"],[51058,\"TStop\"],[51081,\"ReelName\"],[51089,\"OriginalDefaultFinalSize\"],[51090,\"OriginalBestQualitySize\"],[51091,\"OriginalDefaultCropSize\"],[51105,\"CameraLabel\"],[51107,\"ProfileHueSatMapEncoding\"],[51108,\"ProfileLookTableEncoding\"],[51109,\"BaselineExposureOffset\"],[51110,\"DefaultBlackRender\"],[51111,\"NewRawImageDigest\"],[51112,\"RawToPreviewGain\"]]);let At=[[273,\"StripOffsets\"],[279,\"StripByteCounts\"],[288,\"FreeOffsets\"],[289,\"FreeByteCounts\"],[291,\"GrayResponseCurve\"],[292,\"T4Options\"],[293,\"T6Options\"],[300,\"ColorResponseUnit\"],[320,\"ColorMap\"],[324,\"TileOffsets\"],[325,\"TileByteCounts\"],[326,\"BadFaxLines\"],[327,\"CleanFaxData\"],[328,\"ConsecutiveBadFaxLines\"],[330,\"SubIFD\"],[333,\"InkNames\"],[334,\"NumberofInks\"],[336,\"DotRange\"],[338,\"ExtraSamples\"],[339,\"SampleFormat\"],[340,\"SMinSampleValue\"],[341,\"SMaxSampleValue\"],[342,\"TransferRange\"],[343,\"ClipPath\"],[344,\"XClipPathUnits\"],[345,\"YClipPathUnits\"],[346,\"Indexed\"],[347,\"JPEGTables\"],[351,\"OPIProxy\"],[400,\"GlobalParametersIFD\"],[401,\"ProfileType\"],[402,\"FaxProfile\"],[403,\"CodingMethods\"],[404,\"VersionYear\"],[405,\"ModeNumber\"],[433,\"Decode\"],[434,\"DefaultImageColor\"],[435,\"T82Options\"],[437,\"JPEGTables\"],[512,\"JPEGProc\"],[515,\"JPEGRestartInterval\"],[517,\"JPEGLosslessPredictors\"],[518,\"JPEGPointTransforms\"],[519,\"JPEGQTables\"],[520,\"JPEGDCTables\"],[521,\"JPEGACTables\"],[559,\"StripRowCounts\"],[999,\"USPTOMiscellaneous\"],[18247,\"XP_DIP_XML\"],[18248,\"StitchInfo\"],[28672,\"SonyRawFileType\"],[28688,\"SonyToneCurve\"],[28721,\"VignettingCorrection\"],[28722,\"VignettingCorrParams\"],[28724,\"ChromaticAberrationCorrection\"],[28725,\"ChromaticAberrationCorrParams\"],[28726,\"DistortionCorrection\"],[28727,\"DistortionCorrParams\"],[29895,\"SonyCropTopLeft\"],[29896,\"SonyCropSize\"],[32781,\"ImageID\"],[32931,\"WangTag1\"],[32932,\"WangAnnotation\"],[32933,\"WangTag3\"],[32934,\"WangTag4\"],[32953,\"ImageReferencePoints\"],[32954,\"RegionXformTackPoint\"],[32955,\"WarpQuadrilateral\"],[32956,\"AffineTransformMat\"],[32995,\"Matteing\"],[32996,\"DataType\"],[32997,\"ImageDepth\"],[32998,\"TileDepth\"],[33300,\"ImageFullWidth\"],[33301,\"ImageFullHeight\"],[33302,\"TextureFormat\"],[33303,\"WrapModes\"],[33304,\"FovCot\"],[33305,\"MatrixWorldToScreen\"],[33306,\"MatrixWorldToCamera\"],[33405,\"Model2\"],[33421,\"CFARepeatPatternDim\"],[33422,\"CFAPattern2\"],[33423,\"BatteryLevel\"],[33424,\"KodakIFD\"],[33445,\"MDFileTag\"],[33446,\"MDScalePixel\"],[33447,\"MDColorTable\"],[33448,\"MDLabName\"],[33449,\"MDSampleInfo\"],[33450,\"MDPrepDate\"],[33451,\"MDPrepTime\"],[33452,\"MDFileUnits\"],[33589,\"AdventScale\"],[33590,\"AdventRevision\"],[33628,\"UIC1Tag\"],[33629,\"UIC2Tag\"],[33630,\"UIC3Tag\"],[33631,\"UIC4Tag\"],[33918,\"IntergraphPacketData\"],[33919,\"IntergraphFlagRegisters\"],[33921,\"INGRReserved\"],[34016,\"Site\"],[34017,\"ColorSequence\"],[34018,\"IT8Header\"],[34019,\"RasterPadding\"],[34020,\"BitsPerRunLength\"],[34021,\"BitsPerExtendedRunLength\"],[34022,\"ColorTable\"],[34023,\"ImageColorIndicator\"],[34024,\"BackgroundColorIndicator\"],[34025,\"ImageColorValue\"],[34026,\"BackgroundColorValue\"],[34027,\"PixelIntensityRange\"],[34028,\"TransparencyIndicator\"],[34029,\"ColorCharacterization\"],[34030,\"HCUsage\"],[34031,\"TrapIndicator\"],[34032,\"CMYKEquivalent\"],[34152,\"AFCP_IPTC\"],[34232,\"PixelMagicJBIGOptions\"],[34263,\"JPLCartoIFD\"],[34306,\"WB_GRGBLevels\"],[34310,\"LeafData\"],[34687,\"TIFF_FXExtensions\"],[34688,\"MultiProfiles\"],[34689,\"SharedData\"],[34690,\"T88Options\"],[34732,\"ImageLayer\"],[34750,\"JBIGOptions\"],[34856,\"Opto-ElectricConvFactor\"],[34857,\"Interlace\"],[34908,\"FaxRecvParams\"],[34909,\"FaxSubAddress\"],[34910,\"FaxRecvTime\"],[34929,\"FedexEDR\"],[34954,\"LeafSubIFD\"],[37387,\"FlashEnergy\"],[37388,\"SpatialFrequencyResponse\"],[37389,\"Noise\"],[37390,\"FocalPlaneXResolution\"],[37391,\"FocalPlaneYResolution\"],[37392,\"FocalPlaneResolutionUnit\"],[37397,\"ExposureIndex\"],[37398,\"TIFF-EPStandardID\"],[37399,\"SensingMethod\"],[37434,\"CIP3DataFile\"],[37435,\"CIP3Sheet\"],[37436,\"CIP3Side\"],[37439,\"StoNits\"],[37679,\"MSDocumentText\"],[37680,\"MSPropertySetStorage\"],[37681,\"MSDocumentTextPosition\"],[37724,\"ImageSourceData\"],[40965,\"InteropIFD\"],[40976,\"SamsungRawPointersOffset\"],[40977,\"SamsungRawPointersLength\"],[41217,\"SamsungRawByteOrder\"],[41218,\"SamsungRawUnknown\"],[41484,\"SpatialFrequencyResponse\"],[41485,\"Noise\"],[41489,\"ImageNumber\"],[41490,\"SecurityClassification\"],[41491,\"ImageHistory\"],[41494,\"TIFF-EPStandardID\"],[41995,\"DeviceSettingDescription\"],[42112,\"GDALMetadata\"],[42113,\"GDALNoData\"],[44992,\"ExpandSoftware\"],[44993,\"ExpandLens\"],[44994,\"ExpandFilm\"],[44995,\"ExpandFilterLens\"],[44996,\"ExpandScanner\"],[44997,\"ExpandFlashLamp\"],[46275,\"HasselbladRawImage\"],[48129,\"PixelFormat\"],[48130,\"Transformation\"],[48131,\"Uncompressed\"],[48132,\"ImageType\"],[48256,\"ImageWidth\"],[48257,\"ImageHeight\"],[48258,\"WidthResolution\"],[48259,\"HeightResolution\"],[48320,\"ImageOffset\"],[48321,\"ImageByteCount\"],[48322,\"AlphaOffset\"],[48323,\"AlphaByteCount\"],[48324,\"ImageDataDiscard\"],[48325,\"AlphaDataDiscard\"],[50215,\"OceScanjobDesc\"],[50216,\"OceApplicationSelector\"],[50217,\"OceIDNumber\"],[50218,\"OceImageLogic\"],[50255,\"Annotations\"],[50459,\"HasselbladExif\"],[50547,\"OriginalFileName\"],[50560,\"USPTOOriginalContentType\"],[50656,\"CR2CFAPattern\"],[50710,\"CFAPlaneColor\"],[50711,\"CFALayout\"],[50712,\"LinearizationTable\"],[50713,\"BlackLevelRepeatDim\"],[50714,\"BlackLevel\"],[50715,\"BlackLevelDeltaH\"],[50716,\"BlackLevelDeltaV\"],[50717,\"WhiteLevel\"],[50718,\"DefaultScale\"],[50719,\"DefaultCropOrigin\"],[50720,\"DefaultCropSize\"],[50733,\"BayerGreenSplit\"],[50737,\"ChromaBlurRadius\"],[50738,\"AntiAliasStrength\"],[50752,\"RawImageSegmentation\"],[50780,\"BestQualityScale\"],[50784,\"AliasLayerMetadata\"],[50829,\"ActiveArea\"],[50830,\"MaskedAreas\"],[50935,\"NoiseReductionApplied\"],[50974,\"SubTileBlockSize\"],[50975,\"RowInterleaveFactor\"],[51008,\"OpcodeList1\"],[51009,\"OpcodeList2\"],[51022,\"OpcodeList3\"],[51041,\"NoiseProfile\"],[51114,\"CacheVersion\"],[51125,\"DefaultUserCrop\"],[51157,\"NikonNEFInfo\"],[65024,\"KdcIFD\"]];E(N,\"ifd0\",At),E(N,\"exif\",At),B(G,\"gps\",[[23,{M:\"Magnetic North\",T:\"True North\"}],[25,{K:\"Kilometers\",M:\"Miles\",N:\"Nautical Miles\"}]]);class Dt extends ge{static canHandle(e,t){return 224===e.getUint8(t+1)&&1246120262===e.getUint32(t+4)&&0===e.getUint8(t+8)}parse(){return this.parseTags(),this.translate(),this.output}parseTags(){this.raw=new Map([[0,this.chunk.getUint16(0)],[2,this.chunk.getUint8(2)],[3,this.chunk.getUint16(3)],[5,this.chunk.getUint16(5)],[7,this.chunk.getUint8(7)],[8,this.chunk.getUint8(8)]])}}f(Dt,\"type\",\"jfif\"),f(Dt,\"headerLength\",9),A.set(\"jfif\",Dt),B(N,\"jfif\",[[0,\"JFIFVersion\"],[2,\"ResolutionUnit\"],[3,\"XResolution\"],[5,\"YResolution\"],[7,\"ThumbnailWidth\"],[8,\"ThumbnailHeight\"]]);class Ot extends ge{parse(){return this.parseTags(),this.translate(),this.output}parseTags(){this.raw=new Map([[0,this.chunk.getUint32(0)],[4,this.chunk.getUint32(4)],[8,this.chunk.getUint8(8)],[9,this.chunk.getUint8(9)],[10,this.chunk.getUint8(10)],[11,this.chunk.getUint8(11)],[12,this.chunk.getUint8(12)],...Array.from(this.raw)])}}f(Ot,\"type\",\"ihdr\"),A.set(\"ihdr\",Ot),B(N,\"ihdr\",[[0,\"ImageWidth\"],[4,\"ImageHeight\"],[8,\"BitDepth\"],[9,\"ColorType\"],[10,\"Compression\"],[11,\"Filter\"],[12,\"Interlace\"]]),B(G,\"ihdr\",[[9,{0:\"Grayscale\",2:\"RGB\",3:\"Palette\",4:\"Grayscale with Alpha\",6:\"RGB with Alpha\",DEFAULT:\"Unknown\"}],[10,{0:\"Deflate/Inflate\",DEFAULT:\"Unknown\"}],[11,{0:\"Adaptive\",DEFAULT:\"Unknown\"}],[12,{0:\"Noninterlaced\",1:\"Adam7 Interlace\",DEFAULT:\"Unknown\"}]]);const xt=\"\\0\\0\\0\\0\";class vt extends ge{static canHandle(e,t){return 226===e.getUint8(t+1)&&1229144927===e.getUint32(t+4)}static findPosition(e,t){let i=super.findPosition(e,t);return i.chunkNumber=e.getUint8(t+16),i.chunkCount=e.getUint8(t+17),i.multiSegment=i.chunkCount>1,i}static handleMultiSegments(e){return function(e){let t=function(e){let t=e[0].constructor,i=0;for(let t of e)i+=t.length;let n=new t(i),s=0;for(let t of e)n.set(t,s),s+=t.length;return n}(e.map((e=>e.chunk.toUint8())));return new I(t)}(e)}parse(){return this.raw=new Map,this.parseHeader(),this.parseTags(),this.translate(),this.output}parseHeader(){let{raw:e}=this;this.chunk.byteLength<84&&m(\"ICC header is too short\");for(let[t,i]of Object.entries(Mt)){t=parseInt(t,10);let n=i(this.chunk,t);n!==xt&&e.set(t,n)}}parseTags(){let e,t,i,n,s,{raw:r}=this,a=this.chunk.getUint32(128),o=132,l=this.chunk.byteLength;for(;a--;){if(e=this.chunk.getString(o,4),t=this.chunk.getUint32(o+4),i=this.chunk.getUint32(o+8),n=this.chunk.getString(t,4),t+i>l)return void console.warn(\"reached the end of the first ICC chunk. Enable options.tiff.multiSegment to read all ICC segments.\");s=this.parseTag(n,t,i),void 0!==s&&s!==xt&&r.set(e,s),o+=12}}parseTag(e,t,i){switch(e){case\"desc\":return this.parseDesc(t);case\"mluc\":return this.parseMluc(t);case\"text\":return this.parseText(t,i);case\"sig \":return this.parseSig(t)}if(!(t+i>this.chunk.byteLength))return this.chunk.getUint8Array(t,i)}parseDesc(e){let t=this.chunk.getUint32(e+8)-1;return S(this.chunk.getString(e+12,t))}parseText(e,t){return S(this.chunk.getString(e+8,t-8))}parseSig(e){return S(this.chunk.getString(e+8,4))}parseMluc(e){let{chunk:t}=this,i=t.getUint32(e+8),n=t.getUint32(e+12),s=e+16,r=[];for(let a=0;a<i;a++){let i=t.getString(s+0,2),a=t.getString(s+2,2),o=t.getUint32(s+4),l=t.getUint32(s+8)+e,h=S(t.getUnicodeString(l,o));r.push({lang:i,country:a,text:h}),s+=n}return 1===i?r[0].text:r}translateValue(e,t){return\"string\"==typeof e?t[e]||t[e.toLowerCase()]||e:t[e]||e}}f(vt,\"type\",\"icc\"),f(vt,\"multiSegment\",!0),f(vt,\"headerLength\",18);const Mt={4:Rt,8:function(e,t){return[e.getUint8(t),e.getUint8(t+1)>>4,e.getUint8(t+1)%16].map((e=>e.toString(10))).join(\".\")},12:Rt,16:Rt,20:Rt,24:function(e,t){const i=e.getUint16(t),n=e.getUint16(t+2)-1,s=e.getUint16(t+4),r=e.getUint16(t+6),a=e.getUint16(t+8),o=e.getUint16(t+10);return new Date(Date.UTC(i,n,s,r,a,o))},36:Rt,40:Rt,48:Rt,52:Rt,64:(e,t)=>e.getUint32(t),80:Rt};function Rt(e,t){return S(e.getString(t,4))}A.set(\"icc\",vt),B(N,\"icc\",[[4,\"ProfileCMMType\"],[8,\"ProfileVersion\"],[12,\"ProfileClass\"],[16,\"ColorSpaceData\"],[20,\"ProfileConnectionSpace\"],[24,\"ProfileDateTime\"],[36,\"ProfileFileSignature\"],[40,\"PrimaryPlatform\"],[44,\"CMMFlags\"],[48,\"DeviceManufacturer\"],[52,\"DeviceModel\"],[56,\"DeviceAttributes\"],[64,\"RenderingIntent\"],[68,\"ConnectionSpaceIlluminant\"],[80,\"ProfileCreator\"],[84,\"ProfileID\"],[\"Header\",\"ProfileHeader\"],[\"MS00\",\"WCSProfiles\"],[\"bTRC\",\"BlueTRC\"],[\"bXYZ\",\"BlueMatrixColumn\"],[\"bfd\",\"UCRBG\"],[\"bkpt\",\"MediaBlackPoint\"],[\"calt\",\"CalibrationDateTime\"],[\"chad\",\"ChromaticAdaptation\"],[\"chrm\",\"Chromaticity\"],[\"ciis\",\"ColorimetricIntentImageState\"],[\"clot\",\"ColorantTableOut\"],[\"clro\",\"ColorantOrder\"],[\"clrt\",\"ColorantTable\"],[\"cprt\",\"ProfileCopyright\"],[\"crdi\",\"CRDInfo\"],[\"desc\",\"ProfileDescription\"],[\"devs\",\"DeviceSettings\"],[\"dmdd\",\"DeviceModelDesc\"],[\"dmnd\",\"DeviceMfgDesc\"],[\"dscm\",\"ProfileDescriptionML\"],[\"fpce\",\"FocalPlaneColorimetryEstimates\"],[\"gTRC\",\"GreenTRC\"],[\"gXYZ\",\"GreenMatrixColumn\"],[\"gamt\",\"Gamut\"],[\"kTRC\",\"GrayTRC\"],[\"lumi\",\"Luminance\"],[\"meas\",\"Measurement\"],[\"meta\",\"Metadata\"],[\"mmod\",\"MakeAndModel\"],[\"ncl2\",\"NamedColor2\"],[\"ncol\",\"NamedColor\"],[\"ndin\",\"NativeDisplayInfo\"],[\"pre0\",\"Preview0\"],[\"pre1\",\"Preview1\"],[\"pre2\",\"Preview2\"],[\"ps2i\",\"PS2RenderingIntent\"],[\"ps2s\",\"PostScript2CSA\"],[\"psd0\",\"PostScript2CRD0\"],[\"psd1\",\"PostScript2CRD1\"],[\"psd2\",\"PostScript2CRD2\"],[\"psd3\",\"PostScript2CRD3\"],[\"pseq\",\"ProfileSequenceDesc\"],[\"psid\",\"ProfileSequenceIdentifier\"],[\"psvm\",\"PS2CRDVMSize\"],[\"rTRC\",\"RedTRC\"],[\"rXYZ\",\"RedMatrixColumn\"],[\"resp\",\"OutputResponse\"],[\"rhoc\",\"ReflectionHardcopyOrigColorimetry\"],[\"rig0\",\"PerceptualRenderingIntentGamut\"],[\"rig2\",\"SaturationRenderingIntentGamut\"],[\"rpoc\",\"ReflectionPrintOutputColorimetry\"],[\"sape\",\"SceneAppearanceEstimates\"],[\"scoe\",\"SceneColorimetryEstimates\"],[\"scrd\",\"ScreeningDesc\"],[\"scrn\",\"Screening\"],[\"targ\",\"CharTarget\"],[\"tech\",\"Technology\"],[\"vcgt\",\"VideoCardGamma\"],[\"view\",\"ViewingConditions\"],[\"vued\",\"ViewingCondDesc\"],[\"wtpt\",\"MediaWhitePoint\"]]);const Lt={\"4d2p\":\"Erdt Systems\",AAMA:\"Aamazing Technologies\",ACER:\"Acer\",ACLT:\"Acolyte Color Research\",ACTI:\"Actix Sytems\",ADAR:\"Adara Technology\",ADBE:\"Adobe\",ADI:\"ADI Systems\",AGFA:\"Agfa Graphics\",ALMD:\"Alps Electric\",ALPS:\"Alps Electric\",ALWN:\"Alwan Color Expertise\",AMTI:\"Amiable Technologies\",AOC:\"AOC International\",APAG:\"Apago\",APPL:\"Apple Computer\",AST:\"AST\",\"AT&T\":\"AT&T\",BAEL:\"BARBIERI electronic\",BRCO:\"Barco NV\",BRKP:\"Breakpoint\",BROT:\"Brother\",BULL:\"Bull\",BUS:\"Bus Computer Systems\",\"C-IT\":\"C-Itoh\",CAMR:\"Intel\",CANO:\"Canon\",CARR:\"Carroll Touch\",CASI:\"Casio\",CBUS:\"Colorbus PL\",CEL:\"Crossfield\",CELx:\"Crossfield\",CGS:\"CGS Publishing Technologies International\",CHM:\"Rochester Robotics\",CIGL:\"Colour Imaging Group, London\",CITI:\"Citizen\",CL00:\"Candela\",CLIQ:\"Color IQ\",CMCO:\"Chromaco\",CMiX:\"CHROMiX\",COLO:\"Colorgraphic Communications\",COMP:\"Compaq\",COMp:\"Compeq/Focus Technology\",CONR:\"Conrac Display Products\",CORD:\"Cordata Technologies\",CPQ:\"Compaq\",CPRO:\"ColorPro\",CRN:\"Cornerstone\",CTX:\"CTX International\",CVIS:\"ColorVision\",CWC:\"Fujitsu Laboratories\",DARI:\"Darius Technology\",DATA:\"Dataproducts\",DCP:\"Dry Creek Photo\",DCRC:\"Digital Contents Resource Center, Chung-Ang University\",DELL:\"Dell Computer\",DIC:\"Dainippon Ink and Chemicals\",DICO:\"Diconix\",DIGI:\"Digital\",\"DL&C\":\"Digital Light & Color\",DPLG:\"Doppelganger\",DS:\"Dainippon Screen\",DSOL:\"DOOSOL\",DUPN:\"DuPont\",EPSO:\"Epson\",ESKO:\"Esko-Graphics\",ETRI:\"Electronics and Telecommunications Research Institute\",EVER:\"Everex Systems\",EXAC:\"ExactCODE\",Eizo:\"Eizo\",FALC:\"Falco Data Products\",FF:\"Fuji Photo Film\",FFEI:\"FujiFilm Electronic Imaging\",FNRD:\"Fnord Software\",FORA:\"Fora\",FORE:\"Forefront Technology\",FP:\"Fujitsu\",FPA:\"WayTech Development\",FUJI:\"Fujitsu\",FX:\"Fuji Xerox\",GCC:\"GCC Technologies\",GGSL:\"Global Graphics Software\",GMB:\"Gretagmacbeth\",GMG:\"GMG\",GOLD:\"GoldStar Technology\",GOOG:\"Google\",GPRT:\"Giantprint\",GTMB:\"Gretagmacbeth\",GVC:\"WayTech Development\",GW2K:\"Sony\",HCI:\"HCI\",HDM:\"Heidelberger Druckmaschinen\",HERM:\"Hermes\",HITA:\"Hitachi America\",HP:\"Hewlett-Packard\",HTC:\"Hitachi\",HiTi:\"HiTi Digital\",IBM:\"IBM\",IDNT:\"Scitex\",IEC:\"Hewlett-Packard\",IIYA:\"Iiyama North America\",IKEG:\"Ikegami Electronics\",IMAG:\"Image Systems\",IMI:\"Ingram Micro\",INTC:\"Intel\",INTL:\"N/A (INTL)\",INTR:\"Intra Electronics\",IOCO:\"Iocomm International Technology\",IPS:\"InfoPrint Solutions Company\",IRIS:\"Scitex\",ISL:\"Ichikawa Soft Laboratory\",ITNL:\"N/A (ITNL)\",IVM:\"IVM\",IWAT:\"Iwatsu Electric\",Idnt:\"Scitex\",Inca:\"Inca Digital Printers\",Iris:\"Scitex\",JPEG:\"Joint Photographic Experts Group\",JSFT:\"Jetsoft Development\",JVC:\"JVC Information Products\",KART:\"Scitex\",KFC:\"KFC Computek Components\",KLH:\"KLH Computers\",KMHD:\"Konica Minolta\",KNCA:\"Konica\",KODA:\"Kodak\",KYOC:\"Kyocera\",Kart:\"Scitex\",LCAG:\"Leica\",LCCD:\"Leeds Colour\",LDAK:\"Left Dakota\",LEAD:\"Leading Technology\",LEXM:\"Lexmark International\",LINK:\"Link Computer\",LINO:\"Linotronic\",LITE:\"Lite-On\",Leaf:\"Leaf\",Lino:\"Linotronic\",MAGC:\"Mag Computronic\",MAGI:\"MAG Innovision\",MANN:\"Mannesmann\",MICN:\"Micron Technology\",MICR:\"Microtek\",MICV:\"Microvitec\",MINO:\"Minolta\",MITS:\"Mitsubishi Electronics America\",MITs:\"Mitsuba\",MNLT:\"Minolta\",MODG:\"Modgraph\",MONI:\"Monitronix\",MONS:\"Monaco Systems\",MORS:\"Morse Technology\",MOTI:\"Motive Systems\",MSFT:\"Microsoft\",MUTO:\"MUTOH INDUSTRIES\",Mits:\"Mitsubishi Electric\",NANA:\"NANAO\",NEC:\"NEC\",NEXP:\"NexPress Solutions\",NISS:\"Nissei Sangyo America\",NKON:\"Nikon\",NONE:\"none\",OCE:\"Oce Technologies\",OCEC:\"OceColor\",OKI:\"Oki\",OKID:\"Okidata\",OKIP:\"Okidata\",OLIV:\"Olivetti\",OLYM:\"Olympus\",ONYX:\"Onyx Graphics\",OPTI:\"Optiquest\",PACK:\"Packard Bell\",PANA:\"Matsushita Electric Industrial\",PANT:\"Pantone\",PBN:\"Packard Bell\",PFU:\"PFU\",PHIL:\"Philips Consumer Electronics\",PNTX:\"HOYA\",POne:\"Phase One A/S\",PREM:\"Premier Computer Innovations\",PRIN:\"Princeton Graphic Systems\",PRIP:\"Princeton Publishing Labs\",QLUX:\"Hong Kong\",QMS:\"QMS\",QPCD:\"QPcard AB\",QUAD:\"QuadLaser\",QUME:\"Qume\",RADI:\"Radius\",RDDx:\"Integrated Color Solutions\",RDG:\"Roland DG\",REDM:\"REDMS Group\",RELI:\"Relisys\",RGMS:\"Rolf Gierling Multitools\",RICO:\"Ricoh\",RNLD:\"Edmund Ronald\",ROYA:\"Royal\",RPC:\"Ricoh Printing Systems\",RTL:\"Royal Information Electronics\",SAMP:\"Sampo\",SAMS:\"Samsung\",SANT:\"Jaime Santana Pomares\",SCIT:\"Scitex\",SCRN:\"Dainippon Screen\",SDP:\"Scitex\",SEC:\"Samsung\",SEIK:\"Seiko Instruments\",SEIk:\"Seikosha\",SGUY:\"ScanGuy.com\",SHAR:\"Sharp Laboratories\",SICC:\"International Color Consortium\",SONY:\"Sony\",SPCL:\"SpectraCal\",STAR:\"Star\",STC:\"Sampo Technology\",Scit:\"Scitex\",Sdp:\"Scitex\",Sony:\"Sony\",TALO:\"Talon Technology\",TAND:\"Tandy\",TATU:\"Tatung\",TAXA:\"TAXAN America\",TDS:\"Tokyo Denshi Sekei\",TECO:\"TECO Information Systems\",TEGR:\"Tegra\",TEKT:\"Tektronix\",TI:\"Texas Instruments\",TMKR:\"TypeMaker\",TOSB:\"Toshiba\",TOSH:\"Toshiba\",TOTK:\"TOTOKU ELECTRIC\",TRIU:\"Triumph\",TSBT:\"Toshiba\",TTX:\"TTX Computer Products\",TVM:\"TVM Professional Monitor\",TW:\"TW Casper\",ULSX:\"Ulead Systems\",UNIS:\"Unisys\",UTZF:\"Utz Fehlau & Sohn\",VARI:\"Varityper\",VIEW:\"Viewsonic\",VISL:\"Visual communication\",VIVO:\"Vivo Mobile Communication\",WANG:\"Wang\",WLBR:\"Wilbur Imaging\",WTG2:\"Ware To Go\",WYSE:\"WYSE Technology\",XERX:\"Xerox\",XRIT:\"X-Rite\",ZRAN:\"Zoran\",Zebr:\"Zebra Technologies\",appl:\"Apple Computer\",bICC:\"basICColor\",berg:\"bergdesign\",ceyd:\"Integrated Color Solutions\",clsp:\"MacDermid ColorSpan\",ds:\"Dainippon Screen\",dupn:\"DuPont\",ffei:\"FujiFilm Electronic Imaging\",flux:\"FluxData\",iris:\"Scitex\",kart:\"Scitex\",lcms:\"Little CMS\",lino:\"Linotronic\",none:\"none\",ob4d:\"Erdt Systems\",obic:\"Medigraph\",quby:\"Qubyx Sarl\",scit:\"Scitex\",scrn:\"Dainippon Screen\",sdp:\"Scitex\",siwi:\"SIWI GRAFIKA\",yxym:\"YxyMaster\"},Ut={scnr:\"Scanner\",mntr:\"Monitor\",prtr:\"Printer\",link:\"Device Link\",abst:\"Abstract\",spac:\"Color Space Conversion Profile\",nmcl:\"Named Color\",cenc:\"ColorEncodingSpace profile\",mid:\"MultiplexIdentification profile\",mlnk:\"MultiplexLink profile\",mvis:\"MultiplexVisualization profile\",nkpf:\"Nikon Input Device Profile (NON-STANDARD!)\"};B(G,\"icc\",[[4,Lt],[12,Ut],[40,Object.assign({},Lt,Ut)],[48,Lt],[80,Lt],[64,{0:\"Perceptual\",1:\"Relative Colorimetric\",2:\"Saturation\",3:\"Absolute Colorimetric\"}],[\"tech\",{amd:\"Active Matrix Display\",crt:\"Cathode Ray Tube Display\",kpcd:\"Photo CD\",pmd:\"Passive Matrix Display\",dcam:\"Digital Camera\",dcpj:\"Digital Cinema Projector\",dmpc:\"Digital Motion Picture Camera\",dsub:\"Dye Sublimation Printer\",epho:\"Electrophotographic Printer\",esta:\"Electrostatic Printer\",flex:\"Flexography\",fprn:\"Film Writer\",fscn:\"Film Scanner\",grav:\"Gravure\",ijet:\"Ink Jet Printer\",imgs:\"Photo Image Setter\",mpfr:\"Motion Picture Film Recorder\",mpfs:\"Motion Picture Film Scanner\",offs:\"Offset Lithography\",pjtv:\"Projection Television\",rpho:\"Photographic Paper Printer\",rscn:\"Reflective Scanner\",silk:\"Silkscreen\",twax:\"Thermal Wax Printer\",vidc:\"Video Camera\",vidm:\"Video Monitor\"}]]);class Ft extends ge{static canHandle(e,t,i){return 237===e.getUint8(t+1)&&\"Photoshop\"===e.getString(t+4,9)&&void 0!==this.containsIptc8bim(e,t,i)}static headerLength(e,t,i){let n,s=this.containsIptc8bim(e,t,i);if(void 0!==s)return n=e.getUint8(t+s+7),n%2!=0&&(n+=1),0===n&&(n=4),s+8+n}static containsIptc8bim(e,t,i){for(let n=0;n<i;n++)if(this.isIptcSegmentHead(e,t+n))return n}static isIptcSegmentHead(e,t){return 56===e.getUint8(t)&&943868237===e.getUint32(t)&&1028===e.getUint16(t+4)}parse(){let{raw:e}=this,t=this.chunk.byteLength-1,i=!1;for(let n=0;n<t;n++)if(28===this.chunk.getUint8(n)&&2===this.chunk.getUint8(n+1)){i=!0;let t=this.chunk.getUint16(n+3),s=this.chunk.getUint8(n+2),r=this.chunk.getLatin1String(n+5,t);e.set(s,this.pluralizeValue(e.get(s),r)),n+=4+t}else if(i)break;return this.translate(),this.output}pluralizeValue(e,t){return void 0!==e?e instanceof Array?(e.push(t),e):[e,t]:t}}f(Ft,\"type\",\"iptc\"),f(Ft,\"translateValues\",!1),f(Ft,\"reviveValues\",!1),A.set(\"iptc\",Ft),B(N,\"iptc\",[[0,\"ApplicationRecordVersion\"],[3,\"ObjectTypeReference\"],[4,\"ObjectAttributeReference\"],[5,\"ObjectName\"],[7,\"EditStatus\"],[8,\"EditorialUpdate\"],[10,\"Urgency\"],[12,\"SubjectReference\"],[15,\"Category\"],[20,\"SupplementalCategories\"],[22,\"FixtureIdentifier\"],[25,\"Keywords\"],[26,\"ContentLocationCode\"],[27,\"ContentLocationName\"],[30,\"ReleaseDate\"],[35,\"ReleaseTime\"],[37,\"ExpirationDate\"],[38,\"ExpirationTime\"],[40,\"SpecialInstructions\"],[42,\"ActionAdvised\"],[45,\"ReferenceService\"],[47,\"ReferenceDate\"],[50,\"ReferenceNumber\"],[55,\"DateCreated\"],[60,\"TimeCreated\"],[62,\"DigitalCreationDate\"],[63,\"DigitalCreationTime\"],[65,\"OriginatingProgram\"],[70,\"ProgramVersion\"],[75,\"ObjectCycle\"],[80,\"Byline\"],[85,\"BylineTitle\"],[90,\"City\"],[92,\"Sublocation\"],[95,\"State\"],[100,\"CountryCode\"],[101,\"Country\"],[103,\"OriginalTransmissionReference\"],[105,\"Headline\"],[110,\"Credit\"],[115,\"Source\"],[116,\"CopyrightNotice\"],[118,\"Contact\"],[120,\"Caption\"],[121,\"LocalCaption\"],[122,\"Writer\"],[125,\"RasterizedCaption\"],[130,\"ImageType\"],[131,\"ImageOrientation\"],[135,\"LanguageIdentifier\"],[150,\"AudioType\"],[151,\"AudioSamplingRate\"],[152,\"AudioSamplingResolution\"],[153,\"AudioDuration\"],[154,\"AudioOutcue\"],[184,\"JobID\"],[185,\"MasterDocumentID\"],[186,\"ShortDocumentID\"],[187,\"UniqueDocumentID\"],[188,\"OwnerID\"],[200,\"ObjectPreviewFileFormat\"],[201,\"ObjectPreviewFileVersion\"],[202,\"ObjectPreviewData\"],[221,\"Prefs\"],[225,\"ClassifyState\"],[228,\"SimilarityIndex\"],[230,\"DocumentNotes\"],[231,\"DocumentHistory\"],[232,\"ExifCameraInfo\"],[255,\"CatalogSets\"]]),B(G,\"iptc\",[[10,{0:\"0 (reserved)\",1:\"1 (most urgent)\",2:\"2\",3:\"3\",4:\"4\",5:\"5 (normal urgency)\",6:\"6\",7:\"7\",8:\"8 (least urgent)\",9:\"9 (user-defined priority)\"}],[75,{a:\"Morning\",b:\"Both Morning and Evening\",p:\"Evening\"}],[131,{L:\"Landscape\",P:\"Portrait\",S:\"Square\"}]]),e.Exifr=ce,e.Options=oe,e.allFormatters=ie,e.chunkedProps=$,e.createDictionary=B,e.default=ft,e.extendDictionary=E,e.fetchUrlAsArrayBuffer=L,e.fileParsers=T,e.fileReaders=D,e.gps=De,e.gpsOnlyOptions=Ae,e.inheritables=te,e.orientation=Re,e.orientationOnlyOptions=Me,e.otherSegments=J,e.parse=fe,e.readBlobAsArrayBuffer=U,e.rotation=Ue,e.rotations=Le,e.segmentParsers=A,e.segments=q,e.segmentsAndBlocks=Z,e.sidecar=async function(e,t,i){let n=new oe(t);n.chunked=!1,void 0===i&&\"string\"==typeof e&&(i=function(e){let t=e.toLowerCase().split(\".\").pop();if(function(e){return\"exif\"===e||\"tiff\"===e||\"tif\"===e}(t))return\"tiff\";if(dt.includes(t))return t}(e));let s=await x(e,n);if(i){if(dt.includes(i))return gt(i,s,n);m(\"Invalid segment type\")}else{if(function(e){let t=e.getString(0,50).trim();return t.includes(\"<?xpacket\")||t.includes(\"<x:\")}(s))return gt(\"xmp\",s,n);for(let[e]of A){if(!dt.includes(e))continue;let t=await gt(e,s,n).catch(pt);if(t)return t}m(\"Unknown file format\")}},e.tagKeys=N,e.tagRevivers=V,e.tagValues=G,e.thumbnail=xe,e.thumbnailOnlyOptions=Oe,e.thumbnailUrl=ve,e.tiffBlocks=Q,e.tiffExtractables=ee,Object.defineProperty(e,\"__esModule\",{value:!0})}));\n"
  },
  {
    "path": "javascript/extensions.js",
    "content": "function extensions_apply(extensions_disabled_list, extensions_update_list, disable_all) {\n  const disable = [];\n  const update = [];\n  gradioApp().querySelectorAll('#extensions input[type=\"checkbox\"]').forEach((x) => {\n    if (x.name.startsWith('enable_') && !x.checked) disable.push(x.name.substring(7));\n    if (x.name.startsWith('update_') && x.checked) update.push(x.name.substring(7));\n  });\n  restartReload();\n  log('Extensions apply:', { disable, update });\n  return [JSON.stringify(disable), JSON.stringify(update), disable_all];\n}\n\nfunction extensions_check(info, extensions_disabled_list, search_text, sort_column) {\n  const disable = [];\n  gradioApp().querySelectorAll('#extensions input[type=\"checkbox\"]').forEach((x) => {\n    if (x.name.startsWith('enable_') && !x.checked) disable.push(x.name.substring(7));\n  });\n  const id = randomId();\n  log('Extensions check:', { disable });\n  return [id, JSON.stringify(disable), search_text, sort_column];\n}\n\nfunction install_extension(button, url) {\n  button.disabled = 'disabled';\n  button.value = 'Installing...';\n  button.innerHTML = 'installing';\n  const textarea = gradioApp().querySelector('#extension_to_install textarea');\n  textarea.value = url;\n  updateInput(textarea);\n  log('Extension install:', { url });\n  gradioApp().querySelector('#install_extension_button').click();\n}\n\nfunction uninstall_extension(button, url) {\n  button.disabled = 'disabled';\n  button.value = 'Uninstalling...';\n  button.innerHTML = 'uninstalling';\n  const textarea = gradioApp().querySelector('#extension_to_install textarea');\n  textarea.value = url;\n  updateInput(textarea);\n  log('Extension uninstall:', { url });\n  gradioApp().querySelector('#uninstall_extension_button').click();\n}\n\nfunction update_extension(button, url) {\n  button.value = 'Updating...';\n  button.innerHTML = 'updating';\n  const textarea = gradioApp().querySelector('#extension_to_install textarea');\n  textarea.value = url;\n  updateInput(textarea);\n  log('Extension update:', { url });\n  gradioApp().querySelector('#update_extension_button').click();\n}\n"
  },
  {
    "path": "javascript/extraNetworks.js",
    "content": "const activePromptTextarea = {};\nlet sortVal = -1;\nlet totalCards = -1;\nlet lastTab = 'control';\n\n// helpers\n\nconst getENActiveTab = () => {\n  let tabName = '';\n  if (gradioApp().getElementById('txt2img_prompt')?.checkVisibility() || gradioApp().getElementById('txt2img_generate')?.checkVisibility()) tabName = 'txt2img';\n  else if (gradioApp().getElementById('img2img_prompt')?.checkVisibility() || gradioApp().getElementById('img2img_generate')?.checkVisibility()) tabName = 'img2img';\n  else if (gradioApp().getElementById('control_prompt')?.checkVisibility() || gradioApp().getElementById('control_generate')?.checkVisibility()) tabName = 'control';\n  else if (gradioApp().getElementById('video_prompt')?.checkVisibility() || gradioApp().getElementById('video_generate')?.checkVisibility()) tabName = 'video';\n  else if (gradioApp().getElementById('extras_image')?.checkVisibility()) tabName = 'process';\n  else if (gradioApp().getElementById('interrogate_image')?.checkVisibility()) tabName = 'caption';\n  else if (gradioApp().getElementById('tab-gallery-search')?.checkVisibility()) tabName = 'gallery';\n\n  if (['process', 'caption', 'gallery'].includes(tabName)) {\n    tabName = lastTab;\n  } else if (tabName !== '') {\n    lastTab = tabName;\n  }\n\n  if (tabName !== '') return tabName;\n  // legacy method\n  if (gradioApp().getElementById('tab_txt2img')?.style.display === 'block') tabName = 'txt2img';\n  else if (gradioApp().getElementById('tab_img2img')?.style.display === 'block') tabName = 'img2img';\n  else if (gradioApp().getElementById('tab_control')?.style.display === 'block') tabName = 'control';\n  else if (gradioApp().getElementById('tab_video')?.style.display === 'block') tabName = 'video';\n  else tabName = 'control';\n  // log('getENActiveTab', tabName);\n  return tabName;\n};\n\nconst getENActivePage = () => {\n  const tabName = getENActiveTab();\n  let page = gradioApp().querySelector(`#${tabName}_extra_networks > .tabs > .tab-nav > .selected`);\n  if (!page) page = gradioApp().querySelector(`#${tabName}_extra_tabs > .tab-nav > .selected`);\n  const pageName = page ? page.innerText : '';\n  const btnApply = gradioApp().getElementById(`${tabName}_extra_apply`);\n  if (btnApply) btnApply.style.display = pageName === 'Style' ? 'inline-flex' : 'none';\n  // log('getENActivePage', pageName);\n  return pageName;\n};\n\nconst setENState = (state) => {\n  if (!state) return;\n  state.tab = getENActiveTab();\n  state.page = getENActivePage();\n  // log('setENState', state);\n  const el = gradioApp().querySelector(`#${state.tab}_extra_state  > label > textarea`);\n  if (el) {\n    el.value = JSON.stringify(state);\n    updateInput(el);\n  }\n};\n\n// methods\n\nfunction showCardDetails(event) {\n  // log('showCardDetails', event);\n  const tabName = getENActiveTab();\n  const btn = gradioApp().getElementById(`${tabName}_extra_details_btn`);\n  btn.click();\n  event.stopPropagation();\n  event.preventDefault();\n}\n\nfunction getCardDetails(...args) {\n  // log('getCardDetails', args);\n  const el = event?.target?.parentElement?.parentElement;\n  if (el?.classList?.contains('card')) setENState({ op: 'getCardDetails', item: el.dataset.name });\n  else setENState({ op: 'getCardDetails', item: null });\n  return [...args];\n}\n\nfunction readCardTags(el, tags) {\n  const replaceOutsideBrackets = (input, target, replacement) => input.split(/(<[^>]*>|\\{[^}]*\\})/g).map((part, i) => {\n    if (i % 2 === 0) return part.split(target).join(replacement); // Only replace in the parts that are not inside brackets (which are at even indices)\n    return part;\n  }).join('');\n\n  const clickTag = (e, tag) => {\n    e.preventDefault();\n    e.stopPropagation();\n    const textarea = activePromptTextarea[getENActiveTab()];\n    let new_prompt = textarea.value;\n    new_prompt = replaceOutsideBrackets(new_prompt, ` ${tag}`, ''); // try to remove tag\n    new_prompt = replaceOutsideBrackets(new_prompt, `${tag} `, '');\n    if (new_prompt === textarea.value) new_prompt += ` ${tag}`; // if not removed, then append it\n    textarea.value = new_prompt;\n    updateInput(textarea);\n  };\n\n  if (tags.length === 0) return;\n  const cardTags = tags.split('|');\n  if (!cardTags || cardTags.length === 0) return;\n  const tagsEl = el.getElementsByClassName('tags')[0];\n  if (!tagsEl?.children || tagsEl.children.length > 0) return;\n  for (const tag of cardTags) {\n    const span = document.createElement('span');\n    span.classList.add('tag');\n    span.textContent = tag;\n    span.onclick = (e) => clickTag(e, tag);\n    tagsEl.appendChild(span);\n  }\n}\n\nfunction readCardDescription(page, item) {\n  xhrGet('/sdapi/v1/network/desc', { page, item }, (data) => {\n    const tabName = getENActiveTab();\n    const description = gradioApp().querySelector(`#${tabName}_description > label > textarea`);\n    if (description) {\n      description.value = data?.description?.trim() || '';\n      updateInput(description);\n    }\n    setENState({ op: 'readCardDescription', page, item });\n  });\n}\n\nfunction getCardsForActivePage() {\n  const pageName = getENActivePage();\n  if (!pageName) return [];\n  let allCards = Array.from(gradioApp().querySelectorAll('.extra-network-cards > .card'));\n  allCards = allCards.filter((el) => el.dataset.page?.toLowerCase().includes(pageName.toLowerCase()));\n  // log('getCardsForActivePage', pagename, cards.length);\n  return allCards;\n}\n\nasync function filterExtraNetworksForTab(searchTerm) {\n  let items = 0;\n  let found = 0;\n  searchTerm = searchTerm.toLowerCase().trim();\n  const t0 = performance.now();\n  const pagename = getENActivePage();\n  if (!pagename) return;\n  const allPages = Array.from(gradioApp().querySelectorAll('.extra-network-cards'));\n  const pages = allPages.filter((el) => el.id.toLowerCase().includes(pagename.toLowerCase()));\n  for (const pg of pages) {\n    const cards = Array.from(pg.querySelectorAll('.card') || []);\n    items += cards.length;\n    if (searchTerm === '' || searchTerm === 'all/') {\n      cards.forEach((elem) => { elem.style.display = ''; });\n    } else if (searchTerm === 'reference/') {\n      cards.forEach((elem) => {\n        elem.style.display = elem.dataset.name\n          .toLowerCase()\n          .includes('reference/') && elem.dataset.tags === '' ? '' : 'none';\n      });\n    } else if (searchTerm === 'distilled/') {\n      cards.forEach((elem) => {\n        elem.style.display = elem.dataset.tags\n          .toLowerCase()\n          .includes('distilled') ? '' : 'none';\n      });\n    } else if (searchTerm === 'community/') {\n      cards.forEach((elem) => {\n        elem.style.display = elem.dataset.tags\n          .toLowerCase()\n          .includes('community') ? '' : 'none';\n      });\n    } else if (searchTerm === 'cloud/') {\n      cards.forEach((elem) => {\n        elem.style.display = elem.dataset.tags\n          .toLowerCase()\n          .includes('cloud') ? '' : 'none';\n      });\n    } else if (searchTerm === 'quantized/') {\n      cards.forEach((elem) => {\n        elem.style.display = elem.dataset.tags\n          .toLowerCase()\n          .includes('quantized') ? '' : 'none';\n      });\n    } else if (searchTerm === 'local/') {\n      cards.forEach((elem) => {\n        elem.style.display = elem.dataset.name\n          .toLowerCase()\n          .includes('reference/') ? 'none' : '';\n      });\n    } else if (searchTerm === 'diffusers/') {\n      cards.forEach((elem) => {\n        elem.style.display = elem.dataset.name\n          .toLowerCase().replace('models--', 'diffusers').replaceAll('\\\\', '/')\n          .includes('diffusers/') ? '' : 'none';\n      });\n    } else if (searchTerm.startsWith('r#')) {\n      searchTerm = searchTerm.substring(2);\n      const re = new RegExp(searchTerm, 'i');\n      cards.forEach((elem) => {\n        elem.style.display = re.test(`filename: ${elem.dataset.filename}|name: ${elem.dataset.name}|tags: ${elem.dataset.tags}`) ? '' : 'none';\n      });\n    } else {\n      const searchList = searchTerm.split('|').filter((s) => s !== '' && !s.startsWith('-')).map((s) => s.trim());\n      const excludeList = searchTerm.split('|').filter((s) => s !== '' && s.trim().startsWith('-')).map((s) => s.trim().substring(1).trim());\n      const searchListAll = searchList.map((s) => s.split('&').map((t) => t.trim()));\n      const excludeListAll = excludeList.map((s) => s.split('&').map((t) => t.trim()));\n      cards.forEach((elem) => {\n        let text = '';\n        if (elem.dataset.filename) text += `${elem.dataset.filename} `;\n        if (elem.dataset.name) text += `${elem.dataset.name} `;\n        if (elem.dataset.tags) text += `${elem.dataset.tags} `;\n        text = text.toLowerCase().replace('models--', 'diffusers').replaceAll('\\\\', '/');\n        if (searchListAll.some((sl) => sl.every((st) => text.includes(st))) && !excludeListAll.some((el) => el.every((et) => text.includes(et)))) {\n          elem.style.display = '';\n        } else {\n          elem.style.display = 'none';\n        }\n      });\n    }\n    found += cards.filter((elem) => elem.style.display === '').length;\n  }\n  const t1 = performance.now();\n  log(`filterExtraNetworks: text=\"${searchTerm}\" items=${items} match=${found} time=${Math.round(t1 - t0)}`);\n}\n\nfunction tryToRemoveExtraNetworkFromPrompt(textarea, text) {\n  const re_extranet = /<([^:]+:[^:]+):[\\d.]+>/;\n  const re_extranet_g = /\\s+<([^:]+:[^:]+):[\\d.]+>/g;\n  let m = text.match(re_extranet);\n  let replaced = false;\n  let newTextareaText;\n  if (m) {\n    const partToSearch = m[1];\n    newTextareaText = textarea.value.replaceAll(re_extranet_g, (found) => {\n      m = found.match(re_extranet);\n      if (m[1] === partToSearch) {\n        replaced = true;\n        return '';\n      }\n      return found;\n    });\n  } else {\n    newTextareaText = textarea.value.replaceAll(new RegExp(text, 'g'), (found) => {\n      if (found === text) {\n        replaced = true;\n        return '';\n      }\n      return found;\n    });\n  }\n  if (replaced) {\n    textarea.value = newTextareaText;\n    return true;\n  }\n  return false;\n}\n\nfunction sortExtraNetworks(fixed = 'no') {\n  const t0 = performance.now();\n  const sortDesc = ['Default', 'Name [A-Z]', 'Name [Z-A]', 'Date [Newest]', 'Date [Oldest]', 'Size [Largest]', 'Size [Smallest]'];\n  const pagename = getENActivePage();\n  if (!pagename) return 'sort error: unknown page';\n  const allPages = Array.from(gradioApp().querySelectorAll('.extra-network-cards'));\n  const pages = allPages.filter((el) => el.id.toLowerCase().includes(pagename.toLowerCase()));\n  let num = 0;\n  if (sortVal === -1) sortVal = sortDesc.indexOf(opts.extra_networks_sort);\n  if (fixed !== 'fixed') sortVal = (sortVal + 1) % sortDesc.length;\n  for (const pg of pages) {\n    const cards = Array.from(pg.querySelectorAll('.card') || []);\n    if (cards.length === 0) return 'sort: no cards';\n    num += cards.length;\n    cards.sort((a, b) => {\n      switch (sortVal) {\n        case 0: return 0;\n        case 1: return a.dataset.name ? a.dataset.name.localeCompare(b.dataset.name) : 0;\n        case 2: return b.dataset.name ? b.dataset.name.localeCompare(a.dataset.name) : 0;\n        case 3: return a.dataset.mtime ? (new Date(b.dataset.mtime)).getTime() - (new Date(a.dataset.mtime)).getTime() : 0;\n        case 4: return b.dataset.mtime ? (new Date(a.dataset.mtime)).getTime() - (new Date(b.dataset.mtime)).getTime() : 0;\n        case 5: return a.dataset.size && !isNaN(a.dataset.size) ? parseFloat(b.dataset.size) - parseFloat(a.dataset.size) : 0;\n        case 6: return b.dataset.size && !isNaN(b.dataset.size) ? parseFloat(a.dataset.size) - parseFloat(b.dataset.size) : 0;\n      }\n      return 0;\n    });\n    for (const card of cards) pg.appendChild(card);\n  }\n  const desc = sortDesc[sortVal];\n  const t1 = performance.now();\n  log('sortNetworks', { name: pagename, val: sortVal, order: desc, fixed: fixed === 'fixed', items: num, time: Math.round(t1 - t0) });\n  return desc;\n}\n\nfunction refreshENInput(tabName) {\n  log('refreshNetworks', tabName, gradioApp().querySelector(`#${tabName}_extra_networks textarea`)?.value);\n  gradioApp().querySelector(`#${tabName}_extra_networks textarea`)?.dispatchEvent(new Event('input'));\n}\n\nasync function markSelectedCards(selected, page = '') {\n  log('markSelectedCards', selected, page);\n  gradioApp().querySelectorAll('.extra-network-cards .card').forEach((el) => {\n    if (page.length > 0 && el.dataset.page !== page) return; // filter by page\n    if (selected.includes(el.dataset.name) || selected.includes(el.dataset.short)) el.classList.add('card-selected');\n    else el.classList.remove('card-selected');\n  });\n}\n\nfunction extractLoraNames(prompt) {\n  const regex = /<lora:([^:>]+)(?::[\\d.]+)?>/g;\n  const names = [];\n  let match;\n  while ((match = regex.exec(prompt)) !== null) names.push(match[1]); // eslint-disable-line no-cond-assign\n  return names;\n}\n\nfunction cardClicked(textToAdd) {\n  const tabName = getENActiveTab();\n  log('cardClicked', tabName, textToAdd);\n  const textarea = activePromptTextarea[tabName];\n  if (textarea.value.indexOf(textToAdd) !== -1) textarea.value = textarea.value.replace(textToAdd, '');\n  else textarea.value += textToAdd;\n  updateInput(textarea);\n  markSelectedCards(extractLoraNames(textarea.value), 'lora');\n}\n\nfunction extraNetworksSearchButton(event) {\n  // log('extraNetworksSearchButton', event);\n  const tabName = getENActiveTab();\n  const searchTextarea = gradioApp().querySelector(`#${tabName}_extra_search textarea`);\n  const button = event.target;\n  if (searchTextarea) {\n    searchTextarea.value = `${button.textContent.trim()}/`;\n    updateInput(searchTextarea);\n  } else {\n    console.error(`Could not find the search textarea for the tab: ${tabName}`);\n  }\n}\n\nfunction extraNetworksFilterVersion(event) {\n  const version = event.target.textContent.trim();\n  const activePage = getENActivePage().toLowerCase();\n  const cardContainers = gradioApp().querySelectorAll('.extra-network-cards');\n  log('extraNetworksFilterVersion', { activePage, version });\n  for (const cardContainer of cardContainers) {\n    if (!cardContainer.id.includes(activePage)) continue;\n    if (cardContainer.dataset.activeVersion === version) {\n      cardContainer.dataset.activeVersion = '';\n      cardContainer.querySelectorAll('.card').forEach((card) => { card.style.display = ''; });\n    } else {\n      cardContainer.dataset.activeVersion = version;\n      cardContainer.querySelectorAll('.card').forEach((card) => {\n        if (card.dataset.version === version) card.style.display = '';\n        else card.style.display = 'none';\n      });\n    }\n  }\n}\n\nlet desiredStyle = '';\nfunction selectStyle(name) {\n  desiredStyle = name;\n  const tabName = getENActiveTab();\n  const button = gradioApp().querySelector(`#${tabName}_styles_select`);\n  button.click();\n}\n\nfunction applyStyles(styles) {\n  let newStyles = [];\n  if (styles) {\n    newStyles = Array.isArray(styles) ? styles : [styles];\n  } else {\n    const tabName = getENActiveTab();\n    styles = gradioApp().querySelectorAll(`#${tabName}_styles .token span`);\n    newStyles = Array.from(styles).map((el) => el.textContent).filter((el) => el.length > 0);\n  }\n  const index = newStyles.indexOf(desiredStyle);\n  if (index > -1) newStyles.splice(index, 1);\n  else newStyles.push(desiredStyle);\n  markSelectedCards(newStyles, 'style');\n  return newStyles.join('|');\n}\n\nfunction quickApplyStyle() {\n  const tabName = getENActiveTab();\n  const btnApply = gradioApp().getElementById(`${tabName}_extra_apply`);\n  if (btnApply) btnApply.click();\n}\n\nfunction quickSaveStyle() {\n  const tabName = getENActiveTab();\n  const btnSave = gradioApp().getElementById(`${tabName}_extra_quicksave`);\n  if (btnSave) btnSave.click();\n  const btnRefresh = gradioApp().getElementById(`${tabName}_extra_refresh`);\n  if (btnRefresh) {\n    setTimeout(() => btnRefresh.click(), 100);\n    // setTimeout(() => sortExtraNetworks('fixed'), 500);\n  }\n}\n\nfunction selectHistory(id) {\n  const headers = new Headers();\n  headers.set('Content-Type', 'application/json');\n  const init = { method: 'POST', body: { name: id }, headers };\n  authFetch(`${window.api}/history`, { method: 'POST', body: JSON.stringify({ name: id }), headers });\n}\n\nlet enDirty = false;\nfunction closeDetailsEN(...args) {\n  // log('closeDetailsEN');\n  enDirty = true;\n  const tabName = getENActiveTab();\n  const btnClose = gradioApp().getElementById(`${tabName}_extra_details_close`);\n  if (btnClose) setTimeout(() => btnClose.click(), 100);\n  const btnRefresh = gradioApp().getElementById(`${tabName}_extra_refresh`);\n  if (btnRefresh && enDirty) setTimeout(() => btnRefresh.click(), 100);\n  return [...args];\n}\n\nfunction refeshDetailsEN(args) {\n  // log(`refeshDetailsEN: ${enDirty}`);\n  const tabName = getENActiveTab();\n  const btnRefresh = gradioApp().getElementById(`${tabName}_extra_refresh`);\n  if (btnRefresh && enDirty) setTimeout(() => btnRefresh.click(), 100);\n  enDirty = false;\n  return args;\n}\n\n// refresh on en show\nfunction refreshENpage() {\n  if (getCardsForActivePage().length === 0) {\n    // log('refreshENpage');\n    const tabName = getENActiveTab();\n    const btnRefresh = gradioApp().getElementById(`${tabName}_extra_refresh`);\n    if (btnRefresh) btnRefresh.click();\n  }\n}\n\n// init\nfunction setupExtraNetworksForTab(tabName) {\n  let tabs = gradioApp().querySelector(`#${tabName}_extra_tabs`);\n  if (tabs) tabs.classList.add('extra-networks');\n  const en = gradioApp().getElementById(`${tabName}_extra_networks`);\n  tabs = gradioApp().querySelector(`#${tabName}_extra_tabs > div`);\n  if (!tabs) return;\n\n  // buttons\n  const btnShow = gradioApp().getElementById(`${tabName}_extra_networks_btn`);\n  const btnRefresh = gradioApp().getElementById(`${tabName}_extra_refresh`);\n  const btnScan = gradioApp().getElementById(`${tabName}_extra_scan`);\n  const btnSave = gradioApp().getElementById(`${tabName}_extra_save`);\n  const btnClose = gradioApp().getElementById(`${tabName}_extra_close`);\n  const btnSort = gradioApp().getElementById(`${tabName}_extra_sort`);\n  const btnView = gradioApp().getElementById(`${tabName}_extra_view`);\n  const btnModel = gradioApp().getElementById(`${tabName}_extra_model`);\n  const btnApply = gradioApp().getElementById(`${tabName}_extra_apply`);\n  const buttons = document.createElement('span');\n  buttons.classList.add('buttons');\n  if (btnRefresh) buttons.appendChild(btnRefresh);\n  if (btnModel) buttons.appendChild(btnModel);\n  if (btnApply) buttons.appendChild(btnApply);\n  if (btnScan) buttons.appendChild(btnScan);\n  if (btnSave) buttons.appendChild(btnSave);\n  if (btnSort) buttons.appendChild(btnSort);\n  if (btnView) buttons.appendChild(btnView);\n  if (btnClose) buttons.appendChild(btnClose);\n  btnModel.onclick = () => btnModel.classList.toggle('toolbutton-selected');\n  // btnRefresh.onclick = () => setTimeout(() => sortExtraNetworks('fixed'), 500);\n  tabs.appendChild(buttons);\n\n  // details\n  const detailsImg = gradioApp().getElementById(`${tabName}_extra_details_img`);\n  const detailsClose = gradioApp().getElementById(`${tabName}_extra_details_close`);\n  if (detailsImg && detailsClose) {\n    detailsImg.title = 'Close details';\n    detailsImg.onclick = () => detailsClose.click();\n  }\n\n  // search and description\n  const div = document.createElement('div');\n  div.classList.add('second-line');\n  tabs.appendChild(div);\n  const txtSearch = gradioApp().querySelector(`#${tabName}_extra_search`);\n  const txtSearchValue = gradioApp().querySelector(`#${tabName}_extra_search textarea`);\n  const txtDescription = gradioApp().getElementById(`${tabName}_description`);\n  txtSearch.classList.add('search');\n  txtDescription.classList.add('description');\n  div.appendChild(txtSearch);\n  div.appendChild(txtDescription);\n  let searchTimer = null;\n  txtSearchValue.addEventListener('input', (evt) => {\n    if (searchTimer) clearTimeout(searchTimer);\n    searchTimer = setTimeout(async () => {\n      await filterExtraNetworksForTab(txtSearchValue.value.toLowerCase());\n      searchTimer = null;\n    }, 100);\n  });\n\n  // card hover\n  let hoverTimer = null;\n  let previousCard = null;\n  if (window.opts.extra_networks_fetch) {\n    gradioApp().getElementById(`${tabName}_extra_tabs`).onmouseover = async (e) => {\n      const el = e.target.closest('.card'); // bubble-up to card\n      if (!el || (el.title === previousCard)) return;\n      if (!hoverTimer) {\n        hoverTimer = setTimeout(() => {\n          readCardDescription(el.dataset.page, el.dataset.name);\n          readCardTags(el, el.dataset.tags);\n          previousCard = el.title;\n        }, 300);\n      }\n      el.onmouseout = () => {\n        clearTimeout(hoverTimer);\n        hoverTimer = null;\n      };\n    };\n  }\n\n  // auto-resize networks sidebar\n  const resizeObserver = new ResizeObserver((entries) => {\n    for (const entry of entries) {\n      for (const el of Array.from(gradioApp().getElementById(`${tabName}_extra_tabs`).querySelectorAll('.extra-networks-page'))) {\n        const h = Math.trunc(entry.contentRect.height);\n        if (h <= 0) return;\n        const vh = opts.logmonitor_show ? '55vh' : '68vh';\n        if (window.opts.extra_networks_card_cover === 'sidebar' && window.opts.theme_type === 'Standard') el.style.height = `max(${vh}, ${h - 90}px)`;\n        else if (window.opts.extra_networks_card_cover === 'inline' && window.opts.theme_type === 'Standard') el.style.height = '25vh';\n        else if (window.opts.extra_networks_card_cover === 'cover' && window.opts.theme_type === 'Standard') el.style.height = '50vh';\n        else el.style.height = 'unset';\n        // log(`${tabName} height: ${entry.target.id}=${h} ${el.id}=${el.clientHeight}`);\n      }\n    }\n  });\n  const settingsEl = gradioApp().getElementById(`${tabName}_settings`);\n  const interfaceEl = gradioApp().getElementById(`${tabName}_interface`);\n  if (settingsEl) resizeObserver.observe(settingsEl);\n  if (interfaceEl) resizeObserver.observe(interfaceEl);\n\n  // en style\n  if (!en) return;\n  let lastView;\n  let heightInitialized = false;\n  const intersectionObserver = new IntersectionObserver((entries) => {\n    if (!heightInitialized) {\n      heightInitialized = true;\n      let h = 0;\n      const target = window.opts.extra_networks_card_cover === 'sidebar' ? 0 : window.opts.extra_networks_height;\n      if (window.opts.theme_type === 'Standard') h = target > 0 ? target : 55;\n      else h = target > 0 ? target : 87;\n      for (const el of Array.from(gradioApp().getElementById(`${tabName}_extra_tabs`).querySelectorAll('.extra-networks-page'))) {\n        if (h > 0) el.style.height = `${h}vh`;\n        el.parentElement.style.width = '-webkit-fill-available';\n      }\n    }\n    const cards = Array.from(gradioApp().querySelectorAll('.extra-network-cards > .card'));\n    if (cards.length > 0 && cards.length !== totalCards) {\n      totalCards = cards.length;\n      sortExtraNetworks('fixed');\n    }\n    if (lastView !== entries[0].intersectionRatio > 0) {\n      lastView = entries[0].intersectionRatio > 0;\n      if (lastView) {\n        refreshENpage();\n        if (window.opts.extra_networks_card_cover === 'cover') {\n          en.style.position = 'absolute';\n          en.style.height = 'unset';\n          en.style.width = 'unset';\n          en.style.right = 'unset';\n          en.style.maxWidth = 'unset';\n          en.style.maxHeight = '58vh';\n          en.style.top = '13em';\n          en.style.transition = '';\n          en.style.zIndex = 100;\n          gradioApp().getElementById(`${tabName}_settings`).parentNode.style.width = 'unset';\n        } else if (window.opts.extra_networks_card_cover === 'sidebar') {\n          en.style.position = 'absolute';\n          en.style.height = 'auto';\n          en.style.width = `${window.opts.extra_networks_sidebar_width}vw`;\n          en.style.maxWidth = '50vw';\n          en.style.maxHeight = 'unset';\n          en.style.right = '0';\n          en.style.top = '13em';\n          en.style.transition = 'width 0.3s ease';\n          en.style.zIndex = 100;\n          gradioApp().getElementById(`${tabName}_settings`).parentNode.style.width = `calc(100vw - 2em - min(${window.opts.extra_networks_sidebar_width}vw, 50vw))`;\n        } else {\n          en.style.position = 'relative';\n          en.style.height = 'unset';\n          en.style.width = 'unset';\n          en.style.right = 'unset';\n          en.style.maxWidth = 'unset';\n          en.style.maxHeight = '33vh';\n          en.style.top = 0;\n          en.style.transition = '';\n          en.style.zIndex = 0;\n          gradioApp().getElementById(`${tabName}_settings`).parentNode.style.width = 'unset';\n        }\n      } else {\n        if (window.opts.extra_networks_card_cover === 'sidebar') en.style.width = 0;\n        gradioApp().getElementById(`${tabName}_settings`).parentNode.style.width = 'unset';\n      }\n      if (tabName === 'video') {\n        gradioApp().getElementById('framepack_settings').parentNode.style.width = gradioApp().getElementById(`${tabName}_settings`).parentNode.style.width;\n        gradioApp().getElementById('ltx_settings').parentNode.style.width = gradioApp().getElementById(`${tabName}_settings`).parentNode.style.width;\n      }\n    }\n  });\n  intersectionObserver.observe(en); // monitor visibility\n}\n\nasync function showNetworks() {\n  for (const tabName of ['txt2img', 'img2img', 'control', 'video']) {\n    const btn = gradioApp().getElementById(`${tabName}_extra_networks_btn`);\n    if (window.opts.extra_networks_show && btn) btn.click();\n  }\n  log('showNetworks');\n}\n\nasync function setupExtraNetworks() {\n  setupExtraNetworksForTab('txt2img');\n  setupExtraNetworksForTab('img2img');\n  setupExtraNetworksForTab('control');\n  setupExtraNetworksForTab('video');\n\n  function registerPrompt(tabName, id) {\n    const textarea = gradioApp().querySelector(`#${id} > label > textarea`);\n    if (!textarea) return;\n    if (!activePromptTextarea[tabName]) activePromptTextarea[tabName] = textarea;\n    textarea.addEventListener('focus', () => { activePromptTextarea[tabName] = textarea; });\n  }\n\n  registerPrompt('txt2img', 'txt2img_prompt');\n  registerPrompt('txt2img', 'txt2img_neg_prompt');\n  registerPrompt('img2img', 'img2img_prompt');\n  registerPrompt('img2img', 'img2img_neg_prompt');\n  registerPrompt('control', 'control_prompt');\n  registerPrompt('control', 'control_neg_prompt');\n  registerPrompt('video', 'video_prompt');\n  registerPrompt('video', 'video_neg_prompt');\n  log('initNetworks', window.opts.extra_networks_card_size);\n  document.documentElement.style.setProperty('--card-size', `${window.opts.extra_networks_card_size}px`);\n}\n"
  },
  {
    "path": "javascript/gallery.js",
    "content": "/* eslint-disable max-classes-per-file */\nlet ws;\nlet url;\nlet currentImage = null;\nlet currentGalleryFolder = null;\nlet pruneImagesTimer;\nlet outstanding = 0;\nlet lastSort = 0;\nlet lastSortName = 'None';\nlet gallerySelection = { files: [], index: -1 };\nconst galleryHashes = new Set();\nlet maintenanceController = new AbortController();\nconst folderStylesheet = new CSSStyleSheet();\nconst fileStylesheet = new CSSStyleSheet();\nconst iconStopwatch = String.fromCodePoint(9201);\n// Store separator states for the session\nconst separatorStates = new Map();\nconst el = {\n  folders: undefined,\n  files: undefined,\n  search: undefined,\n  status: undefined,\n  btnSend: undefined,\n  clearCacheFolder: undefined,\n};\n\nconst SUPPORTED_EXTENSIONS = ['jpg', 'jpeg', 'png', 'webp', 'tiff', 'jp2', 'jxl', 'gif', 'mp4', 'mkv', 'avi', 'mjpeg', 'mpg', 'avr'];\n\nfunction getVisibleGalleryFiles() {\n  if (!el.files) return [];\n  return Array.from(el.files.children).filter((node) => node.name && node.offsetParent);\n}\n\nfunction updateGallerySelectionClasses(files = gallerySelection.files, index = gallerySelection.index) {\n  files.forEach((file, i) => {\n    file.classList.toggle('gallery-file-selected', i === index);\n  });\n}\n\nfunction refreshGallerySelection() {\n  updateGallerySelectionClasses(gallerySelection.files, -1);\n  const files = getVisibleGalleryFiles();\n  const index = files.findIndex((file) => file.src === currentImage);\n  gallerySelection = { files, index };\n  updateGallerySelectionClasses(files, index);\n}\n\nfunction resetGallerySelection() {\n  updateGallerySelectionClasses(gallerySelection.files, -1);\n  gallerySelection = { files: [], index: -1 };\n  currentImage = null;\n}\n\nfunction applyGallerySelection(index, { send = true } = {}) {\n  if (!gallerySelection.files.length) refreshGallerySelection();\n  const files = gallerySelection.files;\n  if (!files.length) return;\n  if (!Number.isInteger(index) || index < 0 || index >= files.length) {\n    log('gallery selection index out of range', index, files.length);\n    resetGallerySelection();\n    return;\n  }\n  gallerySelection.index = index;\n  currentImage = files[index].src;\n  updateGallerySelectionClasses(files, index);\n  if (send && el.btnSend) el.btnSend.click();\n}\n\nfunction setGallerySelectionByElement(element, options) {\n  if (!gallerySelection.files.length) refreshGallerySelection();\n  let index = gallerySelection.files.findIndex((file) => file === element);\n  if (index < 0) {\n    refreshGallerySelection();\n    index = gallerySelection.files.findIndex((file) => file === element);\n  }\n  if (index >= 0) applyGallerySelection(index, options);\n}\n\nfunction buildGalleryFileUrl(path) {\n  return new URL(`/file=${encodeURI(path)}`, window.location.origin).toString();\n}\n\nwindow.getGallerySelection = () => ({ index: gallerySelection.index, files: gallerySelection.files });\nwindow.setGallerySelection = (index, options) => applyGallerySelection(index, options);\nwindow.getGallerySelectedUrl = () => (currentImage ? buildGalleryFileUrl(currentImage) : null);\n\n/**\n * Wait for the `outstanding` variable to be below the specified value\n * @param {number} num - Threshold for `outstanding`\n * @param {AbortSignal} signal - AbortController signal\n */\nasync function awaitForOutstanding(num, signal) {\n  while (outstanding > num && !signal.aborted) await new Promise((resolve) => { setTimeout(resolve, 50); });\n  signal.throwIfAborted();\n}\n\n/**\n * Wait for gallery to finish populating\n * @param {number} expectedSize - Expected gallery size\n * @param {AbortSignal} signal - AbortController signal\n */\nasync function awaitForGallery(expectedSize, signal) {\n  while (galleryHashes.size < expectedSize && !signal.aborted) await new Promise((resolve) => { setTimeout(resolve, 500); }); // longer interval because it's a low priority check\n  signal.throwIfAborted();\n}\n\nfunction updateGalleryStyles() {\n  if (opts.theme_type?.toLowerCase() === 'modern') {\n    folderStylesheet.replaceSync(`\n      .gallery-folder {\n        cursor: pointer;\n        padding: 8px 6px 8px 6px;\n        background-color: var(--sd-button-normal-color);\n        border-radius: var(--sd-border-radius);\n        text-align: left;\n        direction: rtl; /* Used to overflow the beginning instead of the end */\n        min-width: 12em;\n        max-width: 100%;\n        overflow: hidden;\n        text-overflow: ellipsis;\n        white-space: nowrap;\n        transition-duration: 0.2s;\n        transition-property: color, opacity, background-color, border-color;\n        transition-timing-function: ease-out;\n      }\n      .gallery-folder:hover {\n        background-color: var(--button-primary-background-fill-hover, var(--sd-button-hover-color));\n      }\n      .gallery-folder-selected {\n        background-color: var(--sd-button-selected-color);\n        color: var(--sd-button-selected-text-color);\n      }\n      .gallery-folder-icon {\n        font-size: 1.2em;\n        color: var(--sd-button-icon-color);\n        margin-right: 1em;\n        filter: drop-shadow(1px 1px 2px black);\n        float: left;\n      }\n    `);\n  } else {\n    folderStylesheet.replaceSync(`\n      .gallery-folder {\n        cursor: pointer;\n        padding: 8px 6px 8px 6px;\n        max-width: 200px;\n        overflow-x: hidden;\n        text-wrap: nowrap;\n        text-overflow: ellipsis;\n      }\n      .gallery-folder:hover {\n        background-color: var(--button-primary-background-fill-hover);\n      }\n      .gallery-folder-selected {\n        background-color: var(--button-primary-background-fill);\n      }\n    `);\n  }\n  fileStylesheet.replaceSync(`\n    .gallery-file {\n      object-fit: contain;\n      cursor: pointer;\n      height: ${opts.extra_networks_card_size}px;\n      width: ${opts.browser_fixed_width ? `${opts.extra_networks_card_size}px` : 'unset'};\n    }\n    .gallery-file:hover {\n      filter: grayscale(100%);\n    }\n    :host(.gallery-file-selected) .gallery-file {\n      box-shadow: 0 0 0 2px var(--sd-button-selected-color);\n    }\n  `);\n}\n\n// Classes\n\nclass SimpleProgressBar {\n  #container = document.createElement('div');\n  #progress = document.createElement('div');\n  #textDiv = document.createElement('div');\n  #text = document.createElement('span');\n  #visible = false;\n  #hideTimeout = null;\n  #interval = null;\n  #max = 0;\n  /** @type {Set} */\n  #monitoredSet;\n\n  constructor(monitoredSet) {\n    this.#monitoredSet = monitoredSet; // This is required because incrementing a variable with a class method turned out to not be an atomic operation\n    this.#container.style.cssText = 'position:relative;overflow:hidden;border-radius:var(--sd-border-radius);width:100%;background-color:hsla(0,0%,36%,0.3);height:1.2rem;margin:0;padding:0;display:none;';\n    this.#progress.style.cssText = 'position:absolute;left:0;height:100%;width:0;transition:width 200ms;';\n    this.#progress.style.backgroundColor = 'hsla(110, 32%, 35%, 0.80)'; // alt: '#27911d'\n    this.#textDiv.style.cssText = 'position:relative;margin:auto;width:max-content;height:100%;';\n    this.#text.style.cssText = 'user-select:none;color:white;';\n\n    this.#textDiv.append(this.#text);\n    this.#container.append(this.#progress, this.#textDiv);\n  }\n\n  start(total) {\n    this.clear();\n    this.#max = total;\n    this.#interval = setInterval(() => {\n      this.#update(this.#monitoredSet.size, this.#max);\n    }, 250);\n  }\n\n  attachTo(element) {\n    if (element.hasChildNodes) {\n      element.innerHTML = '';\n    }\n    element.appendChild(this.#container);\n  }\n\n  clear() {\n    this.#stop();\n    clearTimeout(this.#hideTimeout);\n    this.#hideTimeout = null;\n    this.#container.style.display = 'none';\n    this.#visible = false;\n    this.#progress.style.width = '0';\n    this.#text.textContent = '';\n  }\n\n  #update(loaded, max) {\n    if (this.#hideTimeout) {\n      this.#hideTimeout = null;\n    }\n\n    this.#progress.style.width = `${Math.floor((loaded / max) * 100)}%`;\n    this.#text.textContent = `${loaded}/${max}`;\n\n    if (!this.#visible) {\n      this.#container.style.display = 'block';\n      this.#visible = true;\n    }\n    if (loaded >= max) {\n      this.#stop();\n      this.#hideTimeout = setTimeout(() => {\n        this.clear();\n      }, 1000);\n    }\n  }\n\n  #stop() {\n    clearInterval(this.#interval);\n    this.#interval = null;\n  }\n}\n\nconst galleryProgressBar = new SimpleProgressBar(galleryHashes);\n\n/* This isn't as robust as the Web Locks API, but it will at least work if accessing a remote machine without HTTPS */\nclass SimpleFunctionQueue {\n  #id;\n  #running;\n  #queue;\n\n  constructor(id) {\n    this.#id = id;\n    this.#running = false;\n    this.#queue = [];\n  }\n\n  static abortLogger(identifier, result) {\n    if (typeof result === 'string' || (result instanceof DOMException && result.name === 'AbortError')) {\n      log(identifier, result?.message || result);\n    } else {\n      error(identifier, result.message);\n    }\n  }\n\n  /**\n   * @param {{\n   *  signal: AbortSignal,\n   *  callback: Function\n   * }} config\n   */\n  enqueue(config) {\n    if (!(config.signal instanceof AbortSignal) || typeof config.callback !== 'function') {\n      throw new Error('Invalid configuration. Object must contain an AbortSignal and a function');\n    }\n    if (config.signal.aborted) {\n      debug(`${this.#id} Queue: Skipping addition to queue due to \"${config.signal.reason}\"`);\n      return;\n    }\n    this.#queue.push(config);\n    this.#tryRunNext();\n  }\n\n  async #tryRunNext() {\n    if (this.#running || !this.#queue.length) return;\n    try {\n      const { signal, callback } = this.#queue.shift();\n      if (signal.aborted) {\n        return;\n      }\n      this.#running = true;\n      if (callback.constructor.name.toLowerCase() === 'asyncfunction') {\n        await callback();\n      } else {\n        callback();\n      }\n    } catch (err) {\n      error(`${this.#id} Queue:`, err);\n    } finally {\n      this.#running = false;\n      this.#tryRunNext();\n    }\n  }\n}\n\n// HTML Elements\n\nclass GalleryFolder extends HTMLElement {\n  static folders = new Set();\n  /** @type {GalleryFolder | null} */\n  static #active = null;\n\n  constructor(folder) {\n    super();\n    // Support both old format (string) and new format (object with path and label)\n    if (typeof folder === 'object' && folder !== null) {\n      this.name = decodeURI(folder.path || '');\n      this.label = decodeURI(folder.label || folder.path || '');\n    } else {\n      this.name = decodeURI(folder);\n      this.label = this.name;\n    }\n    this.style.overflowX = 'hidden';\n    this.shadow = this.attachShadow({ mode: 'open' });\n    this.shadow.adoptedStyleSheets = [folderStylesheet];\n\n    this.div = document.createElement('div');\n  }\n\n  connectedCallback() {\n    if (GalleryFolder.folders.has(this)) return; // Element is just being moved\n\n    this.div.className = 'gallery-folder';\n    this.div.innerHTML = `<span class=\"gallery-folder-icon\">\\uf03e</span> ${this.label}`;\n    this.div.title = this.name; // Show full path on hover\n    this.addEventListener('click', this.updateSelected);\n    this.addEventListener('click', fetchFilesWS); // eslint-disable-line no-use-before-define\n    this.shadow.appendChild(this.div);\n    GalleryFolder.folders.add(this);\n    if (this.name === currentGalleryFolder) {\n      this.updateSelected();\n    }\n  }\n\n  async disconnectedCallback() {\n    await Promise.resolve(); // Wait for other microtasks (such as element moving)\n    if (this.isConnected) return;\n    GalleryFolder.folders.delete(this);\n    if (GalleryFolder.#active === this) {\n      GalleryFolder.#active = null;\n    }\n  }\n\n  static getActive() {\n    return GalleryFolder.#active;\n  }\n\n  updateSelected() {\n    this.div.classList.add('gallery-folder-selected');\n    GalleryFolder.#active = this;\n    for (const folder of GalleryFolder.folders) {\n      if (folder !== this) {\n        folder.div.classList.remove('gallery-folder-selected');\n      }\n    }\n  }\n}\n\nasync function delayFetchThumb(fn, signal) {\n  await awaitForOutstanding(16, signal);\n  try {\n    outstanding++;\n    const ts = Date.now().toString();\n    const res = await authFetch(`${window.api}/browser/thumb?file=${encodeURI(fn)}&ts=${ts}`, { priority: 'low' });\n    if (!res.ok) {\n      error(`fetchThumb: ${res.statusText}`);\n      return undefined;\n    }\n    const json = await res.json();\n    if (!res || !json || json.error || Object.keys(json).length === 0) {\n      if (json.error) error(`fetchThumb: ${json.error}`);\n      return undefined;\n    }\n    return json;\n  } finally {\n    outstanding--;\n  }\n}\n\nclass GalleryFile extends HTMLElement {\n  /** @type {AbortSignal} */\n  #signal;\n\n  constructor(folder, file, signal) {\n    super();\n    this.folder = folder;\n    this.name = file;\n    this.#signal = signal;\n    this.src = `${this.folder}/${this.name}`.replace(/\\/+/g, '/'); // Ensure no //, ///, etc...\n    this.fullFolder = this.src.replace(/\\/[^/]+$/, '');\n    this.size = 0;\n    this.mtime = 0;\n    this.hash = undefined;\n    this.exif = '';\n    this.width = 0;\n    this.height = 0;\n    this.shadow = this.attachShadow({ mode: 'open' });\n    this.shadow.adoptedStyleSheets = [fileStylesheet];\n\n    this.firstRun = true;\n  }\n\n  async connectedCallback() {\n    if (!this.firstRun) return; // Element is just being moved\n    this.firstRun = false;\n\n    // Check separator state early to hide the element immediately\n    const dir = this.name.match(/(.*)[/\\\\]/);\n    if (dir && dir[1]) {\n      const dirPath = dir[1];\n      const isOpen = separatorStates.get(dirPath);\n      if (isOpen === false) {\n        this.style.display = 'none';\n      }\n    }\n\n    this.hash = await getHash(`${this.src}/${this.size}/${this.mtime}`); // eslint-disable-line no-use-before-define\n    const cachedData = (this.hash && opts.browser_cache) ? await idbGet(this.hash).catch(() => undefined) : undefined;\n    const img = document.createElement('img');\n    img.className = 'gallery-file';\n    img.loading = 'lazy';\n    img.onload = async () => {\n      img.title += `\\nResolution: ${this.width} x ${this.height}`;\n      this.title = img.title;\n      if (!cachedData && opts.browser_cache) {\n        if ((this.width === 0) || (this.height === 0)) { // fetch thumb failed so we use actual image\n          this.width = img.naturalWidth;\n          this.height = img.naturalHeight;\n        }\n      }\n    };\n    let ok = true;\n    if (cachedData?.img) {\n      img.src = cachedData.img;\n      this.exif = cachedData.exif;\n      this.width = cachedData.width;\n      this.height = cachedData.height;\n      this.size = cachedData.size;\n      this.mtime = new Date(cachedData.mtime);\n    } else {\n      try {\n        const json = await delayFetchThumb(this.src, this.#signal);\n        if (!json) {\n          ok = false;\n        } else {\n          img.src = json.data;\n          this.exif = json.exif;\n          this.width = json.width;\n          this.height = json.height;\n          this.size = json.size;\n          this.mtime = new Date(json.mtime);\n          if (opts.browser_cache) {\n            await idbAdd({\n              hash: this.hash,\n              folder: this.fullFolder,\n              file: this.name,\n              size: this.size,\n              mtime: this.mtime,\n              width: this.width,\n              height: this.height,\n              src: this.src,\n              exif: this.exif,\n              img: img.src,\n              // exif: await getExif(img), // alternative client-side exif\n              // img: await createThumb(img), // alternative client-side thumb\n            });\n          }\n        }\n      } catch (err) { // thumb fetch failed so assign actual image\n        img.src = `file=${this.src}`;\n      }\n    }\n    if (this.#signal.aborted) { // Do not change the operations order from here...\n      return;\n    }\n    galleryHashes.add(this.hash);\n    if (!ok) {\n      return;\n    } // ... to here unless modifications are also being made to maintenance functionality and the usage of AbortController/AbortSignal\n    img.onclick = () => {\n      setGallerySelectionByElement(this, { send: true });\n    };\n    img.title = `Folder: ${this.folder}\\nFile: ${this.name}\\nSize: ${this.size.toLocaleString()} bytes\\nModified: ${this.mtime.toLocaleString()}`;\n    this.title = img.title;\n\n    // Final visibility check based on search term.\n    const shouldDisplayBasedOnSearch = this.title.toLowerCase().includes(el.search.value.toLowerCase());\n    if (this.style.display !== 'none') { // Only proceed if not already hidden by a closed separator\n      this.style.display = shouldDisplayBasedOnSearch ? 'unset' : 'none';\n    }\n\n    this.shadow.appendChild(img);\n  }\n}\n\nasync function createThumb(img) {\n  const height = opts.extra_networks_card_size;\n  const width = opts.browser_fixed_width ? opts.extra_networks_card_size : 0;\n  const canvas = document.createElement('canvas');\n  const scaleY = height / img.height;\n  const scaleX = width > 0 ? width / img.width : scaleY;\n  const scale = Math.min(scaleX, scaleY);\n  const scaledWidth = img.width * scale;\n  const scaledHeight = img.height * scale;\n  canvas.width = scaledWidth;\n  canvas.height = scaledHeight;\n  const ctx = canvas.getContext('2d');\n  ctx.drawImage(img, 0, 0, scaledWidth, scaledHeight);\n  const dataURL = canvas.toDataURL('image/jpeg', 0.5);\n  return dataURL;\n}\n\nasync function handleSeparator(separator) {\n  separator.classList.toggle('gallery-separator-hidden');\n  const nowHidden = separator.classList.contains('gallery-separator-hidden');\n\n  // Store the state (true = open, false = closed)\n  separatorStates.set(separator.title, !nowHidden);\n\n  // Update arrow and count\n  const arrow = separator.querySelector('.gallery-separator-arrow');\n  arrow.style.transform = nowHidden ? 'rotate(0deg)' : 'rotate(90deg)';\n\n  const all = Array.from(el.files.children);\n  for (const f of all) {\n    if (!f.name) continue; // Skip separators\n\n    // Check if file belongs to this exact directory\n    const fileDir = f.name.match(/(.*)[/\\\\]/);\n    const fileDirPath = fileDir ? fileDir[1] : '';\n\n    if (separator.title.length > 0 && fileDirPath === separator.title) {\n      f.style.display = nowHidden ? 'none' : 'unset';\n    }\n  }\n  // Note: Count is not updated here on manual toggle, as it reflects the total.\n  // If I end up implementing it, the search function will handle dynamic count updates.\n}\n\nasync function addSeparators() {\n  document.querySelectorAll('.gallery-separator').forEach((node) => { el.files.removeChild(node); });\n  const all = Array.from(el.files.children);\n  let lastDir;\n\n  // Count root files (files without a directory path)\n  const hasRootFiles = all.some((f) => f.name && !f.name.match(/[/\\\\]/));\n  // Only auto-open first separator if there are no root files to display\n  let isFirstSeparator = !hasRootFiles;\n\n  // First pass: create separators\n  for (const f of all) {\n    let dir = f.name?.match(/(.*)[/\\\\]/);\n    if (!dir) dir = '';\n    else dir = dir[1];\n    if (dir !== lastDir) {\n      lastDir = dir;\n      if (dir.length > 0) {\n        // Count files in this directory\n        let fileCount = 0;\n        for (const file of all) {\n          if (!file.name) continue;\n          const fileDir = file.name.match(/(.*)[/\\\\]/);\n          const fileDirPath = fileDir ? fileDir[1] : '';\n          if (fileDirPath === dir) fileCount++;\n        }\n\n        const sep = document.createElement('div');\n        sep.className = 'gallery-separator';\n        sep.title = dir;\n\n        // Default to open for the first separator if no state is saved, otherwise closed.\n        const isOpen = separatorStates.has(dir) ? separatorStates.get(dir) : isFirstSeparator;\n        separatorStates.set(dir, isOpen); // Ensure it's in the map\n        if (isFirstSeparator) isFirstSeparator = false; // Subsequent separators will default to closed\n\n        if (!isOpen) {\n          sep.classList.add('gallery-separator-hidden');\n        }\n\n        // Create arrow span\n        const arrow = document.createElement('span');\n        arrow.className = 'gallery-separator-arrow';\n        arrow.textContent = '▶';\n        arrow.style.transform = isOpen ? 'rotate(90deg)' : 'rotate(0deg)';\n\n        // Create directory name span\n        const dirName = document.createElement('span');\n        dirName.className = 'gallery-separator-name';\n        dirName.textContent = dir;\n        dirName.title = dir; // Show full path on hover\n\n        // Create count span\n        const count = document.createElement('span');\n        count.className = 'gallery-separator-count';\n        count.textContent = `${fileCount} files`;\n        sep.dataset.totalFiles = fileCount; // Store total count for search filtering\n\n        sep.appendChild(arrow);\n        sep.appendChild(dirName);\n        sep.appendChild(count);\n\n        sep.onclick = () => handleSeparator(sep);\n        el.files.insertBefore(sep, f);\n      }\n    }\n  }\n\n  // Second pass: hide files in closed directories\n  for (const f of all) {\n    if (!f.name) continue; // Skip separators\n\n    const dir = f.name.match(/(.*)[/\\\\]/);\n    if (dir && dir[1]) {\n      const dirPath = dir[1];\n      const isOpen = separatorStates.get(dirPath);\n      if (isOpen === false) {\n        f.style.display = 'none';\n      }\n    }\n  }\n}\n\n// methods\n\nconst gallerySendImage = (_images) => [currentImage]; // invoked by gradio button\n\nasync function getHash(str, algo = 'SHA-256') {\n  try {\n    let hex = '';\n    const strBuf = new TextEncoder().encode(str);\n    const hash = await crypto.subtle.digest(algo, strBuf);\n    const view = new DataView(hash);\n    for (let i = 0; i < hash.byteLength; i += 4) hex += (`00000000${view.getUint32(i).toString(16)}`).slice(-8);\n    return hex;\n  } catch {\n    return undefined;\n  }\n}\n\n/**\n * Helper function to update status with sort mode\n * @param  {...string|[string, string]} messages - Each can be either a string to use as-is, or an array of a string label and value\n * @returns {void}\n */\nfunction updateStatusWithSort(...messages) {\n  if (!el.status) return;\n  messages.unshift(['Sort', lastSortName]);\n  const fragment = document.createDocumentFragment();\n  for (let i = 0; i < messages.length; i++) {\n    const div = document.createElement('div');\n    if (Array.isArray(messages[i])) {\n      const [text1, text2] = messages[i];\n      const tDiv1 = document.createElement('div');\n      tDiv1.innerText = `${text1}:`;\n      const tDiv2 = document.createElement('div');\n      tDiv2.innerText = text2;\n      tDiv2.title = text2;\n      div.append(tDiv1, tDiv2);\n    } else {\n      const tDiv1 = document.createElement('div');\n      tDiv1.innerText = messages[i];\n      div.append(tDiv1);\n    }\n    fragment.append(div);\n  }\n  if (el.status.hasChildNodes()) el.status.innerHTML = '';\n  el.status.append(fragment);\n}\n\nasync function injectGalleryStatusCSS() {\n  const style = document.createElement('style');\n  style.textContent = `\n  #tab-gallery-status {\n    display: inline-flex;\n    flex-flow: row wrap;\n    justify-content: ${opts.theme_type?.toLowerCase() === 'modern' ? 'flex-start' : 'flex-end'};\n  }\n  #tab-gallery-status > div {\n    display: flex;\n    max-width: 100%;\n    white-space: nowrap;\n    & div {\n      &:first-child {\n        flex-shrink: 0;\n        margin-right: 4px;\n      }\n      &:last-child:not(:first-child) {\n        flex-shrink: 1;\n        overflow: hidden;\n        text-overflow: ellipsis;\n        white-space: nowrap;\n        direction: rtl;\n        text-align: left;\n      }\n    }\n  }\n  #tab-gallery-status > div:not(:last-child)::after {\n    content: '|';\n    margin-inline: 6px;\n  }`;\n  document.head.append(style);\n}\n\nasync function wsConnect(socket, timeout = 5000) {\n  const intrasleep = 100;\n  const ttl = timeout / intrasleep;\n  const isOpened = () => (socket.readyState === WebSocket.OPEN);\n  if (socket.readyState !== WebSocket.CONNECTING) return isOpened();\n\n  let loop = 0;\n  while (socket.readyState === WebSocket.CONNECTING && loop < ttl) {\n    await new Promise((resolve) => { setTimeout(resolve, intrasleep); });\n    loop++;\n  }\n  return isOpened();\n}\n\nasync function gallerySearch() {\n  if (el.search.busy) clearTimeout(el.search.busy);\n  el.search.busy = setTimeout(async () => {\n    const t0 = performance.now();\n    const str = el.search.value.toLowerCase();\n    const allFiles = Array.from(el.files.children).filter((node) => node.name);\n    const allSeparators = Array.from(el.files.children).filter((node) => node.classList.contains('gallery-separator'));\n\n    // If search is cleared, restore original view\n    if (str === '') {\n      allSeparators.forEach((sep) => {\n        sep.style.display = 'flex';\n        const isOpen = separatorStates.has(sep.title) ? separatorStates.get(sep.title) : false;\n\n        const countSpan = sep.querySelector('.gallery-separator-count');\n        if (countSpan && sep.dataset.totalFiles) {\n          countSpan.textContent = `${sep.dataset.totalFiles} files`;\n        }\n\n        const arrow = sep.querySelector('.gallery-separator-arrow');\n        sep.classList.toggle('gallery-separator-hidden', !isOpen);\n        if (arrow) arrow.style.transform = isOpen ? 'rotate(90deg)' : 'rotate(0deg)';\n      });\n\n      allFiles.forEach((f) => {\n        const dir = f.name.match(/(.*)[/\\\\]/);\n        const dirPath = (dir && dir[1]) ? dir[1] : '';\n        const isOpen = separatorStates.get(dirPath);\n        f.style.display = (!dirPath || isOpen) ? 'unset' : 'none';\n      });\n\n      updateStatusWithSort('Filter', 'Cleared', ['Images', allFiles.length.toLocaleString()]);\n      return;\n    }\n\n    // --- Search logic ---\n    let totalFound = 0;\n    const directoryMatches = new Map();\n    const fileMatches = new WeakSet();\n    const r = /^(.+)([=<>])(.*)/;\n\n    for (const f of allFiles) {\n      let isMatch = false;\n      if (r.test(str)) {\n        const match = str.match(r);\n        const key = match[1].trim();\n        const op = match[2].trim();\n        let val = match[3].trim();\n        if (key === 'mtime') val = new Date(val);\n        if (((op === '=') && (f[key] === val)) || ((op === '>') && (f[key] > val)) || ((op === '<') && (f[key] < val))) {\n          isMatch = true;\n        }\n      } else if (f.title?.toLowerCase().includes(str) || f.exif?.toLowerCase().includes(str)) {\n        isMatch = true;\n      }\n\n      if (isMatch) {\n        fileMatches.add(f);\n        totalFound++;\n        const dir = f.name.match(/(.*)[/\\\\]/);\n        const dirPath = (dir && dir[1]) ? dir[1] : '';\n        directoryMatches.set(dirPath, (directoryMatches.get(dirPath) || 0) + 1);\n      }\n    }\n\n    // Update separators based on search results\n    for (const sep of allSeparators) {\n      const dirPath = sep.title;\n      const foundCount = directoryMatches.get(dirPath) || 0;\n\n      if (foundCount > 0) {\n        sep.style.display = 'flex'; // Show separator\n        sep.classList.remove('gallery-separator-hidden'); // Force open\n\n        const arrow = sep.querySelector('.gallery-separator-arrow');\n        if (arrow) arrow.style.transform = 'rotate(90deg)';\n\n        // Removed file count update during search as it was buggy.\n      } else {\n        sep.style.display = 'none'; // Hide separator\n      }\n    }\n\n    // Update file visibility\n    for (const f of allFiles) {\n      f.style.display = fileMatches.has(f) ? 'unset' : 'none';\n    }\n\n    const t1 = performance.now();\n    updateStatusWithSort('Filter', ['Images', `${totalFound.toLocaleString()} / ${allFiles.length.toLocaleString()}`], `${iconStopwatch} ${Math.floor(t1 - t0).toLocaleString()}ms`);\n    refreshGallerySelection();\n  }, 250);\n}\n\nconst findDuplicates = (arr, key) => {\n  const map = new Map();\n  return arr.filter((item) => {\n    const value = item[key];\n    if (map.has(value)) return true;\n    map.set(value, true);\n    return false;\n  });\n};\n\nasync function gallerySort(btn) {\n  const t0 = performance.now();\n  const arr = Array.from(el.files.children).filter((node) => node.name); // filter out separators\n  if (arr.length === 0) return; // no files to sort\n  if (btn) lastSort = btn.charCodeAt(0);\n  const fragment = document.createDocumentFragment();\n\n  // Helper to get directory path from a file node\n  const getDirPath = (node) => {\n    const match = node.name.match(/(.*)[/\\\\]/);\n    return match ? match[1] : '';\n  };\n\n  // Partition into root files and subfolder files - root files always stay at top\n  const rootFiles = arr.filter((node) => !getDirPath(node));\n  const subfolderFiles = arr.filter((node) => getDirPath(node));\n\n  // Group subfolder files by directory\n  const folderGroups = new Map();\n  for (const file of subfolderFiles) {\n    const dir = getDirPath(file);\n    if (!folderGroups.has(dir)) {\n      folderGroups.set(dir, []);\n    }\n    folderGroups.get(dir).push(file);\n  }\n\n  // Sort function based on current sort mode\n  let sortFn;\n  switch (lastSort) {\n    case 61789: // name asc\n      lastSortName = 'Name Ascending';\n      sortFn = (a, b) => a.name.localeCompare(b.name);\n      break;\n    case 61790: // name dsc\n      lastSortName = 'Name Descending';\n      sortFn = (a, b) => b.name.localeCompare(a.name);\n      break;\n    case 61792: // size asc\n      lastSortName = 'Size Ascending';\n      sortFn = (a, b) => a.size - b.size;\n      break;\n    case 61793: // size dsc\n      lastSortName = 'Size Descending';\n      sortFn = (a, b) => b.size - a.size;\n      break;\n    case 61794: // resolution asc\n      lastSortName = 'Resolution Ascending';\n      sortFn = (a, b) => a.width * a.height - b.width * b.height;\n      break;\n    case 61795: // resolution dsc\n      lastSortName = 'Resolution Descending';\n      sortFn = (a, b) => b.width * b.height - a.width * a.height;\n      break;\n    case 61662:\n      lastSortName = 'Modified Ascending';\n      sortFn = (a, b) => a.mtime - b.mtime;\n      break;\n    case 61661:\n      lastSortName = 'Modified Descending';\n      sortFn = (a, b) => b.mtime - a.mtime;\n      break;\n    default:\n      lastSortName = 'None';\n      sortFn = null;\n      break;\n  }\n\n  // Sort root files\n  if (sortFn) {\n    rootFiles.sort(sortFn);\n  }\n  rootFiles.forEach((node) => fragment.appendChild(node));\n\n  // Sort folder names alphabetically, then sort files within each folder\n  const sortedFolderNames = Array.from(folderGroups.keys()).sort((a, b) => a.localeCompare(b));\n  for (const folderName of sortedFolderNames) {\n    const files = folderGroups.get(folderName);\n    if (sortFn) {\n      files.sort(sortFn);\n    }\n    files.forEach((node) => fragment.appendChild(node));\n  }\n\n  if (fragment.children.length === 0) return;\n  el.files.innerHTML = '';\n  el.files.appendChild(fragment);\n  addSeparators();\n\n  // After sorting and adding separators, ensure files respect separator states\n  const all = Array.from(el.files.children);\n  for (const f of all) {\n    if (!f.name) continue; // Skip separators\n\n    const dir = f.name.match(/(.*)[/\\\\]/);\n    if (dir && dir[1]) {\n      const dirPath = dir[1];\n      const isOpen = separatorStates.get(dirPath);\n      if (isOpen === false) {\n        f.style.display = 'none';\n      }\n    }\n  }\n\n  const t1 = performance.now();\n  log(`gallerySort: char=${lastSort} len=${arr.length} time=${Math.floor(t1 - t0)} sort=${lastSortName}`);\n  updateStatusWithSort(['Images', arr.length.toLocaleString()], `${iconStopwatch} ${Math.floor(t1 - t0).toLocaleString()}ms`);\n  refreshGallerySelection();\n}\n\n/**\n * Function for removing the cleaning overlay\n * @callback ClearMsgCallback\n * @returns {void}\n */\n\n/**\n * Generate and display the overlay to announce cleanup is in progress.\n * @param {number} count - Number of entries being cleaned up\n * @param {boolean} all - Indicate that all thumbnails are being cleared\n * @returns {ClearMsgCallback}\n */\nfunction showCleaningMsg(count, all = false) {\n  // Rendering performance isn't a priority since this doesn't run often\n  const parent = el.folders.parentElement;\n  const cleaningOverlay = document.createElement('div');\n  const msgDiv = document.createElement('div');\n  const msgText = document.createElement('div');\n  const msgInfo = document.createElement('div');\n  const anim = document.createElement('span');\n\n  parent.style.position = 'relative';\n  cleaningOverlay.style.cssText = 'position: absolute; height: 100%; width: 100%; background-color: hsl(210 50 20 / 0.8); display: flex; align-items: center; justify-content: center; align-content: center; flex-wrap: wrap;';\n  msgDiv.style.cssText = 'display: block; background-color: hsl(0 0 10); color: white; padding: 12px; border-radius: 8px;';\n  msgText.style.cssText = 'font-size: 1.2em';\n  msgInfo.style.cssText = 'font-size: 0.9em; text-align: center;';\n  msgText.innerText = 'Thumbnail cleanup...';\n  msgInfo.innerText = all ? 'Clearing all entries' : `Found ${count} old entries`;\n  anim.classList.add('idbBusyAnim');\n\n  msgDiv.append(msgText, msgInfo);\n  cleaningOverlay.append(msgDiv, anim);\n  parent.append(cleaningOverlay);\n  return () => { cleaningOverlay.remove(); };\n}\n\nconst maintenanceQueue = new SimpleFunctionQueue('Gallery Maintenance');\n\n/**\n * Handles calling the cleanup function for the thumbnail cache\n * @param {string} folder - Folder to clean\n * @param {number} imgCount - Expected number of images in gallery\n * @param {AbortController} controller - AbortController that's handling this task\n * @param {boolean} force - Force full cleanup of the folder\n */\nasync function thumbCacheCleanup(folder, imgCount, controller, force = false) {\n  if (!opts.browser_cache && !force) return;\n  try {\n    if (typeof folder !== 'string' || typeof imgCount !== 'number') {\n      throw new Error('Function called with invalid arguments');\n    }\n    debug('Thumbnail DB cleanup: Waiting for gallery data to settle');\n    await awaitForGallery(imgCount, controller.signal);\n  } catch (err) {\n    debug(`Thumbnail DB cleanup: Skipping cleanup for \"${folder}\" due to \"${err}\"`);\n    return;\n  }\n\n  maintenanceQueue.enqueue({\n    signal: controller.signal,\n    callback: async () => {\n      log(`Thumbnail DB cleanup: Checking if \"${folder}\" needs cleaning`);\n      const t0 = performance.now();\n      const keptGalleryHashes = force ? new Set() : new Set(galleryHashes.values()); // External context should be safe since this function run is guarded by AbortController/AbortSignal in the SimpleFunctionQueue\n      const folderNormalized = folder.replace(/\\/+/g, '/').replace(/\\/$/, '');\n      const recursiveFolder = IDBKeyRange.bound(folderNormalized, `${folderNormalized}\\uffff`, false, true);\n      const cachedHashesCount = await idbCount(recursiveFolder)\n        .catch((e) => {\n          error(`Thumbnail DB cleanup: Error when getting entry count for \"${folder}\".`, e);\n          return Infinity; // Forces next check to fail if something went wrong\n        });\n      const cleanupCount = cachedHashesCount - keptGalleryHashes.size;\n      if (!force && (cleanupCount < 500 || !Number.isFinite(cleanupCount))) {\n        // Don't run when there aren't many excess entries\n        return;\n      }\n\n      if (controller.signal.aborted) {\n        debug(`Thumbnail DB cleanup: Cancelling \"${folder}\" cleanup due to \"${controller.signal.reason}\"`);\n        return;\n      }\n      const cb_clearMsg = showCleaningMsg(cleanupCount);\n      await idbFolderCleanup(keptGalleryHashes, recursiveFolder, controller.signal)\n        .then((delcount) => {\n          const t1 = performance.now();\n          log(`Thumbnail DB cleanup: folder=${folder} kept=${keptGalleryHashes.size} deleted=${delcount} time=${Math.floor(t1 - t0)}ms`);\n          currentGalleryFolder = null;\n          el.clearCacheFolder.innerText = '<select a folder first>';\n          updateStatusWithSort('Thumbnail cache cleared');\n        })\n        .catch((reason) => {\n          SimpleFunctionQueue.abortLogger('Thumbnail DB cleanup:', reason);\n        })\n        .finally(async () => {\n          await new Promise((resolve) => { setTimeout(resolve, 1000); }); // Delay removal by 1 second to ensure at least minimum visibility\n          cb_clearMsg();\n        });\n    },\n  });\n}\n\nfunction resetGalleryState(reason) {\n  maintenanceController.abort(reason);\n  const controller = new AbortController();\n  maintenanceController = controller;\n\n  galleryHashes.clear(); // Must happen AFTER the AbortController steps\n  galleryProgressBar.clear();\n  resetGallerySelection();\n  return controller;\n}\n\nfunction clearCacheIfDisabled(browser_cache) {\n  if (browser_cache === false) {\n    log('Thumbnail DB cleanup:', 'Image gallery cache setting disabled. Clearing cache.');\n    const controller = resetGalleryState('Clearing all thumbnails from cache');\n    maintenanceQueue.enqueue({\n      signal: controller.signal,\n      callback: async () => {\n        const t0 = performance.now();\n        const cb_clearMsg = showCleaningMsg(0, true);\n        await idbClearAll(controller.signal)\n          .then(() => {\n            log(`Thumbnail DB cleanup: Cache cleared. time=${Math.floor(performance.now() - t0)}ms`);\n            currentGalleryFolder = null;\n            el.clearCacheFolder.innerText = '<select a folder first>';\n            updateStatusWithSort('Thumbnail cache cleared');\n          })\n          .catch((e) => {\n            SimpleFunctionQueue.abortLogger('Thumbnail DB cleanup:', e);\n          })\n          .finally(async () => {\n            await new Promise((resolve) => { setTimeout(resolve, 1000); });\n            cb_clearMsg();\n          });\n      },\n    });\n  }\n}\n\nfunction addCacheClearLabel() { // Don't use async\n  const setting = document.querySelector('#setting_browser_cache');\n  if (setting) {\n    const div = document.createElement('div');\n    div.style.marginBlock = '0.75rem';\n\n    const span = document.createElement('span');\n    span.style.cssText = 'font-weight: bold; text-decoration: underline; cursor: pointer; color: var(--color-blue); user-select: none;';\n    span.innerText = '<select a folder first>';\n\n    div.append('Clear the thumbnail cache for: ', span, ' (double-click)');\n    setting.parentElement.insertAdjacentElement('afterend', div);\n    el.clearCacheFolder = span;\n\n    span.addEventListener('dblclick', (evt) => {\n      evt.preventDefault();\n      evt.stopPropagation();\n      if (!currentGalleryFolder) return;\n      el.clearCacheFolder.style.color = 'var(--color-green)';\n      setTimeout(() => {\n        el.clearCacheFolder.style.color = 'var(--color-blue)';\n      }, 1000);\n      const controller = resetGalleryState('Clearing folder thumbnails cache');\n      el.files.innerHTML = '';\n      thumbCacheCleanup(currentGalleryFolder, 0, controller, true);\n    });\n    return true;\n  }\n  return false;\n}\n\nasync function fetchFilesHT(evt, controller) {\n  const t0 = performance.now();\n  const fragment = document.createDocumentFragment();\n  updateStatusWithSort(['Folder', evt.target.name], 'in-progress');\n  let numFiles = 0;\n\n  const res = await authFetch(`${window.api}/browser/files?folder=${encodeURI(evt.target.name)}`);\n  if (!res || res.status !== 200) {\n    updateStatusWithSort(['Folder', evt.target.name], ['Failed', res?.statusText || 'No response']);\n    return;\n  }\n  const jsonData = await res.json();\n  for (const line of jsonData) {\n    const data = decodeURI(line).split('##F##');\n    const fileName = data[1];\n    const ext = fileName.split('.').pop().toLowerCase();\n    if (SUPPORTED_EXTENSIONS.includes(ext)) {\n      numFiles++;\n      const f = new GalleryFile(data[0], fileName, controller.signal);\n      fragment.appendChild(f);\n    }\n  }\n\n  if (controller.signal.aborted) return;\n  el.files.appendChild(fragment);\n\n  const t1 = performance.now();\n  log(`gallery: folder=${evt.target.name} num=${numFiles} time=${Math.floor(t1 - t0)}ms`);\n  updateStatusWithSort(['Folder', evt.target.name], ['Images', numFiles.toLocaleString()], `${iconStopwatch} ${Math.floor(t1 - t0).toLocaleString()}ms`);\n  galleryProgressBar.start(numFiles);\n  addSeparators();\n  refreshGallerySelection();\n  thumbCacheCleanup(evt.target.name, numFiles, controller);\n}\n\nasync function fetchFilesWS(evt) { // fetch file-by-file list over websockets\n  if (!url) return;\n  // Abort previous controller and point to new controller for next time\n  const controller = resetGalleryState('Gallery update'); // Called here because fetchFilesHT isn't called directly\n\n  el.files.innerHTML = '';\n  updateGalleryStyles();\n  if (ws && ws.readyState === WebSocket.OPEN) ws.close(); // abort previous request\n  let wsConnected = false;\n  try {\n    ws = new WebSocket(`${url}/sdapi/v1/browser/files`);\n    wsConnected = await wsConnect(ws);\n  } catch (err) {\n    log('gallery: ws connect error', err);\n    return;\n  }\n  log(`gallery: connected=${wsConnected} state=${ws?.readyState} url=${ws?.url}`);\n  currentGalleryFolder = evt.target.name;\n  if (el.clearCacheFolder) {\n    el.clearCacheFolder.innerText = currentGalleryFolder;\n  }\n  if (!wsConnected) {\n    await fetchFilesHT(evt, controller); // fallback to http\n    return;\n  }\n  updateStatusWithSort(['Folder', evt.target.name]);\n  const t0 = performance.now();\n  let numFiles = 0;\n  let t1 = performance.now();\n  let fragment = document.createDocumentFragment();\n\n  ws.onmessage = (event) => {\n    t1 = performance.now();\n    const data = decodeURI(event.data).split('##F##');\n    if (data[0] === '#END#') {\n      ws.close();\n    } else {\n      const fileName = data[1];\n      const ext = fileName.split('.').pop().toLowerCase();\n      if (SUPPORTED_EXTENSIONS.includes(ext)) {\n        const file = new GalleryFile(data[0], fileName, controller.signal);\n        numFiles++;\n        fragment.appendChild(file);\n        if (numFiles % 100 === 0) {\n          updateStatusWithSort(['Folder', evt.target.name], ['Images', numFiles.toLocaleString()], 'in-progress', `${iconStopwatch} ${Math.floor(t1 - t0).toLocaleString()}ms`);\n          el.files.appendChild(fragment);\n          fragment = document.createDocumentFragment();\n        }\n      }\n    }\n  };\n  ws.onclose = (event) => {\n    if (controller.signal.aborted) return;\n    el.files.appendChild(fragment);\n    // gallerySort();\n    log(`gallery: folder=${evt.target.name} num=${numFiles} time=${Math.floor(t1 - t0)}ms`);\n    updateStatusWithSort(['Folder', evt.target.name], ['Images', numFiles.toLocaleString()], `${iconStopwatch} ${Math.floor(t1 - t0).toLocaleString()}ms`);\n    galleryProgressBar.start(numFiles);\n    addSeparators();\n    refreshGallerySelection();\n    thumbCacheCleanup(evt.target.name, numFiles, controller);\n  };\n  ws.onerror = (event) => {\n    log('gallery ws error', event);\n  };\n  ws.send(encodeURI(evt.target.name));\n}\n\nasync function updateFolders() {\n  // if (el.folders.children.length > 0) return;\n  const res = await authFetch(`${window.api}/browser/folders`);\n  if (!res || res.status !== 200) return;\n  url = res.url.split('/sdapi')[0].replace('http', 'ws'); // update global url as ws need fqdn\n  const folders = await res.json();\n  el.folders.innerHTML = '';\n  for (const folder of folders) {\n    const f = new GalleryFolder(folder);\n    el.folders.appendChild(f);\n  }\n}\n\nasync function monitorGalleries() {\n  async function galleryMutation(mutations) {\n    const galleries = mutations.filter((m) => m.target?.classList?.contains('preview'));\n    for (const gallery of galleries) {\n      const links = gallery.target.querySelectorAll('a');\n      for (const link of links) {\n        const href = link.getAttribute('href');\n        if (!href) continue;\n        const fn = href.split('/').pop().split('\\\\').pop();\n        link.setAttribute('download', fn);\n      }\n    }\n  }\n\n  const galleryElements = gradioApp().querySelectorAll('.gradio-gallery');\n  for (const gallery of galleryElements) {\n    const galleryObserver = new MutationObserver(galleryMutation);\n    galleryObserver.observe(gallery, { childList: true, subtree: true, attributes: true });\n  }\n}\n\nasync function setOverlayAnimation() {\n  const busyAnimation = document.createElement('style');\n  // eslint-disable-next-line @stylistic/max-len\n  busyAnimation.textContent = '.idbBusyAnim{width:16px;height:16px;border-radius:50%;display:block;margin:40px;position:relative;background:#ff3d00;color:#fff;box-shadow:-24px 0,24px 0;box-sizing:border-box;animation:2s ease-in-out infinite overlayRotation}@keyframes overlayRotation{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}';\n  document.head.append(busyAnimation);\n}\n\nasync function galleryClearInit() {\n  let galleryClearInitTimeout = 0;\n  const tryCleanupInit = setInterval(() => {\n    if (addCacheClearLabel() || galleryClearInitTimeout++ === 60) {\n      clearInterval(tryCleanupInit);\n      monitorOption('browser_cache', clearCacheIfDisabled);\n    }\n  }, 1000);\n}\n\nasync function initGalleryAutoRefresh() {\n  const isModern = opts.theme_type?.toLowerCase() === 'modern';\n  let galleryTab = isModern ? document.getElementById('gallery_tabitem') : document.getElementById('tab_gallery');\n  let timeout = 0;\n  while (!galleryTab && timeout++ < 60) {\n    await new Promise((resolve) => { setTimeout(resolve, 1000); });\n    galleryTab = isModern ? document.getElementById('gallery_tabitem') : document.getElementById('tab_gallery');\n  }\n  if (!galleryTab) {\n    throw new Error('Timed out waiting for gallery tab element');\n  }\n  const displayNoneRegEx = /display:\\s*none/;\n  async function galleryAutoRefresh(mutations) {\n    if (!opts.browser_gallery_autoupdate) return;\n    for (const mutation of mutations) {\n      switch (mutation.attributeName) {\n        case 'class':\n          if (mutation.oldValue.includes('hidden') && !mutation.target.classList.contains('hidden')) {\n            await updateFolders();\n            GalleryFolder.getActive()?.click();\n          }\n          break;\n        case 'style':\n          if (displayNoneRegEx.test(mutation.oldValue) && !displayNoneRegEx.test(mutation.target.style.display)) {\n            await updateFolders();\n            GalleryFolder.getActive()?.click();\n          }\n          break;\n        default:\n          break;\n      }\n    }\n  }\n  const galleryVisObserver = new MutationObserver(galleryAutoRefresh);\n  galleryVisObserver.observe(galleryTab, { attributeFilter: ['class', 'style'], attributeOldValue: true });\n}\n\nasync function blockQueueUntilReady() {\n  // Add block to maintenanceQueue until cache is ready\n  maintenanceQueue.enqueue({\n    signal: new AbortController().signal, // Use standalone AbortSignal that can't be aborted\n    callback: async () => {\n      let timeout = 0;\n      while (!idbIsReady() && timeout++ < 60) {\n        await new Promise((resolve) => { setTimeout(resolve, 1000); });\n      }\n      if (!idbIsReady()) {\n        throw new Error('Timed out waiting for thumbnail cache');\n      }\n    },\n  });\n}\n\nasync function initGallery() { // triggered on gradio change to monitor when ui gets sufficiently constructed\n  log('initGallery');\n  el.folders = gradioApp().getElementById('tab-gallery-folders');\n  el.files = gradioApp().getElementById('tab-gallery-files');\n  el.status = gradioApp().getElementById('tab-gallery-status');\n  el.search = gradioApp().querySelector('#tab-gallery-search textarea');\n  if (!el.folders || !el.files || !el.status || !el.search) {\n    error('initGallery', 'Missing gallery elements');\n    return;\n  }\n\n  blockQueueUntilReady(); // Run first\n  updateGalleryStyles();\n  injectGalleryStatusCSS();\n  setOverlayAnimation();\n  galleryClearInit();\n  const progress = gradioApp().getElementById('tab-gallery-progress');\n  if (progress) {\n    galleryProgressBar.attachTo(progress);\n  } else {\n    log('initGallery', 'Failed to attach loading progress bar');\n  }\n  el.search.addEventListener('input', gallerySearch);\n  el.btnSend = gradioApp().getElementById('tab-gallery-send-image');\n  document.getElementById('tab-gallery-files').style.height = opts.logmonitor_show ? '75vh' : '85vh';\n\n  monitorGalleries();\n  updateFolders();\n  [\n    'browser_folders',\n    'outdir_samples',\n    'outdir_txt2img_samples',\n    'outdir_img2img_samples',\n    'outdir_control_samples',\n    'outdir_extras_samples',\n    'outdir_save',\n    'outdir_video',\n    'outdir_init_images',\n    'outdir_grids',\n    'outdir_txt2img_grids',\n    'outdir_img2img_grids',\n    'outdir_control_grids',\n  ].forEach((op) => { monitorOption(op, updateFolders); });\n}\n\n// register on startup\n\ncustomElements.define('gallery-folder', GalleryFolder);\ncustomElements.define('gallery-file', GalleryFile);\n"
  },
  {
    "path": "javascript/generationParams.js",
    "content": "// attaches listeners to the txt2img and img2img galleries to update displayed generation param text when the image changes\n\nfunction attachGalleryListeners(tabName) {\n  const gallery = gradioApp().querySelector(`#${tabName}_gallery`);\n  if (!gallery) return null;\n  gallery.addEventListener('click', () => {\n    // log('galleryItemSelected:', tabName);\n    const btn = gradioApp().getElementById(`${tabName}_generation_info_button`);\n    if (btn) btn.click();\n  });\n  gallery?.addEventListener('keydown', (e) => {\n    if (e.keyCode === 37 || e.keyCode === 39) gradioApp().getElementById(`${tabName}_generation_info_button`).click(); // left or right arrow\n  });\n  return gallery;\n}\n\nlet txt2img_gallery;\nlet img2img_gallery;\nlet control_gallery;\nlet modal;\n\nasync function initiGenerationParams() {\n  if (!modal) modal = gradioApp().getElementById('lightboxModal');\n  if (!modal) return;\n\n  const modalObserver = new MutationObserver((mutations) => {\n    mutations.forEach((mutationRecord) => {\n      const tabName = getENActiveTab();\n      if (mutationRecord.target.style.display === 'none') {\n        const btn = gradioApp().getElementById(`${tabName}_generation_info_button`);\n        if (btn) btn.click();\n      }\n    });\n  });\n\n  if (!txt2img_gallery) txt2img_gallery = attachGalleryListeners('txt2img');\n  if (!img2img_gallery) img2img_gallery = attachGalleryListeners('img2img');\n  if (!control_gallery) control_gallery = attachGalleryListeners('control');\n  modalObserver.observe(modal, { attributes: true, attributeFilter: ['style'] });\n  log('initGenerationParams');\n}\n"
  },
  {
    "path": "javascript/gpu.js",
    "content": "let gpuInterval = null;\nconst chartData = { mem: [], load: [] };\n\nasync function updateGPUChart(mem, load) {\n  const maxLen = 120;\n  const colorRangeMap = $.range_map({\n    '0:5': '#fffafa',\n    '6:10': '#fff7ed',\n    '11:20': '#fed7aa',\n    '21:30': '#fdba74',\n    '31:40': '#fb923c',\n    '41:50': '#f97316',\n    '51:60': '#ea580c',\n    '61:70': '#c2410c',\n    '71:80': '#9a3412',\n    '81:90': '#7c2d12',\n    '91:100': '#6c2e12',\n  });\n  const sparklineConfigLOAD = { type: 'bar', height: '128px', barWidth: '3px', barSpacing: '1px', chartRangeMin: 0, chartRangeMax: 100, barColor: '#89007D' };\n  const sparklineConfigMEM = { type: 'bar', height: '128px', barWidth: '3px', barSpacing: '1px', chartRangeMin: 0, chartRangeMax: 100, colorMap: colorRangeMap, composite: true };\n  if (chartData.load.length > maxLen) chartData.load.shift();\n  chartData.load.push(load);\n  if (chartData.mem.length > maxLen) chartData.mem.shift();\n  chartData.mem.push(mem);\n  $('#gpuChart').sparkline(chartData.load, sparklineConfigLOAD);\n  $('#gpuChart').sparkline(chartData.mem, sparklineConfigMEM);\n}\n\nasync function updateGPU() {\n  const gpuEl = document.getElementById('gpu');\n  const gpuTable = document.getElementById('gpu-table');\n  try {\n    const res = await authFetch(`${window.api}/gpu`);\n    if (!res.ok) {\n      clearInterval(gpuInterval);\n      gpuEl.style.display = 'none';\n      return;\n    }\n    const data = await res.json();\n    if (!data) {\n      clearInterval(gpuInterval);\n      gpuEl.style.display = 'none';\n      return;\n    }\n    const gpuTbody = gpuTable.querySelector('tbody');\n    for (const gpu of data) {\n      let rows = `<tr><td>GPU</td><td>${gpu.name}</td></tr>`;\n      for (const item of Object.entries(gpu.data)) rows += `<tr><td>${item[0]}</td><td>${item[1]}</td></tr>`;\n      gpuTbody.innerHTML = rows;\n      if (gpu.chart && gpu.chart.length === 2) updateGPUChart(gpu.chart);\n    }\n    gpuEl.style.display = 'block';\n  } catch (e) {\n    error('updateGPU', e);\n    clearInterval(gpuInterval);\n    gpuEl.style.display = 'none';\n  }\n}\n\nasync function startGPU() {\n  const gpuEl = document.getElementById('gpu');\n  gpuEl.style.display = 'block';\n  if (gpuInterval) clearInterval(gpuInterval);\n  const interval = window.opts?.gpu_monitor || 3000;\n  log('startGPU', interval);\n  gpuInterval = setInterval(updateGPU, interval);\n  updateGPU();\n}\n\nasync function disableGPU() {\n  clearInterval(gpuInterval);\n  const gpuEl = document.getElementById('gpu');\n  gpuEl.style.display = 'none';\n}\n"
  },
  {
    "path": "javascript/guidance.js",
    "content": "const guiders = {\n  None: '',\n  'LSC: LayerSkipConfig': 'https://github.com/huggingface/diffusers/blob/041501aea92919c9c7f36e189fc9cf7d865ebb96/src/diffusers/hooks/layer_skip.py#L41',\n  'CFG: ClassifierFreeGuidance': 'https://huggingface.co/docs/diffusers/v0.35.1/en/api/modular_diffusers/guiders#diffusers.ClassifierFreeGuidance',\n  'Auto: AutoGuidance': 'https://huggingface.co/docs/diffusers/v0.35.1/en/api/modular_diffusers/guiders#diffusers.AutoGuidance',\n  'Zero: ClassifierFreeZeroStar': 'https://huggingface.co/docs/diffusers/v0.35.1/en/api/modular_diffusers/guiders#diffusers.ClassifierFreeZeroStarGuidance',\n  'PAG: PerturbedAttentionGuidance': 'https://huggingface.co/docs/diffusers/v0.35.1/en/api/modular_diffusers/guiders#diffusers.PerturbedAttentionGuidance',\n  'APG: AdaptiveProjectedGuidance': 'https://huggingface.co/docs/diffusers/v0.35.1/en/api/modular_diffusers/guiders#diffusers.AdaptiveProjectedGuidance',\n  'SLG: SkipLayerGuidance': 'https://huggingface.co/docs/diffusers/v0.35.1/en/api/modular_diffusers/guiders#diffusers.SkipLayerGuidance',\n  'SEG: SmoothedEnergyGuidance': 'https://huggingface.co/docs/diffusers/v0.35.1/en/api/modular_diffusers/guiders#diffusers.SmoothedEnergyGuidance',\n  'TCFG: TangentialClassifierFreeGuidance': 'https://huggingface.co/docs/diffusers/v0.35.1/en/api/modular_diffusers/guiders#diffusers.TangentialClassifierFreeGuidance',\n  'FDG: FrequencyDecoupledGuidance': 'https://huggingface.co/docs/diffusers/v0.35.1/en/api/modular_diffusers/guiders#diffusers.FrequencyDecoupledGuidance',\n};\n\nfunction getGuidanceDocs(guider) {\n  if (guider.label) guider = guider.label;\n  const url = guiders[guider];\n  log('getGuidanceDocs', guider, url);\n  if (url) window.open(url, '_blank');\n}\n"
  },
  {
    "path": "javascript/hires.js",
    "content": "function onCalcResolutionHires(width, height, hr_scale, hr_resize_x, hr_resize_y, hr_upscaler) {\n  const setInactive = (elem, inactive) => elem.classList.toggle('inactive', !!inactive);\n  const hrUpscaleBy = gradioApp().getElementById('txt2img_hr_scale');\n  const hrResizeX = gradioApp().getElementById('txt2img_hr_resize_x');\n  const hrResizeY = gradioApp().getElementById('txt2img_hr_resize_y');\n  setInactive(hrUpscaleBy, hr_resize_x > 0 || hr_resize_y > 0);\n  setInactive(hrResizeX, hr_resize_x === 0);\n  setInactive(hrResizeY, hr_resize_y === 0);\n  return [width, height, hr_scale, hr_resize_x, hr_resize_y, hr_upscaler];\n}\n"
  },
  {
    "path": "javascript/history.js",
    "content": "const inferenceTypes = ['inference', 'vae', 'te'];\nconst ioTypes = ['load', 'save'];\n\nfunction refreshHistory() {\n  log('refreshHistory');\n  authFetch(`${window.api}/history`, { priority: 'low' }).then((res) => {\n    const timeline = document.getElementById('history_timeline');\n    const table = document.getElementById('history_table');\n    timeline.innerHTML = '';\n    res.json().then((data) => {\n      if (!data || !data.length) {\n        table.innerHTML = '<p>No history data available.</p>';\n        return;\n      }\n\n      // build table\n      let html = '<table><thead><tr><th>Time</th><th>ID</th><th>Job</th><th>Action</th><th>Duration</th><th>Outputs</th></tr></thead><tbody>';\n      for (const entry of data) {\n        const ts = new Date(1000 * entry.timestamp).toLocaleString();\n        const duration = entry.duration ? `${(entry.duration).toFixed(3)}` : '';\n        const outputs = entry.outputs.join(', ');\n        html += `<tr><td>${ts}</td><td>${entry.id}</td><td>${entry.job}</td><td>${entry.op}</td><td>${duration}</td><td>${outputs}</td></tr>`;\n      }\n      html += '</tbody></table>';\n      table.innerHTML = html;\n\n      // crop data to last processing session\n      let startIdx = -1;\n      for (let i = data.length - 1; i >= 0; --i) {\n        const e = data[i];\n        if ((e.job === 'control' || e.job === 'text' || e.job === 'control' || e.job === 'image') && (e.op === 'begin')) {\n          startIdx = i;\n          break;\n        }\n      }\n      if (startIdx >= 0) data = data.slice(startIdx);\n\n      // build timeline\n      const ts = [];\n      for (const entry of data) {\n        if (entry.op === 'begin') {\n          const start = entry.timestamp;\n          const end = data.find((e) => (e.id === entry.id && e.op === 'end')) || data[data.length - 1].timestamp;\n          if (end.timestamp - start < 0.02) continue; // skip very short entries\n          if (inferenceTypes.some((type) => entry.job.toLowerCase().startsWith(type))) entry.type = 'inference';\n          else if (ioTypes.some((type) => entry.job.toLowerCase().startsWith(type))) entry.type = 'io';\n          else entry.type = 'default';\n          if (start && end.timestamp) ts.push({ start, end: end.timestamp, label: entry.job, type: entry.type });\n        }\n      }\n      if (!ts.length) return;\n      new Timesheet(timeline, ts); // eslint-disable-line no-undef, no-new\n    });\n  });\n}\n"
  },
  {
    "path": "javascript/imageParams.js",
    "content": "async function initDragDrop() {\n  log('initDragDrop');\n  window.addEventListener('drop', (e) => {\n    const target = e.composedPath()[0];\n    if (!target.placeholder) return;\n    if (target.placeholder.indexOf('Prompt') === -1) return;\n    const tabName = getENActiveTab();\n    const promptTarget = `${tabName}_prompt_image`;\n    const imgParent = gradioApp().getElementById(promptTarget);\n    log('dropEvent', target, promptTarget, imgParent);\n    const fileInput = imgParent.querySelector('input[type=\"file\"]');\n    if (!imgParent || !fileInput) return;\n    if ((e.dataTransfer?.files?.length || 0) > 0) {\n      e.stopPropagation();\n      e.preventDefault();\n      fileInput.files = e.dataTransfer.files;\n      fileInput.dispatchEvent(new Event('change'));\n      log('dropEvent files', fileInput.files);\n    }\n  });\n}\n"
  },
  {
    "path": "javascript/imageViewer.js",
    "content": "// A full size 'lightbox' preview modal shown when left clicking on gallery previews\nlet previewDrag = false;\nlet modalPreviewZone;\nlet previewInstance;\n\nfunction cycleImageFit() {\n  const root = document.documentElement;\n  const current = getComputedStyle(root).getPropertyValue('--sd-image-fit').trim();\n  let next = 'contain';\n  if (current === 'contain') next = 'cover';\n  else if (current === 'cover') next = 'fill';\n  else if (current === 'fill') next = 'scale-down';\n  else if (current === 'scale-down') next = 'none';\n  root.style.setProperty('--sd-image-fit', next);\n  log('cycleImageFit', current, next);\n}\n\nfunction isInViewport(element) {\n  const rect = element.getBoundingClientRect();\n  return rect.top >= 0 && rect.left >= 0 && rect.bottom <= (window.innerHeight || document.documentElement.clientHeight) && rect.right <= (window.innerWidth || document.documentElement.clientWidth);\n}\n\nfunction closeModal(evt, force = false) {\n  if (force) gradioApp().getElementById('lightboxModal').style.display = 'none';\n  if (previewDrag) return;\n  if (evt?.button !== 0) return;\n  gradioApp().getElementById('lightboxModal').style.display = 'none';\n  let thumbnails = Array.from(gradioApp().querySelectorAll('.thumbnails .thumbnail-item'));\n  thumbnails = thumbnails.filter((el) => el.checkVisibility());\n  if (thumbnails.length === 0) return;\n  thumbnails[0].focus();\n}\n\nfunction modalImageSwitch(offset) {\n  const negmod = (n, m) => ((n % m) + m) % m;\n  const galleryButtons = all_gallery_buttons();\n  if (galleryButtons.length > 1) {\n    const currentButton = selected_gallery_button();\n    let result = -1;\n    galleryButtons.forEach((v, i) => {\n      if (v === currentButton) result = i;\n    });\n    if (result !== -1) {\n      const nextButton = galleryButtons[negmod((result + offset), galleryButtons.length)];\n      nextButton.click();\n      const modalImage = gradioApp().getElementById('modalImage');\n      const modal = gradioApp().getElementById('lightboxModal');\n      modalImage.src = nextButton.children[0].src;\n      if (modalImage.style.display === 'none') modal.style.setProperty('background-image', `url(${modalImage.src})`);\n      return;\n    }\n  }\n\n  const galleryFilesContainer = gradioApp().getElementById('tab-gallery-files');\n  if (!galleryFilesContainer || !galleryFilesContainer.offsetParent) return;\n  const gallerySelection = window.getGallerySelection();\n  if (!gallerySelection.files.length || gallerySelection.files.length <= 1) return;\n  const baseIndex = gallerySelection.index >= 0 ? gallerySelection.index : 0;\n  const nextIndex = negmod((baseIndex + offset), gallerySelection.files.length);\n  window.setGallerySelection(nextIndex, { send: true });\n  const modalImage = gradioApp().getElementById('modalImage');\n  const modal = gradioApp().getElementById('lightboxModal');\n  const directSrc = window.getGallerySelectedUrl();\n  if (modalImage && modal && directSrc) {\n    modalImage.src = directSrc;\n    if (modalImage.style.display === 'none') modal.style.setProperty('background-image', `url(${directSrc})`);\n  }\n}\n\nfunction modalSaveImage(event) {\n  const tabName = getENActiveTab();\n  const saveBtn = gradioApp().getElementById(`save_${tabName}`);\n  log('modalSaveImage', tabName, saveBtn);\n  if (saveBtn) saveBtn.click();\n  modalImageSwitch(0);\n}\n\nfunction modalKeyHandler(event) {\n  log('modalKeyHandler', event.key);\n  switch (event.key) {\n    case 's':\n      modalSaveImage();\n      break;\n    case 'ArrowLeft':\n      modalImageSwitch(-1);\n      break;\n    case 'ArrowRight':\n      modalImageSwitch(1);\n      break;\n    case 'Escape':\n      closeModal(null, true);\n      break;\n  }\n  event.stopPropagation();\n}\n\nasync function getExif(el) {\n  let exif = '';\n  try {\n    exif = await window.exifr.parse(el, { userComment: true });\n  } catch (e) {\n    log('getExif', el, e);\n    return exif;\n  }\n  // let html = `<b>Image</b> <a href=\"${el.src}\" target=\"_blank\">${el.src}</a> <b>Size</b> ${el.naturalWidth}x${el.naturalHeight}<br>`;\n  let html = '';\n  let params;\n  if (exif.parameters) {\n    params = exif.parameters;\n  } else if (exif.userComment) {\n    params = Array.from(exif.userComment)\n      .map((c) => String.fromCharCode(c))\n      .filter((c) => c !== '\\x00')\n      .join('')\n      .replace('UNICODE', '');\n  } else {\n    params = '';\n  }\n  if (params.length > 0) html += `<b>Prompt</b> ${params || ''}<br>`;\n  html = html.replace('Negative prompt:', '<br><b>Negative</b>');\n  html = html.replace('Steps:', '<br><b>Params</b> Steps:');\n  html = html.replaceAll('\\n', '<br>');\n  html = html.replaceAll('<br><br>', '<br>');\n  return html;\n}\nwindow.getExif = getExif;\n\nasync function displayExif(el) {\n  const modalExif = gradioApp().getElementById('modalExif');\n  const html = await getExif(el);\n  modalExif.innerHTML = html;\n}\n\nfunction showModal(event) {\n  const source = event.target || event.srcElement;\n  const modalImage = gradioApp().getElementById('modalImage');\n  const lb = gradioApp().getElementById('lightboxModal');\n  lb.ownerSVGElement = modalImage;\n  modalImage.onload = () => {\n    previewInstance.moveTo(0, 0);\n    modalPreviewZone.focus();\n    if (opts.viewer_show_metadata) displayExif(modalImage);\n  };\n  modalImage.src = source.src;\n  if (modalImage.style.display === 'none') lb.style.setProperty('background-image', `url(${source.src})`);\n  lb.style.display = 'flex';\n  lb.onkeydown = modalKeyHandler;\n  event.stopPropagation();\n}\n\nfunction modalDownloadImage() {\n  const link = document.createElement('a');\n  link.style.display = 'none';\n  link.href = gradioApp().getElementById('modalImage').src;\n  link.download = 'image';\n  document.body.appendChild(link);\n  link.click();\n  setTimeout(() => {\n    URL.revokeObjectURL(link.href);\n    link.parentNode.removeChild(link);\n  }, 0);\n}\n\nfunction modalZoomSet(modalImage, enable) {\n  localStorage.setItem('modalZoom', enable ? 'yes' : 'no');\n  if (modalImage) modalImage.classList.toggle('modalImageFullscreen', !!enable);\n}\n\nfunction setupImageForLightbox(image) {\n  if (image.dataset.modded) return;\n  image.dataset.modded = 'true';\n  image.style.cursor = 'pointer';\n  image.style.userSelect = 'none';\n}\n\nfunction modalZoomToggle(event) {\n  const modalImage = gradioApp().getElementById('modalImage');\n  modalZoomSet(modalImage, !modalImage.classList.contains('modalImageFullscreen'));\n  event.stopPropagation();\n  modalImageSwitch(0);\n}\n\nfunction modalTileToggle(event) {\n  const modalImage = gradioApp().getElementById('modalImage');\n  const modal = gradioApp().getElementById('lightboxModal');\n  const isTiling = modalImage.style.display === 'none';\n  if (isTiling) {\n    modalImage.style.display = 'block';\n    modal.style.setProperty('background-image', 'none');\n  } else {\n    modalImage.style.display = 'none';\n    modal.style.setProperty('background-image', `url(${modalImage.src})`);\n  }\n  event.stopPropagation();\n  modalImageSwitch(0);\n}\n\nfunction modalResetInstance(event) {\n  const modalImage = document.getElementById('modalImage');\n  previewInstance.dispose();\n  previewInstance = panzoom(modalImage, { zoomSpeed: 0.05, minZoom: 0.1, maxZoom: 5.0, filterKey: (/* e, dx, dy, dz */) => true });\n  event.stopPropagation();\n  modalImageSwitch(0);\n}\n\nfunction modalToggleParams(event) {\n  const modalExif = gradioApp().getElementById('modalExif');\n  if (modalExif.style.display === 'none' || modalExif.style.display === '') {\n    modalExif.style.display = 'block';\n  } else {\n    modalExif.style.display = 'none';\n  }\n  event.stopPropagation();\n  modalImageSwitch(0);\n}\n\nfunction galleryClickEventHandler(event) {\n  if (event.button !== 0) return;\n  if (event.target.nodeName === 'IMG' && !event.target.parentNode.classList.contains('thumbnail-item')) {\n    const initialZoom = (localStorage.getItem('modalZoom') || true) === 'yes';\n    modalZoomSet(gradioApp().getElementById('modalImage'), initialZoom);\n    event.preventDefault();\n    showModal(event);\n  }\n}\n\nasync function bindImageViewer() {\n  // Each tab has its own gradio-gallery\n  const galleryPreviews = gradioApp().querySelectorAll('.gradio-gallery > div.preview');\n  for (const galleryPreview of galleryPreviews) {\n    if (!galleryPreview.hasAttribute('data-listener')) galleryPreview.addEventListener('click', galleryClickEventHandler, true);\n    galleryPreview.setAttribute('data-listener', true);\n    galleryPreview.querySelectorAll('img').forEach(setupImageForLightbox);\n  }\n}\n\nasync function initImageViewer() {\n  // main elements\n  const modal = document.createElement('div');\n  modal.id = 'lightboxModal';\n\n  modalPreviewZone = document.createElement('div');\n  modalPreviewZone.className = 'lightboxModalPreviewZone';\n\n  const modalImage = document.createElement('img');\n  modalImage.id = 'modalImage';\n  modalPreviewZone.appendChild(modalImage);\n  previewInstance = panzoom(modalImage, { zoomSpeed: 0.05, minZoom: 0.1, maxZoom: 5.0, filterKey: (/* e, dx, dy, dz */) => true });\n\n  // toolbar\n  const modalZoom = document.createElement('span');\n  modalZoom.id = 'modal_zoom';\n  modalZoom.className = 'cursor';\n  modalZoom.innerHTML = '\\uf531';\n  modalZoom.title = 'Toggle zoomed view';\n  modalZoom.addEventListener('click', modalZoomToggle, true);\n\n  const modalReset = document.createElement('span');\n  modalReset.id = 'modal_reset';\n  modalReset.className = 'cursor';\n  modalReset.innerHTML = '\\uf532';\n  modalReset.title = 'Reset zoomed view';\n  modalReset.addEventListener('click', modalResetInstance, true);\n\n  const modalTile = document.createElement('span');\n  modalTile.id = 'modal_tile';\n  modalTile.className = 'cursor';\n  modalTile.innerHTML = '\\udb81\\udd70';\n  modalTile.title = 'Preview tiling';\n  modalTile.addEventListener('click', modalTileToggle, true);\n\n  const modalSave = document.createElement('span');\n  modalSave.id = 'modal_save';\n  modalSave.className = 'cursor';\n  modalSave.innerHTML = '\\udb80\\udd93';\n  modalSave.title = 'Save Image';\n  modalSave.addEventListener('click', modalSaveImage, true);\n\n  const modalDownload = document.createElement('span');\n  modalDownload.id = 'modal_download';\n  modalDownload.className = 'cursor';\n  modalDownload.innerHTML = '\\udb85\\udc62';\n  modalDownload.title = 'Download Image';\n  modalDownload.addEventListener('click', modalDownloadImage, true);\n\n  const modalClose = document.createElement('span');\n  modalClose.id = 'modal_close';\n  modalClose.className = 'cursor';\n  modalClose.innerHTML = '\\udb80\\udd57';\n  modalClose.title = 'Close';\n  modalClose.addEventListener('click', (evt) => closeModal(evt, true), true);\n\n  const modalToggleParamsBtn = document.createElement('span');\n  modalToggleParamsBtn.id = 'modal_toggle_params';\n  modalToggleParamsBtn.className = 'cursor';\n  modalToggleParamsBtn.innerHTML = '\\uf05a';\n  modalToggleParamsBtn.title = 'Toggle Parameters';\n  modalToggleParamsBtn.addEventListener('click', modalToggleParams, true);\n\n  // exif\n  const modalExif = document.createElement('div');\n  modalExif.id = 'modalExif';\n  modalExif.style = 'position: absolute; bottom: 0px; width: 100%; background-color: rgba(0, 0, 0, 0.5); color: var(--neutral-300); padding: 1em; font-size: small; line-height: 1.2em; z-index: 1; display: none;';\n\n  // handlers\n  modalPreviewZone.addEventListener('mousedown', () => { previewDrag = false; });\n  modalPreviewZone.addEventListener('touchstart', () => { previewDrag = false; }, { passive: true });\n  modalPreviewZone.addEventListener('mousemove', () => { previewDrag = true; });\n  modalPreviewZone.addEventListener('touchmove', () => { previewDrag = true; }, { passive: true });\n  modalPreviewZone.addEventListener('scroll', () => { previewDrag = true; });\n  modalPreviewZone.addEventListener('mouseup', (evt) => closeModal(evt));\n  modalPreviewZone.addEventListener('touchend', (evt) => closeModal(evt));\n\n  const modalPrev = document.createElement('a');\n  modalPrev.className = 'modalPrev';\n  modalPrev.innerHTML = '&#10094;';\n  modalPrev.addEventListener('click', () => modalImageSwitch(-1), true);\n  // modalPrev.addEventListener('keydown', modalKeyHandler, true);\n\n  const modalNext = document.createElement('a');\n  modalNext.className = 'modalNext';\n  modalNext.innerHTML = '&#10095;';\n  modalNext.addEventListener('click', () => modalImageSwitch(1), true);\n  // modalNext.addEventListener('keydown', modalKeyHandler, true);\n\n  const modalControls = document.createElement('div');\n  modalControls.className = 'modalControls gradio-container';\n\n  // build interface\n  modal.appendChild(modalPrev);\n  modal.appendChild(modalPreviewZone);\n  modal.appendChild(modalNext);\n  modal.append(modalControls);\n  modalControls.appendChild(modalZoom);\n  modalControls.appendChild(modalReset);\n  modalControls.appendChild(modalTile);\n  modalControls.appendChild(modalSave);\n  modalControls.appendChild(modalDownload);\n  modalControls.appendChild(modalToggleParamsBtn);\n  modalControls.appendChild(modalClose);\n  modal.append(modalExif);\n\n  gradioApp().appendChild(modal);\n  log('initImageViewer');\n}\n\nonAfterUiUpdate(bindImageViewer);\n"
  },
  {
    "path": "javascript/indexdb.js",
    "content": "/**\n * @type {?IDBDatabase}\n */\nlet db = null;\n\nasync function initIndexDB() {\n  async function createDB() {\n    return new Promise((resolve, reject) => {\n      const request = indexedDB.open('SDNext', 2);\n      request.onerror = (evt) => reject(evt);\n      request.onsuccess = (evt) => {\n        db = evt.target.result;\n        const countAll = db\n          .transaction(['thumbs'], 'readwrite')\n          .objectStore('thumbs')\n          .count();\n        countAll.onsuccess = () => log('initIndexDB', countAll.result);\n        resolve();\n      };\n      request.onupgradeneeded = (evt) => {\n        db = evt.target.result;\n        const oldver = evt.oldVersion;\n        if (oldver < 1) {\n          const store = db.createObjectStore('thumbs', { keyPath: 'hash' });\n          store.createIndex('hash', 'hash', { unique: true });\n        }\n        if (oldver < 2) {\n          const existingStore = request.transaction.objectStore('thumbs');\n          existingStore.createIndex('folder', 'folder', { unique: false });\n        }\n        resolve();\n      };\n    });\n  }\n\n  if (!db) await createDB();\n}\n\nfunction idbIsReady() {\n  return db !== null;\n}\n\n/**\n * Reusable setup for handling IDB transactions.\n * @param {Object} resources - Required resources for implementation\n * @param {IDBTransaction} resources.transaction\n * @param {AbortSignal} resources.signal\n * @param {Function} resources.resolve\n * @param {Function} resources.reject\n * @param {*} resolveValue - Value to resolve the outer Promise with\n * @returns {() => void} - Function for manually aborting the transaction\n */\nfunction configureTransactionAbort({ transaction, signal, resolve, reject }, resolveValue) {\n  function abortTransaction() {\n    signal.removeEventListener('abort', abortTransaction);\n    transaction.abort();\n  }\n  signal.addEventListener('abort', abortTransaction);\n  transaction.onabort = () => {\n    signal.removeEventListener('abort', abortTransaction);\n    reject(new DOMException(`Aborting database transaction. ${signal.reason}`, 'AbortError'));\n  };\n  transaction.onerror = (e) => {\n    signal.removeEventListener('abort', abortTransaction);\n    reject(new Error('Database transaction error.', e));\n  };\n  transaction.oncomplete = () => {\n    signal.removeEventListener('abort', abortTransaction);\n    resolve(resolveValue);\n  };\n  return abortTransaction;\n}\n\nasync function add(record) {\n  if (!db) return null;\n  return new Promise((resolve, reject) => {\n    const request = db\n      .transaction(['thumbs'], 'readwrite')\n      .objectStore('thumbs')\n      .add(record);\n    request.onsuccess = (evt) => resolve(evt);\n    request.onerror = (evt) => reject(evt);\n  });\n}\n\nasync function del(hash) {\n  if (!db) return null;\n  return new Promise((resolve, reject) => {\n    const request = db\n      .transaction(['thumbs'], 'readwrite')\n      .objectStore('thumbs')\n      .delete(hash);\n    request.onsuccess = (evt) => resolve(evt);\n    request.onerror = (evt) => reject(evt);\n  });\n}\n\nasync function get(hash) {\n  if (!db) return null;\n  return new Promise((resolve, reject) => {\n    const request = db\n      .transaction(['thumbs'], 'readwrite')\n      .objectStore('thumbs')\n      .get(hash);\n    request.onsuccess = () => resolve(request.result);\n    request.onerror = (evt) => reject(evt);\n  });\n}\n\nasync function put(record) {\n  if (!db) return null;\n  return new Promise((resolve, reject) => {\n    const request = db\n      .transaction(['thumbs'], 'readwrite')\n      .objectStore('thumbs')\n      .put(record);\n    request.onsuccess = (evt) => resolve(evt);\n    request.onerror = (evt) => reject(evt);\n  });\n}\n\nasync function idbGetAllKeys(index = null, query = null) {\n  if (!db) return null;\n  return new Promise((resolve, reject) => {\n    try {\n      let request;\n      const transaction = db.transaction('thumbs', 'readonly');\n      transaction.onabort = (e) => reject(e);\n\n      const store = transaction.objectStore('thumbs');\n      if (index) {\n        request = store.index(index).getAllKeys(query);\n      } else {\n        request = store.getAllKeys(query);\n      }\n      request.onsuccess = () => resolve(request.result);\n      request.onerror = (e) => reject(e);\n    } catch (err) {\n      reject(err);\n    }\n  });\n}\n\n/**\n * Get the number of entries in the IndexedDB thumbnail cache.\n * @global\n * @param {IDBValidKey | IDBKeyRange | undefined} folder - If specified, get the count for this gallery folder. Otherwise get the total count.\n * @returns {Promise<number>}\n */\nasync function idbCount(folder) {\n  if (!db) return null;\n  return new Promise((resolve, reject) => {\n    try {\n      let request;\n      const transaction = db.transaction('thumbs', 'readonly');\n      transaction.onabort = (e) => reject(e);\n\n      const store = transaction.objectStore('thumbs');\n      if (folder) {\n        request = store.index('folder').count(folder);\n      } else {\n        request = store.count();\n      }\n      request.onsuccess = () => resolve(request.result);\n      request.onerror = (e) => reject(e);\n    } catch (err) {\n      reject(err);\n    }\n  });\n}\n\n/**\n * Cleanup function for IndexedDB thumbnail cache.\n * @global\n * @param {Set<string>} keepSet - Set containing the hashes of the current files in the folder\n * @param {IDBValidKey | IDBKeyRange} folder - Folder name/path or range\n * @param {AbortSignal} signal - Signal from the AbortController for thumbCacheCleanup()\n */\nasync function idbFolderCleanup(keepSet, folder, signal) {\n  if (!db) return null;\n  let removals = new Set(await idbGetAllKeys('folder', folder));\n  removals = removals.difference(keepSet); // Don't need to keep full set in memory\n  const totalRemovals = removals.size;\n  if (signal.aborted) {\n    throw `Aborting. ${signal.reason}`; // eslint-disable-line no-throw-literal\n  }\n  return new Promise((resolve, reject) => {\n    const transaction = db.transaction('thumbs', 'readwrite');\n    const props = { transaction, signal, resolve, reject };\n    configureTransactionAbort(props, totalRemovals);\n    const store = transaction.objectStore('thumbs');\n    removals.forEach((entry) => { store.delete(entry); });\n  });\n}\n\nasync function idbClearAll(signal) {\n  if (!db) return null;\n  return new Promise((resolve, reject) => {\n    const transaction = db.transaction(['thumbs'], 'readwrite');\n    const props = { transaction, signal, resolve, reject };\n    configureTransactionAbort(props, null);\n    transaction.objectStore('thumbs').clear();\n  });\n}\n\nwindow.idbAdd = add;\nwindow.idbDel = del;\nwindow.idbGet = get;\nwindow.idbPut = put;\n"
  },
  {
    "path": "javascript/inputAccordion.js",
    "content": "function inputAccordionChecked(id, checked) {\n  const accordion = gradioApp().getElementById(id);\n  accordion.visibleCheckbox.checked = checked;\n  accordion.onVisibleCheckboxChange();\n}\n\nfunction setupAccordion(accordion) {\n  const labelWrap = accordion.querySelector('.label-wrap');\n  const gradioCheckbox = gradioApp().querySelector(`#${accordion.id}-checkbox input`);\n  const extra = gradioApp().querySelector(`#${accordion.id}-extra`);\n  const span = labelWrap.querySelector('span');\n  let linked = true;\n  const isOpen = () => labelWrap.classList.contains('open');\n  const observerAccordionOpen = new MutationObserver((mutations) => {\n    mutations.forEach((mutationRecord) => {\n      accordion.classList.toggle('input-accordion-open', isOpen());\n      if (linked) {\n        accordion.visibleCheckbox.checked = isOpen();\n        accordion.onVisibleCheckboxChange();\n      }\n    });\n  });\n  observerAccordionOpen.observe(labelWrap, { attributes: true, attributeFilter: ['class'] });\n  if (extra) labelWrap.insertBefore(extra, labelWrap.lastElementChild);\n  accordion.onChecked = (checked) => {\n    if (isOpen() !== checked) labelWrap.click();\n  };\n\n  const visibleCheckbox = document.createElement('INPUT');\n  visibleCheckbox.type = 'checkbox';\n  visibleCheckbox.checked = isOpen();\n  visibleCheckbox.id = `${accordion.id}-visible-checkbox`;\n  visibleCheckbox.className = `${gradioCheckbox.className} input-accordion-checkbox`;\n  span.insertBefore(visibleCheckbox, span.firstChild);\n  accordion.visibleCheckbox = visibleCheckbox;\n  accordion.onVisibleCheckboxChange = () => {\n    if (linked && isOpen() !== visibleCheckbox.checked) labelWrap.click();\n    gradioCheckbox.checked = visibleCheckbox.checked;\n    updateInput(gradioCheckbox);\n  };\n\n  visibleCheckbox.addEventListener('click', (event) => {\n    linked = false;\n    event.stopPropagation();\n  });\n  visibleCheckbox.addEventListener('input', accordion.onVisibleCheckboxChange);\n}\n\n// onUiLoaded(() => {\n//  for (const accordion of gradioApp().querySelectorAll('.input-accordion')) setupAccordion(accordion);\n// });\n\nfunction initAccordions() {\n  for (const accordion of gradioApp().querySelectorAll('.input-accordion')) setupAccordion(accordion);\n}\n"
  },
  {
    "path": "javascript/invoked.css",
    "content": "/* generic html tags */\n:root, .light, .dark {\n  --font: 'system-ui', 'ui-sans-serif', 'system-ui', \"Roboto\", sans-serif, 'NotoSans';\n  --font-mono: 'ui-monospace', 'Consolas', monospace;\n  --font-size: 16px;\n  --primary-100: #2b303b;\n  --primary-200: #15181e;\n  --primary-300: #0a0c0e;\n  --primary-400: #566176;\n  --primary-500: #483a90;\n  --primary-700: #6b7994;\n  --primary-800: #5b49b3;\n  --highlight-color: var(--primary-500);\n  --inactive-color: var(--primary--800);\n  --body-text-color: var(--neutral-100);\n  --body-text-color-subdued: var(--neutral-300);\n  --background-color: var(--primary-100);\n  --background-fill-primary: var(--input-background-fill);\n  --input-padding: 8px;\n  --input-background-fill: var(--primary-200);\n  --input-shadow: none;\n  --button-secondary-text-color: white;\n  --button-secondary-background-fill: var(--primary-400);\n  --button-secondary-background-fill-hover: var(--primary-700);\n  --block-title-text-color: var(--neutral-300);\n  --radius-sm: 1px;\n  --radius-lg: 6px;\n  --spacing-md: 4px;\n  --spacing-xxl: 8px;\n  --line-sm: 1.2em;\n  --line-md: 1.4em;\n}\n\nhtml { font-size: var(--font-size); }\nbody, button, input, select, textarea { font-family: var(--font);}\nbutton { max-width: 400px; }\nimg { background-color: var(--background-color); }\ninput[type=range] { height: var(--line-sm); appearance: none; margin-top: 0; min-width: 160px; background-color: var(--background-color); width: 100%; background: transparent; }\ninput[type=range]::-webkit-slider-runnable-track, input[type=range]::-moz-range-track { width: 100%; height: 6px; cursor: pointer; background: var(--primary-400); border-radius: var(--radius-lg); border: 0px solid #222222; }\ninput[type=range]::-webkit-slider-thumb, input[type=range]::-moz-range-thumb { border: 0px solid #000000; height: var(--line-sm); width: 8px; border-radius: var(--radius-lg); background: white; cursor: pointer; appearance: none; margin-top: 0px; }\ninput[type=range]::-moz-range-progress {  background-color: var(--primary-500);  height: 6px;  border-radius: var(--radius-lg); }\n:root { scrollbar-color: var(--highlight-color) #333333; }\n::-webkit-scrollbar-track { background: #333333; }\n::-webkit-scrollbar-thumb { background-color: var(--highlight-color); border-radius: var(--radius-lg); border-width: 0; box-shadow: 2px 2px 3px #111111; }\ndiv.form { border-width: 0; box-shadow: none; background: transparent; overflow: visible; margin-bottom: 6px; }\ndiv.compact { gap: 1em; }\n\n/* gradio style classes */\nfieldset .gr-block.gr-box, label.block span { padding: 0; margin-top: -4px; }\n.border-2 { border-width: 0; }\n.border-b-2 { border-bottom-width: 2px; border-color: var(--highlight-color) !important; padding-bottom: 2px; margin-bottom: 8px; }\n.bg-white { color: lightyellow; background-color: var(--inactive-color); }\n.gr-box { border-radius: var(--radius-sm) !important; background-color: #111111 !important; box-shadow: 2px 2px 3px #111111; border-width: 0; padding: 4px; margin: 12px 0px 12px 0px }\n.gr-button { font-weight: normal; box-shadow: 2px 2px 3px #111111; font-size: 0.8rem; min-width: 32px; min-height: 32px; padding: 3px; margin: 3px; }\n.gr-check-radio { background-color: var(--inactive-color); border-width: 0; border-radius: var(--radius-lg); box-shadow: 2px 2px 3px #111111; }\n.gr-check-radio:checked { background-color: var(--highlight-color); }\n.gr-compact { background-color: var(--background-color); }\n.gr-form { border-width: 0; }\n.gr-input { background-color: #333333 !important; padding: 4px; margin: 4px; }\n.gr-input-label { color: lightyellow; border-width: 0; background: transparent; padding: 2px !important; }\n.gr-panel { background-color: var(--background-color); }\n.eta-bar { display: none !important }\nsvg.feather.feather-image, .feather .feather-image { display: none }\n.gap-2 { padding-top: 8px; }\n.gr-box > div > div > input.gr-text-input { right: 0; width: 4em; padding: 0; top: -12px; border: none; max-height: 20px; }\n.output-html { line-height: 1.2rem; overflow-x: hidden; }\n.output-html > div { margin-bottom: 8px; }\n.overflow-hidden .flex .flex-col .relative col .gap-4 { min-width: var(--left-column); max-width: var(--left-column); } /* this is a problematic one */\n.p-2 { padding: 0; }\n.px-4 { padding-lefT: 1rem; padding-right: 1rem; }\n.py-6 { padding-bottom: 0; }\n.tabs { background-color: var(--background-color); }\n.block.token-counter span { background-color: var(--input-background-fill) !important; box-shadow: 2px 2px 2px #111; border: none !important; font-size: 0.8rem; }\n.tab-nav { zoom: 110%; margin-top: 10px; margin-bottom: 10px; border-bottom: 2px solid var(--highlight-color) !important; padding-bottom: 2px; }\ndiv.tab-nav button.selected {background-color: var(--button-primary-background-fill);}\n#settings div.tab-nav button.selected {background-color: var(--background-color); color: var(--primary-800); font-weight: bold;}\n.label-wrap { background-color: #363c4a; padding: 16px 8px 8px 8px; border-radius: var(--radius-lg); padding-left: 8px !important; }\n.small-accordion .label-wrap { padding: 8px 0px 8px 0px; }\n.small-accordion .label-wrap .icon { margin-right: 1em; }\n.gradio-button.tool { border: none; box-shadow: none; border-radius: var(--radius-lg);}\nbutton.selected {background: var(--button-primary-background-fill);}\n.center.boundedheight.flex {background-color: var(--input-background-fill);}\n.compact {border-radius: var(--border-radius-lg);}\n#logMonitorData {background-color: var(--input-background-fill);}\n#tab_extensions table td, #tab_extensions table th, #tab_config table td, #tab_config table th { border: none; padding: 0.5em; background-color: var(--primary-200); }\n#tab_extensions table, #tab_config table { width: 96vw; }\n#tab_extensions table input[type=checkbox] {appearance: none; border-radius: 0px;}\n#tab_extensions button:hover { background-color: var(--button-secondary-background-fill-hover);}\n\n/* automatic style classes */\n.progressDiv { border-radius: var(--radius-sm) !important; position: fixed; top: 44px; right: 26px; max-width: 262px; height: 48px; z-index: 99; box-shadow: var(--button-shadow); }\n.progressDiv .progress { border-radius: var(--radius-lg) !important; background: var(--highlight-color); line-height: 3rem; height: 48px; }\n.gallery-item { box-shadow: none !important; }\n.performance { color: #888; }\n.extra-networks { border-left: 2px solid var(--highlight-color) !important; padding-left: 4px; }\n.image-buttons { gap: 10px !important; justify-content: center; }\n.image-buttons > button { max-width: 160px; }\n.tooltip { background: var(--primary-800); color: white; border: none; border-radius: var(--radius-lg) }\n#system_row > button, #settings_row > button, #config_row > button { max-width: 10em; }\n\n/* gradio elements overrides */\n#div.gradio-container { overflow-x: hidden; }\n#img2img_label_copy_to_img2img { font-weight: normal; }\n#img2img_settings { min-width: calc(2 * var(--left-column)); max-width: calc(2 * var(--left-column)); background-color: #111111; padding-top: 16px; }\n#interrogate, #deepbooru { margin: 0 0px 10px 0px; max-width: 80px; max-height: 80px; font-weight: normal; font-size: 0.95em; }\n#quicksettings .gr-button-tool { font-size: 1.6rem; box-shadow: none; margin-top: -2px; height: 2.4em; }\n#quicksettings button {padding: 0 0.5em 0.1em 0.5em;}\n#footer, #style_pos_col, #style_neg_col, #roll_col, #extras_upscaler_2, #extras_upscaler_2_visibility, #txt2img_seed_resize_from_w, #txt2img_seed_resize_from_h { display: none; }\n#save-animation { border-radius: var(--radius-sm) !important; margin-bottom: 16px; background-color: #111111; }\n#script_list { padding: 4px; margin-top: 16px; margin-bottom: 8px; }\n#settings > div.flex-wrap { width: 15em; }\n#txt2img_cfg_scale { min-width: 200px; }\n#txt2img_checkboxes, #img2img_checkboxes { background-color: transparent; }\n#txt2img_checkboxes, #img2img_checkboxes { margin-bottom: 0.2em; }\n\n#extras_upscale { margin-top: 10px }\n#txt2img_progress_row > div { min-width: var(--left-column); max-width: var(--left-column); }\n#txt2img_settings { min-width: var(--left-column); max-width: var(--left-column); background-color: #111111; padding-top: 16px; }\n#pnginfo_html2_info { margin-top: -18px; background-color: var(--input-background-fill); padding: var(--input-padding) }\n#txt2img_tools, #img2img_tools { margin-top: -4px; margin-bottom: -4px; }\n#txt2img_styles_row, #img2img_styles_row { margin-top: -6px; z-index: 200; }\n\n/* based on gradio built-in dark theme */\n:root, .light, .dark {\n  --body-background-fill: var(--background-color);\n  --color-accent-soft: var(--neutral-700);\n  --background-fill-secondary: none;\n  --border-color-accent: var(--background-color);\n  --border-color-primary: var(--background-color);\n  --link-text-color-active: var(--primary-500);\n  --link-text-color: var(--secondary-500);\n  --link-text-color-hover: var(--secondary-400);\n  --link-text-color-visited: var(--secondary-600);\n  --shadow-spread: 1px;\n  --block-background-fill: None;\n  --block-border-color: var(--border-color-primary);\n  --block_border_width: None;\n  --block-info-text-color: var(--body-text-color-subdued);\n  --block-label-background-fill: var(--background-fill-secondary);\n  --block-label-border-color: var(--border-color-primary);\n  --block_label_border_width: None;\n  --block-label-text-color: var(--neutral-200);\n  --block_shadow: None;\n  --block_title_background_fill: None;\n  --block_title_border_color: None;\n  --block_title_border_width: None;\n  --panel-background-fill: var(--background-fill-secondary);\n  --panel-border-color: var(--border-color-primary);\n  --panel_border_width: None;\n  --checkbox-background-color: var(--primary-400);\n  --checkbox-background-color-focus: var(--primary-700);\n  --checkbox-background-color-hover: var(--primary-700);\n  --checkbox-background-color-selected: var(--primary-500);\n  --checkbox-border-color: transparent;\n  --checkbox-border-color-focus: var(--primary-800);\n  --checkbox-border-color-hover: var(--primary-800);\n  --checkbox-border-color-selected: var(--primary-800);\n  --checkbox-border-width: var(--input-border-width);\n  --checkbox-label-background-fill: None;\n  --checkbox-label-background-fill-hover: None;\n  --checkbox-label-background-fill-selected: var(--checkbox-label-background-fill);\n  --checkbox-label-border-color: var(--border-color-primary);\n  --checkbox-label-border-color-hover: var(--checkbox-label-border-color);\n  --checkbox-label-border-width: var(--input-border-width);\n  --checkbox-label-text-color: var(--body-text-color);\n  --checkbox-label-text-color-selected: var(--checkbox-label-text-color);\n  --error-background-fill: var(--background-fill-primary);\n  --error-border-color: var(--border-color-primary);\n  --error-text-color: #ef4444;\n  --input-background-fill-focus: var(--secondary-600);\n  --input-background-fill-hover: var(--input-background-fill);\n  --input-border-color: var(--background-color);\n  --input-border-color-focus: var(--primary-800);\n  --input-placeholder-color: var(--neutral-500);\n  --input-shadow-focus: None;\n  --loader_color: None;\n  --slider_color: None;\n  --stat-background-fill: linear-gradient(to right, var(--primary-400), var(--primary-800));\n  --table-border-color: var(--neutral-700);\n  --table-even-background-fill: var(--primary-300);\n  --table-odd-background-fill: var(--primary-200);\n  --table-row-focus: var(--color-accent-soft);\n  --button-border-width: var(--input-border-width);\n  --button-cancel-background-fill: linear-gradient(to bottom right, #dc2626, #b91c1c);\n  --button-cancel-background-fill-hover: linear-gradient(to bottom right, #dc2626, #dc2626);\n  --button-cancel-border-color: #dc2626;\n  --button-cancel-border-color-hover: var(--button-cancel-border-color);\n  --button-cancel-text-color: white;\n  --button-cancel-text-color-hover: var(--button-cancel-text-color);\n  --button-primary-background-fill: var(--primary-500);\n  --button-primary-background-fill-hover: var(--primary-800);\n  --button-primary-border-color: var(--primary-500);\n  --button-primary-border-color-hover: var(--button-primary-border-color);\n  --button-primary-text-color: white;\n  --button-primary-text-color-hover: var(--button-primary-text-color);\n  --button-secondary-border-color: var(--neutral-600);\n  --button-secondary-border-color-hover: var(--button-secondary-border-color);\n  --button-secondary-text-color-hover: var(--button-secondary-text-color);\n  --secondary-50: #eff6ff;\n  --secondary-100: #dbeafe;\n  --secondary-200: #bfdbfe;\n  --secondary-300: #93c5fd;\n  --secondary-400: #60a5fa;\n  --secondary-500: #3b82f6;\n  --secondary-600: #2563eb;\n  --secondary-700: #1d4ed8;\n  --secondary-800: #1e40af;\n  --secondary-900: #1e3a8a;\n  --secondary-950: #1d3660;\n  --neutral-50: #f0f0f0;\n  --neutral-100: #e0e0e0;\n  --neutral-200: #d0d0d0;\n  --neutral-300: #b0b0b0;\n  --neutral-400: #909090;\n  --neutral-500: #707070;\n  --neutral-600: #606060;\n  --neutral-700: #404040;\n  --neutral-800: #333333;\n  --neutral-900: #111827;\n  --neutral-950: #0b0f19;\n  --radius-xxs: 0;\n  --radius-xs: 0;\n  --radius-md: 0;\n  --radius-xl: 0;\n  --radius-xxl: 0;\n  --body-text-size: var(--text-md);\n  --body-text-weight: 400;\n  --embed-radius: var(--radius-lg);\n  --color-accent: var(--primary-500);\n  --shadow-drop: 0;\n  --shadow-drop-lg: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n  --shadow-inset: rgba(0,0,0,0.05) 0px 2px 4px 0px inset;\n  --block-border-width: 1px;\n  --block-info-text-size: var(--text-sm);\n  --block-info-text-weight: 400;\n  --block-label-border-width: 1px;\n  --block-label-margin: 0;\n  --block-label-padding: var(--spacing-sm) var(--spacing-lg);\n  --block-label-radius: calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px) 0;\n  --block-label-right-radius: 0 calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px);\n  --block-label-text-size: var(--text-sm);\n  --block-label-text-weight: 400;\n  --block-padding: var(--spacing-xl) calc(var(--spacing-xl) + 2px);\n  --block-radius: var(--radius-lg);\n  --block-shadow: var(--shadow-drop);\n  --block-title-background-fill: none;\n  --block-title-border-color: none;\n  --block-title-border-width: 0;\n  --block-title-padding: 0;\n  --block-title-radius: none;\n  --block-title-text-size: var(--text-md);\n  --block-title-text-weight: 400;\n  --container-radius: var(--radius-lg);\n  --form-gap-width: 1px;\n  --layout-gap: var(--spacing-xxl);\n  --panel-border-width: 0;\n  --section-header-text-size: var(--text-md);\n  --section-header-text-weight: 400;\n  --checkbox-border-radius: var(--radius-sm);\n  --checkbox-label-gap: 2px;\n  --checkbox-label-padding: var(--spacing-md);\n  --checkbox-label-shadow: var(--shadow-drop);\n  --checkbox-label-text-size: var(--text-md);\n  --checkbox-label-text-weight: 400;\n  --checkbox-check: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e\");\n  --radio-circle: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e\");\n  --checkbox-shadow: var(--input-shadow);\n  --error-border-width: 1px;\n  --input-border-width: 1px;\n  --input-radius: var(--radius-lg);\n  --input-text-size: var(--text-md);\n  --input-text-weight: 400;\n  --loader-color: var(--color-accent);\n  --prose-text-size: var(--text-md);\n  --prose-text-weight: 400;\n  --prose-header-text-weight: 600;\n  --slider-color: ;\n  --table-radius: var(--radius-lg);\n  --button-large-padding: 2px 6px;\n  --button-large-radius: var(--radius-lg);\n  --button-large-text-size: var(--text-lg);\n  --button-large-text-weight: 400;\n  --button-shadow: none;\n  --button-shadow-active: none;\n  --button-shadow-hover: none;\n  --button-small-padding: var(--spacing-sm) calc(2 * var(--spacing-sm));\n  --button-small-radius: var(--radius-lg);\n  --button-small-text-size: var(--text-md);\n  --button-small-text-weight: 400;\n  --button-transition: none;\n  --size-9: 64px;\n  --size-14: 64px;\n}\n"
  },
  {
    "path": "javascript/light-teal.css",
    "content": "/* generic html tags */\n@font-face { font-family: 'NotoSans'; font-display: swap; font-style: normal; font-weight: 100; src: local('NotoSansNerd'), url('notosans-nerdfont-regular.ttf') }\n:root, .light, .dark {\n  --font: 'NotoSans';\n  --font-mono: 'ui-monospace', 'Consolas', monospace;\n  --font-size: 16px;\n  --primary-50: #7dffff;\n  --primary-100: #72e8e8;\n  --primary-200: #67d2d2;\n  --primary-300: #5dbcbc;\n  --primary-400: #52a7a7;\n  --primary-500: #489292;\n  --primary-600: #3e7d7d;\n  --primary-700: #356969;\n  --primary-800: #2b5656;\n  --primary-900: #224444;\n  --primary-950: #193232;\n  --highlight-color: var(--primary-200);\n  --inactive-color: var(--primary--800);\n  --body-text-color: var(--neutral-800);\n  --body-text-color-subdued: var(--neutral-600);\n  --background-color: #FFFFFF;\n  --background-fill-primary: var(--neutral-300);\n  --input-padding: 4px;\n  --input-background-fill: var(--neutral-200);\n  --input-shadow: 2px 2px 2px 2px var(--neutral-500);\n  --button-secondary-text-color: black;\n  --button-secondary-background-fill: linear-gradient(to bottom right, var(--neutral-200), var(--neutral-500));\n  --button-secondary-background-fill-hover: linear-gradient(to bottom right, var(--neutral-500), var(--neutral-200));\n  --block-title-text-color: var(--neutral-900);\n  --radius-sm: 2px;\n  --radius-lg: 4px;\n  --line-sm: 1.2em;\n  --line-md: 1.4em;\n}\n\nhtml { font-size: var(--font-size); }\nbody, button, input, select, textarea { font-family: var(--font);}\nbutton { max-width: 400px; --button-large-radius: var(--radius-lg) }\nimg { background-color: var(--background-color); }\ninput[type=range] { height: var(--line-sm) !important; appearance: none !important; margin-top: 0 !important; min-width: 160px !important;\n  background-color: var(--background-color) !important; width: 100% !important; background: transparent !important; }\ninput[type=range]::-webkit-slider-runnable-track { width: 100% !important; height: var(--line-sm) !important; cursor: pointer !important; box-shadow: 2px 2px 3px #111111 !important;\n  background: var(--input-background-fill) !important; border-radius: var(--radius-lg) !important; border: 0px solid #222222 !important; }\ninput[type=range]::-moz-range-track { width: 100% !important; height: var(--line-sm) !important; cursor: pointer !important; box-shadow: 2px 2px 3px #111111 !important; background:\n  var(--input-background-fill) !important; border-radius: var(--radius-lg) !important; border: 0px solid #222222 !important; }\ninput[type=range]::-webkit-slider-thumb { box-shadow: 2px 2px 3px #111111 !important; border: 0px solid #000000 !important; height: var(--line-sm) !important; width: var(--line-sm) !important;\n  border-radius: var(--radius-lg) !important; background: var(--highlight-color) !important; cursor: pointer !important; appearance: none !important; margin-top: 0px !important; }\ninput[type=range]::-moz-range-thumb { box-shadow: 2px 2px 3px #111111 !important; border: 0px solid #000000 !important; height: var(--line-sm) !important; width: var(--line-sm) !important;\n  border-radius: var(--radius-lg) !important; background: var(--highlight-color) !important; cursor: pointer !important; appearance: none !important; margin-top: 0px !important; }\n:root { scrollbar-color: var(--highlight-color) #333333; }\n::-webkit-scrollbar { width: 12px; height: 12px; }\n::-webkit-scrollbar-track { background: #333333; }\n::-webkit-scrollbar-thumb { background-color: var(--highlight-color); border-radius: var(--radius-lg); border-width: 0; box-shadow: 2px 2px 3px #111111; }\ndiv.form { border-width: 0; box-shadow: none; background: transparent; overflow: visible; margin-bottom: 6px; }\ndiv.compact { gap: 1em; }\n\n/* gradio style classes */\nfieldset .gr-block.gr-box, label.block span { padding: 0; margin-top: -4px; }\n.border-2 { border-width: 0; }\n.border-b-2 { border-bottom-width: 2px; border-color: var(--highlight-color) !important; padding-bottom: 2px; margin-bottom: 8px; }\n.bg-white { color: lightyellow; background-color: var(--inactive-color); }\n.gr-box { border-radius: var(--radius-sm) !important; background-color: #111111 !important; box-shadow: 2px 2px 3px #111111; border-width: 0; padding: 4px; margin: 12px 0px 12px 0px }\n.gr-button { font-weight: normal; box-shadow: 2px 2px 3px #111111; font-size: 0.8rem; min-width: 32px; min-height: 32px; padding: 3px; margin: 3px; }\n.gr-check-radio { background-color: var(--inactive-color); border-width: 0; border-radius: var(--radius-lg); box-shadow: 2px 2px 3px #111111; }\n.gr-check-radio:checked { background-color: var(--highlight-color); }\n.gr-compact { background-color: var(--background-color); }\n.gr-form { border-width: 0; }\n.gr-input { background-color: #333333 !important; padding: 4px; margin: 4px; }\n.gr-input-label { color: lightyellow; border-width: 0; background: transparent; padding: 2px !important; }\n.gr-panel { background-color: var(--background-color); }\n.eta-bar { display: none !important }\nsvg.feather.feather-image, .feather .feather-image { display: none }\n.gap-2 { padding-top: 8px; }\n.gr-box > div > div > input.gr-text-input { right: 0; width: 4em; padding: 0; top: -12px; border: none; max-height: 20px; }\n.output-html { line-height: 1.2rem; overflow-x: hidden; }\n.output-html > div { margin-bottom: 8px; }\n.overflow-hidden .flex .flex-col .relative col .gap-4 { min-width: var(--left-column); max-width: var(--left-column); } /* this is a problematic one */\n.p-2 { padding: 0; }\n.px-4 { padding-lefT: 1rem; padding-right: 1rem; }\n.py-6 { padding-bottom: 0; }\n.tabs { background-color: var(--background-color); }\n.block.token-counter span { background-color: var(--input-background-fill) !important; box-shadow: 2px 2px 2px #111; border: none !important; font-size: 0.7rem; }\n.tab-nav { zoom: 110%; margin-top: 10px; margin-bottom: 10px; border-bottom: 2px solid var(--highlight-color) !important; padding-bottom: 2px; }\n.label-wrap { margin: 16px 0px 8px 0px; }\n.gradio-button.tool { border: none; background: none; box-shadow: none; filter: hue-rotate(340deg) saturate(0.5); }\n#tab_extensions table td, #tab_extensions table th { border: none; padding: 0.5em; }\n#tab_extensions table { width: 96vw }\n#tab_extensions table thead { background-color: var(--neutral-700); }\n\n/* automatic style classes */\n.progressDiv { border-radius: var(--radius-sm) !important; position: fixed; top: 44px; right: 26px; max-width: 262px; height: 48px; z-index: 99; box-shadow: var(--button-shadow); }\n.progressDiv .progress { border-radius: var(--radius-lg) !important; background: var(--highlight-color); line-height: 3rem; height: 48px; }\n.gallery-item { box-shadow: none !important; }\n.performance { color: #888; }\n.extra-networks { border-left: 2px solid var(--highlight-color) !important; padding-left: 4px; }\n.image-buttons { gap: 10px !important; justify-content: center; }\n.image-buttons > button { max-width: 160px; }\n#system_row > button, #settings_row > button, #config_row > button { max-width: 10em; }\n\n/* gradio elements overrides */\n#div.gradio-container { overflow-x: hidden; }\n#img2img_label_copy_to_img2img { font-weight: normal; }\n#img2img_settings { min-width: calc(2 * var(--left-column)); max-width: calc(2 * var(--left-column)); background-color: #111111; padding-top: 16px; }\n#interrogate, #deepbooru { margin: 0 0px 10px 0px; max-width: 80px; max-height: 80px; font-weight: normal; font-size: 0.95em; }\n#quicksettings .gr-button-tool { font-size: 1.6rem; box-shadow: none; margin-left: -20px; margin-top: -2px; height: 2.4em; }\n#footer, #style_pos_col, #style_neg_col, #roll_col, #extras_upscaler_2, #extras_upscaler_2_visibility, #txt2img_seed_resize_from_w, #txt2img_seed_resize_from_h { display: none; }\n#save-animation { border-radius: var(--radius-sm) !important; margin-bottom: 16px; background-color: #111111; }\n#script_list { padding: 4px; margin-top: 16px; margin-bottom: 8px; }\n#settings > div.flex-wrap { width: 15em; }\n#tab_extensions table { background-color: #222222; }\n#txt2img_cfg_scale { min-width: 200px; }\n#txt2img_checkboxes, #img2img_checkboxes, #control_checkboxes { background-color: transparent; margin-bottom: 0.2em; }\n\n#extras_upscale { margin-top: 10px }\n#txt2img_progress_row > div { min-width: var(--left-column); max-width: var(--left-column); }\n#txt2img_settings { min-width: var(--left-column); max-width: var(--left-column); background-color: #111111; padding-top: 16px; }\n#pnginfo_html2_info { margin-top: -18px; background-color: var(--input-background-fill); padding: var(--input-padding) }\n#txt2img_styles_row, #img2img_styles_row, #control_styles_row { margin-top: -6px; }\n\n/* based on gradio built-in dark theme */\n:root, .light, .dark {\n  --background-fill-secondary: none;\n  --block_border_width: None;\n  --block_label_border_width: None;\n  --block_shadow: None;\n  --block_title_background_fill: None;\n  --block_title_border_color: None;\n  --block_title_border_width: None;\n  --block-background-fill: None;\n  --block-border-color: var(--border-color-primary);\n  --block-border-width: 1px;\n  --block-info-text-color: var(--body-text-color-subdued);\n  --block-info-text-size: var(--text-sm);\n  --block-info-text-weight: 400;\n  --block-label-background-fill: var(--background-fill-secondary);\n  --block-label-border-color: var(--border-color-primary);\n  --block-label-border-width: 1px;\n  --block-label-margin: 0;\n  --block-label-padding: var(--spacing-sm) var(--spacing-lg);\n  --block-label-radius: calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px) 0;\n  --block-label-right-radius: 0 calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px);\n  --block-label-text-color: var(--neutral-200);\n  --block-label-text-size: var(--text-sm);\n  --block-label-text-weight: 400;\n  --block-padding: var(--spacing-xl) calc(var(--spacing-xl) + 2px);\n  --block-radius: var(--radius-lg);\n  --block-shadow: var(--shadow-drop);\n  --block-title-background-fill: none;\n  --block-title-border-color: none;\n  --block-title-border-width: 0px;\n  --block-title-padding: 0;\n  --block-title-radius: none;\n  --block-title-text-size: var(--text-md);\n  --block-title-text-weight: 400;\n  --body-background-fill: var(--background-color);\n  --body-text-size: var(--text-md);\n  --body-text-weight: 400;\n  --border-color-accent: var(--background-color);\n  --border-color-primary: var(--background-color);\n  --button-border-width: var(--input-border-width);\n  --button-cancel-background-fill-hover: linear-gradient(to bottom right, #dc2626, #dc2626);\n  --button-cancel-background-fill: linear-gradient(to bottom right, #dc2626, #b91c1c);\n  --button-cancel-border-color-hover: var(--button-cancel-border-color);\n  --button-cancel-border-color: #dc2626;\n  --button-cancel-text-color-hover: var(--button-cancel-text-color);\n  --button-cancel-text-color: white;\n  --button-large-padding: 2px 6px;\n  --button-large-radius: var(--radius-lg);\n  --button-large-text-size: var(--text-lg);\n  --button-large-text-weight: 400;\n  --button-primary-background-fill-hover: linear-gradient(to bottom right, var(--primary-500), var(--primary-300));\n  --button-primary-background-fill: linear-gradient(to bottom right, var(--primary-500), var(--primary-800));\n  --button-primary-border-color-hover: var(--button-primary-border-color);\n  --button-primary-border-color: var(--primary-500);\n  --button-primary-text-color-hover: var(--button-primary-text-color);\n  --button-primary-text-color: white;\n  --button-secondary-border-color-hover: var(--button-secondary-border-color);\n  --button-secondary-border-color: var(--neutral-600);\n  --button-secondary-text-color-hover: var(--button-secondary-text-color);\n  --button-shadow-active: 1px 1px 4px 0px #555555;\n  --button-shadow-hover: 1px 1px 4px 0px #555555;\n  --button-shadow: 4px 4px 4px 0px #333333;\n  --button-small-padding: var(--spacing-sm) calc(2 * var(--spacing-sm));\n  --button-small-radius: var(--radius-lg);\n  --button-small-text-size: var(--text-md);\n  --button-small-text-weight: 400;\n  --button-transition: none;\n  --checkbox-background-color-focus: var(--checkbox-background-color);\n  --checkbox-background-color-hover: var(--checkbox-background-color);\n  --checkbox-background-color-selected: var(--primary-500);\n  --checkbox-background-color: var(--neutral-500);\n  --checkbox-border-color-focus: var(--secondary-500);\n  --checkbox-border-color-hover: var(--neutral-600);\n  --checkbox-border-color-selected: var(--primary-600);\n  --checkbox-border-color: transparent;\n  --checkbox-border-radius: var(--radius-sm);\n  --checkbox-border-width: var(--input-border-width);\n  --checkbox-check: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e\");\n  --radio-circle: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e\");\n  --checkbox-label-background-fill-hover: None;\n  --checkbox-label-background-fill-selected: var(--checkbox-label-background-fill);\n  --checkbox-label-background-fill: None;\n  --checkbox-label-border-color-hover: var(--checkbox-label-border-color);\n  --checkbox-label-border-color: var(--border-color-primary);\n  --checkbox-label-border-width: var(--input-border-width);\n  --checkbox-label-gap: 2px;\n  --checkbox-label-padding: var(--spacing-md);\n  --checkbox-label-shadow: var(--shadow-drop);\n  --checkbox-label-text-color-selected: var(--checkbox-label-text-color);\n  --checkbox-label-text-color: var(--body-text-color);\n  --checkbox-label-text-size: var(--text-md);\n  --checkbox-label-text-weight: 400;\n  --checkbox-shadow: var(--input-shadow);\n  --color-accent-soft: var(--neutral-700);\n  --color-accent: var(--primary-500);\n  --container-radius: var(--radius-lg);\n  --embed-radius: var(--radius-lg);\n  --error_border_width: None;\n  --error-background-fill: var(--background-fill-primary);\n  --error-border-color: var(--border-color-primary);\n  --error-border-width: 1px;\n  --error-text-color: #ef4444;\n  --form-gap-width: 1px;\n  --input_border_width: None;\n  --input-background-fill-focus: var(--secondary-600);\n  --input-background-fill-hover: var(--input-background-fill);\n  --input-border-color-focus: var(--neutral-700);\n  --input-border-color-hover: var(--input-border-color);\n  --input-border-color: var(--border-color-primary);\n  --input-border-width: 0;\n  --input-placeholder-color: var(--neutral-500);\n  --input-radius: var(--radius-lg);\n  --input-shadow-focus: 2px 2px 2px 2px #111111;\n  --input-text-size: var(--text-md);\n  --input-text-weight: 400;\n  --layout-gap: var(--spacing-xxl);\n  --link-text-color-active: var(--secondary-500);\n  --link-text-color-hover: var(--secondary-400);\n  --link-text-color-visited: var(--secondary-600);\n  --link-text-color: var(--secondary-500);\n  --loader_color: None;\n  --loader-color: var(--color-accent);\n  --neutral-100: #e0e0e0;\n  --neutral-200: #d0d0d0;\n  --neutral-300: #b0b0b0;\n  --neutral-400: #909090;\n  --neutral-50: #f0f0f0;\n  --neutral-500: #707070;\n  --neutral-600: #606060;\n  --neutral-700: #404040;\n  --neutral-800: #333333;\n  --neutral-900: #111827;\n  --neutral-950: #0b0f19;\n  --panel_border_width: None;\n  --panel-background-fill: var(--background-fill-secondary);\n  --panel-border-color: var(--border-color-primary);\n  --panel-border-width: 0;\n  --prose-header-text-weight: 400;\n  --prose-text-size: var(--text-md);\n  --prose-text-weight: 400;\n  --radio-circle: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e\");\n  --radius-md: 0;\n  --radius-xl: 0;\n  --radius-xs: 0;\n  --radius-xxl: 0;\n  --radius-xxs: 0;\n  --secondary-100: #dbeafe;\n  --secondary-200: #bfdbfe;\n  --secondary-300: #93c5fd;\n  --secondary-400: #60a5fa;\n  --secondary-50: #eff6ff;\n  --secondary-500: #3b82f6;\n  --secondary-600: #2563eb;\n  --secondary-700: #1d4ed8;\n  --secondary-800: #1e40af;\n  --secondary-900: #1e3a8a;\n  --secondary-950: #1d3660;\n  --section-header-text-size: var(--text-md);\n  --section-header-text-weight: 400;\n  --shadow-drop-lg: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n  --shadow-drop: 0;\n  --shadow-inset: rgba(0,0,0,0.05) 0px 2px 4px 0px inset;\n  --shadow-spread: 1px;\n  --size-14: 64px;\n  --size-9: 64px;\n  --slider_color: None;\n  --slider-color: ;\n  --stat-background-fill: linear-gradient(to right, var(--primary-400), var(--primary-600));\n  --table-border-color: var(--neutral-700);\n  --table-even-background-fill: #FFFFFF;\n  --table-odd-background-fill: #CCCCCC;\n  --table-radius: var(--radius-lg);\n  --table-row-focus: var(--color-accent-soft);\n}\n"
  },
  {
    "path": "javascript/loader.js",
    "content": "const appStartTime = performance.now();\n\nasync function preloadImages() {\n  const dark = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches;\n  const imagePromises = [];\n  const num = Math.floor(9.99 * Math.random());\n  const imageUrls = [\n    `file=html/logo-bg-${dark ? 'dark' : 'light'}.jpg`,\n    `file=html/logo-bg-${num}.jpg`,\n  ];\n  for (const url of imageUrls) {\n    const img = new Image();\n    const promise = new Promise((resolve, reject) => {\n      img.onload = resolve;\n      img.onerror = reject;\n    });\n    img.src = url;\n    imagePromises.push(promise);\n  }\n  try {\n    await Promise.all(imagePromises);\n    return true;\n  } catch (err) {\n    error(`preloadImages: ${err}`);\n    return false;\n  }\n}\n\nasync function removeSplash() {\n  const splash = document.getElementById('splash');\n  if (splash) splash.remove();\n  log('removeSplash');\n  const t = Math.round(performance.now() - appStartTime);\n  log('startupTime', t);\n  xhrPost(`${window.api}/log`, { message: `ready time=${t}` });\n}\n\nasync function createSplash() {\n  const dark = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches;\n  log('createSplash', { theme: dark ? 'dark' : 'light' });\n  const num = Math.floor(9.99 * Math.random());\n  const splash = `\n    <div id=\"splash\" class=\"splash\" style=\"background: ${dark ? 'black' : 'white'}\">\n      <div class=\"loading\"><div class=\"loader\"></div></div>\n      <div id=\"motd\" class=\"motd\"\"></div>\n    </div>`;\n  document.body.insertAdjacentHTML('beforeend', splash);\n  const ok = await preloadImages();\n  if (!ok) {\n    removeSplash();\n    return;\n  }\n  const imgEl = `<div id=\"spash-img\" class=\"splash-img\" alt=\"logo\" style=\"background-image: url(file=html/logo-bg-${dark ? 'dark' : 'light'}.jpg), url(file=html/logo-bg-${num}.jpg); background-blend-mode: ${dark ? 'multiply' : 'lighten'}\"></div>`;\n  document.getElementById('splash').insertAdjacentHTML('afterbegin', imgEl);\n  authFetch(`${window.api}/motd`)\n    .then((res) => res.text())\n    .then((text) => {\n      const motdEl = document.getElementById('motd');\n      if (motdEl) motdEl.innerHTML = text.replace(/[\"]+/g, '');\n    })\n    .catch((err) => error(`getMOTD: ${err}`));\n}\n\nwindow.onload = createSplash;\n"
  },
  {
    "path": "javascript/logMonitor.js",
    "content": "let logMonitorEl = null;\nlet logMonitorStatus = true;\nlet logWarnings = 0;\nlet logErrors = 0;\nlet logConnected = false;\n\nfunction dateToStr(ts) {\n  const dt = new Date(1000 * ts);\n  const year = dt.getFullYear();\n  const mo = String(dt.getMonth() + 1).padStart(2, '0');\n  const day = String(dt.getDate()).padStart(2, '0');\n  const hour = String(dt.getHours()).padStart(2, '0');\n  const min = String(dt.getMinutes()).padStart(2, '0');\n  const sec = String(dt.getSeconds()).padStart(2, '0');\n  const ms = String(dt.getMilliseconds()).padStart(3, '0');\n  const s = `${year}-${mo}-${day} ${hour}:${min}:${sec}.${ms}`;\n  return s;\n}\n\nfunction htmlEscape(text) {\n  return text.replaceAll('&', '&amp;').replaceAll('<', '&lt;').replaceAll('>', '&gt;');\n}\n\nasync function logMonitor() {\n  const addLogLine = (line) => {\n    try {\n      const l = JSON.parse(line.replaceAll('\\n', ' ').replaceAll('\\\\', '\\\\\\\\'));\n      const row = document.createElement('tr');\n      // row.style = 'padding: 10px; margin: 0;';\n      const level = `<td style=\"color: var(--color-${l.level.toLowerCase()})\">${l.level}</td>`;\n      if (l.level === 'WARNING') logWarnings++;\n      if (l.level === 'ERROR') logErrors++;\n      const module = `<td style=\"color: var(--var(--neutral-400))\">${l.module}</td>`;\n      row.innerHTML = `<td>${dateToStr(l.created)}</td>${level}<td>${l.facility}</td>${module}<td>${htmlEscape(l.msg)}</td>`;\n      logMonitorEl.appendChild(row);\n    } catch (e) {\n      error(`logMonitor: ${e}\\n${line}`);\n    }\n  };\n\n  const cleanupLog = (atBottom) => {\n    while (logMonitorEl.childElementCount > 100) logMonitorEl.removeChild(logMonitorEl.firstChild);\n    if (atBottom) logMonitorEl.scrollTop = logMonitorEl.scrollHeight;\n    else logMonitorEl.parentElement.style = 'border-bottom: 2px solid var(--highlight-color);';\n    const elWarn = document.getElementById('logWarnings');\n    const elErr = document.getElementById('logErrors');\n    const modenUIBtn = document.getElementById('btn_console');\n    if (elWarn) elWarn.innerText = logWarnings;\n    if (elErr) elErr.innerText = logErrors;\n    if (modenUIBtn) modenUIBtn.setAttribute('error-count', logErrors > 0 ? logErrors : '');\n  };\n\n  const txtGallery = document.getElementById('txt2img_gallery');\n  if (txtGallery) txtGallery.style.height = opts.logmonitor_show ? '50vh' : '55vh';\n  const imgGallery = document.getElementById('img2img_gallery');\n  if (imgGallery) imgGallery.style.height = opts.logmonitor_show ? '50vh' : '55vh';\n\n  if (!opts.logmonitor_show) {\n    Array.from(document.getElementsByClassName('log-monitor')).forEach((el) => { el.style.display = 'none'; });\n    return;\n  }\n\n  if (logMonitorStatus) setTimeout(logMonitor, opts.logmonitor_refresh_period);\n  else setTimeout(logMonitor, 10 * 1000); // on failure try to reconnect every 10sec\n\n  logMonitorStatus = false;\n  if (!logMonitorEl) {\n    logMonitorEl = document.getElementById('logMonitorData');\n    logMonitorEl.onscrollend = () => {\n      const atBottom = logMonitorEl.scrollHeight <= (logMonitorEl.scrollTop + logMonitorEl.clientHeight);\n      if (atBottom) logMonitorEl.parentElement.style = '';\n    };\n  }\n  if (!logMonitorEl) return;\n  const atBottom = logMonitorEl.scrollHeight <= (logMonitorEl.scrollTop + logMonitorEl.clientHeight);\n  try {\n    const res = await authFetch(`${window.api}/log?clear=True`);\n    if (res?.ok) {\n      logMonitorStatus = true;\n      const lines = await res.json();\n      if (logMonitorEl && lines?.length > 0) logMonitorEl.parentElement.parentElement.style.display = opts.logmonitor_show ? 'block' : 'none';\n      for (const line of lines) addLogLine(line);\n      if (!logConnected) {\n        logConnected = true;\n        monitorConnection();\n        xhrPost(`${window.api}/log`, { debug: 'connected' });\n      }\n    } else {\n      logConnected = false;\n      logErrors++;\n      addLogLine(`{ \"created\": ${Date.now()}, \"level\":\"ERROR\", \"module\":\"logMonitor\", \"facility\":\"ui\", \"msg\":\"Failed to fetch log: ${res?.status} ${res?.statusText}\" }`);\n    }\n    cleanupLog(atBottom);\n  } catch (err) {\n    logConnected = false;\n    logErrors++;\n    addLogLine(`{ \"created\": ${Date.now()}, \"level\":\"ERROR\", \"module\":\"logMonitor\", \"facility\":\"ui\", \"msg\":\"Failed to fetch log: server unreachable\" }`);\n    cleanupLog(atBottom);\n  }\n}\n\nasync function initLogMonitor() {\n  const el = document.getElementsByTagName('footer')[0];\n  if (!el) return;\n  el.classList.add('log-monitor');\n  const ui_disabled = Array.isArray(window.opts.ui_disabled) ? window.opts.ui_disabled : [];\n  if (ui_disabled.includes('logs')) return;\n  el.innerHTML = `\n    <table id=\"logMonitor\" style=\"width: 100%;\">\n      <thead style=\"display: block; text-align: left; border-bottom: solid 1px var(--button-primary-border-color)\">\n        <tr>\n          <th style=\"width: 144px\">Time</th>\n          <th>Level</th>\n          <th style=\"width: 0\"></th>\n          <th style=\"width: 154px\">Module</th>\n          <th>Message</th>\n          <th style=\"position: absolute; right: 7em\">Warnings <span id=\"logWarnings\">0</span></th>\n          <th style=\"position: absolute; right: 1em\">Errors <span id=\"logErrors\">0</span></th>\n        </tr>\n      </thead>\n      <tbody id=\"logMonitorData\" style=\"white-space: nowrap; height: 10vh; width: 100vw; display: block; overflow-x: hidden; overflow-y: scroll; color: var(--neutral-400)\">\n      </tbody>\n    </table>\n  `;\n  el.style.display = 'none';\n  authFetch(`${window.api}/start?agent=${encodeURI(navigator.userAgent)}`);\n  logMonitor();\n  log('initLogMonitor');\n}\n"
  },
  {
    "path": "javascript/logger.js",
    "content": "const scrollBottom = async (el) => {\n  const lastChild = el.lastElementChild;\n  if (lastChild) lastChild.scrollIntoView({ behavior: 'smooth' });\n};\n\nconst log = async (...msg) => {\n  const dt = new Date();\n  const ts = `${dt.getHours().toString().padStart(2, '0')}:${dt.getMinutes().toString().padStart(2, '0')}:${dt.getSeconds().toString().padStart(2, '0')}.${dt.getMilliseconds().toString().padStart(3, '0')}`;\n  if (window.logger) {\n    window.logger.innerHTML += window.logPrettyPrint(...msg);\n    scrollBottom(window.logger);\n  }\n  console.log(ts, ...msg);\n};\n\nconst debug = async (...msg) => {\n  const dt = new Date();\n  const ts = `${dt.getHours().toString().padStart(2, '0')}:${dt.getMinutes().toString().padStart(2, '0')}:${dt.getSeconds().toString().padStart(2, '0')}.${dt.getMilliseconds().toString().padStart(3, '0')}`;\n  if (window.logger) {\n    window.logger.innerHTML += window.logPrettyPrint(...msg);\n    scrollBottom(window.logger);\n  }\n  console.debug(ts, ...msg);\n};\n\nconst error = async (...msg) => {\n  const dt = new Date();\n  const ts = `${dt.getHours().toString().padStart(2, '0')}:${dt.getMinutes().toString().padStart(2, '0')}:${dt.getSeconds().toString().padStart(2, '0')}.${dt.getMilliseconds().toString().padStart(3, '0')}`;\n  if (window.logger) {\n    window.logger.innerHTML += window.logPrettyPrint(...msg);\n    scrollBottom(window.logger);\n  }\n  console.error(ts, ...msg);\n  // const txt = msg.join(' ');\n  // if (!txt.includes('asctime') && !txt.includes('xhr.')) xhrPost('/sdapi/v1/log', { error: txt }); // eslint-disable-line no-use-before-define\n};\n\nconst xhrInternal = async (xhrObj, data, handler = undefined, errorHandler = undefined, ignore = false, serverTimeout = opts.ui_request_timeout || 30000) => {\n  const err = (msg) => {\n    if (!ignore) {\n      error(`${msg}: state=${xhrObj.readyState} status=${xhrObj.status} response=${xhrObj.responseText}`);\n      if (errorHandler) errorHandler(xhrObj);\n    }\n  };\n\n  const { user, token } = await getToken();\n  if (user && token) {\n    const encoded = btoa(`${user}:${token}`);\n    xhrObj.setRequestHeader('Authorization', `Basic ${encoded}`);\n  }\n\n  xhrObj.setRequestHeader('Content-Type', 'application/json');\n  xhrObj.timeout = opts.ui_request_timeout || 30000;\n  xhrObj.ontimeout = () => err('xhr.ontimeout');\n  xhrObj.onerror = () => err('xhr.onerror');\n  xhrObj.onabort = () => err('xhr.onabort');\n  xhrObj.onreadystatechange = () => {\n    if (xhrObj.readyState === 4) {\n      if (xhrObj.status === 200) {\n        try {\n          const json = JSON.parse(xhrObj.responseText);\n          if (handler) handler(json);\n        } catch {\n          // error(`xhr.onreadystatechange: ${e}`);\n        }\n      } else {\n        // err(`xhr.onreadystatechange: state=${xhrObj.readyState} status=${xhrObj.status} response=${xhrObj.responseText}`);\n      }\n    }\n  };\n  const req = JSON.stringify(data);\n  xhrObj.send(req);\n};\n\nconst xhrGet = (url, data, handler = undefined, errorHandler = undefined, ignore = false, serverTimeout = opts.ui_request_timeout || 30000) => {\n  const xhr = new XMLHttpRequest();\n  const args = Object.keys(data).map((k) => `${encodeURIComponent(k)}=${encodeURIComponent(data[k])}`).join('&');\n  xhr.open('GET', `${url}?${args}`, true);\n  xhrInternal(xhr, data, handler, errorHandler, ignore, serverTimeout);\n};\n\nfunction xhrPost(url, data, handler = undefined, errorHandler = undefined, ignore = false, serverTimeout = opts.ui_request_timeout || 30000) {\n  const xhr = new XMLHttpRequest();\n  xhr.open('POST', url, true);\n  xhrInternal(xhr, data, handler, errorHandler, ignore, serverTimeout);\n}\n"
  },
  {
    "path": "javascript/login.js",
    "content": "const loginCSS = `\n  position: fixed;\n  top: 0;\n  left: 0;\n  width: 100%;\n  height: 100%;\n  background: #222;\n  color: #ddd;\n  font-family: monospace;\n  z-index: 100;\n`;\n\nconst loginHTML = `\n  <div id=\"loginDiv\" style=\"margin: 15% auto; max-width: 200px; padding: 2em; background: #444; border-radius: 4px; filter: drop-shadow(2px 4px 6px black);\">\n    <h2>Login</h2>\n    <label for=\"username\" style=\"margin-top: 0.5em\">Username</label>\n    <input type=\"text\" id=\"loginUsername\" name=\"username\" style=\"width: 92%; padding: 0.5em; margin-top: 0.5em; border-radius: 4px;\">\n    <label for=\"password\" style=\"margin-top: 0.5em\">Password</label>\n    <input type=\"password\" id=\"loginPassword\" name=\"password\" style=\"width: 92%; padding: 0.5em; margin-top: 0.5em; border-radius: 4px;\">\n    <div id=\"loginStatus\" style=\"margin-top: 0.5em\"></div>\n    <button type=\"submit\" style=\"width: 100%; padding: 0.5em; margin-top: 0.5em; background: #366; color: #ddd; border: none; border-radius: 4px; filter: drop-shadow(2px 4px 6px black);\">Login</button>\n  </div>\n`;\n\nfunction forceLogin() {\n  const form = document.createElement('form');\n  form.method = 'POST';\n  form.action = `${location.href}login`;\n  form.id = 'loginForm';\n  form.style.cssText = loginCSS;\n  form.innerHTML = loginHTML;\n  document.body.appendChild(form);\n  const username = form.querySelector('#loginUsername');\n  const password = form.querySelector('#loginPassword');\n  const status = form.querySelector('#loginStatus');\n\n  form.addEventListener('submit', (event) => {\n    event.preventDefault();\n    const formData = new FormData(form);\n    formData.append('username', username.value);\n    formData.append('password', password.value);\n    console.warn('login', location.href, formData);\n    fetch(`${location.href}login`, {\n      method: 'POST',\n      body: formData,\n    })\n      .then(async (res) => {\n        const json = await res.json();\n        let txt = '';\n        if (res.status === 200) txt = 'login verified';\n        else txt = `${res.status}: ${res.statusText} - ${json.detail}`;\n        status.textContent = txt;\n        console.log('login', txt);\n        if (res.status === 200) location.reload();\n      })\n      .catch((err) => {\n        status.textContent = err;\n        console.error('login', err);\n      });\n  });\n}\n\nfunction loginCheck() {\n  fetch(`${location.href}login_check`, {})\n    .then((res) => {\n      if (res.status === 200) console.log('login ok');\n      else forceLogin();\n    })\n    .catch((err) => {\n      console.error('login', err);\n    });\n}\n\nwindow.onload = loginCheck;\n"
  },
  {
    "path": "javascript/midnight-barbie.css",
    "content": "/* generic html tags */\n:root, .light, .dark {\n  --font: \"Source Sans Pro\", 'ui-sans-serif', 'system-ui', \"Roboto\", sans-serif, 'NotoSans';\n  --font-mono: 'IBM Plex Mono', 'ui-monospace', 'Consolas', monospace;\n  --font-size: 14px;\n  --highlight-color: #ff00f2;\n  --inactive-color: #005485;\n  --background-color: #000000;\n  --primary-50: #f5daea;\n  --primary-100: #ffc4f2;\n  --primary-200: #fc9ff4;\n  --primary-300: #fd74eb;\n  --primary-400: #fb3cf1;\n  --primary-500: #f916c0;\n  --primary-600: #c50cea;\n  --primary-700: #c20cb9;\n  --primary-800: #9a1293;\n  --primary-900: #7c1277;\n  --primary-950: #6c1268;\n}\n.light, .dark {\n  --input-padding: 4px;\n  --radius-lg: 2px;\n  --radius-sm: 1px;\n  --spacing-md: 4px;\n  --spacing-xxl: 12px;\n  --line-sm: 1.3em;\n  --line-md: 1.3em;\n}\n\nhtml { font-size: var(--font-size); }\nbody, button, input, select, textarea { font-family: var(--font);}\nbutton { max-width: 400px; }\nimg { background-color: var(--background-color); }\ninput[type=checkbox] { background-color: transparent !important; }\ninput[type=range] { height: var(--line-sm) !important; appearance: none !important; margin-top: 0 !important; min-width: 160px !important;\n  background-color: var(--background-color) !important; width: 100% !important; background: transparent !important; }\ninput[type=range]::-webkit-slider-runnable-track { width: 100% !important; height: var(--line-sm) !important; cursor: pointer !important; box-shadow: 2px 2px 3px #111111 !important;\n  background: var(--input-background-fill) !important; border-radius: var(--radius-lg) !important; border: 0px solid #222222 !important; }\ninput[type=range]::-moz-range-track { width: 100% !important; height: var(--line-sm) !important; cursor: pointer !important; box-shadow: 2px 2px 3px #111111 !important; background:\n  var(--input-background-fill) !important; border-radius: var(--radius-lg) !important; border: 0px solid #222222 !important; }\ninput[type=range]::-webkit-slider-thumb { box-shadow: 2px 2px 3px #111111 !important; border: 0px solid #000000 !important; height: var(--line-sm) !important; width: var(--line-sm) !important;\n  border-radius: var(--radius-lg) !important; background: var(--highlight-color) !important; cursor: pointer !important; appearance: none !important; margin-top: 0px !important; }\ninput[type=range]::-moz-range-thumb { box-shadow: 2px 2px 3px #111111 !important; border: 0px solid #000000 !important; height: var(--line-sm) !important; width: var(--line-sm) !important;\n  border-radius: var(--radius-lg) !important; background: var(--highlight-color) !important; cursor: pointer !important; appearance: none !important; margin-top: 0px !important; }\n:root { scrollbar-color: var(--highlight-color) #3a343a; }\n::-webkit-scrollbar { width: 12px; height: 12px; }\n::-webkit-scrollbar-track { background: #3a343a; }\n::-webkit-scrollbar-thumb { background-color: var(--highlight-color); border-radius: var(--radius-lg); border-width: 0; box-shadow: 2px 2px 3px #111111; }\ndiv.form { border-width: 0; box-shadow: none; background: transparent; overflow: visible; margin-bottom: 6px; }\ndiv.compact { gap: 1em; }\n\n/* gradio style classes */\nfieldset .gr-block.gr-box, label.block span { padding: 0; margin-top: -4px; }\n.border-2 { border-width: 0; }\n.border-b-2 { border-bottom-width: 2px; border-color: var(--highlight-color) !important; padding-bottom: 2px; margin-bottom: 8px; }\n.bg-white { color: rgb(255, 255, 255); background-color: var(--inactive-color); }\n.gr-box { border-radius: var(--radius-sm) !important; background-color: #111111 !important; box-shadow: 2px 2px 3px #111111; border-width: 0; padding: 4px; margin: 12px 0px 12px 0px }\n.gr-button { font-weight: normal; box-shadow: 2px 2px 3px #111111; font-size: 0.8rem; min-width: 32px; min-height: 32px; padding: 3px; margin: 3px; }\n.gr-check-radio { background-color: var(--inactive-color); border-width: 0; border-radius: var(--radius-lg); box-shadow: 2px 2px 3px #111111; }\n.gr-check-radio:checked { background-color: var(--highlight-color); }\n.gr-compact { background-color: var(--background-color); }\n.gr-form { border-width: 0; }\n.gr-input { background-color: #333333 !important; padding: 4px; margin: 4px; }\n.gr-input-label { color: rgb(255, 255, 255); border-width: 0; background: transparent; padding: 2px !important; }\n.gr-panel { background-color: var(--background-color); }\n.eta-bar { display: none !important }\nsvg.feather.feather-image, .feather .feather-image { display: none }\n.gap-2 { padding-top: 8px; }\n.gr-box > div > div > input.gr-text-input { right: 0; width: 4em; padding: 0; top: -12px; border: none; max-height: 20px; }\n.output-html { line-height: 1.2rem; overflow-x: hidden; }\n.output-html > div { margin-bottom: 8px; }\n.overflow-hidden .flex .flex-col .relative col .gap-4 { min-width: var(--left-column); max-width: var(--left-column); } /* this is a problematic one */\n.p-2 { padding: 0; }\n.px-4 { padding-lefT: 1rem; padding-right: 1rem; }\n.py-6 { padding-bottom: 0; }\n.tabs { background-color: var(--background-color); }\n.block.token-counter span { background-color: #222 !important; box-shadow: 2px 2px 2px #111; border: none !important; font-size: 0.8rem; }\n.tab-nav { zoom: 110%; margin-bottom: 10px; border-bottom: 2px solid var(--highlight-color) !important; padding-bottom: 2px; }\n.label-wrap { margin: 16px 0px 8px 0px; }\n.gradio-button.tool { border: none; background: none; box-shadow: none; }\n#tab_extensions table td, #tab_extensions table th { border: none; padding: 0.5em; }\n#tab_extensions table { width: 96vw }\n#tab_extensions table thead { background-color: var(--neutral-700); }\n\n/* automatic style classes */\n.progressDiv { border-radius: var(--radius-sm) !important; position: fixed; top: 44px; right: 26px; max-width: 262px; height: 48px; z-index: 99; box-shadow: var(--button-shadow); }\n.progressDiv .progress { border-radius: var(--radius-lg) !important; background: var(--highlight-color); line-height: 3rem; height: 48px; }\n.gallery-item { box-shadow: none !important; }\n.performance { color: #888; }\n.extra-networks { border-left: 2px solid var(--highlight-color) !important; padding-left: 4px; }\n.image-buttons { gap: 10px !important}\n\n/* gradio elements overrides */\n#div.gradio-container { overflow-x: hidden; }\n#img2img_label_copy_to_img2img { font-weight: normal; }\n#img2img_settings { min-width: calc(2 * var(--left-column)); max-width: calc(2 * var(--left-column)); background-color: #111111; padding-top: 16px; }\n#interrogate, #deepbooru { margin: 0 0px 10px 0px; max-width: 80px; max-height: 80px; font-weight: normal; font-size: 0.95em; }\n#quicksettings .gr-button-tool { font-size: 1.6rem; box-shadow: none; margin-left: -20px; margin-top: -2px; height: 2.4em; }\n#footer, #style_pos_col, #style_neg_col, #roll_col, #extras_upscaler_2, #extras_upscaler_2_visibility, #txt2img_seed_resize_from_w, #txt2img_seed_resize_from_h { display: none; }\n#save-animation { border-radius: var(--radius-sm) !important; margin-bottom: 16px; background-color: #111111; }\n#script_list { padding: 4px; margin-top: 16px; margin-bottom: 8px; }\n#settings > div.flex-wrap { width: 15em; }\n#tab_extensions table { background-color: #222222; }\n#txt2img_cfg_scale { min-width: 200px; }\n#txt2img_checkboxes, #img2img_checkboxes { background-color: transparent; }\n#txt2img_checkboxes, #img2img_checkboxes { margin-bottom: 0.2em; }\n#extras_upscale { margin-top: 10px }\n#txt2img_progress_row > div { min-width: var(--left-column); max-width: var(--left-column); }\n#txt2img_settings { min-width: var(--left-column); max-width: var(--left-column); background-color: #111111; padding-top: 16px; }\n#pnginfo_html2_info { margin-top: -18px; background-color: var(--input-background-fill); padding: var(--input-padding) }\n.gradio-button.tool { filter: hue-rotate(120deg) saturate(0.5); }\n#txt2img_styles_row, #img2img_styles_row { margin-top: -6px; z-index: 200; }\n\n/* based on gradio built-in dark theme */\n:root, .light, .dark {\n  --body-background-fill: var(--background-color);\n  --body-text-color: var(--neutral-100);\n  --color-accent-soft: var(--neutral-700);\n  --background-fill-primary: #222222;\n  --background-fill-secondary: none;\n  --border-color-accent: var(--background-color);\n  --border-color-primary: var(--background-color);\n  --link-text-color-active: var(--secondary-500);\n  --link-text-color: var(--secondary-500);\n  --link-text-color-hover: var(--secondary-400);\n  --link-text-color-visited: var(--secondary-600);\n  --body-text-color-subdued: var(--neutral-400);\n  --shadow-spread: 1px;\n  --block-background-fill: None;\n  --block-border-color: var(--border-color-primary);\n  --block_border_width: None;\n  --block-info-text-color: var(--body-text-color-subdued);\n  --block-label-background-fill: var(--background-fill-secondary);\n  --block-label-border-color: var(--border-color-primary);\n  --block_label_border_width: None;\n  --block-label-text-color: var(--neutral-200);\n  --block_shadow: None;\n  --block_title_background_fill: None;\n  --block_title_border_color: None;\n  --block_title_border_width: None;\n  --block-title-text-color: white;\n  --panel-background-fill: var(--background-fill-secondary);\n  --panel-border-color: var(--border-color-primary);\n  --panel_border_width: None;\n  --checkbox-background-color: var(--neutral-800);\n  --checkbox-background-color-focus: var(--checkbox-background-color);\n  --checkbox-background-color-hover: var(--checkbox-background-color);\n  --checkbox-background-color-selected: var(--secondary-600);\n  --checkbox-border-color: var(--neutral-700);\n  --checkbox-border-color-focus: var(--secondary-500);\n  --checkbox-border-color-hover: var(--neutral-600);\n  --checkbox-border-color-selected: var(--secondary-600);\n  --checkbox-border-width: var(--input-border-width);\n  --checkbox-label-background-fill: None;\n  --checkbox-label-background-fill-hover: None;\n  --checkbox-label-background-fill-selected: var(--checkbox-label-background-fill);\n  --checkbox-label-border-color: var(--border-color-primary);\n  --checkbox-label-border-color-hover: var(--checkbox-label-border-color);\n  --checkbox-label-border-width: var(--input-border-width);\n  --checkbox-label-text-color: var(--body-text-color);\n  --checkbox-label-text-color-selected: var(--checkbox-label-text-color);\n  --error-background-fill: var(--background-fill-primary);\n  --error-border-color: var(--border-color-primary);\n  --error_border_width: None;\n  --error-text-color: #ef4444;\n  --input-background-fill: var(--neutral-800);\n  --input-background-fill-focus: var(--secondary-600);\n  --input-background-fill-hover: var(--input-background-fill);\n  --input-border-color: var(--border-color-primary);\n  --input-border-color-focus: var(--neutral-700);\n  --input-border-color-hover: var(--input-border-color);\n  --input_border_width: None;\n  --input-placeholder-color: var(--neutral-500);\n  --input-shadow: 2px 2px 2px 2px #111111;\n  --input-shadow-focus: 2px 2px 2px 2px #111111;\n  --loader_color: None;\n  --slider_color: None;\n  --stat-background-fill: linear-gradient(to right, var(--primary-400), var(--primary-600));\n  --table-border-color: var(--neutral-700);\n  --table-even-background-fill: #222222;\n  --table-odd-background-fill: #333333;\n  --table-row-focus: var(--color-accent-soft);\n  --button-border-width: var(--input-border-width);\n  --button-cancel-background-fill: linear-gradient(to bottom right, #dc2626, #b91c1c);\n  --button-cancel-background-fill-hover: linear-gradient(to bottom right, #dc2626, #dc2626);\n  --button-cancel-border-color: #dc2626;\n  --button-cancel-border-color-hover: var(--button-cancel-border-color);\n  --button-cancel-text-color: white;\n  --button-cancel-text-color-hover: var(--button-cancel-text-color);\n  --button-primary-background-fill: linear-gradient(to bottom right, var(--primary-500), var(--primary-800));\n  --button-primary-background-fill-hover: linear-gradient(to bottom right, var(--primary-500), var(--primary-300));\n  --button-primary-border-color: var(--primary-500);\n  --button-primary-border-color-hover: var(--button-primary-border-color);\n  --button-primary-text-color: white;\n  --button-primary-text-color-hover: var(--button-primary-text-color);\n  --button-secondary-background-fill: linear-gradient(to bottom right, var(--neutral-600), var(--neutral-800));\n  --button-secondary-background-fill-hover: linear-gradient(to bottom right, var(--neutral-600), var(--neutral-400));\n  --button-secondary-border-color: var(--neutral-600);\n  --button-secondary-border-color-hover: var(--button-secondary-border-color);\n  --button-secondary-text-color: white;\n  --button-secondary-text-color-hover: var(--button-secondary-text-color);\n  --secondary-50: #eff6ff;\n  --secondary-100: #dbeafe;\n  --secondary-200: #bfdbfe;\n  --secondary-300: #93c5fd;\n  --secondary-400: #60a5fa;\n  --secondary-500: #3b82f6;\n  --secondary-600: #2563eb;\n  --secondary-700: #1d4ed8;\n  --secondary-800: #1e40af;\n  --secondary-900: #1e3a8a;\n  --secondary-950: #1d3660;\n  --neutral-50: #e7d1ee;\n  --neutral-100: #dbbfe0;\n  --neutral-200: #c3acce;\n  --neutral-300: #a892ad;\n  --neutral-400: #8d7896;\n  --neutral-500: #6c6074;\n  --neutral-600: #606060;\n  --neutral-700: #433b46;\n  --neutral-800: #322c35;\n  --neutral-900: #1b1127;\n  --neutral-950: #140b19;\n  --radius-xxs: 0;\n  --radius-xs: 0;\n  --radius-md: 0;\n  --radius-xl: 0;\n  --radius-xxl: 0;\n  --body-text-size: var(--text-md);\n  --body-text-weight: 400;\n  --embed-radius: var(--radius-lg);\n  --color-accent: var(--primary-500);\n  --shadow-drop: 0;\n  --shadow-drop-lg: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n  --shadow-inset: rgba(0,0,0,0.05) 0px 2px 4px 0px inset;\n  --block-border-width: 1px;\n  --block-info-text-size: var(--text-sm);\n  --block-info-text-weight: 400;\n  --block-label-border-width: 1px;\n  --block-label-margin: 0;\n  --block-label-padding: var(--spacing-sm) var(--spacing-lg);\n  --block-label-radius: calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px) 0;\n  --block-label-right-radius: 0 calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px);\n  --block-label-text-size: var(--text-sm);\n  --block-label-text-weight: 400;\n  --block-padding: var(--spacing-xl) calc(var(--spacing-xl) + 2px);\n  --block-radius: var(--radius-lg);\n  --block-shadow: var(--shadow-drop);\n  --block-title-background-fill: none;\n  --block-title-border-color: none;\n  --block-title-border-width: 0px;\n  --block-title-padding: 0;\n  --block-title-radius: none;\n  --block-title-text-size: var(--text-md);\n  --block-title-text-weight: 400;\n  --container-radius: var(--radius-lg);\n  --form-gap-width: 1px;\n  --layout-gap: var(--spacing-xxl);\n  --panel-border-width: 0;\n  --section-header-text-size: var(--text-md);\n  --section-header-text-weight: 400;\n  --checkbox-border-radius: var(--radius-sm);\n  --checkbox-label-gap: 2px;\n  --checkbox-label-padding: var(--spacing-md);\n  --checkbox-label-shadow: var(--shadow-drop);\n  --checkbox-label-text-size: var(--text-md);\n  --checkbox-label-text-weight: 400;\n  --checkbox-check: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e\");\n  --radio-circle: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e\");\n  --checkbox-shadow: var(--input-shadow);\n  --error-border-width: 1px;\n  --input-border-width: 0;\n  --input-radius: var(--radius-lg);\n  --input-text-size: var(--text-md);\n  --input-text-weight: 400;\n  --loader-color: var(--color-accent);\n  --prose-text-size: var(--text-md);\n  --prose-text-weight: 400;\n  --prose-header-text-weight: 600;\n  --slider-color: ;\n  --table-radius: var(--radius-lg);\n  --button-large-padding: 2px 6px;\n  --button-large-radius: var(--radius-lg);\n  --button-large-text-size: var(--text-lg);\n  --button-large-text-weight: 400;\n  --button-shadow: 4px 4px 4px 0px #39353a;\n  --button-shadow-active: 1px 1px 4px 0px #564c58;\n  --button-shadow-hover: 1px 1px 4px 0px #564c58;\n  --button-small-padding: var(--spacing-sm) calc(2 * var(--spacing-sm));\n  --button-small-radius: var(--radius-lg);\n  --button-small-text-size: var(--text-md);\n  --button-small-text-weight: 400;\n  --button-transition: none;\n  --size-9: 64px;\n  --size-14: 64px;\n}\n/*Midnight-Barbie, By Nyxxia*/\n"
  },
  {
    "path": "javascript/monitor.js",
    "content": "class ConnectionMonitorState {\n  static element;\n  static version = '';\n  static commit = '';\n  static branch = '';\n  static online = false;\n\n  static getModel() {\n    const cp = opts?.sd_model_checkpoint || '';\n    return cp ? this.trimModelName(cp) : 'unknown model';\n  }\n\n  static trimModelName(name) {\n    // remove trailing [hash], split on / or \\, return last segment, trim\n    return name.replace(/\\s*\\[.*\\]\\s*$/, '').split(/[\\\\/]/).pop().trim() || 'unknown model';\n  }\n\n  static setData({ online, updated, commit, branch }) {\n    this.online = online;\n    this.version = updated;\n    this.commit = commit;\n    this.branch = branch;\n  }\n\n  static setElement(el) {\n    this.element = el;\n  }\n\n  static toHTML(modelOverride) {\n    return `\n      Version: <b>${this.version}</b><br>\n      Commit: <b>${this.commit}</b><br>\n      Branch: <b>${this.branch}</b><br>\n      Status: ${this.online ? '<b style=\"color:lime\">online</b>' : '<b style=\"color:darkred\">offline</b>'}<br>\n      Model: <b>${modelOverride ? this.trimModelName(modelOverride) : this.getModel()}</b><br>\n      Since: ${new Date().toLocaleString()}<br>\n    `;\n  }\n\n  static updateState(incomingModel) {\n    this.element.dataset.hint = this.toHTML(incomingModel);\n    this.element.style.backgroundColor = this.online ? 'var(--sd-main-accent-color)' : 'var(--color-error)';\n  }\n}\n\nlet monitorAutoUpdating = false;\n\nasync function updateIndicator(online, data, msg) {\n  const el = document.getElementById('logo_nav');\n  if (!el || !data) return;\n  ConnectionMonitorState.setElement(el);\n  if (!monitorAutoUpdating) {\n    monitorOption('sd_model_checkpoint', (newVal) => { ConnectionMonitorState.updateState(newVal); }); // Runs before opt actually changes\n    monitorAutoUpdating = true;\n  }\n  ConnectionMonitorState.setData({ online, ...data });\n  ConnectionMonitorState.updateState();\n  if (online) {\n    log('monitorConnection: online', data);\n  } else {\n    log('monitorConnection: offline', msg);\n  }\n}\n\nasync function monitorConnection() {\n  try {\n    const res = await authFetch(`${window.api}/version`);\n    const data = await res.json();\n    const url = res.url.split('/sdapi')[0].replace('http', 'ws'); // update global url as ws need fqdn\n    const ws = new WebSocket(`${url}/queue/join`);\n    ws.onopen = () => updateIndicator(true, data, '');\n    ws.onclose = () => updateIndicator(false, data, '');\n    ws.onerror = (e) => updateIndicator(false, data, e.message);\n    ws.onmessage = (evt) => log('monitorConnection: message', evt.data);\n  } catch { /**/ }\n}\n"
  },
  {
    "path": "javascript/notification.js",
    "content": "// Monitors the gallery and sends a browser notification when the leading image is new.\n\nlet lastHeadImg = null;\nlet notificationButton = null;\n\nasync function sendNotification() {\n  try {\n    if (!notificationButton) {\n      notificationButton = gradioApp().getElementById('request_notifications');\n      if (notificationButton) notificationButton.addEventListener('click', (evt) => Notification.requestPermission(), true);\n    }\n    if (document.hasFocus()) return; // window is in focus so don't send notifications\n    let galleryPreviews = gradioApp().querySelectorAll('div[id^=\"tab_\"][style*=\"display: block\"] div[id$=\"_results\"] .thumbnail-item > img');\n    if (!galleryPreviews || galleryPreviews.length === 0) galleryPreviews = gradioApp().querySelectorAll('.thumbnail-item > img');\n    if (!galleryPreviews || galleryPreviews.length === 0) return;\n    const headImg = galleryPreviews[0]?.src;\n    if (!headImg || headImg === lastHeadImg || headImg.includes('logo-bg-')) return;\n    const audioNotification = gradioApp().querySelector('#audio_notification audio');\n    if (audioNotification) audioNotification.play();\n    lastHeadImg = headImg;\n    const imgs = new Set(Array.from(galleryPreviews).map((img) => img.src)); // Multiple copies of the images are in the DOM when one is selected\n    const notification = new Notification('SD.Next', {\n      body: `Generated ${imgs.size > 1 ? imgs.size - opts.return_grid : 1} image${imgs.size > 1 ? 's' : ''}`,\n      icon: headImg,\n      image: headImg,\n    });\n    notification.onclick = () => {\n      parent.focus();\n      this.close();\n    };\n    log('sendNotifications');\n  } catch (e) {\n    error(`sendNotification: ${e}`);\n  }\n}\n"
  },
  {
    "path": "javascript/orchid-dreams.css",
    "content": "/* generic html tags */\n:root, .light, .dark {\n  --font: 'system-ui', 'ui-sans-serif', 'system-ui', \"Roboto\", sans-serif, 'NotoSans';\n  --font-mono: 'ui-monospace', 'Consolas', monospace;\n  --font-size: 16px;\n  --primary-100: #2a2a34; /* bg color*/\n  --primary-200: #1f2028; /* drop down menu/ prompt*/\n  --primary-300: #0a0c0e; /* black */\n  --primary-400: #40435c; /* small buttons*/\n  --primary-500: #4c48b5; /* main accent color purple*/\n  --primary-700: #1f2028; /* darker hover accent*/\n  --primary-800: #e95ee3; /* pink accent*/\n  --highlight-color: var(--primary-500);\n  --inactive-color: var(--primary--800);\n  --body-text-color: var(--neutral-100);\n  --body-text-color-subdued: var(--neutral-300);\n  --background-color: var(--primary-100);\n  --background-fill-primary: var(--input-background-fill);\n  --input-padding: 8px;\n  --input-background-fill: var(--primary-200);\n  --input-shadow: none;\n  --button-secondary-text-color: white;\n  --button-secondary-background-fill: var(--primary-400);\n  --button-secondary-background-fill-hover: var(--primary-700);\n  --block-title-text-color: var(--neutral-300);\n  --radius-sm: 1px;\n  --radius-lg: 6px;\n  --spacing-md: 4px;\n  --spacing-xxl: 8px;\n  --line-sm: 1.2em;\n  --line-md: 1.4em;\n}\n\nhtml { font-size: var(--font-size); }\nbody, button, input, select, textarea { font-family: var(--font);}\nbutton { max-width: 400px; }\nimg { background-color: var(--background-color); }\ninput[type=range] { height: var(--line-sm); appearance: none; margin-top: 0; min-width: 160px; background-color: var(--background-color); width: 100%; background: transparent; }\ninput[type=range]::-webkit-slider-runnable-track, input[type=range]::-moz-range-track { width: 100%; height: 6px; cursor: pointer; background: var(--primary-400); border-radius: var(--radius-lg); border: 0px solid #222222; }\ninput[type=range]::-webkit-slider-thumb, input[type=range]::-moz-range-thumb { border: 0px solid #000000; height: var(--line-sm); width: 8px; border-radius: var(--radius-lg); background: white; cursor: pointer; appearance: none; margin-top: 0px; }\ninput[type=range]::-moz-range-progress {  background-color: var(--primary-500);  height: 6px;  border-radius: var(--radius-lg); }\n:root { scrollbar-color: var(--highlight-color) #333333; }\n::-webkit-scrollbar-track { background: #333333; }\n::-webkit-scrollbar-thumb { background-color: var(--highlight-color); border-radius: var(--radius-lg); border-width: 0; box-shadow: 2px 2px 3px #111111; }\ndiv.form { border-width: 0; box-shadow: none; background: transparent; overflow: visible; margin-bottom: 6px; }\ndiv.compact { gap: 1em; }\n\n/* gradio style classes */\nfieldset .gr-block.gr-box, label.block span { padding: 0; margin-top: -4px; }\n.border-2 { border-width: 0; }\n.border-b-2 { border-bottom-width: 2px; border-color: var(--highlight-color) !important; padding-bottom: 2px; margin-bottom: 8px; }\n.bg-white { color: lightyellow; background-color: var(--inactive-color); }\n.gr-box { border-radius: var(--radius-sm) !important; background-color: #111111 !important; box-shadow: 2px 2px 3px #111111; border-width: 0; padding: 4px; margin: 12px 0px 12px 0px }\n.gr-button { font-weight: normal; box-shadow: 2px 2px 3px #111111; font-size: 0.8rem; min-width: 32px; min-height: 32px; padding: 3px; margin: 3px; }\n.gr-check-radio { background-color: var(--inactive-color); border-width: 0; border-radius: var(--radius-lg); box-shadow: 2px 2px 3px #111111; }\n.gr-check-radio:checked { background-color: var(--highlight-color); }\n.gr-compact { background-color: var(--background-color); }\n.gr-form { border-width: 0; }\n.gr-input { background-color: #333333 !important; padding: 4px; margin: 4px; }\n.gr-input-label { color: lightyellow; border-width: 0; background: transparent; padding: 2px !important; }\n.gr-panel { background-color: var(--background-color); }\n.eta-bar { display: none !important }\nsvg.feather.feather-image, .feather .feather-image { display: none }\n.gap-2 { padding-top: 8px; }\n.gr-box > div > div > input.gr-text-input { right: 0; width: 4em; padding: 0; top: -12px; border: none; max-height: 20px; }\n.output-html { line-height: 1.2rem; overflow-x: hidden; }\n.output-html > div { margin-bottom: 8px; }\n.overflow-hidden .flex .flex-col .relative col .gap-4 { min-width: var(--left-column); max-width: var(--left-column); } /* this is a problematic one */\n.p-2 { padding: 0; }\n.px-4 { padding-lefT: 1rem; padding-right: 1rem; }\n.py-6 { padding-bottom: 0; }\n.tabs { background-color: var(--background-color); }\n.block.token-counter span { background-color: var(--input-background-fill) !important; box-shadow: 2px 2px 2px #111; border: none !important; font-size: 0.8rem; }\n.tab-nav { zoom: 110%; margin-top: 10px; margin-bottom: 10px; border-bottom: 2px solid var(--highlight-color) !important; padding-bottom: 2px; }\ndiv.tab-nav button.selected {background-color: var(--button-primary-background-fill);}\n#settings div.tab-nav button.selected {background-color: var(--background-color); color: var(--primary-800); font-weight: bold;}\n.label-wrap { background-color: #18181e; /* extension tab color*/ padding: 16px 8px 8px 8px; border-radius: var(--radius-lg); padding-left: 8px !important; }\n.small-accordion .label-wrap { padding: 8px 0px 8px 0px; }\n.small-accordion .label-wrap .icon { margin-right: 1em; }\n.gradio-button.tool { border: none; box-shadow: none; border-radius: var(--radius-lg);}\nbutton.selected {background: var(--button-primary-background-fill);}\n.center.boundedheight.flex {background-color: var(--input-background-fill);}\n.compact {border-radius: var(--border-radius-lg);}\n#logMonitorData {background-color: var(--input-background-fill);}\n#tab_extensions table td, #tab_extensions table th, #tab_config table td, #tab_config table th { border: none; padding: 0.5em; background-color: var(--primary-200); }\n#tab_extensions table, #tab_config table { width: 96vw; }\n#tab_extensions table input[type=checkbox] {appearance: none; border-radius: 0px;}\n#tab_extensions button:hover { background-color: var(--button-secondary-background-fill-hover);}\n\n/* automatic style classes */\n.progressDiv { border-radius: var(--radius-sm) !important; position: fixed; top: 44px; right: 26px; max-width: 262px; height: 48px; z-index: 99; box-shadow: var(--button-shadow); }\n.progressDiv .progress { border-radius: var(--radius-lg) !important; background: var(--highlight-color); line-height: 3rem; height: 48px; }\n.gallery-item { box-shadow: none !important; }\n.performance { color: #888; }\n.extra-networks { border-left: 2px solid var(--highlight-color) !important; padding-left: 4px; }\n.image-buttons { gap: 10px !important; justify-content: center; }\n.image-buttons > button { max-width: 160px; }\n.tooltip { background: var(--primary-800); color: white; border: none; border-radius: var(--radius-lg) }\n#system_row > button, #settings_row > button, #config_row > button { max-width: 10em; }\n\n/* gradio elements overrides */\n#div.gradio-container { overflow-x: hidden; }\n#img2img_label_copy_to_img2img { font-weight: normal; }\n#img2img_settings { min-width: calc(2 * var(--left-column)); max-width: calc(2 * var(--left-column)); background-color: #111111; padding-top: 16px; }\n#interrogate, #deepbooru { margin: 0 0px 10px 0px; max-width: 80px; max-height: 80px; font-weight: normal; font-size: 0.95em; }\n#quicksettings .gr-button-tool { font-size: 1.6rem; box-shadow: none; margin-top: -2px; height: 2.4em; }\n#quicksettings button {padding: 0 0.5em 0.1em 0.5em;}\n#footer, #style_pos_col, #style_neg_col, #roll_col, #extras_upscaler_2, #extras_upscaler_2_visibility, #txt2img_seed_resize_from_w, #txt2img_seed_resize_from_h { display: none; }\n#save-animation { border-radius: var(--radius-sm) !important; margin-bottom: 16px; background-color: #111111; }\n#script_list { padding: 4px; margin-top: 16px; margin-bottom: 8px; }\n#settings > div.flex-wrap { width: 15em; }\n#txt2img_cfg_scale { min-width: 200px; }\n#txt2img_checkboxes, #img2img_checkboxes { background-color: transparent; }\n#txt2img_checkboxes, #img2img_checkboxes { margin-bottom: 0.2em; }\n#txt2img_actions_column, #img2img_actions_column { flex-flow: wrap; justify-content: space-between; }\n\n#extras_upscale { margin-top: 10px }\n#txt2img_progress_row > div { min-width: var(--left-column); max-width: var(--left-column); }\n#txt2img_settings { min-width: var(--left-column); max-width: var(--left-column); background-color: #111111; padding-top: 16px; }\n#pnginfo_html2_info { margin-top: -18px; background-color: var(--input-background-fill); padding: var(--input-padding) }\n#txt2img_tools, #img2img_tools { margin-top: -4px; margin-bottom: -4px; }\n#txt2img_styles_row, #img2img_styles_row { margin-top: -6px; z-index: 200; }\n\n/* based on gradio built-in dark theme */\n:root, .light, .dark {\n  --body-background-fill: var(--background-color);\n  --color-accent-soft: var(--neutral-700);\n  --background-fill-secondary: none;\n  --border-color-accent: var(--background-color);\n  --border-color-primary: var(--background-color);\n  --link-text-color-active: var(--primary-500);\n  --link-text-color: var(--secondary-500);\n  --link-text-color-hover: var(--secondary-400);\n  --link-text-color-visited: var(--secondary-600);\n  --shadow-spread: 1px;\n  --block-background-fill: None;\n  --block-border-color: var(--border-color-primary);\n  --block_border_width: None;\n  --block-info-text-color: var(--body-text-color-subdued);\n  --block-label-background-fill: var(--background-fill-secondary);\n  --block-label-border-color: var(--border-color-primary);\n  --block_label_border_width: None;\n  --block-label-text-color: var(--neutral-200);\n  --block_shadow: None;\n  --block_title_background_fill: None;\n  --block_title_border_color: None;\n  --block_title_border_width: None;\n  --panel-background-fill: var(--background-fill-secondary);\n  --panel-border-color: var(--border-color-primary);\n  --panel_border_width: None;\n  --checkbox-background-color: var(--primary-200);\n  --checkbox-background-color-focus: var(--primary-400);\n  --checkbox-background-color-hover: var(--primary-200);\n  --checkbox-background-color-selected: var(--primary-400);\n  --checkbox-border-color: transparent;\n  --checkbox-border-color-focus: var(--primary-800);\n  --checkbox-border-color-hover: var(--primary-800);\n  --checkbox-border-color-selected: var(--primary-800);\n  --checkbox-border-width: var(--input-border-width);\n  --checkbox-label-background-fill: None;\n  --checkbox-label-background-fill-hover: None;\n  --checkbox-label-background-fill-selected: var(--checkbox-label-background-fill);\n  --checkbox-label-border-color: var(--border-color-primary);\n  --checkbox-label-border-color-hover: var(--checkbox-label-border-color);\n  --checkbox-label-border-width: var(--input-border-width);\n  --checkbox-label-text-color: var(--body-text-color);\n  --checkbox-label-text-color-selected: var(--checkbox-label-text-color);\n  --error-background-fill: var(--background-fill-primary);\n  --error-border-color: var(--border-color-primary);\n  --error-text-color: #f768b7; /*was ef4444*/\n  --input-background-fill-focus: var(--secondary-600);\n  --input-background-fill-hover: var(--input-background-fill);\n  --input-border-color: var(--background-color);\n  --input-border-color-focus: var(--primary-800);\n  --input-placeholder-color: var(--neutral-500);\n  --input-shadow-focus: None;\n  --loader_color: None;\n  --slider_color: None;\n  --stat-background-fill: linear-gradient(to right, var(--primary-400), var(--primary-800));\n  --table-border-color: var(--neutral-700);\n  --table-even-background-fill: var(--primary-300);\n  --table-odd-background-fill: var(--primary-200);\n  --table-row-focus: var(--color-accent-soft);\n  --button-border-width: var(--input-border-width);\n  --button-cancel-background-fill: linear-gradient(to bottom right, #dc2626, #b91c1c);\n  --button-cancel-background-fill-hover: linear-gradient(to bottom right, #dc2626, #dc2626);\n  --button-cancel-border-color: #dc2626;\n  --button-cancel-border-color-hover: var(--button-cancel-border-color);\n  --button-cancel-text-color: white;\n  --button-cancel-text-color-hover: var(--button-cancel-text-color);\n  --button-primary-background-fill: var(--primary-500);\n  --button-primary-background-fill-hover: var(--primary-800);\n  --button-primary-border-color: var(--primary-500);\n  --button-primary-border-color-hover: var(--button-primary-border-color);\n  --button-primary-text-color: white;\n  --button-primary-text-color-hover: var(--button-primary-text-color);\n  --button-secondary-border-color: var(--neutral-600);\n  --button-secondary-border-color-hover: var(--button-secondary-border-color);\n  --button-secondary-text-color-hover: var(--button-secondary-text-color);\n  --secondary-50: #eff6ff;\n  --secondary-100: #dbeafe;\n  --secondary-200: #bfdbfe;\n  --secondary-300: #93c5fd;\n  --secondary-400: #60a5fa;\n  --secondary-500: #3b82f6;\n  --secondary-600: #2563eb;\n  --secondary-700: #1d4ed8;\n  --secondary-800: #1e40af;\n  --secondary-900: #1e3a8a;\n  --secondary-950: #1d3660;\n  --neutral-50: #f0f0f0; /*  */\n  --neutral-100: #ddd5e8;/* majority of text (neutral gray purple) */\n  --neutral-200: #d0d0d0;\n  --neutral-300: #bfbad6; /* top tab text (light accent) */\n  --neutral-400: #ffba85;/* tab title (bright orange) */\n  --neutral-500: #545b94; /* prompt text (desat accent)*/\n  --neutral-600: #1f2028; /* tab outline color (accent color)*/\n  --neutral-700: #20212c; /* unchanged settings tab accent (dark)*/\n  --neutral-800: #e055dc; /* bright pink accent */\n  --neutral-900: #111827;\n  --neutral-950: #0b0f19;\n  --radius-xxs: 0;\n  --radius-xs: 0;\n  --radius-md: 0;\n  --radius-xl: 0;\n  --radius-xxl: 0;\n  --body-text-size: var(--text-md);\n  --body-text-weight: 400;\n  --embed-radius: var(--radius-lg);\n  --color-accent: var(--primary-500);\n  --shadow-drop: 0;\n  --shadow-drop-lg: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n  --shadow-inset: rgba(0,0,0,0.05) 0px 2px 4px 0px inset;\n  --block-border-width: 1px;\n  --block-info-text-size: var(--text-sm);\n  --block-info-text-weight: 400;\n  --block-label-border-width: 1px;\n  --block-label-margin: 0;\n  --block-label-padding: var(--spacing-sm) var(--spacing-lg);\n  --block-label-radius: calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px) 0;\n  --block-label-right-radius: 0 calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px);\n  --block-label-text-size: var(--text-sm);\n  --block-label-text-weight: 400;\n  --block-padding: var(--spacing-xl) calc(var(--spacing-xl) + 2px);\n  --block-radius: var(--radius-lg);\n  --block-shadow: var(--shadow-drop);\n  --block-title-background-fill: none;\n  --block-title-border-color: none;\n  --block-title-border-width: 0;\n  --block-title-padding: 0;\n  --block-title-radius: none;\n  --block-title-text-size: var(--text-md);\n  --block-title-text-weight: 400;\n  --container-radius: var(--radius-lg);\n  --form-gap-width: 1px;\n  --layout-gap: var(--spacing-xxl);\n  --panel-border-width: 0;\n  --section-header-text-size: var(--text-md);\n  --section-header-text-weight: 400;\n  --checkbox-border-radius: var(--radius-sm);\n  --checkbox-label-gap: 2px;\n  --checkbox-label-padding: var(--spacing-md);\n  --checkbox-label-shadow: var(--shadow-drop);\n  --checkbox-label-text-size: var(--text-md);\n  --checkbox-label-text-weight: 400;\n  --checkbox-check: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e\");\n  --radio-circle: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e\");\n  --checkbox-shadow: var(--input-shadow);\n  --error-border-width: 1px;\n  --input-border-width: 1px;\n  --input-radius: var(--radius-lg);\n  --input-text-size: var(--text-md);\n  --input-text-weight: 400;\n  --loader-color: var(--color-accent);\n  --prose-text-size: var(--text-md);\n  --prose-text-weight: 400;\n  --prose-header-text-weight: 600;\n  --slider-color: ;\n  --table-radius: var(--radius-lg);\n  --button-large-padding: 2px 6px;\n  --button-large-radius: var(--radius-lg);\n  --button-large-text-size: var(--text-lg);\n  --button-large-text-weight: 400;\n  --button-shadow: none;\n  --button-shadow-active: none;\n  --button-shadow-hover: none;\n  --button-small-padding: var(--spacing-sm) calc(2 * var(--spacing-sm));\n  --button-small-radius: var(--radius-lg);\n  --button-small-text-size: var(--text-md);\n  --button-small-text-weight: 400;\n  --button-transition: none;\n  --size-9: 64px;\n  --size-14: 64px;\n}\n"
  },
  {
    "path": "javascript/panZoom.js",
    "content": "(function(f){if(typeof exports===\"object\"&&typeof module!==\"undefined\"){module.exports=f()}else if(typeof define===\"function\"&&define.amd){define([],f)}else{var g;if(typeof window!==\"undefined\"){g=window}else if(typeof global!==\"undefined\"){g=global}else if(typeof self!==\"undefined\"){g=self}else{g=this}g.panzoom = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u=\"function\"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r})()({1:[function(require,module,exports){\n'use strict';\n/**\n * Allows to drag and zoom svg elements\n */\nvar wheel = require('wheel');\nvar animate = require('amator');\nvar eventify = require('ngraph.events');\nvar kinetic = require('./lib/kinetic.js');\nvar createTextSelectionInterceptor = require('./lib/createTextSelectionInterceptor.js');\nvar domTextSelectionInterceptor = createTextSelectionInterceptor();\nvar fakeTextSelectorInterceptor = createTextSelectionInterceptor(true);\nvar Transform = require('./lib/transform.js');\nvar makeSvgController = require('./lib/svgController.js');\nvar makeDomController = require('./lib/domController.js');\nvar defaultZoomSpeed = 1;\nvar defaultDoubleTapZoomSpeed = 1.75;\nvar doubleTapSpeedInMS = 300;\n\nmodule.exports = createPanZoom;\n\n/**\n * Creates a new instance of panzoom, so that an object can be panned and zoomed\n *\n * @param {DOMElement} domElement where panzoom should be attached.\n * @param {Object} options that configure behavior.\n */\nfunction createPanZoom(domElement, options) {\n  options = options || {};\n  var panController = options.controller;\n  if (!panController) {\n    if (makeSvgController.canAttach(domElement)) {\n      panController = makeSvgController(domElement, options);\n    } else if (makeDomController.canAttach(domElement)) {\n      panController = makeDomController(domElement, options);\n    }\n  }\n  if (!panController) {\n    throw new Error(\n      'Cannot create panzoom for the current type of dom element'\n    );\n  }\n  var owner = panController.getOwner();\n  // just to avoid GC pressure, every time we do intermediate transform\n  // we return this object. For internal use only. Never give it back to the consumer of this library\n  var storedCTMResult = { x: 0, y: 0 };\n  var isDirty = false;\n  var transform = new Transform();\n  if (panController.initTransform) {\n    panController.initTransform(transform);\n  }\n  var filterKey = typeof options.filterKey === 'function' ? options.filterKey : noop;\n  var pinchSpeed = typeof options.pinchSpeed === 'number' ? options.pinchSpeed : 1;\n  var bounds = options.bounds;\n  var maxZoom = typeof options.maxZoom === 'number' ? options.maxZoom : Number.POSITIVE_INFINITY;\n  var minZoom = typeof options.minZoom === 'number' ? options.minZoom : 0;\n\n  var boundsPadding = typeof options.boundsPadding === 'number' ? options.boundsPadding : 0.05;\n  var zoomDoubleClickSpeed = typeof options.zoomDoubleClickSpeed === 'number' ? options.zoomDoubleClickSpeed : defaultDoubleTapZoomSpeed;\n  var beforeWheel = options.beforeWheel || noop;\n  var beforeMouseDown = options.beforeMouseDown || noop;\n  var speed = typeof options.zoomSpeed === 'number' ? options.zoomSpeed : defaultZoomSpeed;\n  var transformOrigin = parseTransformOrigin(options.transformOrigin);\n  var textSelection = options.enableTextSelection ? fakeTextSelectorInterceptor : domTextSelectionInterceptor;\n\n  validateBounds(bounds);\n\n  if (options.autocenter) {\n    autocenter();\n  }\n\n  var frameAnimation;\n  var lastTouchEndTime = 0;\n  var lastSingleFingerOffset;\n  var touchInProgress = false;\n\n  // We only need to fire panstart when actual move happens\n  var panstartFired = false;\n\n  // cache mouse coordinates here\n  var mouseX;\n  var mouseY;\n\n  var pinchZoomLength;\n\n  var smoothScroll;\n  if ('smoothScroll' in options && !options.smoothScroll) {\n    // If user explicitly asked us not to use smooth scrolling, we obey\n    smoothScroll = rigidScroll();\n  } else {\n    // otherwise we use forward smoothScroll settings to kinetic API\n    // which makes scroll smoothing.\n    smoothScroll = kinetic(getPoint, scroll, options.smoothScroll);\n  }\n\n  var moveByAnimation;\n  var zoomToAnimation;\n\n  var multiTouch;\n  var paused = false;\n\n  listenForEvents();\n\n  var api = {\n    dispose: dispose,\n    moveBy: internalMoveBy,\n    moveTo: moveTo,\n    smoothMoveTo: smoothMoveTo,\n    centerOn: centerOn,\n    zoomTo: publicZoomTo,\n    zoomAbs: zoomAbs,\n    smoothZoom: smoothZoom,\n    smoothZoomAbs: smoothZoomAbs,\n    showRectangle: showRectangle,\n\n    pause: pause,\n    resume: resume,\n    isPaused: isPaused,\n\n    getTransform: getTransformModel,\n\n    getMinZoom: getMinZoom,\n    setMinZoom: setMinZoom,\n\n    getMaxZoom: getMaxZoom,\n    setMaxZoom: setMaxZoom,\n\n    getTransformOrigin: getTransformOrigin,\n    setTransformOrigin: setTransformOrigin,\n\n    getZoomSpeed: getZoomSpeed,\n    setZoomSpeed: setZoomSpeed\n  };\n\n  eventify(api);\n\n  var initialX = typeof options.initialX === 'number' ? options.initialX : transform.x;\n  var initialY = typeof options.initialY === 'number' ? options.initialY : transform.y;\n  var initialZoom = typeof options.initialZoom === 'number' ? options.initialZoom : transform.scale;\n\n  if(initialX != transform.x || initialY != transform.y || initialZoom != transform.Scale){\n    zoomAbs(initialX, initialY, initialZoom);\n  }\n\n  return api;\n\n  function pause() {\n    releaseEvents();\n    paused = true;\n  }\n\n  function resume() {\n    if (paused) {\n      listenForEvents();\n      paused = false;\n    }\n  }\n\n  function isPaused() {\n    return paused;\n  }\n\n  function showRectangle(rect) {\n    var clientRect = owner.getBoundingClientRect();\n    var size = transformToScreen(clientRect.width, clientRect.height);\n\n    var rectWidth = rect.right - rect.left;\n    var rectHeight = rect.bottom - rect.top;\n    if (!Number.isFinite(rectWidth) || !Number.isFinite(rectHeight)) {\n      throw new Error('Invalid rectangle');\n    }\n\n    var dw = size.x / rectWidth;\n    var dh = size.y / rectHeight;\n    var scale = Math.min(dw, dh);\n    transform.x = -(rect.left + rectWidth / 2) * scale + size.x / 2;\n    transform.y = -(rect.top + rectHeight / 2) * scale + size.y / 2;\n    transform.scale = scale;\n  }\n\n  function transformToScreen(x, y) {\n    if (panController.getScreenCTM) {\n      var parentCTM = panController.getScreenCTM();\n      var parentScaleX = parentCTM.a;\n      var parentScaleY = parentCTM.d;\n      var parentOffsetX = parentCTM.e;\n      var parentOffsetY = parentCTM.f;\n      storedCTMResult.x = x * parentScaleX - parentOffsetX;\n      storedCTMResult.y = y * parentScaleY - parentOffsetY;\n    } else {\n      storedCTMResult.x = x;\n      storedCTMResult.y = y;\n    }\n\n    return storedCTMResult;\n  }\n\n  function autocenter() {\n    var w; // width of the parent\n    var h; // height of the parent\n    var left = 0;\n    var top = 0;\n    var sceneBoundingBox = getBoundingBox();\n    if (sceneBoundingBox) {\n      // If we have bounding box - use it.\n      left = sceneBoundingBox.left;\n      top = sceneBoundingBox.top;\n      w = sceneBoundingBox.right - sceneBoundingBox.left;\n      h = sceneBoundingBox.bottom - sceneBoundingBox.top;\n    } else {\n      // otherwise just use whatever space we have\n      var ownerRect = owner.getBoundingClientRect();\n      w = ownerRect.width;\n      h = ownerRect.height;\n    }\n    var bbox = panController.getBBox();\n    if (bbox.width === 0 || bbox.height === 0) {\n      // we probably do not have any elements in the SVG\n      // just bail out;\n      return;\n    }\n    var dh = h / bbox.height;\n    var dw = w / bbox.width;\n    var scale = Math.min(dw, dh);\n    transform.x = -(bbox.left + bbox.width / 2) * scale + w / 2 + left;\n    transform.y = -(bbox.top + bbox.height / 2) * scale + h / 2 + top;\n    transform.scale = scale;\n  }\n\n  function getTransformModel() {\n    return transform;\n  }\n\n  function getMinZoom() {\n    return minZoom;\n  }\n\n  function setMinZoom(newMinZoom) {\n    minZoom = newMinZoom;\n  }\n\n  function getMaxZoom() {\n    return maxZoom;\n  }\n\n  function setMaxZoom(newMaxZoom) {\n    maxZoom = newMaxZoom;\n  }\n\n  function getTransformOrigin() {\n    return transformOrigin;\n  }\n\n  function setTransformOrigin(newTransformOrigin) {\n    transformOrigin = parseTransformOrigin(newTransformOrigin);\n  }\n\n  function getZoomSpeed() {\n    return speed;\n  }\n\n  function setZoomSpeed(newSpeed) {\n    if (!Number.isFinite(newSpeed)) {\n      throw new Error('Zoom speed should be a number');\n    }\n    speed = newSpeed;\n  }\n\n  function getPoint() {\n    return {\n      x: transform.x,\n      y: transform.y\n    };\n  }\n\n  function moveTo(x, y) {\n    transform.x = x;\n    transform.y = y;\n\n    keepTransformInsideBounds();\n\n    triggerEvent('pan');\n    makeDirty();\n  }\n\n  function moveBy(dx, dy) {\n    moveTo(transform.x + dx, transform.y + dy);\n  }\n\n  function keepTransformInsideBounds() {\n    var boundingBox = getBoundingBox();\n    if (!boundingBox) return;\n\n    var adjusted = false;\n    var clientRect = getClientRect();\n\n    var diff = boundingBox.left - clientRect.right;\n    if (diff > 0) {\n      transform.x += diff;\n      adjusted = true;\n    }\n    // check the other side:\n    diff = boundingBox.right - clientRect.left;\n    if (diff < 0) {\n      transform.x += diff;\n      adjusted = true;\n    }\n\n    // y axis:\n    diff = boundingBox.top - clientRect.bottom;\n    if (diff > 0) {\n      // we adjust transform, so that it matches exactly our bounding box:\n      // transform.y = boundingBox.top - (boundingBox.height + boundingBox.y) * transform.scale =>\n      // transform.y = boundingBox.top - (clientRect.bottom - transform.y) =>\n      // transform.y = diff + transform.y =>\n      transform.y += diff;\n      adjusted = true;\n    }\n\n    diff = boundingBox.bottom - clientRect.top;\n    if (diff < 0) {\n      transform.y += diff;\n      adjusted = true;\n    }\n    return adjusted;\n  }\n\n  /**\n   * Returns bounding box that should be used to restrict scene movement.\n   */\n  function getBoundingBox() {\n    if (!bounds) return; // client does not want to restrict movement\n\n    if (typeof bounds === 'boolean') {\n      // for boolean type we use parent container bounds\n      var ownerRect = owner.getBoundingClientRect();\n      var sceneWidth = ownerRect.width;\n      var sceneHeight = ownerRect.height;\n\n      return {\n        left: sceneWidth * boundsPadding,\n        top: sceneHeight * boundsPadding,\n        right: sceneWidth * (1 - boundsPadding),\n        bottom: sceneHeight * (1 - boundsPadding)\n      };\n    }\n\n    return bounds;\n  }\n\n  function getClientRect() {\n    var bbox = panController.getBBox();\n    var leftTop = client(bbox.left, bbox.top);\n\n    return {\n      left: leftTop.x,\n      top: leftTop.y,\n      right: bbox.width * transform.scale + leftTop.x,\n      bottom: bbox.height * transform.scale + leftTop.y\n    };\n  }\n\n  function client(x, y) {\n    return {\n      x: x * transform.scale + transform.x,\n      y: y * transform.scale + transform.y\n    };\n  }\n\n  function makeDirty() {\n    isDirty = true;\n    frameAnimation = window.requestAnimationFrame(frame);\n  }\n\n  function zoomByRatio(clientX, clientY, ratio) {\n    if (isNaN(clientX) || isNaN(clientY) || isNaN(ratio)) {\n      throw new Error('zoom requires valid numbers');\n    }\n\n    var newScale = transform.scale * ratio;\n\n    if (newScale < minZoom) {\n      if (transform.scale === minZoom) return;\n\n      ratio = minZoom / transform.scale;\n    }\n    if (newScale > maxZoom) {\n      if (transform.scale === maxZoom) return;\n\n      ratio = maxZoom / transform.scale;\n    }\n\n    var size = transformToScreen(clientX, clientY);\n\n    transform.x = size.x - ratio * (size.x - transform.x);\n    transform.y = size.y - ratio * (size.y - transform.y);\n\n    if (bounds && boundsPadding === 1 && minZoom === 1) {\n      transform.scale *= ratio;\n      keepTransformInsideBounds();\n    } else {\n      var transformAdjusted = keepTransformInsideBounds();\n      if (!transformAdjusted) transform.scale *= ratio;\n    }\n\n    triggerEvent('zoom');\n\n    makeDirty();\n  }\n\n  function zoomAbs(clientX, clientY, zoomLevel) {\n    var ratio = zoomLevel / transform.scale;\n    zoomByRatio(clientX, clientY, ratio);\n  }\n\n  function centerOn(ui) {\n    var parent = ui.ownerSVGElement;\n    if (!parent)\n      throw new Error('ui element is required to be within the scene');\n\n    var clientRect = ui.getBoundingClientRect();\n    var cx = clientRect.left + clientRect.width / 2;\n    var cy = clientRect.top + clientRect.height / 2;\n\n    var container = parent.getBoundingClientRect();\n    var dx = container.width / 2 - cx;\n    var dy = container.height / 2 - cy;\n\n    internalMoveBy(dx, dy, true);\n  }\n\n  function smoothMoveTo(x, y){\n    internalMoveBy(x - transform.x, y - transform.y, true)\n  }\n\n  function internalMoveBy(dx, dy, smooth) {\n    if (!smooth) {\n      return moveBy(dx, dy);\n    }\n\n    if (moveByAnimation) moveByAnimation.cancel();\n\n    var from = { x: 0, y: 0 };\n    var to = { x: dx, y: dy };\n    var lastX = 0;\n    var lastY = 0;\n\n    moveByAnimation = animate(from, to, {\n      step: function (v) {\n        moveBy(v.x - lastX, v.y - lastY);\n\n        lastX = v.x;\n        lastY = v.y;\n      }\n    });\n  }\n\n  function scroll(x, y) {\n    cancelZoomAnimation();\n    moveTo(x, y);\n  }\n\n  function dispose() {\n    releaseEvents();\n  }\n\n  function listenForEvents() {\n    owner.addEventListener('mousedown', onMouseDown, { passive: false });\n    owner.addEventListener('dblclick', onDoubleClick, { passive: false });\n    owner.addEventListener('touchstart', onTouch, { passive: false });\n    owner.addEventListener('keydown', onKeyDown, { passive: false });\n\n    // Need to listen on the owner container, so that we are not limited\n    // by the size of the scrollable domElement\n    wheel.addWheelListener(owner, onMouseWheel, { passive: false });\n\n    makeDirty();\n  }\n\n  function releaseEvents() {\n    wheel.removeWheelListener(owner, onMouseWheel);\n    owner.removeEventListener('mousedown', onMouseDown);\n    owner.removeEventListener('keydown', onKeyDown);\n    owner.removeEventListener('dblclick', onDoubleClick);\n    owner.removeEventListener('touchstart', onTouch);\n\n    if (frameAnimation) {\n      window.cancelAnimationFrame(frameAnimation);\n      frameAnimation = 0;\n    }\n    smoothScroll.cancel();\n    releaseDocumentMouse();\n    releaseTouches();\n    textSelection.release();\n    triggerPanEnd();\n  }\n\n  function frame() {\n    if (isDirty) applyTransform();\n  }\n\n  function applyTransform() {\n    isDirty = false;\n    panController.applyTransform(transform);\n    triggerEvent('transform');\n    frameAnimation = 0;\n  }\n\n  function onKeyDown(e) {\n    var x = 0,\n      y = 0,\n      z = 0;\n    if (e.keyCode === 38) {\n      y = 1; // up\n    } else if (e.keyCode === 40) {\n      y = -1; // down\n    } else if (e.keyCode === 37) {\n      x = 1; // left\n    } else if (e.keyCode === 39) {\n      x = -1; // right\n    } else if (e.keyCode === 189 || e.keyCode === 109) {\n      // DASH or SUBTRACT\n      z = 1; // `-` -  zoom out\n    } else if (e.keyCode === 187 || e.keyCode === 107) {\n      // EQUAL SIGN or ADD\n      z = -1; // `=` - zoom in (equal sign on US layout is under `+`)\n    }\n\n    if (filterKey(e, x, y, z)) {\n      // They don't want us to handle the key: https://github.com/anvaka/panzoom/issues/45\n      return;\n    }\n\n    if (x || y) {\n      e.preventDefault();\n      e.stopPropagation();\n\n      var clientRect = owner.getBoundingClientRect();\n      // movement speed should be the same in both X and Y direction:\n      var offset = Math.min(clientRect.width, clientRect.height);\n      var moveSpeedRatio = 0.05;\n      var dx = offset * moveSpeedRatio * x;\n      var dy = offset * moveSpeedRatio * y;\n      internalMoveBy(dx, dy);\n    }\n\n    if (z) {\n      var scaleMultiplier = getScaleMultiplier(z * 100);\n      var offset = transformOrigin ? getTransformOriginOffset() : midPoint();\n      publicZoomTo(offset.x, offset.y, scaleMultiplier);\n    }\n  }\n\n  function midPoint() {\n    var ownerRect = owner.getBoundingClientRect();\n    return {\n      x: ownerRect.width / 2,\n      y: ownerRect.height / 2\n    };\n  }\n\n  function onTouch(e) {\n    // let the override the touch behavior\n    beforeTouch(e);\n\n    if (e.touches.length === 1) {\n      return handleSingleFingerTouch(e, e.touches[0]);\n    } else if (e.touches.length === 2) {\n      // handleTouchMove() will care about pinch zoom.\n      pinchZoomLength = getPinchZoomLength(e.touches[0], e.touches[1]);\n      multiTouch = true;\n      startTouchListenerIfNeeded();\n    }\n  }\n\n  function beforeTouch(e) {\n    if (options.onTouch && !options.onTouch(e)) {\n      // if they return `false` from onTouch, we don't want to stop\n      // events propagation. Fixes https://github.com/anvaka/panzoom/issues/12\n      return;\n    }\n\n    e.stopPropagation();\n    e.preventDefault();\n  }\n\n  function beforeDoubleClick(e) {\n    if (options.onDoubleClick && !options.onDoubleClick(e)) {\n      // if they return `false` from onTouch, we don't want to stop\n      // events propagation. Fixes https://github.com/anvaka/panzoom/issues/46\n      return;\n    }\n\n    e.preventDefault();\n    e.stopPropagation();\n  }\n\n  function handleSingleFingerTouch(e) {\n    var touch = e.touches[0];\n    var offset = getOffsetXY(touch);\n    lastSingleFingerOffset = offset;\n    var point = transformToScreen(offset.x, offset.y);\n    mouseX = point.x;\n    mouseY = point.y;\n\n    smoothScroll.cancel();\n    startTouchListenerIfNeeded();\n  }\n\n  function startTouchListenerIfNeeded() {\n    if (touchInProgress) {\n      // no need to do anything, as we already listen to events;\n      return;\n    }\n\n    touchInProgress = true;\n    document.addEventListener('touchmove', handleTouchMove);\n    document.addEventListener('touchend', handleTouchEnd);\n    document.addEventListener('touchcancel', handleTouchEnd);\n  }\n\n  function handleTouchMove(e) {\n    if (e.touches.length === 1) {\n      e.stopPropagation();\n      var touch = e.touches[0];\n\n      var offset = getOffsetXY(touch);\n      var point = transformToScreen(offset.x, offset.y);\n\n      var dx = point.x - mouseX;\n      var dy = point.y - mouseY;\n\n      if (dx !== 0 && dy !== 0) {\n        triggerPanStart();\n      }\n      mouseX = point.x;\n      mouseY = point.y;\n      internalMoveBy(dx, dy);\n    } else if (e.touches.length === 2) {\n      // it's a zoom, let's find direction\n      multiTouch = true;\n      var t1 = e.touches[0];\n      var t2 = e.touches[1];\n      var currentPinchLength = getPinchZoomLength(t1, t2);\n\n      // since the zoom speed is always based on distance from 1, we need to apply\n      // pinch speed only on that distance from 1:\n      var scaleMultiplier =\n        1 + (currentPinchLength / pinchZoomLength - 1) * pinchSpeed;\n\n      var firstTouchPoint = getOffsetXY(t1);\n      var secondTouchPoint = getOffsetXY(t2);\n      mouseX = (firstTouchPoint.x + secondTouchPoint.x) / 2;\n      mouseY = (firstTouchPoint.y + secondTouchPoint.y) / 2;\n      if (transformOrigin) {\n        var offset = getTransformOriginOffset();\n        mouseX = offset.x;\n        mouseY = offset.y;\n      }\n\n      publicZoomTo(mouseX, mouseY, scaleMultiplier);\n\n      pinchZoomLength = currentPinchLength;\n      e.stopPropagation();\n      e.preventDefault();\n    }\n  }\n\n  function handleTouchEnd(e) {\n    if (e.touches.length > 0) {\n      var offset = getOffsetXY(e.touches[0]);\n      var point = transformToScreen(offset.x, offset.y);\n      mouseX = point.x;\n      mouseY = point.y;\n    } else {\n      var now = new Date();\n      if (now - lastTouchEndTime < doubleTapSpeedInMS) {\n        if (transformOrigin) {\n          var offset = getTransformOriginOffset();\n          smoothZoom(offset.x, offset.y, zoomDoubleClickSpeed);\n        } else {\n          // We want untransformed x/y here.\n          smoothZoom(lastSingleFingerOffset.x, lastSingleFingerOffset.y, zoomDoubleClickSpeed);\n        }\n      }\n\n      lastTouchEndTime = now;\n\n      triggerPanEnd();\n      releaseTouches();\n    }\n  }\n\n  function getPinchZoomLength(finger1, finger2) {\n    var dx = finger1.clientX - finger2.clientX;\n    var dy = finger1.clientY - finger2.clientY;\n    return Math.sqrt(dx * dx + dy * dy);\n  }\n\n  function onDoubleClick(e) {\n    beforeDoubleClick(e);\n    var offset = getOffsetXY(e);\n    if (transformOrigin) {\n      // Need to refactor\n      offset = getTransformOriginOffset();\n    }\n    smoothZoom(offset.x, offset.y, zoomDoubleClickSpeed);\n  }\n\n  function onMouseDown(e) {\n    // if client does not want to handle this event - just ignore the call\n    if (beforeMouseDown(e)) return;\n\n    if (touchInProgress) {\n      // modern browsers will fire mousedown for touch events too\n      // we do not want this: touch is handled separately.\n      e.stopPropagation();\n      return false;\n    }\n    // for IE, left click == 1\n    // for Firefox, left click == 0\n    var isLeftButton =\n      (e.button === 1 && window.event !== null) || e.button === 0;\n    if (!isLeftButton) return;\n\n    smoothScroll.cancel();\n\n    var offset = getOffsetXY(e);\n    var point = transformToScreen(offset.x, offset.y);\n    mouseX = point.x;\n    mouseY = point.y;\n\n    // We need to listen on document itself, since mouse can go outside of the\n    // window, and we will loose it\n    document.addEventListener('mousemove', onMouseMove);\n    document.addEventListener('mouseup', onMouseUp);\n    textSelection.capture(e.target || e.srcElement);\n\n    return false;\n  }\n\n  function onMouseMove(e) {\n    // no need to worry about mouse events when touch is happening\n    if (touchInProgress) return;\n\n    triggerPanStart();\n\n    var offset = getOffsetXY(e);\n    var point = transformToScreen(offset.x, offset.y);\n    var dx = point.x - mouseX;\n    var dy = point.y - mouseY;\n\n    mouseX = point.x;\n    mouseY = point.y;\n\n    internalMoveBy(dx, dy);\n  }\n\n  function onMouseUp() {\n    textSelection.release();\n    triggerPanEnd();\n    releaseDocumentMouse();\n  }\n\n  function releaseDocumentMouse() {\n    document.removeEventListener('mousemove', onMouseMove);\n    document.removeEventListener('mouseup', onMouseUp);\n    panstartFired = false;\n  }\n\n  function releaseTouches() {\n    document.removeEventListener('touchmove', handleTouchMove);\n    document.removeEventListener('touchend', handleTouchEnd);\n    document.removeEventListener('touchcancel', handleTouchEnd);\n    panstartFired = false;\n    multiTouch = false;\n    touchInProgress = false;\n  }\n\n  function onMouseWheel(e) {\n    // if client does not want to handle this event - just ignore the call\n    if (beforeWheel(e)) return;\n\n    smoothScroll.cancel();\n\n    var delta = e.deltaY;\n    if (e.deltaMode > 0) delta *= 100;\n\n    var scaleMultiplier = getScaleMultiplier(delta);\n\n    if (scaleMultiplier !== 1) {\n      var offset = transformOrigin\n        ? getTransformOriginOffset()\n        : getOffsetXY(e);\n      publicZoomTo(offset.x, offset.y, scaleMultiplier);\n      e.preventDefault();\n    }\n  }\n\n  function getOffsetXY(e) {\n    var offsetX, offsetY;\n    // I tried using e.offsetX, but that gives wrong results for svg, when user clicks on a path.\n    var ownerRect = owner.getBoundingClientRect();\n    offsetX = e.clientX - ownerRect.left;\n    offsetY = e.clientY - ownerRect.top;\n\n    return { x: offsetX, y: offsetY };\n  }\n\n  function smoothZoom(clientX, clientY, scaleMultiplier) {\n    var fromValue = transform.scale;\n    var from = { scale: fromValue };\n    var to = { scale: scaleMultiplier * fromValue };\n\n    smoothScroll.cancel();\n    cancelZoomAnimation();\n\n    zoomToAnimation = animate(from, to, {\n      step: function (v) {\n        zoomAbs(clientX, clientY, v.scale);\n      },\n      done: triggerZoomEnd\n    });\n  }\n\n  function smoothZoomAbs(clientX, clientY, toScaleValue) {\n    var fromValue = transform.scale;\n    var from = { scale: fromValue };\n    var to = { scale: toScaleValue };\n\n    smoothScroll.cancel();\n    cancelZoomAnimation();\n\n    zoomToAnimation = animate(from, to, {\n      step: function (v) {\n        zoomAbs(clientX, clientY, v.scale);\n      }\n    });\n  }\n\n  function getTransformOriginOffset() {\n    var ownerRect = owner.getBoundingClientRect();\n    return {\n      x: ownerRect.width * transformOrigin.x,\n      y: ownerRect.height * transformOrigin.y\n    };\n  }\n\n  function publicZoomTo(clientX, clientY, scaleMultiplier) {\n    smoothScroll.cancel();\n    cancelZoomAnimation();\n    return zoomByRatio(clientX, clientY, scaleMultiplier);\n  }\n\n  function cancelZoomAnimation() {\n    if (zoomToAnimation) {\n      zoomToAnimation.cancel();\n      zoomToAnimation = null;\n    }\n  }\n\n  function getScaleMultiplier(delta) {\n    var sign = Math.sign(delta);\n    var deltaAdjustedSpeed = Math.min(0.25, Math.abs(speed * delta / 128));\n    return 1 - sign * deltaAdjustedSpeed;\n  }\n\n  function triggerPanStart() {\n    if (!panstartFired) {\n      triggerEvent('panstart');\n      panstartFired = true;\n      smoothScroll.start();\n    }\n  }\n\n  function triggerPanEnd() {\n    if (panstartFired) {\n      // we should never run smooth scrolling if it was multiTouch (pinch zoom animation):\n      if (!multiTouch) smoothScroll.stop();\n      triggerEvent('panend');\n    }\n  }\n\n  function triggerZoomEnd() {\n    triggerEvent('zoomend');\n  }\n\n  function triggerEvent(name) {\n    api.fire(name, api);\n  }\n}\n\nfunction parseTransformOrigin(options) {\n  if (!options) return;\n  if (typeof options === 'object') {\n    if (!isNumber(options.x) || !isNumber(options.y))\n      failTransformOrigin(options);\n    return options;\n  }\n\n  failTransformOrigin();\n}\n\nfunction failTransformOrigin(options) {\n  console.error(options);\n  throw new Error(\n    [\n      'Cannot parse transform origin.',\n      'Some good examples:',\n      '  \"center center\" can be achieved with {x: 0.5, y: 0.5}',\n      '  \"top center\" can be achieved with {x: 0.5, y: 0}',\n      '  \"bottom right\" can be achieved with {x: 1, y: 1}'\n    ].join('\\n')\n  );\n}\n\nfunction noop() { }\n\nfunction validateBounds(bounds) {\n  var boundsType = typeof bounds;\n  if (boundsType === 'undefined' || boundsType === 'boolean') return; // this is okay\n  // otherwise need to be more thorough:\n  var validBounds =\n    isNumber(bounds.left) &&\n    isNumber(bounds.top) &&\n    isNumber(bounds.bottom) &&\n    isNumber(bounds.right);\n\n  if (!validBounds)\n    throw new Error(\n      'Bounds object is not valid. It can be: ' +\n      'undefined, boolean (true|false) or an object {left, top, right, bottom}'\n    );\n}\n\nfunction isNumber(x) {\n  return Number.isFinite(x);\n}\n\n// IE 11 does not support isNaN:\nfunction isNaN(value) {\n  if (Number.isNaN) {\n    return Number.isNaN(value);\n  }\n\n  return value !== value;\n}\n\nfunction rigidScroll() {\n  return {\n    start: noop,\n    stop: noop,\n    cancel: noop\n  };\n}\n\nfunction autoRun() {\n  if (typeof document === 'undefined') return;\n\n  var scripts = document.getElementsByTagName('script');\n  if (!scripts) return;\n  var panzoomScript;\n\n  for (var i = 0; i < scripts.length; ++i) {\n    var x = scripts[i];\n    if (x.src && x.src.match(/\\bpanzoom(\\.min)?\\.js/)) {\n      panzoomScript = x;\n      break;\n    }\n  }\n\n  if (!panzoomScript) return;\n\n  var query = panzoomScript.getAttribute('query');\n  if (!query) return;\n\n  var globalName = panzoomScript.getAttribute('name') || 'pz';\n  var started = Date.now();\n\n  tryAttach();\n\n  function tryAttach() {\n    var el = document.querySelector(query);\n    if (!el) {\n      var now = Date.now();\n      var elapsed = now - started;\n      if (elapsed < 2000) {\n        // Let's wait a bit\n        setTimeout(tryAttach, 100);\n        return;\n      }\n      // If we don't attach within 2 seconds to the target element, consider it a failure\n      console.error('Cannot find the panzoom element', globalName);\n      return;\n    }\n    var options = collectOptions(panzoomScript);\n    log(options);\n    window[globalName] = createPanZoom(el, options);\n  }\n\n  function collectOptions(script) {\n    var attrs = script.attributes;\n    var options = {};\n    for (var i = 0; i < attrs.length; ++i) {\n      var attr = attrs[i];\n      var nameValue = getPanzoomAttributeNameValue(attr);\n      if (nameValue) {\n        options[nameValue.name] = nameValue.value;\n      }\n    }\n\n    return options;\n  }\n\n  function getPanzoomAttributeNameValue(attr) {\n    if (!attr.name) return;\n    var isPanZoomAttribute =\n      attr.name[0] === 'p' && attr.name[1] === 'z' && attr.name[2] === '-';\n\n    if (!isPanZoomAttribute) return;\n\n    var name = attr.name.substr(3);\n    var value = JSON.parse(attr.value);\n    return { name: name, value: value };\n  }\n}\n\nautoRun();\n\n},{\"./lib/createTextSelectionInterceptor.js\":2,\"./lib/domController.js\":3,\"./lib/kinetic.js\":4,\"./lib/svgController.js\":5,\"./lib/transform.js\":6,\"amator\":7,\"ngraph.events\":9,\"wheel\":10}],2:[function(require,module,exports){\n/**\n * Disallows selecting text.\n */\nmodule.exports = createTextSelectionInterceptor;\n\nfunction createTextSelectionInterceptor(useFake) {\n  if (useFake) {\n    return {\n      capture: noop,\n      release: noop\n    };\n  }\n\n  var dragObject;\n  var prevSelectStart;\n  var prevDragStart;\n  var wasCaptured = false;\n\n  return {\n    capture: capture,\n    release: release\n  };\n\n  function capture(domObject) {\n    wasCaptured = true;\n    prevSelectStart = window.document.onselectstart;\n    prevDragStart = window.document.ondragstart;\n\n    window.document.onselectstart = disabled;\n\n    dragObject = domObject;\n    dragObject.ondragstart = disabled;\n  }\n\n  function release() {\n    if (!wasCaptured) return;\n\n    wasCaptured = false;\n    window.document.onselectstart = prevSelectStart;\n    if (dragObject) dragObject.ondragstart = prevDragStart;\n  }\n}\n\nfunction disabled(e) {\n  e.stopPropagation();\n  return false;\n}\n\nfunction noop() {}\n\n},{}],3:[function(require,module,exports){\nmodule.exports = makeDomController\n\nmodule.exports.canAttach = isDomElement;\n\nfunction makeDomController(domElement, options) {\n  var elementValid = isDomElement(domElement);\n  if (!elementValid) {\n    throw new Error('panzoom requires DOM element to be attached to the DOM tree')\n  }\n\n  var owner = domElement.parentElement;\n  domElement.scrollTop = 0;\n\n  if (!options.disableKeyboardInteraction) {\n    if (owner) owner.setAttribute('tabindex', 0);\n  }\n\n  var api = {\n    getBBox: getBBox,\n    getOwner: getOwner,\n    applyTransform: applyTransform,\n  }\n\n  return api\n\n  function getOwner() {\n    return owner\n  }\n\n  function getBBox() {\n    // TODO: We should probably cache this?\n    return  {\n      left: 0,\n      top: 0,\n      width: domElement.clientWidth,\n      height: domElement.clientHeight\n    }\n  }\n\n  function applyTransform(transform) {\n    // TODO: Should we cache this?\n    domElement.style.transformOrigin = '0 0 0';\n    domElement.style.transform = 'matrix(' +\n      transform.scale + ', 0, 0, ' +\n      transform.scale + ', ' +\n      transform.x + ', ' + transform.y + ')'\n  }\n}\n\nfunction isDomElement(element) {\n  return element && element.parentElement && element.style;\n}\n\n},{}],4:[function(require,module,exports){\n/**\n * Allows smooth kinetic scrolling of the surface\n */\nmodule.exports = kinetic;\n\nfunction kinetic(getPoint, scroll, settings) {\n  if (typeof settings !== 'object') {\n    // setting could come as boolean, we should ignore it, and use an object.\n    settings = {};\n  }\n\n  var minVelocity = typeof settings.minVelocity === 'number' ? settings.minVelocity : 5;\n  var amplitude = typeof settings.amplitude === 'number' ? settings.amplitude : 0.25;\n  var cancelAnimationFrame = typeof settings.cancelAnimationFrame === 'function' ? settings.cancelAnimationFrame : getCancelAnimationFrame();\n  var requestAnimationFrame = typeof settings.requestAnimationFrame === 'function' ? settings.requestAnimationFrame : getRequestAnimationFrame();\n\n  var lastPoint;\n  var timestamp;\n  var timeConstant = 342;\n\n  var ticker;\n  var vx, targetX, ax;\n  var vy, targetY, ay;\n\n  var raf;\n\n  return {\n    start: start,\n    stop: stop,\n    cancel: dispose\n  };\n\n  function dispose() {\n    cancelAnimationFrame(ticker);\n    cancelAnimationFrame(raf);\n  }\n\n  function start() {\n    lastPoint = getPoint();\n\n    ax = ay = vx = vy = 0;\n    timestamp = new Date();\n\n    cancelAnimationFrame(ticker);\n    cancelAnimationFrame(raf);\n\n    // we start polling the point position to accumulate velocity\n    // Once we stop(), we will use accumulated velocity to keep scrolling\n    // an object.\n    ticker = requestAnimationFrame(track);\n  }\n\n  function track() {\n    var now = Date.now();\n    var elapsed = now - timestamp;\n    timestamp = now;\n\n    var currentPoint = getPoint();\n\n    var dx = currentPoint.x - lastPoint.x;\n    var dy = currentPoint.y - lastPoint.y;\n\n    lastPoint = currentPoint;\n\n    var dt = 1000 / (1 + elapsed);\n\n    // moving average\n    vx = 0.8 * dx * dt + 0.2 * vx;\n    vy = 0.8 * dy * dt + 0.2 * vy;\n\n    ticker = requestAnimationFrame(track);\n  }\n\n  function stop() {\n    cancelAnimationFrame(ticker);\n    cancelAnimationFrame(raf);\n\n    var currentPoint = getPoint();\n\n    targetX = currentPoint.x;\n    targetY = currentPoint.y;\n    timestamp = Date.now();\n\n    if (vx < -minVelocity || vx > minVelocity) {\n      ax = amplitude * vx;\n      targetX += ax;\n    }\n\n    if (vy < -minVelocity || vy > minVelocity) {\n      ay = amplitude * vy;\n      targetY += ay;\n    }\n\n    raf = requestAnimationFrame(autoScroll);\n  }\n\n  function autoScroll() {\n    var elapsed = Date.now() - timestamp;\n\n    var moving = false;\n    var dx = 0;\n    var dy = 0;\n\n    if (ax) {\n      dx = -ax * Math.exp(-elapsed / timeConstant);\n\n      if (dx > 0.5 || dx < -0.5) moving = true;\n      else dx = ax = 0;\n    }\n\n    if (ay) {\n      dy = -ay * Math.exp(-elapsed / timeConstant);\n\n      if (dy > 0.5 || dy < -0.5) moving = true;\n      else dy = ay = 0;\n    }\n\n    if (moving) {\n      scroll(targetX + dx, targetY + dy);\n      raf = requestAnimationFrame(autoScroll);\n    }\n  }\n}\n\nfunction getCancelAnimationFrame() {\n  if (typeof cancelAnimationFrame === 'function') return cancelAnimationFrame;\n  return clearTimeout;\n}\n\nfunction getRequestAnimationFrame() {\n  if (typeof requestAnimationFrame === 'function') return requestAnimationFrame;\n\n  return function (handler) {\n    return setTimeout(handler, 16);\n  }\n}\n},{}],5:[function(require,module,exports){\nmodule.exports = makeSvgController\nmodule.exports.canAttach = isSVGElement;\n\nfunction makeSvgController(svgElement, options) {\n  if (!isSVGElement(svgElement)) {\n    throw new Error('svg element is required for svg.panzoom to work')\n  }\n\n  var owner = svgElement.ownerSVGElement\n  if (!owner) {\n    throw new Error(\n      'Do not apply panzoom to the root <svg> element. ' +\n      'Use its child instead (e.g. <g></g>). ' +\n      'As of March 2016 only FireFox supported transform on the root element')\n  }\n\n  if (!options.disableKeyboardInteraction) {\n    if (owner) owner.setAttribute('tabindex', 0);\n  }\n\n  var api = {\n    getBBox: getBBox,\n    getScreenCTM: getScreenCTM,\n    getOwner: getOwner,\n    applyTransform: applyTransform,\n    initTransform: initTransform\n  }\n\n  return api\n\n  function getOwner() {\n    return owner\n  }\n\n  function getBBox() {\n    var bbox =  svgElement.getBBox()\n    return {\n      left: bbox.x,\n      top: bbox.y,\n      width: bbox.width,\n      height: bbox.height,\n    }\n  }\n\n  function getScreenCTM() {\n    var ctm = owner.getCTM();\n    if (!ctm) {\n      // This is likely firefox: https://bugzilla.mozilla.org/show_bug.cgi?id=873106\n      // The code below is not entirely correct, but still better than nothing\n      return owner.getScreenCTM();\n    }\n    return ctm;\n  }\n\n  function initTransform(transform) {\n    var screenCTM = svgElement.getCTM()\n\n    // The above line returns null on Firefox\n    if (screenCTM === null) {\n      screenCTM = document.createElementNS(\"http://www.w3.org/2000/svg\", \"svg\").createSVGMatrix()\n    }\n\n    transform.x = screenCTM.e;\n    transform.y = screenCTM.f;\n    transform.scale = screenCTM.a;\n    owner.removeAttributeNS(null, 'viewBox');\n  }\n\n  function applyTransform(transform) {\n    if (svgElement) svgElement.setAttribute('transform', 'matrix(' +\n      transform.scale + ' 0 0 ' +\n      transform.scale + ' ' +\n      transform.x + ' ' + transform.y + ')')\n  }\n}\n\nfunction isSVGElement(element) {\n  return element && element.ownerSVGElement && element.getCTM;\n}\n},{}],6:[function(require,module,exports){\nmodule.exports = Transform;\n\nfunction Transform() {\n  this.x = 0;\n  this.y = 0;\n  this.scale = 1;\n}\n\n},{}],7:[function(require,module,exports){\nvar BezierEasing = require('bezier-easing')\n\n// Predefined set of animations. Similar to CSS easing functions\nvar animations = {\n  ease:  BezierEasing(0.25, 0.1, 0.25, 1),\n  easeIn: BezierEasing(0.42, 0, 1, 1),\n  easeOut: BezierEasing(0, 0, 0.58, 1),\n  easeInOut: BezierEasing(0.42, 0, 0.58, 1),\n  linear: BezierEasing(0, 0, 1, 1)\n}\n\n\nmodule.exports = animate;\nmodule.exports.makeAggregateRaf = makeAggregateRaf;\nmodule.exports.sharedScheduler = makeAggregateRaf();\n\n\nfunction animate(source, target, options) {\n  var start = Object.create(null)\n  var diff = Object.create(null)\n  options = options || {}\n  // We let clients specify their own easing function\n  var easing = (typeof options.easing === 'function') ? options.easing : animations[options.easing]\n\n  // if nothing is specified, default to ease (similar to CSS animations)\n  if (!easing) {\n    if (options.easing) {\n      console.warn('Unknown easing function in amator: ' + options.easing);\n    }\n    easing = animations.ease\n  }\n\n  var step = typeof options.step === 'function' ? options.step : noop\n  var done = typeof options.done === 'function' ? options.done : noop\n\n  var scheduler = getScheduler(options.scheduler)\n\n  var keys = Object.keys(target)\n  keys.forEach(function(key) {\n    start[key] = source[key]\n    diff[key] = target[key] - source[key]\n  })\n\n  var durationInMs = typeof options.duration === 'number' ? options.duration : 400\n  var durationInFrames = Math.max(1, durationInMs * 0.06) // 0.06 because 60 frames pers 1,000 ms\n  var previousAnimationId\n  var frame = 0\n\n  previousAnimationId = scheduler.next(loop)\n\n  return {\n    cancel: cancel\n  }\n\n  function cancel() {\n    scheduler.cancel(previousAnimationId)\n    previousAnimationId = 0\n  }\n\n  function loop() {\n    var t = easing(frame/durationInFrames)\n    frame += 1\n    setValues(t)\n    if (frame <= durationInFrames) {\n      previousAnimationId = scheduler.next(loop)\n      step(source)\n    } else {\n      previousAnimationId = 0\n      setTimeout(function() { done(source) }, 0)\n    }\n  }\n\n  function setValues(t) {\n    keys.forEach(function(key) {\n      source[key] = diff[key] * t + start[key]\n    })\n  }\n}\n\nfunction noop() { }\n\nfunction getScheduler(scheduler) {\n  if (!scheduler) {\n    var canRaf = typeof window !== 'undefined' && window.requestAnimationFrame\n    return canRaf ? rafScheduler() : timeoutScheduler()\n  }\n  if (typeof scheduler.next !== 'function') throw new Error('Scheduler is supposed to have next(cb) function')\n  if (typeof scheduler.cancel !== 'function') throw new Error('Scheduler is supposed to have cancel(handle) function')\n\n  return scheduler\n}\n\nfunction rafScheduler() {\n  return {\n    next: window.requestAnimationFrame.bind(window),\n    cancel: window.cancelAnimationFrame.bind(window)\n  }\n}\n\nfunction timeoutScheduler() {\n  return {\n    next: function(cb) {\n      return setTimeout(cb, 1000/60)\n    },\n    cancel: function (id) {\n      return clearTimeout(id)\n    }\n  }\n}\n\nfunction makeAggregateRaf() {\n  var frontBuffer = new Set();\n  var backBuffer = new Set();\n  var frameToken = 0;\n\n  return {\n    next: next,\n    cancel: next,\n    clearAll: clearAll\n  }\n\n  function clearAll() {\n    frontBuffer.clear();\n    backBuffer.clear();\n    cancelAnimationFrame(frameToken);\n    frameToken = 0;\n  }\n\n  function next(callback) {\n    backBuffer.add(callback);\n    renderNextFrame();\n  }\n\n  function renderNextFrame() {\n    if (!frameToken) frameToken = requestAnimationFrame(renderFrame);\n  }\n\n  function renderFrame() {\n    frameToken = 0;\n\n    var t = backBuffer;\n    backBuffer = frontBuffer;\n    frontBuffer = t;\n\n    frontBuffer.forEach(function(callback) {\n      callback();\n    });\n    frontBuffer.clear();\n  }\n\n  function cancel(callback) {\n    backBuffer.delete(callback);\n  }\n}\n\n},{\"bezier-easing\":8}],8:[function(require,module,exports){\n/**\n * https://github.com/gre/bezier-easing\n * BezierEasing - use bezier curve for transition easing function\n * by Gaëtan Renaudeau 2014 - 2015 – MIT License\n */\n\n// These values are established by empiricism with tests (tradeoff: performance VS precision)\nvar NEWTON_ITERATIONS = 4;\nvar NEWTON_MIN_SLOPE = 0.001;\nvar SUBDIVISION_PRECISION = 0.0000001;\nvar SUBDIVISION_MAX_ITERATIONS = 10;\n\nvar kSplineTableSize = 11;\nvar kSampleStepSize = 1.0 / (kSplineTableSize - 1.0);\n\nvar float32ArraySupported = typeof Float32Array === 'function';\n\nfunction A (aA1, aA2) { return 1.0 - 3.0 * aA2 + 3.0 * aA1; }\nfunction B (aA1, aA2) { return 3.0 * aA2 - 6.0 * aA1; }\nfunction C (aA1)      { return 3.0 * aA1; }\n\n// Returns x(t) given t, x1, and x2, or y(t) given t, y1, and y2.\nfunction calcBezier (aT, aA1, aA2) { return ((A(aA1, aA2) * aT + B(aA1, aA2)) * aT + C(aA1)) * aT; }\n\n// Returns dx/dt given t, x1, and x2, or dy/dt given t, y1, and y2.\nfunction getSlope (aT, aA1, aA2) { return 3.0 * A(aA1, aA2) * aT * aT + 2.0 * B(aA1, aA2) * aT + C(aA1); }\n\nfunction binarySubdivide (aX, aA, aB, mX1, mX2) {\n  var currentX, currentT, i = 0;\n  do {\n    currentT = aA + (aB - aA) / 2.0;\n    currentX = calcBezier(currentT, mX1, mX2) - aX;\n    if (currentX > 0.0) {\n      aB = currentT;\n    } else {\n      aA = currentT;\n    }\n  } while (Math.abs(currentX) > SUBDIVISION_PRECISION && ++i < SUBDIVISION_MAX_ITERATIONS);\n  return currentT;\n}\n\nfunction newtonRaphsonIterate (aX, aGuessT, mX1, mX2) {\n for (var i = 0; i < NEWTON_ITERATIONS; ++i) {\n   var currentSlope = getSlope(aGuessT, mX1, mX2);\n   if (currentSlope === 0.0) {\n     return aGuessT;\n   }\n   var currentX = calcBezier(aGuessT, mX1, mX2) - aX;\n   aGuessT -= currentX / currentSlope;\n }\n return aGuessT;\n}\n\nfunction LinearEasing (x) {\n  return x;\n}\n\nmodule.exports = function bezier (mX1, mY1, mX2, mY2) {\n  if (!(0 <= mX1 && mX1 <= 1 && 0 <= mX2 && mX2 <= 1)) {\n    throw new Error('bezier x values must be in [0, 1] range');\n  }\n\n  if (mX1 === mY1 && mX2 === mY2) {\n    return LinearEasing;\n  }\n\n  // Precompute samples table\n  var sampleValues = float32ArraySupported ? new Float32Array(kSplineTableSize) : new Array(kSplineTableSize);\n  for (var i = 0; i < kSplineTableSize; ++i) {\n    sampleValues[i] = calcBezier(i * kSampleStepSize, mX1, mX2);\n  }\n\n  function getTForX (aX) {\n    var intervalStart = 0.0;\n    var currentSample = 1;\n    var lastSample = kSplineTableSize - 1;\n\n    for (; currentSample !== lastSample && sampleValues[currentSample] <= aX; ++currentSample) {\n      intervalStart += kSampleStepSize;\n    }\n    --currentSample;\n\n    // Interpolate to provide an initial guess for t\n    var dist = (aX - sampleValues[currentSample]) / (sampleValues[currentSample + 1] - sampleValues[currentSample]);\n    var guessForT = intervalStart + dist * kSampleStepSize;\n\n    var initialSlope = getSlope(guessForT, mX1, mX2);\n    if (initialSlope >= NEWTON_MIN_SLOPE) {\n      return newtonRaphsonIterate(aX, guessForT, mX1, mX2);\n    } else if (initialSlope === 0.0) {\n      return guessForT;\n    } else {\n      return binarySubdivide(aX, intervalStart, intervalStart + kSampleStepSize, mX1, mX2);\n    }\n  }\n\n  return function BezierEasing (x) {\n    // Because JavaScript number are imprecise, we should guarantee the extremes are right.\n    if (x === 0) {\n      return 0;\n    }\n    if (x === 1) {\n      return 1;\n    }\n    return calcBezier(getTForX(x), mY1, mY2);\n  };\n};\n\n},{}],9:[function(require,module,exports){\nmodule.exports = function eventify(subject) {\n  validateSubject(subject);\n\n  var eventsStorage = createEventsStorage(subject);\n  subject.on = eventsStorage.on;\n  subject.off = eventsStorage.off;\n  subject.fire = eventsStorage.fire;\n  return subject;\n};\n\nfunction createEventsStorage(subject) {\n  // Store all event listeners to this hash. Key is event name, value is array\n  // of callback records.\n  //\n  // A callback record consists of callback function and its optional context:\n  // { 'eventName' => [{callback: function, ctx: object}] }\n  var registeredEvents = Object.create(null);\n\n  return {\n    on: function (eventName, callback, ctx) {\n      if (typeof callback !== 'function') {\n        throw new Error('callback is expected to be a function');\n      }\n      var handlers = registeredEvents[eventName];\n      if (!handlers) {\n        handlers = registeredEvents[eventName] = [];\n      }\n      handlers.push({callback: callback, ctx: ctx});\n\n      return subject;\n    },\n\n    off: function (eventName, callback) {\n      var wantToRemoveAll = (typeof eventName === 'undefined');\n      if (wantToRemoveAll) {\n        // Killing old events storage should be enough in this case:\n        registeredEvents = Object.create(null);\n        return subject;\n      }\n\n      if (registeredEvents[eventName]) {\n        var deleteAllCallbacksForEvent = (typeof callback !== 'function');\n        if (deleteAllCallbacksForEvent) {\n          delete registeredEvents[eventName];\n        } else {\n          var callbacks = registeredEvents[eventName];\n          for (var i = 0; i < callbacks.length; ++i) {\n            if (callbacks[i].callback === callback) {\n              callbacks.splice(i, 1);\n            }\n          }\n        }\n      }\n\n      return subject;\n    },\n\n    fire: function (eventName) {\n      var callbacks = registeredEvents[eventName];\n      if (!callbacks) {\n        return subject;\n      }\n\n      var fireArguments;\n      if (arguments.length > 1) {\n        fireArguments = Array.prototype.splice.call(arguments, 1);\n      }\n      for(var i = 0; i < callbacks.length; ++i) {\n        var callbackInfo = callbacks[i];\n        callbackInfo.callback.apply(callbackInfo.ctx, fireArguments);\n      }\n\n      return subject;\n    }\n  };\n}\n\nfunction validateSubject(subject) {\n  if (!subject) {\n    throw new Error('Eventify cannot use falsy object as events subject');\n  }\n  var reservedWords = ['on', 'fire', 'off'];\n  for (var i = 0; i < reservedWords.length; ++i) {\n    if (subject.hasOwnProperty(reservedWords[i])) {\n      throw new Error(\"Subject cannot be eventified, since it already has property '\" + reservedWords[i] + \"'\");\n    }\n  }\n}\n\n},{}],10:[function(require,module,exports){\n/**\n * This module used to unify mouse wheel behavior between different browsers in 2014\n * Now it's just a wrapper around addEventListener('wheel');\n *\n * Usage:\n *  var addWheelListener = require('wheel').addWheelListener;\n *  var removeWheelListener = require('wheel').removeWheelListener;\n *  addWheelListener(domElement, function (e) {\n *    // mouse wheel event\n *  });\n *  removeWheelListener(domElement, function);\n */\n\nmodule.exports = addWheelListener;\n\n// But also expose \"advanced\" api with unsubscribe:\nmodule.exports.addWheelListener = addWheelListener;\nmodule.exports.removeWheelListener = removeWheelListener;\n\nfunction addWheelListener(element, listener, useCapture) {\n  element.addEventListener('wheel', listener, useCapture);\n}\n\nfunction removeWheelListener( element, listener, useCapture ) {\n  element.removeEventListener('wheel', listener, useCapture);\n}\n},{}]},{},[1])(1)\n});\n"
  },
  {
    "path": "javascript/progressBar.js",
    "content": "let lastState = {};\nlet refreshInterval = 10000;\n\nfunction setRefreshInterval() {\n  refreshInterval = opts.live_preview_refresh_period || 500;\n  log('refreshInterval', document.visibilityState, refreshInterval);\n  document.addEventListener('visibilitychange', () => {\n    if (document.hidden) refreshInterval = Math.max(2500, opts.live_preview_refresh_period || 1000);\n    else refreshInterval = opts.live_preview_refresh_period || 1000;\n    // log('refreshInterval', document.visibilityState, refreshInterval);\n  });\n}\n\nfunction pad2(x) {\n  return x < 10 ? `0${x}` : x;\n}\n\nfunction formatTime(secs) {\n  if (secs > 3600) return `${pad2(Math.floor(secs / 60 / 60))}:${pad2(Math.floor(secs / 60) % 60)}:${pad2(Math.floor(secs) % 60)}`;\n  if (secs > 60) return `${pad2(Math.floor(secs / 60))}:${pad2(Math.floor(secs) % 60)}`;\n  return `${Math.floor(secs)}s`;\n}\n\nfunction checkPaused(state) {\n  lastState.paused = state ? !state : !lastState.paused;\n  const t_el = document.getElementById('txt2img_pause');\n  const i_el = document.getElementById('img2img_pause');\n  const c_el = document.getElementById('control_pause');\n  const v_el = document.getElementById('video_pause');\n  if (t_el) t_el.innerText = lastState.paused ? 'Resume' : 'Pause';\n  if (i_el) i_el.innerText = lastState.paused ? 'Resume' : 'Pause';\n  if (c_el) c_el.innerText = lastState.paused ? 'Resume' : 'Pause';\n  if (v_el) v_el.innerText = lastState.paused ? 'Resume' : 'Pause';\n}\n\nfunction setProgress(res) {\n  const elements = ['txt2img_generate', 'img2img_generate', 'extras_generate', 'control_generate', 'video_generate', 'framepack_generate'];\n  const progress = res?.progress || 0;\n  const job = res?.job || '';\n  let perc = '';\n  let eta = '';\n  if (job === 'VAE') perc = 'Decode';\n  else {\n    perc = res && (progress > 0) && (progress < 1) ? `${Math.round(100.0 * progress)}% ` : '';\n    let sec = res?.eta || 0;\n    if (res?.paused) eta = 'Paused';\n    else if (res?.completed || (progress > 0.99)) eta = 'Finishing';\n    else if (sec === 0) eta = 'Start';\n    else {\n      const min = Math.floor(sec / 60);\n      sec %= 60;\n      eta = min > 0 ? `${Math.round(min)}m ${Math.round(sec)}s` : `${Math.round(sec)}s`;\n    }\n  }\n  document.title = `SD.Next ${perc}`;\n  for (const elId of elements) {\n    const el = document.getElementById(elId);\n    if (el) {\n      const jobLabel = (res ? `${job} ${perc}${eta}` : 'Generate').trim();\n      el.innerText = jobLabel;\n      if (!window.waitForUiReady) {\n        const gradient = perc !== '' ? perc : '100%';\n        if (jobLabel === 'Generate') el.style.background = 'var(--primary-500)';\n        else if (jobLabel.endsWith('Decode')) continue;\n        else if (jobLabel.endsWith('Start') || jobLabel.endsWith('Finishing')) el.style.background = 'var(--primary-800)';\n        else if (res && progress > 0 && progress < 1) el.style.background = `linear-gradient(to right, var(--primary-500) 0%, var(--primary-800) ${gradient}, var(--neutral-700) ${gradient})`;\n        else el.style.background = 'var(--primary-500)';\n      }\n    }\n  }\n}\n\nfunction requestInterrupt() {\n  setProgress();\n}\n\nfunction randomId() {\n  return `task(${Math.random().toString(36).slice(2, 7)}${Math.random().toString(36).slice(2, 7)}${Math.random().toString(36).slice(2, 7)})`;\n}\n\n// starts sending progress requests to \"/internal/progress\" uri, creating progressbar above progressbarContainer element and preview inside gallery element\n// Cleans up all created stuff when the task is over and calls atEnd. calls onProgress every time there is a progress update\nfunction requestProgress(id_task, progressEl, galleryEl, atEnd = null, onProgress = null, once = false) {\n  localStorage.setItem('task', id_task);\n  let hasStarted = false;\n  let dateStart = new Date();\n  let prevProgress = null;\n  const parentGallery = galleryEl ? galleryEl.parentNode : null;\n  let livePreview;\n  let img;\n\n  const initLivePreview = () => {\n    if (!parentGallery) return;\n    const footers = Array.from(gradioApp().querySelectorAll('.gallery_footer'));\n    for (const footer of footers) {\n      if (footer.id !== 'gallery_footer') footer.style.display = 'none'; // remove all footers\n    }\n    const galleries = Array.from(gradioApp().querySelectorAll('.gallery_main'));\n    for (const gallery of galleries) {\n      if (gallery.id !== 'gallery_gallery') gallery.style.display = 'none'; // remove all footers\n    }\n\n    livePreview = document.createElement('div');\n    livePreview.className = 'livePreview';\n    parentGallery.insertBefore(livePreview, galleryEl);\n    img = new Image();\n    img.id = 'livePreviewImage';\n    livePreview.appendChild(img);\n    img.onload = () => {\n      img.style.width = `min(100%, max(${img.naturalWidth}px, 512px))`;\n      parentGallery.style.minHeight = `${img.height}px`;\n    };\n  };\n\n  const done = () => {\n    debug('taskEnd:', id_task);\n    localStorage.removeItem('task');\n    setProgress();\n    const footers = Array.from(gradioApp().querySelectorAll('.gallery_footer'));\n    for (const footer of footers) footer.style.display = 'flex'; // restore all footers\n    const galleries = Array.from(gradioApp().querySelectorAll('.gallery_main'));\n    for (const gallery of galleries) gallery.style.display = 'flex'; // remove all galleries\n    try {\n      if (parentGallery && livePreview) {\n        parentGallery.removeChild(livePreview);\n        parentGallery.style.minHeight = 'unset';\n      }\n    } catch { /* ignore */ }\n    checkPaused(true);\n    sendNotification();\n    if (atEnd) atEnd();\n  };\n\n  const start = (id_task, id_live_preview) => { // eslint-disable-line no-shadow\n    if (opts.live_preview_refresh_period === 0) return;\n    const request_id = document.hidden ? -1 : id_live_preview;\n\n    const onProgressHandler = (res) => {\n      if (res?.debug) debug('livePreview:', dateStart, request_id, res);\n      lastState = res;\n      const elapsedFromStart = (new Date() - dateStart) / 1000;\n      hasStarted |= res.active;\n      if (res.completed || (!res.active && (hasStarted || once)) || (elapsedFromStart > 120 && !res.queued && res.progress === prevProgress)) {\n        debug('livePreview end:', res);\n        done();\n        return;\n      }\n      if (res.progress !== prevProgress) {\n        dateStart = new Date();\n        prevProgress = res.progress;\n      }\n      setProgress(res);\n      if (res.live_preview && !livePreview) initLivePreview();\n      if (res.live_preview && galleryEl) {\n        if (img.src !== res.live_preview) img.src = res.live_preview;\n        id_live_preview = res.id_live_preview;\n      }\n      if (onProgress) onProgress(res);\n      setTimeout(() => start(id_task, id_live_preview), opts.live_preview_refresh_period || 500);\n    };\n\n    const onProgressErrorHandler = (err) => {\n      error(`livePreview: ${err}`);\n      done();\n    };\n\n    xhrPost('./internal/progress', { id_task, id_live_preview: request_id }, onProgressHandler, onProgressErrorHandler, false, 30000);\n  };\n  debug('livePreview start:', dateStart);\n  start(id_task, 0);\n}\n"
  },
  {
    "path": "javascript/promptChecker.js",
    "content": "// Stable Diffusion WebUI - Bracket checker\n// By Hingashi no Florin/Bwin4L & @akx\n// Counts open and closed brackets (round, square, curly) in the prompt and negative prompt text boxes in the txt2img and img2img tabs.\n// If there's a mismatch, the keyword counter turns red and if you hover on it, a tooltip tells you what's wrong.\n\nfunction checkBrackets(textArea, counterElt) {\n  const counts = {};\n  const errors = [];\n\n  function checkPair(open, close, kind) {\n    if (counts[open] !== counts[close]) errors.push(`${open}...${close} - Detected ${counts[open] || 0} opening and ${counts[close] || 0} closing ${kind}.`);\n  }\n\n  (textArea.value.match(/[(){}[\\]]/g) || []).forEach((bracket) => { counts[bracket] = (counts[bracket] || 0) + 1; });\n  checkPair('(', ')', 'round brackets');\n  checkPair('[', ']', 'square brackets');\n  checkPair('{', '}', 'curly brackets');\n  counterElt.title = errors.join('\\n');\n  counterElt.classList.toggle('error', errors.length !== 0);\n}\n\nfunction setupBracketChecking(idPrompt, idCounter) {\n  const textarea = gradioApp().querySelector(`#${idPrompt} > label > textarea`);\n  const counter = gradioApp().getElementById(idCounter);\n  if (!textarea || !counter) return;\n  textarea.addEventListener('input', () => checkBrackets(textarea, counter));\n}\n\nasync function initPromptChecker() {\n  log('initPromptChecker');\n  setupBracketChecking('txt2img_prompt', 'txt2img_token_counter');\n  setupBracketChecking('txt2img_neg_prompt', 'txt2img_negative_token_counter');\n  setupBracketChecking('img2img_prompt', 'img2img_token_counter');\n  setupBracketChecking('img2img_neg_prompt', 'img2img_negative_token_counter');\n  setupBracketChecking('control_prompt', 'control_token_counter');\n  setupBracketChecking('control_neg_prompt', 'control_negative_token_counter');\n  setupBracketChecking('video_prompt', 'video_token_counter');\n  setupBracketChecking('video_neg_prompt', 'video_negative_token_counter');\n}\n"
  },
  {
    "path": "javascript/script.js",
    "content": "async function sleep(ms) {\n  return new Promise((resolve) => setTimeout(resolve, ms)); // eslint-disable-line no-promise-executor-return\n}\n\nfunction gradioApp() {\n  const elems = document.getElementsByTagName('gradio-app');\n  const elem = elems.length === 0 ? document : elems[0];\n  if (elem !== document) elem.getElementById = (id) => document.getElementById(id);\n  return elem.shadowRoot ? elem.shadowRoot : elem;\n}\n\nfunction logFn(func) {\n  return async function () { // eslint-disable-line func-names\n    const t0 = performance.now();\n    const returnValue = func(...arguments);\n    const t1 = performance.now();\n    log(func.name, `time=${Math.round(t1 - t0)}`);\n    return returnValue;\n  };\n}\n\nfunction getUICurrentTab() {\n  return gradioApp().querySelector('#tabs button.selected');\n}\n\nfunction getUICurrentTabContent() {\n  return gradioApp().querySelector('.tabitem[id^=tab_]:not([style*=\"display: none\"])');\n}\n\nconst get_uiCurrentTabContent = getUICurrentTabContent;\nconst get_uiCurrentTab = getUICurrentTab;\nconst uiAfterUpdateCallbacks = [];\nconst uiUpdateCallbacks = [];\nconst uiLoadedCallbacks = [];\nconst uiReadyCallbacks = [];\nconst uiTabChangeCallbacks = [];\nconst optionsChangedCallbacks = [];\nlet uiCurrentTab = null;\nlet uiAfterUpdateTimeout = null;\n\nfunction onAfterUiUpdate(callback) {\n  uiAfterUpdateCallbacks.push(callback);\n}\n\nfunction onUiUpdate(callback) {\n  uiUpdateCallbacks.push(callback);\n}\n\nfunction onUiLoaded(callback) {\n  uiLoadedCallbacks.push(callback);\n}\n\nfunction onUiReady(callback) {\n  uiReadyCallbacks.push(callback);\n}\n\nfunction onUiTabChange(callback) {\n  uiTabChangeCallbacks.push(callback);\n}\n\nfunction onOptionsChanged(callback) {\n  optionsChangedCallbacks.push(callback);\n}\n\nfunction executeCallbacks(queue, arg) {\n  // if (!uiLoaded) return\n  for (const callback of queue) {\n    if (!callback) continue;\n    try {\n      callback(arg);\n    } catch (e) {\n      error(`executeCallbacks: ${callback} ${e}`);\n    }\n  }\n}\n\nconst anyPromptExists = () => gradioApp().querySelectorAll('.main-prompts').length > 0;\n\nfunction scheduleAfterUiUpdateCallbacks() {\n  clearTimeout(uiAfterUpdateTimeout);\n  uiAfterUpdateTimeout = setTimeout(() => executeCallbacks(uiAfterUpdateCallbacks, 500));\n}\n\nlet executedOnLoaded = false;\nconst ignoreElements = ['logMonitorData', 'logWarnings', 'logErrors', 'tooltip-container', 'logger'];\nconst ignoreClasses = ['wrap'];\n\nlet mutationTimer = null;\nlet validMutations = [];\nasync function mutationCallback(mutations) {\n  let newMutations = mutations;\n  if (newMutations.length > 0) newMutations = newMutations.filter((m) => m.target.nodeName !== 'LABEL');\n  if (newMutations.length > 0) newMutations = newMutations.filter((m) => ignoreElements.indexOf(m.target.id) === -1);\n  if (newMutations.length > 0) newMutations = newMutations.filter((m) => m.target.id !== 'logWarnings' && m.target.id !== 'logErrors');\n  if (newMutations.length > 0) newMutations = newMutations.filter((m) => !m.target.classList?.contains('wrap'));\n  if (newMutations.length > 0) validMutations = validMutations.concat(newMutations);\n  if (validMutations.length < 1) return;\n\n  if (mutationTimer) clearTimeout(mutationTimer);\n  mutationTimer = setTimeout(async () => {\n    if (!executedOnLoaded && anyPromptExists()) { // execute once\n      executedOnLoaded = true;\n      executeCallbacks(uiLoadedCallbacks);\n    }\n    if (executedOnLoaded) { // execute on each mutation\n      executeCallbacks(uiUpdateCallbacks, mutations);\n      scheduleAfterUiUpdateCallbacks();\n    }\n    const newTab = getUICurrentTab();\n    if (newTab && (newTab !== uiCurrentTab)) {\n      uiCurrentTab = newTab;\n      executeCallbacks(uiTabChangeCallbacks);\n    }\n    validMutations = [];\n    mutationTimer = null;\n  }, 50);\n}\n\ndocument.addEventListener('DOMContentLoaded', () => {\n  const mutationObserver = new MutationObserver(mutationCallback);\n  mutationObserver.observe(gradioApp(), { childList: true, subtree: true });\n});\n\n/**\n * Add a listener to the document for keydown events\n */\ndocument.addEventListener('keydown', (e) => {\n  let elem;\n  if (e.key === 'Escape') elem = getUICurrentTabContent().querySelector('button[id$=_interrupt]');\n  if (e.key === 'Enter' && e.ctrlKey) elem = getUICurrentTabContent().querySelector('button[id$=_generate]');\n  if (e.key === 'i' && e.ctrlKey) elem = getUICurrentTabContent().querySelector('button[id$=_reprocess]');\n  if (e.key === ' ' && e.ctrlKey) elem = getUICurrentTabContent().querySelector('button[id$=_extra_networks_btn]');\n  if (e.key === 'n' && e.ctrlKey) elem = getUICurrentTabContent().querySelector('button[id$=_extra_networks_btn]');\n  if (e.key === 's' && e.ctrlKey) elem = getUICurrentTabContent().querySelector('button[id^=save_]');\n  if (e.key === 'Insert' && e.ctrlKey) elem = getUICurrentTabContent().querySelector('button[id^=save_]');\n  if (e.key === 'd' && e.ctrlKey) elem = getUICurrentTabContent().querySelector('button[id^=delete_]');\n  // if (e.key === 'm' && e.ctrlKey) elem = gradioApp().getElementById('setting_sd_model_checkpoint');\n  if (elem) {\n    e.preventDefault();\n    log('hotkey', { key: e.key, meta: e.metaKey, ctrl: e.ctrlKey, alt: e.altKey }, elem?.id, elem.nodeName);\n    if (elem.nodeName === 'BUTTON') elem.click();\n    else elem.focus();\n  }\n});\n\n/**\n * checks that a UI element is not in another hidden element or tab content\n */\nfunction uiElementIsVisible(el) {\n  if (el === document) return true;\n  const computedStyle = getComputedStyle(el);\n  const isVisible = computedStyle.display !== 'none';\n  if (!isVisible) return false;\n  return uiElementIsVisible(el.parentNode);\n}\n\nfunction uiElementInSight(el) {\n  const clRect = el.getBoundingClientRect();\n  const windowHeight = window.innerHeight;\n  const isOnScreen = clRect.bottom > 0 && clRect.top < windowHeight;\n  return isOnScreen;\n}\n"
  },
  {
    "path": "javascript/sdnext.css",
    "content": "@font-face {\n  font-display: swap;\n  font-family: 'NotoSans';\n  font-style: normal;\n  font-weight: 100;\n  src: local('NotoSansNerd'), url('notosans-nerdfont-regular.ttf');\n}\n\n:root {\n  --card-size: 160px;\n  --color-debug: #7F7F7F;\n  --color-error: #BE0000;\n  --color-info: #D4D4D4;\n  --color-trace: #666666;\n  --color-warning: #FF9900;\n  --left-column: 530px;\n  --sd-image-fit: contain;\n}\n\n:root {\n  --sd-primary-h: 180deg;\n  --color-blue: paleturquoise;\n  --color-debug: #7F7F7F;\n  --color-error: #9E2020;\n  --color-green: palegreen;\n  --color-info: #D4D4D4;\n  --color-red: palevioletred;\n  --color-trace: #666666;\n  --color-warning: #FF9900;\n  --sd-border-radius: 5px;\n  --sd-border-size: 2px;\n  --sd-button-hover-color: var(--sd-button-selected-color);\n  --sd-button-hover-text-color: var(--sd-button-selected-text-color);\n  --sd-button-normal-color: var(--sd-input-background-color);\n  --sd-button-normal-text-color: var(--sd-input-text-color);\n  --sd-button-selected-color: var(--sd-main-accent-color);\n  --sd-button-selected-text-color: var(--sd-input-hover-text-color);\n  --sd-gap-size: max(var(--sd-gap-size-val), var(--sd-border-size));\n  --sd-gap-size-val: 5px;\n  --sd-group-background-color: hsl(0deg 0% 16%);\n  --sd-group-border-color: hsl(0deg 0% 16%);\n  --sd-group-border-radius: 7px;\n  --sd-group-border-size: 2px;\n  --sd-button-height: 2.4em;\n  --sd-group-gap: 6px;\n  --sd-group-padding: 2px;\n  --sd-input-background-color: rgba(0, 0, 0, 0.25);\n  --sd-input-border-color: rgba(0, 0, 0, 0.1);\n  --sd-input-border-size: 2px;\n  --sd-input-font-size: var(--font-size);\n  --sd-input-height: 35px;\n  --sd-input-hover-text-color: var(--sd-input-text-color);\n  --sd-input-icon-height: calc(var(--sd-input-height) - var(--sd-input-border-size) * 2);\n  --sd-input-line-height: 23px;\n  --sd-input-padding: 5px;\n  --sd-input-placeholder-text-color: rgba(255, 255, 255, 0.35);\n  --sd-input-secondary-text-color: var(--sd-input-text-color);\n  --sd-input-slider-height: 0.6;\n  --sd-input-text-color: rgba(255, 255, 255, 0.75);\n  --sd-label-color: rgba(255, 255, 255, 0.75);\n  --sd-muted-color: rgba(255, 255, 255, 0.50);\n  --sd-main-accent-color: #7950ab;\n  --sd-main-background-color: rgb(32 32 32);\n  --sd-outline-color: var(--sd-button-hover-color);\n  --sd-outline-size: calc(var(--sd-border-size) * 0.8);\n  --sd-outside-gap-size: 8px;\n  --sd-extra-gap: 0;\n  --sd-panel-background-color: rgba(64, 64, 64, 0.5);\n  --sd-panel-border-color: rgba(64, 64, 64, 0.75);\n  --sd-panel-padding: 5px;\n  --sd-scrollbar-color: var(--sd-panel-border-color);\n  --sd-tooltip-text-color: var(--sd-input-background-color);\n  --sd-body-font: 'IBM Plex Mono', monospace;\n  --sd-text-font: 'IBM Plex Mono', monospace;\n  --sd-button-font: 'NotoSans', sans-serif;\n  --sd-image-fit: scale-down;\n  --sd-panel-min-width: 30em;\n  --sd-grid-image-size: 150px;\n}\n\na {\n  cursor: pointer;\n  font-weight: bold;\n}\n\nh2 {\n  font-size: var(--text-xxl) !important;\n  margin-top: 1em !important;\n}\n\nfooter {\n  display: none;\n  margin-top: 0 !important;\n}\n\ntable {\n  overflow-x: auto !important;\n  overflow-y: auto !important;\n}\n\ntd {\n  border-bottom: none !important;\n  padding: 0 0.5em !important;\n}\n\ntr {\n  border-bottom: none !important;\n  padding: 0 0.5em !important;\n}\n\ntd>div>span {\n  max-height: 3em;\n  overflow-x: hidden;\n  overflow-y: auto;\n}\n\ntextarea {\n  border-radius: 4px !important;\n  overflow-y: auto !important;\n}\n\nspan {\n  font-size: var(--text-md);\n}\n\nbutton {\n  font-size: var(--text-lg) !important;\n  min-width: unset !important;\n}\n\nh4 {\n  margin: 0.2em 0em 0.2em 0em;\n}\n\ninput[type='color'] {\n  height: 32px;\n  width: 64px;\n}\n\ninput::-webkit-outer-spin-button, input::-webkit-inner-spin-button {\n  margin-left: 4px;\n}\n\n.block .padded:not(.gradio-accordion) {\n  margin-right: 0;\n  min-width: 90px !important;\n  padding: 4px 0 0 0 !important;\n}\n\n.compact {\n  background: transparent !important;\n  gap: 1em 0.2em;\n  padding: 0 !important;\n}\n\n.flex-break {\n  flex-basis: 100% !important;\n}\n\n.form {\n  background: transparent;\n  border-width: 0;\n  box-shadow: none;\n  flex-grow: 1 !important;\n  gap: 0.5em 1em;\n  overflow: visible;\n}\n\n.form-compact {\n  gap: 0.2em 1em !important;\n  margin-bottom: 0 !important;\n}\n\n.gap .compact {\n  gap: 0.2em 0;\n  padding: 0;\n}\n\n.hidden {\n  display: none;\n}\n\n.tabitem {\n  padding: 0 !important;\n}\n\n.image-container {\n  overflow: auto;\n}\n\n.link {\n  background-color: var(--background-fill-primary);\n  cursor: pointer;\n  border-radius: var(--input-radius);\n  width: 2em;\n}\n\n.link:hover {\n  background-color: var(--button-primary-background-fill);\n}\n\n.gradio-dropdown, .block.gradio-slider, .block.gradio-checkbox, .block.gradio-textbox, .block.gradio-radio, .block.gradio-checkboxgroup, .block.gradio-number, .block.gradio-colorpicker {\n  border-width: 0 !important;\n  box-shadow: none !important;\n}\n\n.gradio-accordion {\n  color: var(--body-text-color);\n  padding-bottom: 0 !important;\n  padding-right: 0 !important;\n  padding-top: var(--spacing-md) !important;\n}\n\n.gradio-accordion .label-wrap .icon {\n  color: var(--button-primary-border-color);\n}\n\n.gradio-button {\n  border-radius: var(--radius-lg) !important;\n}\n\n.gradio-button.secondary-down {\n  background: var(--button-secondary-background-fill);\n  color: var(--button-secondary-text-color);\n}\n\n.gradio-button.secondary-down, .gradio-button.secondary-down:hover {\n  box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.25) inset, 0px 0px 3px rgba(0, 0, 0, 0.15) inset;\n}\n\n.gradio-button.secondary-down:hover {\n  background: var(--button-secondary-background-fill-hover);\n  color: var(--button-secondary-text-color-hover);\n}\n\n.gradio-button.tool {\n  align-self: end;\n  color: var(--body-text-color) !important;\n  font-size: 20px !important;\n  margin-bottom: 4px;\n  max-width: min-content;\n  min-width: min-content !important;\n}\n\n.gradio-checkbox {\n  align-self: center;\n  margin-right: 1em !important;\n}\n\n.gradio-column {\n  min-width: min(160px, 100%) !important;\n}\n\n.gradio-container {\n  max-width: unset !important;\n  padding: var(--block-label-padding) !important;\n}\n\n.gradio-container .prose a, .gradio-container .prose a:visited {\n  color: unset;\n  text-decoration: none;\n}\n\n.gradio-dropdown {\n  margin-right: var(--spacing-sm) !important;\n  min-width: 160px;\n  max-width: fit-content\n}\n\n.gradio-dropdown label span {\n  margin-bottom: 2px !important;\n}\n\n.gradio-dropdown ul.options {\n  max-height: 50vh !important;\n  min-width: fit-content;\n  white-space: nowrap;\n  z-index: 1000;\n}\n\n.gradio-dropdown ul.options li.item {\n  padding: var(--spacing-xs);\n}\n\n.gradio-dropdown ul.options li.item:not(:has(.hide)) {\n  background-color: var(--primary-500);\n}\n\n.gradio-dropdown .token {\n  overflow-x: hidden;\n  padding: var(--spacing-xs) !important;\n  font-family: 'NotoSans', var(--font);\n}\n\n.gradio-dropdown .wrap input,\n.gradio-dropdown input {\n  font-family: 'NotoSans', var(--font);\n}\n\n.gradio-html {\n  color: var(--body-text-color);\n}\n\n.gradio-html .min {\n  min-height: 0;\n}\n\n.gradio-html div.wrap {\n  height: 100%;\n}\n\n.gradio-number {\n  max-width: 5em !important;\n  min-width: unset !important;\n}\n\n.gradio-textbox {\n  overflow: visible !important;\n}\n\n.gradio-radio {\n  padding: 0 !important;\n  width: max-content !important;\n}\n\n.gradio-slider {\n  margin-right: var(--spacing-sm) !important;\n\nwidth: max-content !important\n}\n\n.gradio-slider input[type=\"number\"] {\n  font-size: var(--text-xs);\n  height: 16px;\n  padding: 0;\n  text-align: right;\n  width: 5em;\n}\n\n.gradio-checkboxgroup {\n  padding: 0 !important;\n}\n\n.gradio-checkbox>label {\n  color: var(--block-title-text-color) !important;\n}\n\n.accordion-compact {\n  padding: 8px 0px 4px 0px !important;\n}\n\n.settings-accordion>div {\n  flex-flow: wrap;\n}\n\n.small-accordion .label-wrap .icon {\n  color: var(--button-primary-border-color);\n  margin-left: 0.3em;\n  margin-right: 1em;\n}\n\n.small-accordion .label-wrap {\n  border-top: 2px solid var(--button-secondary-border-color);\n  margin: 0;\n  padding: 16px 0px 8px 0px;\n}\n\n.small-accordion {\n  min-width: fit-content !important;\n  padding-left: 0 !important;\n  width: fit-content !important;\n}\n\n.group-exetensions {\n  max-width: 48vw;\n}\n\n.group-scripts {\n  border-top: 2px solid var(--button-secondary-border-color) !important;\n  margin-top: 1em;\n  max-width: 48vw;\n  padding-top: 0.5em;\n}\n\n.group-scripts>div {\n  max-width: 48vw;\n}\n\nbutton.custom-button {\n  align-items: center;\n  background: var(--button-secondary-background-fill);\n  border: var(--button-border-width) solid var(--button-secondary-border-color);\n  border-radius: var(--button-large-radius);\n  box-shadow: var(--button-shadow);\n  color: var(--button-secondary-text-color);\n  display: inline-flex;\n  font-size: var(--text-lg);\n  font-weight: var(--button-large-text-weight);\n  justify-content: center;\n  padding: var(--button-large-padding);\n  text-align: center;\n  transition: var(--button-transition);\n}\n\n.theme-preview {\n  border: var(--spacing-sm) solid var(--neutral-600);\n  bottom: 0;\n  box-shadow: 2px 2px 2px 2px var(--neutral-700);\n  display: none;\n  left: 0;\n  margin: auto;\n  max-width: 75vw;\n  position: fixed;\n  right: 0;\n  top: 0;\n  z-index: 999;\n}\n\n.token-counter {\n  min-width: 0 !important;\n  position: absolute;\n  right: 1em;\n  top: -0.5em;\n  width: auto;\n  z-index: 100;\n}\n\n.token-counter span {\n  background: var(--input-background-fill) !important;\n  border: 2px solid rgba(192, 192, 192, 0.4) !important;\n  box-shadow: 0 0 0.0 0.3em rgba(192, 192, 192, 0.15), inset 0 0 0.6em rgba(192, 192, 192, 0.075);\n}\n\n.token-counter.error span {\n  border: 2px solid rgba(255, 0, 0, 0.4) !important;\n  box-shadow: 0 0 0.0 0.3em rgba(255, 0, 0, 0.15), inset 0 0 0.6em rgba(255, 0, 0, 0.075);\n}\n\n.token-counter div {\n  display: inline;\n}\n\n.token-counter span {\n  padding: 0.1em 0.75em;\n}\n\n.performance {\n  color: #444;\n  font-size: var(--text-xs);\n}\n\n.performance p {\n  display: inline-block;\n\ncolor: var(--primary-500) !important\n}\n\n.performance .time {\n  margin-right: 0;\n}\n\n.thumbnails {\n  background: var(--body-background-fill);\n}\n\n.prompt textarea {\n  resize: vertical;\n}\n\n.grid-wrap {\n  overflow-y: auto !important;\n}\n\n#control_results {\n  margin: 0;\n  padding: 0;\n}\n\n#txt2img_gallery, #img2img_gallery {\n  height: 50vh;\n}\n\n#history_table {\n  font-size: 0.9em;\n  text-align: left;\n  cursor: pointer;\n  max-height: 50vh;\n  overflow: auto;\n  background-color: var(--sd-main-background-color);\n}\n\n#control-result {\n  background: var(--button-secondary-background-fill);\n  padding: 0.2em;\n}\n\n#control-inputs {\n  margin-top: 1em;\n}\n\n#txt2img_prompt_container, #img2img_prompt_container, #control_prompt_container, #video_prompt_container {\n\n  margin-right: var(--layout-gap)\n}\n\n#txt2img_footer, #img2img_footer, #control_footer {\n  display: none;\n  height: fit-content;\n}\n\n#txt2img_generate_box, #img2img_generate_box {\n  flex-wrap: unset;\n  gap: 0.5em;\n  min-width: unset;\n  width: 66.6%;\n}\n\n#control_generate_box, #video_generate_box {\n  flex-wrap: unset;\n  gap: 0.5em;\n  min-width: unset;\n  width: 100%;\n}\n\n#control_generate_box button:nth-child(1), #video_generate_box button:nth-child(1) {\n  flex-grow: 2;\n}\n\n#control_generate_box button:nth-child(2), #video_generate_box button:nth-child(2) {\n  flex-grow: 1;\n}\n\n#txt2img_actions_column, #img2img_actions_column, #control_actions_column, #video_actions_column {\n  gap: 0.3em;\n  height: fit-content;\n}\n\n#txt2img_generate_box>button, #img2img_generate_box>button, #control_generate_box>button, #video_generate_box>button, #txt2img_enqueue, #img2img_enqueue, #txt2img_enqueue>button, #img2img_enqueue>button {\n  line-height: 1em;\n  max-height: 44px !important;\n  min-height: 44px !important;\n  min-width: unset;\n  white-space: break-spaces;\n}\n\n#txt2img_enqueue_wrapper, #img2img_enqueue_wrapper, #control_enqueue_wrapper {\n  min-width: unset !important;\n  width: 31%;\n}\n\n#txt2img_generate_line2, #img2img_generate_line2, #txt2img_tools, #img2img_tools, #control_generate_line2, #control_tools, #video_generate_line2, #video_tools {\n  display: flex;\n}\n\n#txt2img_generate_line2>button, #img2img_generate_line2>button, #extras_generate_box>button, #control_generate_line2>button, #txt2img_tools>button, #img2img_tools>button, #control_tools>button {\n  display: block !important;\n  font-size: var(--text-md);\n  height: 2em;\n  line-height: 0;\n  min-width: unset;\n}\n\n#txt2img_prompt, #txt2img_neg_prompt, #img2img_prompt, #img2img_neg_prompt, #control_prompt, #control_neg_prompt, #video_prompt, #video_neg_prompt {\n  display: contents;\n}\n\n#txt2img_actions_column, #img2img_actions_column, #control_actions, #video_actions {\n  flex-flow: wrap;\n  justify-content: space-between;\n}\n\n#txt2img_seed, #img2img_seed, #control_seed, #video_seed {\n\n  min-width: 90px !important\n}\n\n#video_generate_box>button {\n  max-width: unset;\n}\n\n#interrogate_output_prompt>textarea {\n  resize: vertical;\n}\n\n#prompt_enhance_apply, #prompt_enhance_model, #prompt_enhance_custom_load {\n  max-width: unset;\n  min-width: 100% !important;\n}\n\n#prompt_enhance_system textarea {\n\n  color: var(--body-text-color-subdued) !important\n}\n\n.gradio-gallery img, .image-container img {\n  max-width: 100%;\n  object-position: top;\n  width: 100%;\n  height: 100%;\n  object-fit: var(--sd-image-fit) !important;\n}\n\n.interrogate {\n  background: none !important;\n  font-size: 1.5em !important;\n  max-width: fit-content;\n  position: absolute;\n  right: 2.8em;\n  top: 0.1em;\n  z-index: 50;\n}\n\n.image-fit {\n  background: none !important;\n  font-size: 1.5em !important;\n  max-width: fit-content;\n  position: absolute;\n  right: 4.0em;\n  top: 0.1em;\n  z-index: 50;\n}\n\n.interrogate:hover,\n.image-fit:hover {\n  background: var(--button-primary-background-fill-hover) !important;\n}\n\n.interrogate-clip {\n  background: none !important;\n  max-width: fit-content;\n  position: absolute;\n  right: 6em;\n  top: 8px;\n  z-index: 50;\n}\n\n.interrogate-blip {\n  background: none !important;\n  max-width: fit-content;\n  position: absolute;\n  right: 4em;\n  top: 8px;\n  z-index: 50;\n}\n\n.interrogate-col {\n  margin-right: var(--spacing-xxl);\n  max-width: fit-content;\n  min-width: 0 !important;\n}\n\n.interrogate-col>button {\n  flex: 1;\n  max-height: 84px;\n  width: 7em;\n}\n\n#sampler_selection_img2img {\n  margin-top: 1em;\n}\n\n#txtimg_hr_finalres {\n  min-height: 0 !important;\n}\n\n#img2img_scale_resolution_preview.block {\n  align-items: end;\n  display: flex;\n}\n\n#txtimg_hr_finalres .resolution, #img2img_scale_resolution_preview .resolution {\n  font-weight: bold;\n}\n\ndiv#extras_scale_to_tab div.form {\n  flex-direction: row;\n}\n\n#img2img_unused_scale_by_slider {\n  max-width: 0.5em;\n  min-width: 0.5em;\n  visibility: hidden;\n  width: 0.5em;\n}\n\n.inactive {\n  opacity: 0.5;\n}\n\ndiv#extras_scale_to_tab div.form {\n  flex-direction: row;\n}\n\n.image-buttons button {\n  min-width: auto;\n}\n\n.infotext {\n  font-size: 0.95em !important;\n  line-height: 1.5em;\n  overflow-wrap: break-word;\n}\n\n.infotext>p {\n  color: var(--block-info-text-color) !important;\n  white-space: pre-wrap;\n}\n\n.tooltip {\n  background: var(--input-background-fill);\n  border: 1pt solid var(--button-primary-border-color);\n  color: var(--body-text-color);\n  display: block;\n  font-size: var(--text-xs);\n  min-height: 1.3em;\n  max-width: 40em;\n  opacity: 0;\n  padding: 0.5em;\n  pointer-events: none;\n  position: fixed;\n  right: 1em;\n  top: 1em;\n  transition: opacity 0.2s ease-in;\n  width: 22em;\n  z-index: 999;\n  overflow: visible;\n}\n\n.tooltip-show {\n  opacity: 0.9;\n}\n\n.tooltip-expanded {\n  width: 32em;\n}\n\n.tooltip .separator {\n  display: block;\n  height: 1px;\n  background: linear-gradient(to right, transparent, var(--button-primary-border-color), transparent);\n  margin: 0.5em 0;\n  opacity: 0.6;\n}\n\n.tooltip .long-content {\n  opacity: 0;\n  max-height: 0;\n  overflow: hidden;\n  transition: opacity 0.3s ease-in, max-height 0.3s ease-in-out;\n}\n\n.tooltip .long-content.show {\n  opacity: 1;\n  max-height: 50em;\n}\n\n.tooltip-header {\n  position: relative;\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n}\n\n.tooltip-progress-ring {\n  position: absolute;\n  right: 0;\n  top: 50%;\n  transform: translateY(-50%);\n  width: 1.2em;\n  height: 1.2em;\n  opacity: 0;\n  transition: opacity 0.2s ease-in;\n  flex-shrink: 0;\n}\n\n.tooltip-progress-ring.active {\n  opacity: 0.8;\n}\n\n.tooltip-progress-ring svg {\n  width: 100%;\n  height: 100%;\n  transform: rotate(-90deg);\n}\n\n.tooltip-progress-ring .ring-background {\n  fill: none;\n  stroke: var(--button-primary-border-color);\n  stroke-width: 2;\n  opacity: 0.3;\n}\n\n.tooltip-progress-ring .ring-progress {\n  fill: none;\n  stroke: var(--body-text-color);\n  stroke-width: 2;\n  stroke-linecap: round;\n  stroke-dasharray: 31.4; /* Circumference of circle with radius 5 (2πr = 2π×5 ≈ 31.4) */\n  stroke-dashoffset: 31.4;\n  transition: stroke-dashoffset 3s linear;\n}\n\n.tooltip-progress-ring .ring-progress.animate {\n  stroke-dashoffset: 0;\n}\n\n.toolbutton-selected {\n  background: var(--background-fill-primary) !important;\n}\n\n.tooltip-reload-notice {\n  margin-top: 0.3em;\n}\n\n.tooltip-reload-text {\n  font-size: var(--text-xs);\n  font-style: italic;\n  opacity: 0.75;\n  display: block;\n}\n\n.locale {\n  background-color: var(--input-background-fill);\n  color: var(--body-text-color);\n  cursor: pointer;\n  font-family: monospace;\n  font-size: 0.8em;\n  font-weight: 800;\n  height: 1.2em;\n  opacity: 50%;\n  padding: 0.1em;\n  position: fixed;\n  right: 0.5em;\n  top: 0.5em;\n  width: 1.2em;\n}\n\n#txt2img_hdr_color_row>div {\n  max-width: unset !important;\n  min-width: unset !important;\n}\n\n#txt2img_advanced_options, #img2img_advanced_options, #control_advanced_options {\n  min-width: 100%;\n}\n\n#txt2img_advanced_options .gradio-checkbox, #img2img_advanced_options .gradio-checkbox, #control_advanced_options .gradio-checkbox {\n  max-width: fit-content;\n  min-width: unset !important;\n}\n\n#txt2img_prompt, #txt2img_neg_prompt, #img2img_prompt, #img2img_neg_prompt, #control_prompt, #control_neg_prompt, #video_prompt, #video_neg_prompt {\n  background-color: var(--background-color);\n  box-shadow: none !important;\n}\n\n#txt2img_prompt>label>textarea, #txt2img_neg_prompt>label>textarea, #img2img_prompt>label>textarea, #img2img_neg_prompt>label>textarea, #control_prompt>label>textarea, #control_neg_prompt>label>textarea, #video_prompt>label>textarea, #video_neg_prompt>label>textarea {\n  font-size: 1.0em;\n  line-height: 1.4em;\n}\n\n#txt2img_styles, #img2img_styles, #control_styles, #video_styles {\n  padding: 0 !important;\n}\n\n#txt2img_styles:hover, #img2img_styles:hover, #control_styles:hover, #video_styles:hover {\n  z-index: 1000;\n}\n\n#txt2img_styles_refresh, #img2img_styles_refresh, #control_styles_refresh, #video_styles_refresh {\n  margin-top: 1em;\n  padding: 0;\n}\n\n#quicksettings {\n  width: fit-content;\n}\n\n#quicksettings>button {\n  align-self: end;\n  margin-bottom: 6px;\n  padding: 0 1em 0 0;\n}\n\n#settings {\n  display: flex;\n  margin-left: 0.5em;\n}\n\n#settings>div.tab-content {\n  margin-top: 1em;\n}\n\n#settings>div.tab-content>div>div {\n  gap: 0;\n}\n\n#settings>div.tab-content>div>div>div>div>div {\n  flex-direction: unset;\n}\n\n#settings>div.tab-nav {\n  background: var(--neutral-900);\n  border-radius: var(--block-radius);\n  display: block;\n  margin-right: 1em;\n  width: 14em;\n}\n\n#settings>div.tab-nav button {\n  border: none;\n  border-radius: var(--block-radius);\n  height: 2em;\n  text-align: left;\n  width: 100%;\n}\n\n#settings .dirtyable.hidden {\n  visibility: hidden;\n}\n\n#settings .modification-indicator {\n  background: none;\n  border-radius: var(--radius-lg);\n  float: left;\n  height: 2em !important;\n  left: -6px;\n  padding: 0;\n  position: absolute;\n  width: 4px !important;\n}\n\n#settings .modification-indicator:disabled {\n  background: none;\n}\n\n#settings .modification-indicator.saved {\n  background: var(--color-accent-soft);\n}\n\n#settings .modification-indicator.changed {\n  background: var(--color-accent);\n}\n\n#settings .modification-indicator.changed.unsaved {\n  background: var(--color-warning);\n}\n\n#settings .block.gradio-checkbox {\n  margin: 0;\n  width: auto;\n}\n\n#settings .block.gradio-number {\n  min-width: 500px !important;\n}\n\n#settings .gradio-slider, #tab_settings .gradio-dropdown {\n  max-width: 500px !important;\n  width: 500px !important;\n}\n\n#settings .gradio-radio {\n  padding: var(--block-padding) !important;\n}\n\n#settings textarea {\n  max-width: 500px !important;\n  width: 500px !important;\n}\n\n.licenses {\n  display: block !important;\n}\n\n#si-sparkline-memo, #si-sparkline-load {\n  background-color: #111;\n}\n\n.progressDiv {\n  background: #b4c0cc;\n  height: 20px;\n  margin-bottom: -3px;\n  position: relative;\n}\n\n.dark .progressDiv {\n  background: #424c5b;\n}\n\n.progressDiv .progress {\n  background: #0060df;\n  color: white;\n  font-weight: bold;\n  height: 20px;\n  line-height: 20px;\n  overflow: visible;\n  padding: 0 8px 0 0;\n  padding: 0 0.5em;\n  text-align: right;\n  white-space: nowrap;\n  width: 0%;\n}\n\n.livePreview {\n  background-color: var(--background-color);\n  height: 100%;\n  position: absolute;\n  width: -moz-available;\n  width: -webkit-fill-available;\n  z-index: 50;\n}\n\n.livePreview img {\n  justify-self: center;\n  max-height: calc(100vh - 320px);\n  object-fit: contain;\n  width: 100%;\n}\n\n.popup-metadata {\n  background: #0000;\n  color: white;\n  display: inline-block;\n  font-size: var(--text-xxs);\n  white-space: pre-wrap;\n}\n\n.generating {\n  animation: unset !important;\n  border: unset !important;\n}\n\n#lightboxModal {\n  -webkit-user-select: none;\n  backdrop-filter: blur(6px);\n  background-color: rgba(20, 20, 20, 0.75);\n  display: none;\n  flex-direction: row;\n  font-family: 'NotoSans';\n  height: 100%;\n  left: 0;\n  overflow: hidden;\n  position: fixed;\n  top: 0;\n  user-select: none;\n  width: 100%;\n  z-index: 1001;\n}\n\n.modalControls {\n  background-color: transparent;\n  display: flex;\n  justify-content: space-evenly;\n  position: absolute;\n  width: 99%;\n  z-index: 1;\n}\n\n.modalControls:hover {\n  background-color: #50505050;\n}\n\n.modalControls span {\n  color: white;\n  cursor: pointer;\n  filter: grayscale(100%);\n  font-size: 2em !important;\n  font-weight: bold;\n}\n\n.modalControls span:hover, .modalControls span:focus {\n  color: var(--highlight-color);\n  filter: none;\n}\n\n.lightboxModalPreviewZone {\n  display: flex;\n  height: 100%;\n  width: 100%;\n}\n\n.lightboxModalPreviewZone:focus-visible {\n  outline: none;\n}\n\n.lightboxModalPreviewZone>img {\n  display: block;\n  margin: auto;\n  width: auto;\n}\n\n.lightboxModalPreviewZone>img.modalImageFullscreen {\n  background: transparent;\n  height: 100%;\n  min-height: 0;\n  object-fit: contain;\n  width: 100%;\n}\n\ntable.settings-value-table {\n  background: white;\n  border: var(--spacing-sm) solid white;\n  border-collapse: collapse;\n  margin: 1em;\n}\n\ntable.settings-value-table td {\n  border: 1px solid #ccc;\n  max-width: 36em;\n  padding: 0.4em;\n}\n\n.modalPrev, .modalNext {\n  -webkit-user-select: none;\n  color: white;\n  cursor: pointer;\n  font-size: 20px;\n  font-weight: bold;\n  height: 100vh;\n  line-height: 100vh;\n  margin-top: -50px;\n  padding: 16px;\n  position: relative;\n  text-align: center;\n  top: 0;\n  transition: 0.6s ease;\n  user-select: none;\n  width: auto;\n  z-index: 1;\n}\n\n.modalNext {\n  right: 0;\n}\n\n.modalPrev:hover, .modalNext:hover {\n  background-color: rgba(0, 0, 0, 0.8);\n}\n\n#imageARPreview {\n  background: rgba(255, 0, 0, 0.3);\n  border: 2px solid red;\n  display: none;\n  left: 0px;\n  pointer-events: none;\n  position: absolute;\n  top: 0px;\n  z-index: 900;\n}\n\n#context-menu {\n  background: var(--background-fill-primary);\n  border: 2px solid var(--highlight-color);\n  color: var(--body-text-color);\n  display: block;\n  padding: var(--spacing-md);\n  position: absolute;\n  z-index: 9999;\n}\n\n.context-menu-items {\n  font-size: var(--text-sm);\n  list-style: none;\n  margin: 0;\n  padding: 0;\n}\n\n.context-menu-items a {\n  cursor: pointer;\n  display: block;\n  font-weight: normal;\n  padding: var(--spacing-md);\n}\n\n.context-menu-items a:hover {\n\n  background: var(--highlight-color)\n}\n\n#tab_extensions table, #tab_config table {\n  border-collapse: collapse;\n}\n\n#tab_extensions table td, #tab_extensions table th, #tab_config table td, #tab_config table th {\n  border: 1px solid #ccc;\n  padding: 0.25em 0.5em;\n}\n\n#tab_extensions table tr:hover, #tab_config table tr:hover {\n  background-color: var(--neutral-500) !important;\n}\n\n#tab_extensions table input[type=\"checkbox\"] {\n  appearance: checkbox;\n  margin-right: 0.5em;\n}\n\n#tab_extensions button {\n  max-width: 16em;\n}\n\n#tab_extensions input[disabled=\"disabled\"] {\n  opacity: 0.5;\n}\n\n.extension-tag {\n  font-size: var(--text-sm);\n  font-weight: bold;\n}\n\n.extension-button {\n  font-size: var(--text-sm) !important;\n  width: 6em;\n}\n\n#extensions .name {\n\n  font-size: var(--text-lg)\n}\n\n#extensions .type {\n  font-size: var(--text-sm);\n  opacity: 0.5;\n  text-align: center;\n}\n\n#extensions .version {\n  opacity: 0.7;\n}\n\n#extensions .info {\n  margin: 0;\n}\n\n#extensions .date {\n  font-size: var(--text-sm);\n  opacity: 0.85;\n}\n\n.extra_networks_root {\n  height: auto;\n  position: absolute;\n  right: 0;\n  top: 13em;\n  width: 0;\n  z-index: 100;\n}\n\n.extra-networks {\n  background: var(--background-color);\n  padding: var(--block-label-padding);\n}\n\n.extra-networks>div {\n  border-bottom: none !important;\n  gap: 0.3em 0;\n  margin: 0;\n}\n\n.extra-networks .second-line {\n  box-shadow: var(--input-shadow);\n  display: flex;\n  gap: 0.3em;\n  margin-bottom: 2px;\n  width: -moz-available;\n  width: -webkit-fill-available;\n}\n\n.extra-networks .search {\n  width: unset !important;\n  min-width: unset !important;\n}\n\n.extra-networks .search textarea {\n  width: calc(140px / 1.1);\n  resize: none;\n  margin-right: 2px;\n}\n\n\n.extra-networks .description textarea {\n  font-size: 0.8rem;\n}\n\n.extra-networks .tab-nav>button {\n  height: 24px;\n  margin-right: 0;\n  padding: 2px 4px 2px 4px;\n}\n\n.extra-networks .buttons {\n  background: var(--background-color);\n  margin: -4px;\n  position: absolute;\n  right: 0;\n}\n\n.extra-networks .buttons>button {\n  color: var(--primary-300) !important;\n  margin-left: -0.2em;\n}\n\n.extra-networks .custom-button {\n  background: none;\n  box-shadow: none;\n  justify-content: left;\n  line-break: auto;\n  padding: 3px 3px 3px 12px;\n  text-align: left;\n  text-indent: -6px;\n  width: 140px;\n  width: 100%;\n}\n\n.extra-networks .custom-button:hover {\n\n  background: var(--button-primary-background-fill)\n}\n\n.extra-networks-tab {\n  padding: 0 !important;\n}\n\n.extra-network-subdirs {\n  background: var(--input-background-fill);\n  border-radius: 4px;\n  min-width: max(15%, 140px);\n  overflow-x: hidden;\n  overflow-y: auto;\n  padding-top: 0.5em;\n}\n\n.extra-networks-page {\n\n  display: flex\n}\n\n.extra-network-cards {\n  align-content: flex-start;\n  display: flex;\n  flex-wrap: wrap;\n  overflow-x: hidden;\n  overflow-y: auto;\n  width: -moz-available;\n  width: -webkit-fill-available;\n  justify-content: space-evenly;\n}\n\n.extra-network-cards .card {\n    margin: 0 0 0.5em 0.5em;\n    position: relative;\n    scroll-margin-top: 0;\n    scroll-snap-align: start;\n    height: var(--card-size);\n    width: var(--card-size);\n    contain: layout style;\n}\n\n*.extra-network-cards .card-selected {\n  transform: scale(0.9);\n  box-shadow: 0 0 2em var(--button-primary-background-fill);\n}\n\n.extra-network-cards .card .overlay {\n  background: none;\n  width: 100%;\n  z-index: 10;\n}\n\n.extra-network-cards .card .overlay .name {\n  bottom: 0;\n  color: white;\n  font-size: var(--text-lg);\n  overflow-wrap: break-word;\n  padding: 0.2em;\n  position: absolute;\n  z-index: 10;\n  text-shadow: 2px 2px 2px black;\n  filter: drop-shadow(0px 0px 4px black);\n}\n\n.extra-network-cards .card .overlay .reference {\n  color: beige;\n  background-color: rgba(0, 0, 0, 0.2);\n}\n\n.extra-network-cards .card .preview {\n  box-shadow: var(--button-shadow);\n  min-height: 30px;\n}\n\n.extra-network-cards .card:hover .overlay {\n  background: rgba(0, 0, 0, 0.70);\n}\n\n.extra-network-cards .card:hover .preview {\n  box-shadow: none;\n  filter: grayscale(100%);\n}\n\n.extra-network-cards .card .tags {\n  background: var(--background-fill-primary);\n  opacity: 0.95;\n  display: none;\n  max-height: 333px;\n  overflow-wrap: anywhere;\n  overflow-x: hidden;\n  overflow-y: auto;\n  position: absolute;\n  top: 100%;\n  z-index: 20;\n}\n\n.extra-network-cards .card .tag {\n  background: var(--button-primary-background-fill-hover);\n  cursor: pointer;\n  display: inline-block;\n  font-size: 0.9em !important;\n  margin: 2px;\n  padding: 2px;\n}\n\n.extra-network-cards .card .actions>span {\n  font-size: 34px !important;\n  padding: 4px;\n}\n\n.extra-network-cards .card .actions>span:hover {\n  color: var(--highlight-color);\n}\n\n.extra-network-cards .card .version {\n  background: gray;\n  font-weight: bolder;\n  right: 0;\n  line-height: 0.9rem;\n  margin: 4px;\n  opacity: 75%;\n  padding: 2px;\n  position: absolute;\n  text-shadow: 1px 1px black;\n  text-transform: uppercase;\n  top: 0;\n}\n\n.extra-network-cards .card:hover .actions {\n  display: block;\n}\n\n.extra-network-cards .card:hover .tags {\n  display: block;\n}\n\n.extra-network-cards .card:hover {\n  z-index: 100;\n  position: relative;\n}\n\n.extra-network-cards .card:hover .tags {\n  display: block;\n  z-index: 101;  /* Optional: ensure tags are above everything */\n}\n\n.extra-network-cards .card:has(>img[src*=\"missing.png\"])::before {\n  background-color: var(--data-color);\n  content: '';\n  height: 100%;\n  mix-blend-mode: multiply;\n  position: absolute;\n  width: 100%;\n}\n\n.extra-network-cards .card .actions {\n  background: rgba(0, 0, 0, 0.40);\n  cursor: pointer;\n  display: none;\n  font-size: 3em;\n  font-variant: unicase;\n  height: 0.7em;\n  position: absolute;\n  right: 0;\n  text-align-last: right;\n  width: 100%;\n  z-index: 80;\n}\n\n.extra-network-cards .card-list {\n  background: var(--input-background-fill);\n  border-radius: var(--button-large-radius);\n  cursor: pointer;\n  display: flex;\n  margin: 0.3em;\n  padding: 0.3em;\n}\n\n.extra-network-cards .card-list .tag {\n  color: var(--primary-500);\n  margin-left: 0.8em;\n}\n\n.extra-details-close {\n  background: var(--button-secondary-background-fill) !important;\n  position: fixed;\n  right: 0.2em;\n  top: 0.2em;\n  z-index: 99;\n}\n\n.extra-details-tabs textarea, .extra-details-tabs .gradio-json {\n  max-height: 15vh;\n  overflow-y: scroll !important;\n  scrollbar-width: unset !important;\n}\n\n.extra-details-text .form {\n  display: block;\n  overflow-x: hidden;\n  overflow-y: scroll;\n}\n\n.extra-description {\n  max-height: 63px;\n  overflow-y: auto !important;\n}\n\n.extra-description>label>textarea {\n  font-size: var(--text-xs);\n  height: 6em;\n}\n\n.extra-details {\n  border: var(--block-border-width) solid var(--highlight-color) !important;\n  bottom: 50%;\n  box-shadow: var(--button-shadow);\n  left: 50%;\n  padding: 0.8em;\n  position: fixed;\n  transform: translate(-50%, 50%);\n  z-index: 100;\n}\n\n.extra-details>div {\n  align-self: flex-start;\n  max-height: 80vh;\n  min-height: 40vh;\n  overflow-y: auto;\n}\n\n.extra-details td:first-child {\n  font-weight: bold;\n  vertical-align: top;\n}\n\n.extra-details .gradio-image {\n  max-height: 50vh;\n}\n\n.network-folder::before {\n  content: \"󰉖 \";\n  margin-right: 0.8em;\n}\n\n.network-reference {\n  filter: contrast(0.9);\n}\n\n.network-reference::before {\n  content: \"󰴊 \";\n  margin-right: 0.8em;\n}\n\n.network-model {\n  opacity: 0.6;\n}\n\n.network-model::before {\n  content: \"󰴉 \";\n  margin-right: 0.8em;\n}\n\n.input-accordion-checkbox {\n  display: none !important;\n}\n\n#modelmerger_interp_description {\n  margin-bottom: 1em;\n  margin-top: 1em;\n}\n\n#scripts_alwayson_txt2img, #scripts_alwayson_img2img {\n\n  padding: 0\n}\n\n#scripts_alwayson_txt2img>.label-wrap, #scripts_alwayson_img2img>.label-wrap {\n  background: var(--input-background-fill);\n  border-radius: var(--radius-lg);\n  margin: 0;\n  padding: 0;\n}\n\n#scripts_alwayson_txt2img>.label-wrap>span, #scripts_alwayson_img2img>.label-wrap>span {\n  padding: var(--spacing-xxl);\n}\n\n#scripts_alwayson_txt2img div {\n  max-width: var(--left-column);\n}\n\n#script_txt2img_agent_scheduler {\n  display: none;\n}\n\n#refresh_tac_refreshTempFiles {\n  display: none;\n}\n\n#train_tab {\n  flex-flow: row-reverse;\n}\n\n#models_tab {\n  flex-flow: row-reverse;\n}\n\n#swap_axes>button {\n  font-size: var(--text-md);\n  min-width: 100px;\n}\n\n#ui_defaults_review {\n  margin: 1em;\n}\n\n.ar-dropdown {\n  align-content: center;\n  font-size: 0.9em;\n  margin: 0 !important;\n  max-width: 5.5em !important;\n  min-width: 5.5em !important;\n  padding: 0 !important;\n}\n\n.ar-dropdown div {\n  margin: 0;\n\nbackground: var(--background-color)\n}\n\n#txt2img_sampler_timesteps, #img2img_sampler_timesteps {\n  max-width: calc(var(--left-column) - 50px);\n}\n\n.extras {\n\n  gap: 0.2em 1em !important\n}\n\n#extras_generate, #extras_interrupt, #extras_skip {\n  display: block !important;\n  height: 36px;\n  position: relative;\n}\n\n#extras_upscale {\n\n  margin-top: 10px\n}\n\n#pnginfo_html_info .gradio-html>div {\n  margin: 0.5em;\n}\n\n#models_image, #models_image>div {\n  min-height: 0;\n}\n\n#model_loader_df button {\n  display: none !important;\n}\n\n#model_loader_df table td:first-child {\n  display: none;\n}\n\n#model_loader_df table th:first-child {\n  display: none;\n}\n\n#model_loader_df table td:nth-child(2) {\n  font-weight: bold;\n}\n\n#model_loader_df table td:nth-child(3) {\n  color: pink;\n}\n\n.log-monitor {\n  display: none;\n  font-family: monospace;\n  font-size: var(--text-xxs);\n  justify-content: unset !important;\n  margin-top: auto;\n  overflow: hidden;\n  padding: 0;\n}\n\n.log-monitor td, .log-monitor th {\n  padding-left: 1em;\n}\n\n.md h2 {\n  background-color: var(--background-fill-primary);\n  padding: 0.5em;\n}\n\n.md ul {\n  list-style-type: square !important;\n  margin-left: 4em;\n  text-indent: 1em;\n}\n\n.md li {\n  list-style-position: outside !important;\n  text-indent: 0;\n}\n\n.md p {\n  margin-left: 2em;\n}\n\n.folder-selector textarea {\n  height: 2em !important;\n  padding: 6px !important;\n}\n\n.gpu {\n  background: var(--background-fill-primary);\n  border: 1px solid var(--button-primary-border-color);\n  bottom: 10px;\n  color: var(--button-primary-text-color);\n  display: none;\n  font-family: monospace;\n  padding: 6px;\n  position: fixed;\n  right: 10px;\n  z-index: 1000;\n}\n\n#control_input_type {\n  max-width: 18em\n}\n\n#control_settings .small-accordion .form {\n\n  min-width: 350px !important\n}\n\n#control_script_container {\n  border-color: var(--highlight-color);\n  border-style: solid;\n  border-width: 2px 0 0 0;\n  display: block;\n  margin-top: 1em;\n}\n\n.control-button {\n  line-height: 1em;\n  max-height: 42px;\n  min-height: 42px;\n}\n\n.control-tabs>.tab-nav {\n  margin-bottom: 0;\n  margin-top: 0;\n}\n\n.control-unit {\n  margin-top: -10px !important;\n  padding: 0 !important;\n}\n\n.control-unit>.label-wrap {\n  margin-bottom: 0 !important;\n}\n\n.control-settings {\n  border-style: solid !important;\n  border-top: var(--button-primary-border-color) !important;\n  border-width: var(--block-border-width) !important;\n  margin-top: 1em !important;\n}\n\n.processor-settings {\n  max-width: 300px;\n  padding: 0 !important;\n}\n\n.processor-group>div {\n  flex-flow: wrap;\n  gap: 1em;\n}\n\n.control-unit .gradio-button.tool {\n  align-self: baseline;\n  margin-top: 2rem;\n}\n\n.main-info {\n  color: var(--body-text-color-subdued);\n  font-weight: var(--section-header-text-weight);\n  line-height: var(--line-lg) !important;\n  margin-top: 2em !important;\n  padding: 1em !important;\n}\n\n.update-status {\n  line-height: 1.5em;\n  margin: 1em;\n}\n\n#tab-gallery-folders {\n  width: max-content;\n}\n\n#tab-gallery-files gallery-file {\n  /* Add a vertical gutter between items (left/right), matching existing small row spacing */\n  display: inline-block;\n  margin-right: 0.2em;\n  vertical-align: top; /* keep rows aligned on the top edge */\n}\n\n#tab-gallery-files {\n  display: block;\n  height: 75vh;\n  overflow-x: hidden !important;\n  overflow-y: auto !important;\n}\n\n#tab-gallery-image {\n  height: 100%;\n}\n\n#tab-gallery-search {\n  padding: 0;\n}\n\n#tab-gallery-search textarea {\n  align-content: center;\n  height: 42px !important;\n}\n\n#tab-gallery-sortby {\n  padding: 0;\n}\n\n#tab-gallery-status {\n  align-content: center;\n  background: var(--input-background-fill);\n  color: var(--block-title-text-color);\n  margin-left: -0.6em;\n  padding-right: 1em;\n  text-align: right;\n}\n\ndiv:has(>#tab-gallery-folders) {\n  background-color: var(--input-background-fill);\n  flex-grow: 0 !important;\n  min-width: max-content !important;\n}\n\n.gallery-separator {\n  cursor: cell;\n  padding: 8px;\n  background-color: var(--input-background-fill);\n  border-radius: var(--radius-lg);\n  max-width: 100%;\n}\n\n.gallery-separator:hover {\n  background-color: var(--button-primary-background-fill-hover);\n}\n\n.gallery-separator-arrow {\n  display: inline-block;\n  transition: transform 0.2s ease-in-out;\n  flex-shrink: 0;\n  color: var(--block-title-text-color);\n}\n\n.gallery-separator-name {\n  flex: 1;\n  min-width: 0;\n  max-width: 300px;\n  overflow: hidden;\n  text-overflow: ellipsis;\n  white-space: nowrap;\n  margin-left: 8px;\n  margin-right: 8px;\n}\n\n.gallery-separator-count {\n  color: var(--color-accent);\n  font-size: 0.9em;\n  flex-shrink: 0;\n  margin-left: auto;\n}\n\n#html_log_gallery {\n  font-size: 0.95em;\n}\n\n#gallery_gallery {\n  height: 63vh;\n}\n\n#gallery_gallery .thumbnails {\n  display: none;\n}\n\n#gallery_gallery .preview {\n  background: none;\n}\n\n#gallery_gallery img {\n  height: 100% !important;\n  object-fit: contain;\n}\n\n/* Gallery video preview matches image preview sizing and layout */\n#tab-gallery-video {\n  height: 63vh;\n}\n\n/* Ensure the <video> element fills the preview column and preserves aspect */\n#tab-gallery-video video {\n  width: 100%;\n  height: 100% !important;\n  object-fit: contain;\n  background: none;\n}\n\n/* Gradio container around the video should not add extra spacing */\n#tab-gallery-video .wrap {\n  height: 100%;\n}\n\n.gallery-sort {\n  background: var(--input-background-fill) !important;\n  margin: 0 !important;\n  padding: 6px !important;\n}\n\n.gallery-sort:hover {\n  background: var(--button-primary-background-fill-hover) !important;\n}\n\n#changelog_markdown {\n  margin-top: 1em;\n  max-height: 55vh;\n}\n\n#changelog_result {\n  align-items: center;\n  display: flex;\n  margin-left: 1em;\n}\n\n.changelog_arrow {\n  background-color: var(--button-secondary-background-fill);\n  cursor: pointer;\n  font-size: 2em;\n  height: 1em;\n  padding: 0.1em;\n}\n\n.changelog_arrow:hover {\n  background-color: var(--button-primary-border-color-hover);\n}\n\n.changelog_highlight {\n  background-color: var(--color-warning);\n}\n\n#wiki_result>div>div {\n  margin-right: 2em;\n  padding: 0.5em;\n}\n\n#wiki_result li {\n  display: block;\n}\n\n#wiki_result h3 {\n  background-color: var(--background-fill-primary);\n  margin: 0;\n  margin-bottom: 0.2em;\n  padding: 0.3em;\n}\n\n.splash {\n  position: fixed;\n  top: 0;\n  left: 0;\n  width: 100vw;\n  height: 100vh;\n  z-index: 1000;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n  background-color: rgba(0, 0, 0, 0.8);\n}\n\n.motd {\n  margin-top: 1em;\n  color: var(--body-text-color-subdued);\n  font-family: monospace;\n  font-variant: all-petite-caps;\n  font-size: 1.2em;\n}\n\n.splash-img {\n  margin: 10% auto 0 auto;\n  width: 512px;\n  height: 512px;\n  background-repeat: no-repeat;\n  animation: hue 5s infinite alternate;\n}\n\n.loading {\n  color: white;\n  left: 50%;\n  position: absolute;\n  top: 20%;\n  transform: translateX(-50%);\n}\n\n.loader {\n  animation: spin 4s linear infinite, hue 5s infinite alternate;\n  border: var(--spacing-md) solid transparent;\n  border-radius: 50%;\n  border-top: var(--spacing-md) solid var(--sd-main-accent-color);\n  height: 300px;\n  position: relative;\n  width: 300px;\n}\n\n.loader::before, .loader::after {\n  border: var(--spacing-md) solid transparent;\n  border-radius: 50%;\n  bottom: 6px;\n  content: \"\";\n  left: 6px;\n  position: absolute;\n  right: 6px;\n  top: 6px;\n}\n\n.loader::before {\n  animation: 3s spin linear infinite, hue 5s infinite alternate;\n  border-top-color: var(--sd-main-accent-color);\n  filter: brightness(50%);\n}\n\n.loader::after {\n  animation: spin 1.5s linear infinite, hue 5s infinite alternate;\n  border-top-color: var(--sd-main-accent-color);\n  filter: brightness(150%);\n}\n\n.docs-search textarea {\n  height: 1em !important;\n  resize: none !important\n}\n\n.github-result, #docs_result {\n  max-height: 38vh;\n  overflow-y: auto;\n}\n\n.github-result a {\n  margin: 0;\n  padding: 0;\n  background-color: unset !important;\n}\n\n.github-result h3, .github-md h3 {\n  margin: 0;\n  padding: 0;\n  font-size: 1.1em;\n}\n\n.github-page {\n  background-color: var(--background-fill-primary);\n  margin: 1em 0 0.2em 0;\n  border-radius: var(--radius-lg);\n  padding: 4px;\n  font-size: 1em;\n  font-weight: 400;\n  cursor: help;\n}\n\n.github-result li {\n  font-size: 0.9em;\n  display: ruby;\n  filter: brightness(0.5);\n}\n\n.github-md, .docs-md {\n  padding: 0.2em;\n}\n\n.docs-card {\n  margin: 1em 0;\n  background-color: var(--background-fill-primary);\n  cursor: help;\n  padding: 0.5em;\n}\n\n.docs-card-title {\n  font-size: 1.2em;\n  line-height: 1.6em;\n  color: var(--button-primary-background-fill) !important;\n}\n\n.docs-card-h1 {\n  font-weight: bold;\n  font-size: 1.0em;\n}\n\n.docs-card-h2 {\n  font-size: 1.0em;\n  max-height: 4em;\n  overflow: hidden;\n}\n\n.docs-card-footer {\n  display: flex;\n  justify-content: space-between;\n  filter: brightness(0.5);\n  font-size: 0.9em;\n  margin-top: 0.2em;\n}\n\n#model_desc {\n  overflow: auto;\n}\n\n#model_list_table {\n  overflow: auto;\n  max-height: 50vh;\n}\n\n#civit_metadata {\n    overflow: auto;\n}\n\n.model-config {\n  font-size: 0.8em !important;\n  opacity: 0.8;\n  max-height: 6em;\n  overflow-y: auto;\n}\n\n.simple-table tr {\n  vertical-align: baseline;\n}\n\n.simple-table td {\n  padding: 0.2em !important;\n}\n\n.simple-table tr {\n  vertical-align: baseline;\n}\n\n.simple-table thead tr {\n  background-color: var(--button-primary-border-color) !important;\n}\n\n.simple-table tr:nth-child(odd) {\n  background-color: var(--neutral-900);\n}\n\n.simple-table td {\n  padding: 0.2em !important;\n  white-space: pre-wrap;\n}\n\n.simple-table td div {\n  padding: 0.2em !important;\n  white-space: pre-wrap;\n  max-height: 7em;\n  overflow-x: hidden;\n  overflow-y: auto;\n}\n\n.simple-table td:nth-child(1) {\n  color: var(--button-primary-border-color);\n  font-weight: bold;\n}\n\n.div-link {\n  cursor: pointer;\n}\n\n.div-link:hover {\n  background-color: var(--button-primary-background-fill);\n}\n\n.video-model-link {\n  color: var(--button-primary-background-fill);\n  font-weight: normal;\n}\n\n.controlnet-controls .styler {\n  display: flex;\n  flex-direction: row;\n  justify-self: flex-start;\n}\n\n.controlnet-controls .styler .form {\n  display: flex;\n  flex-flow: nowrap;\n  flex: none;\n}\n\n#civitai_token textarea, #hf_token textarea, #setting_huggingface_token textarea {\n  filter: blur(4px);\n}\n\n#civitai_token textarea:hover, #hf_token textarea:hover, #setting_huggingface_token textarea:hover,\n#civitai_token textarea:focus, #hf_token textarea:focus, #setting_huggingface_token textarea:focus {\n  filter: blur(0);\n}\n\n@keyframes spin {\n  from {\n    transform: rotate(0deg);\n  }\n  to {\n    transform: rotate(360deg);\n  }\n}\n\n@keyframes hue {\n  0% {\n    filter: hue-rotate(0deg);\n  }\n  100% {\n    filter: hue-rotate(360deg);\n  }\n}\n\n:root, .light, .dark {\n  --spacing-lg: 5px;\n  --spacing-md: 4px;\n  --spacing-sm: 3px;\n  --spacing-xl: 6px;\n  --spacing-xs: 2px;\n  --spacing-xxl: 7px;\n  --spacing-xxs: 1px;\n  --text-lg: 15px;\n  --text-md: 14px;\n  --text-sm: 12px;\n  --text-xl: 16px;\n  --text-xs: 10px;\n  --text-xxl: 17px;\n  --text-xxs: 9px;\n}\n\n@media (hover: none) and (pointer: coarse) {\n  @media (max-width: 1024px) {\n    @media (max-width: 399px) {\n      :root, .light, .dark {\n        --left-column: 100%;\n      }\n\n      #txt2img_results, #img2img_results, #extras_results {\n        min-width: calc(min(320px, 100%)) !important;\n      }\n      #txt2img_footer p {\n        text-wrap: wrap;\n      }\n    }\n\n    @media (min-width: 400px) {\n      :root, .light, .dark {\n        --left-column: 50%;\n      }\n\n      #txt2img_results, #extras_results, #txt2im g_footer p {\n        max-width: 100% !important;\n        text-wrap: wrap;\n      }\n    }\n\n    #scripts_alwayson_txt2img div, #scripts_alwayson_img2img div {\n      max-width: 100%;\n    }\n\n    #txt2img_prompt_container, #img2img_prompt_container, #control_prompt_container, #video_prompt_container {\n      resize: vertical !important;\n    }\n\n    #txt2img_generate_box, #txt2img_enqueue_wrapper {\n      min-width: 100% !important;\n    }\n    #img2img_toprow>div.gradio-column {\n      flex-grow: 1 !important;\n    }\n    #img2img_actions_column {\n      align-items: center;\n      display: flex;\n      flex-direction: row;\n      justify-content: space-evenly;\n      min-width: fit-content !important;\n    }\n\n    #txt2img_generate_box, #img2img_generate_box, #txt2img_enqueue_wrapper, #img2img_enqueue_wrapper {\n      align-items: stretch;\n      display: flex;\n      flex-direction: column;\n      height: 4em !important;\n      justify-content: space-evenly;\n    }\n\n    #img2img_interface, #img2img_results, #img2img_footer p {\n      max-width: 100% !important;\n      min-width: 100% !important;\n      text-wrap: wrap;\n    }\n    #txt2img_sampler, #txt2img_batch, #txt2img_seed_group, #txt2img_advanced, #img2img_sampling_group, #img2img_resize_group, #img2img_batch_group, #img2img_seed_group, #img2img_denoise_group, #img2img_advanced_group {\n      width: 100% !important;\n    }\n\n    #img2img_resize_group .gradio-radio>div {\n      display: flex;\n      flex-direction: column;\n      width: unset !important;\n    }\n\n    #inpaint_controls div {\n      display: flex;\n      flex-direction: row;\n    }\n\n    #inpaint_controls .gradio-radio>div {\n      display: flex;\n      flex-direction: column !important;\n    }\n\n    #models_tab {\n      flex-direction: column-reverse !important;\n    }\n\n    #enqueue_keyboard_shortcut_modifiers, #enqueue_keyboard_shortcut_key div {\n      max-width: 40% !important;\n    }\n    #settings {\n      display: flex;\n      flex-direction: row;\n      flex-wrap: wrap;\n      max-width: 100% !important;\n    }\n    #settings div.tab-content>div>div>div {\n      max-width: 80% !important;\n    }\n\n    #settings div .gradio-radio {\n      width: unset !important;\n    }\n\n    #tab_extensions table {\n      border-collapse: collapse;\n      display: block;\n      overflow-x: auto !important;\n    }\n    ::-webkit-scrollbar {\n      height: 25px;\n      width: 25px !important;\n    }\n    .gradio-dropdown ul.options {\n      max-height: 41vh !important;\n    }\n    .gradio-dropdown ul.options li.item {\n      align-items: center;\n      display: flex;\n      height: 40px !important;\n    }\n\n    .gradio-slider input[type=\"number\"] {\n      font-size: var(--text-xs);\n      height: 16px;\n      text-align: center;\n      width: 4em;\n    }\n    #txt2img_settings .block .padded:not(.gradio-accordion) {\n      margin-right: 0;\n      min-width: 100% !important;\n      padding: 0 !important;\n      width: 100% !important;\n    }\n\n    #script_txt2img_prompts_from_file_prompt_txt, #script_img2img_prompts_from_file_prompt_txt, #script_control2img_prompts_from_file_prompt_txt {\n      resize: vertical !important;\n    }\n  }\n}\n"
  },
  {
    "path": "javascript/setHints.js",
    "content": "const allLocales = ['en', 'de', 'es', 'fr', 'it', 'ja', 'ko', 'pt', 'hr', 'ru', 'zh'];\nconst localeData = {\n  prev: null,\n  locale: null,\n  data: [],\n  timeout: null,\n  finished: false,\n  initial: true,\n  type: 2,\n  hint: null,\n  btn: null,\n  expandTimeout: null, // Property for expansion timeout\n  currentElement: null, // Track current element for expansion\n  observer: null, // MutationObserver for DOM changes\n};\nlet localeTimeout = null;\nconst isTouchDevice = 'ontouchstart' in window;\n\nasync function cycleLocale() {\n  clearTimeout(localeTimeout);\n  localeTimeout = setTimeout(() => {\n    log('cycleLocale', localeData.prev, localeData.locale);\n    const index = allLocales.indexOf(localeData.prev);\n    localeData.locale = allLocales[(index + 1) % allLocales.length];\n    localeData.btn.innerText = localeData.locale;\n    // localeData.btn.style.backgroundColor = localeData.locale !== 'en' ? 'var(--primary-500)' : '';\n    localeData.finished = false;\n    localeData.data = [];\n    localeData.prev = localeData.locale;\n    window.opts.ui_locale = localeData.locale;\n    setHints(); // eslint-disable-line no-use-before-define\n  }, 250);\n}\n\nasync function resetLocale() {\n  clearTimeout(localeTimeout); // Prevent the single click logic\n  localeData.locale = 'en';\n  log('resetLocale', localeData.locale);\n  const index = allLocales.indexOf(localeData.locale);\n  localeData.locale = allLocales[(index) % allLocales.length];\n  localeData.btn.innerText = localeData.locale;\n  localeData.finished = false;\n  localeData.data = [];\n  window.opts.ui_locale = localeData.locale;\n  setHints(); // eslint-disable-line no-use-before-define\n}\n\nasync function tooltipCreate() {\n  localeData.hint = document.createElement('div');\n  localeData.hint.className = 'tooltip';\n  localeData.hint.id = 'tooltip-container';\n  localeData.hint.innerText = 'this is a hint';\n  gradioApp().appendChild(localeData.hint);\n  localeData.btn = gradioApp().getElementById('locale-container');\n  if (!localeData.btn) {\n    localeData.btn = document.createElement('div');\n    localeData.btn.className = 'locale';\n    localeData.btn.id = 'locale-container';\n    gradioApp().appendChild(localeData.btn);\n  }\n  localeData.btn.innerText = localeData.locale;\n  localeData.btn.ondblclick = resetLocale;\n  localeData.btn.onclick = cycleLocale;\n  if (window.opts.tooltips === 'None') localeData.type = 0;\n  if (window.opts.tooltips === 'Browser default') localeData.type = 1;\n  if (window.opts.tooltips === 'UI tooltips') localeData.type = 2;\n\n  if (localeData.type === 2) { // setup event delegation for tooltips instead of individual listeners\n    if (isTouchDevice) {\n      gradioApp().addEventListener('touchstart', tooltipShowDelegated); // eslint-disable-line no-use-before-define\n      gradioApp().addEventListener('touchend', tooltipHideDelegated); // eslint-disable-line no-use-before-define\n    }\n    gradioApp().addEventListener('pointerover', tooltipShowDelegated); // eslint-disable-line no-use-before-define\n    gradioApp().addEventListener('pointerout', tooltipHideDelegated); // eslint-disable-line no-use-before-define\n  }\n  if (!localeData.observer) initializeDOMObserver(); // eslint-disable-line no-use-before-define\n}\n\nasync function expandTooltip(element, longHint) {\n  if (localeData.currentElement === element && localeData.hint.classList.contains('tooltip-show')) {\n    const ring = localeData.hint.querySelector('.tooltip-progress-ring');\n    if (ring) ring.style.opacity = '0';\n    localeData.hint.classList.add('tooltip-expanded');\n    setTimeout(() => {\n      const longContent = localeData.hint.querySelector('.long-content');\n      if (longContent) longContent.classList.add('show');\n    }, 100);\n  }\n}\n\nasync function tooltipShowDelegated(e) { // use event delegation to handle dynamically created elements\n  if (e.target.dataset && e.target.dataset.hint) tooltipShow(e); // eslint-disable-line no-use-before-define\n}\n\nasync function tooltipHideDelegated(e) {\n  if (e.target.dataset && e.target.dataset.hint) tooltipHide(e); // eslint-disable-line no-use-before-define\n}\n\nasync function tooltipShow(e) {\n  if (localeData.expandTimeout) { // clear any existing expansion timeout\n    clearTimeout(localeData.expandTimeout);\n    localeData.expandTimeout = null;\n  }\n\n  localeData.hint.classList.remove('tooltip-expanded'); // remove expanded class and reset current element\n  localeData.currentElement = e.target;\n\n  if (e.target.dataset.hint) {\n    const progressRing = ` // create progress ring SVG\n      <div class=\"tooltip-progress-ring\">\n        <svg viewBox=\"0 0 12 12\">\n          <circle class=\"ring-background\" cx=\"6\" cy=\"6\" r=\"5\"></circle>\n          <circle class=\"ring-progress\" cx=\"6\" cy=\"6\" r=\"5\"></circle>\n        </svg>\n      </div>\n    `;\n    // set up the complete content structure from the start\n    let content = `\n      <div class=\"tooltip-header\">\n        <b>${e.target.textContent}</b>\n        ${e.target.dataset.longHint ? progressRing : ''}\n      </div>\n      <div class=\"separator\"></div>\n      ${e.target.dataset.hint}\n    `;\n    if (e.target.dataset.longHint) content += `<div class=\"long-content\"><div class=\"separator\"></div>${e.target.dataset.longHint}</div>`; // add long content if available, but keep it hidden\n    if (e.target.dataset.reload) { // add reload notice if needed\n      const reloadType = e.target.dataset.reload;\n      let reloadText = '';\n      if (reloadType === 'model') reloadText = 'Requires model reload';\n      else if (reloadType === 'server') reloadText = 'Requires server restart';\n      if (reloadText) {\n        content += `\n          <div class=\"tooltip-reload-notice\">\n            <div class=\"separator\"></div>\n            <span class=\"tooltip-reload-text\">${reloadText}</span>\n          </div>\n        `;\n      }\n    }\n\n    localeData.hint.innerHTML = content;\n    localeData.hint.classList.add('tooltip-show');\n\n    if (e.clientX > window.innerWidth / 2) localeData.hint.classList.add('tooltip-left');\n    else localeData.hint.classList.remove('tooltip-left');\n\n    if (e.target.dataset.longHint) { // set up expansion timer if long hint is available\n      const ring = localeData.hint.querySelector('.tooltip-progress-ring'); // start progress ring animation\n      const ringProgress = localeData.hint.querySelector('.ring-progress');\n      if (ring && ringProgress) {\n        setTimeout(() => {\n          ring.classList.add('active');\n          ringProgress.classList.add('animate');\n        }, 100);\n      }\n      localeData.expandTimeout = setTimeout(() => expandTooltip(e.target, e.target.dataset.longHint), 3000);\n    }\n  }\n}\n\nasync function tooltipHide(e) {\n  if (localeData.expandTimeout) {\n    clearTimeout(localeData.expandTimeout);\n    localeData.expandTimeout = null;\n  }\n  localeData.hint.classList.remove('tooltip-show', 'tooltip-expanded');\n  localeData.currentElement = null;\n}\n\nasync function validateHints(json, elements, tab) {\n  json.missing = [];\n  const data = Object.values(json).flat().filter((e) => e.hint.length > 0);\n  for (const e of data) e.label = e.label.trim();\n  if (tab) {\n    elements = elements.filter((el) => el.closest(`#${tab}_tabitem`)); // include only elements within specified tab\n    elements = elements.filter((el) => !el.closest(`#${tab}_scripts_tabitem`));\n  }\n  let original = elements.map((e) => e.textContent.toLowerCase().trim()).sort(); // should be case sensitive\n  let duplicateUI = original.filter((e, i, a) => a.indexOf(e.toLowerCase()) !== i).sort();\n  original = [...new Set(original)]; // remove duplicates\n  duplicateUI = [...new Set(duplicateUI)]; // remove duplicates\n  const current = data.map((e) => e.label.toLowerCase().trim()).sort(); // should be case sensitive\n  // log('all elements:', original);\n  // log('all hints:', current);\n  log('hints-differences', { elements: original.length, hints: current.length });\n  const missingHints = original.filter((e) => !current.includes(e.toLowerCase())).sort();\n  const orphanedHints = current.filter((e) => !original.includes(e.toLowerCase())).sort();\n  const duplicateHints = current.filter((e, i, a) => a.indexOf(e.toLowerCase()) !== i).sort();\n  log('duplicate hints:', duplicateHints);\n  log('duplicate labels:', duplicateUI);\n  return [missingHints, orphanedHints];\n}\n\nasync function addMissingHints(json, missingHints) {\n  if (missingHints.length === 0) return;\n  json.missing = [];\n  for (const h of missingHints.sort()) {\n    if (h.length <= 1) continue;\n    json.missing.push({ id: '', label: h, localized: '', hint: h, longHint: '' }); // Add longHint property\n  }\n  log('missing hints', missingHints);\n  log('added missing hints:', { missing: json.missing });\n}\n\nasync function removeOrphanedHints(json, orphanedHints) {\n  const data = Object.values(json).flat().filter((e) => e.hint.length > 0);\n  for (const e of data) e.label = e.label.trim();\n  const orphaned = data.filter((e) => orphanedHints.includes(e.label.toLowerCase()));\n  log('orphaned hints:', { orphaned });\n}\n\nasync function replaceButtonText(el) {\n  // https://www.nerdfonts.com/cheat-sheet\n  // use unicode of icon with format nf-md-<icon>_circle\n  const textIcons = {\n    Generate: '\\uf144',\n    Enqueue: '\\udb81\\udc17',\n    Stop: '\\udb81\\ude66',\n    Skip: '\\udb81\\ude61',\n    Pause: '\\udb80\\udfe5',\n    Restore: '\\udb82\\udd9b',\n    Clear: '\\udb80\\udd59',\n    Networks: '\\uf261',\n  };\n  if (textIcons[el.innerText]) {\n    el.classList.add('button-icon');\n    el.innerText = textIcons[el.innerText];\n  }\n}\n\nasync function getLocaleData(desiredLocale = null) {\n  if (desiredLocale) desiredLocale = desiredLocale.split(':')[0];\n  if (desiredLocale === 'Auto') {\n    try {\n      localeData.locale = navigator.languages && navigator.languages.length ? navigator.languages[0] : navigator.language;\n      localeData.locale = localeData.locale.split('-')[0];\n      localeData.prev = localeData.locale;\n    } catch (e) {\n      localeData.locale = 'en';\n      log('getLocale', e);\n    }\n  } else {\n    localeData.locale = desiredLocale || 'en';\n    localeData.prev = localeData.locale;\n  }\n  log('getLocale', desiredLocale, localeData.locale);\n  // primary\n  let json = {};\n  try {\n    let res = await fetch(`${window.subpath}/file=html/locale_${localeData.locale}.json`);\n    if (!res || !res.ok) {\n      localeData.locale = 'en';\n      res = await fetch(`${window.subpath}/file=html/locale_${localeData.locale}.json`);\n    }\n    json = await res.json();\n  } catch { /**/ }\n\n  try {\n    const res = await fetch(`${window.subpath}/file=html/override_${localeData.locale}.json`);\n    if (res && res.ok) json.override = await res.json();\n  } catch { /**/ }\n\n  return json;\n}\n\nasync function replaceTextContent(el, text) {\n  if (el.children.length === 1 && el.firstElementChild.classList.contains('mask-icon')) return;\n  if (el.querySelector('span')) el = el.querySelector('span');\n  if (el.querySelector('div')) el = el.querySelector('div');\n  if (el.classList.contains('mask-icon')) return; // skip icon buttons\n  if (el.dataset.selector) { // replace on rehosted child if exists\n    el = el.firstElementChild || el.querySelector(el.dataset.selector);\n    replaceTextContent(el, text);\n    return;\n  }\n  el.textContent = text;\n}\n\nasync function setHint(el, entry) {\n  if (localeData.type === 1) {\n    el.title = entry.hint;\n  } else if (localeData.type === 2) {\n    el.dataset.hint = entry.hint;\n    if (entry.longHint && entry.longHint.length > 0) el.dataset.longHint = entry.longHint;\n    if (entry.reload && entry.reload.length > 0) el.dataset.reload = entry.reload;\n  } else {\n    // tooltips disabled\n  }\n}\n\nasync function setHints(analyze = false) {\n  let json = {};\n  let overrideData = [];\n  if (localeData.finished) return;\n  if (Object.keys(opts).length === 0) return;\n  const elements = [\n    ...Array.from(gradioApp().querySelectorAll('button')),\n    ...Array.from(gradioApp().querySelectorAll('h2')),\n    ...Array.from(gradioApp().querySelectorAll('label > span')),\n    ...Array.from(gradioApp().querySelectorAll('.label-wrap > span')),\n  ];\n  if (elements.length === 0) return;\n  if (localeData.data.length === 0) {\n    json = await getLocaleData(window.opts.ui_locale);\n    overrideData = Object.values(json.override || {}).flat().filter((e) => e.hint.length > 0);\n    const jsonData = Object.values(json).flat().filter((e) => e.hint.length > 0);\n    localeData.data = [...overrideData, ...jsonData];\n  }\n  if (!localeData.hint) tooltipCreate();\n  let localized = 0;\n  let hints = 0;\n  const t0 = performance.now();\n  for (const el of elements) {\n    // localize elements text\n    let found;\n    if (el.dataset.original) found = localeData.data.find((l) => l.label.toLowerCase().trim() === el.dataset.original.toLowerCase().trim());\n    else found = localeData.data.find((l) => l.label.toLowerCase().trim() === el.textContent.toLowerCase().trim());\n    if (found?.localized?.length > 0) {\n      if (!el.dataset.original) el.dataset.original = el.textContent;\n      localized++;\n      replaceTextContent(el, found.localized);\n    } else if (found?.label && !localeData.initial && (localeData.locale === 'en')) { // reset to english\n      replaceTextContent(el, found.label);\n    }\n    // set hints\n    if (found?.hint?.length > 0) {\n      hints++;\n      setHint(el, found);\n    }\n  }\n  localeData.finished = true;\n  localeData.initial = false;\n  const t1 = performance.now();\n  // localeData.btn.style.backgroundColor = localeData.locale !== 'en' ? 'var(--primary-500)' : '';\n  log('touchDevice', isTouchDevice);\n  log('setHints', { type: localeData.type, locale: localeData.locale, elements: elements.length, localized, hints, data: localeData.data.length, override: overrideData.length, time: Math.round(t1 - t0) });\n  // sortUIElements();\n  if (analyze) {\n    log('analyzing hints', 'control_tabitem');\n    const [missingHints, orphanedHints] = await validateHints(json, elements);\n    await addMissingHints(json, missingHints);\n    await removeOrphanedHints(json, orphanedHints);\n  }\n}\n\nconst analyzeHints = async () => {\n  localeData.finished = false;\n  localeData.data = [];\n  await setHints(true);\n};\n\n// Apply hints to a single element immediately\nasync function applyHintToElement(el) {\n  if (!localeData.data || localeData.data.length === 0) return;\n  if (!el.textContent) return;\n\n  // check if element matches our selector criteria\n  const isValidElement = el.tagName === 'BUTTON'\n    || el.tagName === 'H2'\n    || (el.tagName === 'SPAN' && (el.parentElement?.tagName === 'LABEL' || el.parentElement?.classList.contains('label-wrap')));\n  if (!isValidElement) return;\n\n  let found; // find matching hint data\n  if (el.dataset.original) found = localeData.data.find((l) => l.label.toLowerCase().trim() === el.dataset.original.toLowerCase().trim());\n  else found = localeData.data.find((l) => l.label.toLowerCase().trim() === el.textContent.toLowerCase().trim());\n\n  if (found?.localized?.length > 0) { // apply localization if found\n    if (!el.dataset.original) el.dataset.original = el.textContent;\n    replaceTextContent(el, found.localized);\n  }\n\n  if (found?.hint?.length > 0) setHint(el, found); // apply hint if found\n}\n\n// Initialize MutationObserver for immediate hint application\nfunction initializeDOMObserver() {\n  if (localeData.observer) {\n    localeData.observer.disconnect();\n  }\n\n  localeData.observer = new MutationObserver((mutations) => {\n    // Process added nodes immediately\n    for (const mutation of mutations) {\n      if (mutation.type === 'childList') {\n        for (const node of mutation.addedNodes) {\n          if (node.nodeType === Node.ELEMENT_NODE) {\n            // Apply hints to the node itself\n            applyHintToElement(node);\n\n            // Apply hints to all relevant children\n            const elements = [\n              ...Array.from(node.querySelectorAll('button')),\n              ...Array.from(node.querySelectorAll('h2')),\n              ...Array.from(node.querySelectorAll('label > span')),\n              ...Array.from(node.querySelectorAll('.label-wrap > span')),\n            ];\n\n            // Include the node itself if it matches\n            if (node.matches && (\n              node.matches('button')\n              || node.matches('h2')\n              || node.matches('label > span')\n              || node.matches('.label-wrap > span')\n            )) {\n              elements.push(node);\n            }\n\n            // Apply hints immediately to all found elements\n            elements.forEach((el) => applyHintToElement(el));\n          }\n        }\n      }\n    }\n  });\n\n  // Start observing the entire gradio app for changes\n  const targetNode = gradioApp();\n  if (targetNode) {\n    localeData.observer.observe(targetNode, {\n      childList: true,\n      subtree: true,\n    });\n  }\n}\n\n// Export for external use if needed\nconst forceReapplyHints = () => setHints();\n"
  },
  {
    "path": "javascript/settings.js",
    "content": "let settingsInitialized = false;\nlet opts_metadata = {};\nconst opts_tabs = {};\n\nfunction getSettingsTabs() {\n  return gradioApp().querySelectorAll('#tab_settings .tabitem');\n}\n\nconst monitoredOpts = [\n  { sd_model_checkpoint: null },\n  { sd_backend: () => gradioApp().getElementById('refresh_sd_model_checkpoint')?.click() },\n];\n\nfunction monitorOption(option, callback) {\n  monitoredOpts.push({ [option]: callback });\n}\n\nconst AppyOpts = [\n  { compact_view: (val, old) => toggleCompact(val, old) },\n  { gradio_theme: (val, old) => setTheme(val, old) },\n  { font_size: (val, old) => setFontSize(val, old) },\n];\n\nasync function updateOpts(json_string) {\n  const t0 = performance.now();\n  const settings_data = JSON.parse(json_string);\n  const new_opts = settings_data.values;\n  opts_metadata = settings_data.metadata;\n\n  const t1 = performance.now();\n  for (const op of monitoredOpts) {\n    const [key, callback] = Object.entries(op)[0];\n    if (Object.hasOwn(opts, key) && opts[key] !== new_opts[key]) {\n      log('updateOpt', key, opts[key], new_opts[key]);\n      if (callback) callback(new_opts[key], opts[key]);\n    }\n  }\n\n  for (const op of AppyOpts) {\n    const [key, callback] = Object.entries(op)[0];\n    if (callback) callback(new_opts[key], opts[key]);\n  }\n\n  const t2 = performance.now();\n  window.opts = new_opts;\n  log('updateOpts', `settings=${Object.keys(new_opts).length} callbacks=${Math.round(t2 - t1)} apply=${Math.round(t1 - t0)}`);\n  Object.entries(opts_metadata).forEach(([opt, meta]) => {\n    if (!opts_tabs[meta.tab_name]) opts_tabs[meta.tab_name] = {};\n    if (!opts_tabs[meta.tab_name].unsaved_keys) opts_tabs[meta.tab_name].unsaved_keys = new Set();\n    if (!opts_tabs[meta.tab_name].saved_keys) opts_tabs[meta.tab_name].saved_keys = new Set();\n    if (!meta.is_stored) opts_tabs[meta.tab_name].unsaved_keys.add(opt);\n    else opts_tabs[meta.tab_name].saved_keys.add(opt);\n  });\n}\n\nfunction showAllSettings() {\n  // Try to ensure that the show all settings tab is opened by clicking on its tab button\n  // const tab_dirty_indicator = gradioApp().getElementById('modification_indicator_show_all_pages');\n  // if (tab_dirty_indicator && tab_dirty_indicator.nextSibling) tab_dirty_indicator.nextSibling.click();\n  getSettingsTabs().forEach((elem) => {\n    if (elem.id === 'settings_tab_licenses' || elem.id === 'settings_show_all_pages') return;\n    elem.style.display = 'block';\n  });\n}\n\nfunction markIfModified(setting_name, value) {\n  if (!opts_metadata[setting_name]) return;\n  const elem = gradioApp().getElementById(`modification_indicator_${setting_name}`);\n  if (!elem) return;\n  const previous_value = JSON.stringify(opts[setting_name]);\n  const current_value = JSON.stringify(value);\n  const changed_value = previous_value !== current_value;\n  if (changed_value) elem.title = `click to revert to previous value: ${previous_value}`;\n  const is_stored = opts_metadata[setting_name].is_stored;\n  if (is_stored) elem.title = 'custom value';\n  elem.disabled = !changed_value && !is_stored;\n  elem.classList.toggle('changed', changed_value);\n  elem.classList.toggle('saved', is_stored);\n\n  const { tab_name } = opts_metadata[setting_name];\n  if (!opts_tabs[tab_name].changed) opts_tabs[tab_name].changed = new Set();\n  const changed_items = opts_tabs[tab_name].changed;\n  if (changed_value) changed_items.add(setting_name);\n  else changed_items.delete(setting_name);\n  const unsaved = opts_tabs[tab_name].unsaved_keys;\n  const saved = opts_tabs[tab_name].saved_keys;\n\n  // Set the indicator on the tab nav element\n  const tab_nav_indicator = gradioApp().getElementById(`modification_indicator_${tab_name}`);\n  tab_nav_indicator.disabled = (changed_items.size === 0) && (unsaved.size === 0);\n  tab_nav_indicator.title = '';\n  tab_nav_indicator.classList.toggle('changed', changed_items.size > 0);\n  tab_nav_indicator.classList.toggle('saved', saved.size > 0);\n  if (changed_items.size > 0) tab_nav_indicator.title += `click to reset ${changed_items.size} unapplied changes in this tab\\n`;\n  if (saved.size > 0) tab_nav_indicator.title += `${saved.size} custom values\\n${unsaved.size} default values}`;\n  // TODO why is scroll happening on every change if all pages are visible?\n  // elem.scrollIntoView({ behavior: 'smooth', block: 'center' });\n}\n\nfunction updateAllOpts() {\n  if (Object.keys(opts).length !== 0) return false;\n  const json_elem = gradioApp().getElementById('settings_json');\n  log('updateAllOpts', !!json_elem);\n  if (!json_elem) return false;\n  json_elem.parentElement.style.display = 'none';\n  const textarea = json_elem.querySelector('textarea');\n  const jsdata = textarea.value;\n  updateOpts(jsdata);\n  return true;\n}\n\nonAfterUiUpdate(async () => {\n  if (!updateAllOpts()) return;\n  const json_elem = gradioApp().getElementById('settings_json');\n  const textarea = json_elem.querySelector('textarea');\n  executeCallbacks(optionsChangedCallbacks);\n  registerDragDrop();\n\n  Object.defineProperty(textarea, 'value', {\n    set(newValue) {\n      const valueProp = Object.getOwnPropertyDescriptor(HTMLTextAreaElement.prototype, 'value');\n      const oldValue = valueProp.get.call(textarea);\n      valueProp.set.call(textarea, newValue);\n      if (oldValue !== newValue) updateOpts(textarea.value);\n      executeCallbacks(optionsChangedCallbacks);\n    },\n    get() {\n      const valueProp = Object.getOwnPropertyDescriptor(HTMLTextAreaElement.prototype, 'value');\n      return valueProp.get.call(textarea);\n    },\n  });\n\n  const settingsSearch = gradioApp().querySelectorAll('#settings_search > label > textarea')[0];\n  let settingsTimer;\n  settingsSearch.oninput = (e) => {\n    if (settingsTimer) clearTimeout(settingsTimer);\n    settingsTimer = setTimeout(() => {\n      log('settingsSearch', e.target.value);\n      showAllSettings();\n      getSettingsTabs().forEach((section) => {\n        section.querySelectorAll('.dirtyable').forEach((setting) => {\n          const visible = setting.innerText.toLowerCase().includes(e.target.value.toLowerCase()) || setting.id.toLowerCase().includes(e.target.value.toLowerCase());\n          if (!visible) setting.style.display = 'none';\n          else setting.style.removeProperty('display');\n        });\n      });\n    }, 250);\n  };\n});\n\nonOptionsChanged(() => {\n  const setting_elems = gradioApp().querySelectorAll('#settings [id^=\"setting_\"]');\n  setting_elems.forEach((elem) => {\n    const setting_name = elem.id.replace('setting_', '');\n    markIfModified(setting_name, opts[setting_name]);\n  });\n});\n\nasync function initModels() {\n  const warn = () => `\n    <p style='color: white'>No models available</p>\n    - Select a model from reference list to download or<br>\n    - Set model path to a folder containing your models<br>\n    Current model path: ${opts.ckpt_dir}<br>\n  `;\n  const el = gradioApp().getElementById('main_info');\n  const en = gradioApp().getElementById('txt2img_extra_networks');\n  if (!el || !en) return;\n  const req = await authFetch(`${window.api}/sd-models`);\n  const res = req.ok ? await req.json() : [];\n  log('initModels', res.length);\n  const ready = () => `\n    <p style='color: white'>Ready</p>\n    ${res.length} models available<br>\n  `;\n  el.innerHTML = res.length > 0 ? ready() : warn();\n  el.style.display = 'block';\n  setTimeout(() => { el.style.display = 'none'; }, res.length === 0 ? 30000 : 1500);\n  if (res.length === 0) {\n    if (en.classList.contains('hide')) gradioApp().getElementById('txt2img_extra_networks_btn').click();\n    const repeat = setInterval(() => {\n      const buttons = Array.from(gradioApp().querySelectorAll('#txt2img_model_subdirs > button')) || [];\n      const reference = buttons.find((b) => (b.innerText === 'Reference') || (b.innerText === 'Distilled') || (b.innerText === 'Community') || (b.innerText === 'Quantized') || (b.innerText === 'Cloud'));\n      if (reference) {\n        clearInterval(repeat);\n        reference.click();\n        log('enReferenceSelect');\n      }\n    }, 100);\n  }\n}\n\nasync function initSettings() {\n  if (settingsInitialized) return;\n  settingsInitialized = true;\n  const tabNavElements = gradioApp().querySelector('#settings > .tab-nav');\n  if (!tabNavElements) {\n    error('initSettings', 'No tab nav elements found');\n    return;\n  }\n  const tabNavButtons = gradioApp().querySelectorAll('#settings > .tab-nav > button');\n  const tabElements = gradioApp().querySelectorAll('#settings > div:not(.tab-nav)');\n  const observer = new MutationObserver((mutations) => {\n    const showAllPages = gradioApp().getElementById('settings_show_all_pages');\n    if (showAllPages.style.display === 'none') return;\n    const mutation = (mut) => mut.type === 'attributes' && mut.attributeName === 'style';\n    if (mutations.some(mutation)) showAllSettings();\n  });\n  const tabContentWrapper = document.createElement('div');\n  tabContentWrapper.className = 'tab-content';\n  tabNavElements.parentElement.insertBefore(tabContentWrapper, tabNavElements.nextSibling);\n  tabElements.forEach((elem, index) => {\n    const tabName = elem.id.replace('settings_section_tab_', '');\n    const indicator = gradioApp().getElementById(`modification_indicator_${tabName}`);\n    if (indicator) {\n      tabNavElements.insertBefore(document.createElement('br'), tabNavButtons[index]);\n      tabNavElements.insertBefore(indicator, tabNavButtons[index]);\n    }\n    tabContentWrapper.appendChild(elem);\n    observer.observe(elem, { attributes: true, attributeFilter: ['style'] });\n  });\n  log('initSettings');\n}\n"
  },
  {
    "path": "javascript/simple-dark.css",
    "content": "/* generic html tags */\n@font-face { font-family: 'NotoSans'; font-display: swap; font-style: normal; font-weight: 100; src: local('NotoSansNerd'), url('notosans-nerdfont-regular.ttf') }\n:root, .light, .dark {\n  --font: 'NotoSans';\n  --font-mono: 'ui-monospace', 'Consolas', monospace;\n  --font-size: 16px;\n  --primary-50: #f0f0f0;\n  --primary-100: #e0e0e0;\n  --primary-200: #d0d0d0;\n  --primary-300: #b0b0b0;\n  --primary-400: #909090;\n  --primary-500: #707070;\n  --primary-600: #606060;\n  --primary-700: #404040;\n  --primary-800: #333333;\n  --primary-900: #111827;\n  --primary-950: #0b0f19;\n  --highlight-color: var(--primary-200);\n  --inactive-color: var(--primary--800);\n  --body-text-color: var(--neutral-100);\n  --body-text-color-subdued: var(--neutral-300);\n  --background-color: #000000;\n  --background-fill-primary: var(--neutral-700);\n  --input-padding: 4px;\n  --input-background-fill: var(--neutral-800);\n  --input-shadow: none;\n  --button-secondary-text-color: white;\n  --button-secondary-background-fill: var(--neutral-700);\n  --button-secondary-background-fill-hover: var(--neutral-400);\n  --block-title-text-color: var(--neutral-300);\n  --radius-sm: 4px;\n  --radius-lg: 8px;\n  --line-xs: 0.8em;\n  --line-sm: 1.2em;\n  --line-md: 1.4em;\n}\n\nhtml { font-size: var(--font-size); font-family: var(--font); }\nbody, button, input, select, textarea { font-family: var(--font); }\nimg { background-color: var(--background-color); }\ninput[type=range] { height: var(--line-sm) !important; appearance: none !important; margin-top: 0 !important; min-width: max(4em, 100%) !important;\n  background-color: var(--background-color) !important; width: 100% !important; background: transparent !important; }\ninput[type=range]::-webkit-slider-runnable-track { width: 100% !important; height: var(--line-xs) !important; cursor: pointer !important;\n  background: var(--input-background-fill) !important; border-radius: var(--radius-lg) !important; border: 0px solid var(--primary-900) !important; }\ninput[type=range]::-moz-range-track { width: 100% !important; height: var(--line-xs) !important; cursor: pointer !important; background:\n  var(--input-background-fill) !important; border-radius: var(--radius-lg) !important; border: 0px solid var(--primary-900) !important; }\ninput[type=range]::-webkit-slider-thumb { border: 0px solid var(--background-color) !important; height: var(--line-sm) !important; width: var(--line-sm) !important;\n  border-radius: var(--radius-lg) !important; background: var(--highlight-color) !important; cursor: pointer !important; appearance: none !important; margin-top: -0.2em !important; }\ninput[type=range]::-moz-range-thumb { border: 0px solid var(--background-color) !important; height: var(--line-sm) !important; width: var(--line-sm) !important;\n  border-radius: var(--radius-lg) !important; background: var(--highlight-color) !important; cursor: pointer !important; appearance: none !important; margin-top: -0.2em !important; }\n:root { scrollbar-color: var(--highlight-color) var(--primary-700); }\n::-webkit-scrollbar { width: 12px; height: 12px; }\n::-webkit-scrollbar-track { background: var(--primary-700) }\n::-webkit-scrollbar-thumb { background-color: var(--highlight-color); border-radius: var(--radius-lg); border-width: 0; }\ndiv.form { border-width: 0; box-shadow: none; background: transparent; overflow: visible; }\n\n/* based on gradio built-in dark theme */\n:root, .light, .dark {\n  --body-background-fill: var(--background-color);\n  --color-accent-soft: var(--neutral-700);\n  --background-fill-secondary: none;\n  --border-color-accent: var(--background-color);\n  --border-color-primary: var(--background-color);\n  --link-text-color-active: var(--primary-500);\n  --link-text-color: var(--secondary-500);\n  --link-text-color-hover: var(--secondary-400);\n  --link-text-color-visited: var(--secondary-600);\n  --shadow-spread: 1px;\n  --block-background-fill: None;\n  --block-border-color: var(--border-color-primary);\n  --block_border_width: None;\n  --block-info-text-color: var(--body-text-color-subdued);\n  --block-label-background-fill: var(--background-fill-secondary);\n  --block-label-border-color: var(--border-color-primary);\n  --block_label_border_width: None;\n  --block-label-text-color: var(--neutral-200);\n  --block_shadow: None;\n  --block_title_background_fill: None;\n  --block_title_border_color: None;\n  --block_title_border_width: None;\n  --panel-background-fill: var(--background-fill-secondary);\n  --panel-border-color: var(--border-color-primary);\n  --panel_border_width: None;\n  --checkbox-background-color: var(--neutral-500);\n  --checkbox-background-color-focus: var(--checkbox-background-color);\n  --checkbox-background-color-hover: var(--checkbox-background-color);\n  --checkbox-background-color-selected: var(--primary-500);\n  --checkbox-border-color: transparent;\n  --checkbox-border-color-focus: var(--secondary-500);\n  --checkbox-border-color-hover: var(--neutral-600);\n  --checkbox-border-color-selected: var(--primary-600);\n  --checkbox-border-width: var(--input-border-width);\n  --checkbox-label-background-fill: None;\n  --checkbox-label-background-fill-hover: None;\n  --checkbox-label-background-fill-selected: var(--checkbox-label-background-fill);\n  --checkbox-label-border-color: var(--border-color-primary);\n  --checkbox-label-border-color-hover: var(--checkbox-label-border-color);\n  --checkbox-label-border-width: var(--input-border-width);\n  --checkbox-label-text-color: var(--body-text-color);\n  --checkbox-label-text-color-selected: var(--checkbox-label-text-color);\n  --error-background-fill: var(--background-fill-primary);\n  --error-border-color: var(--border-color-primary);\n  --error_border_width: None;\n  --error-text-color: #ef4444;\n  --input-background-fill-focus: var(--secondary-600);\n  --input-background-fill-hover: var(--input-background-fill);\n  --input-border-color: var(--border-color-primary);\n  --input-border-color-focus: var(--neutral-700);\n  --input-border-color-hover: var(--input-border-color);\n  --input_border_width: None;\n  --input-placeholder-color: var(--neutral-500);\n  --input-shadow-focus: 2px 2px 2px 2px #111111;\n  --loader_color: None;\n  --slider_color: None;\n  --stat-background-fill: linear-gradient(to right, var(--primary-400), var(--primary-600));\n  --table-border-color: var(--neutral-700);\n  --table-even-background-fill: #222222;\n  --table-odd-background-fill: #333333;\n  --table-row-focus: var(--color-accent-soft);\n  --button-border-width: var(--input-border-width);\n  --button-cancel-background-fill: linear-gradient(to bottom right, #dc2626, #b91c1c);\n  --button-cancel-background-fill-hover: linear-gradient(to bottom right, #dc2626, #dc2626);\n  --button-cancel-border-color: #dc2626;\n  --button-cancel-border-color-hover: var(--button-cancel-border-color);\n  --button-cancel-text-color: white;\n  --button-cancel-text-color-hover: var(--button-cancel-text-color);\n  --button-primary-background-fill: linear-gradient(to bottom right, var(--primary-500), var(--primary-800));\n  --button-primary-background-fill-hover: linear-gradient(to bottom right, var(--primary-500), var(--primary-300));\n  --button-primary-border-color: var(--primary-500);\n  --button-primary-border-color-hover: var(--button-primary-border-color);\n  --button-primary-text-color: white;\n  --button-primary-text-color-hover: var(--button-primary-text-color);\n  --button-secondary-border-color: var(--neutral-600);\n  --button-secondary-border-color-hover: var(--button-secondary-border-color);\n  --button-secondary-text-color-hover: var(--button-secondary-text-color);\n  --secondary-50: #eff6ff;\n  --secondary-100: #dbeafe;\n  --secondary-200: #bfdbfe;\n  --secondary-300: #93c5fd;\n  --secondary-400: #60a5fa;\n  --secondary-500: #3b82f6;\n  --secondary-600: #2563eb;\n  --secondary-700: #1d4ed8;\n  --secondary-800: #1e40af;\n  --secondary-900: #1e3a8a;\n  --secondary-950: #1d3660;\n  --neutral-50: #f0f0f0;\n  --neutral-100: #e0e0e0;\n  --neutral-200: #d0d0d0;\n  --neutral-300: #b0b0b0;\n  --neutral-400: #909090;\n  --neutral-500: #707070;\n  --neutral-600: #606060;\n  --neutral-700: #404040;\n  --neutral-800: #333333;\n  --neutral-900: #111827;\n  --neutral-950: #0b0f19;\n  --radius-xxs: 0;\n  --radius-xs: 0;\n  --radius-md: 0;\n  --radius-xl: 0;\n  --radius-xxl: 0;\n  --body-text-size: var(--text-md);\n  --body-text-weight: 400;\n  --embed-radius: var(--radius-lg);\n  --color-accent: var(--primary-500);\n  --shadow-drop: 0;\n  --shadow-drop-lg: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n  --shadow-inset: rgba(0,0,0,0.05) 0px 2px 4px 0px inset;\n  --block-border-width: 1px;\n  --block-info-text-size: var(--text-sm);\n  --block-info-text-weight: 400;\n  --block-label-border-width: 1px;\n  --block-label-margin: 0;\n  --block-label-padding: var(--spacing-sm) var(--spacing-lg);\n  --block-label-radius: calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px) 0;\n  --block-label-right-radius: 0 calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px);\n  --block-label-text-size: var(--text-sm);\n  --block-label-text-weight: 400;\n  --block-padding: var(--spacing-xl) calc(var(--spacing-xl) + 2px);\n  --block-radius: var(--radius-lg);\n  --block-shadow: var(--shadow-drop);\n  --block-title-background-fill: none;\n  --block-title-border-color: none;\n  --block-title-border-width: 0px;\n  --block-title-padding: 0;\n  --block-title-radius: none;\n  --block-title-text-size: var(--text-md);\n  --block-title-text-weight: 400;\n  --container-radius: var(--radius-lg);\n  --form-gap-width: 1px;\n  --layout-gap: var(--spacing-xxl);\n  --panel-border-width: 0;\n  --section-header-text-size: var(--text-md);\n  --section-header-text-weight: 400;\n  --checkbox-border-radius: var(--radius-sm);\n  --checkbox-label-gap: 2px;\n  --checkbox-label-padding: var(--spacing-md);\n  --checkbox-label-shadow: var(--shadow-drop);\n  --checkbox-label-text-size: var(--text-md);\n  --checkbox-label-text-weight: 400;\n  --checkbox-check: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e\");\n  --radio-circle: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e\");\n  --checkbox-shadow: var(--input-shadow);\n  --error-border-width: 1px;\n  --input-border-width: 0;\n  --input-radius: var(--radius-lg);\n  --input-text-size: var(--text-md);\n  --input-text-weight: 400;\n  --loader-color: var(--color-accent);\n  --prose-text-size: var(--text-md);\n  --prose-text-weight: 400;\n  --prose-header-text-weight: 400;\n  --slider-color: ;\n  --table-radius: var(--radius-lg);\n  --button-large-padding: 2px 6px;\n  --button-large-radius: var(--radius-lg);\n  --button-large-text-size: var(--text-lg);\n  --button-large-text-weight: 400;\n  --button-shadow: 4px 4px 4px 0px #333333;\n  --button-shadow-active: 1px 1px 4px 0px #555555;\n  --button-shadow-hover: 1px 1px 4px 0px #555555;\n  --button-small-padding: var(--spacing-sm) calc(2 * var(--spacing-sm));\n  --button-small-radius: var(--radius-lg);\n  --button-small-text-size: var(--text-md);\n  --button-small-text-weight: 400;\n  --button-transition: none;\n  --size-9: 64px;\n  --size-14: 64px;\n}\n"
  },
  {
    "path": "javascript/simple-light.css",
    "content": "/* generic html tags */\n@font-face { font-family: 'NotoSans'; font-display: swap; font-style: normal; font-weight: 100; src: local('NotoSansNerd'), url('notosans-nerdfont-regular.ttf') }\n:root, .light, .dark {\n  --font: 'NotoSans';\n  --font-mono: 'ui-monospace', 'Consolas', monospace;\n  --font-size: 16px;\n  --primary-950: #f0f0f0;\n  --primary-900: #e0e0e0;\n  --primary-800: #d0d0d0;\n  --primary-700: #b0b0b0;\n  --primary-600: #909090;\n  --primary-500: #707070;\n  --primary-400: #606060;\n  --primary-300: #404040;\n  --primary-200: #333333;\n  --primary-100: #111827;\n  --primary-50: #0b0f19;\n  --highlight-color: var(--primary-200);\n  --inactive-color: var(--primary--800);\n  --body-text-color: var(--neutral-900);\n  --body-text-color-subdued: var(--neutral-700);\n  --background-color: white;\n  --background-fill-primary: var(--neutral-500);\n  --input-padding: 4px;\n  --input-background-fill: var(--neutral-200);\n  --input-shadow: none;\n  --button-secondary-text-color: white;\n  --button-secondary-background-fill: var(--neutral-500);\n  --button-secondary-background-fill-hover: var(--neutral-400);\n  --block-title-text-color: var(--neutral-600);\n  --radius-sm: 4px;\n  --radius-lg: 8px;\n  --line-xs: 0.8em;\n  --line-sm: 1.2em;\n  --line-md: 1.4em;\n}\n\nhtml { font-size: var(--font-size); font-family: var(--font); }\nbody, button, input, select, textarea { font-family: var(--font); }\nimg { background-color: var(--background-color); }\ninput[type=range] { height: var(--line-sm) !important; appearance: none !important; margin-top: 0 !important; min-width: max(4em, 100%) !important;\n  background-color: var(--background-color) !important; width: 100% !important; background: transparent !important; }\ninput[type=range]::-webkit-slider-runnable-track { width: 100% !important; height: var(--line-xs) !important; cursor: pointer !important;\n  background: var(--input-background-fill) !important; border-radius: var(--radius-lg) !important; border: 0px solid var(--primary-900) !important; }\ninput[type=range]::-moz-range-track { width: 100% !important; height: var(--line-xs) !important; cursor: pointer !important; background:\n  var(--input-background-fill) !important; border-radius: var(--radius-lg) !important; border: 0px solid var(--primary-900) !important; }\ninput[type=range]::-webkit-slider-thumb { border: 0px solid var(--background-color) !important; height: var(--line-sm) !important; width: var(--line-sm) !important;\n  border-radius: var(--radius-lg) !important; background: var(--highlight-color) !important; cursor: pointer !important; appearance: none !important; margin-top: -0.2em !important; }\ninput[type=range]::-moz-range-thumb { border: 0px solid var(--background-color) !important; height: var(--line-sm) !important; width: var(--line-sm) !important;\n  border-radius: var(--radius-lg) !important; background: var(--highlight-color) !important; cursor: pointer !important; appearance: none !important; margin-top: -0.2em !important; }\n:root { scrollbar-color: var(--highlight-color) var(--primary-700); }\n::-webkit-scrollbar { width: 12px; height: 12px; }\n::-webkit-scrollbar-track { background: var(--primary-700) }\n::-webkit-scrollbar-thumb { background-color: var(--highlight-color); border-radius: var(--radius-lg); border-width: 0; }\ndiv.form { border-width: 0; box-shadow: none; background: transparent; overflow: visible; }\n\n/* based on gradio built-in dark theme */\n:root, .light, .dark {\n  --body-background-fill: var(--background-color);\n  --color-accent-soft: var(--neutral-700);\n  --background-fill-secondary: none;\n  --border-color-accent: var(--background-color);\n  --border-color-primary: var(--background-color);\n  --link-text-color-active: var(--primary-500);\n  --link-text-color: var(--secondary-500);\n  --link-text-color-hover: var(--secondary-400);\n  --link-text-color-visited: var(--secondary-600);\n  --shadow-spread: 1px;\n  --block-background-fill: None;\n  --block-border-color: var(--border-color-primary);\n  --block_border_width: None;\n  --block-info-text-color: var(--body-text-color-subdued);\n  --block-label-background-fill: var(--background-fill-secondary);\n  --block-label-border-color: var(--border-color-primary);\n  --block_label_border_width: None;\n  --block-label-text-color: var(--neutral-200);\n  --block_shadow: None;\n  --block_title_background_fill: None;\n  --block_title_border_color: None;\n  --block_title_border_width: None;\n  --panel-background-fill: var(--background-fill-secondary);\n  --panel-border-color: var(--border-color-primary);\n  --panel_border_width: None;\n  --checkbox-background-color: var(--neutral-500);\n  --checkbox-background-color-focus: var(--checkbox-background-color);\n  --checkbox-background-color-hover: var(--checkbox-background-color);\n  --checkbox-background-color-selected: var(--primary-500);\n  --checkbox-border-color: transparent;\n  --checkbox-border-color-focus: var(--secondary-500);\n  --checkbox-border-color-hover: var(--neutral-600);\n  --checkbox-border-color-selected: var(--primary-600);\n  --checkbox-border-width: var(--input-border-width);\n  --checkbox-label-background-fill: None;\n  --checkbox-label-background-fill-hover: None;\n  --checkbox-label-background-fill-selected: var(--checkbox-label-background-fill);\n  --checkbox-label-border-color: var(--border-color-primary);\n  --checkbox-label-border-color-hover: var(--checkbox-label-border-color);\n  --checkbox-label-border-width: var(--input-border-width);\n  --checkbox-label-text-color: var(--body-text-color);\n  --checkbox-label-text-color-selected: var(--checkbox-label-text-color);\n  --error-background-fill: var(--background-fill-primary);\n  --error-border-color: var(--border-color-primary);\n  --error_border_width: None;\n  --error-text-color: #ef4444;\n  --input-background-fill-focus: var(--secondary-600);\n  --input-background-fill-hover: var(--input-background-fill);\n  --input-border-color: var(--border-color-primary);\n  --input-border-color-focus: var(--neutral-700);\n  --input-border-color-hover: var(--input-border-color);\n  --input_border_width: None;\n  --input-placeholder-color: var(--neutral-500);\n  --input-shadow-focus: None;\n  --loader_color: None;\n  --slider_color: None;\n  --stat-background-fill: linear-gradient(to right, var(--primary-400), var(--primary-600));\n  --table-border-color: var(--neutral-700);\n  --table-even-background-fill: #222222;\n  --table-odd-background-fill: #333333;\n  --table-row-focus: var(--color-accent-soft);\n  --button-border-width: var(--input-border-width);\n  --button-cancel-background-fill: linear-gradient(to bottom right, #dc2626, #b91c1c);\n  --button-cancel-background-fill-hover: linear-gradient(to bottom right, #dc2626, #dc2626);\n  --button-cancel-border-color: #dc2626;\n  --button-cancel-border-color-hover: var(--button-cancel-border-color);\n  --button-cancel-text-color: white;\n  --button-cancel-text-color-hover: var(--button-cancel-text-color);\n  --button-primary-background-fill: var(--primary-500);\n  --button-primary-background-fill-hover: var(--primary-300);\n  --button-primary-border-color: var(--primary-500);\n  --button-primary-border-color-hover: var(--button-primary-border-color);\n  --button-primary-text-color: white;\n  --button-primary-text-color-hover: var(--button-primary-text-color);\n  --button-secondary-border-color: var(--neutral-600);\n  --button-secondary-border-color-hover: var(--button-secondary-border-color);\n  --button-secondary-text-color-hover: var(--button-secondary-text-color);\n  --secondary-50: #eff6ff;\n  --secondary-100: #dbeafe;\n  --secondary-200: #bfdbfe;\n  --secondary-300: #93c5fd;\n  --secondary-400: #60a5fa;\n  --secondary-500: #3b82f6;\n  --secondary-600: #2563eb;\n  --secondary-700: #1d4ed8;\n  --secondary-800: #1e40af;\n  --secondary-900: #1e3a8a;\n  --secondary-950: #1d3660;\n  --neutral-50: #f0f0f0;\n  --neutral-100: #e0e0e0;\n  --neutral-200: #d0d0d0;\n  --neutral-300: #b0b0b0;\n  --neutral-400: #909090;\n  --neutral-500: #707070;\n  --neutral-600: #606060;\n  --neutral-700: #404040;\n  --neutral-800: #333333;\n  --neutral-900: #111827;\n  --neutral-950: #0b0f19;\n  --radius-xxs: 0;\n  --radius-xs: 0;\n  --radius-md: 0;\n  --radius-xl: 0;\n  --radius-xxl: 0;\n  --body-text-size: var(--text-md);\n  --body-text-weight: 400;\n  --embed-radius: var(--radius-lg);\n  --color-accent: var(--primary-500);\n  --shadow-drop: 0;\n  --shadow-drop-lg: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n  --shadow-inset: rgba(0,0,0,0.05) 0px 2px 4px 0px inset;\n  --block-border-width: 1px;\n  --block-info-text-size: var(--text-sm);\n  --block-info-text-weight: 400;\n  --block-label-border-width: 1px;\n  --block-label-margin: 0;\n  --block-label-padding: var(--spacing-sm) var(--spacing-lg);\n  --block-label-radius: calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px) 0;\n  --block-label-right-radius: 0 calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px);\n  --block-label-text-size: var(--text-sm);\n  --block-label-text-weight: 400;\n  --block-padding: var(--spacing-xl) calc(var(--spacing-xl) + 2px);\n  --block-radius: var(--radius-lg);\n  --block-shadow: var(--shadow-drop);\n  --block-title-background-fill: none;\n  --block-title-border-color: none;\n  --block-title-border-width: 0px;\n  --block-title-padding: 0;\n  --block-title-radius: none;\n  --block-title-text-size: var(--text-md);\n  --block-title-text-weight: 400;\n  --container-radius: var(--radius-lg);\n  --form-gap-width: 1px;\n  --layout-gap: var(--spacing-xxl);\n  --panel-border-width: 0;\n  --section-header-text-size: var(--text-md);\n  --section-header-text-weight: 400;\n  --checkbox-border-radius: var(--radius-sm);\n  --checkbox-label-gap: 2px;\n  --checkbox-label-padding: var(--spacing-md);\n  --checkbox-label-shadow: var(--shadow-drop);\n  --checkbox-label-text-size: var(--text-md);\n  --checkbox-label-text-weight: 400;\n  --checkbox-check: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e\");\n  --radio-circle: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e\");\n  --checkbox-shadow: var(--input-shadow);\n  --error-border-width: 1px;\n  --input-border-width: 0;\n  --input-radius: var(--radius-lg);\n  --input-text-size: var(--text-md);\n  --input-text-weight: 400;\n  --loader-color: var(--color-accent);\n  --prose-text-size: var(--text-md);\n  --prose-text-weight: 400;\n  --prose-header-text-weight: 400;\n  --slider-color: ;\n  --table-radius: var(--radius-lg);\n  --button-large-padding: 2px 6px;\n  --button-large-radius: var(--radius-lg);\n  --button-large-text-size: var(--text-lg);\n  --button-large-text-weight: 400;\n  --button-shadow: 4px 4px 4px 0px #333333;\n  --button-shadow-active: 1px 1px 4px 0px #555555;\n  --button-shadow-hover: 1px 1px 4px 0px #555555;\n  --button-small-padding: var(--spacing-sm) calc(2 * var(--spacing-sm));\n  --button-small-radius: var(--radius-lg);\n  --button-small-text-size: var(--text-md);\n  --button-small-text-weight: 400;\n  --button-transition: none;\n  --size-9: 64px;\n  --size-14: 64px;\n}\n"
  },
  {
    "path": "javascript/startup.js",
    "content": "/* eslint-disable no-undef */\nwindow.api = '/sdapi/v1';\nwindow.subpath = '';\n\nasync function waitForOpts() {\n  // make sure all of the ui is ready and options are loaded\n  const t0 = performance.now();\n  let t1 = performance.now();\n  while (true) {\n    if (t1 - t0 > 120000) {\n      log('waitForOpts timeout');\n      break;\n    }\n    if (window.opts && Object.keys(window.opts).length > 0) {\n      ok = window.opts.theme_type === 'Modern' ? 'uiux_separator_appearance' in window.opts : true;\n      if (ok) {\n        log('waitForOpts', `time=${Math.round(t1 - t0)}`);\n        break;\n      }\n    }\n    await sleep(50);\n    t1 = performance.now();\n  }\n}\n\nasync function initStartup() {\n  const t0 = performance.now();\n  log('gradio', `time=${Math.round(t0 - appStartTime)}`);\n  log('initStartup');\n  if (window.setupLogger) await setupLogger();\n\n  // all items here are non-blocking async calls\n  await initModels();\n  await getUIDefaults();\n  await initPromptChecker();\n  await initContextMenu();\n  await initDragDrop();\n  await initAccordions();\n  await initSettings();\n  await initImageViewer();\n  await initiGenerationParams();\n  await initChangelog();\n  await setupControlUI();\n\n  // reconnect server session\n  await reconnectUI();\n  await waitForOpts();\n\n  await initGallery();\n\n  log('mountURL', window.opts.subpath);\n  if (window.opts.subpath?.length > 0) {\n    window.subpath = window.opts.subpath;\n    window.api = `${window.subpath}/sdapi/v1`;\n  }\n  setRefreshInterval();\n  executeCallbacks(uiReadyCallbacks);\n  initLogMonitor();\n  setupExtraNetworks();\n\n  // optinally wait for modern ui\n  if (window.waitForUiReady) await waitForUiReady();\n  removeSplash();\n\n  // post startup tasks that may take longer but are not critical\n  showNetworks();\n  setHints();\n  applyStyles();\n  initIndexDB();\n  t1 = performance.now();\n  log('initStartup', Math.round(1000 * (t1 - t0) / 1000000));\n}\n\nonUiLoaded(initStartup);\nonUiReady(() => log('uiReady'));\n\n// onAfterUiUpdate(() => log('evt onAfterUiUpdate'));\n// onUiLoaded(() => log('evt onUiLoaded'));\n// onOptionsChanged(() => log('evt onOptionsChanged'));\n// onUiTabChange(() => log('evt onUiTabChange'));\n// onUiUpdate(() => log('evt onUiUpdate'));\n"
  },
  {
    "path": "javascript/timeless-beige.css",
    "content": "/* generic html tags */\n:root, .light, .dark {\n  --font: 'system-ui', 'ui-sans-serif', 'system-ui', \"Roboto\", sans-serif, 'NotoSans';\n  --font-mono: 'ui-monospace', 'Consolas', monospace;\n  --font-size: 16px;\n  --primary-100: #212226; /* bg color*/\n  --primary-200: #17181b; /* drop down menu/ prompt window fill*/\n  --primary-300: #0a0c0e; /* black */\n  --primary-400: #2f3034; /* small buttons*/\n  --primary-500: #434242; /* main accent color retro beige*/\n  --primary-700: #e75d5d; /* light blue gray*/\n  --primary-800: #e75d5d; /* sat orange(hover accent)*/\n  --highlight-color: var(--primary-500);\n  --inactive-color: var(--primary--800);\n  --body-text-color: var(--neutral-100);\n  --body-text-color-subdued: var(--neutral-300);\n  --background-color: var(--primary-100);\n  --background-fill-primary: var(--input-background-fill);\n  --input-padding: 8px;\n  --input-background-fill: var(--primary-200);\n  --input-shadow: none;\n  --button-secondary-text-color: white;\n  --button-secondary-background-fill: var(--primary-400);\n  --button-secondary-background-fill-hover: var(--primary-700);\n  --block-title-text-color: var(--neutral-300);\n  --radius-sm: 1px;\n  --radius-lg: 6px;\n  --spacing-md: 4px;\n  --spacing-xxl: 8px;\n  --line-sm: 1.2em;\n  --line-md: 1.4em;\n}\n\nhtml { font-size: var(--font-size); }\nbody, button, input, select, textarea { font-family: var(--font);}\nbutton { max-width: 400px; }\nimg { background-color: var(--background-color); }\ninput[type=range] { height: var(--line-sm); appearance: none; margin-top: 0; min-width: 160px; background-color: var(--background-color); width: 100%; background: transparent; }\ninput[type=range]::-webkit-slider-runnable-track, input[type=range]::-moz-range-track { width: 100%; height: 6px; cursor: pointer; background: var(--primary-400); border-radius: var(--radius-lg); border: 0px solid #222222; }\ninput[type=range]::-webkit-slider-thumb, input[type=range]::-moz-range-thumb { border: 0px solid #000000; height: var(--line-sm); width: 8px; border-radius: var(--radius-lg); background: white; cursor: pointer; appearance: none; margin-top: 0px; }\ninput[type=range]::-moz-range-progress {  background-color: var(--primary-500);  height: 6px;  border-radius: var(--radius-lg); }\n:root { scrollbar-color: var(--highlight-color) #333333; }\n::-webkit-scrollbar-track { background: #333333; }\n::-webkit-scrollbar-thumb { background-color: var(--highlight-color); border-radius: var(--radius-lg); border-width: 0; box-shadow: 2px 2px 3px #111111; }\ndiv.form { border-width: 0; box-shadow: none; background: transparent; overflow: visible; margin-bottom: 6px; }\ndiv.compact { gap: 1em; }\n\n/* gradio style classes */\nfieldset .gr-block.gr-box, label.block span { padding: 0; margin-top: -4px; }\n.border-2 { border-width: 0; }\n.border-b-2 { border-bottom-width: 2px; border-color: var(--highlight-color) !important; padding-bottom: 2px; margin-bottom: 8px; }\n.bg-white { color: lightyellow; background-color: var(--inactive-color); }\n.gr-box { border-radius: var(--radius-sm) !important; background-color: #111111 !important; box-shadow: 2px 2px 3px #111111; border-width: 0; padding: 4px; margin: 12px 0px 12px 0px }\n.gr-button { font-weight: normal; box-shadow: 2px 2px 3px #111111; font-size: 0.8rem; min-width: 32px; min-height: 32px; padding: 3px; margin: 3px; }\n.gr-check-radio { background-color: var(--inactive-color); border-width: 0; border-radius: var(--radius-lg); box-shadow: 2px 2px 3px #111111; }\n.gr-check-radio:checked { background-color: var(--highlight-color); }\n.gr-compact { background-color: var(--background-color); }\n.gr-form { border-width: 0; }\n.gr-input { background-color: #333333 !important; padding: 4px; margin: 4px; }\n.gr-input-label { color: lightyellow; border-width: 0; background: transparent; padding: 2px !important; }\n.gr-panel { background-color: var(--background-color); }\n.eta-bar { display: none !important }\nsvg.feather.feather-image, .feather .feather-image { display: none }\n.gap-2 { padding-top: 8px; }\n.gr-box > div > div > input.gr-text-input { right: 0; width: 4em; padding: 0; top: -12px; border: none; max-height: 20px; }\n.output-html { line-height: 1.2rem; overflow-x: hidden; }\n.output-html > div { margin-bottom: 8px; }\n.overflow-hidden .flex .flex-col .relative col .gap-4 { min-width: var(--left-column); max-width: var(--left-column); } /* this is a problematic one */\n.p-2 { padding: 0; }\n.px-4 { padding-lefT: 1rem; padding-right: 1rem; }\n.py-6 { padding-bottom: 0; }\n.tabs { background-color: var(--background-color); }\n.block.token-counter span { background-color: var(--input-background-fill) !important; box-shadow: 2px 2px 2px #111; border: none !important; font-size: 0.8rem; }\n.tab-nav { zoom: 110%; margin-top: 10px; margin-bottom: 10px; border-bottom: 2px solid var(--highlight-color) !important; padding-bottom: 2px; }\ndiv.tab-nav button.selected {background-color: var(--button-primary-background-fill);}\n#settings div.tab-nav button.selected {background-color: var(--background-color); color: var(--primary-800); font-weight: bold;}\n.label-wrap { background-color: #292b30; /* extension tab color*/ padding: 16px 8px 8px 8px; border-radius: var(--radius-lg); padding-left: 8px !important; }\n.small-accordion .label-wrap { padding: 8px 0px 8px 0px; }\n.small-accordion .label-wrap .icon { margin-right: 1em; }\n.gradio-button.tool { border: none; box-shadow: none; border-radius: var(--radius-lg);}\nbutton.selected {background: var(--button-primary-background-fill);}\n.center.boundedheight.flex {background-color: var(--input-background-fill);}\n.compact {border-radius: var(--border-radius-lg);}\n#logMonitorData {background-color: var(--input-background-fill);}\n#tab_extensions table td, #tab_extensions table th, #tab_config table td, #tab_config table th { border: none; padding: 0.5em; background-color: var(--primary-200); }\n#tab_extensions table, #tab_config table { width: 96vw; }\n#tab_extensions table input[type=checkbox] {appearance: none; border-radius: 0px;}\n#tab_extensions button:hover { background-color: var(--button-secondary-background-fill-hover);}\n\n/* automatic style classes */\n.progressDiv { border-radius: var(--radius-sm) !important; position: fixed; top: 44px; right: 26px; max-width: 262px; height: 48px; z-index: 99; box-shadow: var(--button-shadow); }\n.progressDiv .progress { border-radius: var(--radius-lg) !important; background: var(--highlight-color); line-height: 3rem; height: 48px; }\n.gallery-item { box-shadow: none !important; }\n.performance { color: #888; }\n.extra-networks { border-left: 2px solid var(--highlight-color) !important; padding-left: 4px; }\n.image-buttons { gap: 10px !important; justify-content: center; }\n.image-buttons > button { max-width: 160px; }\n.tooltip { background: var(--primary-800); color: white; border: none; border-radius: var(--radius-lg) }\n#system_row > button, #settings_row > button, #config_row > button { max-width: 10em; }\n\n/* gradio elements overrides */\n#div.gradio-container { overflow-x: hidden; }\n#img2img_label_copy_to_img2img { font-weight: normal; }\n#img2img_settings { min-width: calc(2 * var(--left-column)); max-width: calc(2 * var(--left-column)); background-color: #111111; padding-top: 16px; }\n#interrogate, #deepbooru { margin: 0 0px 10px 0px; max-width: 80px; max-height: 80px; font-weight: normal; font-size: 0.95em; }\n#quicksettings .gr-button-tool { font-size: 1.6rem; box-shadow: none; margin-top: -2px; height: 2.4em; }\n#quicksettings button {padding: 0 0.5em 0.1em 0.5em;}\n#footer, #style_pos_col, #style_neg_col, #roll_col, #extras_upscaler_2, #extras_upscaler_2_visibility, #txt2img_seed_resize_from_w, #txt2img_seed_resize_from_h { display: none; }\n#save-animation { border-radius: var(--radius-sm) !important; margin-bottom: 16px; background-color: #111111; }\n#script_list { padding: 4px; margin-top: 16px; margin-bottom: 8px; }\n#settings > div.flex-wrap { width: 15em; }\n#txt2img_cfg_scale { min-width: 200px; }\n#txt2img_checkboxes, #img2img_checkboxes { background-color: transparent; }\n#txt2img_checkboxes, #img2img_checkboxes { margin-bottom: 0.2em; }\n#txt2img_actions_column, #img2img_actions_column { flex-flow: wrap; justify-content: space-between; }\n\n#extras_upscale { margin-top: 10px }\n#txt2img_progress_row > div { min-width: var(--left-column); max-width: var(--left-column); }\n#txt2img_settings { min-width: var(--left-column); max-width: var(--left-column); background-color: #111111; padding-top: 16px; }\n#pnginfo_html2_info { margin-top: -18px; background-color: var(--input-background-fill); padding: var(--input-padding) }\n#txt2img_tools, #img2img_tools { margin-top: -4px; margin-bottom: -4px; }\n#txt2img_styles_row, #img2img_styles_row { margin-top: -6px; z-index: 200; }\n\n/* based on gradio built-in dark theme */\n:root, .light, .dark {\n  --body-background-fill: var(--background-color);\n  --color-accent-soft: var(--neutral-700);\n  --background-fill-secondary: none;\n  --border-color-accent: var(--background-color);\n  --border-color-primary: var(--background-color);\n  --link-text-color-active: var(--primary-500);\n  --link-text-color: var(--secondary-500);\n  --link-text-color-hover: var(--secondary-400);\n  --link-text-color-visited: var(--secondary-600);\n  --shadow-spread: 1px;\n  --block-background-fill: None;\n  --block-border-color: var(--border-color-primary);\n  --block_border_width: None;\n  --block-info-text-color: var(--body-text-color-subdued);\n  --block-label-background-fill: var(--background-fill-secondary);\n  --block-label-border-color: var(--border-color-primary);\n  --block_label_border_width: None;\n  --block-label-text-color: var(--neutral-200);\n  --block_shadow: None;\n  --block_title_background_fill: None;\n  --block_title_border_color: None;\n  --block_title_border_width: None;\n  --panel-background-fill: var(--background-fill-secondary);\n  --panel-border-color: var(--border-color-primary);\n  --panel_border_width: None;\n  --checkbox-background-color: var(--primary-400);\n  --checkbox-background-color-focus: var(--primary-700);\n  --checkbox-background-color-hover: var(--primary-700);\n  --checkbox-background-color-selected: var(--primary-500);\n  --checkbox-border-color: transparent;\n  --checkbox-border-color-focus: var(--primary-800);\n  --checkbox-border-color-hover: var(--primary-800);\n  --checkbox-border-color-selected: var(--primary-800);\n  --checkbox-border-width: var(--input-border-width);\n  --checkbox-label-background-fill: None;\n  --checkbox-label-background-fill-hover: None;\n  --checkbox-label-background-fill-selected: var(--checkbox-label-background-fill);\n  --checkbox-label-border-color: var(--border-color-primary);\n  --checkbox-label-border-color-hover: var(--checkbox-label-border-color);\n  --checkbox-label-border-width: var(--input-border-width);\n  --checkbox-label-text-color: var(--body-text-color);\n  --checkbox-label-text-color-selected: var(--checkbox-label-text-color);\n  --error-background-fill: var(--background-fill-primary);\n  --error-border-color: var(--border-color-primary);\n  --error-text-color: #f768b7; /*was ef4444*/\n  --input-background-fill-focus: var(--secondary-600);\n  --input-background-fill-hover: var(--input-background-fill);\n  --input-border-color: var(--background-color);\n  --input-border-color-focus: var(--primary-800);\n  --input-placeholder-color: var(--neutral-500);\n  --input-shadow-focus: None;\n  --loader_color: None;\n  --slider_color: None;\n  --stat-background-fill: linear-gradient(to right, var(--primary-400), var(--primary-800));\n  --table-border-color: var(--neutral-700);\n  --table-even-background-fill: var(--primary-300);\n  --table-odd-background-fill: var(--primary-200);\n  --table-row-focus: var(--color-accent-soft);\n  --button-border-width: var(--input-border-width);\n  --button-cancel-background-fill: linear-gradient(to bottom right, #dc2626, #b91c1c);\n  --button-cancel-background-fill-hover: linear-gradient(to bottom right, #dc2626, #dc2626);\n  --button-cancel-border-color: #dc2626;\n  --button-cancel-border-color-hover: var(--button-cancel-border-color);\n  --button-cancel-text-color: white;\n  --button-cancel-text-color-hover: var(--button-cancel-text-color);\n  --button-primary-background-fill: var(--primary-500);\n  --button-primary-background-fill-hover: var(--primary-800);\n  --button-primary-border-color: var(--primary-500);\n  --button-primary-border-color-hover: var(--button-primary-border-color);\n  --button-primary-text-color: white;\n  --button-primary-text-color-hover: var(--button-primary-text-color);\n  --button-secondary-border-color: var(--neutral-600);\n  --button-secondary-border-color-hover: var(--button-secondary-border-color);\n  --button-secondary-text-color-hover: var(--button-secondary-text-color);\n  --secondary-50: #eff6ff;\n  --secondary-100: #dbeafe;\n  --secondary-200: #bfdbfe;\n  --secondary-300: #93c5fd;\n  --secondary-400: #60a5fa;\n  --secondary-500: #3b82f6;\n  --secondary-600: #2563eb;\n  --secondary-700: #1d4ed8;\n  --secondary-800: #1e40af;\n  --secondary-900: #1e3a8a;\n  --secondary-950: #1d3660;\n  --neutral-50: #f0f0f0; /*  */\n  --neutral-100: #e0dedc;/* majority of text (neutral gray yellow) */\n  --neutral-200: #d0d0d0;\n  --neutral-300: #9d9dab; /* top tab text (light accent) */\n  --neutral-400: #ffba85;/* tab title (light beige) */\n  --neutral-500: #484746; /* prompt text (desat accent)*/\n  --neutral-600: #605a54; /* tab outline color (accent color)*/\n  --neutral-700: #1b1c1e; /* small settings tab accent (dark)*/\n  --neutral-800: #e75d5d; /* bright orange accent */\n  --neutral-900: #111827;\n  --neutral-950: #0b0f19;\n  --radius-xxs: 0;\n  --radius-xs: 0;\n  --radius-md: 0;\n  --radius-xl: 0;\n  --radius-xxl: 0;\n  --body-text-size: var(--text-md);\n  --body-text-weight: 400;\n  --embed-radius: var(--radius-lg);\n  --color-accent: var(--primary-500);\n  --shadow-drop: 0;\n  --shadow-drop-lg: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n  --shadow-inset: rgba(0,0,0,0.05) 0px 2px 4px 0px inset;\n  --block-border-width: 1px;\n  --block-info-text-size: var(--text-sm);\n  --block-info-text-weight: 400;\n  --block-label-border-width: 1px;\n  --block-label-margin: 0;\n  --block-label-padding: var(--spacing-sm) var(--spacing-lg);\n  --block-label-radius: calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px) 0;\n  --block-label-right-radius: 0 calc(var(--radius-lg) - 1px) 0 calc(var(--radius-lg) - 1px);\n  --block-label-text-size: var(--text-sm);\n  --block-label-text-weight: 400;\n  --block-padding: var(--spacing-xl) calc(var(--spacing-xl) + 2px);\n  --block-radius: var(--radius-lg);\n  --block-shadow: var(--shadow-drop);\n  --block-title-background-fill: none;\n  --block-title-border-color: none;\n  --block-title-border-width: 0;\n  --block-title-padding: 0;\n  --block-title-radius: none;\n  --block-title-text-size: var(--text-md);\n  --block-title-text-weight: 400;\n  --container-radius: var(--radius-lg);\n  --form-gap-width: 1px;\n  --layout-gap: var(--spacing-xxl);\n  --panel-border-width: 0;\n  --section-header-text-size: var(--text-md);\n  --section-header-text-weight: 400;\n  --checkbox-border-radius: var(--radius-sm);\n  --checkbox-label-gap: 2px;\n  --checkbox-label-padding: var(--spacing-md);\n  --checkbox-label-shadow: var(--shadow-drop);\n  --checkbox-label-text-size: var(--text-md);\n  --checkbox-label-text-weight: 400;\n  --checkbox-check: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e\");\n  --radio-circle: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e\");\n  --checkbox-shadow: var(--input-shadow);\n  --error-border-width: 1px;\n  --input-border-width: 1px;\n  --input-radius: var(--radius-lg);\n  --input-text-size: var(--text-md);\n  --input-text-weight: 400;\n  --loader-color: var(--color-accent);\n  --prose-text-size: var(--text-md);\n  --prose-text-weight: 400;\n  --prose-header-text-weight: 600;\n  --slider-color: ;\n  --table-radius: var(--radius-lg);\n  --button-large-padding: 2px 6px;\n  --button-large-radius: var(--radius-lg);\n  --button-large-text-size: var(--text-lg);\n  --button-large-text-weight: 400;\n  --button-shadow: none;\n  --button-shadow-active: none;\n  --button-shadow-hover: none;\n  --button-small-padding: var(--spacing-sm) calc(2 * var(--spacing-sm));\n  --button-small-radius: var(--radius-lg);\n  --button-small-text-size: var(--text-md);\n  --button-small-text-weight: 400;\n  --button-transition: none;\n  --size-9: 64px;\n  --size-14: 64px;\n}\n"
  },
  {
    "path": "javascript/timesheet.css",
    "content": ".timesheet {\n    width: 100%;\n    height: auto;\n    margin: 0 auto;\n}\n.timesheet {\n    background-color: var(--sd-main-background-color);\n    position: relative;\n}\n.timesheet .scale {\n    height: 100%;\n    position: absolute;\n    top: 0;\n    left: 0;\n    float: left;\n}\n.timesheet .scale section {\n    float: left;\n    text-align: center;\n    color: rgba(250, 250, 250, 0.8);\n    font-size: 13px;\n    line-height: 24px;\n    font-weight: lighter;\n    border-left: 1px dashed rgba(250, 250, 250, 0.2);\n    height: 100%;\n}\n.timesheet .data {\n    margin: 10px 0 10px 0;\n    padding: 0;\n    text-align: left;\n    list-style-type: none;\n    color: rgba(250, 250, 250, 0.8);\n    font-size: 13px;\n    overflow: hidden;\n}\n.timesheet .data li {\n    margin: 0 0 3px 0;\n    line-height: 22px;\n    height: 21px;\n    display: block;\n    clear: both;\n    position: relative;\n    white-space: nowrap;\n}\n.timesheet .data li:hover .bubble {\n    opacity: 1;\n}\n.timesheet .data li .date {\n    color: #b5b5b5;\n    font-size: 14px;\n}\n.timesheet .data li .label {\n    font-weight: lighter;\n    font-size: 14px;\n    padding-left: 5px;\n    line-height: 21px;\n    color: #979796;\n    white-space: nowrap;\n}\n.timesheet .data li .bubble {\n    width: 24px;\n    height: 7px;\n    display: block;\n    float: left;\n    position: relative;\n    top: 7px;\n    border-radius: 2px;\n    margin: 0 10px 0 0;\n    opacity: 0.7;\n}\n.bubble-default {\n    background: var(--sd-main-accent-color);\n}\n.bubble-inference {\n    background-color: violet;\n}\n.bubble-io {\n    background-color: rgb(75, 75, 150);\n}\n"
  },
  {
    "path": "javascript/timesheet.js",
    "content": "/* eslint max-classes-per-file: [\"error\", 2] */\n\nclass Bubble {\n  constructor(min, start, end, label, scale, type) {\n    this.type = type;\n    this.label = label;\n    this.min = min;\n    this.start = start;\n    this.end = end;\n    this.scale = scale;\n    this.offset = Math.round(this.scale * (this.start - this.min));\n    this.width = Math.round(this.scale * (this.end - this.start));\n    this.duration = Math.round(1000 * (this.end - this.start)) / 1000;\n    this.title = `Job: ${this.label}\\nDuration: ${this.duration}s\\nStart: ${new Date(1000 * this.start).toLocaleString()}\\nEnd: ${new Date(1000 * this.end).toLocaleString()}`;\n  }\n\n  getDateLabel() {\n    return Math.round(1000 * (this.end - this.start)) / 1000;\n  }\n}\n\nclass Timesheet {\n  constructor(container, data) {\n    this.min = Math.floor(data[0].start);\n    this.max = Math.round(data[data.length - 1].end + 0.5);\n    this.data = data;\n    this.container = container;\n    const box = container.getBoundingClientRect();\n    const width = box.width - 140;\n    this.scale = width / (this.max - this.min);\n\n    // draw sections\n    let html = [];\n    for (let c = 0; c <= this.max - this.min; c++) html.push(`<section style=\"width: ${this.scale}px;\"></section>`);\n    container.className = 'timesheet color-scheme-default';\n    container.innerHTML = `<div class=\"scale\"\">${html.join('')}</div>`;\n\n    // insert data\n    html = [];\n    for (let n = 0, m = this.data.length; n < m; n++) {\n      const cur = this.data[n];\n      const bubble = new Bubble(this.min, cur.start, cur.end, cur.label, this.scale, cur.type);\n      const line = [\n        `<span title=\"${bubble.title}\" style=\"margin-left: ${bubble.offset}px; width: ${bubble.width}px;\" class=\"bubble bubble-${bubble.type}\" data-duration=\"${bubble.duration}\"></span>`,\n        `<span class=\"date\" title=\"${bubble.title}\">${bubble.duration}</span> `,\n        `<span class=\"label\" title=\"${bubble.title}\">${bubble.label}</span>`,\n      ].join('');\n      html.push(`<li>${line}</li>`);\n    }\n    this.container.innerHTML += `<ul class=\"data\">${html.join('')}</ul>`;\n  }\n}\n\nwindow.Timesheet = Timesheet;\n"
  },
  {
    "path": "javascript/trainMonitor.js",
    "content": "function startTrainMonitor() {\n  gradioApp().querySelector('#train_error').innerHTML = '';\n  const id = randomId();\n  const onProgress = (progress) => { gradioApp().getElementById('train_progress').innerHTML = progress.textinfo; };\n  requestProgress(id, gradioApp().getElementById('train_gallery'), null, onProgress, false);\n  const res = Array.from(arguments);\n  res[0] = id;\n  return res;\n}\n"
  },
  {
    "path": "javascript/ui.js",
    "content": "window.opts = {};\nwindow.localization = {};\nwindow.titles = {};\nlet tabSelected = '';\nlet txt2img_textarea;\nlet img2img_textarea;\nconst wait_time = 800;\nconst token_timeouts = {};\nlet uiLoaded = false;\nlet promptsInitialized = false;\nwindow.args_to_array = Array.from; // Compatibility with e.g. extensions that may expect this to be around\n\nfunction rememberGallerySelection(name) {\n  // dummy\n}\n\nfunction set_theme(theme) {\n  const gradioURL = window.location.href;\n  if (!gradioURL.includes('?__theme=')) window.location.replace(`${gradioURL}?__theme=${theme}`);\n}\n\nfunction update_token_counter(button_id) {\n  if (token_timeouts[button_id]) clearTimeout(token_timeouts[button_id]);\n  token_timeouts[button_id] = setTimeout(() => gradioApp().getElementById(button_id)?.click(), wait_time);\n}\n\nfunction clip_gallery_urls(gallery) {\n  const files = gallery.map((v) => v.data);\n  navigator.clipboard.writeText(JSON.stringify(files)).then(\n    () => log('clipboard:', files),\n    (err) => error(`clipboard: ${files} ${err}`),\n  );\n}\n\nfunction isVisible(el) {\n  if (!el) return false;\n  const rect = el.getBoundingClientRect();\n  if (rect.width === 0 && rect.height === 0) return false;\n  return (rect.top >= 0) && (rect.left >= 0) && (rect.bottom <= (window.innerHeight || document.documentElement.clientHeight)) && (rect.right <= (window.innerWidth || document.documentElement.clientWidth));\n}\n\nfunction all_gallery_buttons() {\n  let allGalleryButtons = gradioApp().querySelectorAll('[style=\"display: block;\"].tabitem div[id$=_gallery].gradio-gallery .thumbnails > .thumbnail-item.thumbnail-small');\n  if (allGalleryButtons.length === 0) allGalleryButtons = gradioApp().querySelectorAll('.gradio-gallery .thumbnails > .thumbnail-item.thumbnail-small');\n  const visibleGalleryButtons = [];\n  allGalleryButtons.forEach((elem) => {\n    if (elem.parentElement.offsetParent) visibleGalleryButtons.push(elem);\n  });\n  return visibleGalleryButtons;\n}\n\nfunction selected_gallery_button() {\n  let allCurrentButtons = gradioApp().querySelectorAll('[style=\"display: block;\"].tabitem div[id$=_gallery].gradio-gallery .thumbnail-item.thumbnail-small.selected');\n  if (allCurrentButtons.length === 0) allCurrentButtons = gradioApp().querySelectorAll('.gradio-gallery .thumbnails > .thumbnail-item.thumbnail-small.selected');\n  let visibleCurrentButton = null;\n  allCurrentButtons.forEach((elem) => {\n    if (elem.parentElement.offsetParent) visibleCurrentButton = elem;\n  });\n  return visibleCurrentButton;\n}\n\nfunction selected_gallery_index() {\n  const buttons = all_gallery_buttons();\n  const button = selected_gallery_button();\n  let result = -1;\n  buttons.forEach((v, i) => { if (v === button) { result = i; } });\n  if (result === -1 && gradioApp().getElementById('tab-gallery-search')?.checkVisibility()) {\n    const gallerySelection = window.getGallerySelection();\n    if (Number.isInteger(gallerySelection.index)) result = gallerySelection.index;\n  }\n  return result;\n}\n\nfunction selected_gallery_files(tabname) {\n  let allImages = [];\n  let allThumbnails;\n  if (tabname && tabname !== 'gallery') allThumbnails = gradioApp().querySelectorAll('div[id$=_gallery].gradio-gallery .thumbnail-item.thumbnail-small');\n  else allThumbnails = gradioApp().querySelectorAll('.gradio-gallery .thumbnails > .thumbnail-item.thumbnail-small');\n  try {\n    allImages = Array.from(allThumbnails).map((v) => v.querySelector('img'));\n    if (tabname && tabname !== 'gallery') allImages = allImages.filter((img) => isVisible(img));\n    allImages = allImages.map((img) => {\n      let fn = img.src;\n      if (fn.includes('file=')) fn = fn.split('file=')[1];\n      return decodeURI(fn);\n    });\n  } catch (err) {\n    error(`selected_gallery_files: ${err}`);\n  }\n  let selectedIndex = -1;\n  if (tabname && tabname !== 'gallery') selectedIndex = selected_gallery_index();\n  return [allImages, selectedIndex];\n}\n\nfunction extract_image_from_gallery(gallery) {\n  if (gallery.length === 0) return [null];\n  if (gallery.length === 1) return [gallery[0]];\n  let index = selected_gallery_index();\n  if (index < 0 || index >= gallery.length) index = 0;\n  return [gallery[index]];\n}\n\nfunction send_to_kanvas(gallery) {\n  const [image] = extract_image_from_gallery(gallery);\n  log('sendToKanvas', image);\n  if (window.loadFromURL && image.data) window.loadFromURL(image.data);\n  // const inputPanelEl = gradioApp().getElementById('control-template-column-input');\n  // if (inputPanelEl) inputPanelEl.classList.remove('hidden');\n  const inputPanelCb = gradioApp().getElementById('control_dynamic_input');\n  if (inputPanelCb && !inputPanelCb.checked) inputPanelCb.click();\n}\n\nasync function setTheme(val, old) {\n  if (!old || val === old) return;\n  old = old.replace('modern/', '');\n  val = val.replace('modern/', '');\n  const links = Array.from(document.getElementsByTagName('link')).filter((l) => l.href.includes(old));\n  if (links.length === 0) {\n    log('setTheme: current theme not matched', old);\n    return;\n  }\n  for (const link of links) {\n    const href = link.href.replace(old, val);\n    const res = await fetch(href);\n    if (res.ok) {\n      log('setTheme', old, val);\n      link.href = link.href.replace(old, val);\n    } else {\n      log('setTheme: CSS not found', val);\n    }\n  }\n}\n\nfunction setFontSize(val, old) {\n  const size = val || opts.font_size;\n  if (size === old) return;\n  document.documentElement.style.setProperty('--font-size', `${size}px`);\n  gradioApp().style.setProperty('--font-size', `${size}px`);\n  gradioApp().style.setProperty('--text-xxs', `${size - 3}px`);\n  gradioApp().style.setProperty('--text-xs', `${size - 2}px`);\n  gradioApp().style.setProperty('--text-sm', `${size - 1}px`);\n  gradioApp().style.setProperty('--text-md', `${size}px`);\n  gradioApp().style.setProperty('--text-lg', `${size + 1}px`);\n  gradioApp().style.setProperty('--text-xl', `${size + 2}px`);\n  gradioApp().style.setProperty('--text-xxl', `${size + 3}px`);\n  log('setFontSize', size);\n}\n\nfunction switchToTab(tab) {\n  const tabs = Array.from(gradioApp().querySelectorAll('#tabs > .tab-nav > button'));\n  const btn = tabs?.find((t) => t.innerText === tab);\n  log('switchToTab', tab);\n  if (btn) btn.click();\n}\n\nfunction switch_to_txt2img(...args) {\n  switchToTab('Text');\n  return Array.from(arguments);\n}\n\nfunction switch_to_img2img_tab(no) {\n  switchToTab('Image');\n  gradioApp().getElementById('mode_img2img').querySelectorAll('button')[no].click();\n}\n\nfunction switch_to_img2img(...args) {\n  switchToTab('Image');\n  switch_to_img2img_tab(0);\n  return Array.from(arguments);\n}\n\nfunction switch_to_inpaint(...args) {\n  switchToTab('Image');\n  switch_to_img2img_tab(1);\n  return Array.from(arguments);\n}\n\nfunction switch_to_sketch(...args) {\n  switchToTab('Image');\n  switch_to_img2img_tab(2);\n  return Array.from(arguments);\n}\n\nfunction switch_to_composite(...args) {\n  switchToTab('Image');\n  switch_to_img2img_tab(3);\n  return Array.from(arguments);\n}\n\nfunction switch_to_extras(...args) {\n  switchToTab('Process');\n  return Array.from(arguments);\n}\n\nfunction switch_to_control(...args) {\n  switchToTab('Control');\n  return Array.from(arguments);\n}\n\nfunction switch_to_video(...args) {\n  switchToTab('Video');\n  return Array.from(arguments);\n}\n\nfunction switch_to_caption(...args) {\n  switchToTab('Caption');\n  return Array.from(arguments);\n}\n\nfunction get_tab_index(tabId) {\n  let res = 0;\n  gradioApp().getElementById(tabId)?.querySelector('div').querySelectorAll('button')\n    .forEach((button, i) => {\n      if (button.className.indexOf('selected') !== -1) res = i;\n    });\n  return res;\n}\n\nfunction create_tab_index_args(tabId, args) {\n  const res = Array.from(args);\n  res[0] = get_tab_index(tabId);\n  return res;\n}\n\nfunction get_img2img_tab_index(...args) {\n  const res = Array.from(arguments);\n  res.splice(-2);\n  res[0] = get_tab_index('mode_img2img');\n  return res;\n}\n\nfunction create_submit_args(args) {\n  const res = Array.from(args);\n  if (Array.isArray(res[res.length - 3])) res[res.length - 3] = null;\n  return res;\n}\n\nfunction showSubmitButtons(tabname, show) {}\n\nfunction clearGallery(tabname) {\n  const gallery = gradioApp().getElementById(`${tabname}_gallery`);\n  gallery.classList.remove('logo');\n  // gallery.style.height = window.innerHeight - gallery.getBoundingClientRect().top - 200 + 'px'\n  const footer = gradioApp().getElementById(`${tabname}_footer`);\n  footer.style.display = 'flex';\n}\n\nfunction submit_txt2img(...args) {\n  log('submitTxt');\n  clearGallery('txt2img');\n  const id = randomId();\n  requestProgress(id, null, gradioApp().getElementById('txt2img_gallery'));\n  const res = create_submit_args(args);\n  res[0] = id;\n  res[1] = window.submit_state;\n  window.submit_state = '';\n  return res;\n}\n\nfunction submit_img2img(...args) {\n  log('submitImg');\n  clearGallery('img2img');\n  const id = randomId();\n  requestProgress(id, null, gradioApp().getElementById('img2img_gallery'));\n  const res = create_submit_args(args);\n  res[0] = id;\n  res[1] = window.submit_state;\n  res[2] = get_tab_index('mode_img2img');\n  window.submit_state = '';\n  return res;\n}\n\nfunction submit_control(...args) {\n  log('submitControl');\n  clearGallery('control');\n  const id = randomId();\n  requestProgress(id, null, gradioApp().getElementById('control_gallery'));\n  const res = create_submit_args(args);\n  res[0] = id;\n  res[1] = window.submit_state;\n\n  const tabs = Array.from(gradioApp().querySelectorAll('#control-tabs > .tab-nav > button'));\n  const tabIdx = tabs.findIndex((btn) => btn.classList.contains('selected'));\n  const tabNames = ['ControlNet', 'T2I Adapter', 'XS', 'Lite', 'Reference'];\n  const selectedTab = tabNames[tabIdx] || 'ControlNet';\n  res[2] = selectedTab.toLowerCase();\n  window.submit_state = '';\n  return res;\n}\n\nfunction submit_video(...args) {\n  log('submitVideo');\n  clearGallery('video');\n  const id = randomId();\n  requestProgress(id, null, gradioApp().getElementById('video_gallery'));\n  const res = create_submit_args(args);\n  res[0] = id;\n  res[1] = window.submit_state;\n  window.submit_state = '';\n  return res;\n}\n\nfunction submit_framepack(...args) {\n  const id = randomId();\n  log('submitFramepack', id);\n  requestProgress(id, null, null);\n  window.submit_state = '';\n  args[0] = id;\n  return args;\n}\n\nfunction submit_ltx(...args) {\n  const id = randomId();\n  log('submitFramepack', id);\n  requestProgress(id, null, null);\n  window.submit_state = '';\n  args[0] = id;\n  return args;\n}\n\nfunction submit_video_wrapper(...args) {\n  const modernEl = gradioApp().querySelector('.video_output.fade-in');\n  let id = modernEl ? modernEl.id : args[0];\n  id = id.replace('video-selector-', '');\n  log('submitVideoWrapper', id);\n  const btn = gradioApp().getElementById(`${id}_generate_btn`);\n  if (btn) btn.click();\n}\n\nfunction submit_postprocessing(...args) {\n  log('SubmitExtras');\n  clearGallery('extras');\n  return args;\n}\n\nwindow.submit = submit_txt2img;\nwindow.submit_state = '';\n\nfunction modelmerger(...args) {\n  const id = randomId();\n  const res = create_submit_args(args);\n  res[0] = id;\n  return res;\n}\n\nfunction clearPrompts(prompt, negative_prompt) {\n  prompt = '';\n  negative_prompt = '';\n  return [prompt, negative_prompt];\n}\n\nconst promptTokenCountUpdateFuncs = {};\n\nfunction recalculatePromptTokens(name) {\n  if (promptTokenCountUpdateFuncs[name]) {\n    promptTokenCountUpdateFuncs[name]();\n  }\n}\n\nfunction recalculate_prompts_txt2img(...args) {\n  recalculatePromptTokens('txt2img_prompt');\n  recalculatePromptTokens('txt2img_neg_prompt');\n  return Array.from(arguments);\n}\n\nfunction recalculate_prompts_img2img(...args) {\n  recalculatePromptTokens('img2img_prompt');\n  recalculatePromptTokens('img2img_neg_prompt');\n  return Array.from(arguments);\n}\n\nfunction recalculate_prompts_inpaint(...args) {\n  recalculatePromptTokens('img2img_prompt');\n  recalculatePromptTokens('img2img_neg_prompt');\n  return Array.from(arguments);\n}\n\nfunction recalculate_prompts_control(...args) {\n  recalculatePromptTokens('control_prompt');\n  recalculatePromptTokens('control_neg_prompt');\n  return Array.from(arguments);\n}\n\nfunction registerDragDrop() {\n  const qs = gradioApp().getElementById('quicksettings');\n  if (!qs) return;\n  qs.addEventListener('dragover', (evt) => {\n    evt.preventDefault();\n    evt.dataTransfer.dropEffect = 'copy';\n  });\n  qs.addEventListener('drop', (evt) => {\n    evt.preventDefault();\n    evt.dataTransfer.dropEffect = 'copy';\n    for (const f of evt.dataTransfer.files) {\n      log('QuickSettingsDrop', f);\n    }\n  });\n}\n\nfunction sortUIElements() {\n  // sort top-level tabs\n  const currSelected = gradioApp()?.querySelector('.tab-nav > .selected')?.innerText;\n  if (currSelected === tabSelected || !opts.ui_tab_reorder) return;\n  tabSelected = currSelected;\n  const tabs = gradioApp().getElementById('tabs')?.children[0];\n  if (!tabs) return;\n  let tabsOrder = opts.ui_tab_reorder?.split(',').map((el) => el.trim().toLowerCase()) || [];\n  for (const el of Array.from(tabs.children)) {\n    const elIndex = tabsOrder.indexOf(el.innerText.toLowerCase());\n    if (elIndex > -1) el.style.order = elIndex - 50; // default is 0 so setting to negative values\n  }\n  // sort always-on scripts\n  const find = (el, ordered) => {\n    for (const i in ordered) {\n      if (el.innerText.toLowerCase().startsWith(ordered[i])) return i;\n    }\n    return 99;\n  };\n\n  tabsOrder = opts.ui_scripts_reorder?.split(',').map((el) => el.trim().toLowerCase()) || [];\n\n  const scriptsTxt = gradioApp().getElementById('scripts_alwayson_txt2img').children;\n  for (const el of Array.from(scriptsTxt)) el.style.order = find(el, tabsOrder);\n\n  const scriptsImg = gradioApp().getElementById('scripts_alwayson_img2img').children;\n  for (const el of Array.from(scriptsImg)) el.style.order = find(el, tabsOrder);\n  log('sortUIElements');\n}\n\nonAfterUiUpdate(async () => {\n  async function registerTextarea(id, id_counter, id_button) {\n    const prompt = gradioApp().getElementById(id);\n    if (!prompt) return;\n    const counter = gradioApp().getElementById(id_counter);\n    const localTextarea = gradioApp().querySelector(`#${id} > label > textarea`);\n    if (counter.parentElement === prompt.parentElement) return;\n    prompt.parentElement.insertBefore(counter, prompt);\n    prompt.parentElement.style.position = 'relative';\n    promptTokenCountUpdateFuncs[id] = () => { update_token_counter(id_button); };\n    localTextarea.addEventListener('input', promptTokenCountUpdateFuncs[id]);\n  }\n\n  // sortUIElements();\n  if (promptsInitialized) return;\n  log('initPrompts');\n  registerTextarea('txt2img_prompt', 'txt2img_token_counter', 'txt2img_token_button');\n  registerTextarea('txt2img_neg_prompt', 'txt2img_negative_token_counter', 'txt2img_negative_token_button');\n  registerTextarea('img2img_prompt', 'img2img_token_counter', 'img2img_token_button');\n  registerTextarea('img2img_neg_prompt', 'img2img_negative_token_counter', 'img2img_negative_token_button');\n  registerTextarea('control_prompt', 'control_token_counter', 'control_token_button');\n  registerTextarea('control_neg_prompt', 'control_negative_token_counter', 'control_negative_token_button');\n  promptsInitialized = true;\n});\n\nfunction update_txt2img_tokens(...args) {\n  update_token_counter('txt2img_token_button');\n  if (args.length === 2) return args[0];\n  return args;\n}\n\nfunction update_img2img_tokens(...args) {\n  update_token_counter('img2img_token_button');\n  if (args.length === 2) return args[0];\n  return args;\n}\n\nfunction getTranslation(...args) {\n  return null;\n}\n\nfunction monitorServerStatus() {\n  document.open();\n  document.write(`\n    <html>\n      <head><title>SD.Next</title></head>\n      <body style=\"background: #222222; font-size: 1rem; font-family:monospace; margin-top:20%; color:lightgray; text-align:center\">\n        <h1>Waiting for server...</h1>\n        <script>\n          function monitorServerStatus() {\n            fetch('${window.api}/progress?skip_current_image=true')\n              .then((res) => { !res?.ok ? setTimeout(monitorServerStatus, 1000) : location.reload(); })\n              .catch((e) => setTimeout(monitorServerStatus, 1000))\n          }\n          window.onload = () => monitorServerStatus();\n        </script>\n      </body>\n    </html>\n  `);\n  document.close();\n}\n\nfunction restartReload() {\n  document.body.style = 'background: #222222; font-size: 1rem; font-family:monospace; margin-top:20%; color:lightgray; text-align:center';\n  document.body.innerHTML = '<h1>Server shutdown in progress...</h1>';\n  authFetch(`${window.api}/progress?skip_current_image=true`)\n    .then((res) => setTimeout(restartReload, 1000))\n    .catch((e) => setTimeout(monitorServerStatus, 500));\n  return [];\n}\n\nfunction updateInput(target) {\n  const e = new Event('input', { bubbles: true });\n  Object.defineProperty(e, 'target', { value: target });\n  target.dispatchEvent(e);\n}\n\nlet desiredCheckpointName = null;\nfunction selectCheckpoint(name) {\n  desiredCheckpointName = name;\n  const tabName = getENActiveTab();\n  const btnModel = gradioApp().getElementById(`${tabName}_extra_model`);\n  const isRefiner = btnModel && btnModel.classList.contains('toolbutton-selected');\n  if (isRefiner) gradioApp().getElementById('change_refiner').click();\n  else gradioApp().getElementById('change_checkpoint').click();\n  log(`selectCheckpoint ${isRefiner ? 'refiner' : 'model'}: ${desiredCheckpointName}`);\n  markSelectedCards([desiredCheckpointName], 'model');\n}\n\nlet desiredVAEName = null;\nfunction selectVAE(name) {\n  desiredVAEName = name;\n  gradioApp().getElementById('change_vae').click();\n  log(`selectVAE: ${desiredVAEName}`);\n  markSelectedCards([desiredVAEName], 'vae');\n}\n\nfunction selectReference(name) {\n  log(`selectReference: ${name}`);\n  desiredCheckpointName = name;\n  gradioApp().getElementById('change_reference').click();\n  markSelectedCards([desiredCheckpointName], 'model');\n}\n\nfunction currentImageResolutionimg2img(_a, _b, scaleBy) {\n  const img = gradioApp().querySelector('#mode_img2img > div[style=\"display: block;\"] img');\n  return img ? [img.naturalWidth, img.naturalHeight, scaleBy] : [0, 0, scaleBy];\n}\n\nfunction currentImageResolutioncontrol(_a, _b, scaleBy) {\n  const img = gradioApp().querySelector('#control-tab-input > div[style=\"display: block;\"] img');\n  return img ? [img.naturalWidth, img.naturalHeight, scaleBy] : [0, 0, scaleBy];\n}\n\nfunction updateImg2imgResizeToTextAfterChangingImage() {\n  const el = gradioApp().getElementById('img2img_update_resize_to');\n  if (el) setTimeout(() => gradioApp().getElementById('img2img_update_resize_to').click(), 500);\n  return [];\n}\n\nfunction createThemeElement() {\n  const el = document.createElement('img');\n  el.id = 'theme-preview';\n  el.className = 'theme-preview';\n  el.onclick = () => { el.style.display = 'none'; };\n  document.body.appendChild(el);\n  return el;\n}\n\nfunction toggleCompact(val, old) {\n  if (val === old) return;\n  log('toggleCompact', val, old);\n  if (val) {\n    gradioApp().style.setProperty('--layout-gap', 'var(--spacing-md)');\n    gradioApp().querySelectorAll('input[type=range]').forEach((el) => el.classList.add('hidden'));\n    gradioApp().querySelectorAll('div .form').forEach((el) => el.classList.add('form-compact'));\n    gradioApp().querySelectorAll('.small-accordion .label-wrap').forEach((el) => el.classList.add('accordion-compact'));\n  } else {\n    gradioApp().style.setProperty('--layout-gap', 'var(--spacing-xxl)');\n    gradioApp().querySelectorAll('input[type=range]').forEach((el) => el.classList.remove('hidden'));\n    gradioApp().querySelectorAll('div .form').forEach((el) => el.classList.remove('form-compact'));\n    gradioApp().querySelectorAll('.small-accordion .label-wrap').forEach((el) => el.classList.remove('accordion-compact'));\n  }\n}\n\nfunction previewTheme() {\n  let name = gradioApp().getElementById('setting_gradio_theme').querySelectorAll('input')?.[0].value || '';\n  fetch(`${window.subpath}/file=data/themes.json`)\n    .then((res) => {\n      res.json()\n        .then((themes) => {\n          const theme = Array.isArray(themes) ? themes.find((t) => t.id === name) : null;\n          if (theme) {\n            window.open(theme.subdomain, '_blank');\n          } else {\n            const el = document.getElementById('theme-preview') || createThemeElement();\n            el.style.display = el.style.display === 'block' ? 'none' : 'block';\n            name = name.replace('/', '-');\n            el.src = `/file=html/${name}.jpg`;\n          }\n        })\n        .catch((e) => error(`previewTheme: ${e}`));\n    })\n    .catch((e) => error(`previewTheme: ${e}`));\n}\n\nasync function browseFolder() {\n  const f = await window.showDirectoryPicker();\n  if (f && f.kind === 'directory') return f.name;\n  return null;\n}\n\nasync function reconnectUI() {\n  const gallery = gradioApp().getElementById('txt2img_gallery');\n  const task_id = localStorage.getItem('task');\n  const api_logo = Array.from(gradioApp().querySelectorAll('img')).filter((el) => el?.src?.endsWith('api-logo.svg'));\n  if (api_logo.length > 0) api_logo[0].remove();\n  if (task_id) {\n    debug('task check:', task_id);\n    requestProgress(task_id, null, gallery, null, null, true);\n  }\n  uiLoaded = true;\n\n  const sd_model = gradioApp().getElementById('setting_sd_model_checkpoint');\n  let loadingStarted = 0;\n  let loadingMonitor = 0;\n\n  const sd_model_callback = () => {\n    const loading = sd_model.querySelector('.eta-bar');\n    if (!loading) {\n      loadingStarted = 0;\n      clearInterval(loadingMonitor);\n    } else if (loadingStarted === 0) {\n      loadingStarted = Date.now();\n      loadingMonitor = setInterval(() => {\n        const elapsed = Date.now() - loadingStarted;\n        if (elapsed > 3000 && loading) loading.style.display = 'none';\n      }, 5000);\n    }\n  };\n  const sd_model_observer = new MutationObserver(sd_model_callback);\n  sd_model_observer.observe(sd_model, { attributes: true, childList: true, subtree: true });\n  log('reconnectUI');\n  monitorConnection();\n}\n"
  },
  {
    "path": "javascript/uiConfig.js",
    "content": "function uiOpenSubmenus() {\n  const accordions = Array.from(gradioApp().querySelectorAll('.gradio-accordion'));\n  const states = {};\n  accordions.forEach((el) => {\n    const name = el.querySelector('.label-wrap > span:not(.icon)').innerText.trim();\n    const children = Array.from(el.childNodes);\n    const open = children.filter((c) => c.style?.display === 'block');\n    if (states[name] === undefined) states[name] = open.length > 0;\n  });\n  return states;\n}\n\nasync function getUIDefaults() {\n  const btn = gradioApp().getElementById('ui_defaults_view');\n  if (!btn) return;\n  const intersectionObserver = new IntersectionObserver((entries) => {\n    if (entries[0].intersectionRatio <= 0) { /* Pass */ }\n    if (entries[0].intersectionRatio > 0) btn.click();\n  });\n  intersectionObserver.observe(btn); // monitor visibility of tab\n}\n"
  },
  {
    "path": "launch.py",
    "content": "#!/usr/bin/env python\n\nimport os\nimport sys\nimport time\nimport shlex\nimport subprocess\nfrom functools import lru_cache\nimport installer\n\n\ndebug_install = installer.log.debug if os.environ.get('SD_INSTALL_DEBUG', None) is not None else lambda *args, **kwargs: None\ncommandline_args = os.environ.get('COMMANDLINE_ARGS', \"\")\nsys.argv += shlex.split(commandline_args)\nargs = None\nparser = None\nscript_path = None\nextensions_dir = None\ngit = os.environ.get('GIT', \"git\")\nindex_url = os.environ.get('INDEX_URL', \"\")\nstored_commit_hash = None\ndir_repos = \"repositories\"\npython = sys.executable # used by some extensions to run python\nskip_install = False # parsed by some extensions\n\n\ntry:\n    from modules.timer import launch, init\n    rec = launch.record\n    init_summary = init.summary\nexcept Exception:\n    rec = lambda *args, **kwargs: None # pylint: disable=unnecessary-lambda-assignment\n    init_summary = lambda *args, **kwargs: None # pylint: disable=unnecessary-lambda-assignment\n\n\ndef init_args():\n    global parser, args # pylint: disable=global-statement\n    import modules.cmd_args\n    parser = modules.cmd_args.parser\n    installer.add_args(parser)\n    args, _ = parser.parse_known_args()\n    rec('args')\n\n\ndef init_paths():\n    global script_path, extensions_dir # pylint: disable=global-statement\n    import modules.paths\n    script_path = modules.paths.script_path\n    extensions_dir = modules.paths.extensions_dir\n    sys.path.insert(0, script_path)\n    rec('paths')\n\n\ndef get_custom_args():\n    custom = {}\n    for arg in vars(args):\n        default = parser.get_default(arg)\n        current = getattr(args, arg)\n        if current != default:\n            custom[arg] = getattr(args, arg)\n    installer.log.info(f'Command line args: {sys.argv[1:]} {installer.print_dict(custom)}')\n    if os.environ.get('SD_ENV_DEBUG', None) is not None:\n        env = os.environ.copy()\n        if 'PATH' in env:\n            del env['PATH']\n        if 'PS1' in env:\n            del env['PS1']\n        installer.log.trace(f'Environment: {installer.print_dict(env)}')\n    env = [f'{k}={v}' for k, v in os.environ.items() if k.startswith('SD_')]\n    ld = [f'{k}={v}' for k, v in os.environ.items() if k.startswith('LD_')]\n    installer.log.debug(f'Flags: sd={env} ld={ld}')\n    rec('args')\n\n\n@lru_cache()\ndef commit_hash(): # compatbility function\n    global stored_commit_hash # pylint: disable=global-statement\n    if stored_commit_hash is not None:\n        return stored_commit_hash\n    try:\n        stored_commit_hash = run(f\"{git} rev-parse HEAD\").strip()\n    except Exception:\n        stored_commit_hash = \"<none>\"\n    rec('commit')\n    return stored_commit_hash\n\n\n@lru_cache()\ndef run(command, desc=None, errdesc=None, custom_env=None, live=False): # compatbility function\n    if desc is not None:\n        installer.log.info(desc)\n    if live:\n        result = subprocess.run(command, check=False, shell=True, env=os.environ if custom_env is None else custom_env)\n        if result.returncode != 0:\n            raise RuntimeError(f\"\"\"{errdesc or 'Error running command'} Command: {command} Error code: {result.returncode}\"\"\")\n        return ''\n    result = subprocess.run(command, stdout=subprocess.PIPE, check=False, stderr=subprocess.PIPE, shell=True, env=os.environ if custom_env is None else custom_env)\n    if result.returncode != 0:\n        raise RuntimeError(f\"\"\"{errdesc or 'Error running command'}: {command} code: {result.returncode}\n{result.stdout.decode(encoding=\"utf8\", errors=\"ignore\") if len(result.stdout)>0 else ''}\n{result.stderr.decode(encoding=\"utf8\", errors=\"ignore\") if len(result.stderr)>0 else ''}\n\"\"\")\n    return result.stdout.decode(encoding=\"utf8\", errors=\"ignore\")\n\n\ndef check_run(command): # compatbility function\n    result = subprocess.run(command, check=False, stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True)\n    return result.returncode == 0\n\n\n@lru_cache()\ndef is_installed(pkg): # compatbility function\n    return installer.installed(pkg)\n\n\n@lru_cache()\ndef repo_dir(name): # compatbility function\n    return os.path.join(script_path, dir_repos, name)\n\n\n@lru_cache()\ndef run_python(code, desc=None, errdesc=None): # compatbility function\n    return run(f'\"{sys.executable}\" -c \"{code}\"', desc, errdesc)\n\n\n@lru_cache()\ndef run_pip(pkg, desc=None): # compatbility function\n    forbidden = ['onnxruntime', 'opencv-python']\n    if desc is None:\n        desc = pkg\n    for f in forbidden:\n        if f in pkg:\n            debug_install(f'Blocked package installation: package={f}')\n            return True\n    index_url_line = f' --index-url {index_url}' if index_url != '' else ''\n    return run(f'\"{sys.executable}\" -m pip {pkg} --prefer-binary{index_url_line}', desc=f\"Installing {desc}\", errdesc=f\"Couldn't install {desc}\")\n\n\n@lru_cache()\ndef check_run_python(code): # compatbility function\n    return check_run(f'\"{sys.executable}\" -c \"{code}\"')\n\n\ndef git_clone(url, tgt, _name, commithash=None): # compatbility function\n    installer.clone(url, tgt, commithash)\n\n\ndef run_extension_installer(ext_dir): # compatbility function\n    installer.run_extension_installer(ext_dir)\n\n\ndef get_memory_stats(detailed:bool=False):\n    from modules.memstats import ram_stats, memory_stats\n    if not detailed:\n        res = ram_stats()\n        return f'{res[\"used\"]}/{res[\"total\"]}'\n    else:\n        res = memory_stats()\n        return res\n\n\ndef clean_server():\n    t0 = time.time()\n    import gc\n    modules_loaded = sorted(sys.modules.keys())\n    modules_to_remove = ['webui', 'modules', 'scripts', 'gradio',\n                         'onnx', 'torch', 'pytorch', 'lightning', 'tensor', 'diffusers', 'transformers', 'tokenize', 'safetensors', 'gguf', 'accelerate', 'peft', 'triton', 'huggingface',\n                         'PIL', 'cv2', 'timm', 'numpy', 'scipy', 'sympy', 'sklearn', 'skimage', 'sqlalchemy', 'flash_attn', 'bitsandbytes', 'xformers', 'matplotlib', 'optimum', 'pandas', 'pi', 'git', 're', 'altair',\n                         'framepack', 'nudenet', 'agent_scheduler', 'basicsr', 'gfpgan', 'war',\n                         'fastapi', 'urllib', 'uvicorn', 'web', 'http', 'google', 'starlette', 'socket']\n    removed_removed = []\n    for module_loaded in modules_loaded:\n        for module_to_remove in modules_to_remove:\n            if module_loaded.startswith(module_to_remove):\n                try:\n                    del sys.modules[module_loaded]\n                    removed_removed.append(module_loaded)\n                except Exception:\n                    pass\n    collected = gc.collect() # python gc\n    modules_cleaned = sorted(sys.modules.keys())\n    modules_keys = [m.split('.')[0] for m in modules_cleaned if not m.startswith('_')]\n    modules_sorted = {}\n    for module_key in modules_keys:\n        modules_sorted[module_key] = len([m for m in modules_cleaned if m.startswith(module_key)])\n    installer.log.trace(f'Server modules: {modules_sorted}')\n    t1 = time.time()\n    installer.log.trace(f'Server modules: total={len(modules_loaded)} unloaded={len(removed_removed)} remaining={len(modules_cleaned)} gc={collected} time={t1-t0:.2f}')\n\n\ndef start_server(immediate=True, server=None):\n    if args.profile:\n        import cProfile\n        pr = cProfile.Profile()\n        pr.enable()\n    import gc\n    import importlib.util\n    collected = 0\n    if server is not None:\n        server = None\n        collected = gc.collect()\n    if not immediate:\n        time.sleep(3)\n    if collected > 0:\n        installer.log.debug(f'Memory: {get_memory_stats()} collected={collected}')\n    module_spec = importlib.util.spec_from_file_location('webui', 'webui.py')\n    server = importlib.util.module_from_spec(module_spec)\n    installer.log.debug(f'Starting module: {server}')\n    module_spec.loader.exec_module(server)\n    uvicorn = None\n    if args.test:\n        installer.log.info(\"Test only\")\n        installer.log.critical('Logging: level=critical')\n        installer.log.error('Logging: level=error')\n        installer.log.warning('Logging: level=warning')\n        installer.log.info('Logging: level=info')\n        installer.log.debug('Logging: level=debug')\n        installer.log.trace('Logging: level=trace')\n        server.wants_restart = False\n    else:\n        uvicorn = server.webui(restart=not immediate)\n    if args.profile:\n        pr.disable()\n        installer.print_profile(pr, 'WebUI')\n    rec('server')\n    return uvicorn, server\n\n\ndef main():\n    global args # pylint: disable=global-statement\n    installer.ensure_base_requirements()\n    init_args() # setup argparser and default folders\n    installer.args = args\n    installer.setup_logging()\n    installer.log.info('Starting SD.Next')\n    installer.get_logfile()\n    try:\n        sys.excepthook = installer.custom_excepthook\n    except Exception:\n        pass\n    installer.read_options()\n    if args.skip_all:\n        args.quick = True\n    installer.check_python()\n    if args.reset:\n        installer.git_reset()\n    if args.skip_git or args.skip_all:\n        installer.log.info('Skipping GIT operations')\n    installer.check_version()\n    installer.log.info(f'Platform: {installer.print_dict(installer.get_platform())}')\n    installer.check_venv()\n    installer.log.info(f'Args: {sys.argv[1:]}')\n    if not args.skip_env or args.skip_all:\n        installer.set_environment()\n    if args.uv:\n        installer.install(\"uv\", \"uv\")\n    installer.install_gradio()\n    installer.check_torch()\n    installer.check_onnx()\n    installer.check_transformers()\n    installer.check_diffusers()\n    installer.check_modified_files()\n    if args.test:\n        installer.log.info('Startup: test mode')\n        installer.quick_allowed = False\n    if args.reinstall:\n        installer.log.info('Startup: force reinstall of all packages')\n        installer.quick_allowed = False\n    if args.skip_all:\n        installer.log.info('Startup: skip all')\n        installer.quick_allowed = True\n        init_paths()\n    else:\n        installer.install_requirements()\n        installer.install_packages()\n        if installer.check_timestamp():\n            installer.log.info('Startup: quick launch')\n            init_paths()\n            installer.check_extensions()\n        else:\n            installer.log.info('Startup: standard')\n            installer.install_submodules()\n            init_paths()\n            installer.install_extensions()\n            installer.install_requirements() # redo requirements since extensions may change them\n            installer.update_wiki()\n            if len(installer.errors) == 0:\n                installer.log.debug(f'Setup complete without errors: {round(time.time())}')\n            else:\n                installer.log.warning(f'Setup complete with errors: {installer.errors}')\n                installer.log.warning(f'See log file for more details: {installer.log_file}')\n    installer.extensions_preload(parser) # adds additional args from extensions\n    args = installer.parse_args(parser)\n    installer.log.info(f'Installer time: {init_summary()}')\n    get_custom_args()\n\n    uv, instance = start_server(immediate=True, server=None)\n    if installer.restart_required:\n        installer.log.warning('Restart is recommended due to packages updates...')\n    t_server = time.time()\n    t_monitor = time.time()\n    while True:\n        try:\n            alive = uv.thread.is_alive()\n            requests = uv.server_state.total_requests if hasattr(uv, 'server_state') else 0\n        except Exception:\n            alive = False\n            requests = 0\n        t_current = time.time()\n        if float(args.status) > 0 and (t_current - t_server) > float(args.status):\n            s = instance.state.status()\n            if (s.timestamp is None) or (s.step == 0): # dont spam during active job\n                installer.log.trace(f'Server: alive={alive} requests={requests} memory={get_memory_stats()} {s}')\n            t_server = t_current\n        if float(args.monitor) > 0 and t_current - t_monitor > float(args.monitor):\n            installer.log.trace(f'Monitor: {get_memory_stats(detailed=True)}')\n            t_monitor = t_current\n        if not alive:\n            if uv is not None and uv.wants_restart:\n                clean_server()\n                installer.log.info('Server restarting...')\n                # uv, instance = start_server(immediate=False, server=instance)\n                os.execv(sys.executable, ['python'] + sys.argv)\n            else:\n                installer.log.info('Exiting...')\n                break\n        time.sleep(1.0)\n\n\nif __name__ == \"__main__\":\n    main()\n"
  },
  {
    "path": "modules/apg/__init__.py",
    "content": "# copied from paper: <https://arxiv.org/pdf/2410.02416>\n\nimport torch\nimport diffusers\nfrom .pipeline_stable_diffision_xl_apg import StableDiffusionXLPipelineAPG\nfrom .pipeline_stable_cascade_prior_apg import StableCascadePriorPipelineAPG\nfrom .pipeline_stable_diffusion_apg import StableDiffusionPipelineAPG\n\n\nclass MomentumBuffer:\n    def __init__(self, momentum_val: float):\n        self.momentum = momentum_val\n        self.running_average = 0\n    def update(self, update_value: torch.Tensor):\n        new_average = self.momentum * self.running_average\n        self.running_average = update_value + new_average\n\n\neta = 0\nmomentum = 0\nthreshold = 0\nbuffer: MomentumBuffer = None\norig_pipe: diffusers.DiffusionPipeline = None\n\n\ndef project(\n    v0: torch.Tensor, # [B, C, H, W]\n    v1: torch.Tensor, # [B, C, H, W]\n    ):\n    device = v0.device\n    dtype = v0.dtype\n    if device.type == \"xpu\":\n        v0, v1 = v0.to(\"cpu\"), v1.to(\"cpu\")\n    v0, v1 = v0.double(), v1.double()\n    v1 = torch.nn.functional.normalize(v1, dim=[-1, -2, -3])\n    v0_parallel = (v0 * v1).sum(dim=[-1, -2, -3], keepdim=True) * v1\n    v0_orthogonal = v0 - v0_parallel\n    return v0_parallel.to(device, dtype=dtype), v0_orthogonal.to(device, dtype=dtype)\n\n\ndef normalized_guidance(\n    pred_cond: torch.Tensor, # [B, C, H, W]\n    pred_uncond: torch.Tensor, # [B, C, H, W]\n    guidance_scale: float,\n    ):\n    diff = pred_cond - pred_uncond\n    if buffer is not None:\n        buffer.update(diff)\n        diff = buffer.running_average\n    if threshold > 0:\n        ones = torch.ones_like(diff)\n        diff_norm = diff.norm(p=2, dim=[-1, -2, -3], keepdim=True)\n        scale_factor = torch.minimum(ones, threshold / diff_norm)\n        diff = diff * scale_factor\n    diff_parallel, diff_orthogonal = project(diff, pred_cond)\n    normalized_update = diff_orthogonal + eta * diff_parallel\n    pred_guided = pred_cond + (guidance_scale - 1) * normalized_update\n    return pred_guided\n"
  },
  {
    "path": "modules/apg/pipeline_stable_cascade_prior_apg.py",
    "content": "# Copyright 2024 The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nfrom dataclasses import dataclass\nfrom math import ceil\nfrom typing import Callable, Dict, List, Optional, Union\n\nimport numpy as np\nimport PIL\nimport torch\nfrom transformers import CLIPImageProcessor, CLIPTextModelWithProjection, CLIPTokenizer, CLIPVisionModelWithProjection\n\nfrom diffusers.models import StableCascadeUNet\nfrom diffusers.schedulers import DDPMWuerstchenScheduler\nfrom diffusers.utils import BaseOutput, logging, replace_example_docstring\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline\nfrom modules import apg\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\nDEFAULT_STAGE_C_TIMESTEPS = list(np.linspace(1.0, 2 / 3, 20)) + list(np.linspace(2 / 3, 0.0, 11))[1:]\n\nEXAMPLE_DOC_STRING = \"\"\"\n    Examples:\n        ```py\n        >>> import torch\n        >>> from diffusers import StableCascadePriorPipeline\n\n        >>> prior_pipe = StableCascadePriorPipeline.from_pretrained(\n        ...     \"stabilityai/stable-cascade-prior\", torch_dtype=torch.bfloat16\n        ... ).to(\"cuda\")\n\n        >>> prompt = \"an image of a shiba inu, donning a spacesuit and helmet\"\n        >>> prior_output = pipe(prompt)\n        ```\n\"\"\"\n\n\n@dataclass\nclass StableCascadePriorPipelineOutput(BaseOutput):\n    \"\"\"\n    Output class for WuerstchenPriorPipeline.\n\n    Args:\n        image_embeddings (`torch.Tensor` or `np.ndarray`)\n            Prior image embeddings for text prompt\n        prompt_embeds (`torch.Tensor`):\n            Text embeddings for the prompt.\n        negative_prompt_embeds (`torch.Tensor`):\n            Text embeddings for the negative prompt.\n    \"\"\"\n\n    image_embeddings: Union[torch.Tensor, np.ndarray]\n    prompt_embeds: Union[torch.Tensor, np.ndarray]\n    prompt_embeds_pooled: Union[torch.Tensor, np.ndarray]\n    negative_prompt_embeds: Union[torch.Tensor, np.ndarray]\n    negative_prompt_embeds_pooled: Union[torch.Tensor, np.ndarray]\n\n\nclass StableCascadePriorPipelineAPG(DiffusionPipeline):\n    \"\"\"\n    Pipeline for generating image prior for Stable Cascade.\n\n    This model inherits from [`DiffusionPipeline`]. Check the superclass documentation for the generic methods the\n    library implements for all the pipelines (such as downloading or saving, running on a particular device, etc.)\n\n    Args:\n        prior ([`StableCascadeUNet`]):\n            The Stable Cascade prior to approximate the image embedding from the text and/or image embedding.\n        text_encoder ([`CLIPTextModelWithProjection`]):\n            Frozen text-encoder\n            ([laion/CLIP-ViT-bigG-14-laion2B-39B-b160k](https://huggingface.co/laion/CLIP-ViT-bigG-14-laion2B-39B-b160k)).\n        feature_extractor ([`~transformers.CLIPImageProcessor`]):\n            Model that extracts features from generated images to be used as inputs for the `image_encoder`.\n        image_encoder ([`CLIPVisionModelWithProjection`]):\n            Frozen CLIP image-encoder ([clip-vit-large-patch14](https://huggingface.co/openai/clip-vit-large-patch14)).\n        tokenizer (`CLIPTokenizer`):\n            Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer).\n        scheduler ([`DDPMWuerstchenScheduler`]):\n            A scheduler to be used in combination with `prior` to generate image embedding.\n        resolution_multiple ('float', *optional*, defaults to 42.67):\n            Default resolution for multiple images generated.\n    \"\"\"\n\n    unet_name = \"prior\"\n    text_encoder_name = \"text_encoder\"\n    model_cpu_offload_seq = \"image_encoder->text_encoder->prior\"\n    _optional_components = [\"image_encoder\", \"feature_extractor\"]\n    _callback_tensor_inputs = [\"latents\", \"text_encoder_hidden_states\", \"negative_prompt_embeds\"]\n\n    def __init__(\n        self,\n        tokenizer: CLIPTokenizer,\n        text_encoder: CLIPTextModelWithProjection,\n        prior: StableCascadeUNet,\n        scheduler: DDPMWuerstchenScheduler,\n        resolution_multiple: float = 42.67,\n        feature_extractor: Optional[CLIPImageProcessor] = None,\n        image_encoder: Optional[CLIPVisionModelWithProjection] = None,\n    ) -> None:\n        super().__init__()\n        self.register_modules(\n            tokenizer=tokenizer,\n            text_encoder=text_encoder,\n            image_encoder=image_encoder,\n            feature_extractor=feature_extractor,\n            prior=prior,\n            scheduler=scheduler,\n        )\n        self.register_to_config(resolution_multiple=resolution_multiple)\n\n    def prepare_latents(\n        self, batch_size, height, width, num_images_per_prompt, dtype, device, generator, latents, scheduler\n    ):\n        latent_shape = (\n            num_images_per_prompt * batch_size,\n            self.prior.config.in_channels,\n            ceil(height / self.config.resolution_multiple),\n            ceil(width / self.config.resolution_multiple),\n        )\n\n        if latents is None:\n            latents = randn_tensor(latent_shape, generator=generator, device=device, dtype=dtype)\n        else:\n            if latents.shape != latent_shape:\n                raise ValueError(f\"Unexpected latents shape, got {latents.shape}, expected {latent_shape}\")\n            latents = latents.to(device)\n\n        latents = latents * scheduler.init_noise_sigma\n        return latents\n\n    def encode_prompt(\n        self,\n        device,\n        batch_size,\n        num_images_per_prompt,\n        do_classifier_free_guidance,\n        prompt=None,\n        negative_prompt=None,\n        prompt_embeds: Optional[torch.Tensor] = None,\n        prompt_embeds_pooled: Optional[torch.Tensor] = None,\n        negative_prompt_embeds: Optional[torch.Tensor] = None,\n        negative_prompt_embeds_pooled: Optional[torch.Tensor] = None,\n    ):\n        if prompt_embeds is None:\n            # get prompt text embeddings\n            text_inputs = self.tokenizer(\n                prompt,\n                padding=\"max_length\",\n                max_length=self.tokenizer.model_max_length,\n                truncation=True,\n                return_tensors=\"pt\",\n            )\n            text_input_ids = text_inputs.input_ids\n            attention_mask = text_inputs.attention_mask\n\n            untruncated_ids = self.tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n            if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(\n                text_input_ids, untruncated_ids\n            ):\n                removed_text = self.tokenizer.batch_decode(\n                    untruncated_ids[:, self.tokenizer.model_max_length - 1 : -1]\n                )\n                logger.warning(\n                    \"The following part of your input was truncated because CLIP can only handle sequences up to\"\n                    f\" {self.tokenizer.model_max_length} tokens: {removed_text}\"\n                )\n                text_input_ids = text_input_ids[:, : self.tokenizer.model_max_length]\n                attention_mask = attention_mask[:, : self.tokenizer.model_max_length]\n\n            text_encoder_output = self.text_encoder(\n                text_input_ids.to(device), attention_mask=attention_mask.to(device), output_hidden_states=True\n            )\n            prompt_embeds = text_encoder_output.hidden_states[-1]\n            if prompt_embeds_pooled is None:\n                prompt_embeds_pooled = text_encoder_output.text_embeds.unsqueeze(1)\n\n        prompt_embeds = prompt_embeds.to(dtype=self.text_encoder.dtype, device=device)\n        prompt_embeds_pooled = prompt_embeds_pooled.to(dtype=self.text_encoder.dtype, device=device)\n        prompt_embeds = prompt_embeds.repeat_interleave(num_images_per_prompt, dim=0)\n        prompt_embeds_pooled = prompt_embeds_pooled.repeat_interleave(num_images_per_prompt, dim=0)\n\n        if negative_prompt_embeds is None and do_classifier_free_guidance:\n            uncond_tokens: List[str]\n            if negative_prompt is None:\n                uncond_tokens = [\"\"] * batch_size\n            elif type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif isinstance(negative_prompt, str):\n                uncond_tokens = [negative_prompt]\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n            else:\n                uncond_tokens = negative_prompt\n\n            uncond_input = self.tokenizer(\n                uncond_tokens,\n                padding=\"max_length\",\n                max_length=self.tokenizer.model_max_length,\n                truncation=True,\n                return_tensors=\"pt\",\n            )\n            negative_prompt_embeds_text_encoder_output = self.text_encoder(\n                uncond_input.input_ids.to(device),\n                attention_mask=uncond_input.attention_mask.to(device),\n                output_hidden_states=True,\n            )\n\n            negative_prompt_embeds = negative_prompt_embeds_text_encoder_output.hidden_states[-1]\n            negative_prompt_embeds_pooled = negative_prompt_embeds_text_encoder_output.text_embeds.unsqueeze(1)\n\n        if do_classifier_free_guidance:\n            # duplicate unconditional embeddings for each generation per prompt, using mps friendly method\n            seq_len = negative_prompt_embeds.shape[1]\n            negative_prompt_embeds = negative_prompt_embeds.to(dtype=self.text_encoder.dtype, device=device)\n            negative_prompt_embeds = negative_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds = negative_prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n            seq_len = negative_prompt_embeds_pooled.shape[1]\n            negative_prompt_embeds_pooled = negative_prompt_embeds_pooled.to(\n                dtype=self.text_encoder.dtype, device=device\n            )\n            negative_prompt_embeds_pooled = negative_prompt_embeds_pooled.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds_pooled = negative_prompt_embeds_pooled.view(\n                batch_size * num_images_per_prompt, seq_len, -1\n            )\n            # done duplicates\n\n        return prompt_embeds, prompt_embeds_pooled, negative_prompt_embeds, negative_prompt_embeds_pooled\n\n    def encode_image(self, images, device, dtype, batch_size, num_images_per_prompt):\n        image_embeds = []\n        for image in images:\n            image = self.feature_extractor(image, return_tensors=\"pt\").pixel_values\n            image = image.to(device=device, dtype=dtype)\n            image_embed = self.image_encoder(image).image_embeds.unsqueeze(1)\n            image_embeds.append(image_embed)\n        image_embeds = torch.cat(image_embeds, dim=1)\n\n        image_embeds = image_embeds.repeat(batch_size * num_images_per_prompt, 1, 1)\n        negative_image_embeds = torch.zeros_like(image_embeds)\n\n        return image_embeds, negative_image_embeds\n\n    def check_inputs(\n        self,\n        prompt,\n        images=None,\n        image_embeds=None,\n        negative_prompt=None,\n        prompt_embeds=None,\n        prompt_embeds_pooled=None,\n        negative_prompt_embeds=None,\n        negative_prompt_embeds_pooled=None,\n        callback_on_step_end_tensor_inputs=None,\n    ):\n        if callback_on_step_end_tensor_inputs is not None and not all(\n            k in self._callback_tensor_inputs for k in callback_on_step_end_tensor_inputs\n        ):\n            raise ValueError(\n                f\"`callback_on_step_end_tensor_inputs` has to be in {self._callback_tensor_inputs}, but found {[k for k in callback_on_step_end_tensor_inputs if k not in self._callback_tensor_inputs]}\"\n            )\n\n        if prompt is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n\n        if negative_prompt is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n\n        if prompt_embeds is not None and negative_prompt_embeds is not None:\n            if prompt_embeds.shape != negative_prompt_embeds.shape:\n                raise ValueError(\n                    \"`prompt_embeds` and `negative_prompt_embeds` must have the same shape when passed directly, but\"\n                    f\" got: `prompt_embeds` {prompt_embeds.shape} != `negative_prompt_embeds`\"\n                    f\" {negative_prompt_embeds.shape}.\"\n                )\n\n        if prompt_embeds is not None and prompt_embeds_pooled is None:\n            raise ValueError(\n                \"If `prompt_embeds` are provided, `prompt_embeds_pooled` must also be provided. Make sure to generate `prompt_embeds_pooled` from the same text encoder that was used to generate `prompt_embeds`\"\n            )\n\n        if negative_prompt_embeds is not None and negative_prompt_embeds_pooled is None:\n            raise ValueError(\n                \"If `negative_prompt_embeds` are provided, `negative_prompt_embeds_pooled` must also be provided. Make sure to generate `prompt_embeds_pooled` from the same text encoder that was used to generate `prompt_embeds`\"\n            )\n\n        if prompt_embeds_pooled is not None and negative_prompt_embeds_pooled is not None:\n            if prompt_embeds_pooled.shape != negative_prompt_embeds_pooled.shape:\n                raise ValueError(\n                    \"`prompt_embeds_pooled` and `negative_prompt_embeds_pooled` must have the same shape when passed\"\n                    f\"directly, but got: `prompt_embeds_pooled` {prompt_embeds_pooled.shape} !=\"\n                    f\"`negative_prompt_embeds_pooled` {negative_prompt_embeds_pooled.shape}.\"\n                )\n\n        if image_embeds is not None and images is not None:\n            raise ValueError(\n                f\"Cannot forward both `images`: {images} and `image_embeds`: {image_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n\n        if images:\n            for i, image in enumerate(images):\n                if not isinstance(image, torch.Tensor) and not isinstance(image, PIL.Image.Image):\n                    raise TypeError(\n                        f\"'images' must contain images of type 'torch.Tensor' or 'PIL.Image.Image, but got\"\n                        f\"{type(image)} for image number {i}.\"\n                    )\n\n    @property\n    def guidance_scale(self):\n        return self._guidance_scale\n\n    @property\n    def do_classifier_free_guidance(self):\n        return self._guidance_scale > 1\n\n    @property\n    def num_timesteps(self):\n        return self._num_timesteps\n\n    def get_timestep_ratio_conditioning(self, t, alphas_cumprod):\n        s = torch.tensor([0.008])\n        clamp_range = [0, 1]\n        min_var = torch.cos(s / (1 + s) * torch.pi * 0.5) ** 2\n        var = alphas_cumprod[t]\n        var = var.clamp(*clamp_range)\n        s, min_var = s.to(var.device), min_var.to(var.device)\n        ratio = (((var * min_var) ** 0.5).acos() / (torch.pi * 0.5)) * (1 + s) - s\n        return ratio\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n        self,\n        prompt: Optional[Union[str, List[str]]] = None,\n        images: Union[torch.Tensor, PIL.Image.Image, List[torch.Tensor], List[PIL.Image.Image]] = None,\n        height: int = 1024,\n        width: int = 1024,\n        num_inference_steps: int = 20,\n        timesteps: List[float] = None,\n        guidance_scale: float = 4.0,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        prompt_embeds: Optional[torch.Tensor] = None,\n        prompt_embeds_pooled: Optional[torch.Tensor] = None,\n        negative_prompt_embeds: Optional[torch.Tensor] = None,\n        negative_prompt_embeds_pooled: Optional[torch.Tensor] = None,\n        image_embeds: Optional[torch.Tensor] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.Tensor] = None,\n        output_type: Optional[str] = \"pt\",\n        return_dict: bool = True,\n        callback_on_step_end: Optional[Callable[[int, int, Dict], None]] = None,\n        callback_on_step_end_tensor_inputs: List[str] = [\"latents\"],\n    ):\n        \"\"\"\n        Function invoked when calling the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`):\n                The prompt or prompts to guide the image generation.\n            height (`int`, *optional*, defaults to 1024):\n                The height in pixels of the generated image.\n            width (`int`, *optional*, defaults to 1024):\n                The width in pixels of the generated image.\n            num_inference_steps (`int`, *optional*, defaults to 60):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            guidance_scale (`float`, *optional*, defaults to 8.0):\n                Guidance scale as defined in [Classifier-Free Diffusion Guidance](https://arxiv.org/abs/2207.12598).\n                `decoder_guidance_scale` is defined as `w` of equation 2. of [Imagen\n                Paper](https://arxiv.org/pdf/2205.11487.pdf). Guidance scale is enabled by setting\n                `decoder_guidance_scale > 1`. Higher guidance scale encourages to generate images that are closely\n                linked to the text `prompt`, usually at the expense of lower image quality.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. Ignored when not using guidance (i.e., ignored\n                if `decoder_guidance_scale` is less than `1`).\n            prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            prompt_embeds_pooled (`torch.Tensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            negative_prompt_embeds_pooled (`torch.Tensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds_pooled will be generated from `negative_prompt`\n                input argument.\n            image_embeds (`torch.Tensor`, *optional*):\n                Pre-generated image embeddings. Can be used to easily tweak image inputs, *e.g.* prompt weighting. If\n                not provided, image embeddings will be generated from `image` input argument if existing.\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                One or a list of [torch generator(s)](https://pytorch.org/docs/stable/generated/torch.Generator.html)\n                to make generation deterministic.\n            latents (`torch.Tensor`, *optional*):\n                Pre-generated noisy latents, sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor will ge generated by sampling using the supplied random `generator`.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generate image. Choose between: `\"pil\"` (`PIL.Image.Image`), `\"np\"`\n                (`np.array`) or `\"pt\"` (`torch.Tensor`).\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.ImagePipelineOutput`] instead of a plain tuple.\n            callback_on_step_end (`Callable`, *optional*):\n                A function that calls at the end of each denoising steps during the inference. The function is called\n                with the following arguments: `callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int,\n                callback_kwargs: Dict)`. `callback_kwargs` will include a list of all tensors as specified by\n                `callback_on_step_end_tensor_inputs`.\n            callback_on_step_end_tensor_inputs (`List`, *optional*):\n                The list of tensor inputs for the `callback_on_step_end` function. The tensors specified in the list\n                will be passed as `callback_kwargs` argument. You will only be able to include variables listed in the\n                `._callback_tensor_inputs` attribute of your pipeline class.\n\n        Examples:\n\n        Returns:\n            [`StableCascadePriorPipelineOutput`] or `tuple` [`StableCascadePriorPipelineOutput`] if `return_dict` is\n            True, otherwise a `tuple`. When returning a tuple, the first element is a list with the generated image\n            embeddings.\n        \"\"\"\n\n        # 0. Define commonly used variables\n        device = self._execution_device\n        dtype = next(self.prior.parameters()).dtype\n        self._guidance_scale = guidance_scale\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            images=images,\n            image_embeds=image_embeds,\n            negative_prompt=negative_prompt,\n            prompt_embeds=prompt_embeds,\n            prompt_embeds_pooled=prompt_embeds_pooled,\n            negative_prompt_embeds=negative_prompt_embeds,\n            negative_prompt_embeds_pooled=negative_prompt_embeds_pooled,\n            callback_on_step_end_tensor_inputs=callback_on_step_end_tensor_inputs,\n        )\n\n        # 2. Encode caption + images\n        (\n            prompt_embeds,\n            prompt_embeds_pooled,\n            negative_prompt_embeds,\n            negative_prompt_embeds_pooled,\n        ) = self.encode_prompt(\n            prompt=prompt,\n            device=device,\n            batch_size=batch_size,\n            num_images_per_prompt=num_images_per_prompt,\n            do_classifier_free_guidance=self.do_classifier_free_guidance,\n            negative_prompt=negative_prompt,\n            prompt_embeds=prompt_embeds,\n            prompt_embeds_pooled=prompt_embeds_pooled,\n            negative_prompt_embeds=negative_prompt_embeds,\n            negative_prompt_embeds_pooled=negative_prompt_embeds_pooled,\n        )\n\n        if images is not None:\n            image_embeds_pooled, uncond_image_embeds_pooled = self.encode_image(\n                images=images,\n                device=device,\n                dtype=dtype,\n                batch_size=batch_size,\n                num_images_per_prompt=num_images_per_prompt,\n            )\n        elif image_embeds is not None:\n            image_embeds_pooled = image_embeds.repeat(batch_size * num_images_per_prompt, 1, 1)\n            uncond_image_embeds_pooled = torch.zeros_like(image_embeds_pooled)\n        else:\n            image_embeds_pooled = torch.zeros(\n                batch_size * num_images_per_prompt,\n                1,\n                self.prior.config.clip_image_in_channels,\n                device=device,\n                dtype=dtype,\n            )\n            uncond_image_embeds_pooled = torch.zeros(\n                batch_size * num_images_per_prompt,\n                1,\n                self.prior.config.clip_image_in_channels,\n                device=device,\n                dtype=dtype,\n            )\n\n        if self.do_classifier_free_guidance:\n            image_embeds = torch.cat([image_embeds_pooled, uncond_image_embeds_pooled], dim=0)\n        else:\n            image_embeds = image_embeds_pooled\n\n        # For classifier free guidance, we need to do two forward passes.\n        # Here we concatenate the unconditional and text embeddings into a single batch\n        # to avoid doing two forward passes\n        text_encoder_hidden_states = (\n            torch.cat([prompt_embeds, negative_prompt_embeds]) if negative_prompt_embeds is not None else prompt_embeds\n        )\n        text_encoder_pooled = (\n            torch.cat([prompt_embeds_pooled, negative_prompt_embeds_pooled])\n            if negative_prompt_embeds is not None\n            else prompt_embeds_pooled\n        )\n\n        # 4. Prepare and set timesteps\n        self.scheduler.set_timesteps(num_inference_steps, device=device)\n        timesteps = self.scheduler.timesteps\n\n        # 5. Prepare latents\n        latents = self.prepare_latents(\n            batch_size, height, width, num_images_per_prompt, dtype, device, generator, latents, self.scheduler\n        )\n\n        if isinstance(self.scheduler, DDPMWuerstchenScheduler):\n            timesteps = timesteps[:-1]\n        else:\n            if hasattr(self.scheduler.config, \"clip_sample\") and self.scheduler.config.clip_sample:\n                self.scheduler.config.clip_sample = False  # disample sample clipping\n                logger.warning(\" set `clip_sample` to be False\")\n        # 6. Run denoising loop\n        if hasattr(self.scheduler, \"betas\"):\n            alphas = 1.0 - self.scheduler.betas\n            alphas_cumprod = torch.cumprod(alphas, dim=0)\n        else:\n            alphas_cumprod = []\n\n        self._num_timesteps = len(timesteps)\n        for i, t in enumerate(self.progress_bar(timesteps)):\n            if not isinstance(self.scheduler, DDPMWuerstchenScheduler):\n                if len(alphas_cumprod) > 0:\n                    timestep_ratio = self.get_timestep_ratio_conditioning(t.long().cpu(), alphas_cumprod)\n                    timestep_ratio = timestep_ratio.expand(latents.size(0)).to(dtype).to(device)\n                else:\n                    timestep_ratio = t.float().div(self.scheduler.timesteps[-1]).expand(latents.size(0)).to(dtype)\n            else:\n                timestep_ratio = t.expand(latents.size(0)).to(dtype)\n            # 7. Denoise image embeddings\n            predicted_image_embedding = self.prior(\n                sample=torch.cat([latents] * 2) if self.do_classifier_free_guidance else latents,\n                timestep_ratio=torch.cat([timestep_ratio] * 2) if self.do_classifier_free_guidance else timestep_ratio,\n                clip_text_pooled=text_encoder_pooled,\n                clip_text=text_encoder_hidden_states,\n                clip_img=image_embeds,\n                return_dict=False,\n            )[0]\n\n            # 8. Check for classifier free guidance and apply it\n            if self.do_classifier_free_guidance:\n                predicted_image_embedding_text, predicted_image_embedding_uncond = predicted_image_embedding.chunk(2)\n                predicted_image_embedding = apg.normalized_guidance(predicted_image_embedding_text, predicted_image_embedding_uncond, self.guidance_scale)\n\n            # 9. Renoise latents to next timestep\n            if not isinstance(self.scheduler, DDPMWuerstchenScheduler):\n                timestep_ratio = t\n            latents = self.scheduler.step(\n                model_output=predicted_image_embedding, timestep=timestep_ratio, sample=latents, generator=generator\n            ).prev_sample\n\n            if callback_on_step_end is not None:\n                callback_kwargs = {}\n                for k in callback_on_step_end_tensor_inputs:\n                    callback_kwargs[k] = locals()[k]\n                callback_outputs = callback_on_step_end(self, i, t, callback_kwargs)\n\n                latents = callback_outputs.pop(\"latents\", latents)\n                prompt_embeds = callback_outputs.pop(\"prompt_embeds\", prompt_embeds)\n                negative_prompt_embeds = callback_outputs.pop(\"negative_prompt_embeds\", negative_prompt_embeds)\n\n        # Offload all models\n        self.maybe_free_model_hooks()\n\n        if output_type == \"np\":\n            latents = latents.cpu().float().numpy()  # float() as bfloat16-> numpy doesnt work\n            prompt_embeds = prompt_embeds.cpu().float().numpy()  # float() as bfloat16-> numpy doesnt work\n            negative_prompt_embeds = (\n                negative_prompt_embeds.cpu().float().numpy() if negative_prompt_embeds is not None else None\n            )  # float() as bfloat16-> numpy doesnt work\n\n        if not return_dict:\n            return (\n                latents,\n                prompt_embeds,\n                prompt_embeds_pooled,\n                negative_prompt_embeds,\n                negative_prompt_embeds_pooled,\n            )\n\n        return StableCascadePriorPipelineOutput(\n            image_embeddings=latents,\n            prompt_embeds=prompt_embeds,\n            prompt_embeds_pooled=prompt_embeds_pooled,\n            negative_prompt_embeds=negative_prompt_embeds,\n            negative_prompt_embeds_pooled=negative_prompt_embeds_pooled,\n        )\n"
  },
  {
    "path": "modules/apg/pipeline_stable_diffision_xl_apg.py",
    "content": "# Copyright 2024 The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport inspect\nfrom typing import Any, Callable, Dict, List, Optional, Tuple, Union\nimport torch\n\nfrom transformers import CLIPImageProcessor, CLIPTextModel, CLIPTextModelWithProjection, CLIPTokenizer, CLIPVisionModelWithProjection\nfrom diffusers.callbacks import MultiPipelineCallbacks, PipelineCallback\nfrom diffusers.image_processor import PipelineImageInput, VaeImageProcessor\nfrom diffusers.loaders import FromSingleFileMixin, IPAdapterMixin, StableDiffusionXLLoraLoaderMixin, TextualInversionLoaderMixin\nfrom diffusers.models import AutoencoderKL, ImageProjection, UNet2DConditionModel\nfrom diffusers.models.attention_processor import AttnProcessor2_0, FusedAttnProcessor2_0, XFormersAttnProcessor\nfrom diffusers.models.lora import adjust_lora_scale_text_encoder\nfrom diffusers.schedulers import KarrasDiffusionSchedulers\nfrom diffusers.utils import USE_PEFT_BACKEND, deprecate, is_invisible_watermark_available, is_torch_xla_available, logging, replace_example_docstring, scale_lora_layers, unscale_lora_layers\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline, StableDiffusionMixin\nfrom diffusers.pipelines.stable_diffusion_xl.pipeline_output import StableDiffusionXLPipelineOutput\nfrom diffusers.models.attention_processor import Attention\nfrom modules import apg\n\nif is_invisible_watermark_available():\n    from diffusers.pipelines.stable_diffusion_xl.watermark import StableDiffusionXLWatermarker\nif is_torch_xla_available():\n    import torch_xla.core.xla_model as xm\n    XLA_AVAILABLE = True\nelse:\n    XLA_AVAILABLE = False\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\nEXAMPLE_DOC_STRING = \"\"\"\n    Examples:\n        ```py\n        >>> import torch\n        >>> from diffusers import StableDiffusionXLPipeline\n\n        >>> pipe = StableDiffusionXLPipeline.from_pretrained(\n        ...     \"stabilityai/stable-diffusion-xl-base-1.0\", torch_dtype=torch.float16\n        ... )\n        >>> pipe = pipe.to(\"cuda\")\n\n        >>> prompt = \"a photo of an astronaut riding a horse on mars\"\n        >>> image = pipe(prompt).images[0]\n        ```\n\"\"\"\n\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.rescale_noise_cfg\ndef rescale_noise_cfg(noise_cfg, noise_pred_text, guidance_rescale=0.0):\n    \"\"\"\n    Rescale `noise_cfg` according to `guidance_rescale`. Based on findings of [Common Diffusion Noise Schedules and\n    Sample Steps are Flawed](https://arxiv.org/pdf/2305.08891.pdf). See Section 3.4\n    \"\"\"\n    std_text = noise_pred_text.std(dim=list(range(1, noise_pred_text.ndim)), keepdim=True)\n    std_cfg = noise_cfg.std(dim=list(range(1, noise_cfg.ndim)), keepdim=True)\n    # rescale the results from guidance (fixes overexposure)\n    noise_pred_rescaled = noise_cfg * (std_text / std_cfg)\n    # mix with the original results from guidance by factor guidance_rescale to avoid \"plain looking\" images\n    noise_cfg = guidance_rescale * noise_pred_rescaled + (1 - guidance_rescale) * noise_cfg\n    return noise_cfg\n\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.retrieve_timesteps\ndef retrieve_timesteps(\n    scheduler,\n    num_inference_steps: Optional[int] = None,\n    device: Optional[Union[str, torch.device]] = None,\n    timesteps: Optional[List[int]] = None,\n    sigmas: Optional[List[float]] = None,\n    **kwargs,\n):\n    \"\"\"\n    Calls the scheduler's `set_timesteps` method and retrieves timesteps from the scheduler after the call. Handles\n    custom timesteps. Any kwargs will be supplied to `scheduler.set_timesteps`.\n\n    Args:\n        scheduler (`SchedulerMixin`):\n            The scheduler to get timesteps from.\n        num_inference_steps (`int`):\n            The number of diffusion steps used when generating samples with a pre-trained model. If used, `timesteps`\n            must be `None`.\n        device (`str` or `torch.device`, *optional*):\n            The device to which the timesteps should be moved to. If `None`, the timesteps are not moved.\n        timesteps (`List[int]`, *optional*):\n            Custom timesteps used to override the timestep spacing strategy of the scheduler. If `timesteps` is passed,\n            `num_inference_steps` and `sigmas` must be `None`.\n        sigmas (`List[float]`, *optional*):\n            Custom sigmas used to override the timestep spacing strategy of the scheduler. If `sigmas` is passed,\n            `num_inference_steps` and `timesteps` must be `None`.\n\n    Returns:\n        `Tuple[torch.Tensor, int]`: A tuple where the first element is the timestep schedule from the scheduler and the\n        second element is the number of inference steps.\n    \"\"\"\n    if timesteps is not None and sigmas is not None:\n        raise ValueError(\"Only one of `timesteps` or `sigmas` can be passed. Please choose one to set custom values\")\n    if timesteps is not None:\n        accepts_timesteps = \"timesteps\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n        if not accepts_timesteps:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" timestep schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(timesteps=timesteps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    elif sigmas is not None:\n        accept_sigmas = \"sigmas\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n        if not accept_sigmas:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" sigmas schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(sigmas=sigmas, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    else:\n        scheduler.set_timesteps(num_inference_steps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n    return timesteps, num_inference_steps\n\n\nclass StableDiffusionXLPipelineAPG(\n    DiffusionPipeline,\n    StableDiffusionMixin,\n    FromSingleFileMixin,\n    StableDiffusionXLLoraLoaderMixin,\n    TextualInversionLoaderMixin,\n    IPAdapterMixin,\n):\n    r\"\"\"\n    Pipeline for text-to-image generation using Stable Diffusion XL.\n\n    This model inherits from [`DiffusionPipeline`]. Check the superclass documentation for the generic methods the\n    library implements for all the pipelines (such as downloading or saving, running on a particular device, etc.)\n\n    The pipeline also inherits the following loading methods:\n        - [`~loaders.TextualInversionLoaderMixin.load_textual_inversion`] for loading textual inversion embeddings\n        - [`~loaders.FromSingleFileMixin.from_single_file`] for loading `.ckpt` files\n        - [`~loaders.StableDiffusionXLLoraLoaderMixin.load_lora_weights`] for loading LoRA weights\n        - [`~loaders.StableDiffusionXLLoraLoaderMixin.save_lora_weights`] for saving LoRA weights\n        - [`~loaders.IPAdapterMixin.load_ip_adapter`] for loading IP Adapters\n\n    Args:\n        vae ([`AutoencoderKL`]):\n            Variational Auto-Encoder (VAE) Model to encode and decode images to and from latent representations.\n        text_encoder ([`CLIPTextModel`]):\n            Frozen text-encoder. Stable Diffusion XL uses the text portion of\n            [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModel), specifically\n            the [clip-vit-large-patch14](https://huggingface.co/openai/clip-vit-large-patch14) variant.\n        text_encoder_2 ([` CLIPTextModelWithProjection`]):\n            Second frozen text-encoder. Stable Diffusion XL uses the text and pool portion of\n            [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModelWithProjection),\n            specifically the\n            [laion/CLIP-ViT-bigG-14-laion2B-39B-b160k](https://huggingface.co/laion/CLIP-ViT-bigG-14-laion2B-39B-b160k)\n            variant.\n        tokenizer (`CLIPTokenizer`):\n            Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer).\n        tokenizer_2 (`CLIPTokenizer`):\n            Second Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer).\n        unet ([`UNet2DConditionModel`]): Conditional U-Net architecture to denoise the encoded image latents.\n        scheduler ([`SchedulerMixin`]):\n            A scheduler to be used in combination with `unet` to denoise the encoded image latents. Can be one of\n            [`DDIMScheduler`], [`LMSDiscreteScheduler`], or [`PNDMScheduler`].\n        force_zeros_for_empty_prompt (`bool`, *optional*, defaults to `\"True\"`):\n            Whether the negative prompt embeddings shall be forced to always be set to 0. Also see the config of\n            `stabilityai/stable-diffusion-xl-base-1-0`.\n        add_watermarker (`bool`, *optional*):\n            Whether to use the [invisible_watermark library](https://github.com/ShieldMnt/invisible-watermark/) to\n            watermark output images. If not defined, it will default to True if the package is installed, otherwise no\n            watermarker will be used.\n    \"\"\"\n\n    model_cpu_offload_seq = \"text_encoder->text_encoder_2->image_encoder->unet->vae\"\n    _optional_components = [\n        \"tokenizer\",\n        \"tokenizer_2\",\n        \"text_encoder\",\n        \"text_encoder_2\",\n        \"image_encoder\",\n        \"feature_extractor\",\n    ]\n    _callback_tensor_inputs = [\n        \"latents\",\n        \"prompt_embeds\",\n        \"negative_prompt_embeds\",\n        \"add_text_embeds\",\n        \"add_time_ids\",\n        \"negative_pooled_prompt_embeds\",\n        \"negative_add_time_ids\",\n    ]\n\n    def __init__(\n        self,\n        vae: AutoencoderKL,\n        text_encoder: CLIPTextModel,\n        text_encoder_2: CLIPTextModelWithProjection,\n        tokenizer: CLIPTokenizer,\n        tokenizer_2: CLIPTokenizer,\n        unet: UNet2DConditionModel,\n        scheduler: KarrasDiffusionSchedulers,\n        image_encoder: CLIPVisionModelWithProjection = None,\n        feature_extractor: CLIPImageProcessor = None,\n        force_zeros_for_empty_prompt: bool = True,\n        add_watermarker: Optional[bool] = None,\n    ):\n        super().__init__()\n\n        self.register_modules(\n            vae=vae,\n            text_encoder=text_encoder,\n            text_encoder_2=text_encoder_2,\n            tokenizer=tokenizer,\n            tokenizer_2=tokenizer_2,\n            unet=unet,\n            scheduler=scheduler,\n            image_encoder=image_encoder,\n            feature_extractor=feature_extractor,\n        )\n        self.register_to_config(force_zeros_for_empty_prompt=force_zeros_for_empty_prompt)\n        self.vae_scale_factor = 2 ** (len(self.vae.config.block_out_channels) - 1)\n        self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor)\n\n        self.default_sample_size = self.unet.config.sample_size\n\n        add_watermarker = add_watermarker if add_watermarker is not None else is_invisible_watermark_available()\n\n        if add_watermarker:\n            self.watermark = StableDiffusionXLWatermarker()\n        else:\n            self.watermark = None\n\n    def encode_prompt(\n        self,\n        prompt: str,\n        prompt_2: Optional[str] = None,\n        device: Optional[torch.device] = None,\n        num_images_per_prompt: int = 1,\n        do_classifier_free_guidance: bool = True,\n        negative_prompt: Optional[str] = None,\n        negative_prompt_2: Optional[str] = None,\n        prompt_embeds: Optional[torch.Tensor] = None,\n        negative_prompt_embeds: Optional[torch.Tensor] = None,\n        pooled_prompt_embeds: Optional[torch.Tensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.Tensor] = None,\n        lora_scale: Optional[float] = None,\n        clip_skip: Optional[int] = None,\n    ):\n        r\"\"\"\n        Encodes the prompt into text encoder hidden states.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                prompt to be encoded\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders\n            device: (`torch.device`):\n                torch device\n            num_images_per_prompt (`int`):\n                number of images that should be generated per prompt\n            do_classifier_free_guidance (`bool`):\n                whether to use classifier free guidance or not\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders\n            prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            lora_scale (`float`, *optional*):\n                A lora scale that will be applied to all LoRA layers of the text encoder if LoRA layers are loaded.\n            clip_skip (`int`, *optional*):\n                Number of layers to be skipped from CLIP while computing the prompt embeddings. A value of 1 means that\n                the output of the pre-final layer will be used for computing the prompt embeddings.\n        \"\"\"\n        device = device or self._execution_device\n\n        # set lora scale so that monkey patched LoRA\n        # function of text encoder can correctly access it\n        if lora_scale is not None and isinstance(self, StableDiffusionXLLoraLoaderMixin):\n            self._lora_scale = lora_scale\n\n            # dynamically adjust the LoRA scale\n            if self.text_encoder is not None:\n                if not USE_PEFT_BACKEND:\n                    adjust_lora_scale_text_encoder(self.text_encoder, lora_scale)\n                else:\n                    scale_lora_layers(self.text_encoder, lora_scale)\n\n            if self.text_encoder_2 is not None:\n                if not USE_PEFT_BACKEND:\n                    adjust_lora_scale_text_encoder(self.text_encoder_2, lora_scale)\n                else:\n                    scale_lora_layers(self.text_encoder_2, lora_scale)\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n\n        if prompt is not None:\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        # Define tokenizers and text encoders\n        tokenizers = [self.tokenizer, self.tokenizer_2] if self.tokenizer is not None else [self.tokenizer_2]\n        text_encoders = (\n            [self.text_encoder, self.text_encoder_2] if self.text_encoder is not None else [self.text_encoder_2]\n        )\n\n        if prompt_embeds is None:\n            prompt_2 = prompt_2 or prompt\n            prompt_2 = [prompt_2] if isinstance(prompt_2, str) else prompt_2\n\n            # textual inversion: process multi-vector tokens if necessary\n            prompt_embeds_list = []\n            prompts = [prompt, prompt_2]\n            for prompt, tokenizer, text_encoder in zip(prompts, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    prompt = self.maybe_convert_prompt(prompt, tokenizer)\n\n                text_inputs = tokenizer(\n                    prompt,\n                    padding=\"max_length\",\n                    max_length=tokenizer.model_max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                text_input_ids = text_inputs.input_ids\n                untruncated_ids = tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n                if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(\n                    text_input_ids, untruncated_ids\n                ):\n                    removed_text = tokenizer.batch_decode(untruncated_ids[:, tokenizer.model_max_length - 1 : -1])\n                    logger.warning(\n                        \"The following part of your input was truncated because CLIP can only handle sequences up to\"\n                        f\" {tokenizer.model_max_length} tokens: {removed_text}\"\n                    )\n\n                prompt_embeds = text_encoder(text_input_ids.to(device), output_hidden_states=True)\n\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                pooled_prompt_embeds = prompt_embeds[0]\n                if clip_skip is None:\n                    prompt_embeds = prompt_embeds.hidden_states[-2]\n                else:\n                    # \"2\" because SDXL always indexes from the penultimate layer.\n                    prompt_embeds = prompt_embeds.hidden_states[-(clip_skip + 2)]\n\n                prompt_embeds_list.append(prompt_embeds)\n\n            prompt_embeds = torch.concat(prompt_embeds_list, dim=-1)\n\n        # get unconditional embeddings for classifier free guidance\n        zero_out_negative_prompt = negative_prompt is None and self.config.force_zeros_for_empty_prompt\n        if do_classifier_free_guidance and negative_prompt_embeds is None and zero_out_negative_prompt:\n            negative_prompt_embeds = torch.zeros_like(prompt_embeds)\n            negative_pooled_prompt_embeds = torch.zeros_like(pooled_prompt_embeds)\n        elif do_classifier_free_guidance and negative_prompt_embeds is None:\n            negative_prompt = negative_prompt or \"\"\n            negative_prompt_2 = negative_prompt_2 or negative_prompt\n\n            # normalize str to list\n            negative_prompt = batch_size * [negative_prompt] if isinstance(negative_prompt, str) else negative_prompt\n            negative_prompt_2 = (\n                batch_size * [negative_prompt_2] if isinstance(negative_prompt_2, str) else negative_prompt_2\n            )\n\n            uncond_tokens: List[str]\n            if prompt is not None and type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n            else:\n                uncond_tokens = [negative_prompt, negative_prompt_2]\n\n            negative_prompt_embeds_list = []\n            for negative_prompt, tokenizer, text_encoder in zip(uncond_tokens, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    negative_prompt = self.maybe_convert_prompt(negative_prompt, tokenizer)\n\n                max_length = prompt_embeds.shape[1]\n                uncond_input = tokenizer(\n                    negative_prompt,\n                    padding=\"max_length\",\n                    max_length=max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                negative_prompt_embeds = text_encoder(\n                    uncond_input.input_ids.to(device),\n                    output_hidden_states=True,\n                )\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                negative_pooled_prompt_embeds = negative_prompt_embeds[0]\n                negative_prompt_embeds = negative_prompt_embeds.hidden_states[-2]\n\n                negative_prompt_embeds_list.append(negative_prompt_embeds)\n\n            negative_prompt_embeds = torch.concat(negative_prompt_embeds_list, dim=-1)\n\n        if self.text_encoder_2 is not None:\n            prompt_embeds = prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n        else:\n            prompt_embeds = prompt_embeds.to(dtype=self.unet.dtype, device=device)\n\n        bs_embed, seq_len, _ = prompt_embeds.shape\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(bs_embed * num_images_per_prompt, seq_len, -1)\n\n        if do_classifier_free_guidance:\n            # duplicate unconditional embeddings for each generation per prompt, using mps friendly method\n            seq_len = negative_prompt_embeds.shape[1]\n\n            if self.text_encoder_2 is not None:\n                negative_prompt_embeds = negative_prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n            else:\n                negative_prompt_embeds = negative_prompt_embeds.to(dtype=self.unet.dtype, device=device)\n\n            negative_prompt_embeds = negative_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds = negative_prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n        pooled_prompt_embeds = pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n            bs_embed * num_images_per_prompt, -1\n        )\n        if do_classifier_free_guidance:\n            negative_pooled_prompt_embeds = negative_pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n                bs_embed * num_images_per_prompt, -1\n            )\n\n        if self.text_encoder is not None:\n            if isinstance(self, StableDiffusionXLLoraLoaderMixin) and USE_PEFT_BACKEND:\n                # Retrieve the original scale by scaling back the LoRA layers\n                unscale_lora_layers(self.text_encoder, lora_scale)\n\n        if self.text_encoder_2 is not None:\n            if isinstance(self, StableDiffusionXLLoraLoaderMixin) and USE_PEFT_BACKEND:\n                # Retrieve the original scale by scaling back the LoRA layers\n                unscale_lora_layers(self.text_encoder_2, lora_scale)\n\n        return prompt_embeds, negative_prompt_embeds, pooled_prompt_embeds, negative_pooled_prompt_embeds\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.encode_image\n    def encode_image(self, image, device, num_images_per_prompt, output_hidden_states=None):\n        dtype = next(self.image_encoder.parameters()).dtype\n\n        if not isinstance(image, torch.Tensor):\n            image = self.feature_extractor(image, return_tensors=\"pt\").pixel_values\n\n        image = image.to(device=device, dtype=dtype)\n        if output_hidden_states:\n            image_enc_hidden_states = self.image_encoder(image, output_hidden_states=True).hidden_states[-2]\n            image_enc_hidden_states = image_enc_hidden_states.repeat_interleave(num_images_per_prompt, dim=0)\n            uncond_image_enc_hidden_states = self.image_encoder(\n                torch.zeros_like(image), output_hidden_states=True\n            ).hidden_states[-2]\n            uncond_image_enc_hidden_states = uncond_image_enc_hidden_states.repeat_interleave(\n                num_images_per_prompt, dim=0\n            )\n            return image_enc_hidden_states, uncond_image_enc_hidden_states\n        else:\n            image_embeds = self.image_encoder(image).image_embeds\n            image_embeds = image_embeds.repeat_interleave(num_images_per_prompt, dim=0)\n            uncond_image_embeds = torch.zeros_like(image_embeds)\n\n            return image_embeds, uncond_image_embeds\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_ip_adapter_image_embeds\n    def prepare_ip_adapter_image_embeds(\n        self, ip_adapter_image, ip_adapter_image_embeds, device, num_images_per_prompt, do_classifier_free_guidance\n    ):\n        image_embeds = []\n        if do_classifier_free_guidance:\n            negative_image_embeds = []\n        if ip_adapter_image_embeds is None:\n            if not isinstance(ip_adapter_image, list):\n                ip_adapter_image = [ip_adapter_image]\n\n            if len(ip_adapter_image) != len(self.unet.encoder_hid_proj.image_projection_layers):\n                raise ValueError(\n                    f\"`ip_adapter_image` must have same length as the number of IP Adapters. Got {len(ip_adapter_image)} images and {len(self.unet.encoder_hid_proj.image_projection_layers)} IP Adapters.\"\n                )\n\n            for single_ip_adapter_image, image_proj_layer in zip(\n                ip_adapter_image, self.unet.encoder_hid_proj.image_projection_layers\n            ):\n                output_hidden_state = not isinstance(image_proj_layer, ImageProjection)\n                single_image_embeds, single_negative_image_embeds = self.encode_image(\n                    single_ip_adapter_image, device, 1, output_hidden_state\n                )\n\n                image_embeds.append(single_image_embeds[None, :])\n                if do_classifier_free_guidance:\n                    negative_image_embeds.append(single_negative_image_embeds[None, :])\n        else:\n            for single_image_embeds in ip_adapter_image_embeds:\n                if do_classifier_free_guidance:\n                    single_negative_image_embeds, single_image_embeds = single_image_embeds.chunk(2)\n                    negative_image_embeds.append(single_negative_image_embeds)\n                image_embeds.append(single_image_embeds)\n\n        ip_adapter_image_embeds = []\n        for i, single_image_embeds in enumerate(image_embeds):\n            single_image_embeds = torch.cat([single_image_embeds] * num_images_per_prompt, dim=0)\n            if do_classifier_free_guidance:\n                single_negative_image_embeds = torch.cat([negative_image_embeds[i]] * num_images_per_prompt, dim=0)\n                single_image_embeds = torch.cat([single_negative_image_embeds, single_image_embeds], dim=0)\n\n            single_image_embeds = single_image_embeds.to(device=device)\n            ip_adapter_image_embeds.append(single_image_embeds)\n\n        return ip_adapter_image_embeds\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_extra_step_kwargs\n    def prepare_extra_step_kwargs(self, generator, eta):\n        # prepare extra kwargs for the scheduler step, since not all schedulers have the same signature\n        # eta (η) is only used with the DDIMScheduler, it will be ignored for other schedulers.\n        # eta corresponds to η in DDIM paper: https://arxiv.org/abs/2010.02502\n        # and should be between [0, 1]\n\n        accepts_eta = \"eta\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        extra_step_kwargs = {}\n        if accepts_eta:\n            extra_step_kwargs[\"eta\"] = eta\n\n        # check if the scheduler accepts generator\n        accepts_generator = \"generator\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        if accepts_generator:\n            extra_step_kwargs[\"generator\"] = generator\n        return extra_step_kwargs\n\n    def check_inputs(\n        self,\n        prompt,\n        prompt_2,\n        height,\n        width,\n        callback_steps,\n        negative_prompt=None,\n        negative_prompt_2=None,\n        prompt_embeds=None,\n        negative_prompt_embeds=None,\n        pooled_prompt_embeds=None,\n        negative_pooled_prompt_embeds=None,\n        ip_adapter_image=None,\n        ip_adapter_image_embeds=None,\n        callback_on_step_end_tensor_inputs=None,\n    ):\n        if height % 8 != 0 or width % 8 != 0:\n            raise ValueError(f\"`height` and `width` have to be divisible by 8 but are {height} and {width}.\")\n\n        if callback_steps is not None and (not isinstance(callback_steps, int) or callback_steps <= 0):\n            raise ValueError(\n                f\"`callback_steps` has to be a positive integer but is {callback_steps} of type\"\n                f\" {type(callback_steps)}.\"\n            )\n\n        if callback_on_step_end_tensor_inputs is not None and not all(\n            k in self._callback_tensor_inputs for k in callback_on_step_end_tensor_inputs\n        ):\n            raise ValueError(\n                f\"`callback_on_step_end_tensor_inputs` has to be in {self._callback_tensor_inputs}, but found {[k for k in callback_on_step_end_tensor_inputs if k not in self._callback_tensor_inputs]}\"\n            )\n\n        if prompt is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt_2 is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt_2`: {prompt_2} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n        elif prompt_2 is not None and (not isinstance(prompt_2, str) and not isinstance(prompt_2, list)):\n            raise ValueError(f\"`prompt_2` has to be of type `str` or `list` but is {type(prompt_2)}\")\n\n        if negative_prompt is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n        elif negative_prompt_2 is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt_2`: {negative_prompt_2} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n\n        if prompt_embeds is not None and negative_prompt_embeds is not None:\n            if prompt_embeds.shape != negative_prompt_embeds.shape:\n                raise ValueError(\n                    \"`prompt_embeds` and `negative_prompt_embeds` must have the same shape when passed directly, but\"\n                    f\" got: `prompt_embeds` {prompt_embeds.shape} != `negative_prompt_embeds`\"\n                    f\" {negative_prompt_embeds.shape}.\"\n                )\n\n        if prompt_embeds is not None and pooled_prompt_embeds is None:\n            raise ValueError(\n                \"If `prompt_embeds` are provided, `pooled_prompt_embeds` also have to be passed. Make sure to generate `pooled_prompt_embeds` from the same text encoder that was used to generate `prompt_embeds`.\"\n            )\n\n        if negative_prompt_embeds is not None and negative_pooled_prompt_embeds is None:\n            raise ValueError(\n                \"If `negative_prompt_embeds` are provided, `negative_pooled_prompt_embeds` also have to be passed. Make sure to generate `negative_pooled_prompt_embeds` from the same text encoder that was used to generate `negative_prompt_embeds`.\"\n            )\n\n        if ip_adapter_image is not None and ip_adapter_image_embeds is not None:\n            raise ValueError(\n                \"Provide either `ip_adapter_image` or `ip_adapter_image_embeds`. Cannot leave both `ip_adapter_image` and `ip_adapter_image_embeds` defined.\"\n            )\n\n        if ip_adapter_image_embeds is not None:\n            if not isinstance(ip_adapter_image_embeds, list):\n                raise ValueError(\n                    f\"`ip_adapter_image_embeds` has to be of type `list` but is {type(ip_adapter_image_embeds)}\"\n                )\n            elif ip_adapter_image_embeds[0].ndim not in [3, 4]:\n                raise ValueError(\n                    f\"`ip_adapter_image_embeds` has to be a list of 3D or 4D tensors but is {ip_adapter_image_embeds[0].ndim}D\"\n                )\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_latents\n    def prepare_latents(self, batch_size, num_channels_latents, height, width, dtype, device, generator, latents=None):\n        shape = (\n            batch_size,\n            num_channels_latents,\n            int(height) // self.vae_scale_factor,\n            int(width) // self.vae_scale_factor,\n        )\n        if isinstance(generator, list) and len(generator) != batch_size:\n            raise ValueError(\n                f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n            )\n\n        if latents is None:\n            latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n        else:\n            latents = latents.to(device)\n\n        # scale the initial noise by the standard deviation required by the scheduler\n        latents = latents * self.scheduler.init_noise_sigma\n        return latents\n\n    def _get_add_time_ids(\n        self, original_size, crops_coords_top_left, target_size, dtype, text_encoder_projection_dim=None\n    ):\n        add_time_ids = list(original_size + crops_coords_top_left + target_size)\n\n        passed_add_embed_dim = (\n            self.unet.config.addition_time_embed_dim * len(add_time_ids) + text_encoder_projection_dim\n        )\n        expected_add_embed_dim = self.unet.add_embedding.linear_1.in_features\n\n        if expected_add_embed_dim != passed_add_embed_dim:\n            raise ValueError(\n                f\"Model expects an added time embedding vector of length {expected_add_embed_dim}, but a vector of {passed_add_embed_dim} was created. The model has an incorrect config. Please check `unet.config.time_embedding_type` and `text_encoder_2.config.projection_dim`.\"\n            )\n\n        add_time_ids = torch.tensor([add_time_ids], dtype=dtype)\n        return add_time_ids\n\n    def upcast_vae(self):\n        dtype = self.vae.dtype\n        self.vae.to(dtype=torch.float32)\n        use_torch_2_0_or_xformers = isinstance(\n            self.vae.decoder.mid_block.attentions[0].processor,\n            (\n                AttnProcessor2_0,\n                XFormersAttnProcessor,\n                FusedAttnProcessor2_0,\n            ),\n        )\n        # if xformers or torch_2_0 is used attention block does not need\n        # to be in float32 which can save lots of memory\n        if use_torch_2_0_or_xformers:\n            self.vae.post_quant_conv.to(dtype)\n            self.vae.decoder.conv_in.to(dtype)\n            self.vae.decoder.mid_block.to(dtype)\n\n    # Copied from diffusers.pipelines.latent_consistency_models.pipeline_latent_consistency_text2img.LatentConsistencyModelPipeline.get_guidance_scale_embedding\n    def get_guidance_scale_embedding(\n        self, w: torch.Tensor, embedding_dim: int = 512, dtype: torch.dtype = torch.float32\n    ) -> torch.Tensor:\n        \"\"\"\n        See https://github.com/google-research/vdm/blob/dc27b98a554f65cdc654b800da5aa1846545d41b/model_vdm.py#L298\n\n        Args:\n            w (`torch.Tensor`):\n                Generate embedding vectors with a specified guidance scale to subsequently enrich timestep embeddings.\n            embedding_dim (`int`, *optional*, defaults to 512):\n                Dimension of the embeddings to generate.\n            dtype (`torch.dtype`, *optional*, defaults to `torch.float32`):\n                Data type of the generated embeddings.\n\n        Returns:\n            `torch.Tensor`: Embedding vectors with shape `(len(w), embedding_dim)`.\n        \"\"\"\n        assert len(w.shape) == 1\n        w = w * 1000.0\n\n        half_dim = embedding_dim // 2\n        emb = torch.log(torch.tensor(10000.0)) / (half_dim - 1)\n        emb = torch.exp(torch.arange(half_dim, dtype=dtype) * -emb)\n        emb = w.to(dtype)[:, None] * emb[None, :]\n        emb = torch.cat([torch.sin(emb), torch.cos(emb)], dim=1)\n        if embedding_dim % 2 == 1:  # zero pad\n            emb = torch.nn.functional.pad(emb, (0, 1))\n        assert emb.shape == (w.shape[0], embedding_dim)\n        return emb\n\n    @property\n    def guidance_scale(self):\n        return self._guidance_scale\n\n    @property\n    def guidance_rescale(self):\n        return self._guidance_rescale\n\n    @property\n    def clip_skip(self):\n        return self._clip_skip\n\n    # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2)\n    # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1`\n    # corresponds to doing no classifier free guidance.\n    @property\n    def do_classifier_free_guidance(self):\n        return self._guidance_scale > 1 and self.unet.config.time_cond_proj_dim is None\n\n    @property\n    def cross_attention_kwargs(self):\n        return self._cross_attention_kwargs\n\n    @property\n    def denoising_end(self):\n        return self._denoising_end\n\n    @property\n    def num_timesteps(self):\n        return self._num_timesteps\n\n    @property\n    def interrupt(self):\n        return self._interrupt\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        prompt_2: Optional[Union[str, List[str]]] = None,\n        height: Optional[int] = None,\n        width: Optional[int] = None,\n        num_inference_steps: int = 50,\n        timesteps: List[int] = None,\n        sigmas: List[float] = None,\n        denoising_end: Optional[float] = None,\n        guidance_scale: float = 5.0,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        negative_prompt_2: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        eta: float = 0.0,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.Tensor] = None,\n        prompt_embeds: Optional[torch.Tensor] = None,\n        negative_prompt_embeds: Optional[torch.Tensor] = None,\n        pooled_prompt_embeds: Optional[torch.Tensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.Tensor] = None,\n        ip_adapter_image: Optional[PipelineImageInput] = None,\n        ip_adapter_image_embeds: Optional[List[torch.Tensor]] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        guidance_rescale: float = 0.0,\n        original_size: Optional[Tuple[int, int]] = None,\n        crops_coords_top_left: Tuple[int, int] = (0, 0),\n        target_size: Optional[Tuple[int, int]] = None,\n        negative_original_size: Optional[Tuple[int, int]] = None,\n        negative_crops_coords_top_left: Tuple[int, int] = (0, 0),\n        negative_target_size: Optional[Tuple[int, int]] = None,\n        clip_skip: Optional[int] = None,\n        callback_on_step_end: Optional[\n            Union[Callable[[int, int, Dict], None], PipelineCallback, MultiPipelineCallbacks]\n        ] = None,\n        callback_on_step_end_tensor_inputs: List[str] = [\"latents\"],\n        **kwargs,\n    ):\n        r\"\"\"\n        Function invoked when calling the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide the image generation. If not defined, one has to pass `prompt_embeds`.\n                instead.\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders\n            height (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The height in pixels of the generated image. This is set to 1024 by default for the best results.\n                Anything below 512 pixels won't work well for\n                [stabilityai/stable-diffusion-xl-base-1.0](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0)\n                and checkpoints that are not specifically fine-tuned on low resolutions.\n            width (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The width in pixels of the generated image. This is set to 1024 by default for the best results.\n                Anything below 512 pixels won't work well for\n                [stabilityai/stable-diffusion-xl-base-1.0](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0)\n                and checkpoints that are not specifically fine-tuned on low resolutions.\n            num_inference_steps (`int`, *optional*, defaults to 50):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            timesteps (`List[int]`, *optional*):\n                Custom timesteps to use for the denoising process with schedulers which support a `timesteps` argument\n                in their `set_timesteps` method. If not defined, the default behavior when `num_inference_steps` is\n                passed will be used. Must be in descending order.\n            sigmas (`List[float]`, *optional*):\n                Custom sigmas to use for the denoising process with schedulers which support a `sigmas` argument in\n                their `set_timesteps` method. If not defined, the default behavior when `num_inference_steps` is passed\n                will be used.\n            denoising_end (`float`, *optional*):\n                When specified, determines the fraction (between 0.0 and 1.0) of the total denoising process to be\n                completed before it is intentionally prematurely terminated. As a result, the returned sample will\n                still retain a substantial amount of noise as determined by the discrete timesteps selected by the\n                scheduler. The denoising_end parameter should ideally be utilized when this pipeline forms a part of a\n                \"Mixture of Denoisers\" multi-pipeline setup, as elaborated in [**Refining the Image\n                Output**](https://huggingface.co/docs/diffusers/api/pipelines/stable_diffusion/stable_diffusion_xl#refining-the-image-output)\n            guidance_scale (`float`, *optional*, defaults to 5.0):\n                Guidance scale as defined in [Classifier-Free Diffusion Guidance](https://arxiv.org/abs/2207.12598).\n                `guidance_scale` is defined as `w` of equation 2. of [Imagen\n                Paper](https://arxiv.org/pdf/2205.11487.pdf). Guidance scale is enabled by setting `guidance_scale >\n                1`. Higher guidance scale encourages to generate images that are closely linked to the text `prompt`,\n                usually at the expense of lower image quality.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            eta (`float`, *optional*, defaults to 0.0):\n                Corresponds to parameter eta (η) in the DDIM paper: https://arxiv.org/abs/2010.02502. Only applies to\n                [`schedulers.DDIMScheduler`], will be ignored for others.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                One or a list of [torch generator(s)](https://pytorch.org/docs/stable/generated/torch.Generator.html)\n                to make generation deterministic.\n            latents (`torch.Tensor`, *optional*):\n                Pre-generated noisy latents, sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor will ge generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            ip_adapter_image: (`PipelineImageInput`, *optional*): Optional image input to work with IP Adapters.\n            ip_adapter_image_embeds (`List[torch.Tensor]`, *optional*):\n                Pre-generated image embeddings for IP-Adapter. It should be a list of length same as number of\n                IP-adapters. Each element should be a tensor of shape `(batch_size, num_images, emb_dim)`. It should\n                contain the negative image embedding if `do_classifier_free_guidance` is set to `True`. If not\n                provided, embeddings are computed from the `ip_adapter_image` input argument.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generate image. Choose between\n                [PIL](https://pillow.readthedocs.io/en/stable/): `PIL.Image.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] instead\n                of a plain tuple.\n            cross_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            guidance_rescale (`float`, *optional*, defaults to 0.0):\n                Guidance rescale factor proposed by [Common Diffusion Noise Schedules and Sample Steps are\n                Flawed](https://arxiv.org/pdf/2305.08891.pdf) `guidance_scale` is defined as `φ` in equation 16. of\n                [Common Diffusion Noise Schedules and Sample Steps are Flawed](https://arxiv.org/pdf/2305.08891.pdf).\n                Guidance rescale factor should fix overexposure when using zero terminal SNR.\n            original_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                If `original_size` is not the same as `target_size` the image will appear to be down- or upsampled.\n                `original_size` defaults to `(height, width)` if not specified. Part of SDXL's micro-conditioning as\n                explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            crops_coords_top_left (`Tuple[int]`, *optional*, defaults to (0, 0)):\n                `crops_coords_top_left` can be used to generate an image that appears to be \"cropped\" from the position\n                `crops_coords_top_left` downwards. Favorable, well-centered images are usually achieved by setting\n                `crops_coords_top_left` to (0, 0). Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            target_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                For most cases, `target_size` should be set to the desired height and width of the generated image. If\n                not specified it will default to `(height, width)`. Part of SDXL's micro-conditioning as explained in\n                section 2.2 of [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            negative_original_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                To negatively condition the generation process based on a specific image resolution. Part of SDXL's\n                micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). For more\n                information, refer to this issue thread: https://github.com/huggingface/diffusers/issues/4208.\n            negative_crops_coords_top_left (`Tuple[int]`, *optional*, defaults to (0, 0)):\n                To negatively condition the generation process based on a specific crop coordinates. Part of SDXL's\n                micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). For more\n                information, refer to this issue thread: https://github.com/huggingface/diffusers/issues/4208.\n            negative_target_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                To negatively condition the generation process based on a target image resolution. It should be as same\n                as the `target_size` for most cases. Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). For more\n                information, refer to this issue thread: https://github.com/huggingface/diffusers/issues/4208.\n            callback_on_step_end (`Callable`, `PipelineCallback`, `MultiPipelineCallbacks`, *optional*):\n                A function or a subclass of `PipelineCallback` or `MultiPipelineCallbacks` that is called at the end of\n                each denoising step during the inference. with the following arguments: `callback_on_step_end(self:\n                DiffusionPipeline, step: int, timestep: int, callback_kwargs: Dict)`. `callback_kwargs` will include a\n                list of all tensors as specified by `callback_on_step_end_tensor_inputs`.\n            callback_on_step_end_tensor_inputs (`List`, *optional*):\n                The list of tensor inputs for the `callback_on_step_end` function. The tensors specified in the list\n                will be passed as `callback_kwargs` argument. You will only be able to include variables listed in the\n                `._callback_tensor_inputs` attribute of your pipeline class.\n\n        Examples:\n\n        Returns:\n            [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] or `tuple`:\n            [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] if `return_dict` is True, otherwise a\n            `tuple`. When returning a tuple, the first element is a list with the generated images.\n        \"\"\"\n\n        callback = kwargs.pop(\"callback\", None)\n        callback_steps = kwargs.pop(\"callback_steps\", None)\n\n        if callback is not None:\n            deprecate(\n                \"callback\",\n                \"1.0.0\",\n                \"Passing `callback` as an input argument to `__call__` is deprecated, consider use `callback_on_step_end`\",\n            )\n        if callback_steps is not None:\n            deprecate(\n                \"callback_steps\",\n                \"1.0.0\",\n                \"Passing `callback_steps` as an input argument to `__call__` is deprecated, consider use `callback_on_step_end`\",\n            )\n\n        if isinstance(callback_on_step_end, (PipelineCallback, MultiPipelineCallbacks)):\n            callback_on_step_end_tensor_inputs = callback_on_step_end.tensor_inputs\n\n        # 0. Default height and width to unet\n        height = height or self.default_sample_size * self.vae_scale_factor\n        width = width or self.default_sample_size * self.vae_scale_factor\n\n        original_size = original_size or (height, width)\n        target_size = target_size or (height, width)\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            prompt_2,\n            height,\n            width,\n            callback_steps,\n            negative_prompt,\n            negative_prompt_2,\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n            ip_adapter_image,\n            ip_adapter_image_embeds,\n            callback_on_step_end_tensor_inputs,\n        )\n\n        self._guidance_scale = guidance_scale\n        self._guidance_rescale = guidance_rescale\n        self._clip_skip = clip_skip\n        self._cross_attention_kwargs = cross_attention_kwargs\n        self._denoising_end = denoising_end\n        self._interrupt = False\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        device = self._execution_device\n\n        # 3. Encode input prompt\n        lora_scale = (\n            self.cross_attention_kwargs.get(\"scale\", None) if self.cross_attention_kwargs is not None else None\n        )\n\n        (\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n        ) = self.encode_prompt(\n            prompt=prompt,\n            prompt_2=prompt_2,\n            device=device,\n            num_images_per_prompt=num_images_per_prompt,\n            do_classifier_free_guidance=self.do_classifier_free_guidance,\n            negative_prompt=negative_prompt,\n            negative_prompt_2=negative_prompt_2,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            negative_pooled_prompt_embeds=negative_pooled_prompt_embeds,\n            lora_scale=lora_scale,\n            clip_skip=self.clip_skip,\n        )\n\n        # 4. Prepare timesteps\n        timesteps, num_inference_steps = retrieve_timesteps(\n            self.scheduler, num_inference_steps, device, timesteps, sigmas\n        )\n\n        # 5. Prepare latent variables\n        num_channels_latents = self.unet.config.in_channels\n        latents = self.prepare_latents(\n            batch_size * num_images_per_prompt,\n            num_channels_latents,\n            height,\n            width,\n            prompt_embeds.dtype,\n            device,\n            generator,\n            latents,\n        )\n\n        # 6. Prepare extra step kwargs.\n        extra_step_kwargs = self.prepare_extra_step_kwargs(generator, eta)\n\n        # 7. Prepare added time ids & embeddings\n        add_text_embeds = pooled_prompt_embeds\n        if self.text_encoder_2 is None:\n            text_encoder_projection_dim = int(pooled_prompt_embeds.shape[-1])\n        else:\n            text_encoder_projection_dim = self.text_encoder_2.config.projection_dim\n\n        add_time_ids = self._get_add_time_ids(\n            original_size,\n            crops_coords_top_left,\n            target_size,\n            dtype=prompt_embeds.dtype,\n            text_encoder_projection_dim=text_encoder_projection_dim,\n        )\n        if negative_original_size is not None and negative_target_size is not None:\n            negative_add_time_ids = self._get_add_time_ids(\n                negative_original_size,\n                negative_crops_coords_top_left,\n                negative_target_size,\n                dtype=prompt_embeds.dtype,\n                text_encoder_projection_dim=text_encoder_projection_dim,\n            )\n        else:\n            negative_add_time_ids = add_time_ids\n\n        if self.do_classifier_free_guidance:\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds], dim=0)\n            add_text_embeds = torch.cat([negative_pooled_prompt_embeds, add_text_embeds], dim=0)\n            add_time_ids = torch.cat([negative_add_time_ids, add_time_ids], dim=0)\n\n        prompt_embeds = prompt_embeds.to(device)\n        add_text_embeds = add_text_embeds.to(device)\n        add_time_ids = add_time_ids.to(device).repeat(batch_size * num_images_per_prompt, 1)\n\n        if ip_adapter_image is not None or ip_adapter_image_embeds is not None:\n            image_embeds = self.prepare_ip_adapter_image_embeds(\n                ip_adapter_image,\n                ip_adapter_image_embeds,\n                device,\n                batch_size * num_images_per_prompt,\n                self.do_classifier_free_guidance,\n            )\n\n        # 8. Denoising loop\n        num_warmup_steps = max(len(timesteps) - num_inference_steps * self.scheduler.order, 0)\n\n        # 8.1 Apply denoising_end\n        if (\n            self.denoising_end is not None\n            and isinstance(self.denoising_end, float)\n            and self.denoising_end > 0\n            and self.denoising_end < 1\n        ):\n            discrete_timestep_cutoff = int(\n                round(\n                    self.scheduler.config.num_train_timesteps\n                    - (self.denoising_end * self.scheduler.config.num_train_timesteps)\n                )\n            )\n            num_inference_steps = len(list(filter(lambda ts: ts >= discrete_timestep_cutoff, timesteps)))\n            timesteps = timesteps[:num_inference_steps]\n\n        # 9. Optionally get Guidance Scale Embedding\n        timestep_cond = None\n        if self.unet.config.time_cond_proj_dim is not None:\n            guidance_scale_tensor = torch.tensor(self.guidance_scale - 1).repeat(batch_size * num_images_per_prompt)\n            timestep_cond = self.get_guidance_scale_embedding(\n                guidance_scale_tensor, embedding_dim=self.unet.config.time_cond_proj_dim\n            ).to(device=device, dtype=latents.dtype)\n\n        self._num_timesteps = len(timesteps)\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                if self.interrupt:\n                    continue\n\n                # expand the latents if we are doing classifier free guidance\n                latent_model_input = torch.cat([latents] * 2) if self.do_classifier_free_guidance else latents\n\n                latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n                # predict the noise residual\n                added_cond_kwargs = {\"text_embeds\": add_text_embeds, \"time_ids\": add_time_ids}\n                if ip_adapter_image is not None or ip_adapter_image_embeds is not None:\n                    added_cond_kwargs[\"image_embeds\"] = image_embeds\n                noise_pred = self.unet(\n                    latent_model_input,\n                    t,\n                    encoder_hidden_states=prompt_embeds,\n                    timestep_cond=timestep_cond,\n                    cross_attention_kwargs=self.cross_attention_kwargs,\n                    added_cond_kwargs=added_cond_kwargs,\n                    return_dict=False,\n                )[0]\n\n                # perform guidance\n                if self.do_classifier_free_guidance:\n                    noise_pred_uncond, noise_pred_cond = noise_pred.chunk(2)\n                    noise_pred = apg.normalized_guidance(noise_pred_cond, noise_pred_uncond, guidance_scale=self.guidance_scale)\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents_dtype = latents.dtype\n                latents = self.scheduler.step(noise_pred, t, latents, **extra_step_kwargs, return_dict=False)[0]\n                if latents.dtype != latents_dtype:\n                    if torch.backends.mps.is_available():\n                        # some platforms (eg. apple mps) misbehave due to a pytorch bug: https://github.com/pytorch/pytorch/pull/99272\n                        latents = latents.to(latents_dtype)\n\n                if callback_on_step_end is not None:\n                    callback_kwargs = {}\n                    for k in callback_on_step_end_tensor_inputs:\n                        callback_kwargs[k] = locals()[k]\n                    callback_outputs = callback_on_step_end(self, i, t, callback_kwargs)\n\n                    latents = callback_outputs.pop(\"latents\", latents)\n                    prompt_embeds = callback_outputs.pop(\"prompt_embeds\", prompt_embeds)\n                    negative_prompt_embeds = callback_outputs.pop(\"negative_prompt_embeds\", negative_prompt_embeds)\n                    add_text_embeds = callback_outputs.pop(\"add_text_embeds\", add_text_embeds)\n                    negative_pooled_prompt_embeds = callback_outputs.pop(\n                        \"negative_pooled_prompt_embeds\", negative_pooled_prompt_embeds\n                    )\n                    add_time_ids = callback_outputs.pop(\"add_time_ids\", add_time_ids)\n                    negative_add_time_ids = callback_outputs.pop(\"negative_add_time_ids\", negative_add_time_ids)\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n                    if callback is not None and i % callback_steps == 0:\n                        step_idx = i // getattr(self.scheduler, \"order\", 1)\n                        callback(step_idx, t, latents)\n\n                if XLA_AVAILABLE:\n                    xm.mark_step()\n\n        if not output_type == \"latent\":\n            # make sure the VAE is in float32 mode, as it overflows in float16\n            needs_upcasting = self.vae.dtype == torch.float16 and self.vae.config.force_upcast\n\n            if needs_upcasting:\n                self.upcast_vae()\n                latents = latents.to(next(iter(self.vae.post_quant_conv.parameters())).dtype)\n            elif latents.dtype != self.vae.dtype:\n                if torch.backends.mps.is_available():\n                    # some platforms (eg. apple mps) misbehave due to a pytorch bug: https://github.com/pytorch/pytorch/pull/99272\n                    self.vae = self.vae.to(latents.dtype)\n\n            # unscale/denormalize the latents\n            # denormalize with the mean and std if available and not None\n            has_latents_mean = hasattr(self.vae.config, \"latents_mean\") and self.vae.config.latents_mean is not None\n            has_latents_std = hasattr(self.vae.config, \"latents_std\") and self.vae.config.latents_std is not None\n            if has_latents_mean and has_latents_std:\n                latents_mean = (\n                    torch.tensor(self.vae.config.latents_mean).view(1, 4, 1, 1).to(latents.device, latents.dtype)\n                )\n                latents_std = (\n                    torch.tensor(self.vae.config.latents_std).view(1, 4, 1, 1).to(latents.device, latents.dtype)\n                )\n                latents = latents * latents_std / self.vae.config.scaling_factor + latents_mean\n            else:\n                latents = latents / self.vae.config.scaling_factor\n\n            image = self.vae.decode(latents, return_dict=False)[0]\n\n            # cast back to fp16 if needed\n            if needs_upcasting:\n                self.vae.to(dtype=torch.float16)\n        else:\n            image = latents\n\n        if not output_type == \"latent\":\n            # apply watermark if available\n            if self.watermark is not None:\n                image = self.watermark.apply_watermark(image)\n\n            image = self.image_processor.postprocess(image, output_type=output_type)\n\n        # Offload all models\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return (image,)\n\n        return StableDiffusionXLPipelineOutput(images=image)\n"
  },
  {
    "path": "modules/apg/pipeline_stable_diffusion_apg.py",
    "content": "# Copyright 2024 The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport inspect\nfrom typing import Any, Callable, Dict, List, Optional, Union\nimport torch\nfrom packaging import version\n\nfrom transformers import CLIPImageProcessor, CLIPTextModel, CLIPTokenizer, CLIPVisionModelWithProjection\nfrom diffusers.callbacks import MultiPipelineCallbacks, PipelineCallback\nfrom diffusers.image_processor import PipelineImageInput, VaeImageProcessor\nfrom diffusers.loaders import FromSingleFileMixin, IPAdapterMixin, StableDiffusionLoraLoaderMixin, TextualInversionLoaderMixin\nfrom diffusers.models import AutoencoderKL, ImageProjection, UNet2DConditionModel\nfrom diffusers.models.lora import adjust_lora_scale_text_encoder\nfrom diffusers.schedulers import KarrasDiffusionSchedulers\nfrom diffusers.configuration_utils import FrozenDict\nfrom diffusers.utils import USE_PEFT_BACKEND, deprecate, is_torch_xla_available, logging, replace_example_docstring, scale_lora_layers, unscale_lora_layers\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline, StableDiffusionMixin\nfrom diffusers.pipelines.stable_diffusion.pipeline_output import StableDiffusionPipelineOutput\nfrom diffusers.pipelines.stable_diffusion.safety_checker import StableDiffusionSafetyChecker\nfrom modules import apg\n\nif is_torch_xla_available():\n    import torch_xla.core.xla_model as xm\n    XLA_AVAILABLE = True\nelse:\n    XLA_AVAILABLE = False\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\nEXAMPLE_DOC_STRING = \"\"\"\n    Examples:\n        ```py\n        >>> import torch\n        >>> from diffusers import StableDiffusionPipeline\n\n        >>> pipe = StableDiffusionPipeline.from_pretrained(\"runwayml/stable-diffusion-v1-5\", torch_dtype=torch.float16)\n        >>> pipe = pipe.to(\"cuda\")\n\n        >>> prompt = \"a photo of an astronaut riding a horse on mars\"\n        >>> image = pipe(prompt).images[0]\n        ```\n\"\"\"\n\n\ndef rescale_noise_cfg(noise_cfg, noise_pred_text, guidance_rescale=0.0):\n    \"\"\"\n    Rescale `noise_cfg` according to `guidance_rescale`. Based on findings of [Common Diffusion Noise Schedules and\n    Sample Steps are Flawed](https://arxiv.org/pdf/2305.08891.pdf). See Section 3.4\n    \"\"\"\n    std_text = noise_pred_text.std(dim=list(range(1, noise_pred_text.ndim)), keepdim=True)\n    std_cfg = noise_cfg.std(dim=list(range(1, noise_cfg.ndim)), keepdim=True)\n    # rescale the results from guidance (fixes overexposure)\n    noise_pred_rescaled = noise_cfg * (std_text / std_cfg)\n    # mix with the original results from guidance by factor guidance_rescale to avoid \"plain looking\" images\n    noise_cfg = guidance_rescale * noise_pred_rescaled + (1 - guidance_rescale) * noise_cfg\n    return noise_cfg\n\n\ndef retrieve_timesteps(\n    scheduler,\n    num_inference_steps: Optional[int] = None,\n    device: Optional[Union[str, torch.device]] = None,\n    timesteps: Optional[List[int]] = None,\n    sigmas: Optional[List[float]] = None,\n    **kwargs,\n):\n    \"\"\"\n    Calls the scheduler's `set_timesteps` method and retrieves timesteps from the scheduler after the call. Handles\n    custom timesteps. Any kwargs will be supplied to `scheduler.set_timesteps`.\n\n    Args:\n        scheduler (`SchedulerMixin`):\n            The scheduler to get timesteps from.\n        num_inference_steps (`int`):\n            The number of diffusion steps used when generating samples with a pre-trained model. If used, `timesteps`\n            must be `None`.\n        device (`str` or `torch.device`, *optional*):\n            The device to which the timesteps should be moved to. If `None`, the timesteps are not moved.\n        timesteps (`List[int]`, *optional*):\n            Custom timesteps used to override the timestep spacing strategy of the scheduler. If `timesteps` is passed,\n            `num_inference_steps` and `sigmas` must be `None`.\n        sigmas (`List[float]`, *optional*):\n            Custom sigmas used to override the timestep spacing strategy of the scheduler. If `sigmas` is passed,\n            `num_inference_steps` and `timesteps` must be `None`.\n\n    Returns:\n        `Tuple[torch.Tensor, int]`: A tuple where the first element is the timestep schedule from the scheduler and the\n        second element is the number of inference steps.\n    \"\"\"\n    if timesteps is not None and sigmas is not None:\n        raise ValueError(\"Only one of `timesteps` or `sigmas` can be passed. Please choose one to set custom values\")\n    if timesteps is not None:\n        accepts_timesteps = \"timesteps\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n        if not accepts_timesteps:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" timestep schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(timesteps=timesteps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    elif sigmas is not None:\n        accept_sigmas = \"sigmas\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n        if not accept_sigmas:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" sigmas schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(sigmas=sigmas, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    else:\n        scheduler.set_timesteps(num_inference_steps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n    return timesteps, num_inference_steps\n\n\nclass StableDiffusionPipelineAPG(\n    DiffusionPipeline,\n    StableDiffusionMixin,\n    TextualInversionLoaderMixin,\n    StableDiffusionLoraLoaderMixin,\n    IPAdapterMixin,\n    FromSingleFileMixin,\n):\n    r\"\"\"\n    Pipeline for text-to-image generation using Stable Diffusion.\n\n    This model inherits from [`DiffusionPipeline`]. Check the superclass documentation for the generic methods\n    implemented for all pipelines (downloading, saving, running on a particular device, etc.).\n\n    The pipeline also inherits the following loading methods:\n        - [`~loaders.TextualInversionLoaderMixin.load_textual_inversion`] for loading textual inversion embeddings\n        - [`~loaders.StableDiffusionLoraLoaderMixin.load_lora_weights`] for loading LoRA weights\n        - [`~loaders.StableDiffusionLoraLoaderMixin.save_lora_weights`] for saving LoRA weights\n        - [`~loaders.FromSingleFileMixin.from_single_file`] for loading `.ckpt` files\n        - [`~loaders.IPAdapterMixin.load_ip_adapter`] for loading IP Adapters\n\n    Args:\n        vae ([`AutoencoderKL`]):\n            Variational Auto-Encoder (VAE) model to encode and decode images to and from latent representations.\n        text_encoder ([`~transformers.CLIPTextModel`]):\n            Frozen text-encoder ([clip-vit-large-patch14](https://huggingface.co/openai/clip-vit-large-patch14)).\n        tokenizer ([`~transformers.CLIPTokenizer`]):\n            A `CLIPTokenizer` to tokenize text.\n        unet ([`UNet2DConditionModel`]):\n            A `UNet2DConditionModel` to denoise the encoded image latents.\n        scheduler ([`SchedulerMixin`]):\n            A scheduler to be used in combination with `unet` to denoise the encoded image latents. Can be one of\n            [`DDIMScheduler`], [`LMSDiscreteScheduler`], or [`PNDMScheduler`].\n        safety_checker ([`StableDiffusionSafetyChecker`]):\n            Classification module that estimates whether generated images could be considered offensive or harmful.\n            Please refer to the [model card](https://huggingface.co/runwayml/stable-diffusion-v1-5) for more details\n            about a model's potential harms.\n        feature_extractor ([`~transformers.CLIPImageProcessor`]):\n            A `CLIPImageProcessor` to extract features from generated images; used as inputs to the `safety_checker`.\n    \"\"\"\n\n    model_cpu_offload_seq = \"text_encoder->image_encoder->unet->vae\"\n    _optional_components = [\"safety_checker\", \"feature_extractor\", \"image_encoder\"]\n    _exclude_from_cpu_offload = [\"safety_checker\"]\n    _callback_tensor_inputs = [\"latents\", \"prompt_embeds\", \"negative_prompt_embeds\"]\n\n    def __init__(\n        self,\n        vae: AutoencoderKL,\n        text_encoder: CLIPTextModel,\n        tokenizer: CLIPTokenizer,\n        unet: UNet2DConditionModel,\n        scheduler: KarrasDiffusionSchedulers,\n        safety_checker: StableDiffusionSafetyChecker,\n        feature_extractor: CLIPImageProcessor,\n        image_encoder: CLIPVisionModelWithProjection = None,\n        requires_safety_checker: bool = True,\n    ):\n        super().__init__()\n\n        if hasattr(scheduler.config, \"steps_offset\") and scheduler.config.steps_offset != 1:\n            deprecation_message = (\n                f\"The configuration file of this scheduler: {scheduler} is outdated. `steps_offset`\"\n                f\" should be set to 1 instead of {scheduler.config.steps_offset}. Please make sure \"\n                \"to update the config accordingly as leaving `steps_offset` might led to incorrect results\"\n                \" in future versions. If you have downloaded this checkpoint from the Hugging Face Hub,\"\n                \" it would be very nice if you could open a Pull request for the `scheduler/scheduler_config.json`\"\n                \" file\"\n            )\n            deprecate(\"steps_offset!=1\", \"1.0.0\", deprecation_message, standard_warn=False)\n            new_config = dict(scheduler.config)\n            new_config[\"steps_offset\"] = 1\n            scheduler._internal_dict = FrozenDict(new_config)\n\n        if hasattr(scheduler.config, \"clip_sample\") and scheduler.config.clip_sample is True:\n            deprecation_message = (\n                f\"The configuration file of this scheduler: {scheduler} has not set the configuration `clip_sample`.\"\n                \" `clip_sample` should be set to False in the configuration file. Please make sure to update the\"\n                \" config accordingly as not setting `clip_sample` in the config might lead to incorrect results in\"\n                \" future versions. If you have downloaded this checkpoint from the Hugging Face Hub, it would be very\"\n                \" nice if you could open a Pull request for the `scheduler/scheduler_config.json` file\"\n            )\n            deprecate(\"clip_sample not set\", \"1.0.0\", deprecation_message, standard_warn=False)\n            new_config = dict(scheduler.config)\n            new_config[\"clip_sample\"] = False\n            scheduler._internal_dict = FrozenDict(new_config)\n\n        if safety_checker is None and requires_safety_checker:\n            logger.warning(\n                f\"You have disabled the safety checker for {self.__class__} by passing `safety_checker=None`. Ensure\"\n                \" that you abide to the conditions of the Stable Diffusion license and do not expose unfiltered\"\n                \" results in services or applications open to the public. Both the diffusers team and Hugging Face\"\n                \" strongly recommend to keep the safety filter enabled in all public facing circumstances, disabling\"\n                \" it only for use-cases that involve analyzing network behavior or auditing its results. For more\"\n                \" information, please have a look at https://github.com/huggingface/diffusers/pull/254 .\"\n            )\n\n        if safety_checker is not None and feature_extractor is None:\n            raise ValueError(\n                \"Make sure to define a feature extractor when loading {self.__class__} if you want to use the safety\"\n                \" checker. If you do not want to use the safety checker, you can pass `'safety_checker=None'` instead.\"\n            )\n\n        is_unet_version_less_0_9_0 = hasattr(unet.config, \"_diffusers_version\") and version.parse(\n            version.parse(unet.config._diffusers_version).base_version\n        ) < version.parse(\"0.9.0.dev0\")\n        is_unet_sample_size_less_64 = hasattr(unet.config, \"sample_size\") and unet.config.sample_size < 64\n        if is_unet_version_less_0_9_0 and is_unet_sample_size_less_64:\n            deprecation_message = (\n                \"The configuration file of the unet has set the default `sample_size` to smaller than\"\n                \" 64 which seems highly unlikely. If your checkpoint is a fine-tuned version of any of the\"\n                \" following: \\n- CompVis/stable-diffusion-v1-4 \\n- CompVis/stable-diffusion-v1-3 \\n-\"\n                \" CompVis/stable-diffusion-v1-2 \\n- CompVis/stable-diffusion-v1-1 \\n- runwayml/stable-diffusion-v1-5\"\n                \" \\n- runwayml/stable-diffusion-inpainting \\n you should change 'sample_size' to 64 in the\"\n                \" configuration file. Please make sure to update the config accordingly as leaving `sample_size=32`\"\n                \" in the config might lead to incorrect results in future versions. If you have downloaded this\"\n                \" checkpoint from the Hugging Face Hub, it would be very nice if you could open a Pull request for\"\n                \" the `unet/config.json` file\"\n            )\n            deprecate(\"sample_size<64\", \"1.0.0\", deprecation_message, standard_warn=False)\n            new_config = dict(unet.config)\n            new_config[\"sample_size\"] = 64\n            unet._internal_dict = FrozenDict(new_config)\n\n        self.register_modules(\n            vae=vae,\n            text_encoder=text_encoder,\n            tokenizer=tokenizer,\n            unet=unet,\n            scheduler=scheduler,\n            safety_checker=safety_checker,\n            feature_extractor=feature_extractor,\n            image_encoder=image_encoder,\n        )\n        self.vae_scale_factor = 2 ** (len(self.vae.config.block_out_channels) - 1)\n        self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor)\n        self.register_to_config(requires_safety_checker=requires_safety_checker)\n\n    def _encode_prompt(\n        self,\n        prompt,\n        device,\n        num_images_per_prompt,\n        do_classifier_free_guidance,\n        negative_prompt=None,\n        prompt_embeds: Optional[torch.Tensor] = None,\n        negative_prompt_embeds: Optional[torch.Tensor] = None,\n        lora_scale: Optional[float] = None,\n        **kwargs,\n    ):\n        deprecation_message = \"`_encode_prompt()` is deprecated and it will be removed in a future version. Use `encode_prompt()` instead. Also, be aware that the output format changed from a concatenated tensor to a tuple.\"\n        deprecate(\"_encode_prompt()\", \"1.0.0\", deprecation_message, standard_warn=False)\n\n        prompt_embeds_tuple = self.encode_prompt(\n            prompt=prompt,\n            device=device,\n            num_images_per_prompt=num_images_per_prompt,\n            do_classifier_free_guidance=do_classifier_free_guidance,\n            negative_prompt=negative_prompt,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            lora_scale=lora_scale,\n            **kwargs,\n        )\n\n        # concatenate for backwards comp\n        prompt_embeds = torch.cat([prompt_embeds_tuple[1], prompt_embeds_tuple[0]])\n\n        return prompt_embeds\n\n    def encode_prompt(\n        self,\n        prompt,\n        device,\n        num_images_per_prompt,\n        do_classifier_free_guidance,\n        negative_prompt=None,\n        prompt_embeds: Optional[torch.Tensor] = None,\n        negative_prompt_embeds: Optional[torch.Tensor] = None,\n        lora_scale: Optional[float] = None,\n        clip_skip: Optional[int] = None,\n    ):\n        r\"\"\"\n        Encodes the prompt into text encoder hidden states.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                prompt to be encoded\n            device: (`torch.device`):\n                torch device\n            num_images_per_prompt (`int`):\n                number of images that should be generated per prompt\n            do_classifier_free_guidance (`bool`):\n                whether to use classifier free guidance or not\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            lora_scale (`float`, *optional*):\n                A LoRA scale that will be applied to all LoRA layers of the text encoder if LoRA layers are loaded.\n            clip_skip (`int`, *optional*):\n                Number of layers to be skipped from CLIP while computing the prompt embeddings. A value of 1 means that\n                the output of the pre-final layer will be used for computing the prompt embeddings.\n        \"\"\"\n        # set lora scale so that monkey patched LoRA\n        # function of text encoder can correctly access it\n        if lora_scale is not None and isinstance(self, StableDiffusionLoraLoaderMixin):\n            self._lora_scale = lora_scale\n\n            # dynamically adjust the LoRA scale\n            if not USE_PEFT_BACKEND:\n                adjust_lora_scale_text_encoder(self.text_encoder, lora_scale)\n            else:\n                scale_lora_layers(self.text_encoder, lora_scale)\n\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        if prompt_embeds is None:\n            # textual inversion: process multi-vector tokens if necessary\n            if isinstance(self, TextualInversionLoaderMixin):\n                prompt = self.maybe_convert_prompt(prompt, self.tokenizer)\n\n            text_inputs = self.tokenizer(\n                prompt,\n                padding=\"max_length\",\n                max_length=self.tokenizer.model_max_length,\n                truncation=True,\n                return_tensors=\"pt\",\n            )\n            text_input_ids = text_inputs.input_ids\n            untruncated_ids = self.tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n            if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(\n                text_input_ids, untruncated_ids\n            ):\n                removed_text = self.tokenizer.batch_decode(\n                    untruncated_ids[:, self.tokenizer.model_max_length - 1 : -1]\n                )\n                logger.warning(\n                    \"The following part of your input was truncated because CLIP can only handle sequences up to\"\n                    f\" {self.tokenizer.model_max_length} tokens: {removed_text}\"\n                )\n\n            if hasattr(self.text_encoder.config, \"use_attention_mask\") and self.text_encoder.config.use_attention_mask:\n                attention_mask = text_inputs.attention_mask.to(device)\n            else:\n                attention_mask = None\n\n            if clip_skip is None:\n                prompt_embeds = self.text_encoder(text_input_ids.to(device), attention_mask=attention_mask)\n                prompt_embeds = prompt_embeds[0]\n            else:\n                prompt_embeds = self.text_encoder(\n                    text_input_ids.to(device), attention_mask=attention_mask, output_hidden_states=True\n                )\n                # Access the `hidden_states` first, that contains a tuple of\n                # all the hidden states from the encoder layers. Then index into\n                # the tuple to access the hidden states from the desired layer.\n                prompt_embeds = prompt_embeds[-1][-(clip_skip + 1)]\n                # We also need to apply the final LayerNorm here to not mess with the\n                # representations. The `last_hidden_states` that we typically use for\n                # obtaining the final prompt representations passes through the LayerNorm\n                # layer.\n                prompt_embeds = self.text_encoder.text_model.final_layer_norm(prompt_embeds)\n\n        if self.text_encoder is not None:\n            prompt_embeds_dtype = self.text_encoder.dtype\n        elif self.unet is not None:\n            prompt_embeds_dtype = self.unet.dtype\n        else:\n            prompt_embeds_dtype = prompt_embeds.dtype\n\n        prompt_embeds = prompt_embeds.to(dtype=prompt_embeds_dtype, device=device)\n\n        bs_embed, seq_len, _ = prompt_embeds.shape\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(bs_embed * num_images_per_prompt, seq_len, -1)\n\n        # get unconditional embeddings for classifier free guidance\n        if do_classifier_free_guidance and negative_prompt_embeds is None:\n            uncond_tokens: List[str]\n            if negative_prompt is None:\n                uncond_tokens = [\"\"] * batch_size\n            elif prompt is not None and type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif isinstance(negative_prompt, str):\n                uncond_tokens = [negative_prompt]\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n            else:\n                uncond_tokens = negative_prompt\n\n            # textual inversion: process multi-vector tokens if necessary\n            if isinstance(self, TextualInversionLoaderMixin):\n                uncond_tokens = self.maybe_convert_prompt(uncond_tokens, self.tokenizer)\n\n            max_length = prompt_embeds.shape[1]\n            uncond_input = self.tokenizer(\n                uncond_tokens,\n                padding=\"max_length\",\n                max_length=max_length,\n                truncation=True,\n                return_tensors=\"pt\",\n            )\n\n            if hasattr(self.text_encoder.config, \"use_attention_mask\") and self.text_encoder.config.use_attention_mask:\n                attention_mask = uncond_input.attention_mask.to(device)\n            else:\n                attention_mask = None\n\n            negative_prompt_embeds = self.text_encoder(\n                uncond_input.input_ids.to(device),\n                attention_mask=attention_mask,\n            )\n            negative_prompt_embeds = negative_prompt_embeds[0]\n\n        if do_classifier_free_guidance:\n            # duplicate unconditional embeddings for each generation per prompt, using mps friendly method\n            seq_len = negative_prompt_embeds.shape[1]\n\n            negative_prompt_embeds = negative_prompt_embeds.to(dtype=prompt_embeds_dtype, device=device)\n\n            negative_prompt_embeds = negative_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds = negative_prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n        if self.text_encoder is not None:\n            if isinstance(self, StableDiffusionLoraLoaderMixin) and USE_PEFT_BACKEND:\n                # Retrieve the original scale by scaling back the LoRA layers\n                unscale_lora_layers(self.text_encoder, lora_scale)\n\n        return prompt_embeds, negative_prompt_embeds\n\n    def encode_image(self, image, device, num_images_per_prompt, output_hidden_states=None):\n        dtype = next(self.image_encoder.parameters()).dtype\n\n        if not isinstance(image, torch.Tensor):\n            image = self.feature_extractor(image, return_tensors=\"pt\").pixel_values\n\n        image = image.to(device=device, dtype=dtype)\n        if output_hidden_states:\n            image_enc_hidden_states = self.image_encoder(image, output_hidden_states=True).hidden_states[-2]\n            image_enc_hidden_states = image_enc_hidden_states.repeat_interleave(num_images_per_prompt, dim=0)\n            uncond_image_enc_hidden_states = self.image_encoder(\n                torch.zeros_like(image), output_hidden_states=True\n            ).hidden_states[-2]\n            uncond_image_enc_hidden_states = uncond_image_enc_hidden_states.repeat_interleave(\n                num_images_per_prompt, dim=0\n            )\n            return image_enc_hidden_states, uncond_image_enc_hidden_states\n        else:\n            image_embeds = self.image_encoder(image).image_embeds\n            image_embeds = image_embeds.repeat_interleave(num_images_per_prompt, dim=0)\n            uncond_image_embeds = torch.zeros_like(image_embeds)\n\n            return image_embeds, uncond_image_embeds\n\n    def prepare_ip_adapter_image_embeds(\n        self, ip_adapter_image, ip_adapter_image_embeds, device, num_images_per_prompt, do_classifier_free_guidance\n    ):\n        image_embeds = []\n        if do_classifier_free_guidance:\n            negative_image_embeds = []\n        if ip_adapter_image_embeds is None:\n            if not isinstance(ip_adapter_image, list):\n                ip_adapter_image = [ip_adapter_image]\n\n            if len(ip_adapter_image) != len(self.unet.encoder_hid_proj.image_projection_layers):\n                raise ValueError(\n                    f\"`ip_adapter_image` must have same length as the number of IP Adapters. Got {len(ip_adapter_image)} images and {len(self.unet.encoder_hid_proj.image_projection_layers)} IP Adapters.\"\n                )\n\n            for single_ip_adapter_image, image_proj_layer in zip(\n                ip_adapter_image, self.unet.encoder_hid_proj.image_projection_layers\n            ):\n                output_hidden_state = not isinstance(image_proj_layer, ImageProjection)\n                single_image_embeds, single_negative_image_embeds = self.encode_image(\n                    single_ip_adapter_image, device, 1, output_hidden_state\n                )\n\n                image_embeds.append(single_image_embeds[None, :])\n                if do_classifier_free_guidance:\n                    negative_image_embeds.append(single_negative_image_embeds[None, :])\n        else:\n            for single_image_embeds in ip_adapter_image_embeds:\n                if do_classifier_free_guidance:\n                    single_negative_image_embeds, single_image_embeds = single_image_embeds.chunk(2)\n                    negative_image_embeds.append(single_negative_image_embeds)\n                image_embeds.append(single_image_embeds)\n\n        ip_adapter_image_embeds = []\n        for i, single_image_embeds in enumerate(image_embeds):\n            single_image_embeds = torch.cat([single_image_embeds] * num_images_per_prompt, dim=0)\n            if do_classifier_free_guidance:\n                single_negative_image_embeds = torch.cat([negative_image_embeds[i]] * num_images_per_prompt, dim=0)\n                single_image_embeds = torch.cat([single_negative_image_embeds, single_image_embeds], dim=0)\n\n            single_image_embeds = single_image_embeds.to(device=device)\n            ip_adapter_image_embeds.append(single_image_embeds)\n\n        return ip_adapter_image_embeds\n\n    def run_safety_checker(self, image, device, dtype):\n        if self.safety_checker is None:\n            has_nsfw_concept = None\n        else:\n            if torch.is_tensor(image):\n                feature_extractor_input = self.image_processor.postprocess(image, output_type=\"pil\")\n            else:\n                feature_extractor_input = self.image_processor.numpy_to_pil(image)\n            safety_checker_input = self.feature_extractor(feature_extractor_input, return_tensors=\"pt\").to(device)\n            image, has_nsfw_concept = self.safety_checker(\n                images=image, clip_input=safety_checker_input.pixel_values.to(dtype)\n            )\n        return image, has_nsfw_concept\n\n    def decode_latents(self, latents):\n        deprecation_message = \"The decode_latents method is deprecated and will be removed in 1.0.0. Please use VaeImageProcessor.postprocess(...) instead\"\n        deprecate(\"decode_latents\", \"1.0.0\", deprecation_message, standard_warn=False)\n\n        latents = 1 / self.vae.config.scaling_factor * latents\n        image = self.vae.decode(latents, return_dict=False)[0]\n        image = (image / 2 + 0.5).clamp(0, 1)\n        # we always cast to float32 as this does not cause significant overhead and is compatible with bfloat16\n        image = image.cpu().permute(0, 2, 3, 1).float().numpy()\n        return image\n\n    def prepare_extra_step_kwargs(self, generator, eta):\n        # prepare extra kwargs for the scheduler step, since not all schedulers have the same signature\n        # eta (η) is only used with the DDIMScheduler, it will be ignored for other schedulers.\n        # eta corresponds to η in DDIM paper: https://arxiv.org/abs/2010.02502\n        # and should be between [0, 1]\n\n        accepts_eta = \"eta\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        extra_step_kwargs = {}\n        if accepts_eta:\n            extra_step_kwargs[\"eta\"] = eta\n\n        # check if the scheduler accepts generator\n        accepts_generator = \"generator\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        if accepts_generator:\n            extra_step_kwargs[\"generator\"] = generator\n        return extra_step_kwargs\n\n    def check_inputs(\n        self,\n        prompt,\n        height,\n        width,\n        callback_steps,\n        negative_prompt=None,\n        prompt_embeds=None,\n        negative_prompt_embeds=None,\n        ip_adapter_image=None,\n        ip_adapter_image_embeds=None,\n        callback_on_step_end_tensor_inputs=None,\n    ):\n        if height % 8 != 0 or width % 8 != 0:\n            raise ValueError(f\"`height` and `width` have to be divisible by 8 but are {height} and {width}.\")\n\n        if callback_steps is not None and (not isinstance(callback_steps, int) or callback_steps <= 0):\n            raise ValueError(\n                f\"`callback_steps` has to be a positive integer but is {callback_steps} of type\"\n                f\" {type(callback_steps)}.\"\n            )\n        if callback_on_step_end_tensor_inputs is not None and not all(\n            k in self._callback_tensor_inputs for k in callback_on_step_end_tensor_inputs\n        ):\n            raise ValueError(\n                f\"`callback_on_step_end_tensor_inputs` has to be in {self._callback_tensor_inputs}, but found {[k for k in callback_on_step_end_tensor_inputs if k not in self._callback_tensor_inputs]}\"\n            )\n\n        if prompt is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n\n        if negative_prompt is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n\n        if prompt_embeds is not None and negative_prompt_embeds is not None:\n            if prompt_embeds.shape != negative_prompt_embeds.shape:\n                raise ValueError(\n                    \"`prompt_embeds` and `negative_prompt_embeds` must have the same shape when passed directly, but\"\n                    f\" got: `prompt_embeds` {prompt_embeds.shape} != `negative_prompt_embeds`\"\n                    f\" {negative_prompt_embeds.shape}.\"\n                )\n\n        if ip_adapter_image is not None and ip_adapter_image_embeds is not None:\n            raise ValueError(\n                \"Provide either `ip_adapter_image` or `ip_adapter_image_embeds`. Cannot leave both `ip_adapter_image` and `ip_adapter_image_embeds` defined.\"\n            )\n\n        if ip_adapter_image_embeds is not None:\n            if not isinstance(ip_adapter_image_embeds, list):\n                raise ValueError(\n                    f\"`ip_adapter_image_embeds` has to be of type `list` but is {type(ip_adapter_image_embeds)}\"\n                )\n            elif ip_adapter_image_embeds[0].ndim not in [3, 4]:\n                raise ValueError(\n                    f\"`ip_adapter_image_embeds` has to be a list of 3D or 4D tensors but is {ip_adapter_image_embeds[0].ndim}D\"\n                )\n\n    def prepare_latents(self, batch_size, num_channels_latents, height, width, dtype, device, generator, latents=None):\n        shape = (\n            batch_size,\n            num_channels_latents,\n            int(height) // self.vae_scale_factor,\n            int(width) // self.vae_scale_factor,\n        )\n        if isinstance(generator, list) and len(generator) != batch_size:\n            raise ValueError(\n                f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n            )\n\n        if latents is None:\n            latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n        else:\n            latents = latents.to(device)\n\n        # scale the initial noise by the standard deviation required by the scheduler\n        latents = latents * self.scheduler.init_noise_sigma\n        return latents\n\n    # Copied from diffusers.pipelines.latent_consistency_models.pipeline_latent_consistency_text2img.LatentConsistencyModelPipeline.get_guidance_scale_embedding\n    def get_guidance_scale_embedding(\n        self, w: torch.Tensor, embedding_dim: int = 512, dtype: torch.dtype = torch.float32\n    ) -> torch.Tensor:\n        \"\"\"\n        See https://github.com/google-research/vdm/blob/dc27b98a554f65cdc654b800da5aa1846545d41b/model_vdm.py#L298\n\n        Args:\n            w (`torch.Tensor`):\n                Generate embedding vectors with a specified guidance scale to subsequently enrich timestep embeddings.\n            embedding_dim (`int`, *optional*, defaults to 512):\n                Dimension of the embeddings to generate.\n            dtype (`torch.dtype`, *optional*, defaults to `torch.float32`):\n                Data type of the generated embeddings.\n\n        Returns:\n            `torch.Tensor`: Embedding vectors with shape `(len(w), embedding_dim)`.\n        \"\"\"\n        assert len(w.shape) == 1\n        w = w * 1000.0\n\n        half_dim = embedding_dim // 2\n        emb = torch.log(torch.tensor(10000.0)) / (half_dim - 1)\n        emb = torch.exp(torch.arange(half_dim, dtype=dtype) * -emb)\n        emb = w.to(dtype)[:, None] * emb[None, :]\n        emb = torch.cat([torch.sin(emb), torch.cos(emb)], dim=1)\n        if embedding_dim % 2 == 1:  # zero pad\n            emb = torch.nn.functional.pad(emb, (0, 1))\n        assert emb.shape == (w.shape[0], embedding_dim)\n        return emb\n\n    @property\n    def guidance_scale(self):\n        return self._guidance_scale\n\n    @property\n    def guidance_rescale(self):\n        return self._guidance_rescale\n\n    @property\n    def clip_skip(self):\n        return self._clip_skip\n\n    # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2)\n    # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1`\n    # corresponds to doing no classifier free guidance.\n    @property\n    def do_classifier_free_guidance(self):\n        return self._guidance_scale > 1 and self.unet.config.time_cond_proj_dim is None\n\n    @property\n    def cross_attention_kwargs(self):\n        return self._cross_attention_kwargs\n\n    @property\n    def num_timesteps(self):\n        return self._num_timesteps\n\n    @property\n    def interrupt(self):\n        return self._interrupt\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        height: Optional[int] = None,\n        width: Optional[int] = None,\n        num_inference_steps: int = 50,\n        timesteps: List[int] = None,\n        sigmas: List[float] = None,\n        guidance_scale: float = 7.5,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        eta: float = 0.0,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.Tensor] = None,\n        prompt_embeds: Optional[torch.Tensor] = None,\n        negative_prompt_embeds: Optional[torch.Tensor] = None,\n        ip_adapter_image: Optional[PipelineImageInput] = None,\n        ip_adapter_image_embeds: Optional[List[torch.Tensor]] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        guidance_rescale: float = 0.0,\n        clip_skip: Optional[int] = None,\n        callback_on_step_end: Optional[\n            Union[Callable[[int, int, Dict], None], PipelineCallback, MultiPipelineCallbacks]\n        ] = None,\n        callback_on_step_end_tensor_inputs: List[str] = [\"latents\"],\n        **kwargs,\n    ):\n        r\"\"\"\n        The call function to the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide image generation. If not defined, you need to pass `prompt_embeds`.\n            height (`int`, *optional*, defaults to `self.unet.config.sample_size * self.vae_scale_factor`):\n                The height in pixels of the generated image.\n            width (`int`, *optional*, defaults to `self.unet.config.sample_size * self.vae_scale_factor`):\n                The width in pixels of the generated image.\n            num_inference_steps (`int`, *optional*, defaults to 50):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            timesteps (`List[int]`, *optional*):\n                Custom timesteps to use for the denoising process with schedulers which support a `timesteps` argument\n                in their `set_timesteps` method. If not defined, the default behavior when `num_inference_steps` is\n                passed will be used. Must be in descending order.\n            sigmas (`List[float]`, *optional*):\n                Custom sigmas to use for the denoising process with schedulers which support a `sigmas` argument in\n                their `set_timesteps` method. If not defined, the default behavior when `num_inference_steps` is passed\n                will be used.\n            guidance_scale (`float`, *optional*, defaults to 7.5):\n                A higher guidance scale value encourages the model to generate images closely linked to the text\n                `prompt` at the expense of lower image quality. Guidance scale is enabled when `guidance_scale > 1`.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide what to not include in image generation. If not defined, you need to\n                pass `negative_prompt_embeds` instead. Ignored when not using guidance (`guidance_scale < 1`).\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            eta (`float`, *optional*, defaults to 0.0):\n                Corresponds to parameter eta (η) from the [DDIM](https://arxiv.org/abs/2010.02502) paper. Only applies\n                to the [`~schedulers.DDIMScheduler`], and is ignored in other schedulers.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                A [`torch.Generator`](https://pytorch.org/docs/stable/generated/torch.Generator.html) to make\n                generation deterministic.\n            latents (`torch.Tensor`, *optional*):\n                Pre-generated noisy latents sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor is generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs (prompt weighting). If not\n                provided, text embeddings are generated from the `prompt` input argument.\n            negative_prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs (prompt weighting). If\n                not provided, `negative_prompt_embeds` are generated from the `negative_prompt` input argument.\n            ip_adapter_image: (`PipelineImageInput`, *optional*): Optional image input to work with IP Adapters.\n            ip_adapter_image_embeds (`List[torch.Tensor]`, *optional*):\n                Pre-generated image embeddings for IP-Adapter. It should be a list of length same as number of\n                IP-adapters. Each element should be a tensor of shape `(batch_size, num_images, emb_dim)`. It should\n                contain the negative image embedding if `do_classifier_free_guidance` is set to `True`. If not\n                provided, embeddings are computed from the `ip_adapter_image` input argument.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generated image. Choose between `PIL.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.stable_diffusion.StableDiffusionPipelineOutput`] instead of a\n                plain tuple.\n            cross_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the [`AttentionProcessor`] as defined in\n                [`self.processor`](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            guidance_rescale (`float`, *optional*, defaults to 0.0):\n                Guidance rescale factor from [Common Diffusion Noise Schedules and Sample Steps are\n                Flawed](https://arxiv.org/pdf/2305.08891.pdf). Guidance rescale factor should fix overexposure when\n                using zero terminal SNR.\n            clip_skip (`int`, *optional*):\n                Number of layers to be skipped from CLIP while computing the prompt embeddings. A value of 1 means that\n                the output of the pre-final layer will be used for computing the prompt embeddings.\n            callback_on_step_end (`Callable`, `PipelineCallback`, `MultiPipelineCallbacks`, *optional*):\n                A function or a subclass of `PipelineCallback` or `MultiPipelineCallbacks` that is called at the end of\n                each denoising step during the inference. with the following arguments: `callback_on_step_end(self:\n                DiffusionPipeline, step: int, timestep: int, callback_kwargs: Dict)`. `callback_kwargs` will include a\n                list of all tensors as specified by `callback_on_step_end_tensor_inputs`.\n            callback_on_step_end_tensor_inputs (`List`, *optional*):\n                The list of tensor inputs for the `callback_on_step_end` function. The tensors specified in the list\n                will be passed as `callback_kwargs` argument. You will only be able to include variables listed in the\n                `._callback_tensor_inputs` attribute of your pipeline class.\n\n        Examples:\n\n        Returns:\n            [`~pipelines.stable_diffusion.StableDiffusionPipelineOutput`] or `tuple`:\n                If `return_dict` is `True`, [`~pipelines.stable_diffusion.StableDiffusionPipelineOutput`] is returned,\n                otherwise a `tuple` is returned where the first element is a list with the generated images and the\n                second element is a list of `bool`s indicating whether the corresponding generated image contains\n                \"not-safe-for-work\" (nsfw) content.\n        \"\"\"\n\n        callback = kwargs.pop(\"callback\", None)\n        callback_steps = kwargs.pop(\"callback_steps\", None)\n\n        if callback is not None:\n            deprecate(\n                \"callback\",\n                \"1.0.0\",\n                \"Passing `callback` as an input argument to `__call__` is deprecated, consider using `callback_on_step_end`\",\n            )\n        if callback_steps is not None:\n            deprecate(\n                \"callback_steps\",\n                \"1.0.0\",\n                \"Passing `callback_steps` as an input argument to `__call__` is deprecated, consider using `callback_on_step_end`\",\n            )\n\n        if isinstance(callback_on_step_end, (PipelineCallback, MultiPipelineCallbacks)):\n            callback_on_step_end_tensor_inputs = callback_on_step_end.tensor_inputs\n\n        # 0. Default height and width to unet\n        height = height or self.unet.config.sample_size * self.vae_scale_factor\n        width = width or self.unet.config.sample_size * self.vae_scale_factor\n        # to deal with lora scaling and other possible forward hooks\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            height,\n            width,\n            callback_steps,\n            negative_prompt,\n            prompt_embeds,\n            negative_prompt_embeds,\n            ip_adapter_image,\n            ip_adapter_image_embeds,\n            callback_on_step_end_tensor_inputs,\n        )\n\n        self._guidance_scale = guidance_scale\n        self._guidance_rescale = guidance_rescale\n        self._clip_skip = clip_skip\n        self._cross_attention_kwargs = cross_attention_kwargs\n        self._interrupt = False\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        device = self._execution_device\n\n        # 3. Encode input prompt\n        lora_scale = (\n            self.cross_attention_kwargs.get(\"scale\", None) if self.cross_attention_kwargs is not None else None\n        )\n\n        prompt_embeds, negative_prompt_embeds = self.encode_prompt(\n            prompt,\n            device,\n            num_images_per_prompt,\n            self.do_classifier_free_guidance,\n            negative_prompt,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            lora_scale=lora_scale,\n            clip_skip=self.clip_skip,\n        )\n\n        # For classifier free guidance, we need to do two forward passes.\n        # Here we concatenate the unconditional and text embeddings into a single batch\n        # to avoid doing two forward passes\n        if self.do_classifier_free_guidance:\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds])\n\n        if ip_adapter_image is not None or ip_adapter_image_embeds is not None:\n            image_embeds = self.prepare_ip_adapter_image_embeds(\n                ip_adapter_image,\n                ip_adapter_image_embeds,\n                device,\n                batch_size * num_images_per_prompt,\n                self.do_classifier_free_guidance,\n            )\n\n        # 4. Prepare timesteps\n        timesteps, num_inference_steps = retrieve_timesteps(\n            self.scheduler, num_inference_steps, device, timesteps, sigmas\n        )\n\n        # 5. Prepare latent variables\n        num_channels_latents = self.unet.config.in_channels\n        latents = self.prepare_latents(\n            batch_size * num_images_per_prompt,\n            num_channels_latents,\n            height,\n            width,\n            prompt_embeds.dtype,\n            device,\n            generator,\n            latents,\n        )\n\n        # 6. Prepare extra step kwargs.\n        extra_step_kwargs = self.prepare_extra_step_kwargs(generator, eta)\n\n        # 6.1 Add image embeds for IP-Adapter\n        added_cond_kwargs = (\n            {\"image_embeds\": image_embeds}\n            if (ip_adapter_image is not None or ip_adapter_image_embeds is not None)\n            else None\n        )\n\n        # 6.2 Optionally get Guidance Scale Embedding\n        timestep_cond = None\n        if self.unet.config.time_cond_proj_dim is not None:\n            guidance_scale_tensor = torch.tensor(self.guidance_scale - 1).repeat(batch_size * num_images_per_prompt)\n            timestep_cond = self.get_guidance_scale_embedding(\n                guidance_scale_tensor, embedding_dim=self.unet.config.time_cond_proj_dim\n            ).to(device=device, dtype=latents.dtype)\n\n        # 7. Denoising loop\n        num_warmup_steps = len(timesteps) - num_inference_steps * self.scheduler.order\n        self._num_timesteps = len(timesteps)\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                if self.interrupt:\n                    continue\n\n                # expand the latents if we are doing classifier free guidance\n                latent_model_input = torch.cat([latents] * 2) if self.do_classifier_free_guidance else latents\n                latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n                # predict the noise residual\n                noise_pred = self.unet(\n                    latent_model_input,\n                    t,\n                    encoder_hidden_states=prompt_embeds,\n                    timestep_cond=timestep_cond,\n                    cross_attention_kwargs=self.cross_attention_kwargs,\n                    added_cond_kwargs=added_cond_kwargs,\n                    return_dict=False,\n                )[0]\n\n                # perform guidance\n                if self.do_classifier_free_guidance:\n                    noise_pred_uncond, noise_pred_cond = noise_pred.chunk(2)\n                    noise_pred = apg.normalized_guidance(noise_pred_cond, noise_pred_uncond, guidance_scale=self.guidance_scale)\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents = self.scheduler.step(noise_pred, t, latents, **extra_step_kwargs, return_dict=False)[0]\n\n                if callback_on_step_end is not None:\n                    callback_kwargs = {}\n                    for k in callback_on_step_end_tensor_inputs:\n                        callback_kwargs[k] = locals()[k]\n                    callback_outputs = callback_on_step_end(self, i, t, callback_kwargs)\n\n                    latents = callback_outputs.pop(\"latents\", latents)\n                    prompt_embeds = callback_outputs.pop(\"prompt_embeds\", prompt_embeds)\n                    negative_prompt_embeds = callback_outputs.pop(\"negative_prompt_embeds\", negative_prompt_embeds)\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n                    if callback is not None and i % callback_steps == 0:\n                        step_idx = i // getattr(self.scheduler, \"order\", 1)\n                        callback(step_idx, t, latents)\n\n                if XLA_AVAILABLE:\n                    xm.mark_step()\n\n        if not output_type == \"latent\":\n            image = self.vae.decode(latents / self.vae.config.scaling_factor, return_dict=False, generator=generator)[\n                0\n            ]\n            image, has_nsfw_concept = self.run_safety_checker(image, device, prompt_embeds.dtype)\n        else:\n            image = latents\n            has_nsfw_concept = None\n\n        if has_nsfw_concept is None:\n            do_denormalize = [True] * image.shape[0]\n        else:\n            do_denormalize = [not has_nsfw for has_nsfw in has_nsfw_concept]\n\n        image = self.image_processor.postprocess(image, output_type=output_type, do_denormalize=do_denormalize)\n\n        # Offload all models\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return (image, has_nsfw_concept)\n\n        return StableDiffusionPipelineOutput(images=image, nsfw_content_detected=has_nsfw_concept)\n"
  },
  {
    "path": "modules/api/api.py",
    "content": "from typing import List, Optional\nfrom threading import Lock\nfrom secrets import compare_digest\nfrom fastapi import FastAPI, APIRouter, Depends, Request\nfrom fastapi.security import HTTPBasic, HTTPBasicCredentials\nfrom fastapi.exceptions import HTTPException\nfrom modules import errors, shared\nfrom modules.api import models, endpoints, script, helpers, server, generate, process, control, docs, gpu\n\n\nerrors.install()\n\n\nclass Api:\n    def __init__(self, app: FastAPI, queue_lock: Lock):\n        self.credentials = {}\n        if shared.cmd_opts.auth:\n            for auth in shared.cmd_opts.auth.split(\",\"):\n                user, password = auth.split(\":\")\n                self.credentials[user.replace('\"', '').strip()] = password.replace('\"', '').strip()\n        if shared.cmd_opts.auth_file:\n            with open(shared.cmd_opts.auth_file, 'r', encoding=\"utf8\") as file:\n                for line in file.readlines():\n                    user, password = line.split(\":\")\n                    self.credentials[user.replace('\"', '').strip()] = password.replace('\"', '').strip()\n        self.router = APIRouter()\n        if shared.cmd_opts.docs:\n            docs.create_docs(app)\n            docs.create_redocs(app)\n        self.app = app\n        self.queue_lock = queue_lock\n        self.generate = generate.APIGenerate(queue_lock)\n        self.process = process.APIProcess(queue_lock)\n        self.control = control.APIControl(queue_lock)\n        # compatibility api\n        self.text2imgapi = self.generate.post_text2img\n        self.img2imgapi = self.generate.post_img2img\n\n    def register(self):\n        # fetch js/css\n        self.add_api_route(\"/js\", server.get_js, methods=[\"GET\"], auth=False)\n        # server api\n        self.add_api_route(\"/sdapi/v1/motd\", server.get_motd, methods=[\"GET\"], response_model=str)\n        self.add_api_route(\"/sdapi/v1/log\", server.get_log, methods=[\"GET\"], response_model=List[str])\n        self.add_api_route(\"/sdapi/v1/log\", server.post_log, methods=[\"POST\"])\n        self.add_api_route(\"/sdapi/v1/start\", self.get_session_start, methods=[\"GET\"])\n        self.add_api_route(\"/sdapi/v1/version\", server.get_version, methods=[\"GET\"])\n        self.add_api_route(\"/sdapi/v1/status\", server.get_status, methods=[\"GET\"], response_model=models.ResStatus)\n        self.add_api_route(\"/sdapi/v1/platform\", server.get_platform, methods=[\"GET\"])\n        self.add_api_route(\"/sdapi/v1/progress\", server.get_progress, methods=[\"GET\"], response_model=models.ResProgress)\n        self.add_api_route(\"/sdapi/v1/history\", server.get_history, methods=[\"GET\"], response_model=list[models.ResHistory])\n        self.add_api_route(\"/sdapi/v1/interrupt\", server.post_interrupt, methods=[\"POST\"])\n        self.add_api_route(\"/sdapi/v1/skip\", server.post_skip, methods=[\"POST\"])\n        self.add_api_route(\"/sdapi/v1/shutdown\", server.post_shutdown, methods=[\"POST\"])\n        self.add_api_route(\"/sdapi/v1/memory\", server.get_memory, methods=[\"GET\"], response_model=models.ResMemory)\n        self.add_api_route(\"/sdapi/v1/options\", server.get_config, methods=[\"GET\"], response_model=models.OptionsModel)\n        self.add_api_route(\"/sdapi/v1/options\", server.set_config, methods=[\"POST\"])\n        self.add_api_route(\"/sdapi/v1/cmd-flags\", server.get_cmd_flags, methods=[\"GET\"], response_model=models.FlagsModel)\n        self.add_api_route(\"/sdapi/v1/gpu\", gpu.get_gpu_status, methods=[\"GET\"], response_model=List[models.ResGPU])\n\n        # core api using locking\n        self.add_api_route(\"/sdapi/v1/txt2img\", self.generate.post_text2img, methods=[\"POST\"], response_model=models.ResTxt2Img)\n        self.add_api_route(\"/sdapi/v1/img2img\", self.generate.post_img2img, methods=[\"POST\"], response_model=models.ResImg2Img)\n        self.add_api_route(\"/sdapi/v1/control\", self.control.post_control, methods=[\"POST\"], response_model=control.ResControl)\n        self.add_api_route(\"/sdapi/v1/extra-single-image\", self.process.extras_single_image_api, methods=[\"POST\"], response_model=models.ResProcessImage)\n        self.add_api_route(\"/sdapi/v1/extra-batch-images\", self.process.extras_batch_images_api, methods=[\"POST\"], response_model=models.ResProcessBatch)\n        self.add_api_route(\"/sdapi/v1/preprocess\", self.process.post_preprocess, methods=[\"POST\"])\n        self.add_api_route(\"/sdapi/v1/mask\", self.process.post_mask, methods=[\"POST\"])\n        self.add_api_route(\"/sdapi/v1/detect\", self.process.post_detect, methods=[\"POST\"])\n        self.add_api_route(\"/sdapi/v1/prompt-enhance\", self.process.post_prompt_enhance, methods=[\"POST\"], response_model=models.ResPromptEnhance)\n\n        # api dealing with optional scripts\n        self.add_api_route(\"/sdapi/v1/scripts\", script.get_scripts_list, methods=[\"GET\"], response_model=models.ResScripts)\n        self.add_api_route(\"/sdapi/v1/script-info\", script.get_script_info, methods=[\"GET\"], response_model=List[models.ItemScript])\n\n        # enumerator api\n        self.add_api_route(\"/sdapi/v1/preprocessors\", self.process.get_preprocess, methods=[\"GET\"], response_model=List[process.ItemPreprocess])\n        self.add_api_route(\"/sdapi/v1/masking\", self.process.get_mask, methods=[\"GET\"], response_model=process.ItemMask)\n        self.add_api_route(\"/sdapi/v1/interrogate\", endpoints.get_interrogate, methods=[\"GET\"], response_model=List[str])\n        self.add_api_route(\"/sdapi/v1/samplers\", endpoints.get_samplers, methods=[\"GET\"], response_model=List[models.ItemSampler])\n        self.add_api_route(\"/sdapi/v1/upscalers\", endpoints.get_upscalers, methods=[\"GET\"], response_model=List[models.ItemUpscaler])\n        self.add_api_route(\"/sdapi/v1/sd-models\", endpoints.get_sd_models, methods=[\"GET\"], response_model=List[models.ItemModel])\n        self.add_api_route(\"/sdapi/v1/controlnets\", endpoints.get_controlnets, methods=[\"GET\"], response_model=List[str])\n        self.add_api_route(\"/sdapi/v1/face-restorers\", endpoints.get_restorers, methods=[\"GET\"], response_model=List[models.ItemDetailer])\n        self.add_api_route(\"/sdapi/v1/detailers\", endpoints.get_detailers, methods=[\"GET\"], response_model=List[models.ItemDetailer])\n        self.add_api_route(\"/sdapi/v1/prompt-styles\", endpoints.get_prompt_styles, methods=[\"GET\"], response_model=List[models.ItemStyle])\n        self.add_api_route(\"/sdapi/v1/embeddings\", endpoints.get_embeddings, methods=[\"GET\"], response_model=models.ResEmbeddings)\n        self.add_api_route(\"/sdapi/v1/sd-vae\", endpoints.get_sd_vaes, methods=[\"GET\"], response_model=List[models.ItemVae])\n        self.add_api_route(\"/sdapi/v1/extensions\", endpoints.get_extensions_list, methods=[\"GET\"], response_model=List[models.ItemExtension])\n        self.add_api_route(\"/sdapi/v1/extra-networks\", endpoints.get_extra_networks, methods=[\"GET\"], response_model=List[models.ItemExtraNetwork])\n\n        # functional api\n        self.add_api_route(\"/sdapi/v1/png-info\", endpoints.post_pnginfo, methods=[\"POST\"], response_model=models.ResImageInfo)\n        self.add_api_route(\"/sdapi/v1/interrogate\", endpoints.post_interrogate, methods=[\"POST\"])\n        self.add_api_route(\"/sdapi/v1/vqa\", endpoints.post_vqa, methods=[\"POST\"])\n        self.add_api_route(\"/sdapi/v1/checkpoint\", endpoints.get_checkpoint, methods=[\"GET\"])\n        self.add_api_route(\"/sdapi/v1/checkpoint\", endpoints.set_checkpoint, methods=[\"POST\"])\n        self.add_api_route(\"/sdapi/v1/refresh-checkpoints\", endpoints.post_refresh_checkpoints, methods=[\"POST\"])\n        self.add_api_route(\"/sdapi/v1/unload-checkpoint\", endpoints.post_unload_checkpoint, methods=[\"POST\"])\n        self.add_api_route(\"/sdapi/v1/reload-checkpoint\", endpoints.post_reload_checkpoint, methods=[\"POST\"])\n        self.add_api_route(\"/sdapi/v1/lock-checkpoint\", endpoints.post_lock_checkpoint, methods=[\"POST\"])\n        self.add_api_route(\"/sdapi/v1/refresh-vae\", endpoints.post_refresh_vae, methods=[\"POST\"])\n        self.add_api_route(\"/sdapi/v1/latents\", endpoints.get_latent_history, methods=[\"GET\"], response_model=List[str])\n        self.add_api_route(\"/sdapi/v1/latents\", endpoints.post_latent_history, methods=[\"POST\"], response_model=int)\n        self.add_api_route(\"/sdapi/v1/modules\", endpoints.get_modules, methods=[\"GET\"])\n        self.add_api_route(\"/sdapi/v1/sampler\", endpoints.get_sampler, methods=[\"GET\"], response_model=dict)\n\n        # lora api\n        from modules.api import loras\n        loras.register_api()\n\n        # gallery api\n        from modules.api import gallery\n        gallery.register_api(self.app)\n\n        # nudenet api\n        from modules.api import nudenet\n        nudenet.register_api()\n\n        # xyz-grid api\n        from modules.api import xyz_grid\n        xyz_grid.register_api()\n\n        # civitai api\n        from modules.civitai import api_civitai\n        api_civitai.register_api()\n\n    def add_api_route(self, path: str, fn, auth: bool = True, **kwargs):\n        if auth and self.credentials:\n            deps = list(kwargs.get('dependencies', []))\n            deps.append(Depends(self.auth))\n            kwargs['dependencies'] = deps\n        if shared.opts.subpath is not None and len(shared.opts.subpath) > 0:\n            self.app.add_api_route(f'{shared.opts.subpath}{path}', endpoint=fn, **kwargs)\n        self.app.add_api_route(path, endpoint=fn, **kwargs)\n\n    def auth(self, credentials: HTTPBasicCredentials = Depends(HTTPBasic())):\n        if not self.credentials:\n            return True\n        if credentials.username in self.credentials:\n            if compare_digest(credentials.password, self.credentials[credentials.username]):\n                return True\n            if hasattr(self.app, 'tokens') and (self.app.tokens is not None):\n                if credentials.password in self.app.tokens.keys():\n                    return True\n        shared.log.error(f'API authentication: user=\"{credentials.username}\"')\n        raise HTTPException(status_code=401, detail=\"Unauthorized\", headers={\"WWW-Authenticate\": \"Basic\"})\n\n    def get_session_start(self, req: Request, agent: Optional[str] = None):\n        token = req.cookies.get(\"access-token\") or req.cookies.get(\"access-token-unsecure\")\n        user = self.app.tokens.get(token) if hasattr(self.app, 'tokens') else None\n        shared.log.info(f'Browser session: user={user} client={req.client.host} agent={agent}')\n        return {}\n\n    def launch(self):\n        config = {\n            \"listen\": shared.cmd_opts.listen,\n            \"port\": shared.cmd_opts.port,\n            \"keyfile\": shared.cmd_opts.tls_keyfile,\n            \"certfile\": shared.cmd_opts.tls_certfile,\n            \"loop\": \"auto\", # auto, asyncio, uvloop\n            \"http\": \"auto\", # auto, h11, httptools\n        }\n        from modules.server import UvicornServer\n        http_server = UvicornServer(self.app, **config)\n        # from modules.server import HypercornServer\n        # server = HypercornServer(self.app, **config)\n        http_server.start()\n        shared.log.info(f'API server: Uvicorn options={config}')\n        return http_server\n\n\n# compatibility items\ndecode_base64_to_image = helpers.decode_base64_to_image\nencode_pil_to_base64 = helpers.encode_pil_to_base64\nvalidate_sampler_name = helpers.validate_sampler_name\n"
  },
  {
    "path": "modules/api/control.py",
    "content": "from typing import Optional, List\nfrom threading import Lock\nfrom pydantic import BaseModel, Field # pylint: disable=no-name-in-module\nfrom modules import errors, shared, processing_helpers\nfrom modules.api import models, helpers\nfrom modules.control import run\n\n\nerrors.install()\n\n\nclass ItemControl(BaseModel):\n    process: str = Field(title=\"Preprocessor\", default=\"\", description=\"\")\n    model: str = Field(title=\"Control Model\", default=\"\", description=\"\")\n    strength: float = Field(title=\"Control model strength\", default=1.0, description=\"\")\n    start: float = Field(title=\"Control model start\", default=0.0, description=\"\")\n    end: float = Field(title=\"Control model end\", default=1.0, description=\"\")\n    override: str = Field(title=\"Override image\", default=None, description=\"\")\n\n\nclass ItemXYZ(BaseModel):\n    x_type: str = Field(title=\"X axis values\", default='')\n    x_values: str = Field(title=\"X axis values\", default='')\n    y_type: str = Field(title=\"Y axis values\", default='')\n    y_values: str = Field(title=\"Y axis values\", default='')\n    z_type: str = Field(title=\"Z axis values\", default='')\n    z_values: str = Field(title=\"Z axis values\", default='')\n    draw_legend: bool = Field(title=\"Draw legend\", default=True)\n    include_grid: bool = Field(title=\"Include grid\", default=True)\n    include_subgrids: bool = Field(title=\"Include subgrids\", default=False)\n    include_images: bool = Field(title=\"Include images\", default=False)\n    include_time: bool = Field(title=\"Include time\", default=False)\n    include_text: bool = Field(title=\"Include text\", default=False)\n\n\nReqControl = models.create_model_from_signature(\n    func = run.control_run,\n    model_name = \"StableDiffusionProcessingControl\",\n    additional_fields = [\n        {\"key\": \"sampler_name\", \"type\": str, \"default\": \"Default\"},\n        {\"key\": \"script_name\", \"type\": Optional[str], \"default\": None},\n        {\"key\": \"script_args\", \"type\": list, \"default\": []},\n        {\"key\": \"send_images\", \"type\": bool, \"default\": True},\n        {\"key\": \"save_images\", \"type\": bool, \"default\": False},\n        {\"key\": \"alwayson_scripts\", \"type\": dict, \"default\": {}},\n        {\"key\": \"ip_adapter\", \"type\": Optional[List[models.ItemIPAdapter]], \"default\": None, \"exclude\": True},\n        {\"key\": \"face\", \"type\": Optional[models.ItemFace], \"default\": None, \"exclude\": True},\n        {\"key\": \"control\", \"type\": Optional[List[ItemControl]], \"default\": [], \"exclude\": True},\n        {\"key\": \"xyz\", \"type\": Optional[ItemXYZ], \"default\": None, \"exclude\": True},\n        # {\"key\": \"extra\", \"type\": Optional[dict], \"default\": {}, \"exclude\": True},\n    ]\n)\nif not hasattr(ReqControl, \"__config__\"):\n    ReqControl.__config__ = models.DummyConfig\n\n\nclass ResControl(BaseModel):\n    images: List[str] = Field(default=None, title=\"Images\", description=\"\")\n    processed: List[str] = Field(default=None, title=\"Processed\", description=\"\")\n    params: dict = Field(default={}, title=\"Settings\", description=\"\")\n    info: str = Field(default=\"\", title=\"Info\", description=\"\")\n\n\nclass APIControl():\n    def __init__(self, queue_lock: Lock):\n        self.queue_lock = queue_lock\n        self.default_script_arg = []\n        self.units = []\n\n    def sanitize_args(self, args: dict):\n        args = vars(args)\n        args.pop('sampler_name', None)\n        args.pop('alwayson_scripts', None)\n        args.pop('face', None)\n        args.pop('face_id', None)\n        args.pop('ip_adapter', None)\n        args.pop('save_images', None)\n        args['override_script_name'] = args.pop('script_name', None)\n        args['override_script_args'] = args.pop('script_args', None)\n        return args\n\n    def sanitize_b64(self, request):\n        def sanitize_str(args: list):\n            for idx in range(0, len(args)):\n                if isinstance(args[idx], str) and len(args[idx]) >= 1000:\n                    args[idx] = f\"<str {len(args[idx])}>\"\n        if hasattr(request, \"alwayson_scripts\") and request.alwayson_scripts:\n            for script_name in request.alwayson_scripts.keys():\n                script_obj = request.alwayson_scripts[script_name]\n                if script_obj and \"args\" in script_obj and script_obj[\"args\"]:\n                    sanitize_str(script_obj[\"args\"])\n        if hasattr(request, \"script_args\") and request.script_args:\n            sanitize_str(request.script_args)\n        if hasattr(request, 'override_script_args') and request.override_script_args:\n            request.pop('override_script_args', None)\n\n    def prepare_face_module(self, req):\n        if hasattr(req, \"face\") and req.face and not req.script_name and (not req.alwayson_scripts or \"face\" not in req.alwayson_scripts.keys()):\n            req.script_name = \"face\"\n            req.script_args = [\n                req.face.mode,\n                req.face.source_images,\n                req.face.ip_model,\n                req.face.ip_override_sampler,\n                req.face.ip_cache_model,\n                req.face.ip_strength,\n                req.face.ip_structure,\n                req.face.id_strength,\n                req.face.id_conditioning,\n                req.face.id_cache,\n                req.face.pm_trigger,\n                req.face.pm_strength,\n                req.face.pm_start,\n                req.face.fs_cache\n            ]\n            del req.face\n\n    def prepare_xyz_grid(self, req):\n        if hasattr(req, \"xyz\") and req.xyz:\n            req.script_name = \"xyz grid\"\n            req.script_args = [\n                req.xyz.x_type, req.xyz.x_values, '',\n                req.xyz.y_type, req.xyz.y_values, '',\n                req.xyz.z_type, req.xyz.z_values, '',\n                False, # csv_mode\n                req.xyz.draw_legend,\n                False, # no_fixed_seeds\n                req.xyz.include_grid, req.xyz.include_subgrids, req.xyz.include_images,\n                req.xyz.include_time, req.xyz.include_text,\n            ]\n            del req.xyz\n\n    def prepare_ip_adapter(self, request):\n        if hasattr(request, \"ip_adapter\") and request.ip_adapter:\n            args = { 'ip_adapter_names': [], 'ip_adapter_scales': [], 'ip_adapter_crops': [], 'ip_adapter_starts': [], 'ip_adapter_ends': [], 'ip_adapter_images': [], 'ip_adapter_masks': [] }\n            for ipadapter in request.ip_adapter:\n                if not ipadapter.images or len(ipadapter.images) == 0:\n                    continue\n                args['ip_adapter_names'].append(ipadapter.adapter)\n                args['ip_adapter_scales'].append(ipadapter.scale)\n                args['ip_adapter_starts'].append(ipadapter.start)\n                args['ip_adapter_ends'].append(ipadapter.end)\n                args['ip_adapter_crops'].append(ipadapter.crop)\n                args['ip_adapter_images'].append([helpers.decode_base64_to_image(x) for x in ipadapter.images])\n                if ipadapter.masks:\n                    args['ip_adapter_masks'].append([helpers.decode_base64_to_image(x) for x in ipadapter.masks])\n\n            del request.ip_adapter\n            return args\n        else:\n            return {}\n\n    def prepare_control(self, req):\n        from modules.control.unit import Unit, unit_types\n        req.units = []\n        if req.unit_type is None:\n            req.unit_type = 'controlnet'\n        if req.unit_type not in unit_types:\n            shared.log.error(f'Control uknown unit type: type={req.unit_type} available={unit_types}')\n            return\n        for i in range(len(req.control)):\n            u = req.control[i]\n            if (len(self.units) > i) and (self.units[i].process_id == u.process) and (self.units[i].model_id == u.model):\n                unit = self.units[i]\n                unit.enabled = True\n                unit.strength = u.strength\n                unit.start = u.start\n                unit.end = u.end\n            else:\n                unit = Unit(\n                    enabled = True,\n                    unit_type = req.unit_type,\n                    model_id = u.model,\n                    process_id = u.process,\n                    strength = u.strength,\n                    start = u.start,\n                    end = u.end,\n                )\n            if u.override is not None:\n                unit.override = helpers.decode_base64_to_image(u.override)\n            req.units.append(unit)\n        self.units = req.units\n        del req.control\n\n    def post_control(self, req: ReqControl):\n        requested = req.control\n        self.prepare_face_module(req)\n        self.prepare_control(req)\n        self.prepare_xyz_grid(req)\n\n        # prepare scripts\n\n        # prepare args\n        args = req.copy(update={ # Override __init__ params\n            \"sampler_index\": processing_helpers.get_sampler_index(req.sampler_name),\n            \"is_generator\": True,\n            \"inputs\": [helpers.decode_base64_to_image(x) for x in req.inputs] if req.inputs else None,\n            \"inits\": [helpers.decode_base64_to_image(x) for x in req.inits] if req.inits else None,\n            \"mask\": helpers.decode_base64_to_image(req.mask) if req.mask else None,\n        })\n\n        args = self.sanitize_args(args)\n        send_images = args.pop('send_images', True)\n\n        # run\n        with self.queue_lock:\n            jobid = shared.state.begin('API-CTL', api=True)\n            output_images = []\n            output_processed = []\n            output_info = ''\n            run.control_set({\n                'do_not_save_grid': not req.save_images,\n                'do_not_save_samples': not req.save_images,\n                **self.prepare_ip_adapter(req),\n            })\n            run.control_set(getattr(req, \"extra\", {}))\n            # run\n            res = run.control_run(**args)\n            for item in res:\n                if len(item) > 0 and (isinstance(item[0], list) or item[0] is None): # output_images\n                    output_images += item[0] if item[0] is not None else []\n                    output_processed += [item[1]] if item[1] is not None else []\n                    output_info += item[2] if len(item) > 2 and item[2] is not None else ''\n                elif isinstance(item, str):\n                    output_info += item\n                else:\n                    pass\n            shared.state.end(jobid)\n\n        # return\n        b64images = list(map(helpers.encode_pil_to_base64, output_images)) if send_images else []\n        b64processed = list(map(helpers.encode_pil_to_base64, output_processed)) if send_images else []\n        self.sanitize_b64(req)\n        req.units = requested\n        return ResControl(images=b64images, processed=b64processed, params=vars(req), info=output_info)\n"
  },
  {
    "path": "modules/api/docs.py",
    "content": "import json\nfrom starlette.responses import HTMLResponse\nfrom fastapi import FastAPI\nfrom fastapi.openapi.docs import get_redoc_html, swagger_ui_default_parameters\nfrom fastapi.encoders import jsonable_encoder\n\n\ndef get_swagger_ui_html(*,\n                        openapi_url: str,\n                        title: str,\n                        swagger_js_url: str = \"https://cdn.jsdelivr.net/npm/swagger-ui-dist@5/swagger-ui-bundle.js\",\n                        swagger_css_url: str = \"https://cdn.jsdelivr.net/npm/swagger-ui-dist@5/swagger-ui.css\",\n                        swagger_extra_css_url: str = None,\n                        swagger_favicon_url: str = \"https://fastapi.tiangolo.com/img/favicon.png\",\n                        oauth2_redirect_url: str = None,\n                        init_oauth: dict = None,\n                        swagger_ui_parameters: dict = None,\n                       ) -> HTMLResponse:\n    current_swagger_ui_parameters = swagger_ui_default_parameters.copy()\n    if swagger_ui_parameters:\n        current_swagger_ui_parameters.update(swagger_ui_parameters)\n    html = f\"\"\"\n        <!DOCTYPE html>\n        <html>\n        <head>\n            <link type=\"text/css\" rel=\"stylesheet\" href=\"{swagger_css_url}\">\n            <link rel=\"shortcut icon\" href=\"{swagger_favicon_url}\">\n            <title>{title}</title>\n        </head>\n        <body>\n            <div id=\"swagger-ui\"></div>\n            <script src=\"{swagger_js_url}\"></script>\n            <script>\n                const ui = SwaggerUIBundle({{\n                    url: '{openapi_url}',\n    \"\"\"\n    if swagger_extra_css_url is not None:\n        html = html.replace('</head>', f'<link type=\"text/css\" rel=\"stylesheet\" href=\"{swagger_extra_css_url}\"></head>')\n    for key, value in current_swagger_ui_parameters.items():\n        html += f\"{json.dumps(key)}: {json.dumps(jsonable_encoder(value))},\\n\"\n    if oauth2_redirect_url:\n        html += f\"oauth2RedirectUrl: window.location.origin + '{oauth2_redirect_url}',\"\n    html += \"\"\"\n        presets: [\n            SwaggerUIBundle.presets.apis,\n            SwaggerUIBundle.SwaggerUIStandalonePreset\n            ],\n        })\"\"\"\n    if init_oauth:\n        html += f\"ui.initOAuth({json.dumps(jsonable_encoder(init_oauth))})\"\n    html += \"\"\"\n        </script>\n        </body>\n        </html>\n        \"\"\"\n    return HTMLResponse(html)\n\n\ndef create_docs(app: FastAPI):\n    swagger_ui_parameters = {\n        \"displayOperationId\": True,\n        \"layout\": \"BaseLayout\",\n        \"showExtensions\": True,\n        \"showCommonExtensions\": True,\n        \"deepLinking\": False,\n        \"dom_id\": \"#swagger-ui\",\n    }\n\n    @app.get(\"/docs\", include_in_schema=True)\n    async def custom_swagger_html():\n        res = get_swagger_ui_html(\n            title=f'{app.title}: Swagger UI',\n            openapi_url=app.openapi_url,\n            swagger_favicon_url='/file=html/favicon.svg',\n            swagger_css_url='/file=html/swagger.css',\n            swagger_ui_parameters=swagger_ui_parameters,\n            # swagger_extra_css_url='file=html/swagger.css',\n        )\n        # res = inject_css(html.content, 'html/swagger.css')\n        return res\n\n\ndef create_redocs(app: FastAPI):\n    @app.get(\"/redocs\", include_in_schema=True)\n    async def custom_redoc_html():\n        res = get_redoc_html(\n            title=f'{app.title}: ReDoc',\n            openapi_url=app.openapi_url,\n            redoc_favicon_url='/file=html/favicon.svg',\n        )\n        return res\n"
  },
  {
    "path": "modules/api/endpoints.py",
    "content": "from typing import Optional\nfrom fastapi.exceptions import HTTPException\nfrom modules import shared\nfrom modules.api import models, helpers\n\n\n\ndef get_samplers():\n    from modules import sd_samplers_diffusers\n    all_samplers = []\n    for k, v in sd_samplers_diffusers.config.items():\n        if k in ['All', 'Default', 'Res4Lyf']:\n            continue\n        all_samplers.append({\n            'name': k,\n            'options': v,\n        })\n    return all_samplers\n\ndef get_sampler():\n    if not shared.sd_loaded or shared.sd_model is None:\n        return {}\n    if hasattr(shared.sd_model, 'scheduler'):\n        scheduler = shared.sd_model.scheduler\n        config = {k: v for k, v in scheduler.config.items() if not k.startswith('_')}\n        return {\n            'name': scheduler.__class__.__name__,\n            'options': config\n        }\n    return {}\n\ndef get_sd_vaes():\n    from modules.sd_vae import vae_dict\n    return [{\"model_name\": x, \"filename\": vae_dict[x]} for x in vae_dict.keys()]\n\ndef get_upscalers():\n    return [{\"name\": upscaler.name, \"model_name\": upscaler.scaler.model_name, \"model_path\": upscaler.data_path, \"model_url\": None, \"scale\": upscaler.scale} for upscaler in shared.sd_upscalers]\n\ndef get_sd_models():\n    from modules import sd_checkpoint\n    checkpoints = []\n    for v in sd_checkpoint.checkpoints_list.values():\n        model = models.ItemModel(title=v.title, model_name=v.name, filename=v.filename, type=v.type, hash=v.shorthash, sha256=v.sha256, config=None)\n        checkpoints.append(model)\n    return checkpoints\n\ndef get_controlnets(model_type: Optional[str] = None):\n    from modules.control.units.controlnet import api_list_models\n    return api_list_models(model_type)\n\ndef get_restorers():\n    return [{\"name\":x.name(), \"path\": getattr(x, \"cmd_dir\", None)} for x in shared.face_restorers]\n\ndef get_detailers():\n    shared.yolo.enumerate()\n    return [{\"name\": k, \"path\": v} for k, v in shared.yolo.list.items()]\n\ndef get_prompt_styles():\n    return [{ 'name': v.name, 'prompt': v.prompt, 'negative_prompt': v.negative_prompt, 'extra': v.extra, 'filename': v.filename, 'preview': v.preview} for v in shared.prompt_styles.styles.values()]\n\ndef get_embeddings():\n    db = getattr(shared.sd_model, 'embedding_db', None) if shared.sd_loaded else None\n    if db is None:\n        return models.ResEmbeddings(loaded=[], skipped=[])\n    return models.ResEmbeddings(loaded=list(db.word_embeddings.keys()), skipped=list(db.skipped_embeddings.keys()))\n\ndef get_extra_networks(page: Optional[str] = None, name: Optional[str] = None, filename: Optional[str] = None, title: Optional[str] = None, fullname: Optional[str] = None, hash: Optional[str] = None): # pylint: disable=redefined-builtin\n    res = []\n    for pg in shared.extra_networks:\n        if page is not None and pg.name != page.lower():\n            continue\n        for item in pg.items:\n            if name is not None and item.get('name', '') != name:\n                continue\n            if title is not None and item.get('title', '') != title:\n                continue\n            if filename is not None and item.get('filename', '') != filename:\n                continue\n            if fullname is not None and item.get('fullname', '') != fullname:\n                continue\n            if hash is not None and (item.get('shorthash', None) or item.get('hash')) != hash:\n                continue\n            res.append({\n                'name': item.get('name', ''),\n                'type': pg.name,\n                'title': item.get('title', None),\n                'fullname': item.get('fullname', None),\n                'filename': item.get('filename', None),\n                'hash': item.get('shorthash', None) or item.get('hash'),\n                \"preview\": item.get('preview', None),\n            })\n    return res\n\ndef get_interrogate():\n    from modules.interrogate.openclip import refresh_clip_models\n    return ['deepdanbooru'] + refresh_clip_models()\n\ndef get_schedulers():\n    from modules.sd_samplers import list_samplers\n    all_schedulers = list_samplers()\n    for s in all_schedulers:\n        shared.log.critical(s)\n    return all_schedulers\n\ndef post_interrogate(req: models.ReqInterrogate):\n    if req.image is None or len(req.image) < 64:\n        raise HTTPException(status_code=404, detail=\"Image not found\")\n    image = helpers.decode_base64_to_image(req.image)\n    image = image.convert('RGB')\n    if req.model == \"deepdanbooru\" or req.model == 'deepbooru':\n        from modules.interrogate import deepbooru\n        caption = deepbooru.model.tag(image)\n        return models.ResInterrogate(caption=caption)\n    else:\n        from modules.interrogate.openclip import interrogate_image, analyze_image, refresh_clip_models\n        if req.model not in refresh_clip_models():\n            raise HTTPException(status_code=404, detail=\"Model not found\")\n        try:\n            caption = interrogate_image(image, clip_model=req.clip_model, blip_model=req.blip_model, mode=req.mode)\n        except Exception as e:\n            caption = str(e)\n        if not req.analyze:\n            return models.ResInterrogate(caption=caption)\n        else:\n            medium, artist, movement, trending, flavor, _ = analyze_image(image, clip_model=req.clip_model, blip_model=req.blip_model)\n            return models.ResInterrogate(caption=caption, medium=medium, artist=artist, movement=movement, trending=trending, flavor=flavor)\n\ndef post_vqa(req: models.ReqVQA):\n    if req.image is None or len(req.image) < 64:\n        raise HTTPException(status_code=404, detail=\"Image not found\")\n    image = helpers.decode_base64_to_image(req.image)\n    image = image.convert('RGB')\n    from modules.interrogate import vqa\n    answer = vqa.interrogate(req.question, req.system, '', image, req.model)\n    return models.ResVQA(answer=answer)\n\ndef post_unload_checkpoint():\n    from modules import sd_models\n    sd_models.unload_model_weights(op='model')\n    sd_models.unload_model_weights(op='refiner')\n    return {}\n\ndef post_reload_checkpoint(force:bool=False):\n    from modules import sd_models\n    if force:\n        sd_models.unload_model_weights(op='model')\n    sd_models.reload_model_weights()\n    return {}\n\ndef post_lock_checkpoint(lock:bool=False):\n    from modules import modeldata\n    modeldata.model_data.locked = lock\n    return {}\n\ndef get_checkpoint():\n    if not shared.sd_loaded or shared.sd_model is None:\n        checkpoint = {\n            'type': None,\n            'class': None,\n        }\n    else:\n        checkpoint = {\n            'type': shared.sd_model_type,\n            'class': shared.sd_model.__class__.__name__,\n        }\n        if hasattr(shared.sd_model, 'sd_model_checkpoint'):\n            checkpoint['checkpoint'] = shared.sd_model.sd_model_checkpoint\n        if hasattr(shared.sd_model, 'sd_checkpoint_info'):\n            checkpoint['title'] = shared.sd_model.sd_checkpoint_info.title\n            checkpoint['name'] = shared.sd_model.sd_checkpoint_info.name\n            checkpoint['filename'] = shared.sd_model.sd_checkpoint_info.filename\n            checkpoint['hash'] = shared.sd_model.sd_checkpoint_info.shorthash\n    return checkpoint\n\ndef set_checkpoint(sd_model_checkpoint: str, dtype:str=None, force:bool=False):\n    from modules import sd_models, devices\n    if force:\n        sd_models.unload_model_weights(op='model')\n    if dtype is not None:\n        shared.opts.cuda_dtype = dtype\n        devices.set_dtype()\n    shared.opts.sd_model_checkpoint = sd_model_checkpoint\n    model = sd_models.reload_model_weights()\n    return { 'ok': model is not None }\n\ndef post_refresh_checkpoints():\n    shared.refresh_checkpoints()\n    return {}\n\ndef post_refresh_vae():\n    shared.refresh_vaes()\n    return {}\n\ndef get_modules():\n    from modules import modelstats\n    model = modelstats.analyze()\n    if model is None:\n        return {}\n    model_obj = {\n        'model': model.name,\n        'type': model.type,\n        'class': model.cls,\n        'size': model.size,\n        'mtime': str(model.mtime),\n        'modules': []\n    }\n    for m in model.modules:\n        model_obj['modules'].append({\n            'class': m.cls,\n            'params': m.params,\n            'modules': m.modules,\n            'quant': m.quant,\n            'device': str(m.device),\n            'dtype': str(m.dtype)\n        })\n    return model_obj\n\ndef get_extensions_list():\n    from modules import extensions\n    extensions.list_extensions()\n    ext_list = []\n    for ext in extensions.extensions:\n        ext: extensions.Extension\n        ext.read_info()\n        if ext.remote is not None:\n            ext_list.append({\n                \"name\": ext.name,\n                \"remote\": ext.remote,\n                \"branch\": ext.branch,\n                \"commit_hash\":ext.commit_hash,\n                \"commit_date\":ext.commit_date,\n                \"version\":ext.version,\n                \"enabled\":ext.enabled\n            })\n    return ext_list\n\ndef post_pnginfo(req: models.ReqImageInfo):\n    from modules import images, script_callbacks, infotext\n    if not req.image.strip():\n        return models.ResImageInfo(info=\"\")\n    image = helpers.decode_base64_to_image(req.image.strip())\n    if image is None:\n        return models.ResImageInfo(info=\"\")\n    geninfo, items = images.read_info_from_image(image)\n    if geninfo is None:\n        geninfo = \"\"\n    params = infotext.parse(geninfo)\n    script_callbacks.infotext_pasted_callback(geninfo, params)\n    return models.ResImageInfo(info=geninfo, items=items, parameters=params)\n\ndef get_latent_history():\n    return shared.history.list\n\ndef post_latent_history(req: models.ReqLatentHistory):\n    shared.history.index = shared.history.find(req.name)\n    return shared.history.index\n"
  },
  {
    "path": "modules/api/gallery.py",
    "content": "import io\nimport os\nimport time\nimport base64\nfrom typing import List, Union\nfrom urllib.parse import quote, unquote\nfrom fastapi import FastAPI\nfrom fastapi.responses import JSONResponse\nfrom starlette.websockets import WebSocket, WebSocketState\nfrom pydantic import BaseModel, Field # pylint: disable=no-name-in-module\nfrom PIL import Image\nfrom modules import shared, images, files_cache, modelstats\nfrom modules.paths import resolve_output_path\n\n\ndebug = shared.log.debug if os.environ.get('SD_BROWSER_DEBUG', None) is not None else lambda *args, **kwargs: None\n\n\nOPTS_FOLDERS = [\n    \"outdir_samples\",\n    \"outdir_txt2img_samples\",\n    \"outdir_img2img_samples\",\n    \"outdir_control_samples\",\n    \"outdir_extras_samples\",\n    \"outdir_save\",\n    \"outdir_video\",\n    \"outdir_init_images\",\n    \"outdir_grids\",\n    \"outdir_txt2img_grids\",\n    \"outdir_img2img_grids\",\n    \"outdir_control_grids\",\n]\n\n### class definitions\n\nclass ReqFiles(BaseModel):\n    folder: str = Field(title=\"Folder\")\n\n### ws connection manager\n\nclass ConnectionManager:\n    def __init__(self):\n        self.active: list[WebSocket] = []\n\n    async def connect(self, ws: WebSocket):\n        await ws.accept()\n        agent = ws._headers.get(\"user-agent\", \"\") # pylint: disable=protected-access\n        debug(f'Browser WS connect: client={ws.client.host} agent=\"{agent}\"')\n        self.active.append(ws)\n\n    def disconnect(self, ws: WebSocket):\n        debug(f'Browser WS disconnect: client={ws.client.host}')\n        self.active.remove(ws)\n\n    async def send(self, ws: WebSocket, data: Union[str, dict, bytes]):\n        # debug(f'Browser WS send: client={ws.client.host} data={type(data)}')\n        if ws.client_state != WebSocketState.CONNECTED:\n            return\n        if isinstance(data, bytes):\n            await ws.send_bytes(data)\n        elif isinstance(data, dict):\n            await ws.send_json(data)\n        elif isinstance(data, str):\n            await ws.send_text(data)\n        else:\n            debug(f'Browser WS send: client={ws.client.host} data={type(data)} unknown')\n\n    async def broadcast(self, data: Union[str, dict, bytes]):\n        for ws in self.active:\n            await self.send(ws, data)\n\n### api definitions\n\ndef register_api(app: FastAPI): # register api\n    manager = ConnectionManager()\n\n    def get_video_thumbnail(filepath):\n        from modules.video import get_video_params\n        try:\n            stat_size, stat_mtime = modelstats.stat(filepath)\n            frames, fps, duration, width, height, codec, frame = get_video_params(filepath, capture=True)\n            h = shared.opts.extra_networks_card_size\n            w = shared.opts.extra_networks_card_size if shared.opts.browser_fixed_width else width * h // height\n            frame = frame.convert('RGB')\n            frame.thumbnail((w, h), Image.Resampling.HAMMING)\n            buffered = io.BytesIO()\n            frame.save(buffered, format='jpeg')\n            data_url = f'data:image/jpeg;base64,{base64.b64encode(buffered.getvalue()).decode(\"ascii\")}'\n            frame.close()\n            content = {\n                'exif': f'Codec: {codec}, Frames: {frames}, Duration: {duration:.2f} sec, FPS: {fps:.2f}',\n                'data': data_url,\n                'width': width,\n                'height': height,\n                'size': stat_size,\n                'mtime': stat_mtime.timestamp() * 1000, # JS timestamps use milliseconds\n            }\n            return content\n        except Exception as e:\n            shared.log.error(f'Gallery video: file=\"{filepath}\" {e}')\n            return {}\n\n    def get_image_thumbnail(filepath):\n        try:\n            stat_size, stat_mtime = modelstats.stat(filepath)\n            image = Image.open(filepath)\n            geninfo, _items = images.read_info_from_image(image)\n            h = shared.opts.extra_networks_card_size\n            w = shared.opts.extra_networks_card_size if shared.opts.browser_fixed_width else image.width * h // image.height\n            width, height = image.width, image.height\n            image = image.convert('RGB')\n            image.thumbnail((w, h), Image.Resampling.HAMMING)\n            buffered = io.BytesIO()\n            image.save(buffered, format='jpeg')\n            data_url = f'data:image/jpeg;base64,{base64.b64encode(buffered.getvalue()).decode(\"ascii\")}'\n            image.close()\n            content = {\n                'exif': geninfo,\n                'data': data_url,\n                'width': width,\n                'height': height,\n                'size': stat_size,\n                'mtime': stat_mtime.timestamp() * 1000, # JS timestamps use milliseconds\n            }\n            return content\n        except Exception as e:\n            shared.log.error(f'Gallery image: file=\"{filepath}\" {e}')\n            return {}\n\n    # @app.get('/sdapi/v1/browser/folders', response_model=List[str])\n    def get_folders():\n        def make_folder(path, label=None):\n            \"\"\"Create folder entry with path and display label.\"\"\"\n            if label is None:\n                label = os.path.basename(path) or path\n            return {\"path\": path, \"label\": label}\n\n        reference_dir = os.path.join('models', 'Reference')\n        base_samples = shared.opts.outdir_samples\n        base_grids = shared.opts.outdir_grids\n        # Build list of resolved output paths with labels\n        folders = []\n        if base_samples:\n            folders.append(make_folder(base_samples, os.path.basename(base_samples.rstrip('/\\\\'))))\n        if base_grids and base_grids != base_samples:\n            folders.append(make_folder(base_grids, os.path.basename(base_grids.rstrip('/\\\\'))))\n        # Use the specific folder setting values as labels (e.g., \"outputs/text\" -> \"outputs/text\")\n        folders.append(make_folder(resolve_output_path(base_samples, shared.opts.outdir_txt2img_samples), shared.opts.outdir_txt2img_samples))\n        folders.append(make_folder(resolve_output_path(base_samples, shared.opts.outdir_img2img_samples), shared.opts.outdir_img2img_samples))\n        folders.append(make_folder(resolve_output_path(base_samples, shared.opts.outdir_control_samples), shared.opts.outdir_control_samples))\n        folders.append(make_folder(resolve_output_path(base_samples, shared.opts.outdir_extras_samples), shared.opts.outdir_extras_samples))\n        folders.append(make_folder(resolve_output_path(base_samples, shared.opts.outdir_save), shared.opts.outdir_save))\n        folders.append(make_folder(resolve_output_path(base_samples, shared.opts.outdir_video), shared.opts.outdir_video))\n        folders.append(make_folder(resolve_output_path(base_samples, shared.opts.outdir_init_images), shared.opts.outdir_init_images))\n        folders.append(make_folder(resolve_output_path(base_grids, shared.opts.outdir_txt2img_grids), shared.opts.outdir_txt2img_grids))\n        folders.append(make_folder(resolve_output_path(base_grids, shared.opts.outdir_img2img_grids), shared.opts.outdir_img2img_grids))\n        folders.append(make_folder(resolve_output_path(base_grids, shared.opts.outdir_control_grids), shared.opts.outdir_control_grids))\n        # Custom browser folders and reference dir\n        for f in shared.opts.browser_folders.split(','):\n            f = f.strip()\n            if f:\n                folders.append(make_folder(f))\n        folders.append(make_folder(reference_dir, 'Reference'))\n        # Filter empty and duplicates (by path)\n        seen_paths = set()\n        unique_folders = []\n        for f in folders:\n            path = f[\"path\"].strip()\n            if path and path not in seen_paths and os.path.isdir(path):\n                seen_paths.add(path)\n                unique_folders.append(f)\n                if shared.demo is not None and path not in shared.demo.allowed_paths:\n                    debug(f'Browser folders allow: {path}')\n                    shared.demo.allowed_paths.append(quote(path))\n        debug(f'Browser folders: {unique_folders}')\n        return JSONResponse(content=unique_folders)\n\n    # @app.get(\"/sdapi/v1/browser/thumb\", response_model=dict)\n    async def get_thumb(file: str):\n        try:\n            decoded = unquote(file).replace('%3A', ':')\n            if decoded.lower().endswith('.mp4'):\n                return JSONResponse(content=get_video_thumbnail(decoded))\n            else:\n                return JSONResponse(content=get_image_thumbnail(decoded))\n        except Exception as e:\n            shared.log.error(f'Gallery: {file} {e}')\n            content = { 'error': str(e) }\n            return JSONResponse(content=content)\n\n    # @app.get(\"/sdapi/v1/browser/files\", response_model=list)\n    async def ht_files(folder: str):\n        try:\n            t0 = time.time()\n            files = files_cache.directory_files(folder, recursive=True)\n            lines = []\n            for f in files:\n                file = os.path.relpath(f, folder)\n                msg = quote(folder) + '##F##' + quote(file)\n                msg = msg[:1] + \":\" + msg[4:] if msg[1:4] == \"%3A\" else msg\n                lines.append(msg)\n            t1 = time.time()\n            shared.log.debug(f'Gallery: type=ht folder=\"{folder}\" files={len(lines)} time={t1-t0:.3f}')\n            return lines\n        except Exception as e:\n            shared.log.error(f'Gallery: {folder} {e}')\n            return []\n\n    shared.api.add_api_route(\"/sdapi/v1/browser/folders\", get_folders, methods=[\"GET\"], response_model=List[str])\n    shared.api.add_api_route(\"/sdapi/v1/browser/thumb\", get_thumb, methods=[\"GET\"], response_model=dict)\n    shared.api.add_api_route(\"/sdapi/v1/browser/files\", ht_files, methods=[\"GET\"], response_model=list)\n\n    @app.websocket(\"/sdapi/v1/browser/files\")\n    async def ws_files(ws: WebSocket):\n        try:\n            await manager.connect(ws)\n            folder = await ws.receive_text()\n            folder = unquote(folder).replace('%3A', ':')\n            t0 = time.time()\n            numFiles = 0\n            files = files_cache.list_files(folder, recursive=True)\n            # files = list(files_cache.directory_files(folder, recursive=True))\n            # files.sort(key=os.path.getmtime)\n            for f in files:\n                numFiles += 1\n                file = os.path.relpath(f, folder)\n                msg = quote(folder) + '##F##' + quote(file)\n                msg = msg[:1] + \":\" + msg[4:] if msg[1:4] == \"%3A\" else msg\n                await manager.send(ws, msg)\n            await manager.send(ws, '#END#')\n            t1 = time.time()\n            shared.log.debug(f'Gallery: type=ws folder=\"{folder}\" files={numFiles} time={t1-t0:.3f}')\n        except Exception as e:\n            debug(f'Browser WS error: {e}')\n        manager.disconnect(ws)\n"
  },
  {
    "path": "modules/api/generate.py",
    "content": "from threading import Lock\nfrom fastapi.responses import JSONResponse\nfrom modules import errors, shared, scripts_manager, ui\nfrom modules.api import models, script, helpers\nfrom modules.processing import StableDiffusionProcessingTxt2Img, StableDiffusionProcessingImg2Img, process_images\nfrom modules.paths import resolve_output_path\n\n\nerrors.install()\n\n\nclass APIGenerate():\n    def __init__(self, queue_lock: Lock):\n        self.queue_lock = queue_lock\n        self.default_script_arg_txt2img = []\n        self.default_script_arg_img2img = []\n        self.default_script_arg_control = []\n\n    def sanitize_args(self, args: dict):\n        args = vars(args)\n        args.pop('include_init_images', None) # this is meant to be done by \"exclude\": True in model\n        args.pop('script_name', None)\n        args.pop('script_args', None) # will refeed them to the pipeline directly after initializing them\n        args.pop('alwayson_scripts', None)\n        args.pop('face', None)\n        args.pop('face_id', None)\n        args.pop('save_images', None)\n        return args\n\n    def sanitize_b64(self, request):\n        def sanitize_str(args: list):\n            for idx in range(0, len(args)):\n                if isinstance(args[idx], str) and len(args[idx]) >= 1000:\n                    args[idx] = f\"<str {len(args[idx])}>\"\n\n        if hasattr(request, \"alwayson_scripts\") and request.alwayson_scripts:\n            for script_name in request.alwayson_scripts.keys():\n                script_obj = request.alwayson_scripts[script_name]\n                if script_obj and \"args\" in script_obj and script_obj[\"args\"]:\n                    sanitize_str(script_obj[\"args\"])\n        if hasattr(request, \"script_args\") and request.script_args:\n            sanitize_str(request.script_args)\n\n    def prepare_face_module(self, request):\n        if getattr(request, \"face\", None) is not None and (not request.alwayson_scripts or \"face\" not in request.alwayson_scripts.keys()):\n            request.script_name = \"face\"\n            request.script_args = [\n                request.face.mode,\n                request.face.source_images,\n                request.face.ip_model,\n                request.face.ip_override_sampler,\n                request.face.ip_cache_model,\n                request.face.ip_strength,\n                request.face.ip_structure,\n                request.face.id_strength,\n                request.face.id_conditioning,\n                request.face.id_cache,\n                request.face.pm_trigger,\n                request.face.pm_strength,\n                request.face.pm_start,\n                request.face.fs_cache\n            ]\n            del request.face\n\n    def prepare_ip_adapter(self, request, p):\n        if hasattr(request, \"ip_adapter\") and request.ip_adapter:\n            p.ip_adapter_names = []\n            p.ip_adapter_scales = []\n            p.ip_adapter_crops = []\n            p.ip_adapter_starts = []\n            p.ip_adapter_ends = []\n            p.ip_adapter_images = []\n            for ipadapter in request.ip_adapter:\n                if not ipadapter.images or len(ipadapter.images) == 0:\n                    continue\n                p.ip_adapter_names.append(ipadapter.adapter)\n                p.ip_adapter_scales.append(ipadapter.scale)\n                p.ip_adapter_crops.append(ipadapter.crop)\n                p.ip_adapter_starts.append(ipadapter.start)\n                p.ip_adapter_ends.append(ipadapter.end)\n                p.ip_adapter_images.append([helpers.decode_base64_to_image(x) for x in ipadapter.images])\n                p.ip_adapter_masks = []\n                if ipadapter.masks:\n                    p.ip_adapter_masks.append([helpers.decode_base64_to_image(x) for x in ipadapter.masks])\n            del request.ip_adapter\n\n    def post_text2img(self, txt2imgreq: models.ReqTxt2Img):\n        self.prepare_face_module(txt2imgreq)\n        script_runner = scripts_manager.scripts_txt2img\n        if not script_runner.scripts:\n            script_runner.initialize_scripts(False)\n            ui.create_ui(None)\n        if not self.default_script_arg_txt2img:\n            self.default_script_arg_txt2img = script.init_default_script_args(script_runner)\n        selectable_scripts, selectable_script_idx = script.get_selectable_script(txt2imgreq.script_name, script_runner)\n        populate = txt2imgreq.copy(update={  # Override __init__ params\n            \"sampler_name\": helpers.validate_sampler_name(txt2imgreq.sampler_name or txt2imgreq.sampler_index),\n            \"do_not_save_samples\": not txt2imgreq.save_images,\n            \"do_not_save_grid\": not txt2imgreq.save_images,\n        })\n        if populate.sampler_name:\n            populate.sampler_index = None  # prevent a warning later on\n        args = self.sanitize_args(populate)\n        send_images = args.pop('send_images', True)\n        with self.queue_lock:\n            p = StableDiffusionProcessingTxt2Img(sd_model=shared.sd_model, **args)\n            self.prepare_ip_adapter(txt2imgreq, p)\n            p.scripts = script_runner\n            p.outpath_grids = resolve_output_path(shared.opts.outdir_grids, shared.opts.outdir_txt2img_grids)\n            p.outpath_samples = resolve_output_path(shared.opts.outdir_samples, shared.opts.outdir_txt2img_samples)\n            for key, value in getattr(txt2imgreq, \"extra\", {}).items():\n                setattr(p, key, value)\n            jobid = shared.state.begin('API-TXT', api=True)\n            script_args = script.init_script_args(p, txt2imgreq, self.default_script_arg_txt2img, selectable_scripts, selectable_script_idx, script_runner)\n            p.script_args = tuple(script_args) # Need to pass args as tuple here\n            if selectable_scripts is not None:\n                processed = scripts_manager.scripts_txt2img.run(p, *script_args) # Need to pass args as list here\n            else:\n                processed = process_images(p)\n            processed = scripts_manager.scripts_txt2img.after(p, processed, *script_args)\n            p.close()\n            shared.state.end(jobid)\n        if processed is None or processed.images is None or len(processed.images) == 0:\n            b64images = []\n        else:\n            b64images = list(map(helpers.encode_pil_to_base64, processed.images)) if send_images else []\n        self.sanitize_b64(txt2imgreq)\n        info = processed.js() if processed else ''\n        return models.ResTxt2Img(images=b64images, parameters=vars(txt2imgreq), info=info)\n\n    def post_img2img(self, img2imgreq: models.ReqImg2Img):\n        self.prepare_face_module(img2imgreq)\n        init_images = img2imgreq.init_images\n        if init_images is None:\n            return JSONResponse(status_code=400, content={\"error\": \"Init image is none\"})\n        mask = img2imgreq.mask\n        if mask:\n            mask = helpers.decode_base64_to_image(mask)\n        script_runner = scripts_manager.scripts_img2img\n        if not script_runner.scripts:\n            script_runner.initialize_scripts(True)\n            ui.create_ui(None)\n        if not self.default_script_arg_img2img:\n            self.default_script_arg_img2img = script.init_default_script_args(script_runner)\n        selectable_scripts, selectable_script_idx = script.get_selectable_script(img2imgreq.script_name, script_runner)\n        populate = img2imgreq.copy(update={  # Override __init__ params\n            \"sampler_name\": helpers.validate_sampler_name(img2imgreq.sampler_name or img2imgreq.sampler_index),\n            \"do_not_save_samples\": not img2imgreq.save_images,\n            \"do_not_save_grid\": not img2imgreq.save_images,\n            \"mask\": mask,\n        })\n        if populate.sampler_name:\n            populate.sampler_index = None  # prevent a warning later on\n        args = self.sanitize_args(populate)\n        send_images = args.pop('send_images', True)\n        with self.queue_lock:\n            p = StableDiffusionProcessingImg2Img(sd_model=shared.sd_model, **args)\n            self.prepare_ip_adapter(img2imgreq, p)\n            p.init_images = [helpers.decode_base64_to_image(x) for x in init_images]\n            p.scripts = script_runner\n            p.outpath_grids = resolve_output_path(shared.opts.outdir_grids, shared.opts.outdir_img2img_grids)\n            p.outpath_samples = resolve_output_path(shared.opts.outdir_samples, shared.opts.outdir_img2img_samples)\n            for key, value in getattr(img2imgreq, \"extra\", {}).items():\n                setattr(p, key, value)\n            jobid = shared.state.begin('API-IMG', api=True)\n            script_args = script.init_script_args(p, img2imgreq, self.default_script_arg_img2img, selectable_scripts, selectable_script_idx, script_runner)\n            p.script_args = tuple(script_args) # Need to pass args as tuple here\n            if selectable_scripts is not None:\n                processed = scripts_manager.scripts_img2img.run(p, *script_args) # Need to pass args as list here\n            else:\n                processed = process_images(p)\n            processed = scripts_manager.scripts_img2img.after(p, processed, *script_args)\n            p.close()\n            shared.state.end(jobid)\n        if processed is None or processed.images is None or len(processed.images) == 0:\n            b64images = []\n        else:\n            b64images = list(map(helpers.encode_pil_to_base64, processed.images)) if send_images else []\n        if not img2imgreq.include_init_images:\n            img2imgreq.init_images = None\n            img2imgreq.mask = None\n        self.sanitize_b64(img2imgreq)\n        info = processed.js() if processed else ''\n        return models.ResImg2Img(images=b64images, parameters=vars(img2imgreq), info=info)\n"
  },
  {
    "path": "modules/api/gpu.py",
    "content": "import torch\nfrom installer import log\n\n\ndevice = None\n\n\ndef get_gpu_status():\n    global device # pylint: disable=global-statement\n    if device is None:\n        try:\n            device = torch.cuda.get_device_name(torch.cuda.current_device())\n            log.info(f'GPU monitoring: device={device}')\n        except Exception:\n            device = ''\n    # per vendor modules\n    if 'nvidia' in device.lower():\n        from modules.api import nvml\n        return nvml.get_nvml()\n    elif 'amd' in device.lower():\n        from modules.api import rocm_smi\n        return rocm_smi.get_rocm_smi()\n    elif 'arc' in device.lower():\n        from modules.api import xpu_smi\n        return xpu_smi.get_xpu_smi()\n    return []\n\n\n\"\"\"\nResut should always be: list[ResGPU]\nclass ResGPU(BaseModel):\n    name: str = Field(title=\"GPU Name\")\n    data: dict = Field(title=\"Name/Value data\")\n    chart: list[float, float] = Field(title=\"Exactly two items to place on chart\")\n\"\"\"\n\nif __name__ == '__main__':\n    from rich import print as rprint\n    for gpu in get_gpu_status():\n        rprint(gpu)\n"
  },
  {
    "path": "modules/api/helpers.py",
    "content": "import io\nimport base64\nfrom PIL import Image, PngImagePlugin\nimport piexif\nimport piexif.helper\nfrom fastapi.exceptions import HTTPException\nfrom modules import shared, sd_samplers\n\n\ndef validate_sampler_name(name):\n    config = sd_samplers.all_samplers_map.get(name, None)\n    if config is None:\n        raise HTTPException(status_code=404, detail=\"Sampler not found\")\n    return name\n\n\ndef decode_base64_to_image(encoding, quiet=False):\n    if encoding is None:\n        return None\n    if encoding.startswith(\"data:image/\"):\n        encoding = encoding.split(\";\")[1].split(\",\")[1]\n    try:\n        decoded = base64.b64decode(encoding)\n        data = io.BytesIO(decoded)\n        image = Image.open(data)\n        return image\n    except Exception as e:\n        shared.log.warning(f'API cannot decode image: {e}')\n        # from modules import errors\n        # errors.display(e, 'API cannot decode image')\n        if not quiet:\n            raise HTTPException(status_code=500, detail=\"Invalid encoded image\") from e\n        return None\n\n\ndef encode_pil_to_base64(image):\n    \"\"\"\n    with io.BytesIO() as output_bytes:\n        images.save_image(image, output_bytes, shared.opts.samples_format)\n        bytes_data = output_bytes.getvalue()\n    return base64.b64encode(bytes_data)\n    \"\"\"\n    if not isinstance(image, Image.Image):\n        shared.log.error('API cannot encode image: not a PIL image')\n        return ''\n    buffered = io.BytesIO()\n    save_image(image, fn=buffered, ext=shared.opts.samples_format)\n    b64 = base64.b64encode(buffered.getvalue())\n    return b64\n\n\ndef upscaler_to_index(name: str):\n    try:\n        return [x.name.lower() for x in shared.sd_upscalers].index(name.lower())\n    except Exception as e:\n        raise HTTPException(status_code=400, detail=f\"Invalid upscaler, needs to be one of these: {' , '.join([x.name for x in shared.sd_upscalers])}\") from e\n\ndef save_image(image, fn, ext):\n    # actual save\n    parameters = image.info.get('parameters', None)\n    image_format = Image.registered_extensions()[f'.{ext}']\n    if image_format == 'PNG':\n        pnginfo_data = PngImagePlugin.PngInfo()\n        for k, v in image.info.items():\n            pnginfo_data.add_text(k, str(v))\n        image.save(fn, format=image_format, quality=shared.opts.jpeg_quality, pnginfo=pnginfo_data)\n    elif image_format == 'JPEG':\n        if image.mode == 'RGBA':\n            shared.log.warning('Save: RGBA image as JPEG - removed alpha channel')\n            image = image.convert(\"RGB\")\n        elif image.mode == 'I;16':\n            image = image.point(lambda p: p * 0.0038910505836576).convert(\"L\")\n        elif image.mode == 'P':\n            image = image.convert(\"RGB\")\n        exif_bytes = piexif.dump({ \"Exif\": { piexif.ExifIFD.UserComment: piexif.helper.UserComment.dump(parameters or \"\", encoding=\"unicode\") } })\n        image.save(fn, format=image_format, quality=shared.opts.jpeg_quality, exif=exif_bytes)\n    elif image_format == 'WEBP':\n        if image.mode == 'I;16':\n            image = image.point(lambda p: p * 0.0038910505836576).convert(\"RGB\")\n        exif_bytes = piexif.dump({ \"Exif\": { piexif.ExifIFD.UserComment: piexif.helper.UserComment.dump(parameters or \"\", encoding=\"unicode\") } })\n        image.save(fn, format=image_format, quality=shared.opts.jpeg_quality, lossless=shared.opts.webp_lossless, exif=exif_bytes)\n    elif image_format == 'JXL':\n        if image.mode == 'I;16':\n            image = image.point(lambda p: p * 0.0038910505836576).convert(\"RGB\")\n        elif image.mode not in {\"RGB\", \"RGBA\"}:\n            image = image.convert(\"RGBA\")\n        exif_bytes = piexif.dump({ \"Exif\": { piexif.ExifIFD.UserComment: piexif.helper.UserComment.dump(parameters or \"\", encoding=\"unicode\") } })\n        image.save(fn, format=image_format, quality=shared.opts.jpeg_quality, lossless=shared.opts.webp_lossless, exif=exif_bytes)\n    else:\n        # shared.log.warning(f'Unrecognized image format: {extension} attempting save as {image_format}')\n        image.save(fn, format=image_format, quality=shared.opts.jpeg_quality)\n"
  },
  {
    "path": "modules/api/loras.py",
    "content": "from typing import List\nfrom fastapi.exceptions import HTTPException\n\n\ndef get_lora(lora: str) -> dict:\n    from modules.lora import lora_load\n    if lora not in lora_load.available_networks:\n        raise HTTPException(status_code=404, detail=f\"Lora '{lora}' not found\")\n    obj = lora_load.available_networks[lora]\n    return obj.__dict__\n\n\ndef get_loras():\n    from modules.lora import network, lora_load\n    def create_lora_json(obj: network.NetworkOnDisk):\n        return { \"name\": obj.name, \"alias\": obj.alias, \"path\": obj.filename, \"metadata\": obj.metadata }\n    return [create_lora_json(obj) for obj in lora_load.available_networks.values()]\n\n\ndef post_refresh_loras():\n    from modules.lora import lora_load\n    return lora_load.list_available_networks()\n\n\ndef register_api():\n    from modules.shared import api\n    api.add_api_route(\"/sdapi/v1/lora\", get_lora, methods=[\"GET\"], response_model=dict)\n    api.add_api_route(\"/sdapi/v1/loras\", get_loras, methods=[\"GET\"], response_model=List[dict])\n    api.add_api_route(\"/sdapi/v1/refresh-loras\", post_refresh_loras, methods=[\"POST\"])\n"
  },
  {
    "path": "modules/api/middleware.py",
    "content": "import ssl\nimport time\nimport logging\nfrom asyncio.exceptions import CancelledError\nimport anyio\nimport starlette\nimport uvicorn\nimport fastapi\nfrom starlette.responses import JSONResponse\nfrom fastapi import FastAPI, Request, Response\nfrom fastapi.exceptions import HTTPException\nfrom fastapi.encoders import jsonable_encoder\nfrom installer import log\nimport modules.errors as errors\n\n\nerrors.install()\nignore_endpoints = [\n    '/sdapi/v1/log',\n    '/sdapi/v1/browser',\n    '/sdapi/v1/gpu',\n    '/sdapi/v1/network/thumb',\n    '/sdapi/v1/progress',\n]\n\n\ndef setup_middleware(app: FastAPI, cmd_opts):\n    ssl._create_default_https_context = ssl._create_unverified_context # pylint: disable=protected-access\n    uvicorn_logger=logging.getLogger(\"uvicorn.error\")\n    uvicorn_logger.disabled = True\n    from fastapi.middleware.cors import CORSMiddleware\n    from fastapi.middleware.gzip import GZipMiddleware\n    app.user_middleware = [x for x in app.user_middleware if x.cls.__name__ != 'CORSMiddleware']\n    app.middleware_stack = None # reset current middleware to allow modifying user provided list\n    app.add_middleware(GZipMiddleware, minimum_size=2048)\n    if cmd_opts.cors_origins and cmd_opts.cors_regex:\n        app.add_middleware(CORSMiddleware, allow_origins=cmd_opts.cors_origins.split(','), allow_origin_regex=cmd_opts.cors_regex, allow_methods=['*'], allow_credentials=True, allow_headers=['*'])\n    elif cmd_opts.cors_origins:\n        app.add_middleware(CORSMiddleware, allow_origins=cmd_opts.cors_origins.split(','), allow_methods=['*'], allow_credentials=True, allow_headers=['*'])\n    elif cmd_opts.cors_regex:\n        app.add_middleware(CORSMiddleware, allow_origin_regex=cmd_opts.cors_regex, allow_methods=['*'], allow_credentials=True, allow_headers=['*'])\n\n    @app.middleware(\"http\")\n    async def log_and_time(req: Request, call_next):\n        try:\n            ts = time.time()\n            res: Response = await call_next(req)\n            duration = str(round(time.time() - ts, 4))\n            res.headers[\"X-Process-Time\"] = duration\n            endpoint = req.scope.get('path', 'err')\n            token = req.cookies.get(\"access-token\") or req.cookies.get(\"access-token-unsecure\")\n            if (cmd_opts.api_log) and endpoint.startswith('/sdapi'):\n                if any([endpoint.startswith(x) for x in ignore_endpoints]): # noqa C419 # pylint: disable=use-a-generator\n                    return res\n                log.info('API user={user} code={code} {prot}/{ver} {method} {endpoint} {cli} {duration}'.format( # pylint: disable=consider-using-f-string, logging-format-interpolation\n                    user = app.tokens.get(token) if hasattr(app, 'tokens') else None,\n                    code = res.status_code,\n                    ver = req.scope.get('http_version', '0.0'),\n                    cli = req.scope.get('client', ('0:0.0.0', 0))[0],\n                    prot = req.scope.get('scheme', 'err'),\n                    method = req.scope.get('method', 'err'),\n                    endpoint = endpoint,\n                    duration = duration,\n                ))\n            return res\n        except CancelledError:\n            log.warning('WebSocket closed (ignore asyncio.exceptions.CancelledError)')\n        except BaseException as e:\n            return handle_exception(req, e)\n\n    def handle_exception(req: Request, e: Exception):\n        err = {\n            \"error\": type(e).__name__,\n            \"code\": vars(e).get('status_code', 500),\n            \"detail\": vars(e).get('detail', ''),\n            \"body\": vars(e).get('body', ''),\n            \"errors\": str(e),\n        }\n        if err['code'] == 401 and 'file=' in req.url.path: # dont spam with unauth\n            return JSONResponse(status_code=err['code'], content=jsonable_encoder(err))\n        if err['code'] == 404 and 'file=html/' in req.url.path: # dont spam with locales\n            return JSONResponse(status_code=err['code'], content=jsonable_encoder(err))\n\n        if not any([req.url.path.endswith(x) for x in ignore_endpoints]): # noqa C419 # pylint: disable=use-a-generator\n            log.error(f\"API error: {req.method}: {req.url} {err}\")\n\n        if not isinstance(e, HTTPException) and err['error'] != 'TypeError': # do not print backtrace on known httpexceptions\n            errors.display(e, 'HTTP API', [anyio, fastapi, uvicorn, starlette])\n        elif err['code'] in [404, 401, 400]:\n            pass\n        else:\n            log.debug(e, exc_info=True) # print stack trace\n        return JSONResponse(status_code=err['code'], content=jsonable_encoder(err))\n\n    @app.exception_handler(HTTPException)\n    async def http_exception_handler(req: Request, e: HTTPException):\n        return handle_exception(req, e)\n\n    @app.exception_handler(Exception)\n    async def general_exception_handler(req: Request, e: Exception):\n        if isinstance(e, TypeError):\n            return JSONResponse(status_code=500, content=jsonable_encoder(str(e)))\n        else:\n            return handle_exception(req, e)\n\n    app.build_middleware_stack() # rebuild middleware stack on-the-fly\n    log.debug(f'API middleware: {[m.cls for m in app.user_middleware]}')\n"
  },
  {
    "path": "modules/api/mime.py",
    "content": "import mimetypes\n\n\ndef register():\n    mimetypes.init()\n    mimetypes.add_type('application/javascript', '.js')\n    mimetypes.add_type('application/javascript', '.mjs')\n    mimetypes.add_type('application/json', '.map')\n    mimetypes.add_type('text/html', '.html')\n    mimetypes.add_type('image/webp', '.webp')\n    mimetypes.add_type('image/jxl', '.jxl')\n    mimetypes.add_type('font/ttf', '.ttf')\n"
  },
  {
    "path": "modules/api/models.py",
    "content": "import inspect\nfrom typing import Any, Optional, Dict, List, Type, Callable, Union\nfrom pydantic import BaseModel, Field, create_model # pylint: disable=no-name-in-module\nfrom inflection import underscore\nfrom modules.processing import StableDiffusionProcessingTxt2Img, StableDiffusionProcessingImg2Img\nimport modules.shared as shared\n\nAPI_NOT_ALLOWED = [\n    \"self\",\n    \"kwargs\",\n    \"sd_model\",\n    \"outpath_samples\",\n    \"outpath_grids\",\n]\n\nclass ModelDef(BaseModel):\n    field: str\n    field_alias: str\n    field_type: Any\n    field_value: Any\n    field_exclude: bool = False\n\n\nclass DummyConfig:\n    dummy_value = None\n\n\nif not hasattr(BaseModel, \"__config__\"):\n    BaseModel.__config__ = DummyConfig\n\n\nclass PydanticModelGenerator:\n    def __init__(\n        self,\n        model_name: str = None,\n        class_instance = None,\n        additional_fields = None,\n        exclude_fields: List = [],\n    ):\n        def field_type_generator(_k, v):\n            field_type = v.annotation\n            return Optional[field_type]\n\n        def merge_class_params(class_):\n            all_classes = list(filter(lambda x: x is not object, inspect.getmro(class_)))\n            parameters = {}\n            for classes in all_classes:\n                parameters = {**parameters, **inspect.signature(classes.__init__).parameters}\n            return parameters\n\n\n        self._model_name = model_name\n        self._class_data = merge_class_params(class_instance)\n\n        self._model_def = [\n            ModelDef(\n                field=underscore(k),\n                field_alias=k,\n                field_type=field_type_generator(k, v),\n                field_value=v.default\n            )\n            for (k,v) in self._class_data.items() if k not in API_NOT_ALLOWED\n        ]\n\n        for fld in additional_fields:\n            self._model_def.append(ModelDef(\n                field=underscore(fld[\"key\"]),\n                field_alias=fld[\"key\"],\n                field_type=fld[\"type\"],\n                field_value=fld[\"default\"],\n                field_exclude=fld[\"exclude\"] if \"exclude\" in fld else False))\n        for fld in exclude_fields:\n            self._model_def = [x for x in self._model_def if x.field != fld]\n\n    def generate_model(self):\n        model_fields = { d.field: (d.field_type, Field(default=d.field_value, alias=d.field_alias, exclude=d.field_exclude)) for d in self._model_def }\n        DynamicModel = create_model(self._model_name, **model_fields)\n        try:\n            DynamicModel.__config__.allow_population_by_field_name = True\n            DynamicModel.__config__.allow_mutation = True\n        except Exception:\n            pass\n        return DynamicModel\n\n### item classes\n\nclass ItemSampler(BaseModel):\n    name: str = Field(title=\"Name\")\n    options: dict\n\nclass ItemVae(BaseModel):\n    model_name: str = Field(title=\"Model Name\")\n    filename: str = Field(title=\"Filename\")\n\nclass ItemUpscaler(BaseModel):\n    name: str = Field(title=\"Name\")\n    model_name: Optional[str] = Field(title=\"Model Name\")\n    model_path: Optional[str] = Field(title=\"Path\")\n    model_url: Optional[str] = Field(title=\"URL\")\n    scale: Optional[float] = Field(title=\"Scale\")\n\nclass ItemModel(BaseModel):\n    title: str = Field(title=\"Title\")\n    model_name: str = Field(title=\"Model Name\")\n    filename: str = Field(title=\"Filename\")\n    type: str = Field(title=\"Model type\")\n    sha256: Optional[str] = Field(title=\"SHA256 hash\")\n    hash: Optional[str] = Field(title=\"Short hash\")\n    config: Optional[str] = Field(title=\"Config file\")\n\nclass ItemHypernetwork(BaseModel):\n    name: str = Field(title=\"Name\")\n    path: Optional[str] = Field(title=\"Path\")\n\nclass ItemDetailer(BaseModel):\n    name: str = Field(title=\"Name\")\n    path: Optional[str] = Field(title=\"Path\")\n\nclass ItemGAN(BaseModel):\n    name: str = Field(title=\"Name\")\n    path: Optional[str] = Field(title=\"Path\")\n    scale: Optional[int] = Field(title=\"Scale\")\n\nclass ItemStyle(BaseModel):\n    name: str = Field(title=\"Name\")\n    prompt: Optional[str] = Field(title=\"Prompt\")\n    negative_prompt: Optional[str] = Field(title=\"Negative Prompt\")\n    extra: Optional[str] = Field(title=\"Extra\")\n    filename: Optional[str] = Field(title=\"Filename\")\n    preview: Optional[str] = Field(title=\"Preview\")\n\nclass ItemExtraNetwork(BaseModel):\n    name: str = Field(title=\"Name\")\n    type: str = Field(title=\"Type\")\n    title: Optional[str] = Field(title=\"Title\")\n    fullname: Optional[str] = Field(title=\"Fullname\")\n    filename: Optional[str] = Field(title=\"Filename\")\n    hash: Optional[str] = Field(title=\"Hash\")\n    preview: Optional[str] = Field(title=\"Preview image URL\")\n\nclass ItemArtist(BaseModel):\n    name: str = Field(title=\"Name\")\n    score: float = Field(title=\"Score\")\n    category: str = Field(title=\"Category\")\n\nclass ItemEmbedding(BaseModel):\n    step: Optional[int] = Field(title=\"Step\", description=\"The number of steps that were used to train this embedding, if available\")\n    sd_checkpoint: Optional[str] = Field(title=\"SD Checkpoint\", description=\"The hash of the checkpoint this embedding was trained on, if available\")\n    sd_checkpoint_name: Optional[str] = Field(title=\"SD Checkpoint Name\", description=\"The name of the checkpoint this embedding was trained on, if available. Note that this is the name that was used by the trainer; for a stable identifier, use `sd_checkpoint` instead\")\n    shape: int = Field(title=\"Shape\", description=\"The length of each individual vector in the embedding\")\n    vectors: int = Field(title=\"Vectors\", description=\"The number of vectors in the embedding\")\n\nclass ItemIPAdapter(BaseModel):\n    adapter: str = Field(title=\"Adapter\", default=\"Base\", description=\"IP adapter name\")\n    images: List[str] = Field(title=\"Image\", default=[], description=\"IP adapter input images\")\n    masks: Optional[List[str]] = Field(title=\"Mask\", default=[], description=\"IP adapter mask images\")\n    scale: float = Field(title=\"Scale\", default=0.5, ge=0, le=1, description=\"IP adapter scale\")\n    start: float = Field(title=\"Start\", default=0.0, ge=0, le=1, description=\"IP adapter start step\")\n    end: float = Field(title=\"End\", default=1.0, gt=0, le=1, description=\"IP adapter end step\")\n    crop: bool = Field(title=\"Crop\", default=False, description=\"IP adapter crop face from input\")\n\nclass ItemFace(BaseModel):\n    mode: str = Field(title=\"Mode\", default=\"FaceID\", description=\"The mode to use (available values: FaceID, FaceSwap, PhotoMaker, InstantID).\")\n    source_images: list[str] = Field(title=\"Source Images\", description=\"Source face images, must be base64 encoded containing the image's data.\")\n    ip_model: str = Field(title=\"IPAdapter Model\", default=\"FaceID Base\", description=\"The IPAdapter model to use.\")\n    ip_override_sampler: bool = Field(title=\"IPAdapter Override Sampler\", default=True, description=\"Should the sampler be overriden?\")\n    ip_cache_model: bool = Field(title=\"IPAdapter Cache\", default=True, description=\"Should the IPAdapter model be cached?\")\n    ip_strength: float = Field(title=\"IPAdapter Strength\", default=1, ge=0, le=2, description=\"IPAdapter strength of the source images, must be between 0.0 and 2.0.\")\n    ip_structure: float = Field(title=\"IPAdapter Structure\", default=1, ge=0, le=1, description=\"IPAdapter structure to use, must be between 0.0 and 1.0.\")\n    id_strength: float = Field(title=\"InstantID Strength\", default=1, ge=0, le=2, description=\"InstantID Strength of the source images, must be between 0.0 and 2.0.\")\n    id_conditioning: float = Field(title=\"InstantID Condition\", default=0.5, ge=0, le=2, description=\"InstantID control amount, must be between 0.0 and 2.0.\")\n    id_cache: bool = Field(title=\"InstantID Cache\", default=True, description=\"Should the InstantID model be cached?\")\n    pm_trigger: str = Field(title=\"PhotoMaker Trigger\", default=\"person\", description=\"PhotoMaker trigger word to use.\")\n    pm_strength: float = Field(title=\"PhotoMaker Strength\", default=1, ge=0, le=2, description=\"PhotoMaker strength to use, must be between 0.0 and 2.0.\")\n    pm_start: float = Field(title=\"PhotoMaker Start\", default=0.5, ge=0, le=1, description=\"PhotoMaker start value, must be between 0.0 and 1.0.\")\n    fs_cache: bool = Field(title=\"FaceSwap Cache\", default=True, description=\"Should the FaceSwap model be cached?\")\n\nclass ScriptArg(BaseModel):\n    label: str = Field(default=None, title=\"Label\", description=\"Name of the argument in UI\")\n    value: Optional[Any] = Field(default=None, title=\"Value\", description=\"Default value of the argument\")\n    minimum: Optional[Any] = Field(default=None, title=\"Minimum\", description=\"Minimum allowed value for the argumentin UI\")\n    maximum: Optional[Any] = Field(default=None, title=\"Minimum\", description=\"Maximum allowed value for the argumentin UI\")\n    step: Optional[Any] = Field(default=None, title=\"Minimum\", description=\"Step for changing value of the argumentin UI\")\n    choices: Optional[Any] = Field(default=None, title=\"Choices\", description=\"Possible values for the argument\")\n\nclass ItemScript(BaseModel):\n    name: str = Field(default=None, title=\"Name\", description=\"Script name\")\n    is_alwayson: bool = Field(default=None, title=\"IsAlwayson\", description=\"Flag specifying whether this script is an alwayson script\")\n    is_img2img: bool = Field(default=None, title=\"IsImg2img\", description=\"Flag specifying whether this script is an img2img script\")\n    args: List[ScriptArg] = Field(title=\"Arguments\", description=\"List of script's arguments\")\n\nclass ItemExtension(BaseModel):\n    name: str = Field(title=\"Name\", description=\"Extension name\")\n    remote: str = Field(title=\"Remote\", description=\"Extension Repository URL\")\n    branch: str = Field(default=\"uknnown\", title=\"Branch\", description=\"Extension Repository Branch\")\n    commit_hash: str = Field(title=\"Commit Hash\", description=\"Extension Repository Commit Hash\")\n    version: str = Field(title=\"Version\", description=\"Extension Version\")\n    commit_date: Union[str, int] = Field(title=\"Commit Date\", description=\"Extension Repository Commit Date\")\n    enabled: bool = Field(title=\"Enabled\", description=\"Flag specifying whether this extension is enabled\")\n\nclass ItemScheduler(BaseModel):\n    name: str = Field(title=\"Name\", description=\"Scheduler name\")\n    cls: str = Field(title=\"Class\", description=\"Scheduler class name\")\n    options: Dict[str, Any] = Field(title=\"Options\", description=\"Dictionary of scheduler options\")\n\n### request/response classes\n\nReqTxt2Img = PydanticModelGenerator(\n    \"StableDiffusionProcessingTxt2Img\",\n    StableDiffusionProcessingTxt2Img,\n    [\n        {\"key\": \"sampler_index\", \"type\": Union[int, str], \"default\": 0},\n        {\"key\": \"sampler_name\", \"type\": str, \"default\": \"Default\"},\n        {\"key\": \"hr_sampler_name\", \"type\": str, \"default\": \"Same as primary\"},\n        {\"key\": \"script_name\", \"type\": Optional[str], \"default\": \"\"},\n        {\"key\": \"script_args\", \"type\": list, \"default\": []},\n        {\"key\": \"send_images\", \"type\": bool, \"default\": True},\n        {\"key\": \"save_images\", \"type\": bool, \"default\": False},\n        {\"key\": \"alwayson_scripts\", \"type\": dict, \"default\": {}},\n        {\"key\": \"ip_adapter\", \"type\": Optional[List[ItemIPAdapter]], \"default\": None, \"exclude\": True},\n        {\"key\": \"face\", \"type\": Optional[ItemFace], \"default\": None, \"exclude\": True},\n        {\"key\": \"extra\", \"type\": Optional[dict], \"default\": {}, \"exclude\": True},\n    ]\n).generate_model()\nif not hasattr(ReqTxt2Img, \"__config__\"):\n    ReqTxt2Img.__config__ = DummyConfig\nStableDiffusionTxt2ImgProcessingAPI = ReqTxt2Img\n\nclass ResTxt2Img(BaseModel):\n    images: List[str] = Field(default=None, title=\"Image\", description=\"The generated images in base64 format.\")\n    parameters: dict\n    info: str\n\nReqImg2Img = PydanticModelGenerator(\n    \"StableDiffusionProcessingImg2Img\",\n    StableDiffusionProcessingImg2Img,\n    [\n        {\"key\": \"sampler_index\", \"type\": Union[int, str], \"default\": 0},\n        {\"key\": \"sampler_name\", \"type\": str, \"default\": \"UniPC\"},\n        {\"key\": \"hr_sampler_name\", \"type\": str, \"default\": \"Same as primary\"},\n        {\"key\": \"init_images\", \"type\": list, \"default\": None},\n        {\"key\": \"denoising_strength\", \"type\": float, \"default\": 0.5},\n        {\"key\": \"mask\", \"type\": Optional[str], \"default\": None},\n        {\"key\": \"include_init_images\", \"type\": bool, \"default\": False, \"exclude\": True},\n        {\"key\": \"script_name\", \"type\": Optional[str], \"default\": \"\"},\n        {\"key\": \"script_args\", \"type\": list, \"default\": []},\n        {\"key\": \"send_images\", \"type\": bool, \"default\": True},\n        {\"key\": \"save_images\", \"type\": bool, \"default\": False},\n        {\"key\": \"alwayson_scripts\", \"type\": dict, \"default\": {}},\n        {\"key\": \"ip_adapter\", \"type\": Optional[List[ItemIPAdapter]], \"default\": None, \"exclude\": True},\n        {\"key\": \"face_id\", \"type\": Optional[ItemFace], \"default\": None, \"exclude\": True},\n        {\"key\": \"extra\", \"type\": Optional[dict], \"default\": {}, \"exclude\": True},\n    ]\n).generate_model()\nif not hasattr(ReqImg2Img, \"__config__\"):\n    ReqImg2Img.__config__ = DummyConfig\nStableDiffusionImg2ImgProcessingAPI = ReqImg2Img\n\nclass ResImg2Img(BaseModel):\n    images: List[str] = Field(default=None, title=\"Image\", description=\"The generated images in base64 format.\")\n    parameters: dict\n    info: str\n\nclass FileData(BaseModel):\n    data: str = Field(title=\"File data\", description=\"Base64 representation of the file\")\n    name: str = Field(title=\"File name\")\n\nclass ReqProcess(BaseModel):\n    resize_mode: float = Field(default=0, title=\"Resize Mode\", description=\"Sets the resize mode: 0 to upscale by upscaling_resize amount, 1 to upscale up to upscaling_resize_h x upscaling_resize_w.\")\n    show_extras_results: bool = Field(default=True, title=\"Show results\", description=\"Should the backend return the generated image?\")\n    gfpgan_visibility: float = Field(default=0, title=\"GFPGAN Visibility\", ge=0, le=1, allow_inf_nan=False, description=\"Sets the visibility of GFPGAN, values should be between 0 and 1.\")\n    codeformer_visibility: float = Field(default=0, title=\"CodeFormer Visibility\", ge=0, le=1, allow_inf_nan=False, description=\"Sets the visibility of CodeFormer, values should be between 0 and 1.\")\n    codeformer_weight: float = Field(default=0, title=\"CodeFormer Weight\", ge=0, le=1, allow_inf_nan=False, description=\"Sets the weight of CodeFormer, values should be between 0 and 1.\")\n    upscaling_resize: float = Field(default=2, title=\"Upscaling Factor\", ge=1, le=8, description=\"By how much to upscale the image, only used when resize_mode=0.\")\n    upscaling_resize_w: int = Field(default=512, title=\"Target Width\", ge=1, description=\"Target width for the upscaler to hit. Only used when resize_mode=1.\")\n    upscaling_resize_h: int = Field(default=512, title=\"Target Height\", ge=1, description=\"Target height for the upscaler to hit. Only used when resize_mode=1.\")\n    upscaling_crop: bool = Field(default=True, title=\"Crop to fit\", description=\"Should the upscaler crop the image to fit in the chosen size?\")\n    upscaler_1: str = Field(default=\"None\", title=\"Main upscaler\", description=f\"The name of the main upscaler to use, it has to be one of this list: {' , '.join([x.name for x in shared.sd_upscalers])}\")\n    upscaler_2: str = Field(default=\"None\", title=\"Refine upscaler\", description=f\"The name of the secondary upscaler to use, it has to be one of this list: {' , '.join([x.name for x in shared.sd_upscalers])}\")\n    extras_upscaler_2_visibility: float = Field(default=0, title=\"Refine upscaler visibility\", ge=0, le=1, allow_inf_nan=False, description=\"Sets the visibility of secondary upscaler, values should be between 0 and 1.\")\n\nclass ResProcess(BaseModel):\n    html_info: str = Field(title=\"HTML info\", description=\"A series of HTML tags containing the process info.\")\n\n\nclass ReqPromptEnhance(BaseModel):\n    prompt: str = Field(title=\"Prompt\", description=\"Prompt to enhance\")\n    type: str = Field(title=\"Type\", default='text', description=\"Type of enhancement to perform\")\n    model: Optional[str] = Field(title=\"Model\", default=None, description=\"Model to use for enhancement\")\n    system_prompt: Optional[str] = Field(title=\"System prompt\", default=None, description=\"Model system prompt\")\n    image: Optional[str] = Field(title=\"Image\", default=None, description=\"Image to work on, must be a Base64 string containing the image's data.\")\n    seed: int = Field(title=\"Seed\", default=-1, description=\"Seed used to generate the prompt\")\n    nsfw: bool = Field(title=\"NSFW\", default=True, description=\"Should NSFW content be allowed?\")\n\nclass ResPromptEnhance(BaseModel):\n    prompt: str = Field(title=\"Prompt\", description=\"Enhanced prompt\")\n    seed: int = Field(title=\"Seed\", description=\"Seed used to generate the prompt\")\n\nclass ReqProcessImage(ReqProcess):\n    image: str = Field(default=\"\", title=\"Image\", description=\"Image to work on, must be a Base64 string containing the image's data.\")\n\nclass ResProcessImage(ResProcess):\n    image: str = Field(default=None, title=\"Image\", description=\"The generated image in base64 format.\")\n\nclass ReqProcessBatch(ReqProcess):\n    imageList: List[FileData] = Field(title=\"Images\", description=\"List of images to work on. Must be Base64 strings\")\n\nclass ResProcessBatch(ResProcess):\n    images: List[str] = Field(title=\"Images\", description=\"The generated images in base64 format.\")\n\nclass ReqImageInfo(BaseModel):\n    image: str = Field(title=\"Image\", description=\"The base64 encoded image\")\n\nclass ResImageInfo(BaseModel):\n    info: str = Field(title=\"Image info\", description=\"A string with the parameters used to generate the image\")\n    items: dict = Field(title=\"Items\", description=\"A dictionary containing all the other fields the image had\")\n    parameters: dict = Field(title=\"Parameters\", description=\"A dictionary with parsed generation info fields\")\n\nclass ReqGetLog(BaseModel):\n    lines: int = Field(default=100, title=\"Lines\", description=\"How many lines to return\")\n    clear: bool = Field(default=False, title=\"Clear\", description=\"Should the log be cleared after returning the lines?\")\n\n\nclass ReqPostLog(BaseModel):\n    message: Optional[str] = Field(default=None, title=\"Message\", description=\"The info message to log\")\n    debug: Optional[str] = Field(default=None, title=\"Debug message\", description=\"The debug message to log\")\n    error: Optional[str] = Field(default=None, title=\"Error message\", description=\"The error message to log\")\n\nclass ReqHistory(BaseModel):\n    id: Union[int, str, None] = Field(default=None, title=\"Task ID\", description=\"Task ID\")\n\nclass ReqProgress(BaseModel):\n    skip_current_image: bool = Field(default=False, title=\"Skip current image\", description=\"Skip current image serialization\")\n\nclass ResProgress(BaseModel):\n    id: Union[int, str, None] = Field(title=\"TaskID\", description=\"Task ID\")\n    progress: float = Field(title=\"Progress\", description=\"The progress with a range of 0 to 1\")\n    eta_relative: float = Field(title=\"ETA in secs\")\n    state: dict = Field(title=\"State\", description=\"The current state snapshot\")\n    current_image: Optional[str] = Field(default=None, title=\"Current image\", description=\"The current image in base64 format. opts.show_progress_every_n_steps is required for this to work.\")\n    textinfo: Optional[str] = Field(default=None, title=\"Info text\", description=\"Info text used by WebUI.\")\n\nclass ResHistory(BaseModel):\n    id: Union[int, str, None] = Field(title=\"ID\", description=\"Task ID\")\n    job: str = Field(title=\"Job\", description=\"Job name\")\n    op: str = Field(title=\"Operation\", description=\"Job state\")\n    timestamp: Union[float, None] = Field(title=\"Timestamp\", description=\"Job timestamp\")\n    duration: Union[float, None] = Field(title=\"Duration\", description=\"Job duration\")\n    outputs: List[str] = Field(title=\"Outputs\", description=\"List of filenames\")\n\nclass ResStatus(BaseModel):\n    status: str = Field(title=\"Status\", description=\"Current status\")\n    task: str = Field(title=\"Task\", description=\"Current job\")\n    timestamp: Optional[str] = Field(title=\"Timestamp\", description=\"Timestamp of the current job\")\n    current: str = Field(title=\"Task\", description=\"Current job\")\n    id: Union[int, str, None] = Field(title=\"ID\", description=\"ID of the current task\")\n    job: int = Field(title=\"Job\", description=\"Current job\")\n    jobs: int = Field(title=\"Jobs\", description=\"Total jobs\")\n    total: int = Field(title=\"Total Jobs\", description=\"Total jobs\")\n    step: int = Field(title=\"Step\", description=\"Current step\")\n    steps: int = Field(title=\"Steps\", description=\"Total steps\")\n    queued: int = Field(title=\"Queued\", description=\"Number of queued tasks\")\n    uptime: int = Field(title=\"Uptime\", description=\"Uptime of the server\")\n    elapsed: Optional[float] = Field(default=None, title=\"Elapsed time\")\n    eta: Optional[float] = Field(default=None, title=\"ETA in secs\")\n    progress: Optional[float] = Field(default=None, title=\"Progress\", description=\"The progress with a range of 0 to 1\")\n\nclass ReqInterrogate(BaseModel):\n    image: str = Field(default=\"\", title=\"Image\", description=\"Image to work on, must be a Base64 string containing the image's data.\")\n    clip_model: str = Field(default=\"\", title=\"CLiP Model\", description=\"The interrogate model used.\")\n    blip_model: str = Field(default=\"\", title=\"BLiP Model\", description=\"The interrogate model used.\")\n\nInterrogateRequest = ReqInterrogate # alias for backwards compatibility\n\nclass ResInterrogate(BaseModel):\n    caption: Optional[str] = Field(default=None, title=\"Caption\", description=\"The generated caption for the image.\")\n    medium: Optional[str] = Field(default=None, title=\"Medium\", description=\"Image medium.\")\n    artist: Optional[str] = Field(default=None, title=\"Medium\", description=\"Image artist.\")\n    movement: Optional[str] = Field(default=None, title=\"Medium\", description=\"Image movement.\")\n    trending: Optional[str] = Field(default=None, title=\"Medium\", description=\"Image trending.\")\n    flavor: Optional[str] = Field(default=None, title=\"Medium\", description=\"Image flavor.\")\n\nclass ReqVQA(BaseModel):\n    image: str = Field(default=\"\", title=\"Image\", description=\"Image to work on, must be a Base64 string containing the image's data.\")\n    model: str = Field(default=\"Microsoft Florence 2 Base\", title=\"Model\", description=\"The interrogate model used.\")\n    question: str = Field(default=\"describe the image\", title=\"Question\", description=\"Question to ask the model.\")\n    system: str = Field(default=\"You are image captioning expert, creative, unbiased and uncensored.\", title=\"System prompt\", description=\"Prompt to shape how the model interprets and responds to user prompts.\")\n\nclass ReqLatentHistory(BaseModel):\n    name: str = Field(title=\"Name\", description=\"Name of the history item to select\")\n\nclass ResVQA(BaseModel):\n    answer: Optional[str] = Field(default=None, title=\"Answer\", description=\"The generated answer for the image.\")\n\nclass ResTrain(BaseModel):\n    info: str = Field(title=\"Train info\", description=\"Response string from train embedding task.\")\n\nclass ResCreate(BaseModel):\n    info: str = Field(title=\"Create info\", description=\"Response string from create embedding task.\")\n\nclass ResPreprocess(BaseModel):\n    info: str = Field(title=\"Preprocess info\", description=\"Response string from preprocessing task.\")\n\nfields = {}\nfor key, metadata in shared.opts.data_labels.items():\n    value = shared.opts.data.get(key) or shared.opts.data_labels[key].default\n    optType = shared.opts.typemap.get(type(metadata.default), type(value))\n\n    if metadata is not None:\n        fields.update({key: (Optional[optType], Field(\n            default=metadata.default, description=metadata.label))})\n    else:\n        fields.update({key: (Optional[optType], Field())})\n\nOptionsModel = create_model(\"Options\", **fields)\n\nflags = {}\n_options = vars(shared.parser)['_option_string_actions']\nfor key in _options:\n    if _options[key].dest != 'help':\n        flag = _options[key]\n        _type = Optional[str]\n        if _options[key].default is not None:\n            _type = type(_options[key].default)\n        flags.update({flag.dest: (_type, Field(default=flag.default, description=flag.help))})\n\nFlagsModel = create_model(\"Flags\", **flags)\n\nclass ResEmbeddings(BaseModel):\n    loaded: list = Field(default=None, title=\"loaded\", description=\"List of loaded embeddings\")\n    skipped: list = Field(default=None, title=\"skipped\", description=\"List of skipped embeddings\")\n\nclass ResMemory(BaseModel):\n    ram: dict = Field(title=\"RAM\", description=\"System memory stats\")\n    cuda: dict = Field(title=\"CUDA\", description=\"nVidia CUDA memory stats\")\n\nclass ResScripts(BaseModel):\n    txt2img: list = Field(default=None, title=\"Txt2img\", description=\"Titles of scripts (txt2img)\")\n    img2img: list = Field(default=None, title=\"Img2img\", description=\"Titles of scripts (img2img)\")\n    control: list = Field(default=None, title=\"Control\", description=\"Titles of scripts (control)\")\n\nclass ResGPU(BaseModel): # definition of http response\n    name: str = Field(title=\"GPU Name\")\n    data: dict = Field(title=\"Name/Value data\")\n    chart: list[float, float] = Field(title=\"Exactly two items to place on chart\")\n\n# helper function\n\ndef create_model_from_signature(func: Callable, model_name: str, base_model: Type[BaseModel] = BaseModel, additional_fields: List = [], exclude_fields: List[str] = []) -> type[BaseModel]:\n    from PIL import Image\n\n    class Config:\n        extra = 'allow'\n\n    args, _, varkw, defaults, kwonlyargs, kwonlydefaults, annotations = inspect.getfullargspec(func)\n    config = Config if varkw else None # Allow extra params if there is a **kwargs parameter in the function signature\n    defaults = defaults or []\n    args = args or []\n    for arg in exclude_fields:\n        if arg in args:\n            args.remove(arg)\n    non_default_args = len(args) - len(defaults)\n    defaults = (...,) * non_default_args + defaults\n    keyword_only_params = {param: kwonlydefaults.get(param, Any) for param in kwonlyargs}\n    for k, v in annotations.items():\n        if v == List[Image.Image]:\n            annotations[k] = List[str]\n        elif v == Image.Image:\n            annotations[k] = str\n        elif str(v) == 'typing.List[modules.control.unit.Unit]':\n            annotations[k] = List[str]\n    model_fields = {param: (annotations.get(param, Any), default) for param, default in zip(args, defaults)}\n\n    for fld in additional_fields:\n        model_def = ModelDef(\n            field=underscore(fld[\"key\"]),\n            field_alias=fld[\"key\"],\n            field_type=fld[\"type\"],\n            field_value=fld[\"default\"],\n            field_exclude=fld[\"exclude\"] if \"exclude\" in fld else False)\n        model_fields[model_def.field] = (model_def.field_type, Field(default=model_def.field_value, alias=model_def.field_alias, exclude=model_def.field_exclude))\n\n    for fld in exclude_fields:\n        if fld in model_fields:\n            del model_fields[fld]\n\n    model = create_model(\n        model_name,\n        **model_fields,\n        **keyword_only_params,\n        __base__=base_model,\n        __config__=config,\n    )\n    try:\n        model.__config__.allow_population_by_field_name = True\n        model.__config__.allow_mutation = True\n    except Exception:\n        pass\n    return model\n"
  },
  {
    "path": "modules/api/nudenet.py",
    "content": "from fastapi import Body\nfrom modules.api import api\n\n\ndef nudenet_censor(\n    image: str = Body(\"\", title='nudenet input image'),\n    score: float = Body(0.2, title='nudenet threshold score'),\n    blocks: int = Body(3, title='nudenet pixelation blocks'),\n    censor: list = Body([], title='nudenet censorship items'),\n    method: str = Body('pixelate', title='nudenet censorship method'),\n    overlay: str = Body('', title='nudenet overlay image path'),\n):\n    from scripts.nudenet import nudenet # pylint: disable=no-name-in-module\n    base64image = image\n    image = api.decode_base64_to_image(image)\n    if nudenet.detector is None:\n        nudenet.detector = nudenet.NudeDetector() # loads and initializes model once\n    nudes = nudenet.detector.censor(image=image, method=method, min_score=score, censor=censor, blocks=blocks, overlay=overlay)\n    if len(censor) > 0: # replace image if anything is censored\n        base64image = api.encode_pil_to_base64(nudes.output).decode(\"utf-8\")\n    detections_dict = { d[\"label\"]: d[\"score\"] for d in nudes.detections }\n    return { \"image\": base64image, \"detections\": detections_dict }\n\n\ndef prompt_check(\n    prompt: str = Body(\"\", title='prompt text'),\n    lang: str = Body(\"eng\", title='allowed languages'),\n    alphabet: str = Body(\"latn\", title='allowed alphabets'),\n):\n    from scripts.nudenet import langdetect # pylint: disable=no-name-in-module\n    res = langdetect.lang_detect(prompt)\n    res = ','.join(res) if isinstance(res, list) else res\n    lang = [a.strip() for a in lang.split(',')] if lang else []\n    alphabet = [a.strip() for a in alphabet.split(',')] if alphabet else []\n    lang_ok = any(a in res for a in lang) if len(lang) > 0 else True\n    alph_ok = any(a in res for a in alphabet) if len(alphabet) > 0 else True\n    return { \"lang\": res, \"lang_ok\": lang_ok, \"alph_ok\": alph_ok }\n\n\ndef image_guard(\n    image: str = Body(\"\", title='input image'),\n    policy: str = Body(\"\", title='optional policy definition'),\n):\n    from scripts.nudenet import imageguard # pylint: disable=no-name-in-module\n    image = api.decode_base64_to_image(image)\n    res = imageguard.image_guard(image=image, policy=policy)\n    return res\n\n\ndef banned_words(\n    words: str = Body(\"\", title='comma separated list of banned words'),\n    prompt: str = Body(\"\", title='prompt text'),\n):\n    from scripts.nudenet import bannedwords # pylint: disable=no-name-in-module\n    found = bannedwords.check_banned(words=words, prompt=prompt)\n    return found\n\n\ndef register_api():\n    from modules.shared import api as api_instance\n    api_instance.add_api_route(\"/sdapi/v1/nudenet\", nudenet_censor, methods=[\"POST\"], response_model=dict)\n    api_instance.add_api_route(\"/sdapi/v1/prompt-lang\", prompt_check, methods=[\"POST\"], response_model=dict)\n    api_instance.add_api_route(\"/sdapi/v1/image-guard\", image_guard, methods=[\"POST\"], response_model=dict)\n    api_instance.add_api_route(\"/sdapi/v1/prompt-banned\", banned_words, methods=[\"POST\"], response_model=list)\n"
  },
  {
    "path": "modules/api/nvml.py",
    "content": "try:\n    from installer import install, log\nexcept Exception:\n    def install(*args, **kwargs): # pylint: disable=unused-argument\n        pass\n    import logging\n    log = logging.getLogger(__name__)\n\n\nnvml_initialized = False\nwarned = False\n\n\ndef warn_once(msg):\n    global warned # pylint: disable=global-statement\n    if not warned:\n        log.error(msg)\n        warned = True\n\ndef get_reason(val):\n    throttle = {\n        1: 'gpu idle',\n        2: 'applications clocks setting',\n        4: 'sw power cap',\n        8: 'hw slowdown',\n        16: 'sync boost',\n        32: 'sw thermal slowdown',\n        64: 'hw thermal slowdown',\n        128: 'hw power brake slowdown',\n        256: 'display clock setting',\n    }\n    reason = ', '.join([throttle[i] for i in throttle if i & val])\n    return reason if len(reason) > 0 else 'ok'\n\n\ndef get_nvml():\n    global nvml_initialized # pylint: disable=global-statement\n    if warned:\n        return []\n    try:\n        from modules.memstats import ram_stats\n        if not nvml_initialized:\n            install('nvidia-ml-py', quiet=True)\n            import pynvml # pylint: disable=redefined-outer-name\n            pynvml.nvmlInit()\n            log.debug('NVML initialized')\n            nvml_initialized = True\n        else:\n            import pynvml\n        devices = []\n        for i in range(pynvml.nvmlDeviceGetCount()):\n            dev = pynvml.nvmlDeviceGetHandleByIndex(i)\n            try:\n                name = pynvml.nvmlDeviceGetName(dev)\n            except Exception:\n                name = ''\n            load = pynvml.nvmlDeviceGetUtilizationRates(dev)\n            mem = pynvml.nvmlDeviceGetMemoryInfo(dev)\n            ram = ram_stats()\n            data = {\n                \"CUDA\": f'Version {pynvml.nvmlSystemGetCudaDriverVersion()} Compute {pynvml.nvmlDeviceGetCudaComputeCapability(dev)}',\n                \"Driver\": pynvml.nvmlSystemGetDriverVersion(),\n                \"Hardware\": f'VBIOS {pynvml.nvmlDeviceGetVbiosVersion(dev)} ROM {pynvml.nvmlDeviceGetInforomImageVersion(dev)}',\n                \"PCI link\": f'Gen.{pynvml.nvmlDeviceGetCurrPcieLinkGeneration(dev)} x{pynvml.nvmlDeviceGetCurrPcieLinkWidth(dev)}',\n                \"Power\": f'{round(pynvml.nvmlDeviceGetPowerUsage(dev)/1000, 2)} W / {round(pynvml.nvmlDeviceGetEnforcedPowerLimit(dev)/1000, 2)} W',\n                \"GPU clock\": f'{pynvml.nvmlDeviceGetClockInfo(dev, 0)} Mhz / {pynvml.nvmlDeviceGetMaxClockInfo(dev, 0)} Mhz',\n                \"SM clock\": f'{pynvml.nvmlDeviceGetClockInfo(dev, 1)} Mhz / {pynvml.nvmlDeviceGetMaxClockInfo(dev, 1)} Mhz',\n                \"VRAM clock\": f'{pynvml.nvmlDeviceGetClockInfo(dev, 2)} Mhz / {pynvml.nvmlDeviceGetMaxClockInfo(dev, 2)} Mhz',\n                \"VRAM usage\": f'{round(100 * mem.used / mem.total)}% | {round(mem.used / 1024 / 1024)} MB used | {round(mem.free / 1024 / 1024)} MB free | {round(mem.total / 1024 / 1024)} MB total',\n                \"RAM usage\": f'{round(100 * ram[\"used\"] / ram[\"total\"])}% | {round(1024 * ram[\"used\"])} MB used | {round(1024 * ram[\"free\"])} MB free | {round(1024 * ram[\"total\"])} MB total',\n                \"System load\": f'GPU {load.gpu}% | VRAM {load.memory}% | Temp {pynvml.nvmlDeviceGetTemperature(dev, 0)}C | Fan {pynvml.nvmlDeviceGetFanSpeed(dev)}%',\n                'State': get_reason(pynvml.nvmlDeviceGetCurrentClocksThrottleReasons(dev)),\n            }\n            chart = [load.memory, load.gpu]\n            devices.append({\n                'name': name,\n                'data': data,\n                'chart': chart,\n            })\n        # log.debug(f'nmvl: {devices}')\n        return devices\n    except Exception as e:\n        warn_once(f'NVML: {e}')\n        return []\n\n\nif __name__ == '__main__':\n    nvml_initialized = True\n    import pynvml # pylint: disable=redefined-outer-name\n    pynvml.nvmlInit()\n    from rich import print as rprint\n    for gpu in get_nvml():\n        rprint(gpu)\n"
  },
  {
    "path": "modules/api/process.py",
    "content": "from typing import Optional, List\nfrom threading import Lock\nfrom pydantic import BaseModel, Field # pylint: disable=no-name-in-module\nfrom fastapi.responses import JSONResponse\nfrom fastapi.exceptions import HTTPException\nfrom modules.api.helpers import decode_base64_to_image, encode_pil_to_base64\nfrom modules import errors, shared, postprocessing\nfrom modules.api import models, helpers\n\n\nprocessor = None # cached instance of processor\nerrors.install()\n\n\nclass ReqPreprocess(BaseModel):\n    image: str = Field(title=\"Image\", description=\"The base64 encoded image\")\n    model: str = Field(title=\"Model\", description=\"The model to use for preprocessing\")\n    params: Optional[dict] = Field(default={}, title=\"Settings\", description=\"Preprocessor settings\")\n\nclass ResPreprocess(BaseModel):\n    model: str = Field(default='', title=\"Model\", description=\"The processor model used\")\n    image: str = Field(default='', title=\"Image\", description=\"The processed image in base64 format\")\n\nclass ReqMask(BaseModel):\n    image: str = Field(title=\"Image\", description=\"The base64 encoded image\")\n    type: str = Field(title=\"Mask type\", description=\"Type of masking image to return\")\n    mask: Optional[str] = Field(title=\"Mask\", description=\"If optional maks image is not provided auto-masking will be performed\")\n    model: Optional[str] = Field(title=\"Model\", description=\"The model to use for preprocessing\")\n    params: Optional[dict] = Field(default={}, title=\"Settings\", description=\"Preprocessor settings\")\n\nclass ReqFace(BaseModel):\n    image: str = Field(title=\"Image\", description=\"The base64 encoded image\")\n    model: Optional[str] = Field(title=\"Model\", description=\"The model to use for detection\")\n\nclass ResFace(BaseModel):\n    classes: List[int] = Field(title=\"Class\", description=\"The class of detected item\")\n    labels: List[str] = Field(title=\"Label\", description=\"The label of detected item\")\n    boxes: List[List[int]] = Field(title=\"Box\", description=\"The bounding box of detected item\")\n    images: List[str] = Field(title=\"Image\", description=\"The base64 encoded images of detected faces\")\n    scores: List[float] = Field(title=\"Scores\", description=\"The scores of the detected faces\")\n\nclass ResMask(BaseModel):\n    mask: str = Field(default='', title=\"Image\", description=\"The processed image in base64 format\")\n\nclass ItemPreprocess(BaseModel):\n    name: str = Field(title=\"Name\")\n    params: dict = Field(title=\"Params\")\n\nclass ItemMask(BaseModel):\n    models: List[str] = Field(title=\"Models\")\n    colormaps: List[str] = Field(title=\"Color maps\")\n    params: dict = Field(title=\"Params\")\n    types: List[str] = Field(title=\"Types\")\n\n\nclass APIProcess():\n    def __init__(self, queue_lock: Lock):\n        self.queue_lock = queue_lock\n\n    def get_preprocess(self):\n        from modules.control import processors\n        items = []\n        for k, v in processors.config.items():\n            items.append(ItemPreprocess(name=k, params=v.get('params', {})))\n        return items\n\n    def post_preprocess(self, req: ReqPreprocess):\n        global processor # pylint: disable=global-statement\n        from modules.control import processors\n        processors_list = list(processors.config)\n        if req.model not in processors_list:\n            return JSONResponse(status_code=400, content={\"error\": f\"Processor model not found: id={req.model}\"})\n        image = decode_base64_to_image(req.image)\n        if processor is None or processor.processor_id != req.model:\n            with self.queue_lock:\n                processor = processors.Processor(req.model)\n        for k, v in req.params.items():\n            if k not in processors.config[processor.processor_id]['params']:\n                return JSONResponse(status_code=400, content={\"error\": f\"Processor invalid parameter: id={req.model} {k}={v}\"})\n        jobid = shared.state.begin('API-PRE', api=True)\n        processed = processor(image, local_config=req.params)\n        image = encode_pil_to_base64(processed)\n        shared.state.end(jobid)\n        return ResPreprocess(model=processor.processor_id, image=image)\n\n    def get_mask(self):\n        from modules import masking\n        return ItemMask(models=list(masking.MODELS), colormaps=masking.COLORMAP, params=vars(masking.opts), types=masking.TYPES)\n\n    def post_mask(self, req: ReqMask):\n        from modules import masking\n        if req.model:\n            if req.model not in masking.MODELS:\n                return JSONResponse(status_code=400, content={\"error\": f\"Mask model not found: id={req.model}\"})\n            else:\n                masking.init_model(req.model)\n        if req.type not in masking.TYPES:\n            return JSONResponse(status_code=400, content={\"error\": f\"Mask type not found: id={req.type}\"})\n        image = decode_base64_to_image(req.image)\n        mask = decode_base64_to_image(req.mask) if req.mask else None\n        for k, v in req.params.items():\n            if not hasattr(masking.opts, k):\n                return JSONResponse(status_code=400, content={\"error\": f\"Mask invalid parameter: {k}={v}\"})\n            else:\n                setattr(masking.opts, k, v)\n        jobid = shared.state.begin('API-MASK', api=True)\n        with self.queue_lock:\n            processed = masking.run_mask(input_image=image, input_mask=mask, return_type=req.type)\n        shared.state.end(jobid)\n        if processed is None:\n            return JSONResponse(status_code=400, content={\"error\": \"Mask is none\"})\n        image = encode_pil_to_base64(processed)\n        return ResMask(mask=image)\n\n    def post_detect(self, req: ReqFace):\n        from modules.shared import yolo # pylint: disable=no-name-in-module\n        image = decode_base64_to_image(req.image)\n        jobid = shared.state.begin('API-FACE', api=True)\n        images = []\n        scores = []\n        classes = []\n        boxes = []\n        labels = []\n        with self.queue_lock:\n            items = yolo.predict(req.model, image)\n            for item in items:\n                images.append(encode_pil_to_base64(item.item))\n                scores.append(item.score)\n                classes.append(item.cls)\n                labels.append(item.label)\n                boxes.append(item.box)\n        shared.state.end(jobid)\n        return ResFace(classes=classes, labels=labels, scores=scores, boxes=boxes, images=images)\n\n    def post_prompt_enhance(self, req: models.ReqPromptEnhance):\n        from modules import processing_helpers\n        seed = req.seed or -1\n        seed = processing_helpers.get_fixed_seed(seed)\n        prompt = ''\n        if req.type == 'text':\n            from modules.scripts_manager import scripts_txt2img\n            model = 'google/gemma-3-1b-it' if req.model is None or len(req.model) < 4 else req.model\n            instance = [s for s in scripts_txt2img.scripts if 'prompt_enhance.py' in s.filename][0]\n            prompt = instance.enhance(\n                model=model,\n                prompt=req.prompt,\n                system=req.system_prompt,\n                seed=seed,\n                nsfw=req.nsfw,\n            )\n        elif req.type == 'image':\n            from modules.scripts_manager import scripts_txt2img\n            model = 'google/gemma-3-4b-it' if req.model is None or len(req.model) < 4 else req.model\n            instance = [s for s in scripts_txt2img.scripts if 'prompt_enhance.py' in s.filename][0]\n            prompt = instance.enhance(\n                model=model,\n                prompt=req.prompt,\n                system=req.system_prompt,\n                image=decode_base64_to_image(req.image),\n                seed=seed,\n                nsfw=req.nsfw,\n            )\n        elif req.type == 'video':\n            from modules.ui_video_vlm import enhance_prompt\n            model = 'Google Gemma 3 4B' if req.model is None or len(req.model) < 4 else req.model\n            prompt = enhance_prompt(\n                enable=True,\n                image=decode_base64_to_image(req.image),\n                prompt=req.prompt,\n                model=model,\n                system_prompt=req.system_prompt,\n                nsfw=req.nsfw,\n            )\n        else:\n            raise HTTPException(status_code=400, detail=\"prompt enhancement: invalid type\")\n        res = models.ResPromptEnhance(prompt=prompt, seed=seed)\n        return res\n\n    def set_upscalers(self, req: dict):\n        reqDict = vars(req)\n        reqDict['extras_upscaler_1'] = reqDict.pop('upscaler_1', None)\n        reqDict['extras_upscaler_2'] = reqDict.pop('upscaler_2', None)\n        return reqDict\n\n    def extras_single_image_api(self, req: models.ReqProcessImage):\n        reqDict = self.set_upscalers(req)\n        reqDict['image'] = helpers.decode_base64_to_image(reqDict['image'])\n        with self.queue_lock:\n            result = postprocessing.run_extras(extras_mode=0, image_folder=\"\", input_dir=\"\", output_dir=\"\", save_output=False, **reqDict)\n        return models.ResProcessImage(image=helpers.encode_pil_to_base64(result[0][0]), html_info=result[1])\n\n    def extras_batch_images_api(self, req: models.ReqProcessBatch):\n        reqDict = self.set_upscalers(req)\n        image_list = reqDict.pop('imageList', [])\n        image_folder = [helpers.decode_base64_to_image(x.data) for x in image_list]\n        with self.queue_lock:\n            result = postprocessing.run_extras(extras_mode=1, image_folder=image_folder, image=\"\", input_dir=\"\", output_dir=\"\", save_output=False, **reqDict)\n        return models.ResProcessBatch(images=list(map(helpers.encode_pil_to_base64, result[0])), html_info=result[1])\n"
  },
  {
    "path": "modules/api/rocm_smi.py",
    "content": "import math\nimport json\nimport subprocess as sp\nfrom enum import IntFlag\n\n\ntry:\n    from installer import log\nexcept Exception:\n    import logging\n    log = logging.getLogger(__name__)\n\n\ntry:\n    from modules.rocm import version as rocm_version\nexcept Exception:\n    rocm_version = \"unknown\"\n\n\n# ThrottleStatus is from leuc/amdgpu_metrics.py\nclass ThrottleStatus(IntFlag):\n    # linux/drivers/gpu/drm/amd/pm/inc/amdgpu_smu.h\n    PPT0 = 1 << 0\n    PPT1 = 1 << 1\n    PPT2 = 1 << 2\n    PPT3 = 1 << 3\n    SPL = 1 << 4\n    FPPT = 1 << 5\n    SPPT = 1 << 6\n    SPPT_APU = 1 << 7\n    TDC_GFX = 1 << 16\n    TDC_SOC = 1 << 17\n    TDC_MEM = 1 << 18\n    TDC_VDD = 1 << 19\n    TDC_CVIP = 1 << 20\n    EDC_CPU = 1 << 21\n    EDC_GFX = 1 << 22\n    APCC = 1 << 23\n    TEMP_GPU = 1 << 32\n    TEMP_CORE = 1 << 33\n    TEMP_MEM = 1 << 34\n    TEMP_EDGE = 1 << 35\n    TEMP_HOTSPOT = 1 << 36\n    TEMP_SOC = 1 << 37\n    TEMP_VR_GFX = 1 << 38\n    TEMP_VR_SOC = 1 << 39\n    TEMP_VR_MEM0 = 1 << 40\n    TEMP_VR_MEM1 = 1 << 41\n    TEMP_LIQUID0 = 1 << 42\n    TEMP_LIQUID1 = 1 << 43\n    VRHOT0 = 1 << 44\n    VRHOT1 = 1 << 45\n    PROCHOT_CPU = 1 << 46\n    PROCHOT_GFX = 1 << 47\n    PPM = 1 << 56\n    FIT = 1 << 57\n\n    def active(self):\n        members = self.__class__.__members__\n        return (m for m in members if getattr(self, m)._value_ & self.value != 0) # pylint: disable=protected-access\n\n    def __iter__(self):\n        return self.active()\n\n    def __str__(self):\n        return ', '.join(self.active())\n\n\ndef get_rocm_smi():\n    try:\n        rocm_smi_data = json.loads(sp.check_output((\"rocm-smi\", \"-a\", \"--json\")))\n        driver_version = rocm_smi_data.pop(\"system\", {\"Driver version\": \"unknown\"}).get(\"Driver version\")\n\n        devices = []\n        for key in rocm_smi_data.keys():\n            load = {\n                'gpu': rocm_smi_data[key].get('GPU use (%)', 'unknown'),\n                'memory': rocm_smi_data[key].get(\"GPU Memory Allocated (VRAM%)\", \"unknown\"),\n                'temp': rocm_smi_data[key].get('Temperature (Sensor edge) (C)', 'unknown'),\n                'temp_junction': rocm_smi_data[key].get('Temperature (Sensor junction) (C)', 'unknown'),\n                'temp_memory': rocm_smi_data[key].get('Temperature (Sensor memory) (C)', 'unknown'),\n                'fan': rocm_smi_data[key].get('Fan speed (%)', 'unknown'),\n            }\n\n            data = {\n                \"ROCm\": f'version {rocm_version} agent {rocm_smi_data[key].get(\"GFX Version\", \"unknown\")}',\n                \"Driver\": driver_version,\n                \"Hardware\": f'VBIOS {rocm_smi_data[key].get(\"VBIOS version\", \"unknown\")}',\n                \"PCI link\": f'Gen.{int(math.log2(float(rocm_smi_data[key].get(\"pcie_link_speed (0.1 GT/s)\", 10)) / 10))} x{rocm_smi_data[key].get(\"pcie_link_width (Lanes)\", \"unknown\")}',\n                \"Power\": f'{round(float(rocm_smi_data[key].get(\"Average Graphics Package Power (W)\", 0)), 2)} W / {round(float(rocm_smi_data[key].get(\"Max Graphics Package Power (W)\", 0)), 2)} W',\n                \"GPU clock\": f'{rocm_smi_data[key].get(\"average_gfxclk_frequency (MHz)\", 0)} Mhz / {rocm_smi_data[key].get(\"Valid sclk range\", \"0\").split(\" - \")[-1].removesuffix(\"Mhz\")} Mhz',\n                \"VRAM clock\": f'{rocm_smi_data[key].get(\"current_uclk (MHz)\", 0)} Mhz / {rocm_smi_data[key].get(\"Valid mclk range\", \"0\").split(\" - \")[-1].removesuffix(\"Mhz\")} Mhz',\n                \"VRAM usage\": f'{load[\"memory\"]}% Used | {rocm_smi_data[key].get(\"GPU Memory Read/Write Activity (%)\", \"unknown\")}% Activity',\n                \"GPU usage\": f'GPU {load[\"gpu\"]}% | Fan {load[\"fan\"]}%',\n                \"GPU temp\": f'Edge {load[\"temp\"]}C | Junction {load[\"temp_junction\"]}C | Memory {load[\"temp_memory\"]}C',\n                'Throttle reason': str(ThrottleStatus(int(rocm_smi_data[key].get(\"throttle_status\", 0)))),\n            }\n            name = rocm_smi_data[key].get('Device Name', 'unknown')\n            chart = [load[\"memory\"], load[\"gpu\"]]\n            devices.append({\n                'name': name,\n                'data': data,\n                'chart': chart,\n            })\n        return devices\n    except Exception as e:\n        log.error(f'ROCm SMI: {e}')\n        return []\n\n\nif __name__ == '__main__':\n    from rich import print as rprint\n    for gpu in get_rocm_smi():\n        rprint(gpu)\n"
  },
  {
    "path": "modules/api/script.py",
    "content": "from typing import Optional\nfrom fastapi.exceptions import HTTPException\nimport gradio as gr\nfrom modules.api import models\nfrom modules.errors import log\nfrom modules import scripts_manager\n\n\ndef script_name_to_index(name, scripts_list):\n    if name is None or len(name) == 0 or name == 'none':\n        return None\n    available = [script.title().lower() for script in scripts_list]\n    if name.lower() in available:\n        return available.index(name.lower())\n    short = [available.split(':')[0] for available in available]\n    if name.lower() in short:\n        return short.index(name.lower())\n    log.error(f'API: script={name} available={available} not found')\n    return None\n\n\ndef get_selectable_script(script_name, script_runner):\n    if script_name is None or script_name == \"\" or script_name == 'none':\n        return None, None\n    script_idx = script_name_to_index(script_name, script_runner.selectable_scripts)\n    if script_idx is None:\n        return None, None\n    script = script_runner.selectable_scripts[script_idx]\n    return script, script_idx\n\n\ndef get_scripts_list():\n    t2ilist = [script.name for script in scripts_manager.scripts_txt2img.scripts if script.name is not None]\n    i2ilist = [script.name for script in scripts_manager.scripts_img2img.scripts if script.name is not None]\n    control = [script.name for script in scripts_manager.scripts_control.scripts if script.name is not None]\n    return models.ResScripts(txt2img = t2ilist, img2img = i2ilist, control = control)\n\n\ndef get_script_info(script_name: Optional[str] = None):\n    res = []\n    for script_list in [scripts_manager.scripts_txt2img.scripts, scripts_manager.scripts_img2img.scripts, scripts_manager.scripts_control.scripts]:\n        for script in script_list:\n            if script.api_info is not None and (script_name is None or script_name == script.api_info.name):\n                res.append(script.api_info)\n    return res\n\n\ndef get_script(script_name, script_runner):\n    if script_name is None or script_name == \"\" or script_name == 'none':\n        return None, None\n    script_idx = script_name_to_index(script_name, script_runner.scripts)\n    if script_idx is None:\n        return None\n    return script_runner.scripts[script_idx]\n\n\ndef init_default_script_args(script_runner):\n    # find max idx from the scripts in runner and generate a none array to init script_args\n    last_arg_index = 1\n    for script in script_runner.scripts:\n        if last_arg_index < script.args_to: # pylint disable=consider-using-max-builtin\n            last_arg_index = script.args_to\n    # None everywhere except position 0 to initialize script args\n    script_args = [None]*last_arg_index\n    script_args[0] = 0\n\n    # get default values\n    if gr is None:\n        return script_args\n    with gr.Blocks(): # will throw errors calling ui function without this\n        for script in script_runner.scripts:\n            if script.ui(script.is_img2img):\n                ui_default_values = []\n                for elem in script.ui(script.is_img2img):\n                    ui_default_values.append(elem.value)\n                script_args[script.args_from:script.args_to] = ui_default_values\n    return script_args\n\n\ndef init_script_args(p, request, default_script_args, selectable_scripts, selectable_script_idx, script_runner):\n    script_args = default_script_args.copy()\n    # position 0 in script_arg is the idx+1 of the selectable script that is going to be run when using scripts.scripts_*2img.run()\n    if selectable_scripts:\n        for idx in range(len(request.script_args)):\n            script_args[selectable_scripts.args_from + idx] = request.script_args[idx]\n        script_args[0] = selectable_script_idx + 1\n    # Now check for always on scripts\n    if request.alwayson_scripts and (len(request.alwayson_scripts) > 0):\n        for alwayson_script_name in request.alwayson_scripts.keys():\n            alwayson_script = get_script(alwayson_script_name, script_runner)\n            if alwayson_script is None:\n                raise HTTPException(status_code=422, detail=f\"Always on script not found: {alwayson_script_name}\")\n            if not alwayson_script.alwayson:\n                raise HTTPException(status_code=422, detail=f\"Selectable script cannot be in always on params: {alwayson_script_name}\")\n            if \"args\" in request.alwayson_scripts[alwayson_script_name]:\n                # min between arg length in scriptrunner and arg length in the request\n                for idx in range(0, min((alwayson_script.args_to - alwayson_script.args_from), len(request.alwayson_scripts[alwayson_script_name][\"args\"]))):\n                    script_args[alwayson_script.args_from + idx] = request.alwayson_scripts[alwayson_script_name][\"args\"][idx]\n                p.per_script_args[alwayson_script.title()] = request.alwayson_scripts[alwayson_script_name][\"args\"]\n    return script_args\n"
  },
  {
    "path": "modules/api/server.py",
    "content": "import os\nimport time\nfrom typing import Any\nfrom fastapi import Request, Depends\nfrom fastapi.exceptions import HTTPException\nfrom fastapi.responses import FileResponse\nfrom modules import shared\nfrom modules.api import models, helpers\n\n\ndef post_shutdown():\n    shared.log.info('Shutdown request received')\n    import sys\n    sys.exit(0)\n\ndef get_js(request: Request):\n    file = request.query_params.get(\"file\", None)\n    if (file is None) or (len(file) == 0):\n        raise HTTPException(status_code=400, detail=\"file parameter is required\")\n    ext = file.split('.')[-1]\n    if ext not in ['js', 'css', 'map', 'html', 'wasm', 'ttf', 'mjs', 'json']:\n        raise HTTPException(status_code=400, detail=f\"invalid file extension: {ext}\")\n    if not os.path.exists(file):\n        shared.log.error(f\"API: file not found: {file}\")\n        raise HTTPException(status_code=404, detail=f\"file not found: {file}\")\n    if ext in ['js', 'mjs']:\n        media_type = 'application/javascript'\n    elif ext in ['map', 'json']:\n        media_type = 'application/json'\n    elif ext in ['css']:\n        media_type = 'text/css'\n    elif ext in ['html']:\n        media_type = 'text/html'\n    elif ext in ['wasm']:\n        media_type = 'application/wasm'\n    elif ext in ['ttf']:\n        media_type = 'font/ttf'\n    else:\n        media_type = 'application/octet-stream'\n    return FileResponse(file, media_type=media_type)\n\ndef get_motd():\n    import requests\n    motd = ''\n    ver = shared.get_version()\n    if ver.get('updated', None) is not None:\n        motd = f\"version <b>{ver['commit']} {ver['updated']}</b> <span style='color: var(--primary-500)'>{ver['url'].split('/')[-1]}</span><br>\" # pylint: disable=use-maxsplit-arg\n    if shared.opts.motd:\n        try:\n            res = requests.get('https://vladmandic.github.io/sdnext/motd', timeout=3)\n            if res.status_code == 200:\n                msg = (res.text or '').strip()\n                shared.log.info(f'MOTD: {msg if len(msg) > 0 else \"N/A\"}')\n                motd += res.text\n            else:\n                shared.log.error(f'MOTD: {res.status_code}')\n        except Exception as err:\n            shared.log.error(f'MOTD: {err}')\n    return motd\n\ndef get_version():\n    return shared.get_version()\n\ndef get_platform():\n    from installer import get_platform as installer_get_platform\n    from modules.loader import get_packages as loader_get_packages\n    return { **installer_get_platform(), **loader_get_packages() }\n\ndef get_log(req: models.ReqGetLog = Depends()):\n    lines = shared.log.buffer[:req.lines] if req.lines > 0 else shared.log.buffer.copy()\n    if req.clear:\n        shared.log.buffer.clear()\n    return lines\n\ndef post_log(req: models.ReqPostLog):\n    if req.message is not None:\n        shared.log.info(f'UI: {req.message}')\n    if req.debug is not None:\n        shared.log.debug(f'UI: {req.debug}')\n    if req.error is not None:\n        shared.log.error(f'UI: {req.error}')\n    return {}\n\n\ndef get_config():\n    options = {}\n    for k in shared.opts.data.keys():\n        if shared.opts.data_labels.get(k) is not None:\n            options.update({k: shared.opts.data.get(k, shared.opts.data_labels.get(k).default)})\n        else:\n            options.update({k: shared.opts.data.get(k, None)})\n    if 'sd_lyco' in options:\n        del options['sd_lyco']\n    if 'sd_lora' in options:\n        del options['sd_lora']\n    return options\n\ndef set_config(req: dict[str, Any]):\n    updated = []\n    for k, v in req.items():\n        updated.append({ k: shared.opts.set(k, v) })\n    shared.opts.save()\n    return { \"updated\": updated }\n\ndef get_cmd_flags():\n    return vars(shared.cmd_opts)\n\ndef get_history(req: models.ReqHistory = Depends()):\n    if req.id is not None and len(req.id) > 0:\n        res = [item for item in shared.state.state_history if item['id'] == req.id]\n    else:\n        res = shared.state.state_history\n    res = [models.ResHistory(**item) for item in res]\n    return res\n\ndef get_progress(req: models.ReqProgress = Depends()):\n    if shared.state.job_count == 0: # idle state\n        return models.ResProgress(id=shared.state.id, progress=0, eta_relative=0, state=shared.state.dict(), textinfo=shared.state.textinfo)\n    shared.state.do_set_current_image()\n    current_image = None\n    if shared.state.current_image and not req.skip_current_image:\n        current_image = helpers.encode_pil_to_base64(shared.state.current_image)\n    batch_x = max(shared.state.job_no, 0)\n    batch_y = max(shared.state.job_count, 1)\n    step_x = max(shared.state.sampling_step, 0)\n    prev_steps = max(shared.state.sampling_steps, 1)\n    while step_x > shared.state.sampling_steps:\n        shared.state.sampling_steps += prev_steps\n    step_y = max(shared.state.sampling_steps, 1)\n    current = step_y * batch_x + step_x\n    total = step_y * batch_y\n    progress = min((current / total) if current > 0 and total > 0 else 0, 1)\n    time_since_start = time.time() - shared.state.time_start\n    eta_relative = (time_since_start / progress) - time_since_start if progress > 0 else 0\n    # shared.log.critical(f'get_progress: batch {batch_x}/{batch_y} step {step_x}/{step_y} current {current}/{total} time={time_since_start} eta={eta_relative}')\n    # shared.log.critical(shared.state)\n    res = models.ResProgress(id=shared.state.id, progress=round(progress, 2), eta_relative=round(eta_relative, 2), current_image=current_image, textinfo=shared.state.textinfo, state=shared.state.dict(), )\n    return res\n\ndef get_status():\n    return shared.state.status()\n\ndef post_interrupt():\n    shared.state.interrupt()\n    return {}\n\ndef post_skip():\n    shared.state.skip()\n\ndef get_memory():\n    try:\n        import psutil\n        process = psutil.Process(os.getpid())\n        res = process.memory_info() # only rss is cross-platform guaranteed so we dont rely on other values\n        ram_total = 100 * res.rss / process.memory_percent() # and total memory is calculated as actual value is not cross-platform safe\n        ram = { 'free': ram_total - res.rss, 'used': res.rss, 'total': ram_total }\n    except Exception as err:\n        ram = { 'error': f'{err}' }\n    try:\n        import torch\n        if torch.cuda.is_available():\n            s = torch.cuda.mem_get_info()\n            system = { 'free': s[0], 'used': s[1] - s[0], 'total': s[1] }\n            s = dict(torch.cuda.memory_stats(shared.device))\n            allocated = { 'current': s['allocated_bytes.all.current'], 'peak': s['allocated_bytes.all.peak'] }\n            reserved = { 'current': s['reserved_bytes.all.current'], 'peak': s['reserved_bytes.all.peak'] }\n            active = { 'current': s['active_bytes.all.current'], 'peak': s['active_bytes.all.peak'] }\n            inactive = { 'current': s['inactive_split_bytes.all.current'], 'peak': s['inactive_split_bytes.all.peak'] }\n            warnings = { 'retries': s['num_alloc_retries'], 'oom': s['num_ooms'] }\n            cuda = {\n                'system': system,\n                'active': active,\n                'allocated': allocated,\n                'reserved': reserved,\n                'inactive': inactive,\n                'events': warnings,\n            }\n        else:\n            cuda = { 'error': 'unavailable' }\n    except Exception as err:\n        cuda = { 'error': f'{err}' }\n    return models.ResMemory(ram = ram, cuda = cuda)\n"
  },
  {
    "path": "modules/api/xpu_smi.py",
    "content": "try:\n    from installer import log\nexcept Exception:\n    import logging\n    log = logging.getLogger(__name__)\n\n\ndef get_xpu_smi():\n    try:\n        import torch\n        from modules.memstats import ram_stats\n\n        devices = []\n        mem = torch.xpu.memory_stats()\n        ram = ram_stats()\n        cap = torch.xpu.get_device_capability()\n        prop = torch.xpu.get_device_properties()\n        load = {\n            'gpu': 0, # no interface to get gpu load\n            'memory': mem['active_bytes.all.allocated'] // (1024**3), # no interface to get gpu memory so use torch instead\n        }\n        total = prop.total_memory // (1024**2)\n        data = {\n            'Version': cap['version'],\n            'Driver': prop.driver_version,\n            'Platform': prop.platform_name,\n            'ID': hex(prop.device_id).removeprefix(\"0x\"),\n            'Compute Units': prop.max_compute_units,\n            \"VRAM usage\": f'{round(100 * load[\"memory\"] / total)}% | {load[\"memory\"]} MB used | {total - load[\"memory\"]} MB free | {total} MB total',\n            \"RAM usage\": f'{round(100 * ram[\"used\"] / ram[\"total\"])}% | {round(1024 * ram[\"used\"])} MB used | {round(1024 * ram[\"free\"])} MB free | {round(1024 * ram[\"total\"])} MB total',\n        }\n        chart = [load[\"memory\"], load[\"gpu\"]]\n        devices.append({\n            'name': torch.xpu.get_device_name(),\n            'data': data,\n            'chart': chart,\n        })\n        return devices\n    except Exception as e:\n        log.error(f'XPU SMI: {e}')\n        return []\n\n\nif __name__ == '__main__':\n    from rich import print as rprint\n    for gpu in get_xpu_smi():\n        rprint(gpu)\n"
  },
  {
    "path": "modules/api/xyz_grid.py",
    "content": "from typing import List\n\n\ndef xyz_grid_enum(option: str = \"\") -> List[dict]:\n    from scripts.xyz import xyz_grid_classes # pylint: disable=no-name-in-module\n    options = []\n    for x in xyz_grid_classes.axis_options:\n        _option = {\n            'label': x.label,\n            'type': x.type.__name__,\n            'cost': x.cost,\n            'choices': x.choices is not None,\n        }\n        if len(option) == 0:\n            options.append(_option)\n        else:\n            if x.label.lower().startswith(option.lower()) or x.label.lower().endswith(option.lower()):\n                if callable(x.choices):\n                    _option['choices'] = x.choices()\n                options.append(_option)\n    return options\n\n\ndef register_api():\n    from modules.shared import api as api_instance\n    api_instance.add_api_route(\"/sdapi/v1/xyz-grid\", xyz_grid_enum, methods=[\"GET\"], response_model=List[dict])\n"
  },
  {
    "path": "modules/attention.py",
    "content": "from typing import Optional\nfrom functools import wraps\nimport torch\nfrom modules import rocm\nfrom modules.errors import log\nfrom installer import install, installed\n\n\ndef set_dynamic_attention():\n    try:\n        sdpa_pre_dyanmic_atten = torch.nn.functional.scaled_dot_product_attention\n        from modules.sd_hijack_dynamic_atten import dynamic_scaled_dot_product_attention\n        torch.nn.functional.scaled_dot_product_attention = dynamic_scaled_dot_product_attention\n        return sdpa_pre_dyanmic_atten\n    except Exception as err:\n        log.error(f'Torch attention: type=\"dynamic attention\" {err}')\n        return None\n\n\ndef set_triton_flash_attention(backend: str):\n    try:\n        if backend in {\"rocm\", \"zluda\"}: # flash_attn_triton_amd only works with AMD\n            from modules.flash_attn_triton_amd import interface_fa\n            sdpa_pre_triton_flash_atten = torch.nn.functional.scaled_dot_product_attention\n            @wraps(sdpa_pre_triton_flash_atten)\n            def sdpa_triton_flash_atten(query: torch.FloatTensor, key: torch.FloatTensor, value: torch.FloatTensor, attn_mask: Optional[torch.Tensor] = None, dropout_p: float = 0.0, is_causal: bool = False, scale: Optional[float] = None, enable_gqa: bool = False, **kwargs) -> torch.FloatTensor:\n                if query.shape[-1] <= 128 and attn_mask is None and query.dtype != torch.float32:\n                    if scale is None:\n                        scale = query.shape[-1] ** (-0.5)\n                    head_size_og = query.size(3)\n                    if head_size_og % 8 != 0:\n                        query = torch.nn.functional.pad(query, [0, 8 - head_size_og % 8])\n                        key = torch.nn.functional.pad(key, [0, 8 - head_size_og % 8])\n                        value = torch.nn.functional.pad(value, [0, 8 - head_size_og % 8])\n                    query = query.transpose(1, 2)\n                    key = key.transpose(1, 2)\n                    value = value.transpose(1, 2)\n                    out_padded = torch.zeros_like(query)\n                    interface_fa.fwd(query, key, value, out_padded, dropout_p, scale, is_causal)\n                    return out_padded[..., :head_size_og].transpose(1, 2)\n                else:\n                    if enable_gqa:\n                        kwargs[\"enable_gqa\"] = enable_gqa\n                    return sdpa_pre_triton_flash_atten(query=query, key=key, value=value, attn_mask=attn_mask, dropout_p=dropout_p, is_causal=is_causal, scale=scale, **kwargs)\n            torch.nn.functional.scaled_dot_product_attention = sdpa_triton_flash_atten\n            log.debug('Torch attention: type=\"Triton Flash attention\"')\n    except Exception as err:\n        log.error(f'Torch attention: type=\"Triton Flash attention\" {err}')\n\n\ndef set_flex_attention():\n    try:\n        from torch.nn.attention.flex_attention import flex_attention, create_block_mask\n        def flex_attention_causal_mask(b, h, q_idx, kv_idx): # pylint: disable=unused-argument\n            return q_idx >= kv_idx\n\n        sdpa_pre_flex_atten = torch.nn.functional.scaled_dot_product_attention\n        @wraps(sdpa_pre_flex_atten)\n        def sdpa_flex_atten(query: torch.FloatTensor, key: torch.FloatTensor, value: torch.FloatTensor, attn_mask: Optional[torch.Tensor] = None, dropout_p: float = 0.0, is_causal: bool = False, scale: Optional[float] = None, enable_gqa: bool = False, **kwargs) -> torch.FloatTensor: # pylint: disable=unused-argument\n            score_mod = None\n            block_mask = None\n            if attn_mask is not None:\n                batch_size, num_heads = query.shape[:2]\n                seq_len_q = query.shape[-2]\n                seq_len_kv = key.shape[-2]\n                if attn_mask.ndim == 2:\n                    attn_mask = attn_mask.view(attn_mask.shape[0], 1, attn_mask.size[1], 1)\n                attn_mask = attn_mask.expand(batch_size, num_heads, seq_len_q, seq_len_kv)\n                if attn_mask.dtype == torch.bool:\n                    def mask_mod(batch_idx, head_idx, q_idx, kv_idx):\n                        return attn_mask[batch_idx, head_idx, q_idx, kv_idx]\n                    block_mask = create_block_mask(mask_mod, batch_size, None, seq_len_q, seq_len_kv, device=query.device)\n                else:\n                    def score_mod_fn(score, batch_idx, head_idx, q_idx, kv_idx):\n                        return score + attn_mask[batch_idx, head_idx, q_idx, kv_idx]\n                    score_mod = score_mod_fn\n            elif is_causal:\n                block_mask = create_block_mask(flex_attention_causal_mask, query.shape[0], query.shape[1], query.shape[-2], key.shape[-2], device=query.device)\n            return flex_attention(query, key, value, score_mod=score_mod, block_mask=block_mask, scale=scale, enable_gqa=enable_gqa)\n\n        torch.nn.functional.scaled_dot_product_attention = sdpa_flex_atten\n        log.debug('Torch attention: type=\"Flex attention\"')\n    except Exception as err:\n        log.error(f'Torch attention: type=\"Flex attention\" {err}')\n\n\ndef set_ck_flash_attention(backend: str, device: torch.device):\n    try:\n        if backend == \"rocm\":\n            if not installed('flash-attn'):\n                log.info('Torch attention: type=\"Flash attention\" building...')\n                agent = rocm.Agent(device)\n                install(rocm.get_flash_attention_command(agent), reinstall=True)\n        else:\n            install('flash-attn')\n        from flash_attn import flash_attn_func\n        sdpa_pre_flash_atten = torch.nn.functional.scaled_dot_product_attention\n        @wraps(sdpa_pre_flash_atten)\n        def sdpa_flash_atten(query: torch.FloatTensor, key: torch.FloatTensor, value: torch.FloatTensor, attn_mask: Optional[torch.Tensor] = None, dropout_p: float = 0.0, is_causal: bool = False, scale: Optional[float] = None, enable_gqa: bool = False, **kwargs) -> torch.FloatTensor:\n            if query.shape[-1] <= 128 and attn_mask is None and query.dtype != torch.float32:\n                is_unsqueezed = False\n                if query.dim() == 3:\n                    query = query.unsqueeze(0)\n                    is_unsqueezed = True\n                    if key.dim() == 3:\n                        key = key.unsqueeze(0)\n                    if value.dim() == 3:\n                        value = value.unsqueeze(0)\n                if enable_gqa:\n                    key = key.repeat_interleave(query.size(-3)//key.size(-3), -3)\n                    value = value.repeat_interleave(query.size(-3)//value.size(-3), -3)\n                query = query.transpose(1, 2)\n                key = key.transpose(1, 2)\n                value = value.transpose(1, 2)\n                attn_output = flash_attn_func(q=query, k=key, v=value, dropout_p=dropout_p, causal=is_causal, softmax_scale=scale).transpose(1, 2)\n                if is_unsqueezed:\n                    attn_output = attn_output.squeeze(0)\n                return attn_output\n            else:\n                if enable_gqa:\n                    kwargs[\"enable_gqa\"] = enable_gqa\n                return sdpa_pre_flash_atten(query=query, key=key, value=value, attn_mask=attn_mask, dropout_p=dropout_p, is_causal=is_causal, scale=scale, **kwargs)\n        torch.nn.functional.scaled_dot_product_attention = sdpa_flash_atten\n        log.debug('Torch attention: type=\"Flash attention\"')\n    except Exception as err:\n        log.error(f'Torch attention: type=\"Flash attention\" {err}')\n\n\ndef set_sage_attention(backend: str, device: torch.device):\n    try:\n        install('sageattention')\n\n        use_cuda_backend = False\n        if (backend == \"cuda\") and (torch.cuda.get_device_capability(device) == (8, 6)):\n            use_cuda_backend = True # Detect GPU architecture - sm86 confirmed to need CUDA backend workaround as Sage Attention + Triton causes NaNs\n            try:\n                from sageattention import sageattn_qk_int8_pv_fp16_cuda\n            except Exception:\n                use_cuda_backend = False\n\n        if use_cuda_backend:\n            from sageattention import sageattn_qk_int8_pv_fp16_cuda\n            def sage_attn_impl(query, key, value, is_causal, scale):\n                return sageattn_qk_int8_pv_fp16_cuda(\n                    q=query, k=key, v=value,\n                    tensor_layout=\"HND\",\n                    is_causal=is_causal,\n                    sm_scale=scale,\n                    return_lse=False,\n                    pv_accum_dtype=\"fp32\",\n                )\n        else:\n            from sageattention import sageattn\n            def sage_attn_impl(query, key, value, is_causal, scale):\n                return sageattn(\n                    q=query, k=key, v=value,\n                    attn_mask=None,\n                    dropout_p=0.0,\n                    is_causal=is_causal,\n                    scale=scale,\n                )\n\n        sdpa_pre_sage_atten = torch.nn.functional.scaled_dot_product_attention\n        @wraps(sdpa_pre_sage_atten)\n        def sdpa_sage_atten(query: torch.FloatTensor, key: torch.FloatTensor, value: torch.FloatTensor, attn_mask: Optional[torch.Tensor] = None, dropout_p: float = 0.0, is_causal: bool = False, scale: Optional[float] = None, enable_gqa: bool = False, **kwargs) -> torch.FloatTensor:\n            if (query.shape[-1] in {128, 96, 64}) and (attn_mask is None) and (query.dtype != torch.float32):\n                if enable_gqa:\n                    key = key.repeat_interleave(query.size(-3)//key.size(-3), -3)\n                    value = value.repeat_interleave(query.size(-3)//value.size(-3), -3)\n\n                # Call pre-selected sage attention implementation\n                return sage_attn_impl(query, key, value, is_causal, scale)\n            else:\n                if enable_gqa:\n                    kwargs[\"enable_gqa\"] = enable_gqa\n                return sdpa_pre_sage_atten(query=query, key=key, value=value, attn_mask=attn_mask, dropout_p=dropout_p, is_causal=is_causal, scale=scale, **kwargs)\n        torch.nn.functional.scaled_dot_product_attention = sdpa_sage_atten\n        log.debug(f'Torch attention: type=\"Sage attention\" backend={\"cuda\" if use_cuda_backend else \"auto\"}')\n    except Exception as err:\n        log.error(f'Torch attention: type=\"Sage attention\" {err}')\n\n\ndef set_diffusers_attention(pipe, quiet:bool=False):\n    from modules import shared\n    import diffusers.models.attention_processor as p\n\n    def set_attn(pipe, attention, name:str=None):\n        if attention is None:\n            return\n        # other models uses their own attention processor\n        if getattr(pipe, \"unet\", None) is not None and hasattr(pipe.unet, \"set_attn_processor\"):\n            try:\n                pipe.unet.set_attn_processor(attention)\n            except Exception as e:\n                if 'Nunchaku' in pipe.unet.__class__.__name__:\n                    pass\n                else:\n                    shared.log.error(f'Torch attention: type=\"{name}\" cls={attention.__class__.__name__} pipe={pipe.__class__.__name__} {e}')\n        \"\"\" # each transformer typically has its own attention processor\n        if getattr(pipe, \"transformer\", None) is not None and hasattr(pipe.transformer, \"set_attn_processor\"):\n            try:\n                pipe.transformer.set_attn_processor(attention)\n            except Exception as e:\n                if 'Nunchaku' in pipe.transformer.__class__.__name__:\n                    pass\n                else:\n                    shared.log.error(f'Torch attention: type=\"{name}\" cls={attention.__class__.__name__} pipe={pipe.__class__.__name__} {e}')\n        \"\"\"\n\n    shared.log.quiet(quiet, f'Setting model: attention=\"{shared.opts.cross_attention_optimization}\"')\n    if shared.opts.cross_attention_optimization == \"Disabled\":\n        pass # do nothing\n    elif shared.opts.cross_attention_optimization == \"Scaled-Dot-Product\": # The default set by Diffusers\n        # set_attn(pipe, p.AttnProcessor2_0(), name=\"Scaled-Dot-Product\")\n        pass\n    elif shared.opts.cross_attention_optimization == \"xFormers\":\n        if hasattr(pipe, 'enable_xformers_memory_efficient_attention'):\n            pipe.enable_xformers_memory_efficient_attention()\n        else:\n            shared.log.warning(f\"Attention: xFormers is not compatible with {pipe.__class__.__name__}\")\n    elif shared.opts.cross_attention_optimization == \"Batch matrix-matrix\":\n        set_attn(pipe, p.AttnProcessor(), name=\"Batch matrix-matrix\")\n    elif shared.opts.cross_attention_optimization == \"Dynamic Attention BMM\":\n        from modules.sd_hijack_dynamic_atten import DynamicAttnProcessorBMM\n        set_attn(pipe, DynamicAttnProcessorBMM(), name=\"Dynamic Attention BMM\")\n\n    if shared.opts.attention_slicing != \"Default\" and hasattr(pipe, \"enable_attention_slicing\") and hasattr(pipe, \"disable_attention_slicing\"):\n        if shared.opts.attention_slicing:\n            pipe.enable_attention_slicing()\n        else:\n            pipe.disable_attention_slicing()\n        shared.log.debug(f\"Torch attention: slicing={shared.opts.attention_slicing}\")\n\n    pipe.current_attn_name = shared.opts.cross_attention_optimization\n"
  },
  {
    "path": "modules/ben2/__init__.py",
    "content": "model = None\n\n\ndef remove(image, refine: bool = True):\n    global model # pylint: disable=global-statement\n    from modules import shared, devices\n\n    if model is None:\n        from huggingface_hub import hf_hub_download\n        from .ben2_model import BEN_Base\n        model = BEN_Base()\n        model_file = hf_hub_download(\n            repo_id='PramaLLC/BEN2',\n            filename='BEN2_Base.pth',\n            cache_dir=shared.opts.hfcache_dir)\n        model.loadcheckpoints(model_file)\n        model = model.to(device=devices.device, dtype=devices.dtype).eval()\n\n    model = model.to(device=devices.device)\n    foreground = model.inference(image, refine_foreground=refine)\n    model = model.to(device=devices.cpu)\n    if foreground is None:\n        return image\n    return foreground\n"
  },
  {
    "path": "modules/ben2/ben2_model.py",
    "content": "import os\nimport math\nimport subprocess\nimport tempfile\nimport cv2\nimport torch\nimport torch.nn as nn\nimport torch.nn.functional as F\nimport torch.utils.checkpoint as checkpoint\nimport numpy as np\nfrom timm.models.layers  import DropPath, to_2tuple, trunc_normal_\nfrom PIL import Image\nfrom torchvision import transforms\nfrom einops import rearrange\n\n\nclass Mlp(nn.Module):\n    \"\"\" Multilayer perceptron.\"\"\"\n\n    def __init__(self, in_features, hidden_features=None, out_features=None, act_layer=nn.GELU, drop=0.):\n        super().__init__()\n        out_features = out_features or in_features\n        hidden_features = hidden_features or in_features\n        self.fc1 = nn.Linear(in_features, hidden_features)\n        self.act = act_layer()\n        self.fc2 = nn.Linear(hidden_features, out_features)\n        self.drop = nn.Dropout(drop)\n\n    def forward(self, x):\n        x = self.fc1(x)\n        x = self.act(x)\n        x = self.drop(x)\n        x = self.fc2(x)\n        x = self.drop(x)\n        return x\n\n\ndef window_partition(x, window_size):\n    \"\"\"\n    Args:\n        x: (B, H, W, C)\n        window_size (int): window size\n    Returns:\n        windows: (num_windows*B, window_size, window_size, C)\n    \"\"\"\n    B, H, W, C = x.shape\n    x = x.view(B, H // window_size, window_size, W // window_size, window_size, C)\n    windows = x.permute(0, 1, 3, 2, 4, 5).contiguous().view(-1, window_size, window_size, C)\n    return windows\n\n\ndef window_reverse(windows, window_size, H, W):\n    \"\"\"\n    Args:\n        windows: (num_windows*B, window_size, window_size, C)\n        window_size (int): Window size\n        H (int): Height of image\n        W (int): Width of image\n    Returns:\n        x: (B, H, W, C)\n    \"\"\"\n    B = int(windows.shape[0] / (H * W / window_size / window_size))\n    x = windows.view(B, H // window_size, W // window_size, window_size, window_size, -1)\n    x = x.permute(0, 1, 3, 2, 4, 5).contiguous().view(B, H, W, -1)\n    return x\n\n\nclass WindowAttention(nn.Module):\n    \"\"\" Window based multi-head self attention (W-MSA) module with relative position bias.\n    It supports both of shifted and non-shifted window.\n    Args:\n        dim (int): Number of input channels.\n        window_size (tuple[int]): The height and width of the window.\n        num_heads (int): Number of attention heads.\n        qkv_bias (bool, optional):  If True, add a learnable bias to query, key, value. Default: True\n        qk_scale (float | None, optional): Override default qk scale of head_dim ** -0.5 if set\n        attn_drop (float, optional): Dropout ratio of attention weight. Default: 0.0\n        proj_drop (float, optional): Dropout ratio of output. Default: 0.0\n    \"\"\"\n\n    def __init__(self, dim, window_size, num_heads, qkv_bias=True, qk_scale=None, attn_drop=0., proj_drop=0.):\n\n        super().__init__()\n        self.dim = dim\n        self.window_size = window_size  # Wh, Ww\n        self.num_heads = num_heads\n        head_dim = dim // num_heads\n        self.scale = qk_scale or head_dim ** -0.5\n\n        # define a parameter table of relative position bias\n        self.relative_position_bias_table = nn.Parameter(\n            torch.zeros((2 * window_size[0] - 1) * (2 * window_size[1] - 1), num_heads))  # 2*Wh-1 * 2*Ww-1, nH\n\n        # get pair-wise relative position index for each token inside the window\n        coords_h = torch.arange(self.window_size[0])\n        coords_w = torch.arange(self.window_size[1])\n        coords = torch.stack(torch.meshgrid([coords_h, coords_w]))  # 2, Wh, Ww\n        coords_flatten = torch.flatten(coords, 1)  # 2, Wh*Ww\n        relative_coords = coords_flatten[:, :, None] - coords_flatten[:, None, :]  # 2, Wh*Ww, Wh*Ww\n        relative_coords = relative_coords.permute(1, 2, 0).contiguous()  # Wh*Ww, Wh*Ww, 2\n        relative_coords[:, :, 0] += self.window_size[0] - 1  # shift to start from 0\n        relative_coords[:, :, 1] += self.window_size[1] - 1\n        relative_coords[:, :, 0] *= 2 * self.window_size[1] - 1\n        relative_position_index = relative_coords.sum(-1)  # Wh*Ww, Wh*Ww\n        self.register_buffer(\"relative_position_index\", relative_position_index)\n\n        self.qkv = nn.Linear(dim, dim * 3, bias=qkv_bias)\n        self.attn_drop = nn.Dropout(attn_drop)\n        self.proj = nn.Linear(dim, dim)\n        self.proj_drop = nn.Dropout(proj_drop)\n\n        trunc_normal_(self.relative_position_bias_table, std=.02)\n        self.softmax = nn.Softmax(dim=-1)\n\n    def forward(self, x, mask=None):\n        \"\"\" Forward function.\n        Args:\n            x: input features with shape of (num_windows*B, N, C)\n            mask: (0/-inf) mask with shape of (num_windows, Wh*Ww, Wh*Ww) or None\n        \"\"\"\n        B_, N, C = x.shape\n        qkv = self.qkv(x).reshape(B_, N, 3, self.num_heads, C // self.num_heads).permute(2, 0, 3, 1, 4)\n        q, k, v = qkv[0], qkv[1], qkv[2]  # make torchscript happy (cannot use tensor as tuple)\n\n        q = q * self.scale\n        attn = q @ k.transpose(-2, -1)\n\n        relative_position_bias = self.relative_position_bias_table[self.relative_position_index.view(-1)].view(\n            self.window_size[0] * self.window_size[1], self.window_size[0] * self.window_size[1], -1)  # Wh*Ww,Wh*Ww,nH\n        relative_position_bias = relative_position_bias.permute(2, 0, 1).contiguous()  # nH, Wh*Ww, Wh*Ww\n        attn = attn + relative_position_bias.unsqueeze(0)\n\n        if mask is not None:\n            nW = mask.shape[0]\n            attn = attn.view(B_ // nW, nW, self.num_heads, N, N) + mask.unsqueeze(1).unsqueeze(0)\n            attn = attn.view(-1, self.num_heads, N, N)\n            attn = self.softmax(attn)\n        else:\n            attn = self.softmax(attn)\n\n        attn = self.attn_drop(attn)\n\n        x = (attn @ v).transpose(1, 2).reshape(B_, N, C)\n        x = self.proj(x)\n        x = self.proj_drop(x)\n        return x\n\n\nclass SwinTransformerBlock(nn.Module):\n    \"\"\" Swin Transformer Block.\n    Args:\n        dim (int): Number of input channels.\n        num_heads (int): Number of attention heads.\n        window_size (int): Window size.\n        shift_size (int): Shift size for SW-MSA.\n        mlp_ratio (float): Ratio of mlp hidden dim to embedding dim.\n        qkv_bias (bool, optional): If True, add a learnable bias to query, key, value. Default: True\n        qk_scale (float | None, optional): Override default qk scale of head_dim ** -0.5 if set.\n        drop (float, optional): Dropout rate. Default: 0.0\n        attn_drop (float, optional): Attention dropout rate. Default: 0.0\n        drop_path (float, optional): Stochastic depth rate. Default: 0.0\n        act_layer (nn.Module, optional): Activation layer. Default: nn.GELU\n        norm_layer (nn.Module, optional): Normalization layer.  Default: nn.LayerNorm\n    \"\"\"\n\n    def __init__(self, dim, num_heads, window_size=7, shift_size=0,\n                 mlp_ratio=4., qkv_bias=True, qk_scale=None, drop=0., attn_drop=0., drop_path=0.,\n                 act_layer=nn.GELU, norm_layer=nn.LayerNorm):\n        super().__init__()\n        self.dim = dim\n        self.num_heads = num_heads\n        self.window_size = window_size\n        self.shift_size = shift_size\n        self.mlp_ratio = mlp_ratio\n        assert 0 <= self.shift_size < self.window_size, \"shift_size must in 0-window_size\"\n\n        self.norm1 = norm_layer(dim)\n        self.attn = WindowAttention(\n            dim, window_size=to_2tuple(self.window_size), num_heads=num_heads,\n            qkv_bias=qkv_bias, qk_scale=qk_scale, attn_drop=attn_drop, proj_drop=drop)\n\n        self.drop_path = DropPath(drop_path) if drop_path > 0. else nn.Identity()\n        self.norm2 = norm_layer(dim)\n        mlp_hidden_dim = int(dim * mlp_ratio)\n        self.mlp = Mlp(in_features=dim, hidden_features=mlp_hidden_dim, act_layer=act_layer, drop=drop)\n\n        self.H = None\n        self.W = None\n\n    def forward(self, x, mask_matrix):\n        \"\"\" Forward function.\n        Args:\n            x: Input feature, tensor size (B, H*W, C).\n            H, W: Spatial resolution of the input feature.\n            mask_matrix: Attention mask for cyclic shift.\n        \"\"\"\n        B, L, C = x.shape\n        H, W = self.H, self.W\n        assert L == H * W, \"input feature has wrong size\"\n\n        shortcut = x\n        x = self.norm1(x)\n        x = x.view(B, H, W, C)\n\n        # pad feature maps to multiples of window size\n        pad_l = pad_t = 0\n        pad_r = (self.window_size - W % self.window_size) % self.window_size\n        pad_b = (self.window_size - H % self.window_size) % self.window_size\n        x = F.pad(x, (0, 0, pad_l, pad_r, pad_t, pad_b))\n        _, Hp, Wp, _ = x.shape\n\n        # cyclic shift\n        if self.shift_size > 0:\n            shifted_x = torch.roll(x, shifts=(-self.shift_size, -self.shift_size), dims=(1, 2))\n            attn_mask = mask_matrix\n        else:\n            shifted_x = x\n            attn_mask = None\n\n        # partition windows\n        x_windows = window_partition(shifted_x, self.window_size)  # nW*B, window_size, window_size, C\n        x_windows = x_windows.view(-1, self.window_size * self.window_size, C)  # nW*B, window_size*window_size, C\n\n        # W-MSA/SW-MSA\n        attn_windows = self.attn(x_windows, mask=attn_mask)  # nW*B, window_size*window_size, C\n\n        # merge windows\n        attn_windows = attn_windows.view(-1, self.window_size, self.window_size, C)\n        shifted_x = window_reverse(attn_windows, self.window_size, Hp, Wp)  # B H' W' C\n\n        # reverse cyclic shift\n        if self.shift_size > 0:\n            x = torch.roll(shifted_x, shifts=(self.shift_size, self.shift_size), dims=(1, 2))\n        else:\n            x = shifted_x\n\n        if pad_r > 0 or pad_b > 0:\n            x = x[:, :H, :W, :].contiguous()\n\n        x = x.view(B, H * W, C)\n\n        # FFN\n        x = shortcut + self.drop_path(x)\n        x = x + self.drop_path(self.mlp(self.norm2(x)))\n\n        return x\n\n\nclass PatchMerging(nn.Module):\n    \"\"\" Patch Merging Layer\n    Args:\n        dim (int): Number of input channels.\n        norm_layer (nn.Module, optional): Normalization layer.  Default: nn.LayerNorm\n    \"\"\"\n    def __init__(self, dim, norm_layer=nn.LayerNorm):\n        super().__init__()\n        self.dim = dim\n        self.reduction = nn.Linear(4 * dim, 2 * dim, bias=False)\n        self.norm = norm_layer(4 * dim)\n\n    def forward(self, x, H, W):\n        \"\"\" Forward function.\n        Args:\n            x: Input feature, tensor size (B, H*W, C).\n            H, W: Spatial resolution of the input feature.\n        \"\"\"\n        B, L, C = x.shape\n        assert L == H * W, \"input feature has wrong size\"\n\n        x = x.view(B, H, W, C)\n\n        # padding\n        pad_input = (H % 2 == 1) or (W % 2 == 1)\n        if pad_input:\n            x = F.pad(x, (0, 0, 0, W % 2, 0, H % 2))\n\n        x0 = x[:, 0::2, 0::2, :]  # B H/2 W/2 C\n        x1 = x[:, 1::2, 0::2, :]  # B H/2 W/2 C\n        x2 = x[:, 0::2, 1::2, :]  # B H/2 W/2 C\n        x3 = x[:, 1::2, 1::2, :]  # B H/2 W/2 C\n        x = torch.cat([x0, x1, x2, x3], -1)  # B H/2 W/2 4*C\n        x = x.view(B, -1, 4 * C)  # B H/2*W/2 4*C\n\n        x = self.norm(x)\n        x = self.reduction(x)\n\n        return x\n\n\nclass BasicLayer(nn.Module):\n    \"\"\" A basic Swin Transformer layer for one stage.\n    Args:\n        dim (int): Number of feature channels\n        depth (int): Depths of this stage.\n        num_heads (int): Number of attention head.\n        window_size (int): Local window size. Default: 7.\n        mlp_ratio (float): Ratio of mlp hidden dim to embedding dim. Default: 4.\n        qkv_bias (bool, optional): If True, add a learnable bias to query, key, value. Default: True\n        qk_scale (float | None, optional): Override default qk scale of head_dim ** -0.5 if set.\n        drop (float, optional): Dropout rate. Default: 0.0\n        attn_drop (float, optional): Attention dropout rate. Default: 0.0\n        drop_path (float | tuple[float], optional): Stochastic depth rate. Default: 0.0\n        norm_layer (nn.Module, optional): Normalization layer. Default: nn.LayerNorm\n        downsample (nn.Module | None, optional): Downsample layer at the end of the layer. Default: None\n        use_checkpoint (bool): Whether to use checkpointing to save memory. Default: False.\n    \"\"\"\n\n    def __init__(self,\n                 dim,\n                 depth,\n                 num_heads,\n                 window_size=7,\n                 mlp_ratio=4.,\n                 qkv_bias=True,\n                 qk_scale=None,\n                 drop=0.,\n                 attn_drop=0.,\n                 drop_path=0.,\n                 norm_layer=nn.LayerNorm,\n                 downsample=None,\n                 use_checkpoint=False):\n        super().__init__()\n        self.window_size = window_size\n        self.shift_size = window_size // 2\n        self.depth = depth\n        self.use_checkpoint = use_checkpoint\n\n        # build blocks\n        self.blocks = nn.ModuleList([\n            SwinTransformerBlock(\n                dim=dim,\n                num_heads=num_heads,\n                window_size=window_size,\n                shift_size=0 if (i % 2 == 0) else window_size // 2,\n                mlp_ratio=mlp_ratio,\n                qkv_bias=qkv_bias,\n                qk_scale=qk_scale,\n                drop=drop,\n                attn_drop=attn_drop,\n                drop_path=drop_path[i] if isinstance(drop_path, list) else drop_path,\n                norm_layer=norm_layer)\n            for i in range(depth)])\n\n        # patch merging layer\n        if downsample is not None:\n            self.downsample = downsample(dim=dim, norm_layer=norm_layer)\n        else:\n            self.downsample = None\n\n    def forward(self, x, H, W):\n        \"\"\" Forward function.\n        Args:\n            x: Input feature, tensor size (B, H*W, C).\n            H, W: Spatial resolution of the input feature.\n        \"\"\"\n\n        # calculate attention mask for SW-MSA\n        Hp = int(np.ceil(H / self.window_size)) * self.window_size\n        Wp = int(np.ceil(W / self.window_size)) * self.window_size\n        img_mask = torch.zeros((1, Hp, Wp, 1), device=x.device)  # 1 Hp Wp 1\n        h_slices = (slice(0, -self.window_size),\n                    slice(-self.window_size, -self.shift_size),\n                    slice(-self.shift_size, None))\n        w_slices = (slice(0, -self.window_size),\n                    slice(-self.window_size, -self.shift_size),\n                    slice(-self.shift_size, None))\n        cnt = 0\n        for h in h_slices:\n            for w in w_slices:\n                img_mask[:, h, w, :] = cnt\n                cnt += 1\n\n        mask_windows = window_partition(img_mask, self.window_size)  # nW, window_size, window_size, 1\n        mask_windows = mask_windows.view(-1, self.window_size * self.window_size)\n        attn_mask = mask_windows.unsqueeze(1) - mask_windows.unsqueeze(2)\n        attn_mask = attn_mask.masked_fill(attn_mask != 0, float(-100.0)).masked_fill(attn_mask == 0, float(0.0))\n\n        for blk in self.blocks:\n            blk.H, blk.W = H, W\n            if self.use_checkpoint:\n                x = checkpoint.checkpoint(blk, x, attn_mask)\n            else:\n                x = blk(x, attn_mask)\n        if self.downsample is not None:\n            x_down = self.downsample(x, H, W)\n            Wh, Ww = (H + 1) // 2, (W + 1) // 2\n            return x, H, W, x_down, Wh, Ww\n        else:\n            return x, H, W, x, H, W\n\n\nclass PatchEmbed(nn.Module):\n    \"\"\" Image to Patch Embedding\n    Args:\n        patch_size (int): Patch token size. Default: 4.\n        in_chans (int): Number of input image channels. Default: 3.\n        embed_dim (int): Number of linear projection output channels. Default: 96.\n        norm_layer (nn.Module, optional): Normalization layer. Default: None\n    \"\"\"\n\n    def __init__(self, patch_size=4, in_chans=3, embed_dim=96, norm_layer=None):\n        super().__init__()\n        patch_size = to_2tuple(patch_size)\n        self.patch_size = patch_size\n\n        self.in_chans = in_chans\n        self.embed_dim = embed_dim\n\n        self.proj = nn.Conv2d(in_chans, embed_dim, kernel_size=patch_size, stride=patch_size)\n        if norm_layer is not None:\n            self.norm = norm_layer(embed_dim)\n        else:\n            self.norm = None\n\n    def forward(self, x):\n        \"\"\"Forward function.\"\"\"\n        # padding\n        _, _, H, W = x.size()\n        if W % self.patch_size[1] != 0:\n            x = F.pad(x, (0, self.patch_size[1] - W % self.patch_size[1]))\n        if H % self.patch_size[0] != 0:\n            x = F.pad(x, (0, 0, 0, self.patch_size[0] - H % self.patch_size[0]))\n\n        x = self.proj(x)  # B C Wh Ww\n        if self.norm is not None:\n            Wh, Ww = x.size(2), x.size(3)\n            x = x.flatten(2).transpose(1, 2)\n            x = self.norm(x)\n            x = x.transpose(1, 2).view(-1, self.embed_dim, Wh, Ww)\n\n        return x\n\n\nclass SwinTransformer(nn.Module):\n    \"\"\" Swin Transformer backbone.\n        A PyTorch impl of : `Swin Transformer: Hierarchical Vision Transformer using Shifted Windows`  -\n          https://arxiv.org/pdf/2103.14030\n    Args:\n        pretrain_img_size (int): Input image size for training the pretrained model,\n            used in absolute postion embedding. Default 224.\n        patch_size (int | tuple(int)): Patch size. Default: 4.\n        in_chans (int): Number of input image channels. Default: 3.\n        embed_dim (int): Number of linear projection output channels. Default: 96.\n        depths (tuple[int]): Depths of each Swin Transformer stage.\n        num_heads (tuple[int]): Number of attention head of each stage.\n        window_size (int): Window size. Default: 7.\n        mlp_ratio (float): Ratio of mlp hidden dim to embedding dim. Default: 4.\n        qkv_bias (bool): If True, add a learnable bias to query, key, value. Default: True\n        qk_scale (float): Override default qk scale of head_dim ** -0.5 if set.\n        drop_rate (float): Dropout rate.\n        attn_drop_rate (float): Attention dropout rate. Default: 0.\n        drop_path_rate (float): Stochastic depth rate. Default: 0.2.\n        norm_layer (nn.Module): Normalization layer. Default: nn.LayerNorm.\n        ape (bool): If True, add absolute position embedding to the patch embedding. Default: False.\n        patch_norm (bool): If True, add normalization after patch embedding. Default: True.\n        out_indices (Sequence[int]): Output from which stages.\n        frozen_stages (int): Stages to be frozen (stop grad and set eval mode).\n            -1 means not freezing any parameters.\n        use_checkpoint (bool): Whether to use checkpointing to save memory. Default: False.\n    \"\"\"\n\n    def __init__(self,\n                 pretrain_img_size=224,\n                 patch_size=4,\n                 in_chans=3,\n                 embed_dim=96,\n                 depths=[2, 2, 6, 2],\n                 num_heads=[3, 6, 12, 24],\n                 window_size=7,\n                 mlp_ratio=4.,\n                 qkv_bias=True,\n                 qk_scale=None,\n                 drop_rate=0.,\n                 attn_drop_rate=0.,\n                 drop_path_rate=0.2,\n                 norm_layer=nn.LayerNorm,\n                 ape=False,\n                 patch_norm=True,\n                 out_indices=(0, 1, 2, 3),\n                 frozen_stages=-1,\n                 use_checkpoint=False):\n        super().__init__()\n\n        self.pretrain_img_size = pretrain_img_size\n        self.num_layers = len(depths)\n        self.embed_dim = embed_dim\n        self.ape = ape\n        self.patch_norm = patch_norm\n        self.out_indices = out_indices\n        self.frozen_stages = frozen_stages\n\n        # split image into non-overlapping patches\n        self.patch_embed = PatchEmbed(\n            patch_size=patch_size, in_chans=in_chans, embed_dim=embed_dim,\n            norm_layer=norm_layer if self.patch_norm else None)\n\n        # absolute position embedding\n        if self.ape:\n            pretrain_img_size = to_2tuple(pretrain_img_size)\n            patch_size = to_2tuple(patch_size)\n            patches_resolution = [pretrain_img_size[0] // patch_size[0], pretrain_img_size[1] // patch_size[1]]\n\n            self.absolute_pos_embed = nn.Parameter(torch.zeros(1, embed_dim, patches_resolution[0], patches_resolution[1]))\n            trunc_normal_(self.absolute_pos_embed, std=.02)\n\n        self.pos_drop = nn.Dropout(p=drop_rate)\n\n        # stochastic depth\n        dpr = [x.item() for x in torch.linspace(0, drop_path_rate, sum(depths))]  # stochastic depth decay rule\n\n        # build layers\n        self.layers = nn.ModuleList()\n        for i_layer in range(self.num_layers):\n            layer = BasicLayer(\n                dim=int(embed_dim * 2 ** i_layer),\n                depth=depths[i_layer],\n                num_heads=num_heads[i_layer],\n                window_size=window_size,\n                mlp_ratio=mlp_ratio,\n                qkv_bias=qkv_bias,\n                qk_scale=qk_scale,\n                drop=drop_rate,\n                attn_drop=attn_drop_rate,\n                drop_path=dpr[sum(depths[:i_layer]):sum(depths[:i_layer + 1])],\n                norm_layer=norm_layer,\n                downsample=PatchMerging if (i_layer < self.num_layers - 1) else None,\n                use_checkpoint=use_checkpoint)\n            self.layers.append(layer)\n\n        num_features = [int(embed_dim * 2 ** i) for i in range(self.num_layers)]\n        self.num_features = num_features\n\n        # add a norm layer for each output\n        for i_layer in out_indices:\n            layer = norm_layer(num_features[i_layer])\n            layer_name = f'norm{i_layer}'\n            self.add_module(layer_name, layer)\n\n        self._freeze_stages()\n\n    def _freeze_stages(self):\n        if self.frozen_stages >= 0:\n            self.patch_embed.eval()\n            for param in self.patch_embed.parameters():\n                param.requires_grad = False\n\n        if self.frozen_stages >= 1 and self.ape:\n            self.absolute_pos_embed.requires_grad = False\n\n        if self.frozen_stages >= 2:\n            self.pos_drop.eval()\n            for i in range(0, self.frozen_stages - 1):\n                m = self.layers[i]\n                m.eval()\n                for param in m.parameters():\n                    param.requires_grad = False\n\n\n    def forward(self, x):\n\n        x = self.patch_embed(x)\n\n        Wh, Ww = x.size(2), x.size(3)\n        if self.ape:\n            # interpolate the position embedding to the corresponding size\n            absolute_pos_embed = F.interpolate(self.absolute_pos_embed, size=(Wh, Ww), mode='bicubic')\n            x = x + absolute_pos_embed # B Wh*Ww C\n\n        outs = [x.contiguous()]\n        x = x.flatten(2).transpose(1, 2)\n        x = self.pos_drop(x)\n\n\n        for i in range(self.num_layers):\n            layer = self.layers[i]\n            x_out, H, W, x, Wh, Ww = layer(x, Wh, Ww)\n\n\n            if i in self.out_indices:\n                norm_layer = getattr(self, f'norm{i}')\n                x_out = norm_layer(x_out)\n\n                out = x_out.view(-1, H, W, self.num_features[i]).permute(0, 3, 1, 2).contiguous()\n                outs.append(out)\n\n\n\n        return tuple(outs)\n\n\n\n\n\n\n\n\ndef get_activation_fn(activation):\n    \"\"\"Return an activation function given a string\"\"\"\n    if activation == \"gelu\":\n        return F.gelu\n\n    raise RuntimeError(F\"activation should be gelu, not {activation}.\")\n\n\ndef make_cbr(in_dim, out_dim):\n    return nn.Sequential(nn.Conv2d(in_dim, out_dim, kernel_size=3, padding=1), nn.InstanceNorm2d(out_dim), nn.GELU())\n\n\ndef make_cbg(in_dim, out_dim):\n    return nn.Sequential(nn.Conv2d(in_dim, out_dim, kernel_size=3, padding=1), nn.InstanceNorm2d(out_dim), nn.GELU())\n\n\ndef rescale_to(x, scale_factor: float = 2, interpolation='nearest'):\n    return F.interpolate(x, scale_factor=scale_factor, mode=interpolation)\n\n\ndef resize_as(x, y, interpolation='bilinear'):\n    return F.interpolate(x, size=y.shape[-2:], mode=interpolation)\n\n\ndef image2patches(x):\n    \"\"\"b c (hg h) (wg w) -> (hg wg b) c h w\"\"\"\n    x = rearrange(x, 'b c (hg h) (wg w) -> (hg wg b) c h w', hg=2, wg=2 )\n    return x\n\n\ndef patches2image(x):\n    \"\"\"(hg wg b) c h w -> b c (hg h) (wg w)\"\"\"\n    x = rearrange(x, '(hg wg b) c h w -> b c (hg h) (wg w)', hg=2, wg=2)\n    return x\n\n\n\nclass PositionEmbeddingSine:\n    def __init__(self, num_pos_feats=64, temperature=10000, normalize=False, scale=None):\n        super().__init__()\n        self.num_pos_feats = num_pos_feats\n        self.temperature = temperature\n        self.normalize = normalize\n        if scale is not None and normalize is False:\n            raise ValueError(\"normalize should be True if scale is passed\")\n        if scale is None:\n            scale = 2 * math.pi\n        self.scale = scale\n        self.dim_t = torch.arange(0, self.num_pos_feats, dtype=torch.float32)\n\n    def __call__(self, b, h, w):\n        device = self.dim_t.device\n        mask = torch.zeros([b, h, w], dtype=torch.bool, device=device)\n        assert mask is not None\n        not_mask = ~mask\n        y_embed = not_mask.cumsum(dim=1, dtype=torch.float32)\n        x_embed = not_mask.cumsum(dim=2, dtype=torch.float32)\n        if self.normalize:\n            eps = 1e-6\n            y_embed = (y_embed - 0.5) / (y_embed[:, -1:, :] + eps) * self.scale\n            x_embed = (x_embed - 0.5) / (x_embed[:, :, -1:] + eps) * self.scale\n\n        dim_t = self.temperature ** (2 * (self.dim_t.to(device) // 2) / self.num_pos_feats)\n        pos_x = x_embed[:, :, :, None] / dim_t\n        pos_y = y_embed[:, :, :, None] / dim_t\n\n        pos_x = torch.stack((pos_x[:, :, :, 0::2].sin(), pos_x[:, :, :, 1::2].cos()), dim=4).flatten(3)\n        pos_y = torch.stack((pos_y[:, :, :, 0::2].sin(), pos_y[:, :, :, 1::2].cos()), dim=4).flatten(3)\n\n        return torch.cat((pos_y, pos_x), dim=3).permute(0, 3, 1, 2)\n\n\n\nclass MCLM(nn.Module):\n    def __init__(self, d_model, num_heads, pool_ratios=[1, 4, 8]):\n        super(MCLM, self).__init__()\n        self.attention = nn.ModuleList([\n            nn.MultiheadAttention(d_model, num_heads, dropout=0.1),\n            nn.MultiheadAttention(d_model, num_heads, dropout=0.1),\n            nn.MultiheadAttention(d_model, num_heads, dropout=0.1),\n            nn.MultiheadAttention(d_model, num_heads, dropout=0.1),\n            nn.MultiheadAttention(d_model, num_heads, dropout=0.1)\n        ])\n\n        self.linear1 = nn.Linear(d_model, d_model * 2)\n        self.linear2 = nn.Linear(d_model * 2, d_model)\n        self.linear3 = nn.Linear(d_model, d_model * 2)\n        self.linear4 = nn.Linear(d_model * 2, d_model)\n        self.norm1 = nn.LayerNorm(d_model)\n        self.norm2 = nn.LayerNorm(d_model)\n        self.dropout = nn.Dropout(0.1)\n        self.dropout1 = nn.Dropout(0.1)\n        self.dropout2 = nn.Dropout(0.1)\n        self.activation = get_activation_fn('gelu')\n        self.pool_ratios = pool_ratios\n        self.p_poses = []\n        self.g_pos = None\n        self.positional_encoding = PositionEmbeddingSine(num_pos_feats=d_model // 2, normalize=True)\n\n    def forward(self, l, g):\n        \"\"\"\n        l: 4,c,h,w\n        g: 1,c,h,w\n        \"\"\"\n        self.p_poses = []\n        self.g_pos = None\n        _b, _c, h, w = l.size()\n        # 4,c,h,w -> 1,c,2h,2w\n        concated_locs = rearrange(l, '(hg wg b) c h w -> b c (hg h) (wg w)', hg=2, wg=2)\n\n        pools = []\n        for pool_ratio in self.pool_ratios:\n             # b,c,h,w\n            tgt_hw = (round(h / pool_ratio), round(w / pool_ratio))\n            pool = F.adaptive_avg_pool2d(concated_locs, tgt_hw)\n            pools.append(rearrange(pool, 'b c h w -> (h w) b c'))\n            if self.g_pos is None:\n                pos_emb = self.positional_encoding(pool.shape[0], pool.shape[2], pool.shape[3])\n                pos_emb = rearrange(pos_emb, 'b c h w -> (h w) b c')\n                self.p_poses.append(pos_emb)\n        pools = torch.cat(pools, 0)\n        if self.g_pos is None:\n            self.p_poses = torch.cat(self.p_poses, dim=0)\n            pos_emb = self.positional_encoding(g.shape[0], g.shape[2], g.shape[3])\n            self.g_pos = rearrange(pos_emb, 'b c h w -> (h w) b c')\n\n        device = pools.device\n        self.p_poses = self.p_poses.to(device)\n        self.g_pos = self.g_pos.to(device)\n\n\n        # attention between glb (q) & multisensory concated-locs (k,v)\n        g_hw_b_c = rearrange(g, 'b c h w -> (h w) b c')\n\n\n        g_hw_b_c = g_hw_b_c + self.dropout1(self.attention[0](g_hw_b_c + self.g_pos, pools + self.p_poses, pools)[0])\n        g_hw_b_c = self.norm1(g_hw_b_c)\n        g_hw_b_c = g_hw_b_c + self.dropout2(self.linear2(self.dropout(self.activation(self.linear1(g_hw_b_c)).clone())))\n        g_hw_b_c = self.norm2(g_hw_b_c)\n\n        # attention between origin locs (q) & freashed glb (k,v)\n        l_hw_b_c = rearrange(l, \"b c h w -> (h w) b c\")\n        _g_hw_b_c = rearrange(g_hw_b_c, '(h w) b c -> h w b c', h=h, w=w)\n        _g_hw_b_c = rearrange(_g_hw_b_c, \"(ng h) (nw w) b c -> (h w) (ng nw b) c\", ng=2, nw=2)\n        outputs_re = []\n        for i, (_l, _g) in enumerate(zip(l_hw_b_c.chunk(4, dim=1), _g_hw_b_c.chunk(4, dim=1))):\n            outputs_re.append(self.attention[i + 1](_l, _g, _g)[0])  # (h w) 1 c\n        outputs_re = torch.cat(outputs_re, 1)  # (h w) 4 c\n\n        l_hw_b_c = l_hw_b_c + self.dropout1(outputs_re)\n        l_hw_b_c = self.norm1(l_hw_b_c)\n        l_hw_b_c = l_hw_b_c + self.dropout2(self.linear4(self.dropout(self.activation(self.linear3(l_hw_b_c)).clone())))\n        l_hw_b_c = self.norm2(l_hw_b_c)\n\n        l = torch.cat((l_hw_b_c, g_hw_b_c), 1)  # hw,b(5),c\n        return rearrange(l, \"(h w) b c -> b c h w\", h=h, w=w)  ## (5,c,h*w)\n\n\n\n\n\n\n\n\n\nclass MCRM(nn.Module):\n    def __init__(self, d_model, num_heads, pool_ratios=[4, 8, 16], h=None): # pylint: disable=unused-argument\n        super(MCRM, self).__init__()\n        self.attention = nn.ModuleList([\n            nn.MultiheadAttention(d_model, num_heads, dropout=0.1),\n            nn.MultiheadAttention(d_model, num_heads, dropout=0.1),\n            nn.MultiheadAttention(d_model, num_heads, dropout=0.1),\n            nn.MultiheadAttention(d_model, num_heads, dropout=0.1)\n        ])\n        self.linear3 = nn.Linear(d_model, d_model * 2)\n        self.linear4 = nn.Linear(d_model * 2, d_model)\n        self.norm1 = nn.LayerNorm(d_model)\n        self.norm2 = nn.LayerNorm(d_model)\n        self.dropout = nn.Dropout(0.1)\n        self.dropout1 = nn.Dropout(0.1)\n        self.dropout2 = nn.Dropout(0.1)\n        self.sigmoid = nn.Sigmoid()\n        self.activation = get_activation_fn('gelu')\n        self.sal_conv = nn.Conv2d(d_model, 1, 1)\n        self.pool_ratios = pool_ratios\n\n    def forward(self, x):\n        # device = x.device\n        _b, c, h, w = x.size()\n        loc, glb = x.split([4, 1], dim=0)  # 4,c,h,w; 1,c,h,w\n\n        patched_glb = rearrange(glb, 'b c (hg h) (wg w) -> (hg wg b) c h w', hg=2, wg=2)\n\n        token_attention_map = self.sigmoid(self.sal_conv(glb))\n        token_attention_map = F.interpolate(token_attention_map, size=patches2image(loc).shape[-2:], mode='nearest')\n        loc = loc * rearrange(token_attention_map, 'b c (hg h) (wg w) -> (hg wg b) c h w', hg=2, wg=2)\n\n        pools = []\n        for pool_ratio in self.pool_ratios:\n            tgt_hw = (round(h / pool_ratio), round(w / pool_ratio))\n            pool = F.adaptive_avg_pool2d(patched_glb, tgt_hw)\n            pools.append(rearrange(pool, 'nl c h w -> nl c (h w)'))  # nl(4),c,hw\n\n        pools = rearrange(torch.cat(pools, 2), \"nl c nphw -> nl nphw 1 c\")\n        loc_ = rearrange(loc, 'nl c h w -> nl (h w) 1 c')\n\n        outputs = []\n        for i, q in enumerate(loc_.unbind(dim=0)):  # traverse all local patches\n            v = pools[i]\n            k = v\n            outputs.append(self.attention[i](q, k, v)[0])\n\n        outputs = torch.cat(outputs, 1)\n        src = loc.view(4, c, -1).permute(2, 0, 1) + self.dropout1(outputs)\n        src = self.norm1(src)\n        src = src + self.dropout2(self.linear4(self.dropout(self.activation(self.linear3(src)).clone())))\n        src = self.norm2(src)\n        src = src.permute(1, 2, 0).reshape(4, c, h, w)  # freshed loc\n        glb = glb + F.interpolate(patches2image(src), size=glb.shape[-2:], mode='nearest')  # freshed glb\n\n        return torch.cat((src, glb), 0), token_attention_map\n\n\n\nclass BEN_Base(nn.Module):\n    def __init__(self):\n        super().__init__()\n\n        self.backbone = SwinTransformer(embed_dim=128, depths=[2, 2, 18, 2], num_heads=[4, 8, 16, 32], window_size=12)\n        emb_dim = 128\n        self.sideout5 = nn.Sequential(nn.Conv2d(emb_dim, 1, kernel_size=3, padding=1))\n        self.sideout4 = nn.Sequential(nn.Conv2d(emb_dim, 1, kernel_size=3, padding=1))\n        self.sideout3 = nn.Sequential(nn.Conv2d(emb_dim, 1, kernel_size=3, padding=1))\n        self.sideout2 = nn.Sequential(nn.Conv2d(emb_dim, 1, kernel_size=3, padding=1))\n        self.sideout1 = nn.Sequential(nn.Conv2d(emb_dim, 1, kernel_size=3, padding=1))\n\n        self.output5 = make_cbr(1024, emb_dim)\n        self.output4 = make_cbr(512, emb_dim)\n        self.output3 = make_cbr(256, emb_dim)\n        self.output2 = make_cbr(128, emb_dim)\n        self.output1 = make_cbr(128, emb_dim)\n\n        self.multifieldcrossatt = MCLM(emb_dim, 1, [1, 4, 8])\n        self.conv1 = make_cbr(emb_dim, emb_dim)\n        self.conv2 = make_cbr(emb_dim, emb_dim)\n        self.conv3 = make_cbr(emb_dim, emb_dim)\n        self.conv4 = make_cbr(emb_dim, emb_dim)\n        self.dec_blk1 = MCRM(emb_dim, 1, [2, 4, 8])\n        self.dec_blk2 = MCRM(emb_dim, 1, [2, 4, 8])\n        self.dec_blk3 = MCRM(emb_dim, 1, [2, 4, 8])\n        self.dec_blk4 = MCRM(emb_dim, 1, [2, 4, 8])\n\n        self.insmask_head = nn.Sequential(\n            nn.Conv2d(emb_dim, 384, kernel_size=3, padding=1),\n            nn.InstanceNorm2d(384),\n            nn.GELU(),\n            nn.Conv2d(384, 384, kernel_size=3, padding=1),\n            nn.InstanceNorm2d(384),\n            nn.GELU(),\n            nn.Conv2d(384, emb_dim, kernel_size=3, padding=1)\n        )\n\n        self.shallow = nn.Sequential(nn.Conv2d(3, emb_dim, kernel_size=3, padding=1))\n        self.upsample1 = make_cbg(emb_dim, emb_dim)\n        self.upsample2 = make_cbg(emb_dim, emb_dim)\n        self.output = nn.Sequential(nn.Conv2d(emb_dim, 1, kernel_size=3, padding=1))\n\n        for m in self.modules():\n            if isinstance(m, nn.GELU) or isinstance(m, nn.Dropout):\n                m.inplace = True\n\n\n    @torch.inference_mode()\n    @torch.autocast(device_type=\"cuda\",dtype=torch.float16)\n    def forward(self, x):\n        real_batch = x.size(0)\n\n        shallow_batch = self.shallow(x)\n        glb_batch = rescale_to(x, scale_factor=0.5, interpolation='bilinear')\n\n\n\n        final_input = None\n        for i in range(real_batch):\n            start = i * 4\n            end   = (i + 1) * 4\n            loc_batch = image2patches(x[i,:,:,:].unsqueeze(dim=0))\n            input_ = torch.cat((loc_batch, glb_batch[i,:,:,:].unsqueeze(dim=0)), dim=0)\n            if final_input is None:\n                final_input= input_\n            else:\n                final_input = torch.cat((final_input, input_), dim=0)\n\n        features = self.backbone(final_input)\n        outputs = []\n        for i in range(real_batch):\n\n            start = i * 5\n            end   = (i + 1) * 5\n            f4 = features[4][start:end, :, :, :]  # shape: [5, C, H, W]\n            f3 = features[3][start:end, :, :, :]\n            f2 = features[2][start:end, :, :, :]\n            f1 = features[1][start:end, :, :, :]\n            f0 = features[0][start:end, :, :, :]\n            e5 = self.output5(f4)\n            e4 = self.output4(f3)\n            e3 = self.output3(f2)\n            e2 = self.output2(f1)\n            e1 = self.output1(f0)\n            loc_e5, glb_e5 = e5.split([4, 1], dim=0)\n            e5 = self.multifieldcrossatt(loc_e5, glb_e5)  # (4,128,16,16)\n\n\n            e4, _tokenattmap4 = self.dec_blk4(e4 + resize_as(e5, e4))\n            e4 = self.conv4(e4)\n            e3, _tokenattmap3 = self.dec_blk3(e3 + resize_as(e4, e3))\n            e3 = self.conv3(e3)\n            e2, _tokenattmap2 = self.dec_blk2(e2 + resize_as(e3, e2))\n            e2 = self.conv2(e2)\n            e1, _tokenattmap1 = self.dec_blk1(e1 + resize_as(e2, e1))\n            e1 = self.conv1(e1)\n\n            loc_e1, glb_e1 = e1.split([4, 1], dim=0)\n\n            output1_cat = patches2image(loc_e1)  # (1,128,256,256)\n\n            # add glb feat in\n            output1_cat = output1_cat + resize_as(glb_e1, output1_cat)\n            # merge\n            final_output = self.insmask_head(output1_cat)  # (1,128,256,256)\n            # shallow feature merge\n            shallow = shallow_batch[i,:,:,:].unsqueeze(dim=0)\n            final_output = final_output + resize_as(shallow, final_output)\n            final_output = self.upsample1(rescale_to(final_output))\n            final_output = rescale_to(final_output + resize_as(shallow, final_output))\n            final_output = self.upsample2(final_output)\n            final_output = self.output(final_output)\n            mask = final_output.sigmoid()\n            outputs.append(mask)\n\n        return torch.cat(outputs, dim=0)\n\n\n    def loadcheckpoints(self,model_path):\n        model_dict = torch.load(model_path, map_location=\"cpu\", weights_only=True)\n        self.load_state_dict(model_dict['model_state_dict'], strict=True)\n        del model_path\n\n    def inference(self,image,refine_foreground=False):\n        # image = ImageOps.exif_transpose(image)\n        if isinstance(image, Image.Image):\n            image, h, w,original_image =  rgb_loader_refiner(image)\n            if torch.cuda.is_available():\n\n                img_tensor = img_transform(image).unsqueeze(0).to(next(self.parameters()).device)\n            else:\n                img_tensor = img_transform32(image).unsqueeze(0).to(next(self.parameters()).device)\n\n            with torch.no_grad():\n                res = self.forward(img_tensor)\n\n            # Show Results\n            if refine_foreground:\n\n                pred_pil = transforms.ToPILImage()(res.squeeze())\n                image_masked = refine_foreground_process(original_image, pred_pil)\n                image_masked.putalpha(pred_pil.resize(original_image.size))\n                return image_masked\n\n            else:\n                alpha = postprocess_image(res, im_size=[w,h])\n                pred_pil = transforms.ToPILImage()(alpha)\n                mask = pred_pil.resize(original_image.size)\n                original_image.putalpha(mask)\n                # mask = Image.fromarray(alpha)\n\n                return original_image\n\n\n        else:\n            foregrounds = []\n            for batch in image:\n                image, h, w,original_image =  rgb_loader_refiner(batch)\n                if torch.cuda.is_available():\n\n                    img_tensor = img_transform(image).unsqueeze(0).to(next(self.parameters()).device)\n                else:\n                    img_tensor = img_transform32(image).unsqueeze(0).to(next(self.parameters()).device)\n\n                with torch.no_grad():\n                    res = self.forward(img_tensor)\n\n                if refine_foreground:\n\n                    pred_pil = transforms.ToPILImage()(res.squeeze())\n                    image_masked = refine_foreground_process(original_image, pred_pil)\n                    image_masked.putalpha(pred_pil.resize(original_image.size))\n\n                    foregrounds.append(image_masked)\n                else:\n                    alpha = postprocess_image(res, im_size=[w,h])\n                    pred_pil = transforms.ToPILImage()(alpha)\n                    mask = pred_pil.resize(original_image.size)\n                    original_image.putalpha(mask)\n                    # mask = Image.fromarray(alpha)\n                    foregrounds.append(original_image)\n\n            return foregrounds\n\n\n\n\n    def segment_video(self, video_path, output_path=\"./\", fps=0, refine_foreground=False, batch=1, print_frames_processed=True, webm = False, rgb_value= (0, 255, 0)):\n        \"\"\"\n        Segments the given video to extract the foreground (with alpha) from each frame\n        and saves the result as either a WebM video (with alpha channel) or MP4 (with a\n        color background).\n\n        Args:\n            video_path (str):\n                Path to the input video file.\n\n            output_path (str, optional):\n                Directory (or full path) where the output video and/or files will be saved.\n                Defaults to \"./\".\n\n            fps (int, optional):\n                The frames per second (FPS) to use for the output video. If 0 (default), the\n                original FPS of the input video is used. Otherwise, overrides it.\n\n            refine_foreground (bool, optional):\n                Whether to run an additional “refine foreground” process on each frame.\n                Defaults to False.\n\n            batch (int, optional):\n                Number of frames to process at once (inference batch size). Large batch sizes\n                may require more GPU memory. Defaults to 1.\n\n            print_frames_processed (bool, optional):\n                If True (default), prints progress (how many frames have been processed) to\n                the console.\n\n            webm (bool, optional):\n                If True (default), exports a WebM video with alpha channel (VP9 / yuva420p).\n                If False, exports an MP4 video composited over a solid color background.\n\n            rgb_value (tuple, optional):\n                The RGB background color (e.g., green screen) used to composite frames when\n                saving to MP4. Defaults to (0, 255, 0).\n\n        Returns:\n            None. Writes the output video(s) to disk in the specified format.\n        \"\"\"\n        cap = cv2.VideoCapture(video_path)\n        if not cap.isOpened():\n            raise IOError(f\"Cannot open video: {video_path}\")\n\n        original_fps = cap.get(cv2.CAP_PROPFPS)\n        original_fps = 30 if original_fps == 0 else original_fps\n        fps = original_fps if fps == 0 else fps\n\n        ret, first_frame = cap.read()\n        if not ret:\n            raise ValueError(\"No frames found in the video.\")\n        _height, _width = first_frame.shape[:2]\n        cap.set(cv2.CAP_PROP_POSFRAMES, 0)\n\n        foregrounds = []\n        frame_idx = 0\n        processed_count = 0\n        batch_frames = []\n        total_frames = int(cap.get(cv2.CAP_PROPFRAME_COUNT))\n\n        while True:\n            ret, frame = cap.read()\n            if not ret:\n                if batch_frames:\n                    batch_results = self.inference(batch_frames, refine_foreground)\n                    if isinstance(batch_results, Image.Image):\n                        foregrounds.append(batch_results)\n                    else:\n                        foregrounds.extend(batch_results)\n                    if print_frames_processed:\n                        print(f\"Processed frames {frame_idx-len(batch_frames)+1} to {frame_idx} of {total_frames}\")\n                break\n\n            # Process every frame instead of using intervals\n            frame_rgb = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)\n            pil_frame = Image.fromarray(frame_rgb)\n            batch_frames.append(pil_frame)\n            if len(batch_frames) == batch:\n                batch_results = self.inference(batch_frames, refine_foreground)\n                if isinstance(batch_results, Image.Image):\n                    foregrounds.append(batch_results)\n                else:\n                    foregrounds.extend(batch_results)\n                if print_frames_processed:\n                    print(f\"Processed frames {frame_idx-batch+1} to {frame_idx} of {total_frames}\")\n                batch_frames = []\n                processed_count += batch\n\n            frame_idx += 1\n\n\n        if webm:\n            alpha_webm_path = os.path.join(output_path, \"foreground.webm\")\n            pil_images_to_webm_alpha(foregrounds, alpha_webm_path, fps=original_fps)\n\n        else:\n            cap.release()\n            fg_output = os.path.join(output_path, 'foreground.mp4')\n            pil_images_to_mp4(foregrounds, fg_output, fps=original_fps,rgb_value=rgb_value)\n            cv2.destroyAllWindows()\n            try:\n                fg_audio_output = os.path.join(output_path, 'foreground_output_with_audio.mp4')\n                add_audio_to_video(fg_output, video_path, fg_audio_output)\n            except Exception as e:\n                print(\"No audio found in the original video\")\n                print(e)\n\n\ndef rgb_loader_refiner( original_image):\n    h, w = original_image.size\n    image = original_image\n    # Convert to RGB if necessary\n    if image.mode != 'RGB':\n        image = image.convert('RGB')\n    # Resize the image\n    image = image.resize((1024, 1024), resample=Image.Resampling.LANCZOS)\n    return image.convert('RGB'), h, w,original_image\n\n\n# Define the image transformation\nimg_transform = transforms.Compose([\n    transforms.ToTensor(),\n    transforms.ConvertImageDtype(torch.float16),\n    transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])\n])\n\nimg_transform32 = transforms.Compose([\n    transforms.ToTensor(),\n    transforms.ConvertImageDtype(torch.float32),\n    transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])\n])\n\n\ndef pil_images_to_mp4(images, output_path, fps=24, rgb_value=(0, 255, 0)):\n    \"\"\"\n    Converts an array of PIL images to an MP4 video.\n    Args:\n        images: List of PIL images\n        output_path: Path to save the MP4 file\n        fps: Frames per second (default: 24)\n        rgb_value: Background RGB color tuple (default: green (0, 255, 0))\n    \"\"\"\n    if not images:\n        raise ValueError(\"No images provided to convert to MP4.\")\n\n    width, height = images[0].size\n    fourcc = cv2.VideoWriter_fourcc(*'mp4v')\n    video_writer = cv2.VideoWriter(output_path, fourcc, fps, (width, height))\n\n    for image in images:\n        # If image has alpha channel, composite onto the specified background color\n        if image.mode == 'RGBA':\n            # Create background image with specified RGB color\n            background = Image.new('RGB', image.size, rgb_value)\n            background = background.convert('RGBA')\n            # Composite the image onto the background\n            image = Image.alpha_composite(background, image)\n            image = image.convert('RGB')\n        else:\n            # Ensure RGB format for non-alpha images\n            image = image.convert('RGB')\n\n        # Convert to OpenCV format and write\n        open_cv_image = cv2.cvtColor(np.array(image), cv2.COLOR_RGB2BGR)\n        video_writer.write(open_cv_image)\n    video_writer.release()\n\ndef pil_images_to_webm_alpha(images, output_path, fps=30):\n    \"\"\"\n    Converts a list of PIL RGBA images to a VP9 .webm video with alpha channel.\n\n    NOTE: Not all players will display alpha in WebM.\n          Browsers like Chrome/Firefox typically do support VP9 alpha.\n    \"\"\"\n    if not images:\n        raise ValueError(\"No images provided for WebM with alpha.\")\n\n    # Ensure output directory exists\n    os.makedirs(os.path.dirname(output_path), exist_ok=True)\n\n    with tempfile.TemporaryDirectory() as tmpdir:\n        # Save frames as PNG (with alpha)\n        for idx, img in enumerate(images):\n            if img.mode != \"RGBA\":\n                img = img.convert(\"RGBA\")\n            out_path = os.path.join(tmpdir, f\"{idx:06d}.png\")\n            img.save(out_path, \"PNG\")\n\n        # Construct ffmpeg command\n        # -c:v libvpx-vp9 => VP9 encoder\n        # -pix_fmt yuva420p => alpha-enabled pixel format\n        # -auto-alt-ref 0 => helps preserve alpha frames (libvpx quirk)\n        ffmpeg_cmd = [\n            \"ffmpeg\", \"-y\",\n            \"-framerate\", str(fps),\n            \"-i\", os.path.join(tmpdir, \"%06d.png\"),\n            \"-c:v\", \"libvpx-vp9\",\n            \"-pix_fmt\", \"yuva420p\",\n            \"-auto-alt-ref\", \"0\",\n            output_path\n        ]\n\n        subprocess.run(ffmpeg_cmd, check=True)\n\n    print(f\"WebM with alpha saved to {output_path}\")\n\ndef add_audio_to_video(video_without_audio_path, original_video_path, output_path):\n    \"\"\"\n    Check if the original video has an audio stream. If yes, add it. If not, skip.\n    \"\"\"\n    # 1) Probe original video for audio streams\n    probe_command = [\n        'ffprobe', '-v', 'error',\n        '-select_streams', 'a:0',\n        '-show_entries', 'stream=index',\n        '-of', 'csv=p=0',\n        original_video_path\n    ]\n    result = subprocess.run(probe_command, stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True, check=False)\n\n    # result.stdout is empty if no audio stream found\n    if not result.stdout.strip():\n        print(\"No audio track found in original video, skipping audio addition.\")\n        return\n    print(\"Audio track detected; proceeding to mux audio.\")\n    # 2) If audio found, run ffmpeg to add it\n    command = [\n        'ffmpeg', '-y',\n        '-i', video_without_audio_path,\n        '-i', original_video_path,\n        '-c', 'copy',\n        '-map', '0:v:0',\n        '-map', '1:a:0',  # we know there's an audio track now\n        output_path\n    ]\n    subprocess.run(command, check=True)\n    print(f\"Audio added successfully => {output_path}\")\n\n\n### Thanks to the source: https://huggingface.co/ZhengPeng7/BiRefNet/blob/main/handler.py\ndef refine_foreground_process(image, mask, r=90):\n    if mask.size != image.size:\n        mask = mask.resize(image.size)\n    image = np.array(image) / 255.0\n    mask = np.array(mask) / 255.0\n    estimated_foreground = FB_blur_fusion_foreground_estimator_2(image, mask, r=r)\n    image_masked = Image.fromarray((estimated_foreground * 255.0).astype(np.uint8))\n    return image_masked\n\n\ndef FB_blur_fusion_foreground_estimator_2(image, alpha, r=90):\n    # Thanks to the source: https://github.com/Photoroom/fast-foreground-estimation\n    alpha = alpha[:, :, None]\n    F, blur_B = FB_blur_fusion_foreground_estimator(image, image, image, alpha, r)\n    return FB_blur_fusion_foreground_estimator(image, F, blur_B, alpha, r=6)[0]\n\n\ndef FB_blur_fusion_foreground_estimator(image, F, B, alpha, r=90):\n    if isinstance(image, Image.Image):\n        image = np.array(image) / 255.0\n    blurred_alpha = cv2.blur(alpha, (r, r))[:, :, None]\n\n    blurredFA = cv2.blur(F * alpha, (r, r))\n    blurredF = blurredFA / (blurred_alpha + 1e-5)\n\n    blurred_B1A = cv2.blur(B * (1 - alpha), (r, r))\n    blurred_B = blurred_B1A / ((1 - blurred_alpha) + 1e-5)\n    F = blurredF + alpha * \\\n        (image - alpha * blurredF - (1 - alpha) * blurred_B)\n    F = np.clip(F, 0, 1)\n    return F, blurred_B\n\n\ndef postprocess_image(result: torch.Tensor, im_size: list) -> np.ndarray:\n    result = torch.squeeze(F.interpolate(result, size=im_size, mode='bilinear'), 0)\n    ma = torch.max(result)\n    mi = torch.min(result)\n    result = (result - mi) / (ma - mi)\n    im_array = (result * 255).permute(1, 2, 0).cpu().data.numpy().astype(np.uint8)\n    im_array = np.squeeze(im_array)\n    return im_array\n"
  },
  {
    "path": "modules/cachedit.py",
    "content": "import os\nfrom installer import install\nfrom modules import shared\n\n\ndef apply_cache_dit(pipe):\n    if not shared.opts.cache_dit_enabled:\n        return\n    install('git+https://github.com/vipshop/cache-dit', 'cache_dit')\n    os.environ.setdefault(\"CACHE_DIT_LOG_LEVEL\", \"error\")\n    try:\n        import cache_dit\n    except Exception as e:\n        shared.log.error(f'Cache-DIT: {e}')\n        return\n    _, supported = cache_dit.supported_pipelines()\n    supported = [s.replace('*', '') for s in supported]\n    if not any(pipe.__class__.__name__.startswith(s) for s in supported):\n        shared.log.error(f'Cache-DiT: pipeline={pipe.__class__.__name__} unsupported')\n        return\n\n    if getattr(pipe, 'has_cache_dit', False):\n        unapply_cache_dir(pipe)\n\n    config_args = {}\n    if shared.opts.cache_dit_fcompute >= 0:\n        config_args['Fn_compute_blocks'] = int(shared.opts.cache_dit_fcompute)\n    if shared.opts.cache_dit_bcompute >= 0:\n        config_args['Bn_compute_blocks'] = int(shared.opts.cache_dit_bcompute)\n    if shared.opts.cache_dit_threshold >= 0:\n        config_args['residual_diff_threshold'] = float(shared.opts.cache_dit_threshold)\n    if shared.opts.cache_dit_warmup >= 0:\n        config_args['max_warmup_steps'] = int(shared.opts.cache_dit_warmup)\n    cache_config = cache_dit.BasicCacheConfig(**config_args)\n    if shared.opts.cache_dit_calibrator == \"TaylorSeer\":\n        calibrator_config = cache_dit.TaylorSeerCalibratorConfig(taylorseer_order=1)\n    elif shared.opts.cache_dit_calibrator == \"FoCa\":\n        calibrator_config = cache_dit.FoCaCalibratorConfig()\n    else:\n        calibrator_config = None\n    shared.log.info(f'Apply Cache-DiT: config=\"{cache_config.strify()}\" calibrator=\"{calibrator_config.strify() if calibrator_config else \"None\"}\"')\n    try:\n        cache_dit.enable_cache(\n            pipe,\n            cache_config=cache_config,\n            calibrator_config=calibrator_config,\n        )\n        shared.sd_model.has_cache_dit = True\n    except Exception as e:\n        shared.log.error(f'Cache-DiT: {e}')\n        return\n\n\ndef unapply_cache_dir(pipe):\n    if not shared.opts.cache_dit_enabled or not getattr(pipe, 'has_cache_dit', False):\n        return\n    try:\n        import cache_dit\n        # stats = cache_dit.summary(pipe)\n        # shared.log.critical(f'Unapply Cache-DiT: {stats}')\n        cache_dit.disable_cache(pipe)\n        pipe.has_cache_dit = False\n    except Exception:\n        return\n"
  },
  {
    "path": "modules/call_queue.py",
    "content": "import os\nimport sys\nimport html\nimport threading\nimport time\nimport cProfile\nfrom modules import shared, progress, errors, timer\n\n\nqueue_lock = threading.Lock()\ndebug = os.environ.get('SD_QUEUE_DEBUG', None) is not None\n\n\ndef get_lock():\n    if debug:\n        fn = f'{sys._getframe(3).f_code.co_name}:{sys._getframe(2).f_code.co_name}:{sys._getframe(1).f_code.co_name}' # pylint: disable=protected-access\n        errors.log.debug(f'Queue: fn={fn} lock={queue_lock.locked()}')\n    return queue_lock\n\n\ndef wrap_queued_call(func):\n    def f(*args, **kwargs):\n        with get_lock():\n            res = func(*args, **kwargs)\n        return res\n    return f\n\n\ndef wrap_gradio_gpu_call(func, extra_outputs=None, name=None):\n    name = name or func.__name__\n    def f(*args, **kwargs):\n        # if the first argument is a string that says \"task(...)\", it is treated as a job id\n        if len(args) > 0 and type(args[0]) == str and args[0][0:5] == \"task(\" and args[0][-1] == \")\":\n            id_task = args[0]\n            progress.add_task_to_queue(id_task)\n        else:\n            id_task = None\n        with get_lock():\n            progress.start_task(id_task)\n            try:\n                res = func(*args, **kwargs)\n                progress.record_results(id_task, res)\n            except Exception as e:\n                shared.log.error(f\"Exception: {e}\")\n                shared.log.error(f\"Arguments: args={str(args)[:10240]} kwargs={str(kwargs)[:10240]}\")\n                errors.display(e, 'gradio call')\n                res = extra_outputs or []\n                res.append(f\"<div class='error'>{html.escape(str(e))}</div>\")\n            finally:\n                progress.finish_task(id_task)\n        return res\n    return wrap_gradio_call(f, extra_outputs=extra_outputs, add_stats=True, name=name)\n\n\ndef wrap_gradio_call(func, extra_outputs=None, add_stats=False, name=None):\n    job_name = name if name is not None else func.__name__\n    def f(*args, extra_outputs_array=extra_outputs, **kwargs):\n        t = time.perf_counter()\n        shared.mem_mon.reset()\n        if len(args) > 0 and type(args[0]) == str and args[0][0:5] == \"task(\" and args[0][-1] == \")\":\n            task_id = args[0]\n        else:\n            task_id = 0\n        jobid = shared.state.begin(job_name, task_id=task_id)\n        try:\n            if shared.cmd_opts.profile:\n                pr = cProfile.Profile()\n                pr.enable()\n            res = func(*args, **kwargs)\n            if res is None:\n                msg = \"No result returned from function\"\n                shared.log.warning(msg)\n                res = extra_outputs_array or []\n                res.append(f\"<div class='error'>{html.escape(msg)}</div>\")\n            else:\n                res = list(res)\n            if shared.cmd_opts.profile:\n                pr.disable()\n                errors.profile(pr, 'Wrap')\n        except Exception as e:\n            errors.display(e, 'gradio call')\n            res = extra_outputs_array or []\n            res.append(f\"<div class='error'>{html.escape(type(e).__name__+': '+str(e))}</div>\")\n        shared.state.end(jobid)\n        if not add_stats:\n            return tuple(res)\n        elapsed = time.perf_counter() - t\n        elapsed_m = int(elapsed // 60)\n        elapsed_s = elapsed % 60\n        elapsed_text = f\"{elapsed_m}m {elapsed_s:.2f}s\" if elapsed_m > 0 else f\"{elapsed_s:.2f}s\"\n        summary = timer.process.summary(min_time=0.25, total=False).replace('=', ' ')\n        memory = shared.mem_mon.summary()\n        if isinstance(res, list) and isinstance(res[-1], str):\n            res[-1] += f\"<div class='performance'><p>Time: {elapsed_text} | {summary} {memory}</p></div>\"\n        return tuple(res)\n    return f\n"
  },
  {
    "path": "modules/cfgzero/__init__.py",
    "content": "# reference: <https://github.com/WeichenFan/CFG-Zero-star>\n\nfrom modules import shared, processing, sd_models\n\n\norig_pipeline = None\nsupported = [\n    'FluxPipeline',\n    'CogView4Pipeline',\n    'StableDiffusion3Pipeline',\n    'HiDreamImagePipeline',\n    'WanPipeline',\n    'HunyuanVideoPipeline',\n]\n\n\ndef apply(p: processing.StableDiffusionProcessing):\n    if not shared.opts.cfgzero_enabled:\n        return None\n    cls = shared.sd_model.__class__.__name__ if shared.sd_loaded else 'None'\n    if 'CFGZero' in cls:\n        unapply()\n    if cls not in supported:\n        return None\n    global orig_pipeline # pylint: disable=global-statement\n    orig_pipeline = shared.sd_model\n\n    if cls == 'FluxPipeline':\n        from diffusers import pipelines\n        from modules.cfgzero.flux_pipeline import FluxCFGZeroPipeline\n        shared.sd_model = sd_models.switch_pipe(FluxCFGZeroPipeline, shared.sd_model)\n        pipelines.auto_pipeline.AUTO_TEXT2IMAGE_PIPELINES_MAPPING[\"fluxcfgzero\"] = FluxCFGZeroPipeline\n        pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING[\"fluxcfgzero\"] = pipelines.FluxImg2ImgPipeline\n        pipelines.auto_pipeline.AUTO_INPAINT_PIPELINES_MAPPING[\"fluxcfgzero\"] = pipelines.FluxInpaintPipeline\n    if cls == 'CogView4Pipeline':\n        from modules.cfgzero.cogview4_pipeline import CogView4CFGZeroPipeline\n        shared.sd_model = sd_models.switch_pipe(CogView4CFGZeroPipeline, shared.sd_model)\n    if cls == 'StableDiffusion3Pipeline':\n        from modules.cfgzero.sd3_pipeline import StableDiffusion3CFGZeroPipeline\n        shared.sd_model = sd_models.switch_pipe(StableDiffusion3CFGZeroPipeline, shared.sd_model)\n    if cls == 'HiDreamImagePipeline':\n        from modules.cfgzero.hidream_pipeline import HiDreamImageCFGZeroPipeline\n        shared.sd_model = sd_models.switch_pipe(HiDreamImageCFGZeroPipeline, shared.sd_model)\n    if cls == 'WanPipeline':\n        from modules.cfgzero.wan_t2v_pipeline import WanCFGZeroPipeline\n        shared.sd_model = sd_models.switch_pipe(WanCFGZeroPipeline, shared.sd_model)\n    if cls == 'HunyuanVideoPipeline':\n        from modules.cfgzero.hunyuan_t2v_pipeline import HunyuanVideoCFGZeroPipeline\n        shared.sd_model = sd_models.switch_pipe(HunyuanVideoCFGZeroPipeline, shared.sd_model)\n\n    shared.log.debug(f'Apply CFGZero: cls={cls} init={shared.opts.cfgzero_enabled} star={shared.opts.cfgzero_star} steps={shared.opts.cfgzero_steps}')\n    p.task_args['use_zero_init'] = shared.opts.cfgzero_enabled\n    p.task_args['use_cfg_zero_star'] = shared.opts.cfgzero_star\n    p.task_args['zero_steps'] = int(shared.opts.cfgzero_steps)\n    p.extra_generation_params['CFGZero'] = True\n\n\ndef unapply():\n    global orig_pipeline # pylint: disable=global-statement\n    if orig_pipeline is not None:\n        shared.sd_model = orig_pipeline\n        orig_pipeline = None\n    return shared.sd_model.__class__\n"
  },
  {
    "path": "modules/cfgzero/cogview4_pipeline.py",
    "content": "# Copyright 2024 The CogVideoX team, Tsinghua University & ZhipuAI and The HuggingFace Team.\n# All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport inspect\nfrom typing import Any, Callable, Dict, List, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom transformers import AutoTokenizer, GlmModel\n\nfrom diffusers.callbacks import MultiPipelineCallbacks, PipelineCallback\nfrom diffusers.image_processor import VaeImageProcessor\nfrom diffusers.loaders import CogView4LoraLoaderMixin\nfrom diffusers.models import AutoencoderKL, CogView4Transformer2DModel\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline\nfrom diffusers.schedulers import FlowMatchEulerDiscreteScheduler\nfrom diffusers.utils import is_torch_xla_available, logging, replace_example_docstring\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom diffusers.pipelines.cogview4.pipeline_output import CogView4PipelineOutput\n\n@torch.cuda.amp.autocast(dtype=torch.float32)\ndef optimized_scale(positive_flat, negative_flat):\n\n    # Calculate dot production\n    dot_product = torch.sum(positive_flat * negative_flat, dim=1, keepdim=True)\n\n    # Squared norm of uncondition\n    squared_norm = torch.sum(negative_flat ** 2, dim=1, keepdim=True) + 1e-8\n\n    # st_star = v_cond^T * v_uncond / ||v_uncond||^2\n    st_star = dot_product / squared_norm\n\n    return st_star\n\n\nif is_torch_xla_available():\n    import torch_xla.core.xla_model as xm\n\n    XLA_AVAILABLE = True\nelse:\n    XLA_AVAILABLE = False\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\nEXAMPLE_DOC_STRING = \"\"\"\n    Examples:\n        ```python\n        >>> import torch\n        >>> from diffusers import CogView4Pipeline\n\n        >>> pipe = CogView4Pipeline.from_pretrained(\"THUDM/CogView4-6B\", torch_dtype=torch.bfloat16)\n        >>> pipe.to(\"cuda\")\n\n        >>> prompt = \"A photo of an astronaut riding a horse on mars\"\n        >>> image = pipe(prompt).images[0]\n        >>> image.save(\"output.png\")\n        ```\n\"\"\"\n\n\ndef calculate_shift(\n    image_seq_len,\n    base_seq_len: int = 256,\n    base_shift: float = 0.25,\n    max_shift: float = 0.75,\n) -> float:\n    m = (image_seq_len / base_seq_len) ** 0.5\n    mu = m * max_shift + base_shift\n    return mu\n\n\ndef retrieve_timesteps(\n    scheduler,\n    num_inference_steps: Optional[int] = None,\n    device: Optional[Union[str, torch.device]] = None,\n    timesteps: Optional[List[int]] = None,\n    sigmas: Optional[List[float]] = None,\n    **kwargs,\n):\n    r\"\"\"\n    Calls the scheduler's `set_timesteps` method and retrieves timesteps from the scheduler after the call. Handles\n    custom timesteps. Any kwargs will be supplied to `scheduler.set_timesteps`.\n\n    Args:\n        scheduler (`SchedulerMixin`):\n            The scheduler to get timesteps from.\n        num_inference_steps (`int`):\n            The number of diffusion steps used when generating samples with a pre-trained model. If used, `timesteps`\n            must be `None`.\n        device (`str` or `torch.device`, *optional*):\n            The device to which the timesteps should be moved to. If `None`, the timesteps are not moved.\n        timesteps (`List[int]`, *optional*):\n            Custom timesteps used to override the timestep spacing strategy of the scheduler. If `timesteps` is passed,\n            `num_inference_steps` and `sigmas` must be `None`.\n        sigmas (`List[float]`, *optional*):\n            Custom sigmas used to override the timestep spacing strategy of the scheduler. If `sigmas` is passed,\n            `num_inference_steps` and `timesteps` must be `None`.\n\n    Returns:\n        `Tuple[torch.Tensor, int]`: A tuple where the first element is the timestep schedule from the scheduler and the\n        second element is the number of inference steps.\n    \"\"\"\n    accepts_timesteps = \"timesteps\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n    accepts_sigmas = \"sigmas\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n\n    if timesteps is not None and sigmas is not None:\n        if not accepts_timesteps and not accepts_sigmas:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" timestep or sigma schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(timesteps=timesteps, sigmas=sigmas, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    elif timesteps is not None and sigmas is None:\n        if not accepts_timesteps:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" timestep schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(timesteps=timesteps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    elif timesteps is None and sigmas is not None:\n        if not accepts_sigmas:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" sigmas schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(sigmas=sigmas, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    else:\n        scheduler.set_timesteps(num_inference_steps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n    return timesteps, num_inference_steps\n\n\nclass CogView4CFGZeroPipeline(DiffusionPipeline, CogView4LoraLoaderMixin):\n    r\"\"\"\n    Pipeline for text-to-image generation using CogView4.\n\n    This model inherits from [`DiffusionPipeline`]. Check the superclass documentation for the generic methods the\n    library implements for all the pipelines (such as downloading or saving, running on a particular device, etc.)\n\n    Args:\n        vae ([`AutoencoderKL`]):\n            Variational Auto-Encoder (VAE) Model to encode and decode images to and from latent representations.\n        text_encoder ([`GLMModel`]):\n            Frozen text-encoder. CogView4 uses [glm-4-9b-hf](https://huggingface.co/THUDM/glm-4-9b-hf).\n        tokenizer (`PreTrainedTokenizer`):\n            Tokenizer of class\n            [PreTrainedTokenizer](https://huggingface.co/docs/transformers/main/en/main_classes/tokenizer#transformers.PreTrainedTokenizer).\n        transformer ([`CogView4Transformer2DModel`]):\n            A text conditioned `CogView4Transformer2DModel` to denoise the encoded image latents.\n        scheduler ([`SchedulerMixin`]):\n            A scheduler to be used in combination with `transformer` to denoise the encoded image latents.\n    \"\"\"\n\n    _optional_components = []\n    model_cpu_offload_seq = \"text_encoder->transformer->vae\"\n    _callback_tensor_inputs = [\"latents\", \"prompt_embeds\", \"negative_prompt_embeds\"]\n\n    def __init__(\n        self,\n        tokenizer: AutoTokenizer,\n        text_encoder: GlmModel,\n        vae: AutoencoderKL,\n        transformer: CogView4Transformer2DModel,\n        scheduler: FlowMatchEulerDiscreteScheduler,\n    ):\n        super().__init__()\n\n        self.register_modules(\n            tokenizer=tokenizer, text_encoder=text_encoder, vae=vae, transformer=transformer, scheduler=scheduler\n        )\n        self.vae_scale_factor = 2 ** (len(self.vae.config.block_out_channels) - 1) if getattr(self, \"vae\", None) else 8\n        self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor)\n\n    def _get_glm_embeds(\n        self,\n        prompt: Union[str, List[str]] = None,\n        max_sequence_length: int = 1024,\n        device: Optional[torch.device] = None,\n        dtype: Optional[torch.dtype] = None,\n    ):\n        device = device or self._execution_device\n        dtype = dtype or self.text_encoder.dtype\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n\n        text_inputs = self.tokenizer(\n            prompt,\n            padding=\"longest\",  # not use max length\n            max_length=max_sequence_length,\n            truncation=True,\n            add_special_tokens=True,\n            return_tensors=\"pt\",\n        )\n        text_input_ids = text_inputs.input_ids\n        untruncated_ids = self.tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n        if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(text_input_ids, untruncated_ids):\n            removed_text = self.tokenizer.batch_decode(untruncated_ids[:, max_sequence_length - 1 : -1])\n            logger.warning(\n                \"The following part of your input was truncated because `max_sequence_length` is set to \"\n                f\" {max_sequence_length} tokens: {removed_text}\"\n            )\n        current_length = text_input_ids.shape[1]\n        pad_length = (16 - (current_length % 16)) % 16\n        if pad_length > 0:\n            pad_ids = torch.full(\n                (text_input_ids.shape[0], pad_length),\n                fill_value=self.tokenizer.pad_token_id,\n                dtype=text_input_ids.dtype,\n                device=text_input_ids.device,\n            )\n            text_input_ids = torch.cat([pad_ids, text_input_ids], dim=1)\n        prompt_embeds = self.text_encoder(\n            text_input_ids.to(self.text_encoder.device), output_hidden_states=True\n        ).hidden_states[-2]\n\n        prompt_embeds = prompt_embeds.to(dtype=dtype, device=device)\n        return prompt_embeds\n\n    def encode_prompt(\n        self,\n        prompt: Union[str, List[str]],\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        do_classifier_free_guidance: bool = True,\n        num_images_per_prompt: int = 1,\n        prompt_embeds: Optional[torch.Tensor] = None,\n        negative_prompt_embeds: Optional[torch.Tensor] = None,\n        device: Optional[torch.device] = None,\n        dtype: Optional[torch.dtype] = None,\n        max_sequence_length: int = 1024,\n    ):\n        r\"\"\"\n        Encodes the prompt into text encoder hidden states.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                prompt to be encoded\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            do_classifier_free_guidance (`bool`, *optional*, defaults to `True`):\n                Whether to use classifier free guidance or not.\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                Number of images that should be generated per prompt. torch device to place the resulting embeddings on\n            prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            device: (`torch.device`, *optional*):\n                torch device\n            dtype: (`torch.dtype`, *optional*):\n                torch dtype\n            max_sequence_length (`int`, defaults to `1024`):\n                Maximum sequence length in encoded prompt. Can be set to other values but may lead to poorer results.\n        \"\"\"\n        device = device or self._execution_device\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n        if prompt is not None:\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        if prompt_embeds is None:\n            prompt_embeds = self._get_glm_embeds(prompt, max_sequence_length, device, dtype)\n\n        seq_len = prompt_embeds.size(1)\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n        if do_classifier_free_guidance and negative_prompt_embeds is None:\n            negative_prompt = negative_prompt or \"\"\n            negative_prompt = batch_size * [negative_prompt] if isinstance(negative_prompt, str) else negative_prompt\n\n            if prompt is not None and type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n\n            negative_prompt_embeds = self._get_glm_embeds(negative_prompt, max_sequence_length, device, dtype)\n\n            seq_len = negative_prompt_embeds.size(1)\n            negative_prompt_embeds = negative_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds = negative_prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n        return prompt_embeds, negative_prompt_embeds\n\n    def prepare_latents(self, batch_size, num_channels_latents, height, width, dtype, device, generator, latents=None):\n        if latents is not None:\n            return latents.to(device)\n\n        shape = (\n            batch_size,\n            num_channels_latents,\n            int(height) // self.vae_scale_factor,\n            int(width) // self.vae_scale_factor,\n        )\n        if isinstance(generator, list) and len(generator) != batch_size:\n            raise ValueError(\n                f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n            )\n        latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n        return latents\n\n    def check_inputs(\n        self,\n        prompt,\n        height,\n        width,\n        negative_prompt,\n        callback_on_step_end_tensor_inputs,\n        prompt_embeds=None,\n        negative_prompt_embeds=None,\n    ):\n        if height % 16 != 0 or width % 16 != 0:\n            raise ValueError(f\"`height` and `width` have to be divisible by 16 but are {height} and {width}.\")\n\n        if callback_on_step_end_tensor_inputs is not None and not all(\n            k in self._callback_tensor_inputs for k in callback_on_step_end_tensor_inputs\n        ):\n            raise ValueError(\n                f\"`callback_on_step_end_tensor_inputs` has to be in {self._callback_tensor_inputs}, but found {[k for k in callback_on_step_end_tensor_inputs if k not in self._callback_tensor_inputs]}\"\n            )\n        if prompt is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n\n        if prompt is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n\n        if negative_prompt is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n\n        if prompt_embeds is not None and negative_prompt_embeds is not None:\n            if prompt_embeds.shape[0] != negative_prompt_embeds.shape[0]:\n                raise ValueError(\n                    \"`prompt_embeds` and `negative_prompt_embeds` must have the same batch size when passed directly, but\"\n                    f\" got: `prompt_embeds` {prompt_embeds.shape} and `negative_prompt_embeds`\"\n                    f\" {negative_prompt_embeds.shape}.\"\n                )\n            if prompt_embeds.shape[-1] != negative_prompt_embeds.shape[-1]:\n                raise ValueError(\n                    \"`prompt_embeds` and `negative_prompt_embeds` must have the same dimension when passed directly, but\"\n                    f\" got: `prompt_embeds` {prompt_embeds.shape} and `negative_prompt_embeds`\"\n                    f\" {negative_prompt_embeds.shape}.\"\n                )\n\n    @property\n    def guidance_scale(self):\n        return self._guidance_scale\n\n    # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2)\n    # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1`\n    # corresponds to doing no classifier free guidance.\n    @property\n    def do_classifier_free_guidance(self):\n        return self._guidance_scale > 1\n\n    @property\n    def num_timesteps(self):\n        return self._num_timesteps\n\n    @property\n    def attention_kwargs(self):\n        return self._attention_kwargs\n\n    @property\n    def current_timestep(self):\n        return self._current_timestep\n\n    @property\n    def interrupt(self):\n        return self._interrupt\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n        self,\n        prompt: Optional[Union[str, List[str]]] = None,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        height: Optional[int] = None,\n        width: Optional[int] = None,\n        num_inference_steps: int = 50,\n        timesteps: Optional[List[int]] = None,\n        sigmas: Optional[List[float]] = None,\n        guidance_scale: float = 5.0,\n        num_images_per_prompt: int = 1,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.FloatTensor] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        original_size: Optional[Tuple[int, int]] = None,\n        crops_coords_top_left: Tuple[int, int] = (0, 0),\n        output_type: str = \"pil\",\n        return_dict: bool = True,\n        attention_kwargs: Optional[Dict[str, Any]] = None,\n        callback_on_step_end: Optional[\n            Union[Callable[[int, int, Dict], None], PipelineCallback, MultiPipelineCallbacks]\n        ] = None,\n        callback_on_step_end_tensor_inputs: List[str] = [\"latents\"],\n        max_sequence_length: int = 1024,\n        use_cfg_zero_star: Optional[bool] = False,\n        use_zero_init: Optional[bool] = True,\n        zero_steps: Optional[int] = 0,\n    ) -> Union[CogView4PipelineOutput, Tuple]:\n        \"\"\"\n        Function invoked when calling the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide the image generation. If not defined, one has to pass `prompt_embeds`.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            height (`int`, *optional*, defaults to self.transformer.config.sample_size * self.vae_scale_factor):\n                The height in pixels of the generated image. If not provided, it is set to 1024.\n            width (`int`, *optional*, defaults to self.transformer.config.sample_size * self.vae_scale_factor):\n                The width in pixels of the generated image. If not provided it is set to 1024.\n            num_inference_steps (`int`, *optional*, defaults to `50`):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            timesteps (`List[int]`, *optional*):\n                Custom timesteps to use for the denoising process with schedulers which support a `timesteps` argument\n                in their `set_timesteps` method. If not defined, the default behavior when `num_inference_steps` is\n                passed will be used. Must be in descending order.\n            sigmas (`List[float]`, *optional*):\n                Custom sigmas to use for the denoising process with schedulers which support a `sigmas` argument in\n                their `set_timesteps` method. If not defined, the default behavior when `num_inference_steps` is passed\n                will be used.\n            guidance_scale (`float`, *optional*, defaults to `5.0`):\n                Guidance scale as defined in [Classifier-Free Diffusion Guidance](https://arxiv.org/abs/2207.12598).\n                `guidance_scale` is defined as `w` of equation 2. of [Imagen\n                Paper](https://arxiv.org/pdf/2205.11487.pdf). Guidance scale is enabled by setting `guidance_scale >\n                1`. Higher guidance scale encourages to generate images that are closely linked to the text `prompt`,\n                usually at the expense of lower image quality.\n            num_images_per_prompt (`int`, *optional*, defaults to `1`):\n                The number of images to generate per prompt.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                One or a list of [torch generator(s)](https://pytorch.org/docs/stable/generated/torch.Generator.html)\n                to make generation deterministic.\n            latents (`torch.FloatTensor`, *optional*):\n                Pre-generated noisy latents, sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor will ge generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            original_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                If `original_size` is not the same as `target_size` the image will appear to be down- or upsampled.\n                `original_size` defaults to `(height, width)` if not specified. Part of SDXL's micro-conditioning as\n                explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            crops_coords_top_left (`Tuple[int]`, *optional*, defaults to (0, 0)):\n                `crops_coords_top_left` can be used to generate an image that appears to be \"cropped\" from the position\n                `crops_coords_top_left` downwards. Favorable, well-centered images are usually achieved by setting\n                `crops_coords_top_left` to (0, 0). Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generate image. Choose between\n                [PIL](https://pillow.readthedocs.io/en/stable/): `PIL.Image.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] instead\n                of a plain tuple.\n            attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            callback_on_step_end (`Callable`, *optional*):\n                A function that calls at the end of each denoising steps during the inference. The function is called\n                with the following arguments: `callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int,\n                callback_kwargs: Dict)`. `callback_kwargs` will include a list of all tensors as specified by\n                `callback_on_step_end_tensor_inputs`.\n            callback_on_step_end_tensor_inputs (`List`, *optional*):\n                The list of tensor inputs for the `callback_on_step_end` function. The tensors specified in the list\n                will be passed as `callback_kwargs` argument. You will only be able to include variables listed in the\n                `._callback_tensor_inputs` attribute of your pipeline class.\n            max_sequence_length (`int`, defaults to `224`):\n                Maximum sequence length in encoded prompt. Can be set to other values but may lead to poorer results.\n\n        Examples:\n\n        Returns:\n            [`~pipelines.cogview4.pipeline_CogView4.CogView4PipelineOutput`] or `tuple`:\n            [`~pipelines.cogview4.pipeline_CogView4.CogView4PipelineOutput`] if `return_dict` is True, otherwise a\n            `tuple`. When returning a tuple, the first element is a list with the generated images.\n        \"\"\"\n\n        if isinstance(callback_on_step_end, (PipelineCallback, MultiPipelineCallbacks)):\n            callback_on_step_end_tensor_inputs = callback_on_step_end.tensor_inputs\n\n        height = height or self.transformer.config.sample_size * self.vae_scale_factor\n        width = width or self.transformer.config.sample_size * self.vae_scale_factor\n\n        original_size = original_size or (height, width)\n        target_size = (height, width)\n\n        # Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            height,\n            width,\n            negative_prompt,\n            callback_on_step_end_tensor_inputs,\n            prompt_embeds,\n            negative_prompt_embeds,\n        )\n        self._guidance_scale = guidance_scale\n        self._attention_kwargs = attention_kwargs\n        self._current_timestep = None\n        self._interrupt = False\n\n        # Default call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        device = self._execution_device\n\n        # Encode input prompt\n        prompt_embeds, negative_prompt_embeds = self.encode_prompt(\n            prompt,\n            negative_prompt,\n            self.do_classifier_free_guidance,\n            num_images_per_prompt=num_images_per_prompt,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            max_sequence_length=max_sequence_length,\n            device=device,\n        )\n\n        # Prepare latents\n        latent_channels = self.transformer.config.in_channels\n        latents = self.prepare_latents(\n            batch_size * num_images_per_prompt,\n            latent_channels,\n            height,\n            width,\n            torch.float32,\n            device,\n            generator,\n            latents,\n        )\n\n        # Prepare additional timestep conditions\n        original_size = torch.tensor([original_size], dtype=prompt_embeds.dtype, device=device)\n        target_size = torch.tensor([target_size], dtype=prompt_embeds.dtype, device=device)\n        crops_coords_top_left = torch.tensor([crops_coords_top_left], dtype=prompt_embeds.dtype, device=device)\n\n        original_size = original_size.repeat(batch_size * num_images_per_prompt, 1)\n        target_size = target_size.repeat(batch_size * num_images_per_prompt, 1)\n        crops_coords_top_left = crops_coords_top_left.repeat(batch_size * num_images_per_prompt, 1)\n\n        # Prepare timesteps\n        image_seq_len = ((height // self.vae_scale_factor) * (width // self.vae_scale_factor)) // (\n            self.transformer.config.patch_size**2\n        )\n        timesteps = (\n            np.linspace(self.scheduler.config.num_train_timesteps, 1.0, num_inference_steps)\n            if timesteps is None\n            else np.array(timesteps)\n        )\n        timesteps = timesteps.astype(np.int64).astype(np.float32)\n        sigmas = timesteps / self.scheduler.config.num_train_timesteps if sigmas is None else sigmas\n        mu = calculate_shift(\n            image_seq_len,\n            self.scheduler.config.get(\"base_image_seq_len\", 256),\n            self.scheduler.config.get(\"base_shift\", 0.25),\n            self.scheduler.config.get(\"max_shift\", 0.75),\n        )\n        timesteps, num_inference_steps = retrieve_timesteps(\n            self.scheduler, num_inference_steps, device, timesteps, sigmas, mu=mu\n        )\n        self._num_timesteps = len(timesteps)\n\n        # Denoising loop\n        transformer_dtype = self.transformer.dtype\n        num_warmup_steps = max(len(timesteps) - num_inference_steps * self.scheduler.order, 0)\n\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                if self.interrupt:\n                    continue\n\n                self._current_timestep = t\n                latent_model_input = latents.to(transformer_dtype)\n\n                # broadcast to batch dimension in a way that's compatible with ONNX/Core ML\n                timestep = t.expand(latents.shape[0])\n\n                noise_pred_cond = self.transformer(\n                    hidden_states=latent_model_input,\n                    encoder_hidden_states=prompt_embeds,\n                    timestep=timestep,\n                    original_size=original_size,\n                    target_size=target_size,\n                    crop_coords=crops_coords_top_left,\n                    attention_kwargs=attention_kwargs,\n                    return_dict=False,\n                )[0]\n\n                # perform guidance\n                if self.do_classifier_free_guidance:\n                    noise_pred_uncond = self.transformer(\n                        hidden_states=latent_model_input,\n                        encoder_hidden_states=negative_prompt_embeds,\n                        timestep=timestep,\n                        original_size=original_size,\n                        target_size=target_size,\n                        crop_coords=crops_coords_top_left,\n                        attention_kwargs=attention_kwargs,\n                        return_dict=False,\n                    )[0]\n                    if use_cfg_zero_star:\n                        positive_flat = noise_pred_cond.view(batch_size, -1)\n                        negative_flat = noise_pred_uncond.view(batch_size, -1)\n\n                        alpha = optimized_scale(positive_flat,negative_flat)\n                        alpha = alpha.view(batch_size, *([1] * (len(noise_pred_cond.shape) - 1)))\n                        alpha = alpha.to(positive_flat.dtype)\n\n                        if (i <= zero_steps) and use_zero_init:\n                            noise_pred = noise_pred_cond*0.\n                        else:\n                            noise_pred = noise_pred_uncond * alpha + guidance_scale * (noise_pred_cond - noise_pred_uncond * alpha)\n                    else:\n                        noise_pred = noise_pred_uncond + self.guidance_scale * (noise_pred_cond - noise_pred_uncond)\n                else:\n                    noise_pred = noise_pred_cond\n\n                latents = self.scheduler.step(noise_pred, t, latents, return_dict=False)[0]\n\n                # call the callback, if provided\n                if callback_on_step_end is not None:\n                    callback_kwargs = {}\n                    for k in callback_on_step_end_tensor_inputs:\n                        callback_kwargs[k] = locals()[k]\n                    callback_outputs = callback_on_step_end(self, i, self.scheduler.sigmas[i], callback_kwargs)\n                    latents = callback_outputs.pop(\"latents\", latents)\n                    prompt_embeds = callback_outputs.pop(\"prompt_embeds\", prompt_embeds)\n                    negative_prompt_embeds = callback_outputs.pop(\"negative_prompt_embeds\", negative_prompt_embeds)\n\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n\n                if XLA_AVAILABLE:\n                    xm.mark_step()\n\n        self._current_timestep = None\n\n        if not output_type == \"latent\":\n            latents = latents.to(self.vae.dtype) / self.vae.config.scaling_factor\n            image = self.vae.decode(latents, return_dict=False, generator=generator)[0]\n        else:\n            image = latents\n\n        image = self.image_processor.postprocess(image, output_type=output_type)\n\n        # Offload all models\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return (image,)\n\n        return CogView4PipelineOutput(images=image)\n"
  },
  {
    "path": "modules/cfgzero/flux_pipeline.py",
    "content": "# https://github.com/WeichenFan/CFG-Zero-star/blob/main/models/flux/pipeline.py\n\nimport inspect\nfrom typing import Any, Callable, Dict, List, Optional, Union\n\nimport numpy as np\nimport torch\nfrom transformers import (\n    CLIPImageProcessor,\n    CLIPTextModel,\n    CLIPTokenizer,\n    CLIPVisionModelWithProjection,\n    T5EncoderModel,\n    T5TokenizerFast,\n)\n\nfrom diffusers.image_processor import PipelineImageInput, VaeImageProcessor\nfrom diffusers.loaders import FluxIPAdapterMixin, FluxLoraLoaderMixin, FromSingleFileMixin, TextualInversionLoaderMixin\nfrom diffusers.models import AutoencoderKL, FluxTransformer2DModel\nfrom diffusers.schedulers import FlowMatchEulerDiscreteScheduler\nfrom diffusers.utils import (\n    USE_PEFT_BACKEND,\n    is_torch_xla_available,\n    logging,\n    replace_example_docstring,\n    scale_lora_layers,\n    unscale_lora_layers,\n)\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline\nfrom diffusers.pipelines.flux.pipeline_output import FluxPipelineOutput\n\n\nif is_torch_xla_available():\n    import torch_xla.core.xla_model as xm\n\n    XLA_AVAILABLE = True\nelse:\n    XLA_AVAILABLE = False\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\nEXAMPLE_DOC_STRING = \"\"\"\n    Examples:\n        ```py\n        >>> import torch\n        >>> from diffusers import FluxPipeline\n\n        >>> pipe = FluxPipeline.from_pretrained(\"black-forest-labs/FLUX.1-schnell\", torch_dtype=torch.bfloat16)\n        >>> pipe.to(\"cuda\")\n        >>> prompt = \"A cat holding a sign that says hello world\"\n        >>> # Depending on the variant being used, the pipeline call will slightly vary.\n        >>> # Refer to the pipeline documentation for more details.\n        >>> image = pipe(prompt, num_inference_steps=4, guidance_scale=0.0).images[0]\n        >>> image.save(\"flux.png\")\n        ```\n\"\"\"\n@torch.cuda.amp.autocast(dtype=torch.float32)\ndef optimized_scale(positive_flat, negative_flat):\n\n    # Calculate dot production\n    dot_product = torch.sum(positive_flat * negative_flat, dim=1, keepdim=True)\n\n    # Squared norm of uncondition\n    squared_norm = torch.sum(negative_flat ** 2, dim=1, keepdim=True) + 1e-8\n\n    # st_star = v_cond^T * v_uncond / ||v_uncond||^2\n    st_star = dot_product / squared_norm\n\n    return st_star\n\n\ndef calculate_shift(\n    image_seq_len,\n    base_seq_len: int = 256,\n    max_seq_len: int = 4096,\n    base_shift: float = 0.5,\n    max_shift: float = 1.15,\n):\n    m = (max_shift - base_shift) / (max_seq_len - base_seq_len)\n    b = base_shift - m * base_seq_len\n    mu = image_seq_len * m + b\n    return mu\n\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.retrieve_timesteps\ndef retrieve_timesteps(\n    scheduler,\n    num_inference_steps: Optional[int] = None,\n    device: Optional[Union[str, torch.device]] = None,\n    timesteps: Optional[List[int]] = None,\n    sigmas: Optional[List[float]] = None,\n    **kwargs,\n):\n    r\"\"\"\n    Calls the scheduler's `set_timesteps` method and retrieves timesteps from the scheduler after the call. Handles\n    custom timesteps. Any kwargs will be supplied to `scheduler.set_timesteps`.\n\n    Args:\n        scheduler (`SchedulerMixin`):\n            The scheduler to get timesteps from.\n        num_inference_steps (`int`):\n            The number of diffusion steps used when generating samples with a pre-trained model. If used, `timesteps`\n            must be `None`.\n        device (`str` or `torch.device`, *optional*):\n            The device to which the timesteps should be moved to. If `None`, the timesteps are not moved.\n        timesteps (`List[int]`, *optional*):\n            Custom timesteps used to override the timestep spacing strategy of the scheduler. If `timesteps` is passed,\n            `num_inference_steps` and `sigmas` must be `None`.\n        sigmas (`List[float]`, *optional*):\n            Custom sigmas used to override the timestep spacing strategy of the scheduler. If `sigmas` is passed,\n            `num_inference_steps` and `timesteps` must be `None`.\n\n    Returns:\n        `Tuple[torch.Tensor, int]`: A tuple where the first element is the timestep schedule from the scheduler and the\n        second element is the number of inference steps.\n    \"\"\"\n    if timesteps is not None and sigmas is not None:\n        raise ValueError(\"Only one of `timesteps` or `sigmas` can be passed. Please choose one to set custom values\")\n    if timesteps is not None:\n        accepts_timesteps = \"timesteps\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n        if not accepts_timesteps:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" timestep schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(timesteps=timesteps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    elif sigmas is not None:\n        accept_sigmas = \"sigmas\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n        if not accept_sigmas:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" sigmas schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(sigmas=sigmas, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    else:\n        scheduler.set_timesteps(num_inference_steps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n    return timesteps, num_inference_steps\n\n\nclass FluxCFGZeroPipeline(\n    DiffusionPipeline,\n    FluxLoraLoaderMixin,\n    FromSingleFileMixin,\n    TextualInversionLoaderMixin,\n    FluxIPAdapterMixin,\n):\n    r\"\"\"\n    The Flux pipeline for text-to-image generation.\n\n    Reference: https://blackforestlabs.ai/announcing-black-forest-labs/\n\n    Args:\n        transformer ([`FluxTransformer2DModel`]):\n            Conditional Transformer (MMDiT) architecture to denoise the encoded image latents.\n        scheduler ([`FlowMatchEulerDiscreteScheduler`]):\n            A scheduler to be used in combination with `transformer` to denoise the encoded image latents.\n        vae ([`AutoencoderKL`]):\n            Variational Auto-Encoder (VAE) Model to encode and decode images to and from latent representations.\n        text_encoder ([`CLIPTextModel`]):\n            [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModel), specifically\n            the [clip-vit-large-patch14](https://huggingface.co/openai/clip-vit-large-patch14) variant.\n        text_encoder_2 ([`T5EncoderModel`]):\n            [T5](https://huggingface.co/docs/transformers/en/model_doc/t5#transformers.T5EncoderModel), specifically\n            the [google/t5-v1_1-xxl](https://huggingface.co/google/t5-v1_1-xxl) variant.\n        tokenizer (`CLIPTokenizer`):\n            Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/en/model_doc/clip#transformers.CLIPTokenizer).\n        tokenizer_2 (`T5TokenizerFast`):\n            Second Tokenizer of class\n            [T5TokenizerFast](https://huggingface.co/docs/transformers/en/model_doc/t5#transformers.T5TokenizerFast).\n    \"\"\"\n\n    model_cpu_offload_seq = \"text_encoder->text_encoder_2->image_encoder->transformer->vae\"\n    _optional_components = [\"image_encoder\", \"feature_extractor\"]\n    _callback_tensor_inputs = [\"latents\", \"prompt_embeds\"]\n\n    def __init__(\n        self,\n        scheduler: FlowMatchEulerDiscreteScheduler,\n        vae: AutoencoderKL,\n        text_encoder: CLIPTextModel,\n        tokenizer: CLIPTokenizer,\n        text_encoder_2: T5EncoderModel,\n        tokenizer_2: T5TokenizerFast,\n        transformer: FluxTransformer2DModel,\n        image_encoder: CLIPVisionModelWithProjection = None,\n        feature_extractor: CLIPImageProcessor = None,\n    ):\n        super().__init__()\n\n        self.register_modules(\n            vae=vae,\n            text_encoder=text_encoder,\n            text_encoder_2=text_encoder_2,\n            tokenizer=tokenizer,\n            tokenizer_2=tokenizer_2,\n            transformer=transformer,\n            scheduler=scheduler,\n            image_encoder=image_encoder,\n            feature_extractor=feature_extractor,\n        )\n        self.vae_scale_factor = 2 ** (len(self.vae.config.block_out_channels) - 1) if getattr(self, \"vae\", None) else 8\n        # Flux latents are turned into 2x2 patches and packed. This means the latent width and height has to be divisible\n        # by the patch size. So the vae scale factor is multiplied by the patch size to account for this\n        self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor * 2)\n        self.tokenizer_max_length = (\n            self.tokenizer.model_max_length if hasattr(self, \"tokenizer\") and self.tokenizer is not None else 77\n        )\n        self.default_sample_size = 128\n\n    def _get_t5_prompt_embeds(\n        self,\n        prompt: Union[str, List[str]] = None,\n        num_images_per_prompt: int = 1,\n        max_sequence_length: int = 512,\n        device: Optional[torch.device] = None,\n        dtype: Optional[torch.dtype] = None,\n    ):\n        device = device or self._execution_device\n        dtype = dtype or self.text_encoder.dtype\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n        batch_size = len(prompt)\n\n        if isinstance(self, TextualInversionLoaderMixin):\n            prompt = self.maybe_convert_prompt(prompt, self.tokenizer_2)\n\n        text_inputs = self.tokenizer_2(\n            prompt,\n            padding=\"max_length\",\n            max_length=max_sequence_length,\n            truncation=True,\n            return_length=False,\n            return_overflowing_tokens=False,\n            return_tensors=\"pt\",\n        )\n        text_input_ids = text_inputs.input_ids\n        untruncated_ids = self.tokenizer_2(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n        if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(text_input_ids, untruncated_ids):\n            removed_text = self.tokenizer_2.batch_decode(untruncated_ids[:, self.tokenizer_max_length - 1 : -1])\n            logger.warning(\n                \"The following part of your input was truncated because `max_sequence_length` is set to \"\n                f\" {max_sequence_length} tokens: {removed_text}\"\n            )\n\n        prompt_embeds = self.text_encoder_2(text_input_ids.to(device), output_hidden_states=False)[0]\n\n        dtype = self.text_encoder_2.dtype\n        prompt_embeds = prompt_embeds.to(dtype=dtype, device=device)\n\n        _, seq_len, _ = prompt_embeds.shape\n\n        # duplicate text embeddings and attention mask for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n        return prompt_embeds\n\n    def _get_clip_prompt_embeds(\n        self,\n        prompt: Union[str, List[str]],\n        num_images_per_prompt: int = 1,\n        device: Optional[torch.device] = None,\n    ):\n        device = device or self._execution_device\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n        batch_size = len(prompt)\n\n        if isinstance(self, TextualInversionLoaderMixin):\n            prompt = self.maybe_convert_prompt(prompt, self.tokenizer)\n\n        text_inputs = self.tokenizer(\n            prompt,\n            padding=\"max_length\",\n            max_length=self.tokenizer_max_length,\n            truncation=True,\n            return_overflowing_tokens=False,\n            return_length=False,\n            return_tensors=\"pt\",\n        )\n\n        text_input_ids = text_inputs.input_ids\n        untruncated_ids = self.tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n        if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(text_input_ids, untruncated_ids):\n            removed_text = self.tokenizer.batch_decode(untruncated_ids[:, self.tokenizer_max_length - 1 : -1])\n            logger.warning(\n                \"The following part of your input was truncated because CLIP can only handle sequences up to\"\n                f\" {self.tokenizer_max_length} tokens: {removed_text}\"\n            )\n        prompt_embeds = self.text_encoder(text_input_ids.to(device), output_hidden_states=False)\n\n        # Use pooled output of CLIPTextModel\n        prompt_embeds = prompt_embeds.pooler_output\n        prompt_embeds = prompt_embeds.to(dtype=self.text_encoder.dtype, device=device)\n\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt)\n        prompt_embeds = prompt_embeds.view(batch_size * num_images_per_prompt, -1)\n\n        return prompt_embeds\n\n    def encode_prompt(\n        self,\n        prompt: Union[str, List[str]],\n        prompt_2: Union[str, List[str]],\n        device: Optional[torch.device] = None,\n        num_images_per_prompt: int = 1,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        max_sequence_length: int = 512,\n        lora_scale: Optional[float] = None,\n    ):\n        r\"\"\"\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                prompt to be encoded\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in all text-encoders\n            device: (`torch.device`):\n                torch device\n            num_images_per_prompt (`int`):\n                number of images that should be generated per prompt\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            lora_scale (`float`, *optional*):\n                A lora scale that will be applied to all LoRA layers of the text encoder if LoRA layers are loaded.\n        \"\"\"\n        device = device or self._execution_device\n\n        # set lora scale so that monkey patched LoRA\n        # function of text encoder can correctly access it\n        if lora_scale is not None and isinstance(self, FluxLoraLoaderMixin):\n            self._lora_scale = lora_scale\n\n            # dynamically adjust the LoRA scale\n            if self.text_encoder is not None and USE_PEFT_BACKEND:\n                scale_lora_layers(self.text_encoder, lora_scale)\n            if self.text_encoder_2 is not None and USE_PEFT_BACKEND:\n                scale_lora_layers(self.text_encoder_2, lora_scale)\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n\n        if prompt_embeds is None:\n            prompt_2 = prompt_2 or prompt\n            prompt_2 = [prompt_2] if isinstance(prompt_2, str) else prompt_2\n\n            # We only use the pooled prompt output from the CLIPTextModel\n            pooled_prompt_embeds = self._get_clip_prompt_embeds(\n                prompt=prompt,\n                device=device,\n                num_images_per_prompt=num_images_per_prompt,\n            )\n            prompt_embeds = self._get_t5_prompt_embeds(\n                prompt=prompt_2,\n                num_images_per_prompt=num_images_per_prompt,\n                max_sequence_length=max_sequence_length,\n                device=device,\n            )\n\n        if self.text_encoder is not None:\n            if isinstance(self, FluxLoraLoaderMixin) and USE_PEFT_BACKEND:\n                # Retrieve the original scale by scaling back the LoRA layers\n                unscale_lora_layers(self.text_encoder, lora_scale)\n\n        if self.text_encoder_2 is not None:\n            if isinstance(self, FluxLoraLoaderMixin) and USE_PEFT_BACKEND:\n                # Retrieve the original scale by scaling back the LoRA layers\n                unscale_lora_layers(self.text_encoder_2, lora_scale)\n\n        dtype = self.text_encoder.dtype if self.text_encoder is not None else self.transformer.dtype\n        text_ids = torch.zeros(prompt_embeds.shape[1], 3).to(device=device, dtype=dtype)\n\n        return prompt_embeds, pooled_prompt_embeds, text_ids\n\n    def encode_image(self, image, device, num_images_per_prompt):\n        dtype = next(self.image_encoder.parameters()).dtype\n\n        if not isinstance(image, torch.Tensor):\n            image = self.feature_extractor(image, return_tensors=\"pt\").pixel_values\n\n        image = image.to(device=device, dtype=dtype)\n        image_embeds = self.image_encoder(image).image_embeds\n        image_embeds = image_embeds.repeat_interleave(num_images_per_prompt, dim=0)\n        return image_embeds\n\n    def prepare_ip_adapter_image_embeds(\n        self, ip_adapter_image, ip_adapter_image_embeds, device, num_images_per_prompt\n    ):\n        image_embeds = []\n        if ip_adapter_image_embeds is None:\n            if not isinstance(ip_adapter_image, list):\n                ip_adapter_image = [ip_adapter_image]\n\n            if len(ip_adapter_image) != self.transformer.encoder_hid_proj.num_ip_adapters:\n                raise ValueError(\n                    f\"`ip_adapter_image` must have same length as the number of IP Adapters. Got {len(ip_adapter_image)} images and {self.transformer.encoder_hid_proj.num_ip_adapters} IP Adapters.\"\n                )\n\n            for single_ip_adapter_image in ip_adapter_image:\n                single_image_embeds = self.encode_image(single_ip_adapter_image, device, 1)\n                image_embeds.append(single_image_embeds[None, :])\n        else:\n            if not isinstance(ip_adapter_image_embeds, list):\n                ip_adapter_image_embeds = [ip_adapter_image_embeds]\n\n            if len(ip_adapter_image_embeds) != self.transformer.encoder_hid_proj.num_ip_adapters:\n                raise ValueError(\n                    f\"`ip_adapter_image_embeds` must have same length as the number of IP Adapters. Got {len(ip_adapter_image_embeds)} image embeds and {self.transformer.encoder_hid_proj.num_ip_adapters} IP Adapters.\"\n                )\n\n            for single_image_embeds in ip_adapter_image_embeds:\n                image_embeds.append(single_image_embeds)\n\n        ip_adapter_image_embeds = []\n        for single_image_embeds in image_embeds:\n            single_image_embeds = torch.cat([single_image_embeds] * num_images_per_prompt, dim=0)\n            single_image_embeds = single_image_embeds.to(device=device)\n            ip_adapter_image_embeds.append(single_image_embeds)\n\n        return ip_adapter_image_embeds\n\n    def check_inputs(\n        self,\n        prompt,\n        prompt_2,\n        height,\n        width,\n        negative_prompt=None,\n        negative_prompt_2=None,\n        prompt_embeds=None,\n        negative_prompt_embeds=None,\n        pooled_prompt_embeds=None,\n        negative_pooled_prompt_embeds=None,\n        callback_on_step_end_tensor_inputs=None,\n        max_sequence_length=None,\n    ):\n        if height % (self.vae_scale_factor * 2) != 0 or width % (self.vae_scale_factor * 2) != 0:\n            logger.warning(\n                f\"`height` and `width` have to be divisible by {self.vae_scale_factor * 2} but are {height} and {width}. Dimensions will be resized accordingly\"\n            )\n\n        if callback_on_step_end_tensor_inputs is not None and not all(\n            k in self._callback_tensor_inputs for k in callback_on_step_end_tensor_inputs\n        ):\n            raise ValueError(\n                f\"`callback_on_step_end_tensor_inputs` has to be in {self._callback_tensor_inputs}, but found {[k for k in callback_on_step_end_tensor_inputs if k not in self._callback_tensor_inputs]}\"\n            )\n\n        if prompt is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt_2 is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt_2`: {prompt_2} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n        elif prompt_2 is not None and (not isinstance(prompt_2, str) and not isinstance(prompt_2, list)):\n            raise ValueError(f\"`prompt_2` has to be of type `str` or `list` but is {type(prompt_2)}\")\n\n        if negative_prompt is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n        elif negative_prompt_2 is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt_2`: {negative_prompt_2} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n\n        if prompt_embeds is not None and negative_prompt_embeds is not None:\n            if prompt_embeds.shape != negative_prompt_embeds.shape:\n                raise ValueError(\n                    \"`prompt_embeds` and `negative_prompt_embeds` must have the same shape when passed directly, but\"\n                    f\" got: `prompt_embeds` {prompt_embeds.shape} != `negative_prompt_embeds`\"\n                    f\" {negative_prompt_embeds.shape}.\"\n                )\n\n        if prompt_embeds is not None and pooled_prompt_embeds is None:\n            raise ValueError(\n                \"If `prompt_embeds` are provided, `pooled_prompt_embeds` also have to be passed. Make sure to generate `pooled_prompt_embeds` from the same text encoder that was used to generate `prompt_embeds`.\"\n            )\n        if negative_prompt_embeds is not None and negative_pooled_prompt_embeds is None:\n            raise ValueError(\n                \"If `negative_prompt_embeds` are provided, `negative_pooled_prompt_embeds` also have to be passed. Make sure to generate `negative_pooled_prompt_embeds` from the same text encoder that was used to generate `negative_prompt_embeds`.\"\n            )\n\n        if max_sequence_length is not None and max_sequence_length > 512:\n            raise ValueError(f\"`max_sequence_length` cannot be greater than 512 but is {max_sequence_length}\")\n\n    @staticmethod\n    def _prepare_latent_image_ids(batch_size, height, width, device, dtype):\n        latent_image_ids = torch.zeros(height, width, 3)\n        latent_image_ids[..., 1] = latent_image_ids[..., 1] + torch.arange(height)[:, None]\n        latent_image_ids[..., 2] = latent_image_ids[..., 2] + torch.arange(width)[None, :]\n\n        latent_image_id_height, latent_image_id_width, latent_image_id_channels = latent_image_ids.shape\n\n        latent_image_ids = latent_image_ids.reshape(\n            latent_image_id_height * latent_image_id_width, latent_image_id_channels\n        )\n\n        return latent_image_ids.to(device=device, dtype=dtype)\n\n    @staticmethod\n    def _pack_latents(latents, batch_size, num_channels_latents, height, width):\n        latents = latents.view(batch_size, num_channels_latents, height // 2, 2, width // 2, 2)\n        latents = latents.permute(0, 2, 4, 1, 3, 5)\n        latents = latents.reshape(batch_size, (height // 2) * (width // 2), num_channels_latents * 4)\n\n        return latents\n\n    @staticmethod\n    def _unpack_latents(latents, height, width, vae_scale_factor):\n        batch_size, num_patches, channels = latents.shape\n\n        # VAE applies 8x compression on images but we must also account for packing which requires\n        # latent height and width to be divisible by 2.\n        height = 2 * (int(height) // (vae_scale_factor * 2))\n        width = 2 * (int(width) // (vae_scale_factor * 2))\n\n        latents = latents.view(batch_size, height // 2, width // 2, channels // 4, 2, 2)\n        latents = latents.permute(0, 3, 1, 4, 2, 5)\n\n        latents = latents.reshape(batch_size, channels // (2 * 2), height, width)\n\n        return latents\n\n    def enable_vae_slicing(self):\n        r\"\"\"\n        Enable sliced VAE decoding. When this option is enabled, the VAE will split the input tensor in slices to\n        compute decoding in several steps. This is useful to save some memory and allow larger batch sizes.\n        \"\"\"\n        self.vae.enable_slicing()\n\n    def disable_vae_slicing(self):\n        r\"\"\"\n        Disable sliced VAE decoding. If `enable_vae_slicing` was previously enabled, this method will go back to\n        computing decoding in one step.\n        \"\"\"\n        self.vae.disable_slicing()\n\n    def enable_vae_tiling(self):\n        r\"\"\"\n        Enable tiled VAE decoding. When this option is enabled, the VAE will split the input tensor into tiles to\n        compute decoding and encoding in several steps. This is useful for saving a large amount of memory and to allow\n        processing larger images.\n        \"\"\"\n        self.vae.enable_tiling()\n\n    def disable_vae_tiling(self):\n        r\"\"\"\n        Disable tiled VAE decoding. If `enable_vae_tiling` was previously enabled, this method will go back to\n        computing decoding in one step.\n        \"\"\"\n        self.vae.disable_tiling()\n\n    def prepare_latents(\n        self,\n        batch_size,\n        num_channels_latents,\n        height,\n        width,\n        dtype,\n        device,\n        generator,\n        latents=None,\n    ):\n        # VAE applies 8x compression on images but we must also account for packing which requires\n        # latent height and width to be divisible by 2.\n        height = 2 * (int(height) // (self.vae_scale_factor * 2))\n        width = 2 * (int(width) // (self.vae_scale_factor * 2))\n\n        shape = (batch_size, num_channels_latents, height, width)\n\n        if latents is not None:\n            latent_image_ids = self._prepare_latent_image_ids(batch_size, height // 2, width // 2, device, dtype)\n            return latents.to(device=device, dtype=dtype), latent_image_ids\n\n        if isinstance(generator, list) and len(generator) != batch_size:\n            raise ValueError(\n                f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n            )\n\n        latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n        latents = self._pack_latents(latents, batch_size, num_channels_latents, height, width)\n\n        latent_image_ids = self._prepare_latent_image_ids(batch_size, height // 2, width // 2, device, dtype)\n\n        return latents, latent_image_ids\n\n    @property\n    def guidance_scale(self):\n        return self._guidance_scale\n\n    @property\n    def joint_attention_kwargs(self):\n        return self._joint_attention_kwargs\n\n    @property\n    def num_timesteps(self):\n        return self._num_timesteps\n\n    @property\n    def current_timestep(self):\n        return self._current_timestep\n\n    @property\n    def interrupt(self):\n        return self._interrupt\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        prompt_2: Optional[Union[str, List[str]]] = None,\n        negative_prompt: Union[str, List[str]] = None,\n        negative_prompt_2: Optional[Union[str, List[str]]] = None,\n        true_cfg_scale: float = 1.0,\n        height: Optional[int] = None,\n        width: Optional[int] = None,\n        num_inference_steps: int = 28,\n        sigmas: Optional[List[float]] = None,\n        guidance_scale: float = 3.5,\n        num_images_per_prompt: Optional[int] = 1,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.FloatTensor] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        ip_adapter_image: Optional[PipelineImageInput] = None,\n        ip_adapter_image_embeds: Optional[List[torch.Tensor]] = None,\n        negative_ip_adapter_image: Optional[PipelineImageInput] = None,\n        negative_ip_adapter_image_embeds: Optional[List[torch.Tensor]] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        joint_attention_kwargs: Optional[Dict[str, Any]] = None,\n        callback_on_step_end: Optional[Callable[[int, int, Dict], None]] = None,\n        callback_on_step_end_tensor_inputs: List[str] = [\"latents\"],\n        max_sequence_length: int = 512,\n        use_cfg_zero_star: Optional[bool] = False,\n        use_zero_init: Optional[bool] = True,\n        zero_steps: Optional[int] = 0,\n    ):\n        r\"\"\"\n        Function invoked when calling the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide the image generation. If not defined, one has to pass `prompt_embeds`.\n                instead.\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                will be used instead.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `true_cfg_scale` is\n                not greater than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in all the text-encoders.\n            true_cfg_scale (`float`, *optional*, defaults to 1.0):\n                When > 1.0 and a provided `negative_prompt`, enables true classifier-free guidance.\n            height (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The height in pixels of the generated image. This is set to 1024 by default for the best results.\n            width (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The width in pixels of the generated image. This is set to 1024 by default for the best results.\n            num_inference_steps (`int`, *optional*, defaults to 50):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            sigmas (`List[float]`, *optional*):\n                Custom sigmas to use for the denoising process with schedulers which support a `sigmas` argument in\n                their `set_timesteps` method. If not defined, the default behavior when `num_inference_steps` is passed\n                will be used.\n            guidance_scale (`float`, *optional*, defaults to 3.5):\n                Guidance scale as defined in [Classifier-Free Diffusion Guidance](https://arxiv.org/abs/2207.12598).\n                `guidance_scale` is defined as `w` of equation 2. of [Imagen\n                Paper](https://arxiv.org/pdf/2205.11487.pdf). Guidance scale is enabled by setting `guidance_scale >\n                1`. Higher guidance scale encourages to generate images that are closely linked to the text `prompt`,\n                usually at the expense of lower image quality.\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                One or a list of [torch generator(s)](https://pytorch.org/docs/stable/generated/torch.Generator.html)\n                to make generation deterministic.\n            latents (`torch.FloatTensor`, *optional*):\n                Pre-generated noisy latents, sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor will ge generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            ip_adapter_image: (`PipelineImageInput`, *optional*): Optional image input to work with IP Adapters.\n            ip_adapter_image_embeds (`List[torch.Tensor]`, *optional*):\n                Pre-generated image embeddings for IP-Adapter. It should be a list of length same as number of\n                IP-adapters. Each element should be a tensor of shape `(batch_size, num_images, emb_dim)`. If not\n                provided, embeddings are computed from the `ip_adapter_image` input argument.\n            negative_ip_adapter_image:\n                (`PipelineImageInput`, *optional*): Optional image input to work with IP Adapters.\n            negative_ip_adapter_image_embeds (`List[torch.Tensor]`, *optional*):\n                Pre-generated image embeddings for IP-Adapter. It should be a list of length same as number of\n                IP-adapters. Each element should be a tensor of shape `(batch_size, num_images, emb_dim)`. If not\n                provided, embeddings are computed from the `ip_adapter_image` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generate image. Choose between\n                [PIL](https://pillow.readthedocs.io/en/stable/): `PIL.Image.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.flux.FluxPipelineOutput`] instead of a plain tuple.\n            joint_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            callback_on_step_end (`Callable`, *optional*):\n                A function that calls at the end of each denoising steps during the inference. The function is called\n                with the following arguments: `callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int,\n                callback_kwargs: Dict)`. `callback_kwargs` will include a list of all tensors as specified by\n                `callback_on_step_end_tensor_inputs`.\n            callback_on_step_end_tensor_inputs (`List`, *optional*):\n                The list of tensor inputs for the `callback_on_step_end` function. The tensors specified in the list\n                will be passed as `callback_kwargs` argument. You will only be able to include variables listed in the\n                `._callback_tensor_inputs` attribute of your pipeline class.\n            max_sequence_length (`int` defaults to 512): Maximum sequence length to use with the `prompt`.\n\n        Examples:\n\n        Returns:\n            [`~pipelines.flux.FluxPipelineOutput`] or `tuple`: [`~pipelines.flux.FluxPipelineOutput`] if `return_dict`\n            is True, otherwise a `tuple`. When returning a tuple, the first element is a list with the generated\n            images.\n        \"\"\"\n\n        height = height or self.default_sample_size * self.vae_scale_factor\n        width = width or self.default_sample_size * self.vae_scale_factor\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            prompt_2,\n            height,\n            width,\n            negative_prompt=negative_prompt,\n            negative_prompt_2=negative_prompt_2,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            negative_pooled_prompt_embeds=negative_pooled_prompt_embeds,\n            callback_on_step_end_tensor_inputs=callback_on_step_end_tensor_inputs,\n            max_sequence_length=max_sequence_length,\n        )\n\n        self._guidance_scale = guidance_scale\n        self._joint_attention_kwargs = joint_attention_kwargs\n        self._current_timestep = None\n        self._interrupt = False\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        device = self._execution_device\n\n        lora_scale = (\n            self.joint_attention_kwargs.get(\"scale\", None) if self.joint_attention_kwargs is not None else None\n        )\n        has_neg_prompt = negative_prompt is not None or (\n            negative_prompt_embeds is not None and negative_pooled_prompt_embeds is not None\n        )\n        do_true_cfg = true_cfg_scale > 1 and has_neg_prompt\n        (\n            prompt_embeds,\n            pooled_prompt_embeds,\n            text_ids,\n        ) = self.encode_prompt(\n            prompt=prompt,\n            prompt_2=prompt_2,\n            prompt_embeds=prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            device=device,\n            num_images_per_prompt=num_images_per_prompt,\n            max_sequence_length=max_sequence_length,\n            lora_scale=lora_scale,\n        )\n        if do_true_cfg:\n            (\n                negative_prompt_embeds,\n                negative_pooled_prompt_embeds,\n                _,\n            ) = self.encode_prompt(\n                prompt=negative_prompt,\n                prompt_2=negative_prompt_2,\n                prompt_embeds=negative_prompt_embeds,\n                pooled_prompt_embeds=negative_pooled_prompt_embeds,\n                device=device,\n                num_images_per_prompt=num_images_per_prompt,\n                max_sequence_length=max_sequence_length,\n                lora_scale=lora_scale,\n            )\n\n        # 4. Prepare latent variables\n        num_channels_latents = self.transformer.config.in_channels // 4\n        latents, latent_image_ids = self.prepare_latents(\n            batch_size * num_images_per_prompt,\n            num_channels_latents,\n            height,\n            width,\n            prompt_embeds.dtype,\n            device,\n            generator,\n            latents,\n        )\n\n        # 5. Prepare timesteps\n        sigmas = np.linspace(1.0, 1 / num_inference_steps, num_inference_steps) if sigmas is None else sigmas\n        image_seq_len = latents.shape[1]\n        mu = calculate_shift(\n            image_seq_len,\n            self.scheduler.config.get(\"base_image_seq_len\", 256),\n            self.scheduler.config.get(\"max_image_seq_len\", 4096),\n            self.scheduler.config.get(\"base_shift\", 0.5),\n            self.scheduler.config.get(\"max_shift\", 1.15),\n        )\n        timesteps, num_inference_steps = retrieve_timesteps(\n            self.scheduler,\n            num_inference_steps,\n            device,\n            sigmas=sigmas,\n            mu=mu,\n        )\n        num_warmup_steps = max(len(timesteps) - num_inference_steps * self.scheduler.order, 0)\n        self._num_timesteps = len(timesteps)\n\n        # handle guidance\n        if self.transformer.config.guidance_embeds:\n            guidance = torch.full([1], guidance_scale, device=device, dtype=torch.float32)\n            guidance = guidance.expand(latents.shape[0])\n        else:\n            guidance = None\n\n        if (ip_adapter_image is not None or ip_adapter_image_embeds is not None) and (\n            negative_ip_adapter_image is None and negative_ip_adapter_image_embeds is None\n        ):\n            negative_ip_adapter_image = np.zeros((width, height, 3), dtype=np.uint8)\n            negative_ip_adapter_image = [negative_ip_adapter_image] * self.transformer.encoder_hid_proj.num_ip_adapters\n\n        elif (ip_adapter_image is None and ip_adapter_image_embeds is None) and (\n            negative_ip_adapter_image is not None or negative_ip_adapter_image_embeds is not None\n        ):\n            ip_adapter_image = np.zeros((width, height, 3), dtype=np.uint8)\n            ip_adapter_image = [ip_adapter_image] * self.transformer.encoder_hid_proj.num_ip_adapters\n\n        if self.joint_attention_kwargs is None:\n            self._joint_attention_kwargs = {}\n\n        image_embeds = None\n        negative_image_embeds = None\n        if ip_adapter_image is not None or ip_adapter_image_embeds is not None:\n            image_embeds = self.prepare_ip_adapter_image_embeds(\n                ip_adapter_image,\n                ip_adapter_image_embeds,\n                device,\n                batch_size * num_images_per_prompt,\n            )\n        if negative_ip_adapter_image is not None or negative_ip_adapter_image_embeds is not None:\n            negative_image_embeds = self.prepare_ip_adapter_image_embeds(\n                negative_ip_adapter_image,\n                negative_ip_adapter_image_embeds,\n                device,\n                batch_size * num_images_per_prompt,\n            )\n\n        # 6. Denoising loop\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                if self.interrupt:\n                    continue\n\n                self._current_timestep = t\n                if image_embeds is not None:\n                    self._joint_attention_kwargs[\"ip_adapter_image_embeds\"] = image_embeds\n                # broadcast to batch dimension in a way that's compatible with ONNX/Core ML\n                timestep = t.expand(latents.shape[0]).to(latents.dtype)\n\n                noise_pred = self.transformer(\n                    hidden_states=latents,\n                    timestep=timestep / 1000,\n                    guidance=guidance,\n                    pooled_projections=pooled_prompt_embeds,\n                    encoder_hidden_states=prompt_embeds,\n                    txt_ids=text_ids,\n                    img_ids=latent_image_ids,\n                    joint_attention_kwargs=self.joint_attention_kwargs,\n                    return_dict=False,\n                )[0]\n\n                if do_true_cfg:\n                    if negative_image_embeds is not None:\n                        self._joint_attention_kwargs[\"ip_adapter_image_embeds\"] = negative_image_embeds\n                    neg_noise_pred = self.transformer(\n                        hidden_states=latents,\n                        timestep=timestep / 1000,\n                        guidance=guidance,\n                        pooled_projections=negative_pooled_prompt_embeds,\n                        encoder_hidden_states=negative_prompt_embeds,\n                        txt_ids=text_ids,\n                        img_ids=latent_image_ids,\n                        joint_attention_kwargs=self.joint_attention_kwargs,\n                        return_dict=False,\n                    )[0]\n                    noise_pred = neg_noise_pred + true_cfg_scale * (noise_pred - neg_noise_pred)\n                else:\n                    if (i <= zero_steps) and use_zero_init:\n                        noise_pred = noise_pred*0.\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents_dtype = latents.dtype\n                latents = self.scheduler.step(noise_pred, t, latents, return_dict=False)[0]\n\n                if latents.dtype != latents_dtype:\n                    if torch.backends.mps.is_available():\n                        # some platforms (eg. apple mps) misbehave due to a pytorch bug: https://github.com/pytorch/pytorch/pull/99272\n                        latents = latents.to(latents_dtype)\n\n                if callback_on_step_end is not None:\n                    callback_kwargs = {}\n                    for k in callback_on_step_end_tensor_inputs:\n                        callback_kwargs[k] = locals()[k]\n                    callback_outputs = callback_on_step_end(self, i, t, callback_kwargs)\n\n                    latents = callback_outputs.pop(\"latents\", latents)\n                    prompt_embeds = callback_outputs.pop(\"prompt_embeds\", prompt_embeds)\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n\n                if XLA_AVAILABLE:\n                    xm.mark_step()\n\n        self._current_timestep = None\n\n        if output_type == \"latent\":\n            image = latents\n        else:\n            latents = self._unpack_latents(latents, height, width, self.vae_scale_factor)\n            latents = (latents / self.vae.config.scaling_factor) + self.vae.config.shift_factor\n            image = self.vae.decode(latents, return_dict=False)[0]\n            image = self.image_processor.postprocess(image, output_type=output_type)\n\n        # Offload all models\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return (image,)\n\n        return FluxPipelineOutput(images=image)\n"
  },
  {
    "path": "modules/cfgzero/hidream_pipeline.py",
    "content": "import inspect\nimport math\nfrom typing import Any, Callable, Dict, List, Optional, Union\n\nimport torch\nfrom transformers import (\n    CLIPTextModelWithProjection,\n    CLIPTokenizer,\n    LlamaForCausalLM,\n    PreTrainedTokenizerFast,\n    T5EncoderModel,\n    T5Tokenizer,\n)\n\nfrom diffusers.image_processor import VaeImageProcessor\nfrom diffusers.loaders import HiDreamImageLoraLoaderMixin\nfrom diffusers.models import AutoencoderKL, HiDreamImageTransformer2DModel\nfrom diffusers.schedulers import FlowMatchEulerDiscreteScheduler, UniPCMultistepScheduler\nfrom diffusers.utils import is_torch_xla_available, logging\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline\nfrom diffusers.pipelines.hidream_image.pipeline_output import HiDreamImagePipelineOutput\n\n\nif is_torch_xla_available():\n    import torch_xla.core.xla_model as xm\n\n    XLA_AVAILABLE = True\nelse:\n    XLA_AVAILABLE = False\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\nEXAMPLE_DOC_STRING = \"\"\"\n    Examples:\n        ```py\n        >>> import torch\n        >>> from transformers import PreTrainedTokenizerFast, LlamaForCausalLM\n        >>> from diffusers import UniPCMultistepScheduler, HiDreamImagePipeline, HiDreamImageTransformer2DModel\n\n        >>> scheduler = UniPCMultistepScheduler(\n        ...     flow_shift=3.0, prediction_type=\"flow_prediction\", use_flow_sigmas=True\n        ... )\n\n        >>> tokenizer_4 = PreTrainedTokenizerFast.from_pretrained(\"meta-llama/Meta-Llama-3.1-8B-Instruct\")\n        >>> text_encoder_4 = LlamaForCausalLM.from_pretrained(\n        ...     \"meta-llama/Meta-Llama-3.1-8B-Instruct\",\n        ...     output_hidden_states=True,\n        ...     output_attentions=True,\n        ...     torch_dtype=torch.bfloat16,\n        ... )\n\n        >>> transformer = HiDreamImageTransformer2DModel.from_pretrained(\n        ...     \"HiDream-ai/HiDream-I1-Full\", subfolder=\"transformer\", torch_dtype=torch.bfloat16\n        ... )\n\n        >>> pipe = HiDreamImagePipeline.from_pretrained(\n        ...     \"HiDream-ai/HiDream-I1-Full\",\n        ...     scheduler=scheduler,\n        ...     tokenizer_4=tokenizer_4,\n        ...     text_encoder_4=text_encoder_4,\n        ...     transformer=transformer,\n        ...     torch_dtype=torch.bfloat16,\n        ... )\n        >>> pipe.enable_model_cpu_offload()\n\n        >>> image = pipe(\n        ...     'A cat holding a sign that says \"Hi-Dreams.ai\".',\n        ...     height=1024,\n        ...     width=1024,\n        ...     guidance_scale=5.0,\n        ...     num_inference_steps=50,\n        ...     generator=torch.Generator(\"cuda\").manual_seed(0),\n        ... ).images[0]\n        >>> image.save(\"output.png\")\n        ```\n\"\"\"\n\n\n@torch.cuda.amp.autocast(dtype=torch.float32)\ndef optimized_scale(positive_flat, negative_flat):\n    # Calculate dot production\n    dot_product = torch.sum(positive_flat * negative_flat, dim=1, keepdim=True)\n\n    # Squared norm of uncondition\n    squared_norm = torch.sum(negative_flat ** 2, dim=1, keepdim=True) + 1e-8\n\n    # st_star = v_cond^T * v_uncond / ||v_uncond||^2\n    st_star = dot_product / squared_norm\n\n    return st_star\n\n\n# Copied from diffusers.pipelines.flux.pipeline_flux.calculate_shift\ndef calculate_shift(\n    image_seq_len,\n    base_seq_len: int = 256,\n    max_seq_len: int = 4096,\n    base_shift: float = 0.5,\n    max_shift: float = 1.15,\n):\n    m = (max_shift - base_shift) / (max_seq_len - base_seq_len)\n    b = base_shift - m * base_seq_len\n    mu = image_seq_len * m + b\n    return mu\n\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.retrieve_timesteps\ndef retrieve_timesteps(\n    scheduler,\n    num_inference_steps: Optional[int] = None,\n    device: Optional[Union[str, torch.device]] = None,\n    timesteps: Optional[List[int]] = None,\n    sigmas: Optional[List[float]] = None,\n    **kwargs,\n):\n    r\"\"\"\n    Calls the scheduler's `set_timesteps` method and retrieves timesteps from the scheduler after the call. Handles\n    custom timesteps. Any kwargs will be supplied to `scheduler.set_timesteps`.\n\n    Args:\n        scheduler (`SchedulerMixin`):\n            The scheduler to get timesteps from.\n        num_inference_steps (`int`):\n            The number of diffusion steps used when generating samples with a pre-trained model. If used, `timesteps`\n            must be `None`.\n        device (`str` or `torch.device`, *optional*):\n            The device to which the timesteps should be moved to. If `None`, the timesteps are not moved.\n        timesteps (`List[int]`, *optional*):\n            Custom timesteps used to override the timestep spacing strategy of the scheduler. If `timesteps` is passed,\n            `num_inference_steps` and `sigmas` must be `None`.\n        sigmas (`List[float]`, *optional*):\n            Custom sigmas used to override the timestep spacing strategy of the scheduler. If `sigmas` is passed,\n            `num_inference_steps` and `timesteps` must be `None`.\n\n    Returns:\n        `Tuple[torch.Tensor, int]`: A tuple where the first element is the timestep schedule from the scheduler and the\n        second element is the number of inference steps.\n    \"\"\"\n    if timesteps is not None and sigmas is not None:\n        raise ValueError(\"Only one of `timesteps` or `sigmas` can be passed. Please choose one to set custom values\")\n    if timesteps is not None:\n        accepts_timesteps = \"timesteps\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n        if not accepts_timesteps:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" timestep schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(timesteps=timesteps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    elif sigmas is not None:\n        accept_sigmas = \"sigmas\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n        if not accept_sigmas:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" sigmas schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(sigmas=sigmas, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    else:\n        scheduler.set_timesteps(num_inference_steps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n    return timesteps, num_inference_steps\n\n\nclass HiDreamImageCFGZeroPipeline(DiffusionPipeline, HiDreamImageLoraLoaderMixin):\n    model_cpu_offload_seq = \"text_encoder->text_encoder_2->text_encoder_3->text_encoder_4->transformer->vae\"\n    _callback_tensor_inputs = [\"latents\", \"prompt_embeds\"]\n\n    def __init__(\n        self,\n        scheduler: FlowMatchEulerDiscreteScheduler,\n        vae: AutoencoderKL,\n        text_encoder: CLIPTextModelWithProjection,\n        tokenizer: CLIPTokenizer,\n        text_encoder_2: CLIPTextModelWithProjection,\n        tokenizer_2: CLIPTokenizer,\n        text_encoder_3: T5EncoderModel,\n        tokenizer_3: T5Tokenizer,\n        text_encoder_4: LlamaForCausalLM,\n        tokenizer_4: PreTrainedTokenizerFast,\n        transformer: HiDreamImageTransformer2DModel,\n    ):\n        super().__init__()\n\n        self.register_modules(\n            vae=vae,\n            text_encoder=text_encoder,\n            text_encoder_2=text_encoder_2,\n            text_encoder_3=text_encoder_3,\n            text_encoder_4=text_encoder_4,\n            tokenizer=tokenizer,\n            tokenizer_2=tokenizer_2,\n            tokenizer_3=tokenizer_3,\n            tokenizer_4=tokenizer_4,\n            scheduler=scheduler,\n            transformer=transformer,\n        )\n        self.vae_scale_factor = (\n            2 ** (len(self.vae.config.block_out_channels) - 1) if hasattr(self, \"vae\") and self.vae is not None else 8\n        )\n        # HiDreamImage latents are turned into 2x2 patches and packed. This means the latent width and height has to be divisible\n        # by the patch size. So the vae scale factor is multiplied by the patch size to account for this\n        self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor * 2)\n        self.default_sample_size = 128\n        if getattr(self, \"tokenizer_4\", None) is not None:\n            self.tokenizer_4.pad_token = self.tokenizer_4.eos_token\n\n    def _get_t5_prompt_embeds(\n        self,\n        prompt: Union[str, List[str]] = None,\n        max_sequence_length: int = 128,\n        device: Optional[torch.device] = None,\n        dtype: Optional[torch.dtype] = None,\n    ):\n        device = device or self._execution_device\n        dtype = dtype or self.text_encoder_3.dtype\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n\n        text_inputs = self.tokenizer_3(\n            prompt,\n            padding=\"max_length\",\n            max_length=min(max_sequence_length, self.tokenizer_3.model_max_length),\n            truncation=True,\n            add_special_tokens=True,\n            return_tensors=\"pt\",\n        )\n        text_input_ids = text_inputs.input_ids\n        attention_mask = text_inputs.attention_mask\n        untruncated_ids = self.tokenizer_3(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n        if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(text_input_ids, untruncated_ids):\n            removed_text = self.tokenizer_3.batch_decode(\n                untruncated_ids[:, min(max_sequence_length, self.tokenizer_3.model_max_length) - 1 : -1]\n            )\n            logger.warning(\n                \"The following part of your input was truncated because `max_sequence_length` is set to \"\n                f\" {min(max_sequence_length, self.tokenizer_3.model_max_length)} tokens: {removed_text}\"\n            )\n\n        prompt_embeds = self.text_encoder_3(text_input_ids.to(device), attention_mask=attention_mask.to(device))[0]\n        prompt_embeds = prompt_embeds.to(dtype=dtype, device=device)\n        return prompt_embeds\n\n    def _get_clip_prompt_embeds(\n        self,\n        tokenizer,\n        text_encoder,\n        prompt: Union[str, List[str]],\n        max_sequence_length: int = 128,\n        device: Optional[torch.device] = None,\n        dtype: Optional[torch.dtype] = None,\n    ):\n        device = device or self._execution_device\n        dtype = dtype or text_encoder.dtype\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n\n        text_inputs = tokenizer(\n            prompt,\n            padding=\"max_length\",\n            max_length=min(max_sequence_length, 218),\n            truncation=True,\n            return_tensors=\"pt\",\n        )\n\n        text_input_ids = text_inputs.input_ids\n        untruncated_ids = tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n        if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(text_input_ids, untruncated_ids):\n            removed_text = tokenizer.batch_decode(untruncated_ids[:, 218 - 1 : -1])\n            logger.warning(\n                \"The following part of your input was truncated because CLIP can only handle sequences up to\"\n                f\" {218} tokens: {removed_text}\"\n            )\n        prompt_embeds = text_encoder(text_input_ids.to(device), output_hidden_states=True)\n\n        # Use pooled output of CLIPTextModel\n        prompt_embeds = prompt_embeds[0]\n        prompt_embeds = prompt_embeds.to(dtype=dtype, device=device)\n        return prompt_embeds\n\n    def _get_llama3_prompt_embeds(\n        self,\n        prompt: Union[str, List[str]] = None,\n        max_sequence_length: int = 128,\n        device: Optional[torch.device] = None,\n        dtype: Optional[torch.dtype] = None,\n    ):\n        device = device or self._execution_device\n        dtype = dtype or self.text_encoder_4.dtype\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n\n        text_inputs = self.tokenizer_4(\n            prompt,\n            padding=\"max_length\",\n            max_length=min(max_sequence_length, self.tokenizer_4.model_max_length),\n            truncation=True,\n            add_special_tokens=True,\n            return_tensors=\"pt\",\n        )\n        text_input_ids = text_inputs.input_ids\n        attention_mask = text_inputs.attention_mask\n        untruncated_ids = self.tokenizer_4(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n        if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(text_input_ids, untruncated_ids):\n            removed_text = self.tokenizer_4.batch_decode(\n                untruncated_ids[:, min(max_sequence_length, self.tokenizer_4.model_max_length) - 1 : -1]\n            )\n            logger.warning(\n                \"The following part of your input was truncated because `max_sequence_length` is set to \"\n                f\" {min(max_sequence_length, self.tokenizer_4.model_max_length)} tokens: {removed_text}\"\n            )\n\n        outputs = self.text_encoder_4(\n            text_input_ids.to(device),\n            attention_mask=attention_mask.to(device),\n            output_hidden_states=True,\n            output_attentions=True,\n        )\n\n        prompt_embeds = outputs.hidden_states[1:]\n        prompt_embeds = torch.stack(prompt_embeds, dim=0)\n        return prompt_embeds\n\n    def encode_prompt(\n        self,\n        prompt: Union[str, List[str]],\n        prompt_2: Union[str, List[str]],\n        prompt_3: Union[str, List[str]],\n        prompt_4: Union[str, List[str]],\n        device: Optional[torch.device] = None,\n        dtype: Optional[torch.dtype] = None,\n        num_images_per_prompt: int = 1,\n        do_classifier_free_guidance: bool = True,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        negative_prompt_2: Optional[Union[str, List[str]]] = None,\n        negative_prompt_3: Optional[Union[str, List[str]]] = None,\n        negative_prompt_4: Optional[Union[str, List[str]]] = None,\n        prompt_embeds: Optional[List[torch.FloatTensor]] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        max_sequence_length: int = 128,\n        lora_scale: Optional[float] = None,\n    ):\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n        if prompt is not None:\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds[0].shape[0] if isinstance(prompt_embeds, list) else prompt_embeds.shape[0]\n\n        prompt_embeds, pooled_prompt_embeds = self._encode_prompt(\n            prompt=prompt,\n            prompt_2=prompt_2,\n            prompt_3=prompt_3,\n            prompt_4=prompt_4,\n            device=device,\n            dtype=dtype,\n            num_images_per_prompt=num_images_per_prompt,\n            prompt_embeds=prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            max_sequence_length=max_sequence_length,\n        )\n\n        if do_classifier_free_guidance and negative_prompt_embeds is None:\n            negative_prompt = negative_prompt or \"\"\n            negative_prompt_2 = negative_prompt_2 or negative_prompt\n            negative_prompt_3 = negative_prompt_3 or negative_prompt\n            negative_prompt_4 = negative_prompt_4 or negative_prompt\n\n            # normalize str to list\n            negative_prompt = batch_size * [negative_prompt] if isinstance(negative_prompt, str) else negative_prompt\n            negative_prompt_2 = (\n                batch_size * [negative_prompt_2] if isinstance(negative_prompt_2, str) else negative_prompt_2\n            )\n            negative_prompt_3 = (\n                batch_size * [negative_prompt_3] if isinstance(negative_prompt_3, str) else negative_prompt_3\n            )\n            negative_prompt_4 = (\n                batch_size * [negative_prompt_4] if isinstance(negative_prompt_4, str) else negative_prompt_4\n            )\n\n            if prompt is not None and type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n\n            negative_prompt_embeds, negative_pooled_prompt_embeds = self._encode_prompt(\n                prompt=negative_prompt,\n                prompt_2=negative_prompt_2,\n                prompt_3=negative_prompt_3,\n                prompt_4=negative_prompt_4,\n                device=device,\n                dtype=dtype,\n                num_images_per_prompt=num_images_per_prompt,\n                prompt_embeds=negative_prompt_embeds,\n                pooled_prompt_embeds=negative_pooled_prompt_embeds,\n                max_sequence_length=max_sequence_length,\n            )\n        return prompt_embeds, negative_prompt_embeds, pooled_prompt_embeds, negative_pooled_prompt_embeds\n\n    def _encode_prompt(\n        self,\n        prompt: Union[str, List[str]],\n        prompt_2: Union[str, List[str]],\n        prompt_3: Union[str, List[str]],\n        prompt_4: Union[str, List[str]],\n        device: Optional[torch.device] = None,\n        dtype: Optional[torch.dtype] = None,\n        num_images_per_prompt: int = 1,\n        prompt_embeds: Optional[List[torch.FloatTensor]] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        max_sequence_length: int = 128,\n    ):\n        device = device or self._execution_device\n        if prompt is not None:\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds[0].shape[0] if isinstance(prompt_embeds, list) else prompt_embeds.shape[0]\n\n        if pooled_prompt_embeds is None:\n            prompt_2 = prompt_2 or prompt\n            prompt_2 = [prompt_2] if isinstance(prompt_2, str) else prompt_2\n\n            pooled_prompt_embeds_1 = self._get_clip_prompt_embeds(\n                self.tokenizer, self.text_encoder, prompt, max_sequence_length, device, dtype\n            )\n            pooled_prompt_embeds_2 = self._get_clip_prompt_embeds(\n                self.tokenizer_2, self.text_encoder_2, prompt_2, max_sequence_length, device, dtype\n            )\n            pooled_prompt_embeds = torch.cat([pooled_prompt_embeds_1, pooled_prompt_embeds_2], dim=-1)\n\n            pooled_prompt_embeds = pooled_prompt_embeds.repeat(1, num_images_per_prompt)\n            pooled_prompt_embeds = pooled_prompt_embeds.view(batch_size * num_images_per_prompt, -1)\n\n        if prompt_embeds is None:\n            prompt_3 = prompt_3 or prompt\n            prompt_3 = [prompt_3] if isinstance(prompt_3, str) else prompt_3\n\n            prompt_4 = prompt_4 or prompt\n            prompt_4 = [prompt_4] if isinstance(prompt_4, str) else prompt_4\n\n            t5_prompt_embeds = self._get_t5_prompt_embeds(prompt_3, max_sequence_length, device, dtype)\n            llama3_prompt_embeds = self._get_llama3_prompt_embeds(prompt_4, max_sequence_length, device, dtype)\n\n            _, seq_len, _ = t5_prompt_embeds.shape\n            t5_prompt_embeds = t5_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n            t5_prompt_embeds = t5_prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n            _, _, seq_len, dim = llama3_prompt_embeds.shape\n            llama3_prompt_embeds = llama3_prompt_embeds.repeat(1, 1, num_images_per_prompt, 1)\n            llama3_prompt_embeds = llama3_prompt_embeds.view(-1, batch_size * num_images_per_prompt, seq_len, dim)\n\n            prompt_embeds = [t5_prompt_embeds, llama3_prompt_embeds]\n\n        return prompt_embeds, pooled_prompt_embeds\n\n    def enable_vae_slicing(self):\n        r\"\"\"\n        Enable sliced VAE decoding. When this option is enabled, the VAE will split the input tensor in slices to\n        compute decoding in several steps. This is useful to save some memory and allow larger batch sizes.\n        \"\"\"\n        self.vae.enable_slicing()\n\n    def disable_vae_slicing(self):\n        r\"\"\"\n        Disable sliced VAE decoding. If `enable_vae_slicing` was previously enabled, this method will go back to\n        computing decoding in one step.\n        \"\"\"\n        self.vae.disable_slicing()\n\n    def enable_vae_tiling(self):\n        r\"\"\"\n        Enable tiled VAE decoding. When this option is enabled, the VAE will split the input tensor into tiles to\n        compute decoding and encoding in several steps. This is useful for saving a large amount of memory and to allow\n        processing larger images.\n        \"\"\"\n        self.vae.enable_tiling()\n\n    def disable_vae_tiling(self):\n        r\"\"\"\n        Disable tiled VAE decoding. If `enable_vae_tiling` was previously enabled, this method will go back to\n        computing decoding in one step.\n        \"\"\"\n        self.vae.disable_tiling()\n\n    def prepare_latents(\n        self,\n        batch_size,\n        num_channels_latents,\n        height,\n        width,\n        dtype,\n        device,\n        generator,\n        latents=None,\n    ):\n        # VAE applies 8x compression on images but we must also account for packing which requires\n        # latent height and width to be divisible by 2.\n        height = 2 * (int(height) // (self.vae_scale_factor * 2))\n        width = 2 * (int(width) // (self.vae_scale_factor * 2))\n\n        shape = (batch_size, num_channels_latents, height, width)\n\n        if latents is None:\n            latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n        else:\n            if latents.shape != shape:\n                raise ValueError(f\"Unexpected latents shape, got {latents.shape}, expected {shape}\")\n            latents = latents.to(device)\n        return latents\n\n    @property\n    def guidance_scale(self):\n        return self._guidance_scale\n\n    @property\n    def do_classifier_free_guidance(self):\n        return self._guidance_scale > 1\n\n    @property\n    def attention_kwargs(self):\n        return self._attention_kwargs\n\n    @property\n    def num_timesteps(self):\n        return self._num_timesteps\n\n    @property\n    def interrupt(self):\n        return self._interrupt\n\n    @torch.no_grad()\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        prompt_2: Optional[Union[str, List[str]]] = None,\n        prompt_3: Optional[Union[str, List[str]]] = None,\n        prompt_4: Optional[Union[str, List[str]]] = None,\n        height: Optional[int] = None,\n        width: Optional[int] = None,\n        num_inference_steps: int = 50,\n        sigmas: Optional[List[float]] = None,\n        guidance_scale: float = 5.0,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        negative_prompt_2: Optional[Union[str, List[str]]] = None,\n        negative_prompt_3: Optional[Union[str, List[str]]] = None,\n        negative_prompt_4: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.FloatTensor] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        attention_kwargs: Optional[Dict[str, Any]] = None,\n        callback_on_step_end: Optional[Callable[[int, int, Dict], None]] = None,\n        callback_on_step_end_tensor_inputs: List[str] = [\"latents\"],\n        max_sequence_length: int = 128,\n        use_cfg_zero_star: Optional[bool] = True,\n        use_zero_init: Optional[bool] = True,\n        zero_steps: Optional[int] = 0,\n    ):\n        height = height or self.default_sample_size * self.vae_scale_factor\n        width = width or self.default_sample_size * self.vae_scale_factor\n\n        division = self.vae_scale_factor * 2\n        S_max = (self.default_sample_size * self.vae_scale_factor) ** 2\n        scale = S_max / (width * height)\n        scale = math.sqrt(scale)\n        width, height = int(width * scale // division * division), int(height * scale // division * division)\n\n        self._guidance_scale = guidance_scale\n        self._attention_kwargs = attention_kwargs\n        self._interrupt = False\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        elif prompt_embeds is not None:\n            batch_size = prompt_embeds[0].shape[0] if isinstance(prompt_embeds, list) else prompt_embeds.shape[0]\n        else:\n            batch_size = 1\n\n        device = self._execution_device\n\n        lora_scale = self.attention_kwargs.get(\"scale\", None) if self.attention_kwargs is not None else None\n        (\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n        ) = self.encode_prompt(\n            prompt=prompt,\n            prompt_2=prompt_2,\n            prompt_3=prompt_3,\n            prompt_4=prompt_4,\n            negative_prompt=negative_prompt,\n            negative_prompt_2=negative_prompt_2,\n            negative_prompt_3=negative_prompt_3,\n            negative_prompt_4=negative_prompt_4,\n            do_classifier_free_guidance=self.do_classifier_free_guidance,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            negative_pooled_prompt_embeds=negative_pooled_prompt_embeds,\n            device=device,\n            num_images_per_prompt=num_images_per_prompt,\n            max_sequence_length=max_sequence_length,\n            lora_scale=lora_scale,\n        )\n\n        if self.do_classifier_free_guidance:\n            prompt_embeds_arr = []\n            for n, p in zip(negative_prompt_embeds, prompt_embeds):\n                if len(n.shape) == 3:\n                    prompt_embeds_arr.append(torch.cat([n, p], dim=0))\n                else:\n                    prompt_embeds_arr.append(torch.cat([n, p], dim=1))\n            prompt_embeds = prompt_embeds_arr\n            pooled_prompt_embeds = torch.cat([negative_pooled_prompt_embeds, pooled_prompt_embeds], dim=0)\n\n        # 4. Prepare latent variables\n        num_channels_latents = self.transformer.config.in_channels\n        latents = self.prepare_latents(\n            batch_size * num_images_per_prompt,\n            num_channels_latents,\n            height,\n            width,\n            pooled_prompt_embeds.dtype,\n            device,\n            generator,\n            latents,\n        )\n\n        if latents.shape[-2] != latents.shape[-1]:\n            B, C, H, W = latents.shape\n            pH, pW = H // self.transformer.config.patch_size, W // self.transformer.config.patch_size\n\n            img_sizes = torch.tensor([pH, pW], dtype=torch.int64).reshape(-1)\n            img_ids = torch.zeros(pH, pW, 3)\n            img_ids[..., 1] = img_ids[..., 1] + torch.arange(pH)[:, None]\n            img_ids[..., 2] = img_ids[..., 2] + torch.arange(pW)[None, :]\n            img_ids = img_ids.reshape(pH * pW, -1)\n            img_ids_pad = torch.zeros(self.transformer.max_seq, 3)\n            img_ids_pad[: pH * pW, :] = img_ids\n\n            img_sizes = img_sizes.unsqueeze(0).to(latents.device)\n            img_ids = img_ids_pad.unsqueeze(0).to(latents.device)\n            if self.do_classifier_free_guidance:\n                img_sizes = img_sizes.repeat(2 * B, 1)\n                img_ids = img_ids.repeat(2 * B, 1, 1)\n        else:\n            img_sizes = img_ids = None\n\n        # 5. Prepare timesteps\n        mu = calculate_shift(self.transformer.max_seq)\n        scheduler_kwargs = {\"mu\": mu}\n        if isinstance(self.scheduler, UniPCMultistepScheduler):\n            self.scheduler.set_timesteps(num_inference_steps, device=device)  # , shift=math.exp(mu))\n            timesteps = self.scheduler.timesteps\n        else:\n            timesteps, num_inference_steps = retrieve_timesteps(\n                self.scheduler,\n                num_inference_steps,\n                device,\n                sigmas=sigmas,\n                **scheduler_kwargs,\n            )\n        num_warmup_steps = max(len(timesteps) - num_inference_steps * self.scheduler.order, 0)\n        self._num_timesteps = len(timesteps)\n\n        # 6. Denoising loop\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                if self.interrupt:\n                    continue\n\n                # expand the latents if we are doing classifier free guidance\n                latent_model_input = torch.cat([latents] * 2) if self.do_classifier_free_guidance else latents\n                # broadcast to batch dimension in a way that's compatible with ONNX/Core ML\n                timestep = t.expand(latent_model_input.shape[0])\n\n                noise_pred = self.transformer(\n                    hidden_states=latent_model_input,\n                    timesteps=timestep,\n                    encoder_hidden_states_t5=prompt_embeds[0],\n                    encoder_hidden_states_llama3=prompt_embeds[1],\n                    pooled_embeds=pooled_prompt_embeds,\n                    # img_sizes=img_sizes,\n                    # img_ids=img_ids,\n                    return_dict=False,\n                )[0]\n                noise_pred = -noise_pred\n\n                # perform guidance\n                if self.do_classifier_free_guidance:\n                    noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                    if use_cfg_zero_star:\n                        positive_flat = noise_pred_text.view(batch_size, -1)\n                        negative_flat = noise_pred_uncond.view(batch_size, -1)\n\n                        alpha = optimized_scale(positive_flat,negative_flat)\n                        alpha = alpha.view(batch_size, *([1] * (len(noise_pred_text.shape) - 1)))\n                        alpha = alpha.to(positive_flat.dtype)\n\n                        if (i <= zero_steps) and use_zero_init:\n                            noise_pred = noise_pred_text*0.\n                        else:\n                            noise_pred = noise_pred_uncond * alpha + guidance_scale * (noise_pred_text - noise_pred_uncond * alpha)\n                    else:\n                        noise_pred = noise_pred_uncond + self.guidance_scale * (noise_pred_text - noise_pred_uncond)\n                else:\n                    if (i <= zero_steps) and use_zero_init:\n                        noise_pred = noise_pred*0.\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents_dtype = latents.dtype\n                latents = self.scheduler.step(noise_pred, t, latents, return_dict=False)[0]\n\n                if latents.dtype != latents_dtype:\n                    if torch.backends.mps.is_available():\n                        # some platforms (eg. apple mps) misbehave due to a pytorch bug: https://github.com/pytorch/pytorch/pull/99272\n                        latents = latents.to(latents_dtype)\n\n                if callback_on_step_end is not None:\n                    callback_kwargs = {}\n                    for k in callback_on_step_end_tensor_inputs:\n                        callback_kwargs[k] = locals()[k]\n                    callback_outputs = callback_on_step_end(self, i, t, callback_kwargs)\n\n                    latents = callback_outputs.pop(\"latents\", latents)\n                    prompt_embeds = callback_outputs.pop(\"prompt_embeds\", prompt_embeds)\n                    negative_prompt_embeds = callback_outputs.pop(\"negative_prompt_embeds\", negative_prompt_embeds)\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n\n                if XLA_AVAILABLE:\n                    xm.mark_step()\n\n        if output_type == \"latent\":\n            image = latents\n\n        else:\n            latents = (latents / self.vae.config.scaling_factor) + self.vae.config.shift_factor\n\n            image = self.vae.decode(latents, return_dict=False)[0]\n            image = self.image_processor.postprocess(image, output_type=output_type)\n\n        # Offload all models\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return (image,)\n\n        return HiDreamImagePipelineOutput(images=image)\n"
  },
  {
    "path": "modules/cfgzero/hunyuan_t2v_pipeline.py",
    "content": "# Copyright 2024 The HunyuanVideo Team and The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport inspect\nfrom typing import Any, Callable, Dict, List, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom transformers import CLIPTextModel, CLIPTokenizer, LlamaModel, LlamaTokenizerFast\n\nfrom diffusers.callbacks import MultiPipelineCallbacks, PipelineCallback\nfrom diffusers.loaders import HunyuanVideoLoraLoaderMixin\nfrom diffusers.models import AutoencoderKLHunyuanVideo, HunyuanVideoTransformer3DModel\nfrom diffusers.schedulers import FlowMatchEulerDiscreteScheduler\nfrom diffusers.utils import is_torch_xla_available, logging, replace_example_docstring\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom diffusers.video_processor import VideoProcessor\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline\nfrom diffusers.pipelines.hunyuan_video.pipeline_output import HunyuanVideoPipelineOutput\n\n\nif is_torch_xla_available():\n    import torch_xla.core.xla_model as xm\n\n    XLA_AVAILABLE = True\nelse:\n    XLA_AVAILABLE = False\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\nEXAMPLE_DOC_STRING = \"\"\"\n    Examples:\n        ```python\n        >>> import torch\n        >>> from diffusers import HunyuanVideoPipeline, HunyuanVideoTransformer3DModel\n        >>> from diffusers.utils import export_to_video\n\n        >>> model_id = \"hunyuanvideo-community/HunyuanVideo\"\n        >>> transformer = HunyuanVideoTransformer3DModel.from_pretrained(\n        ...     model_id, subfolder=\"transformer\", torch_dtype=torch.bfloat16\n        ... )\n        >>> pipe = HunyuanVideoPipeline.from_pretrained(model_id, transformer=transformer, torch_dtype=torch.float16)\n        >>> pipe.vae.enable_tiling()\n        >>> pipe.to(\"cuda\")\n\n        >>> output = pipe(\n        ...     prompt=\"A cat walks on the grass, realistic\",\n        ...     height=320,\n        ...     width=512,\n        ...     num_frames=61,\n        ...     num_inference_steps=30,\n        ... ).frames[0]\n        >>> export_to_video(output, \"output.mp4\", fps=15)\n        ```\n\"\"\"\n\n@torch.cuda.amp.autocast(dtype=torch.float32)\ndef optimized_scale(positive_flat, negative_flat):\n\n    # Calculate dot production\n    dot_product = torch.sum(positive_flat * negative_flat, dim=1, keepdim=True)\n\n    # Squared norm of uncondition\n    squared_norm = torch.sum(negative_flat ** 2, dim=1, keepdim=True) + 1e-8\n\n    # st_star = v_cond^T * v_uncond / ||v_uncond||^2\n    st_star = dot_product / squared_norm\n\n    return st_star\n\nDEFAULT_PROMPT_TEMPLATE = {\n    \"template\": (\n        \"<|start_header_id|>system<|end_header_id|>\\n\\nDescribe the video by detailing the following aspects: \"\n        \"1. The main content and theme of the video.\"\n        \"2. The color, shape, size, texture, quantity, text, and spatial relationships of the objects.\"\n        \"3. Actions, events, behaviors temporal relationships, physical movement changes of the objects.\"\n        \"4. background environment, light, style and atmosphere.\"\n        \"5. camera angles, movements, and transitions used in the video:<|eot_id|>\"\n        \"<|start_header_id|>user<|end_header_id|>\\n\\n{}<|eot_id|>\"\n    ),\n    \"crop_start\": 95,\n}\n\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.retrieve_timesteps\ndef retrieve_timesteps(\n    scheduler,\n    num_inference_steps: Optional[int] = None,\n    device: Optional[Union[str, torch.device]] = None,\n    timesteps: Optional[List[int]] = None,\n    sigmas: Optional[List[float]] = None,\n    **kwargs,\n):\n    r\"\"\"\n    Calls the scheduler's `set_timesteps` method and retrieves timesteps from the scheduler after the call. Handles\n    custom timesteps. Any kwargs will be supplied to `scheduler.set_timesteps`.\n\n    Args:\n        scheduler (`SchedulerMixin`):\n            The scheduler to get timesteps from.\n        num_inference_steps (`int`):\n            The number of diffusion steps used when generating samples with a pre-trained model. If used, `timesteps`\n            must be `None`.\n        device (`str` or `torch.device`, *optional*):\n            The device to which the timesteps should be moved to. If `None`, the timesteps are not moved.\n        timesteps (`List[int]`, *optional*):\n            Custom timesteps used to override the timestep spacing strategy of the scheduler. If `timesteps` is passed,\n            `num_inference_steps` and `sigmas` must be `None`.\n        sigmas (`List[float]`, *optional*):\n            Custom sigmas used to override the timestep spacing strategy of the scheduler. If `sigmas` is passed,\n            `num_inference_steps` and `timesteps` must be `None`.\n\n    Returns:\n        `Tuple[torch.Tensor, int]`: A tuple where the first element is the timestep schedule from the scheduler and the\n        second element is the number of inference steps.\n    \"\"\"\n    if timesteps is not None and sigmas is not None:\n        raise ValueError(\"Only one of `timesteps` or `sigmas` can be passed. Please choose one to set custom values\")\n    if timesteps is not None:\n        accepts_timesteps = \"timesteps\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n        if not accepts_timesteps:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" timestep schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(timesteps=timesteps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    elif sigmas is not None:\n        accept_sigmas = \"sigmas\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n        if not accept_sigmas:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" sigmas schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(sigmas=sigmas, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    else:\n        scheduler.set_timesteps(num_inference_steps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n    return timesteps, num_inference_steps\n\n\nclass HunyuanVideoCFGZeroPipeline(DiffusionPipeline, HunyuanVideoLoraLoaderMixin):\n    r\"\"\"\n    Pipeline for text-to-video generation using HunyuanVideo.\n\n    This model inherits from [`DiffusionPipeline`]. Check the superclass documentation for the generic methods\n    implemented for all pipelines (downloading, saving, running on a particular device, etc.).\n\n    Args:\n        text_encoder ([`LlamaModel`]):\n            [Llava Llama3-8B](https://huggingface.co/xtuner/llava-llama-3-8b-v1_1-transformers).\n        tokenizer (`LlamaTokenizer`):\n            Tokenizer from [Llava Llama3-8B](https://huggingface.co/xtuner/llava-llama-3-8b-v1_1-transformers).\n        transformer ([`HunyuanVideoTransformer3DModel`]):\n            Conditional Transformer to denoise the encoded image latents.\n        scheduler ([`FlowMatchEulerDiscreteScheduler`]):\n            A scheduler to be used in combination with `transformer` to denoise the encoded image latents.\n        vae ([`AutoencoderKLHunyuanVideo`]):\n            Variational Auto-Encoder (VAE) Model to encode and decode videos to and from latent representations.\n        text_encoder_2 ([`CLIPTextModel`]):\n            [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModel), specifically\n            the [clip-vit-large-patch14](https://huggingface.co/openai/clip-vit-large-patch14) variant.\n        tokenizer_2 (`CLIPTokenizer`):\n            Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/en/model_doc/clip#transformers.CLIPTokenizer).\n    \"\"\"\n\n    model_cpu_offload_seq = \"text_encoder->text_encoder_2->transformer->vae\"\n    _callback_tensor_inputs = [\"latents\", \"prompt_embeds\"]\n\n    def __init__(\n        self,\n        text_encoder: LlamaModel,\n        tokenizer: LlamaTokenizerFast,\n        transformer: HunyuanVideoTransformer3DModel,\n        vae: AutoencoderKLHunyuanVideo,\n        scheduler: FlowMatchEulerDiscreteScheduler,\n        text_encoder_2: CLIPTextModel,\n        tokenizer_2: CLIPTokenizer,\n    ):\n        super().__init__()\n\n        self.register_modules(\n            vae=vae,\n            text_encoder=text_encoder,\n            tokenizer=tokenizer,\n            transformer=transformer,\n            scheduler=scheduler,\n            text_encoder_2=text_encoder_2,\n            tokenizer_2=tokenizer_2,\n        )\n\n        self.vae_scale_factor_temporal = self.vae.temporal_compression_ratio if getattr(self, \"vae\", None) else 4\n        self.vae_scale_factor_spatial = self.vae.spatial_compression_ratio if getattr(self, \"vae\", None) else 8\n        self.video_processor = VideoProcessor(vae_scale_factor=self.vae_scale_factor_spatial)\n\n    def _get_llama_prompt_embeds(\n        self,\n        prompt: Union[str, List[str]],\n        prompt_template: Dict[str, Any],\n        num_videos_per_prompt: int = 1,\n        device: Optional[torch.device] = None,\n        dtype: Optional[torch.dtype] = None,\n        max_sequence_length: int = 256,\n        num_hidden_layers_to_skip: int = 2,\n    ) -> Tuple[torch.Tensor, torch.Tensor]:\n        device = device or self._execution_device\n        dtype = dtype or self.text_encoder.dtype\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n        batch_size = len(prompt)\n\n        prompt = [prompt_template[\"template\"].format(p) for p in prompt]\n\n        crop_start = prompt_template.get(\"crop_start\", None)\n        if crop_start is None:\n            prompt_template_input = self.tokenizer(\n                prompt_template[\"template\"],\n                padding=\"max_length\",\n                return_tensors=\"pt\",\n                return_length=False,\n                return_overflowing_tokens=False,\n                return_attention_mask=False,\n            )\n            crop_start = prompt_template_input[\"input_ids\"].shape[-1]\n            # Remove <|eot_id|> token and placeholder {}\n            crop_start -= 2\n\n        max_sequence_length += crop_start\n        text_inputs = self.tokenizer(\n            prompt,\n            max_length=max_sequence_length,\n            padding=\"max_length\",\n            truncation=True,\n            return_tensors=\"pt\",\n            return_length=False,\n            return_overflowing_tokens=False,\n            return_attention_mask=True,\n        )\n        text_input_ids = text_inputs.input_ids.to(device=device)\n        prompt_attention_mask = text_inputs.attention_mask.to(device=device)\n\n        prompt_embeds = self.text_encoder(\n            input_ids=text_input_ids,\n            attention_mask=prompt_attention_mask,\n            output_hidden_states=True,\n        ).hidden_states[-(num_hidden_layers_to_skip + 1)]\n        prompt_embeds = prompt_embeds.to(dtype=dtype)\n\n        if crop_start is not None and crop_start > 0:\n            prompt_embeds = prompt_embeds[:, crop_start:]\n            prompt_attention_mask = prompt_attention_mask[:, crop_start:]\n\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        _, seq_len, _ = prompt_embeds.shape\n        prompt_embeds = prompt_embeds.repeat(1, num_videos_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(batch_size * num_videos_per_prompt, seq_len, -1)\n        prompt_attention_mask = prompt_attention_mask.repeat(1, num_videos_per_prompt)\n        prompt_attention_mask = prompt_attention_mask.view(batch_size * num_videos_per_prompt, seq_len)\n\n        return prompt_embeds, prompt_attention_mask\n\n    def _get_clip_prompt_embeds(\n        self,\n        prompt: Union[str, List[str]],\n        num_videos_per_prompt: int = 1,\n        device: Optional[torch.device] = None,\n        dtype: Optional[torch.dtype] = None,\n        max_sequence_length: int = 77,\n    ) -> torch.Tensor:\n        device = device or self._execution_device\n        dtype = dtype or self.text_encoder_2.dtype\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n        batch_size = len(prompt)\n\n        text_inputs = self.tokenizer_2(\n            prompt,\n            padding=\"max_length\",\n            max_length=max_sequence_length,\n            truncation=True,\n            return_tensors=\"pt\",\n        )\n\n        text_input_ids = text_inputs.input_ids\n        untruncated_ids = self.tokenizer_2(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n        if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(text_input_ids, untruncated_ids):\n            removed_text = self.tokenizer_2.batch_decode(untruncated_ids[:, max_sequence_length - 1 : -1])\n            logger.warning(\n                \"The following part of your input was truncated because CLIP can only handle sequences up to\"\n                f\" {max_sequence_length} tokens: {removed_text}\"\n            )\n\n        prompt_embeds = self.text_encoder_2(text_input_ids.to(device), output_hidden_states=False).pooler_output\n\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_videos_per_prompt)\n        prompt_embeds = prompt_embeds.view(batch_size * num_videos_per_prompt, -1)\n\n        return prompt_embeds\n\n    def encode_prompt(\n        self,\n        prompt: Union[str, List[str]],\n        prompt_2: Union[str, List[str]] = None,\n        prompt_template: Dict[str, Any] = DEFAULT_PROMPT_TEMPLATE,\n        num_videos_per_prompt: int = 1,\n        prompt_embeds: Optional[torch.Tensor] = None,\n        pooled_prompt_embeds: Optional[torch.Tensor] = None,\n        prompt_attention_mask: Optional[torch.Tensor] = None,\n        device: Optional[torch.device] = None,\n        dtype: Optional[torch.dtype] = None,\n        max_sequence_length: int = 256,\n    ):\n        if prompt_embeds is None:\n            prompt_embeds, prompt_attention_mask = self._get_llama_prompt_embeds(\n                prompt,\n                prompt_template,\n                num_videos_per_prompt,\n                device=device,\n                dtype=dtype,\n                max_sequence_length=max_sequence_length,\n            )\n\n        if pooled_prompt_embeds is None:\n            if prompt_2 is None:\n                prompt_2 = prompt\n            pooled_prompt_embeds = self._get_clip_prompt_embeds(\n                prompt,\n                num_videos_per_prompt,\n                device=device,\n                dtype=dtype,\n                max_sequence_length=77,\n            )\n\n        return prompt_embeds, pooled_prompt_embeds, prompt_attention_mask\n\n    def check_inputs(\n        self,\n        prompt,\n        prompt_2,\n        height,\n        width,\n        prompt_embeds=None,\n        callback_on_step_end_tensor_inputs=None,\n        prompt_template=None,\n    ):\n        if height % 16 != 0 or width % 16 != 0:\n            raise ValueError(f\"`height` and `width` have to be divisible by 16 but are {height} and {width}.\")\n\n        if callback_on_step_end_tensor_inputs is not None and not all(\n            k in self._callback_tensor_inputs for k in callback_on_step_end_tensor_inputs\n        ):\n            raise ValueError(\n                f\"`callback_on_step_end_tensor_inputs` has to be in {self._callback_tensor_inputs}, but found {[k for k in callback_on_step_end_tensor_inputs if k not in self._callback_tensor_inputs]}\"\n            )\n\n        if prompt is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt_2 is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt_2`: {prompt_2} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n        elif prompt_2 is not None and (not isinstance(prompt_2, str) and not isinstance(prompt_2, list)):\n            raise ValueError(f\"`prompt_2` has to be of type `str` or `list` but is {type(prompt_2)}\")\n\n        if prompt_template is not None:\n            if not isinstance(prompt_template, dict):\n                raise ValueError(f\"`prompt_template` has to be of type `dict` but is {type(prompt_template)}\")\n            if \"template\" not in prompt_template:\n                raise ValueError(\n                    f\"`prompt_template` has to contain a key `template` but only found {prompt_template.keys()}\"\n                )\n\n    def prepare_latents(\n        self,\n        batch_size: int,\n        num_channels_latents: int = 32,\n        height: int = 720,\n        width: int = 1280,\n        num_frames: int = 129,\n        dtype: Optional[torch.dtype] = None,\n        device: Optional[torch.device] = None,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.Tensor] = None,\n    ) -> torch.Tensor:\n        if latents is not None:\n            return latents.to(device=device, dtype=dtype)\n\n        shape = (\n            batch_size,\n            num_channels_latents,\n            (num_frames - 1) // self.vae_scale_factor_temporal + 1,\n            int(height) // self.vae_scale_factor_spatial,\n            int(width) // self.vae_scale_factor_spatial,\n        )\n        if isinstance(generator, list) and len(generator) != batch_size:\n            raise ValueError(\n                f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n            )\n\n        latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n        return latents\n\n    def enable_vae_slicing(self):\n        r\"\"\"\n        Enable sliced VAE decoding. When this option is enabled, the VAE will split the input tensor in slices to\n        compute decoding in several steps. This is useful to save some memory and allow larger batch sizes.\n        \"\"\"\n        self.vae.enable_slicing()\n\n    def disable_vae_slicing(self):\n        r\"\"\"\n        Disable sliced VAE decoding. If `enable_vae_slicing` was previously enabled, this method will go back to\n        computing decoding in one step.\n        \"\"\"\n        self.vae.disable_slicing()\n\n    def enable_vae_tiling(self):\n        r\"\"\"\n        Enable tiled VAE decoding. When this option is enabled, the VAE will split the input tensor into tiles to\n        compute decoding and encoding in several steps. This is useful for saving a large amount of memory and to allow\n        processing larger images.\n        \"\"\"\n        self.vae.enable_tiling()\n\n    def disable_vae_tiling(self):\n        r\"\"\"\n        Disable tiled VAE decoding. If `enable_vae_tiling` was previously enabled, this method will go back to\n        computing decoding in one step.\n        \"\"\"\n        self.vae.disable_tiling()\n\n    @property\n    def guidance_scale(self):\n        return self._guidance_scale\n\n    @property\n    def num_timesteps(self):\n        return self._num_timesteps\n\n    @property\n    def attention_kwargs(self):\n        return self._attention_kwargs\n\n    @property\n    def current_timestep(self):\n        return self._current_timestep\n\n    @property\n    def interrupt(self):\n        return self._interrupt\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        prompt_2: Union[str, List[str]] = None,\n        negative_prompt: Union[str, List[str]] = None,\n        negative_prompt_2: Union[str, List[str]] = None,\n        height: int = 720,\n        width: int = 1280,\n        num_frames: int = 129,\n        num_inference_steps: int = 50,\n        sigmas: List[float] = None,\n        true_cfg_scale: float = 1.0,\n        guidance_scale: float = 6.0,\n        num_videos_per_prompt: Optional[int] = 1,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.Tensor] = None,\n        prompt_embeds: Optional[torch.Tensor] = None,\n        pooled_prompt_embeds: Optional[torch.Tensor] = None,\n        prompt_attention_mask: Optional[torch.Tensor] = None,\n        negative_prompt_embeds: Optional[torch.Tensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.Tensor] = None,\n        negative_prompt_attention_mask: Optional[torch.Tensor] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        attention_kwargs: Optional[Dict[str, Any]] = None,\n        callback_on_step_end: Optional[\n            Union[Callable[[int, int, Dict], None], PipelineCallback, MultiPipelineCallbacks]\n        ] = None,\n        callback_on_step_end_tensor_inputs: List[str] = [\"latents\"],\n        prompt_template: Dict[str, Any] = DEFAULT_PROMPT_TEMPLATE,\n        max_sequence_length: int = 256,\n        use_cfg_zero_star: Optional[bool] = False,\n        use_zero_init: Optional[bool] = True,\n        zero_steps: Optional[int] = 0,\n    ):\n        r\"\"\"\n        The call function to the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide the image generation. If not defined, one has to pass `prompt_embeds`.\n                instead.\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                will be used instead.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `true_cfg_scale` is\n                not greater than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in all the text-encoders.\n            height (`int`, defaults to `720`):\n                The height in pixels of the generated image.\n            width (`int`, defaults to `1280`):\n                The width in pixels of the generated image.\n            num_frames (`int`, defaults to `129`):\n                The number of frames in the generated video.\n            num_inference_steps (`int`, defaults to `50`):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            sigmas (`List[float]`, *optional*):\n                Custom sigmas to use for the denoising process with schedulers which support a `sigmas` argument in\n                their `set_timesteps` method. If not defined, the default behavior when `num_inference_steps` is passed\n                will be used.\n            true_cfg_scale (`float`, *optional*, defaults to 1.0):\n                When > 1.0 and a provided `negative_prompt`, enables true classifier-free guidance.\n            guidance_scale (`float`, defaults to `6.0`):\n                Guidance scale as defined in [Classifier-Free Diffusion Guidance](https://arxiv.org/abs/2207.12598).\n                `guidance_scale` is defined as `w` of equation 2. of [Imagen\n                Paper](https://arxiv.org/pdf/2205.11487.pdf). Guidance scale is enabled by setting `guidance_scale >\n                1`. Higher guidance scale encourages to generate images that are closely linked to the text `prompt`,\n                usually at the expense of lower image quality. Note that the only available HunyuanVideo model is\n                CFG-distilled, which means that traditional guidance between unconditional and conditional latent is\n                not applied.\n            num_videos_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                A [`torch.Generator`](https://pytorch.org/docs/stable/generated/torch.Generator.html) to make\n                generation deterministic.\n            latents (`torch.Tensor`, *optional*):\n                Pre-generated noisy latents sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor is generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs (prompt weighting). If not\n                provided, text embeddings are generated from the `prompt` input argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generated image. Choose between `PIL.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`HunyuanVideoPipelineOutput`] instead of a plain tuple.\n            attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            clip_skip (`int`, *optional*):\n                Number of layers to be skipped from CLIP while computing the prompt embeddings. A value of 1 means that\n                the output of the pre-final layer will be used for computing the prompt embeddings.\n            callback_on_step_end (`Callable`, `PipelineCallback`, `MultiPipelineCallbacks`, *optional*):\n                A function or a subclass of `PipelineCallback` or `MultiPipelineCallbacks` that is called at the end of\n                each denoising step during the inference. with the following arguments: `callback_on_step_end(self:\n                DiffusionPipeline, step: int, timestep: int, callback_kwargs: Dict)`. `callback_kwargs` will include a\n                list of all tensors as specified by `callback_on_step_end_tensor_inputs`.\n            callback_on_step_end_tensor_inputs (`List`, *optional*):\n                The list of tensor inputs for the `callback_on_step_end` function. The tensors specified in the list\n                will be passed as `callback_kwargs` argument. You will only be able to include variables listed in the\n                `._callback_tensor_inputs` attribute of your pipeline class.\n\n        Examples:\n\n        Returns:\n            [`~HunyuanVideoPipelineOutput`] or `tuple`:\n                If `return_dict` is `True`, [`HunyuanVideoPipelineOutput`] is returned, otherwise a `tuple` is returned\n                where the first element is a list with the generated images and the second element is a list of `bool`s\n                indicating whether the corresponding generated image contains \"not-safe-for-work\" (nsfw) content.\n        \"\"\"\n\n        if isinstance(callback_on_step_end, (PipelineCallback, MultiPipelineCallbacks)):\n            callback_on_step_end_tensor_inputs = callback_on_step_end.tensor_inputs\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            prompt_2,\n            height,\n            width,\n            prompt_embeds,\n            callback_on_step_end_tensor_inputs,\n            prompt_template,\n        )\n\n        has_neg_prompt = negative_prompt is not None or (\n            negative_prompt_embeds is not None and negative_pooled_prompt_embeds is not None\n        )\n        do_true_cfg = true_cfg_scale > 1 and has_neg_prompt\n\n        self._guidance_scale = guidance_scale\n        self._attention_kwargs = attention_kwargs\n        self._current_timestep = None\n        self._interrupt = False\n\n        device = self._execution_device\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        # 3. Encode input prompt\n        transformer_dtype = self.transformer.dtype\n        prompt_embeds, pooled_prompt_embeds, prompt_attention_mask = self.encode_prompt(\n            prompt=prompt,\n            prompt_2=prompt_2,\n            prompt_template=prompt_template,\n            num_videos_per_prompt=num_videos_per_prompt,\n            prompt_embeds=prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            prompt_attention_mask=prompt_attention_mask,\n            device=device,\n            max_sequence_length=max_sequence_length,\n        )\n        prompt_embeds = prompt_embeds.to(transformer_dtype)\n        prompt_attention_mask = prompt_attention_mask.to(transformer_dtype)\n        pooled_prompt_embeds = pooled_prompt_embeds.to(transformer_dtype)\n\n        if do_true_cfg:\n            negative_prompt_embeds, negative_pooled_prompt_embeds, negative_prompt_attention_mask = self.encode_prompt(\n                prompt=negative_prompt,\n                prompt_2=negative_prompt_2,\n                prompt_template=prompt_template,\n                num_videos_per_prompt=num_videos_per_prompt,\n                prompt_embeds=negative_prompt_embeds,\n                pooled_prompt_embeds=negative_pooled_prompt_embeds,\n                prompt_attention_mask=negative_prompt_attention_mask,\n                device=device,\n                max_sequence_length=max_sequence_length,\n            )\n            negative_prompt_embeds = negative_prompt_embeds.to(transformer_dtype)\n            negative_prompt_attention_mask = negative_prompt_attention_mask.to(transformer_dtype)\n            negative_pooled_prompt_embeds = negative_pooled_prompt_embeds.to(transformer_dtype)\n\n        # 4. Prepare timesteps\n        sigmas = np.linspace(1.0, 0.0, num_inference_steps + 1)[:-1] if sigmas is None else sigmas\n        timesteps, num_inference_steps = retrieve_timesteps(self.scheduler, num_inference_steps, device, sigmas=sigmas)\n\n        # 5. Prepare latent variables\n        num_channels_latents = self.transformer.config.in_channels\n        latents = self.prepare_latents(\n            batch_size * num_videos_per_prompt,\n            num_channels_latents,\n            height,\n            width,\n            num_frames,\n            torch.float32,\n            device,\n            generator,\n            latents,\n        )\n\n        # 6. Prepare guidance condition\n        guidance = torch.tensor([guidance_scale] * latents.shape[0], dtype=transformer_dtype, device=device) * 1000.0\n\n        # 7. Denoising loop\n        num_warmup_steps = len(timesteps) - num_inference_steps * self.scheduler.order\n        self._num_timesteps = len(timesteps)\n\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                if self.interrupt:\n                    continue\n\n                self._current_timestep = t\n                latent_model_input = latents.to(transformer_dtype)\n                # broadcast to batch dimension in a way that's compatible with ONNX/Core ML\n                timestep = t.expand(latents.shape[0]).to(latents.dtype)\n\n                noise_pred = self.transformer(\n                    hidden_states=latent_model_input,\n                    timestep=timestep,\n                    encoder_hidden_states=prompt_embeds,\n                    encoder_attention_mask=prompt_attention_mask,\n                    pooled_projections=pooled_prompt_embeds,\n                    guidance=guidance,\n                    attention_kwargs=attention_kwargs,\n                    return_dict=False,\n                )[0]\n\n                if do_true_cfg:\n                    neg_noise_pred = self.transformer(\n                        hidden_states=latent_model_input,\n                        timestep=timestep,\n                        encoder_hidden_states=negative_prompt_embeds,\n                        encoder_attention_mask=negative_prompt_attention_mask,\n                        pooled_projections=negative_pooled_prompt_embeds,\n                        guidance=guidance,\n                        attention_kwargs=attention_kwargs,\n                        return_dict=False,\n                    )[0]\n                    noise_pred = neg_noise_pred + true_cfg_scale * (noise_pred - neg_noise_pred)\n                else:\n                    if (i <= zero_steps) and use_zero_init:\n                        noise_pred = noise_pred*0.\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents = self.scheduler.step(noise_pred, t, latents, return_dict=False)[0]\n\n                if callback_on_step_end is not None:\n                    callback_kwargs = {}\n                    for k in callback_on_step_end_tensor_inputs:\n                        callback_kwargs[k] = locals()[k]\n                    callback_outputs = callback_on_step_end(self, i, t, callback_kwargs)\n\n                    latents = callback_outputs.pop(\"latents\", latents)\n                    prompt_embeds = callback_outputs.pop(\"prompt_embeds\", prompt_embeds)\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n\n                if XLA_AVAILABLE:\n                    xm.mark_step()\n\n        self._current_timestep = None\n\n        if not output_type == \"latent\":\n            latents = latents.to(self.vae.dtype) / self.vae.config.scaling_factor\n            video = self.vae.decode(latents, return_dict=False)[0]\n            video = self.video_processor.postprocess_video(video, output_type=output_type)\n        else:\n            video = latents\n\n        # Offload all models\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return (video,)\n\n        return HunyuanVideoPipelineOutput(frames=video)\n"
  },
  {
    "path": "modules/cfgzero/sd3_pipeline.py",
    "content": "# Copyright 2024 Stability AI, The HuggingFace Team and The InstantX Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport inspect\nfrom typing import Any, Callable, Dict, List, Optional, Union\n\nimport torch\nfrom transformers import (\n    BaseImageProcessor,\n    CLIPTextModelWithProjection,\n    CLIPTokenizer,\n    PreTrainedModel,\n    T5EncoderModel,\n    T5TokenizerFast,\n)\n\nfrom diffusers.image_processor import PipelineImageInput, VaeImageProcessor\nfrom diffusers.loaders import FromSingleFileMixin, SD3IPAdapterMixin, SD3LoraLoaderMixin\nfrom diffusers.models.autoencoders import AutoencoderKL\nfrom diffusers.models.transformers import SD3Transformer2DModel\nfrom diffusers.schedulers import FlowMatchEulerDiscreteScheduler\nfrom diffusers.utils import (\n    USE_PEFT_BACKEND,\n    is_torch_xla_available,\n    logging,\n    replace_example_docstring,\n    scale_lora_layers,\n    unscale_lora_layers,\n)\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline\nfrom diffusers.pipelines.stable_diffusion_3.pipeline_output import StableDiffusion3PipelineOutput\n\n\nif is_torch_xla_available():\n    import torch_xla.core.xla_model as xm\n\n    XLA_AVAILABLE = True\nelse:\n    XLA_AVAILABLE = False\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\nEXAMPLE_DOC_STRING = \"\"\"\n    Examples:\n        ```py\n        >>> import torch\n        >>> from diffusers import StableDiffusion3Pipeline\n\n        >>> pipe = StableDiffusion3Pipeline.from_pretrained(\n        ...     \"stabilityai/stable-diffusion-3-medium-diffusers\", torch_dtype=torch.float16\n        ... )\n        >>> pipe.to(\"cuda\")\n        >>> prompt = \"A cat holding a sign that says hello world\"\n        >>> image = pipe(prompt).images[0]\n        >>> image.save(\"sd3.png\")\n        ```\n\"\"\"\n\n@torch.cuda.amp.autocast(dtype=torch.float32)\ndef optimized_scale(positive_flat, negative_flat):\n\n    # Calculate dot production\n    dot_product = torch.sum(positive_flat * negative_flat, dim=1, keepdim=True)\n\n    # Squared norm of uncondition\n    squared_norm = torch.sum(negative_flat ** 2, dim=1, keepdim=True) + 1e-8\n\n    # st_star = v_cond^T * v_uncond / ||v_uncond||^2\n    st_star = dot_product / squared_norm\n\n    return st_star\n\n# Copied from diffusers.pipelines.flux.pipeline_flux.calculate_shift\ndef calculate_shift(\n    image_seq_len,\n    base_seq_len: int = 256,\n    max_seq_len: int = 4096,\n    base_shift: float = 0.5,\n    max_shift: float = 1.16,\n):\n    m = (max_shift - base_shift) / (max_seq_len - base_seq_len)\n    b = base_shift - m * base_seq_len\n    mu = image_seq_len * m + b\n    return mu\n\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.retrieve_timesteps\ndef retrieve_timesteps(\n    scheduler,\n    num_inference_steps: Optional[int] = None,\n    device: Optional[Union[str, torch.device]] = None,\n    timesteps: Optional[List[int]] = None,\n    sigmas: Optional[List[float]] = None,\n    **kwargs,\n):\n    r\"\"\"\n    Calls the scheduler's `set_timesteps` method and retrieves timesteps from the scheduler after the call. Handles\n    custom timesteps. Any kwargs will be supplied to `scheduler.set_timesteps`.\n\n    Args:\n        scheduler (`SchedulerMixin`):\n            The scheduler to get timesteps from.\n        num_inference_steps (`int`):\n            The number of diffusion steps used when generating samples with a pre-trained model. If used, `timesteps`\n            must be `None`.\n        device (`str` or `torch.device`, *optional*):\n            The device to which the timesteps should be moved to. If `None`, the timesteps are not moved.\n        timesteps (`List[int]`, *optional*):\n            Custom timesteps used to override the timestep spacing strategy of the scheduler. If `timesteps` is passed,\n            `num_inference_steps` and `sigmas` must be `None`.\n        sigmas (`List[float]`, *optional*):\n            Custom sigmas used to override the timestep spacing strategy of the scheduler. If `sigmas` is passed,\n            `num_inference_steps` and `timesteps` must be `None`.\n\n    Returns:\n        `Tuple[torch.Tensor, int]`: A tuple where the first element is the timestep schedule from the scheduler and the\n        second element is the number of inference steps.\n    \"\"\"\n    if timesteps is not None and sigmas is not None:\n        raise ValueError(\"Only one of `timesteps` or `sigmas` can be passed. Please choose one to set custom values\")\n    if timesteps is not None:\n        accepts_timesteps = \"timesteps\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n        if not accepts_timesteps:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" timestep schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(timesteps=timesteps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    elif sigmas is not None:\n        accept_sigmas = \"sigmas\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n        if not accept_sigmas:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" sigmas schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(sigmas=sigmas, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    else:\n        scheduler.set_timesteps(num_inference_steps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n    return timesteps, num_inference_steps\n\n\nclass StableDiffusion3CFGZeroPipeline(DiffusionPipeline, SD3LoraLoaderMixin, FromSingleFileMixin, SD3IPAdapterMixin):\n    r\"\"\"\n    Args:\n        transformer ([`SD3Transformer2DModel`]):\n            Conditional Transformer (MMDiT) architecture to denoise the encoded image latents.\n        scheduler ([`FlowMatchEulerDiscreteScheduler`]):\n            A scheduler to be used in combination with `transformer` to denoise the encoded image latents.\n        vae ([`AutoencoderKL`]):\n            Variational Auto-Encoder (VAE) Model to encode and decode images to and from latent representations.\n        text_encoder ([`CLIPTextModelWithProjection`]):\n            [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModelWithProjection),\n            specifically the [clip-vit-large-patch14](https://huggingface.co/openai/clip-vit-large-patch14) variant,\n            with an additional added projection layer that is initialized with a diagonal matrix with the `hidden_size`\n            as its dimension.\n        text_encoder_2 ([`CLIPTextModelWithProjection`]):\n            [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModelWithProjection),\n            specifically the\n            [laion/CLIP-ViT-bigG-14-laion2B-39B-b160k](https://huggingface.co/laion/CLIP-ViT-bigG-14-laion2B-39B-b160k)\n            variant.\n        text_encoder_3 ([`T5EncoderModel`]):\n            Frozen text-encoder. Stable Diffusion 3 uses\n            [T5](https://huggingface.co/docs/transformers/model_doc/t5#transformers.T5EncoderModel), specifically the\n            [t5-v1_1-xxl](https://huggingface.co/google/t5-v1_1-xxl) variant.\n        tokenizer (`CLIPTokenizer`):\n            Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer).\n        tokenizer_2 (`CLIPTokenizer`):\n            Second Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer).\n        tokenizer_3 (`T5TokenizerFast`):\n            Tokenizer of class\n            [T5Tokenizer](https://huggingface.co/docs/transformers/model_doc/t5#transformers.T5Tokenizer).\n        image_encoder (`PreTrainedModel`, *optional*):\n            Pre-trained Vision Model for IP Adapter.\n        feature_extractor (`BaseImageProcessor`, *optional*):\n            Image processor for IP Adapter.\n    \"\"\"\n\n    model_cpu_offload_seq = \"text_encoder->text_encoder_2->text_encoder_3->image_encoder->transformer->vae\"\n    _optional_components = [\"image_encoder\", \"feature_extractor\"]\n    _callback_tensor_inputs = [\"latents\", \"prompt_embeds\", \"negative_prompt_embeds\", \"negative_pooled_prompt_embeds\"]\n\n    def __init__(\n        self,\n        transformer: SD3Transformer2DModel,\n        scheduler: FlowMatchEulerDiscreteScheduler,\n        vae: AutoencoderKL,\n        text_encoder: CLIPTextModelWithProjection,\n        tokenizer: CLIPTokenizer,\n        text_encoder_2: CLIPTextModelWithProjection,\n        tokenizer_2: CLIPTokenizer,\n        text_encoder_3: T5EncoderModel,\n        tokenizer_3: T5TokenizerFast,\n        image_encoder: PreTrainedModel = None,\n        feature_extractor: BaseImageProcessor = None,\n    ):\n        super().__init__()\n\n        self.register_modules(\n            vae=vae,\n            text_encoder=text_encoder,\n            text_encoder_2=text_encoder_2,\n            text_encoder_3=text_encoder_3,\n            tokenizer=tokenizer,\n            tokenizer_2=tokenizer_2,\n            tokenizer_3=tokenizer_3,\n            transformer=transformer,\n            scheduler=scheduler,\n            image_encoder=image_encoder,\n            feature_extractor=feature_extractor,\n        )\n        self.vae_scale_factor = (\n            2 ** (len(self.vae.config.block_out_channels) - 1) if hasattr(self, \"vae\") and self.vae is not None else 8\n        )\n        self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor)\n        self.tokenizer_max_length = (\n            self.tokenizer.model_max_length if hasattr(self, \"tokenizer\") and self.tokenizer is not None else 77\n        )\n        self.default_sample_size = (\n            self.transformer.config.sample_size\n            if hasattr(self, \"transformer\") and self.transformer is not None\n            else 128\n        )\n        self.patch_size = (\n            self.transformer.config.patch_size if hasattr(self, \"transformer\") and self.transformer is not None else 2\n        )\n\n    def _get_t5_prompt_embeds(\n        self,\n        prompt: Union[str, List[str]] = None,\n        num_images_per_prompt: int = 1,\n        max_sequence_length: int = 256,\n        device: Optional[torch.device] = None,\n        dtype: Optional[torch.dtype] = None,\n    ):\n        device = device or self._execution_device\n        dtype = dtype or self.text_encoder.dtype\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n        batch_size = len(prompt)\n\n        if self.text_encoder_3 is None:\n            return torch.zeros(\n                (\n                    batch_size * num_images_per_prompt,\n                    self.tokenizer_max_length,\n                    self.transformer.config.joint_attention_dim,\n                ),\n                device=device,\n                dtype=dtype,\n            )\n\n        text_inputs = self.tokenizer_3(\n            prompt,\n            padding=\"max_length\",\n            max_length=max_sequence_length,\n            truncation=True,\n            add_special_tokens=True,\n            return_tensors=\"pt\",\n        )\n        text_input_ids = text_inputs.input_ids\n        untruncated_ids = self.tokenizer_3(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n        if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(text_input_ids, untruncated_ids):\n            removed_text = self.tokenizer_3.batch_decode(untruncated_ids[:, self.tokenizer_max_length - 1 : -1])\n            logger.warning(\n                \"The following part of your input was truncated because `max_sequence_length` is set to \"\n                f\" {max_sequence_length} tokens: {removed_text}\"\n            )\n\n        prompt_embeds = self.text_encoder_3(text_input_ids.to(device))[0]\n\n        dtype = self.text_encoder_3.dtype\n        prompt_embeds = prompt_embeds.to(dtype=dtype, device=device)\n\n        _, seq_len, _ = prompt_embeds.shape\n\n        # duplicate text embeddings and attention mask for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n        return prompt_embeds\n\n    def _get_clip_prompt_embeds(\n        self,\n        prompt: Union[str, List[str]],\n        num_images_per_prompt: int = 1,\n        device: Optional[torch.device] = None,\n        clip_skip: Optional[int] = None,\n        clip_model_index: int = 0,\n    ):\n        device = device or self._execution_device\n\n        clip_tokenizers = [self.tokenizer, self.tokenizer_2]\n        clip_text_encoders = [self.text_encoder, self.text_encoder_2]\n\n        tokenizer = clip_tokenizers[clip_model_index]\n        text_encoder = clip_text_encoders[clip_model_index]\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n        batch_size = len(prompt)\n\n        text_inputs = tokenizer(\n            prompt,\n            padding=\"max_length\",\n            max_length=self.tokenizer_max_length,\n            truncation=True,\n            return_tensors=\"pt\",\n        )\n\n        text_input_ids = text_inputs.input_ids\n        untruncated_ids = tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n        if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(text_input_ids, untruncated_ids):\n            removed_text = tokenizer.batch_decode(untruncated_ids[:, self.tokenizer_max_length - 1 : -1])\n            logger.warning(\n                \"The following part of your input was truncated because CLIP can only handle sequences up to\"\n                f\" {self.tokenizer_max_length} tokens: {removed_text}\"\n            )\n        prompt_embeds = text_encoder(text_input_ids.to(device), output_hidden_states=True)\n        pooled_prompt_embeds = prompt_embeds[0]\n\n        if clip_skip is None:\n            prompt_embeds = prompt_embeds.hidden_states[-2]\n        else:\n            prompt_embeds = prompt_embeds.hidden_states[-(clip_skip + 2)]\n\n        prompt_embeds = prompt_embeds.to(dtype=self.text_encoder.dtype, device=device)\n\n        _, seq_len, _ = prompt_embeds.shape\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n        pooled_prompt_embeds = pooled_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        pooled_prompt_embeds = pooled_prompt_embeds.view(batch_size * num_images_per_prompt, -1)\n\n        return prompt_embeds, pooled_prompt_embeds\n\n    def encode_prompt(\n        self,\n        prompt: Union[str, List[str]],\n        prompt_2: Union[str, List[str]],\n        prompt_3: Union[str, List[str]],\n        device: Optional[torch.device] = None,\n        num_images_per_prompt: int = 1,\n        do_classifier_free_guidance: bool = True,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        negative_prompt_2: Optional[Union[str, List[str]]] = None,\n        negative_prompt_3: Optional[Union[str, List[str]]] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        clip_skip: Optional[int] = None,\n        max_sequence_length: int = 256,\n        lora_scale: Optional[float] = None,\n    ):\n        r\"\"\"\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                prompt to be encoded\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in all text-encoders\n            prompt_3 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_3` and `text_encoder_3`. If not defined, `prompt` is\n                used in all text-encoders\n            device: (`torch.device`):\n                torch device\n            num_images_per_prompt (`int`):\n                number of images that should be generated per prompt\n            do_classifier_free_guidance (`bool`):\n                whether to use classifier free guidance or not\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in all the text-encoders.\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_3` and\n                `text_encoder_3`. If not defined, `negative_prompt` is used in both text-encoders\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            clip_skip (`int`, *optional*):\n                Number of layers to be skipped from CLIP while computing the prompt embeddings. A value of 1 means that\n                the output of the pre-final layer will be used for computing the prompt embeddings.\n            lora_scale (`float`, *optional*):\n                A lora scale that will be applied to all LoRA layers of the text encoder if LoRA layers are loaded.\n        \"\"\"\n        device = device or self._execution_device\n\n        # set lora scale so that monkey patched LoRA\n        # function of text encoder can correctly access it\n        if lora_scale is not None and isinstance(self, SD3LoraLoaderMixin):\n            self._lora_scale = lora_scale\n\n            # dynamically adjust the LoRA scale\n            if self.text_encoder is not None and USE_PEFT_BACKEND:\n                scale_lora_layers(self.text_encoder, lora_scale)\n            if self.text_encoder_2 is not None and USE_PEFT_BACKEND:\n                scale_lora_layers(self.text_encoder_2, lora_scale)\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n        if prompt is not None:\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        if prompt_embeds is None:\n            prompt_2 = prompt_2 or prompt\n            prompt_2 = [prompt_2] if isinstance(prompt_2, str) else prompt_2\n\n            prompt_3 = prompt_3 or prompt\n            prompt_3 = [prompt_3] if isinstance(prompt_3, str) else prompt_3\n\n            prompt_embed, pooled_prompt_embed = self._get_clip_prompt_embeds(\n                prompt=prompt,\n                device=device,\n                num_images_per_prompt=num_images_per_prompt,\n                clip_skip=clip_skip,\n                clip_model_index=0,\n            )\n            prompt_2_embed, pooled_prompt_2_embed = self._get_clip_prompt_embeds(\n                prompt=prompt_2,\n                device=device,\n                num_images_per_prompt=num_images_per_prompt,\n                clip_skip=clip_skip,\n                clip_model_index=1,\n            )\n            clip_prompt_embeds = torch.cat([prompt_embed, prompt_2_embed], dim=-1)\n\n            t5_prompt_embed = self._get_t5_prompt_embeds(\n                prompt=prompt_3,\n                num_images_per_prompt=num_images_per_prompt,\n                max_sequence_length=max_sequence_length,\n                device=device,\n            )\n            clip_prompt_embeds = torch.nn.functional.pad(\n                clip_prompt_embeds, (0, t5_prompt_embed.shape[-1] - clip_prompt_embeds.shape[-1])\n            )\n\n            prompt_embeds = torch.cat([clip_prompt_embeds, t5_prompt_embed], dim=-2)\n            pooled_prompt_embeds = torch.cat([pooled_prompt_embed, pooled_prompt_2_embed], dim=-1)\n\n        if do_classifier_free_guidance and negative_prompt_embeds is None:\n            negative_prompt = negative_prompt or \"\"\n            negative_prompt_2 = negative_prompt_2 or negative_prompt\n            negative_prompt_3 = negative_prompt_3 or negative_prompt\n\n            # normalize str to list\n            negative_prompt = batch_size * [negative_prompt] if isinstance(negative_prompt, str) else negative_prompt\n            negative_prompt_2 = (\n                batch_size * [negative_prompt_2] if isinstance(negative_prompt_2, str) else negative_prompt_2\n            )\n            negative_prompt_3 = (\n                batch_size * [negative_prompt_3] if isinstance(negative_prompt_3, str) else negative_prompt_3\n            )\n\n            if prompt is not None and type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n\n            negative_prompt_embed, negative_pooled_prompt_embed = self._get_clip_prompt_embeds(\n                negative_prompt,\n                device=device,\n                num_images_per_prompt=num_images_per_prompt,\n                clip_skip=None,\n                clip_model_index=0,\n            )\n            negative_prompt_2_embed, negative_pooled_prompt_2_embed = self._get_clip_prompt_embeds(\n                negative_prompt_2,\n                device=device,\n                num_images_per_prompt=num_images_per_prompt,\n                clip_skip=None,\n                clip_model_index=1,\n            )\n            negative_clip_prompt_embeds = torch.cat([negative_prompt_embed, negative_prompt_2_embed], dim=-1)\n\n            t5_negative_prompt_embed = self._get_t5_prompt_embeds(\n                prompt=negative_prompt_3,\n                num_images_per_prompt=num_images_per_prompt,\n                max_sequence_length=max_sequence_length,\n                device=device,\n            )\n\n            negative_clip_prompt_embeds = torch.nn.functional.pad(\n                negative_clip_prompt_embeds,\n                (0, t5_negative_prompt_embed.shape[-1] - negative_clip_prompt_embeds.shape[-1]),\n            )\n\n            negative_prompt_embeds = torch.cat([negative_clip_prompt_embeds, t5_negative_prompt_embed], dim=-2)\n            negative_pooled_prompt_embeds = torch.cat(\n                [negative_pooled_prompt_embed, negative_pooled_prompt_2_embed], dim=-1\n            )\n\n        if self.text_encoder is not None:\n            if isinstance(self, SD3LoraLoaderMixin) and USE_PEFT_BACKEND:\n                # Retrieve the original scale by scaling back the LoRA layers\n                unscale_lora_layers(self.text_encoder, lora_scale)\n\n        if self.text_encoder_2 is not None:\n            if isinstance(self, SD3LoraLoaderMixin) and USE_PEFT_BACKEND:\n                # Retrieve the original scale by scaling back the LoRA layers\n                unscale_lora_layers(self.text_encoder_2, lora_scale)\n\n        return prompt_embeds, negative_prompt_embeds, pooled_prompt_embeds, negative_pooled_prompt_embeds\n\n    def check_inputs(\n        self,\n        prompt,\n        prompt_2,\n        prompt_3,\n        height,\n        width,\n        negative_prompt=None,\n        negative_prompt_2=None,\n        negative_prompt_3=None,\n        prompt_embeds=None,\n        negative_prompt_embeds=None,\n        pooled_prompt_embeds=None,\n        negative_pooled_prompt_embeds=None,\n        callback_on_step_end_tensor_inputs=None,\n        max_sequence_length=None,\n    ):\n        if (\n            height % (self.vae_scale_factor * self.patch_size) != 0\n            or width % (self.vae_scale_factor * self.patch_size) != 0\n        ):\n            raise ValueError(\n                f\"`height` and `width` have to be divisible by {self.vae_scale_factor * self.patch_size} but are {height} and {width}.\"\n                f\"You can use height {height - height % (self.vae_scale_factor * self.patch_size)} and width {width - width % (self.vae_scale_factor * self.patch_size)}.\"\n            )\n\n        if callback_on_step_end_tensor_inputs is not None and not all(\n            k in self._callback_tensor_inputs for k in callback_on_step_end_tensor_inputs\n        ):\n            raise ValueError(\n                f\"`callback_on_step_end_tensor_inputs` has to be in {self._callback_tensor_inputs}, but found {[k for k in callback_on_step_end_tensor_inputs if k not in self._callback_tensor_inputs]}\"\n            )\n\n        if prompt is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt_2 is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt_2`: {prompt_2} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt_3 is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt_3`: {prompt_2} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n        elif prompt_2 is not None and (not isinstance(prompt_2, str) and not isinstance(prompt_2, list)):\n            raise ValueError(f\"`prompt_2` has to be of type `str` or `list` but is {type(prompt_2)}\")\n        elif prompt_3 is not None and (not isinstance(prompt_3, str) and not isinstance(prompt_3, list)):\n            raise ValueError(f\"`prompt_3` has to be of type `str` or `list` but is {type(prompt_3)}\")\n\n        if negative_prompt is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n        elif negative_prompt_2 is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt_2`: {negative_prompt_2} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n        elif negative_prompt_3 is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt_3`: {negative_prompt_3} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n\n        if prompt_embeds is not None and negative_prompt_embeds is not None:\n            if prompt_embeds.shape != negative_prompt_embeds.shape:\n                raise ValueError(\n                    \"`prompt_embeds` and `negative_prompt_embeds` must have the same shape when passed directly, but\"\n                    f\" got: `prompt_embeds` {prompt_embeds.shape} != `negative_prompt_embeds`\"\n                    f\" {negative_prompt_embeds.shape}.\"\n                )\n\n        if prompt_embeds is not None and pooled_prompt_embeds is None:\n            raise ValueError(\n                \"If `prompt_embeds` are provided, `pooled_prompt_embeds` also have to be passed. Make sure to generate `pooled_prompt_embeds` from the same text encoder that was used to generate `prompt_embeds`.\"\n            )\n\n        if negative_prompt_embeds is not None and negative_pooled_prompt_embeds is None:\n            raise ValueError(\n                \"If `negative_prompt_embeds` are provided, `negative_pooled_prompt_embeds` also have to be passed. Make sure to generate `negative_pooled_prompt_embeds` from the same text encoder that was used to generate `negative_prompt_embeds`.\"\n            )\n\n        if max_sequence_length is not None and max_sequence_length > 512:\n            raise ValueError(f\"`max_sequence_length` cannot be greater than 512 but is {max_sequence_length}\")\n\n    def prepare_latents(\n        self,\n        batch_size,\n        num_channels_latents,\n        height,\n        width,\n        dtype,\n        device,\n        generator,\n        latents=None,\n    ):\n        if latents is not None:\n            return latents.to(device=device, dtype=dtype)\n\n        shape = (\n            batch_size,\n            num_channels_latents,\n            int(height) // self.vae_scale_factor,\n            int(width) // self.vae_scale_factor,\n        )\n\n        if isinstance(generator, list) and len(generator) != batch_size:\n            raise ValueError(\n                f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n            )\n\n        latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n\n        return latents\n\n    @property\n    def guidance_scale(self):\n        return self._guidance_scale\n\n    @property\n    def skip_guidance_layers(self):\n        return self._skip_guidance_layers\n\n    @property\n    def clip_skip(self):\n        return self._clip_skip\n\n    # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2)\n    # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1`\n    # corresponds to doing no classifier free guidance.\n    @property\n    def do_classifier_free_guidance(self):\n        return self._guidance_scale > 1\n\n    @property\n    def joint_attention_kwargs(self):\n        return self._joint_attention_kwargs\n\n    @property\n    def num_timesteps(self):\n        return self._num_timesteps\n\n    @property\n    def interrupt(self):\n        return self._interrupt\n\n    # Adapted from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion_xl.StableDiffusionXLPipeline.encode_image\n    def encode_image(self, image: PipelineImageInput, device: torch.device) -> torch.Tensor:\n        \"\"\"Encodes the given image into a feature representation using a pre-trained image encoder.\n\n        Args:\n            image (`PipelineImageInput`):\n                Input image to be encoded.\n            device: (`torch.device`):\n                Torch device.\n\n        Returns:\n            `torch.Tensor`: The encoded image feature representation.\n        \"\"\"\n        if not isinstance(image, torch.Tensor):\n            image = self.feature_extractor(image, return_tensors=\"pt\").pixel_values\n\n        image = image.to(device=device, dtype=self.dtype)\n\n        return self.image_encoder(image, output_hidden_states=True).hidden_states[-2]\n\n    # Adapted from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion_xl.StableDiffusionXLPipeline.prepare_ip_adapter_image_embeds\n    def prepare_ip_adapter_image_embeds(\n        self,\n        ip_adapter_image: Optional[PipelineImageInput] = None,\n        ip_adapter_image_embeds: Optional[torch.Tensor] = None,\n        device: Optional[torch.device] = None,\n        num_images_per_prompt: int = 1,\n        do_classifier_free_guidance: bool = True,\n    ) -> torch.Tensor:\n        \"\"\"Prepares image embeddings for use in the IP-Adapter.\n\n        Either `ip_adapter_image` or `ip_adapter_image_embeds` must be passed.\n\n        Args:\n            ip_adapter_image (`PipelineImageInput`, *optional*):\n                The input image to extract features from for IP-Adapter.\n            ip_adapter_image_embeds (`torch.Tensor`, *optional*):\n                Precomputed image embeddings.\n            device: (`torch.device`, *optional*):\n                Torch device.\n            num_images_per_prompt (`int`, defaults to 1):\n                Number of images that should be generated per prompt.\n            do_classifier_free_guidance (`bool`, defaults to True):\n                Whether to use classifier free guidance or not.\n        \"\"\"\n        device = device or self._execution_device\n\n        if ip_adapter_image_embeds is not None:\n            if do_classifier_free_guidance:\n                single_negative_image_embeds, single_image_embeds = ip_adapter_image_embeds.chunk(2)\n            else:\n                single_image_embeds = ip_adapter_image_embeds\n        elif ip_adapter_image is not None:\n            single_image_embeds = self.encode_image(ip_adapter_image, device)\n            if do_classifier_free_guidance:\n                single_negative_image_embeds = torch.zeros_like(single_image_embeds)\n        else:\n            raise ValueError(\"Neither `ip_adapter_image_embeds` or `ip_adapter_image_embeds` were provided.\")\n\n        image_embeds = torch.cat([single_image_embeds] * num_images_per_prompt, dim=0)\n\n        if do_classifier_free_guidance:\n            negative_image_embeds = torch.cat([single_negative_image_embeds] * num_images_per_prompt, dim=0)\n            image_embeds = torch.cat([negative_image_embeds, image_embeds], dim=0)\n\n        return image_embeds.to(device=device)\n\n    def enable_sequential_cpu_offload(self, *args, **kwargs):\n        if self.image_encoder is not None and \"image_encoder\" not in self._exclude_from_cpu_offload:\n            logger.warning(\n                \"`pipe.enable_sequential_cpu_offload()` might fail for `image_encoder` if it uses \"\n                \"`torch.nn.MultiheadAttention`. You can exclude `image_encoder` from CPU offloading by calling \"\n                \"`pipe._exclude_from_cpu_offload.append('image_encoder')` before `pipe.enable_sequential_cpu_offload()`.\"\n            )\n\n        super().enable_sequential_cpu_offload(*args, **kwargs)\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        prompt_2: Optional[Union[str, List[str]]] = None,\n        prompt_3: Optional[Union[str, List[str]]] = None,\n        height: Optional[int] = None,\n        width: Optional[int] = None,\n        num_inference_steps: int = 28,\n        sigmas: Optional[List[float]] = None,\n        guidance_scale: float = 7.0,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        negative_prompt_2: Optional[Union[str, List[str]]] = None,\n        negative_prompt_3: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.FloatTensor] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        ip_adapter_image: Optional[PipelineImageInput] = None,\n        ip_adapter_image_embeds: Optional[torch.Tensor] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        joint_attention_kwargs: Optional[Dict[str, Any]] = None,\n        clip_skip: Optional[int] = None,\n        callback_on_step_end: Optional[Callable[[int, int, Dict], None]] = None,\n        callback_on_step_end_tensor_inputs: List[str] = [\"latents\"],\n        max_sequence_length: int = 256,\n        skip_guidance_layers: List[int] = None,\n        skip_layer_guidance_scale: float = 2.8,\n        skip_layer_guidance_stop: float = 0.2,\n        skip_layer_guidance_start: float = 0.01,\n        mu: Optional[float] = None,\n        use_cfg_zero_star: Optional[bool] = False,\n        use_zero_init: Optional[bool] = True,\n        zero_steps: Optional[int] = 0,\n    ):\n        r\"\"\"\n        Function invoked when calling the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide the image generation. If not defined, one has to pass `prompt_embeds`.\n                instead.\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                will be used instead\n            prompt_3 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to `tokenizer_3` and `text_encoder_3`. If not defined, `prompt` is\n                will be used instead\n            height (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The height in pixels of the generated image. This is set to 1024 by default for the best results.\n            width (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The width in pixels of the generated image. This is set to 1024 by default for the best results.\n            num_inference_steps (`int`, *optional*, defaults to 50):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            sigmas (`List[float]`, *optional*):\n                Custom sigmas to use for the denoising process with schedulers which support a `sigmas` argument in\n                their `set_timesteps` method. If not defined, the default behavior when `num_inference_steps` is passed\n                will be used.\n            guidance_scale (`float`, *optional*, defaults to 7.0):\n                Guidance scale as defined in [Classifier-Free Diffusion Guidance](https://arxiv.org/abs/2207.12598).\n                `guidance_scale` is defined as `w` of equation 2. of [Imagen\n                Paper](https://arxiv.org/pdf/2205.11487.pdf). Guidance scale is enabled by setting `guidance_scale >\n                1`. Higher guidance scale encourages to generate images that are closely linked to the text `prompt`,\n                usually at the expense of lower image quality.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used instead\n            negative_prompt_3 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_3` and\n                `text_encoder_3`. If not defined, `negative_prompt` is used instead\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                One or a list of [torch generator(s)](https://pytorch.org/docs/stable/generated/torch.Generator.html)\n                to make generation deterministic.\n            latents (`torch.FloatTensor`, *optional*):\n                Pre-generated noisy latents, sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor will ge generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            ip_adapter_image (`PipelineImageInput`, *optional*): Optional image input to work with IP Adapters.\n            ip_adapter_image_embeds (`torch.Tensor`, *optional*):\n                Pre-generated image embeddings for IP-Adapter. Should be a tensor of shape `(batch_size, num_images,\n                emb_dim)`. It should contain the negative image embedding if `do_classifier_free_guidance` is set to\n                `True`. If not provided, embeddings are computed from the `ip_adapter_image` input argument.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generate image. Choose between\n                [PIL](https://pillow.readthedocs.io/en/stable/): `PIL.Image.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.stable_diffusion_3.StableDiffusion3PipelineOutput`] instead of\n                a plain tuple.\n            joint_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            callback_on_step_end (`Callable`, *optional*):\n                A function that calls at the end of each denoising steps during the inference. The function is called\n                with the following arguments: `callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int,\n                callback_kwargs: Dict)`. `callback_kwargs` will include a list of all tensors as specified by\n                `callback_on_step_end_tensor_inputs`.\n            callback_on_step_end_tensor_inputs (`List`, *optional*):\n                The list of tensor inputs for the `callback_on_step_end` function. The tensors specified in the list\n                will be passed as `callback_kwargs` argument. You will only be able to include variables listed in the\n                `._callback_tensor_inputs` attribute of your pipeline class.\n            max_sequence_length (`int` defaults to 256): Maximum sequence length to use with the `prompt`.\n            skip_guidance_layers (`List[int]`, *optional*):\n                A list of integers that specify layers to skip during guidance. If not provided, all layers will be\n                used for guidance. If provided, the guidance will only be applied to the layers specified in the list.\n                Recommended value by StabiltyAI for Stable Diffusion 3.5 Medium is [7, 8, 9].\n            skip_layer_guidance_scale (`int`, *optional*): The scale of the guidance for the layers specified in\n                `skip_guidance_layers`. The guidance will be applied to the layers specified in `skip_guidance_layers`\n                with a scale of `skip_layer_guidance_scale`. The guidance will be applied to the rest of the layers\n                with a scale of `1`.\n            skip_layer_guidance_stop (`int`, *optional*): The step at which the guidance for the layers specified in\n                `skip_guidance_layers` will stop. The guidance will be applied to the layers specified in\n                `skip_guidance_layers` until the fraction specified in `skip_layer_guidance_stop`. Recommended value by\n                StabiltyAI for Stable Diffusion 3.5 Medium is 0.2.\n            skip_layer_guidance_start (`int`, *optional*): The step at which the guidance for the layers specified in\n                `skip_guidance_layers` will start. The guidance will be applied to the layers specified in\n                `skip_guidance_layers` from the fraction specified in `skip_layer_guidance_start`. Recommended value by\n                StabiltyAI for Stable Diffusion 3.5 Medium is 0.01.\n            mu (`float`, *optional*): `mu` value used for `dynamic_shifting`.\n\n        Examples:\n\n        Returns:\n            [`~pipelines.stable_diffusion_3.StableDiffusion3PipelineOutput`] or `tuple`:\n            [`~pipelines.stable_diffusion_3.StableDiffusion3PipelineOutput`] if `return_dict` is True, otherwise a\n            `tuple`. When returning a tuple, the first element is a list with the generated images.\n        \"\"\"\n\n        height = height or self.default_sample_size * self.vae_scale_factor\n        width = width or self.default_sample_size * self.vae_scale_factor\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            prompt_2,\n            prompt_3,\n            height,\n            width,\n            negative_prompt=negative_prompt,\n            negative_prompt_2=negative_prompt_2,\n            negative_prompt_3=negative_prompt_3,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            negative_pooled_prompt_embeds=negative_pooled_prompt_embeds,\n            callback_on_step_end_tensor_inputs=callback_on_step_end_tensor_inputs,\n            max_sequence_length=max_sequence_length,\n        )\n\n        self._guidance_scale = guidance_scale\n        self._skip_layer_guidance_scale = skip_layer_guidance_scale\n        self._clip_skip = clip_skip\n        self._joint_attention_kwargs = joint_attention_kwargs\n        self._interrupt = False\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        device = self._execution_device\n\n        lora_scale = (\n            self.joint_attention_kwargs.get(\"scale\", None) if self.joint_attention_kwargs is not None else None\n        )\n        (\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n        ) = self.encode_prompt(\n            prompt=prompt,\n            prompt_2=prompt_2,\n            prompt_3=prompt_3,\n            negative_prompt=negative_prompt,\n            negative_prompt_2=negative_prompt_2,\n            negative_prompt_3=negative_prompt_3,\n            do_classifier_free_guidance=self.do_classifier_free_guidance,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            negative_pooled_prompt_embeds=negative_pooled_prompt_embeds,\n            device=device,\n            clip_skip=self.clip_skip,\n            num_images_per_prompt=num_images_per_prompt,\n            max_sequence_length=max_sequence_length,\n            lora_scale=lora_scale,\n        )\n        if self.do_classifier_free_guidance:\n            if skip_guidance_layers is not None:\n                original_prompt_embeds = prompt_embeds\n                original_pooled_prompt_embeds = pooled_prompt_embeds\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds], dim=0)\n            pooled_prompt_embeds = torch.cat([negative_pooled_prompt_embeds, pooled_prompt_embeds], dim=0)\n\n        # 4. Prepare latent variables\n        num_channels_latents = self.transformer.config.in_channels\n        latents = self.prepare_latents(\n            batch_size * num_images_per_prompt,\n            num_channels_latents,\n            height,\n            width,\n            prompt_embeds.dtype,\n            device,\n            generator,\n            latents,\n        )\n\n        # 5. Prepare timesteps\n        scheduler_kwargs = {}\n        if self.scheduler.config.get(\"use_dynamic_shifting\", None) and mu is None:\n            _, _, height, width = latents.shape\n            image_seq_len = (height // self.transformer.config.patch_size) * (\n                width // self.transformer.config.patch_size\n            )\n            mu = calculate_shift(\n                image_seq_len,\n                self.scheduler.config.base_image_seq_len,\n                self.scheduler.config.max_image_seq_len,\n                self.scheduler.config.base_shift,\n                self.scheduler.config.max_shift,\n            )\n            scheduler_kwargs[\"mu\"] = mu\n        elif mu is not None:\n            scheduler_kwargs[\"mu\"] = mu\n        timesteps, num_inference_steps = retrieve_timesteps(\n            self.scheduler,\n            num_inference_steps,\n            device,\n            sigmas=sigmas,\n            **scheduler_kwargs,\n        )\n        num_warmup_steps = max(len(timesteps) - num_inference_steps * self.scheduler.order, 0)\n        self._num_timesteps = len(timesteps)\n\n        # 6. Prepare image embeddings\n        if (ip_adapter_image is not None and self.is_ip_adapter_active) or ip_adapter_image_embeds is not None:\n            ip_adapter_image_embeds = self.prepare_ip_adapter_image_embeds(\n                ip_adapter_image,\n                ip_adapter_image_embeds,\n                device,\n                batch_size * num_images_per_prompt,\n                self.do_classifier_free_guidance,\n            )\n\n            if self.joint_attention_kwargs is None:\n                self._joint_attention_kwargs = {\"ip_adapter_image_embeds\": ip_adapter_image_embeds}\n            else:\n                self._joint_attention_kwargs.update(ip_adapter_image_embeds=ip_adapter_image_embeds)\n\n        sigmas = timesteps / self.scheduler.config.num_train_timesteps\n\n        # 7. Denoising loop\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                if self.interrupt:\n                    continue\n\n                # expand the latents if we are doing classifier free guidance\n                latent_model_input = torch.cat([latents] * 2) if self.do_classifier_free_guidance else latents\n                # broadcast to batch dimension in a way that's compatible with ONNX/Core ML\n                timestep = t.expand(latent_model_input.shape[0])\n\n                noise_pred = self.transformer(\n                    hidden_states=latent_model_input,\n                    timestep=timestep,\n                    encoder_hidden_states=prompt_embeds,\n                    pooled_projections=pooled_prompt_embeds,\n                    joint_attention_kwargs=self.joint_attention_kwargs,\n                    return_dict=False,\n                )[0]\n\n                # perform guidance\n                if self.do_classifier_free_guidance:\n                    noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n\n                    if use_cfg_zero_star:\n                        positive_flat = noise_pred_text.view(batch_size, -1)\n                        negative_flat = noise_pred_uncond.view(batch_size, -1)\n\n                        alpha = optimized_scale(positive_flat,negative_flat)\n                        alpha = alpha.view(batch_size, *([1] * (len(noise_pred_text.shape) - 1)))\n                        alpha = alpha.to(positive_flat.dtype)\n\n                        if (i <= zero_steps) and use_zero_init:\n                            noise_pred = noise_pred_text*0.\n                        else:\n                            noise_pred = noise_pred_uncond * alpha + guidance_scale * (noise_pred_text - noise_pred_uncond * alpha)\n                    else:\n                        noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                    should_skip_layers = (\n                        True\n                        if i > num_inference_steps * skip_layer_guidance_start\n                        and i < num_inference_steps * skip_layer_guidance_stop\n                        else False\n                    )\n                    if skip_guidance_layers is not None and should_skip_layers:\n                        timestep = t.expand(latents.shape[0])\n                        latent_model_input = latents\n                        noise_pred_skip_layers = self.transformer(\n                            hidden_states=latent_model_input,\n                            timestep=timestep,\n                            encoder_hidden_states=original_prompt_embeds,\n                            pooled_projections=original_pooled_prompt_embeds,\n                            joint_attention_kwargs=self.joint_attention_kwargs,\n                            return_dict=False,\n                            skip_layers=skip_guidance_layers,\n                        )[0]\n                        noise_pred = (\n                            noise_pred + (noise_pred_text - noise_pred_skip_layers) * self._skip_layer_guidance_scale\n                        )\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents_dtype = latents.dtype\n                latents = self.scheduler.step(noise_pred, t, latents, return_dict=False)[0]\n\n                if latents.dtype != latents_dtype:\n                    if torch.backends.mps.is_available():\n                        # some platforms (eg. apple mps) misbehave due to a pytorch bug: https://github.com/pytorch/pytorch/pull/99272\n                        latents = latents.to(latents_dtype)\n\n                if callback_on_step_end is not None:\n                    callback_kwargs = {}\n                    for k in callback_on_step_end_tensor_inputs:\n                        callback_kwargs[k] = locals()[k]\n                    callback_outputs = callback_on_step_end(self, i, t, callback_kwargs)\n\n                    latents = callback_outputs.pop(\"latents\", latents)\n                    prompt_embeds = callback_outputs.pop(\"prompt_embeds\", prompt_embeds)\n                    negative_prompt_embeds = callback_outputs.pop(\"negative_prompt_embeds\", negative_prompt_embeds)\n                    negative_pooled_prompt_embeds = callback_outputs.pop(\n                        \"negative_pooled_prompt_embeds\", negative_pooled_prompt_embeds\n                    )\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n\n                if XLA_AVAILABLE:\n                    xm.mark_step()\n\n        if output_type == \"latent\":\n            image = latents\n\n        else:\n            latents = (latents / self.vae.config.scaling_factor) + self.vae.config.shift_factor\n\n            image = self.vae.decode(latents, return_dict=False)[0]\n            image = self.image_processor.postprocess(image, output_type=output_type)\n\n        # Offload all models\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return (image,)\n\n        return StableDiffusion3PipelineOutput(images=image)\n"
  },
  {
    "path": "modules/cfgzero/wan_t2v_pipeline.py",
    "content": "# Copyright 2025 The Wan Team and The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport html\nfrom typing import Any, Callable, Dict, List, Optional, Union\n\nimport ftfy\nimport regex as re\nimport torch\nfrom transformers import AutoTokenizer, UMT5EncoderModel\n\nfrom diffusers.callbacks import MultiPipelineCallbacks, PipelineCallback\nfrom diffusers.loaders import WanLoraLoaderMixin\nfrom diffusers.models import AutoencoderKLWan, WanTransformer3DModel\nfrom diffusers.schedulers import FlowMatchEulerDiscreteScheduler\nfrom diffusers.utils import is_torch_xla_available, logging, replace_example_docstring\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom diffusers.video_processor import VideoProcessor\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline\nfrom diffusers.pipelines.wan.pipeline_output import WanPipelineOutput\n\n\nif is_torch_xla_available():\n    import torch_xla.core.xla_model as xm\n\n    XLA_AVAILABLE = True\nelse:\n    XLA_AVAILABLE = False\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\nEXAMPLE_DOC_STRING = \"\"\"\n    Examples:\n        ```python\n        >>> import torch\n        >>> from diffusers.utils import export_to_video\n        >>> from diffusers import AutoencoderKLWan, WanPipeline\n        >>> from diffusers.schedulers.scheduling_unipc_multistep import UniPCMultistepScheduler\n\n        >>> # Available models: Wan-AI/Wan2.1-T2V-14B-Diffusers, Wan-AI/Wan2.1-T2V-1.3B-Diffusers\n        >>> model_id = \"Wan-AI/Wan2.1-T2V-14B-Diffusers\"\n        >>> vae = AutoencoderKLWan.from_pretrained(model_id, subfolder=\"vae\", torch_dtype=torch.float32)\n        >>> pipe = WanPipeline.from_pretrained(model_id, vae=vae, torch_dtype=torch.bfloat16)\n        >>> flow_shift = 5.0  # 5.0 for 720P, 3.0 for 480P\n        >>> pipe.scheduler = UniPCMultistepScheduler.from_config(pipe.scheduler.config, flow_shift=flow_shift)\n        >>> pipe.to(\"cuda\")\n\n        >>> prompt = \"A cat and a dog baking a cake together in a kitchen. The cat is carefully measuring flour, while the dog is stirring the batter with a wooden spoon. The kitchen is cozy, with sunlight streaming through the window.\"\n        >>> negative_prompt = \"Bright tones, overexposed, static, blurred details, subtitles, style, works, paintings, images, static, overall gray, worst quality, low quality, JPEG compression residue, ugly, incomplete, extra fingers, poorly drawn hands, poorly drawn faces, deformed, disfigured, misshapen limbs, fused fingers, still picture, messy background, three legs, many people in the background, walking backwards\"\n\n        >>> output = pipe(\n        ...     prompt=prompt,\n        ...     negative_prompt=negative_prompt,\n        ...     height=720,\n        ...     width=1280,\n        ...     num_frames=81,\n        ...     guidance_scale=5.0,\n        ... ).frames[0]\n        >>> export_to_video(output, \"output.mp4\", fps=16)\n        ```\n\"\"\"\n@torch.cuda.amp.autocast(dtype=torch.float32)\ndef optimized_scale(positive_flat, negative_flat):\n\n    # Calculate dot production\n    dot_product = torch.sum(positive_flat * negative_flat, dim=1, keepdim=True)\n\n    # Squared norm of uncondition\n    squared_norm = torch.sum(negative_flat ** 2, dim=1, keepdim=True) + 1e-8\n\n    # st_star = v_cond^T * v_uncond / ||v_uncond||^2\n    st_star = dot_product / squared_norm\n\n    return st_star\n\ndef basic_clean(text):\n    text = ftfy.fix_text(text)\n    text = html.unescape(html.unescape(text))\n    return text.strip()\n\n\ndef whitespace_clean(text):\n    text = re.sub(r\"\\s+\", \" \", text)\n    text = text.strip()\n    return text\n\n\ndef prompt_clean(text):\n    text = whitespace_clean(basic_clean(text))\n    return text\n\n\nclass WanCFGZeroPipeline(DiffusionPipeline, WanLoraLoaderMixin):\n    r\"\"\"\n    Pipeline for text-to-video generation using Wan.\n\n    This model inherits from [`DiffusionPipeline`]. Check the superclass documentation for the generic methods\n    implemented for all pipelines (downloading, saving, running on a particular device, etc.).\n\n    Args:\n        tokenizer ([`T5Tokenizer`]):\n            Tokenizer from [T5](https://huggingface.co/docs/transformers/en/model_doc/t5#transformers.T5Tokenizer),\n            specifically the [google/umt5-xxl](https://huggingface.co/google/umt5-xxl) variant.\n        text_encoder ([`T5EncoderModel`]):\n            [T5](https://huggingface.co/docs/transformers/en/model_doc/t5#transformers.T5EncoderModel), specifically\n            the [google/umt5-xxl](https://huggingface.co/google/umt5-xxl) variant.\n        transformer ([`WanTransformer3DModel`]):\n            Conditional Transformer to denoise the input latents.\n        scheduler ([`UniPCMultistepScheduler`]):\n            A scheduler to be used in combination with `transformer` to denoise the encoded image latents.\n        vae ([`AutoencoderKLWan`]):\n            Variational Auto-Encoder (VAE) Model to encode and decode videos to and from latent representations.\n    \"\"\"\n\n    model_cpu_offload_seq = \"text_encoder->transformer->vae\"\n    _callback_tensor_inputs = [\"latents\", \"prompt_embeds\", \"negative_prompt_embeds\"]\n\n    def __init__(\n        self,\n        tokenizer: AutoTokenizer,\n        text_encoder: UMT5EncoderModel,\n        transformer: WanTransformer3DModel,\n        vae: AutoencoderKLWan,\n        scheduler: FlowMatchEulerDiscreteScheduler,\n    ):\n        super().__init__()\n\n        self.register_modules(\n            vae=vae,\n            text_encoder=text_encoder,\n            tokenizer=tokenizer,\n            transformer=transformer,\n            scheduler=scheduler,\n        )\n\n        self.vae_scale_factor_temporal = 2 ** sum(self.vae.temperal_downsample) if getattr(self, \"vae\", None) else 4\n        self.vae_scale_factor_spatial = 2 ** len(self.vae.temperal_downsample) if getattr(self, \"vae\", None) else 8\n        self.video_processor = VideoProcessor(vae_scale_factor=self.vae_scale_factor_spatial)\n\n    def _get_t5_prompt_embeds(\n        self,\n        prompt: Union[str, List[str]] = None,\n        num_videos_per_prompt: int = 1,\n        max_sequence_length: int = 226,\n        device: Optional[torch.device] = None,\n        dtype: Optional[torch.dtype] = None,\n    ):\n        device = device or self._execution_device\n        dtype = dtype or self.text_encoder.dtype\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n        prompt = [prompt_clean(u) for u in prompt]\n        batch_size = len(prompt)\n\n        text_inputs = self.tokenizer(\n            prompt,\n            padding=\"max_length\",\n            max_length=max_sequence_length,\n            truncation=True,\n            add_special_tokens=True,\n            return_attention_mask=True,\n            return_tensors=\"pt\",\n        )\n        text_input_ids, mask = text_inputs.input_ids, text_inputs.attention_mask\n        seq_lens = mask.gt(0).sum(dim=1).long()\n\n        prompt_embeds = self.text_encoder(text_input_ids.to(device), mask.to(device)).last_hidden_state\n        prompt_embeds = prompt_embeds.to(dtype=dtype, device=device)\n        prompt_embeds = [u[:v] for u, v in zip(prompt_embeds, seq_lens)]\n        prompt_embeds = torch.stack(\n            [torch.cat([u, u.new_zeros(max_sequence_length - u.size(0), u.size(1))]) for u in prompt_embeds], dim=0\n        )\n\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        _, seq_len, _ = prompt_embeds.shape\n        prompt_embeds = prompt_embeds.repeat(1, num_videos_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(batch_size * num_videos_per_prompt, seq_len, -1)\n\n        return prompt_embeds\n\n    def encode_prompt(\n        self,\n        prompt: Union[str, List[str]],\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        do_classifier_free_guidance: bool = True,\n        num_videos_per_prompt: int = 1,\n        prompt_embeds: Optional[torch.Tensor] = None,\n        negative_prompt_embeds: Optional[torch.Tensor] = None,\n        max_sequence_length: int = 226,\n        device: Optional[torch.device] = None,\n        dtype: Optional[torch.dtype] = None,\n    ):\n        r\"\"\"\n        Encodes the prompt into text encoder hidden states.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                prompt to be encoded\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            do_classifier_free_guidance (`bool`, *optional*, defaults to `True`):\n                Whether to use classifier free guidance or not.\n            num_videos_per_prompt (`int`, *optional*, defaults to 1):\n                Number of videos that should be generated per prompt. torch device to place the resulting embeddings on\n            prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            device: (`torch.device`, *optional*):\n                torch device\n            dtype: (`torch.dtype`, *optional*):\n                torch dtype\n        \"\"\"\n        device = device or self._execution_device\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n        if prompt is not None:\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        if prompt_embeds is None:\n            prompt_embeds = self._get_t5_prompt_embeds(\n                prompt=prompt,\n                num_videos_per_prompt=num_videos_per_prompt,\n                max_sequence_length=max_sequence_length,\n                device=device,\n                dtype=dtype,\n            )\n\n        if do_classifier_free_guidance and negative_prompt_embeds is None:\n            negative_prompt = negative_prompt or \"\"\n            negative_prompt = batch_size * [negative_prompt] if isinstance(negative_prompt, str) else negative_prompt\n\n            if prompt is not None and type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n\n            negative_prompt_embeds = self._get_t5_prompt_embeds(\n                prompt=negative_prompt,\n                num_videos_per_prompt=num_videos_per_prompt,\n                max_sequence_length=max_sequence_length,\n                device=device,\n                dtype=dtype,\n            )\n\n        return prompt_embeds, negative_prompt_embeds\n\n    def check_inputs(\n        self,\n        prompt,\n        negative_prompt,\n        height,\n        width,\n        prompt_embeds=None,\n        negative_prompt_embeds=None,\n        callback_on_step_end_tensor_inputs=None,\n    ):\n        if height % 16 != 0 or width % 16 != 0:\n            raise ValueError(f\"`height` and `width` have to be divisible by 16 but are {height} and {width}.\")\n\n        if callback_on_step_end_tensor_inputs is not None and not all(\n            k in self._callback_tensor_inputs for k in callback_on_step_end_tensor_inputs\n        ):\n            raise ValueError(\n                f\"`callback_on_step_end_tensor_inputs` has to be in {self._callback_tensor_inputs}, but found {[k for k in callback_on_step_end_tensor_inputs if k not in self._callback_tensor_inputs]}\"\n            )\n\n        if prompt is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif negative_prompt is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_prompt_embeds`: {negative_prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n        elif negative_prompt is not None and (\n            not isinstance(negative_prompt, str) and not isinstance(negative_prompt, list)\n        ):\n            raise ValueError(f\"`negative_prompt` has to be of type `str` or `list` but is {type(negative_prompt)}\")\n\n    def prepare_latents(\n        self,\n        batch_size: int,\n        num_channels_latents: int = 16,\n        height: int = 480,\n        width: int = 832,\n        num_frames: int = 81,\n        dtype: Optional[torch.dtype] = None,\n        device: Optional[torch.device] = None,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.Tensor] = None,\n    ) -> torch.Tensor:\n        if latents is not None:\n            return latents.to(device=device, dtype=dtype)\n\n        num_latent_frames = (num_frames - 1) // self.vae_scale_factor_temporal + 1\n        shape = (\n            batch_size,\n            num_channels_latents,\n            num_latent_frames,\n            int(height) // self.vae_scale_factor_spatial,\n            int(width) // self.vae_scale_factor_spatial,\n        )\n        if isinstance(generator, list) and len(generator) != batch_size:\n            raise ValueError(\n                f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n            )\n\n        latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n        return latents\n\n    @property\n    def guidance_scale(self):\n        return self._guidance_scale\n\n    @property\n    def do_classifier_free_guidance(self):\n        return self._guidance_scale > 1.0\n\n    @property\n    def num_timesteps(self):\n        return self._num_timesteps\n\n    @property\n    def current_timestep(self):\n        return self._current_timestep\n\n    @property\n    def interrupt(self):\n        return self._interrupt\n\n    @property\n    def attention_kwargs(self):\n        return self._attention_kwargs\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        negative_prompt: Union[str, List[str]] = None,\n        height: int = 480,\n        width: int = 832,\n        num_frames: int = 81,\n        num_inference_steps: int = 50,\n        guidance_scale: float = 5.0,\n        num_videos_per_prompt: Optional[int] = 1,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.Tensor] = None,\n        prompt_embeds: Optional[torch.Tensor] = None,\n        negative_prompt_embeds: Optional[torch.Tensor] = None,\n        output_type: Optional[str] = \"np\",\n        return_dict: bool = True,\n        attention_kwargs: Optional[Dict[str, Any]] = None,\n        callback_on_step_end: Optional[\n            Union[Callable[[int, int, Dict], None], PipelineCallback, MultiPipelineCallbacks]\n        ] = None,\n        callback_on_step_end_tensor_inputs: List[str] = [\"latents\"],\n        max_sequence_length: int = 512,\n        use_cfg_zero_star: Optional[bool] = False,\n        use_zero_init: Optional[bool] = True,\n        zero_steps: Optional[int] = 0,\n    ):\n        r\"\"\"\n        The call function to the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide the image generation. If not defined, one has to pass `prompt_embeds`.\n                instead.\n            height (`int`, defaults to `480`):\n                The height in pixels of the generated image.\n            width (`int`, defaults to `832`):\n                The width in pixels of the generated image.\n            num_frames (`int`, defaults to `81`):\n                The number of frames in the generated video.\n            num_inference_steps (`int`, defaults to `50`):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            guidance_scale (`float`, defaults to `5.0`):\n                Guidance scale as defined in [Classifier-Free Diffusion Guidance](https://arxiv.org/abs/2207.12598).\n                `guidance_scale` is defined as `w` of equation 2. of [Imagen\n                Paper](https://arxiv.org/pdf/2205.11487.pdf). Guidance scale is enabled by setting `guidance_scale >\n                1`. Higher guidance scale encourages to generate images that are closely linked to the text `prompt`,\n                usually at the expense of lower image quality.\n            num_videos_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                A [`torch.Generator`](https://pytorch.org/docs/stable/generated/torch.Generator.html) to make\n                generation deterministic.\n            latents (`torch.Tensor`, *optional*):\n                Pre-generated noisy latents sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor is generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs (prompt weighting). If not\n                provided, text embeddings are generated from the `prompt` input argument.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generated image. Choose between `PIL.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`WanPipelineOutput`] instead of a plain tuple.\n            attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            callback_on_step_end (`Callable`, `PipelineCallback`, `MultiPipelineCallbacks`, *optional*):\n                A function or a subclass of `PipelineCallback` or `MultiPipelineCallbacks` that is called at the end of\n                each denoising step during the inference. with the following arguments: `callback_on_step_end(self:\n                DiffusionPipeline, step: int, timestep: int, callback_kwargs: Dict)`. `callback_kwargs` will include a\n                list of all tensors as specified by `callback_on_step_end_tensor_inputs`.\n            callback_on_step_end_tensor_inputs (`List`, *optional*):\n                The list of tensor inputs for the `callback_on_step_end` function. The tensors specified in the list\n                will be passed as `callback_kwargs` argument. You will only be able to include variables listed in the\n                `._callback_tensor_inputs` attribute of your pipeline class.\n            autocast_dtype (`torch.dtype`, *optional*, defaults to `torch.bfloat16`):\n                The dtype to use for the torch.amp.autocast.\n\n        Examples:\n\n        Returns:\n            [`~WanPipelineOutput`] or `tuple`:\n                If `return_dict` is `True`, [`WanPipelineOutput`] is returned, otherwise a `tuple` is returned where\n                the first element is a list with the generated images and the second element is a list of `bool`s\n                indicating whether the corresponding generated image contains \"not-safe-for-work\" (nsfw) content.\n        \"\"\"\n\n        if isinstance(callback_on_step_end, (PipelineCallback, MultiPipelineCallbacks)):\n            callback_on_step_end_tensor_inputs = callback_on_step_end.tensor_inputs\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            negative_prompt,\n            height,\n            width,\n            prompt_embeds,\n            negative_prompt_embeds,\n            callback_on_step_end_tensor_inputs,\n        )\n\n        self._guidance_scale = guidance_scale\n        self._attention_kwargs = attention_kwargs\n        self._current_timestep = None\n        self._interrupt = False\n\n        device = self._execution_device\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        # 3. Encode input prompt\n        prompt_embeds, negative_prompt_embeds = self.encode_prompt(\n            prompt=prompt,\n            negative_prompt=negative_prompt,\n            do_classifier_free_guidance=self.do_classifier_free_guidance,\n            num_videos_per_prompt=num_videos_per_prompt,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            max_sequence_length=max_sequence_length,\n            device=device,\n        )\n\n        transformer_dtype = self.transformer.dtype\n        prompt_embeds = prompt_embeds.to(transformer_dtype)\n        if negative_prompt_embeds is not None:\n            negative_prompt_embeds = negative_prompt_embeds.to(transformer_dtype)\n\n        # 4. Prepare timesteps\n        self.scheduler.set_timesteps(num_inference_steps, device=device)\n        timesteps = self.scheduler.timesteps\n\n        # 5. Prepare latent variables\n        num_channels_latents = self.transformer.config.in_channels\n        latents = self.prepare_latents(\n            batch_size * num_videos_per_prompt,\n            num_channels_latents,\n            height,\n            width,\n            num_frames,\n            torch.float32,\n            device,\n            generator,\n            latents,\n        )\n\n        # 6. Denoising loop\n        num_warmup_steps = len(timesteps) - num_inference_steps * self.scheduler.order\n        self._num_timesteps = len(timesteps)\n\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                if self.interrupt:\n                    continue\n\n                self._current_timestep = t\n                latent_model_input = latents.to(transformer_dtype)\n                timestep = t.expand(latents.shape[0])\n\n                noise_pred = self.transformer(\n                    hidden_states=latent_model_input,\n                    timestep=timestep,\n                    encoder_hidden_states=prompt_embeds,\n                    attention_kwargs=attention_kwargs,\n                    return_dict=False,\n                )[0]\n\n                if self.do_classifier_free_guidance:\n                    noise_pred_uncond = self.transformer(\n                        hidden_states=latent_model_input,\n                        timestep=timestep,\n                        encoder_hidden_states=negative_prompt_embeds,\n                        attention_kwargs=attention_kwargs,\n                        return_dict=False,\n                    )[0]\n\n                    noise_pred_text = noise_pred\n                    if use_cfg_zero_star:\n                        positive_flat = noise_pred_text.view(batch_size, -1)\n                        negative_flat = noise_pred_uncond.view(batch_size, -1)\n\n                        alpha = optimized_scale(positive_flat,negative_flat)\n                        alpha = alpha.view(batch_size, *([1] * (len(noise_pred_text.shape) - 1)))\n                        alpha = alpha.to(noise_pred_text.dtype)\n\n                        if (i <= zero_steps) and use_zero_init:\n                            noise_pred = noise_pred_text*0.\n                        else:\n                            noise_pred = noise_pred_uncond * alpha + guidance_scale * (noise_pred_text - noise_pred_uncond * alpha)\n                    else:\n                        noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents = self.scheduler.step(noise_pred, t, latents, return_dict=False)[0]\n\n                if callback_on_step_end is not None:\n                    callback_kwargs = {}\n                    for k in callback_on_step_end_tensor_inputs:\n                        callback_kwargs[k] = locals()[k]\n                    callback_outputs = callback_on_step_end(self, i, t, callback_kwargs)\n\n                    latents = callback_outputs.pop(\"latents\", latents)\n                    prompt_embeds = callback_outputs.pop(\"prompt_embeds\", prompt_embeds)\n                    negative_prompt_embeds = callback_outputs.pop(\"negative_prompt_embeds\", negative_prompt_embeds)\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n\n                if XLA_AVAILABLE:\n                    xm.mark_step()\n\n        self._current_timestep = None\n\n        if not output_type == \"latent\":\n            latents = latents.to(self.vae.dtype)\n            latents_mean = (\n                torch.tensor(self.vae.config.latents_mean)\n                .view(1, self.vae.config.z_dim, 1, 1, 1)\n                .to(latents.device, latents.dtype)\n            )\n            latents_std = 1.0 / torch.tensor(self.vae.config.latents_std).view(1, self.vae.config.z_dim, 1, 1, 1).to(\n                latents.device, latents.dtype\n            )\n            latents = latents / latents_std + latents_mean\n            video = self.vae.decode(latents, return_dict=False)[0]\n            video = self.video_processor.postprocess_video(video, output_type=output_type)\n        else:\n            video = latents\n\n        # Offload all models\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return (video,)\n\n        return WanPipelineOutput(frames=video)\n"
  },
  {
    "path": "modules/civitai/api_civitai.py",
    "content": "from starlette.responses import JSONResponse\n\n\ndef models_to_json(all_models:list, model_id:int=None):\n    dct = []\n    for model in all_models:\n        if model_id is not None and model.id != model_id:\n            continue\n        model_dct = model.__dict__.copy()\n        versions_dct = []\n        for version in model.versions:\n            version_dct = version.__dict__.copy()\n            version_dct['files'] = [f.__dict__.copy() for f in version.files]\n            version_dct['images'] = [i.__dict__.copy() for i in version.images]\n            versions_dct.append(version_dct)\n        model_dct['versions'] = versions_dct\n        dct.append(model_dct)\n    # obj = json.dumps(dct, indent=2, ensure_ascii=False)\n    return dct\n\n\ndef get_civitai(\n        model_id:int=None, # if model_id is provided assume fetch-from-cache\n        query:str = '', # search query or tag is required\n        tag:str = '', # search query or tag is required\n        types:str = '', # Checkpoint, TextualInversion, Hypernetwork, AestheticGradient, LORA, Controlnet, Poses\n        sort:str = '', # Highest Rated, Most Downloaded, Newest\n        period:str = '', # AllTime, Year, Month, Week, Day\n        nsfw:bool = None, # optional:bool\n        limit:int = 0,\n        base:str = '',\n        token:str = None,\n        exact:bool = True,\n):\n    from modules.civitai import search_civitai\n    if model_id is not None:\n        dct = models_to_json(search_civitai.models, model_id=model_id)\n        return JSONResponse(content=dct, status_code=200)\n    if len(query) > 0 or len(tag) > 0:\n        models = search_civitai.search_civitai(\n            query=query,\n            tag=tag,\n            types=types,\n            sort=sort,\n            period=period,\n            nsfw=nsfw,\n            limit=limit,\n            base=base,\n            token=token,\n            exact=exact\n        )\n        dct = models_to_json(models)\n        return JSONResponse(content=dct, status_code=200)\n    return JSONResponse(content=[], status_code=200)\n\n\ndef post_civitai(page:str=None):\n    from modules.civitai import metadata_civitai\n    result = []\n    for r in metadata_civitai.civit_search_metadata(title=page, raw=True):\n        result = r # get the last yielded result\n    return result\n\n\ndef register_api():\n    from modules.shared import api\n    api.add_api_route(\"/sdapi/v1/civitai\", get_civitai, methods=[\"GET\"], response_model=list)\n    api.add_api_route(\"/sdapi/v1/civitai\", post_civitai, methods=[\"POST\"], response_model=list)\n"
  },
  {
    "path": "modules/civitai/download_civitai.py",
    "content": "import os\nimport json\nimport rich.progress as p\nfrom PIL import Image\nfrom modules import shared, errors, paths\n\n\npbar = None\n\n\ndef save_video_frame(filepath: str):\n    from modules import video\n    try:\n        frames, fps, duration, w, h, codec, frame = video.get_video_params(filepath, capture=True)\n    except Exception as e:\n        shared.log.error(f'Video: file={filepath} {e}')\n        return None\n    if frame is not None:\n        basename = os.path.splitext(filepath)\n        thumb = f'{basename[0]}.thumb.jpg'\n        shared.log.debug(f'Video: file={filepath} frames={frames} fps={fps} size={w}x{h} codec={codec} duration={duration} thumb={thumb}')\n        frame.save(thumb)\n    else:\n        shared.log.error(f'Video: file={filepath} no frames found')\n    return frame\n\n\ndef download_civit_meta(model_path: str, model_id):\n    fn = os.path.splitext(model_path)[0] + '.json'\n    url = f'https://civitai.com/api/v1/models/{model_id}'\n    r = shared.req(url)\n    if r.status_code == 200:\n        try:\n            data = r.json()\n            shared.writefile(data, filename=fn, mode='w', silent=True)\n            shared.log.info(f'CivitAI download: id={model_id} url={url} file=\"{fn}\"')\n            return r.status_code, len(data), '' # code/size/note\n        except Exception as e:\n            errors.display(e, 'civitai meta')\n            shared.log.error(f'CivitAI meta: id={model_id} url={url} file=\"{fn}\" {e}')\n            return r.status_code, '', str(e)\n    return r.status_code, '', ''\n\n\ndef download_civit_preview(model_path: str, preview_url: str):\n    global pbar # pylint: disable=global-statement\n    if model_path is None:\n        pbar = None\n        return 500, '', ''\n    ext = os.path.splitext(preview_url)[1]\n    preview_file = os.path.splitext(model_path)[0] + ext\n    is_video = preview_file.lower().endswith('.mp4')\n    is_json = preview_file.lower().endswith('.json')\n    if is_json:\n        shared.log.warning(f'CivitAI download: url=\"{preview_url}\" skip json')\n        return 500, '', 'exepected preview image got json'\n    if os.path.exists(preview_file):\n        return 304, '', 'already exists'\n    # res = f'CivitAI download: url={preview_url} file=\"{preview_file}\"'\n    r = shared.req(preview_url, stream=True)\n    total_size = int(r.headers.get('content-length', 0))\n    block_size = 16384 # 16KB blocks\n    written = 0\n    img = None\n    jobid = shared.state.begin('Download CivitAI')\n    if pbar is None:\n        pbar = p.Progress(p.TextColumn('[cyan]Download'), p.DownloadColumn(), p.BarColumn(), p.TaskProgressColumn(), p.TimeRemainingColumn(), p.TimeElapsedColumn(), p.TransferSpeedColumn(), p.TextColumn('[yellow]{task.description}'), console=shared.console)\n    try:\n        with open(preview_file, 'wb') as f:\n            with pbar:\n                task = pbar.add_task(description=preview_file, total=total_size)\n                for data in r.iter_content(block_size):\n                    written = written + len(data)\n                    f.write(data)\n                    pbar.update(task, advance=block_size)\n        if written < 1024: # min threshold\n            os.remove(preview_file)\n            return 400, '', 'removed invalid download'\n        if is_video:\n            img = save_video_frame(preview_file)\n        else:\n            img = Image.open(preview_file)\n    except Exception as e:\n        shared.log.error(f'CivitAI download error: url={preview_url} file=\"{preview_file}\" written={written} {e}')\n        shared.state.end(jobid)\n        return 500, '', str(e)\n    shared.state.end(jobid)\n    if img is None:\n        return 500, '', 'image is none'\n    shared.log.info(f'CivitAI download: url={preview_url} file=\"{preview_file}\" size={total_size} image={img.size}')\n    img.close()\n    return 200, str(total_size), '' # code/size/note\n\n\ndef download_civit_model_thread(model_name: str, model_url: str, model_path: str = \"\", model_type: str = \"Model\", token: str = None):\n    import hashlib\n    sha256 = hashlib.sha256()\n    sha256.update(model_url.encode('utf-8'))\n    temp_file = sha256.hexdigest()[:8] + '.tmp'\n\n    headers = {}\n    starting_pos = 0\n    if os.path.isfile(temp_file):\n        starting_pos = os.path.getsize(temp_file)\n        headers['Range'] = f'bytes={starting_pos}-'\n    if 'civit' in model_url.lower(): # downloader can be used for other urls too\n        if token is None or len(token) == 0:\n            token = shared.opts.civitai_token\n        if (token is not None) and (len(token) > 0):\n            headers['Authorization'] = f'Bearer {token}'\n\n    r = shared.req(model_url, headers=headers, stream=True)\n    total_size = int(r.headers.get('content-length', 0))\n    if model_name is None or len(model_name) == 0:\n        cn = r.headers.get('content-disposition', '')\n        model_name = cn.split('filename=')[-1].strip('\"')\n\n    model_path = model_path.strip()\n    if len(model_path) > 0:\n        if os.path.isabs(model_path):\n            pass\n        else:\n            model_path = os.path.join(paths.models_path, model_path)\n    elif model_type.lower() == 'lora':\n        model_path = shared.opts.lora_dir\n    elif model_type.lower() == 'embedding':\n        model_path = shared.opts.embeddings_dir\n    elif model_type.lower() == 'vae':\n        model_path = shared.opts.vae_dir\n    else:\n        model_path = shared.opts.ckpt_dir\n    model_file = os.path.join(model_path, model_name)\n    temp_file = os.path.join(model_path, temp_file)\n\n    res = f'Model download: name=\"{model_name}\" url=\"{model_url}\" path=\"{model_path}\" temp=\"{temp_file}\"'\n    if os.path.isfile(model_file):\n        res += ' already exists'\n        shared.log.warning(res)\n        return res\n\n    res += f' size={round((starting_pos + total_size)/1024/1024, 2)}Mb'\n    shared.log.info(res)\n    jobid = shared.state.begin('Download CivitAI')\n    block_size = 16384 # 16KB blocks\n    written = starting_pos\n    global pbar # pylint: disable=global-statement\n    if pbar is None:\n        pbar = p.Progress(p.TextColumn('[cyan]{task.description}'), p.DownloadColumn(), p.BarColumn(), p.TaskProgressColumn(), p.TimeRemainingColumn(), p.TimeElapsedColumn(), p.TransferSpeedColumn(), p.TextColumn('[cyan]{task.fields[name]}'), console=shared.console)\n    with pbar:\n        task = pbar.add_task(description=\"Download starting\", total=starting_pos+total_size, name=model_name)\n        try:\n            with open(temp_file, 'ab') as f:\n                for data in r.iter_content(block_size):\n                    if written == 0:\n                        try: # check if response is JSON message instead of bytes\n                            shared.log.error(f'Model download: response={json.loads(data.decode(\"utf-8\"))}')\n                            raise ValueError('response: type=json expected=bytes')\n                        except Exception: # this is good\n                            pass\n                    written = written + len(data)\n                    f.write(data)\n                    pbar.update(task, description=\"Download\", completed=written)\n            if written < 1024: # min threshold\n                os.remove(temp_file)\n                raise ValueError(f'removed invalid download: bytes={written}')\n        except Exception as e:\n            shared.log.error(f'{res} {e}')\n        finally:\n            pbar.stop_task(task)\n            pbar.remove_task(task)\n    if starting_pos+total_size != written:\n        shared.log.warning(f'{res} written={round(written/1024/1024)}Mb incomplete download')\n    elif os.path.exists(temp_file):\n        shared.log.debug(f'Model download complete: temp=\"{temp_file}\" path=\"{model_file}\"')\n        os.rename(temp_file, model_file)\n    shared.state.end(jobid)\n    if os.path.exists(model_file):\n        return model_file\n    else:\n        return None\n\n\ndef download_civit_model(model_url: str, model_name: str = '', model_path: str = '', model_type: str = '', token: str = None):\n    import threading\n    if model_url is None or len(model_url) == 0:\n        shared.log.error('Model download: no url provided')\n        return\n    thread = threading.Thread(target=download_civit_model_thread, args=(model_name, model_url, model_path, model_type, token))\n    thread.start()\n    thread.join()\n    from modules.sd_models import list_models  # pylint: disable=W0621\n    list_models()\n"
  },
  {
    "path": "modules/civitai/metadata_civitai.py",
    "content": "import os\nimport re\nimport time\nimport gradio as gr\nfrom modules.shared import log, opts, req, readfile, max_workers\n\n\ndata = []\nselected_model = None\n\n\nclass CivitModel:\n    def __init__(self, name, fn, sha = None, meta = {}):\n        self.name = name\n        self.file = name\n        self.id = meta.get('id', 0)\n        self.fn = fn\n        self.sha = sha\n        self.meta = meta\n        self.versions = 0\n        self.vername = ''\n        self.latest = ''\n        self.latest_hashes = []\n        self.latest_name = ''\n        self.url = None\n        self.status = 'Not found'\n\n\ndef civit_update_metadata(raw:bool=False):\n    def create_update_metadata_table(rows: list[CivitModel]):\n        html = \"\"\"\n            <table class=\"simple-table\">\n                <thead>\n                    <tr><th>File</th><th>ID</th><th>Name</th><th>Hash</th><th>Versions</th><th>Latest</th><th>Status</th></tr>\n                </thead>\n                <tbody>\n                    {tbody}\n                </tbody>\n            </table>\n        \"\"\"\n        tbody = ''\n        for row in rows:\n            try:\n                tbody += f\"\"\"\n                    <tr>\n                        <td>{row.file}</td>\n                        <td>{row.id}</td>\n                        <td>{row.name}</td>\n                        <td>{row.sha}</td>\n                        <td>{row.versions}</td>\n                        <td>{row.latest}</td>\n                        <td>{row.status}</td>\n                    </tr>\n                \"\"\"\n            except Exception as e:\n                log.error(f'Model list: row={row} {e}')\n        return html.format(tbody=tbody)\n\n    log.debug('CivitAI update metadata: models')\n    from modules import ui_extra_networks\n    from modules.civitai.download_civitai import download_civit_meta\n    pages = ui_extra_networks.get_pages('Model')\n    if len(pages) == 0:\n        return 'CivitAI update metadata: no models found'\n    page: ui_extra_networks.ExtraNetworksPage = pages[0]\n    results = []\n    all_hashes = [(item.get('hash', None) or 'XXXXXXXX').upper()[:8] for item in page.list_items()]\n    for item in page.list_items():\n        model = CivitModel(name=item['name'], fn=item['filename'], sha=item.get('hash', None), meta=item.get('metadata', {}))\n        if model.sha is None or len(model.sha) == 0:\n            log.debug(f'CivitAI skip search: name=\"{model.name}\" hash=None')\n        else:\n            r = req(f'https://civitai.com/api/v1/model-versions/by-hash/{model.sha}')\n            log.debug(f'CivitAI search: name=\"{model.name}\" hash={model.sha} status={r.status_code}')\n            if r.status_code == 200:\n                d = r.json()\n                model.id = d['modelId']\n                download_civit_meta(model.fn, model.id)\n                fn = os.path.splitext(item['filename'])[0] + '.json'\n                model.meta = readfile(fn, silent=True, as_type=\"dict\")\n                model.name = model.meta.get('name', model.name)\n                model.versions = len(model.meta.get('modelVersions', []))\n        versions = model.meta.get('modelVersions', [])\n        if len(versions) > 0:\n            model.latest = versions[0].get('name', '')\n            model.latest_hashes.clear()\n            for v in versions[0].get('files', []):\n                for h in v.get('hashes', {}).values():\n                    model.latest_hashes.append(h[:8].upper())\n        for ver in versions:\n            for f in ver.get('files', []):\n                for h in f.get('hashes', {}).values():\n                    if h[:8].upper() == model.sha[:8].upper():\n                        model.vername = ver.get('name', '')\n                        model.url = f.get('downloadUrl', None)\n                        model.latest_name = f.get('name', '')\n                        if model.vername == model.latest:\n                            model.status = 'Latest version'\n                        elif any(map(lambda v: v in model.latest_hashes, all_hashes)): # pylint: disable=cell-var-from-loop # noqa: C417\n                            model.status = 'Update downloaded'\n                        else:\n                            model.status = 'Update available'\n                        break\n        results.append(model)\n        yield results if raw else create_update_metadata_table(results)\n    yield results if raw else create_update_metadata_table(results)\n\n\ndef civit_search_model(name, tag, model_type):\n    # types = 'LORA' if model_type == 'LoRA' else 'Checkpoint'\n    url = 'https://civitai.com/api/v1/models?limit=25&Sort=Newest'\n    if model_type == 'Model':\n        url += '&types=Checkpoint'\n    elif model_type == 'LoRA':\n        url += '&types=LORA&types=DoRA&types=LoCon'\n    elif model_type == 'Embedding':\n        url += '&types=TextualInversion'\n    elif model_type == 'VAE':\n        url += '&types=VAE'\n    if name is not None and len(name) > 0:\n        url += f'&query={name}'\n    if tag is not None and len(tag) > 0:\n        url += f'&tag={tag}'\n    r = req(url)\n    log.debug(f'CivitAI search: type={model_type} name=\"{name}\" tag={tag or \"none\"} url=\"{url}\" status={r.status_code}')\n    if r.status_code != 200:\n        log.warning(f'CivitAI search: name=\"{name}\" tag={tag} status={r.status_code}')\n        return [], gr.update(visible=False, value=[]), gr.update(visible=False, value=None), gr.update(visible=False, value=None)\n    try:\n        body = r.json()\n    except Exception as e:\n        log.error(f'CivitAI search: name=\"{name}\" tag={tag} {e}')\n        return [], gr.update(visible=False, value=[]), gr.update(visible=False, value=None), gr.update(visible=False, value=None)\n    global data # pylint: disable=global-statement\n    data = body.get('items', [])\n    data1 = []\n    for model in data:\n        found = 0\n        if model_type == 'LoRA' and model['type'].lower() in ['lora', 'locon', 'dora', 'lycoris']:\n            found += 1\n        elif model_type == 'Embedding' and model['type'].lower() in ['textualinversion', 'embedding']:\n            found += 1\n        elif model_type == 'Model' and model['type'].lower() in ['checkpoint']:\n            found += 1\n        elif model_type == 'VAE' and model['type'].lower() in ['vae']:\n            found += 1\n        elif model_type == 'Other':\n            found += 1\n        if found > 0:\n            data1.append([\n                model['id'],\n                model['name'],\n                ', '.join(model['tags']),\n                model['stats']['downloadCount'],\n                model['stats']['rating']\n            ])\n    res = f'Search result: name={name} tag={tag or \"none\"} type={model_type} models={len(data1)}'\n    return res, gr.update(visible=len(data1) > 0, value=data1 if len(data1) > 0 else []), gr.update(visible=False, value=None), gr.update(visible=False, value=None)\n\n\ndef atomic_civit_search_metadata(item, results):\n    from modules.civitai.download_civitai import download_civit_preview, download_civit_meta\n    if item is None:\n        return\n    try:\n        meta = os.path.splitext(item['filename'])[0] + '.json'\n    except Exception:\n        # log.error(f'CivitAI search metadata: item={item} {e}')\n        return\n    has_meta = os.path.isfile(meta) and os.stat(meta).st_size > 0\n    if ('missing.png' in item['preview'] or not has_meta) and os.path.isfile(item['filename']):\n        sha = item.get('hash', None)\n        found = False\n        result = {\n            'id': '',\n            'name': item['name'],\n            'type': '',\n            'hash': '',\n            'code': '',\n            'size': '',\n            'note': '',\n        }\n        if sha is not None and len(sha) > 0:\n            r = req(f'https://civitai.com/api/v1/model-versions/by-hash/{sha}')\n            log.debug(f'CivitAI search: name=\"{item[\"name\"]}\" hash={sha} status={r.status_code}')\n            result['hash'] = sha\n            result['code'] = r.status_code\n            if r.status_code == 200:\n                d = r.json()\n                result['code'], result['size'], result['note'] = download_civit_meta(item['filename'], d['modelId'])\n                result['id'] = d['modelId']\n                result['type'] = 'metadata'\n                results.append(result)\n                if d.get('images') is not None:\n                    for i in d['images']:\n                        result['code'], result['size'], result['note'] = download_civit_preview(item['filename'], i['url'])\n                        if result['code'] == 200:\n                            result['type'] = 'preview'\n                            results.append(result)\n                            found = True\n                            break\n        if not found and os.stat(item['filename']).st_size < (1024 * 1024 * 1024):\n            from modules import hashes\n            sha = hashes.calculate_sha256(item['filename'], quiet=True)[:10]\n            r = req(f'https://civitai.com/api/v1/model-versions/by-hash/{sha}')\n            log.debug(f'CivitAI search: name=\"{item[\"name\"]}\" hash={sha} status={r.status_code}')\n            result['hash'] = sha\n            result['code'] = r.status_code\n            if r.status_code == 200:\n                d = r.json()\n                result['code'], result['size'], result['note'] = download_civit_meta(item['filename'], d['modelId'])\n                result['id'] = d['modelId']\n                result['type'] = 'metadata'\n                results.append(result)\n                if d.get('images') is not None:\n                    for i in d['images']:\n                        result['code'], result['size'], result['note'] = download_civit_preview(item['filename'], i['url'])\n                        if result['code'] == 200:\n                            result['type'] = 'preview'\n                            results.append(result)\n                            found = True\n                            break\n        if not found:\n            results.append(result)\n\n\ndef civit_search_metadata(title: str = None, raw: bool = False):\n    def create_search_metadata_table(rows):\n        html = \"\"\"\n            <table class=\"simple-table\">\n                <thead><tr><th>Name</th><th>ID</th><th>Type</th><th>Code</th><th>Hash</th><th>Size</th><th>Note</th></tr></thead>\n                <tbody>{tbody}</tbody>\n            </table>\n        \"\"\"\n        tbody = ''\n        for row in rows:\n            try:\n                tbody += f\"\"\"\n                    <tr>\n                        <td>{row['name']}</td>\n                        <td>{row['id']}</td>\n                        <td>{row['type']}</td>\n                        <td>{row['code']}</td>\n                        <td>{row['hash']}</td>\n                        <td>{row['size']}</td>\n                        <td>{row['note']}</td>\n                    </tr>\n                \"\"\"\n            except Exception as e:\n                log.error(f'Model list: row={row} {e}')\n        return html.format(tbody=tbody)\n\n    from modules.ui_extra_networks import get_pages\n    results = []\n    scanned, skipped = 0, 0\n    t0 = time.time()\n    candidates = []\n    re_skip = [r.strip() for r in opts.extra_networks_scan_skip.split(',') if len(r.strip()) > 0]\n    for page in get_pages():\n        if type(title) == str:\n            if page.title.lower() != title.lower():\n                continue\n        if page.name == 'style' or page.name == 'wildcards':\n            continue\n        for item in page.list_items():\n            if item is None:\n                continue\n            if any(re.search(re_str, item.get('name', '') + item.get('filename', '')) for re_str in re_skip):\n                skipped += 1\n                continue\n            scanned += 1\n            candidates.append(item)\n    log.debug(f'CivitAI search metadata: type={title if type(title) == str else \"all\"} workers={max_workers} skip={len(re_skip)} items={len(candidates)}')\n    import concurrent\n    with concurrent.futures.ThreadPoolExecutor(max_workers=max_workers) as executor:\n        future_items = {}\n        for fn in candidates:\n            future_items[executor.submit(atomic_civit_search_metadata, fn, results)] = fn\n        for future in concurrent.futures.as_completed(future_items):\n            future.result()\n            yield results if raw else create_search_metadata_table(results)\n\n    t1 = time.time()\n    log.debug(f'CivitAI search metadata: scanned={scanned} skipped={skipped} time={t1-t0:.2f}')\n    yield results if raw else create_search_metadata_table(results)\n"
  },
  {
    "path": "modules/civitai/search_civitai.py",
    "content": "from dataclasses import dataclass\nimport os\nimport json\nimport time\nfrom installer import install, log\n\n\nfull_dct = False\nfull_html = False\nbase_models = ['', 'AuraFlow', 'Chroma', 'CogVideoX', 'Flux.1 S', 'Flux.1 D', 'Flux.1 Krea', 'Flux.1 Kontext', 'Flux.2 D', 'HiDream', 'Hunyuan 1', 'Hunyuan Video', 'Illustrious', 'Kolors', 'LTXV', 'Lumina', 'Mochi', 'NoobAI', 'PixArt a', 'PixArt E', 'Pony', 'Pony V7', 'Qwen', 'SD 1.4', 'SD 1.5', 'SD 1.5 LCM', 'SD 1.5 Hyper', 'SD 2.0', 'SD 2.1', 'SDXL 1.0', 'SDXL Lightning', 'SDXL Hyper', 'Wan Video 1.3B t2v', 'Wan Video 14B t2v', 'Wan Video 14B i2v 480p', 'Wan Video 14B i2v 720p', 'Wan Video 2.2 TI2V-5B', 'Wan Video 2.2 I2V-A14B', 'Wan Video 2.2 T2V-A14B', 'Wan Video 2.5 T2V', 'Wan Video 2.5 I2V', 'ZImageTurbo', 'Other']\n\n@dataclass\nclass ModelImage():\n    def __init__(self, dct: dict):\n        if isinstance(dct, str):\n            dct = json.loads(dct)\n        self.id: int = dct.get('id', 0)\n        self.url: str = dct.get('url', '')\n        self.width: int = dct.get('width', 0)\n        self.height: int = dct.get('height', 0)\n        self.type: str = dct.get('type', 'Unknown')\n        self.dct: dict = dct if full_dct else {}\n\n    def __str__(self):\n        return f'ModelImage(id={self.id} url=\"{self.url}\" width={self.width} height={self.height} type=\"{self.type}\")'\n\n\n@dataclass\nclass ModelFile():\n    def __init__(self, dct: dict):\n        if isinstance(dct, str):\n            dct = json.loads(dct)\n        self.id: int = dct.get('id', 0)\n        self.size: int = int(1024 * dct.get('sizeKB', 0))\n        self.name: str = dct.get('name', 'Unknown')\n        self.type: str = dct.get('type', 'Unknown')\n        self.hashes: list[str] = [str(h) for h in dct.get('hashes', {}).values()]\n        self.url: str = dct.get('downloadUrl', '')\n        self.dct: dict = dct if full_dct else {}\n\n    def __str__(self):\n        return f'ModelFile(id={self.id} name=\"{self.name}\" size={self.size} type=\"{self.type}\" url=\"{self.url}\")'\n\n\n@dataclass\nclass ModelVersion():\n    def __init__(self, dct: dict):\n        import bs4\n        if isinstance(dct, str):\n            dct = json.loads(dct)\n        self.id: int = dct.get('id', 0)\n        self.name: str = dct.get('name', 'Unknown')\n        self.base: str = dct.get('baseModel', 'Unknown')\n        self.mtime: str = dct.get('publishedAt', '')\n        self.downloads: int = dct.get('stats', {}).get('downloadCount', 0)\n        self.availability: str = dct.get('availability', 'Unknown')\n        self.html: str = dct.get('description', '') or '' if full_html else ''\n        self.desc: str = bs4.BeautifulSoup(dct.get('description', '') or '', features=\"html.parser\").get_text()\n        self.files = [ModelFile(f) for f in dct.get('files', [])]\n        self.images = [ModelImage(i) for i in dct.get('images', [])]\n        self.dct: dict = dct if full_dct else {}\n\n    def __str__(self):\n        return f'ModelVersion(id={self.id} name=\"{self.name}\" base=\"{self.base}\" mtime=\"{self.mtime}\" downloads={self.downloads} availability={self.availability} desc=\"{self.desc[:30]}...\")'\n\n\n@dataclass\nclass Model():\n    def __init__(self, dct: dict):\n        import bs4\n        if isinstance(dct, str):\n            dct = json.loads(dct)\n        self.id: int = dct.get('id', 0)\n        self.url: str = f'https://civitai.com/models/{self.id}'\n        self.type: str = dct.get('type', 'Unknown')\n        self.name: str = dct.get('name', 'Unknown')\n        self.html: str = dct.get('description', '') or '' if full_html else ''\n        self.desc: str = bs4.BeautifulSoup(dct.get('description', '') or '', features=\"html.parser\").get_text()\n        self.tags: list[str] = dct.get('tags', [])\n        self.nsfw: bool = dct.get('nsfw', False)\n        self.level: str = dct.get('nsfwLevel', 0)\n        self.availability: str = dct.get('availability', 'Unknown')\n        self.downloads: int = dct.get('stats', {}).get('downloadCount', 0)\n        self.creator: str = dct.get('creator', {}).get('username', 'Unknown')\n        self.versions: list[ModelVersion] = [ModelVersion(v) for v in dct.get('modelVersions', [])]\n        self.dct: dict = dct if full_dct else {}\n\n    def __str__(self):\n        return f'Model(id={self.id} type={self.type} name=\"{self.name}\" versions={len(self.versions)} nsfw={self.nsfw}/{self.level} downloads={self.downloads} author=\"{self.creator}\" tags={self.tags} desc=\"{self.desc[:30]}...\")'\n\n\nmodels: list[Model] = []  # global cache for civitai search results\n\n\ndef search_civitai(\n        query:str,\n        tag:str = '', # optional:tag name\n        types:str = '', # (Checkpoint, TextualInversion, Hypernetwork, AestheticGradient, LORA, Controlnet, Poses)\n        sort:str = '', # (Highest Rated, Most Downloaded, Newest)\n        period:str = '', # (AllTime, Year, Month, Week, Day)\n        nsfw:bool = None, # optional:bool\n        limit:int = 0,\n        base:str = '', # list\n        token:str = None,\n        exact:bool = True,\n):\n    global models # pylint: disable=global-statement\n    import requests\n    from urllib.parse import urlencode\n    install('beautifulsoup4')\n\n    if len(query) == 0:\n        log.error('CivitAI: empty query')\n        return []\n\n    t0 = time.time()\n    dct = { 'query': query }\n    if len(tag) > 0:\n        dct['tag'] = tag\n    if nsfw is not None:\n        dct['nsfw'] = 'true' if nsfw else 'false'\n    if limit > 0:\n        dct['limit'] = limit\n    if len(types) > 0:\n        dct['types'] = types\n    if len(sort) > 0:\n        dct['sort'] = sort\n    if len(period) > 0:\n        dct['period'] = period\n    if len(base) > 0:\n        dct['baseModels'] = base\n    encoded = urlencode(dct)\n\n    headers = {}\n    if token is None:\n        token = os.environ.get('CIVITAI_TOKEN', None)\n    if token is not None and len(token) > 0:\n        headers['Authorization'] = f'Bearer {token}'\n\n    url = 'https://civitai.com/api/v1/models'\n    if query.isnumeric():\n        uri = f'{url}/{query}'\n    else:\n        uri = f'{url}?{encoded}'\n\n    log.info(f'CivitAI request: uri=\"{uri}\" dct={dct} token={token is not None}')\n    result = requests.get(uri, headers=headers, timeout=60)\n\n    if result.status_code != 200:\n        log.error(f'CivitAI: code={result.status_code} reason={result.reason} uri={result.url}')\n        return []\n\n    all_models: list[Model] = []\n    exact_models: list[Model] = []\n    dct = result.json()\n    if 'items' not in dct:\n        items = [dct] # single model\n    else:\n        items = dct.get('items', [])\n    for item in items:\n        all_models.append(Model(item))\n\n    if exact:\n        for model in all_models:\n            model_names = [model.name.lower()]\n            version_names = [v.name.lower() for v in model.versions]\n            file_names = [f.name.lower() for v in model.versions for f in v.files]\n            if any([query.lower() in name for name in model_names + version_names + file_names]): # noqa: C419 # pylint: disable=use-a-generator\n                exact_models.append(model)\n\n    t1 = time.time()\n    log.info(f'CivitAI result: code={result.status_code} exact={len(exact_models)} total={len(models)} time={t1-t0:.2f}')\n    models = exact_models if len(exact_models) > 0 else all_models\n    return models\n\n\ndef create_model_cards(all_models: list[Model]) -> str:\n    details = \"\"\"\n        <div id=\"model-details\">\n        </div>\n    \"\"\"\n    cards = \"\"\"\n        <div id=\"model-cards\" class=\"extra-network-cards\">\n            {cards}\n        </div>\n    \"\"\"\n    card = \"\"\"\n        <div class=\"card\" data-id=\"{id}\" onclick=\"modelCardClick({id})\">\n            <div class=\"overlay\"><div class=\"name\">{name}</div></div>\n            <div class=\"version\">{type}</div>\n            <img class=\"preview\" src=\"{preview}\" alt=\"{name}\" loading=\"lazy\" />\n        </div>\n    \"\"\"\n    all_cards = ''\n    for model in all_models:\n        previews = []\n        for version in model.versions:\n            for image in version.images:\n                if image.url and len(image.url) > 0 and not image.url.lower().endswith('.mp4'):\n                    previews.append(image.url)\n        if len(previews) == 0:\n            previews = ['/sdapi/v1/network/thumb?filename=html/missing.png']\n        all_cards += card.format(id=model.id, name=model.name, type=model.type, preview=previews[0])\n    html = details + cards.format(cards=all_cards)\n    return html\n\n\ndef print_models(all_models: list[Model]):\n    for model in all_models:\n        log.info(f' {model}')\n        log.trace('Model', model.dct)\n        for version in model.versions:\n            log.info(f'  {version}')\n            log.trace('ModelVersion', version.dct)\n            for file in version.files:\n                log.info(f'   {file}')\n                log.trace('ModelFile', file.dct)\n            for image in version.images:\n                log.info(f'   {image}')\n                log.trace('ModelImage', image.dct)\n"
  },
  {
    "path": "modules/cmd_args.py",
    "content": "import os\nimport sys\nimport argparse\nfrom modules.paths import data_path, models_path\n\n\nparsed = None\nparser = argparse.ArgumentParser(description=\"SD.Next\", conflict_handler='resolve', epilog='For other options see UI Settings page', prog='', add_help=True, formatter_class=lambda prog: argparse.HelpFormatter(prog, max_help_position=55, indent_increment=2, width=200))\nparser._optionals = parser.add_argument_group('Other options') # pylint: disable=protected-access\n\n\ndef parse_args():\n    global parsed # pylint: disable=global-statement\n    if parsed is None:\n        parsed, _ = parser.parse_known_args()\n    return parsed\n\n\ndef main_args():\n    # main server args\n    group_config = parser.add_argument_group('Configuration')\n    group_config.add_argument(\"--config\", type=str, default=os.environ.get(\"SD_CONFIG\", os.path.join(data_path, 'config.json')), help=\"Use specific server configuration file, default: %(default)s\")\n    group_config.add_argument(\"--ui-config\", type=str, default=os.environ.get(\"SD_UICONFIG\", os.path.join(data_path, 'ui-config.json')), help=\"Use specific UI configuration file, default: %(default)s\")\n    group_config.add_argument(\"--freeze\", default=os.environ.get(\"SD_FREEZE\", False), action='store_true', help=\"Disable editing settings\")\n    group_config.add_argument(\"--medvram\", default=os.environ.get(\"SD_MEDVRAM\", False), action='store_true', help=\"Split model stages and keep only active part in VRAM, default: %(default)s\")\n    group_config.add_argument(\"--lowvram\", default=os.environ.get(\"SD_LOWVRAM\", False), action='store_true', help=\"Split model components and keep only active part in VRAM, default: %(default)s\")\n    group_config.add_argument(\"--disable\", default=os.environ.get(\"SD_DISABLE\", ''),  help=\"Disable specific UI tabs: %(default)s\")\n\n\ndef compatibility_args():\n    # removed args are added here as hidden in fixed format for compatbility reasons\n    group_compat = parser.add_argument_group('Compatibility options')\n    group_compat.add_argument('--backend', type=str, choices=['diffusers', 'original'], help=argparse.SUPPRESS)\n    group_compat.add_argument('--hypernetwork-dir', default=os.path.join(models_path, 'hypernetworks'), help=argparse.SUPPRESS)\n    group_compat.add_argument(\"--allow-code\", default=os.environ.get(\"SD_ALLOWCODE\", False), action='store_true', help=argparse.SUPPRESS)\n    group_compat.add_argument(\"--enable_insecure_extension_access\", default=os.environ.get(\"SD_INSECURE\", False), action='store_true', help=argparse.SUPPRESS)\n    group_compat.add_argument(\"--use-cpu\", nargs='+', default=[], type=str.lower, help=argparse.SUPPRESS)\n    group_compat.add_argument(\"-f\", action='store_true', help=argparse.SUPPRESS)  # allows running as root; implemented outside of webui\n    group_compat.add_argument('--vae', type=str, default=os.environ.get(\"SD_VAE\", None), help=argparse.SUPPRESS)\n    group_compat.add_argument(\"--ui-settings-file\", type=str, help=argparse.SUPPRESS, default=os.path.join(data_path, 'config.json'))\n    group_compat.add_argument(\"--ui-config-file\", type=str, help=argparse.SUPPRESS, default=os.path.join(data_path, 'ui-config.json'))\n    group_compat.add_argument(\"--hide-ui-dir-config\", action='store_true', help=argparse.SUPPRESS, default=False)\n    group_compat.add_argument(\"--disable-console-progressbars\", action='store_true', help=argparse.SUPPRESS, default=True)\n    group_compat.add_argument(\"--disable-safe-unpickle\", action='store_true', help=argparse.SUPPRESS, default=True)\n    group_compat.add_argument(\"--lowram\", action='store_true', help=argparse.SUPPRESS)\n    group_compat.add_argument(\"--disable-extension-access\", default=False, action='store_true', help=argparse.SUPPRESS)\n    group_compat.add_argument(\"--api\", action='store_true', help=argparse.SUPPRESS, default=True)\n    group_compat.add_argument(\"--api-auth\", type=str, help=argparse.SUPPRESS, default=None)\n    group_compat.add_argument('--api-only', default=False, help=argparse.SUPPRESS)\n    group_compat.add_argument(\"--disable-queue\", default=os.environ.get(\"SD_DISABLEQUEUE\", False), action='store_true', help=argparse.SUPPRESS)\n    group_compat.add_argument(\"--no-hashing\", default=os.environ.get(\"SD_NOHASHING\", False), action='store_true', help=argparse.SUPPRESS)\n    group_compat.add_argument(\"--no-metadata\", default=os.environ.get(\"SD_NOMETADATA\", False), action='store_true', help=argparse.SUPPRESS)\n\n\ndef settings_args(opts, args):\n    # removed args are added here as hidden in fixed format for compatbility reasons\n    group_compat = parser.add_argument_group('Compatibility options')\n    group_compat.add_argument(\"--allow-code\", default=os.environ.get(\"SD_ALLOWCODE\", False), action='store_true', help=argparse.SUPPRESS)\n    group_compat.add_argument(\"--use-cpu\", nargs='+', default=[], type=str.lower, help=argparse.SUPPRESS)\n    group_compat.add_argument(\"-f\", action='store_true', help=argparse.SUPPRESS)  # allows running as root; implemented outside of webui\n    group_compat.add_argument('--vae', type=str, default=os.environ.get(\"SD_VAE\", None), help=argparse.SUPPRESS)\n    group_compat.add_argument(\"--ui-settings-file\", type=str, help=argparse.SUPPRESS, default=os.path.join(data_path, 'config.json'))\n    group_compat.add_argument(\"--ui-config-file\", type=str, help=argparse.SUPPRESS, default=os.path.join(data_path, 'ui-config.json'))\n    group_compat.add_argument(\"--hide-ui-dir-config\", action='store_true', help=argparse.SUPPRESS, default=False)\n    group_compat.add_argument(\"--disable-console-progressbars\", action='store_true', help=argparse.SUPPRESS, default=True)\n    group_compat.add_argument(\"--disable-safe-unpickle\", action='store_true', help=argparse.SUPPRESS, default=True)\n    group_compat.add_argument(\"--lowram\", action='store_true', help=argparse.SUPPRESS)\n    group_compat.add_argument(\"--disable-extension-access\", default=False, action='store_true', help=argparse.SUPPRESS)\n    group_compat.add_argument(\"--allowed-paths\", nargs='+', default=[], type=str, required=False, help=\"add additional paths to paths allowed for web access\")\n    group_compat.add_argument(\"--api\", action='store_true', help=argparse.SUPPRESS, default=True)\n    group_compat.add_argument(\"--api-auth\", type=str, help=argparse.SUPPRESS, default=None)\n    # removed args that have been moved to opts are added here as hidden with default values as defined in opts\n    group_compat.add_argument(\"--ckpt-dir\", type=str, help=argparse.SUPPRESS, default=opts.ckpt_dir)\n    group_compat.add_argument(\"--vae-dir\", type=str, help=argparse.SUPPRESS, default=opts.vae_dir)\n    group_compat.add_argument(\"--embeddings-dir\", type=str, help=argparse.SUPPRESS, default=opts.embeddings_dir)\n    group_compat.add_argument(\"--embeddings-templates-dir\", type=str, help=argparse.SUPPRESS, default=opts.embeddings_templates_dir)\n    group_compat.add_argument(\"--codeformer-models-path\", type=str, help=argparse.SUPPRESS, default=opts.codeformer_models_path)\n    group_compat.add_argument(\"--gfpgan-models-path\", type=str, help=argparse.SUPPRESS, default=opts.gfpgan_models_path)\n    group_compat.add_argument(\"--esrgan-models-path\", type=str, help=argparse.SUPPRESS, default=opts.esrgan_models_path)\n    group_compat.add_argument(\"--bsrgan-models-path\", type=str, help=argparse.SUPPRESS, default=opts.bsrgan_models_path)\n    group_compat.add_argument(\"--realesrgan-models-path\", type=str, help=argparse.SUPPRESS, default=opts.realesrgan_models_path)\n    group_compat.add_argument(\"--scunet-models-path\", help=argparse.SUPPRESS, default=opts.scunet_models_path)\n    group_compat.add_argument(\"--swinir-models-path\", help=argparse.SUPPRESS, default=opts.swinir_models_path)\n    group_compat.add_argument(\"--ldsr-models-path\", help=argparse.SUPPRESS, default=opts.ldsr_models_path)\n    group_compat.add_argument(\"--clip-models-path\", type=str, help=argparse.SUPPRESS, default=opts.clip_models_path)\n    group_compat.add_argument(\"--opt-channelslast\", help=argparse.SUPPRESS, action='store_true', default=opts.opt_channelslast)\n    group_compat.add_argument(\"--xformers\", default=(opts.cross_attention_optimization == \"xFormers\"), action='store_true', help=argparse.SUPPRESS)\n    group_compat.add_argument(\"--disable-nan-check\", help=argparse.SUPPRESS, action='store_true', default=opts.disable_nan_check)\n    group_compat.add_argument(\"--rollback-vae\", help=argparse.SUPPRESS, default=opts.rollback_vae)\n    group_compat.add_argument(\"--no-half\", help=argparse.SUPPRESS, action='store_true', default=opts.no_half)\n    group_compat.add_argument(\"--no-half-vae\", help=argparse.SUPPRESS, action='store_true', default=opts.no_half_vae)\n    group_compat.add_argument(\"--precision\", help=argparse.SUPPRESS, default=opts.precision)\n    group_compat.add_argument(\"--sub-quad-q-chunk-size\", help=argparse.SUPPRESS, default=opts.sub_quad_q_chunk_size)\n    group_compat.add_argument(\"--sub-quad-kv-chunk-size\", help=argparse.SUPPRESS, default=opts.sub_quad_kv_chunk_size)\n    group_compat.add_argument(\"--sub-quad-chunk-threshold\", help=argparse.SUPPRESS, default=opts.sub_quad_chunk_threshold)\n    group_compat.add_argument(\"--lora-dir\", help=argparse.SUPPRESS, default=opts.lora_dir)\n    group_compat.add_argument(\"--embeddings-dir\", help=argparse.SUPPRESS, default=opts.embeddings_dir)\n    group_compat.add_argument(\"--enable-console-prompts\", help=argparse.SUPPRESS, action='store_true', default=False)\n    group_compat.add_argument(\"--safe\", help=argparse.SUPPRESS, action='store_true', default=False)\n    group_compat.add_argument(\"--use-xformers\", help=argparse.SUPPRESS, action='store_true', default=False)\n\n    # removed opts are added here with fixed values for compatibility reasons\n    opts.use_old_emphasis_implementation = False\n    opts.use_old_karras_scheduler_sigmas = False\n    opts.no_dpmpp_sde_batch_determinism = False\n    opts.lora_apply_to_outputs = False\n    opts.do_not_show_images = False\n    opts.add_model_hash_to_info = True\n    opts.add_model_name_to_info = True\n    opts.js_modal_lightbox = True\n    opts.js_modal_lightbox_initially_zoomed = True\n    opts.show_progress_in_title = False\n    opts.sd_vae_as_default = True\n    opts.enable_emphasis = True\n    opts.enable_batch_seeds = True\n    # opts.multiple_tqdm = False\n    opts.print_hypernet_extra = False\n    opts.dimensions_and_batch_together = True\n    opts.enable_pnginfo = True\n    opts.data['clip_skip'] = 1\n\n    opts.onchange(\"lora_dir\", lambda: setattr(args, \"lora_dir\", opts.lora_dir))\n\n    if \"USED_VSCODE_COMMAND_PICKARGS\" in os.environ:\n        import shlex\n        argv = shlex.split(\" \".join(sys.argv[1:])) if \"USED_VSCODE_COMMAND_PICKARGS\" in os.environ else sys.argv[1:]\n        args = parser.parse_args(argv)\n    else:\n        args = parser.parse_args()\n    return args\n\n\nmain_args()\ncompatibility_args()\n"
  },
  {
    "path": "modules/control/proc/__init__.py",
    "content": ""
  },
  {
    "path": "modules/control/proc/canny.py",
    "content": "import warnings\nimport cv2\nimport numpy as np\nfrom PIL import Image\nfrom modules.control.util import HWC3, resize_image\n\nclass CannyDetector:\n    def __call__(self, input_image=None, low_threshold=100, high_threshold=200, detect_resolution=512, image_resolution=512, output_type=None, **kwargs):\n        if \"img\" in kwargs:\n            warnings.warn(\"img is deprecated, please use `input_image=...` instead.\", DeprecationWarning)\n            input_image = kwargs.pop(\"img\")\n        if input_image is None:\n            raise ValueError(\"input_image must be defined.\")\n\n        if not isinstance(input_image, np.ndarray):\n            input_image = np.array(input_image, dtype=np.uint8)\n            output_type = output_type or \"pil\"\n        else:\n            output_type = output_type or \"np\"\n        input_image = HWC3(input_image)\n        input_image = resize_image(input_image, detect_resolution)\n        detected_map = cv2.Canny(input_image, low_threshold, high_threshold)\n        detected_map = HWC3(detected_map)\n        img = resize_image(input_image, image_resolution)\n        H, W, _C = img.shape\n        detected_map = cv2.resize(detected_map, (W, H), interpolation=cv2.INTER_LINEAR)\n        if output_type == \"pil\":\n            detected_map = Image.fromarray(detected_map)\n        return detected_map\n"
  },
  {
    "path": "modules/control/proc/depth_anything/__init__.py",
    "content": "import cv2\nimport torch\nimport torch.nn.functional as F\nimport numpy as np\nfrom PIL import Image\nfrom modules import devices, masking\nfrom modules.shared import opts\n\n\nclass DepthAnythingDetector:\n    \"\"\"https://github.com/LiheYoung/Depth-Anything\"\"\"\n    def __init__(self, model):\n        from torchvision.transforms import Compose\n        from modules.control.proc.depth_anything.util.transform import Resize, NormalizeImage, PrepareForNet\n        self.model = model\n        self.transform = Compose([\n            Resize(\n                width=518,\n                height=518,\n                resize_target=False,\n                keep_aspect_ratio=True,\n                ensure_multiple_of=14,\n                resize_method=\"lower_bound\",\n                image_interpolation_method=cv2.INTER_CUBIC,\n            ),\n            NormalizeImage(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225]),\n            PrepareForNet()])\n\n    @classmethod\n    def from_pretrained(cls, pretrained_model_or_path: str, cache_dir: str, local_files_only=False) -> str:\n        from modules.control.proc.depth_anything.dpt import DPT_DINOv2\n        import huggingface_hub as hf\n        model = (\n            DPT_DINOv2(\n                encoder=\"vitl\",\n                features=256,\n                out_channels=[256, 512, 1024, 1024],\n                localhub=False,\n            )\n            .to(devices.device)\n            .eval()\n        )\n        model_path = hf.hf_hub_download(repo_id=pretrained_model_or_path, filename=\"pytorch_model.bin\", cache_dir=cache_dir, local_files_only=local_files_only)\n        model_dict = torch.load(model_path)\n        model.load_state_dict(model_dict)\n        return cls(model)\n\n    def __call__(self, image, color_map: str = \"none\", output_type: str = 'pil'):\n        self.model.to(devices.device)\n        if isinstance(image, Image.Image):\n            image = np.array(image)\n        h, w = image.shape[:2]\n        image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB) / 255.0\n        image = self.transform({ \"image\": image })[\"image\"]\n        image = torch.from_numpy(image).unsqueeze(0).to(devices.device)\n        with devices.inference_context():\n            depth = self.model(image)\n        if opts.control_move_processor:\n            self.model.to('cpu')\n        depth = F.interpolate(depth[None], (h, w), mode=\"bilinear\", align_corners=False)[0, 0]\n        depth = (depth - depth.min()) / (depth.max() - depth.min()) * 255.0\n        depth = depth.cpu().numpy().astype(np.uint8)\n        if color_map != 'none':\n            depth = cv2.applyColorMap(depth, masking.COLORMAP.index(color_map))[:, :, ::-1]\n        if output_type == \"pil\":\n            depth = Image.fromarray(depth)\n        return depth\n\n    # def unload_model(self):\n    #    self.model.to(\"cpu\")\n"
  },
  {
    "path": "modules/control/proc/depth_anything/blocks.py",
    "content": "import torch.nn as nn\n\n\ndef _make_scratch(in_shape, out_shape, groups=1, expand=False):\n    scratch = nn.Module()\n\n    out_shape1 = out_shape\n    out_shape2 = out_shape\n    out_shape3 = out_shape\n    if len(in_shape) >= 4:\n        out_shape4 = out_shape\n\n    if expand:\n        out_shape1 = out_shape\n        out_shape2 = out_shape*2\n        out_shape3 = out_shape*4\n        if len(in_shape) >= 4:\n            out_shape4 = out_shape*8\n\n    scratch.layer1_rn = nn.Conv2d(\n        in_shape[0], out_shape1, kernel_size=3, stride=1, padding=1, bias=False, groups=groups\n    )\n    scratch.layer2_rn = nn.Conv2d(\n        in_shape[1], out_shape2, kernel_size=3, stride=1, padding=1, bias=False, groups=groups\n    )\n    scratch.layer3_rn = nn.Conv2d(\n        in_shape[2], out_shape3, kernel_size=3, stride=1, padding=1, bias=False, groups=groups\n    )\n    if len(in_shape) >= 4:\n        scratch.layer4_rn = nn.Conv2d(\n            in_shape[3], out_shape4, kernel_size=3, stride=1, padding=1, bias=False, groups=groups\n        )\n\n    return scratch\n\n\nclass ResidualConvUnit(nn.Module):\n    \"\"\"Residual convolution module.\n    \"\"\"\n\n    def __init__(self, features, activation, bn):\n        \"\"\"Init.\n\n        Args:\n            features (int): number of features\n        \"\"\"\n        super().__init__()\n\n        self.bn = bn\n\n        self.groups=1\n\n        self.conv1 = nn.Conv2d(\n            features, features, kernel_size=3, stride=1, padding=1, bias=True, groups=self.groups\n        )\n\n        self.conv2 = nn.Conv2d(\n            features, features, kernel_size=3, stride=1, padding=1, bias=True, groups=self.groups\n        )\n\n        if self.bn is True:\n            self.bn1 = nn.BatchNorm2d(features)\n            self.bn2 = nn.BatchNorm2d(features)\n\n        self.activation = activation\n\n        self.skip_add = nn.quantized.FloatFunctional()\n\n    def forward(self, x):\n        \"\"\"Forward pass.\n\n        Args:\n            x (tensor): input\n\n        Returns:\n            tensor: output\n        \"\"\"\n\n        out = self.activation(x)\n        out = self.conv1(out)\n        if self.bn is True:\n            out = self.bn1(out)\n\n        out = self.activation(out)\n        out = self.conv2(out)\n        if self.bn is True:\n            out = self.bn2(out)\n\n        if self.groups > 1:\n            out = self.conv_merge(out)\n\n        return self.skip_add.add(out, x)\n\n\nclass FeatureFusionBlock(nn.Module):\n    \"\"\"Feature fusion block.\n    \"\"\"\n\n    def __init__(self, features, activation, deconv=False, bn=False, expand=False, align_corners=True, size=None):\n        \"\"\"Init.\n\n        Args:\n            features (int): number of features\n        \"\"\"\n        super(FeatureFusionBlock, self).__init__()\n\n        self.deconv = deconv\n        self.align_corners = align_corners\n\n        self.groups=1\n\n        self.expand = expand\n        out_features = features\n        if self.expand is True:\n            out_features = features//2\n\n        self.out_conv = nn.Conv2d(features, out_features, kernel_size=1, stride=1, padding=0, bias=True, groups=1)\n\n        self.resConfUnit1 = ResidualConvUnit(features, activation, bn)\n        self.resConfUnit2 = ResidualConvUnit(features, activation, bn)\n\n        self.skip_add = nn.quantized.FloatFunctional()\n\n        self.size=size\n\n    def forward(self, *xs, size=None):\n        \"\"\"Forward pass.\n\n        Returns:\n            tensor: output\n        \"\"\"\n        output = xs[0]\n\n        if len(xs) == 2:\n            res = self.resConfUnit1(xs[1])\n            output = self.skip_add.add(output, res)\n\n        output = self.resConfUnit2(output)\n\n        if (size is None) and (self.size is None):\n            modifier = {\"scale_factor\": 2}\n        elif size is None:\n            modifier = {\"size\": self.size}\n        else:\n            modifier = {\"size\": size}\n\n        output = nn.functional.interpolate(\n            output, **modifier, mode=\"bilinear\", align_corners=self.align_corners\n        )\n\n        output = self.out_conv(output)\n\n        return output\n"
  },
  {
    "path": "modules/control/proc/depth_anything/dpt.py",
    "content": "import torch\nimport torch.nn as nn\nimport torch.nn.functional as F\nfrom huggingface_hub import PyTorchModelHubMixin\nfrom modules.control.proc.depth_anything.blocks import FeatureFusionBlock, _make_scratch\n\n\ndef _make_fusion_block(features, use_bn, size = None):\n    return FeatureFusionBlock(\n        features,\n        nn.ReLU(False),\n        deconv=False,\n        bn=use_bn,\n        expand=False,\n        align_corners=True,\n        size=size,\n    )\n\n\nclass DPTHead(nn.Module):\n    def __init__(self, nclass, in_channels, features=256, use_bn=False, out_channels=None, use_clstoken=False):\n        if out_channels is None:\n            out_channels = [256, 512, 1024, 1024]\n        super(DPTHead, self).__init__()\n\n        self.nclass = nclass\n        self.use_clstoken = use_clstoken\n\n        self.projects = nn.ModuleList([\n            nn.Conv2d(\n                in_channels=in_channels,\n                out_channels=out_channel,\n                kernel_size=1,\n                stride=1,\n                padding=0,\n            ) for out_channel in out_channels\n        ])\n\n        self.resize_layers = nn.ModuleList([\n            nn.ConvTranspose2d(\n                in_channels=out_channels[0],\n                out_channels=out_channels[0],\n                kernel_size=4,\n                stride=4,\n                padding=0),\n            nn.ConvTranspose2d(\n                in_channels=out_channels[1],\n                out_channels=out_channels[1],\n                kernel_size=2,\n                stride=2,\n                padding=0),\n            nn.Identity(),\n            nn.Conv2d(\n                in_channels=out_channels[3],\n                out_channels=out_channels[3],\n                kernel_size=3,\n                stride=2,\n                padding=1)\n        ])\n\n        if use_clstoken:\n            self.readout_projects = nn.ModuleList()\n            for _ in range(len(self.projects)):\n                self.readout_projects.append(\n                    nn.Sequential(\n                        nn.Linear(2 * in_channels, in_channels),\n                        nn.GELU()))\n\n        self.scratch = _make_scratch(\n            out_channels,\n            features,\n            groups=1,\n            expand=False,\n        )\n\n        self.scratch.stem_transpose = None\n\n        self.scratch.refinenet1 = _make_fusion_block(features, use_bn)\n        self.scratch.refinenet2 = _make_fusion_block(features, use_bn)\n        self.scratch.refinenet3 = _make_fusion_block(features, use_bn)\n        self.scratch.refinenet4 = _make_fusion_block(features, use_bn)\n\n        head_features_1 = features\n        head_features_2 = 32\n\n        if nclass > 1:\n            self.scratch.output_conv = nn.Sequential(\n                nn.Conv2d(head_features_1, head_features_1, kernel_size=3, stride=1, padding=1),\n                nn.ReLU(True),\n                nn.Conv2d(head_features_1, nclass, kernel_size=1, stride=1, padding=0),\n            )\n        else:\n            self.scratch.output_conv1 = nn.Conv2d(head_features_1, head_features_1 // 2, kernel_size=3, stride=1, padding=1)\n\n            self.scratch.output_conv2 = nn.Sequential(\n                nn.Conv2d(head_features_1 // 2, head_features_2, kernel_size=3, stride=1, padding=1),\n                nn.ReLU(True),\n                nn.Conv2d(head_features_2, 1, kernel_size=1, stride=1, padding=0),\n                nn.ReLU(True),\n                nn.Identity(),\n            )\n\n    def forward(self, out_features, patch_h, patch_w):\n        out = []\n        for i, x in enumerate(out_features):\n            if self.use_clstoken:\n                x, cls_token = x[0], x[1]\n                readout = cls_token.unsqueeze(1).expand_as(x)\n                x = self.readout_projects[i](torch.cat((x, readout), -1))\n            else:\n                x = x[0]\n\n            x = x.permute(0, 2, 1).reshape((x.shape[0], x.shape[-1], patch_h, patch_w))\n\n            x = self.projects[i](x)\n            x = self.resize_layers[i](x)\n\n            out.append(x)\n\n        layer_1, layer_2, layer_3, layer_4 = out # pylint: disable=unbalanced-tuple-unpacking\n\n        layer_1_rn = self.scratch.layer1_rn(layer_1)\n        layer_2_rn = self.scratch.layer2_rn(layer_2)\n        layer_3_rn = self.scratch.layer3_rn(layer_3)\n        layer_4_rn = self.scratch.layer4_rn(layer_4)\n\n        path_4 = self.scratch.refinenet4(layer_4_rn, size=layer_3_rn.shape[2:])\n        path_3 = self.scratch.refinenet3(path_4, layer_3_rn, size=layer_2_rn.shape[2:])\n        path_2 = self.scratch.refinenet2(path_3, layer_2_rn, size=layer_1_rn.shape[2:])\n        path_1 = self.scratch.refinenet1(path_2, layer_1_rn)\n\n        out = self.scratch.output_conv1(path_1)\n        out = F.interpolate(out, (int(patch_h * 14), int(patch_w * 14)), mode=\"bilinear\", align_corners=True)\n        out = self.scratch.output_conv2(out)\n\n        return out\n\n\nclass DPT_DINOv2(nn.Module):\n    def __init__(self, encoder='vitl', features=256, out_channels=None, use_bn=False, use_clstoken=False, localhub=True):\n        if out_channels is None:\n            out_channels = [256, 512, 1024, 1024]\n        super(DPT_DINOv2, self).__init__()\n\n        assert encoder in ['vits', 'vitb', 'vitl']\n\n        # in case the Internet connection is not stable, please load the DINOv2 locally\n        if localhub:\n            self.pretrained = torch.hub.load('torchhub/facebookresearch_dinov2_main', 'dinov2_{:}14'.format(encoder), source='local', pretrained=False) # pylint: disable=consider-using-f-string\n        else:\n            self.pretrained = torch.hub.load('facebookresearch/dinov2', 'dinov2_{:}14'.format(encoder)) # pylint: disable=consider-using-f-string\n\n        dim = self.pretrained.blocks[0].attn.qkv.in_features\n\n        self.depth_head = DPTHead(1, dim, features, use_bn, out_channels=out_channels, use_clstoken=use_clstoken)\n\n    def forward(self, x):\n        h, w = x.shape[-2:]\n\n        features = self.pretrained.get_intermediate_layers(x, 4, return_class_token=True)\n\n        patch_h, patch_w = h // 14, w // 14\n\n        depth = self.depth_head(features, patch_h, patch_w)\n        depth = F.interpolate(depth, size=(h, w), mode=\"bilinear\", align_corners=True)\n        depth = F.relu(depth)\n\n        return depth.squeeze(1)\n\n\nclass DepthAnything(DPT_DINOv2, PyTorchModelHubMixin):\n    def __init__(self, config):\n        super().__init__(**config)\n"
  },
  {
    "path": "modules/control/proc/depth_anything/util/transform.py",
    "content": "import random\nfrom PIL import Image, ImageOps, ImageFilter\nimport torch\nfrom torchvision import transforms\nimport torch.nn.functional as F\n\nimport numpy as np\nimport cv2\nimport math\n\n\ndef apply_min_size(sample, size, image_interpolation_method=cv2.INTER_AREA):\n    \"\"\"Rezise the sample to ensure the given size. Keeps aspect ratio.\n\n    Args:\n        sample (dict): sample\n        size (tuple): image size\n\n    Returns:\n        tuple: new size\n    \"\"\"\n    shape = list(sample[\"disparity\"].shape)\n\n    if shape[0] >= size[0] and shape[1] >= size[1]:\n        return sample\n\n    scale = [0, 0]\n    scale[0] = size[0] / shape[0]\n    scale[1] = size[1] / shape[1]\n\n    scale = max(scale)\n\n    shape[0] = math.ceil(scale * shape[0])\n    shape[1] = math.ceil(scale * shape[1])\n\n    # resize\n    sample[\"image\"] = cv2.resize(\n        sample[\"image\"], tuple(shape[::-1]), interpolation=image_interpolation_method\n    )\n\n    sample[\"disparity\"] = cv2.resize(\n        sample[\"disparity\"], tuple(shape[::-1]), interpolation=cv2.INTER_NEAREST\n    )\n    sample[\"mask\"] = cv2.resize(\n        sample[\"mask\"].astype(np.float32),\n        tuple(shape[::-1]),\n        interpolation=cv2.INTER_NEAREST,\n    )\n    sample[\"mask\"] = sample[\"mask\"].astype(bool)\n\n    return tuple(shape)\n\n\nclass Resize(object):\n    \"\"\"Resize sample to given size (width, height).\n    \"\"\"\n\n    def __init__(\n        self,\n        width,\n        height,\n        resize_target=True,\n        keep_aspect_ratio=False,\n        ensure_multiple_of=1,\n        resize_method=\"lower_bound\",\n        image_interpolation_method=cv2.INTER_AREA,\n    ):\n        \"\"\"Init.\n\n        Args:\n            width (int): desired output width\n            height (int): desired output height\n            resize_target (bool, optional):\n                True: Resize the full sample (image, mask, target).\n                False: Resize image only.\n                Defaults to True.\n            keep_aspect_ratio (bool, optional):\n                True: Keep the aspect ratio of the input sample.\n                Output sample might not have the given width and height, and\n                resize behaviour depends on the parameter 'resize_method'.\n                Defaults to False.\n            ensure_multiple_of (int, optional):\n                Output width and height is constrained to be multiple of this parameter.\n                Defaults to 1.\n            resize_method (str, optional):\n                \"lower_bound\": Output will be at least as large as the given size.\n                \"upper_bound\": Output will be at max as large as the given size. (Output size might be smaller than given size.)\n                \"minimal\": Scale as least as possible.  (Output size might be smaller than given size.)\n                Defaults to \"lower_bound\".\n        \"\"\"\n        self.__width = width\n        self.__height = height\n\n        self.__resize_target = resize_target\n        self.__keep_aspect_ratio = keep_aspect_ratio\n        self.__multiple_of = ensure_multiple_of\n        self.__resize_method = resize_method\n        self.__image_interpolation_method = image_interpolation_method\n\n    def constrain_to_multiple_of(self, x, min_val=0, max_val=None):\n        y = (np.round(x / self.__multiple_of) * self.__multiple_of).astype(int)\n\n        if max_val is not None and y > max_val:\n            y = (np.floor(x / self.__multiple_of) * self.__multiple_of).astype(int)\n\n        if y < min_val:\n            y = (np.ceil(x / self.__multiple_of) * self.__multiple_of).astype(int)\n\n        return y\n\n    def get_size(self, width, height):\n        # determine new height and width\n        scale_height = self.__height / height\n        scale_width = self.__width / width\n\n        if self.__keep_aspect_ratio:\n            if self.__resize_method == \"lower_bound\":\n                # scale such that output size is lower bound\n                if scale_width > scale_height:\n                    # fit width\n                    scale_height = scale_width\n                else:\n                    # fit height\n                    scale_width = scale_height\n            elif self.__resize_method == \"upper_bound\":\n                # scale such that output size is upper bound\n                if scale_width < scale_height:\n                    # fit width\n                    scale_height = scale_width\n                else:\n                    # fit height\n                    scale_width = scale_height\n            elif self.__resize_method == \"minimal\":\n                # scale as least as possbile\n                if abs(1 - scale_width) < abs(1 - scale_height):\n                    # fit width\n                    scale_height = scale_width\n                else:\n                    # fit height\n                    scale_width = scale_height\n            else:\n                raise ValueError(\n                    f\"resize_method {self.__resize_method} not implemented\"\n                )\n\n        if self.__resize_method == \"lower_bound\":\n            new_height = self.constrain_to_multiple_of(\n                scale_height * height, min_val=self.__height\n            )\n            new_width = self.constrain_to_multiple_of(\n                scale_width * width, min_val=self.__width\n            )\n        elif self.__resize_method == \"upper_bound\":\n            new_height = self.constrain_to_multiple_of(\n                scale_height * height, max_val=self.__height\n            )\n            new_width = self.constrain_to_multiple_of(\n                scale_width * width, max_val=self.__width\n            )\n        elif self.__resize_method == \"minimal\":\n            new_height = self.constrain_to_multiple_of(scale_height * height)\n            new_width = self.constrain_to_multiple_of(scale_width * width)\n        else:\n            raise ValueError(f\"resize_method {self.__resize_method} not implemented\")\n\n        return (new_width, new_height)\n\n    def __call__(self, sample):\n        width, height = self.get_size(\n            sample[\"image\"].shape[1], sample[\"image\"].shape[0]\n        )\n\n        # resize sample\n        sample[\"image\"] = cv2.resize(\n            sample[\"image\"],\n            (width, height),\n            interpolation=self.__image_interpolation_method,\n        )\n\n        if self.__resize_target:\n            if \"disparity\" in sample:\n                sample[\"disparity\"] = cv2.resize(\n                    sample[\"disparity\"],\n                    (width, height),\n                    interpolation=cv2.INTER_NEAREST,\n                )\n\n            if \"depth\" in sample:\n                sample[\"depth\"] = cv2.resize(\n                    sample[\"depth\"], (width, height), interpolation=cv2.INTER_NEAREST\n                )\n\n            if \"semseg_mask\" in sample:\n                # sample[\"semseg_mask\"] = cv2.resize(\n                #     sample[\"semseg_mask\"], (width, height), interpolation=cv2.INTER_NEAREST\n                # )\n                sample[\"semseg_mask\"] = F.interpolate(torch.from_numpy(sample[\"semseg_mask\"]).float()[None, None, ...], (height, width), mode='nearest').numpy()[0, 0]\n\n            if \"mask\" in sample:\n                sample[\"mask\"] = cv2.resize(\n                    sample[\"mask\"].astype(np.float32),\n                    (width, height),\n                    interpolation=cv2.INTER_NEAREST,\n                )\n                # sample[\"mask\"] = sample[\"mask\"].astype(bool)\n\n        # print(sample['image'].shape, sample['depth'].shape)\n        return sample\n\n\nclass NormalizeImage(object):\n    \"\"\"Normlize image by given mean and std.\n    \"\"\"\n\n    def __init__(self, mean, std):\n        self.__mean = mean\n        self.__std = std\n\n    def __call__(self, sample):\n        sample[\"image\"] = (sample[\"image\"] - self.__mean) / self.__std\n\n        return sample\n\n\nclass PrepareForNet(object):\n    \"\"\"Prepare sample for usage as network input.\n    \"\"\"\n\n    def __init__(self):\n        pass\n\n    def __call__(self, sample):\n        image = np.transpose(sample[\"image\"], (2, 0, 1))\n        sample[\"image\"] = np.ascontiguousarray(image).astype(np.float32)\n\n        if \"mask\" in sample:\n            sample[\"mask\"] = sample[\"mask\"].astype(np.float32)\n            sample[\"mask\"] = np.ascontiguousarray(sample[\"mask\"])\n\n        if \"depth\" in sample:\n            depth = sample[\"depth\"].astype(np.float32)\n            sample[\"depth\"] = np.ascontiguousarray(depth)\n\n        if \"semseg_mask\" in sample:\n            sample[\"semseg_mask\"] = sample[\"semseg_mask\"].astype(np.float32)\n            sample[\"semseg_mask\"] = np.ascontiguousarray(sample[\"semseg_mask\"])\n\n        return sample\n"
  },
  {
    "path": "modules/control/proc/depth_pro/__init__.py",
    "content": "import cv2\nimport torch\nimport torch.nn.functional as F\nimport numpy as np\nfrom PIL import Image\n\nfrom modules import devices, masking\nfrom modules.shared import opts\n\n\nclass DepthProDetector:\n    \"\"\"Apple DepthPro detector (aligned with Depth Anything style).\"\"\"\n\n    def __init__(self, model, processor):\n        self.model = model\n        self.processor = processor\n\n    @classmethod\n    def from_pretrained(cls, pretrained_model_or_path: str = \"apple/DepthPro-hf\", cache_dir: str = None, local_files_only = False) -> \"DepthProDetector\":\n        from transformers import AutoImageProcessor, DepthProForDepthEstimation\n\n        processor = AutoImageProcessor.from_pretrained(pretrained_model_or_path, cache_dir=cache_dir, local_files_only=local_files_only)\n        model = DepthProForDepthEstimation.from_pretrained(\n            pretrained_model_or_path,\n            cache_dir=cache_dir,\n            local_files_only=local_files_only,\n        ).to(devices.device).eval()\n        return cls(model, processor)\n\n    def __call__(self, image, color_map: str = \"none\", output_type: str = \"pil\"):\n        self.model.to(devices.device)\n        if isinstance(image, Image.Image):\n            image = np.array(image)\n        h, w = image.shape[:2]\n        image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)\n        pil_image = Image.fromarray(image_rgb)\n\n        inputs = self.processor(images=pil_image, return_tensors=\"pt\")\n        inputs = {k: v.to(devices.device) if isinstance(v, torch.Tensor) else v for k, v in inputs.items()}\n\n        with devices.inference_context():\n            outputs = self.model(**inputs)\n        results = self.processor.post_process_depth_estimation(outputs, target_sizes=[(h, w)])\n        depth_tensor = results[0][\"predicted_depth\"].to(devices.device, dtype=torch.float32)\n\n        if opts.control_move_processor:\n            self.model.to(\"cpu\")\n\n        depth_tensor = F.interpolate(depth_tensor[None, None], size=(h, w), mode=\"bilinear\", align_corners=False)[0, 0]\n        depth_tensor = 1.0 / torch.clamp(depth_tensor, min=1e-6)\n        depth_tensor -= depth_tensor.min()\n        depth_max = depth_tensor.max()\n        if depth_max > 0:\n            depth_tensor /= depth_max\n        depth = (depth_tensor * 255.0).clamp(0, 255).to(torch.uint8).cpu().numpy()\n\n        if color_map != \"none\":\n            colormap_key = color_map if color_map in masking.COLORMAP else \"inferno\"\n            depth = cv2.applyColorMap(depth, masking.COLORMAP.index(colormap_key))[:, :, ::-1]\n        if output_type == \"pil\":\n            mode = \"RGB\" if depth.ndim == 3 else \"L\"\n            depth = Image.fromarray(depth, mode=mode)\n        return depth\n"
  },
  {
    "path": "modules/control/proc/dpt.py",
    "content": "from PIL import Image\nimport numpy as np\nimport torch\nfrom transformers import AutoImageProcessor, DPTForDepthEstimation\nfrom modules import devices\nfrom modules.shared import opts\n\n\nimage_processor: AutoImageProcessor = None\n\n\nclass DPTDetector:\n    def __init__(self, model=None, processor=None, model_path=None):\n        self.model = model\n        self.processor = processor\n        self.model_path = model_path or \"Intel/dpt-large\"\n\n    def __call__(self, input_image=None, model_path=None):\n        from modules.control.processors import cache_dir\n        if model_path is not None and model_path != self.model_path:\n            self.model_path = model_path\n            self.processor = None\n            self.model = None\n        if self.processor is None:\n            self.processor = AutoImageProcessor.from_pretrained(self.model_path, cache_dir=cache_dir)\n        if self.model is None:\n            self.model = DPTForDepthEstimation.from_pretrained(self.model_path, cache_dir=cache_dir)\n\n        self.model.to(devices.device)\n        with devices.inference_context():\n            inputs = self.processor(images=input_image, return_tensors=\"pt\")\n            inputs.to(devices.device)\n            outputs = self.model(**inputs)\n            predicted_depth = outputs.predicted_depth\n            prediction = torch.nn.functional.interpolate(\n                predicted_depth.unsqueeze(1),\n                size=input_image.size[::-1],\n                mode=\"bicubic\",\n                align_corners=False,\n            )\n            output = prediction.squeeze().cpu().numpy()\n            formatted = (output * 255 / np.max(output)).astype(\"uint8\")\n        if opts.control_move_processor:\n            self.model.to('cpu')\n        depth = Image.fromarray(formatted)\n        depth = depth.convert('RGB')\n        return depth\n"
  },
  {
    "path": "modules/control/proc/dwpose/__init__.py",
    "content": "# Openpose\n# Original from CMU https://github.com/CMU-Perceptual-Computing-Lab/openpose\n# 2nd Edited by https://github.com/Hzzone/pytorch-openpose\n# 3rd Edited by ControlNet\n# 4th Edited by ControlNet (added face and correct hands)\n\nfrom typing import Type, Optional, Union, List\nimport os\nos.environ[\"KMP_DUPLICATE_LIB_OK\"]=\"TRUE\"\nimport cv2\nimport numpy as np\nfrom PIL import Image\nfrom installer import installed, pip, log\nfrom modules.control.util import HWC3, resize_image\nfrom .draw import draw_bodypose, draw_handpose, draw_facepose\nchecked_ok = False\nbusy = False\n\n\ndef _register_module(self, module: Type, module_name: Optional[Union[str, List[str]]] = None, force: bool = False) -> None:\n    if not callable(module):\n        raise TypeError(f'module must be Callable, but got {type(module)}')\n    if module_name is None:\n        module_name = module.__name__\n    if isinstance(module_name, str):\n        module_name = [module_name]\n    for name in module_name:\n        if not force and name in self._module_dict: # pylint: disable=protected-access\n            pass # patch for 'Adafactor is already registered in optimizer at torch.optim'\n        self._module_dict[name] = module # pylint: disable=protected-access\n\n\ndef check_dependencies():\n    global checked_ok, busy # pylint: disable=global-statement\n    busy = True\n    debug = log.trace if os.environ.get('SD_DWPOSE_DEBUG', None) is not None else lambda *args, **kwargs: None\n    # pip install --upgrade --no-deps --force-reinstall termcolor xtcocotools terminaltables pycocotools munkres shapely openmim==0.3.9 mmengine==0.10.5 mmcv==2.1.0 mmpose==1.3.2 mmdet==3.3.0\n    packages = [\n        'termcolor',\n        'xtcocotools',\n        'terminaltables',\n        'pycocotools',\n        'munkres',\n        'shapely',\n        'openmim==0.3.9',\n        'mmengine==0.10.5',\n        'mmcv==2.1.0',\n        'mmpose==1.3.2',\n        'mmdet==3.3.0',\n    ]\n    status = [installed(p, reload=False, quiet=True) for p in packages]\n    debug(f'DWPose required={packages} status={status}')\n    if not all(status):\n        log.info(f'Installing dependencies: for=dwpose packages={packages}')\n        cmd = 'install --upgrade --no-deps --force-reinstall '\n        pkgs = ' '.join(packages)\n        pip(cmd + pkgs, ignore=False, quiet=True, uv=False)\n    try:\n        import pkg_resources\n        import imp # pylint: disable=deprecated-module\n        imp.reload(pkg_resources)\n        import mmcv # pylint: disable=unused-import\n        import mmengine # pylint: disable=unused-import\n        from mmengine.registry import Registry\n        Registry._register_module = _register_module # pylint: disable=protected-access\n        import mmpose # pylint: disable=unused-import\n        import mmdet # pylint: disable=unused-import\n        debug('DWPose import ok')\n        checked_ok = True\n    except Exception as e:\n        log.error(f'DWPose: {e}')\n        # from modules import errors\n        # errors.display(e, 'DWPose')\n    busy = False\n    return checked_ok\n\n\ndef draw_pose(pose, H, W):\n    bodies = pose['bodies']\n    faces = pose['faces']\n    hands = pose['hands']\n    candidate = bodies['candidate']\n    subset = bodies['subset']\n\n    canvas = np.zeros(shape=(H, W, 3), dtype=np.uint8)\n    canvas = draw_bodypose(canvas, candidate, subset)\n    canvas = draw_handpose(canvas, hands)\n    canvas = draw_facepose(canvas, faces)\n    return canvas\n\n\nclass DWposeDetector:\n    def __init__(self, det_config=None, det_ckpt=None, pose_config=None, pose_ckpt=None, device=\"cpu\"):\n        self.pose_estimation = None\n        if not checked_ok:\n            if not check_dependencies():\n                return\n        Wholebody = None\n        try:\n            from .wholebody import Wholebody\n        except Exception as e:\n            log.error(f'DWPose: {e}')\n        if Wholebody is not None:\n            self.pose_estimation = Wholebody(det_config, det_ckpt, pose_config, pose_ckpt, device)\n\n    def to(self, device):\n        self.pose_estimation.to(device)\n        return self\n\n    def __call__(self, input_image, detect_resolution=512, image_resolution=512, output_type=\"pil\", min_confidence=0.3, **kwargs):\n        if self.pose_estimation is None:\n            log.error(\"DWPose: not loaded\")\n            return None\n        input_image = cv2.cvtColor(np.array(input_image, dtype=np.uint8), cv2.COLOR_RGB2BGR)\n\n        input_image = HWC3(input_image)\n        input_image = resize_image(input_image, detect_resolution)\n        H, W, _C = input_image.shape\n\n        candidate, subset = self.pose_estimation(input_image)\n        if candidate is None:\n            return Image.fromarray(input_image)\n        nums, _keys, locs = candidate.shape\n        candidate[..., 0] /= float(W)\n        candidate[..., 1] /= float(H)\n        body = candidate[:,:18].copy()\n        body = body.reshape(nums*18, locs)\n        score = subset[:,:18]\n\n        for i in range(len(score)):\n            for j in range(len(score[i])):\n                if score[i][j] > min_confidence:\n                    score[i][j] = int(18*i+j)\n                else:\n                    score[i][j] = -1\n        un_visible = subset < min_confidence\n        candidate[un_visible] = -1\n        _foot = candidate[:,18:24]\n        faces = candidate[:,24:92]\n        hands = candidate[:,92:113]\n        hands = np.vstack([hands, candidate[:,113:]])\n        bodies = dict(candidate=body, subset=score)\n        pose = dict(bodies=bodies, hands=hands, faces=faces)\n        detected_map = draw_pose(pose, H, W)\n        detected_map = HWC3(detected_map)\n        img = resize_image(input_image, image_resolution)\n        H, W, _C = img.shape\n        detected_map = cv2.resize(detected_map, (W, H), interpolation=cv2.INTER_LINEAR)\n        if output_type == \"pil\":\n            detected_map = Image.fromarray(detected_map)\n        return detected_map\n"
  },
  {
    "path": "modules/control/proc/dwpose/config/dwpose-l_384x288.py",
    "content": "# runtime\nmax_epochs = 270\nstage2_num_epochs = 30\nbase_lr = 4e-3\n\ntrain_cfg = dict(max_epochs=max_epochs, val_interval=10)\nrandomness = dict(seed=21)\n\n# optimizer\noptim_wrapper = dict(\n    type='OptimWrapper',\n    optimizer=dict(type='AdamW', lr=base_lr, weight_decay=0.05),\n    paramwise_cfg=dict(\n        norm_decay_mult=0, bias_decay_mult=0, bypass_duplicate=True))\n\n# learning rate\nparam_scheduler = [\n    dict(\n        type='LinearLR',\n        start_factor=1.0e-5,\n        by_epoch=False,\n        begin=0,\n        end=1000),\n    dict(\n        # use cosine lr from 150 to 300 epoch\n        type='CosineAnnealingLR',\n        eta_min=base_lr * 0.05,\n        begin=max_epochs // 2,\n        end=max_epochs,\n        T_max=max_epochs // 2,\n        by_epoch=True,\n        convert_to_iter_based=True),\n]\n\n# automatically scaling LR based on the actual training batch size\nauto_scale_lr = dict(base_batch_size=512)\n\n# codec settings\ncodec = dict(\n    type='SimCCLabel',\n    input_size=(288, 384),\n    sigma=(6., 6.93),\n    simcc_split_ratio=2.0,\n    normalize=False,\n    use_dark=False)\n\n# model settings\nmodel = dict(\n    type='TopdownPoseEstimator',\n    data_preprocessor=dict(\n        type='PoseDataPreprocessor',\n        mean=[123.675, 116.28, 103.53],\n        std=[58.395, 57.12, 57.375],\n        bgr_to_rgb=True),\n    backbone=dict(\n        _scope_='mmdet',\n        type='CSPNeXt',\n        arch='P5',\n        expand_ratio=0.5,\n        deepen_factor=1.,\n        widen_factor=1.,\n        out_indices=(4, ),\n        channel_attention=True,\n        norm_cfg=dict(type='SyncBN'),\n        act_cfg=dict(type='SiLU'),\n        init_cfg=dict(\n            type='Pretrained',\n            prefix='backbone.',\n            checkpoint='https://download.openmmlab.com/mmpose/v1/projects/'\n            'rtmpose/cspnext-l_udp-aic-coco_210e-256x192-273b7631_20230130.pth'\n        )),\n    head=dict(\n        type='RTMCCHead',\n        in_channels=1024,\n        out_channels=133,\n        input_size=codec['input_size'],\n        in_featuremap_size=(9, 12),\n        simcc_split_ratio=codec['simcc_split_ratio'],\n        final_layer_kernel_size=7,\n        gau_cfg=dict(\n            hidden_dims=256,\n            s=128,\n            expansion_factor=2,\n            dropout_rate=0.,\n            drop_path=0.,\n            act_fn='SiLU',\n            use_rel_bias=False,\n            pos_enc=False),\n        loss=dict(\n            type='KLDiscretLoss',\n            use_target_weight=True,\n            beta=10.,\n            label_softmax=True),\n        decoder=codec),\n    test_cfg=dict(flip_test=True, ))\n\n# base dataset settings\ndataset_type = 'CocoWholeBodyDataset'\ndata_mode = 'topdown'\ndata_root = '/data/'\n\nbackend_args = dict(backend='local')\n# backend_args = dict(\n#     backend='petrel',\n#     path_mapping=dict({\n#         f'{data_root}': 's3://openmmlab/datasets/detection/coco/',\n#         f'{data_root}': 's3://openmmlab/datasets/detection/coco/'\n#     }))\n\n# pipelines\ntrain_pipeline = [\n    dict(type='LoadImage', backend_args=backend_args),\n    dict(type='GetBBoxCenterScale'),\n    dict(type='RandomFlip', direction='horizontal'),\n    dict(type='RandomHalfBody'),\n    dict(\n        type='RandomBBoxTransform', scale_factor=[0.6, 1.4], rotate_factor=80),\n    dict(type='TopdownAffine', input_size=codec['input_size']),\n    dict(type='mmdet.YOLOXHSVRandomAug'),\n    dict(\n        type='Albumentation',\n        transforms=[\n            dict(type='Blur', p=0.1),\n            dict(type='MedianBlur', p=0.1),\n            dict(\n                type='CoarseDropout',\n                max_holes=1,\n                max_height=0.4,\n                max_width=0.4,\n                min_holes=1,\n                min_height=0.2,\n                min_width=0.2,\n                p=1.0),\n        ]),\n    dict(type='GenerateTarget', encoder=codec),\n    dict(type='PackPoseInputs')\n]\nval_pipeline = [\n    dict(type='LoadImage', backend_args=backend_args),\n    dict(type='GetBBoxCenterScale'),\n    dict(type='TopdownAffine', input_size=codec['input_size']),\n    dict(type='PackPoseInputs')\n]\n\ntrain_pipeline_stage2 = [\n    dict(type='LoadImage', backend_args=backend_args),\n    dict(type='GetBBoxCenterScale'),\n    dict(type='RandomFlip', direction='horizontal'),\n    dict(type='RandomHalfBody'),\n    dict(\n        type='RandomBBoxTransform',\n        shift_factor=0.,\n        scale_factor=[0.75, 1.25],\n        rotate_factor=60),\n    dict(type='TopdownAffine', input_size=codec['input_size']),\n    dict(type='mmdet.YOLOXHSVRandomAug'),\n    dict(\n        type='Albumentation',\n        transforms=[\n            dict(type='Blur', p=0.1),\n            dict(type='MedianBlur', p=0.1),\n            dict(\n                type='CoarseDropout',\n                max_holes=1,\n                max_height=0.4,\n                max_width=0.4,\n                min_holes=1,\n                min_height=0.2,\n                min_width=0.2,\n                p=0.5),\n        ]),\n    dict(type='GenerateTarget', encoder=codec),\n    dict(type='PackPoseInputs')\n]\n\ndatasets = []\ndataset_coco=dict(\n    type=dataset_type,\n    data_root=data_root,\n    data_mode=data_mode,\n    ann_file='coco/annotations/coco_wholebody_train_v1.0.json',\n    data_prefix=dict(img='coco/train2017/'),\n    pipeline=[],\n)\ndatasets.append(dataset_coco)\n\nscene = ['Magic_show', 'Entertainment', 'ConductMusic', 'Online_class',\n         'TalkShow', 'Speech', 'Fitness', 'Interview', 'Olympic', 'TVShow',\n         'Singing', 'SignLanguage', 'Movie', 'LiveVlog', 'VideoConference']\n\nfor i in range(len(scene)):\n    datasets.append(\n        dict(\n            type=dataset_type,\n            data_root=data_root,\n            data_mode=data_mode,\n            ann_file='UBody/annotations/'+scene[i]+'/keypoint_annotation.json',\n            data_prefix=dict(img='UBody/images/'+scene[i]+'/'),\n            pipeline=[],\n        )\n    )\n\n# data loaders\ntrain_dataloader = dict(\n    batch_size=32,\n    num_workers=10,\n    persistent_workers=True,\n    sampler=dict(type='DefaultSampler', shuffle=True),\n    dataset=dict(\n        type='CombinedDataset',\n        metainfo=dict(from_file='configs/_base_/datasets/coco_wholebody.py'),\n        datasets=datasets,\n        pipeline=train_pipeline,\n        test_mode=False,\n    ))\nval_dataloader = dict(\n    batch_size=32,\n    num_workers=10,\n    persistent_workers=True,\n    drop_last=False,\n    sampler=dict(type='DefaultSampler', shuffle=False, round_up=False),\n    dataset=dict(\n        type=dataset_type,\n        data_root=data_root,\n        data_mode=data_mode,\n        ann_file='coco/annotations/coco_wholebody_val_v1.0.json',\n        bbox_file=f'{data_root}coco/person_detection_results/'\n        'COCO_val2017_detections_AP_H_56_person.json',\n        data_prefix=dict(img='coco/val2017/'),\n        test_mode=True,\n        pipeline=val_pipeline,\n    ))\ntest_dataloader = val_dataloader\n\n# hooks\ndefault_hooks = dict(\n    checkpoint=dict(\n        save_best='coco-wholebody/AP', rule='greater', max_keep_ckpts=1))\n\ncustom_hooks = [\n    dict(\n        type='EMAHook',\n        ema_type='ExpMomentumEMA',\n        momentum=0.0002,\n        update_buffers=True,\n        priority=49),\n    dict(\n        type='mmdet.PipelineSwitchHook',\n        switch_epoch=max_epochs - stage2_num_epochs,\n        switch_pipeline=train_pipeline_stage2)\n]\n\n# evaluators\nval_evaluator = dict(\n    type='CocoWholeBodyMetric',\n    ann_file=data_root + 'coco/annotations/coco_wholebody_val_v1.0.json')\ntest_evaluator = val_evaluator\n"
  },
  {
    "path": "modules/control/proc/dwpose/config/rtmpose-l_8xb32-270e_coco-ubody-wholebody-384x288.py",
    "content": "# _base_ = ['../../../_base_/default_runtime.py']\n\n# runtime\nmax_epochs = 270\nstage2_num_epochs = 30\nbase_lr = 4e-3\n\ntrain_cfg = dict(max_epochs=max_epochs, val_interval=10)\nrandomness = dict(seed=21)\n\n# optimizer\noptim_wrapper = dict(\n    type='OptimWrapper',\n    optimizer=dict(type='AdamW', lr=base_lr, weight_decay=0.05),\n    paramwise_cfg=dict(\n        norm_decay_mult=0, bias_decay_mult=0, bypass_duplicate=True))\n\n# learning rate\nparam_scheduler = [\n    dict(\n        type='LinearLR',\n        start_factor=1.0e-5,\n        by_epoch=False,\n        begin=0,\n        end=1000),\n    dict(\n        # use cosine lr from 150 to 300 epoch\n        type='CosineAnnealingLR',\n        eta_min=base_lr * 0.05,\n        begin=max_epochs // 2,\n        end=max_epochs,\n        T_max=max_epochs // 2,\n        by_epoch=True,\n        convert_to_iter_based=True),\n]\n\n# automatically scaling LR based on the actual training batch size\nauto_scale_lr = dict(base_batch_size=512)\n\n# codec settings\ncodec = dict(\n    type='SimCCLabel',\n    input_size=(288, 384),\n    sigma=(6., 6.93),\n    simcc_split_ratio=2.0,\n    normalize=False,\n    use_dark=False)\n\n# model settings\nmodel = dict(\n    type='TopdownPoseEstimator',\n    data_preprocessor=dict(\n        type='PoseDataPreprocessor',\n        mean=[123.675, 116.28, 103.53],\n        std=[58.395, 57.12, 57.375],\n        bgr_to_rgb=True),\n    backbone=dict(\n        _scope_='mmdet',\n        type='CSPNeXt',\n        arch='P5',\n        expand_ratio=0.5,\n        deepen_factor=1.,\n        widen_factor=1.,\n        out_indices=(4, ),\n        channel_attention=True,\n        norm_cfg=dict(type='SyncBN'),\n        act_cfg=dict(type='SiLU'),\n        init_cfg=dict(\n            type='Pretrained',\n            prefix='backbone.',\n            checkpoint='https://download.openmmlab.com/mmpose/v1/projects/'\n            'rtmpose/cspnext-l_udp-aic-coco_210e-256x192-273b7631_20230130.pth'\n        )),\n    head=dict(\n        type='RTMCCHead',\n        in_channels=1024,\n        out_channels=133,\n        input_size=codec['input_size'],\n        in_featuremap_size=(9, 12),\n        simcc_split_ratio=codec['simcc_split_ratio'],\n        final_layer_kernel_size=7,\n        gau_cfg=dict(\n            hidden_dims=256,\n            s=128,\n            expansion_factor=2,\n            dropout_rate=0.,\n            drop_path=0.,\n            act_fn='SiLU',\n            use_rel_bias=False,\n            pos_enc=False),\n        loss=dict(\n            type='KLDiscretLoss',\n            use_target_weight=True,\n            beta=10.,\n            label_softmax=True),\n        decoder=codec),\n    test_cfg=dict(flip_test=True, ))\n\n# base dataset settings\ndataset_type = 'CocoWholeBodyDataset'\ndata_mode = 'topdown'\ndata_root = 'data/'\n\nbackend_args = dict(backend='local')\n# backend_args = dict(\n#     backend='petrel',\n#     path_mapping=dict({\n#         f'{data_root}': 's3://openmmlab/datasets/detection/coco/',\n#         f'{data_root}': 's3://openmmlab/datasets/detection/coco/'\n#     }))\n\n# pipelines\ntrain_pipeline = [\n    dict(type='LoadImage', backend_args=backend_args),\n    dict(type='GetBBoxCenterScale'),\n    dict(type='RandomFlip', direction='horizontal'),\n    dict(type='RandomHalfBody'),\n    dict(\n        type='RandomBBoxTransform', scale_factor=[0.6, 1.4], rotate_factor=80),\n    dict(type='TopdownAffine', input_size=codec['input_size']),\n    dict(type='mmdet.YOLOXHSVRandomAug'),\n    dict(\n        type='Albumentation',\n        transforms=[\n            dict(type='Blur', p=0.1),\n            dict(type='MedianBlur', p=0.1),\n            dict(\n                type='CoarseDropout',\n                max_holes=1,\n                max_height=0.4,\n                max_width=0.4,\n                min_holes=1,\n                min_height=0.2,\n                min_width=0.2,\n                p=1.0),\n        ]),\n    dict(type='GenerateTarget', encoder=codec),\n    dict(type='PackPoseInputs')\n]\nval_pipeline = [\n    dict(type='LoadImage', backend_args=backend_args),\n    dict(type='GetBBoxCenterScale'),\n    dict(type='TopdownAffine', input_size=codec['input_size']),\n    dict(type='PackPoseInputs')\n]\n\ntrain_pipeline_stage2 = [\n    dict(type='LoadImage', backend_args=backend_args),\n    dict(type='GetBBoxCenterScale'),\n    dict(type='RandomFlip', direction='horizontal'),\n    dict(type='RandomHalfBody'),\n    dict(\n        type='RandomBBoxTransform',\n        shift_factor=0.,\n        scale_factor=[0.75, 1.25],\n        rotate_factor=60),\n    dict(type='TopdownAffine', input_size=codec['input_size']),\n    dict(type='mmdet.YOLOXHSVRandomAug'),\n    dict(\n        type='Albumentation',\n        transforms=[\n            dict(type='Blur', p=0.1),\n            dict(type='MedianBlur', p=0.1),\n            dict(\n                type='CoarseDropout',\n                max_holes=1,\n                max_height=0.4,\n                max_width=0.4,\n                min_holes=1,\n                min_height=0.2,\n                min_width=0.2,\n                p=0.5),\n        ]),\n    dict(type='GenerateTarget', encoder=codec),\n    dict(type='PackPoseInputs')\n]\n\ndatasets = []\ndataset_coco=dict(\n    type=dataset_type,\n    data_root=data_root,\n    data_mode=data_mode,\n    ann_file='coco/annotations/coco_wholebody_train_v1.0.json',\n    data_prefix=dict(img='coco/train2017/'),\n    pipeline=[],\n)\ndatasets.append(dataset_coco)\n\nscene = ['Magic_show', 'Entertainment', 'ConductMusic', 'Online_class',\n         'TalkShow', 'Speech', 'Fitness', 'Interview', 'Olympic', 'TVShow',\n         'Singing', 'SignLanguage', 'Movie', 'LiveVlog', 'VideoConference']\n\nfor i in range(len(scene)):\n    datasets.append(\n        dict(\n            type=dataset_type,\n            data_root=data_root,\n            data_mode=data_mode,\n            ann_file='UBody/annotations/'+scene[i]+'/keypoint_annotation.json',\n            data_prefix=dict(img='UBody/images/'+scene[i]+'/'),\n            pipeline=[],\n        )\n    )\n\n# data loaders\ntrain_dataloader = dict(\n    batch_size=32,\n    num_workers=10,\n    persistent_workers=True,\n    sampler=dict(type='DefaultSampler', shuffle=True),\n    dataset=dict(\n        type='CombinedDataset',\n        metainfo=dict(from_file='configs/_base_/datasets/coco_wholebody.py'),\n        datasets=datasets,\n        pipeline=train_pipeline,\n        test_mode=False,\n    ))\nval_dataloader = dict(\n    batch_size=32,\n    num_workers=10,\n    persistent_workers=True,\n    drop_last=False,\n    sampler=dict(type='DefaultSampler', shuffle=False, round_up=False),\n    dataset=dict(\n        type=dataset_type,\n        data_root=data_root,\n        data_mode=data_mode,\n        ann_file='coco/annotations/coco_wholebody_val_v1.0.json',\n        bbox_file=f'{data_root}coco/person_detection_results/'\n        'COCO_val2017_detections_AP_H_56_person.json',\n        data_prefix=dict(img='coco/val2017/'),\n        test_mode=True,\n        pipeline=val_pipeline,\n    ))\ntest_dataloader = val_dataloader\n\n# hooks\ndefault_hooks = dict(\n    checkpoint=dict(\n        save_best='coco-wholebody/AP', rule='greater', max_keep_ckpts=1))\n\ncustom_hooks = [\n    dict(\n        type='EMAHook',\n        ema_type='ExpMomentumEMA',\n        momentum=0.0002,\n        update_buffers=True,\n        priority=49),\n    dict(\n        type='mmdet.PipelineSwitchHook',\n        switch_epoch=max_epochs - stage2_num_epochs,\n        switch_pipeline=train_pipeline_stage2)\n]\n\n# evaluators\nval_evaluator = dict(\n    type='CocoWholeBodyMetric',\n    ann_file=data_root + 'coco/annotations/coco_wholebody_val_v1.0.json')\ntest_evaluator = val_evaluator\n"
  },
  {
    "path": "modules/control/proc/dwpose/config/rtmpose-m_8xb64-270e_coco-ubody-wholebody-256x192.py",
    "content": "# _base_ = ['../../../_base_/default_runtime.py']\n\n# runtime\nmax_epochs = 270\nstage2_num_epochs = 30\nbase_lr = 4e-3\n\ntrain_cfg = dict(max_epochs=max_epochs, val_interval=10)\nrandomness = dict(seed=21)\n\n# optimizer\noptim_wrapper = dict(\n    type='OptimWrapper',\n    optimizer=dict(type='AdamW', lr=base_lr, weight_decay=0.05),\n    paramwise_cfg=dict(\n        norm_decay_mult=0, bias_decay_mult=0, bypass_duplicate=True))\n\n# learning rate\nparam_scheduler = [\n    dict(\n        type='LinearLR',\n        start_factor=1.0e-5,\n        by_epoch=False,\n        begin=0,\n        end=1000),\n    dict(\n        # use cosine lr from 150 to 300 epoch\n        type='CosineAnnealingLR',\n        eta_min=base_lr * 0.05,\n        begin=max_epochs // 2,\n        end=max_epochs,\n        T_max=max_epochs // 2,\n        by_epoch=True,\n        convert_to_iter_based=True),\n]\n\n# automatically scaling LR based on the actual training batch size\nauto_scale_lr = dict(base_batch_size=512)\n\n# codec settings\ncodec = dict(\n    type='SimCCLabel',\n    input_size=(192, 256),\n    sigma=(4.9, 5.66),\n    simcc_split_ratio=2.0,\n    normalize=False,\n    use_dark=False)\n\n# model settings\nmodel = dict(\n    type='TopdownPoseEstimator',\n    data_preprocessor=dict(\n        type='PoseDataPreprocessor',\n        mean=[123.675, 116.28, 103.53],\n        std=[58.395, 57.12, 57.375],\n        bgr_to_rgb=True),\n    backbone=dict(\n        _scope_='mmdet',\n        type='CSPNeXt',\n        arch='P5',\n        expand_ratio=0.5,\n        deepen_factor=0.67,\n        widen_factor=0.75,\n        out_indices=(4, ),\n        channel_attention=True,\n        norm_cfg=dict(type='SyncBN'),\n        act_cfg=dict(type='SiLU'),\n        init_cfg=dict(\n            type='Pretrained',\n            prefix='backbone.',\n            checkpoint='https://download.openmmlab.com/mmpose/v1/projects/'\n            'rtmpose/cspnext-m_udp-aic-coco_210e-256x192-f2f7d6f6_20230130.pth'\n        )),\n    head=dict(\n        type='RTMCCHead',\n        in_channels=768,\n        out_channels=133,\n        input_size=codec['input_size'],\n        in_featuremap_size=(6, 8),\n        simcc_split_ratio=codec['simcc_split_ratio'],\n        final_layer_kernel_size=7,\n        gau_cfg=dict(\n            hidden_dims=256,\n            s=128,\n            expansion_factor=2,\n            dropout_rate=0.,\n            drop_path=0.,\n            act_fn='SiLU',\n            use_rel_bias=False,\n            pos_enc=False),\n        loss=dict(\n            type='KLDiscretLoss',\n            use_target_weight=True,\n            beta=10.,\n            label_softmax=True),\n        decoder=codec),\n    test_cfg=dict(flip_test=True, ))\n\n# base dataset settings\ndataset_type = 'CocoWholeBodyDataset'\ndata_mode = 'topdown'\ndata_root = 'data/'\n\nbackend_args = dict(backend='local')\n# backend_args = dict(\n#     backend='petrel',\n#     path_mapping=dict({\n#         f'{data_root}': 's3://openmmlab/datasets/detection/coco/',\n#         f'{data_root}': 's3://openmmlab/datasets/detection/coco/'\n#     }))\n\n# pipelines\ntrain_pipeline = [\n    dict(type='LoadImage', backend_args=backend_args),\n    dict(type='GetBBoxCenterScale'),\n    dict(type='RandomFlip', direction='horizontal'),\n    dict(type='RandomHalfBody'),\n    dict(\n        type='RandomBBoxTransform', scale_factor=[0.6, 1.4], rotate_factor=80),\n    dict(type='TopdownAffine', input_size=codec['input_size']),\n    dict(type='mmdet.YOLOXHSVRandomAug'),\n    dict(\n        type='Albumentation',\n        transforms=[\n            dict(type='Blur', p=0.1),\n            dict(type='MedianBlur', p=0.1),\n            dict(\n                type='CoarseDropout',\n                max_holes=1,\n                max_height=0.4,\n                max_width=0.4,\n                min_holes=1,\n                min_height=0.2,\n                min_width=0.2,\n                p=1.0),\n        ]),\n    dict(type='GenerateTarget', encoder=codec),\n    dict(type='PackPoseInputs')\n]\nval_pipeline = [\n    dict(type='LoadImage', backend_args=backend_args),\n    dict(type='GetBBoxCenterScale'),\n    dict(type='TopdownAffine', input_size=codec['input_size']),\n    dict(type='PackPoseInputs')\n]\n\ntrain_pipeline_stage2 = [\n    dict(type='LoadImage', backend_args=backend_args),\n    dict(type='GetBBoxCenterScale'),\n    dict(type='RandomFlip', direction='horizontal'),\n    dict(type='RandomHalfBody'),\n    dict(\n        type='RandomBBoxTransform',\n        shift_factor=0.,\n        scale_factor=[0.75, 1.25],\n        rotate_factor=60),\n    dict(type='TopdownAffine', input_size=codec['input_size']),\n    dict(type='mmdet.YOLOXHSVRandomAug'),\n    dict(\n        type='Albumentation',\n        transforms=[\n            dict(type='Blur', p=0.1),\n            dict(type='MedianBlur', p=0.1),\n            dict(\n                type='CoarseDropout',\n                max_holes=1,\n                max_height=0.4,\n                max_width=0.4,\n                min_holes=1,\n                min_height=0.2,\n                min_width=0.2,\n                p=0.5),\n        ]),\n    dict(type='GenerateTarget', encoder=codec),\n    dict(type='PackPoseInputs')\n]\n\ndatasets = []\ndataset_coco=dict(\n    type=dataset_type,\n    data_root=data_root,\n    data_mode=data_mode,\n    ann_file='coco/annotations/coco_wholebody_train_v1.0.json',\n    data_prefix=dict(img='coco/train2017/'),\n    pipeline=[],\n)\ndatasets.append(dataset_coco)\n\nscene = ['Magic_show', 'Entertainment', 'ConductMusic', 'Online_class',\n         'TalkShow', 'Speech', 'Fitness', 'Interview', 'Olympic', 'TVShow',\n         'Singing', 'SignLanguage', 'Movie', 'LiveVlog', 'VideoConference']\n\nfor i in range(len(scene)):\n    datasets.append(\n        dict(\n            type=dataset_type,\n            data_root=data_root,\n            data_mode=data_mode,\n            ann_file='UBody/annotations/'+scene[i]+'/keypoint_annotation.json',\n            data_prefix=dict(img='UBody/images/'+scene[i]+'/'),\n            pipeline=[],\n        )\n    )\n\n# data loaders\ntrain_dataloader = dict(\n    batch_size=64,\n    num_workers=10,\n    persistent_workers=True,\n    sampler=dict(type='DefaultSampler', shuffle=True),\n    dataset=dict(\n        type='CombinedDataset',\n        metainfo=dict(from_file='configs/_base_/datasets/coco_wholebody.py'),\n        datasets=datasets,\n        pipeline=train_pipeline,\n        test_mode=False,\n    ))\nval_dataloader = dict(\n    batch_size=32,\n    num_workers=10,\n    persistent_workers=True,\n    drop_last=False,\n    sampler=dict(type='DefaultSampler', shuffle=False, round_up=False),\n    dataset=dict(\n        type=dataset_type,\n        data_root=data_root,\n        data_mode=data_mode,\n        ann_file='coco/annotations/coco_wholebody_val_v1.0.json',\n        bbox_file=f'{data_root}coco/person_detection_results/'\n        'COCO_val2017_detections_AP_H_56_person.json',\n        data_prefix=dict(img='coco/val2017/'),\n        test_mode=True,\n        pipeline=val_pipeline,\n    ))\ntest_dataloader = val_dataloader\n\n# hooks\ndefault_hooks = dict(\n    checkpoint=dict(\n        save_best='coco-wholebody/AP', rule='greater', max_keep_ckpts=1))\n\ncustom_hooks = [\n    dict(\n        type='EMAHook',\n        ema_type='ExpMomentumEMA',\n        momentum=0.0002,\n        update_buffers=True,\n        priority=49),\n    dict(\n        type='mmdet.PipelineSwitchHook',\n        switch_epoch=max_epochs - stage2_num_epochs,\n        switch_pipeline=train_pipeline_stage2)\n]\n\n# evaluators\nval_evaluator = dict(\n    type='CocoWholeBodyMetric',\n    ann_file=data_root + 'coco/annotations/coco_wholebody_val_v1.0.json')\ntest_evaluator = val_evaluator\n"
  },
  {
    "path": "modules/control/proc/dwpose/config/rtmpose-t_8xb64-270e_coco-ubody-wholebody-256x192.py",
    "content": "# _base_ = ['../../../_base_/default_runtime.py']\n\n# runtime\nmax_epochs = 270\nstage2_num_epochs = 30\nbase_lr = 4e-3\n\ntrain_cfg = dict(max_epochs=max_epochs, val_interval=10)\nrandomness = dict(seed=21)\n\n# optimizer\noptim_wrapper = dict(\n    type='OptimWrapper',\n    optimizer=dict(type='AdamW', lr=base_lr, weight_decay=0.05),\n    paramwise_cfg=dict(\n        norm_decay_mult=0, bias_decay_mult=0, bypass_duplicate=True))\n\n# learning rate\nparam_scheduler = [\n    dict(\n        type='LinearLR',\n        start_factor=1.0e-5,\n        by_epoch=False,\n        begin=0,\n        end=1000),\n    dict(\n        # use cosine lr from 150 to 300 epoch\n        type='CosineAnnealingLR',\n        eta_min=base_lr * 0.05,\n        begin=max_epochs // 2,\n        end=max_epochs,\n        T_max=max_epochs // 2,\n        by_epoch=True,\n        convert_to_iter_based=True),\n]\n\n# automatically scaling LR based on the actual training batch size\nauto_scale_lr = dict(base_batch_size=512)\n\n# codec settings\ncodec = dict(\n    type='SimCCLabel',\n    input_size=(192, 256),\n    sigma=(4.9, 5.66),\n    simcc_split_ratio=2.0,\n    normalize=False,\n    use_dark=False)\n\n# model settings\nmodel = dict(\n    type='TopdownPoseEstimator',\n    data_preprocessor=dict(\n        type='PoseDataPreprocessor',\n        mean=[123.675, 116.28, 103.53],\n        std=[58.395, 57.12, 57.375],\n        bgr_to_rgb=True),\n    backbone=dict(\n        _scope_='mmdet',\n        type='CSPNeXt',\n        arch='P5',\n        expand_ratio=0.5,\n        deepen_factor=0.167,\n        widen_factor=0.375,\n        out_indices=(4, ),\n        channel_attention=True,\n        norm_cfg=dict(type='SyncBN'),\n        act_cfg=dict(type='SiLU'),\n        init_cfg=dict(\n            type='Pretrained',\n            prefix='backbone.',\n            checkpoint='https://download.openmmlab.com/mmpose/v1/projects/'\n            'rtmpose/cspnext-tiny_udp-aic-coco_210e-256x192-cbed682d_20230130.pth'\n        )),\n    head=dict(\n        type='RTMCCHead',\n        in_channels=384,\n        out_channels=133,\n        input_size=codec['input_size'],\n        in_featuremap_size=(6, 8),\n        simcc_split_ratio=codec['simcc_split_ratio'],\n        final_layer_kernel_size=7,\n        gau_cfg=dict(\n            hidden_dims=256,\n            s=128,\n            expansion_factor=2,\n            dropout_rate=0.,\n            drop_path=0.,\n            act_fn='SiLU',\n            use_rel_bias=False,\n            pos_enc=False),\n        loss=dict(\n            type='KLDiscretLoss',\n            use_target_weight=True,\n            beta=10.,\n            label_softmax=True),\n        decoder=codec),\n    test_cfg=dict(flip_test=True, ))\n\n# base dataset settings\ndataset_type = 'CocoWholeBodyDataset'\ndata_mode = 'topdown'\ndata_root = 'data/'\n\nbackend_args = dict(backend='local')\n# backend_args = dict(\n#     backend='petrel',\n#     path_mapping=dict({\n#         f'{data_root}': 's3://openmmlab/datasets/detection/coco/',\n#         f'{data_root}': 's3://openmmlab/datasets/detection/coco/'\n#     }))\n\n# pipelines\ntrain_pipeline = [\n    dict(type='LoadImage', backend_args=backend_args),\n    dict(type='GetBBoxCenterScale'),\n    dict(type='RandomFlip', direction='horizontal'),\n    dict(type='RandomHalfBody'),\n    dict(\n        type='RandomBBoxTransform', scale_factor=[0.6, 1.4], rotate_factor=80),\n    dict(type='TopdownAffine', input_size=codec['input_size']),\n    dict(type='mmdet.YOLOXHSVRandomAug'),\n    dict(\n        type='Albumentation',\n        transforms=[\n            dict(type='Blur', p=0.1),\n            dict(type='MedianBlur', p=0.1),\n            dict(\n                type='CoarseDropout',\n                max_holes=1,\n                max_height=0.4,\n                max_width=0.4,\n                min_holes=1,\n                min_height=0.2,\n                min_width=0.2,\n                p=1.0),\n        ]),\n    dict(type='GenerateTarget', encoder=codec),\n    dict(type='PackPoseInputs')\n]\nval_pipeline = [\n    dict(type='LoadImage', backend_args=backend_args),\n    dict(type='GetBBoxCenterScale'),\n    dict(type='TopdownAffine', input_size=codec['input_size']),\n    dict(type='PackPoseInputs')\n]\n\ntrain_pipeline_stage2 = [\n    dict(type='LoadImage', backend_args=backend_args),\n    dict(type='GetBBoxCenterScale'),\n    dict(type='RandomFlip', direction='horizontal'),\n    dict(type='RandomHalfBody'),\n    dict(\n        type='RandomBBoxTransform',\n        shift_factor=0.,\n        scale_factor=[0.75, 1.25],\n        rotate_factor=60),\n    dict(type='TopdownAffine', input_size=codec['input_size']),\n    dict(type='mmdet.YOLOXHSVRandomAug'),\n    dict(\n        type='Albumentation',\n        transforms=[\n            dict(type='Blur', p=0.1),\n            dict(type='MedianBlur', p=0.1),\n            dict(\n                type='CoarseDropout',\n                max_holes=1,\n                max_height=0.4,\n                max_width=0.4,\n                min_holes=1,\n                min_height=0.2,\n                min_width=0.2,\n                p=0.5),\n        ]),\n    dict(type='GenerateTarget', encoder=codec),\n    dict(type='PackPoseInputs')\n]\n\ndatasets = []\ndataset_coco=dict(\n    type=dataset_type,\n    data_root=data_root,\n    data_mode=data_mode,\n    ann_file='coco/annotations/coco_wholebody_train_v1.0.json',\n    data_prefix=dict(img='coco/train2017/'),\n    pipeline=[],\n)\ndatasets.append(dataset_coco)\n\nscene = ['Magic_show', 'Entertainment', 'ConductMusic', 'Online_class',\n         'TalkShow', 'Speech', 'Fitness', 'Interview', 'Olympic', 'TVShow',\n         'Singing', 'SignLanguage', 'Movie', 'LiveVlog', 'VideoConference']\n\nfor i in range(len(scene)):\n    datasets.append(\n        dict(\n            type=dataset_type,\n            data_root=data_root,\n            data_mode=data_mode,\n            ann_file='UBody/annotations/'+scene[i]+'/keypoint_annotation.json',\n            data_prefix=dict(img='UBody/images/'+scene[i]+'/'),\n            pipeline=[],\n        )\n    )\n\n# data loaders\ntrain_dataloader = dict(\n    batch_size=64,\n    num_workers=10,\n    persistent_workers=True,\n    sampler=dict(type='DefaultSampler', shuffle=True),\n    dataset=dict(\n        type='CombinedDataset',\n        metainfo=dict(from_file='configs/_base_/datasets/coco_wholebody.py'),\n        datasets=datasets,\n        pipeline=train_pipeline,\n        test_mode=False,\n    ))\nval_dataloader = dict(\n    batch_size=32,\n    num_workers=10,\n    persistent_workers=True,\n    drop_last=False,\n    sampler=dict(type='DefaultSampler', shuffle=False, round_up=False),\n    dataset=dict(\n        type=dataset_type,\n        data_root=data_root,\n        data_mode=data_mode,\n        ann_file='coco/annotations/coco_wholebody_val_v1.0.json',\n        bbox_file=f'{data_root}coco/person_detection_results/'\n        'COCO_val2017_detections_AP_H_56_person.json',\n        data_prefix=dict(img='coco/val2017/'),\n        test_mode=True,\n        pipeline=val_pipeline,\n    ))\ntest_dataloader = val_dataloader\n\n# hooks\ndefault_hooks = dict(\n    checkpoint=dict(\n        save_best='coco-wholebody/AP', rule='greater', max_keep_ckpts=1))\n\ncustom_hooks = [\n    dict(\n        type='EMAHook',\n        ema_type='ExpMomentumEMA',\n        momentum=0.0002,\n        update_buffers=True,\n        priority=49),\n    dict(\n        type='mmdet.PipelineSwitchHook',\n        switch_epoch=max_epochs - stage2_num_epochs,\n        switch_pipeline=train_pipeline_stage2)\n]\n\n# evaluators\nval_evaluator = dict(\n    type='CocoWholeBodyMetric',\n    ann_file=data_root + 'coco/annotations/coco_wholebody_val_v1.0.json')\ntest_evaluator = val_evaluator\n"
  },
  {
    "path": "modules/control/proc/dwpose/config/yolox_l_8xb8-300e_coco.py",
    "content": "img_scale = (640, 640)  # width, height\n\n# model settings\nmodel = dict(\n    type='YOLOX',\n    data_preprocessor=dict(\n        type='DetDataPreprocessor',\n        pad_size_divisor=32,\n        batch_augments=[\n            dict(\n                type='BatchSyncRandomResize',\n                random_size_range=(480, 800),\n                size_divisor=32,\n                interval=10)\n        ]),\n    backbone=dict(\n        type='CSPDarknet',\n        deepen_factor=1.0,\n        widen_factor=1.0,\n        out_indices=(2, 3, 4),\n        use_depthwise=False,\n        spp_kernal_sizes=(5, 9, 13),\n        norm_cfg=dict(type='BN', momentum=0.03, eps=0.001),\n        act_cfg=dict(type='Swish'),\n    ),\n    neck=dict(\n        type='YOLOXPAFPN',\n        in_channels=[256, 512, 1024],\n        out_channels=256,\n        num_csp_blocks=3,\n        use_depthwise=False,\n        upsample_cfg=dict(scale_factor=2, mode='nearest'),\n        norm_cfg=dict(type='BN', momentum=0.03, eps=0.001),\n        act_cfg=dict(type='Swish')),\n    bbox_head=dict(\n        type='YOLOXHead',\n        num_classes=80,\n        in_channels=256,\n        feat_channels=256,\n        stacked_convs=2,\n        strides=(8, 16, 32),\n        use_depthwise=False,\n        norm_cfg=dict(type='BN', momentum=0.03, eps=0.001),\n        act_cfg=dict(type='Swish'),\n        loss_cls=dict(\n            type='CrossEntropyLoss',\n            use_sigmoid=True,\n            reduction='sum',\n            loss_weight=1.0),\n        loss_bbox=dict(\n            type='IoULoss',\n            mode='square',\n            eps=1e-16,\n            reduction='sum',\n            loss_weight=5.0),\n        loss_obj=dict(\n            type='CrossEntropyLoss',\n            use_sigmoid=True,\n            reduction='sum',\n            loss_weight=1.0),\n        loss_l1=dict(type='L1Loss', reduction='sum', loss_weight=1.0)),\n    train_cfg=dict(assigner=dict(type='SimOTAAssigner', center_radius=2.5)),\n    # In order to align the source code, the threshold of the val phase is\n    # 0.01, and the threshold of the test phase is 0.001.\n    test_cfg=dict(score_thr=0.01, nms=dict(type='nms', iou_threshold=0.65)))\n\n# dataset settings\ndata_root = 'data/coco/'\ndataset_type = 'CocoDataset'\n\n# Example to use different file client\n# Method 1: simply set the data root and let the file I/O module\n# automatically infer from prefix (not support LMDB and Memcache yet)\n\n# data_root = 's3://openmmlab/datasets/detection/coco/'\n\n# Method 2: Use `backend_args`, `file_client_args` in versions before 3.0.0rc6\n# backend_args = dict(\n#     backend='petrel',\n#     path_mapping=dict({\n#         './data/': 's3://openmmlab/datasets/detection/',\n#         'data/': 's3://openmmlab/datasets/detection/'\n#     }))\nbackend_args = None\n\ntrain_pipeline = [\n    dict(type='Mosaic', img_scale=img_scale, pad_val=114.0),\n    dict(\n        type='RandomAffine',\n        scaling_ratio_range=(0.1, 2),\n        # img_scale is (width, height)\n        border=(-img_scale[0] // 2, -img_scale[1] // 2)),\n    dict(\n        type='MixUp',\n        img_scale=img_scale,\n        ratio_range=(0.8, 1.6),\n        pad_val=114.0),\n    dict(type='YOLOXHSVRandomAug'),\n    dict(type='RandomFlip', prob=0.5),\n    # According to the official implementation, multi-scale\n    # training is not considered here but in the\n    # 'mmdet/models/detectors/yolox.py'.\n    # Resize and Pad are for the last 15 epochs when Mosaic,\n    # RandomAffine, and MixUp are closed by YOLOXModeSwitchHook.\n    dict(type='Resize', scale=img_scale, keep_ratio=True),\n    dict(\n        type='Pad',\n        pad_to_square=True,\n        # If the image is three-channel, the pad value needs\n        # to be set separately for each channel.\n        pad_val=dict(img=(114.0, 114.0, 114.0))),\n    dict(type='FilterAnnotations', min_gt_bbox_wh=(1, 1), keep_empty=False),\n    dict(type='PackDetInputs')\n]\n\ntrain_dataset = dict(\n    # use MultiImageMixDataset wrapper to support mosaic and mixup\n    type='MultiImageMixDataset',\n    dataset=dict(\n        type=dataset_type,\n        data_root=data_root,\n        ann_file='annotations/instances_train2017.json',\n        data_prefix=dict(img='train2017/'),\n        pipeline=[\n            dict(type='LoadImageFromFile', backend_args=backend_args),\n            dict(type='LoadAnnotations', with_bbox=True)\n        ],\n        filter_cfg=dict(filter_empty_gt=False, min_size=32),\n        backend_args=backend_args),\n    pipeline=train_pipeline)\n\ntest_pipeline = [\n    dict(type='LoadImageFromFile', backend_args=backend_args),\n    dict(type='Resize', scale=img_scale, keep_ratio=True),\n    dict(\n        type='Pad',\n        pad_to_square=True,\n        pad_val=dict(img=(114.0, 114.0, 114.0))),\n    dict(type='LoadAnnotations', with_bbox=True),\n    dict(\n        type='PackDetInputs',\n        meta_keys=('img_id', 'img_path', 'ori_shape', 'img_shape',\n                   'scale_factor'))\n]\n\ntrain_dataloader = dict(\n    batch_size=8,\n    num_workers=4,\n    persistent_workers=True,\n    sampler=dict(type='DefaultSampler', shuffle=True),\n    dataset=train_dataset)\nval_dataloader = dict(\n    batch_size=8,\n    num_workers=4,\n    persistent_workers=True,\n    drop_last=False,\n    sampler=dict(type='DefaultSampler', shuffle=False),\n    dataset=dict(\n        type=dataset_type,\n        data_root=data_root,\n        ann_file='annotations/instances_val2017.json',\n        data_prefix=dict(img='val2017/'),\n        test_mode=True,\n        pipeline=test_pipeline,\n        backend_args=backend_args))\ntest_dataloader = val_dataloader\n\nval_evaluator = dict(\n    type='CocoMetric',\n    ann_file=data_root + 'annotations/instances_val2017.json',\n    metric='bbox',\n    backend_args=backend_args)\ntest_evaluator = val_evaluator\n\n# training settings\nmax_epochs = 300\nnum_last_epochs = 15\ninterval = 10\n\ntrain_cfg = dict(max_epochs=max_epochs, val_interval=interval)\n\n# optimizer\n# default 8 gpu\nbase_lr = 0.01\noptim_wrapper = dict(\n    type='OptimWrapper',\n    optimizer=dict(\n        type='SGD', lr=base_lr, momentum=0.9, weight_decay=5e-4,\n        nesterov=True),\n    paramwise_cfg=dict(norm_decay_mult=0., bias_decay_mult=0.))\n\n# learning rate\nparam_scheduler = [\n    dict(\n        # use quadratic formula to warm up 5 epochs\n        # and lr is updated by iteration\n        type='mmdet.QuadraticWarmupLR',\n        by_epoch=True,\n        begin=0,\n        end=5,\n        convert_to_iter_based=True),\n    dict(\n        # use cosine lr from 5 to 285 epoch\n        type='CosineAnnealingLR',\n        eta_min=base_lr * 0.05,\n        begin=5,\n        T_max=max_epochs - num_last_epochs,\n        end=max_epochs - num_last_epochs,\n        by_epoch=True,\n        convert_to_iter_based=True),\n    dict(\n        # use fixed lr during last 15 epochs\n        type='ConstantLR',\n        by_epoch=True,\n        factor=1,\n        begin=max_epochs - num_last_epochs,\n        end=max_epochs,\n    )\n]\n\ndefault_hooks = dict(\n    checkpoint=dict(\n        interval=interval,\n        max_keep_ckpts=3  # only keep latest 3 checkpoints\n    ))\n\ncustom_hooks = [\n    dict(\n        type='YOLOXModeSwitchHook',\n        num_last_epochs=num_last_epochs,\n        priority=48),\n    dict(type='SyncNormHook', priority=48),\n    dict(\n        type='EMAHook',\n        ema_type='ExpMomentumEMA',\n        momentum=0.0001,\n        update_buffers=True,\n        priority=49)\n]\n\n# NOTE: `auto_scale_lr` is for automatically scaling LR,\n# USER SHOULD NOT CHANGE ITS VALUES.\n# base_batch_size = (8 GPUs) x (8 samples per GPU)\nauto_scale_lr = dict(base_batch_size=64)\n"
  },
  {
    "path": "modules/control/proc/dwpose/draw.py",
    "content": "import math\nimport numpy as np\nimport cv2\n\n\neps = 0.01\n\n\ndef smart_resize(x, s):\n    Ht, Wt = s\n    if x.ndim == 2:\n        Ho, Wo = x.shape\n        Co = 1\n    else:\n        Ho, Wo, Co = x.shape\n    if Co == 3 or Co == 1:\n        k = float(Ht + Wt) / float(Ho + Wo)\n        return cv2.resize(x, (int(Wt), int(Ht)), interpolation=cv2.INTER_AREA if k < 1 else cv2.INTER_LANCZOS4)\n    else:\n        return np.stack([smart_resize(x[:, :, i], s) for i in range(Co)], axis=2)\n\n\ndef smart_resize_k(x, fx, fy):\n    if x.ndim == 2:\n        Ho, Wo = x.shape\n        Co = 1\n    else:\n        Ho, Wo, Co = x.shape\n    Ht, Wt = Ho * fy, Wo * fx\n    if Co == 3 or Co == 1:\n        k = float(Ht + Wt) / float(Ho + Wo)\n        return cv2.resize(x, (int(Wt), int(Ht)), interpolation=cv2.INTER_AREA if k < 1 else cv2.INTER_LANCZOS4)\n    else:\n        return np.stack([smart_resize_k(x[:, :, i], fx, fy) for i in range(Co)], axis=2)\n\n\ndef padRightDownCorner(img, stride, padValue):\n    h = img.shape[0]\n    w = img.shape[1]\n\n    pad = 4 * [None]\n    pad[0] = 0 # up\n    pad[1] = 0 # left\n    pad[2] = 0 if (h % stride == 0) else stride - (h % stride) # down\n    pad[3] = 0 if (w % stride == 0) else stride - (w % stride) # right\n\n    img_padded = img\n    pad_up = np.tile(img_padded[0:1, :, :]*0 + padValue, (pad[0], 1, 1))\n    img_padded = np.concatenate((pad_up, img_padded), axis=0)\n    pad_left = np.tile(img_padded[:, 0:1, :]*0 + padValue, (1, pad[1], 1))\n    img_padded = np.concatenate((pad_left, img_padded), axis=1)\n    pad_down = np.tile(img_padded[-2:-1, :, :]*0 + padValue, (pad[2], 1, 1))\n    img_padded = np.concatenate((img_padded, pad_down), axis=0)\n    pad_right = np.tile(img_padded[:, -2:-1, :]*0 + padValue, (1, pad[3], 1))\n    img_padded = np.concatenate((img_padded, pad_right), axis=1)\n\n    return img_padded, pad\n\n\ndef transfer(model, model_weights):\n    transfered_model_weights = {}\n    for weights_name in model.state_dict().keys():\n        transfered_model_weights[weights_name] = model_weights['.'.join(weights_name.split('.')[1:])]\n    return transfered_model_weights\n\n\ndef draw_bodypose(canvas, candidate, subset):\n    H, W, _C = canvas.shape\n    candidate = np.array(candidate)\n    subset = np.array(subset)\n\n    stickwidth = 4\n\n    limbSeq = [[2, 3], [2, 6], [3, 4], [4, 5], [6, 7], [7, 8], [2, 9], [9, 10], \\\n               [10, 11], [2, 12], [12, 13], [13, 14], [2, 1], [1, 15], [15, 17], \\\n               [1, 16], [16, 18], [3, 17], [6, 18]]\n\n    colors = [[255, 0, 0], [255, 85, 0], [255, 170, 0], [255, 255, 0], [170, 255, 0], [85, 255, 0], [0, 255, 0], \\\n              [0, 255, 85], [0, 255, 170], [0, 255, 255], [0, 170, 255], [0, 85, 255], [0, 0, 255], [85, 0, 255], \\\n              [170, 0, 255], [255, 0, 255], [255, 0, 170], [255, 0, 85]]\n\n    for i in range(17):\n        for n in range(len(subset)):\n            index = subset[n][np.array(limbSeq[i]) - 1]\n            if -1 in index:\n                continue\n            Y = candidate[index.astype(int), 0] * float(W)\n            X = candidate[index.astype(int), 1] * float(H)\n            mX = np.mean(X)\n            mY = np.mean(Y)\n            length = ((X[0] - X[1]) ** 2 + (Y[0] - Y[1]) ** 2) ** 0.5\n            angle = math.degrees(math.atan2(X[0] - X[1], Y[0] - Y[1]))\n            polygon = cv2.ellipse2Poly((int(mY), int(mX)), (int(length / 2), stickwidth), int(angle), 0, 360, 1)\n            cv2.fillConvexPoly(canvas, polygon, colors[i])\n\n    canvas = (canvas * 0.6).astype(np.uint8)\n\n    for i in range(18):\n        for n in range(len(subset)):\n            index = int(subset[n][i])\n            if index == -1:\n                continue\n            x, y = candidate[index][0:2]\n            x = int(x * W)\n            y = int(y * H)\n            cv2.circle(canvas, (int(x), int(y)), 4, colors[i], thickness=-1)\n\n    return canvas\n\n\ndef draw_handpose(canvas, all_hand_peaks):\n    import matplotlib as mpl\n\n    H, W, _C = canvas.shape\n\n    edges = [[0, 1], [1, 2], [2, 3], [3, 4], [0, 5], [5, 6], [6, 7], [7, 8], [0, 9], [9, 10], \\\n             [10, 11], [11, 12], [0, 13], [13, 14], [14, 15], [15, 16], [0, 17], [17, 18], [18, 19], [19, 20]]\n\n    # (person_number*2, 21, 2)\n    for i in range(len(all_hand_peaks)):\n        peaks = all_hand_peaks[i]\n        peaks = np.array(peaks)\n\n        for ie, e in enumerate(edges):\n\n            x1, y1 = peaks[e[0]]\n            x2, y2 = peaks[e[1]]\n\n            x1 = int(x1 * W)\n            y1 = int(y1 * H)\n            x2 = int(x2 * W)\n            y2 = int(y2 * H)\n            if x1 > eps and y1 > eps and x2 > eps and y2 > eps:\n                cv2.line(canvas, (x1, y1), (x2, y2), mpl.colors.hsv_to_rgb([ie / float(len(edges)), 1.0, 1.0]) * 255, thickness=2)\n\n        for _, keyponit in enumerate(peaks):\n            x, y = keyponit\n\n            x = int(x * W)\n            y = int(y * H)\n            if x > eps and y > eps:\n                cv2.circle(canvas, (x, y), 4, (0, 0, 255), thickness=-1)\n    return canvas\n\n\ndef draw_facepose(canvas, all_lmks):\n    H, W, _C = canvas.shape\n    for lmks in all_lmks:\n        lmks = np.array(lmks)\n        for lmk in lmks:\n            x, y = lmk\n            x = int(x * W)\n            y = int(y * H)\n            if x > eps and y > eps:\n                cv2.circle(canvas, (x, y), 3, (255, 255, 255), thickness=-1)\n    return canvas\n\n\n# detect hand according to body pose keypoints\n# please refer to https://github.com/CMU-Perceptual-Computing-Lab/openpose/blob/master/src/openpose/hand/handDetector.cpp\ndef handDetect(candidate, subset, oriImg):\n    # right hand: wrist 4, elbow 3, shoulder 2\n    # left hand: wrist 7, elbow 6, shoulder 5\n    ratioWristElbow = 0.33\n    detect_result = []\n    image_height, image_width = oriImg.shape[0:2]\n    for person in subset.astype(int):\n        # if any of three not detected\n        has_left = np.sum(person[[5, 6, 7]] == -1) == 0\n        has_right = np.sum(person[[2, 3, 4]] == -1) == 0\n        if not (has_left or has_right):\n            continue\n        hands = []\n        #left hand\n        if has_left:\n            left_shoulder_index, left_elbow_index, left_wrist_index = person[[5, 6, 7]]\n            x1, y1 = candidate[left_shoulder_index][:2]\n            x2, y2 = candidate[left_elbow_index][:2]\n            x3, y3 = candidate[left_wrist_index][:2]\n            hands.append([x1, y1, x2, y2, x3, y3, True])\n        # right hand\n        if has_right:\n            right_shoulder_index, right_elbow_index, right_wrist_index = person[[2, 3, 4]]\n            x1, y1 = candidate[right_shoulder_index][:2]\n            x2, y2 = candidate[right_elbow_index][:2]\n            x3, y3 = candidate[right_wrist_index][:2]\n            hands.append([x1, y1, x2, y2, x3, y3, False])\n\n        for x1, y1, x2, y2, x3, y3, is_left in hands:\n            # pos_hand = pos_wrist + ratio * (pos_wrist - pos_elbox) = (1 + ratio) * pos_wrist - ratio * pos_elbox\n            # handRectangle.x = posePtr[wrist*3] + ratioWristElbow * (posePtr[wrist*3] - posePtr[elbow*3]);\n            # handRectangle.y = posePtr[wrist*3+1] + ratioWristElbow * (posePtr[wrist*3+1] - posePtr[elbow*3+1]);\n            # const auto distanceWristElbow = getDistance(poseKeypoints, person, wrist, elbow);\n            # const auto distanceElbowShoulder = getDistance(poseKeypoints, person, elbow, shoulder);\n            # handRectangle.width = 1.5f * fastMax(distanceWristElbow, 0.9f * distanceElbowShoulder);\n            x = x3 + ratioWristElbow * (x3 - x2)\n            y = y3 + ratioWristElbow * (y3 - y2)\n            distanceWristElbow = math.sqrt((x3 - x2) ** 2 + (y3 - y2) ** 2)\n            distanceElbowShoulder = math.sqrt((x2 - x1) ** 2 + (y2 - y1) ** 2)\n            width = 1.5 * max(distanceWristElbow, 0.9 * distanceElbowShoulder)\n            # x-y refers to the center --> offset to topLeft point\n            # handRectangle.x -= handRectangle.width / 2.f;\n            # handRectangle.y -= handRectangle.height / 2.f;\n            x -= width / 2\n            y -= width / 2  # width = height\n            # overflow the image\n            if x < 0:\n                x = 0\n            if y < 0:\n                y = 0\n            width1 = width\n            width2 = width\n            if x + width > image_width:\n                width1 = image_width - x\n            if y + width > image_height:\n                width2 = image_height - y\n            width = min(width1, width2)\n            # the max hand box value is 20 pixels\n            if width >= 20:\n                detect_result.append([int(x), int(y), int(width), is_left])\n\n    '''\n    return value: [[x, y, w, True if left hand else False]].\n    width=height since the network require squared input.\n    x, y is the coordinate of top left\n    '''\n    return detect_result\n\n\n# Written by Lvmin\ndef faceDetect(candidate, subset, oriImg):\n    # left right eye ear 14 15 16 17\n    detect_result = []\n    image_height, image_width = oriImg.shape[0:2]\n    for person in subset.astype(int):\n        has_head = person[0] > -1\n        if not has_head:\n            continue\n\n        has_left_eye = person[14] > -1\n        has_right_eye = person[15] > -1\n        has_left_ear = person[16] > -1\n        has_right_ear = person[17] > -1\n\n        if not (has_left_eye or has_right_eye or has_left_ear or has_right_ear):\n            continue\n\n        head, left_eye, right_eye, left_ear, right_ear = person[[0, 14, 15, 16, 17]]\n\n        width = 0.0\n        x0, y0 = candidate[head][:2]\n\n        if has_left_eye:\n            x1, y1 = candidate[left_eye][:2]\n            d = max(abs(x0 - x1), abs(y0 - y1))\n            width = max(width, d * 3.0)\n\n        if has_right_eye:\n            x1, y1 = candidate[right_eye][:2]\n            d = max(abs(x0 - x1), abs(y0 - y1))\n            width = max(width, d * 3.0)\n\n        if has_left_ear:\n            x1, y1 = candidate[left_ear][:2]\n            d = max(abs(x0 - x1), abs(y0 - y1))\n            width = max(width, d * 1.5)\n\n        if has_right_ear:\n            x1, y1 = candidate[right_ear][:2]\n            d = max(abs(x0 - x1), abs(y0 - y1))\n            width = max(width, d * 1.5)\n\n        x, y = x0, y0\n\n        x -= width\n        y -= width\n\n        if x < 0:\n            x = 0\n\n        if y < 0:\n            y = 0\n\n        width1 = width * 2\n        width2 = width * 2\n\n        if x + width > image_width:\n            width1 = image_width - x\n\n        if y + width > image_height:\n            width2 = image_height - y\n\n        width = min(width1, width2)\n\n        if width >= 20:\n            detect_result.append([int(x), int(y), int(width)])\n\n    return detect_result\n\n\n# get max index of 2d array\ndef npmax(array):\n    arrayindex = array.argmax(1)\n    arrayvalue = array.max(1)\n    i = arrayvalue.argmax()\n    j = arrayindex[i]\n    return i, j\n"
  },
  {
    "path": "modules/control/proc/dwpose/wholebody.py",
    "content": "# Copyright (c) OpenMMLab. All rights reserved.\nimport os\nimport numpy as np\nfrom modules.shared import log\n\nmmok = True\n\ntry:\n    import mmcv # pylint: disable=unused-import\nexcept ImportError as e:\n    mmok = False\n    log.error(f\"Control processor DWPose: {e}\")\ntry:\n    from mmpose.apis import inference_topdown\n    from mmpose.apis import init_model as init_pose_estimator\n    from mmpose.evaluation.functional import nms\n    from mmpose.utils import adapt_mmdet_pipeline\n    from mmpose.structures import merge_data_samples\nexcept ImportError as e:\n    mmok = False\n    log.error(f\"Control processor DWPose: {e}\")\n\ntry:\n    from mmdet.apis import inference_detector, init_detector\nexcept ImportError as e:\n    mmok = False\n    log.error(f\"Control processor DWPose: {e}\")\n\n    def inference_detector(*args, **kwargs):\n        return lambda *args, **kwargs: None\n\nif not mmok:\n    log.error('Control processor DWPose: OpenMMLab is not installed')\n\n\nclass Wholebody:\n    def __init__(self, det_config=None, det_ckpt=None, pose_config=None, pose_ckpt=None, device=\"cpu\"):\n        if not mmok:\n            self.detector = lambda *args, **kwargs: None\n            return None\n        prefix = os.path.dirname(__file__)\n        if det_config is None:\n            det_config = \"config/yolox_l_8xb8-300e_coco.py\"\n        if pose_config is None:\n            pose_config = \"config/dwpose-l_384x288.py\"\n        if not det_config.startswith('prefix'):\n            det_config = os.path.join(prefix, det_config)\n        if not pose_config.startswith('prefix'):\n            pose_config = os.path.join(prefix, pose_config)\n        if det_ckpt is None:\n            det_ckpt = 'https://download.openmmlab.com/mmdetection/v2.0/yolox/yolox_l_8x8_300e_coco/yolox_l_8x8_300e_coco_20211126_140236-d3bd2b23.pth'\n        if pose_ckpt is None:\n            pose_ckpt = \"https://huggingface.co/wanghaofan/dw-ll_ucoco_384/resolve/main/dw-ll_ucoco_384.pth\"\n        # build detector\n        self.detector = init_detector(det_config, det_ckpt, device=device)\n        self.detector.cfg = adapt_mmdet_pipeline(self.detector.cfg)\n        # build pose estimator\n        self.pose_estimator = init_pose_estimator(\n            pose_config,\n            pose_ckpt,\n            device=device)\n\n    def to(self, device):\n        self.detector.to(device)\n        self.pose_estimator.to(device)\n        return self\n\n    def __call__(self, oriImg):\n        if not mmok:\n            return None, None\n        # predict bbox\n        det_result = inference_detector(self.detector, oriImg)\n        pred_instance = det_result.pred_instances.cpu().numpy()\n        bboxes = np.concatenate((pred_instance.bboxes, pred_instance.scores[:, None]), axis=1)\n        bboxes = bboxes[np.logical_and(pred_instance.labels == 0, pred_instance.scores > 0.5)]\n            # set NMS threshold\n        bboxes = bboxes[nms(bboxes, 0.7), :4]\n        # predict keypoints\n        if len(bboxes) == 0:\n            pose_results = inference_topdown(self.pose_estimator, oriImg)\n        else:\n            pose_results = inference_topdown(self.pose_estimator, oriImg, bboxes)\n        preds = merge_data_samples(pose_results)\n        preds = preds.pred_instances\n        # preds = pose_results[0].pred_instances\n        keypoints = preds.get('transformed_keypoints', preds.keypoints)\n        if 'keypoint_scores' in preds:\n            scores = preds.keypoint_scores\n        else:\n            scores = np.ones(keypoints.shape[:-1])\n        if 'keypoints_visible' in preds:\n            visible = preds.keypoints_visible\n        else:\n            visible = np.ones(keypoints.shape[:-1])\n        keypoints_info = np.concatenate(\n            (keypoints, scores[..., None], visible[..., None]),\n            axis=-1)\n        # compute neck joint\n        neck = np.mean(keypoints_info[:, [5, 6]], axis=1)\n        # neck score when visualizing pred\n        neck[:, 2:4] = np.logical_and(\n            keypoints_info[:, 5, 2:4] > 0.3,\n            keypoints_info[:, 6, 2:4] > 0.3).astype(int)\n        new_keypoints_info = np.insert(\n            keypoints_info, 17, neck, axis=1)\n        mmpose_idx = [17, 6, 8, 10, 7, 9, 12, 14, 16, 13, 15, 2, 1, 4, 3]\n        openpose_idx = [1, 2, 3, 4, 6, 7, 8, 9, 10, 12, 13, 14, 15, 16, 17]\n        new_keypoints_info[:, openpose_idx] = new_keypoints_info[:, mmpose_idx]\n        keypoints_info = new_keypoints_info\n        keypoints, scores, visible = keypoints_info[..., :2], keypoints_info[..., 2], keypoints_info[..., 3]\n        return keypoints, scores\n"
  },
  {
    "path": "modules/control/proc/edge.py",
    "content": "import warnings\nimport cv2\nimport numpy as np\nfrom PIL import Image\nfrom modules.control.util import HWC3, resize_image\n\ned = None\n\"\"\"\n    PFmode: bool\n    EdgeDetectionOperator: int\n    GradientThresholdValue: int\n    AnchorThresholdValue: int\n    ScanInterval: int\n    MinPathLength: int\n    Sigma: float\n    SumFlag: bool\n    NFAValidation: bool\n    MinLineLength: int\n    MaxDistanceBetweenTwoLines: float\n    LineFitErrorThreshold: float\n    MaxErrorThreshold: float\n\"\"\"\n\nclass EdgeDetector:\n    def __call__(self, input_image=None, pf=True, mode='edge', detect_resolution=512, image_resolution=512, output_type=None, **kwargs):\n        global ed # pylint: disable=global-statement\n        if ed is None:\n            try:\n                ed = cv2.ximgproc.createEdgeDrawing()\n            except Exception as e:\n                raise ImportError(\"Edge processor: invalid version of OpenCV found\") from e\n        params = cv2.ximgproc.EdgeDrawing.Params()\n        params.PFmode = pf\n        ed.setParams(params)\n        if \"img\" in kwargs:\n            warnings.warn(\"img is deprecated, please use `input_image=...` instead.\", DeprecationWarning)\n            input_image = kwargs.pop(\"img\")\n        if input_image is None:\n            raise ValueError(\"input_image must be defined.\")\n        if not isinstance(input_image, np.ndarray):\n            input_image = np.array(input_image, dtype=np.uint8)\n            output_type = output_type or \"pil\"\n        else:\n            output_type = output_type or \"np\"\n        input_image = HWC3(input_image)\n        input_image = resize_image(input_image, detect_resolution)\n        img_gray = cv2.cvtColor(input_image, cv2.COLOR_BGR2GRAY)\n        edges    = ed.detectEdges(img_gray)\n        if mode == 'edge':\n            edge_map = ed.getEdgeImage(edges)\n        else:\n            edge_map = ed.getGradientImage(edges)\n            edge_map = np.expand_dims(edge_map, axis=2)\n            edge_map = cv2.cvtColor(edge_map, cv2.COLOR_GRAY2BGR).astype(np.uint8)\n        edge_map = HWC3(edge_map)\n        img = resize_image(input_image, image_resolution)\n        H, W, _C = img.shape\n        edge_map = cv2.resize(edge_map, (W, H), interpolation=cv2.INTER_LINEAR)\n        if output_type == \"pil\":\n            edge_map = Image.fromarray(edge_map)\n        return edge_map\n"
  },
  {
    "path": "modules/control/proc/glpn.py",
    "content": "from PIL import Image\nimport numpy as np\nimport torch\nfrom transformers import AutoImageProcessor, GLPNForDepthEstimation\nfrom modules import devices\nfrom modules.shared import opts\n\n\nclass GLPNDetector:\n    def __init__(self, model=None, processor=None):\n        self.model = model\n        self.processor = processor\n\n    def __call__(self, input_image=None):\n        from modules.control.processors import cache_dir\n        if self.processor is None:\n            self.processor = AutoImageProcessor.from_pretrained(\"vinvino02/glpn-kitti\", cache_dir=cache_dir)\n        if self.model is None:\n            self.model = GLPNForDepthEstimation.from_pretrained(\"vinvino02/glpn-kitti\", cache_dir=cache_dir)\n\n        self.model.to(devices.device)\n        with devices.inference_context():\n            inputs = self.processor(images=input_image, return_tensors=\"pt\")\n            inputs.to(devices.device)\n            outputs = self.model(**inputs)\n            predicted_depth = outputs.predicted_depth\n            prediction = torch.nn.functional.interpolate(\n                predicted_depth.unsqueeze(1),\n                size=input_image.size[::-1],\n                mode=\"bicubic\",\n                align_corners=False,\n            )\n            output = prediction.squeeze().cpu().numpy()\n            formatted = 255 - (output * 255 / np.max(output)).astype(\"uint8\")\n        if opts.control_move_processor:\n            self.model.to('cpu')\n        depth = Image.fromarray(formatted)\n        depth = depth.convert('RGB')\n        return depth\n"
  },
  {
    "path": "modules/control/proc/hed.py",
    "content": "# This is an improved version and model of HED edge detection with Apache License, Version 2.0.\n# Please use this implementation in your products\n# This implementation may produce slightly different results from Saining Xie's official implementations,\n# but it generates smoother edges and is more suitable for ControlNet as well as other image-to-image translations.\n# Different from official models and other implementations, this is an RGB-input model (rather than BGR)\n# and in this way it works better for gradio's RGB protocol\n\nimport os\nimport cv2\nimport numpy as np\nimport torch\nfrom einops import rearrange\nfrom huggingface_hub import hf_hub_download\nfrom PIL import Image\nfrom modules import devices\nfrom modules.shared import opts\nfrom modules.control.util import HWC3, nms, resize_image, safe_step\n\n\nclass DoubleConvBlock(torch.nn.Module): # pylint: disable=abstract-method\n    def __init__(self, input_channel, output_channel, layer_number):\n        super().__init__()\n        self.convs = torch.nn.Sequential()\n        self.convs.append(torch.nn.Conv2d(in_channels=input_channel, out_channels=output_channel, kernel_size=(3, 3), stride=(1, 1), padding=1))\n        for _i in range(1, layer_number):\n            self.convs.append(torch.nn.Conv2d(in_channels=output_channel, out_channels=output_channel, kernel_size=(3, 3), stride=(1, 1), padding=1))\n        self.projection = torch.nn.Conv2d(in_channels=output_channel, out_channels=1, kernel_size=(1, 1), stride=(1, 1), padding=0)\n\n    def __call__(self, x, down_sampling=False):\n        h = x\n        if down_sampling:\n            h = torch.nn.functional.max_pool2d(h, kernel_size=(2, 2), stride=(2, 2))\n        for conv in self.convs:\n            h = conv(h)\n            h = torch.nn.functional.relu(h)\n        return h, self.projection(h)\n\n\nclass ControlNetHED_Apache2(torch.nn.Module): # pylint: disable=abstract-method\n    def __init__(self):\n        super().__init__()\n        self.norm = torch.nn.Parameter(torch.zeros(size=(1, 3, 1, 1)))\n        self.block1 = DoubleConvBlock(input_channel=3, output_channel=64, layer_number=2)\n        self.block2 = DoubleConvBlock(input_channel=64, output_channel=128, layer_number=2)\n        self.block3 = DoubleConvBlock(input_channel=128, output_channel=256, layer_number=3)\n        self.block4 = DoubleConvBlock(input_channel=256, output_channel=512, layer_number=3)\n        self.block5 = DoubleConvBlock(input_channel=512, output_channel=512, layer_number=3)\n\n    def __call__(self, x):\n        h = x - self.norm\n        h, projection1 = self.block1(h)\n        h, projection2 = self.block2(h, down_sampling=True)\n        h, projection3 = self.block3(h, down_sampling=True)\n        h, projection4 = self.block4(h, down_sampling=True)\n        h, projection5 = self.block5(h, down_sampling=True)\n        return projection1, projection2, projection3, projection4, projection5\n\nclass HEDdetector:\n    def __init__(self, model):\n        self.model = model\n\n    @classmethod\n    def from_pretrained(cls, pretrained_model_or_path, filename=None, cache_dir=None, local_files_only=False):\n        filename = filename or \"ControlNetHED.pth\"\n        if os.path.isdir(pretrained_model_or_path):\n            model_path = os.path.join(pretrained_model_or_path, filename)\n        else:\n            model_path = hf_hub_download(pretrained_model_or_path, filename, cache_dir=cache_dir, local_files_only=local_files_only)\n        model = ControlNetHED_Apache2()\n        model.load_state_dict(torch.load(model_path, map_location='cpu'))\n        model.float().eval()\n        return cls(model)\n\n    def to(self, device):\n        self.model.to(device)\n        return self\n\n    def __call__(self, input_image, detect_resolution=512, image_resolution=512, safe=False, output_type=\"pil\", scribble=False, **kwargs):\n        self.model.to(devices.device)\n        device = next(iter(self.model.parameters())).device\n        if not isinstance(input_image, np.ndarray):\n            input_image = np.array(input_image, dtype=np.uint8)\n        input_image = HWC3(input_image)\n        input_image = resize_image(input_image, detect_resolution)\n        assert input_image.ndim == 3\n        H, W, _C = input_image.shape\n        image_hed = torch.from_numpy(input_image.copy()).float().to(device)\n        image_hed = rearrange(image_hed, 'h w c -> 1 c h w')\n        edges = self.model(image_hed)\n        edges = [e.detach().cpu().numpy().astype(np.float32)[0, 0] for e in edges]\n        edges = [cv2.resize(e, (W, H), interpolation=cv2.INTER_LINEAR) for e in edges]\n        edges = np.stack(edges, axis=2)\n        edge = 1 / (1 + np.exp(-np.mean(edges, axis=2).astype(np.float64)))\n        if safe:\n            edge = safe_step(edge)\n        edge = (edge * 255.0).clip(0, 255).astype(np.uint8)\n        detected_map = edge\n        detected_map = HWC3(detected_map)\n        img = resize_image(input_image, image_resolution)\n        H, W, _C = img.shape\n        detected_map = cv2.resize(detected_map, (W, H), interpolation=cv2.INTER_LINEAR)\n        if scribble:\n            detected_map = nms(detected_map, 127, 3.0)\n            detected_map = cv2.GaussianBlur(detected_map, (0, 0), 3.0)\n            detected_map[detected_map > 4] = 255\n            detected_map[detected_map < 255] = 0\n        if opts.control_move_processor:\n            self.model.to('cpu')\n        if output_type == \"pil\":\n            detected_map = Image.fromarray(detected_map)\n        return detected_map\n"
  },
  {
    "path": "modules/control/proc/leres/__init__.py",
    "content": "import os\nimport cv2\nimport numpy as np\nimport torch\nfrom huggingface_hub import hf_hub_download\nfrom PIL import Image\nfrom modules import devices\nfrom modules.shared import opts\nfrom modules.control.util import HWC3, resize_image\nfrom .leres.depthmap import estimateboost, estimateleres\nfrom .leres.multi_depth_model_woauxi import RelDepthModel\nfrom .leres.net_tools import strip_prefix_if_present\nfrom .pix2pix.models.pix2pix4depth_model import Pix2Pix4DepthModel\nfrom .pix2pix.options.test_options import TestOptions\n\n\nclass LeresDetector:\n    def __init__(self, model, pix2pixmodel):\n        self.model = model\n        self.pix2pixmodel = pix2pixmodel\n\n    @classmethod\n    def from_pretrained(cls, pretrained_model_or_path, filename=None, pix2pix_filename=None, cache_dir=None, local_files_only=False):\n        filename = filename or \"res101.pth\"\n        pix2pix_filename = pix2pix_filename or \"latest_net_G.pth\"\n        if os.path.isdir(pretrained_model_or_path):\n            model_path = os.path.join(pretrained_model_or_path, filename)\n        else:\n            model_path = hf_hub_download(pretrained_model_or_path, filename, cache_dir=cache_dir, local_files_only=local_files_only)\n        checkpoint = torch.load(model_path, map_location=torch.device('cpu'))\n        model = RelDepthModel(backbone='resnext101')\n        model.load_state_dict(strip_prefix_if_present(checkpoint['depth_model'], \"module.\"), strict=True)\n        del checkpoint\n        if os.path.isdir(pretrained_model_or_path):\n            model_path = os.path.join(pretrained_model_or_path, pix2pix_filename)\n        else:\n            model_path = hf_hub_download(pretrained_model_or_path, pix2pix_filename, cache_dir=cache_dir, local_files_only=local_files_only)\n        opt = TestOptions().parse()\n        if not torch.cuda.is_available():\n            opt.gpu_ids = []  # cpu mode\n        pix2pixmodel = Pix2Pix4DepthModel(opt)\n        pix2pixmodel.save_dir = os.path.dirname(model_path)\n        pix2pixmodel.load_networks('latest')\n        pix2pixmodel.eval()\n        return cls(model, pix2pixmodel)\n\n    def to(self, device):\n        self.model.to(device)\n        return self\n\n    def __call__(self, input_image, thr_a=0, thr_b=0, boost=False, detect_resolution=512, image_resolution=512, output_type=\"pil\"):\n        self.model.to(devices.device)\n        # device = next(iter(self.model.parameters())).device\n        if not isinstance(input_image, np.ndarray):\n            input_image = np.array(input_image, dtype=np.uint8)\n        input_image = HWC3(input_image)\n        input_image = resize_image(input_image, detect_resolution)\n        assert input_image.ndim == 3\n        height, width, _dim = input_image.shape\n        if boost:\n            depth = estimateboost(input_image, self.model, 0, self.pix2pixmodel, max(width, height))\n        else:\n            depth = estimateleres(input_image, self.model, width, height)\n        numbytes=2\n        depth_min = depth.min()\n        depth_max = depth.max()\n        max_val = (2**(8*numbytes))-1\n        # check output before normalizing and mapping to 16 bit\n        if depth_max - depth_min > np.finfo(\"float\").eps:\n            out = max_val * (depth - depth_min) / (depth_max - depth_min)\n        else:\n            out = np.zeros(depth.shape)\n        # single channel, 16 bit image\n        depth_image = out.astype(\"uint16\")\n        # convert to uint8\n        depth_image = cv2.convertScaleAbs(depth_image, alpha=255.0/65535.0)\n        # remove near\n        if thr_a != 0:\n            thr_a = thr_a/100*255\n            depth_image = cv2.threshold(depth_image, thr_a, 255, cv2.THRESH_TOZERO)[1]\n        # invert image\n        depth_image = cv2.bitwise_not(depth_image)\n        # remove bg\n        if thr_b != 0:\n            thr_b = thr_b/100*255\n            depth_image = cv2.threshold(depth_image, thr_b, 255, cv2.THRESH_TOZERO)[1]\n        detected_map = depth_image\n        detected_map = HWC3(detected_map)\n        img = resize_image(input_image, image_resolution)\n        H, W, _C = img.shape\n        detected_map = cv2.resize(detected_map, (W, H), interpolation=cv2.INTER_LINEAR)\n        if opts.control_move_processor:\n            self.model.to('cpu')\n        if output_type == \"pil\":\n            detected_map = Image.fromarray(detected_map)\n        return detected_map\n"
  },
  {
    "path": "modules/control/proc/leres/leres/LICENSE",
    "content": "https://github.com/thygate/stable-diffusion-webui-depthmap-script\n\nMIT License\n\nCopyright (c) 2023 Bob Thiry\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n"
  },
  {
    "path": "modules/control/proc/leres/leres/Resnet.py",
    "content": "import torch.nn as nn\nimport torch.nn as NN\n\n__all__ = ['ResNet', 'resnet18', 'resnet34', 'resnet50', 'resnet101',\n           'resnet152']\n\n\nmodel_urls = {\n    'resnet18': 'https://download.pytorch.org/models/resnet18-5c106cde.pth',\n    'resnet34': 'https://download.pytorch.org/models/resnet34-333f7ec4.pth',\n    'resnet50': 'https://download.pytorch.org/models/resnet50-19c8e357.pth',\n    'resnet101': 'https://download.pytorch.org/models/resnet101-5d3b4d8f.pth',\n    'resnet152': 'https://download.pytorch.org/models/resnet152-b121ed2d.pth',\n}\n\n\ndef conv3x3(in_planes, out_planes, stride=1):\n    \"\"\"3x3 convolution with padding\"\"\"\n    return nn.Conv2d(in_planes, out_planes, kernel_size=3, stride=stride,\n                     padding=1, bias=False)\n\n\nclass BasicBlock(nn.Module):\n    expansion = 1\n\n    def __init__(self, inplanes, planes, stride=1, downsample=None):\n        super(BasicBlock, self).__init__()\n        self.conv1 = conv3x3(inplanes, planes, stride)\n        self.bn1 = NN.BatchNorm2d(planes) #NN.BatchNorm2d\n        self.relu = nn.ReLU(inplace=True)\n        self.conv2 = conv3x3(planes, planes)\n        self.bn2 = NN.BatchNorm2d(planes) #NN.BatchNorm2d\n        self.downsample = downsample\n        self.stride = stride\n\n    def forward(self, x):\n        residual = x\n\n        out = self.conv1(x)\n        out = self.bn1(out)\n        out = self.relu(out)\n\n        out = self.conv2(out)\n        out = self.bn2(out)\n\n        if self.downsample is not None:\n            residual = self.downsample(x)\n\n        out += residual\n        out = self.relu(out)\n\n        return out\n\n\nclass Bottleneck(nn.Module):\n    expansion = 4\n\n    def __init__(self, inplanes, planes, stride=1, downsample=None):\n        super(Bottleneck, self).__init__()\n        self.conv1 = nn.Conv2d(inplanes, planes, kernel_size=1, bias=False)\n        self.bn1 = NN.BatchNorm2d(planes) #NN.BatchNorm2d\n        self.conv2 = nn.Conv2d(planes, planes, kernel_size=3, stride=stride,\n                               padding=1, bias=False)\n        self.bn2 = NN.BatchNorm2d(planes) #NN.BatchNorm2d\n        self.conv3 = nn.Conv2d(planes, planes * self.expansion, kernel_size=1, bias=False)\n        self.bn3 = NN.BatchNorm2d(planes * self.expansion) #NN.BatchNorm2d\n        self.relu = nn.ReLU(inplace=True)\n        self.downsample = downsample\n        self.stride = stride\n\n    def forward(self, x):\n        residual = x\n\n        out = self.conv1(x)\n        out = self.bn1(out)\n        out = self.relu(out)\n\n        out = self.conv2(out)\n        out = self.bn2(out)\n        out = self.relu(out)\n\n        out = self.conv3(out)\n        out = self.bn3(out)\n\n        if self.downsample is not None:\n            residual = self.downsample(x)\n\n        out += residual\n        out = self.relu(out)\n\n        return out\n\n\nclass ResNet(nn.Module):\n\n    def __init__(self, block, layers, num_classes=1000):\n        self.inplanes = 64\n        super(ResNet, self).__init__()\n        self.conv1 = nn.Conv2d(3, 64, kernel_size=7, stride=2, padding=3,\n                               bias=False)\n        self.bn1 = NN.BatchNorm2d(64)  #NN.BatchNorm2d\n        self.relu = nn.ReLU(inplace=True)\n        self.maxpool = nn.MaxPool2d(kernel_size=3, stride=2, padding=1)\n        self.layer1 = self._make_layer(block, 64, layers[0])\n        self.layer2 = self._make_layer(block, 128, layers[1], stride=2)\n        self.layer3 = self._make_layer(block, 256, layers[2], stride=2)\n        self.layer4 = self._make_layer(block, 512, layers[3], stride=2)\n        #self.avgpool = nn.AvgPool2d(7, stride=1)\n        #self.fc = nn.Linear(512 * block.expansion, num_classes)\n\n        for m in self.modules():\n            if isinstance(m, nn.Conv2d):\n                nn.init.kaiming_normal_(m.weight, mode='fan_out', nonlinearity='relu')\n            elif isinstance(m, nn.BatchNorm2d):\n                nn.init.constant_(m.weight, 1)\n                nn.init.constant_(m.bias, 0)\n\n    def _make_layer(self, block, planes, blocks, stride=1):\n        downsample = None\n        if stride != 1 or self.inplanes != planes * block.expansion:\n            downsample = nn.Sequential(\n                nn.Conv2d(self.inplanes, planes * block.expansion,\n                          kernel_size=1, stride=stride, bias=False),\n                NN.BatchNorm2d(planes * block.expansion), #NN.BatchNorm2d\n            )\n\n        layers = []\n        layers.append(block(self.inplanes, planes, stride, downsample))\n        self.inplanes = planes * block.expansion\n        for _i in range(1, blocks):\n            layers.append(block(self.inplanes, planes))\n\n        return nn.Sequential(*layers)\n\n    def forward(self, x):\n        features = []\n\n        x = self.conv1(x)\n        x = self.bn1(x)\n        x = self.relu(x)\n        x = self.maxpool(x)\n\n        x = self.layer1(x)\n        features.append(x)\n        x = self.layer2(x)\n        features.append(x)\n        x = self.layer3(x)\n        features.append(x)\n        x = self.layer4(x)\n        features.append(x)\n\n        return features\n\n\ndef resnet18(pretrained=True, **kwargs):\n    \"\"\"Constructs a ResNet-18 model.\n    Args:\n        pretrained (bool): If True, returns a model pre-trained on ImageNet\n    \"\"\"\n    model = ResNet(BasicBlock, [2, 2, 2, 2], **kwargs)\n    return model\n\n\ndef resnet34(pretrained=True, **kwargs):\n    \"\"\"Constructs a ResNet-34 model.\n    Args:\n        pretrained (bool): If True, returns a model pre-trained on ImageNet\n    \"\"\"\n    model = ResNet(BasicBlock, [3, 4, 6, 3], **kwargs)\n    return model\n\n\ndef resnet50(pretrained=True, **kwargs):\n    \"\"\"Constructs a ResNet-50 model.\n    Args:\n        pretrained (bool): If True, returns a model pre-trained on ImageNet\n    \"\"\"\n    model = ResNet(Bottleneck, [3, 4, 6, 3], **kwargs)\n\n    return model\n\n\ndef resnet101(pretrained=True, **kwargs):\n    \"\"\"Constructs a ResNet-101 model.\n    Args:\n        pretrained (bool): If True, returns a model pre-trained on ImageNet\n    \"\"\"\n    model = ResNet(Bottleneck, [3, 4, 23, 3], **kwargs)\n\n    return model\n\n\ndef resnet152(pretrained=True, **kwargs):\n    \"\"\"Constructs a ResNet-152 model.\n    Args:\n        pretrained (bool): If True, returns a model pre-trained on ImageNet\n    \"\"\"\n    model = ResNet(Bottleneck, [3, 8, 36, 3], **kwargs)\n    return model\n"
  },
  {
    "path": "modules/control/proc/leres/leres/Resnext_torch.py",
    "content": "#!/usr/bin/env python\n# coding: utf-8\nimport torch.nn as nn\n\ntry:\n    from urllib import urlretrieve\nexcept ImportError:\n    from urllib.request import urlretrieve\n\n__all__ = ['resnext101_32x8d']\n\n\nmodel_urls = {\n    'resnext50_32x4d': 'https://download.pytorch.org/models/resnext50_32x4d-7cdf4587.pth',\n    'resnext101_32x8d': 'https://download.pytorch.org/models/resnext101_32x8d-8ba56ff5.pth',\n}\n\n\ndef conv3x3(in_planes, out_planes, stride=1, groups=1, dilation=1):\n    \"\"\"3x3 convolution with padding\"\"\"\n    return nn.Conv2d(in_planes, out_planes, kernel_size=3, stride=stride,\n                     padding=dilation, groups=groups, bias=False, dilation=dilation)\n\n\ndef conv1x1(in_planes, out_planes, stride=1):\n    \"\"\"1x1 convolution\"\"\"\n    return nn.Conv2d(in_planes, out_planes, kernel_size=1, stride=stride, bias=False)\n\n\nclass BasicBlock(nn.Module):\n    expansion = 1\n\n    def __init__(self, inplanes, planes, stride=1, downsample=None, groups=1,\n                 base_width=64, dilation=1, norm_layer=None):\n        super(BasicBlock, self).__init__()\n        if norm_layer is None:\n            norm_layer = nn.BatchNorm2d\n        if groups != 1 or base_width != 64:\n            raise ValueError('BasicBlock only supports groups=1 and base_width=64')\n        if dilation > 1:\n            raise NotImplementedError(\"Dilation > 1 not supported in BasicBlock\")\n        # Both self.conv1 and self.downsample layers downsample the input when stride != 1\n        self.conv1 = conv3x3(inplanes, planes, stride)\n        self.bn1 = norm_layer(planes)\n        self.relu = nn.ReLU(inplace=True)\n        self.conv2 = conv3x3(planes, planes)\n        self.bn2 = norm_layer(planes)\n        self.downsample = downsample\n        self.stride = stride\n\n    def forward(self, x):\n        identity = x\n\n        out = self.conv1(x)\n        out = self.bn1(out)\n        out = self.relu(out)\n\n        out = self.conv2(out)\n        out = self.bn2(out)\n\n        if self.downsample is not None:\n            identity = self.downsample(x)\n\n        out += identity\n        out = self.relu(out)\n\n        return out\n\n\nclass Bottleneck(nn.Module):\n    # Bottleneck in torchvision places the stride for downsampling at 3x3 convolution(self.conv2)\n    # while original implementation places the stride at the first 1x1 convolution(self.conv1)\n    # according to \"Deep residual learning for image recognition\"https://arxiv.org/abs/1512.03385.\n    # This variant is also known as ResNet V1.5 and improves accuracy according to\n    # https://ngc.nvidia.com/catalog/model-scripts/nvidia:resnet_50_v1_5_for_pytorch.\n\n    expansion = 4\n\n    def __init__(self, inplanes, planes, stride=1, downsample=None, groups=1,\n                 base_width=64, dilation=1, norm_layer=None):\n        super(Bottleneck, self).__init__()\n        if norm_layer is None:\n            norm_layer = nn.BatchNorm2d\n        width = int(planes * (base_width / 64.)) * groups\n        # Both self.conv2 and self.downsample layers downsample the input when stride != 1\n        self.conv1 = conv1x1(inplanes, width)\n        self.bn1 = norm_layer(width)\n        self.conv2 = conv3x3(width, width, stride, groups, dilation)\n        self.bn2 = norm_layer(width)\n        self.conv3 = conv1x1(width, planes * self.expansion)\n        self.bn3 = norm_layer(planes * self.expansion)\n        self.relu = nn.ReLU(inplace=True)\n        self.downsample = downsample\n        self.stride = stride\n\n    def forward(self, x):\n        identity = x\n\n        out = self.conv1(x)\n        out = self.bn1(out)\n        out = self.relu(out)\n\n        out = self.conv2(out)\n        out = self.bn2(out)\n        out = self.relu(out)\n\n        out = self.conv3(out)\n        out = self.bn3(out)\n\n        if self.downsample is not None:\n            identity = self.downsample(x)\n\n        out += identity\n        out = self.relu(out)\n\n        return out\n\n\nclass ResNet(nn.Module):\n\n    def __init__(self, block, layers, num_classes=1000, zero_init_residual=False,\n                 groups=1, width_per_group=64, replace_stride_with_dilation=None,\n                 norm_layer=None):\n        super(ResNet, self).__init__()\n        if norm_layer is None:\n            norm_layer = nn.BatchNorm2d\n        self._norm_layer = norm_layer\n\n        self.inplanes = 64\n        self.dilation = 1\n        if replace_stride_with_dilation is None:\n            # each element in the tuple indicates if we should replace\n            # the 2x2 stride with a dilated convolution instead\n            replace_stride_with_dilation = [False, False, False]\n        if len(replace_stride_with_dilation) != 3:\n            raise ValueError(\"replace_stride_with_dilation should be None \"\n                             \"or a 3-element tuple, got {}\".format(replace_stride_with_dilation))\n        self.groups = groups\n        self.base_width = width_per_group\n        self.conv1 = nn.Conv2d(3, self.inplanes, kernel_size=7, stride=2, padding=3,\n                               bias=False)\n        self.bn1 = norm_layer(self.inplanes)\n        self.relu = nn.ReLU(inplace=True)\n        self.maxpool = nn.MaxPool2d(kernel_size=3, stride=2, padding=1)\n        self.layer1 = self._make_layer(block, 64, layers[0])\n        self.layer2 = self._make_layer(block, 128, layers[1], stride=2,\n                                       dilate=replace_stride_with_dilation[0])\n        self.layer3 = self._make_layer(block, 256, layers[2], stride=2,\n                                       dilate=replace_stride_with_dilation[1])\n        self.layer4 = self._make_layer(block, 512, layers[3], stride=2,\n                                       dilate=replace_stride_with_dilation[2])\n        #self.avgpool = nn.AdaptiveAvgPool2d((1, 1))\n        #self.fc = nn.Linear(512 * block.expansion, num_classes)\n\n        for m in self.modules():\n            if isinstance(m, nn.Conv2d):\n                nn.init.kaiming_normal_(m.weight, mode='fan_out', nonlinearity='relu')\n            elif isinstance(m, (nn.BatchNorm2d, nn.GroupNorm)):\n                nn.init.constant_(m.weight, 1)\n                nn.init.constant_(m.bias, 0)\n\n        # Zero-initialize the last BN in each residual branch,\n        # so that the residual branch starts with zeros, and each residual block behaves like an identity.\n        # This improves the model by 0.2~0.3% according to https://arxiv.org/abs/1706.02677\n        if zero_init_residual:\n            for m in self.modules():\n                if isinstance(m, Bottleneck):\n                    nn.init.constant_(m.bn3.weight, 0)\n                elif isinstance(m, BasicBlock):\n                    nn.init.constant_(m.bn2.weight, 0)\n\n    def _make_layer(self, block, planes, blocks, stride=1, dilate=False):\n        norm_layer = self._norm_layer\n        downsample = None\n        previous_dilation = self.dilation\n        if dilate:\n            self.dilation *= stride\n            stride = 1\n        if stride != 1 or self.inplanes != planes * block.expansion:\n            downsample = nn.Sequential(\n                conv1x1(self.inplanes, planes * block.expansion, stride),\n                norm_layer(planes * block.expansion),\n            )\n\n        layers = []\n        layers.append(block(self.inplanes, planes, stride, downsample, self.groups,\n                            self.base_width, previous_dilation, norm_layer))\n        self.inplanes = planes * block.expansion\n        for _ in range(1, blocks):\n            layers.append(block(self.inplanes, planes, groups=self.groups,\n                                base_width=self.base_width, dilation=self.dilation,\n                                norm_layer=norm_layer))\n\n        return nn.Sequential(*layers)\n\n    def _forward_impl(self, x):\n        # See note [TorchScript super()]\n        features = []\n        x = self.conv1(x)\n        x = self.bn1(x)\n        x = self.relu(x)\n        x = self.maxpool(x)\n\n        x = self.layer1(x)\n        features.append(x)\n\n        x = self.layer2(x)\n        features.append(x)\n\n        x = self.layer3(x)\n        features.append(x)\n\n        x = self.layer4(x)\n        features.append(x)\n\n        #x = self.avgpool(x)\n        #x = torch.flatten(x, 1)\n        #x = self.fc(x)\n\n        return features\n\n    def forward(self, x):\n        return self._forward_impl(x)\n\n\n\ndef resnext101_32x8d(pretrained=True, **kwargs):\n    \"\"\"Constructs a ResNet-152 model.\n    Args:\n        pretrained (bool): If True, returns a model pre-trained on ImageNet\n    \"\"\"\n    kwargs['groups'] = 32\n    kwargs['width_per_group'] = 8\n\n    model = ResNet(Bottleneck, [3, 4, 23, 3], **kwargs)\n    return model\n"
  },
  {
    "path": "modules/control/proc/leres/leres/__init__.py",
    "content": ""
  },
  {
    "path": "modules/control/proc/leres/leres/depthmap.py",
    "content": "# Author: thygate\n# https://github.com/thygate/stable-diffusion-webui-depthmap-script\n\nimport gc\nfrom operator import getitem\n\nimport cv2\nimport numpy as np\nimport skimage.measure\nimport torch\nfrom torchvision.transforms import transforms\n\nfrom modules.control.util import torch_gc\n\nwhole_size_threshold = 1600  # R_max from the paper\npix2pixsize = 1024\n\ndef scale_torch(img):\n    \"\"\"\n    Scale the image and output it in torch.tensor.\n    :param img: input rgb is in shape [H, W, C], input depth/disp is in shape [H, W]\n    :param scale: the scale factor. float\n    :return: img. [C, H, W]\n    \"\"\"\n    if len(img.shape) == 2:\n        img = img[np.newaxis, :, :]\n    if img.shape[2] == 3:\n        transform = transforms.Compose([transforms.ToTensor(), transforms.Normalize((0.485, 0.456, 0.406) , (0.229, 0.224, 0.225) )])\n        img = transform(img.astype(np.float32))\n    else:\n        img = img.astype(np.float32)\n        img = torch.from_numpy(img)\n    return img\n\ndef estimateleres(img, model, w, h):\n    device = next(iter(model.parameters())).device\n    # leres transform input\n    rgb_c = img[:, :, ::-1].copy()\n    A_resize = cv2.resize(rgb_c, (w, h))\n    img_torch = scale_torch(A_resize)[None, :, :, :]\n\n    # compute\n    img_torch = img_torch.to(device)\n    prediction = model.depth_model(img_torch)\n\n    prediction = prediction.squeeze().cpu().numpy()\n    prediction = cv2.resize(prediction, (img.shape[1], img.shape[0]), interpolation=cv2.INTER_CUBIC)\n\n    return prediction\n\ndef generatemask(size):\n    # Generates a Guassian mask\n    mask = np.zeros(size, dtype=np.float32)\n    sigma = int(size[0]/16)\n    k_size = int(2 * np.ceil(2 * int(size[0]/16)) + 1)\n    mask[int(0.15*size[0]):size[0] - int(0.15*size[0]), int(0.15*size[1]): size[1] - int(0.15*size[1])] = 1\n    mask = cv2.GaussianBlur(mask, (int(k_size), int(k_size)), sigma)\n    mask = (mask - mask.min()) / (mask.max() - mask.min())\n    mask = mask.astype(np.float32)\n    return mask\n\ndef resizewithpool(img, size):\n    i_size = img.shape[0]\n    n = int(np.floor(i_size/size))\n\n    out = skimage.measure.block_reduce(img, (n, n), np.max)\n    return out\n\ndef rgb2gray(rgb):\n    # Converts rgb to gray\n    return np.dot(rgb[..., :3], [0.2989, 0.5870, 0.1140])\n\ndef calculateprocessingres(img, basesize, confidence=0.1, scale_threshold=3, whole_size_threshold=3000):\n    # Returns the R_x resolution described in section 5 of the main paper.\n\n    # Parameters:\n    #    img :input rgb image\n    #    basesize : size the dilation kernel which is equal to receptive field of the network.\n    #    confidence: value of x in R_x; allowed percentage of pixels that are not getting any contextual cue.\n    #    scale_threshold: maximum allowed upscaling on the input image ; it has been set to 3.\n    #    whole_size_threshold: maximum allowed resolution. (R_max from section 6 of the main paper)\n\n    # Returns:\n    #    outputsize_scale*speed_scale :The computed R_x resolution\n    #    patch_scale: K parameter from section 6 of the paper\n\n    # speed scale parameter is to process every image in a smaller size to accelerate the R_x resolution search\n    speed_scale = 32\n    image_dim = int(min(img.shape[0:2]))\n\n    gray = rgb2gray(img)\n    grad = np.abs(cv2.Sobel(gray, cv2.CV_64F, 0, 1, ksize=3)) + np.abs(cv2.Sobel(gray, cv2.CV_64F, 1, 0, ksize=3))\n    grad = cv2.resize(grad, (image_dim, image_dim), cv2.INTER_AREA)\n\n    # thresholding the gradient map to generate the edge-map as a proxy of the contextual cues\n    m = grad.min()\n    M = grad.max()\n    middle = m + (0.4 * (M - m))\n    grad[grad < middle] = 0\n    grad[grad >= middle] = 1\n\n    # dilation kernel with size of the receptive field\n    kernel = np.ones((int(basesize/speed_scale), int(basesize/speed_scale)), float)\n    # dilation kernel with size of the a quarter of receptive field used to compute k\n    # as described in section 6 of main paper\n    kernel2 = np.ones((int(basesize / (4*speed_scale)), int(basesize / (4*speed_scale))), float)\n\n    # Output resolution limit set by the whole_size_threshold and scale_threshold.\n    threshold = min(whole_size_threshold, scale_threshold * max(img.shape[:2]))\n\n    outputsize_scale = basesize / speed_scale\n    for p_size in range(int(basesize/speed_scale), int(threshold/speed_scale), int(basesize / (2*speed_scale))):\n        grad_resized = resizewithpool(grad, p_size)\n        grad_resized = cv2.resize(grad_resized, (p_size, p_size), cv2.INTER_NEAREST)\n        grad_resized[grad_resized >= 0.5] = 1\n        grad_resized[grad_resized < 0.5] = 0\n\n        dilated = cv2.dilate(grad_resized, kernel, iterations=1)\n        meanvalue = (1-dilated).mean()\n        if meanvalue > confidence:\n            break\n        else:\n            outputsize_scale = p_size\n\n    grad_region = cv2.dilate(grad_resized, kernel2, iterations=1)\n    patch_scale = grad_region.mean()\n\n    return int(outputsize_scale*speed_scale), patch_scale\n\n# Generate a double-input depth estimation\ndef doubleestimate(img, size1, size2, pix2pixsize, model, net_type, pix2pixmodel):\n    # Generate the low resolution estimation\n    estimate1 = singleestimate(img, size1, model, net_type)\n    # Resize to the inference size of merge network.\n    estimate1 = cv2.resize(estimate1, (pix2pixsize, pix2pixsize), interpolation=cv2.INTER_CUBIC)\n\n    # Generate the high resolution estimation\n    estimate2 = singleestimate(img, size2, model, net_type)\n    # Resize to the inference size of merge network.\n    estimate2 = cv2.resize(estimate2, (pix2pixsize, pix2pixsize), interpolation=cv2.INTER_CUBIC)\n\n    # Inference on the merge model\n    pix2pixmodel.set_input(estimate1, estimate2)\n    pix2pixmodel.test()\n    visuals = pix2pixmodel.get_current_visuals()\n    prediction_mapped = visuals['fake_B']\n    prediction_mapped = (prediction_mapped+1)/2\n    prediction_mapped = (prediction_mapped - torch.min(prediction_mapped)) / (\n                torch.max(prediction_mapped) - torch.min(prediction_mapped))\n    prediction_mapped = prediction_mapped.squeeze().cpu().numpy()\n\n    return prediction_mapped\n\n# Generate a single-input depth estimation\ndef singleestimate(img, msize, model, net_type):\n    # if net_type == 0:\n    return estimateleres(img, model, msize, msize)\n    # else:\n    # \treturn estimatemidasBoost(img, model, msize, msize)\n\ndef applyGridpatch(blsize, stride, img, box):\n    # Extract a simple grid patch.\n    counter1 = 0\n    patch_bound_list = {}\n    for k in range(blsize, img.shape[1] - blsize, stride):\n        for j in range(blsize, img.shape[0] - blsize, stride):\n            patch_bound_list[str(counter1)] = {}\n            patchbounds = [j - blsize, k - blsize, j - blsize + 2 * blsize, k - blsize + 2 * blsize]\n            patch_bound = [box[0] + patchbounds[1], box[1] + patchbounds[0], patchbounds[3] - patchbounds[1],\n                           patchbounds[2] - patchbounds[0]]\n            patch_bound_list[str(counter1)]['rect'] = patch_bound\n            patch_bound_list[str(counter1)]['size'] = patch_bound[2]\n            counter1 = counter1 + 1\n    return patch_bound_list\n\n# Generating local patches to perform the local refinement described in section 6 of the main paper.\ndef generatepatchs(img, base_size):\n\n    # Compute the gradients as a proxy of the contextual cues.\n    img_gray = rgb2gray(img)\n    whole_grad = np.abs(cv2.Sobel(img_gray, cv2.CV_64F, 0, 1, ksize=3)) +\\\n        np.abs(cv2.Sobel(img_gray, cv2.CV_64F, 1, 0, ksize=3))\n\n    threshold = whole_grad[whole_grad > 0].mean()\n    whole_grad[whole_grad < threshold] = 0\n\n    # We use the integral image to speed-up the evaluation of the amount of gradients for each patch.\n    gf = whole_grad.sum()/len(whole_grad.reshape(-1))\n    grad_integral_image = cv2.integral(whole_grad)\n\n    # Variables are selected such that the initial patch size would be the receptive field size\n    # and the stride is set to 1/3 of the receptive field size.\n    blsize = int(round(base_size/2))\n    stride = int(round(blsize*0.75))\n\n    # Get initial Grid\n    patch_bound_list = applyGridpatch(blsize, stride, img, [0, 0, 0, 0])\n\n    # Refine initial Grid of patches by discarding the flat (in terms of gradients of the rgb image) ones. Refine\n    # each patch size to ensure that there will be enough depth cues for the network to generate a consistent depth map.\n    patch_bound_list = adaptiveselection(grad_integral_image, patch_bound_list, gf)\n\n    # Sort the patch list to make sure the merging operation will be done with the correct order: starting from biggest\n    # patch\n    patchset = sorted(patch_bound_list.items(), key=lambda x: getitem(x[1], 'size'), reverse=True)\n    return patchset\n\ndef getGF_fromintegral(integralimage, rect):\n    # Computes the gradient density of a given patch from the gradient integral image.\n    x1 = rect[1]\n    x2 = rect[1]+rect[3]\n    y1 = rect[0]\n    y2 = rect[0]+rect[2]\n    value = integralimage[x2, y2]-integralimage[x1, y2]-integralimage[x2, y1]+integralimage[x1, y1]\n    return value\n\n# Adaptively select patches\ndef adaptiveselection(integral_grad, patch_bound_list, gf):\n    patchlist = {}\n    count = 0\n    height, width = integral_grad.shape\n\n    search_step = int(32/factor)\n\n    # Go through all patches\n    for c in range(len(patch_bound_list)):\n        # Get patch\n        bbox = patch_bound_list[str(c)]['rect']\n\n        # Compute the amount of gradients present in the patch from the integral image.\n        cgf = getGF_fromintegral(integral_grad, bbox)/(bbox[2]*bbox[3])\n\n        # Check if patching is beneficial by comparing the gradient density of the patch to\n        # the gradient density of the whole image\n        if cgf >= gf:\n            bbox_test = bbox.copy()\n            patchlist[str(count)] = {}\n\n            # Enlarge each patch until the gradient density of the patch is equal\n            # to the whole image gradient density\n            while True:\n\n                bbox_test[0] = bbox_test[0] - int(search_step/2)\n                bbox_test[1] = bbox_test[1] - int(search_step/2)\n\n                bbox_test[2] = bbox_test[2] + search_step\n                bbox_test[3] = bbox_test[3] + search_step\n\n                # Check if we are still within the image\n                if bbox_test[0] < 0 or bbox_test[1] < 0 or bbox_test[1] + bbox_test[3] >= height \\\n                        or bbox_test[0] + bbox_test[2] >= width:\n                    break\n\n                # Compare gradient density\n                cgf = getGF_fromintegral(integral_grad, bbox_test)/(bbox_test[2]*bbox_test[3])\n                if cgf < gf:\n                    break\n                bbox = bbox_test.copy()\n\n            # Add patch to selected patches\n            patchlist[str(count)]['rect'] = bbox\n            patchlist[str(count)]['size'] = bbox[2]\n            count = count + 1\n\n    # Return selected patches\n    return patchlist\n\ndef impatch(image, rect):\n    # Extract the given patch pixels from a given image.\n    w1 = rect[0]\n    h1 = rect[1]\n    w2 = w1 + rect[2]\n    h2 = h1 + rect[3]\n    image_patch = image[h1:h2, w1:w2]\n    return image_patch\n\nclass ImageandPatchs:\n    def __init__(self, root_dir, name, patchsinfo, rgb_image, scale=1):\n        self.root_dir = root_dir\n        self.patchsinfo = patchsinfo\n        self.name = name\n        self.patchs = patchsinfo\n        self.scale = scale\n\n        self.rgb_image = cv2.resize(rgb_image, (round(rgb_image.shape[1]*scale), round(rgb_image.shape[0]*scale)),\n                                    interpolation=cv2.INTER_CUBIC)\n\n        self.do_have_estimate = False\n        self.estimation_updated_image = None\n        self.estimation_base_image = None\n\n    def __len__(self):\n        return len(self.patchs)\n\n    def set_base_estimate(self, est):\n        self.estimation_base_image = est\n        if self.estimation_updated_image is not None:\n            self.do_have_estimate = True\n\n    def set_updated_estimate(self, est):\n        self.estimation_updated_image = est\n        if self.estimation_base_image is not None:\n            self.do_have_estimate = True\n\n    def __getitem__(self, index):\n        patch_id = int(self.patchs[index][0])\n        rect = np.array(self.patchs[index][1]['rect'])\n        msize = self.patchs[index][1]['size']\n\n        ## applying scale to rect:\n        rect = np.round(rect * self.scale)\n        rect = rect.astype('int')\n        msize = round(msize * self.scale)\n\n        patch_rgb = impatch(self.rgb_image, rect)\n        if self.do_have_estimate:\n            patch_whole_estimate_base = impatch(self.estimation_base_image, rect)\n            patch_whole_estimate_updated = impatch(self.estimation_updated_image, rect)\n            return {'patch_rgb': patch_rgb, 'patch_whole_estimate_base': patch_whole_estimate_base,\n                    'patch_whole_estimate_updated': patch_whole_estimate_updated, 'rect': rect,\n                    'size': msize, 'id': patch_id}\n        else:\n            return {'patch_rgb': patch_rgb, 'rect': rect, 'size': msize, 'id': patch_id}\n\n    def print_options(self, opt):\n        \"\"\"Print and save options\n\n        It will print both current options and default values(if different).\n        It will save options into a text file / [checkpoints_dir] / opt.txt\n        \"\"\"\n        message = ''\n        message += '----------------- Options ---------------\\n'\n        for k, v in sorted(vars(opt).items()):\n            comment = ''\n            default = self.parser.get_default(k)\n            if v != default:\n                comment = '\\t[default: %s]' % str(default)\n            message += '{:>25}: {:<30}{}\\n'.format(str(k), str(v), comment)\n        message += '----------------- End -------------------'\n        print(message)\n\n        # save to the disk\n        \"\"\"\n        expr_dir = os.path.join(opt.checkpoints_dir, opt.name)\n        util.mkdirs(expr_dir)\n        file_name = os.path.join(expr_dir, '{}_opt.txt'.format(opt.phase))\n        with open(file_name, 'wt') as opt_file:\n            opt_file.write(message)\n            opt_file.write('\\n')\n        \"\"\"\n\n    def parse(self):\n        \"\"\"Parse our options, create checkpoints directory suffix, and set up gpu device.\"\"\"\n        opt = self.gather_options()\n        opt.isTrain = self.isTrain   # train or test\n\n        # process opt.suffix\n        if opt.suffix:\n            suffix = ('_' + opt.suffix.format(**vars(opt))) if opt.suffix != '' else ''\n            opt.name = opt.name + suffix\n\n        #self.print_options(opt)\n\n        # set gpu ids\n        str_ids = opt.gpu_ids.split(',')\n        opt.gpu_ids = []\n        for str_id in str_ids:\n            id = int(str_id)\n            if id >= 0:\n                opt.gpu_ids.append(id)\n        #if len(opt.gpu_ids) > 0:\n        #    torch.cuda.set_device(opt.gpu_ids[0])\n\n        self.opt = opt\n        return self.opt\n\n\ndef estimateboost(img, model, model_type, pix2pixmodel, max_res=512, depthmap_script_boost_rmax=None):\n    global whole_size_threshold\n\n    # get settings\n    if depthmap_script_boost_rmax:\n        whole_size_threshold = depthmap_script_boost_rmax\n\n    if model_type == 0: #leres\n        net_receptive_field_size = 448\n        patch_netsize = 2 * net_receptive_field_size\n    elif model_type == 1: #dpt_beit_large_512\n        net_receptive_field_size = 512\n        patch_netsize = 2 * net_receptive_field_size\n    else: #other midas\n        net_receptive_field_size = 384\n        patch_netsize = 2 * net_receptive_field_size\n\n    gc.collect()\n    torch_gc()\n\n    # Generate mask used to smoothly blend the local pathc estimations to the base estimate.\n    # It is arbitrarily large to avoid artifacts during rescaling for each crop.\n    mask_org = generatemask((3000, 3000))\n    mask = mask_org.copy()\n\n    # Value x of R_x defined in the section 5 of the main paper.\n    r_threshold_value = 0.2\n    #if R0:\n    #\tr_threshold_value = 0\n\n    input_resolution = img.shape\n    scale_threshold = 3  # Allows up-scaling with a scale up to 3\n\n    # Find the best input resolution R-x. The resolution search described in section 5-double estimation of the main paper and section B of the\n    # supplementary material.\n    whole_image_optimal_size, patch_scale = calculateprocessingres(img, net_receptive_field_size, r_threshold_value, scale_threshold, whole_size_threshold)\n\n    # print('wholeImage being processed in :', whole_image_optimal_size)\n\n    # Generate the base estimate using the double estimation.\n    whole_estimate = doubleestimate(img, net_receptive_field_size, whole_image_optimal_size, pix2pixsize, model, model_type, pix2pixmodel)\n\n    # Compute the multiplier described in section 6 of the main paper to make sure our initial patch can select\n    # small high-density regions of the image.\n    global factor\n    factor = max(min(1, 4 * patch_scale * whole_image_optimal_size / whole_size_threshold), 0.2)\n    # print('Adjust factor is:', 1/factor)\n\n    # Check if Local boosting is beneficial.\n    if max_res < whole_image_optimal_size:\n        # print(\"No Local boosting. Specified Max Res is smaller than R20, Returning doubleestimate result\")\n        return cv2.resize(whole_estimate, (input_resolution[1], input_resolution[0]), interpolation=cv2.INTER_CUBIC)\n\n    # Compute the default target resolution.\n    if img.shape[0] > img.shape[1]:\n        a = 2 * whole_image_optimal_size\n        b = round(2 * whole_image_optimal_size * img.shape[1] / img.shape[0])\n    else:\n        a = round(2 * whole_image_optimal_size * img.shape[0] / img.shape[1])\n        b = 2 * whole_image_optimal_size\n    b = int(round(b / factor))\n    a = int(round(a / factor))\n\n    \"\"\"\n    # recompute a, b and saturate to max res.\n    if max(a,b) > max_res:\n        print('Default Res is higher than max-res: Reducing final resolution')\n        if img.shape[0] > img.shape[1]:\n            a = max_res\n            b = round(max_res * img.shape[1] / img.shape[0])\n        else:\n            a = round(max_res * img.shape[0] / img.shape[1])\n            b = max_res\n        b = int(b)\n        a = int(a)\n    \"\"\"\n\n    img = cv2.resize(img, (b, a), interpolation=cv2.INTER_CUBIC)\n\n    # Extract selected patches for local refinement\n    base_size = net_receptive_field_size * 2\n    patchset = generatepatchs(img, base_size)\n\n    # print('Target resolution: ', img.shape)\n\n    # Computing a scale in case user prompted to generate the results as the same resolution of the input.\n    # Notice that our method output resolution is independent of the input resolution and this parameter will only\n    # enable a scaling operation during the local patch merge implementation to generate results with the same resolution\n    # as the input.\n    \"\"\"\n    if output_resolution == 1:\n        mergein_scale = input_resolution[0] / img.shape[0]\n        print('Dynamicly change merged-in resolution; scale:', mergein_scale)\n    else:\n        mergein_scale = 1\n    \"\"\"\n    # always rescale to input res for now\n    mergein_scale = input_resolution[0] / img.shape[0]\n\n    imageandpatchs = ImageandPatchs('', '', patchset, img, mergein_scale)\n    whole_estimate_resized = cv2.resize(whole_estimate, (round(img.shape[1]*mergein_scale),\n                                        round(img.shape[0]*mergein_scale)), interpolation=cv2.INTER_CUBIC)\n    imageandpatchs.set_base_estimate(whole_estimate_resized.copy())\n    imageandpatchs.set_updated_estimate(whole_estimate_resized.copy())\n\n    print('Resulting depthmap resolution will be :', whole_estimate_resized.shape[:2])\n    print('Patches to process: '+str(len(imageandpatchs)))\n\n    # Enumerate through all patches, generate their estimations and refining the base estimate.\n    for patch_ind in range(len(imageandpatchs)):\n\n        # Get patch information\n        patch = imageandpatchs[patch_ind] # patch object\n        patch_rgb = patch['patch_rgb'] # rgb patch\n        patch_whole_estimate_base = patch['patch_whole_estimate_base'] # corresponding patch from base\n        rect = patch['rect'] # patch size and location\n        patch['id'] # patch ID\n        org_size = patch_whole_estimate_base.shape # the original size from the unscaled input\n        print('\\t Processing patch', patch_ind, '/', len(imageandpatchs)-1, '|', rect)\n\n        # We apply double estimation for patches. The high resolution value is fixed to twice the receptive\n        # field size of the network for patches to accelerate the process.\n        patch_estimation = doubleestimate(patch_rgb, net_receptive_field_size, patch_netsize, pix2pixsize, model, model_type, pix2pixmodel)\n        patch_estimation = cv2.resize(patch_estimation, (pix2pixsize, pix2pixsize), interpolation=cv2.INTER_CUBIC)\n        patch_whole_estimate_base = cv2.resize(patch_whole_estimate_base, (pix2pixsize, pix2pixsize), interpolation=cv2.INTER_CUBIC)\n\n        # Merging the patch estimation into the base estimate using our merge network:\n        # We feed the patch estimation and the same region from the updated base estimate to the merge network\n        # to generate the target estimate for the corresponding region.\n        pix2pixmodel.set_input(patch_whole_estimate_base, patch_estimation)\n\n        # Run merging network\n        pix2pixmodel.test()\n        visuals = pix2pixmodel.get_current_visuals()\n\n        prediction_mapped = visuals['fake_B']\n        prediction_mapped = (prediction_mapped+1)/2\n        prediction_mapped = prediction_mapped.squeeze().cpu().numpy()\n\n        mapped = prediction_mapped\n\n        # We use a simple linear polynomial to make sure the result of the merge network would match the values of\n        # base estimate\n        p_coef = np.polyfit(mapped.reshape(-1), patch_whole_estimate_base.reshape(-1), deg=1)\n        merged = np.polyval(p_coef, mapped.reshape(-1)).reshape(mapped.shape)\n\n        merged = cv2.resize(merged, (org_size[1],org_size[0]), interpolation=cv2.INTER_CUBIC)\n\n        # Get patch size and location\n        w1 = rect[0]\n        h1 = rect[1]\n        w2 = w1 + rect[2]\n        h2 = h1 + rect[3]\n\n        # To speed up the implementation, we only generate the Gaussian mask once with a sufficiently large size\n        # and resize it to our needed size while merging the patches.\n        if mask.shape != org_size:\n            mask = cv2.resize(mask_org, (org_size[1],org_size[0]), interpolation=cv2.INTER_LINEAR)\n\n        tobemergedto = imageandpatchs.estimation_updated_image\n\n        # Update the whole estimation:\n        # We use a simple Gaussian mask to blend the merged patch region with the base estimate to ensure seamless\n        # blending at the boundaries of the patch region.\n        tobemergedto[h1:h2, w1:w2] = np.multiply(tobemergedto[h1:h2, w1:w2], 1 - mask) + np.multiply(merged, mask)\n        imageandpatchs.set_updated_estimate(tobemergedto)\n\n    # output\n    return cv2.resize(imageandpatchs.estimation_updated_image, (input_resolution[1], input_resolution[0]), interpolation=cv2.INTER_CUBIC)\n"
  },
  {
    "path": "modules/control/proc/leres/leres/multi_depth_model_woauxi.py",
    "content": "import torch\nimport torch.nn as nn\n\nfrom . import network_auxi as network\nfrom .net_tools import get_func\n\n\nclass RelDepthModel(nn.Module):\n    def __init__(self, backbone='resnet50'):\n        super(RelDepthModel, self).__init__()\n        if backbone == 'resnet50':\n            encoder = 'resnet50_stride32'\n        elif backbone == 'resnext101':\n            encoder = 'resnext101_stride32x8d'\n        self.depth_model = DepthModel(encoder)\n\n    def inference(self, rgb):\n        input = rgb.to(self.depth_model.device)\n        depth = self.depth_model(input)\n        #pred_depth_out = depth - depth.min() + 0.01\n        return depth #pred_depth_out\n\n\nclass DepthModel(nn.Module):\n    def __init__(self, encoder):\n        super(DepthModel, self).__init__()\n        backbone = network.__name__.split('.')[-1] + '.' + encoder\n        self.encoder_modules = get_func(backbone)()\n        self.decoder_modules = network.Decoder()\n\n    def forward(self, x):\n        lateral_out = self.encoder_modules(x)\n        out_logit = self.decoder_modules(lateral_out)\n        return out_logit\n"
  },
  {
    "path": "modules/control/proc/leres/leres/net_tools.py",
    "content": "import os\nfrom collections import OrderedDict\nimport importlib\nimport torch\n\n\ndef get_func(func_name):\n    \"\"\"Helper to return a function object by name. func_name must identify a\n    function in this module or the path to a function relative to the base\n    'modeling' module.\n    \"\"\"\n    if func_name == '':\n        return None\n    try:\n        parts = func_name.split('.')\n        # Refers to a function in this module\n        if len(parts) == 1:\n            return globals()[parts[0]]\n        # Otherwise, assume we're referencing a module under modeling\n        module_name = 'modules.control.proc.leres.leres.' + '.'.join(parts[:-1])\n        module = importlib.import_module(module_name)\n        return getattr(module, parts[-1])\n    except Exception:\n        print('Failed to find function: %s', func_name)\n        raise\n\ndef load_ckpt(args, depth_model, shift_model, focal_model):\n    \"\"\"\n    Load checkpoint.\n    \"\"\"\n    if os.path.isfile(args.load_ckpt):\n        print(\"loading checkpoint %s\" % args.load_ckpt)\n        checkpoint = torch.load(args.load_ckpt)\n        if shift_model is not None:\n            shift_model.load_state_dict(strip_prefix_if_present(checkpoint['shift_model'], 'module.'),\n                                    strict=True)\n        if focal_model is not None:\n            focal_model.load_state_dict(strip_prefix_if_present(checkpoint['focal_model'], 'module.'),\n                                    strict=True)\n        depth_model.load_state_dict(strip_prefix_if_present(checkpoint['depth_model'], \"module.\"),\n                                    strict=True)\n        del checkpoint\n        if torch.cuda.is_available():\n            torch.cuda.empty_cache()\n\n\ndef strip_prefix_if_present(state_dict, prefix):\n    keys = sorted(state_dict.keys())\n    if not all(key.startswith(prefix) for key in keys):\n        return state_dict\n    stripped_state_dict = OrderedDict()\n    for key, value in state_dict.items():\n        stripped_state_dict[key.replace(prefix, \"\")] = value\n    return stripped_state_dict\n"
  },
  {
    "path": "modules/control/proc/leres/leres/network_auxi.py",
    "content": "import torch\nimport torch.nn as nn\nimport torch.nn.init as init\n\nfrom . import Resnet, Resnext_torch\n\n\ndef resnet50_stride32():\n    return DepthNet(backbone='resnet', depth=50, upfactors=[2, 2, 2, 2])\n\ndef resnext101_stride32x8d():\n    return DepthNet(backbone='resnext101_32x8d', depth=101, upfactors=[2, 2, 2, 2])\n\n\nclass Decoder(nn.Module):\n    def __init__(self):\n        super(Decoder, self).__init__()\n        self.inchannels =  [256, 512, 1024, 2048]\n        self.midchannels = [256, 256, 256, 512]\n        self.upfactors = [2,2,2,2]\n        self.outchannels = 1\n\n        self.conv = FTB(inchannels=self.inchannels[3], midchannels=self.midchannels[3])\n        self.conv1 = nn.Conv2d(in_channels=self.midchannels[3], out_channels=self.midchannels[2], kernel_size=3, padding=1, stride=1, bias=True)\n        self.upsample = nn.Upsample(scale_factor=self.upfactors[3], mode='bilinear', align_corners=True)\n\n        self.ffm2 = FFM(inchannels=self.inchannels[2], midchannels=self.midchannels[2], outchannels = self.midchannels[2], upfactor=self.upfactors[2])\n        self.ffm1 = FFM(inchannels=self.inchannels[1], midchannels=self.midchannels[1], outchannels = self.midchannels[1], upfactor=self.upfactors[1])\n        self.ffm0 = FFM(inchannels=self.inchannels[0], midchannels=self.midchannels[0], outchannels = self.midchannels[0], upfactor=self.upfactors[0])\n\n        self.outconv = AO(inchannels=self.midchannels[0], outchannels=self.outchannels, upfactor=2)\n        self._init_params()\n\n    def _init_params(self):\n        for m in self.modules():\n            if isinstance(m, nn.Conv2d):\n                init.normal_(m.weight, std=0.01)\n                if m.bias is not None:\n                    init.constant_(m.bias, 0)\n            elif isinstance(m, nn.ConvTranspose2d):\n                init.normal_(m.weight, std=0.01)\n                if m.bias is not None:\n                    init.constant_(m.bias, 0)\n            elif isinstance(m, nn.BatchNorm2d): #NN.BatchNorm2d\n                init.constant_(m.weight, 1)\n                init.constant_(m.bias, 0)\n            elif isinstance(m, nn.Linear):\n                init.normal_(m.weight, std=0.01)\n                if m.bias is not None:\n                    init.constant_(m.bias, 0)\n\n    def forward(self, features):\n        x_32x = self.conv(features[3])  # 1/32\n        x_32 = self.conv1(x_32x)\n        x_16 = self.upsample(x_32)  # 1/16\n\n        x_8 = self.ffm2(features[2], x_16)  # 1/8\n        x_4 = self.ffm1(features[1], x_8)  # 1/4\n        x_2 = self.ffm0(features[0], x_4)  # 1/2\n        #-----------------------------------------\n        x = self.outconv(x_2)  # original size\n        return x\n\nclass DepthNet(nn.Module):\n    __factory = {\n        18: Resnet.resnet18,\n        34: Resnet.resnet34,\n        50: Resnet.resnet50,\n        101: Resnet.resnet101,\n        152: Resnet.resnet152\n    }\n    def __init__(self,\n                 backbone='resnet',\n                 depth=50,\n                 upfactors=None):\n        if upfactors is None:\n            upfactors = [2, 2, 2, 2]\n        super(DepthNet, self).__init__()\n        self.backbone = backbone\n        self.depth = depth\n        self.pretrained = False\n        self.inchannels = [256, 512, 1024, 2048]\n        self.midchannels = [256, 256, 256, 512]\n        self.upfactors = upfactors\n        self.outchannels = 1\n\n        # Build model\n        if self.backbone == 'resnet':\n            if self.depth not in DepthNet.__factory:\n                raise KeyError(\"Unsupported depth:\", self.depth)\n            self.encoder = DepthNet.__factory[depth](pretrained=self.pretrained)\n        elif self.backbone == 'resnext101_32x8d':\n            self.encoder = Resnext_torch.resnext101_32x8d(pretrained=self.pretrained)\n        else:\n            self.encoder = Resnext_torch.resnext101(pretrained=self.pretrained)\n\n    def forward(self, x):\n        x = self.encoder(x)  # 1/32, 1/16, 1/8, 1/4\n        return x\n\n\nclass FTB(nn.Module):\n    def __init__(self, inchannels, midchannels=512):\n        super(FTB, self).__init__()\n        self.in1 = inchannels\n        self.mid = midchannels\n        self.conv1 = nn.Conv2d(in_channels=self.in1, out_channels=self.mid, kernel_size=3, padding=1, stride=1,\n                               bias=True)\n        # NN.BatchNorm2d\n        self.conv_branch = nn.Sequential(nn.ReLU(inplace=True), \\\n                                         nn.Conv2d(in_channels=self.mid, out_channels=self.mid, kernel_size=3,\n                                                   padding=1, stride=1, bias=True), \\\n                                         nn.BatchNorm2d(num_features=self.mid), \\\n                                         nn.ReLU(inplace=True), \\\n                                         nn.Conv2d(in_channels=self.mid, out_channels=self.mid, kernel_size=3,\n                                                   padding=1, stride=1, bias=True))\n        self.relu = nn.ReLU(inplace=True)\n\n        self.init_params()\n\n    def forward(self, x):\n        x = self.conv1(x)\n        x = x + self.conv_branch(x)\n        x = self.relu(x)\n\n        return x\n\n    def init_params(self):\n        for m in self.modules():\n            if isinstance(m, nn.Conv2d):\n                init.normal_(m.weight, std=0.01)\n                if m.bias is not None:\n                    init.constant_(m.bias, 0)\n            elif isinstance(m, nn.ConvTranspose2d):\n                # init.kaiming_normal_(m.weight, mode='fan_out')\n                init.normal_(m.weight, std=0.01)\n                # init.xavier_normal_(m.weight)\n                if m.bias is not None:\n                    init.constant_(m.bias, 0)\n            elif isinstance(m, nn.BatchNorm2d):  # NN.BatchNorm2d\n                init.constant_(m.weight, 1)\n                init.constant_(m.bias, 0)\n            elif isinstance(m, nn.Linear):\n                init.normal_(m.weight, std=0.01)\n                if m.bias is not None:\n                    init.constant_(m.bias, 0)\n\n\nclass ATA(nn.Module):\n    def __init__(self, inchannels, reduction=8):\n        super(ATA, self).__init__()\n        self.inchannels = inchannels\n        self.avg_pool = nn.AdaptiveAvgPool2d(1)\n        self.fc = nn.Sequential(nn.Linear(self.inchannels * 2, self.inchannels // reduction),\n                                nn.ReLU(inplace=True),\n                                nn.Linear(self.inchannels // reduction, self.inchannels),\n                                nn.Sigmoid())\n        self.init_params()\n\n    def forward(self, low_x, high_x):\n        n, c, _, _ = low_x.size()\n        x = torch.cat([low_x, high_x], 1)\n        x = self.avg_pool(x)\n        x = x.view(n, -1)\n        x = self.fc(x).view(n, c, 1, 1)\n        x = low_x * x + high_x\n\n        return x\n\n    def init_params(self):\n        for m in self.modules():\n            if isinstance(m, nn.Conv2d):\n                # init.kaiming_normal_(m.weight, mode='fan_out')\n                # init.normal(m.weight, std=0.01)\n                init.xavier_normal_(m.weight)\n                if m.bias is not None:\n                    init.constant_(m.bias, 0)\n            elif isinstance(m, nn.ConvTranspose2d):\n                # init.kaiming_normal_(m.weight, mode='fan_out')\n                # init.normal_(m.weight, std=0.01)\n                init.xavier_normal_(m.weight)\n                if m.bias is not None:\n                    init.constant_(m.bias, 0)\n            elif isinstance(m, nn.BatchNorm2d):  # NN.BatchNorm2d\n                init.constant_(m.weight, 1)\n                init.constant_(m.bias, 0)\n            elif isinstance(m, nn.Linear):\n                init.normal_(m.weight, std=0.01)\n                if m.bias is not None:\n                    init.constant_(m.bias, 0)\n\n\nclass FFM(nn.Module):\n    def __init__(self, inchannels, midchannels, outchannels, upfactor=2):\n        super(FFM, self).__init__()\n        self.inchannels = inchannels\n        self.midchannels = midchannels\n        self.outchannels = outchannels\n        self.upfactor = upfactor\n\n        self.ftb1 = FTB(inchannels=self.inchannels, midchannels=self.midchannels)\n        # self.ata = ATA(inchannels = self.midchannels)\n        self.ftb2 = FTB(inchannels=self.midchannels, midchannels=self.outchannels)\n\n        self.upsample = nn.Upsample(scale_factor=self.upfactor, mode='bilinear', align_corners=True)\n\n        self.init_params()\n\n    def forward(self, low_x, high_x):\n        x = self.ftb1(low_x)\n        x = x + high_x\n        x = self.ftb2(x)\n        x = self.upsample(x)\n\n        return x\n\n    def init_params(self):\n        for m in self.modules():\n            if isinstance(m, nn.Conv2d):\n                # init.kaiming_normal_(m.weight, mode='fan_out')\n                init.normal_(m.weight, std=0.01)\n                # init.xavier_normal_(m.weight)\n                if m.bias is not None:\n                    init.constant_(m.bias, 0)\n            elif isinstance(m, nn.ConvTranspose2d):\n                # init.kaiming_normal_(m.weight, mode='fan_out')\n                init.normal_(m.weight, std=0.01)\n                # init.xavier_normal_(m.weight)\n                if m.bias is not None:\n                    init.constant_(m.bias, 0)\n            elif isinstance(m, nn.BatchNorm2d):  # NN.Batchnorm2d\n                init.constant_(m.weight, 1)\n                init.constant_(m.bias, 0)\n            elif isinstance(m, nn.Linear):\n                init.normal_(m.weight, std=0.01)\n                if m.bias is not None:\n                    init.constant_(m.bias, 0)\n\n\nclass AO(nn.Module):\n    # Adaptive output module\n    def __init__(self, inchannels, outchannels, upfactor=2):\n        super(AO, self).__init__()\n        self.inchannels = inchannels\n        self.outchannels = outchannels\n        self.upfactor = upfactor\n\n        self.adapt_conv = nn.Sequential(\n            nn.Conv2d(in_channels=self.inchannels, out_channels=self.inchannels // 2, kernel_size=3, padding=1,\n                      stride=1, bias=True), \\\n            nn.BatchNorm2d(num_features=self.inchannels // 2), \\\n            nn.ReLU(inplace=True), \\\n            nn.Conv2d(in_channels=self.inchannels // 2, out_channels=self.outchannels, kernel_size=3, padding=1,\n                      stride=1, bias=True), \\\n            nn.Upsample(scale_factor=self.upfactor, mode='bilinear', align_corners=True))\n\n        self.init_params()\n\n    def forward(self, x):\n        x = self.adapt_conv(x)\n        return x\n\n    def init_params(self):\n        for m in self.modules():\n            if isinstance(m, nn.Conv2d):\n                # init.kaiming_normal_(m.weight, mode='fan_out')\n                init.normal_(m.weight, std=0.01)\n                # init.xavier_normal_(m.weight)\n                if m.bias is not None:\n                    init.constant_(m.bias, 0)\n            elif isinstance(m, nn.ConvTranspose2d):\n                # init.kaiming_normal_(m.weight, mode='fan_out')\n                init.normal_(m.weight, std=0.01)\n                # init.xavier_normal_(m.weight)\n                if m.bias is not None:\n                    init.constant_(m.bias, 0)\n            elif isinstance(m, nn.BatchNorm2d):  # NN.Batchnorm2d\n                init.constant_(m.weight, 1)\n                init.constant_(m.bias, 0)\n            elif isinstance(m, nn.Linear):\n                init.normal_(m.weight, std=0.01)\n                if m.bias is not None:\n                    init.constant_(m.bias, 0)\n\n\n\n# ==============================================================================================================\n\n\nclass ResidualConv(nn.Module):\n    def __init__(self, inchannels):\n        super(ResidualConv, self).__init__()\n        # NN.BatchNorm2d\n        self.conv = nn.Sequential(\n            # nn.BatchNorm2d(num_features=inchannels),\n            nn.ReLU(inplace=False),\n            # nn.Conv2d(in_channels=inchannels, out_channels=inchannels, kernel_size=3, padding=1, stride=1, groups=inchannels,bias=True),\n            # nn.Conv2d(in_channels=inchannels, out_channels=inchannels, kernel_size=1, padding=0, stride=1, groups=1,bias=True)\n            nn.Conv2d(in_channels=inchannels, out_channels=inchannels / 2, kernel_size=3, padding=1, stride=1,\n                      bias=False),\n            nn.BatchNorm2d(num_features=inchannels / 2),\n            nn.ReLU(inplace=False),\n            nn.Conv2d(in_channels=inchannels / 2, out_channels=inchannels, kernel_size=3, padding=1, stride=1,\n                      bias=False)\n        )\n        self.init_params()\n\n    def forward(self, x):\n        x = self.conv(x) + x\n        return x\n\n    def init_params(self):\n        for m in self.modules():\n            if isinstance(m, nn.Conv2d):\n                # init.kaiming_normal_(m.weight, mode='fan_out')\n                init.normal_(m.weight, std=0.01)\n                # init.xavier_normal_(m.weight)\n                if m.bias is not None:\n                    init.constant_(m.bias, 0)\n            elif isinstance(m, nn.ConvTranspose2d):\n                # init.kaiming_normal_(m.weight, mode='fan_out')\n                init.normal_(m.weight, std=0.01)\n                # init.xavier_normal_(m.weight)\n                if m.bias is not None:\n                    init.constant_(m.bias, 0)\n            elif isinstance(m, nn.BatchNorm2d):  # NN.BatchNorm2d\n                init.constant_(m.weight, 1)\n                init.constant_(m.bias, 0)\n            elif isinstance(m, nn.Linear):\n                init.normal_(m.weight, std=0.01)\n                if m.bias is not None:\n                    init.constant_(m.bias, 0)\n\n\nclass FeatureFusion(nn.Module):\n    def __init__(self, inchannels, outchannels):\n        super(FeatureFusion, self).__init__()\n        self.conv = ResidualConv(inchannels=inchannels)\n        # NN.BatchNorm2d\n        self.up = nn.Sequential(ResidualConv(inchannels=inchannels),\n                                nn.ConvTranspose2d(in_channels=inchannels, out_channels=outchannels, kernel_size=3,\n                                                   stride=2, padding=1, output_padding=1),\n                                nn.BatchNorm2d(num_features=outchannels),\n                                nn.ReLU(inplace=True))\n\n    def forward(self, lowfeat, highfeat):\n        return self.up(highfeat + self.conv(lowfeat))\n\n    def init_params(self):\n        for m in self.modules():\n            if isinstance(m, nn.Conv2d):\n                # init.kaiming_normal_(m.weight, mode='fan_out')\n                init.normal_(m.weight, std=0.01)\n                # init.xavier_normal_(m.weight)\n                if m.bias is not None:\n                    init.constant_(m.bias, 0)\n            elif isinstance(m, nn.ConvTranspose2d):\n                # init.kaiming_normal_(m.weight, mode='fan_out')\n                init.normal_(m.weight, std=0.01)\n                # init.xavier_normal_(m.weight)\n                if m.bias is not None:\n                    init.constant_(m.bias, 0)\n            elif isinstance(m, nn.BatchNorm2d):  # NN.BatchNorm2d\n                init.constant_(m.weight, 1)\n                init.constant_(m.bias, 0)\n            elif isinstance(m, nn.Linear):\n                init.normal_(m.weight, std=0.01)\n                if m.bias is not None:\n                    init.constant_(m.bias, 0)\n\n\nclass SenceUnderstand(nn.Module):\n    def __init__(self, channels):\n        super(SenceUnderstand, self).__init__()\n        self.channels = channels\n        self.conv1 = nn.Sequential(nn.Conv2d(in_channels=512, out_channels=512, kernel_size=3, padding=1),\n                                   nn.ReLU(inplace=True))\n        self.pool = nn.AdaptiveAvgPool2d(8)\n        self.fc = nn.Sequential(nn.Linear(512 * 8 * 8, self.channels),\n                                nn.ReLU(inplace=True))\n        self.conv2 = nn.Sequential(\n            nn.Conv2d(in_channels=self.channels, out_channels=self.channels, kernel_size=1, padding=0),\n            nn.ReLU(inplace=True))\n        self.initial_params()\n\n    def forward(self, x):\n        n, c, h, w = x.size()\n        x = self.conv1(x)\n        x = self.pool(x)\n        x = x.view(n, -1)\n        x = self.fc(x)\n        x = x.view(n, self.channels, 1, 1)\n        x = self.conv2(x)\n        x = x.repeat(1, 1, h, w)\n        return x\n\n    def initial_params(self, dev=0.01):\n        for m in self.modules():\n            if isinstance(m, nn.Conv2d):\n                # print torch.sum(m.weight)\n                m.weight.data.normal_(0, dev)\n                if m.bias is not None:\n                    m.bias.data.fill_(0)\n            elif isinstance(m, nn.ConvTranspose2d):\n                # print torch.sum(m.weight)\n                m.weight.data.normal_(0, dev)\n                if m.bias is not None:\n                    m.bias.data.fill_(0)\n            elif isinstance(m, nn.Linear):\n                m.weight.data.normal_(0, dev)\n\n\nif __name__ == '__main__':\n    net = DepthNet(depth=50, pretrained=True)\n    print(net)\n    inputs = torch.ones(4,3,128,128)\n    out = net(inputs)\n    print(out.size())\n"
  },
  {
    "path": "modules/control/proc/leres/pix2pix/LICENSE",
    "content": "https://github.com/compphoto/BoostingMonocularDepth\n\nCopyright 2021, Seyed Mahdi Hosseini Miangoleh, Sebastian Dille, Computational Photography Laboratory. All rights reserved.\n\nThis software is for academic use only. A redistribution of this\nsoftware, with or  without modifications, has to be for academic\nuse only, while giving the appropriate credit to the original\nauthors of the software. The methods implemented as a part of\nthis software may be covered under patents or patent applications.\n\nTHIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED\nWARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND\nFITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR\nCONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\nCONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR\nSERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON\nANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\nNEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF\nADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n"
  },
  {
    "path": "modules/control/proc/leres/pix2pix/__init__.py",
    "content": ""
  },
  {
    "path": "modules/control/proc/leres/pix2pix/models/__init__.py",
    "content": "\"\"\"This package contains modules related to objective functions, optimizations, and network architectures.\n\nTo add a custom model class called 'dummy', you need to add a file called 'dummy_model.py' and define a subclass DummyModel inherited from BaseModel.\nYou need to implement the following five functions:\n    -- <__init__>:                      initialize the class; first call BaseModel.__init__(self, opt).\n    -- <set_input>:                     unpack data from dataset and apply preprocessing.\n    -- <forward>:                       produce intermediate results.\n    -- <optimize_parameters>:           calculate loss, gradients, and update network weights.\n    -- <modify_commandline_options>:    (optionally) add model-specific options and set default options.\n\nIn the function <__init__>, you need to define four lists:\n    -- self.loss_names (str list):          specify the training losses that you want to plot and save.\n    -- self.model_names (str list):         define networks used in our training.\n    -- self.visual_names (str list):        specify the images that you want to display and save.\n    -- self.optimizers (optimizer list):    define and initialize optimizers. You can define one optimizer for each network. If two networks are updated at the same time, you can use itertools.chain to group them. See cycle_gan_model.py for an usage.\n\nNow you can use the model class by specifying flag '--model dummy'.\nSee our template model class 'template_model.py' for more details.\n\"\"\"\n\nimport importlib\nfrom .base_model import BaseModel\n\n\ndef find_model_using_name(model_name):\n    \"\"\"Import the module \"models/[model_name]_model.py\".\n\n    In the file, the class called DatasetNameModel() will\n    be instantiated. It has to be a subclass of BaseModel,\n    and it is case-insensitive.\n    \"\"\"\n    model_filename = \"modules.control.proc.leres.pix2pix.models.\" + model_name + \"_model\"\n    modellib = importlib.import_module(model_filename)\n    model = None\n    target_model_name = model_name.replace('_', '') + 'model'\n    for name, cls in modellib.__dict__.items():\n        if name.lower() == target_model_name.lower() \\\n           and issubclass(cls, BaseModel):\n            model = cls\n\n    if model is None:\n        print(\"In %s.py, there should be a subclass of BaseModel with class name that matches %s in lowercase.\" % (model_filename, target_model_name))\n        exit(0)\n\n    return model\n\n\ndef get_option_setter(model_name):\n    \"\"\"Return the static method <modify_commandline_options> of the model class.\"\"\"\n    model_class = find_model_using_name(model_name)\n    return model_class.modify_commandline_options\n\n\ndef create_model(opt):\n    \"\"\"Create a model given the option.\n\n    This function warps the class CustomDatasetDataLoader.\n    This is the main interface between this package and 'train.py'/'test.py'\n\n    Example:\n        >>> from models import create_model\n        >>> model = create_model(opt)\n    \"\"\"\n    model = find_model_using_name(opt.model)\n    instance = model(opt)\n    print(\"model [%s] was created\" % type(instance).__name__)\n    return instance\n"
  },
  {
    "path": "modules/control/proc/leres/pix2pix/models/base_model.py",
    "content": "import gc\nimport os\nfrom abc import ABC, abstractmethod\nfrom collections import OrderedDict\n\nimport torch\n\nfrom modules.control.util import torch_gc\nfrom . import networks\n\n\nclass BaseModel(ABC):\n    \"\"\"This class is an abstract base class (ABC) for models.\n    To create a subclass, you need to implement the following five functions:\n        -- <__init__>:                      initialize the class; first call BaseModel.__init__(self, opt).\n        -- <set_input>:                     unpack data from dataset and apply preprocessing.\n        -- <forward>:                       produce intermediate results.\n        -- <optimize_parameters>:           calculate losses, gradients, and update network weights.\n        -- <modify_commandline_options>:    (optionally) add model-specific options and set default options.\n    \"\"\"\n\n    def __init__(self, opt):\n        \"\"\"Initialize the BaseModel class.\n\n        Parameters:\n            opt (Option class)-- stores all the experiment flags; needs to be a subclass of BaseOptions\n\n        When creating your custom class, you need to implement your own initialization.\n        In this function, you should first call <BaseModel.__init__(self, opt)>\n        Then, you need to define four lists:\n            -- self.loss_names (str list):          specify the training losses that you want to plot and save.\n            -- self.model_names (str list):         define networks used in our training.\n            -- self.visual_names (str list):        specify the images that you want to display and save.\n            -- self.optimizers (optimizer list):    define and initialize optimizers. You can define one optimizer for each network. If two networks are updated at the same time, you can use itertools.chain to group them. See cycle_gan_model.py for an example.\n        \"\"\"\n        self.opt = opt\n        self.gpu_ids = opt.gpu_ids\n        self.isTrain = opt.isTrain\n        self.device = torch.device('cuda:{}'.format(self.gpu_ids[0])) if self.gpu_ids else torch.device('cpu')  # get device name: CPU or GPU\n        self.save_dir = os.path.join(opt.checkpoints_dir, opt.name)  # save all the checkpoints to save_dir\n        if opt.preprocess != 'scale_width':  # with [scale_width], input images might have different sizes, which hurts the performance of cudnn.benchmark.\n            torch.backends.cudnn.benchmark = True\n        self.loss_names = []\n        self.model_names = []\n        self.visual_names = []\n        self.optimizers = []\n        self.image_paths = []\n        self.metric = 0  # used for learning rate policy 'plateau'\n\n    @staticmethod\n    def modify_commandline_options(parser, is_train):\n        \"\"\"Add new model-specific options, and rewrite default values for existing options.\n\n        Parameters:\n            parser          -- original option parser\n            is_train (bool) -- whether training phase or test phase. You can use this flag to add training-specific or test-specific options.\n\n        Returns:\n            the modified parser.\n        \"\"\"\n        return parser\n\n    @abstractmethod\n    def set_input(self, input):\n        \"\"\"Unpack input data from the dataloader and perform necessary pre-processing steps.\n\n        Parameters:\n            input (dict): includes the data itself and its metadata information.\n        \"\"\"\n        pass\n\n    @abstractmethod\n    def forward(self):\n        \"\"\"Run forward pass; called by both functions <optimize_parameters> and <test>.\"\"\"\n        pass\n\n    @abstractmethod\n    def optimize_parameters(self):\n        \"\"\"Calculate losses, gradients, and update network weights; called in every training iteration\"\"\"\n        pass\n\n    def setup(self, opt):\n        \"\"\"Load and print networks; create schedulers\n\n        Parameters:\n            opt (Option class) -- stores all the experiment flags; needs to be a subclass of BaseOptions\n        \"\"\"\n        if self.isTrain:\n            self.schedulers = [networks.get_scheduler(optimizer, opt) for optimizer in self.optimizers]\n        if not self.isTrain or opt.continue_train:\n            load_suffix = 'iter_%d' % opt.load_iter if opt.load_iter > 0 else opt.epoch\n            self.load_networks(load_suffix)\n        self.print_networks(opt.verbose)\n\n    def eval(self):\n        \"\"\"Make models eval mode during test time\"\"\"\n        for name in self.model_names:\n            if isinstance(name, str):\n                net = getattr(self, 'net' + name)\n                net.eval()\n\n    def test(self):\n        \"\"\"Forward function used in test time.\n\n        It also calls <compute_visuals> to produce additional visualization results\n        \"\"\"\n        self.forward()\n        self.compute_visuals()\n\n    def compute_visuals(self): # noqa\n        \"\"\"Calculate additional output images for visdom and HTML visualization\"\"\"\n        pass\n\n    def get_image_paths(self):\n        \"\"\" Return image paths that are used to load current data\"\"\"\n        return self.image_paths\n\n    def update_learning_rate(self):\n        \"\"\"Update learning rates for all the networks; called at the end of every epoch\"\"\"\n        old_lr = self.optimizers[0].param_groups[0]['lr']\n        for scheduler in self.schedulers:\n            if self.opt.lr_policy == 'plateau':\n                scheduler.step(self.metric)\n            else:\n                scheduler.step()\n\n        lr = self.optimizers[0].param_groups[0]['lr']\n        print('learning rate %.7f -> %.7f' % (old_lr, lr))\n\n    def get_current_visuals(self):\n        \"\"\"Return visualization images. train.py will display these images with visdom, and save the images to a HTML\"\"\"\n        visual_ret = OrderedDict()\n        for name in self.visual_names:\n            if isinstance(name, str):\n                visual_ret[name] = getattr(self, name)\n        return visual_ret\n\n    def get_current_losses(self):\n        \"\"\"Return traning losses / errors. train.py will print out these errors on console, and save them to a file\"\"\"\n        errors_ret = OrderedDict()\n        for name in self.loss_names:\n            if isinstance(name, str):\n                errors_ret[name] = float(getattr(self, 'loss_' + name))  # float(...) works for both scalar tensor and float number\n        return errors_ret\n\n    def save_networks(self, epoch):\n        \"\"\"Save all the networks to the disk.\n\n        Parameters:\n            epoch (int) -- current epoch; used in the file name '%s_net_%s.pth' % (epoch, name)\n        \"\"\"\n        for name in self.model_names:\n            if isinstance(name, str):\n                save_filename = '%s_net_%s.pth' % (epoch, name)\n                save_path = os.path.join(self.save_dir, save_filename)\n                net = getattr(self, 'net' + name)\n\n                if len(self.gpu_ids) > 0 and torch.cuda.is_available():\n                    torch.save(net.module.cpu().state_dict(), save_path)\n                    net.cuda(self.gpu_ids[0])\n                else:\n                    torch.save(net.cpu().state_dict(), save_path)\n\n    def unload_network(self, name):\n        \"\"\"Unload network and gc.\n        \"\"\"\n        if isinstance(name, str):\n            net = getattr(self, 'net' + name)\n            del net\n            gc.collect()\n            torch_gc()\n            return None\n\n    def __patch_instance_norm_state_dict(self, state_dict, module, keys, i=0):\n        \"\"\"Fix InstanceNorm checkpoints incompatibility (prior to 0.4)\"\"\"\n        key = keys[i]\n        if i + 1 == len(keys):  # at the end, pointing to a parameter/buffer\n            if module.__class__.__name__.startswith('InstanceNorm') and \\\n                    (key == 'running_mean' or key == 'running_var'):\n                if getattr(module, key) is None:\n                    state_dict.pop('.'.join(keys))\n            if module.__class__.__name__.startswith('InstanceNorm') and \\\n               (key == 'num_batches_tracked'):\n                state_dict.pop('.'.join(keys))\n        else:\n            self.__patch_instance_norm_state_dict(state_dict, getattr(module, key), keys, i + 1)\n\n    def load_networks(self, epoch):\n        \"\"\"Load all the networks from the disk.\n\n        Parameters:\n            epoch (int) -- current epoch; used in the file name '%s_net_%s.pth' % (epoch, name)\n        \"\"\"\n        for name in self.model_names:\n            if isinstance(name, str):\n                load_filename = '%s_net_%s.pth' % (epoch, name)\n                load_path = os.path.join(self.save_dir, load_filename)\n                net = getattr(self, 'net' + name)\n                if isinstance(net, torch.nn.DataParallel):\n                    net = net.module\n                # print('Loading depth boost model from %s' % load_path)\n                # if you are using PyTorch newer than 0.4 (e.g., built from\n                # GitHub source), you can remove str() on self.device\n                state_dict = torch.load(load_path, map_location=str(self.device))\n                if hasattr(state_dict, '_metadata'):\n                    del state_dict._metadata\n\n                # patch InstanceNorm checkpoints prior to 0.4\n                for key in list(state_dict.keys()):  # need to copy keys here because we mutate in loop\n                    self.__patch_instance_norm_state_dict(state_dict, net, key.split('.'))\n                net.load_state_dict(state_dict)\n\n    def print_networks(self, verbose):\n        \"\"\"Print the total number of parameters in the network and (if verbose) network architecture\n\n        Parameters:\n            verbose (bool) -- if verbose: print the network architecture\n        \"\"\"\n        print('---------- Networks initialized -------------')\n        for name in self.model_names:\n            if isinstance(name, str):\n                net = getattr(self, 'net' + name)\n                num_params = 0\n                for param in net.parameters():\n                    num_params += param.numel()\n                if verbose:\n                    print(net)\n                print('[Network %s] Total number of parameters : %.3f M' % (name, num_params / 1e6))\n        print('-----------------------------------------------')\n\n    def set_requires_grad(self, nets, requires_grad=False):\n        \"\"\"Set requies_grad=Fasle for all the networks to avoid unnecessary computations\n        Parameters:\n            nets (network list)   -- a list of networks\n            requires_grad (bool)  -- whether the networks require gradients or not\n        \"\"\"\n        if not isinstance(nets, list):\n            nets = [nets]\n        for net in nets:\n            if net is not None:\n                for param in net.parameters():\n                    param.requires_grad = requires_grad\n"
  },
  {
    "path": "modules/control/proc/leres/pix2pix/models/base_model_hg.py",
    "content": "import os\nimport torch\n\nclass BaseModelHG():\n    def name(self):\n        return 'BaseModel'\n\n    def initialize(self, opt):\n        self.opt = opt\n        self.gpu_ids = opt.gpu_ids\n        self.isTrain = opt.isTrain\n        self.Tensor = torch.cuda.FloatTensor if self.gpu_ids else torch.Tensor\n        self.save_dir = os.path.join(opt.checkpoints_dir, opt.name)\n\n    def set_input(self, input):\n        self.input = input\n\n    def forward(self):\n        pass\n\n    # used in test time, no backprop\n    def test(self):\n        pass\n\n    def get_image_paths(self):\n        pass\n\n    def optimize_parameters(self):\n        pass\n\n    def get_current_visuals(self):\n        return self.input\n\n    def get_current_errors(self):\n        return {}\n\n    def save(self, label):\n        pass\n\n    # helper saving function that can be used by subclasses\n    def save_network(self, network, network_label, epoch_label, gpu_ids):\n        save_filename = '_%s_net_%s.pth' % (epoch_label, network_label)\n        save_path = os.path.join(self.save_dir, save_filename)\n        torch.save(network.cpu().state_dict(), save_path)\n        if len(gpu_ids) and torch.cuda.is_available():\n            network.cuda(device_id=gpu_ids[0])\n\n    # helper loading function that can be used by subclasses\n    def load_network(self, network, network_label, epoch_label):\n        save_filename = '%s_net_%s.pth' % (epoch_label, network_label)\n        save_path = os.path.join(self.save_dir, save_filename)\n        print(save_path)\n        model = torch.load(save_path)\n        return model\n        # network.load_state_dict(torch.load(save_path))\n\n    def update_learning_rate():\n        pass\n"
  },
  {
    "path": "modules/control/proc/leres/pix2pix/models/networks.py",
    "content": "import torch\nimport torch.nn as nn\nfrom torch.nn import init\nimport functools\nfrom torch.optim import lr_scheduler\n\n\n###############################################################################\n# Helper Functions\n###############################################################################\n\n\nclass Identity(nn.Module):\n    def forward(self, x):\n        return x\n\n\ndef get_norm_layer(norm_type='instance'):\n    \"\"\"Return a normalization layer\n\n    Parameters:\n        norm_type (str) -- the name of the normalization layer: batch | instance | none\n\n    For BatchNorm, we use learnable affine parameters and track running statistics (mean/stddev).\n    For InstanceNorm, we do not use learnable affine parameters. We do not track running statistics.\n    \"\"\"\n    if norm_type == 'batch':\n        norm_layer = functools.partial(nn.BatchNorm2d, affine=True, track_running_stats=True)\n    elif norm_type == 'instance':\n        norm_layer = functools.partial(nn.InstanceNorm2d, affine=False, track_running_stats=False)\n    elif norm_type == 'none':\n        def norm_layer(x): return Identity()\n    else:\n        raise NotImplementedError('normalization layer [%s] is not found' % norm_type)\n    return norm_layer\n\n\ndef get_scheduler(optimizer, opt):\n    \"\"\"Return a learning rate scheduler\n\n    Parameters:\n        optimizer          -- the optimizer of the network\n        opt (option class) -- stores all the experiment flags; needs to be a subclass of BaseOptions\n                              opt.lr_policy is the name of learning rate policy: linear | step | plateau | cosine\n\n    For 'linear', we keep the same learning rate for the first <opt.n_epochs> epochs\n    and linearly decay the rate to zero over the next <opt.n_epochs_decay> epochs.\n    For other schedulers (step, plateau, and cosine), we use the default PyTorch schedulers.\n    See https://pytorch.org/docs/stable/optim.html for more details.\n    \"\"\"\n    if opt.lr_policy == 'linear':\n        def lambda_rule(epoch):\n            lr_l = 1.0 - max(0, epoch + opt.epoch_count - opt.n_epochs) / float(opt.n_epochs_decay + 1)\n            return lr_l\n        scheduler = lr_scheduler.LambdaLR(optimizer, lr_lambda=lambda_rule)\n    elif opt.lr_policy == 'step':\n        scheduler = lr_scheduler.StepLR(optimizer, step_size=opt.lr_decay_iters, gamma=0.1)\n    elif opt.lr_policy == 'plateau':\n        scheduler = lr_scheduler.ReduceLROnPlateau(optimizer, mode='min', factor=0.2, threshold=0.01, patience=5)\n    elif opt.lr_policy == 'cosine':\n        scheduler = lr_scheduler.CosineAnnealingLR(optimizer, T_max=opt.n_epochs, eta_min=0)\n    else:\n        return NotImplementedError('learning rate policy [%s] is not implemented', opt.lr_policy)\n    return scheduler\n\n\ndef init_weights(net, init_type='normal', init_gain=0.02):\n    \"\"\"Initialize network weights.\n\n    Parameters:\n        net (network)   -- network to be initialized\n        init_type (str) -- the name of an initialization method: normal | xavier | kaiming | orthogonal\n        init_gain (float)    -- scaling factor for normal, xavier and orthogonal.\n\n    We use 'normal' in the original pix2pix and CycleGAN paper. But xavier and kaiming might\n    work better for some applications. Feel free to try yourself.\n    \"\"\"\n    def init_func(m):  # define the initialization function\n        classname = m.__class__.__name__\n        if hasattr(m, 'weight') and (classname.find('Conv') != -1 or classname.find('Linear') != -1):\n            if init_type == 'normal':\n                init.normal_(m.weight.data, 0.0, init_gain)\n            elif init_type == 'xavier':\n                init.xavier_normal_(m.weight.data, gain=init_gain)\n            elif init_type == 'kaiming':\n                init.kaiming_normal_(m.weight.data, a=0, mode='fan_in')\n            elif init_type == 'orthogonal':\n                init.orthogonal_(m.weight.data, gain=init_gain)\n            else:\n                raise NotImplementedError('initialization method [%s] is not implemented' % init_type)\n            if hasattr(m, 'bias') and m.bias is not None:\n                init.constant_(m.bias.data, 0.0)\n        elif classname.find('BatchNorm2d') != -1:  # BatchNorm Layer's weight is not a matrix; only normal distribution applies.\n            init.normal_(m.weight.data, 1.0, init_gain)\n            init.constant_(m.bias.data, 0.0)\n\n    # print('initialize network with %s' % init_type)\n    net.apply(init_func)  # apply the initialization function <init_func>\n\n\ndef init_net(net, init_type='normal', init_gain=0.02, gpu_ids=None):\n    \"\"\"Initialize a network: 1. register CPU/GPU device (with multi-GPU support); 2. initialize the network weights\n    Parameters:\n        net (network)      -- the network to be initialized\n        init_type (str)    -- the name of an initialization method: normal | xavier | kaiming | orthogonal\n        gain (float)       -- scaling factor for normal, xavier and orthogonal.\n        gpu_ids (int list) -- which GPUs the network runs on: e.g., 0,1,2\n\n    Return an initialized network.\n    \"\"\"\n    if gpu_ids is None:\n        gpu_ids = []\n    if len(gpu_ids) > 0:\n        assert(torch.cuda.is_available())\n        net.to(gpu_ids[0])\n        net = torch.nn.DataParallel(net, gpu_ids)  # multi-GPUs\n    init_weights(net, init_type, init_gain=init_gain)\n    return net\n\n\ndef define_G(input_nc, output_nc, ngf, netG, norm='batch', use_dropout=False, init_type='normal', init_gain=0.02, gpu_ids=None):\n    \"\"\"Create a generator\n\n    Parameters:\n        input_nc (int) -- the number of channels in input images\n        output_nc (int) -- the number of channels in output images\n        ngf (int) -- the number of filters in the last conv layer\n        netG (str) -- the architecture's name: resnet_9blocks | resnet_6blocks | unet_256 | unet_128\n        norm (str) -- the name of normalization layers used in the network: batch | instance | none\n        use_dropout (bool) -- if use dropout layers.\n        init_type (str)    -- the name of our initialization method.\n        init_gain (float)  -- scaling factor for normal, xavier and orthogonal.\n        gpu_ids (int list) -- which GPUs the network runs on: e.g., 0,1,2\n\n    Returns a generator\n\n    Our current implementation provides two types of generators:\n        U-Net: [unet_128] (for 128x128 input images) and [unet_256] (for 256x256 input images)\n        The original U-Net paper: https://arxiv.org/abs/1505.04597\n\n        Resnet-based generator: [resnet_6blocks] (with 6 Resnet blocks) and [resnet_9blocks] (with 9 Resnet blocks)\n        Resnet-based generator consists of several Resnet blocks between a few downsampling/upsampling operations.\n        We adapt Torch code from Justin Johnson's neural style transfer project (https://github.com/jcjohnson/fast-neural-style).\n\n\n    The generator has been initialized by <init_net>. It uses RELU for non-linearity.\n    \"\"\"\n    if gpu_ids is None:\n        gpu_ids = []\n    net = None\n    norm_layer = get_norm_layer(norm_type=norm)\n\n    if netG == 'resnet_9blocks':\n        net = ResnetGenerator(input_nc, output_nc, ngf, norm_layer=norm_layer, use_dropout=use_dropout, n_blocks=9)\n    elif netG == 'resnet_6blocks':\n        net = ResnetGenerator(input_nc, output_nc, ngf, norm_layer=norm_layer, use_dropout=use_dropout, n_blocks=6)\n    elif netG == 'resnet_12blocks':\n        net = ResnetGenerator(input_nc, output_nc, ngf, norm_layer=norm_layer, use_dropout=use_dropout, n_blocks=12)\n    elif netG == 'unet_128':\n        net = UnetGenerator(input_nc, output_nc, 7, ngf, norm_layer=norm_layer, use_dropout=use_dropout)\n    elif netG == 'unet_256':\n        net = UnetGenerator(input_nc, output_nc, 8, ngf, norm_layer=norm_layer, use_dropout=use_dropout)\n    elif netG == 'unet_672':\n        net = UnetGenerator(input_nc, output_nc, 5, ngf, norm_layer=norm_layer, use_dropout=use_dropout)\n    elif netG == 'unet_960':\n        net = UnetGenerator(input_nc, output_nc, 6, ngf, norm_layer=norm_layer, use_dropout=use_dropout)\n    elif netG == 'unet_1024':\n        net = UnetGenerator(input_nc, output_nc, 10, ngf, norm_layer=norm_layer, use_dropout=use_dropout)\n    else:\n        raise NotImplementedError('Generator model name [%s] is not recognized' % netG)\n    return init_net(net, init_type, init_gain, gpu_ids)\n\n\ndef define_D(input_nc, ndf, netD, n_layers_D=3, norm='batch', init_type='normal', init_gain=0.02, gpu_ids=None):\n    \"\"\"Create a discriminator\n\n    Parameters:\n        input_nc (int)     -- the number of channels in input images\n        ndf (int)          -- the number of filters in the first conv layer\n        netD (str)         -- the architecture's name: basic | n_layers | pixel\n        n_layers_D (int)   -- the number of conv layers in the discriminator; effective when netD=='n_layers'\n        norm (str)         -- the type of normalization layers used in the network.\n        init_type (str)    -- the name of the initialization method.\n        init_gain (float)  -- scaling factor for normal, xavier and orthogonal.\n        gpu_ids (int list) -- which GPUs the network runs on: e.g., 0,1,2\n\n    Returns a discriminator\n\n    Our current implementation provides three types of discriminators:\n        [basic]: 'PatchGAN' classifier described in the original pix2pix paper.\n        It can classify whether 70x70 overlapping patches are real or fake.\n        Such a patch-level discriminator architecture has fewer parameters\n        than a full-image discriminator and can work on arbitrarily-sized images\n        in a fully convolutional fashion.\n\n        [n_layers]: With this mode, you can specify the number of conv layers in the discriminator\n        with the parameter <n_layers_D> (default=3 as used in [basic] (PatchGAN).)\n\n        [pixel]: 1x1 PixelGAN discriminator can classify whether a pixel is real or not.\n        It encourages greater color diversity but has no effect on spatial statistics.\n\n    The discriminator has been initialized by <init_net>. It uses Leakly RELU for non-linearity.\n    \"\"\"\n    if gpu_ids is None:\n        gpu_ids = []\n    net = None\n    norm_layer = get_norm_layer(norm_type=norm)\n\n    if netD == 'basic':  # default PatchGAN classifier\n        net = NLayerDiscriminator(input_nc, ndf, n_layers=3, norm_layer=norm_layer)\n    elif netD == 'n_layers':  # more options\n        net = NLayerDiscriminator(input_nc, ndf, n_layers_D, norm_layer=norm_layer)\n    elif netD == 'pixel':     # classify if each pixel is real or fake\n        net = PixelDiscriminator(input_nc, ndf, norm_layer=norm_layer)\n    else:\n        raise NotImplementedError('Discriminator model name [%s] is not recognized' % netD)\n    return init_net(net, init_type, init_gain, gpu_ids)\n\n\n##############################################################################\n# Classes\n##############################################################################\nclass GANLoss(nn.Module):\n    \"\"\"Define different GAN objectives.\n\n    The GANLoss class abstracts away the need to create the target label tensor\n    that has the same size as the input.\n    \"\"\"\n\n    def __init__(self, gan_mode, target_real_label=1.0, target_fake_label=0.0):\n        \"\"\" Initialize the GANLoss class.\n\n        Parameters:\n            gan_mode (str) - - the type of GAN objective. It currently supports vanilla, lsgan, and wgangp.\n            target_real_label (bool) - - label for a real image\n            target_fake_label (bool) - - label of a fake image\n\n        Note: Do not use sigmoid as the last layer of Discriminator.\n        LSGAN needs no sigmoid. vanilla GANs will handle it with BCEWithLogitsLoss.\n        \"\"\"\n        super(GANLoss, self).__init__()\n        self.register_buffer('real_label', torch.tensor(target_real_label))\n        self.register_buffer('fake_label', torch.tensor(target_fake_label))\n        self.gan_mode = gan_mode\n        if gan_mode == 'lsgan':\n            self.loss = nn.MSELoss()\n        elif gan_mode == 'vanilla':\n            self.loss = nn.BCEWithLogitsLoss()\n        elif gan_mode in ['wgangp']:\n            self.loss = None\n        else:\n            raise NotImplementedError('gan mode %s not implemented' % gan_mode)\n\n    def get_target_tensor(self, prediction, target_is_real):\n        \"\"\"Create label tensors with the same size as the input.\n\n        Parameters:\n            prediction (tensor) - - tpyically the prediction from a discriminator\n            target_is_real (bool) - - if the ground truth label is for real images or fake images\n\n        Returns:\n            A label tensor filled with ground truth label, and with the size of the input\n        \"\"\"\n\n        if target_is_real:\n            target_tensor = self.real_label\n        else:\n            target_tensor = self.fake_label\n        return target_tensor.expand_as(prediction)\n\n    def __call__(self, prediction, target_is_real):\n        \"\"\"Calculate loss given Discriminator's output and grount truth labels.\n\n        Parameters:\n            prediction (tensor) - - tpyically the prediction output from a discriminator\n            target_is_real (bool) - - if the ground truth label is for real images or fake images\n\n        Returns:\n            the calculated loss.\n        \"\"\"\n        if self.gan_mode in ['lsgan', 'vanilla']:\n            target_tensor = self.get_target_tensor(prediction, target_is_real)\n            loss = self.loss(prediction, target_tensor)\n        elif self.gan_mode == 'wgangp':\n            if target_is_real:\n                loss = -prediction.mean()\n            else:\n                loss = prediction.mean()\n        return loss\n\n\ndef cal_gradient_penalty(netD, real_data, fake_data, device, type='mixed', constant=1.0, lambda_gp=10.0):\n    \"\"\"Calculate the gradient penalty loss, used in WGAN-GP paper https://arxiv.org/abs/1704.00028\n\n    Arguments:\n        netD (network)              -- discriminator network\n        real_data (tensor array)    -- real images\n        fake_data (tensor array)    -- generated images from the generator\n        device (str)                -- GPU / CPU: from torch.device('cuda:{}'.format(self.gpu_ids[0])) if self.gpu_ids else torch.device('cpu')\n        type (str)                  -- if we mix real and fake data or not [real | fake | mixed].\n        constant (float)            -- the constant used in formula ( ||gradient||_2 - constant)^2\n        lambda_gp (float)           -- weight for this loss\n\n    Returns the gradient penalty loss\n    \"\"\"\n    if lambda_gp > 0.0:\n        if type == 'real':   # either use real images, fake images, or a linear interpolation of two.\n            interpolatesv = real_data\n        elif type == 'fake':\n            interpolatesv = fake_data\n        elif type == 'mixed':\n            alpha = torch.rand(real_data.shape[0], 1, device=device)\n            alpha = alpha.expand(real_data.shape[0], real_data.nelement() // real_data.shape[0]).contiguous().view(*real_data.shape)\n            interpolatesv = alpha * real_data + ((1 - alpha) * fake_data)\n        else:\n            raise NotImplementedError('{} not implemented'.format(type))\n        interpolatesv.requires_grad_(True)\n        disc_interpolates = netD(interpolatesv)\n        gradients = torch.autograd.grad(outputs=disc_interpolates, inputs=interpolatesv,\n                                        grad_outputs=torch.ones(disc_interpolates.size()).to(device),\n                                        create_graph=True, retain_graph=True, only_inputs=True)\n        gradients = gradients[0].view(real_data.size(0), -1)  # flat the data\n        gradient_penalty = (((gradients + 1e-16).norm(2, dim=1) - constant) ** 2).mean() * lambda_gp        # added eps\n        return gradient_penalty, gradients\n    else:\n        return 0.0, None\n\n\nclass ResnetGenerator(nn.Module):\n    \"\"\"Resnet-based generator that consists of Resnet blocks between a few downsampling/upsampling operations.\n\n    We adapt Torch code and idea from Justin Johnson's neural style transfer project(https://github.com/jcjohnson/fast-neural-style)\n    \"\"\"\n\n    def __init__(self, input_nc, output_nc, ngf=64, norm_layer=nn.BatchNorm2d, use_dropout=False, n_blocks=6, padding_type='reflect'):\n        \"\"\"Construct a Resnet-based generator\n\n        Parameters:\n            input_nc (int)      -- the number of channels in input images\n            output_nc (int)     -- the number of channels in output images\n            ngf (int)           -- the number of filters in the last conv layer\n            norm_layer          -- normalization layer\n            use_dropout (bool)  -- if use dropout layers\n            n_blocks (int)      -- the number of ResNet blocks\n            padding_type (str)  -- the name of padding layer in conv layers: reflect | replicate | zero\n        \"\"\"\n        assert(n_blocks >= 0)\n        super(ResnetGenerator, self).__init__()\n        if type(norm_layer) == functools.partial:\n            use_bias = norm_layer.func == nn.InstanceNorm2d\n        else:\n            use_bias = norm_layer == nn.InstanceNorm2d\n\n        model = [nn.ReflectionPad2d(3),\n                 nn.Conv2d(input_nc, ngf, kernel_size=7, padding=0, bias=use_bias),\n                 norm_layer(ngf),\n                 nn.ReLU(True)]\n\n        n_downsampling = 2\n        for i in range(n_downsampling):  # add downsampling layers\n            mult = 2 ** i\n            model += [nn.Conv2d(ngf * mult, ngf * mult * 2, kernel_size=3, stride=2, padding=1, bias=use_bias),\n                      norm_layer(ngf * mult * 2),\n                      nn.ReLU(True)]\n\n        mult = 2 ** n_downsampling\n        for _i in range(n_blocks):       # add ResNet blocks\n            model += [ResnetBlock(ngf * mult, padding_type=padding_type, norm_layer=norm_layer, use_dropout=use_dropout, use_bias=use_bias)]\n\n        for i in range(n_downsampling):  # add upsampling layers\n            mult = 2 ** (n_downsampling - i)\n            model += [nn.ConvTranspose2d(ngf * mult, int(ngf * mult / 2),\n                                         kernel_size=3, stride=2,\n                                         padding=1, output_padding=1,\n                                         bias=use_bias),\n                      norm_layer(int(ngf * mult / 2)),\n                      nn.ReLU(True)]\n        model += [nn.ReflectionPad2d(3)]\n        model += [nn.Conv2d(ngf, output_nc, kernel_size=7, padding=0)]\n        model += [nn.Tanh()]\n\n        self.model = nn.Sequential(*model)\n\n    def forward(self, input):\n        \"\"\"Standard forward\"\"\"\n        return self.model(input)\n\n\nclass ResnetBlock(nn.Module):\n    \"\"\"Define a Resnet block\"\"\"\n\n    def __init__(self, dim, padding_type, norm_layer, use_dropout, use_bias):\n        \"\"\"Initialize the Resnet block\n\n        A resnet block is a conv block with skip connections\n        We construct a conv block with build_conv_block function,\n        and implement skip connections in <forward> function.\n        Original Resnet paper: https://arxiv.org/pdf/1512.03385.pdf\n        \"\"\"\n        super(ResnetBlock, self).__init__()\n        self.conv_block = self.build_conv_block(dim, padding_type, norm_layer, use_dropout, use_bias)\n\n    def build_conv_block(self, dim, padding_type, norm_layer, use_dropout, use_bias):\n        \"\"\"Construct a convolutional block.\n\n        Parameters:\n            dim (int)           -- the number of channels in the conv layer.\n            padding_type (str)  -- the name of padding layer: reflect | replicate | zero\n            norm_layer          -- normalization layer\n            use_dropout (bool)  -- if use dropout layers.\n            use_bias (bool)     -- if the conv layer uses bias or not\n\n        Returns a conv block (with a conv layer, a normalization layer, and a non-linearity layer (ReLU))\n        \"\"\"\n        conv_block = []\n        p = 0\n        if padding_type == 'reflect':\n            conv_block += [nn.ReflectionPad2d(1)]\n        elif padding_type == 'replicate':\n            conv_block += [nn.ReplicationPad2d(1)]\n        elif padding_type == 'zero':\n            p = 1\n        else:\n            raise NotImplementedError('padding [%s] is not implemented' % padding_type)\n\n        conv_block += [nn.Conv2d(dim, dim, kernel_size=3, padding=p, bias=use_bias), norm_layer(dim), nn.ReLU(True)]\n        if use_dropout:\n            conv_block += [nn.Dropout(0.5)]\n\n        p = 0\n        if padding_type == 'reflect':\n            conv_block += [nn.ReflectionPad2d(1)]\n        elif padding_type == 'replicate':\n            conv_block += [nn.ReplicationPad2d(1)]\n        elif padding_type == 'zero':\n            p = 1\n        else:\n            raise NotImplementedError('padding [%s] is not implemented' % padding_type)\n        conv_block += [nn.Conv2d(dim, dim, kernel_size=3, padding=p, bias=use_bias), norm_layer(dim)]\n\n        return nn.Sequential(*conv_block)\n\n    def forward(self, x):\n        \"\"\"Forward function (with skip connections)\"\"\"\n        out = x + self.conv_block(x)  # add skip connections\n        return out\n\n\nclass UnetGenerator(nn.Module):\n    \"\"\"Create a Unet-based generator\"\"\"\n\n    def __init__(self, input_nc, output_nc, num_downs, ngf=64, norm_layer=nn.BatchNorm2d, use_dropout=False):\n        \"\"\"Construct a Unet generator\n        Parameters:\n            input_nc (int)  -- the number of channels in input images\n            output_nc (int) -- the number of channels in output images\n            num_downs (int) -- the number of downsamplings in UNet. For example, # if |num_downs| == 7,\n                                image of size 128x128 will become of size 1x1 # at the bottleneck\n            ngf (int)       -- the number of filters in the last conv layer\n            norm_layer      -- normalization layer\n\n        We construct the U-Net from the innermost layer to the outermost layer.\n        It is a recursive process.\n        \"\"\"\n        super(UnetGenerator, self).__init__()\n        # construct unet structure\n        unet_block = UnetSkipConnectionBlock(ngf * 8, ngf * 8, input_nc=None, submodule=None, norm_layer=norm_layer, innermost=True)  # add the innermost layer\n        for _i in range(num_downs - 5):          # add intermediate layers with ngf * 8 filters\n            unet_block = UnetSkipConnectionBlock(ngf * 8, ngf * 8, input_nc=None, submodule=unet_block, norm_layer=norm_layer, use_dropout=use_dropout)\n        # gradually reduce the number of filters from ngf * 8 to ngf\n        unet_block = UnetSkipConnectionBlock(ngf * 4, ngf * 8, input_nc=None, submodule=unet_block, norm_layer=norm_layer)\n        unet_block = UnetSkipConnectionBlock(ngf * 2, ngf * 4, input_nc=None, submodule=unet_block, norm_layer=norm_layer)\n        unet_block = UnetSkipConnectionBlock(ngf, ngf * 2, input_nc=None, submodule=unet_block, norm_layer=norm_layer)\n        self.model = UnetSkipConnectionBlock(output_nc, ngf, input_nc=input_nc, submodule=unet_block, outermost=True, norm_layer=norm_layer)  # add the outermost layer\n\n    def forward(self, input):\n        \"\"\"Standard forward\"\"\"\n        return self.model(input)\n\n\nclass UnetSkipConnectionBlock(nn.Module):\n    \"\"\"Defines the Unet submodule with skip connection.\n        X -------------------identity----------------------\n        |-- downsampling -- |submodule| -- upsampling --|\n    \"\"\"\n\n    def __init__(self, outer_nc, inner_nc, input_nc=None,\n                 submodule=None, outermost=False, innermost=False, norm_layer=nn.BatchNorm2d, use_dropout=False):\n        \"\"\"Construct a Unet submodule with skip connections.\n\n        Parameters:\n            outer_nc (int) -- the number of filters in the outer conv layer\n            inner_nc (int) -- the number of filters in the inner conv layer\n            input_nc (int) -- the number of channels in input images/features\n            submodule (UnetSkipConnectionBlock) -- previously defined submodules\n            outermost (bool)    -- if this module is the outermost module\n            innermost (bool)    -- if this module is the innermost module\n            norm_layer          -- normalization layer\n            use_dropout (bool)  -- if use dropout layers.\n        \"\"\"\n        super(UnetSkipConnectionBlock, self).__init__()\n        self.outermost = outermost\n        if type(norm_layer) == functools.partial:\n            use_bias = norm_layer.func == nn.InstanceNorm2d\n        else:\n            use_bias = norm_layer == nn.InstanceNorm2d\n        if input_nc is None:\n            input_nc = outer_nc\n        downconv = nn.Conv2d(input_nc, inner_nc, kernel_size=4,\n                             stride=2, padding=1, bias=use_bias)\n        downrelu = nn.LeakyReLU(0.2, True)\n        downnorm = norm_layer(inner_nc)\n        uprelu = nn.ReLU(True)\n        upnorm = norm_layer(outer_nc)\n\n        if outermost:\n            upconv = nn.ConvTranspose2d(inner_nc * 2, outer_nc,\n                                        kernel_size=4, stride=2,\n                                        padding=1)\n            down = [downconv]\n            up = [uprelu, upconv, nn.Tanh()]\n            model = down + [submodule] + up\n        elif innermost:\n            upconv = nn.ConvTranspose2d(inner_nc, outer_nc,\n                                        kernel_size=4, stride=2,\n                                        padding=1, bias=use_bias)\n            down = [downrelu, downconv]\n            up = [uprelu, upconv, upnorm]\n            model = down + up\n        else:\n            upconv = nn.ConvTranspose2d(inner_nc * 2, outer_nc,\n                                        kernel_size=4, stride=2,\n                                        padding=1, bias=use_bias)\n            down = [downrelu, downconv, downnorm]\n            up = [uprelu, upconv, upnorm]\n\n            if use_dropout:\n                model = down + [submodule] + up + [nn.Dropout(0.5)]\n            else:\n                model = down + [submodule] + up\n\n        self.model = nn.Sequential(*model)\n\n    def forward(self, x):\n        if self.outermost:\n            return self.model(x)\n        else:   # add skip connections\n            return torch.cat([x, self.model(x)], 1)\n\n\nclass NLayerDiscriminator(nn.Module):\n    \"\"\"Defines a PatchGAN discriminator\"\"\"\n\n    def __init__(self, input_nc, ndf=64, n_layers=3, norm_layer=nn.BatchNorm2d):\n        \"\"\"Construct a PatchGAN discriminator\n\n        Parameters:\n            input_nc (int)  -- the number of channels in input images\n            ndf (int)       -- the number of filters in the last conv layer\n            n_layers (int)  -- the number of conv layers in the discriminator\n            norm_layer      -- normalization layer\n        \"\"\"\n        super(NLayerDiscriminator, self).__init__()\n        if type(norm_layer) == functools.partial:  # no need to use bias as BatchNorm2d has affine parameters\n            use_bias = norm_layer.func == nn.InstanceNorm2d\n        else:\n            use_bias = norm_layer == nn.InstanceNorm2d\n\n        kw = 4\n        padw = 1\n        sequence = [nn.Conv2d(input_nc, ndf, kernel_size=kw, stride=2, padding=padw), nn.LeakyReLU(0.2, True)]\n        nf_mult = 1\n        nf_mult_prev = 1\n        for n in range(1, n_layers):  # gradually increase the number of filters\n            nf_mult_prev = nf_mult\n            nf_mult = min(2 ** n, 8)\n            sequence += [\n                nn.Conv2d(ndf * nf_mult_prev, ndf * nf_mult, kernel_size=kw, stride=2, padding=padw, bias=use_bias),\n                norm_layer(ndf * nf_mult),\n                nn.LeakyReLU(0.2, True)\n            ]\n\n        nf_mult_prev = nf_mult\n        nf_mult = min(2 ** n_layers, 8)\n        sequence += [\n            nn.Conv2d(ndf * nf_mult_prev, ndf * nf_mult, kernel_size=kw, stride=1, padding=padw, bias=use_bias),\n            norm_layer(ndf * nf_mult),\n            nn.LeakyReLU(0.2, True)\n        ]\n\n        sequence += [nn.Conv2d(ndf * nf_mult, 1, kernel_size=kw, stride=1, padding=padw)]  # output 1 channel prediction map\n        self.model = nn.Sequential(*sequence)\n\n    def forward(self, input):\n        \"\"\"Standard forward.\"\"\"\n        return self.model(input)\n\n\nclass PixelDiscriminator(nn.Module):\n    \"\"\"Defines a 1x1 PatchGAN discriminator (pixelGAN)\"\"\"\n\n    def __init__(self, input_nc, ndf=64, norm_layer=nn.BatchNorm2d):\n        \"\"\"Construct a 1x1 PatchGAN discriminator\n\n        Parameters:\n            input_nc (int)  -- the number of channels in input images\n            ndf (int)       -- the number of filters in the last conv layer\n            norm_layer      -- normalization layer\n        \"\"\"\n        super(PixelDiscriminator, self).__init__()\n        if type(norm_layer) == functools.partial:  # no need to use bias as BatchNorm2d has affine parameters\n            use_bias = norm_layer.func == nn.InstanceNorm2d\n        else:\n            use_bias = norm_layer == nn.InstanceNorm2d\n\n        self.net = [\n            nn.Conv2d(input_nc, ndf, kernel_size=1, stride=1, padding=0),\n            nn.LeakyReLU(0.2, True),\n            nn.Conv2d(ndf, ndf * 2, kernel_size=1, stride=1, padding=0, bias=use_bias),\n            norm_layer(ndf * 2),\n            nn.LeakyReLU(0.2, True),\n            nn.Conv2d(ndf * 2, 1, kernel_size=1, stride=1, padding=0, bias=use_bias)]\n\n        self.net = nn.Sequential(*self.net)\n\n    def forward(self, input):\n        \"\"\"Standard forward.\"\"\"\n        return self.net(input)\n"
  },
  {
    "path": "modules/control/proc/leres/pix2pix/models/pix2pix4depth_model.py",
    "content": "import torch\nfrom .base_model import BaseModel\nfrom . import networks\n\n\nclass Pix2Pix4DepthModel(BaseModel):\n    \"\"\" This class implements the pix2pix model, for learning a mapping from input images to output images given paired data.\n\n    The model training requires '--dataset_mode aligned' dataset.\n    By default, it uses a '--netG unet256' U-Net generator,\n    a '--netD basic' discriminator (PatchGAN),\n    and a '--gan_mode' vanilla GAN loss (the cross-entropy objective used in the orignal GAN paper).\n\n    pix2pix paper: https://arxiv.org/pdf/1611.07004.pdf\n    \"\"\"\n    @staticmethod\n    def modify_commandline_options(parser, is_train=True):\n        \"\"\"Add new dataset-specific options, and rewrite default values for existing options.\n\n        Parameters:\n            parser          -- original option parser\n            is_train (bool) -- whether training phase or test phase. You can use this flag to add training-specific or test-specific options.\n\n        Returns:\n            the modified parser.\n\n        For pix2pix, we do not use image buffer\n        The training objective is: GAN Loss + lambda_L1 * ||G(A)-B||_1\n        By default, we use vanilla GAN loss, UNet with batchnorm, and aligned datasets.\n        \"\"\"\n        # changing the default values to match the pix2pix paper (https://phillipi.github.io/pix2pix/)\n        parser.set_defaults(input_nc=2,output_nc=1,norm='none', netG='unet_1024', dataset_mode='depthmerge')\n        if is_train:\n            parser.set_defaults(pool_size=0, gan_mode='vanilla',)\n            parser.add_argument('--lambda_L1', type=float, default=1000, help='weight for L1 loss')\n        return parser\n\n    def __init__(self, opt):\n        \"\"\"Initialize the pix2pix class.\n\n        Parameters:\n            opt (Option class)-- stores all the experiment flags; needs to be a subclass of BaseOptions\n        \"\"\"\n        BaseModel.__init__(self, opt)\n        # specify the training losses you want to print out. The training/test scripts will call <BaseModel.get_current_losses>\n\n        self.loss_names = ['G_GAN', 'G_L1', 'D_real', 'D_fake']\n        # self.loss_names = ['G_L1']\n\n        # specify the images you want to save/display. The training/test scripts will call <BaseModel.get_current_visuals>\n        if self.isTrain:\n            self.visual_names = ['outer','inner', 'fake_B', 'real_B']\n        else:\n            self.visual_names = ['fake_B']\n\n        # specify the models you want to save to the disk. The training/test scripts will call <BaseModel.save_networks> and <BaseModel.load_networks>\n        if self.isTrain:\n            self.model_names = ['G','D']\n        else:  # during test time, only load G\n            self.model_names = ['G']\n\n        # define networks (both generator and discriminator)\n        self.netG = networks.define_G(opt.input_nc, opt.output_nc, 64, 'unet_1024', 'none',\n                                      False, 'normal', 0.02, self.gpu_ids)\n\n        if self.isTrain:  # define a discriminator; conditional GANs need to take both input and output images; Therefore, #channels for D is input_nc + output_nc\n            self.netD = networks.define_D(opt.input_nc + opt.output_nc, opt.ndf, opt.netD,\n                                          opt.n_layers_D, opt.norm, opt.init_type, opt.init_gain, self.gpu_ids)\n\n        if self.isTrain:\n            # define loss functions\n            self.criterionGAN = networks.GANLoss(opt.gan_mode).to(self.device)\n            self.criterionL1 = torch.nn.L1Loss()\n            # initialize optimizers; schedulers will be automatically created by function <BaseModel.setup>.\n            self.optimizer_G = torch.optim.Adam(self.netG.parameters(), lr=1e-4, betas=(opt.beta1, 0.999))\n            self.optimizer_D = torch.optim.Adam(self.netD.parameters(), lr=2e-06, betas=(opt.beta1, 0.999))\n            self.optimizers.append(self.optimizer_G)\n            self.optimizers.append(self.optimizer_D)\n\n    def set_input_train(self, input):\n        self.outer = input['data_outer'].to(self.device)\n        self.outer = torch.nn.functional.interpolate(self.outer,(1024,1024),mode='bilinear',align_corners=False)\n\n        self.inner = input['data_inner'].to(self.device)\n        self.inner = torch.nn.functional.interpolate(self.inner,(1024,1024),mode='bilinear',align_corners=False)\n\n        self.image_paths = input['image_path']\n\n        if self.isTrain:\n            self.gtfake = input['data_gtfake'].to(self.device)\n            self.gtfake = torch.nn.functional.interpolate(self.gtfake, (1024, 1024), mode='bilinear', align_corners=False)\n            self.real_B = self.gtfake\n\n        self.real_A = torch.cat((self.outer, self.inner), 1)\n\n    def set_input(self, outer, inner):\n        inner = torch.from_numpy(inner).unsqueeze(0).unsqueeze(0)\n        outer = torch.from_numpy(outer).unsqueeze(0).unsqueeze(0)\n\n        inner = (inner - torch.min(inner))/(torch.max(inner)-torch.min(inner))\n        outer = (outer - torch.min(outer))/(torch.max(outer)-torch.min(outer))\n\n        inner = self.normalize(inner)\n        outer = self.normalize(outer)\n\n        self.real_A = torch.cat((outer, inner), 1).to(self.device)\n\n\n    def normalize(self, input):\n        input = input * 2\n        input = input - 1\n        return input\n\n    def forward(self):\n        \"\"\"Run forward pass; called by both functions <optimize_parameters> and <test>.\"\"\"\n        self.fake_B = self.netG(self.real_A)  # G(A)\n\n    def backward_D(self):\n        \"\"\"Calculate GAN loss for the discriminator\"\"\"\n        # Fake; stop backprop to the generator by detaching fake_B\n        fake_AB = torch.cat((self.real_A, self.fake_B), 1)  # we use conditional GANs; we need to feed both input and output to the discriminator\n        pred_fake = self.netD(fake_AB.detach())\n        self.loss_D_fake = self.criterionGAN(pred_fake, False)\n        # Real\n        real_AB = torch.cat((self.real_A, self.real_B), 1)\n        pred_real = self.netD(real_AB)\n        self.loss_D_real = self.criterionGAN(pred_real, True)\n        # combine loss and calculate gradients\n        self.loss_D = (self.loss_D_fake + self.loss_D_real) * 0.5\n        self.loss_D.backward()\n\n    def backward_G(self):\n        \"\"\"Calculate GAN and L1 loss for the generator\"\"\"\n        # First, G(A) should fake the discriminator\n        fake_AB = torch.cat((self.real_A, self.fake_B), 1)\n        pred_fake = self.netD(fake_AB)\n        self.loss_G_GAN = self.criterionGAN(pred_fake, True)\n        # Second, G(A) = B\n        self.loss_G_L1 = self.criterionL1(self.fake_B, self.real_B) * self.opt.lambda_L1\n        # combine loss and calculate gradients\n        self.loss_G = self.loss_G_L1 + self.loss_G_GAN\n        self.loss_G.backward()\n\n    def optimize_parameters(self):\n        self.forward()                   # compute fake images: G(A)\n        # update D\n        self.set_requires_grad(self.netD, True)  # enable backprop for D\n        self.optimizer_D.zero_grad()     # set D's gradients to zero\n        self.backward_D()                # calculate gradients for D\n        self.optimizer_D.step()          # update D's weights\n        # update G\n        self.set_requires_grad(self.netD, False)  # D requires no gradients when optimizing G\n        self.optimizer_G.zero_grad()        # set G's gradients to zero\n        self.backward_G()                   # calculate graidents for G\n        self.optimizer_G.step()             # udpate G's weights\n"
  },
  {
    "path": "modules/control/proc/leres/pix2pix/options/__init__.py",
    "content": "\"\"\"This package options includes option modules: training options, test options, and basic options (used in both training and test).\"\"\"\n"
  },
  {
    "path": "modules/control/proc/leres/pix2pix/options/base_options.py",
    "content": "import argparse\nimport os\nfrom ...pix2pix.util import util\n# import torch\nfrom ...pix2pix import models\n# import pix2pix.data\nimport numpy as np\n\nclass BaseOptions():\n    \"\"\"This class defines options used during both training and test time.\n\n    It also implements several helper functions such as parsing, printing, and saving the options.\n    It also gathers additional options defined in <modify_commandline_options> functions in both dataset class and model class.\n    \"\"\"\n\n    def __init__(self):\n        \"\"\"Reset the class; indicates the class hasn't been initailized\"\"\"\n        self.initialized = False\n\n    def initialize(self, parser):\n        \"\"\"Define the common options that are used in both training and test.\"\"\"\n        # basic parameters\n        parser.add_argument('--dataroot', help='path to images (should have subfolders trainA, trainB, valA, valB, etc)')\n        parser.add_argument('--name', type=str, default='void', help='mahdi_unet_new, scaled_unet')\n        parser.add_argument('--gpu_ids', type=str, default='0', help='gpu ids: e.g. 0  0,1,2, 0,2. use -1 for CPU')\n        parser.add_argument('--checkpoints_dir', type=str, default='./pix2pix/checkpoints', help='models are saved here')\n        # model parameters\n        parser.add_argument('--model', type=str, default='cycle_gan', help='chooses which model to use. [cycle_gan | pix2pix | test | colorization]')\n        parser.add_argument('--input_nc', type=int, default=2, help='# of input image channels: 3 for RGB and 1 for grayscale')\n        parser.add_argument('--output_nc', type=int, default=1, help='# of output image channels: 3 for RGB and 1 for grayscale')\n        parser.add_argument('--ngf', type=int, default=64, help='# of gen filters in the last conv layer')\n        parser.add_argument('--ndf', type=int, default=64, help='# of discrim filters in the first conv layer')\n        parser.add_argument('--netD', type=str, default='basic', help='specify discriminator architecture [basic | n_layers | pixel]. The basic model is a 70x70 PatchGAN. n_layers allows you to specify the layers in the discriminator')\n        parser.add_argument('--netG', type=str, default='resnet_9blocks', help='specify generator architecture [resnet_9blocks | resnet_6blocks | unet_256 | unet_128]')\n        parser.add_argument('--n_layers_D', type=int, default=3, help='only used if netD==n_layers')\n        parser.add_argument('--norm', type=str, default='instance', help='instance normalization or batch normalization [instance | batch | none]')\n        parser.add_argument('--init_type', type=str, default='normal', help='network initialization [normal | xavier | kaiming | orthogonal]')\n        parser.add_argument('--init_gain', type=float, default=0.02, help='scaling factor for normal, xavier and orthogonal.')\n        parser.add_argument('--no_dropout', action='store_true', help='no dropout for the generator')\n        # dataset parameters\n        parser.add_argument('--dataset_mode', type=str, default='unaligned', help='chooses how datasets are loaded. [unaligned | aligned | single | colorization]')\n        parser.add_argument('--direction', type=str, default='AtoB', help='AtoB or BtoA')\n        parser.add_argument('--serial_batches', action='store_true', help='if true, takes images in order to make batches, otherwise takes them randomly')\n        parser.add_argument('--num_threads', default=4, type=int, help='# threads for loading data')\n        parser.add_argument('--batch_size', type=int, default=1, help='input batch size')\n        parser.add_argument('--load_size', type=int, default=672, help='scale images to this size')\n        parser.add_argument('--crop_size', type=int, default=672, help='then crop to this size')\n        parser.add_argument('--max_dataset_size', type=int, default=10000, help='Maximum number of samples allowed per dataset. If the dataset directory contains more than max_dataset_size, only a subset is loaded.')\n        parser.add_argument('--preprocess', type=str, default='resize_and_crop', help='scaling and cropping of images at load time [resize_and_crop | crop | scale_width | scale_width_and_crop | none]')\n        parser.add_argument('--no_flip', action='store_true', help='if specified, do not flip the images for data augmentation')\n        parser.add_argument('--display_winsize', type=int, default=256, help='display window size for both visdom and HTML')\n        # additional parameters\n        parser.add_argument('--epoch', type=str, default='latest', help='which epoch to load? set to latest to use latest cached model')\n        parser.add_argument('--load_iter', type=int, default='0', help='which iteration to load? if load_iter > 0, the code will load models by iter_[load_iter]; otherwise, the code will load models by [epoch]')\n        parser.add_argument('--verbose', action='store_true', help='if specified, print more debugging information')\n        parser.add_argument('--suffix', default='', type=str, help='customized suffix: opt.name = opt.name + suffix: e.g., {model}_{netG}_size{load_size}')\n\n        parser.add_argument('--data_dir', type=str, required=False,\n                            help='input files directory images can be .png .jpg .tiff')\n        parser.add_argument('--output_dir', type=str, required=False,\n                            help='result dir. result depth will be png. vides are JMPG as avi')\n        parser.add_argument('--savecrops', type=int, required=False)\n        parser.add_argument('--savewholeest', type=int, required=False)\n        parser.add_argument('--output_resolution', type=int, required=False,\n                            help='0 for no restriction 1 for resize to input size')\n        parser.add_argument('--net_receptive_field_size', type=int, required=False)\n        parser.add_argument('--pix2pixsize', type=int, required=False)\n        parser.add_argument('--generatevideo', type=int, required=False)\n        parser.add_argument('--depthNet', type=int, required=False, help='0: midas 1:strurturedRL')\n        parser.add_argument('--R0', action='store_true')\n        parser.add_argument('--R20', action='store_true')\n        parser.add_argument('--Final', action='store_true')\n        parser.add_argument('--colorize_results', action='store_true')\n        parser.add_argument('--max_res', type=float, default=np.inf)\n\n        self.initialized = True\n        return parser\n\n    def gather_options(self):\n        \"\"\"Initialize our parser with basic options(only once).\n        Add additional model-specific and dataset-specific options.\n        These options are defined in the <modify_commandline_options> function\n        in model and dataset classes.\n        \"\"\"\n        if not self.initialized:  # check if it has been initialized\n            parser = argparse.ArgumentParser(formatter_class=argparse.ArgumentDefaultsHelpFormatter)\n            parser = self.initialize(parser)\n\n        # get the basic options\n        opt, _ = parser.parse_known_args()\n\n        # modify model-related parser options\n        model_name = opt.model\n        model_option_setter = models.get_option_setter(model_name)\n        parser = model_option_setter(parser, self.isTrain)\n        opt, _ = parser.parse_known_args()  # parse again with new defaults\n\n        # modify dataset-related parser options\n        # dataset_name = opt.dataset_mode\n        # dataset_option_setter = pix2pix.data.get_option_setter(dataset_name)\n        # parser = dataset_option_setter(parser, self.isTrain)\n\n        # save and return the parser\n        self.parser = parser\n        #return parser.parse_args() #EVIL\n        return opt\n\n    def print_options(self, opt):\n        \"\"\"Print and save options\n\n        It will print both current options and default values(if different).\n        It will save options into a text file / [checkpoints_dir] / opt.txt\n        \"\"\"\n        message = ''\n        message += '----------------- Options ---------------\\n'\n        for k, v in sorted(vars(opt).items()):\n            comment = ''\n            default = self.parser.get_default(k)\n            if v != default:\n                comment = '\\t[default: %s]' % str(default)\n            message += '{:>25}: {:<30}{}\\n'.format(str(k), str(v), comment)\n        message += '----------------- End -------------------'\n        print(message)\n\n        # save to the disk\n        expr_dir = os.path.join(opt.checkpoints_dir, opt.name)\n        util.mkdirs(expr_dir)\n        file_name = os.path.join(expr_dir, '{}_opt.txt'.format(opt.phase))\n        with open(file_name, 'wt') as opt_file:\n            opt_file.write(message)\n            opt_file.write('\\n')\n\n    def parse(self):\n        \"\"\"Parse our options, create checkpoints directory suffix, and set up gpu device.\"\"\"\n        opt = self.gather_options()\n        opt.isTrain = self.isTrain   # train or test\n\n        # process opt.suffix\n        if opt.suffix:\n            suffix = ('_' + opt.suffix.format(**vars(opt))) if opt.suffix != '' else ''\n            opt.name = opt.name + suffix\n\n        #self.print_options(opt)\n\n        # set gpu ids\n        str_ids = opt.gpu_ids.split(',')\n        opt.gpu_ids = []\n        for str_id in str_ids:\n            id = int(str_id)\n            if id >= 0:\n                opt.gpu_ids.append(id)\n        #if len(opt.gpu_ids) > 0:\n        #    torch.cuda.set_device(opt.gpu_ids[0])\n\n        self.opt = opt\n        return self.opt\n"
  },
  {
    "path": "modules/control/proc/leres/pix2pix/options/test_options.py",
    "content": "from .base_options import BaseOptions\n\n\nclass TestOptions(BaseOptions):\n    \"\"\"This class includes test options.\n\n    It also includes shared options defined in BaseOptions.\n    \"\"\"\n\n    def initialize(self, parser):\n        parser = BaseOptions.initialize(self, parser)  # define shared options\n        parser.add_argument('--aspect_ratio', type=float, default=1.0, help='aspect ratio of result images')\n        parser.add_argument('--phase', type=str, default='test', help='train, val, test, etc')\n        # Dropout and Batchnorm has different behavioir during training and test.\n        parser.add_argument('--eval', action='store_true', help='use eval mode during test time.')\n        parser.add_argument('--num_test', type=int, default=50, help='how many test images to run')\n        # rewrite devalue values\n        parser.set_defaults(model='pix2pix4depth')\n        # To avoid cropping, the load_size should be the same as crop_size\n        parser.set_defaults(load_size=parser.get_default('crop_size'))\n        self.isTrain = False\n        return parser\n"
  },
  {
    "path": "modules/control/proc/leres/pix2pix/util/__init__.py",
    "content": "\"\"\"This package includes a miscellaneous collection of useful helper functions.\"\"\"\n"
  },
  {
    "path": "modules/control/proc/leres/pix2pix/util/util.py",
    "content": "\"\"\"This module contains simple helper functions \"\"\"\nfrom __future__ import print_function\nimport torch\nimport numpy as np\nfrom PIL import Image\nimport os\n\n\ndef tensor2im(input_image, imtype=np.uint16):\n    \"\"\"\"Converts a Tensor array into a numpy image array.\n\n    Parameters:\n        input_image (tensor) --  the input image tensor array\n        imtype (type)        --  the desired type of the converted numpy array\n    \"\"\"\n    if not isinstance(input_image, np.ndarray):\n        if isinstance(input_image, torch.Tensor):  # get the data from a variable\n            image_tensor = input_image.data\n        else:\n            return input_image\n        image_numpy = torch.squeeze(image_tensor).cpu().numpy()  # convert it into a numpy array\n        image_numpy = (image_numpy + 1) / 2.0 * (2**16-1) #\n    else:  # if it is a numpy array, do nothing\n        image_numpy = input_image\n    return image_numpy.astype(imtype)\n\n\ndef diagnose_network(net, name='network'):\n    \"\"\"Calculate and print the mean of average absolute(gradients)\n\n    Parameters:\n        net (torch network) -- Torch network\n        name (str) -- the name of the network\n    \"\"\"\n    mean = 0.0\n    count = 0\n    for param in net.parameters():\n        if param.grad is not None:\n            mean += torch.mean(torch.abs(param.grad.data))\n            count += 1\n    if count > 0:\n        mean = mean / count\n    print(name)\n    print(mean)\n\n\ndef save_image(image_numpy, image_path, aspect_ratio=1.0):\n    \"\"\"Save a numpy image to the disk\n\n    Parameters:\n        image_numpy (numpy array) -- input numpy array\n        image_path (str)          -- the path of the image\n    \"\"\"\n    image_pil = Image.fromarray(image_numpy)\n\n    image_pil = image_pil.convert('I;16')\n\n    # image_pil = Image.fromarray(image_numpy)\n    # h, w, _ = image_numpy.shape\n    #\n    # if aspect_ratio > 1.0:\n    #     image_pil = image_pil.resize((h, int(w * aspect_ratio)), Image.BICUBIC)\n    # if aspect_ratio < 1.0:\n    #     image_pil = image_pil.resize((int(h / aspect_ratio), w), Image.BICUBIC)\n\n    image_pil.save(image_path)\n\n\ndef print_numpy(x, val=True, shp=False):\n    \"\"\"Print the mean, min, max, median, std, and size of a numpy array\n\n    Parameters:\n        val (bool) -- if print the values of the numpy array\n        shp (bool) -- if print the shape of the numpy array\n    \"\"\"\n    x = x.astype(np.float64)\n    if shp:\n        print('shape,', x.shape)\n    if val:\n        x = x.flatten()\n        print('mean = %3.3f, min = %3.3f, max = %3.3f, median = %3.3f, std=%3.3f' % (\n            np.mean(x), np.min(x), np.max(x), np.median(x), np.std(x)))\n\n\ndef mkdirs(paths):\n    \"\"\"create empty directories if they don't exist\n\n    Parameters:\n        paths (str list) -- a list of directory paths\n    \"\"\"\n    if isinstance(paths, list) and not isinstance(paths, str):\n        for path in paths:\n            mkdir(path)\n    else:\n        mkdir(paths)\n\n\ndef mkdir(path):\n    \"\"\"create a single empty directory if it didn't exist\n\n    Parameters:\n        path (str) -- a single directory path\n    \"\"\"\n    if not os.path.exists(path):\n        os.makedirs(path)\n"
  },
  {
    "path": "modules/control/proc/lineart.py",
    "content": "import os\nimport cv2\nimport numpy as np\nimport torch\nimport torch.nn as nn\nfrom einops import rearrange\nfrom huggingface_hub import hf_hub_download\nfrom PIL import Image\nfrom modules import devices\nfrom modules.shared import opts\nfrom modules.control.util import HWC3, resize_image\nnorm_layer = nn.InstanceNorm2d\n\n\nclass ResidualBlock(nn.Module):\n    def __init__(self, in_features):\n        super(ResidualBlock, self).__init__()\n\n        conv_block = [  nn.ReflectionPad2d(1),\n                        nn.Conv2d(in_features, in_features, 3),\n                        norm_layer(in_features),\n                        nn.ReLU(inplace=True),\n                        nn.ReflectionPad2d(1),\n                        nn.Conv2d(in_features, in_features, 3),\n                        norm_layer(in_features)\n                        ]\n\n        self.conv_block = nn.Sequential(*conv_block)\n\n    def forward(self, x):\n        return x + self.conv_block(x)\n\n\nclass Generator(nn.Module):\n    def __init__(self, input_nc, output_nc, n_residual_blocks=9, sigmoid=True):\n        super(Generator, self).__init__()\n\n        # Initial convolution block\n        model0 = [   nn.ReflectionPad2d(3),\n                    nn.Conv2d(input_nc, 64, 7),\n                    norm_layer(64),\n                    nn.ReLU(inplace=True) ]\n        self.model0 = nn.Sequential(*model0)\n\n        # Downsampling\n        model1 = []\n        in_features = 64\n        out_features = in_features*2\n        for _ in range(2):\n            model1 += [  nn.Conv2d(in_features, out_features, 3, stride=2, padding=1),\n                        norm_layer(out_features),\n                        nn.ReLU(inplace=True) ]\n            in_features = out_features\n            out_features = in_features*2\n        self.model1 = nn.Sequential(*model1)\n\n        model2 = []\n        # Residual blocks\n        for _ in range(n_residual_blocks):\n            model2 += [ResidualBlock(in_features)]\n        self.model2 = nn.Sequential(*model2)\n\n        # Upsampling\n        model3 = []\n        out_features = in_features//2\n        for _ in range(2):\n            model3 += [  nn.ConvTranspose2d(in_features, out_features, 3, stride=2, padding=1, output_padding=1),\n                        norm_layer(out_features),\n                        nn.ReLU(inplace=True) ]\n            in_features = out_features\n            out_features = in_features//2\n        self.model3 = nn.Sequential(*model3)\n\n        # Output layer\n        model4 = [  nn.ReflectionPad2d(3),\n                        nn.Conv2d(64, output_nc, 7)]\n        if sigmoid:\n            model4 += [nn.Sigmoid()]\n\n        self.model4 = nn.Sequential(*model4)\n\n    def forward(self, x, cond=None): # pylint: disable=unused-argument\n        out = self.model0(x)\n        out = self.model1(out)\n        out = self.model2(out)\n        out = self.model3(out)\n        out = self.model4(out)\n\n        return out\n\n\nclass LineartDetector:\n    def __init__(self, model, coarse_model):\n        self.model = model\n        self.model_coarse = coarse_model\n\n    @classmethod\n    def from_pretrained(cls, pretrained_model_or_path, filename=None, coarse_filename=None, cache_dir=None, local_files_only=False):\n        filename = filename or \"sk_model.pth\"\n        coarse_filename = coarse_filename or \"sk_model2.pth\"\n\n        if os.path.isdir(pretrained_model_or_path):\n            model_path = os.path.join(pretrained_model_or_path, filename)\n            coarse_model_path = os.path.join(pretrained_model_or_path, coarse_filename)\n        else:\n            model_path = hf_hub_download(pretrained_model_or_path, filename, cache_dir=cache_dir, local_files_only=local_files_only)\n            coarse_model_path = hf_hub_download(pretrained_model_or_path, coarse_filename, cache_dir=cache_dir, local_files_only=local_files_only)\n\n        model = Generator(3, 1, 3)\n        model.load_state_dict(torch.load(model_path, map_location=torch.device('cpu')))\n        model.eval()\n\n        coarse_model = Generator(3, 1, 3)\n        coarse_model.load_state_dict(torch.load(coarse_model_path, map_location=torch.device('cpu')))\n        coarse_model.eval()\n\n        return cls(model, coarse_model)\n\n    def to(self, device):\n        self.model.to(device)\n        self.model_coarse.to(device)\n        return self\n\n    def __call__(self, input_image, coarse=False, detect_resolution=512, image_resolution=512, output_type=\"pil\", **kwargs):\n        self.model.to(devices.device)\n        device = next(iter(self.model.parameters())).device\n        if not isinstance(input_image, np.ndarray):\n            input_image = np.array(input_image, dtype=np.uint8)\n        input_image = HWC3(input_image)\n        input_image = resize_image(input_image, detect_resolution)\n        model = self.model_coarse if coarse else self.model\n        assert input_image.ndim == 3\n        image = input_image\n        image = torch.from_numpy(image).float().to(device)\n        image = image / 255.0\n        image = rearrange(image, 'h w c -> 1 c h w')\n        line = model(image)[0][0]\n        line = line.cpu().numpy()\n        line = (line * 255.0).clip(0, 255).astype(np.uint8)\n        detected_map = line\n        detected_map = HWC3(detected_map)\n        img = resize_image(input_image, image_resolution)\n        H, W, _C = img.shape\n        detected_map = cv2.resize(detected_map, (W, H), interpolation=cv2.INTER_LINEAR)\n        detected_map = 255 - detected_map\n        if opts.control_move_processor:\n            self.model.to('cpu')\n        if output_type == \"pil\":\n            detected_map = Image.fromarray(detected_map)\n        return detected_map\n"
  },
  {
    "path": "modules/control/proc/lineart_anime.py",
    "content": "import functools\nimport os\nimport cv2\nimport numpy as np\nimport torch\nimport torch.nn as nn\nfrom einops import rearrange\nfrom huggingface_hub import hf_hub_download\nfrom PIL import Image\nfrom modules import devices\nfrom modules.shared import opts\nfrom modules.control.util import HWC3, resize_image\n\n\nclass UnetGenerator(nn.Module):\n    \"\"\"Create a Unet-based generator\"\"\"\n\n    def __init__(self, input_nc, output_nc, num_downs, ngf=64, norm_layer=nn.BatchNorm2d, use_dropout=False):\n        \"\"\"Construct a Unet generator\n        Parameters:\n            input_nc (int)  -- the number of channels in input images\n            output_nc (int) -- the number of channels in output images\n            num_downs (int) -- the number of downsamplings in UNet. For example, # if |num_downs| == 7,\n                                image of size 128x128 will become of size 1x1 # at the bottleneck\n            ngf (int)       -- the number of filters in the last conv layer\n            norm_layer      -- normalization layer\n        We construct the U-Net from the innermost layer to the outermost layer.\n        It is a recursive process.\n        \"\"\"\n        super(UnetGenerator, self).__init__()\n        # construct unet structure\n        unet_block = UnetSkipConnectionBlock(ngf * 8, ngf * 8, input_nc=None, submodule=None, norm_layer=norm_layer, innermost=True)  # add the innermost layer\n        for _ in range(num_downs - 5):          # add intermediate layers with ngf * 8 filters\n            unet_block = UnetSkipConnectionBlock(ngf * 8, ngf * 8, input_nc=None, submodule=unet_block, norm_layer=norm_layer, use_dropout=use_dropout)\n        # gradually reduce the number of filters from ngf * 8 to ngf\n        unet_block = UnetSkipConnectionBlock(ngf * 4, ngf * 8, input_nc=None, submodule=unet_block, norm_layer=norm_layer)\n        unet_block = UnetSkipConnectionBlock(ngf * 2, ngf * 4, input_nc=None, submodule=unet_block, norm_layer=norm_layer)\n        unet_block = UnetSkipConnectionBlock(ngf, ngf * 2, input_nc=None, submodule=unet_block, norm_layer=norm_layer)\n        self.model = UnetSkipConnectionBlock(output_nc, ngf, input_nc=input_nc, submodule=unet_block, outermost=True, norm_layer=norm_layer)  # add the outermost layer\n\n    def forward(self, input): # pylint: disable=redefined-builtin\n        \"\"\"Standard forward\"\"\"\n        return self.model(input)\n\n\nclass UnetSkipConnectionBlock(nn.Module):\n    \"\"\"Defines the Unet submodule with skip connection.\n        X -------------------identity----------------------\n        |-- downsampling -- |submodule| -- upsampling --|\n    \"\"\"\n\n    def __init__(self, outer_nc, inner_nc, input_nc=None,\n                 submodule=None, outermost=False, innermost=False, norm_layer=nn.BatchNorm2d, use_dropout=False):\n        \"\"\"Construct a Unet submodule with skip connections.\n        Parameters:\n            outer_nc (int) -- the number of filters in the outer conv layer\n            inner_nc (int) -- the number of filters in the inner conv layer\n            input_nc (int) -- the number of channels in input images/features\n            submodule (UnetSkipConnectionBlock) -- previously defined submodules\n            outermost (bool)    -- if this module is the outermost module\n            innermost (bool)    -- if this module is the innermost module\n            norm_layer          -- normalization layer\n            use_dropout (bool)  -- if use dropout layers.\n        \"\"\"\n        super(UnetSkipConnectionBlock, self).__init__()\n        self.outermost = outermost\n        if type(norm_layer) == functools.partial:\n            use_bias = norm_layer.func == nn.InstanceNorm2d\n        else:\n            use_bias = norm_layer == nn.InstanceNorm2d\n        if input_nc is None:\n            input_nc = outer_nc\n        downconv = nn.Conv2d(input_nc, inner_nc, kernel_size=4,\n                             stride=2, padding=1, bias=use_bias)\n        downrelu = nn.LeakyReLU(0.2, True)\n        downnorm = norm_layer(inner_nc)\n        uprelu = nn.ReLU(True)\n        upnorm = norm_layer(outer_nc)\n\n        if outermost:\n            upconv = nn.ConvTranspose2d(inner_nc * 2, outer_nc,\n                                        kernel_size=4, stride=2,\n                                        padding=1)\n            down = [downconv]\n            up = [uprelu, upconv, nn.Tanh()]\n            model = down + [submodule] + up\n        elif innermost:\n            upconv = nn.ConvTranspose2d(inner_nc, outer_nc,\n                                        kernel_size=4, stride=2,\n                                        padding=1, bias=use_bias)\n            down = [downrelu, downconv]\n            up = [uprelu, upconv, upnorm]\n            model = down + up\n        else:\n            upconv = nn.ConvTranspose2d(inner_nc * 2, outer_nc,\n                                        kernel_size=4, stride=2,\n                                        padding=1, bias=use_bias)\n            down = [downrelu, downconv, downnorm]\n            up = [uprelu, upconv, upnorm]\n\n            if use_dropout:\n                model = down + [submodule] + up + [nn.Dropout(0.5)]\n            else:\n                model = down + [submodule] + up\n\n        self.model = nn.Sequential(*model)\n\n    def forward(self, x):\n        if self.outermost:\n            return self.model(x)\n        else:   # add skip connections\n            return torch.cat([x, self.model(x)], 1)\n\n\nclass LineartAnimeDetector:\n    def __init__(self, model):\n        self.model = model\n\n    @classmethod\n    def from_pretrained(cls, pretrained_model_or_path, filename=None, cache_dir=None, local_files_only=False):\n        filename = filename or \"netG.pth\"\n        if os.path.isdir(pretrained_model_or_path):\n            model_path = os.path.join(pretrained_model_or_path, filename)\n        else:\n            model_path = hf_hub_download(pretrained_model_or_path, filename, cache_dir=cache_dir, local_files_only=local_files_only)\n        norm_layer = functools.partial(nn.InstanceNorm2d, affine=False, track_running_stats=False)\n        net = UnetGenerator(3, 1, 8, 64, norm_layer=norm_layer, use_dropout=False)\n        ckpt = torch.load(model_path)\n        for key in list(ckpt.keys()):\n            if 'module.' in key:\n                ckpt[key.replace('module.', '')] = ckpt[key]\n                del ckpt[key]\n        net.load_state_dict(ckpt)\n        net.eval()\n        return cls(net)\n\n    def to(self, device):\n        self.model.to(device)\n        return self\n\n    def __call__(self, input_image, detect_resolution=512, image_resolution=512, output_type=\"pil\", **kwargs):\n        self.model.to(devices.device)\n        device = next(iter(self.model.parameters())).device\n        if not isinstance(input_image, np.ndarray):\n            input_image = np.array(input_image, dtype=np.uint8)\n        input_image = HWC3(input_image)\n        input_image = resize_image(input_image, detect_resolution)\n        H, W, _C = input_image.shape\n        Hn = 256 * int(np.ceil(float(H) / 256.0))\n        Wn = 256 * int(np.ceil(float(W) / 256.0))\n        img = cv2.resize(input_image, (Wn, Hn), interpolation=cv2.INTER_CUBIC)\n        image_feed = torch.from_numpy(img).float().to(device)\n        image_feed = image_feed / 127.5 - 1.0\n        image_feed = rearrange(image_feed, 'h w c -> 1 c h w')\n        line = self.model(image_feed)[0, 0] * 127.5 + 127.5\n        line = line.cpu().numpy()\n        line = cv2.resize(line, (W, H), interpolation=cv2.INTER_CUBIC)\n        line = line.clip(0, 255).astype(np.uint8)\n        detected_map = line\n        detected_map = HWC3(detected_map)\n        img = resize_image(input_image, image_resolution)\n        H, W, _C = img.shape\n        detected_map = cv2.resize(detected_map, (W, H), interpolation=cv2.INTER_LINEAR)\n        detected_map = 255 - detected_map\n        if opts.control_move_processor:\n            self.model.to('cpu')\n        if output_type == \"pil\":\n            detected_map = Image.fromarray(detected_map)\n        return detected_map\n"
  },
  {
    "path": "modules/control/proc/marigold/__init__.py",
    "content": "import torch\nfrom PIL import Image\nfrom modules.control.util import HWC3, resize_image\nfrom modules import devices\nfrom modules.shared import opts\nfrom .marigold_pipeline import MarigoldPipeline\n\n\nclass MarigoldDetector:\n    def __init__(self, model):\n        self.model: MarigoldPipeline = model\n\n    @classmethod\n    def from_pretrained(cls, pretrained_model_or_path, cache_dir=None, **load_config):\n        model = MarigoldPipeline.from_pretrained(pretrained_model_or_path, cache_dir=cache_dir, **load_config)\n        return cls(model)\n\n    def to(self, device):\n        self.model.to(device)\n        return self\n\n    def __call__(\n        self,\n        input_image: Image,\n        denoising_steps: int = 10,\n        ensemble_size: int = 10,\n        processing_res: int = 768,\n        match_input_res: bool = True,\n        color_map: str = \"Spectral\",\n        output_type=None,\n    ):\n        self.model.to(device=devices.device, dtype=torch.float16)\n        res = self.model(\n            input_image,\n            denoising_steps=denoising_steps,\n            ensemble_size=ensemble_size,\n            processing_res=processing_res,\n            match_input_res=match_input_res,\n            color_map=color_map if color_map != 'None' else 'Spectral',\n            batch_size=1,\n            show_progress_bar=True,\n        )\n        depth_map = res.depth_colored if color_map != 'None' else res.depth_np\n        if opts.control_move_processor:\n            self.model.to('cpu')\n        if output_type == \"pil\":\n            return Image.fromarray(depth_map)\n        else:\n            return depth_map\n"
  },
  {
    "path": "modules/control/proc/marigold/marigold_pipeline.py",
    "content": "# Copyright 2023 Bingxin Ke, ETH Zurich. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n# --------------------------------------------------------------------------\n# If you find this code useful, we kindly ask you to cite our paper in your work.\n# Please find bibtex at: https://github.com/prs-eth/Marigold#-citation\n# More information about the method can be found at https://marigoldmonodepth.github.io\n# --------------------------------------------------------------------------\n\n\nfrom typing import Dict, Union\n\nimport torch\nfrom torch.utils.data import DataLoader, TensorDataset\nimport numpy as np\nfrom tqdm.auto import tqdm\nfrom PIL import Image\n\nfrom diffusers import (\n    DiffusionPipeline,\n    DDIMScheduler,\n    UNet2DConditionModel,\n    AutoencoderKL,\n)\nfrom diffusers.utils import BaseOutput\nfrom transformers import CLIPTextModel, CLIPTokenizer\n\nfrom .util.image_util import chw2hwc, colorize_depth_maps, resize_max_res\nfrom .util.batchsize import find_batch_size\nfrom .util.ensemble import ensemble_depths\n\n\nclass MarigoldDepthOutput(BaseOutput):\n    \"\"\"\n    Output class for Marigold monocular depth prediction pipeline.\n\n    Args:\n        depth_np (`np.ndarray`):\n            Predicted depth map, with depth values in the range of [0, 1].\n        depth_colored (`PIL.Image.Image`):\n            Colorized depth map, with the shape of [3, H, W] and values in [0, 1].\n        uncertainty (`None` or `np.ndarray`):\n            Uncalibrated uncertainty(MAD, median absolute deviation) coming from ensembling.\n    \"\"\"\n\n    depth_np: np.ndarray\n    depth_colored: Image.Image\n    uncertainty: Union[None, np.ndarray]\n\n\nclass MarigoldPipeline(DiffusionPipeline):\n    \"\"\"\n    Pipeline for monocular depth estimation using Marigold: https://marigoldmonodepth.github.io.\n\n    This model inherits from [`DiffusionPipeline`]. Check the superclass documentation for the generic methods the\n    library implements for all the pipelines (such as downloading or saving, running on a particular device, etc.)\n\n    Args:\n        unet (`UNet2DConditionModel`):\n            Conditional U-Net to denoise the depth latent, conditioned on image latent.\n        vae (`AutoencoderKL`):\n            Variational Auto-Encoder (VAE) Model to encode and decode images and depth maps\n            to and from latent representations.\n        scheduler (`DDIMScheduler`):\n            A scheduler to be used in combination with `unet` to denoise the encoded image latents.\n        text_encoder (`CLIPTextModel`):\n            Text-encoder, for empty text embedding.\n        tokenizer (`CLIPTokenizer`):\n            CLIP tokenizer.\n    \"\"\"\n\n    rgb_latent_scale_factor = 0.18215\n    depth_latent_scale_factor = 0.18215\n\n    def __init__(\n        self,\n        unet: UNet2DConditionModel,\n        vae: AutoencoderKL,\n        scheduler: DDIMScheduler,\n        text_encoder: CLIPTextModel,\n        tokenizer: CLIPTokenizer,\n    ):\n        super().__init__()\n\n        self.register_modules(\n            unet=unet,\n            vae=vae,\n            scheduler=scheduler,\n            text_encoder=text_encoder,\n            tokenizer=tokenizer,\n        )\n\n        self.empty_text_embed = None\n\n    @torch.no_grad()\n    def __call__(\n        self,\n        input_image: Image,\n        denoising_steps: int = 10,\n        ensemble_size: int = 10,\n        processing_res: int = 768,\n        match_input_res: bool = True,\n        batch_size: int = 0,\n        color_map: str = \"Spectral\",\n        show_progress_bar: bool = True,\n        ensemble_kwargs: Dict = None,\n    ) -> MarigoldDepthOutput:\n        \"\"\"\n        Function invoked when calling the pipeline.\n\n        Args:\n            input_image (`Image`):\n                Input RGB (or gray-scale) image.\n            processing_res (`int`, *optional*, defaults to `768`):\n                Maximum resolution of processing.\n                If set to 0: will not resize at all.\n            match_input_res (`bool`, *optional*, defaults to `True`):\n                Resize depth prediction to match input resolution.\n                Only valid if `limit_input_res` is not None.\n            denoising_steps (`int`, *optional*, defaults to `10`):\n                Number of diffusion denoising steps (DDIM) during inference.\n            ensemble_size (`int`, *optional*, defaults to `10`):\n                Number of predictions to be ensembled.\n            batch_size (`int`, *optional*, defaults to `0`):\n                Inference batch size, no bigger than `num_ensemble`.\n                If set to 0, the script will automatically decide the proper batch size.\n            show_progress_bar (`bool`, *optional*, defaults to `True`):\n                Display a progress bar of diffusion denoising.\n            color_map (`str`, *optional*, defaults to `\"Spectral\"`):\n                Colormap used to colorize the depth map.\n            ensemble_kwargs (`dict`, *optional*, defaults to `None`):\n                Arguments for detailed ensembling settings.\n        Returns:\n            `MarigoldDepthOutput`: Output class for Marigold monocular depth prediction pipeline, including:\n            - **depth_np** (`np.ndarray`) Predicted depth map, with depth values in the range of [0, 1]\n            - **depth_colored** (`PIL.Image.Image`) Colorized depth map, with the shape of [3, H, W] and values in [0, 1]\n            - **uncertainty** (`None` or `np.ndarray`) Uncalibrated uncertainty(MAD, median absolute deviation)\n                    coming from ensembling. None if `ensemble_size = 1`\n        \"\"\"\n\n        device = self.device\n        input_size = input_image.size\n\n        if not match_input_res:\n            assert (\n                processing_res is not None\n            ), \"Value error: `resize_output_back` is only valid with \"\n        assert processing_res >= 0\n        assert denoising_steps >= 1\n        assert ensemble_size >= 1\n\n        # ----------------- Image Preprocess -----------------\n        # Resize image\n        if processing_res > 0:\n            input_image = resize_max_res(\n                input_image, max_edge_resolution=processing_res\n            )\n        # Convert the image to RGB, to 1.remove the alpha channel 2.convert B&W to 3-channel\n        input_image = input_image.convert(\"RGB\")\n        image = np.asarray(input_image)\n\n        # Normalize rgb values\n        rgb = np.transpose(image, (2, 0, 1))  # [H, W, rgb] -> [rgb, H, W]\n        rgb_norm = rgb / 255.0\n        rgb_norm = torch.from_numpy(rgb_norm).to(self.dtype)\n        rgb_norm = rgb_norm.to(device)\n        assert rgb_norm.min() >= 0.0 and rgb_norm.max() <= 1.0\n\n        # ----------------- Predicting depth -----------------\n        # Batch repeated input image\n        duplicated_rgb = torch.stack([rgb_norm] * ensemble_size)\n        single_rgb_dataset = TensorDataset(duplicated_rgb)\n        if batch_size > 0:\n            _bs = batch_size\n        else:\n            _bs = find_batch_size(\n                ensemble_size=ensemble_size,\n                input_res=max(rgb_norm.shape[1:]),\n                dtype=self.dtype,\n            )\n\n        single_rgb_loader = DataLoader(\n            single_rgb_dataset, batch_size=_bs, shuffle=False\n        )\n\n        # Predict depth maps (batched)\n        depth_pred_ls = []\n        if show_progress_bar:\n            iterable = tqdm(\n                single_rgb_loader, desc=\" \" * 2 + \"Inference batches\", leave=False\n            )\n        else:\n            iterable = single_rgb_loader\n        for batch in iterable:\n            (batched_img,) = batch\n            depth_pred_raw = self.single_infer(\n                rgb_in=batched_img,\n                num_inference_steps=denoising_steps,\n                show_pbar=show_progress_bar,\n            )\n            depth_pred_ls.append(depth_pred_raw.detach().clone())\n        depth_preds = torch.concat(depth_pred_ls, axis=0).squeeze()\n        torch.cuda.empty_cache()  # clear vram cache for ensembling\n\n        # ----------------- Test-time ensembling -----------------\n        if ensemble_size > 1:\n            depth_pred, pred_uncert = ensemble_depths(\n                depth_preds, **(ensemble_kwargs or {})\n            )\n        else:\n            depth_pred = depth_preds\n            pred_uncert = None\n\n        # ----------------- Post processing -----------------\n        # Scale prediction to [0, 1]\n        min_d = torch.min(depth_pred)\n        max_d = torch.max(depth_pred)\n        depth_pred = (depth_pred - min_d) / (max_d - min_d)\n\n        # Convert to numpy\n        depth_pred = depth_pred.to(torch.float32).cpu().numpy()\n\n        # Resize back to original resolution\n        if match_input_res:\n            pred_img = Image.fromarray(depth_pred)\n            pred_img = pred_img.resize(input_size)\n            depth_pred = np.asarray(pred_img)\n\n        # Clip output range\n        depth_pred = depth_pred.clip(0, 1)\n\n        # Colorize\n        depth_colored = colorize_depth_maps(\n            depth_pred, 0, 1, cmap=color_map\n        ).squeeze()  # [3, H, W], value in (0, 1)\n        depth_colored = (depth_colored * 255).astype(np.uint8)\n        depth_colored_hwc = chw2hwc(depth_colored)\n        depth_colored_img = Image.fromarray(depth_colored_hwc)\n        return MarigoldDepthOutput(\n            depth_np=depth_pred,\n            depth_colored=depth_colored_img,\n            uncertainty=pred_uncert,\n        )\n\n    def __encode_empty_text(self):\n        \"\"\"\n        Encode text embedding for empty prompt\n        \"\"\"\n        prompt = \"\"\n        text_inputs = self.tokenizer(\n            prompt,\n            padding=\"do_not_pad\",\n            max_length=self.tokenizer.model_max_length,\n            truncation=True,\n            return_tensors=\"pt\",\n        )\n        text_input_ids = text_inputs.input_ids.to(self.text_encoder.device)\n        self.empty_text_embed = self.text_encoder(text_input_ids)[0].to(self.dtype)\n\n    @torch.no_grad()\n    def single_infer(\n        self, rgb_in: torch.Tensor, num_inference_steps: int, show_pbar: bool\n    ) -> torch.Tensor:\n        \"\"\"\n        Perform an individual depth prediction without ensembling.\n\n        Args:\n            rgb_in (`torch.Tensor`):\n                Input RGB image.\n            num_inference_steps (`int`):\n                Number of diffusion denoisign steps (DDIM) during inference.\n            show_pbar (`bool`):\n                Display a progress bar of diffusion denoising.\n        Returns:\n            `torch.Tensor`: Predicted depth map.\n        \"\"\"\n        device = rgb_in.device\n\n        # Set timesteps\n        self.scheduler.set_timesteps(num_inference_steps, device=device)\n        timesteps = self.scheduler.timesteps  # [T]\n\n        # Encode image\n        rgb_latent = self.encode_rgb(rgb_in)\n\n        # Initial depth map (noise)\n        depth_latent = torch.randn(\n            rgb_latent.shape, device=device, dtype=self.dtype\n        )  # [B, 4, h, w]\n\n        # Batched empty text embedding\n        if self.empty_text_embed is None:\n            self.__encode_empty_text()\n        batch_empty_text_embed = self.empty_text_embed.repeat(\n            (rgb_latent.shape[0], 1, 1)\n        )  # [B, 2, 1024]\n\n        # Denoising loop\n        if show_pbar:\n            iterable = tqdm(\n                enumerate(timesteps),\n                total=len(timesteps),\n                leave=False,\n                desc=\" \" * 4 + \"Diffusion denoising\",\n            )\n        else:\n            iterable = enumerate(timesteps)\n\n        for _i, t in iterable:\n            unet_input = torch.cat(\n                [rgb_latent, depth_latent], dim=1\n            )  # this order is important\n\n            # predict the noise residual\n            noise_pred = self.unet(\n                unet_input, t, encoder_hidden_states=batch_empty_text_embed\n            ).sample  # [B, 4, h, w]\n\n            # compute the previous noisy sample x_t -> x_t-1\n            depth_latent = self.scheduler.step(noise_pred, t, depth_latent).prev_sample\n        torch.cuda.empty_cache()\n        depth = self.decode_depth(depth_latent)\n\n        # clip prediction\n        depth = torch.clip(depth, -1.0, 1.0)\n        # shift to [0, 1]\n        depth = (depth + 1.0) / 2.0\n\n        return depth\n\n    def encode_rgb(self, rgb_in: torch.Tensor) -> torch.Tensor:\n        \"\"\"\n        Encode RGB image into latent.\n\n        Args:\n            rgb_in (`torch.Tensor`):\n                Input RGB image to be encoded.\n\n        Returns:\n            `torch.Tensor`: Image latent.\n        \"\"\"\n        # encode\n        h = self.vae.encoder(rgb_in)\n        moments = self.vae.quant_conv(h)\n        mean, _logvar = torch.chunk(moments, 2, dim=1)\n        # scale latent\n        rgb_latent = mean * self.rgb_latent_scale_factor\n        return rgb_latent\n\n    def decode_depth(self, depth_latent: torch.Tensor) -> torch.Tensor:\n        \"\"\"\n        Decode depth latent into depth map.\n\n        Args:\n            depth_latent (`torch.Tensor`):\n                Depth latent to be decoded.\n\n        Returns:\n            `torch.Tensor`: Decoded depth map.\n        \"\"\"\n        # scale latent\n        depth_latent = depth_latent / self.depth_latent_scale_factor\n        # decode\n        z = self.vae.post_quant_conv(depth_latent)\n        stacked = self.vae.decoder(z)\n        # mean of output channels\n        depth_mean = stacked.mean(dim=1, keepdim=True)\n        return depth_mean\n"
  },
  {
    "path": "modules/control/proc/marigold/util/batchsize.py",
    "content": "# Copyright 2023 Bingxin Ke, ETH Zurich. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n# --------------------------------------------------------------------------\n# If you find this code useful, we kindly ask you to cite our paper in your work.\n# Please find bibtex at: https://github.com/prs-eth/Marigold#-citation\n# More information about the method can be found at https://marigoldmonodepth.github.io\n# --------------------------------------------------------------------------\n\n\nimport torch\nimport math\n\n\n# Search table for suggested max. inference batch size\nbs_search_table = [\n    # tested on A100-PCIE-80GB\n    {\"res\": 768, \"total_vram\": 79, \"bs\": 35, \"dtype\": torch.float32},\n    {\"res\": 1024, \"total_vram\": 79, \"bs\": 20, \"dtype\": torch.float32},\n    # tested on A100-PCIE-40GB\n    {\"res\": 768, \"total_vram\": 39, \"bs\": 15, \"dtype\": torch.float32},\n    {\"res\": 1024, \"total_vram\": 39, \"bs\": 8, \"dtype\": torch.float32},\n    {\"res\": 768, \"total_vram\": 39, \"bs\": 30, \"dtype\": torch.float16},\n    {\"res\": 1024, \"total_vram\": 39, \"bs\": 15, \"dtype\": torch.float16},\n    # tested on RTX3090, RTX4090\n    {\"res\": 512, \"total_vram\": 23, \"bs\": 20, \"dtype\": torch.float32},\n    {\"res\": 768, \"total_vram\": 23, \"bs\": 7, \"dtype\": torch.float32},\n    {\"res\": 1024, \"total_vram\": 23, \"bs\": 3, \"dtype\": torch.float32},\n    {\"res\": 512, \"total_vram\": 23, \"bs\": 40, \"dtype\": torch.float16},\n    {\"res\": 768, \"total_vram\": 23, \"bs\": 18, \"dtype\": torch.float16},\n    {\"res\": 1024, \"total_vram\": 23, \"bs\": 10, \"dtype\": torch.float16},\n    # tested on GTX1080Ti\n    {\"res\": 512, \"total_vram\": 10, \"bs\": 5, \"dtype\": torch.float32},\n    {\"res\": 768, \"total_vram\": 10, \"bs\": 2, \"dtype\": torch.float32},\n    {\"res\": 512, \"total_vram\": 10, \"bs\": 10, \"dtype\": torch.float16},\n    {\"res\": 768, \"total_vram\": 10, \"bs\": 5, \"dtype\": torch.float16},\n    {\"res\": 1024, \"total_vram\": 10, \"bs\": 3, \"dtype\": torch.float16},\n]\n\n\ndef find_batch_size(ensemble_size: int, input_res: int, dtype: torch.dtype) -> int:\n    \"\"\"\n    Automatically search for suitable operating batch size.\n\n    Args:\n        ensemble_size (`int`):\n            Number of predictions to be ensembled.\n        input_res (`int`):\n            Operating resolution of the input image.\n\n    Returns:\n        `int`: Operating batch size.\n    \"\"\"\n    if not torch.cuda.is_available():\n        return 1\n\n    total_vram = torch.cuda.mem_get_info()[1] / 1024.0**3\n    filtered_bs_search_table = [s for s in bs_search_table if s[\"dtype\"] == dtype]\n    for settings in sorted(\n        filtered_bs_search_table,\n        key=lambda k: (k[\"res\"], -k[\"total_vram\"]),\n    ):\n        if input_res <= settings[\"res\"] and total_vram >= settings[\"total_vram\"]:\n            bs = settings[\"bs\"]\n            if bs > ensemble_size:\n                bs = ensemble_size\n            elif bs > math.ceil(ensemble_size / 2) and bs < ensemble_size:\n                bs = math.ceil(ensemble_size / 2)\n            return bs\n\n    return 1\n"
  },
  {
    "path": "modules/control/proc/marigold/util/ensemble.py",
    "content": "# Copyright 2023 Bingxin Ke, ETH Zurich. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n# --------------------------------------------------------------------------\n# If you find this code useful, we kindly ask you to cite our paper in your work.\n# Please find bibtex at: https://github.com/prs-eth/Marigold#-citation\n# More information about the method can be found at https://marigoldmonodepth.github.io\n# --------------------------------------------------------------------------\n\n\nimport numpy as np\nimport torch\n\nfrom scipy.optimize import minimize\n\n\ndef inter_distances(tensors: torch.Tensor):\n    \"\"\"\n    To calculate the distance between each two depth maps.\n    \"\"\"\n    distances = []\n    for i, j in torch.combinations(torch.arange(tensors.shape[0])):\n        arr1 = tensors[i : i + 1]\n        arr2 = tensors[j : j + 1]\n        distances.append(arr1 - arr2)\n    dist = torch.concatenate(distances, dim=0)\n    return dist\n\n\ndef ensemble_depths(\n    input_images: torch.Tensor,\n    regularizer_strength: float = 0.02,\n    max_iter: int = 2,\n    tol: float = 1e-3,\n    reduction: str = \"median\",\n    max_res: int = None,\n):\n    \"\"\"\n    To ensemble multiple affine-invariant depth images (up to scale and shift),\n        by aligning estimating the scale and shift\n    \"\"\"\n    device = input_images.device\n    dtype = input_images.dtype\n    np_dtype = np.float32\n\n    original_input = input_images.clone()\n    n_img = input_images.shape[0]\n    ori_shape = input_images.shape\n\n    if max_res is not None:\n        scale_factor = torch.min(max_res / torch.tensor(ori_shape[-2:]))\n        if scale_factor < 1:\n            downscaler = torch.nn.Upsample(scale_factor=scale_factor, mode=\"nearest\")\n            input_images = downscaler(torch.from_numpy(input_images)).numpy()\n\n    # init guess\n    np_img = input_images.reshape((n_img, -1)).to(torch.float32).cpu().numpy()\n    _min = np.min(np_img, axis=1)\n    _max = np.max(np_img, axis=1)\n    s_init = 1.0 / (_max - _min).reshape((-1, 1, 1))\n    t_init = (-1 * s_init.flatten() * _min.flatten()).reshape((-1, 1, 1))\n    x = np.concatenate([s_init, t_init]).reshape(-1).astype(np_dtype)\n\n    input_images = input_images.to(device)\n\n    # objective function\n    def closure(x):\n        l = len(x)\n        s = x[: int(l / 2)]\n        t = x[int(l / 2) :]\n        s = torch.from_numpy(s).to(dtype=dtype).to(device)\n        t = torch.from_numpy(t).to(dtype=dtype).to(device)\n\n        transformed_arrays = input_images * s.view((-1, 1, 1)) + t.view((-1, 1, 1))\n        dists = inter_distances(transformed_arrays)\n        sqrt_dist = torch.sqrt(torch.mean(dists**2))\n\n        if \"mean\" == reduction:\n            pred = torch.mean(transformed_arrays, dim=0)\n        elif \"median\" == reduction:\n            pred = torch.median(transformed_arrays, dim=0).values\n        else:\n            raise ValueError\n\n        near_err = torch.sqrt((0 - torch.min(pred)) ** 2)\n        far_err = torch.sqrt((1 - torch.max(pred)) ** 2)\n\n        err = sqrt_dist + (near_err + far_err) * regularizer_strength\n        err = err.to(torch.float32).detach().cpu().numpy().astype(np_dtype)\n        return err\n\n    res = minimize(\n        closure, x, method=\"BFGS\", tol=tol, options={\"maxiter\": max_iter, \"disp\": False}\n    )\n    x = res.x\n    l = len(x)\n    s = x[: int(l / 2)]\n    t = x[int(l / 2) :]\n\n    # Prediction\n    s = torch.from_numpy(s).to(dtype=dtype).to(device)\n    t = torch.from_numpy(t).to(dtype=dtype).to(device)\n    transformed_arrays = original_input * s.view(-1, 1, 1) + t.view(-1, 1, 1)\n    if \"mean\" == reduction:\n        aligned_images = torch.mean(transformed_arrays, dim=0)\n        std = torch.std(transformed_arrays, dim=0)\n        uncertainty = std\n    elif \"median\" == reduction:\n        aligned_images = torch.median(transformed_arrays, dim=0).values\n        # MAD (median absolute deviation) as uncertainty indicator\n        abs_dev = torch.abs(transformed_arrays - aligned_images)\n        mad = torch.median(abs_dev, dim=0).values\n        uncertainty = mad\n    else:\n        raise ValueError(f\"Unknown reduction method: {reduction}\")\n\n    # Scale and shift to [0, 1]\n    _min = torch.min(aligned_images)\n    _max = torch.max(aligned_images)\n    aligned_images = (aligned_images - _min) / (_max - _min)\n    uncertainty /= _max - _min\n\n    return aligned_images, uncertainty\n"
  },
  {
    "path": "modules/control/proc/marigold/util/image_util.py",
    "content": "# Copyright 2023 Bingxin Ke, ETH Zurich. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n# --------------------------------------------------------------------------\n# If you find this code useful, we kindly ask you to cite our paper in your work.\n# Please find bibtex at: https://github.com/prs-eth/Marigold#-citation\n# More information about the method can be found at https://marigoldmonodepth.github.io\n# --------------------------------------------------------------------------\n\n\nimport matplotlib as mpl\nimport numpy as np\nimport torch\nfrom PIL import Image\n\n\ndef colorize_depth_maps(\n    depth_map, min_depth, max_depth, cmap=\"Spectral\", valid_mask=None\n):\n    \"\"\"\n    Colorize depth maps.\n    \"\"\"\n    assert len(depth_map.shape) >= 2, \"Invalid dimension\"\n\n    if isinstance(depth_map, torch.Tensor):\n        depth = depth_map.detach().clone().squeeze().numpy()\n    elif isinstance(depth_map, np.ndarray):\n        depth = depth_map.copy().squeeze()\n    # reshape to [ (B,) H, W ]\n    if depth.ndim < 3:\n        depth = depth[np.newaxis, :, :]\n\n    # colorize\n    cm = mpl.colormaps[cmap]\n    depth = ((depth - min_depth) / (max_depth - min_depth)).clip(0, 1)\n    img_colored_np = cm(depth, bytes=False)[:, :, :, 0:3]  # value from 0 to 1\n    img_colored_np = np.rollaxis(img_colored_np, 3, 1)\n\n    if valid_mask is not None:\n        if isinstance(depth_map, torch.Tensor):\n            valid_mask = valid_mask.detach().numpy()\n        valid_mask = valid_mask.squeeze()  # [H, W] or [B, H, W]\n        if valid_mask.ndim < 3:\n            valid_mask = valid_mask[np.newaxis, np.newaxis, :, :]\n        else:\n            valid_mask = valid_mask[:, np.newaxis, :, :]\n        valid_mask = np.repeat(valid_mask, 3, axis=1)\n        img_colored_np[~valid_mask] = 0\n\n    if isinstance(depth_map, torch.Tensor):\n        img_colored = torch.from_numpy(img_colored_np).float()\n    elif isinstance(depth_map, np.ndarray):\n        img_colored = img_colored_np\n\n    return img_colored\n\n\ndef chw2hwc(chw):\n    assert 3 == len(chw.shape)\n    if isinstance(chw, torch.Tensor):\n        hwc = torch.permute(chw, (1, 2, 0))\n    elif isinstance(chw, np.ndarray):\n        hwc = np.moveaxis(chw, 0, -1)\n    return hwc\n\n\ndef resize_max_res(img: Image.Image, max_edge_resolution: int) -> Image.Image:\n    \"\"\"\n    Resize image to limit maximum edge length while keeping aspect ratio.\n\n    Args:\n        img (`Image.Image`):\n            Image to be resized.\n        max_edge_resolution (`int`):\n            Maximum edge length (pixel).\n\n    Returns:\n        `Image.Image`: Resized image.\n    \"\"\"\n    original_width, original_height = img.size\n    downscale_factor = min(\n        max_edge_resolution / original_width, max_edge_resolution / original_height\n    )\n\n    new_width = int(original_width * downscale_factor)\n    new_height = int(original_height * downscale_factor)\n\n    resized_img = img.resize((new_width, new_height))\n    return resized_img\n"
  },
  {
    "path": "modules/control/proc/marigold/util/seed_all.py",
    "content": "# Copyright 2023 Bingxin Ke, ETH Zurich. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n# --------------------------------------------------------------------------\n# If you find this code useful, we kindly ask you to cite our paper in your work.\n# Please find bibtex at: https://github.com/prs-eth/Marigold#-citation\n# More information about the method can be found at https://marigoldmonodepth.github.io\n# --------------------------------------------------------------------------\n\n\nimport random\nimport numpy as np\nimport torch\n\n\ndef seed_all(seed: int = 0):\n    \"\"\"\n    Set random seeds of all components.\n    \"\"\"\n    random.seed(seed)\n    np.random.seed(seed) # noqa\n    torch.manual_seed(seed)\n    torch.cuda.manual_seed_all(seed)\n"
  },
  {
    "path": "modules/control/proc/mediapipe_face.py",
    "content": "from typing import Union\nimport cv2\nimport numpy as np\nfrom PIL import Image\nfrom modules.control.util import HWC3, resize_image\n\n\nchecked_ok = False\n\ndef check_dependencies():\n    global checked_ok # pylint: disable=global-statement\n    from installer import installed, install, log\n    packages = [('mediapipe', 'mediapipe')]\n    for pkg in packages:\n        if not installed(pkg[1], reload=True, quiet=True):\n            install(pkg[0], pkg[1], ignore=False)\n    try:\n        import mediapipe as mp # pylint: disable=unused-import\n        checked_ok = True\n        return True\n    except Exception as e:\n        log.error(f'MediaPipe: {e}')\n        return False\n\n\nclass MediapipeFaceDetector:\n    def __call__(self,\n                 input_image: Union[np.ndarray, Image.Image] = None,\n                 max_faces: int = 1,\n                 min_confidence: float = 0.5,\n                 output_type: str = \"pil\",\n                 detect_resolution: int = 512,\n                 image_resolution: int = 512,\n                 **kwargs):\n        if not checked_ok:\n            if not check_dependencies():\n                return\n        from .mediapipe_face_util import generate_annotation\n        if input_image is None:\n            raise ValueError(\"input_image must be defined.\")\n        if not isinstance(input_image, np.ndarray):\n            input_image = np.array(input_image, dtype=np.uint8)\n        input_image = HWC3(input_image)\n        input_image = resize_image(input_image, detect_resolution)\n        detected_map = generate_annotation(input_image, max_faces, min_confidence)\n        detected_map = HWC3(detected_map)\n        img = resize_image(input_image, image_resolution)\n        H, W, _C = img.shape\n        detected_map = cv2.resize(detected_map, (W, H), interpolation=cv2.INTER_LINEAR)\n        if output_type == \"pil\":\n            detected_map = Image.fromarray(detected_map)\n        return detected_map\n"
  },
  {
    "path": "modules/control/proc/mediapipe_face_util.py",
    "content": "from typing import Mapping\nimport numpy as np\nfrom modules.shared import log\n\ntry:\n    import mediapipe as mp\nexcept ImportError:\n    log.error(\"Control processor MediaPipe: mediapipe not installed\")\n    mp = None\n\nif mp:\n    mp_drawing = mp.solutions.drawing_utils\n    mp_drawing_styles = mp.solutions.drawing_styles\n    mp_face_detection = mp.solutions.face_detection  # Only for counting faces.\n    mp_face_mesh = mp.solutions.face_mesh\n    mp_face_connections = mp.solutions.face_mesh_connections.FACEMESH_TESSELATION\n    mp_hand_connections = mp.solutions.hands_connections.HAND_CONNECTIONS\n    mp_body_connections = mp.solutions.pose_connections.POSE_CONNECTIONS\n\n    DrawingSpec = mp.solutions.drawing_styles.DrawingSpec\n    PoseLandmark = mp.solutions.drawing_styles.PoseLandmark\n\n    min_face_size_pixels: int = 64\n    f_thick = 2\n    f_rad = 1\n    right_iris_draw = DrawingSpec(color=(10, 200, 250), thickness=f_thick, circle_radius=f_rad)\n    right_eye_draw = DrawingSpec(color=(10, 200, 180), thickness=f_thick, circle_radius=f_rad)\n    right_eyebrow_draw = DrawingSpec(color=(10, 220, 180), thickness=f_thick, circle_radius=f_rad)\n    left_iris_draw = DrawingSpec(color=(250, 200, 10), thickness=f_thick, circle_radius=f_rad)\n    left_eye_draw = DrawingSpec(color=(180, 200, 10), thickness=f_thick, circle_radius=f_rad)\n    left_eyebrow_draw = DrawingSpec(color=(180, 220, 10), thickness=f_thick, circle_radius=f_rad)\n    mouth_draw = DrawingSpec(color=(10, 180, 10), thickness=f_thick, circle_radius=f_rad)\n    head_draw = DrawingSpec(color=(10, 200, 10), thickness=f_thick, circle_radius=f_rad)\n\n    # mp_face_mesh.FACEMESH_CONTOURS has all the items we care about.\n    face_connection_spec = {}\n    for edge in mp_face_mesh.FACEMESH_FACE_OVAL:\n        face_connection_spec[edge] = head_draw\n    for edge in mp_face_mesh.FACEMESH_LEFT_EYE:\n        face_connection_spec[edge] = left_eye_draw\n    for edge in mp_face_mesh.FACEMESH_LEFT_EYEBROW:\n        face_connection_spec[edge] = left_eyebrow_draw\n    # for edge in mp_face_mesh.FACEMESH_LEFT_IRIS:\n    #    face_connection_spec[edge] = left_iris_draw\n    for edge in mp_face_mesh.FACEMESH_RIGHT_EYE:\n        face_connection_spec[edge] = right_eye_draw\n    for edge in mp_face_mesh.FACEMESH_RIGHT_EYEBROW:\n        face_connection_spec[edge] = right_eyebrow_draw\n    # for edge in mp_face_mesh.FACEMESH_RIGHT_IRIS:\n    #    face_connection_spec[edge] = right_iris_draw\n    for edge in mp_face_mesh.FACEMESH_LIPS:\n        face_connection_spec[edge] = mouth_draw\n    iris_landmark_spec = {468: right_iris_draw, 473: left_iris_draw}\n\n\ndef draw_pupils(image, landmark_list, drawing_spec, halfwidth: int = 2):\n    \"\"\"We have a custom function to draw the pupils because the mp.draw_landmarks method requires a parameter for all\n    landmarks.  Until our PR is merged into mediapipe, we need this separate method.\"\"\"\n    if len(image.shape) != 3:\n        raise ValueError(\"Input image must be H,W,C.\")\n    image_rows, image_cols, image_channels = image.shape\n    if image_channels != 3:  # BGR channels\n        raise ValueError('Input image must contain three channel bgr data.')\n    for idx, landmark in enumerate(landmark_list.landmark):\n        if (\n                (landmark.HasField('visibility') and landmark.visibility < 0.9) or\n                (landmark.HasField('presence') and landmark.presence < 0.5)\n        ):\n            continue\n        if landmark.x >= 1.0 or landmark.x < 0 or landmark.y >= 1.0 or landmark.y < 0:\n            continue\n        image_x = int(image_cols*landmark.x)\n        image_y = int(image_rows*landmark.y)\n        draw_color = None\n        if isinstance(drawing_spec, Mapping):\n            if drawing_spec.get(idx) is None:\n                continue\n            else:\n                draw_color = drawing_spec[idx].color\n        elif isinstance(drawing_spec, DrawingSpec):\n            draw_color = drawing_spec.color\n        image[image_y-halfwidth:image_y+halfwidth, image_x-halfwidth:image_x+halfwidth, :] = draw_color\n\n\ndef reverse_channels(image):\n    \"\"\"Given a numpy array in RGB form, convert to BGR.  Will also convert from BGR to RGB.\"\"\"\n    # im[:,:,::-1] is a neat hack to convert BGR to RGB by reversing the indexing order.\n    # im[:,:,::[2,1,0]] would also work but makes a copy of the data.\n    return image[:, :, ::-1]\n\n\ndef generate_annotation(\n        img_rgb,\n        max_faces: int,\n        min_confidence: float\n):\n    \"\"\"\n    Find up to 'max_faces' inside the provided input image.\n    If min_face_size_pixels is provided and nonzero it will be used to filter faces that occupy less than this many\n    pixels in the image.\n    \"\"\"\n    if mp is None:\n        return img_rgb\n    with mp_face_mesh.FaceMesh(\n            static_image_mode=True,\n            max_num_faces=max_faces,\n            refine_landmarks=True,\n            min_detection_confidence=min_confidence,\n    ) as facemesh:\n        img_height, img_width, img_channels = img_rgb.shape\n        assert img_channels == 3\n\n        results = facemesh.process(img_rgb).multi_face_landmarks\n\n        if results is None:\n            print(\"No faces detected in controlnet image for Mediapipe face annotator.\")\n            return np.zeros_like(img_rgb)\n\n        # Filter faces that are too small\n        filtered_landmarks = []\n        for lm in results:\n            landmarks = lm.landmark\n            face_rect = [\n                landmarks[0].x,\n                landmarks[0].y,\n                landmarks[0].x,\n                landmarks[0].y,\n            ]  # Left, up, right, down.\n            for i in range(len(landmarks)):\n                face_rect[0] = min(face_rect[0], landmarks[i].x)\n                face_rect[1] = min(face_rect[1], landmarks[i].y)\n                face_rect[2] = max(face_rect[2], landmarks[i].x)\n                face_rect[3] = max(face_rect[3], landmarks[i].y)\n            if min_face_size_pixels > 0:\n                face_width = abs(face_rect[2] - face_rect[0])\n                face_height = abs(face_rect[3] - face_rect[1])\n                face_width_pixels = face_width * img_width\n                face_height_pixels = face_height * img_height\n                face_size = min(face_width_pixels, face_height_pixels)\n                if face_size >= min_face_size_pixels:\n                    filtered_landmarks.append(lm)\n            else:\n                filtered_landmarks.append(lm)\n\n        # Annotations are drawn in BGR for some reason, but we don't need to flip a zero-filled image at the start.\n        empty = np.zeros_like(img_rgb)\n\n        # Draw detected faces:\n        for face_landmarks in filtered_landmarks:\n            mp_drawing.draw_landmarks(\n                empty,\n                face_landmarks,\n                connections=face_connection_spec.keys(),\n                landmark_drawing_spec=None,\n                connection_drawing_spec=face_connection_spec\n            )\n            draw_pupils(empty, face_landmarks, iris_landmark_spec, 2)\n\n        # Flip BGR back to RGB.\n        empty = reverse_channels(empty).copy()\n\n        return empty\n"
  },
  {
    "path": "modules/control/proc/midas/LICENSE",
    "content": "MIT License\n\nCopyright (c) 2019 Intel ISL (Intel Intelligent Systems Lab)\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n"
  },
  {
    "path": "modules/control/proc/midas/__init__.py",
    "content": "import os\n\nimport cv2\nimport numpy as np\nimport torch\nfrom einops import rearrange\nfrom huggingface_hub import hf_hub_download\nfrom PIL import Image\nfrom modules.control.util import HWC3, resize_image\nfrom modules import devices\nfrom modules.shared import opts\nfrom .api import MiDaSInference\n\n\nclass MidasDetector:\n    def __init__(self, model):\n        self.model = model\n\n    @classmethod\n    def from_pretrained(cls, pretrained_model_or_path, model_type=\"dpt_hybrid\", filename=None, cache_dir=None, local_files_only=False):\n        if pretrained_model_or_path == \"lllyasviel/ControlNet\":\n            filename = filename or \"annotator/ckpts/dpt_hybrid-midas-501f0c75.pt\"\n        else:\n            filename = filename or \"dpt_hybrid-midas-501f0c75.pt\"\n        if os.path.isdir(pretrained_model_or_path):\n            model_path = os.path.join(pretrained_model_or_path, filename)\n        else:\n            model_path = hf_hub_download(pretrained_model_or_path, filename, cache_dir=cache_dir, local_files_only=local_files_only)\n        model = MiDaSInference(model_type=model_type, model_path=model_path)\n        return cls(model)\n\n\n    def to(self, device):\n        self.model.to(device)\n        return self\n\n    def __call__(self, input_image, a=np.pi * 2.0, bg_th=0.1, depth_and_normal=False, detect_resolution=512, image_resolution=512, output_type=None):\n        self.model.to(devices.device)\n        device = next(iter(self.model.parameters())).device\n        if not isinstance(input_image, np.ndarray):\n            input_image = np.array(input_image, dtype=np.uint8)\n            output_type = output_type or \"pil\"\n        else:\n            output_type = output_type or \"np\"\n        input_image = HWC3(input_image)\n        input_image = resize_image(input_image, detect_resolution)\n        assert input_image.ndim == 3\n        image_depth = input_image\n        image_depth = torch.from_numpy(image_depth).float()\n        image_depth = image_depth.to(device)\n        image_depth = image_depth / 127.5 - 1.0\n        image_depth = rearrange(image_depth, 'h w c -> 1 c h w')\n        depth = self.model(image_depth)[0]\n        depth_pt = depth.clone()\n        depth_pt -= torch.min(depth_pt)\n        depth_pt /= torch.max(depth_pt)\n        depth_pt = depth_pt.cpu().numpy()\n        depth_image = (depth_pt * 255.0).clip(0, 255).astype(np.uint8)\n        if depth_and_normal:\n            depth_np = depth.cpu().numpy()\n            x = cv2.Sobel(depth_np, cv2.CV_32F, 1, 0, ksize=3)\n            y = cv2.Sobel(depth_np, cv2.CV_32F, 0, 1, ksize=3)\n            z = np.ones_like(x) * a\n            x[depth_pt < bg_th] = 0\n            y[depth_pt < bg_th] = 0\n            normal = np.stack([x, y, z], axis=2)\n            normal /= np.sum(normal ** 2.0, axis=2, keepdims=True) ** 0.5\n            normal_image = (normal * 127.5 + 127.5).clip(0, 255).astype(np.uint8)[:, :, ::-1]\n        depth_image = HWC3(depth_image)\n        if depth_and_normal:\n            normal_image = HWC3(normal_image)\n        img = resize_image(input_image, image_resolution)\n        H, W, _C = img.shape\n        depth_image = cv2.resize(depth_image, (W, H), interpolation=cv2.INTER_LINEAR)\n        if depth_and_normal:\n            normal_image = cv2.resize(normal_image, (W, H), interpolation=cv2.INTER_LINEAR)\n        if output_type == \"pil\":\n            depth_image = Image.fromarray(depth_image)\n            if depth_and_normal:\n                normal_image = Image.fromarray(normal_image)\n        if opts.control_move_processor:\n            self.model.to('cpu')\n        if depth_and_normal:\n            return depth_image, normal_image\n        else:\n            return depth_image\n"
  },
  {
    "path": "modules/control/proc/midas/api.py",
    "content": "# based on https://github.com/isl-org/MiDaS\n\nimport cv2\nimport os\nimport torch\nimport torch.nn as nn\nfrom torchvision.transforms import Compose\n\nfrom .midas.dpt_depth import DPTDepthModel\nfrom .midas.midas_net import MidasNet\nfrom .midas.midas_net_custom import MidasNet_small\nfrom .midas.transforms import Resize, NormalizeImage, PrepareForNet\nfrom modules.control.util import annotator_ckpts_path\n\n\nISL_PATHS = {\n    \"dpt_large\": os.path.join(annotator_ckpts_path, \"dpt_large-midas-2f21e586.pt\"),\n    \"dpt_hybrid\": os.path.join(annotator_ckpts_path, \"dpt_hybrid-midas-501f0c75.pt\"),\n    \"midas_v21\": \"\",\n    \"midas_v21_small\": \"\",\n}\n\nremote_model_path = \"https://huggingface.co/lllyasviel/ControlNet/resolve/main/annotator/ckpts/dpt_hybrid-midas-501f0c75.pt\"\n\n\ndef disabled_train(self, mode=True):\n    \"\"\"Overwrite model.train with this function to make sure train/eval mode\n    does not change anymore.\"\"\"\n    return self\n\n\ndef load_midas_transform(model_type):\n    # https://github.com/isl-org/MiDaS/blob/master/run.py\n    # load transform only\n    if model_type == \"dpt_large\":  # DPT-Large\n        net_w, net_h = 384, 384\n        resize_mode = \"minimal\"\n        normalization = NormalizeImage(mean=[0.5, 0.5, 0.5], std=[0.5, 0.5, 0.5])\n\n    elif model_type == \"dpt_hybrid\":  # DPT-Hybrid\n        net_w, net_h = 384, 384\n        resize_mode = \"minimal\"\n        normalization = NormalizeImage(mean=[0.5, 0.5, 0.5], std=[0.5, 0.5, 0.5])\n\n    elif model_type == \"midas_v21\":\n        net_w, net_h = 384, 384\n        resize_mode = \"upper_bound\"\n        normalization = NormalizeImage(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])\n\n    elif model_type == \"midas_v21_small\":\n        net_w, net_h = 256, 256\n        resize_mode = \"upper_bound\"\n        normalization = NormalizeImage(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])\n\n    else:\n        raise AssertionError(f\"model_type '{model_type}' not implemented, use: --model_type large\")\n\n    transform = Compose(\n        [\n            Resize(\n                net_w,\n                net_h,\n                resize_target=None,\n                keep_aspect_ratio=True,\n                ensure_multiple_of=32,\n                resize_method=resize_mode,\n                image_interpolation_method=cv2.INTER_CUBIC,\n            ),\n            normalization,\n            PrepareForNet(),\n        ]\n    )\n\n    return transform\n\n\ndef load_model(model_type, model_path=None):\n    # https://github.com/isl-org/MiDaS/blob/master/run.py\n    # load network\n    model_path = model_path or ISL_PATHS[model_type]\n    if model_type == \"dpt_large\":  # DPT-Large\n        model = DPTDepthModel(\n            path=model_path,\n            backbone=\"vitl16_384\",\n            non_negative=True,\n        )\n        net_w, net_h = 384, 384\n        resize_mode = \"minimal\"\n        normalization = NormalizeImage(mean=[0.5, 0.5, 0.5], std=[0.5, 0.5, 0.5])\n\n    elif model_type == \"dpt_hybrid\":  # DPT-Hybrid\n        if not os.path.exists(model_path):\n            from basicsr.utils.download_util import load_file_from_url\n            load_file_from_url(remote_model_path, model_dir=annotator_ckpts_path)\n\n        model = DPTDepthModel(\n            path=model_path,\n            backbone=\"vitb_rn50_384\",\n            non_negative=True,\n        )\n        net_w, net_h = 384, 384\n        resize_mode = \"minimal\"\n        normalization = NormalizeImage(mean=[0.5, 0.5, 0.5], std=[0.5, 0.5, 0.5])\n\n    elif model_type == \"midas_v21\":\n        model = MidasNet(model_path, non_negative=True)\n        net_w, net_h = 384, 384\n        resize_mode = \"upper_bound\"\n        normalization = NormalizeImage(\n            mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225]\n        )\n\n    elif model_type == \"midas_v21_small\":\n        model = MidasNet_small(model_path, features=64, backbone=\"efficientnet_lite3\", exportable=True,\n                               non_negative=True, blocks={'expand': True})\n        net_w, net_h = 256, 256\n        resize_mode = \"upper_bound\"\n        normalization = NormalizeImage(\n            mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225]\n        )\n\n    else:\n        print(f\"model_type '{model_type}' not implemented, use: --model_type large\")\n        raise AssertionError\n\n    transform = Compose(\n        [\n            Resize(\n                net_w,\n                net_h,\n                resize_target=None,\n                keep_aspect_ratio=True,\n                ensure_multiple_of=32,\n                resize_method=resize_mode,\n                image_interpolation_method=cv2.INTER_CUBIC,\n            ),\n            normalization,\n            PrepareForNet(),\n        ]\n    )\n\n    return model.eval(), transform\n\n\nclass MiDaSInference(nn.Module):\n    MODEL_TYPES_TORCH_HUB = [\n        \"DPT_Large\",\n        \"DPT_Hybrid\",\n        \"MiDaS_small\"\n    ]\n    MODEL_TYPES_ISL = [\n        \"dpt_large\",\n        \"dpt_hybrid\",\n        \"midas_v21\",\n        \"midas_v21_small\",\n    ]\n\n    def __init__(self, model_type, model_path):\n        super().__init__()\n        assert (model_type in self.MODEL_TYPES_ISL)\n        model, _ = load_model(model_type, model_path)\n        self.model = model\n        self.model.train = disabled_train\n\n    def forward(self, x):\n        prediction = self.model(x)\n        return prediction\n"
  },
  {
    "path": "modules/control/proc/midas/midas/__init__.py",
    "content": ""
  },
  {
    "path": "modules/control/proc/midas/midas/base_model.py",
    "content": "import torch\n\n\nclass BaseModel(torch.nn.Module):\n    def load(self, path):\n        \"\"\"Load model from file.\n\n        Args:\n            path (str): file path\n        \"\"\"\n        parameters = torch.load(path, map_location=torch.device('cpu'))\n\n        if \"optimizer\" in parameters:\n            parameters = parameters[\"model\"]\n\n        self.load_state_dict(parameters)\n"
  },
  {
    "path": "modules/control/proc/midas/midas/blocks.py",
    "content": "import torch\nimport torch.nn as nn\n\nfrom .vit import (\n    _make_pretrained_vitb_rn50_384,\n    _make_pretrained_vitl16_384,\n    _make_pretrained_vitb16_384,\n    forward_vit,\n)\n\ndef _make_encoder(backbone, features, use_pretrained, groups=1, expand=False, exportable=True, hooks=None, use_vit_only=False, use_readout=\"ignore\",):\n    if backbone == \"vitl16_384\":\n        pretrained = _make_pretrained_vitl16_384(\n            use_pretrained, hooks=hooks, use_readout=use_readout\n        )\n        scratch = _make_scratch(\n            [256, 512, 1024, 1024], features, groups=groups, expand=expand\n        )  # ViT-L/16 - 85.0% Top1 (backbone)\n    elif backbone == \"vitb_rn50_384\":\n        pretrained = _make_pretrained_vitb_rn50_384(\n            use_pretrained,\n            hooks=hooks,\n            use_vit_only=use_vit_only,\n            use_readout=use_readout,\n        )\n        scratch = _make_scratch(\n            [256, 512, 768, 768], features, groups=groups, expand=expand\n        )  # ViT-H/16 - 85.0% Top1 (backbone)\n    elif backbone == \"vitb16_384\":\n        pretrained = _make_pretrained_vitb16_384(\n            use_pretrained, hooks=hooks, use_readout=use_readout\n        )\n        scratch = _make_scratch(\n            [96, 192, 384, 768], features, groups=groups, expand=expand\n        )  # ViT-B/16 - 84.6% Top1 (backbone)\n    elif backbone == \"resnext101_wsl\":\n        pretrained = _make_pretrained_resnext101_wsl(use_pretrained)\n        scratch = _make_scratch([256, 512, 1024, 2048], features, groups=groups, expand=expand)     # efficientnet_lite3\n    elif backbone == \"efficientnet_lite3\":\n        pretrained = _make_pretrained_efficientnet_lite3(use_pretrained, exportable=exportable)\n        scratch = _make_scratch([32, 48, 136, 384], features, groups=groups, expand=expand)  # efficientnet_lite3\n    else:\n        print(f\"Backbone '{backbone}' not implemented\")\n        raise AssertionError\n\n    return pretrained, scratch\n\n\ndef _make_scratch(in_shape, out_shape, groups=1, expand=False):\n    scratch = nn.Module()\n\n    out_shape1 = out_shape\n    out_shape2 = out_shape\n    out_shape3 = out_shape\n    out_shape4 = out_shape\n    if expand is True:\n        out_shape1 = out_shape\n        out_shape2 = out_shape*2\n        out_shape3 = out_shape*4\n        out_shape4 = out_shape*8\n\n    scratch.layer1_rn = nn.Conv2d(\n        in_shape[0], out_shape1, kernel_size=3, stride=1, padding=1, bias=False, groups=groups\n    )\n    scratch.layer2_rn = nn.Conv2d(\n        in_shape[1], out_shape2, kernel_size=3, stride=1, padding=1, bias=False, groups=groups\n    )\n    scratch.layer3_rn = nn.Conv2d(\n        in_shape[2], out_shape3, kernel_size=3, stride=1, padding=1, bias=False, groups=groups\n    )\n    scratch.layer4_rn = nn.Conv2d(\n        in_shape[3], out_shape4, kernel_size=3, stride=1, padding=1, bias=False, groups=groups\n    )\n\n    return scratch\n\n\ndef _make_pretrained_efficientnet_lite3(use_pretrained, exportable=False):\n    efficientnet = torch.hub.load(\n        \"rwightman/gen-efficientnet-pytorch\",\n        \"tf_efficientnet_lite3\",\n        pretrained=use_pretrained,\n        exportable=exportable\n    )\n    return _make_efficientnet_backbone(efficientnet)\n\n\ndef _make_efficientnet_backbone(effnet):\n    pretrained = nn.Module()\n\n    pretrained.layer1 = nn.Sequential(\n        effnet.conv_stem, effnet.bn1, effnet.act1, *effnet.blocks[0:2]\n    )\n    pretrained.layer2 = nn.Sequential(*effnet.blocks[2:3])\n    pretrained.layer3 = nn.Sequential(*effnet.blocks[3:5])\n    pretrained.layer4 = nn.Sequential(*effnet.blocks[5:9])\n\n    return pretrained\n\n\ndef _make_resnet_backbone(resnet):\n    pretrained = nn.Module()\n    pretrained.layer1 = nn.Sequential(\n        resnet.conv1, resnet.bn1, resnet.relu, resnet.maxpool, resnet.layer1\n    )\n\n    pretrained.layer2 = resnet.layer2\n    pretrained.layer3 = resnet.layer3\n    pretrained.layer4 = resnet.layer4\n\n    return pretrained\n\n\ndef _make_pretrained_resnext101_wsl(use_pretrained):\n    resnet = torch.hub.load(\"facebookresearch/WSL-Images\", \"resnext101_32x8d_wsl\")\n    return _make_resnet_backbone(resnet)\n\n\n\nclass Interpolate(nn.Module):\n    \"\"\"Interpolation module.\n    \"\"\"\n\n    def __init__(self, scale_factor, mode, align_corners=False):\n        \"\"\"Init.\n\n        Args:\n            scale_factor (float): scaling\n            mode (str): interpolation mode\n        \"\"\"\n        super(Interpolate, self).__init__()\n\n        self.interp = nn.functional.interpolate\n        self.scale_factor = scale_factor\n        self.mode = mode\n        self.align_corners = align_corners\n\n    def forward(self, x):\n        \"\"\"Forward pass.\n\n        Args:\n            x (tensor): input\n\n        Returns:\n            tensor: interpolated data\n        \"\"\"\n\n        x = self.interp(\n            x, scale_factor=self.scale_factor, mode=self.mode, align_corners=self.align_corners\n        )\n\n        return x\n\n\nclass ResidualConvUnit(nn.Module):\n    \"\"\"Residual convolution module.\n    \"\"\"\n\n    def __init__(self, features):\n        \"\"\"Init.\n\n        Args:\n            features (int): number of features\n        \"\"\"\n        super().__init__()\n\n        self.conv1 = nn.Conv2d(\n            features, features, kernel_size=3, stride=1, padding=1, bias=True\n        )\n\n        self.conv2 = nn.Conv2d(\n            features, features, kernel_size=3, stride=1, padding=1, bias=True\n        )\n\n        self.relu = nn.ReLU(inplace=True)\n\n    def forward(self, x):\n        \"\"\"Forward pass.\n\n        Args:\n            x (tensor): input\n\n        Returns:\n            tensor: output\n        \"\"\"\n        out = self.relu(x)\n        out = self.conv1(out)\n        out = self.relu(out)\n        out = self.conv2(out)\n\n        return out + x\n\n\nclass FeatureFusionBlock(nn.Module):\n    \"\"\"Feature fusion block.\n    \"\"\"\n\n    def __init__(self, features):\n        \"\"\"Init.\n\n        Args:\n            features (int): number of features\n        \"\"\"\n        super(FeatureFusionBlock, self).__init__()\n\n        self.resConfUnit1 = ResidualConvUnit(features)\n        self.resConfUnit2 = ResidualConvUnit(features)\n\n    def forward(self, *xs):\n        \"\"\"Forward pass.\n\n        Returns:\n            tensor: output\n        \"\"\"\n        output = xs[0]\n\n        if len(xs) == 2:\n            output += self.resConfUnit1(xs[1])\n\n        output = self.resConfUnit2(output)\n\n        output = nn.functional.interpolate(\n            output, scale_factor=2, mode=\"bilinear\", align_corners=True\n        )\n\n        return output\n\n\n\n\nclass ResidualConvUnit_custom(nn.Module):\n    \"\"\"Residual convolution module.\n    \"\"\"\n\n    def __init__(self, features, activation, bn):\n        \"\"\"Init.\n\n        Args:\n            features (int): number of features\n        \"\"\"\n        super().__init__()\n\n        self.bn = bn\n\n        self.groups=1\n\n        self.conv1 = nn.Conv2d(\n            features, features, kernel_size=3, stride=1, padding=1, bias=True, groups=self.groups\n        )\n\n        self.conv2 = nn.Conv2d(\n            features, features, kernel_size=3, stride=1, padding=1, bias=True, groups=self.groups\n        )\n\n        if self.bn is True:\n            self.bn1 = nn.BatchNorm2d(features)\n            self.bn2 = nn.BatchNorm2d(features)\n\n        self.activation = activation\n\n        self.skip_add = nn.quantized.FloatFunctional()\n\n    def forward(self, x):\n        \"\"\"Forward pass.\n\n        Args:\n            x (tensor): input\n\n        Returns:\n            tensor: output\n        \"\"\"\n\n        out = self.activation(x)\n        out = self.conv1(out)\n        if self.bn is True:\n            out = self.bn1(out)\n\n        out = self.activation(out)\n        out = self.conv2(out)\n        if self.bn is True:\n            out = self.bn2(out)\n\n        if self.groups > 1:\n            out = self.conv_merge(out)\n\n        return self.skip_add.add(out, x)\n\n        # return out + x\n\n\nclass FeatureFusionBlock_custom(nn.Module):\n    \"\"\"Feature fusion block.\n    \"\"\"\n\n    def __init__(self, features, activation, deconv=False, bn=False, expand=False, align_corners=True):\n        \"\"\"Init.\n\n        Args:\n            features (int): number of features\n        \"\"\"\n        super(FeatureFusionBlock_custom, self).__init__()\n\n        self.deconv = deconv\n        self.align_corners = align_corners\n\n        self.groups=1\n\n        self.expand = expand\n        out_features = features\n        if self.expand is True:\n            out_features = features//2\n\n        self.out_conv = nn.Conv2d(features, out_features, kernel_size=1, stride=1, padding=0, bias=True, groups=1)\n\n        self.resConfUnit1 = ResidualConvUnit_custom(features, activation, bn)\n        self.resConfUnit2 = ResidualConvUnit_custom(features, activation, bn)\n\n        self.skip_add = nn.quantized.FloatFunctional()\n\n    def forward(self, *xs):\n        \"\"\"Forward pass.\n\n        Returns:\n            tensor: output\n        \"\"\"\n        output = xs[0]\n\n        if len(xs) == 2:\n            res = self.resConfUnit1(xs[1])\n            output = self.skip_add.add(output, res)\n            # output += res\n\n        output = self.resConfUnit2(output)\n\n        output = nn.functional.interpolate(\n            output, scale_factor=2, mode=\"bilinear\", align_corners=self.align_corners\n        )\n\n        output = self.out_conv(output)\n\n        return output\n"
  },
  {
    "path": "modules/control/proc/midas/midas/dpt_depth.py",
    "content": "import torch\nimport torch.nn as nn\nimport torch.nn.functional as F\n\nfrom .base_model import BaseModel\nfrom .blocks import (\n    FeatureFusionBlock,\n    FeatureFusionBlock_custom,\n    Interpolate,\n    _make_encoder,\n    forward_vit,\n)\n\n\ndef _make_fusion_block(features, use_bn):\n    return FeatureFusionBlock_custom(\n        features,\n        nn.ReLU(False),\n        deconv=False,\n        bn=use_bn,\n        expand=False,\n        align_corners=True,\n    )\n\n\nclass DPT(BaseModel):\n    def __init__(\n        self,\n        head,\n        features=256,\n        backbone=\"vitb_rn50_384\",\n        readout=\"project\",\n        channels_last=False,\n        use_bn=False,\n    ):\n\n        super(DPT, self).__init__()\n\n        self.channels_last = channels_last\n\n        hooks = {\n            \"vitb_rn50_384\": [0, 1, 8, 11],\n            \"vitb16_384\": [2, 5, 8, 11],\n            \"vitl16_384\": [5, 11, 17, 23],\n        }\n\n        # Instantiate backbone and reassemble blocks\n        self.pretrained, self.scratch = _make_encoder(\n            backbone,\n            features,\n            False, # Set to true of you want to train from scratch, uses ImageNet weights\n            groups=1,\n            expand=False,\n            exportable=False,\n            hooks=hooks[backbone],\n            use_readout=readout,\n        )\n\n        self.scratch.refinenet1 = _make_fusion_block(features, use_bn)\n        self.scratch.refinenet2 = _make_fusion_block(features, use_bn)\n        self.scratch.refinenet3 = _make_fusion_block(features, use_bn)\n        self.scratch.refinenet4 = _make_fusion_block(features, use_bn)\n\n        self.scratch.output_conv = head\n\n\n    def forward(self, x):\n        if self.channels_last is True:\n            x.contiguous(memory_format=torch.channels_last)\n\n        layer_1, layer_2, layer_3, layer_4 = forward_vit(self.pretrained, x)\n\n        layer_1_rn = self.scratch.layer1_rn(layer_1)\n        layer_2_rn = self.scratch.layer2_rn(layer_2)\n        layer_3_rn = self.scratch.layer3_rn(layer_3)\n        layer_4_rn = self.scratch.layer4_rn(layer_4)\n\n        path_4 = self.scratch.refinenet4(layer_4_rn)\n        path_3 = self.scratch.refinenet3(path_4, layer_3_rn)\n        path_2 = self.scratch.refinenet2(path_3, layer_2_rn)\n        path_1 = self.scratch.refinenet1(path_2, layer_1_rn)\n\n        out = self.scratch.output_conv(path_1)\n\n        return out\n\n\nclass DPTDepthModel(DPT):\n    def __init__(self, path=None, non_negative=True, **kwargs):\n        features = kwargs[\"features\"] if \"features\" in kwargs else 256\n\n        head = nn.Sequential(\n            nn.Conv2d(features, features // 2, kernel_size=3, stride=1, padding=1),\n            Interpolate(scale_factor=2, mode=\"bilinear\", align_corners=True),\n            nn.Conv2d(features // 2, 32, kernel_size=3, stride=1, padding=1),\n            nn.ReLU(True),\n            nn.Conv2d(32, 1, kernel_size=1, stride=1, padding=0),\n            nn.ReLU(True) if non_negative else nn.Identity(),\n            nn.Identity(),\n        )\n\n        super().__init__(head, **kwargs)\n\n        if path is not None:\n           self.load(path)\n\n    def forward(self, x):\n        return super().forward(x).squeeze(dim=1)\n"
  },
  {
    "path": "modules/control/proc/midas/midas/midas_net.py",
    "content": "\"\"\"MidashNet: Network for monocular depth estimation trained by mixing several datasets.\nThis file contains code that is adapted from\nhttps://github.com/thomasjpfan/pytorch_refinenet/blob/master/pytorch_refinenet/refinenet/refinenet_4cascade.py\n\"\"\"\nimport torch\nimport torch.nn as nn\n\nfrom .base_model import BaseModel\nfrom .blocks import FeatureFusionBlock, Interpolate, _make_encoder\n\n\nclass MidasNet(BaseModel):\n    \"\"\"Network for monocular depth estimation.\n    \"\"\"\n\n    def __init__(self, path=None, features=256, non_negative=True):\n        \"\"\"Init.\n\n        Args:\n            path (str, optional): Path to saved model. Defaults to None.\n            features (int, optional): Number of features. Defaults to 256.\n            backbone (str, optional): Backbone network for encoder. Defaults to resnet50\n        \"\"\"\n        print(\"Loading weights: \", path)\n\n        super(MidasNet, self).__init__()\n\n        use_pretrained = False if path is None else True\n\n        self.pretrained, self.scratch = _make_encoder(backbone=\"resnext101_wsl\", features=features, use_pretrained=use_pretrained)\n\n        self.scratch.refinenet4 = FeatureFusionBlock(features)\n        self.scratch.refinenet3 = FeatureFusionBlock(features)\n        self.scratch.refinenet2 = FeatureFusionBlock(features)\n        self.scratch.refinenet1 = FeatureFusionBlock(features)\n\n        self.scratch.output_conv = nn.Sequential(\n            nn.Conv2d(features, 128, kernel_size=3, stride=1, padding=1),\n            Interpolate(scale_factor=2, mode=\"bilinear\"),\n            nn.Conv2d(128, 32, kernel_size=3, stride=1, padding=1),\n            nn.ReLU(True),\n            nn.Conv2d(32, 1, kernel_size=1, stride=1, padding=0),\n            nn.ReLU(True) if non_negative else nn.Identity(),\n        )\n\n        if path:\n            self.load(path)\n\n    def forward(self, x):\n        \"\"\"Forward pass.\n\n        Args:\n            x (tensor): input data (image)\n\n        Returns:\n            tensor: depth\n        \"\"\"\n\n        layer_1 = self.pretrained.layer1(x)\n        layer_2 = self.pretrained.layer2(layer_1)\n        layer_3 = self.pretrained.layer3(layer_2)\n        layer_4 = self.pretrained.layer4(layer_3)\n\n        layer_1_rn = self.scratch.layer1_rn(layer_1)\n        layer_2_rn = self.scratch.layer2_rn(layer_2)\n        layer_3_rn = self.scratch.layer3_rn(layer_3)\n        layer_4_rn = self.scratch.layer4_rn(layer_4)\n\n        path_4 = self.scratch.refinenet4(layer_4_rn)\n        path_3 = self.scratch.refinenet3(path_4, layer_3_rn)\n        path_2 = self.scratch.refinenet2(path_3, layer_2_rn)\n        path_1 = self.scratch.refinenet1(path_2, layer_1_rn)\n\n        out = self.scratch.output_conv(path_1)\n\n        return torch.squeeze(out, dim=1)\n"
  },
  {
    "path": "modules/control/proc/midas/midas/midas_net_custom.py",
    "content": "\"\"\"MidashNet: Network for monocular depth estimation trained by mixing several datasets.\nThis file contains code that is adapted from\nhttps://github.com/thomasjpfan/pytorch_refinenet/blob/master/pytorch_refinenet/refinenet/refinenet_4cascade.py\n\"\"\"\nimport torch\nimport torch.nn as nn\n\nfrom .base_model import BaseModel\nfrom .blocks import FeatureFusionBlock, FeatureFusionBlock_custom, Interpolate, _make_encoder\n\n\nclass MidasNet_small(BaseModel):\n    \"\"\"Network for monocular depth estimation.\n    \"\"\"\n\n    def __init__(self, path=None, features=64, backbone=\"efficientnet_lite3\", non_negative=True, exportable=True, channels_last=False, align_corners=True,\n        blocks=None):\n        \"\"\"Init.\n\n        Args:\n            path (str, optional): Path to saved model. Defaults to None.\n            features (int, optional): Number of features. Defaults to 256.\n            backbone (str, optional): Backbone network for encoder. Defaults to resnet50\n        \"\"\"\n        if blocks is None:\n            blocks = {\"expand\": True}\n        print(\"Loading weights: \", path)\n\n        super(MidasNet_small, self).__init__()\n\n        use_pretrained = False if path else True\n\n        self.channels_last = channels_last\n        self.blocks = blocks\n        self.backbone = backbone\n\n        self.groups = 1\n\n        features1=features\n        features2=features\n        features3=features\n        features4=features\n        self.expand = False\n        if \"expand\" in self.blocks and self.blocks['expand'] is True:\n            self.expand = True\n            features1=features\n            features2=features*2\n            features3=features*4\n            features4=features*8\n\n        self.pretrained, self.scratch = _make_encoder(self.backbone, features, use_pretrained, groups=self.groups, expand=self.expand, exportable=exportable)\n\n        self.scratch.activation = nn.ReLU(False)\n\n        self.scratch.refinenet4 = FeatureFusionBlock_custom(features4, self.scratch.activation, deconv=False, bn=False, expand=self.expand, align_corners=align_corners)\n        self.scratch.refinenet3 = FeatureFusionBlock_custom(features3, self.scratch.activation, deconv=False, bn=False, expand=self.expand, align_corners=align_corners)\n        self.scratch.refinenet2 = FeatureFusionBlock_custom(features2, self.scratch.activation, deconv=False, bn=False, expand=self.expand, align_corners=align_corners)\n        self.scratch.refinenet1 = FeatureFusionBlock_custom(features1, self.scratch.activation, deconv=False, bn=False, align_corners=align_corners)\n\n\n        self.scratch.output_conv = nn.Sequential(\n            nn.Conv2d(features, features//2, kernel_size=3, stride=1, padding=1, groups=self.groups),\n            Interpolate(scale_factor=2, mode=\"bilinear\"),\n            nn.Conv2d(features//2, 32, kernel_size=3, stride=1, padding=1),\n            self.scratch.activation,\n            nn.Conv2d(32, 1, kernel_size=1, stride=1, padding=0),\n            nn.ReLU(True) if non_negative else nn.Identity(),\n            nn.Identity(),\n        )\n\n        if path:\n            self.load(path)\n\n\n    def forward(self, x):\n        \"\"\"Forward pass.\n\n        Args:\n            x (tensor): input data (image)\n\n        Returns:\n            tensor: depth\n        \"\"\"\n        if self.channels_last is True:\n            print(\"self.channels_last = \", self.channels_last)\n            x.contiguous(memory_format=torch.channels_last)\n\n\n        layer_1 = self.pretrained.layer1(x)\n        layer_2 = self.pretrained.layer2(layer_1)\n        layer_3 = self.pretrained.layer3(layer_2)\n        layer_4 = self.pretrained.layer4(layer_3)\n\n        layer_1_rn = self.scratch.layer1_rn(layer_1)\n        layer_2_rn = self.scratch.layer2_rn(layer_2)\n        layer_3_rn = self.scratch.layer3_rn(layer_3)\n        layer_4_rn = self.scratch.layer4_rn(layer_4)\n\n\n        path_4 = self.scratch.refinenet4(layer_4_rn)\n        path_3 = self.scratch.refinenet3(path_4, layer_3_rn)\n        path_2 = self.scratch.refinenet2(path_3, layer_2_rn)\n        path_1 = self.scratch.refinenet1(path_2, layer_1_rn)\n\n        out = self.scratch.output_conv(path_1)\n\n        return torch.squeeze(out, dim=1)\n\n\n\ndef fuse_model(m):\n    prev_previous_type = nn.Identity()\n    prev_previous_name = ''\n    previous_type = nn.Identity()\n    previous_name = ''\n    for name, module in m.named_modules():\n        if prev_previous_type == nn.Conv2d and previous_type == nn.BatchNorm2d and type(module) == nn.ReLU:\n            # print(\"FUSED \", prev_previous_name, previous_name, name)\n            torch.quantization.fuse_modules(m, [prev_previous_name, previous_name, name], inplace=True)\n        elif prev_previous_type == nn.Conv2d and previous_type == nn.BatchNorm2d:\n            # print(\"FUSED \", prev_previous_name, previous_name)\n            torch.quantization.fuse_modules(m, [prev_previous_name, previous_name], inplace=True)\n        # elif previous_type == nn.Conv2d and type(module) == nn.ReLU:\n        #    print(\"FUSED \", previous_name, name)\n        #    torch.quantization.fuse_modules(m, [previous_name, name], inplace=True)\n\n        prev_previous_type = previous_type\n        prev_previous_name = previous_name\n        previous_type = type(module)\n        previous_name = name\n"
  },
  {
    "path": "modules/control/proc/midas/midas/transforms.py",
    "content": "import math\nimport numpy as np\nimport cv2\n\n\ndef apply_min_size(sample, size, image_interpolation_method=cv2.INTER_AREA):\n    \"\"\"Rezise the sample to ensure the given size. Keeps aspect ratio.\n\n    Args:\n        sample (dict): sample\n        size (tuple): image size\n\n    Returns:\n        tuple: new size\n    \"\"\"\n    shape = list(sample[\"disparity\"].shape)\n\n    if shape[0] >= size[0] and shape[1] >= size[1]:\n        return sample\n\n    scale = [0, 0]\n    scale[0] = size[0] / shape[0]\n    scale[1] = size[1] / shape[1]\n\n    scale = max(scale)\n\n    shape[0] = math.ceil(scale * shape[0])\n    shape[1] = math.ceil(scale * shape[1])\n\n    # resize\n    sample[\"image\"] = cv2.resize(\n        sample[\"image\"], tuple(shape[::-1]), interpolation=image_interpolation_method\n    )\n\n    sample[\"disparity\"] = cv2.resize(\n        sample[\"disparity\"], tuple(shape[::-1]), interpolation=cv2.INTER_NEAREST\n    )\n    sample[\"mask\"] = cv2.resize(\n        sample[\"mask\"].astype(np.float32),\n        tuple(shape[::-1]),\n        interpolation=cv2.INTER_NEAREST,\n    )\n    sample[\"mask\"] = sample[\"mask\"].astype(bool)\n\n    return tuple(shape)\n\n\nclass Resize(object):\n    \"\"\"Resize sample to given size (width, height).\n    \"\"\"\n\n    def __init__(\n        self,\n        width,\n        height,\n        resize_target=True,\n        keep_aspect_ratio=False,\n        ensure_multiple_of=1,\n        resize_method=\"lower_bound\",\n        image_interpolation_method=cv2.INTER_AREA,\n    ):\n        \"\"\"Init.\n\n        Args:\n            width (int): desired output width\n            height (int): desired output height\n            resize_target (bool, optional):\n                True: Resize the full sample (image, mask, target).\n                False: Resize image only.\n                Defaults to True.\n            keep_aspect_ratio (bool, optional):\n                True: Keep the aspect ratio of the input sample.\n                Output sample might not have the given width and height, and\n                resize behaviour depends on the parameter 'resize_method'.\n                Defaults to False.\n            ensure_multiple_of (int, optional):\n                Output width and height is constrained to be multiple of this parameter.\n                Defaults to 1.\n            resize_method (str, optional):\n                \"lower_bound\": Output will be at least as large as the given size.\n                \"upper_bound\": Output will be at max as large as the given size. (Output size might be smaller than given size.)\n                \"minimal\": Scale as least as possible.  (Output size might be smaller than given size.)\n                Defaults to \"lower_bound\".\n        \"\"\"\n        self.__width = width\n        self.__height = height\n\n        self.__resize_target = resize_target\n        self.__keep_aspect_ratio = keep_aspect_ratio\n        self.__multiple_of = ensure_multiple_of\n        self.__resize_method = resize_method\n        self.__image_interpolation_method = image_interpolation_method\n\n    def constrain_to_multiple_of(self, x, min_val=0, max_val=None):\n        y = (np.round(x / self.__multiple_of) * self.__multiple_of).astype(int)\n\n        if max_val is not None and y > max_val:\n            y = (np.floor(x / self.__multiple_of) * self.__multiple_of).astype(int)\n\n        if y < min_val:\n            y = (np.ceil(x / self.__multiple_of) * self.__multiple_of).astype(int)\n\n        return y\n\n    def get_size(self, width, height):\n        # determine new height and width\n        scale_height = self.__height / height\n        scale_width = self.__width / width\n\n        if self.__keep_aspect_ratio:\n            if self.__resize_method == \"lower_bound\":\n                # scale such that output size is lower bound\n                if scale_width > scale_height:\n                    # fit width\n                    scale_height = scale_width\n                else:\n                    # fit height\n                    scale_width = scale_height\n            elif self.__resize_method == \"upper_bound\":\n                # scale such that output size is upper bound\n                if scale_width < scale_height:\n                    # fit width\n                    scale_height = scale_width\n                else:\n                    # fit height\n                    scale_width = scale_height\n            elif self.__resize_method == \"minimal\":\n                # scale as least as possbile\n                if abs(1 - scale_width) < abs(1 - scale_height):\n                    # fit width\n                    scale_height = scale_width\n                else:\n                    # fit height\n                    scale_width = scale_height\n            else:\n                raise ValueError(\n                    f\"resize_method {self.__resize_method} not implemented\"\n                )\n\n        if self.__resize_method == \"lower_bound\":\n            new_height = self.constrain_to_multiple_of(\n                scale_height * height, min_val=self.__height\n            )\n            new_width = self.constrain_to_multiple_of(\n                scale_width * width, min_val=self.__width\n            )\n        elif self.__resize_method == \"upper_bound\":\n            new_height = self.constrain_to_multiple_of(\n                scale_height * height, max_val=self.__height\n            )\n            new_width = self.constrain_to_multiple_of(\n                scale_width * width, max_val=self.__width\n            )\n        elif self.__resize_method == \"minimal\":\n            new_height = self.constrain_to_multiple_of(scale_height * height)\n            new_width = self.constrain_to_multiple_of(scale_width * width)\n        else:\n            raise ValueError(f\"resize_method {self.__resize_method} not implemented\")\n\n        return (new_width, new_height)\n\n    def __call__(self, sample):\n        width, height = self.get_size(\n            sample[\"image\"].shape[1], sample[\"image\"].shape[0]\n        )\n\n        # resize sample\n        sample[\"image\"] = cv2.resize(\n            sample[\"image\"],\n            (width, height),\n            interpolation=self.__image_interpolation_method,\n        )\n\n        if self.__resize_target:\n            if \"disparity\" in sample:\n                sample[\"disparity\"] = cv2.resize(\n                    sample[\"disparity\"],\n                    (width, height),\n                    interpolation=cv2.INTER_NEAREST,\n                )\n\n            if \"depth\" in sample:\n                sample[\"depth\"] = cv2.resize(\n                    sample[\"depth\"], (width, height), interpolation=cv2.INTER_NEAREST\n                )\n\n            sample[\"mask\"] = cv2.resize(\n                sample[\"mask\"].astype(np.float32),\n                (width, height),\n                interpolation=cv2.INTER_NEAREST,\n            )\n            sample[\"mask\"] = sample[\"mask\"].astype(bool)\n\n        return sample\n\n\nclass NormalizeImage(object):\n    \"\"\"Normlize image by given mean and std.\n    \"\"\"\n\n    def __init__(self, mean, std):\n        self.__mean = mean\n        self.__std = std\n\n    def __call__(self, sample):\n        sample[\"image\"] = (sample[\"image\"] - self.__mean) / self.__std\n\n        return sample\n\n\nclass PrepareForNet(object):\n    \"\"\"Prepare sample for usage as network input.\n    \"\"\"\n\n    def __init__(self):\n        pass\n\n    def __call__(self, sample):\n        image = np.transpose(sample[\"image\"], (2, 0, 1))\n        sample[\"image\"] = np.ascontiguousarray(image).astype(np.float32)\n\n        if \"mask\" in sample:\n            sample[\"mask\"] = sample[\"mask\"].astype(np.float32)\n            sample[\"mask\"] = np.ascontiguousarray(sample[\"mask\"])\n\n        if \"disparity\" in sample:\n            disparity = sample[\"disparity\"].astype(np.float32)\n            sample[\"disparity\"] = np.ascontiguousarray(disparity)\n\n        if \"depth\" in sample:\n            depth = sample[\"depth\"].astype(np.float32)\n            sample[\"depth\"] = np.ascontiguousarray(depth)\n\n        return sample\n"
  },
  {
    "path": "modules/control/proc/midas/midas/vit.py",
    "content": "import torch\nimport torch.nn as nn\nimport timm\nimport types\nimport math\nimport torch.nn.functional as F\n\n\nclass Slice(nn.Module):\n    def __init__(self, start_index=1):\n        super(Slice, self).__init__()\n        self.start_index = start_index\n\n    def forward(self, x):\n        return x[:, self.start_index :]\n\n\nclass AddReadout(nn.Module):\n    def __init__(self, start_index=1):\n        super(AddReadout, self).__init__()\n        self.start_index = start_index\n\n    def forward(self, x):\n        if self.start_index == 2:\n            readout = (x[:, 0] + x[:, 1]) / 2\n        else:\n            readout = x[:, 0]\n        return x[:, self.start_index :] + readout.unsqueeze(1)\n\n\nclass ProjectReadout(nn.Module):\n    def __init__(self, in_features, start_index=1):\n        super(ProjectReadout, self).__init__()\n        self.start_index = start_index\n\n        self.project = nn.Sequential(nn.Linear(2 * in_features, in_features), nn.GELU())\n\n    def forward(self, x):\n        readout = x[:, 0].unsqueeze(1).expand_as(x[:, self.start_index :])\n        features = torch.cat((x[:, self.start_index :], readout), -1)\n\n        return self.project(features)\n\n\nclass Transpose(nn.Module):\n    def __init__(self, dim0, dim1):\n        super(Transpose, self).__init__()\n        self.dim0 = dim0\n        self.dim1 = dim1\n\n    def forward(self, x):\n        x = x.transpose(self.dim0, self.dim1)\n        return x\n\n\ndef forward_vit(pretrained, x):\n    b, c, h, w = x.shape\n\n    pretrained.model.forward_flex(x)\n\n    layer_1 = pretrained.activations[\"1\"]\n    layer_2 = pretrained.activations[\"2\"]\n    layer_3 = pretrained.activations[\"3\"]\n    layer_4 = pretrained.activations[\"4\"]\n\n    layer_1 = pretrained.act_postprocess1[0:2](layer_1)\n    layer_2 = pretrained.act_postprocess2[0:2](layer_2)\n    layer_3 = pretrained.act_postprocess3[0:2](layer_3)\n    layer_4 = pretrained.act_postprocess4[0:2](layer_4)\n\n    unflatten = nn.Sequential(\n        nn.Unflatten(\n            2,\n            torch.Size(\n                [\n                    h // pretrained.model.patch_size[1],\n                    w // pretrained.model.patch_size[0],\n                ]\n            ),\n        )\n    )\n\n    if layer_1.ndim == 3:\n        layer_1 = unflatten(layer_1)\n    if layer_2.ndim == 3:\n        layer_2 = unflatten(layer_2)\n    if layer_3.ndim == 3:\n        layer_3 = unflatten(layer_3)\n    if layer_4.ndim == 3:\n        layer_4 = unflatten(layer_4)\n\n    layer_1 = pretrained.act_postprocess1[3 : len(pretrained.act_postprocess1)](layer_1)\n    layer_2 = pretrained.act_postprocess2[3 : len(pretrained.act_postprocess2)](layer_2)\n    layer_3 = pretrained.act_postprocess3[3 : len(pretrained.act_postprocess3)](layer_3)\n    layer_4 = pretrained.act_postprocess4[3 : len(pretrained.act_postprocess4)](layer_4)\n\n    return layer_1, layer_2, layer_3, layer_4\n\n\ndef _resize_pos_embed(self, posemb, gs_h, gs_w):\n    posemb_tok, posemb_grid = (\n        posemb[:, : self.start_index],\n        posemb[0, self.start_index :],\n    )\n\n    gs_old = int(math.sqrt(len(posemb_grid)))\n\n    posemb_grid = posemb_grid.reshape(1, gs_old, gs_old, -1).permute(0, 3, 1, 2)\n    posemb_grid = F.interpolate(posemb_grid, size=(gs_h, gs_w), mode=\"bilinear\")\n    posemb_grid = posemb_grid.permute(0, 2, 3, 1).reshape(1, gs_h * gs_w, -1)\n\n    posemb = torch.cat([posemb_tok, posemb_grid], dim=1)\n\n    return posemb\n\n\ndef forward_flex(self, x):\n    b, c, h, w = x.shape\n\n    pos_embed = self._resize_pos_embed(\n        self.pos_embed, h // self.patch_size[1], w // self.patch_size[0]\n    )\n\n    B = x.shape[0]\n\n    if hasattr(self.patch_embed, \"backbone\"):\n        x = self.patch_embed.backbone(x)\n        if isinstance(x, (list, tuple)):\n            x = x[-1]  # last feature if backbone outputs list/tuple of features\n\n    x = self.patch_embed.proj(x).flatten(2).transpose(1, 2)\n\n    if getattr(self, \"dist_token\", None) is not None:\n        cls_tokens = self.cls_token.expand(\n            B, -1, -1\n        )  # stole cls_tokens impl from Phil Wang, thanks\n        dist_token = self.dist_token.expand(B, -1, -1)\n        x = torch.cat((cls_tokens, dist_token, x), dim=1)\n    else:\n        cls_tokens = self.cls_token.expand(\n            B, -1, -1\n        )  # stole cls_tokens impl from Phil Wang, thanks\n        x = torch.cat((cls_tokens, x), dim=1)\n\n    x = x + pos_embed\n    x = self.pos_drop(x)\n\n    for blk in self.blocks:\n        x = blk(x)\n\n    x = self.norm(x)\n\n    return x\n\n\nactivations = {}\n\n\ndef get_activation(name):\n    def hook(model, input, output):\n        activations[name] = output\n\n    return hook\n\n\ndef get_readout_oper(vit_features, features, use_readout, start_index=1):\n    if use_readout == \"ignore\":\n        readout_oper = [Slice(start_index)] * len(features)\n    elif use_readout == \"add\":\n        readout_oper = [AddReadout(start_index)] * len(features)\n    elif use_readout == \"project\":\n        readout_oper = [\n            ProjectReadout(vit_features, start_index) for out_feat in features\n        ]\n    else:\n        raise AssertionError(\"wrong operation for readout token, use_readout can be 'ignore', 'add', or 'project'\")\n\n    return readout_oper\n\n\ndef _make_vit_b16_backbone(\n    model,\n    features=None,\n    size=None,\n    hooks=None,\n    vit_features=768,\n    use_readout=\"ignore\",\n    start_index=1,\n):\n    if hooks is None:\n        hooks = [2, 5, 8, 11]\n    if size is None:\n        size = [384, 384]\n    if features is None:\n        features = [96, 192, 384, 768]\n    pretrained = nn.Module()\n\n    pretrained.model = model\n    pretrained.model.blocks[hooks[0]].register_forward_hook(get_activation(\"1\"))\n    pretrained.model.blocks[hooks[1]].register_forward_hook(get_activation(\"2\"))\n    pretrained.model.blocks[hooks[2]].register_forward_hook(get_activation(\"3\"))\n    pretrained.model.blocks[hooks[3]].register_forward_hook(get_activation(\"4\"))\n\n    pretrained.activations = activations\n\n    readout_oper = get_readout_oper(vit_features, features, use_readout, start_index)\n\n    # 32, 48, 136, 384\n    pretrained.act_postprocess1 = nn.Sequential(\n        readout_oper[0],\n        Transpose(1, 2),\n        nn.Unflatten(2, torch.Size([size[0] // 16, size[1] // 16])),\n        nn.Conv2d(\n            in_channels=vit_features,\n            out_channels=features[0],\n            kernel_size=1,\n            stride=1,\n            padding=0,\n        ),\n        nn.ConvTranspose2d(\n            in_channels=features[0],\n            out_channels=features[0],\n            kernel_size=4,\n            stride=4,\n            padding=0,\n            bias=True,\n            dilation=1,\n            groups=1,\n        ),\n    )\n\n    pretrained.act_postprocess2 = nn.Sequential(\n        readout_oper[1],\n        Transpose(1, 2),\n        nn.Unflatten(2, torch.Size([size[0] // 16, size[1] // 16])),\n        nn.Conv2d(\n            in_channels=vit_features,\n            out_channels=features[1],\n            kernel_size=1,\n            stride=1,\n            padding=0,\n        ),\n        nn.ConvTranspose2d(\n            in_channels=features[1],\n            out_channels=features[1],\n            kernel_size=2,\n            stride=2,\n            padding=0,\n            bias=True,\n            dilation=1,\n            groups=1,\n        ),\n    )\n\n    pretrained.act_postprocess3 = nn.Sequential(\n        readout_oper[2],\n        Transpose(1, 2),\n        nn.Unflatten(2, torch.Size([size[0] // 16, size[1] // 16])),\n        nn.Conv2d(\n            in_channels=vit_features,\n            out_channels=features[2],\n            kernel_size=1,\n            stride=1,\n            padding=0,\n        ),\n    )\n\n    pretrained.act_postprocess4 = nn.Sequential(\n        readout_oper[3],\n        Transpose(1, 2),\n        nn.Unflatten(2, torch.Size([size[0] // 16, size[1] // 16])),\n        nn.Conv2d(\n            in_channels=vit_features,\n            out_channels=features[3],\n            kernel_size=1,\n            stride=1,\n            padding=0,\n        ),\n        nn.Conv2d(\n            in_channels=features[3],\n            out_channels=features[3],\n            kernel_size=3,\n            stride=2,\n            padding=1,\n        ),\n    )\n\n    pretrained.model.start_index = start_index\n    pretrained.model.patch_size = [16, 16]\n\n    # We inject this function into the VisionTransformer instances so that\n    # we can use it with interpolated position embeddings without modifying the library source.\n    pretrained.model.forward_flex = types.MethodType(forward_flex, pretrained.model)\n    pretrained.model._resize_pos_embed = types.MethodType(\n        _resize_pos_embed, pretrained.model\n    )\n\n    return pretrained\n\n\ndef _make_pretrained_vitl16_384(pretrained, use_readout=\"ignore\", hooks=None):\n    model = timm.create_model(\"vit_large_patch16_384\", pretrained=pretrained)\n\n    hooks = [5, 11, 17, 23] if hooks is None else hooks\n    return _make_vit_b16_backbone(\n        model,\n        features=[256, 512, 1024, 1024],\n        hooks=hooks,\n        vit_features=1024,\n        use_readout=use_readout,\n    )\n\n\ndef _make_pretrained_vitb16_384(pretrained, use_readout=\"ignore\", hooks=None):\n    model = timm.create_model(\"vit_base_patch16_384\", pretrained=pretrained)\n\n    hooks = [2, 5, 8, 11] if hooks is None else hooks\n    return _make_vit_b16_backbone(\n        model, features=[96, 192, 384, 768], hooks=hooks, use_readout=use_readout\n    )\n\n\ndef _make_pretrained_deitb16_384(pretrained, use_readout=\"ignore\", hooks=None):\n    model = timm.create_model(\"vit_deit_base_patch16_384\", pretrained=pretrained)\n\n    hooks = [2, 5, 8, 11] if hooks is None else hooks\n    return _make_vit_b16_backbone(\n        model, features=[96, 192, 384, 768], hooks=hooks, use_readout=use_readout\n    )\n\n\ndef _make_pretrained_deitb16_distil_384(pretrained, use_readout=\"ignore\", hooks=None):\n    model = timm.create_model(\n        \"vit_deit_base_distilled_patch16_384\", pretrained=pretrained\n    )\n\n    hooks = [2, 5, 8, 11] if hooks is None else hooks\n    return _make_vit_b16_backbone(\n        model,\n        features=[96, 192, 384, 768],\n        hooks=hooks,\n        use_readout=use_readout,\n        start_index=2,\n    )\n\n\ndef _make_vit_b_rn50_backbone(\n    model,\n    features=None,\n    size=None,\n    hooks=None,\n    vit_features=768,\n    use_vit_only=False,\n    use_readout=\"ignore\",\n    start_index=1,\n):\n    if hooks is None:\n        hooks = [0, 1, 8, 11]\n    if size is None:\n        size = [384, 384]\n    if features is None:\n        features = [256, 512, 768, 768]\n    pretrained = nn.Module()\n\n    pretrained.model = model\n\n    if use_vit_only is True:\n        pretrained.model.blocks[hooks[0]].register_forward_hook(get_activation(\"1\"))\n        pretrained.model.blocks[hooks[1]].register_forward_hook(get_activation(\"2\"))\n    else:\n        pretrained.model.patch_embed.backbone.stages[0].register_forward_hook(\n            get_activation(\"1\")\n        )\n        pretrained.model.patch_embed.backbone.stages[1].register_forward_hook(\n            get_activation(\"2\")\n        )\n\n    pretrained.model.blocks[hooks[2]].register_forward_hook(get_activation(\"3\"))\n    pretrained.model.blocks[hooks[3]].register_forward_hook(get_activation(\"4\"))\n\n    pretrained.activations = activations\n\n    readout_oper = get_readout_oper(vit_features, features, use_readout, start_index)\n\n    if use_vit_only is True:\n        pretrained.act_postprocess1 = nn.Sequential(\n            readout_oper[0],\n            Transpose(1, 2),\n            nn.Unflatten(2, torch.Size([size[0] // 16, size[1] // 16])),\n            nn.Conv2d(\n                in_channels=vit_features,\n                out_channels=features[0],\n                kernel_size=1,\n                stride=1,\n                padding=0,\n            ),\n            nn.ConvTranspose2d(\n                in_channels=features[0],\n                out_channels=features[0],\n                kernel_size=4,\n                stride=4,\n                padding=0,\n                bias=True,\n                dilation=1,\n                groups=1,\n            ),\n        )\n\n        pretrained.act_postprocess2 = nn.Sequential(\n            readout_oper[1],\n            Transpose(1, 2),\n            nn.Unflatten(2, torch.Size([size[0] // 16, size[1] // 16])),\n            nn.Conv2d(\n                in_channels=vit_features,\n                out_channels=features[1],\n                kernel_size=1,\n                stride=1,\n                padding=0,\n            ),\n            nn.ConvTranspose2d(\n                in_channels=features[1],\n                out_channels=features[1],\n                kernel_size=2,\n                stride=2,\n                padding=0,\n                bias=True,\n                dilation=1,\n                groups=1,\n            ),\n        )\n    else:\n        pretrained.act_postprocess1 = nn.Sequential(\n            nn.Identity(), nn.Identity(), nn.Identity()\n        )\n        pretrained.act_postprocess2 = nn.Sequential(\n            nn.Identity(), nn.Identity(), nn.Identity()\n        )\n\n    pretrained.act_postprocess3 = nn.Sequential(\n        readout_oper[2],\n        Transpose(1, 2),\n        nn.Unflatten(2, torch.Size([size[0] // 16, size[1] // 16])),\n        nn.Conv2d(\n            in_channels=vit_features,\n            out_channels=features[2],\n            kernel_size=1,\n            stride=1,\n            padding=0,\n        ),\n    )\n\n    pretrained.act_postprocess4 = nn.Sequential(\n        readout_oper[3],\n        Transpose(1, 2),\n        nn.Unflatten(2, torch.Size([size[0] // 16, size[1] // 16])),\n        nn.Conv2d(\n            in_channels=vit_features,\n            out_channels=features[3],\n            kernel_size=1,\n            stride=1,\n            padding=0,\n        ),\n        nn.Conv2d(\n            in_channels=features[3],\n            out_channels=features[3],\n            kernel_size=3,\n            stride=2,\n            padding=1,\n        ),\n    )\n\n    pretrained.model.start_index = start_index\n    pretrained.model.patch_size = [16, 16]\n\n    # We inject this function into the VisionTransformer instances so that\n    # we can use it with interpolated position embeddings without modifying the library source.\n    pretrained.model.forward_flex = types.MethodType(forward_flex, pretrained.model)\n\n    # We inject this function into the VisionTransformer instances so that\n    # we can use it with interpolated position embeddings without modifying the library source.\n    pretrained.model._resize_pos_embed = types.MethodType(\n        _resize_pos_embed, pretrained.model\n    )\n\n    return pretrained\n\n\ndef _make_pretrained_vitb_rn50_384(\n    pretrained, use_readout=\"ignore\", hooks=None, use_vit_only=False\n):\n    model = timm.create_model(\"vit_base_resnet50_384\", pretrained=pretrained)\n\n    hooks = [0, 1, 8, 11] if hooks is None else hooks\n    return _make_vit_b_rn50_backbone(\n        model,\n        features=[256, 512, 768, 768],\n        size=[384, 384],\n        hooks=hooks,\n        use_vit_only=use_vit_only,\n        use_readout=use_readout,\n    )\n"
  },
  {
    "path": "modules/control/proc/midas/utils.py",
    "content": "\"\"\"Utils for monoDepth.\"\"\"\nimport sys\nimport re\nimport numpy as np\nimport cv2\nimport torch\n\n\ndef read_pfm(path):\n    \"\"\"Read pfm file.\n\n    Args:\n        path (str): path to file\n\n    Returns:\n        tuple: (data, scale)\n    \"\"\"\n    with open(path, \"rb\") as file:\n\n        color = None\n        width = None\n        height = None\n        scale = None\n        endian = None\n\n        header = file.readline().rstrip()\n        if header.decode(\"ascii\") == \"PF\":\n            color = True\n        elif header.decode(\"ascii\") == \"Pf\":\n            color = False\n        else:\n            raise Exception(\"Not a PFM file: \" + path)\n\n        dim_match = re.match(r\"^(\\d+)\\s(\\d+)\\s$\", file.readline().decode(\"ascii\"))\n        if dim_match:\n            width, height = list(map(int, dim_match.groups()))\n        else:\n            raise Exception(\"Malformed PFM header.\")\n\n        scale = float(file.readline().decode(\"ascii\").rstrip())\n        if scale < 0:\n            # little-endian\n            endian = \"<\"\n            scale = -scale\n        else:\n            # big-endian\n            endian = \">\"\n\n        data = np.fromfile(file, endian + \"f\")\n        shape = (height, width, 3) if color else (height, width)\n\n        data = np.reshape(data, shape)\n        data = np.flipud(data)\n\n        return data, scale\n\n\ndef write_pfm(path, image, scale=1):\n    \"\"\"Write pfm file.\n\n    Args:\n        path (str): pathto file\n        image (array): data\n        scale (int, optional): Scale. Defaults to 1.\n    \"\"\"\n\n    with open(path, \"wb\") as file:\n        color = None\n\n        if image.dtype.name != \"float32\":\n            raise Exception(\"Image dtype must be float32.\")\n\n        image = np.flipud(image)\n\n        if len(image.shape) == 3 and image.shape[2] == 3:  # color image\n            color = True\n        elif (\n            len(image.shape) == 2 or len(image.shape) == 3 and image.shape[2] == 1\n        ):  # greyscale\n            color = False\n        else:\n            raise Exception(\"Image must have H x W x 3, H x W x 1 or H x W dimensions.\")\n\n        file.write(\"PF\\n\" if color else \"Pf\\n\".encode())\n        file.write(\"%d %d\\n\".encode() % (image.shape[1], image.shape[0]))\n\n        endian = image.dtype.byteorder\n\n        if endian == \"<\" or endian == \"=\" and sys.byteorder == \"little\":\n            scale = -scale\n\n        file.write(\"%f\\n\".encode() % scale)\n\n        image.tofile(file)\n\n\ndef read_image(path):\n    \"\"\"Read image and output RGB image (0-1).\n\n    Args:\n        path (str): path to file\n\n    Returns:\n        array: RGB image (0-1)\n    \"\"\"\n    img = cv2.imread(path)\n\n    if img.ndim == 2:\n        img = cv2.cvtColor(img, cv2.COLOR_GRAY2BGR)\n\n    img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) / 255.0\n\n    return img\n\n\ndef resize_image(img):\n    \"\"\"Resize image and make it fit for network.\n\n    Args:\n        img (array): image\n\n    Returns:\n        tensor: data ready for network\n    \"\"\"\n    height_orig = img.shape[0]\n    width_orig = img.shape[1]\n\n    if width_orig > height_orig:\n        scale = width_orig / 384\n    else:\n        scale = height_orig / 384\n\n    height = (np.ceil(height_orig / scale / 32) * 32).astype(int)\n    width = (np.ceil(width_orig / scale / 32) * 32).astype(int)\n\n    img_resized = cv2.resize(img, (width, height), interpolation=cv2.INTER_AREA)\n\n    img_resized = (\n        torch.from_numpy(np.transpose(img_resized, (2, 0, 1))).contiguous().float()\n    )\n    img_resized = img_resized.unsqueeze(0)\n\n    return img_resized\n\n\ndef resize_depth(depth, width, height):\n    \"\"\"Resize depth map and bring to CPU (numpy).\n\n    Args:\n        depth (tensor): depth\n        width (int): image width\n        height (int): image height\n\n    Returns:\n        array: processed depth\n    \"\"\"\n    depth = torch.squeeze(depth[0, :, :, :]).to(\"cpu\")\n\n    depth_resized = cv2.resize(\n        depth.numpy(), (width, height), interpolation=cv2.INTER_CUBIC\n    )\n\n    return depth_resized\n\ndef write_depth(path, depth, bits=1):\n    \"\"\"Write depth map to pfm and png file.\n\n    Args:\n        path (str): filepath without extension\n        depth (array): depth\n    \"\"\"\n    write_pfm(path + \".pfm\", depth.astype(np.float32))\n\n    depth_min = depth.min()\n    depth_max = depth.max()\n\n    max_val = (2**(8*bits))-1\n\n    if depth_max - depth_min > np.finfo(\"float\").eps:\n        out = max_val * (depth - depth_min) / (depth_max - depth_min)\n    else:\n        out = np.zeros(depth.shape, dtype=depth.type)\n\n    if bits == 1:\n        cv2.imwrite(path + \".png\", out.astype(\"uint8\"))\n    elif bits == 2:\n        cv2.imwrite(path + \".png\", out.astype(\"uint16\"))\n\n    return\n"
  },
  {
    "path": "modules/control/proc/mlsd/LICENSE",
    "content": "                                Apache License\n                           Version 2.0, January 2004\n                        http://www.apache.org/licenses/\n\n   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n\n   1. Definitions.\n\n      \"License\" shall mean the terms and conditions for use, reproduction,\n      and distribution as defined by Sections 1 through 9 of this document.\n\n      \"Licensor\" shall mean the copyright owner or entity authorized by\n      the copyright owner that is granting the License.\n\n      \"Legal Entity\" shall mean the union of the acting entity and all\n      other entities that control, are controlled by, or are under common\n      control with that entity. For the purposes of this definition,\n      \"control\" means (i) the power, direct or indirect, to cause the\n      direction or management of such entity, whether by contract or\n      otherwise, or (ii) ownership of fifty percent (50%) or more of the\n      outstanding shares, or (iii) beneficial ownership of such entity.\n\n      \"You\" (or \"Your\") shall mean an individual or Legal Entity\n      exercising permissions granted by this License.\n\n      \"Source\" form shall mean the preferred form for making modifications,\n      including but not limited to software source code, documentation\n      source, and configuration files.\n\n      \"Object\" form shall mean any form resulting from mechanical\n      transformation or translation of a Source form, including but\n      not limited to compiled object code, generated documentation,\n      and conversions to other media types.\n\n      \"Work\" shall mean the work of authorship, whether in Source or\n      Object form, made available under the License, as indicated by a\n      copyright notice that is included in or attached to the work\n      (an example is provided in the Appendix below).\n\n      \"Derivative Works\" shall mean any work, whether in Source or Object\n      form, that is based on (or derived from) the Work and for which the\n      editorial revisions, annotations, elaborations, or other modifications\n      represent, as a whole, an original work of authorship. For the purposes\n      of this License, Derivative Works shall not include works that remain\n      separable from, or merely link (or bind by name) to the interfaces of,\n      the Work and Derivative Works thereof.\n\n      \"Contribution\" shall mean any work of authorship, including\n      the original version of the Work and any modifications or additions\n      to that Work or Derivative Works thereof, that is intentionally\n      submitted to Licensor for inclusion in the Work by the copyright owner\n      or by an individual or Legal Entity authorized to submit on behalf of\n      the copyright owner. For the purposes of this definition, \"submitted\"\n      means any form of electronic, verbal, or written communication sent\n      to the Licensor or its representatives, including but not limited to\n      communication on electronic mailing lists, source code control systems,\n      and issue tracking systems that are managed by, or on behalf of, the\n      Licensor for the purpose of discussing and improving the Work, but\n      excluding communication that is conspicuously marked or otherwise\n      designated in writing by the copyright owner as \"Not a Contribution.\"\n\n      \"Contributor\" shall mean Licensor and any individual or Legal Entity\n      on behalf of whom a Contribution has been received by Licensor and\n      subsequently incorporated within the Work.\n\n   2. Grant of Copyright License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      copyright license to reproduce, prepare Derivative Works of,\n      publicly display, publicly perform, sublicense, and distribute the\n      Work and such Derivative Works in Source or Object form.\n\n   3. Grant of Patent License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      (except as stated in this section) patent license to make, have made,\n      use, offer to sell, sell, import, and otherwise transfer the Work,\n      where such license applies only to those patent claims licensable\n      by such Contributor that are necessarily infringed by their\n      Contribution(s) alone or by combination of their Contribution(s)\n      with the Work to which such Contribution(s) was submitted. If You\n      institute patent litigation against any entity (including a\n      cross-claim or counterclaim in a lawsuit) alleging that the Work\n      or a Contribution incorporated within the Work constitutes direct\n      or contributory patent infringement, then any patent licenses\n      granted to You under this License for that Work shall terminate\n      as of the date such litigation is filed.\n\n   4. Redistribution. You may reproduce and distribute copies of the\n      Work or Derivative Works thereof in any medium, with or without\n      modifications, and in Source or Object form, provided that You\n      meet the following conditions:\n\n      (a) You must give any other recipients of the Work or\n          Derivative Works a copy of this License; and\n\n      (b) You must cause any modified files to carry prominent notices\n          stating that You changed the files; and\n\n      (c) You must retain, in the Source form of any Derivative Works\n          that You distribute, all copyright, patent, trademark, and\n          attribution notices from the Source form of the Work,\n          excluding those notices that do not pertain to any part of\n          the Derivative Works; and\n\n      (d) If the Work includes a \"NOTICE\" text file as part of its\n          distribution, then any Derivative Works that You distribute must\n          include a readable copy of the attribution notices contained\n          within such NOTICE file, excluding those notices that do not\n          pertain to any part of the Derivative Works, in at least one\n          of the following places: within a NOTICE text file distributed\n          as part of the Derivative Works; within the Source form or\n          documentation, if provided along with the Derivative Works; or,\n          within a display generated by the Derivative Works, if and\n          wherever such third-party notices normally appear. The contents\n          of the NOTICE file are for informational purposes only and\n          do not modify the License. You may add Your own attribution\n          notices within Derivative Works that You distribute, alongside\n          or as an addendum to the NOTICE text from the Work, provided\n          that such additional attribution notices cannot be construed\n          as modifying the License.\n\n      You may add Your own copyright statement to Your modifications and\n      may provide additional or different license terms and conditions\n      for use, reproduction, or distribution of Your modifications, or\n      for any such Derivative Works as a whole, provided Your use,\n      reproduction, and distribution of the Work otherwise complies with\n      the conditions stated in this License.\n\n   5. Submission of Contributions. Unless You explicitly state otherwise,\n      any Contribution intentionally submitted for inclusion in the Work\n      by You to the Licensor shall be under the terms and conditions of\n      this License, without any additional terms or conditions.\n      Notwithstanding the above, nothing herein shall supersede or modify\n      the terms of any separate license agreement you may have executed\n      with Licensor regarding such Contributions.\n\n   6. Trademarks. This License does not grant permission to use the trade\n      names, trademarks, service marks, or product names of the Licensor,\n      except as required for reasonable and customary use in describing the\n      origin of the Work and reproducing the content of the NOTICE file.\n\n   7. Disclaimer of Warranty. Unless required by applicable law or\n      agreed to in writing, Licensor provides the Work (and each\n      Contributor provides its Contributions) on an \"AS IS\" BASIS,\n      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\n      implied, including, without limitation, any warranties or conditions\n      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\n      PARTICULAR PURPOSE. You are solely responsible for determining the\n      appropriateness of using or redistributing the Work and assume any\n      risks associated with Your exercise of permissions under this License.\n\n   8. Limitation of Liability. In no event and under no legal theory,\n      whether in tort (including negligence), contract, or otherwise,\n      unless required by applicable law (such as deliberate and grossly\n      negligent acts) or agreed to in writing, shall any Contributor be\n      liable to You for damages, including any direct, indirect, special,\n      incidental, or consequential damages of any character arising as a\n      result of this License or out of the use or inability to use the\n      Work (including but not limited to damages for loss of goodwill,\n      work stoppage, computer failure or malfunction, or any and all\n      other commercial damages or losses), even if such Contributor\n      has been advised of the possibility of such damages.\n\n   9. Accepting Warranty or Additional Liability. While redistributing\n      the Work or Derivative Works thereof, You may choose to offer,\n      and charge a fee for, acceptance of support, warranty, indemnity,\n      or other liability obligations and/or rights consistent with this\n      License. However, in accepting such obligations, You may act only\n      on Your own behalf and on Your sole responsibility, not on behalf\n      of any other Contributor, and only if You agree to indemnify,\n      defend, and hold each Contributor harmless for any liability\n      incurred by, or claims asserted against, such Contributor by reason\n      of your accepting any such warranty or additional liability.\n\n   END OF TERMS AND CONDITIONS\n\n   APPENDIX: How to apply the Apache License to your work.\n\n      To apply the Apache License to your work, attach the following\n      boilerplate notice, with the fields enclosed by brackets \"{}\"\n      replaced with your own identifying information. (Don't include\n      the brackets!)  The text should be enclosed in the appropriate\n      comment syntax for the file format. We also recommend that a\n      file or class name and description of purpose be included on the\n      same \"printed page\" as the copyright notice for easier\n      identification within third-party archives.\n\n   Copyright 2021-present NAVER Corp.\n\n   Licensed under the Apache License, Version 2.0 (the \"License\");\n   you may not use this file except in compliance with the License.\n   You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n   Unless required by applicable law or agreed to in writing, software\n   distributed under the License is distributed on an \"AS IS\" BASIS,\n   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n   See the License for the specific language governing permissions and\n   limitations under the License.\n"
  },
  {
    "path": "modules/control/proc/mlsd/__init__.py",
    "content": "import os\nimport cv2\nimport numpy as np\nimport torch\nfrom huggingface_hub import hf_hub_download\nfrom PIL import Image\nfrom modules import devices\nfrom modules.shared import opts\nfrom modules.control.util import HWC3, resize_image\nfrom .models.mbv2_mlsd_large import MobileV2_MLSD_Large\nfrom .utils import pred_lines\n\n\nclass MLSDdetector:\n    def __init__(self, model):\n        self.model = model\n\n    @classmethod\n    def from_pretrained(cls, pretrained_model_or_path, filename=None, cache_dir=None, local_files_only=False):\n        if pretrained_model_or_path == \"lllyasviel/ControlNet\":\n            filename = filename or \"annotator/ckpts/mlsd_large_512_fp32.pth\"\n        else:\n            filename = filename or \"mlsd_large_512_fp32.pth\"\n        if os.path.isdir(pretrained_model_or_path):\n            model_path = os.path.join(pretrained_model_or_path, filename)\n        else:\n            model_path = hf_hub_download(pretrained_model_or_path, filename, cache_dir=cache_dir, local_files_only=local_files_only)\n        model = MobileV2_MLSD_Large()\n        model.load_state_dict(torch.load(model_path), strict=True)\n        model.eval()\n        return cls(model)\n\n    def to(self, device):\n        self.model.to(device)\n        return self\n\n    def __call__(self, input_image, thr_v=0.1, thr_d=0.1, detect_resolution=512, image_resolution=512, output_type=\"pil\", **kwargs):\n        self.model.to(devices.device)\n        if not isinstance(input_image, np.ndarray):\n            input_image = np.array(input_image, dtype=np.uint8)\n        input_image = HWC3(input_image)\n        input_image = resize_image(input_image, detect_resolution)\n        assert input_image.ndim == 3\n        img = input_image\n        img_output = np.zeros_like(img)\n        try:\n            lines = pred_lines(img, self.model, [img.shape[0], img.shape[1]], thr_v, thr_d)\n            for line in lines:\n                x_start, y_start, x_end, y_end = [int(val) for val in line]\n                cv2.line(img_output, (x_start, y_start), (x_end, y_end), [255, 255, 255], 1)\n        except Exception:\n            pass\n        detected_map = img_output[:, :, 0]\n        detected_map = HWC3(detected_map)\n        img = resize_image(input_image, image_resolution)\n        H, W, _C = img.shape\n        detected_map = cv2.resize(detected_map, (W, H), interpolation=cv2.INTER_LINEAR)\n        if output_type == \"pil\":\n            detected_map = Image.fromarray(detected_map)\n        if opts.control_move_processor:\n            self.model.to('cpu')\n        return detected_map\n"
  },
  {
    "path": "modules/control/proc/mlsd/models/__init__.py",
    "content": ""
  },
  {
    "path": "modules/control/proc/mlsd/models/mbv2_mlsd_large.py",
    "content": "import os\nimport sys\nimport torch\nimport torch.nn as nn\nimport torch.utils.model_zoo as model_zoo\nfrom  torch.nn import  functional as F\n\n\nclass BlockTypeA(nn.Module):\n    def __init__(self, in_c1, in_c2, out_c1, out_c2, upscale = True):\n        super(BlockTypeA, self).__init__()\n        self.conv1 = nn.Sequential(\n            nn.Conv2d(in_c2, out_c2, kernel_size=1),\n            nn.BatchNorm2d(out_c2),\n            nn.ReLU(inplace=True)\n        )\n        self.conv2 = nn.Sequential(\n            nn.Conv2d(in_c1, out_c1, kernel_size=1),\n            nn.BatchNorm2d(out_c1),\n            nn.ReLU(inplace=True)\n        )\n        self.upscale = upscale\n\n    def forward(self, a, b):\n        b = self.conv1(b)\n        a = self.conv2(a)\n        if self.upscale:\n             b = F.interpolate(b, scale_factor=2.0, mode='bilinear', align_corners=True)\n        return torch.cat((a, b), dim=1)\n\n\nclass BlockTypeB(nn.Module):\n    def __init__(self, in_c, out_c):\n        super(BlockTypeB, self).__init__()\n        self.conv1 = nn.Sequential(\n            nn.Conv2d(in_c, in_c,  kernel_size=3, padding=1),\n            nn.BatchNorm2d(in_c),\n            nn.ReLU()\n        )\n        self.conv2 = nn.Sequential(\n            nn.Conv2d(in_c, out_c, kernel_size=3, padding=1),\n            nn.BatchNorm2d(out_c),\n            nn.ReLU()\n        )\n\n    def forward(self, x):\n        x = self.conv1(x) + x\n        x = self.conv2(x)\n        return x\n\nclass BlockTypeC(nn.Module):\n    def __init__(self, in_c, out_c):\n        super(BlockTypeC, self).__init__()\n        self.conv1 = nn.Sequential(\n            nn.Conv2d(in_c, in_c,  kernel_size=3, padding=5, dilation=5),\n            nn.BatchNorm2d(in_c),\n            nn.ReLU()\n        )\n        self.conv2 = nn.Sequential(\n            nn.Conv2d(in_c, in_c,  kernel_size=3, padding=1),\n            nn.BatchNorm2d(in_c),\n            nn.ReLU()\n        )\n        self.conv3 = nn.Conv2d(in_c, out_c, kernel_size=1)\n\n    def forward(self, x):\n        x = self.conv1(x)\n        x = self.conv2(x)\n        x = self.conv3(x)\n        return x\n\ndef _make_divisible(v, divisor, min_value=None):\n    \"\"\"\n    This function is taken from the original tf repo.\n    It ensures that all layers have a channel number that is divisible by 8\n    It can be seen here:\n    https://github.com/tensorflow/models/blob/master/research/slim/nets/mobilenet/mobilenet.py\n    :param v:\n    :param divisor:\n    :param min_value:\n    :return:\n    \"\"\"\n    if min_value is None:\n        min_value = divisor\n    new_v = max(min_value, int(v + divisor / 2) // divisor * divisor)\n    # Make sure that round down does not go down by more than 10%.\n    if new_v < 0.9 * v:\n        new_v += divisor\n    return new_v\n\n\nclass ConvBNReLU(nn.Sequential):\n    def __init__(self, in_planes, out_planes, kernel_size=3, stride=1, groups=1):\n        self.channel_pad = out_planes - in_planes\n        self.stride = stride\n        #padding = (kernel_size - 1) // 2\n\n        # TFLite uses slightly different padding than PyTorch\n        if stride == 2:\n            padding = 0\n        else:\n            padding = (kernel_size - 1) // 2\n\n        super(ConvBNReLU, self).__init__(\n            nn.Conv2d(in_planes, out_planes, kernel_size, stride, padding, groups=groups, bias=False),\n            nn.BatchNorm2d(out_planes),\n            nn.ReLU6(inplace=True)\n        )\n        self.max_pool = nn.MaxPool2d(kernel_size=stride, stride=stride)\n\n\n    def forward(self, x):\n        # TFLite uses  different padding\n        if self.stride == 2:\n            x = F.pad(x, (0, 1, 0, 1), \"constant\", 0)\n            #print(x.shape)\n\n        for module in self:\n            if not isinstance(module, nn.MaxPool2d):\n                x = module(x)\n        return x\n\n\nclass InvertedResidual(nn.Module):\n    def __init__(self, inp, oup, stride, expand_ratio):\n        super(InvertedResidual, self).__init__()\n        self.stride = stride\n        assert stride in [1, 2]\n\n        hidden_dim = int(round(inp * expand_ratio))\n        self.use_res_connect = self.stride == 1 and inp == oup\n\n        layers = []\n        if expand_ratio != 1:\n            # pw\n            layers.append(ConvBNReLU(inp, hidden_dim, kernel_size=1))\n        layers.extend([\n            # dw\n            ConvBNReLU(hidden_dim, hidden_dim, stride=stride, groups=hidden_dim),\n            # pw-linear\n            nn.Conv2d(hidden_dim, oup, 1, 1, 0, bias=False),\n            nn.BatchNorm2d(oup),\n        ])\n        self.conv = nn.Sequential(*layers)\n\n    def forward(self, x):\n        if self.use_res_connect:\n            return x + self.conv(x)\n        else:\n            return self.conv(x)\n\n\nclass MobileNetV2(nn.Module):\n    def __init__(self, pretrained=True):\n        \"\"\"\n        MobileNet V2 main class\n        Args:\n            num_classes (int): Number of classes\n            width_mult (float): Width multiplier - adjusts number of channels in each layer by this amount\n            inverted_residual_setting: Network structure\n            round_nearest (int): Round the number of channels in each layer to be a multiple of this number\n            Set to 1 to turn off rounding\n            block: Module specifying inverted residual building block for mobilenet\n        \"\"\"\n        super(MobileNetV2, self).__init__()\n\n        block = InvertedResidual\n        input_channel = 32\n        last_channel = 1280\n        width_mult = 1.0\n        round_nearest = 8\n\n        inverted_residual_setting = [\n            # t, c, n, s\n            [1, 16, 1, 1],\n            [6, 24, 2, 2],\n            [6, 32, 3, 2],\n            [6, 64, 4, 2],\n            [6, 96, 3, 1],\n            #[6, 160, 3, 2],\n            #[6, 320, 1, 1],\n        ]\n\n        # only check the first element, assuming user knows t,c,n,s are required\n        if len(inverted_residual_setting) == 0 or len(inverted_residual_setting[0]) != 4:\n            raise ValueError(\"inverted_residual_setting should be non-empty \"\n                             \"or a 4-element list, got {}\".format(inverted_residual_setting))\n\n        # building first layer\n        input_channel = _make_divisible(input_channel * width_mult, round_nearest)\n        self.last_channel = _make_divisible(last_channel * max(1.0, width_mult), round_nearest)\n        features = [ConvBNReLU(4, input_channel, stride=2)]\n        # building inverted residual blocks\n        for t, c, n, s in inverted_residual_setting:\n            output_channel = _make_divisible(c * width_mult, round_nearest)\n            for i in range(n):\n                stride = s if i == 0 else 1\n                features.append(block(input_channel, output_channel, stride, expand_ratio=t))\n                input_channel = output_channel\n\n        self.features = nn.Sequential(*features)\n        self.fpn_selected = [1, 3, 6, 10, 13]\n        # weight initialization\n        for m in self.modules():\n            if isinstance(m, nn.Conv2d):\n                nn.init.kaiming_normal_(m.weight, mode='fan_out')\n                if m.bias is not None:\n                    nn.init.zeros_(m.bias)\n            elif isinstance(m, nn.BatchNorm2d):\n                nn.init.ones_(m.weight)\n                nn.init.zeros_(m.bias)\n            elif isinstance(m, nn.Linear):\n                nn.init.normal_(m.weight, 0, 0.01)\n                nn.init.zeros_(m.bias)\n        if pretrained:\n           self._load_pretrained_model()\n\n    def _forward_impl(self, x):\n        # This exists since TorchScript doesn't support inheritance, so the superclass method\n        # (this one) needs to have a name other than `forward` that can be accessed in a subclass\n        fpn_features = []\n        for i, f in enumerate(self.features):\n            if i > self.fpn_selected[-1]:\n                break\n            x = f(x)\n            if i in self.fpn_selected:\n                fpn_features.append(x)\n\n        c1, c2, c3, c4, c5 = fpn_features\n        return c1, c2, c3, c4, c5\n\n\n    def forward(self, x):\n        return self._forward_impl(x)\n\n    def _load_pretrained_model(self):\n        pretrain_dict = model_zoo.load_url('https://download.pytorch.org/models/mobilenet_v2-b0353104.pth')\n        model_dict = {}\n        state_dict = self.state_dict()\n        for k, v in pretrain_dict.items():\n            if k in state_dict:\n                model_dict[k] = v\n        state_dict.update(model_dict)\n        self.load_state_dict(state_dict)\n\n\nclass MobileV2_MLSD_Large(nn.Module):\n    def __init__(self):\n        super(MobileV2_MLSD_Large, self).__init__()\n\n        self.backbone = MobileNetV2(pretrained=False)\n        ## A, B\n        self.block15 = BlockTypeA(in_c1= 64, in_c2= 96,\n                                  out_c1= 64, out_c2=64,\n                                  upscale=False)\n        self.block16 = BlockTypeB(128, 64)\n\n        ## A, B\n        self.block17 = BlockTypeA(in_c1 = 32,  in_c2 = 64,\n                                  out_c1= 64,  out_c2= 64)\n        self.block18 = BlockTypeB(128, 64)\n\n        ## A, B\n        self.block19 = BlockTypeA(in_c1=24, in_c2=64,\n                                  out_c1=64, out_c2=64)\n        self.block20 = BlockTypeB(128, 64)\n\n        ## A, B, C\n        self.block21 = BlockTypeA(in_c1=16, in_c2=64,\n                                  out_c1=64, out_c2=64)\n        self.block22 = BlockTypeB(128, 64)\n\n        self.block23 = BlockTypeC(64, 16)\n\n    def forward(self, x):\n        c1, c2, c3, c4, c5 = self.backbone(x)\n\n        x = self.block15(c4, c5)\n        x = self.block16(x)\n\n        x = self.block17(c3, x)\n        x = self.block18(x)\n\n        x = self.block19(c2, x)\n        x = self.block20(x)\n\n        x = self.block21(c1, x)\n        x = self.block22(x)\n        x = self.block23(x)\n        x = x[:, 7:, :, :]\n\n        return x\n"
  },
  {
    "path": "modules/control/proc/mlsd/models/mbv2_mlsd_tiny.py",
    "content": "import os\nimport sys\nimport torch\nimport torch.nn as nn\nimport torch.utils.model_zoo as model_zoo\nfrom  torch.nn import  functional as F\n\n\nclass BlockTypeA(nn.Module):\n    def __init__(self, in_c1, in_c2, out_c1, out_c2, upscale = True):\n        super(BlockTypeA, self).__init__()\n        self.conv1 = nn.Sequential(\n            nn.Conv2d(in_c2, out_c2, kernel_size=1),\n            nn.BatchNorm2d(out_c2),\n            nn.ReLU(inplace=True)\n        )\n        self.conv2 = nn.Sequential(\n            nn.Conv2d(in_c1, out_c1, kernel_size=1),\n            nn.BatchNorm2d(out_c1),\n            nn.ReLU(inplace=True)\n        )\n        self.upscale = upscale\n\n    def forward(self, a, b):\n        b = self.conv1(b)\n        a = self.conv2(a)\n        b = F.interpolate(b, scale_factor=2.0, mode='bilinear', align_corners=True)\n        return torch.cat((a, b), dim=1)\n\n\nclass BlockTypeB(nn.Module):\n    def __init__(self, in_c, out_c):\n        super(BlockTypeB, self).__init__()\n        self.conv1 = nn.Sequential(\n            nn.Conv2d(in_c, in_c,  kernel_size=3, padding=1),\n            nn.BatchNorm2d(in_c),\n            nn.ReLU()\n        )\n        self.conv2 = nn.Sequential(\n            nn.Conv2d(in_c, out_c, kernel_size=3, padding=1),\n            nn.BatchNorm2d(out_c),\n            nn.ReLU()\n        )\n\n    def forward(self, x):\n        x = self.conv1(x) + x\n        x = self.conv2(x)\n        return x\n\nclass BlockTypeC(nn.Module):\n    def __init__(self, in_c, out_c):\n        super(BlockTypeC, self).__init__()\n        self.conv1 = nn.Sequential(\n            nn.Conv2d(in_c, in_c,  kernel_size=3, padding=5, dilation=5),\n            nn.BatchNorm2d(in_c),\n            nn.ReLU()\n        )\n        self.conv2 = nn.Sequential(\n            nn.Conv2d(in_c, in_c,  kernel_size=3, padding=1),\n            nn.BatchNorm2d(in_c),\n            nn.ReLU()\n        )\n        self.conv3 = nn.Conv2d(in_c, out_c, kernel_size=1)\n\n    def forward(self, x):\n        x = self.conv1(x)\n        x = self.conv2(x)\n        x = self.conv3(x)\n        return x\n\ndef _make_divisible(v, divisor, min_value=None):\n    \"\"\"\n    This function is taken from the original tf repo.\n    It ensures that all layers have a channel number that is divisible by 8\n    It can be seen here:\n    https://github.com/tensorflow/models/blob/master/research/slim/nets/mobilenet/mobilenet.py\n    :param v:\n    :param divisor:\n    :param min_value:\n    :return:\n    \"\"\"\n    if min_value is None:\n        min_value = divisor\n    new_v = max(min_value, int(v + divisor / 2) // divisor * divisor)\n    # Make sure that round down does not go down by more than 10%.\n    if new_v < 0.9 * v:\n        new_v += divisor\n    return new_v\n\n\nclass ConvBNReLU(nn.Sequential):\n    def __init__(self, in_planes, out_planes, kernel_size=3, stride=1, groups=1):\n        self.channel_pad = out_planes - in_planes\n        self.stride = stride\n        #padding = (kernel_size - 1) // 2\n\n        # TFLite uses slightly different padding than PyTorch\n        if stride == 2:\n            padding = 0\n        else:\n            padding = (kernel_size - 1) // 2\n\n        super(ConvBNReLU, self).__init__(\n            nn.Conv2d(in_planes, out_planes, kernel_size, stride, padding, groups=groups, bias=False),\n            nn.BatchNorm2d(out_planes),\n            nn.ReLU6(inplace=True)\n        )\n        self.max_pool = nn.MaxPool2d(kernel_size=stride, stride=stride)\n\n\n    def forward(self, x):\n        # TFLite uses  different padding\n        if self.stride == 2:\n            x = F.pad(x, (0, 1, 0, 1), \"constant\", 0)\n            #print(x.shape)\n\n        for module in self:\n            if not isinstance(module, nn.MaxPool2d):\n                x = module(x)\n        return x\n\n\nclass InvertedResidual(nn.Module):\n    def __init__(self, inp, oup, stride, expand_ratio):\n        super(InvertedResidual, self).__init__()\n        self.stride = stride\n        assert stride in [1, 2]\n\n        hidden_dim = int(round(inp * expand_ratio))\n        self.use_res_connect = self.stride == 1 and inp == oup\n\n        layers = []\n        if expand_ratio != 1:\n            # pw\n            layers.append(ConvBNReLU(inp, hidden_dim, kernel_size=1))\n        layers.extend([\n            # dw\n            ConvBNReLU(hidden_dim, hidden_dim, stride=stride, groups=hidden_dim),\n            # pw-linear\n            nn.Conv2d(hidden_dim, oup, 1, 1, 0, bias=False),\n            nn.BatchNorm2d(oup),\n        ])\n        self.conv = nn.Sequential(*layers)\n\n    def forward(self, x):\n        if self.use_res_connect:\n            return x + self.conv(x)\n        else:\n            return self.conv(x)\n\n\nclass MobileNetV2(nn.Module):\n    def __init__(self, pretrained=True):\n        \"\"\"\n        MobileNet V2 main class\n        Args:\n            num_classes (int): Number of classes\n            width_mult (float): Width multiplier - adjusts number of channels in each layer by this amount\n            inverted_residual_setting: Network structure\n            round_nearest (int): Round the number of channels in each layer to be a multiple of this number\n            Set to 1 to turn off rounding\n            block: Module specifying inverted residual building block for mobilenet\n        \"\"\"\n        super(MobileNetV2, self).__init__()\n\n        block = InvertedResidual\n        input_channel = 32\n        last_channel = 1280\n        width_mult = 1.0\n        round_nearest = 8\n\n        inverted_residual_setting = [\n            # t, c, n, s\n            [1, 16, 1, 1],\n            [6, 24, 2, 2],\n            [6, 32, 3, 2],\n            [6, 64, 4, 2],\n            #[6, 96, 3, 1],\n            #[6, 160, 3, 2],\n            #[6, 320, 1, 1],\n        ]\n\n        # only check the first element, assuming user knows t,c,n,s are required\n        if len(inverted_residual_setting) == 0 or len(inverted_residual_setting[0]) != 4:\n            raise ValueError(\"inverted_residual_setting should be non-empty \"\n                             \"or a 4-element list, got {}\".format(inverted_residual_setting))\n\n        # building first layer\n        input_channel = _make_divisible(input_channel * width_mult, round_nearest)\n        self.last_channel = _make_divisible(last_channel * max(1.0, width_mult), round_nearest)\n        features = [ConvBNReLU(4, input_channel, stride=2)]\n        # building inverted residual blocks\n        for t, c, n, s in inverted_residual_setting:\n            output_channel = _make_divisible(c * width_mult, round_nearest)\n            for i in range(n):\n                stride = s if i == 0 else 1\n                features.append(block(input_channel, output_channel, stride, expand_ratio=t))\n                input_channel = output_channel\n        self.features = nn.Sequential(*features)\n\n        self.fpn_selected = [3, 6, 10]\n        # weight initialization\n        for m in self.modules():\n            if isinstance(m, nn.Conv2d):\n                nn.init.kaiming_normal_(m.weight, mode='fan_out')\n                if m.bias is not None:\n                    nn.init.zeros_(m.bias)\n            elif isinstance(m, nn.BatchNorm2d):\n                nn.init.ones_(m.weight)\n                nn.init.zeros_(m.bias)\n            elif isinstance(m, nn.Linear):\n                nn.init.normal_(m.weight, 0, 0.01)\n                nn.init.zeros_(m.bias)\n\n        #if pretrained:\n        #    self._load_pretrained_model()\n\n    def _forward_impl(self, x):\n        # This exists since TorchScript doesn't support inheritance, so the superclass method\n        # (this one) needs to have a name other than `forward` that can be accessed in a subclass\n        fpn_features = []\n        for i, f in enumerate(self.features):\n            if i > self.fpn_selected[-1]:\n                break\n            x = f(x)\n            if i in self.fpn_selected:\n                fpn_features.append(x)\n\n        c2, c3, c4 = fpn_features\n        return c2, c3, c4\n\n\n    def forward(self, x):\n        return self._forward_impl(x)\n\n    def _load_pretrained_model(self):\n        pretrain_dict = model_zoo.load_url('https://download.pytorch.org/models/mobilenet_v2-b0353104.pth')\n        model_dict = {}\n        state_dict = self.state_dict()\n        for k, v in pretrain_dict.items():\n            if k in state_dict:\n                model_dict[k] = v\n        state_dict.update(model_dict)\n        self.load_state_dict(state_dict)\n\n\nclass MobileV2_MLSD_Tiny(nn.Module):\n    def __init__(self):\n        super(MobileV2_MLSD_Tiny, self).__init__()\n\n        self.backbone = MobileNetV2(pretrained=True)\n\n        self.block12 = BlockTypeA(in_c1= 32, in_c2= 64,\n                                  out_c1= 64, out_c2=64)\n        self.block13 = BlockTypeB(128, 64)\n\n        self.block14 = BlockTypeA(in_c1 = 24,  in_c2 = 64,\n                                  out_c1= 32,  out_c2= 32)\n        self.block15 = BlockTypeB(64, 64)\n\n        self.block16 = BlockTypeC(64, 16)\n\n    def forward(self, x):\n        c2, c3, c4 = self.backbone(x)\n\n        x = self.block12(c3, c4)\n        x = self.block13(x)\n        x = self.block14(c2, x)\n        x = self.block15(x)\n        x = self.block16(x)\n        x = x[:, 7:, :, :]\n        #print(x.shape)\n        x = F.interpolate(x, scale_factor=2.0, mode='bilinear', align_corners=True)\n\n        return x\n"
  },
  {
    "path": "modules/control/proc/mlsd/utils.py",
    "content": "'''\nmodified by  lihaoweicv\npytorch version\n'''\n\n'''\nM-LSD\nCopyright 2021-present NAVER Corp.\nApache License v2.0\n'''\n\nimport os\nimport numpy as np\nimport cv2\nimport torch\nfrom  torch.nn import functional as F\n\n\ndef deccode_output_score_and_ptss(tpMap, topk_n = 200, ksize = 5):\n    '''\n    tpMap:\n    center: tpMap[1, 0, :, :]\n    displacement: tpMap[1, 1:5, :, :]\n    '''\n    b, c, h, w = tpMap.shape\n    assert  b==1, 'only support bsize==1'\n    displacement = tpMap[:, 1:5, :, :][0]\n    center = tpMap[:, 0, :, :]\n    heat = torch.sigmoid(center)\n    hmax = F.max_pool2d( heat, (ksize, ksize), stride=1, padding=(ksize-1)//2)\n    keep = (hmax == heat).float()\n    heat = heat * keep\n    heat = heat.reshape(-1, )\n\n    scores, indices = torch.topk(heat, topk_n, dim=-1, largest=True)\n    yy = torch.floor_divide(indices, w).unsqueeze(-1)\n    xx = torch.fmod(indices, w).unsqueeze(-1)\n    ptss = torch.cat((yy, xx),dim=-1)\n\n    ptss   = ptss.detach().cpu().numpy()\n    scores = scores.detach().cpu().numpy()\n    displacement = displacement.detach().cpu().numpy()\n    displacement = displacement.transpose((1,2,0))\n    return  ptss, scores, displacement\n\n\ndef pred_lines(image, model,\n               input_shape=None,\n               score_thr=0.10,\n               dist_thr=20.0):\n    if input_shape is None:\n        input_shape = [512, 512]\n    h, w, _ = image.shape\n\n    device = next(iter(model.parameters())).device\n    h_ratio, w_ratio = [h / input_shape[0], w / input_shape[1]]\n\n    resized_image = np.concatenate([cv2.resize(image, (input_shape[1], input_shape[0]), interpolation=cv2.INTER_AREA),\n                                    np.ones([input_shape[0], input_shape[1], 1])], axis=-1)\n\n    resized_image = resized_image.transpose((2,0,1))\n    batch_image = np.expand_dims(resized_image, axis=0).astype('float32')\n    batch_image = (batch_image / 127.5) - 1.0\n\n    batch_image = torch.from_numpy(batch_image).float()\n    batch_image = batch_image.to(device)\n    outputs = model(batch_image)\n    pts, pts_score, vmap = deccode_output_score_and_ptss(outputs, 200, 3)\n    start = vmap[:, :, :2]\n    end = vmap[:, :, 2:]\n    dist_map = np.sqrt(np.sum((start - end) ** 2, axis=-1))\n\n    segments_list = []\n    for center, score in zip(pts, pts_score):\n        y, x = center\n        distance = dist_map[y, x]\n        if score > score_thr and distance > dist_thr:\n            disp_x_start, disp_y_start, disp_x_end, disp_y_end = vmap[y, x, :]\n            x_start = x + disp_x_start\n            y_start = y + disp_y_start\n            x_end = x + disp_x_end\n            y_end = y + disp_y_end\n            segments_list.append([x_start, y_start, x_end, y_end])\n\n    lines = 2 * np.array(segments_list)  # 256 > 512\n    lines[:, 0] = lines[:, 0] * w_ratio\n    lines[:, 1] = lines[:, 1] * h_ratio\n    lines[:, 2] = lines[:, 2] * w_ratio\n    lines[:, 3] = lines[:, 3] * h_ratio\n\n    return lines\n\n\ndef pred_squares(image,\n                 model,\n                 input_shape=None,\n                 params=None):\n    '''\n    shape = [height, width]\n    '''\n    if params is None:\n        params = {'score': 0.06, 'outside_ratio': 0.28, 'inside_ratio': 0.45, 'w_overlap': 0.0, 'w_degree': 1.95, 'w_length': 0.0, 'w_area': 1.86, 'w_center': 0.14}\n    if input_shape is None:\n        input_shape = [512, 512]\n    h, w, _ = image.shape\n    original_shape = [h, w]\n    device = next(iter(model.parameters())).device\n\n    resized_image = np.concatenate([cv2.resize(image, (input_shape[0], input_shape[1]), interpolation=cv2.INTER_AREA),\n                                    np.ones([input_shape[0], input_shape[1], 1])], axis=-1)\n    resized_image = resized_image.transpose((2, 0, 1))\n    batch_image = np.expand_dims(resized_image, axis=0).astype('float32')\n    batch_image = (batch_image / 127.5) - 1.0\n\n    batch_image = torch.from_numpy(batch_image).float().to(device)\n    outputs = model(batch_image)\n\n    pts, pts_score, vmap = deccode_output_score_and_ptss(outputs, 200, 3)\n    start = vmap[:, :, :2]  # (x, y)\n    end = vmap[:, :, 2:]  # (x, y)\n    dist_map = np.sqrt(np.sum((start - end) ** 2, axis=-1))\n\n    junc_list = []\n    segments_list = []\n    for junc, score in zip(pts, pts_score):\n        y, x = junc\n        distance = dist_map[y, x]\n        if score > params['score'] and distance > 20.0:\n            junc_list.append([x, y])\n            disp_x_start, disp_y_start, disp_x_end, disp_y_end = vmap[y, x, :]\n            d_arrow = 1.0\n            x_start = x + d_arrow * disp_x_start\n            y_start = y + d_arrow * disp_y_start\n            x_end = x + d_arrow * disp_x_end\n            y_end = y + d_arrow * disp_y_end\n            segments_list.append([x_start, y_start, x_end, y_end])\n\n    segments = np.array(segments_list)\n\n    ####### post processing for squares\n    # 1. get unique lines\n    point = np.array([[0, 0]])\n    point = point[0]\n    start = segments[:, :2]\n    end = segments[:, 2:]\n    diff = start - end\n    a = diff[:, 1]\n    b = -diff[:, 0]\n    c = a * start[:, 0] + b * start[:, 1]\n\n    d = np.abs(a * point[0] + b * point[1] - c) / np.sqrt(a ** 2 + b ** 2 + 1e-10)\n    theta = np.arctan2(diff[:, 0], diff[:, 1]) * 180 / np.pi\n    theta[theta < 0.0] += 180\n    hough = np.concatenate([d[:, None], theta[:, None]], axis=-1)\n\n    d_quant = 1\n    theta_quant = 2\n    hough[:, 0] //= d_quant\n    hough[:, 1] //= theta_quant\n    _, indices, counts = np.unique(hough, axis=0, return_index=True, return_counts=True)\n\n    acc_map = np.zeros([512 // d_quant + 1, 360 // theta_quant + 1], dtype='float32')\n    idx_map = np.zeros([512 // d_quant + 1, 360 // theta_quant + 1], dtype='int32') - 1\n    yx_indices = hough[indices, :].astype('int32')\n    acc_map[yx_indices[:, 0], yx_indices[:, 1]] = counts\n    idx_map[yx_indices[:, 0], yx_indices[:, 1]] = indices\n\n    acc_map_np = acc_map\n    # acc_map = acc_map[None, :, :, None]\n    #\n    # ### fast suppression using tensorflow op\n    # acc_map = tf.constant(acc_map, dtype=tf.float32)\n    # max_acc_map = tf.keras.layers.MaxPool2D(pool_size=(5, 5), strides=1, padding='same')(acc_map)\n    # acc_map = acc_map * tf.cast(tf.math.equal(acc_map, max_acc_map), tf.float32)\n    # flatten_acc_map = tf.reshape(acc_map, [1, -1])\n    # topk_values, topk_indices = tf.math.top_k(flatten_acc_map, k=len(pts))\n    # _, h, w, _ = acc_map.shape\n    # y = tf.expand_dims(topk_indices // w, axis=-1)\n    # x = tf.expand_dims(topk_indices % w, axis=-1)\n    # yx = tf.concat([y, x], axis=-1)\n\n    ### fast suppression using pytorch op\n    acc_map = torch.from_numpy(acc_map_np).unsqueeze(0).unsqueeze(0)\n    _,_, h, w = acc_map.shape\n    max_acc_map = F.max_pool2d(acc_map,kernel_size=5, stride=1, padding=2)\n    acc_map = acc_map * ( (acc_map == max_acc_map).float() )\n    flatten_acc_map = acc_map.reshape([-1, ])\n\n    scores, indices = torch.topk(flatten_acc_map, len(pts), dim=-1, largest=True)\n    yy = torch.div(indices, w, rounding_mode='floor').unsqueeze(-1)\n    xx = torch.fmod(indices, w).unsqueeze(-1)\n    yx = torch.cat((yy, xx), dim=-1)\n\n    yx = yx.detach().cpu().numpy()\n\n    topk_values = scores.detach().cpu().numpy()\n    indices = idx_map[yx[:, 0], yx[:, 1]]\n    basis = 5 // 2\n\n    merged_segments = []\n    for yx_pt, max_indice, value in zip(yx, indices, topk_values):\n        y, x = yx_pt\n        if max_indice == -1 or value == 0:\n            continue\n        segment_list = []\n        for y_offset in range(-basis, basis + 1):\n            for x_offset in range(-basis, basis + 1):\n                indice = idx_map[y + y_offset, x + x_offset]\n                cnt = int(acc_map_np[y + y_offset, x + x_offset])\n                if indice != -1:\n                    segment_list.append(segments[indice])\n                if cnt > 1:\n                    check_cnt = 1\n                    current_hough = hough[indice]\n                    for new_indice, new_hough in enumerate(hough):\n                        if (current_hough == new_hough).all() and indice != new_indice:\n                            segment_list.append(segments[new_indice])\n                            check_cnt += 1\n                        if check_cnt == cnt:\n                            break\n        group_segments = np.array(segment_list).reshape([-1, 2])\n        sorted_group_segments = np.sort(group_segments, axis=0)\n        x_min, y_min = sorted_group_segments[0, :]\n        x_max, y_max = sorted_group_segments[-1, :]\n\n        deg = theta[max_indice]\n        if deg >= 90:\n            merged_segments.append([x_min, y_max, x_max, y_min])\n        else:\n            merged_segments.append([x_min, y_min, x_max, y_max])\n\n    # 2. get intersections\n    new_segments = np.array(merged_segments)  # (x1, y1, x2, y2)\n    start = new_segments[:, :2]  # (x1, y1)\n    end = new_segments[:, 2:]  # (x2, y2)\n    new_centers = (start + end) / 2.0\n    diff = start - end\n    dist_segments = np.sqrt(np.sum(diff ** 2, axis=-1))\n\n    # ax + by = c\n    a = diff[:, 1]\n    b = -diff[:, 0]\n    c = a * start[:, 0] + b * start[:, 1]\n    pre_det = a[:, None] * b[None, :]\n    det = pre_det - np.transpose(pre_det)\n\n    pre_inter_y = a[:, None] * c[None, :]\n    inter_y = (pre_inter_y - np.transpose(pre_inter_y)) / (det + 1e-10)\n    pre_inter_x = c[:, None] * b[None, :]\n    inter_x = (pre_inter_x - np.transpose(pre_inter_x)) / (det + 1e-10)\n    inter_pts = np.concatenate([inter_x[:, :, None], inter_y[:, :, None]], axis=-1).astype('int32')\n\n    # 3. get corner information\n    # 3.1 get distance\n    '''\n    dist_segments:\n        | dist(0), dist(1), dist(2), ...|\n    dist_inter_to_segment1:\n        | dist(inter,0), dist(inter,0), dist(inter,0), ... |\n        | dist(inter,1), dist(inter,1), dist(inter,1), ... |\n        ...\n    dist_inter_to_semgnet2:\n        | dist(inter,0), dist(inter,1), dist(inter,2), ... |\n        | dist(inter,0), dist(inter,1), dist(inter,2), ... |\n        ...\n    '''\n\n    dist_inter_to_segment1_start = np.sqrt(\n        np.sum(((inter_pts - start[:, None, :]) ** 2), axis=-1, keepdims=True))  # [n_batch, n_batch, 1]\n    dist_inter_to_segment1_end = np.sqrt(\n        np.sum(((inter_pts - end[:, None, :]) ** 2), axis=-1, keepdims=True))  # [n_batch, n_batch, 1]\n    dist_inter_to_segment2_start = np.sqrt(\n        np.sum(((inter_pts - start[None, :, :]) ** 2), axis=-1, keepdims=True))  # [n_batch, n_batch, 1]\n    dist_inter_to_segment2_end = np.sqrt(\n        np.sum(((inter_pts - end[None, :, :]) ** 2), axis=-1, keepdims=True))  # [n_batch, n_batch, 1]\n\n    # sort ascending\n    dist_inter_to_segment1 = np.sort(\n        np.concatenate([dist_inter_to_segment1_start, dist_inter_to_segment1_end], axis=-1),\n        axis=-1)  # [n_batch, n_batch, 2]\n    dist_inter_to_segment2 = np.sort(\n        np.concatenate([dist_inter_to_segment2_start, dist_inter_to_segment2_end], axis=-1),\n        axis=-1)  # [n_batch, n_batch, 2]\n\n    # 3.2 get degree\n    inter_to_start = new_centers[:, None, :] - inter_pts\n    deg_inter_to_start = np.arctan2(inter_to_start[:, :, 1], inter_to_start[:, :, 0]) * 180 / np.pi\n    deg_inter_to_start[deg_inter_to_start < 0.0] += 360\n    inter_to_end = new_centers[None, :, :] - inter_pts\n    deg_inter_to_end = np.arctan2(inter_to_end[:, :, 1], inter_to_end[:, :, 0]) * 180 / np.pi\n    deg_inter_to_end[deg_inter_to_end < 0.0] += 360\n\n    '''\n    B -- G\n    |    |\n    C -- R\n    B : blue / G: green / C: cyan / R: red\n\n    0 -- 1\n    |    |\n    3 -- 2\n    '''\n    # rename variables\n    deg1_map, deg2_map = deg_inter_to_start, deg_inter_to_end\n    # sort deg ascending\n    deg_sort = np.sort(np.concatenate([deg1_map[:, :, None], deg2_map[:, :, None]], axis=-1), axis=-1)\n\n    deg_diff_map = np.abs(deg1_map - deg2_map)\n    # we only consider the smallest degree of intersect\n    deg_diff_map[deg_diff_map > 180] = 360 - deg_diff_map[deg_diff_map > 180]\n\n    # define available degree range\n    deg_range = [60, 120]\n\n    corner_dict = {corner_info: [] for corner_info in range(4)}\n    inter_points = []\n    for i in range(inter_pts.shape[0]):\n        for j in range(i + 1, inter_pts.shape[1]):\n            # i, j > line index, always i < j\n            x, y = inter_pts[i, j, :]\n            deg1, deg2 = deg_sort[i, j, :]\n            deg_diff = deg_diff_map[i, j]\n\n            check_degree = deg_diff > deg_range[0] and deg_diff < deg_range[1]\n\n            outside_ratio = params['outside_ratio']  # over ratio >>> drop it!\n            inside_ratio = params['inside_ratio']  # over ratio >>> drop it!\n            check_distance = ((dist_inter_to_segment1[i, j, 1] >= dist_segments[i] and \\\n                               dist_inter_to_segment1[i, j, 0] <= dist_segments[i] * outside_ratio) or \\\n                              (dist_inter_to_segment1[i, j, 1] <= dist_segments[i] and \\\n                               dist_inter_to_segment1[i, j, 0] <= dist_segments[i] * inside_ratio)) and \\\n                             ((dist_inter_to_segment2[i, j, 1] >= dist_segments[j] and \\\n                               dist_inter_to_segment2[i, j, 0] <= dist_segments[j] * outside_ratio) or \\\n                              (dist_inter_to_segment2[i, j, 1] <= dist_segments[j] and \\\n                               dist_inter_to_segment2[i, j, 0] <= dist_segments[j] * inside_ratio))\n\n            if check_degree and check_distance:\n                corner_info = None\n\n                if (deg1 >= 0 and deg1 <= 45 and deg2 >= 45 and deg2 <= 120) or \\\n                        (deg2 >= 315 and deg1 >= 45 and deg1 <= 120):\n                    corner_info, _color_info = 0, 'blue'\n                elif (deg1 >= 45 and deg1 <= 125 and deg2 >= 125 and deg2 <= 225):\n                    corner_info, _color_info = 1, 'green'\n                elif (deg1 >= 125 and deg1 <= 225 and deg2 >= 225 and deg2 <= 315):\n                    corner_info, _color_info = 2, 'black'\n                elif (deg1 >= 0 and deg1 <= 45 and deg2 >= 225 and deg2 <= 315) or \\\n                        (deg2 >= 315 and deg1 >= 225 and deg1 <= 315):\n                    corner_info, _color_info = 3, 'cyan'\n                else:\n                    corner_info, _color_info = 4, 'red'  # we don't use it\n                    continue\n\n                corner_dict[corner_info].append([x, y, i, j])\n                inter_points.append([x, y])\n\n    square_list = []\n    connect_list = []\n    segments_list = []\n    for corner0 in corner_dict[0]:\n        for corner1 in corner_dict[1]:\n            connect01 = False\n            for corner0_line in corner0[2:]:\n                if corner0_line in corner1[2:]:\n                    connect01 = True\n                    break\n            if connect01:\n                for corner2 in corner_dict[2]:\n                    connect12 = False\n                    for corner1_line in corner1[2:]:\n                        if corner1_line in corner2[2:]:\n                            connect12 = True\n                            break\n                    if connect12:\n                        for corner3 in corner_dict[3]:\n                            connect23 = False\n                            for corner2_line in corner2[2:]:\n                                if corner2_line in corner3[2:]:\n                                    connect23 = True\n                                    break\n                            if connect23:\n                                for corner3_line in corner3[2:]:\n                                    if corner3_line in corner0[2:]:\n                                        # SQUARE!!!\n                                        '''\n                                        0 -- 1\n                                        |    |\n                                        3 -- 2\n                                        square_list:\n                                            order: 0 > 1 > 2 > 3\n                                            | x0, y0, x1, y1, x2, y2, x3, y3 |\n                                            | x0, y0, x1, y1, x2, y2, x3, y3 |\n                                            ...\n                                        connect_list:\n                                            order: 01 > 12 > 23 > 30\n                                            | line_idx01, line_idx12, line_idx23, line_idx30 |\n                                            | line_idx01, line_idx12, line_idx23, line_idx30 |\n                                            ...\n                                        segments_list:\n                                            order: 0 > 1 > 2 > 3\n                                            | line_idx0_i, line_idx0_j, line_idx1_i, line_idx1_j, line_idx2_i, line_idx2_j, line_idx3_i, line_idx3_j |\n                                            | line_idx0_i, line_idx0_j, line_idx1_i, line_idx1_j, line_idx2_i, line_idx2_j, line_idx3_i, line_idx3_j |\n                                            ...\n                                        '''\n                                        square_list.append(corner0[:2] + corner1[:2] + corner2[:2] + corner3[:2])\n                                        connect_list.append([corner0_line, corner1_line, corner2_line, corner3_line])\n                                        segments_list.append(corner0[2:] + corner1[2:] + corner2[2:] + corner3[2:])\n\n    def check_outside_inside(segments_info, connect_idx):\n        # return 'outside or inside', min distance, cover_param, peri_param\n        if connect_idx == segments_info[0]:\n            check_dist_mat = dist_inter_to_segment1\n        else:\n            check_dist_mat = dist_inter_to_segment2\n\n        i, j = segments_info\n        min_dist, max_dist = check_dist_mat[i, j, :]\n        connect_dist = dist_segments[connect_idx]\n        if max_dist > connect_dist:\n            return 'outside', min_dist, 0, 1\n        else:\n            return 'inside', min_dist, -1, -1\n\n\n    try:\n        map_size = input_shape[0] / 2\n        squares = np.array(square_list).reshape([-1, 4, 2])\n        score_array = []\n        connect_array = np.array(connect_list)\n        segments_array = np.array(segments_list).reshape([-1, 4, 2])\n\n        # get degree of corners:\n        squares_rollup = np.roll(squares, 1, axis=1)\n        squares_rolldown = np.roll(squares, -1, axis=1)\n        vec1 = squares_rollup - squares\n        normalized_vec1 = vec1 / (np.linalg.norm(vec1, axis=-1, keepdims=True) + 1e-10)\n        vec2 = squares_rolldown - squares\n        normalized_vec2 = vec2 / (np.linalg.norm(vec2, axis=-1, keepdims=True) + 1e-10)\n        inner_products = np.sum(normalized_vec1 * normalized_vec2, axis=-1)  # [n_squares, 4]\n        squares_degree = np.arccos(inner_products) * 180 / np.pi  # [n_squares, 4]\n\n        # get square score\n        overlap_scores = []\n        degree_scores = []\n        length_scores = []\n\n        for connects, segments, square, degree in zip(connect_array, segments_array, squares, squares_degree):\n            '''\n            0 -- 1\n            |    |\n            3 -- 2\n\n            # segments: [4, 2]\n            # connects: [4]\n            '''\n\n            ###################################### OVERLAP SCORES\n            cover = 0\n            perimeter = 0\n            # check 0 > 1 > 2 > 3\n            square_length = []\n\n            for start_idx in range(4):\n                end_idx = (start_idx + 1) % 4\n\n                connect_idx = connects[start_idx]  # segment idx of segment01\n                start_segments = segments[start_idx]\n                end_segments = segments[end_idx]\n\n                square[start_idx]\n                square[end_idx]\n\n                # check whether outside or inside\n                start_position, start_min, start_cover_param, start_peri_param = check_outside_inside(start_segments,\n                                                                                                      connect_idx)\n                end_position, end_min, end_cover_param, end_peri_param = check_outside_inside(end_segments, connect_idx)\n\n                cover += dist_segments[connect_idx] + start_cover_param * start_min + end_cover_param * end_min\n                perimeter += dist_segments[connect_idx] + start_peri_param * start_min + end_peri_param * end_min\n\n                square_length.append(\n                    dist_segments[connect_idx] + start_peri_param * start_min + end_peri_param * end_min)\n\n            overlap_scores.append(cover / perimeter)\n            ######################################\n            ###################################### DEGREE SCORES\n            '''\n            deg0 vs deg2\n            deg1 vs deg3\n            '''\n            deg0, deg1, deg2, deg3 = degree\n            deg_ratio1 = deg0 / deg2\n            if deg_ratio1 > 1.0:\n                deg_ratio1 = 1 / deg_ratio1\n            deg_ratio2 = deg1 / deg3\n            if deg_ratio2 > 1.0:\n                deg_ratio2 = 1 / deg_ratio2\n            degree_scores.append((deg_ratio1 + deg_ratio2) / 2)\n            ######################################\n            ###################################### LENGTH SCORES\n            '''\n            len0 vs len2\n            len1 vs len3\n            '''\n            len0, len1, len2, len3 = square_length\n            len_ratio1 = len0 / len2 if len2 > len0 else len2 / len0\n            len_ratio2 = len1 / len3 if len3 > len1 else len3 / len1\n            length_scores.append((len_ratio1 + len_ratio2) / 2)\n\n            ######################################\n\n        overlap_scores = np.array(overlap_scores)\n        overlap_scores /= np.max(overlap_scores)\n\n        degree_scores = np.array(degree_scores)\n        # degree_scores /= np.max(degree_scores)\n\n        length_scores = np.array(length_scores)\n\n        ###################################### AREA SCORES\n        area_scores = np.reshape(squares, [-1, 4, 2])\n        area_x = area_scores[:, :, 0]\n        area_y = area_scores[:, :, 1]\n        correction = area_x[:, -1] * area_y[:, 0] - area_y[:, -1] * area_x[:, 0]\n        area_scores = np.sum(area_x[:, :-1] * area_y[:, 1:], axis=-1) - np.sum(area_y[:, :-1] * area_x[:, 1:], axis=-1)\n        area_scores = 0.5 * np.abs(area_scores + correction)\n        area_scores /= (map_size * map_size)  # np.max(area_scores)\n        ######################################\n\n        ###################################### CENTER SCORES\n        centers = np.array([[256 // 2, 256 // 2]], dtype='float32')  # [1, 2]\n        # squares: [n, 4, 2]\n        square_centers = np.mean(squares, axis=1)  # [n, 2]\n        center2center = np.sqrt(np.sum((centers - square_centers) ** 2))\n        center_scores = center2center / (map_size / np.sqrt(2.0))\n\n        '''\n        score_w = [overlap, degree, area, center, length]\n        '''\n        score_array = params['w_overlap'] * overlap_scores \\\n                      + params['w_degree'] * degree_scores \\\n                      + params['w_area'] * area_scores \\\n                      - params['w_center'] * center_scores \\\n                      + params['w_length'] * length_scores\n\n\n        sorted_idx = np.argsort(score_array)[::-1]\n        score_array = score_array[sorted_idx]\n        squares = squares[sorted_idx]\n\n    except Exception:\n        pass\n\n    '''return list\n    merged_lines, squares, scores\n    '''\n\n    try:\n        new_segments[:, 0] = new_segments[:, 0] * 2 / input_shape[1] * original_shape[1]\n        new_segments[:, 1] = new_segments[:, 1] * 2 / input_shape[0] * original_shape[0]\n        new_segments[:, 2] = new_segments[:, 2] * 2 / input_shape[1] * original_shape[1]\n        new_segments[:, 3] = new_segments[:, 3] * 2 / input_shape[0] * original_shape[0]\n    except Exception:\n        new_segments = []\n\n    try:\n        squares[:, :, 0] = squares[:, :, 0] * 2 / input_shape[1] * original_shape[1]\n        squares[:, :, 1] = squares[:, :, 1] * 2 / input_shape[0] * original_shape[0]\n    except Exception:\n        squares = []\n        score_array = []\n\n    try:\n        inter_points = np.array(inter_points)\n        inter_points[:, 0] = inter_points[:, 0] * 2 / input_shape[1] * original_shape[1]\n        inter_points[:, 1] = inter_points[:, 1] * 2 / input_shape[0] * original_shape[0]\n    except Exception:\n        inter_points = []\n\n    return new_segments, squares, score_array, inter_points\n"
  },
  {
    "path": "modules/control/proc/normalbae/LICENSE",
    "content": "MIT License\n\nCopyright (c) 2022 Caroline Chan\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n"
  },
  {
    "path": "modules/control/proc/normalbae/__init__.py",
    "content": "import os\nimport types\nimport cv2\nimport numpy as np\nimport torch\nimport torchvision.transforms as transforms\nfrom einops import rearrange\nfrom huggingface_hub import hf_hub_download\nfrom PIL import Image\nfrom modules import devices\nfrom modules.shared import opts\nfrom modules.control.util import HWC3, resize_image\nfrom .nets.NNET import NNET\n\n\n# load model\ndef load_checkpoint(fpath, model):\n    ckpt = torch.load(fpath, map_location='cpu')['model']\n\n    load_dict = {}\n    for k, v in ckpt.items():\n        if k.startswith('module.'):\n            k_ = k.replace('module.', '')\n            load_dict[k_] = v\n        else:\n            load_dict[k] = v\n    model.load_state_dict(load_dict)\n    return model\n\nclass NormalBaeDetector:\n    def __init__(self, model):\n        self.model = model\n        self.norm = transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])\n\n    @classmethod\n    def from_pretrained(cls, pretrained_model_or_path, filename=None, cache_dir=None, local_files_only=False):\n        filename = filename or \"scannet.pt\"\n        if os.path.isdir(pretrained_model_or_path):\n            model_path = os.path.join(pretrained_model_or_path, filename)\n        else:\n            model_path = hf_hub_download(pretrained_model_or_path, filename, cache_dir=cache_dir, local_files_only=local_files_only)\n        args = types.SimpleNamespace()\n        args.mode = 'client'\n        args.architecture = 'BN'\n        args.pretrained = 'scannet'\n        args.sampling_ratio = 0.4\n        args.importance_ratio = 0.7\n        model = NNET(args)\n        model = load_checkpoint(model_path, model)\n        model.eval()\n        return cls(model)\n\n    def to(self, device):\n        self.model.to(device)\n        return self\n\n\n    def __call__(self, input_image, detect_resolution=512, image_resolution=512, output_type=\"pil\", **kwargs):\n        self.model.to(devices.device)\n        device = next(iter(self.model.parameters())).device\n        if not isinstance(input_image, np.ndarray):\n            input_image = np.array(input_image, dtype=np.uint8)\n\n        input_image = HWC3(input_image)\n        input_image = resize_image(input_image, detect_resolution)\n\n        assert input_image.ndim == 3\n        image_normal = input_image\n        image_normal = torch.from_numpy(image_normal).float().to(device)\n        image_normal = image_normal / 255.0\n        image_normal = rearrange(image_normal, 'h w c -> 1 c h w')\n        image_normal = self.norm(image_normal)\n\n        normal = self.model(image_normal)\n        normal = normal[0][-1][:, :3]\n        # d = torch.sum(normal ** 2.0, dim=1, keepdim=True) ** 0.5\n        # d = torch.maximum(d, torch.ones_like(d) * 1e-5)\n        # normal /= d\n        normal = ((normal + 1) * 0.5).clip(0, 1)\n        normal = rearrange(normal[0], 'c h w -> h w c').cpu().numpy()\n        normal_image = (normal * 255.0).clip(0, 255).astype(np.uint8)\n        detected_map = normal_image\n        detected_map = HWC3(detected_map)\n        img = resize_image(input_image, image_resolution)\n        H, W, _C = img.shape\n        detected_map = cv2.resize(detected_map, (W, H), interpolation=cv2.INTER_LINEAR)\n        if output_type == \"pil\":\n            detected_map = Image.fromarray(detected_map)\n        if opts.control_move_processor:\n            self.model.to('cpu')\n        return detected_map\n"
  },
  {
    "path": "modules/control/proc/normalbae/nets/NNET.py",
    "content": "import torch.nn as nn\nfrom .submodules.encoder import Encoder\nfrom .submodules.decoder import Decoder\n\n\nclass NNET(nn.Module):\n    def __init__(self, args):\n        super(NNET, self).__init__()\n        self.encoder = Encoder()\n        self.decoder = Decoder(args)\n\n    def get_1x_lr_params(self):  # lr/10 learning rate\n        return self.encoder.parameters()\n\n    def get_10x_lr_params(self):  # lr learning rate\n        return self.decoder.parameters()\n\n    def forward(self, img, **kwargs):\n        return self.decoder(self.encoder(img), **kwargs)\n"
  },
  {
    "path": "modules/control/proc/normalbae/nets/__init__.py",
    "content": ""
  },
  {
    "path": "modules/control/proc/normalbae/nets/baseline.py",
    "content": "import torch\nimport torch.nn as nn\nimport torch.nn.functional as F\n\nfrom .submodules.submodules import UpSampleBN, norm_normalize\n\n\n# This is the baseline encoder-decoder we used in the ablation study\nclass NNET(nn.Module):\n    def __init__(self, args=None):\n        super(NNET, self).__init__()\n        self.encoder = Encoder()\n        self.decoder = Decoder(num_classes=4)\n\n    def forward(self, x, **kwargs):\n        out = self.decoder(self.encoder(x), **kwargs)\n\n        # Bilinearly upsample the output to match the input resolution\n        up_out = F.interpolate(out, size=[x.size(2), x.size(3)], mode='bilinear', align_corners=False)\n\n        # L2-normalize the first three channels / ensure positive value for concentration parameters (kappa)\n        up_out = norm_normalize(up_out)\n        return up_out\n\n    def get_1x_lr_params(self):  # lr/10 learning rate\n        return self.encoder.parameters()\n\n    def get_10x_lr_params(self):  # lr learning rate\n        modules = [self.decoder]\n        for m in modules:\n            yield from m.parameters()\n\n\n# Encoder\nclass Encoder(nn.Module):\n    def __init__(self):\n        super(Encoder, self).__init__()\n\n        basemodel_name = 'tf_efficientnet_b5_ap'\n        basemodel = torch.hub.load('rwightman/gen-efficientnet-pytorch', basemodel_name, pretrained=True)\n\n        # Remove last layer\n        basemodel.global_pool = nn.Identity()\n        basemodel.classifier = nn.Identity()\n\n        self.original_model = basemodel\n\n    def forward(self, x):\n        features = [x]\n        for k, v in self.original_model._modules.items():\n            if (k == 'blocks'):\n                for _ki, vi in v._modules.items():\n                    features.append(vi(features[-1]))\n            else:\n                features.append(v(features[-1]))\n        return features\n\n\n# Decoder (no pixel-wise MLP, no uncertainty-guided sampling)\nclass Decoder(nn.Module):\n    def __init__(self, num_classes=4):\n        super(Decoder, self).__init__()\n        self.conv2 = nn.Conv2d(2048, 2048, kernel_size=1, stride=1, padding=0)\n        self.up1 = UpSampleBN(skip_input=2048 + 176, output_features=1024)\n        self.up2 = UpSampleBN(skip_input=1024 + 64, output_features=512)\n        self.up3 = UpSampleBN(skip_input=512 + 40, output_features=256)\n        self.up4 = UpSampleBN(skip_input=256 + 24, output_features=128)\n        self.conv3 = nn.Conv2d(128, num_classes, kernel_size=3, stride=1, padding=1)\n\n    def forward(self, features):\n        x_block0, x_block1, x_block2, x_block3, x_block4 = features[4], features[5], features[6], features[8], features[11]\n        x_d0 = self.conv2(x_block4)\n        x_d1 = self.up1(x_d0, x_block3)\n        x_d2 = self.up2(x_d1, x_block2)\n        x_d3 = self.up3(x_d2, x_block1)\n        x_d4 = self.up4(x_d3, x_block0)\n        out = self.conv3(x_d4)\n        return out\n"
  },
  {
    "path": "modules/control/proc/normalbae/nets/submodules/__init__.py",
    "content": ""
  },
  {
    "path": "modules/control/proc/normalbae/nets/submodules/decoder.py",
    "content": "import torch\nimport torch.nn as nn\nimport torch.nn.functional as F\nfrom .submodules import UpSampleBN, UpSampleGN, norm_normalize, sample_points\n\n\nclass Decoder(nn.Module):\n    def __init__(self, args):\n        super(Decoder, self).__init__()\n\n        # hyper-parameter for sampling\n        self.sampling_ratio = args.sampling_ratio\n        self.importance_ratio = args.importance_ratio\n\n        # feature-map\n        self.conv2 = nn.Conv2d(2048, 2048, kernel_size=1, stride=1, padding=0)\n        if args.architecture == 'BN':\n            self.up1 = UpSampleBN(skip_input=2048 + 176, output_features=1024)\n            self.up2 = UpSampleBN(skip_input=1024 + 64, output_features=512)\n            self.up3 = UpSampleBN(skip_input=512 + 40, output_features=256)\n            self.up4 = UpSampleBN(skip_input=256 + 24, output_features=128)\n\n        elif args.architecture == 'GN':\n            self.up1 = UpSampleGN(skip_input=2048 + 176, output_features=1024)\n            self.up2 = UpSampleGN(skip_input=1024 + 64, output_features=512)\n            self.up3 = UpSampleGN(skip_input=512 + 40, output_features=256)\n            self.up4 = UpSampleGN(skip_input=256 + 24, output_features=128)\n\n        else:\n            raise Exception('invalid architecture')\n\n        # produces 1/8 res output\n        self.out_conv_res8 = nn.Conv2d(512, 4, kernel_size=3, stride=1, padding=1)\n\n        # produces 1/4 res output\n        self.out_conv_res4 = nn.Sequential(\n            nn.Conv1d(512 + 4, 128, kernel_size=1), nn.ReLU(),\n            nn.Conv1d(128, 128, kernel_size=1), nn.ReLU(),\n            nn.Conv1d(128, 128, kernel_size=1), nn.ReLU(),\n            nn.Conv1d(128, 4, kernel_size=1),\n        )\n\n        # produces 1/2 res output\n        self.out_conv_res2 = nn.Sequential(\n            nn.Conv1d(256 + 4, 128, kernel_size=1), nn.ReLU(),\n            nn.Conv1d(128, 128, kernel_size=1), nn.ReLU(),\n            nn.Conv1d(128, 128, kernel_size=1), nn.ReLU(),\n            nn.Conv1d(128, 4, kernel_size=1),\n        )\n\n        # produces 1/1 res output\n        self.out_conv_res1 = nn.Sequential(\n            nn.Conv1d(128 + 4, 128, kernel_size=1), nn.ReLU(),\n            nn.Conv1d(128, 128, kernel_size=1), nn.ReLU(),\n            nn.Conv1d(128, 128, kernel_size=1), nn.ReLU(),\n            nn.Conv1d(128, 4, kernel_size=1),\n        )\n\n    def forward(self, features, gt_norm_mask=None, mode='test'):\n        x_block0, x_block1, x_block2, x_block3, x_block4 = features[4], features[5], features[6], features[8], features[11]\n\n        # generate feature-map\n\n        x_d0 = self.conv2(x_block4)                     # x_d0 : [2, 2048, 15, 20]      1/32 res\n        x_d1 = self.up1(x_d0, x_block3)                 # x_d1 : [2, 1024, 30, 40]      1/16 res\n        x_d2 = self.up2(x_d1, x_block2)                 # x_d2 : [2, 512, 60, 80]       1/8 res\n        x_d3 = self.up3(x_d2, x_block1)                 # x_d3: [2, 256, 120, 160]      1/4 res\n        x_d4 = self.up4(x_d3, x_block0)                 # x_d4: [2, 128, 240, 320]      1/2 res\n\n        # 1/8 res output\n        out_res8 = self.out_conv_res8(x_d2)             # out_res8: [2, 4, 60, 80]      1/8 res output\n        out_res8 = norm_normalize(out_res8)             # out_res8: [2, 4, 60, 80]      1/8 res output\n\n        ################################################################################################################\n        # out_res4\n        ################################################################################################################\n\n        if mode == 'train':\n            # upsampling ... out_res8: [2, 4, 60, 80] -> out_res8_res4: [2, 4, 120, 160]\n            out_res8_res4 = F.interpolate(out_res8, scale_factor=2, mode='bilinear', align_corners=True)\n            B, _, H, W = out_res8_res4.shape\n\n            # samples: [B, 1, N, 2]\n            point_coords_res4, rows_int, cols_int = sample_points(out_res8_res4.detach(), gt_norm_mask,\n                                                                  sampling_ratio=self.sampling_ratio,\n                                                                  beta=self.importance_ratio)\n\n            # output (needed for evaluation / visualization)\n            out_res4 = out_res8_res4\n\n            # grid_sample feature-map\n            feat_res4 = F.grid_sample(x_d2, point_coords_res4, mode='bilinear', align_corners=True)  # (B, 512, 1, N)\n            init_pred = F.grid_sample(out_res8, point_coords_res4, mode='bilinear', align_corners=True)  # (B, 4, 1, N)\n            feat_res4 = torch.cat([feat_res4, init_pred], dim=1)  # (B, 512+4, 1, N)\n\n            # prediction (needed to compute loss)\n            samples_pred_res4 = self.out_conv_res4(feat_res4[:, :, 0, :])  # (B, 4, N)\n            samples_pred_res4 = norm_normalize(samples_pred_res4)  # (B, 4, N) - normalized\n\n            for i in range(B):\n                out_res4[i, :, rows_int[i, :], cols_int[i, :]] = samples_pred_res4[i, :, :]\n\n        else:\n            # grid_sample feature-map\n            feat_map = F.interpolate(x_d2, scale_factor=2, mode='bilinear', align_corners=True)\n            init_pred = F.interpolate(out_res8, scale_factor=2, mode='bilinear', align_corners=True)\n            feat_map = torch.cat([feat_map, init_pred], dim=1)  # (B, 512+4, H, W)\n            B, _, H, W = feat_map.shape\n\n            # try all pixels\n            out_res4 = self.out_conv_res4(feat_map.view(B, 512 + 4, -1))  # (B, 4, N)\n            out_res4 = norm_normalize(out_res4)  # (B, 4, N) - normalized\n            out_res4 = out_res4.view(B, 4, H, W)\n            samples_pred_res4 = point_coords_res4 = None\n\n        ################################################################################################################\n        # out_res2\n        ################################################################################################################\n\n        if mode == 'train':\n\n            # upsampling ... out_res4: [2, 4, 120, 160] -> out_res4_res2: [2, 4, 240, 320]\n            out_res4_res2 = F.interpolate(out_res4, scale_factor=2, mode='bilinear', align_corners=True)\n            B, _, H, W = out_res4_res2.shape\n\n            # samples: [B, 1, N, 2]\n            point_coords_res2, rows_int, cols_int = sample_points(out_res4_res2.detach(), gt_norm_mask,\n                                                                  sampling_ratio=self.sampling_ratio,\n                                                                  beta=self.importance_ratio)\n\n            # output (needed for evaluation / visualization)\n            out_res2 = out_res4_res2\n\n            # grid_sample feature-map\n            feat_res2 = F.grid_sample(x_d3, point_coords_res2, mode='bilinear', align_corners=True)  # (B, 256, 1, N)\n            init_pred = F.grid_sample(out_res4, point_coords_res2, mode='bilinear', align_corners=True)  # (B, 4, 1, N)\n            feat_res2 = torch.cat([feat_res2, init_pred], dim=1)  # (B, 256+4, 1, N)\n\n            # prediction (needed to compute loss)\n            samples_pred_res2 = self.out_conv_res2(feat_res2[:, :, 0, :])  # (B, 4, N)\n            samples_pred_res2 = norm_normalize(samples_pred_res2)  # (B, 4, N) - normalized\n\n            for i in range(B):\n                out_res2[i, :, rows_int[i, :], cols_int[i, :]] = samples_pred_res2[i, :, :]\n\n        else:\n            # grid_sample feature-map\n            feat_map = F.interpolate(x_d3, scale_factor=2, mode='bilinear', align_corners=True)\n            init_pred = F.interpolate(out_res4, scale_factor=2, mode='bilinear', align_corners=True)\n            feat_map = torch.cat([feat_map, init_pred], dim=1)  # (B, 512+4, H, W)\n            B, _, H, W = feat_map.shape\n\n            out_res2 = self.out_conv_res2(feat_map.view(B, 256 + 4, -1))  # (B, 4, N)\n            out_res2 = norm_normalize(out_res2)  # (B, 4, N) - normalized\n            out_res2 = out_res2.view(B, 4, H, W)\n            samples_pred_res2 = point_coords_res2 = None\n\n        ################################################################################################################\n        # out_res1\n        ################################################################################################################\n\n        if mode == 'train':\n            # upsampling ... out_res4: [2, 4, 120, 160] -> out_res4_res2: [2, 4, 240, 320]\n            out_res2_res1 = F.interpolate(out_res2, scale_factor=2, mode='bilinear', align_corners=True)\n            B, _, H, W = out_res2_res1.shape\n\n            # samples: [B, 1, N, 2]\n            point_coords_res1, rows_int, cols_int = sample_points(out_res2_res1.detach(), gt_norm_mask,\n                                                                  sampling_ratio=self.sampling_ratio,\n                                                                  beta=self.importance_ratio)\n\n            # output (needed for evaluation / visualization)\n            out_res1 = out_res2_res1\n\n            # grid_sample feature-map\n            feat_res1 = F.grid_sample(x_d4, point_coords_res1, mode='bilinear', align_corners=True)  # (B, 128, 1, N)\n            init_pred = F.grid_sample(out_res2, point_coords_res1, mode='bilinear', align_corners=True)  # (B, 4, 1, N)\n            feat_res1 = torch.cat([feat_res1, init_pred], dim=1)  # (B, 128+4, 1, N)\n\n            # prediction (needed to compute loss)\n            samples_pred_res1 = self.out_conv_res1(feat_res1[:, :, 0, :])  # (B, 4, N)\n            samples_pred_res1 = norm_normalize(samples_pred_res1)  # (B, 4, N) - normalized\n\n            for i in range(B):\n                out_res1[i, :, rows_int[i, :], cols_int[i, :]] = samples_pred_res1[i, :, :]\n\n        else:\n            # grid_sample feature-map\n            feat_map = F.interpolate(x_d4, scale_factor=2, mode='bilinear', align_corners=True)\n            init_pred = F.interpolate(out_res2, scale_factor=2, mode='bilinear', align_corners=True)\n            feat_map = torch.cat([feat_map, init_pred], dim=1)  # (B, 512+4, H, W)\n            B, _, H, W = feat_map.shape\n\n            out_res1 = self.out_conv_res1(feat_map.view(B, 128 + 4, -1))  # (B, 4, N)\n            out_res1 = norm_normalize(out_res1)  # (B, 4, N) - normalized\n            out_res1 = out_res1.view(B, 4, H, W)\n            samples_pred_res1 = point_coords_res1 = None\n\n        return [out_res8, out_res4, out_res2, out_res1], \\\n               [out_res8, samples_pred_res4, samples_pred_res2, samples_pred_res1], \\\n               [None, point_coords_res4, point_coords_res2, point_coords_res1]\n"
  },
  {
    "path": "modules/control/proc/normalbae/nets/submodules/efficientnet_repo/BENCHMARK.md",
    "content": "# Model Performance Benchmarks\n\nAll benchmarks run as per:\n\n```\npython onnx_export.py --model mobilenetv3_100 ./mobilenetv3_100.onnx\npython onnx_optimize.py ./mobilenetv3_100.onnx --output mobilenetv3_100-opt.onnx\npython onnx_to_caffe.py ./mobilenetv3_100.onnx --c2-prefix mobilenetv3\npython onnx_to_caffe.py ./mobilenetv3_100-opt.onnx --c2-prefix mobilenetv3-opt\npython caffe2_benchmark.py --c2-init ./mobilenetv3.init.pb --c2-predict ./mobilenetv3.predict.pb\npython caffe2_benchmark.py --c2-init ./mobilenetv3-opt.init.pb --c2-predict ./mobilenetv3-opt.predict.pb\n```\n\n## EfficientNet-B0\n\n### Unoptimized\n```\nMain run finished. Milliseconds per iter: 49.2862. Iters per second: 20.2897\nTime per operator type:\n        29.7378 ms.    60.5145%. Conv\n        12.1785 ms.    24.7824%. Sigmoid\n        3.62811 ms.    7.38297%. SpatialBN\n        2.98444 ms.    6.07314%. Mul\n       0.326902 ms.   0.665225%. AveragePool\n       0.197317 ms.   0.401528%. FC\n      0.0852877 ms.   0.173555%. Add\n      0.0032607 ms. 0.00663532%. Squeeze\n        49.1416 ms in Total\nFLOP per operator type:\n        0.76907 GFLOP.    95.2696%. Conv\n      0.0269508 GFLOP.    3.33857%. SpatialBN\n     0.00846444 GFLOP.    1.04855%. Mul\n       0.002561 GFLOP.   0.317248%. FC\n    0.000210112 GFLOP.  0.0260279%. Add\n       0.807256 GFLOP in Total\nFeature Memory Read per operator type:\n        58.5253 MB.    43.0891%. Mul\n        43.2015 MB.     31.807%. Conv\n        27.2869 MB.    20.0899%. SpatialBN\n        5.12912 MB.    3.77631%. FC\n         1.6809 MB.    1.23756%. Add\n        135.824 MB in Total\nFeature Memory Written per operator type:\n        33.8578 MB.    38.1965%. Mul\n        26.9881 MB.    30.4465%. Conv\n        26.9508 MB.    30.4044%. SpatialBN\n       0.840448 MB.   0.948147%. Add\n          0.004 MB. 0.00451258%. FC\n        88.6412 MB in Total\nParameter Memory per operator type:\n        15.8248 MB.    74.9391%. Conv\n          5.124 MB.     24.265%. FC\n       0.168064 MB.   0.795877%. SpatialBN\n              0 MB.          0%. Add\n              0 MB.          0%. Mul\n        21.1168 MB in Total\n```\n### Optimized\n```\nMain run finished. Milliseconds per iter: 46.0838. Iters per second: 21.6996\nTime per operator type:\n         29.776 ms.     65.002%. Conv\n        12.2803 ms.    26.8084%. Sigmoid\n        3.15073 ms.    6.87815%. Mul\n       0.328651 ms.   0.717456%. AveragePool\n       0.186237 ms.   0.406563%. FC\n      0.0832429 ms.   0.181722%. Add\n      0.0026184 ms. 0.00571606%. Squeeze\n        45.8078 ms in Total\nFLOP per operator type:\n        0.76907 GFLOP.    98.5601%. Conv\n     0.00846444 GFLOP.    1.08476%. Mul\n       0.002561 GFLOP.   0.328205%. FC\n    0.000210112 GFLOP.  0.0269269%. Add\n       0.780305 GFLOP in Total\nFeature Memory Read per operator type:\n        58.5253 MB.    53.8803%. Mul\n        43.2855 MB.    39.8501%. Conv\n        5.12912 MB.    4.72204%. FC\n         1.6809 MB.    1.54749%. Add\n        108.621 MB in Total\nFeature Memory Written per operator type:\n        33.8578 MB.    54.8834%. Mul\n        26.9881 MB.    43.7477%. Conv\n       0.840448 MB.    1.36237%. Add\n          0.004 MB. 0.00648399%. FC\n        61.6904 MB in Total\nParameter Memory per operator type:\n        15.8248 MB.    75.5403%. Conv\n          5.124 MB.    24.4597%. FC\n              0 MB.          0%. Add\n              0 MB.          0%. Mul\n        20.9488 MB in Total\n```\n\n## EfficientNet-B1\n### Optimized\n```\nMain run finished. Milliseconds per iter: 71.8102. Iters per second: 13.9256\nTime per operator type:\n        45.7915 ms.    66.3206%. Conv\n        17.8718 ms.    25.8841%. Sigmoid\n        4.44132 ms.    6.43244%. Mul\n        0.51001 ms.   0.738658%. AveragePool\n       0.233283 ms.   0.337868%. Add\n       0.194986 ms.   0.282402%. FC\n     0.00268255 ms. 0.00388519%. Squeeze\n        69.0456 ms in Total\nFLOP per operator type:\n        1.37105 GFLOP.    98.7673%. Conv\n      0.0138759 GFLOP.    0.99959%. Mul\n       0.002561 GFLOP.   0.184489%. FC\n    0.000674432 GFLOP.  0.0485847%. Add\n        1.38816 GFLOP in Total\nFeature Memory Read per operator type:\n         94.624 MB.    54.0789%. Mul\n        69.8255 MB.    39.9062%. Conv\n        5.39546 MB.    3.08357%. Add\n        5.12912 MB.    2.93136%. FC\n        174.974 MB in Total\nFeature Memory Written per operator type:\n        55.5035 MB.     54.555%. Mul\n        43.5333 MB.    42.7894%. Conv\n        2.69773 MB.    2.65163%. Add\n          0.004 MB. 0.00393165%. FC\n        101.739 MB in Total\nParameter Memory per operator type:\n        25.7479 MB.    83.4024%. Conv\n          5.124 MB.    16.5976%. FC\n              0 MB.          0%. Add\n              0 MB.          0%. Mul\n        30.8719 MB in Total\n```\n\n## EfficientNet-B2\n### Optimized\n```\nMain run finished. Milliseconds per iter: 92.28. Iters per second: 10.8366\nTime per operator type:\n        61.4627 ms.    67.5845%. Conv\n        22.7458 ms.    25.0113%. Sigmoid\n        5.59931 ms.    6.15701%. Mul\n       0.642567 ms.   0.706568%. AveragePool\n       0.272795 ms.   0.299965%. Add\n       0.216178 ms.   0.237709%. FC\n     0.00268895 ms. 0.00295677%. Squeeze\n         90.942 ms in Total\nFLOP per operator type:\n        1.98431 GFLOP.    98.9343%. Conv\n      0.0177039 GFLOP.   0.882686%. Mul\n       0.002817 GFLOP.   0.140451%. FC\n    0.000853984 GFLOP.  0.0425782%. Add\n        2.00568 GFLOP in Total\nFeature Memory Read per operator type:\n        120.609 MB.    54.9637%. Mul\n        86.3512 MB.    39.3519%. Conv\n        6.83187 MB.    3.11341%. Add\n        5.64163 MB.      2.571%. FC\n        219.433 MB in Total\nFeature Memory Written per operator type:\n        70.8155 MB.    54.6573%. Mul\n        55.3273 MB.    42.7031%. Conv\n        3.41594 MB.    2.63651%. Add\n          0.004 MB. 0.00308731%. FC\n        129.563 MB in Total\nParameter Memory per operator type:\n        30.4721 MB.    84.3913%. Conv\n          5.636 MB.    15.6087%. FC\n              0 MB.          0%. Add\n              0 MB.          0%. Mul\n        36.1081 MB in Total\n```\n\n## MixNet-M\n### Optimized\n```\nMain run finished. Milliseconds per iter: 63.1122. Iters per second: 15.8448\nTime per operator type:\n        48.1139 ms.    75.2052%. Conv\n         7.1341 ms.    11.1511%. Sigmoid\n        2.63706 ms.    4.12189%. SpatialBN\n        1.73186 ms.    2.70701%. Mul\n        1.38707 ms.    2.16809%. Split\n        1.29322 ms.    2.02139%. Concat\n        1.00093 ms.    1.56452%. Relu\n       0.235309 ms.   0.367803%. Add\n       0.221579 ms.   0.346343%. FC\n       0.219315 ms.   0.342803%. AveragePool\n     0.00250145 ms. 0.00390993%. Squeeze\n        63.9768 ms in Total\nFLOP per operator type:\n       0.675273 GFLOP.    95.5827%. Conv\n      0.0221072 GFLOP.    3.12921%. SpatialBN\n     0.00538445 GFLOP.   0.762152%. Mul\n       0.003073 GFLOP.   0.434973%. FC\n    0.000642488 GFLOP.  0.0909421%. Add\n              0 GFLOP.          0%. Concat\n              0 GFLOP.          0%. Relu\n        0.70648 GFLOP in Total\nFeature Memory Read per operator type:\n        46.8424 MB.     30.502%. Conv\n        36.8626 MB.    24.0036%. Mul\n        22.3152 MB.    14.5309%. SpatialBN\n        22.1074 MB.    14.3955%. Concat\n        14.1496 MB.    9.21372%. Relu\n        6.15414 MB.    4.00735%. FC\n         5.1399 MB.    3.34692%. Add\n        153.571 MB in Total\nFeature Memory Written per operator type:\n        32.7672 MB.    28.4331%. Conv\n        22.1072 MB.    19.1831%. Concat\n        22.1072 MB.    19.1831%. SpatialBN\n        21.5378 MB.     18.689%. Mul\n        14.1496 MB.    12.2781%. Relu\n        2.56995 MB.    2.23003%. Add\n          0.004 MB. 0.00347092%. FC\n        115.243 MB in Total\nParameter Memory per operator type:\n        13.7059 MB.     68.674%. Conv\n          6.148 MB.    30.8049%. FC\n          0.104 MB.   0.521097%. SpatialBN\n              0 MB.          0%. Add\n              0 MB.          0%. Concat\n              0 MB.          0%. Mul\n              0 MB.          0%. Relu\n        19.9579 MB in Total\n```\n\n## TF MobileNet-V3 Large 1.0\n\n### Optimized\n```\nMain run finished. Milliseconds per iter: 22.0495. Iters per second: 45.3525\nTime per operator type:\n         17.437 ms.    80.0087%. Conv\n        1.27662 ms.     5.8577%. Add\n        1.12759 ms.    5.17387%. Div\n       0.701155 ms.    3.21721%. Mul\n       0.562654 ms.    2.58171%. Relu\n       0.431144 ms.    1.97828%. Clip\n       0.156902 ms.   0.719936%. FC\n      0.0996858 ms.   0.457402%. AveragePool\n     0.00112455 ms. 0.00515993%. Flatten\n        21.7939 ms in Total\nFLOP per operator type:\n        0.43062 GFLOP.    98.1484%. Conv\n       0.002561 GFLOP.   0.583713%. FC\n     0.00210867 GFLOP.   0.480616%. Mul\n     0.00193868 GFLOP.   0.441871%. Add\n     0.00151532 GFLOP.   0.345377%. Div\n              0 GFLOP.          0%. Relu\n       0.438743 GFLOP in Total\nFeature Memory Read per operator type:\n        34.7967 MB.    43.9391%. Conv\n         14.496 MB.    18.3046%. Mul\n        9.44828 MB.    11.9307%. Add\n        9.26157 MB.    11.6949%. Relu\n         6.0614 MB.    7.65395%. Div\n        5.12912 MB.    6.47673%. FC\n         79.193 MB in Total\nFeature Memory Written per operator type:\n        17.6247 MB.    35.8656%. Conv\n        9.26157 MB.     18.847%. Relu\n        8.43469 MB.    17.1643%. Mul\n        7.75472 MB.    15.7806%. Add\n        6.06128 MB.    12.3345%. Div\n          0.004 MB. 0.00813985%. FC\n        49.1409 MB in Total\nParameter Memory per operator type:\n        16.6851 MB.    76.5052%. Conv\n          5.124 MB.    23.4948%. FC\n              0 MB.          0%. Add\n              0 MB.          0%. Div\n              0 MB.          0%. Mul\n              0 MB.          0%. Relu\n        21.8091 MB in Total\n```\n\n## MobileNet-V3 (RW)\n\n### Unoptimized\n```\nMain run finished. Milliseconds per iter: 24.8316. Iters per second: 40.2712\nTime per operator type:\n        15.9266 ms.    69.2624%. Conv\n        2.36551 ms.    10.2873%. SpatialBN\n        1.39102 ms.    6.04936%. Add\n        1.30327 ms.    5.66773%. Div\n       0.737014 ms.    3.20517%. Mul\n       0.639697 ms.    2.78195%. Relu\n       0.375681 ms.    1.63378%. Clip\n       0.153126 ms.   0.665921%. FC\n      0.0993787 ms.   0.432184%. AveragePool\n      0.0032632 ms.  0.0141912%. Squeeze\n        22.9946 ms in Total\nFLOP per operator type:\n       0.430616 GFLOP.    94.4041%. Conv\n      0.0175992 GFLOP.    3.85829%. SpatialBN\n       0.002561 GFLOP.   0.561449%. FC\n     0.00210961 GFLOP.    0.46249%. Mul\n     0.00173891 GFLOP.   0.381223%. Add\n     0.00151626 GFLOP.    0.33241%. Div\n              0 GFLOP.          0%. Relu\n       0.456141 GFLOP in Total\nFeature Memory Read per operator type:\n        34.7354 MB.    36.4363%. Conv\n        17.7944 MB.    18.6658%. SpatialBN\n        14.5035 MB.    15.2137%. Mul\n        9.25778 MB.    9.71113%. Relu\n        7.84641 MB.    8.23064%. Add\n        6.06516 MB.    6.36216%. Div\n        5.12912 MB.    5.38029%. FC\n        95.3317 MB in Total\nFeature Memory Written per operator type:\n        17.6246 MB.    26.7264%. Conv\n        17.5992 MB.    26.6878%. SpatialBN\n        9.25778 MB.    14.0387%. Relu\n        8.43843 MB.    12.7962%. Mul\n        6.95565 MB.    10.5477%. Add\n        6.06502 MB.    9.19713%. Div\n          0.004 MB. 0.00606568%. FC\n        65.9447 MB in Total\nParameter Memory per operator type:\n        16.6778 MB.    76.1564%. Conv\n          5.124 MB.    23.3979%. FC\n         0.0976 MB.   0.445674%. SpatialBN\n              0 MB.          0%. Add\n              0 MB.          0%. Div\n              0 MB.          0%. Mul\n              0 MB.          0%. Relu\n        21.8994 MB in Total\n\n```\n### Optimized\n\n```\nMain run finished. Milliseconds per iter: 22.0981. Iters per second: 45.2527\nTime per operator type:\n         17.146 ms.    78.8965%. Conv\n        1.38453 ms.    6.37084%. Add\n        1.30991 ms.    6.02749%. Div\n       0.685417 ms.    3.15391%. Mul\n       0.532589 ms.    2.45068%. Relu\n       0.418263 ms.    1.92461%. Clip\n        0.15128 ms.   0.696106%. FC\n       0.102065 ms.   0.469648%. AveragePool\n      0.0022143 ms.   0.010189%. Squeeze\n        21.7323 ms in Total\nFLOP per operator type:\n       0.430616 GFLOP.    98.1927%. Conv\n       0.002561 GFLOP.   0.583981%. FC\n     0.00210961 GFLOP.   0.481051%. Mul\n     0.00173891 GFLOP.   0.396522%. Add\n     0.00151626 GFLOP.    0.34575%. Div\n              0 GFLOP.          0%. Relu\n       0.438542 GFLOP in Total\nFeature Memory Read per operator type:\n        34.7842 MB.     44.833%. Conv\n        14.5035 MB.    18.6934%. Mul\n        9.25778 MB.    11.9323%. Relu\n        7.84641 MB.    10.1132%. Add\n        6.06516 MB.    7.81733%. Div\n        5.12912 MB.    6.61087%. FC\n        77.5861 MB in Total\nFeature Memory Written per operator type:\n        17.6246 MB.    36.4556%. Conv\n        9.25778 MB.    19.1492%. Relu\n        8.43843 MB.    17.4544%. Mul\n        6.95565 MB.    14.3874%. Add\n        6.06502 MB.    12.5452%. Div\n          0.004 MB. 0.00827378%. FC\n        48.3455 MB in Total\nParameter Memory per operator type:\n        16.6778 MB.    76.4973%. Conv\n          5.124 MB.    23.5027%. FC\n              0 MB.          0%. Add\n              0 MB.          0%. Div\n              0 MB.          0%. Mul\n              0 MB.          0%. Relu\n        21.8018 MB in Total\n\n```\n\n## MnasNet-A1\n\n### Unoptimized\n```\nMain run finished. Milliseconds per iter: 30.0892. Iters per second: 33.2345\nTime per operator type:\n        24.4656 ms.    79.0905%. Conv\n        4.14958 ms.    13.4144%. SpatialBN\n        1.60598 ms.    5.19169%. Relu\n       0.295219 ms.    0.95436%. Mul\n       0.187609 ms.   0.606486%. FC\n       0.120556 ms.   0.389724%. AveragePool\n        0.09036 ms.   0.292109%. Add\n       0.015727 ms.   0.050841%. Sigmoid\n     0.00306205 ms. 0.00989875%. Squeeze\n        30.9337 ms in Total\nFLOP per operator type:\n       0.620598 GFLOP.    95.6434%. Conv\n      0.0248873 GFLOP.     3.8355%. SpatialBN\n       0.002561 GFLOP.   0.394688%. FC\n    0.000597408 GFLOP.  0.0920695%. Mul\n    0.000222656 GFLOP.  0.0343146%. Add\n              0 GFLOP.          0%. Relu\n       0.648867 GFLOP in Total\nFeature Memory Read per operator type:\n        35.5457 MB.    38.4109%. Conv\n        25.1552 MB.    27.1829%. SpatialBN\n        22.5235 MB.     24.339%. Relu\n        5.12912 MB.    5.54256%. FC\n        2.40586 MB.    2.59978%. Mul\n        1.78125 MB.    1.92483%. Add\n        92.5406 MB in Total\nFeature Memory Written per operator type:\n        24.9042 MB.    32.9424%. Conv\n        24.8873 MB.      32.92%. SpatialBN\n        22.5235 MB.    29.7932%. Relu\n        2.38963 MB.    3.16092%. Mul\n       0.890624 MB.    1.17809%. Add\n          0.004 MB. 0.00529106%. FC\n        75.5993 MB in Total\nParameter Memory per operator type:\n        10.2732 MB.    66.1459%. Conv\n          5.124 MB.    32.9917%. FC\n       0.133952 MB.    0.86247%. SpatialBN\n              0 MB.          0%. Add\n              0 MB.          0%. Mul\n              0 MB.          0%. Relu\n        15.5312 MB in Total\n```\n\n### Optimized\n```\nMain run finished. Milliseconds per iter: 24.2367. Iters per second: 41.2597\nTime per operator type:\n        22.0547 ms.    91.1375%. Conv\n        1.49096 ms.    6.16116%. Relu\n       0.253417 ms.     1.0472%. Mul\n        0.18506 ms.    0.76473%. FC\n       0.112942 ms.   0.466717%. AveragePool\n       0.086769 ms.   0.358559%. Add\n      0.0127889 ms.  0.0528479%. Sigmoid\n      0.0027346 ms.  0.0113003%. Squeeze\n        24.1994 ms in Total\nFLOP per operator type:\n       0.620598 GFLOP.    99.4581%. Conv\n       0.002561 GFLOP.    0.41043%. FC\n    0.000597408 GFLOP.  0.0957417%. Mul\n    0.000222656 GFLOP.  0.0356832%. Add\n              0 GFLOP.          0%. Relu\n       0.623979 GFLOP in Total\nFeature Memory Read per operator type:\n        35.6127 MB.    52.7968%. Conv\n        22.5235 MB.    33.3917%. Relu\n        5.12912 MB.    7.60406%. FC\n        2.40586 MB.    3.56675%. Mul\n        1.78125 MB.    2.64075%. Add\n        67.4524 MB in Total\nFeature Memory Written per operator type:\n        24.9042 MB.    49.1092%. Conv\n        22.5235 MB.    44.4145%. Relu\n        2.38963 MB.    4.71216%. Mul\n       0.890624 MB.    1.75624%. Add\n          0.004 MB. 0.00788768%. FC\n         50.712 MB in Total\nParameter Memory per operator type:\n        10.2732 MB.    66.7213%. Conv\n          5.124 MB.    33.2787%. FC\n              0 MB.          0%. Add\n              0 MB.          0%. Mul\n              0 MB.          0%. Relu\n        15.3972 MB in Total\n```\n## MnasNet-B1\n\n### Unoptimized\n```\nMain run finished. Milliseconds per iter: 28.3109. Iters per second: 35.322\nTime per operator type:\n        29.1121 ms.    83.3081%. Conv\n        4.14959 ms.    11.8746%. SpatialBN\n        1.35823 ms.    3.88675%. Relu\n       0.186188 ms.   0.532802%. FC\n       0.116244 ms.   0.332647%. Add\n       0.018641 ms.  0.0533437%. AveragePool\n      0.0040904 ms.  0.0117052%. Squeeze\n        34.9451 ms in Total\nFLOP per operator type:\n       0.626272 GFLOP.    96.2088%. Conv\n      0.0218266 GFLOP.    3.35303%. SpatialBN\n       0.002561 GFLOP.   0.393424%. FC\n    0.000291648 GFLOP.  0.0448034%. Add\n              0 GFLOP.          0%. Relu\n       0.650951 GFLOP in Total\nFeature Memory Read per operator type:\n        34.4354 MB.    41.3788%. Conv\n        22.1299 MB.    26.5921%. SpatialBN\n        19.1923 MB.    23.0622%. Relu\n        5.12912 MB.    6.16333%. FC\n        2.33318 MB.    2.80364%. Add\n        83.2199 MB in Total\nFeature Memory Written per operator type:\n        21.8266 MB.    34.0955%. Conv\n        21.8266 MB.    34.0955%. SpatialBN\n        19.1923 MB.    29.9805%. Relu\n        1.16659 MB.    1.82234%. Add\n          0.004 MB. 0.00624844%. FC\n         64.016 MB in Total\nParameter Memory per operator type:\n        12.2576 MB.    69.9104%. Conv\n          5.124 MB.    29.2245%. FC\n        0.15168 MB.   0.865099%. SpatialBN\n              0 MB.          0%. Add\n              0 MB.          0%. Relu\n        17.5332 MB in Total\n```\n\n### Optimized\n```\nMain run finished. Milliseconds per iter: 26.6364. Iters per second: 37.5426\nTime per operator type:\n        24.9888 ms.    94.0962%. Conv\n        1.26147 ms.    4.75011%. Relu\n       0.176234 ms.   0.663619%. FC\n       0.113309 ms.   0.426672%. Add\n      0.0138708 ms.  0.0522311%. AveragePool\n     0.00295685 ms.  0.0111341%. Squeeze\n        26.5566 ms in Total\nFLOP per operator type:\n       0.626272 GFLOP.    99.5466%. Conv\n       0.002561 GFLOP.   0.407074%. FC\n    0.000291648 GFLOP.  0.0463578%. Add\n              0 GFLOP.          0%. Relu\n       0.629124 GFLOP in Total\nFeature Memory Read per operator type:\n        34.5112 MB.    56.4224%. Conv\n        19.1923 MB.    31.3775%. Relu\n        5.12912 MB.     8.3856%. FC\n        2.33318 MB.    3.81452%. Add\n        61.1658 MB in Total\nFeature Memory Written per operator type:\n        21.8266 MB.    51.7346%. Conv\n        19.1923 MB.    45.4908%. Relu\n        1.16659 MB.    2.76513%. Add\n          0.004 MB. 0.00948104%. FC\n        42.1895 MB in Total\nParameter Memory per operator type:\n        12.2576 MB.    70.5205%. Conv\n          5.124 MB.    29.4795%. FC\n              0 MB.          0%. Add\n              0 MB.          0%. Relu\n        17.3816 MB in Total\n```\n"
  },
  {
    "path": "modules/control/proc/normalbae/nets/submodules/efficientnet_repo/LICENSE",
    "content": "                                 Apache License\n                           Version 2.0, January 2004\n                        http://www.apache.org/licenses/\n\n   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n\n   1. Definitions.\n\n      \"License\" shall mean the terms and conditions for use, reproduction,\n      and distribution as defined by Sections 1 through 9 of this document.\n\n      \"Licensor\" shall mean the copyright owner or entity authorized by\n      the copyright owner that is granting the License.\n\n      \"Legal Entity\" shall mean the union of the acting entity and all\n      other entities that control, are controlled by, or are under common\n      control with that entity. For the purposes of this definition,\n      \"control\" means (i) the power, direct or indirect, to cause the\n      direction or management of such entity, whether by contract or\n      otherwise, or (ii) ownership of fifty percent (50%) or more of the\n      outstanding shares, or (iii) beneficial ownership of such entity.\n\n      \"You\" (or \"Your\") shall mean an individual or Legal Entity\n      exercising permissions granted by this License.\n\n      \"Source\" form shall mean the preferred form for making modifications,\n      including but not limited to software source code, documentation\n      source, and configuration files.\n\n      \"Object\" form shall mean any form resulting from mechanical\n      transformation or translation of a Source form, including but\n      not limited to compiled object code, generated documentation,\n      and conversions to other media types.\n\n      \"Work\" shall mean the work of authorship, whether in Source or\n      Object form, made available under the License, as indicated by a\n      copyright notice that is included in or attached to the work\n      (an example is provided in the Appendix below).\n\n      \"Derivative Works\" shall mean any work, whether in Source or Object\n      form, that is based on (or derived from) the Work and for which the\n      editorial revisions, annotations, elaborations, or other modifications\n      represent, as a whole, an original work of authorship. For the purposes\n      of this License, Derivative Works shall not include works that remain\n      separable from, or merely link (or bind by name) to the interfaces of,\n      the Work and Derivative Works thereof.\n\n      \"Contribution\" shall mean any work of authorship, including\n      the original version of the Work and any modifications or additions\n      to that Work or Derivative Works thereof, that is intentionally\n      submitted to Licensor for inclusion in the Work by the copyright owner\n      or by an individual or Legal Entity authorized to submit on behalf of\n      the copyright owner. For the purposes of this definition, \"submitted\"\n      means any form of electronic, verbal, or written communication sent\n      to the Licensor or its representatives, including but not limited to\n      communication on electronic mailing lists, source code control systems,\n      and issue tracking systems that are managed by, or on behalf of, the\n      Licensor for the purpose of discussing and improving the Work, but\n      excluding communication that is conspicuously marked or otherwise\n      designated in writing by the copyright owner as \"Not a Contribution.\"\n\n      \"Contributor\" shall mean Licensor and any individual or Legal Entity\n      on behalf of whom a Contribution has been received by Licensor and\n      subsequently incorporated within the Work.\n\n   2. Grant of Copyright License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      copyright license to reproduce, prepare Derivative Works of,\n      publicly display, publicly perform, sublicense, and distribute the\n      Work and such Derivative Works in Source or Object form.\n\n   3. Grant of Patent License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      (except as stated in this section) patent license to make, have made,\n      use, offer to sell, sell, import, and otherwise transfer the Work,\n      where such license applies only to those patent claims licensable\n      by such Contributor that are necessarily infringed by their\n      Contribution(s) alone or by combination of their Contribution(s)\n      with the Work to which such Contribution(s) was submitted. If You\n      institute patent litigation against any entity (including a\n      cross-claim or counterclaim in a lawsuit) alleging that the Work\n      or a Contribution incorporated within the Work constitutes direct\n      or contributory patent infringement, then any patent licenses\n      granted to You under this License for that Work shall terminate\n      as of the date such litigation is filed.\n\n   4. Redistribution. You may reproduce and distribute copies of the\n      Work or Derivative Works thereof in any medium, with or without\n      modifications, and in Source or Object form, provided that You\n      meet the following conditions:\n\n      (a) You must give any other recipients of the Work or\n          Derivative Works a copy of this License; and\n\n      (b) You must cause any modified files to carry prominent notices\n          stating that You changed the files; and\n\n      (c) You must retain, in the Source form of any Derivative Works\n          that You distribute, all copyright, patent, trademark, and\n          attribution notices from the Source form of the Work,\n          excluding those notices that do not pertain to any part of\n          the Derivative Works; and\n\n      (d) If the Work includes a \"NOTICE\" text file as part of its\n          distribution, then any Derivative Works that You distribute must\n          include a readable copy of the attribution notices contained\n          within such NOTICE file, excluding those notices that do not\n          pertain to any part of the Derivative Works, in at least one\n          of the following places: within a NOTICE text file distributed\n          as part of the Derivative Works; within the Source form or\n          documentation, if provided along with the Derivative Works; or,\n          within a display generated by the Derivative Works, if and\n          wherever such third-party notices normally appear. The contents\n          of the NOTICE file are for informational purposes only and\n          do not modify the License. You may add Your own attribution\n          notices within Derivative Works that You distribute, alongside\n          or as an addendum to the NOTICE text from the Work, provided\n          that such additional attribution notices cannot be construed\n          as modifying the License.\n\n      You may add Your own copyright statement to Your modifications and\n      may provide additional or different license terms and conditions\n      for use, reproduction, or distribution of Your modifications, or\n      for any such Derivative Works as a whole, provided Your use,\n      reproduction, and distribution of the Work otherwise complies with\n      the conditions stated in this License.\n\n   5. Submission of Contributions. Unless You explicitly state otherwise,\n      any Contribution intentionally submitted for inclusion in the Work\n      by You to the Licensor shall be under the terms and conditions of\n      this License, without any additional terms or conditions.\n      Notwithstanding the above, nothing herein shall supersede or modify\n      the terms of any separate license agreement you may have executed\n      with Licensor regarding such Contributions.\n\n   6. Trademarks. This License does not grant permission to use the trade\n      names, trademarks, service marks, or product names of the Licensor,\n      except as required for reasonable and customary use in describing the\n      origin of the Work and reproducing the content of the NOTICE file.\n\n   7. Disclaimer of Warranty. Unless required by applicable law or\n      agreed to in writing, Licensor provides the Work (and each\n      Contributor provides its Contributions) on an \"AS IS\" BASIS,\n      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\n      implied, including, without limitation, any warranties or conditions\n      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\n      PARTICULAR PURPOSE. You are solely responsible for determining the\n      appropriateness of using or redistributing the Work and assume any\n      risks associated with Your exercise of permissions under this License.\n\n   8. Limitation of Liability. In no event and under no legal theory,\n      whether in tort (including negligence), contract, or otherwise,\n      unless required by applicable law (such as deliberate and grossly\n      negligent acts) or agreed to in writing, shall any Contributor be\n      liable to You for damages, including any direct, indirect, special,\n      incidental, or consequential damages of any character arising as a\n      result of this License or out of the use or inability to use the\n      Work (including but not limited to damages for loss of goodwill,\n      work stoppage, computer failure or malfunction, or any and all\n      other commercial damages or losses), even if such Contributor\n      has been advised of the possibility of such damages.\n\n   9. Accepting Warranty or Additional Liability. While redistributing\n      the Work or Derivative Works thereof, You may choose to offer,\n      and charge a fee for, acceptance of support, warranty, indemnity,\n      or other liability obligations and/or rights consistent with this\n      License. However, in accepting such obligations, You may act only\n      on Your own behalf and on Your sole responsibility, not on behalf\n      of any other Contributor, and only if You agree to indemnify,\n      defend, and hold each Contributor harmless for any liability\n      incurred by, or claims asserted against, such Contributor by reason\n      of your accepting any such warranty or additional liability.\n\n   END OF TERMS AND CONDITIONS\n\n   APPENDIX: How to apply the Apache License to your work.\n\n      To apply the Apache License to your work, attach the following\n      boilerplate notice, with the fields enclosed by brackets \"{}\"\n      replaced with your own identifying information. (Don't include\n      the brackets!)  The text should be enclosed in the appropriate\n      comment syntax for the file format. We also recommend that a\n      file or class name and description of purpose be included on the\n      same \"printed page\" as the copyright notice for easier\n      identification within third-party archives.\n\n   Copyright 2020 Ross Wightman\n\n   Licensed under the Apache License, Version 2.0 (the \"License\");\n   you may not use this file except in compliance with the License.\n   You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n   Unless required by applicable law or agreed to in writing, software\n   distributed under the License is distributed on an \"AS IS\" BASIS,\n   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n   See the License for the specific language governing permissions and\n   limitations under the License.\n"
  },
  {
    "path": "modules/control/proc/normalbae/nets/submodules/efficientnet_repo/README.md",
    "content": "# (Generic) EfficientNets for PyTorch\n\nA 'generic' implementation of EfficientNet, MixNet, MobileNetV3, etc. that covers most of the compute/parameter efficient architectures derived from the MobileNet V1/V2 block sequence, including those found via automated neural architecture search.\n\nAll models are implemented by GenEfficientNet or MobileNetV3 classes, with string based architecture definitions to configure the block layouts (idea from [here](https://github.com/tensorflow/tpu/blob/master/models/official/mnasnet/mnasnet_models.py))\n\n## What's New\n\n### Aug 19, 2020\n* Add updated PyTorch trained EfficientNet-B3 weights trained by myself with `timm` (82.1 top-1)\n* Add PyTorch trained EfficientNet-Lite0 contributed by [@hal-314](https://github.com/hal-314) (75.5 top-1)\n* Update ONNX and Caffe2 export / utility scripts to work with latest PyTorch / ONNX\n* ONNX runtime based validation script added\n* activations (mostly) brought in sync with `timm` equivalents\n\n\n### April 5, 2020\n* Add some newly trained MobileNet-V2 models trained with latest h-params, rand augment. They compare quite favourably to EfficientNet-Lite\n  * 3.5M param MobileNet-V2 100 @ 73%\n  * 4.5M param MobileNet-V2 110d @ 75%\n  * 6.1M param MobileNet-V2 140 @ 76.5%\n  * 5.8M param MobileNet-V2 120d @ 77.3%\n\n### March 23, 2020\n * Add EfficientNet-Lite models w/ weights ported from [Tensorflow TPU](https://github.com/tensorflow/tpu/tree/master/models/official/efficientnet/lite)\n * Add PyTorch trained MobileNet-V3 Large weights with 75.77% top-1\n * IMPORTANT CHANGE (if training from scratch) - weight init changed to better match Tensorflow impl, set `fix_group_fanout=False` in `initialize_weight_goog` for old behavior\n\n### Feb 12, 2020\n * Add EfficientNet-L2 and B0-B7 NoisyStudent weights ported from [Tensorflow TPU](https://github.com/tensorflow/tpu/tree/master/models/official/efficientnet)\n * Port new EfficientNet-B8 (RandAugment) weights from TF TPU, these are different than the B8 AdvProp, different input normalization.\n * Add RandAugment PyTorch trained EfficientNet-ES (EdgeTPU-Small) weights with 78.1 top-1. Trained by [Andrew Lavin](https://github.com/andravin)\n\n### Jan 22, 2020\n * Update weights for EfficientNet B0, B2, B3 and MixNet-XL with latest RandAugment trained weights. Trained with (https://github.com/rwightman/pytorch-image-models)\n * Fix torchscript compatibility for PyTorch 1.4, add torchscript support for MixedConv2d using ModuleDict\n * Test models, torchscript, onnx export with PyTorch 1.4 -- no issues\n\n### Nov 22, 2019\n * New top-1 high! Ported official TF EfficientNet AdvProp (https://arxiv.org/abs/1911.09665) weights and B8 model spec. Created a new set of `ap` models since they use a different\n preprocessing (Inception mean/std) from the original EfficientNet base/AA/RA weights.\n\n### Nov 15, 2019\n * Ported official TF MobileNet-V3 float32 large/small/minimalistic weights\n * Modifications to MobileNet-V3 model and components to support some additional config needed for differences between TF MobileNet-V3 and mine\n\n### Oct 30, 2019\n * Many of the models will now work with torch.jit.script, MixNet being the biggest exception\n * Improved interface for enabling torchscript or ONNX export compatible modes (via config)\n * Add JIT optimized mem-efficient Swish/Mish autograd.fn in addition to memory-efficient autgrad.fn\n * Activation factory to select best version of activation by name or override one globally\n * Add pretrained checkpoint load helper that handles input conv and classifier changes\n\n### Oct 27, 2019\n * Add CondConv EfficientNet variants ported from https://github.com/tensorflow/tpu/tree/master/models/official/efficientnet/condconv\n * Add RandAug weights for TF EfficientNet B5 and B7 from https://github.com/tensorflow/tpu/tree/master/models/official/efficientnet\n * Bring over MixNet-XL model and depth scaling algo from my pytorch-image-models code base\n * Switch activations and global pooling to modules\n * Add memory-efficient Swish/Mish impl\n * Add as_sequential() method to all models and allow as an argument in entrypoint fns\n * Move MobileNetV3 into own file since it has a different head\n * Remove ChamNet, MobileNet V2/V1 since they will likely never be used here\n\n## Models\n\nImplemented models include:\n  * EfficientNet NoisyStudent (B0-B7, L2) (https://arxiv.org/abs/1911.04252)\n  * EfficientNet AdvProp (B0-B8) (https://arxiv.org/abs/1911.09665)\n  * EfficientNet (B0-B8) (https://arxiv.org/abs/1905.11946)\n  * EfficientNet-EdgeTPU (S, M, L) (https://ai.googleblog.com/2019/08/efficientnet-edgetpu-creating.html)\n  * EfficientNet-CondConv (https://arxiv.org/abs/1904.04971)\n  * EfficientNet-Lite (https://github.com/tensorflow/tpu/tree/master/models/official/efficientnet/lite)\n  * MixNet (https://arxiv.org/abs/1907.09595)\n  * MNASNet B1, A1 (Squeeze-Excite), and Small (https://arxiv.org/abs/1807.11626)\n  * MobileNet-V3 (https://arxiv.org/abs/1905.02244)\n  * FBNet-C (https://arxiv.org/abs/1812.03443)\n  * Single-Path NAS (https://arxiv.org/abs/1904.02877)\n\nI originally implemented and trained some these models with code [here](https://github.com/rwightman/pytorch-image-models), this repository contains just the GenEfficientNet models, validation, and associated ONNX/Caffe2 export code.\n\n## Pretrained\n\nI've managed to train several of the models to accuracies close to or above the originating papers and official impl. My training code is here: https://github.com/rwightman/pytorch-image-models\n\n\n|Model | Prec@1 (Err) | Prec@5 (Err) | Param#(M) | MAdds(M) | Image Scaling | Resolution | Crop |\n|---|---|---|---|---|---|---|---|\n| efficientnet_b3 | 82.240 (17.760) | 96.116 (3.884) | 12.23 | TBD | bicubic | 320 | 1.0 |\n| efficientnet_b3 | 82.076 (17.924) | 96.020 (3.980) | 12.23 | TBD | bicubic | 300 | 0.904 |\n| mixnet_xl | 81.074 (18.926) | 95.282 (4.718) | 11.90 | TBD | bicubic | 256 | 1.0 |\n| efficientnet_b2 | 80.612 (19.388) | 95.318 (4.682) | 9.1 | TBD | bicubic | 288 | 1.0 |\n| mixnet_xl | 80.476 (19.524) | 94.936 (5.064) | 11.90 | TBD | bicubic | 224 | 0.875 |\n| efficientnet_b2 | 80.288 (19.712) | 95.166 (4.834) | 9.1 | 1003 | bicubic | 260 | 0.890 |\n| mixnet_l | 78.976 (21.024 | 94.184 (5.816) | 7.33 | TBD | bicubic | 224 | 0.875 |\n| efficientnet_b1 | 78.692 (21.308) | 94.086 (5.914) | 7.8 | 694 | bicubic | 240 | 0.882 |\n| efficientnet_es | 78.066 (21.934) | 93.926 (6.074) | 5.44 | TBD | bicubic | 224 | 0.875 |\n| efficientnet_b0 | 77.698 (22.302) | 93.532 (6.468) | 5.3 | 390 | bicubic | 224 | 0.875 |\n| mobilenetv2_120d | 77.294 (22.706 | 93.502 (6.498) | 5.8 | TBD | bicubic | 224 | 0.875 |\n| mixnet_m | 77.256 (22.744) | 93.418 (6.582) | 5.01 | 353 | bicubic | 224 | 0.875 |\n| mobilenetv2_140 | 76.524 (23.476) | 92.990 (7.010) | 6.1 | TBD | bicubic | 224 | 0.875 |\n| mixnet_s | 75.988 (24.012) | 92.794 (7.206) | 4.13 | TBD | bicubic | 224 | 0.875 |\n| mobilenetv3_large_100 | 75.766 (24.234) | 92.542 (7.458) | 5.5 | TBD | bicubic | 224 | 0.875 |\n| mobilenetv3_rw | 75.634 (24.366) | 92.708 (7.292) | 5.5 | 219 | bicubic | 224 | 0.875 |\n| efficientnet_lite0 | 75.472 (24.528) | 92.520 (7.480) | 4.65 | TBD | bicubic | 224 | 0.875 |\n| mnasnet_a1 | 75.448 (24.552) | 92.604 (7.396) | 3.9 | 312 | bicubic | 224 | 0.875 |\n| fbnetc_100 | 75.124 (24.876) | 92.386 (7.614) | 5.6 | 385 | bilinear | 224 | 0.875 |\n| mobilenetv2_110d | 75.052 (24.948) | 92.180 (7.820) | 4.5 | TBD | bicubic | 224 | 0.875 |\n| mnasnet_b1 | 74.658 (25.342) | 92.114 (7.886) | 4.4 | 315 | bicubic | 224 | 0.875 |\n| spnasnet_100 | 74.084 (25.916)  | 91.818 (8.182) | 4.4 | TBD | bilinear | 224 | 0.875 |\n| mobilenetv2_100 | 72.978 (27.022) | 91.016 (8.984) | 3.5 | TBD | bicubic | 224 | 0.875 |\n\n\nMore pretrained models to come...\n\n\n## Ported Weights\n\nThe weights ported from Tensorflow checkpoints for the EfficientNet models do pretty much match accuracy in Tensorflow once a SAME convolution padding equivalent is added, and the same crop factors, image scaling, etc (see table) are used via cmd line args.\n\n**IMPORTANT:**\n* Tensorflow ported weights for EfficientNet AdvProp (AP), EfficientNet EdgeTPU, EfficientNet-CondConv, EfficientNet-Lite, and MobileNet-V3 models use Inception style (0.5, 0.5, 0.5) for mean and std.\n* Enabling the Tensorflow preprocessing pipeline with `--tf-preprocessing` at validation time will improve scores by 0.1-0.5%, very close to original TF impl.\n\nTo run validation for tf_efficientnet_b5:\n`python validate.py /path/to/imagenet/validation/ --model tf_efficientnet_b5 -b 64 --img-size 456 --crop-pct 0.934 --interpolation bicubic`\n\nTo run validation w/ TF preprocessing for tf_efficientnet_b5:\n`python validate.py /path/to/imagenet/validation/ --model tf_efficientnet_b5 -b 64 --img-size 456 --tf-preprocessing`\n\nTo run validation for a model with Inception preprocessing, ie EfficientNet-B8 AdvProp:\n`python validate.py /path/to/imagenet/validation/ --model tf_efficientnet_b8_ap -b 48 --num-gpu 2 --img-size 672 --crop-pct 0.954 --mean 0.5 --std 0.5`\n\n|Model | Prec@1 (Err) | Prec@5 (Err) | Param # | Image Scaling  | Image Size | Crop |\n|---|---|---|---|---|---|---|\n| tf_efficientnet_l2_ns *tfp | 88.352 (11.648) | 98.652 (1.348) | 480 | bicubic | 800 | N/A |\n| tf_efficientnet_l2_ns      | TBD | TBD | 480 | bicubic | 800 | 0.961 |\n| tf_efficientnet_l2_ns_475      | 88.234 (11.766) | 98.546 (1.454) | 480 | bicubic | 475 | 0.936 |\n| tf_efficientnet_l2_ns_475 *tfp | 88.172 (11.828) | 98.566 (1.434) | 480 | bicubic | 475 | N/A |\n| tf_efficientnet_b7_ns *tfp | 86.844 (13.156) | 98.084 (1.916) | 66.35 | bicubic | 600 | N/A |\n| tf_efficientnet_b7_ns      | 86.840 (13.160) | 98.094 (1.906) | 66.35 | bicubic | 600 | N/A |\n| tf_efficientnet_b6_ns      | 86.452 (13.548) | 97.882 (2.118) | 43.04 | bicubic | 528 | N/A |\n| tf_efficientnet_b6_ns *tfp | 86.444 (13.556) | 97.880 (2.120) | 43.04 | bicubic | 528 | N/A |\n| tf_efficientnet_b5_ns *tfp | 86.064 (13.936) | 97.746 (2.254) | 30.39 | bicubic | 456 | N/A |\n| tf_efficientnet_b5_ns      | 86.088 (13.912) | 97.752 (2.248) | 30.39 | bicubic | 456 | N/A |\n| tf_efficientnet_b8_ap *tfp | 85.436 (14.564) | 97.272 (2.728) | 87.4 | bicubic | 672 | N/A |\n| tf_efficientnet_b8 *tfp    | 85.384 (14.616) | 97.394 (2.606) | 87.4 | bicubic | 672 | N/A |\n| tf_efficientnet_b8         | 85.370 (14.630) | 97.390 (2.610) | 87.4 | bicubic | 672 | 0.954 |\n| tf_efficientnet_b8_ap      | 85.368 (14.632) | 97.294 (2.706) | 87.4 | bicubic | 672 | 0.954 |\n| tf_efficientnet_b4_ns *tfp | 85.298 (14.702) | 97.504 (2.496) | 19.34 | bicubic | 380 | N/A |\n| tf_efficientnet_b4_ns      | 85.162 (14.838) | 97.470 (2.530) | 19.34 | bicubic | 380 | 0.922 |\n| tf_efficientnet_b7_ap *tfp | 85.154 (14.846) | 97.244 (2.756) | 66.35 | bicubic | 600 | N/A |\n| tf_efficientnet_b7_ap      | 85.118 (14.882) | 97.252 (2.748) | 66.35 | bicubic | 600 | 0.949 |\n| tf_efficientnet_b7 *tfp | 84.940 (15.060) | 97.214 (2.786) | 66.35 | bicubic | 600 | N/A |\n| tf_efficientnet_b7      | 84.932 (15.068) | 97.208 (2.792) | 66.35 | bicubic | 600 | 0.949 |\n| tf_efficientnet_b6_ap      | 84.786 (15.214) | 97.138 (2.862) | 43.04 | bicubic | 528 | 0.942 |\n| tf_efficientnet_b6_ap *tfp | 84.760 (15.240) | 97.124 (2.876) | 43.04 | bicubic | 528 | N/A |\n| tf_efficientnet_b5_ap *tfp | 84.276 (15.724) | 96.932 (3.068) | 30.39 | bicubic | 456 | N/A |\n| tf_efficientnet_b5_ap      | 84.254 (15.746) | 96.976 (3.024) | 30.39 | bicubic | 456 | 0.934 |\n| tf_efficientnet_b6 *tfp  | 84.140 (15.860) | 96.852 (3.148) | 43.04 | bicubic | 528 | N/A |\n| tf_efficientnet_b6       | 84.110 (15.890) | 96.886 (3.114) | 43.04 | bicubic | 528 | 0.942 |\n| tf_efficientnet_b3_ns *tfp | 84.054 (15.946) | 96.918 (3.082) | 12.23 | bicubic | 300 | N/A |\n| tf_efficientnet_b3_ns      | 84.048 (15.952) | 96.910 (3.090) | 12.23 | bicubic | 300 | .904 |\n| tf_efficientnet_b5 *tfp  | 83.822 (16.178) | 96.756 (3.244) | 30.39 | bicubic | 456 | N/A |\n| tf_efficientnet_b5       | 83.812 (16.188) | 96.748 (3.252) | 30.39 | bicubic | 456 | 0.934 |\n| tf_efficientnet_b4_ap *tfp | 83.278 (16.722) | 96.376 (3.624) | 19.34 | bicubic | 380 | N/A |\n| tf_efficientnet_b4_ap      | 83.248 (16.752) | 96.388 (3.612) | 19.34 | bicubic | 380 | 0.922 |\n| tf_efficientnet_b4       | 83.022 (16.978) | 96.300 (3.700) | 19.34 | bicubic | 380 | 0.922 |\n| tf_efficientnet_b4 *tfp  | 82.948 (17.052) | 96.308 (3.692) | 19.34 | bicubic | 380 | N/A |\n| tf_efficientnet_b2_ns *tfp | 82.436 (17.564) | 96.268 (3.732) | 9.11 | bicubic | 260 | N/A |\n| tf_efficientnet_b2_ns      | 82.380 (17.620) | 96.248 (3.752) | 9.11 | bicubic | 260 | 0.89 |\n| tf_efficientnet_b3_ap *tfp | 81.882 (18.118) | 95.662 (4.338) | 12.23 | bicubic | 300 | N/A |\n| tf_efficientnet_b3_ap      | 81.828 (18.172) | 95.624 (4.376) | 12.23 | bicubic | 300 | 0.904 |\n| tf_efficientnet_b3       | 81.636 (18.364) | 95.718 (4.282) | 12.23 | bicubic | 300 | 0.904 |\n| tf_efficientnet_b3 *tfp  | 81.576 (18.424) | 95.662 (4.338) | 12.23 | bicubic | 300 | N/A |\n| tf_efficientnet_lite4      | 81.528 (18.472) | 95.668 (4.332) | 13.00  | bilinear | 380 | 0.92 |\n| tf_efficientnet_b1_ns *tfp | 81.514 (18.486) | 95.776 (4.224) | 7.79 | bicubic | 240 | N/A |\n| tf_efficientnet_lite4 *tfp | 81.502 (18.498) | 95.676 (4.324) | 13.00  | bilinear | 380 | N/A |\n| tf_efficientnet_b1_ns      | 81.388 (18.612) | 95.738 (4.262) | 7.79 | bicubic | 240 | 0.88 |\n| tf_efficientnet_el       | 80.534 (19.466) | 95.190 (4.810) | 10.59 | bicubic | 300 | 0.904 |\n| tf_efficientnet_el *tfp  | 80.476 (19.524) | 95.200 (4.800) | 10.59 | bicubic | 300 | N/A |\n| tf_efficientnet_b2_ap *tfp | 80.420 (19.580) | 95.040 (4.960) | 9.11 | bicubic | 260 | N/A |\n| tf_efficientnet_b2_ap    | 80.306 (19.694) | 95.028 (4.972) | 9.11 | bicubic | 260 | 0.890 |\n| tf_efficientnet_b2 *tfp  | 80.188 (19.812) | 94.974 (5.026) | 9.11 | bicubic | 260 | N/A |\n| tf_efficientnet_b2       | 80.086 (19.914) | 94.908 (5.092) | 9.11 | bicubic | 260 | 0.890 |\n| tf_efficientnet_lite3       | 79.812 (20.188) | 94.914 (5.086) | 8.20  | bilinear | 300 | 0.904 |\n| tf_efficientnet_lite3 *tfp  | 79.734 (20.266) | 94.838 (5.162) | 8.20  | bilinear | 300 | N/A |\n| tf_efficientnet_b1_ap *tfp | 79.532 (20.468) | 94.378 (5.622) | 7.79 | bicubic | 240 | N/A |\n| tf_efficientnet_cc_b1_8e *tfp | 79.464 (20.536)| 94.492 (5.508) | 39.7 | bicubic | 240 | 0.88 |\n| tf_efficientnet_cc_b1_8e | 79.298 (20.702) | 94.364 (5.636) | 39.7 | bicubic | 240 | 0.88 |\n| tf_efficientnet_b1_ap    | 79.278 (20.722) | 94.308 (5.692) | 7.79 | bicubic | 240 | 0.88 |\n| tf_efficientnet_b1 *tfp  | 79.172 (20.828) | 94.450 (5.550) | 7.79 | bicubic | 240 | N/A |\n| tf_efficientnet_em *tfp  | 78.958 (21.042) | 94.458 (5.542) | 6.90 | bicubic | 240 | N/A |\n| tf_efficientnet_b0_ns *tfp | 78.806 (21.194) | 94.496 (5.504) | 5.29 | bicubic | 224 | N/A |\n| tf_mixnet_l *tfp         | 78.846 (21.154) | 94.212 (5.788) | 7.33 | bilinear | 224 | N/A |\n| tf_efficientnet_b1       | 78.826 (21.174) | 94.198 (5.802) | 7.79 | bicubic | 240 | 0.88 |\n| tf_mixnet_l              | 78.770 (21.230) | 94.004 (5.996) | 7.33 | bicubic | 224 | 0.875 |\n| tf_efficientnet_em       | 78.742 (21.258) | 94.332 (5.668) | 6.90 | bicubic | 240 | 0.875 |\n| tf_efficientnet_b0_ns    | 78.658 (21.342) | 94.376 (5.624) | 5.29 | bicubic | 224 | 0.875 |\n| tf_efficientnet_cc_b0_8e *tfp | 78.314 (21.686) | 93.790 (6.210) | 24.0 | bicubic | 224 | 0.875 |\n| tf_efficientnet_cc_b0_8e | 77.908 (22.092) | 93.656 (6.344) | 24.0 | bicubic | 224 | 0.875 |\n| tf_efficientnet_cc_b0_4e *tfp | 77.746 (22.254) | 93.552 (6.448) | 13.3 | bicubic | 224 | 0.875 |\n| tf_efficientnet_cc_b0_4e | 77.304 (22.696) | 93.332 (6.668) | 13.3 | bicubic | 224 | 0.875 |\n| tf_efficientnet_es *tfp  | 77.616 (22.384) | 93.750 (6.250) | 5.44 | bicubic | 224 | N/A |\n| tf_efficientnet_lite2 *tfp  | 77.544 (22.456) | 93.800 (6.200) | 6.09  | bilinear | 260 | N/A |\n| tf_efficientnet_lite2       | 77.460 (22.540) | 93.746 (6.254) | 6.09  | bicubic | 260 | 0.89 |\n| tf_efficientnet_b0_ap *tfp | 77.514 (22.486) | 93.576 (6.424) | 5.29  | bicubic | 224 | N/A |\n| tf_efficientnet_es       | 77.264 (22.736) | 93.600 (6.400) | 5.44 | bicubic | 224 | N/A |\n| tf_efficientnet_b0 *tfp  | 77.258 (22.742) | 93.478 (6.522) | 5.29  | bicubic | 224 | N/A |\n| tf_efficientnet_b0_ap    | 77.084 (22.916) | 93.254 (6.746) | 5.29  | bicubic | 224 | 0.875 |\n| tf_mixnet_m *tfp         | 77.072 (22.928) | 93.368 (6.632) | 5.01 | bilinear | 224 | N/A |\n| tf_mixnet_m              | 76.950 (23.050) | 93.156 (6.844) | 5.01 | bicubic | 224 | 0.875 |\n| tf_efficientnet_b0       | 76.848 (23.152) | 93.228 (6.772) | 5.29  | bicubic | 224 | 0.875 |\n| tf_efficientnet_lite1 *tfp  | 76.764 (23.236) | 93.326 (6.674) | 5.42  | bilinear | 240 | N/A |\n| tf_efficientnet_lite1       | 76.638 (23.362) | 93.232 (6.768) | 5.42  | bicubic | 240 | 0.882 |\n| tf_mixnet_s *tfp         | 75.800 (24.200) | 92.788 (7.212) | 4.13 | bilinear | 224 | N/A |\n| tf_mobilenetv3_large_100 *tfp | 75.768 (24.232) | 92.710 (7.290) | 5.48 | bilinear | 224 | N/A |\n| tf_mixnet_s              | 75.648 (24.352) | 92.636 (7.364) | 4.13 | bicubic | 224 | 0.875 |\n| tf_mobilenetv3_large_100 | 75.516 (24.484) | 92.600 (7.400) | 5.48 | bilinear | 224 | 0.875 |\n| tf_efficientnet_lite0 *tfp  | 75.074 (24.926) | 92.314 (7.686) | 4.65  | bilinear | 224 | N/A |\n| tf_efficientnet_lite0       | 74.842 (25.158) | 92.170 (7.830) | 4.65  | bicubic | 224 | 0.875 |\n| tf_mobilenetv3_large_075 *tfp | 73.730 (26.270) | 91.616 (8.384) | 3.99 | bilinear | 224 |N/A |\n| tf_mobilenetv3_large_075 | 73.442 (26.558) | 91.352 (8.648) | 3.99 | bilinear | 224 | 0.875 |\n| tf_mobilenetv3_large_minimal_100 *tfp | 72.678 (27.322) | 90.860 (9.140) | 3.92 | bilinear | 224 | N/A |\n| tf_mobilenetv3_large_minimal_100 | 72.244 (27.756) | 90.636 (9.364) | 3.92 | bilinear | 224 | 0.875 |\n| tf_mobilenetv3_small_100 *tfp | 67.918 (32.082) | 87.958 (12.042 | 2.54 | bilinear | 224 | N/A |\n| tf_mobilenetv3_small_100 | 67.918 (32.082) | 87.662 (12.338) | 2.54 | bilinear | 224 | 0.875 |\n| tf_mobilenetv3_small_075 *tfp | 66.142 (33.858) | 86.498 (13.502) | 2.04 | bilinear | 224 | N/A |\n| tf_mobilenetv3_small_075 | 65.718 (34.282) | 86.136 (13.864) | 2.04 | bilinear | 224 | 0.875 |\n| tf_mobilenetv3_small_minimal_100 *tfp | 63.378 (36.622) | 84.802 (15.198) | 2.04 | bilinear | 224 | N/A |\n| tf_mobilenetv3_small_minimal_100 | 62.898 (37.102) | 84.230 (15.770) | 2.04 | bilinear | 224 | 0.875 |\n\n\n*tfp models validated with `tf-preprocessing` pipeline\n\nGoogle tf and tflite weights ported from official Tensorflow repositories\n* https://github.com/tensorflow/tpu/tree/master/models/official/mnasnet\n* https://github.com/tensorflow/tpu/tree/master/models/official/efficientnet\n* https://github.com/tensorflow/models/tree/master/research/slim/nets/mobilenet\n\n## Usage\n\n### Environment\n\nAll development and testing has been done in Conda Python 3 environments on Linux x86-64 systems, specifically Python 3.6.x, 3.7.x, 3.8.x.\n\nUsers have reported that a Python 3 Anaconda install in Windows works. I have not verified this myself.\n\nPyTorch versions 1.4, 1.5, 1.6 have been tested with this code.\n\nI've tried to keep the dependencies minimal, the setup is as per the PyTorch default install instructions for Conda:\n```\nconda create -n torch-env\nconda activate torch-env\nconda install -c pytorch pytorch torchvision cudatoolkit=10.2\n```\n\n### PyTorch Hub\n\nModels can be accessed via the PyTorch Hub API\n\n```\n>>> torch.hub.list('rwightman/gen-efficientnet-pytorch')\n['efficientnet_b0', ...]\n>>> model = torch.hub.load('rwightman/gen-efficientnet-pytorch', 'efficientnet_b0', pretrained=True)\n>>> model.eval()\n>>> output = model(torch.randn(1,3,224,224))\n```\n\n### Pip\nThis package can be installed via pip.\n\nInstall (after conda env/install):\n```\npip install geffnet\n```\n\nEval use:\n```\n>>> import geffnet\n>>> m = geffnet.create_model('mobilenetv3_large_100', pretrained=True)\n>>> m.eval()\n```\n\nTrain use:\n```\n>>> import geffnet\n>>> # models can also be created by using the entrypoint directly\n>>> m = geffnet.efficientnet_b2(pretrained=True, drop_rate=0.25, drop_connect_rate=0.2)\n>>> m.train()\n```\n\nCreate in a nn.Sequential container, for fast.ai, etc:\n```\n>>> import geffnet\n>>> m = geffnet.mixnet_l(pretrained=True, drop_rate=0.25, drop_connect_rate=0.2, as_sequential=True)\n```\n\n### Exporting\n\nScripts are included to\n* export models to ONNX (`onnx_export.py`)\n* optimized ONNX graph (`onnx_optimize.py` or `onnx_validate.py` w/ `--onnx-output-opt` arg)\n* validate with ONNX runtime  (`onnx_validate.py`)\n* convert ONNX model to Caffe2 (`onnx_to_caffe.py`)\n* validate in Caffe2 (`caffe2_validate.py`)\n* benchmark in Caffe2 w/ FLOPs, parameters output (`caffe2_benchmark.py`)\n\nAs an example, to export the MobileNet-V3 pretrained model and then run an Imagenet validation:\n```\npython onnx_export.py --model mobilenetv3_large_100 ./mobilenetv3_100.onnx\npython onnx_validate.py /imagenet/validation/ --onnx-input ./mobilenetv3_100.onnx\n```\n\nThese scripts were tested to be working as of PyTorch 1.6 and ONNX 1.7 w/ ONNX runtime 1.4. Caffe2 compatible\nexport now requires additional args mentioned in the export script (not needed in earlier versions).\n\n#### Export Notes\n1. The TF ported weights with the 'SAME' conv padding activated cannot be exported to ONNX unless `_EXPORTABLE` flag in `config.py` is set to True. Use `config.set_exportable(True)` as in the `onnx_export.py` script.\n2. TF ported models with 'SAME' padding will have the padding fixed at export time to the resolution used for export. Even though dynamic padding is supported in opset >= 11, I can't get it working.\n3. ONNX optimize facility doesn't work reliably in PyTorch 1.6 / ONNX 1.7. Fortunately, the onnxruntime based inference is working very well now and includes on the fly optimization.\n3. ONNX / Caffe2 export/import frequently breaks with different PyTorch and ONNX version releases. Please check their respective issue trackers before filing issues here.\n"
  },
  {
    "path": "modules/control/proc/normalbae/nets/submodules/efficientnet_repo/__init__.py",
    "content": ""
  },
  {
    "path": "modules/control/proc/normalbae/nets/submodules/efficientnet_repo/geffnet/__init__.py",
    "content": "from .gen_efficientnet import *\nfrom .mobilenetv3 import *\nfrom .model_factory import create_model\nfrom .config import is_exportable, is_scriptable, set_exportable, set_scriptable\nfrom .activations import *\n"
  },
  {
    "path": "modules/control/proc/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/__init__.py",
    "content": "from geffnet import config\nfrom geffnet.activations.activations_me import *\nfrom geffnet.activations.activations_jit import *\nfrom geffnet.activations.activations import *\nimport torch\n\n_has_silu = 'silu' in dir(torch.nn.functional)\n\n_ACT_FN_DEFAULT = dict(\n    silu=F.silu if _has_silu else swish,\n    swish=F.silu if _has_silu else swish,\n    mish=mish,\n    relu=F.relu,\n    relu6=F.relu6,\n    sigmoid=sigmoid,\n    tanh=tanh,\n    hard_sigmoid=hard_sigmoid,\n    hard_swish=hard_swish,\n)\n\n_ACT_FN_JIT = dict(\n    silu=F.silu if _has_silu else swish_jit,\n    swish=F.silu if _has_silu else swish_jit,\n    mish=mish_jit,\n)\n\n_ACT_FN_ME = dict(\n    silu=F.silu if _has_silu else swish_me,\n    swish=F.silu if _has_silu else swish_me,\n    mish=mish_me,\n    hard_swish=hard_swish_me,\n    hard_sigmoid_jit=hard_sigmoid_me,\n)\n\n_ACT_LAYER_DEFAULT = dict(\n    silu=nn.SiLU if _has_silu else Swish,\n    swish=nn.SiLU if _has_silu else Swish,\n    mish=Mish,\n    relu=nn.ReLU,\n    relu6=nn.ReLU6,\n    sigmoid=Sigmoid,\n    tanh=Tanh,\n    hard_sigmoid=HardSigmoid,\n    hard_swish=HardSwish,\n)\n\n_ACT_LAYER_JIT = dict(\n    silu=nn.SiLU if _has_silu else SwishJit,\n    swish=nn.SiLU if _has_silu else SwishJit,\n    mish=MishJit,\n)\n\n_ACT_LAYER_ME = dict(\n    silu=nn.SiLU if _has_silu else SwishMe,\n    swish=nn.SiLU if _has_silu else SwishMe,\n    mish=MishMe,\n    hard_swish=HardSwishMe,\n    hard_sigmoid=HardSigmoidMe\n)\n\n_OVERRIDE_FN = {}\n_OVERRIDE_LAYER = {}\n\n\ndef add_override_act_fn(name, fn):\n    global _OVERRIDE_FN\n    _OVERRIDE_FN[name] = fn\n\n\ndef update_override_act_fn(overrides):\n    assert isinstance(overrides, dict)\n    global _OVERRIDE_FN\n    _OVERRIDE_FN.update(overrides)\n\n\ndef clear_override_act_fn():\n    global _OVERRIDE_FN\n    _OVERRIDE_FN = {}\n\n\ndef add_override_act_layer(name, fn):\n    _OVERRIDE_LAYER[name] = fn\n\n\ndef update_override_act_layer(overrides):\n    assert isinstance(overrides, dict)\n    global _OVERRIDE_LAYER\n    _OVERRIDE_LAYER.update(overrides)\n\n\ndef clear_override_act_layer():\n    global _OVERRIDE_LAYER\n    _OVERRIDE_LAYER = {}\n\n\ndef get_act_fn(name='relu'):\n    \"\"\" Activation Function Factory\n    Fetching activation fns by name with this function allows export or torch script friendly\n    functions to be returned dynamically based on current config.\n    \"\"\"\n    if name in _OVERRIDE_FN:\n        return _OVERRIDE_FN[name]\n    use_me = not (config.is_exportable() or config.is_scriptable() or config.is_no_jit())\n    if use_me and name in _ACT_FN_ME:\n        # If not exporting or scripting the model, first look for a memory optimized version\n        # activation with custom autograd, then fallback to jit scripted, then a Python or Torch builtin\n        return _ACT_FN_ME[name]\n    if config.is_exportable() and name in ('silu', 'swish'):\n        # FIXME PyTorch SiLU doesn't ONNX export, this is a temp hack\n        return swish\n    use_jit = not (config.is_exportable() or config.is_no_jit())\n    # NOTE: export tracing should work with jit scripted components, but I keep running into issues\n    if use_jit and name in _ACT_FN_JIT:  # jit scripted models should be okay for export/scripting\n        return _ACT_FN_JIT[name]\n    return _ACT_FN_DEFAULT[name]\n\n\ndef get_act_layer(name='relu'):\n    \"\"\" Activation Layer Factory\n    Fetching activation layers by name with this function allows export or torch script friendly\n    functions to be returned dynamically based on current config.\n    \"\"\"\n    if name in _OVERRIDE_LAYER:\n        return _OVERRIDE_LAYER[name]\n    use_me = not (config.is_exportable() or config.is_scriptable() or config.is_no_jit())\n    if use_me and name in _ACT_LAYER_ME:\n        return _ACT_LAYER_ME[name]\n    if config.is_exportable() and name in ('silu', 'swish'):\n        # FIXME PyTorch SiLU doesn't ONNX export, this is a temp hack\n        return Swish\n    use_jit = not (config.is_exportable() or config.is_no_jit())\n    # NOTE: export tracing should work with jit scripted components, but I keep running into issues\n    if use_jit and name in _ACT_FN_JIT:  # jit scripted models should be okay for export/scripting\n        return _ACT_LAYER_JIT[name]\n    return _ACT_LAYER_DEFAULT[name]\n"
  },
  {
    "path": "modules/control/proc/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/activations.py",
    "content": "\"\"\" Activations\n\nA collection of activations fn and modules with a common interface so that they can\neasily be swapped. All have an `inplace` arg even if not used.\n\nCopyright 2020 Ross Wightman\n\"\"\"\nfrom torch import nn as nn\nfrom torch.nn import functional as F\n\n\ndef swish(x, inplace: bool = False):\n    \"\"\"Swish - Described originally as SiLU (https://arxiv.org/abs/1702.03118v3)\n    and also as Swish (https://arxiv.org/abs/1710.05941).\n    \"\"\"\n    return x.mul_(x.sigmoid()) if inplace else x.mul(x.sigmoid())\n\n\nclass Swish(nn.Module):\n    def __init__(self, inplace: bool = False):\n        super(Swish, self).__init__()\n        self.inplace = inplace\n\n    def forward(self, x):\n        return swish(x, self.inplace)\n\n\ndef mish(x, inplace: bool = False):\n    \"\"\"Mish: A Self Regularized Non-Monotonic Neural Activation Function - https://arxiv.org/abs/1908.08681\n    \"\"\"\n    return x.mul(F.softplus(x).tanh())\n\n\nclass Mish(nn.Module):\n    def __init__(self, inplace: bool = False):\n        super(Mish, self).__init__()\n        self.inplace = inplace\n\n    def forward(self, x):\n        return mish(x, self.inplace)\n\n\ndef sigmoid(x, inplace: bool = False):\n    return x.sigmoid_() if inplace else x.sigmoid()\n\n\n# PyTorch has this, but not with a consistent inplace argmument interface\nclass Sigmoid(nn.Module):\n    def __init__(self, inplace: bool = False):\n        super(Sigmoid, self).__init__()\n        self.inplace = inplace\n\n    def forward(self, x):\n        return x.sigmoid_() if self.inplace else x.sigmoid()\n\n\ndef tanh(x, inplace: bool = False):\n    return x.tanh_() if inplace else x.tanh()\n\n\n# PyTorch has this, but not with a consistent inplace argmument interface\nclass Tanh(nn.Module):\n    def __init__(self, inplace: bool = False):\n        super(Tanh, self).__init__()\n        self.inplace = inplace\n\n    def forward(self, x):\n        return x.tanh_() if self.inplace else x.tanh()\n\n\ndef hard_swish(x, inplace: bool = False):\n    inner = F.relu6(x + 3.).div_(6.)\n    return x.mul_(inner) if inplace else x.mul(inner)\n\n\nclass HardSwish(nn.Module):\n    def __init__(self, inplace: bool = False):\n        super(HardSwish, self).__init__()\n        self.inplace = inplace\n\n    def forward(self, x):\n        return hard_swish(x, self.inplace)\n\n\ndef hard_sigmoid(x, inplace: bool = False):\n    if inplace:\n        return x.add_(3.).clamp_(0., 6.).div_(6.)\n    else:\n        return F.relu6(x + 3.) / 6.\n\n\nclass HardSigmoid(nn.Module):\n    def __init__(self, inplace: bool = False):\n        super(HardSigmoid, self).__init__()\n        self.inplace = inplace\n\n    def forward(self, x):\n        return hard_sigmoid(x, self.inplace)\n"
  },
  {
    "path": "modules/control/proc/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/activations_jit.py",
    "content": "\"\"\" Activations (jit)\n\nA collection of jit-scripted activations fn and modules with a common interface so that they can\neasily be swapped. All have an `inplace` arg even if not used.\n\nAll jit scripted activations are lacking in-place variations on purpose, scripted kernel fusion does not\ncurrently work across in-place op boundaries, thus performance is equal to or less than the non-scripted\nversions if they contain in-place ops.\n\nCopyright 2020 Ross Wightman\n\"\"\"\n\nimport torch\nfrom torch import nn as nn\nfrom torch.nn import functional as F\n\n__all__ = ['swish_jit', 'SwishJit', 'mish_jit', 'MishJit',\n           'hard_sigmoid_jit', 'HardSigmoidJit', 'hard_swish_jit', 'HardSwishJit']\n\n\n@torch.jit.script\ndef swish_jit(x, inplace: bool = False):\n    \"\"\"Swish - Described originally as SiLU (https://arxiv.org/abs/1702.03118v3)\n    and also as Swish (https://arxiv.org/abs/1710.05941).\n    \"\"\"\n    return x.mul(x.sigmoid())\n\n\n@torch.jit.script\ndef mish_jit(x, _inplace: bool = False):\n    \"\"\"Mish: A Self Regularized Non-Monotonic Neural Activation Function - https://arxiv.org/abs/1908.08681\n    \"\"\"\n    return x.mul(F.softplus(x).tanh())\n\n\nclass SwishJit(nn.Module):\n    def __init__(self, inplace: bool = False):\n        super(SwishJit, self).__init__()\n\n    def forward(self, x):\n        return swish_jit(x)\n\n\nclass MishJit(nn.Module):\n    def __init__(self, inplace: bool = False):\n        super(MishJit, self).__init__()\n\n    def forward(self, x):\n        return mish_jit(x)\n\n\n@torch.jit.script\ndef hard_sigmoid_jit(x, inplace: bool = False):\n    # return F.relu6(x + 3.) / 6.\n    return (x + 3).clamp(min=0, max=6).div(6.)  # clamp seems ever so slightly faster?\n\n\nclass HardSigmoidJit(nn.Module):\n    def __init__(self, inplace: bool = False):\n        super(HardSigmoidJit, self).__init__()\n\n    def forward(self, x):\n        return hard_sigmoid_jit(x)\n\n\n@torch.jit.script\ndef hard_swish_jit(x, inplace: bool = False):\n    # return x * (F.relu6(x + 3.) / 6)\n    return x * (x + 3).clamp(min=0, max=6).div(6.)  # clamp seems ever so slightly faster?\n\n\nclass HardSwishJit(nn.Module):\n    def __init__(self, inplace: bool = False):\n        super(HardSwishJit, self).__init__()\n\n    def forward(self, x):\n        return hard_swish_jit(x)\n"
  },
  {
    "path": "modules/control/proc/normalbae/nets/submodules/efficientnet_repo/geffnet/activations/activations_me.py",
    "content": "\"\"\" Activations (memory-efficient w/ custom autograd)\n\nA collection of activations fn and modules with a common interface so that they can\neasily be swapped. All have an `inplace` arg even if not used.\n\nThese activations are not compatible with jit scripting or ONNX export of the model, please use either\nthe JIT or basic versions of the activations.\n\nCopyright 2020 Ross Wightman\n\"\"\"\n\nimport torch\nfrom torch import nn as nn\nfrom torch.nn import functional as F\n\n\n__all__ = ['swish_me', 'SwishMe', 'mish_me', 'MishMe',\n           'hard_sigmoid_me', 'HardSigmoidMe', 'hard_swish_me', 'HardSwishMe']\n\n\n@torch.jit.script\ndef swish_jit_fwd(x):\n    return x.mul(torch.sigmoid(x))\n\n\n@torch.jit.script\ndef swish_jit_bwd(x, grad_output):\n    x_sigmoid = torch.sigmoid(x)\n    return grad_output * (x_sigmoid * (1 + x * (1 - x_sigmoid)))\n\n\nclass SwishJitAutoFn(torch.autograd.Function):\n    \"\"\" torch.jit.script optimised Swish w/ memory-efficient checkpoint\n    Inspired by conversation btw Jeremy Howard & Adam Pazske\n    https://twitter.com/jeremyphoward/status/1188251041835315200\n\n    Swish - Described originally as SiLU (https://arxiv.org/abs/1702.03118v3)\n    and also as Swish (https://arxiv.org/abs/1710.05941).\n    \"\"\"\n\n    @staticmethod\n    def forward(ctx, x):\n        ctx.save_for_backward(x)\n        return swish_jit_fwd(x)\n\n    @staticmethod\n    def backward(ctx, grad_output):\n        x = ctx.saved_tensors[0]\n        return swish_jit_bwd(x, grad_output)\n\n\ndef swish_me(x, inplace=False):\n    return SwishJitAutoFn.apply(x)\n\n\nclass SwishMe(nn.Module):\n    def __init__(self, inplace: bool = False):\n        super(SwishMe, self).__init__()\n\n    def forward(self, x):\n        return SwishJitAutoFn.apply(x)\n\n\n@torch.jit.script\ndef mish_jit_fwd(x):\n    return x.mul(torch.tanh(F.softplus(x)))\n\n\n@torch.jit.script\ndef mish_jit_bwd(x, grad_output):\n    x_sigmoid = torch.sigmoid(x)\n    x_tanh_sp = F.softplus(x).tanh()\n    return grad_output.mul(x_tanh_sp + x * x_sigmoid * (1 - x_tanh_sp * x_tanh_sp))\n\n\nclass MishJitAutoFn(torch.autograd.Function):\n    \"\"\" Mish: A Self Regularized Non-Monotonic Neural Activation Function - https://arxiv.org/abs/1908.08681\n    A memory efficient, jit scripted variant of Mish\n    \"\"\"\n    @staticmethod\n    def forward(ctx, x):\n        ctx.save_for_backward(x)\n        return mish_jit_fwd(x)\n\n    @staticmethod\n    def backward(ctx, grad_output):\n        x = ctx.saved_tensors[0]\n        return mish_jit_bwd(x, grad_output)\n\n\ndef mish_me(x, inplace=False):\n    return MishJitAutoFn.apply(x)\n\n\nclass MishMe(nn.Module):\n    def __init__(self, inplace: bool = False):\n        super(MishMe, self).__init__()\n\n    def forward(self, x):\n        return MishJitAutoFn.apply(x)\n\n\n@torch.jit.script\ndef hard_sigmoid_jit_fwd(x, inplace: bool = False):\n    return (x + 3).clamp(min=0, max=6).div(6.)\n\n\n@torch.jit.script\ndef hard_sigmoid_jit_bwd(x, grad_output):\n    m = torch.ones_like(x) * ((x >= -3.) & (x <= 3.)) / 6.\n    return grad_output * m\n\n\nclass HardSigmoidJitAutoFn(torch.autograd.Function):\n    @staticmethod\n    def forward(ctx, x):\n        ctx.save_for_backward(x)\n        return hard_sigmoid_jit_fwd(x)\n\n    @staticmethod\n    def backward(ctx, grad_output):\n        x = ctx.saved_tensors[0]\n        return hard_sigmoid_jit_bwd(x, grad_output)\n\n\ndef hard_sigmoid_me(x, inplace: bool = False):\n    return HardSigmoidJitAutoFn.apply(x)\n\n\nclass HardSigmoidMe(nn.Module):\n    def __init__(self, inplace: bool = False):\n        super(HardSigmoidMe, self).__init__()\n\n    def forward(self, x):\n        return HardSigmoidJitAutoFn.apply(x)\n\n\n@torch.jit.script\ndef hard_swish_jit_fwd(x):\n    return x * (x + 3).clamp(min=0, max=6).div(6.)\n\n\n@torch.jit.script\ndef hard_swish_jit_bwd(x, grad_output):\n    m = torch.ones_like(x) * (x >= 3.)\n    m = torch.where((x >= -3.) & (x <= 3.),  x / 3. + .5, m)\n    return grad_output * m\n\n\nclass HardSwishJitAutoFn(torch.autograd.Function):\n    \"\"\"A memory efficient, jit-scripted HardSwish activation\"\"\"\n    @staticmethod\n    def forward(ctx, x):\n        ctx.save_for_backward(x)\n        return hard_swish_jit_fwd(x)\n\n    @staticmethod\n    def backward(ctx, grad_output):\n        x = ctx.saved_tensors[0]\n        return hard_swish_jit_bwd(x, grad_output)\n\n\ndef hard_swish_me(x, inplace=False):\n    return HardSwishJitAutoFn.apply(x)\n\n\nclass HardSwishMe(nn.Module):\n    def __init__(self, inplace: bool = False):\n        super(HardSwishMe, self).__init__()\n\n    def forward(self, x):\n        return HardSwishJitAutoFn.apply(x)\n"
  },
  {
    "path": "modules/control/proc/normalbae/nets/submodules/efficientnet_repo/geffnet/config.py",
    "content": "\"\"\" Global layer config state\n\"\"\"\nfrom typing import Any, Optional\n\n__all__ = [\n    'is_exportable', 'is_scriptable', 'is_no_jit', 'layer_config_kwargs',\n    'set_exportable', 'set_scriptable', 'set_no_jit', 'set_layer_config'\n]\n\n# Set to True if prefer to have layers with no jit optimization (includes activations)\n_NO_JIT = False\n\n# Set to True if prefer to have activation layers with no jit optimization\n# NOTE not currently used as no difference between no_jit and no_activation jit as only layers obeying\n# the jit flags so far are activations. This will change as more layers are updated and/or added.\n_NO_ACTIVATION_JIT = False\n\n# Set to True if exporting a model with Same padding via ONNX\n_EXPORTABLE = False\n\n# Set to True if wanting to use torch.jit.script on a model\n_SCRIPTABLE = False\n\n\ndef is_no_jit():\n    return _NO_JIT\n\n\nclass set_no_jit:\n    def __init__(self, mode: bool) -> None:\n        global _NO_JIT\n        self.prev = _NO_JIT\n        _NO_JIT = mode\n\n    def __enter__(self) -> None:\n        pass\n\n    def __exit__(self, *args: Any) -> bool:\n        global _NO_JIT\n        _NO_JIT = self.prev\n        return False\n\n\ndef is_exportable():\n    return _EXPORTABLE\n\n\nclass set_exportable:\n    def __init__(self, mode: bool) -> None:\n        global _EXPORTABLE\n        self.prev = _EXPORTABLE\n        _EXPORTABLE = mode\n\n    def __enter__(self) -> None:\n        pass\n\n    def __exit__(self, *args: Any) -> bool:\n        global _EXPORTABLE\n        _EXPORTABLE = self.prev\n        return False\n\n\ndef is_scriptable():\n    return _SCRIPTABLE\n\n\nclass set_scriptable:\n    def __init__(self, mode: bool) -> None:\n        global _SCRIPTABLE\n        self.prev = _SCRIPTABLE\n        _SCRIPTABLE = mode\n\n    def __enter__(self) -> None:\n        pass\n\n    def __exit__(self, *args: Any) -> bool:\n        global _SCRIPTABLE\n        _SCRIPTABLE = self.prev\n        return False\n\n\nclass set_layer_config:\n    \"\"\" Layer config context manager that allows setting all layer config flags at once.\n    If a flag arg is None, it will not change the current value.\n    \"\"\"\n    def __init__(\n            self,\n            scriptable: Optional[bool] = None,\n            exportable: Optional[bool] = None,\n            no_jit: Optional[bool] = None,\n            no_activation_jit: Optional[bool] = None):\n        global _SCRIPTABLE\n        global _EXPORTABLE\n        global _NO_JIT\n        global _NO_ACTIVATION_JIT\n        self.prev = _SCRIPTABLE, _EXPORTABLE, _NO_JIT, _NO_ACTIVATION_JIT\n        if scriptable is not None:\n            _SCRIPTABLE = scriptable\n        if exportable is not None:\n            _EXPORTABLE = exportable\n        if no_jit is not None:\n            _NO_JIT = no_jit\n        if no_activation_jit is not None:\n            _NO_ACTIVATION_JIT = no_activation_jit\n\n    def __enter__(self) -> None:\n        pass\n\n    def __exit__(self, *args: Any) -> bool:\n        global _SCRIPTABLE\n        global _EXPORTABLE\n        global _NO_JIT\n        global _NO_ACTIVATION_JIT\n        _SCRIPTABLE, _EXPORTABLE, _NO_JIT, _NO_ACTIVATION_JIT = self.prev\n        return False\n\n\ndef layer_config_kwargs(kwargs):\n    \"\"\" Consume config kwargs and return contextmgr obj \"\"\"\n    return set_layer_config(\n        scriptable=kwargs.pop('scriptable', None),\n        exportable=kwargs.pop('exportable', None),\n        no_jit=kwargs.pop('no_jit', None))\n"
  },
  {
    "path": "modules/control/proc/normalbae/nets/submodules/efficientnet_repo/geffnet/conv2d_layers.py",
    "content": "\"\"\" Conv2D w/ SAME padding, CondConv, MixedConv\n\nA collection of conv layers and padding helpers needed by EfficientNet, MixNet, and\nMobileNetV3 models that maintain weight compatibility with original Tensorflow models.\n\nCopyright 2020 Ross Wightman\n\"\"\"\nimport collections.abc\nimport math\nfrom functools import partial\nfrom itertools import repeat\nfrom typing import Tuple, Optional\n\nimport numpy as np\nimport torch\nimport torch.nn as nn\nimport torch.nn.functional as F\n\nfrom .config import *\n\n\n# From PyTorch internals\ndef _ntuple(n):\n    def parse(x):\n        if isinstance(x, collections.abc.Iterable):\n            return x\n        return tuple(repeat(x, n))\n    return parse\n\n\n_single = _ntuple(1)\n_pair = _ntuple(2)\n_triple = _ntuple(3)\n_quadruple = _ntuple(4)\n\n\ndef _is_static_pad(kernel_size, stride=1, dilation=1, **_):\n    return stride == 1 and (dilation * (kernel_size - 1)) % 2 == 0\n\n\ndef _get_padding(kernel_size, stride=1, dilation=1, **_):\n    padding = ((stride - 1) + dilation * (kernel_size - 1)) // 2\n    return padding\n\n\ndef _calc_same_pad(i: int, k: int, s: int, d: int):\n    return max((-(i // -s) - 1) * s + (k - 1) * d + 1 - i, 0)\n\n\ndef _same_pad_arg(input_size, kernel_size, stride, dilation):\n    ih, iw = input_size\n    kh, kw = kernel_size\n    pad_h = _calc_same_pad(ih, kh, stride[0], dilation[0])\n    pad_w = _calc_same_pad(iw, kw, stride[1], dilation[1])\n    return [pad_w // 2, pad_w - pad_w // 2, pad_h // 2, pad_h - pad_h // 2]\n\n\ndef _split_channels(num_chan, num_groups):\n    split = [num_chan // num_groups for _ in range(num_groups)]\n    split[0] += num_chan - sum(split)\n    return split\n\n\ndef conv2d_same(\n        x, weight: torch.Tensor, bias: Optional[torch.Tensor] = None, stride: Tuple[int, int] = (1, 1),\n        padding: Tuple[int, int] = (0, 0), dilation: Tuple[int, int] = (1, 1), groups: int = 1):\n    ih, iw = x.size()[-2:]\n    kh, kw = weight.size()[-2:]\n    pad_h = _calc_same_pad(ih, kh, stride[0], dilation[0])\n    pad_w = _calc_same_pad(iw, kw, stride[1], dilation[1])\n    x = F.pad(x, [pad_w // 2, pad_w - pad_w // 2, pad_h // 2, pad_h - pad_h // 2])\n    return F.conv2d(x, weight, bias, stride, (0, 0), dilation, groups)\n\n\nclass Conv2dSame(nn.Conv2d):\n    \"\"\" Tensorflow like 'SAME' convolution wrapper for 2D convolutions\n    \"\"\"\n\n    # pylint: disable=unused-argument\n    def __init__(self, in_channels, out_channels, kernel_size, stride=1,\n                 padding=0, dilation=1, groups=1, bias=True):\n        super(Conv2dSame, self).__init__(\n            in_channels, out_channels, kernel_size, stride, 0, dilation, groups, bias)\n\n    def forward(self, x):\n        return conv2d_same(x, self.weight, self.bias, self.stride, self.padding, self.dilation, self.groups)\n\n\nclass Conv2dSameExport(nn.Conv2d):\n    \"\"\" ONNX export friendly Tensorflow like 'SAME' convolution wrapper for 2D convolutions\n\n    NOTE: This does not currently work with torch.jit.script\n    \"\"\"\n\n    # pylint: disable=unused-argument\n    def __init__(self, in_channels, out_channels, kernel_size, stride=1,\n                 padding=0, dilation=1, groups=1, bias=True):\n        super(Conv2dSameExport, self).__init__(\n            in_channels, out_channels, kernel_size, stride, 0, dilation, groups, bias)\n        self.pad = None\n        self.pad_input_size = (0, 0)\n\n    def forward(self, x):\n        input_size = x.size()[-2:]\n        if self.pad is None:\n            pad_arg = _same_pad_arg(input_size, self.weight.size()[-2:], self.stride, self.dilation)\n            self.pad = nn.ZeroPad2d(pad_arg)\n            self.pad_input_size = input_size\n\n        if self.pad is not None:\n            x = self.pad(x)\n        return F.conv2d(\n            x, self.weight, self.bias, self.stride, self.padding, self.dilation, self.groups)\n\n\ndef get_padding_value(padding, kernel_size, **kwargs):\n    dynamic = False\n    if isinstance(padding, str):\n        # for any string padding, the padding will be calculated for you, one of three ways\n        padding = padding.lower()\n        if padding == 'same':\n            # TF compatible 'SAME' padding, has a performance and GPU memory allocation impact\n            if _is_static_pad(kernel_size, **kwargs):\n                # static case, no extra overhead\n                padding = _get_padding(kernel_size, **kwargs)\n            else:\n                # dynamic padding\n                padding = 0\n                dynamic = True\n        elif padding == 'valid':\n            # 'VALID' padding, same as padding=0\n            padding = 0\n        else:\n            # Default to PyTorch style 'same'-ish symmetric padding\n            padding = _get_padding(kernel_size, **kwargs)\n    return padding, dynamic\n\n\ndef create_conv2d_pad(in_chs, out_chs, kernel_size, **kwargs):\n    padding = kwargs.pop('padding', '')\n    kwargs.setdefault('bias', False)\n    padding, is_dynamic = get_padding_value(padding, kernel_size, **kwargs)\n    if is_dynamic:\n        if is_exportable():\n            assert not is_scriptable()\n            return Conv2dSameExport(in_chs, out_chs, kernel_size, **kwargs)\n        else:\n            return Conv2dSame(in_chs, out_chs, kernel_size, **kwargs)\n    else:\n        return nn.Conv2d(in_chs, out_chs, kernel_size, padding=padding, **kwargs)\n\n\nclass MixedConv2d(nn.ModuleDict):\n    \"\"\" Mixed Grouped Convolution\n    Based on MDConv and GroupedConv in MixNet impl:\n      https://github.com/tensorflow/tpu/blob/master/models/official/mnasnet/mixnet/custom_layers.py\n    \"\"\"\n\n    def __init__(self, in_channels, out_channels, kernel_size=3,\n                 stride=1, padding='', dilation=1, depthwise=False, **kwargs):\n        super(MixedConv2d, self).__init__()\n\n        kernel_size = kernel_size if isinstance(kernel_size, list) else [kernel_size]\n        num_groups = len(kernel_size)\n        in_splits = _split_channels(in_channels, num_groups)\n        out_splits = _split_channels(out_channels, num_groups)\n        self.in_channels = sum(in_splits)\n        self.out_channels = sum(out_splits)\n        for idx, (k, in_ch, out_ch) in enumerate(zip(kernel_size, in_splits, out_splits)):\n            conv_groups = out_ch if depthwise else 1\n            self.add_module(\n                str(idx),\n                create_conv2d_pad(\n                    in_ch, out_ch, k, stride=stride,\n                    padding=padding, dilation=dilation, groups=conv_groups, **kwargs)\n            )\n        self.splits = in_splits\n\n    def forward(self, x):\n        x_split = torch.split(x, self.splits, 1)\n        x_out = [conv(x_split[i]) for i, conv in enumerate(self.values())]\n        x = torch.cat(x_out, 1)\n        return x\n\n\ndef get_condconv_initializer(initializer, num_experts, expert_shape):\n    def condconv_initializer(weight):\n        \"\"\"CondConv initializer function.\"\"\"\n        num_params = np.prod(expert_shape)\n        if (len(weight.shape) != 2 or weight.shape[0] != num_experts or\n                weight.shape[1] != num_params):\n            raise (ValueError(\n                'CondConv variables must have shape [num_experts, num_params]'))\n        for i in range(num_experts):\n            initializer(weight[i].view(expert_shape))\n    return condconv_initializer\n\n\nclass CondConv2d(nn.Module):\n    \"\"\" Conditional Convolution\n    Inspired by: https://github.com/tensorflow/tpu/blob/master/models/official/efficientnet/condconv/condconv_layers.py\n\n    Grouped convolution hackery for parallel execution of the per-sample kernel filters inspired by this discussion:\n    https://github.com/pytorch/pytorch/issues/17983\n    \"\"\"\n    __constants__ = ['bias', 'in_channels', 'out_channels', 'dynamic_padding']\n\n    def __init__(self, in_channels, out_channels, kernel_size=3,\n                 stride=1, padding='', dilation=1, groups=1, bias=False, num_experts=4):\n        super(CondConv2d, self).__init__()\n\n        self.in_channels = in_channels\n        self.out_channels = out_channels\n        self.kernel_size = _pair(kernel_size)\n        self.stride = _pair(stride)\n        padding_val, is_padding_dynamic = get_padding_value(\n            padding, kernel_size, stride=stride, dilation=dilation)\n        self.dynamic_padding = is_padding_dynamic  # if in forward to work with torchscript\n        self.padding = _pair(padding_val)\n        self.dilation = _pair(dilation)\n        self.groups = groups\n        self.num_experts = num_experts\n\n        self.weight_shape = (self.out_channels, self.in_channels // self.groups) + self.kernel_size\n        weight_num_param = 1\n        for wd in self.weight_shape:\n            weight_num_param *= wd\n        self.weight = torch.nn.Parameter(torch.Tensor(self.num_experts, weight_num_param))\n\n        if bias:\n            self.bias_shape = (self.out_channels,)\n            self.bias = torch.nn.Parameter(torch.Tensor(self.num_experts, self.out_channels))\n        else:\n            self.register_parameter('bias', None)\n\n        self.reset_parameters()\n\n    def reset_parameters(self):\n        init_weight = get_condconv_initializer(\n            partial(nn.init.kaiming_uniform_, a=math.sqrt(5)), self.num_experts, self.weight_shape)\n        init_weight(self.weight)\n        if self.bias is not None:\n            fan_in = np.prod(self.weight_shape[1:])\n            bound = 1 / math.sqrt(fan_in)\n            init_bias = get_condconv_initializer(\n                partial(nn.init.uniform_, a=-bound, b=bound), self.num_experts, self.bias_shape)\n            init_bias(self.bias)\n\n    def forward(self, x, routing_weights):\n        B, C, H, W = x.shape\n        weight = torch.matmul(routing_weights, self.weight)\n        new_weight_shape = (B * self.out_channels, self.in_channels // self.groups) + self.kernel_size\n        weight = weight.view(new_weight_shape)\n        bias = None\n        if self.bias is not None:\n            bias = torch.matmul(routing_weights, self.bias)\n            bias = bias.view(B * self.out_channels)\n        # move batch elements with channels so each batch element can be efficiently convolved with separate kernel\n        x = x.view(1, B * C, H, W)\n        if self.dynamic_padding:\n            out = conv2d_same(\n                x, weight, bias, stride=self.stride, padding=self.padding,\n                dilation=self.dilation, groups=self.groups * B)\n        else:\n            out = F.conv2d(\n                x, weight, bias, stride=self.stride, padding=self.padding,\n                dilation=self.dilation, groups=self.groups * B)\n        out = out.permute([1, 0, 2, 3]).view(B, self.out_channels, out.shape[-2], out.shape[-1])\n\n        # Literal port (from TF definition)\n        # x = torch.split(x, 1, 0)\n        # weight = torch.split(weight, 1, 0)\n        # if self.bias is not None:\n        #     bias = torch.matmul(routing_weights, self.bias)\n        #     bias = torch.split(bias, 1, 0)\n        # else:\n        #     bias = [None] * B\n        # out = []\n        # for xi, wi, bi in zip(x, weight, bias):\n        #     wi = wi.view(*self.weight_shape)\n        #     if bi is not None:\n        #         bi = bi.view(*self.bias_shape)\n        #     out.append(self.conv_fn(\n        #         xi, wi, bi, stride=self.stride, padding=self.padding,\n        #         dilation=self.dilation, groups=self.groups))\n        # out = torch.cat(out, 0)\n        return out\n\n\ndef select_conv2d(in_chs, out_chs, kernel_size, **kwargs):\n    assert 'groups' not in kwargs  # only use 'depthwise' bool arg\n    if isinstance(kernel_size, list):\n        assert 'num_experts' not in kwargs  # MixNet + CondConv combo not supported currently\n        # We're going to use only lists for defining the MixedConv2d kernel groups,\n        # ints, tuples, other iterables will continue to pass to normal conv and specify h, w.\n        m = MixedConv2d(in_chs, out_chs, kernel_size, **kwargs)\n    else:\n        depthwise = kwargs.pop('depthwise', False)\n        groups = out_chs if depthwise else 1\n        if 'num_experts' in kwargs and kwargs['num_experts'] > 0:\n            m = CondConv2d(in_chs, out_chs, kernel_size, groups=groups, **kwargs)\n        else:\n            m = create_conv2d_pad(in_chs, out_chs, kernel_size, groups=groups, **kwargs)\n    return m\n"
  },
  {
    "path": "modules/control/proc/normalbae/nets/submodules/efficientnet_repo/geffnet/efficientnet_builder.py",
    "content": "\"\"\" EfficientNet / MobileNetV3 Blocks and Builder\n\nCopyright 2020 Ross Wightman\n\"\"\"\nimport re\nfrom copy import deepcopy\n\nfrom .conv2d_layers import *\nfrom geffnet.activations import *\n\n__all__ = ['get_bn_args_tf', 'resolve_bn_args', 'resolve_se_args', 'resolve_act_layer', 'make_divisible',\n           'round_channels', 'drop_connect', 'SqueezeExcite', 'ConvBnAct', 'DepthwiseSeparableConv',\n           'InvertedResidual', 'CondConvResidual', 'EdgeResidual', 'EfficientNetBuilder', 'decode_arch_def',\n           'initialize_weight_default', 'initialize_weight_goog', 'BN_MOMENTUM_TF_DEFAULT', 'BN_EPS_TF_DEFAULT'\n]\n\n# Defaults used for Google/Tensorflow training of mobile networks /w RMSprop as per\n# papers and TF reference implementations. PT momentum equiv for TF decay is (1 - TF decay)\n# NOTE: momentum varies btw .99 and .9997 depending on source\n# .99 in official TF TPU impl\n# .9997 (/w .999 in search space) for paper\n#\n# PyTorch defaults are momentum = .1, eps = 1e-5\n#\nBN_MOMENTUM_TF_DEFAULT = 1 - 0.99\nBN_EPS_TF_DEFAULT = 1e-3\n_BN_ARGS_TF = dict(momentum=BN_MOMENTUM_TF_DEFAULT, eps=BN_EPS_TF_DEFAULT)\n\n\ndef get_bn_args_tf():\n    return _BN_ARGS_TF.copy()\n\n\ndef resolve_bn_args(kwargs):\n    bn_args = get_bn_args_tf() if kwargs.pop('bn_tf', False) else {}\n    bn_momentum = kwargs.pop('bn_momentum', None)\n    if bn_momentum is not None:\n        bn_args['momentum'] = bn_momentum\n    bn_eps = kwargs.pop('bn_eps', None)\n    if bn_eps is not None:\n        bn_args['eps'] = bn_eps\n    return bn_args\n\n\n_SE_ARGS_DEFAULT = dict(\n    gate_fn=sigmoid,\n    act_layer=None,  # None == use containing block's activation layer\n    reduce_mid=False,\n    divisor=1)\n\n\ndef resolve_se_args(kwargs, in_chs, act_layer=None):\n    se_kwargs = kwargs.copy() if kwargs is not None else {}\n    # fill in args that aren't specified with the defaults\n    for k, v in _SE_ARGS_DEFAULT.items():\n        se_kwargs.setdefault(k, v)\n    # some models, like MobilNetV3, calculate SE reduction chs from the containing block's mid_ch instead of in_ch\n    if not se_kwargs.pop('reduce_mid'):\n        se_kwargs['reduced_base_chs'] = in_chs\n    # act_layer override, if it remains None, the containing block's act_layer will be used\n    if se_kwargs['act_layer'] is None:\n        assert act_layer is not None\n        se_kwargs['act_layer'] = act_layer\n    return se_kwargs\n\n\ndef resolve_act_layer(kwargs, default='relu'):\n    act_layer = kwargs.pop('act_layer', default)\n    if isinstance(act_layer, str):\n        act_layer = get_act_layer(act_layer)\n    return act_layer\n\n\ndef make_divisible(v: int, divisor: int = 8, min_value: int = None):\n    min_value = min_value or divisor\n    new_v = max(min_value, int(v + divisor / 2) // divisor * divisor)\n    if new_v < 0.9 * v:  # ensure round down does not go down by more than 10%.\n        new_v += divisor\n    return new_v\n\n\ndef round_channels(channels, multiplier=1.0, divisor=8, channel_min=None):\n    \"\"\"Round number of filters based on depth multiplier.\"\"\"\n    if not multiplier:\n        return channels\n    channels *= multiplier\n    return make_divisible(channels, divisor, channel_min)\n\n\ndef drop_connect(inputs, training: bool = False, drop_connect_rate: float = 0.):\n    \"\"\"Apply drop connect.\"\"\"\n    if not training:\n        return inputs\n\n    keep_prob = 1 - drop_connect_rate\n    random_tensor = keep_prob + torch.rand(\n        (inputs.size()[0], 1, 1, 1), dtype=inputs.dtype, device=inputs.device)\n    random_tensor.floor_()  # binarize\n    output = inputs.div(keep_prob) * random_tensor\n    return output\n\n\nclass SqueezeExcite(nn.Module):\n\n    def __init__(self, in_chs, se_ratio=0.25, reduced_base_chs=None, act_layer=nn.ReLU, gate_fn=sigmoid, divisor=1):\n        super(SqueezeExcite, self).__init__()\n        reduced_chs = make_divisible((reduced_base_chs or in_chs) * se_ratio, divisor)\n        self.conv_reduce = nn.Conv2d(in_chs, reduced_chs, 1, bias=True)\n        self.act1 = act_layer(inplace=True)\n        self.conv_expand = nn.Conv2d(reduced_chs, in_chs, 1, bias=True)\n        self.gate_fn = gate_fn\n\n    def forward(self, x):\n        x_se = x.mean((2, 3), keepdim=True)\n        x_se = self.conv_reduce(x_se)\n        x_se = self.act1(x_se)\n        x_se = self.conv_expand(x_se)\n        x = x * self.gate_fn(x_se)\n        return x\n\n\nclass ConvBnAct(nn.Module):\n    def __init__(self, in_chs, out_chs, kernel_size,\n                 stride=1, pad_type='', act_layer=nn.ReLU, norm_layer=nn.BatchNorm2d, norm_kwargs=None):\n        super(ConvBnAct, self).__init__()\n        assert stride in [1, 2]\n        norm_kwargs = norm_kwargs or {}\n        self.conv = select_conv2d(in_chs, out_chs, kernel_size, stride=stride, padding=pad_type)\n        self.bn1 = norm_layer(out_chs, **norm_kwargs)\n        self.act1 = act_layer(inplace=True)\n\n    def forward(self, x):\n        x = self.conv(x)\n        x = self.bn1(x)\n        x = self.act1(x)\n        return x\n\n\nclass DepthwiseSeparableConv(nn.Module):\n    \"\"\" DepthwiseSeparable block\n    Used for DS convs in MobileNet-V1 and in the place of IR blocks with an expansion\n    factor of 1.0. This is an alternative to having a IR with optional first pw conv.\n    \"\"\"\n    def __init__(self, in_chs, out_chs, dw_kernel_size=3,\n                 stride=1, pad_type='', act_layer=nn.ReLU, noskip=False,\n                 pw_kernel_size=1, pw_act=False, se_ratio=0., se_kwargs=None,\n                 norm_layer=nn.BatchNorm2d, norm_kwargs=None, drop_connect_rate=0.):\n        super(DepthwiseSeparableConv, self).__init__()\n        assert stride in [1, 2]\n        norm_kwargs = norm_kwargs or {}\n        self.has_residual = (stride == 1 and in_chs == out_chs) and not noskip\n        self.drop_connect_rate = drop_connect_rate\n\n        self.conv_dw = select_conv2d(\n            in_chs, in_chs, dw_kernel_size, stride=stride, padding=pad_type, depthwise=True)\n        self.bn1 = norm_layer(in_chs, **norm_kwargs)\n        self.act1 = act_layer(inplace=True)\n\n        # Squeeze-and-excitation\n        if se_ratio is not None and se_ratio > 0.:\n            se_kwargs = resolve_se_args(se_kwargs, in_chs, act_layer)\n            self.se = SqueezeExcite(in_chs, se_ratio=se_ratio, **se_kwargs)\n        else:\n            self.se = nn.Identity()\n\n        self.conv_pw = select_conv2d(in_chs, out_chs, pw_kernel_size, padding=pad_type)\n        self.bn2 = norm_layer(out_chs, **norm_kwargs)\n        self.act2 = act_layer(inplace=True) if pw_act else nn.Identity()\n\n    def forward(self, x):\n        residual = x\n\n        x = self.conv_dw(x)\n        x = self.bn1(x)\n        x = self.act1(x)\n\n        x = self.se(x)\n\n        x = self.conv_pw(x)\n        x = self.bn2(x)\n        x = self.act2(x)\n\n        if self.has_residual:\n            if self.drop_connect_rate > 0.:\n                x = drop_connect(x, self.training, self.drop_connect_rate)\n            x += residual\n        return x\n\n\nclass InvertedResidual(nn.Module):\n    \"\"\" Inverted residual block w/ optional SE\"\"\"\n\n    def __init__(self, in_chs, out_chs, dw_kernel_size=3,\n                 stride=1, pad_type='', act_layer=nn.ReLU, noskip=False,\n                 exp_ratio=1.0, exp_kernel_size=1, pw_kernel_size=1,\n                 se_ratio=0., se_kwargs=None, norm_layer=nn.BatchNorm2d, norm_kwargs=None,\n                 conv_kwargs=None, drop_connect_rate=0.):\n        super(InvertedResidual, self).__init__()\n        norm_kwargs = norm_kwargs or {}\n        conv_kwargs = conv_kwargs or {}\n        mid_chs: int = make_divisible(in_chs * exp_ratio)\n        self.has_residual = (in_chs == out_chs and stride == 1) and not noskip\n        self.drop_connect_rate = drop_connect_rate\n\n        # Point-wise expansion\n        self.conv_pw = select_conv2d(in_chs, mid_chs, exp_kernel_size, padding=pad_type, **conv_kwargs)\n        self.bn1 = norm_layer(mid_chs, **norm_kwargs)\n        self.act1 = act_layer(inplace=True)\n\n        # Depth-wise convolution\n        self.conv_dw = select_conv2d(\n            mid_chs, mid_chs, dw_kernel_size, stride=stride, padding=pad_type, depthwise=True, **conv_kwargs)\n        self.bn2 = norm_layer(mid_chs, **norm_kwargs)\n        self.act2 = act_layer(inplace=True)\n\n        # Squeeze-and-excitation\n        if se_ratio is not None and se_ratio > 0.:\n            se_kwargs = resolve_se_args(se_kwargs, in_chs, act_layer)\n            self.se = SqueezeExcite(mid_chs, se_ratio=se_ratio, **se_kwargs)\n        else:\n            self.se = nn.Identity()  # for jit.script compat\n\n        # Point-wise linear projection\n        self.conv_pwl = select_conv2d(mid_chs, out_chs, pw_kernel_size, padding=pad_type, **conv_kwargs)\n        self.bn3 = norm_layer(out_chs, **norm_kwargs)\n\n    def forward(self, x):\n        residual = x\n\n        # Point-wise expansion\n        x = self.conv_pw(x)\n        x = self.bn1(x)\n        x = self.act1(x)\n\n        # Depth-wise convolution\n        x = self.conv_dw(x)\n        x = self.bn2(x)\n        x = self.act2(x)\n\n        # Squeeze-and-excitation\n        x = self.se(x)\n\n        # Point-wise linear projection\n        x = self.conv_pwl(x)\n        x = self.bn3(x)\n\n        if self.has_residual:\n            if self.drop_connect_rate > 0.:\n                x = drop_connect(x, self.training, self.drop_connect_rate)\n            x += residual\n        return x\n\n\nclass CondConvResidual(InvertedResidual):\n    \"\"\" Inverted residual block w/ CondConv routing\"\"\"\n\n    def __init__(self, in_chs, out_chs, dw_kernel_size=3,\n                 stride=1, pad_type='', act_layer=nn.ReLU, noskip=False,\n                 exp_ratio=1.0, exp_kernel_size=1, pw_kernel_size=1,\n                 se_ratio=0., se_kwargs=None, norm_layer=nn.BatchNorm2d, norm_kwargs=None,\n                 num_experts=0, drop_connect_rate=0.):\n\n        self.num_experts = num_experts\n        conv_kwargs = dict(num_experts=self.num_experts)\n\n        super(CondConvResidual, self).__init__(\n            in_chs, out_chs, dw_kernel_size=dw_kernel_size, stride=stride, pad_type=pad_type,\n            act_layer=act_layer, noskip=noskip, exp_ratio=exp_ratio, exp_kernel_size=exp_kernel_size,\n            pw_kernel_size=pw_kernel_size, se_ratio=se_ratio, se_kwargs=se_kwargs,\n            norm_layer=norm_layer, norm_kwargs=norm_kwargs, conv_kwargs=conv_kwargs,\n            drop_connect_rate=drop_connect_rate)\n\n        self.routing_fn = nn.Linear(in_chs, self.num_experts)\n\n    def forward(self, x):\n        residual = x\n\n        # CondConv routing\n        pooled_inputs = F.adaptive_avg_pool2d(x, 1).flatten(1)\n        routing_weights = torch.sigmoid(self.routing_fn(pooled_inputs))\n\n        # Point-wise expansion\n        x = self.conv_pw(x, routing_weights)\n        x = self.bn1(x)\n        x = self.act1(x)\n\n        # Depth-wise convolution\n        x = self.conv_dw(x, routing_weights)\n        x = self.bn2(x)\n        x = self.act2(x)\n\n        # Squeeze-and-excitation\n        x = self.se(x)\n\n        # Point-wise linear projection\n        x = self.conv_pwl(x, routing_weights)\n        x = self.bn3(x)\n\n        if self.has_residual:\n            if self.drop_connect_rate > 0.:\n                x = drop_connect(x, self.training, self.drop_connect_rate)\n            x += residual\n        return x\n\n\nclass EdgeResidual(nn.Module):\n    \"\"\" EdgeTPU Residual block with expansion convolution followed by pointwise-linear w/ stride\"\"\"\n\n    def __init__(self, in_chs, out_chs, exp_kernel_size=3, exp_ratio=1.0, fake_in_chs=0,\n                 stride=1, pad_type='', act_layer=nn.ReLU, noskip=False, pw_kernel_size=1,\n                 se_ratio=0., se_kwargs=None, norm_layer=nn.BatchNorm2d, norm_kwargs=None, drop_connect_rate=0.):\n        super(EdgeResidual, self).__init__()\n        norm_kwargs = norm_kwargs or {}\n        mid_chs = make_divisible(fake_in_chs * exp_ratio) if fake_in_chs > 0 else make_divisible(in_chs * exp_ratio)\n        self.has_residual = (in_chs == out_chs and stride == 1) and not noskip\n        self.drop_connect_rate = drop_connect_rate\n\n        # Expansion convolution\n        self.conv_exp = select_conv2d(in_chs, mid_chs, exp_kernel_size, padding=pad_type)\n        self.bn1 = norm_layer(mid_chs, **norm_kwargs)\n        self.act1 = act_layer(inplace=True)\n\n        # Squeeze-and-excitation\n        if se_ratio is not None and se_ratio > 0.:\n            se_kwargs = resolve_se_args(se_kwargs, in_chs, act_layer)\n            self.se = SqueezeExcite(mid_chs, se_ratio=se_ratio, **se_kwargs)\n        else:\n            self.se = nn.Identity()\n\n        # Point-wise linear projection\n        self.conv_pwl = select_conv2d(mid_chs, out_chs, pw_kernel_size, stride=stride, padding=pad_type)\n        self.bn2 = nn.BatchNorm2d(out_chs, **norm_kwargs)\n\n    def forward(self, x):\n        residual = x\n\n        # Expansion convolution\n        x = self.conv_exp(x)\n        x = self.bn1(x)\n        x = self.act1(x)\n\n        # Squeeze-and-excitation\n        x = self.se(x)\n\n        # Point-wise linear projection\n        x = self.conv_pwl(x)\n        x = self.bn2(x)\n\n        if self.has_residual:\n            if self.drop_connect_rate > 0.:\n                x = drop_connect(x, self.training, self.drop_connect_rate)\n            x += residual\n\n        return x\n\n\nclass EfficientNetBuilder:\n    \"\"\" Build Trunk Blocks for Efficient/Mobile Networks\n\n    This ended up being somewhat of a cross between\n    https://github.com/tensorflow/tpu/blob/master/models/official/mnasnet/mnasnet_models.py\n    and\n    https://github.com/facebookresearch/maskrcnn-benchmark/blob/master/maskrcnn_benchmark/modeling/backbone/fbnet_builder.py\n\n    \"\"\"\n\n    def __init__(self, channel_multiplier=1.0, channel_divisor=8, channel_min=None,\n                 pad_type='', act_layer=None, se_kwargs=None,\n                 norm_layer=nn.BatchNorm2d, norm_kwargs=None, drop_connect_rate=0.):\n        self.channel_multiplier = channel_multiplier\n        self.channel_divisor = channel_divisor\n        self.channel_min = channel_min\n        self.pad_type = pad_type\n        self.act_layer = act_layer\n        self.se_kwargs = se_kwargs\n        self.norm_layer = norm_layer\n        self.norm_kwargs = norm_kwargs\n        self.drop_connect_rate = drop_connect_rate\n\n        # updated during build\n        self.in_chs = None\n        self.block_idx = 0\n        self.block_count = 0\n\n    def _round_channels(self, chs):\n        return round_channels(chs, self.channel_multiplier, self.channel_divisor, self.channel_min)\n\n    def _make_block(self, ba):\n        bt = ba.pop('block_type')\n        ba['in_chs'] = self.in_chs\n        ba['out_chs'] = self._round_channels(ba['out_chs'])\n        if 'fake_in_chs' in ba and ba['fake_in_chs']:\n            # FIXME this is a hack to work around mismatch in origin impl input filters for EdgeTPU\n            ba['fake_in_chs'] = self._round_channels(ba['fake_in_chs'])\n        ba['norm_layer'] = self.norm_layer\n        ba['norm_kwargs'] = self.norm_kwargs\n        ba['pad_type'] = self.pad_type\n        # block act fn overrides the model default\n        ba['act_layer'] = ba['act_layer'] if ba['act_layer'] is not None else self.act_layer\n        assert ba['act_layer'] is not None\n        if bt == 'ir':\n            ba['drop_connect_rate'] = self.drop_connect_rate * self.block_idx / self.block_count\n            ba['se_kwargs'] = self.se_kwargs\n            if ba.get('num_experts', 0) > 0:\n                block = CondConvResidual(**ba)\n            else:\n                block = InvertedResidual(**ba)\n        elif bt == 'ds' or bt == 'dsa':\n            ba['drop_connect_rate'] = self.drop_connect_rate * self.block_idx / self.block_count\n            ba['se_kwargs'] = self.se_kwargs\n            block = DepthwiseSeparableConv(**ba)\n        elif bt == 'er':\n            ba['drop_connect_rate'] = self.drop_connect_rate * self.block_idx / self.block_count\n            ba['se_kwargs'] = self.se_kwargs\n            block = EdgeResidual(**ba)\n        elif bt == 'cn':\n            block = ConvBnAct(**ba)\n        else:\n            raise AssertionError('Uknkown block type (%s) while building model.' % bt)\n        self.in_chs = ba['out_chs']  # update in_chs for arg of next block\n        return block\n\n    def _make_stack(self, stack_args):\n        blocks = []\n        # each stack (stage) contains a list of block arguments\n        for i, ba in enumerate(stack_args):\n            if i >= 1:\n                # only the first block in any stack can have a stride > 1\n                ba['stride'] = 1\n            block = self._make_block(ba)\n            blocks.append(block)\n            self.block_idx += 1  # incr global idx (across all stacks)\n        return nn.Sequential(*blocks)\n\n    def __call__(self, in_chs, block_args):\n        \"\"\" Build the blocks\n        Args:\n            in_chs: Number of input-channels passed to first block\n            block_args: A list of lists, outer list defines stages, inner\n                list contains strings defining block configuration(s)\n        Return:\n             List of block stacks (each stack wrapped in nn.Sequential)\n        \"\"\"\n        self.in_chs = in_chs\n        self.block_count = sum([len(x) for x in block_args])\n        self.block_idx = 0\n        blocks = []\n        # outer list of block_args defines the stacks ('stages' by some conventions)\n        for _stack_idx, stack in enumerate(block_args):\n            assert isinstance(stack, list)\n            stack = self._make_stack(stack)\n            blocks.append(stack)\n        return blocks\n\n\ndef _parse_ksize(ss):\n    if ss.isdigit():\n        return int(ss)\n    else:\n        return [int(k) for k in ss.split('.')]\n\n\ndef _decode_block_str(block_str):\n    \"\"\" Decode block definition string\n\n    Gets a list of block arg (dicts) through a string notation of arguments.\n    E.g. ir_r2_k3_s2_e1_i32_o16_se0.25_noskip\n\n    All args can exist in any order with the exception of the leading string which\n    is assumed to indicate the block type.\n\n    leading string - block type (\n      ir = InvertedResidual, ds = DepthwiseSep, dsa = DeptwhiseSep with pw act, cn = ConvBnAct)\n    r - number of repeat blocks,\n    k - kernel size,\n    s - strides (1-9),\n    e - expansion ratio,\n    c - output channels,\n    se - squeeze/excitation ratio\n    n - activation fn ('re', 'r6', 'hs', or 'sw')\n    Args:\n        block_str: a string representation of block arguments.\n    Returns:\n        A list of block args (dicts)\n    Raises:\n        ValueError: if the string def not properly specified\n    \"\"\"\n    assert isinstance(block_str, str)\n    ops = block_str.split('_')\n    block_type = ops[0]  # take the block type off the front\n    ops = ops[1:]\n    options = {}\n    noskip = False\n    for op in ops:\n        # string options being checked on individual basis, combine if they grow\n        if op == 'noskip':\n            noskip = True\n        elif op.startswith('n'):\n            # activation fn\n            key = op[0]\n            v = op[1:]\n            if v == 're':\n                value = get_act_layer('relu')\n            elif v == 'r6':\n                value = get_act_layer('relu6')\n            elif v == 'hs':\n                value = get_act_layer('hard_swish')\n            elif v == 'sw':\n                value = get_act_layer('swish')\n            else:\n                continue\n            options[key] = value\n        else:\n            # all numeric options\n            splits = re.split(r'(\\d.*)', op)\n            if len(splits) >= 2:\n                key, value = splits[:2]\n                options[key] = value\n\n    # if act_layer is None, the model default (passed to model init) will be used\n    act_layer = options['n'] if 'n' in options else None\n    exp_kernel_size = _parse_ksize(options['a']) if 'a' in options else 1\n    pw_kernel_size = _parse_ksize(options['p']) if 'p' in options else 1\n    fake_in_chs = int(options['fc']) if 'fc' in options else 0  # FIXME hack to deal with in_chs issue in TPU def\n\n    num_repeat = int(options['r'])\n    # each type of block has different valid arguments, fill accordingly\n    if block_type == 'ir':\n        block_args = dict(\n            block_type=block_type,\n            dw_kernel_size=_parse_ksize(options['k']),\n            exp_kernel_size=exp_kernel_size,\n            pw_kernel_size=pw_kernel_size,\n            out_chs=int(options['c']),\n            exp_ratio=float(options['e']),\n            se_ratio=float(options['se']) if 'se' in options else None,\n            stride=int(options['s']),\n            act_layer=act_layer,\n            noskip=noskip,\n        )\n        if 'cc' in options:\n            block_args['num_experts'] = int(options['cc'])\n    elif block_type == 'ds' or block_type == 'dsa':\n        block_args = dict(\n            block_type=block_type,\n            dw_kernel_size=_parse_ksize(options['k']),\n            pw_kernel_size=pw_kernel_size,\n            out_chs=int(options['c']),\n            se_ratio=float(options['se']) if 'se' in options else None,\n            stride=int(options['s']),\n            act_layer=act_layer,\n            pw_act=block_type == 'dsa',\n            noskip=block_type == 'dsa' or noskip,\n        )\n    elif block_type == 'er':\n        block_args = dict(\n            block_type=block_type,\n            exp_kernel_size=_parse_ksize(options['k']),\n            pw_kernel_size=pw_kernel_size,\n            out_chs=int(options['c']),\n            exp_ratio=float(options['e']),\n            fake_in_chs=fake_in_chs,\n            se_ratio=float(options['se']) if 'se' in options else None,\n            stride=int(options['s']),\n            act_layer=act_layer,\n            noskip=noskip,\n        )\n    elif block_type == 'cn':\n        block_args = dict(\n            block_type=block_type,\n            kernel_size=int(options['k']),\n            out_chs=int(options['c']),\n            stride=int(options['s']),\n            act_layer=act_layer,\n        )\n    else:\n        raise AssertionError('Unknown block type (%s)' % block_type)\n\n    return block_args, num_repeat\n\n\ndef _scale_stage_depth(stack_args, repeats, depth_multiplier=1.0, depth_trunc='ceil'):\n    \"\"\" Per-stage depth scaling\n    Scales the block repeats in each stage. This depth scaling impl maintains\n    compatibility with the EfficientNet scaling method, while allowing sensible\n    scaling for other models that may have multiple block arg definitions in each stage.\n    \"\"\"\n\n    # We scale the total repeat count for each stage, there may be multiple\n    # block arg defs per stage so we need to sum.\n    num_repeat = sum(repeats)\n    if depth_trunc == 'round':\n        # Truncating to int by rounding allows stages with few repeats to remain\n        # proportionally smaller for longer. This is a good choice when stage definitions\n        # include single repeat stages that we'd prefer to keep that way as long as possible\n        num_repeat_scaled = max(1, round(num_repeat * depth_multiplier))\n    else:\n        # The default for EfficientNet truncates repeats to int via 'ceil'.\n        # Any multiplier > 1.0 will result in an increased depth for every stage.\n        num_repeat_scaled = int(math.ceil(num_repeat * depth_multiplier))\n\n    # Proportionally distribute repeat count scaling to each block definition in the stage.\n    # Allocation is done in reverse as it results in the first block being less likely to be scaled.\n    # The first block makes less sense to repeat in most of the arch definitions.\n    repeats_scaled = []\n    for r in repeats[::-1]:\n        rs = max(1, round((r / num_repeat * num_repeat_scaled)))\n        repeats_scaled.append(rs)\n        num_repeat -= r\n        num_repeat_scaled -= rs\n    repeats_scaled = repeats_scaled[::-1]\n\n    # Apply the calculated scaling to each block arg in the stage\n    sa_scaled = []\n    for ba, rep in zip(stack_args, repeats_scaled):\n        sa_scaled.extend([deepcopy(ba) for _ in range(rep)])\n    return sa_scaled\n\n\ndef decode_arch_def(arch_def, depth_multiplier=1.0, depth_trunc='ceil', experts_multiplier=1, fix_first_last=False):\n    arch_args = []\n    for stack_idx, block_strings in enumerate(arch_def):\n        assert isinstance(block_strings, list)\n        stack_args = []\n        repeats = []\n        for block_str in block_strings:\n            assert isinstance(block_str, str)\n            ba, rep = _decode_block_str(block_str)\n            if ba.get('num_experts', 0) > 0 and experts_multiplier > 1:\n                ba['num_experts'] *= experts_multiplier\n            stack_args.append(ba)\n            repeats.append(rep)\n        if fix_first_last and (stack_idx == 0 or stack_idx == len(arch_def) - 1):\n            arch_args.append(_scale_stage_depth(stack_args, repeats, 1.0, depth_trunc))\n        else:\n            arch_args.append(_scale_stage_depth(stack_args, repeats, depth_multiplier, depth_trunc))\n    return arch_args\n\n\ndef initialize_weight_goog(m, n='', fix_group_fanout=True):\n    # weight init as per Tensorflow Official impl\n    # https://github.com/tensorflow/tpu/blob/master/models/official/mnasnet/mnasnet_model.py\n    if isinstance(m, CondConv2d):\n        fan_out = m.kernel_size[0] * m.kernel_size[1] * m.out_channels\n        if fix_group_fanout:\n            fan_out //= m.groups\n        init_weight_fn = get_condconv_initializer(\n            lambda w: w.data.normal_(0, math.sqrt(2.0 / fan_out)), m.num_experts, m.weight_shape)\n        init_weight_fn(m.weight)\n        if m.bias is not None:\n            m.bias.data.zero_()\n    elif isinstance(m, nn.Conv2d):\n        fan_out = m.kernel_size[0] * m.kernel_size[1] * m.out_channels\n        if fix_group_fanout:\n            fan_out //= m.groups\n        m.weight.data.normal_(0, math.sqrt(2.0 / fan_out))\n        if m.bias is not None:\n            m.bias.data.zero_()\n    elif isinstance(m, nn.BatchNorm2d):\n        m.weight.data.fill_(1.0)\n        m.bias.data.zero_()\n    elif isinstance(m, nn.Linear):\n        fan_out = m.weight.size(0)  # fan-out\n        fan_in = 0\n        if 'routing_fn' in n:\n            fan_in = m.weight.size(1)\n        init_range = 1.0 / math.sqrt(fan_in + fan_out)\n        m.weight.data.uniform_(-init_range, init_range)\n        m.bias.data.zero_()\n\n\ndef initialize_weight_default(m, n=''):\n    if isinstance(m, CondConv2d):\n        init_fn = get_condconv_initializer(partial(\n            nn.init.kaiming_normal_, mode='fan_out', nonlinearity='relu'), m.num_experts, m.weight_shape)\n        init_fn(m.weight)\n    elif isinstance(m, nn.Conv2d):\n        nn.init.kaiming_normal_(m.weight, mode='fan_out', nonlinearity='relu')\n    elif isinstance(m, nn.BatchNorm2d):\n        m.weight.data.fill_(1.0)\n        m.bias.data.zero_()\n    elif isinstance(m, nn.Linear):\n        nn.init.kaiming_uniform_(m.weight, mode='fan_in', nonlinearity='linear')\n"
  },
  {
    "path": "modules/control/proc/normalbae/nets/submodules/efficientnet_repo/geffnet/gen_efficientnet.py",
    "content": "\"\"\" Generic Efficient Networks\n\nA generic MobileNet class with building blocks to support a variety of models:\n\n* EfficientNet (B0-B8, L2 + Tensorflow pretrained AutoAug/RandAug/AdvProp/NoisyStudent ports)\n  - EfficientNet: Rethinking Model Scaling for CNNs - https://arxiv.org/abs/1905.11946\n  - CondConv: Conditionally Parameterized Convolutions for Efficient Inference - https://arxiv.org/abs/1904.04971\n  - Adversarial Examples Improve Image Recognition - https://arxiv.org/abs/1911.09665\n  - Self-training with Noisy Student improves ImageNet classification - https://arxiv.org/abs/1911.04252\n\n* EfficientNet-Lite\n\n* MixNet (Small, Medium, and Large)\n  - MixConv: Mixed Depthwise Convolutional Kernels - https://arxiv.org/abs/1907.09595\n\n* MNasNet B1, A1 (SE), Small\n  - MnasNet: Platform-Aware Neural Architecture Search for Mobile - https://arxiv.org/abs/1807.11626\n\n* FBNet-C\n  - FBNet: Hardware-Aware Efficient ConvNet Design via Differentiable NAS - https://arxiv.org/abs/1812.03443\n\n* Single-Path NAS Pixel1\n  - Single-Path NAS: Designing Hardware-Efficient ConvNets - https://arxiv.org/abs/1904.02877\n\n* And likely more...\n\nHacked together by / Copyright 2020 Ross Wightman\n\"\"\"\nimport torch.nn as nn\nimport torch.nn.functional as F\n\nfrom .config import layer_config_kwargs, is_scriptable\nfrom .conv2d_layers import select_conv2d\nfrom .helpers import load_pretrained\nfrom .efficientnet_builder import *\n\n__all__ = ['GenEfficientNet', 'mnasnet_050', 'mnasnet_075', 'mnasnet_100', 'mnasnet_b1', 'mnasnet_140',\n           'semnasnet_050', 'semnasnet_075', 'semnasnet_100', 'mnasnet_a1', 'semnasnet_140', 'mnasnet_small',\n           'mobilenetv2_100', 'mobilenetv2_140', 'mobilenetv2_110d', 'mobilenetv2_120d',\n           'fbnetc_100', 'spnasnet_100', 'efficientnet_b0', 'efficientnet_b1', 'efficientnet_b2',  'efficientnet_b3',\n           'efficientnet_b4', 'efficientnet_b5', 'efficientnet_b6', 'efficientnet_b7', 'efficientnet_b8',\n           'efficientnet_l2', 'efficientnet_es', 'efficientnet_em', 'efficientnet_el',\n           'efficientnet_cc_b0_4e', 'efficientnet_cc_b0_8e', 'efficientnet_cc_b1_8e',\n           'efficientnet_lite0', 'efficientnet_lite1', 'efficientnet_lite2', 'efficientnet_lite3', 'efficientnet_lite4',\n           'tf_efficientnet_b0', 'tf_efficientnet_b1', 'tf_efficientnet_b2', 'tf_efficientnet_b3',\n           'tf_efficientnet_b4', 'tf_efficientnet_b5', 'tf_efficientnet_b6', 'tf_efficientnet_b7', 'tf_efficientnet_b8',\n           'tf_efficientnet_b0_ap', 'tf_efficientnet_b1_ap', 'tf_efficientnet_b2_ap', 'tf_efficientnet_b3_ap',\n           'tf_efficientnet_b4_ap', 'tf_efficientnet_b5_ap', 'tf_efficientnet_b6_ap', 'tf_efficientnet_b7_ap',\n           'tf_efficientnet_b8_ap', 'tf_efficientnet_b0_ns', 'tf_efficientnet_b1_ns', 'tf_efficientnet_b2_ns',\n           'tf_efficientnet_b3_ns', 'tf_efficientnet_b4_ns', 'tf_efficientnet_b5_ns', 'tf_efficientnet_b6_ns',\n           'tf_efficientnet_b7_ns', 'tf_efficientnet_l2_ns', 'tf_efficientnet_l2_ns_475',\n           'tf_efficientnet_es', 'tf_efficientnet_em', 'tf_efficientnet_el',\n           'tf_efficientnet_cc_b0_4e', 'tf_efficientnet_cc_b0_8e', 'tf_efficientnet_cc_b1_8e',\n           'tf_efficientnet_lite0', 'tf_efficientnet_lite1', 'tf_efficientnet_lite2', 'tf_efficientnet_lite3',\n           'tf_efficientnet_lite4',\n           'mixnet_s', 'mixnet_m', 'mixnet_l', 'mixnet_xl', 'tf_mixnet_s', 'tf_mixnet_m', 'tf_mixnet_l']\n\n\nmodel_urls = {\n    'mnasnet_050': None,\n    'mnasnet_075': None,\n    'mnasnet_100':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/mnasnet_b1-74cb7081.pth',\n    'mnasnet_140': None,\n    'mnasnet_small': None,\n\n    'semnasnet_050': None,\n    'semnasnet_075': None,\n    'semnasnet_100':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/mnasnet_a1-d9418771.pth',\n    'semnasnet_140': None,\n\n    'mobilenetv2_100':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/mobilenetv2_100_ra-b33bc2c4.pth',\n    'mobilenetv2_110d':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/mobilenetv2_110d_ra-77090ade.pth',\n    'mobilenetv2_120d':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/mobilenetv2_120d_ra-5987e2ed.pth',\n    'mobilenetv2_140':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/mobilenetv2_140_ra-21a4e913.pth',\n\n    'fbnetc_100':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/fbnetc_100-c345b898.pth',\n    'spnasnet_100':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/spnasnet_100-048bc3f4.pth',\n\n    'efficientnet_b0':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/efficientnet_b0_ra-3dd342df.pth',\n    'efficientnet_b1':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/efficientnet_b1-533bc792.pth',\n    'efficientnet_b2':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/efficientnet_b2_ra-bcdf34b7.pth',\n    'efficientnet_b3':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/efficientnet_b3_ra2-cf984f9c.pth',\n    'efficientnet_b4': None,\n    'efficientnet_b5': None,\n    'efficientnet_b6': None,\n    'efficientnet_b7': None,\n    'efficientnet_b8': None,\n    'efficientnet_l2': None,\n\n    'efficientnet_es':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/efficientnet_es_ra-f111e99c.pth',\n    'efficientnet_em': None,\n    'efficientnet_el': None,\n\n    'efficientnet_cc_b0_4e': None,\n    'efficientnet_cc_b0_8e': None,\n    'efficientnet_cc_b1_8e': None,\n\n    'efficientnet_lite0': 'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/efficientnet_lite0_ra-37913777.pth',\n    'efficientnet_lite1': None,\n    'efficientnet_lite2': None,\n    'efficientnet_lite3': None,\n    'efficientnet_lite4': None,\n\n    'tf_efficientnet_b0':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_b0_aa-827b6e33.pth',\n    'tf_efficientnet_b1':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_b1_aa-ea7a6ee0.pth',\n    'tf_efficientnet_b2':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_b2_aa-60c94f97.pth',\n    'tf_efficientnet_b3':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_b3_aa-84b4657e.pth',\n    'tf_efficientnet_b4':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_b4_aa-818f208c.pth',\n    'tf_efficientnet_b5':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_b5_ra-9a3e5369.pth',\n    'tf_efficientnet_b6':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_b6_aa-80ba17e4.pth',\n    'tf_efficientnet_b7':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_b7_ra-6c08e654.pth',\n    'tf_efficientnet_b8':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_b8_ra-572d5dd9.pth',\n\n    'tf_efficientnet_b0_ap':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_b0_ap-f262efe1.pth',\n    'tf_efficientnet_b1_ap':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_b1_ap-44ef0a3d.pth',\n    'tf_efficientnet_b2_ap':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_b2_ap-2f8e7636.pth',\n    'tf_efficientnet_b3_ap':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_b3_ap-aad25bdd.pth',\n    'tf_efficientnet_b4_ap':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_b4_ap-dedb23e6.pth',\n    'tf_efficientnet_b5_ap':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_b5_ap-9e82fae8.pth',\n    'tf_efficientnet_b6_ap':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_b6_ap-4ffb161f.pth',\n    'tf_efficientnet_b7_ap':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_b7_ap-ddb28fec.pth',\n    'tf_efficientnet_b8_ap':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_b8_ap-00e169fa.pth',\n\n    'tf_efficientnet_b0_ns':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_b0_ns-c0e6a31c.pth',\n    'tf_efficientnet_b1_ns':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_b1_ns-99dd0c41.pth',\n    'tf_efficientnet_b2_ns':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_b2_ns-00306e48.pth',\n    'tf_efficientnet_b3_ns':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_b3_ns-9d44bf68.pth',\n    'tf_efficientnet_b4_ns':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_b4_ns-d6313a46.pth',\n    'tf_efficientnet_b5_ns':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_b5_ns-6f26d0cf.pth',\n    'tf_efficientnet_b6_ns':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_b6_ns-51548356.pth',\n    'tf_efficientnet_b7_ns':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_b7_ns-1dbc32de.pth',\n    'tf_efficientnet_l2_ns_475':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_l2_ns_475-bebbd00a.pth',\n    'tf_efficientnet_l2_ns':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_l2_ns-df73bb44.pth',\n\n    'tf_efficientnet_es':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_es-ca1afbfe.pth',\n    'tf_efficientnet_em':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_em-e78cfe58.pth',\n    'tf_efficientnet_el':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_el-5143854e.pth',\n\n    'tf_efficientnet_cc_b0_4e':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_cc_b0_4e-4362b6b2.pth',\n    'tf_efficientnet_cc_b0_8e':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_cc_b0_8e-66184a25.pth',\n    'tf_efficientnet_cc_b1_8e':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_cc_b1_8e-f7c79ae1.pth',\n\n    'tf_efficientnet_lite0':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_lite0-0aa007d2.pth',\n    'tf_efficientnet_lite1':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_lite1-bde8b488.pth',\n    'tf_efficientnet_lite2':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_lite2-dcccb7df.pth',\n    'tf_efficientnet_lite3':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_lite3-b733e338.pth',\n    'tf_efficientnet_lite4':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_efficientnet_lite4-741542c3.pth',\n\n    'mixnet_s': 'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/mixnet_s-a907afbc.pth',\n    'mixnet_m': 'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/mixnet_m-4647fc68.pth',\n    'mixnet_l': 'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/mixnet_l-5a9a2ed8.pth',\n    'mixnet_xl': 'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/mixnet_xl_ra-aac3c00c.pth',\n\n    'tf_mixnet_s':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_mixnet_s-89d3354b.pth',\n    'tf_mixnet_m':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_mixnet_m-0f4d8805.pth',\n    'tf_mixnet_l':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_mixnet_l-6c92e0c8.pth',\n}\n\n\nclass GenEfficientNet(nn.Module):\n    \"\"\" Generic EfficientNets\n\n    An implementation of mobile optimized networks that covers:\n      * EfficientNet (B0-B8, L2, CondConv, EdgeTPU)\n      * MixNet (Small, Medium, and Large, XL)\n      * MNASNet A1, B1, and small\n      * FBNet C\n      * Single-Path NAS Pixel1\n    \"\"\"\n\n    def __init__(self, block_args, num_classes=1000, in_chans=3, num_features=1280, stem_size=32, fix_stem=False,\n                 channel_multiplier=1.0, channel_divisor=8, channel_min=None,\n                 pad_type='', act_layer=nn.ReLU, drop_rate=0., drop_connect_rate=0.,\n                 se_kwargs=None, norm_layer=nn.BatchNorm2d, norm_kwargs=None,\n                 weight_init='goog'):\n        super(GenEfficientNet, self).__init__()\n        self.drop_rate = drop_rate\n\n        if not fix_stem:\n            stem_size = round_channels(stem_size, channel_multiplier, channel_divisor, channel_min)\n        self.conv_stem = select_conv2d(in_chans, stem_size, 3, stride=2, padding=pad_type)\n        self.bn1 = norm_layer(stem_size, **norm_kwargs)\n        self.act1 = act_layer(inplace=True)\n        in_chs = stem_size\n\n        builder = EfficientNetBuilder(\n            channel_multiplier, channel_divisor, channel_min,\n            pad_type, act_layer, se_kwargs, norm_layer, norm_kwargs, drop_connect_rate)\n        self.blocks = nn.Sequential(*builder(in_chs, block_args))\n        in_chs = builder.in_chs\n\n        self.conv_head = select_conv2d(in_chs, num_features, 1, padding=pad_type)\n        self.bn2 = norm_layer(num_features, **norm_kwargs)\n        self.act2 = act_layer(inplace=True)\n        self.global_pool = nn.AdaptiveAvgPool2d(1)\n        self.classifier = nn.Linear(num_features, num_classes)\n\n        for n, m in self.named_modules():\n            if weight_init == 'goog':\n                initialize_weight_goog(m, n)\n            else:\n                initialize_weight_default(m, n)\n\n    def features(self, x):\n        x = self.conv_stem(x)\n        x = self.bn1(x)\n        x = self.act1(x)\n        x = self.blocks(x)\n        x = self.conv_head(x)\n        x = self.bn2(x)\n        x = self.act2(x)\n        return x\n\n    def as_sequential(self):\n        layers = [self.conv_stem, self.bn1, self.act1]\n        layers.extend(self.blocks)\n        layers.extend([\n            self.conv_head, self.bn2, self.act2,\n            self.global_pool, nn.Flatten(), nn.Dropout(self.drop_rate), self.classifier])\n        return nn.Sequential(*layers)\n\n    def forward(self, x):\n        x = self.features(x)\n        x = self.global_pool(x)\n        x = x.flatten(1)\n        if self.drop_rate > 0.:\n            x = F.dropout(x, p=self.drop_rate, training=self.training)\n        return self.classifier(x)\n\n\ndef _create_model(model_kwargs, variant, pretrained=False):\n    as_sequential = model_kwargs.pop('as_sequential', False)\n    model = GenEfficientNet(**model_kwargs)\n    if pretrained:\n        load_pretrained(model, model_urls[variant])\n    if as_sequential:\n        model = model.as_sequential()\n    return model\n\n\ndef _gen_mnasnet_a1(variant, channel_multiplier=1.0, pretrained=False, **kwargs):\n    \"\"\"Creates a mnasnet-a1 model.\n\n    Ref impl: https://github.com/tensorflow/tpu/tree/master/models/official/mnasnet\n    Paper: https://arxiv.org/pdf/1807.11626.pdf.\n\n    Args:\n      channel_multiplier: multiplier to number of channels per layer.\n    \"\"\"\n    arch_def = [\n        # stage 0, 112x112 in\n        ['ds_r1_k3_s1_e1_c16_noskip'],\n        # stage 1, 112x112 in\n        ['ir_r2_k3_s2_e6_c24'],\n        # stage 2, 56x56 in\n        ['ir_r3_k5_s2_e3_c40_se0.25'],\n        # stage 3, 28x28 in\n        ['ir_r4_k3_s2_e6_c80'],\n        # stage 4, 14x14in\n        ['ir_r2_k3_s1_e6_c112_se0.25'],\n        # stage 5, 14x14in\n        ['ir_r3_k5_s2_e6_c160_se0.25'],\n        # stage 6, 7x7 in\n        ['ir_r1_k3_s1_e6_c320'],\n    ]\n    with layer_config_kwargs(kwargs):\n        model_kwargs = dict(\n            block_args=decode_arch_def(arch_def),\n            stem_size=32,\n            channel_multiplier=channel_multiplier,\n            act_layer=resolve_act_layer(kwargs, 'relu'),\n            norm_kwargs=resolve_bn_args(kwargs),\n            **kwargs\n        )\n        model = _create_model(model_kwargs, variant, pretrained)\n    return model\n\n\ndef _gen_mnasnet_b1(variant, channel_multiplier=1.0, pretrained=False, **kwargs):\n    \"\"\"Creates a mnasnet-b1 model.\n\n    Ref impl: https://github.com/tensorflow/tpu/tree/master/models/official/mnasnet\n    Paper: https://arxiv.org/pdf/1807.11626.pdf.\n\n    Args:\n      channel_multiplier: multiplier to number of channels per layer.\n    \"\"\"\n    arch_def = [\n        # stage 0, 112x112 in\n        ['ds_r1_k3_s1_c16_noskip'],\n        # stage 1, 112x112 in\n        ['ir_r3_k3_s2_e3_c24'],\n        # stage 2, 56x56 in\n        ['ir_r3_k5_s2_e3_c40'],\n        # stage 3, 28x28 in\n        ['ir_r3_k5_s2_e6_c80'],\n        # stage 4, 14x14in\n        ['ir_r2_k3_s1_e6_c96'],\n        # stage 5, 14x14in\n        ['ir_r4_k5_s2_e6_c192'],\n        # stage 6, 7x7 in\n        ['ir_r1_k3_s1_e6_c320_noskip']\n    ]\n    with layer_config_kwargs(kwargs):\n        model_kwargs = dict(\n            block_args=decode_arch_def(arch_def),\n            stem_size=32,\n            channel_multiplier=channel_multiplier,\n            act_layer=resolve_act_layer(kwargs, 'relu'),\n            norm_kwargs=resolve_bn_args(kwargs),\n            **kwargs\n        )\n        model = _create_model(model_kwargs, variant, pretrained)\n    return model\n\n\ndef _gen_mnasnet_small(variant, channel_multiplier=1.0, pretrained=False, **kwargs):\n    \"\"\"Creates a mnasnet-b1 model.\n\n    Ref impl: https://github.com/tensorflow/tpu/tree/master/models/official/mnasnet\n    Paper: https://arxiv.org/pdf/1807.11626.pdf.\n\n    Args:\n      channel_multiplier: multiplier to number of channels per layer.\n    \"\"\"\n    arch_def = [\n        ['ds_r1_k3_s1_c8'],\n        ['ir_r1_k3_s2_e3_c16'],\n        ['ir_r2_k3_s2_e6_c16'],\n        ['ir_r4_k5_s2_e6_c32_se0.25'],\n        ['ir_r3_k3_s1_e6_c32_se0.25'],\n        ['ir_r3_k5_s2_e6_c88_se0.25'],\n        ['ir_r1_k3_s1_e6_c144']\n    ]\n    with layer_config_kwargs(kwargs):\n        model_kwargs = dict(\n            block_args=decode_arch_def(arch_def),\n            stem_size=8,\n            channel_multiplier=channel_multiplier,\n            act_layer=resolve_act_layer(kwargs, 'relu'),\n            norm_kwargs=resolve_bn_args(kwargs),\n            **kwargs\n        )\n        model = _create_model(model_kwargs, variant, pretrained)\n    return model\n\n\ndef _gen_mobilenet_v2(\n        variant, channel_multiplier=1.0, depth_multiplier=1.0, fix_stem_head=False, pretrained=False, **kwargs):\n    \"\"\" Generate MobileNet-V2 network\n    Ref impl: https://github.com/tensorflow/models/blob/master/research/slim/nets/mobilenet/mobilenet_v2.py\n    Paper: https://arxiv.org/abs/1801.04381\n    \"\"\"\n    arch_def = [\n        ['ds_r1_k3_s1_c16'],\n        ['ir_r2_k3_s2_e6_c24'],\n        ['ir_r3_k3_s2_e6_c32'],\n        ['ir_r4_k3_s2_e6_c64'],\n        ['ir_r3_k3_s1_e6_c96'],\n        ['ir_r3_k3_s2_e6_c160'],\n        ['ir_r1_k3_s1_e6_c320'],\n    ]\n    with layer_config_kwargs(kwargs):\n        model_kwargs = dict(\n            block_args=decode_arch_def(arch_def, depth_multiplier=depth_multiplier, fix_first_last=fix_stem_head),\n            num_features=1280 if fix_stem_head else round_channels(1280, channel_multiplier, 8, None),\n            stem_size=32,\n            fix_stem=fix_stem_head,\n            channel_multiplier=channel_multiplier,\n            norm_kwargs=resolve_bn_args(kwargs),\n            act_layer=nn.ReLU6,\n            **kwargs\n        )\n        model = _create_model(model_kwargs, variant, pretrained)\n    return model\n\n\ndef _gen_fbnetc(variant, channel_multiplier=1.0, pretrained=False, **kwargs):\n    \"\"\" FBNet-C\n\n        Paper: https://arxiv.org/abs/1812.03443\n        Ref Impl: https://github.com/facebookresearch/maskrcnn-benchmark/blob/master/maskrcnn_benchmark/modeling/backbone/fbnet_modeldef.py\n\n        NOTE: the impl above does not relate to the 'C' variant here, that was derived from paper,\n        it was used to confirm some building block details\n    \"\"\"\n    arch_def = [\n        ['ir_r1_k3_s1_e1_c16'],\n        ['ir_r1_k3_s2_e6_c24', 'ir_r2_k3_s1_e1_c24'],\n        ['ir_r1_k5_s2_e6_c32', 'ir_r1_k5_s1_e3_c32', 'ir_r1_k5_s1_e6_c32', 'ir_r1_k3_s1_e6_c32'],\n        ['ir_r1_k5_s2_e6_c64', 'ir_r1_k5_s1_e3_c64', 'ir_r2_k5_s1_e6_c64'],\n        ['ir_r3_k5_s1_e6_c112', 'ir_r1_k5_s1_e3_c112'],\n        ['ir_r4_k5_s2_e6_c184'],\n        ['ir_r1_k3_s1_e6_c352'],\n    ]\n    with layer_config_kwargs(kwargs):\n        model_kwargs = dict(\n            block_args=decode_arch_def(arch_def),\n            stem_size=16,\n            num_features=1984,  # paper suggests this, but is not 100% clear\n            channel_multiplier=channel_multiplier,\n            act_layer=resolve_act_layer(kwargs, 'relu'),\n            norm_kwargs=resolve_bn_args(kwargs),\n            **kwargs\n        )\n        model = _create_model(model_kwargs, variant, pretrained)\n    return model\n\n\ndef _gen_spnasnet(variant, channel_multiplier=1.0, pretrained=False, **kwargs):\n    \"\"\"Creates the Single-Path NAS model from search targeted for Pixel1 phone.\n\n    Paper: https://arxiv.org/abs/1904.02877\n\n    Args:\n      channel_multiplier: multiplier to number of channels per layer.\n    \"\"\"\n    arch_def = [\n        # stage 0, 112x112 in\n        ['ds_r1_k3_s1_c16_noskip'],\n        # stage 1, 112x112 in\n        ['ir_r3_k3_s2_e3_c24'],\n        # stage 2, 56x56 in\n        ['ir_r1_k5_s2_e6_c40', 'ir_r3_k3_s1_e3_c40'],\n        # stage 3, 28x28 in\n        ['ir_r1_k5_s2_e6_c80', 'ir_r3_k3_s1_e3_c80'],\n        # stage 4, 14x14in\n        ['ir_r1_k5_s1_e6_c96', 'ir_r3_k5_s1_e3_c96'],\n        # stage 5, 14x14in\n        ['ir_r4_k5_s2_e6_c192'],\n        # stage 6, 7x7 in\n        ['ir_r1_k3_s1_e6_c320_noskip']\n    ]\n    with layer_config_kwargs(kwargs):\n        model_kwargs = dict(\n            block_args=decode_arch_def(arch_def),\n            stem_size=32,\n            channel_multiplier=channel_multiplier,\n            act_layer=resolve_act_layer(kwargs, 'relu'),\n            norm_kwargs=resolve_bn_args(kwargs),\n            **kwargs\n        )\n        model = _create_model(model_kwargs, variant, pretrained)\n    return model\n\n\ndef _gen_efficientnet(variant, channel_multiplier=1.0, depth_multiplier=1.0, pretrained=False, **kwargs):\n    \"\"\"Creates an EfficientNet model.\n\n    Ref impl: https://github.com/tensorflow/tpu/blob/master/models/official/efficientnet/efficientnet_model.py\n    Paper: https://arxiv.org/abs/1905.11946\n\n    EfficientNet params\n    name: (channel_multiplier, depth_multiplier, resolution, dropout_rate)\n    'efficientnet-b0': (1.0, 1.0, 224, 0.2),\n    'efficientnet-b1': (1.0, 1.1, 240, 0.2),\n    'efficientnet-b2': (1.1, 1.2, 260, 0.3),\n    'efficientnet-b3': (1.2, 1.4, 300, 0.3),\n    'efficientnet-b4': (1.4, 1.8, 380, 0.4),\n    'efficientnet-b5': (1.6, 2.2, 456, 0.4),\n    'efficientnet-b6': (1.8, 2.6, 528, 0.5),\n    'efficientnet-b7': (2.0, 3.1, 600, 0.5),\n    'efficientnet-b8': (2.2, 3.6, 672, 0.5),\n\n    Args:\n      channel_multiplier: multiplier to number of channels per layer\n      depth_multiplier: multiplier to number of repeats per stage\n\n    \"\"\"\n    arch_def = [\n        ['ds_r1_k3_s1_e1_c16_se0.25'],\n        ['ir_r2_k3_s2_e6_c24_se0.25'],\n        ['ir_r2_k5_s2_e6_c40_se0.25'],\n        ['ir_r3_k3_s2_e6_c80_se0.25'],\n        ['ir_r3_k5_s1_e6_c112_se0.25'],\n        ['ir_r4_k5_s2_e6_c192_se0.25'],\n        ['ir_r1_k3_s1_e6_c320_se0.25'],\n    ]\n    with layer_config_kwargs(kwargs):\n        model_kwargs = dict(\n            block_args=decode_arch_def(arch_def, depth_multiplier),\n            num_features=round_channels(1280, channel_multiplier, 8, None),\n            stem_size=32,\n            channel_multiplier=channel_multiplier,\n            act_layer=resolve_act_layer(kwargs, 'swish'),\n            norm_kwargs=resolve_bn_args(kwargs),\n            **kwargs,\n        )\n        model = _create_model(model_kwargs, variant, pretrained)\n    return model\n\n\ndef _gen_efficientnet_edge(variant, channel_multiplier=1.0, depth_multiplier=1.0, pretrained=False, **kwargs):\n    arch_def = [\n        # NOTE `fc` is present to override a mismatch between stem channels and in chs not\n        # present in other models\n        ['er_r1_k3_s1_e4_c24_fc24_noskip'],\n        ['er_r2_k3_s2_e8_c32'],\n        ['er_r4_k3_s2_e8_c48'],\n        ['ir_r5_k5_s2_e8_c96'],\n        ['ir_r4_k5_s1_e8_c144'],\n        ['ir_r2_k5_s2_e8_c192'],\n    ]\n    with layer_config_kwargs(kwargs):\n        model_kwargs = dict(\n            block_args=decode_arch_def(arch_def, depth_multiplier),\n            num_features=round_channels(1280, channel_multiplier, 8, None),\n            stem_size=32,\n            channel_multiplier=channel_multiplier,\n            act_layer=resolve_act_layer(kwargs, 'relu'),\n            norm_kwargs=resolve_bn_args(kwargs),\n            **kwargs,\n        )\n        model = _create_model(model_kwargs, variant, pretrained)\n    return model\n\n\ndef _gen_efficientnet_condconv(\n        variant, channel_multiplier=1.0, depth_multiplier=1.0, experts_multiplier=1, pretrained=False, **kwargs):\n    \"\"\"Creates an efficientnet-condconv model.\"\"\"\n    arch_def = [\n      ['ds_r1_k3_s1_e1_c16_se0.25'],\n      ['ir_r2_k3_s2_e6_c24_se0.25'],\n      ['ir_r2_k5_s2_e6_c40_se0.25'],\n      ['ir_r3_k3_s2_e6_c80_se0.25'],\n      ['ir_r3_k5_s1_e6_c112_se0.25_cc4'],\n      ['ir_r4_k5_s2_e6_c192_se0.25_cc4'],\n      ['ir_r1_k3_s1_e6_c320_se0.25_cc4'],\n    ]\n    with layer_config_kwargs(kwargs):\n        model_kwargs = dict(\n            block_args=decode_arch_def(arch_def, depth_multiplier, experts_multiplier=experts_multiplier),\n            num_features=round_channels(1280, channel_multiplier, 8, None),\n            stem_size=32,\n            channel_multiplier=channel_multiplier,\n            act_layer=resolve_act_layer(kwargs, 'swish'),\n            norm_kwargs=resolve_bn_args(kwargs),\n            **kwargs,\n        )\n        model = _create_model(model_kwargs, variant, pretrained)\n    return model\n\n\ndef _gen_efficientnet_lite(variant, channel_multiplier=1.0, depth_multiplier=1.0, pretrained=False, **kwargs):\n    \"\"\"Creates an EfficientNet-Lite model.\n\n    Ref impl: https://github.com/tensorflow/tpu/tree/master/models/official/efficientnet/lite\n    Paper: https://arxiv.org/abs/1905.11946\n\n    EfficientNet params\n    name: (channel_multiplier, depth_multiplier, resolution, dropout_rate)\n      'efficientnet-lite0': (1.0, 1.0, 224, 0.2),\n      'efficientnet-lite1': (1.0, 1.1, 240, 0.2),\n      'efficientnet-lite2': (1.1, 1.2, 260, 0.3),\n      'efficientnet-lite3': (1.2, 1.4, 280, 0.3),\n      'efficientnet-lite4': (1.4, 1.8, 300, 0.3),\n\n    Args:\n      channel_multiplier: multiplier to number of channels per layer\n      depth_multiplier: multiplier to number of repeats per stage\n    \"\"\"\n    arch_def = [\n        ['ds_r1_k3_s1_e1_c16'],\n        ['ir_r2_k3_s2_e6_c24'],\n        ['ir_r2_k5_s2_e6_c40'],\n        ['ir_r3_k3_s2_e6_c80'],\n        ['ir_r3_k5_s1_e6_c112'],\n        ['ir_r4_k5_s2_e6_c192'],\n        ['ir_r1_k3_s1_e6_c320'],\n    ]\n    with layer_config_kwargs(kwargs):\n        model_kwargs = dict(\n            block_args=decode_arch_def(arch_def, depth_multiplier, fix_first_last=True),\n            num_features=1280,\n            stem_size=32,\n            fix_stem=True,\n            channel_multiplier=channel_multiplier,\n            act_layer=nn.ReLU6,\n            norm_kwargs=resolve_bn_args(kwargs),\n            **kwargs,\n        )\n        model = _create_model(model_kwargs, variant, pretrained)\n    return model\n\n\ndef _gen_mixnet_s(variant, channel_multiplier=1.0, pretrained=False, **kwargs):\n    \"\"\"Creates a MixNet Small model.\n\n    Ref impl: https://github.com/tensorflow/tpu/tree/master/models/official/mnasnet/mixnet\n    Paper: https://arxiv.org/abs/1907.09595\n    \"\"\"\n    arch_def = [\n        # stage 0, 112x112 in\n        ['ds_r1_k3_s1_e1_c16'],  # relu\n        # stage 1, 112x112 in\n        ['ir_r1_k3_a1.1_p1.1_s2_e6_c24', 'ir_r1_k3_a1.1_p1.1_s1_e3_c24'],  # relu\n        # stage 2, 56x56 in\n        ['ir_r1_k3.5.7_s2_e6_c40_se0.5_nsw', 'ir_r3_k3.5_a1.1_p1.1_s1_e6_c40_se0.5_nsw'],  # swish\n        # stage 3, 28x28 in\n        ['ir_r1_k3.5.7_p1.1_s2_e6_c80_se0.25_nsw', 'ir_r2_k3.5_p1.1_s1_e6_c80_se0.25_nsw'],  # swish\n        # stage 4, 14x14in\n        ['ir_r1_k3.5.7_a1.1_p1.1_s1_e6_c120_se0.5_nsw', 'ir_r2_k3.5.7.9_a1.1_p1.1_s1_e3_c120_se0.5_nsw'],  # swish\n        # stage 5, 14x14in\n        ['ir_r1_k3.5.7.9.11_s2_e6_c200_se0.5_nsw', 'ir_r2_k3.5.7.9_p1.1_s1_e6_c200_se0.5_nsw'],  # swish\n        # 7x7\n    ]\n    with layer_config_kwargs(kwargs):\n        model_kwargs = dict(\n            block_args=decode_arch_def(arch_def),\n            num_features=1536,\n            stem_size=16,\n            channel_multiplier=channel_multiplier,\n            act_layer=resolve_act_layer(kwargs, 'relu'),\n            norm_kwargs=resolve_bn_args(kwargs),\n            **kwargs\n        )\n        model = _create_model(model_kwargs, variant, pretrained)\n    return model\n\n\ndef _gen_mixnet_m(variant, channel_multiplier=1.0, depth_multiplier=1.0, pretrained=False, **kwargs):\n    \"\"\"Creates a MixNet Medium-Large model.\n\n    Ref impl: https://github.com/tensorflow/tpu/tree/master/models/official/mnasnet/mixnet\n    Paper: https://arxiv.org/abs/1907.09595\n    \"\"\"\n    arch_def = [\n        # stage 0, 112x112 in\n        ['ds_r1_k3_s1_e1_c24'],  # relu\n        # stage 1, 112x112 in\n        ['ir_r1_k3.5.7_a1.1_p1.1_s2_e6_c32', 'ir_r1_k3_a1.1_p1.1_s1_e3_c32'],  # relu\n        # stage 2, 56x56 in\n        ['ir_r1_k3.5.7.9_s2_e6_c40_se0.5_nsw', 'ir_r3_k3.5_a1.1_p1.1_s1_e6_c40_se0.5_nsw'],  # swish\n        # stage 3, 28x28 in\n        ['ir_r1_k3.5.7_s2_e6_c80_se0.25_nsw', 'ir_r3_k3.5.7.9_a1.1_p1.1_s1_e6_c80_se0.25_nsw'],  # swish\n        # stage 4, 14x14in\n        ['ir_r1_k3_s1_e6_c120_se0.5_nsw', 'ir_r3_k3.5.7.9_a1.1_p1.1_s1_e3_c120_se0.5_nsw'],  # swish\n        # stage 5, 14x14in\n        ['ir_r1_k3.5.7.9_s2_e6_c200_se0.5_nsw', 'ir_r3_k3.5.7.9_p1.1_s1_e6_c200_se0.5_nsw'],  # swish\n        # 7x7\n    ]\n    with layer_config_kwargs(kwargs):\n        model_kwargs = dict(\n            block_args=decode_arch_def(arch_def, depth_multiplier, depth_trunc='round'),\n            num_features=1536,\n            stem_size=24,\n            channel_multiplier=channel_multiplier,\n            act_layer=resolve_act_layer(kwargs, 'relu'),\n            norm_kwargs=resolve_bn_args(kwargs),\n            **kwargs\n        )\n        model = _create_model(model_kwargs, variant, pretrained)\n    return model\n\n\ndef mnasnet_050(pretrained=False, **kwargs):\n    \"\"\" MNASNet B1, depth multiplier of 0.5. \"\"\"\n    model = _gen_mnasnet_b1('mnasnet_050', 0.5, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef mnasnet_075(pretrained=False, **kwargs):\n    \"\"\" MNASNet B1, depth multiplier of 0.75. \"\"\"\n    model = _gen_mnasnet_b1('mnasnet_075', 0.75, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef mnasnet_100(pretrained=False, **kwargs):\n    \"\"\" MNASNet B1, depth multiplier of 1.0. \"\"\"\n    model = _gen_mnasnet_b1('mnasnet_100', 1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef mnasnet_b1(pretrained=False, **kwargs):\n    \"\"\" MNASNet B1, depth multiplier of 1.0. \"\"\"\n    return mnasnet_100(pretrained, **kwargs)\n\n\ndef mnasnet_140(pretrained=False, **kwargs):\n    \"\"\" MNASNet B1,  depth multiplier of 1.4 \"\"\"\n    model = _gen_mnasnet_b1('mnasnet_140', 1.4, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef semnasnet_050(pretrained=False, **kwargs):\n    \"\"\" MNASNet A1 (w/ SE), depth multiplier of 0.5 \"\"\"\n    model = _gen_mnasnet_a1('semnasnet_050', 0.5, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef semnasnet_075(pretrained=False, **kwargs):\n    \"\"\" MNASNet A1 (w/ SE),  depth multiplier of 0.75. \"\"\"\n    model = _gen_mnasnet_a1('semnasnet_075', 0.75, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef semnasnet_100(pretrained=False, **kwargs):\n    \"\"\" MNASNet A1 (w/ SE), depth multiplier of 1.0. \"\"\"\n    model = _gen_mnasnet_a1('semnasnet_100', 1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef mnasnet_a1(pretrained=False, **kwargs):\n    \"\"\" MNASNet A1 (w/ SE), depth multiplier of 1.0. \"\"\"\n    return semnasnet_100(pretrained, **kwargs)\n\n\ndef semnasnet_140(pretrained=False, **kwargs):\n    \"\"\" MNASNet A1 (w/ SE), depth multiplier of 1.4. \"\"\"\n    model = _gen_mnasnet_a1('semnasnet_140', 1.4, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef mnasnet_small(pretrained=False, **kwargs):\n    \"\"\" MNASNet Small,  depth multiplier of 1.0. \"\"\"\n    model = _gen_mnasnet_small('mnasnet_small', 1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef mobilenetv2_100(pretrained=False, **kwargs):\n    \"\"\" MobileNet V2 w/ 1.0 channel multiplier \"\"\"\n    model = _gen_mobilenet_v2('mobilenetv2_100', 1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef mobilenetv2_140(pretrained=False, **kwargs):\n    \"\"\" MobileNet V2 w/ 1.4 channel multiplier \"\"\"\n    model = _gen_mobilenet_v2('mobilenetv2_140', 1.4, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef mobilenetv2_110d(pretrained=False, **kwargs):\n    \"\"\" MobileNet V2 w/ 1.1 channel, 1.2 depth multipliers\"\"\"\n    model = _gen_mobilenet_v2(\n        'mobilenetv2_110d', 1.1, depth_multiplier=1.2, fix_stem_head=True, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef mobilenetv2_120d(pretrained=False, **kwargs):\n    \"\"\" MobileNet V2 w/ 1.2 channel, 1.4 depth multipliers \"\"\"\n    model = _gen_mobilenet_v2(\n        'mobilenetv2_120d', 1.2, depth_multiplier=1.4, fix_stem_head=True, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef fbnetc_100(pretrained=False, **kwargs):\n    \"\"\" FBNet-C \"\"\"\n    if pretrained:\n        # pretrained model trained with non-default BN epsilon\n        kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    model = _gen_fbnetc('fbnetc_100', 1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef spnasnet_100(pretrained=False, **kwargs):\n    \"\"\" Single-Path NAS Pixel1\"\"\"\n    model = _gen_spnasnet('spnasnet_100', 1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef efficientnet_b0(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B0 \"\"\"\n    # NOTE for train set drop_rate=0.2, drop_connect_rate=0.2\n    model = _gen_efficientnet(\n        'efficientnet_b0', channel_multiplier=1.0, depth_multiplier=1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef efficientnet_b1(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B1 \"\"\"\n    # NOTE for train set drop_rate=0.2, drop_connect_rate=0.2\n    model = _gen_efficientnet(\n        'efficientnet_b1', channel_multiplier=1.0, depth_multiplier=1.1, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef efficientnet_b2(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B2 \"\"\"\n    # NOTE for train set drop_rate=0.3, drop_connect_rate=0.2\n    model = _gen_efficientnet(\n        'efficientnet_b2', channel_multiplier=1.1, depth_multiplier=1.2, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef efficientnet_b3(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B3 \"\"\"\n    # NOTE for train set drop_rate=0.3, drop_connect_rate=0.2\n    model = _gen_efficientnet(\n        'efficientnet_b3', channel_multiplier=1.2, depth_multiplier=1.4, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef efficientnet_b4(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B4 \"\"\"\n    # NOTE for train set drop_rate=0.4, drop_connect_rate=0.2\n    model = _gen_efficientnet(\n        'efficientnet_b4', channel_multiplier=1.4, depth_multiplier=1.8, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef efficientnet_b5(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B5 \"\"\"\n    # NOTE for train set drop_rate=0.4, drop_connect_rate=0.2\n    model = _gen_efficientnet(\n        'efficientnet_b5', channel_multiplier=1.6, depth_multiplier=2.2, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef efficientnet_b6(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B6 \"\"\"\n    # NOTE for train set drop_rate=0.5, drop_connect_rate=0.2\n    model = _gen_efficientnet(\n        'efficientnet_b6', channel_multiplier=1.8, depth_multiplier=2.6, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef efficientnet_b7(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B7 \"\"\"\n    # NOTE for train set drop_rate=0.5, drop_connect_rate=0.2\n    model = _gen_efficientnet(\n        'efficientnet_b7', channel_multiplier=2.0, depth_multiplier=3.1, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef efficientnet_b8(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B8 \"\"\"\n    # NOTE for train set drop_rate=0.5, drop_connect_rate=0.2\n    model = _gen_efficientnet(\n        'efficientnet_b8', channel_multiplier=2.2, depth_multiplier=3.6, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef efficientnet_l2(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-L2. \"\"\"\n    # NOTE for train, drop_rate should be 0.5\n    model = _gen_efficientnet(\n        'efficientnet_l2', channel_multiplier=4.3, depth_multiplier=5.3, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef efficientnet_es(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-Edge Small. \"\"\"\n    model = _gen_efficientnet_edge(\n        'efficientnet_es', channel_multiplier=1.0, depth_multiplier=1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef efficientnet_em(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-Edge-Medium. \"\"\"\n    model = _gen_efficientnet_edge(\n        'efficientnet_em', channel_multiplier=1.0, depth_multiplier=1.1, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef efficientnet_el(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-Edge-Large. \"\"\"\n    model = _gen_efficientnet_edge(\n        'efficientnet_el', channel_multiplier=1.2, depth_multiplier=1.4, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef efficientnet_cc_b0_4e(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-CondConv-B0 w/ 8 Experts \"\"\"\n    # NOTE for train set drop_rate=0.25, drop_connect_rate=0.2\n    model = _gen_efficientnet_condconv(\n        'efficientnet_cc_b0_4e', channel_multiplier=1.0, depth_multiplier=1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef efficientnet_cc_b0_8e(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-CondConv-B0 w/ 8 Experts \"\"\"\n    # NOTE for train set drop_rate=0.25, drop_connect_rate=0.2\n    model = _gen_efficientnet_condconv(\n        'efficientnet_cc_b0_8e', channel_multiplier=1.0, depth_multiplier=1.0, experts_multiplier=2,\n        pretrained=pretrained, **kwargs)\n    return model\n\n\ndef efficientnet_cc_b1_8e(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-CondConv-B1 w/ 8 Experts \"\"\"\n    # NOTE for train set drop_rate=0.25, drop_connect_rate=0.2\n    model = _gen_efficientnet_condconv(\n        'efficientnet_cc_b1_8e', channel_multiplier=1.0, depth_multiplier=1.1, experts_multiplier=2,\n        pretrained=pretrained, **kwargs)\n    return model\n\n\ndef efficientnet_lite0(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-Lite0 \"\"\"\n    model = _gen_efficientnet_lite(\n        'efficientnet_lite0', channel_multiplier=1.0, depth_multiplier=1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef efficientnet_lite1(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-Lite1 \"\"\"\n    model = _gen_efficientnet_lite(\n        'efficientnet_lite1', channel_multiplier=1.0, depth_multiplier=1.1, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef efficientnet_lite2(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-Lite2 \"\"\"\n    model = _gen_efficientnet_lite(\n        'efficientnet_lite2', channel_multiplier=1.1, depth_multiplier=1.2, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef efficientnet_lite3(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-Lite3 \"\"\"\n    model = _gen_efficientnet_lite(\n        'efficientnet_lite3', channel_multiplier=1.2, depth_multiplier=1.4, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef efficientnet_lite4(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-Lite4 \"\"\"\n    model = _gen_efficientnet_lite(\n        'efficientnet_lite4', channel_multiplier=1.4, depth_multiplier=1.8, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_b0(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B0 AutoAug. Tensorflow compatible variant  \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_b0', channel_multiplier=1.0, depth_multiplier=1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_b1(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B1 AutoAug. Tensorflow compatible variant  \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_b1', channel_multiplier=1.0, depth_multiplier=1.1, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_b2(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B2 AutoAug. Tensorflow compatible variant  \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_b2', channel_multiplier=1.1, depth_multiplier=1.2, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_b3(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B3 AutoAug. Tensorflow compatible variant \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_b3', channel_multiplier=1.2, depth_multiplier=1.4, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_b4(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B4 AutoAug. Tensorflow compatible variant \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_b4', channel_multiplier=1.4, depth_multiplier=1.8, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_b5(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B5 RandAug. Tensorflow compatible variant \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_b5', channel_multiplier=1.6, depth_multiplier=2.2, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_b6(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B6 AutoAug. Tensorflow compatible variant \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_b6', channel_multiplier=1.8, depth_multiplier=2.6, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_b7(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B7 RandAug. Tensorflow compatible variant \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_b7', channel_multiplier=2.0, depth_multiplier=3.1, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_b8(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B8 RandAug. Tensorflow compatible variant \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_b8', channel_multiplier=2.2, depth_multiplier=3.6, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_b0_ap(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B0 AdvProp. Tensorflow compatible variant\n    Paper: Adversarial Examples Improve Image Recognition (https://arxiv.org/abs/1911.09665)\n    \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_b0_ap', channel_multiplier=1.0, depth_multiplier=1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_b1_ap(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B1 AdvProp. Tensorflow compatible variant\n    Paper: Adversarial Examples Improve Image Recognition (https://arxiv.org/abs/1911.09665)\n    \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_b1_ap', channel_multiplier=1.0, depth_multiplier=1.1, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_b2_ap(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B2 AdvProp. Tensorflow compatible variant\n    Paper: Adversarial Examples Improve Image Recognition (https://arxiv.org/abs/1911.09665)\n    \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_b2_ap', channel_multiplier=1.1, depth_multiplier=1.2, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_b3_ap(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B3 AdvProp. Tensorflow compatible variant\n    Paper: Adversarial Examples Improve Image Recognition (https://arxiv.org/abs/1911.09665)\n    \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_b3_ap', channel_multiplier=1.2, depth_multiplier=1.4, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_b4_ap(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B4 AdvProp. Tensorflow compatible variant\n    Paper: Adversarial Examples Improve Image Recognition (https://arxiv.org/abs/1911.09665)\n    \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_b4_ap', channel_multiplier=1.4, depth_multiplier=1.8, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_b5_ap(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B5 AdvProp. Tensorflow compatible variant\n    Paper: Adversarial Examples Improve Image Recognition (https://arxiv.org/abs/1911.09665)\n    \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_b5_ap', channel_multiplier=1.6, depth_multiplier=2.2, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_b6_ap(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B6 AdvProp. Tensorflow compatible variant\n    Paper: Adversarial Examples Improve Image Recognition (https://arxiv.org/abs/1911.09665)\n    \"\"\"\n    # NOTE for train, drop_rate should be 0.5\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_b6_ap', channel_multiplier=1.8, depth_multiplier=2.6, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_b7_ap(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B7 AdvProp. Tensorflow compatible variant\n    Paper: Adversarial Examples Improve Image Recognition (https://arxiv.org/abs/1911.09665)\n    \"\"\"\n    # NOTE for train, drop_rate should be 0.5\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_b7_ap', channel_multiplier=2.0, depth_multiplier=3.1, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_b8_ap(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B8 AdvProp. Tensorflow compatible variant\n    Paper: Adversarial Examples Improve Image Recognition (https://arxiv.org/abs/1911.09665)\n    \"\"\"\n    # NOTE for train, drop_rate should be 0.5\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_b8_ap', channel_multiplier=2.2, depth_multiplier=3.6, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_b0_ns(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B0 NoisyStudent. Tensorflow compatible variant\n    Paper: Self-training with Noisy Student improves ImageNet classification (https://arxiv.org/abs/1911.04252)\n    \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_b0_ns', channel_multiplier=1.0, depth_multiplier=1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_b1_ns(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B1 NoisyStudent. Tensorflow compatible variant\n    Paper: Self-training with Noisy Student improves ImageNet classification (https://arxiv.org/abs/1911.04252)\n    \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_b1_ns', channel_multiplier=1.0, depth_multiplier=1.1, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_b2_ns(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B2 NoisyStudent. Tensorflow compatible variant\n    Paper: Self-training with Noisy Student improves ImageNet classification (https://arxiv.org/abs/1911.04252)\n    \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_b2_ns', channel_multiplier=1.1, depth_multiplier=1.2, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_b3_ns(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B3 NoisyStudent. Tensorflow compatible variant\n    Paper: Self-training with Noisy Student improves ImageNet classification (https://arxiv.org/abs/1911.04252)\n    \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_b3_ns', channel_multiplier=1.2, depth_multiplier=1.4, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_b4_ns(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B4 NoisyStudent. Tensorflow compatible variant\n    Paper: Self-training with Noisy Student improves ImageNet classification (https://arxiv.org/abs/1911.04252)\n    \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_b4_ns', channel_multiplier=1.4, depth_multiplier=1.8, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_b5_ns(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B5 NoisyStudent. Tensorflow compatible variant\n    Paper: Self-training with Noisy Student improves ImageNet classification (https://arxiv.org/abs/1911.04252)\n    \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_b5_ns', channel_multiplier=1.6, depth_multiplier=2.2, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_b6_ns(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B6 NoisyStudent. Tensorflow compatible variant\n    Paper: Self-training with Noisy Student improves ImageNet classification (https://arxiv.org/abs/1911.04252)\n    \"\"\"\n    # NOTE for train, drop_rate should be 0.5\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_b6_ns', channel_multiplier=1.8, depth_multiplier=2.6, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_b7_ns(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-B7 NoisyStudent. Tensorflow compatible variant\n    Paper: Self-training with Noisy Student improves ImageNet classification (https://arxiv.org/abs/1911.04252)\n    \"\"\"\n    # NOTE for train, drop_rate should be 0.5\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_b7_ns', channel_multiplier=2.0, depth_multiplier=3.1, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_l2_ns_475(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-L2 NoisyStudent @ 475x475. Tensorflow compatible variant\n    Paper: Self-training with Noisy Student improves ImageNet classification (https://arxiv.org/abs/1911.04252)\n    \"\"\"\n    # NOTE for train, drop_rate should be 0.5\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_l2_ns_475', channel_multiplier=4.3, depth_multiplier=5.3, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_l2_ns(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-L2 NoisyStudent. Tensorflow compatible variant\n    Paper: Self-training with Noisy Student improves ImageNet classification (https://arxiv.org/abs/1911.04252)\n    \"\"\"\n    # NOTE for train, drop_rate should be 0.5\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet(\n        'tf_efficientnet_l2_ns', channel_multiplier=4.3, depth_multiplier=5.3, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_es(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-Edge Small. Tensorflow compatible variant  \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet_edge(\n        'tf_efficientnet_es', channel_multiplier=1.0, depth_multiplier=1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_em(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-Edge-Medium. Tensorflow compatible variant  \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet_edge(\n        'tf_efficientnet_em', channel_multiplier=1.0, depth_multiplier=1.1, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_el(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-Edge-Large. Tensorflow compatible variant  \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet_edge(\n        'tf_efficientnet_el', channel_multiplier=1.2, depth_multiplier=1.4, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_cc_b0_4e(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-CondConv-B0 w/ 4 Experts \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet_condconv(\n        'tf_efficientnet_cc_b0_4e', channel_multiplier=1.0, depth_multiplier=1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_cc_b0_8e(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-CondConv-B0 w/ 8 Experts \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet_condconv(\n        'tf_efficientnet_cc_b0_8e', channel_multiplier=1.0, depth_multiplier=1.0, experts_multiplier=2,\n        pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_cc_b1_8e(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-CondConv-B1 w/ 8 Experts \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet_condconv(\n        'tf_efficientnet_cc_b1_8e', channel_multiplier=1.0, depth_multiplier=1.1, experts_multiplier=2,\n        pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_lite0(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-Lite0. Tensorflow compatible variant  \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet_lite(\n        'tf_efficientnet_lite0', channel_multiplier=1.0, depth_multiplier=1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_lite1(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-Lite1. Tensorflow compatible variant  \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet_lite(\n        'tf_efficientnet_lite1', channel_multiplier=1.0, depth_multiplier=1.1, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_lite2(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-Lite2. Tensorflow compatible variant  \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet_lite(\n        'tf_efficientnet_lite2', channel_multiplier=1.1, depth_multiplier=1.2, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_lite3(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-Lite3. Tensorflow compatible variant \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet_lite(\n        'tf_efficientnet_lite3', channel_multiplier=1.2, depth_multiplier=1.4, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_efficientnet_lite4(pretrained=False, **kwargs):\n    \"\"\" EfficientNet-Lite4. Tensorflow compatible variant \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_efficientnet_lite(\n        'tf_efficientnet_lite4', channel_multiplier=1.4, depth_multiplier=1.8, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef mixnet_s(pretrained=False, **kwargs):\n    \"\"\"Creates a MixNet Small model.\n    \"\"\"\n    # NOTE for train set drop_rate=0.2\n    model = _gen_mixnet_s(\n        'mixnet_s', channel_multiplier=1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef mixnet_m(pretrained=False, **kwargs):\n    \"\"\"Creates a MixNet Medium model.\n    \"\"\"\n    # NOTE for train set drop_rate=0.25\n    model = _gen_mixnet_m(\n        'mixnet_m', channel_multiplier=1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef mixnet_l(pretrained=False, **kwargs):\n    \"\"\"Creates a MixNet Large model.\n    \"\"\"\n    # NOTE for train set drop_rate=0.25\n    model = _gen_mixnet_m(\n        'mixnet_l', channel_multiplier=1.3, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef mixnet_xl(pretrained=False, **kwargs):\n    \"\"\"Creates a MixNet Extra-Large model.\n    Not a paper spec, experimental def by RW w/ depth scaling.\n    \"\"\"\n    # NOTE for train set drop_rate=0.25, drop_connect_rate=0.2\n    model = _gen_mixnet_m(\n        'mixnet_xl', channel_multiplier=1.6, depth_multiplier=1.2, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef mixnet_xxl(pretrained=False, **kwargs):\n    \"\"\"Creates a MixNet Double Extra Large model.\n    Not a paper spec, experimental def by RW w/ depth scaling.\n    \"\"\"\n    # NOTE for train set drop_rate=0.3, drop_connect_rate=0.2\n    model = _gen_mixnet_m(\n        'mixnet_xxl', channel_multiplier=2.4, depth_multiplier=1.3, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_mixnet_s(pretrained=False, **kwargs):\n    \"\"\"Creates a MixNet Small model. Tensorflow compatible variant\n    \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_mixnet_s(\n        'tf_mixnet_s', channel_multiplier=1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_mixnet_m(pretrained=False, **kwargs):\n    \"\"\"Creates a MixNet Medium model. Tensorflow compatible variant\n    \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_mixnet_m(\n        'tf_mixnet_m', channel_multiplier=1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_mixnet_l(pretrained=False, **kwargs):\n    \"\"\"Creates a MixNet Large model. Tensorflow compatible variant\n    \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_mixnet_m(\n        'tf_mixnet_l', channel_multiplier=1.3, pretrained=pretrained, **kwargs)\n    return model\n"
  },
  {
    "path": "modules/control/proc/normalbae/nets/submodules/efficientnet_repo/geffnet/helpers.py",
    "content": "\"\"\" Checkpoint loading / state_dict helpers\nCopyright 2020 Ross Wightman\n\"\"\"\nimport torch\nimport os\nfrom collections import OrderedDict\ntry:\n    from torch.hub import load_state_dict_from_url\nexcept ImportError:\n    from torch.utils.model_zoo import load_url as load_state_dict_from_url\n\n\ndef load_checkpoint(model, checkpoint_path):\n    if checkpoint_path and os.path.isfile(checkpoint_path):\n        print(\"=> Loading checkpoint '{}'\".format(checkpoint_path))\n        checkpoint = torch.load(checkpoint_path)\n        if isinstance(checkpoint, dict) and 'state_dict' in checkpoint:\n            new_state_dict = OrderedDict()\n            for k, v in checkpoint['state_dict'].items():\n                if k.startswith('module'):\n                    name = k[7:]  # remove `module.`\n                else:\n                    name = k\n                new_state_dict[name] = v\n            model.load_state_dict(new_state_dict)\n        else:\n            model.load_state_dict(checkpoint)\n        print(\"=> Loaded checkpoint '{}'\".format(checkpoint_path))\n    else:\n        print(\"=> Error: No checkpoint found at '{}'\".format(checkpoint_path))\n        raise FileNotFoundError\n\n\ndef load_pretrained(model, url, filter_fn=None, strict=True):\n    if not url:\n        print(\"=> Warning: Pretrained model URL is empty, using random initialization.\")\n        return\n\n    state_dict = load_state_dict_from_url(url, progress=False, map_location='cpu')\n\n    input_conv = 'conv_stem'\n    classifier = 'classifier'\n    in_chans = getattr(model, input_conv).weight.shape[1]\n    num_classes = getattr(model, classifier).weight.shape[0]\n\n    input_conv_weight = input_conv + '.weight'\n    pretrained_in_chans = state_dict[input_conv_weight].shape[1]\n    if in_chans != pretrained_in_chans:\n        if in_chans == 1:\n            print('=> Converting pretrained input conv {} from {} to 1 channel'.format(\n                input_conv_weight, pretrained_in_chans))\n            conv1_weight = state_dict[input_conv_weight]\n            state_dict[input_conv_weight] = conv1_weight.sum(dim=1, keepdim=True)\n        else:\n            print('=> Discarding pretrained input conv {} since input channel count != {}'.format(\n                input_conv_weight, pretrained_in_chans))\n            del state_dict[input_conv_weight]\n            strict = False\n\n    classifier_weight = classifier + '.weight'\n    pretrained_num_classes = state_dict[classifier_weight].shape[0]\n    if num_classes != pretrained_num_classes:\n        print('=> Discarding pretrained classifier since num_classes != {}'.format(pretrained_num_classes))\n        del state_dict[classifier_weight]\n        del state_dict[classifier + '.bias']\n        strict = False\n\n    if filter_fn is not None:\n        state_dict = filter_fn(state_dict)\n\n    model.load_state_dict(state_dict, strict=strict)\n"
  },
  {
    "path": "modules/control/proc/normalbae/nets/submodules/efficientnet_repo/geffnet/mobilenetv3.py",
    "content": "\"\"\" MobileNet-V3\n\nA PyTorch impl of MobileNet-V3, compatible with TF weights from official impl.\n\nPaper: Searching for MobileNetV3 - https://arxiv.org/abs/1905.02244\n\nHacked together by / Copyright 2020 Ross Wightman\n\"\"\"\nimport torch.nn as nn\nimport torch.nn.functional as F\n\nfrom .activations import get_act_fn, get_act_layer, HardSwish\nfrom .config import layer_config_kwargs\nfrom .conv2d_layers import select_conv2d\nfrom .helpers import load_pretrained\nfrom .efficientnet_builder import *\n\n__all__ = ['mobilenetv3_rw', 'mobilenetv3_large_075', 'mobilenetv3_large_100', 'mobilenetv3_large_minimal_100',\n           'mobilenetv3_small_075', 'mobilenetv3_small_100', 'mobilenetv3_small_minimal_100',\n           'tf_mobilenetv3_large_075', 'tf_mobilenetv3_large_100', 'tf_mobilenetv3_large_minimal_100',\n           'tf_mobilenetv3_small_075', 'tf_mobilenetv3_small_100', 'tf_mobilenetv3_small_minimal_100']\n\nmodel_urls = {\n    'mobilenetv3_rw':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/mobilenetv3_100-35495452.pth',\n    'mobilenetv3_large_075': None,\n    'mobilenetv3_large_100':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/mobilenetv3_large_100_ra-f55367f5.pth',\n    'mobilenetv3_large_minimal_100': None,\n    'mobilenetv3_small_075': None,\n    'mobilenetv3_small_100': None,\n    'mobilenetv3_small_minimal_100': None,\n    'tf_mobilenetv3_large_075':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_mobilenetv3_large_075-150ee8b0.pth',\n    'tf_mobilenetv3_large_100':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_mobilenetv3_large_100-427764d5.pth',\n    'tf_mobilenetv3_large_minimal_100':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_mobilenetv3_large_minimal_100-8596ae28.pth',\n    'tf_mobilenetv3_small_075':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_mobilenetv3_small_075-da427f52.pth',\n    'tf_mobilenetv3_small_100':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_mobilenetv3_small_100-37f49e2b.pth',\n    'tf_mobilenetv3_small_minimal_100':\n        'https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/tf_mobilenetv3_small_minimal_100-922a7843.pth',\n}\n\n\nclass MobileNetV3(nn.Module):\n    \"\"\" MobileNet-V3\n\n    A this model utilizes the MobileNet-v3 specific 'efficient head', where global pooling is done before the\n    head convolution without a final batch-norm layer before the classifier.\n\n    Paper: https://arxiv.org/abs/1905.02244\n    \"\"\"\n\n    def __init__(self, block_args, num_classes=1000, in_chans=3, stem_size=16, num_features=1280, head_bias=True,\n                 channel_multiplier=1.0, pad_type='', act_layer=HardSwish, drop_rate=0., drop_connect_rate=0.,\n                 se_kwargs=None, norm_layer=nn.BatchNorm2d, norm_kwargs=None, weight_init='goog'):\n        super(MobileNetV3, self).__init__()\n        self.drop_rate = drop_rate\n\n        stem_size = round_channels(stem_size, channel_multiplier)\n        self.conv_stem = select_conv2d(in_chans, stem_size, 3, stride=2, padding=pad_type)\n        self.bn1 = nn.BatchNorm2d(stem_size, **norm_kwargs)\n        self.act1 = act_layer(inplace=True)\n        in_chs = stem_size\n\n        builder = EfficientNetBuilder(\n            channel_multiplier, pad_type=pad_type, act_layer=act_layer, se_kwargs=se_kwargs,\n            norm_layer=norm_layer, norm_kwargs=norm_kwargs, drop_connect_rate=drop_connect_rate)\n        self.blocks = nn.Sequential(*builder(in_chs, block_args))\n        in_chs = builder.in_chs\n\n        self.global_pool = nn.AdaptiveAvgPool2d(1)\n        self.conv_head = select_conv2d(in_chs, num_features, 1, padding=pad_type, bias=head_bias)\n        self.act2 = act_layer(inplace=True)\n        self.classifier = nn.Linear(num_features, num_classes)\n\n        for m in self.modules():\n            if weight_init == 'goog':\n                initialize_weight_goog(m)\n            else:\n                initialize_weight_default(m)\n\n    def as_sequential(self):\n        layers = [self.conv_stem, self.bn1, self.act1]\n        layers.extend(self.blocks)\n        layers.extend([\n            self.global_pool, self.conv_head, self.act2,\n            nn.Flatten(), nn.Dropout(self.drop_rate), self.classifier])\n        return nn.Sequential(*layers)\n\n    def features(self, x):\n        x = self.conv_stem(x)\n        x = self.bn1(x)\n        x = self.act1(x)\n        x = self.blocks(x)\n        x = self.global_pool(x)\n        x = self.conv_head(x)\n        x = self.act2(x)\n        return x\n\n    def forward(self, x):\n        x = self.features(x)\n        x = x.flatten(1)\n        if self.drop_rate > 0.:\n            x = F.dropout(x, p=self.drop_rate, training=self.training)\n        return self.classifier(x)\n\n\ndef _create_model(model_kwargs, variant, pretrained=False):\n    as_sequential = model_kwargs.pop('as_sequential', False)\n    model = MobileNetV3(**model_kwargs)\n    if pretrained and model_urls[variant]:\n        load_pretrained(model, model_urls[variant])\n    if as_sequential:\n        model = model.as_sequential()\n    return model\n\n\ndef _gen_mobilenet_v3_rw(variant, channel_multiplier=1.0, pretrained=False, **kwargs):\n    \"\"\"Creates a MobileNet-V3 model (RW variant).\n\n    Paper: https://arxiv.org/abs/1905.02244\n\n    This was my first attempt at reproducing the MobileNet-V3 from paper alone. It came close to the\n    eventual Tensorflow reference impl but has a few differences:\n    1. This model has no bias on the head convolution\n    2. This model forces no residual (noskip) on the first DWS block, this is different than MnasNet\n    3. This model always uses ReLU for the SE activation layer, other models in the family inherit their act layer\n       from their parent block\n    4. This model does not enforce divisible by 8 limitation on the SE reduction channel count\n\n    Overall the changes are fairly minor and result in a very small parameter count difference and no\n    top-1/5\n\n    Args:\n      channel_multiplier: multiplier to number of channels per layer.\n    \"\"\"\n    arch_def = [\n        # stage 0, 112x112 in\n        ['ds_r1_k3_s1_e1_c16_nre_noskip'],  # relu\n        # stage 1, 112x112 in\n        ['ir_r1_k3_s2_e4_c24_nre', 'ir_r1_k3_s1_e3_c24_nre'],  # relu\n        # stage 2, 56x56 in\n        ['ir_r3_k5_s2_e3_c40_se0.25_nre'],  # relu\n        # stage 3, 28x28 in\n        ['ir_r1_k3_s2_e6_c80', 'ir_r1_k3_s1_e2.5_c80', 'ir_r2_k3_s1_e2.3_c80'],  # hard-swish\n        # stage 4, 14x14in\n        ['ir_r2_k3_s1_e6_c112_se0.25'],  # hard-swish\n        # stage 5, 14x14in\n        ['ir_r3_k5_s2_e6_c160_se0.25'],  # hard-swish\n        # stage 6, 7x7 in\n        ['cn_r1_k1_s1_c960'],  # hard-swish\n    ]\n    with layer_config_kwargs(kwargs):\n        model_kwargs = dict(\n            block_args=decode_arch_def(arch_def),\n            head_bias=False,  # one of my mistakes\n            channel_multiplier=channel_multiplier,\n            act_layer=resolve_act_layer(kwargs, 'hard_swish'),\n            se_kwargs=dict(gate_fn=get_act_fn('hard_sigmoid'), reduce_mid=True),\n            norm_kwargs=resolve_bn_args(kwargs),\n            **kwargs,\n        )\n        model = _create_model(model_kwargs, variant, pretrained)\n    return model\n\n\ndef _gen_mobilenet_v3(variant, channel_multiplier=1.0, pretrained=False, **kwargs):\n    \"\"\"Creates a MobileNet-V3 large/small/minimal models.\n\n    Ref impl: https://github.com/tensorflow/models/blob/master/research/slim/nets/mobilenet/mobilenet_v3.py\n    Paper: https://arxiv.org/abs/1905.02244\n\n    Args:\n      channel_multiplier: multiplier to number of channels per layer.\n    \"\"\"\n    if 'small' in variant:\n        num_features = 1024\n        if 'minimal' in variant:\n            act_layer = 'relu'\n            arch_def = [\n                # stage 0, 112x112 in\n                ['ds_r1_k3_s2_e1_c16'],\n                # stage 1, 56x56 in\n                ['ir_r1_k3_s2_e4.5_c24', 'ir_r1_k3_s1_e3.67_c24'],\n                # stage 2, 28x28 in\n                ['ir_r1_k3_s2_e4_c40', 'ir_r2_k3_s1_e6_c40'],\n                # stage 3, 14x14 in\n                ['ir_r2_k3_s1_e3_c48'],\n                # stage 4, 14x14in\n                ['ir_r3_k3_s2_e6_c96'],\n                # stage 6, 7x7 in\n                ['cn_r1_k1_s1_c576'],\n            ]\n        else:\n            act_layer = 'hard_swish'\n            arch_def = [\n                # stage 0, 112x112 in\n                ['ds_r1_k3_s2_e1_c16_se0.25_nre'],  # relu\n                # stage 1, 56x56 in\n                ['ir_r1_k3_s2_e4.5_c24_nre', 'ir_r1_k3_s1_e3.67_c24_nre'],  # relu\n                # stage 2, 28x28 in\n                ['ir_r1_k5_s2_e4_c40_se0.25', 'ir_r2_k5_s1_e6_c40_se0.25'],  # hard-swish\n                # stage 3, 14x14 in\n                ['ir_r2_k5_s1_e3_c48_se0.25'],  # hard-swish\n                # stage 4, 14x14in\n                ['ir_r3_k5_s2_e6_c96_se0.25'],  # hard-swish\n                # stage 6, 7x7 in\n                ['cn_r1_k1_s1_c576'],  # hard-swish\n            ]\n    else:\n        num_features = 1280\n        if 'minimal' in variant:\n            act_layer = 'relu'\n            arch_def = [\n                # stage 0, 112x112 in\n                ['ds_r1_k3_s1_e1_c16'],\n                # stage 1, 112x112 in\n                ['ir_r1_k3_s2_e4_c24', 'ir_r1_k3_s1_e3_c24'],\n                # stage 2, 56x56 in\n                ['ir_r3_k3_s2_e3_c40'],\n                # stage 3, 28x28 in\n                ['ir_r1_k3_s2_e6_c80', 'ir_r1_k3_s1_e2.5_c80', 'ir_r2_k3_s1_e2.3_c80'],\n                # stage 4, 14x14in\n                ['ir_r2_k3_s1_e6_c112'],\n                # stage 5, 14x14in\n                ['ir_r3_k3_s2_e6_c160'],\n                # stage 6, 7x7 in\n                ['cn_r1_k1_s1_c960'],\n            ]\n        else:\n            act_layer = 'hard_swish'\n            arch_def = [\n                # stage 0, 112x112 in\n                ['ds_r1_k3_s1_e1_c16_nre'],  # relu\n                # stage 1, 112x112 in\n                ['ir_r1_k3_s2_e4_c24_nre', 'ir_r1_k3_s1_e3_c24_nre'],  # relu\n                # stage 2, 56x56 in\n                ['ir_r3_k5_s2_e3_c40_se0.25_nre'],  # relu\n                # stage 3, 28x28 in\n                ['ir_r1_k3_s2_e6_c80', 'ir_r1_k3_s1_e2.5_c80', 'ir_r2_k3_s1_e2.3_c80'],  # hard-swish\n                # stage 4, 14x14in\n                ['ir_r2_k3_s1_e6_c112_se0.25'],  # hard-swish\n                # stage 5, 14x14in\n                ['ir_r3_k5_s2_e6_c160_se0.25'],  # hard-swish\n                # stage 6, 7x7 in\n                ['cn_r1_k1_s1_c960'],  # hard-swish\n            ]\n    with layer_config_kwargs(kwargs):\n        model_kwargs = dict(\n            block_args=decode_arch_def(arch_def),\n            num_features=num_features,\n            stem_size=16,\n            channel_multiplier=channel_multiplier,\n            act_layer=resolve_act_layer(kwargs, act_layer),\n            se_kwargs=dict(\n                act_layer=get_act_layer('relu'), gate_fn=get_act_fn('hard_sigmoid'), reduce_mid=True, divisor=8),\n            norm_kwargs=resolve_bn_args(kwargs),\n            **kwargs,\n        )\n        model = _create_model(model_kwargs, variant, pretrained)\n    return model\n\n\ndef mobilenetv3_rw(pretrained=False, **kwargs):\n    \"\"\" MobileNet-V3 RW\n    Attn: See note in gen function for this variant.\n    \"\"\"\n    # NOTE for train set drop_rate=0.2\n    if pretrained:\n        # pretrained model trained with non-default BN epsilon\n        kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    model = _gen_mobilenet_v3_rw('mobilenetv3_rw', 1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef mobilenetv3_large_075(pretrained=False, **kwargs):\n    \"\"\" MobileNet V3 Large 0.75\"\"\"\n    # NOTE for train set drop_rate=0.2\n    model = _gen_mobilenet_v3('mobilenetv3_large_075', 0.75, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef mobilenetv3_large_100(pretrained=False, **kwargs):\n    \"\"\" MobileNet V3 Large 1.0 \"\"\"\n    # NOTE for train set drop_rate=0.2\n    model = _gen_mobilenet_v3('mobilenetv3_large_100', 1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef mobilenetv3_large_minimal_100(pretrained=False, **kwargs):\n    \"\"\" MobileNet V3 Large (Minimalistic) 1.0 \"\"\"\n    # NOTE for train set drop_rate=0.2\n    model = _gen_mobilenet_v3('mobilenetv3_large_minimal_100', 1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef mobilenetv3_small_075(pretrained=False, **kwargs):\n    \"\"\" MobileNet V3 Small 0.75 \"\"\"\n    model = _gen_mobilenet_v3('mobilenetv3_small_075', 0.75, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef mobilenetv3_small_100(pretrained=False, **kwargs):\n    \"\"\" MobileNet V3 Small 1.0 \"\"\"\n    model = _gen_mobilenet_v3('mobilenetv3_small_100', 1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef mobilenetv3_small_minimal_100(pretrained=False, **kwargs):\n    \"\"\" MobileNet V3 Small (Minimalistic) 1.0 \"\"\"\n    model = _gen_mobilenet_v3('mobilenetv3_small_minimal_100', 1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_mobilenetv3_large_075(pretrained=False, **kwargs):\n    \"\"\" MobileNet V3 Large 0.75. Tensorflow compat variant. \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_mobilenet_v3('tf_mobilenetv3_large_075', 0.75, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_mobilenetv3_large_100(pretrained=False, **kwargs):\n    \"\"\" MobileNet V3 Large 1.0. Tensorflow compat variant. \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_mobilenet_v3('tf_mobilenetv3_large_100', 1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_mobilenetv3_large_minimal_100(pretrained=False, **kwargs):\n    \"\"\" MobileNet V3 Large Minimalistic 1.0. Tensorflow compat variant. \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_mobilenet_v3('tf_mobilenetv3_large_minimal_100', 1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_mobilenetv3_small_075(pretrained=False, **kwargs):\n    \"\"\" MobileNet V3 Small 0.75. Tensorflow compat variant. \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_mobilenet_v3('tf_mobilenetv3_small_075', 0.75, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_mobilenetv3_small_100(pretrained=False, **kwargs):\n    \"\"\" MobileNet V3 Small 1.0. Tensorflow compat variant.\"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_mobilenet_v3('tf_mobilenetv3_small_100', 1.0, pretrained=pretrained, **kwargs)\n    return model\n\n\ndef tf_mobilenetv3_small_minimal_100(pretrained=False, **kwargs):\n    \"\"\" MobileNet V3 Small Minimalistic 1.0. Tensorflow compat variant. \"\"\"\n    kwargs['bn_eps'] = BN_EPS_TF_DEFAULT\n    kwargs['pad_type'] = 'same'\n    model = _gen_mobilenet_v3('tf_mobilenetv3_small_minimal_100', 1.0, pretrained=pretrained, **kwargs)\n    return model\n"
  },
  {
    "path": "modules/control/proc/normalbae/nets/submodules/efficientnet_repo/geffnet/model_factory.py",
    "content": "from .config import set_layer_config\nfrom .helpers import load_checkpoint\n\nfrom .gen_efficientnet import *\nfrom .mobilenetv3 import *\n\n\ndef create_model(\n        model_name='mnasnet_100',\n        pretrained=None,\n        num_classes=1000,\n        in_chans=3,\n        checkpoint_path='',\n        **kwargs):\n\n    model_kwargs = dict(num_classes=num_classes, in_chans=in_chans, pretrained=pretrained, **kwargs)\n\n    if model_name in globals():\n        create_fn = globals()[model_name]\n        model = create_fn(**model_kwargs)\n    else:\n        raise RuntimeError('Unknown model (%s)' % model_name)\n\n    if checkpoint_path and not pretrained:\n        load_checkpoint(model, checkpoint_path)\n\n    return model\n"
  },
  {
    "path": "modules/control/proc/normalbae/nets/submodules/efficientnet_repo/geffnet/version.py",
    "content": "__version__ = '1.0.2'\n"
  },
  {
    "path": "modules/control/proc/normalbae/nets/submodules/efficientnet_repo/hubconf.py",
    "content": "dependencies = ['torch', 'math']\n\nfrom geffnet import efficientnet_b0\nfrom geffnet import efficientnet_b1\nfrom geffnet import efficientnet_b2\nfrom geffnet import efficientnet_b3\nfrom geffnet import efficientnet_es\nfrom geffnet import efficientnet_lite0\n\nfrom geffnet import mixnet_s\nfrom geffnet import mixnet_m\nfrom geffnet import mixnet_l\nfrom geffnet import mixnet_xl\n\nfrom geffnet import mobilenetv2_100\nfrom geffnet import mobilenetv2_110d\nfrom geffnet import mobilenetv2_120d\nfrom geffnet import mobilenetv2_140\n\nfrom geffnet import mobilenetv3_large_100\nfrom geffnet import mobilenetv3_rw\nfrom geffnet import mnasnet_a1\nfrom geffnet import mnasnet_b1\nfrom geffnet import fbnetc_100\nfrom geffnet import spnasnet_100\n\nfrom geffnet import tf_efficientnet_b0\nfrom geffnet import tf_efficientnet_b1\nfrom geffnet import tf_efficientnet_b2\nfrom geffnet import tf_efficientnet_b3\nfrom geffnet import tf_efficientnet_b4\nfrom geffnet import tf_efficientnet_b5\nfrom geffnet import tf_efficientnet_b6\nfrom geffnet import tf_efficientnet_b7\nfrom geffnet import tf_efficientnet_b8\n\nfrom geffnet import tf_efficientnet_b0_ap\nfrom geffnet import tf_efficientnet_b1_ap\nfrom geffnet import tf_efficientnet_b2_ap\nfrom geffnet import tf_efficientnet_b3_ap\nfrom geffnet import tf_efficientnet_b4_ap\nfrom geffnet import tf_efficientnet_b5_ap\nfrom geffnet import tf_efficientnet_b6_ap\nfrom geffnet import tf_efficientnet_b7_ap\nfrom geffnet import tf_efficientnet_b8_ap\n\nfrom geffnet import tf_efficientnet_b0_ns\nfrom geffnet import tf_efficientnet_b1_ns\nfrom geffnet import tf_efficientnet_b2_ns\nfrom geffnet import tf_efficientnet_b3_ns\nfrom geffnet import tf_efficientnet_b4_ns\nfrom geffnet import tf_efficientnet_b5_ns\nfrom geffnet import tf_efficientnet_b6_ns\nfrom geffnet import tf_efficientnet_b7_ns\nfrom geffnet import tf_efficientnet_l2_ns_475\nfrom geffnet import tf_efficientnet_l2_ns\n\nfrom geffnet import tf_efficientnet_es\nfrom geffnet import tf_efficientnet_em\nfrom geffnet import tf_efficientnet_el\n\nfrom geffnet import tf_efficientnet_cc_b0_4e\nfrom geffnet import tf_efficientnet_cc_b0_8e\nfrom geffnet import tf_efficientnet_cc_b1_8e\n\nfrom geffnet import tf_efficientnet_lite0\nfrom geffnet import tf_efficientnet_lite1\nfrom geffnet import tf_efficientnet_lite2\nfrom geffnet import tf_efficientnet_lite3\nfrom geffnet import tf_efficientnet_lite4\n\nfrom geffnet import tf_mixnet_s\nfrom geffnet import tf_mixnet_m\nfrom geffnet import tf_mixnet_l\n\nfrom geffnet import tf_mobilenetv3_large_075\nfrom geffnet import tf_mobilenetv3_large_100\nfrom geffnet import tf_mobilenetv3_large_minimal_100\nfrom geffnet import tf_mobilenetv3_small_075\nfrom geffnet import tf_mobilenetv3_small_100\nfrom geffnet import tf_mobilenetv3_small_minimal_100\n"
  },
  {
    "path": "modules/control/proc/normalbae/nets/submodules/efficientnet_repo/requirements.txt",
    "content": "torch>=1.2.0\ntorchvision>=0.4.0\n"
  },
  {
    "path": "modules/control/proc/normalbae/nets/submodules/efficientnet_repo/setup.py",
    "content": "\"\"\" Setup\n\"\"\"\nfrom setuptools import setup, find_packages\nfrom codecs import open\nfrom os import path\n\nhere = path.abspath(path.dirname(__file__))\n__version__ = '0.0.0'\n\n# Get the long description from the README file\nwith open(path.join(here, 'README.md'), encoding='utf-8') as f:\n    long_description = f.read()\n\nexec(open('geffnet/version.py').read())\nsetup(\n    name='geffnet',\n    version=__version__,\n    description='(Generic) EfficientNets for PyTorch',\n    long_description=long_description,\n    long_description_content_type='text/markdown',\n    url='https://github.com/rwightman/gen-efficientnet-pytorch',\n    author='Ross Wightman',\n    author_email='hello@rwightman.com',\n    classifiers=[\n        # How mature is this project? Common values are\n        #   3 - Alpha\n        #   4 - Beta\n        #   5 - Production/Stable\n        'Development Status :: 3 - Alpha',\n        'Intended Audience :: Education',\n        'Intended Audience :: Science/Research',\n        'License :: OSI Approved :: Apache Software License',\n        'Programming Language :: Python :: 3.6',\n        'Programming Language :: Python :: 3.7',\n        'Programming Language :: Python :: 3.8',\n        'Topic :: Scientific/Engineering',\n        'Topic :: Scientific/Engineering :: Artificial Intelligence',\n        'Topic :: Software Development',\n        'Topic :: Software Development :: Libraries',\n        'Topic :: Software Development :: Libraries :: Python Modules',\n    ],\n\n    # Note that this is a string of words separated by whitespace, not a list.\n    keywords='pytorch pretrained models efficientnet mixnet mobilenetv3 mnasnet',\n    packages=find_packages(exclude=['data']),\n    install_requires=['torch >= 1.4', 'torchvision'],\n    python_requires='>=3.6',\n)\n"
  },
  {
    "path": "modules/control/proc/normalbae/nets/submodules/efficientnet_repo/utils.py",
    "content": "import os\n\n\nclass AverageMeter:\n    \"\"\"Computes and stores the average and current value\"\"\"\n    def __init__(self):\n        self.reset()\n\n    def reset(self):\n        self.val = 0\n        self.avg = 0\n        self.sum = 0\n        self.count = 0\n\n    def update(self, val, n=1):\n        self.val = val\n        self.sum += val * n\n        self.count += n\n        self.avg = self.sum / self.count\n\n\ndef accuracy(output, target, topk=(1,)):\n    \"\"\"Computes the precision@k for the specified values of k\"\"\"\n    maxk = max(topk)\n    batch_size = target.size(0)\n\n    _, pred = output.topk(maxk, 1, True, True)\n    pred = pred.t()\n    correct = pred.eq(target.view(1, -1).expand_as(pred))\n\n    res = []\n    for k in topk:\n        correct_k = correct[:k].reshape(-1).float().sum(0)\n        res.append(correct_k.mul_(100.0 / batch_size))\n    return res\n\n\ndef get_outdir(path, *paths, inc=False):\n    outdir = os.path.join(path, *paths)\n    if not os.path.exists(outdir):\n        os.makedirs(outdir)\n    elif inc:\n        count = 1\n        outdir_inc = outdir + '-' + str(count)\n        while os.path.exists(outdir_inc):\n            count = count + 1\n            outdir_inc = outdir + '-' + str(count)\n            assert count < 100\n        outdir = outdir_inc\n        os.makedirs(outdir)\n    return outdir\n"
  },
  {
    "path": "modules/control/proc/normalbae/nets/submodules/efficientnet_repo/validate.py",
    "content": "from __future__ import absolute_import\nfrom __future__ import division\nfrom __future__ import print_function\n\nimport argparse\nimport time\nimport torch\nimport torch.nn as nn\nimport torch.nn.parallel\nfrom contextlib import suppress\n\nimport geffnet\nfrom data import Dataset, create_loader, resolve_data_config\nfrom utils import accuracy, AverageMeter\n\nhas_native_amp = False\ntry:\n    if torch.cuda.amp.autocast is not None:\n        has_native_amp = True\nexcept AttributeError:\n    pass\n\ntorch.backends.cudnn.benchmark = True\n\nparser = argparse.ArgumentParser(description='PyTorch ImageNet Validation')\nparser.add_argument('data', metavar='DIR',\n                    help='path to dataset')\nparser.add_argument('--model', '-m', metavar='MODEL', default='spnasnet1_00',\n                    help='model architecture (default: dpn92)')\nparser.add_argument('-j', '--workers', default=4, type=int, metavar='N',\n                    help='number of data loading workers (default: 2)')\nparser.add_argument('-b', '--batch-size', default=256, type=int,\n                    metavar='N', help='mini-batch size (default: 256)')\nparser.add_argument('--img-size', default=None, type=int,\n                    metavar='N', help='Input image dimension, uses model default if empty')\nparser.add_argument('--mean', type=float, nargs='+', default=None, metavar='MEAN',\n                    help='Override mean pixel value of dataset')\nparser.add_argument('--std', type=float,  nargs='+', default=None, metavar='STD',\n                    help='Override std deviation of of dataset')\nparser.add_argument('--crop-pct', type=float, default=None, metavar='PCT',\n                    help='Override default crop pct of 0.875')\nparser.add_argument('--interpolation', default='', type=str, metavar='NAME',\n                    help='Image resize interpolation type (overrides model)')\nparser.add_argument('--num-classes', type=int, default=1000,\n                    help='Number classes in dataset')\nparser.add_argument('--print-freq', '-p', default=10, type=int,\n                    metavar='N', help='print frequency (default: 10)')\nparser.add_argument('--checkpoint', default='', type=str, metavar='PATH',\n                    help='path to latest checkpoint (default: none)')\nparser.add_argument('--pretrained', dest='pretrained', action='store_true',\n                    help='use pre-trained model')\nparser.add_argument('--torchscript', dest='torchscript', action='store_true',\n                    help='convert model torchscript for inference')\nparser.add_argument('--num-gpu', type=int, default=1,\n                    help='Number of GPUS to use')\nparser.add_argument('--tf-preprocessing', dest='tf_preprocessing', action='store_true',\n                    help='use tensorflow mnasnet preporcessing')\nparser.add_argument('--no-cuda', dest='no_cuda', action='store_true',\n                    help='')\nparser.add_argument('--channels-last', action='store_true', default=False,\n                    help='Use channels_last memory layout')\nparser.add_argument('--amp', action='store_true', default=False,\n                    help='Use native Torch AMP mixed precision.')\n\n\ndef main():\n    args = parser.parse_args()\n\n    if not args.checkpoint and not args.pretrained:\n        args.pretrained = True\n\n    amp_autocast = suppress  # do nothing\n    if args.amp:\n        if not has_native_amp:\n            print(\"Native Torch AMP is not available (requires torch >= 1.6), using FP32.\")\n        else:\n            amp_autocast = torch.cuda.amp.autocast\n\n    # create model\n    model = geffnet.create_model(\n        args.model,\n        num_classes=args.num_classes,\n        in_chans=3,\n        pretrained=args.pretrained,\n        checkpoint_path=args.checkpoint,\n        scriptable=args.torchscript)\n\n    if args.channels_last:\n        model = model.to(memory_format=torch.channels_last)\n\n    if args.torchscript:\n        torch.jit.optimized_execution(True)\n        model = torch.jit.script(model)\n\n    print('Model %s created, param count: %d' %\n          (args.model, sum([m.numel() for m in model.parameters()])))\n\n    data_config = resolve_data_config(model, args)\n\n    criterion = nn.CrossEntropyLoss()\n\n    if not args.no_cuda:\n        if args.num_gpu > 1:\n            model = torch.nn.DataParallel(model, device_ids=list(range(args.num_gpu))).cuda()\n        else:\n            model = model.cuda()\n        criterion = criterion.cuda()\n\n    loader = create_loader(\n        Dataset(args.data, load_bytes=args.tf_preprocessing),\n        input_size=data_config['input_size'],\n        batch_size=args.batch_size,\n        use_prefetcher=not args.no_cuda,\n        interpolation=data_config['interpolation'],\n        mean=data_config['mean'],\n        std=data_config['std'],\n        num_workers=args.workers,\n        crop_pct=data_config['crop_pct'],\n        tensorflow_preprocessing=args.tf_preprocessing)\n\n    batch_time = AverageMeter()\n    losses = AverageMeter()\n    top1 = AverageMeter()\n    top5 = AverageMeter()\n\n    model.eval()\n    end = time.time()\n    for i, (input, target) in enumerate(loader):\n        if not args.no_cuda:\n            target = target.cuda()\n            input = input.cuda()\n        if args.channels_last:\n            input = input.contiguous(memory_format=torch.channels_last)\n\n        # compute output\n        with amp_autocast():\n            output = model(input)\n            loss = criterion(output, target)\n\n        # measure accuracy and record loss\n        prec1, prec5 = accuracy(output.data, target, topk=(1, 5))\n        losses.update(loss.item(), input.size(0))\n        top1.update(prec1.item(), input.size(0))\n        top5.update(prec5.item(), input.size(0))\n\n        # measure elapsed time\n        batch_time.update(time.time() - end)\n        end = time.time()\n\n        if i % args.print_freq == 0:\n            print('Test: [{0}/{1}]\\t'\n                    'Time {batch_time.val:.3f} ({batch_time.avg:.3f}, {rate_avg:.3f}/s) \\t'\n                    'Loss {loss.val:.4f} ({loss.avg:.4f})\\t'\n                    'Prec@1 {top1.val:.3f} ({top1.avg:.3f})\\t'\n                    'Prec@5 {top5.val:.3f} ({top5.avg:.3f})'.format(\n                i, len(loader), batch_time=batch_time,\n                rate_avg=input.size(0) / batch_time.avg,\n                loss=losses, top1=top1, top5=top5))\n\n    print(' * Prec@1 {top1.avg:.3f} ({top1a:.3f}) Prec@5 {top5.avg:.3f} ({top5a:.3f})'.format(\n        top1=top1, top1a=100-top1.avg, top5=top5, top5a=100.-top5.avg))\n\n\nif __name__ == '__main__':\n    main()\n"
  },
  {
    "path": "modules/control/proc/normalbae/nets/submodules/encoder.py",
    "content": "import os\nimport torch\nimport torch.nn as nn\n\n\nclass Encoder(nn.Module):\n    def __init__(self):\n        super(Encoder, self).__init__()\n\n        basemodel_name = 'tf_efficientnet_b5_ap'\n        repo_path = os.path.join(os.path.dirname(__file__), 'efficientnet_repo')\n        basemodel = torch.hub.load(repo_path, basemodel_name, pretrained=False, source='local')\n\n        # Remove last layer\n        basemodel.global_pool = nn.Identity()\n        basemodel.classifier = nn.Identity()\n\n        self.original_model = basemodel\n\n    def forward(self, x):\n        features = [x]\n        for k, v in self.original_model._modules.items():\n            if k == 'blocks':\n                for _ki, vi in v._modules.items():\n                    features.append(vi(features[-1]))\n            else:\n                features.append(v(features[-1]))\n        return features\n"
  },
  {
    "path": "modules/control/proc/normalbae/nets/submodules/submodules.py",
    "content": "import torch\nimport torch.nn as nn\nimport torch.nn.functional as F\n\n\n########################################################################################################################\n\n\n# Upsample + BatchNorm\nclass UpSampleBN(nn.Module):\n    def __init__(self, skip_input, output_features):\n        super(UpSampleBN, self).__init__()\n\n        self._net = nn.Sequential(nn.Conv2d(skip_input, output_features, kernel_size=3, stride=1, padding=1),\n                                  nn.BatchNorm2d(output_features),\n                                  nn.LeakyReLU(),\n                                  nn.Conv2d(output_features, output_features, kernel_size=3, stride=1, padding=1),\n                                  nn.BatchNorm2d(output_features),\n                                  nn.LeakyReLU())\n\n    def forward(self, x, concat_with):\n        up_x = F.interpolate(x, size=[concat_with.size(2), concat_with.size(3)], mode='bilinear', align_corners=True)\n        f = torch.cat([up_x, concat_with], dim=1)\n        return self._net(f)\n\n\n# Upsample + GroupNorm + Weight Standardization\nclass UpSampleGN(nn.Module):\n    def __init__(self, skip_input, output_features):\n        super(UpSampleGN, self).__init__()\n\n        self._net = nn.Sequential(Conv2d(skip_input, output_features, kernel_size=3, stride=1, padding=1),\n                                  nn.GroupNorm(8, output_features),\n                                  nn.LeakyReLU(),\n                                  Conv2d(output_features, output_features, kernel_size=3, stride=1, padding=1),\n                                  nn.GroupNorm(8, output_features),\n                                  nn.LeakyReLU())\n\n    def forward(self, x, concat_with):\n        up_x = F.interpolate(x, size=[concat_with.size(2), concat_with.size(3)], mode='bilinear', align_corners=True)\n        f = torch.cat([up_x, concat_with], dim=1)\n        return self._net(f)\n\n\n# Conv2d with weight standardization\nclass Conv2d(nn.Conv2d):\n    def __init__(self, in_channels, out_channels, kernel_size, stride=1,\n                 padding=0, dilation=1, groups=1, bias=True):\n        super(Conv2d, self).__init__(in_channels, out_channels, kernel_size, stride,\n                 padding, dilation, groups, bias)\n\n    def forward(self, x):\n        weight = self.weight\n        weight_mean = weight.mean(dim=1, keepdim=True).mean(dim=2,\n                                  keepdim=True).mean(dim=3, keepdim=True)\n        weight = weight - weight_mean\n        std = weight.view(weight.size(0), -1).std(dim=1).view(-1, 1, 1, 1) + 1e-5\n        weight = weight / std.expand_as(weight)\n        return F.conv2d(x, weight, self.bias, self.stride,\n                        self.padding, self.dilation, self.groups)\n\n\n# normalize\ndef norm_normalize(norm_out):\n    min_kappa = 0.01\n    norm_x, norm_y, norm_z, kappa = torch.split(norm_out, 1, dim=1)\n    norm = torch.sqrt(norm_x ** 2.0 + norm_y ** 2.0 + norm_z ** 2.0) + 1e-10\n    kappa = F.elu(kappa) + 1.0 + min_kappa\n    final_out = torch.cat([norm_x / norm, norm_y / norm, norm_z / norm, kappa], dim=1)\n    return final_out\n\n\n# uncertainty-guided sampling (only used during training)\ndef sample_points(init_normal, gt_norm_mask, sampling_ratio, beta):\n    device = init_normal.device\n    B, _, H, W = init_normal.shape\n    N = int(sampling_ratio * H * W)\n    beta = beta\n\n    # uncertainty map\n    uncertainty_map = -1 * init_normal[:, 3, :, :]  # B, H, W\n\n    # gt_invalid_mask (B, H, W)\n    if gt_norm_mask is not None:\n        gt_invalid_mask = F.interpolate(gt_norm_mask.float(), size=[H, W], mode='nearest')\n        gt_invalid_mask = gt_invalid_mask[:, 0, :, :] < 0.5\n        uncertainty_map[gt_invalid_mask] = -1e4\n\n    # (B, H*W)\n    _, idx = uncertainty_map.view(B, -1).sort(1, descending=True)\n\n    # importance sampling\n    if int(beta * N) > 0:\n        importance = idx[:, :int(beta * N)]    # B, beta*N\n\n        # remaining\n        remaining = idx[:, int(beta * N):]     # B, H*W - beta*N\n\n        # coverage\n        num_coverage = N - int(beta * N)\n\n        if num_coverage <= 0:\n            samples = importance\n        else:\n            coverage_list = []\n            for i in range(B):\n                idx_c = torch.randperm(remaining.size()[1])    # shuffles \"H*W - beta*N\"\n                coverage_list.append(remaining[i, :][idx_c[:num_coverage]].view(1, -1))     # 1, N-beta*N\n            coverage = torch.cat(coverage_list, dim=0)                                      # B, N-beta*N\n            samples = torch.cat((importance, coverage), dim=1)                              # B, N\n\n    else:\n        # remaining\n        remaining = idx[:, :]  # B, H*W\n\n        # coverage\n        num_coverage = N\n\n        coverage_list = []\n        for i in range(B):\n            idx_c = torch.randperm(remaining.size()[1])  # shuffles \"H*W - beta*N\"\n            coverage_list.append(remaining[i, :][idx_c[:num_coverage]].view(1, -1))  # 1, N-beta*N\n        coverage = torch.cat(coverage_list, dim=0)  # B, N-beta*N\n        samples = coverage\n\n    # point coordinates\n    rows_int = samples // W         # 0 for first row, H-1 for last row\n    rows_float = rows_int / float(H-1)         # 0 to 1.0\n    rows_float = (rows_float * 2.0) - 1.0       # -1.0 to 1.0\n\n    cols_int = samples % W          # 0 for first column, W-1 for last column\n    cols_float = cols_int / float(W-1)         # 0 to 1.0\n    cols_float = (cols_float * 2.0) - 1.0       # -1.0 to 1.0\n\n    point_coords = torch.zeros(B, 1, N, 2)\n    point_coords[:, 0, :, 0] = cols_float             # x coord\n    point_coords[:, 0, :, 1] = rows_float             # y coord\n    point_coords = point_coords.to(device)\n    return point_coords, rows_int, cols_int\n"
  },
  {
    "path": "modules/control/proc/openpose/LICENSE",
    "content": "OPENPOSE: MULTIPERSON KEYPOINT DETECTION\nSOFTWARE LICENSE AGREEMENT\nACADEMIC OR NON-PROFIT ORGANIZATION NONCOMMERCIAL RESEARCH USE ONLY\n\nBY USING OR DOWNLOADING THE SOFTWARE, YOU ARE AGREEING TO THE TERMS OF THIS LICENSE AGREEMENT.  IF YOU DO NOT AGREE WITH THESE TERMS, YOU MAY NOT USE OR DOWNLOAD THE SOFTWARE.\n\nThis is a license agreement (\"Agreement\") between your academic institution or non-profit organization or self (called \"Licensee\" or \"You\" in this Agreement) and Carnegie Mellon University (called \"Licensor\" in this Agreement).  All rights not specifically granted to you in this Agreement are reserved for Licensor.\n\nRESERVATION OF OWNERSHIP AND GRANT OF LICENSE:\nLicensor retains exclusive ownership of any copy of the Software (as defined below) licensed under this Agreement and hereby grants to Licensee a personal, non-exclusive,\nnon-transferable license to use the Software for noncommercial research purposes, without the right to sublicense, pursuant to the terms and conditions of this Agreement.  As used in this Agreement, the term \"Software\" means (i) the actual copy of all or any portion of code for program routines made accessible to Licensee by Licensor pursuant to this Agreement, inclusive of backups, updates, and/or merged copies permitted hereunder or subsequently supplied by Licensor,  including all or any file structures, programming instructions, user interfaces and screen formats and sequences as well as any and all documentation and instructions related to it, and (ii) all or any derivatives and/or modifications created or made by You to any of the items specified in (i).\n\nCONFIDENTIALITY: Licensee acknowledges that the Software is proprietary to Licensor, and as such, Licensee agrees to receive all such materials in confidence and use the Software only in accordance with the terms of this Agreement.  Licensee agrees to use reasonable effort to protect the Software from unauthorized use, reproduction, distribution, or publication.\n\nCOPYRIGHT: The Software is owned by Licensor and is protected by United\nStates copyright laws and applicable international treaties and/or conventions.\n\nPERMITTED USES:  The Software may be used for your own noncommercial internal research purposes. You understand and agree that Licensor is not obligated to implement any suggestions and/or feedback you might provide regarding the Software, but to the extent Licensor does so, you are not entitled to any compensation related thereto.\n\nDERIVATIVES: You may create derivatives of or make modifications to the Software, however, You agree that all and any such derivatives and modifications will be owned by Licensor and become a part of the Software licensed to You under this Agreement.  You may only use such derivatives and modifications for your own noncommercial internal research purposes, and you may not otherwise use, distribute or copy such derivatives and modifications in violation of this Agreement.\n\nBACKUPS:  If Licensee is an organization, it may make that number of copies of the Software necessary for internal noncommercial use at a single site within its organization provided that all information appearing in or on the original labels, including the copyright and trademark notices are copied onto the labels of the copies.\n\nUSES NOT PERMITTED:  You may not distribute, copy or use the Software except as explicitly permitted herein. Licensee has not been granted any trademark license as part of this Agreement and may not use the name or mark “OpenPose\", \"Carnegie Mellon\" or any renditions thereof without the prior written permission of Licensor.\n\nYou may not sell, rent, lease, sublicense, lend, time-share or transfer, in whole or in part, or provide third parties access to prior or present versions (or any parts thereof) of the Software.\n\nASSIGNMENT: You may not assign this Agreement or your rights hereunder without the prior written consent of Licensor. Any attempted assignment without such consent shall be null and void.\n\nTERM: The term of the license granted by this Agreement is from Licensee's acceptance of this Agreement by downloading the Software or by using the Software until terminated as provided below.\n\nThe Agreement automatically terminates without notice if you fail to comply with any provision of this Agreement.  Licensee may terminate this Agreement by ceasing using the Software.  Upon any termination of this Agreement, Licensee will delete any and all copies of the Software. You agree that all provisions which operate to protect the proprietary rights of Licensor shall remain in force should breach occur and that the obligation of confidentiality described in this Agreement is binding in perpetuity and, as such, survives the term of the Agreement.\n\nFEE: Provided Licensee abides completely by the terms and conditions of this Agreement, there is no fee due to Licensor for Licensee's use of the Software in accordance with this Agreement.\n\nDISCLAIMER OF WARRANTIES:  THE SOFTWARE IS PROVIDED \"AS-IS\" WITHOUT WARRANTY OF ANY KIND INCLUDING ANY WARRANTIES OF PERFORMANCE OR MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE OR PURPOSE OR OF NON-INFRINGEMENT.  LICENSEE BEARS ALL RISK RELATING TO QUALITY AND PERFORMANCE OF THE SOFTWARE AND RELATED MATERIALS.\n\nSUPPORT AND MAINTENANCE: No Software support or training by the Licensor is provided as part of this Agreement.\n\nEXCLUSIVE REMEDY AND LIMITATION OF LIABILITY: To the maximum extent permitted under applicable law, Licensor shall not be liable for direct, indirect, special, incidental, or consequential damages or lost profits related to Licensee's use of and/or inability to use the Software, even if Licensor is advised of the possibility of such damage.\n\nEXPORT REGULATION: Licensee agrees to comply with any and all applicable\nU.S. export control laws, regulations, and/or other laws related to embargoes and sanction programs administered by the Office of Foreign Assets Control.\n\nSEVERABILITY: If any provision(s) of this Agreement shall be held to be invalid, illegal, or unenforceable by a court or other tribunal of competent jurisdiction, the validity, legality and enforceability of the remaining provisions shall not in any way be affected or impaired thereby.\n\nNO IMPLIED WAIVERS: No failure or delay by Licensor in enforcing any right or remedy under this Agreement shall be construed as a waiver of any future or other exercise of such right or remedy by Licensor.\n\nGOVERNING LAW: This Agreement shall be construed and enforced in accordance with the laws of the Commonwealth of Pennsylvania without reference to conflict of laws principles.  You consent to the personal jurisdiction of the courts of this County and waive their rights to venue outside of Allegheny County, Pennsylvania.\n\nENTIRE AGREEMENT AND AMENDMENTS: This Agreement constitutes the sole and entire agreement between Licensee and Licensor as to the matter set forth herein and supersedes any previous agreements, understandings, and arrangements between the parties relating hereto.\n\n\n\n************************************************************************\n\nTHIRD-PARTY SOFTWARE NOTICES AND INFORMATION\n\nThis project incorporates material from the project(s) listed below (collectively, \"Third Party Code\").  This Third Party Code is licensed to you under their original license terms set forth below.  We reserves all other rights not expressly granted, whether by implication, estoppel or otherwise.\n\n1.\tCaffe, version 1.0.0, (https://github.com/BVLC/caffe/)\n\nCOPYRIGHT\n\nAll contributions by the University of California:\nCopyright (c) 2014-2017 The Regents of the University of California (Regents)\nAll rights reserved.\n\nAll other contributions:\nCopyright (c) 2014-2017, the respective contributors\nAll rights reserved.\n\nCaffe uses a shared copyright model: each contributor holds copyright over\ntheir contributions to Caffe. The project versioning records all such\ncontribution and copyright details. If a contributor wants to further mark\ntheir specific copyright on a particular contribution, they should indicate\ntheir copyright solely in the commit message of the change when it is\ncommitted.\n\nLICENSE\n\nRedistribution and use in source and binary forms, with or without\nmodification, are permitted provided that the following conditions are met:\n\n1. Redistributions of source code must retain the above copyright notice, this\n   list of conditions and the following disclaimer.\n2. Redistributions in binary form must reproduce the above copyright notice,\n   this list of conditions and the following disclaimer in the documentation\n   and/or other materials provided with the distribution.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND\nANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\nWARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\nDISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR\nANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES\n(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\nLOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND\nON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\nSOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n\nCONTRIBUTION AGREEMENT\n\nBy contributing to the BVLC/caffe repository through pull-request, comment,\nor otherwise, the contributor releases their content to the\nlicense and copyright terms herein.\n\n************END OF THIRD-PARTY SOFTWARE NOTICES AND INFORMATION**********\n"
  },
  {
    "path": "modules/control/proc/openpose/__init__.py",
    "content": "# Openpose\n# Original from CMU https://github.com/CMU-Perceptual-Computing-Lab/openpose\n# 2nd Edited by https://github.com/Hzzone/pytorch-openpose\n# 3rd Edited by ControlNet\n# 4th Edited by ControlNet (added face and correct hands)\n# 5th Edited by ControlNet (Improved JSON serialization/deserialization, and lots of bug fixs)\n# This preprocessor is licensed by CMU for non-commercial use only.\n\nimport os\nos.environ[\"KMP_DUPLICATE_LIB_OK\"] = \"TRUE\"\nimport warnings\nfrom typing import List, NamedTuple, Tuple, Union\nimport cv2\nimport numpy as np\nfrom huggingface_hub import hf_hub_download\nfrom PIL import Image\nfrom modules import devices\nfrom modules.shared import opts\nfrom modules.control.util import HWC3, resize_image\nfrom . import util\nfrom .body import Body, BodyResult, Keypoint\nfrom .face import Face\nfrom .hand import Hand\n\n\nHandResult = List[Keypoint]\nFaceResult = List[Keypoint]\n\nclass PoseResult(NamedTuple):\n    body: BodyResult\n    left_hand: Union[HandResult, None]\n    right_hand: Union[HandResult, None]\n    face: Union[FaceResult, None]\n\ndef draw_poses(poses: List[PoseResult], H, W, draw_body=True, draw_hand=True, draw_face=True):\n    \"\"\"\n    Draw the detected poses on an empty canvas.\n\n    Args:\n        poses (List[PoseResult]): A list of PoseResult objects containing the detected poses.\n        H (int): The height of the canvas.\n        W (int): The width of the canvas.\n        draw_body (bool, optional): Whether to draw body keypoints. Defaults to True.\n        draw_hand (bool, optional): Whether to draw hand keypoints. Defaults to True.\n        draw_face (bool, optional): Whether to draw face keypoints. Defaults to True.\n\n    Returns:\n        numpy.ndarray: A 3D numpy array representing the canvas with the drawn poses.\n    \"\"\"\n    canvas = np.zeros(shape=(H, W, 3), dtype=np.uint8)\n\n    for pose in poses:\n        if draw_body:\n            canvas = util.draw_bodypose(canvas, pose.body.keypoints)\n\n        if draw_hand:\n            canvas = util.draw_handpose(canvas, pose.left_hand)\n            canvas = util.draw_handpose(canvas, pose.right_hand)\n\n        if draw_face:\n            canvas = util.draw_facepose(canvas, pose.face)\n\n    return canvas\n\n\nclass OpenposeDetector:\n    \"\"\"\n    A class for detecting human poses in images using the Openpose model.\n\n    Attributes:\n        model_dir (str): Path to the directory where the pose models are stored.\n    \"\"\"\n    def __init__(self, body_estimation, hand_estimation=None, face_estimation=None):\n        self.body_estimation = body_estimation\n        self.hand_estimation = hand_estimation\n        self.face_estimation = face_estimation\n\n    @classmethod\n    def from_pretrained(cls, pretrained_model_or_path, filename=None, hand_filename=None, face_filename=None, cache_dir=None, local_files_only=False):\n\n        if pretrained_model_or_path == \"lllyasviel/ControlNet\":\n            filename = filename or \"annotator/ckpts/body_pose_model.pth\"\n            hand_filename = hand_filename or \"annotator/ckpts/hand_pose_model.pth\"\n            face_filename = face_filename or \"facenet.pth\"\n\n            face_pretrained_model_or_path = \"lllyasviel/Annotators\"\n        else:\n            filename = filename or \"body_pose_model.pth\"\n            hand_filename = hand_filename or \"hand_pose_model.pth\"\n            face_filename = face_filename or \"facenet.pth\"\n\n            face_pretrained_model_or_path = pretrained_model_or_path\n\n        if os.path.isdir(pretrained_model_or_path):\n            body_model_path = os.path.join(pretrained_model_or_path, filename)\n            hand_model_path = os.path.join(pretrained_model_or_path, hand_filename)\n            face_model_path = os.path.join(face_pretrained_model_or_path, face_filename)\n        else:\n            body_model_path = hf_hub_download(pretrained_model_or_path, filename, cache_dir=cache_dir, local_files_only=local_files_only)\n            hand_model_path = hf_hub_download(pretrained_model_or_path, hand_filename, cache_dir=cache_dir, local_files_only=local_files_only)\n            face_model_path = hf_hub_download(face_pretrained_model_or_path, face_filename, cache_dir=cache_dir, local_files_only=local_files_only)\n\n        body_estimation = Body(body_model_path)\n        hand_estimation = Hand(hand_model_path)\n        face_estimation = Face(face_model_path)\n\n        return cls(body_estimation, hand_estimation, face_estimation)\n\n    def to(self, device):\n        self.body_estimation.to(device)\n        self.hand_estimation.to(device)\n        self.face_estimation.to(device)\n        return self\n\n    def detect_hands(self, body: BodyResult, oriImg) -> Tuple[Union[HandResult, None], Union[HandResult, None]]:\n        left_hand = None\n        right_hand = None\n        H, W, _ = oriImg.shape\n        for x, y, w, is_left in util.handDetect(body, oriImg):\n            peaks = self.hand_estimation(oriImg[y:y+w, x:x+w, :]).astype(np.float32)\n            if peaks.ndim == 2 and peaks.shape[1] == 2:\n                peaks[:, 0] = np.where(peaks[:, 0] < 1e-6, -1, peaks[:, 0] + x) / float(W)\n                peaks[:, 1] = np.where(peaks[:, 1] < 1e-6, -1, peaks[:, 1] + y) / float(H)\n\n                hand_result = [\n                    Keypoint(x=peak[0], y=peak[1])\n                    for peak in peaks\n                ]\n\n                if is_left:\n                    left_hand = hand_result\n                else:\n                    right_hand = hand_result\n\n        return left_hand, right_hand\n\n    def detect_face(self, body: BodyResult, oriImg) -> Union[FaceResult, None]:\n        face = util.faceDetect(body, oriImg)\n        if face is None:\n            return None\n\n        x, y, w = face\n        H, W, _ = oriImg.shape\n        heatmaps = self.face_estimation(oriImg[y:y+w, x:x+w, :])\n        peaks = self.face_estimation.compute_peaks_from_heatmaps(heatmaps).astype(np.float32)\n        if peaks.ndim == 2 and peaks.shape[1] == 2:\n            peaks[:, 0] = np.where(peaks[:, 0] < 1e-6, -1, peaks[:, 0] + x) / float(W)\n            peaks[:, 1] = np.where(peaks[:, 1] < 1e-6, -1, peaks[:, 1] + y) / float(H)\n            return [\n                Keypoint(x=peak[0], y=peak[1])\n                for peak in peaks\n            ]\n\n        return None\n\n    def detect_poses(self, oriImg, include_hand=False, include_face=False) -> List[PoseResult]:\n        \"\"\"\n        Detect poses in the given image.\n            Args:\n                oriImg (numpy.ndarray): The input image for pose detection.\n                include_hand (bool, optional): Whether to include hand detection. Defaults to False.\n                include_face (bool, optional): Whether to include face detection. Defaults to False.\n\n        Returns:\n            List[PoseResult]: A list of PoseResult objects containing the detected poses.\n        \"\"\"\n        oriImg = oriImg[:, :, ::-1].copy()\n        H, W, _C = oriImg.shape\n        candidate, subset = self.body_estimation(oriImg)\n        bodies = self.body_estimation.format_body_result(candidate, subset)\n\n        results = []\n        for body in bodies:\n            left_hand, right_hand, face = (None,) * 3\n            if include_hand:\n                left_hand, right_hand = self.detect_hands(body, oriImg)\n            if include_face:\n                face = self.detect_face(body, oriImg)\n\n            results.append(PoseResult(BodyResult(\n                keypoints=[\n                    Keypoint(\n                        x=keypoint.x / float(W),\n                        y=keypoint.y / float(H)\n                    ) if keypoint is not None else None\n                    for keypoint in body.keypoints\n                ],\n                total_score=body.total_score,\n                total_parts=body.total_parts\n            ), left_hand, right_hand, face))\n\n        return results\n\n    def __call__(self, input_image, detect_resolution=512, image_resolution=512, include_body=True, include_hand=False, include_face=False, hand_and_face=None, output_type=\"pil\", **kwargs):\n        self.to(devices.device)\n        if hand_and_face is not None:\n            warnings.warn(\"hand_and_face is deprecated. Use include_hand and include_face instead.\", DeprecationWarning)\n            include_hand = hand_and_face\n            include_face = hand_and_face\n        if \"return_pil\" in kwargs:\n            warnings.warn(\"return_pil is deprecated. Use output_type instead.\", DeprecationWarning)\n            output_type = \"pil\" if kwargs[\"return_pil\"] else \"np\"\n        if type(output_type) is bool:\n            warnings.warn(\"Passing `True` or `False` to `output_type` is deprecated and will raise an error in future versions\")\n            if output_type:\n                output_type = \"pil\"\n        if not isinstance(input_image, np.ndarray):\n            input_image = np.array(input_image, dtype=np.uint8)\n        input_image = HWC3(input_image)\n        input_image = resize_image(input_image, detect_resolution)\n        H, W, _C = input_image.shape\n        poses = self.detect_poses(input_image, include_hand, include_face)\n        canvas = draw_poses(poses, H, W, draw_body=include_body, draw_hand=include_hand, draw_face=include_face)\n        detected_map = canvas\n        detected_map = HWC3(detected_map)\n        img = resize_image(input_image, image_resolution)\n        H, W, _C = img.shape\n        detected_map = cv2.resize(detected_map, (W, H), interpolation=cv2.INTER_LINEAR)\n        if opts.control_move_processor:\n            self.to('cpu')\n        if output_type == \"pil\":\n            detected_map = Image.fromarray(detected_map)\n        return detected_map\n"
  },
  {
    "path": "modules/control/proc/openpose/body.py",
    "content": "import math\nfrom typing import List, NamedTuple, Union\nimport numpy as np\nimport torch\nfrom scipy.ndimage.filters import gaussian_filter\nfrom . import util\nfrom .model import bodypose_model\n\n\nclass Keypoint(NamedTuple):\n    x: float\n    y: float\n    score: float = 1.0\n    id: int = -1\n\n\nclass BodyResult(NamedTuple):\n    # Note: Using `Union` instead of `|` operator as the ladder is a Python\n    # 3.10 feature.\n    # Annotator code should be Python 3.8 Compatible, as controlnet repo uses\n    # Python 3.8 environment.\n    # https://github.com/lllyasviel/ControlNet/blob/d3284fcd0972c510635a4f5abe2eeb71dc0de524/environment.yaml#L6\n    keypoints: List[Union[Keypoint, None]]\n    total_score: float\n    total_parts: int\n\n\nclass Body(object):\n    def __init__(self, model_path):\n        self.model = bodypose_model()\n        model_dict = util.transfer(self.model, torch.load(model_path))\n        self.model.load_state_dict(model_dict)\n        self.model.eval()\n\n    def to(self, device):\n        self.model.to(device)\n        return self\n\n    def __call__(self, oriImg):\n        device = next(iter(self.model.parameters())).device\n        # scale_search = [0.5, 1.0, 1.5, 2.0]\n        scale_search = [0.5]\n        boxsize = 368\n        stride = 8\n        padValue = 128\n        thre1 = 0.1\n        thre2 = 0.05\n        multiplier = [x * boxsize / oriImg.shape[0] for x in scale_search]\n        heatmap_avg = np.zeros((oriImg.shape[0], oriImg.shape[1], 19))\n        paf_avg = np.zeros((oriImg.shape[0], oriImg.shape[1], 38))\n\n        for m in range(len(multiplier)):\n            scale = multiplier[m]\n            imageToTest = util.smart_resize_k(oriImg, fx=scale, fy=scale)\n            imageToTest_padded, pad = util.padRightDownCorner(imageToTest, stride, padValue)\n            im = np.transpose(np.float32(imageToTest_padded[:, :, :, np.newaxis]), (3, 2, 0, 1)) / 256 - 0.5\n            im = np.ascontiguousarray(im)\n\n            data = torch.from_numpy(im).float()\n            data = data.to(device)\n            # data = data.permute([2, 0, 1]).unsqueeze(0).float()\n            Mconv7_stage6_L1, Mconv7_stage6_L2 = self.model(data)\n            Mconv7_stage6_L1 = Mconv7_stage6_L1.cpu().numpy()\n            Mconv7_stage6_L2 = Mconv7_stage6_L2.cpu().numpy()\n\n            # extract outputs, resize, and remove padding\n            # heatmap = np.transpose(np.squeeze(net.blobs[output_blobs.keys()[1]].data), (1, 2, 0))  # output 1 is heatmaps\n            heatmap = np.transpose(np.squeeze(Mconv7_stage6_L2), (1, 2, 0))  # output 1 is heatmaps\n            heatmap = util.smart_resize_k(heatmap, fx=stride, fy=stride)\n            heatmap = heatmap[:imageToTest_padded.shape[0] - pad[2], :imageToTest_padded.shape[1] - pad[3], :]\n            heatmap = util.smart_resize(heatmap, (oriImg.shape[0], oriImg.shape[1]))\n\n            # paf = np.transpose(np.squeeze(net.blobs[output_blobs.keys()[0]].data), (1, 2, 0))  # output 0 is PAFs\n            paf = np.transpose(np.squeeze(Mconv7_stage6_L1), (1, 2, 0))  # output 0 is PAFs\n            paf = util.smart_resize_k(paf, fx=stride, fy=stride)\n            paf = paf[:imageToTest_padded.shape[0] - pad[2], :imageToTest_padded.shape[1] - pad[3], :]\n            paf = util.smart_resize(paf, (oriImg.shape[0], oriImg.shape[1]))\n\n            heatmap_avg += heatmap_avg + heatmap / len(multiplier)\n            paf_avg += paf / len(multiplier)\n\n        all_peaks = []\n        peak_counter = 0\n\n        for part in range(18):\n            map_ori = heatmap_avg[:, :, part]\n            one_heatmap = gaussian_filter(map_ori, sigma=3)\n\n            map_left = np.zeros(one_heatmap.shape)\n            map_left[1:, :] = one_heatmap[:-1, :]\n            map_right = np.zeros(one_heatmap.shape)\n            map_right[:-1, :] = one_heatmap[1:, :]\n            map_up = np.zeros(one_heatmap.shape)\n            map_up[:, 1:] = one_heatmap[:, :-1]\n            map_down = np.zeros(one_heatmap.shape)\n            map_down[:, :-1] = one_heatmap[:, 1:]\n\n            peaks_binary = np.logical_and.reduce(\n                (one_heatmap >= map_left, one_heatmap >= map_right, one_heatmap >= map_up, one_heatmap >= map_down, one_heatmap > thre1))\n            peaks = list(zip(np.nonzero(peaks_binary)[1], np.nonzero(peaks_binary)[0]))  # note reverse\n            peaks_with_score = [x + (map_ori[x[1], x[0]],) for x in peaks]\n            peak_id = range(peak_counter, peak_counter + len(peaks))\n            peaks_with_score_and_id = [peaks_with_score[i] + (peak_id[i],) for i in range(len(peak_id))]\n\n            all_peaks.append(peaks_with_score_and_id)\n            peak_counter += len(peaks)\n\n        # find connection in the specified sequence, center 29 is in the position 15\n        limbSeq = [[2, 3], [2, 6], [3, 4], [4, 5], [6, 7], [7, 8], [2, 9], [9, 10], \\\n                   [10, 11], [2, 12], [12, 13], [13, 14], [2, 1], [1, 15], [15, 17], \\\n                   [1, 16], [16, 18], [3, 17], [6, 18]]\n        # the middle joints heatmap correpondence\n        mapIdx = [[31, 32], [39, 40], [33, 34], [35, 36], [41, 42], [43, 44], [19, 20], [21, 22], \\\n                  [23, 24], [25, 26], [27, 28], [29, 30], [47, 48], [49, 50], [53, 54], [51, 52], \\\n                  [55, 56], [37, 38], [45, 46]]\n\n        connection_all = []\n        special_k = []\n        mid_num = 10\n\n        for k in range(len(mapIdx)):\n            score_mid = paf_avg[:, :, [x - 19 for x in mapIdx[k]]]\n            candA = all_peaks[limbSeq[k][0] - 1]\n            candB = all_peaks[limbSeq[k][1] - 1]\n            nA = len(candA)\n            nB = len(candB)\n            indexA, indexB = limbSeq[k]\n            if (nA != 0 and nB != 0):\n                connection_candidate = []\n                for i in range(nA):\n                    for j in range(nB):\n                        vec = np.subtract(candB[j][:2], candA[i][:2])\n                        norm = math.sqrt(vec[0] * vec[0] + vec[1] * vec[1])\n                        norm = max(0.001, norm)\n                        vec = np.divide(vec, norm)\n\n                        startend = list(zip(np.linspace(candA[i][0], candB[j][0], num=mid_num), \\\n                                            np.linspace(candA[i][1], candB[j][1], num=mid_num)))\n\n                        vec_x = np.array([score_mid[int(round(startend[x][1])), int(round(startend[x][0])), 0] for x in range(len(startend))])\n                        vec_y = np.array([score_mid[int(round(startend[x][1])), int(round(startend[x][0])), 1] for x in range(len(startend))])\n\n                        score_midpts = np.multiply(vec_x, vec[0]) + np.multiply(vec_y, vec[1])\n                        score_with_dist_prior = sum(score_midpts) / len(score_midpts) + min(\n                            0.5 * oriImg.shape[0] / norm - 1, 0)\n                        criterion1 = len(np.nonzero(score_midpts > thre2)[0]) > 0.8 * len(score_midpts)\n                        criterion2 = score_with_dist_prior > 0\n                        if criterion1 and criterion2:\n                            connection_candidate.append(\n                                [i, j, score_with_dist_prior, score_with_dist_prior + candA[i][2] + candB[j][2]])\n\n                connection_candidate = sorted(connection_candidate, key=lambda x: x[2], reverse=True)\n                connection = np.zeros((0, 5))\n                for c in range(len(connection_candidate)):\n                    i, j, s = connection_candidate[c][0:3]\n                    if (i not in connection[:, 3] and j not in connection[:, 4]):\n                        connection = np.vstack([connection, [candA[i][3], candB[j][3], s, i, j]])\n                        if len(connection) >= min(nA, nB):\n                            break\n\n                connection_all.append(connection)\n            else:\n                special_k.append(k)\n                connection_all.append([])\n\n        # last number in each row is the total parts number of that person\n        # the second last number in each row is the score of the overall configuration\n        subset = -1 * np.ones((0, 20))\n        candidate = np.array([item for sublist in all_peaks for item in sublist])\n\n        for k in range(len(mapIdx)):\n            if k not in special_k:\n                partAs = connection_all[k][:, 0]\n                partBs = connection_all[k][:, 1]\n                indexA, indexB = np.array(limbSeq[k]) - 1\n\n                for i in range(len(connection_all[k])):  # = 1:size(temp,1)\n                    found = 0\n                    subset_idx = [-1, -1]\n                    for j in range(len(subset)):  # 1:size(subset,1):\n                        if subset[j][indexA] == partAs[i] or subset[j][indexB] == partBs[i]:\n                            subset_idx[found] = j\n                            found += 1\n\n                    if found == 1:\n                        j = subset_idx[0]\n                        if subset[j][indexB] != partBs[i]:\n                            subset[j][indexB] = partBs[i]\n                            subset[j][-1] += 1\n                            subset[j][-2] += candidate[partBs[i].astype(int), 2] + connection_all[k][i][2]\n                    elif found == 2:  # if found 2 and disjoint, merge them\n                        j1, j2 = subset_idx\n                        membership = ((subset[j1] >= 0).astype(int) + (subset[j2] >= 0).astype(int))[:-2]\n                        if len(np.nonzero(membership == 2)[0]) == 0:  # merge\n                            subset[j1][:-2] += (subset[j2][:-2] + 1)\n                            subset[j1][-2:] += subset[j2][-2:]\n                            subset[j1][-2] += connection_all[k][i][2]\n                            subset = np.delete(subset, j2, 0)\n                        else:  # as like found == 1\n                            subset[j1][indexB] = partBs[i]\n                            subset[j1][-1] += 1\n                            subset[j1][-2] += candidate[partBs[i].astype(int), 2] + connection_all[k][i][2]\n\n                    # if find no partA in the subset, create a new subset\n                    elif not found and k < 17:\n                        row = -1 * np.ones(20)\n                        row[indexA] = partAs[i]\n                        row[indexB] = partBs[i]\n                        row[-1] = 2\n                        row[-2] = sum(candidate[connection_all[k][i, :2].astype(int), 2]) + connection_all[k][i][2]\n                        subset = np.vstack([subset, row])\n        # delete some rows of subset which has few parts occur\n        deleteIdx = []\n        for i in range(len(subset)):\n            if subset[i][-1] < 4 or subset[i][-2] / subset[i][-1] < 0.4:\n                deleteIdx.append(i)\n        subset = np.delete(subset, deleteIdx, axis=0)\n\n        # subset: n*20 array, 0-17 is the index in candidate, 18 is the total score, 19 is the total parts\n        # candidate: x, y, score, id\n        return candidate, subset\n\n    @staticmethod\n    def format_body_result(candidate: np.ndarray, subset: np.ndarray) -> List[BodyResult]:\n        \"\"\"\n        Format the body results from the candidate and subset arrays into a list of BodyResult objects.\n\n        Args:\n            candidate (np.ndarray): An array of candidates containing the x, y coordinates, score, and id\n                for each body part.\n            subset (np.ndarray): An array of subsets containing indices to the candidate array for each\n                person detected. The last two columns of each row hold the total score and total parts\n                of the person.\n\n        Returns:\n            List[BodyResult]: A list of BodyResult objects, where each object represents a person with\n                detected keypoints, total score, and total parts.\n        \"\"\"\n        return [\n            BodyResult(\n                keypoints=[\n                    Keypoint(\n                        x=candidate[candidate_index][0],\n                        y=candidate[candidate_index][1],\n                        score=candidate[candidate_index][2],\n                        id=candidate[candidate_index][3]\n                    ) if candidate_index != -1 else None\n                    for candidate_index in person[:18].astype(int)\n                ],\n                total_score=person[18],\n                total_parts=person[19]\n            )\n            for person in subset\n        ]\n"
  },
  {
    "path": "modules/control/proc/openpose/face.py",
    "content": "import numpy as np\nimport torch\nimport torch.nn.functional as F\nfrom torch.nn import Conv2d, MaxPool2d, Module, ReLU, init\nfrom torchvision.transforms import ToPILImage, ToTensor\n\nfrom . import util\n\n\nclass FaceNet(Module):\n    \"\"\"Model the cascading heatmaps. \"\"\"\n    def __init__(self):\n        super(FaceNet, self).__init__()\n        # cnn to make feature map\n        self.relu = ReLU()\n        self.max_pooling_2d = MaxPool2d(kernel_size=2, stride=2)\n        self.conv1_1 = Conv2d(in_channels=3, out_channels=64,\n                              kernel_size=3, stride=1, padding=1)\n        self.conv1_2 = Conv2d(\n            in_channels=64, out_channels=64, kernel_size=3, stride=1,\n            padding=1)\n        self.conv2_1 = Conv2d(\n            in_channels=64, out_channels=128, kernel_size=3, stride=1,\n            padding=1)\n        self.conv2_2 = Conv2d(\n            in_channels=128, out_channels=128, kernel_size=3, stride=1,\n            padding=1)\n        self.conv3_1 = Conv2d(\n            in_channels=128, out_channels=256, kernel_size=3, stride=1,\n            padding=1)\n        self.conv3_2 = Conv2d(\n            in_channels=256, out_channels=256, kernel_size=3, stride=1,\n            padding=1)\n        self.conv3_3 = Conv2d(\n            in_channels=256, out_channels=256, kernel_size=3, stride=1,\n            padding=1)\n        self.conv3_4 = Conv2d(\n            in_channels=256, out_channels=256, kernel_size=3, stride=1,\n            padding=1)\n        self.conv4_1 = Conv2d(\n            in_channels=256, out_channels=512, kernel_size=3, stride=1,\n            padding=1)\n        self.conv4_2 = Conv2d(\n            in_channels=512, out_channels=512, kernel_size=3, stride=1,\n            padding=1)\n        self.conv4_3 = Conv2d(\n            in_channels=512, out_channels=512, kernel_size=3, stride=1,\n            padding=1)\n        self.conv4_4 = Conv2d(\n            in_channels=512, out_channels=512, kernel_size=3, stride=1,\n            padding=1)\n        self.conv5_1 = Conv2d(\n            in_channels=512, out_channels=512, kernel_size=3, stride=1,\n            padding=1)\n        self.conv5_2 = Conv2d(\n            in_channels=512, out_channels=512, kernel_size=3, stride=1,\n            padding=1)\n        self.conv5_3_CPM = Conv2d(\n            in_channels=512, out_channels=128, kernel_size=3, stride=1,\n            padding=1)\n\n        # stage1\n        self.conv6_1_CPM = Conv2d(\n            in_channels=128, out_channels=512, kernel_size=1, stride=1,\n            padding=0)\n        self.conv6_2_CPM = Conv2d(\n            in_channels=512, out_channels=71, kernel_size=1, stride=1,\n            padding=0)\n\n        # stage2\n        self.Mconv1_stage2 = Conv2d(\n            in_channels=199, out_channels=128, kernel_size=7, stride=1,\n            padding=3)\n        self.Mconv2_stage2 = Conv2d(\n            in_channels=128, out_channels=128, kernel_size=7, stride=1,\n            padding=3)\n        self.Mconv3_stage2 = Conv2d(\n            in_channels=128, out_channels=128, kernel_size=7, stride=1,\n            padding=3)\n        self.Mconv4_stage2 = Conv2d(\n            in_channels=128, out_channels=128, kernel_size=7, stride=1,\n            padding=3)\n        self.Mconv5_stage2 = Conv2d(\n            in_channels=128, out_channels=128, kernel_size=7, stride=1,\n            padding=3)\n        self.Mconv6_stage2 = Conv2d(\n            in_channels=128, out_channels=128, kernel_size=1, stride=1,\n            padding=0)\n        self.Mconv7_stage2 = Conv2d(\n            in_channels=128, out_channels=71, kernel_size=1, stride=1,\n            padding=0)\n\n        # stage3\n        self.Mconv1_stage3 = Conv2d(\n            in_channels=199, out_channels=128, kernel_size=7, stride=1,\n            padding=3)\n        self.Mconv2_stage3 = Conv2d(\n            in_channels=128, out_channels=128, kernel_size=7, stride=1,\n            padding=3)\n        self.Mconv3_stage3 = Conv2d(\n            in_channels=128, out_channels=128, kernel_size=7, stride=1,\n            padding=3)\n        self.Mconv4_stage3 = Conv2d(\n            in_channels=128, out_channels=128, kernel_size=7, stride=1,\n            padding=3)\n        self.Mconv5_stage3 = Conv2d(\n            in_channels=128, out_channels=128, kernel_size=7, stride=1,\n            padding=3)\n        self.Mconv6_stage3 = Conv2d(\n            in_channels=128, out_channels=128, kernel_size=1, stride=1,\n            padding=0)\n        self.Mconv7_stage3 = Conv2d(\n            in_channels=128, out_channels=71, kernel_size=1, stride=1,\n            padding=0)\n\n        # stage4\n        self.Mconv1_stage4 = Conv2d(\n            in_channels=199, out_channels=128, kernel_size=7, stride=1,\n            padding=3)\n        self.Mconv2_stage4 = Conv2d(\n            in_channels=128, out_channels=128, kernel_size=7, stride=1,\n            padding=3)\n        self.Mconv3_stage4 = Conv2d(\n            in_channels=128, out_channels=128, kernel_size=7, stride=1,\n            padding=3)\n        self.Mconv4_stage4 = Conv2d(\n            in_channels=128, out_channels=128, kernel_size=7, stride=1,\n            padding=3)\n        self.Mconv5_stage4 = Conv2d(\n            in_channels=128, out_channels=128, kernel_size=7, stride=1,\n            padding=3)\n        self.Mconv6_stage4 = Conv2d(\n            in_channels=128, out_channels=128, kernel_size=1, stride=1,\n            padding=0)\n        self.Mconv7_stage4 = Conv2d(\n            in_channels=128, out_channels=71, kernel_size=1, stride=1,\n            padding=0)\n\n        # stage5\n        self.Mconv1_stage5 = Conv2d(\n            in_channels=199, out_channels=128, kernel_size=7, stride=1,\n            padding=3)\n        self.Mconv2_stage5 = Conv2d(\n            in_channels=128, out_channels=128, kernel_size=7, stride=1,\n            padding=3)\n        self.Mconv3_stage5 = Conv2d(\n            in_channels=128, out_channels=128, kernel_size=7, stride=1,\n            padding=3)\n        self.Mconv4_stage5 = Conv2d(\n            in_channels=128, out_channels=128, kernel_size=7, stride=1,\n            padding=3)\n        self.Mconv5_stage5 = Conv2d(\n            in_channels=128, out_channels=128, kernel_size=7, stride=1,\n            padding=3)\n        self.Mconv6_stage5 = Conv2d(\n            in_channels=128, out_channels=128, kernel_size=1, stride=1,\n            padding=0)\n        self.Mconv7_stage5 = Conv2d(\n            in_channels=128, out_channels=71, kernel_size=1, stride=1,\n            padding=0)\n\n        # stage6\n        self.Mconv1_stage6 = Conv2d(\n            in_channels=199, out_channels=128, kernel_size=7, stride=1,\n            padding=3)\n        self.Mconv2_stage6 = Conv2d(\n            in_channels=128, out_channels=128, kernel_size=7, stride=1,\n            padding=3)\n        self.Mconv3_stage6 = Conv2d(\n            in_channels=128, out_channels=128, kernel_size=7, stride=1,\n            padding=3)\n        self.Mconv4_stage6 = Conv2d(\n            in_channels=128, out_channels=128, kernel_size=7, stride=1,\n            padding=3)\n        self.Mconv5_stage6 = Conv2d(\n            in_channels=128, out_channels=128, kernel_size=7, stride=1,\n            padding=3)\n        self.Mconv6_stage6 = Conv2d(\n            in_channels=128, out_channels=128, kernel_size=1, stride=1,\n            padding=0)\n        self.Mconv7_stage6 = Conv2d(\n            in_channels=128, out_channels=71, kernel_size=1, stride=1,\n            padding=0)\n\n        for m in self.modules():\n            if isinstance(m, Conv2d):\n                init.constant_(m.bias, 0)\n\n    def forward(self, x):\n        \"\"\"Return a list of heatmaps.\"\"\"\n        heatmaps = []\n\n        h = self.relu(self.conv1_1(x))\n        h = self.relu(self.conv1_2(h))\n        h = self.max_pooling_2d(h)\n        h = self.relu(self.conv2_1(h))\n        h = self.relu(self.conv2_2(h))\n        h = self.max_pooling_2d(h)\n        h = self.relu(self.conv3_1(h))\n        h = self.relu(self.conv3_2(h))\n        h = self.relu(self.conv3_3(h))\n        h = self.relu(self.conv3_4(h))\n        h = self.max_pooling_2d(h)\n        h = self.relu(self.conv4_1(h))\n        h = self.relu(self.conv4_2(h))\n        h = self.relu(self.conv4_3(h))\n        h = self.relu(self.conv4_4(h))\n        h = self.relu(self.conv5_1(h))\n        h = self.relu(self.conv5_2(h))\n        h = self.relu(self.conv5_3_CPM(h))\n        feature_map = h\n\n        # stage1\n        h = self.relu(self.conv6_1_CPM(h))\n        h = self.conv6_2_CPM(h)\n        heatmaps.append(h)\n\n        # stage2\n        h = torch.cat([h, feature_map], dim=1)  # channel concat\n        h = self.relu(self.Mconv1_stage2(h))\n        h = self.relu(self.Mconv2_stage2(h))\n        h = self.relu(self.Mconv3_stage2(h))\n        h = self.relu(self.Mconv4_stage2(h))\n        h = self.relu(self.Mconv5_stage2(h))\n        h = self.relu(self.Mconv6_stage2(h))\n        h = self.Mconv7_stage2(h)\n        heatmaps.append(h)\n\n        # stage3\n        h = torch.cat([h, feature_map], dim=1)  # channel concat\n        h = self.relu(self.Mconv1_stage3(h))\n        h = self.relu(self.Mconv2_stage3(h))\n        h = self.relu(self.Mconv3_stage3(h))\n        h = self.relu(self.Mconv4_stage3(h))\n        h = self.relu(self.Mconv5_stage3(h))\n        h = self.relu(self.Mconv6_stage3(h))\n        h = self.Mconv7_stage3(h)\n        heatmaps.append(h)\n\n        # stage4\n        h = torch.cat([h, feature_map], dim=1)  # channel concat\n        h = self.relu(self.Mconv1_stage4(h))\n        h = self.relu(self.Mconv2_stage4(h))\n        h = self.relu(self.Mconv3_stage4(h))\n        h = self.relu(self.Mconv4_stage4(h))\n        h = self.relu(self.Mconv5_stage4(h))\n        h = self.relu(self.Mconv6_stage4(h))\n        h = self.Mconv7_stage4(h)\n        heatmaps.append(h)\n\n        # stage5\n        h = torch.cat([h, feature_map], dim=1)  # channel concat\n        h = self.relu(self.Mconv1_stage5(h))\n        h = self.relu(self.Mconv2_stage5(h))\n        h = self.relu(self.Mconv3_stage5(h))\n        h = self.relu(self.Mconv4_stage5(h))\n        h = self.relu(self.Mconv5_stage5(h))\n        h = self.relu(self.Mconv6_stage5(h))\n        h = self.Mconv7_stage5(h)\n        heatmaps.append(h)\n\n        # stage6\n        h = torch.cat([h, feature_map], dim=1)  # channel concat\n        h = self.relu(self.Mconv1_stage6(h))\n        h = self.relu(self.Mconv2_stage6(h))\n        h = self.relu(self.Mconv3_stage6(h))\n        h = self.relu(self.Mconv4_stage6(h))\n        h = self.relu(self.Mconv5_stage6(h))\n        h = self.relu(self.Mconv6_stage6(h))\n        h = self.Mconv7_stage6(h)\n        heatmaps.append(h)\n\n        return heatmaps\n\n\nTOTEN = ToTensor()\nTOPIL = ToPILImage()\n\n\nparams = {\n    'gaussian_sigma': 2.5,\n    'inference_img_size': 736,  # 368, 736, 1312\n    'heatmap_peak_thresh': 0.1,\n    'crop_scale': 1.5,\n    'line_indices': [\n        [0, 1], [1, 2], [2, 3], [3, 4], [4, 5], [5, 6],\n        [6, 7], [7, 8], [8, 9], [9, 10], [10, 11], [11, 12], [12, 13],\n        [13, 14], [14, 15], [15, 16],\n        [17, 18], [18, 19], [19, 20], [20, 21],\n        [22, 23], [23, 24], [24, 25], [25, 26],\n        [27, 28], [28, 29], [29, 30],\n        [31, 32], [32, 33], [33, 34], [34, 35],\n        [36, 37], [37, 38], [38, 39], [39, 40], [40, 41], [41, 36],\n        [42, 43], [43, 44], [44, 45], [45, 46], [46, 47], [47, 42],\n        [48, 49], [49, 50], [50, 51], [51, 52], [52, 53], [53, 54],\n        [54, 55], [55, 56], [56, 57], [57, 58], [58, 59], [59, 48],\n        [60, 61], [61, 62], [62, 63], [63, 64], [64, 65], [65, 66],\n        [66, 67], [67, 60]\n    ],\n}\n\n\nclass Face(object):\n    \"\"\"\n    The OpenPose face landmark detector model.\n\n    Args:\n        inference_size: set the size of the inference image size, suggested:\n            368, 736, 1312, default 736\n        gaussian_sigma: blur the heatmaps, default 2.5\n        heatmap_peak_thresh: return landmark if over threshold, default 0.1\n\n    \"\"\"\n    def __init__(self, face_model_path,\n                 inference_size=None,\n                 gaussian_sigma=None,\n                 heatmap_peak_thresh=None):\n        self.inference_size = inference_size or params[\"inference_img_size\"]\n        self.sigma = gaussian_sigma or params['gaussian_sigma']\n        self.threshold = heatmap_peak_thresh or params[\"heatmap_peak_thresh\"]\n        self.model = FaceNet()\n        self.model.load_state_dict(torch.load(face_model_path))\n        self.model.eval()\n\n    def to(self, device):\n        self.model.to(device)\n        return self\n\n    def __call__(self, face_img):\n        device = next(iter(self.model.parameters())).device\n        H, W, C = face_img.shape\n\n        w_size = 384\n        x_data = torch.from_numpy(util.smart_resize(face_img, (w_size, w_size))).permute([2, 0, 1]) / 256.0 - 0.5\n\n        x_data = x_data.to(device)\n\n        hs = self.model(x_data[None, ...])\n        heatmaps = F.interpolate(\n            hs[-1],\n            (H, W),\n            mode='bilinear', align_corners=True).cpu().numpy()[0]\n        return heatmaps\n\n    def compute_peaks_from_heatmaps(self, heatmaps):\n        all_peaks = []\n        for part in range(heatmaps.shape[0]):\n            map_ori = heatmaps[part].copy()\n            binary = np.ascontiguousarray(map_ori > 0.05, dtype=np.uint8)\n\n            if np.sum(binary) == 0:\n                continue\n\n            positions = np.where(binary > 0.5)\n            intensities = map_ori[positions]\n            mi = np.argmax(intensities)\n            y, x = positions[0][mi], positions[1][mi]\n            all_peaks.append([x, y])\n\n        return np.array(all_peaks)\n"
  },
  {
    "path": "modules/control/proc/openpose/hand.py",
    "content": "import cv2\nimport numpy as np\nimport torch\nfrom scipy.ndimage.filters import gaussian_filter\nfrom skimage.measure import label\n\nfrom . import util\nfrom .model import handpose_model\n\n\nclass Hand(object):\n    def __init__(self, model_path):\n        self.model = handpose_model()\n        model_dict = util.transfer(self.model, torch.load(model_path))\n        self.model.load_state_dict(model_dict)\n        self.model.eval()\n\n    def to(self, device):\n        self.model.to(device)\n        return self\n\n    def __call__(self, oriImgRaw):\n        device = next(iter(self.model.parameters())).device\n        scale_search = [0.5, 1.0, 1.5, 2.0]\n        # scale_search = [0.5]\n        boxsize = 368\n        stride = 8\n        padValue = 128\n        thre = 0.05\n        multiplier = [x * boxsize for x in scale_search]\n\n        wsize = 128\n        heatmap_avg = np.zeros((wsize, wsize, 22))\n\n        Hr, Wr, Cr = oriImgRaw.shape\n\n        oriImg = cv2.GaussianBlur(oriImgRaw, (0, 0), 0.8)\n\n        for m in range(len(multiplier)):\n            scale = multiplier[m]\n            imageToTest = util.smart_resize(oriImg, (scale, scale))\n\n            imageToTest_padded, pad = util.padRightDownCorner(imageToTest, stride, padValue)\n            im = np.transpose(np.float32(imageToTest_padded[:, :, :, np.newaxis]), (3, 2, 0, 1)) / 256 - 0.5\n            im = np.ascontiguousarray(im)\n\n            data = torch.from_numpy(im).float()\n            data = data.to(device)\n\n            output = self.model(data).cpu().numpy()\n\n            # extract outputs, resize, and remove padding\n            heatmap = np.transpose(np.squeeze(output), (1, 2, 0))  # output 1 is heatmaps\n            heatmap = util.smart_resize_k(heatmap, fx=stride, fy=stride)\n            heatmap = heatmap[:imageToTest_padded.shape[0] - pad[2], :imageToTest_padded.shape[1] - pad[3], :]\n            heatmap = util.smart_resize(heatmap, (wsize, wsize))\n\n            heatmap_avg += heatmap / len(multiplier)\n\n        all_peaks = []\n        for part in range(21):\n            map_ori = heatmap_avg[:, :, part]\n            one_heatmap = gaussian_filter(map_ori, sigma=3)\n            binary = np.ascontiguousarray(one_heatmap > thre, dtype=np.uint8)\n\n            if np.sum(binary) == 0:\n                all_peaks.append([0, 0])\n                continue\n            label_img, label_numbers = label(binary, return_num=True, connectivity=binary.ndim)\n            max_index = np.argmax([np.sum(map_ori[label_img == i]) for i in range(1, label_numbers + 1)]) + 1\n            label_img[label_img != max_index] = 0\n            map_ori[label_img == 0] = 0\n\n            y, x = util.npmax(map_ori)\n            y = int(float(y) * float(Hr) / float(wsize))\n            x = int(float(x) * float(Wr) / float(wsize))\n            all_peaks.append([x, y])\n        return np.array(all_peaks)\n\nif __name__ == \"__main__\":\n    hand_estimation = Hand('../model/hand_pose_model.pth')\n\n    # test_image = '../images/hand.jpg'\n    test_image = '../images/hand.jpg'\n    oriImg = cv2.imread(test_image)  # B,G,R order\n    peaks = hand_estimation(oriImg)\n    canvas = util.draw_handpose(oriImg, peaks, True)\n    cv2.imshow('', canvas)\n    cv2.waitKey(0)\n"
  },
  {
    "path": "modules/control/proc/openpose/model.py",
    "content": "from collections import OrderedDict\nimport torch\nimport torch.nn as nn\n\ndef make_layers(block, no_relu_layers):\n    layers = []\n    for layer_name, v in block.items():\n        if 'pool' in layer_name:\n            layer = nn.MaxPool2d(kernel_size=v[0], stride=v[1],\n                                    padding=v[2])\n            layers.append((layer_name, layer))\n        else:\n            conv2d = nn.Conv2d(in_channels=v[0], out_channels=v[1],\n                               kernel_size=v[2], stride=v[3],\n                               padding=v[4])\n            layers.append((layer_name, conv2d))\n            if layer_name not in no_relu_layers:\n                layers.append(('relu_'+layer_name, nn.ReLU(inplace=True)))\n\n    return nn.Sequential(OrderedDict(layers))\n\nclass bodypose_model(nn.Module):\n    def __init__(self):\n        super(bodypose_model, self).__init__()\n\n        # these layers have no relu layer\n        no_relu_layers = ['conv5_5_CPM_L1', 'conv5_5_CPM_L2', 'Mconv7_stage2_L1',\\\n                          'Mconv7_stage2_L2', 'Mconv7_stage3_L1', 'Mconv7_stage3_L2',\\\n                          'Mconv7_stage4_L1', 'Mconv7_stage4_L2', 'Mconv7_stage5_L1',\\\n                          'Mconv7_stage5_L2', 'Mconv7_stage6_L1', 'Mconv7_stage6_L1']\n        blocks = {}\n        block0 = OrderedDict([\n                      ('conv1_1', [3, 64, 3, 1, 1]),\n                      ('conv1_2', [64, 64, 3, 1, 1]),\n                      ('pool1_stage1', [2, 2, 0]),\n                      ('conv2_1', [64, 128, 3, 1, 1]),\n                      ('conv2_2', [128, 128, 3, 1, 1]),\n                      ('pool2_stage1', [2, 2, 0]),\n                      ('conv3_1', [128, 256, 3, 1, 1]),\n                      ('conv3_2', [256, 256, 3, 1, 1]),\n                      ('conv3_3', [256, 256, 3, 1, 1]),\n                      ('conv3_4', [256, 256, 3, 1, 1]),\n                      ('pool3_stage1', [2, 2, 0]),\n                      ('conv4_1', [256, 512, 3, 1, 1]),\n                      ('conv4_2', [512, 512, 3, 1, 1]),\n                      ('conv4_3_CPM', [512, 256, 3, 1, 1]),\n                      ('conv4_4_CPM', [256, 128, 3, 1, 1])\n                  ])\n\n\n        # Stage 1\n        block1_1 = OrderedDict([\n                        ('conv5_1_CPM_L1', [128, 128, 3, 1, 1]),\n                        ('conv5_2_CPM_L1', [128, 128, 3, 1, 1]),\n                        ('conv5_3_CPM_L1', [128, 128, 3, 1, 1]),\n                        ('conv5_4_CPM_L1', [128, 512, 1, 1, 0]),\n                        ('conv5_5_CPM_L1', [512, 38, 1, 1, 0])\n                    ])\n\n        block1_2 = OrderedDict([\n                        ('conv5_1_CPM_L2', [128, 128, 3, 1, 1]),\n                        ('conv5_2_CPM_L2', [128, 128, 3, 1, 1]),\n                        ('conv5_3_CPM_L2', [128, 128, 3, 1, 1]),\n                        ('conv5_4_CPM_L2', [128, 512, 1, 1, 0]),\n                        ('conv5_5_CPM_L2', [512, 19, 1, 1, 0])\n                    ])\n        blocks['block1_1'] = block1_1\n        blocks['block1_2'] = block1_2\n\n        self.model0 = make_layers(block0, no_relu_layers)\n\n        # Stages 2 - 6\n        for i in range(2, 7):\n            blocks['block%d_1' % i] = OrderedDict([\n                    ('Mconv1_stage%d_L1' % i, [185, 128, 7, 1, 3]),\n                    ('Mconv2_stage%d_L1' % i, [128, 128, 7, 1, 3]),\n                    ('Mconv3_stage%d_L1' % i, [128, 128, 7, 1, 3]),\n                    ('Mconv4_stage%d_L1' % i, [128, 128, 7, 1, 3]),\n                    ('Mconv5_stage%d_L1' % i, [128, 128, 7, 1, 3]),\n                    ('Mconv6_stage%d_L1' % i, [128, 128, 1, 1, 0]),\n                    ('Mconv7_stage%d_L1' % i, [128, 38, 1, 1, 0])\n                ])\n\n            blocks['block%d_2' % i] = OrderedDict([\n                    ('Mconv1_stage%d_L2' % i, [185, 128, 7, 1, 3]),\n                    ('Mconv2_stage%d_L2' % i, [128, 128, 7, 1, 3]),\n                    ('Mconv3_stage%d_L2' % i, [128, 128, 7, 1, 3]),\n                    ('Mconv4_stage%d_L2' % i, [128, 128, 7, 1, 3]),\n                    ('Mconv5_stage%d_L2' % i, [128, 128, 7, 1, 3]),\n                    ('Mconv6_stage%d_L2' % i, [128, 128, 1, 1, 0]),\n                    ('Mconv7_stage%d_L2' % i, [128, 19, 1, 1, 0])\n                ])\n\n        for k in blocks.keys():\n            blocks[k] = make_layers(blocks[k], no_relu_layers)\n\n        self.model1_1 = blocks['block1_1']\n        self.model2_1 = blocks['block2_1']\n        self.model3_1 = blocks['block3_1']\n        self.model4_1 = blocks['block4_1']\n        self.model5_1 = blocks['block5_1']\n        self.model6_1 = blocks['block6_1']\n\n        self.model1_2 = blocks['block1_2']\n        self.model2_2 = blocks['block2_2']\n        self.model3_2 = blocks['block3_2']\n        self.model4_2 = blocks['block4_2']\n        self.model5_2 = blocks['block5_2']\n        self.model6_2 = blocks['block6_2']\n\n\n    def forward(self, x):\n\n        out1 = self.model0(x)\n\n        out1_1 = self.model1_1(out1)\n        out1_2 = self.model1_2(out1)\n        out2 = torch.cat([out1_1, out1_2, out1], 1)\n\n        out2_1 = self.model2_1(out2)\n        out2_2 = self.model2_2(out2)\n        out3 = torch.cat([out2_1, out2_2, out1], 1)\n\n        out3_1 = self.model3_1(out3)\n        out3_2 = self.model3_2(out3)\n        out4 = torch.cat([out3_1, out3_2, out1], 1)\n\n        out4_1 = self.model4_1(out4)\n        out4_2 = self.model4_2(out4)\n        out5 = torch.cat([out4_1, out4_2, out1], 1)\n\n        out5_1 = self.model5_1(out5)\n        out5_2 = self.model5_2(out5)\n        out6 = torch.cat([out5_1, out5_2, out1], 1)\n\n        out6_1 = self.model6_1(out6)\n        out6_2 = self.model6_2(out6)\n\n        return out6_1, out6_2\n\nclass handpose_model(nn.Module):\n    def __init__(self):\n        super(handpose_model, self).__init__()\n\n        # these layers have no relu layer\n        no_relu_layers = ['conv6_2_CPM', 'Mconv7_stage2', 'Mconv7_stage3',\\\n                          'Mconv7_stage4', 'Mconv7_stage5', 'Mconv7_stage6']\n        # stage 1\n        block1_0 = OrderedDict([\n                ('conv1_1', [3, 64, 3, 1, 1]),\n                ('conv1_2', [64, 64, 3, 1, 1]),\n                ('pool1_stage1', [2, 2, 0]),\n                ('conv2_1', [64, 128, 3, 1, 1]),\n                ('conv2_2', [128, 128, 3, 1, 1]),\n                ('pool2_stage1', [2, 2, 0]),\n                ('conv3_1', [128, 256, 3, 1, 1]),\n                ('conv3_2', [256, 256, 3, 1, 1]),\n                ('conv3_3', [256, 256, 3, 1, 1]),\n                ('conv3_4', [256, 256, 3, 1, 1]),\n                ('pool3_stage1', [2, 2, 0]),\n                ('conv4_1', [256, 512, 3, 1, 1]),\n                ('conv4_2', [512, 512, 3, 1, 1]),\n                ('conv4_3', [512, 512, 3, 1, 1]),\n                ('conv4_4', [512, 512, 3, 1, 1]),\n                ('conv5_1', [512, 512, 3, 1, 1]),\n                ('conv5_2', [512, 512, 3, 1, 1]),\n                ('conv5_3_CPM', [512, 128, 3, 1, 1])\n            ])\n\n        block1_1 = OrderedDict([\n            ('conv6_1_CPM', [128, 512, 1, 1, 0]),\n            ('conv6_2_CPM', [512, 22, 1, 1, 0])\n        ])\n\n        blocks = {}\n        blocks['block1_0'] = block1_0\n        blocks['block1_1'] = block1_1\n\n        # stage 2-6\n        for i in range(2, 7):\n            blocks['block%d' % i] = OrderedDict([\n                    ('Mconv1_stage%d' % i, [150, 128, 7, 1, 3]),\n                    ('Mconv2_stage%d' % i, [128, 128, 7, 1, 3]),\n                    ('Mconv3_stage%d' % i, [128, 128, 7, 1, 3]),\n                    ('Mconv4_stage%d' % i, [128, 128, 7, 1, 3]),\n                    ('Mconv5_stage%d' % i, [128, 128, 7, 1, 3]),\n                    ('Mconv6_stage%d' % i, [128, 128, 1, 1, 0]),\n                    ('Mconv7_stage%d' % i, [128, 22, 1, 1, 0])\n                ])\n\n        for k in blocks.keys():\n            blocks[k] = make_layers(blocks[k], no_relu_layers)\n\n        self.model1_0 = blocks['block1_0']\n        self.model1_1 = blocks['block1_1']\n        self.model2 = blocks['block2']\n        self.model3 = blocks['block3']\n        self.model4 = blocks['block4']\n        self.model5 = blocks['block5']\n        self.model6 = blocks['block6']\n\n    def forward(self, x):\n        out1_0 = self.model1_0(x)\n        out1_1 = self.model1_1(out1_0)\n        concat_stage2 = torch.cat([out1_1, out1_0], 1)\n        out_stage2 = self.model2(concat_stage2)\n        concat_stage3 = torch.cat([out_stage2, out1_0], 1)\n        out_stage3 = self.model3(concat_stage3)\n        concat_stage4 = torch.cat([out_stage3, out1_0], 1)\n        out_stage4 = self.model4(concat_stage4)\n        concat_stage5 = torch.cat([out_stage4, out1_0], 1)\n        out_stage5 = self.model5(concat_stage5)\n        concat_stage6 = torch.cat([out_stage5, out1_0], 1)\n        out_stage6 = self.model6(concat_stage6)\n        return out_stage6\n"
  },
  {
    "path": "modules/control/proc/openpose/util.py",
    "content": "from typing import List, Tuple, Union\nimport math\nimport numpy as np\nimport cv2\nfrom .body import BodyResult, Keypoint\n\neps = 0.01\n\n\ndef smart_resize(x, s):\n    Ht, Wt = s\n    if x.ndim == 2:\n        Ho, Wo = x.shape\n        Co = 1\n    else:\n        Ho, Wo, Co = x.shape\n    if Co == 3 or Co == 1:\n        k = float(Ht + Wt) / float(Ho + Wo)\n        return cv2.resize(x, (int(Wt), int(Ht)), interpolation=cv2.INTER_AREA if k < 1 else cv2.INTER_LANCZOS4)\n    else:\n        return np.stack([smart_resize(x[:, :, i], s) for i in range(Co)], axis=2)\n\n\ndef smart_resize_k(x, fx, fy):\n    if x.ndim == 2:\n        Ho, Wo = x.shape\n        Co = 1\n    else:\n        Ho, Wo, Co = x.shape\n    Ht, Wt = Ho * fy, Wo * fx\n    if Co == 3 or Co == 1:\n        k = float(Ht + Wt) / float(Ho + Wo)\n        return cv2.resize(x, (int(Wt), int(Ht)), interpolation=cv2.INTER_AREA if k < 1 else cv2.INTER_LANCZOS4)\n    else:\n        return np.stack([smart_resize_k(x[:, :, i], fx, fy) for i in range(Co)], axis=2)\n\n\ndef padRightDownCorner(img, stride, padValue):\n    h = img.shape[0]\n    w = img.shape[1]\n\n    pad = 4 * [None]\n    pad[0] = 0 # up\n    pad[1] = 0 # left\n    pad[2] = 0 if (h % stride == 0) else stride - (h % stride) # down\n    pad[3] = 0 if (w % stride == 0) else stride - (w % stride) # right\n\n    img_padded = img\n    pad_up = np.tile(img_padded[0:1, :, :]*0 + padValue, (pad[0], 1, 1))\n    img_padded = np.concatenate((pad_up, img_padded), axis=0)\n    pad_left = np.tile(img_padded[:, 0:1, :]*0 + padValue, (1, pad[1], 1))\n    img_padded = np.concatenate((pad_left, img_padded), axis=1)\n    pad_down = np.tile(img_padded[-2:-1, :, :]*0 + padValue, (pad[2], 1, 1))\n    img_padded = np.concatenate((img_padded, pad_down), axis=0)\n    pad_right = np.tile(img_padded[:, -2:-1, :]*0 + padValue, (1, pad[3], 1))\n    img_padded = np.concatenate((img_padded, pad_right), axis=1)\n\n    return img_padded, pad\n\n\ndef transfer(model, model_weights):\n    transfered_model_weights = {}\n    for weights_name in model.state_dict().keys():\n        transfered_model_weights[weights_name] = model_weights['.'.join(weights_name.split('.')[1:])]\n    return transfered_model_weights\n\n\ndef draw_bodypose(canvas: np.ndarray, keypoints: List[Keypoint]) -> np.ndarray:\n    \"\"\"\n    Draw keypoints and limbs representing body pose on a given canvas.\n\n    Args:\n        canvas (np.ndarray): A 3D numpy array representing the canvas (image) on which to draw the body pose.\n        keypoints (List[Keypoint]): A list of Keypoint objects representing the body keypoints to be drawn.\n\n    Returns:\n        np.ndarray: A 3D numpy array representing the modified canvas with the drawn body pose.\n\n    Note:\n        The function expects the x and y coordinates of the keypoints to be normalized between 0 and 1.\n    \"\"\"\n    H, W, _C = canvas.shape\n    stickwidth = 4\n\n    limbSeq = [\n        [2, 3], [2, 6], [3, 4], [4, 5],\n        [6, 7], [7, 8], [2, 9], [9, 10],\n        [10, 11], [2, 12], [12, 13], [13, 14],\n        [2, 1], [1, 15], [15, 17], [1, 16],\n        [16, 18],\n    ]\n\n    colors = [[255, 0, 0], [255, 85, 0], [255, 170, 0], [255, 255, 0], [170, 255, 0], [85, 255, 0], [0, 255, 0], \\\n              [0, 255, 85], [0, 255, 170], [0, 255, 255], [0, 170, 255], [0, 85, 255], [0, 0, 255], [85, 0, 255], \\\n              [170, 0, 255], [255, 0, 255], [255, 0, 170], [255, 0, 85]]\n\n    for (k1_index, k2_index), color in zip(limbSeq, colors):\n        keypoint1 = keypoints[k1_index - 1]\n        keypoint2 = keypoints[k2_index - 1]\n\n        if keypoint1 is None or keypoint2 is None:\n            continue\n\n        Y = np.array([keypoint1.x, keypoint2.x]) * float(W)\n        X = np.array([keypoint1.y, keypoint2.y]) * float(H)\n        mX = np.mean(X)\n        mY = np.mean(Y)\n        length = ((X[0] - X[1]) ** 2 + (Y[0] - Y[1]) ** 2) ** 0.5\n        angle = math.degrees(math.atan2(X[0] - X[1], Y[0] - Y[1]))\n        polygon = cv2.ellipse2Poly((int(mY), int(mX)), (int(length / 2), stickwidth), int(angle), 0, 360, 1)\n        cv2.fillConvexPoly(canvas, polygon, [int(float(c) * 0.6) for c in color])\n\n    for keypoint, color in zip(keypoints, colors):\n        if keypoint is None:\n            continue\n\n        x, y = keypoint.x, keypoint.y\n        x = int(x * W)\n        y = int(y * H)\n        cv2.circle(canvas, (int(x), int(y)), 4, color, thickness=-1)\n\n    return canvas\n\n\ndef draw_handpose(canvas: np.ndarray, keypoints: Union[List[Keypoint], None]) -> np.ndarray:\n    import matplotlib as mpl\n    \"\"\"\n    Draw keypoints and connections representing hand pose on a given canvas.\n\n    Args:\n        canvas (np.ndarray): A 3D numpy array representing the canvas (image) on which to draw the hand pose.\n        keypoints (List[Keypoint]| None): A list of Keypoint objects representing the hand keypoints to be drawn\n                                          or None if no keypoints are present.\n\n    Returns:\n        np.ndarray: A 3D numpy array representing the modified canvas with the drawn hand pose.\n\n    Note:\n        The function expects the x and y coordinates of the keypoints to be normalized between 0 and 1.\n    \"\"\"\n    if not keypoints:\n        return canvas\n\n    H, W, _C = canvas.shape\n\n    edges = [[0, 1], [1, 2], [2, 3], [3, 4], [0, 5], [5, 6], [6, 7], [7, 8], [0, 9], [9, 10], \\\n             [10, 11], [11, 12], [0, 13], [13, 14], [14, 15], [15, 16], [0, 17], [17, 18], [18, 19], [19, 20]]\n\n    for ie, (e1, e2) in enumerate(edges):\n        k1 = keypoints[e1]\n        k2 = keypoints[e2]\n        if k1 is None or k2 is None:\n            continue\n\n        x1 = int(k1.x * W)\n        y1 = int(k1.y * H)\n        x2 = int(k2.x * W)\n        y2 = int(k2.y * H)\n        if x1 > eps and y1 > eps and x2 > eps and y2 > eps:\n            cv2.line(canvas, (x1, y1), (x2, y2), mpl.colors.hsv_to_rgb([ie / float(len(edges)), 1.0, 1.0]) * 255, thickness=2)\n\n    for keypoint in keypoints:\n        x, y = keypoint.x, keypoint.y\n        x = int(x * W)\n        y = int(y * H)\n        if x > eps and y > eps:\n            cv2.circle(canvas, (x, y), 4, (0, 0, 255), thickness=-1)\n    return canvas\n\n\ndef draw_facepose(canvas: np.ndarray, keypoints: Union[List[Keypoint], None]) -> np.ndarray:\n    \"\"\"\n    Draw keypoints representing face pose on a given canvas.\n\n    Args:\n        canvas (np.ndarray): A 3D numpy array representing the canvas (image) on which to draw the face pose.\n        keypoints (List[Keypoint]| None): A list of Keypoint objects representing the face keypoints to be drawn\n                                          or None if no keypoints are present.\n\n    Returns:\n        np.ndarray: A 3D numpy array representing the modified canvas with the drawn face pose.\n\n    Note:\n        The function expects the x and y coordinates of the keypoints to be normalized between 0 and 1.\n    \"\"\"\n    if not keypoints:\n        return canvas\n\n    H, W, _C = canvas.shape\n    for keypoint in keypoints:\n        x, y = keypoint.x, keypoint.y\n        x = int(x * W)\n        y = int(y * H)\n        if x > eps and y > eps:\n            cv2.circle(canvas, (x, y), 3, (255, 255, 255), thickness=-1)\n    return canvas\n\n\n# detect hand according to body pose keypoints\n# please refer to https://github.com/CMU-Perceptual-Computing-Lab/openpose/blob/master/src/openpose/hand/handDetector.cpp\ndef handDetect(body: BodyResult, oriImg) -> List[Tuple[int, int, int, bool]]:\n    \"\"\"\n    Detect hands in the input body pose keypoints and calculate the bounding box for each hand.\n\n    Args:\n        body (BodyResult): A BodyResult object containing the detected body pose keypoints.\n        oriImg (numpy.ndarray): A 3D numpy array representing the original input image.\n\n    Returns:\n        List[Tuple[int, int, int, bool]]: A list of tuples, each containing the coordinates (x, y) of the top-left\n                                          corner of the bounding box, the width (height) of the bounding box, and\n                                          a boolean flag indicating whether the hand is a left hand (True) or a\n                                          right hand (False).\n\n    Notes:\n        - The width and height of the bounding boxes are equal since the network requires squared input.\n        - The minimum bounding box size is 20 pixels.\n    \"\"\"\n    ratioWristElbow = 0.33\n    detect_result = []\n    image_height, image_width = oriImg.shape[0:2]\n\n    keypoints = body.keypoints\n    # right hand: wrist 4, elbow 3, shoulder 2\n    # left hand: wrist 7, elbow 6, shoulder 5\n    left_shoulder = keypoints[5]\n    left_elbow = keypoints[6]\n    left_wrist = keypoints[7]\n    right_shoulder = keypoints[2]\n    right_elbow = keypoints[3]\n    right_wrist = keypoints[4]\n\n    # if any of three not detected\n    has_left = all(keypoint is not None for keypoint in (left_shoulder, left_elbow, left_wrist))\n    has_right = all(keypoint is not None for keypoint in (right_shoulder, right_elbow, right_wrist))\n    if not (has_left or has_right):\n        return []\n\n    hands = []\n    #left hand\n    if has_left:\n        hands.append([\n            left_shoulder.x, left_shoulder.y,\n            left_elbow.x, left_elbow.y,\n            left_wrist.x, left_wrist.y,\n            True\n        ])\n    # right hand\n    if has_right:\n        hands.append([\n            right_shoulder.x, right_shoulder.y,\n            right_elbow.x, right_elbow.y,\n            right_wrist.x, right_wrist.y,\n            False\n        ])\n\n    for x1, y1, x2, y2, x3, y3, is_left in hands:\n        # pos_hand = pos_wrist + ratio * (pos_wrist - pos_elbox) = (1 + ratio) * pos_wrist - ratio * pos_elbox\n        # handRectangle.x = posePtr[wrist*3] + ratioWristElbow * (posePtr[wrist*3] - posePtr[elbow*3]);\n        # handRectangle.y = posePtr[wrist*3+1] + ratioWristElbow * (posePtr[wrist*3+1] - posePtr[elbow*3+1]);\n        # const auto distanceWristElbow = getDistance(poseKeypoints, person, wrist, elbow);\n        # const auto distanceElbowShoulder = getDistance(poseKeypoints, person, elbow, shoulder);\n        # handRectangle.width = 1.5f * fastMax(distanceWristElbow, 0.9f * distanceElbowShoulder);\n        x = x3 + ratioWristElbow * (x3 - x2)\n        y = y3 + ratioWristElbow * (y3 - y2)\n        distanceWristElbow = math.sqrt((x3 - x2) ** 2 + (y3 - y2) ** 2)\n        distanceElbowShoulder = math.sqrt((x2 - x1) ** 2 + (y2 - y1) ** 2)\n        width = 1.5 * max(distanceWristElbow, 0.9 * distanceElbowShoulder)\n        # x-y refers to the center --> offset to topLeft point\n        # handRectangle.x -= handRectangle.width / 2.f;\n        # handRectangle.y -= handRectangle.height / 2.f;\n        x -= width / 2\n        y -= width / 2  # width = height\n        # overflow the image\n        if x < 0:\n            x = 0\n        if y < 0:\n            y = 0\n        width1 = width\n        width2 = width\n        if x + width > image_width:\n            width1 = image_width - x\n        if y + width > image_height:\n            width2 = image_height - y\n        width = min(width1, width2)\n        # the max hand box value is 20 pixels\n        if width >= 20:\n            detect_result.append((int(x), int(y), int(width), is_left))\n\n    '''\n    return value: [[x, y, w, True if left hand else False]].\n    width=height since the network require squared input.\n    x, y is the coordinate of top left\n    '''\n    return detect_result\n\n\n# Written by Lvmin\ndef faceDetect(body: BodyResult, oriImg) -> Union[Tuple[int, int, int], None]:\n    \"\"\"\n    Detect the face in the input body pose keypoints and calculate the bounding box for the face.\n\n    Args:\n        body (BodyResult): A BodyResult object containing the detected body pose keypoints.\n        oriImg (numpy.ndarray): A 3D numpy array representing the original input image.\n\n    Returns:\n        Tuple[int, int, int] | None: A tuple containing the coordinates (x, y) of the top-left corner of the\n                                   bounding box and the width (height) of the bounding box, or None if the\n                                   face is not detected or the bounding box width is less than 20 pixels.\n\n    Notes:\n        - The width and height of the bounding box are equal.\n        - The minimum bounding box size is 20 pixels.\n    \"\"\"\n    # left right eye ear 14 15 16 17\n    image_height, image_width = oriImg.shape[0:2]\n\n    keypoints = body.keypoints\n    head = keypoints[0]\n    left_eye = keypoints[14]\n    right_eye = keypoints[15]\n    left_ear = keypoints[16]\n    right_ear = keypoints[17]\n\n    if head is None or all(keypoint is None for keypoint in (left_eye, right_eye, left_ear, right_ear)):\n        return None\n\n    width = 0.0\n    x0, y0 = head.x, head.y\n\n    if left_eye is not None:\n        x1, y1 = left_eye.x, left_eye.y\n        d = max(abs(x0 - x1), abs(y0 - y1))\n        width = max(width, d * 3.0)\n\n    if right_eye is not None:\n        x1, y1 = right_eye.x, right_eye.y\n        d = max(abs(x0 - x1), abs(y0 - y1))\n        width = max(width, d * 3.0)\n\n    if left_ear is not None:\n        x1, y1 = left_ear.x, left_ear.y\n        d = max(abs(x0 - x1), abs(y0 - y1))\n        width = max(width, d * 1.5)\n\n    if right_ear is not None:\n        x1, y1 = right_ear.x, right_ear.y\n        d = max(abs(x0 - x1), abs(y0 - y1))\n        width = max(width, d * 1.5)\n\n    x, y = x0, y0\n\n    x -= width\n    y -= width\n\n    if x < 0:\n        x = 0\n\n    if y < 0:\n        y = 0\n\n    width1 = width * 2\n    width2 = width * 2\n\n    if x + width > image_width:\n        width1 = image_width - x\n\n    if y + width > image_height:\n        width2 = image_height - y\n\n    width = min(width1, width2)\n\n    if width >= 20:\n        return int(x), int(y), int(width)\n    else:\n        return None\n\n\n# get max index of 2d array\ndef npmax(array):\n    arrayindex = array.argmax(1)\n    arrayvalue = array.max(1)\n    i = arrayvalue.argmax()\n    j = arrayindex[i]\n    return i, j\n"
  },
  {
    "path": "modules/control/proc/pidi.py",
    "content": "import os\nimport cv2\nimport numpy as np\nimport torch\nfrom einops import rearrange\nfrom huggingface_hub import hf_hub_download\nfrom PIL import Image\nfrom modules import devices\nfrom modules.shared import opts\nfrom modules.control.util import HWC3, nms, resize_image, safe_step\nfrom .pidi_model import pidinet\n\n\nclass PidiNetDetector:\n    def __init__(self, model):\n        self.model = model\n\n    @classmethod\n    def from_pretrained(cls, pretrained_model_or_path, filename=None, cache_dir=None, local_files_only=False):\n        filename = filename or \"table5_pidinet.pth\"\n        if os.path.isdir(pretrained_model_or_path):\n            model_path = os.path.join(pretrained_model_or_path, filename)\n        else:\n            model_path = hf_hub_download(pretrained_model_or_path, filename, cache_dir=cache_dir, local_files_only=local_files_only)\n        model = pidinet()\n        model.load_state_dict({k.replace('module.', ''): v for k, v in torch.load(model_path)['state_dict'].items()})\n        model.eval()\n        return cls(model)\n\n    def to(self, device):\n        self.model.to(device)\n        return self\n\n    def __call__(self, input_image, detect_resolution=512, image_resolution=512, safe=False, output_type=\"pil\", scribble=False, apply_filter=False, **kwargs):\n        self.model.to(devices.device)\n        device = next(iter(self.model.parameters())).device\n        if not isinstance(input_image, np.ndarray):\n            input_image = np.array(input_image, dtype=np.uint8)\n        input_image = HWC3(input_image)\n        input_image = resize_image(input_image, detect_resolution)\n        assert input_image.ndim == 3\n        input_image = input_image[:, :, ::-1].copy()\n        image_pidi = torch.from_numpy(input_image).float().to(device)\n        image_pidi = image_pidi / 255.0\n        image_pidi = rearrange(image_pidi, 'h w c -> 1 c h w')\n        edge = self.model(image_pidi)[-1]\n        edge = edge.cpu().numpy()\n        if apply_filter:\n            edge = edge > 0.5\n        if safe:\n            edge = safe_step(edge)\n        edge = (edge * 255.0).clip(0, 255).astype(np.uint8)\n        detected_map = edge[0, 0]\n        detected_map = HWC3(detected_map)\n        img = resize_image(input_image, image_resolution)\n        H, W, _C = img.shape\n        detected_map = cv2.resize(detected_map, (W, H), interpolation=cv2.INTER_LINEAR)\n        if scribble:\n            detected_map = nms(detected_map, 127, 3.0)\n            detected_map = cv2.GaussianBlur(detected_map, (0, 0), 3.0)\n            detected_map[detected_map > 4] = 255\n            detected_map[detected_map < 255] = 0\n        if opts.control_move_processor:\n            self.model.to('cpu')\n        if output_type == \"pil\":\n            detected_map = Image.fromarray(detected_map)\n        return detected_map\n"
  },
  {
    "path": "modules/control/proc/pidi_model.py",
    "content": "\"\"\"\nAuthor: Zhuo Su, Wenzhe Liu\nDate: Feb 18, 2021\n\"\"\"\n\nimport math\n\nimport cv2\nimport numpy as np\nimport torch\nimport torch.nn as nn\nimport torch.nn.functional as F\n\n\ndef img2tensor(imgs, bgr2rgb=True, float32=True):\n    \"\"\"Numpy array to tensor.\n\n    Args:\n        imgs (list[ndarray] | ndarray): Input images.\n        bgr2rgb (bool): Whether to change bgr to rgb.\n        float32 (bool): Whether to change to float32.\n\n    Returns:\n        list[tensor] | tensor: Tensor images. If returned results only have\n            one element, just return tensor.\n    \"\"\"\n\n    def _totensor(img, bgr2rgb, float32):\n        if img.shape[2] == 3 and bgr2rgb:\n            if img.dtype == 'float64':\n                img = img.astype('float32')\n            img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)\n        img = torch.from_numpy(img.transpose(2, 0, 1))\n        if float32:\n            img = img.float()\n        return img\n\n    if isinstance(imgs, list):\n        return [_totensor(img, bgr2rgb, float32) for img in imgs]\n    else:\n        return _totensor(imgs, bgr2rgb, float32)\n\nnets = {\n    'baseline': {\n        'layer0':  'cv',\n        'layer1':  'cv',\n        'layer2':  'cv',\n        'layer3':  'cv',\n        'layer4':  'cv',\n        'layer5':  'cv',\n        'layer6':  'cv',\n        'layer7':  'cv',\n        'layer8':  'cv',\n        'layer9':  'cv',\n        'layer10': 'cv',\n        'layer11': 'cv',\n        'layer12': 'cv',\n        'layer13': 'cv',\n        'layer14': 'cv',\n        'layer15': 'cv',\n        },\n    'c-v15': {\n        'layer0':  'cd',\n        'layer1':  'cv',\n        'layer2':  'cv',\n        'layer3':  'cv',\n        'layer4':  'cv',\n        'layer5':  'cv',\n        'layer6':  'cv',\n        'layer7':  'cv',\n        'layer8':  'cv',\n        'layer9':  'cv',\n        'layer10': 'cv',\n        'layer11': 'cv',\n        'layer12': 'cv',\n        'layer13': 'cv',\n        'layer14': 'cv',\n        'layer15': 'cv',\n        },\n    'a-v15': {\n        'layer0':  'ad',\n        'layer1':  'cv',\n        'layer2':  'cv',\n        'layer3':  'cv',\n        'layer4':  'cv',\n        'layer5':  'cv',\n        'layer6':  'cv',\n        'layer7':  'cv',\n        'layer8':  'cv',\n        'layer9':  'cv',\n        'layer10': 'cv',\n        'layer11': 'cv',\n        'layer12': 'cv',\n        'layer13': 'cv',\n        'layer14': 'cv',\n        'layer15': 'cv',\n        },\n    'r-v15': {\n        'layer0':  'rd',\n        'layer1':  'cv',\n        'layer2':  'cv',\n        'layer3':  'cv',\n        'layer4':  'cv',\n        'layer5':  'cv',\n        'layer6':  'cv',\n        'layer7':  'cv',\n        'layer8':  'cv',\n        'layer9':  'cv',\n        'layer10': 'cv',\n        'layer11': 'cv',\n        'layer12': 'cv',\n        'layer13': 'cv',\n        'layer14': 'cv',\n        'layer15': 'cv',\n        },\n    'cvvv4': {\n        'layer0':  'cd',\n        'layer1':  'cv',\n        'layer2':  'cv',\n        'layer3':  'cv',\n        'layer4':  'cd',\n        'layer5':  'cv',\n        'layer6':  'cv',\n        'layer7':  'cv',\n        'layer8':  'cd',\n        'layer9':  'cv',\n        'layer10': 'cv',\n        'layer11': 'cv',\n        'layer12': 'cd',\n        'layer13': 'cv',\n        'layer14': 'cv',\n        'layer15': 'cv',\n        },\n    'avvv4': {\n        'layer0':  'ad',\n        'layer1':  'cv',\n        'layer2':  'cv',\n        'layer3':  'cv',\n        'layer4':  'ad',\n        'layer5':  'cv',\n        'layer6':  'cv',\n        'layer7':  'cv',\n        'layer8':  'ad',\n        'layer9':  'cv',\n        'layer10': 'cv',\n        'layer11': 'cv',\n        'layer12': 'ad',\n        'layer13': 'cv',\n        'layer14': 'cv',\n        'layer15': 'cv',\n        },\n    'rvvv4': {\n        'layer0':  'rd',\n        'layer1':  'cv',\n        'layer2':  'cv',\n        'layer3':  'cv',\n        'layer4':  'rd',\n        'layer5':  'cv',\n        'layer6':  'cv',\n        'layer7':  'cv',\n        'layer8':  'rd',\n        'layer9':  'cv',\n        'layer10': 'cv',\n        'layer11': 'cv',\n        'layer12': 'rd',\n        'layer13': 'cv',\n        'layer14': 'cv',\n        'layer15': 'cv',\n        },\n    'cccv4': {\n        'layer0':  'cd',\n        'layer1':  'cd',\n        'layer2':  'cd',\n        'layer3':  'cv',\n        'layer4':  'cd',\n        'layer5':  'cd',\n        'layer6':  'cd',\n        'layer7':  'cv',\n        'layer8':  'cd',\n        'layer9':  'cd',\n        'layer10': 'cd',\n        'layer11': 'cv',\n        'layer12': 'cd',\n        'layer13': 'cd',\n        'layer14': 'cd',\n        'layer15': 'cv',\n        },\n    'aaav4': {\n        'layer0':  'ad',\n        'layer1':  'ad',\n        'layer2':  'ad',\n        'layer3':  'cv',\n        'layer4':  'ad',\n        'layer5':  'ad',\n        'layer6':  'ad',\n        'layer7':  'cv',\n        'layer8':  'ad',\n        'layer9':  'ad',\n        'layer10': 'ad',\n        'layer11': 'cv',\n        'layer12': 'ad',\n        'layer13': 'ad',\n        'layer14': 'ad',\n        'layer15': 'cv',\n        },\n    'rrrv4': {\n        'layer0':  'rd',\n        'layer1':  'rd',\n        'layer2':  'rd',\n        'layer3':  'cv',\n        'layer4':  'rd',\n        'layer5':  'rd',\n        'layer6':  'rd',\n        'layer7':  'cv',\n        'layer8':  'rd',\n        'layer9':  'rd',\n        'layer10': 'rd',\n        'layer11': 'cv',\n        'layer12': 'rd',\n        'layer13': 'rd',\n        'layer14': 'rd',\n        'layer15': 'cv',\n        },\n    'c16': {\n        'layer0':  'cd',\n        'layer1':  'cd',\n        'layer2':  'cd',\n        'layer3':  'cd',\n        'layer4':  'cd',\n        'layer5':  'cd',\n        'layer6':  'cd',\n        'layer7':  'cd',\n        'layer8':  'cd',\n        'layer9':  'cd',\n        'layer10': 'cd',\n        'layer11': 'cd',\n        'layer12': 'cd',\n        'layer13': 'cd',\n        'layer14': 'cd',\n        'layer15': 'cd',\n        },\n    'a16': {\n        'layer0':  'ad',\n        'layer1':  'ad',\n        'layer2':  'ad',\n        'layer3':  'ad',\n        'layer4':  'ad',\n        'layer5':  'ad',\n        'layer6':  'ad',\n        'layer7':  'ad',\n        'layer8':  'ad',\n        'layer9':  'ad',\n        'layer10': 'ad',\n        'layer11': 'ad',\n        'layer12': 'ad',\n        'layer13': 'ad',\n        'layer14': 'ad',\n        'layer15': 'ad',\n        },\n    'r16': {\n        'layer0':  'rd',\n        'layer1':  'rd',\n        'layer2':  'rd',\n        'layer3':  'rd',\n        'layer4':  'rd',\n        'layer5':  'rd',\n        'layer6':  'rd',\n        'layer7':  'rd',\n        'layer8':  'rd',\n        'layer9':  'rd',\n        'layer10': 'rd',\n        'layer11': 'rd',\n        'layer12': 'rd',\n        'layer13': 'rd',\n        'layer14': 'rd',\n        'layer15': 'rd',\n        },\n    'carv4': {\n        'layer0':  'cd',\n        'layer1':  'ad',\n        'layer2':  'rd',\n        'layer3':  'cv',\n        'layer4':  'cd',\n        'layer5':  'ad',\n        'layer6':  'rd',\n        'layer7':  'cv',\n        'layer8':  'cd',\n        'layer9':  'ad',\n        'layer10': 'rd',\n        'layer11': 'cv',\n        'layer12': 'cd',\n        'layer13': 'ad',\n        'layer14': 'rd',\n        'layer15': 'cv',\n        },\n    }\n\ndef createConvFunc(op_type):\n    assert op_type in ['cv', 'cd', 'ad', 'rd'], 'unknown op type: %s' % str(op_type)\n    if op_type == 'cv':\n        return F.conv2d\n\n    if op_type == 'cd':\n        def func(x, weights, bias=None, stride=1, padding=0, dilation=1, groups=1):\n            assert dilation in [1, 2], 'dilation for cd_conv should be in 1 or 2'\n            assert weights.size(2) == 3 and weights.size(3) == 3, 'kernel size for cd_conv should be 3x3'\n            assert padding == dilation, 'padding for cd_conv set wrong'\n\n            weights_c = weights.sum(dim=[2, 3], keepdim=True)\n            yc = F.conv2d(x, weights_c, stride=stride, padding=0, groups=groups)\n            y = F.conv2d(x, weights, bias, stride=stride, padding=padding, dilation=dilation, groups=groups)\n            return y - yc\n        return func\n    elif op_type == 'ad':\n        def func(x, weights, bias=None, stride=1, padding=0, dilation=1, groups=1):\n            assert dilation in [1, 2], 'dilation for ad_conv should be in 1 or 2'\n            assert weights.size(2) == 3 and weights.size(3) == 3, 'kernel size for ad_conv should be 3x3'\n            assert padding == dilation, 'padding for ad_conv set wrong'\n\n            shape = weights.shape\n            weights = weights.view(shape[0], shape[1], -1)\n            weights_conv = (weights - weights[:, :, [3, 0, 1, 6, 4, 2, 7, 8, 5]]).view(shape) # clock-wise\n            y = F.conv2d(x, weights_conv, bias, stride=stride, padding=padding, dilation=dilation, groups=groups)\n            return y\n        return func\n    elif op_type == 'rd':\n        def func(x, weights, bias=None, stride=1, padding=0, dilation=1, groups=1):\n            assert dilation in [1, 2], 'dilation for rd_conv should be in 1 or 2'\n            assert weights.size(2) == 3 and weights.size(3) == 3, 'kernel size for rd_conv should be 3x3'\n            padding = 2 * dilation\n\n            shape = weights.shape\n            if weights.is_cuda:\n                buffer = torch.cuda.FloatTensor(shape[0], shape[1], 5 * 5).fill_(0)\n            else:\n                buffer = torch.zeros(shape[0], shape[1], 5 * 5).to(weights.device)\n            weights = weights.view(shape[0], shape[1], -1)\n            buffer[:, :, [0, 2, 4, 10, 14, 20, 22, 24]] = weights[:, :, 1:]\n            buffer[:, :, [6, 7, 8, 11, 13, 16, 17, 18]] = -weights[:, :, 1:]\n            buffer[:, :, 12] = 0\n            buffer = buffer.view(shape[0], shape[1], 5, 5)\n            y = F.conv2d(x, buffer, bias, stride=stride, padding=padding, dilation=dilation, groups=groups)\n            return y\n        return func\n    else:\n        print('impossible to be here unless you force that')\n        return None\n\nclass Conv2d(nn.Module):\n    def __init__(self, pdc, in_channels, out_channels, kernel_size, stride=1, padding=0, dilation=1, groups=1, bias=False):\n        super(Conv2d, self).__init__()\n        if in_channels % groups != 0:\n            raise ValueError('in_channels must be divisible by groups')\n        if out_channels % groups != 0:\n            raise ValueError('out_channels must be divisible by groups')\n        self.in_channels = in_channels\n        self.out_channels = out_channels\n        self.kernel_size = kernel_size\n        self.stride = stride\n        self.padding = padding\n        self.dilation = dilation\n        self.groups = groups\n        self.weight = nn.Parameter(torch.Tensor(out_channels, in_channels // groups, kernel_size, kernel_size))\n        if bias:\n            self.bias = nn.Parameter(torch.Tensor(out_channels))\n        else:\n            self.register_parameter('bias', None)\n        self.reset_parameters()\n        self.pdc = pdc\n\n    def reset_parameters(self):\n        nn.init.kaiming_uniform_(self.weight, a=math.sqrt(5))\n        if self.bias is not None:\n            fan_in, _ = nn.init._calculate_fan_in_and_fan_out(self.weight)\n            bound = 1 / math.sqrt(fan_in)\n            nn.init.uniform_(self.bias, -bound, bound)\n\n    def forward(self, input):\n\n        return self.pdc(input, self.weight, self.bias, self.stride, self.padding, self.dilation, self.groups)\n\nclass CSAM(nn.Module):\n    \"\"\"\n    Compact Spatial Attention Module\n    \"\"\"\n    def __init__(self, channels):\n        super(CSAM, self).__init__()\n\n        mid_channels = 4\n        self.relu1 = nn.ReLU()\n        self.conv1 = nn.Conv2d(channels, mid_channels, kernel_size=1, padding=0)\n        self.conv2 = nn.Conv2d(mid_channels, 1, kernel_size=3, padding=1, bias=False)\n        self.sigmoid = nn.Sigmoid()\n        nn.init.constant_(self.conv1.bias, 0)\n\n    def forward(self, x):\n        y = self.relu1(x)\n        y = self.conv1(y)\n        y = self.conv2(y)\n        y = self.sigmoid(y)\n\n        return x * y\n\nclass CDCM(nn.Module):\n    \"\"\"\n    Compact Dilation Convolution based Module\n    \"\"\"\n    def __init__(self, in_channels, out_channels):\n        super(CDCM, self).__init__()\n\n        self.relu1 = nn.ReLU()\n        self.conv1 = nn.Conv2d(in_channels, out_channels, kernel_size=1, padding=0)\n        self.conv2_1 = nn.Conv2d(out_channels, out_channels, kernel_size=3, dilation=5, padding=5, bias=False)\n        self.conv2_2 = nn.Conv2d(out_channels, out_channels, kernel_size=3, dilation=7, padding=7, bias=False)\n        self.conv2_3 = nn.Conv2d(out_channels, out_channels, kernel_size=3, dilation=9, padding=9, bias=False)\n        self.conv2_4 = nn.Conv2d(out_channels, out_channels, kernel_size=3, dilation=11, padding=11, bias=False)\n        nn.init.constant_(self.conv1.bias, 0)\n\n    def forward(self, x):\n        x = self.relu1(x)\n        x = self.conv1(x)\n        x1 = self.conv2_1(x)\n        x2 = self.conv2_2(x)\n        x3 = self.conv2_3(x)\n        x4 = self.conv2_4(x)\n        return x1 + x2 + x3 + x4\n\n\nclass MapReduce(nn.Module):\n    \"\"\"\n    Reduce feature maps into a single edge map\n    \"\"\"\n    def __init__(self, channels):\n        super(MapReduce, self).__init__()\n        self.conv = nn.Conv2d(channels, 1, kernel_size=1, padding=0)\n        nn.init.constant_(self.conv.bias, 0)\n\n    def forward(self, x):\n        return self.conv(x)\n\n\nclass PDCBlock(nn.Module):\n    def __init__(self, pdc, inplane, ouplane, stride=1):\n        super(PDCBlock, self).__init__()\n        self.stride=stride\n\n        self.stride=stride\n        if self.stride > 1:\n            self.pool = nn.MaxPool2d(kernel_size=2, stride=2)\n            self.shortcut = nn.Conv2d(inplane, ouplane, kernel_size=1, padding=0)\n        self.conv1 = Conv2d(pdc, inplane, inplane, kernel_size=3, padding=1, groups=inplane, bias=False)\n        self.relu2 = nn.ReLU()\n        self.conv2 = nn.Conv2d(inplane, ouplane, kernel_size=1, padding=0, bias=False)\n\n    def forward(self, x):\n        if self.stride > 1:\n            x = self.pool(x)\n        y = self.conv1(x)\n        y = self.relu2(y)\n        y = self.conv2(y)\n        if self.stride > 1:\n            x = self.shortcut(x)\n        y = y + x\n        return y\n\nclass PDCBlock_converted(nn.Module):\n    \"\"\"\n    CPDC, APDC can be converted to vanilla 3x3 convolution\n    RPDC can be converted to vanilla 5x5 convolution\n    \"\"\"\n    def __init__(self, pdc, inplane, ouplane, stride=1):\n        super(PDCBlock_converted, self).__init__()\n        self.stride=stride\n\n        if self.stride > 1:\n            self.pool = nn.MaxPool2d(kernel_size=2, stride=2)\n            self.shortcut = nn.Conv2d(inplane, ouplane, kernel_size=1, padding=0)\n        if pdc == 'rd':\n            self.conv1 = nn.Conv2d(inplane, inplane, kernel_size=5, padding=2, groups=inplane, bias=False)\n        else:\n            self.conv1 = nn.Conv2d(inplane, inplane, kernel_size=3, padding=1, groups=inplane, bias=False)\n        self.relu2 = nn.ReLU()\n        self.conv2 = nn.Conv2d(inplane, ouplane, kernel_size=1, padding=0, bias=False)\n\n    def forward(self, x):\n        if self.stride > 1:\n            x = self.pool(x)\n        y = self.conv1(x)\n        y = self.relu2(y)\n        y = self.conv2(y)\n        if self.stride > 1:\n            x = self.shortcut(x)\n        y = y + x\n        return y\n\nclass PiDiNet(nn.Module):\n    def __init__(self, inplane, pdcs, dil=None, sa=False, convert=False):\n        super(PiDiNet, self).__init__()\n        self.sa = sa\n        if dil is not None:\n            assert isinstance(dil, int), 'dil should be an int'\n        self.dil = dil\n\n        self.fuseplanes = []\n\n        self.inplane = inplane\n        if convert:\n            if pdcs[0] == 'rd':\n                init_kernel_size = 5\n                init_padding = 2\n            else:\n                init_kernel_size = 3\n                init_padding = 1\n            self.init_block = nn.Conv2d(3, self.inplane,\n                    kernel_size=init_kernel_size, padding=init_padding, bias=False)\n            block_class = PDCBlock_converted\n        else:\n            self.init_block = Conv2d(pdcs[0], 3, self.inplane, kernel_size=3, padding=1)\n            block_class = PDCBlock\n\n        self.block1_1 = block_class(pdcs[1], self.inplane, self.inplane)\n        self.block1_2 = block_class(pdcs[2], self.inplane, self.inplane)\n        self.block1_3 = block_class(pdcs[3], self.inplane, self.inplane)\n        self.fuseplanes.append(self.inplane) # C\n\n        inplane = self.inplane\n        self.inplane = self.inplane * 2\n        self.block2_1 = block_class(pdcs[4], inplane, self.inplane, stride=2)\n        self.block2_2 = block_class(pdcs[5], self.inplane, self.inplane)\n        self.block2_3 = block_class(pdcs[6], self.inplane, self.inplane)\n        self.block2_4 = block_class(pdcs[7], self.inplane, self.inplane)\n        self.fuseplanes.append(self.inplane) # 2C\n\n        inplane = self.inplane\n        self.inplane = self.inplane * 2\n        self.block3_1 = block_class(pdcs[8], inplane, self.inplane, stride=2)\n        self.block3_2 = block_class(pdcs[9], self.inplane, self.inplane)\n        self.block3_3 = block_class(pdcs[10], self.inplane, self.inplane)\n        self.block3_4 = block_class(pdcs[11], self.inplane, self.inplane)\n        self.fuseplanes.append(self.inplane) # 4C\n\n        self.block4_1 = block_class(pdcs[12], self.inplane, self.inplane, stride=2)\n        self.block4_2 = block_class(pdcs[13], self.inplane, self.inplane)\n        self.block4_3 = block_class(pdcs[14], self.inplane, self.inplane)\n        self.block4_4 = block_class(pdcs[15], self.inplane, self.inplane)\n        self.fuseplanes.append(self.inplane) # 4C\n\n        self.conv_reduces = nn.ModuleList()\n        if self.sa and self.dil is not None:\n            self.attentions = nn.ModuleList()\n            self.dilations = nn.ModuleList()\n            for i in range(4):\n                self.dilations.append(CDCM(self.fuseplanes[i], self.dil))\n                self.attentions.append(CSAM(self.dil))\n                self.conv_reduces.append(MapReduce(self.dil))\n        elif self.sa:\n            self.attentions = nn.ModuleList()\n            for i in range(4):\n                self.attentions.append(CSAM(self.fuseplanes[i]))\n                self.conv_reduces.append(MapReduce(self.fuseplanes[i]))\n        elif self.dil is not None:\n            self.dilations = nn.ModuleList()\n            for i in range(4):\n                self.dilations.append(CDCM(self.fuseplanes[i], self.dil))\n                self.conv_reduces.append(MapReduce(self.dil))\n        else:\n            for i in range(4):\n                self.conv_reduces.append(MapReduce(self.fuseplanes[i]))\n\n        self.classifier = nn.Conv2d(4, 1, kernel_size=1) # has bias\n        nn.init.constant_(self.classifier.weight, 0.25)\n        nn.init.constant_(self.classifier.bias, 0)\n\n        # print('initialization done')\n\n    def get_weights(self):\n        conv_weights = []\n        bn_weights = []\n        relu_weights = []\n        for pname, p in self.named_parameters():\n            if 'bn' in pname:\n                bn_weights.append(p)\n            elif 'relu' in pname:\n                relu_weights.append(p)\n            else:\n                conv_weights.append(p)\n\n        return conv_weights, bn_weights, relu_weights\n\n    def forward(self, x):\n        H, W = x.size()[2:]\n\n        x = self.init_block(x)\n\n        x1 = self.block1_1(x)\n        x1 = self.block1_2(x1)\n        x1 = self.block1_3(x1)\n\n        x2 = self.block2_1(x1)\n        x2 = self.block2_2(x2)\n        x2 = self.block2_3(x2)\n        x2 = self.block2_4(x2)\n\n        x3 = self.block3_1(x2)\n        x3 = self.block3_2(x3)\n        x3 = self.block3_3(x3)\n        x3 = self.block3_4(x3)\n\n        x4 = self.block4_1(x3)\n        x4 = self.block4_2(x4)\n        x4 = self.block4_3(x4)\n        x4 = self.block4_4(x4)\n\n        x_fuses = []\n        if self.sa and self.dil is not None:\n            for i, xi in enumerate([x1, x2, x3, x4]):\n                x_fuses.append(self.attentions[i](self.dilations[i](xi)))\n        elif self.sa:\n            for i, xi in enumerate([x1, x2, x3, x4]):\n                x_fuses.append(self.attentions[i](xi))\n        elif self.dil is not None:\n            for i, xi in enumerate([x1, x2, x3, x4]):\n                x_fuses.append(self.dilations[i](xi))\n        else:\n            x_fuses = [x1, x2, x3, x4]\n\n        e1 = self.conv_reduces[0](x_fuses[0])\n        e1 = F.interpolate(e1, (H, W), mode=\"bilinear\", align_corners=False)\n\n        e2 = self.conv_reduces[1](x_fuses[1])\n        e2 = F.interpolate(e2, (H, W), mode=\"bilinear\", align_corners=False)\n\n        e3 = self.conv_reduces[2](x_fuses[2])\n        e3 = F.interpolate(e3, (H, W), mode=\"bilinear\", align_corners=False)\n\n        e4 = self.conv_reduces[3](x_fuses[3])\n        e4 = F.interpolate(e4, (H, W), mode=\"bilinear\", align_corners=False)\n\n        outputs = [e1, e2, e3, e4]\n\n        output = self.classifier(torch.cat(outputs, dim=1))\n        #if not self.training:\n        #    return torch.sigmoid(output)\n\n        outputs.append(output)\n        outputs = [torch.sigmoid(r) for r in outputs]\n        return outputs\n\ndef config_model(model):\n    model_options = list(nets.keys())\n    assert model in model_options, \\\n        'unrecognized model, please choose from %s' % str(model_options)\n\n    # print(str(nets[model]))\n\n    pdcs = []\n    for i in range(16):\n        layer_name = 'layer%d' % i\n        op = nets[model][layer_name]\n        pdcs.append(createConvFunc(op))\n\n    return pdcs\n\ndef pidinet():\n    pdcs = config_model('carv4')\n    dil = 24 #if args.dil else None\n    return PiDiNet(60, pdcs, dil=dil, sa=True)\n\n\nif __name__ == '__main__':\n    model = pidinet()\n    ckp = torch.load('table5_pidinet.pth')['state_dict']\n    model.load_state_dict({k.replace('module.',''):v for k, v in ckp.items()})\n    im = cv2.imread('examples/test_my/cat_v4.png')\n    im = img2tensor(im).unsqueeze(0)/255.\n    res = model(im)[-1]\n    res = res>0.5\n    res = res.float()\n    res = (res[0,0].cpu().data.numpy()*255.).astype(np.uint8)\n    print(res.shape)\n    cv2.imwrite('edge.png', res)\n"
  },
  {
    "path": "modules/control/proc/segment_anything/__init__.py",
    "content": "# Copyright (c) Meta Platforms, Inc. and affiliates.\n# All rights reserved.\n\n# This source code is licensed under the license found in the\n# LICENSE file in the root directory of this source tree.\n\nimport warnings\nfrom typing import Union\nimport cv2\nimport numpy as np\nimport torch\nfrom huggingface_hub import hf_hub_download\nfrom PIL import Image\nfrom modules import devices\nfrom modules.shared import opts\nfrom modules.control.util import HWC3, resize_image\nfrom .automatic_mask_generator import SamAutomaticMaskGenerator\nfrom .build_sam import sam_model_registry\n\n\nclass SamDetector:\n    def __init__(self, mask_generator: SamAutomaticMaskGenerator = None):\n        self.model = mask_generator\n\n    @classmethod\n    def from_pretrained(cls, model_path, filename, model_type, cache_dir=None, local_files_only=False):\n        \"\"\"\n        Possible model_type : vit_h, vit_l, vit_b, vit_t\n        download weights from https://github.com/facebookresearch/segment-anything\n        \"\"\"\n        model_path = hf_hub_download(model_path, filename, cache_dir=cache_dir, local_files_only=local_files_only)\n        sam = sam_model_registry[model_type](checkpoint=model_path)\n        sam.to(devices.device)\n        mask_generator = SamAutomaticMaskGenerator(sam)\n        return cls(mask_generator)\n\n\n    def show_anns(self, anns):\n        from numpy.random import default_rng\n        gen = default_rng()\n        if len(anns) == 0:\n            return\n        sorted_anns = sorted(anns, key=(lambda x: x['area']), reverse=True)\n        h, w =  anns[0]['segmentation'].shape\n        final_img = Image.fromarray(np.zeros((h, w, 3), dtype=np.uint8), mode=\"RGB\")\n        for ann in sorted_anns:\n            m = ann['segmentation']\n            img = np.empty((m.shape[0], m.shape[1], 3), dtype=np.uint8)\n            for i in range(3):\n                img[:,:,i] = gen.integers(255, dtype=np.uint8)\n            final_img.paste(Image.fromarray(img, mode=\"RGB\"), (0, 0), Image.fromarray(np.uint8(m*255)))\n        return np.array(final_img, dtype=np.uint8)\n\n    def __call__(self, input_image: Union[np.ndarray, Image.Image]=None, detect_resolution=512, image_resolution=512, output_type=\"pil\", **kwargs) -> Image.Image:\n        if \"image\" in kwargs:\n            warnings.warn(\"image is deprecated, please use `input_image=...` instead.\", DeprecationWarning)\n            input_image = kwargs.pop(\"image\")\n        if input_image is None:\n            raise ValueError(\"input_image must be defined.\")\n        if not isinstance(input_image, np.ndarray):\n            input_image = np.array(input_image, dtype=np.uint8)\n        input_image = HWC3(input_image)\n        input_image = resize_image(input_image, detect_resolution)\n        # Generate Masks\n        self.model.predictor.model.to(devices.device)\n        masks = self.model.generate(input_image)\n        if opts.control_move_processor:\n            self.model.predictor.model.to('cpu')\n        # Create map\n        image_map = self.show_anns(masks)\n        detected_map = image_map\n        detected_map = HWC3(detected_map)\n        img = resize_image(input_image, image_resolution)\n        H, W, _C = img.shape\n        detected_map = cv2.resize(detected_map, (W, H), interpolation=cv2.INTER_LINEAR)\n        if output_type == \"pil\":\n            detected_map = Image.fromarray(detected_map)\n        return detected_map\n"
  },
  {
    "path": "modules/control/proc/segment_anything/automatic_mask_generator.py",
    "content": "# Copyright (c) Meta Platforms, Inc. and affiliates.\n# All rights reserved.\n\n# This source code is licensed under the license found in the\n# LICENSE file in the root directory of this source tree.\n\nfrom typing import Any, Dict, List, Optional, Tuple\nimport numpy as np\nimport torch\nfrom torchvision.ops.boxes import batched_nms, box_area  # type: ignore\nfrom .modeling import Sam\nfrom .predictor import SamPredictor\nfrom .utils.amg import (\n    MaskData,\n    area_from_rle,\n    batch_iterator,\n    batched_mask_to_box,\n    box_xyxy_to_xywh,\n    build_all_layer_point_grids,\n    calculate_stability_score,\n    coco_encode_rle,\n    generate_crop_boxes,\n    is_box_near_crop_edge,\n    mask_to_rle_pytorch,\n    remove_small_regions,\n    rle_to_mask,\n    uncrop_boxes_xyxy,\n    uncrop_masks,\n    uncrop_points,\n)\n\n\nclass SamAutomaticMaskGenerator:\n    def __init__(\n        self,\n        model: Sam,\n        points_per_side: Optional[int] = 32,\n        points_per_batch: int = 64,\n        pred_iou_thresh: float = 0.88,\n        stability_score_thresh: float = 0.95,\n        stability_score_offset: float = 1.0,\n        box_nms_thresh: float = 0.7,\n        crop_n_layers: int = 0,\n        crop_nms_thresh: float = 0.7,\n        crop_overlap_ratio: float = 512 / 1500,\n        crop_n_points_downscale_factor: int = 1,\n        point_grids: Optional[List[np.ndarray]] = None,\n        min_mask_region_area: int = 0,\n        output_mode: str = \"binary_mask\",\n    ) -> None:\n        \"\"\"\n        Using a SAM model, generates masks for the entire image.\n        Generates a grid of point prompts over the image, then filters\n        low quality and duplicate masks. The default settings are chosen\n        for SAM with a ViT-H backbone.\n\n        Arguments:\n          model (Sam): The SAM model to use for mask prediction.\n          points_per_side (int or None): The number of points to be sampled\n            along one side of the image. The total number of points is\n            points_per_side**2. If None, 'point_grids' must provide explicit\n            point sampling.\n          points_per_batch (int): Sets the number of points run simultaneously\n            by the model. Higher numbers may be faster but use more GPU memory.\n          pred_iou_thresh (float): A filtering threshold in [0,1], using the\n            model's predicted mask quality.\n          stability_score_thresh (float): A filtering threshold in [0,1], using\n            the stability of the mask under changes to the cutoff used to binarize\n            the model's mask predictions.\n          stability_score_offset (float): The amount to shift the cutoff when\n            calculated the stability score.\n          box_nms_thresh (float): The box IoU cutoff used by non-maximal\n            suppression to filter duplicate masks.\n          crop_n_layers (int): If >0, mask prediction will be run again on\n            crops of the image. Sets the number of layers to run, where each\n            layer has 2**i_layer number of image crops.\n          crop_nms_thresh (float): The box IoU cutoff used by non-maximal\n            suppression to filter duplicate masks between different crops.\n          crop_overlap_ratio (float): Sets the degree to which crops overlap.\n            In the first crop layer, crops will overlap by this fraction of\n            the image length. Later layers with more crops scale down this overlap.\n          crop_n_points_downscale_factor (int): The number of points-per-side\n            sampled in layer n is scaled down by crop_n_points_downscale_factor**n.\n          point_grids (list(np.ndarray) or None): A list over explicit grids\n            of points used for sampling, normalized to [0,1]. The nth grid in the\n            list is used in the nth crop layer. Exclusive with points_per_side.\n          min_mask_region_area (int): If >0, postprocessing will be applied\n            to remove disconnected regions and holes in masks with area smaller\n            than min_mask_region_area. Requires opencv.\n          output_mode (str): The form masks are returned in. Can be 'binary_mask',\n            'uncompressed_rle', or 'coco_rle'. 'coco_rle' requires pycocotools.\n            For large resolutions, 'binary_mask' may consume large amounts of\n            memory.\n        \"\"\"\n\n        assert (points_per_side is None) != (\n            point_grids is None\n        ), \"Exactly one of points_per_side or point_grid must be provided.\"\n        if points_per_side is not None:\n            self.point_grids = build_all_layer_point_grids(\n                points_per_side,\n                crop_n_layers,\n                crop_n_points_downscale_factor,\n            )\n        elif point_grids is not None:\n            self.point_grids = point_grids\n        else:\n            raise ValueError(\"Can't have both points_per_side and point_grid be None.\")\n\n        assert output_mode in [\n            \"binary_mask\",\n            \"uncompressed_rle\",\n            \"coco_rle\",\n        ], f\"Unknown output_mode {output_mode}.\"\n        self.predictor = SamPredictor(model)\n        self.points_per_batch = points_per_batch\n        self.pred_iou_thresh = pred_iou_thresh\n        self.stability_score_thresh = stability_score_thresh\n        self.stability_score_offset = stability_score_offset\n        self.box_nms_thresh = box_nms_thresh\n        self.crop_n_layers = crop_n_layers\n        self.crop_nms_thresh = crop_nms_thresh\n        self.crop_overlap_ratio = crop_overlap_ratio\n        self.crop_n_points_downscale_factor = crop_n_points_downscale_factor\n        self.min_mask_region_area = min_mask_region_area\n        self.output_mode = output_mode\n\n    def generate(self, image: np.ndarray) -> List[Dict[str, Any]]:\n        \"\"\"\n        Generates masks for the given image.\n\n        Arguments:\n          image (np.ndarray): The image to generate masks for, in HWC uint8 format.\n\n        Returns:\n           list(dict(str, any)): A list over records for masks. Each record is\n             a dict containing the following keys:\n               segmentation (dict(str, any) or np.ndarray): The mask. If\n                 output_mode='binary_mask', is an array of shape HW. Otherwise,\n                 is a dictionary containing the RLE.\n               bbox (list(float)): The box around the mask, in XYWH format.\n               area (int): The area in pixels of the mask.\n               predicted_iou (float): The model's own prediction of the mask's\n                 quality. This is filtered by the pred_iou_thresh parameter.\n               point_coords (list(list(float))): The point coordinates input\n                 to the model to generate this mask.\n               stability_score (float): A measure of the mask's quality. This\n                 is filtered on using the stability_score_thresh parameter.\n               crop_box (list(float)): The crop of the image used to generate\n                 the mask, given in XYWH format.\n        \"\"\"\n\n        # Generate masks\n        mask_data = self._generate_masks(image)\n\n        # Filter small disconnected regions and holes in masks\n        if self.min_mask_region_area > 0:\n            mask_data = self.postprocess_small_regions(\n                mask_data,\n                self.min_mask_region_area,\n                max(self.box_nms_thresh, self.crop_nms_thresh),\n            )\n\n        # Encode masks\n        if self.output_mode == \"coco_rle\":\n            mask_data[\"segmentations\"] = [coco_encode_rle(rle) for rle in mask_data[\"rles\"]]\n        elif self.output_mode == \"binary_mask\":\n            mask_data[\"segmentations\"] = [rle_to_mask(rle) for rle in mask_data[\"rles\"]]\n        else:\n            mask_data[\"segmentations\"] = mask_data[\"rles\"]\n\n        # Write mask records\n        curr_anns = []\n        for idx in range(len(mask_data[\"segmentations\"])):\n            ann = {\n                \"segmentation\": mask_data[\"segmentations\"][idx],\n                \"area\": area_from_rle(mask_data[\"rles\"][idx]),\n                \"bbox\": box_xyxy_to_xywh(mask_data[\"boxes\"][idx]).tolist(),\n                \"predicted_iou\": mask_data[\"iou_preds\"][idx].item(),\n                \"point_coords\": [mask_data[\"points\"][idx].tolist()],\n                \"stability_score\": mask_data[\"stability_score\"][idx].item(),\n                \"crop_box\": box_xyxy_to_xywh(mask_data[\"crop_boxes\"][idx]).tolist(),\n            }\n            curr_anns.append(ann)\n\n        return curr_anns\n\n    def _generate_masks(self, image: np.ndarray) -> MaskData:\n        orig_size = image.shape[:2]\n        crop_boxes, layer_idxs = generate_crop_boxes(\n            orig_size, self.crop_n_layers, self.crop_overlap_ratio\n        )\n\n        # Iterate over image crops\n        data = MaskData()\n        for crop_box, layer_idx in zip(crop_boxes, layer_idxs):\n            crop_data = self._process_crop(image, crop_box, layer_idx, orig_size)\n            data.cat(crop_data)\n\n        # Remove duplicate masks between crops\n        if len(crop_boxes) > 1:\n            # Prefer masks from smaller crops\n            scores = 1 / box_area(data[\"crop_boxes\"])\n            scores = scores.to(data[\"boxes\"].device)\n            keep_by_nms = batched_nms(\n                data[\"boxes\"].float(),\n                scores,\n                torch.zeros_like(data[\"boxes\"][:, 0]),  # categories\n                iou_threshold=self.crop_nms_thresh,\n            )\n            data.filter(keep_by_nms)\n\n        data.to_numpy()\n        return data\n\n    def _process_crop(\n        self,\n        image: np.ndarray,\n        crop_box: List[int],\n        crop_layer_idx: int,\n        orig_size: Tuple[int, ...],\n    ) -> MaskData:\n        # Crop the image and calculate embeddings\n        x0, y0, x1, y1 = crop_box\n        cropped_im = image[y0:y1, x0:x1, :]\n        cropped_im_size = cropped_im.shape[:2]\n        self.predictor.set_image(cropped_im)\n\n        # Get points for this crop\n        points_scale = np.array(cropped_im_size)[None, ::-1]\n        points_for_image = self.point_grids[crop_layer_idx] * points_scale\n\n        # Generate masks for this crop in batches\n        data = MaskData()\n        for (points,) in batch_iterator(self.points_per_batch, points_for_image):\n            batch_data = self._process_batch(points, cropped_im_size, crop_box, orig_size)\n            data.cat(batch_data)\n            del batch_data\n        self.predictor.reset_image()\n\n        # Remove duplicates within this crop.\n        keep_by_nms = batched_nms(\n            data[\"boxes\"].float(),\n            data[\"iou_preds\"],\n            torch.zeros_like(data[\"boxes\"][:, 0]),  # categories\n            iou_threshold=self.box_nms_thresh,\n        )\n        data.filter(keep_by_nms)\n\n        # Return to the original image frame\n        data[\"boxes\"] = uncrop_boxes_xyxy(data[\"boxes\"], crop_box)\n        data[\"points\"] = uncrop_points(data[\"points\"], crop_box)\n        data[\"crop_boxes\"] = torch.tensor([crop_box for _ in range(len(data[\"rles\"]))])\n\n        return data\n\n    def _process_batch(\n        self,\n        points: np.ndarray,\n        im_size: Tuple[int, ...],\n        crop_box: List[int],\n        orig_size: Tuple[int, ...],\n    ) -> MaskData:\n        orig_h, orig_w = orig_size\n\n        # Run model on this batch\n        transformed_points = self.predictor.transform.apply_coords(points, im_size)\n        in_points = torch.as_tensor(transformed_points, device=self.predictor.device)\n        in_labels = torch.ones(in_points.shape[0], dtype=torch.int, device=in_points.device)\n        masks, iou_preds, _ = self.predictor.predict_torch(\n            in_points[:, None, :],\n            in_labels[:, None],\n            multimask_output=True,\n            return_logits=True,\n        )\n\n        # Serialize predictions and store in MaskData\n        data = MaskData(\n            masks=masks.flatten(0, 1),\n            iou_preds=iou_preds.flatten(0, 1),\n            points=torch.as_tensor(points.repeat(masks.shape[1], axis=0)),\n        )\n        del masks\n\n        # Filter by predicted IoU\n        if self.pred_iou_thresh > 0.0:\n            keep_mask = data[\"iou_preds\"] > self.pred_iou_thresh\n            data.filter(keep_mask)\n\n        # Calculate stability score\n        data[\"stability_score\"] = calculate_stability_score(\n            data[\"masks\"], self.predictor.model.mask_threshold, self.stability_score_offset\n        )\n        if self.stability_score_thresh > 0.0:\n            keep_mask = data[\"stability_score\"] >= self.stability_score_thresh\n            data.filter(keep_mask)\n\n        # Threshold masks and calculate boxes\n        data[\"masks\"] = data[\"masks\"] > self.predictor.model.mask_threshold\n        data[\"boxes\"] = batched_mask_to_box(data[\"masks\"])\n\n        # Filter boxes that touch crop boundaries\n        keep_mask = ~is_box_near_crop_edge(data[\"boxes\"], crop_box, [0, 0, orig_w, orig_h])\n        if not torch.all(keep_mask):\n            data.filter(keep_mask)\n\n        # Compress to RLE\n        data[\"masks\"] = uncrop_masks(data[\"masks\"], crop_box, orig_h, orig_w)\n        data[\"rles\"] = mask_to_rle_pytorch(data[\"masks\"])\n        del data[\"masks\"]\n\n        return data\n\n    @staticmethod\n    def postprocess_small_regions(\n        mask_data: MaskData, min_area: int, nms_thresh: float\n    ) -> MaskData:\n        \"\"\"\n        Removes small disconnected regions and holes in masks, then reruns\n        box NMS to remove any new duplicates.\n\n        Edits mask_data in place.\n\n        Requires open-cv as a dependency.\n        \"\"\"\n        if len(mask_data[\"rles\"]) == 0:\n            return mask_data\n\n        # Filter small disconnected regions and holes\n        new_masks = []\n        scores = []\n        for rle in mask_data[\"rles\"]:\n            mask = rle_to_mask(rle)\n\n            mask, changed = remove_small_regions(mask, min_area, mode=\"holes\")\n            unchanged = not changed\n            mask, changed = remove_small_regions(mask, min_area, mode=\"islands\")\n            unchanged = unchanged and not changed\n\n            new_masks.append(torch.as_tensor(mask).unsqueeze(0))\n            # Give score=0 to changed masks and score=1 to unchanged masks\n            # so NMS will prefer ones that didn't need postprocessing\n            scores.append(float(unchanged))\n\n        # Recalculate boxes and remove any new duplicates\n        masks = torch.cat(new_masks, dim=0)\n        boxes = batched_mask_to_box(masks)\n        keep_by_nms = batched_nms(\n            boxes.float(),\n            torch.as_tensor(scores),\n            torch.zeros_like(boxes[:, 0]),  # categories\n            iou_threshold=nms_thresh,\n        )\n\n        # Only recalculate RLEs for masks that have changed\n        for i_mask in keep_by_nms:\n            if scores[i_mask] == 0.0:\n                mask_torch = masks[i_mask].unsqueeze(0)\n                mask_data[\"rles\"][i_mask] = mask_to_rle_pytorch(mask_torch)[0]\n                mask_data[\"boxes\"][i_mask] = boxes[i_mask]  # update res directly\n        mask_data.filter(keep_by_nms)\n\n        return mask_data\n"
  },
  {
    "path": "modules/control/proc/segment_anything/build_sam.py",
    "content": "# Copyright (c) Meta Platforms, Inc. and affiliates.\n# All rights reserved.\n\n# This source code is licensed under the license found in the\n# LICENSE file in the root directory of this source tree.\n\nimport torch\n\nfrom functools import partial\n\nfrom .modeling import ImageEncoderViT, MaskDecoder, PromptEncoder, Sam, TwoWayTransformer, TinyViT\n\n\ndef build_sam_vit_h(checkpoint=None):\n    return _build_sam(\n        encoder_embed_dim=1280,\n        encoder_depth=32,\n        encoder_num_heads=16,\n        encoder_global_attn_indexes=[7, 15, 23, 31],\n        checkpoint=checkpoint,\n    )\n\n\nbuild_sam = build_sam_vit_h\n\n\ndef build_sam_vit_l(checkpoint=None):\n    return _build_sam(\n        encoder_embed_dim=1024,\n        encoder_depth=24,\n        encoder_num_heads=16,\n        encoder_global_attn_indexes=[5, 11, 17, 23],\n        checkpoint=checkpoint,\n    )\n\n\ndef build_sam_vit_b(checkpoint=None):\n    return _build_sam(\n        encoder_embed_dim=768,\n        encoder_depth=12,\n        encoder_num_heads=12,\n        encoder_global_attn_indexes=[2, 5, 8, 11],\n        checkpoint=checkpoint,\n    )\n\n\ndef build_sam_vit_t(checkpoint=None):\n    prompt_embed_dim = 256\n    image_size = 1024\n    vit_patch_size = 16\n    image_embedding_size = image_size // vit_patch_size\n    mobile_sam = Sam(\n            image_encoder=TinyViT(img_size=1024, in_chans=3, num_classes=1000,\n                embed_dims=[64, 128, 160, 320],\n                depths=[2, 2, 6, 2],\n                num_heads=[2, 4, 5, 10],\n                window_sizes=[7, 7, 14, 7],\n                mlp_ratio=4.,\n                drop_rate=0.,\n                drop_path_rate=0.0,\n                use_checkpoint=False,\n                mbconv_expand_ratio=4.0,\n                local_conv_size=3,\n                layer_lr_decay=0.8\n            ),\n            prompt_encoder=PromptEncoder(\n            embed_dim=prompt_embed_dim,\n            image_embedding_size=(image_embedding_size, image_embedding_size),\n            input_image_size=(image_size, image_size),\n            mask_in_chans=16,\n            ),\n            mask_decoder=MaskDecoder(\n                    num_multimask_outputs=3,\n                    transformer=TwoWayTransformer(\n                    depth=2,\n                    embedding_dim=prompt_embed_dim,\n                    mlp_dim=2048,\n                    num_heads=8,\n                ),\n                transformer_dim=prompt_embed_dim,\n                iou_head_depth=3,\n                iou_head_hidden_dim=256,\n            ),\n            pixel_mean=[123.675, 116.28, 103.53],\n            pixel_std=[58.395, 57.12, 57.375],\n        )\n\n    mobile_sam.eval()\n    if checkpoint is not None:\n        with open(checkpoint, \"rb\") as f:\n            state_dict = torch.load(f)\n        mobile_sam.load_state_dict(state_dict)\n    return mobile_sam\n\n\nsam_model_registry = {\n    \"default\": build_sam_vit_h,\n    \"vit_h\": build_sam_vit_h,\n    \"vit_l\": build_sam_vit_l,\n    \"vit_b\": build_sam_vit_b,\n    \"vit_t\": build_sam_vit_t,\n}\n\n\ndef _build_sam(\n    encoder_embed_dim,\n    encoder_depth,\n    encoder_num_heads,\n    encoder_global_attn_indexes,\n    checkpoint=None,\n):\n    prompt_embed_dim = 256\n    image_size = 1024\n    vit_patch_size = 16\n    image_embedding_size = image_size // vit_patch_size\n    sam = Sam(\n        image_encoder=ImageEncoderViT(\n            depth=encoder_depth,\n            embed_dim=encoder_embed_dim,\n            img_size=image_size,\n            mlp_ratio=4,\n            norm_layer=partial(torch.nn.LayerNorm, eps=1e-6),\n            num_heads=encoder_num_heads,\n            patch_size=vit_patch_size,\n            qkv_bias=True,\n            use_rel_pos=True,\n            global_attn_indexes=encoder_global_attn_indexes,\n            window_size=14,\n            out_chans=prompt_embed_dim,\n        ),\n        prompt_encoder=PromptEncoder(\n            embed_dim=prompt_embed_dim,\n            image_embedding_size=(image_embedding_size, image_embedding_size),\n            input_image_size=(image_size, image_size),\n            mask_in_chans=16,\n        ),\n        mask_decoder=MaskDecoder(\n            num_multimask_outputs=3,\n            transformer=TwoWayTransformer(\n                depth=2,\n                embedding_dim=prompt_embed_dim,\n                mlp_dim=2048,\n                num_heads=8,\n            ),\n            transformer_dim=prompt_embed_dim,\n            iou_head_depth=3,\n            iou_head_hidden_dim=256,\n        ),\n        pixel_mean=[123.675, 116.28, 103.53],\n        pixel_std=[58.395, 57.12, 57.375],\n    )\n    sam.eval()\n    if checkpoint is not None:\n        with open(checkpoint, \"rb\") as f:\n            state_dict = torch.load(f)\n        sam.load_state_dict(state_dict)\n    return sam\n"
  },
  {
    "path": "modules/control/proc/segment_anything/modeling/__init__.py",
    "content": "# Copyright (c) Meta Platforms, Inc. and affiliates.\n# All rights reserved.\n\n# This source code is licensed under the license found in the\n# LICENSE file in the root directory of this source tree.\n\nfrom .sam import Sam\nfrom .image_encoder import ImageEncoderViT\nfrom .mask_decoder import MaskDecoder\nfrom .prompt_encoder import PromptEncoder\nfrom .transformer import TwoWayTransformer\nfrom .tiny_vit_sam import TinyViT\n"
  },
  {
    "path": "modules/control/proc/segment_anything/modeling/common.py",
    "content": "# Copyright (c) Meta Platforms, Inc. and affiliates.\n# All rights reserved.\n\n# This source code is licensed under the license found in the\n# LICENSE file in the root directory of this source tree.\n\nimport torch\nimport torch.nn as nn\n\nfrom typing import Type\n\n\nclass MLPBlock(nn.Module):\n    def __init__(\n        self,\n        embedding_dim: int,\n        mlp_dim: int,\n        act: Type[nn.Module] = nn.GELU,\n    ) -> None:\n        super().__init__()\n        self.lin1 = nn.Linear(embedding_dim, mlp_dim)\n        self.lin2 = nn.Linear(mlp_dim, embedding_dim)\n        self.act = act()\n\n    def forward(self, x: torch.Tensor) -> torch.Tensor:\n        return self.lin2(self.act(self.lin1(x)))\n\n\n# From https://github.com/facebookresearch/detectron2/blob/main/detectron2/layers/batch_norm.py\n# Itself from https://github.com/facebookresearch/ConvNeXt/blob/d1fa8f6fef0a165b27399986cc2bdacc92777e40/models/convnext.py#L119\nclass LayerNorm2d(nn.Module):\n    def __init__(self, num_channels: int, eps: float = 1e-6) -> None:\n        super().__init__()\n        self.weight = nn.Parameter(torch.ones(num_channels))\n        self.bias = nn.Parameter(torch.zeros(num_channels))\n        self.eps = eps\n\n    def forward(self, x: torch.Tensor) -> torch.Tensor:\n        u = x.mean(1, keepdim=True)\n        s = (x - u).pow(2).mean(1, keepdim=True)\n        x = (x - u) / torch.sqrt(s + self.eps)\n        x = self.weight[:, None, None] * x + self.bias[:, None, None]\n        return x\n"
  },
  {
    "path": "modules/control/proc/segment_anything/modeling/image_encoder.py",
    "content": "# Copyright (c) Meta Platforms, Inc. and affiliates.\n# All rights reserved.\n\n# This source code is licensed under the license found in the\n# LICENSE file in the root directory of this source tree.\n\nimport torch\nimport torch.nn as nn\nimport torch.nn.functional as F\n\nfrom typing import Optional, Tuple, Type\n\nfrom .common import LayerNorm2d, MLPBlock\n\n\n# This class and its supporting functions below lightly adapted from the ViTDet backbone available at: https://github.com/facebookresearch/detectron2/blob/main/detectron2/modeling/backbone/vit.py\nclass ImageEncoderViT(nn.Module):\n    def __init__(\n        self,\n        img_size: int = 1024,\n        patch_size: int = 16,\n        in_chans: int = 3,\n        embed_dim: int = 768,\n        depth: int = 12,\n        num_heads: int = 12,\n        mlp_ratio: float = 4.0,\n        out_chans: int = 256,\n        qkv_bias: bool = True,\n        norm_layer: Type[nn.Module] = nn.LayerNorm,\n        act_layer: Type[nn.Module] = nn.GELU,\n        use_abs_pos: bool = True,\n        use_rel_pos: bool = False,\n        rel_pos_zero_init: bool = True,\n        window_size: int = 0,\n        global_attn_indexes: Tuple[int, ...] = (),\n    ) -> None:\n        \"\"\"\n        Args:\n            img_size (int): Input image size.\n            patch_size (int): Patch size.\n            in_chans (int): Number of input image channels.\n            embed_dim (int): Patch embedding dimension.\n            depth (int): Depth of ViT.\n            num_heads (int): Number of attention heads in each ViT block.\n            mlp_ratio (float): Ratio of mlp hidden dim to embedding dim.\n            qkv_bias (bool): If True, add a learnable bias to query, key, value.\n            norm_layer (nn.Module): Normalization layer.\n            act_layer (nn.Module): Activation layer.\n            use_abs_pos (bool): If True, use absolute positional embeddings.\n            use_rel_pos (bool): If True, add relative positional embeddings to the attention map.\n            rel_pos_zero_init (bool): If True, zero initialize relative positional parameters.\n            window_size (int): Window size for window attention blocks.\n            global_attn_indexes (list): Indexes for blocks using global attention.\n        \"\"\"\n        super().__init__()\n        self.img_size = img_size\n\n        self.patch_embed = PatchEmbed(\n            kernel_size=(patch_size, patch_size),\n            stride=(patch_size, patch_size),\n            in_chans=in_chans,\n            embed_dim=embed_dim,\n        )\n\n        self.pos_embed: Optional[nn.Parameter] = None\n        if use_abs_pos:\n            # Initialize absolute positional embedding with pretrain image size.\n            self.pos_embed = nn.Parameter(\n                torch.zeros(1, img_size // patch_size, img_size // patch_size, embed_dim)\n            )\n\n        self.blocks = nn.ModuleList()\n        for i in range(depth):\n            block = Block(\n                dim=embed_dim,\n                num_heads=num_heads,\n                mlp_ratio=mlp_ratio,\n                qkv_bias=qkv_bias,\n                norm_layer=norm_layer,\n                act_layer=act_layer,\n                use_rel_pos=use_rel_pos,\n                rel_pos_zero_init=rel_pos_zero_init,\n                window_size=window_size if i not in global_attn_indexes else 0,\n                input_size=(img_size // patch_size, img_size // patch_size),\n            )\n            self.blocks.append(block)\n\n        self.neck = nn.Sequential(\n            nn.Conv2d(\n                embed_dim,\n                out_chans,\n                kernel_size=1,\n                bias=False,\n            ),\n            LayerNorm2d(out_chans),\n            nn.Conv2d(\n                out_chans,\n                out_chans,\n                kernel_size=3,\n                padding=1,\n                bias=False,\n            ),\n            LayerNorm2d(out_chans),\n        )\n\n    def forward(self, x: torch.Tensor) -> torch.Tensor:\n        x = self.patch_embed(x)\n        if self.pos_embed is not None:\n            x = x + self.pos_embed\n\n        for blk in self.blocks:\n            x = blk(x)\n\n        x = self.neck(x.permute(0, 3, 1, 2))\n\n        return x\n\n\nclass Block(nn.Module):\n    \"\"\"Transformer blocks with support of window attention and residual propagation blocks\"\"\"\n\n    def __init__(\n        self,\n        dim: int,\n        num_heads: int,\n        mlp_ratio: float = 4.0,\n        qkv_bias: bool = True,\n        norm_layer: Type[nn.Module] = nn.LayerNorm,\n        act_layer: Type[nn.Module] = nn.GELU,\n        use_rel_pos: bool = False,\n        rel_pos_zero_init: bool = True,\n        window_size: int = 0,\n        input_size: Optional[Tuple[int, int]] = None,\n    ) -> None:\n        \"\"\"\n        Args:\n            dim (int): Number of input channels.\n            num_heads (int): Number of attention heads in each ViT block.\n            mlp_ratio (float): Ratio of mlp hidden dim to embedding dim.\n            qkv_bias (bool): If True, add a learnable bias to query, key, value.\n            norm_layer (nn.Module): Normalization layer.\n            act_layer (nn.Module): Activation layer.\n            use_rel_pos (bool): If True, add relative positional embeddings to the attention map.\n            rel_pos_zero_init (bool): If True, zero initialize relative positional parameters.\n            window_size (int): Window size for window attention blocks. If it equals 0, then\n                use global attention.\n            input_size (tuple(int, int) or None): Input resolution for calculating the relative\n                positional parameter size.\n        \"\"\"\n        super().__init__()\n        self.norm1 = norm_layer(dim)\n        self.attn = Attention(\n            dim,\n            num_heads=num_heads,\n            qkv_bias=qkv_bias,\n            use_rel_pos=use_rel_pos,\n            rel_pos_zero_init=rel_pos_zero_init,\n            input_size=input_size if window_size == 0 else (window_size, window_size),\n        )\n\n        self.norm2 = norm_layer(dim)\n        self.mlp = MLPBlock(embedding_dim=dim, mlp_dim=int(dim * mlp_ratio), act=act_layer)\n\n        self.window_size = window_size\n\n    def forward(self, x: torch.Tensor) -> torch.Tensor:\n        shortcut = x\n        x = self.norm1(x)\n        # Window partition\n        if self.window_size > 0:\n            H, W = x.shape[1], x.shape[2]\n            x, pad_hw = window_partition(x, self.window_size)\n\n        x = self.attn(x)\n        # Reverse window partition\n        if self.window_size > 0:\n            x = window_unpartition(x, self.window_size, pad_hw, (H, W))\n\n        x = shortcut + x\n        x = x + self.mlp(self.norm2(x))\n\n        return x\n\n\nclass Attention(nn.Module):\n    \"\"\"Multi-head Attention block with relative position embeddings.\"\"\"\n\n    def __init__(\n        self,\n        dim: int,\n        num_heads: int = 8,\n        qkv_bias: bool = True,\n        use_rel_pos: bool = False,\n        rel_pos_zero_init: bool = True,\n        input_size: Optional[Tuple[int, int]] = None,\n    ) -> None:\n        \"\"\"\n        Args:\n            dim (int): Number of input channels.\n            num_heads (int): Number of attention heads.\n            qkv_bias (bool):  If True, add a learnable bias to query, key, value.\n            rel_pos (bool): If True, add relative positional embeddings to the attention map.\n            rel_pos_zero_init (bool): If True, zero initialize relative positional parameters.\n            input_size (tuple(int, int) or None): Input resolution for calculating the relative\n                positional parameter size.\n        \"\"\"\n        super().__init__()\n        self.num_heads = num_heads\n        head_dim = dim // num_heads\n        self.scale = head_dim**-0.5\n\n        self.qkv = nn.Linear(dim, dim * 3, bias=qkv_bias)\n        self.proj = nn.Linear(dim, dim)\n\n        self.use_rel_pos = use_rel_pos\n        if self.use_rel_pos:\n            assert (\n                input_size is not None\n            ), \"Input size must be provided if using relative positional encoding.\"\n            # initialize relative positional embeddings\n            self.rel_pos_h = nn.Parameter(torch.zeros(2 * input_size[0] - 1, head_dim))\n            self.rel_pos_w = nn.Parameter(torch.zeros(2 * input_size[1] - 1, head_dim))\n\n    def forward(self, x: torch.Tensor) -> torch.Tensor:\n        B, H, W, _ = x.shape\n        # qkv with shape (3, B, nHead, H * W, C)\n        qkv = self.qkv(x).reshape(B, H * W, 3, self.num_heads, -1).permute(2, 0, 3, 1, 4)\n        # q, k, v with shape (B * nHead, H * W, C)\n        q, k, v = qkv.reshape(3, B * self.num_heads, H * W, -1).unbind(0)\n\n        attn = (q * self.scale) @ k.transpose(-2, -1)\n\n        if self.use_rel_pos:\n            attn = add_decomposed_rel_pos(attn, q, self.rel_pos_h, self.rel_pos_w, (H, W), (H, W))\n\n        attn = attn.softmax(dim=-1)\n        x = (attn @ v).view(B, self.num_heads, H, W, -1).permute(0, 2, 3, 1, 4).reshape(B, H, W, -1)\n        x = self.proj(x)\n\n        return x\n\n\ndef window_partition(x: torch.Tensor, window_size: int) -> Tuple[torch.Tensor, Tuple[int, int]]:\n    \"\"\"\n    Partition into non-overlapping windows with padding if needed.\n    Args:\n        x (tensor): input tokens with [B, H, W, C].\n        window_size (int): window size.\n\n    Returns:\n        windows: windows after partition with [B * num_windows, window_size, window_size, C].\n        (Hp, Wp): padded height and width before partition\n    \"\"\"\n    B, H, W, C = x.shape\n\n    pad_h = (window_size - H % window_size) % window_size\n    pad_w = (window_size - W % window_size) % window_size\n    if pad_h > 0 or pad_w > 0:\n        x = F.pad(x, (0, 0, 0, pad_w, 0, pad_h))\n    Hp, Wp = H + pad_h, W + pad_w\n\n    x = x.view(B, Hp // window_size, window_size, Wp // window_size, window_size, C)\n    windows = x.permute(0, 1, 3, 2, 4, 5).contiguous().view(-1, window_size, window_size, C)\n    return windows, (Hp, Wp)\n\n\ndef window_unpartition(\n    windows: torch.Tensor, window_size: int, pad_hw: Tuple[int, int], hw: Tuple[int, int]\n) -> torch.Tensor:\n    \"\"\"\n    Window unpartition into original sequences and removing padding.\n    Args:\n        windows (tensor): input tokens with [B * num_windows, window_size, window_size, C].\n        window_size (int): window size.\n        pad_hw (Tuple): padded height and width (Hp, Wp).\n        hw (Tuple): original height and width (H, W) before padding.\n\n    Returns:\n        x: unpartitioned sequences with [B, H, W, C].\n    \"\"\"\n    Hp, Wp = pad_hw\n    H, W = hw\n    B = windows.shape[0] // (Hp * Wp // window_size // window_size)\n    x = windows.view(B, Hp // window_size, Wp // window_size, window_size, window_size, -1)\n    x = x.permute(0, 1, 3, 2, 4, 5).contiguous().view(B, Hp, Wp, -1)\n\n    if Hp > H or Wp > W:\n        x = x[:, :H, :W, :].contiguous()\n    return x\n\n\ndef get_rel_pos(q_size: int, k_size: int, rel_pos: torch.Tensor) -> torch.Tensor:\n    \"\"\"\n    Get relative positional embeddings according to the relative positions of\n        query and key sizes.\n    Args:\n        q_size (int): size of query q.\n        k_size (int): size of key k.\n        rel_pos (Tensor): relative position embeddings (L, C).\n\n    Returns:\n        Extracted positional embeddings according to relative positions.\n    \"\"\"\n    max_rel_dist = int(2 * max(q_size, k_size) - 1)\n    # Interpolate rel pos if needed.\n    if rel_pos.shape[0] != max_rel_dist:\n        # Interpolate rel pos.\n        rel_pos_resized = F.interpolate(\n            rel_pos.reshape(1, rel_pos.shape[0], -1).permute(0, 2, 1),\n            size=max_rel_dist,\n            mode=\"linear\",\n        )\n        rel_pos_resized = rel_pos_resized.reshape(-1, max_rel_dist).permute(1, 0)\n    else:\n        rel_pos_resized = rel_pos\n\n    # Scale the coords with short length if shapes for q and k are different.\n    q_coords = torch.arange(q_size)[:, None] * max(k_size / q_size, 1.0)\n    k_coords = torch.arange(k_size)[None, :] * max(q_size / k_size, 1.0)\n    relative_coords = (q_coords - k_coords) + (k_size - 1) * max(q_size / k_size, 1.0)\n\n    return rel_pos_resized[relative_coords.long()]\n\n\ndef add_decomposed_rel_pos(\n    attn: torch.Tensor,\n    q: torch.Tensor,\n    rel_pos_h: torch.Tensor,\n    rel_pos_w: torch.Tensor,\n    q_size: Tuple[int, int],\n    k_size: Tuple[int, int],\n) -> torch.Tensor:\n    \"\"\"\n    Calculate decomposed Relative Positional Embeddings from :paper:`mvitv2`.\n    https://github.com/facebookresearch/mvit/blob/19786631e330df9f3622e5402b4a419a263a2c80/mvit/models/attention.py   # noqa B950\n    Args:\n        attn (Tensor): attention map.\n        q (Tensor): query q in the attention layer with shape (B, q_h * q_w, C).\n        rel_pos_h (Tensor): relative position embeddings (Lh, C) for height axis.\n        rel_pos_w (Tensor): relative position embeddings (Lw, C) for width axis.\n        q_size (Tuple): spatial sequence size of query q with (q_h, q_w).\n        k_size (Tuple): spatial sequence size of key k with (k_h, k_w).\n\n    Returns:\n        attn (Tensor): attention map with added relative positional embeddings.\n    \"\"\"\n    q_h, q_w = q_size\n    k_h, k_w = k_size\n    Rh = get_rel_pos(q_h, k_h, rel_pos_h)\n    Rw = get_rel_pos(q_w, k_w, rel_pos_w)\n\n    B, _, dim = q.shape\n    r_q = q.reshape(B, q_h, q_w, dim)\n    rel_h = torch.einsum(\"bhwc,hkc->bhwk\", r_q, Rh)\n    rel_w = torch.einsum(\"bhwc,wkc->bhwk\", r_q, Rw)\n\n    attn = (\n        attn.view(B, q_h, q_w, k_h, k_w) + rel_h[:, :, :, :, None] + rel_w[:, :, :, None, :]\n    ).view(B, q_h * q_w, k_h * k_w)\n\n    return attn\n\n\nclass PatchEmbed(nn.Module):\n    \"\"\"\n    Image to Patch Embedding.\n    \"\"\"\n\n    def __init__(\n        self,\n        kernel_size: Tuple[int, int] = (16, 16),\n        stride: Tuple[int, int] = (16, 16),\n        padding: Tuple[int, int] = (0, 0),\n        in_chans: int = 3,\n        embed_dim: int = 768,\n    ) -> None:\n        \"\"\"\n        Args:\n            kernel_size (Tuple): kernel size of the projection layer.\n            stride (Tuple): stride of the projection layer.\n            padding (Tuple): padding size of the projection layer.\n            in_chans (int): Number of input image channels.\n            embed_dim (int): Patch embedding dimension.\n        \"\"\"\n        super().__init__()\n\n        self.proj = nn.Conv2d(\n            in_chans, embed_dim, kernel_size=kernel_size, stride=stride, padding=padding\n        )\n\n    def forward(self, x: torch.Tensor) -> torch.Tensor:\n        x = self.proj(x)\n        # B C H W -> B H W C\n        x = x.permute(0, 2, 3, 1)\n        return x\n"
  },
  {
    "path": "modules/control/proc/segment_anything/modeling/mask_decoder.py",
    "content": "# Copyright (c) Meta Platforms, Inc. and affiliates.\n# All rights reserved.\n\n# This source code is licensed under the license found in the\n# LICENSE file in the root directory of this source tree.\n\nimport torch\nfrom torch import nn\nfrom torch.nn import functional as F\n\nfrom typing import List, Tuple, Type\n\nfrom .common import LayerNorm2d\n\n\nclass MaskDecoder(nn.Module):\n    def __init__(\n        self,\n        *,\n        transformer_dim: int,\n        transformer: nn.Module,\n        num_multimask_outputs: int = 3,\n        activation: Type[nn.Module] = nn.GELU,\n        iou_head_depth: int = 3,\n        iou_head_hidden_dim: int = 256,\n    ) -> None:\n        \"\"\"\n        Predicts masks given an image and prompt embeddings, using a\n        transformer architecture.\n\n        Arguments:\n          transformer_dim (int): the channel dimension of the transformer\n          transformer (nn.Module): the transformer used to predict masks\n          num_multimask_outputs (int): the number of masks to predict\n            when disambiguating masks\n          activation (nn.Module): the type of activation to use when\n            upscaling masks\n          iou_head_depth (int): the depth of the MLP used to predict\n            mask quality\n          iou_head_hidden_dim (int): the hidden dimension of the MLP\n            used to predict mask quality\n        \"\"\"\n        super().__init__()\n        self.transformer_dim = transformer_dim\n        self.transformer = transformer\n\n        self.num_multimask_outputs = num_multimask_outputs\n\n        self.iou_token = nn.Embedding(1, transformer_dim)\n        self.num_mask_tokens = num_multimask_outputs + 1\n        self.mask_tokens = nn.Embedding(self.num_mask_tokens, transformer_dim)\n\n        self.output_upscaling = nn.Sequential(\n            nn.ConvTranspose2d(transformer_dim, transformer_dim // 4, kernel_size=2, stride=2),\n            LayerNorm2d(transformer_dim // 4),\n            activation(),\n            nn.ConvTranspose2d(transformer_dim // 4, transformer_dim // 8, kernel_size=2, stride=2),\n            activation(),\n        )\n        self.output_hypernetworks_mlps = nn.ModuleList(\n            [\n                MLP(transformer_dim, transformer_dim, transformer_dim // 8, 3)\n                for i in range(self.num_mask_tokens)\n            ]\n        )\n\n        self.iou_prediction_head = MLP(\n            transformer_dim, iou_head_hidden_dim, self.num_mask_tokens, iou_head_depth\n        )\n\n    def forward(\n        self,\n        image_embeddings: torch.Tensor,\n        image_pe: torch.Tensor,\n        sparse_prompt_embeddings: torch.Tensor,\n        dense_prompt_embeddings: torch.Tensor,\n        multimask_output: bool,\n    ) -> Tuple[torch.Tensor, torch.Tensor]:\n        \"\"\"\n        Predict masks given image and prompt embeddings.\n\n        Arguments:\n          image_embeddings (torch.Tensor): the embeddings from the image encoder\n          image_pe (torch.Tensor): positional encoding with the shape of image_embeddings\n          sparse_prompt_embeddings (torch.Tensor): the embeddings of the points and boxes\n          dense_prompt_embeddings (torch.Tensor): the embeddings of the mask inputs\n          multimask_output (bool): Whether to return multiple masks or a single\n            mask.\n\n        Returns:\n          torch.Tensor: batched predicted masks\n          torch.Tensor: batched predictions of mask quality\n        \"\"\"\n        masks, iou_pred = self.predict_masks(\n            image_embeddings=image_embeddings,\n            image_pe=image_pe,\n            sparse_prompt_embeddings=sparse_prompt_embeddings,\n            dense_prompt_embeddings=dense_prompt_embeddings,\n        )\n\n        # Select the correct mask or masks for output\n        if multimask_output:\n            mask_slice = slice(1, None)\n        else:\n            mask_slice = slice(0, 1)\n        masks = masks[:, mask_slice, :, :]\n        iou_pred = iou_pred[:, mask_slice]\n\n        # Prepare output\n        return masks, iou_pred\n\n    def predict_masks(\n        self,\n        image_embeddings: torch.Tensor,\n        image_pe: torch.Tensor,\n        sparse_prompt_embeddings: torch.Tensor,\n        dense_prompt_embeddings: torch.Tensor,\n    ) -> Tuple[torch.Tensor, torch.Tensor]:\n        \"\"\"Predicts masks. See 'forward' for more details.\"\"\"\n        # Concatenate output tokens\n        output_tokens = torch.cat([self.iou_token.weight, self.mask_tokens.weight], dim=0)\n        output_tokens = output_tokens.unsqueeze(0).expand(sparse_prompt_embeddings.size(0), -1, -1)\n        tokens = torch.cat((output_tokens, sparse_prompt_embeddings), dim=1)\n\n        # Expand per-image data in batch direction to be per-mask\n        src = torch.repeat_interleave(image_embeddings, tokens.shape[0], dim=0)\n        src = src + dense_prompt_embeddings\n        pos_src = torch.repeat_interleave(image_pe, tokens.shape[0], dim=0)\n        b, c, h, w = src.shape\n\n        # Run the transformer\n        hs, src = self.transformer(src, pos_src, tokens)\n        iou_token_out = hs[:, 0, :]\n        mask_tokens_out = hs[:, 1 : (1 + self.num_mask_tokens), :]\n\n        # Upscale mask embeddings and predict masks using the mask tokens\n        src = src.transpose(1, 2).view(b, c, h, w)\n        upscaled_embedding = self.output_upscaling(src)\n        hyper_in_list: List[torch.Tensor] = []\n        for i in range(self.num_mask_tokens):\n            hyper_in_list.append(self.output_hypernetworks_mlps[i](mask_tokens_out[:, i, :]))\n        hyper_in = torch.stack(hyper_in_list, dim=1)\n        b, c, h, w = upscaled_embedding.shape\n        masks = (hyper_in @ upscaled_embedding.view(b, c, h * w)).view(b, -1, h, w)\n\n        # Generate mask quality predictions\n        iou_pred = self.iou_prediction_head(iou_token_out)\n\n        return masks, iou_pred\n\n\n# Lightly adapted from\n# https://github.com/facebookresearch/MaskFormer/blob/main/mask_former/modeling/transformer/transformer_predictor.py\nclass MLP(nn.Module):\n    def __init__(\n        self,\n        input_dim: int,\n        hidden_dim: int,\n        output_dim: int,\n        num_layers: int,\n        sigmoid_output: bool = False,\n    ) -> None:\n        super().__init__()\n        self.num_layers = num_layers\n        h = [hidden_dim] * (num_layers - 1)\n        self.layers = nn.ModuleList(\n            nn.Linear(n, k) for n, k in zip([input_dim] + h, h + [output_dim])\n        )\n        self.sigmoid_output = sigmoid_output\n\n    def forward(self, x):\n        for i, layer in enumerate(self.layers):\n            x = F.relu(layer(x)) if i < self.num_layers - 1 else layer(x)\n        if self.sigmoid_output:\n            x = F.sigmoid(x)\n        return x\n"
  },
  {
    "path": "modules/control/proc/segment_anything/modeling/prompt_encoder.py",
    "content": "# Copyright (c) Meta Platforms, Inc. and affiliates.\n# All rights reserved.\n\n# This source code is licensed under the license found in the\n# LICENSE file in the root directory of this source tree.\n\nimport numpy as np\nimport torch\nfrom torch import nn\n\nfrom typing import Any, Optional, Tuple, Type\n\nfrom .common import LayerNorm2d\n\n\nclass PromptEncoder(nn.Module):\n    def __init__(\n        self,\n        embed_dim: int,\n        image_embedding_size: Tuple[int, int],\n        input_image_size: Tuple[int, int],\n        mask_in_chans: int,\n        activation: Type[nn.Module] = nn.GELU,\n    ) -> None:\n        \"\"\"\n        Encodes prompts for input to SAM's mask decoder.\n\n        Arguments:\n          embed_dim (int): The prompts' embedding dimension\n          image_embedding_size (tuple(int, int)): The spatial size of the\n            image embedding, as (H, W).\n          input_image_size (int): The padded size of the image as input\n            to the image encoder, as (H, W).\n          mask_in_chans (int): The number of hidden channels used for\n            encoding input masks.\n          activation (nn.Module): The activation to use when encoding\n            input masks.\n        \"\"\"\n        super().__init__()\n        self.embed_dim = embed_dim\n        self.input_image_size = input_image_size\n        self.image_embedding_size = image_embedding_size\n        self.pe_layer = PositionEmbeddingRandom(embed_dim // 2)\n\n        self.num_point_embeddings: int = 4  # pos/neg point + 2 box corners\n        point_embeddings = [nn.Embedding(1, embed_dim) for i in range(self.num_point_embeddings)]\n        self.point_embeddings = nn.ModuleList(point_embeddings)\n        self.not_a_point_embed = nn.Embedding(1, embed_dim)\n\n        self.mask_input_size = (4 * image_embedding_size[0], 4 * image_embedding_size[1])\n        self.mask_downscaling = nn.Sequential(\n            nn.Conv2d(1, mask_in_chans // 4, kernel_size=2, stride=2),\n            LayerNorm2d(mask_in_chans // 4),\n            activation(),\n            nn.Conv2d(mask_in_chans // 4, mask_in_chans, kernel_size=2, stride=2),\n            LayerNorm2d(mask_in_chans),\n            activation(),\n            nn.Conv2d(mask_in_chans, embed_dim, kernel_size=1),\n        )\n        self.no_mask_embed = nn.Embedding(1, embed_dim)\n\n    def get_dense_pe(self) -> torch.Tensor:\n        \"\"\"\n        Returns the positional encoding used to encode point prompts,\n        applied to a dense set of points the shape of the image encoding.\n\n        Returns:\n          torch.Tensor: Positional encoding with shape\n            1x(embed_dim)x(embedding_h)x(embedding_w)\n        \"\"\"\n        return self.pe_layer(self.image_embedding_size).unsqueeze(0)\n\n    def _embed_points(\n        self,\n        points: torch.Tensor,\n        labels: torch.Tensor,\n        pad: bool,\n    ) -> torch.Tensor:\n        \"\"\"Embeds point prompts.\"\"\"\n        points = points + 0.5  # Shift to center of pixel\n        if pad:\n            padding_point = torch.zeros((points.shape[0], 1, 2), device=points.device)\n            padding_label = -torch.ones((labels.shape[0], 1), device=labels.device)\n            points = torch.cat([points, padding_point], dim=1)\n            labels = torch.cat([labels, padding_label], dim=1)\n        point_embedding = self.pe_layer.forward_with_coords(points, self.input_image_size)\n        point_embedding[labels == -1] = 0.0\n        point_embedding[labels == -1] += self.not_a_point_embed.weight\n        point_embedding[labels == 0] += self.point_embeddings[0].weight\n        point_embedding[labels == 1] += self.point_embeddings[1].weight\n        return point_embedding\n\n    def _embed_boxes(self, boxes: torch.Tensor) -> torch.Tensor:\n        \"\"\"Embeds box prompts.\"\"\"\n        boxes = boxes + 0.5  # Shift to center of pixel\n        coords = boxes.reshape(-1, 2, 2)\n        corner_embedding = self.pe_layer.forward_with_coords(coords, self.input_image_size)\n        corner_embedding[:, 0, :] += self.point_embeddings[2].weight\n        corner_embedding[:, 1, :] += self.point_embeddings[3].weight\n        return corner_embedding\n\n    def _embed_masks(self, masks: torch.Tensor) -> torch.Tensor:\n        \"\"\"Embeds mask inputs.\"\"\"\n        mask_embedding = self.mask_downscaling(masks)\n        return mask_embedding\n\n    def _get_batch_size(\n        self,\n        points: Optional[Tuple[torch.Tensor, torch.Tensor]],\n        boxes: Optional[torch.Tensor],\n        masks: Optional[torch.Tensor],\n    ) -> int:\n        \"\"\"\n        Gets the batch size of the output given the batch size of the input prompts.\n        \"\"\"\n        if points is not None:\n            return points[0].shape[0]\n        elif boxes is not None:\n            return boxes.shape[0]\n        elif masks is not None:\n            return masks.shape[0]\n        else:\n            return 1\n\n    def _get_device(self) -> torch.device:\n        return self.point_embeddings[0].weight.device\n\n    def forward(\n        self,\n        points: Optional[Tuple[torch.Tensor, torch.Tensor]],\n        boxes: Optional[torch.Tensor],\n        masks: Optional[torch.Tensor],\n    ) -> Tuple[torch.Tensor, torch.Tensor]:\n        \"\"\"\n        Embeds different types of prompts, returning both sparse and dense\n        embeddings.\n\n        Arguments:\n          points (tuple(torch.Tensor, torch.Tensor) or none): point coordinates\n            and labels to embed.\n          boxes (torch.Tensor or none): boxes to embed\n          masks (torch.Tensor or none): masks to embed\n\n        Returns:\n          torch.Tensor: sparse embeddings for the points and boxes, with shape\n            BxNx(embed_dim), where N is determined by the number of input points\n            and boxes.\n          torch.Tensor: dense embeddings for the masks, in the shape\n            Bx(embed_dim)x(embed_H)x(embed_W)\n        \"\"\"\n        bs = self._get_batch_size(points, boxes, masks)\n        sparse_embeddings = torch.empty((bs, 0, self.embed_dim), device=self._get_device())\n        if points is not None:\n            coords, labels = points\n            point_embeddings = self._embed_points(coords, labels, pad=(boxes is None))\n            sparse_embeddings = torch.cat([sparse_embeddings, point_embeddings], dim=1)\n        if boxes is not None:\n            box_embeddings = self._embed_boxes(boxes)\n            sparse_embeddings = torch.cat([sparse_embeddings, box_embeddings], dim=1)\n\n        if masks is not None:\n            dense_embeddings = self._embed_masks(masks)\n        else:\n            dense_embeddings = self.no_mask_embed.weight.reshape(1, -1, 1, 1).expand(\n                bs, -1, self.image_embedding_size[0], self.image_embedding_size[1]\n            )\n\n        return sparse_embeddings, dense_embeddings\n\n\nclass PositionEmbeddingRandom(nn.Module):\n    \"\"\"\n    Positional encoding using random spatial frequencies.\n    \"\"\"\n\n    def __init__(self, num_pos_feats: int = 64, scale: Optional[float] = None) -> None:\n        super().__init__()\n        if scale is None or scale <= 0.0:\n            scale = 1.0\n        self.register_buffer(\n            \"positional_encoding_gaussian_matrix\",\n            scale * torch.randn((2, num_pos_feats)),\n        )\n\n    def _pe_encoding(self, coords: torch.Tensor) -> torch.Tensor:\n        \"\"\"Positionally encode points that are normalized to [0,1].\"\"\"\n        # assuming coords are in [0, 1]^2 square and have d_1 x ... x d_n x 2 shape\n        coords = 2 * coords - 1\n        coords = coords @ self.positional_encoding_gaussian_matrix\n        coords = 2 * np.pi * coords\n        # outputs d_1 x ... x d_n x C shape\n        return torch.cat([torch.sin(coords), torch.cos(coords)], dim=-1)\n\n    def forward(self, size: Tuple[int, int]) -> torch.Tensor:\n        \"\"\"Generate positional encoding for a grid of the specified size.\"\"\"\n        h, w = size\n        device: Any = self.positional_encoding_gaussian_matrix.device\n        grid = torch.ones((h, w), device=device, dtype=torch.float32)\n        y_embed = grid.cumsum(dim=0) - 0.5\n        x_embed = grid.cumsum(dim=1) - 0.5\n        y_embed = y_embed / h\n        x_embed = x_embed / w\n\n        pe = self._pe_encoding(torch.stack([x_embed, y_embed], dim=-1))\n        return pe.permute(2, 0, 1)  # C x H x W\n\n    def forward_with_coords(\n        self, coords_input: torch.Tensor, image_size: Tuple[int, int]\n    ) -> torch.Tensor:\n        \"\"\"Positionally encode points that are not normalized to [0,1].\"\"\"\n        coords = coords_input.clone()\n        coords[:, :, 0] = coords[:, :, 0] / image_size[1]\n        coords[:, :, 1] = coords[:, :, 1] / image_size[0]\n        return self._pe_encoding(coords.to(torch.float))  # B x N x C\n"
  },
  {
    "path": "modules/control/proc/segment_anything/modeling/sam.py",
    "content": "# Copyright (c) Meta Platforms, Inc. and affiliates.\n# All rights reserved.\n\n# This source code is licensed under the license found in the\n# LICENSE file in the root directory of this source tree.\n\nimport torch\nfrom torch import nn\nfrom torch.nn import functional as F\n\nfrom typing import Any, Dict, List, Tuple, Union\n\nfrom .tiny_vit_sam import TinyViT\nfrom .image_encoder import ImageEncoderViT\nfrom .mask_decoder import MaskDecoder\nfrom .prompt_encoder import PromptEncoder\n\n\nclass Sam(nn.Module):\n    mask_threshold: float = 0.0\n    image_format: str = \"RGB\"\n\n    def __init__(\n        self,\n        image_encoder: Union[ImageEncoderViT, TinyViT],\n        prompt_encoder: PromptEncoder,\n        mask_decoder: MaskDecoder,\n        pixel_mean: List[float] = None,\n        pixel_std: List[float] = None,\n    ) -> None:\n        \"\"\"\n        SAM predicts object masks from an image and input prompts.\n\n        Arguments:\n          image_encoder (ImageEncoderViT): The backbone used to encode the\n            image into image embeddings that allow for efficient mask prediction.\n          prompt_encoder (PromptEncoder): Encodes various types of input prompts.\n          mask_decoder (MaskDecoder): Predicts masks from the image embeddings\n            and encoded prompts.\n          pixel_mean (list(float)): Mean values for normalizing pixels in the input image.\n          pixel_std (list(float)): Std values for normalizing pixels in the input image.\n        \"\"\"\n        if pixel_std is None:\n            pixel_std = [58.395, 57.12, 57.375]\n        if pixel_mean is None:\n            pixel_mean = [123.675, 116.28, 103.53]\n        super().__init__()\n        self.image_encoder = image_encoder\n        self.prompt_encoder = prompt_encoder\n        self.mask_decoder = mask_decoder\n        self.register_buffer(\"pixel_mean\", torch.Tensor(pixel_mean).view(-1, 1, 1), False)\n        self.register_buffer(\"pixel_std\", torch.Tensor(pixel_std).view(-1, 1, 1), False)\n\n    @property\n    def device(self) -> Any:\n        return self.pixel_mean.device\n\n    def forward(\n        self,\n        batched_input: List[Dict[str, Any]],\n        multimask_output: bool,\n    ) -> List[Dict[str, torch.Tensor]]:\n        \"\"\"\n        Predicts masks end-to-end from provided images and prompts.\n        If prompts are not known in advance, using SamPredictor is\n        recommended over calling the model directly.\n\n        Arguments:\n          batched_input (list(dict)): A list over input images, each a\n            dictionary with the following keys. A prompt key can be\n            excluded if it is not present.\n              'image': The image as a torch tensor in 3xHxW format,\n                already transformed for input to the model.\n              'original_size': (tuple(int, int)) The original size of\n                the image before transformation, as (H, W).\n              'point_coords': (torch.Tensor) Batched point prompts for\n                this image, with shape BxNx2. Already transformed to the\n                input frame of the model.\n              'point_labels': (torch.Tensor) Batched labels for point prompts,\n                with shape BxN.\n              'boxes': (torch.Tensor) Batched box inputs, with shape Bx4.\n                Already transformed to the input frame of the model.\n              'mask_inputs': (torch.Tensor) Batched mask inputs to the model,\n                in the form Bx1xHxW.\n          multimask_output (bool): Whether the model should predict multiple\n            disambiguating masks, or return a single mask.\n\n        Returns:\n          (list(dict)): A list over input images, where each element is\n            as dictionary with the following keys.\n              'masks': (torch.Tensor) Batched binary mask predictions,\n                with shape BxCxHxW, where B is the number of input prompts,\n                C is determined by multimask_output, and (H, W) is the\n                original size of the image.\n              'iou_predictions': (torch.Tensor) The model's predictions\n                of mask quality, in shape BxC.\n              'low_res_logits': (torch.Tensor) Low resolution logits with\n                shape BxCxHxW, where H=W=256. Can be passed as mask input\n                to subsequent iterations of prediction.\n        \"\"\"\n        input_images = torch.stack([self.preprocess(x[\"image\"]) for x in batched_input], dim=0)\n        image_embeddings = self.image_encoder(input_images)\n\n        outputs = []\n        for image_record, curr_embedding in zip(batched_input, image_embeddings):\n            if \"point_coords\" in image_record:\n                points = (image_record[\"point_coords\"], image_record[\"point_labels\"])\n            else:\n                points = None\n            sparse_embeddings, dense_embeddings = self.prompt_encoder(\n                points=points,\n                boxes=image_record.get(\"boxes\", None),\n                masks=image_record.get(\"mask_inputs\", None),\n            )\n            low_res_masks, iou_predictions = self.mask_decoder(\n                image_embeddings=curr_embedding.unsqueeze(0),\n                image_pe=self.prompt_encoder.get_dense_pe(),\n                sparse_prompt_embeddings=sparse_embeddings,\n                dense_prompt_embeddings=dense_embeddings,\n                multimask_output=multimask_output,\n            )\n            masks = self.postprocess_masks(\n                low_res_masks,\n                input_size=image_record[\"image\"].shape[-2:],\n                original_size=image_record[\"original_size\"],\n            )\n            masks = masks > self.mask_threshold\n            outputs.append(\n                {\n                    \"masks\": masks,\n                    \"iou_predictions\": iou_predictions,\n                    \"low_res_logits\": low_res_masks,\n                }\n            )\n        return outputs\n\n    def postprocess_masks(\n        self,\n        masks: torch.Tensor,\n        input_size: Tuple[int, ...],\n        original_size: Tuple[int, ...],\n    ) -> torch.Tensor:\n        \"\"\"\n        Remove padding and upscale masks to the original image size.\n\n        Arguments:\n          masks (torch.Tensor): Batched masks from the mask_decoder,\n            in BxCxHxW format.\n          input_size (tuple(int, int)): The size of the image input to the\n            model, in (H, W) format. Used to remove padding.\n          original_size (tuple(int, int)): The original size of the image\n            before resizing for input to the model, in (H, W) format.\n\n        Returns:\n          (torch.Tensor): Batched masks in BxCxHxW format, where (H, W)\n            is given by original_size.\n        \"\"\"\n        masks = F.interpolate(\n            masks,\n            (self.image_encoder.img_size, self.image_encoder.img_size),\n            mode=\"bilinear\",\n            align_corners=False,\n        )\n        masks = masks[..., : input_size[0], : input_size[1]]\n        masks = F.interpolate(masks, original_size, mode=\"bilinear\", align_corners=False)\n        return masks\n\n    def preprocess(self, x: torch.Tensor) -> torch.Tensor:\n        \"\"\"Normalize pixel values and pad to a square input.\"\"\"\n        # Normalize colors\n        x = (x - self.pixel_mean) / self.pixel_std\n\n        # Pad\n        h, w = x.shape[-2:]\n        padh = self.image_encoder.img_size - h\n        padw = self.image_encoder.img_size - w\n        x = F.pad(x, (0, padw, 0, padh))\n        return x\n"
  },
  {
    "path": "modules/control/proc/segment_anything/modeling/tiny_vit_sam.py",
    "content": "# --------------------------------------------------------\n# TinyViT Model Architecture\n# Copyright (c) 2022 Microsoft\n# Adapted from LeViT and Swin Transformer\n#   LeViT: (https://github.com/facebookresearch/levit)\n#   Swin: (https://github.com/microsoft/swin-transformer)\n# Build the TinyViT Model\n# --------------------------------------------------------\n\nimport itertools\nimport torch\nimport torch.nn as nn\nimport torch.nn.functional as F\nimport torch.utils.checkpoint as checkpoint\nfrom timm.models.layers import DropPath as TimmDropPath,\\\n    to_2tuple, trunc_normal_\nfrom timm.models.registry import register_model\nfrom typing import Tuple\n\n\nclass Conv2d_BN(torch.nn.Sequential):\n    def __init__(self, a, b, ks=1, stride=1, pad=0, dilation=1,\n                 groups=1, bn_weight_init=1):\n        super().__init__()\n        self.add_module('c', torch.nn.Conv2d(\n            a, b, ks, stride, pad, dilation, groups, bias=False))\n        bn = torch.nn.BatchNorm2d(b)\n        torch.nn.init.constant_(bn.weight, bn_weight_init)\n        torch.nn.init.constant_(bn.bias, 0)\n        self.add_module('bn', bn)\n\n    def fuse(self):\n        c, bn = self._modules.values()\n        w = bn.weight / (bn.running_var + bn.eps)**0.5\n        w = c.weight * w[:, None, None, None]\n        b = bn.bias - bn.running_mean * bn.weight / \\\n            (bn.running_var + bn.eps)**0.5\n        m = torch.nn.Conv2d(w.size(1) * self.c.groups, w.size(\n            0), w.shape[2:], stride=self.c.stride, padding=self.c.padding, dilation=self.c.dilation, groups=self.c.groups)\n        m.weight.data.copy_(w)\n        m.bias.data.copy_(b)\n        return m\n\n\nclass DropPath(TimmDropPath):\n    def __init__(self, drop_prob=None):\n        super().__init__(drop_prob=drop_prob)\n        self.drop_prob = drop_prob\n\n    def __repr__(self):\n        msg = super().__repr__()\n        msg += f'(drop_prob={self.drop_prob})'\n        return msg\n\n\nclass PatchEmbed(nn.Module):\n    def __init__(self, in_chans, embed_dim, resolution, activation):\n        super().__init__()\n        img_size: Tuple[int, int] = to_2tuple(resolution)\n        self.patches_resolution = (img_size[0] // 4, img_size[1] // 4)\n        self.num_patches = self.patches_resolution[0] * \\\n            self.patches_resolution[1]\n        self.in_chans = in_chans\n        self.embed_dim = embed_dim\n        n = embed_dim\n        self.seq = nn.Sequential(\n            Conv2d_BN(in_chans, n // 2, 3, 2, 1),\n            activation(),\n            Conv2d_BN(n // 2, n, 3, 2, 1),\n        )\n\n    def forward(self, x):\n        return self.seq(x)\n\n\nclass MBConv(nn.Module):\n    def __init__(self, in_chans, out_chans, expand_ratio,\n                 activation, drop_path):\n        super().__init__()\n        self.in_chans = in_chans\n        self.hidden_chans = int(in_chans * expand_ratio)\n        self.out_chans = out_chans\n\n        self.conv1 = Conv2d_BN(in_chans, self.hidden_chans, ks=1)\n        self.act1 = activation()\n\n        self.conv2 = Conv2d_BN(self.hidden_chans, self.hidden_chans,\n                               ks=3, stride=1, pad=1, groups=self.hidden_chans)\n        self.act2 = activation()\n\n        self.conv3 = Conv2d_BN(\n            self.hidden_chans, out_chans, ks=1, bn_weight_init=0.0)\n        self.act3 = activation()\n\n        self.drop_path = DropPath(\n            drop_path) if drop_path > 0. else nn.Identity()\n\n    def forward(self, x):\n        shortcut = x\n\n        x = self.conv1(x)\n        x = self.act1(x)\n\n        x = self.conv2(x)\n        x = self.act2(x)\n\n        x = self.conv3(x)\n\n        x = self.drop_path(x)\n\n        x += shortcut\n        x = self.act3(x)\n\n        return x\n\n\nclass PatchMerging(nn.Module):\n    def __init__(self, input_resolution, dim, out_dim, activation):\n        super().__init__()\n\n        self.input_resolution = input_resolution\n        self.dim = dim\n        self.out_dim = out_dim\n        self.act = activation()\n        self.conv1 = Conv2d_BN(dim, out_dim, 1, 1, 0)\n        stride_c=2\n        if(out_dim==320 or out_dim==448 or out_dim==576):\n            stride_c=1\n        self.conv2 = Conv2d_BN(out_dim, out_dim, 3, stride_c, 1, groups=out_dim)\n        self.conv3 = Conv2d_BN(out_dim, out_dim, 1, 1, 0)\n\n    def forward(self, x):\n        if x.ndim == 3:\n            H, W = self.input_resolution\n            B = len(x)\n            # (B, C, H, W)\n            x = x.view(B, H, W, -1).permute(0, 3, 1, 2)\n\n        x = self.conv1(x)\n        x = self.act(x)\n\n        x = self.conv2(x)\n        x = self.act(x)\n        x = self.conv3(x)\n        x = x.flatten(2).transpose(1, 2)\n        return x\n\n\nclass ConvLayer(nn.Module):\n    def __init__(self, dim, input_resolution, depth,\n                 activation,\n                 drop_path=0., downsample=None, use_checkpoint=False,\n                 out_dim=None,\n                 conv_expand_ratio=4.,\n                 ):\n\n        super().__init__()\n        self.dim = dim\n        self.input_resolution = input_resolution\n        self.depth = depth\n        self.use_checkpoint = use_checkpoint\n\n        # build blocks\n        self.blocks = nn.ModuleList([\n            MBConv(dim, dim, conv_expand_ratio, activation,\n                   drop_path[i] if isinstance(drop_path, list) else drop_path,\n                   )\n            for i in range(depth)])\n\n        # patch merging layer\n        if downsample is not None:\n            self.downsample = downsample(\n                input_resolution, dim=dim, out_dim=out_dim, activation=activation)\n        else:\n            self.downsample = None\n\n    def forward(self, x):\n        for blk in self.blocks:\n            if self.use_checkpoint:\n                x = checkpoint.checkpoint(blk, x)\n            else:\n                x = blk(x)\n        if self.downsample is not None:\n            x = self.downsample(x)\n        return x\n\n\nclass Mlp(nn.Module):\n    def __init__(self, in_features, hidden_features=None,\n                 out_features=None, act_layer=nn.GELU, drop=0.):\n        super().__init__()\n        out_features = out_features or in_features\n        hidden_features = hidden_features or in_features\n        self.norm = nn.LayerNorm(in_features)\n        self.fc1 = nn.Linear(in_features, hidden_features)\n        self.fc2 = nn.Linear(hidden_features, out_features)\n        self.act = act_layer()\n        self.drop = nn.Dropout(drop)\n\n    def forward(self, x):\n        x = self.norm(x)\n\n        x = self.fc1(x)\n        x = self.act(x)\n        x = self.drop(x)\n        x = self.fc2(x)\n        x = self.drop(x)\n        return x\n\n\nclass Attention(torch.nn.Module):\n    def __init__(self, dim, key_dim, num_heads=8,\n                 attn_ratio=4,\n                 resolution=(14, 14),\n                 ):\n        super().__init__()\n        # (h, w)\n        assert isinstance(resolution, tuple) and len(resolution) == 2\n        self.num_heads = num_heads\n        self.scale = key_dim ** -0.5\n        self.key_dim = key_dim\n        self.nh_kd = nh_kd = key_dim * num_heads\n        self.d = int(attn_ratio * key_dim)\n        self.dh = int(attn_ratio * key_dim) * num_heads\n        self.attn_ratio = attn_ratio\n        h = self.dh + nh_kd * 2\n\n        self.norm = nn.LayerNorm(dim)\n        self.qkv = nn.Linear(dim, h)\n        self.proj = nn.Linear(self.dh, dim)\n\n        points = list(itertools.product(\n            range(resolution[0]), range(resolution[1])))\n        N = len(points)\n        attention_offsets = {}\n        idxs = []\n        for p1 in points:\n            for p2 in points:\n                offset = (abs(p1[0] - p2[0]), abs(p1[1] - p2[1]))\n                if offset not in attention_offsets:\n                    attention_offsets[offset] = len(attention_offsets)\n                idxs.append(attention_offsets[offset])\n        self.attention_biases = torch.nn.Parameter(\n            torch.zeros(num_heads, len(attention_offsets)))\n        self.register_buffer('attention_bias_idxs',\n                             torch.LongTensor(idxs).view(N, N),\n                             persistent=False)\n\n    def train(self, mode=True):\n        super().train(mode)\n        if mode and hasattr(self, 'ab'):\n            del self.ab\n        else:\n            self.ab = self.attention_biases[:, self.attention_bias_idxs]\n\n    def forward(self, x):  # x (B,N,C)\n        B, N, _ = x.shape\n\n        # Normalization\n        x = self.norm(x)\n\n        qkv = self.qkv(x)\n        # (B, N, num_heads, d)\n        q, k, v = qkv.view(B, N, self.num_heads, -\n                           1).split([self.key_dim, self.key_dim, self.d], dim=3)\n        # (B, num_heads, N, d)\n        q = q.permute(0, 2, 1, 3)\n        k = k.permute(0, 2, 1, 3)\n        v = v.permute(0, 2, 1, 3)\n\n        attn = (\n            (q @ k.transpose(-2, -1)) * self.scale\n            +\n            (self.attention_biases[:, self.attention_bias_idxs]\n             if self.training else self.ab)\n        )\n        attn = attn.softmax(dim=-1)\n        x = (attn @ v).transpose(1, 2).reshape(B, N, self.dh)\n        x = self.proj(x)\n        return x\n\n\nclass TinyViTBlock(nn.Module):\n    r\"\"\" TinyViT Block.\n\n    Args:\n        dim (int): Number of input channels.\n        input_resolution (tuple[int, int]): Input resulotion.\n        num_heads (int): Number of attention heads.\n        window_size (int): Window size.\n        mlp_ratio (float): Ratio of mlp hidden dim to embedding dim.\n        drop (float, optional): Dropout rate. Default: 0.0\n        drop_path (float, optional): Stochastic depth rate. Default: 0.0\n        local_conv_size (int): the kernel size of the convolution between\n                               Attention and MLP. Default: 3\n        activation: the activation function. Default: nn.GELU\n    \"\"\"\n\n    def __init__(self, dim, input_resolution, num_heads, window_size=7,\n                 mlp_ratio=4., drop=0., drop_path=0.,\n                 local_conv_size=3,\n                 activation=nn.GELU,\n                 ):\n        super().__init__()\n        self.dim = dim\n        self.input_resolution = input_resolution\n        self.num_heads = num_heads\n        assert window_size > 0, 'window_size must be greater than 0'\n        self.window_size = window_size\n        self.mlp_ratio = mlp_ratio\n\n        self.drop_path = DropPath(\n            drop_path) if drop_path > 0. else nn.Identity()\n\n        assert dim % num_heads == 0, 'dim must be divisible by num_heads'\n        head_dim = dim // num_heads\n\n        window_resolution = (window_size, window_size)\n        self.attn = Attention(dim, head_dim, num_heads,\n                              attn_ratio=1, resolution=window_resolution)\n\n        mlp_hidden_dim = int(dim * mlp_ratio)\n        mlp_activation = activation\n        self.mlp = Mlp(in_features=dim, hidden_features=mlp_hidden_dim,\n                       act_layer=mlp_activation, drop=drop)\n\n        pad = local_conv_size // 2\n        self.local_conv = Conv2d_BN(\n            dim, dim, ks=local_conv_size, stride=1, pad=pad, groups=dim)\n\n    def forward(self, x):\n        H, W = self.input_resolution\n        B, L, C = x.shape\n        assert L == H * W, \"input feature has wrong size\"\n        res_x = x\n        if H == self.window_size and W == self.window_size:\n            x = self.attn(x)\n        else:\n            x = x.view(B, H, W, C)\n            pad_b = (self.window_size - H %\n                     self.window_size) % self.window_size\n            pad_r = (self.window_size - W %\n                     self.window_size) % self.window_size\n            padding = pad_b > 0 or pad_r > 0\n\n            if padding:\n                x = F.pad(x, (0, 0, 0, pad_r, 0, pad_b))\n\n            pH, pW = H + pad_b, W + pad_r\n            nH = pH // self.window_size\n            nW = pW // self.window_size\n            # window partition\n            x = x.view(B, nH, self.window_size, nW, self.window_size, C).transpose(2, 3).reshape(\n                B * nH * nW, self.window_size * self.window_size, C)\n            x = self.attn(x)\n            # window reverse\n            x = x.view(B, nH, nW, self.window_size, self.window_size,\n                       C).transpose(2, 3).reshape(B, pH, pW, C)\n\n            if padding:\n                x = x[:, :H, :W].contiguous()\n\n            x = x.view(B, L, C)\n\n        x = res_x + self.drop_path(x)\n\n        x = x.transpose(1, 2).reshape(B, C, H, W)\n        x = self.local_conv(x)\n        x = x.view(B, C, L).transpose(1, 2)\n\n        x = x + self.drop_path(self.mlp(x))\n        return x\n\n    def extra_repr(self) -> str:\n        return f\"dim={self.dim}, input_resolution={self.input_resolution}, num_heads={self.num_heads}, window_size={self.window_size}, mlp_ratio={self.mlp_ratio}\"\n\n\nclass BasicLayer(nn.Module):\n    \"\"\" A basic TinyViT layer for one stage.\n\n    Args:\n        dim (int): Number of input channels.\n        input_resolution (tuple[int]): Input resolution.\n        depth (int): Number of blocks.\n        num_heads (int): Number of attention heads.\n        window_size (int): Local window size.\n        mlp_ratio (float): Ratio of mlp hidden dim to embedding dim.\n        drop (float, optional): Dropout rate. Default: 0.0\n        drop_path (float | tuple[float], optional): Stochastic depth rate. Default: 0.0\n        downsample (nn.Module | None, optional): Downsample layer at the end of the layer. Default: None\n        use_checkpoint (bool): Whether to use checkpointing to save memory. Default: False.\n        local_conv_size: the kernel size of the depthwise convolution between attention and MLP. Default: 3\n        activation: the activation function. Default: nn.GELU\n        out_dim: the output dimension of the layer. Default: dim\n    \"\"\"\n\n    def __init__(self, dim, input_resolution, depth, num_heads, window_size,\n                 mlp_ratio=4., drop=0.,\n                 drop_path=0., downsample=None, use_checkpoint=False,\n                 local_conv_size=3,\n                 activation=nn.GELU,\n                 out_dim=None,\n                 ):\n\n        super().__init__()\n        self.dim = dim\n        self.input_resolution = input_resolution\n        self.depth = depth\n        self.use_checkpoint = use_checkpoint\n\n        # build blocks\n        self.blocks = nn.ModuleList([\n            TinyViTBlock(dim=dim, input_resolution=input_resolution,\n                         num_heads=num_heads, window_size=window_size,\n                         mlp_ratio=mlp_ratio,\n                         drop=drop,\n                         drop_path=drop_path[i] if isinstance(\n                             drop_path, list) else drop_path,\n                         local_conv_size=local_conv_size,\n                         activation=activation,\n                         )\n            for i in range(depth)])\n\n        # patch merging layer\n        if downsample is not None:\n            self.downsample = downsample(\n                input_resolution, dim=dim, out_dim=out_dim, activation=activation)\n        else:\n            self.downsample = None\n\n    def forward(self, x):\n        for blk in self.blocks:\n            if self.use_checkpoint:\n                x = checkpoint.checkpoint(blk, x)\n            else:\n                x = blk(x)\n        if self.downsample is not None:\n            x = self.downsample(x)\n        return x\n\n    def extra_repr(self) -> str:\n        return f\"dim={self.dim}, input_resolution={self.input_resolution}, depth={self.depth}\"\n\nclass LayerNorm2d(nn.Module):\n    def __init__(self, num_channels: int, eps: float = 1e-6) -> None:\n        super().__init__()\n        self.weight = nn.Parameter(torch.ones(num_channels))\n        self.bias = nn.Parameter(torch.zeros(num_channels))\n        self.eps = eps\n\n    def forward(self, x: torch.Tensor) -> torch.Tensor:\n        u = x.mean(1, keepdim=True)\n        s = (x - u).pow(2).mean(1, keepdim=True)\n        x = (x - u) / torch.sqrt(s + self.eps)\n        x = self.weight[:, None, None] * x + self.bias[:, None, None]\n        return x\nclass TinyViT(nn.Module):\n    def __init__(self, img_size=224, in_chans=3, num_classes=1000,\n                 embed_dims=None, depths=None,\n                 num_heads=None,\n                 window_sizes=None,\n                 mlp_ratio=4.,\n                 drop_rate=0.,\n                 drop_path_rate=0.1,\n                 use_checkpoint=False,\n                 mbconv_expand_ratio=4.0,\n                 local_conv_size=3,\n                 layer_lr_decay=1.0,\n                 ):\n        if window_sizes is None:\n            window_sizes = [7, 7, 14, 7]\n        if num_heads is None:\n            num_heads = [3, 6, 12, 24]\n        if depths is None:\n            depths = [2, 2, 6, 2]\n        if embed_dims is None:\n            embed_dims = [96, 192, 384, 768]\n        super().__init__()\n        self.img_size=img_size\n        self.num_classes = num_classes\n        self.depths = depths\n        self.num_layers = len(depths)\n        self.mlp_ratio = mlp_ratio\n\n        activation = nn.GELU\n\n        self.patch_embed = PatchEmbed(in_chans=in_chans,\n                                      embed_dim=embed_dims[0],\n                                      resolution=img_size,\n                                      activation=activation)\n\n        patches_resolution = self.patch_embed.patches_resolution\n        self.patches_resolution = patches_resolution\n\n        # stochastic depth\n        dpr = [x.item() for x in torch.linspace(0, drop_path_rate,\n                                                sum(depths))]  # stochastic depth decay rule\n\n        # build layers\n        self.layers = nn.ModuleList()\n        for i_layer in range(self.num_layers):\n            kwargs = dict(dim=embed_dims[i_layer],\n                        input_resolution=(patches_resolution[0] // (2 ** (i_layer-1 if i_layer == 3 else i_layer)),\n                                patches_resolution[1] // (2 ** (i_layer-1 if i_layer == 3 else i_layer))),\n                        #   input_resolution=(patches_resolution[0] // (2 ** i_layer),\n                        #                     patches_resolution[1] // (2 ** i_layer)),\n                          depth=depths[i_layer],\n                          drop_path=dpr[sum(depths[:i_layer]):sum(depths[:i_layer + 1])],\n                          downsample=PatchMerging if (\n                              i_layer < self.num_layers - 1) else None,\n                          use_checkpoint=use_checkpoint,\n                          out_dim=embed_dims[min(\n                              i_layer + 1, len(embed_dims) - 1)],\n                          activation=activation,\n                          )\n            if i_layer == 0:\n                layer = ConvLayer(\n                    conv_expand_ratio=mbconv_expand_ratio,\n                    **kwargs,\n                )\n            else:\n                layer = BasicLayer(\n                    num_heads=num_heads[i_layer],\n                    window_size=window_sizes[i_layer],\n                    mlp_ratio=self.mlp_ratio,\n                    drop=drop_rate,\n                    local_conv_size=local_conv_size,\n                    **kwargs)\n            self.layers.append(layer)\n\n        # Classifier head\n        self.norm_head = nn.LayerNorm(embed_dims[-1])\n        self.head = nn.Linear(\n            embed_dims[-1], num_classes) if num_classes > 0 else torch.nn.Identity()\n\n        # init weights\n        self.apply(self._init_weights)\n        self.set_layer_lr_decay(layer_lr_decay)\n        self.neck = nn.Sequential(\n            nn.Conv2d(\n                embed_dims[-1],\n                256,\n                kernel_size=1,\n                bias=False,\n            ),\n            LayerNorm2d(256),\n            nn.Conv2d(\n                256,\n                256,\n                kernel_size=3,\n                padding=1,\n                bias=False,\n            ),\n            LayerNorm2d(256),\n        )\n    def set_layer_lr_decay(self, layer_lr_decay):\n        decay_rate = layer_lr_decay\n\n        # layers -> blocks (depth)\n        depth = sum(self.depths)\n        lr_scales = [decay_rate ** (depth - i - 1) for i in range(depth)]\n        #print(\"LR SCALES:\", lr_scales)\n\n        def _set_lr_scale(m, scale):\n            for p in m.parameters():\n                p.lr_scale = scale\n\n        self.patch_embed.apply(lambda x: _set_lr_scale(x, lr_scales[0]))\n        i = 0\n        for layer in self.layers:\n            for block in layer.blocks:\n                block.apply(lambda x: _set_lr_scale(x, lr_scales[i])) # noqa\n                i += 1\n            if layer.downsample is not None:\n                layer.downsample.apply(\n                    lambda x: _set_lr_scale(x, lr_scales[i - 1])) # noqa\n        assert i == depth\n        for m in [self.norm_head, self.head]:\n            m.apply(lambda x: _set_lr_scale(x, lr_scales[-1]))\n\n        for k, p in self.named_parameters():\n            p.param_name = k\n\n        def _check_lr_scale(m):\n            for p in m.parameters():\n                assert hasattr(p, 'lr_scale'), p.param_name\n\n        self.apply(_check_lr_scale)\n\n    def _init_weights(self, m):\n        if isinstance(m, nn.Linear):\n            trunc_normal_(m.weight, std=.02)\n            if isinstance(m, nn.Linear) and m.bias is not None:\n                nn.init.constant_(m.bias, 0)\n        elif isinstance(m, nn.LayerNorm):\n            nn.init.constant_(m.bias, 0)\n            nn.init.constant_(m.weight, 1.0)\n\n    @torch.jit.ignore\n    def no_weight_decay_keywords(self):\n        return {'attention_biases'}\n\n    def forward_features(self, x):\n        # x: (N, C, H, W)\n        x = self.patch_embed(x)\n\n        x = self.layers[0](x)\n        start_i = 1\n\n        for i in range(start_i, len(self.layers)):\n            layer = self.layers[i]\n            x = layer(x)\n        B,_,C=x.size()\n        x = x.view(B, 64, 64, C)\n        x=x.permute(0, 3, 1, 2)\n        x=self.neck(x)\n        return x\n\n    def forward(self, x):\n        x = self.forward_features(x)\n        #x = self.norm_head(x)\n        #x = self.head(x)\n        return x\n\n\n_checkpoint_url_format = \\\n    'https://github.com/wkcn/TinyViT-model-zoo/releases/download/checkpoints/{}.pth'\n_provided_checkpoints = {\n    'tiny_vit_5m_224': 'tiny_vit_5m_22kto1k_distill',\n    'tiny_vit_11m_224': 'tiny_vit_11m_22kto1k_distill',\n    'tiny_vit_21m_224': 'tiny_vit_21m_22kto1k_distill',\n    'tiny_vit_21m_384': 'tiny_vit_21m_22kto1k_384_distill',\n    'tiny_vit_21m_512': 'tiny_vit_21m_22kto1k_512_distill',\n}\n\n\ndef register_tiny_vit_model(fn):\n    '''Register a TinyViT model\n    It is a wrapper of `register_model` with loading the pretrained checkpoint.\n    '''\n    def fn_wrapper(pretrained=False, **kwargs):\n        model = fn()\n        if pretrained:\n            model_name = fn.__name__\n            assert model_name in _provided_checkpoints, \\\n                f'Sorry that the checkpoint `{model_name}` is not provided yet.'\n            url = _checkpoint_url_format.format(\n                _provided_checkpoints[model_name])\n            checkpoint = torch.hub.load_state_dict_from_url(\n                url=url,\n                map_location='cpu', check_hash=False,\n            )\n            model.load_state_dict(checkpoint['model'])\n\n        return model\n\n    # rename the name of fn_wrapper\n    fn_wrapper.__name__ = fn.__name__\n    return register_model(fn_wrapper)\n\n\n@register_tiny_vit_model\ndef tiny_vit_5m_224(pretrained=False, num_classes=1000, drop_path_rate=0.0):\n    return TinyViT(\n        num_classes=num_classes,\n        embed_dims=[64, 128, 160, 320],\n        depths=[2, 2, 6, 2],\n        num_heads=[2, 4, 5, 10],\n        window_sizes=[7, 7, 14, 7],\n        drop_path_rate=drop_path_rate,\n    )\n\n\n@register_tiny_vit_model\ndef tiny_vit_11m_224(pretrained=False, num_classes=1000, drop_path_rate=0.1):\n    return TinyViT(\n        num_classes=num_classes,\n        embed_dims=[64, 128, 256, 448],\n        depths=[2, 2, 6, 2],\n        num_heads=[2, 4, 8, 14],\n        window_sizes=[7, 7, 14, 7],\n        drop_path_rate=drop_path_rate,\n    )\n\n\n@register_tiny_vit_model\ndef tiny_vit_21m_224(pretrained=False, num_classes=1000, drop_path_rate=0.2):\n    return TinyViT(\n        num_classes=num_classes,\n        embed_dims=[96, 192, 384, 576],\n        depths=[2, 2, 6, 2],\n        num_heads=[3, 6, 12, 18],\n        window_sizes=[7, 7, 14, 7],\n        drop_path_rate=drop_path_rate,\n    )\n\n\n@register_tiny_vit_model\ndef tiny_vit_21m_384(pretrained=False, num_classes=1000, drop_path_rate=0.1):\n    return TinyViT(\n        img_size=384,\n        num_classes=num_classes,\n        embed_dims=[96, 192, 384, 576],\n        depths=[2, 2, 6, 2],\n        num_heads=[3, 6, 12, 18],\n        window_sizes=[12, 12, 24, 12],\n        drop_path_rate=drop_path_rate,\n    )\n\n\n@register_tiny_vit_model\ndef tiny_vit_21m_512(pretrained=False, num_classes=1000, drop_path_rate=0.1):\n    return TinyViT(\n        img_size=512,\n        num_classes=num_classes,\n        embed_dims=[96, 192, 384, 576],\n        depths=[2, 2, 6, 2],\n        num_heads=[3, 6, 12, 18],\n        window_sizes=[16, 16, 32, 16],\n        drop_path_rate=drop_path_rate,\n    )\n"
  },
  {
    "path": "modules/control/proc/segment_anything/modeling/transformer.py",
    "content": "# Copyright (c) Meta Platforms, Inc. and affiliates.\n# All rights reserved.\n\n# This source code is licensed under the license found in the\n# LICENSE file in the root directory of this source tree.\n\nimport torch\nfrom torch import Tensor, nn\n\nimport math\nfrom typing import Tuple, Type\n\nfrom .common import MLPBlock\n\n\nclass TwoWayTransformer(nn.Module):\n    def __init__(\n        self,\n        depth: int,\n        embedding_dim: int,\n        num_heads: int,\n        mlp_dim: int,\n        activation: Type[nn.Module] = nn.ReLU,\n        attention_downsample_rate: int = 2,\n    ) -> None:\n        \"\"\"\n        A transformer decoder that attends to an input image using\n        queries whose positional embedding is supplied.\n\n        Args:\n          depth (int): number of layers in the transformer\n          embedding_dim (int): the channel dimension for the input embeddings\n          num_heads (int): the number of heads for multihead attention. Must\n            divide embedding_dim\n          mlp_dim (int): the channel dimension internal to the MLP block\n          activation (nn.Module): the activation to use in the MLP block\n        \"\"\"\n        super().__init__()\n        self.depth = depth\n        self.embedding_dim = embedding_dim\n        self.num_heads = num_heads\n        self.mlp_dim = mlp_dim\n        self.layers = nn.ModuleList()\n\n        for i in range(depth):\n            self.layers.append(\n                TwoWayAttentionBlock(\n                    embedding_dim=embedding_dim,\n                    num_heads=num_heads,\n                    mlp_dim=mlp_dim,\n                    activation=activation,\n                    attention_downsample_rate=attention_downsample_rate,\n                    skip_first_layer_pe=(i == 0),\n                )\n            )\n\n        self.final_attn_token_to_image = Attention(\n            embedding_dim, num_heads, downsample_rate=attention_downsample_rate\n        )\n        self.norm_final_attn = nn.LayerNorm(embedding_dim)\n\n    def forward(\n        self,\n        image_embedding: Tensor,\n        image_pe: Tensor,\n        point_embedding: Tensor,\n    ) -> Tuple[Tensor, Tensor]:\n        \"\"\"\n        Args:\n          image_embedding (torch.Tensor): image to attend to. Should be shape\n            B x embedding_dim x h x w for any h and w.\n          image_pe (torch.Tensor): the positional encoding to add to the image. Must\n            have the same shape as image_embedding.\n          point_embedding (torch.Tensor): the embedding to add to the query points.\n            Must have shape B x N_points x embedding_dim for any N_points.\n\n        Returns:\n          torch.Tensor: the processed point_embedding\n          torch.Tensor: the processed image_embedding\n        \"\"\"\n        # BxCxHxW -> BxHWxC == B x N_image_tokens x C\n        bs, c, h, w = image_embedding.shape\n        image_embedding = image_embedding.flatten(2).permute(0, 2, 1)\n        image_pe = image_pe.flatten(2).permute(0, 2, 1)\n\n        # Prepare queries\n        queries = point_embedding\n        keys = image_embedding\n\n        # Apply transformer blocks and final layernorm\n        for layer in self.layers:\n            queries, keys = layer(\n                queries=queries,\n                keys=keys,\n                query_pe=point_embedding,\n                key_pe=image_pe,\n            )\n\n        # Apply the final attention layer from the points to the image\n        q = queries + point_embedding\n        k = keys + image_pe\n        attn_out = self.final_attn_token_to_image(q=q, k=k, v=keys)\n        queries = queries + attn_out\n        queries = self.norm_final_attn(queries)\n\n        return queries, keys\n\n\nclass TwoWayAttentionBlock(nn.Module):\n    def __init__(\n        self,\n        embedding_dim: int,\n        num_heads: int,\n        mlp_dim: int = 2048,\n        activation: Type[nn.Module] = nn.ReLU,\n        attention_downsample_rate: int = 2,\n        skip_first_layer_pe: bool = False,\n    ) -> None:\n        \"\"\"\n        A transformer block with four layers: (1) self-attention of sparse\n        inputs, (2) cross attention of sparse inputs to dense inputs, (3) mlp\n        block on sparse inputs, and (4) cross attention of dense inputs to sparse\n        inputs.\n\n        Arguments:\n          embedding_dim (int): the channel dimension of the embeddings\n          num_heads (int): the number of heads in the attention layers\n          mlp_dim (int): the hidden dimension of the mlp block\n          activation (nn.Module): the activation of the mlp block\n          skip_first_layer_pe (bool): skip the PE on the first layer\n        \"\"\"\n        super().__init__()\n        self.self_attn = Attention(embedding_dim, num_heads)\n        self.norm1 = nn.LayerNorm(embedding_dim)\n\n        self.cross_attn_token_to_image = Attention(\n            embedding_dim, num_heads, downsample_rate=attention_downsample_rate\n        )\n        self.norm2 = nn.LayerNorm(embedding_dim)\n\n        self.mlp = MLPBlock(embedding_dim, mlp_dim, activation)\n        self.norm3 = nn.LayerNorm(embedding_dim)\n\n        self.norm4 = nn.LayerNorm(embedding_dim)\n        self.cross_attn_image_to_token = Attention(\n            embedding_dim, num_heads, downsample_rate=attention_downsample_rate\n        )\n\n        self.skip_first_layer_pe = skip_first_layer_pe\n\n    def forward(\n        self, queries: Tensor, keys: Tensor, query_pe: Tensor, key_pe: Tensor\n    ) -> Tuple[Tensor, Tensor]:\n        # Self attention block\n        if self.skip_first_layer_pe:\n            queries = self.self_attn(q=queries, k=queries, v=queries)\n        else:\n            q = queries + query_pe\n            attn_out = self.self_attn(q=q, k=q, v=queries)\n            queries = queries + attn_out\n        queries = self.norm1(queries)\n\n        # Cross attention block, tokens attending to image embedding\n        q = queries + query_pe\n        k = keys + key_pe\n        attn_out = self.cross_attn_token_to_image(q=q, k=k, v=keys)\n        queries = queries + attn_out\n        queries = self.norm2(queries)\n\n        # MLP block\n        mlp_out = self.mlp(queries)\n        queries = queries + mlp_out\n        queries = self.norm3(queries)\n\n        # Cross attention block, image embedding attending to tokens\n        q = queries + query_pe\n        k = keys + key_pe\n        attn_out = self.cross_attn_image_to_token(q=k, k=q, v=queries)\n        keys = keys + attn_out\n        keys = self.norm4(keys)\n\n        return queries, keys\n\n\nclass Attention(nn.Module):\n    \"\"\"\n    An attention layer that allows for downscaling the size of the embedding\n    after projection to queries, keys, and values.\n    \"\"\"\n\n    def __init__(\n        self,\n        embedding_dim: int,\n        num_heads: int,\n        downsample_rate: int = 1,\n    ) -> None:\n        super().__init__()\n        self.embedding_dim = embedding_dim\n        self.internal_dim = embedding_dim // downsample_rate\n        self.num_heads = num_heads\n        assert self.internal_dim % num_heads == 0, \"num_heads must divide embedding_dim.\"\n\n        self.q_proj = nn.Linear(embedding_dim, self.internal_dim)\n        self.k_proj = nn.Linear(embedding_dim, self.internal_dim)\n        self.v_proj = nn.Linear(embedding_dim, self.internal_dim)\n        self.out_proj = nn.Linear(self.internal_dim, embedding_dim)\n\n    def _separate_heads(self, x: Tensor, num_heads: int) -> Tensor:\n        b, n, c = x.shape\n        x = x.reshape(b, n, num_heads, c // num_heads)\n        return x.transpose(1, 2)  # B x N_heads x N_tokens x C_per_head\n\n    def _recombine_heads(self, x: Tensor) -> Tensor:\n        b, n_heads, n_tokens, c_per_head = x.shape\n        x = x.transpose(1, 2)\n        return x.reshape(b, n_tokens, n_heads * c_per_head)  # B x N_tokens x C\n\n    def forward(self, q: Tensor, k: Tensor, v: Tensor) -> Tensor:\n        # Input projections\n        q = self.q_proj(q)\n        k = self.k_proj(k)\n        v = self.v_proj(v)\n\n        # Separate into heads\n        q = self._separate_heads(q, self.num_heads)\n        k = self._separate_heads(k, self.num_heads)\n        v = self._separate_heads(v, self.num_heads)\n\n        # Attention\n        _, _, _, c_per_head = q.shape\n        attn = q @ k.permute(0, 1, 3, 2)  # B x N_heads x N_tokens x N_tokens\n        attn = attn / math.sqrt(c_per_head)\n        attn = torch.softmax(attn, dim=-1)\n\n        # Get output\n        out = attn @ v\n        out = self._recombine_heads(out)\n        out = self.out_proj(out)\n\n        return out\n"
  },
  {
    "path": "modules/control/proc/segment_anything/predictor.py",
    "content": "# Copyright (c) Meta Platforms, Inc. and affiliates.\n# All rights reserved.\n\n# This source code is licensed under the license found in the\n# LICENSE file in the root directory of this source tree.\n\nfrom typing import Optional, Tuple\nimport numpy as np\nimport torch\nfrom .modeling import Sam\nfrom .utils.transforms import ResizeLongestSide\n\n\nclass SamPredictor:\n    def __init__(\n        self,\n        sam_model: Sam,\n    ) -> None:\n        \"\"\"\n        Uses SAM to calculate the image embedding for an image, and then\n        allow repeated, efficient mask prediction given prompts.\n\n        Arguments:\n          sam_model (Sam): The model to use for mask prediction.\n        \"\"\"\n        super().__init__()\n        self.model = sam_model\n        self.transform = ResizeLongestSide(sam_model.image_encoder.img_size)\n        self.reset_image()\n\n    def set_image(\n        self,\n        image: np.ndarray,\n        image_format: str = \"RGB\",\n    ) -> None:\n        \"\"\"\n        Calculates the image embeddings for the provided image, allowing\n        masks to be predicted with the 'predict' method.\n\n        Arguments:\n          image (np.ndarray): The image for calculating masks. Expects an\n            image in HWC uint8 format, with pixel values in [0, 255].\n          image_format (str): The color format of the image, in ['RGB', 'BGR'].\n        \"\"\"\n        assert image_format in [\n            \"RGB\",\n            \"BGR\",\n        ], f\"image_format must be in ['RGB', 'BGR'], is {image_format}.\"\n        if image_format != self.model.image_format:\n            image = image[..., ::-1]\n\n        # Transform the image to the form expected by the model\n        input_image = self.transform.apply_image(image)\n        input_image_torch = torch.as_tensor(input_image, device=self.device)\n        input_image_torch = input_image_torch.permute(2, 0, 1).contiguous()[None, :, :, :]\n\n        self.set_torch_image(input_image_torch, image.shape[:2])\n\n    def set_torch_image(\n        self,\n        transformed_image: torch.Tensor,\n        original_image_size: Tuple[int, ...],\n    ) -> None:\n        \"\"\"\n        Calculates the image embeddings for the provided image, allowing\n        masks to be predicted with the 'predict' method. Expects the input\n        image to be already transformed to the format expected by the model.\n\n        Arguments:\n          transformed_image (torch.Tensor): The input image, with shape\n            1x3xHxW, which has been transformed with ResizeLongestSide.\n          original_image_size (tuple(int, int)): The size of the image\n            before transformation, in (H, W) format.\n        \"\"\"\n        assert (\n            len(transformed_image.shape) == 4\n            and transformed_image.shape[1] == 3\n            and max(*transformed_image.shape[2:]) == self.model.image_encoder.img_size\n        ), f\"set_torch_image input must be BCHW with long side {self.model.image_encoder.img_size}.\"\n        self.reset_image()\n\n        self.original_size = original_image_size\n        self.input_size = tuple(transformed_image.shape[-2:])\n        input_image = self.model.preprocess(transformed_image)\n        self.features = self.model.image_encoder(input_image)\n        self.is_image_set = True\n\n    def predict(\n        self,\n        point_coords: Optional[np.ndarray] = None,\n        point_labels: Optional[np.ndarray] = None,\n        box: Optional[np.ndarray] = None,\n        mask_input: Optional[np.ndarray] = None,\n        multimask_output: bool = True,\n        return_logits: bool = False,\n    ) -> Tuple[np.ndarray, np.ndarray, np.ndarray]:\n        \"\"\"\n        Predict masks for the given input prompts, using the currently set image.\n\n        Arguments:\n          point_coords (np.ndarray or None): A Nx2 array of point prompts to the\n            model. Each point is in (X,Y) in pixels.\n          point_labels (np.ndarray or None): A length N array of labels for the\n            point prompts. 1 indicates a foreground point and 0 indicates a\n            background point.\n          box (np.ndarray or None): A length 4 array given a box prompt to the\n            model, in XYXY format.\n          mask_input (np.ndarray): A low resolution mask input to the model, typically\n            coming from a previous prediction iteration. Has form 1xHxW, where\n            for SAM, H=W=256.\n          multimask_output (bool): If true, the model will return three masks.\n            For ambiguous input prompts (such as a single click), this will often\n            produce better masks than a single prediction. If only a single\n            mask is needed, the model's predicted quality score can be used\n            to select the best mask. For non-ambiguous prompts, such as multiple\n            input prompts, multimask_output=False can give better results.\n          return_logits (bool): If true, returns un-thresholded masks logits\n            instead of a binary mask.\n\n        Returns:\n          (np.ndarray): The output masks in CxHxW format, where C is the\n            number of masks, and (H, W) is the original image size.\n          (np.ndarray): An array of length C containing the model's\n            predictions for the quality of each mask.\n          (np.ndarray): An array of shape CxHxW, where C is the number\n            of masks and H=W=256. These low resolution logits can be passed to\n            a subsequent iteration as mask input.\n        \"\"\"\n        if not self.is_image_set:\n            raise RuntimeError(\"An image must be set with .set_image(...) before mask prediction.\")\n\n        # Transform input prompts\n        coords_torch, labels_torch, box_torch, mask_input_torch = None, None, None, None\n        if point_coords is not None:\n            assert (\n                point_labels is not None\n            ), \"point_labels must be supplied if point_coords is supplied.\"\n            point_coords = self.transform.apply_coords(point_coords, self.original_size)\n            coords_torch = torch.as_tensor(point_coords, dtype=torch.float, device=self.device)\n            labels_torch = torch.as_tensor(point_labels, dtype=torch.int, device=self.device)\n            coords_torch, labels_torch = coords_torch[None, :, :], labels_torch[None, :]\n        if box is not None:\n            box = self.transform.apply_boxes(box, self.original_size)\n            box_torch = torch.as_tensor(box, dtype=torch.float, device=self.device)\n            box_torch = box_torch[None, :]\n        if mask_input is not None:\n            mask_input_torch = torch.as_tensor(mask_input, dtype=torch.float, device=self.device)\n            mask_input_torch = mask_input_torch[None, :, :, :]\n\n        masks, iou_predictions, low_res_masks = self.predict_torch(\n            coords_torch,\n            labels_torch,\n            box_torch,\n            mask_input_torch,\n            multimask_output,\n            return_logits=return_logits,\n        )\n\n        masks_np = masks[0].detach().cpu().numpy()\n        iou_predictions_np = iou_predictions[0].detach().cpu().numpy()\n        low_res_masks_np = low_res_masks[0].detach().cpu().numpy()\n        return masks_np, iou_predictions_np, low_res_masks_np\n\n    def predict_torch(\n        self,\n        point_coords: Optional[torch.Tensor],\n        point_labels: Optional[torch.Tensor],\n        boxes: Optional[torch.Tensor] = None,\n        mask_input: Optional[torch.Tensor] = None,\n        multimask_output: bool = True,\n        return_logits: bool = False,\n    ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor]:\n        \"\"\"\n        Predict masks for the given input prompts, using the currently set image.\n        Input prompts are batched torch tensors and are expected to already be\n        transformed to the input frame using ResizeLongestSide.\n\n        Arguments:\n          point_coords (torch.Tensor or None): A BxNx2 array of point prompts to the\n            model. Each point is in (X,Y) in pixels.\n          point_labels (torch.Tensor or None): A BxN array of labels for the\n            point prompts. 1 indicates a foreground point and 0 indicates a\n            background point.\n          boxes (np.ndarray or None): A Bx4 array given a box prompt to the\n            model, in XYXY format.\n          mask_input (np.ndarray): A low resolution mask input to the model, typically\n            coming from a previous prediction iteration. Has form Bx1xHxW, where\n            for SAM, H=W=256. Masks returned by a previous iteration of the\n            predict method do not need further transformation.\n          multimask_output (bool): If true, the model will return three masks.\n            For ambiguous input prompts (such as a single click), this will often\n            produce better masks than a single prediction. If only a single\n            mask is needed, the model's predicted quality score can be used\n            to select the best mask. For non-ambiguous prompts, such as multiple\n            input prompts, multimask_output=False can give better results.\n          return_logits (bool): If true, returns un-thresholded masks logits\n            instead of a binary mask.\n\n        Returns:\n          (torch.Tensor): The output masks in BxCxHxW format, where C is the\n            number of masks, and (H, W) is the original image size.\n          (torch.Tensor): An array of shape BxC containing the model's\n            predictions for the quality of each mask.\n          (torch.Tensor): An array of shape BxCxHxW, where C is the number\n            of masks and H=W=256. These low res logits can be passed to\n            a subsequent iteration as mask input.\n        \"\"\"\n        if not self.is_image_set:\n            raise RuntimeError(\"An image must be set with .set_image(...) before mask prediction.\")\n\n        if point_coords is not None:\n            points = (point_coords, point_labels)\n        else:\n            points = None\n\n        # Embed prompts\n        sparse_embeddings, dense_embeddings = self.model.prompt_encoder(\n            points=points,\n            boxes=boxes,\n            masks=mask_input,\n        )\n\n        # Predict masks\n        low_res_masks, iou_predictions = self.model.mask_decoder(\n            image_embeddings=self.features,\n            image_pe=self.model.prompt_encoder.get_dense_pe(),\n            sparse_prompt_embeddings=sparse_embeddings,\n            dense_prompt_embeddings=dense_embeddings,\n            multimask_output=multimask_output,\n        )\n\n        # Upscale the masks to the original image resolution\n        masks = self.model.postprocess_masks(low_res_masks, self.input_size, self.original_size)\n\n        if not return_logits:\n            masks = masks > self.model.mask_threshold\n\n        return masks, iou_predictions, low_res_masks\n\n    def get_image_embedding(self) -> torch.Tensor:\n        \"\"\"\n        Returns the image embeddings for the currently set image, with\n        shape 1xCxHxW, where C is the embedding dimension and (H,W) are\n        the embedding spatial dimension of SAM (typically C=256, H=W=64).\n        \"\"\"\n        if not self.is_image_set:\n            raise RuntimeError(\n                \"An image must be set with .set_image(...) to generate an embedding.\"\n            )\n        assert self.features is not None, \"Features must exist if an image has been set.\"\n        return self.features\n\n    @property\n    def device(self) -> torch.device:\n        return self.model.device\n\n    def reset_image(self) -> None:\n        \"\"\"Resets the currently set image.\"\"\"\n        self.is_image_set = False\n        self.features = None\n        self.orig_h = None\n        self.orig_w = None\n        self.input_h = None\n        self.input_w = None\n"
  },
  {
    "path": "modules/control/proc/segment_anything/utils/__init__.py",
    "content": "# Copyright (c) Meta Platforms, Inc. and affiliates.\n# All rights reserved.\n\n# This source code is licensed under the license found in the\n# LICENSE file in the root directory of this source tree.\n"
  },
  {
    "path": "modules/control/proc/segment_anything/utils/amg.py",
    "content": "# Copyright (c) Meta Platforms, Inc. and affiliates.\n# All rights reserved.\n\n# This source code is licensed under the license found in the\n# LICENSE file in the root directory of this source tree.\n\nimport numpy as np\nimport torch\n\nimport math\nfrom copy import deepcopy\nfrom itertools import product\nfrom typing import Any, Dict, Generator, ItemsView, List, Tuple\n\n\nclass MaskData:\n    \"\"\"\n    A structure for storing masks and their related data in batched format.\n    Implements basic filtering and concatenation.\n    \"\"\"\n\n    def __init__(self, **kwargs) -> None:\n        for v in kwargs.values():\n            assert isinstance(\n                v, (list, np.ndarray, torch.Tensor)\n            ), \"MaskData only supports list, numpy arrays, and torch tensors.\"\n        self._stats = dict(**kwargs)\n\n    def __setitem__(self, key: str, item: Any) -> None:\n        assert isinstance(\n            item, (list, np.ndarray, torch.Tensor)\n        ), \"MaskData only supports list, numpy arrays, and torch tensors.\"\n        self._stats[key] = item\n\n    def __delitem__(self, key: str) -> None:\n        del self._stats[key]\n\n    def __getitem__(self, key: str) -> Any:\n        return self._stats[key]\n\n    def items(self) -> ItemsView[str, Any]:\n        return self._stats.items()\n\n    def filter(self, keep: torch.Tensor) -> None:\n        for k, v in self._stats.items():\n            if v is None:\n                self._stats[k] = None\n            elif isinstance(v, torch.Tensor):\n                self._stats[k] = v[torch.as_tensor(keep, device=v.device)]\n            elif isinstance(v, np.ndarray):\n                self._stats[k] = v[keep.detach().cpu().numpy()]\n            elif isinstance(v, list) and keep.dtype == torch.bool:\n                self._stats[k] = [a for i, a in enumerate(v) if keep[i]]\n            elif isinstance(v, list):\n                self._stats[k] = [v[i] for i in keep]\n            else:\n                raise TypeError(f\"MaskData key {k} has an unsupported type {type(v)}.\")\n\n    def cat(self, new_stats: \"MaskData\") -> None:\n        for k, v in new_stats.items():\n            if k not in self._stats or self._stats[k] is None:\n                self._stats[k] = deepcopy(v)\n            elif isinstance(v, torch.Tensor):\n                self._stats[k] = torch.cat([self._stats[k], v], dim=0)\n            elif isinstance(v, np.ndarray):\n                self._stats[k] = np.concatenate([self._stats[k], v], axis=0)\n            elif isinstance(v, list):\n                self._stats[k] = self._stats[k] + deepcopy(v)\n            else:\n                raise TypeError(f\"MaskData key {k} has an unsupported type {type(v)}.\")\n\n    def to_numpy(self) -> None:\n        for k, v in self._stats.items():\n            if isinstance(v, torch.Tensor):\n                self._stats[k] = v.detach().cpu().numpy()\n\n\ndef is_box_near_crop_edge(\n    boxes: torch.Tensor, crop_box: List[int], orig_box: List[int], atol: float = 20.0\n) -> torch.Tensor:\n    \"\"\"Filter masks at the edge of a crop, but not at the edge of the original image.\"\"\"\n    crop_box_torch = torch.as_tensor(crop_box, dtype=torch.float, device=boxes.device)\n    orig_box_torch = torch.as_tensor(orig_box, dtype=torch.float, device=boxes.device)\n    boxes = uncrop_boxes_xyxy(boxes, crop_box).float()\n    near_crop_edge = torch.isclose(boxes, crop_box_torch[None, :], atol=atol, rtol=0)\n    near_image_edge = torch.isclose(boxes, orig_box_torch[None, :], atol=atol, rtol=0)\n    near_crop_edge = torch.logical_and(near_crop_edge, ~near_image_edge)\n    return torch.any(near_crop_edge, dim=1)\n\n\ndef box_xyxy_to_xywh(box_xyxy: torch.Tensor) -> torch.Tensor:\n    box_xywh = deepcopy(box_xyxy)\n    box_xywh[2] = box_xywh[2] - box_xywh[0]\n    box_xywh[3] = box_xywh[3] - box_xywh[1]\n    return box_xywh\n\n\ndef batch_iterator(batch_size: int, *args) -> Generator[List[Any], None, None]:\n    assert len(args) > 0 and all(\n        len(a) == len(args[0]) for a in args\n    ), \"Batched iteration must have inputs of all the same size.\"\n    n_batches = len(args[0]) // batch_size + int(len(args[0]) % batch_size != 0)\n    for b in range(n_batches):\n        yield [arg[b * batch_size : (b + 1) * batch_size] for arg in args]\n\n\ndef mask_to_rle_pytorch(tensor: torch.Tensor) -> List[Dict[str, Any]]:\n    \"\"\"\n    Encodes masks to an uncompressed RLE, in the format expected by\n    pycoco tools.\n    \"\"\"\n    # Put in fortran order and flatten h,w\n    b, h, w = tensor.shape\n    tensor = tensor.permute(0, 2, 1).flatten(1)\n\n    # Compute change indices\n    diff = tensor[:, 1:] ^ tensor[:, :-1]\n    change_indices = diff.nonzero()\n\n    # Encode run length\n    out = []\n    for i in range(b):\n        cur_idxs = change_indices[change_indices[:, 0] == i, 1]\n        cur_idxs = torch.cat(\n            [\n                torch.tensor([0], dtype=cur_idxs.dtype, device=cur_idxs.device),\n                cur_idxs + 1,\n                torch.tensor([h * w], dtype=cur_idxs.dtype, device=cur_idxs.device),\n            ]\n        )\n        btw_idxs = cur_idxs[1:] - cur_idxs[:-1]\n        counts = [] if tensor[i, 0] == 0 else [0]\n        counts.extend(btw_idxs.detach().cpu().tolist())\n        out.append({\"size\": [h, w], \"counts\": counts})\n    return out\n\n\ndef rle_to_mask(rle: Dict[str, Any]) -> np.ndarray:\n    \"\"\"Compute a binary mask from an uncompressed RLE.\"\"\"\n    h, w = rle[\"size\"]\n    mask = np.empty(h * w, dtype=bool)\n    idx = 0\n    parity = False\n    for count in rle[\"counts\"]:\n        mask[idx : idx + count] = parity\n        idx += count\n        parity ^= True\n    mask = mask.reshape(w, h)\n    return mask.transpose()  # Put in C order\n\n\ndef area_from_rle(rle: Dict[str, Any]) -> int:\n    return sum(rle[\"counts\"][1::2])\n\n\ndef calculate_stability_score(\n    masks: torch.Tensor, mask_threshold: float, threshold_offset: float\n) -> torch.Tensor:\n    \"\"\"\n    Computes the stability score for a batch of masks. The stability\n    score is the IoU between the binary masks obtained by thresholding\n    the predicted mask logits at high and low values.\n    \"\"\"\n    # One mask is always contained inside the other.\n    # Save memory by preventing unnecessary cast to torch.int64\n    intersections = (\n        (masks > (mask_threshold + threshold_offset))\n        .sum(-1, dtype=torch.int16)\n        .sum(-1, dtype=torch.int32)\n    )\n    unions = (\n        (masks > (mask_threshold - threshold_offset))\n        .sum(-1, dtype=torch.int16)\n        .sum(-1, dtype=torch.int32)\n    )\n    return intersections / unions\n\n\ndef build_point_grid(n_per_side: int) -> np.ndarray:\n    \"\"\"Generates a 2D grid of points evenly spaced in [0,1]x[0,1].\"\"\"\n    offset = 1 / (2 * n_per_side)\n    points_one_side = np.linspace(offset, 1 - offset, n_per_side)\n    points_x = np.tile(points_one_side[None, :], (n_per_side, 1))\n    points_y = np.tile(points_one_side[:, None], (1, n_per_side))\n    points = np.stack([points_x, points_y], axis=-1).reshape(-1, 2)\n    return points\n\n\ndef build_all_layer_point_grids(\n    n_per_side: int, n_layers: int, scale_per_layer: int\n) -> List[np.ndarray]:\n    \"\"\"Generates point grids for all crop layers.\"\"\"\n    points_by_layer = []\n    for i in range(n_layers + 1):\n        n_points = int(n_per_side / (scale_per_layer**i))\n        points_by_layer.append(build_point_grid(n_points))\n    return points_by_layer\n\n\ndef generate_crop_boxes(\n    im_size: Tuple[int, ...], n_layers: int, overlap_ratio: float\n) -> Tuple[List[List[int]], List[int]]:\n    \"\"\"\n    Generates a list of crop boxes of different sizes. Each layer\n    has (2**i)**2 boxes for the ith layer.\n    \"\"\"\n    crop_boxes, layer_idxs = [], []\n    im_h, im_w = im_size\n    short_side = min(im_h, im_w)\n\n    # Original image\n    crop_boxes.append([0, 0, im_w, im_h])\n    layer_idxs.append(0)\n\n    def crop_len(orig_len, n_crops, overlap):\n        return int(math.ceil((overlap * (n_crops - 1) + orig_len) / n_crops))\n\n    for i_layer in range(n_layers):\n        n_crops_per_side = 2 ** (i_layer + 1)\n        overlap = int(overlap_ratio * short_side * (2 / n_crops_per_side))\n\n        crop_w = crop_len(im_w, n_crops_per_side, overlap)\n        crop_h = crop_len(im_h, n_crops_per_side, overlap)\n\n        crop_box_x0 = [int((crop_w - overlap) * i) for i in range(n_crops_per_side)]\n        crop_box_y0 = [int((crop_h - overlap) * i) for i in range(n_crops_per_side)]\n\n        # Crops in XYWH format\n        for x0, y0 in product(crop_box_x0, crop_box_y0):\n            box = [x0, y0, min(x0 + crop_w, im_w), min(y0 + crop_h, im_h)]\n            crop_boxes.append(box)\n            layer_idxs.append(i_layer + 1)\n\n    return crop_boxes, layer_idxs\n\n\ndef uncrop_boxes_xyxy(boxes: torch.Tensor, crop_box: List[int]) -> torch.Tensor:\n    x0, y0, _, _ = crop_box\n    offset = torch.tensor([[x0, y0, x0, y0]], device=boxes.device)\n    # Check if boxes has a channel dimension\n    if len(boxes.shape) == 3:\n        offset = offset.unsqueeze(1)\n    return boxes + offset\n\n\ndef uncrop_points(points: torch.Tensor, crop_box: List[int]) -> torch.Tensor:\n    x0, y0, _, _ = crop_box\n    offset = torch.tensor([[x0, y0]], device=points.device)\n    # Check if points has a channel dimension\n    if len(points.shape) == 3:\n        offset = offset.unsqueeze(1)\n    return points + offset\n\n\ndef uncrop_masks(\n    masks: torch.Tensor, crop_box: List[int], orig_h: int, orig_w: int\n) -> torch.Tensor:\n    x0, y0, x1, y1 = crop_box\n    if x0 == 0 and y0 == 0 and x1 == orig_w and y1 == orig_h:\n        return masks\n    # Coordinate transform masks\n    pad_x, pad_y = orig_w - (x1 - x0), orig_h - (y1 - y0)\n    pad = (x0, pad_x - x0, y0, pad_y - y0)\n    return torch.nn.functional.pad(masks, pad, value=0)\n\n\ndef remove_small_regions(\n    mask: np.ndarray, area_thresh: float, mode: str\n) -> Tuple[np.ndarray, bool]:\n    \"\"\"\n    Removes small disconnected regions and holes in a mask. Returns the\n    mask and an indicator of if the mask has been modified.\n    \"\"\"\n    import cv2  # type: ignore\n\n    assert mode in [\"holes\", \"islands\"]\n    correct_holes = mode == \"holes\"\n    working_mask = (correct_holes ^ mask).astype(np.uint8)\n    n_labels, regions, stats, _ = cv2.connectedComponentsWithStats(working_mask, 8)\n    sizes = stats[:, -1][1:]  # Row 0 is background label\n    small_regions = [i + 1 for i, s in enumerate(sizes) if s < area_thresh]\n    if len(small_regions) == 0:\n        return mask, False\n    fill_labels = [0] + small_regions\n    if not correct_holes:\n        fill_labels = [i for i in range(n_labels) if i not in fill_labels]\n        # If every region is below threshold, keep largest\n        if len(fill_labels) == 0:\n            fill_labels = [int(np.argmax(sizes)) + 1]\n    mask = np.isin(regions, fill_labels)\n    return mask, True\n\n\ndef coco_encode_rle(uncompressed_rle: Dict[str, Any]) -> Dict[str, Any]:\n    from pycocotools import mask as mask_utils  # type: ignore\n\n    h, w = uncompressed_rle[\"size\"]\n    rle = mask_utils.frPyObjects(uncompressed_rle, h, w)\n    rle[\"counts\"] = rle[\"counts\"].decode(\"utf-8\")  # Necessary to serialize with json\n    return rle\n\n\ndef batched_mask_to_box(masks: torch.Tensor) -> torch.Tensor:\n    \"\"\"\n    Calculates boxes in XYXY format around masks. Return [0,0,0,0] for\n    an empty mask. For input shape C1xC2x...xHxW, the output shape is C1xC2x...x4.\n    \"\"\"\n    # torch.max below raises an error on empty inputs, just skip in this case\n    if torch.numel(masks) == 0:\n        return torch.zeros(*masks.shape[:-2], 4, device=masks.device)\n\n    # Normalize shape to CxHxW\n    shape = masks.shape\n    h, w = shape[-2:]\n    if len(shape) > 2:\n        masks = masks.flatten(0, -3)\n    else:\n        masks = masks.unsqueeze(0)\n\n    # Get top and bottom edges\n    in_height, _ = torch.max(masks, dim=-1)\n    in_height_coords = in_height * torch.arange(h, device=in_height.device)[None, :]\n    bottom_edges, _ = torch.max(in_height_coords, dim=-1)\n    in_height_coords = in_height_coords + h * (~in_height)\n    top_edges, _ = torch.min(in_height_coords, dim=-1)\n\n    # Get left and right edges\n    in_width, _ = torch.max(masks, dim=-2)\n    in_width_coords = in_width * torch.arange(w, device=in_width.device)[None, :]\n    right_edges, _ = torch.max(in_width_coords, dim=-1)\n    in_width_coords = in_width_coords + w * (~in_width)\n    left_edges, _ = torch.min(in_width_coords, dim=-1)\n\n    # If the mask is empty the right edge will be to the left of the left edge.\n    # Replace these boxes with [0, 0, 0, 0]\n    empty_filter = (right_edges < left_edges) | (bottom_edges < top_edges)\n    out = torch.stack([left_edges, top_edges, right_edges, bottom_edges], dim=-1)\n    out = out * (~empty_filter).unsqueeze(-1)\n\n    # Return to original shape\n    if len(shape) > 2:\n        out = out.reshape(*shape[:-2], 4)\n    else:\n        out = out[0]\n\n    return out\n"
  },
  {
    "path": "modules/control/proc/segment_anything/utils/onnx.py",
    "content": "# Copyright (c) Meta Platforms, Inc. and affiliates.\n# All rights reserved.\n\n# This source code is licensed under the license found in the\n# LICENSE file in the root directory of this source tree.\n\nimport torch\nimport torch.nn as nn\nfrom torch.nn import functional as F\n\nfrom typing import Tuple\n\nfrom ..modeling import Sam\nfrom .amg import calculate_stability_score\n\n\nclass SamOnnxModel(nn.Module):\n    \"\"\"\n    This model should not be called directly, but is used in ONNX export.\n    It combines the prompt encoder, mask decoder, and mask postprocessing of Sam,\n    with some functions modified to enable model tracing. Also supports extra\n    options controlling what information. See the ONNX export script for details.\n    \"\"\"\n\n    def __init__(\n        self,\n        model: Sam,\n        return_single_mask: bool,\n        use_stability_score: bool = False,\n        return_extra_metrics: bool = False,\n    ) -> None:\n        super().__init__()\n        self.mask_decoder = model.mask_decoder\n        self.model = model\n        self.img_size = model.image_encoder.img_size\n        self.return_single_mask = return_single_mask\n        self.use_stability_score = use_stability_score\n        self.stability_score_offset = 1.0\n        self.return_extra_metrics = return_extra_metrics\n\n    @staticmethod\n    def resize_longest_image_size(\n        input_image_size: torch.Tensor, longest_side: int\n    ) -> torch.Tensor:\n        input_image_size = input_image_size.to(torch.float32)\n        scale = longest_side / torch.max(input_image_size)\n        transformed_size = scale * input_image_size\n        transformed_size = torch.floor(transformed_size + 0.5).to(torch.int64)\n        return transformed_size\n\n    def _embed_points(self, point_coords: torch.Tensor, point_labels: torch.Tensor) -> torch.Tensor:\n        point_coords = point_coords + 0.5\n        point_coords = point_coords / self.img_size\n        point_embedding = self.model.prompt_encoder.pe_layer._pe_encoding(point_coords)\n        point_labels = point_labels.unsqueeze(-1).expand_as(point_embedding)\n\n        point_embedding = point_embedding * (point_labels != -1)\n        point_embedding = point_embedding + self.model.prompt_encoder.not_a_point_embed.weight * (\n            point_labels == -1\n        )\n\n        for i in range(self.model.prompt_encoder.num_point_embeddings):\n            point_embedding = point_embedding + self.model.prompt_encoder.point_embeddings[\n                i\n            ].weight * (point_labels == i)\n\n        return point_embedding\n\n    def _embed_masks(self, input_mask: torch.Tensor, has_mask_input: torch.Tensor) -> torch.Tensor:\n        mask_embedding = has_mask_input * self.model.prompt_encoder.mask_downscaling(input_mask)\n        mask_embedding = mask_embedding + (\n            1 - has_mask_input\n        ) * self.model.prompt_encoder.no_mask_embed.weight.reshape(1, -1, 1, 1)\n        return mask_embedding\n\n    def mask_postprocessing(self, masks: torch.Tensor, orig_im_size: torch.Tensor) -> torch.Tensor:\n        masks = F.interpolate(\n            masks,\n            size=(self.img_size, self.img_size),\n            mode=\"bilinear\",\n            align_corners=False,\n        )\n\n        prepadded_size = self.resize_longest_image_size(orig_im_size, self.img_size).to(torch.int64)\n        masks = masks[..., : prepadded_size[0], : prepadded_size[1]]  # type: ignore\n\n        orig_im_size = orig_im_size.to(torch.int64)\n        h, w = orig_im_size[0], orig_im_size[1]\n        masks = F.interpolate(masks, size=(h, w), mode=\"bilinear\", align_corners=False)\n        return masks\n\n    def select_masks(\n        self, masks: torch.Tensor, iou_preds: torch.Tensor, num_points: int\n    ) -> Tuple[torch.Tensor, torch.Tensor]:\n        # Determine if we should return the multiclick mask or not from the number of points.\n        # The reweighting is used to avoid control flow.\n        score_reweight = torch.tensor(\n            [[1000] + [0] * (self.model.mask_decoder.num_mask_tokens - 1)]\n        ).to(iou_preds.device)\n        score = iou_preds + (num_points - 2.5) * score_reweight\n        best_idx = torch.argmax(score, dim=1)\n        masks = masks[torch.arange(masks.shape[0]), best_idx, :, :].unsqueeze(1)\n        iou_preds = iou_preds[torch.arange(masks.shape[0]), best_idx].unsqueeze(1)\n\n        return masks, iou_preds\n\n    def forward(\n        self,\n        image_embeddings: torch.Tensor,\n        point_coords: torch.Tensor,\n        point_labels: torch.Tensor,\n        mask_input: torch.Tensor,\n        has_mask_input: torch.Tensor,\n        orig_im_size: torch.Tensor,\n    ):\n        sparse_embedding = self._embed_points(point_coords, point_labels)\n        dense_embedding = self._embed_masks(mask_input, has_mask_input)\n\n        masks, scores = self.model.mask_decoder.predict_masks(\n            image_embeddings=image_embeddings,\n            image_pe=self.model.prompt_encoder.get_dense_pe(),\n            sparse_prompt_embeddings=sparse_embedding,\n            dense_prompt_embeddings=dense_embedding,\n        )\n\n        if self.use_stability_score:\n            scores = calculate_stability_score(\n                masks, self.model.mask_threshold, self.stability_score_offset\n            )\n\n        if self.return_single_mask:\n            masks, scores = self.select_masks(masks, scores, point_coords.shape[1])\n\n        upscaled_masks = self.mask_postprocessing(masks, orig_im_size)\n\n        if self.return_extra_metrics:\n            stability_scores = calculate_stability_score(\n                upscaled_masks, self.model.mask_threshold, self.stability_score_offset\n            )\n            areas = (upscaled_masks > self.model.mask_threshold).sum(-1).sum(-1)\n            return upscaled_masks, scores, stability_scores, areas, masks\n\n        return upscaled_masks, scores, masks\n"
  },
  {
    "path": "modules/control/proc/segment_anything/utils/transforms.py",
    "content": "# Copyright (c) Meta Platforms, Inc. and affiliates.\n# All rights reserved.\n\n# This source code is licensed under the license found in the\n# LICENSE file in the root directory of this source tree.\n\nimport numpy as np\nimport torch\nfrom torch.nn import functional as F\nfrom torchvision.transforms.functional import resize, to_pil_image  # type: ignore\n\nfrom copy import deepcopy\nfrom typing import Tuple\n\n\nclass ResizeLongestSide:\n    \"\"\"\n    Resizes images to the longest side 'target_length', as well as provides\n    methods for resizing coordinates and boxes. Provides methods for\n    transforming both numpy array and batched torch tensors.\n    \"\"\"\n\n    def __init__(self, target_length: int) -> None:\n        self.target_length = target_length\n\n    def apply_image(self, image: np.ndarray) -> np.ndarray:\n        \"\"\"\n        Expects a numpy array with shape HxWxC in uint8 format.\n        \"\"\"\n        target_size = self.get_preprocess_shape(image.shape[0], image.shape[1], self.target_length)\n        return np.array(resize(to_pil_image(image), target_size))\n\n    def apply_coords(self, coords: np.ndarray, original_size: Tuple[int, ...]) -> np.ndarray:\n        \"\"\"\n        Expects a numpy array of length 2 in the final dimension. Requires the\n        original image size in (H, W) format.\n        \"\"\"\n        old_h, old_w = original_size\n        new_h, new_w = self.get_preprocess_shape(\n            original_size[0], original_size[1], self.target_length\n        )\n        coords = deepcopy(coords).astype(float)\n        coords[..., 0] = coords[..., 0] * (new_w / old_w)\n        coords[..., 1] = coords[..., 1] * (new_h / old_h)\n        return coords\n\n    def apply_boxes(self, boxes: np.ndarray, original_size: Tuple[int, ...]) -> np.ndarray:\n        \"\"\"\n        Expects a numpy array shape Bx4. Requires the original image size\n        in (H, W) format.\n        \"\"\"\n        boxes = self.apply_coords(boxes.reshape(-1, 2, 2), original_size)\n        return boxes.reshape(-1, 4)\n\n    def apply_image_torch(self, image: torch.Tensor) -> torch.Tensor:\n        \"\"\"\n        Expects batched images with shape BxCxHxW and float format. This\n        transformation may not exactly match apply_image. apply_image is\n        the transformation expected by the model.\n        \"\"\"\n        # Expects an image in BCHW format. May not exactly match apply_image.\n        target_size = self.get_preprocess_shape(image.shape[2], image.shape[3], self.target_length)\n        return F.interpolate(\n            image, target_size, mode=\"bilinear\", align_corners=False, antialias=True\n        )\n\n    def apply_coords_torch(\n        self, coords: torch.Tensor, original_size: Tuple[int, ...]\n    ) -> torch.Tensor:\n        \"\"\"\n        Expects a torch tensor with length 2 in the last dimension. Requires the\n        original image size in (H, W) format.\n        \"\"\"\n        old_h, old_w = original_size\n        new_h, new_w = self.get_preprocess_shape(\n            original_size[0], original_size[1], self.target_length\n        )\n        coords = deepcopy(coords).to(torch.float)\n        coords[..., 0] = coords[..., 0] * (new_w / old_w)\n        coords[..., 1] = coords[..., 1] * (new_h / old_h)\n        return coords\n\n    def apply_boxes_torch(\n        self, boxes: torch.Tensor, original_size: Tuple[int, ...]\n    ) -> torch.Tensor:\n        \"\"\"\n        Expects a torch tensor with shape Bx4. Requires the original image\n        size in (H, W) format.\n        \"\"\"\n        boxes = self.apply_coords_torch(boxes.reshape(-1, 2, 2), original_size)\n        return boxes.reshape(-1, 4)\n\n    @staticmethod\n    def get_preprocess_shape(oldh: int, oldw: int, long_side_length: int) -> Tuple[int, int]:\n        \"\"\"\n        Compute the output size given input size and target long side length.\n        \"\"\"\n        scale = long_side_length * 1.0 / max(oldh, oldw)\n        newh, neww = oldh * scale, oldw * scale\n        neww = int(neww + 0.5)\n        newh = int(newh + 0.5)\n        return (newh, neww)\n"
  },
  {
    "path": "modules/control/proc/shuffle.py",
    "content": "import warnings\nimport random\nimport cv2\nimport numpy as np\nfrom PIL import Image\n\nfrom modules.control.util import HWC3, img2mask, make_noise_disk, resize_image\n\n\nclass ContentShuffleDetector:\n    def __call__(self, input_image, h=None, w=None, f=None, detect_resolution=512, image_resolution=512, output_type=\"pil\", **kwargs):\n        if \"return_pil\" in kwargs:\n            warnings.warn(\"return_pil is deprecated. Use output_type instead.\", DeprecationWarning)\n            output_type = \"pil\" if kwargs[\"return_pil\"] else \"np\"\n        if type(output_type) is bool:\n            warnings.warn(\"Passing `True` or `False` to `output_type` is deprecated and will raise an error in future versions\")\n            if output_type:\n                output_type = \"pil\"\n\n        if not isinstance(input_image, np.ndarray):\n            input_image = np.array(input_image, dtype=np.uint8)\n\n        input_image = HWC3(input_image)\n        input_image = resize_image(input_image, detect_resolution)\n\n        H, W, _C = input_image.shape\n        if h is None:\n            h = H\n        if w is None:\n            w = W\n        if f is None:\n            f = 256\n        x = make_noise_disk(h, w, 1, f) * float(W - 1)\n        y = make_noise_disk(h, w, 1, f) * float(H - 1)\n        flow = np.concatenate([x, y], axis=2).astype(np.float32)\n        detected_map = cv2.remap(input_image, flow, None, cv2.INTER_LINEAR)\n\n        img = resize_image(input_image, image_resolution)\n        H, W, _C = img.shape\n\n        detected_map = cv2.resize(detected_map, (W, H), interpolation=cv2.INTER_LINEAR)\n\n        if output_type == \"pil\":\n            detected_map = Image.fromarray(detected_map)\n\n        return detected_map\n\n\nclass ColorShuffleDetector:\n    def __call__(self, img):\n        H, W, C = img.shape\n        F = np.random.randint(64, 384) # noqa\n        A = make_noise_disk(H, W, 3, F)\n        B = make_noise_disk(H, W, 3, F)\n        C = (A + B) / 2.0\n        A = (C + (A - C) * 3.0).clip(0, 1)\n        B = (C + (B - C) * 3.0).clip(0, 1)\n        L = img.astype(np.float32) / 255.0\n        Y = A * L + B * (1 - L)\n        Y -= np.min(Y, axis=(0, 1), keepdims=True)\n        Y /= np.maximum(np.max(Y, axis=(0, 1), keepdims=True), 1e-5)\n        Y *= 255.0\n        return Y.clip(0, 255).astype(np.uint8)\n\n\nclass GrayDetector:\n    def __call__(self, img):\n        eps = 1e-5\n        X = img.astype(np.float32)\n        r, g, b = X[:, :, 0], X[:, :, 1], X[:, :, 2]\n        kr, kg, kb = [random.random() + eps for _ in range(3)]\n        ks = kr + kg + kb\n        kr /= ks\n        kg /= ks\n        kb /= ks\n        Y = r * kr + g * kg + b * kb\n        Y = np.stack([Y] * 3, axis=2)\n        return Y.clip(0, 255).astype(np.uint8)\n\n\nclass DownSampleDetector:\n    def __call__(self, img, level=3, k=16.0):\n        h = img.astype(np.float32)\n        for _ in range(level):\n            h += np.random.normal(loc=0.0, scale=k, size=h.shape) # noqa\n            h = cv2.pyrDown(h)\n        for _ in range(level):\n            h = cv2.pyrUp(h)\n            h += np.random.normal(loc=0.0, scale=k, size=h.shape) # noqa\n        return h.clip(0, 255).astype(np.uint8)\n\n\nclass Image2MaskShuffleDetector:\n    def __init__(self, resolution=(640, 512)):\n        self.H, self.W = resolution\n\n    def __call__(self, img):\n        m = img2mask(img, self.H, self.W)\n        m *= 255.0\n        return m.clip(0, 255).astype(np.uint8)\n"
  },
  {
    "path": "modules/control/proc/zoe/LICENSE",
    "content": "MIT License\n\nCopyright (c) 2022 Intelligent Systems Lab Org\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n"
  },
  {
    "path": "modules/control/proc/zoe/__init__.py",
    "content": "import os\n\nimport cv2\nimport numpy as np\nimport torch\nfrom einops import rearrange\nfrom huggingface_hub import hf_hub_download\nfrom PIL import Image\nimport safetensors\nfrom modules import devices\nfrom modules.shared import opts\nfrom modules.control.util import HWC3, resize_image\nfrom .zoedepth.models.zoedepth.zoedepth_v1 import ZoeDepth\nfrom .zoedepth.models.zoedepth_nk.zoedepth_nk_v1 import ZoeDepthNK\nfrom .zoedepth.utils.config import get_config\n\n\nclass ZoeDetector:\n    def __init__(self, model):\n        self.model = model\n\n    @classmethod\n    def from_pretrained(cls, pretrained_model_or_path, model_type=\"zoedepth\", filename=None, cache_dir=None, local_files_only=False):\n        filename = filename or \"ZoeD_M12_N.pt\"\n        if os.path.isdir(pretrained_model_or_path):\n            model_path = os.path.join(pretrained_model_or_path, filename)\n        else:\n            model_path = hf_hub_download(pretrained_model_or_path, filename, cache_dir=cache_dir, local_files_only=local_files_only)\n        if model_type == \"zoedepth\":\n            model_cls = ZoeDepth\n        elif model_type == \"zoedepth_nk\":\n            model_cls = ZoeDepthNK\n        else:\n            raise ValueError(f\"ZoeDepth unknown model type {model_type}\")\n        conf = get_config(model_type, \"infer\")\n        model = model_cls.build_from_config(conf)\n        # model.load_state_dict(torch.load(model_path, map_location=torch.device('cpu'))['model'])\n        if model_path.lower().endswith('.safetensors'):\n            model_dict = safetensors.torch.load_file(model_path, device='cpu')\n        else:\n            model_dict = torch.load(model_path, map_location=torch.device('cpu'))\n        if hasattr(model_dict, 'model'):\n            model_dict = model_dict['model']\n        model.load_state_dict(model_dict, strict=False)\n        # timm compatibility issue <https://github.com/isl-org/ZoeDepth/issues/82>\n        for b in model.core.core.pretrained.model.blocks:\n            b.drop_path = torch.nn.Identity()\n        model.eval()\n        return cls(model)\n\n    def to(self, device):\n        self.model.to(device)\n        return self\n\n    def __call__(self, input_image, detect_resolution=512, image_resolution=512, output_type=None, gamma_corrected=False):\n        self.model.to(devices.device)\n        device = next(iter(self.model.parameters())).device\n        if not isinstance(input_image, np.ndarray):\n            input_image = np.array(input_image, dtype=np.uint8)\n            output_type = output_type or \"pil\"\n        else:\n            output_type = output_type or \"np\"\n        input_image = HWC3(input_image)\n        input_image = resize_image(input_image, detect_resolution)\n        assert input_image.ndim == 3\n        image_depth = input_image\n        image_depth = torch.from_numpy(image_depth).float().to(device)\n        image_depth = image_depth / 255.0\n        image_depth = rearrange(image_depth, 'h w c -> 1 c h w')\n        depth = self.model.infer(image_depth)\n        if opts.control_move_processor:\n            self.model.to('cpu')\n        depth = depth[0, 0].cpu().numpy()\n        vmin = np.percentile(depth, 2)\n        vmax = np.percentile(depth, 85)\n        depth -= vmin\n        depth /= vmax - vmin\n        depth = 1.0 - depth\n        if gamma_corrected:\n            depth = np.power(depth, 2.2)\n        depth_image = (depth * 255.0).clip(0, 255).astype(np.uint8)\n        detected_map = depth_image\n        detected_map = HWC3(detected_map)\n        img = resize_image(input_image, image_resolution)\n        H, W, _C = img.shape\n        detected_map = cv2.resize(detected_map, (W, H), interpolation=cv2.INTER_LINEAR)\n        if output_type == \"pil\":\n            detected_map = Image.fromarray(detected_map)\n        return detected_map\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/__init__.py",
    "content": ""
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/__init__.py",
    "content": "# MIT License\n\n# Copyright (c) 2022 Intelligent Systems Lab Org\n\n# Permission is hereby granted, free of charge, to any person obtaining a copy\n# of this software and associated documentation files (the \"Software\"), to deal\n# in the Software without restriction, including without limitation the rights\n# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n# copies of the Software, and to permit persons to whom the Software is\n# furnished to do so, subject to the following conditions:\n\n# The above copyright notice and this permission notice shall be included in all\n# copies or substantial portions of the Software.\n\n# THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n# SOFTWARE.\n\n# File author: Shariq Farooq Bhat\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/base_models/__init__.py",
    "content": "# MIT License\n\n# Copyright (c) 2022 Intelligent Systems Lab Org\n\n# Permission is hereby granted, free of charge, to any person obtaining a copy\n# of this software and associated documentation files (the \"Software\"), to deal\n# in the Software without restriction, including without limitation the rights\n# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n# copies of the Software, and to permit persons to whom the Software is\n# furnished to do so, subject to the following conditions:\n\n# The above copyright notice and this permission notice shall be included in all\n# copies or substantial portions of the Software.\n\n# THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n# SOFTWARE.\n\n# File author: Shariq Farooq Bhat\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/base_models/midas.py",
    "content": "# MIT License\nimport os\n\n# Copyright (c) 2022 Intelligent Systems Lab Org\n\n# Permission is hereby granted, free of charge, to any person obtaining a copy\n# of this software and associated documentation files (the \"Software\"), to deal\n# in the Software without restriction, including without limitation the rights\n# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n# copies of the Software, and to permit persons to whom the Software is\n# furnished to do so, subject to the following conditions:\n\n# The above copyright notice and this permission notice shall be included in all\n# copies or substantial portions of the Software.\n\n# THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n# SOFTWARE.\n\n# File author: Shariq Farooq Bhat\n\nimport torch\nimport torch.nn as nn\nimport numpy as np\nfrom torchvision.transforms import Normalize\n\n\ndef denormalize(x):\n    \"\"\"Reverses the imagenet normalization applied to the input.\n\n    Args:\n        x (torch.Tensor - shape(N,3,H,W)): input tensor\n\n    Returns:\n        torch.Tensor - shape(N,3,H,W): Denormalized input\n    \"\"\"\n    mean = torch.Tensor([0.485, 0.456, 0.406]).view(1, 3, 1, 1).to(x.device)\n    std = torch.Tensor([0.229, 0.224, 0.225]).view(1, 3, 1, 1).to(x.device)\n    return x * std + mean\n\ndef get_activation(name, bank):\n    def hook(model, input, output):\n        bank[name] = output\n    return hook\n\n\nclass Resize(object):\n    \"\"\"Resize sample to given size (width, height).\n    \"\"\"\n\n    def __init__(\n        self,\n        width,\n        height,\n        resize_target=True,\n        keep_aspect_ratio=False,\n        ensure_multiple_of=1,\n        resize_method=\"lower_bound\",\n    ):\n        \"\"\"Init.\n        Args:\n            width (int): desired output width\n            height (int): desired output height\n            resize_target (bool, optional):\n                True: Resize the full sample (image, mask, target).\n                False: Resize image only.\n                Defaults to True.\n            keep_aspect_ratio (bool, optional):\n                True: Keep the aspect ratio of the input sample.\n                Output sample might not have the given width and height, and\n                resize behaviour depends on the parameter 'resize_method'.\n                Defaults to False.\n            ensure_multiple_of (int, optional):\n                Output width and height is constrained to be multiple of this parameter.\n                Defaults to 1.\n            resize_method (str, optional):\n                \"lower_bound\": Output will be at least as large as the given size.\n                \"upper_bound\": Output will be at max as large as the given size. (Output size might be smaller than given size.)\n                \"minimal\": Scale as least as possible.  (Output size might be smaller than given size.)\n                Defaults to \"lower_bound\".\n        \"\"\"\n        # print(\"Params passed to Resize transform:\")\n        # print(\"\\twidth: \", width)\n        # print(\"\\theight: \", height)\n        # print(\"\\tresize_target: \", resize_target)\n        # print(\"\\tkeep_aspect_ratio: \", keep_aspect_ratio)\n        # print(\"\\tensure_multiple_of: \", ensure_multiple_of)\n        # print(\"\\tresize_method: \", resize_method)\n\n        self.__width = width\n        self.__height = height\n\n        self.__keep_aspect_ratio = keep_aspect_ratio\n        self.__multiple_of = ensure_multiple_of\n        self.__resize_method = resize_method\n\n    def constrain_to_multiple_of(self, x, min_val=0, max_val=None):\n        y = (np.round(x / self.__multiple_of) * self.__multiple_of).astype(int)\n\n        if max_val is not None and y > max_val:\n            y = (np.floor(x / self.__multiple_of)\n                 * self.__multiple_of).astype(int)\n\n        if y < min_val:\n            y = (np.ceil(x / self.__multiple_of)\n                 * self.__multiple_of).astype(int)\n\n        return y\n\n    def get_size(self, width, height):\n        # determine new height and width\n        scale_height = self.__height / height\n        scale_width = self.__width / width\n\n        if self.__keep_aspect_ratio:\n            if self.__resize_method == \"lower_bound\":\n                # scale such that output size is lower bound\n                if scale_width > scale_height:\n                    # fit width\n                    scale_height = scale_width\n                else:\n                    # fit height\n                    scale_width = scale_height\n            elif self.__resize_method == \"upper_bound\":\n                # scale such that output size is upper bound\n                if scale_width < scale_height:\n                    # fit width\n                    scale_height = scale_width\n                else:\n                    # fit height\n                    scale_width = scale_height\n            elif self.__resize_method == \"minimal\":\n                # scale as least as possbile\n                if abs(1 - scale_width) < abs(1 - scale_height):\n                    # fit width\n                    scale_height = scale_width\n                else:\n                    # fit height\n                    scale_width = scale_height\n            else:\n                raise ValueError(\n                    f\"resize_method {self.__resize_method} not implemented\"\n                )\n\n        if self.__resize_method == \"lower_bound\":\n            new_height = self.constrain_to_multiple_of(\n                scale_height * height, min_val=self.__height\n            )\n            new_width = self.constrain_to_multiple_of(\n                scale_width * width, min_val=self.__width\n            )\n        elif self.__resize_method == \"upper_bound\":\n            new_height = self.constrain_to_multiple_of(\n                scale_height * height, max_val=self.__height\n            )\n            new_width = self.constrain_to_multiple_of(\n                scale_width * width, max_val=self.__width\n            )\n        elif self.__resize_method == \"minimal\":\n            new_height = self.constrain_to_multiple_of(scale_height * height)\n            new_width = self.constrain_to_multiple_of(scale_width * width)\n        else:\n            raise ValueError(\n                f\"resize_method {self.__resize_method} not implemented\")\n\n        return (new_width, new_height)\n\n    def __call__(self, x):\n        width, height = self.get_size(*x.shape[-2:][::-1])\n        return nn.functional.interpolate(x, (int(width), int(height)), mode='bilinear', align_corners=True)\n\nclass PrepForMidas(object):\n    def __init__(self, resize_mode=\"minimal\", keep_aspect_ratio=True, img_size=384, do_resize=True):\n        if isinstance(img_size, int):\n            img_size = (img_size, img_size)\n        net_h, net_w = img_size\n        self.normalization = Normalize(\n            mean=[0.5, 0.5, 0.5], std=[0.5, 0.5, 0.5])\n        self.resizer = Resize(net_w, net_h, keep_aspect_ratio=keep_aspect_ratio, ensure_multiple_of=32, resize_method=resize_mode) \\\n            if do_resize else nn.Identity()\n\n    def __call__(self, x):\n        return self.normalization(self.resizer(x))\n\n\nclass MidasCore(nn.Module):\n    def __init__(self, midas, trainable=False, fetch_features=True, layer_names=('out_conv', 'l4_rn', 'r4', 'r3', 'r2', 'r1'), freeze_bn=False, keep_aspect_ratio=True,\n                 img_size=384, **kwargs):\n        \"\"\"Midas Base model used for multi-scale feature extraction.\n\n        Args:\n            midas (torch.nn.Module): Midas model.\n            trainable (bool, optional): Train midas model. Defaults to False.\n            fetch_features (bool, optional): Extract multi-scale features. Defaults to True.\n            layer_names (tuple, optional): Layers used for feature extraction. Order = (head output features, last layer features, ...decoder features). Defaults to ('out_conv', 'l4_rn', 'r4', 'r3', 'r2', 'r1').\n            freeze_bn (bool, optional): Freeze BatchNorm. Generally results in better finetuning performance. Defaults to False.\n            keep_aspect_ratio (bool, optional): Keep the aspect ratio of input images while resizing. Defaults to True.\n            img_size (int, tuple, optional): Input resolution. Defaults to 384.\n        \"\"\"\n        super().__init__()\n        self.core = midas\n        self.output_channels = None\n        self.core_out = {}\n        self.trainable = trainable\n        self.fetch_features = fetch_features\n        # midas.scratch.output_conv = nn.Identity()\n        self.handles = []\n        # self.layer_names = ['out_conv','l4_rn', 'r4', 'r3', 'r2', 'r1']\n        self.layer_names = layer_names\n\n        self.set_trainable(trainable)\n        self.set_fetch_features(fetch_features)\n\n        self.prep = PrepForMidas(keep_aspect_ratio=keep_aspect_ratio,\n                                 img_size=img_size, do_resize=kwargs.get('do_resize', True))\n\n        if freeze_bn:\n            self.freeze_bn()\n\n    def set_trainable(self, trainable):\n        self.trainable = trainable\n        if trainable:\n            self.unfreeze()\n        else:\n            self.freeze()\n        return self\n\n    def set_fetch_features(self, fetch_features):\n        self.fetch_features = fetch_features\n        if fetch_features:\n            if len(self.handles) == 0:\n                self.attach_hooks(self.core)\n        else:\n            self.remove_hooks()\n        return self\n\n    def freeze(self):\n        for p in self.parameters():\n            p.requires_grad = False\n        self.trainable = False\n        return self\n\n    def unfreeze(self):\n        for p in self.parameters():\n            p.requires_grad = True\n        self.trainable = True\n        return self\n\n    def freeze_bn(self):\n        for m in self.modules():\n            if isinstance(m, nn.BatchNorm2d):\n                m.eval()\n        return self\n\n    def forward(self, x, denorm=False, return_rel_depth=False):\n        if denorm:\n            x = denormalize(x)\n        x = self.prep(x)\n        # print(\"Shape after prep: \", x.shape)\n\n        with torch.set_grad_enabled(self.trainable):\n\n            # print(\"Input size to Midascore\", x.shape)\n            rel_depth = self.core(x)\n            # print(\"Output from midas shape\", rel_depth.shape)\n            if not self.fetch_features:\n                return rel_depth\n        out = [self.core_out[k] for k in self.layer_names]\n\n        if return_rel_depth:\n            return rel_depth, out\n        return out\n\n    def get_rel_pos_params(self):\n        for name, p in self.core.pretrained.named_parameters():\n            if \"relative_position\" in name:\n                yield p\n\n    def get_enc_params_except_rel_pos(self):\n        for name, p in self.core.pretrained.named_parameters():\n            if \"relative_position\" not in name:\n                yield p\n\n    def freeze_encoder(self, freeze_rel_pos=False):\n        if freeze_rel_pos:\n            for p in self.core.pretrained.parameters():\n                p.requires_grad = False\n        else:\n            for p in self.get_enc_params_except_rel_pos():\n                p.requires_grad = False\n        return self\n\n    def attach_hooks(self, midas):\n        if len(self.handles) > 0:\n            self.remove_hooks()\n        if \"out_conv\" in self.layer_names:\n            self.handles.append(list(midas.scratch.output_conv.children())[\n                                3].register_forward_hook(get_activation(\"out_conv\", self.core_out)))\n        if \"r4\" in self.layer_names:\n            self.handles.append(midas.scratch.refinenet4.register_forward_hook(\n                get_activation(\"r4\", self.core_out)))\n        if \"r3\" in self.layer_names:\n            self.handles.append(midas.scratch.refinenet3.register_forward_hook(\n                get_activation(\"r3\", self.core_out)))\n        if \"r2\" in self.layer_names:\n            self.handles.append(midas.scratch.refinenet2.register_forward_hook(\n                get_activation(\"r2\", self.core_out)))\n        if \"r1\" in self.layer_names:\n            self.handles.append(midas.scratch.refinenet1.register_forward_hook(\n                get_activation(\"r1\", self.core_out)))\n        if \"l4_rn\" in self.layer_names:\n            self.handles.append(midas.scratch.layer4_rn.register_forward_hook(\n                get_activation(\"l4_rn\", self.core_out)))\n\n        return self\n\n    def remove_hooks(self):\n        for h in self.handles:\n            h.remove()\n        return self\n\n    def __del__(self):\n        self.remove_hooks()\n\n    def set_output_channels(self, model_type):\n        self.output_channels = MIDAS_SETTINGS[model_type]\n\n    @staticmethod\n    def build(midas_model_type=\"DPT_BEiT_L_384\", train_midas=False, use_pretrained_midas=True, fetch_features=False, freeze_bn=True, force_keep_ar=False, force_reload=False, **kwargs):\n        if midas_model_type not in MIDAS_SETTINGS:\n            raise ValueError(\n                f\"Invalid model type: {midas_model_type}. Must be one of {list(MIDAS_SETTINGS.keys())}\")\n        if \"img_size\" in kwargs:\n            kwargs = MidasCore.parse_img_size(kwargs)\n        img_size = kwargs.pop(\"img_size\", [384, 384])\n        # print(\"img_size\", img_size)\n        midas_path = os.path.join(os.path.dirname(__file__), 'midas_repo')\n        midas = torch.hub.load(midas_path, midas_model_type,\n                               pretrained=use_pretrained_midas, force_reload=force_reload, source='local')\n        kwargs.update({'keep_aspect_ratio': force_keep_ar})\n        midas_core = MidasCore(midas, trainable=train_midas, fetch_features=fetch_features,\n                               freeze_bn=freeze_bn, img_size=img_size, **kwargs)\n        midas_core.set_output_channels(midas_model_type)\n        return midas_core\n\n    @staticmethod\n    def build_from_config(config):\n        return MidasCore.build(**config)\n\n    @staticmethod\n    def parse_img_size(config):\n        assert 'img_size' in config\n        if isinstance(config['img_size'], str):\n            assert \",\" in config['img_size'], \"img_size should be a string with comma separated img_size=H,W\"\n            config['img_size'] = list(map(int, config['img_size'].split(\",\")))\n            assert len(\n                config['img_size']) == 2, \"img_size should be a string with comma separated img_size=H,W\"\n        elif isinstance(config['img_size'], int):\n            config['img_size'] = [config['img_size'], config['img_size']]\n        else:\n            assert isinstance(config['img_size'], list) and len(\n                config['img_size']) == 2, \"img_size should be a list of H,W\"\n        return config\n\n\nnchannels2models = {\n    tuple([256]*5): [\"DPT_BEiT_L_384\", \"DPT_BEiT_L_512\", \"DPT_BEiT_B_384\", \"DPT_SwinV2_L_384\", \"DPT_SwinV2_B_384\", \"DPT_SwinV2_T_256\", \"DPT_Large\", \"DPT_Hybrid\"],\n    (512, 256, 128, 64, 64): [\"MiDaS_small\"]\n}\n\n# Model name to number of output channels\nMIDAS_SETTINGS = {m: k for k, v in nchannels2models.items()\n                  for m in v\n                  }\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/base_models/midas_repo/LICENSE",
    "content": "MIT License\n\nCopyright (c) 2019 Intel ISL (Intel Intelligent Systems Lab)\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/base_models/midas_repo/README.md",
    "content": "## Towards Robust Monocular Depth Estimation: Mixing Datasets for Zero-shot Cross-dataset Transfer\n\nThis repository contains code to compute depth from a single image. It accompanies our [paper](https://arxiv.org/abs/1907.01341v3):\n\n>Towards Robust Monocular Depth Estimation: Mixing Datasets for Zero-shot Cross-dataset Transfer\nRené Ranftl, Katrin Lasinger, David Hafner, Konrad Schindler, Vladlen Koltun\n\n\nand our [preprint](https://arxiv.org/abs/2103.13413):\n\n> Vision Transformers for Dense Prediction\n> René Ranftl, Alexey Bochkovskiy, Vladlen Koltun\n\n\nMiDaS was trained on up to 12 datasets (ReDWeb, DIML, Movies, MegaDepth, WSVD, TartanAir, HRWSI, ApolloScape, BlendedMVS, IRS, KITTI, NYU Depth V2) with\nmulti-objective optimization.\nThe original model that was trained on 5 datasets  (`MIX 5` in the paper) can be found [here](https://github.com/isl-org/MiDaS/releases/tag/v2).\nThe figure below shows an overview of the different MiDaS models; the bubble size scales with number of parameters.\n\n![](figures/Improvement_vs_FPS.png)\n\n### Setup\n\n1) Pick one or more models and download the corresponding weights to the `weights` folder:\n\nMiDaS 3.1\n- For highest quality: [dpt_beit_large_512](https://github.com/isl-org/MiDaS/releases/download/v3_1/dpt_beit_large_512.pt)\n- For moderately less quality, but better speed-performance trade-off: [dpt_swin2_large_384](https://github.com/isl-org/MiDaS/releases/download/v3_1/dpt_swin2_large_384.pt)\n- For embedded devices: [dpt_swin2_tiny_256](https://github.com/isl-org/MiDaS/releases/download/v3_1/dpt_swin2_tiny_256.pt), [dpt_levit_224](https://github.com/isl-org/MiDaS/releases/download/v3_1/dpt_levit_224.pt)\n- For inference on Intel CPUs, OpenVINO may be used for the small legacy model: openvino_midas_v21_small [.xml](https://github.com/isl-org/MiDaS/releases/download/v3_1/openvino_midas_v21_small_256.xml), [.bin](https://github.com/isl-org/MiDaS/releases/download/v3_1/openvino_midas_v21_small_256.bin)\n\nMiDaS 3.0: Legacy transformer models [dpt_large_384](https://github.com/isl-org/MiDaS/releases/download/v3/dpt_large_384.pt) and [dpt_hybrid_384](https://github.com/isl-org/MiDaS/releases/download/v3/dpt_hybrid_384.pt)\n\nMiDaS 2.1: Legacy convolutional models [midas_v21_384](https://github.com/isl-org/MiDaS/releases/download/v2_1/midas_v21_384.pt) and [midas_v21_small_256](https://github.com/isl-org/MiDaS/releases/download/v2_1/midas_v21_small_256.pt)\n\n1) Set up dependencies:\n\n    ```shell\n    conda env create -f environment.yaml\n    conda activate midas-py310\n    ```\n\n#### optional\n\nFor the Next-ViT model, execute\n\n```shell\ngit submodule add https://github.com/isl-org/Next-ViT midas/external/next_vit\n```\n\nFor the OpenVINO model, install\n\n```shell\npip install openvino\n```\n\n### Usage\n\n1) Place one or more input images in the folder `input`.\n\n2) Run the model with\n\n   ```shell\n   python run.py --model_type <model_type> --input_path input --output_path output\n   ```\n   where ```<model_type>``` is chosen from [dpt_beit_large_512](#model_type), [dpt_beit_large_384](#model_type),\n   [dpt_beit_base_384](#model_type), [dpt_swin2_large_384](#model_type), [dpt_swin2_base_384](#model_type),\n   [dpt_swin2_tiny_256](#model_type), [dpt_swin_large_384](#model_type), [dpt_next_vit_large_384](#model_type),\n   [dpt_levit_224](#model_type), [dpt_large_384](#model_type), [dpt_hybrid_384](#model_type),\n   [midas_v21_384](#model_type), [midas_v21_small_256](#model_type), [openvino_midas_v21_small_256](#model_type).\n\n3) The resulting depth maps are written to the `output` folder.\n\n#### optional\n\n1) By default, the inference resizes the height of input images to the size of a model to fit into the encoder. This\n   size is given by the numbers in the model names of the [accuracy table](#accuracy). Some models do not only support a single\n   inference height but a range of different heights. Feel free to explore different heights by appending the extra\n   command line argument `--height`. Unsupported height values will throw an error. Note that using this argument may\n   decrease the model accuracy.\n2) By default, the inference keeps the aspect ratio of input images when feeding them into the encoder if this is\n   supported by a model (all models except for Swin, Swin2, LeViT). In order to resize to a square resolution,\n   disregarding the aspect ratio while preserving the height, use the command line argument `--square`.\n\n#### via Camera\n\n   If you want the input images to be grabbed from the camera and shown in a window, leave the input and output paths\n   away and choose a model type as shown above:\n\n   ```shell\n   python run.py --model_type <model_type> --side\n   ```\n\n   The argument `--side` is optional and causes both the input RGB image and the output depth map to be shown\n   side-by-side for comparison.\n\n#### via Docker\n\n1) Make sure you have installed Docker and the\n   [NVIDIA Docker runtime](https://github.com/NVIDIA/nvidia-docker/wiki/Installation-\\(Native-GPU-Support\\)).\n\n2) Build the Docker image:\n\n    ```shell\n    docker build -t midas .\n    ```\n\n3) Run inference:\n\n    ```shell\n    docker run --rm --gpus all -v $PWD/input:/opt/MiDaS/input -v $PWD/output:/opt/MiDaS/output -v $PWD/weights:/opt/MiDaS/weights midas\n    ```\n\n   This command passes through all of your NVIDIA GPUs to the container, mounts the\n   `input` and `output` directories and then runs the inference.\n\n#### via PyTorch Hub\n\nThe pretrained model is also available on [PyTorch Hub](https://pytorch.org/hub/intelisl_midas_v2/)\n\n#### via TensorFlow or ONNX\n\nSee [README](https://github.com/isl-org/MiDaS/tree/master/tf) in the `tf` subdirectory.\n\nCurrently only supports MiDaS v2.1.\n\n\n#### via Mobile (iOS / Android)\n\nSee [README](https://github.com/isl-org/MiDaS/tree/master/mobile) in the `mobile` subdirectory.\n\n#### via ROS1 (Robot Operating System)\n\nSee [README](https://github.com/isl-org/MiDaS/tree/master/ros) in the `ros` subdirectory.\n\nCurrently only supports MiDaS v2.1. DPT-based models to be added.\n\n\n### Accuracy\n\nWe provide a **zero-shot error** $\\epsilon_d$ which is evaluated for 6 different datasets\n(see [paper](https://arxiv.org/abs/1907.01341v3)). **Lower error values are better**.\n$\\color{green}{\\textsf{Overall model quality is represented by the improvement}}$ ([Imp.](#improvement)) with respect to\nMiDaS 3.0 DPT<sub>L-384</sub>. The models are grouped by the height used for inference, whereas the square training resolution is given by\nthe numbers in the model names. The table also shows the **number of parameters** (in millions) and the\n**frames per second** for inference at the training resolution (for GPU RTX 3090):\n\n| MiDaS Model                                                                                                           | DIW </br><sup>WHDR</sup> | Eth3d </br><sup>AbsRel</sup> | Sintel </br><sup>AbsRel</sup> |   TUM </br><sup>δ1</sup> | KITTI </br><sup>δ1</sup> | NYUv2 </br><sup>δ1</sup> | $\\color{green}{\\textsf{Imp.}}$ </br><sup>%</sup> | Par.</br><sup>M</sup> | FPS</br><sup>&nbsp;</sup> |\n|-----------------------------------------------------------------------------------------------------------------------|-------------------------:|-----------------------------:|------------------------------:|-------------------------:|-------------------------:|-------------------------:|-------------------------------------------------:|----------------------:|--------------------------:|\n| **Inference height 512**                                                                                              |                          |                              |                               |                          |                          |                          |                                                  |                       |                           |\n| [v3.1 BEiT<sub>L-512</sub>](https://github.com/isl-org/MiDaS/releases/download/v3_1/dpt_beit_large_512.pt)                                                                                     |                   0.1137 |                       0.0659 |                        0.2366 |                 **6.13** |                   11.56* |                **1.86*** |                     $\\color{green}{\\textsf{19}}$ |               **345** |                   **5.7** |\n| [v3.1 BEiT<sub>L-512</sub>](https://github.com/isl-org/MiDaS/releases/download/v3_1/dpt_beit_large_512.pt)$\\tiny{\\square}$                                                                     |               **0.1121** |                   **0.0614** |                    **0.2090** |                     6.46 |                **5.00*** |                    1.90* |                     $\\color{green}{\\textsf{34}}$ |               **345** |                   **5.7** |\n|                                                                                                                       |                          |                              |                               |                          |                          |                          |                                                  |                       |                           |\n| **Inference height 384**                                                                                              |                          |                              |                               |                          |                          |                          |                                                  |                       |                           |\n| [v3.1 BEiT<sub>L-512</sub>](https://github.com/isl-org/MiDaS/releases/download/v3_1/dpt_beit_large_512.pt)                                                                                     |                   0.1245 |                       0.0681 |                    **0.2176** |                 **6.13** |                    6.28* |                **2.16*** |                     $\\color{green}{\\textsf{28}}$ |                   345 |                        12 |\n| [v3.1 Swin2<sub>L-384</sub>](https://github.com/isl-org/MiDaS/releases/download/v3_1/dpt_swin2_large_384.pt)$\\tiny{\\square}$                                                                    |                   0.1106 |                       0.0732 |                        0.2442 |                     8.87 |                **5.84*** |                    2.92* |                     $\\color{green}{\\textsf{22}}$ |                   213 |                        41 |\n| [v3.1 Swin2<sub>B-384</sub>](https://github.com/isl-org/MiDaS/releases/download/v3_1/dpt_swin2_base_384.pt)$\\tiny{\\square}$                                                                    |                   0.1095 |                       0.0790 |                        0.2404 |                     8.93 |                    5.97* |                    3.28* |                     $\\color{green}{\\textsf{22}}$ |                   102 |                        39 |\n| [v3.1 Swin<sub>L-384</sub>](https://github.com/isl-org/MiDaS/releases/download/v3_1/dpt_swin_large_384.pt)$\\tiny{\\square}$                                                                     |                   0.1126 |                       0.0853 |                        0.2428 |                     8.74 |                    6.60* |                    3.34* |                     $\\color{green}{\\textsf{17}}$ |                   213 |                        49 |\n| [v3.1 BEiT<sub>L-384</sub>](https://github.com/isl-org/MiDaS/releases/download/v3_1/dpt_beit_large_384.pt)                                                                                     |                   0.1239 |                   **0.0667** |                        0.2545 |                     7.17 |                    9.84* |                    2.21* |                     $\\color{green}{\\textsf{17}}$ |                   344 |                        13 |\n| [v3.1 Next-ViT<sub>L-384</sub>](https://github.com/isl-org/MiDaS/releases/download/v3_1/dpt_next_vit_large_384.pt)                                                                                 |               **0.1031** |                       0.0954 |                        0.2295 |                     9.21 |                    6.89* |                    3.47* |                     $\\color{green}{\\textsf{16}}$ |                **72** |                        30 |\n| [v3.1 BEiT<sub>B-384</sub>](https://github.com/isl-org/MiDaS/releases/download/v3_1/dpt_beit_base_384.pt)                                                                                     |                   0.1159 |                       0.0967 |                        0.2901 |                     9.88 |                   26.60* |                    3.91* |                    $\\color{green}{\\textsf{-31}}$ |                   112 |                        31 |\n| [v3.0 DPT<sub>L-384</sub>](https://github.com/isl-org/MiDaS/releases/download/v3/dpt_large_384.pt)        |                   0.1082 |                       0.0888 |                        0.2697 |                     9.97 |                     8.46 |                     8.32 |                      $\\color{green}{\\textsf{0}}$ |                   344 |                    **61** |\n| [v3.0 DPT<sub>H-384</sub>](https://github.com/isl-org/MiDaS/releases/download/v3/dpt_hybrid_384.pt)       |                   0.1106 |                       0.0934 |                        0.2741 |                    10.89 |                    11.56 |                     8.69 |                    $\\color{green}{\\textsf{-10}}$ |                   123 |                        50 |\n| [v2.1 Large<sub>384</sub>](https://github.com/isl-org/MiDaS/releases/download/v2_1/midas_v21_384.pt)       |                   0.1295 |                       0.1155 |                        0.3285 |                    12.51 |                    16.08 |                     8.71 |                    $\\color{green}{\\textsf{-32}}$ |                   105 |                        47 |\n|                                                                                                                       |                          |                              |                               |                          |                          |                          |                                                  |                       |                           |\n| **Inference height 256**                                                                                              |                          |                              |                               |                          |                          |                          |                                                  |                       |                           |\n| [v3.1 Swin2<sub>T-256</sub>](https://github.com/isl-org/MiDaS/releases/download/v3_1/dpt_swin2_tiny_256.pt)$\\tiny{\\square}$                                                                    |               **0.1211** |                   **0.1106** |                    **0.2868** |                **13.43** |               **10.13*** |                **5.55*** |                    $\\color{green}{\\textsf{-11}}$ |                    42 |                        64 |\n| [v2.1 Small<sub>256</sub>](https://github.com/isl-org/MiDaS/releases/download/v2_1/midas_v21_small_256.pt) |                   0.1344 |                       0.1344 |                        0.3370 |                    14.53 |                    29.27 |                    13.43 |                    $\\color{green}{\\textsf{-76}}$ |                **21** |                    **90** |\n|                                                                                                                       |                          |                              |                               |                          |                          |                          |                                                  |                       |                           |\n| **Inference height 224**                                                                                              |                          |                              |                               |                          |                          |                          |                                                  |                       |                           |\n| [v3.1 LeViT<sub>224</sub>](https://github.com/isl-org/MiDaS/releases/download/v3_1/dpt_levit_224.pt)$\\tiny{\\square}$                                                                      |               **0.1314** |                   **0.1206** |                    **0.3148** |                **18.21** |               **15.27*** |                **8.64*** |                    $\\color{green}{\\textsf{-40}}$ |                **51** |                    **73** |\n\n&ast; No zero-shot error, because models are also trained on KITTI and NYU Depth V2\\\n$\\square$ Validation performed at **square resolution**, either because the transformer encoder backbone of a model\ndoes not support non-square resolutions (Swin, Swin2, LeViT) or for comparison with these models. All other\nvalidations keep the aspect ratio. A difference in resolution limits the comparability of the zero-shot error and the\nimprovement, because these quantities are averages over the pixels of an image and do not take into account the\nadvantage of more details due to a higher resolution.\\\nBest values per column and same validation height in bold\n\n#### Improvement\n\nThe improvement in the above table is defined as the relative zero-shot error with respect to MiDaS v3.0\nDPT<sub>L-384</sub> and averaging over the datasets. So, if $\\epsilon_d$ is the zero-shot error for dataset $d$, then\nthe $\\color{green}{\\textsf{improvement}}$ is given by $100(1-(1/6)\\sum_d\\epsilon_d/\\epsilon_{d,\\rm{DPT_{L-384}}})$%.\n\nNote that the improvements of 10% for MiDaS v2.0 &rarr; v2.1 and 21% for MiDaS v2.1 &rarr; v3.0 are not visible from the\nimprovement column (Imp.) in the table but would require an evaluation with respect to MiDaS v2.1 Large<sub>384</sub>\nand v2.0 Large<sub>384</sub> respectively instead of v3.0 DPT<sub>L-384</sub>.\n\n### Depth map comparison\n\nZoom in for better visibility\n![](figures/Comparison.png)\n\n### Speed on Camera Feed\n\nTest configuration\n- Windows 10\n- 11th Gen Intel Core i7-1185G7 3.00GHz\n- 16GB RAM\n- Camera resolution 640x480\n- openvino_midas_v21_small_256\n\nSpeed: 22 FPS\n\n### Changelog\n\n* [Dec 2022] Released MiDaS v3.1:\n    - New models based on 5 different types of transformers ([BEiT](https://arxiv.org/pdf/2106.08254.pdf), [Swin2](https://arxiv.org/pdf/2111.09883.pdf), [Swin](https://arxiv.org/pdf/2103.14030.pdf), [Next-ViT](https://arxiv.org/pdf/2207.05501.pdf), [LeViT](https://arxiv.org/pdf/2104.01136.pdf))\n    - Training datasets extended from 10 to 12, including also KITTI and NYU Depth V2 using [BTS](https://github.com/cleinc/bts) split\n    - Best model, BEiT<sub>Large 512</sub>, with resolution 512x512, is on average about [28% more accurate](#Accuracy) than MiDaS v3.0\n    - Integrated live depth estimation from camera feed\n* [Sep 2021] Integrated to [Huggingface Spaces](https://huggingface.co/spaces) with [Gradio](https://github.com/gradio-app/gradio). See [Gradio Web Demo](https://huggingface.co/spaces/akhaliq/DPT-Large).\n* [Apr 2021] Released MiDaS v3.0:\n    - New models based on [Dense Prediction Transformers](https://arxiv.org/abs/2103.13413) are on average [21% more accurate](#Accuracy) than MiDaS v2.1\n    - Additional models can be found [here](https://github.com/isl-org/DPT)\n* [Nov 2020] Released MiDaS v2.1:\n\t- New model that was trained on 10 datasets and is on average about [10% more accurate](#Accuracy) than [MiDaS v2.0](https://github.com/isl-org/MiDaS/releases/tag/v2)\n\t- New light-weight model that achieves [real-time performance](https://github.com/isl-org/MiDaS/tree/master/mobile) on mobile platforms.\n\t- Sample applications for [iOS](https://github.com/isl-org/MiDaS/tree/master/mobile/ios) and [Android](https://github.com/isl-org/MiDaS/tree/master/mobile/android)\n\t- [ROS package](https://github.com/isl-org/MiDaS/tree/master/ros) for easy deployment on robots\n* [Jul 2020] Added TensorFlow and ONNX code. Added [online demo](http://35.202.76.57/).\n* [Dec 2019] Released new version of MiDaS - the new model is significantly more accurate and robust\n* [Jul 2019] Initial release of MiDaS ([Link](https://github.com/isl-org/MiDaS/releases/tag/v1))\n\n### Citation\n\nPlease cite our paper if you use this code or any of the models:\n```\n@ARTICLE {Ranftl2022,\n    author  = \"Ren\\'{e} Ranftl and Katrin Lasinger and David Hafner and Konrad Schindler and Vladlen Koltun\",\n    title   = \"Towards Robust Monocular Depth Estimation: Mixing Datasets for Zero-Shot Cross-Dataset Transfer\",\n    journal = \"IEEE Transactions on Pattern Analysis and Machine Intelligence\",\n    year    = \"2022\",\n    volume  = \"44\",\n    number  = \"3\"\n}\n```\n\nIf you use a DPT-based model, please also cite:\n\n```\n@article{Ranftl2021,\n\tauthor    = {Ren\\'{e} Ranftl and Alexey Bochkovskiy and Vladlen Koltun},\n\ttitle     = {Vision Transformers for Dense Prediction},\n\tjournal   = {ICCV},\n\tyear      = {2021},\n}\n```\n\n### Acknowledgements\n\nOur work builds on and uses code from [timm](https://github.com/rwightman/pytorch-image-models) and [Next-ViT](https://github.com/bytedance/Next-ViT).\nWe'd like to thank the authors for making these libraries available.\n\n### License\n\nMIT License\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/base_models/midas_repo/__init__.py",
    "content": ""
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/base_models/midas_repo/hubconf.py",
    "content": "dependencies = [\"torch\"]\n\nimport torch\n\nfrom midas.dpt_depth import DPTDepthModel\nfrom midas.midas_net import MidasNet\nfrom midas.midas_net_custom import MidasNet_small\n\ndef DPT_BEiT_L_512(pretrained=True, **kwargs):\n    \"\"\" # This docstring shows up in hub.help()\n    MiDaS DPT_BEiT_L_512 model for monocular depth estimation\n    pretrained (bool): load pretrained weights into model\n    \"\"\"\n\n    model = DPTDepthModel(\n            path=None,\n            backbone=\"beitl16_512\",\n            non_negative=True,\n        )\n\n    if pretrained:\n        checkpoint = (\n            \"https://github.com/isl-org/MiDaS/releases/download/v3_1/dpt_beit_large_512.pt\"\n        )\n        state_dict = torch.hub.load_state_dict_from_url(\n            checkpoint, map_location=torch.device('cpu'), progress=True, check_hash=True\n        )\n        model.load_state_dict(state_dict)\n\n    return model\n\ndef DPT_BEiT_L_384(pretrained=True, **kwargs):\n    \"\"\" # This docstring shows up in hub.help()\n    MiDaS DPT_BEiT_L_384 model for monocular depth estimation\n    pretrained (bool): load pretrained weights into model\n    \"\"\"\n\n    model = DPTDepthModel(\n            path=None,\n            backbone=\"beitl16_384\",\n            non_negative=True,\n        )\n\n    if pretrained:\n        checkpoint = (\n            \"https://github.com/isl-org/MiDaS/releases/download/v3_1/dpt_beit_large_384.pt\"\n        )\n        state_dict = torch.hub.load_state_dict_from_url(\n            checkpoint, map_location=torch.device('cpu'), progress=True, check_hash=True\n        )\n        model.load_state_dict(state_dict)\n\n    return model\n\ndef DPT_BEiT_B_384(pretrained=True, **kwargs):\n    \"\"\" # This docstring shows up in hub.help()\n    MiDaS DPT_BEiT_B_384 model for monocular depth estimation\n    pretrained (bool): load pretrained weights into model\n    \"\"\"\n\n    model = DPTDepthModel(\n            path=None,\n            backbone=\"beitb16_384\",\n            non_negative=True,\n        )\n\n    if pretrained:\n        checkpoint = (\n            \"https://github.com/isl-org/MiDaS/releases/download/v3_1/dpt_beit_base_384.pt\"\n        )\n        state_dict = torch.hub.load_state_dict_from_url(\n            checkpoint, map_location=torch.device('cpu'), progress=True, check_hash=True\n        )\n        model.load_state_dict(state_dict)\n\n    return model\n\ndef DPT_SwinV2_L_384(pretrained=True, **kwargs):\n    \"\"\" # This docstring shows up in hub.help()\n    MiDaS DPT_SwinV2_L_384 model for monocular depth estimation\n    pretrained (bool): load pretrained weights into model\n    \"\"\"\n\n    model = DPTDepthModel(\n            path=None,\n            backbone=\"swin2l24_384\",\n            non_negative=True,\n        )\n\n    if pretrained:\n        checkpoint = (\n            \"https://github.com/isl-org/MiDaS/releases/download/v3_1/dpt_swin2_large_384.pt\"\n        )\n        state_dict = torch.hub.load_state_dict_from_url(\n            checkpoint, map_location=torch.device('cpu'), progress=True, check_hash=True\n        )\n        model.load_state_dict(state_dict)\n\n    return model\n\ndef DPT_SwinV2_B_384(pretrained=True, **kwargs):\n    \"\"\" # This docstring shows up in hub.help()\n    MiDaS DPT_SwinV2_B_384 model for monocular depth estimation\n    pretrained (bool): load pretrained weights into model\n    \"\"\"\n\n    model = DPTDepthModel(\n            path=None,\n            backbone=\"swin2b24_384\",\n            non_negative=True,\n        )\n\n    if pretrained:\n        checkpoint = (\n            \"https://github.com/isl-org/MiDaS/releases/download/v3_1/dpt_swin2_base_384.pt\"\n        )\n        state_dict = torch.hub.load_state_dict_from_url(\n            checkpoint, map_location=torch.device('cpu'), progress=True, check_hash=True\n        )\n        model.load_state_dict(state_dict)\n\n    return model\n\ndef DPT_SwinV2_T_256(pretrained=True, **kwargs):\n    \"\"\" # This docstring shows up in hub.help()\n    MiDaS DPT_SwinV2_T_256 model for monocular depth estimation\n    pretrained (bool): load pretrained weights into model\n    \"\"\"\n\n    model = DPTDepthModel(\n            path=None,\n            backbone=\"swin2t16_256\",\n            non_negative=True,\n        )\n\n    if pretrained:\n        checkpoint = (\n            \"https://github.com/isl-org/MiDaS/releases/download/v3_1/dpt_swin2_tiny_256.pt\"\n        )\n        state_dict = torch.hub.load_state_dict_from_url(\n            checkpoint, map_location=torch.device('cpu'), progress=True, check_hash=True\n        )\n        model.load_state_dict(state_dict)\n\n    return model\n\ndef DPT_Swin_L_384(pretrained=True, **kwargs):\n    \"\"\" # This docstring shows up in hub.help()\n    MiDaS DPT_Swin_L_384 model for monocular depth estimation\n    pretrained (bool): load pretrained weights into model\n    \"\"\"\n\n    model = DPTDepthModel(\n            path=None,\n            backbone=\"swinl12_384\",\n            non_negative=True,\n        )\n\n    if pretrained:\n        checkpoint = (\n            \"https://github.com/isl-org/MiDaS/releases/download/v3_1/dpt_swin_large_384.pt\"\n        )\n        state_dict = torch.hub.load_state_dict_from_url(\n            checkpoint, map_location=torch.device('cpu'), progress=True, check_hash=True\n        )\n        model.load_state_dict(state_dict)\n\n    return model\n\ndef DPT_Next_ViT_L_384(pretrained=True, **kwargs):\n    \"\"\" # This docstring shows up in hub.help()\n    MiDaS DPT_Next_ViT_L_384 model for monocular depth estimation\n    pretrained (bool): load pretrained weights into model\n    \"\"\"\n\n    model = DPTDepthModel(\n            path=None,\n            backbone=\"next_vit_large_6m\",\n            non_negative=True,\n        )\n\n    if pretrained:\n        checkpoint = (\n            \"https://github.com/isl-org/MiDaS/releases/download/v3_1/dpt_next_vit_large_384.pt\"\n        )\n        state_dict = torch.hub.load_state_dict_from_url(\n            checkpoint, map_location=torch.device('cpu'), progress=True, check_hash=True\n        )\n        model.load_state_dict(state_dict)\n\n    return model\n\ndef DPT_LeViT_224(pretrained=True, **kwargs):\n    \"\"\" # This docstring shows up in hub.help()\n    MiDaS DPT_LeViT_224 model for monocular depth estimation\n    pretrained (bool): load pretrained weights into model\n    \"\"\"\n\n    model = DPTDepthModel(\n            path=None,\n            backbone=\"levit_384\",\n            non_negative=True,\n            head_features_1=64,\n            head_features_2=8,\n        )\n\n    if pretrained:\n        checkpoint = (\n            \"https://github.com/isl-org/MiDaS/releases/download/v3_1/dpt_levit_224.pt\"\n        )\n        state_dict = torch.hub.load_state_dict_from_url(\n            checkpoint, map_location=torch.device('cpu'), progress=True, check_hash=True\n        )\n        model.load_state_dict(state_dict)\n\n    return model\n\ndef DPT_Large(pretrained=True, **kwargs):\n    \"\"\" # This docstring shows up in hub.help()\n    MiDaS DPT-Large model for monocular depth estimation\n    pretrained (bool): load pretrained weights into model\n    \"\"\"\n\n    model = DPTDepthModel(\n            path=None,\n            backbone=\"vitl16_384\",\n            non_negative=True,\n        )\n\n    if pretrained:\n        checkpoint = (\n            \"https://github.com/isl-org/MiDaS/releases/download/v3/dpt_large_384.pt\"\n        )\n        state_dict = torch.hub.load_state_dict_from_url(\n            checkpoint, map_location=torch.device('cpu'), progress=True, check_hash=True\n        )\n        model.load_state_dict(state_dict)\n\n    return model\n\ndef DPT_Hybrid(pretrained=True, **kwargs):\n    \"\"\" # This docstring shows up in hub.help()\n    MiDaS DPT-Hybrid model for monocular depth estimation\n    pretrained (bool): load pretrained weights into model\n    \"\"\"\n\n    model = DPTDepthModel(\n            path=None,\n            backbone=\"vitb_rn50_384\",\n            non_negative=True,\n        )\n\n    if pretrained:\n        checkpoint = (\n            \"https://github.com/isl-org/MiDaS/releases/download/v3/dpt_hybrid_384.pt\"\n        )\n        state_dict = torch.hub.load_state_dict_from_url(\n            checkpoint, map_location=torch.device('cpu'), progress=True, check_hash=True\n        )\n        model.load_state_dict(state_dict)\n\n    return model\n\ndef MiDaS(pretrained=True, **kwargs):\n    \"\"\" # This docstring shows up in hub.help()\n    MiDaS v2.1 model for monocular depth estimation\n    pretrained (bool): load pretrained weights into model\n    \"\"\"\n\n    model = MidasNet()\n\n    if pretrained:\n        checkpoint = (\n            \"https://github.com/isl-org/MiDaS/releases/download/v2_1/midas_v21_384.pt\"\n        )\n        state_dict = torch.hub.load_state_dict_from_url(\n            checkpoint, map_location=torch.device('cpu'), progress=True, check_hash=True\n        )\n        model.load_state_dict(state_dict)\n\n    return model\n\ndef MiDaS_small(pretrained=True, **kwargs):\n    \"\"\" # This docstring shows up in hub.help()\n    MiDaS v2.1 small model for monocular depth estimation on resource-constrained devices\n    pretrained (bool): load pretrained weights into model\n    \"\"\"\n\n    model = MidasNet_small(None, features=64, backbone=\"efficientnet_lite3\", exportable=True, non_negative=True, blocks={'expand': True})\n\n    if pretrained:\n        checkpoint = (\n            \"https://github.com/isl-org/MiDaS/releases/download/v2_1/midas_v21_small_256.pt\"\n        )\n        state_dict = torch.hub.load_state_dict_from_url(\n            checkpoint, map_location=torch.device('cpu'), progress=True, check_hash=True\n        )\n        model.load_state_dict(state_dict)\n\n    return model\n\n\ndef transforms():\n    import cv2\n    from torchvision.transforms import Compose\n    from midas.transforms import Resize, NormalizeImage, PrepareForNet\n    from midas import transforms\n\n    transforms.default_transform = Compose(\n        [\n            lambda img: {\"image\": img / 255.0},\n            Resize(\n                384,\n                384,\n                resize_target=None,\n                keep_aspect_ratio=True,\n                ensure_multiple_of=32,\n                resize_method=\"upper_bound\",\n                image_interpolation_method=cv2.INTER_CUBIC,\n            ),\n            NormalizeImage(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225]),\n            PrepareForNet(),\n            lambda sample: torch.from_numpy(sample[\"image\"]).unsqueeze(0),\n        ]\n    )\n\n    transforms.small_transform = Compose(\n        [\n            lambda img: {\"image\": img / 255.0},\n            Resize(\n                256,\n                256,\n                resize_target=None,\n                keep_aspect_ratio=True,\n                ensure_multiple_of=32,\n                resize_method=\"upper_bound\",\n                image_interpolation_method=cv2.INTER_CUBIC,\n            ),\n            NormalizeImage(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225]),\n            PrepareForNet(),\n            lambda sample: torch.from_numpy(sample[\"image\"]).unsqueeze(0),\n        ]\n    )\n\n    transforms.dpt_transform = Compose(\n        [\n            lambda img: {\"image\": img / 255.0},\n            Resize(\n                384,\n                384,\n                resize_target=None,\n                keep_aspect_ratio=True,\n                ensure_multiple_of=32,\n                resize_method=\"minimal\",\n                image_interpolation_method=cv2.INTER_CUBIC,\n            ),\n            NormalizeImage(mean=[0.5, 0.5, 0.5], std=[0.5, 0.5, 0.5]),\n            PrepareForNet(),\n            lambda sample: torch.from_numpy(sample[\"image\"]).unsqueeze(0),\n        ]\n    )\n\n    transforms.beit512_transform = Compose(\n        [\n            lambda img: {\"image\": img / 255.0},\n            Resize(\n                512,\n                512,\n                resize_target=None,\n                keep_aspect_ratio=True,\n                ensure_multiple_of=32,\n                resize_method=\"minimal\",\n                image_interpolation_method=cv2.INTER_CUBIC,\n            ),\n            NormalizeImage(mean=[0.5, 0.5, 0.5], std=[0.5, 0.5, 0.5]),\n            PrepareForNet(),\n            lambda sample: torch.from_numpy(sample[\"image\"]).unsqueeze(0),\n        ]\n    )\n\n    transforms.swin384_transform = Compose(\n        [\n            lambda img: {\"image\": img / 255.0},\n            Resize(\n                384,\n                384,\n                resize_target=None,\n                keep_aspect_ratio=False,\n                ensure_multiple_of=32,\n                resize_method=\"minimal\",\n                image_interpolation_method=cv2.INTER_CUBIC,\n            ),\n            NormalizeImage(mean=[0.5, 0.5, 0.5], std=[0.5, 0.5, 0.5]),\n            PrepareForNet(),\n            lambda sample: torch.from_numpy(sample[\"image\"]).unsqueeze(0),\n        ]\n    )\n\n    transforms.swin256_transform = Compose(\n        [\n            lambda img: {\"image\": img / 255.0},\n            Resize(\n                256,\n                256,\n                resize_target=None,\n                keep_aspect_ratio=False,\n                ensure_multiple_of=32,\n                resize_method=\"minimal\",\n                image_interpolation_method=cv2.INTER_CUBIC,\n            ),\n            NormalizeImage(mean=[0.5, 0.5, 0.5], std=[0.5, 0.5, 0.5]),\n            PrepareForNet(),\n            lambda sample: torch.from_numpy(sample[\"image\"]).unsqueeze(0),\n        ]\n    )\n\n    transforms.levit_transform = Compose(\n        [\n            lambda img: {\"image\": img / 255.0},\n            Resize(\n                224,\n                224,\n                resize_target=None,\n                keep_aspect_ratio=False,\n                ensure_multiple_of=32,\n                resize_method=\"minimal\",\n                image_interpolation_method=cv2.INTER_CUBIC,\n            ),\n            NormalizeImage(mean=[0.5, 0.5, 0.5], std=[0.5, 0.5, 0.5]),\n            PrepareForNet(),\n            lambda sample: torch.from_numpy(sample[\"image\"]).unsqueeze(0),\n        ]\n    )\n\n    return transforms\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/base_models/midas_repo/midas/__init__.py",
    "content": ""
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/__init__.py",
    "content": ""
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/beit.py",
    "content": "import timm\nimport torch\nimport types\n\nimport numpy as np\nimport torch.nn.functional as F\n\nfrom .utils import forward_adapted_unflatten, make_backbone_default\nfrom timm.models.beit import gen_relative_position_index\nfrom torch.utils.checkpoint import checkpoint\nfrom typing import Optional\n\n\ndef forward_beit(pretrained, x):\n    return forward_adapted_unflatten(pretrained, x, \"forward_features\")\n\n\ndef patch_embed_forward(self, x):\n    \"\"\"\n    Modification of timm.models.layers.patch_embed.py: PatchEmbed.forward to support arbitrary window sizes.\n    \"\"\"\n    x = self.proj(x)\n    if self.flatten:\n        x = x.flatten(2).transpose(1, 2)\n    x = self.norm(x)\n    return x\n\n\ndef _get_rel_pos_bias(self, window_size):\n    \"\"\"\n    Modification of timm.models.beit.py: Attention._get_rel_pos_bias to support arbitrary window sizes.\n    \"\"\"\n    old_height = 2 * self.window_size[0] - 1\n    old_width = 2 * self.window_size[1] - 1\n\n    new_height = 2 * window_size[0] - 1\n    new_width = 2 * window_size[1] - 1\n\n    old_relative_position_bias_table = self.relative_position_bias_table\n\n    old_num_relative_distance = self.num_relative_distance\n    new_num_relative_distance = new_height * new_width + 3\n\n    old_sub_table = old_relative_position_bias_table[:old_num_relative_distance - 3]\n\n    old_sub_table = old_sub_table.reshape(1, old_width, old_height, -1).permute(0, 3, 1, 2)\n    new_sub_table = F.interpolate(old_sub_table, size=(int(new_height), int(new_width)), mode=\"bilinear\")\n    new_sub_table = new_sub_table.permute(0, 2, 3, 1).reshape(new_num_relative_distance - 3, -1)\n\n    new_relative_position_bias_table = torch.cat(\n        [new_sub_table, old_relative_position_bias_table[old_num_relative_distance - 3:]])\n\n    key = str(window_size[1]) + \",\" + str(window_size[0])\n    if key not in self.relative_position_indices.keys():\n        self.relative_position_indices[key] = gen_relative_position_index(window_size)\n\n    relative_position_bias = new_relative_position_bias_table[\n        self.relative_position_indices[key].view(-1)].view(\n        window_size[0] * window_size[1] + 1,\n        window_size[0] * window_size[1] + 1, -1)  # Wh*Ww,Wh*Ww,nH\n    relative_position_bias = relative_position_bias.permute(2, 0, 1).contiguous()  # nH, Wh*Ww, Wh*Ww\n    return relative_position_bias.unsqueeze(0)\n\n\ndef attention_forward(self, x, resolution, shared_rel_pos_bias: Optional[torch.Tensor] = None):\n    \"\"\"\n    Modification of timm.models.beit.py: Attention.forward to support arbitrary window sizes.\n    \"\"\"\n    B, N, C = x.shape\n\n    qkv_bias = torch.cat((self.q_bias, self.k_bias, self.v_bias)) if self.q_bias is not None else None\n    qkv = F.linear(input=x, weight=self.qkv.weight, bias=qkv_bias)\n    qkv = qkv.reshape(B, N, 3, self.num_heads, -1).permute(2, 0, 3, 1, 4)\n    q, k, v = qkv.unbind(0)  # make torchscript happy (cannot use tensor as tuple)\n\n    q = q * self.scale\n    attn = (q @ k.transpose(-2, -1))\n\n    if self.relative_position_bias_table is not None:\n        window_size = tuple(np.array(resolution) // 16)\n        attn = attn + self._get_rel_pos_bias(window_size)\n    if shared_rel_pos_bias is not None:\n        attn = attn + shared_rel_pos_bias\n\n    attn = attn.softmax(dim=-1)\n    attn = self.attn_drop(attn)\n\n    x = (attn @ v).transpose(1, 2).reshape(B, N, -1)\n    x = self.proj(x)\n    x = self.proj_drop(x)\n    return x\n\n\ndef block_forward(self, x, resolution, shared_rel_pos_bias: Optional[torch.Tensor] = None):\n    \"\"\"\n    Modification of timm.models.beit.py: Block.forward to support arbitrary window sizes.\n    \"\"\"\n    if self.gamma_1 is None:\n        x = x + self.drop_path(self.attn(self.norm1(x), resolution, shared_rel_pos_bias=shared_rel_pos_bias))\n        x = x + self.drop_path(self.mlp(self.norm2(x)))\n    else:\n        x = x + self.drop_path(self.gamma_1 * self.attn(self.norm1(x), resolution,\n                                                        shared_rel_pos_bias=shared_rel_pos_bias))\n        x = x + self.drop_path(self.gamma_2 * self.mlp(self.norm2(x)))\n    return x\n\n\ndef beit_forward_features(self, x):\n    \"\"\"\n    Modification of timm.models.beit.py: Beit.forward_features to support arbitrary window sizes.\n    \"\"\"\n    resolution = x.shape[2:]\n\n    x = self.patch_embed(x)\n    x = torch.cat((self.cls_token.expand(x.shape[0], -1, -1), x), dim=1)\n    if self.pos_embed is not None:\n        x = x + self.pos_embed\n    x = self.pos_drop(x)\n\n    rel_pos_bias = self.rel_pos_bias() if self.rel_pos_bias is not None else None\n    for blk in self.blocks:\n        if self.grad_checkpointing and not torch.jit.is_scripting():\n            x = checkpoint(blk, x, shared_rel_pos_bias=rel_pos_bias)\n        else:\n            x = blk(x, resolution, shared_rel_pos_bias=rel_pos_bias)\n    x = self.norm(x)\n    return x\n\n\ndef _make_beit_backbone(\n        model,\n        features=None,\n        size=None,\n        hooks=None,\n        vit_features=768,\n        use_readout=\"ignore\",\n        start_index=1,\n        start_index_readout=1,\n):\n    if hooks is None:\n        hooks = [0, 4, 8, 11]\n    if size is None:\n        size = [384, 384]\n    if features is None:\n        features = [96, 192, 384, 768]\n    backbone = make_backbone_default(model, features, size, hooks, vit_features, use_readout, start_index,\n                                     start_index_readout)\n\n    backbone.model.patch_embed.forward = types.MethodType(patch_embed_forward, backbone.model.patch_embed)\n    backbone.model.forward_features = types.MethodType(beit_forward_features, backbone.model)\n\n    for block in backbone.model.blocks:\n        attn = block.attn\n        attn._get_rel_pos_bias = types.MethodType(_get_rel_pos_bias, attn)\n        attn.forward = types.MethodType(attention_forward, attn)\n        attn.relative_position_indices = {}\n\n        block.forward = types.MethodType(block_forward, block)\n\n    return backbone\n\n\ndef _make_pretrained_beitl16_512(pretrained, use_readout=\"ignore\", hooks=None):\n    model = timm.create_model(\"beit_large_patch16_512\", pretrained=pretrained)\n\n    hooks = [5, 11, 17, 23] if hooks is None else hooks\n\n    features = [256, 512, 1024, 1024]\n\n    return _make_beit_backbone(\n        model,\n        features=features,\n        size=[512, 512],\n        hooks=hooks,\n        vit_features=1024,\n        use_readout=use_readout,\n    )\n\n\ndef _make_pretrained_beitl16_384(pretrained, use_readout=\"ignore\", hooks=None):\n    model = timm.create_model(\"beit_large_patch16_384\", pretrained=pretrained)\n\n    hooks = [5, 11, 17, 23] if hooks is None else hooks\n    return _make_beit_backbone(\n        model,\n        features=[256, 512, 1024, 1024],\n        hooks=hooks,\n        vit_features=1024,\n        use_readout=use_readout,\n    )\n\n\ndef _make_pretrained_beitb16_384(pretrained, use_readout=\"ignore\", hooks=None):\n    model = timm.create_model(\"beit_base_patch16_384\", pretrained=pretrained)\n\n    hooks = [2, 5, 8, 11] if hooks is None else hooks\n    return _make_beit_backbone(\n        model,\n        features=[96, 192, 384, 768],\n        hooks=hooks,\n        use_readout=use_readout,\n    )\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/levit.py",
    "content": "import timm\nimport torch\nimport torch.nn as nn\nimport numpy as np\n\nfrom .utils import activations, get_activation, Transpose\n\n\ndef forward_levit(pretrained, x):\n    pretrained.model.forward_features(x)\n\n    layer_1 = pretrained.activations[\"1\"]\n    layer_2 = pretrained.activations[\"2\"]\n    layer_3 = pretrained.activations[\"3\"]\n\n    layer_1 = pretrained.act_postprocess1(layer_1)\n    layer_2 = pretrained.act_postprocess2(layer_2)\n    layer_3 = pretrained.act_postprocess3(layer_3)\n\n    return layer_1, layer_2, layer_3\n\n\ndef _make_levit_backbone(\n        model,\n        hooks=None,\n        patch_grid=None\n):\n    if patch_grid is None:\n        patch_grid = [14, 14]\n    if hooks is None:\n        hooks = [3, 11, 21]\n    pretrained = nn.Module()\n\n    pretrained.model = model\n    pretrained.model.blocks[hooks[0]].register_forward_hook(get_activation(\"1\"))\n    pretrained.model.blocks[hooks[1]].register_forward_hook(get_activation(\"2\"))\n    pretrained.model.blocks[hooks[2]].register_forward_hook(get_activation(\"3\"))\n\n    pretrained.activations = activations\n\n    patch_grid_size = np.array(patch_grid, dtype=int)\n\n    pretrained.act_postprocess1 = nn.Sequential(\n        Transpose(1, 2),\n        nn.Unflatten(2, torch.Size(patch_grid_size.tolist()))\n    )\n    pretrained.act_postprocess2 = nn.Sequential(\n        Transpose(1, 2),\n        nn.Unflatten(2, torch.Size((np.ceil(patch_grid_size / 2).astype(int)).tolist()))\n    )\n    pretrained.act_postprocess3 = nn.Sequential(\n        Transpose(1, 2),\n        nn.Unflatten(2, torch.Size((np.ceil(patch_grid_size / 4).astype(int)).tolist()))\n    )\n\n    return pretrained\n\n\nclass ConvTransposeNorm(nn.Sequential):\n    \"\"\"\n    Modification of\n        https://github.com/rwightman/pytorch-image-models/blob/master/timm/models/levit.py: ConvNorm\n    such that ConvTranspose2d is used instead of Conv2d.\n    \"\"\"\n\n    def __init__(\n            self, in_chs, out_chs, kernel_size=1, stride=1, pad=0, dilation=1,\n            groups=1, bn_weight_init=1):\n        super().__init__()\n        self.add_module('c',\n                        nn.ConvTranspose2d(in_chs, out_chs, kernel_size, stride, pad, dilation, groups, bias=False))\n        self.add_module('bn', nn.BatchNorm2d(out_chs))\n\n        nn.init.constant_(self.bn.weight, bn_weight_init)\n\n    def fuse(self):\n        c, bn = self._modules.values()\n        w = bn.weight / (bn.running_var + bn.eps) ** 0.5\n        w = c.weight * w[:, None, None, None]\n        b = bn.bias - bn.running_mean * bn.weight / (bn.running_var + bn.eps) ** 0.5\n        m = nn.ConvTranspose2d(\n            w.size(1), w.size(0), w.shape[2:], stride=self.c.stride,\n            padding=self.c.padding, dilation=self.c.dilation, groups=self.c.groups)\n        m.weight.data.copy_(w)\n        m.bias.data.copy_(b)\n        return m\n\n\ndef stem_b4_transpose(in_chs, out_chs, activation):\n    \"\"\"\n    Modification of\n        https://github.com/rwightman/pytorch-image-models/blob/master/timm/models/levit.py: stem_b16\n    such that ConvTranspose2d is used instead of Conv2d and stem is also reduced to the half.\n    \"\"\"\n    return nn.Sequential(\n        ConvTransposeNorm(in_chs, out_chs, 3, 2, 1),\n        activation(),\n        ConvTransposeNorm(out_chs, out_chs // 2, 3, 2, 1),\n        activation())\n\n\ndef _make_pretrained_levit_384(pretrained, hooks=None):\n    model = timm.create_model(\"levit_384\", pretrained=pretrained)\n\n    hooks = [3, 11, 21] if hooks is None else hooks\n    return _make_levit_backbone(\n        model,\n        hooks=hooks\n    )\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/next_vit.py",
    "content": "import timm\nimport torch.nn as nn\nfrom .utils import activations, forward_default, get_activation\nfrom ..external.next_vit.classification.nextvit import * # noqa\n\n\ndef forward_next_vit(pretrained, x):\n    return forward_default(pretrained, x, \"forward\")\n\n\ndef _make_next_vit_backbone(\n        model,\n        hooks=None,\n):\n    if hooks is None:\n        hooks = [2, 6, 36, 39]\n    pretrained = nn.Module()\n\n    pretrained.model = model\n    pretrained.model.features[hooks[0]].register_forward_hook(get_activation(\"1\"))\n    pretrained.model.features[hooks[1]].register_forward_hook(get_activation(\"2\"))\n    pretrained.model.features[hooks[2]].register_forward_hook(get_activation(\"3\"))\n    pretrained.model.features[hooks[3]].register_forward_hook(get_activation(\"4\"))\n\n    pretrained.activations = activations\n\n    return pretrained\n\n\ndef _make_pretrained_next_vit_large_6m(hooks=None):\n    model = timm.create_model(\"nextvit_large\")\n\n    hooks = [2, 6, 36, 39] if hooks is None else hooks\n    return _make_next_vit_backbone(\n        model,\n        hooks=hooks,\n    )\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/swin.py",
    "content": "import timm\n\nfrom .swin_common import _make_swin_backbone\n\n\ndef _make_pretrained_swinl12_384(pretrained, hooks=None):\n    model = timm.create_model(\"swin_large_patch4_window12_384\", pretrained=pretrained)\n\n    hooks = [1, 1, 17, 1] if hooks is None else hooks\n    return _make_swin_backbone(\n        model,\n        hooks=hooks\n    )\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/swin2.py",
    "content": "import timm\n\nfrom .swin_common import _make_swin_backbone\n\n\ndef _make_pretrained_swin2l24_384(pretrained, hooks=None):\n    model = timm.create_model(\"swinv2_large_window12to24_192to384_22kft1k\", pretrained=pretrained)\n\n    hooks = [1, 1, 17, 1] if hooks is None else hooks\n    return _make_swin_backbone(\n        model,\n        hooks=hooks\n    )\n\n\ndef _make_pretrained_swin2b24_384(pretrained, hooks=None):\n    model = timm.create_model(\"swinv2_base_window12to24_192to384_22kft1k\", pretrained=pretrained)\n\n    hooks = [1, 1, 17, 1] if hooks is None else hooks\n    return _make_swin_backbone(\n        model,\n        hooks=hooks\n    )\n\n\ndef _make_pretrained_swin2t16_256(pretrained, hooks=None):\n    model = timm.create_model(\"swinv2_tiny_window16_256\", pretrained=pretrained)\n\n    hooks = [1, 1, 5, 1] if hooks is None else hooks\n    return _make_swin_backbone(\n        model,\n        hooks=hooks,\n        patch_grid=[64, 64]\n    )\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/swin_common.py",
    "content": "import torch\n\nimport torch.nn as nn\nimport numpy as np\n\nfrom .utils import activations, forward_default, get_activation, Transpose\n\n\ndef forward_swin(pretrained, x):\n    return forward_default(pretrained, x)\n\n\ndef _make_swin_backbone(\n        model,\n        hooks=None,\n        patch_grid=None\n):\n    if patch_grid is None:\n        patch_grid = [96, 96]\n    if hooks is None:\n        hooks = [1, 1, 17, 1]\n    pretrained = nn.Module()\n\n    pretrained.model = model\n    pretrained.model.layers[0].blocks[hooks[0]].register_forward_hook(get_activation(\"1\"))\n    pretrained.model.layers[1].blocks[hooks[1]].register_forward_hook(get_activation(\"2\"))\n    pretrained.model.layers[2].blocks[hooks[2]].register_forward_hook(get_activation(\"3\"))\n    pretrained.model.layers[3].blocks[hooks[3]].register_forward_hook(get_activation(\"4\"))\n\n    pretrained.activations = activations\n\n    if hasattr(model, \"patch_grid\"):\n        used_patch_grid = model.patch_grid\n    else:\n        used_patch_grid = patch_grid\n\n    patch_grid_size = np.array(used_patch_grid, dtype=int)\n\n    pretrained.act_postprocess1 = nn.Sequential(\n        Transpose(1, 2),\n        nn.Unflatten(2, torch.Size(patch_grid_size.tolist()))\n    )\n    pretrained.act_postprocess2 = nn.Sequential(\n        Transpose(1, 2),\n        nn.Unflatten(2, torch.Size((patch_grid_size // 2).tolist()))\n    )\n    pretrained.act_postprocess3 = nn.Sequential(\n        Transpose(1, 2),\n        nn.Unflatten(2, torch.Size((patch_grid_size // 4).tolist()))\n    )\n    pretrained.act_postprocess4 = nn.Sequential(\n        Transpose(1, 2),\n        nn.Unflatten(2, torch.Size((patch_grid_size // 8).tolist()))\n    )\n\n    return pretrained\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/utils.py",
    "content": "import torch\n\nimport torch.nn as nn\n\n\nclass Slice(nn.Module):\n    def __init__(self, start_index=1):\n        super(Slice, self).__init__()\n        self.start_index = start_index\n\n    def forward(self, x):\n        return x[:, self.start_index:]\n\n\nclass AddReadout(nn.Module):\n    def __init__(self, start_index=1):\n        super(AddReadout, self).__init__()\n        self.start_index = start_index\n\n    def forward(self, x):\n        if self.start_index == 2:\n            readout = (x[:, 0] + x[:, 1]) / 2\n        else:\n            readout = x[:, 0]\n        return x[:, self.start_index:] + readout.unsqueeze(1)\n\n\nclass ProjectReadout(nn.Module):\n    def __init__(self, in_features, start_index=1):\n        super(ProjectReadout, self).__init__()\n        self.start_index = start_index\n\n        self.project = nn.Sequential(nn.Linear(2 * in_features, in_features), nn.GELU())\n\n    def forward(self, x):\n        readout = x[:, 0].unsqueeze(1).expand_as(x[:, self.start_index:])\n        features = torch.cat((x[:, self.start_index:], readout), -1)\n\n        return self.project(features)\n\n\nclass Transpose(nn.Module):\n    def __init__(self, dim0, dim1):\n        super(Transpose, self).__init__()\n        self.dim0 = dim0\n        self.dim1 = dim1\n\n    def forward(self, x):\n        x = x.transpose(self.dim0, self.dim1)\n        return x\n\n\nactivations = {}\n\n\ndef get_activation(name):\n    def hook(model, input, output):\n        activations[name] = output\n\n    return hook\n\n\ndef forward_default(pretrained, x, function_name=\"forward_features\"):\n    exec(f\"pretrained.model.{function_name}(x)\")\n\n    layer_1 = pretrained.activations[\"1\"]\n    layer_2 = pretrained.activations[\"2\"]\n    layer_3 = pretrained.activations[\"3\"]\n    layer_4 = pretrained.activations[\"4\"]\n\n    if hasattr(pretrained, \"act_postprocess1\"):\n        layer_1 = pretrained.act_postprocess1(layer_1)\n    if hasattr(pretrained, \"act_postprocess2\"):\n        layer_2 = pretrained.act_postprocess2(layer_2)\n    if hasattr(pretrained, \"act_postprocess3\"):\n        layer_3 = pretrained.act_postprocess3(layer_3)\n    if hasattr(pretrained, \"act_postprocess4\"):\n        layer_4 = pretrained.act_postprocess4(layer_4)\n\n    return layer_1, layer_2, layer_3, layer_4\n\n\ndef forward_adapted_unflatten(pretrained, x, function_name=\"forward_features\"):\n    b, c, h, w = x.shape\n\n    exec(f\"glob = pretrained.model.{function_name}(x)\")\n\n    layer_1 = pretrained.activations[\"1\"]\n    layer_2 = pretrained.activations[\"2\"]\n    layer_3 = pretrained.activations[\"3\"]\n    layer_4 = pretrained.activations[\"4\"]\n\n    layer_1 = pretrained.act_postprocess1[0:2](layer_1)\n    layer_2 = pretrained.act_postprocess2[0:2](layer_2)\n    layer_3 = pretrained.act_postprocess3[0:2](layer_3)\n    layer_4 = pretrained.act_postprocess4[0:2](layer_4)\n\n    unflatten = nn.Sequential(\n        nn.Unflatten(\n            2,\n            torch.Size(\n                [\n                    h // pretrained.model.patch_size[1],\n                    w // pretrained.model.patch_size[0],\n                ]\n            ),\n        )\n    )\n\n    if layer_1.ndim == 3:\n        layer_1 = unflatten(layer_1)\n    if layer_2.ndim == 3:\n        layer_2 = unflatten(layer_2)\n    if layer_3.ndim == 3:\n        layer_3 = unflatten(layer_3)\n    if layer_4.ndim == 3:\n        layer_4 = unflatten(layer_4)\n\n    layer_1 = pretrained.act_postprocess1[3: len(pretrained.act_postprocess1)](layer_1)\n    layer_2 = pretrained.act_postprocess2[3: len(pretrained.act_postprocess2)](layer_2)\n    layer_3 = pretrained.act_postprocess3[3: len(pretrained.act_postprocess3)](layer_3)\n    layer_4 = pretrained.act_postprocess4[3: len(pretrained.act_postprocess4)](layer_4)\n\n    return layer_1, layer_2, layer_3, layer_4\n\n\ndef get_readout_oper(vit_features, features, use_readout, start_index=1):\n    if use_readout == \"ignore\":\n        readout_oper = [Slice(start_index)] * len(features)\n    elif use_readout == \"add\":\n        readout_oper = [AddReadout(start_index)] * len(features)\n    elif use_readout == \"project\":\n        readout_oper = [\n            ProjectReadout(vit_features, start_index) for out_feat in features\n        ]\n    else:\n        raise AssertionError(\"wrong operation for readout token, use_readout can be 'ignore', 'add', or 'project'\")\n\n    return readout_oper\n\n\ndef make_backbone_default(\n        model,\n        features=None,\n        size=None,\n        hooks=None,\n        vit_features=768,\n        use_readout=\"ignore\",\n        start_index=1,\n        start_index_readout=1,\n):\n    if hooks is None:\n        hooks = [2, 5, 8, 11]\n    if size is None:\n        size = [384, 384]\n    if features is None:\n        features = [96, 192, 384, 768]\n    pretrained = nn.Module()\n\n    pretrained.model = model\n    pretrained.model.blocks[hooks[0]].register_forward_hook(get_activation(\"1\"))\n    pretrained.model.blocks[hooks[1]].register_forward_hook(get_activation(\"2\"))\n    pretrained.model.blocks[hooks[2]].register_forward_hook(get_activation(\"3\"))\n    pretrained.model.blocks[hooks[3]].register_forward_hook(get_activation(\"4\"))\n\n    pretrained.activations = activations\n\n    readout_oper = get_readout_oper(vit_features, features, use_readout, start_index_readout)\n\n    # 32, 48, 136, 384\n    pretrained.act_postprocess1 = nn.Sequential(\n        readout_oper[0],\n        Transpose(1, 2),\n        nn.Unflatten(2, torch.Size([size[0] // 16, size[1] // 16])),\n        nn.Conv2d(\n            in_channels=vit_features,\n            out_channels=features[0],\n            kernel_size=1,\n            stride=1,\n            padding=0,\n        ),\n        nn.ConvTranspose2d(\n            in_channels=features[0],\n            out_channels=features[0],\n            kernel_size=4,\n            stride=4,\n            padding=0,\n            bias=True,\n            dilation=1,\n            groups=1,\n        ),\n    )\n\n    pretrained.act_postprocess2 = nn.Sequential(\n        readout_oper[1],\n        Transpose(1, 2),\n        nn.Unflatten(2, torch.Size([size[0] // 16, size[1] // 16])),\n        nn.Conv2d(\n            in_channels=vit_features,\n            out_channels=features[1],\n            kernel_size=1,\n            stride=1,\n            padding=0,\n        ),\n        nn.ConvTranspose2d(\n            in_channels=features[1],\n            out_channels=features[1],\n            kernel_size=2,\n            stride=2,\n            padding=0,\n            bias=True,\n            dilation=1,\n            groups=1,\n        ),\n    )\n\n    pretrained.act_postprocess3 = nn.Sequential(\n        readout_oper[2],\n        Transpose(1, 2),\n        nn.Unflatten(2, torch.Size([size[0] // 16, size[1] // 16])),\n        nn.Conv2d(\n            in_channels=vit_features,\n            out_channels=features[2],\n            kernel_size=1,\n            stride=1,\n            padding=0,\n        ),\n    )\n\n    pretrained.act_postprocess4 = nn.Sequential(\n        readout_oper[3],\n        Transpose(1, 2),\n        nn.Unflatten(2, torch.Size([size[0] // 16, size[1] // 16])),\n        nn.Conv2d(\n            in_channels=vit_features,\n            out_channels=features[3],\n            kernel_size=1,\n            stride=1,\n            padding=0,\n        ),\n        nn.Conv2d(\n            in_channels=features[3],\n            out_channels=features[3],\n            kernel_size=3,\n            stride=2,\n            padding=1,\n        ),\n    )\n\n    pretrained.model.start_index = start_index\n    pretrained.model.patch_size = [16, 16]\n\n    return pretrained\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/base_models/midas_repo/midas/backbones/vit.py",
    "content": "import torch\nimport torch.nn as nn\nimport timm\nimport types\nimport math\nimport torch.nn.functional as F\n\nfrom .utils import (activations, forward_adapted_unflatten, get_activation, get_readout_oper,\n                    make_backbone_default, Transpose)\n\n\ndef forward_vit(pretrained, x):\n    return forward_adapted_unflatten(pretrained, x, \"forward_flex\")\n\n\ndef _resize_pos_embed(self, posemb, gs_h, gs_w):\n    posemb_tok, posemb_grid = (\n        posemb[:, : self.start_index],\n        posemb[0, self.start_index:],\n    )\n\n    gs_old = int(math.sqrt(len(posemb_grid)))\n\n    posemb_grid = posemb_grid.reshape(1, gs_old, gs_old, -1).permute(0, 3, 1, 2)\n    posemb_grid = F.interpolate(posemb_grid, size=(gs_h, gs_w), mode=\"bilinear\")\n    posemb_grid = posemb_grid.permute(0, 2, 3, 1).reshape(1, gs_h * gs_w, -1)\n\n    posemb = torch.cat([posemb_tok, posemb_grid], dim=1)\n\n    return posemb\n\n\ndef forward_flex(self, x):\n    b, c, h, w = x.shape\n\n    pos_embed = self._resize_pos_embed(\n        self.pos_embed, h // self.patch_size[1], w // self.patch_size[0]\n    )\n\n    B = x.shape[0]\n\n    if hasattr(self.patch_embed, \"backbone\"):\n        x = self.patch_embed.backbone(x)\n        if isinstance(x, (list, tuple)):\n            x = x[-1]  # last feature if backbone outputs list/tuple of features\n\n    x = self.patch_embed.proj(x).flatten(2).transpose(1, 2)\n\n    if getattr(self, \"dist_token\", None) is not None:\n        cls_tokens = self.cls_token.expand(\n            B, -1, -1\n        )  # stole cls_tokens impl from Phil Wang, thanks\n        dist_token = self.dist_token.expand(B, -1, -1)\n        x = torch.cat((cls_tokens, dist_token, x), dim=1)\n    else:\n        if self.no_embed_class:\n            x = x + pos_embed\n        cls_tokens = self.cls_token.expand(\n            B, -1, -1\n        )  # stole cls_tokens impl from Phil Wang, thanks\n        x = torch.cat((cls_tokens, x), dim=1)\n\n    if not self.no_embed_class:\n        x = x + pos_embed\n    x = self.pos_drop(x)\n\n    for blk in self.blocks:\n        x = blk(x)\n\n    x = self.norm(x)\n\n    return x\n\n\ndef _make_vit_b16_backbone(\n    model,\n    features=None,\n    size=None,\n    hooks=None,\n    vit_features=768,\n    use_readout=\"ignore\",\n    start_index=1,\n    start_index_readout=1,\n):\n    if hooks is None:\n        hooks = [2, 5, 8, 11]\n    if size is None:\n        size = [384, 384]\n    if features is None:\n        features = [96, 192, 384, 768]\n    pretrained = make_backbone_default(model, features, size, hooks, vit_features, use_readout, start_index,\n                                       start_index_readout)\n\n    # We inject this function into the VisionTransformer instances so that\n    # we can use it with interpolated position embeddings without modifying the library source.\n    pretrained.model.forward_flex = types.MethodType(forward_flex, pretrained.model)\n    pretrained.model._resize_pos_embed = types.MethodType(\n        _resize_pos_embed, pretrained.model\n    )\n\n    return pretrained\n\n\ndef _make_pretrained_vitl16_384(pretrained, use_readout=\"ignore\", hooks=None):\n    model = timm.create_model(\"vit_large_patch16_384\", pretrained=pretrained)\n\n    hooks = [5, 11, 17, 23] if hooks is None else hooks\n    return _make_vit_b16_backbone(\n        model,\n        features=[256, 512, 1024, 1024],\n        hooks=hooks,\n        vit_features=1024,\n        use_readout=use_readout,\n    )\n\n\ndef _make_pretrained_vitb16_384(pretrained, use_readout=\"ignore\", hooks=None):\n    model = timm.create_model(\"vit_base_patch16_384\", pretrained=pretrained)\n\n    hooks = [2, 5, 8, 11] if hooks is None else hooks\n    return _make_vit_b16_backbone(\n        model, features=[96, 192, 384, 768], hooks=hooks, use_readout=use_readout\n    )\n\n\ndef _make_vit_b_rn50_backbone(\n    model,\n    features=None,\n    size=None,\n    hooks=None,\n    vit_features=768,\n    patch_size=None,\n    number_stages=2,\n    use_vit_only=False,\n    use_readout=\"ignore\",\n    start_index=1,\n):\n    if patch_size is None:\n        patch_size = [16, 16]\n    if hooks is None:\n        hooks = [0, 1, 8, 11]\n    if size is None:\n        size = [384, 384]\n    if features is None:\n        features = [256, 512, 768, 768]\n    pretrained = nn.Module()\n\n    pretrained.model = model\n\n    used_number_stages = 0 if use_vit_only else number_stages\n    for s in range(used_number_stages):\n        pretrained.model.patch_embed.backbone.stages[s].register_forward_hook(\n            get_activation(str(s + 1))\n        )\n    for s in range(used_number_stages, 4):\n        pretrained.model.blocks[hooks[s]].register_forward_hook(get_activation(str(s + 1)))\n\n    pretrained.activations = activations\n\n    readout_oper = get_readout_oper(vit_features, features, use_readout, start_index)\n\n    for s in range(used_number_stages):\n        nn.Sequential(nn.Identity(), nn.Identity(), nn.Identity())\n        exec(f\"pretrained.act_postprocess{s + 1}=value\")\n    for s in range(used_number_stages, 4):\n        if s < number_stages:\n            final_layer = nn.ConvTranspose2d(\n                in_channels=features[s],\n                out_channels=features[s],\n                kernel_size=4 // (2 ** s),\n                stride=4 // (2 ** s),\n                padding=0,\n                bias=True,\n                dilation=1,\n                groups=1,\n            )\n        elif s > number_stages:\n            final_layer = nn.Conv2d(\n                in_channels=features[3],\n                out_channels=features[3],\n                kernel_size=3,\n                stride=2,\n                padding=1,\n            )\n        else:\n            final_layer = None\n\n        layers = [\n            readout_oper[s],\n            Transpose(1, 2),\n            nn.Unflatten(2, torch.Size([size[0] // 16, size[1] // 16])),\n            nn.Conv2d(\n                in_channels=vit_features,\n                out_channels=features[s],\n                kernel_size=1,\n                stride=1,\n                padding=0,\n            ),\n        ]\n        if final_layer is not None:\n            layers.append(final_layer)\n\n        nn.Sequential(*layers)\n        exec(f\"pretrained.act_postprocess{s + 1}=value\")\n\n    pretrained.model.start_index = start_index\n    pretrained.model.patch_size = patch_size\n\n    # We inject this function into the VisionTransformer instances so that\n    # we can use it with interpolated position embeddings without modifying the library source.\n    pretrained.model.forward_flex = types.MethodType(forward_flex, pretrained.model)\n\n    # We inject this function into the VisionTransformer instances so that\n    # we can use it with interpolated position embeddings without modifying the library source.\n    pretrained.model._resize_pos_embed = types.MethodType(\n        _resize_pos_embed, pretrained.model\n    )\n\n    return pretrained\n\n\ndef _make_pretrained_vitb_rn50_384(\n    pretrained, use_readout=\"ignore\", hooks=None, use_vit_only=False\n):\n    model = timm.create_model(\"vit_base_resnet50_384\", pretrained=pretrained)\n\n    hooks = [0, 1, 8, 11] if hooks is None else hooks\n    return _make_vit_b_rn50_backbone(\n        model,\n        features=[256, 512, 768, 768],\n        size=[384, 384],\n        hooks=hooks,\n        use_vit_only=use_vit_only,\n        use_readout=use_readout,\n    )\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/base_models/midas_repo/midas/base_model.py",
    "content": "import torch\n\n\nclass BaseModel(torch.nn.Module):\n    def load(self, path):\n        \"\"\"Load model from file.\n\n        Args:\n            path (str): file path\n        \"\"\"\n        parameters = torch.load(path, map_location=torch.device('cpu'))\n\n        if \"optimizer\" in parameters:\n            parameters = parameters[\"model\"]\n\n        self.load_state_dict(parameters)\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/base_models/midas_repo/midas/blocks.py",
    "content": "import torch\nimport torch.nn as nn\n\nfrom .backbones.beit import (\n    _make_pretrained_beitl16_512,\n    _make_pretrained_beitl16_384,\n    _make_pretrained_beitb16_384,\n    forward_beit,\n)\nfrom .backbones.swin_common import (\n    forward_swin,\n)\nfrom .backbones.swin2 import (\n    _make_pretrained_swin2l24_384,\n    _make_pretrained_swin2b24_384,\n    _make_pretrained_swin2t16_256,\n)\nfrom .backbones.swin import (\n    _make_pretrained_swinl12_384,\n)\nfrom .backbones.levit import (\n    _make_pretrained_levit_384,\n    forward_levit,\n)\nfrom .backbones.vit import (\n    _make_pretrained_vitb_rn50_384,\n    _make_pretrained_vitl16_384,\n    _make_pretrained_vitb16_384,\n    forward_vit,\n)\n\ndef _make_encoder(backbone, features, use_pretrained, groups=1, expand=False, exportable=True, hooks=None,\n                  use_vit_only=False, use_readout=\"ignore\", in_features=None):\n    if in_features is None:\n        in_features = [96, 256, 512, 1024]\n    if backbone == \"beitl16_512\":\n        pretrained = _make_pretrained_beitl16_512(\n            use_pretrained, hooks=hooks, use_readout=use_readout\n        )\n        scratch = _make_scratch(\n            [256, 512, 1024, 1024], features, groups=groups, expand=expand\n        )  # BEiT_512-L (backbone)\n    elif backbone == \"beitl16_384\":\n        pretrained = _make_pretrained_beitl16_384(\n            use_pretrained, hooks=hooks, use_readout=use_readout\n        )\n        scratch = _make_scratch(\n            [256, 512, 1024, 1024], features, groups=groups, expand=expand\n        )  # BEiT_384-L (backbone)\n    elif backbone == \"beitb16_384\":\n        pretrained = _make_pretrained_beitb16_384(\n            use_pretrained, hooks=hooks, use_readout=use_readout\n        )\n        scratch = _make_scratch(\n            [96, 192, 384, 768], features, groups=groups, expand=expand\n        )  # BEiT_384-B (backbone)\n    elif backbone == \"swin2l24_384\":\n        pretrained = _make_pretrained_swin2l24_384(\n            use_pretrained, hooks=hooks\n        )\n        scratch = _make_scratch(\n            [192, 384, 768, 1536], features, groups=groups, expand=expand\n        )  # Swin2-L/12to24 (backbone)\n    elif backbone == \"swin2b24_384\":\n        pretrained = _make_pretrained_swin2b24_384(\n            use_pretrained, hooks=hooks\n        )\n        scratch = _make_scratch(\n            [128, 256, 512, 1024], features, groups=groups, expand=expand\n        )  # Swin2-B/12to24 (backbone)\n    elif backbone == \"swin2t16_256\":\n        pretrained = _make_pretrained_swin2t16_256(\n            use_pretrained, hooks=hooks\n        )\n        scratch = _make_scratch(\n            [96, 192, 384, 768], features, groups=groups, expand=expand\n        )  # Swin2-T/16 (backbone)\n    elif backbone == \"swinl12_384\":\n        pretrained = _make_pretrained_swinl12_384(\n            use_pretrained, hooks=hooks\n        )\n        scratch = _make_scratch(\n            [192, 384, 768, 1536], features, groups=groups, expand=expand\n        )  # Swin-L/12 (backbone)\n    elif backbone == \"next_vit_large_6m\":\n        from .backbones.next_vit import _make_pretrained_next_vit_large_6m\n        pretrained = _make_pretrained_next_vit_large_6m(hooks=hooks)\n        scratch = _make_scratch(\n            in_features, features, groups=groups, expand=expand\n        )  # Next-ViT-L on ImageNet-1K-6M (backbone)\n    elif backbone == \"levit_384\":\n        pretrained = _make_pretrained_levit_384(\n            use_pretrained, hooks=hooks\n        )\n        scratch = _make_scratch(\n            [384, 512, 768], features, groups=groups, expand=expand\n        )  # LeViT 384 (backbone)\n    elif backbone == \"vitl16_384\":\n        pretrained = _make_pretrained_vitl16_384(\n            use_pretrained, hooks=hooks, use_readout=use_readout\n        )\n        scratch = _make_scratch(\n            [256, 512, 1024, 1024], features, groups=groups, expand=expand\n        )  # ViT-L/16 - 85.0% Top1 (backbone)\n    elif backbone == \"vitb_rn50_384\":\n        pretrained = _make_pretrained_vitb_rn50_384(\n            use_pretrained,\n            hooks=hooks,\n            use_vit_only=use_vit_only,\n            use_readout=use_readout,\n        )\n        scratch = _make_scratch(\n            [256, 512, 768, 768], features, groups=groups, expand=expand\n        )  # ViT-H/16 - 85.0% Top1 (backbone)\n    elif backbone == \"vitb16_384\":\n        pretrained = _make_pretrained_vitb16_384(\n            use_pretrained, hooks=hooks, use_readout=use_readout\n        )\n        scratch = _make_scratch(\n            [96, 192, 384, 768], features, groups=groups, expand=expand\n        )  # ViT-B/16 - 84.6% Top1 (backbone)\n    elif backbone == \"resnext101_wsl\":\n        pretrained = _make_pretrained_resnext101_wsl(use_pretrained)\n        scratch = _make_scratch([256, 512, 1024, 2048], features, groups=groups, expand=expand)  # efficientnet_lite3\n    elif backbone == \"efficientnet_lite3\":\n        pretrained = _make_pretrained_efficientnet_lite3(use_pretrained, exportable=exportable)\n        scratch = _make_scratch([32, 48, 136, 384], features, groups=groups, expand=expand)  # efficientnet_lite3\n    else:\n        print(f\"Backbone '{backbone}' not implemented\")\n        raise AssertionError\n\n    return pretrained, scratch\n\n\ndef _make_scratch(in_shape, out_shape, groups=1, expand=False):\n    scratch = nn.Module()\n\n    out_shape1 = out_shape\n    out_shape2 = out_shape\n    out_shape3 = out_shape\n    if len(in_shape) >= 4:\n        out_shape4 = out_shape\n\n    if expand:\n        out_shape1 = out_shape\n        out_shape2 = out_shape*2\n        out_shape3 = out_shape*4\n        if len(in_shape) >= 4:\n            out_shape4 = out_shape*8\n\n    scratch.layer1_rn = nn.Conv2d(\n        in_shape[0], out_shape1, kernel_size=3, stride=1, padding=1, bias=False, groups=groups\n    )\n    scratch.layer2_rn = nn.Conv2d(\n        in_shape[1], out_shape2, kernel_size=3, stride=1, padding=1, bias=False, groups=groups\n    )\n    scratch.layer3_rn = nn.Conv2d(\n        in_shape[2], out_shape3, kernel_size=3, stride=1, padding=1, bias=False, groups=groups\n    )\n    if len(in_shape) >= 4:\n        scratch.layer4_rn = nn.Conv2d(\n            in_shape[3], out_shape4, kernel_size=3, stride=1, padding=1, bias=False, groups=groups\n        )\n\n    return scratch\n\n\ndef _make_pretrained_efficientnet_lite3(use_pretrained, exportable=False):\n    efficientnet = torch.hub.load(\n        \"rwightman/gen-efficientnet-pytorch\",\n        \"tf_efficientnet_lite3\",\n        pretrained=use_pretrained,\n        exportable=exportable\n    )\n    return _make_efficientnet_backbone(efficientnet)\n\n\ndef _make_efficientnet_backbone(effnet):\n    pretrained = nn.Module()\n\n    pretrained.layer1 = nn.Sequential(\n        effnet.conv_stem, effnet.bn1, effnet.act1, *effnet.blocks[0:2]\n    )\n    pretrained.layer2 = nn.Sequential(*effnet.blocks[2:3])\n    pretrained.layer3 = nn.Sequential(*effnet.blocks[3:5])\n    pretrained.layer4 = nn.Sequential(*effnet.blocks[5:9])\n\n    return pretrained\n\n\ndef _make_resnet_backbone(resnet):\n    pretrained = nn.Module()\n    pretrained.layer1 = nn.Sequential(\n        resnet.conv1, resnet.bn1, resnet.relu, resnet.maxpool, resnet.layer1\n    )\n\n    pretrained.layer2 = resnet.layer2\n    pretrained.layer3 = resnet.layer3\n    pretrained.layer4 = resnet.layer4\n\n    return pretrained\n\n\ndef _make_pretrained_resnext101_wsl(use_pretrained):\n    resnet = torch.hub.load(\"facebookresearch/WSL-Images\", \"resnext101_32x8d_wsl\")\n    return _make_resnet_backbone(resnet)\n\n\n\nclass Interpolate(nn.Module):\n    \"\"\"Interpolation module.\n    \"\"\"\n\n    def __init__(self, scale_factor, mode, align_corners=False):\n        \"\"\"Init.\n\n        Args:\n            scale_factor (float): scaling\n            mode (str): interpolation mode\n        \"\"\"\n        super(Interpolate, self).__init__()\n\n        self.interp = nn.functional.interpolate\n        self.scale_factor = scale_factor\n        self.mode = mode\n        self.align_corners = align_corners\n\n    def forward(self, x):\n        \"\"\"Forward pass.\n\n        Args:\n            x (tensor): input\n\n        Returns:\n            tensor: interpolated data\n        \"\"\"\n\n        x = self.interp(\n            x, scale_factor=self.scale_factor, mode=self.mode, align_corners=self.align_corners\n        )\n\n        return x\n\n\nclass ResidualConvUnit(nn.Module):\n    \"\"\"Residual convolution module.\n    \"\"\"\n\n    def __init__(self, features):\n        \"\"\"Init.\n\n        Args:\n            features (int): number of features\n        \"\"\"\n        super().__init__()\n\n        self.conv1 = nn.Conv2d(\n            features, features, kernel_size=3, stride=1, padding=1, bias=True\n        )\n\n        self.conv2 = nn.Conv2d(\n            features, features, kernel_size=3, stride=1, padding=1, bias=True\n        )\n\n        self.relu = nn.ReLU(inplace=True)\n\n    def forward(self, x):\n        \"\"\"Forward pass.\n\n        Args:\n            x (tensor): input\n\n        Returns:\n            tensor: output\n        \"\"\"\n        out = self.relu(x)\n        out = self.conv1(out)\n        out = self.relu(out)\n        out = self.conv2(out)\n\n        return out + x\n\n\nclass FeatureFusionBlock(nn.Module):\n    \"\"\"Feature fusion block.\n    \"\"\"\n\n    def __init__(self, features):\n        \"\"\"Init.\n\n        Args:\n            features (int): number of features\n        \"\"\"\n        super(FeatureFusionBlock, self).__init__()\n\n        self.resConfUnit1 = ResidualConvUnit(features)\n        self.resConfUnit2 = ResidualConvUnit(features)\n\n    def forward(self, *xs):\n        \"\"\"Forward pass.\n\n        Returns:\n            tensor: output\n        \"\"\"\n        output = xs[0]\n\n        if len(xs) == 2:\n            output += self.resConfUnit1(xs[1])\n\n        output = self.resConfUnit2(output)\n\n        output = nn.functional.interpolate(\n            output, scale_factor=2, mode=\"bilinear\", align_corners=True\n        )\n\n        return output\n\n\n\n\nclass ResidualConvUnit_custom(nn.Module):\n    \"\"\"Residual convolution module.\n    \"\"\"\n\n    def __init__(self, features, activation, bn):\n        \"\"\"Init.\n\n        Args:\n            features (int): number of features\n        \"\"\"\n        super().__init__()\n\n        self.bn = bn\n\n        self.groups=1\n\n        self.conv1 = nn.Conv2d(\n            features, features, kernel_size=3, stride=1, padding=1, bias=True, groups=self.groups\n        )\n\n        self.conv2 = nn.Conv2d(\n            features, features, kernel_size=3, stride=1, padding=1, bias=True, groups=self.groups\n        )\n\n        if self.bn is True:\n            self.bn1 = nn.BatchNorm2d(features)\n            self.bn2 = nn.BatchNorm2d(features)\n\n        self.activation = activation\n\n        self.skip_add = nn.quantized.FloatFunctional()\n\n    def forward(self, x):\n        \"\"\"Forward pass.\n\n        Args:\n            x (tensor): input\n\n        Returns:\n            tensor: output\n        \"\"\"\n\n        out = self.activation(x)\n        out = self.conv1(out)\n        if self.bn is True:\n            out = self.bn1(out)\n\n        out = self.activation(out)\n        out = self.conv2(out)\n        if self.bn is True:\n            out = self.bn2(out)\n\n        if self.groups > 1:\n            out = self.conv_merge(out)\n\n        return self.skip_add.add(out, x)\n\n        # return out + x\n\n\nclass FeatureFusionBlock_custom(nn.Module):\n    \"\"\"Feature fusion block.\n    \"\"\"\n\n    def __init__(self, features, activation, deconv=False, bn=False, expand=False, align_corners=True, size=None):\n        \"\"\"Init.\n\n        Args:\n            features (int): number of features\n        \"\"\"\n        super(FeatureFusionBlock_custom, self).__init__()\n\n        self.deconv = deconv\n        self.align_corners = align_corners\n\n        self.groups=1\n\n        self.expand = expand\n        out_features = features\n        if self.expand is True:\n            out_features = features//2\n\n        self.out_conv = nn.Conv2d(features, out_features, kernel_size=1, stride=1, padding=0, bias=True, groups=1)\n\n        self.resConfUnit1 = ResidualConvUnit_custom(features, activation, bn)\n        self.resConfUnit2 = ResidualConvUnit_custom(features, activation, bn)\n\n        self.skip_add = nn.quantized.FloatFunctional()\n\n        self.size=size\n\n    def forward(self, *xs, size=None):\n        \"\"\"Forward pass.\n\n        Returns:\n            tensor: output\n        \"\"\"\n        output = xs[0]\n\n        if len(xs) == 2:\n            res = self.resConfUnit1(xs[1])\n            output = self.skip_add.add(output, res)\n            # output += res\n\n        output = self.resConfUnit2(output)\n\n        if (size is None) and (self.size is None):\n            modifier = {\"scale_factor\": 2}\n        elif size is None:\n            modifier = {\"size\": self.size}\n        else:\n            modifier = {\"size\": size}\n\n        output = nn.functional.interpolate(\n            output, **modifier, mode=\"bilinear\", align_corners=self.align_corners\n        )\n\n        output = self.out_conv(output)\n\n        return output\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/base_models/midas_repo/midas/dpt_depth.py",
    "content": "import torch\nimport torch.nn as nn\n\nfrom .base_model import BaseModel\nfrom .blocks import (\n    FeatureFusionBlock_custom,\n    Interpolate,\n    _make_encoder,\n    forward_beit,\n    forward_swin,\n    forward_levit,\n    forward_vit,\n)\nfrom .backbones.levit import stem_b4_transpose\nfrom timm.models.layers import get_act_layer\n\n\ndef _make_fusion_block(features, use_bn, size = None):\n    return FeatureFusionBlock_custom(\n        features,\n        nn.ReLU(False),\n        deconv=False,\n        bn=use_bn,\n        expand=False,\n        align_corners=True,\n        size=size,\n    )\n\n\nclass DPT(BaseModel):\n    def __init__(\n        self,\n        head,\n        features=256,\n        backbone=\"vitb_rn50_384\",\n        readout=\"project\",\n        channels_last=False,\n        use_bn=False,\n        **kwargs\n    ):\n\n        super(DPT, self).__init__()\n\n        self.channels_last = channels_last\n\n        # For the Swin, Swin 2, LeViT and Next-ViT Transformers, the hierarchical architectures prevent setting the\n        # hooks freely. Instead, the hooks have to be chosen according to the ranges specified in the comments.\n        hooks = {\n            \"beitl16_512\": [5, 11, 17, 23],\n            \"beitl16_384\": [5, 11, 17, 23],\n            \"beitb16_384\": [2, 5, 8, 11],\n            \"swin2l24_384\": [1, 1, 17, 1],  # Allowed ranges: [0, 1], [0,  1], [ 0, 17], [ 0,  1]\n            \"swin2b24_384\": [1, 1, 17, 1],                  # [0, 1], [0,  1], [ 0, 17], [ 0,  1]\n            \"swin2t16_256\": [1, 1, 5, 1],                   # [0, 1], [0,  1], [ 0,  5], [ 0,  1]\n            \"swinl12_384\": [1, 1, 17, 1],                   # [0, 1], [0,  1], [ 0, 17], [ 0,  1]\n            \"next_vit_large_6m\": [2, 6, 36, 39],            # [0, 2], [3,  6], [ 7, 36], [37, 39]\n            \"levit_384\": [3, 11, 21],                       # [0, 3], [6, 11], [14, 21]\n            \"vitb_rn50_384\": [0, 1, 8, 11],\n            \"vitb16_384\": [2, 5, 8, 11],\n            \"vitl16_384\": [5, 11, 17, 23],\n        }[backbone]\n\n        if \"next_vit\" in backbone:\n            in_features = {\n                \"next_vit_large_6m\": [96, 256, 512, 1024],\n            }[backbone]\n        else:\n            in_features = None\n\n        # Instantiate backbone and reassemble blocks\n        self.pretrained, self.scratch = _make_encoder(\n            backbone,\n            features,\n            False, # Set to true of you want to train from scratch, uses ImageNet weights\n            groups=1,\n            expand=False,\n            exportable=False,\n            hooks=hooks,\n            use_readout=readout,\n            in_features=in_features,\n        )\n\n        self.number_layers = len(hooks) if hooks is not None else 4\n        size_refinenet3 = None\n        self.scratch.stem_transpose = None\n\n        if \"beit\" in backbone:\n            self.forward_transformer = forward_beit\n        elif \"swin\" in backbone:\n            self.forward_transformer = forward_swin\n        elif \"next_vit\" in backbone:\n            from .backbones.next_vit import forward_next_vit\n            self.forward_transformer = forward_next_vit\n        elif \"levit\" in backbone:\n            self.forward_transformer = forward_levit\n            size_refinenet3 = 7\n            self.scratch.stem_transpose = stem_b4_transpose(256, 128, get_act_layer(\"hard_swish\"))\n        else:\n            self.forward_transformer = forward_vit\n\n        self.scratch.refinenet1 = _make_fusion_block(features, use_bn)\n        self.scratch.refinenet2 = _make_fusion_block(features, use_bn)\n        self.scratch.refinenet3 = _make_fusion_block(features, use_bn, size_refinenet3)\n        if self.number_layers >= 4:\n            self.scratch.refinenet4 = _make_fusion_block(features, use_bn)\n\n        self.scratch.output_conv = head\n\n\n    def forward(self, x):\n        if self.channels_last is True:\n            x.contiguous(memory_format=torch.channels_last)\n\n        layers = self.forward_transformer(self.pretrained, x)\n        if self.number_layers == 3:\n            layer_1, layer_2, layer_3 = layers\n        else:\n            layer_1, layer_2, layer_3, layer_4 = layers\n\n        layer_1_rn = self.scratch.layer1_rn(layer_1)\n        layer_2_rn = self.scratch.layer2_rn(layer_2)\n        layer_3_rn = self.scratch.layer3_rn(layer_3)\n        if self.number_layers >= 4:\n            layer_4_rn = self.scratch.layer4_rn(layer_4)\n\n        if self.number_layers == 3:\n            path_3 = self.scratch.refinenet3(layer_3_rn, size=layer_2_rn.shape[2:])\n        else:\n            path_4 = self.scratch.refinenet4(layer_4_rn, size=layer_3_rn.shape[2:])\n            path_3 = self.scratch.refinenet3(path_4, layer_3_rn, size=layer_2_rn.shape[2:])\n        path_2 = self.scratch.refinenet2(path_3, layer_2_rn, size=layer_1_rn.shape[2:])\n        path_1 = self.scratch.refinenet1(path_2, layer_1_rn)\n\n        if self.scratch.stem_transpose is not None:\n            path_1 = self.scratch.stem_transpose(path_1)\n\n        out = self.scratch.output_conv(path_1)\n\n        return out\n\n\nclass DPTDepthModel(DPT):\n    def __init__(self, path=None, non_negative=True, **kwargs):\n        features = kwargs[\"features\"] if \"features\" in kwargs else 256\n        head_features_1 = kwargs[\"head_features_1\"] if \"head_features_1\" in kwargs else features\n        head_features_2 = kwargs[\"head_features_2\"] if \"head_features_2\" in kwargs else 32\n        kwargs.pop(\"head_features_1\", None)\n        kwargs.pop(\"head_features_2\", None)\n\n        head = nn.Sequential(\n            nn.Conv2d(head_features_1, head_features_1 // 2, kernel_size=3, stride=1, padding=1),\n            Interpolate(scale_factor=2, mode=\"bilinear\", align_corners=True),\n            nn.Conv2d(head_features_1 // 2, head_features_2, kernel_size=3, stride=1, padding=1),\n            nn.ReLU(True),\n            nn.Conv2d(head_features_2, 1, kernel_size=1, stride=1, padding=0),\n            nn.ReLU(True) if non_negative else nn.Identity(),\n            nn.Identity(),\n        )\n\n        super().__init__(head, **kwargs)\n\n        if path is not None:\n           self.load(path)\n\n    def forward(self, x):\n        return super().forward(x).squeeze(dim=1)\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/base_models/midas_repo/midas/midas_net.py",
    "content": "\"\"\"MidashNet: Network for monocular depth estimation trained by mixing several datasets.\nThis file contains code that is adapted from\nhttps://github.com/thomasjpfan/pytorch_refinenet/blob/master/pytorch_refinenet/refinenet/refinenet_4cascade.py\n\"\"\"\nimport torch\nimport torch.nn as nn\n\nfrom .base_model import BaseModel\nfrom .blocks import FeatureFusionBlock, Interpolate, _make_encoder\n\n\nclass MidasNet(BaseModel):\n    \"\"\"Network for monocular depth estimation.\n    \"\"\"\n\n    def __init__(self, path=None, features=256, non_negative=True):\n        \"\"\"Init.\n\n        Args:\n            path (str, optional): Path to saved model. Defaults to None.\n            features (int, optional): Number of features. Defaults to 256.\n            backbone (str, optional): Backbone network for encoder. Defaults to resnet50\n        \"\"\"\n        print(\"Loading weights: \", path)\n\n        super(MidasNet, self).__init__()\n\n        use_pretrained = False if path is None else True\n\n        self.pretrained, self.scratch = _make_encoder(backbone=\"resnext101_wsl\", features=features, use_pretrained=use_pretrained)\n\n        self.scratch.refinenet4 = FeatureFusionBlock(features)\n        self.scratch.refinenet3 = FeatureFusionBlock(features)\n        self.scratch.refinenet2 = FeatureFusionBlock(features)\n        self.scratch.refinenet1 = FeatureFusionBlock(features)\n\n        self.scratch.output_conv = nn.Sequential(\n            nn.Conv2d(features, 128, kernel_size=3, stride=1, padding=1),\n            Interpolate(scale_factor=2, mode=\"bilinear\"),\n            nn.Conv2d(128, 32, kernel_size=3, stride=1, padding=1),\n            nn.ReLU(True),\n            nn.Conv2d(32, 1, kernel_size=1, stride=1, padding=0),\n            nn.ReLU(True) if non_negative else nn.Identity(),\n        )\n\n        if path:\n            self.load(path)\n\n    def forward(self, x):\n        \"\"\"Forward pass.\n\n        Args:\n            x (tensor): input data (image)\n\n        Returns:\n            tensor: depth\n        \"\"\"\n\n        layer_1 = self.pretrained.layer1(x)\n        layer_2 = self.pretrained.layer2(layer_1)\n        layer_3 = self.pretrained.layer3(layer_2)\n        layer_4 = self.pretrained.layer4(layer_3)\n\n        layer_1_rn = self.scratch.layer1_rn(layer_1)\n        layer_2_rn = self.scratch.layer2_rn(layer_2)\n        layer_3_rn = self.scratch.layer3_rn(layer_3)\n        layer_4_rn = self.scratch.layer4_rn(layer_4)\n\n        path_4 = self.scratch.refinenet4(layer_4_rn)\n        path_3 = self.scratch.refinenet3(path_4, layer_3_rn)\n        path_2 = self.scratch.refinenet2(path_3, layer_2_rn)\n        path_1 = self.scratch.refinenet1(path_2, layer_1_rn)\n\n        out = self.scratch.output_conv(path_1)\n\n        return torch.squeeze(out, dim=1)\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/base_models/midas_repo/midas/midas_net_custom.py",
    "content": "\"\"\"MidashNet: Network for monocular depth estimation trained by mixing several datasets.\nThis file contains code that is adapted from\nhttps://github.com/thomasjpfan/pytorch_refinenet/blob/master/pytorch_refinenet/refinenet/refinenet_4cascade.py\n\"\"\"\nimport torch\nimport torch.nn as nn\n\nfrom .base_model import BaseModel\nfrom .blocks import FeatureFusionBlock, FeatureFusionBlock_custom, Interpolate, _make_encoder\n\n\nclass MidasNet_small(BaseModel):\n    \"\"\"Network for monocular depth estimation.\n    \"\"\"\n\n    def __init__(self, path=None, features=64, backbone=\"efficientnet_lite3\", non_negative=True, exportable=True, channels_last=False, align_corners=True,\n        blocks=None):\n        \"\"\"Init.\n\n        Args:\n            path (str, optional): Path to saved model. Defaults to None.\n            features (int, optional): Number of features. Defaults to 256.\n            backbone (str, optional): Backbone network for encoder. Defaults to resnet50\n        \"\"\"\n        if blocks is None:\n            blocks = {\"expand\": True}\n        print(\"Loading weights: \", path)\n\n        super(MidasNet_small, self).__init__()\n\n        use_pretrained = False if path else True\n\n        self.channels_last = channels_last\n        self.blocks = blocks\n        self.backbone = backbone\n\n        self.groups = 1\n\n        features1=features\n        features2=features\n        features3=features\n        features4=features\n        self.expand = False\n        if \"expand\" in self.blocks and self.blocks['expand'] is True:\n            self.expand = True\n            features1=features\n            features2=features*2\n            features3=features*4\n            features4=features*8\n\n        self.pretrained, self.scratch = _make_encoder(self.backbone, features, use_pretrained, groups=self.groups, expand=self.expand, exportable=exportable)\n\n        self.scratch.activation = nn.ReLU(False)\n\n        self.scratch.refinenet4 = FeatureFusionBlock_custom(features4, self.scratch.activation, deconv=False, bn=False, expand=self.expand, align_corners=align_corners)\n        self.scratch.refinenet3 = FeatureFusionBlock_custom(features3, self.scratch.activation, deconv=False, bn=False, expand=self.expand, align_corners=align_corners)\n        self.scratch.refinenet2 = FeatureFusionBlock_custom(features2, self.scratch.activation, deconv=False, bn=False, expand=self.expand, align_corners=align_corners)\n        self.scratch.refinenet1 = FeatureFusionBlock_custom(features1, self.scratch.activation, deconv=False, bn=False, align_corners=align_corners)\n\n\n        self.scratch.output_conv = nn.Sequential(\n            nn.Conv2d(features, features//2, kernel_size=3, stride=1, padding=1, groups=self.groups),\n            Interpolate(scale_factor=2, mode=\"bilinear\"),\n            nn.Conv2d(features//2, 32, kernel_size=3, stride=1, padding=1),\n            self.scratch.activation,\n            nn.Conv2d(32, 1, kernel_size=1, stride=1, padding=0),\n            nn.ReLU(True) if non_negative else nn.Identity(),\n            nn.Identity(),\n        )\n\n        if path:\n            self.load(path)\n\n\n    def forward(self, x):\n        \"\"\"Forward pass.\n\n        Args:\n            x (tensor): input data (image)\n\n        Returns:\n            tensor: depth\n        \"\"\"\n        if self.channels_last is True:\n            print(\"self.channels_last = \", self.channels_last)\n            x.contiguous(memory_format=torch.channels_last)\n\n\n        layer_1 = self.pretrained.layer1(x)\n        layer_2 = self.pretrained.layer2(layer_1)\n        layer_3 = self.pretrained.layer3(layer_2)\n        layer_4 = self.pretrained.layer4(layer_3)\n\n        layer_1_rn = self.scratch.layer1_rn(layer_1)\n        layer_2_rn = self.scratch.layer2_rn(layer_2)\n        layer_3_rn = self.scratch.layer3_rn(layer_3)\n        layer_4_rn = self.scratch.layer4_rn(layer_4)\n\n\n        path_4 = self.scratch.refinenet4(layer_4_rn)\n        path_3 = self.scratch.refinenet3(path_4, layer_3_rn)\n        path_2 = self.scratch.refinenet2(path_3, layer_2_rn)\n        path_1 = self.scratch.refinenet1(path_2, layer_1_rn)\n\n        out = self.scratch.output_conv(path_1)\n\n        return torch.squeeze(out, dim=1)\n\n\n\ndef fuse_model(m):\n    prev_previous_type = nn.Identity()\n    prev_previous_name = ''\n    previous_type = nn.Identity()\n    previous_name = ''\n    for name, module in m.named_modules():\n        if prev_previous_type == nn.Conv2d and previous_type == nn.BatchNorm2d and type(module) == nn.ReLU:\n            # print(\"FUSED \", prev_previous_name, previous_name, name)\n            torch.quantization.fuse_modules(m, [prev_previous_name, previous_name, name], inplace=True)\n        elif prev_previous_type == nn.Conv2d and previous_type == nn.BatchNorm2d:\n            # print(\"FUSED \", prev_previous_name, previous_name)\n            torch.quantization.fuse_modules(m, [prev_previous_name, previous_name], inplace=True)\n        # elif previous_type == nn.Conv2d and type(module) == nn.ReLU:\n        #    print(\"FUSED \", previous_name, name)\n        #    torch.quantization.fuse_modules(m, [previous_name, name], inplace=True)\n\n        prev_previous_type = previous_type\n        prev_previous_name = previous_name\n        previous_type = type(module)\n        previous_name = name\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/base_models/midas_repo/midas/model_loader.py",
    "content": "import cv2\nimport torch\n\nfrom midas.dpt_depth import DPTDepthModel\nfrom midas.midas_net import MidasNet\nfrom midas.midas_net_custom import MidasNet_small\nfrom midas.transforms import Resize, NormalizeImage, PrepareForNet\n\nfrom torchvision.transforms import Compose\n\ndefault_models = {\n    \"dpt_beit_large_512\": \"weights/dpt_beit_large_512.pt\",\n    \"dpt_beit_large_384\": \"weights/dpt_beit_large_384.pt\",\n    \"dpt_beit_base_384\": \"weights/dpt_beit_base_384.pt\",\n    \"dpt_swin2_large_384\": \"weights/dpt_swin2_large_384.pt\",\n    \"dpt_swin2_base_384\": \"weights/dpt_swin2_base_384.pt\",\n    \"dpt_swin2_tiny_256\": \"weights/dpt_swin2_tiny_256.pt\",\n    \"dpt_swin_large_384\": \"weights/dpt_swin_large_384.pt\",\n    \"dpt_next_vit_large_384\": \"weights/dpt_next_vit_large_384.pt\",\n    \"dpt_levit_224\": \"weights/dpt_levit_224.pt\",\n    \"dpt_large_384\": \"weights/dpt_large_384.pt\",\n    \"dpt_hybrid_384\": \"weights/dpt_hybrid_384.pt\",\n    \"midas_v21_384\": \"weights/midas_v21_384.pt\",\n    \"midas_v21_small_256\": \"weights/midas_v21_small_256.pt\",\n    \"openvino_midas_v21_small_256\": \"weights/openvino_midas_v21_small_256.xml\",\n}\n\n\ndef load_model(device, model_path, model_type=\"dpt_large_384\", optimize=True, height=None, square=False):\n    \"\"\"Load the specified network.\n\n    Args:\n        device (device): the torch device used\n        model_path (str): path to saved model\n        model_type (str): the type of the model to be loaded\n        optimize (bool): optimize the model to half-integer on CUDA?\n        height (int): inference encoder image height\n        square (bool): resize to a square resolution?\n\n    Returns:\n        The loaded network, the transform which prepares images as input to the network and the dimensions of the\n        network input\n    \"\"\"\n    if \"openvino\" in model_type:\n        from openvino import Core\n\n    keep_aspect_ratio = not square\n\n    if model_type == \"dpt_beit_large_512\":\n        model = DPTDepthModel(\n            path=model_path,\n            backbone=\"beitl16_512\",\n            non_negative=True,\n        )\n        net_w, net_h = 512, 512\n        resize_mode = \"minimal\"\n        normalization = NormalizeImage(mean=[0.5, 0.5, 0.5], std=[0.5, 0.5, 0.5])\n\n    elif model_type == \"dpt_beit_large_384\":\n        model = DPTDepthModel(\n            path=model_path,\n            backbone=\"beitl16_384\",\n            non_negative=True,\n        )\n        net_w, net_h = 384, 384\n        resize_mode = \"minimal\"\n        normalization = NormalizeImage(mean=[0.5, 0.5, 0.5], std=[0.5, 0.5, 0.5])\n\n    elif model_type == \"dpt_beit_base_384\":\n        model = DPTDepthModel(\n            path=model_path,\n            backbone=\"beitb16_384\",\n            non_negative=True,\n        )\n        net_w, net_h = 384, 384\n        resize_mode = \"minimal\"\n        normalization = NormalizeImage(mean=[0.5, 0.5, 0.5], std=[0.5, 0.5, 0.5])\n\n    elif model_type == \"dpt_swin2_large_384\":\n        model = DPTDepthModel(\n            path=model_path,\n            backbone=\"swin2l24_384\",\n            non_negative=True,\n        )\n        net_w, net_h = 384, 384\n        keep_aspect_ratio = False\n        resize_mode = \"minimal\"\n        normalization = NormalizeImage(mean=[0.5, 0.5, 0.5], std=[0.5, 0.5, 0.5])\n\n    elif model_type == \"dpt_swin2_base_384\":\n        model = DPTDepthModel(\n            path=model_path,\n            backbone=\"swin2b24_384\",\n            non_negative=True,\n        )\n        net_w, net_h = 384, 384\n        keep_aspect_ratio = False\n        resize_mode = \"minimal\"\n        normalization = NormalizeImage(mean=[0.5, 0.5, 0.5], std=[0.5, 0.5, 0.5])\n\n    elif model_type == \"dpt_swin2_tiny_256\":\n        model = DPTDepthModel(\n            path=model_path,\n            backbone=\"swin2t16_256\",\n            non_negative=True,\n        )\n        net_w, net_h = 256, 256\n        keep_aspect_ratio = False\n        resize_mode = \"minimal\"\n        normalization = NormalizeImage(mean=[0.5, 0.5, 0.5], std=[0.5, 0.5, 0.5])\n\n    elif model_type == \"dpt_swin_large_384\":\n        model = DPTDepthModel(\n            path=model_path,\n            backbone=\"swinl12_384\",\n            non_negative=True,\n        )\n        net_w, net_h = 384, 384\n        keep_aspect_ratio = False\n        resize_mode = \"minimal\"\n        normalization = NormalizeImage(mean=[0.5, 0.5, 0.5], std=[0.5, 0.5, 0.5])\n\n    elif model_type == \"dpt_next_vit_large_384\":\n        model = DPTDepthModel(\n            path=model_path,\n            backbone=\"next_vit_large_6m\",\n            non_negative=True,\n        )\n        net_w, net_h = 384, 384\n        resize_mode = \"minimal\"\n        normalization = NormalizeImage(mean=[0.5, 0.5, 0.5], std=[0.5, 0.5, 0.5])\n\n    # We change the notation from dpt_levit_224 (MiDaS notation) to levit_384 (timm notation) here, where the 224 refers\n    # to the resolution 224x224 used by LeViT and 384 is the first entry of the embed_dim, see _cfg and model_cfgs of\n    # https://github.com/rwightman/pytorch-image-models/blob/main/timm/models/levit.py\n    # (commit id: 927f031293a30afb940fff0bee34b85d9c059b0e)\n    elif model_type == \"dpt_levit_224\":\n        model = DPTDepthModel(\n            path=model_path,\n            backbone=\"levit_384\",\n            non_negative=True,\n            head_features_1=64,\n            head_features_2=8,\n        )\n        net_w, net_h = 224, 224\n        keep_aspect_ratio = False\n        resize_mode = \"minimal\"\n        normalization = NormalizeImage(mean=[0.5, 0.5, 0.5], std=[0.5, 0.5, 0.5])\n\n    elif model_type == \"dpt_large_384\":\n        model = DPTDepthModel(\n            path=model_path,\n            backbone=\"vitl16_384\",\n            non_negative=True,\n        )\n        net_w, net_h = 384, 384\n        resize_mode = \"minimal\"\n        normalization = NormalizeImage(mean=[0.5, 0.5, 0.5], std=[0.5, 0.5, 0.5])\n\n    elif model_type == \"dpt_hybrid_384\":\n        model = DPTDepthModel(\n            path=model_path,\n            backbone=\"vitb_rn50_384\",\n            non_negative=True,\n        )\n        net_w, net_h = 384, 384\n        resize_mode = \"minimal\"\n        normalization = NormalizeImage(mean=[0.5, 0.5, 0.5], std=[0.5, 0.5, 0.5])\n\n    elif model_type == \"midas_v21_384\":\n        model = MidasNet(model_path, non_negative=True)\n        net_w, net_h = 384, 384\n        resize_mode = \"upper_bound\"\n        normalization = NormalizeImage(\n            mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225]\n        )\n\n    elif model_type == \"midas_v21_small_256\":\n        model = MidasNet_small(model_path, features=64, backbone=\"efficientnet_lite3\", exportable=True,\n                               non_negative=True, blocks={'expand': True})\n        net_w, net_h = 256, 256\n        resize_mode = \"upper_bound\"\n        normalization = NormalizeImage(\n            mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225]\n        )\n\n    elif model_type == \"openvino_midas_v21_small_256\":\n        ie = Core()\n        uncompiled_model = ie.read_model(model=model_path)\n        model = ie.compile_model(uncompiled_model, \"CPU\")\n        net_w, net_h = 256, 256\n        resize_mode = \"upper_bound\"\n        normalization = NormalizeImage(\n            mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225]\n        )\n\n    else:\n        print(f\"model_type '{model_type}' not implemented, use: --model_type large\")\n        raise AssertionError\n\n    if \"openvino\" not in model_type:\n        print(\"Model loaded, number of parameters = {:.0f}M\".format(sum(p.numel() for p in model.parameters()) / 1e6))\n    else:\n        print(\"Model loaded, optimized with OpenVINO\")\n\n    if \"openvino\" in model_type:\n        keep_aspect_ratio = False\n\n    if height is not None:\n        net_w, net_h = height, height\n\n    transform = Compose(\n        [\n            Resize(\n                net_w,\n                net_h,\n                resize_target=None,\n                keep_aspect_ratio=keep_aspect_ratio,\n                ensure_multiple_of=32,\n                resize_method=resize_mode,\n                image_interpolation_method=cv2.INTER_CUBIC,\n            ),\n            normalization,\n            PrepareForNet(),\n        ]\n    )\n\n    if \"openvino\" not in model_type:\n        model.eval()\n\n    if optimize and (device == torch.device(\"cuda\")):\n        if \"openvino\" not in model_type:\n            model = model.to(memory_format=torch.channels_last)\n            model = model.half()\n        else:\n            print(\"Error: OpenVINO models are already optimized. No optimization to half-float possible.\")\n            exit()\n\n    if \"openvino\" not in model_type:\n        model.to(device)\n\n    return model, transform, net_w, net_h\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/base_models/midas_repo/midas/transforms.py",
    "content": "import numpy as np\nimport cv2\nimport math\n\n\ndef apply_min_size(sample, size, image_interpolation_method=cv2.INTER_AREA):\n    \"\"\"Rezise the sample to ensure the given size. Keeps aspect ratio.\n\n    Args:\n        sample (dict): sample\n        size (tuple): image size\n\n    Returns:\n        tuple: new size\n    \"\"\"\n    shape = list(sample[\"disparity\"].shape)\n\n    if shape[0] >= size[0] and shape[1] >= size[1]:\n        return sample\n\n    scale = [0, 0]\n    scale[0] = size[0] / shape[0]\n    scale[1] = size[1] / shape[1]\n\n    scale = max(scale)\n\n    shape[0] = math.ceil(scale * shape[0])\n    shape[1] = math.ceil(scale * shape[1])\n\n    # resize\n    sample[\"image\"] = cv2.resize(\n        sample[\"image\"], tuple(shape[::-1]), interpolation=image_interpolation_method\n    )\n\n    sample[\"disparity\"] = cv2.resize(\n        sample[\"disparity\"], tuple(shape[::-1]), interpolation=cv2.INTER_NEAREST\n    )\n    sample[\"mask\"] = cv2.resize(\n        sample[\"mask\"].astype(np.float32),\n        tuple(shape[::-1]),\n        interpolation=cv2.INTER_NEAREST,\n    )\n    sample[\"mask\"] = sample[\"mask\"].astype(bool)\n\n    return tuple(shape)\n\n\nclass Resize(object):\n    \"\"\"Resize sample to given size (width, height).\n    \"\"\"\n\n    def __init__(\n        self,\n        width,\n        height,\n        resize_target=True,\n        keep_aspect_ratio=False,\n        ensure_multiple_of=1,\n        resize_method=\"lower_bound\",\n        image_interpolation_method=cv2.INTER_AREA,\n    ):\n        \"\"\"Init.\n\n        Args:\n            width (int): desired output width\n            height (int): desired output height\n            resize_target (bool, optional):\n                True: Resize the full sample (image, mask, target).\n                False: Resize image only.\n                Defaults to True.\n            keep_aspect_ratio (bool, optional):\n                True: Keep the aspect ratio of the input sample.\n                Output sample might not have the given width and height, and\n                resize behaviour depends on the parameter 'resize_method'.\n                Defaults to False.\n            ensure_multiple_of (int, optional):\n                Output width and height is constrained to be multiple of this parameter.\n                Defaults to 1.\n            resize_method (str, optional):\n                \"lower_bound\": Output will be at least as large as the given size.\n                \"upper_bound\": Output will be at max as large as the given size. (Output size might be smaller than given size.)\n                \"minimal\": Scale as least as possible.  (Output size might be smaller than given size.)\n                Defaults to \"lower_bound\".\n        \"\"\"\n        self.__width = width\n        self.__height = height\n\n        self.__resize_target = resize_target\n        self.__keep_aspect_ratio = keep_aspect_ratio\n        self.__multiple_of = ensure_multiple_of\n        self.__resize_method = resize_method\n        self.__image_interpolation_method = image_interpolation_method\n\n    def constrain_to_multiple_of(self, x, min_val=0, max_val=None):\n        y = (np.round(x / self.__multiple_of) * self.__multiple_of).astype(int)\n\n        if max_val is not None and y > max_val:\n            y = (np.floor(x / self.__multiple_of) * self.__multiple_of).astype(int)\n\n        if y < min_val:\n            y = (np.ceil(x / self.__multiple_of) * self.__multiple_of).astype(int)\n\n        return y\n\n    def get_size(self, width, height):\n        # determine new height and width\n        scale_height = self.__height / height\n        scale_width = self.__width / width\n\n        if self.__keep_aspect_ratio:\n            if self.__resize_method == \"lower_bound\":\n                # scale such that output size is lower bound\n                if scale_width > scale_height:\n                    # fit width\n                    scale_height = scale_width\n                else:\n                    # fit height\n                    scale_width = scale_height\n            elif self.__resize_method == \"upper_bound\":\n                # scale such that output size is upper bound\n                if scale_width < scale_height:\n                    # fit width\n                    scale_height = scale_width\n                else:\n                    # fit height\n                    scale_width = scale_height\n            elif self.__resize_method == \"minimal\":\n                # scale as least as possbile\n                if abs(1 - scale_width) < abs(1 - scale_height):\n                    # fit width\n                    scale_height = scale_width\n                else:\n                    # fit height\n                    scale_width = scale_height\n            else:\n                raise ValueError(\n                    f\"resize_method {self.__resize_method} not implemented\"\n                )\n\n        if self.__resize_method == \"lower_bound\":\n            new_height = self.constrain_to_multiple_of(\n                scale_height * height, min_val=self.__height\n            )\n            new_width = self.constrain_to_multiple_of(\n                scale_width * width, min_val=self.__width\n            )\n        elif self.__resize_method == \"upper_bound\":\n            new_height = self.constrain_to_multiple_of(\n                scale_height * height, max_val=self.__height\n            )\n            new_width = self.constrain_to_multiple_of(\n                scale_width * width, max_val=self.__width\n            )\n        elif self.__resize_method == \"minimal\":\n            new_height = self.constrain_to_multiple_of(scale_height * height)\n            new_width = self.constrain_to_multiple_of(scale_width * width)\n        else:\n            raise ValueError(f\"resize_method {self.__resize_method} not implemented\")\n\n        return (new_width, new_height)\n\n    def __call__(self, sample):\n        width, height = self.get_size(\n            sample[\"image\"].shape[1], sample[\"image\"].shape[0]\n        )\n\n        # resize sample\n        sample[\"image\"] = cv2.resize(\n            sample[\"image\"],\n            (width, height),\n            interpolation=self.__image_interpolation_method,\n        )\n\n        if self.__resize_target:\n            if \"disparity\" in sample:\n                sample[\"disparity\"] = cv2.resize(\n                    sample[\"disparity\"],\n                    (width, height),\n                    interpolation=cv2.INTER_NEAREST,\n                )\n\n            if \"depth\" in sample:\n                sample[\"depth\"] = cv2.resize(\n                    sample[\"depth\"], (width, height), interpolation=cv2.INTER_NEAREST\n                )\n\n            sample[\"mask\"] = cv2.resize(\n                sample[\"mask\"].astype(np.float32),\n                (width, height),\n                interpolation=cv2.INTER_NEAREST,\n            )\n            sample[\"mask\"] = sample[\"mask\"].astype(bool)\n\n        return sample\n\n\nclass NormalizeImage(object):\n    \"\"\"Normlize image by given mean and std.\n    \"\"\"\n\n    def __init__(self, mean, std):\n        self.__mean = mean\n        self.__std = std\n\n    def __call__(self, sample):\n        sample[\"image\"] = (sample[\"image\"] - self.__mean) / self.__std\n\n        return sample\n\n\nclass PrepareForNet(object):\n    \"\"\"Prepare sample for usage as network input.\n    \"\"\"\n\n    def __init__(self):\n        pass\n\n    def __call__(self, sample):\n        image = np.transpose(sample[\"image\"], (2, 0, 1))\n        sample[\"image\"] = np.ascontiguousarray(image).astype(np.float32)\n\n        if \"mask\" in sample:\n            sample[\"mask\"] = sample[\"mask\"].astype(np.float32)\n            sample[\"mask\"] = np.ascontiguousarray(sample[\"mask\"])\n\n        if \"disparity\" in sample:\n            disparity = sample[\"disparity\"].astype(np.float32)\n            sample[\"disparity\"] = np.ascontiguousarray(disparity)\n\n        if \"depth\" in sample:\n            depth = sample[\"depth\"].astype(np.float32)\n            sample[\"depth\"] = np.ascontiguousarray(depth)\n\n        return sample\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/builder.py",
    "content": "# MIT License\n\n# Copyright (c) 2022 Intelligent Systems Lab Org\n\n# Permission is hereby granted, free of charge, to any person obtaining a copy\n# of this software and associated documentation files (the \"Software\"), to deal\n# in the Software without restriction, including without limitation the rights\n# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n# copies of the Software, and to permit persons to whom the Software is\n# furnished to do so, subject to the following conditions:\n\n# The above copyright notice and this permission notice shall be included in all\n# copies or substantial portions of the Software.\n\n# THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n# SOFTWARE.\n\n# File author: Shariq Farooq Bhat\n\nfrom importlib import import_module\nfrom .depth_model import DepthModel\n\ndef build_model(config) -> DepthModel:\n    \"\"\"Builds a model from a config. The model is specified by the model name and version in the config. The model is then constructed using the build_from_config function of the model interface.\n    This function should be used to construct models for training and evaluation.\n\n    Args:\n        config (dict): Config dict. Config is constructed in utils/config.py. Each model has its own config file(s) saved in its root model folder.\n\n    Returns:\n        torch.nn.Module: Model corresponding to name and version as specified in config\n    \"\"\"\n    module_name = f\"zoedepth.models.{config.model}\"\n    try:\n        module = import_module(module_name)\n    except ModuleNotFoundError as e:\n        # print the original error message\n        print(e)\n        raise ValueError(\n            f\"Model {config.model} not found. Refer above error for details.\") from e\n    try:\n        get_version = module.get_version\n    except AttributeError as e:\n        raise ValueError(\n            f\"Model {config.model} has no get_version function.\") from e\n    return get_version(config.version_name).build_from_config(config)\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/depth_model.py",
    "content": "# MIT License\n\n# Copyright (c) 2022 Intelligent Systems Lab Org\n\n# Permission is hereby granted, free of charge, to any person obtaining a copy\n# of this software and associated documentation files (the \"Software\"), to deal\n# in the Software without restriction, including without limitation the rights\n# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n# copies of the Software, and to permit persons to whom the Software is\n# furnished to do so, subject to the following conditions:\n\n# The above copyright notice and this permission notice shall be included in all\n# copies or substantial portions of the Software.\n\n# THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n# SOFTWARE.\n\n# File author: Shariq Farooq Bhat\n\nimport numpy as np\nimport torch\nimport torch.nn as nn\nimport torch.nn.functional as F\nfrom torchvision import transforms\nimport PIL.Image\nfrom PIL import Image\nfrom typing import Union\n\n\nclass DepthModel(nn.Module):\n    def __init__(self, device='cpu'):\n        super().__init__()\n        self.device = device\n\n    def to(self, device) -> nn.Module:\n        self.device = device\n        return super().to(device)\n\n    def forward(self, x, *args, **kwargs):\n        raise NotImplementedError\n\n    def _infer(self, x: torch.Tensor):\n        \"\"\"\n        Inference interface for the model\n        Args:\n            x (torch.Tensor): input tensor of shape (b, c, h, w)\n        Returns:\n            torch.Tensor: output tensor of shape (b, 1, h, w)\n        \"\"\"\n        return self(x)['metric_depth']\n\n    def _infer_with_pad_aug(self, x: torch.Tensor, pad_input: bool=True, fh: float=3, fw: float=3, upsampling_mode: str='bicubic', padding_mode=\"reflect\", **kwargs) -> torch.Tensor:\n        \"\"\"\n        Inference interface for the model with padding augmentation\n        Padding augmentation fixes the boundary artifacts in the output depth map.\n        Boundary artifacts are sometimes caused by the fact that the model is trained on NYU raw dataset which has a black or white border around the image.\n        This augmentation pads the input image and crops the prediction back to the original size / view.\n\n        Note: This augmentation is not required for the models trained with 'avoid_boundary'=True.\n        Args:\n            x (torch.Tensor): input tensor of shape (b, c, h, w)\n            pad_input (bool, optional): whether to pad the input or not. Defaults to True.\n            fh (float, optional): height padding factor. The padding is calculated as sqrt(h/2) * fh. Defaults to 3.\n            fw (float, optional): width padding factor. The padding is calculated as sqrt(w/2) * fw. Defaults to 3.\n            upsampling_mode (str, optional): upsampling mode. Defaults to 'bicubic'.\n            padding_mode (str, optional): padding mode. Defaults to \"reflect\".\n        Returns:\n            torch.Tensor: output tensor of shape (b, 1, h, w)\n        \"\"\"\n        # assert x is nchw and c = 3\n        assert x.dim() == 4, \"x must be 4 dimensional, got {}\".format(x.dim())\n        assert x.shape[1] == 3, \"x must have 3 channels, got {}\".format(x.shape[1])\n\n        if pad_input:\n            assert fh > 0 or fw > 0, \"atlease one of fh and fw must be greater than 0\"\n            pad_h = int(np.sqrt(x.shape[2]/2) * fh)\n            pad_w = int(np.sqrt(x.shape[3]/2) * fw)\n            padding = [pad_w, pad_w]\n            if pad_h > 0:\n                padding += [pad_h, pad_h]\n\n            x = F.pad(x, padding, mode=padding_mode, **kwargs)\n        out = self._infer(x)\n        if out.shape[-2:] != x.shape[-2:]:\n            out = F.interpolate(out, size=(x.shape[2], x.shape[3]), mode=upsampling_mode, align_corners=False)\n        if pad_input:\n            # crop to the original size, handling the case where pad_h and pad_w is 0\n            if pad_h > 0:\n                out = out[:, :, pad_h:-pad_h,:]\n            if pad_w > 0:\n                out = out[:, :, :, pad_w:-pad_w]\n        return out\n\n    def infer_with_flip_aug(self, x, pad_input: bool=True, **kwargs) -> torch.Tensor:\n        \"\"\"\n        Inference interface for the model with horizontal flip augmentation\n        Horizontal flip augmentation improves the accuracy of the model by averaging the output of the model with and without horizontal flip.\n        Args:\n            x (torch.Tensor): input tensor of shape (b, c, h, w)\n            pad_input (bool, optional): whether to use padding augmentation. Defaults to True.\n        Returns:\n            torch.Tensor: output tensor of shape (b, 1, h, w)\n        \"\"\"\n        # infer with horizontal flip and average\n        out = self._infer_with_pad_aug(x, pad_input=pad_input, **kwargs)\n        out_flip = self._infer_with_pad_aug(torch.flip(x, dims=[3]), pad_input=pad_input, **kwargs)\n        out = (out + torch.flip(out_flip, dims=[3])) / 2\n        return out\n\n    def infer(self, x, pad_input: bool=True, with_flip_aug: bool=True, **kwargs) -> torch.Tensor:\n        \"\"\"\n        Inference interface for the model\n        Args:\n            x (torch.Tensor): input tensor of shape (b, c, h, w)\n            pad_input (bool, optional): whether to use padding augmentation. Defaults to True.\n            with_flip_aug (bool, optional): whether to use horizontal flip augmentation. Defaults to True.\n        Returns:\n            torch.Tensor: output tensor of shape (b, 1, h, w)\n        \"\"\"\n        if with_flip_aug:\n            return self.infer_with_flip_aug(x, pad_input=pad_input, **kwargs)\n        else:\n            return self._infer_with_pad_aug(x, pad_input=pad_input, **kwargs)\n\n    def infer_pil(self, pil_img, pad_input: bool=True, with_flip_aug: bool=True, output_type: str=\"numpy\", **kwargs) -> Union[np.ndarray, PIL.Image.Image, torch.Tensor]:\n        \"\"\"\n        Inference interface for the model for PIL image\n        Args:\n            pil_img (PIL.Image.Image): input PIL image\n            pad_input (bool, optional): whether to use padding augmentation. Defaults to True.\n            with_flip_aug (bool, optional): whether to use horizontal flip augmentation. Defaults to True.\n            output_type (str, optional): output type. Supported values are 'numpy', 'pil' and 'tensor'. Defaults to \"numpy\".\n        \"\"\"\n        x = transforms.ToTensor()(pil_img).unsqueeze(0).to(self.device)\n        out_tensor = self.infer(x, pad_input=pad_input, with_flip_aug=with_flip_aug, **kwargs)\n        if output_type == \"numpy\":\n            return out_tensor.squeeze().cpu().numpy()\n        elif output_type == \"pil\":\n            # uint16 is required for depth pil image\n            out_16bit_numpy = (out_tensor.squeeze().cpu().numpy()*256).astype(np.uint16)\n            return Image.fromarray(out_16bit_numpy)\n        elif output_type == \"tensor\":\n            return out_tensor.squeeze().cpu()\n        else:\n            raise ValueError(f\"output_type {output_type} not supported. Supported values are 'numpy', 'pil' and 'tensor'\")\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/layers/__init__.py",
    "content": "# MIT License\n\n# Copyright (c) 2022 Intelligent Systems Lab Org\n\n# Permission is hereby granted, free of charge, to any person obtaining a copy\n# of this software and associated documentation files (the \"Software\"), to deal\n# in the Software without restriction, including without limitation the rights\n# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n# copies of the Software, and to permit persons to whom the Software is\n# furnished to do so, subject to the following conditions:\n\n# The above copyright notice and this permission notice shall be included in all\n# copies or substantial portions of the Software.\n\n# THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n# SOFTWARE.\n\n# File author: Shariq Farooq Bhat\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/layers/attractor.py",
    "content": "# MIT License\n\n# Copyright (c) 2022 Intelligent Systems Lab Org\n\n# Permission is hereby granted, free of charge, to any person obtaining a copy\n# of this software and associated documentation files (the \"Software\"), to deal\n# in the Software without restriction, including without limitation the rights\n# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n# copies of the Software, and to permit persons to whom the Software is\n# furnished to do so, subject to the following conditions:\n\n# The above copyright notice and this permission notice shall be included in all\n# copies or substantial portions of the Software.\n\n# THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n# SOFTWARE.\n\n# File author: Shariq Farooq Bhat\n\nimport torch\nimport torch.nn as nn\n\n\n@torch.jit.script\ndef exp_attractor(dx, alpha: float = 300, gamma: int = 2):\n    \"\"\"Exponential attractor: dc = exp(-alpha*|dx|^gamma) * dx , where dx = a - c, a = attractor point, c = bin center, dc = shift in bin centermmary for exp_attractor\n\n    Args:\n        dx (torch.Tensor): The difference tensor dx = Ai - Cj, where Ai is the attractor point and Cj is the bin center.\n        alpha (float, optional): Proportional Attractor strength. Determines the absolute strength. Lower alpha = greater attraction. Defaults to 300.\n        gamma (int, optional): Exponential Attractor strength. Determines the \"region of influence\" and indirectly number of bin centers affected. Lower gamma = farther reach. Defaults to 2.\n\n    Returns:\n        torch.Tensor : Delta shifts - dc; New bin centers = Old bin centers + dc\n    \"\"\"\n    return torch.exp(-alpha*(torch.abs(dx)**gamma)) * (dx)\n\n\n@torch.jit.script\ndef inv_attractor(dx, alpha: float = 300, gamma: int = 2):\n    \"\"\"Inverse attractor: dc = dx / (1 + alpha*dx^gamma), where dx = a - c, a = attractor point, c = bin center, dc = shift in bin center\n    This is the default one according to the accompanying paper.\n\n    Args:\n        dx (torch.Tensor): The difference tensor dx = Ai - Cj, where Ai is the attractor point and Cj is the bin center.\n        alpha (float, optional): Proportional Attractor strength. Determines the absolute strength. Lower alpha = greater attraction. Defaults to 300.\n        gamma (int, optional): Exponential Attractor strength. Determines the \"region of influence\" and indirectly number of bin centers affected. Lower gamma = farther reach. Defaults to 2.\n\n    Returns:\n        torch.Tensor: Delta shifts - dc; New bin centers = Old bin centers + dc\n    \"\"\"\n    return dx.div(1+alpha*dx.pow(gamma))\n\n\nclass AttractorLayer(nn.Module):\n    def __init__(self, in_features, n_bins, n_attractors=16, mlp_dim=128, min_depth=1e-3, max_depth=10,\n                 alpha=300, gamma=2, kind='sum', attractor_type='exp', memory_efficient=False):\n        \"\"\"\n        Attractor layer for bin centers. Bin centers are bounded on the interval (min_depth, max_depth)\n        \"\"\"\n        super().__init__()\n\n        self.n_attractors = n_attractors\n        self.n_bins = n_bins\n        self.min_depth = min_depth\n        self.max_depth = max_depth\n        self.alpha = alpha\n        self.gamma = gamma\n        self.kind = kind\n        self.attractor_type = attractor_type\n        self.memory_efficient = memory_efficient\n\n        self._net = nn.Sequential(\n            nn.Conv2d(in_features, mlp_dim, 1, 1, 0),\n            nn.ReLU(inplace=True),\n            nn.Conv2d(mlp_dim, n_attractors*2, 1, 1, 0),  # x2 for linear norm\n            nn.ReLU(inplace=True)\n        )\n\n    def forward(self, x, b_prev, prev_b_embedding=None, interpolate=True, is_for_query=False):\n        \"\"\"\n        Args:\n            x (torch.Tensor) : feature block; shape - n, c, h, w\n            b_prev (torch.Tensor) : previous bin centers normed; shape - n, prev_nbins, h, w\n\n        Returns:\n            tuple(torch.Tensor,torch.Tensor) : new bin centers normed and scaled; shape - n, nbins, h, w\n        \"\"\"\n        if prev_b_embedding is not None:\n            if interpolate:\n                prev_b_embedding = nn.functional.interpolate(\n                    prev_b_embedding, x.shape[-2:], mode='bilinear', align_corners=True)\n            x = x + prev_b_embedding\n\n        A = self._net(x)\n        eps = 1e-3\n        A = A + eps\n        n, c, h, w = A.shape\n        A = A.view(n, self.n_attractors, 2, h, w)\n        A_normed = A / A.sum(dim=2, keepdim=True)  # n, a, 2, h, w\n        A_normed = A[:, :, 0, ...]  # n, na, h, w\n\n        b_prev = nn.functional.interpolate(\n            b_prev, (h, w), mode='bilinear', align_corners=True)\n        b_centers = b_prev\n\n        if self.attractor_type == 'exp':\n            dist = exp_attractor\n        else:\n            dist = inv_attractor\n\n        if not self.memory_efficient:\n            func = {'mean': torch.mean, 'sum': torch.sum}[self.kind]\n            # .shape N, nbins, h, w\n            delta_c = func(dist(A_normed.unsqueeze(\n                2) - b_centers.unsqueeze(1)), dim=1)\n        else:\n            delta_c = torch.zeros_like(b_centers, device=b_centers.device)\n            for i in range(self.n_attractors):\n                # .shape N, nbins, h, w\n                delta_c += dist(A_normed[:, i, ...].unsqueeze(1) - b_centers)\n\n            if self.kind == 'mean':\n                delta_c = delta_c / self.n_attractors\n\n        b_new_centers = b_centers + delta_c\n        B_centers = (self.max_depth - self.min_depth) * \\\n            b_new_centers + self.min_depth\n        B_centers, _ = torch.sort(B_centers, dim=1)\n        B_centers = torch.clip(B_centers, self.min_depth, self.max_depth)\n        return b_new_centers, B_centers\n\n\nclass AttractorLayerUnnormed(nn.Module):\n    def __init__(self, in_features, n_bins, n_attractors=16, mlp_dim=128, min_depth=1e-3, max_depth=10,\n                 alpha=300, gamma=2, kind='sum', attractor_type='exp', memory_efficient=False):\n        \"\"\"\n        Attractor layer for bin centers. Bin centers are unbounded\n        \"\"\"\n        super().__init__()\n\n        self.n_attractors = n_attractors\n        self.n_bins = n_bins\n        self.min_depth = min_depth\n        self.max_depth = max_depth\n        self.alpha = alpha\n        self.gamma = gamma\n        self.kind = kind\n        self.attractor_type = attractor_type\n        self.memory_efficient = memory_efficient\n\n        self._net = nn.Sequential(\n            nn.Conv2d(in_features, mlp_dim, 1, 1, 0),\n            nn.ReLU(inplace=True),\n            nn.Conv2d(mlp_dim, n_attractors, 1, 1, 0),\n            nn.Softplus()\n        )\n\n    def forward(self, x, b_prev, prev_b_embedding=None, interpolate=True, is_for_query=False):\n        \"\"\"\n        Args:\n            x (torch.Tensor) : feature block; shape - n, c, h, w\n            b_prev (torch.Tensor) : previous bin centers normed; shape - n, prev_nbins, h, w\n\n        Returns:\n            tuple(torch.Tensor,torch.Tensor) : new bin centers unbounded; shape - n, nbins, h, w. Two outputs just to keep the API consistent with the normed version\n        \"\"\"\n        if prev_b_embedding is not None:\n            if interpolate:\n                prev_b_embedding = nn.functional.interpolate(\n                    prev_b_embedding, x.shape[-2:], mode='bilinear', align_corners=True)\n            x = x + prev_b_embedding\n\n        A = self._net(x)\n        n, c, h, w = A.shape\n\n        b_prev = nn.functional.interpolate(\n            b_prev, (h, w), mode='bilinear', align_corners=True)\n        b_centers = b_prev\n\n        if self.attractor_type == 'exp':\n            dist = exp_attractor\n        else:\n            dist = inv_attractor\n\n        if not self.memory_efficient:\n            func = {'mean': torch.mean, 'sum': torch.sum}[self.kind]\n            # .shape N, nbins, h, w\n            delta_c = func(\n                dist(A.unsqueeze(2) - b_centers.unsqueeze(1)), dim=1)\n        else:\n            delta_c = torch.zeros_like(b_centers, device=b_centers.device)\n            for i in range(self.n_attractors):\n                delta_c += dist(A[:, i, ...].unsqueeze(1) -\n                                b_centers)  # .shape N, nbins, h, w\n\n            if self.kind == 'mean':\n                delta_c = delta_c / self.n_attractors\n\n        b_new_centers = b_centers + delta_c\n        B_centers = b_new_centers\n\n        return b_new_centers, B_centers\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/layers/dist_layers.py",
    "content": "# MIT License\n\n# Copyright (c) 2022 Intelligent Systems Lab Org\n\n# Permission is hereby granted, free of charge, to any person obtaining a copy\n# of this software and associated documentation files (the \"Software\"), to deal\n# in the Software without restriction, including without limitation the rights\n# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n# copies of the Software, and to permit persons to whom the Software is\n# furnished to do so, subject to the following conditions:\n\n# The above copyright notice and this permission notice shall be included in all\n# copies or substantial portions of the Software.\n\n# THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n# SOFTWARE.\n\n# File author: Shariq Farooq Bhat\n\nimport torch\nimport torch.nn as nn\n\n\ndef log_binom(n, k, eps=1e-7):\n    \"\"\" log(nCk) using stirling approximation \"\"\"\n    n = n + eps\n    k = k + eps\n    return n * torch.log(n) - k * torch.log(k) - (n-k) * torch.log(n-k+eps)\n\n\nclass LogBinomial(nn.Module):\n    def __init__(self, n_classes=256, act=torch.softmax):\n        \"\"\"Compute log binomial distribution for n_classes\n\n        Args:\n            n_classes (int, optional): number of output classes. Defaults to 256.\n        \"\"\"\n        super().__init__()\n        self.K = n_classes\n        self.act = act\n        self.register_buffer('k_idx', torch.arange(\n            0, n_classes).view(1, -1, 1, 1))\n        self.register_buffer('K_minus_1', torch.Tensor(\n            [self.K-1]).view(1, -1, 1, 1))\n\n    def forward(self, x, t=1., eps=1e-4):\n        \"\"\"Compute log binomial distribution for x\n\n        Args:\n            x (torch.Tensor - NCHW): probabilities\n            t (float, torch.Tensor - NCHW, optional): Temperature of distribution. Defaults to 1..\n            eps (float, optional): Small number for numerical stability. Defaults to 1e-4.\n\n        Returns:\n            torch.Tensor -NCHW: log binomial distribution logbinomial(p;t)\n        \"\"\"\n        if x.ndim == 3:\n            x = x.unsqueeze(1)  # make it nchw\n\n        one_minus_x = torch.clamp(1 - x, eps, 1)\n        x = torch.clamp(x, eps, 1)\n        y = log_binom(self.K_minus_1, self.k_idx) + self.k_idx * \\\n            torch.log(x) + (self.K - 1 - self.k_idx) * torch.log(one_minus_x)\n        return self.act(y/t, dim=1)\n\n\nclass ConditionalLogBinomial(nn.Module):\n    def __init__(self, in_features, condition_dim, n_classes=256, bottleneck_factor=2, p_eps=1e-4, max_temp=50, min_temp=1e-7, act=torch.softmax):\n        \"\"\"Conditional Log Binomial distribution\n\n        Args:\n            in_features (int): number of input channels in main feature\n            condition_dim (int): number of input channels in condition feature\n            n_classes (int, optional): Number of classes. Defaults to 256.\n            bottleneck_factor (int, optional): Hidden dim factor. Defaults to 2.\n            p_eps (float, optional): small eps value. Defaults to 1e-4.\n            max_temp (float, optional): Maximum temperature of output distribution. Defaults to 50.\n            min_temp (float, optional): Minimum temperature of output distribution. Defaults to 1e-7.\n        \"\"\"\n        super().__init__()\n        self.p_eps = p_eps\n        self.max_temp = max_temp\n        self.min_temp = min_temp\n        self.log_binomial_transform = LogBinomial(n_classes, act=act)\n        bottleneck = (in_features + condition_dim) // bottleneck_factor\n        self.mlp = nn.Sequential(\n            nn.Conv2d(in_features + condition_dim, bottleneck,\n                      kernel_size=1, stride=1, padding=0),\n            nn.GELU(),\n            # 2 for p linear norm, 2 for t linear norm\n            nn.Conv2d(bottleneck, 2+2, kernel_size=1, stride=1, padding=0),\n            nn.Softplus()\n        )\n\n    def forward(self, x, cond):\n        \"\"\"Forward pass\n\n        Args:\n            x (torch.Tensor - NCHW): Main feature\n            cond (torch.Tensor - NCHW): condition feature\n\n        Returns:\n            torch.Tensor: Output log binomial distribution\n        \"\"\"\n        pt = self.mlp(torch.concat((x, cond), dim=1))\n        p, t = pt[:, :2, ...], pt[:, 2:, ...]\n\n        p = p + self.p_eps\n        p = p[:, 0, ...] / (p[:, 0, ...] + p[:, 1, ...])\n\n        t = t + self.p_eps\n        t = t[:, 0, ...] / (t[:, 0, ...] + t[:, 1, ...])\n        t = t.unsqueeze(1)\n        t = (self.max_temp - self.min_temp) * t + self.min_temp\n\n        return self.log_binomial_transform(p, t)\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/layers/localbins_layers.py",
    "content": "# MIT License\n\n# Copyright (c) 2022 Intelligent Systems Lab Org\n\n# Permission is hereby granted, free of charge, to any person obtaining a copy\n# of this software and associated documentation files (the \"Software\"), to deal\n# in the Software without restriction, including without limitation the rights\n# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n# copies of the Software, and to permit persons to whom the Software is\n# furnished to do so, subject to the following conditions:\n\n# The above copyright notice and this permission notice shall be included in all\n# copies or substantial portions of the Software.\n\n# THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n# SOFTWARE.\n\n# File author: Shariq Farooq Bhat\n\nimport torch\nimport torch.nn as nn\n\n\nclass SeedBinRegressor(nn.Module):\n    def __init__(self, in_features, n_bins=16, mlp_dim=256, min_depth=1e-3, max_depth=10):\n        \"\"\"Bin center regressor network. Bin centers are bounded on (min_depth, max_depth) interval.\n\n        Args:\n            in_features (int): input channels\n            n_bins (int, optional): Number of bin centers. Defaults to 16.\n            mlp_dim (int, optional): Hidden dimension. Defaults to 256.\n            min_depth (float, optional): Min depth value. Defaults to 1e-3.\n            max_depth (float, optional): Max depth value. Defaults to 10.\n        \"\"\"\n        super().__init__()\n        self.version = \"1_1\"\n        self.min_depth = min_depth\n        self.max_depth = max_depth\n\n        self._net = nn.Sequential(\n            nn.Conv2d(in_features, mlp_dim, 1, 1, 0),\n            nn.ReLU(inplace=True),\n            nn.Conv2d(mlp_dim, n_bins, 1, 1, 0),\n            nn.ReLU(inplace=True)\n        )\n\n    def forward(self, x):\n        \"\"\"\n        Returns tensor of bin_width vectors (centers). One vector b for every pixel\n        \"\"\"\n        B = self._net(x)\n        eps = 1e-3\n        B = B + eps\n        B_widths_normed = B / B.sum(dim=1, keepdim=True)\n        B_widths = (self.max_depth - self.min_depth) * \\\n            B_widths_normed  # .shape NCHW\n        # pad has the form (left, right, top, bottom, front, back)\n        B_widths = nn.functional.pad(\n            B_widths, (0, 0, 0, 0, 1, 0), mode='constant', value=self.min_depth)\n        B_edges = torch.cumsum(B_widths, dim=1)  # .shape NCHW\n\n        B_centers = 0.5 * (B_edges[:, :-1, ...] + B_edges[:, 1:, ...])\n        return B_widths_normed, B_centers\n\n\nclass SeedBinRegressorUnnormed(nn.Module):\n    def __init__(self, in_features, n_bins=16, mlp_dim=256, min_depth=1e-3, max_depth=10):\n        \"\"\"Bin center regressor network. Bin centers are unbounded\n\n        Args:\n            in_features (int): input channels\n            n_bins (int, optional): Number of bin centers. Defaults to 16.\n            mlp_dim (int, optional): Hidden dimension. Defaults to 256.\n            min_depth (float, optional): Not used. (for compatibility with SeedBinRegressor)\n            max_depth (float, optional): Not used. (for compatibility with SeedBinRegressor)\n        \"\"\"\n        super().__init__()\n        self.version = \"1_1\"\n        self._net = nn.Sequential(\n            nn.Conv2d(in_features, mlp_dim, 1, 1, 0),\n            nn.ReLU(inplace=True),\n            nn.Conv2d(mlp_dim, n_bins, 1, 1, 0),\n            nn.Softplus()\n        )\n\n    def forward(self, x):\n        \"\"\"\n        Returns tensor of bin_width vectors (centers). One vector b for every pixel\n        \"\"\"\n        B_centers = self._net(x)\n        return B_centers, B_centers\n\n\nclass Projector(nn.Module):\n    def __init__(self, in_features, out_features, mlp_dim=128):\n        \"\"\"Projector MLP\n\n        Args:\n            in_features (int): input channels\n            out_features (int): output channels\n            mlp_dim (int, optional): hidden dimension. Defaults to 128.\n        \"\"\"\n        super().__init__()\n\n        self._net = nn.Sequential(\n            nn.Conv2d(in_features, mlp_dim, 1, 1, 0),\n            nn.ReLU(inplace=True),\n            nn.Conv2d(mlp_dim, out_features, 1, 1, 0),\n        )\n\n    def forward(self, x):\n        return self._net(x)\n\n\n\nclass LinearSplitter(nn.Module):\n    def __init__(self, in_features, prev_nbins, split_factor=2, mlp_dim=128, min_depth=1e-3, max_depth=10):\n        super().__init__()\n\n        self.prev_nbins = prev_nbins\n        self.split_factor = split_factor\n        self.min_depth = min_depth\n        self.max_depth = max_depth\n\n        self._net = nn.Sequential(\n            nn.Conv2d(in_features, mlp_dim, 1, 1, 0),\n            nn.GELU(),\n            nn.Conv2d(mlp_dim, prev_nbins * split_factor, 1, 1, 0),\n            nn.ReLU()\n        )\n\n    def forward(self, x, b_prev, prev_b_embedding=None, interpolate=True, is_for_query=False):\n        \"\"\"\n        x : feature block; shape - n, c, h, w\n        b_prev : previous bin widths normed; shape - n, prev_nbins, h, w\n        \"\"\"\n        if prev_b_embedding is not None:\n            if interpolate:\n                prev_b_embedding = nn.functional.interpolate(prev_b_embedding, x.shape[-2:], mode='bilinear', align_corners=True)\n            x = x + prev_b_embedding\n        S = self._net(x)\n        eps = 1e-3\n        S = S + eps\n        n, c, h, w = S.shape\n        S = S.view(n, self.prev_nbins, self.split_factor, h, w)\n        S_normed = S / S.sum(dim=2, keepdim=True)  # fractional splits\n\n        b_prev = nn.functional.interpolate(b_prev, (h,w), mode='bilinear', align_corners=True)\n\n\n        b_prev = b_prev / b_prev.sum(dim=1, keepdim=True)  # renormalize for gurantees\n        # print(b_prev.shape, S_normed.shape)\n        # if is_for_query:(1).expand(-1, b_prev.size(0)//n, -1, -1, -1, -1).flatten(0,1)\n        b = b_prev.unsqueeze(2) * S_normed\n        b = b.flatten(1,2)  # .shape n, prev_nbins * split_factor, h, w\n\n        # calculate bin centers for loss calculation\n        B_widths = (self.max_depth - self.min_depth) * b  # .shape N, nprev * splitfactor, H, W\n        # pad has the form (left, right, top, bottom, front, back)\n        B_widths = nn.functional.pad(B_widths, (0,0,0,0,1,0), mode='constant', value=self.min_depth)\n        B_edges = torch.cumsum(B_widths, dim=1)  # .shape NCHW\n\n        B_centers = 0.5 * (B_edges[:, :-1, ...] + B_edges[:,1:,...])\n        return b, B_centers\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/layers/patch_transformer.py",
    "content": "# MIT License\n\n# Copyright (c) 2022 Intelligent Systems Lab Org\n\n# Permission is hereby granted, free of charge, to any person obtaining a copy\n# of this software and associated documentation files (the \"Software\"), to deal\n# in the Software without restriction, including without limitation the rights\n# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n# copies of the Software, and to permit persons to whom the Software is\n# furnished to do so, subject to the following conditions:\n\n# The above copyright notice and this permission notice shall be included in all\n# copies or substantial portions of the Software.\n\n# THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n# SOFTWARE.\n\n# File author: Shariq Farooq Bhat\n\nimport torch\nimport torch.nn as nn\n\n\nclass PatchTransformerEncoder(nn.Module):\n    def __init__(self, in_channels, patch_size=10, embedding_dim=128, num_heads=4, use_class_token=False):\n        \"\"\"ViT-like transformer block\n\n        Args:\n            in_channels (int): Input channels\n            patch_size (int, optional): patch size. Defaults to 10.\n            embedding_dim (int, optional): Embedding dimension in transformer model. Defaults to 128.\n            num_heads (int, optional): number of attention heads. Defaults to 4.\n            use_class_token (bool, optional): Whether to use extra token at the start for global accumulation (called as \"class token\"). Defaults to False.\n        \"\"\"\n        super(PatchTransformerEncoder, self).__init__()\n        self.use_class_token = use_class_token\n        encoder_layers = nn.TransformerEncoderLayer(\n            embedding_dim, num_heads, dim_feedforward=1024)\n        self.transformer_encoder = nn.TransformerEncoder(\n            encoder_layers, num_layers=4)  # takes shape S,N,E\n\n        self.embedding_convPxP = nn.Conv2d(in_channels, embedding_dim,\n                                           kernel_size=patch_size, stride=patch_size, padding=0)\n\n    def positional_encoding_1d(self, sequence_length, batch_size, embedding_dim, device='cpu'):\n        \"\"\"Generate positional encodings\n\n        Args:\n            sequence_length (int): Sequence length\n            embedding_dim (int): Embedding dimension\n\n        Returns:\n            torch.Tensor SBE: Positional encodings\n        \"\"\"\n        position = torch.arange(\n            0, sequence_length, dtype=torch.float32, device=device).unsqueeze(1)\n        index = torch.arange(\n            0, embedding_dim, 2, dtype=torch.float32, device=device).unsqueeze(0)\n        div_term = torch.exp(index * (-torch.log(torch.tensor(10000.0, device=device)) / embedding_dim))\n        pos_encoding = position * div_term\n        pos_encoding = torch.cat([torch.sin(pos_encoding), torch.cos(pos_encoding)], dim=1)\n        pos_encoding = pos_encoding.unsqueeze(1).repeat(1, batch_size, 1)\n        return pos_encoding\n\n\n    def forward(self, x):\n        \"\"\"Forward pass\n\n        Args:\n            x (torch.Tensor - NCHW): Input feature tensor\n\n        Returns:\n            torch.Tensor - SNE: Transformer output embeddings. S - sequence length (=HW/patch_size^2), N - batch size, E - embedding dim\n        \"\"\"\n        embeddings = self.embedding_convPxP(x).flatten(\n            2)  # .shape = n,c,s = n, embedding_dim, s\n        if self.use_class_token:\n            # extra special token at start ?\n            embeddings = nn.functional.pad(embeddings, (1, 0))\n\n        # change to S,N,E format required by transformer\n        embeddings = embeddings.permute(2, 0, 1)\n        S, N, E = embeddings.shape\n        embeddings = embeddings + self.positional_encoding_1d(S, N, E, device=embeddings.device)\n        x = self.transformer_encoder(embeddings)  # .shape = S, N, E\n        return x\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/model_io.py",
    "content": "# MIT License\n\n# Copyright (c) 2022 Intelligent Systems Lab Org\n\n# Permission is hereby granted, free of charge, to any person obtaining a copy\n# of this software and associated documentation files (the \"Software\"), to deal\n# in the Software without restriction, including without limitation the rights\n# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n# copies of the Software, and to permit persons to whom the Software is\n# furnished to do so, subject to the following conditions:\n\n# The above copyright notice and this permission notice shall be included in all\n# copies or substantial portions of the Software.\n\n# THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n# SOFTWARE.\n\n# File author: Shariq Farooq Bhat\n\nimport torch\n\ndef load_state_dict(model, state_dict):\n    \"\"\"Load state_dict into model, handling DataParallel and DistributedDataParallel. Also checks for \"model\" key in state_dict.\n\n    DataParallel prefixes state_dict keys with 'module.' when saving.\n    If the model is not a DataParallel model but the state_dict is, then prefixes are removed.\n    If the model is a DataParallel model but the state_dict is not, then prefixes are added.\n    \"\"\"\n    state_dict = state_dict.get('model', state_dict)\n    # if model is a DataParallel model, then state_dict keys are prefixed with 'module.'\n\n    do_prefix = isinstance(\n        model, (torch.nn.DataParallel, torch.nn.parallel.DistributedDataParallel))\n    state = {}\n    for k, v in state_dict.items():\n        if k.startswith('module.') and not do_prefix:\n            k = k[7:]\n\n        if not k.startswith('module.') and do_prefix:\n            k = 'module.' + k\n\n        state[k] = v\n\n    model.load_state_dict(state)\n    print(\"Loaded successfully\")\n    return model\n\n\ndef load_wts(model, checkpoint_path):\n    ckpt = torch.load(checkpoint_path, map_location='cpu')\n    return load_state_dict(model, ckpt)\n\n\ndef load_state_dict_from_url(model, url, **kwargs):\n    state_dict = torch.hub.load_state_dict_from_url(url, map_location='cpu', **kwargs)\n    return load_state_dict(model, state_dict)\n\n\ndef load_state_from_resource(model, resource: str):\n    \"\"\"Loads weights to the model from a given resource. A resource can be of following types:\n        1. URL. Prefixed with \"url::\"\n                e.g. url::http(s)://url.resource.com/ckpt.pt\n\n        2. Local path. Prefixed with \"local::\"\n                e.g. local::/path/to/ckpt.pt\n\n\n    Args:\n        model (torch.nn.Module): Model\n        resource (str): resource string\n\n    Returns:\n        torch.nn.Module: Model with loaded weights\n    \"\"\"\n    print(f\"Using pretrained resource {resource}\")\n\n    if resource.startswith('url::'):\n        url = resource.split('url::')[1]\n        return load_state_dict_from_url(model, url, progress=True)\n\n    elif resource.startswith('local::'):\n        path = resource.split('local::')[1]\n        return load_wts(model, path)\n\n    else:\n        raise ValueError(\"Invalid resource type, only url:: and local:: are supported\")\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/zoedepth/__init__.py",
    "content": "# MIT License\n\n# Copyright (c) 2022 Intelligent Systems Lab Org\n\n# Permission is hereby granted, free of charge, to any person obtaining a copy\n# of this software and associated documentation files (the \"Software\"), to deal\n# in the Software without restriction, including without limitation the rights\n# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n# copies of the Software, and to permit persons to whom the Software is\n# furnished to do so, subject to the following conditions:\n\n# The above copyright notice and this permission notice shall be included in all\n# copies or substantial portions of the Software.\n\n# THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n# SOFTWARE.\n\n# File author: Shariq Farooq Bhat\n\nfrom .zoedepth_v1 import ZoeDepth\n\nall_versions = {\n    \"v1\": ZoeDepth,\n}\n\nget_version = lambda v : all_versions[v]\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/zoedepth/config_zoedepth.json",
    "content": "{\n    \"model\": {\n        \"name\": \"ZoeDepth\",\n        \"version_name\": \"v1\",\n        \"n_bins\": 64,\n        \"bin_embedding_dim\": 128,\n        \"bin_centers_type\": \"softplus\",\n        \"n_attractors\":[16, 8, 4, 1],\n        \"attractor_alpha\": 1000,\n        \"attractor_gamma\": 2,\n        \"attractor_kind\" : \"mean\",\n        \"attractor_type\" : \"inv\",\n        \"midas_model_type\" : \"DPT_BEiT_L_384\",\n        \"min_temp\": 0.0212,\n        \"max_temp\": 50.0,\n        \"output_distribution\": \"logbinomial\",\n        \"memory_efficient\": true,\n        \"inverse_midas\": false,\n        \"img_size\": [384, 512]\n    },\n\n    \"train\": {\n        \"train_midas\": true,\n        \"use_pretrained_midas\": true,\n        \"trainer\": \"zoedepth\",\n        \"epochs\": 5,\n        \"bs\": 16,\n        \"optim_kwargs\": {\"lr\": 0.000161, \"wd\": 0.01},\n        \"sched_kwargs\": {\"div_factor\": 1, \"final_div_factor\": 10000, \"pct_start\": 0.7, \"three_phase\":false, \"cycle_momentum\": true},\n        \"same_lr\": false,\n        \"w_si\": 1,\n        \"w_domain\": 0.2,\n        \"w_reg\": 0,\n        \"w_grad\": 0,\n        \"avoid_boundary\": false,\n        \"random_crop\": false,\n        \"input_width\": 640,\n        \"input_height\": 480,\n        \"midas_lr_factor\": 1,\n        \"encoder_lr_factor\":10,\n        \"pos_enc_lr_factor\":10,\n        \"freeze_midas_bn\": true\n\n    },\n\n    \"infer\":{\n        \"train_midas\": false,\n        \"use_pretrained_midas\": false,\n        \"pretrained_resource\" : null,\n        \"force_keep_ar\": true\n    },\n\n    \"eval\":{\n        \"train_midas\": false,\n        \"use_pretrained_midas\": false,\n        \"pretrained_resource\" : null\n    }\n}\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/zoedepth/config_zoedepth_kitti.json",
    "content": "{\n    \"model\": {\n        \"bin_centers_type\": \"normed\",\n        \"img_size\": [384, 768]\n    },\n\n    \"train\": {\n    },\n\n    \"infer\":{\n        \"train_midas\": false,\n        \"use_pretrained_midas\": false,\n        \"pretrained_resource\" : \"url::https://github.com/isl-org/ZoeDepth/releases/download/v1.0/ZoeD_M12_K.pt\",\n        \"force_keep_ar\": true\n    },\n\n    \"eval\":{\n        \"train_midas\": false,\n        \"use_pretrained_midas\": false,\n        \"pretrained_resource\" : \"url::https://github.com/isl-org/ZoeDepth/releases/download/v1.0/ZoeD_M12_K.pt\"\n    }\n}\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/zoedepth/zoedepth_v1.py",
    "content": "# MIT License\n\n# Copyright (c) 2022 Intelligent Systems Lab Org\n\n# Permission is hereby granted, free of charge, to any person obtaining a copy\n# of this software and associated documentation files (the \"Software\"), to deal\n# in the Software without restriction, including without limitation the rights\n# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n# copies of the Software, and to permit persons to whom the Software is\n# furnished to do so, subject to the following conditions:\n\n# The above copyright notice and this permission notice shall be included in all\n# copies or substantial portions of the Software.\n\n# THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n# SOFTWARE.\n\n# File author: Shariq Farooq Bhat\n\nimport itertools\n\nimport torch\nimport torch.nn as nn\nfrom ..depth_model import DepthModel\nfrom ..base_models.midas import MidasCore\nfrom ..layers.attractor import AttractorLayer, AttractorLayerUnnormed\nfrom ..layers.dist_layers import ConditionalLogBinomial\nfrom ..layers.localbins_layers import (Projector, SeedBinRegressor,\n                                            SeedBinRegressorUnnormed)\nfrom ..model_io import load_state_from_resource\n\n\nclass ZoeDepth(DepthModel):\n    def __init__(self, core,  n_bins=64, bin_centers_type=\"softplus\", bin_embedding_dim=128, min_depth=1e-3, max_depth=10,\n                 n_attractors=None, attractor_alpha=300, attractor_gamma=2, attractor_kind='sum', attractor_type='exp', min_temp=5, max_temp=50, train_midas=True,\n                 midas_lr_factor=10, encoder_lr_factor=10, pos_enc_lr_factor=10, inverse_midas=False, **kwargs):\n        \"\"\"ZoeDepth model. This is the version of ZoeDepth that has a single metric head\n\n        Args:\n            core (models.base_models.midas.MidasCore): The base midas model that is used for extraction of \"relative\" features\n            n_bins (int, optional): Number of bin centers. Defaults to 64.\n            bin_centers_type (str, optional): \"normed\" or \"softplus\". Activation type used for bin centers. For \"normed\" bin centers, linear normalization trick is applied. This results in bounded bin centers.\n                                               For \"softplus\", softplus activation is used and thus are unbounded. Defaults to \"softplus\".\n            bin_embedding_dim (int, optional): bin embedding dimension. Defaults to 128.\n            min_depth (float, optional): Lower bound for normed bin centers. Defaults to 1e-3.\n            max_depth (float, optional): Upper bound for normed bin centers. Defaults to 10.\n            n_attractors (List[int], optional): Number of bin attractors at decoder layers. Defaults to [16, 8, 4, 1].\n            attractor_alpha (int, optional): Proportional attractor strength. Refer to models.layers.attractor for more details. Defaults to 300.\n            attractor_gamma (int, optional): Exponential attractor strength. Refer to models.layers.attractor for more details. Defaults to 2.\n            attractor_kind (str, optional): Attraction aggregation \"sum\" or \"mean\". Defaults to 'sum'.\n            attractor_type (str, optional): Type of attractor to use; \"inv\" (Inverse attractor) or \"exp\" (Exponential attractor). Defaults to 'exp'.\n            min_temp (int, optional): Lower bound for temperature of output probability distribution. Defaults to 5.\n            max_temp (int, optional): Upper bound for temperature of output probability distribution. Defaults to 50.\n            train_midas (bool, optional): Whether to train \"core\", the base midas model. Defaults to True.\n            midas_lr_factor (int, optional): Learning rate reduction factor for base midas model except its encoder and positional encodings. Defaults to 10.\n            encoder_lr_factor (int, optional): Learning rate reduction factor for the encoder in midas model. Defaults to 10.\n            pos_enc_lr_factor (int, optional): Learning rate reduction factor for positional encodings in the base midas model. Defaults to 10.\n        \"\"\"\n        if n_attractors is None:\n            n_attractors = [16, 8, 4, 1]\n        super().__init__()\n\n        self.core = core\n        self.max_depth = max_depth\n        self.min_depth = min_depth\n        self.min_temp = min_temp\n        self.bin_centers_type = bin_centers_type\n\n        self.midas_lr_factor = midas_lr_factor\n        self.encoder_lr_factor = encoder_lr_factor\n        self.pos_enc_lr_factor = pos_enc_lr_factor\n        self.train_midas = train_midas\n        self.inverse_midas = inverse_midas\n\n        if self.encoder_lr_factor <= 0:\n            self.core.freeze_encoder(\n                freeze_rel_pos=self.pos_enc_lr_factor <= 0)\n\n        N_MIDAS_OUT = 32\n        btlnck_features = self.core.output_channels[0]\n        num_out_features = self.core.output_channels[1:]\n\n        self.conv2 = nn.Conv2d(btlnck_features, btlnck_features,\n                               kernel_size=1, stride=1, padding=0)  # btlnck conv\n\n        if bin_centers_type == \"normed\":\n            SeedBinRegressorLayer = SeedBinRegressor\n            Attractor = AttractorLayer\n        elif bin_centers_type == \"softplus\":\n            SeedBinRegressorLayer = SeedBinRegressorUnnormed\n            Attractor = AttractorLayerUnnormed\n        elif bin_centers_type == \"hybrid1\":\n            SeedBinRegressorLayer = SeedBinRegressor\n            Attractor = AttractorLayerUnnormed\n        elif bin_centers_type == \"hybrid2\":\n            SeedBinRegressorLayer = SeedBinRegressorUnnormed\n            Attractor = AttractorLayer\n        else:\n            raise ValueError(\n                \"bin_centers_type should be one of 'normed', 'softplus', 'hybrid1', 'hybrid2'\")\n\n        self.seed_bin_regressor = SeedBinRegressorLayer(\n            btlnck_features, n_bins=n_bins, min_depth=min_depth, max_depth=max_depth)\n        self.seed_projector = Projector(btlnck_features, bin_embedding_dim)\n        self.projectors = nn.ModuleList([\n            Projector(num_out, bin_embedding_dim)\n            for num_out in num_out_features\n        ])\n        self.attractors = nn.ModuleList([\n            Attractor(bin_embedding_dim, n_bins, n_attractors=n_attractors[i], min_depth=min_depth, max_depth=max_depth,\n                      alpha=attractor_alpha, gamma=attractor_gamma, kind=attractor_kind, attractor_type=attractor_type)\n            for i in range(len(num_out_features))\n        ])\n\n        last_in = N_MIDAS_OUT + 1  # +1 for relative depth\n\n        # use log binomial instead of softmax\n        self.conditional_log_binomial = ConditionalLogBinomial(\n            last_in, bin_embedding_dim, n_classes=n_bins, min_temp=min_temp, max_temp=max_temp)\n\n    def forward(self, x, return_final_centers=False, denorm=False, return_probs=False, **kwargs):\n        \"\"\"\n        Args:\n            x (torch.Tensor): Input image tensor of shape (B, C, H, W)\n            return_final_centers (bool, optional): Whether to return the final bin centers. Defaults to False.\n            denorm (bool, optional): Whether to denormalize the input image. This reverses ImageNet normalization as midas normalization is different. Defaults to False.\n            return_probs (bool, optional): Whether to return the output probability distribution. Defaults to False.\n\n        Returns:\n            dict: Dictionary containing the following keys:\n                - rel_depth (torch.Tensor): Relative depth map of shape (B, H, W)\n                - metric_depth (torch.Tensor): Metric depth map of shape (B, 1, H, W)\n                - bin_centers (torch.Tensor): Bin centers of shape (B, n_bins). Present only if return_final_centers is True\n                - probs (torch.Tensor): Output probability distribution of shape (B, n_bins, H, W). Present only if return_probs is True\n\n        \"\"\"\n        b, c, h, w = x.shape\n        # print(\"input shape \", x.shape)\n        self.orig_input_width = w\n        self.orig_input_height = h\n        rel_depth, out = self.core(x, denorm=denorm, return_rel_depth=True)\n        # print(\"output shapes\", rel_depth.shape, out.shape)\n\n        outconv_activation = out[0]\n        btlnck = out[1]\n        x_blocks = out[2:]\n\n        x_d0 = self.conv2(btlnck)\n        x = x_d0\n        _, seed_b_centers = self.seed_bin_regressor(x)\n\n        if self.bin_centers_type == 'normed' or self.bin_centers_type == 'hybrid2':\n            b_prev = (seed_b_centers - self.min_depth) / \\\n                (self.max_depth - self.min_depth)\n        else:\n            b_prev = seed_b_centers\n\n        prev_b_embedding = self.seed_projector(x)\n\n        # unroll this loop for better performance\n        for projector, attractor, x in zip(self.projectors, self.attractors, x_blocks):\n            b_embedding = projector(x)\n            b, b_centers = attractor(\n                b_embedding, b_prev, prev_b_embedding, interpolate=True)\n            b_prev = b.clone()\n            prev_b_embedding = b_embedding.clone()\n\n        last = outconv_activation\n\n        if self.inverse_midas:\n            # invert depth followed by normalization\n            rel_depth = 1.0 / (rel_depth + 1e-6)\n            rel_depth = (rel_depth - rel_depth.min()) / \\\n                (rel_depth.max() - rel_depth.min())\n        # concat rel depth with last. First interpolate rel depth to last size\n        rel_cond = rel_depth.unsqueeze(1)\n        rel_cond = nn.functional.interpolate(\n            rel_cond, size=last.shape[2:], mode='bilinear', align_corners=True)\n        last = torch.cat([last, rel_cond], dim=1)\n\n        b_embedding = nn.functional.interpolate(\n            b_embedding, last.shape[-2:], mode='bilinear', align_corners=True)\n        x = self.conditional_log_binomial(last, b_embedding)\n\n        # Now depth value is Sum px * cx , where cx are bin_centers from the last bin tensor\n        # print(x.shape, b_centers.shape)\n        b_centers = nn.functional.interpolate(\n            b_centers, x.shape[-2:], mode='bilinear', align_corners=True)\n        out = torch.sum(x * b_centers, dim=1, keepdim=True)\n\n        # Structure output dict\n        output = dict(metric_depth=out)\n        if return_final_centers or return_probs:\n            output['bin_centers'] = b_centers\n\n        if return_probs:\n            output['probs'] = x\n\n        return output\n\n    def get_lr_params(self, lr):\n        \"\"\"\n        Learning rate configuration for different layers of the model\n        Args:\n            lr (float) : Base learning rate\n        Returns:\n            list : list of parameters to optimize and their learning rates, in the format required by torch optimizers.\n        \"\"\"\n        param_conf = []\n        if self.train_midas:\n            if self.encoder_lr_factor > 0:\n                param_conf.append({'params': self.core.get_enc_params_except_rel_pos(\n                ), 'lr': lr / self.encoder_lr_factor})\n\n            if self.pos_enc_lr_factor > 0:\n                param_conf.append(\n                    {'params': self.core.get_rel_pos_params(), 'lr': lr / self.pos_enc_lr_factor})\n\n            midas_params = self.core.core.scratch.parameters()\n            midas_lr_factor = self.midas_lr_factor\n            param_conf.append(\n                {'params': midas_params, 'lr': lr / midas_lr_factor})\n\n        remaining_modules = []\n        for name, child in self.named_children():\n            if name != 'core':\n                remaining_modules.append(child)\n        remaining_params = itertools.chain(\n            *[child.parameters() for child in remaining_modules])\n\n        param_conf.append({'params': remaining_params, 'lr': lr})\n\n        return param_conf\n\n    @staticmethod\n    def build(midas_model_type=\"DPT_BEiT_L_384\", pretrained_resource=None, use_pretrained_midas=False, train_midas=False, freeze_midas_bn=True, **kwargs):\n        core = MidasCore.build(midas_model_type=midas_model_type, use_pretrained_midas=use_pretrained_midas,\n                               train_midas=train_midas, fetch_features=True, freeze_bn=freeze_midas_bn, **kwargs)\n        model = ZoeDepth(core, **kwargs)\n        if pretrained_resource:\n            assert isinstance(pretrained_resource, str), \"pretrained_resource must be a string\"\n            model = load_state_from_resource(model, pretrained_resource)\n        return model\n\n    @staticmethod\n    def build_from_config(config):\n        return ZoeDepth.build(**config)\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/zoedepth_nk/__init__.py",
    "content": "# MIT License\n\n# Copyright (c) 2022 Intelligent Systems Lab Org\n\n# Permission is hereby granted, free of charge, to any person obtaining a copy\n# of this software and associated documentation files (the \"Software\"), to deal\n# in the Software without restriction, including without limitation the rights\n# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n# copies of the Software, and to permit persons to whom the Software is\n# furnished to do so, subject to the following conditions:\n\n# The above copyright notice and this permission notice shall be included in all\n# copies or substantial portions of the Software.\n\n# THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n# SOFTWARE.\n\n# File author: Shariq Farooq Bhat\n\nfrom .zoedepth_nk_v1 import ZoeDepthNK\n\nall_versions = {\n    \"v1\": ZoeDepthNK,\n}\n\nget_version = lambda v : all_versions[v]\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/zoedepth_nk/config_zoedepth_nk.json",
    "content": "{\n    \"model\": {\n        \"name\": \"ZoeDepthNK\",\n        \"version_name\": \"v1\",\n        \"bin_conf\" : [\n            {\n                \"name\": \"nyu\",\n                \"n_bins\": 64,\n                \"min_depth\": 1e-3,\n                \"max_depth\": 10.0\n            },\n            {\n                \"name\": \"kitti\",\n                \"n_bins\": 64,\n                \"min_depth\": 1e-3,\n                \"max_depth\": 80.0\n            }\n        ],\n        \"bin_embedding_dim\": 128,\n        \"bin_centers_type\": \"softplus\",\n        \"n_attractors\":[16, 8, 4, 1],\n        \"attractor_alpha\": 1000,\n        \"attractor_gamma\": 2,\n        \"attractor_kind\" : \"mean\",\n        \"attractor_type\" : \"inv\",\n        \"min_temp\": 0.0212,\n        \"max_temp\": 50.0,\n        \"memory_efficient\": true,\n        \"midas_model_type\" : \"DPT_BEiT_L_384\",\n        \"img_size\": [384, 512]\n    },\n\n    \"train\": {\n        \"train_midas\": true,\n        \"use_pretrained_midas\": true,\n        \"trainer\": \"zoedepth_nk\",\n        \"epochs\": 5,\n        \"bs\": 16,\n        \"optim_kwargs\": {\"lr\": 0.0002512, \"wd\": 0.01},\n        \"sched_kwargs\": {\"div_factor\": 1, \"final_div_factor\": 10000, \"pct_start\": 0.7, \"three_phase\":false, \"cycle_momentum\": true},\n        \"same_lr\": false,\n        \"w_si\": 1,\n        \"w_domain\": 100,\n        \"avoid_boundary\": false,\n        \"random_crop\": false,\n        \"input_width\": 640,\n        \"input_height\": 480,\n        \"w_grad\": 0,\n        \"w_reg\": 0,\n        \"midas_lr_factor\": 10,\n        \"encoder_lr_factor\":10,\n        \"pos_enc_lr_factor\":10\n    },\n\n    \"infer\": {\n        \"train_midas\": false,\n        \"pretrained_resource\": \"url::https://github.com/isl-org/ZoeDepth/releases/download/v1.0/ZoeD_M12_NK.pt\",\n        \"use_pretrained_midas\": false,\n        \"force_keep_ar\": true\n    },\n\n    \"eval\": {\n        \"train_midas\": false,\n        \"pretrained_resource\": \"url::https://github.com/isl-org/ZoeDepth/releases/download/v1.0/ZoeD_M12_NK.pt\",\n        \"use_pretrained_midas\": false\n    }\n}\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/models/zoedepth_nk/zoedepth_nk_v1.py",
    "content": "# MIT License\n\n# Copyright (c) 2022 Intelligent Systems Lab Org\n\n# Permission is hereby granted, free of charge, to any person obtaining a copy\n# of this software and associated documentation files (the \"Software\"), to deal\n# in the Software without restriction, including without limitation the rights\n# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n# copies of the Software, and to permit persons to whom the Software is\n# furnished to do so, subject to the following conditions:\n\n# The above copyright notice and this permission notice shall be included in all\n# copies or substantial portions of the Software.\n\n# THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n# SOFTWARE.\n\n# File author: Shariq Farooq Bhat\n\nimport itertools\n\nimport torch\nimport torch.nn as nn\n\nfrom ..depth_model import DepthModel\nfrom ..base_models.midas import MidasCore\nfrom ..layers.attractor import AttractorLayer, AttractorLayerUnnormed\nfrom ..layers.dist_layers import ConditionalLogBinomial\nfrom ..layers.localbins_layers import (Projector, SeedBinRegressor,\n                                            SeedBinRegressorUnnormed)\nfrom ..layers.patch_transformer import PatchTransformerEncoder\nfrom ..model_io import load_state_from_resource\n\nclass ZoeDepthNK(DepthModel):\n    def __init__(self, core,  bin_conf, bin_centers_type=\"softplus\", bin_embedding_dim=128,\n                 n_attractors=None, attractor_alpha=300, attractor_gamma=2, attractor_kind='sum', attractor_type='exp',\n                 min_temp=5, max_temp=50,\n                 memory_efficient=False, train_midas=True,\n                 is_midas_pretrained=True, midas_lr_factor=1, encoder_lr_factor=10, pos_enc_lr_factor=10, inverse_midas=False,  **kwargs):\n        \"\"\"ZoeDepthNK model. This is the version of ZoeDepth that has two metric heads and uses a learned router to route to experts.\n\n        Args:\n            core (models.base_models.midas.MidasCore): The base midas model that is used for extraction of \"relative\" features\n\n            bin_conf (List[dict]): A list of dictionaries that contain the bin configuration for each metric head. Each dictionary should contain the following keys:\n                                    \"name\" (str, typically same as the dataset name), \"n_bins\" (int), \"min_depth\" (float), \"max_depth\" (float)\n\n                                   The length of this list determines the number of metric heads.\n            bin_centers_type (str, optional): \"normed\" or \"softplus\". Activation type used for bin centers. For \"normed\" bin centers, linear normalization trick is applied. This results in bounded bin centers.\n                                               For \"softplus\", softplus activation is used and thus are unbounded. Defaults to \"normed\".\n            bin_embedding_dim (int, optional): bin embedding dimension. Defaults to 128.\n\n            n_attractors (List[int], optional): Number of bin attractors at decoder layers. Defaults to [16, 8, 4, 1].\n            attractor_alpha (int, optional): Proportional attractor strength. Refer to models.layers.attractor for more details. Defaults to 300.\n            attractor_gamma (int, optional): Exponential attractor strength. Refer to models.layers.attractor for more details. Defaults to 2.\n            attractor_kind (str, optional): Attraction aggregation \"sum\" or \"mean\". Defaults to 'sum'.\n            attractor_type (str, optional): Type of attractor to use; \"inv\" (Inverse attractor) or \"exp\" (Exponential attractor). Defaults to 'exp'.\n\n            min_temp (int, optional): Lower bound for temperature of output probability distribution. Defaults to 5.\n            max_temp (int, optional): Upper bound for temperature of output probability distribution. Defaults to 50.\n\n            memory_efficient (bool, optional): Whether to use memory efficient version of attractor layers. Memory efficient version is slower but is recommended incase of multiple metric heads in order save GPU memory. Defaults to False.\n\n            train_midas (bool, optional): Whether to train \"core\", the base midas model. Defaults to True.\n            is_midas_pretrained (bool, optional): Is \"core\" pretrained? Defaults to True.\n            midas_lr_factor (int, optional): Learning rate reduction factor for base midas model except its encoder and positional encodings. Defaults to 10.\n            encoder_lr_factor (int, optional): Learning rate reduction factor for the encoder in midas model. Defaults to 10.\n            pos_enc_lr_factor (int, optional): Learning rate reduction factor for positional encodings in the base midas model. Defaults to 10.\n\n        \"\"\"\n\n        if n_attractors is None:\n            n_attractors = [16, 8, 4, 1]\n        super().__init__()\n\n        self.core = core\n        self.bin_conf = bin_conf\n        self.min_temp = min_temp\n        self.max_temp = max_temp\n        self.memory_efficient = memory_efficient\n        self.train_midas = train_midas\n        self.is_midas_pretrained = is_midas_pretrained\n        self.midas_lr_factor = midas_lr_factor\n        self.encoder_lr_factor = encoder_lr_factor\n        self.pos_enc_lr_factor = pos_enc_lr_factor\n        self.inverse_midas = inverse_midas\n\n        N_MIDAS_OUT = 32\n        btlnck_features = self.core.output_channels[0]\n        num_out_features = self.core.output_channels[1:]\n        # self.scales = [16, 8, 4, 2]  # spatial scale factors\n\n        self.conv2 = nn.Conv2d(\n            btlnck_features, btlnck_features, kernel_size=1, stride=1, padding=0)\n\n        # Transformer classifier on the bottleneck\n        self.patch_transformer = PatchTransformerEncoder(\n            btlnck_features, 1, 128, use_class_token=True)\n        self.mlp_classifier = nn.Sequential(\n            nn.Linear(128, 128),\n            nn.ReLU(),\n            nn.Linear(128, 2)\n        )\n\n        if bin_centers_type == \"normed\":\n            SeedBinRegressorLayer = SeedBinRegressor\n            Attractor = AttractorLayer\n        elif bin_centers_type == \"softplus\":\n            SeedBinRegressorLayer = SeedBinRegressorUnnormed\n            Attractor = AttractorLayerUnnormed\n        elif bin_centers_type == \"hybrid1\":\n            SeedBinRegressorLayer = SeedBinRegressor\n            Attractor = AttractorLayerUnnormed\n        elif bin_centers_type == \"hybrid2\":\n            SeedBinRegressorLayer = SeedBinRegressorUnnormed\n            Attractor = AttractorLayer\n        else:\n            raise ValueError(\n                \"bin_centers_type should be one of 'normed', 'softplus', 'hybrid1', 'hybrid2'\")\n        self.bin_centers_type = bin_centers_type\n        # We have bins for each bin conf.\n        # Create a map (ModuleDict) of 'name' -> seed_bin_regressor\n        self.seed_bin_regressors = nn.ModuleDict(\n            {conf['name']: SeedBinRegressorLayer(btlnck_features, conf[\"n_bins\"], mlp_dim=bin_embedding_dim//2, min_depth=conf[\"min_depth\"], max_depth=conf[\"max_depth\"])\n             for conf in bin_conf}\n        )\n\n        self.seed_projector = Projector(\n            btlnck_features, bin_embedding_dim, mlp_dim=bin_embedding_dim//2)\n        self.projectors = nn.ModuleList([\n            Projector(num_out, bin_embedding_dim, mlp_dim=bin_embedding_dim//2)\n            for num_out in num_out_features\n        ])\n\n        # Create a map (ModuleDict) of 'name' -> attractors (ModuleList)\n        self.attractors = nn.ModuleDict(\n            {conf['name']: nn.ModuleList([\n                Attractor(bin_embedding_dim, n_attractors[i],\n                          mlp_dim=bin_embedding_dim, alpha=attractor_alpha,\n                          gamma=attractor_gamma, kind=attractor_kind,\n                          attractor_type=attractor_type, memory_efficient=memory_efficient,\n                          min_depth=conf[\"min_depth\"], max_depth=conf[\"max_depth\"])\n                for i in range(len(n_attractors))\n            ])\n                for conf in bin_conf}\n        )\n\n        last_in = N_MIDAS_OUT\n        # conditional log binomial for each bin conf\n        self.conditional_log_binomial = nn.ModuleDict(\n            {conf['name']: ConditionalLogBinomial(last_in, bin_embedding_dim, conf['n_bins'], bottleneck_factor=4, min_temp=self.min_temp, max_temp=self.max_temp)\n             for conf in bin_conf}\n        )\n\n    def forward(self, x, return_final_centers=False, denorm=False, return_probs=False, **kwargs):\n        \"\"\"\n        Args:\n            x (torch.Tensor): Input image tensor of shape (B, C, H, W). Assumes all images are from the same domain.\n            return_final_centers (bool, optional): Whether to return the final centers of the attractors. Defaults to False.\n            denorm (bool, optional): Whether to denormalize the input image. Defaults to False.\n            return_probs (bool, optional): Whether to return the probabilities of the bins. Defaults to False.\n\n        Returns:\n            dict: Dictionary of outputs with keys:\n                - \"rel_depth\": Relative depth map of shape (B, 1, H, W)\n                - \"metric_depth\": Metric depth map of shape (B, 1, H, W)\n                - \"domain_logits\": Domain logits of shape (B, 2)\n                - \"bin_centers\": Bin centers of shape (B, N, H, W). Present only if return_final_centers is True\n                - \"probs\": Bin probabilities of shape (B, N, H, W). Present only if return_probs is True\n        \"\"\"\n        b, c, h, w = x.shape\n        self.orig_input_width = w\n        self.orig_input_height = h\n        rel_depth, out = self.core(x, denorm=denorm, return_rel_depth=True)\n\n        outconv_activation = out[0]\n        btlnck = out[1]\n        x_blocks = out[2:]\n\n        x_d0 = self.conv2(btlnck)\n        x = x_d0\n\n        # Predict which path to take\n        embedding = self.patch_transformer(x)[0]  # N, E\n        domain_logits = self.mlp_classifier(embedding)  # N, 2\n        domain_vote = torch.softmax(domain_logits.sum(\n            dim=0, keepdim=True), dim=-1)  # 1, 2\n\n        # Get the path\n        bin_conf_name = [\"nyu\", \"kitti\"][torch.argmax(\n            domain_vote, dim=-1).squeeze().item()]\n\n        try:\n            conf = [c for c in self.bin_conf if c.name == bin_conf_name][0]\n        except IndexError as e:\n            raise ValueError(f\"bin_conf_name {bin_conf_name} not found in bin_confs\") from e\n\n        min_depth = conf['min_depth']\n        max_depth = conf['max_depth']\n\n        seed_bin_regressor = self.seed_bin_regressors[bin_conf_name]\n        _, seed_b_centers = seed_bin_regressor(x)\n        if self.bin_centers_type == 'normed' or self.bin_centers_type == 'hybrid2':\n            b_prev = (seed_b_centers - min_depth)/(max_depth - min_depth)\n        else:\n            b_prev = seed_b_centers\n        prev_b_embedding = self.seed_projector(x)\n\n        attractors = self.attractors[bin_conf_name]\n        for projector, attractor, x in zip(self.projectors, attractors, x_blocks):\n            b_embedding = projector(x)\n            b, b_centers = attractor(\n                b_embedding, b_prev, prev_b_embedding, interpolate=True)\n            b_prev = b\n            prev_b_embedding = b_embedding\n\n        last = outconv_activation\n\n        b_centers = nn.functional.interpolate(\n            b_centers, last.shape[-2:], mode='bilinear', align_corners=True)\n        b_embedding = nn.functional.interpolate(\n            b_embedding, last.shape[-2:], mode='bilinear', align_corners=True)\n\n        clb = self.conditional_log_binomial[bin_conf_name]\n        x = clb(last, b_embedding)\n\n        # Now depth value is Sum px * cx , where cx are bin_centers from the last bin tensor\n        # print(x.shape, b_centers.shape)\n        # b_centers = nn.functional.interpolate(b_centers, x.shape[-2:], mode='bilinear', align_corners=True)\n        out = torch.sum(x * b_centers, dim=1, keepdim=True)\n\n        output = dict(domain_logits=domain_logits, metric_depth=out)\n        if return_final_centers or return_probs:\n            output['bin_centers'] = b_centers\n\n        if return_probs:\n            output['probs'] = x\n        return output\n\n    def get_lr_params(self, lr):\n        \"\"\"\n        Learning rate configuration for different layers of the model\n\n        Args:\n            lr (float) : Base learning rate\n        Returns:\n            list : list of parameters to optimize and their learning rates, in the format required by torch optimizers.\n        \"\"\"\n        param_conf = []\n        if self.train_midas:\n            def get_rel_pos_params():\n                for name, p in self.core.core.pretrained.named_parameters():\n                    if \"relative_position\" in name:\n                        yield p\n\n            def get_enc_params_except_rel_pos():\n                for name, p in self.core.core.pretrained.named_parameters():\n                    if \"relative_position\" not in name:\n                        yield p\n\n            encoder_params = get_enc_params_except_rel_pos()\n            rel_pos_params = get_rel_pos_params()\n            midas_params = self.core.core.scratch.parameters()\n            midas_lr_factor = self.midas_lr_factor if self.is_midas_pretrained else 1.0\n            param_conf.extend([\n                {'params': encoder_params, 'lr': lr / self.encoder_lr_factor},\n                {'params': rel_pos_params, 'lr': lr / self.pos_enc_lr_factor},\n                {'params': midas_params, 'lr': lr / midas_lr_factor}\n            ])\n\n        remaining_modules = []\n        for name, child in self.named_children():\n            if name != 'core':\n                remaining_modules.append(child)\n        remaining_params = itertools.chain(\n            *[child.parameters() for child in remaining_modules])\n        param_conf.append({'params': remaining_params, 'lr': lr})\n        return param_conf\n\n    def get_conf_parameters(self, conf_name):\n        \"\"\"\n        Returns parameters of all the ModuleDicts children that are exclusively used for the given bin configuration\n        \"\"\"\n        params = []\n        for _name, child in self.named_children():\n            if isinstance(child, nn.ModuleDict):\n                for bin_conf_name, module in child.items():\n                    if bin_conf_name == conf_name:\n                        params += list(module.parameters())\n        return params\n\n    def freeze_conf(self, conf_name):\n        \"\"\"\n        Freezes all the parameters of all the ModuleDicts children that are exclusively used for the given bin configuration\n        \"\"\"\n        for p in self.get_conf_parameters(conf_name):\n            p.requires_grad = False\n\n    def unfreeze_conf(self, conf_name):\n        \"\"\"\n        Unfreezes all the parameters of all the ModuleDicts children that are exclusively used for the given bin configuration\n        \"\"\"\n        for p in self.get_conf_parameters(conf_name):\n            p.requires_grad = True\n\n    def freeze_all_confs(self):\n        \"\"\"\n        Freezes all the parameters of all the ModuleDicts children\n        \"\"\"\n        for _name, child in self.named_children():\n            if isinstance(child, nn.ModuleDict):\n                for _bin_conf_name, module in child.items():\n                    for p in module.parameters():\n                        p.requires_grad = False\n\n    @staticmethod\n    def build(midas_model_type=\"DPT_BEiT_L_384\", pretrained_resource=None, use_pretrained_midas=False, train_midas=False, freeze_midas_bn=True, **kwargs):\n        core = MidasCore.build(midas_model_type=midas_model_type, use_pretrained_midas=use_pretrained_midas,\n                               train_midas=train_midas, fetch_features=True, freeze_bn=freeze_midas_bn, **kwargs)\n        model = ZoeDepthNK(core, **kwargs)\n        if pretrained_resource:\n            assert isinstance(pretrained_resource, str), \"pretrained_resource must be a string\"\n            model = load_state_from_resource(model, pretrained_resource)\n        return model\n\n    @staticmethod\n    def build_from_config(config):\n        return ZoeDepthNK.build(**config)\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/utils/__init__.py",
    "content": "# MIT License\n\n# Copyright (c) 2022 Intelligent Systems Lab Org\n\n# Permission is hereby granted, free of charge, to any person obtaining a copy\n# of this software and associated documentation files (the \"Software\"), to deal\n# in the Software without restriction, including without limitation the rights\n# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n# copies of the Software, and to permit persons to whom the Software is\n# furnished to do so, subject to the following conditions:\n\n# The above copyright notice and this permission notice shall be included in all\n# copies or substantial portions of the Software.\n\n# THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n# SOFTWARE.\n\n# File author: Shariq Farooq Bhat\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/utils/arg_utils.py",
    "content": "\n\ndef infer_type(x):  # hacky way to infer type from string args\n    if not isinstance(x, str):\n        return x\n\n    try:\n        x = int(x)\n        return x\n    except ValueError:\n        pass\n\n    try:\n        x = float(x)\n        return x\n    except ValueError:\n        pass\n\n    return x\n\n\ndef parse_unknown(unknown_args):\n    clean = []\n    for a in unknown_args:\n        if \"=\" in a:\n            k, v = a.split(\"=\")\n            clean.extend([k, v])\n        else:\n            clean.append(a)\n\n    keys = clean[::2]\n    values = clean[1::2]\n    return {k.replace(\"--\", \"\"): infer_type(v) for k, v in zip(keys, values)}\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/utils/config.py",
    "content": "# MIT License\n\n# Copyright (c) 2022 Intelligent Systems Lab Org\n\n# Permission is hereby granted, free of charge, to any person obtaining a copy\n# of this software and associated documentation files (the \"Software\"), to deal\n# in the Software without restriction, including without limitation the rights\n# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n# copies of the Software, and to permit persons to whom the Software is\n# furnished to do so, subject to the following conditions:\n\n# The above copyright notice and this permission notice shall be included in all\n# copies or substantial portions of the Software.\n\n# THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n# SOFTWARE.\n\n# File author: Shariq Farooq Bhat\n\nimport json\nimport os\n\nfrom .easydict import EasyDict as edict\nfrom .arg_utils import infer_type\n\nimport pathlib\nimport platform\n\nROOT = pathlib.Path(__file__).parent.parent.resolve()\n\nHOME_DIR = os.path.expanduser(\"~\")\n\nCOMMON_CONFIG = {\n    \"save_dir\": os.path.expanduser(\"~/shortcuts/monodepth3_checkpoints\"),\n    \"project\": \"ZoeDepth\",\n    \"tags\": '',\n    \"notes\": \"\",\n    \"gpu\": None,\n    \"root\": \".\",\n    \"uid\": None,\n    \"print_losses\": False\n}\n\nDATASETS_CONFIG = {\n    \"kitti\": {\n        \"dataset\": \"kitti\",\n        \"min_depth\": 0.001,\n        \"max_depth\": 80,\n        \"data_path\": os.path.join(HOME_DIR, \"shortcuts/datasets/kitti/raw\"),\n        \"gt_path\": os.path.join(HOME_DIR, \"shortcuts/datasets/kitti/gts\"),\n        \"filenames_file\": \"./train_test_inputs/kitti_eigen_train_files_with_gt.txt\",\n        \"input_height\": 352,\n        \"input_width\": 1216,  # 704\n        \"data_path_eval\": os.path.join(HOME_DIR, \"shortcuts/datasets/kitti/raw\"),\n        \"gt_path_eval\": os.path.join(HOME_DIR, \"shortcuts/datasets/kitti/gts\"),\n        \"filenames_file_eval\": \"./train_test_inputs/kitti_eigen_test_files_with_gt.txt\",\n\n        \"min_depth_eval\": 1e-3,\n        \"max_depth_eval\": 80,\n\n        \"do_random_rotate\": True,\n        \"degree\": 1.0,\n        \"do_kb_crop\": True,\n        \"garg_crop\": True,\n        \"eigen_crop\": False,\n        \"use_right\": False\n    },\n    \"kitti_test\": {\n        \"dataset\": \"kitti\",\n        \"min_depth\": 0.001,\n        \"max_depth\": 80,\n        \"data_path\": os.path.join(HOME_DIR, \"shortcuts/datasets/kitti/raw\"),\n        \"gt_path\": os.path.join(HOME_DIR, \"shortcuts/datasets/kitti/gts\"),\n        \"filenames_file\": \"./train_test_inputs/kitti_eigen_train_files_with_gt.txt\",\n        \"input_height\": 352,\n        \"input_width\": 1216,\n        \"data_path_eval\": os.path.join(HOME_DIR, \"shortcuts/datasets/kitti/raw\"),\n        \"gt_path_eval\": os.path.join(HOME_DIR, \"shortcuts/datasets/kitti/gts\"),\n        \"filenames_file_eval\": \"./train_test_inputs/kitti_eigen_test_files_with_gt.txt\",\n\n        \"min_depth_eval\": 1e-3,\n        \"max_depth_eval\": 80,\n\n        \"do_random_rotate\": False,\n        \"degree\": 1.0,\n        \"do_kb_crop\": True,\n        \"garg_crop\": True,\n        \"eigen_crop\": False,\n        \"use_right\": False\n    },\n    \"nyu\": {\n        \"dataset\": \"nyu\",\n        \"avoid_boundary\": False,\n        \"min_depth\": 1e-3,   # originally 0.1\n        \"max_depth\": 10,\n        \"data_path\": os.path.join(HOME_DIR, \"shortcuts/datasets/nyu_depth_v2/sync/\"),\n        \"gt_path\": os.path.join(HOME_DIR, \"shortcuts/datasets/nyu_depth_v2/sync/\"),\n        \"filenames_file\": \"./train_test_inputs/nyudepthv2_train_files_with_gt.txt\",\n        \"input_height\": 480,\n        \"input_width\": 640,\n        \"data_path_eval\": os.path.join(HOME_DIR, \"shortcuts/datasets/nyu_depth_v2/official_splits/test/\"),\n        \"gt_path_eval\": os.path.join(HOME_DIR, \"shortcuts/datasets/nyu_depth_v2/official_splits/test/\"),\n        \"filenames_file_eval\": \"./train_test_inputs/nyudepthv2_test_files_with_gt.txt\",\n        \"min_depth_eval\": 1e-3,\n        \"max_depth_eval\": 10,\n        \"min_depth_diff\": -10,\n        \"max_depth_diff\": 10,\n\n        \"do_random_rotate\": True,\n        \"degree\": 1.0,\n        \"do_kb_crop\": False,\n        \"garg_crop\": False,\n        \"eigen_crop\": True\n    },\n    \"ibims\": {\n        \"dataset\": \"ibims\",\n        \"ibims_root\": os.path.join(HOME_DIR, \"shortcuts/datasets/ibims/ibims1_core_raw/\"),\n        \"eigen_crop\": True,\n        \"garg_crop\": False,\n        \"do_kb_crop\": False,\n        \"min_depth_eval\": 0,\n        \"max_depth_eval\": 10,\n        \"min_depth\": 1e-3,\n        \"max_depth\": 10\n    },\n    \"sunrgbd\": {\n        \"dataset\": \"sunrgbd\",\n        \"sunrgbd_root\": os.path.join(HOME_DIR, \"shortcuts/datasets/SUNRGBD/test/\"),\n        \"eigen_crop\": True,\n        \"garg_crop\": False,\n        \"do_kb_crop\": False,\n        \"min_depth_eval\": 0,\n        \"max_depth_eval\": 8,\n        \"min_depth\": 1e-3,\n        \"max_depth\": 10\n    },\n    \"diml_indoor\": {\n        \"dataset\": \"diml_indoor\",\n        \"diml_indoor_root\": os.path.join(HOME_DIR, \"shortcuts/datasets/diml_indoor_test/\"),\n        \"eigen_crop\": True,\n        \"garg_crop\": False,\n        \"do_kb_crop\": False,\n        \"min_depth_eval\": 0,\n        \"max_depth_eval\": 10,\n        \"min_depth\": 1e-3,\n        \"max_depth\": 10\n    },\n    \"diml_outdoor\": {\n        \"dataset\": \"diml_outdoor\",\n        \"diml_outdoor_root\": os.path.join(HOME_DIR, \"shortcuts/datasets/diml_outdoor_test/\"),\n        \"eigen_crop\": False,\n        \"garg_crop\": True,\n        \"do_kb_crop\": False,\n        \"min_depth_eval\": 2,\n        \"max_depth_eval\": 80,\n        \"min_depth\": 1e-3,\n        \"max_depth\": 80\n    },\n    \"diode_indoor\": {\n        \"dataset\": \"diode_indoor\",\n        \"diode_indoor_root\": os.path.join(HOME_DIR, \"shortcuts/datasets/diode_indoor/\"),\n        \"eigen_crop\": True,\n        \"garg_crop\": False,\n        \"do_kb_crop\": False,\n        \"min_depth_eval\": 1e-3,\n        \"max_depth_eval\": 10,\n        \"min_depth\": 1e-3,\n        \"max_depth\": 10\n    },\n    \"diode_outdoor\": {\n        \"dataset\": \"diode_outdoor\",\n        \"diode_outdoor_root\": os.path.join(HOME_DIR, \"shortcuts/datasets/diode_outdoor/\"),\n        \"eigen_crop\": False,\n        \"garg_crop\": True,\n        \"do_kb_crop\": False,\n        \"min_depth_eval\": 1e-3,\n        \"max_depth_eval\": 80,\n        \"min_depth\": 1e-3,\n        \"max_depth\": 80\n    },\n    \"hypersim_test\": {\n        \"dataset\": \"hypersim_test\",\n        \"hypersim_test_root\": os.path.join(HOME_DIR, \"shortcuts/datasets/hypersim_test/\"),\n        \"eigen_crop\": True,\n        \"garg_crop\": False,\n        \"do_kb_crop\": False,\n        \"min_depth_eval\": 1e-3,\n        \"max_depth_eval\": 80,\n        \"min_depth\": 1e-3,\n        \"max_depth\": 10\n    },\n    \"vkitti\": {\n        \"dataset\": \"vkitti\",\n        \"vkitti_root\": os.path.join(HOME_DIR, \"shortcuts/datasets/vkitti_test/\"),\n        \"eigen_crop\": False,\n        \"garg_crop\": True,\n        \"do_kb_crop\": True,\n        \"min_depth_eval\": 1e-3,\n        \"max_depth_eval\": 80,\n        \"min_depth\": 1e-3,\n        \"max_depth\": 80\n    },\n    \"vkitti2\": {\n        \"dataset\": \"vkitti2\",\n        \"vkitti2_root\": os.path.join(HOME_DIR, \"shortcuts/datasets/vkitti2/\"),\n        \"eigen_crop\": False,\n        \"garg_crop\": True,\n        \"do_kb_crop\": True,\n        \"min_depth_eval\": 1e-3,\n        \"max_depth_eval\": 80,\n        \"min_depth\": 1e-3,\n        \"max_depth\": 80,\n    },\n    \"ddad\": {\n        \"dataset\": \"ddad\",\n        \"ddad_root\": os.path.join(HOME_DIR, \"shortcuts/datasets/ddad/ddad_val/\"),\n        \"eigen_crop\": False,\n        \"garg_crop\": True,\n        \"do_kb_crop\": True,\n        \"min_depth_eval\": 1e-3,\n        \"max_depth_eval\": 80,\n        \"min_depth\": 1e-3,\n        \"max_depth\": 80,\n    },\n}\n\nALL_INDOOR = [\"nyu\", \"ibims\", \"sunrgbd\", \"diode_indoor\", \"hypersim_test\"]\nALL_OUTDOOR = [\"kitti\", \"diml_outdoor\", \"diode_outdoor\",  \"vkitti2\", \"ddad\"]\nALL_EVAL_DATASETS = ALL_INDOOR + ALL_OUTDOOR\n\nCOMMON_TRAINING_CONFIG = {\n    \"dataset\": \"nyu\",\n    \"distributed\": True,\n    \"workers\": 16,\n    \"clip_grad\": 0.1,\n    \"use_shared_dict\": False,\n    \"shared_dict\": None,\n    \"use_amp\": False,\n\n    \"aug\": True,\n    \"random_crop\": False,\n    \"random_translate\": False,\n    \"translate_prob\": 0.2,\n    \"max_translation\": 100,\n\n    \"validate_every\": 0.25,\n    \"log_images_every\": 0.1,\n    \"prefetch\": False,\n}\n\n\ndef flatten(config, except_keys=('bin_conf')):\n    def recurse(inp):\n        if isinstance(inp, dict):\n            for key, value in inp.items():\n                if key in except_keys:\n                    yield (key, value)\n                if isinstance(value, dict):\n                    yield from recurse(value)\n                else:\n                    yield (key, value)\n\n    return dict(list(recurse(config)))\n\n\ndef split_combined_args(kwargs):\n    \"\"\"Splits the arguments that are combined with '__' into multiple arguments.\n       Combined arguments should have equal number of keys and values.\n       Keys are separated by '__' and Values are separated with ';'.\n       For example, '__n_bins__lr=256;0.001'\n\n    Args:\n        kwargs (dict): key-value pairs of arguments where key-value is optionally combined according to the above format.\n\n    Returns:\n        dict: Parsed dict with the combined arguments split into individual key-value pairs.\n    \"\"\"\n    new_kwargs = dict(kwargs)\n    for key, value in kwargs.items():\n        if key.startswith(\"__\"):\n            keys = key.split(\"__\")[1:]\n            values = value.split(\";\")\n            assert len(keys) == len(\n                values), f\"Combined arguments should have equal number of keys and values. Keys are separated by '__' and Values are separated with ';'. For example, '__n_bins__lr=256;0.001. Given (keys,values) is ({keys}, {values})\"\n            for k, v in zip(keys, values):\n                new_kwargs[k] = v\n    return new_kwargs\n\n\ndef parse_list(config, key, dtype=int):\n    \"\"\"Parse a list of values for the key if the value is a string. The values are separated by a comma.\n    Modifies the config in place.\n    \"\"\"\n    if key in config:\n        if isinstance(config[key], str):\n            config[key] = list(map(dtype, config[key].split(',')))\n        assert isinstance(config[key], list) and all(isinstance(e, dtype) for e in config[key]\n                                                     ), f\"{key} should be a list of values dtype {dtype}. Given {config[key]} of type {type(config[key])} with values of type {[type(e) for e in config[key]]}.\"\n\n\ndef get_model_config(model_name, model_version=None):\n    \"\"\"Find and parse the .json config file for the model.\n\n    Args:\n        model_name (str): name of the model. The config file should be named config_{model_name}[_{model_version}].json under the models/{model_name} directory.\n        model_version (str, optional): Specific config version. If specified config_{model_name}_{model_version}.json is searched for and used. Otherwise config_{model_name}.json is used. Defaults to None.\n\n    Returns:\n        easydict: the config dictionary for the model.\n    \"\"\"\n    config_fname = f\"config_{model_name}_{model_version}.json\" if model_version is not None else f\"config_{model_name}.json\"\n    config_file = os.path.join(ROOT, \"models\", model_name, config_fname)\n    if not os.path.exists(config_file):\n        return None\n\n    with open(config_file, \"r\") as f:\n        config = edict(json.load(f))\n\n    # handle dictionary inheritance\n    # only training config is supported for inheritance\n    if \"inherit\" in config.train and config.train.inherit is not None:\n        inherit_config = get_model_config(config.train[\"inherit\"]).train\n        for key, value in inherit_config.items():\n            if key not in config.train:\n                config.train[key] = value\n    return edict(config)\n\n\ndef update_model_config(config, mode, model_name, model_version=None, strict=False):\n    model_config = get_model_config(model_name, model_version)\n    if model_config is not None:\n        config = {**config, **\n                  flatten({**model_config.model, **model_config[mode]})}\n    elif strict:\n        raise ValueError(f\"Config file for model {model_name} not found.\")\n    return config\n\n\ndef check_choices(name, value, choices):\n    # return  # No checks in dev branch\n    if value not in choices:\n        raise ValueError(f\"{name} {value} not in supported choices {choices}\")\n\n\nKEYS_TYPE_BOOL = [\"use_amp\", \"distributed\", \"use_shared_dict\", \"same_lr\", \"aug\", \"three_phase\",\n                  \"prefetch\", \"cycle_momentum\"]  # Casting is not necessary as their int casted values in config are 0 or 1\n\n\ndef get_config(model_name, mode='train', dataset=None, **overwrite_kwargs):\n    \"\"\"Main entry point to get the config for the model.\n\n    Args:\n        model_name (str): name of the desired model.\n        mode (str, optional): \"train\" or \"infer\". Defaults to 'train'.\n        dataset (str, optional): If specified, the corresponding dataset configuration is loaded as well. Defaults to None.\n\n    Keyword Args: key-value pairs of arguments to overwrite the default config.\n\n    The order of precedence for overwriting the config is (Higher precedence first):\n        # 1. overwrite_kwargs\n        # 2. \"config_version\": Config file version if specified in overwrite_kwargs. The corresponding config loaded is config_{model_name}_{config_version}.json\n        # 3. \"version_name\": Default Model version specific config specified in overwrite_kwargs. The corresponding config loaded is config_{model_name}_{version_name}.json\n        # 4. common_config: Default config for all models specified in COMMON_CONFIG\n\n    Returns:\n        easydict: The config dictionary for the model.\n    \"\"\"\n\n\n    check_choices(\"Model\", model_name, [\"zoedepth\", \"zoedepth_nk\"])\n    check_choices(\"Mode\", mode, [\"train\", \"infer\", \"eval\"])\n    if mode == \"train\":\n        check_choices(\"Dataset\", dataset, [\"nyu\", \"kitti\", \"mix\", None])\n\n    config = flatten({**COMMON_CONFIG, **COMMON_TRAINING_CONFIG})\n    config = update_model_config(config, mode, model_name)\n\n    # update with model version specific config\n    version_name = overwrite_kwargs.get(\"version_name\", config[\"version_name\"])\n    config = update_model_config(config, mode, model_name, version_name)\n\n    # update with config version if specified\n    config_version = overwrite_kwargs.get(\"config_version\", None)\n    if config_version is not None:\n        print(\"Overwriting config with config_version\", config_version)\n        config = update_model_config(config, mode, model_name, config_version)\n\n    # update with overwrite_kwargs\n    # Combined args are useful for hyperparameter search\n    overwrite_kwargs = split_combined_args(overwrite_kwargs)\n    config = {**config, **overwrite_kwargs}\n\n    # Casting to bool\n    for key in KEYS_TYPE_BOOL:\n        if key in config:\n            config[key] = bool(config[key])\n\n    # Model specific post processing of config\n    parse_list(config, \"n_attractors\")\n\n    # adjust n_bins for each bin configuration if bin_conf is given and n_bins is passed in overwrite_kwargs\n    if 'bin_conf' in config and 'n_bins' in overwrite_kwargs:\n        bin_conf = config['bin_conf']  # list of dicts\n        n_bins = overwrite_kwargs['n_bins']\n        new_bin_conf = []\n        for conf in bin_conf:\n            conf['n_bins'] = n_bins\n            new_bin_conf.append(conf)\n        config['bin_conf'] = new_bin_conf\n\n    if mode == \"train\":\n        orig_dataset = dataset\n        if dataset == \"mix\":\n            dataset = 'nyu'  # Use nyu as default for mix. Dataset config is changed accordingly while loading the dataloader\n        if dataset is not None:\n            config['project'] = f\"MonoDepth3-{orig_dataset}\"  # Set project for wandb\n\n    if dataset is not None:\n        config['dataset'] = dataset\n        config = {**DATASETS_CONFIG[dataset], **config}\n\n\n    config['model'] = model_name\n    typed_config = {k: infer_type(v) for k, v in config.items()}\n    # add hostname to config\n    config['hostname'] = platform.node()\n    return edict(typed_config)\n\n\ndef change_dataset(config, new_dataset):\n    config.update(DATASETS_CONFIG[new_dataset])\n    return config\n"
  },
  {
    "path": "modules/control/proc/zoe/zoedepth/utils/easydict/__init__.py",
    "content": "\"\"\"\nEasyDict\nCopy/pasted from https://github.com/makinacorpus/easydict\nOriginal author: Mathieu Leplatre <mathieu.leplatre@makina-corpus.com>\n\"\"\"\n\nclass EasyDict(dict):\n    \"\"\"\n    Get attributes\n\n    >>> d = EasyDict({'foo':3})\n    >>> d['foo']\n    3\n    >>> d.foo\n    3\n    >>> d.bar\n    Traceback (most recent call last):\n    ...\n    AttributeError: 'EasyDict' object has no attribute 'bar'\n\n    Works recursively\n\n    >>> d = EasyDict({'foo':3, 'bar':{'x':1, 'y':2}})\n    >>> isinstance(d.bar, dict)\n    True\n    >>> d.bar.x\n    1\n\n    Bullet-proof\n\n    >>> EasyDict({})\n    {}\n    >>> EasyDict(d={})\n    {}\n    >>> EasyDict(None)\n    {}\n    >>> d = {'a': 1}\n    >>> EasyDict(**d)\n    {'a': 1}\n    >>> EasyDict((('a', 1), ('b', 2)))\n    {'a': 1, 'b': 2}\n\n    Set attributes\n\n    >>> d = EasyDict()\n    >>> d.foo = 3\n    >>> d.foo\n    3\n    >>> d.bar = {'prop': 'value'}\n    >>> d.bar.prop\n    'value'\n    >>> d\n    {'foo': 3, 'bar': {'prop': 'value'}}\n    >>> d.bar.prop = 'newer'\n    >>> d.bar.prop\n    'newer'\n\n\n    Values extraction\n\n    >>> d = EasyDict({'foo':0, 'bar':[{'x':1, 'y':2}, {'x':3, 'y':4}]})\n    >>> isinstance(d.bar, list)\n    True\n    >>> from operator import attrgetter\n    >>> list(map(attrgetter('x'), d.bar))\n    [1, 3]\n    >>> list(map(attrgetter('y'), d.bar))\n    [2, 4]\n    >>> d = EasyDict()\n    >>> list(d.keys())\n    []\n    >>> d = EasyDict(foo=3, bar=dict(x=1, y=2))\n    >>> d.foo\n    3\n    >>> d.bar.x\n    1\n\n    Still like a dict though\n\n    >>> o = EasyDict({'clean':True})\n    >>> list(o.items())\n    [('clean', True)]\n\n    And like a class\n\n    >>> class Flower(EasyDict):\n    ...     power = 1\n    ...\n    >>> f = Flower()\n    >>> f.power\n    1\n    >>> f = Flower({'height': 12})\n    >>> f.height\n    12\n    >>> f['power']\n    1\n    >>> sorted(f.keys())\n    ['height', 'power']\n\n    update and pop items\n    >>> d = EasyDict(a=1, b='2')\n    >>> e = EasyDict(c=3.0, a=9.0)\n    >>> d.update(e)\n    >>> d.c\n    3.0\n    >>> d['c']\n    3.0\n    >>> d.get('c')\n    3.0\n    >>> d.update(a=4, b=4)\n    >>> d.b\n    4\n    >>> d.pop('a')\n    4\n    >>> d.a\n    Traceback (most recent call last):\n    ...\n    AttributeError: 'EasyDict' object has no attribute 'a'\n    \"\"\"\n    def __init__(self, d=None, **kwargs):\n        if d is None:\n            d = {}\n        else:\n            d = dict(d)\n        if kwargs:\n            d.update(**kwargs)\n        for k, v in d.items():\n            setattr(self, k, v)\n        # Class attributes\n        for k in self.__class__.__dict__.keys():\n            if not (k.startswith('__') and k.endswith('__')) and k not in ('update', 'pop'):\n                setattr(self, k, getattr(self, k))\n\n    def __setattr__(self, name, value):\n        if isinstance(value, (list, tuple)):\n            value = [self.__class__(x)\n                     if isinstance(x, dict) else x for x in value]\n        elif isinstance(value, dict) and not isinstance(value, self.__class__):\n            value = self.__class__(value)\n        super(EasyDict, self).__setattr__(name, value)\n        super(EasyDict, self).__setitem__(name, value)\n\n    __setitem__ = __setattr__\n\n    def update(self, e=None, **f):\n        d = e or {}\n        d.update(f)\n        for k in d:\n            setattr(self, k, d[k])\n\n    def pop(self, k, d=None):\n        delattr(self, k)\n        return super(EasyDict, self).pop(k, d)\n\n\nif __name__ == \"__main__\":\n    import doctest\n    doctest.testmod()\n"
  },
  {
    "path": "modules/control/processor.py",
    "content": "import os\nimport time\nimport hashlib\nimport numpy as np\nfrom PIL import Image\nfrom modules.processing_class import StableDiffusionProcessingControl\nfrom modules import shared, images, masking, sd_models\nfrom modules.timer import process as process_timer\nfrom modules.control import util\nfrom modules.control import processors as control_processors\n\n\ndebug = os.environ.get('SD_CONTROL_DEBUG', None) is not None\ndebug_log = shared.log.trace if debug else lambda *args, **kwargs: None\nprocessors = [\n    'None',\n    'OpenPose',\n    'DWPose',\n    'MediaPipe Face',\n    'Canny',\n    'Edge',\n    'LineArt Realistic',\n    'LineArt Anime',\n    'HED',\n    'PidiNet',\n    'Midas Depth Hybrid',\n    'Leres Depth',\n    'Zoe Depth',\n    'Marigold Depth',\n    'Normal Bae',\n    'SegmentAnything',\n    'MLSD',\n    'Shuffle',\n    'DPT Depth Hybrid',\n    'GLPN Depth',\n    'Depth Anything',\n    'Depth Pro',\n]\n\n\ndef preprocess_image(\n        p:StableDiffusionProcessingControl,\n        pipe,\n        input_image:Image.Image = None,\n        init_image:Image.Image = None,\n        input_mask:Image.Image = None,\n        input_type:str = 0,\n        unit_type:str = 'controlnet',\n        active_process:list = [],\n        active_model:list = [],\n        selected_models:list = [],\n        has_models:bool = False,\n    ):\n    t0 = time.time()\n    jobid = shared.state.begin('Preprocess')\n\n    # run resize before\n    if (p.resize_mode_before != 0) and (p.resize_name_before != 'None'):\n        if (p.selected_scale_tab_before == 1) and (input_image is not None):\n            p.width_before, p.height_before = int(input_image.width * p.scale_by_before), int(input_image.height * p.scale_by_before)\n        if input_image is not None:\n            debug_log(f'Control resize: op=before image={input_image} width={p.width_before} height={p.height_before} mode={p.resize_mode_before} name={p.resize_name_before} context=\"{p.resize_context_before}\"')\n            p.init_img_hash = getattr(p, 'init_img_hash', hashlib.sha256(input_image.tobytes()).hexdigest()[0:8]) # pylint: disable=attribute-defined-outside-init\n            p.init_img_width = getattr(p, 'init_img_width', input_image.width) # pylint: disable=attribute-defined-outside-init\n            p.init_img_height = getattr(p, 'init_img_height', input_image.height) # pylint: disable=attribute-defined-outside-init\n            input_image = images.resize_image(p.resize_mode_before, input_image, p.width_before, p.height_before, p.resize_name_before, context=p.resize_context_before)\n    if (input_image is not None) and (init_image is not None) and (init_image.size != input_image.size):\n        debug_log(f'Control resize init: image={init_image} target={input_image}')\n        init_image = images.resize_image(resize_mode=1, im=init_image, width=input_image.width, height=input_image.height)\n    if (input_image is not None) and (p.override is not None) and (p.override.size != input_image.size):\n        debug_log(f'Control resize override: image={p.override} target={input_image}')\n        p.override = images.resize_image(resize_mode=1, im=p.override, width=input_image.width, height=input_image.height)\n    if input_image is not None:\n        p.width = input_image.width\n        p.height = input_image.height\n        debug_log(f'Control: input image={input_image}')\n\n    # run masking\n    if input_mask is not None:\n        p.extra_generation_params[\"Mask only\"] = masking.opts.mask_only if masking.opts.mask_only else None\n        p.extra_generation_params[\"Mask auto\"] = masking.opts.auto_mask if masking.opts.auto_mask != 'None' else None\n        p.extra_generation_params[\"Mask invert\"] = masking.opts.invert if masking.opts.invert else None\n        p.extra_generation_params[\"Mask blur\"] = masking.opts.mask_blur if masking.opts.mask_blur > 0 else None\n        p.extra_generation_params[\"Mask erode\"] = masking.opts.mask_erode if masking.opts.mask_erode > 0 else None\n        p.extra_generation_params[\"Mask dilate\"] = masking.opts.mask_dilate if masking.opts.mask_dilate > 0 else None\n        p.extra_generation_params[\"Mask model\"] = masking.opts.model if masking.opts.model is not None else None\n        masked_image = masking.run_mask(input_image=input_image, input_mask=input_mask, return_type='Masked', invert=p.inpainting_mask_invert==1) if input_mask is not None else input_image\n    else:\n        masked_image = input_image\n\n    # resize mask\n    if input_mask is not None and p.resize_mode_mask != 0 and p.resize_name_mask != 'None':\n        if p.selected_scale_tab_mask == 1:\n            p.width_mask, p.height_mask = int(input_image.width * p.scale_by_mask), int(input_image.height * p.scale_by_mask)\n        p.width, p.height = p.width_mask, p.height_mask\n        debug_log(f'Control resize: op=mask image={input_mask} width={p.width_mask} height={p.height_mask} mode={p.resize_mode_mask} name={p.resize_name_mask} context=\"{p.resize_context_mask}\"')\n\n    # run image processors\n    processed_images = []\n    blended_image = None\n    for i, process in enumerate(active_process): # list[image]\n        debug_log(f'Control: i={i+1} process=\"{process.processor_id}\" input={masked_image} override={process.override}')\n        if p.resize_mode_before != 0:\n            resize_mode = p.resize_mode_before\n        else:\n            resize_mode = 3 if shared.opts.control_aspect_ratio else 1\n        processed_image = process(\n            image_input=masked_image,\n            width=p.width,\n            height=p.height,\n            mode='RGB',\n            resize_mode=resize_mode,\n            resize_name=p.resize_name_before,\n            scale_tab=p.selected_scale_tab_before,\n            scale_by=p.scale_by_before,\n        )\n        if processed_image is not None:\n            processed_images.append(processed_image)\n        if shared.opts.control_unload_processor and process.processor_id is not None:\n            control_processors.config[process.processor_id]['dirty'] = True # to force reload\n            process.model = None\n\n    # blend processed images\n    debug_log(f'Control processed: {len(processed_images)}')\n    if len(processed_images) > 0:\n        try:\n            if len(p.extra_generation_params[\"Control process\"]) == 0:\n                p.extra_generation_params[\"Control process\"] = None\n            else:\n                p.extra_generation_params[\"Control process\"] = ';'.join([p.processor_id for p in active_process if p.processor_id is not None])\n        except Exception:\n            pass\n        if any(img is None for img in processed_images):\n            shared.log.error('Control: one or more processed images are None')\n            processed_images = [img for img in processed_images if img is not None]\n        if len(processed_images) > 1 and len(active_process) != len(active_model):\n            processed_image = [np.array(i) for i in processed_images]\n            processed_image = util.blend(processed_image) # blend all processed images into one\n            processed_image = Image.fromarray(processed_image)\n            blended_image = processed_image\n        elif len(processed_images) == 1:\n            processed_image = processed_images\n            blended_image = processed_image[0]\n        else:\n            blended_image = [np.array(i) for i in processed_images]\n            blended_image = util.blend(blended_image) # blend all processed images into one\n            blended_image = Image.fromarray(blended_image)\n        if isinstance(selected_models, list) and len(processed_images) == len(selected_models) and len(processed_images) > 0:\n            debug_log(f'Control: inputs match: input={len(processed_images)} models={len(selected_models)}')\n            p.init_images = processed_images\n        elif isinstance(selected_models, list) and len(processed_images) != len(selected_models):\n            shared.log.error(f'Control: number of inputs does not match: input={len(processed_images)} models={len(selected_models)}')\n        elif selected_models is not None:\n            p.init_images = processed_image\n    else:\n        debug_log('Control processed: using input direct')\n        processed_image = input_image\n\n    # conditional assignment\n    possible = sd_models.get_call(pipe).keys()\n    if unit_type == 'reference' and has_models:\n        p.ref_image = p.override or input_image\n        p.task_args.pop('image', None)\n        p.task_args['ref_image'] = p.ref_image\n        debug_log(f'Control: process=None image={p.ref_image}')\n        if p.ref_image is None:\n            shared.log.error('Control: reference mode without image')\n    elif unit_type == 'controlnet' and has_models:\n        if input_type == 0: # Control only\n            if 'control_image' in possible:\n                p.task_args['control_image'] = [p.init_images] if isinstance(p.init_images, Image.Image) else p.init_images\n            elif 'image' in possible:\n                p.task_args['image'] = [p.init_images] if isinstance(p.init_images, Image.Image) else p.init_images\n            if 'control_mode' in possible:\n                p.task_args['control_mode'] = getattr(p, 'control_mode', None)\n            if 'strength' in possible:\n                p.task_args['strength'] = p.denoising_strength\n            p.init_images = None\n        elif input_type == 1: # Init image same as control\n            p.init_images = [p.override or input_image] * max(1, len(active_model))\n            if 'inpaint_image' in possible: # flex\n                p.task_args['inpaint_image'] = p.init_images[0] if isinstance(p.init_images, list) else p.init_images\n                p.task_args['inpaint_mask'] = Image.new('L', p.task_args['inpaint_image'].size, int(p.denoising_strength * 255))\n                p.task_args['control_image'] = p.init_images[0] if isinstance(p.init_images, list) else p.init_images\n                p.task_args['width'] = p.width\n                p.task_args['height'] = p.height\n            elif 'control_image' in possible:\n                p.task_args['control_image'] = p.init_images # switch image and control_image\n            if 'control_mode' in possible:\n                p.task_args['control_mode'] = getattr(p, 'control_mode', None)\n            if 'strength' in possible:\n                p.task_args['strength'] = p.denoising_strength\n        elif input_type == 2: # Separate init image\n            if init_image is None:\n                shared.log.warning('Control: separate init image not provided')\n                init_image = input_image\n            if 'inpaint_image' in possible: # flex\n                p.task_args['inpaint_image'] = p.init_images[0] if isinstance(p.init_images, list) else p.init_images\n                p.task_args['inpaint_mask'] = Image.new('L', p.task_args['inpaint_image'].size, int(p.denoising_strength * 255))\n                p.task_args['control_image'] = p.init_images[0] if isinstance(p.init_images, list) else p.init_images\n                p.task_args['width'] = p.width\n                p.task_args['height'] = p.height\n            elif 'control_image' in possible:\n                p.task_args['control_image'] = p.init_images # switch image and control_image\n            if 'control_mode' in possible:\n                p.task_args['control_mode'] = getattr(p, 'control_mode', None)\n            if 'strength' in possible:\n                p.task_args['strength'] = p.denoising_strength\n            p.init_images = [init_image] * len(active_model)\n        if hasattr(shared.sd_model, 'controlnet') and hasattr(p.task_args, 'control_image') and len(p.task_args['control_image']) > 1 and (shared.sd_model.__class__.__name__ == 'StableDiffusionXLControlNetUnionPipeline'): # special case for controlnet-union\n            p.task_args['control_image'] = [[x] for x in p.task_args['control_image']]\n            p.task_args['control_mode'] = [[x] for x in p.task_args['control_mode']]\n\n    # determine txt2img, img2img, inpaint pipeline\n    if unit_type == 'reference' and has_models: # special case\n        p.is_control = True\n        shared.sd_model = sd_models.set_diffuser_pipe(shared.sd_model, sd_models.DiffusersTaskType.TEXT_2_IMAGE)\n    elif not has_models: # run in txt2img/img2img/inpaint mode\n        if input_mask is not None:\n            p.task_args['strength'] = p.denoising_strength\n            p.image_mask = input_mask\n            p.init_images = input_image if isinstance(input_image, list) else [input_image]\n            shared.sd_model = sd_models.set_diffuser_pipe(shared.sd_model, sd_models.DiffusersTaskType.INPAINTING)\n        elif processed_image is not None:\n            p.init_images = processed_image if isinstance(processed_image, list) else [processed_image]\n            shared.sd_model = sd_models.set_diffuser_pipe(shared.sd_model, sd_models.DiffusersTaskType.IMAGE_2_IMAGE)\n        else:\n            p.init_hr(p.scale_by, p.resize_name, force=True)\n            shared.sd_model = sd_models.set_diffuser_pipe(shared.sd_model, sd_models.DiffusersTaskType.TEXT_2_IMAGE)\n    elif has_models: # actual control\n        p.is_control = True\n        if input_mask is not None:\n            p.task_args['strength'] = p.denoising_strength\n            p.image_mask = input_mask\n            shared.sd_model = sd_models.set_diffuser_pipe(shared.sd_model, sd_models.DiffusersTaskType.INPAINTING) # only controlnet supports inpaint\n        if hasattr(p, 'init_images') and p.init_images is not None:\n            shared.sd_model = sd_models.set_diffuser_pipe(shared.sd_model, sd_models.DiffusersTaskType.IMAGE_2_IMAGE) # only controlnet supports img2img\n        else:\n            shared.sd_model = sd_models.set_diffuser_pipe(shared.sd_model, sd_models.DiffusersTaskType.TEXT_2_IMAGE)\n            if hasattr(p, 'init_images') and p.init_images is not None and 'image' in possible:\n                p.task_args['image'] = p.init_images # need to set explicitly for txt2img\n                p.init_images = None\n        if unit_type == 'lite':\n            if input_type == 0:\n                shared.sd_model = sd_models.set_diffuser_pipe(shared.sd_model, sd_models.DiffusersTaskType.TEXT_2_IMAGE)\n                shared.sd_model.no_task_switch = True\n            elif input_type == 1:\n                p.init_images = [input_image]\n            elif input_type == 2:\n                if init_image is None:\n                    shared.log.warning('Control: separate init image not provided')\n                    init_image = input_image\n                p.init_images = [init_image]\n\n    t1 = time.time()\n    process_timer.add('proc', t1-t0)\n    shared.state.end(jobid)\n    return processed_image, blended_image\n"
  },
  {
    "path": "modules/control/processors.py",
    "content": "import os\nimport time\nimport numpy as np\nfrom PIL import Image\nfrom installer import log\nfrom modules.errors import display\nfrom modules import devices, images\n\n\nmodels = {}\ncache_dir = 'models/control/processors'\ndebug = log.trace if os.environ.get('SD_CONTROL_DEBUG', None) is not None else lambda *args, **kwargs: None\ndebug('Trace: CONTROL')\nconfig = {\n    # placeholder\n    'None': {},\n    # pose models\n    'OpenPose': {'class': None, 'checkpoint': True, 'params': {'include_body': True, 'include_hand': False, 'include_face': False}},\n    'DWPose': {'class': None, 'checkpoint': False, 'model': 'Tiny', 'params': {'min_confidence': 0.3}},\n    'MediaPipe Face': {'class': None, 'checkpoint': False, 'params': {'max_faces': 1, 'min_confidence': 0.5}},\n    # outline models\n    'Canny': {'class': None, 'checkpoint': False, 'params': {'low_threshold': 100, 'high_threshold': 200}},\n    'Edge': {'class': None, 'checkpoint': False, 'params': {'pf': True, 'mode': 'edge'}},\n    'LineArt Realistic': {'class': None, 'checkpoint': True, 'params': {'coarse': False}},\n    'LineArt Anime': {'class': None, 'checkpoint': True, 'params': {}},\n    'HED': {'class': None, 'checkpoint': True, 'params': {'scribble': False, 'safe': False}},\n    'PidiNet': {'class': None, 'checkpoint': True, 'params': {'scribble': False, 'safe': False, 'apply_filter': False}},\n    # depth models\n    'Midas Depth Hybrid': {'class': None, 'checkpoint': True, 'params': {'bg_th': 0.1, 'depth_and_normal': False}},\n    'Leres Depth': {'class': None, 'checkpoint': True, 'params': {'boost': False, 'thr_a':0, 'thr_b':0}},\n    'Zoe Depth': {'class': None, 'checkpoint': True, 'params': {'gamma_corrected': False}, 'load_config': {'pretrained_model_or_path': 'halffried/gyre_zoedepth', 'filename': 'ZoeD_M12_N.safetensors', 'model_type': \"zoedepth\"}},\n    'Marigold Depth': {'class': None, 'checkpoint': True, 'params': {'denoising_steps': 10, 'ensemble_size': 10, 'processing_res': 512, 'match_input_res': True, 'color_map': 'None'}, 'load_config': {'pretrained_model_or_path': 'Bingxin/Marigold'}},\n    'Normal Bae': {'class': None, 'checkpoint': True, 'params': {}},\n    # segmentation models\n    'SegmentAnything': {'class': None, 'checkpoint': True, 'model': 'Base', 'params': {}},\n    # other models\n    'MLSD': {'class': None, 'checkpoint': True, 'params': {'thr_v': 0.1, 'thr_d': 0.1}},\n    'Shuffle': {'class': None, 'checkpoint': False, 'params': {}},\n    'DPT Depth Hybrid': {'class': None, 'checkpoint': False, 'params': {}},\n    'GLPN Depth': {'class': None, 'checkpoint': False, 'params': {}},\n    'Depth Anything': {'class': None, 'checkpoint': True, 'load_config': {'pretrained_model_or_path': 'LiheYoung/depth_anything_vitl14' }, 'params': { 'color_map': 'inferno' }},\n    'Depth Pro': {'class': None, 'checkpoint': True, 'load_config': {'pretrained_model_or_path': 'apple/DepthPro-hf'}, 'params': {'color_map': 'inferno'}},\n    # 'Midas Depth Large': {'class': MidasDetector, 'checkpoint': True, 'params': {'bg_th': 0.1, 'depth_and_normal': False}, 'load_config': {'pretrained_model_or_path': 'Intel/dpt-large', 'model_type': \"dpt_large\", 'filename': ''}},\n    # 'Zoe Depth Zoe': {'class': ZoeDetector, 'checkpoint': True, 'params': {}},\n    # 'Zoe Depth NK': {'class': ZoeDetector, 'checkpoint': True, 'params': {}, 'load_config': {'pretrained_model_or_path': 'halffried/gyre_zoedepth', 'filename': 'ZoeD_M12_NK.safetensors', 'model_type': \"zoedepth_nk\"}},\n}\n\n\ndef delay_load_config():\n    global config # pylint: disable=global-statement\n    from modules.control.proc.hed import HEDdetector\n    from modules.control.proc.canny import CannyDetector\n    from modules.control.proc.edge import EdgeDetector\n    from modules.control.proc.lineart import LineartDetector\n    from modules.control.proc.lineart_anime import LineartAnimeDetector\n    from modules.control.proc.pidi import PidiNetDetector\n    from modules.control.proc.mediapipe_face import MediapipeFaceDetector\n    from modules.control.proc.shuffle import ContentShuffleDetector\n    from modules.control.proc.leres import LeresDetector\n    from modules.control.proc.midas import MidasDetector\n    from modules.control.proc.mlsd import MLSDdetector\n    from modules.control.proc.normalbae import NormalBaeDetector\n    from modules.control.proc.openpose import OpenposeDetector\n    from modules.control.proc.dwpose import DWposeDetector\n    from modules.control.proc.segment_anything import SamDetector\n    from modules.control.proc.zoe import ZoeDetector\n    from modules.control.proc.marigold import MarigoldDetector\n    from modules.control.proc.dpt import DPTDetector\n    from modules.control.proc.glpn import GLPNDetector\n    from modules.control.proc.depth_anything import DepthAnythingDetector\n    from modules.control.proc.depth_pro import DepthProDetector\n    config = {\n        # placeholder\n        'None': {},\n        # pose models\n        'OpenPose': {'class': OpenposeDetector, 'checkpoint': True, 'params': {'include_body': True, 'include_hand': False, 'include_face': False}},\n        'DWPose': {'class': DWposeDetector, 'checkpoint': False, 'model': 'Tiny', 'params': {'min_confidence': 0.3}},\n        'MediaPipe Face': {'class': MediapipeFaceDetector, 'checkpoint': False, 'params': {'max_faces': 1, 'min_confidence': 0.5}},\n        # outline models\n        'Canny': {'class': CannyDetector, 'checkpoint': False, 'params': {'low_threshold': 100, 'high_threshold': 200}},\n        'Edge': {'class': EdgeDetector, 'checkpoint': False, 'params': {'pf': True, 'mode': 'edge'}},\n        'LineArt Realistic': {'class': LineartDetector, 'checkpoint': True, 'params': {'coarse': False}},\n        'LineArt Anime': {'class': LineartAnimeDetector, 'checkpoint': True, 'params': {}},\n        'HED': {'class': HEDdetector, 'checkpoint': True, 'params': {'scribble': False, 'safe': False}},\n        'PidiNet': {'class': PidiNetDetector, 'checkpoint': True, 'params': {'scribble': False, 'safe': False, 'apply_filter': False}},\n        # depth models\n        'Midas Depth Hybrid': {'class': MidasDetector, 'checkpoint': True, 'params': {'bg_th': 0.1, 'depth_and_normal': False}},\n        'Leres Depth': {'class': LeresDetector, 'checkpoint': True, 'params': {'boost': False, 'thr_a':0, 'thr_b':0}},\n        'Zoe Depth': {'class': ZoeDetector, 'checkpoint': True, 'params': {'gamma_corrected': False}, 'load_config': {'pretrained_model_or_path': 'halffried/gyre_zoedepth', 'filename': 'ZoeD_M12_N.safetensors', 'model_type': \"zoedepth\"}},\n        'Marigold Depth': {'class': MarigoldDetector, 'checkpoint': True, 'params': {'denoising_steps': 10, 'ensemble_size': 10, 'processing_res': 512, 'match_input_res': True, 'color_map': 'None'}, 'load_config': {'pretrained_model_or_path': 'Bingxin/Marigold'}},\n        'Normal Bae': {'class': NormalBaeDetector, 'checkpoint': True, 'params': {}},\n        # segmentation models\n        'SegmentAnything': {'class': SamDetector, 'checkpoint': True, 'model': 'Base', 'params': {}},\n        # other models\n        'MLSD': {'class': MLSDdetector, 'checkpoint': True, 'params': {'thr_v': 0.1, 'thr_d': 0.1}},\n        'Shuffle': {'class': ContentShuffleDetector, 'checkpoint': False, 'params': {}},\n        'DPT Depth Hybrid': {'class': DPTDetector, 'checkpoint': False, 'params': {}},\n        'GLPN Depth': {'class': GLPNDetector, 'checkpoint': False, 'params': {}},\n        'Depth Anything': {'class': DepthAnythingDetector, 'checkpoint': True, 'load_config': {'pretrained_model_or_path': 'LiheYoung/depth_anything_vitl14' }, 'params': { 'color_map': 'inferno' }},\n        'Depth Pro': {'class': DepthProDetector, 'checkpoint': True, 'load_config': {'pretrained_model_or_path': 'apple/DepthPro-hf'}, 'params': {'color_map': 'inferno'}},\n        # 'Midas Depth Large': {'class': MidasDetector, 'checkpoint': True, 'params': {'bg_th': 0.1, 'depth_and_normal': False}, 'load_config': {'pretrained_model_or_path': 'Intel/dpt-large', 'model_type': \"dpt_large\", 'filename': ''}},\n        # 'Zoe Depth Zoe': {'class': ZoeDetector, 'checkpoint': True, 'params': {}},\n        # 'Zoe Depth NK': {'class': ZoeDetector, 'checkpoint': True, 'params': {}, 'load_config': {'pretrained_model_or_path': 'halffried/gyre_zoedepth', 'filename': 'ZoeD_M12_NK.safetensors', 'model_type': \"zoedepth_nk\"}},\n    }\n\n\ndef list_models(refresh=False):\n    global models # pylint: disable=global-statement\n    if not refresh and len(models) > 0:\n        return models\n    models = list(config)\n    debug(f'Control list processors: path={cache_dir} models={models}')\n    return models\n\n\ndef update_settings(*settings):\n    debug(f'Control settings: {settings}')\n    def update(what, val):\n        processor_id = what[0]\n        if len(what) == 2 and config[processor_id][what[1]] != val:\n            config[processor_id][what[1]] = val\n            config[processor_id]['dirty'] = True\n            log.debug(f'Control settings: id=\"{processor_id}\" {what[-1]}={val}')\n        elif len(what) == 3 and config[processor_id][what[1]][what[2]] != val:\n            config[processor_id][what[1]][what[2]] = val\n            config[processor_id]['dirty'] = True\n            log.debug(f'Control settings: id=\"{processor_id}\" {what[-1]}={val}')\n        elif len(what) == 4 and config[processor_id][what[1]][what[2]][what[3]] != val:\n            config[processor_id][what[1]][what[2]][what[3]] = val\n            config[processor_id]['dirty'] = True\n            log.debug(f'Control settings: id=\"{processor_id}\" {what[-1]}={val}')\n\n    update(['HED', 'params', 'scribble'], settings[0])\n    update(['Midas Depth Hybrid', 'params', 'bg_th'], settings[1])\n    update(['Midas Depth Hybrid', 'params', 'depth_and_normal'], settings[2])\n    update(['MLSD', 'params', 'thr_v'], settings[3])\n    update(['MLSD', 'params', 'thr_d'], settings[4])\n    update(['OpenPose', 'params', 'include_body'], settings[5])\n    update(['OpenPose', 'params', 'include_hand'], settings[6])\n    update(['OpenPose', 'params', 'include_face'], settings[7])\n    update(['PidiNet', 'params', 'scribble'], settings[8])\n    update(['PidiNet', 'params', 'apply_filter'], settings[9])\n    update(['LineArt Realistic', 'params', 'coarse'], settings[10])\n    update(['Leres Depth', 'params', 'boost'], settings[11])\n    update(['Leres Depth', 'params', 'thr_a'], settings[12])\n    update(['Leres Depth', 'params', 'thr_b'], settings[13])\n    update(['MediaPipe Face', 'params', 'max_faces'], settings[14])\n    update(['MediaPipe Face', 'params', 'min_confidence'], settings[15])\n    update(['Canny', 'params', 'low_threshold'], settings[16])\n    update(['Canny', 'params', 'high_threshold'], settings[17])\n    update(['DWPose', 'model'], settings[18])\n    update(['DWPose', 'params', 'min_confidence'], settings[19])\n    update(['SegmentAnything', 'model'], settings[20])\n    update(['Edge', 'params', 'pf'], settings[21])\n    update(['Edge', 'params', 'mode'], settings[22])\n    update(['Zoe Depth', 'params', 'gamma_corrected'], settings[23])\n    update(['Marigold Depth', 'params', 'color_map'], settings[24])\n    update(['Marigold Depth', 'params', 'denoising_steps'], settings[25])\n    update(['Marigold Depth', 'params', 'ensemble_size'], settings[26])\n    update(['Depth Anything', 'params', 'color_map'], settings[27])\n    update(['Depth Pro', 'params', 'color_map'], settings[28])\n\n\nclass Processor():\n    def __init__(self, processor_id: str = None, resize = True):\n        self.model = None\n        self.processor_id = None\n        self.override = None\n        self.resize = resize\n        self.reset()\n        self.config(processor_id)\n        if processor_id is not None:\n            self.load()\n\n    def __str__(self):\n        return f' Processor(id={self.processor_id} model={self.model.__class__.__name__})' if self.processor_id and self.model else ''\n\n    def reset(self, processor_id: str = None):\n        if self.model is not None:\n            debug(f'Control Processor unloaded: id=\"{self.processor_id}\"')\n            self.model = None\n            self.processor_id = processor_id\n            devices.torch_gc(force=True, reason='processor')\n        self.load_config = { 'cache_dir': cache_dir }\n        from modules.shared import opts\n        if opts.offline_mode:\n            self.load_config[\"local_files_only\"] = True\n            os.environ['HF_HUB_OFFLINE'] = '1'\n        else:\n            os.environ.pop('HF_HUB_OFFLINE', None)\n            os.unsetenv('HF_HUB_OFFLINE')\n\n\n    def config(self, processor_id = None):\n        if processor_id is not None:\n            self.processor_id = processor_id\n        from_config = config.get(self.processor_id, {}).get('load_config', None)\n        \"\"\"\n        if load_config is not None:\n            for k, v in load_config.items():\n                self.load_config[k] = v\n        \"\"\"\n        if from_config is not None:\n            for k, v in from_config.items():\n                self.load_config[k] = v\n\n    def load(self, processor_id: str = None, force: bool = True) -> str:\n        from modules.shared import state\n        try:\n            t0 = time.time()\n            processor_id = processor_id or self.processor_id\n            if processor_id is None or processor_id == 'None':\n                self.reset()\n                return ''\n            if self.processor_id != processor_id:\n                self.reset()\n                self.config(processor_id)\n            else:\n                if not force and self.model is not None:\n                    # log.debug(f'Control Processor: id={processor_id} already loaded')\n                    return ''\n            if processor_id not in config:\n                log.error(f'Control Processor unknown: id=\"{processor_id}\" available={list(config)}')\n                return f'Processor failed to load: {processor_id}'\n            cls = config[processor_id]['class']\n            if cls is None:\n                delay_load_config()\n                cls = config[processor_id]['class']\n            # log.debug(f'Control Processor loading: id=\"{processor_id}\" class={cls.__name__}')\n            debug(f'Control Processor config={self.load_config}')\n            jobid = state.begin('Load processor')\n            if 'DWPose' in processor_id:\n                det_ckpt = 'https://download.openmmlab.com/mmdetection/v2.0/yolox/yolox_l_8x8_300e_coco/yolox_l_8x8_300e_coco_20211126_140236-d3bd2b23.pth'\n                if 'Tiny' == config['DWPose']['model']:\n                    pose_config = 'config/rtmpose-t_8xb64-270e_coco-ubody-wholebody-256x192.py'\n                    pose_ckpt = 'https://huggingface.co/yzd-v/DWPose/resolve/main/dw-tt_ucoco.pth'\n                elif 'Medium' == config['DWPose']['model']:\n                    pose_config = 'config/rtmpose-m_8xb64-270e_coco-ubody-wholebody-256x192.py'\n                    pose_ckpt = 'https://huggingface.co/yzd-v/DWPose/resolve/main/dw-mm_ucoco.pth'\n                elif 'Large' == config['DWPose']['model']:\n                    pose_config = 'config/rtmpose-l_8xb32-270e_coco-ubody-wholebody-384x288.py'\n                    pose_ckpt = 'https://huggingface.co/yzd-v/DWPose/resolve/main/dw-ll_ucoco_384.pth'\n                else:\n                    log.error(f'Control Processor load failed: id=\"{processor_id}\" error=unknown model type')\n                    return f'Processor failed to load: {processor_id}'\n                self.model = cls(det_ckpt=det_ckpt, pose_config=pose_config, pose_ckpt=pose_ckpt, device=\"cpu\")\n            elif 'SegmentAnything' in processor_id:\n                if 'Base' == config['SegmentAnything']['model']:\n                    self.model = cls.from_pretrained(model_path = 'segments-arnaud/sam_vit_b', filename='sam_vit_b_01ec64.pth', model_type='vit_b', **self.load_config)\n                elif 'Large' == config['SegmentAnything']['model']:\n                    self.model = cls.from_pretrained(model_path = 'segments-arnaud/sam_vit_l', filename='sam_vit_l_0b3195.pth', model_type='vit_l', **self.load_config)\n                else:\n                    log.error(f'Control Processor load failed: id=\"{processor_id}\" error=unknown model type')\n                    return f'Processor failed to load: {processor_id}'\n            elif config[processor_id].get('load_config', None) is not None:\n                self.model = cls.from_pretrained(**self.load_config)\n            elif config[processor_id]['checkpoint']:\n                self.model = cls.from_pretrained(\"lllyasviel/Annotators\", **self.load_config)\n            else:\n                self.model = cls() # class instance only\n            t1 = time.time()\n            state.end(jobid)\n            self.processor_id = processor_id\n            log.debug(f'Control Processor loaded: id=\"{processor_id}\" class={self.model.__class__.__name__} time={t1-t0:.2f}')\n            return f'Processor loaded: {processor_id}'\n        except Exception as e:\n            log.error(f'Control Processor load failed: id=\"{processor_id}\" error={e}')\n            display(e, 'Control Processor load')\n            return f'Processor load filed: {processor_id}'\n\n    def __call__(self, image_input: Image, mode: str = 'RGB', width: int = 0, height: int = 0, resize_mode: int = 0, resize_name: str = 'None', scale_tab: int = 1, scale_by: float = 1.0, local_config: dict = {}):\n        if self.override is not None:\n            debug(f'Control Processor: id=\"{self.processor_id}\" override={self.override}')\n            width = image_input.width if image_input is not None else width\n            height = image_input.height if image_input is not None else height\n            if (width != self.override.width) or (height != self.override.height):\n                debug(f'Control resize: op=override image={self.override} width={width} height={height} mode={resize_mode} name={resize_name}')\n                image_input = images.resize_image(resize_mode, self.override, width, height, resize_name)\n            else:\n                image_input = self.override\n            if resize_mode != 0 and resize_name != 'None':\n                if scale_tab == 1:\n                    width_before, height_before = int(image_input.width * scale_by), int(image_input.height * scale_by)\n                    debug(f'Control resize: op=before image={image_input} width={width_before} height={height_before} mode={resize_mode} name={resize_name}')\n                    image_input = images.resize_image(resize_mode, image_input, width_before, height_before, resize_name)\n        if self.processor_id is None or self.processor_id == 'None':\n            return image_input\n        image_process = image_input\n        if image_input is None:\n            # log.error('Control Processor: no input')\n            return image_process\n        if isinstance(image_input, list):\n            image_input = image_input[0]\n        if self.processor_id not in config:\n            return image_process\n        if config[self.processor_id].get('dirty', False):\n            processor_id = self.processor_id\n            config[processor_id].pop('dirty')\n            self.reset()\n            self.load(processor_id)\n        if self.model is None:\n            # log.error('Control Processor: model not loaded')\n            return image_process\n        try:\n            t0 = time.time()\n            kwargs = config.get(self.processor_id, {}).get('params', None)\n            if kwargs:\n                kwargs.update(local_config)\n            if self.resize:\n                image_resized = image_input.resize((512, 512), Image.Resampling.LANCZOS)\n            else:\n                image_resized = image_input\n            with devices.inference_context():\n                image_process = self.model(image_resized, **kwargs)\n            if image_process is None:\n                log.error(f'Control Processor: id=\"{self.processor_id}\" no image')\n                return image_input\n            if isinstance(image_process, np.ndarray):\n                if np.max(image_process) < 2:\n                    image_process = (255.0 * image_process).astype(np.uint8)\n                image_process = Image.fromarray(image_process, 'L')\n            if self.resize and image_process.size != image_input.size:\n                image_process = image_process.resize(image_input.size, Image.Resampling.LANCZOS)\n            t1 = time.time()\n            log.debug(f'Control Processor: id=\"{self.processor_id}\" mode={mode} args={kwargs} time={t1-t0:.2f}')\n        except Exception as e:\n            log.error(f'Control Processor failed: id=\"{self.processor_id}\" error={e}')\n            display(e, 'Control Processor')\n        if mode != 'RGB':\n            image_process = image_process.convert(mode)\n        return image_process\n\n    def preview(self):\n        import modules.ui_control_helpers as helpers\n        input_image = helpers.input_source\n        if isinstance(input_image, list):\n            input_image = input_image[0]\n        debug('Control process preview')\n        return self.__call__(input_image)\n"
  },
  {
    "path": "modules/control/run.py",
    "content": "import os\nimport sys\nfrom typing import List, Union\nimport cv2\nfrom PIL import Image\nfrom modules.control import util # helper functions\nfrom modules.control import unit # control units\nfrom modules.control import processors # image preprocessors\nfrom modules.control import tile # tiling module\nfrom modules.control.units import controlnet # lllyasviel ControlNet\nfrom modules.control.units import xs # VisLearn ControlNet-XS\nfrom modules.control.units import lite # Kohya ControlLLLite\nfrom modules.control.units import t2iadapter # TencentARC T2I-Adapter\nfrom modules.control.units import reference # ControlNet-Reference\nfrom modules.control.processor import preprocess_image\nfrom modules import devices, shared, errors, processing, images, sd_models, sd_vae, scripts_manager, masking\nfrom modules.processing_class import StableDiffusionProcessingControl\nfrom modules.ui_common import infotext_to_html\nfrom modules.api import script\nfrom modules.generation_parameters_copypaste import create_override_settings_dict\nfrom modules.paths import resolve_output_path\n\n\ndebug = os.environ.get('SD_CONTROL_DEBUG', None) is not None\ndebug_log = shared.log.trace if debug else lambda *args, **kwargs: None\npipe = None\ninstance = None\noriginal_pipeline = None\np_extra_args = {}\nunified_models = ['Flex2Pipeline'] # models that have controlnet builtin\n\n\ndef restore_pipeline():\n    global pipe, instance # pylint: disable=global-statement\n    if instance is not None and hasattr(instance, 'restore'):\n        instance.restore()\n    if (original_pipeline is not None) and (original_pipeline.__class__.__name__ != shared.sd_model.__class__.__name__):\n        if debug:\n            fn = f'{sys._getframe(2).f_code.co_name}:{sys._getframe(1).f_code.co_name}' # pylint: disable=protected-access\n            shared.log.trace(f'Control restored pipeline: class={shared.sd_model.__class__.__name__} to={original_pipeline.__class__.__name__} fn={fn}')\n        shared.sd_model = original_pipeline\n    pipe = None\n    instance = None\n    devices.torch_gc()\n\n\ndef terminate(msg):\n    restore_pipeline()\n    shared.log.error(f'Control terminated: {msg}')\n    return msg\n\n\ndef is_unified_model():\n    return shared.sd_model.__class__.__name__ in unified_models\n\n\ndef has_inputs(inputs):\n    current = inputs or []\n    current = current if isinstance(current, list) else [current]\n    current = [input for input in current if input is not None]\n    if current is None or len(current) == 0:\n        return False\n    return True\n\n\ndef set_pipe(p, has_models, unit_type, selected_models, active_model, active_strength, active_units, control_conditioning, control_guidance_start, control_guidance_end, inits=None, inputs=None):\n    global pipe, instance # pylint: disable=global-statement\n    pipe = None\n    if has_models and not has_inputs(inits) and not has_inputs(inputs):\n        if not any(has_inputs(u.override) for u in active_units if u.enabled): # check overrides\n            shared.log.error('Control: no input images')\n            return pipe\n    if has_models:\n        p.ops.append('control')\n        p.extra_generation_params[\"Control type\"] = unit_type # overriden later with pretty-print\n        p.extra_generation_params[\"Control model\"] = ';'.join([(m.model_id or '') for m in active_model if m.model is not None])\n        p.extra_generation_params[\"Control conditioning\"] = control_conditioning if isinstance(control_conditioning, list) else [control_conditioning]\n        p.extra_generation_params['Control start'] = control_guidance_start if isinstance(control_guidance_start, list) else [control_guidance_start]\n        p.extra_generation_params['Control end'] = control_guidance_end if isinstance(control_guidance_end, list) else [control_guidance_end]\n        p.extra_generation_params[\"Control conditioning\"] = ';'.join([str(c) for c in p.extra_generation_params[\"Control conditioning\"]])\n        p.extra_generation_params['Control start'] = ';'.join([str(c) for c in p.extra_generation_params['Control start']])\n        p.extra_generation_params['Control end'] = ';'.join([str(c) for c in p.extra_generation_params['Control end']])\n    if unit_type == 't2i adapter' and has_models:\n        p.extra_generation_params[\"Control type\"] = 'T2I-Adapter'\n        p.task_args['adapter_conditioning_scale'] = control_conditioning\n        instance = t2iadapter.AdapterPipeline(selected_models, shared.sd_model)\n        pipe = instance.pipeline\n        if inits is not None:\n            shared.log.warning('Control: T2I-Adapter does not support separate init image')\n    elif unit_type == 'controlnet' and has_models:\n        p.extra_generation_params[\"Control type\"] = 'ControlNet'\n        if shared.sd_model_type == 'f1':\n            p.task_args['controlnet_conditioning_scale'] = control_conditioning if isinstance(control_conditioning, list) else [control_conditioning]\n        else:\n            p.task_args['controlnet_conditioning_scale'] = control_conditioning\n        p.task_args['control_guidance_start'] = control_guidance_start\n        p.task_args['control_guidance_end'] = control_guidance_end\n        p.task_args['guess_mode'] = p.guess_mode\n        if not is_unified_model():\n            instance = controlnet.ControlNetPipeline(selected_models, shared.sd_model, p=p)\n            pipe = instance.pipeline\n        else:\n            pipe = shared.sd_model\n    elif unit_type == 'xs' and has_models:\n        p.extra_generation_params[\"Control type\"] = 'ControlNet-XS'\n        p.controlnet_conditioning_scale = control_conditioning\n        p.control_guidance_start = control_guidance_start\n        p.control_guidance_end = control_guidance_end\n        instance = xs.ControlNetXSPipeline(selected_models, shared.sd_model)\n        pipe = instance.pipeline\n        if inits is not None:\n            shared.log.warning('Control: ControlNet-XS does not support separate init image')\n    elif unit_type == 'lite' and has_models:\n        p.extra_generation_params[\"Control type\"] = 'ControlLLLite'\n        p.controlnet_conditioning_scale = control_conditioning\n        instance = lite.ControlLLitePipeline(shared.sd_model)\n        pipe = instance.pipeline\n        if inits is not None:\n            shared.log.warning('Control: ControlLLLite does not support separate init image')\n    elif unit_type == 'reference' and has_models:\n        p.extra_generation_params[\"Control type\"] = 'Reference'\n        p.extra_generation_params[\"Control attention\"] = p.attention\n        p.task_args['reference_attn'] = 'Attention' in p.attention\n        p.task_args['reference_adain'] = 'Adain' in p.attention\n        p.task_args['attention_auto_machine_weight'] = p.query_weight\n        p.task_args['gn_auto_machine_weight'] = p.adain_weight\n        p.task_args['style_fidelity'] = p.fidelity\n        instance = reference.ReferencePipeline(shared.sd_model)\n        pipe = instance.pipeline\n        if inits is not None:\n            shared.log.warning('Control: ControlNet-XS does not support separate init image')\n    else: # run in txt2img/img2img mode\n        if len(active_strength) > 0:\n            p.strength = active_strength[0]\n        pipe = shared.sd_model\n        instance = None\n    if (pipe is not None) and (pipe.__class__.__name__ != shared.sd_model.__class__.__name__):\n        sd_models.copy_diffuser_options(pipe, shared.sd_model) # copy options from original pipeline\n    debug_log(f'Control: run type={unit_type} models={has_models} pipe={pipe.__class__.__name__ if pipe is not None else None}')\n    return pipe\n\n\ndef check_active(p, unit_type, units):\n    active_process: List[processors.Processor] = [] # all active preprocessors\n    active_model: List[Union[controlnet.ControlNet, xs.ControlNetXS, t2iadapter.Adapter]] = [] # all active models\n    active_strength: List[float] = [] # strength factors for all active models\n    active_start: List[float] = [] # start step for all active models\n    active_end: List[float] = [] # end step for all active models\n    active_units: List[unit.Unit] = [] # all active units\n    num_units = 0\n    for u in units:\n        if u.type != unit_type:\n            continue\n        num_units += 1\n        debug_log(f'Control unit: i={num_units} type={u.type} enabled={u.enabled} cn={u.controlnet} proc={u.process}')\n        if not u.enabled:\n            if u.controlnet is not None and u.controlnet.model is not None:\n                debug_log(f'Control unit offload: model=\"{u.controlnet.model_id}\" device={devices.cpu}')\n                sd_models.move_model(u.controlnet.model, devices.cpu)\n            continue\n        if u.controlnet is not None and u.controlnet.model is not None:\n            debug_log(f'Control unit offload: model=\"{u.controlnet.model_id}\" device={devices.device}')\n            sd_models.move_model(u.controlnet.model, devices.device)\n        if unit_type == 't2i adapter' and u.adapter.model is not None:\n            active_process.append(u.process)\n            active_model.append(u.adapter)\n            active_strength.append(float(u.strength))\n            p.adapter_conditioning_factor = u.factor\n            active_units.append(u)\n            shared.log.debug(f'Control T2I-Adapter unit: i={num_units} process=\"{u.process.processor_id}\" model=\"{u.adapter.model_id}\" strength={u.strength} factor={u.factor}')\n        elif unit_type == 'controlnet' and (u.controlnet.model is not None or is_unified_model()):\n            active_process.append(u.process)\n            active_model.append(u.controlnet)\n            active_strength.append(float(u.strength))\n            active_start.append(float(u.start))\n            active_end.append(float(u.end))\n            p.guess_mode = u.guess\n            active_units.append(u)\n            if isinstance(u.mode, str):\n                if not hasattr(p, 'control_mode'):\n                    p.control_mode = []\n                p.control_mode.append(u.choices.index(u.mode) if u.mode in u.choices else 0)\n                p.is_tile = p.is_tile or 'tile' in u.mode.lower()\n                p.control_tile = u.tile\n                p.extra_generation_params[\"Control mode\"] = u.mode\n            shared.log.debug(f'Control unit: i={num_units} type=ControlNet process=\"{u.process.processor_id}\" model=\"{u.controlnet.model_id}\" strength={u.strength} guess={u.guess} start={u.start} end={u.end} mode={u.mode}')\n        elif unit_type == 'xs' and u.controlnet.model is not None:\n            active_process.append(u.process)\n            active_model.append(u.controlnet)\n            active_strength.append(float(u.strength))\n            active_start.append(float(u.start))\n            active_end.append(float(u.end))\n            active_units.append(u)\n            shared.log.debug(f'Control unit: i={num_units} type=ControlNetXS process={u.process.processor_id} model={u.controlnet.model_id} strength={u.strength} guess={u.guess} start={u.start} end={u.end}')\n        elif unit_type == 'lite' and u.controlnet.model is not None:\n            active_process.append(u.process)\n            active_model.append(u.controlnet)\n            active_strength.append(float(u.strength))\n            active_units.append(u)\n            shared.log.debug(f'Control unit: i={num_units} type=ControlLLite process={u.process.processor_id} model={u.controlnet.model_id} strength={u.strength} guess={u.guess} start={u.start} end={u.end}')\n        elif unit_type == 'reference':\n            p.override = u.override\n            p.attention = u.attention\n            p.query_weight = float(u.query_weight)\n            p.adain_weight = float(u.adain_weight)\n            p.fidelity = u.fidelity\n            active_units.append(u)\n            shared.log.debug('Control Reference unit')\n        else:\n            if u.process.processor_id is not None:\n                active_process.append(u.process)\n                active_units.append(u)\n                shared.log.debug(f'Control unit: i={num_units} type=Process process={u.process.processor_id}')\n            active_strength.append(float(u.strength))\n    debug_log(f'Control active: process={len(active_process)} model={len(active_model)}')\n    return active_process, active_model, active_strength, active_start, active_end, active_units\n\n\ndef check_enabled(p, unit_type, units, active_model, active_strength, active_start, active_end):\n    has_models = False\n    selected_models: List[Union[controlnet.ControlNetModel, xs.ControlNetXSModel, t2iadapter.AdapterModel]] = None\n    control_conditioning = None\n    control_guidance_start = None\n    control_guidance_end = None\n    if unit_type == 't2i adapter' or unit_type == 'controlnet' or unit_type == 'xs' or unit_type == 'lite':\n        if len(active_model) == 0:\n            selected_models = None\n        elif len(active_model) == 1:\n            selected_models = active_model[0].model if active_model[0].model is not None else None\n            p.is_tile = p.is_tile or 'tile' in (active_model[0].model_id or '').lower()\n            has_models = (selected_models is not None) or is_unified_model()\n            control_conditioning = active_strength[0] if len(active_strength) > 0 else 1 # strength or list[strength]\n            control_guidance_start = active_start[0] if len(active_start) > 0 else 0\n            control_guidance_end = active_end[0] if len(active_end) > 0 else 1\n        else:\n            selected_models = [m.model for m in active_model if m.model is not None]\n            has_models = len(selected_models) > 0\n            control_conditioning = active_strength[0] if len(active_strength) == 1 else list(active_strength) # strength or list[strength]\n            control_guidance_start = active_start[0] if len(active_start) == 1 else list(active_start)\n            control_guidance_end = active_end[0] if len(active_end) == 1 else list(active_end)\n    elif unit_type == 'reference':\n        has_models = any(u.enabled for u in units if u.type == 'reference')\n    else:\n        pass\n    return has_models, selected_models, control_conditioning, control_guidance_start, control_guidance_end\n\n\ndef control_set(kwargs):\n    if kwargs:\n        global p_extra_args # pylint: disable=global-statement\n        p_extra_args = {}\n        debug_log(f'Control extra args: {kwargs}')\n    for k, v in kwargs.items():\n        p_extra_args[k] = v\n\n\ndef init_units(units: List[unit.Unit]):\n    for u in units:\n        if not u.enabled:\n            continue\n        if u.process_name is not None and u.process_name != '' and u.process_name != 'None':\n            u.process.load(u.process_name, force=False)\n        if u.model_name is not None and u.model_name != '' and u.model_name != 'None':\n            if u.type == 't2i adapter':\n                u.adapter.load(u.model_name, force=False)\n            else:\n                u.controlnet.load(u.model_name, force=False)\n                u.update_choices(u.model_name)\n        if u.process is not None and u.process.override is None and u.override is not None:\n            u.process.override = u.override\n\n\ndef control_run(state: str = '', # pylint: disable=keyword-arg-before-vararg\n                units: List[unit.Unit] = [], inputs: List[Image.Image] = [], inits: List[Image.Image] = [], mask: Image.Image = None, unit_type: str = None, is_generator: bool = True,\n                input_type: int = 0,\n                prompt: str = '', negative_prompt: str = '', styles: List[str] = [],\n                steps: int = 20, sampler_index: int = None,\n                seed: int = -1, subseed: int = -1, subseed_strength: float = 0, seed_resize_from_h: int = -1, seed_resize_from_w: int = -1,\n                guidance_name: str = 'Default', guidance_scale: float = 6.0, guidance_rescale: float = 0.0, guidance_start: float = 0.0, guidance_stop: float = 1.0,\n                cfg_scale: float = 6.0, clip_skip: float = 1.0, image_cfg_scale: float = 6.0, diffusers_guidance_rescale: float = 0.7, pag_scale: float = 0.0, pag_adaptive: float = 0.5, cfg_end: float = 1.0,\n                vae_type: str = 'Full', tiling: bool = False, hidiffusion: bool = False,\n                detailer_enabled: bool = False, detailer_prompt: str = '', detailer_negative: str = '', detailer_steps: int = 10, detailer_strength: float = 0.3, detailer_resolution: int = 1024,\n                hdr_mode: int = 0, hdr_brightness: float = 0, hdr_color: float = 0, hdr_sharpen: float = 0, hdr_clamp: bool = False, hdr_boundary: float = 4.0, hdr_threshold: float = 0.95,\n                hdr_maximize: bool = False, hdr_max_center: float = 0.6, hdr_max_boundary: float = 1.0, hdr_color_picker: str = None, hdr_tint_ratio: float = 0,\n                resize_mode_before: int = 0, resize_name_before: str = 'None', resize_context_before: str = 'None', width_before: int = 512, height_before: int = 512, scale_by_before: float = 1.0, selected_scale_tab_before: int = 0,\n                resize_mode_after: int = 0, resize_name_after: str = 'None', resize_context_after: str = 'None', width_after: int = 0, height_after: int = 0, scale_by_after: float = 1.0, selected_scale_tab_after: int = 0,\n                resize_mode_mask: int = 0, resize_name_mask: str = 'None', resize_context_mask: str = 'None', width_mask: int = 0, height_mask: int = 0, scale_by_mask: float = 1.0, selected_scale_tab_mask: int = 0,\n                denoising_strength: float = 0.3, batch_count: int = 1, batch_size: int = 1,\n                enable_hr: bool = False, hr_sampler_index: int = None, hr_denoising_strength: float = 0.0, hr_resize_mode: int = 0, hr_resize_context: str = 'None', hr_upscaler: str = None, hr_force: bool = False, hr_second_pass_steps: int = 20,\n                hr_scale: float = 1.0, hr_resize_x: int = 0, hr_resize_y: int = 0, refiner_steps: int = 5, refiner_start: float = 0.0, refiner_prompt: str = '', refiner_negative: str = '',\n                video_skip_frames: int = 0, video_type: str = 'None', video_duration: float = 2.0, video_loop: bool = False, video_pad: int = 0, video_interpolate: int = 0,\n                extra: dict = {},\n                override_script_name: str = None,\n                override_script_args = [],\n                *input_script_args,\n        ):\n    global pipe, original_pipeline # pylint: disable=global-statement\n    if 'refine' in state:\n        enable_hr = True\n\n    unit.current = units\n    debug_log(f'Control: type={unit_type} input={inputs} init={inits} type={input_type}')\n    init_units(units)\n    if inputs is None or (type(inputs) is list and len(inputs) == 0):\n        inputs = [None]\n    output_images: List[Image.Image] = [] # output images\n    processed_image: Image.Image = None # last processed image\n    if mask is not None and input_type == 0:\n        input_type = 1 # inpaint always requires control_image\n\n    if sampler_index is None:\n        shared.log.warning('Sampler: invalid')\n        sampler_index = 0\n    if hr_sampler_index is None:\n        hr_sampler_index = sampler_index\n    if isinstance(extra, list):\n        extra = create_override_settings_dict(extra)\n\n    p = StableDiffusionProcessingControl(\n        prompt = prompt,\n        negative_prompt = negative_prompt,\n        styles = styles,\n        steps = steps,\n        n_iter = batch_count,\n        batch_size = batch_size,\n        sampler_name = processing.get_sampler_name(sampler_index),\n        seed = seed,\n        subseed = subseed,\n        subseed_strength = subseed_strength,\n        seed_resize_from_h = seed_resize_from_h,\n        seed_resize_from_w = seed_resize_from_w,\n        denoising_strength = denoising_strength,\n        # modular guidance\n        guidance_name = guidance_name,\n        guidance_scale = guidance_scale,\n        guidance_rescale = guidance_rescale,\n        guidance_start = guidance_start,\n        guidance_stop = guidance_stop,\n        # legacy guidance\n        cfg_scale = cfg_scale,\n        cfg_end = cfg_end,\n        clip_skip = clip_skip,\n        image_cfg_scale = image_cfg_scale,\n        diffusers_guidance_rescale = diffusers_guidance_rescale,\n        pag_scale = pag_scale,\n        pag_adaptive = pag_adaptive,\n        # advanced\n        vae_type = vae_type,\n        tiling = tiling,\n        hidiffusion = hidiffusion,\n        # resize\n        width = width_before,\n        height = height_before,\n        width_before = width_before,\n        width_after = width_after,\n        width_mask = width_mask,\n        height_before = height_before,\n        height_after = height_after,\n        height_mask = height_mask,\n        resize_name_before = resize_name_before,\n        resize_name_after = resize_name_after,\n        resize_name_mask = resize_name_mask,\n        resize_mode_before = resize_mode_before if resize_name_before != 'None' and inputs is not None and len(inputs) > 0 else 0,\n        resize_mode_after = resize_mode_after if resize_name_after != 'None' else 0,\n        resize_mode_mask = resize_mode_mask if resize_name_mask != 'None' else 0,\n        resize_context_before = resize_context_before,\n        resize_context_after = resize_context_after,\n        resize_context_mask = resize_context_mask,\n        selected_scale_tab_before = selected_scale_tab_before,\n        selected_scale_tab_after = selected_scale_tab_after,\n        selected_scale_tab_mask = selected_scale_tab_mask,\n        scale_by_before = scale_by_before,\n        scale_by_after = scale_by_after,\n        scale_by_mask = scale_by_mask,\n        # hires\n        enable_hr = enable_hr,\n        hr_sampler_name = processing.get_sampler_name(hr_sampler_index),\n        hr_denoising_strength = hr_denoising_strength,\n        hr_resize_mode = hr_resize_mode if enable_hr else 0,\n        hr_resize_context = hr_resize_context if enable_hr else 'None',\n        hr_upscaler = hr_upscaler if enable_hr else None,\n        hr_force = hr_force,\n        hr_second_pass_steps = hr_second_pass_steps if enable_hr else 0,\n        hr_scale = hr_scale if enable_hr else 1.0,\n        hr_resize_x = hr_resize_x if enable_hr else 0,\n        hr_resize_y = hr_resize_y if enable_hr else 0,\n        # refiner\n        refiner_steps = refiner_steps,\n        refiner_start = refiner_start,\n        refiner_prompt = refiner_prompt,\n        refiner_negative = refiner_negative,\n        # detailer\n        detailer_enabled = detailer_enabled,\n        detailer_prompt = detailer_prompt,\n        detailer_negative = detailer_negative,\n        detailer_steps = detailer_steps,\n        detailer_strength = detailer_strength,\n        detailer_resolution = detailer_resolution,\n        # inpaint\n        inpaint_full_res = masking.opts.mask_only,\n        inpainting_mask_invert = 1 if masking.opts.invert else 0,\n        # hdr\n        hdr_mode=hdr_mode, hdr_brightness=hdr_brightness, hdr_color=hdr_color, hdr_sharpen=hdr_sharpen, hdr_clamp=hdr_clamp,\n        hdr_boundary=hdr_boundary, hdr_threshold=hdr_threshold, hdr_maximize=hdr_maximize, hdr_max_center=hdr_max_center, hdr_max_boundary=hdr_max_boundary, hdr_color_picker=hdr_color_picker, hdr_tint_ratio=hdr_tint_ratio,\n        # path\n        outpath_samples=resolve_output_path(shared.opts.outdir_samples, shared.opts.outdir_control_samples),\n        outpath_grids=resolve_output_path(shared.opts.outdir_grids, shared.opts.outdir_control_grids),\n        # overrides\n        override_settings=extra\n    )\n\n    p.state = state\n    p.is_tile = False\n    p.init_control = inits or []\n    p.orig_init_images = inputs\n\n    # TODO modernui: monkey-patch for missing tabs.select event\n    if p.selected_scale_tab_before == 0 and p.resize_name_before != 'None' and p.scale_by_before != 1 and inputs is not None and len(inputs) > 0:\n        shared.log.debug('Control: override resize mode=before')\n        p.selected_scale_tab_before = 1\n    if p.selected_scale_tab_after == 0 and p.resize_name_after != 'None' and p.scale_by_after != 1:\n        shared.log.debug('Control: override resize mode=after')\n        p.selected_scale_tab_after = 1\n    if p.selected_scale_tab_mask == 0 and p.resize_name_mask != 'None' and p.scale_by_mask != 1:\n        shared.log.debug('Control: override resize mode=mask')\n        p.selected_scale_tab_mask = 1\n\n    # hires/refine defined outside of main init\n    vae_scale_factor = sd_vae.get_vae_scale_factor()\n    if p.enable_hr and (p.hr_resize_x == 0 or p.hr_resize_y == 0):\n        p.hr_upscale_to_x, p.hr_upscale_to_y = int(vae_scale_factor * int(p.width_before * p.hr_scale / vae_scale_factor)), int(vae_scale_factor * int(p.height_before * p.hr_scale / vae_scale_factor))\n    elif p.enable_hr and (p.hr_upscale_to_x == 0 or p.hr_upscale_to_y == 0):\n        p.hr_upscale_to_x, p.hr_upscale_to_y = 8 * int(p.hr_resize_x / vae_scale_factor), int(vae_scale_factor * int(p.hr_resize_y / vae_scale_factor))\n\n    global p_extra_args # pylint: disable=global-statement\n    for k, v in p_extra_args.items():\n        setattr(p, k, v)\n    p_extra_args = {}\n\n    if shared.sd_model is None:\n        shared.log.warning('Aborted: op=control model not loaded')\n        return [], '', '', 'Error: model not loaded'\n\n    unit_type = unit_type.strip().lower() if unit_type is not None else ''\n    active_process, active_model, active_strength, active_start, active_end, active_units = check_active(p, unit_type, units)\n    has_models, selected_models, control_conditioning, control_guidance_start, control_guidance_end = check_enabled(p, unit_type, units, active_model, active_strength, active_start, active_end)\n\n    image_txt = ''\n    info_txt = []\n\n    p.is_tile = p.is_tile and has_models\n    if is_unified_model():\n        p.init_images = inputs\n\n    pipe = set_pipe(p, has_models, unit_type, selected_models, active_model, active_strength, active_units, control_conditioning, control_guidance_start, control_guidance_end, inits, inputs)\n    debug_log(f'Control pipeline: class={pipe.__class__.__name__} args={vars(p)}')\n    status = True\n    frame = None\n    video = None\n    output_filename = None\n    index = 0\n    frames = 0\n    blended_image = None\n\n    # set pipeline\n    if pipe is None:\n        return [], '', '', 'Pipeline not set'\n    elif pipe.__class__.__name__ != shared.sd_model.__class__.__name__:\n        original_pipeline = shared.sd_model\n        shared.sd_model = pipe\n        sd_models.move_model(shared.sd_model, shared.device)\n        debug_log(f'Control device={devices.device} dtype={devices.dtype}')\n        sd_models.copy_diffuser_options(shared.sd_model, original_pipeline) # copy options from original pipeline\n        sd_models.set_diffuser_options(shared.sd_model)\n    else:\n        original_pipeline = None\n\n    try:\n        with devices.inference_context():\n            if isinstance(inputs, str) and os.path.exists(inputs): # only video, the rest is a list\n                if input_type == 2: # separate init image\n                    if isinstance(inits, str) and inits != inputs:\n                        shared.log.warning('Control: separate init video not support for video input')\n                        input_type = 1\n                try:\n                    video = cv2.VideoCapture(inputs)\n                    if not video.isOpened():\n                        if is_generator:\n                            yield terminate(f'Video open failed: path={inputs}')\n                        return [], '', '', 'Error: video open failed'\n                    frames = int(video.get(cv2.CAP_PROP_FRAME_COUNT))\n                    fps = int(video.get(cv2.CAP_PROP_FPS))\n                    w, h = int(video.get(cv2.CAP_PROP_FRAME_WIDTH)), int(video.get(cv2.CAP_PROP_FRAME_HEIGHT))\n                    codec = util.decode_fourcc(video.get(cv2.CAP_PROP_FOURCC))\n                    status, frame = video.read()\n                    if status:\n                        shared.state.frame_count = 1 + frames // (video_skip_frames + 1)\n                        frame = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)\n                    shared.log.debug(f'Control: input video: path={inputs} frames={frames} fps={fps} size={w}x{h} codec={codec}')\n                except Exception as e:\n                    if is_generator:\n                        yield terminate(f'Video open failed: path={inputs} {e}')\n                    return [], '', '', 'Error: video open failed'\n\n            while status:\n                processed_image = None\n                if frame is not None:\n                    inputs = [Image.fromarray(frame)] # cv2 to pil\n                for i, input_image in enumerate(inputs):\n                    if input_image is not None:\n                        p.ops.append('img2img')\n                    if pipe is None: # pipe may have been reset externally\n                        pipe = set_pipe(p, has_models, unit_type, selected_models, active_model, active_strength, control_conditioning, control_guidance_start, control_guidance_end, inits)\n                        debug_log(f'Control pipeline reinit: class={pipe.__class__.__name__}')\n                    pipe.restore_pipeline = restore_pipeline\n                    shared.sd_model.restore_pipeline = restore_pipeline\n                    debug_log(f'Control Control image: {i + 1} of {len(inputs)}')\n                    if shared.state.skipped:\n                        shared.state.skipped = False\n                        continue\n                    if shared.state.interrupted:\n                        shared.state.interrupted = False\n                        if is_generator:\n                            yield terminate('Interrupted')\n                        return [], '', '', 'Interrupted'\n                    # get input\n                    if isinstance(input_image, str) and os.path.exists(input_image):\n                        try:\n                            input_image = Image.open(input_image)\n                        except Exception as e:\n                            shared.log.error(f'Control: image open failed: path={input_image} type=control error={e}')\n                            continue\n                    # match init input\n                    if input_type == 1:\n                        debug_log('Control Init image: same as control')\n                        init_image = input_image\n                    elif inits is None:\n                        debug_log('Control Init image: none')\n                        init_image = None\n                    elif isinstance(inits[i], str):\n                        debug_log(f'Control: init image: {inits[i]}')\n                        try:\n                            init_image = Image.open(inits[i])\n                        except Exception as e:\n                            shared.log.error(f'Control: image open failed: path={inits[i]} type=init error={e}')\n                            continue\n                    else:\n                        debug_log(f'Control Init image: {i % len(inits) + 1} of {len(inits)}')\n                        init_image = inits[i % len(inits)]\n                    if video is not None and index % (video_skip_frames + 1) != 0:\n                        index += 1\n                        continue\n                    index += 1\n\n                    processed_image, blended_image = preprocess_image(p, pipe, input_image, init_image, mask, input_type, unit_type, active_process, active_model, selected_models, has_models)\n                    if is_generator:\n                        yield (None, blended_image, '') # result is control_output, proces_output\n\n                    # final check\n                    if has_models:\n                        if shared.sd_model.__class__.__name__ not in unified_models:\n                            if unit_type in ['controlnet', 't2i adapter', 'lite', 'xs'] \\\n                                and p.task_args.get('image', None) is None \\\n                                and p.task_args.get('control_image', None) is None \\\n                                and getattr(p, 'init_images', None) is None \\\n                                and getattr(p, 'image', None) is None:\n                                if is_generator:\n                                    shared.log.debug(f'Control args: {p.task_args}')\n                                    yield terminate(f'Mode={p.extra_generation_params.get(\"Control type\", None)} input image is none')\n                                return [], '', '', 'Error: Input image is none'\n                        if unit_type == 'lite':\n                            instance.apply(selected_models, processed_image, control_conditioning)\n\n                    # what are we doing?\n                    if 'control' in p.ops:\n                        p.outpath_samples = resolve_output_path(shared.opts.outdir_samples, shared.opts.outdir_control_samples)\n                    elif 'img2img' in p.ops:\n                        p.outpath_samples = resolve_output_path(shared.opts.outdir_samples, shared.opts.outdir_img2img_samples)\n                    elif 'txt2img' in p.ops:\n                        p.outpath_samples = resolve_output_path(shared.opts.outdir_samples, shared.opts.outdir_txt2img_samples)\n                    else: # fallback to txt2img\n                        p.outpath_samples = resolve_output_path(shared.opts.outdir_samples, shared.opts.outdir_txt2img_samples)\n\n                    # pipeline\n                    output = None\n                    script_run = False\n                    if pipe is not None: # run new pipeline\n                        debug_log(f'Control exec pipeline: task={sd_models.get_diffusers_task(pipe)} class={pipe.__class__}')\n                        if sd_models.get_diffusers_task(pipe) != sd_models.DiffusersTaskType.TEXT_2_IMAGE: # force vae back to gpu if not in txt2img mode\n                            sd_models.move_model(pipe.vae, devices.device)\n\n                        # init scripts\n                        p.scripts = scripts_manager.scripts_control\n                        p.script_args = input_script_args or []\n                        if len(p.script_args) == 0:\n                            if not p.scripts:\n                                p.scripts.initialize_scripts(False)\n                            p.script_args = script.init_default_script_args(p.scripts)\n\n                        # init override scripts\n                        if override_script_name and override_script_args and len(override_script_name) > 0:\n                            selectable_scripts, selectable_script_idx = script.get_selectable_script(override_script_name, p.scripts)\n                            if selectable_scripts:\n                                for idx in range(len(override_script_args)):\n                                    p.script_args[selectable_scripts.args_from + idx] = override_script_args[idx]\n                                p.script_args[0] = selectable_script_idx + 1\n\n                        # actual processing\n                        processed: processing.Processed = None\n                        if p.is_tile:\n                            processed: processing.Processed = tile.run_tiling(p, input_image)\n                        if processed is None and p.scripts is not None:\n                            processed = p.scripts.run(p, *p.script_args)\n                        if processed is None:\n                            processed: processing.Processed = processing.process_images(p) # run actual pipeline\n                        else:\n                            script_run = True\n\n                        # postprocessing\n                        if p.scripts is not None:\n                            processed = p.scripts.after(p, processed, *p.script_args)\n                        output = None\n                        if processed is not None and processed.images is not None:\n                            output = processed.images\n                            info_txt = [processed.infotext(p, i) for i in range(len(output))]\n\n                        # output = pipe(**vars(p)).images # alternative direct pipe exec call\n                    else: # blend all processed images and return\n                        output = processed_image\n\n                    # outputs\n                    output = output or []\n                    for _i, output_image in enumerate(output):\n                        if output_image is not None:\n                            output_images.append(output_image)\n                            if shared.opts.include_mask and not script_run:\n                                if processed_image is not None and isinstance(processed_image, Image.Image):\n                                    output_images.append(processed_image)\n\n                            if is_generator and frame is not None and video is not None:\n                                image_txt = f'{output_image.width}x{output_image.height}' if output_image is not None else 'None'\n                                msg = f'Control output | {index} of {frames} skip {video_skip_frames} | Frame {image_txt}'\n                                yield (output_image, blended_image, msg) # result is control_output, proces_output\n\n                if video is not None and frame is not None:\n                    status, frame = video.read()\n                    if status:\n                        frame = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)\n                    debug_log(f'Control: video frame={index} frames={frames} status={status} skip={index % (video_skip_frames + 1)} progress={index/frames:.2f}')\n                else:\n                    status = False\n\n            if video is not None:\n                video.release()\n\n            debug_log(f'Control: pipeline units={len(active_model)} process={len(active_process)} outputs={len(output_images)}')\n    except Exception as e:\n        shared.log.error(f'Control: type={unit_type} units={len(active_model)} {e}')\n        errors.display(e, 'Control')\n\n    if len(output_images) == 0:\n        output_images = None\n        image_txt = '| Images None'\n    else:\n        image_txt = ''\n        p.init_images = output_images # may be used for hires\n\n    if video_type != 'None' and isinstance(output_images, list) and 'video' in p.ops:\n        p.do_not_save_grid = True # pylint: disable=attribute-defined-outside-init\n        output_filename = images.save_video(p, filename=None, images=output_images, video_type=video_type, duration=video_duration, loop=video_loop, pad=video_pad, interpolate=video_interpolate, sync=True)\n        if shared.opts.gradio_skip_video:\n            output_filename = ''\n        image_txt = f'| Frames {len(output_images)} | Size {output_images[0].width}x{output_images[0].height}'\n\n    p.close()\n    restore_pipeline()\n    debug_log(f'Ready: {image_txt}')\n\n    html_txt = f'<p>Ready {image_txt}</p>' if image_txt != '' else ''\n    if len(info_txt) > 0:\n        html_txt = html_txt + infotext_to_html(info_txt[0])\n    if is_generator:\n        jobid = shared.state.begin('UI')\n        yield (output_images, blended_image, html_txt, output_filename)\n        shared.state.end(jobid)\n    return (output_images, blended_image, html_txt, output_filename)\n"
  },
  {
    "path": "modules/control/test.py",
    "content": "import math\nfrom PIL import Image, ImageChops, ImageDraw\nfrom modules import shared, errors, images\n\n\nFONT_SIZE=48\n\n\ndef test_processors(image):\n    from modules.control import processors\n    if image is None:\n        shared.log.error('Image not loaded')\n        return None, None, None\n    res = []\n    for processor_id in processors.list_models():\n        if shared.state.interrupted:\n            continue\n        shared.log.info(f'Testing processor: {processor_id}')\n        processor = processors.Processor(processor_id)\n        output = image\n        if processor is None:\n            shared.log.error(f'Processor load failed: id=\"{processor_id}\"')\n            processor_id = f'{processor_id} error'\n        else:\n            output = processor(image)\n            if shared.opts.control_unload_processor:\n                processor.reset()\n        if output.size != image.size:\n            output = output.resize(image.size, Image.Resampling.LANCZOS)\n        if output.mode != image.mode:\n            output = output.convert(image.mode)\n        shared.log.debug(f'Testing processor: input={image} mode={image.mode} output={output} mode={output.mode}')\n        diff = ImageChops.difference(image, output)\n        if not diff.getbbox():\n            processor_id = f'{processor_id} null'\n        draw = ImageDraw.Draw(output)\n        font = images.get_font(FONT_SIZE)\n        draw.text((10, 10), processor_id, (0,0,0), font=font)\n        draw.text((8, 8), processor_id, (255,255,255), font=font)\n        res.append(output)\n        yield output, None, None, res\n    rows = round(math.sqrt(len(res)))\n    cols = math.ceil(len(res) / rows)\n    w, h = 256, 256\n    size = (cols * w + cols, rows * h + rows)\n    grid = Image.new('RGB', size=size, color='black')\n    shared.log.info(f'Test processors: images={len(res)} grid={grid}')\n    for i, image in enumerate(res):\n        x = (i % cols * w) + (i % cols)\n        y = (i // cols * h) + (i // cols)\n        thumb = image.copy().convert('RGB')\n        thumb.thumbnail((w, h), Image.Resampling.HAMMING)\n        grid.paste(thumb, box=(x, y))\n    yield None, grid, None, res\n    return None, grid, None, res # preview_process, output_image, output_video, output_gallery\n\n\ndef test_controlnets(prompt, negative, image):\n    from modules import devices, sd_models\n    from modules.control.units import controlnet\n    if image is None:\n        shared.log.error('Image not loaded')\n        return None, None, None\n    res = []\n    for model_id in controlnet.list_models():\n        if model_id is None:\n            model_id = 'None'\n        if shared.state.interrupted:\n            continue\n        output = image\n        if model_id != 'None':\n            controlnet = controlnet.ControlNet(model_id=model_id, device=devices.device, dtype=devices.dtype)\n            if controlnet is None:\n                shared.log.error(f'ControlNet load failed: id=\"{model_id}\"')\n                continue\n            shared.log.info(f'Testing ControlNet: {model_id}')\n            pipe = controlnet.ControlNetPipeline(controlnet=controlnet.model, pipeline=shared.sd_model)\n            pipe.pipeline.to(device=devices.device, dtype=devices.dtype)\n            sd_models.set_diffuser_options(pipe)\n            try:\n                output = pipe.pipeline(prompt=prompt, negative_prompt=negative, image=image, num_inference_steps=10, output_type='pil')\n                output = output.images[0]\n            except Exception as e:\n                errors.display(e, f'ControlNet {model_id} inference')\n                model_id = f'{model_id} error'\n            pipe.restore()\n        draw = ImageDraw.Draw(output)\n        font = images.get_font(FONT_SIZE)\n        draw.text((10, 10), model_id, (0,0,0), font=font)\n        draw.text((8, 8), model_id, (255,255,255), font=font)\n        res.append(output)\n        yield output, None, None, res\n    rows = round(math.sqrt(len(res)))\n    cols = math.ceil(len(res) / rows)\n    w, h = 256, 256\n    size = (cols * w + cols, rows * h + rows)\n    grid = Image.new('RGB', size=size, color='black')\n    shared.log.info(f'Test ControlNets: images={len(res)} grid={grid}')\n    for i, image in enumerate(res):\n        x = (i % cols * w) + (i % cols)\n        y = (i // cols * h) + (i // cols)\n        thumb = image.copy().convert('RGB')\n        thumb.thumbnail((w, h), Image.Resampling.HAMMING)\n        grid.paste(thumb, box=(x, y))\n    yield None, grid, None, res\n    return None, grid, None, res # preview_process, output_image, output_video, output_gallery\n\n\ndef test_adapters(prompt, negative, image):\n    from modules import devices, sd_models\n    from modules.control.units import t2iadapter\n    if image is None:\n        shared.log.error('Image not loaded')\n        return None, None, None\n    res = []\n    for model_id in t2iadapter.list_models():\n        if model_id is None:\n            model_id = 'None'\n        if shared.state.interrupted:\n            continue\n        output = image.copy()\n        if model_id != 'None':\n            adapter = t2iadapter.Adapter(model_id=model_id, device=devices.device, dtype=devices.dtype)\n            if adapter is None:\n                shared.log.error(f'Adapter load failed: id=\"{model_id}\"')\n                continue\n            shared.log.info(f'Testing Adapter: {model_id}')\n            pipe = t2iadapter.AdapterPipeline(adapter=adapter.model, pipeline=shared.sd_model)\n            pipe.pipeline.to(device=devices.device, dtype=devices.dtype)\n            sd_models.set_diffuser_options(pipe)\n            image = image.convert('L') if 'Canny' in model_id or 'Sketch' in model_id else image.convert('RGB')\n            try:\n                output = pipe.pipeline(prompt=prompt, negative_prompt=negative, image=image, num_inference_steps=10, output_type='pil')\n                output = output.images[0]\n            except Exception as e:\n                errors.display(e, f'Adapter {model_id} inference')\n                model_id = f'{model_id} error'\n            pipe.restore()\n        draw = ImageDraw.Draw(output)\n        font = images.get_font(FONT_SIZE)\n        draw.text((10, 10), model_id, (0,0,0), font=font)\n        draw.text((8, 8), model_id, (255,255,255), font=font)\n        res.append(output)\n        yield output, None, None, res\n    rows = round(math.sqrt(len(res)))\n    cols = math.ceil(len(res) / rows)\n    w, h = 256, 256\n    size = (cols * w + cols, rows * h + rows)\n    grid = Image.new('RGB', size=size, color='black')\n    shared.log.info(f'Test Adapters: images={len(res)} grid={grid}')\n    for i, image in enumerate(res):\n        x = (i % cols * w) + (i % cols)\n        y = (i // cols * h) + (i // cols)\n        thumb = image.copy().convert('RGB')\n        thumb.thumbnail((w, h), Image.Resampling.HAMMING)\n        grid.paste(thumb, box=(x, y))\n    yield None, grid, None, res\n    return None, grid, None, res # preview_process, output_image, output_video, output_gallery\n\n\ndef test_xs(prompt, negative, image):\n    from modules import devices, sd_models\n    from modules.control.units import xs\n    if image is None:\n        shared.log.error('Image not loaded')\n        return None, None, None\n    res = []\n    for model_id in xs.list_models():\n        if model_id is None:\n            model_id = 'None'\n        if shared.state.interrupted:\n            continue\n        output = image\n        if model_id != 'None':\n            xs = xs.ControlNetXS(model_id=model_id, device=devices.device, dtype=devices.dtype)\n            if xs is None:\n                shared.log.error(f'ControlNet-XS load failed: id=\"{model_id}\"')\n                continue\n            shared.log.info(f'Testing ControlNet-XS: {model_id}')\n            pipe = xs.ControlNetXSPipeline(controlnet=xs.model, pipeline=shared.sd_model)\n            pipe.pipeline.to(device=devices.device, dtype=devices.dtype)\n            sd_models.set_diffuser_options(pipe)\n            try:\n                output = pipe.pipeline(prompt=prompt, negative_prompt=negative, image=image, num_inference_steps=10, output_type='pil')\n                output = output.images[0]\n            except Exception as e:\n                errors.display(e, f'ControlNet-XS {model_id} inference')\n                model_id = f'{model_id} error'\n            pipe.restore()\n        draw = ImageDraw.Draw(output)\n        font = images.get_font(FONT_SIZE)\n        draw.text((10, 10), model_id, (0,0,0), font=font)\n        draw.text((8, 8), model_id, (255,255,255), font=font)\n        res.append(output)\n        yield output, None, None, res\n    rows = round(math.sqrt(len(res)))\n    cols = math.ceil(len(res) / rows)\n    w, h = 256, 256\n    size = (cols * w + cols, rows * h + rows)\n    grid = Image.new('RGB', size=size, color='black')\n    shared.log.info(f'Test ControlNet-XS: images={len(res)} grid={grid}')\n    for i, image in enumerate(res):\n        x = (i % cols * w) + (i % cols)\n        y = (i // cols * h) + (i // cols)\n        thumb = image.copy().convert('RGB')\n        thumb.thumbnail((w, h), Image.Resampling.HAMMING)\n        grid.paste(thumb, box=(x, y))\n    yield None, grid, None, res\n    return None, grid, None, res # preview_process, output_image, output_video, output_gallery\n\n\ndef test_lite(prompt, negative, image):\n    from modules import devices, sd_models\n    from modules.control.units import lite\n    if image is None:\n        shared.log.error('Image not loaded')\n        return None, None, None\n    res = []\n    for model_id in lite.list_models():\n        if model_id is None:\n            model_id = 'None'\n        if shared.state.interrupted:\n            continue\n        output = image\n        if model_id != 'None':\n            lite = lite.ControlLLLite(model_id=model_id, device=devices.device, dtype=devices.dtype)\n            if lite is None:\n                shared.log.error(f'Control-LLite load failed: id=\"{model_id}\"')\n                continue\n            shared.log.info(f'Testing ControlNet-XS: {model_id}')\n            pipe = lite.ControlLLitePipeline(pipeline=shared.sd_model)\n            pipe.apply(controlnet=lite.model, image=image, conditioning=1.0)\n            pipe.pipeline.to(device=devices.device, dtype=devices.dtype)\n            sd_models.set_diffuser_options(pipe)\n            try:\n                output = pipe.pipeline(prompt=prompt, negative_prompt=negative, image=image, num_inference_steps=10, output_type='pil')\n                output = output.images[0]\n            except Exception as e:\n                errors.display(e, f'ControlNet-XS {model_id} inference')\n                model_id = f'{model_id} error'\n            pipe.restore()\n        draw = ImageDraw.Draw(output)\n        font = images.get_font(FONT_SIZE)\n        draw.text((10, 10), model_id, (0,0,0), font=font)\n        draw.text((8, 8), model_id, (255,255,255), font=font)\n        res.append(output)\n        yield output, None, None, res\n    rows = round(math.sqrt(len(res)))\n    cols = math.ceil(len(res) / rows)\n    w, h = 256, 256\n    size = (cols * w + cols, rows * h + rows)\n    grid = Image.new('RGB', size=size, color='black')\n    shared.log.info(f'Test ControlNet-XS: images={len(res)} grid={grid}')\n    for i, image in enumerate(res):\n        x = (i % cols * w) + (i % cols)\n        y = (i // cols * h) + (i // cols)\n        thumb = image.copy().convert('RGB')\n        thumb.thumbnail((w, h), Image.Resampling.HAMMING)\n        grid.paste(thumb, box=(x, y))\n    yield None, grid, None, res\n    return None, grid, None, res # preview_process, output_image, output_video, output_gallery\n"
  },
  {
    "path": "modules/control/tile.py",
    "content": "import time\nfrom PIL import Image\nfrom modules import shared, processing, images, sd_models, sd_vae\n\n\ndef get_tile(image: Image.Image, x: int, y: int, sx: int, sy: int) -> Image.Image:\n    return image.crop((\n        (x + 0) * image.width // sx,\n        (y + 0) * image.height // sy,\n        (x + 1) * image.width // sx,\n        (y + 1) * image.height // sy\n    ))\n\n\ndef set_tile(image: Image.Image, x: int, y: int, tiled: Image.Image):\n    image.paste(tiled, (x * tiled.width, y * tiled.height))\n    return image\n\n\ndef run_tiling(p: processing.StableDiffusionProcessing, input_image: Image.Image) -> processing.Processed:\n    t0 = time.time()\n    # prepare images\n    sx, sy = p.control_tile.split('x')\n    sx = int(sx)\n    sy = int(sy)\n    vae_scale_factor = sd_vae.get_vae_scale_factor()\n    if sx <= 0 or sy <= 0:\n        raise ValueError('Control Tile: invalid tile size')\n    control_image = p.task_args.get('control_image', None) or p.task_args.get('image', None)\n    control_upscaled = None\n    if isinstance(control_image, list) and len(control_image) > 0:\n        w, h = vae_scale_factor * int(sx * control_image[0].width) // vae_scale_factor, vae_scale_factor * int(sy * control_image[0].height) // vae_scale_factor\n        control_upscaled = images.resize_image(resize_mode=1 if sx==sy else 5, im=control_image[0], width=w, height=h, context='add with forward')\n    init_image = p.override or input_image\n    init_upscaled = None\n    if init_image is not None:\n        w, h = vae_scale_factor * int(sx * init_image.width) // vae_scale_factor, vae_scale_factor * int(sy * init_image.height) // vae_scale_factor\n        init_upscaled = images.resize_image(resize_mode=1 if sx==sy else 5, im=init_image, width=w, height=h, context='add with forward')\n    t1 = time.time()\n    shared.log.debug(f'Control Tile: scale={sx}x{sy} resize={\"fixed\" if sx==sy else \"context\"} control={control_upscaled} init={init_upscaled} time={t1-t0:.3f}')\n\n    # stop processing from restoring pipeline on each iteration\n    orig_restore_pipeline = getattr(shared.sd_model, 'restore_pipeline', None)\n    shared.sd_model.restore_pipeline = None\n\n    # run tiling\n    for x in range(sx):\n        for y in range(sy):\n            shared.log.info(f'Control Tile: tile={x+1}-{sx}/{y+1}-{sy} target={control_upscaled}')\n            shared.sd_model = sd_models.set_diffuser_pipe(shared.sd_model, sd_models.DiffusersTaskType.IMAGE_2_IMAGE)\n            p.init_images = None\n            p.task_args['control_mode'] = p.control_mode\n            p.task_args['strength'] = p.denoising_strength\n            if init_upscaled is not None:\n                p.task_args['image'] = [get_tile(init_upscaled, x, y, sx, sy)]\n            if control_upscaled is not None:\n                p.task_args['control_image'] = [get_tile(control_upscaled, x, y, sx, sy)]\n            processed: processing.Processed = processing.process_images(p) # run actual pipeline\n            if processed is None or len(processed.images) == 0:\n                continue\n            control_upscaled = set_tile(control_upscaled, x, y, processed.images[0])\n\n    # post-process\n    p.width = control_upscaled.width\n    p.height = control_upscaled.height\n    processed.images = [control_upscaled]\n    processed.info = processed.infotext(p, 0)\n    processed.infotexts = [processed.info]\n    shared.sd_model.restore_pipeline = orig_restore_pipeline\n    if hasattr(shared.sd_model, 'restore_pipeline') and shared.sd_model.restore_pipeline is not None:\n        shared.sd_model.restore_pipeline()\n    t2 = time.time()\n    shared.log.debug(f'Control Tile: image={control_upscaled} time={t2-t0:.3f}')\n    return processed\n"
  },
  {
    "path": "modules/control/unit.py",
    "content": "from typing import Union\nfrom PIL import Image\nimport gradio as gr\nfrom installer import log\nfrom modules.control import processors\nfrom modules.control.units import controlnet\nfrom modules.control.units import xs\nfrom modules.control.units import lite\nfrom modules.control.units import t2iadapter\nfrom modules.control.units import reference # pylint: disable=unused-import\n\n\ndefault_device = None\ndefault_dtype = None\nunit_types = ['t2i adapter', 'controlnet', 'xs', 'lite', 'reference', 'ip']\ncurrent = []\n\n\nclass Unit(): # mashup of gradio controls and mapping to actual implementation classes\n    def update_choices(self, model_id=None):\n        name = model_id or self.model_name\n        if name == 'InstantX Union F1':\n            self.choices = ['canny', 'tile', 'depth', 'blur', 'pose', 'gray', 'lq']\n        elif name == 'Shakker-Labs Union F1':\n            self.choices = ['canny', 'tile', 'depth', 'blur', 'pose', 'gray', 'lq']\n        elif name == 'Xinsir Union XL':\n            self.choices = ['openpose', 'depth', 'scribble', 'canny', 'normal']\n        elif name == 'Xinsir ProMax XL':\n            self.choices = ['openpose', 'depth', 'scribble', 'canny', 'normal', 'segment', 'tile', 'repaint']\n        else:\n            self.choices = ['default']\n\n    def __str__(self):\n        return f'Unit(index={self.index} enabled={self.enabled} type=\"{self.type}\" strength={self.strength} start={self.start} end={self.end}{self.process}{self.controlnet} override={self.override})'\n\n    def __init__(self,\n                 # values\n                 index: int = None,\n                 enabled: bool = None,\n                 strength: float = None,\n                 unit_type: str = None,\n                 start: float = 0,\n                 end: float = 1,\n                 # ui bindings\n                 enabled_cb = None,\n                 reset_btn = None,\n                 process_id = None,\n                 preview_btn = None,\n                 model_id = None,\n                 model_strength = None,\n                 preview_process = None,\n                 image_upload = None,\n                 image_reuse = None,\n                 image_preview = None,\n                 control_start = None,\n                 control_end = None,\n                 control_mode = None,\n                 control_tile = None,\n                 result_txt = None,\n                 extra_controls: list = [],\n        ):\n        self.model_id = model_id\n        self.process_id = process_id\n        self.controls = [gr.Label(value=unit_type, visible=False)] # separator\n        self.index = index\n        self.enabled = enabled or False\n        self.type = unit_type\n        self.strength = strength or 1.0\n        self.model_strength = model_strength\n        self.start = start or 0\n        self.end = end or 1\n        self.start = min(self.start, self.end)\n        self.end = max(self.start, self.end)\n        self.mode = None\n        # processor always exists, adapter and controlnet are optional\n        self.model_name = None\n        self.process_name = None\n        self.process: processors.Processor = processors.Processor()\n        self.adapter: t2iadapter.Adapter = None\n        self.controlnet: Union[controlnet.ControlNet, xs.ControlNetXS] = None\n        # map to input image\n        self.override: Image = None\n        # global settings but passed per-unit\n        self.factor = 1.0\n        self.guess = False\n        # reference settings\n        self.attention = 'Attention'\n        self.fidelity = 0.5\n        self.query_weight = 1.0\n        self.adain_weight = 1.0\n        # control mode\n        self.choices = ['default']\n        # control tile\n        self.tile = '1x1'\n\n        def enabled_change(val):\n            self.enabled = val\n\n        def strength_change(val):\n            self.strength = val\n\n        def control_change(start, end):\n            self.start = min(start, end)\n            self.end = max(start, end)\n\n        def control_mode_change(mode):\n            self.mode = self.choices.index(mode) if mode is not None and mode in self.choices else 0\n\n        def control_tile_change(tile):\n            self.tile = tile\n\n        def control_choices(model_id):\n            self.update_choices(model_id)\n            mode_visible = 'union' in model_id.lower() or 'promax' in model_id.lower()\n            tile_visible = 'union' in model_id.lower() or 'promax' in model_id.lower() or 'tile' in model_id.lower()\n            return [gr.update(visible=mode_visible, choices=self.choices), gr.update(visible=tile_visible)]\n\n        def adapter_extra(c1):\n            self.factor = c1\n\n        def controlnet_extra(c1):\n            self.guess = c1\n\n        def controlnetxs_extra(_c1):\n            pass # gr.component passed directly to load method\n\n        def reference_extra(c1, c2, c3, c4):\n            self.attention = c1\n            self.fidelity = c2\n            self.query_weight = c3\n            self.adain_weight = c4\n\n        def upload_image(image_file):\n            if image_file is None:\n                self.process.override = None\n                self.override = None\n                log.debug('Control image: clear')\n                return gr.update(value=None)\n            try:\n                self.process.override = Image.open(image_file.name)\n                self.override = self.process.override\n                log.debug(f'Control image: upload={self.process.override} path=\"{image_file.name}\"')\n                return gr.update(visible=self.process.override is not None, value=self.process.override)\n            except Exception as e:\n                log.error(f'Control image: upload path=\"{image_file.name}\" error={e}')\n                return gr.update(visible=False, value=None)\n\n        def reuse_image(image):\n            log.debug(f'Control process reuse image: {image}')\n            self.process.override = image\n            self.override = self.process.override\n            return gr.update(visible=self.process.override is not None, value=self.process.override)\n\n        def set_image(image):\n            self.process.override = image\n            self.override = image\n            return gr.update(visible=image is not None)\n\n        # actual init\n        if self.type == 't2i adapter':\n            self.adapter = t2iadapter.Adapter(device=default_device, dtype=default_dtype)\n        elif self.type == 'controlnet':\n            self.controlnet = controlnet.ControlNet(device=default_device, dtype=default_dtype)\n        elif self.type == 'xs':\n            self.controlnet = xs.ControlNetXS(device=default_device, dtype=default_dtype)\n        elif self.type == 'lite':\n            self.controlnet = lite.ControlLLLite(device=default_device, dtype=default_dtype)\n        elif self.type == 'reference':\n            pass\n        elif self.type == 'ip':\n            pass\n        else:\n            log.error(f'Control unknown type: unit={unit_type}')\n            return\n\n        # bind ui controls to properties if present\n        if self.type == 't2i adapter':\n            if model_id is not None:\n                if isinstance(model_id, str):\n                    self.adapter.load(model_id)\n                else:\n                    self.controls.append(model_id)\n                    model_id.change(fn=self.adapter.load, inputs=[model_id], outputs=[result_txt], show_progress='full')\n            if extra_controls is not None and len(extra_controls) > 0:\n                extra_controls[0].change(fn=adapter_extra, inputs=extra_controls)\n        elif self.type == 'controlnet':\n            if model_id is not None:\n                if isinstance(model_id, str):\n                    self.controlnet.load(model_id)\n                else:\n                    self.controls.append(model_id)\n                    model_id.change(fn=self.controlnet.load, inputs=[model_id], outputs=[result_txt], show_progress='full')\n                    model_id.change(fn=control_choices, inputs=[model_id], outputs=[control_mode, control_tile], show_progress='hidden')\n            if extra_controls is not None and len(extra_controls) > 0:\n                extra_controls[0].change(fn=controlnet_extra, inputs=extra_controls)\n        elif self.type == 'xs':\n            if model_id is not None:\n                if isinstance(model_id, str):\n                    self.controlnet.load(model_id)\n                else:\n                    self.controls.append(model_id)\n                    model_id.change(fn=self.controlnet.load, inputs=[model_id, extra_controls[0]], outputs=[result_txt], show_progress='full')\n            if extra_controls is not None and len(extra_controls) > 0:\n                extra_controls[0].change(fn=controlnetxs_extra, inputs=extra_controls)\n        elif self.type == 'lite':\n            if model_id is not None:\n                if isinstance(model_id, str):\n                    self.controlnet.load(model_id)\n                else:\n                    self.controls.append(model_id)\n                    model_id.change(fn=self.controlnet.load, inputs=[model_id], outputs=[result_txt], show_progress='full')\n            if extra_controls is not None and len(extra_controls) > 0:\n                extra_controls[0].change(fn=controlnetxs_extra, inputs=extra_controls)\n        elif self.type == 'reference':\n            if extra_controls is not None and len(extra_controls) > 0:\n                extra_controls[0].change(fn=reference_extra, inputs=extra_controls)\n                extra_controls[1].change(fn=reference_extra, inputs=extra_controls)\n                extra_controls[2].change(fn=reference_extra, inputs=extra_controls)\n                extra_controls[3].change(fn=reference_extra, inputs=extra_controls)\n\n        if enabled_cb is not None:\n            self.controls.append(enabled_cb)\n            enabled_cb.change(fn=enabled_change, inputs=[enabled_cb])\n        if model_strength is not None:\n            self.controls.append(model_strength)\n            model_strength.change(fn=strength_change, inputs=[model_strength])\n        if process_id is not None:\n            if isinstance(process_id, str):\n                self.process.load(process_id)\n            else:\n                self.controls.append(process_id)\n                process_id.change(fn=self.process.load, inputs=[process_id], outputs=[result_txt], show_progress='full')\n        if reset_btn is not None:\n            reset_btn.click(fn=self.reset, inputs=[], outputs=[enabled_cb, model_id, process_id, model_strength])\n        if preview_btn is not None:\n            preview_btn.click(fn=self.process.preview, inputs=[], outputs=[preview_process]) # return list of images for gallery\n        if image_upload is not None:\n            image_upload.upload(fn=upload_image, inputs=[image_upload], outputs=[image_preview]) # return list of images for gallery\n        if image_reuse is not None:\n            image_reuse.click(fn=reuse_image, inputs=[preview_process], outputs=[image_preview]) # return list of images for gallery\n        if image_preview is not None:\n            self.controls.append(image_preview)\n            image_preview.change(fn=set_image, inputs=[image_preview], outputs=[image_preview])\n        if control_start is not None and control_end is not None:\n            self.controls.append(control_start)\n            self.controls.append(control_end)\n            control_start.change(fn=control_change, inputs=[control_start, control_end])\n            control_end.change(fn=control_change, inputs=[control_start, control_end])\n        if control_mode is not None:\n            self.controls.append(control_mode)\n            control_mode.change(fn=control_mode_change, inputs=[control_mode])\n        if control_tile is not None:\n            self.controls.append(control_tile)\n            control_tile.change(fn=control_tile_change, inputs=[control_tile])\n\n    def reset(self):\n        if self.process is not None:\n            self.process.reset()\n        if self.adapter is not None:\n            self.adapter.reset()\n        if self.controlnet is not None:\n            self.controlnet.reset()\n        self.override = None\n        return [True, 'None', 'None', 1.0] # reset ui values\n"
  },
  {
    "path": "modules/control/units/controlnet.py",
    "content": "import os\nimport time\nimport threading\nfrom typing import Union\nfrom diffusers import StableDiffusionPipeline, StableDiffusionXLPipeline, FluxPipeline, StableDiffusion3Pipeline, ControlNetModel\nfrom modules.control.units import detect\nfrom modules.shared import log, opts, cmd_opts, state, listdir\nfrom modules import errors, sd_models, devices, model_quant\nfrom modules.processing import StableDiffusionProcessingControl\n\n\nwhat = 'ControlNet'\ndebug = os.environ.get('SD_CONTROL_DEBUG', None) is not None\ndebug_log = log.trace if os.environ.get('SD_CONTROL_DEBUG', None) is not None else lambda *args, **kwargs: None\npredefined_sd15 = {\n    'Canny': \"lllyasviel/control_v11p_sd15_canny\",\n    'Depth': \"lllyasviel/control_v11f1p_sd15_depth\",\n    'HED': \"lllyasviel/sd-controlnet-hed\",\n    'IP2P': \"lllyasviel/control_v11e_sd15_ip2p\",\n    'LineArt': \"lllyasviel/control_v11p_sd15_lineart\",\n    'LineArt Anime': \"lllyasviel/control_v11p_sd15s2_lineart_anime\",\n    'MLDS': \"lllyasviel/control_v11p_sd15_mlsd\",\n    'NormalBae': \"lllyasviel/control_v11p_sd15_normalbae\",\n    'OpenPose': \"lllyasviel/control_v11p_sd15_openpose\",\n    'Scribble': \"lllyasviel/control_v11p_sd15_scribble\",\n    'Segment': \"lllyasviel/control_v11p_sd15_seg\",\n    'Shuffle': \"lllyasviel/control_v11e_sd15_shuffle\",\n    'SoftEdge': \"lllyasviel/control_v11p_sd15_softedge\",\n    'Tile': \"lllyasviel/control_v11f1e_sd15_tile\",\n    'Depth Anything': 'vladmandic/depth-anything',\n    'Canny FP16': 'Aptronym/SDNext/ControlNet11/controlnet11Models_canny.safetensors',\n    'Inpaint FP16': 'Aptronym/SDNext/ControlNet11/controlnet11Models_inpaint.safetensors',\n    'LineArt Anime FP16': 'Aptronym/SDNext/ControlNet11/controlnet11Models_animeline.safetensors',\n    'LineArt FP16': 'Aptronym/SDNext/ControlNet11/controlnet11Models_lineart.safetensors',\n    'MLSD FP16': 'Aptronym/SDNext/ControlNet11/controlnet11Models_mlsd.safetensors',\n    'NormalBae FP16': 'Aptronym/SDNext/ControlNet11/controlnet11Models_normal.safetensors',\n    'OpenPose FP16': 'Aptronym/SDNext/ControlNet11/controlnet11Models_openpose.safetensors',\n    'Pix2Pix FP16': 'Aptronym/SDNext/ControlNet11/controlnet11Models_pix2pix.safetensors',\n    'Scribble FP16': 'Aptronym/SDNext/ControlNet11/controlnet11Models_scribble.safetensors',\n    'Segment FP16': 'Aptronym/SDNext/ControlNet11/controlnet11Models_seg.safetensors',\n    'Shuffle FP16': 'Aptronym/SDNext/ControlNet11/controlnet11Models_shuffle.safetensors',\n    'SoftEdge FP16': 'Aptronym/SDNext/ControlNet11/controlnet11Models_softedge.safetensors',\n    'Tile FP16': 'Aptronym/SDNext/ControlNet11/controlnet11Models_tileE.safetensors',\n    'CiaraRowles TemporalNet': \"CiaraRowles/TemporalNet\",\n    'Ciaochaos Recolor': 'ioclab/control_v1p_sd15_brightness',\n    'Ciaochaos Illumination': 'ioclab/control_v1u_sd15_illumination/illumination20000.safetensors',\n}\npredefined_sdxl = {\n    'Canny Small XL': 'diffusers/controlnet-canny-sdxl-1.0-small',\n    'Canny Mid XL': 'diffusers/controlnet-canny-sdxl-1.0-mid',\n    'Canny XL': 'diffusers/controlnet-canny-sdxl-1.0',\n    'Depth Zoe XL': 'diffusers/controlnet-zoe-depth-sdxl-1.0',\n    'Depth Mid XL': 'diffusers/controlnet-depth-sdxl-1.0-mid',\n    'OpenPose XL': 'thibaud/controlnet-openpose-sdxl-1.0/bin',\n    'Xinsir Union XL': 'xinsir/controlnet-union-sdxl-1.0',\n    'Xinsir ProMax XL': 'brad-twinkl/controlnet-union-sdxl-1.0-promax',\n    'Xinsir OpenPose XL': 'xinsir/controlnet-openpose-sdxl-1.0',\n    'Xinsir Canny XL': 'xinsir/controlnet-canny-sdxl-1.0',\n    'Xinsir Depth XL': 'xinsir/controlnet-depth-sdxl-1.0',\n    'Xinsir Scribble XL': 'xinsir/controlnet-scribble-sdxl-1.0',\n    'Xinsir Anime Painter XL': 'xinsir/anime-painter',\n    'Xinsir Tile XL': 'xinsir/controlnet-tile-sdxl-1.0',\n    'NoobAI Canny XL': 'Eugeoter/noob-sdxl-controlnet-canny',\n    'NoobAI Lineart Anime XL': 'Eugeoter/noob-sdxl-controlnet-lineart_anime',\n    'NoobAI Depth XL': 'Eugeoter/noob-sdxl-controlnet-depth',\n    'NoobAI Normal XL': 'Eugeoter/noob-sdxl-controlnet-normal',\n    'NoobAI SoftEdge XL': 'Eugeoter/noob-sdxl-controlnet-softedge_hed',\n    'NoobAI OpenPose XL': 'einar77/noob-openpose',\n    'TTPlanet Tile Realistic XL': 'Yakonrus/SDXL_Controlnet_Tile_Realistic_v2',\n    # 'StabilityAI Canny R128': 'stabilityai/control-lora/control-LoRAs-rank128/control-lora-canny-rank128.safetensors',\n    # 'StabilityAI Depth R128': 'stabilityai/control-lora/control-LoRAs-rank128/control-lora-depth-rank128.safetensors',\n    # 'StabilityAI Recolor R128': 'stabilityai/control-lora/control-LoRAs-rank128/control-lora-recolor-rank128.safetensors',\n    # 'StabilityAI Sketch R128': 'stabilityai/control-lora/control-LoRAs-rank128/control-lora-sketch-rank128-metadata.safetensors',\n    # 'StabilityAI Canny R256': 'stabilityai/control-lora/control-LoRAs-rank256/control-lora-canny-rank256.safetensors',\n    # 'StabilityAI Depth R256': 'stabilityai/control-lora/control-LoRAs-rank256/control-lora-depth-rank256.safetensors',\n    # 'StabilityAI Recolor R256': 'stabilityai/control-lora/control-LoRAs-rank256/control-lora-recolor-rank256.safetensors',\n    # 'StabilityAI Sketch R256': 'stabilityai/control-lora/control-LoRAs-rank256/control-lora-sketch-rank256.safetensors',\n}\npredefined_f1 = {\n    \"InstantX Union F1\": 'InstantX/FLUX.1-dev-Controlnet-Union',\n    \"InstantX Canny F1\": 'InstantX/FLUX.1-dev-Controlnet-Canny',\n    \"JasperAI Depth F1\": 'jasperai/Flux.1-dev-Controlnet-Depth',\n    \"BlackForrestLabs Canny LoRA F1\": '/huggingface.co/black-forest-labs/FLUX.1-Canny-dev-lora/flux1-canny-dev-lora.safetensors',\n    \"BlackForrestLabs Depth LoRA F1\": '/huggingface.co/black-forest-labs/FLUX.1-Depth-dev-lora/flux1-depth-dev-lora.safetensors',\n    \"JasperAI Surface Normals F1\": 'jasperai/Flux.1-dev-Controlnet-Surface-Normals',\n    \"JasperAI Upscaler F1\": 'jasperai/Flux.1-dev-Controlnet-Upscaler',\n    \"Shakker-Labs Union F1\": 'Shakker-Labs/FLUX.1-dev-ControlNet-Union-Pro',\n    \"Shakker-Labs Pose F1\": 'Shakker-Labs/FLUX.1-dev-ControlNet-Pose',\n    \"Shakker-Labs Depth F1\": 'Shakker-Labs/FLUX.1-dev-ControlNet-Depth',\n    \"XLabs-AI Canny F1\": 'XLabs-AI/flux-controlnet-canny-diffusers',\n    \"XLabs-AI Depth F1\": 'XLabs-AI/flux-controlnet-depth-diffusers',\n    \"XLabs-AI HED F1\": 'XLabs-AI/flux-controlnet-hed-diffusers',\n    \"LibreFlux Segment F1\": 'neuralvfx/LibreFlux-ControlNet',\n}\npredefined_sd3 = {\n    \"StabilityAI Canny SD35\": 'diffusers-internal-dev/sd35-controlnet-canny-8b',\n    \"StabilityAI Depth SD35\": 'diffusers-internal-dev/sd35-controlnet-depth-8b',\n    \"StabilityAI Blur SD35\": 'diffusers-internal-dev/sd35-controlnet-blur-8b',\n    \"InstantX Canny SD35\": 'InstantX/SD3-Controlnet-Canny',\n    \"InstantX Pose SD35\": 'InstantX/SD3-Controlnet-Pose',\n    \"InstantX Depth SD35\": 'InstantX/SD3-Controlnet-Depth',\n    \"InstantX Tile SD35\": 'InstantX/SD3-Controlnet-Tile',\n    \"Alimama Inpainting SD35\": 'alimama-creative/SD3-Controlnet-Inpainting',\n    \"Alimama SoftEdge SD35\": 'alimama-creative/SD3-Controlnet-Softedge',\n}\npredefined_qwen = {\n    \"InstantX Union Qwen\": 'InstantX/Qwen-Image-ControlNet-Union',\n}\npredefined_hunyuandit = {\n    \"HunyuanDiT Canny\": 'Tencent-Hunyuan/HunyuanDiT-v1.2-ControlNet-Diffusers-Canny',\n    \"HunyuanDiT Pose\": 'Tencent-Hunyuan/HunyuanDiT-v1.2-ControlNet-Diffusers-Pose',\n    \"HunyuanDiT Depth\": 'Tencent-Hunyuan/HunyuanDiT-v1.2-ControlNet-Diffusers-Depth',\n}\npredefined_zimage = {\n    \"Z-Image-Turbo Union 1.0\": 'hlky/Z-Image-Turbo-Fun-Controlnet-Union',\n    \"Z-Image-Turbo Union 2.0\": 'hlky/Z-Image-Turbo-Fun-Controlnet-Union-2.0',\n    \"Z-Image-Turbo Union 2.1\": 'hlky/Z-Image-Turbo-Fun-Controlnet-Union-2.1',\n}\n\nvariants = {\n    'NoobAI Canny XL': 'fp16',\n    'NoobAI Lineart Anime XL': 'fp16',\n    'NoobAI Depth XL': 'fp16',\n    'NoobAI Normal XL': 'fp16',\n    'NoobAI SoftEdge XL': 'fp16',\n    'TTPlanet Tile Realistic XL': 'fp16',\n}\n\nsubfolders = {\n    \"LibreFlux Segment F1\": 'controlnet',\n}\n\nremote_code = {\n    \"LibreFlux Segment F1\": True,\n}\n\nmodels = {}\nall_models = {}\nall_models.update(predefined_sd15)\nall_models.update(predefined_sdxl)\nall_models.update(predefined_f1)\nall_models.update(predefined_sd3)\nall_models.update(predefined_qwen)\nall_models.update(predefined_hunyuandit)\nall_models.update(predefined_zimage)\ncache_dir = 'models/control/controlnet'\nload_lock = threading.Lock()\n\n\ndef find_models():\n    path = os.path.join(opts.control_dir, 'controlnet')\n    files = listdir(path)\n    folders = [f for f in files if os.path.isdir(f) if os.path.exists(os.path.join(f, 'config.json'))]\n    files = [f for f in files if f.endswith('.safetensors')]\n    downloaded_models = {}\n    for f in files:\n        basename = os.path.splitext(os.path.relpath(f, path))[0]\n        downloaded_models[basename] = f\n    for f in folders:\n        basename = os.path.relpath(f, path)\n        downloaded_models[basename] = f\n    all_models.update(downloaded_models)\n    return downloaded_models\n\nfind_models()\n\n\ndef api_list_models(model_type: str = None):\n    import modules.shared\n    model_type = model_type or modules.shared.sd_model_type\n    model_list = []\n    if model_type == 'sd' or model_type == 'all':\n        model_list += list(predefined_sd15)\n    if model_type == 'sdxl' or model_type == 'all':\n        model_list += list(predefined_sdxl)\n    if model_type == 'f1' or model_type == 'all':\n        model_list += list(predefined_f1)\n    if model_type == 'sd3' or model_type == 'all':\n        model_list += list(predefined_sd3)\n    if model_type == 'qwen' or model_type == 'all':\n        model_list += list(predefined_qwen)\n    if model_type == 'hunyuandit' or model_type == 'all':\n        model_list += list(predefined_hunyuandit)\n    if model_type == 'zimage':\n        model_list += list(predefined_zimage)\n    model_list += sorted(find_models())\n    return model_list\n\n\ndef list_models(refresh=False):\n    import modules.shared\n    global models # pylint: disable=global-statement\n    if not refresh and len(models) > 0:\n        return models\n    models = {}\n    if modules.shared.sd_model_type == 'none':\n        models = ['None']\n    elif modules.shared.sd_model_type == 'sdxl':\n        models = ['None'] + list(predefined_sdxl) + sorted(find_models())\n    elif modules.shared.sd_model_type == 'sd':\n        models = ['None'] + list(predefined_sd15) + sorted(find_models())\n    elif modules.shared.sd_model_type == 'f1':\n        models = ['None'] + list(predefined_f1) + sorted(find_models())\n    elif modules.shared.sd_model_type == 'sd3':\n        models = ['None'] + list(predefined_sd3) + sorted(find_models())\n    elif modules.shared.sd_model_type == 'qwen':\n        models = ['None'] + list(predefined_qwen) + sorted(find_models())\n    elif modules.shared.sd_model_type == 'hunyuandit':\n        models = ['None'] + list(predefined_hunyuandit) + sorted(find_models())\n    elif modules.shared.sd_model_type == 'zimage':\n        models = ['None'] + list(predefined_zimage) + sorted(find_models())\n    else:\n        log.warning(f'Control {what} model list failed: unknown model type')\n        models = ['None'] + list(all_models) + sorted(find_models())\n    debug_log(f'Control list {what}: path={cache_dir} models={models}')\n    return models\n\n\nclass ControlNet():\n    def __init__(self, model_id: str = None, device = None, dtype = None, load_config = None):\n        self.model: ControlNetModel = None\n        self.model_id: str = model_id\n        self.device = device\n        self.dtype = dtype\n        self.load_config = { 'cache_dir': cache_dir }\n        if load_config is not None:\n            self.load_config.update(load_config)\n        if opts.offline_mode:\n            self.load_config[\"local_files_only\"] = True\n            os.environ['HF_HUB_OFFLINE'] = '1'\n        else:\n            os.environ.pop('HF_HUB_OFFLINE', None)\n            os.unsetenv('HF_HUB_OFFLINE')\n        if model_id is not None:\n            self.load()\n\n    def __str__(self):\n        return f' ControlNet(id={self.model_id} model={self.model.__class__.__name__})' if self.model_id and self.model else ''\n\n    def reset(self):\n        if self.model is not None:\n            debug_log(f'Control {what} model unloaded')\n            self.model = None\n            self.model_id = None\n            devices.torch_gc(force=True, reason='controlnet')\n\n    def get_class(self, model_id:str=''):\n        from modules import shared\n        if shared.sd_model_type == 'none':\n            _load = shared.sd_model # trigger a load\n        if shared.sd_model_type == 'sd':\n            from diffusers import ControlNetModel as cls # pylint: disable=reimported\n            config = 'lllyasviel/control_v11p_sd15_canny'\n        elif shared.sd_model_type == 'sdxl':\n            if 'union' in model_id.lower():\n                from diffusers import ControlNetUnionModel as cls\n                config = 'xinsir/controlnet-union-sdxl-1.0'\n            elif 'promax' in model_id.lower():\n                from diffusers import ControlNetUnionModel as cls\n                config = 'brad-twinkl/controlnet-union-sdxl-1.0-promax'\n            else:\n                from diffusers import ControlNetModel as cls # pylint: disable=reimported # sdxl shares same model class\n                config = 'Eugeoter/noob-sdxl-controlnet-canny'\n        elif shared.sd_model_type == 'f1':\n            from diffusers import FluxControlNetModel as cls\n            config = 'InstantX/FLUX.1-dev-Controlnet-Union'\n        elif shared.sd_model_type == 'sd3':\n            from diffusers import SD3ControlNetModel as cls\n            config = 'InstantX/SD3-Controlnet-Canny'\n        elif shared.sd_model_type == 'qwen':\n            from diffusers import QwenImageControlNetModel as cls\n            config = 'InstantX/Qwen-Image-ControlNet-Union'\n        elif shared.sd_model_type == 'hunyuandit':\n            from diffusers import HunyuanDiT2DControlNetModel as cls\n            config = 'Tencent-Hunyuan/HunyuanDiT-v1.2-ControlNet-Diffusers-Canny'\n        elif shared.sd_model_type == 'zimage':\n            from diffusers import ZImageControlNetModel as cls\n            if '2.0' in model_id:\n                config = 'hlky/Z-Image-Turbo-Fun-Controlnet-Union-2.0'\n            elif '2.1' in model_id:\n                config = 'hlky/Z-Image-Turbo-Fun-Controlnet-Union-2.1'\n            else:\n                config = 'hlky/Z-Image-Turbo-Fun-Controlnet-Union'\n        else:\n            log.error(f'Control {what}: type={shared.sd_model_type} unsupported model')\n            return None, None\n        return cls, config\n\n    def load_safetensors(self, model_id, model_path, cls, config): # pylint: disable=unused-argument\n        name = os.path.splitext(model_path)[0]\n        config_path = None\n        if not os.path.exists(model_path):\n            import huggingface_hub as hf\n            parts = model_path.split('/')\n            repo_id = f'{parts[0]}/{parts[1]}'\n            filename = os.path.splitext('/'.join(parts[2:]))[0]\n            model_path = hf.hf_hub_download(repo_id=repo_id, filename=f'{filename}.safetensors', cache_dir=cache_dir)\n            if config_path is None:\n                try:\n                    config_path = hf.hf_hub_download(repo_id=repo_id, filename=f'{filename}.yaml', cache_dir=cache_dir)\n                except Exception:\n                    pass # no yaml file\n            if config_path is None:\n                try:\n                    config_path = hf.hf_hub_download(repo_id=repo_id, filename=f'{filename}.json', cache_dir=cache_dir)\n                except Exception:\n                    pass # no yaml file\n        elif os.path.exists(name + '.yaml'):\n            config_path = f'{name}.yaml'\n        elif os.path.exists(name + '.json'):\n            config_path = f'{name}.json'\n        if config_path is not None:\n            self.load_config['original_config_file '] = config_path\n        self.model = cls.from_single_file(model_path, config=config, **self.load_config)\n\n    def load(self, model_id: str = None, force: bool = False) -> str:\n        with load_lock:\n            try:\n                t0 = time.time()\n                model_id = model_id or self.model_id\n                if model_id is None or model_id == 'None':\n                    self.reset()\n                    return\n                if model_id not in all_models:\n                    log.error(f'Control {what}: id=\"{model_id}\" available={list(all_models)} unknown model')\n                    return\n                model_path = all_models[model_id]\n                if model_path == '':\n                    return\n                if model_path is None:\n                    log.error(f'Control {what} model load: id=\"{model_id}\" unknown model id')\n                    return\n                if 'lora' in model_id.lower():\n                    self.model = model_path\n                    return\n                if model_id == self.model_id and not force:\n                    # log.debug(f'Control {what} model: id=\"{model_id}\" path=\"{model_path}\" already loaded')\n                    return\n                log.debug(f'Control {what} model loading: id=\"{model_id}\" path=\"{model_path}\"')\n                cls, config = self.get_class(model_id)\n                if cls is None:\n                    log.error(f'Control {what} model load: id=\"{model_id}\" unknown base model')\n                    return\n                self.reset()\n                jobid = state.begin(f'Load {what}')\n                if model_path.endswith('.safetensors'):\n                    self.load_safetensors(model_id, model_path, cls, config)\n                else:\n                    kwargs = {}\n                    if '/bin' in model_path:\n                        model_path = model_path.replace('/bin', '')\n                        self.load_config['use_safetensors'] = False\n                    else:\n                        self.load_config['use_safetensors'] = True\n                    if variants.get(model_id, None) is not None:\n                        kwargs['variant'] = variants[model_id]\n                    if subfolders.get(model_id, None) is not None:\n                        kwargs['subfolder'] = subfolders[model_id]\n                    if remote_code.get(model_id, None) is not None:\n                        kwargs['trust_remote_code'] = remote_code[model_id]\n                    try:\n                        self.model = cls.from_pretrained(model_path, **self.load_config, **kwargs)\n                    except Exception as e:\n                        log.error(f'Control {what} model load: id=\"{model_id}\" {e}')\n                        if debug:\n                            errors.display(e, 'Control')\n                if self.model is None:\n                    return\n                if not cmd_opts.lowvram: # lowvram will cause unet<->controlnet to ping-pong but saves more memory\n                    self.model.offload_never = True\n                if self.dtype is not None:\n                    self.model.to(self.dtype)\n                if self.device is not None:\n                    if (opts.diffusers_offload_mode != 'balanced') and hasattr(self.model, 'to'):\n                        try:\n                            self.model.to(self.device)\n                        except Exception as e:\n                            if 'Cannot copy out of meta tensor' in str(e):\n                                self.model.to_empty(device=self.device)\n                if \"Control\" in opts.sdnq_quantize_weights:\n                    try:\n                        log.debug(f'Control {what} model SDNQ quantize: id=\"{model_id}\"')\n                        from modules.model_quant import sdnq_quantize_model\n                        self.model = sdnq_quantize_model(self.model)\n                    except Exception as e:\n                        log.error(f'Control {what} model SDNQ Compression failed: id=\"{model_id}\" {e}')\n                elif \"Control\" in opts.optimum_quanto_weights:\n                    try:\n                        log.debug(f'Control {what} model Optimum Quanto: id=\"{model_id}\"')\n                        model_quant.load_quanto('Load model: type=Control')\n                        from modules.model_quant import optimum_quanto_model\n                        self.model = optimum_quanto_model(self.model)\n                    except Exception as e:\n                        log.error(f'Control {what} model Optimum Quanto: id=\"{model_id}\" {e}')\n                elif \"Control\" in opts.torchao_quantization:\n                    try:\n                        log.debug(f'Control {what} model Torch AO: id=\"{model_id}\"')\n                        model_quant.load_torchao('Load model: type=Control')\n                        from modules.model_quant import torchao_quantization\n                        self.model = torchao_quantization(self.model)\n                    except Exception as e:\n                        log.error(f'Control {what} model Torch AO: id=\"{model_id}\" {e}')\n                if self.device is not None:\n                    sd_models.move_model(self.model, self.device)\n                if \"Control\" in opts.cuda_compile:\n                    try:\n                        from modules.sd_models_compile import compile_torch\n                        self.model = compile_torch(self.model, apply_to_components=False, op=\"Control\")\n                    except Exception as e:\n                        log.warning(f\"Control compile error: {e}\")\n                t1 = time.time()\n                self.model_id = model_id\n                log.info(f'Control {what} model loaded: id=\"{self.model_id}\" path=\"{model_path}\" cls={cls.__name__} time={t1-t0:.2f}')\n                state.end(jobid)\n                return f'{what} loaded model: {self.model_id}'\n            except Exception as e:\n                log.error(f'Control {what} model load: id=\"{model_id}\" {e}')\n                errors.display(e, f'Control {what} load')\n                return f'{what} failed to load model: {model_id}'\n\n\nclass ControlNetPipeline():\n    def __init__(self,\n                 controlnet: Union[ControlNetModel, list[ControlNetModel]],\n                 pipeline: Union[StableDiffusionXLPipeline, StableDiffusionPipeline, FluxPipeline, StableDiffusion3Pipeline],\n                 dtype = None,\n                 p: StableDiffusionProcessingControl = None, # pylint: disable=unused-argument\n                ):\n        t0 = time.time()\n        self.orig_pipeline = pipeline\n        self.pipeline = None\n\n        controlnets = controlnet if isinstance(controlnet, list) else [controlnet]\n        loras = [cn for cn in controlnets if isinstance(cn, str)]\n        controlnets = [cn for cn in controlnets if not isinstance(cn, str)]\n\n        if pipeline is None:\n            log.error('Control model pipeline: model not loaded')\n            return\n        elif detect.is_sdxl(pipeline) and len(controlnets) > 0:\n            from diffusers import StableDiffusionXLControlNetPipeline, StableDiffusionXLControlNetUnionPipeline\n            classes = [c.__class__.__name__ for c in controlnets]\n            if any(c == 'ControlNetUnionModel' for c in classes):\n                if not all(c == 'ControlNetUnionModel' for c in classes):\n                    log.warning(f'Control {what}: units={classes} mixed type is not supported')\n                    return\n                if isinstance(controlnets, list) and len(controlnets) == 1:\n                    controlnets = controlnets[0]\n                cls = StableDiffusionXLControlNetUnionPipeline\n            else:\n                cls = StableDiffusionXLControlNetPipeline\n            self.pipeline = cls(\n                vae=pipeline.vae,\n                text_encoder=pipeline.text_encoder,\n                text_encoder_2=pipeline.text_encoder_2,\n                tokenizer=pipeline.tokenizer,\n                tokenizer_2=pipeline.tokenizer_2,\n                unet=pipeline.unet,\n                scheduler=pipeline.scheduler,\n                feature_extractor=getattr(pipeline, 'feature_extractor', None),\n                image_encoder=getattr(pipeline, 'image_encoder', None),\n                controlnet=controlnets, # can be a list\n            )\n        elif detect.is_f1(pipeline) and len(controlnets) > 0:\n            from diffusers import FluxControlNetPipeline\n            self.pipeline = FluxControlNetPipeline(\n                vae=pipeline.vae.to(devices.device),\n                text_encoder=pipeline.text_encoder,\n                text_encoder_2=pipeline.text_encoder_2,\n                tokenizer=pipeline.tokenizer,\n                tokenizer_2=pipeline.tokenizer_2,\n                transformer=pipeline.transformer,\n                scheduler=pipeline.scheduler,\n                controlnet=controlnets, # can be a list\n            )\n        elif detect.is_sd3(pipeline) and len(controlnets) > 0:\n            from diffusers import StableDiffusion3ControlNetPipeline\n            self.pipeline = StableDiffusion3ControlNetPipeline(\n                vae=pipeline.vae,\n                text_encoder=pipeline.text_encoder,\n                text_encoder_2=pipeline.text_encoder_2,\n                text_encoder_3=pipeline.text_encoder_3,\n                tokenizer=pipeline.tokenizer,\n                tokenizer_2=pipeline.tokenizer_2,\n                tokenizer_3=pipeline.tokenizer_3,\n                transformer=pipeline.transformer,\n                scheduler=pipeline.scheduler,\n                controlnet=controlnets, # can be a list\n            )\n        elif detect.is_sd15(pipeline) and len(controlnets) > 0:\n            from diffusers import StableDiffusionControlNetPipeline\n            self.pipeline = StableDiffusionControlNetPipeline(\n                vae=pipeline.vae,\n                text_encoder=pipeline.text_encoder,\n                tokenizer=pipeline.tokenizer,\n                unet=pipeline.unet,\n                scheduler=pipeline.scheduler,\n                feature_extractor=getattr(pipeline, 'feature_extractor', None),\n                image_encoder=getattr(pipeline, 'image_encoder', None),\n                requires_safety_checker=False,\n                safety_checker=None,\n                controlnet=controlnets, # can be a list\n            )\n            sd_models.move_model(self.pipeline, pipeline.device)\n        elif detect.is_qwen(pipeline) and len(controlnets) > 0:\n            from diffusers import QwenImageControlNetPipeline\n            self.pipeline = QwenImageControlNetPipeline(\n                vae=pipeline.vae,\n                text_encoder=pipeline.text_encoder,\n                tokenizer=pipeline.tokenizer,\n                transformer=pipeline.transformer,\n                scheduler=pipeline.scheduler,\n                controlnet=controlnets[0] if isinstance(controlnets, list) else controlnets, # can be a list\n            )\n        elif detect.is_hunyuandit(pipeline) and len(controlnets) > 0:\n            from diffusers import HunyuanDiTControlNetPipeline\n            self.pipeline = HunyuanDiTControlNetPipeline(\n                vae=pipeline.vae,\n                text_encoder=pipeline.text_encoder,\n                tokenizer=pipeline.tokenizer,\n                text_encoder_2=pipeline.text_encoder_2,\n                tokenizer_2=pipeline.tokenizer_2,\n                transformer=pipeline.transformer,\n                scheduler=pipeline.scheduler,\n                safety_checker=None,\n                feature_extractor=None,\n                controlnet=controlnets[0] if isinstance(controlnets, list) else controlnets, # can be a list\n            )\n        elif detect.is_zimage(pipeline) and len(controlnets) > 0:\n            from diffusers import ZImageControlNetPipeline\n            self.pipeline = ZImageControlNetPipeline(\n                vae=pipeline.vae,\n                text_encoder=pipeline.text_encoder,\n                tokenizer=pipeline.tokenizer,\n                transformer=pipeline.transformer,\n                scheduler=pipeline.scheduler,\n                controlnet=controlnets[0] if isinstance(controlnets, list) else controlnets, # can be a list\n            )\n            self.pipeline.task_args = { 'guidance_scale': 1 }\n        elif len(loras) > 0:\n            self.pipeline = pipeline\n            for lora in loras:\n                log.debug(f'Control {what} pipeline: lora=\"{lora}\"')\n                lora = lora.replace('/huggingface.co/', '')\n                self.pipeline.load_lora_weights(lora)\n                \"\"\"\n                if p is not None:\n                    p.prompt += f'<lora:{lora}:1.0>'\n                \"\"\"\n        else:\n            log.error(f'Control {what} pipeline: class={pipeline.__class__.__name__} unsupported model type')\n            return\n\n        if self.pipeline is None:\n            log.error(f'Control {what} pipeline: not initialized')\n            return\n        if dtype is not None:\n            self.pipeline = self.pipeline.to(dtype)\n\n        controlnet = None # free up memory\n        controlnets = None\n        sd_models.copy_diffuser_options(self.pipeline, pipeline)\n        if opts.diffusers_offload_mode == 'none':\n            sd_models.move_model(self.pipeline, devices.device)\n        sd_models.clear_caches()\n        sd_models.set_diffuser_offload(self.pipeline, 'model', force=True)\n\n        t1 = time.time()\n        debug_log(f'Control {what} pipeline: class={self.pipeline.__class__.__name__} time={t1-t0:.2f}')\n\n    def restore(self):\n        if self.pipeline is not None and hasattr(self.pipeline, 'unload_lora_weights'):\n            self.pipeline.unload_lora_weights()\n        self.pipeline = None\n        return self.orig_pipeline\n"
  },
  {
    "path": "modules/control/units/detect.py",
    "content": "def is_compatible(model, pattern='None'):\n    if model is None:\n        return False\n    if hasattr(model, '__class__'):\n        return model.__class__.__name__.startswith(pattern)\n    return False\n\n\ndef is_sd15(model):\n    return is_compatible(model, pattern='StableDiffusion')\n\n\ndef is_sdxl(model):\n    return is_compatible(model, pattern='StableDiffusionXL')\n\n\ndef is_f1(model):\n    return is_compatible(model, pattern='Flux')\n\n\ndef is_sd3(model):\n    return is_compatible(model, pattern='StableDiffusion3Pipeline')\n\n\ndef is_qwen(model):\n    return is_compatible(model, pattern='Qwen')\n\n\ndef is_hunyuandit(model):\n    return is_compatible(model, pattern='HunyuanDiT')\n\ndef is_zimage(model):\n    return is_compatible(model, pattern='ZImage')\n"
  },
  {
    "path": "modules/control/units/lite.py",
    "content": "import os\nimport time\nfrom typing import Union\nimport threading\nimport numpy as np\nfrom PIL import Image\nfrom diffusers import StableDiffusionPipeline, StableDiffusionXLPipeline\nfrom modules.shared import log, opts, listdir\nfrom modules import errors\nfrom modules.control.units.lite_model import ControlNetLLLite\n\n\nwhat = 'ControlLLLite'\ndebug = log.trace if os.environ.get('SD_CONTROL_DEBUG', None) is not None else lambda *args, **kwargs: None\ndebug('Trace: CONTROL')\npredefined_sd15 = {\n}\npredefined_sdxl = {\n    'Canny XL': 'kohya-ss/controlnet-lllite/controllllite_v01032064e_sdxl_canny',\n    'Canny anime XL': 'kohya-ss/controlnet-lllite/controllllite_v01032064e_sdxl_canny_anime',\n    'Depth anime XL': 'kohya-ss/controlnet-lllite/controllllite_v01008016e_sdxl_depth_anime',\n    'Blur anime XL': 'kohya-ss/controlnet-lllite/controllllite_v01016032e_sdxl_blur_anime_beta',\n    'Pose anime XL': 'kohya-ss/controlnet-lllite/controllllite_v01032064e_sdxl_pose_anime',\n    'Replicate anime XL': 'kohya-ss/controlnet-lllite/controllllite_v01032064e_sdxl_replicate_anime_v2',\n}\nmodels = {}\nall_models = {}\nall_models.update(predefined_sd15)\nall_models.update(predefined_sdxl)\ncache_dir = 'models/control/lite'\nload_lock = threading.Lock()\n\n\ndef find_models():\n    path = os.path.join(opts.control_dir, 'lite')\n    files = listdir(path)\n    files = [f for f in files if f.endswith('.safetensors')]\n    downloaded_models = {}\n    for f in files:\n        basename = os.path.splitext(os.path.relpath(f, path))[0]\n        downloaded_models[basename] = os.path.join(path, f)\n    all_models.update(downloaded_models)\n    return downloaded_models\n\n\ndef list_models(refresh=False):\n    import modules.shared\n    global models # pylint: disable=global-statement\n    if not refresh and len(models) > 0:\n        return models\n    models = {}\n    if modules.shared.sd_model_type == 'none':\n        models = ['None']\n    elif modules.shared.sd_model_type == 'sdxl':\n        models = ['None'] + sorted(predefined_sdxl) + sorted(find_models())\n    elif modules.shared.sd_model_type == 'sd':\n        models = ['None'] + sorted(predefined_sd15) + sorted(find_models())\n    else:\n        log.warning(f'Control {what} model list failed: unknown model type')\n        models = ['None'] + sorted(predefined_sd15) + sorted(predefined_sdxl) + sorted(find_models())\n    debug(f'Control list {what}: path={cache_dir} models={models}')\n    return models\n\n\nclass ControlLLLite():\n    def __init__(self, model_id: str = None, device = None, dtype = None, load_config = None):\n        self.model: ControlNetLLLite = None\n        self.model_id: str = model_id\n        self.device = device\n        self.dtype = dtype\n        self.load_config = { 'cache_dir': cache_dir }\n        if load_config is not None:\n            self.load_config.update(load_config)\n        if model_id is not None:\n            self.load()\n\n    def __str__(self):\n        return f' ControlLLLite(id={self.model_id} model={self.model.__class__.__name__})' if self.model_id and self.model else ''\n\n    def reset(self):\n        if self.model is not None:\n            debug(f'Control {what} model unloaded')\n        self.model = None\n        self.model_id = None\n\n    def load(self, model_id: str = None, force: bool = True) -> str:\n        with load_lock:\n            try:\n                t0 = time.time()\n                model_id = model_id or self.model_id\n                if model_id is None or model_id == 'None':\n                    self.reset()\n                    return\n                if model_id not in all_models:\n                    log.error(f'Control {what} unknown model: id=\"{model_id}\" available={list(all_models)}')\n                    return\n                model_path = all_models[model_id]\n                if model_path == '':\n                    return\n                if model_path is None:\n                    log.error(f'Control {what} model load failed: id=\"{model_id}\" error=unknown model id')\n                    return\n                if model_id == self.model_id and not force:\n                    # log.debug(f'Control {what} model: id=\"{model_id}\" path=\"{model_path}\" already loaded')\n                    return\n                log.debug(f'Control {what} model loading: id=\"{model_id}\" path=\"{model_path}\" {self.load_config}')\n                if model_path.endswith('.safetensors'):\n                    self.model = ControlNetLLLite(model_path)\n                else:\n                    import huggingface_hub as hf\n                    offline_config = {}\n                    if opts.offline_mode:\n                        offline_config[\"local_files_only\"] = True\n                        os.environ['HF_HUB_OFFLINE'] = '1'\n                    else:\n                        os.environ.pop('HF_HUB_OFFLINE', None)\n                        os.unsetenv('HF_HUB_OFFLINE')\n                    folder, filename = os.path.split(model_path)\n                    model_path = hf.hf_hub_download(repo_id=folder, filename=f'{filename}.safetensors', cache_dir=cache_dir, **offline_config)\n                    self.model = ControlNetLLLite(model_path)\n                if self.device is not None:\n                    self.model.to(self.device)\n                if self.dtype is not None:\n                    self.model.to(self.dtype)\n                t1 = time.time()\n                self.model_id = model_id\n                log.debug(f'Control {what} model loaded: id=\"{model_id}\" path=\"{model_path}\" time={t1-t0:.2f}')\n                return f'{what} loaded model: {model_id}'\n            except Exception as e:\n                log.error(f'Control {what} model load failed: id=\"{model_id}\" error={e}')\n                errors.display(e, f'Control {what} load')\n                return f'{what} failed to load model: {model_id}'\n\n\nclass ControlLLitePipeline():\n    def __init__(self, pipeline: Union[StableDiffusionXLPipeline, StableDiffusionPipeline]):\n        self.pipeline = pipeline\n        # self.pipeline.__class__.__name__ = 'ControlLLLitePipeline'\n        self.nets = []\n\n    def apply(self, controlnet: Union[ControlNetLLLite, list[ControlNetLLLite]], image, conditioning):\n        if image is None:\n            return\n        self.nets = [controlnet] if isinstance(controlnet, ControlNetLLLite) else controlnet\n        debug(f'Control {what} apply: models={len(self.nets)} image={image} conditioning={conditioning}')\n        weight = [conditioning] if isinstance(conditioning, float) else conditioning\n        images = [image] if isinstance(image, Image.Image) else image\n        images = [i.convert('RGB') for i in images]\n        for i, cn in enumerate(self.nets):\n            cn.apply(pipe=self.pipeline, cond=np.asarray(images[i % len(images)]), weight=weight[i % len(weight)])\n\n    def restore(self):\n        from modules.control.units.lite_model import clear_all_lllite\n        clear_all_lllite()\n        self.nets = []\n"
  },
  {
    "path": "modules/control/units/lite_model.py",
    "content": "# Credits: <https://github.com/mycodeiscat/ControlNet-LLLite-diffusers>\n# <https://github.com/kohya-ss/ControlNet-LLLite-ComfyUI/blob/main/node_control_net_lllite.py>\n\nimport re\nimport torch\nfrom safetensors.torch import load_file\n\n\nall_hack = {}\n\n\nclass LLLiteModule(torch.nn.Module):\n    def __init__(\n        self,\n        name: str,\n        is_conv2d: bool,\n        in_dim: int,\n        depth: int,\n        cond_emb_dim: int,\n        mlp_dim: int,\n    ):\n        super().__init__()\n        self.name = name\n        self.is_conv2d = is_conv2d\n        self.is_first = False\n        modules = []\n        modules.append(torch.nn.Conv2d(3, cond_emb_dim // 2, kernel_size=4, stride=4, padding=0))  # to latent (from VAE) size*2\n        if depth == 1:\n            modules.append(torch.nn.ReLU(inplace=True))\n            modules.append(torch.nn.Conv2d(cond_emb_dim // 2, cond_emb_dim, kernel_size=2, stride=2, padding=0))\n        elif depth == 2:\n            modules.append(torch.nn.ReLU(inplace=True))\n            modules.append(torch.nn.Conv2d(cond_emb_dim // 2, cond_emb_dim, kernel_size=4, stride=4, padding=0))\n        elif depth == 3:\n            # kernel size 8は大きすぎるので、4にする / kernel size 8 is too large, so set it to 4\n            modules.append(torch.nn.ReLU(inplace=True))\n            modules.append(torch.nn.Conv2d(cond_emb_dim // 2, cond_emb_dim // 2, kernel_size=4, stride=4, padding=0))\n            modules.append(torch.nn.ReLU(inplace=True))\n            modules.append(torch.nn.Conv2d(cond_emb_dim // 2, cond_emb_dim, kernel_size=2, stride=2, padding=0))\n        self.conditioning1 = torch.nn.Sequential(*modules)\n        if self.is_conv2d:\n            self.down = torch.nn.Sequential(\n                torch.nn.Conv2d(in_dim, mlp_dim, kernel_size=1, stride=1, padding=0),\n                torch.nn.ReLU(inplace=True),\n            )\n            self.mid = torch.nn.Sequential(\n                torch.nn.Conv2d(mlp_dim + cond_emb_dim, mlp_dim, kernel_size=1, stride=1, padding=0),\n                torch.nn.ReLU(inplace=True),\n            )\n            self.up = torch.nn.Sequential(\n                torch.nn.Conv2d(mlp_dim, in_dim, kernel_size=1, stride=1, padding=0),\n            )\n        else:\n            self.down = torch.nn.Sequential(\n                torch.nn.Linear(in_dim, mlp_dim),\n                torch.nn.ReLU(inplace=True),\n            )\n            self.mid = torch.nn.Sequential(\n                torch.nn.Linear(mlp_dim + cond_emb_dim, mlp_dim),\n                torch.nn.ReLU(inplace=True),\n            )\n            self.up = torch.nn.Sequential(\n                torch.nn.Linear(mlp_dim, in_dim),\n            )\n        self.depth = depth\n        self.cond_image = None\n        self.cond_emb = None\n\n    def set_cond_image(self, cond_image):\n        self.cond_image = cond_image\n        self.cond_emb = None\n\n    def forward(self, x):\n        if self.cond_emb is None:\n            cx = self.conditioning1(self.cond_image.to(x.device, dtype=x.dtype))\n            # if blk_shape is not None:\n            #     b, c, h, w = blk_shape\n            #     cx = torch.nn.functional.interpolate(cx, (h, w), mode=\"nearest-exact\")\n            if not self.is_conv2d:\n                # reshape / b,c,h,w -> b,h*w,c\n                n, c, h, w = cx.shape\n                cx = cx.view(n, c, h * w).permute(0, 2, 1)\n            self.cond_emb = cx\n        cx = self.cond_emb\n\n        # uncond/condでxはバッチサイズが2倍\n        if x.shape[0] != cx.shape[0]:\n            if self.is_conv2d:\n                cx = cx.repeat(x.shape[0] // cx.shape[0], 1, 1, 1)\n            else:\n                cx = cx.repeat(x.shape[0] // cx.shape[0], 1, 1)\n\n        cx = torch.cat([cx, self.down(x)], dim=1 if self.is_conv2d else 2)\n        cx = self.mid(cx)\n        cx = self.up(cx)\n        return cx\n\n\ndef clear_all_lllite():\n    global all_hack # pylint: disable=global-statement\n    for k, v in all_hack.items():\n        k.forward = v\n        k.lllite_list = []\n    all_hack = {}\n    return\n\n\nclass ControlNetLLLite(torch.nn.Module): # pylint: disable=abstract-method\n    def __init__(self, path: str):\n        super().__init__()\n        module_weights = {}\n        try:\n            state_dict = load_file(path)\n        except Exception as e:\n            raise RuntimeError(f\"Failed to load {path}\") from e\n        for key, value in state_dict.items():\n            fragments = key.split(\".\")\n            module_name = fragments[0]\n            weight_name = \".\".join(fragments[1:])\n            if module_name not in module_weights:\n                module_weights[module_name] = {}\n            module_weights[module_name][weight_name] = value\n        modules = {}\n        for module_name, weights in module_weights.items():\n            if \"conditioning1.4.weight\" in weights:\n                depth = 3\n            elif weights[\"conditioning1.2.weight\"].shape[-1] == 4:\n                depth = 2\n            else:\n                depth = 1\n\n            module = LLLiteModule(\n                name=module_name,\n                is_conv2d=weights[\"down.0.weight\"].ndim == 4,\n                in_dim=weights[\"down.0.weight\"].shape[1],\n                depth=depth,\n                cond_emb_dim=weights[\"conditioning1.0.weight\"].shape[0] * 2,\n                mlp_dim=weights[\"down.0.weight\"].shape[0],\n            )\n            # info = module.load_state_dict(weights)\n            modules[module_name] = module\n            setattr(self, module_name, module)\n            if len(modules) == 1:\n                module.is_first = True\n\n        self.modules = modules\n        return\n\n    @torch.no_grad()\n    def apply(self, pipe, cond, weight): # pylint: disable=arguments-differ\n        map_down_lllite_to_unet = {4: (1, 0), 5: (1, 1), 7: (2, 0), 8: (2, 1)}\n        model = pipe.unet\n        if type(cond) != torch.Tensor:\n            cond = torch.tensor(cond)\n        cond = cond/255 # 0-255 -> 0-1\n        cond_image = cond.unsqueeze(dim=0).permute(0, 3, 1, 2) # h,w,c -> b,c,h,w\n        cond_image = cond_image * 2.0 - 1.0 # 0-1 -> -1-1\n\n        for module in self.modules.values():\n            module.set_cond_image(cond_image)\n        for k, v in self.modules.items():\n            k = k.replace('middle_block', 'middle_blocks_0')\n            match = re.match(\"lllite_unet_(.*)_blocks_(.*)_1_transformer_blocks_(.*)_(.*)_to_(.*)\", k, re.M | re.I)\n            assert match, 'Failed to load ControlLLLite!'\n            root = match.group(1)\n            block = match.group(2)\n            block_number = match.group(3)\n            attn_name = match.group(4)\n            proj_name = match.group(5)\n            if root == 'input':\n                mapped_block, mapped_number = map_down_lllite_to_unet[int(block)]\n                b = model.down_blocks[mapped_block].attentions[int(mapped_number)].transformer_blocks[int(block_number)]\n            elif root == 'output':\n                pass # not implemented\n            else:\n                b = model.mid_block.attentions[0].transformer_blocks[int(block_number)]\n            b = getattr(b, attn_name, None)\n            assert b is not None, 'Failed to load ControlLLLite!'\n            b = getattr(b, 'to_' + proj_name, None)\n            assert b is not None, 'Failed to load ControlLLLite!'\n            if not hasattr(b, 'lllite_list'):\n                b.lllite_list = []\n            if len(b.lllite_list) == 0:\n                all_hack[b] = b.forward\n                b.forward = self.get_hacked_forward(original_forward=b.forward, model=model, blk=b)\n            b.lllite_list.append((weight, v))\n        return\n\n    def get_hacked_forward(self, original_forward, model, blk):\n        @torch.no_grad()\n        def forward(x, **kwargs):\n            hack = 0\n            for weight, module in blk.lllite_list:\n                module.to(x.device)\n                module.to(x.dtype)\n                hack = hack + module(x) * weight\n            x = x + hack\n            return original_forward(x, **kwargs)\n        return forward\n"
  },
  {
    "path": "modules/control/units/reference.py",
    "content": "from typing import Union\nimport time\nimport diffusers.utils\nfrom diffusers import StableDiffusionPipeline, StableDiffusionXLPipeline\nfrom modules.shared import log, opts\nfrom modules.control.units import detect\nfrom modules import sd_models\n\n\nwhat = 'Reference'\n\n\ndef list_models():\n    return ['Reference']\n\n\nclass ReferencePipeline():\n    def __init__(self, pipeline: Union[StableDiffusionXLPipeline, StableDiffusionPipeline], dtype = None):\n        t0 = time.time()\n        self.orig_pipeline = pipeline\n        self.pipeline = None\n        if pipeline is None:\n            log.error(f'Control {what} model pipeline: model not loaded')\n            return\n        if opts.diffusers_fuse_projections and hasattr(pipeline, 'unfuse_qkv_projections'):\n            pipeline.unfuse_qkv_projections()\n        if detect.is_sdxl(pipeline):\n            cls = diffusers.utils.get_class_from_dynamic_module('stable_diffusion_xl_reference', module_file='pipeline.py')\n            self.pipeline = cls(\n                vae=pipeline.vae,\n                text_encoder=pipeline.text_encoder,\n                text_encoder_2=pipeline.text_encoder_2,\n                tokenizer=pipeline.tokenizer,\n                tokenizer_2=pipeline.tokenizer_2,\n                unet=pipeline.unet,\n                scheduler=pipeline.scheduler,\n                feature_extractor=getattr(pipeline, 'feature_extractor', None),\n            )\n            sd_models.move_model(self.pipeline, pipeline.device)\n        elif detect.is_sd15(pipeline):\n            cls = diffusers.utils.get_class_from_dynamic_module('stable_diffusion_reference', module_file='pipeline.py')\n            self.pipeline = cls(\n                vae=pipeline.vae,\n                text_encoder=pipeline.text_encoder,\n                tokenizer=pipeline.tokenizer,\n                unet=pipeline.unet,\n                scheduler=pipeline.scheduler,\n                feature_extractor=getattr(pipeline, 'feature_extractor', None),\n                requires_safety_checker=False,\n                safety_checker=None,\n            )\n            sd_models.move_model(self.pipeline, pipeline.device)\n        else:\n            log.error(f'Control {what} pipeline: class={pipeline.__class__.__name__} unsupported model type')\n            return\n        if dtype is not None and self.pipeline is not None:\n            self.pipeline = self.pipeline.to(dtype)\n        t1 = time.time()\n        if self.pipeline is not None:\n            log.debug(f'Control {what} pipeline: class={self.pipeline.__class__.__name__} time={t1-t0:.2f}')\n        else:\n            log.error(f'Control {what} pipeline: not initialized')\n\n    def restore(self):\n        self.pipeline = None\n        return self.orig_pipeline\n"
  },
  {
    "path": "modules/control/units/t2iadapter.py",
    "content": "import os\nimport time\nfrom typing import Union\nimport threading\nfrom diffusers import StableDiffusionPipeline, StableDiffusionXLPipeline, T2IAdapter, MultiAdapter, StableDiffusionAdapterPipeline, StableDiffusionXLAdapterPipeline # pylint: disable=unused-import\nfrom installer import log\nfrom modules import errors, sd_models\nfrom modules.control.units import detect\n\n\nwhat = 'T2I-Adapter'\ndebug = log.trace if os.environ.get('SD_CONTROL_DEBUG', None) is not None else lambda *args, **kwargs: None\ndebug('Trace: CONTROL')\npredefined_sd15 = {\n    'Segment': ('TencentARC/t2iadapter_seg_sd14v1', {}),\n    'Zoe Depth': ('TencentARC/t2iadapter_zoedepth_sd15v1', {}),\n    'OpenPose': ('TencentARC/t2iadapter_openpose_sd14v1', {}),\n    'KeyPose': ('TencentARC/t2iadapter_keypose_sd14v1', {}),\n    'Color': ('TencentARC/t2iadapter_color_sd14v1', {}),\n    'Depth v1': ('TencentARC/t2iadapter_depth_sd14v1', {}),\n    'Depth v2': ('TencentARC/t2iadapter_depth_sd15v2', {}),\n    'Canny v1': ('TencentARC/t2iadapter_canny_sd14v1', {}),\n    'Canny v2': ('TencentARC/t2iadapter_canny_sd15v2', {}),\n    'Sketch v1': ('TencentARC/t2iadapter_sketch_sd14v1', {}),\n    'Sketch v2': ('TencentARC/t2iadapter_sketch_sd15v2', {}),\n    # 'Coadapter Canny': 'TencentARC/T2I-Adapter/models/coadapter-canny-sd15v1.pth',\n    # 'Coadapter Color': 'TencentARC/T2I-Adapter/models/coadapter-color-sd15v1.pth',\n    # 'Coadapter Depth': 'TencentARC/T2I-Adapter/models/coadapter-depth-sd15v1.pth',\n    # 'Coadapter Fuser': 'TencentARC/T2I-Adapter/models/coadapter-fuser-sd15v1.pth',\n    # 'Coadapter Sketch': 'TencentARC/T2I-Adapter/models/coadapter-sketch-sd15v1.pth',\n    # 'Coadapter Style': 'TencentARC/T2I-Adapter/models/coadapter-style-sd15v1.pth',\n}\npredefined_sdxl = {\n    'Canny XL': ('TencentARC/t2i-adapter-canny-sdxl-1.0', { 'use_safetensors': True, 'variant': 'fp16' }),\n    'LineArt XL': ('TencentARC/t2i-adapter-lineart-sdxl-1.0', { 'use_safetensors': True, 'variant': 'fp16' }),\n    'Sketch XL': ('TencentARC/t2i-adapter-sketch-sdxl-1.0', { 'use_safetensors': True, 'variant': 'fp16' }),\n    'Zoe Depth XL': ('TencentARC/t2i-adapter-depth-zoe-sdxl-1.0', { 'use_safetensors': True, 'variant': 'fp16' }),\n    'OpenPose XL': ('TencentARC/t2i-adapter-openpose-sdxl-1.0', { 'use_safetensors': True }),\n    'Midas Depth XL': ('TencentARC/t2i-adapter-depth-midas-sdxl-1.0', { 'use_safetensors': True, 'variant': 'fp16' }),\n}\n\nmodels = {}\nall_models = {}\nall_models.update(predefined_sd15)\nall_models.update(predefined_sdxl)\ncache_dir = 'models/control/adapter'\nload_lock = threading.Lock()\n\n\ndef list_models(refresh=False):\n    import modules.shared\n    global models # pylint: disable=global-statement\n    if not refresh and len(models) > 0:\n        return models\n    models = {}\n    if modules.shared.sd_model_type == 'none':\n        models = ['None']\n    elif modules.shared.sd_model_type == 'sdxl':\n        models = ['None'] + sorted(predefined_sdxl)\n    elif modules.shared.sd_model_type == 'sd':\n        models = ['None'] + sorted(predefined_sd15)\n    else:\n        log.warning(f'Control {what} model list failed: unknown model type')\n        models = ['None'] + sorted(list(predefined_sd15) + list(predefined_sdxl))\n    debug(f'Control list {what}: path={cache_dir} models={models}')\n    return models\n\n\nclass AdapterModel(T2IAdapter):\n    pass\n\n\nclass Adapter():\n    def __init__(self, model_id: str = None, device = None, dtype = None, load_config = None):\n        self.model: AdapterModel = None\n        self.model_id: str = model_id\n        self.device = device\n        self.dtype = dtype\n        self.load_config = { 'cache_dir': cache_dir, 'use_safetensors': False }\n        if load_config is not None:\n            self.load_config.update(load_config)\n        if model_id is not None:\n            self.load()\n\n    def __str__(self):\n        return f' T2IAdapter(id={self.model_id} model={self.model.__class__.__name__})' if self.model_id and self.model else ''\n\n    def reset(self):\n        if self.model is not None:\n            debug(f'Control {what} model unloaded')\n        self.model = None\n        self.model_id = None\n\n    def load(self, model_id: str = None, force: bool = True) -> str:\n        with load_lock:\n            try:\n                t0 = time.time()\n                model_id = model_id or self.model_id\n                if model_id is None or model_id == 'None':\n                    self.reset()\n                    return\n                if model_id not in all_models:\n                    log.error(f'Control {what} unknown model: id=\"{model_id}\" available={list(all_models)}')\n                    return\n                model_path, model_args = all_models[model_id]\n                self.load_config.update(model_args)\n                from modules.shared import opts\n                if opts.offline_mode:\n                    self.load_config[\"local_files_only\"] = True\n                    os.environ['HF_HUB_OFFLINE'] = '1'\n                else:\n                    os.environ.pop('HF_HUB_OFFLINE', None)\n                    os.unsetenv('HF_HUB_OFFLINE')\n                if model_path is None:\n                    log.error(f'Control {what} model load failed: id=\"{model_id}\" error=unknown model id')\n                    return\n                if model_id == self.model_id and not force:\n                    # log.debug(f'Control {what} model: id=\"{model_id}\" path=\"{model_path}\" already loaded')\n                    return\n                log.debug(f'Control {what} model loading: id=\"{model_id}\" path=\"{model_path}\"')\n                if model_path.endswith('.pth') or model_path.endswith('.pt') or model_path.endswith('.safetensors') or model_path.endswith('.bin'):\n                    from huggingface_hub import hf_hub_download\n                    parts = model_path.split('/')\n                    repo_id = f'{parts[0]}/{parts[1]}'\n                    filename = '/'.join(parts[2:])\n                    model = hf_hub_download(repo_id, filename, **self.load_config)\n                    self.model = T2IAdapter.from_pretrained(model, **self.load_config)\n                else:\n                    self.model = T2IAdapter.from_pretrained(model_path, **self.load_config)\n                if self.device is not None:\n                    self.model.to(self.device)\n                if self.dtype is not None:\n                    self.model.to(self.dtype)\n                t1 = time.time()\n                self.model_id = model_id\n                log.debug(f'Control {what} loaded: id=\"{model_id}\" path=\"{model_path}\" time={t1-t0:.2f}')\n                return f'{what} loaded model: {model_id}'\n            except Exception as e:\n                log.error(f'Control {what} model load failed: id=\"{model_id}\" error={e}')\n                errors.display(e, f'Control {what} load')\n                return f'{what} failed to load model: {model_id}'\n\n\nclass AdapterPipeline():\n    def __init__(self, adapter: Union[T2IAdapter, list[T2IAdapter]], pipeline: Union[StableDiffusionXLPipeline, StableDiffusionPipeline], dtype = None):\n        t0 = time.time()\n        self.orig_pipeline = pipeline\n        self.pipeline: Union[StableDiffusionXLPipeline, StableDiffusionPipeline] = None\n        if pipeline is None:\n            log.error(f'Control {what} pipeline: model not loaded')\n            return\n        if isinstance(adapter, list) and len(adapter) > 1:\n            adapter = MultiAdapter(adapter)\n        adapter.to(device=pipeline.device, dtype=pipeline.dtype)\n        \"\"\"\n        pipelines.auto_pipeline.AUTO_TEXT2IMAGE_PIPELINES_MAPPING[\"sd-t2iadapter\"] = StableDiffusionAdapterPipeline\n        pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING[\"sd-t2iadapter\"] = StableDiffusionAdapterPipeline\n        pipelines.auto_pipeline.AUTO_INPAINT_PIPELINES_MAPPING[\"sd-t2iadapter\"] = StableDiffusionAdapterPipeline\n        pipelines.auto_pipeline.AUTO_TEXT2IMAGE_PIPELINES_MAPPING[\"sdxl-t2iadapter\"] = StableDiffusionXLAdapterPipeline\n        pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING[\"sdxl-t2iadapter\"] = StableDiffusionXLAdapterPipeline\n        pipelines.auto_pipeline.AUTO_INPAINT_PIPELINES_MAPPING[\"sdxl-t2iadapter\"] = StableDiffusionXLAdapterPipeline\n        \"\"\"\n        if pipeline.__class__.__name__ == 'StableDiffusionAdapterPipeline' or pipeline.__class__.__name__ == 'StableDiffusionXLAdapterPipeline':\n            pass # already initialized\n        if detect.is_sdxl(pipeline):\n            self.pipeline = StableDiffusionXLAdapterPipeline(\n                vae=pipeline.vae,\n                text_encoder=pipeline.text_encoder,\n                text_encoder_2=pipeline.text_encoder_2,\n                tokenizer=pipeline.tokenizer,\n                tokenizer_2=pipeline.tokenizer_2,\n                unet=pipeline.unet,\n                scheduler=pipeline.scheduler,\n                feature_extractor=getattr(pipeline, 'feature_extractor', None),\n                adapter=adapter,\n            )\n            sd_models.move_model(self.pipeline, pipeline.device)\n            sd_models.apply_balanced_offload(self.pipeline, force=True)\n        elif detect.is_sd15(pipeline):\n            self.pipeline = StableDiffusionAdapterPipeline(\n                vae=pipeline.vae,\n                text_encoder=pipeline.text_encoder,\n                tokenizer=pipeline.tokenizer,\n                unet=pipeline.unet,\n                scheduler=pipeline.scheduler,\n                feature_extractor=getattr(pipeline, 'feature_extractor', None),\n                requires_safety_checker=False,\n                safety_checker=None,\n                adapter=adapter,\n            )\n            sd_models.move_model(self.pipeline, pipeline.device)\n            sd_models.apply_balanced_offload(self.pipeline, force=True)\n        else:\n            log.error(f'Control {what} pipeline: class={pipeline.__class__.__name__} unsupported model type')\n            return\n        if dtype is not None and self.pipeline is not None:\n            self.pipeline.dtype = dtype\n        t1 = time.time()\n        if self.pipeline is not None:\n            log.debug(f'Control {what} pipeline: class={self.pipeline.__class__.__name__} time={t1-t0:.2f}')\n        else:\n            log.error(f'Control {what} pipeline: not initialized')\n\n\n    def restore(self):\n        self.pipeline = None\n        return self.orig_pipeline\n"
  },
  {
    "path": "modules/control/units/xs.py",
    "content": "import os\nimport time\nfrom typing import Union\nimport threading\nfrom diffusers import StableDiffusionPipeline, StableDiffusionXLPipeline\nfrom modules.shared import log, opts, listdir\nfrom modules import errors, sd_models\nfrom modules.control.units.xs_model import ControlNetXSModel\nfrom modules.control.units.xs_pipe import StableDiffusionControlNetXSPipeline, StableDiffusionXLControlNetXSPipeline\nfrom modules.control.units import detect\n\n\nwhat = 'ControlNet-XS'\ndebug = log.trace if os.environ.get('SD_CONTROL_DEBUG', None) is not None else lambda *args, **kwargs: None\ndebug('Trace: CONTROL')\npredefined_sd15 = {\n}\npredefined_sdxl = {\n    'Canny': 'UmerHA/ConrolNetXS-SDXL-canny',\n    'Depth': 'UmerHA/ConrolNetXS-SDXL-depth',\n}\nmodels = {}\nall_models = {}\nall_models.update(predefined_sd15)\nall_models.update(predefined_sdxl)\ncache_dir = 'models/control/xs'\nload_lock = threading.Lock()\n\n\ndef find_models():\n    path = os.path.join(opts.control_dir, 'xs')\n    files = listdir(path)\n    files = [f for f in files if f.endswith('.safetensors')]\n    downloaded_models = {}\n    for f in files:\n        basename = os.path.splitext(os.path.relpath(f, path))[0]\n        downloaded_models[basename] = os.path.join(path, f)\n    all_models.update(downloaded_models)\n    return downloaded_models\n\n\ndef list_models(refresh=False):\n    global models # pylint: disable=global-statement\n    import modules.shared\n    if not refresh and len(models) > 0:\n        return models\n    models = {}\n    if modules.shared.sd_model_type == 'none':\n        models = ['None']\n    elif modules.shared.sd_model_type == 'sdxl':\n        models = ['None'] + sorted(predefined_sdxl) + sorted(find_models())\n    elif modules.shared.sd_model_type == 'sd':\n        models = ['None'] + sorted(predefined_sd15) + sorted(find_models())\n    else:\n        log.error(f'Control {what} model list failed: unknown model type')\n        models = ['None'] + sorted(predefined_sd15) + sorted(predefined_sdxl) + sorted(find_models())\n    debug(f'Control list {what}: path={cache_dir} models={models}')\n    return models\n\n\nclass ControlNetXS():\n    def __init__(self, model_id: str = None, device = None, dtype = None, load_config = None):\n        self.model: ControlNetXSModel = None\n        self.model_id: str = model_id\n        self.device = device\n        self.dtype = dtype\n        self.load_config = { 'cache_dir': cache_dir, 'learn_embedding': True }\n        if load_config is not None:\n            self.load_config.update(load_config)\n        if model_id is not None:\n            self.load()\n\n    def __str__(self):\n        return f' ControlNetXS(id={self.model_id} model={self.model.__class__.__name__})' if self.model_id and self.model else ''\n\n    def reset(self):\n        if self.model is not None:\n            debug(f'Control {what} model unloaded')\n        self.model = None\n        self.model_id = None\n\n    def load(self, model_id: str = None, time_embedding_mix: float = 0.0, force: bool = True) -> str:\n        with load_lock:\n            try:\n                t0 = time.time()\n                model_id = model_id or self.model_id\n                if model_id is None or model_id == 'None':\n                    self.reset()\n                    return\n                if model_id not in all_models:\n                    log.error(f'Control {what} unknown model: id=\"{model_id}\" available={list(all_models)}')\n                    return\n                model_path = all_models[model_id]\n                if model_path == '':\n                    return\n                if model_path is None:\n                    log.error(f'Control {what} model load failed: id=\"{model_id}\" error=unknown model id')\n                    return\n                if model_id == self.model_id and not force:\n                    # log.debug(f'Control {what} model: id=\"{model_id}\" path=\"{model_path}\" already loaded')\n                    return\n                self.load_config['time_embedding_mix'] = time_embedding_mix\n                if opts.offline_mode:\n                    self.load_config[\"local_files_only\"] = True\n                    os.environ['HF_HUB_OFFLINE'] = '1'\n                else:\n                    os.environ.pop('HF_HUB_OFFLINE', None)\n                    os.unsetenv('HF_HUB_OFFLINE')\n                log.debug(f'Control {what} model loading: id=\"{model_id}\" path=\"{model_path}\" {self.load_config}')\n                if model_path.endswith('.safetensors'):\n                    self.model = ControlNetXSModel.from_single_file(model_path, **self.load_config)\n                else:\n                    self.model = ControlNetXSModel.from_pretrained(model_path, **self.load_config)\n                if self.device is not None:\n                    self.model.to(self.device)\n                if self.dtype is not None:\n                    self.model.to(self.dtype)\n                t1 = time.time()\n                self.model_id = model_id\n                log.debug(f'Control {what} model loaded: id=\"{model_id}\" path=\"{model_path}\" time={t1-t0:.2f}')\n                return f'{what} loaded model: {model_id}'\n            except Exception as e:\n                log.error(f'Control {what} model load failed: id=\"{model_id}\" error={e}')\n                errors.display(e, f'Control {what} load')\n                return f'{what} failed to load model: {model_id}'\n\n\nclass ControlNetXSPipeline():\n    def __init__(self, controlnet: Union[ControlNetXSModel, list[ControlNetXSModel]], pipeline: Union[StableDiffusionXLPipeline, StableDiffusionPipeline], dtype = None):\n        t0 = time.time()\n        self.orig_pipeline = pipeline\n        self.pipeline = None\n        if pipeline is None:\n            log.error(f'Control {what} pipeline: model not loaded')\n            return\n        if detect.is_sdxl(pipeline):\n            self.pipeline = StableDiffusionXLControlNetXSPipeline(\n                vae=pipeline.vae,\n                text_encoder=pipeline.text_encoder,\n                text_encoder_2=pipeline.text_encoder_2,\n                tokenizer=pipeline.tokenizer,\n                tokenizer_2=pipeline.tokenizer_2,\n                unet=pipeline.unet,\n                scheduler=pipeline.scheduler,\n                # feature_extractor=getattr(pipeline, 'feature_extractor', None),\n                controlnet=controlnet, # can be a list\n            )\n            sd_models.move_model(self.pipeline, pipeline.device)\n            sd_models.apply_balanced_offload(self.pipeline, force=True)\n        elif detect.is_sd15(pipeline):\n            self.pipeline = StableDiffusionControlNetXSPipeline(\n                vae=pipeline.vae,\n                text_encoder=pipeline.text_encoder,\n                tokenizer=pipeline.tokenizer,\n                unet=pipeline.unet,\n                scheduler=pipeline.scheduler,\n                feature_extractor=getattr(pipeline, 'feature_extractor', None),\n                requires_safety_checker=False,\n                safety_checker=None,\n                controlnet=controlnet, # can be a list\n            )\n            sd_models.move_model(self.pipeline, pipeline.device)\n            sd_models.apply_balanced_offload(self.pipeline, force=True)\n        else:\n            log.error(f'Control {what} pipeline: class={pipeline.__class__.__name__} unsupported model type')\n            return\n        if dtype is not None and self.pipeline is not None:\n            self.pipeline = self.pipeline.to(dtype)\n        t1 = time.time()\n        if self.pipeline is not None:\n            log.debug(f'Control {what} pipeline: class={self.pipeline.__class__.__name__} time={t1-t0:.2f}')\n        else:\n            log.error(f'Control {what} pipeline: not initialized')\n\n    def restore(self):\n        self.pipeline = None\n        return self.orig_pipeline\n"
  },
  {
    "path": "modules/control/units/xs_model.py",
    "content": "# Copyright 2023 The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\nimport math\nfrom dataclasses import dataclass\nfrom typing import Any, Dict, List, Optional, Tuple, Union\n\nimport torch\nimport torch.utils.checkpoint\nfrom torch import nn\nfrom torch.nn import functional as F\nfrom torch.nn.modules.normalization import GroupNorm\n\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.models.attention_processor import AttentionProcessor\nfrom diffusers.models.autoencoders import AutoencoderKL\nfrom diffusers.models.lora import LoRACompatibleConv\nfrom diffusers.models.modeling_utils import ModelMixin\n\ntry:\n    from diffusers.models.unet_2d_blocks import CrossAttnDownBlock2D, CrossAttnUpBlock2D, DownBlock2D, Downsample2D, ResnetBlock2D, Transformer2DModel, UpBlock2D, Upsample2D # pylint: disable=no-name-in-module\nexcept Exception:\n    pass\ntry:\n    from diffusers.models.unets.unet_2d_blocks import CrossAttnDownBlock2D, CrossAttnUpBlock2D, DownBlock2D, Downsample2D, ResnetBlock2D, Transformer2DModel, UpBlock2D, Upsample2D\nexcept Exception:\n    pass\n\ntry:\n    from diffusers.models.unet_2d_condition import UNet2DConditionModel\nexcept Exception:\n    from diffusers.models.unets.unet_2d_condition import UNet2DConditionModel\nfrom diffusers.utils import BaseOutput, logging, USE_PEFT_BACKEND\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\n@dataclass\nclass ControlNetXSOutput(BaseOutput):\n    \"\"\"\n    The output of [`ControlNetXSModel`].\n\n    Args:\n        sample (`torch.FloatTensor` of shape `(batch_size, num_channels, height, width)`):\n            The output of the `ControlNetXSModel`. Unlike `ControlNetOutput` this is NOT to be added to the base model\n            output, but is already the final output.\n    \"\"\"\n\n    sample: torch.FloatTensor = None\n\n\n# copied from diffusers.models.controlnet.ControlNetConditioningEmbedding\nclass ControlNetConditioningEmbedding(nn.Module):\n    \"\"\"\n    Quoting from https://arxiv.org/abs/2302.05543: \"Stable Diffusion uses a pre-processing method similar to VQ-GAN\n    [11] to convert the entire dataset of 512 × 512 images into smaller 64 × 64 “latent images” for stabilized\n    training. This requires ControlNets to convert image-based conditions to 64 × 64 feature space to match the\n    convolution size. We use a tiny network E(·) of four convolution layers with 4 × 4 kernels and 2 × 2 strides\n    (activated by ReLU, channels are 16, 32, 64, 128, initialized with Gaussian weights, trained jointly with the full\n    model) to encode image-space conditions ... into feature maps ...\"\n    \"\"\"\n\n    def __init__(\n        self,\n        conditioning_embedding_channels: int,\n        conditioning_channels: int = 3,\n        block_out_channels: Tuple[int, ...] = (16, 32, 96, 256),\n    ):\n        super().__init__()\n\n        self.conv_in = nn.Conv2d(conditioning_channels, block_out_channels[0], kernel_size=3, padding=1)\n\n        self.blocks = nn.ModuleList([])\n\n        for i in range(len(block_out_channels) - 1):\n            channel_in = block_out_channels[i]\n            channel_out = block_out_channels[i + 1]\n            self.blocks.append(nn.Conv2d(channel_in, channel_in, kernel_size=3, padding=1))\n            self.blocks.append(nn.Conv2d(channel_in, channel_out, kernel_size=3, padding=1, stride=2))\n\n        self.conv_out = zero_module(\n            nn.Conv2d(block_out_channels[-1], conditioning_embedding_channels, kernel_size=3, padding=1)\n        )\n\n    def forward(self, conditioning):\n        embedding = self.conv_in(conditioning)\n        embedding = F.silu(embedding)\n\n        for block in self.blocks:\n            embedding = block(embedding)\n            embedding = F.silu(embedding)\n\n        embedding = self.conv_out(embedding)\n\n        return embedding\n\n\nclass ControlNetXSModel(ModelMixin, ConfigMixin):\n    r\"\"\"\n    A ControlNet-XS model\n\n    This model inherits from [`ModelMixin`] and [`ConfigMixin`]. Check the superclass documentation for it's generic\n    methods implemented for all models (such as downloading or saving).\n\n    Most of parameters for this model are passed into the [`UNet2DConditionModel`] it creates. Check the documentation\n    of [`UNet2DConditionModel`] for them.\n\n    Parameters:\n        conditioning_channels (`int`, defaults to 3):\n            Number of channels of conditioning input (e.g. an image)\n        controlnet_conditioning_channel_order (`str`, defaults to `\"rgb\"`):\n            The channel order of conditional image. Will convert to `rgb` if it's `bgr`.\n        conditioning_embedding_out_channels (`tuple[int]`, defaults to `(16, 32, 96, 256)`):\n            The tuple of output channel for each block in the `controlnet_cond_embedding` layer.\n        time_embedding_input_dim (`int`, defaults to 320):\n            Dimension of input into time embedding. Needs to be same as in the base model.\n        time_embedding_dim (`int`, defaults to 1280):\n            Dimension of output from time embedding. Needs to be same as in the base model.\n        learn_embedding (`bool`, defaults to `False`):\n            Whether to use time embedding of the control model. If yes, the time embedding is a linear interpolation of\n            the time embeddings of the control and base model with interpolation parameter `time_embedding_mix**3`.\n        time_embedding_mix (`float`, defaults to 1.0):\n            Linear interpolation parameter used if `learn_embedding` is `True`. A value of 1.0 means only the\n            control model's time embedding will be used. A value of 0.0 means only the base model's time embedding will be used.\n        base_model_channel_sizes (`Dict[str, List[Tuple[int]]]`):\n            Channel sizes of each subblock of base model. Use `gather_subblock_sizes` on your base model to compute it.\n    \"\"\"\n\n    @classmethod\n    def init_original(cls, base_model: UNet2DConditionModel, is_sdxl=True):\n        \"\"\"\n        Create a ControlNetXS model with the same parameters as in the original paper (https://github.com/vislearn/ControlNet-XS).\n\n        Parameters:\n            base_model (`UNet2DConditionModel`):\n                Base UNet model. Needs to be either StableDiffusion or StableDiffusion-XL.\n            is_sdxl (`bool`, defaults to `True`):\n                Whether passed `base_model` is a StableDiffusion-XL model.\n        \"\"\"\n\n        def get_dim_attn_heads(base_model: UNet2DConditionModel, size_ratio: float, num_attn_heads: int):\n            \"\"\"\n            Currently, diffusers can only set the dimension of attention heads (see https://github.com/huggingface/diffusers/issues/2011#issuecomment-1547958131 for why).\n            The original ControlNet-XS model, however, define the number of attention heads.\n            That's why compute the dimensions needed to get the correct number of attention heads.\n            \"\"\"\n            block_out_channels = [int(size_ratio * c) for c in base_model.config.block_out_channels]\n            dim_attn_heads = [math.ceil(c / num_attn_heads) for c in block_out_channels]\n            return dim_attn_heads\n\n        if is_sdxl:\n            return ControlNetXSModel.from_unet(\n                base_model,\n                time_embedding_mix=0.95,\n                learn_embedding=True,\n                size_ratio=0.1,\n                conditioning_embedding_out_channels=(16, 32, 96, 256),\n                num_attention_heads=get_dim_attn_heads(base_model, 0.1, 64),\n            )\n        else:\n            return ControlNetXSModel.from_unet(\n                base_model,\n                time_embedding_mix=1.0,\n                learn_embedding=True,\n                size_ratio=0.0125,\n                conditioning_embedding_out_channels=(16, 32, 96, 256),\n                num_attention_heads=get_dim_attn_heads(base_model, 0.0125, 8),\n            )\n\n    @classmethod\n    def _gather_subblock_sizes(cls, unet: UNet2DConditionModel, base_or_control: str):\n        \"\"\"To create correctly sized connections between base and control model, we need to know\n        the input and output channels of each subblock.\n\n        Parameters:\n            unet (`UNet2DConditionModel`):\n                Unet of which the subblock channels sizes are to be gathered.\n            base_or_control (`str`):\n                Needs to be either \"base\" or \"control\". If \"base\", decoder is also considered.\n        \"\"\"\n        if base_or_control not in [\"base\", \"control\"]:\n            raise ValueError(\"`base_or_control` needs to be either `base` or `control`\")\n\n        channel_sizes = {\"down\": [], \"mid\": [], \"up\": []}\n\n        # input convolution\n        channel_sizes[\"down\"].append((unet.conv_in.in_channels, unet.conv_in.out_channels))\n\n        # encoder blocks\n        for module in unet.down_blocks:\n            if isinstance(module, (CrossAttnDownBlock2D, DownBlock2D)):\n                for r in module.resnets:\n                    channel_sizes[\"down\"].append((r.in_channels, r.out_channels))\n                if module.downsamplers:\n                    channel_sizes[\"down\"].append(\n                        (module.downsamplers[0].channels, module.downsamplers[0].out_channels)\n                    )\n            else:\n                raise ValueError(f\"Encountered unknown module of type {type(module)} while creating ControlNet-XS.\")\n\n        # middle block\n        channel_sizes[\"mid\"].append((unet.mid_block.resnets[0].in_channels, unet.mid_block.resnets[0].out_channels))\n\n        # decoder blocks\n        if base_or_control == \"base\":\n            for module in unet.up_blocks:\n                if isinstance(module, (CrossAttnUpBlock2D, UpBlock2D)):\n                    for r in module.resnets:\n                        channel_sizes[\"up\"].append((r.in_channels, r.out_channels))\n                else:\n                    raise ValueError(\n                        f\"Encountered unknown module of type {type(module)} while creating ControlNet-XS.\"\n                    )\n\n        return channel_sizes\n\n    @register_to_config\n    def __init__(\n        self,\n        conditioning_channels: int = 3,\n        conditioning_embedding_out_channels: Tuple[int] = (16, 32, 96, 256),\n        controlnet_conditioning_channel_order: str = \"rgb\", # pylint: disable=unused-argument\n        time_embedding_input_dim: int = 320,\n        time_embedding_dim: int = 1280,\n        time_embedding_mix: float = 1.0, # pylint: disable=unused-argument\n        learn_embedding: bool = False, # pylint: disable=unused-argument\n        base_model_channel_sizes: Dict[str, List[Tuple[int]]] = {\n            \"down\": [\n                (4, 320),\n                (320, 320),\n                (320, 320),\n                (320, 320),\n                (320, 640),\n                (640, 640),\n                (640, 640),\n                (640, 1280),\n                (1280, 1280),\n            ],\n            \"mid\": [(1280, 1280)],\n            \"up\": [\n                (2560, 1280),\n                (2560, 1280),\n                (1920, 1280),\n                (1920, 640),\n                (1280, 640),\n                (960, 640),\n                (960, 320),\n                (640, 320),\n                (640, 320),\n            ],\n        },\n        sample_size: Optional[int] = None,\n        down_block_types: Tuple[str] = (\n            \"CrossAttnDownBlock2D\",\n            \"CrossAttnDownBlock2D\",\n            \"CrossAttnDownBlock2D\",\n            \"DownBlock2D\",\n        ),\n        up_block_types: Tuple[str] = (\"UpBlock2D\", \"CrossAttnUpBlock2D\", \"CrossAttnUpBlock2D\", \"CrossAttnUpBlock2D\"),\n        block_out_channels: Tuple[int] = (320, 640, 1280, 1280),\n        norm_num_groups: Optional[int] = 32,\n        cross_attention_dim: Union[int, Tuple[int]] = 1280,\n        transformer_layers_per_block: Union[int, Tuple[int], Tuple[Tuple]] = 1,\n        num_attention_heads: Optional[Union[int, Tuple[int]]] = 8,\n        upcast_attention: bool = False,\n    ):\n        super().__init__()\n\n        # 1 - Create control unet\n        self.control_model = UNet2DConditionModel(\n            sample_size=sample_size,\n            down_block_types=down_block_types,\n            up_block_types=up_block_types,\n            block_out_channels=block_out_channels,\n            norm_num_groups=norm_num_groups,\n            cross_attention_dim=cross_attention_dim,\n            transformer_layers_per_block=transformer_layers_per_block,\n            attention_head_dim=num_attention_heads,\n            use_linear_projection=True,\n            upcast_attention=upcast_attention,\n            time_embedding_dim=time_embedding_dim,\n        )\n\n        # 2 - Do model surgery on control model\n        # 2.1 - Allow to use the same time information as the base model\n        adjust_time_dims(self.control_model, time_embedding_input_dim, time_embedding_dim)\n\n        # 2.2 - Allow for information infusion from base model\n\n        # We concat the output of each base encoder subblocks to the input of the next control encoder subblock\n        # (We ignore the 1st element, as it represents the `conv_in`.)\n        extra_input_channels = [input_channels for input_channels, _ in base_model_channel_sizes[\"down\"][1:]]\n        it_extra_input_channels = iter(extra_input_channels)\n\n        for b, block in enumerate(self.control_model.down_blocks):\n            for r in range(len(block.resnets)):\n                increase_block_input_in_encoder_resnet(\n                    self.control_model, block_no=b, resnet_idx=r, by=next(it_extra_input_channels)\n                )\n\n            if block.downsamplers:\n                increase_block_input_in_encoder_downsampler(\n                    self.control_model, block_no=b, by=next(it_extra_input_channels)\n                )\n\n        increase_block_input_in_mid_resnet(self.control_model, by=extra_input_channels[-1])\n\n        # 2.3 - Make group norms work with modified channel sizes\n        adjust_group_norms(self.control_model)\n\n        # 3 - Gather Channel Sizes\n        self.ch_inout_ctrl = ControlNetXSModel._gather_subblock_sizes(self.control_model, base_or_control=\"control\")\n        self.ch_inout_base = base_model_channel_sizes\n\n        # 4 - Build connections between base and control model\n        self.down_zero_convs_out = nn.ModuleList([])\n        self.down_zero_convs_in = nn.ModuleList([])\n        self.middle_block_out = nn.ModuleList([])\n        self.middle_block_in = nn.ModuleList([])\n        self.up_zero_convs_out = nn.ModuleList([])\n        self.up_zero_convs_in = nn.ModuleList([])\n\n        for ch_io_base in self.ch_inout_base[\"down\"]:\n            self.down_zero_convs_in.append(self._make_zero_conv(in_channels=ch_io_base[1], out_channels=ch_io_base[1]))\n        for i in range(len(self.ch_inout_ctrl[\"down\"])):\n            self.down_zero_convs_out.append(\n                self._make_zero_conv(self.ch_inout_ctrl[\"down\"][i][1], self.ch_inout_base[\"down\"][i][1])\n            )\n\n        self.middle_block_out = self._make_zero_conv(\n            self.ch_inout_ctrl[\"mid\"][-1][1], self.ch_inout_base[\"mid\"][-1][1]\n        )\n\n        self.up_zero_convs_out.append(\n            self._make_zero_conv(self.ch_inout_ctrl[\"down\"][-1][1], self.ch_inout_base[\"mid\"][-1][1])\n        )\n        for i in range(1, len(self.ch_inout_ctrl[\"down\"])):\n            self.up_zero_convs_out.append(\n                self._make_zero_conv(self.ch_inout_ctrl[\"down\"][-(i + 1)][1], self.ch_inout_base[\"up\"][i - 1][1])\n            )\n\n        # 5 - Create conditioning hint embedding\n        self.controlnet_cond_embedding = ControlNetConditioningEmbedding(\n            conditioning_embedding_channels=block_out_channels[0],\n            block_out_channels=conditioning_embedding_out_channels,\n            conditioning_channels=conditioning_channels,\n        )\n\n        # In the mininal implementation setting, we only need the control model up to the mid block\n        del self.control_model.up_blocks\n        del self.control_model.conv_norm_out\n        del self.control_model.conv_out\n\n    @classmethod\n    def from_unet(\n        cls,\n        unet: UNet2DConditionModel,\n        conditioning_channels: int = 3,\n        conditioning_embedding_out_channels: Tuple[int] = (16, 32, 96, 256),\n        controlnet_conditioning_channel_order: str = \"rgb\",\n        learn_embedding: bool = False,\n        time_embedding_mix: float = 1.0,\n        block_out_channels: Optional[Tuple[int]] = None,\n        size_ratio: Optional[float] = None,\n        num_attention_heads: Optional[Union[int, Tuple[int]]] = 8,\n        norm_num_groups: Optional[int] = None,\n    ):\n        r\"\"\"\n        Instantiate a [`ControlNetXSModel`] from [`UNet2DConditionModel`].\n\n        Parameters:\n            unet (`UNet2DConditionModel`):\n                The UNet model we want to control. The dimensions of the ControlNetXSModel will be adapted to it.\n            conditioning_channels (`int`, defaults to 3):\n                Number of channels of conditioning input (e.g. an image)\n            conditioning_embedding_out_channels (`tuple[int]`, defaults to `(16, 32, 96, 256)`):\n                The tuple of output channel for each block in the `controlnet_cond_embedding` layer.\n            controlnet_conditioning_channel_order (`str`, defaults to `\"rgb\"`):\n                The channel order of conditional image. Will convert to `rgb` if it's `bgr`.\n            learn_embedding (`bool`, defaults to `False`):\n                Wether to use time embedding of the control model. If yes, the time embedding is a linear interpolation\n                of the time embeddings of the control and base model with interpolation parameter\n                `time_embedding_mix**3`.\n            time_embedding_mix (`float`, defaults to 1.0):\n                Linear interpolation parameter used if `learn_embedding` is `True`.\n            block_out_channels (`Tuple[int]`, *optional*):\n                Down blocks output channels in control model. Either this or `size_ratio` must be given.\n            size_ratio (float, *optional*):\n                When given, block_out_channels is set to a relative fraction of the base model's block_out_channels.\n                Either this or `block_out_channels` must be given.\n            num_attention_heads (`Union[int, Tuple[int]]`, *optional*):\n                The dimension of the attention heads. The naming seems a bit confusing and it is, see https://github.com/huggingface/diffusers/issues/2011#issuecomment-1547958131 for why.\n            norm_num_groups (int, *optional*, defaults to `None`):\n                The number of groups to use for the normalization of the control unet. If `None`,\n                `int(unet.config.norm_num_groups * size_ratio)` is taken.\n        \"\"\"\n\n        # Check input\n        fixed_size = block_out_channels is not None\n        relative_size = size_ratio is not None\n        if not fixed_size ^ relative_size:\n            raise ValueError(\"Pass exactly one of `block_out_channels` (for absolute sizing) or `control_model_ratio` (for relative sizing).\")\n\n        # Create model\n        if block_out_channels is None:\n            block_out_channels = [int(size_ratio * c) for c in unet.config.block_out_channels]\n\n        # Check that attention heads and group norms match channel sizes\n        # - attention heads\n        def attn_heads_match_channel_sizes(attn_heads, channel_sizes):\n            if isinstance(attn_heads, (tuple, list)):\n                return all(c % a == 0 for a, c in zip(attn_heads, channel_sizes))\n            else:\n                return all(c % attn_heads == 0 for c in channel_sizes)\n\n        num_attention_heads = num_attention_heads or unet.config.attention_head_dim\n        if not attn_heads_match_channel_sizes(num_attention_heads, block_out_channels):\n            raise ValueError(\n                f\"The dimension of attention heads ({num_attention_heads}) must divide `block_out_channels` ({block_out_channels}). If you didn't set `num_attention_heads` the default settings don't match your model. Set `num_attention_heads` manually.\"\n            )\n\n        # - group norms\n        def group_norms_match_channel_sizes(num_groups, channel_sizes):\n            return all(c % num_groups == 0 for c in channel_sizes)\n\n        if norm_num_groups is None:\n            if group_norms_match_channel_sizes(unet.config.norm_num_groups, block_out_channels):\n                norm_num_groups = unet.config.norm_num_groups\n            else:\n                norm_num_groups = min(block_out_channels)\n                if not group_norms_match_channel_sizes(norm_num_groups, block_out_channels):\n                    raise ValueError(f'ControlNetXSModel mismatch: block_out_channels={block_out_channels} norm_num_groups={unet.config.norm_num_groups}')\n\n        def get_time_emb_input_dim(unet: UNet2DConditionModel):\n            return unet.time_embedding.linear_1.in_features\n\n        def get_time_emb_dim(unet: UNet2DConditionModel):\n            return unet.time_embedding.linear_2.out_features\n\n        # Clone params from base unet if\n        #    (i)   it's required to build SD or SDXL, and\n        #    (ii)  it's not used for the time embedding (as time embedding of control model is never used), and\n        #    (iii) it's not set further below anyway\n        to_keep = [\n            \"cross_attention_dim\",\n            \"down_block_types\",\n            \"sample_size\",\n            \"transformer_layers_per_block\",\n            \"up_block_types\",\n            \"upcast_attention\",\n        ]\n        kwargs = {k: v for k, v in dict(unet.config).items() if k in to_keep}\n        kwargs.update(block_out_channels=block_out_channels)\n        kwargs.update(num_attention_heads=num_attention_heads)\n        kwargs.update(norm_num_groups=norm_num_groups)\n\n        # Add controlnetxs-specific params\n        kwargs.update(\n            conditioning_channels=conditioning_channels,\n            controlnet_conditioning_channel_order=controlnet_conditioning_channel_order,\n            time_embedding_input_dim=get_time_emb_input_dim(unet),\n            time_embedding_dim=get_time_emb_dim(unet),\n            time_embedding_mix=time_embedding_mix,\n            learn_embedding=learn_embedding,\n            base_model_channel_sizes=ControlNetXSModel._gather_subblock_sizes(unet, base_or_control=\"base\"),\n            conditioning_embedding_out_channels=conditioning_embedding_out_channels,\n        )\n\n        return cls(**kwargs)\n\n    @property\n    def attn_processors(self) -> Dict[str, AttentionProcessor]:\n        r\"\"\"\n        Returns:\n            `dict` of attention processors: A dictionary containing all attention processors used in the model with\n            indexed by its weight name.\n        \"\"\"\n        return self.control_model.attn_processors\n\n    def set_attn_processor(\n        self, processor: Union[AttentionProcessor, Dict[str, AttentionProcessor]], _remove_lora=False\n    ):\n        r\"\"\"\n        Sets the attention processor to use to compute attention.\n\n        Parameters:\n            processor (`dict` of `AttentionProcessor` or only `AttentionProcessor`):\n                The instantiated processor class or a dictionary of processor classes that will be set as the processor\n                for **all** `Attention` layers.\n\n                If `processor` is a dict, the key needs to define the path to the corresponding cross attention\n                processor. This is strongly recommended when setting trainable attention processors.\n\n        \"\"\"\n        self.control_model.set_attn_processor(processor, _remove_lora)\n\n    def set_default_attn_processor(self):\n        \"\"\"\n        Disables custom attention processors and sets the default attention implementation.\n        \"\"\"\n        self.control_model.set_default_attn_processor()\n\n    def set_attention_slice(self, slice_size):\n        r\"\"\"\n        Enable sliced attention computation.\n\n        When this option is enabled, the attention module splits the input tensor in slices to compute attention in\n        several steps. This is useful for saving some memory in exchange for a small decrease in speed.\n\n        Args:\n            slice_size (`str` or `int` or `list(int)`, *optional*, defaults to `\"auto\"`):\n                When `\"auto\"`, input to the attention heads is halved, so attention is computed in two steps. If\n                `\"max\"`, maximum amount of memory is saved by running only one slice at a time. If a number is\n                provided, uses as many slices as `attention_head_dim // slice_size`. In this case, `attention_head_dim`\n                must be a multiple of `slice_size`.\n        \"\"\"\n        self.control_model.set_attention_slice(slice_size)\n\n    def _set_gradient_checkpointing(self, module, value=False):\n        if isinstance(module, (UNet2DConditionModel)):\n            if value:\n                module.enable_gradient_checkpointing()\n            else:\n                module.disable_gradient_checkpointing()\n\n    def forward(\n        self,\n        base_model: UNet2DConditionModel,\n        sample: torch.FloatTensor,\n        timestep: Union[torch.Tensor, float, int],\n        encoder_hidden_states: torch.Tensor,\n        controlnet_cond: torch.Tensor,\n        conditioning_scale: float = 1.0,\n        class_labels: Optional[torch.Tensor] = None,\n        timestep_cond: Optional[torch.Tensor] = None,\n        attention_mask: Optional[torch.Tensor] = None,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        added_cond_kwargs: Optional[Dict[str, torch.Tensor]] = None,\n        return_dict: bool = True,\n    ) -> Union[ControlNetXSOutput, Tuple]:\n        \"\"\"\n        The [`ControlNetModel`] forward method.\n\n        Args:\n            base_model (`UNet2DConditionModel`):\n                The base unet model we want to control.\n            sample (`torch.FloatTensor`):\n                The noisy input tensor.\n            timestep (`Union[torch.Tensor, float, int]`):\n                The number of timesteps to denoise an input.\n            encoder_hidden_states (`torch.Tensor`):\n                The encoder hidden states.\n            controlnet_cond (`torch.FloatTensor`):\n                The conditional input tensor of shape `(batch_size, sequence_length, hidden_size)`.\n            conditioning_scale (`float`, defaults to `1.0`):\n                How much the control model affects the base model outputs.\n            class_labels (`torch.Tensor`, *optional*, defaults to `None`):\n                Optional class labels for conditioning. Their embeddings will be summed with the timestep embeddings.\n            timestep_cond (`torch.Tensor`, *optional*, defaults to `None`):\n                Additional conditional embeddings for timestep. If provided, the embeddings will be summed with the\n                timestep_embedding passed through the `self.time_embedding` layer to obtain the final timestep\n                embeddings.\n            attention_mask (`torch.Tensor`, *optional*, defaults to `None`):\n                An attention mask of shape `(batch, key_tokens)` is applied to `encoder_hidden_states`. If `1` the mask\n                is kept, otherwise if `0` it is discarded. Mask will be converted into a bias, which adds large\n                negative values to the attention scores corresponding to \"discard\" tokens.\n            added_cond_kwargs (`dict`):\n                Additional conditions for the Stable Diffusion XL UNet.\n            cross_attention_kwargs (`dict[str]`, *optional*, defaults to `None`):\n                A kwargs dictionary that if specified is passed along to the `AttnProcessor`.\n            return_dict (`bool`, defaults to `True`):\n                Whether or not to return a [`~models.controlnet.ControlNetOutput`] instead of a plain tuple.\n\n        Returns:\n            [`~models.controlnetxs.ControlNetXSOutput`] **or** `tuple`:\n                If `return_dict` is `True`, a [`~models.controlnetxs.ControlNetXSOutput`] is returned, otherwise a\n                tuple is returned where the first element is the sample tensor.\n        \"\"\"\n        # check channel order\n        channel_order = self.config.controlnet_conditioning_channel_order # pylint: disable=no-member\n\n        if channel_order == \"rgb\":\n            # in rgb order by default\n            ...\n        elif channel_order == \"bgr\":\n            controlnet_cond = torch.flip(controlnet_cond, dims=[1])\n        else:\n            raise ValueError(f\"unknown `controlnet_conditioning_channel_order`: {channel_order}\")\n\n        # scale control strength\n        n_connections = len(self.down_zero_convs_out) + 1 + len(self.up_zero_convs_out)\n        scale_list = torch.full((n_connections,), conditioning_scale)\n\n        # prepare attention_mask\n        if attention_mask is not None:\n            attention_mask = (1 - attention_mask.to(sample.dtype)) * -10000.0\n            attention_mask = attention_mask.unsqueeze(1)\n\n        # 1. time\n        timesteps = timestep\n        if not torch.is_tensor(timesteps):\n            # This would be a good case for the `match` statement (Python 3.10+)\n            is_mps = sample.device.type == \"mps\"\n            if isinstance(timestep, float):\n                dtype = torch.float32 if is_mps else torch.float64\n            else:\n                dtype = torch.int32 if is_mps else torch.int64\n            timesteps = torch.tensor([timesteps], dtype=dtype, device=sample.device)\n        elif len(timesteps.shape) == 0:\n            timesteps = timesteps[None].to(sample.device)\n\n        # broadcast to batch dimension in a way that's compatible with ONNX/Core ML\n        timesteps = timesteps.expand(sample.shape[0])\n\n        t_emb = base_model.time_proj(timesteps)\n\n        # timesteps does not contain any weights and will always return f32 tensors\n        # but time_embedding might actually be running in fp16. so we need to cast here.\n        # there might be better ways to encapsulate this.\n        t_emb = t_emb.to(dtype=sample.dtype)\n\n        if self.config.learn_embedding: # pylint: disable=no-member\n            base_model = base_model.to(self.control_model.device)\n            ctrl_temb = self.control_model.time_embedding(t_emb, timestep_cond)\n            base_temb = base_model.time_embedding(t_emb, timestep_cond)\n            interpolation_param = self.config.time_embedding_mix**0.3 # pylint: disable=no-member\n\n            temb = ctrl_temb * interpolation_param + base_temb * (1 - interpolation_param)\n        else:\n            temb = base_model.time_embedding(t_emb)\n\n        # added time & text embeddings\n        aug_emb = None\n\n        if base_model.class_embedding is not None:\n            if class_labels is None:\n                raise ValueError(\"class_labels should be provided when num_class_embeds > 0\")\n\n            if base_model.config.class_embed_type == \"timestep\":\n                class_labels = base_model.time_proj(class_labels)\n\n            class_emb = base_model.class_embedding(class_labels).to(dtype=self.dtype)\n            temb = temb + class_emb\n\n        if base_model.config.addition_embed_type is not None:\n            if base_model.config.addition_embed_type == \"text\":\n                aug_emb = base_model.add_embedding(encoder_hidden_states)\n            elif base_model.config.addition_embed_type == \"text_image\":\n                raise NotImplementedError()\n            elif base_model.config.addition_embed_type == \"text_time\":\n                # SDXL - style\n                if \"text_embeds\" not in added_cond_kwargs:\n                    raise ValueError(\n                        f\"{self.__class__} has the config param `addition_embed_type` set to 'text_time' which requires the keyword argument `text_embeds` to be passed in `added_cond_kwargs`\"\n                    )\n                text_embeds = added_cond_kwargs.get(\"text_embeds\")\n                if \"time_ids\" not in added_cond_kwargs:\n                    raise ValueError(\n                        f\"{self.__class__} has the config param `addition_embed_type` set to 'text_time' which requires the keyword argument `time_ids` to be passed in `added_cond_kwargs`\"\n                    )\n                time_ids = added_cond_kwargs.get(\"time_ids\")\n                time_embeds = base_model.add_time_proj(time_ids.flatten())\n                time_embeds = time_embeds.reshape((text_embeds.shape[0], -1))\n                add_embeds = torch.concat([text_embeds, time_embeds], dim=-1)\n                add_embeds = add_embeds.to(temb.dtype)\n                aug_emb = base_model.add_embedding(add_embeds)\n            elif base_model.config.addition_embed_type == \"image\":\n                raise NotImplementedError()\n            elif base_model.config.addition_embed_type == \"image_hint\":\n                raise NotImplementedError()\n\n        temb = temb + aug_emb if aug_emb is not None else temb\n\n        # text embeddings\n        cemb = encoder_hidden_states\n\n        # Preparation\n        guided_hint = self.controlnet_cond_embedding(controlnet_cond)\n\n        h_ctrl = h_base = sample\n        hs_base, hs_ctrl = [], []\n        it_down_convs_in, it_down_convs_out, _it_dec_convs_in, it_up_convs_out = map(\n            iter, (self.down_zero_convs_in, self.down_zero_convs_out, self.up_zero_convs_in, self.up_zero_convs_out)\n        )\n        scales = iter(scale_list)\n\n        base_down_subblocks = to_sub_blocks(base_model.down_blocks)\n        ctrl_down_subblocks = to_sub_blocks(self.control_model.down_blocks)\n        base_mid_subblocks = to_sub_blocks([base_model.mid_block])\n        ctrl_mid_subblocks = to_sub_blocks([self.control_model.mid_block])\n        base_up_subblocks = to_sub_blocks(base_model.up_blocks)\n\n        # Cross Control\n        # 0 - conv in\n        h_base = base_model.conv_in(h_base)\n        h_ctrl = self.control_model.conv_in(h_ctrl)\n        if guided_hint is not None:\n            h_ctrl += guided_hint\n        h_base = h_base + next(it_down_convs_out)(h_ctrl) * next(scales)  # D - add ctrl -> base\n\n        hs_base.append(h_base)\n        hs_ctrl.append(h_ctrl)\n\n        # 1 - down\n        for m_base, m_ctrl in zip(base_down_subblocks, ctrl_down_subblocks):\n            h_ctrl = torch.cat([h_ctrl, next(it_down_convs_in)(h_base)], dim=1)  # A - concat base -> ctrl\n            h_base = m_base(h_base, temb, cemb, attention_mask, cross_attention_kwargs)  # B - apply base subblock\n            h_ctrl = m_ctrl(h_ctrl, temb, cemb, attention_mask, cross_attention_kwargs)  # C - apply ctrl subblock\n            h_base = h_base + next(it_down_convs_out)(h_ctrl) * next(scales)  # D - add ctrl -> base\n            hs_base.append(h_base)\n            hs_ctrl.append(h_ctrl)\n\n        # 2 - mid\n        h_ctrl = torch.cat([h_ctrl, next(it_down_convs_in)(h_base)], dim=1)  # A - concat base -> ctrl\n        for m_base, m_ctrl in zip(base_mid_subblocks, ctrl_mid_subblocks):\n            h_base = m_base(h_base, temb, cemb, attention_mask, cross_attention_kwargs)  # B - apply base subblock\n            h_ctrl = m_ctrl(h_ctrl, temb, cemb, attention_mask, cross_attention_kwargs)  # C - apply ctrl subblock\n        h_base = h_base + self.middle_block_out(h_ctrl) * next(scales)  # D - add ctrl -> base\n\n        # 3 - up\n        for _i, m_base in enumerate(base_up_subblocks):\n            h_base = h_base + next(it_up_convs_out)(hs_ctrl.pop()) * next(scales)  # add info from ctrl encoder\n            h_base = torch.cat([h_base, hs_base.pop()], dim=1)  # concat info from base encoder+ctrl encoder\n            h_base = m_base(h_base, temb, cemb, attention_mask, cross_attention_kwargs)\n\n        h_base = base_model.conv_norm_out(h_base)\n        h_base = base_model.conv_act(h_base)\n        h_base = base_model.conv_out(h_base)\n\n        if not return_dict:\n            return h_base\n\n        return ControlNetXSOutput(sample=h_base)\n\n    def _make_zero_conv(self, in_channels, out_channels=None):\n        # keep running track of channels sizes\n        self.in_channels = in_channels\n        self.out_channels = out_channels or in_channels\n\n        return zero_module(nn.Conv2d(in_channels, out_channels, 1, padding=0))\n\n    @torch.no_grad()\n    def _check_if_vae_compatible(self, vae: AutoencoderKL):\n        condition_downscale_factor = 2 ** (len(self.config.conditioning_embedding_out_channels) - 1) # pylint: disable=no-member\n        vae_downscale_factor = 2 ** (len(vae.config.block_out_channels) - 1)\n        compatible = condition_downscale_factor == vae_downscale_factor\n        return compatible, condition_downscale_factor, vae_downscale_factor\n\n\nclass SubBlock(nn.ModuleList):\n    \"\"\"A SubBlock is the largest piece of either base or control model, that is executed independently of the other model respectively.\n    Before each subblock, information is concatted from base to control. And after each subblock, information is added from control to base.\n    \"\"\"\n\n    def __init__(self, ms, *args, **kwargs):\n        if not is_iterable(ms):\n            ms = [ms]\n        super().__init__(ms, *args, **kwargs)\n\n    def forward(\n        self,\n        x: torch.Tensor,\n        temb: torch.Tensor,\n        cemb: torch.Tensor,\n        attention_mask: Optional[torch.Tensor] = None,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n    ):\n        \"\"\"Iterate through children and pass correct information to each.\"\"\"\n        for m in self:\n            if isinstance(m, ResnetBlock2D):\n                x = m(x, temb)\n            elif isinstance(m, Transformer2DModel):\n                x = m(x, cemb, attention_mask=attention_mask, cross_attention_kwargs=cross_attention_kwargs).sample\n            elif isinstance(m, Downsample2D):\n                x = m(x)\n            elif isinstance(m, Upsample2D):\n                x = m(x)\n            else:\n                raise ValueError(\n                    f\"Type of m is {type(m)} but should be `ResnetBlock2D`, `Transformer2DModel`,  `Downsample2D` or `Upsample2D`\"\n                )\n\n        return x\n\n\ndef adjust_time_dims(unet: UNet2DConditionModel, in_dim: int, out_dim: int):\n    unet.time_embedding.linear_1 = nn.Linear(in_dim, out_dim)\n\n\ndef increase_block_input_in_encoder_resnet(unet: UNet2DConditionModel, block_no, resnet_idx, by):\n    \"\"\"Increase channels sizes to allow for additional concatted information from base model\"\"\"\n    r = unet.down_blocks[block_no].resnets[resnet_idx]\n    old_norm1, old_conv1 = r.norm1, r.conv1\n    # norm\n    norm_args = \"num_groups num_channels eps affine\".split(\" \")\n    for a in norm_args:\n        assert hasattr(old_norm1, a)\n    norm_kwargs = {a: getattr(old_norm1, a) for a in norm_args}\n    norm_kwargs[\"num_channels\"] += by  # surgery done here\n    # conv1\n    conv1_args = [\n        \"in_channels\",\n        \"out_channels\",\n        \"kernel_size\",\n        \"stride\",\n        \"padding\",\n        \"dilation\",\n        \"groups\",\n        \"bias\",\n        \"padding_mode\",\n    ]\n    if not USE_PEFT_BACKEND:\n        conv1_args.append(\"lora_layer\")\n\n    for a in conv1_args:\n        assert hasattr(old_conv1, a)\n\n    conv1_kwargs = {a: getattr(old_conv1, a) for a in conv1_args}\n    conv1_kwargs[\"bias\"] = \"bias\" in conv1_kwargs  # as param, bias is a boolean, but as attr, it's a tensor.\n    conv1_kwargs[\"in_channels\"] += by  # surgery done here\n    # conv_shortcut\n    # as we changed the input size of the block, the input and output sizes are likely different,\n    # therefore we need a conv_shortcut (simply adding won't work)\n    conv_shortcut_args_kwargs = {\n        \"in_channels\": conv1_kwargs[\"in_channels\"],\n        \"out_channels\": conv1_kwargs[\"out_channels\"],\n        # default arguments from resnet.__init__\n        \"kernel_size\": 1,\n        \"stride\": 1,\n        \"padding\": 0,\n        \"bias\": True,\n    }\n    # swap old with new modules\n    unet.down_blocks[block_no].resnets[resnet_idx].norm1 = GroupNorm(**norm_kwargs)\n    unet.down_blocks[block_no].resnets[resnet_idx].conv1 = (\n        nn.Conv2d(**conv1_kwargs) if USE_PEFT_BACKEND else LoRACompatibleConv(**conv1_kwargs)\n    )\n    unet.down_blocks[block_no].resnets[resnet_idx].conv_shortcut = (\n        nn.Conv2d(**conv_shortcut_args_kwargs) if USE_PEFT_BACKEND else LoRACompatibleConv(**conv_shortcut_args_kwargs)\n    )\n    unet.down_blocks[block_no].resnets[resnet_idx].in_channels += by  # surgery done here\n\n\ndef increase_block_input_in_encoder_downsampler(unet: UNet2DConditionModel, block_no, by):\n    \"\"\"Increase channels sizes to allow for additional concatted information from base model\"\"\"\n    old_down = unet.down_blocks[block_no].downsamplers[0].conv\n\n    args = [\n        \"in_channels\",\n        \"out_channels\",\n        \"kernel_size\",\n        \"stride\",\n        \"padding\",\n        \"dilation\",\n        \"groups\",\n        \"bias\",\n        \"padding_mode\",\n    ]\n    if not USE_PEFT_BACKEND:\n        args.append(\"lora_layer\")\n\n    for a in args:\n        assert hasattr(old_down, a)\n    kwargs = {a: getattr(old_down, a) for a in args}\n    kwargs[\"bias\"] = \"bias\" in kwargs  # as param, bias is a boolean, but as attr, it's a tensor.\n    kwargs[\"in_channels\"] += by  # surgery done here\n    # swap old with new modules\n    unet.down_blocks[block_no].downsamplers[0].conv = (\n        nn.Conv2d(**kwargs) if USE_PEFT_BACKEND else LoRACompatibleConv(**kwargs)\n    )\n    unet.down_blocks[block_no].downsamplers[0].channels += by  # surgery done here\n\n\ndef increase_block_input_in_mid_resnet(unet: UNet2DConditionModel, by):\n    \"\"\"Increase channels sizes to allow for additional concatted information from base model\"\"\"\n    m = unet.mid_block.resnets[0]\n    old_norm1, old_conv1 = m.norm1, m.conv1\n    # norm\n    norm_args = \"num_groups num_channels eps affine\".split(\" \")\n    for a in norm_args:\n        assert hasattr(old_norm1, a)\n    norm_kwargs = {a: getattr(old_norm1, a) for a in norm_args}\n    norm_kwargs[\"num_channels\"] += by  # surgery done here\n    conv1_args = [\n        \"in_channels\",\n        \"out_channels\",\n        \"kernel_size\",\n        \"stride\",\n        \"padding\",\n        \"dilation\",\n        \"groups\",\n        \"bias\",\n        \"padding_mode\",\n    ]\n    if not USE_PEFT_BACKEND:\n        conv1_args.append(\"lora_layer\")\n\n    conv1_kwargs = {a: getattr(old_conv1, a) for a in conv1_args}\n    conv1_kwargs[\"bias\"] = \"bias\" in conv1_kwargs  # as param, bias is a boolean, but as attr, it's a tensor.\n    conv1_kwargs[\"in_channels\"] += by  # surgery done here\n    # conv_shortcut\n    # as we changed the input size of the block, the input and output sizes are likely different,\n    # therefore we need a conv_shortcut (simply adding won't work)\n    conv_shortcut_args_kwargs = {\n        \"in_channels\": conv1_kwargs[\"in_channels\"],\n        \"out_channels\": conv1_kwargs[\"out_channels\"],\n        # default arguments from resnet.__init__\n        \"kernel_size\": 1,\n        \"stride\": 1,\n        \"padding\": 0,\n        \"bias\": True,\n    }\n    # swap old with new modules\n    unet.mid_block.resnets[0].norm1 = GroupNorm(**norm_kwargs)\n    unet.mid_block.resnets[0].conv1 = (\n        nn.Conv2d(**conv1_kwargs) if USE_PEFT_BACKEND else LoRACompatibleConv(**conv1_kwargs)\n    )\n    unet.mid_block.resnets[0].conv_shortcut = (\n        nn.Conv2d(**conv_shortcut_args_kwargs) if USE_PEFT_BACKEND else LoRACompatibleConv(**conv_shortcut_args_kwargs)\n    )\n    unet.mid_block.resnets[0].in_channels += by  # surgery done here\n\n\ndef adjust_group_norms(unet: UNet2DConditionModel, max_num_group: int = 32):\n    def find_denominator(number, start):\n        if start >= number:\n            return number\n        while start != 0:\n            residual = number % start\n            if residual == 0:\n                return start\n            start -= 1\n\n    for block in [*unet.down_blocks, unet.mid_block]:\n        # resnets\n        for r in block.resnets:\n            if r.norm1.num_groups < max_num_group:\n                r.norm1.num_groups = find_denominator(r.norm1.num_channels, start=max_num_group)\n\n            if r.norm2.num_groups < max_num_group:\n                r.norm2.num_groups = find_denominator(r.norm2.num_channels, start=max_num_group)\n\n        # transformers\n        if hasattr(block, \"attentions\"):\n            for a in block.attentions:\n                if a.norm.num_groups < max_num_group:\n                    a.norm.num_groups = find_denominator(a.norm.num_channels, start=max_num_group)\n\n\ndef is_iterable(o):\n    if isinstance(o, str):\n        return False\n    try:\n        iter(o)\n        return True\n    except TypeError:\n        return False\n\n\ndef to_sub_blocks(blocks):\n    if not is_iterable(blocks):\n        blocks = [blocks]\n\n    sub_blocks = []\n\n    for b in blocks:\n        if hasattr(b, \"resnets\"):\n            if hasattr(b, \"attentions\") and b.attentions is not None:\n                for r, a in zip(b.resnets, b.attentions):\n                    sub_blocks.append([r, a])\n\n                num_resnets = len(b.resnets)\n                num_attns = len(b.attentions)\n\n                if num_resnets > num_attns:\n                    # we can have more resnets than attentions, so add each resnet as separate subblock\n                    for i in range(num_attns, num_resnets):\n                        sub_blocks.append([b.resnets[i]])\n            else:\n                for r in b.resnets:\n                    sub_blocks.append([r])\n\n        # upsamplers are part of the same subblock\n        if hasattr(b, \"upsamplers\") and b.upsamplers is not None:\n            for u in b.upsamplers:\n                sub_blocks[-1].extend([u])\n\n        # downsamplers are own subblock\n        if hasattr(b, \"downsamplers\") and b.downsamplers is not None:\n            for d in b.downsamplers:\n                sub_blocks.append([d])\n\n    return list(map(SubBlock, sub_blocks))\n\n\ndef zero_module(module):\n    for p in module.parameters():\n        nn.init.zeros_(p)\n    return module\n"
  },
  {
    "path": "modules/control/units/xs_pipe.py",
    "content": "# Copyright 2023 The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport inspect\nfrom typing import Any, Callable, Dict, List, Optional, Tuple, Union\n\nimport numpy as np\nfrom PIL import Image\nimport torch\nimport torch.nn.functional as F\nfrom transformers import CLIPTextModel, CLIPTextModelWithProjection, CLIPTokenizer, CLIPImageProcessor\n\nfrom diffusers.image_processor import PipelineImageInput, VaeImageProcessor\nfrom diffusers.loaders import FromSingleFileMixin, LoraLoaderMixin, StableDiffusionXLLoraLoaderMixin, TextualInversionLoaderMixin\nfrom diffusers.models import AutoencoderKL, UNet2DConditionModel\nfrom diffusers.models.attention_processor import (\n    AttnProcessor2_0,\n    FusedAttnProcessor2_0,\n    XFormersAttnProcessor,\n)\nfrom diffusers.models.lora import adjust_lora_scale_text_encoder\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline\nfrom diffusers.pipelines.stable_diffusion_xl.pipeline_output import StableDiffusionXLPipelineOutput\nfrom diffusers.schedulers import KarrasDiffusionSchedulers\nfrom diffusers.utils import (\n    USE_PEFT_BACKEND,\n    logging,\n    scale_lora_layers,\n    unscale_lora_layers,\n)\nfrom diffusers.utils.import_utils import is_invisible_watermark_available\nfrom diffusers.utils.torch_utils import is_compiled_module, is_torch_version, randn_tensor\nfrom diffusers.pipelines.stable_diffusion.safety_checker import StableDiffusionSafetyChecker\nfrom modules.control.units.xs_model import ControlNetXSModel\n\n\nif is_invisible_watermark_available():\n    from diffusers.pipelines.stable_diffusion_xl.watermark import StableDiffusionXLWatermarker\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\nclass StableDiffusionXLControlNetXSPipeline(\n    DiffusionPipeline, TextualInversionLoaderMixin, StableDiffusionXLLoraLoaderMixin, FromSingleFileMixin\n):\n    r\"\"\"\n    Pipeline for text-to-image generation using Stable Diffusion XL with ControlNet-XS guidance.\n\n    This model inherits from [`DiffusionPipeline`]. Check the superclass documentation for the generic methods\n    implemented for all pipelines (downloading, saving, running on a particular device, etc.).\n\n    The pipeline also inherits the following loading methods:\n        - [`~loaders.TextualInversionLoaderMixin.load_textual_inversion`] for loading textual inversion embeddings\n        - [`~loaders.StableDiffusionXLLoraLoaderMixin.load_lora_weights`] for loading LoRA weights\n        - [`~loaders.StableDiffusionXLLoraLoaderMixin.save_lora_weights`] for saving LoRA weights\n        - [`~loaders.FromSingleFileMixin.from_single_file`] for loading `.ckpt` files\n\n    Args:\n        vae ([`AutoencoderKL`]):\n            Variational Auto-Encoder (VAE) model to encode and decode images to and from latent representations.\n        text_encoder ([`~transformers.CLIPTextModel`]):\n            Frozen text-encoder ([clip-vit-large-patch14](https://huggingface.co/openai/clip-vit-large-patch14)).\n        text_encoder_2 ([`~transformers.CLIPTextModelWithProjection`]):\n            Second frozen text-encoder\n            ([laion/CLIP-ViT-bigG-14-laion2B-39B-b160k](https://huggingface.co/laion/CLIP-ViT-bigG-14-laion2B-39B-b160k)).\n        tokenizer ([`~transformers.CLIPTokenizer`]):\n            A `CLIPTokenizer` to tokenize text.\n        tokenizer_2 ([`~transformers.CLIPTokenizer`]):\n            A `CLIPTokenizer` to tokenize text.\n        unet ([`UNet2DConditionModel`]):\n            A `UNet2DConditionModel` to denoise the encoded image latents.\n        controlnet ([`ControlNetXSModel`]:\n            Provides additional conditioning to the `unet` during the denoising process.\n        scheduler ([`SchedulerMixin`]):\n            A scheduler to be used in combination with `unet` to denoise the encoded image latents. Can be one of\n            [`DDIMScheduler`], [`LMSDiscreteScheduler`], or [`PNDMScheduler`].\n        force_zeros_for_empty_prompt (`bool`, *optional*, defaults to `\"True\"`):\n            Whether the negative prompt embeddings should always be set to 0. Also see the config of\n            `stabilityai/stable-diffusion-xl-base-1-0`.\n        add_watermarker (`bool`, *optional*):\n            Whether to use the [invisible_watermark](https://github.com/ShieldMnt/invisible-watermark/) library to\n            watermark output images. If not defined, it defaults to `True` if the package is installed; otherwise no\n            watermarker is used.\n    \"\"\"\n\n    # leave controlnet out on purpose because it iterates with unet\n    model_cpu_offload_seq = \"text_encoder->text_encoder_2->unet->vae->controlnet\"\n    _optional_components = [\"tokenizer\", \"tokenizer_2\", \"text_encoder\", \"text_encoder_2\"]\n\n    def __init__(\n        self,\n        vae: AutoencoderKL,\n        text_encoder: CLIPTextModel,\n        text_encoder_2: CLIPTextModelWithProjection,\n        tokenizer: CLIPTokenizer,\n        tokenizer_2: CLIPTokenizer,\n        unet: UNet2DConditionModel,\n        controlnet: ControlNetXSModel,\n        scheduler: KarrasDiffusionSchedulers,\n        force_zeros_for_empty_prompt: bool = True,\n        add_watermarker: Optional[bool] = None,\n    ):\n        super().__init__()\n\n        if isinstance(controlnet, list):\n            if len(controlnet) == 1:\n                controlnet = controlnet[0]\n            else:\n                raise ValueError(\n                    \"ControlNetXS pipeline only supports a single ControlNetXS model\"\n                )\n\n        vae_compatible, cnxs_condition_downsample_factor, vae_downsample_factor = controlnet._check_if_vae_compatible(\n            vae\n        )\n        if not vae_compatible:\n            raise ValueError(\n                f\"The downsampling factors of the VAE ({vae_downsample_factor}) and the conditioning part of ControlNetXS model {cnxs_condition_downsample_factor} need to be equal. Consider building the ControlNetXS model with different `conditioning_block_sizes`.\"\n            )\n\n        self.register_modules(\n            vae=vae,\n            text_encoder=text_encoder,\n            text_encoder_2=text_encoder_2,\n            tokenizer=tokenizer,\n            tokenizer_2=tokenizer_2,\n            unet=unet,\n            controlnet=controlnet,\n            scheduler=scheduler,\n        )\n        self.vae_scale_factor = 2 ** (len(self.vae.config.block_out_channels) - 1)\n        self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor, do_convert_rgb=True)\n        self.control_image_processor = VaeImageProcessor(\n            vae_scale_factor=self.vae_scale_factor, do_convert_rgb=True, do_normalize=False\n        )\n        add_watermarker = add_watermarker if add_watermarker is not None else is_invisible_watermark_available()\n\n        if add_watermarker:\n            self.watermark = StableDiffusionXLWatermarker()\n        else:\n            self.watermark = None\n\n        self.register_to_config(force_zeros_for_empty_prompt=force_zeros_for_empty_prompt)\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.enable_vae_slicing\n    def enable_vae_slicing(self):\n        r\"\"\"\n        Enable sliced VAE decoding. When this option is enabled, the VAE will split the input tensor in slices to\n        compute decoding in several steps. This is useful to save some memory and allow larger batch sizes.\n        \"\"\"\n        self.vae.enable_slicing()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.disable_vae_slicing\n    def disable_vae_slicing(self):\n        r\"\"\"\n        Disable sliced VAE decoding. If `enable_vae_slicing` was previously enabled, this method will go back to\n        computing decoding in one step.\n        \"\"\"\n        self.vae.disable_slicing()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.enable_vae_tiling\n    def enable_vae_tiling(self):\n        r\"\"\"\n        Enable tiled VAE decoding. When this option is enabled, the VAE will split the input tensor into tiles to\n        compute decoding and encoding in several steps. This is useful for saving a large amount of memory and to allow\n        processing larger images.\n        \"\"\"\n        self.vae.enable_tiling()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.disable_vae_tiling\n    def disable_vae_tiling(self):\n        r\"\"\"\n        Disable tiled VAE decoding. If `enable_vae_tiling` was previously enabled, this method will go back to\n        computing decoding in one step.\n        \"\"\"\n        self.vae.disable_tiling()\n\n    # Copied from diffusers.pipelines.stable_diffusion_xl.pipeline_stable_diffusion_xl.StableDiffusionXLPipeline.encode_prompt\n    def encode_prompt(\n        self,\n        prompt: str,\n        prompt_2: Optional[str] = None,\n        device: Optional[torch.device] = None,\n        num_images_per_prompt: int = 1,\n        do_classifier_free_guidance: bool = True,\n        negative_prompt: Optional[str] = None,\n        negative_prompt_2: Optional[str] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        lora_scale: Optional[float] = None,\n        clip_skip: Optional[int] = None,\n    ):\n        r\"\"\"\n        Encodes the prompt into text encoder hidden states.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                prompt to be encoded\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders\n            device: (`torch.device`):\n                torch device\n            num_images_per_prompt (`int`):\n                number of images that should be generated per prompt\n            do_classifier_free_guidance (`bool`):\n                whether to use classifier free guidance or not\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            lora_scale (`float`, *optional*):\n                A lora scale that will be applied to all LoRA layers of the text encoder if LoRA layers are loaded.\n            clip_skip (`int`, *optional*):\n                Number of layers to be skipped from CLIP while computing the prompt embeddings. A value of 1 means that\n                the output of the pre-final layer will be used for computing the prompt embeddings.\n        \"\"\"\n        device = device or self._execution_device\n\n        # set lora scale so that monkey patched LoRA\n        # function of text encoder can correctly access it\n        if lora_scale is not None and isinstance(self, StableDiffusionXLLoraLoaderMixin):\n            self._lora_scale = lora_scale\n\n            # dynamically adjust the LoRA scale\n            if self.text_encoder is not None:\n                if not USE_PEFT_BACKEND:\n                    adjust_lora_scale_text_encoder(self.text_encoder, lora_scale)\n                else:\n                    scale_lora_layers(self.text_encoder, lora_scale)\n\n            if self.text_encoder_2 is not None:\n                if not USE_PEFT_BACKEND:\n                    adjust_lora_scale_text_encoder(self.text_encoder_2, lora_scale)\n                else:\n                    scale_lora_layers(self.text_encoder_2, lora_scale)\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n\n        if prompt is not None:\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        # Define tokenizers and text encoders\n        tokenizers = [self.tokenizer, self.tokenizer_2] if self.tokenizer is not None else [self.tokenizer_2]\n        text_encoders = (\n            [self.text_encoder, self.text_encoder_2] if self.text_encoder is not None else [self.text_encoder_2]\n        )\n\n        if prompt_embeds is None:\n            prompt_2 = prompt_2 or prompt\n            prompt_2 = [prompt_2] if isinstance(prompt_2, str) else prompt_2\n\n            # textual inversion: procecss multi-vector tokens if necessary\n            prompt_embeds_list = []\n            prompts = [prompt, prompt_2]\n            for prompt, tokenizer, text_encoder in zip(prompts, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    prompt = self.maybe_convert_prompt(prompt, tokenizer)\n\n                text_inputs = tokenizer(\n                    prompt,\n                    padding=\"max_length\",\n                    max_length=tokenizer.model_max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                text_input_ids = text_inputs.input_ids\n                untruncated_ids = tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n                if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(\n                    text_input_ids, untruncated_ids\n                ):\n                    removed_text = tokenizer.batch_decode(untruncated_ids[:, tokenizer.model_max_length - 1 : -1])\n                    logger.warning(\n                        \"The following part of your input was truncated because CLIP can only handle sequences up to\"\n                        f\" {tokenizer.model_max_length} tokens: {removed_text}\"\n                    )\n\n                prompt_embeds = text_encoder(text_input_ids.to(device), output_hidden_states=True)\n\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                pooled_prompt_embeds = prompt_embeds[0]\n                if clip_skip is None:\n                    prompt_embeds = prompt_embeds.hidden_states[-2]\n                else:\n                    # \"2\" because SDXL always indexes from the penultimate layer.\n                    prompt_embeds = prompt_embeds.hidden_states[-(clip_skip + 2)]\n\n                prompt_embeds_list.append(prompt_embeds)\n\n            prompt_embeds = torch.concat(prompt_embeds_list, dim=-1)\n\n        # get unconditional embeddings for classifier free guidance\n        zero_out_negative_prompt = negative_prompt is None and self.config.force_zeros_for_empty_prompt\n        if do_classifier_free_guidance and negative_prompt_embeds is None and zero_out_negative_prompt:\n            negative_prompt_embeds = torch.zeros_like(prompt_embeds)\n            negative_pooled_prompt_embeds = torch.zeros_like(pooled_prompt_embeds)\n        elif do_classifier_free_guidance and negative_prompt_embeds is None:\n            negative_prompt = negative_prompt or \"\"\n            negative_prompt_2 = negative_prompt_2 or negative_prompt\n\n            # normalize str to list\n            negative_prompt = batch_size * [negative_prompt] if isinstance(negative_prompt, str) else negative_prompt\n            negative_prompt_2 = (\n                batch_size * [negative_prompt_2] if isinstance(negative_prompt_2, str) else negative_prompt_2\n            )\n\n            uncond_tokens: List[str]\n            if prompt is not None and type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n            else:\n                uncond_tokens = [negative_prompt, negative_prompt_2]\n\n            negative_prompt_embeds_list = []\n            for negative_prompt, tokenizer, text_encoder in zip(uncond_tokens, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    negative_prompt = self.maybe_convert_prompt(negative_prompt, tokenizer)\n\n                max_length = prompt_embeds.shape[1]\n                uncond_input = tokenizer(\n                    negative_prompt,\n                    padding=\"max_length\",\n                    max_length=max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                negative_prompt_embeds = text_encoder(\n                    uncond_input.input_ids.to(device),\n                    output_hidden_states=True,\n                )\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                negative_pooled_prompt_embeds = negative_prompt_embeds[0]\n                negative_prompt_embeds = negative_prompt_embeds.hidden_states[-2]\n\n                negative_prompt_embeds_list.append(negative_prompt_embeds)\n\n            negative_prompt_embeds = torch.concat(negative_prompt_embeds_list, dim=-1)\n\n        if self.text_encoder_2 is not None:\n            prompt_embeds = prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n        else:\n            prompt_embeds = prompt_embeds.to(dtype=self.unet.dtype, device=device)\n\n        bs_embed, seq_len, _ = prompt_embeds.shape\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(bs_embed * num_images_per_prompt, seq_len, -1)\n\n        if do_classifier_free_guidance:\n            # duplicate unconditional embeddings for each generation per prompt, using mps friendly method\n            seq_len = negative_prompt_embeds.shape[1]\n\n            if self.text_encoder_2 is not None:\n                negative_prompt_embeds = negative_prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n            else:\n                negative_prompt_embeds = negative_prompt_embeds.to(dtype=self.unet.dtype, device=device)\n\n            negative_prompt_embeds = negative_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds = negative_prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n        pooled_prompt_embeds = pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n            bs_embed * num_images_per_prompt, -1\n        )\n        if do_classifier_free_guidance:\n            negative_pooled_prompt_embeds = negative_pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n                bs_embed * num_images_per_prompt, -1\n            )\n\n        if self.text_encoder is not None:\n            if isinstance(self, StableDiffusionXLLoraLoaderMixin) and USE_PEFT_BACKEND:\n                # Retrieve the original scale by scaling back the LoRA layers\n                unscale_lora_layers(self.text_encoder, lora_scale)\n\n        if self.text_encoder_2 is not None:\n            if isinstance(self, StableDiffusionXLLoraLoaderMixin) and USE_PEFT_BACKEND:\n                # Retrieve the original scale by scaling back the LoRA layers\n                unscale_lora_layers(self.text_encoder_2, lora_scale)\n\n        return prompt_embeds, negative_prompt_embeds, pooled_prompt_embeds, negative_pooled_prompt_embeds\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_extra_step_kwargs\n    def prepare_extra_step_kwargs(self, generator, eta):\n        # prepare extra kwargs for the scheduler step, since not all schedulers have the same signature\n        # eta (η) is only used with the DDIMScheduler, it will be ignored for other schedulers.\n        # eta corresponds to η in DDIM paper: https://arxiv.org/abs/2010.02502\n        # and should be between [0, 1]\n\n        accepts_eta = \"eta\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        extra_step_kwargs = {}\n        if accepts_eta:\n            extra_step_kwargs[\"eta\"] = eta\n\n        # check if the scheduler accepts generator\n        accepts_generator = \"generator\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        if accepts_generator:\n            extra_step_kwargs[\"generator\"] = generator\n        return extra_step_kwargs\n\n    def check_inputs(\n        self,\n        prompt,\n        prompt_2,\n        image,\n        callback_steps,\n        negative_prompt=None,\n        negative_prompt_2=None,\n        prompt_embeds=None,\n        negative_prompt_embeds=None,\n        pooled_prompt_embeds=None,\n        negative_pooled_prompt_embeds=None,\n        controlnet_conditioning_scale=1.0,\n        control_guidance_start=0.0,\n        control_guidance_end=1.0,\n    ):\n        if (callback_steps is None) or (\n            callback_steps is not None and (not isinstance(callback_steps, int) or callback_steps <= 0)\n        ):\n            raise ValueError(\n                f\"`callback_steps` has to be a positive integer but is {callback_steps} of type\"\n                f\" {type(callback_steps)}.\"\n            )\n\n        if prompt is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt_2 is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt_2`: {prompt_2} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n        elif prompt_2 is not None and (not isinstance(prompt_2, str) and not isinstance(prompt_2, list)):\n            raise ValueError(f\"`prompt_2` has to be of type `str` or `list` but is {type(prompt_2)}\")\n\n        if negative_prompt is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n        elif negative_prompt_2 is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt_2`: {negative_prompt_2} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n\n        if prompt_embeds is not None and negative_prompt_embeds is not None:\n            if prompt_embeds.shape != negative_prompt_embeds.shape:\n                raise ValueError(\n                    \"`prompt_embeds` and `negative_prompt_embeds` must have the same shape when passed directly, but\"\n                    f\" got: `prompt_embeds` {prompt_embeds.shape} != `negative_prompt_embeds`\"\n                    f\" {negative_prompt_embeds.shape}.\"\n                )\n\n        if prompt_embeds is not None and pooled_prompt_embeds is None:\n            raise ValueError(\n                \"If `prompt_embeds` are provided, `pooled_prompt_embeds` also have to be passed. Make sure to generate `pooled_prompt_embeds` from the same text encoder that was used to generate `prompt_embeds`.\"\n            )\n\n        if negative_prompt_embeds is not None and negative_pooled_prompt_embeds is None:\n            raise ValueError(\n                \"If `negative_prompt_embeds` are provided, `negative_pooled_prompt_embeds` also have to be passed. Make sure to generate `negative_pooled_prompt_embeds` from the same text encoder that was used to generate `negative_prompt_embeds`.\"\n            )\n\n        # Check `image`\n        is_compiled = hasattr(F, \"scaled_dot_product_attention\") and isinstance(\n            self.controlnet, torch._dynamo.eval_frame.OptimizedModule\n        )\n        if (\n            isinstance(self.controlnet, ControlNetXSModel)\n            or is_compiled\n            and isinstance(self.controlnet._orig_mod, ControlNetXSModel)\n        ):\n            self.check_image(image, prompt, prompt_embeds)\n        else:\n            assert False\n\n        # Check `controlnet_conditioning_scale`\n        if (\n            isinstance(self.controlnet, ControlNetXSModel)\n            or is_compiled\n            and isinstance(self.controlnet._orig_mod, ControlNetXSModel)\n        ):\n            if not isinstance(controlnet_conditioning_scale, float):\n                raise TypeError(\"For single controlnet: `controlnet_conditioning_scale` must be type `float`.\")\n        else:\n            assert False\n\n        start, end = control_guidance_start, control_guidance_end\n        if start >= end:\n            raise ValueError(\n                f\"control guidance start: {start} cannot be larger or equal to control guidance end: {end}.\"\n            )\n        if start < 0.0:\n            raise ValueError(f\"control guidance start: {start} can't be smaller than 0.\")\n        if end > 1.0:\n            raise ValueError(f\"control guidance end: {end} can't be larger than 1.0.\")\n\n    # Copied from diffusers.pipelines.controlnet.pipeline_controlnet.StableDiffusionControlNetPipeline.check_image\n    def check_image(self, image, prompt, prompt_embeds):\n        image_is_pil = isinstance(image, Image.Image)\n        image_is_tensor = isinstance(image, torch.Tensor)\n        image_is_np = isinstance(image, np.ndarray)\n        image_is_pil_list = isinstance(image, list) and isinstance(image[0], Image.Image)\n        image_is_tensor_list = isinstance(image, list) and isinstance(image[0], torch.Tensor)\n        image_is_np_list = isinstance(image, list) and isinstance(image[0], np.ndarray)\n\n        if (\n            not image_is_pil\n            and not image_is_tensor\n            and not image_is_np\n            and not image_is_pil_list\n            and not image_is_tensor_list\n            and not image_is_np_list\n        ):\n            raise TypeError(\n                f\"image must be passed and be one of PIL image, numpy array, torch tensor, list of PIL images, list of numpy arrays or list of torch tensors, but is {type(image)}\"\n            )\n\n        if image_is_pil:\n            image_batch_size = 1\n        else:\n            image_batch_size = len(image)\n\n        if prompt is not None and isinstance(prompt, str):\n            prompt_batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            prompt_batch_size = len(prompt)\n        elif prompt_embeds is not None:\n            prompt_batch_size = prompt_embeds.shape[0]\n\n        if image_batch_size != 1 and image_batch_size != prompt_batch_size:\n            raise ValueError(\n                f\"If image batch size is not 1, image batch size must be same as prompt batch size. image batch size: {image_batch_size}, prompt batch size: {prompt_batch_size}\"\n            )\n\n    def prepare_image(\n        self,\n        image,\n        width,\n        height,\n        batch_size,\n        num_images_per_prompt,\n        device,\n        dtype,\n        do_classifier_free_guidance=False,\n    ):\n        image = self.control_image_processor.preprocess(image, height=height, width=width).to(dtype=torch.float32)\n        image_batch_size = image.shape[0]\n\n        if image_batch_size == 1:\n            repeat_by = batch_size\n        else:\n            # image batch size is the same as prompt batch size\n            repeat_by = num_images_per_prompt\n\n        image = image.repeat_interleave(repeat_by, dim=0)\n\n        image = image.to(device=device, dtype=dtype)\n\n        if do_classifier_free_guidance:\n            image = torch.cat([image] * 2)\n\n        return image\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_latents\n    def prepare_latents(self, batch_size, num_channels_latents, height, width, dtype, device, generator, latents=None):\n        shape = (batch_size, num_channels_latents, height // self.vae_scale_factor, width // self.vae_scale_factor)\n        if isinstance(generator, list) and len(generator) != batch_size:\n            raise ValueError(\n                f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n            )\n\n        if latents is None:\n            latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n        else:\n            latents = latents.to(device)\n\n        # scale the initial noise by the standard deviation required by the scheduler\n        latents = latents * self.scheduler.init_noise_sigma\n        return latents\n\n    # Copied from diffusers.pipelines.stable_diffusion_xl.pipeline_stable_diffusion_xl.StableDiffusionXLPipeline._get_add_time_ids\n    def _get_add_time_ids(\n        self, original_size, crops_coords_top_left, target_size, dtype, text_encoder_projection_dim=None\n    ):\n        add_time_ids = list(original_size + crops_coords_top_left + target_size)\n\n        passed_add_embed_dim = (\n            self.unet.config.addition_time_embed_dim * len(add_time_ids) + text_encoder_projection_dim\n        )\n        expected_add_embed_dim = self.unet.add_embedding.linear_1.in_features\n\n        if expected_add_embed_dim != passed_add_embed_dim:\n            raise ValueError(\n                f\"Model expects an added time embedding vector of length {expected_add_embed_dim}, but a vector of {passed_add_embed_dim} was created. The model has an incorrect config. Please check `unet.config.time_embedding_type` and `text_encoder_2.config.projection_dim`.\"\n            )\n\n        add_time_ids = torch.tensor([add_time_ids], dtype=dtype)\n        return add_time_ids\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion_upscale.StableDiffusionUpscalePipeline.upcast_vae\n    def upcast_vae(self):\n        dtype = self.vae.dtype\n        self.vae.to(dtype=torch.float32)\n        use_torch_2_0_or_xformers = isinstance(\n            self.vae.decoder.mid_block.attentions[0].processor,\n            (\n                AttnProcessor2_0,\n                XFormersAttnProcessor,\n                FusedAttnProcessor2_0,\n            ),\n        )\n        # if xformers or torch_2_0 is used attention block does not need\n        # to be in float32 which can save lots of memory\n        if use_torch_2_0_or_xformers:\n            self.vae.post_quant_conv.to(dtype)\n            self.vae.decoder.conv_in.to(dtype)\n            self.vae.decoder.mid_block.to(dtype)\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.enable_freeu\n    def enable_freeu(self, s1: float, s2: float, b1: float, b2: float):\n        r\"\"\"Enables the FreeU mechanism as in https://arxiv.org/abs/2309.11497.\n\n        The suffixes after the scaling factors represent the stages where they are being applied.\n\n        Please refer to the [official repository](https://github.com/ChenyangSi/FreeU) for combinations of the values\n        that are known to work well for different pipelines such as Stable Diffusion v1, v2, and Stable Diffusion XL.\n\n        Args:\n            s1 (`float`):\n                Scaling factor for stage 1 to attenuate the contributions of the skip features. This is done to\n                mitigate \"oversmoothing effect\" in the enhanced denoising process.\n            s2 (`float`):\n                Scaling factor for stage 2 to attenuate the contributions of the skip features. This is done to\n                mitigate \"oversmoothing effect\" in the enhanced denoising process.\n            b1 (`float`): Scaling factor for stage 1 to amplify the contributions of backbone features.\n            b2 (`float`): Scaling factor for stage 2 to amplify the contributions of backbone features.\n        \"\"\"\n        if not hasattr(self, \"unet\"):\n            raise ValueError(\"The pipeline must have `unet` for using FreeU.\")\n        self.unet.enable_freeu(s1=s1, s2=s2, b1=b1, b2=b2)\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.disable_freeu\n    def disable_freeu(self):\n        \"\"\"Disables the FreeU mechanism if enabled.\"\"\"\n        self.unet.disable_freeu()\n\n    @torch.no_grad()\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        prompt_2: Optional[Union[str, List[str]]] = None,\n        image: PipelineImageInput = None,\n        height: Optional[int] = None,\n        width: Optional[int] = None,\n        num_inference_steps: int = 50,\n        guidance_scale: float = 5.0,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        negative_prompt_2: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        eta: float = 0.0,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.FloatTensor] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        callback: Optional[Callable[[int, int, torch.FloatTensor], None]] = None,\n        callback_steps: int = 1,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        controlnet_conditioning_scale: Union[float, List[float]] = 1.0,\n        control_guidance_start: float = 0.0,\n        control_guidance_end: float = 1.0,\n        original_size: Tuple[int, int] = None,\n        crops_coords_top_left: Tuple[int, int] = (0, 0),\n        target_size: Tuple[int, int] = None,\n        negative_original_size: Optional[Tuple[int, int]] = None,\n        negative_crops_coords_top_left: Tuple[int, int] = (0, 0),\n        negative_target_size: Optional[Tuple[int, int]] = None,\n        clip_skip: Optional[int] = None,\n    ):\n        r\"\"\"\n        The call function to the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide image generation. If not defined, you need to pass `prompt_embeds`.\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders.\n            image (`torch.FloatTensor`, `PIL.Image.Image`, `np.ndarray`, `List[torch.FloatTensor]`, `List[PIL.Image.Image]`, `List[np.ndarray]`,\n                    `List[List[torch.FloatTensor]]`, `List[List[np.ndarray]]` or `List[List[PIL.Image.Image]]`):\n                The ControlNet input condition to provide guidance to the `unet` for generation. If the type is\n                specified as `torch.FloatTensor`, it is passed to ControlNet as is. `PIL.Image.Image` can also be\n                accepted as an image. The dimensions of the output image defaults to `image`'s dimensions. If height\n                and/or width are passed, `image` is resized accordingly. If multiple ControlNets are specified in\n                `init`, images must be passed as a list such that each element of the list can be correctly batched for\n                input to a single ControlNet.\n            height (`int`, *optional*, defaults to `self.unet.config.sample_size * self.vae_scale_factor`):\n                The height in pixels of the generated image. Anything below 512 pixels won't work well for\n                [stabilityai/stable-diffusion-xl-base-1.0](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0)\n                and checkpoints that are not specifically fine-tuned on low resolutions.\n            width (`int`, *optional*, defaults to `self.unet.config.sample_size * self.vae_scale_factor`):\n                The width in pixels of the generated image. Anything below 512 pixels won't work well for\n                [stabilityai/stable-diffusion-xl-base-1.0](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0)\n                and checkpoints that are not specifically fine-tuned on low resolutions.\n            num_inference_steps (`int`, *optional*, defaults to 50):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            guidance_scale (`float`, *optional*, defaults to 5.0):\n                A higher guidance scale value encourages the model to generate images closely linked to the text\n                `prompt` at the expense of lower image quality. Guidance scale is enabled when `guidance_scale > 1`.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide what to not include in image generation. If not defined, you need to\n                pass `negative_prompt_embeds` instead. Ignored when not using guidance (`guidance_scale < 1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide what to not include in image generation. This is sent to `tokenizer_2`\n                and `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders.\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            eta (`float`, *optional*, defaults to 0.0):\n                Corresponds to parameter eta (η) from the [DDIM](https://arxiv.org/abs/2010.02502) paper. Only applies\n                to the [`~schedulers.DDIMScheduler`], and is ignored in other schedulers.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                A [`torch.Generator`](https://pytorch.org/docs/stable/generated/torch.Generator.html) to make\n                generation deterministic.\n            latents (`torch.FloatTensor`, *optional*):\n                Pre-generated noisy latents sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor is generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs (prompt weighting). If not\n                provided, text embeddings are generated from the `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs (prompt weighting). If\n                not provided, `negative_prompt_embeds` are generated from the `negative_prompt` input argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs (prompt weighting). If\n                not provided, pooled text embeddings are generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs (prompt\n                weighting). If not provided, pooled `negative_prompt_embeds` are generated from `negative_prompt` input\n                argument.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generated image. Choose between `PIL.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.stable_diffusion.StableDiffusionPipelineOutput`] instead of a\n                plain tuple.\n            callback (`Callable`, *optional*):\n                A function that calls every `callback_steps` steps during inference. The function is called with the\n                following arguments: `callback(step: int, timestep: int, latents: torch.FloatTensor)`.\n            callback_steps (`int`, *optional*, defaults to 1):\n                The frequency at which the `callback` function is called. If not specified, the callback is called at\n                every step.\n            cross_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the [`AttentionProcessor`] as defined in\n                [`self.processor`](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            controlnet_conditioning_scale (`float` or `List[float]`, *optional*, defaults to 1.0):\n                The outputs of the ControlNet are multiplied by `controlnet_conditioning_scale` before they are added\n                to the residual in the original `unet`.\n            control_guidance_start (`float`, *optional*, defaults to 0.0):\n                The percentage of total steps at which the ControlNet starts applying.\n            control_guidance_end (`float`, *optional*, defaults to 1.0):\n                The percentage of total steps at which the ControlNet stops applying.\n            original_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                If `original_size` is not the same as `target_size` the image will appear to be down- or upsampled.\n                `original_size` defaults to `(width, height)` if not specified. Part of SDXL's micro-conditioning as\n                explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            crops_coords_top_left (`Tuple[int]`, *optional*, defaults to (0, 0)):\n                `crops_coords_top_left` can be used to generate an image that appears to be \"cropped\" from the position\n                `crops_coords_top_left` downwards. Favorable, well-centered images are usually achieved by setting\n                `crops_coords_top_left` to (0, 0). Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            target_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                For most cases, `target_size` should be set to the desired height and width of the generated image. If\n                not specified it will default to `(width, height)`. Part of SDXL's micro-conditioning as explained in\n                section 2.2 of [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            negative_original_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                To negatively condition the generation process based on a specific image resolution. Part of SDXL's\n                micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). For more\n                information, refer to this issue thread: https://github.com/huggingface/diffusers/issues/4208.\n            negative_crops_coords_top_left (`Tuple[int]`, *optional*, defaults to (0, 0)):\n                To negatively condition the generation process based on a specific crop coordinates. Part of SDXL's\n                micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). For more\n                information, refer to this issue thread: https://github.com/huggingface/diffusers/issues/4208.\n            negative_target_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                To negatively condition the generation process based on a target image resolution. It should be as same\n                as the `target_size` for most cases. Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). For more\n                information, refer to this issue thread: https://github.com/huggingface/diffusers/issues/4208.\n            clip_skip (`int`, *optional*):\n                Number of layers to be skipped from CLIP while computing the prompt embeddings. A value of 1 means that\n                the output of the pre-final layer will be used for computing the prompt embeddings.\n\n        Examples:\n\n        Returns:\n            [`~pipelines.stable_diffusion.StableDiffusionXLPipelineOutput`] or `tuple`:\n                If `return_dict` is `True`, [`~pipelines.stable_diffusion.StableDiffusionXLPipelineOutput`] is\n                returned, otherwise a `tuple` is returned containing the output images.\n        \"\"\"\n        controlnet = self.controlnet._orig_mod if is_compiled_module(self.controlnet) else self.controlnet\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            prompt_2,\n            image,\n            callback_steps,\n            negative_prompt,\n            negative_prompt_2,\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n            controlnet_conditioning_scale,\n            control_guidance_start,\n            control_guidance_end,\n        )\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        device = self._execution_device\n        # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2)\n        # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1`\n        # corresponds to doing no classifier free guidance.\n        do_classifier_free_guidance = guidance_scale > 1.0\n\n        # 3. Encode input prompt\n        text_encoder_lora_scale = (\n            cross_attention_kwargs.get(\"scale\", None) if cross_attention_kwargs is not None else None\n        )\n        (\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n        ) = self.encode_prompt(\n            prompt,\n            prompt_2,\n            device,\n            num_images_per_prompt,\n            do_classifier_free_guidance,\n            negative_prompt,\n            negative_prompt_2,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            negative_pooled_prompt_embeds=negative_pooled_prompt_embeds,\n            lora_scale=text_encoder_lora_scale,\n            clip_skip=clip_skip,\n        )\n\n        # 4. Prepare image\n        if isinstance(controlnet, ControlNetXSModel):\n            image = self.prepare_image(\n                image=image,\n                width=width,\n                height=height,\n                batch_size=batch_size * num_images_per_prompt,\n                num_images_per_prompt=num_images_per_prompt,\n                device=device,\n                dtype=controlnet.dtype,\n                do_classifier_free_guidance=do_classifier_free_guidance,\n            )\n            height, width = image.shape[-2:]\n        else:\n            assert False\n\n        # 5. Prepare timesteps\n        self.scheduler.set_timesteps(num_inference_steps, device=device)\n        timesteps = self.scheduler.timesteps\n\n        # 6. Prepare latent variables\n        num_channels_latents = self.unet.config.in_channels\n        latents = self.prepare_latents(\n            batch_size * num_images_per_prompt,\n            num_channels_latents,\n            height,\n            width,\n            prompt_embeds.dtype,\n            device,\n            generator,\n            latents,\n        )\n\n        # 7. Prepare extra step kwargs. Logic should ideally just be moved out of the pipeline\n        extra_step_kwargs = self.prepare_extra_step_kwargs(generator, eta)\n\n        # 7.1 Prepare added time ids & embeddings\n        if isinstance(image, list):\n            original_size = original_size or image[0].shape[-2:]\n        else:\n            original_size = original_size or image.shape[-2:]\n        target_size = target_size or (height, width)\n\n        add_text_embeds = pooled_prompt_embeds\n        if self.text_encoder_2 is None:\n            text_encoder_projection_dim = int(pooled_prompt_embeds.shape[-1])\n        else:\n            text_encoder_projection_dim = self.text_encoder_2.config.projection_dim\n\n        add_time_ids = self._get_add_time_ids(\n            original_size,\n            crops_coords_top_left,\n            target_size,\n            dtype=prompt_embeds.dtype,\n            text_encoder_projection_dim=text_encoder_projection_dim,\n        )\n\n        if negative_original_size is not None and negative_target_size is not None:\n            negative_add_time_ids = self._get_add_time_ids(\n                negative_original_size,\n                negative_crops_coords_top_left,\n                negative_target_size,\n                dtype=prompt_embeds.dtype,\n                text_encoder_projection_dim=text_encoder_projection_dim,\n            )\n        else:\n            negative_add_time_ids = add_time_ids\n\n        if do_classifier_free_guidance:\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds], dim=0)\n            add_text_embeds = torch.cat([negative_pooled_prompt_embeds, add_text_embeds], dim=0)\n            add_time_ids = torch.cat([negative_add_time_ids, add_time_ids], dim=0)\n\n        prompt_embeds = prompt_embeds.to(device)\n        add_text_embeds = add_text_embeds.to(device)\n        add_time_ids = add_time_ids.to(device).repeat(batch_size * num_images_per_prompt, 1)\n\n        # 8. Denoising loop\n        num_warmup_steps = len(timesteps) - num_inference_steps * self.scheduler.order\n        is_unet_compiled = is_compiled_module(self.unet)\n        is_controlnet_compiled = is_compiled_module(self.controlnet)\n        is_torch_higher_equal_2_1 = is_torch_version(\">=\", \"2.1\")\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                # Relevant thread:\n                # https://dev-discuss.pytorch.org/t/cudagraphs-in-pytorch-2-0/1428\n                if (is_unet_compiled and is_controlnet_compiled) and is_torch_higher_equal_2_1:\n                    torch._inductor.cudagraph_mark_step_begin()\n                # expand the latents if we are doing classifier free guidance\n                latent_model_input = torch.cat([latents] * 2) if do_classifier_free_guidance else latents\n                latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n                added_cond_kwargs = {\"text_embeds\": add_text_embeds, \"time_ids\": add_time_ids}\n\n                # predict the noise residual\n                dont_control = (\n                    i / len(timesteps) < control_guidance_start or (i + 1) / len(timesteps) > control_guidance_end\n                )\n                if dont_control:\n                    noise_pred = self.unet(\n                        sample=latent_model_input,\n                        timestep=t,\n                        encoder_hidden_states=prompt_embeds,\n                        cross_attention_kwargs=cross_attention_kwargs,\n                        added_cond_kwargs=added_cond_kwargs,\n                        return_dict=True,\n                    ).sample\n                else:\n                    noise_pred = self.controlnet(\n                        base_model=self.unet,\n                        sample=latent_model_input,\n                        timestep=t,\n                        encoder_hidden_states=prompt_embeds,\n                        controlnet_cond=image,\n                        conditioning_scale=controlnet_conditioning_scale,\n                        cross_attention_kwargs=cross_attention_kwargs,\n                        added_cond_kwargs=added_cond_kwargs,\n                        return_dict=True,\n                    ).sample\n\n                # perform guidance\n                if do_classifier_free_guidance:\n                    noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                    noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents = self.scheduler.step(noise_pred, t, latents, **extra_step_kwargs, return_dict=False)[0]\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n                    if callback is not None and i % callback_steps == 0:\n                        step_idx = i // getattr(self.scheduler, \"order\", 1)\n                        callback(step_idx, t, latents)\n\n        # manually for max memory savings\n        if self.vae.dtype == torch.float16 and self.vae.config.force_upcast:\n            self.upcast_vae()\n            latents = latents.to(next(iter(self.vae.post_quant_conv.parameters())).dtype)\n\n        if output_type != \"latent\":\n            # make sure the VAE is in float32 mode, as it overflows in float16\n            needs_upcasting = self.vae.dtype == torch.float16 and self.vae.config.force_upcast\n\n            if needs_upcasting:\n                self.upcast_vae()\n                latents = latents.to(next(iter(self.vae.post_quant_conv.parameters())).dtype)\n\n            image = self.vae.decode(latents / self.vae.config.scaling_factor, return_dict=False)[0]\n\n            # cast back to fp16 if needed\n            if needs_upcasting:\n                self.vae.to(dtype=torch.float16)\n        else:\n            image = latents\n\n        if output_type != \"latent\":\n            # apply watermark if available\n            if self.watermark is not None:\n                image = self.watermark.apply_watermark(image)\n\n            image = self.image_processor.postprocess(image, output_type=output_type)\n\n        # Offload all models\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return (image,)\n\n        return StableDiffusionXLPipelineOutput(images=image)\n\n\nclass StableDiffusionControlNetXSPipeline(\n    DiffusionPipeline, TextualInversionLoaderMixin, LoraLoaderMixin, FromSingleFileMixin\n):\n    r\"\"\"\n    Pipeline for text-to-image generation using Stable Diffusion with ControlNet-XS guidance.\n\n    This model inherits from [`DiffusionPipeline`]. Check the superclass documentation for the generic methods\n    implemented for all pipelines (downloading, saving, running on a particular device, etc.).\n\n    The pipeline also inherits the following loading methods:\n        - [`~loaders.TextualInversionLoaderMixin.load_textual_inversion`] for loading textual inversion embeddings\n        - [`~loaders.LoraLoaderMixin.load_lora_weights`] for loading LoRA weights\n        - [`~loaders.LoraLoaderMixin.save_lora_weights`] for saving LoRA weights\n        - [`~loaders.FromSingleFileMixin.from_single_file`] for loading `.ckpt` files\n\n    Args:\n        vae ([`AutoencoderKL`]):\n            Variational Auto-Encoder (VAE) model to encode and decode images to and from latent representations.\n        text_encoder ([`~transformers.CLIPTextModel`]):\n            Frozen text-encoder ([clip-vit-large-patch14](https://huggingface.co/openai/clip-vit-large-patch14)).\n        tokenizer ([`~transformers.CLIPTokenizer`]):\n            A `CLIPTokenizer` to tokenize text.\n        unet ([`UNet2DConditionModel`]):\n            A `UNet2DConditionModel` to denoise the encoded image latents.\n        controlnet ([`ControlNetXSModel`]):\n            Provides additional conditioning to the `unet` during the denoising process.\n        scheduler ([`SchedulerMixin`]):\n            A scheduler to be used in combination with `unet` to denoise the encoded image latents. Can be one of\n            [`DDIMScheduler`], [`LMSDiscreteScheduler`], or [`PNDMScheduler`].\n        safety_checker ([`StableDiffusionSafetyChecker`]):\n            Classification module that estimates whether generated images could be considered offensive or harmful.\n            Please refer to the [model card](https://huggingface.co/runwayml/stable-diffusion-v1-5) for more details\n            about a model's potential harms.\n        feature_extractor ([`~transformers.CLIPImageProcessor`]):\n            A `CLIPImageProcessor` to extract features from generated images; used as inputs to the `safety_checker`.\n    \"\"\"\n\n    model_cpu_offload_seq = \"text_encoder->unet->vae>controlnet\"\n    _optional_components = [\"safety_checker\", \"feature_extractor\"]\n    _exclude_from_cpu_offload = [\"safety_checker\"]\n\n    def __init__(\n        self,\n        vae: AutoencoderKL,\n        text_encoder: CLIPTextModel,\n        tokenizer: CLIPTokenizer,\n        unet: UNet2DConditionModel,\n        controlnet: ControlNetXSModel,\n        scheduler: KarrasDiffusionSchedulers,\n        safety_checker: StableDiffusionSafetyChecker,\n        feature_extractor: CLIPImageProcessor,\n        requires_safety_checker: bool = True,\n    ):\n        super().__init__()\n\n        if safety_checker is None and requires_safety_checker:\n            logger.warning(\n                f\"You have disabled the safety checker for {self.__class__} by passing `safety_checker=None`. Ensure\"\n                \" that you abide to the conditions of the Stable Diffusion license and do not expose unfiltered\"\n                \" results in services or applications open to the public. Both the diffusers team and Hugging Face\"\n                \" strongly recommend to keep the safety filter enabled in all public facing circumstances, disabling\"\n                \" it only for use-cases that involve analyzing network behavior or auditing its results. For more\"\n                \" information, please have a look at https://github.com/huggingface/diffusers/pull/254 .\"\n            )\n\n        if safety_checker is not None and feature_extractor is None:\n            raise ValueError(\n                \"Make sure to define a feature extractor when loading {self.__class__} if you want to use the safety\"\n                \" checker. If you do not want to use the safety checker, you can pass `'safety_checker=None'` instead.\"\n            )\n\n        vae_compatible, cnxs_condition_downsample_factor, vae_downsample_factor = controlnet._check_if_vae_compatible(\n            vae\n        )\n        if not vae_compatible:\n            raise ValueError(\n                f\"The downsampling factors of the VAE ({vae_downsample_factor}) and the conditioning part of ControlNetXS model {cnxs_condition_downsample_factor} need to be equal. Consider building the ControlNetXS model with different `conditioning_block_sizes`.\"\n            )\n\n        self.register_modules(\n            vae=vae,\n            text_encoder=text_encoder,\n            tokenizer=tokenizer,\n            unet=unet,\n            controlnet=controlnet,\n            scheduler=scheduler,\n            safety_checker=safety_checker,\n            feature_extractor=feature_extractor,\n        )\n        self.vae_scale_factor = 2 ** (len(self.vae.config.block_out_channels) - 1)\n        self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor, do_convert_rgb=True)\n        self.control_image_processor = VaeImageProcessor(\n            vae_scale_factor=self.vae_scale_factor, do_convert_rgb=True, do_normalize=False\n        )\n        self.register_to_config(requires_safety_checker=requires_safety_checker)\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.enable_vae_slicing\n    def enable_vae_slicing(self):\n        r\"\"\"\n        Enable sliced VAE decoding. When this option is enabled, the VAE will split the input tensor in slices to\n        compute decoding in several steps. This is useful to save some memory and allow larger batch sizes.\n        \"\"\"\n        self.vae.enable_slicing()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.disable_vae_slicing\n    def disable_vae_slicing(self):\n        r\"\"\"\n        Disable sliced VAE decoding. If `enable_vae_slicing` was previously enabled, this method will go back to\n        computing decoding in one step.\n        \"\"\"\n        self.vae.disable_slicing()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.enable_vae_tiling\n    def enable_vae_tiling(self):\n        r\"\"\"\n        Enable tiled VAE decoding. When this option is enabled, the VAE will split the input tensor into tiles to\n        compute decoding and encoding in several steps. This is useful for saving a large amount of memory and to allow\n        processing larger images.\n        \"\"\"\n        self.vae.enable_tiling()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.disable_vae_tiling\n    def disable_vae_tiling(self):\n        r\"\"\"\n        Disable tiled VAE decoding. If `enable_vae_tiling` was previously enabled, this method will go back to\n        computing decoding in one step.\n        \"\"\"\n        self.vae.disable_tiling()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline._encode_prompt\n    def _encode_prompt(\n        self,\n        prompt,\n        device,\n        num_images_per_prompt,\n        do_classifier_free_guidance,\n        negative_prompt=None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        lora_scale: Optional[float] = None,\n        **kwargs,\n    ):\n        prompt_embeds_tuple = self.encode_prompt(\n            prompt=prompt,\n            device=device,\n            num_images_per_prompt=num_images_per_prompt,\n            do_classifier_free_guidance=do_classifier_free_guidance,\n            negative_prompt=negative_prompt,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            lora_scale=lora_scale,\n            **kwargs,\n        )\n\n        # concatenate for backwards comp\n        prompt_embeds = torch.cat([prompt_embeds_tuple[1], prompt_embeds_tuple[0]])\n\n        return prompt_embeds\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.encode_prompt\n    def encode_prompt(\n        self,\n        prompt,\n        device,\n        num_images_per_prompt,\n        do_classifier_free_guidance,\n        negative_prompt=None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        lora_scale: Optional[float] = None,\n        clip_skip: Optional[int] = None,\n    ):\n        r\"\"\"\n        Encodes the prompt into text encoder hidden states.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                prompt to be encoded\n            device: (`torch.device`):\n                torch device\n            num_images_per_prompt (`int`):\n                number of images that should be generated per prompt\n            do_classifier_free_guidance (`bool`):\n                whether to use classifier free guidance or not\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            lora_scale (`float`, *optional*):\n                A LoRA scale that will be applied to all LoRA layers of the text encoder if LoRA layers are loaded.\n            clip_skip (`int`, *optional*):\n                Number of layers to be skipped from CLIP while computing the prompt embeddings. A value of 1 means that\n                the output of the pre-final layer will be used for computing the prompt embeddings.\n        \"\"\"\n        # set lora scale so that monkey patched LoRA\n        # function of text encoder can correctly access it\n        if lora_scale is not None and isinstance(self, LoraLoaderMixin):\n            self._lora_scale = lora_scale\n\n            # dynamically adjust the LoRA scale\n            if not USE_PEFT_BACKEND:\n                adjust_lora_scale_text_encoder(self.text_encoder, lora_scale)\n            else:\n                scale_lora_layers(self.text_encoder, lora_scale)\n\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        if prompt_embeds is None:\n            # textual inversion: procecss multi-vector tokens if necessary\n            if isinstance(self, TextualInversionLoaderMixin):\n                prompt = self.maybe_convert_prompt(prompt, self.tokenizer)\n\n            text_inputs = self.tokenizer(\n                prompt,\n                padding=\"max_length\",\n                max_length=self.tokenizer.model_max_length,\n                truncation=True,\n                return_tensors=\"pt\",\n            )\n            text_input_ids = text_inputs.input_ids\n            untruncated_ids = self.tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n            if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(\n                text_input_ids, untruncated_ids\n            ):\n                removed_text = self.tokenizer.batch_decode(\n                    untruncated_ids[:, self.tokenizer.model_max_length - 1 : -1]\n                )\n                logger.warning(\n                    \"The following part of your input was truncated because CLIP can only handle sequences up to\"\n                    f\" {self.tokenizer.model_max_length} tokens: {removed_text}\"\n                )\n\n            if hasattr(self.text_encoder.config, \"use_attention_mask\") and self.text_encoder.config.use_attention_mask:\n                attention_mask = text_inputs.attention_mask.to(device)\n            else:\n                attention_mask = None\n\n            if clip_skip is None:\n                prompt_embeds = self.text_encoder(text_input_ids.to(device), attention_mask=attention_mask)\n                prompt_embeds = prompt_embeds[0]\n            else:\n                prompt_embeds = self.text_encoder(\n                    text_input_ids.to(device), attention_mask=attention_mask, output_hidden_states=True\n                )\n                # Access the `hidden_states` first, that contains a tuple of\n                # all the hidden states from the encoder layers. Then index into\n                # the tuple to access the hidden states from the desired layer.\n                prompt_embeds = prompt_embeds[-1][-(clip_skip + 1)]\n                # We also need to apply the final LayerNorm here to not mess with the\n                # representations. The `last_hidden_states` that we typically use for\n                # obtaining the final prompt representations passes through the LayerNorm\n                # layer.\n                prompt_embeds = self.text_encoder.text_model.final_layer_norm(prompt_embeds)\n\n        if self.text_encoder is not None:\n            prompt_embeds_dtype = self.text_encoder.dtype\n        elif self.unet is not None:\n            prompt_embeds_dtype = self.unet.dtype\n        else:\n            prompt_embeds_dtype = prompt_embeds.dtype\n\n        prompt_embeds = prompt_embeds.to(dtype=prompt_embeds_dtype, device=device)\n\n        bs_embed, seq_len, _ = prompt_embeds.shape\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(bs_embed * num_images_per_prompt, seq_len, -1)\n\n        # get unconditional embeddings for classifier free guidance\n        if do_classifier_free_guidance and negative_prompt_embeds is None:\n            uncond_tokens: List[str]\n            if negative_prompt is None:\n                uncond_tokens = [\"\"] * batch_size\n            elif prompt is not None and type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif isinstance(negative_prompt, str):\n                uncond_tokens = [negative_prompt]\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n            else:\n                uncond_tokens = negative_prompt\n\n            # textual inversion: procecss multi-vector tokens if necessary\n            if isinstance(self, TextualInversionLoaderMixin):\n                uncond_tokens = self.maybe_convert_prompt(uncond_tokens, self.tokenizer)\n\n            max_length = prompt_embeds.shape[1]\n            uncond_input = self.tokenizer(\n                uncond_tokens,\n                padding=\"max_length\",\n                max_length=max_length,\n                truncation=True,\n                return_tensors=\"pt\",\n            )\n\n            if hasattr(self.text_encoder.config, \"use_attention_mask\") and self.text_encoder.config.use_attention_mask:\n                attention_mask = uncond_input.attention_mask.to(device)\n            else:\n                attention_mask = None\n\n            negative_prompt_embeds = self.text_encoder(\n                uncond_input.input_ids.to(device),\n                attention_mask=attention_mask,\n            )\n            negative_prompt_embeds = negative_prompt_embeds[0]\n\n        if do_classifier_free_guidance:\n            # duplicate unconditional embeddings for each generation per prompt, using mps friendly method\n            seq_len = negative_prompt_embeds.shape[1]\n\n            negative_prompt_embeds = negative_prompt_embeds.to(dtype=prompt_embeds_dtype, device=device)\n\n            negative_prompt_embeds = negative_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds = negative_prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n        if isinstance(self, LoraLoaderMixin) and USE_PEFT_BACKEND:\n            # Retrieve the original scale by scaling back the LoRA layers\n            unscale_lora_layers(self.text_encoder, lora_scale)\n\n        return prompt_embeds, negative_prompt_embeds\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.run_safety_checker\n    def run_safety_checker(self, image, device, dtype):\n        if self.safety_checker is None:\n            has_nsfw_concept = None\n        else:\n            if torch.is_tensor(image):\n                feature_extractor_input = self.image_processor.postprocess(image, output_type=\"pil\")\n            else:\n                feature_extractor_input = self.image_processor.numpy_to_pil(image)\n            safety_checker_input = self.feature_extractor(feature_extractor_input, return_tensors=\"pt\").to(device)\n            image, has_nsfw_concept = self.safety_checker(\n                images=image, clip_input=safety_checker_input.pixel_values.to(dtype)\n            )\n        return image, has_nsfw_concept\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.decode_latents\n    def decode_latents(self, latents):\n        latents = 1 / self.vae.config.scaling_factor * latents\n        image = self.vae.decode(latents, return_dict=False)[0]\n        image = (image / 2 + 0.5).clamp(0, 1)\n        # we always cast to float32 as this does not cause significant overhead and is compatible with bfloat16\n        image = image.cpu().permute(0, 2, 3, 1).float().numpy()\n        return image\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_extra_step_kwargs\n    def prepare_extra_step_kwargs(self, generator, eta):\n        # prepare extra kwargs for the scheduler step, since not all schedulers have the same signature\n        # eta (η) is only used with the DDIMScheduler, it will be ignored for other schedulers.\n        # eta corresponds to η in DDIM paper: https://arxiv.org/abs/2010.02502\n        # and should be between [0, 1]\n\n        accepts_eta = \"eta\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        extra_step_kwargs = {}\n        if accepts_eta:\n            extra_step_kwargs[\"eta\"] = eta\n\n        # check if the scheduler accepts generator\n        accepts_generator = \"generator\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        if accepts_generator:\n            extra_step_kwargs[\"generator\"] = generator\n        return extra_step_kwargs\n\n    def check_inputs(\n        self,\n        prompt,\n        image,\n        callback_steps,\n        negative_prompt=None,\n        prompt_embeds=None,\n        negative_prompt_embeds=None,\n        controlnet_conditioning_scale=1.0,\n        control_guidance_start=0.0,\n        control_guidance_end=1.0,\n    ):\n        if (callback_steps is None) or (\n            callback_steps is not None and (not isinstance(callback_steps, int) or callback_steps <= 0)\n        ):\n            raise ValueError(\n                f\"`callback_steps` has to be a positive integer but is {callback_steps} of type\"\n                f\" {type(callback_steps)}.\"\n            )\n\n        if prompt is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n\n        if negative_prompt is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n\n        if prompt_embeds is not None and negative_prompt_embeds is not None:\n            if prompt_embeds.shape != negative_prompt_embeds.shape:\n                raise ValueError(\n                    \"`prompt_embeds` and `negative_prompt_embeds` must have the same shape when passed directly, but\"\n                    f\" got: `prompt_embeds` {prompt_embeds.shape} != `negative_prompt_embeds`\"\n                    f\" {negative_prompt_embeds.shape}.\"\n                )\n\n        # Check `image`\n        is_compiled = hasattr(F, \"scaled_dot_product_attention\") and isinstance(\n            self.controlnet, torch._dynamo.eval_frame.OptimizedModule\n        )\n        if (\n            isinstance(self.controlnet, ControlNetXSModel)\n            or is_compiled\n            and isinstance(self.controlnet._orig_mod, ControlNetXSModel)\n        ):\n            self.check_image(image, prompt, prompt_embeds)\n        else:\n            assert False\n\n        # Check `controlnet_conditioning_scale`\n        if (\n            isinstance(self.controlnet, ControlNetXSModel)\n            or is_compiled\n            and isinstance(self.controlnet._orig_mod, ControlNetXSModel)\n        ):\n            if not isinstance(controlnet_conditioning_scale, float):\n                raise TypeError(\"For single controlnet: `controlnet_conditioning_scale` must be type `float`.\")\n        else:\n            assert False\n\n        start, end = control_guidance_start, control_guidance_end\n        if start >= end:\n            raise ValueError(\n                f\"control guidance start: {start} cannot be larger or equal to control guidance end: {end}.\"\n            )\n        if start < 0.0:\n            raise ValueError(f\"control guidance start: {start} can't be smaller than 0.\")\n        if end > 1.0:\n            raise ValueError(f\"control guidance end: {end} can't be larger than 1.0.\")\n\n    def check_image(self, image, prompt, prompt_embeds):\n        image_is_pil = isinstance(image, Image.Image)\n        image_is_tensor = isinstance(image, torch.Tensor)\n        image_is_np = isinstance(image, np.ndarray)\n        image_is_pil_list = isinstance(image, list) and isinstance(image[0], Image.Image)\n        image_is_tensor_list = isinstance(image, list) and isinstance(image[0], torch.Tensor)\n        image_is_np_list = isinstance(image, list) and isinstance(image[0], np.ndarray)\n\n        if (\n            not image_is_pil\n            and not image_is_tensor\n            and not image_is_np\n            and not image_is_pil_list\n            and not image_is_tensor_list\n            and not image_is_np_list\n        ):\n            raise TypeError(\n                f\"image must be passed and be one of PIL image, numpy array, torch tensor, list of PIL images, list of numpy arrays or list of torch tensors, but is {type(image)}\"\n            )\n\n        if image_is_pil:\n            image_batch_size = 1\n        else:\n            image_batch_size = len(image)\n\n        if prompt is not None and isinstance(prompt, str):\n            prompt_batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            prompt_batch_size = len(prompt)\n        elif prompt_embeds is not None:\n            prompt_batch_size = prompt_embeds.shape[0]\n\n        if image_batch_size != 1 and image_batch_size != prompt_batch_size:\n            raise ValueError(\n                f\"If image batch size is not 1, image batch size must be same as prompt batch size. image batch size: {image_batch_size}, prompt batch size: {prompt_batch_size}\"\n            )\n\n    def prepare_image(\n        self,\n        image,\n        width,\n        height,\n        batch_size,\n        num_images_per_prompt,\n        device,\n        dtype,\n        do_classifier_free_guidance=False,\n    ):\n        image = self.control_image_processor.preprocess(image, height=height, width=width).to(dtype=torch.float32)\n        image_batch_size = image.shape[0]\n\n        if image_batch_size == 1:\n            repeat_by = batch_size\n        else:\n            # image batch size is the same as prompt batch size\n            repeat_by = num_images_per_prompt\n\n        image = image.repeat_interleave(repeat_by, dim=0)\n\n        image = image.to(device=device, dtype=dtype)\n\n        if do_classifier_free_guidance:\n            image = torch.cat([image] * 2)\n\n        return image\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_latents\n    def prepare_latents(self, batch_size, num_channels_latents, height, width, dtype, device, generator, latents=None):\n        shape = (batch_size, num_channels_latents, height // self.vae_scale_factor, width // self.vae_scale_factor)\n        if isinstance(generator, list) and len(generator) != batch_size:\n            raise ValueError(\n                f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n            )\n\n        if latents is None:\n            latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n        else:\n            latents = latents.to(device)\n\n        # scale the initial noise by the standard deviation required by the scheduler\n        latents = latents * self.scheduler.init_noise_sigma\n        return latents\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.enable_freeu\n    def enable_freeu(self, s1: float, s2: float, b1: float, b2: float):\n        r\"\"\"Enables the FreeU mechanism as in https://arxiv.org/abs/2309.11497.\n\n        The suffixes after the scaling factors represent the stages where they are being applied.\n\n        Please refer to the [official repository](https://github.com/ChenyangSi/FreeU) for combinations of the values\n        that are known to work well for different pipelines such as Stable Diffusion v1, v2, and Stable Diffusion XL.\n\n        Args:\n            s1 (`float`):\n                Scaling factor for stage 1 to attenuate the contributions of the skip features. This is done to\n                mitigate \"oversmoothing effect\" in the enhanced denoising process.\n            s2 (`float`):\n                Scaling factor for stage 2 to attenuate the contributions of the skip features. This is done to\n                mitigate \"oversmoothing effect\" in the enhanced denoising process.\n            b1 (`float`): Scaling factor for stage 1 to amplify the contributions of backbone features.\n            b2 (`float`): Scaling factor for stage 2 to amplify the contributions of backbone features.\n        \"\"\"\n        if not hasattr(self, \"unet\"):\n            raise ValueError(\"The pipeline must have `unet` for using FreeU.\")\n        self.unet.enable_freeu(s1=s1, s2=s2, b1=b1, b2=b2)\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.disable_freeu\n    def disable_freeu(self):\n        \"\"\"Disables the FreeU mechanism if enabled.\"\"\"\n        self.unet.disable_freeu()\n\n    @torch.no_grad()\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        image: PipelineImageInput = None,\n        height: Optional[int] = None,\n        width: Optional[int] = None,\n        num_inference_steps: int = 50,\n        guidance_scale: float = 7.5,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        eta: float = 0.0,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.FloatTensor] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        callback: Optional[Callable[[int, int, torch.FloatTensor], None]] = None,\n        callback_steps: int = 1,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        controlnet_conditioning_scale: Union[float, List[float]] = 1.0,\n        control_guidance_start: float = 0.0,\n        control_guidance_end: float = 1.0,\n        clip_skip: Optional[int] = None,\n    ):\n        r\"\"\"\n        The call function to the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide image generation. If not defined, you need to pass `prompt_embeds`.\n            image (`torch.FloatTensor`, `PIL.Image.Image`, `np.ndarray`, `List[torch.FloatTensor]`, `List[PIL.Image.Image]`, `List[np.ndarray]`,\n                    `List[List[torch.FloatTensor]]`, `List[List[np.ndarray]]` or `List[List[PIL.Image.Image]]`):\n                The ControlNet input condition to provide guidance to the `unet` for generation. If the type is\n                specified as `torch.FloatTensor`, it is passed to ControlNet as is. `PIL.Image.Image` can also be\n                accepted as an image. The dimensions of the output image defaults to `image`'s dimensions. If height\n                and/or width are passed, `image` is resized accordingly. If multiple ControlNets are specified in\n                `init`, images must be passed as a list such that each element of the list can be correctly batched for\n                input to a single ControlNet.\n            height (`int`, *optional*, defaults to `self.unet.config.sample_size * self.vae_scale_factor`):\n                The height in pixels of the generated image.\n            width (`int`, *optional*, defaults to `self.unet.config.sample_size * self.vae_scale_factor`):\n                The width in pixels of the generated image.\n            num_inference_steps (`int`, *optional*, defaults to 50):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            guidance_scale (`float`, *optional*, defaults to 7.5):\n                A higher guidance scale value encourages the model to generate images closely linked to the text\n                `prompt` at the expense of lower image quality. Guidance scale is enabled when `guidance_scale > 1`.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide what to not include in image generation. If not defined, you need to\n                pass `negative_prompt_embeds` instead. Ignored when not using guidance (`guidance_scale < 1`).\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            eta (`float`, *optional*, defaults to 0.0):\n                Corresponds to parameter eta (η) from the [DDIM](https://arxiv.org/abs/2010.02502) paper. Only applies\n                to the [`~schedulers.DDIMScheduler`], and is ignored in other schedulers.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                A [`torch.Generator`](https://pytorch.org/docs/stable/generated/torch.Generator.html) to make\n                generation deterministic.\n            latents (`torch.FloatTensor`, *optional*):\n                Pre-generated noisy latents sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor is generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs (prompt weighting). If not\n                provided, text embeddings are generated from the `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs (prompt weighting). If\n                not provided, `negative_prompt_embeds` are generated from the `negative_prompt` input argument.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generated image. Choose between `PIL.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.stable_diffusion.StableDiffusionPipelineOutput`] instead of a\n                plain tuple.\n            callback (`Callable`, *optional*):\n                A function that calls every `callback_steps` steps during inference. The function is called with the\n                following arguments: `callback(step: int, timestep: int, latents: torch.FloatTensor)`.\n            callback_steps (`int`, *optional*, defaults to 1):\n                The frequency at which the `callback` function is called. If not specified, the callback is called at\n                every step.\n            cross_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the [`AttentionProcessor`] as defined in\n                [`self.processor`](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            controlnet_conditioning_scale (`float` or `List[float]`, *optional*, defaults to 1.0):\n                The outputs of the ControlNet are multiplied by `controlnet_conditioning_scale` before they are added\n                to the residual in the original `unet`. If multiple ControlNets are specified in `init`, you can set\n                the corresponding scale as a list.\n            control_guidance_start (`float` or `List[float]`, *optional*, defaults to 0.0):\n                The percentage of total steps at which the ControlNet starts applying.\n            control_guidance_end (`float` or `List[float]`, *optional*, defaults to 1.0):\n                The percentage of total steps at which the ControlNet stops applying.\n            clip_skip (`int`, *optional*):\n                Number of layers to be skipped from CLIP while computing the prompt embeddings. A value of 1 means that\n                the output of the pre-final layer will be used for computing the prompt embeddings.\n\n        Examples:\n\n        Returns:\n            [`~pipelines.stable_diffusion.StableDiffusionPipelineOutput`] or `tuple`:\n                If `return_dict` is `True`, [`~pipelines.stable_diffusion.StableDiffusionPipelineOutput`] is returned,\n                otherwise a `tuple` is returned where the first element is a list with the generated images and the\n                second element is a list of `bool`s indicating whether the corresponding generated image contains\n                \"not-safe-for-work\" (nsfw) content.\n        \"\"\"\n        controlnet = self.controlnet._orig_mod if is_compiled_module(self.controlnet) else self.controlnet\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            image,\n            callback_steps,\n            negative_prompt,\n            prompt_embeds,\n            negative_prompt_embeds,\n            controlnet_conditioning_scale,\n            control_guidance_start,\n            control_guidance_end,\n        )\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        device = self._execution_device\n        # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2)\n        # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1`\n        # corresponds to doing no classifier free guidance.\n        do_classifier_free_guidance = guidance_scale > 1.0\n\n        # 3. Encode input prompt\n        text_encoder_lora_scale = (\n            cross_attention_kwargs.get(\"scale\", None) if cross_attention_kwargs is not None else None\n        )\n        prompt_embeds, negative_prompt_embeds = self.encode_prompt(\n            prompt,\n            device,\n            num_images_per_prompt,\n            do_classifier_free_guidance,\n            negative_prompt,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            lora_scale=text_encoder_lora_scale,\n            clip_skip=clip_skip,\n        )\n        # For classifier free guidance, we need to do two forward passes.\n        # Here we concatenate the unconditional and text embeddings into a single batch\n        # to avoid doing two forward passes\n        if do_classifier_free_guidance:\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds])\n\n        # 4. Prepare image\n        if isinstance(controlnet, ControlNetXSModel):\n            image = self.prepare_image(\n                image=image,\n                width=width,\n                height=height,\n                batch_size=batch_size * num_images_per_prompt,\n                num_images_per_prompt=num_images_per_prompt,\n                device=device,\n                dtype=controlnet.dtype,\n                do_classifier_free_guidance=do_classifier_free_guidance,\n            )\n            height, width = image.shape[-2:]\n        else:\n            assert False\n\n        # 5. Prepare timesteps\n        self.scheduler.set_timesteps(num_inference_steps, device=device)\n        timesteps = self.scheduler.timesteps\n\n        # 6. Prepare latent variables\n        num_channels_latents = self.unet.config.in_channels\n        latents = self.prepare_latents(\n            batch_size * num_images_per_prompt,\n            num_channels_latents,\n            height,\n            width,\n            prompt_embeds.dtype,\n            device,\n            generator,\n            latents,\n        )\n\n        # 7. Prepare extra step kwargs. Logic should ideally just be moved out of the pipeline\n        extra_step_kwargs = self.prepare_extra_step_kwargs(generator, eta)\n\n        # 8. Denoising loop\n        num_warmup_steps = len(timesteps) - num_inference_steps * self.scheduler.order\n        is_unet_compiled = is_compiled_module(self.unet)\n        is_controlnet_compiled = is_compiled_module(self.controlnet)\n        is_torch_higher_equal_2_1 = is_torch_version(\">=\", \"2.1\")\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                # Relevant thread:\n                # https://dev-discuss.pytorch.org/t/cudagraphs-in-pytorch-2-0/1428\n                if (is_unet_compiled and is_controlnet_compiled) and is_torch_higher_equal_2_1:\n                    torch._inductor.cudagraph_mark_step_begin()\n                # expand the latents if we are doing classifier free guidance\n                latent_model_input = torch.cat([latents] * 2) if do_classifier_free_guidance else latents\n                latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n                # predict the noise residual\n                dont_control = (\n                    i / len(timesteps) < control_guidance_start or (i + 1) / len(timesteps) > control_guidance_end\n                )\n                if dont_control:\n                    noise_pred = self.unet(\n                        sample=latent_model_input,\n                        timestep=t,\n                        encoder_hidden_states=prompt_embeds,\n                        cross_attention_kwargs=cross_attention_kwargs,\n                        return_dict=True,\n                    ).sample\n                else:\n                    noise_pred = self.controlnet(\n                        base_model=self.unet,\n                        sample=latent_model_input,\n                        timestep=t,\n                        encoder_hidden_states=prompt_embeds,\n                        controlnet_cond=image,\n                        conditioning_scale=controlnet_conditioning_scale,\n                        cross_attention_kwargs=cross_attention_kwargs,\n                        return_dict=True,\n                    ).sample\n\n                # perform guidance\n                if do_classifier_free_guidance:\n                    noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                    noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                latents = self.scheduler.step(noise_pred, t, latents, **extra_step_kwargs, return_dict=False)[0]\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n                    if callback is not None and i % callback_steps == 0:\n                        step_idx = i // getattr(self.scheduler, \"order\", 1)\n                        callback(step_idx, t, latents)\n\n        # If we do sequential model offloading, let's offload unet and controlnet\n        # manually for max memory savings\n        if hasattr(self, \"final_offload_hook\") and self.final_offload_hook is not None:\n            self.unet.to(\"cpu\")\n            self.controlnet.to(\"cpu\")\n            torch.cuda.empty_cache()\n\n        if output_type != \"latent\":\n            image = self.vae.decode(latents / self.vae.config.scaling_factor, return_dict=False, generator=generator)[\n                0\n            ]\n            image, has_nsfw_concept = self.run_safety_checker(image, device, prompt_embeds.dtype)\n        else:\n            image = latents\n            has_nsfw_concept = None\n\n        if has_nsfw_concept is None:\n            do_denormalize = [True] * image.shape[0]\n        else:\n            do_denormalize = [not has_nsfw for has_nsfw in has_nsfw_concept]\n\n        image = self.image_processor.postprocess(image, output_type=output_type, do_denormalize=do_denormalize)\n\n        # Offload all models\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return (image, has_nsfw_concept)\n\n        return StableDiffusionXLPipelineOutput(images=image)\n"
  },
  {
    "path": "modules/control/util.py",
    "content": "import os\nimport sys\nimport random\nimport cv2\nimport numpy as np\nimport torch\n\n\nannotator_ckpts_path = os.path.join(os.path.dirname(__file__), 'ckpts')\n\n\ndef dict2str(d: dict):\n    arr = [f'{name} {d[name]}' for i, name in enumerate(d) if d[name] is not None and d[name] != '']\n    return ' | '.join(arr)\n\n\ndef HWC3(x):\n    assert x.dtype == np.uint8\n    if x.ndim == 2:\n        x = x[:, :, None]\n    assert x.ndim == 3\n    _H, _W, C = x.shape\n    assert C == 1 or C == 3 or C == 4\n    if C == 3:\n        return x\n    if C == 1:\n        return np.concatenate([x, x, x], axis=2)\n    if C == 4:\n        color = x[:, :, 0:3].astype(np.float32)\n        alpha = x[:, :, 3:4].astype(np.float32) / 255.0\n        y = color * alpha + 255.0 * (1.0 - alpha)\n        y = y.clip(0, 255).astype(np.uint8)\n        return y\n    return x # should not happen\n\n\ndef make_noise_disk(H, W, C, F):\n    noise = np.random.uniform(low=0, high=1, size=((H // F) + 2, (W // F) + 2, C))\n    noise = cv2.resize(noise, (W + 2 * F, H + 2 * F), interpolation=cv2.INTER_LANCZOS4)\n    noise = noise[F: F + H, F: F + W]\n    noise -= np.min(noise)\n    noise /= np.max(noise)\n    if C == 1:\n        noise = noise[:, :, None]\n    return noise\n\n\ndef nms(x, t, s):\n    x = cv2.GaussianBlur(x.astype(np.float32), (0, 0), s)\n    f1 = np.array([[0, 0, 0], [1, 1, 1], [0, 0, 0]], dtype=np.uint8)\n    f2 = np.array([[0, 1, 0], [0, 1, 0], [0, 1, 0]], dtype=np.uint8)\n    f3 = np.array([[1, 0, 0], [0, 1, 0], [0, 0, 1]], dtype=np.uint8)\n    f4 = np.array([[0, 0, 1], [0, 1, 0], [1, 0, 0]], dtype=np.uint8)\n    y = np.zeros_like(x)\n    for f in [f1, f2, f3, f4]:\n        np.putmask(y, cv2.dilate(x, kernel=f) == x, x)\n    z = np.zeros_like(y, dtype=np.uint8)\n    z[y > t] = 255 # pylint: disable=unsupported-assignment-operation\n    return z\n\ndef min_max_norm(x):\n    x -= np.min(x)\n    x /= np.maximum(np.max(x), 1e-5)\n    return x\n\n\ndef safe_step(x, step=2):\n    y = x.astype(np.float32) * float(step + 1)\n    y = y.astype(np.int32).astype(np.float32) / float(step)\n    return y\n\n\ndef img2mask(img, H, W, low=10, high=90):\n    assert img.ndim == 3 or img.ndim == 2\n    assert img.dtype == np.uint8\n    if img.ndim == 3:\n        y = img[:, :, random.randrange(0, img.shape[2])]\n    else:\n        y = img\n    y = cv2.resize(y, (W, H), interpolation=cv2.INTER_LANCZOS4)\n    if random.uniform(0, 1) < 0.5:\n        y = 255 - y\n    return y < np.percentile(y, random.randrange(low, high))\n\n\ndef resize_image(input_image, resolution):\n    H, W, _C = input_image.shape\n    H = float(H)\n    W = float(W)\n    k = float(resolution) / min(H, W)\n    H *= k\n    W *= k\n    H = int(np.round(H / 64.0)) * 64\n    W = int(np.round(W / 64.0)) * 64\n    img = cv2.resize(input_image, (W, H), interpolation=cv2.INTER_LANCZOS4)\n    return img\n\n\ndef torch_gc():\n    if torch.cuda.is_available():\n        torch.cuda.empty_cache()\n        torch.cuda.ipc_collect()\n\n\ndef ade_palette():\n    \"\"\"ADE20K palette that maps each class to RGB values.\"\"\"\n    return [[120, 120, 120], [180, 120, 120], [6, 230, 230], [80, 50, 50],\n            [4, 200, 3], [120, 120, 80], [140, 140, 140], [204, 5, 255],\n            [230, 230, 230], [4, 250, 7], [224, 5, 255], [235, 255, 7],\n            [150, 5, 61], [120, 120, 70], [8, 255, 51], [255, 6, 82],\n            [143, 255, 140], [204, 255, 4], [255, 51, 7], [204, 70, 3],\n            [0, 102, 200], [61, 230, 250], [255, 6, 51], [11, 102, 255],\n            [255, 7, 71], [255, 9, 224], [9, 7, 230], [220, 220, 220],\n            [255, 9, 92], [112, 9, 255], [8, 255, 214], [7, 255, 224],\n            [255, 184, 6], [10, 255, 71], [255, 41, 10], [7, 255, 255],\n            [224, 255, 8], [102, 8, 255], [255, 61, 6], [255, 194, 7],\n            [255, 122, 8], [0, 255, 20], [255, 8, 41], [255, 5, 153],\n            [6, 51, 255], [235, 12, 255], [160, 150, 20], [0, 163, 255],\n            [140, 140, 140], [250, 10, 15], [20, 255, 0], [31, 255, 0],\n            [255, 31, 0], [255, 224, 0], [153, 255, 0], [0, 0, 255],\n            [255, 71, 0], [0, 235, 255], [0, 173, 255], [31, 0, 255],\n            [11, 200, 200], [255, 82, 0], [0, 255, 245], [0, 61, 255],\n            [0, 255, 112], [0, 255, 133], [255, 0, 0], [255, 163, 0],\n            [255, 102, 0], [194, 255, 0], [0, 143, 255], [51, 255, 0],\n            [0, 82, 255], [0, 255, 41], [0, 255, 173], [10, 0, 255],\n            [173, 255, 0], [0, 255, 153], [255, 92, 0], [255, 0, 255],\n            [255, 0, 245], [255, 0, 102], [255, 173, 0], [255, 0, 20],\n            [255, 184, 184], [0, 31, 255], [0, 255, 61], [0, 71, 255],\n            [255, 0, 204], [0, 255, 194], [0, 255, 82], [0, 10, 255],\n            [0, 112, 255], [51, 0, 255], [0, 194, 255], [0, 122, 255],\n            [0, 255, 163], [255, 153, 0], [0, 255, 10], [255, 112, 0],\n            [143, 255, 0], [82, 0, 255], [163, 255, 0], [255, 235, 0],\n            [8, 184, 170], [133, 0, 255], [0, 255, 92], [184, 0, 255],\n            [255, 0, 31], [0, 184, 255], [0, 214, 255], [255, 0, 112],\n            [92, 255, 0], [0, 224, 255], [112, 224, 255], [70, 184, 160],\n            [163, 0, 255], [153, 0, 255], [71, 255, 0], [255, 0, 163],\n            [255, 204, 0], [255, 0, 143], [0, 255, 235], [133, 255, 0],\n            [255, 0, 235], [245, 0, 255], [255, 0, 122], [255, 245, 0],\n            [10, 190, 212], [214, 255, 0], [0, 204, 255], [20, 0, 255],\n            [255, 255, 0], [0, 153, 255], [0, 41, 255], [0, 255, 204],\n            [41, 0, 255], [41, 255, 0], [173, 0, 255], [0, 245, 255],\n            [71, 0, 255], [122, 0, 255], [0, 255, 184], [0, 92, 255],\n            [184, 255, 0], [0, 133, 255], [255, 214, 0], [25, 194, 194],\n            [102, 255, 0], [92, 0, 255]]\n\n\ndef blend(images):\n    if images is None or len(images) == 0:\n        return images\n    y = np.zeros((images[0].shape[0], images[0].shape[1], 3), dtype=np.float32)\n    for img in images:\n        if img.shape[0] != y.shape[0] or img.shape[1] != y.shape[1]:\n            img = cv2.resize(img, (y.shape[1], y.shape[0]), interpolation=cv2.INTER_LANCZOS4)\n        if len(img.shape) == 3 and img.shape[2] == 4: # rgba to rgb\n            img = cv2.cvtColor(img, cv2.COLOR_RGBA2RGB)\n        if len(img.shape) == 2: # grayscale to rgb\n            img = cv2.cvtColor(img, cv2.COLOR_GRAY2RGB)\n        y = cv2.add(y, img.astype(np.float32))\n    y = y.clip(0, 255).astype(np.uint8)\n    return y\n\n\ndef decode_fourcc(cc):\n    cc_bytes = int(cc).to_bytes(4, byteorder=sys.byteorder) # convert code to a bytearray\n    cc_str = cc_bytes.decode() # decode byteaarray to a string\n    return cc_str\n"
  },
  {
    "path": "modules/detailer.py",
    "content": "from abc import abstractmethod\nfrom modules import shared\n\n\nclass Detailer: # abstract class used for postprocessing\n    def name(self):\n        return \"None\"\n\n    @abstractmethod\n    def restore(self, np_image):\n        return np_image\n\n\ndef detail(np_image, p=None): # postprocesses the image\n    detailers = [x for x in shared.detailers if x.name() == shared.opts.detailer_model or shared.opts.detailer_model is None]\n    if len(detailers) == 0:\n        return np_image\n    detailer: Detailer = detailers[0]\n    return detailer.restore(np_image, p)\n"
  },
  {
    "path": "modules/devices.py",
    "content": "import os\nimport sys\nimport time\nimport contextlib\nimport torch\nfrom modules import rocm, attention\nfrom modules.errors import log, display, install as install_traceback\n\n\ndebug = os.environ.get('SD_DEVICE_DEBUG', None) is not None\ninstall_traceback() # traceback handler\nopts = None # initialized in get_backend to avoid circular import\nargs = None # initialized in get_backend to avoid circular import\ncuda_ok = torch.cuda.is_available() or (hasattr(torch, 'xpu') and torch.xpu.is_available())\ninference_context = torch.no_grad\ncpu = torch.device(\"cpu\")\n\nfp16_ok = None # set once by test_fp16\nbf16_ok = None # set once by test_bf16\ntriton_ok = None # set once by test_triton\n\nbackend = None # set by get_backend\ndevice = None # set by get_optimal_device\ndtype = None # set by set_dtype\ndtype_vae = None\ndtype_unet = None\nunet_needs_upcast = False # compatibility item\nonnx = None\nsdpa_original = None\nsdpa_pre_dyanmic_atten = None\nprevious_oom = 0 # oom counter\nif debug:\n    log.info(f'Torch build config: {torch.__config__.show()}')\n# set_cuda_sync_mode('block') # none/auto/spin/yield/block\n\n\ndef has_mps() -> bool:\n    if sys.platform != \"darwin\":\n        return False\n    else:\n        from modules import devices_mac # pylint: disable=ungrouped-imports\n        return devices_mac.has_mps # pylint: disable=used-before-assignment\n\n\ndef has_xpu() -> bool:\n    return bool(hasattr(torch, 'xpu') and torch.xpu.is_available())\n\n\ndef has_rocm() -> bool:\n    return bool(torch.version.hip is not None and torch.cuda.is_available())\n\n\ndef has_zluda() -> bool:\n    if not cuda_ok:\n        return False\n    try:\n        dev = torch.device(\"cuda\")\n        cc = torch.cuda.get_device_capability(dev)\n        return cc == (8, 8)\n    except Exception:\n        return False\n\n\ndef has_triton(early:bool=False) -> bool:\n    if triton_ok is not None:\n        return triton_ok\n    return test_triton(early=early)\n\n\ndef get_hip_agent() -> rocm.Agent:\n    return rocm.Agent(device)\n\n\ndef get_backend(shared_cmd_opts):\n    global args # pylint: disable=global-statement\n    args = shared_cmd_opts\n    if args.use_openvino:\n        name = 'openvino'\n    elif args.use_directml:\n        name = 'directml'\n    elif has_xpu():\n        name = 'ipex'\n    elif has_zluda():\n        name = 'zluda'\n    elif torch.cuda.is_available() and torch.version.cuda:\n        name = 'cuda'\n    elif torch.cuda.is_available() and torch.version.hip:\n        name = 'rocm'\n    elif sys.platform == 'darwin':\n        name = 'mps'\n    else:\n        name = 'cpu'\n    return name\n\n\ndef get_gpu_info():\n    def get_driver():\n        if torch.xpu.is_available():\n            try:\n                return torch.xpu.get_device_properties(torch.xpu.current_device()).driver_version\n            except Exception:\n                return ''\n        elif torch.cuda.is_available() and torch.version.cuda:\n            try:\n                import subprocess\n                result = subprocess.run('nvidia-smi --query-gpu=driver_version --format=csv,noheader', shell=True, check=False, env=os.environ, stdout=subprocess.PIPE, stderr=subprocess.PIPE)\n                version = result.stdout.decode(encoding=\"utf8\", errors=\"ignore\").strip()\n                return version\n            except Exception:\n                return ''\n        else:\n            return ''\n\n    def get_package_version(pkg: str):\n        import pkg_resources\n        spec = pkg_resources.working_set.by_key.get(pkg, None) # more reliable than importlib\n        version = pkg_resources.get_distribution(pkg).version if spec is not None else None\n        return version\n\n    if not torch.cuda.is_available():\n        try:\n            if backend == 'openvino':\n                from modules.intel.openvino import get_openvino_device\n                return {\n                    'device': get_openvino_device(), # pylint: disable=used-before-assignment\n                    'openvino': get_package_version(\"openvino\"),\n                }\n            elif backend == 'directml':\n                return {\n                    'device': f'{torch.cuda.get_device_name(torch.cuda.current_device())} n={torch.cuda.device_count()}',\n                    'directml': get_package_version(\"torch-directml\"),\n                }\n            else:\n                return {}\n        except Exception:\n            return {}\n    else:\n        try:\n            if backend == 'ipex':\n                return {\n                    'device': f'{torch.xpu.get_device_name(torch.xpu.current_device())} n={torch.xpu.device_count()}',\n                    'ipex': get_package_version('intel-extension-for-pytorch'),\n                    'driver': get_driver(),\n                }\n            elif backend == 'cuda' or backend == 'zluda':\n                return {\n                    'device': f'{torch.cuda.get_device_name(torch.cuda.current_device())} n={torch.cuda.device_count()} arch={torch.cuda.get_arch_list()[-1]} capability={torch.cuda.get_device_capability(device)}',\n                    'cuda': torch.version.cuda,\n                    'cudnn': torch.backends.cudnn.version(),\n                    'driver': get_driver(),\n                }\n            elif backend == 'rocm':\n                return {\n                    'device': f'{torch.cuda.get_device_name(torch.cuda.current_device())} n={torch.cuda.device_count()}',\n                    'hip': torch.version.hip,\n                }\n            else:\n                return {\n                    'device': 'unknown'\n                }\n        except Exception as ex:\n            if debug:\n                display(ex, 'Device exception')\n            return { 'error': ex }\n\n\ndef get_cuda_device_string():\n    from modules.shared import cmd_opts\n    if backend == 'ipex':\n        if cmd_opts.device_id is not None:\n            return f\"xpu:{cmd_opts.device_id}\"\n        return \"xpu\"\n    elif backend == 'directml' and torch.dml.is_available():\n        if cmd_opts.device_id is not None:\n            return f\"privateuseone:{cmd_opts.device_id}\"\n        return torch.dml.get_device_string(torch.dml.default_device().index)\n    else:\n        if cmd_opts.device_id is not None:\n            return f\"cuda:{cmd_opts.device_id}\"\n        return \"cuda\"\n\n\ndef get_optimal_device_name():\n    if backend == 'openvino':\n        return \"cpu\"\n    if cuda_ok or backend == 'directml':\n        return get_cuda_device_string()\n    if has_mps() and backend != 'openvino':\n        return \"mps\"\n    return \"cpu\"\n\n\ndef get_optimal_device():\n    return torch.device(get_optimal_device_name())\n\n\ndef torch_gc(force:bool=False, fast:bool=False, reason:str=None):\n    def get_stats():\n        mem_dict = memstats.memory_stats()\n        gpu_dict = mem_dict.get('gpu', {})\n        ram_dict = mem_dict.get('ram', {})\n        oom = gpu_dict.get('oom', 0)\n        ram = ram_dict.get('used', 0)\n        if backend == \"directml\":\n            gpu = torch.cuda.memory_allocated() / (1 << 30)\n        else:\n            gpu = gpu_dict.get('used', 0)\n        used_gpu = round(100 * gpu / gpu_dict.get('total', 1)) if gpu_dict.get('total', 1) > 1 else 0\n        used_ram = round(100 * ram / ram_dict.get('total', 1)) if ram_dict.get('total', 1) > 1 else 0\n        return gpu, used_gpu, ram, used_ram, oom\n\n    global previous_oom # pylint: disable=global-statement\n    import gc\n    from modules import timer, memstats\n    from modules.shared import cmd_opts\n\n    t0 = time.time()\n    gpu, used_gpu, ram, _used_ram, oom = get_stats()\n    threshold = 0 if (cmd_opts.lowvram and not cmd_opts.use_zluda) else opts.torch_gc_threshold\n    collected = 0\n    if reason is None and force:\n        reason='force'\n    if threshold == 0 or used_gpu >= threshold:\n        force = True\n        if reason is None:\n            reason = 'threshold'\n    if oom > previous_oom:\n        previous_oom = oom\n        log.warning(f'Torch GPU out-of-memory error: {memstats.memory_stats()}')\n        force = True\n        if reason is None:\n            reason = 'oom'\n    if debug:\n        fn = f'{sys._getframe(2).f_code.co_name}:{sys._getframe(1).f_code.co_name}' # pylint: disable=protected-access\n        log.trace(f'GC: run={force} fast={fast} used={used_gpu} threshold={threshold} fn={fn}')\n    if force:\n        # actual gc\n        collected = gc.collect() if not fast else 0 # python gc\n        if cuda_ok:\n            try:\n                with torch.cuda.device(get_cuda_device_string()):\n                    torch.cuda.synchronize()\n                    torch.cuda.empty_cache() # cuda gc\n                    torch.cuda.ipc_collect()\n            except Exception as e:\n                log.error(f'GC: {e}')\n    else:\n        return gpu, ram\n    t1 = time.time()\n    timer.process.add('gc', t1 - t0)\n    if fast:\n        return gpu, ram\n\n    new_gpu, new_used_gpu, new_ram, new_used_ram, oom = get_stats()\n    before = { 'gpu': gpu, 'ram': ram }\n    after = { 'gpu': new_gpu, 'ram': new_ram, 'oom': oom }\n    utilization = { 'gpu': new_used_gpu, 'ram': new_used_ram }\n    results = { 'gpu': round(gpu - new_gpu, 2), 'py': collected }\n    fn = f'{sys._getframe(2).f_code.co_name}:{sys._getframe(1).f_code.co_name}' # pylint: disable=protected-access\n    log.debug(f'GC: current={after} prev={before} load={utilization} gc={results} fn={fn} why={reason} time={t1-t0:.2f}')\n    return new_gpu, new_ram\n\n\ndef set_cuda_sync_mode(mode):\n    \"\"\"\n    Set the CUDA device synchronization mode: auto, spin, yield or block.\n    auto: Chooses spin or yield depending on the number of available CPU cores.\n    spin: Runs one CPU core per GPU at 100% to poll for completed operations.\n    yield: Gives control to other threads between polling, if any are waiting.\n    block: Lets the thread sleep until the GPU driver signals completion.\n    \"\"\"\n    if mode == -1 or mode == 'none' or not cuda_ok:\n        return\n    try:\n        import ctypes\n        log.info(f'Torch CUDA sync: mode={mode}')\n        torch.cuda.set_device(torch.device(get_optimal_device_name()))\n        ctypes.CDLL('libcudart.so').cudaSetDeviceFlags({'auto': 0, 'spin': 1, 'yield': 2, 'block': 4}[mode])\n    except Exception:\n        pass\n\n\ndef set_cuda_memory_limit():\n    if not cuda_ok or opts.cuda_mem_fraction == 0:\n        return\n    try:\n        from modules.shared import cmd_opts\n        torch_gc(force=True, reason='cuda')\n        mem = torch.cuda.get_device_properties(device).total_memory\n        torch.cuda.set_per_process_memory_fraction(float(opts.cuda_mem_fraction), cmd_opts.device_id if cmd_opts.device_id is not None else 0)\n        log.info(f'Torch memory limit: fraction={opts.cuda_mem_fraction:.2f} limit={round(opts.cuda_mem_fraction * mem / 1024 / 1024)} total={round(mem / 1024 / 1024)}')\n    except Exception as e:\n        log.warning(f'Torch memory limit: fraction={opts.cuda_mem_fraction:.2f} {e}')\n\n\ndef set_cuda_tunable():\n    if not cuda_ok:\n        return\n    try:\n        if opts.torch_tunable_ops != 'default':\n            torch.cuda.tunable.enable(opts.torch_tunable_ops == 'true')\n            torch.cuda.tunable.tuning_enable(opts.torch_tunable_ops == 'true')\n            torch.cuda.tunable.set_max_tuning_duration(1000) # set to high value as actual is min(duration, iterations)\n            torch.cuda.tunable.set_max_tuning_iterations(opts.torch_tunable_limit)\n            fn = os.path.join(opts.tunable_dir, 'tunable.csv')\n            lines={0}\n            try:\n                if os.path.exists(fn):\n                    with open(fn, 'r', encoding='utf8') as f:\n                        lines = sum(1 for _line in f)\n            except Exception:\n                pass\n            torch.cuda.tunable.set_filename(fn)\n            if torch.cuda.tunable.is_enabled():\n                log.debug(f'Torch tunable: enabled={torch.cuda.tunable.is_enabled()} tuning={torch.cuda.tunable.tuning_is_enabled()} iterations={torch.cuda.tunable.get_max_tuning_iterations()} duration={torch.cuda.tunable.get_max_tuning_duration()} fn=\"{fn}\" entries={lines}')\n    except Exception as e:\n        log.warning(f'Torch tunable: {e}')\n\n\ndef test_fp16():\n    global fp16_ok # pylint: disable=global-statement\n    if fp16_ok is not None:\n        return fp16_ok\n    if opts.cuda_dtype != 'FP16': # don't override if the user sets it\n        if sys.platform == \"darwin\" or backend in {'openvino', 'cpu'}: # override\n            fp16_ok = False\n            return fp16_ok\n        elif backend == 'rocm':\n            # gfx1102 (RX 7600, 7500, 7650 and 7700S) causes segfaults with fp16\n            # agent can be overriden to gfx1100 to get gfx1102 working with ROCm so check the gpu name as well\n            agent = get_hip_agent()\n            agent_name = getattr(torch.cuda.get_device_properties(device), \"name\", \"AMD Radeon RX 0000\")\n            if agent.gfx_version == 0x1102 or (agent.gfx_version == 0x1100 and any(i in agent_name for i in (\"7600\", \"7500\", \"7650\", \"7700S\"))):\n                fp16_ok = False\n                return fp16_ok\n    try:\n        x = torch.tensor([[1.5,.0,.0,.0]]).to(device=device, dtype=torch.float16)\n        layerNorm = torch.nn.LayerNorm(4, eps=0.00001, elementwise_affine=True, dtype=torch.float16, device=device)\n        out = layerNorm(x)\n        if out.dtype != torch.float16:\n            raise RuntimeError('Torch FP16 test: dtype mismatch')\n        if torch.all(torch.isnan(out)).item():\n            raise RuntimeError('Torch FP16 test: NaN')\n        fp16_ok = True\n    except Exception as ex:\n        log.warning(f'Torch FP16 test fail: {ex}')\n        fp16_ok = False\n    return fp16_ok\n\n\ndef test_bf16():\n    global bf16_ok # pylint: disable=global-statement\n    if bf16_ok is not None:\n        return bf16_ok\n    if opts.cuda_dtype != 'BF16': # don't override if the user sets it\n        if sys.platform == \"darwin\" or backend in {'openvino', 'directml', 'cpu'}: # override\n            bf16_ok = False\n            return bf16_ok\n        elif backend == 'rocm' or backend == 'zluda':\n            agent = None\n            if backend == 'rocm':\n                agent = get_hip_agent()\n            else:\n                from modules.zluda_installer import default_agent\n                agent = default_agent\n            if agent is not None and agent.gfx_version < 0x1100 and agent.arch != rocm.MicroArchitecture.CDNA: # all cards before RDNA 3 except for CDNA cards\n                bf16_ok = False\n                return bf16_ok\n    try:\n        import torch.nn.functional as F\n        image = torch.randn(1, 4, 32, 32).to(device=device, dtype=torch.bfloat16)\n        out = F.interpolate(image, size=(64, 64), mode=\"nearest\")\n        if out.dtype != torch.bfloat16:\n            raise RuntimeError('Torch BF16 test: dtype mismatch')\n        if torch.all(torch.isnan(out)).item():\n            raise RuntimeError('Torch BF16 test: NaN')\n        bf16_ok = True\n    except Exception as ex:\n        log.warning(f'Torch BF16 test fail: {ex}')\n        bf16_ok = False\n    return bf16_ok\n\n\ndef test_triton(early: bool = False):\n    global triton_ok # pylint: disable=global-statement\n    if triton_ok is not None and early:\n        return triton_ok\n    t0 = time.time()\n    try:\n        from torch.utils._triton import has_triton as torch_has_triton\n        if torch_has_triton():\n            if early:\n                return True\n            def test_triton_func(a,b,c):\n                return a * b + c\n            test_triton_func = torch.compile(test_triton_func, fullgraph=True)\n            test_triton_func(torch.randn(16, device=device), torch.randn(16, device=device), torch.randn(16, device=device))\n            triton_ok = True\n        else:\n            triton_ok = False\n    except Exception as e:\n        triton_ok = False\n        line = str(e).splitlines()[0]\n        log.warning(f\"Triton test fail: {line}\")\n        if debug:\n            from modules import errors\n            errors.display(e, 'Triton')\n    t1 = time.time()\n    fn = f'{sys._getframe(2).f_code.co_name}:{sys._getframe(1).f_code.co_name}' # pylint: disable=protected-access\n    log.debug(f'Triton: pass={triton_ok} fn={fn} time={t1-t0:.2f}')\n    if not triton_ok and opts is not None:\n        opts.sdnq_dequantize_compile = False\n    return triton_ok\n\n\ndef set_cudnn_params():\n    if not cuda_ok:\n        return\n    try:\n        torch.backends.cuda.matmul.allow_tf32 = True\n        torch.backends.cuda.matmul.allow_fp16_reduced_precision_reduction = True\n        torch.backends.cuda.matmul.allow_bf16_reduced_precision_reduction = True\n    except Exception as e:\n        log.warning(f'Torch matmul: {e}')\n    if torch.backends.cudnn.is_available():\n        try:\n            if opts.cudnn_enabled != 'default':\n                torch.backends.cudnn.enabled = opts.cudnn_enabled == 'true'\n                log.debug(f'Torch cuDNN: enabled={torch.backends.cudnn.enabled}')\n            torch.backends.cudnn.deterministic = opts.cudnn_deterministic\n            torch.use_deterministic_algorithms(opts.cudnn_deterministic)\n            if opts.cudnn_deterministic:\n                os.environ.setdefault('CUBLAS_WORKSPACE_CONFIG', ':4096:8')\n                log.debug(f'Torch cuDNN: deterministic={opts.cudnn_deterministic}')\n            torch.backends.cudnn.benchmark = opts.cudnn_benchmark\n            if opts.cudnn_benchmark:\n                log.debug(f'Torch cuDNN: benchmark={opts.cudnn_benchmark}')\n            torch.backends.cudnn.benchmark_limit = opts.cudnn_benchmark_limit\n            torch.backends.cudnn.allow_tf32 = True\n        except Exception as e:\n            log.warning(f'Torch cuDNN: {e}')\n\n\ndef override_ipex_math():\n    if backend == \"ipex\":\n        try:\n            if hasattr(torch.xpu, \"set_fp32_math_mode\"): # not available with pure torch+xpu, requires ipex\n                torch.xpu.set_fp32_math_mode(mode=torch.xpu.FP32MathMode.TF32)\n            torch.backends.mkldnn.allow_tf32 = True\n        except Exception as e:\n            log.warning(f'Torch ipex: {e}')\n\n\ndef set_sdpa_params():\n    try:\n        try:\n            global sdpa_original # pylint: disable=global-statement\n            if sdpa_original is not None:\n                torch.nn.functional.scaled_dot_product_attention = sdpa_original\n            else:\n                sdpa_original = torch.nn.functional.scaled_dot_product_attention\n        except Exception as err:\n            log.warning(f'Torch attention: type=\"sdpa\" {err}')\n\n        try:\n            torch.backends.cuda.enable_flash_sdp('Flash' in opts.sdp_options or 'Flash attention' in opts.sdp_options)\n            torch.backends.cuda.enable_mem_efficient_sdp('Memory' in opts.sdp_options or 'Memory attention' in opts.sdp_options)\n            torch.backends.cuda.enable_math_sdp('Math' in opts.sdp_options or 'Math attention' in opts.sdp_options)\n            if hasattr(torch.backends.cuda, \"allow_fp16_bf16_reduction_math_sdp\"): # only valid for torch >= 2.5\n                torch.backends.cuda.allow_fp16_bf16_reduction_math_sdp(True)\n            log.debug(f'Torch attention: type=\"sdpa\" kernels={opts.sdp_options} overrides={opts.sdp_overrides}')\n        except Exception as err:\n            log.warning(f'Torch attention: type=\"sdpa\" {err}')\n\n        # Stack hijcaks in reverse order. This gives priority to the last added hijack.\n        # If the last hijack is not compatible, it will use the one before it and so on.\n\n        if 'Dynamic attention' in opts.sdp_overrides:\n            global sdpa_pre_dyanmic_atten # pylint: disable=global-statement\n            sdpa_pre_dyanmic_atten = attention.set_dynamic_attention()\n\n        if 'Flex attention' in opts.sdp_overrides:\n            attention.set_flex_attention()\n\n        if 'Triton Flash attention' in opts.sdp_overrides:\n            attention.set_triton_flash_attention(backend)\n\n        if 'Flash attention' in opts.sdp_overrides:\n            attention.set_ck_flash_attention(backend, device)\n\n        if 'Sage attention' in opts.sdp_overrides:\n            attention.set_sage_attention(backend, device)\n\n        from importlib.metadata import version\n        try:\n            flash = version('flash-attn')\n        except Exception:\n            flash = False\n        try:\n            sage = version('sageattention')\n        except Exception:\n            sage = False\n        log.debug(f'Torch attention installed: flashattn={flash} sageattention={sage}')\n\n        from diffusers.models import attention_dispatch as a\n        log.debug(f'Torch attention status: flash={a._CAN_USE_FLASH_ATTN} flash3={a._CAN_USE_FLASH_ATTN_3} aiter={a._CAN_USE_AITER_ATTN} sage={a._CAN_USE_SAGE_ATTN} flex={a._CAN_USE_FLEX_ATTN} npu={a._CAN_USE_NPU_ATTN} xla={a._CAN_USE_XLA_ATTN} xformers={a._CAN_USE_XFORMERS_ATTN}') # pylint: disable=protected-access\n\n    except Exception as e:\n        log.warning(f'Torch SDPA: {e}')\n\n\ndef set_dtype():\n    global dtype, dtype_vae, dtype_unet, unet_needs_upcast, inference_context # pylint: disable=global-statement\n    test_fp16()\n    test_bf16()\n    if opts.cuda_dtype == 'Auto': # detect\n        if bf16_ok:\n            dtype = torch.bfloat16\n            dtype_vae = torch.bfloat16\n            dtype_unet = torch.bfloat16\n        elif fp16_ok:\n            dtype = torch.float16\n            dtype_vae = torch.float16\n            dtype_unet = torch.float16\n        else:\n            dtype = torch.float32\n            dtype_vae = torch.float32\n            dtype_unet = torch.float32\n    elif opts.cuda_dtype == 'FP32':\n        dtype = torch.float32\n        dtype_vae = torch.float32\n        dtype_unet = torch.float32\n    elif opts.cuda_dtype == 'BF16':\n        if not bf16_ok:\n            log.warning(f'Torch device capability failed: device={device} dtype={torch.bfloat16}')\n        dtype = torch.bfloat16\n        dtype_vae = torch.bfloat16\n        dtype_unet = torch.bfloat16\n    elif opts.cuda_dtype == 'FP16':\n        if not fp16_ok:\n            log.warning(f'Torch device capability failed: device={device} dtype={torch.float16}')\n        dtype = torch.float16\n        dtype_vae = torch.float16\n        dtype_unet = torch.float16\n\n    if opts.no_half:\n        dtype = torch.float32\n        dtype_vae = torch.float32\n        dtype_unet = torch.float32\n        log.info(f'Torch override: no-half dtype={dtype}')\n    if opts.no_half_vae:\n        dtype_vae = torch.float32\n        log.info(f'Torch override: no-half-vae dtype={dtype_vae}')\n    unet_needs_upcast = opts.upcast_sampling\n    if opts.inference_mode == 'inference-mode':\n        inference_context = torch.inference_mode\n    elif opts.inference_mode == 'none':\n        inference_context = contextlib.nullcontext\n    else:\n        inference_context = torch.no_grad\n\n\ndef set_cuda_params():\n    override_ipex_math()\n    set_cuda_memory_limit()\n    set_cuda_tunable()\n    set_cudnn_params()\n    set_sdpa_params()\n    set_dtype()\n    test_triton()\n    if backend == 'openvino':\n        from modules.intel.openvino import get_device as get_raw_openvino_device\n        device_name = get_raw_openvino_device()\n    else:\n        device_name = torch.device(get_optimal_device_name())\n    try:\n        # tunable = torch._C._jit_get_tunable_op_enabled() # pylint: disable=protected-access\n        tunable = [torch.cuda.tunable.is_enabled(), torch.cuda.tunable.tuning_is_enabled()]\n    except Exception:\n        tunable = [False, False]\n    log.info(f'Torch parameters: backend={backend} device={device_name} config={opts.cuda_dtype} dtype={dtype} context={inference_context.__name__} nohalf={opts.no_half} nohalfvae={opts.no_half_vae} upcast={opts.upcast_sampling} deterministic={opts.cudnn_deterministic} tunable={tunable} fp16={\"pass\" if fp16_ok else \"fail\"} bf16={\"pass\" if bf16_ok else \"fail\"} triton={\"pass\" if triton_ok else \"fail\"} optimization=\"{opts.cross_attention_optimization}\"')\n\n\ndef randn(seed, shape=None):\n    torch.manual_seed(seed)\n    if backend == 'ipex':\n        torch.xpu.manual_seed_all(seed)\n    if shape is None:\n        return None\n    if device.type == 'mps':\n        return torch.randn(shape, device=cpu).to(device)\n    elif opts.diffusers_generator_device == \"CPU\":\n        return torch.randn(shape, device=cpu)\n    else:\n        return torch.randn(shape, device=device)\n\n\ndef randn_without_seed(shape):\n    if device.type == 'mps':\n        return torch.randn(shape, device=cpu).to(device)\n    return torch.randn(shape, device=device)\n\n\ndef autocast(disable=False):\n    if disable or dtype == torch.float32:\n        return contextlib.nullcontext()\n    if backend == 'directml':\n        return torch.dml.amp.autocast(dtype)\n    if cuda_ok:\n        return torch.autocast(\"cuda\")\n    else:\n        return torch.autocast(\"cpu\")\n\n\ndef without_autocast(disable=False):\n    if disable:\n        return contextlib.nullcontext()\n    if backend == 'directml':\n        return torch.dml.amp.autocast(enabled=False) if torch.is_autocast_enabled() else contextlib.nullcontext() # pylint: disable=unexpected-keyword-arg\n    if cuda_ok:\n        return torch.autocast(\"cuda\", enabled=False) if torch.is_autocast_enabled() else contextlib.nullcontext()\n    else:\n        return torch.autocast(\"cpu\", enabled=False) if torch.is_autocast_enabled() else contextlib.nullcontext()\n\n\nclass NansException(Exception):\n    pass\n\n\ndef test_for_nans(x, where):\n    if opts.disable_nan_check:\n        return\n    if not torch.all(torch.isnan(x)).item():\n        return\n    if where == \"unet\":\n        message = \"A tensor with all NaNs was produced in Unet.\"\n        if not opts.no_half:\n            message += \" This could be either because there's not enough precision to represent the picture, or because your video card does not support half type. Try setting the \\\"Upcast cross attention layer to float32\\\" option in Settings > Stable Diffusion or using the --no-half commandline argument to fix this.\"\n    elif where == \"vae\":\n        message = \"A tensor with all NaNs was produced in VAE.\"\n        if not opts.no_half and not opts.no_half_vae:\n            message += \" This could be because there's not enough precision to represent the picture. Try adding --no-half-vae commandline argument to fix this.\"\n    else:\n        message = \"A tensor with all NaNs was produced.\"\n    message += \" Use --disable-nan-check commandline argument to disable this check.\"\n    raise NansException(message)\n\n\ndef normalize_device(dev):\n    if torch.device(dev).type in {\"cpu\", \"mps\", \"meta\"}:\n        return torch.device(dev)\n    if torch.device(dev).index is None:\n        return torch.device(str(dev), index=0)\n    return torch.device(dev)\n\n\ndef same_device(d1, d2):\n    if torch.device(d1).type != torch.device(d2).type:\n        return False\n    return normalize_device(d1) == normalize_device(d2)\n"
  },
  {
    "path": "modules/devices_mac.py",
    "content": "import platform\nfrom packaging import version\nimport torch\nfrom modules.sd_hijack_utils import CondFunc\n\n\ncumsum_needs_int_fix = False\n# has_mps is only available in nightly pytorch (for now) and macOS 12.3+.\n# check `getattr` and try it for compatibility\ndef check_for_mps() -> bool:\n    if not getattr(torch, 'has_mps', False):\n        return False\n    try:\n        torch.zeros(1).to(torch.device(\"mps\"))\n        return True\n    except Exception:\n        return False\nhas_mps = check_for_mps()\n\n\n# MPS workaround for https://github.com/pytorch/pytorch/issues/89784\ndef cumsum_fix(input, cumsum_func, *args, **kwargs): # pylint: disable=redefined-builtin\n    if input.device.type == 'mps':\n        output_dtype = kwargs.get('dtype', input.dtype)\n        if output_dtype == torch.int64:\n            return cumsum_func(input.cpu(), *args, **kwargs).to(input.device)\n        elif output_dtype == torch.bool or (cumsum_needs_int_fix and (output_dtype == torch.int8 or output_dtype == torch.int16)):\n            return cumsum_func(input.to(torch.int32), *args, **kwargs).to(torch.int64)\n    return cumsum_func(input, *args, **kwargs)\n\n\nif has_mps:\n    # MPS fix for randn in torchsde\n    CondFunc('torchsde._brownian.brownian_interval._randn', lambda _, size, dtype, device, seed: torch.randn(size, dtype=dtype, device=torch.device(\"cpu\"), generator=torch.Generator(torch.device(\"cpu\")).manual_seed(int(seed))).to(device), lambda _, size, dtype, device, seed: device.type == 'mps')\n\n    if platform.mac_ver()[0].startswith(\"13.2.\"):\n        # MPS workaround for https://github.com/pytorch/pytorch/issues/95188, thanks to danieldk (https://github.com/explosion/curated-transformers/pull/124)\n        CondFunc('torch.nn.functional.linear', lambda _, input, weight, bias: (torch.matmul(input, weight.t()) + bias) if bias is not None else torch.matmul(input, weight.t()), lambda _, input, weight, bias: input.numel() > 10485760)\n\n    if version.parse(torch.__version__) < version.parse(\"1.13\"):\n        # PyTorch 1.13 doesn't need these fixes but unfortunately is slower and has regressions that prevent training from working\n\n        # MPS workaround for https://github.com/pytorch/pytorch/issues/79383\n        CondFunc('torch.Tensor.to', lambda orig_func, self, *args, **kwargs: orig_func(self.contiguous(), *args, **kwargs),\n                                                          lambda _, self, *args, **kwargs: self.device.type != 'mps' and ((args and isinstance(args[0], torch.device) and args[0].type == 'mps') or (isinstance(kwargs.get('device'), torch.device) and kwargs['device'].type == 'mps')))\n        # MPS workaround for https://github.com/pytorch/pytorch/issues/80800\n        CondFunc('torch.nn.functional.layer_norm', lambda orig_func, *args, **kwargs: orig_func(*([args[0].contiguous()] + list(args[1:])), **kwargs),\n                                                                                        lambda _, *args, **kwargs: args and isinstance(args[0], torch.Tensor) and args[0].device.type == 'mps')\n        # MPS workaround for https://github.com/pytorch/pytorch/issues/90532\n        CondFunc('torch.Tensor.numpy', lambda orig_func, self, *args, **kwargs: orig_func(self.detach(), *args, **kwargs), lambda _, self, *args, **kwargs: self.requires_grad)\n    elif version.parse(torch.__version__) > version.parse(\"1.13.1\"):\n        cumsum_needs_int_fix = not torch.Tensor([1,2]).to(torch.device(\"mps\")).equal(torch.ShortTensor([1,1]).to(torch.device(\"mps\")).cumsum(0))\n        cumsum_fix_func = lambda orig_func, input, *args, **kwargs: cumsum_fix(input, orig_func, *args, **kwargs) # pylint: disable=unnecessary-lambda-assignment\n        CondFunc('torch.cumsum', cumsum_fix_func, None)\n        CondFunc('torch.Tensor.cumsum', cumsum_fix_func, None)\n        CondFunc('torch.narrow', lambda orig_func, *args, **kwargs: orig_func(*args, **kwargs).clone(), None)\n\n        # MPS workaround for https://github.com/pytorch/pytorch/issues/96113\n        CondFunc('torch.nn.functional.layer_norm', lambda orig_func, x, normalized_shape, weight, bias, eps, **kwargs: orig_func(x.float(), normalized_shape, weight.float() if weight is not None else None, bias.float() if bias is not None else bias, eps).to(x.dtype), lambda _, input, *args, **kwargs: len(args) == 4 and input.device.type == 'mps')\n\n        # MPS workaround for https://github.com/pytorch/pytorch/issues/92311\n        if platform.processor() == 'i386':\n            for funcName in ['torch.argmax', 'torch.Tensor.argmax']:\n                CondFunc(funcName, lambda _, input, *args, **kwargs: torch.max(input.float() if input.dtype == torch.int64 else input, *args, **kwargs)[1], lambda _, input, *args, **kwargs: input.device.type == 'mps')\n"
  },
  {
    "path": "modules/dml/Generator.py",
    "content": "from typing import Optional\nimport torch\n\n\nclass Generator(torch.Generator):\n    def __init__(self, device: Optional[torch.device] = None):\n        super().__init__(\"cpu\")\n"
  },
  {
    "path": "modules/dml/__init__.py",
    "content": "import platform\nfrom typing import NamedTuple, Callable, Optional\nimport torch\nfrom modules.errors import log\nfrom modules.sd_hijack_utils import CondFunc\n\n\nmemory_providers = [\"None\", \"atiadlxx (AMD only)\"]\ndefault_memory_provider = \"None\"\nif platform.system() == \"Windows\":\n    memory_providers.append(\"Performance Counter\")\n    default_memory_provider = \"Performance Counter\"\ndo_nothing = lambda: None # pylint: disable=unnecessary-lambda-assignment\ndo_nothing_with_self = lambda self: None # pylint: disable=unnecessary-lambda-assignment\n\n\ndef _set_memory_provider():\n    from modules.shared import opts, cmd_opts\n    if opts.directml_memory_provider == \"Performance Counter\":\n        from .backend import pdh_mem_get_info\n        from .memory import MemoryProvider\n        torch.dml.mem_get_info = pdh_mem_get_info\n        if torch.dml.memory_provider is not None:\n            del torch.dml.memory_provider\n        torch.dml.memory_provider = MemoryProvider()\n    elif opts.directml_memory_provider == \"atiadlxx (AMD only)\":\n        device_name = torch.dml.get_device_name(cmd_opts.device_id)\n        if \"AMD\" not in device_name and \"Radeon\" not in device_name:\n            log.warning(f\"Memory stats provider is changed to None because the current device is not AMDGPU. Current Device: {device_name}\")\n            opts.directml_memory_provider = \"None\"\n            _set_memory_provider()\n            return\n        from .backend import amd_mem_get_info\n        torch.dml.mem_get_info = amd_mem_get_info\n    else:\n        from .backend import mem_get_info\n        torch.dml.mem_get_info = mem_get_info\n    torch.cuda.mem_get_info = torch.dml.mem_get_info\n\n\ndef directml_init():\n    try:\n        from modules.dml.backend import DirectML # pylint: disable=ungrouped-imports\n        # Alternative of torch.cuda for DirectML.\n        torch.dml = DirectML\n\n        torch.cuda.is_available = lambda: False\n        torch.cuda.device = torch.dml.device\n        torch.cuda.device_count = torch.dml.device_count\n        torch.cuda.current_device = torch.dml.current_device\n        torch.cuda.get_device_name = torch.dml.get_device_name\n        torch.cuda.get_device_properties = torch.dml.get_device_properties\n\n        torch.cuda.empty_cache = do_nothing\n        torch.cuda.ipc_collect = do_nothing\n        torch.cuda.memory_stats = torch.dml.memory_stats\n        torch.cuda.mem_get_info = torch.dml.mem_get_info\n        torch.cuda.memory_allocated = torch.dml.memory_allocated\n        torch.cuda.max_memory_allocated = torch.dml.max_memory_allocated\n        torch.cuda.reset_peak_memory_stats = torch.dml.reset_peak_memory_stats\n        torch.cuda.utilization = lambda: 0\n\n        torch.Tensor.directml = lambda self: self.to(torch.dml.current_device())\n    except Exception as e:\n        log.error(f'DirectML initialization failed: {e}')\n        return False, e\n    return True, None\n\n\ndef directml_do_hijack():\n    import modules.dml.hijack # pylint: disable=unused-import\n    from modules.devices import device\n\n    CondFunc('torch.Generator',\n        lambda orig_func, device = None: orig_func(\"cpu\"),\n        lambda orig_func, device = None: True)\n\n    if not torch.dml.has_float64_support(device):\n        torch.Tensor.__str__ = do_nothing_with_self\n        CondFunc('torch.from_numpy',\n            lambda orig_func, *args, **kwargs: orig_func(args[0].astype('float32')),\n            lambda *args, **kwargs: args[1].dtype == float)\n\n    _set_memory_provider()\n\n\nclass OverrideItem(NamedTuple):\n    value: str\n    condition: Optional[Callable]\n    message: Optional[str]\n\n\nopts_override_table = {\n    \"diffusers_generator_device\": OverrideItem(\"CPU\", None, \"DirectML does not support torch Generator API\"),\n}\n\n\ndef directml_override_opts():\n    from modules import shared\n\n    if shared.cmd_opts.experimental:\n        return\n\n    count = 0\n    for key in opts_override_table:\n        item = opts_override_table[key]\n        if getattr(shared.opts, key) != item.value and (item.condition is None or item.condition(shared.opts)):\n            count += 1\n            setattr(shared.opts, key, item.value)\n            shared.log.warning(f'Overriding: {key}={item.value} {item.message if item.message is not None else \"\"}')\n\n    if count > 0:\n        shared.log.info(f'Options override: count={count}. If you want to keep them from overriding, run with --experimental argument.')\n\n    _set_memory_provider()\n"
  },
  {
    "path": "modules/dml/amp/__init__.py",
    "content": "from .autocast_mode import autocast\n"
  },
  {
    "path": "modules/dml/amp/autocast_mode.py",
    "content": "import importlib\nfrom typing import Any, Optional\nimport torch\n\n\nops = [\"torch.Tensor.__matmul__\", \"torch.addbmm\", \"torch.addmm\", \"torch.addmv\", \"torch.addr\", \"torch.baddbmm\", \"torch.bmm\", \"torch.chain_matmul\", \"torch.linalg.multi_dot\", \"torch.nn.functional.conv1d\", \"torch.nn.functional.conv2d\", \"torch.nn.functional.conv3d\", \"torch.nn.functional.conv_transpose1d\", \"torch.nn.functional.conv_transpose2d\", \"torch.nn.functional.conv_transpose3d\", \"torch.nn.GRUCell\", \"torch.nn.functional.linear\", \"torch.nn.LSTMCell\", \"torch.matmul\", \"torch.mm\", \"torch.mv\", \"torch.prelu\", \"torch.nn.RNNCell\", \"torch.embedding\"]\nsupported_cast_pairs = {\n    torch.float16: (torch.float32,),\n    torch.float32: (torch.float16,),\n}\n\n\ndef forward(op, args: tuple, kwargs: dict):\n    if not torch.dml.is_autocast_enabled:\n        return op(*args, **kwargs)\n    args = list(map(cast, args))\n    for kwarg in kwargs:\n        kwargs[kwarg] = cast(kwargs[kwarg])\n    return op(*args, **kwargs)\n\n\ndef cast(tensor: torch.Tensor):\n    if not torch.is_tensor(tensor):\n        return tensor\n    dtype: torch.dtype = tensor.dtype\n    if dtype not in supported_cast_pairs or (torch.dml.autocast_gpu_dtype != dtype and torch.dml.autocast_gpu_dtype not in supported_cast_pairs[dtype]):\n        return tensor\n    return tensor.type(torch.dml.autocast_gpu_dtype)\n\n\ndef cond(op: str):\n    if isinstance(op, str):\n        func_path = op.split('.')\n        for i in range(len(func_path)-1, -1, -1):\n            try:\n                resolved_obj = importlib.import_module('.'.join(func_path[:i]))\n                break\n            except ImportError:\n                pass\n        for attr_name in func_path[i:-1]:\n            resolved_obj = getattr(resolved_obj, attr_name)\n        op = getattr(resolved_obj, func_path[-1])\n        setattr(resolved_obj, func_path[-1], lambda *args, **kwargs: forward(op, args, kwargs))\n\n\nfor o in ops:\n    cond(o)\n\n\nclass autocast:\n    prev: bool\n\n    fast_dtype: torch.dtype = torch.float16\n    prev_fast_dtype: torch.dtype\n    def __init__(self, dtype: Optional[torch.dtype] = torch.float16):\n        self.fast_dtype = dtype\n\n    def __enter__(self):\n        self.prev = torch.dml.is_autocast_enabled\n        self.prev_fast_dtype = torch.dml.autocast_gpu_dtype\n        torch.dml.is_autocast_enabled = True\n        torch.dml.autocast_gpu_dtype = self.fast_dtype\n\n    def __exit__(self, exc_type: Any, exc_val: Any, exc_tb: Any):\n        torch.dml.is_autocast_enabled = self.prev\n        torch.dml.autocast_gpu_dtype = self.prev_fast_dtype\n"
  },
  {
    "path": "modules/dml/backend.py",
    "content": "# pylint: disable=no-member,no-self-argument,no-method-argument\nfrom typing import Optional, Callable\nimport torch\nimport torch_directml # pylint: disable=import-error\nimport modules.dml.amp as amp\nfrom .utils import rDevice, get_device\nfrom .device import Device\nfrom .Generator import Generator\nfrom .device_properties import DeviceProperties\n\n\ndef amd_mem_get_info(device: Optional[rDevice]=None) -> tuple[int, int]:\n    from .memory_amd import AMDMemoryProvider\n    return AMDMemoryProvider.mem_get_info(get_device(device).index)\n\n\ndef pdh_mem_get_info(device: Optional[rDevice]=None) -> tuple[int, int]:\n    mem_info = DirectML.memory_provider.get_memory(get_device(device).index)\n    return (mem_info[\"total_committed\"] - mem_info[\"dedicated_usage\"], mem_info[\"total_committed\"])\n\n\ndef mem_get_info(device: Optional[rDevice]=None) -> tuple[int, int]: # pylint: disable=unused-argument\n    return (8589934592, 8589934592)\n\n\nclass DirectML:\n    amp = amp\n    device = Device\n    Generator = Generator\n\n    context_device: Optional[torch.device] = None\n\n    is_autocast_enabled = False\n    autocast_gpu_dtype = torch.float16\n\n    memory_provider = None\n\n    def is_available() -> bool:\n        return torch_directml.is_available()\n\n    def is_directml_device(device: torch.device) -> bool:\n        return device.type == \"privateuseone\"\n\n    def has_float64_support(device: Optional[rDevice]=None) -> bool:\n        return torch_directml.has_float64_support(get_device(device).index)\n\n    def device_count() -> int:\n        return torch_directml.device_count()\n\n    def current_device() -> torch.device:\n        return DirectML.context_device or DirectML.default_device()\n\n    def default_device() -> torch.device:\n        return torch_directml.device(torch_directml.default_device())\n\n    def get_device_string(device: Optional[rDevice]=None) -> str:\n        return f\"privateuseone:{get_device(device).index}\"\n\n    def get_device_name(device: Optional[rDevice]=None) -> str:\n        return torch_directml.device_name(get_device(device).index)\n\n    def get_device_properties(device: Optional[rDevice]=None) -> DeviceProperties:\n        return DeviceProperties(get_device(device))\n\n    def memory_stats(device: Optional[rDevice]=None):\n        return {\n            \"num_ooms\": 0,\n            \"num_alloc_retries\": 0,\n        }\n\n    mem_get_info: Callable = mem_get_info\n\n    def memory_allocated(device: Optional[rDevice]=None) -> int:\n        return sum(torch_directml.gpu_memory(get_device(device).index)) * (1 << 20)\n\n    def max_memory_allocated(device: Optional[rDevice]=None):\n        return DirectML.memory_allocated(device) # DirectML does not empty GPU memory\n\n    def reset_peak_memory_stats(device: Optional[rDevice]=None):\n        return\n"
  },
  {
    "path": "modules/dml/device.py",
    "content": "from typing import Optional\nimport torch\nfrom .utils import rDevice, get_device\n\n\nclass Device:\n    idx: int\n\n    def __enter__(self, device: Optional[rDevice]=None):\n        torch.dml.context_device = get_device(device)\n        self.idx = torch.dml.context_device.index\n\n    def __init__(self, device: Optional[rDevice]=None) -> torch.device: # pylint: disable=return-in-init\n        self.idx = get_device(device).index\n\n    def __exit__(self, t, v, tb):\n        torch.dml.context_device = None\n"
  },
  {
    "path": "modules/dml/device_properties.py",
    "content": "import torch\n\n\nclass DeviceProperties:\n    type: str = \"directml\"\n    name: str\n    major: int = 0\n    minor: int = 0\n    total_memory: int\n    multi_processor_count: int = 1\n\n    def __init__(self, device: torch.device):\n        self.name = torch.dml.get_device_name(device)\n        self.total_memory = torch.dml.mem_get_info(device)[0]\n\n    def __str__(self):\n        return f\"DeviceProperties(name='{self.name}', total_memory='{self.total_memory}')\"\n\n    def __repr__(self):\n        return f\"DeviceProperties(name='{self.name}', total_memory='{self.total_memory}')\"\n"
  },
  {
    "path": "modules/dml/hijack/__init__.py",
    "content": "import modules.dml.hijack.torch\nimport modules.dml.hijack.realesrgan_model\nimport modules.dml.hijack.transformers\nimport modules.dml.hijack.tomesd\n"
  },
  {
    "path": "modules/dml/hijack/realesrgan_model.py",
    "content": "import math\nimport torch\nfrom modules.postprocess.realesrgan_model_arch import RealESRGANer\nfrom installer import log\n\n\n# DML Solution: Some of contents of output tensor turn to 0 after Extended Slices. Move it to cpu.\ndef tile_process(self):\n    batch, channel, height, width = self.img.shape\n    output_height = height * self.scale\n    output_width = width * self.scale\n    output_shape = (batch, channel, output_height, output_width)\n\n    # start with black image\n    self.output = self.img.new_zeros(output_shape)\n    tiles_x = math.ceil(width / self.tile_size)\n    tiles_y = math.ceil(height / self.tile_size)\n\n    # loop over all tiles\n    for y in range(tiles_y):\n        for x in range(tiles_x):\n            # extract tile from input image\n            ofs_x = x * self.tile_size\n            ofs_y = y * self.tile_size\n            # input tile area on total image\n            input_start_x = ofs_x\n            input_end_x = min(ofs_x + self.tile_size, width)\n            input_start_y = ofs_y\n            input_end_y = min(ofs_y + self.tile_size, height)\n\n            # input tile area on total image with padding\n            input_start_x_pad = max(input_start_x - self.tile_pad, 0)\n            input_end_x_pad = min(input_end_x + self.tile_pad, width)\n            input_start_y_pad = max(input_start_y - self.tile_pad, 0)\n            input_end_y_pad = min(input_end_y + self.tile_pad, height)\n\n            # input tile dimensions\n            input_tile_width = input_end_x - input_start_x\n            input_tile_height = input_end_y - input_start_y\n            _tile_idx = y * tiles_x + x + 1\n            input_tile = self.img[0:self.img.shape[0], 0:self.img.shape[1], input_start_y_pad:input_end_y_pad, input_start_x_pad:input_end_x_pad]\n\n            # upscale tile\n            try:\n                with torch.no_grad():\n                    output_tile = self.model(input_tile)\n            except Exception as e:\n                log.error(f'Upscale error: type=R-ESRGAN {e}')\n\n            # output tile area on total image\n            output_start_x = input_start_x * self.scale\n            output_end_x = input_end_x * self.scale\n            output_start_y = input_start_y * self.scale\n            output_end_y = input_end_y * self.scale\n\n            # output tile area without padding\n            output_start_x_tile = (input_start_x - input_start_x_pad) * self.scale\n            output_end_x_tile = output_start_x_tile + input_tile_width * self.scale\n            output_start_y_tile = (input_start_y - input_start_y_pad) * self.scale\n            output_end_y_tile = output_start_y_tile + input_tile_height * self.scale\n\n            self.output = self.output.cpu()\n            # put tile into output image\n            self.output[0:self.output.shape[0], 0:self.output.shape[1], output_start_y:output_end_y, output_start_x:output_end_x] = output_tile.cpu()[0:output_tile.shape[0], 0:output_tile.shape[1], output_start_y_tile:output_end_y_tile, output_start_x_tile:output_end_x_tile]\n            self.output = self.output.to(output_tile.device)\n\nRealESRGANer.tile_process = tile_process\n"
  },
  {
    "path": "modules/dml/hijack/tomesd.py",
    "content": "from typing import Type\nimport torch\nfrom modules.dml.hijack.utils import catch_nan\n\n\ndef make_tome_block(block_class: Type[torch.nn.Module]) -> Type[torch.nn.Module]:\n    class ToMeBlock(block_class):\n        # Save for unpatching later\n        _parent = block_class\n\n        def _forward(self, x: torch.Tensor, context: torch.Tensor = None) -> torch.Tensor:\n            m_a, m_c, m_m, u_a, u_c, u_m = tomesd.patch.compute_merge(x, self._tome_info)\n\n            # This is where the meat of the computation happens\n            x = u_a(self.attn1(m_a(self.norm1(x)), context=context if self.disable_self_attn else None)) + x\n            x = catch_nan(lambda: (u_c(self.attn2(m_c(self.norm2(x)), context=context)) + x))\n            x = u_m(self.ff(m_m(self.norm3(x)))) + x\n\n            return x\n\n    return ToMeBlock\n\ntry:\n    import tomesd\n    tomesd.patch.make_tome_block = make_tome_block\nexcept Exception:\n    pass\n"
  },
  {
    "path": "modules/dml/hijack/torch.py",
    "content": "import torch\nfrom modules.sd_hijack_utils import CondFunc\n\n\nCondFunc('torchsde._brownian.brownian_interval._randn', lambda _, size, dtype, device, seed: torch.randn(size, dtype=dtype, device=torch.device(\"cpu\"), generator=torch.Generator(torch.device(\"cpu\")).manual_seed(int(seed))).to(device), lambda _, size, dtype, device, seed: device.type == 'privateuseone')\n# https://github.com/microsoft/DirectML/issues/400\nCondFunc('torch.Tensor.new', lambda orig, self, *args, **kwargs: orig(self.cpu(), *args, **kwargs).to(self.device), lambda orig, self, *args, **kwargs: torch.dml.is_directml_device(self.device))\n\n\ndef cuda(self: torch.Tensor):\n    return self.to(torch.dml.current_device())\ntorch.Tensor.cuda = cuda\n\n\n# https://github.com/lshqqytiger/stable-diffusion-webui-directml/issues/436\n_pow_ = torch.Tensor.pow_\ndef pow_(self: torch.Tensor, *args, **kwargs):\n    if self.dtype == torch.float64:\n        return _pow_(self.cpu(), *args, **kwargs).to(self.device)\n    return _pow_(self, *args, **kwargs)\ntorch.Tensor.pow_ = pow_\n\n\n_load = torch.load\ndef load(f, map_location = \"cpu\", *args, **kwargs):\n    if type(map_location) in (str, torch.device,):\n        device = torch.device(map_location)\n        if device.type == \"privateuseone\":\n            data = _load(f, *args, map_location=\"cpu\", **kwargs)\n            for k in data:\n                for weight in data[k]:\n                    data[k][weight] = data[k][weight].to(device)\n            return data\n    return _load(f, *args, map_location=map_location, **kwargs)\ntorch.load = load\n"
  },
  {
    "path": "modules/dml/hijack/transformers.py",
    "content": "from typing import Optional\nimport torch\nimport transformers.models.clip.modeling_clip\n\n# Copied from transformers.models.bart.modeling_bart._make_causal_mask\ndef _make_causal_mask(\n    input_ids_shape: torch.Size, dtype: torch.dtype, device: torch.device, past_key_values_length: int = 0\n):\n    \"\"\"\n    Make causal mask used for bi-directional self-attention.\n    \"\"\"\n    bsz, tgt_len = input_ids_shape\n    min = torch.tensor(torch.finfo(dtype).min, device=\"cpu\")\n    mask = torch.full((tgt_len, tgt_len), min, device=device) # https://discord.com/channels/1101998836328697867/1127441997184122920\n    mask_cond = torch.arange(mask.size(-1), device=device)\n    mask.masked_fill_(mask_cond < (mask_cond + 1).view(mask.size(-1), 1), 0)\n    mask = mask.to(dtype)\n\n    if past_key_values_length > 0:\n        mask = torch.cat([torch.zeros(tgt_len, past_key_values_length, dtype=dtype, device=device), mask], dim=-1)\n    return mask[None, None, :, :].expand(bsz, 1, tgt_len, tgt_len + past_key_values_length)\n\ndef CLIPTextEmbeddings_forward(\n    self: transformers.models.clip.modeling_clip.CLIPTextEmbeddings,\n    input_ids: Optional[torch.LongTensor] = None,\n    position_ids: Optional[torch.LongTensor] = None,\n    inputs_embeds: Optional[torch.FloatTensor] = None,\n) -> torch.Tensor:\n    from modules.devices import dtype\n    seq_length = input_ids.shape[-1] if input_ids is not None else inputs_embeds.shape[-2]\n\n    if position_ids is None:\n        position_ids = self.position_ids[:, :seq_length]\n\n    if inputs_embeds is None:\n        inputs_embeds = self.token_embedding(input_ids).type(dtype) # Type correction.\n\n    position_embeddings = self.position_embedding(position_ids)\n    embeddings = inputs_embeds + position_embeddings\n\n    return embeddings\n\ntransformers.models.clip.modeling_clip._make_causal_mask = _make_causal_mask\ntransformers.models.clip.modeling_clip.CLIPTextEmbeddings.forward = CLIPTextEmbeddings_forward\n"
  },
  {
    "path": "modules/dml/hijack/utils.py",
    "content": "import torch\nfrom typing import Callable\nfrom modules.shared import log, opts\n\n\ndef catch_nan(func: Callable[[], torch.Tensor]):\n    if not opts.directml_catch_nan:\n        return func()\n\n    tries = 0\n    tensor = func()\n    while tensor.isnan().sum() != 0 and tries < 10:\n        if tries == 0:\n            log.warning(\"NaN is produced. Retry with same values...\")\n        tries += 1\n        tensor = func()\n    if tensor.isnan().sum() != 0:\n        log.error(\"Failed to cover NaN.\")\n    return tensor\n"
  },
  {
    "path": "modules/dml/memory.py",
    "content": "from os import getpid\nfrom collections import defaultdict\nfrom modules.dml.pdh import HQuery, HCounter, expand_wildcard_path\n\n\nclass MemoryProvider:\n    hQuery: HQuery\n    hCounters: defaultdict[str, list[HCounter]]\n\n    def __init__(self):\n        self.hQuery = HQuery()\n        self.hCounters = defaultdict(list)\n\n    def get_memory(self, device_id: int) -> dict[str, int]:\n        if len(self.hCounters) == 0:\n            pid = getpid()\n            paths_dedicated = expand_wildcard_path(f\"\\\\GPU Process Memory(pid_{pid}_*_phys_{device_id})\\\\Dedicated Usage\")\n            paths_committed = expand_wildcard_path(f\"\\\\GPU Process Memory(pid_{pid}_*_phys_{device_id})\\\\Total Committed\")\n            for path in paths_dedicated:\n                self.hCounters[\"dedicated_usage\"].append(self.hQuery.add_counter(path))\n            for path in paths_committed:\n                self.hCounters[\"total_committed\"].append(self.hQuery.add_counter(path))\n        self.hQuery.collect_data()\n        result = defaultdict(int)\n        for key in self.hCounters:\n            for hCounter in self.hCounters[key]:\n                result[key] += hCounter.get_formatted_value(int)\n        return dict(result)\n\n    def __del__(self):\n        self.hQuery.close()\n"
  },
  {
    "path": "modules/dml/memory_amd/__init__.py",
    "content": "from .driver.atiadlxx import ATIADLxx\n\n\nclass AMDMemoryProvider:\n    driver: ATIADLxx = ATIADLxx()\n\n    @staticmethod\n    def mem_get_info(index):\n        usage = AMDMemoryProvider.driver.get_dedicated_vram_usage(index) * (1 << 20)\n        return (AMDMemoryProvider.driver.iHyperMemorySize - usage, AMDMemoryProvider.driver.iHyperMemorySize)\n"
  },
  {
    "path": "modules/dml/memory_amd/driver/atiadlxx.py",
    "content": "import ctypes as C\nfrom modules.dml.memory_amd.driver.atiadlxx_apis import ADL2_Main_Control_Create, ADL_Main_Memory_Alloc, ADL2_Adapter_NumberOfAdapters_Get, ADL2_Adapter_AdapterInfo_Get, ADL2_Adapter_MemoryInfo2_Get, ADL2_Adapter_DedicatedVRAMUsage_Get, ADL2_Adapter_VRAMUsage_Get\nfrom modules.dml.memory_amd.driver.atiadlxx_structures import ADL_CONTEXT_HANDLE, AdapterInfo, LPAdapterInfo, ADLMemoryInfo2\nfrom modules.dml.memory_amd.driver.atiadlxx_defines import ADL_OK\n\n\nclass ATIADLxx:\n    iHyperMemorySize = 0\n\n    def __init__(self):\n        self.context = ADL_CONTEXT_HANDLE()\n        ADL2_Main_Control_Create(ADL_Main_Memory_Alloc, 1, C.byref(self.context))\n        num_adapters = C.c_int(-1)\n        ADL2_Adapter_NumberOfAdapters_Get(self.context, C.byref(num_adapters))\n        AdapterInfoArray = (AdapterInfo * num_adapters.value)()\n        ADL2_Adapter_AdapterInfo_Get(self.context, C.cast(AdapterInfoArray, LPAdapterInfo), C.sizeof(AdapterInfoArray))\n        self.devices = []\n        busNumbers = []\n        for adapter in AdapterInfoArray:\n            if adapter.iBusNumber not in busNumbers: # filter duplicate device\n                self.devices.append(adapter)\n                busNumbers.append(adapter.iBusNumber)\n        self.iHyperMemorySize = self.get_memory_info2(0).iHyperMemorySize\n\n    def get_memory_info2(self, adapterIndex: int) -> ADLMemoryInfo2:\n        info = ADLMemoryInfo2()\n\n        if ADL2_Adapter_MemoryInfo2_Get(self.context, adapterIndex, C.byref(info)) != ADL_OK:\n            raise RuntimeError(\"ADL2: Failed to get MemoryInfo2\")\n\n        return info\n\n    def get_dedicated_vram_usage(self, index: int) -> int:\n        usage = C.c_int(-1)\n\n        if ADL2_Adapter_DedicatedVRAMUsage_Get(self.context, self.devices[index].iAdapterIndex, C.byref(usage)) != ADL_OK:\n            raise RuntimeError(\"ADL2: Failed to get DedicatedVRAMUsage\")\n\n        return usage.value\n\n    def get_vram_usage(self, index: int) -> int:\n        usage = C.c_int(-1)\n\n        if ADL2_Adapter_VRAMUsage_Get(self.context, self.devices[index].iAdapterIndex, C.byref(usage)) != ADL_OK:\n            raise RuntimeError(\"ADL2: Failed to get VRAMUsage\")\n\n        return usage.value\n"
  },
  {
    "path": "modules/dml/memory_amd/driver/atiadlxx_apis.py",
    "content": "import ctypes as C\nfrom platform import platform\nfrom modules.dml.memory_amd.driver.atiadlxx_structures import ADL_CONTEXT_HANDLE, LPAdapterInfo, ADLMemoryInfo2\n\n\nif 'Windows' in platform():\n    atiadlxx = C.WinDLL(\"atiadlxx.dll\")\nelse:\n    atiadlxx = C.CDLL(\"libatiadlxx.so\") # Not tested on Linux system. But will be supported.\n\n\nADL_MAIN_MALLOC_CALLBACK = C.CFUNCTYPE(C.c_void_p, C.c_int)\nADL_MAIN_FREE_CALLBACK = C.CFUNCTYPE(None, C.POINTER(C.c_void_p))\n\n\n@ADL_MAIN_MALLOC_CALLBACK\ndef ADL_Main_Memory_Alloc(iSize):\n    return C._malloc(iSize)\n\n\n@ADL_MAIN_FREE_CALLBACK\ndef ADL_Main_Memory_Free(lpBuffer):\n    if lpBuffer[0] is not None:\n        C._free(lpBuffer[0])\n        lpBuffer[0] = None\n\n\nADL2_Main_Control_Create = atiadlxx.ADL2_Main_Control_Create\nADL2_Main_Control_Create.restype = C.c_int\nADL2_Main_Control_Create.argtypes = [ADL_MAIN_MALLOC_CALLBACK, C.c_int, ADL_CONTEXT_HANDLE]\n\nADL2_Adapter_NumberOfAdapters_Get = atiadlxx.ADL2_Adapter_NumberOfAdapters_Get\nADL2_Adapter_NumberOfAdapters_Get.restype = C.c_int\nADL2_Adapter_NumberOfAdapters_Get.argtypes = [ADL_CONTEXT_HANDLE, C.POINTER(C.c_int)]\n\nADL2_Adapter_AdapterInfo_Get = atiadlxx.ADL2_Adapter_AdapterInfo_Get\nADL2_Adapter_AdapterInfo_Get.restype = C.c_int\nADL2_Adapter_AdapterInfo_Get.argtypes = [ADL_CONTEXT_HANDLE, LPAdapterInfo, C.c_int]\n\nADL2_Adapter_MemoryInfo2_Get = atiadlxx.ADL2_Adapter_MemoryInfo2_Get\nADL2_Adapter_MemoryInfo2_Get.restype = C.c_int\nADL2_Adapter_MemoryInfo2_Get.argtypes = [ADL_CONTEXT_HANDLE, C.c_int, C.POINTER(ADLMemoryInfo2)]\n\nADL2_Adapter_DedicatedVRAMUsage_Get = atiadlxx.ADL2_Adapter_DedicatedVRAMUsage_Get\nADL2_Adapter_DedicatedVRAMUsage_Get.restype = C.c_int\nADL2_Adapter_DedicatedVRAMUsage_Get.argtypes = [ADL_CONTEXT_HANDLE, C.c_int, C.POINTER(C.c_int)]\n\nADL2_Adapter_VRAMUsage_Get = atiadlxx.ADL2_Adapter_VRAMUsage_Get\nADL2_Adapter_VRAMUsage_Get.restype = C.c_int\nADL2_Adapter_VRAMUsage_Get.argtypes = [ADL_CONTEXT_HANDLE, C.c_int, C.POINTER(C.c_int)]\n"
  },
  {
    "path": "modules/dml/memory_amd/driver/atiadlxx_defines.py",
    "content": "ADL_OK = 0\n"
  },
  {
    "path": "modules/dml/memory_amd/driver/atiadlxx_structures.py",
    "content": "import ctypes as C\n\n\nclass _ADLPMActivity(C.Structure):\n    __slot__ = [\n        'iActivityPercent',\n        'iCurrentBusLanes',\n        'iCurrentBusSpeed',\n        'iCurrentPerformanceLevel',\n        'iEngineClock',\n        'iMaximumBusLanes',\n        'iMemoryClock',\n        'iReserved',\n        'iSize',\n        'iVddc',\n    ]\n_ADLPMActivity._fields_ = [ # pylint: disable=protected-access\n    ('iActivityPercent', C.c_int),\n    ('iCurrentBusLanes', C.c_int),\n    ('iCurrentBusSpeed', C.c_int),\n    ('iCurrentPerformanceLevel', C.c_int),\n    ('iEngineClock', C.c_int),\n    ('iMaximumBusLanes', C.c_int),\n    ('iMemoryClock', C.c_int),\n    ('iReserved', C.c_int),\n    ('iSize', C.c_int),\n    ('iVddc', C.c_int),\n]\nADLPMActivity = _ADLPMActivity\n\n\nclass _ADLMemoryInfo2(C.Structure):\n    __slot__ = [\n        'iHyperMemorySize',\n        'iInvisibleMemorySize',\n        'iMemoryBandwidth',\n        'iMemorySize',\n        'iVisibleMemorySize',\n        'strMemoryType'\n    ]\n_ADLMemoryInfo2._fields_ = [ # pylint: disable=protected-access\n    ('iHyperMemorySize', C.c_longlong),\n    ('iInvisibleMemorySize', C.c_longlong),\n    ('iMemoryBandwidth', C.c_longlong),\n    ('iMemorySize', C.c_longlong),\n    ('iVisibleMemorySize', C.c_longlong),\n    ('strMemoryType', C.c_char * 256)\n]\nADLMemoryInfo2 = _ADLMemoryInfo2\n\n\nclass _AdapterInfo(C.Structure):\n    __slot__ = [\n        'iSize',\n        'iAdapterIndex',\n        'strUDID',\n        'iBusNumber',\n        'iDeviceNumber',\n        'iFunctionNumber',\n        'iVendorID',\n        'strAdapterName',\n        'strDisplayName',\n        'iPresent',\n        'iExist',\n        'strDriverPath',\n        'strDriverPathExt',\n        'strPNPString',\n        'iOSDisplayIndex',\n    ]\n_AdapterInfo._fields_ = [ # pylint: disable=protected-access\n    ('iSize', C.c_int),\n    ('iAdapterIndex', C.c_int),\n    ('strUDID', C.c_char * 256),\n    ('iBusNumber', C.c_int),\n    ('iDeviceNumber', C.c_int),\n    ('iFunctionNumber', C.c_int),\n    ('iVendorID', C.c_int),\n    ('strAdapterName', C.c_char * 256),\n    ('strDisplayName', C.c_char * 256),\n    ('iPresent', C.c_int),\n    ('iExist', C.c_int),\n    ('strDriverPath', C.c_char * 256),\n    ('strDriverPathExt', C.c_char * 256),\n    ('strPNPString', C.c_char * 256),\n    ('iOSDisplayIndex', C.c_int)\n]\nAdapterInfo = _AdapterInfo\nLPAdapterInfo = C.POINTER(_AdapterInfo)\n\nADL_CONTEXT_HANDLE = C.c_void_p\n"
  },
  {
    "path": "modules/dml/pdh/__init__.py",
    "content": "from ctypes import byref, cast, c_size_t\nfrom ctypes.wintypes import LPCWSTR, DWORD, WCHAR\nfrom typing import NamedTuple, TypeVar\nfrom .apis import PdhExpandWildCardPathW, PdhOpenQueryW, PdhAddEnglishCounterW, PdhCollectQueryData, PdhGetFormattedCounterValue, PdhGetFormattedCounterArrayW, PdhCloseQuery\nfrom .structures import PDH_HQUERY, PDH_HCOUNTER, PDH_FMT_COUNTERVALUE, PPDH_FMT_COUNTERVALUE_ITEM_W\nfrom .defines import PDH_FMT_LARGE, PDH_FMT_DOUBLE, PDH_FMT_NOSCALE, PDH_NOEXPANDCOUNTERS, PDH_MORE_DATA, PDH_OK\nfrom .msvcrt import malloc\nfrom .errors import PDHError\n\n\nclass __InternalAbstraction(NamedTuple):\n    flag: int\n    attr_name: str\n\n\n_type_map = {\n    int: __InternalAbstraction(PDH_FMT_LARGE, \"largeValue\"),\n    float: __InternalAbstraction(PDH_FMT_DOUBLE, \"doubleValue\"),\n}\n\n\ndef expand_wildcard_path(path: str) -> list[str]:\n    listLength = DWORD(0)\n    if PdhExpandWildCardPathW(None, LPCWSTR(path), None, byref(listLength), PDH_NOEXPANDCOUNTERS) != PDH_MORE_DATA:\n        raise PDHError(\"Something went wrong.\")\n    expanded = (WCHAR * listLength.value)()\n    if PdhExpandWildCardPathW(None, LPCWSTR(path), expanded, byref(listLength), PDH_NOEXPANDCOUNTERS) != PDH_OK:\n        raise PDHError(f\"Couldn't expand wildcard path '{path}'\")\n    result = []\n    cur = \"\"\n    for c in expanded:\n        if c == '\\0':\n            result.append(cur)\n            cur = \"\"\n        else:\n            cur += c\n    result.pop()\n    return result\n\n\nT = TypeVar(\"T\", *_type_map.keys())\n\n\nclass HCounter(PDH_HCOUNTER):\n    def get_formatted_value(self, typ: T) -> T:\n        if typ not in _type_map:\n            raise PDHError(f\"Invalid value type: {typ}\")\n        flag, attr_name = _type_map[typ]\n        value = PDH_FMT_COUNTERVALUE()\n        if PdhGetFormattedCounterValue(self, DWORD(flag | PDH_FMT_NOSCALE), None, byref(value)) != PDH_OK:\n            raise PDHError(\"Couldn't get formatted counter value.\")\n        return getattr(value.u, attr_name)\n\n    def get_formatted_dict(self, typ: T) -> dict[str, T]:\n        if typ not in _type_map:\n            raise PDHError(f\"Invalid value type: {typ}\")\n        flag, attr_name = _type_map[typ]\n        bufferSize = DWORD(0)\n        itemCount = DWORD(0)\n        if PdhGetFormattedCounterArrayW(self, DWORD(flag | PDH_FMT_NOSCALE), byref(bufferSize), byref(itemCount), None) != PDH_MORE_DATA:\n            raise PDHError(\"Something went wrong.\")\n        itemBuffer = cast(malloc(c_size_t(bufferSize.value)), PPDH_FMT_COUNTERVALUE_ITEM_W)\n        if PdhGetFormattedCounterArrayW(self, DWORD(flag | PDH_FMT_NOSCALE), byref(bufferSize), byref(itemCount), itemBuffer) != PDH_OK:\n            raise PDHError(\"Couldn't get formatted counter array.\")\n        result: dict[str, T] = {}\n        for i in range(0, itemCount.value):\n            item = itemBuffer[i]\n            result[item.szName] = getattr(item.FmtValue.u, attr_name)\n        return result\n\n\nclass HQuery(PDH_HQUERY):\n    def __init__(self):\n        super().__init__()\n        if PdhOpenQueryW(None, None, byref(self)) != PDH_OK:\n            raise PDHError(\"Couldn't open PDH query.\")\n\n    def add_counter(self, path: str) -> HCounter:\n        hCounter = HCounter()\n        if PdhAddEnglishCounterW(self, LPCWSTR(path), None, byref(hCounter)) != PDH_OK:\n            raise PDHError(\"Couldn't add counter query.\")\n        return hCounter\n\n    def collect_data(self):\n        if PdhCollectQueryData(self) != PDH_OK:\n            raise PDHError(\"Couldn't collect query data.\")\n\n    def close(self):\n        if PdhCloseQuery(self) != PDH_OK:\n            raise PDHError(\"Couldn't close PDH query.\")\n"
  },
  {
    "path": "modules/dml/pdh/apis.py",
    "content": "from ctypes import CDLL, POINTER\nfrom ctypes.wintypes import LPCWSTR, LPDWORD, DWORD\nfrom typing import Callable\nfrom .structures import PDH_HQUERY, PDH_HCOUNTER, PPDH_FMT_COUNTERVALUE, PPDH_FMT_COUNTERVALUE_ITEM_W\nfrom .defines import PDH_FUNCTION, PZZWSTR, DWORD_PTR\n\n\npdh = CDLL(\"pdh.dll\")\n\n\nPdhExpandWildCardPathW: Callable = pdh.PdhExpandWildCardPathW\nPdhExpandWildCardPathW.restype = PDH_FUNCTION\nPdhExpandWildCardPathW.argtypes = [LPCWSTR, LPCWSTR, PZZWSTR, LPDWORD, DWORD]\n\nPdhOpenQueryW: Callable = pdh.PdhOpenQueryW\nPdhOpenQueryW.restype = PDH_FUNCTION\nPdhOpenQueryW.argtypes = [LPCWSTR, DWORD_PTR, POINTER(PDH_HQUERY)]\n\nPdhAddEnglishCounterW: Callable = pdh.PdhAddEnglishCounterW\nPdhAddEnglishCounterW.restype = PDH_FUNCTION\nPdhAddEnglishCounterW.argtypes = [PDH_HQUERY, LPCWSTR, DWORD_PTR, POINTER(PDH_HCOUNTER)]\n\nPdhCollectQueryData: Callable = pdh.PdhCollectQueryData\nPdhCollectQueryData.restype = PDH_FUNCTION\nPdhCollectQueryData.argtypes = [PDH_HQUERY]\n\nPdhGetFormattedCounterValue: Callable = pdh.PdhGetFormattedCounterValue\nPdhGetFormattedCounterValue.restype = PDH_FUNCTION\nPdhGetFormattedCounterValue.argtypes = [PDH_HCOUNTER, DWORD, LPDWORD, PPDH_FMT_COUNTERVALUE]\n\nPdhGetFormattedCounterArrayW: Callable = pdh.PdhGetFormattedCounterArrayW\nPdhGetFormattedCounterArrayW.restype = PDH_FUNCTION\nPdhGetFormattedCounterArrayW.argtypes = [PDH_HCOUNTER, DWORD, LPDWORD, LPDWORD, PPDH_FMT_COUNTERVALUE_ITEM_W]\n\nPdhCloseQuery: Callable = pdh.PdhCloseQuery\nPdhCloseQuery.restype = PDH_FUNCTION\nPdhCloseQuery.argtypes = [PDH_HQUERY]\n"
  },
  {
    "path": "modules/dml/pdh/defines.py",
    "content": "from ctypes import c_int, POINTER\nfrom ctypes.wintypes import DWORD, WCHAR\n\n\nPDH_FUNCTION = c_int\nPDH_OK = 0x00000000\nPDH_MORE_DATA = -2147481646#0x800007D2\n\nDWORD_PTR = POINTER(DWORD)\nPWSTR = POINTER(WCHAR)\nPZZWSTR = POINTER(WCHAR)\n\nPDH_NOEXPANDCOUNTERS = 1\nPDH_NOEXPANDINSTANCES = 2\nPDH_REFRESHCOUNTERS = 4\n\nPDH_FMT_LONG = 0x00000100\nPDH_FMT_DOUBLE = 0x00000200\nPDH_FMT_LARGE = 0x00000400\n\nPDH_FMT_NOSCALE = 0x00001000\nPDH_FMT_1000 = 0x00002000\nPDH_FMT_NOCAP100 = 0x00008000\n"
  },
  {
    "path": "modules/dml/pdh/errors.py",
    "content": "class PDHError(Exception):\n    def __init__(self, message: str):\n        super().__init__(message)\n"
  },
  {
    "path": "modules/dml/pdh/msvcrt.py",
    "content": "from ctypes import CDLL, c_void_p, c_size_t\n\n\nmsvcrt = CDLL(\"msvcrt\")\n\n\nmalloc = msvcrt.malloc\nmalloc.restype = c_void_p\nmalloc.argtypes = [c_size_t]\n\nfree = msvcrt.free\nfree.restype = None\nfree.argtypes = [c_void_p]\n"
  },
  {
    "path": "modules/dml/pdh/structures.py",
    "content": "from ctypes import Union, c_double, c_longlong, Structure, POINTER\nfrom ctypes.wintypes import HANDLE, LONG, LPCSTR, LPCWSTR, DWORD, LPWSTR\n\n\nPDH_HQUERY = HANDLE\nPDH_HCOUNTER = HANDLE\n\n\nclass PDH_FMT_COUNTERVALUE_U(Union):\n    _fields_ = [\n        (\"longValue\", LONG),\n        (\"doubleValue\", c_double),\n        (\"largeValue\", c_longlong),\n        (\"AnsiStringValue\", LPCSTR),\n        (\"WideStringValue\", LPCWSTR),\n    ]\n\n    longValue: int\n    doubleValue: float\n    largeValue: int\n    AnsiStringValue: LPCSTR\n    WideStringValue: LPCWSTR\n\n\nclass PDH_FMT_COUNTERVALUE(Structure):\n    _anonymous_ = (\"u\",)\n    _fields_ = [\n        (\"CStatus\", DWORD),\n        (\"u\", PDH_FMT_COUNTERVALUE_U),\n    ]\n\n    CStatus: DWORD\n    u: PDH_FMT_COUNTERVALUE_U\nPPDH_FMT_COUNTERVALUE = POINTER(PDH_FMT_COUNTERVALUE)\n\n\nclass PDH_FMT_COUNTERVALUE_ITEM_W(Structure):\n    _fields_ = [\n        (\"szName\", LPWSTR),\n        (\"FmtValue\", PDH_FMT_COUNTERVALUE),\n    ]\n\n    szName: str\n    FmtValue: PDH_FMT_COUNTERVALUE\nPPDH_FMT_COUNTERVALUE_ITEM_W = POINTER(PDH_FMT_COUNTERVALUE_ITEM_W)\n"
  },
  {
    "path": "modules/dml/utils.py",
    "content": "from typing import Optional, Union\nimport torch\n\n\nrDevice = Union[torch.device, int]\ndef get_device(device: Optional[rDevice]=None) -> torch.device:\n    if device is None:\n        device = torch.dml.current_device()\n    return torch.device(device)\n"
  },
  {
    "path": "modules/errorlimiter.py",
    "content": "from __future__ import annotations\nfrom contextlib import contextmanager\nfrom typing import TYPE_CHECKING\n\nif TYPE_CHECKING:\n    from collections.abc import Iterable\n\n\nclass ErrorLimiterTrigger(BaseException):  # Use BaseException to avoid being caught by \"except Exception:\".\n    def __init__(self, name: str, *args):\n        super().__init__(*args)\n        self.name = name\n\n\nclass ErrorLimiterAbort(RuntimeError):\n    def __init__(self, msg: str):\n        super().__init__(msg)\n\n\nclass ErrorLimiter:\n    _store: dict[str, int] = {}\n\n    @classmethod\n    def start(cls, name: str, limit: int = 5):\n        cls._store[name] = limit\n\n    @classmethod\n    def notify(cls, name: str | Iterable[str]):  # Can be manually triggered if execution is spread across multiple files\n        if isinstance(name, str):\n            name = (name,)\n        for key in name:\n            if key in cls._store.keys():\n                cls._store[key] = cls._store[key] - 1\n                if cls._store[key] <= 0:\n                    raise ErrorLimiterTrigger(key)\n\n    @classmethod\n    def end(cls, name: str):\n        cls._store.pop(name)\n\n\n@contextmanager\ndef limit_errors(name: str, limit: int = 5):\n    \"\"\"Limiter for aborting execution after being triggered a specified number of times (default 5).\n\n    >>> with limit_errors(\"identifier\", limit=5) as elimit:\n    >>>     while do_thing():\n    >>>         if (something_bad):\n    >>>             print(\"Something bad happened\")\n    >>>             elimit()  # In this example, raises ErrorLimiterAbort on the 5th call\n    >>>         try:\n    >>>             something_broken()\n    >>>         except Exception:\n    >>>             print(\"Encountered an exception\")\n    >>>             elimit()  # Count is shared across all calls\n\n    Args:\n        name (str): Identifier.\n        limit (int, optional): Abort after `limit` number of triggers. Defaults to 5.\n\n    Raises:\n        ErrorLimiterAbort: Subclass of RuntimeException.\n\n    Yields:\n        Callable: Notification function to indicate that an error occurred.\n    \"\"\"\n    try:\n        ErrorLimiter.start(name, limit)\n        yield lambda: ErrorLimiter.notify(name)\n    except ErrorLimiterTrigger as e:\n        raise ErrorLimiterAbort(f\"HALTING. Too many errors during '{e.name}'\") from None\n    finally:\n        ErrorLimiter.end(name)\n"
  },
  {
    "path": "modules/errors.py",
    "content": "import logging\nimport warnings\nfrom installer import get_log, get_console, setup_logging, install_traceback\nfrom modules.errorlimiter import ErrorLimiterAbort\n\n\nlog = get_log()\nsetup_logging()\ninstall_traceback()\nalready_displayed = {}\n\n\ndef install(suppress=[]):\n    warnings.filterwarnings(\"ignore\", category=UserWarning)\n    install_traceback(suppress=suppress)\n    logging.basicConfig(level=logging.ERROR, format='%(asctime)s | %(levelname)s | %(pathname)s | %(message)s')\n\n\ndef display(e: Exception, task: str, suppress=[]):\n    if isinstance(e, ErrorLimiterAbort):\n        return\n    log.critical(f\"{task or 'error'}: {type(e).__name__}\")\n    \"\"\"\n    trace = traceback.format_exc()\n    log.error(trace)\n    for line in traceback.format_tb(e.__traceback__):\n        log.error(repr(line))\n    console = get_console()\n    console.print_exception(show_locals=False, max_frames=16, extra_lines=1, suppress=suppress, theme=\"ansi_dark\", word_wrap=False, width=console.width)\n    \"\"\"\n    log.traceback(e, suppress=suppress)\n\n\ndef display_once(e: Exception, task):\n    if task in already_displayed:\n        return\n    display(e, task)\n    already_displayed[task] = 1\n\n\ndef run(code, task: str):\n    try:\n        code()\n    except Exception as e:\n        display(e, task)\n\n\ndef exception(suppress=[]):\n    console = get_console()\n    console.print_exception(show_locals=False, max_frames=16, extra_lines=2, suppress=suppress, theme=\"ansi_dark\", word_wrap=False, width=min([console.width, 200]))\n\n\ndef profile(profiler, msg: str, n: int = 16):\n    profiler.disable()\n    import io\n    import pstats\n    stream = io.StringIO() # pylint: disable=abstract-class-instantiated\n    p = pstats.Stats(profiler, stream=stream)\n    p.sort_stats(pstats.SortKey.CUMULATIVE)\n    p.print_stats(200)\n    # p.print_title()\n    # p.print_call_heading(10, 'time')\n    # p.print_callees(10)\n    # p.print_callers(10)\n    profiler = None\n    lines = stream.getvalue().split('\\n')\n    lines = [x for x in lines if '<frozen' not in x\n             and '{built-in' not in x\n             and '/logging' not in x\n             and 'Ordered by' not in x\n             and 'List reduced' not in x\n             and '_lsprof' not in x\n             and '/profiler' not in x\n             and 'rich' not in x\n             and 'profile_torch' not in x\n             and x.strip() != ''\n            ]\n    txt = '\\n'.join(lines[:min(n, len(lines))])\n    log.debug(f'Profile {msg}: {txt}')\n\n\ndef profile_torch(profiler, msg: str):\n    profiler.stop()\n    lines = profiler.key_averages().table(sort_by=\"cpu_time_total\", row_limit=12)\n    lines = lines.split('\\n')\n    lines = [x for x in lines if '/profiler' not in x and '---' not in x]\n    txt = '\\n'.join(lines)\n    log.debug(f'Torch profile CPU-total {msg}: \\n{txt}')\n    lines = profiler.key_averages().table(sort_by=\"self_cpu_time_total\", row_limit=12)\n    lines = lines.split('\\n')\n    lines = [x for x in lines if '/profiler' not in x and '---' not in x]\n    txt = '\\n'.join(lines)\n    log.debug(f'Torch profile CPU-self {msg}: \\n{txt}')\n    lines = profiler.key_averages().table(sort_by=\"cuda_time_total\", row_limit=12)\n    lines = lines.split('\\n')\n    lines = [x for x in lines if '/profiler' not in x and '---' not in x]\n    txt = '\\n'.join(lines)\n    log.debug(f'Torch profile CUDA {msg}: \\n{txt}')\n"
  },
  {
    "path": "modules/extensions.py",
    "content": "from __future__ import annotations\nimport os\nfrom datetime import datetime, timezone\nimport git\nfrom modules import shared, errors\nfrom modules.paths import extensions_dir, extensions_builtin_dir\n\n\nextensions: list[Extension] = []\nif not os.path.exists(extensions_dir):\n    os.makedirs(extensions_dir)\n\n\ndef parse_isotime(time_string: str) -> datetime:\n    # If Python minimum version is 3.11+, this function can be replaced with datetime.fromisoformat()\n    trimmed = time_string.rstrip(\"Z\")\n    if \".\" in trimmed:\n        trimmed = trimmed.split(\".\")[0]\n    match len(trimmed):\n        case 16:\n            return datetime.strptime(trimmed, \"%Y-%m-%dT%H:%M\").replace(tzinfo=timezone.utc)\n        case 19:\n            return datetime.strptime(trimmed, \"%Y-%m-%dT%H:%M:%S\").replace(tzinfo=timezone.utc)\n        case _:\n            raise ValueError(f\"Unexpected time string format: '{time_string}'\")\n\n\ndef format_dt(d: datetime, seconds = False) -> str:\n    if d.tzinfo is None:\n        return d.strftime('%Y-%m-%d %H:%M')\n    if seconds:\n        return d.astimezone(timezone.utc).strftime('%Y-%m-%d %H:%M:%S')\n    return d.astimezone(timezone.utc).strftime('%Y-%m-%d %H:%M')\n\n\ndef ts2utc(timestamp: int) -> datetime:\n    try:\n        return datetime.fromtimestamp(timestamp, timezone.utc)\n    except Exception:\n        return \"unknown\"\n\ndef active():\n    if shared.opts.disable_all_extensions == \"all\":\n        return []\n    elif shared.opts.disable_all_extensions == \"user\":\n        return [x for x in extensions if x.enabled and x.is_builtin]\n    else:\n        return [x for x in extensions if x.enabled]\n\n\ndef temp_disable_extensions():\n    disable_safe = [\n        'sd-webui-controlnet',\n        'multidiffusion-upscaler-for-automatic1111',\n        'a1111-sd-webui-lycoris',\n        'sd-webui-agent-scheduler',\n        'clip-interrogator-ext',\n        'stable-diffusion-webui-images-browser',\n    ]\n    disable_diffusers = [\n        'sd-webui-controlnet',\n        'multidiffusion-upscaler-for-automatic1111',\n        'a1111-sd-webui-lycoris',\n        'sd-webui-animatediff',\n    ]\n    disable_themes = [\n        'sd-webui-lobe-theme',\n        'cozy-nest',\n        'sdnext-modernui',\n    ]\n    disabled = []\n    if shared.cmd_opts.theme is not None:\n        theme_name = shared.cmd_opts.theme\n    else:\n        theme_name = f'{shared.opts.theme_type.lower()}/{shared.opts.gradio_theme}'\n    if theme_name == 'lobe':\n        disable_themes.remove('sd-webui-lobe-theme')\n    elif theme_name == 'cozy-nest' or theme_name == 'cozy':\n        disable_themes.remove('cozy-nest')\n    elif '/' not in theme_name: # set default themes per type\n        if theme_name == 'standard' or theme_name == 'default':\n            theme_name = 'standard/black-teal'\n        if theme_name == 'modern':\n            theme_name = 'modern/Default'\n        if theme_name == 'gradio':\n            theme_name = 'gradio/default'\n        if theme_name == 'huggingface':\n            theme_name = 'huggingface/blaaa'\n\n    if theme_name.lower().startswith('standard') or theme_name.lower().startswith('default'):\n        shared.opts.data['theme_type'] = 'Standard'\n        shared.opts.data['gradio_theme'] = theme_name[9:]\n    elif theme_name.lower().startswith('modern'):\n        shared.opts.data['theme_type'] = 'Modern'\n        shared.opts.data['gradio_theme'] = theme_name[7:]\n        disable_themes.remove('sdnext-modernui')\n    elif theme_name.lower().startswith('huggingface') or theme_name.lower().startswith('gradio') or theme_name.lower().startswith('none'):\n        shared.opts.data['theme_type'] = 'None'\n        shared.opts.data['gradio_theme'] = theme_name\n    else:\n        shared.log.error(f'UI theme invalid: theme=\"{theme_name}\" available={[\"standard/*\", \"modern/*\", \"none/*\"]} fallback=\"standard/black-teal\"')\n        shared.opts.data['theme_type'] = 'Standard'\n        shared.opts.data['gradio_theme'] = 'black-teal'\n\n    for ext in disable_themes:\n        if ext.lower() not in shared.opts.disabled_extensions:\n            disabled.append(ext)\n    if shared.cmd_opts.safe:\n        for ext in disable_safe:\n            if ext.lower() not in shared.opts.disabled_extensions:\n                disabled.append(ext)\n    for ext in disable_diffusers:\n        if ext.lower() not in shared.opts.disabled_extensions:\n            disabled.append(ext)\n    disabled.append('Lora')\n\n    shared.cmd_opts.controlnet_loglevel = 'WARNING'\n    return disabled\n\n\nclass Extension:\n    def __init__(self, name, path, enabled=True, is_builtin=False):\n        self.name = name\n        self.git_name = ''\n        self.path = path\n        self.enabled = enabled\n        self.status = ''\n        self.can_update = False\n        self.is_builtin = is_builtin\n        self.commit_hash = ''\n        self.commit_date = None\n        self.version = ''\n        self.description = ''\n        self.branch = None\n        self.remote = None\n        self.have_info_from_repo = False\n        self.mtime = \"2000-01-01T00:00Z\"\n        self.ctime = \"2000-01-01T00:00Z\"\n\n    def read_info(self, force=False):\n        if self.have_info_from_repo and not force:\n            return\n        self.have_info_from_repo = True\n        repo = None\n        self.mtime = datetime.fromtimestamp(os.path.getmtime(self.path)).isoformat() + 'Z'\n        self.ctime = datetime.fromtimestamp(os.path.getctime(self.path)).isoformat() + 'Z'\n        try:\n            if os.path.exists(os.path.join(self.path, \".git\")):\n                repo = git.Repo(self.path)\n        except Exception as e:\n            errors.display(e, f'github info from {self.path}')\n        if repo is None or repo.bare:\n            self.remote = None\n        else:\n            try:\n                self.status = 'unknown'\n                if len(repo.remotes) == 0:\n                    shared.log.debug(f\"Extension: no remotes info repo={self.name}\")\n                    return\n                self.git_name = repo.remotes.origin.url.split('.git')[0].split('/')[-1]\n                self.description = repo.description\n                if self.description is None or self.description.startswith(\"Unnamed repository\"):\n                    self.description = \"[No description]\"\n                self.remote = next(repo.remote().urls, None)\n                head = repo.head.commit\n                self.commit_date = repo.head.commit.committed_date\n                try:\n                    if repo.active_branch:\n                        self.branch = repo.active_branch.name\n                except Exception:\n                    self.branch = 'unknown'\n                self.commit_hash = head.hexsha\n                self.version = f\"<p>{self.commit_hash[:8]}</p><p>{format_dt(ts2utc(self.commit_date))}</p>\"\n            except Exception as ex:\n                shared.log.error(f\"Extension: failed reading data from git repo={self.name}: {ex}\")\n                self.remote = None\n\n    def list_files(self, subdir, extension):\n        from modules import scripts_manager\n        dirpath = os.path.join(self.path, subdir)\n        if not os.path.isdir(dirpath):\n            return []\n        res = []\n        for filename in sorted(os.listdir(dirpath)):\n            if not filename.endswith(\".py\") and not filename.endswith(\".js\") and not filename.endswith(\".mjs\"):\n                continue\n            priority = '50'\n            if os.path.isfile(os.path.join(dirpath, \"..\", \".priority\")):\n                with open(os.path.join(dirpath, \"..\", \".priority\"), \"r\", encoding=\"utf-8\") as f:\n                    priority = str(f.read().strip())\n            res.append(scripts_manager.ScriptFile(self.path, filename, os.path.join(dirpath, filename), priority))\n            if priority != '50':\n                shared.log.debug(f'Extension priority override: {os.path.dirname(dirpath)}:{priority}')\n        res = [x for x in res if os.path.splitext(x.path)[1].lower() == extension and os.path.isfile(x.path)]\n        return res\n\n    def check_updates(self):\n        try:\n            repo = git.Repo(self.path)\n        except Exception:\n            self.can_update = False\n            return\n        for fetch in repo.remote().fetch(dry_run=True):\n            if fetch.flags != fetch.HEAD_UPTODATE:\n                self.can_update = True\n                self.status = \"new commits\"\n                return\n        try:\n            origin = repo.rev_parse('origin')\n            if repo.head.commit != origin:\n                self.can_update = True\n                self.status = \"behind HEAD\"\n                return\n        except Exception:\n            self.can_update = False\n            self.status = \"unknown (remote error)\"\n            return\n        self.can_update = False\n        self.status = \"latest\"\n\n    def git_fetch(self, commit='origin'):\n        repo = git.Repo(self.path)\n        # Fix: `error: Your local changes to the following files would be overwritten by merge`,\n        # because WSL2 Docker set 755 file permissions instead of 644, this results to the error.\n        repo.git.fetch(all=True)\n        repo.git.reset('origin', hard=True)\n        repo.git.reset(commit, hard=True)\n        self.have_info_from_repo = False\n\n\ndef list_extensions():\n    extensions.clear()\n    if not os.path.isdir(extensions_dir):\n        return\n    if shared.opts.disable_all_extensions == \"all\" or shared.opts.disable_all_extensions == \"user\":\n        shared.log.warning(f\"Option set: Disable extensions: {shared.opts.disable_all_extensions}\")\n    extension_paths = []\n    extension_names = []\n    extension_folders = [extensions_builtin_dir] if shared.cmd_opts.safe else [extensions_builtin_dir, extensions_dir]\n    for dirname in extension_folders:\n        if not os.path.isdir(dirname):\n            return\n        for extension_dirname in sorted(os.listdir(dirname)):\n            path = os.path.join(dirname, extension_dirname)\n            if not os.path.isdir(path):\n                continue\n            if extension_dirname in extension_names:\n                shared.log.info(f'Skipping conflicting extension: {path}')\n                continue\n            extension_names.append(extension_dirname)\n            extension_paths.append((extension_dirname, path, dirname == extensions_builtin_dir))\n    if shared.opts.theme_type == 'Modern' and 'sdnext-modernui' in shared.opts.disabled_extensions:\n        shared.opts.disabled_extensions.remove('sdnext-modernui')\n    disabled_extensions = [e.lower() for e in shared.opts.disabled_extensions + temp_disable_extensions()]\n    for dirname, path, is_builtin in extension_paths:\n        enabled = dirname.lower() not in disabled_extensions\n        extension = Extension(name=dirname, path=path, enabled=enabled, is_builtin=is_builtin)\n        extensions.append(extension)\n    shared.log.debug(f'Extensions: disabled={[e.name for e in extensions if not e.enabled]}')\n"
  },
  {
    "path": "modules/extra_networks.py",
    "content": "import re\nimport inspect\nfrom collections import defaultdict\nfrom modules import errors, shared\n\n\nextra_network_registry = {}\n\n\ndef initialize():\n    extra_network_registry.clear()\n\n\ndef register_extra_network(extra_network):\n    extra_network_registry[extra_network.name] = extra_network\n\n\ndef register_default_extra_networks():\n    from modules.ui_extra_networks_styles import ExtraNetworkStyles\n    register_extra_network(ExtraNetworkStyles())\n\n    from modules.lora import lora_common, extra_networks_lora\n    lora_common.extra_network_lora = extra_networks_lora.ExtraNetworkLora()\n    register_extra_network(lora_common.extra_network_lora)\n\n\nclass ExtraNetworkParams:\n    def __init__(self, items=None):\n        self.items = items or []\n        self.positional = []\n        self.named = {}\n        for item in self.items:\n            parts = item.split('=', 2) if isinstance(item, str) else [item]\n            if len(parts) == 2:\n                self.named[parts[0]] = parts[1]\n            else:\n                self.positional.append(item)\n\n\nclass ExtraNetwork:\n    def __init__(self, name):\n        self.name = name\n\n    def activate(self, p, params_list):\n        \"\"\"\n        Called by processing on every run. Whatever the extra network is meant to do should be activated here. Passes arguments related to this extra network in params_list. User passes arguments by specifying this in his prompt:\n        <name:arg1:arg2:arg3>\n        Where name matches the name of this ExtraNetwork object, and arg1:arg2:arg3 are any natural number of text arguments separated by colon.\n        Even if the user does not mention this ExtraNetwork in his prompt, the call will stil be made, with empty params_list - in this case, all effects of this extra networks should be disabled.\n        Can be called multiple times before deactivate() - each new call should override the previous call completely.\n        For example, if this ExtraNetwork's name is 'hypernet' and user's prompt is:\n        > \"1girl, <hypernet:agm:1.1> <extrasupernet:master:12:13:14> <hypernet:ray>\"\n        params_list will be:\n        [\n            ExtraNetworkParams(items=[\"agm\", \"1.1\"]),\n            ExtraNetworkParams(items=[\"ray\"])\n        ]\n        \"\"\"\n        raise NotImplementedError\n\n    def deactivate(self, p, force=False):\n        \"\"\"\n        Called at the end of processing for housekeeping. No need to do anything here.\n        \"\"\"\n        raise NotImplementedError\n\n\ndef is_stepwise(en_obj):\n    all_args = []\n    for en in en_obj:\n        all_args.extend(en.positional[1:])\n        all_args.extend(en.named.values())\n    return any([len(str(x).split(\"@\")) > 1 for x in all_args]) # noqa C419 # pylint: disable=use-a-generator\n\n\ndef activate(p, extra_network_data=None, step=0, include=[], exclude=[]):\n    \"\"\"call activate for extra networks in extra_network_data in specified order, then call activate for all remaining registered networks with an empty argument list\"\"\"\n    if p.disable_extra_networks:\n        return\n    extra_network_data = extra_network_data or p.network_data\n    # if extra_network_data is None or len(extra_network_data) == 0:\n        # return\n    stepwise = False\n    for extra_network_args in extra_network_data.values():\n        stepwise = stepwise or is_stepwise(extra_network_args)\n    functional = shared.opts.lora_functional\n    if shared.opts.lora_force_diffusers and stepwise:\n        shared.log.warning(\"Network load: type=LoRA method=composable loader=diffusers not compatible\")\n        stepwise = False\n    shared.opts.data['lora_functional'] = stepwise or functional\n\n    for extra_network_name, extra_network_args in extra_network_data.items():\n        extra_network = extra_network_registry.get(extra_network_name, None)\n        if extra_network is None:\n            errors.log.warning(f\"Skipping unknown extra network: {extra_network_name}\")\n            continue\n        try:\n            signature = list(inspect.signature(extra_network.activate).parameters)\n            if 'include' in signature and 'exclude' in signature:\n                extra_network.activate(p, extra_network_args, step=step, include=include, exclude=exclude)\n            else:\n                extra_network.activate(p, extra_network_args, step=step)\n        except Exception as e:\n            errors.display(e, f\"Activating network: type={extra_network_name} args:{extra_network_args}\")\n\n    for extra_network_name, extra_network in extra_network_registry.items():\n        args = extra_network_data.get(extra_network_name, None)\n        if args is not None:\n            continue\n        try:\n            signature = list(inspect.signature(extra_network.activate).parameters)\n            if 'include' in signature and 'exclude' in signature:\n                extra_network.activate(p, [], include=include, exclude=exclude)\n            else:\n                extra_network.activate(p, [])\n        except Exception as e:\n            errors.display(e, f\"Activating network: type={extra_network_name}\")\n\n    p.network_data = extra_network_data\n    if stepwise:\n        p.stepwise_lora = True\n        shared.opts.data['lora_functional'] = functional\n\n\ndef deactivate(p, extra_network_data=None, force=shared.opts.lora_force_reload):\n    \"\"\"call deactivate for extra networks in extra_network_data in specified order, then call deactivate for all remaining registered networks\"\"\"\n    if p.disable_extra_networks:\n        return\n    extra_network_data = extra_network_data or p.network_data\n    # if extra_network_data is None or len(extra_network_data) == 0:\n    #    return\n    for extra_network_name in extra_network_data:\n        extra_network = extra_network_registry.get(extra_network_name, None)\n        if extra_network is None:\n            continue\n        try:\n            extra_network.deactivate(p, force=force)\n        except Exception as e:\n            errors.display(e, f\"deactivating extra network {extra_network_name}\")\n\n    for extra_network_name, extra_network in extra_network_registry.items():\n        args = extra_network_data.get(extra_network_name, None)\n        if args is not None:\n            continue\n        try:\n            extra_network.deactivate(p, force=force)\n        except Exception as e:\n            errors.display(e, f\"deactivating unmentioned extra network {extra_network_name}\")\n\n\nre_extra_net = re.compile(r\"<(\\w+):([^>]+)>\")\n\n\ndef parse_prompt(prompt: str | None) -> tuple[str, defaultdict[str, list[ExtraNetworkParams]]]:\n    res: defaultdict[str, list[ExtraNetworkParams]] = defaultdict(list)\n    if prompt is None:\n        return \"\", res\n    if isinstance(prompt, list):\n        shared.log.warning(f\"parse_prompt was called with a list instead of a string: {prompt}\")\n        return parse_prompts(prompt)\n\n    def found(m: re.Match[str]):\n        name, args = m.group(1, 2)\n        res[name].append(ExtraNetworkParams(items=args.split(\":\")))\n        return \"\"\n\n    updated_prompt = re.sub(re_extra_net, found, prompt)\n    return updated_prompt, res\n\n\ndef parse_prompts(prompts: list[str]):\n    updated_prompt_list: list[str] = []\n    extra_data: defaultdict[str, list[ExtraNetworkParams]] = defaultdict(list)\n    for prompt in prompts:\n        updated_prompt, parsed_extra_data = parse_prompt(prompt)\n        if not extra_data:\n            extra_data = parsed_extra_data\n        updated_prompt_list.append(updated_prompt)\n\n    return updated_prompt_list, extra_data\n"
  },
  {
    "path": "modules/extras.py",
    "content": "import os\nimport html\nimport json\nimport time\n\nfrom PIL import Image\nimport torch\nimport gradio as gr\nimport safetensors.torch\nfrom modules.merging import merge, merge_utils, modules_sdxl\nfrom modules import shared, images, sd_models, sd_vae, sd_samplers, devices\n\n\ndef run_pnginfo(image):\n    if image is None:\n        return '', '', ''\n    geninfo, items = images.read_info_from_image(image)\n    items = {**{'parameters': geninfo}, **items}\n    info = ''\n    for key, text in items.items():\n        if key != 'UserComment':\n            info += f\"<div><b>{html.escape(str(key))}</b>: {html.escape(str(text))}</div>\"\n    return '', geninfo, info\n\n\ndef to_half(tensor, enable):\n    if enable and tensor.dtype == torch.float:\n        return tensor.half()\n    return tensor\n\n\ndef run_modelmerger(id_task, **kwargs):  # pylint: disable=unused-argument\n    jobid = shared.state.begin('Merge')\n    t0 = time.time()\n\n    def fail(message):\n        shared.state.textinfo = message\n        shared.state.end(jobid)\n        return [*[gr.update() for _ in range(4)], message]\n\n    kwargs[\"models\"] = {\n        \"model_a\": sd_models.get_closest_checkpoint_match(kwargs.get(\"primary_model_name\", None)).filename,\n        \"model_b\": sd_models.get_closest_checkpoint_match(kwargs.get(\"secondary_model_name\", None)).filename,\n    }\n\n    if kwargs.get(\"primary_model_name\", None) in [None, 'None']:\n        return fail(\"Failed: Merging requires a primary model.\")\n    primary_model_info = sd_models.get_closest_checkpoint_match(kwargs.get(\"primary_model_name\", None))\n    if kwargs.get(\"secondary_model_name\", None) in [None, 'None']:\n        return fail(\"Failed: Merging requires a secondary model.\")\n    secondary_model_info = sd_models.get_closest_checkpoint_match(kwargs.get(\"secondary_model_name\", None))\n    if kwargs.get(\"tertiary_model_name\", None) in [None, 'None'] and kwargs.get(\"merge_mode\", None) in merge_utils.TRIPLE_METHODS:\n        return fail(f\"Failed: Interpolation method ({kwargs.get('merge_mode', None)}) requires a tertiary model.\")\n    tertiary_model_info = sd_models.get_closest_checkpoint_match(kwargs.get(\"tertiary_model_name\", None)) if kwargs.get(\"merge_mode\", None) in merge_utils.TRIPLE_METHODS else None\n\n    del kwargs[\"primary_model_name\"]\n    del kwargs[\"secondary_model_name\"]\n    if kwargs.get(\"tertiary_model_name\", None) is not None:\n        kwargs[\"models\"] |= {\"model_c\": sd_models.get_closest_checkpoint_match(kwargs.get(\"tertiary_model_name\", None)).filename}\n        del kwargs[\"tertiary_model_name\"]\n\n    if kwargs.get(\"alpha_base\", None) and kwargs.get(\"alpha_in_blocks\", None) and kwargs.get(\"alpha_mid_block\", None) and kwargs.get(\"alpha_out_blocks\", None):\n        try:\n            alpha = [float(x) for x in\n                    [kwargs[\"alpha_base\"]] + kwargs[\"alpha_in_blocks\"].split(\",\") + [kwargs[\"alpha_mid_block\"]] + kwargs[\"alpha_out_blocks\"].split(\",\")]\n            assert len(alpha) == 26 or len(alpha) == 20, \"Alpha Block Weights are wrong length (26 or 20 for SDXL)\"\n            kwargs[\"alpha\"] = alpha\n        except KeyError as ke:\n            shared.log.warning(f\"Merge: Malformed manual block weight: {ke}\")\n    elif kwargs.get(\"alpha_preset\", None) or kwargs.get(\"alpha\", None):\n        kwargs[\"alpha\"] = kwargs.get(\"alpha_preset\", kwargs[\"alpha\"])\n\n    kwargs.pop(\"alpha_base\", None)\n    kwargs.pop(\"alpha_in_blocks\", None)\n    kwargs.pop(\"alpha_mid_block\", None)\n    kwargs.pop(\"alpha_out_blocks\", None)\n    kwargs.pop(\"alpha_preset\", None)\n\n    if kwargs.get(\"beta_base\", None) and kwargs.get(\"beta_in_blocks\", None) and kwargs.get(\"beta_mid_block\", None) and kwargs.get(\"beta_out_blocks\", None):\n        try:\n            beta = [float(x) for x in\n                    [kwargs[\"beta_base\"]] + kwargs[\"beta_in_blocks\"].split(\",\") + [kwargs[\"beta_mid_block\"]] + kwargs[\"beta_out_blocks\"].split(\",\")]\n            assert len(beta) == 26 or len(beta) == 20, \"Beta Block Weights are wrong length (26 or 20 for SDXL)\"\n            kwargs[\"beta\"] = beta\n        except KeyError as ke:\n            shared.log.warning(f\"Merge: Malformed manual block weight: {ke}\")\n    elif kwargs.get(\"beta_preset\", None) or kwargs.get(\"beta\", None):\n        kwargs[\"beta\"] = kwargs.get(\"beta_preset\", kwargs[\"beta\"])\n\n    kwargs.pop(\"beta_base\", None)\n    kwargs.pop(\"beta_in_blocks\", None)\n    kwargs.pop(\"beta_mid_block\", None)\n    kwargs.pop(\"beta_out_blocks\", None)\n    kwargs.pop(\"beta_preset\", None)\n\n    if kwargs[\"device\"] == \"gpu\":\n        kwargs[\"device\"] = devices.device\n    elif kwargs[\"device\"] == \"shuffle\":\n        kwargs[\"device\"] = torch.device(\"cpu\")\n        kwargs[\"work_device\"] = devices.device\n    else:\n        kwargs[\"device\"] = torch.device(\"cpu\")\n    if kwargs.pop(\"unload\", False):\n        sd_models.unload_model_weights()\n\n    try:\n        theta_0 = merge.merge_models(**kwargs)\n    except Exception as e:\n        return fail(f\"{e}\")\n\n    try:\n        theta_0 = theta_0.to_dict() #TensorDict -> Dict if necessary\n    except Exception:\n        pass\n\n    bake_in_vae_filename = sd_vae.vae_dict.get(kwargs.get(\"bake_in_vae\", None), None)\n    if bake_in_vae_filename is not None:\n        shared.log.info(f\"Merge VAE='{bake_in_vae_filename}'\")\n        shared.state.textinfo = 'Merge VAE'\n        vae_dict = sd_vae.load_vae_dict(bake_in_vae_filename)\n        for key in vae_dict.keys():\n            theta_0_key = 'first_stage_model.' + key\n            if theta_0_key in theta_0:\n                theta_0[theta_0_key] = to_half(vae_dict[key], kwargs.get(\"precision\", \"fp16\") == \"fp16\")\n        del vae_dict\n\n    ckpt_dir = shared.opts.ckpt_dir or sd_models.model_path\n    filename = kwargs.get(\"custom_name\", \"Unnamed_Merge\")\n    filename += \".\" + kwargs.get(\"checkpoint_format\", None)\n    output_modelname = os.path.join(ckpt_dir, filename)\n    shared.state.textinfo = \"merge saving\"\n    metadata = None\n    if kwargs.get(\"save_metadata\", False):\n        metadata = {\"format\": \"pt\", \"sd_merge_models\": {}}\n        merge_recipe = {\n            \"type\": \"SDNext\",  # indicate this model was merged with webui's built-in merger\n            \"primary_model_hash\": primary_model_info.sha256,\n            \"secondary_model_hash\": secondary_model_info.sha256 if secondary_model_info else None,\n            \"tertiary_model_hash\": tertiary_model_info.sha256 if tertiary_model_info else None,\n            \"merge_mode\": kwargs.get('merge_mode', None),\n            \"alpha\": kwargs.get('alpha', None),\n            \"beta\": kwargs.get('beta', None),\n            \"precision\": kwargs.get('precision', None),\n            \"custom_name\": kwargs.get(\"custom_name\", \"Unamed_Merge\"),\n        }\n        metadata[\"sd_merge_recipe\"] = json.dumps(merge_recipe)\n\n        def add_model_metadata(checkpoint_info):\n            checkpoint_info.calculate_shorthash()\n            metadata[\"sd_merge_models\"][checkpoint_info.sha256] = {\n                \"name\": checkpoint_info.name,\n                \"legacy_hash\": checkpoint_info.hash,\n                \"sd_merge_recipe\": checkpoint_info.metadata.get(\"sd_merge_recipe\", None)\n            }\n            metadata[\"sd_merge_models\"].update(checkpoint_info.metadata.get(\"sd_merge_models\", {}))\n\n        add_model_metadata(primary_model_info)\n        if secondary_model_info:\n            add_model_metadata(secondary_model_info)\n        if tertiary_model_info:\n            add_model_metadata(tertiary_model_info)\n        metadata[\"sd_merge_models\"] = json.dumps(metadata[\"sd_merge_models\"])\n\n    _, extension = os.path.splitext(output_modelname)\n\n    if os.path.exists(output_modelname) and not kwargs.get(\"overwrite\", False):\n        return [*[gr.Dropdown.update(choices=sd_models.checkpoint_titles()) for _ in range(4)], f\"Model alredy exists: {output_modelname}\"]\n    if extension.lower() == \".safetensors\":\n        safetensors.torch.save_file(theta_0, output_modelname, metadata=metadata)\n    else:\n        torch.save(theta_0, output_modelname)\n\n    t1 = time.time()\n    shared.log.info(f\"Merge complete: saved='{output_modelname}' time={t1-t0:.2f}\")\n    sd_models.list_models()\n    created_model = next((ckpt for ckpt in sd_models.checkpoints_list.values() if ckpt.name == filename), None)\n    if created_model:\n        created_model.calculate_shorthash()\n    devices.torch_gc(force=True, reason='merge')\n    shared.state.end(jobid)\n    return [*[gr.Dropdown.update(choices=sd_models.checkpoint_titles()) for _ in range(4)], f\"Model saved to {output_modelname}\"]\n\n\ndef run_model_modules(model_type:str, model_name:str, custom_name:str,\n                      comp_unet:str, comp_vae:str, comp_te1:str, comp_te2:str,\n                      precision:str, comp_scheduler:str, comp_prediction:str,\n                      comp_lora:str, comp_fuse:float,\n                      meta_author:str, meta_version:str, meta_license:str, meta_desc:str, meta_hint:str, meta_thumbnail:Image.Image,\n                      create_diffusers:bool, create_safetensors:bool, debug:bool):\n\n    status = ''\n    def msg(text, err:bool=False):\n        nonlocal status\n        if err:\n            shared.log.error(f'Modules merge: {text}')\n        else:\n            shared.log.info(f'Modules merge: {text}')\n        status += text + '<br>'\n        return status\n\n    if model_type != 'sdxl':\n        yield msg(\"only SDXL models are supported\", err=True)\n        return\n    if len(custom_name) == 0:\n        yield msg(\"output name is required\", err=True)\n        return\n    checkpoint_info = sd_models.get_closest_checkpoint_match(model_name)\n    if checkpoint_info is None:\n        yield msg(\"input model not found\", err=True)\n        return\n    fn = checkpoint_info.filename\n    jobid = shared.state.begin('Merge')\n    yield msg(\"modules merge starting\")\n    yield msg(\"unload current model\")\n    sd_models.unload_model_weights(op='model')\n\n    modules_sdxl.recipe.name = custom_name\n    modules_sdxl.recipe.author = meta_author\n    modules_sdxl.recipe.version = meta_version\n    modules_sdxl.recipe.desc = meta_desc\n    modules_sdxl.recipe.hint = meta_hint\n    modules_sdxl.recipe.license = meta_license\n    modules_sdxl.recipe.thumbnail = meta_thumbnail\n    modules_sdxl.recipe.base = fn\n    modules_sdxl.recipe.unet = comp_unet\n    modules_sdxl.recipe.vae = comp_vae\n    modules_sdxl.recipe.te1 = comp_te1\n    modules_sdxl.recipe.te2 = comp_te2\n    modules_sdxl.recipe.prediction = comp_prediction\n    modules_sdxl.recipe.diffusers = create_diffusers\n    modules_sdxl.recipe.safetensors = create_safetensors\n    modules_sdxl.recipe.fuse = float(comp_fuse)\n    modules_sdxl.recipe.debug = debug\n\n    loras = [l.strip() if ':' in l else f'{l.strip()}:1.0' for l in comp_lora.split(',') if len(l.strip()) > 0]\n    for lora, strength in [l.split(':') for l in loras]:\n        modules_sdxl.recipe.lora[lora] = float(strength)\n    scheduler = sd_samplers.create_sampler(comp_scheduler, None)\n    modules_sdxl.recipe.scheduler = scheduler.__class__.__name__ if scheduler is not None else None\n    if precision == 'fp32':\n        modules_sdxl.recipe.precision = torch.float32\n    elif precision == 'bf16':\n        modules_sdxl.recipe.precision = torch.bfloat16\n    else:\n        modules_sdxl.recipe.precision = torch.float16\n\n    modules_sdxl.status = status\n    yield from modules_sdxl.merge()\n    status = modules_sdxl.status\n\n    devices.torch_gc(force=True, reason='merge')\n    yield msg(\"modules merge complete\")\n    if modules_sdxl.pipeline is not None:\n        checkpoint_info = sd_models.CheckpointInfo(filename='None')\n        shared.sd_model = modules_sdxl.pipeline\n        sd_models.set_defaults(shared.sd_model, checkpoint_info)\n        sd_models.set_diffuser_options(shared.sd_model, offload=False)\n        sd_models.set_diffuser_offload(shared.sd_model)\n        yield msg(\"pipeline loaded\")\n    shared.state.end(jobid)\n"
  },
  {
    "path": "modules/face/__init__.py",
    "content": "import os\nimport gradio as gr\nfrom PIL import Image\nfrom modules import scripts_manager, processing, shared, images\n\n\ndebug = shared.log.trace if os.environ.get('SD_FACE_DEBUG', None) is not None else lambda *args, **kwargs: None\n\n\nclass Script(scripts_manager.Script):\n    original_pipeline = None\n    original_prompt_attention = None\n\n    def title(self):\n        return 'Face: Multiple ID Transfers'\n\n    def show(self, is_img2img):\n        return True\n\n    def load_images(self, files):\n        init_images = []\n        for file in files or []:\n            try:\n                if isinstance(file, str):\n                    from modules.api.api import decode_base64_to_image\n                    image = decode_base64_to_image(file)\n                elif isinstance(file, Image.Image):\n                    image = file\n                elif isinstance(file, dict) and 'name' in file:\n                    image = Image.open(file['name']) # _TemporaryFileWrapper from gr.Files\n                elif hasattr(file, 'name'):\n                    image = Image.open(file.name) # _TemporaryFileWrapper from gr.Files\n                else:\n                    raise ValueError(f'Face: unknown input: {file}')\n                init_images.append(image)\n            except Exception as e:\n                shared.log.warning(f'Face: failed to load image: {e}')\n        return init_images\n\n    def mode_change(self, mode):\n        return [\n            gr.update(visible=mode=='ReSwapper'),\n            gr.update(visible=mode=='FaceID'),\n            gr.update(visible=mode=='FaceSwap'),\n            gr.update(visible=mode=='InstantID'),\n            gr.update(visible=mode=='PhotoMaker'),\n        ]\n\n    # return signature is array of gradio components\n    def ui(self, _is_img2img):\n        with gr.Row():\n            gr.HTML(\"<span>&nbsp Face: Multiple ID Transfers</span><br>\")\n        with gr.Row():\n            models = ['None', 'FaceID', 'FaceSwap', 'InstantID', 'PhotoMaker']\n            if shared.cmd_opts.experimental:\n                models.append('ReSwapper')\n            mode = gr.Dropdown(label='Mode', choices=['None', 'FaceID', 'FaceSwap', 'InstantID', 'PhotoMaker'], value='None')\n        with gr.Group(visible=False) as cfg_reswapper:\n            with gr.Row():\n                gr.HTML('<a href=\"https://github.com/somanchiu/ReSwapper\" target=\"_blank\">&nbsp ReSwapper</a><br>')\n            with gr.Row():\n                from modules.face.reswapper import RESWAPPER_MODELS\n                reswapper_model = gr.Dropdown(choices=list(RESWAPPER_MODELS), label='ReSwapper Model', value='ReSwapper 256 0.2')\n                reswapper_original = gr.Checkbox(label='Return original images', value=False)\n        with gr.Group(visible=False) as cfg_faceid:\n            with gr.Row():\n                gr.HTML('<a href=\"https://huggingface.co/h94/IP-Adapter-FaceID\" target=\"_blank\">&nbsp Tencent AI Lab IP-Adapter FaceID</a><br>')\n            with gr.Row():\n                from modules.face.faceid import FACEID_MODELS\n                ip_model = gr.Dropdown(choices=list(FACEID_MODELS), label='FaceID Model', value='FaceID Base')\n            with gr.Row(visible=True):\n                ip_override = gr.Checkbox(label='Override sampler', value=True)\n                ip_cache = gr.Checkbox(label='Cache model', value=True)\n            with gr.Row(visible=True):\n                ip_strength = gr.Slider(label='Strength', minimum=0.0, maximum=2.0, step=0.01, value=1.0)\n                ip_structure = gr.Slider(label='Structure', minimum=0.0, maximum=1.0, step=0.01, value=1.0)\n        with gr.Group(visible=False) as cfg_faceswap:\n            with gr.Row():\n                gr.HTML('<a href=\"https://github.com/deepinsight/insightface/blob/master/examples/in_swapper/README.md\" target=\"_blank\">&nbsp InsightFace InSwapper</a><br>')\n            with gr.Row(visible=True):\n                fs_cache = gr.Checkbox(label='Cache model', value=True)\n        with gr.Group(visible=False) as cfg_instantid:\n            with gr.Row():\n                gr.HTML('<a href=\"https://github.com/InstantID/InstantID\" target=\"_blank\">&nbsp InstantX InstantID</a><br>')\n            with gr.Row():\n                id_strength = gr.Slider(label='Strength', minimum=0.0, maximum=2.0, step=0.01, value=1.0)\n                id_conditioning = gr.Slider(label='Control', minimum=0.0, maximum=2.0, step=0.01, value=0.5)\n            with gr.Row(visible=True):\n                id_cache = gr.Checkbox(label='Cache model', value=True)\n        with gr.Group(visible=False) as cfg_photomaker:\n            with gr.Row():\n                gr.HTML('<a href=\"https://photo-maker.github.io/\" target=\"_blank\">&nbsp Tenecent ARC Lab PhotoMaker</a><br>')\n            with gr.Row():\n                pm_model = gr.Dropdown(label='PhotoMaker Model', choices=['PhotoMaker v1', 'PhotoMaker v2'], value='PhotoMaker v2')\n                pm_trigger = gr.Textbox(label='Trigger word', placeholder=\"enter one word in prompt\")\n            with gr.Row():\n                pm_strength = gr.Slider(label='Strength', minimum=0.0, maximum=2.0, step=0.01, value=1.0)\n                pm_start = gr.Slider(label='Start', minimum=0.0, maximum=1.0, step=0.01, value=0.5)\n        with gr.Row():\n            files = gr.File(label='Input images', file_count='multiple', file_types=['image'], interactive=True, height=100)\n        with gr.Row():\n            gallery = gr.Gallery(show_label=False, value=[])\n        files.change(fn=self.load_images, inputs=[files], outputs=[gallery])\n        mode.change(fn=self.mode_change, inputs=[mode], outputs=[cfg_reswapper, cfg_faceid, cfg_faceswap, cfg_instantid, cfg_photomaker])\n\n        return [mode, gallery, reswapper_model, reswapper_original, ip_model, ip_override, ip_cache, ip_strength, ip_structure, id_strength, id_conditioning, id_cache, pm_model, pm_trigger, pm_strength, pm_start, fs_cache]\n\n    def run(self, p: processing.StableDiffusionProcessing, mode, input_images, reswapper_model, reswapper_original, ip_model, ip_override, ip_cache, ip_strength, ip_structure, id_strength, id_conditioning, id_cache, pm_model, pm_trigger, pm_strength, pm_start, fs_cache): # pylint: disable=arguments-differ, unused-argument\n        if mode == 'None':\n            return None\n        if input_images is None or len(input_images) == 0:\n            shared.log.error('Face: no init images')\n            return None\n        if shared.sd_model_type != 'sd' and shared.sd_model_type != 'sdxl':\n            shared.log.error('Face: base model not supported')\n            return None\n\n        input_images = input_images.copy()\n        for i, image in enumerate(input_images):\n            if isinstance(image, str):\n                from modules.api.api import decode_base64_to_image\n                input_images[i] = decode_base64_to_image(image).convert(\"RGB\")\n\n        for i, image in enumerate(input_images):\n            if not isinstance(image, Image.Image):\n                input_images[i] = Image.open(image['name'])\n\n        processed = None\n        self.original_pipeline = shared.sd_model\n        self.original_prompt_attention = shared.opts.prompt_attention\n        shared.opts.data['prompt_attention'] = 'fixed'\n        if mode == 'FaceID': # faceid runs as ipadapter in its own pipeline\n            from modules.face.insightface import get_app\n            app = get_app('buffalo_l')\n            from modules.face.faceid import face_id\n            processed_images = face_id(p, app=app, source_images=input_images, model=ip_model, override=ip_override, cache=ip_cache, scale=ip_strength, structure=ip_structure) # run faceid pipeline\n            processed = processing.get_processed(p, images_list=processed_images, seed=p.seed, subseed=p.subseed, index_of_first_image=0) # manually created processed object\n        elif mode == 'PhotoMaker': # photomaker creates pipeline and triggers original process_images\n            from modules.face.insightface import get_app\n            app = get_app('buffalo_l')\n            from modules.face.photomaker import photo_maker\n            photo_maker(p, app=app, input_images=input_images, model=pm_model, trigger=pm_trigger, strength=pm_strength, start=pm_start)\n        elif mode == 'InstantID':\n            if hasattr(p, 'init_images') and p.init_images is not None and len(p.init_images) > 0:\n                shared.log.warning('Face: InstantID with init image not supported')\n                input_images += p.init_images\n            from modules.face.insightface import get_app\n            app=get_app('antelopev2')\n            from modules.face.instantid import instant_id # instantid creates pipeline and triggers original process_images\n            processed = instant_id(p, app=app, source_images=input_images, strength=id_strength, conditioning=id_conditioning, cache=id_cache)\n\n        if processed is None: # run normal pipeline\n            processed = processing.process_images(p)\n\n        if mode == 'FaceSwap': # faceswap runs as postprocessing\n            from modules.face.insightface import get_app\n            app=get_app('buffalo_l')\n            from modules.face.faceswap import face_swap\n            processed.images = face_swap(p, app=app, input_images=processed.images, source_image=input_images[0], cache=fs_cache)\n        elif mode == 'ReSwapper':\n            from modules.face.insightface import get_app\n            app = get_app('buffalo_l', resolution=512)\n            from modules.face.reswapper import reswapper\n            processed.images = reswapper(p, app=app, source_images=processed.images, target_images=input_images, model_name=reswapper_model, original=reswapper_original)\n\n        processed.info = processed.infotext(p, 0)\n        processed.infotexts = [processed.info]\n        if shared.opts.samples_save and not p.do_not_save_samples and processed.images is not None:\n            for i, image in enumerate(processed.images):\n                info = processing.create_infotext(p, index=i)\n                images.save_image(image, path=p.outpath_samples, seed=p.all_seeds[i], prompt=p.all_prompts[i], info=info, p=p)\n\n        return processed\n\n    def after(self, p: processing.StableDiffusionProcessing, processed: processing.Processed, *args): # pylint: disable=unused-argument\n        if self.original_pipeline is not None:\n            shared.sd_model = self.original_pipeline\n            self.original_pipeline = None\n        if self.original_prompt_attention is not None:\n            shared.opts.data['prompt_attention'] = self.original_prompt_attention\n            self.original_prompt_attention = None\n        return processed\n"
  },
  {
    "path": "modules/face/faceid.py",
    "content": "from typing import List\nimport os\nimport cv2\nimport torch\nimport numpy as np\nimport diffusers\nimport huggingface_hub as hf\nfrom PIL import Image\nfrom modules import processing, shared, devices, extra_networks, sd_hijack_freeu, script_callbacks, ipadapter, token_merge\nfrom modules.sd_hijack_hypertile import context_hypertile_vae, context_hypertile_unet\n\n\nFACEID_MODELS = {\n    \"FaceID Base\": \"h94/IP-Adapter-FaceID/ip-adapter-faceid_sd15.bin\",\n    \"FaceID Plus v1\": \"h94/IP-Adapter-FaceID/ip-adapter-faceid-plus_sd15.bin\",\n    \"FaceID Plus v2\": \"h94/IP-Adapter-FaceID/ip-adapter-faceid-plusv2_sd15.bin\",\n    \"FaceID XL\": \"h94/IP-Adapter-FaceID/ip-adapter-faceid_sdxl.bin\",\n    # \"FaceID Portrait v10\": \"h94/IP-Adapter-FaceID/ip-adapter-faceid-portrait_sd15.bin\",\n    # \"FaceID Portrait v11\": \"h94/IP-Adapter-FaceID/ip-adapter-faceid-portrait-v11_sd15.bin\",\n    # \"FaceID XL Plus v2\": \"h94/IP-Adapter-FaceID/ip-adapter-faceid_sdxl.bin\",\n}\n\nfaceid_model_weights = None\nfaceid_model_name = None\ndebug = shared.log.trace if os.environ.get(\"SD_FACE_DEBUG\", None) is not None else lambda *args, **kwargs: None\n\n\ndef hijack_load_ip_adapter(self):\n    self.image_proj_model.load_state_dict(faceid_model_weights[\"image_proj\"])\n    ip_layers = torch.nn.ModuleList(self.pipe.unet.attn_processors.values())\n    ip_layers.load_state_dict(faceid_model_weights[\"ip_adapter\"], strict=False)\n\n\ndef face_id(\n    p: processing.StableDiffusionProcessing,\n    app,\n    source_images: List[Image.Image],\n    model: str,\n    override: bool,\n    cache: bool,\n    scale: float,\n    structure: float,\n):\n    global faceid_model_weights, faceid_model_name  # pylint: disable=global-statement\n    if source_images is None or len(source_images) == 0:\n        shared.log.warning('FaceID: no input images')\n        return None\n\n    from insightface.utils import face_align\n    try:\n        from ip_adapter.ip_adapter_faceid import (\n            IPAdapterFaceID,\n            IPAdapterFaceIDPlus,\n            IPAdapterFaceIDXL,\n            IPAdapterFaceIDPlusXL,\n        )\n        from ip_adapter.ip_adapter_faceid_separate import (\n            IPAdapterFaceID as IPAdapterFaceIDPortrait,\n        )\n    except Exception as e:\n        shared.log.error(f\"FaceID incorrect version of ip_adapter: {e}\")\n        return None\n\n    processed_images = []\n\n    faceid_model = None\n    original_load_ip_adapter = None\n\n    try:\n        shared.prompt_styles.apply_styles_to_extra(p)\n\n        if shared.opts.cuda_compile_backend == 'none':\n            token_merge.apply_token_merging(p.sd_model)\n            sd_hijack_freeu.apply_freeu(p)\n\n        script_callbacks.before_process_callback(p)\n\n        with context_hypertile_vae(p), context_hypertile_unet(p), devices.inference_context():\n            ip_ckpt = FACEID_MODELS[model]\n            folder, filename = os.path.split(ip_ckpt)\n            basename, _ext = os.path.splitext(filename)\n            model_path = hf.hf_hub_download(repo_id=folder, filename=filename, cache_dir=shared.opts.hfcache_dir)\n            if model_path is None:\n                shared.log.error(f'FaceID download failed: model={model} file=\"{ip_ckpt}\"')\n                return None\n            if faceid_model_weights is None or faceid_model_name != model or not cache:\n                shared.log.debug(f'FaceID load: model={model} file=\"{ip_ckpt}\"')\n                faceid_model_weights = torch.load(model_path, map_location=\"cpu\")\n            else:\n                shared.log.debug(f'FaceID cached: model={model} file=\"{ip_ckpt}\"')\n\n            if \"XL Plus\" in model and shared.sd_model_type == 'sd':\n                image_encoder_path = \"laion/CLIP-ViT-H-14-laion2B-s32B-b79K\"\n                original_load_ip_adapter = IPAdapterFaceIDPlusXL.load_ip_adapter\n                IPAdapterFaceIDPlusXL.load_ip_adapter = hijack_load_ip_adapter\n                faceid_model = IPAdapterFaceIDPlusXL(\n                    sd_pipe=shared.sd_model,\n                    image_encoder_path=image_encoder_path,\n                    ip_ckpt=model_path,\n                    lora_rank=128,\n                    num_tokens=4,\n                    device=devices.device,\n                    torch_dtype=devices.dtype,\n                )\n            elif \"XL\" in model and shared.sd_model_type == 'sdxl':\n                original_load_ip_adapter = IPAdapterFaceIDXL.load_ip_adapter\n                IPAdapterFaceIDXL.load_ip_adapter = hijack_load_ip_adapter\n                faceid_model = IPAdapterFaceIDXL(\n                    sd_pipe=shared.sd_model,\n                    ip_ckpt=model_path,\n                    lora_rank=128,\n                    num_tokens=4,\n                    device=devices.device,\n                    torch_dtype=devices.dtype,\n                )\n            elif \"Plus\" in model and shared.sd_model_type == 'sd':\n                original_load_ip_adapter = IPAdapterFaceIDPlus.load_ip_adapter\n                IPAdapterFaceIDPlus.load_ip_adapter = hijack_load_ip_adapter\n                image_encoder_path = \"laion/CLIP-ViT-H-14-laion2B-s32B-b79K\"\n                faceid_model = IPAdapterFaceIDPlus(\n                    sd_pipe=shared.sd_model,\n                    image_encoder_path=image_encoder_path,\n                    ip_ckpt=model_path,\n                    lora_rank=128,\n                    num_tokens=4,\n                    device=devices.device,\n                    torch_dtype=devices.dtype,\n                )\n            elif \"Portrait\" in model and shared.sd_model_type == 'sd':\n                original_load_ip_adapter = IPAdapterFaceIDPortrait.load_ip_adapter\n                IPAdapterFaceIDPortrait.load_ip_adapter = hijack_load_ip_adapter\n                faceid_model = IPAdapterFaceIDPortrait(\n                    sd_pipe=shared.sd_model,\n                    ip_ckpt=model_path,\n                    num_tokens=16,\n                    n_cond=5,\n                    device=devices.device,\n                    torch_dtype=devices.dtype,\n                )\n            elif \"Base\" in model and shared.sd_model_type == 'sd':\n                original_load_ip_adapter = IPAdapterFaceID.load_ip_adapter\n                IPAdapterFaceID.load_ip_adapter = hijack_load_ip_adapter\n                faceid_model = IPAdapterFaceID(\n                    sd_pipe=shared.sd_model,\n                    ip_ckpt=model_path,\n                    lora_rank=128,\n                    num_tokens=4,\n                    device=devices.device,\n                    torch_dtype=devices.dtype,\n                )\n            else:\n                shared.log.error(f'FaceID model not supported: model=\"{model}\" class={shared.sd_model.__class__.__name__}')\n                return None\n\n            if override:\n                shared.sd_model.scheduler = diffusers.DDIMScheduler(\n                    num_train_timesteps=1000,\n                    beta_start=0.00085,\n                    beta_end=0.012,\n                    beta_schedule=\"scaled_linear\",\n                    clip_sample=False,\n                    set_alpha_to_one=False,\n                    steps_offset=1,\n                )\n\n            shortcut = \"v2\" in model\n            faceid_model_name = model\n            face_embeds = []\n            face_images = []\n\n            for i, source_image in enumerate(source_images):\n                np_image = cv2.cvtColor(np.array(source_image), cv2.COLOR_RGB2BGR)\n                faces = app.get(np_image)\n                if len(faces) == 0:\n                    shared.log.error(\"FaceID: no faces found\")\n                    break\n                face_embeds.append(torch.from_numpy(faces[0].normed_embedding).unsqueeze(0))\n                face_images.append(face_align.norm_crop(np_image, landmark=faces[0].kps, image_size=224))\n                shared.log.debug(f'FaceID face: i={i+1} score={faces[0].det_score:.2f} gender={\"female\" if faces[0].gender==0 else \"male\"} age={faces[0].age} bbox={faces[0].bbox}')\n                p.extra_generation_params[f\"FaceID {i+1}\"] = f'{faces[0].det_score:.2f} {\"female\" if faces[0].gender==0 else \"male\"} {faces[0].age}y'\n\n            if len(face_embeds) == 0:\n                shared.log.error(\"FaceID: no faces found\")\n                return None\n\n            face_embeds = torch.cat(face_embeds, dim=0)\n            ip_model_dict = {  # main generate dict\n                \"num_samples\": p.batch_size,\n                \"width\": p.width,\n                \"height\": p.height,\n                \"num_inference_steps\": p.steps,\n                \"scale\": scale,\n                \"guidance_scale\": p.cfg_scale,\n                \"faceid_embeds\": face_embeds.shape,  # placeholder\n            }\n\n            # optional generate dict\n            if shortcut is not None:\n                ip_model_dict[\"shortcut\"] = shortcut\n            if \"Plus\" in model:\n                ip_model_dict[\"s_scale\"] = structure\n            shared.log.debug(f\"FaceID args: {ip_model_dict}\")\n            if \"Plus\" in model:\n                ip_model_dict[\"face_image\"] = face_images\n            ip_model_dict[\"faceid_embeds\"] = face_embeds # overwrite placeholder\n            faceid_model.set_scale(scale)\n\n            if not p.all_prompts:\n                processing.process_init(p)\n                p.init(p.all_prompts, p.all_seeds, p.all_subseeds)\n            for n in range(p.n_iter):\n                p.iteration = n\n                p.prompts = p.all_prompts[n * p.batch_size:(n+1) * p.batch_size]\n                p.negative_prompts = p.all_negative_prompts[n * p.batch_size:(n+1) * p.batch_size]\n                p.seeds = p.all_seeds[n * p.batch_size:(n+1) * p.batch_size]\n                p.subseeds = p.all_subseeds[n * p.batch_size:(n+1) * p.batch_size]\n                p.prompts, p.network_data = extra_networks.parse_prompts(p.prompts)\n\n                extra_networks.activate(p, p.network_data)\n                ip_model_dict.update({\n                        \"prompt\": p.prompts[0],\n                        \"negative_prompt\": p.negative_prompts[0],\n                        \"seed\": p.seeds[0],\n                    })\n                debug(f\"FaceID: {ip_model_dict}\")\n                res = faceid_model.generate(**ip_model_dict)\n                if isinstance(res, list):\n                    processed_images += res\n\n            faceid_model.set_scale(0)\n            faceid_model = None\n\n            if not cache:\n                faceid_model_weights = None\n                faceid_model_name = None\n            devices.torch_gc()\n\n        ipadapter.unapply(p.sd_model)\n        extra_networks.deactivate(p, p.network_data)\n\n        p.extra_generation_params[\"IP Adapter\"] = f\"{basename}:{scale}\"\n    finally:\n        if faceid_model is not None and original_load_ip_adapter is not None:\n            faceid_model.__class__.load_ip_adapter = original_load_ip_adapter\n        if shared.opts.cuda_compile_backend == 'none':\n            token_merge.remove_token_merging(p.sd_model)\n        script_callbacks.after_process_callback(p)\n\n    return processed_images\n"
  },
  {
    "path": "modules/face/faceswap.py",
    "content": "from typing import List\nimport os\nimport cv2\nimport numpy as np\nimport huggingface_hub as hf\nfrom PIL import Image\nfrom modules import processing, shared, devices\n\n\ndebug = shared.log.trace if os.environ.get('SD_FACE_DEBUG', None) is not None else lambda *args, **kwargs: None\ninsightface_app = None\nswapper = None\n\n\ndef face_swap(p: processing.StableDiffusionProcessing, app, input_images: List[Image.Image], source_image: Image.Image, cache: bool):\n    global swapper # pylint: disable=global-statement\n    if swapper is None:\n        import insightface.model_zoo\n        repo_id = 'ezioruan/inswapper_128.onnx'\n        model_path = hf.hf_hub_download(repo_id=repo_id, filename='inswapper_128.onnx', cache_dir=shared.opts.hfcache_dir)\n        shared.log.debug(f'FaceSwap load: repo=\"{repo_id}\" path=\"{model_path}\"')\n        # model_path = hf.hf_hub_download(repo_id='somanchiu/reswapper', filename='reswapper_256-1567500_originalInswapperClassCompatible.onnx', cache_dir=shared.opts.hfcache_dir)\n        try:\n            router: insightface.model_zoo.model_zoo.INSwapper = insightface.model_zoo.model_zoo.ModelRouter(model_path)\n            swapper = router.get_model()\n        except Exception as e:\n            shared.log.error(f'FaceSwap load: {e}')\n            return None\n\n    np_image = cv2.cvtColor(np.array(source_image), cv2.COLOR_RGB2BGR)\n    faces = app.get(np_image)\n    if faces is None or len(faces) == 0:\n        shared.log.warning('FaceSwap: No faces detected')\n        return None\n    source_face = faces[0]\n    processed_images = []\n    for image in input_images:\n        np_image = cv2.cvtColor(np.array(image), cv2.COLOR_RGB2BGR)\n        faces = app.get(np_image)\n        for i, face in enumerate(faces):\n            debug(f'FaceSwap: face={i} source={source_face.bbox} target={face.bbox}')\n            np_image = swapper.get(img=np_image, target_face=face, source_face=source_face, paste_back=True) # pylint: disable=unexpected-keyword-arg, no-value-for-parameter\n        p.extra_generation_params[\"FaceSwap\"] = f'{len(faces)}'\n        np_image = cv2.cvtColor(np_image, cv2.COLOR_BGR2RGB)\n        processed_images.append(Image.fromarray(np_image))\n\n    if not cache:\n        swapper = None\n    devices.torch_gc()\n\n    return processed_images\n"
  },
  {
    "path": "modules/face/insightface.py",
    "content": "import os\nfrom modules.shared import log, opts\nfrom modules import devices\n\n\ninsightface_app = None\ninstightface_mp = None\n\n\ndef get_app(mp_name, threshold=0.5, resolution=640):\n    global insightface_app, instightface_mp # pylint: disable=global-statement\n\n    from installer import install, installed, install_insightface\n    if not installed('insightface', reload=False, quiet=True):\n        install_insightface()\n    if not installed('ip_adapter', reload=False, quiet=True):\n        install('git+https://github.com/tencent-ailab/IP-Adapter.git', 'ip_adapter', ignore=False)\n\n    if insightface_app is None or mp_name != instightface_mp:\n        import insightface\n        from insightface.model_zoo import model_zoo\n        from insightface.app import face_analysis\n        model_zoo.print = lambda *args, **kwargs: None\n        face_analysis.print = lambda *args, **kwargs: None\n        import huggingface_hub as hf\n        import zipfile\n        log.debug(f\"InsightFace: version={insightface.__version__} mp={mp_name} provider={devices.onnx}\")\n        root_dir = os.path.join(opts.diffusers_dir, 'models--vladmandic--insightface-faceanalysis')\n        local_dir = os.path.join(root_dir, 'models')\n        extract_dir = os.path.join(local_dir, mp_name)\n        model_path = os.path.join(local_dir, f'{mp_name}.zip')\n        if not os.path.exists(model_path):\n            model_path = hf.hf_hub_download(\n                repo_id='vladmandic/insightface-faceanalysis',\n                filename=f'{mp_name}.zip',\n                local_dir_use_symlinks=False,\n                cache_dir=opts.hfcache_dir,\n                local_dir=local_dir\n            )\n        if not os.path.exists(extract_dir):\n            log.debug(f'InsightFace extract: folder=\"{extract_dir}\"')\n            os.makedirs(extract_dir)\n            with zipfile.ZipFile(model_path) as zf:\n                zf.extractall(local_dir)\n        kwargs = {\n            'root': root_dir,\n            'download': False,\n            'download_zip': False,\n        }\n        insightface_app = face_analysis.FaceAnalysis(name=mp_name, providers=devices.onnx, **kwargs)\n        instightface_mp = mp_name\n        insightface_app.prepare(ctx_id=0, det_thresh=threshold, det_size=(resolution, resolution))\n    return insightface_app\n"
  },
  {
    "path": "modules/face/instantid.py",
    "content": "import os\nimport cv2\nimport torch\nimport numpy as np\nimport huggingface_hub as hf\nfrom modules import shared, processing, sd_models, devices\n\n\nREPO_ID = \"InstantX/InstantID\"\ncontrolnet_model = None\ndebug = shared.log.trace if os.environ.get('SD_FACE_DEBUG', None) is not None else lambda *args, **kwargs: None\n\n\ndef instant_id(p: processing.StableDiffusionProcessing, app, source_images, strength=1.0, conditioning=0.5, cache=True): # pylint: disable=arguments-differ\n    from modules.face.instantid_model import StableDiffusionXLInstantIDPipeline, draw_kps\n    from diffusers.models import ControlNetModel\n    global controlnet_model # pylint: disable=global-statement\n\n    # prepare pipeline\n    if source_images is None or len(source_images) == 0:\n        shared.log.warning('InstantID: no input images')\n        return None\n\n    c = shared.sd_model.__class__.__name__ if shared.sd_loaded else ''\n    if c not in ['StableDiffusionXLPipeline', 'StableDiffusionXLInstantIDPipeline']:\n        shared.log.warning(f'InstantID invalid base model: current={c} required=StableDiffusionXLPipeline')\n        return None\n\n    # prepare face emb\n    face_embeds = []\n    face_images = []\n    for i, source_image in enumerate(source_images):\n        faces = app.get(cv2.cvtColor(np.array(source_image), cv2.COLOR_RGB2BGR))\n        face = sorted(faces, key=lambda x:(x['bbox'][2]-x['bbox'][0])*x['bbox'][3]-x['bbox'][1])[-1]  # only use the maximum face\n        face_embeds.append(torch.from_numpy(face['embedding']))\n        face_images.append(draw_kps(source_image, face['kps']))\n        p.extra_generation_params[f\"InstantID {i+1}\"] = f'{faces[0].det_score:.2f} {\"female\" if faces[0].gender==0 else \"male\"} {faces[0].age}y'\n        shared.log.debug(f'InstantID face: score={face.det_score:.2f} gender={\"female\" if face.gender==0 else \"male\"} age={face.age} bbox={face.bbox}')\n\n    shared.log.debug(f'InstantID loading: model={REPO_ID}')\n    face_adapter = hf.hf_hub_download(repo_id=REPO_ID, filename=\"ip-adapter.bin\")\n    if controlnet_model is None or not cache:\n        controlnet_model = ControlNetModel.from_pretrained(REPO_ID, subfolder=\"ControlNetModel\", torch_dtype=devices.dtype, cache_dir=shared.opts.diffusers_dir)\n        sd_models.move_model(controlnet_model, devices.device)\n\n    # create new pipeline\n    orig_pipeline = shared.sd_model # backup current pipeline definition\n    shared.sd_model = StableDiffusionXLInstantIDPipeline(\n        vae = shared.sd_model.vae,\n        text_encoder=shared.sd_model.text_encoder,\n        text_encoder_2=shared.sd_model.text_encoder_2,\n        tokenizer=shared.sd_model.tokenizer,\n        tokenizer_2=shared.sd_model.tokenizer_2,\n        unet=shared.sd_model.unet,\n        scheduler=shared.sd_model.scheduler,\n        controlnet=controlnet_model,\n        force_zeros_for_empty_prompt=shared.opts.diffusers_force_zeros,\n    )\n    sd_models.copy_diffuser_options(shared.sd_model, orig_pipeline) # copy options from original pipeline\n    sd_models.set_diffuser_options(shared.sd_model) # set all model options such as fp16, offload, etc.\n    shared.sd_model.load_ip_adapter_instantid(face_adapter, scale=strength)\n    shared.sd_model.set_ip_adapter_scale(strength)\n    sd_models.move_model(shared.sd_model, devices.device) # move pipeline to device\n\n    # pipeline specific args\n    if not p.all_prompts:\n        processing.process_init(p)\n        p.init(p.all_prompts, p.all_seeds, p.all_subseeds)\n    orig_prompt_attention = shared.opts.prompt_attention\n    shared.opts.data['prompt_attention'] = 'fixed' # otherwise need to deal with class_tokens_mask\n    p.task_args['image_embeds'] = face_embeds[0].shape # placeholder\n    p.task_args['image'] = face_images[0]\n    p.task_args['controlnet_conditioning_scale'] = float(conditioning)\n    p.task_args['ip_adapter_scale'] = float(strength)\n    shared.log.debug(f\"InstantID args: {p.task_args}\")\n    p.task_args['prompt'] = p.all_prompts[0] if p.all_prompts else p.prompt\n    p.task_args['negative_prompt'] = p.all_negative_prompts[0] if p.all_negative_prompts else p.negative_prompt\n    p.task_args['image_embeds'] = face_embeds[0] # overwrite placeholder\n\n    # run processing\n    processed: processing.Processed = processing.process_images(p)\n    shared.sd_model.set_ip_adapter_scale(0)\n    p.extra_generation_params['InstantID'] = f'{strength}/{conditioning}'\n\n    if not cache:\n        controlnet_model = None\n        devices.torch_gc()\n\n    # restore original pipeline\n    shared.opts.data['prompt_attention'] = orig_prompt_attention\n    shared.sd_model = orig_pipeline\n    return processed\n"
  },
  {
    "path": "modules/face/instantid_model.py",
    "content": "# Copyright 2024 The InstantX Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\n\nimport math\nfrom typing import Any, Callable, Dict, List, Optional, Tuple, Union\n\nimport cv2\nimport numpy as np\nimport PIL.Image\nimport torch\nimport torch.nn as nn\n\nfrom diffusers import StableDiffusionXLControlNetPipeline\nfrom diffusers.image_processor import PipelineImageInput\nfrom diffusers.models import ControlNetModel\nfrom diffusers.pipelines.controlnet.multicontrolnet import MultiControlNetModel\nfrom diffusers.pipelines.stable_diffusion_xl.pipeline_output import StableDiffusionXLPipelineOutput\nfrom diffusers.utils import (\n    deprecate,\n    logging,\n    replace_example_docstring,\n)\nfrom diffusers.utils.import_utils import is_xformers_available\nfrom diffusers.utils.torch_utils import is_compiled_module, is_torch_version\n\n\ntry:\n    import xformers\n    import xformers.ops\n\n    xformers_available = True\nexcept Exception:\n    xformers_available = False\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\ndef FeedForward(dim, mult=4):\n    inner_dim = int(dim * mult)\n    return nn.Sequential(\n        nn.LayerNorm(dim),\n        nn.Linear(dim, inner_dim, bias=False),\n        nn.GELU(),\n        nn.Linear(inner_dim, dim, bias=False),\n    )\n\n\ndef reshape_tensor(x, heads):\n    bs, length, _width = x.shape\n    # (bs, length, width) --> (bs, length, n_heads, dim_per_head)\n    x = x.view(bs, length, heads, -1)\n    # (bs, length, n_heads, dim_per_head) --> (bs, n_heads, length, dim_per_head)\n    x = x.transpose(1, 2)\n    # (bs, n_heads, length, dim_per_head) --> (bs*n_heads, length, dim_per_head)\n    x = x.reshape(bs, heads, length, -1)\n    return x\n\n\nclass PerceiverAttention(nn.Module):\n    def __init__(self, *, dim, dim_head=64, heads=8):\n        super().__init__()\n        self.scale = dim_head**-0.5\n        self.dim_head = dim_head\n        self.heads = heads\n        inner_dim = dim_head * heads\n\n        self.norm1 = nn.LayerNorm(dim)\n        self.norm2 = nn.LayerNorm(dim)\n\n        self.to_q = nn.Linear(dim, inner_dim, bias=False)\n        self.to_kv = nn.Linear(dim, inner_dim * 2, bias=False)\n        self.to_out = nn.Linear(inner_dim, dim, bias=False)\n\n    def forward(self, x, latents):\n        \"\"\"\n        Args:\n            x (torch.Tensor): image features\n                shape (b, n1, D)\n            latent (torch.Tensor): latent features\n                shape (b, n2, D)\n        \"\"\"\n        x = self.norm1(x)\n        latents = self.norm2(latents)\n\n        b, l, _ = latents.shape\n\n        q = self.to_q(latents)\n        kv_input = torch.cat((x, latents), dim=-2)\n        k, v = self.to_kv(kv_input).chunk(2, dim=-1)\n\n        q = reshape_tensor(q, self.heads)\n        k = reshape_tensor(k, self.heads)\n        v = reshape_tensor(v, self.heads)\n\n        # attention\n        scale = 1 / math.sqrt(math.sqrt(self.dim_head))\n        weight = (q * scale) @ (k * scale).transpose(-2, -1)  # More stable with f16 than dividing afterwards\n        weight = torch.softmax(weight.float(), dim=-1).type(weight.dtype)\n        out = weight @ v\n\n        out = out.permute(0, 2, 1, 3).reshape(b, l, -1)\n\n        return self.to_out(out)\n\n\nclass Resampler(nn.Module):\n    def __init__(\n        self,\n        dim=1024,\n        depth=8,\n        dim_head=64,\n        heads=16,\n        num_queries=8,\n        embedding_dim=768,\n        output_dim=1024,\n        ff_mult=4,\n    ):\n        super().__init__()\n\n        self.latents = nn.Parameter(torch.randn(1, num_queries, dim) / dim**0.5)\n\n        self.proj_in = nn.Linear(embedding_dim, dim)\n\n        self.proj_out = nn.Linear(dim, output_dim)\n        self.norm_out = nn.LayerNorm(output_dim)\n\n        self.layers = nn.ModuleList([])\n        for _ in range(depth):\n            self.layers.append(\n                nn.ModuleList(\n                    [\n                        PerceiverAttention(dim=dim, dim_head=dim_head, heads=heads),\n                        FeedForward(dim=dim, mult=ff_mult),\n                    ]\n                )\n            )\n\n    def forward(self, x):\n        latents = self.latents.repeat(x.size(0), 1, 1)\n        x = self.proj_in(x)\n\n        for attn, ff in self.layers:\n            latents = attn(x, latents) + latents\n            latents = ff(latents) + latents\n\n        latents = self.proj_out(latents)\n        return self.norm_out(latents)\n\n\nclass AttnProcessor(nn.Module):\n    r\"\"\"\n    Default processor for performing attention-related computations.\n    \"\"\"\n\n    def __init__(\n        self,\n        hidden_size=None,\n        cross_attention_dim=None,\n    ):\n        super().__init__()\n\n    def __call__(\n        self,\n        attn,\n        hidden_states,\n        encoder_hidden_states=None,\n        attention_mask=None,\n        temb=None,\n    ):\n        residual = hidden_states\n\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n\n        batch_size, sequence_length, _ = (\n            hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape\n        )\n        attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n\n        if attn.group_norm is not None:\n            hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2)\n\n        query = attn.to_q(hidden_states)\n\n        if encoder_hidden_states is None:\n            encoder_hidden_states = hidden_states\n        elif attn.norm_cross:\n            encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states)\n\n        key = attn.to_k(encoder_hidden_states)\n        value = attn.to_v(encoder_hidden_states)\n\n        query = attn.head_to_batch_dim(query)\n        key = attn.head_to_batch_dim(key)\n        value = attn.head_to_batch_dim(value)\n\n        attention_probs = attn.get_attention_scores(query, key, attention_mask)\n        hidden_states = torch.bmm(attention_probs, value)\n        hidden_states = attn.batch_to_head_dim(hidden_states)\n\n        # linear proj\n        hidden_states = attn.to_out[0](hidden_states)\n        # dropout\n        hidden_states = attn.to_out[1](hidden_states)\n\n        if input_ndim == 4:\n            hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n\n\nclass IPAttnProcessor(nn.Module):\n    r\"\"\"\n    Attention processor for IP-Adapater.\n    Args:\n        hidden_size (`int`):\n            The hidden size of the attention layer.\n        cross_attention_dim (`int`):\n            The number of channels in the `encoder_hidden_states`.\n        scale (`float`, defaults to 1.0):\n            the weight scale of image prompt.\n        num_tokens (`int`, defaults to 4 when do ip_adapter_plus it should be 16):\n            The context length of the image features.\n    \"\"\"\n\n    def __init__(self, hidden_size, cross_attention_dim=None, scale=1.0, num_tokens=4):\n        super().__init__()\n\n        self.hidden_size = hidden_size\n        self.cross_attention_dim = cross_attention_dim\n        self.scale = scale\n        self.num_tokens = num_tokens\n\n        self.to_k_ip = nn.Linear(cross_attention_dim or hidden_size, hidden_size, bias=False)\n        self.to_v_ip = nn.Linear(cross_attention_dim or hidden_size, hidden_size, bias=False)\n\n    def __call__(\n        self,\n        attn,\n        hidden_states,\n        encoder_hidden_states=None,\n        attention_mask=None,\n        temb=None,\n    ):\n        residual = hidden_states\n\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n\n        batch_size, sequence_length, _ = (\n            hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape\n        )\n        attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n\n        if attn.group_norm is not None:\n            hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2)\n\n        query = attn.to_q(hidden_states)\n\n        if encoder_hidden_states is None:\n            encoder_hidden_states = hidden_states\n        else:\n            # get encoder_hidden_states, ip_hidden_states\n            end_pos = encoder_hidden_states.shape[1] - self.num_tokens\n            encoder_hidden_states, ip_hidden_states = (\n                encoder_hidden_states[:, :end_pos, :],\n                encoder_hidden_states[:, end_pos:, :],\n            )\n            if attn.norm_cross:\n                encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states)\n\n        key = attn.to_k(encoder_hidden_states)\n        value = attn.to_v(encoder_hidden_states)\n\n        query = attn.head_to_batch_dim(query)\n        key = attn.head_to_batch_dim(key)\n        value = attn.head_to_batch_dim(value)\n\n        if xformers_available:\n            hidden_states = self._memory_efficient_attention_xformers(query, key, value, attention_mask)\n        else:\n            attention_probs = attn.get_attention_scores(query, key, attention_mask)\n            hidden_states = torch.bmm(attention_probs, value)\n        hidden_states = attn.batch_to_head_dim(hidden_states)\n\n        # for ip-adapter\n        ip_key = self.to_k_ip(ip_hidden_states)\n        ip_value = self.to_v_ip(ip_hidden_states)\n\n        ip_key = attn.head_to_batch_dim(ip_key)\n        ip_value = attn.head_to_batch_dim(ip_value)\n\n        if xformers_available:\n            ip_hidden_states = self._memory_efficient_attention_xformers(query, ip_key, ip_value, None)\n        else:\n            ip_attention_probs = attn.get_attention_scores(query, ip_key, None)\n            ip_hidden_states = torch.bmm(ip_attention_probs, ip_value)\n        ip_hidden_states = attn.batch_to_head_dim(ip_hidden_states)\n\n        hidden_states = hidden_states + self.scale * ip_hidden_states\n\n        # linear proj\n        hidden_states = attn.to_out[0](hidden_states)\n        # dropout\n        hidden_states = attn.to_out[1](hidden_states)\n\n        if input_ndim == 4:\n            hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n\n    def _memory_efficient_attention_xformers(self, query, key, value, attention_mask):\n        query = query.contiguous()\n        key = key.contiguous()\n        value = value.contiguous()\n        hidden_states = xformers.ops.memory_efficient_attention(query, key, value, attn_bias=attention_mask)\n        return hidden_states\n\n\nEXAMPLE_DOC_STRING = \"\"\"\n    Examples:\n        ```py\n        >>> # !pip install opencv-python transformers accelerate insightface\n        >>> import diffusers\n        >>> from diffusers.utils import load_image\n        >>> from diffusers.models import ControlNetModel\n\n        >>> import cv2\n        >>> import torch\n        >>> import numpy as np\n        >>> from PIL import Image\n\n        >>> from insightface.app import FaceAnalysis\n        >>> from pipeline_stable_diffusion_xl_instantid import StableDiffusionXLInstantIDPipeline, draw_kps\n\n        >>> # download 'antelopev2' under ./models\n        >>> app = FaceAnalysis(name='antelopev2', root='./', providers=['CUDAExecutionProvider', 'CPUExecutionProvider'])\n        >>> app.prepare(ctx_id=0, det_size=(640, 640))\n\n        >>> # download models under ./checkpoints\n        >>> face_adapter = f'./checkpoints/ip-adapter.bin'\n        >>> controlnet_path = f'./checkpoints/ControlNetModel'\n\n        >>> # load IdentityNet\n        >>> controlnet = ControlNetModel.from_pretrained(controlnet_path, torch_dtype=torch.float16)\n\n        >>> pipe = StableDiffusionXLInstantIDPipeline.from_pretrained(\n        ...     \"stabilityai/stable-diffusion-xl-base-1.0\", controlnet=controlnet, torch_dtype=torch.float16\n        ... )\n        >>> pipe.cuda()\n\n        >>> # load adapter\n        >>> pipe.load_ip_adapter_instantid(face_adapter)\n\n        >>> prompt = \"analog film photo of a man. faded film, desaturated, 35mm photo, grainy, vignette, vintage, Kodachrome, Lomography, stained, highly detailed, found footage, masterpiece, best quality\"\n        >>> negative_prompt = \"(lowres, low quality, worst quality:1.2), (text:1.2), watermark, painting, drawing, illustration, glitch, deformed, mutated, cross-eyed, ugly, disfigured (lowres, low quality, worst quality:1.2), (text:1.2), watermark, painting, drawing, illustration, glitch,deformed, mutated, cross-eyed, ugly, disfigured\"\n\n        >>> # load an image\n        >>> image = load_image(\"your-example.jpg\")\n\n        >>> face_info = app.get(cv2.cvtColor(np.array(face_image), cv2.COLOR_RGB2BGR))[-1]\n        >>> face_emb = face_info['embedding']\n        >>> face_kps = draw_kps(face_image, face_info['kps'])\n\n        >>> pipe.set_ip_adapter_scale(0.8)\n\n        >>> # generate image\n        >>> image = pipe(\n        ...     prompt, image_embeds=face_emb, image=face_kps, controlnet_conditioning_scale=0.8\n        ... ).images[0]\n        ```\n\"\"\"\n\n\ndef draw_kps(image_pil, kps, color_list=None):\n    if color_list is None:\n        color_list = [(255, 0, 0), (0, 255, 0), (0, 0, 255), (255, 255, 0), (255, 0, 255)]\n    stickwidth = 4\n    limbSeq = np.array([[0, 2], [1, 2], [3, 2], [4, 2]])\n    kps = np.array(kps)\n\n    w, h = image_pil.size\n    out_img = np.zeros([h, w, 3])\n\n    for i in range(len(limbSeq)):\n        index = limbSeq[i]\n        color = color_list[index[0]]\n\n        x = kps[index][:, 0]\n        y = kps[index][:, 1]\n        length = ((x[0] - x[1]) ** 2 + (y[0] - y[1]) ** 2) ** 0.5\n        angle = math.degrees(math.atan2(y[0] - y[1], x[0] - x[1]))\n        polygon = cv2.ellipse2Poly(\n            (int(np.mean(x)), int(np.mean(y))), (int(length / 2), stickwidth), int(angle), 0, 360, 1\n        )\n        out_img = cv2.fillConvexPoly(out_img.copy(), polygon, color)\n    out_img = (out_img * 0.6).astype(np.uint8)\n\n    for idx_kp, kp in enumerate(kps):\n        color = color_list[idx_kp]\n        x, y = kp\n        out_img = cv2.circle(out_img.copy(), (int(x), int(y)), 10, color, -1)\n\n    out_img_pil = PIL.Image.fromarray(out_img.astype(np.uint8))\n    return out_img_pil\n\n\nclass StableDiffusionXLInstantIDPipeline(StableDiffusionXLControlNetPipeline):\n    def cuda(self, dtype=torch.float16, use_xformers=False):\n        self.to(\"cuda\", dtype)\n\n        if hasattr(self, \"image_proj_model\"):\n            self.image_proj_model.to(self.unet.device).to(self.unet.dtype)\n\n        if use_xformers:\n            if is_xformers_available():\n                import xformers\n                from packaging import version\n\n                xformers_version = version.parse(xformers.__version__)\n                if xformers_version == version.parse(\"0.0.16\"):\n                    logger.warn(\n                        \"xFormers 0.0.16 cannot be used for training in some GPUs. If you observe problems during training, please update xFormers to at least 0.0.17. See https://huggingface.co/docs/diffusers/main/en/optimization/xformers for more details.\"\n                    )\n                self.enable_xformers_memory_efficient_attention()\n            else:\n                raise ValueError(\"xformers is not available. Make sure it is installed correctly\")\n\n    def load_ip_adapter_instantid(self, model_ckpt, image_emb_dim=512, num_tokens=16, scale=0.5):\n        self.set_image_proj_model(model_ckpt, image_emb_dim, num_tokens)\n        self.set_ip_adapter(model_ckpt, num_tokens, scale)\n\n    def set_image_proj_model(self, model_ckpt, image_emb_dim=512, num_tokens=16):\n        image_proj_model = Resampler(\n            dim=1280,\n            depth=4,\n            dim_head=64,\n            heads=20,\n            num_queries=num_tokens,\n            embedding_dim=image_emb_dim,\n            output_dim=self.unet.config.cross_attention_dim,\n            ff_mult=4,\n        )\n\n        image_proj_model.eval()\n\n        self.image_proj_model = image_proj_model.to(self.device, dtype=self.dtype)\n        state_dict = torch.load(model_ckpt, map_location=\"cpu\")\n        if \"image_proj\" in state_dict:\n            state_dict = state_dict[\"image_proj\"]\n        self.image_proj_model.load_state_dict(state_dict)\n\n        self.image_proj_model_in_features = image_emb_dim\n\n    def set_ip_adapter(self, model_ckpt, num_tokens, scale):\n        unet = self.unet\n        attn_procs = {}\n        for name in unet.attn_processors.keys():\n            cross_attention_dim = None if name.endswith(\"attn1.processor\") else unet.config.cross_attention_dim\n            if name.startswith(\"mid_block\"):\n                hidden_size = unet.config.block_out_channels[-1]\n            elif name.startswith(\"up_blocks\"):\n                block_id = int(name[len(\"up_blocks.\")])\n                hidden_size = list(reversed(unet.config.block_out_channels))[block_id]\n            elif name.startswith(\"down_blocks\"):\n                block_id = int(name[len(\"down_blocks.\")])\n                hidden_size = unet.config.block_out_channels[block_id]\n            if cross_attention_dim is None:\n                attn_procs[name] = AttnProcessor().to(unet.device, dtype=unet.dtype)\n            else:\n                attn_procs[name] = IPAttnProcessor(\n                    hidden_size=hidden_size,\n                    cross_attention_dim=cross_attention_dim,\n                    scale=scale,\n                    num_tokens=num_tokens,\n                ).to(unet.device, dtype=unet.dtype)\n        unet.set_attn_processor(attn_procs)\n\n        state_dict = torch.load(model_ckpt, map_location=\"cpu\")\n        ip_layers = torch.nn.ModuleList(self.unet.attn_processors.values())\n        if \"ip_adapter\" in state_dict:\n            state_dict = state_dict[\"ip_adapter\"]\n        ip_layers.load_state_dict(state_dict)\n\n    def set_ip_adapter_scale(self, scale):\n        unet = getattr(self, self.unet_name) if not hasattr(self, \"unet\") else self.unet\n        for attn_processor in unet.attn_processors.values():\n            if isinstance(attn_processor, IPAttnProcessor):\n                attn_processor.scale = scale\n\n    def _encode_prompt_image_emb(self, prompt_image_emb, device, dtype, do_classifier_free_guidance):\n        if isinstance(prompt_image_emb, torch.Tensor):\n            prompt_image_emb = prompt_image_emb.clone().detach()\n        else:\n            prompt_image_emb = torch.tensor(prompt_image_emb)\n\n        prompt_image_emb = prompt_image_emb.reshape([1, -1, self.image_proj_model_in_features])\n\n        if do_classifier_free_guidance:\n            prompt_image_emb = torch.cat([torch.zeros_like(prompt_image_emb), prompt_image_emb], dim=0)\n        else:\n            prompt_image_emb = torch.cat([prompt_image_emb], dim=0)\n\n        prompt_image_emb = prompt_image_emb.to(device=device, dtype=dtype)\n        self.image_proj_model = self.image_proj_model.to(device=device, dtype=dtype)\n        prompt_image_emb = self.image_proj_model(prompt_image_emb)\n        return prompt_image_emb\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        prompt_2: Optional[Union[str, List[str]]] = None,\n        image: PipelineImageInput = None,\n        height: Optional[int] = None,\n        width: Optional[int] = None,\n        num_inference_steps: int = 50,\n        guidance_scale: float = 5.0,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        negative_prompt_2: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        eta: float = 0.0,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.FloatTensor] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        image_embeds: Optional[torch.FloatTensor] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        controlnet_conditioning_scale: Union[float, List[float]] = 1.0,\n        guess_mode: bool = False,\n        control_guidance_start: Union[float, List[float]] = 0.0,\n        control_guidance_end: Union[float, List[float]] = 1.0,\n        original_size: Tuple[int, int] = None,\n        crops_coords_top_left: Tuple[int, int] = (0, 0),\n        target_size: Tuple[int, int] = None,\n        negative_original_size: Optional[Tuple[int, int]] = None,\n        negative_crops_coords_top_left: Tuple[int, int] = (0, 0),\n        negative_target_size: Optional[Tuple[int, int]] = None,\n        clip_skip: Optional[int] = None,\n        callback_on_step_end: Optional[Callable[[int, int, Dict], None]] = None,\n        callback_on_step_end_tensor_inputs: List[str] = None,\n        **kwargs,\n    ):\n        r\"\"\"\n        The call function to the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide image generation. If not defined, you need to pass `prompt_embeds`.\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders.\n            image (`torch.FloatTensor`, `PIL.Image.Image`, `np.ndarray`, `List[torch.FloatTensor]`, `List[PIL.Image.Image]`, `List[np.ndarray]`,:\n                    `List[List[torch.FloatTensor]]`, `List[List[np.ndarray]]` or `List[List[PIL.Image.Image]]`):\n                The ControlNet input condition to provide guidance to the `unet` for generation. If the type is\n                specified as `torch.FloatTensor`, it is passed to ControlNet as is. `PIL.Image.Image` can also be\n                accepted as an image. The dimensions of the output image defaults to `image`'s dimensions. If height\n                and/or width are passed, `image` is resized accordingly. If multiple ControlNets are specified in\n                `init`, images must be passed as a list such that each element of the list can be correctly batched for\n                input to a single ControlNet.\n            height (`int`, *optional*, defaults to `self.unet.config.sample_size * self.vae_scale_factor`):\n                The height in pixels of the generated image. Anything below 512 pixels won't work well for\n                [stabilityai/stable-diffusion-xl-base-1.0](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0)\n                and checkpoints that are not specifically fine-tuned on low resolutions.\n            width (`int`, *optional*, defaults to `self.unet.config.sample_size * self.vae_scale_factor`):\n                The width in pixels of the generated image. Anything below 512 pixels won't work well for\n                [stabilityai/stable-diffusion-xl-base-1.0](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0)\n                and checkpoints that are not specifically fine-tuned on low resolutions.\n            num_inference_steps (`int`, *optional*, defaults to 50):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            guidance_scale (`float`, *optional*, defaults to 5.0):\n                A higher guidance scale value encourages the model to generate images closely linked to the text\n                `prompt` at the expense of lower image quality. Guidance scale is enabled when `guidance_scale > 1`.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide what to not include in image generation. If not defined, you need to\n                pass `negative_prompt_embeds` instead. Ignored when not using guidance (`guidance_scale < 1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide what to not include in image generation. This is sent to `tokenizer_2`\n                and `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders.\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            eta (`float`, *optional*, defaults to 0.0):\n                Corresponds to parameter eta (η) from the [DDIM](https://arxiv.org/abs/2010.02502) paper. Only applies\n                to the [`~schedulers.DDIMScheduler`], and is ignored in other schedulers.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                A [`torch.Generator`](https://pytorch.org/docs/stable/generated/torch.Generator.html) to make\n                generation deterministic.\n            latents (`torch.FloatTensor`, *optional*):\n                Pre-generated noisy latents sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor is generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs (prompt weighting). If not\n                provided, text embeddings are generated from the `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs (prompt weighting). If\n                not provided, `negative_prompt_embeds` are generated from the `negative_prompt` input argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs (prompt weighting). If\n                not provided, pooled text embeddings are generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs (prompt\n                weighting). If not provided, pooled `negative_prompt_embeds` are generated from `negative_prompt` input\n                argument.\n            image_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated image embeddings.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generated image. Choose between `PIL.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.stable_diffusion.StableDiffusionPipelineOutput`] instead of a\n                plain tuple.\n            cross_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the [`AttentionProcessor`] as defined in\n                [`self.processor`](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            controlnet_conditioning_scale (`float` or `List[float]`, *optional*, defaults to 1.0):\n                The outputs of the ControlNet are multiplied by `controlnet_conditioning_scale` before they are added\n                to the residual in the original `unet`. If multiple ControlNets are specified in `init`, you can set\n                the corresponding scale as a list.\n            guess_mode (`bool`, *optional*, defaults to `False`):\n                The ControlNet encoder tries to recognize the content of the input image even if you remove all\n                prompts. A `guidance_scale` value between 3.0 and 5.0 is recommended.\n            control_guidance_start (`float` or `List[float]`, *optional*, defaults to 0.0):\n                The percentage of total steps at which the ControlNet starts applying.\n            control_guidance_end (`float` or `List[float]`, *optional*, defaults to 1.0):\n                The percentage of total steps at which the ControlNet stops applying.\n            original_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                If `original_size` is not the same as `target_size` the image will appear to be down- or upsampled.\n                `original_size` defaults to `(height, width)` if not specified. Part of SDXL's micro-conditioning as\n                explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            crops_coords_top_left (`Tuple[int]`, *optional*, defaults to (0, 0)):\n                `crops_coords_top_left` can be used to generate an image that appears to be \"cropped\" from the position\n                `crops_coords_top_left` downwards. Favorable, well-centered images are usually achieved by setting\n                `crops_coords_top_left` to (0, 0). Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            target_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                For most cases, `target_size` should be set to the desired height and width of the generated image. If\n                not specified it will default to `(height, width)`. Part of SDXL's micro-conditioning as explained in\n                section 2.2 of [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            negative_original_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                To negatively condition the generation process based on a specific image resolution. Part of SDXL's\n                micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). For more\n                information, refer to this issue thread: https://github.com/huggingface/diffusers/issues/4208.\n            negative_crops_coords_top_left (`Tuple[int]`, *optional*, defaults to (0, 0)):\n                To negatively condition the generation process based on a specific crop coordinates. Part of SDXL's\n                micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). For more\n                information, refer to this issue thread: https://github.com/huggingface/diffusers/issues/4208.\n            negative_target_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                To negatively condition the generation process based on a target image resolution. It should be as same\n                as the `target_size` for most cases. Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). For more\n                information, refer to this issue thread: https://github.com/huggingface/diffusers/issues/4208.\n            clip_skip (`int`, *optional*):\n                Number of layers to be skipped from CLIP while computing the prompt embeddings. A value of 1 means that\n                the output of the pre-final layer will be used for computing the prompt embeddings.\n            callback_on_step_end (`Callable`, *optional*):\n                A function that calls at the end of each denoising steps during the inference. The function is called\n                with the following arguments: `callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int,\n                callback_kwargs: Dict)`. `callback_kwargs` will include a list of all tensors as specified by\n                `callback_on_step_end_tensor_inputs`.\n            callback_on_step_end_tensor_inputs (`List`, *optional*):\n                The list of tensor inputs for the `callback_on_step_end` function. The tensors specified in the list\n                will be passed as `callback_kwargs` argument. You will only be able to include variables listed in the\n                `._callback_tensor_inputs` attribute of your pipeine class.\n\n        Examples:\n\n        Returns:\n            [`~pipelines.stable_diffusion.StableDiffusionPipelineOutput`] or `tuple`:\n                If `return_dict` is `True`, [`~pipelines.stable_diffusion.StableDiffusionPipelineOutput`] is returned,\n                otherwise a `tuple` is returned containing the output images.\n        \"\"\"\n\n        if callback_on_step_end_tensor_inputs is None:\n            callback_on_step_end_tensor_inputs = [\"latents\"]\n        callback = kwargs.pop(\"callback\", None)\n        callback_steps = kwargs.pop(\"callback_steps\", None)\n\n        if callback is not None:\n            deprecate(\n                \"callback\",\n                \"1.0.0\",\n                \"Passing `callback` as an input argument to `__call__` is deprecated, consider using `callback_on_step_end`\",\n            )\n        if callback_steps is not None:\n            deprecate(\n                \"callback_steps\",\n                \"1.0.0\",\n                \"Passing `callback_steps` as an input argument to `__call__` is deprecated, consider using `callback_on_step_end`\",\n            )\n\n        controlnet = self.controlnet._orig_mod if is_compiled_module(self.controlnet) else self.controlnet\n\n        # align format for control guidance\n        if not isinstance(control_guidance_start, list) and isinstance(control_guidance_end, list):\n            control_guidance_start = len(control_guidance_end) * [control_guidance_start]\n        elif not isinstance(control_guidance_end, list) and isinstance(control_guidance_start, list):\n            control_guidance_end = len(control_guidance_start) * [control_guidance_end]\n        elif not isinstance(control_guidance_start, list) and not isinstance(control_guidance_end, list):\n            mult = len(controlnet.nets) if isinstance(controlnet, MultiControlNetModel) else 1\n            control_guidance_start, control_guidance_end = (\n                mult * [control_guidance_start],\n                mult * [control_guidance_end],\n            )\n\n        # 1. Check inputs. Raise error if not correct\n        \"\"\"\n        self.check_inputs(\n            prompt,\n            prompt_2,\n            image,\n            callback_steps,\n            negative_prompt,\n            negative_prompt_2,\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n            controlnet_conditioning_scale,\n            control_guidance_start,\n            control_guidance_end,\n            callback_on_step_end_tensor_inputs,\n        )\n        \"\"\"\n\n        self._guidance_scale = guidance_scale\n        self._clip_skip = clip_skip\n        self._cross_attention_kwargs = cross_attention_kwargs\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        device = self._execution_device\n\n        if isinstance(controlnet, MultiControlNetModel) and isinstance(controlnet_conditioning_scale, float):\n            controlnet_conditioning_scale = [controlnet_conditioning_scale] * len(controlnet.nets)\n\n        global_pool_conditions = (\n            controlnet.config.global_pool_conditions\n            if isinstance(controlnet, ControlNetModel)\n            else controlnet.nets[0].config.global_pool_conditions\n        )\n        guess_mode = guess_mode or global_pool_conditions\n\n        # 3.1 Encode input prompt\n        text_encoder_lora_scale = (\n            self.cross_attention_kwargs.get(\"scale\", None) if self.cross_attention_kwargs is not None else None\n        )\n        (\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n        ) = self.encode_prompt(\n            prompt,\n            prompt_2,\n            device,\n            num_images_per_prompt,\n            self.do_classifier_free_guidance,\n            negative_prompt,\n            negative_prompt_2,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            negative_pooled_prompt_embeds=negative_pooled_prompt_embeds,\n            lora_scale=text_encoder_lora_scale,\n            clip_skip=self.clip_skip,\n        )\n\n        # 3.2 Encode image prompt\n        prompt_image_emb = self._encode_prompt_image_emb(\n            image_embeds, device, self.unet.dtype, self.do_classifier_free_guidance\n        )\n\n        # 4. Prepare image\n        if isinstance(controlnet, ControlNetModel):\n            image = self.prepare_image(\n                image=image,\n                width=width,\n                height=height,\n                batch_size=batch_size * num_images_per_prompt,\n                num_images_per_prompt=num_images_per_prompt,\n                device=device,\n                dtype=controlnet.dtype,\n                do_classifier_free_guidance=self.do_classifier_free_guidance,\n                guess_mode=guess_mode,\n            )\n            height, width = image.shape[-2:]\n        elif isinstance(controlnet, MultiControlNetModel):\n            images = []\n\n            for image_ in image:\n                image_ = self.prepare_image(\n                    image=image_,\n                    width=width,\n                    height=height,\n                    batch_size=batch_size * num_images_per_prompt,\n                    num_images_per_prompt=num_images_per_prompt,\n                    device=device,\n                    dtype=controlnet.dtype,\n                    do_classifier_free_guidance=self.do_classifier_free_guidance,\n                    guess_mode=guess_mode,\n                )\n\n                images.append(image_)\n\n            image = images\n            height, width = image[0].shape[-2:]\n        else:\n            raise AssertionError\n\n        # 5. Prepare timesteps\n        self.scheduler.set_timesteps(num_inference_steps, device=device)\n        timesteps = self.scheduler.timesteps\n        self._num_timesteps = len(timesteps)\n\n        # 6. Prepare latent variables\n        num_channels_latents = self.unet.config.in_channels\n        latents = self.prepare_latents(\n            batch_size * num_images_per_prompt,\n            num_channels_latents,\n            height,\n            width,\n            prompt_embeds.dtype,\n            device,\n            generator,\n            latents,\n        )\n\n        # 6.5 Optionally get Guidance Scale Embedding\n        timestep_cond = None\n        if self.unet.config.time_cond_proj_dim is not None:\n            guidance_scale_tensor = torch.tensor(self.guidance_scale - 1).repeat(batch_size * num_images_per_prompt)\n            timestep_cond = self.get_guidance_scale_embedding(\n                guidance_scale_tensor, embedding_dim=self.unet.config.time_cond_proj_dim\n            ).to(device=device, dtype=latents.dtype)\n\n        # 7. Prepare extra step kwargs.\n        extra_step_kwargs = self.prepare_extra_step_kwargs(generator, eta)\n\n        # 7.1 Create tensor stating which controlnets to keep\n        controlnet_keep = []\n        for i in range(len(timesteps)):\n            keeps = [\n                1.0 - float(i / len(timesteps) < s or (i + 1) / len(timesteps) > e)\n                for s, e in zip(control_guidance_start, control_guidance_end)\n            ]\n            controlnet_keep.append(keeps[0] if isinstance(controlnet, ControlNetModel) else keeps)\n\n        # 7.2 Prepare added time ids & embeddings\n        if isinstance(image, list):\n            original_size = original_size or image[0].shape[-2:]\n        else:\n            original_size = original_size or image.shape[-2:]\n        target_size = target_size or (height, width)\n\n        add_text_embeds = pooled_prompt_embeds\n        if self.text_encoder_2 is None:\n            text_encoder_projection_dim = int(pooled_prompt_embeds.shape[-1])\n        else:\n            text_encoder_projection_dim = self.text_encoder_2.config.projection_dim\n\n        add_time_ids = self._get_add_time_ids(\n            original_size,\n            crops_coords_top_left,\n            target_size,\n            dtype=prompt_embeds.dtype,\n            text_encoder_projection_dim=text_encoder_projection_dim,\n        )\n\n        if negative_original_size is not None and negative_target_size is not None:\n            negative_add_time_ids = self._get_add_time_ids(\n                negative_original_size,\n                negative_crops_coords_top_left,\n                negative_target_size,\n                dtype=prompt_embeds.dtype,\n                text_encoder_projection_dim=text_encoder_projection_dim,\n            )\n        else:\n            negative_add_time_ids = add_time_ids\n\n        if self.do_classifier_free_guidance:\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds], dim=0)\n            add_text_embeds = torch.cat([negative_pooled_prompt_embeds, add_text_embeds], dim=0)\n            add_time_ids = torch.cat([negative_add_time_ids, add_time_ids], dim=0)\n\n        prompt_embeds = prompt_embeds.to(device)\n        add_text_embeds = add_text_embeds.to(device)\n        add_time_ids = add_time_ids.to(device).repeat(batch_size * num_images_per_prompt, 1)\n        encoder_hidden_states = torch.cat([prompt_embeds, prompt_image_emb], dim=1)\n\n        # 8. Denoising loop\n        num_warmup_steps = len(timesteps) - num_inference_steps * self.scheduler.order\n        is_unet_compiled = is_compiled_module(self.unet)\n        is_controlnet_compiled = is_compiled_module(self.controlnet)\n        is_torch_higher_equal_2_1 = is_torch_version(\">=\", \"2.1\")\n\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                # Relevant thread:\n                # https://dev-discuss.pytorch.org/t/cudagraphs-in-pytorch-2-0/1428\n                if (is_unet_compiled and is_controlnet_compiled) and is_torch_higher_equal_2_1:\n                    torch._inductor.cudagraph_mark_step_begin()\n                # expand the latents if we are doing classifier free guidance\n                latent_model_input = torch.cat([latents] * 2) if self.do_classifier_free_guidance else latents\n                latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n                added_cond_kwargs = {\"text_embeds\": add_text_embeds, \"time_ids\": add_time_ids}\n\n                # controlnet(s) inference\n                if guess_mode and self.do_classifier_free_guidance:\n                    # Infer ControlNet only for the conditional batch.\n                    control_model_input = latents\n                    control_model_input = self.scheduler.scale_model_input(control_model_input, t)\n                    controlnet_prompt_embeds = prompt_embeds.chunk(2)[1]\n                    controlnet_added_cond_kwargs = {\n                        \"text_embeds\": add_text_embeds.chunk(2)[1],\n                        \"time_ids\": add_time_ids.chunk(2)[1],\n                    }\n                else:\n                    control_model_input = latent_model_input\n                    controlnet_prompt_embeds = prompt_embeds\n                    controlnet_added_cond_kwargs = added_cond_kwargs\n\n                if isinstance(controlnet_keep[i], list):\n                    cond_scale = [c * s for c, s in zip(controlnet_conditioning_scale, controlnet_keep[i])]\n                else:\n                    controlnet_cond_scale = controlnet_conditioning_scale\n                    if isinstance(controlnet_cond_scale, list):\n                        controlnet_cond_scale = controlnet_cond_scale[0]\n                    cond_scale = controlnet_cond_scale * controlnet_keep[i]\n\n                down_block_res_samples, mid_block_res_sample = self.controlnet(\n                    control_model_input,\n                    t,\n                    encoder_hidden_states=prompt_image_emb,\n                    controlnet_cond=image,\n                    conditioning_scale=cond_scale,\n                    guess_mode=guess_mode,\n                    added_cond_kwargs=controlnet_added_cond_kwargs,\n                    return_dict=False,\n                )\n\n                if guess_mode and self.do_classifier_free_guidance:\n                    # Infered ControlNet only for the conditional batch.\n                    # To apply the output of ControlNet to both the unconditional and conditional batches,\n                    # add 0 to the unconditional batch to keep it unchanged.\n                    down_block_res_samples = [torch.cat([torch.zeros_like(d), d]) for d in down_block_res_samples]\n                    mid_block_res_sample = torch.cat([torch.zeros_like(mid_block_res_sample), mid_block_res_sample])\n\n                # predict the noise residual\n                noise_pred = self.unet(\n                    latent_model_input,\n                    t,\n                    encoder_hidden_states=encoder_hidden_states,\n                    timestep_cond=timestep_cond,\n                    cross_attention_kwargs=self.cross_attention_kwargs,\n                    down_block_additional_residuals=down_block_res_samples,\n                    mid_block_additional_residual=mid_block_res_sample,\n                    added_cond_kwargs=added_cond_kwargs,\n                    return_dict=False,\n                )[0]\n\n                # perform guidance\n                if self.do_classifier_free_guidance:\n                    noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                    noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents = self.scheduler.step(noise_pred, t, latents, **extra_step_kwargs, return_dict=False)[0]\n\n                if callback_on_step_end is not None:\n                    callback_kwargs = {}\n                    for k in callback_on_step_end_tensor_inputs:\n                        callback_kwargs[k] = locals()[k]\n                    callback_outputs = callback_on_step_end(self, i, t, callback_kwargs)\n\n                    latents = callback_outputs.pop(\"latents\", latents)\n                    prompt_embeds = callback_outputs.pop(\"prompt_embeds\", prompt_embeds)\n                    negative_prompt_embeds = callback_outputs.pop(\"negative_prompt_embeds\", negative_prompt_embeds)\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n                    if callback is not None and i % callback_steps == 0:\n                        step_idx = i // getattr(self.scheduler, \"order\", 1)\n                        callback(step_idx, t, latents)\n\n        if not output_type == \"latent\":\n            # make sure the VAE is in float32 mode, as it overflows in float16\n            needs_upcasting = self.vae.dtype == torch.float16 and self.vae.config.force_upcast\n            if needs_upcasting:\n                self.upcast_vae()\n                latents = latents.to(next(iter(self.vae.post_quant_conv.parameters())).dtype)\n\n            image = self.vae.decode(latents / self.vae.config.scaling_factor, return_dict=False)[0]\n\n            # cast back to fp16 if needed\n            if needs_upcasting:\n                self.vae.to(dtype=torch.float16)\n        else:\n            image = latents\n\n        if not output_type == \"latent\":\n            # apply watermark if available\n            if self.watermark is not None:\n                image = self.watermark.apply_watermark(image)\n\n            image = self.image_processor.postprocess(image, output_type=output_type)\n\n        # Offload all models\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return (image,)\n\n        return StableDiffusionXLPipelineOutput(images=image)\n"
  },
  {
    "path": "modules/face/photomaker.py",
    "content": "import cv2\nimport numpy as np\nimport torch\nimport huggingface_hub as hf\nfrom modules import shared, processing, sd_models, devices\n\n\noriginal_pipeline = None\n\n\ndef restore_pipeline():\n    global original_pipeline # pylint: disable=global-statement\n    if original_pipeline is not None:\n        shared.sd_model = original_pipeline\n        original_pipeline = None\n\n\ndef photo_maker(p: processing.StableDiffusionProcessing, app, model: str, input_images, trigger, strength, start): # pylint: disable=arguments-differ\n    global original_pipeline # pylint: disable=global-statement\n    from modules.face.photomaker_pipeline import PhotoMakerStableDiffusionXLPipeline\n\n    # prepare pipeline\n    if len(input_images) == 0:\n        shared.log.warning('PhotoMaker: no input images')\n        return None\n\n    if len(trigger) == 0:\n        shared.log.warning('PhotoMaker: no trigger word')\n        return None\n\n    c = shared.sd_model.__class__.__name__ if shared.sd_loaded else ''\n    if c != 'StableDiffusionXLPipeline':\n        shared.log.warning(f'PhotoMaker invalid base model: current={c} required=StableDiffusionXLPipeline')\n        return None\n\n    # validate prompt\n    if not p.all_prompts:\n        processing.process_init(p)\n        p.init(p.all_prompts, p.all_seeds, p.all_subseeds)\n    trigger_ids = shared.sd_model.tokenizer.encode(trigger) + shared.sd_model.tokenizer_2.encode(trigger)\n    prompt_ids1 = shared.sd_model.tokenizer.encode(p.all_prompts[0])\n    prompt_ids2 = shared.sd_model.tokenizer_2.encode(p.all_prompts[0])\n    for t in trigger_ids:\n        if prompt_ids1.count(t) != 1:\n            shared.log.error(f'PhotoMaker: trigger word not matched in prompt: {trigger} ids={trigger_ids} prompt={p.all_prompts[0]} ids={prompt_ids1}')\n            return None\n        if prompt_ids2.count(t) != 1:\n            shared.log.error(f'PhotoMaker: trigger word not matched in prompt: {trigger} ids={trigger_ids} prompt={p.all_prompts[0]} ids={prompt_ids1}')\n            return None\n\n    # create new pipeline\n    original_pipeline = shared.sd_model # backup current pipeline definition\n    # orig_pipeline = shared.sd_model # backup current pipeline definition\n    shared.sd_model = sd_models.switch_pipe(PhotoMakerStableDiffusionXLPipeline, shared.sd_model)\n    shared.sd_model.restore_pipeline = restore_pipeline\n    # sd_models.copy_diffuser_options(shared.sd_model, orig_pipeline) # copy options from original pipeline\n    sd_models.set_diffuser_options(shared.sd_model) # set all model options such as fp16, offload, etc.\n    sd_models.apply_balanced_offload(shared.sd_model) # apply balanced offload\n\n    orig_prompt_attention = shared.opts.prompt_attention\n    shared.opts.data['prompt_attention'] = 'fixed' # otherwise need to deal with class_tokens_mask\n    p.task_args['input_id_images'] = input_images\n    p.task_args['start_merge_step'] = int(start * p.steps)\n    p.task_args['prompt'] = p.all_prompts[0] if p.all_prompts else p.prompt\n\n    is_v2 = 'v2' in model\n    if is_v2:\n        repo_id, fn = 'TencentARC/PhotoMaker-V2', 'photomaker-v2.bin'\n    else:\n        repo_id, fn = 'TencentARC/PhotoMaker', 'photomaker-v1.bin'\n\n    photomaker_path = hf.hf_hub_download(repo_id=repo_id, filename=fn, repo_type=\"model\", cache_dir=shared.opts.hfcache_dir)\n    shared.log.debug(f'PhotoMaker: model=\"{model}\" uri=\"{repo_id}/{fn}\" images={len(input_images)} trigger={trigger} args={p.task_args}')\n\n    # load photomaker adapter\n    shared.sd_model.load_photomaker_adapter(\n        photomaker_path,\n        trigger_word=trigger,\n        weight_name='photomaker-v2.bin' if is_v2 else 'photomaker-v1.bin',\n        pm_version='v2' if is_v2 else 'v1',\n        device=devices.device,\n        cache_dir=shared.opts.hfcache_dir,\n    )\n    shared.sd_model.set_adapters([\"photomaker\"], adapter_weights=[strength])\n\n    # analyze faces\n    if is_v2:\n        id_embed_list = []\n        for i, source_image in enumerate(input_images):\n            faces = app.get(cv2.cvtColor(np.array(source_image), cv2.COLOR_RGB2BGR))\n            face = sorted(faces, key=lambda x:(x['bbox'][2]-x['bbox'][0])*x['bbox'][3]-x['bbox'][1])[-1]  # only use the maximum face\n            id_embed_list.append(torch.from_numpy(face['embedding']))\n            shared.log.debug(f'PhotoMaker: face={i+1} score={face.det_score:.2f} gender={\"female\" if face.gender==0 else \"male\"} age={face.age} bbox={face.bbox}')\n        p.task_args['id_embeds'] = torch.stack(id_embed_list).to(device=devices.device, dtype=devices.dtype)\n\n    # run processing\n    # processed: processing.Processed = processing.process_images(p)\n    p.extra_generation_params['PhotoMaker'] = f'{strength}'\n\n    # unload photomaker adapter\n    shared.sd_model.unload_lora_weights()\n\n    # restore original pipeline\n    shared.opts.data['prompt_attention'] = orig_prompt_attention\n    # shared.sd_model = orig_pipeline\n    return None\n    # return processed\n"
  },
  {
    "path": "modules/face/photomaker_model_v1.py",
    "content": "### original <https://github.com/TencentARC/PhotoMaker/blob/main/photomaker/model.py>\n\nimport torch\nimport torch.nn as nn\nfrom transformers.models.clip.modeling_clip import CLIPVisionModelWithProjection\nfrom transformers.models.clip.configuration_clip import CLIPVisionConfig\n\nVISION_CONFIG_DICT = {\n    \"hidden_size\": 1024,\n    \"intermediate_size\": 4096,\n    \"num_attention_heads\": 16,\n    \"num_hidden_layers\": 24,\n    \"patch_size\": 14,\n    \"projection_dim\": 768\n}\n\nclass MLP(nn.Module):\n    def __init__(self, in_dim, out_dim, hidden_dim, use_residual=True):\n        super().__init__()\n        if use_residual:\n            assert in_dim == out_dim\n        self.layernorm = nn.LayerNorm(in_dim)\n        self.fc1 = nn.Linear(in_dim, hidden_dim)\n        self.fc2 = nn.Linear(hidden_dim, out_dim)\n        self.use_residual = use_residual\n        self.act_fn = nn.GELU()\n\n    def forward(self, x):\n        residual = x\n        x = self.layernorm(x)\n        x = self.fc1(x)\n        x = self.act_fn(x)\n        x = self.fc2(x)\n        if self.use_residual:\n            x = x + residual\n        return x\n\n\nclass FuseModule(nn.Module):\n    def __init__(self, embed_dim):\n        super().__init__()\n        self.mlp1 = MLP(embed_dim * 2, embed_dim, embed_dim, use_residual=False)\n        self.mlp2 = MLP(embed_dim, embed_dim, embed_dim, use_residual=True)\n        self.layer_norm = nn.LayerNorm(embed_dim)\n\n    def fuse_fn(self, prompt_embeds, id_embeds):\n        unstacked_prompt_embeds = prompt_embeds.unbind(0)\n        stacked_id_embeds = torch.cat([unstacked_prompt_embeds[0].unsqueeze(0), id_embeds], dim=-1) # monkey patch\n        stacked_id_embeds = self.mlp1(stacked_id_embeds) + prompt_embeds\n        stacked_id_embeds = self.mlp2(stacked_id_embeds)\n        stacked_id_embeds = self.layer_norm(stacked_id_embeds)\n        return stacked_id_embeds\n\n    def forward(\n        self,\n        prompt_embeds,\n        id_embeds,\n        class_tokens_mask,\n    ) -> torch.Tensor:\n        # id_embeds shape: [b, max_num_inputs, 1, 2048]\n        id_embeds = id_embeds.to(prompt_embeds.dtype)\n        num_inputs = class_tokens_mask.sum().unsqueeze(0)\n        batch_size, max_num_inputs = id_embeds.shape[:2]\n        # seq_length: 77\n        seq_length = prompt_embeds.shape[1]\n        # flat_id_embeds shape: [b*max_num_inputs, 1, 2048]\n        flat_id_embeds = id_embeds.view(\n            -1, id_embeds.shape[-2], id_embeds.shape[-1]\n        )\n        # valid_id_mask [b*max_num_inputs]\n        valid_id_mask = (\n            torch.arange(max_num_inputs, device=flat_id_embeds.device)[None, :]\n            < num_inputs[:, None]\n        )\n        valid_id_embeds = flat_id_embeds[valid_id_mask.flatten()]\n        prompt_embeds = prompt_embeds.view(-1, prompt_embeds.shape[-1])\n        class_tokens_mask = class_tokens_mask.view(-1)\n        valid_id_embeds = valid_id_embeds.view(-1, valid_id_embeds.shape[-1])\n        # slice out the image token embeddings\n        image_token_embeds = prompt_embeds[class_tokens_mask]\n        stacked_id_embeds = self.fuse_fn(image_token_embeds, valid_id_embeds)\n        assert class_tokens_mask.sum() == stacked_id_embeds.shape[0], f\"{class_tokens_mask.sum()} != {stacked_id_embeds.shape[0]}\"\n        prompt_embeds.masked_scatter_(class_tokens_mask[:, None], stacked_id_embeds.to(prompt_embeds.dtype))\n        updated_prompt_embeds = prompt_embeds.view(batch_size, seq_length, -1)\n        return updated_prompt_embeds\n\nclass PhotoMakerIDEncoder(CLIPVisionModelWithProjection):\n    def __init__(self):\n        super().__init__(CLIPVisionConfig(**VISION_CONFIG_DICT))\n        self.visual_projection_2 = nn.Linear(1024, 1280, bias=False)\n        self.fuse_module = FuseModule(2048)\n\n    def forward(self, id_pixel_values, prompt_embeds, class_tokens_mask): # pylint: disable=arguments-differ\n        b, num_inputs, c, h, w = id_pixel_values.shape\n        id_pixel_values = id_pixel_values.view(b * num_inputs, c, h, w)\n\n        shared_id_embeds = self.vision_model(id_pixel_values)[1]\n        id_embeds = self.visual_projection(shared_id_embeds)\n        id_embeds_2 = self.visual_projection_2(shared_id_embeds)\n\n        id_embeds = id_embeds.view(b, num_inputs, 1, -1)\n        id_embeds_2 = id_embeds_2.view(b, num_inputs, 1, -1)\n\n        id_embeds = torch.cat((id_embeds, id_embeds_2), dim=-1)\n        updated_prompt_embeds = self.fuse_module(prompt_embeds, id_embeds, class_tokens_mask)\n\n        return updated_prompt_embeds\n"
  },
  {
    "path": "modules/face/photomaker_model_v2.py",
    "content": "### original <https://github.com/TencentARC/PhotoMaker/blob/main/photomaker/model_v2.py>\n\nimport math\nimport torch\nimport torch.nn as nn\nfrom transformers.models.clip.modeling_clip import CLIPVisionModelWithProjection\nfrom transformers.models.clip.configuration_clip import CLIPVisionConfig\nfrom einops import rearrange\nfrom einops.layers.torch import Rearrange\n\n\nclass FacePerceiverResampler(torch.nn.Module):\n    def __init__(\n        self,\n        *,\n        dim=768,\n        depth=4,\n        dim_head=64,\n        heads=16,\n        embedding_dim=1280,\n        output_dim=768,\n        ff_mult=4,\n    ):\n        super().__init__()\n        self.proj_in = torch.nn.Linear(embedding_dim, dim)\n        self.proj_out = torch.nn.Linear(dim, output_dim)\n        self.norm_out = torch.nn.LayerNorm(output_dim)\n        self.layers = torch.nn.ModuleList([])\n        for _ in range(depth):\n            self.layers.append(\n                torch.nn.ModuleList(\n                    [\n                        PerceiverAttention(dim=dim, dim_head=dim_head, heads=heads),\n                        FeedForward(dim=dim, mult=ff_mult),\n                    ]\n                )\n            )\n\n    def forward(self, latents, x):\n        x = self.proj_in(x)\n        for attn, ff in self.layers:\n            latents = attn(x, latents) + latents\n            latents = ff(latents) + latents\n        latents = self.proj_out(latents)\n        return self.norm_out(latents)\n\n# FFN\ndef FeedForward(dim, mult=4):\n    inner_dim = int(dim * mult)\n    return nn.Sequential(\n        nn.LayerNorm(dim),\n        nn.Linear(dim, inner_dim, bias=False),\n        nn.GELU(),\n        nn.Linear(inner_dim, dim, bias=False),\n    )\n\n\ndef reshape_tensor(x, heads):\n    bs, length, _width = x.shape\n    # (bs, length, width) --> (bs, length, n_heads, dim_per_head)\n    x = x.view(bs, length, heads, -1)\n    # (bs, length, n_heads, dim_per_head) --> (bs, n_heads, length, dim_per_head)\n    x = x.transpose(1, 2)\n    # (bs, n_heads, length, dim_per_head) --> (bs*n_heads, length, dim_per_head)\n    x = x.reshape(bs, heads, length, -1)\n    return x\n\n\nclass PerceiverAttention(nn.Module):\n    def __init__(self, *, dim, dim_head=64, heads=8):\n        super().__init__()\n        self.scale = dim_head**-0.5\n        self.dim_head = dim_head\n        self.heads = heads\n        inner_dim = dim_head * heads\n\n        self.norm1 = nn.LayerNorm(dim)\n        self.norm2 = nn.LayerNorm(dim)\n\n        self.to_q = nn.Linear(dim, inner_dim, bias=False)\n        self.to_kv = nn.Linear(dim, inner_dim * 2, bias=False)\n        self.to_out = nn.Linear(inner_dim, dim, bias=False)\n\n    def forward(self, x, latents):\n        \"\"\"\n        Args:\n            x (torch.Tensor): image features\n                shape (b, n1, D)\n            latent (torch.Tensor): latent features\n                shape (b, n2, D)\n        \"\"\"\n        x = self.norm1(x)\n        latents = self.norm2(latents)\n\n        b, l, _ = latents.shape\n\n        q = self.to_q(latents)\n        kv_input = torch.cat((x, latents), dim=-2)\n        k, v = self.to_kv(kv_input).chunk(2, dim=-1)\n\n        q = reshape_tensor(q, self.heads)\n        k = reshape_tensor(k, self.heads)\n        v = reshape_tensor(v, self.heads)\n\n        # attention\n        scale = 1 / math.sqrt(math.sqrt(self.dim_head))\n        weight = (q * scale) @ (k * scale).transpose(-2, -1)  # More stable with f16 than dividing afterwards\n        weight = torch.softmax(weight.float(), dim=-1).type(weight.dtype)\n        out = weight @ v\n\n        out = out.permute(0, 2, 1, 3).reshape(b, l, -1)\n\n        return self.to_out(out)\n\n\nclass Resampler(nn.Module):\n    def __init__(\n        self,\n        dim=1024,\n        depth=8,\n        dim_head=64,\n        heads=16,\n        num_queries=8,\n        embedding_dim=768,\n        output_dim=1024,\n        ff_mult=4,\n        max_seq_len: int = 257,  # CLIP tokens + CLS token\n        apply_pos_emb: bool = False,\n        num_latents_mean_pooled: int = 0,  # number of latents derived from mean pooled representation of the sequence\n    ):\n        super().__init__()\n        self.pos_emb = nn.Embedding(max_seq_len, embedding_dim) if apply_pos_emb else None\n\n        self.latents = nn.Parameter(torch.randn(1, num_queries, dim) / dim**0.5)\n\n        self.proj_in = nn.Linear(embedding_dim, dim)\n\n        self.proj_out = nn.Linear(dim, output_dim)\n        self.norm_out = nn.LayerNorm(output_dim)\n\n        self.to_latents_from_mean_pooled_seq = (\n            nn.Sequential(\n                nn.LayerNorm(dim),\n                nn.Linear(dim, dim * num_latents_mean_pooled),\n                Rearrange(\"b (n d) -> b n d\", n=num_latents_mean_pooled),\n            )\n            if num_latents_mean_pooled > 0\n            else None\n        )\n\n        self.layers = nn.ModuleList([])\n        for _ in range(depth):\n            self.layers.append(\n                nn.ModuleList(\n                    [\n                        PerceiverAttention(dim=dim, dim_head=dim_head, heads=heads),\n                        FeedForward(dim=dim, mult=ff_mult),\n                    ]\n                )\n            )\n\n    def forward(self, x):\n        if self.pos_emb is not None:\n            n, device = x.shape[1], x.device\n            pos_emb = self.pos_emb(torch.arange(n, device=device))\n            x = x + pos_emb\n\n        latents = self.latents.repeat(x.size(0), 1, 1)\n\n        x = self.proj_in(x)\n\n        if self.to_latents_from_mean_pooled_seq:\n            meanpooled_seq = masked_mean(x, dim=1, mask=torch.ones(x.shape[:2], device=x.device, dtype=torch.bool))\n            meanpooled_latents = self.to_latents_from_mean_pooled_seq(meanpooled_seq)\n            latents = torch.cat((meanpooled_latents, latents), dim=-2)\n\n        for attn, ff in self.layers:\n            latents = attn(x, latents) + latents\n            latents = ff(latents) + latents\n\n        latents = self.proj_out(latents)\n        return self.norm_out(latents)\n\n\ndef masked_mean(t, *, dim, mask=None):\n    if mask is None:\n        return t.mean(dim=dim)\n\n    denom = mask.sum(dim=dim, keepdim=True)\n    mask = rearrange(mask, \"b n -> b n 1\")\n    masked_t = t.masked_fill(~mask, 0.0)\n\n    return masked_t.sum(dim=dim) / denom.clamp(min=1e-5)\n\n\nVISION_CONFIG_DICT = {\n    \"hidden_size\": 1024,\n    \"intermediate_size\": 4096,\n    \"num_attention_heads\": 16,\n    \"num_hidden_layers\": 24,\n    \"patch_size\": 14,\n    \"projection_dim\": 768\n}\n\n\nclass MLP(nn.Module):\n    def __init__(self, in_dim, out_dim, hidden_dim, use_residual=True):\n        super().__init__()\n        if use_residual:\n            assert in_dim == out_dim\n        self.layernorm = nn.LayerNorm(in_dim)\n        self.fc1 = nn.Linear(in_dim, hidden_dim)\n        self.fc2 = nn.Linear(hidden_dim, out_dim)\n        self.use_residual = use_residual\n        self.act_fn = nn.GELU()\n\n    def forward(self, x):\n        residual = x\n        x = self.layernorm(x)\n        x = self.fc1(x)\n        x = self.act_fn(x)\n        x = self.fc2(x)\n        if self.use_residual:\n            x = x + residual\n        return x\n\n\nclass QFormerPerceiver(nn.Module):\n    def __init__(self, id_embeddings_dim, cross_attention_dim, num_tokens, embedding_dim=1024, use_residual=True, ratio=4):\n        super().__init__()\n\n        self.num_tokens = num_tokens\n        self.cross_attention_dim = cross_attention_dim\n        self.use_residual = use_residual\n        self.token_proj = nn.Sequential(\n            nn.Linear(id_embeddings_dim, id_embeddings_dim*ratio),\n            nn.GELU(),\n            nn.Linear(id_embeddings_dim*ratio, cross_attention_dim*num_tokens),\n        )\n        self.token_norm = nn.LayerNorm(cross_attention_dim)\n        self.perceiver_resampler = FacePerceiverResampler(\n            dim=cross_attention_dim,\n            depth=4,\n            dim_head=128,\n            heads=cross_attention_dim // 128,\n            embedding_dim=embedding_dim,\n            output_dim=cross_attention_dim,\n            ff_mult=4,\n        )\n\n    def forward(self, x, last_hidden_state):\n        x = self.token_proj(x)\n        x = x.reshape(-1, self.num_tokens, self.cross_attention_dim)\n        x = self.token_norm(x) # cls token\n        out = self.perceiver_resampler(x, last_hidden_state) # retrieve from patch tokens\n        if self.use_residual:\n            out = x + 1.0 * out\n        return out\n\n\nclass FuseModule(nn.Module):\n    def __init__(self, embed_dim):\n        super().__init__()\n        self.mlp1 = MLP(embed_dim * 2, embed_dim, embed_dim, use_residual=False)\n        self.mlp2 = MLP(embed_dim, embed_dim, embed_dim, use_residual=True)\n        self.layer_norm = nn.LayerNorm(embed_dim)\n\n    def fuse_fn(self, prompt_embeds, id_embeds):\n        stacked_id_embeds = torch.cat([prompt_embeds, id_embeds], dim=-1)\n        stacked_id_embeds = self.mlp1(stacked_id_embeds) + prompt_embeds\n        stacked_id_embeds = self.mlp2(stacked_id_embeds)\n        stacked_id_embeds = self.layer_norm(stacked_id_embeds)\n        return stacked_id_embeds\n\n    def forward(\n        self,\n        prompt_embeds,\n        id_embeds,\n        class_tokens_mask,\n    ) -> torch.Tensor:\n        # id_embeds shape: [b, max_num_inputs, 1, 2048]\n        id_embeds = id_embeds.to(prompt_embeds.dtype)\n        num_inputs = class_tokens_mask.sum().unsqueeze(0)\n        batch_size, max_num_inputs = id_embeds.shape[:2]\n        # seq_length: 77\n        seq_length = prompt_embeds.shape[1]\n        # flat_id_embeds shape: [b*max_num_inputs, 1, 2048]\n        flat_id_embeds = id_embeds.view(\n            -1, id_embeds.shape[-2], id_embeds.shape[-1]\n        )\n        # valid_id_mask [b*max_num_inputs]\n        valid_id_mask = (\n            torch.arange(max_num_inputs, device=flat_id_embeds.device)[None, :]\n            < num_inputs[:, None]\n        )\n        valid_id_embeds = flat_id_embeds[valid_id_mask.flatten()]\n\n        prompt_embeds = prompt_embeds.view(-1, prompt_embeds.shape[-1])\n        class_tokens_mask = class_tokens_mask.view(-1)\n        valid_id_embeds = valid_id_embeds.view(-1, valid_id_embeds.shape[-1])\n        # slice out the image token embeddings\n        image_token_embeds = prompt_embeds[class_tokens_mask]\n        stacked_id_embeds = self.fuse_fn(image_token_embeds, valid_id_embeds)\n        assert class_tokens_mask.sum() == stacked_id_embeds.shape[0], f\"{class_tokens_mask.sum()} != {stacked_id_embeds.shape[0]}\"\n        prompt_embeds.masked_scatter_(class_tokens_mask[:, None], stacked_id_embeds.to(prompt_embeds.dtype))\n        updated_prompt_embeds = prompt_embeds.view(batch_size, seq_length, -1)\n        return updated_prompt_embeds\n\n\nclass PhotoMakerIDEncoder_CLIPInsightfaceExtendtoken(CLIPVisionModelWithProjection):\n    def __init__(self, id_embeddings_dim=512):\n        super().__init__(CLIPVisionConfig(**VISION_CONFIG_DICT))\n        self.fuse_module = FuseModule(2048)\n        self.visual_projection_2 = nn.Linear(1024, 1280, bias=False)\n\n        cross_attention_dim = 2048\n        # projection\n        self.num_tokens = 2\n        self.cross_attention_dim = cross_attention_dim\n        self.qformer_perceiver = QFormerPerceiver(\n                                    id_embeddings_dim,\n                                    cross_attention_dim,\n                                    self.num_tokens,\n                                )\n\n    def forward(self, id_pixel_values, prompt_embeds, class_tokens_mask, id_embeds): # pylint: disable=arguments-differ, arguments-renamed\n        b, num_inputs, c, h, w = id_pixel_values.shape\n        id_pixel_values = id_pixel_values.view(b * num_inputs, c, h, w)\n\n        last_hidden_state = self.vision_model(id_pixel_values)[0]\n        id_embeds = id_embeds.view(b * num_inputs, -1)\n\n        id_embeds = self.qformer_perceiver(id_embeds, last_hidden_state)\n        id_embeds = id_embeds.view(b, num_inputs, self.num_tokens, -1)\n        updated_prompt_embeds = self.fuse_module(prompt_embeds, id_embeds, class_tokens_mask)\n\n        return updated_prompt_embeds\n"
  },
  {
    "path": "modules/face/photomaker_pipeline.py",
    "content": "### original <https://github.com/TencentARC/PhotoMaker/blob/main/photomaker/pipeline.py>\n\nimport inspect\nfrom typing import Any, Callable, Dict, List, Optional, Tuple, Union\nimport PIL\nimport torch\nfrom transformers import CLIPImageProcessor\nfrom safetensors import safe_open\nfrom huggingface_hub.utils import validate_hf_hub_args\nfrom diffusers import StableDiffusionXLPipeline\nfrom diffusers.pipelines.stable_diffusion_xl.pipeline_output import StableDiffusionXLPipelineOutput\nfrom diffusers.loaders import StableDiffusionXLLoraLoaderMixin, TextualInversionLoaderMixin\nfrom diffusers.callbacks import MultiPipelineCallbacks, PipelineCallback\nfrom diffusers.models.lora import adjust_lora_scale_text_encoder\nfrom diffusers.utils import _get_model_file, USE_PEFT_BACKEND, deprecate, is_torch_xla_available, scale_lora_layers, unscale_lora_layers\n\nif is_torch_xla_available():\n    import torch_xla.core.xla_model as xm\n    XLA_AVAILABLE = True\nelse:\n    XLA_AVAILABLE = False\n\nfrom modules.face.photomaker_model_v1 import PhotoMakerIDEncoder\nfrom modules.face.photomaker_model_v2 import PhotoMakerIDEncoder_CLIPInsightfaceExtendtoken\n\nPipelineImageInput = Union[\n    PIL.Image.Image,\n    torch.FloatTensor,\n    List[PIL.Image.Image],\n    List[torch.FloatTensor],\n]\n\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.rescale_noise_cfg\ndef rescale_noise_cfg(noise_cfg, noise_pred_text, guidance_rescale=0.0):\n    \"\"\"\n    Rescale `noise_cfg` according to `guidance_rescale`. Based on findings of [Common Diffusion Noise Schedules and\n    Sample Steps are Flawed](https://arxiv.org/pdf/2305.08891.pdf). See Section 3.4\n    \"\"\"\n    std_text = noise_pred_text.std(dim=list(range(1, noise_pred_text.ndim)), keepdim=True)\n    std_cfg = noise_cfg.std(dim=list(range(1, noise_cfg.ndim)), keepdim=True)\n    # rescale the results from guidance (fixes overexposure)\n    noise_pred_rescaled = noise_cfg * (std_text / std_cfg)\n    # mix with the original results from guidance by factor guidance_rescale to avoid \"plain looking\" images\n    noise_cfg = guidance_rescale * noise_pred_rescaled + (1 - guidance_rescale) * noise_cfg\n    return noise_cfg\n\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.retrieve_timesteps\ndef retrieve_timesteps(\n    scheduler,\n    num_inference_steps: Optional[int] = None,\n    device: Optional[Union[str, torch.device]] = None,\n    timesteps: Optional[List[int]] = None,\n    sigmas: Optional[List[float]] = None,\n    **kwargs,\n):\n    \"\"\"\n    Calls the scheduler's `set_timesteps` method and retrieves timesteps from the scheduler after the call. Handles\n    custom timesteps. Any kwargs will be supplied to `scheduler.set_timesteps`.\n\n    Args:\n        scheduler (`SchedulerMixin`):\n            The scheduler to get timesteps from.\n        num_inference_steps (`int`):\n            The number of diffusion steps used when generating samples with a pre-trained model. If used, `timesteps`\n            must be `None`.\n        device (`str` or `torch.device`, *optional*):\n            The device to which the timesteps should be moved to. If `None`, the timesteps are not moved.\n        timesteps (`List[int]`, *optional*):\n            Custom timesteps used to override the timestep spacing strategy of the scheduler. If `timesteps` is passed,\n            `num_inference_steps` and `sigmas` must be `None`.\n        sigmas (`List[float]`, *optional*):\n            Custom sigmas used to override the timestep spacing strategy of the scheduler. If `sigmas` is passed,\n            `num_inference_steps` and `timesteps` must be `None`.\n\n    Returns:\n        `Tuple[torch.Tensor, int]`: A tuple where the first element is the timestep schedule from the scheduler and the\n        second element is the number of inference steps.\n    \"\"\"\n    if timesteps is not None and sigmas is not None:\n        raise ValueError(\"Only one of `timesteps` or `sigmas` can be passed. Please choose one to set custom values\")\n    if timesteps is not None:\n        accepts_timesteps = \"timesteps\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n        if not accepts_timesteps:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" timestep schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(timesteps=timesteps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    elif sigmas is not None:\n        accept_sigmas = \"sigmas\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n        if not accept_sigmas:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" sigmas schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(sigmas=sigmas, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    else:\n        scheduler.set_timesteps(num_inference_steps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n    return timesteps, num_inference_steps\n\n\nclass PhotoMakerStableDiffusionXLPipeline(StableDiffusionXLPipeline):\n    @validate_hf_hub_args\n    def load_photomaker_adapter(\n        self,\n        pretrained_model_name_or_path_or_dict: Union[str, Dict[str, torch.Tensor]],\n        weight_name: str,\n        subfolder: str = '',\n        trigger_word: str = 'img',\n        pm_version: str = 'v2',\n        device: torch.device = None,\n        **kwargs,\n    ):\n        \"\"\"\n        Parameters:\n            pretrained_model_name_or_path_or_dict (`str` or `os.PathLike` or `dict`):\n                Can be either:\n\n                    - A string, the *model id* (for example `google/ddpm-celebahq-256`) of a pretrained model hosted on\n                      the Hub.\n                    - A path to a *directory* (for example `./my_model_directory`) containing the model weights saved\n                      with [`ModelMixin.save_pretrained`].\n                    - A [torch state\n                      dict](https://pytorch.org/tutorials/beginner/saving_loading_models.html#what-is-a-state-dict).\n\n            weight_name (`str`):\n                The weight name NOT the path to the weight.\n\n            subfolder (`str`, defaults to `\"\"`):\n                The subfolder location of a model file within a larger model repository on the Hub or locally.\n\n            trigger_word (`str`, *optional*, defaults to `\"img\"`):\n                The trigger word is used to identify the position of class word in the text prompt,\n                and it is recommended not to set it as a common word.\n                This trigger word must be placed after the class word when used, otherwise, it will affect the performance of the personalized generation.\n        \"\"\"\n\n        # Load the main state dict first.\n        cache_dir = kwargs.pop(\"cache_dir\", None)\n        force_download = kwargs.pop(\"force_download\", False)\n        proxies = kwargs.pop(\"proxies\", None)\n        local_files_only = kwargs.pop(\"local_files_only\", None)\n        token = kwargs.pop(\"token\", None)\n        revision = kwargs.pop(\"revision\", None)\n\n        user_agent = {\n            \"file_type\": \"attn_procs_weights\",\n            \"framework\": \"pytorch\",\n        }\n\n        if not isinstance(pretrained_model_name_or_path_or_dict, dict):\n            model_file = _get_model_file(\n                pretrained_model_name_or_path_or_dict,\n                weights_name=weight_name,\n                cache_dir=cache_dir,\n                force_download=force_download,\n                proxies=proxies,\n                local_files_only=local_files_only,\n                token=token,\n                revision=revision,\n                subfolder=subfolder,\n                user_agent=user_agent,\n            )\n            if weight_name.endswith(\".safetensors\"):\n                state_dict = {\"id_encoder\": {}, \"lora_weights\": {}}\n                with safe_open(model_file, framework=\"pt\", device=\"cpu\") as f:\n                    for key in f.keys():\n                        if key.startswith(\"id_encoder.\"):\n                            state_dict[\"id_encoder\"][key.replace(\"id_encoder.\", \"\")] = f.get_tensor(key)\n                        elif key.startswith(\"lora_weights.\"):\n                            state_dict[\"lora_weights\"][key.replace(\"lora_weights.\", \"\")] = f.get_tensor(key)\n            else:\n                state_dict = torch.load(model_file, map_location=\"cpu\")\n        else:\n            state_dict = pretrained_model_name_or_path_or_dict\n\n        keys = list(state_dict.keys())\n        if keys != [\"id_encoder\", \"lora_weights\"]:\n            raise ValueError(\"Required keys are (`id_encoder` and `lora_weights`) missing from the state dict.\")\n\n        self.num_tokens =2 # pylint: disable=attribute-defined-outside-init\n        self.pm_version = pm_version # pylint: disable=attribute-defined-outside-init\n        self.trigger_word = trigger_word # pylint: disable=attribute-defined-outside-init\n        # load finetuned CLIP image encoder and fuse module here if it has not been registered to the pipeline yet\n        self.id_image_processor = CLIPImageProcessor() # pylint: disable=attribute-defined-outside-init\n        if pm_version == \"v1\": # PhotoMaker v1\n            id_encoder = PhotoMakerIDEncoder()\n        elif pm_version == \"v2\": # PhotoMaker v2\n            id_encoder = PhotoMakerIDEncoder_CLIPInsightfaceExtendtoken()\n        else:\n            raise NotImplementedError(f\"The PhotoMaker version [{pm_version}] does not support\")\n\n        id_encoder.load_state_dict(state_dict[\"id_encoder\"], strict=True)\n        id_encoder = id_encoder.to(device, dtype=self.unet.dtype)\n        self.id_encoder = id_encoder # pylint: disable=attribute-defined-outside-init\n\n        # load lora into models\n        self.load_lora_weights(state_dict[\"lora_weights\"], adapter_name=\"photomaker\")\n\n        # Add trigger word token\n        if self.tokenizer is not None:\n            self.tokenizer.add_tokens([self.trigger_word], special_tokens=True)\n\n        self.tokenizer_2.add_tokens([self.trigger_word], special_tokens=True)\n\n\n    def encode_prompt_with_trigger_word(\n        self,\n        prompt: str,\n        prompt_2: Optional[str] = None,\n        device: Optional[torch.device] = None,\n        num_images_per_prompt: int = 1,\n        do_classifier_free_guidance: bool = True,\n        negative_prompt: Optional[str] = None,\n        negative_prompt_2: Optional[str] = None,\n        prompt_embeds: Optional[torch.Tensor] = None,\n        negative_prompt_embeds: Optional[torch.Tensor] = None,\n        pooled_prompt_embeds: Optional[torch.Tensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.Tensor] = None,\n        lora_scale: Optional[float] = None,\n        clip_skip: Optional[int] = None,\n        ### Added args\n        num_id_images: int = 1,\n        class_tokens_mask: Optional[torch.LongTensor] = None,\n    ):\n        device = device or self._execution_device\n\n        # set lora scale so that monkey patched LoRA\n        # function of text encoder can correctly access it\n        if lora_scale is not None and isinstance(self, StableDiffusionXLLoraLoaderMixin):\n            self._lora_scale = lora_scale # pylint: disable=attribute-defined-outside-init\n\n            # dynamically adjust the LoRA scale\n            if self.text_encoder is not None:\n                if not USE_PEFT_BACKEND:\n                    adjust_lora_scale_text_encoder(self.text_encoder, lora_scale)\n                else:\n                    scale_lora_layers(self.text_encoder, lora_scale)\n\n            if self.text_encoder_2 is not None:\n                if not USE_PEFT_BACKEND:\n                    adjust_lora_scale_text_encoder(self.text_encoder_2, lora_scale)\n                else:\n                    scale_lora_layers(self.text_encoder_2, lora_scale)\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n\n        if prompt is not None:\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        # Find the token id of the trigger word\n        image_token_id = self.tokenizer_2.convert_tokens_to_ids(self.trigger_word)\n\n        # Define tokenizers and text encoders\n        tokenizers = [self.tokenizer, self.tokenizer_2] if self.tokenizer is not None else [self.tokenizer_2]\n        text_encoders = (\n            [self.text_encoder, self.text_encoder_2] if self.text_encoder is not None else [self.text_encoder_2]\n        )\n\n        if prompt_embeds is None:\n            prompt_2 = prompt_2 or prompt\n            prompt_2 = [prompt_2] if isinstance(prompt_2, str) else prompt_2\n\n            # textual inversion: process multi-vector tokens if necessary\n            prompt_embeds_list = []\n            prompts = [prompt, prompt_2]\n            for prompt, tokenizer, text_encoder in zip(prompts, tokenizers, text_encoders): # pylint: disable=redefined-argument-from-local\n                if isinstance(self, TextualInversionLoaderMixin):\n                    prompt = self.maybe_convert_prompt(prompt, tokenizer)\n\n                text_inputs = tokenizer(\n                    prompt,\n                    padding=\"max_length\",\n                    max_length=tokenizer.model_max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                text_input_ids = text_inputs.input_ids\n                untruncated_ids = tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n                if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(\n                    text_input_ids, untruncated_ids\n                ):\n                    _removed_text = tokenizer.batch_decode(untruncated_ids[:, tokenizer.model_max_length - 1 : -1])\n\n                clean_index = 0\n                clean_input_ids = []\n                class_token_index = []\n                # Find out the corresponding class word token based on the newly added trigger word token\n                for _i, token_id in enumerate(text_input_ids.tolist()[0]):\n                    if token_id == image_token_id:\n                        class_token_index.append(clean_index - 1)\n                    else:\n                        clean_input_ids.append(token_id)\n                        clean_index += 1\n\n                if len(class_token_index) != 1:\n                    raise ValueError(\n                        f\"PhotoMaker currently does not support multiple trigger words in a single prompt.\\\n                            Trigger word: {self.trigger_word}, Prompt: {prompt}.\"\n                    )\n                class_token_index = class_token_index[0]\n\n                # Expand the class word token and corresponding mask\n                class_token = clean_input_ids[class_token_index]\n                clean_input_ids = clean_input_ids[:class_token_index] + [class_token] * num_id_images * self.num_tokens + \\\n                    clean_input_ids[class_token_index+1:]\n\n                # Truncation or padding\n                max_len = tokenizer.model_max_length\n                if len(clean_input_ids) > max_len:\n                    clean_input_ids = clean_input_ids[:max_len]\n                else:\n                    clean_input_ids = clean_input_ids + [tokenizer.pad_token_id] * (\n                        max_len - len(clean_input_ids)\n                    )\n\n                class_tokens_mask = [True if class_token_index <= i < class_token_index+(num_id_images * self.num_tokens) else False \\\n                     for i in range(len(clean_input_ids))]\n\n                clean_input_ids = torch.tensor(clean_input_ids, dtype=torch.long).unsqueeze(0)\n                class_tokens_mask = torch.tensor(class_tokens_mask, dtype=torch.bool).unsqueeze(0)\n\n                prompt_embeds = text_encoder(clean_input_ids.to(device), output_hidden_states=True)\n\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                pooled_prompt_embeds = prompt_embeds[0]\n                if clip_skip is None:\n                    prompt_embeds = prompt_embeds.hidden_states[-2]\n                else:\n                    # \"2\" because SDXL always indexes from the penultimate layer.\n                    prompt_embeds = prompt_embeds.hidden_states[-(clip_skip + 2)]\n\n                prompt_embeds_list.append(prompt_embeds)\n\n            prompt_embeds = torch.concat(prompt_embeds_list, dim=-1)\n\n        prompt_embeds = prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n        class_tokens_mask = class_tokens_mask.to(device=device)\n        # get unconditional embeddings for classifier free guidance\n        zero_out_negative_prompt = negative_prompt is None and self.config.force_zeros_for_empty_prompt # pylint: disable=no-member\n        if do_classifier_free_guidance and negative_prompt_embeds is None and zero_out_negative_prompt:\n            negative_prompt_embeds = torch.zeros_like(prompt_embeds)\n            negative_pooled_prompt_embeds = torch.zeros_like(pooled_prompt_embeds)\n        elif do_classifier_free_guidance and negative_prompt_embeds is None:\n            negative_prompt = negative_prompt or \"\"\n            negative_prompt_2 = negative_prompt_2 or negative_prompt\n\n            # normalize str to list\n            negative_prompt = batch_size * [negative_prompt] if isinstance(negative_prompt, str) else negative_prompt\n            negative_prompt_2 = (\n                batch_size * [negative_prompt_2] if isinstance(negative_prompt_2, str) else negative_prompt_2\n            )\n\n            uncond_tokens: List[str]\n            if prompt is not None and type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            if batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n            uncond_tokens = [negative_prompt, negative_prompt_2]\n\n            negative_prompt_embeds_list = []\n            for negative_prompt, tokenizer, text_encoder in zip(uncond_tokens, tokenizers, text_encoders): # pylint: disable=redefined-argument-from-local\n                if isinstance(self, TextualInversionLoaderMixin):\n                    negative_prompt = self.maybe_convert_prompt(negative_prompt, tokenizer)\n\n                max_length = prompt_embeds.shape[1]\n                uncond_input = tokenizer(\n                    negative_prompt,\n                    padding=\"max_length\",\n                    max_length=max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                negative_prompt_embeds = text_encoder(\n                    uncond_input.input_ids.to(device),\n                    output_hidden_states=True,\n                )\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                negative_pooled_prompt_embeds = negative_prompt_embeds[0]\n                negative_prompt_embeds = negative_prompt_embeds.hidden_states[-2]\n\n                negative_prompt_embeds_list.append(negative_prompt_embeds)\n\n            negative_prompt_embeds = torch.concat(negative_prompt_embeds_list, dim=-1)\n\n        if self.text_encoder_2 is not None:\n            prompt_embeds = prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n        else:\n            prompt_embeds = prompt_embeds.to(dtype=self.unet.dtype, device=device)\n\n        bs_embed, seq_len, _ = prompt_embeds.shape\n\n        if do_classifier_free_guidance:\n            # duplicate unconditional embeddings for each generation per prompt, using mps friendly method\n            seq_len = negative_prompt_embeds.shape[1]\n\n            if self.text_encoder_2 is not None:\n                negative_prompt_embeds = negative_prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n            else:\n                negative_prompt_embeds = negative_prompt_embeds.to(dtype=self.unet.dtype, device=device)\n\n            negative_prompt_embeds = negative_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds = negative_prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n        pooled_prompt_embeds = pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n            bs_embed * num_images_per_prompt, -1\n        )\n        if do_classifier_free_guidance:\n            negative_pooled_prompt_embeds = negative_pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n                bs_embed * num_images_per_prompt, -1\n            )\n\n        if self.text_encoder is not None:\n            if isinstance(self, StableDiffusionXLLoraLoaderMixin) and USE_PEFT_BACKEND:\n                # Retrieve the original scale by scaling back the LoRA layers\n                unscale_lora_layers(self.text_encoder, lora_scale)\n\n        if self.text_encoder_2 is not None:\n            if isinstance(self, StableDiffusionXLLoraLoaderMixin) and USE_PEFT_BACKEND:\n                # Retrieve the original scale by scaling back the LoRA layers\n                unscale_lora_layers(self.text_encoder_2, lora_scale)\n\n        return prompt_embeds, negative_prompt_embeds, pooled_prompt_embeds, negative_pooled_prompt_embeds, class_tokens_mask\n\n    @torch.no_grad()\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        prompt_2: Optional[Union[str, List[str]]] = None,\n        height: Optional[int] = None,\n        width: Optional[int] = None,\n        num_inference_steps: int = 50,\n        timesteps: List[int] = None,\n        sigmas: List[float] = None,\n        denoising_end: Optional[float] = None,\n        guidance_scale: float = 5.0,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        negative_prompt_2: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        eta: float = 0.0,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.Tensor] = None,\n        prompt_embeds: Optional[torch.Tensor] = None,\n        negative_prompt_embeds: Optional[torch.Tensor] = None,\n        pooled_prompt_embeds: Optional[torch.Tensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.Tensor] = None,\n        ip_adapter_image: Optional[PipelineImageInput] = None,\n        ip_adapter_image_embeds: Optional[List[torch.Tensor]] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        guidance_rescale: float = 0.0,\n        original_size: Optional[Tuple[int, int]] = None,\n        crops_coords_top_left: Tuple[int, int] = (0, 0),\n        target_size: Optional[Tuple[int, int]] = None,\n        negative_original_size: Optional[Tuple[int, int]] = None,\n        negative_crops_coords_top_left: Tuple[int, int] = (0, 0),\n        negative_target_size: Optional[Tuple[int, int]] = None,\n        clip_skip: Optional[int] = None,\n        callback_on_step_end: Optional[\n            Union[Callable[[int, int, Dict], None], PipelineCallback, MultiPipelineCallbacks]\n        ] = None,\n        callback_on_step_end_tensor_inputs: List[str] = [\"latents\"],\n        # Added parameters (for PhotoMaker)\n        input_id_images: PipelineImageInput = None,\n        start_merge_step: int = 10,\n        class_tokens_mask: Optional[torch.LongTensor] = None,\n        id_embeds: Optional[torch.FloatTensor] = None,\n        prompt_embeds_text_only: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds_text_only: Optional[torch.FloatTensor] = None,\n        **kwargs,\n    ):\n        r\"\"\"\n        Function invoked when calling the pipeline for generation.\n        Only the parameters introduced by PhotoMaker are discussed here.\n        For explanations of the previous parameters in StableDiffusionXLPipeline, please refer to https://github.com/huggingface/diffusers/blob/v0.25.0/src/diffusers/pipelines/stable_diffusion_xl/pipeline_stable_diffusion_xl.py\n\n        Args:\n            input_id_images (`PipelineImageInput`, *optional*):\n                Input ID Image to work with PhotoMaker.\n            class_tokens_mask (`torch.LongTensor`, *optional*):\n                Pre-generated class token. When the `prompt_embeds` parameter is provided in advance, it is necessary to prepare the `class_tokens_mask` beforehand for marking out the position of class word.\n            prompt_embeds_text_only (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            pooled_prompt_embeds_text_only (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n\n        Returns:\n            [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] or `tuple`:\n            [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] if `return_dict` is True, otherwise a\n            `tuple`. When returning a tuple, the first element is a list with the generated images.\n        \"\"\"\n\n        callback = kwargs.pop(\"callback\", None)\n        callback_steps = kwargs.pop(\"callback_steps\", None)\n\n        if callback is not None:\n            deprecate(\n                \"callback\",\n                \"1.0.0\",\n                \"Passing `callback` as an input argument to `__call__` is deprecated, consider use `callback_on_step_end`\",\n            )\n        if callback_steps is not None:\n            deprecate(\n                \"callback_steps\",\n                \"1.0.0\",\n                \"Passing `callback_steps` as an input argument to `__call__` is deprecated, consider use `callback_on_step_end`\",\n            )\n\n        if isinstance(callback_on_step_end, (PipelineCallback, MultiPipelineCallbacks)):\n            callback_on_step_end_tensor_inputs = callback_on_step_end.tensor_inputs\n\n        # 0. Default height and width to unet\n        height = height or self.default_sample_size * self.vae_scale_factor\n        width = width or self.default_sample_size * self.vae_scale_factor\n\n        original_size = original_size or (height, width)\n        target_size = target_size or (height, width)\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            prompt_2,\n            height,\n            width,\n            callback_steps,\n            negative_prompt,\n            negative_prompt_2,\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n            ip_adapter_image,\n            ip_adapter_image_embeds,\n            callback_on_step_end_tensor_inputs,\n        )\n\n        self._guidance_scale = guidance_scale # pylint: disable=attribute-defined-outside-init\n        self._guidance_rescale = guidance_rescale # pylint: disable=attribute-defined-outside-init\n        self._clip_skip = clip_skip # pylint: disable=attribute-defined-outside-init\n        self._cross_attention_kwargs = cross_attention_kwargs # pylint: disable=attribute-defined-outside-init\n        self._denoising_end = denoising_end # pylint: disable=attribute-defined-outside-init\n        self._interrupt = False # pylint: disable=attribute-defined-outside-init\n\n        if prompt_embeds is not None and class_tokens_mask is None:\n            raise ValueError(\n                \"If `prompt_embeds` are provided, `class_tokens_mask` also have to be passed. Make sure to generate `class_tokens_mask` from the same tokenizer that was used to generate `prompt_embeds`.\"\n            )\n        # check the input id images\n        if input_id_images is None:\n            raise ValueError(\n                \"Provide `input_id_images`. Cannot leave `input_id_images` undefined for PhotoMaker pipeline.\"\n            )\n        if not isinstance(input_id_images, list):\n            input_id_images = [input_id_images]\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        device = self._execution_device\n\n        # 3. Encode input prompt\n        lora_scale = (\n            self.cross_attention_kwargs.get(\"scale\", None) if self.cross_attention_kwargs is not None else None\n        )\n\n        num_id_images = len(input_id_images)\n        (\n            prompt_embeds,\n            _,\n            pooled_prompt_embeds,\n            _,\n            class_tokens_mask,\n        ) = self.encode_prompt_with_trigger_word(\n            prompt=prompt,\n            prompt_2=prompt_2,\n            device=device,\n            num_id_images=num_id_images,\n            class_tokens_mask=class_tokens_mask,\n            num_images_per_prompt=num_images_per_prompt,\n            do_classifier_free_guidance=self.do_classifier_free_guidance,\n            negative_prompt=negative_prompt,\n            negative_prompt_2=negative_prompt_2,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            negative_pooled_prompt_embeds=negative_pooled_prompt_embeds,\n            lora_scale=lora_scale,\n            clip_skip=self.clip_skip,\n        )\n\n        # 4. Encode input prompt without the trigger word for delayed conditioning\n        # encode, remove trigger word token, then decode\n        tokens_text_only = self.tokenizer.encode(prompt, add_special_tokens=False)\n        trigger_word_token = self.tokenizer.convert_tokens_to_ids(self.trigger_word)\n        tokens_text_only.remove(trigger_word_token)\n        prompt_text_only = self.tokenizer.decode(tokens_text_only, add_special_tokens=False)\n        (\n            prompt_embeds_text_only,\n            negative_prompt_embeds,\n            pooled_prompt_embeds_text_only,\n            negative_pooled_prompt_embeds,\n        ) = self.encode_prompt(\n            prompt=prompt_text_only,\n            prompt_2=prompt_2,\n            device=device,\n            num_images_per_prompt=num_images_per_prompt,\n            do_classifier_free_guidance=self.do_classifier_free_guidance,\n            negative_prompt=negative_prompt,\n            negative_prompt_2=negative_prompt_2,\n            prompt_embeds=prompt_embeds_text_only,\n            negative_prompt_embeds=negative_prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds_text_only,\n            negative_pooled_prompt_embeds=negative_pooled_prompt_embeds,\n            lora_scale=lora_scale,\n            clip_skip=self.clip_skip,\n        )\n\n        # 5. Prepare timesteps\n        timesteps, num_inference_steps = retrieve_timesteps(\n            self.scheduler, num_inference_steps, device, timesteps, sigmas\n        )\n\n        # 6. Prepare the input ID images\n        dtype = next(self.id_encoder.parameters()).dtype\n        if not isinstance(input_id_images[0], torch.Tensor):\n            id_pixel_values = self.id_image_processor(input_id_images, return_tensors=\"pt\").pixel_values # pylint: disable=used-before-assignment\n\n        id_pixel_values = id_pixel_values.unsqueeze(0).to(device=device, dtype=dtype) # pylint: disable=used-before-assignment\n\n        # 7. Get the update text embedding with the stacked ID embedding\n        if id_embeds is not None:\n            id_embeds = id_embeds.unsqueeze(0).to(device=device, dtype=dtype)\n            prompt_embeds = self.id_encoder(id_pixel_values, prompt_embeds, class_tokens_mask, id_embeds)\n        else:\n            prompt_embeds = self.id_encoder(id_pixel_values, prompt_embeds, class_tokens_mask)\n\n        bs_embed, seq_len, _ = prompt_embeds.shape\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(bs_embed * num_images_per_prompt, seq_len, -1)\n\n        # 8. Prepare latent variables\n        num_channels_latents = self.unet.config.in_channels\n        latents = self.prepare_latents(\n            batch_size * num_images_per_prompt,\n            num_channels_latents,\n            height,\n            width,\n            prompt_embeds.dtype,\n            device,\n            generator,\n            latents,\n        )\n\n        # 9. Prepare extra step kwargs.\n        extra_step_kwargs = self.prepare_extra_step_kwargs(generator, eta)\n\n        # 10. Prepare added time ids & embeddings\n        add_text_embeds = pooled_prompt_embeds\n        if self.text_encoder_2 is None:\n            text_encoder_projection_dim = int(pooled_prompt_embeds.shape[-1])\n        else:\n            text_encoder_projection_dim = self.text_encoder_2.config.projection_dim\n\n        add_time_ids = self._get_add_time_ids(\n            original_size,\n            crops_coords_top_left,\n            target_size,\n            dtype=prompt_embeds.dtype,\n            text_encoder_projection_dim=text_encoder_projection_dim,\n        )\n        if negative_original_size is not None and negative_target_size is not None:\n            negative_add_time_ids = self._get_add_time_ids(\n                negative_original_size,\n                negative_crops_coords_top_left,\n                negative_target_size,\n                dtype=prompt_embeds.dtype,\n                text_encoder_projection_dim=text_encoder_projection_dim,\n            )\n        else:\n            negative_add_time_ids = add_time_ids\n\n        if self.do_classifier_free_guidance:\n            add_time_ids = torch.cat([negative_add_time_ids, add_time_ids], dim=0)\n\n        prompt_embeds = prompt_embeds.to(device)\n        add_text_embeds = add_text_embeds.to(device)\n        add_time_ids = add_time_ids.to(device).repeat(batch_size * num_images_per_prompt, 1)\n\n        if ip_adapter_image is not None or ip_adapter_image_embeds is not None:\n            image_embeds = self.prepare_ip_adapter_image_embeds(\n                ip_adapter_image,\n                ip_adapter_image_embeds,\n                device,\n                batch_size * num_images_per_prompt,\n                self.do_classifier_free_guidance,\n            )\n\n        # 11. Denoising loop\n        num_warmup_steps = max(len(timesteps) - num_inference_steps * self.scheduler.order, 0)\n\n        # 11.1 Apply denoising_end\n        if (\n            self.denoising_end is not None\n            and isinstance(self.denoising_end, float)\n            and self.denoising_end > 0\n            and self.denoising_end < 1\n        ):\n            discrete_timestep_cutoff = int(\n                round(\n                    self.scheduler.config.num_train_timesteps # pylint: disable=no-member\n                    - (self.denoising_end * self.scheduler.config.num_train_timesteps) # pylint: disable=no-member\n                )\n            )\n            num_inference_steps = len(list(filter(lambda ts: ts >= discrete_timestep_cutoff, timesteps)))\n            timesteps = timesteps[:num_inference_steps]\n\n        # 12. Optionally get Guidance Scale Embedding\n        timestep_cond = None\n        if self.unet.config.time_cond_proj_dim is not None:\n            guidance_scale_tensor = torch.tensor(self.guidance_scale - 1).repeat(batch_size * num_images_per_prompt)\n            timestep_cond = self.get_guidance_scale_embedding(\n                guidance_scale_tensor, embedding_dim=self.unet.config.time_cond_proj_dim\n            ).to(device=device, dtype=latents.dtype)\n\n        self._num_timesteps = len(timesteps) # pylint: disable=attribute-defined-outside-init\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                if self.interrupt:\n                    continue\n\n                # expand the latents if we are doing classifier free guidance\n                latent_model_input = torch.cat([latents] * 2) if self.do_classifier_free_guidance else latents\n\n                latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n                if i <= start_merge_step:\n                    current_prompt_embeds = torch.cat(\n                        [negative_prompt_embeds, prompt_embeds_text_only], dim=0\n                    ) if self.do_classifier_free_guidance else prompt_embeds_text_only\n                    add_text_embeds = torch.cat(\n                        [negative_pooled_prompt_embeds, pooled_prompt_embeds_text_only], dim=0\n                        ) if self.do_classifier_free_guidance else pooled_prompt_embeds_text_only\n                else:\n                    current_prompt_embeds = torch.cat(\n                        [negative_prompt_embeds, prompt_embeds], dim=0\n                    ) if self.do_classifier_free_guidance else prompt_embeds\n                    add_text_embeds = torch.cat(\n                        [negative_pooled_prompt_embeds, pooled_prompt_embeds], dim=0\n                        ) if self.do_classifier_free_guidance else pooled_prompt_embeds\n\n                added_cond_kwargs = {\"text_embeds\": add_text_embeds, \"time_ids\": add_time_ids}\n                if ip_adapter_image is not None or ip_adapter_image_embeds is not None:\n                    added_cond_kwargs[\"image_embeds\"] = image_embeds\n\n                # predict the noise residual\n                noise_pred = self.unet(\n                    latent_model_input,\n                    t,\n                    encoder_hidden_states=current_prompt_embeds,\n                    timestep_cond=timestep_cond,\n                    cross_attention_kwargs=self.cross_attention_kwargs,\n                    added_cond_kwargs=added_cond_kwargs,\n                    return_dict=False,\n                )[0]\n\n                # perform guidance\n                if self.do_classifier_free_guidance:\n                    noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                    noise_pred = noise_pred_uncond + self.guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                if self.do_classifier_free_guidance and self.guidance_rescale > 0.0:\n                    # Based on 3.4. in https://arxiv.org/pdf/2305.08891.pdf\n                    noise_pred = rescale_noise_cfg(noise_pred, noise_pred_text, guidance_rescale=self.guidance_rescale)\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents_dtype = latents.dtype\n                latents = self.scheduler.step(noise_pred, t, latents, **extra_step_kwargs, return_dict=False)[0]\n                if latents.dtype != latents_dtype:\n                    if torch.backends.mps.is_available():\n                        # some platforms (eg. apple mps) misbehave due to a pytorch bug: https://github.com/pytorch/pytorch/pull/99272\n                        latents = latents.to(latents_dtype)\n\n                if callback_on_step_end is not None:\n                    callback_kwargs = {}\n                    for k in callback_on_step_end_tensor_inputs:\n                        callback_kwargs[k] = locals()[k]\n                    callback_outputs = callback_on_step_end(self, i, t, callback_kwargs)\n\n                    latents = callback_outputs.pop(\"latents\", latents)\n                    prompt_embeds = callback_outputs.pop(\"prompt_embeds\", prompt_embeds)\n                    negative_prompt_embeds = callback_outputs.pop(\"negative_prompt_embeds\", negative_prompt_embeds)\n                    add_text_embeds = callback_outputs.pop(\"add_text_embeds\", add_text_embeds)\n                    negative_pooled_prompt_embeds = callback_outputs.pop(\n                        \"negative_pooled_prompt_embeds\", negative_pooled_prompt_embeds\n                    )\n                    add_time_ids = callback_outputs.pop(\"add_time_ids\", add_time_ids)\n                    negative_add_time_ids = callback_outputs.pop(\"negative_add_time_ids\", negative_add_time_ids)\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n                    if callback is not None and i % callback_steps == 0:\n                        step_idx = i // getattr(self.scheduler, \"order\", 1)\n                        callback(step_idx, t, latents)\n\n                if XLA_AVAILABLE:\n                    xm.mark_step() # pylint: disable=possibly-used-before-assignment\n\n        if output_type != \"latent\":\n            # make sure the VAE is in float32 mode, as it overflows in float16\n            needs_upcasting = self.vae.dtype == torch.float16 and self.vae.config.force_upcast\n\n            if needs_upcasting:\n                self.upcast_vae()\n                latents = latents.to(next(iter(self.vae.post_quant_conv.parameters())).dtype)\n            elif latents.dtype != self.vae.dtype:\n                if torch.backends.mps.is_available():\n                    # some platforms (eg. apple mps) misbehave due to a pytorch bug: https://github.com/pytorch/pytorch/pull/99272\n                    self.vae = self.vae.to(latents.dtype) # pylint: disable=attribute-defined-outside-init\n\n            # unscale/denormalize the latents\n            # denormalize with the mean and std if available and not None\n            has_latents_mean = hasattr(self.vae.config, \"latents_mean\") and self.vae.config.latents_mean is not None\n            has_latents_std = hasattr(self.vae.config, \"latents_std\") and self.vae.config.latents_std is not None\n            if has_latents_mean and has_latents_std:\n                latents_mean = (\n                    torch.tensor(self.vae.config.latents_mean).view(1, 4, 1, 1).to(latents.device, latents.dtype)\n                )\n                latents_std = (\n                    torch.tensor(self.vae.config.latents_std).view(1, 4, 1, 1).to(latents.device, latents.dtype)\n                )\n                latents = latents * latents_std / self.vae.config.scaling_factor + latents_mean\n            else:\n                latents = latents / self.vae.config.scaling_factor\n\n            image = self.vae.decode(latents, return_dict=False)[0]\n\n            # cast back to fp16 if needed\n            if needs_upcasting:\n                self.vae.to(dtype=torch.float16)\n        else:\n            image = latents\n            return StableDiffusionXLPipelineOutput(images=image)\n\n        # apply watermark if available\n        # if self.watermark is not None:\n        #     image = self.watermark.apply_watermark(image)\n\n        image = self.image_processor.postprocess(image, output_type=output_type)\n\n        # Offload all models\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return (image,)\n\n        return StableDiffusionXLPipelineOutput(images=image)\n"
  },
  {
    "path": "modules/face/reswapper.py",
    "content": "from typing import List\nimport os\nimport cv2\nimport torch\nimport numpy as np\nimport huggingface_hub as hf\nfrom PIL import Image\nfrom modules import processing, shared, devices\n\nRESWAPPER_REPO = 'somanchiu/reswapper'\nRESWAPPER_MODELS = {\n    \"ReSwapper 256 0.2\": \"reswapper_256-1567500.pth\",\n    \"ReSwapper 256 0.1\": \"reswapper_256-1399500.pth\",\n    \"ReSwapper 128 0.2\": \"reswapper-429500.pth\",\n    \"ReSwapper 128 0.1\": \"reswapper-1019500.pth\",\n}\nreswapper_model = None\nreswapper_name = None\ndebug = shared.log.trace if os.environ.get(\"SD_FACE_DEBUG\", None) is not None else lambda *args, **kwargs: None\ndtype = devices.dtype\n\ndef get_model(model_name: str):\n    global reswapper_model, reswapper_name # pylint: disable=global-statement\n    if reswapper_model is None or reswapper_name != model_name:\n        try:\n            fn = RESWAPPER_MODELS.get(model_name)\n            url = hf.hf_hub_download(repo_id=RESWAPPER_REPO, filename=fn, repo_type=\"model\", cache_dir=shared.opts.hfcache_dir)\n            from modules.face.reswapper_model import ReSwapperModel\n            reswapper_model = ReSwapperModel()\n            reswapper_model.load_state_dict(torch.load(url, map_location='cpu'), strict=False)\n            reswapper_model = reswapper_model.to(device=devices.device, dtype=dtype)\n            reswapper_model.eval()\n            reswapper_name = model_name\n            shared.log.info(f'ReSwapper: model=\"{model_name}\" url=\"{url}\" cls={reswapper_model.__class__.__name__}')\n            if reswapper_model is None:\n                shared.log.error(f'ReSwapper: model=\"{model_name}\" fn=\"{fn}\" url=\"{url}\" failed to load model')\n            return reswapper_model\n        except Exception as e:\n            shared.log.error(f'ReSwapper: model=\"{model_name}\" fn=\"{fn}\" url=\"{url}\" {e}')\n    return reswapper_model\n\n\ndef reswapper(\n    p: processing.StableDiffusionProcessing,\n    app,\n    source_images: List[Image.Image],\n    target_images: List[Image.Image],\n    model_name: str,\n    original: bool,\n):\n    from modules.face import reswapper_utils as utils\n    if source_images is None or len(source_images) == 0:\n        shared.log.warning('ReSwapper: no input images')\n        return None\n\n    processed_images = []\n    if original:\n        processed_images += source_images\n\n    model = get_model(model_name)\n    if model is None:\n        return source_images\n    model = model.to(device=devices.device)\n\n    i = 0\n    for x, image in enumerate(source_images):\n        image = image.convert('RGB')\n        source_np = cv2.cvtColor(np.array(image), cv2.COLOR_RGB2BGR)\n        source_faces = app.get(source_np)\n        if len(source_faces) == 0:\n            shared.log.error(f\"ReSwapper: image={x+1} no source faces found\")\n            return source_images\n        if len(source_faces) != len(target_images):\n            shared.log.warning(f\"ReSwapper: image={x+1} source-faces={len(source_faces)} target-images={len(target_images)}\")\n        for y, source_face in enumerate(source_faces):\n            target_image = target_images[y] if y < len(target_images) else target_images[-1]\n            target_image = target_image.convert('RGB')\n            target_np = cv2.cvtColor(np.array(target_image), cv2.COLOR_RGB2BGR)\n            target_faces = app.get(target_np)\n            if len(target_faces) != 1:\n                shared.log.error(f\"ReSwapper: image={x+1} source-faces={y+1} target-faces={len(target_faces)} must be exactly one\")\n                return source_images\n            target_face = target_faces[0]\n            source_str = f'score:{source_face.det_score:.2f} gender:{\"female\" if source_face.gender==0 else \"male\"} age:{source_face.age}'\n            target_str = f'score:{target_face.det_score:.2f} gender:{\"female\" if target_face.gender==0 else \"male\"} age:{target_face.age}'\n            shared.log.debug(f'ReSwapper image={x+1} face={y+1} source=\"{source_str}\" target=\"{target_str}\"')\n\n            source_latent = utils.getLatent(source_face)\n            source_tensor = torch.from_numpy(source_latent).to(device=devices.device, dtype=dtype)\n\n            resolution = 256 if '256' in model_name else 128\n            target_np = cv2.cvtColor(np.array(target_image), cv2.COLOR_RGB2BGR)\n            target_aligned, M = utils.norm_crop2(target_np, target_face.kps, resolution)\n            target_blob = utils.getBlob(target_aligned, (resolution, resolution))\n            target_tensor = torch.from_numpy(target_blob).to(device=devices.device, dtype=dtype)\n\n            with devices.inference_context():\n                swapped_tensor = model(target_tensor, source_tensor)\n                swapped_tensor = swapped_tensor.float()\n\n            swapped_face = (swapped_tensor.squeeze().permute(1, 2, 0).cpu().detach().numpy() * 255).astype(np.uint8)\n            swapped_face = cv2.cvtColor(swapped_face, cv2.COLOR_RGB2BGR)\n            swapped_np = utils.blend_swapped_image(swapped_face, source_np, M)\n            swapped_image = Image.fromarray(cv2.cvtColor(swapped_np, cv2.COLOR_BGR2RGB))\n            processed_images.append(swapped_image)\n            i += 1\n\n    p.extra_generation_params['ReSwapper'] = f'faces={i}'\n    devices.torch_gc()\n\n    return processed_images\n"
  },
  {
    "path": "modules/face/reswapper_model.py",
    "content": "# original: <https://github.com/somanchiu/ReSwapper/blob/main/StyleTransferModel_128.py>\n\nimport torch\nimport torch.nn as nn\nimport torch.nn.functional as F\n\nclass ReSwapperModel(nn.Module):\n    def __init__(self):\n        super(ReSwapperModel, self).__init__()\n\n        # self.pad = nn.ReflectionPad2d(3)\n        # Encoder for target face\n        self.target_encoder = nn.Sequential(\n            # self.pad,\n            nn.Conv2d(3, 128, kernel_size=7, stride=1, padding=0),\n            nn.LeakyReLU(0.2),\n            nn.Conv2d(128, 256, kernel_size=3, stride=1, padding=1),\n            nn.LeakyReLU(0.2),\n            nn.Conv2d(256, 512, kernel_size=3, stride=2, padding=1),\n            nn.LeakyReLU(0.2),\n            nn.Conv2d(512, 1024, kernel_size=3, stride=2, padding=1),\n            nn.LeakyReLU(0.2),\n        )\n\n        # for style_block in self.target_encoder:\n        #     for param in style_block.parameters():\n        #         param.requires_grad = False\n\n        # Style blocks\n        self.style_blocks = nn.ModuleList([\n            StyleBlock(1024, 1024, blockIndex) for blockIndex in range(6)\n        ])\n\n        # Decoder (upsampling)\n        self.decoder = nn.Sequential(\n            nn.Conv2d(1024, 512, kernel_size=3, stride=1, padding=1),\n            nn.LeakyReLU(0.2)\n        )\n\n        self.decoderPart1 = nn.Sequential(\n            nn.Conv2d(512, 256, kernel_size=3, stride=1, padding=1),\n            nn.LeakyReLU(0.2),\n            nn.Conv2d(256, 128, kernel_size=3, stride=1, padding=1),\n            nn.LeakyReLU(0.2)\n        )\n\n        self.decoderPart2 = nn.Sequential(\n            # self.pad,\n            nn.Conv2d(128, 3, kernel_size=7, stride=1, padding=0),\n            nn.Tanh()\n        )\n\n    def forward(self, target, source):\n        # Encode target face\n        target = F.pad(target, pad=(3, 3, 3, 3), mode='reflect')\n\n        target_features = self.target_encoder(target)\n\n        # Apply style blocks\n        x = target_features\n        for style_block in self.style_blocks:\n            x = style_block(x, source)\n\n        # Decode\n        # x = F.interpolate(x, scale_factor=2, mode='linear')\n        x = F.upsample(\n            x,\n            scale_factor=2,  # specify the desired height and width\n            mode='bilinear',  # 'linear' in 2D is called 'bilinear'\n            align_corners=False  # this is typically False for ONNX compatibility\n        )\n        output = self.decoder(x)\n\n        output = F.upsample(\n            output,\n            scale_factor=2,  # specify the desired height and width\n            mode='bilinear',  # 'linear' in 2D is called 'bilinear'\n            align_corners=False  # this is typically False for ONNX compatibility\n        )\n        output = self.decoderPart1(output)\n\n        output = F.pad(output, pad=(3, 3, 3, 3), mode='reflect')\n\n        output = self.decoderPart2(output)\n\n        return (output + 1) / 2\n\nclass StyleBlock(nn.Module):\n    def __init__(self, in_channels, out_channels, blockIndex):\n        super(StyleBlock, self).__init__()\n        self.conv1 = nn.Conv2d(in_channels, out_channels, kernel_size=3, padding=0)\n        self.conv2 = nn.Conv2d(in_channels, out_channels, kernel_size=3, padding=0)\n        self.style1 = nn.Linear(512, 2048)\n        self.style2 = nn.Linear(512, 2048)\n        self.style = [self.style1, self.style2]\n\n        self.blockIndex = blockIndex\n\n    def normalizeConvRMS(self, conv):\n        x = conv - torch.mean(conv, dim=[2, 3], keepdim=True) # centeredConv\n        squareX = x * x\n        meanSquaredX = torch.mean(squareX, dim=[2, 3], keepdim=True)\n        rms = torch.sqrt(meanSquaredX + 0.00000001)\n        return (1 / rms) * x\n\n    def forward(self, residual, style):\n        # print(f'Forward: {self.blockIndex}')\n        style1024 = []\n        for index in range(2):\n            style1 = self.style[index](style)\n            style1 = torch.unsqueeze(style1, 2)\n            style1 = torch.unsqueeze(style1, 3)\n            first_half = style1[:, :1024, :, :]\n            second_half = style1[:, 1024:, :, :]\n\n            style1024.append([first_half, second_half])\n\n        conv1 = self.normalizeConvRMS(self.conv1(F.pad(residual, pad=(1, 1, 1, 1), mode='reflect')))\n\n        out = F.relu(conv1 * style1024[0][0] + style1024[0][1])\n\n        out = F.pad(out, pad=(1, 1, 1, 1), mode='reflect')\n\n        conv2 = self.normalizeConvRMS(self.conv2(out))\n        out = conv2 * style1024[1][0] + style1024[1][1]\n\n        return residual + out\n"
  },
  {
    "path": "modules/face/reswapper_utils.py",
    "content": "# https://github.com/somanchiu/ReSwapper/blob/GAN/Image.py\nimport cv2\nimport numpy as np\n\n\ninput_std = 255.0\ninput_mean = 0.0\n\n\ndef get_emap():\n    emap = np.load(\"modules/face/reswapper_emap.npy\") # https://github.com/somanchiu/ReSwapper/blob/GAN/emap.npy\n    return emap\n\n\ndef postprocess_face(face_tensor):\n    face_tensor = face_tensor.squeeze().cpu().detach()\n    face_np = (face_tensor.permute(1, 2, 0).numpy() * 255).astype(np.uint8)\n    face_np = cv2.cvtColor(face_np, cv2.COLOR_RGB2BGR)\n    return face_np\n\ndef getBlob(aimg, input_size = (128, 128)):\n    blob = cv2.dnn.blobFromImage(aimg, 1.0 / input_std, input_size, (input_mean, input_mean, input_mean), swapRB=True)\n    return blob\n\n\ndef getLatent(source_face):\n    latent = source_face.normed_embedding.reshape((1,-1))\n    emap = get_emap()\n    latent = np.dot(latent, emap)\n    latent /= np.linalg.norm(latent)\n    return latent\n\n\ndef blend_swapped_image(swapped_face, target_image, M):\n    h, w = target_image.shape[:2]\n    M_inv = cv2.invertAffineTransform(M)\n    warped_face = cv2.warpAffine(swapped_face, M_inv, (w, h),borderValue=0.0)\n    img_white = np.full((swapped_face.shape[0], swapped_face.shape[1]), 255, dtype=np.float32)\n    img_mask = cv2.warpAffine(img_white, M_inv, (w, h), borderValue=0.0)\n    img_mask[img_mask > 20] = 255 # pylint: disable=unsupported-assignment-operation\n    mask_h_inds, mask_w_inds = np.where(img_mask == 255)\n    if len(mask_h_inds) > 0 and len(mask_w_inds) > 0:  # safety check\n        mask_h = np.max(mask_h_inds) - np.min(mask_h_inds)\n        mask_w = np.max(mask_w_inds) - np.min(mask_w_inds)\n        mask_size = int(np.sqrt(mask_h * mask_w))\n        k = max(mask_size // 10, 10)\n        kernel = np.ones((k, k), np.uint8)\n        img_mask = cv2.erode(img_mask, kernel, iterations=1)\n        k = max(mask_size // 20, 5)\n        kernel_size = (k, k)\n        blur_size = tuple(2 * i + 1 for i in kernel_size)\n        img_mask = cv2.GaussianBlur(img_mask, blur_size, 0)\n    img_mask = img_mask / 255.0\n    img_mask = np.reshape(img_mask, [img_mask.shape[0], img_mask.shape[1], 1])\n    result = img_mask * warped_face + (1 - img_mask) * target_image.astype(np.float32)\n    result = result.astype(np.uint8)\n    return result\n\n\ndef drawKeypoints(image, keypoints, colorBGR, keypointsRadius=2):\n    for kp in keypoints:\n        x, y = int(kp[0]), int(kp[1])\n        cv2.circle(image, (x, y), radius=keypointsRadius, color=colorBGR, thickness=-1) # BGR format, -1 means filled circle\n\n\n### https://github.com/somanchiu/ReSwapper/blob/GAN/face_align.py\n\narcface_dst = np.array(\n    [[38.2946, 51.6963], [73.5318, 51.5014], [56.0252, 71.7366],\n     [41.5493, 92.3655], [70.7299, 92.2041]],\n    dtype=np.float32)\n\n\ndef estimate_norm(lmk, image_size=112,mode='arcface'): # pylint: disable=unused-argument\n    from skimage import transform as trans\n    if image_size%112==0:\n        ratio = float(image_size)/112.0\n        diff_x = 0\n    else:\n        ratio = float(image_size)/128.0\n        diff_x = 8.0*ratio\n    ratio = float(image_size)/112.0\n    diff_x = 0\n    dst = arcface_dst * ratio\n    dst[:,0] += diff_x\n    if image_size%112==0:\n        ratio = float(image_size)/112.0\n        diff_x = 0\n    else:\n        ratio = float(image_size)/128.0\n        diff_x = 8.0*ratio\n    dst = arcface_dst * ratio\n    dst[:,0] += diff_x\n    tform = trans.SimilarityTransform()\n    tform.estimate(lmk, dst)\n    M = tform.params[0:2, :]\n    return M\n\n\ndef norm_crop(img, landmark, image_size=112, mode='arcface'):\n    M = estimate_norm(landmark, image_size, mode)\n    warped = cv2.warpAffine(img, M, (image_size, image_size), borderValue=0.0)\n    return warped\n\n\ndef norm_crop2(img, landmark, image_size=112, mode='arcface'):\n    M = estimate_norm(landmark, image_size, mode)\n    warped = cv2.warpAffine(img, M, (image_size, image_size), borderValue=0.0)\n    return warped, M\n\n\ndef square_crop(im, S):\n    if im.shape[0] > im.shape[1]:\n        height = S\n        width = int(float(im.shape[1]) / im.shape[0] * S)\n        scale = float(S) / im.shape[0]\n    else:\n        width = S\n        height = int(float(im.shape[0]) / im.shape[1] * S)\n        scale = float(S) / im.shape[1]\n    resized_im = cv2.resize(im, (width, height))\n    det_im = np.zeros((S, S, 3), dtype=np.uint8)\n    det_im[:resized_im.shape[0], :resized_im.shape[1], :] = resized_im\n    return det_im, scale\n\n\ndef transform(data, center, output_size, scale, rotation):\n    from skimage import transform as trans\n    scale_ratio = scale\n    rot = float(rotation) * np.pi / 180.0\n    t1 = trans.SimilarityTransform(scale=scale_ratio)\n    cx = center[0] * scale_ratio\n    cy = center[1] * scale_ratio\n    t2 = trans.SimilarityTransform(translation=(-1 * cx, -1 * cy))\n    t3 = trans.SimilarityTransform(rotation=rot)\n    t4 = trans.SimilarityTransform(translation=(output_size / 2, output_size / 2))\n    t = t1 + t2 + t3 + t4\n    M = t.params[0:2]\n    cropped = cv2.warpAffine(data, M, (output_size, output_size), borderValue=0.0)\n    return cropped, M\n\n\ndef trans_points2d(pts, M):\n    new_pts = np.zeros(shape=pts.shape, dtype=np.float32)\n    for i in range(pts.shape[0]):\n        pt = pts[i]\n        new_pt = np.array([pt[0], pt[1], 1.], dtype=np.float32)\n        new_pt = np.dot(M, new_pt)\n        new_pts[i] = new_pt[0:2]\n    return new_pts\n\n\ndef trans_points3d(pts, M):\n    scale = np.sqrt(M[0][0] * M[0][0] + M[0][1] * M[0][1])\n    #print(scale)\n    new_pts = np.zeros(shape=pts.shape, dtype=np.float32)\n    for i in range(pts.shape[0]):\n        pt = pts[i]\n        new_pt = np.array([pt[0], pt[1], 1.], dtype=np.float32)\n        new_pt = np.dot(M, new_pt)\n        #print('new_pt', new_pt.shape, new_pt)\n        new_pts[i][0:2] = new_pt[0:2]\n        new_pts[i][2] = pts[i][2] * scale\n    return new_pts\n\n\ndef trans_points(pts, M):\n    if pts.shape[1] == 2:\n        return trans_points2d(pts, M)\n    else:\n        return trans_points3d(pts, M)\n"
  },
  {
    "path": "modules/face_restoration.py",
    "content": "from modules import shared\n\n\nclass FaceRestoration:\n    def name(self):\n        return \"None\"\n\n    def restore(self, np_image):\n        return np_image\n\n\ndef restore_faces(np_image, p=None):\n    face_restorers = [x for x in shared.face_restorers if x.name() == shared.opts.face_restoration_model or shared.opts.face_restoration_model is None]\n    if len(face_restorers) == 0:\n        return np_image\n    face_restorer = face_restorers[0]\n    return face_restorer.restore(np_image, p)\n"
  },
  {
    "path": "modules/facelib/__init__.py",
    "content": ""
  },
  {
    "path": "modules/facelib/detection/__init__.py",
    "content": "import os\nfrom copy import deepcopy\nimport torch\nfrom torch import nn\nfrom ..utils import load_file_from_url\nfrom ..utils import download_pretrained_models\nfrom ..detection.yolov5face.models.common import Conv\nfrom .retinaface.retinaface import RetinaFace\nfrom .yolov5face.face_detector import YoloDetector\nfrom modules import paths\n\n\nmodel_dir = os.path.join(paths.models_path, 'Codeformer')\n\n\ndef init_detection_model(model_name, half=False, device='cuda'):\n    if 'retinaface' in model_name:\n        model = init_retinaface_model(model_name, half, device)\n    elif 'YOLOv5' in model_name:\n        model = init_yolov5face_model(model_name, device)\n    else:\n        raise NotImplementedError(f'{model_name} is not implemented.')\n\n    return model\n\n\ndef init_retinaface_model(model_name, half=False, device='cuda'):\n    if model_name == 'retinaface_resnet50':\n        model = RetinaFace(network_name='resnet50', half=half)\n        model_url = 'https://github.com/sczhou/CodeFormer/releases/download/v0.1.0/detection_Resnet50_Final.pth'\n    elif model_name == 'retinaface_mobile0.25':\n        model = RetinaFace(network_name='mobile0.25', half=half)\n        model_url = 'https://github.com/sczhou/CodeFormer/releases/download/v0.1.0/detection_mobilenet0.25_Final.pth'\n    else:\n        raise NotImplementedError(f'{model_name} is not implemented.')\n\n    model_path = load_file_from_url(url=model_url, model_dir=model_dir, progress=True, file_name=None)\n    load_net = torch.load(model_path, map_location=lambda storage, loc: storage)\n    # remove unnecessary 'module.'\n    for k, v in deepcopy(load_net).items():\n        if k.startswith('module.'):\n            load_net[k[7:]] = v\n            load_net.pop(k)\n    model.load_state_dict(load_net, strict=True)\n    model.eval()\n    model = model.to(device)\n\n    return model\n\n\ndef init_yolov5face_model(model_name, device='cuda'):\n    if model_name == 'YOLOv5l':\n        model = YoloDetector(config_name='facelib/detection/yolov5face/models/yolov5l.yaml', device=device)\n        model_url = 'https://github.com/sczhou/CodeFormer/releases/download/v0.1.0/yolov5l-face.pth'\n    elif model_name == 'YOLOv5n':\n        model = YoloDetector(config_name='facelib/detection/yolov5face/models/yolov5n.yaml', device=device)\n        model_url = 'https://github.com/sczhou/CodeFormer/releases/download/v0.1.0/yolov5n-face.pth'\n    else:\n        raise NotImplementedError(f'{model_name} is not implemented.')\n\n    model_path = load_file_from_url(url=model_url, model_dir=model_dir, progress=True, file_name=None)\n    load_net = torch.load(model_path, map_location=lambda storage, loc: storage)\n    model.detector.load_state_dict(load_net, strict=True)\n    model.detector.eval()\n    model.detector = model.detector.to(device).float()\n\n    for m in model.detector.modules():\n        if type(m) in [nn.Hardswish, nn.LeakyReLU, nn.ReLU, nn.ReLU6, nn.SiLU]:\n            m.inplace = True  # pytorch 1.7.0 compatibility\n        elif isinstance(m, Conv):\n            m._non_persistent_buffers_set = set()  # pytorch 1.6.0 compatibility\n\n    return model\n"
  },
  {
    "path": "modules/facelib/detection/align_trans.py",
    "content": "import cv2\nimport numpy as np\n\nfrom .matlab_cp2tform import get_similarity_transform_for_cv2\n\n# reference facial points, a list of coordinates (x,y)\nREFERENCE_FACIAL_POINTS = [[30.29459953, 51.69630051], [65.53179932, 51.50139999], [48.02519989, 71.73660278],\n                           [33.54930115, 92.3655014], [62.72990036, 92.20410156]]\n\nDEFAULT_CROP_SIZE = (96, 112)\n\n\nclass FaceWarpException(Exception):\n\n    def __str__(self):\n        return 'In File {}:{}'.format(__file__, super.__str__(self))\n\n\ndef get_reference_facial_points(output_size=None, inner_padding_factor=0.0, outer_padding=(0, 0), default_square=False):\n    \"\"\"\n    Function:\n    ----------\n        get reference 5 key points according to crop settings:\n        0. Set default crop_size:\n            if default_square:\n                crop_size = (112, 112)\n            else:\n                crop_size = (96, 112)\n        1. Pad the crop_size by inner_padding_factor in each side;\n        2. Resize crop_size into (output_size - outer_padding*2),\n            pad into output_size with outer_padding;\n        3. Output reference_5point;\n    Parameters:\n    ----------\n        @output_size: (w, h) or None\n            size of aligned face image\n        @inner_padding_factor: (w_factor, h_factor)\n            padding factor for inner (w, h)\n        @outer_padding: (w_pad, h_pad)\n            each row is a pair of coordinates (x, y)\n        @default_square: True or False\n            if True:\n                default crop_size = (112, 112)\n            else:\n                default crop_size = (96, 112);\n        !!! make sure, if output_size is not None:\n                (output_size - outer_padding)\n                = some_scale * (default crop_size * (1.0 +\n                inner_padding_factor))\n    Returns:\n    ----------\n        @reference_5point: 5x2 np.array\n            each row is a pair of transformed coordinates (x, y)\n    \"\"\"\n\n    tmp_5pts = np.array(REFERENCE_FACIAL_POINTS)\n    tmp_crop_size = np.array(DEFAULT_CROP_SIZE)\n\n    # 0) make the inner region a square\n    if default_square:\n        size_diff = max(tmp_crop_size) - tmp_crop_size\n        tmp_5pts += size_diff / 2\n        tmp_crop_size += size_diff\n\n    if (output_size and output_size[0] == tmp_crop_size[0] and output_size[1] == tmp_crop_size[1]):\n\n        return tmp_5pts\n\n    if (inner_padding_factor == 0 and outer_padding == (0, 0)):\n        if output_size is None:\n            return tmp_5pts\n        else:\n            raise FaceWarpException('No paddings to do, output_size must be None or {}'.format(tmp_crop_size))\n\n    # check output size\n    if not (0 <= inner_padding_factor <= 1.0):\n        raise FaceWarpException('Not (0 <= inner_padding_factor <= 1.0)')\n\n    if ((inner_padding_factor > 0 or outer_padding[0] > 0 or outer_padding[1] > 0) and output_size is None):\n        output_size = tmp_crop_size * \\\n            (1 + inner_padding_factor * 2).astype(np.int32)\n        output_size += np.array(outer_padding)\n    if not (outer_padding[0] < output_size[0] and outer_padding[1] < output_size[1]):\n        raise FaceWarpException('Not (outer_padding[0] < output_size[0] and outer_padding[1] < output_size[1])')\n\n    # 1) pad the inner region according inner_padding_factor\n    if inner_padding_factor > 0:\n        size_diff = tmp_crop_size * inner_padding_factor * 2\n        tmp_5pts += size_diff / 2\n        tmp_crop_size += np.round(size_diff).astype(np.int32)\n\n    # 2) resize the padded inner region\n    size_bf_outer_pad = np.array(output_size) - np.array(outer_padding) * 2\n\n    if size_bf_outer_pad[0] * tmp_crop_size[1] != size_bf_outer_pad[1] * tmp_crop_size[0]:\n        raise FaceWarpException('Must have (output_size - outer_padding)'\n                                '= some_scale * (crop_size * (1.0 + inner_padding_factor)')\n\n    scale_factor = size_bf_outer_pad[0].astype(np.float32) / tmp_crop_size[0]\n    tmp_5pts = tmp_5pts * scale_factor\n    #    size_diff = tmp_crop_size * (scale_factor - min(scale_factor))\n    #    tmp_5pts = tmp_5pts + size_diff / 2\n    tmp_crop_size = size_bf_outer_pad\n\n    # 3) add outer_padding to make output_size\n    reference_5point = tmp_5pts + np.array(outer_padding)\n    tmp_crop_size = output_size\n\n    return reference_5point\n\n\ndef get_affine_transform_matrix(src_pts, dst_pts):\n    \"\"\"\n    Function:\n    ----------\n        get affine transform matrix 'tfm' from src_pts to dst_pts\n    Parameters:\n    ----------\n        @src_pts: Kx2 np.array\n            source points matrix, each row is a pair of coordinates (x, y)\n        @dst_pts: Kx2 np.array\n            destination points matrix, each row is a pair of coordinates (x, y)\n    Returns:\n    ----------\n        @tfm: 2x3 np.array\n            transform matrix from src_pts to dst_pts\n    \"\"\"\n\n    tfm = np.float32([[1, 0, 0], [0, 1, 0]])\n    n_pts = src_pts.shape[0]\n    ones = np.ones((n_pts, 1), src_pts.dtype)\n    src_pts_ = np.hstack([src_pts, ones])\n    dst_pts_ = np.hstack([dst_pts, ones])\n\n    A, res, rank, s = np.linalg.lstsq(src_pts_, dst_pts_)\n\n    if rank == 3:\n        tfm = np.float32([[A[0, 0], A[1, 0], A[2, 0]], [A[0, 1], A[1, 1], A[2, 1]]])\n    elif rank == 2:\n        tfm = np.float32([[A[0, 0], A[1, 0], 0], [A[0, 1], A[1, 1], 0]])\n\n    return tfm\n\n\ndef warp_and_crop_face(src_img, facial_pts, reference_pts=None, crop_size=(96, 112), align_type='smilarity'):\n    \"\"\"\n    Function:\n    ----------\n        apply affine transform 'trans' to uv\n    Parameters:\n    ----------\n        @src_img: 3x3 np.array\n            input image\n        @facial_pts: could be\n            1)a list of K coordinates (x,y)\n        or\n            2) Kx2 or 2xK np.array\n            each row or col is a pair of coordinates (x, y)\n        @reference_pts: could be\n            1) a list of K coordinates (x,y)\n        or\n            2) Kx2 or 2xK np.array\n            each row or col is a pair of coordinates (x, y)\n        or\n            3) None\n            if None, use default reference facial points\n        @crop_size: (w, h)\n            output face image size\n        @align_type: transform type, could be one of\n            1) 'similarity': use similarity transform\n            2) 'cv2_affine': use the first 3 points to do affine transform,\n                    by calling cv2.getAffineTransform()\n            3) 'affine': use all points to do affine transform\n    Returns:\n    ----------\n        @face_img: output face image with size (w, h) = @crop_size\n    \"\"\"\n\n    if reference_pts is None:\n        if crop_size[0] == 96 and crop_size[1] == 112:\n            reference_pts = REFERENCE_FACIAL_POINTS\n        else:\n            default_square = False\n            inner_padding_factor = 0\n            outer_padding = (0, 0)\n            output_size = crop_size\n\n            reference_pts = get_reference_facial_points(output_size, inner_padding_factor, outer_padding,\n                                                        default_square)\n\n    ref_pts = np.float32(reference_pts)\n    ref_pts_shp = ref_pts.shape\n    if max(ref_pts_shp) < 3 or min(ref_pts_shp) != 2:\n        raise FaceWarpException('reference_pts.shape must be (K,2) or (2,K) and K>2')\n\n    if ref_pts_shp[0] == 2:\n        ref_pts = ref_pts.T\n\n    src_pts = np.float32(facial_pts)\n    src_pts_shp = src_pts.shape\n    if max(src_pts_shp) < 3 or min(src_pts_shp) != 2:\n        raise FaceWarpException('facial_pts.shape must be (K,2) or (2,K) and K>2')\n\n    if src_pts_shp[0] == 2:\n        src_pts = src_pts.T\n\n    if src_pts.shape != ref_pts.shape:\n        raise FaceWarpException('facial_pts and reference_pts must have the same shape')\n\n    if align_type == 'cv2_affine':\n        tfm = cv2.getAffineTransform(src_pts[0:3], ref_pts[0:3])\n    elif align_type == 'affine':\n        tfm = get_affine_transform_matrix(src_pts, ref_pts)\n    else:\n        tfm = get_similarity_transform_for_cv2(src_pts, ref_pts)\n\n    face_img = cv2.warpAffine(src_img, tfm, (crop_size[0], crop_size[1]))\n\n    return face_img\n"
  },
  {
    "path": "modules/facelib/detection/matlab_cp2tform.py",
    "content": "import numpy as np\nfrom numpy.linalg import inv, lstsq\nfrom numpy.linalg import matrix_rank as rank\nfrom numpy.linalg import norm\n\n\nclass MatlabCp2tormException(Exception):\n\n    def __str__(self):\n        return 'In File {}:{}'.format(__file__, super.__str__(self))\n\n\ndef tformfwd(trans, uv):\n    \"\"\"\n    Function:\n    ----------\n        apply affine transform 'trans' to uv\n\n    Parameters:\n    ----------\n        @trans: 3x3 np.array\n            transform matrix\n        @uv: Kx2 np.array\n            each row is a pair of coordinates (x, y)\n\n    Returns:\n    ----------\n        @xy: Kx2 np.array\n            each row is a pair of transformed coordinates (x, y)\n    \"\"\"\n    uv = np.hstack((uv, np.ones((uv.shape[0], 1))))\n    xy = np.dot(uv, trans)\n    xy = xy[:, 0:-1]\n    return xy\n\n\ndef tforminv(trans, uv):\n    \"\"\"\n    Function:\n    ----------\n        apply the inverse of affine transform 'trans' to uv\n\n    Parameters:\n    ----------\n        @trans: 3x3 np.array\n            transform matrix\n        @uv: Kx2 np.array\n            each row is a pair of coordinates (x, y)\n\n    Returns:\n    ----------\n        @xy: Kx2 np.array\n            each row is a pair of inverse-transformed coordinates (x, y)\n    \"\"\"\n    Tinv = inv(trans)\n    xy = tformfwd(Tinv, uv)\n    return xy\n\n\ndef findNonreflectiveSimilarity(uv, xy, options=None):\n    options = {'K': 2}\n\n    K = options['K']\n    M = xy.shape[0]\n    x = xy[:, 0].reshape((-1, 1))  # use reshape to keep a column vector\n    y = xy[:, 1].reshape((-1, 1))  # use reshape to keep a column vector\n\n    tmp1 = np.hstack((x, y, np.ones((M, 1)), np.zeros((M, 1))))\n    tmp2 = np.hstack((y, -x, np.zeros((M, 1)), np.ones((M, 1))))\n    X = np.vstack((tmp1, tmp2))\n\n    u = uv[:, 0].reshape((-1, 1))  # use reshape to keep a column vector\n    v = uv[:, 1].reshape((-1, 1))  # use reshape to keep a column vector\n    U = np.vstack((u, v))\n\n    # We know that X * r = U\n    if rank(X) >= 2 * K:\n        r, _, _, _ = lstsq(X, U, rcond=-1)\n        r = np.squeeze(r)\n    else:\n        raise Exception('cp2tform:twoUniquePointsReq')\n    sc = r[0]\n    ss = r[1]\n    tx = r[2]\n    ty = r[3]\n\n    Tinv = np.array([[sc, -ss, 0], [ss, sc, 0], [tx, ty, 1]])\n    T = inv(Tinv)\n    T[:, 2] = np.array([0, 0, 1])\n\n    return T, Tinv\n\n\ndef findSimilarity(uv, xy, options=None):\n    options = {'K': 2}\n\n    #    uv = np.array(uv)\n    #    xy = np.array(xy)\n\n    # Solve for trans1\n    trans1, trans1_inv = findNonreflectiveSimilarity(uv, xy, options)\n\n    # Solve for trans2\n\n    # manually reflect the xy data across the Y-axis\n    xyR = xy\n    xyR[:, 0] = -1 * xyR[:, 0]\n\n    trans2r, trans2r_inv = findNonreflectiveSimilarity(uv, xyR, options)\n\n    # manually reflect the tform to undo the reflection done on xyR\n    TreflectY = np.array([[-1, 0, 0], [0, 1, 0], [0, 0, 1]])\n\n    trans2 = np.dot(trans2r, TreflectY)\n\n    # Figure out if trans1 or trans2 is better\n    xy1 = tformfwd(trans1, uv)\n    norm1 = norm(xy1 - xy)\n\n    xy2 = tformfwd(trans2, uv)\n    norm2 = norm(xy2 - xy)\n\n    if norm1 <= norm2:\n        return trans1, trans1_inv\n    else:\n        trans2_inv = inv(trans2)\n        return trans2, trans2_inv\n\n\ndef get_similarity_transform(src_pts, dst_pts, reflective=True):\n    \"\"\"\n    Function:\n    ----------\n        Find Similarity Transform Matrix 'trans':\n            u = src_pts[:, 0]\n            v = src_pts[:, 1]\n            x = dst_pts[:, 0]\n            y = dst_pts[:, 1]\n            [x, y, 1] = [u, v, 1] * trans\n\n    Parameters:\n    ----------\n        @src_pts: Kx2 np.array\n            source points, each row is a pair of coordinates (x, y)\n        @dst_pts: Kx2 np.array\n            destination points, each row is a pair of transformed\n            coordinates (x, y)\n        @reflective: True or False\n            if True:\n                use reflective similarity transform\n            else:\n                use non-reflective similarity transform\n\n    Returns:\n    ----------\n       @trans: 3x3 np.array\n            transform matrix from uv to xy\n        trans_inv: 3x3 np.array\n            inverse of trans, transform matrix from xy to uv\n    \"\"\"\n\n    if reflective:\n        trans, trans_inv = findSimilarity(src_pts, dst_pts)\n    else:\n        trans, trans_inv = findNonreflectiveSimilarity(src_pts, dst_pts)\n\n    return trans, trans_inv\n\n\ndef cvt_tform_mat_for_cv2(trans):\n    \"\"\"\n    Function:\n    ----------\n        Convert Transform Matrix 'trans' into 'cv2_trans' which could be\n        directly used by cv2.warpAffine():\n            u = src_pts[:, 0]\n            v = src_pts[:, 1]\n            x = dst_pts[:, 0]\n            y = dst_pts[:, 1]\n            [x, y].T = cv_trans * [u, v, 1].T\n\n    Parameters:\n    ----------\n        @trans: 3x3 np.array\n            transform matrix from uv to xy\n\n    Returns:\n    ----------\n        @cv2_trans: 2x3 np.array\n            transform matrix from src_pts to dst_pts, could be directly used\n            for cv2.warpAffine()\n    \"\"\"\n    cv2_trans = trans[:, 0:2].T\n\n    return cv2_trans\n\n\ndef get_similarity_transform_for_cv2(src_pts, dst_pts, reflective=True):\n    \"\"\"\n    Function:\n    ----------\n        Find Similarity Transform Matrix 'cv2_trans' which could be\n        directly used by cv2.warpAffine():\n            u = src_pts[:, 0]\n            v = src_pts[:, 1]\n            x = dst_pts[:, 0]\n            y = dst_pts[:, 1]\n            [x, y].T = cv_trans * [u, v, 1].T\n\n    Parameters:\n    ----------\n        @src_pts: Kx2 np.array\n            source points, each row is a pair of coordinates (x, y)\n        @dst_pts: Kx2 np.array\n            destination points, each row is a pair of transformed\n            coordinates (x, y)\n        reflective: True or False\n            if True:\n                use reflective similarity transform\n            else:\n                use non-reflective similarity transform\n\n    Returns:\n    ----------\n        @cv2_trans: 2x3 np.array\n            transform matrix from src_pts to dst_pts, could be directly used\n            for cv2.warpAffine()\n    \"\"\"\n    trans, trans_inv = get_similarity_transform(src_pts, dst_pts, reflective)\n    cv2_trans = cvt_tform_mat_for_cv2(trans)\n\n    return cv2_trans\n\n\nif __name__ == '__main__':\n    \"\"\"\n    u = [0, 6, -2]\n    v = [0, 3, 5]\n    x = [-1, 0, 4]\n    y = [-1, -10, 4]\n\n    # In Matlab, run:\n    #\n    #   uv = [u'; v'];\n    #   xy = [x'; y'];\n    #   tform_sim=cp2tform(uv,xy,'similarity');\n    #\n    #   trans = tform_sim.tdata.T\n    #   ans =\n    #       -0.0764   -1.6190         0\n    #        1.6190   -0.0764         0\n    #       -3.2156    0.0290    1.0000\n    #   trans_inv = tform_sim.tdata.Tinv\n    #    ans =\n    #\n    #       -0.0291    0.6163         0\n    #       -0.6163   -0.0291         0\n    #       -0.0756    1.9826    1.0000\n    #    xy_m=tformfwd(tform_sim, u,v)\n    #\n    #    xy_m =\n    #\n    #       -3.2156    0.0290\n    #        1.1833   -9.9143\n    #        5.0323    2.8853\n    #    uv_m=tforminv(tform_sim, x,y)\n    #\n    #    uv_m =\n    #\n    #        0.5698    1.3953\n    #        6.0872    2.2733\n    #       -2.6570    4.3314\n    \"\"\"\n    u = [0, 6, -2]\n    v = [0, 3, 5]\n    x = [-1, 0, 4]\n    y = [-1, -10, 4]\n\n    uv = np.array((u, v)).T\n    xy = np.array((x, y)).T\n\n    print('\\n--->uv:')\n    print(uv)\n    print('\\n--->xy:')\n    print(xy)\n\n    trans, trans_inv = get_similarity_transform(uv, xy)\n\n    print('\\n--->trans matrix:')\n    print(trans)\n\n    print('\\n--->trans_inv matrix:')\n    print(trans_inv)\n\n    print('\\n---> apply transform to uv')\n    print('\\nxy_m = uv_augmented * trans')\n    uv_aug = np.hstack((uv, np.ones((uv.shape[0], 1))))\n    xy_m = np.dot(uv_aug, trans)\n    print(xy_m)\n\n    print('\\nxy_m = tformfwd(trans, uv)')\n    xy_m = tformfwd(trans, uv)\n    print(xy_m)\n\n    print('\\n---> apply inverse transform to xy')\n    print('\\nuv_m = xy_augmented * trans_inv')\n    xy_aug = np.hstack((xy, np.ones((xy.shape[0], 1))))\n    uv_m = np.dot(xy_aug, trans_inv)\n    print(uv_m)\n\n    print('\\nuv_m = tformfwd(trans_inv, xy)')\n    uv_m = tformfwd(trans_inv, xy)\n    print(uv_m)\n\n    uv_m = tforminv(trans, xy)\n    print('\\nuv_m = tforminv(trans, xy)')\n    print(uv_m)\n"
  },
  {
    "path": "modules/facelib/detection/retinaface/retinaface.py",
    "content": "import cv2\nimport numpy as np\nimport torch\nimport torch.nn as nn\nimport torch.nn.functional as F\nfrom PIL import Image\nfrom torchvision.models._utils import IntermediateLayerGetter as IntermediateLayerGetter\n\nfrom ...detection.align_trans import get_reference_facial_points, warp_and_crop_face\nfrom ...detection.retinaface.retinaface_net import FPN, SSH, MobileNetV1, make_bbox_head, make_class_head, make_landmark_head\nfrom ...detection.retinaface.retinaface_utils import (PriorBox, batched_decode, batched_decode_landm, decode, decode_landm,\n                                                 py_cpu_nms)\n\ndevice = torch.device('cuda' if torch.cuda.is_available() else 'cpu')\n\n\ndef generate_config(network_name):\n\n    cfg_mnet = {\n        'name': 'mobilenet0.25',\n        'min_sizes': [[16, 32], [64, 128], [256, 512]],\n        'steps': [8, 16, 32],\n        'variance': [0.1, 0.2],\n        'clip': False,\n        'loc_weight': 2.0,\n        'gpu_train': True,\n        'batch_size': 32,\n        'ngpu': 1,\n        'epoch': 250,\n        'decay1': 190,\n        'decay2': 220,\n        'image_size': 640,\n        'return_layers': {\n            'stage1': 1,\n            'stage2': 2,\n            'stage3': 3\n        },\n        'in_channel': 32,\n        'out_channel': 64\n    }\n\n    cfg_re50 = {\n        'name': 'Resnet50',\n        'min_sizes': [[16, 32], [64, 128], [256, 512]],\n        'steps': [8, 16, 32],\n        'variance': [0.1, 0.2],\n        'clip': False,\n        'loc_weight': 2.0,\n        'gpu_train': True,\n        'batch_size': 24,\n        'ngpu': 4,\n        'epoch': 100,\n        'decay1': 70,\n        'decay2': 90,\n        'image_size': 840,\n        'return_layers': {\n            'layer2': 1,\n            'layer3': 2,\n            'layer4': 3\n        },\n        'in_channel': 256,\n        'out_channel': 256\n    }\n\n    if network_name == 'mobile0.25':\n        return cfg_mnet\n    elif network_name == 'resnet50':\n        return cfg_re50\n    else:\n        raise NotImplementedError(f'network_name={network_name}')\n\n\nclass RetinaFace(nn.Module):\n\n    def __init__(self, network_name='resnet50', half=False, phase='test'):\n        super(RetinaFace, self).__init__()\n        self.half_inference = half\n        cfg = generate_config(network_name)\n        self.backbone = cfg['name']\n\n        self.model_name = f'retinaface_{network_name}'\n        self.cfg = cfg\n        self.phase = phase\n        self.target_size, self.max_size = 1600, 2150\n        self.resize, self.scale, self.scale1 = 1., None, None\n        self.mean_tensor = torch.tensor([[[[104.]], [[117.]], [[123.]]]]).to(device)\n        self.reference = get_reference_facial_points(default_square=True)\n        # Build network.\n        backbone = None\n        if cfg['name'] == 'mobilenet0.25':\n            backbone = MobileNetV1()\n            self.body = IntermediateLayerGetter(backbone, cfg['return_layers'])\n        elif cfg['name'] == 'Resnet50':\n            import torchvision.models as models\n            backbone = models.resnet50(pretrained=False)\n            self.body = IntermediateLayerGetter(backbone, cfg['return_layers'])\n\n        in_channels_stage2 = cfg['in_channel']\n        in_channels_list = [\n            in_channels_stage2 * 2,\n            in_channels_stage2 * 4,\n            in_channels_stage2 * 8,\n        ]\n\n        out_channels = cfg['out_channel']\n        self.fpn = FPN(in_channels_list, out_channels)\n        self.ssh1 = SSH(out_channels, out_channels)\n        self.ssh2 = SSH(out_channels, out_channels)\n        self.ssh3 = SSH(out_channels, out_channels)\n\n        self.ClassHead = make_class_head(fpn_num=3, inchannels=cfg['out_channel'])\n        self.BboxHead = make_bbox_head(fpn_num=3, inchannels=cfg['out_channel'])\n        self.LandmarkHead = make_landmark_head(fpn_num=3, inchannels=cfg['out_channel'])\n\n        self.to(device)\n        self.eval()\n        if self.half_inference:\n            self.half()\n\n    def forward(self, inputs):\n        out = self.body(inputs)\n\n        if self.backbone == 'mobilenet0.25' or self.backbone == 'Resnet50':\n            out = list(out.values())\n        # FPN\n        fpn = self.fpn(out)\n\n        # SSH\n        feature1 = self.ssh1(fpn[0])\n        feature2 = self.ssh2(fpn[1])\n        feature3 = self.ssh3(fpn[2])\n        features = [feature1, feature2, feature3]\n\n        bbox_regressions = torch.cat([self.BboxHead[i](feature) for i, feature in enumerate(features)], dim=1)\n        classifications = torch.cat([self.ClassHead[i](feature) for i, feature in enumerate(features)], dim=1)\n        tmp = [self.LandmarkHead[i](feature) for i, feature in enumerate(features)]\n        ldm_regressions = (torch.cat(tmp, dim=1))\n\n        if self.phase == 'train':\n            output = (bbox_regressions, classifications, ldm_regressions)\n        else:\n            output = (bbox_regressions, F.softmax(classifications, dim=-1), ldm_regressions)\n        return output\n\n    def __detect_faces(self, inputs):\n        # get scale\n        height, width = inputs.shape[2:]\n        self.scale = torch.tensor([width, height, width, height], dtype=torch.float32).to(device)\n        tmp = [width, height, width, height, width, height, width, height, width, height]\n        self.scale1 = torch.tensor(tmp, dtype=torch.float32).to(device)\n\n        # forawrd\n        inputs = inputs.to(device)\n        if self.half_inference:\n            inputs = inputs.half()\n        loc, conf, landmarks = self(inputs)\n\n        # get priorbox\n        priorbox = PriorBox(self.cfg, image_size=inputs.shape[2:])\n        priors = priorbox.forward().to(device)\n\n        return loc, conf, landmarks, priors\n\n    # single image detection\n    def transform(self, image, use_origin_size):\n        # convert to opencv format\n        if isinstance(image, Image.Image):\n            image = cv2.cvtColor(np.asarray(image), cv2.COLOR_RGB2BGR)\n        image = image.astype(np.float32)\n\n        # testing scale\n        im_size_min = np.min(image.shape[0:2])\n        im_size_max = np.max(image.shape[0:2])\n        resize = float(self.target_size) / float(im_size_min)\n\n        # prevent bigger axis from being more than max_size\n        if np.round(resize * im_size_max) > self.max_size:\n            resize = float(self.max_size) / float(im_size_max)\n        resize = 1 if use_origin_size else resize\n\n        # resize\n        if resize != 1:\n            image = cv2.resize(image, None, None, fx=resize, fy=resize, interpolation=cv2.INTER_LINEAR)\n\n        # convert to torch.tensor format\n        # image -= (104, 117, 123)\n        image = image.transpose(2, 0, 1)\n        image = torch.from_numpy(image).unsqueeze(0)\n\n        return image, resize\n\n    def detect_faces(\n        self,\n        image,\n        conf_threshold=0.8,\n        nms_threshold=0.4,\n        use_origin_size=True,\n    ):\n        \"\"\"\n        Params:\n            imgs: BGR image\n        \"\"\"\n        image, self.resize = self.transform(image, use_origin_size)\n        image = image.to(device)\n        if self.half_inference:\n            image = image.half()\n        image = image - self.mean_tensor\n\n        loc, conf, landmarks, priors = self.__detect_faces(image)\n\n        boxes = decode(loc.data.squeeze(0), priors.data, self.cfg['variance'])\n        boxes = boxes * self.scale / self.resize\n        boxes = boxes.cpu().numpy()\n\n        scores = conf.squeeze(0).data.cpu().numpy()[:, 1]\n\n        landmarks = decode_landm(landmarks.squeeze(0), priors, self.cfg['variance'])\n        landmarks = landmarks * self.scale1 / self.resize\n        landmarks = landmarks.cpu().numpy()\n\n        # ignore low scores\n        inds = np.where(scores > conf_threshold)[0]\n        boxes, landmarks, scores = boxes[inds], landmarks[inds], scores[inds]\n\n        # sort\n        order = scores.argsort()[::-1]\n        boxes, landmarks, scores = boxes[order], landmarks[order], scores[order]\n\n        # do NMS\n        bounding_boxes = np.hstack((boxes, scores[:, np.newaxis])).astype(np.float32, copy=False)\n        keep = py_cpu_nms(bounding_boxes, nms_threshold)\n        bounding_boxes, landmarks = bounding_boxes[keep, :], landmarks[keep]\n        # self.t['forward_pass'].toc()\n        # print(self.t['forward_pass'].average_time)\n        # import sys\n        # sys.stdout.flush()\n        return np.concatenate((bounding_boxes, landmarks), axis=1)\n\n    def __align_multi(self, image, boxes, landmarks, limit=None):\n\n        if len(boxes) < 1:\n            return [], []\n\n        if limit:\n            boxes = boxes[:limit]\n            landmarks = landmarks[:limit]\n\n        faces = []\n        for landmark in landmarks:\n            facial5points = [[landmark[2 * j], landmark[2 * j + 1]] for j in range(5)]\n\n            warped_face = warp_and_crop_face(np.array(image), facial5points, self.reference, crop_size=(112, 112))\n            faces.append(warped_face)\n\n        return np.concatenate((boxes, landmarks), axis=1), faces\n\n    def align_multi(self, img, conf_threshold=0.8, limit=None):\n\n        rlt = self.detect_faces(img, conf_threshold=conf_threshold)\n        boxes, landmarks = rlt[:, 0:5], rlt[:, 5:]\n\n        return self.__align_multi(img, boxes, landmarks, limit)\n\n    # batched detection\n    def batched_transform(self, frames, use_origin_size):\n        \"\"\"\n        Arguments:\n            frames: a list of PIL.Image, or torch.Tensor(shape=[n, h, w, c],\n                type=np.float32, BGR format).\n            use_origin_size: whether to use origin size.\n        \"\"\"\n        from_PIL = True if isinstance(frames[0], Image.Image) else False\n\n        # convert to opencv format\n        if from_PIL:\n            frames = [cv2.cvtColor(np.asarray(frame), cv2.COLOR_RGB2BGR) for frame in frames]\n            frames = np.asarray(frames, dtype=np.float32)\n\n        # testing scale\n        im_size_min = np.min(frames[0].shape[0:2])\n        im_size_max = np.max(frames[0].shape[0:2])\n        resize = float(self.target_size) / float(im_size_min)\n\n        # prevent bigger axis from being more than max_size\n        if np.round(resize * im_size_max) > self.max_size:\n            resize = float(self.max_size) / float(im_size_max)\n        resize = 1 if use_origin_size else resize\n\n        # resize\n        if resize != 1:\n            if not from_PIL:\n                frames = F.interpolate(frames, scale_factor=resize)\n            else:\n                frames = [\n                    cv2.resize(frame, None, None, fx=resize, fy=resize, interpolation=cv2.INTER_LINEAR)\n                    for frame in frames\n                ]\n\n        # convert to torch.tensor format\n        if not from_PIL:\n            frames = frames.transpose(1, 2).transpose(1, 3).contiguous()\n        else:\n            frames = frames.transpose((0, 3, 1, 2))\n            frames = torch.from_numpy(frames)\n\n        return frames, resize\n\n    def batched_detect_faces(self, frames, conf_threshold=0.8, nms_threshold=0.4, use_origin_size=True):\n        \"\"\"\n        Arguments:\n            frames: a list of PIL.Image, or np.array(shape=[n, h, w, c],\n                type=np.uint8, BGR format).\n            conf_threshold: confidence threshold.\n            nms_threshold: nms threshold.\n            use_origin_size: whether to use origin size.\n        Returns:\n            final_bounding_boxes: list of np.array ([n_boxes, 5],\n                type=np.float32).\n            final_landmarks: list of np.array ([n_boxes, 10], type=np.float32).\n        \"\"\"\n        # self.t['forward_pass'].tic()\n        frames, self.resize = self.batched_transform(frames, use_origin_size)\n        frames = frames.to(device)\n        frames = frames - self.mean_tensor\n\n        b_loc, b_conf, b_landmarks, priors = self.__detect_faces(frames)\n\n        final_bounding_boxes, final_landmarks = [], []\n\n        # decode\n        priors = priors.unsqueeze(0)\n        b_loc = batched_decode(b_loc, priors, self.cfg['variance']) * self.scale / self.resize\n        b_landmarks = batched_decode_landm(b_landmarks, priors, self.cfg['variance']) * self.scale1 / self.resize\n        b_conf = b_conf[:, :, 1]\n\n        # index for selection\n        b_indice = b_conf > conf_threshold\n\n        # concat\n        b_loc_and_conf = torch.cat((b_loc, b_conf.unsqueeze(-1)), dim=2).float()\n\n        for pred, landm, inds in zip(b_loc_and_conf, b_landmarks, b_indice):\n\n            # ignore low scores\n            pred, landm = pred[inds, :], landm[inds, :]\n            if pred.shape[0] == 0:\n                final_bounding_boxes.append(np.array([], dtype=np.float32))\n                final_landmarks.append(np.array([], dtype=np.float32))\n                continue\n\n            # sort\n            # order = score.argsort(descending=True)\n            # box, landm, score = box[order], landm[order], score[order]\n\n            # to CPU\n            bounding_boxes, landm = pred.cpu().numpy(), landm.cpu().numpy()\n\n            # NMS\n            keep = py_cpu_nms(bounding_boxes, nms_threshold)\n            bounding_boxes, landmarks = bounding_boxes[keep, :], landm[keep]\n\n            # append\n            final_bounding_boxes.append(bounding_boxes)\n            final_landmarks.append(landmarks)\n        # self.t['forward_pass'].toc(average=True)\n        # self.batch_time += self.t['forward_pass'].diff\n        # self.total_frame += len(frames)\n        # print(self.batch_time / self.total_frame)\n\n        return final_bounding_boxes, final_landmarks\n"
  },
  {
    "path": "modules/facelib/detection/retinaface/retinaface_net.py",
    "content": "import torch\nimport torch.nn as nn\nimport torch.nn.functional as F\n\n\ndef conv_bn(inp, oup, stride=1, leaky=0):\n    return nn.Sequential(\n        nn.Conv2d(inp, oup, 3, stride, 1, bias=False), nn.BatchNorm2d(oup),\n        nn.LeakyReLU(negative_slope=leaky, inplace=True))\n\n\ndef conv_bn_no_relu(inp, oup, stride):\n    return nn.Sequential(\n        nn.Conv2d(inp, oup, 3, stride, 1, bias=False),\n        nn.BatchNorm2d(oup),\n    )\n\n\ndef conv_bn1X1(inp, oup, stride, leaky=0):\n    return nn.Sequential(\n        nn.Conv2d(inp, oup, 1, stride, padding=0, bias=False), nn.BatchNorm2d(oup),\n        nn.LeakyReLU(negative_slope=leaky, inplace=True))\n\n\ndef conv_dw(inp, oup, stride, leaky=0.1):\n    return nn.Sequential(\n        nn.Conv2d(inp, inp, 3, stride, 1, groups=inp, bias=False),\n        nn.BatchNorm2d(inp),\n        nn.LeakyReLU(negative_slope=leaky, inplace=True),\n        nn.Conv2d(inp, oup, 1, 1, 0, bias=False),\n        nn.BatchNorm2d(oup),\n        nn.LeakyReLU(negative_slope=leaky, inplace=True),\n    )\n\n\nclass SSH(nn.Module):\n\n    def __init__(self, in_channel, out_channel):\n        super(SSH, self).__init__()\n        assert out_channel % 4 == 0\n        leaky = 0\n        if (out_channel <= 64):\n            leaky = 0.1\n        self.conv3X3 = conv_bn_no_relu(in_channel, out_channel // 2, stride=1)\n\n        self.conv5X5_1 = conv_bn(in_channel, out_channel // 4, stride=1, leaky=leaky)\n        self.conv5X5_2 = conv_bn_no_relu(out_channel // 4, out_channel // 4, stride=1)\n\n        self.conv7X7_2 = conv_bn(out_channel // 4, out_channel // 4, stride=1, leaky=leaky)\n        self.conv7x7_3 = conv_bn_no_relu(out_channel // 4, out_channel // 4, stride=1)\n\n    def forward(self, input):\n        conv3X3 = self.conv3X3(input)\n\n        conv5X5_1 = self.conv5X5_1(input)\n        conv5X5 = self.conv5X5_2(conv5X5_1)\n\n        conv7X7_2 = self.conv7X7_2(conv5X5_1)\n        conv7X7 = self.conv7x7_3(conv7X7_2)\n\n        out = torch.cat([conv3X3, conv5X5, conv7X7], dim=1)\n        out = F.relu(out)\n        return out\n\n\nclass FPN(nn.Module):\n\n    def __init__(self, in_channels_list, out_channels):\n        super(FPN, self).__init__()\n        leaky = 0\n        if (out_channels <= 64):\n            leaky = 0.1\n        self.output1 = conv_bn1X1(in_channels_list[0], out_channels, stride=1, leaky=leaky)\n        self.output2 = conv_bn1X1(in_channels_list[1], out_channels, stride=1, leaky=leaky)\n        self.output3 = conv_bn1X1(in_channels_list[2], out_channels, stride=1, leaky=leaky)\n\n        self.merge1 = conv_bn(out_channels, out_channels, leaky=leaky)\n        self.merge2 = conv_bn(out_channels, out_channels, leaky=leaky)\n\n    def forward(self, input):\n        # names = list(input.keys())\n        # input = list(input.values())\n\n        output1 = self.output1(input[0])\n        output2 = self.output2(input[1])\n        output3 = self.output3(input[2])\n\n        up3 = F.interpolate(output3, size=[output2.size(2), output2.size(3)], mode='nearest')\n        output2 = output2 + up3\n        output2 = self.merge2(output2)\n\n        up2 = F.interpolate(output2, size=[output1.size(2), output1.size(3)], mode='nearest')\n        output1 = output1 + up2\n        output1 = self.merge1(output1)\n\n        out = [output1, output2, output3]\n        return out\n\n\nclass MobileNetV1(nn.Module):\n\n    def __init__(self):\n        super(MobileNetV1, self).__init__()\n        self.stage1 = nn.Sequential(\n            conv_bn(3, 8, 2, leaky=0.1),  # 3\n            conv_dw(8, 16, 1),  # 7\n            conv_dw(16, 32, 2),  # 11\n            conv_dw(32, 32, 1),  # 19\n            conv_dw(32, 64, 2),  # 27\n            conv_dw(64, 64, 1),  # 43\n        )\n        self.stage2 = nn.Sequential(\n            conv_dw(64, 128, 2),  # 43 + 16 = 59\n            conv_dw(128, 128, 1),  # 59 + 32 = 91\n            conv_dw(128, 128, 1),  # 91 + 32 = 123\n            conv_dw(128, 128, 1),  # 123 + 32 = 155\n            conv_dw(128, 128, 1),  # 155 + 32 = 187\n            conv_dw(128, 128, 1),  # 187 + 32 = 219\n        )\n        self.stage3 = nn.Sequential(\n            conv_dw(128, 256, 2),  # 219 +3 2 = 241\n            conv_dw(256, 256, 1),  # 241 + 64 = 301\n        )\n        self.avg = nn.AdaptiveAvgPool2d((1, 1))\n        self.fc = nn.Linear(256, 1000)\n\n    def forward(self, x):\n        x = self.stage1(x)\n        x = self.stage2(x)\n        x = self.stage3(x)\n        x = self.avg(x)\n        # x = self.model(x)\n        x = x.view(-1, 256)\n        x = self.fc(x)\n        return x\n\n\nclass ClassHead(nn.Module):\n\n    def __init__(self, inchannels=512, num_anchors=3):\n        super(ClassHead, self).__init__()\n        self.num_anchors = num_anchors\n        self.conv1x1 = nn.Conv2d(inchannels, self.num_anchors * 2, kernel_size=(1, 1), stride=1, padding=0)\n\n    def forward(self, x):\n        out = self.conv1x1(x)\n        out = out.permute(0, 2, 3, 1).contiguous()\n\n        return out.view(out.shape[0], -1, 2)\n\n\nclass BboxHead(nn.Module):\n\n    def __init__(self, inchannels=512, num_anchors=3):\n        super(BboxHead, self).__init__()\n        self.conv1x1 = nn.Conv2d(inchannels, num_anchors * 4, kernel_size=(1, 1), stride=1, padding=0)\n\n    def forward(self, x):\n        out = self.conv1x1(x)\n        out = out.permute(0, 2, 3, 1).contiguous()\n\n        return out.view(out.shape[0], -1, 4)\n\n\nclass LandmarkHead(nn.Module):\n\n    def __init__(self, inchannels=512, num_anchors=3):\n        super(LandmarkHead, self).__init__()\n        self.conv1x1 = nn.Conv2d(inchannels, num_anchors * 10, kernel_size=(1, 1), stride=1, padding=0)\n\n    def forward(self, x):\n        out = self.conv1x1(x)\n        out = out.permute(0, 2, 3, 1).contiguous()\n\n        return out.view(out.shape[0], -1, 10)\n\n\ndef make_class_head(fpn_num=3, inchannels=64, anchor_num=2):\n    classhead = nn.ModuleList()\n    for i in range(fpn_num):\n        classhead.append(ClassHead(inchannels, anchor_num))\n    return classhead\n\n\ndef make_bbox_head(fpn_num=3, inchannels=64, anchor_num=2):\n    bboxhead = nn.ModuleList()\n    for i in range(fpn_num):\n        bboxhead.append(BboxHead(inchannels, anchor_num))\n    return bboxhead\n\n\ndef make_landmark_head(fpn_num=3, inchannels=64, anchor_num=2):\n    landmarkhead = nn.ModuleList()\n    for i in range(fpn_num):\n        landmarkhead.append(LandmarkHead(inchannels, anchor_num))\n    return landmarkhead\n"
  },
  {
    "path": "modules/facelib/detection/retinaface/retinaface_utils.py",
    "content": "import numpy as np\nimport torch\nimport torchvision\nfrom itertools import product as product\nfrom math import ceil\n\n\nclass PriorBox(object):\n\n    def __init__(self, cfg, image_size=None, phase='train'):\n        super(PriorBox, self).__init__()\n        self.min_sizes = cfg['min_sizes']\n        self.steps = cfg['steps']\n        self.clip = cfg['clip']\n        self.image_size = image_size\n        self.feature_maps = [[ceil(self.image_size[0] / step), ceil(self.image_size[1] / step)] for step in self.steps]\n        self.name = 's'\n\n    def forward(self):\n        anchors = []\n        for k, f in enumerate(self.feature_maps):\n            min_sizes = self.min_sizes[k]\n            for i, j in product(range(f[0]), range(f[1])):\n                for min_size in min_sizes:\n                    s_kx = min_size / self.image_size[1]\n                    s_ky = min_size / self.image_size[0]\n                    dense_cx = [x * self.steps[k] / self.image_size[1] for x in [j + 0.5]]\n                    dense_cy = [y * self.steps[k] / self.image_size[0] for y in [i + 0.5]]\n                    for cy, cx in product(dense_cy, dense_cx):\n                        anchors += [cx, cy, s_kx, s_ky]\n\n        # back to torch land\n        output = torch.Tensor(anchors).view(-1, 4)\n        if self.clip:\n            output.clamp_(max=1, min=0)\n        return output\n\n\ndef py_cpu_nms(dets, thresh):\n    \"\"\"Pure Python NMS baseline.\"\"\"\n    keep = torchvision.ops.nms(\n        boxes=torch.Tensor(dets[:, :4]),\n        scores=torch.Tensor(dets[:, 4]),\n        iou_threshold=thresh,\n    )\n\n    return list(keep)\n\n\ndef point_form(boxes):\n    \"\"\" Convert prior_boxes to (xmin, ymin, xmax, ymax)\n    representation for comparison to point form ground truth data.\n    Args:\n        boxes: (tensor) center-size default boxes from priorbox layers.\n    Return:\n        boxes: (tensor) Converted xmin, ymin, xmax, ymax form of boxes.\n    \"\"\"\n    return torch.cat(\n        (\n            boxes[:, :2] - boxes[:, 2:] / 2,  # xmin, ymin\n            boxes[:, :2] + boxes[:, 2:] / 2),\n        1)  # xmax, ymax\n\n\ndef center_size(boxes):\n    \"\"\" Convert prior_boxes to (cx, cy, w, h)\n    representation for comparison to center-size form ground truth data.\n    Args:\n        boxes: (tensor) point_form boxes\n    Return:\n        boxes: (tensor) Converted xmin, ymin, xmax, ymax form of boxes.\n    \"\"\"\n    return torch.cat(\n        (boxes[:, 2:] + boxes[:, :2]) / 2,  # cx, cy\n        boxes[:, 2:] - boxes[:, :2],\n        1)  # w, h\n\n\ndef intersect(box_a, box_b):\n    \"\"\" We resize both tensors to [A,B,2] without new malloc:\n    [A,2] -> [A,1,2] -> [A,B,2]\n    [B,2] -> [1,B,2] -> [A,B,2]\n    Then we compute the area of intersect between box_a and box_b.\n    Args:\n      box_a: (tensor) bounding boxes, Shape: [A,4].\n      box_b: (tensor) bounding boxes, Shape: [B,4].\n    Return:\n      (tensor) intersection area, Shape: [A,B].\n    \"\"\"\n    A = box_a.size(0)\n    B = box_b.size(0)\n    max_xy = torch.min(box_a[:, 2:].unsqueeze(1).expand(A, B, 2), box_b[:, 2:].unsqueeze(0).expand(A, B, 2))\n    min_xy = torch.max(box_a[:, :2].unsqueeze(1).expand(A, B, 2), box_b[:, :2].unsqueeze(0).expand(A, B, 2))\n    inter = torch.clamp((max_xy - min_xy), min=0)\n    return inter[:, :, 0] * inter[:, :, 1]\n\n\ndef jaccard(box_a, box_b):\n    \"\"\"Compute the jaccard overlap of two sets of boxes.  The jaccard overlap\n    is simply the intersection over union of two boxes.  Here we operate on\n    ground truth boxes and default boxes.\n    E.g.:\n        A ∩ B / A ∪ B = A ∩ B / (area(A) + area(B) - A ∩ B)\n    Args:\n        box_a: (tensor) Ground truth bounding boxes, Shape: [num_objects,4]\n        box_b: (tensor) Prior boxes from priorbox layers, Shape: [num_priors,4]\n    Return:\n        jaccard overlap: (tensor) Shape: [box_a.size(0), box_b.size(0)]\n    \"\"\"\n    inter = intersect(box_a, box_b)\n    area_a = ((box_a[:, 2] - box_a[:, 0]) * (box_a[:, 3] - box_a[:, 1])).unsqueeze(1).expand_as(inter)  # [A,B]\n    area_b = ((box_b[:, 2] - box_b[:, 0]) * (box_b[:, 3] - box_b[:, 1])).unsqueeze(0).expand_as(inter)  # [A,B]\n    union = area_a + area_b - inter\n    return inter / union  # [A,B]\n\n\ndef matrix_iou(a, b):\n    \"\"\"\n    return iou of a and b, numpy version for data augenmentation\n    \"\"\"\n    lt = np.maximum(a[:, np.newaxis, :2], b[:, :2])\n    rb = np.minimum(a[:, np.newaxis, 2:], b[:, 2:])\n\n    area_i = np.prod(rb - lt, axis=2) * (lt < rb).all(axis=2)\n    area_a = np.prod(a[:, 2:] - a[:, :2], axis=1)\n    area_b = np.prod(b[:, 2:] - b[:, :2], axis=1)\n    return area_i / (area_a[:, np.newaxis] + area_b - area_i)\n\n\ndef matrix_iof(a, b):\n    \"\"\"\n    return iof of a and b, numpy version for data augenmentation\n    \"\"\"\n    lt = np.maximum(a[:, np.newaxis, :2], b[:, :2])\n    rb = np.minimum(a[:, np.newaxis, 2:], b[:, 2:])\n\n    area_i = np.prod(rb - lt, axis=2) * (lt < rb).all(axis=2)\n    area_a = np.prod(a[:, 2:] - a[:, :2], axis=1)\n    return area_i / np.maximum(area_a[:, np.newaxis], 1)\n\n\ndef match(threshold, truths, priors, variances, labels, landms, loc_t, conf_t, landm_t, idx):\n    \"\"\"Match each prior box with the ground truth box of the highest jaccard\n    overlap, encode the bounding boxes, then return the matched indices\n    corresponding to both confidence and location preds.\n    Args:\n        threshold: (float) The overlap threshold used when matching boxes.\n        truths: (tensor) Ground truth boxes, Shape: [num_obj, 4].\n        priors: (tensor) Prior boxes from priorbox layers, Shape: [n_priors,4].\n        variances: (tensor) Variances corresponding to each prior coord,\n            Shape: [num_priors, 4].\n        labels: (tensor) All the class labels for the image, Shape: [num_obj].\n        landms: (tensor) Ground truth landms, Shape [num_obj, 10].\n        loc_t: (tensor) Tensor to be filled w/ encoded location targets.\n        conf_t: (tensor) Tensor to be filled w/ matched indices for conf preds.\n        landm_t: (tensor) Tensor to be filled w/ encoded landm targets.\n        idx: (int) current batch index\n    Return:\n        The matched indices corresponding to 1)location 2)confidence\n        3)landm preds.\n    \"\"\"\n    # jaccard index\n    overlaps = jaccard(truths, point_form(priors))\n    # (Bipartite Matching)\n    # [1,num_objects] best prior for each ground truth\n    best_prior_overlap, best_prior_idx = overlaps.max(1, keepdim=True)\n\n    # ignore hard gt\n    valid_gt_idx = best_prior_overlap[:, 0] >= 0.2\n    best_prior_idx_filter = best_prior_idx[valid_gt_idx, :]\n    if best_prior_idx_filter.shape[0] <= 0:\n        loc_t[idx] = 0\n        conf_t[idx] = 0\n        return\n\n    # [1,num_priors] best ground truth for each prior\n    best_truth_overlap, best_truth_idx = overlaps.max(0, keepdim=True)\n    best_truth_idx.squeeze_(0)\n    best_truth_overlap.squeeze_(0)\n    best_prior_idx.squeeze_(1)\n    best_prior_idx_filter.squeeze_(1)\n    best_prior_overlap.squeeze_(1)\n    best_truth_overlap.index_fill_(0, best_prior_idx_filter, 2)  # ensure best prior\n    # ensure every gt matches with its prior of max overlap\n    for j in range(best_prior_idx.size(0)):  # 判别此anchor是预测哪一个boxes\n        best_truth_idx[best_prior_idx[j]] = j\n    matches = truths[best_truth_idx]  # Shape: [num_priors,4] 此处为每一个anchor对应的bbox取出来\n    conf = labels[best_truth_idx]  # Shape: [num_priors]      此处为每一个anchor对应的label取出来\n    conf[best_truth_overlap < threshold] = 0  # label as background   overlap<0.35的全部作为负样本\n    loc = encode(matches, priors, variances)\n\n    matches_landm = landms[best_truth_idx]\n    landm = encode_landm(matches_landm, priors, variances)\n    loc_t[idx] = loc  # [num_priors,4] encoded offsets to learn\n    conf_t[idx] = conf  # [num_priors] top class label for each prior\n    landm_t[idx] = landm\n\n\ndef encode(matched, priors, variances):\n    \"\"\"Encode the variances from the priorbox layers into the ground truth boxes\n    we have matched (based on jaccard overlap) with the prior boxes.\n    Args:\n        matched: (tensor) Coords of ground truth for each prior in point-form\n            Shape: [num_priors, 4].\n        priors: (tensor) Prior boxes in center-offset form\n            Shape: [num_priors,4].\n        variances: (list[float]) Variances of priorboxes\n    Return:\n        encoded boxes (tensor), Shape: [num_priors, 4]\n    \"\"\"\n\n    # dist b/t match center and prior's center\n    g_cxcy = (matched[:, :2] + matched[:, 2:]) / 2 - priors[:, :2]\n    # encode variance\n    g_cxcy /= (variances[0] * priors[:, 2:])\n    # match wh / prior wh\n    g_wh = (matched[:, 2:] - matched[:, :2]) / priors[:, 2:]\n    g_wh = torch.log(g_wh) / variances[1]\n    # return target for smooth_l1_loss\n    return torch.cat([g_cxcy, g_wh], 1)  # [num_priors,4]\n\n\ndef encode_landm(matched, priors, variances):\n    \"\"\"Encode the variances from the priorbox layers into the ground truth boxes\n    we have matched (based on jaccard overlap) with the prior boxes.\n    Args:\n        matched: (tensor) Coords of ground truth for each prior in point-form\n            Shape: [num_priors, 10].\n        priors: (tensor) Prior boxes in center-offset form\n            Shape: [num_priors,4].\n        variances: (list[float]) Variances of priorboxes\n    Return:\n        encoded landm (tensor), Shape: [num_priors, 10]\n    \"\"\"\n\n    # dist b/t match center and prior's center\n    matched = torch.reshape(matched, (matched.size(0), 5, 2))\n    priors_cx = priors[:, 0].unsqueeze(1).expand(matched.size(0), 5).unsqueeze(2)\n    priors_cy = priors[:, 1].unsqueeze(1).expand(matched.size(0), 5).unsqueeze(2)\n    priors_w = priors[:, 2].unsqueeze(1).expand(matched.size(0), 5).unsqueeze(2)\n    priors_h = priors[:, 3].unsqueeze(1).expand(matched.size(0), 5).unsqueeze(2)\n    priors = torch.cat([priors_cx, priors_cy, priors_w, priors_h], dim=2)\n    g_cxcy = matched[:, :, :2] - priors[:, :, :2]\n    # encode variance\n    g_cxcy /= (variances[0] * priors[:, :, 2:])\n    # g_cxcy /= priors[:, :, 2:]\n    g_cxcy = g_cxcy.reshape(g_cxcy.size(0), -1)\n    # return target for smooth_l1_loss\n    return g_cxcy\n\n\n# Adapted from https://github.com/Hakuyume/chainer-ssd\ndef decode(loc, priors, variances):\n    \"\"\"Decode locations from predictions using priors to undo\n    the encoding we did for offset regression at train time.\n    Args:\n        loc (tensor): location predictions for loc layers,\n            Shape: [num_priors,4]\n        priors (tensor): Prior boxes in center-offset form.\n            Shape: [num_priors,4].\n        variances: (list[float]) Variances of priorboxes\n    Return:\n        decoded bounding box predictions\n    \"\"\"\n\n    boxes = torch.cat((priors[:, :2] + loc[:, :2] * variances[0] * priors[:, 2:],\n                       priors[:, 2:] * torch.exp(loc[:, 2:] * variances[1])), 1)\n    boxes[:, :2] -= boxes[:, 2:] / 2\n    boxes[:, 2:] += boxes[:, :2]\n    return boxes\n\n\ndef decode_landm(pre, priors, variances):\n    \"\"\"Decode landm from predictions using priors to undo\n    the encoding we did for offset regression at train time.\n    Args:\n        pre (tensor): landm predictions for loc layers,\n            Shape: [num_priors,10]\n        priors (tensor): Prior boxes in center-offset form.\n            Shape: [num_priors,4].\n        variances: (list[float]) Variances of priorboxes\n    Return:\n        decoded landm predictions\n    \"\"\"\n    tmp = (\n        priors[:, :2] + pre[:, :2] * variances[0] * priors[:, 2:],\n        priors[:, :2] + pre[:, 2:4] * variances[0] * priors[:, 2:],\n        priors[:, :2] + pre[:, 4:6] * variances[0] * priors[:, 2:],\n        priors[:, :2] + pre[:, 6:8] * variances[0] * priors[:, 2:],\n        priors[:, :2] + pre[:, 8:10] * variances[0] * priors[:, 2:],\n    )\n    landms = torch.cat(tmp, dim=1)\n    return landms\n\n\ndef batched_decode(b_loc, priors, variances):\n    \"\"\"Decode locations from predictions using priors to undo\n    the encoding we did for offset regression at train time.\n    Args:\n        b_loc (tensor): location predictions for loc layers,\n            Shape: [num_batches,num_priors,4]\n        priors (tensor): Prior boxes in center-offset form.\n            Shape: [1,num_priors,4].\n        variances: (list[float]) Variances of priorboxes\n    Return:\n        decoded bounding box predictions\n    \"\"\"\n    boxes = (\n        priors[:, :, :2] + b_loc[:, :, :2] * variances[0] * priors[:, :, 2:],\n        priors[:, :, 2:] * torch.exp(b_loc[:, :, 2:] * variances[1]),\n    )\n    boxes = torch.cat(boxes, dim=2)\n\n    boxes[:, :, :2] -= boxes[:, :, 2:] / 2\n    boxes[:, :, 2:] += boxes[:, :, :2]\n    return boxes\n\n\ndef batched_decode_landm(pre, priors, variances):\n    \"\"\"Decode landm from predictions using priors to undo\n    the encoding we did for offset regression at train time.\n    Args:\n        pre (tensor): landm predictions for loc layers,\n            Shape: [num_batches,num_priors,10]\n        priors (tensor): Prior boxes in center-offset form.\n            Shape: [1,num_priors,4].\n        variances: (list[float]) Variances of priorboxes\n    Return:\n        decoded landm predictions\n    \"\"\"\n    landms = (\n        priors[:, :, :2] + pre[:, :, :2] * variances[0] * priors[:, :, 2:],\n        priors[:, :, :2] + pre[:, :, 2:4] * variances[0] * priors[:, :, 2:],\n        priors[:, :, :2] + pre[:, :, 4:6] * variances[0] * priors[:, :, 2:],\n        priors[:, :, :2] + pre[:, :, 6:8] * variances[0] * priors[:, :, 2:],\n        priors[:, :, :2] + pre[:, :, 8:10] * variances[0] * priors[:, :, 2:],\n    )\n    landms = torch.cat(landms, dim=2)\n    return landms\n\n\ndef log_sum_exp(x):\n    \"\"\"Utility function for computing log_sum_exp while determining\n    This will be used to determine unaveraged confidence loss across\n    all examples in a batch.\n    Args:\n        x (Variable(tensor)): conf_preds from conf layers\n    \"\"\"\n    x_max = x.data.max()\n    return torch.log(torch.sum(torch.exp(x - x_max), 1, keepdim=True)) + x_max\n\n\n# Original author: Francisco Massa:\n# https://github.com/fmassa/object-detection.torch\n# Ported to PyTorch by Max deGroot (02/01/2017)\ndef nms(boxes, scores, overlap=0.5, top_k=200):\n    \"\"\"Apply non-maximum suppression at test time to avoid detecting too many\n    overlapping bounding boxes for a given object.\n    Args:\n        boxes: (tensor) The location preds for the img, Shape: [num_priors,4].\n        scores: (tensor) The class predscores for the img, Shape:[num_priors].\n        overlap: (float) The overlap thresh for suppressing unnecessary boxes.\n        top_k: (int) The Maximum number of box preds to consider.\n    Return:\n        The indices of the kept boxes with respect to num_priors.\n    \"\"\"\n\n    keep = torch.Tensor(scores.size(0)).fill_(0).long()\n    if boxes.numel() == 0:\n        return keep\n    x1 = boxes[:, 0]\n    y1 = boxes[:, 1]\n    x2 = boxes[:, 2]\n    y2 = boxes[:, 3]\n    area = torch.mul(x2 - x1, y2 - y1)\n    v, idx = scores.sort(0)  # sort in ascending order\n    # I = I[v >= 0.01]\n    idx = idx[-top_k:]  # indices of the top-k largest vals\n    xx1 = boxes.new()\n    yy1 = boxes.new()\n    xx2 = boxes.new()\n    yy2 = boxes.new()\n    w = boxes.new()\n    h = boxes.new()\n\n    # keep = torch.Tensor()\n    count = 0\n    while idx.numel() > 0:\n        i = idx[-1]  # index of current largest val\n        # keep.append(i)\n        keep[count] = i\n        count += 1\n        if idx.size(0) == 1:\n            break\n        idx = idx[:-1]  # remove kept element from view\n        # load bboxes of next highest vals\n        torch.index_select(x1, 0, idx, out=xx1)\n        torch.index_select(y1, 0, idx, out=yy1)\n        torch.index_select(x2, 0, idx, out=xx2)\n        torch.index_select(y2, 0, idx, out=yy2)\n        # store element-wise max with next highest score\n        xx1 = torch.clamp(xx1, min=x1[i])\n        yy1 = torch.clamp(yy1, min=y1[i])\n        xx2 = torch.clamp(xx2, max=x2[i])\n        yy2 = torch.clamp(yy2, max=y2[i])\n        w.resize_as_(xx2)\n        h.resize_as_(yy2)\n        w = xx2 - xx1\n        h = yy2 - yy1\n        # check sizes of xx1 and xx2.. after each iteration\n        w = torch.clamp(w, min=0.0)\n        h = torch.clamp(h, min=0.0)\n        inter = w * h\n        # IoU = i / (area(a) + area(b) - i)\n        rem_areas = torch.index_select(area, 0, idx)  # load remaining areas)\n        union = (rem_areas - inter) + area[i]\n        IoU = inter / union  # store result in iou\n        # keep only elements with an IoU <= overlap\n        idx = idx[IoU.le(overlap)]\n    return keep, count\n"
  },
  {
    "path": "modules/facelib/detection/yolov5face/__init__.py",
    "content": ""
  },
  {
    "path": "modules/facelib/detection/yolov5face/face_detector.py",
    "content": "import copy\nimport os\nfrom pathlib import Path\n\nimport cv2\nimport numpy as np\nimport torch\nfrom torch import nn\n\nfrom ....facelib.detection.yolov5face.models.common import Conv\nfrom ....facelib.detection.yolov5face.models.yolo import Model\nfrom ....facelib.detection.yolov5face.utils.datasets import letterbox\nfrom ....facelib.detection.yolov5face.utils.general import (\n    check_img_size,\n    non_max_suppression_face,\n    scale_coords,\n    scale_coords_landmarks,\n)\n\nIS_HIGH_VERSION = tuple(map(int, torch.__version__.split('+')[0].split('.')[:2])) >= (1, 9, 0)\n\n\ndef isListempty(inList):\n    if isinstance(inList, list): # Is a list\n        return all(map(isListempty, inList))\n    return False # Not a list\n\nclass YoloDetector:\n    def __init__(\n        self,\n        config_name,\n        min_face=10,\n        target_size=None,\n        device='cuda',\n    ):\n        \"\"\"\n        config_name: name of .yaml config with network configuration from models/ folder.\n        min_face : minimal face size in pixels.\n        target_size : target size of smaller image axis (choose lower for faster work). e.g. 480, 720, 1080.\n                    None for original resolution.\n        \"\"\"\n        self._class_path = Path(__file__).parent.absolute()\n        self.target_size = target_size\n        self.min_face = min_face\n        self.detector = Model(cfg=config_name)\n        self.device = device\n\n\n    def _preprocess(self, imgs):\n        \"\"\"\n        Preprocessing image before passing through the network. Resize and conversion to torch tensor.\n        \"\"\"\n        pp_imgs = []\n        for img in imgs:\n            h0, w0 = img.shape[:2]  # orig hw\n            if self.target_size:\n                r = self.target_size / min(h0, w0)  # resize image to img_size\n                if r < 1:\n                    img = cv2.resize(img, (int(w0 * r), int(h0 * r)), interpolation=cv2.INTER_LINEAR)\n\n            imgsz = check_img_size(max(img.shape[:2]), s=self.detector.stride.max())  # check img_size\n            img = letterbox(img, new_shape=imgsz)[0]\n            pp_imgs.append(img)\n        pp_imgs = np.array(pp_imgs)\n        pp_imgs = pp_imgs.transpose(0, 3, 1, 2)\n        pp_imgs = torch.from_numpy(pp_imgs).to(self.device)\n        pp_imgs = pp_imgs.float()  # uint8 to fp16/32\n        return pp_imgs / 255.0  # 0 - 255 to 0.0 - 1.0\n\n    def _postprocess(self, imgs, origimgs, pred, conf_thres, iou_thres):\n        \"\"\"\n        Postprocessing of raw pytorch model output.\n        Returns:\n            bboxes: list of arrays with 4 coordinates of bounding boxes with format x1,y1,x2,y2.\n            points: list of arrays with coordinates of 5 facial keypoints (eyes, nose, lips corners).\n        \"\"\"\n        bboxes = [[] for _ in range(len(origimgs))]\n        landmarks = [[] for _ in range(len(origimgs))]\n\n        pred = non_max_suppression_face(pred, conf_thres, iou_thres)\n\n        for image_id, origimg in enumerate(origimgs):\n            img_shape = origimg.shape\n            image_height, image_width = img_shape[:2]\n            gn = torch.tensor(img_shape)[[1, 0, 1, 0]]  # normalization gain whwh\n            gn_lks = torch.tensor(img_shape)[[1, 0, 1, 0, 1, 0, 1, 0, 1, 0]]  # normalization gain landmarks\n            det = pred[image_id].cpu()\n            scale_coords(imgs[image_id].shape[1:], det[:, :4], img_shape).round()\n            scale_coords_landmarks(imgs[image_id].shape[1:], det[:, 5:15], img_shape).round()\n\n            for j in range(det.size()[0]):\n                box = (det[j, :4].view(1, 4) / gn).view(-1).tolist()\n                box = list(\n                    map(int, [box[0] * image_width, box[1] * image_height, box[2] * image_width, box[3] * image_height])\n                )\n                if box[3] - box[1] < self.min_face:\n                    continue\n                lm = (det[j, 5:15].view(1, 10) / gn_lks).view(-1).tolist()\n                lm = list(map(int, [i * image_width if j % 2 == 0 else i * image_height for j, i in enumerate(lm)]))\n                lm = [lm[i : i + 2] for i in range(0, len(lm), 2)]\n                bboxes[image_id].append(box)\n                landmarks[image_id].append(lm)\n        return bboxes, landmarks\n\n    def detect_faces(self, imgs, conf_thres=0.7, iou_thres=0.5):\n        \"\"\"\n        Get bbox coordinates and keypoints of faces on original image.\n        Params:\n            imgs: image or list of images to detect faces on with BGR order (convert to RGB order for inference)\n            conf_thres: confidence threshold for each prediction\n            iou_thres: threshold for NMS (filter of intersecting bboxes)\n        Returns:\n            bboxes: list of arrays with 4 coordinates of bounding boxes with format x1,y1,x2,y2.\n            points: list of arrays with coordinates of 5 facial keypoints (eyes, nose, lips corners).\n        \"\"\"\n        # Pass input images through face detector\n        images = imgs if isinstance(imgs, list) else [imgs]\n        images = [cv2.cvtColor(img, cv2.COLOR_BGR2RGB) for img in images]\n        origimgs = copy.deepcopy(images)\n\n        images = self._preprocess(images)\n\n        if IS_HIGH_VERSION:\n            with torch.inference_mode():  # for pytorch>=1.9\n                pred = self.detector(images)[0]\n        else:\n            with torch.no_grad():  # for pytorch<1.9\n                pred = self.detector(images)[0]\n\n        bboxes, points = self._postprocess(images, origimgs, pred, conf_thres, iou_thres)\n\n        # return bboxes, points\n        if not isListempty(points):\n            bboxes = np.array(bboxes).reshape(-1,4)\n            points = np.array(points).reshape(-1,10)\n            padding = bboxes[:,0].reshape(-1,1)\n            return np.concatenate((bboxes, padding, points), axis=1)\n        else:\n            return None\n\n    def __call__(self, *args):\n        return self.predict(*args)\n"
  },
  {
    "path": "modules/facelib/detection/yolov5face/models/__init__.py",
    "content": ""
  },
  {
    "path": "modules/facelib/detection/yolov5face/models/common.py",
    "content": "# This file contains modules common to various models\n\nimport math\n\nimport numpy as np\nimport torch\nfrom torch import nn\n\nfrom ....detection.yolov5face.utils.datasets import letterbox\nfrom ....detection.yolov5face.utils.general import (\n    make_divisible,\n    non_max_suppression,\n    scale_coords,\n    xyxy2xywh,\n)\n\n\ndef autopad(k, p=None):  # kernel, padding\n    # Pad to 'same'\n    if p is None:\n        p = k // 2 if isinstance(k, int) else [x // 2 for x in k]  # auto-pad\n    return p\n\n\ndef channel_shuffle(x, groups):\n    batchsize, num_channels, height, width = x.data.size()\n    channels_per_group = torch.div(num_channels, groups, rounding_mode=\"trunc\")\n\n    # reshape\n    x = x.view(batchsize, groups, channels_per_group, height, width)\n    x = torch.transpose(x, 1, 2).contiguous()\n\n    # flatten\n    return x.view(batchsize, -1, height, width)\n\n\ndef DWConv(c1, c2, k=1, s=1, act=True):\n    # Depthwise convolution\n    return Conv(c1, c2, k, s, g=math.gcd(c1, c2), act=act)\n\n\nclass Conv(nn.Module):\n    # Standard convolution\n    def __init__(self, c1, c2, k=1, s=1, p=None, g=1, act=True):  # ch_in, ch_out, kernel, stride, padding, groups\n        super().__init__()\n        self.conv = nn.Conv2d(c1, c2, k, s, autopad(k, p), groups=g, bias=False)\n        self.bn = nn.BatchNorm2d(c2)\n        self.act = nn.SiLU() if act is True else (act if isinstance(act, nn.Module) else nn.Identity())\n\n    def forward(self, x):\n        return self.act(self.bn(self.conv(x)))\n\n    def fuseforward(self, x):\n        return self.act(self.conv(x))\n\n\nclass StemBlock(nn.Module):\n    def __init__(self, c1, c2, k=3, s=2, p=None, g=1, act=True):\n        super().__init__()\n        self.stem_1 = Conv(c1, c2, k, s, p, g, act)\n        self.stem_2a = Conv(c2, c2 // 2, 1, 1, 0)\n        self.stem_2b = Conv(c2 // 2, c2, 3, 2, 1)\n        self.stem_2p = nn.MaxPool2d(kernel_size=2, stride=2, ceil_mode=True)\n        self.stem_3 = Conv(c2 * 2, c2, 1, 1, 0)\n\n    def forward(self, x):\n        stem_1_out = self.stem_1(x)\n        stem_2a_out = self.stem_2a(stem_1_out)\n        stem_2b_out = self.stem_2b(stem_2a_out)\n        stem_2p_out = self.stem_2p(stem_1_out)\n        return self.stem_3(torch.cat((stem_2b_out, stem_2p_out), 1))\n\n\nclass Bottleneck(nn.Module):\n    # Standard bottleneck\n    def __init__(self, c1, c2, shortcut=True, g=1, e=0.5):  # ch_in, ch_out, shortcut, groups, expansion\n        super().__init__()\n        c_ = int(c2 * e)  # hidden channels\n        self.cv1 = Conv(c1, c_, 1, 1)\n        self.cv2 = Conv(c_, c2, 3, 1, g=g)\n        self.add = shortcut and c1 == c2\n\n    def forward(self, x):\n        return x + self.cv2(self.cv1(x)) if self.add else self.cv2(self.cv1(x))\n\n\nclass BottleneckCSP(nn.Module):\n    # CSP Bottleneck https://github.com/WongKinYiu/CrossStagePartialNetworks\n    def __init__(self, c1, c2, n=1, shortcut=True, g=1, e=0.5):  # ch_in, ch_out, number, shortcut, groups, expansion\n        super().__init__()\n        c_ = int(c2 * e)  # hidden channels\n        self.cv1 = Conv(c1, c_, 1, 1)\n        self.cv2 = nn.Conv2d(c1, c_, 1, 1, bias=False)\n        self.cv3 = nn.Conv2d(c_, c_, 1, 1, bias=False)\n        self.cv4 = Conv(2 * c_, c2, 1, 1)\n        self.bn = nn.BatchNorm2d(2 * c_)  # applied to cat(cv2, cv3)\n        self.act = nn.LeakyReLU(0.1, inplace=True)\n        self.m = nn.Sequential(*(Bottleneck(c_, c_, shortcut, g, e=1.0) for _ in range(n)))\n\n    def forward(self, x):\n        y1 = self.cv3(self.m(self.cv1(x)))\n        y2 = self.cv2(x)\n        return self.cv4(self.act(self.bn(torch.cat((y1, y2), dim=1))))\n\n\nclass C3(nn.Module):\n    # CSP Bottleneck with 3 convolutions\n    def __init__(self, c1, c2, n=1, shortcut=True, g=1, e=0.5):  # ch_in, ch_out, number, shortcut, groups, expansion\n        super().__init__()\n        c_ = int(c2 * e)  # hidden channels\n        self.cv1 = Conv(c1, c_, 1, 1)\n        self.cv2 = Conv(c1, c_, 1, 1)\n        self.cv3 = Conv(2 * c_, c2, 1)  # act=FReLU(c2)\n        self.m = nn.Sequential(*(Bottleneck(c_, c_, shortcut, g, e=1.0) for _ in range(n)))\n\n    def forward(self, x):\n        return self.cv3(torch.cat((self.m(self.cv1(x)), self.cv2(x)), dim=1))\n\n\nclass ShuffleV2Block(nn.Module):\n    def __init__(self, inp, oup, stride):\n        super().__init__()\n\n        if not 1 <= stride <= 3:\n            raise ValueError(\"illegal stride value\")\n        self.stride = stride\n\n        branch_features = oup // 2\n\n        if self.stride > 1:\n            self.branch1 = nn.Sequential(\n                self.depthwise_conv(inp, inp, kernel_size=3, stride=self.stride, padding=1),\n                nn.BatchNorm2d(inp),\n                nn.Conv2d(inp, branch_features, kernel_size=1, stride=1, padding=0, bias=False),\n                nn.BatchNorm2d(branch_features),\n                nn.SiLU(),\n            )\n        else:\n            self.branch1 = nn.Sequential()\n\n        self.branch2 = nn.Sequential(\n            nn.Conv2d(\n                inp if (self.stride > 1) else branch_features,\n                branch_features,\n                kernel_size=1,\n                stride=1,\n                padding=0,\n                bias=False,\n            ),\n            nn.BatchNorm2d(branch_features),\n            nn.SiLU(),\n            self.depthwise_conv(branch_features, branch_features, kernel_size=3, stride=self.stride, padding=1),\n            nn.BatchNorm2d(branch_features),\n            nn.Conv2d(branch_features, branch_features, kernel_size=1, stride=1, padding=0, bias=False),\n            nn.BatchNorm2d(branch_features),\n            nn.SiLU(),\n        )\n\n    @staticmethod\n    def depthwise_conv(i, o, kernel_size, stride=1, padding=0, bias=False):\n        return nn.Conv2d(i, o, kernel_size, stride, padding, bias=bias, groups=i)\n\n    def forward(self, x):\n        if self.stride == 1:\n            x1, x2 = x.chunk(2, dim=1)\n            out = torch.cat((x1, self.branch2(x2)), dim=1)\n        else:\n            out = torch.cat((self.branch1(x), self.branch2(x)), dim=1)\n        out = channel_shuffle(out, 2)\n        return out\n\n\nclass SPP(nn.Module):\n    # Spatial pyramid pooling layer used in YOLOv3-SPP\n    def __init__(self, c1, c2, k=(5, 9, 13)):\n        super().__init__()\n        c_ = c1 // 2  # hidden channels\n        self.cv1 = Conv(c1, c_, 1, 1)\n        self.cv2 = Conv(c_ * (len(k) + 1), c2, 1, 1)\n        self.m = nn.ModuleList([nn.MaxPool2d(kernel_size=x, stride=1, padding=x // 2) for x in k])\n\n    def forward(self, x):\n        x = self.cv1(x)\n        return self.cv2(torch.cat([x] + [m(x) for m in self.m], 1))\n\n\nclass Focus(nn.Module):\n    # Focus wh information into c-space\n    def __init__(self, c1, c2, k=1, s=1, p=None, g=1, act=True):  # ch_in, ch_out, kernel, stride, padding, groups\n        super().__init__()\n        self.conv = Conv(c1 * 4, c2, k, s, p, g, act)\n\n    def forward(self, x):  # x(b,c,w,h) -> y(b,4c,w/2,h/2)\n        return self.conv(torch.cat([x[..., ::2, ::2], x[..., 1::2, ::2], x[..., ::2, 1::2], x[..., 1::2, 1::2]], 1))\n\n\nclass Concat(nn.Module):\n    # Concatenate a list of tensors along dimension\n    def __init__(self, dimension=1):\n        super().__init__()\n        self.d = dimension\n\n    def forward(self, x):\n        return torch.cat(x, self.d)\n\n\nclass NMS(nn.Module):\n    # Non-Maximum Suppression (NMS) module\n    conf = 0.25  # confidence threshold\n    iou = 0.45  # IoU threshold\n    classes = None  # (optional list) filter by class\n\n    def forward(self, x):\n        return non_max_suppression(x[0], conf_thres=self.conf, iou_thres=self.iou, classes=self.classes)\n\n\nclass AutoShape(nn.Module):\n    # input-robust model wrapper for passing cv2/np/PIL/torch inputs. Includes preprocessing, inference and NMS\n    img_size = 640  # inference size (pixels)\n    conf = 0.25  # NMS confidence threshold\n    iou = 0.45  # NMS IoU threshold\n    classes = None  # (optional list) filter by class\n\n    def __init__(self, model):\n        super().__init__()\n        self.model = model.eval()\n\n    def autoshape(self):\n        print(\"autoShape already enabled, skipping... \")  # model already converted to model.autoshape()\n        return self\n\n    def forward(self, imgs, size=640, augment=False, profile=False):\n        # Inference from various sources. For height=720, width=1280, RGB images example inputs are:\n        #   OpenCV:          = cv2.imread('image.jpg')[:,:,::-1]  # HWC BGR to RGB x(720,1280,3)\n        #   PIL:             = Image.open('image.jpg')  # HWC x(720,1280,3)\n        #   numpy:           = np.zeros((720,1280,3))  # HWC\n        #   torch:           = torch.zeros(16,3,720,1280)  # BCHW\n        #   multiple:        = [Image.open('image1.jpg'), Image.open('image2.jpg'), ...]  # list of images\n\n        p = next(self.model.parameters())  # for device and type\n        if isinstance(imgs, torch.Tensor):  # torch\n            return self.model(imgs.to(p.device).type_as(p), augment, profile)  # inference\n\n        # Pre-process\n        n, imgs = (len(imgs), imgs) if isinstance(imgs, list) else (1, [imgs])  # number of images, list of images\n        shape0, shape1 = [], []  # image and inference shapes\n        for i, im in enumerate(imgs):\n            im = np.array(im)  # to numpy\n            if im.shape[0] < 5:  # image in CHW\n                im = im.transpose((1, 2, 0))  # reverse dataloader .transpose(2, 0, 1)\n            im = im[:, :, :3] if im.ndim == 3 else np.tile(im[:, :, None], 3)  # enforce 3ch input\n            s = im.shape[:2]  # HWC\n            shape0.append(s)  # image shape\n            g = size / max(s)  # gain\n            shape1.append([y * g for y in s])\n            imgs[i] = im  # update\n        shape1 = [make_divisible(x, int(self.stride.max())) for x in np.stack(shape1, 0).max(0)]  # inference shape\n        x = [letterbox(im, new_shape=shape1, auto=False)[0] for im in imgs]  # pad\n        x = np.stack(x, 0) if n > 1 else x[0][None]  # stack\n        x = np.ascontiguousarray(x.transpose((0, 3, 1, 2)))  # BHWC to BCHW\n        x = torch.from_numpy(x).to(p.device).type_as(p) / 255.0  # uint8 to fp16/32\n\n        # Inference\n        with torch.no_grad():\n            y = self.model(x, augment, profile)[0]  # forward\n        y = non_max_suppression(y, conf_thres=self.conf, iou_thres=self.iou, classes=self.classes)  # NMS\n\n        # Post-process\n        for i in range(n):\n            scale_coords(shape1, y[i][:, :4], shape0[i])\n\n        return Detections(imgs, y, self.names)\n\n\nclass Detections:\n    # detections class for YOLOv5 inference results\n    def __init__(self, imgs, pred, names=None):\n        super().__init__()\n        d = pred[0].device  # device\n        gn = [torch.tensor([*(im.shape[i] for i in [1, 0, 1, 0]), 1.0, 1.0], device=d) for im in imgs]  # normalizations\n        self.imgs = imgs  # list of images as numpy arrays\n        self.pred = pred  # list of tensors pred[0] = (xyxy, conf, cls)\n        self.names = names  # class names\n        self.xyxy = pred  # xyxy pixels\n        self.xywh = [xyxy2xywh(x) for x in pred]  # xywh pixels\n        self.xyxyn = [x / g for x, g in zip(self.xyxy, gn)]  # xyxy normalized\n        self.xywhn = [x / g for x, g in zip(self.xywh, gn)]  # xywh normalized\n        self.n = len(self.pred)\n\n    def __len__(self):\n        return self.n\n\n    def tolist(self):\n        # return a list of Detections objects, i.e. 'for result in results.tolist():'\n        x = [Detections([self.imgs[i]], [self.pred[i]], self.names) for i in range(self.n)]\n        for d in x:\n            for k in [\"imgs\", \"pred\", \"xyxy\", \"xyxyn\", \"xywh\", \"xywhn\"]:\n                setattr(d, k, getattr(d, k)[0])  # pop out of list\n        return x\n"
  },
  {
    "path": "modules/facelib/detection/yolov5face/models/experimental.py",
    "content": "# # This file contains experimental modules\n\nimport numpy as np\nimport torch\nfrom torch import nn\n\nfrom ....detection.yolov5face.models.common import Conv\n\n\nclass CrossConv(nn.Module):\n    # Cross Convolution Downsample\n    def __init__(self, c1, c2, k=3, s=1, g=1, e=1.0, shortcut=False):\n        # ch_in, ch_out, kernel, stride, groups, expansion, shortcut\n        super().__init__()\n        c_ = int(c2 * e)  # hidden channels\n        self.cv1 = Conv(c1, c_, (1, k), (1, s))\n        self.cv2 = Conv(c_, c2, (k, 1), (s, 1), g=g)\n        self.add = shortcut and c1 == c2\n\n    def forward(self, x):\n        return x + self.cv2(self.cv1(x)) if self.add else self.cv2(self.cv1(x))\n\n\nclass MixConv2d(nn.Module):\n    # Mixed Depthwise Conv https://arxiv.org/abs/1907.09595\n    def __init__(self, c1, c2, k=(1, 3), s=1, equal_ch=True):\n        super().__init__()\n        groups = len(k)\n        if equal_ch:  # equal c_ per group\n            i = torch.linspace(0, groups - 1e-6, c2).floor()  # c2 indices\n            c_ = [(i == g).sum() for g in range(groups)]  # intermediate channels\n        else:  # equal weight.numel() per group\n            b = [c2] + [0] * groups\n            a = np.eye(groups + 1, groups, k=-1)\n            a -= np.roll(a, 1, axis=1)\n            a *= np.array(k) ** 2\n            a[0] = 1\n            c_ = np.linalg.lstsq(a, b, rcond=None)[0].round()  # solve for equal weight indices, ax = b\n\n        self.m = nn.ModuleList([nn.Conv2d(c1, int(c_[g]), k[g], s, k[g] // 2, bias=False) for g in range(groups)])\n        self.bn = nn.BatchNorm2d(c2)\n        self.act = nn.LeakyReLU(0.1, inplace=True)\n\n    def forward(self, x):\n        return x + self.act(self.bn(torch.cat([m(x) for m in self.m], 1)))\n"
  },
  {
    "path": "modules/facelib/detection/yolov5face/models/yolo.py",
    "content": "import math\nfrom copy import deepcopy\nfrom pathlib import Path\n\nimport torch\nimport yaml  # for torch hub\nfrom torch import nn\n\nfrom ....detection.yolov5face.models.common import (\n    C3,\n    NMS,\n    SPP,\n    AutoShape,\n    Bottleneck,\n    BottleneckCSP,\n    Concat,\n    Conv,\n    DWConv,\n    Focus,\n    ShuffleV2Block,\n    StemBlock,\n)\nfrom ....detection.yolov5face.models.experimental import CrossConv, MixConv2d\nfrom ....detection.yolov5face.utils.autoanchor import check_anchor_order\nfrom ....detection.yolov5face.utils.general import make_divisible\nfrom ....detection.yolov5face.utils.torch_utils import copy_attr, fuse_conv_and_bn\n\n\nclass Detect(nn.Module):\n    stride = None  # strides computed during build\n    export = False  # onnx export\n\n    def __init__(self, nc=80, anchors=(), ch=()):  # detection layer\n        super().__init__()\n        self.nc = nc  # number of classes\n        self.no = nc + 5 + 10  # number of outputs per anchor\n\n        self.nl = len(anchors)  # number of detection layers\n        self.na = len(anchors[0]) // 2  # number of anchors\n        self.grid = [torch.zeros(1)] * self.nl  # init grid\n        a = torch.tensor(anchors).float().view(self.nl, -1, 2)\n        self.register_buffer(\"anchors\", a)  # shape(nl,na,2)\n        self.register_buffer(\"anchor_grid\", a.clone().view(self.nl, 1, -1, 1, 1, 2))  # shape(nl,1,na,1,1,2)\n        self.m = nn.ModuleList(nn.Conv2d(x, self.no * self.na, 1) for x in ch)  # output conv\n\n    def forward(self, x):\n        z = []  # inference output\n        if self.export:\n            for i in range(self.nl):\n                x[i] = self.m[i](x[i])\n            return x\n        for i in range(self.nl):\n            x[i] = self.m[i](x[i])  # conv\n            bs, _, ny, nx = x[i].shape  # x(bs,255,20,20) to x(bs,3,20,20,85)\n            x[i] = x[i].view(bs, self.na, self.no, ny, nx).permute(0, 1, 3, 4, 2).contiguous()\n\n            if not self.training:  # inference\n                if self.grid[i].shape[2:4] != x[i].shape[2:4]:\n                    self.grid[i] = self._make_grid(nx, ny).to(x[i].device)\n\n                y = torch.full_like(x[i], 0)\n                y[..., [0, 1, 2, 3, 4, 15]] = x[i][..., [0, 1, 2, 3, 4, 15]].sigmoid()\n                y[..., 5:15] = x[i][..., 5:15]\n\n                y[..., 0:2] = (y[..., 0:2] * 2.0 - 0.5 + self.grid[i].to(x[i].device)) * self.stride[i]  # xy\n                y[..., 2:4] = (y[..., 2:4] * 2) ** 2 * self.anchor_grid[i]  # wh\n\n                y[..., 5:7] = (\n                    y[..., 5:7] * self.anchor_grid[i] + self.grid[i].to(x[i].device) * self.stride[i]\n                )  # landmark x1 y1\n                y[..., 7:9] = (\n                    y[..., 7:9] * self.anchor_grid[i] + self.grid[i].to(x[i].device) * self.stride[i]\n                )  # landmark x2 y2\n                y[..., 9:11] = (\n                    y[..., 9:11] * self.anchor_grid[i] + self.grid[i].to(x[i].device) * self.stride[i]\n                )  # landmark x3 y3\n                y[..., 11:13] = (\n                    y[..., 11:13] * self.anchor_grid[i] + self.grid[i].to(x[i].device) * self.stride[i]\n                )  # landmark x4 y4\n                y[..., 13:15] = (\n                    y[..., 13:15] * self.anchor_grid[i] + self.grid[i].to(x[i].device) * self.stride[i]\n                )  # landmark x5 y5\n\n                z.append(y.view(bs, -1, self.no))\n\n        return x if self.training else (torch.cat(z, 1), x)\n\n    @staticmethod\n    def _make_grid(nx=20, ny=20):\n        # yv, xv = torch.meshgrid([torch.arange(ny), torch.arange(nx)], indexing=\"ij\") # for pytorch>=1.10\n        yv, xv = torch.meshgrid([torch.arange(ny), torch.arange(nx)])\n        return torch.stack((xv, yv), 2).view((1, 1, ny, nx, 2)).float()\n\n\nclass Model(nn.Module):\n    def __init__(self, cfg=\"yolov5s.yaml\", ch=3, nc=None):  # model, input channels, number of classes\n        super().__init__()\n        self.yaml_file = Path(cfg).name\n        with Path(cfg).open(encoding=\"utf8\") as f:\n            self.yaml = yaml.safe_load(f)  # model dict\n\n        # Define model\n        ch = self.yaml[\"ch\"] = self.yaml.get(\"ch\", ch)  # input channels\n        if nc and nc != self.yaml[\"nc\"]:\n            self.yaml[\"nc\"] = nc  # override yaml value\n\n        self.model, self.save = parse_model(deepcopy(self.yaml), ch=[ch])  # model, savelist\n        self.names = [str(i) for i in range(self.yaml[\"nc\"])]  # default names\n\n        # Build strides, anchors\n        m = self.model[-1]  # Detect()\n        if isinstance(m, Detect):\n            s = 128  # 2x min stride\n            m.stride = torch.tensor([s / x.shape[-2] for x in self.forward(torch.zeros(1, ch, s, s))])  # forward\n            m.anchors /= m.stride.view(-1, 1, 1)\n            check_anchor_order(m)\n            self.stride = m.stride\n            self._initialize_biases()  # only run once\n\n    def forward(self, x):\n        return self.forward_once(x)  # single-scale inference, train\n\n    def forward_once(self, x):\n        y = []  # outputs\n        for m in self.model:\n            if m.f != -1:  # if not from previous layer\n                x = y[m.f] if isinstance(m.f, int) else [x if j == -1 else y[j] for j in m.f]  # from earlier layers\n\n            x = m(x)  # run\n            y.append(x if m.i in self.save else None)  # save output\n\n        return x\n\n    def _initialize_biases(self, cf=None):  # initialize biases into Detect(), cf is class frequency\n        # https://arxiv.org/abs/1708.02002 section 3.3\n        m = self.model[-1]  # Detect() module\n        for mi, s in zip(m.m, m.stride):  # from\n            b = mi.bias.view(m.na, -1)  # conv.bias(255) to (3,85)\n            b.data[:, 4] += math.log(8 / (640 / s) ** 2)  # obj (8 objects per 640 image)\n            b.data[:, 5:] += math.log(0.6 / (m.nc - 0.99)) if cf is None else torch.log(cf / cf.sum())  # cls\n            mi.bias = torch.nn.Parameter(b.view(-1), requires_grad=True)\n\n    def _print_biases(self):\n        m = self.model[-1]  # Detect() module\n        for mi in m.m:  # from\n            b = mi.bias.detach().view(m.na, -1).T  # conv.bias(255) to (3,85)\n            print((\"%6g Conv2d.bias:\" + \"%10.3g\" * 6) % (mi.weight.shape[1], *b[:5].mean(1).tolist(), b[5:].mean()))\n\n    def fuse(self):  # fuse model Conv2d() + BatchNorm2d() layers\n        print(\"Fusing layers... \")\n        for m in self.model.modules():\n            if isinstance(m, Conv) and hasattr(m, \"bn\"):\n                m.conv = fuse_conv_and_bn(m.conv, m.bn)  # update conv\n                delattr(m, \"bn\")  # remove batchnorm\n                m.forward = m.fuseforward  # update forward\n            elif type(m) is nn.Upsample:\n                m.recompute_scale_factor = None  # torch 1.11.0 compatibility\n        return self\n\n    def nms(self, mode=True):  # add or remove NMS module\n        present = isinstance(self.model[-1], NMS)  # last layer is NMS\n        if mode and not present:\n            print(\"Adding NMS... \")\n            m = NMS()  # module\n            m.f = -1  # from\n            m.i = self.model[-1].i + 1  # index\n            self.model.add_module(name=str(m.i), module=m)  # add\n            self.eval()\n        elif not mode and present:\n            print(\"Removing NMS... \")\n            self.model = self.model[:-1]  # remove\n        return self\n\n    def autoshape(self):  # add autoShape module\n        print(\"Adding autoShape... \")\n        m = AutoShape(self)  # wrap model\n        copy_attr(m, self, include=(\"yaml\", \"nc\", \"hyp\", \"names\", \"stride\"), exclude=())  # copy attributes\n        return m\n\n\ndef parse_model(d, ch):  # model_dict, input_channels(3)\n    anchors, nc, gd, gw = d[\"anchors\"], d[\"nc\"], d[\"depth_multiple\"], d[\"width_multiple\"]\n    na = (len(anchors[0]) // 2) if isinstance(anchors, list) else anchors  # number of anchors\n    no = na * (nc + 5)  # number of outputs = anchors * (classes + 5)\n\n    layers, save, c2 = [], [], ch[-1]  # layers, savelist, ch out\n    for i, (f, n, m, args) in enumerate(d[\"backbone\"] + d[\"head\"]):  # from, number, module, args\n        m = eval(m) if isinstance(m, str) else m  # eval strings\n        for j, a in enumerate(args):\n            try:\n                args[j] = eval(a) if isinstance(a, str) else a  # eval strings\n            except Exception:\n                pass\n\n        n = max(round(n * gd), 1) if n > 1 else n  # depth gain\n        if m in [\n            Conv,\n            Bottleneck,\n            SPP,\n            DWConv,\n            MixConv2d,\n            Focus,\n            CrossConv,\n            BottleneckCSP,\n            C3,\n            ShuffleV2Block,\n            StemBlock,\n        ]:\n            c1, c2 = ch[f], args[0]\n\n            c2 = make_divisible(c2 * gw, 8) if c2 != no else c2\n\n            args = [c1, c2, *args[1:]]\n            if m in [BottleneckCSP, C3]:\n                args.insert(2, n)\n                n = 1\n        elif m is nn.BatchNorm2d:\n            args = [ch[f]]\n        elif m is Concat:\n            c2 = sum(ch[-1 if x == -1 else x + 1] for x in f)\n        elif m is Detect:\n            args.append([ch[x + 1] for x in f])\n            if isinstance(args[1], int):  # number of anchors\n                args[1] = [list(range(args[1] * 2))] * len(f)\n        else:\n            c2 = ch[f]\n\n        m_ = nn.Sequential(*(m(*args) for _ in range(n))) if n > 1 else m(*args)  # module\n        t = str(m)[8:-2].replace(\"__main__.\", \"\")  # module type\n        np = sum(x.numel() for x in m_.parameters())  # number params\n        m_.i, m_.f, m_.type, m_.np = i, f, t, np  # attach index, 'from' index, type, number params\n        save.extend(x % i for x in ([f] if isinstance(f, int) else f) if x != -1)  # append to savelist\n        layers.append(m_)\n        ch.append(c2)\n    return nn.Sequential(*layers), sorted(save)\n"
  },
  {
    "path": "modules/facelib/detection/yolov5face/models/yolov5l.yaml",
    "content": "# parameters\nnc: 1  # number of classes\ndepth_multiple: 1.0  # model depth multiple\nwidth_multiple: 1.0  # layer channel multiple\n\n# anchors\nanchors:\n  - [4,5,  8,10,  13,16]  # P3/8\n  - [23,29,  43,55,  73,105]  # P4/16\n  - [146,217,  231,300,  335,433]  # P5/32\n\n# YOLOv5 backbone\nbackbone:\n  # [from, number, module, args]\n  [[-1, 1, StemBlock, [64, 3, 2]],  # 0-P1/2\n   [-1, 3, C3, [128]],\n   [-1, 1, Conv, [256, 3, 2]],      # 2-P3/8\n   [-1, 9, C3, [256]],\n   [-1, 1, Conv, [512, 3, 2]],      # 4-P4/16\n   [-1, 9, C3, [512]],\n   [-1, 1, Conv, [1024, 3, 2]],     # 6-P5/32\n   [-1, 1, SPP, [1024, [3,5,7]]],\n   [-1, 3, C3, [1024, False]],      # 8\n  ]\n\n# YOLOv5 head\nhead:\n  [[-1, 1, Conv, [512, 1, 1]],\n   [-1, 1, nn.Upsample, [None, 2, 'nearest']],\n   [[-1, 5], 1, Concat, [1]],  # cat backbone P4\n   [-1, 3, C3, [512, False]],  # 12\n\n   [-1, 1, Conv, [256, 1, 1]],\n   [-1, 1, nn.Upsample, [None, 2, 'nearest']],\n   [[-1, 3], 1, Concat, [1]],  # cat backbone P3\n   [-1, 3, C3, [256, False]],  # 16 (P3/8-small)\n\n   [-1, 1, Conv, [256, 3, 2]],\n   [[-1, 13], 1, Concat, [1]],  # cat head P4\n   [-1, 3, C3, [512, False]],  # 19 (P4/16-medium)\n\n   [-1, 1, Conv, [512, 3, 2]],\n   [[-1, 9], 1, Concat, [1]],  # cat head P5\n   [-1, 3, C3, [1024, False]],  # 22 (P5/32-large)\n\n   [[16, 19, 22], 1, Detect, [nc, anchors]],  # Detect(P3, P4, P5)\n  ]\n"
  },
  {
    "path": "modules/facelib/detection/yolov5face/models/yolov5n.yaml",
    "content": "# parameters\nnc: 1  # number of classes\ndepth_multiple: 1.0  # model depth multiple\nwidth_multiple: 1.0  # layer channel multiple\n\n# anchors\nanchors:\n  - [4,5,  8,10,  13,16]  # P3/8\n  - [23,29,  43,55,  73,105]  # P4/16\n  - [146,217,  231,300,  335,433]  # P5/32\n\n# YOLOv5 backbone\nbackbone:\n  # [from, number, module, args]\n  [[-1, 1, StemBlock, [32, 3, 2]],    # 0-P2/4\n   [-1, 1, ShuffleV2Block, [128, 2]], # 1-P3/8\n   [-1, 3, ShuffleV2Block, [128, 1]], # 2\n   [-1, 1, ShuffleV2Block, [256, 2]], # 3-P4/16\n   [-1, 7, ShuffleV2Block, [256, 1]], # 4\n   [-1, 1, ShuffleV2Block, [512, 2]], # 5-P5/32\n   [-1, 3, ShuffleV2Block, [512, 1]], # 6\n  ]\n\n# YOLOv5 head\nhead:\n  [[-1, 1, Conv, [128, 1, 1]],\n   [-1, 1, nn.Upsample, [None, 2, 'nearest']],\n   [[-1, 4], 1, Concat, [1]],  # cat backbone P4\n   [-1, 1, C3, [128, False]],  # 10\n\n   [-1, 1, Conv, [128, 1, 1]],\n   [-1, 1, nn.Upsample, [None, 2, 'nearest']],\n   [[-1, 2], 1, Concat, [1]],  # cat backbone P3\n   [-1, 1, C3, [128, False]],  # 14 (P3/8-small)\n\n   [-1, 1, Conv, [128, 3, 2]],\n   [[-1, 11], 1, Concat, [1]],  # cat head P4\n   [-1, 1, C3, [128, False]],  # 17 (P4/16-medium)\n\n   [-1, 1, Conv, [128, 3, 2]],\n   [[-1, 7], 1, Concat, [1]],  # cat head P5\n   [-1, 1, C3, [128, False]],  # 20 (P5/32-large)\n\n   [[14, 17, 20], 1, Detect, [nc, anchors]],  # Detect(P3, P4, P5)\n  ]\n"
  },
  {
    "path": "modules/facelib/detection/yolov5face/utils/__init__.py",
    "content": ""
  },
  {
    "path": "modules/facelib/detection/yolov5face/utils/autoanchor.py",
    "content": "# Auto-anchor utils\n\n\ndef check_anchor_order(m):\n    # Check anchor order against stride order for YOLOv5 Detect() module m, and correct if necessary\n    a = m.anchor_grid.prod(-1).view(-1)  # anchor area\n    da = a[-1] - a[0]  # delta a\n    ds = m.stride[-1] - m.stride[0]  # delta s\n    if da.sign() != ds.sign():  # same order\n        print(\"Reversing anchor order\")\n        m.anchors[:] = m.anchors.flip(0)\n        m.anchor_grid[:] = m.anchor_grid.flip(0)\n"
  },
  {
    "path": "modules/facelib/detection/yolov5face/utils/datasets.py",
    "content": "import cv2\nimport numpy as np\n\n\ndef letterbox(img, new_shape=(640, 640), color=(114, 114, 114), auto=True, scale_fill=False, scaleup=True):\n    # Resize image to a 32-pixel-multiple rectangle https://github.com/ultralytics/yolov3/issues/232\n    shape = img.shape[:2]  # current shape [height, width]\n    if isinstance(new_shape, int):\n        new_shape = (new_shape, new_shape)\n\n    # Scale ratio (new / old)\n    r = min(new_shape[0] / shape[0], new_shape[1] / shape[1])\n    if not scaleup:  # only scale down, do not scale up (for better test mAP)\n        r = min(r, 1.0)\n\n    # Compute padding\n    ratio = r, r  # width, height ratios\n    new_unpad = int(round(shape[1] * r)), int(round(shape[0] * r))\n    dw, dh = new_shape[1] - new_unpad[0], new_shape[0] - new_unpad[1]  # wh padding\n    if auto:  # minimum rectangle\n        dw, dh = np.mod(dw, 64), np.mod(dh, 64)  # wh padding\n    elif scale_fill:  # stretch\n        dw, dh = 0.0, 0.0\n        new_unpad = (new_shape[1], new_shape[0])\n        ratio = new_shape[1] / shape[1], new_shape[0] / shape[0]  # width, height ratios\n\n    dw /= 2  # divide padding into 2 sides\n    dh /= 2\n\n    if shape[::-1] != new_unpad:  # resize\n        img = cv2.resize(img, new_unpad, interpolation=cv2.INTER_LINEAR)\n    top, bottom = int(round(dh - 0.1)), int(round(dh + 0.1))\n    left, right = int(round(dw - 0.1)), int(round(dw + 0.1))\n    img = cv2.copyMakeBorder(img, top, bottom, left, right, cv2.BORDER_CONSTANT, value=color)  # add border\n    return img, ratio, (dw, dh)\n"
  },
  {
    "path": "modules/facelib/detection/yolov5face/utils/extract_ckpt.py",
    "content": "import torch\nimport sys\nsys.path.insert(0,'./facelib/detection/yolov5face')\nmodel = torch.load('facelib/detection/yolov5face/yolov5n-face.pt', map_location='cpu')['model']\ntorch.save(model.state_dict(),'weights/facelib/yolov5n-face.pth')\n"
  },
  {
    "path": "modules/facelib/detection/yolov5face/utils/general.py",
    "content": "import math\nimport time\n\nimport numpy as np\nimport torch\nimport torchvision\n\n\ndef check_img_size(img_size, s=32):\n    # Verify img_size is a multiple of stride s\n    new_size = make_divisible(img_size, int(s))  # ceil gs-multiple\n    # if new_size != img_size:\n    #     print(f\"WARNING: --img-size {img_size:g} must be multiple of max stride {s:g}, updating to {new_size:g}\")\n    return new_size\n\n\ndef make_divisible(x, divisor):\n    # Returns x evenly divisible by divisor\n    return math.ceil(x / divisor) * divisor\n\n\ndef xyxy2xywh(x):\n    # Convert nx4 boxes from [x1, y1, x2, y2] to [x, y, w, h] where xy1=top-left, xy2=bottom-right\n    y = x.clone() if isinstance(x, torch.Tensor) else np.copy(x)\n    y[:, 0] = (x[:, 0] + x[:, 2]) / 2  # x center\n    y[:, 1] = (x[:, 1] + x[:, 3]) / 2  # y center\n    y[:, 2] = x[:, 2] - x[:, 0]  # width\n    y[:, 3] = x[:, 3] - x[:, 1]  # height\n    return y\n\n\ndef xywh2xyxy(x):\n    # Convert nx4 boxes from [x, y, w, h] to [x1, y1, x2, y2] where xy1=top-left, xy2=bottom-right\n    y = x.clone() if isinstance(x, torch.Tensor) else np.copy(x)\n    y[:, 0] = x[:, 0] - x[:, 2] / 2  # top left x\n    y[:, 1] = x[:, 1] - x[:, 3] / 2  # top left y\n    y[:, 2] = x[:, 0] + x[:, 2] / 2  # bottom right x\n    y[:, 3] = x[:, 1] + x[:, 3] / 2  # bottom right y\n    return y\n\n\ndef scale_coords(img1_shape, coords, img0_shape, ratio_pad=None):\n    # Rescale coords (xyxy) from img1_shape to img0_shape\n    if ratio_pad is None:  # calculate from img0_shape\n        gain = min(img1_shape[0] / img0_shape[0], img1_shape[1] / img0_shape[1])  # gain  = old / new\n        pad = (img1_shape[1] - img0_shape[1] * gain) / 2, (img1_shape[0] - img0_shape[0] * gain) / 2  # wh padding\n    else:\n        gain = ratio_pad[0][0]\n        pad = ratio_pad[1]\n\n    coords[:, [0, 2]] -= pad[0]  # x padding\n    coords[:, [1, 3]] -= pad[1]  # y padding\n    coords[:, :4] /= gain\n    clip_coords(coords, img0_shape)\n    return coords\n\n\ndef clip_coords(boxes, img_shape):\n    # Clip bounding xyxy bounding boxes to image shape (height, width)\n    boxes[:, 0].clamp_(0, img_shape[1])  # x1\n    boxes[:, 1].clamp_(0, img_shape[0])  # y1\n    boxes[:, 2].clamp_(0, img_shape[1])  # x2\n    boxes[:, 3].clamp_(0, img_shape[0])  # y2\n\n\ndef box_iou(box1, box2):\n    # https://github.com/pytorch/vision/blob/master/torchvision/ops/boxes.py\n    \"\"\"\n    Return intersection-over-union (Jaccard index) of boxes.\n    Both sets of boxes are expected to be in (x1, y1, x2, y2) format.\n    Arguments:\n        box1 (Tensor[N, 4])\n        box2 (Tensor[M, 4])\n    Returns:\n        iou (Tensor[N, M]): the NxM matrix containing the pairwise\n            IoU values for every element in boxes1 and boxes2\n    \"\"\"\n\n    def box_area(box):\n        return (box[2] - box[0]) * (box[3] - box[1])\n\n    area1 = box_area(box1.T)\n    area2 = box_area(box2.T)\n\n    inter = (torch.min(box1[:, None, 2:], box2[:, 2:]) - torch.max(box1[:, None, :2], box2[:, :2])).clamp(0).prod(2)\n    return inter / (area1[:, None] + area2 - inter)\n\n\ndef non_max_suppression_face(prediction, conf_thres=0.25, iou_thres=0.45, classes=None, agnostic=False, labels=()):\n    \"\"\"Performs Non-Maximum Suppression (NMS) on inference results\n    Returns:\n         detections with shape: nx6 (x1, y1, x2, y2, conf, cls)\n    \"\"\"\n\n    nc = prediction.shape[2] - 15  # number of classes\n    xc = prediction[..., 4] > conf_thres  # candidates\n\n    # Settings\n    # (pixels) maximum box width and height\n    max_wh = 4096\n    time_limit = 10.0  # seconds to quit after\n    redundant = True  # require redundant detections\n    multi_label = nc > 1  # multiple labels per box (adds 0.5ms/img)\n    merge = False  # use merge-NMS\n\n    t = time.time()\n    output = [torch.zeros((0, 16), device=prediction.device)] * prediction.shape[0]\n    for xi, x in enumerate(prediction):  # image index, image inference\n        # Apply constraints\n        x = x[xc[xi]]  # confidence\n\n        # Cat apriori labels if autolabelling\n        if labels and len(labels[xi]):\n            label = labels[xi]\n            v = torch.zeros((len(label), nc + 15), device=x.device)\n            v[:, :4] = label[:, 1:5]  # box\n            v[:, 4] = 1.0  # conf\n            v[range(len(label)), label[:, 0].long() + 15] = 1.0  # cls\n            x = torch.cat((x, v), 0)\n\n        # If none remain process next image\n        if not x.shape[0]:\n            continue\n\n        # Compute conf\n        x[:, 15:] *= x[:, 4:5]  # conf = obj_conf * cls_conf\n\n        # Box (center x, center y, width, height) to (x1, y1, x2, y2)\n        box = xywh2xyxy(x[:, :4])\n\n        # Detections matrix nx6 (xyxy, conf, landmarks, cls)\n        if multi_label:\n            i, j = (x[:, 15:] > conf_thres).nonzero(as_tuple=False).T\n            x = torch.cat((box[i], x[i, j + 15, None], x[:, 5:15], j[:, None].float()), 1)\n        else:  # best class only\n            conf, j = x[:, 15:].max(1, keepdim=True)\n            x = torch.cat((box, conf, x[:, 5:15], j.float()), 1)[conf.view(-1) > conf_thres]\n\n        # Filter by class\n        if classes is not None:\n            x = x[(x[:, 5:6] == torch.tensor(classes, device=x.device)).any(1)]\n\n        # If none remain process next image\n        n = x.shape[0]  # number of boxes\n        if not n:\n            continue\n\n        # Batched NMS\n        c = x[:, 15:16] * (0 if agnostic else max_wh)  # classes\n        boxes, scores = x[:, :4] + c, x[:, 4]  # boxes (offset by class), scores\n        i = torchvision.ops.nms(boxes, scores, iou_thres)  # NMS\n\n        if merge and (1 < n < 3e3):  # Merge NMS (boxes merged using weighted mean)\n            # update boxes as boxes(i,4) = weights(i,n) * boxes(n,4)\n            iou = box_iou(boxes[i], boxes) > iou_thres  # iou matrix\n            weights = iou * scores[None]  # box weights\n            x[i, :4] = torch.mm(weights, x[:, :4]).float() / weights.sum(1, keepdim=True)  # merged boxes\n            if redundant:\n                i = i[iou.sum(1) > 1]  # require redundancy\n\n        output[xi] = x[i]\n        if (time.time() - t) > time_limit:\n            break  # time limit exceeded\n\n    return output\n\n\ndef non_max_suppression(prediction, conf_thres=0.25, iou_thres=0.45, classes=None, agnostic=False, labels=()):\n    \"\"\"Performs Non-Maximum Suppression (NMS) on inference results\n\n    Returns:\n         detections with shape: nx6 (x1, y1, x2, y2, conf, cls)\n    \"\"\"\n\n    nc = prediction.shape[2] - 5  # number of classes\n    xc = prediction[..., 4] > conf_thres  # candidates\n\n    # Settings\n    # (pixels) maximum box width and height\n    max_wh = 4096\n    time_limit = 10.0  # seconds to quit after\n    redundant = True  # require redundant detections\n    multi_label = nc > 1  # multiple labels per box (adds 0.5ms/img)\n    merge = False  # use merge-NMS\n\n    t = time.time()\n    output = [torch.zeros((0, 6), device=prediction.device)] * prediction.shape[0]\n    for xi, x in enumerate(prediction):  # image index, image inference\n        x = x[xc[xi]]  # confidence\n\n        # Cat apriori labels if autolabelling\n        if labels and len(labels[xi]):\n            label_id = labels[xi]\n            v = torch.zeros((len(label_id), nc + 5), device=x.device)\n            v[:, :4] = label_id[:, 1:5]  # box\n            v[:, 4] = 1.0  # conf\n            v[range(len(label_id)), label_id[:, 0].long() + 5] = 1.0  # cls\n            x = torch.cat((x, v), 0)\n\n        # If none remain process next image\n        if not x.shape[0]:\n            continue\n\n        # Compute conf\n        x[:, 5:] *= x[:, 4:5]  # conf = obj_conf * cls_conf\n\n        # Box (center x, center y, width, height) to (x1, y1, x2, y2)\n        box = xywh2xyxy(x[:, :4])\n\n        # Detections matrix nx6 (xyxy, conf, cls)\n        if multi_label:\n            i, j = (x[:, 5:] > conf_thres).nonzero(as_tuple=False).T\n            x = torch.cat((box[i], x[i, j + 5, None], j[:, None].float()), 1)\n        else:  # best class only\n            conf, j = x[:, 5:].max(1, keepdim=True)\n            x = torch.cat((box, conf, j.float()), 1)[conf.view(-1) > conf_thres]\n\n        # Filter by class\n        if classes is not None:\n            x = x[(x[:, 5:6] == torch.tensor(classes, device=x.device)).any(1)]\n\n        # Check shape\n        n = x.shape[0]  # number of boxes\n        if not n:  # no boxes\n            continue\n\n        x = x[x[:, 4].argsort(descending=True)]  # sort by confidence\n\n        # Batched NMS\n        c = x[:, 5:6] * (0 if agnostic else max_wh)  # classes\n        boxes, scores = x[:, :4] + c, x[:, 4]  # boxes (offset by class), scores\n        i = torchvision.ops.nms(boxes, scores, iou_thres)  # NMS\n        if merge and (1 < n < 3e3):  # Merge NMS (boxes merged using weighted mean)\n            # update boxes as boxes(i,4) = weights(i,n) * boxes(n,4)\n            iou = box_iou(boxes[i], boxes) > iou_thres  # iou matrix\n            weights = iou * scores[None]  # box weights\n            x[i, :4] = torch.mm(weights, x[:, :4]).float() / weights.sum(1, keepdim=True)  # merged boxes\n            if redundant:\n                i = i[iou.sum(1) > 1]  # require redundancy\n\n        output[xi] = x[i]\n        if (time.time() - t) > time_limit:\n            print(f\"WARNING: NMS time limit {time_limit}s exceeded\")\n            break  # time limit exceeded\n\n    return output\n\n\ndef scale_coords_landmarks(img1_shape, coords, img0_shape, ratio_pad=None):\n    # Rescale coords (xyxy) from img1_shape to img0_shape\n    if ratio_pad is None:  # calculate from img0_shape\n        gain = min(img1_shape[0] / img0_shape[0], img1_shape[1] / img0_shape[1])  # gain  = old / new\n        pad = (img1_shape[1] - img0_shape[1] * gain) / 2, (img1_shape[0] - img0_shape[0] * gain) / 2  # wh padding\n    else:\n        gain = ratio_pad[0][0]\n        pad = ratio_pad[1]\n\n    coords[:, [0, 2, 4, 6, 8]] -= pad[0]  # x padding\n    coords[:, [1, 3, 5, 7, 9]] -= pad[1]  # y padding\n    coords[:, :10] /= gain\n    coords[:, 0].clamp_(0, img0_shape[1])  # x1\n    coords[:, 1].clamp_(0, img0_shape[0])  # y1\n    coords[:, 2].clamp_(0, img0_shape[1])  # x2\n    coords[:, 3].clamp_(0, img0_shape[0])  # y2\n    coords[:, 4].clamp_(0, img0_shape[1])  # x3\n    coords[:, 5].clamp_(0, img0_shape[0])  # y3\n    coords[:, 6].clamp_(0, img0_shape[1])  # x4\n    coords[:, 7].clamp_(0, img0_shape[0])  # y4\n    coords[:, 8].clamp_(0, img0_shape[1])  # x5\n    coords[:, 9].clamp_(0, img0_shape[0])  # y5\n    return coords\n"
  },
  {
    "path": "modules/facelib/detection/yolov5face/utils/torch_utils.py",
    "content": "import torch\nfrom torch import nn\n\n\ndef fuse_conv_and_bn(conv, bn):\n    # Fuse convolution and batchnorm layers https://tehnokv.com/posts/fusing-batchnorm-and-conv/\n    fusedconv = (\n        nn.Conv2d(\n            conv.in_channels,\n            conv.out_channels,\n            kernel_size=conv.kernel_size,\n            stride=conv.stride,\n            padding=conv.padding,\n            groups=conv.groups,\n            bias=True,\n        )\n        .requires_grad_(False)\n        .to(conv.weight.device)\n    )\n\n    # prepare filters\n    w_conv = conv.weight.clone().view(conv.out_channels, -1)\n    w_bn = torch.diag(bn.weight.div(torch.sqrt(bn.eps + bn.running_var)))\n    fusedconv.weight.copy_(torch.mm(w_bn, w_conv).view(fusedconv.weight.size()))\n\n    # prepare spatial bias\n    b_conv = torch.zeros(conv.weight.size(0), device=conv.weight.device) if conv.bias is None else conv.bias\n    b_bn = bn.bias - bn.weight.mul(bn.running_mean).div(torch.sqrt(bn.running_var + bn.eps))\n    fusedconv.bias.copy_(torch.mm(w_bn, b_conv.reshape(-1, 1)).reshape(-1) + b_bn)\n\n    return fusedconv\n\n\ndef copy_attr(a, b, include=(), exclude=()):\n    # Copy attributes from b to a, options to only include [...] and to exclude [...]\n    for k, v in b.__dict__.items():\n        if (include and k not in include) or k.startswith(\"_\") or k in exclude:\n            continue\n\n        setattr(a, k, v)\n"
  },
  {
    "path": "modules/facelib/parsing/__init__.py",
    "content": "import os\nimport torch\n\nfrom ..utils import load_file_from_url\nfrom .bisenet import BiSeNet\nfrom .parsenet import ParseNet\nfrom modules import paths\n\n\nmodel_dir = os.path.join(paths.models_path, 'Codeformer')\n\n\ndef init_parsing_model(model_name='bisenet', half=False, device='cuda'):\n    if model_name == 'bisenet':\n        model = BiSeNet(num_class=19)\n        model_url = 'https://github.com/sczhou/CodeFormer/releases/download/v0.1.0/parsing_bisenet.pth'\n    elif model_name == 'parsenet':\n        model = ParseNet(in_size=512, out_size=512, parsing_ch=19)\n        model_url = 'https://github.com/sczhou/CodeFormer/releases/download/v0.1.0/parsing_parsenet.pth'\n    else:\n        raise NotImplementedError(f'{model_name} is not implemented.')\n\n    model_path = load_file_from_url(url=model_url, model_dir=model_dir, progress=True, file_name=None)\n    load_net = torch.load(model_path, map_location=lambda storage, loc: storage)\n    model.load_state_dict(load_net, strict=True)\n    model.eval()\n    model = model.to(device)\n    return model\n"
  },
  {
    "path": "modules/facelib/parsing/bisenet.py",
    "content": "import torch\nimport torch.nn as nn\nimport torch.nn.functional as F\n\nfrom .resnet import ResNet18\n\n\nclass ConvBNReLU(nn.Module):\n\n    def __init__(self, in_chan, out_chan, ks=3, stride=1, padding=1):\n        super(ConvBNReLU, self).__init__()\n        self.conv = nn.Conv2d(in_chan, out_chan, kernel_size=ks, stride=stride, padding=padding, bias=False)\n        self.bn = nn.BatchNorm2d(out_chan)\n\n    def forward(self, x):\n        x = self.conv(x)\n        x = F.relu(self.bn(x))\n        return x\n\n\nclass BiSeNetOutput(nn.Module):\n\n    def __init__(self, in_chan, mid_chan, num_class):\n        super(BiSeNetOutput, self).__init__()\n        self.conv = ConvBNReLU(in_chan, mid_chan, ks=3, stride=1, padding=1)\n        self.conv_out = nn.Conv2d(mid_chan, num_class, kernel_size=1, bias=False)\n\n    def forward(self, x):\n        feat = self.conv(x)\n        out = self.conv_out(feat)\n        return out, feat\n\n\nclass AttentionRefinementModule(nn.Module):\n\n    def __init__(self, in_chan, out_chan):\n        super(AttentionRefinementModule, self).__init__()\n        self.conv = ConvBNReLU(in_chan, out_chan, ks=3, stride=1, padding=1)\n        self.conv_atten = nn.Conv2d(out_chan, out_chan, kernel_size=1, bias=False)\n        self.bn_atten = nn.BatchNorm2d(out_chan)\n        self.sigmoid_atten = nn.Sigmoid()\n\n    def forward(self, x):\n        feat = self.conv(x)\n        atten = F.avg_pool2d(feat, feat.size()[2:])\n        atten = self.conv_atten(atten)\n        atten = self.bn_atten(atten)\n        atten = self.sigmoid_atten(atten)\n        out = torch.mul(feat, atten)\n        return out\n\n\nclass ContextPath(nn.Module):\n\n    def __init__(self):\n        super(ContextPath, self).__init__()\n        self.resnet = ResNet18()\n        self.arm16 = AttentionRefinementModule(256, 128)\n        self.arm32 = AttentionRefinementModule(512, 128)\n        self.conv_head32 = ConvBNReLU(128, 128, ks=3, stride=1, padding=1)\n        self.conv_head16 = ConvBNReLU(128, 128, ks=3, stride=1, padding=1)\n        self.conv_avg = ConvBNReLU(512, 128, ks=1, stride=1, padding=0)\n\n    def forward(self, x):\n        feat8, feat16, feat32 = self.resnet(x)\n        h8, w8 = feat8.size()[2:]\n        h16, w16 = feat16.size()[2:]\n        h32, w32 = feat32.size()[2:]\n\n        avg = F.avg_pool2d(feat32, feat32.size()[2:])\n        avg = self.conv_avg(avg)\n        avg_up = F.interpolate(avg, (h32, w32), mode='nearest')\n\n        feat32_arm = self.arm32(feat32)\n        feat32_sum = feat32_arm + avg_up\n        feat32_up = F.interpolate(feat32_sum, (h16, w16), mode='nearest')\n        feat32_up = self.conv_head32(feat32_up)\n\n        feat16_arm = self.arm16(feat16)\n        feat16_sum = feat16_arm + feat32_up\n        feat16_up = F.interpolate(feat16_sum, (h8, w8), mode='nearest')\n        feat16_up = self.conv_head16(feat16_up)\n\n        return feat8, feat16_up, feat32_up  # x8, x8, x16\n\n\nclass FeatureFusionModule(nn.Module):\n\n    def __init__(self, in_chan, out_chan):\n        super(FeatureFusionModule, self).__init__()\n        self.convblk = ConvBNReLU(in_chan, out_chan, ks=1, stride=1, padding=0)\n        self.conv1 = nn.Conv2d(out_chan, out_chan // 4, kernel_size=1, stride=1, padding=0, bias=False)\n        self.conv2 = nn.Conv2d(out_chan // 4, out_chan, kernel_size=1, stride=1, padding=0, bias=False)\n        self.relu = nn.ReLU(inplace=True)\n        self.sigmoid = nn.Sigmoid()\n\n    def forward(self, fsp, fcp):\n        fcat = torch.cat([fsp, fcp], dim=1)\n        feat = self.convblk(fcat)\n        atten = F.avg_pool2d(feat, feat.size()[2:])\n        atten = self.conv1(atten)\n        atten = self.relu(atten)\n        atten = self.conv2(atten)\n        atten = self.sigmoid(atten)\n        feat_atten = torch.mul(feat, atten)\n        feat_out = feat_atten + feat\n        return feat_out\n\n\nclass BiSeNet(nn.Module):\n\n    def __init__(self, num_class):\n        super(BiSeNet, self).__init__()\n        self.cp = ContextPath()\n        self.ffm = FeatureFusionModule(256, 256)\n        self.conv_out = BiSeNetOutput(256, 256, num_class)\n        self.conv_out16 = BiSeNetOutput(128, 64, num_class)\n        self.conv_out32 = BiSeNetOutput(128, 64, num_class)\n\n    def forward(self, x, return_feat=False):\n        h, w = x.size()[2:]\n        feat_res8, feat_cp8, feat_cp16 = self.cp(x)  # return res3b1 feature\n        feat_sp = feat_res8  # replace spatial path feature with res3b1 feature\n        feat_fuse = self.ffm(feat_sp, feat_cp8)\n\n        out, feat = self.conv_out(feat_fuse)\n        out16, feat16 = self.conv_out16(feat_cp8)\n        out32, feat32 = self.conv_out32(feat_cp16)\n\n        out = F.interpolate(out, (h, w), mode='bilinear', align_corners=True)\n        out16 = F.interpolate(out16, (h, w), mode='bilinear', align_corners=True)\n        out32 = F.interpolate(out32, (h, w), mode='bilinear', align_corners=True)\n\n        if return_feat:\n            feat = F.interpolate(feat, (h, w), mode='bilinear', align_corners=True)\n            feat16 = F.interpolate(feat16, (h, w), mode='bilinear', align_corners=True)\n            feat32 = F.interpolate(feat32, (h, w), mode='bilinear', align_corners=True)\n            return out, out16, out32, feat, feat16, feat32\n        else:\n            return out, out16, out32\n"
  },
  {
    "path": "modules/facelib/parsing/parsenet.py",
    "content": "\"\"\"Modified from https://github.com/chaofengc/PSFRGAN\n\"\"\"\nimport numpy as np\nimport torch.nn as nn\nfrom torch.nn import functional as F\n\n\nclass NormLayer(nn.Module):\n    \"\"\"Normalization Layers.\n\n    Args:\n        channels: input channels, for batch norm and instance norm.\n        input_size: input shape without batch size, for layer norm.\n    \"\"\"\n\n    def __init__(self, channels, normalize_shape=None, norm_type='bn'):\n        super(NormLayer, self).__init__()\n        norm_type = norm_type.lower()\n        self.norm_type = norm_type\n        if norm_type == 'bn':\n            self.norm = nn.BatchNorm2d(channels, affine=True)\n        elif norm_type == 'in':\n            self.norm = nn.InstanceNorm2d(channels, affine=False)\n        elif norm_type == 'gn':\n            self.norm = nn.GroupNorm(32, channels, affine=True)\n        elif norm_type == 'pixel':\n            self.norm = lambda x: F.normalize(x, p=2, dim=1)\n        elif norm_type == 'layer':\n            self.norm = nn.LayerNorm(normalize_shape)\n        elif norm_type == 'none':\n            self.norm = lambda x: x * 1.0\n        else:\n            assert 1 == 0, f'Norm type {norm_type} not support.'\n\n    def forward(self, x, ref=None):\n        if self.norm_type == 'spade':\n            return self.norm(x, ref)\n        else:\n            return self.norm(x)\n\n\nclass ReluLayer(nn.Module):\n    \"\"\"Relu Layer.\n\n    Args:\n        relu type: type of relu layer, candidates are\n            - ReLU\n            - LeakyReLU: default relu slope 0.2\n            - PRelu\n            - SELU\n            - none: direct pass\n    \"\"\"\n\n    def __init__(self, channels, relu_type='relu'):\n        super(ReluLayer, self).__init__()\n        relu_type = relu_type.lower()\n        if relu_type == 'relu':\n            self.func = nn.ReLU(True)\n        elif relu_type == 'leakyrelu':\n            self.func = nn.LeakyReLU(0.2, inplace=True)\n        elif relu_type == 'prelu':\n            self.func = nn.PReLU(channels)\n        elif relu_type == 'selu':\n            self.func = nn.SELU(True)\n        elif relu_type == 'none':\n            self.func = lambda x: x * 1.0\n        else:\n            assert 1 == 0, f'Relu type {relu_type} not support.'\n\n    def forward(self, x):\n        return self.func(x)\n\n\nclass ConvLayer(nn.Module):\n\n    def __init__(self,\n                 in_channels,\n                 out_channels,\n                 kernel_size=3,\n                 scale='none',\n                 norm_type='none',\n                 relu_type='none',\n                 use_pad=True,\n                 bias=True):\n        super(ConvLayer, self).__init__()\n        self.use_pad = use_pad\n        self.norm_type = norm_type\n        if norm_type in ['bn']:\n            bias = False\n\n        stride = 2 if scale == 'down' else 1\n\n        self.scale_func = lambda x: x\n        if scale == 'up':\n            self.scale_func = lambda x: nn.functional.interpolate(x, scale_factor=2, mode='nearest')\n\n        self.reflection_pad = nn.ReflectionPad2d(int(np.ceil((kernel_size - 1.) / 2)))\n        self.conv2d = nn.Conv2d(in_channels, out_channels, kernel_size, stride, bias=bias)\n\n        self.relu = ReluLayer(out_channels, relu_type)\n        self.norm = NormLayer(out_channels, norm_type=norm_type)\n\n    def forward(self, x):\n        out = self.scale_func(x)\n        if self.use_pad:\n            out = self.reflection_pad(out)\n        out = self.conv2d(out)\n        out = self.norm(out)\n        out = self.relu(out)\n        return out\n\n\nclass ResidualBlock(nn.Module):\n    \"\"\"\n    Residual block recommended in: http://torch.ch/blog/2016/02/04/resnets.html\n    \"\"\"\n\n    def __init__(self, c_in, c_out, relu_type='prelu', norm_type='bn', scale='none'):\n        super(ResidualBlock, self).__init__()\n\n        if scale == 'none' and c_in == c_out:\n            self.shortcut_func = lambda x: x\n        else:\n            self.shortcut_func = ConvLayer(c_in, c_out, 3, scale)\n\n        scale_config_dict = {'down': ['none', 'down'], 'up': ['up', 'none'], 'none': ['none', 'none']}\n        scale_conf = scale_config_dict[scale]\n\n        self.conv1 = ConvLayer(c_in, c_out, 3, scale_conf[0], norm_type=norm_type, relu_type=relu_type)\n        self.conv2 = ConvLayer(c_out, c_out, 3, scale_conf[1], norm_type=norm_type, relu_type='none')\n\n    def forward(self, x):\n        identity = self.shortcut_func(x)\n\n        res = self.conv1(x)\n        res = self.conv2(res)\n        return identity + res\n\n\nclass ParseNet(nn.Module):\n\n    def __init__(self,\n                 in_size=128,\n                 out_size=128,\n                 min_feat_size=32,\n                 base_ch=64,\n                 parsing_ch=19,\n                 res_depth=10,\n                 relu_type='LeakyReLU',\n                 norm_type='bn',\n                 ch_range=[32, 256]):\n        super().__init__()\n        self.res_depth = res_depth\n        act_args = {'norm_type': norm_type, 'relu_type': relu_type}\n        min_ch, max_ch = ch_range\n\n        ch_clip = lambda x: max(min_ch, min(x, max_ch))  # noqa: E731\n        min_feat_size = min(in_size, min_feat_size)\n\n        down_steps = int(np.log2(in_size // min_feat_size))\n        up_steps = int(np.log2(out_size // min_feat_size))\n\n        # =============== define encoder-body-decoder ====================\n        self.encoder = []\n        self.encoder.append(ConvLayer(3, base_ch, 3, 1))\n        head_ch = base_ch\n        for i in range(down_steps):\n            cin, cout = ch_clip(head_ch), ch_clip(head_ch * 2)\n            self.encoder.append(ResidualBlock(cin, cout, scale='down', **act_args))\n            head_ch = head_ch * 2\n\n        self.body = []\n        for i in range(res_depth):\n            self.body.append(ResidualBlock(ch_clip(head_ch), ch_clip(head_ch), **act_args))\n\n        self.decoder = []\n        for i in range(up_steps):\n            cin, cout = ch_clip(head_ch), ch_clip(head_ch // 2)\n            self.decoder.append(ResidualBlock(cin, cout, scale='up', **act_args))\n            head_ch = head_ch // 2\n\n        self.encoder = nn.Sequential(*self.encoder)\n        self.body = nn.Sequential(*self.body)\n        self.decoder = nn.Sequential(*self.decoder)\n        self.out_img_conv = ConvLayer(ch_clip(head_ch), 3)\n        self.out_mask_conv = ConvLayer(ch_clip(head_ch), parsing_ch)\n\n    def forward(self, x):\n        feat = self.encoder(x)\n        x = feat + self.body(feat)\n        x = self.decoder(x)\n        out_img = self.out_img_conv(x)\n        out_mask = self.out_mask_conv(x)\n        return out_mask, out_img\n"
  },
  {
    "path": "modules/facelib/parsing/resnet.py",
    "content": "import torch.nn as nn\nimport torch.nn.functional as F\n\n\ndef conv3x3(in_planes, out_planes, stride=1):\n    \"\"\"3x3 convolution with padding\"\"\"\n    return nn.Conv2d(in_planes, out_planes, kernel_size=3, stride=stride, padding=1, bias=False)\n\n\nclass BasicBlock(nn.Module):\n\n    def __init__(self, in_chan, out_chan, stride=1):\n        super(BasicBlock, self).__init__()\n        self.conv1 = conv3x3(in_chan, out_chan, stride)\n        self.bn1 = nn.BatchNorm2d(out_chan)\n        self.conv2 = conv3x3(out_chan, out_chan)\n        self.bn2 = nn.BatchNorm2d(out_chan)\n        self.relu = nn.ReLU(inplace=True)\n        self.downsample = None\n        if in_chan != out_chan or stride != 1:\n            self.downsample = nn.Sequential(\n                nn.Conv2d(in_chan, out_chan, kernel_size=1, stride=stride, bias=False),\n                nn.BatchNorm2d(out_chan),\n            )\n\n    def forward(self, x):\n        residual = self.conv1(x)\n        residual = F.relu(self.bn1(residual))\n        residual = self.conv2(residual)\n        residual = self.bn2(residual)\n\n        shortcut = x\n        if self.downsample is not None:\n            shortcut = self.downsample(x)\n\n        out = shortcut + residual\n        out = self.relu(out)\n        return out\n\n\ndef create_layer_basic(in_chan, out_chan, bnum, stride=1):\n    layers = [BasicBlock(in_chan, out_chan, stride=stride)]\n    for i in range(bnum - 1):\n        layers.append(BasicBlock(out_chan, out_chan, stride=1))\n    return nn.Sequential(*layers)\n\n\nclass ResNet18(nn.Module):\n\n    def __init__(self):\n        super(ResNet18, self).__init__()\n        self.conv1 = nn.Conv2d(3, 64, kernel_size=7, stride=2, padding=3, bias=False)\n        self.bn1 = nn.BatchNorm2d(64)\n        self.maxpool = nn.MaxPool2d(kernel_size=3, stride=2, padding=1)\n        self.layer1 = create_layer_basic(64, 64, bnum=2, stride=1)\n        self.layer2 = create_layer_basic(64, 128, bnum=2, stride=2)\n        self.layer3 = create_layer_basic(128, 256, bnum=2, stride=2)\n        self.layer4 = create_layer_basic(256, 512, bnum=2, stride=2)\n\n    def forward(self, x):\n        x = self.conv1(x)\n        x = F.relu(self.bn1(x))\n        x = self.maxpool(x)\n\n        x = self.layer1(x)\n        feat8 = self.layer2(x)  # 1/8\n        feat16 = self.layer3(feat8)  # 1/16\n        feat32 = self.layer4(feat16)  # 1/32\n        return feat8, feat16, feat32\n"
  },
  {
    "path": "modules/facelib/utils/__init__.py",
    "content": "from .face_utils import align_crop_face_landmarks, compute_increased_bbox, get_valid_bboxes, paste_face_back\nfrom .misc import img2tensor, load_file_from_url, download_pretrained_models, scandir\n\n__all__ = [\n    'align_crop_face_landmarks', 'compute_increased_bbox', 'get_valid_bboxes', 'load_file_from_url',\n    'download_pretrained_models', 'paste_face_back', 'img2tensor', 'scandir'\n]\n"
  },
  {
    "path": "modules/facelib/utils/face_restoration_helper.py",
    "content": "import cv2\nimport numpy as np\nimport os\nimport torch\nfrom torchvision.transforms.functional import normalize\n\nfrom ..detection import init_detection_model\nfrom ..parsing import init_parsing_model\nfrom ..utils.misc import img2tensor, imwrite, is_gray, bgr2gray\n\n\ndef get_largest_face(det_faces, h, w):\n\n    def get_location(val, length):\n        if val < 0:\n            return 0\n        elif val > length:\n            return length\n        else:\n            return val\n\n    face_areas = []\n    for det_face in det_faces:\n        left = get_location(det_face[0], w)\n        right = get_location(det_face[2], w)\n        top = get_location(det_face[1], h)\n        bottom = get_location(det_face[3], h)\n        face_area = (right - left) * (bottom - top)\n        face_areas.append(face_area)\n    largest_idx = face_areas.index(max(face_areas))\n    return det_faces[largest_idx], largest_idx\n\n\ndef get_center_face(det_faces, h=0, w=0, center=None):\n    if center is not None:\n        center = np.array(center)\n    else:\n        center = np.array([w / 2, h / 2])\n    center_dist = []\n    for det_face in det_faces:\n        face_center = np.array([(det_face[0] + det_face[2]) / 2, (det_face[1] + det_face[3]) / 2])\n        dist = np.linalg.norm(face_center - center)\n        center_dist.append(dist)\n    center_idx = center_dist.index(min(center_dist))\n    return det_faces[center_idx], center_idx\n\n\nclass FaceRestoreHelper(object):\n    \"\"\"Helper for the face restoration pipeline (base class).\"\"\"\n\n    def __init__(self,\n                 upscale_factor,\n                 face_size=512,\n                 crop_ratio=(1, 1),\n                 det_model='retinaface_resnet50',\n                 save_ext='png',\n                 template_3points=False,\n                 pad_blur=False,\n                 use_parse=False,\n                 device=None):\n        self.template_3points = template_3points  # improve robustness\n        self.upscale_factor = int(upscale_factor)\n        # the cropped face ratio based on the square face\n        self.crop_ratio = crop_ratio  # (h, w)\n        assert (self.crop_ratio[0] >= 1 and self.crop_ratio[1] >= 1), 'crop ration only supports >=1'\n        self.face_size = (int(face_size * self.crop_ratio[1]), int(face_size * self.crop_ratio[0]))\n\n        if self.template_3points:\n            self.face_template = np.array([[192, 240], [319, 240], [257, 371]])\n        else:\n            # standard 5 landmarks for FFHQ faces with 512 x 512\n            # facexlib\n            self.face_template = np.array([[192.98138, 239.94708], [318.90277, 240.1936], [256.63416, 314.01935],\n                                           [201.26117, 371.41043], [313.08905, 371.15118]])\n\n            # dlib: left_eye: 36:41  right_eye: 42:47  nose: 30,32,33,34  left mouth corner: 48  right mouth corner: 54\n            # self.face_template = np.array([[193.65928, 242.98541], [318.32558, 243.06108], [255.67984, 328.82894],\n            #                                 [198.22603, 372.82502], [313.91018, 372.75659]])\n\n\n        self.face_template = self.face_template * (face_size / 512.0)\n        if self.crop_ratio[0] > 1:\n            self.face_template[:, 1] += face_size * (self.crop_ratio[0] - 1) / 2\n        if self.crop_ratio[1] > 1:\n            self.face_template[:, 0] += face_size * (self.crop_ratio[1] - 1) / 2\n        self.save_ext = save_ext\n        self.pad_blur = pad_blur\n        if self.pad_blur is True:\n            self.template_3points = False\n\n        self.all_landmarks_5 = []\n        self.det_faces = []\n        self.affine_matrices = []\n        self.inverse_affine_matrices = []\n        self.cropped_faces = []\n        self.restored_faces = []\n        self.pad_input_imgs = []\n\n        if device is None:\n            self.device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')\n        else:\n            self.device = device\n\n        # init face detection model\n        self.face_det = init_detection_model(det_model, half=False, device=self.device)\n\n        # init face parsing model\n        self.use_parse = use_parse\n        self.face_parse = init_parsing_model(model_name='parsenet', device=self.device)\n\n    def set_upscale_factor(self, upscale_factor):\n        self.upscale_factor = upscale_factor\n\n    def read_image(self, img):\n        \"\"\"img can be image path or cv2 loaded image.\"\"\"\n        # self.input_img is Numpy array, (h, w, c), BGR, uint8, [0, 255]\n        if isinstance(img, str):\n            img = cv2.imread(img)\n\n        if np.max(img) > 256:  # 16-bit image\n            img = img / 65535 * 255\n        if len(img.shape) == 2:  # gray image\n            img = cv2.cvtColor(img, cv2.COLOR_GRAY2BGR)\n        elif img.shape[2] == 4:  # BGRA image with alpha channel\n            img = img[:, :, 0:3]\n\n        self.input_img = img\n        self.is_gray = is_gray(img, threshold=5)\n        if self.is_gray:\n            print('Grayscale input: True')\n\n        if min(self.input_img.shape[:2])<512:\n            f = 512.0/min(self.input_img.shape[:2])\n            self.input_img = cv2.resize(self.input_img, (0,0), fx=f, fy=f, interpolation=cv2.INTER_LINEAR)\n\n    def get_face_landmarks_5(self,\n                             only_keep_largest=False,\n                             only_center_face=False,\n                             resize=None,\n                             blur_ratio=0.01,\n                             eye_dist_threshold=None):\n        if resize is None:\n            scale = 1\n            input_img = self.input_img\n        else:\n            h, w = self.input_img.shape[0:2]\n            scale = resize / min(h, w)\n            scale = max(1, scale) # always scale up\n            h, w = int(h * scale), int(w * scale)\n            interp = cv2.INTER_AREA if scale < 1 else cv2.INTER_LINEAR\n            input_img = cv2.resize(self.input_img, (w, h), interpolation=interp)\n\n        with torch.no_grad():\n            bboxes = self.face_det.detect_faces(input_img)\n\n        if bboxes is None or bboxes.shape[0] == 0:\n            return 0\n        else:\n            bboxes = bboxes / scale\n\n        for bbox in bboxes:\n            # remove faces with too small eye distance: side faces or too small faces\n            eye_dist = np.linalg.norm([bbox[6] - bbox[8], bbox[7] - bbox[9]])\n            if eye_dist_threshold is not None and (eye_dist < eye_dist_threshold):\n                continue\n\n            if self.template_3points:\n                landmark = np.array([[bbox[i], bbox[i + 1]] for i in range(5, 11, 2)])\n            else:\n                landmark = np.array([[bbox[i], bbox[i + 1]] for i in range(5, 15, 2)])\n            self.all_landmarks_5.append(landmark)\n            self.det_faces.append(bbox[0:5])\n\n        if len(self.det_faces) == 0:\n            return 0\n        if only_keep_largest:\n            h, w, _ = self.input_img.shape\n            self.det_faces, largest_idx = get_largest_face(self.det_faces, h, w)\n            self.all_landmarks_5 = [self.all_landmarks_5[largest_idx]]\n        elif only_center_face:\n            h, w, _ = self.input_img.shape\n            self.det_faces, center_idx = get_center_face(self.det_faces, h, w)\n            self.all_landmarks_5 = [self.all_landmarks_5[center_idx]]\n\n        # pad blurry images\n        if self.pad_blur:\n            self.pad_input_imgs = []\n            for landmarks in self.all_landmarks_5:\n                # get landmarks\n                eye_left = landmarks[0, :]\n                eye_right = landmarks[1, :]\n                eye_avg = (eye_left + eye_right) * 0.5\n                mouth_avg = (landmarks[3, :] + landmarks[4, :]) * 0.5\n                eye_to_eye = eye_right - eye_left\n                eye_to_mouth = mouth_avg - eye_avg\n\n                # Get the oriented crop rectangle\n                # x: half width of the oriented crop rectangle\n                x = eye_to_eye - np.flipud(eye_to_mouth) * [-1, 1]\n                #  - np.flipud(eye_to_mouth) * [-1, 1]: rotate 90 clockwise\n                # norm with the hypotenuse: get the direction\n                x /= np.hypot(*x)  # get the hypotenuse of a right triangle\n                rect_scale = 1.5\n                x *= max(np.hypot(*eye_to_eye) * 2.0 * rect_scale, np.hypot(*eye_to_mouth) * 1.8 * rect_scale)\n                # y: half height of the oriented crop rectangle\n                y = np.flipud(x) * [-1, 1]\n\n                # c: center\n                c = eye_avg + eye_to_mouth * 0.1\n                # quad: (left_top, left_bottom, right_bottom, right_top)\n                quad = np.stack([c - x - y, c - x + y, c + x + y, c + x - y])\n                # qsize: side length of the square\n                qsize = np.hypot(*x) * 2\n                border = max(int(np.rint(qsize * 0.1)), 3)\n\n                # get pad\n                # pad: (width_left, height_top, width_right, height_bottom)\n                pad = (int(np.floor(min(quad[:, 0]))), int(np.floor(min(quad[:, 1]))), int(np.ceil(max(quad[:, 0]))),\n                       int(np.ceil(max(quad[:, 1]))))\n                pad = [\n                    max(-pad[0] + border, 1),\n                    max(-pad[1] + border, 1),\n                    max(pad[2] - self.input_img.shape[0] + border, 1),\n                    max(pad[3] - self.input_img.shape[1] + border, 1)\n                ]\n\n                if max(pad) > 1:\n                    # pad image\n                    pad_img = np.pad(self.input_img, ((pad[1], pad[3]), (pad[0], pad[2]), (0, 0)), 'reflect')\n                    # modify landmark coords\n                    landmarks[:, 0] += pad[0]\n                    landmarks[:, 1] += pad[1]\n                    # blur pad images\n                    h, w, _ = pad_img.shape\n                    y, x, _ = np.ogrid[:h, :w, :1]\n                    mask = np.maximum(1.0 - np.minimum(np.float32(x) / pad[0],\n                                                       np.float32(w - 1 - x) / pad[2]),\n                                      1.0 - np.minimum(np.float32(y) / pad[1],\n                                                       np.float32(h - 1 - y) / pad[3]))\n                    blur = int(qsize * blur_ratio)\n                    if blur % 2 == 0:\n                        blur += 1\n                    blur_img = cv2.boxFilter(pad_img, 0, ksize=(blur, blur))\n                    # blur_img = cv2.GaussianBlur(pad_img, (blur, blur), 0)\n\n                    pad_img = pad_img.astype('float32')\n                    pad_img += (blur_img - pad_img) * np.clip(mask * 3.0 + 1.0, 0.0, 1.0)\n                    pad_img += (np.median(pad_img, axis=(0, 1)) - pad_img) * np.clip(mask, 0.0, 1.0)\n                    pad_img = np.clip(pad_img, 0, 255)  # float32, [0, 255]\n                    self.pad_input_imgs.append(pad_img)\n                else:\n                    self.pad_input_imgs.append(np.copy(self.input_img))\n\n        return len(self.all_landmarks_5)\n\n    def align_warp_face(self, save_cropped_path=None, border_mode='constant'):\n        \"\"\"Align and warp faces with face template.\n        \"\"\"\n        if self.pad_blur:\n            assert len(self.pad_input_imgs) == len(\n                self.all_landmarks_5), f'Mismatched samples: {len(self.pad_input_imgs)} and {len(self.all_landmarks_5)}'\n        for idx, landmark in enumerate(self.all_landmarks_5):\n            # use 5 landmarks to get affine matrix\n            # use cv2.LMEDS method for the equivalence to skimage transform\n            # ref: https://blog.csdn.net/yichxi/article/details/115827338\n            affine_matrix = cv2.estimateAffinePartial2D(landmark, self.face_template, method=cv2.LMEDS)[0]\n            self.affine_matrices.append(affine_matrix)\n            # warp and crop faces\n            if border_mode == 'constant':\n                border_mode = cv2.BORDER_CONSTANT\n            elif border_mode == 'reflect101':\n                border_mode = cv2.BORDER_REFLECT101\n            elif border_mode == 'reflect':\n                border_mode = cv2.BORDER_REFLECT\n            if self.pad_blur:\n                input_img = self.pad_input_imgs[idx]\n            else:\n                input_img = self.input_img\n            cropped_face = cv2.warpAffine(\n                input_img, affine_matrix, self.face_size, borderMode=border_mode, borderValue=(135, 133, 132))  # gray\n            self.cropped_faces.append(cropped_face)\n            # save the cropped face\n            if save_cropped_path is not None:\n                path = os.path.splitext(save_cropped_path)[0]\n                save_path = f'{path}_{idx:02d}.{self.save_ext}'\n                imwrite(cropped_face, save_path)\n\n    def get_inverse_affine(self, save_inverse_affine_path=None):\n        \"\"\"Get inverse affine matrix.\"\"\"\n        for idx, affine_matrix in enumerate(self.affine_matrices):\n            inverse_affine = cv2.invertAffineTransform(affine_matrix)\n            inverse_affine *= self.upscale_factor\n            self.inverse_affine_matrices.append(inverse_affine)\n            # save inverse affine matrices\n            if save_inverse_affine_path is not None:\n                path, _ = os.path.splitext(save_inverse_affine_path)\n                save_path = f'{path}_{idx:02d}.pth'\n                torch.save(inverse_affine, save_path)\n\n\n    def add_restored_face(self, face):\n        if self.is_gray:\n            face = bgr2gray(face) # convert img into grayscale\n        self.restored_faces.append(face)\n\n\n    def paste_faces_to_input_image(self, save_path=None, upsample_img=None, draw_box=False, face_upsampler=None):\n        h, w, _ = self.input_img.shape\n        h_up, w_up = int(h * self.upscale_factor), int(w * self.upscale_factor)\n\n        if upsample_img is None:\n            # simply resize the background\n            # upsample_img = cv2.resize(self.input_img, (w_up, h_up), interpolation=cv2.INTER_LANCZOS4)\n            upsample_img = cv2.resize(self.input_img, (w_up, h_up), interpolation=cv2.INTER_LINEAR)\n        else:\n            upsample_img = cv2.resize(upsample_img, (w_up, h_up), interpolation=cv2.INTER_LANCZOS4)\n\n        assert len(self.restored_faces) == len(\n            self.inverse_affine_matrices), ('length of restored_faces and affine_matrices are different.')\n\n        inv_mask_borders = []\n        for restored_face, inverse_affine in zip(self.restored_faces, self.inverse_affine_matrices):\n            if face_upsampler is not None:\n                restored_face = face_upsampler.enhance(restored_face, outscale=self.upscale_factor)[0]\n                inverse_affine /= self.upscale_factor\n                inverse_affine[:, 2] *= self.upscale_factor\n                face_size = (self.face_size[0]*self.upscale_factor, self.face_size[1]*self.upscale_factor)\n            else:\n                # Add an offset to inverse affine matrix, for more precise back alignment\n                if self.upscale_factor > 1:\n                    extra_offset = 0.5 * self.upscale_factor\n                else:\n                    extra_offset = 0\n                inverse_affine[:, 2] += extra_offset\n                face_size = self.face_size\n            inv_restored = cv2.warpAffine(restored_face, inverse_affine, (w_up, h_up))\n\n            # if draw_box or not self.use_parse:  # use square parse maps\n            #     mask = np.ones(face_size, dtype=np.float32)\n            #     inv_mask = cv2.warpAffine(mask, inverse_affine, (w_up, h_up))\n            #     # remove the black borders\n            #     inv_mask_erosion = cv2.erode(\n            #         inv_mask, np.ones((int(2 * self.upscale_factor), int(2 * self.upscale_factor)), np.uint8))\n            #     pasted_face = inv_mask_erosion[:, :, None] * inv_restored\n            #     total_face_area = np.sum(inv_mask_erosion)  # // 3\n            #     # add border\n            #     if draw_box:\n            #         h, w = face_size\n            #         mask_border = np.ones((h, w, 3), dtype=np.float32)\n            #         border = int(1400/np.sqrt(total_face_area))\n            #         mask_border[border:h-border, border:w-border,:] = 0\n            #         inv_mask_border = cv2.warpAffine(mask_border, inverse_affine, (w_up, h_up))\n            #         inv_mask_borders.append(inv_mask_border)\n            #     if not self.use_parse:\n            #         # compute the fusion edge based on the area of face\n            #         w_edge = int(total_face_area**0.5) // 20\n            #         erosion_radius = w_edge * 2\n            #         inv_mask_center = cv2.erode(inv_mask_erosion, np.ones((erosion_radius, erosion_radius), np.uint8))\n            #         blur_size = w_edge * 2\n            #         inv_soft_mask = cv2.GaussianBlur(inv_mask_center, (blur_size + 1, blur_size + 1), 0)\n            #         if len(upsample_img.shape) == 2:  # upsample_img is gray image\n            #             upsample_img = upsample_img[:, :, None]\n            #         inv_soft_mask = inv_soft_mask[:, :, None]\n\n            # always use square mask\n            mask = np.ones(face_size, dtype=np.float32)\n            inv_mask = cv2.warpAffine(mask, inverse_affine, (w_up, h_up))\n            # remove the black borders\n            inv_mask_erosion = cv2.erode(\n                inv_mask, np.ones((int(2 * self.upscale_factor), int(2 * self.upscale_factor)), np.uint8))\n            pasted_face = inv_mask_erosion[:, :, None] * inv_restored\n            total_face_area = np.sum(inv_mask_erosion)  # // 3\n            # add border\n            if draw_box:\n                h, w = face_size\n                mask_border = np.ones((h, w, 3), dtype=np.float32)\n                border = int(1400/np.sqrt(total_face_area))\n                mask_border[border:h-border, border:w-border,:] = 0\n                inv_mask_border = cv2.warpAffine(mask_border, inverse_affine, (w_up, h_up))\n                inv_mask_borders.append(inv_mask_border)\n            # compute the fusion edge based on the area of face\n            w_edge = int(total_face_area**0.5) // 20\n            erosion_radius = w_edge * 2\n            inv_mask_center = cv2.erode(inv_mask_erosion, np.ones((erosion_radius, erosion_radius), np.uint8))\n            blur_size = w_edge * 2\n            inv_soft_mask = cv2.GaussianBlur(inv_mask_center, (blur_size + 1, blur_size + 1), 0)\n            if len(upsample_img.shape) == 2:  # upsample_img is gray image\n                upsample_img = upsample_img[:, :, None]\n            inv_soft_mask = inv_soft_mask[:, :, None]\n\n            # parse mask\n            if self.use_parse:\n                # inference\n                face_input = cv2.resize(restored_face, (512, 512), interpolation=cv2.INTER_LINEAR)\n                face_input = img2tensor(face_input.astype('float32') / 255., bgr2rgb=True, float32=True)\n                normalize(face_input, (0.5, 0.5, 0.5), (0.5, 0.5, 0.5), inplace=True)\n                face_input = torch.unsqueeze(face_input, 0).to(self.device)\n                with torch.no_grad():\n                    out = self.face_parse(face_input)[0]\n                out = out.argmax(dim=1).squeeze().cpu().numpy()\n\n                parse_mask = np.zeros(out.shape)\n                MASK_COLORMAP = [0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 0, 0, 0]\n                for idx, color in enumerate(MASK_COLORMAP):\n                    parse_mask[out == idx] = color\n                #  blur the mask\n                parse_mask = cv2.GaussianBlur(parse_mask, (101, 101), 11)\n                parse_mask = cv2.GaussianBlur(parse_mask, (101, 101), 11)\n                # remove the black borders\n                thres = 10\n                parse_mask[:thres, :] = 0\n                parse_mask[-thres:, :] = 0\n                parse_mask[:, :thres] = 0\n                parse_mask[:, -thres:] = 0\n                parse_mask = parse_mask / 255.\n\n                parse_mask = cv2.resize(parse_mask, face_size)\n                parse_mask = cv2.warpAffine(parse_mask, inverse_affine, (w_up, h_up), flags=3)\n                inv_soft_parse_mask = parse_mask[:, :, None]\n                # pasted_face = inv_restored\n                fuse_mask = (inv_soft_parse_mask<inv_soft_mask).astype('int')\n                inv_soft_mask = inv_soft_parse_mask*fuse_mask + inv_soft_mask*(1-fuse_mask)\n\n            if len(upsample_img.shape) == 3 and upsample_img.shape[2] == 4:  # alpha channel\n                alpha = upsample_img[:, :, 3:]\n                upsample_img = inv_soft_mask * pasted_face + (1 - inv_soft_mask) * upsample_img[:, :, 0:3]\n                upsample_img = np.concatenate((upsample_img, alpha), axis=2)\n            else:\n                upsample_img = inv_soft_mask * pasted_face + (1 - inv_soft_mask) * upsample_img\n\n        if np.max(upsample_img) > 256:  # 16-bit image\n            upsample_img = upsample_img.astype(np.uint16)\n        else:\n            upsample_img = upsample_img.astype(np.uint8)\n\n        # draw bounding box\n        if draw_box:\n            # upsample_input_img = cv2.resize(input_img, (w_up, h_up))\n            img_color = np.ones([*upsample_img.shape], dtype=np.float32)\n            img_color[:,:,0] = 0\n            img_color[:,:,1] = 255\n            img_color[:,:,2] = 0\n            for inv_mask_border in inv_mask_borders:\n                upsample_img = inv_mask_border * img_color + (1 - inv_mask_border) * upsample_img\n                # upsample_input_img = inv_mask_border * img_color + (1 - inv_mask_border) * upsample_input_img\n\n        if save_path is not None:\n            path = os.path.splitext(save_path)[0]\n            save_path = f'{path}.{self.save_ext}'\n            imwrite(upsample_img, save_path)\n        return upsample_img\n\n    def clean_all(self):\n        self.all_landmarks_5 = []\n        self.restored_faces = []\n        self.affine_matrices = []\n        self.cropped_faces = []\n        self.inverse_affine_matrices = []\n        self.det_faces = []\n        self.pad_input_imgs = []\n"
  },
  {
    "path": "modules/facelib/utils/face_utils.py",
    "content": "import os\nimport cv2\nimport numpy as np\nimport torch\n\n\ndef compute_increased_bbox(bbox, increase_area, preserve_aspect=True):\n    left, top, right, bot = bbox\n    width = right - left\n    height = bot - top\n\n    if preserve_aspect:\n        width_increase = max(increase_area, ((1 + 2 * increase_area) * height - width) / (2 * width))\n        height_increase = max(increase_area, ((1 + 2 * increase_area) * width - height) / (2 * height))\n    else:\n        width_increase = height_increase = increase_area\n    left = int(left - width_increase * width)\n    top = int(top - height_increase * height)\n    right = int(right + width_increase * width)\n    bot = int(bot + height_increase * height)\n    return (left, top, right, bot)\n\n\ndef get_valid_bboxes(bboxes, h, w):\n    left = max(bboxes[0], 0)\n    top = max(bboxes[1], 0)\n    right = min(bboxes[2], w)\n    bottom = min(bboxes[3], h)\n    return (left, top, right, bottom)\n\n\ndef align_crop_face_landmarks(img,\n                              landmarks,\n                              output_size,\n                              transform_size=None,\n                              enable_padding=True,\n                              return_inverse_affine=False,\n                              shrink_ratio=(1, 1)):\n    \"\"\"Align and crop face with landmarks.\n\n    The output_size and transform_size are based on width. The height is\n    adjusted based on shrink_ratio_h/shring_ration_w.\n\n    Modified from:\n    https://github.com/NVlabs/ffhq-dataset/blob/master/download_ffhq.py\n\n    Args:\n        img (Numpy array): Input image.\n        landmarks (Numpy array): 5 or 68 or 98 landmarks.\n        output_size (int): Output face size.\n        transform_size (ing): Transform size. Usually the four time of\n            output_size.\n        enable_padding (float): Default: True.\n        shrink_ratio (float | tuple[float] | list[float]): Shring the whole\n            face for height and width (crop larger area). Default: (1, 1).\n\n    Returns:\n        (Numpy array): Cropped face.\n    \"\"\"\n    lm_type = 'retinaface_5'  # Options: dlib_5, retinaface_5\n\n    if isinstance(shrink_ratio, (float, int)):\n        shrink_ratio = (shrink_ratio, shrink_ratio)\n    if transform_size is None:\n        transform_size = output_size * 4\n\n    # Parse landmarks\n    lm = np.array(landmarks)\n    if lm.shape[0] == 5 and lm_type == 'retinaface_5':\n        eye_left = lm[0]\n        eye_right = lm[1]\n        mouth_avg = (lm[3] + lm[4]) * 0.5\n    elif lm.shape[0] == 5 and lm_type == 'dlib_5':\n        lm_eye_left = lm[2:4]\n        lm_eye_right = lm[0:2]\n        eye_left = np.mean(lm_eye_left, axis=0)\n        eye_right = np.mean(lm_eye_right, axis=0)\n        mouth_avg = lm[4]\n    elif lm.shape[0] == 68:\n        lm_eye_left = lm[36:42]\n        lm_eye_right = lm[42:48]\n        eye_left = np.mean(lm_eye_left, axis=0)\n        eye_right = np.mean(lm_eye_right, axis=0)\n        mouth_avg = (lm[48] + lm[54]) * 0.5\n    elif lm.shape[0] == 98:\n        lm_eye_left = lm[60:68]\n        lm_eye_right = lm[68:76]\n        eye_left = np.mean(lm_eye_left, axis=0)\n        eye_right = np.mean(lm_eye_right, axis=0)\n        mouth_avg = (lm[76] + lm[82]) * 0.5\n\n    eye_avg = (eye_left + eye_right) * 0.5\n    eye_to_eye = eye_right - eye_left\n    eye_to_mouth = mouth_avg - eye_avg\n\n    # Get the oriented crop rectangle\n    # x: half width of the oriented crop rectangle\n    x = eye_to_eye - np.flipud(eye_to_mouth) * [-1, 1]\n    #  - np.flipud(eye_to_mouth) * [-1, 1]: rotate 90 clockwise\n    # norm with the hypotenuse: get the direction\n    x /= np.hypot(*x)  # get the hypotenuse of a right triangle\n    rect_scale = 1\n    x *= max(np.hypot(*eye_to_eye) * 2.0 * rect_scale, np.hypot(*eye_to_mouth) * 1.8 * rect_scale)\n    # y: half height of the oriented crop rectangle\n    y = np.flipud(x) * [-1, 1]\n\n    x *= shrink_ratio[1]  # width\n    y *= shrink_ratio[0]  # height\n\n    # c: center\n    c = eye_avg + eye_to_mouth * 0.1\n    # quad: (left_top, left_bottom, right_bottom, right_top)\n    quad = np.stack([c - x - y, c - x + y, c + x + y, c + x - y])\n    # qsize: side length of the square\n    qsize = np.hypot(*x) * 2\n\n    quad_ori = np.copy(quad)\n    # Shrink, for large face\n    shrink = int(np.floor(qsize / output_size * 0.5))\n    if shrink > 1:\n        h, w = img.shape[0:2]\n        rsize = (int(np.rint(float(w) / shrink)), int(np.rint(float(h) / shrink)))\n        img = cv2.resize(img, rsize, interpolation=cv2.INTER_AREA)\n        quad /= shrink\n        qsize /= shrink\n\n    # Crop\n    h, w = img.shape[0:2]\n    border = max(int(np.rint(qsize * 0.1)), 3)\n    crop = (int(np.floor(min(quad[:, 0]))), int(np.floor(min(quad[:, 1]))), int(np.ceil(max(quad[:, 0]))),\n            int(np.ceil(max(quad[:, 1]))))\n    crop = (max(crop[0] - border, 0), max(crop[1] - border, 0), min(crop[2] + border, w), min(crop[3] + border, h))\n    if crop[2] - crop[0] < w or crop[3] - crop[1] < h:\n        img = img[crop[1]:crop[3], crop[0]:crop[2], :]\n        quad -= crop[0:2]\n\n    # Pad\n    # pad: (width_left, height_top, width_right, height_bottom)\n    h, w = img.shape[0:2]\n    pad = (int(np.floor(min(quad[:, 0]))), int(np.floor(min(quad[:, 1]))), int(np.ceil(max(quad[:, 0]))),\n           int(np.ceil(max(quad[:, 1]))))\n    pad = (max(-pad[0] + border, 0), max(-pad[1] + border, 0), max(pad[2] - w + border, 0), max(pad[3] - h + border, 0))\n    if enable_padding and max(pad) > border - 4:\n        pad = np.maximum(pad, int(np.rint(qsize * 0.3)))\n        img = np.pad(img, ((pad[1], pad[3]), (pad[0], pad[2]), (0, 0)), 'reflect')\n        h, w = img.shape[0:2]\n        y, x, _ = np.ogrid[:h, :w, :1]\n        mask = np.maximum(1.0 - np.minimum(np.float32(x) / pad[0],\n                                           np.float32(w - 1 - x) / pad[2]),\n                          1.0 - np.minimum(np.float32(y) / pad[1],\n                                           np.float32(h - 1 - y) / pad[3]))\n        blur = int(qsize * 0.02)\n        if blur % 2 == 0:\n            blur += 1\n        blur_img = cv2.boxFilter(img, 0, ksize=(blur, blur))\n\n        img = img.astype('float32')\n        img += (blur_img - img) * np.clip(mask * 3.0 + 1.0, 0.0, 1.0)\n        img += (np.median(img, axis=(0, 1)) - img) * np.clip(mask, 0.0, 1.0)\n        img = np.clip(img, 0, 255)  # float32, [0, 255]\n        quad += pad[:2]\n\n    # Transform use cv2\n    h_ratio = shrink_ratio[0] / shrink_ratio[1]\n    dst_h, dst_w = int(transform_size * h_ratio), transform_size\n    template = np.array([[0, 0], [0, dst_h], [dst_w, dst_h], [dst_w, 0]])\n    # use cv2.LMEDS method for the equivalence to skimage transform\n    # ref: https://blog.csdn.net/yichxi/article/details/115827338\n    affine_matrix = cv2.estimateAffinePartial2D(quad, template, method=cv2.LMEDS)[0]\n    cropped_face = cv2.warpAffine(\n        img, affine_matrix, (dst_w, dst_h), borderMode=cv2.BORDER_CONSTANT, borderValue=(135, 133, 132))  # gray\n\n    if output_size < transform_size:\n        cropped_face = cv2.resize(\n            cropped_face, (output_size, int(output_size * h_ratio)), interpolation=cv2.INTER_LINEAR)\n\n    if return_inverse_affine:\n        dst_h, dst_w = int(output_size * h_ratio), output_size\n        template = np.array([[0, 0], [0, dst_h], [dst_w, dst_h], [dst_w, 0]])\n        # use cv2.LMEDS method for the equivalence to skimage transform\n        # ref: https://blog.csdn.net/yichxi/article/details/115827338\n        affine_matrix = cv2.estimateAffinePartial2D(\n            quad_ori, np.array([[0, 0], [0, output_size], [dst_w, dst_h], [dst_w, 0]]), method=cv2.LMEDS)[0]\n        inverse_affine = cv2.invertAffineTransform(affine_matrix)\n    else:\n        inverse_affine = None\n    return cropped_face, inverse_affine\n\n\ndef paste_face_back(img, face, inverse_affine):\n    h, w = img.shape[0:2]\n    face_h, face_w = face.shape[0:2]\n    inv_restored = cv2.warpAffine(face, inverse_affine, (w, h))\n    mask = np.ones((face_h, face_w, 3), dtype=np.float32)\n    inv_mask = cv2.warpAffine(mask, inverse_affine, (w, h))\n    # remove the black borders\n    inv_mask_erosion = cv2.erode(inv_mask, np.ones((2, 2), np.uint8))\n    inv_restored_remove_border = inv_mask_erosion * inv_restored\n    total_face_area = np.sum(inv_mask_erosion) // 3\n    # compute the fusion edge based on the area of face\n    w_edge = int(total_face_area**0.5) // 20\n    erosion_radius = w_edge * 2\n    inv_mask_center = cv2.erode(inv_mask_erosion, np.ones((erosion_radius, erosion_radius), np.uint8))\n    blur_size = w_edge * 2\n    inv_soft_mask = cv2.GaussianBlur(inv_mask_center, (blur_size + 1, blur_size + 1), 0)\n    img = inv_soft_mask * inv_restored_remove_border + (1 - inv_soft_mask) * img\n    # float32, [0, 255]\n    return img\n"
  },
  {
    "path": "modules/facelib/utils/misc.py",
    "content": "import cv2\nimport os\nimport os.path as osp\nimport numpy as np\nfrom PIL import Image\nimport torch\nfrom torch.hub import download_url_to_file, get_dir\nfrom urllib.parse import urlparse\n# from basicsr.utils.download_util import download_file_from_google_drive\n\nROOT_DIR = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))\n\n\ndef download_pretrained_models(file_ids, save_path_root):\n    import gdown\n\n    os.makedirs(save_path_root, exist_ok=True)\n\n    for file_name, file_id in file_ids.items():\n        file_url = 'https://drive.google.com/uc?id='+file_id\n        save_path = osp.abspath(osp.join(save_path_root, file_name))\n        if osp.exists(save_path):\n            user_response = input(f'{file_name} already exist. Do you want to cover it? Y/N\\n')\n            if user_response.lower() == 'y':\n                print(f'Covering {file_name} to {save_path}')\n                gdown.download(file_url, save_path, quiet=False)\n                # download_file_from_google_drive(file_id, save_path)\n            elif user_response.lower() == 'n':\n                print(f'Skipping {file_name}')\n            else:\n                raise ValueError('Wrong input. Only accepts Y/N.')\n        else:\n            print(f'Downloading {file_name} to {save_path}')\n            gdown.download(file_url, save_path, quiet=False)\n            # download_file_from_google_drive(file_id, save_path)\n\n\ndef imwrite(img, file_path, params=None, auto_mkdir=True):\n    \"\"\"Write image to file.\n\n    Args:\n        img (ndarray): Image array to be written.\n        file_path (str): Image file path.\n        params (None or list): Same as opencv's :func:`imwrite` interface.\n        auto_mkdir (bool): If the parent folder of `file_path` does not exist,\n            whether to create it automatically.\n\n    Returns:\n        bool: Successful or not.\n    \"\"\"\n    if auto_mkdir:\n        dir_name = os.path.abspath(os.path.dirname(file_path))\n        os.makedirs(dir_name, exist_ok=True)\n    return cv2.imwrite(file_path, img, params)\n\n\ndef img2tensor(imgs, bgr2rgb=True, float32=True):\n    \"\"\"Numpy array to tensor.\n\n    Args:\n        imgs (list[ndarray] | ndarray): Input images.\n        bgr2rgb (bool): Whether to change bgr to rgb.\n        float32 (bool): Whether to change to float32.\n\n    Returns:\n        list[tensor] | tensor: Tensor images. If returned results only have\n            one element, just return tensor.\n    \"\"\"\n\n    def _totensor(img, bgr2rgb, float32):\n        if img.shape[2] == 3 and bgr2rgb:\n            if img.dtype == 'float64':\n                img = img.astype('float32')\n            img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)\n        img = torch.from_numpy(img.transpose(2, 0, 1))\n        if float32:\n            img = img.float()\n        return img\n\n    if isinstance(imgs, list):\n        return [_totensor(img, bgr2rgb, float32) for img in imgs]\n    else:\n        return _totensor(imgs, bgr2rgb, float32)\n\n\ndef load_file_from_url(url, model_dir=None, progress=True, file_name=None):\n    \"\"\"Ref:https://github.com/1adrianb/face-alignment/blob/master/face_alignment/utils.py\n    \"\"\"\n    if model_dir is None:\n        hub_dir = get_dir()\n        model_dir = os.path.join(hub_dir, 'checkpoints')\n\n    os.makedirs(os.path.join(ROOT_DIR, model_dir), exist_ok=True)\n\n    parts = urlparse(url)\n    filename = os.path.basename(parts.path)\n    if file_name is not None:\n        filename = file_name\n    cached_file = os.path.abspath(os.path.join(ROOT_DIR, model_dir, filename))\n    if not os.path.exists(cached_file):\n        print(f'Downloading: \"{url}\" to {cached_file}\\n')\n        download_url_to_file(url, cached_file, hash_prefix=None, progress=progress)\n    return cached_file\n\n\ndef scandir(dir_path, suffix=None, recursive=False, full_path=False):\n    \"\"\"Scan a directory to find the interested files.\n    Args:\n        dir_path (str): Path of the directory.\n        suffix (str | tuple(str), optional): File suffix that we are\n            interested in. Default: None.\n        recursive (bool, optional): If set to True, recursively scan the\n            directory. Default: False.\n        full_path (bool, optional): If set to True, include the dir_path.\n            Default: False.\n    Returns:\n        A generator for all the interested files with relative paths.\n    \"\"\"\n\n    if (suffix is not None) and not isinstance(suffix, (str, tuple)):\n        raise TypeError('\"suffix\" must be a string or tuple of strings')\n\n    root = dir_path\n\n    def _scandir(dir_path, suffix, recursive):\n        for entry in os.scandir(dir_path):\n            if not entry.name.startswith('.') and entry.is_file():\n                if full_path:\n                    return_path = entry.path\n                else:\n                    return_path = osp.relpath(entry.path, root)\n\n                if suffix is None:\n                    yield return_path\n                elif return_path.endswith(suffix):\n                    yield return_path\n            else:\n                if recursive:\n                    yield from _scandir(entry.path, suffix=suffix, recursive=recursive)\n                else:\n                    continue\n\n    return _scandir(dir_path, suffix=suffix, recursive=recursive)\n\n\ndef is_gray(img, threshold=10):\n    img = Image.fromarray(img)\n    if len(img.getbands()) == 1:\n        return True\n    img1 = np.asarray(img.getchannel(channel=0), dtype=np.int16)\n    img2 = np.asarray(img.getchannel(channel=1), dtype=np.int16)\n    img3 = np.asarray(img.getchannel(channel=2), dtype=np.int16)\n    diff1 = (img1 - img2).var()\n    diff2 = (img2 - img3).var()\n    diff3 = (img3 - img1).var()\n    diff_sum = (diff1 + diff2 + diff3) / 3.0\n    if diff_sum <= threshold:\n        return True\n    else:\n        return False\n\ndef rgb2gray(img, out_channel=3):\n    r, g, b = img[:,:,0], img[:,:,1], img[:,:,2]\n    gray = 0.2989 * r + 0.5870 * g + 0.1140 * b\n    if out_channel == 3:\n        gray = gray[:,:,np.newaxis].repeat(3, axis=2)\n    return gray\n\ndef bgr2gray(img, out_channel=3):\n    b, g, r = img[:,:,0], img[:,:,1], img[:,:,2]\n    gray = 0.2989 * r + 0.5870 * g + 0.1140 * b\n    if out_channel == 3:\n        gray = gray[:,:,np.newaxis].repeat(3, axis=2)\n    return gray\n"
  },
  {
    "path": "modules/files_cache.py",
    "content": "import itertools\nimport os\nfrom collections import UserDict\nfrom dataclasses import dataclass, field\nfrom typing import Callable, Dict, Iterator, List, Optional, Union\nfrom installer import log\n\n\ndo_cache_folders = os.environ.get('SD_NO_CACHE', None) is None\nclass Directory: # forward declaration\n    ...\n\nFilePathList = List[str]\nFilePathIterator = Iterator[str]\nDirectoryPathList = List[str]\nDirectoryPathIterator = Iterator[str]\nDirectoryList = List[Directory]\nDirectoryIterator = Iterator[Directory]\nDirectoryCollection = Dict[str, Directory]\nExtensionFilter = Callable\nExtensionList = list[str]\nRecursiveType = Union[bool,Callable]\n\n\ndef real_path(directory_path:str) -> Union[str, None]:\n    try:\n        return os.path.abspath(os.path.expanduser(directory_path))\n    except Exception:\n        pass\n    return None\n\n\n@dataclass(frozen=True)\nclass Directory(Directory): # pylint: disable=E0102\n    path: str = field(default_factory=str)\n    mtime: float = field(default_factory=float, init=False)\n    files: FilePathList = field(default_factory=list)\n    directories: DirectoryPathList = field(default_factory=list)\n\n    def __post_init__(self):\n        object.__setattr__(self, 'mtime', self.live_mtime)\n\n    @classmethod\n    def from_dict(cls, dict_object: dict) -> Directory:\n        directory = cls.__new__(cls)\n        object.__setattr__(directory, 'path', dict_object.get('path'))\n        object.__setattr__(directory, 'mtime', dict_object.get('mtime'))\n        object.__setattr__(directory, 'files', dict_object.get('files'))\n        object.__setattr__(directory, 'directories', dict_object.get('directories'))\n        return directory\n\n    def clear(self) -> None:\n        self._update(Directory.from_dict({\n            'path': None,\n            'mtime': float(),\n            'files': [],\n            'directories': []\n        }))\n\n    def update(self, source_directory: Directory) -> Directory:\n        if source_directory is not self:\n            self._update(source_directory)\n        return self\n\n    def _update(self, source:Directory) -> None:\n        assert not source.path or source.path == self.path, f'When updating a directory, the paths must match.  Attemped to update Directory `{self.path}` with `{source.path}`'\n        for dead_path in self.directories:\n            if dead_path not in source.directories:\n                delete_cached_directory(dead_path)\n        self.directories[:] = source.directories\n        self.files[:] = source.files\n        object.__setattr__(self, 'mtime', source.mtime)\n\n    @property\n    def exists(self) -> bool:\n        return self.path and os.path.exists(self.path)\n\n    @property\n    def is_directory(self) -> bool:\n        return self.exists and os.path.isdir(self.path)\n\n    @property\n    def live_mtime(self) -> float:\n        return os.path.getmtime(self.path) if self.is_directory else 0\n\n    @property\n    def is_stale(self) -> bool:\n        return not self.is_directory or self.mtime != self.live_mtime\n\n\nclass DirectoryCache(UserDict, DirectoryCollection):\n    def __delattr__(self, directory_path: str) -> None:\n        directory: Directory = get_directory(directory_path, fetch=False)\n        if directory:\n            map(delete_cached_directory, directory.directories)\n            directory.clear()\n        del self.data[directory_path]\n\n\ndef clean_directory(directory: Directory, /, recursive: RecursiveType=False) -> bool:\n    if not directory.is_directory:\n        is_clean = False\n        delete_cached_directory(directory.path)\n    else:\n        is_clean = not directory.is_stale\n        if not is_clean:\n            directory.update(fetch_directory(directory.path))\n        else:\n            for directory_path in directory.directories[:]:\n                try:\n                    recurse = recursive and (not callable(recursive) or recursive(directory.path))\n                    directory = get_directory(directory_path, fetch=recurse)\n                    if directory:\n                        if directory.is_directory:\n                            if recurse:\n                                is_clean = clean_directory(directory, recursive=recurse) and is_clean\n                            continue\n                        delete_cached_directory(directory_path)\n                    # If we had intended to fetch this directory, but didn't, that means it doesn't exist. Purge.\n                    if recurse:\n                        directory.directories.remove(directory_path)\n                    is_clean = False\n                except Exception:\n                    pass\n    return is_clean\n\n\ndef get_directory(directory_or_path: str, /, fetch: bool=True) -> Union[Directory, None]:\n    if isinstance(directory_or_path, Directory):\n        if directory_or_path.is_directory:\n            return directory_or_path\n        else:\n            directory_or_path = directory_or_path.path\n    directory_or_path = real_path(directory_or_path)\n    if not cache_folders.get(directory_or_path, None):\n        if fetch:\n            directory = fetch_directory(directory_path=directory_or_path)\n            if directory and do_cache_folders:\n                cache_folders[directory_or_path] = directory\n            return directory\n    else:\n        clean_directory(cache_folders[directory_or_path])\n    return cache_folders[directory_or_path] if directory_or_path in cache_folders else None\n\n\ndef fetch_directory(directory_path: str) -> Union[Directory, None]:\n    directory: Directory\n    for directory in _walk(directory_path, recurse=False):\n        return directory # The return is intentional, we get a generator, we only need the one\n    return None\n\n\ndef _walk(top, recurse:RecursiveType=True) -> Directory:\n    # reimplemented `path.walk()`\n    nondirs = []\n    walk_dirs = []\n    try:\n        scandir_it = os.scandir(top)\n    except OSError:\n        return\n    with scandir_it:\n        while True:\n            try:\n                entry = next(scandir_it)\n            except StopIteration:\n                break\n            if not entry.is_dir():\n                nondirs.append(entry.path)\n            else:\n                if entry.is_symlink() and not os.path.exists(entry.path):\n                    log.error(f'Files broken symlink: {entry.path}')\n                else:\n                    walk_dirs.append(entry.path)\n    yield Directory(top, nondirs, walk_dirs)\n    if recurse:\n        for new_path in walk_dirs:\n            if callable(recurse) and not recurse(new_path):\n                continue\n            yield from _walk(new_path, recurse=recurse)\n\n\ndef _cached_walk(top, recurse:RecursiveType=True) -> Directory:\n    top = get_directory(top)\n    if not top:\n        return\n    yield top\n    if recurse:\n        for child_directory in top.directories:\n            if os.path.basename(child_directory).startswith('models--'):\n                continue\n            if callable(recurse) and not recurse(child_directory):\n                continue\n            yield from _cached_walk(child_directory, recurse=recurse)\n\n\ndef walk(top, recurse:RecursiveType=True, cached=True) -> Directory:\n    yield from _cached_walk(top, recurse=recurse) if cached else _walk(top, recurse=recurse)\n\n\ndef delete_cached_directory(directory_path:str) -> bool:\n    global cache_folders # pylint: disable=W0602\n    if directory_path in cache_folders:\n        del cache_folders[directory_path]\n\n\ndef is_directory(dir_path:str) -> bool:\n    return dir_path and os.path.exists(dir_path) and os.path.isdir(dir_path)\n\n\ndef directory_mtime(directory_path:str, /, recursive:RecursiveType=True) -> float:\n    return float(max(0, *[directory.mtime for directory in get_directories(directory_path, recursive=recursive)]))\n\n\ndef unique_directories(directories:DirectoryPathList, /, recursive:RecursiveType=True) -> DirectoryPathIterator:\n    '''Ensure no empty, or duplicates'''\n    '''If we are going recursive, then directories that are children of other directories are redundant'''\n    ''' @todo this is incredibly inneficient.  the hit is small, but it is ugly, no? '''\n    directories = sorted(unique_paths(directories), reverse=True)\n    while directories:\n        directory = directories.pop()\n        yield directory\n        if not recursive:\n            continue\n        _directory = os.path.join(directory, '')\n        child_directory = None\n        while directories and directories[-1].startswith(_directory):\n            if not callable(recursive) or not child_directory:\n                directories.pop()\n                continue\n            child_directory = directories[-1][len(directory):]\n            if child_directory:\n                next_directory = _directory\n                if not callable(recursive):\n                    _remove_directory = next_directory\n                else:\n                    for sub_directory in child_directory.split(os.path.sep):\n                        next_directory = os.path.join(next_directory, sub_directory)\n                        if recursive(next_directory):\n                            _remove_directory = os.path.join(next_directory, '')\n                            break\n                while _remove_directory and directories:\n                    _d = directories.pop()\n                    if not directories[-1].startswith(_remove_directory):\n                        del _remove_directory\n\n\ndef unique_paths(directory_paths:DirectoryPathList) -> DirectoryPathIterator:\n    realpaths = (real_path(directory_path) for directory_path in filter(bool, directory_paths))\n    return {real_directory_path: True for real_directory_path in filter(bool, realpaths)}.keys()\n\n\ndef get_directories(*directory_paths: DirectoryPathList, fetch:bool=True, recursive:RecursiveType=True) -> DirectoryCollection:\n    directory_paths = unique_directories(directory_paths, recursive=recursive)\n    directories = (get_directory(directory_path, fetch=fetch) for directory_path in directory_paths)\n    return filter(bool, directories)\n\n\ndef directory_files(*directories_or_paths: Union[DirectoryPathList, DirectoryList], recursive: RecursiveType=True) -> FilePathIterator:\n    return itertools.chain.from_iterable(\n        itertools.chain(\n            directory_object.files,\n            []\n            if not recursive\n            else itertools.chain.from_iterable(\n                directory_files(directory, recursive=recursive)\n                for directory\n                in filter(\n                    bool,\n                    map(get_directory, filter(((bool if recursive else False) if not callable(recursive) else recursive), directory_object.directories))\n                )\n            )\n        )\n        for directory_object\n        in filter(bool, map(get_directory, directories_or_paths))\n    )\n\n\ndef extension_filter(ext_filter: Optional[ExtensionList]=None, ext_blacklist: Optional[ExtensionList]=None) -> ExtensionFilter:\n    if ext_filter:\n        ext_filter = [*map(str.upper, ext_filter)]\n    if ext_blacklist:\n        ext_blacklist = [*map(str.upper, ext_blacklist)]\n    def filter_functon(fp:str):\n        return (not ext_filter or any(fp.upper().endswith(ew) for ew in ext_filter)) and (not ext_blacklist or not any(fp.upper().endswith(ew) for ew in ext_blacklist))\n    return filter_functon\n\n\ndef not_hidden(filepath: str) -> bool:\n    return not os.path.basename(filepath).startswith('.')\n\n\ndef filter_files(file_paths: FilePathList, ext_filter: Optional[ExtensionList]=None, ext_blacklist: Optional[ExtensionList]=None) -> FilePathIterator:\n    return filter(extension_filter(ext_filter, ext_blacklist), file_paths)\n\n\ndef list_files(*directory_paths:DirectoryPathList, ext_filter: Optional[ExtensionList]=None, ext_blacklist: Optional[ExtensionList]=None, recursive:RecursiveType=True) -> FilePathIterator:\n    return filter_files(itertools.chain.from_iterable(\n        directory_files(directory, recursive=recursive)\n        for directory in get_directories(*directory_paths, recursive=recursive)\n    ), ext_filter, ext_blacklist)\n\n\ncache_folders = DirectoryCache({})\n"
  },
  {
    "path": "modules/flash_attn_triton_amd/__init__.py",
    "content": ""
  },
  {
    "path": "modules/flash_attn_triton_amd/fwd_prefill.py",
    "content": "from typing import Literal, Optional, Union\nimport torch\nimport triton\nimport triton.language as tl\nfrom modules.flash_attn_triton_amd.utils import AUTOTUNE, compute_alibi_block, get_shapes_from_layout, get_strides_from_layout, is_cdna, is_rdna\n\n\n# Convenience function to load with optional boundary checks.\n# \"First\" is the major dim, \"second\" is the minor dim.\n@triton.jit\ndef load_fn(ptrs, offset_first, offset_second, boundary_first, boundary_second):\n    if offset_first is not None and offset_second is not None:\n        mask = (offset_first[:, None] < boundary_first) & \\\n               (offset_second[None, :] < boundary_second)\n        tensor = tl.load(ptrs, mask=mask, other=0.0)\n    elif offset_first is not None:\n        mask = offset_first[:, None] < boundary_first\n        tensor = tl.load(ptrs, mask=mask, other=0.0)\n    elif offset_second is not None:\n        mask = offset_second[None, :] < boundary_second\n        tensor = tl.load(ptrs, mask=mask, other=0.0)\n    else:\n        tensor = tl.load(ptrs)\n    return tensor\n\n\n@triton.jit\ndef _attn_fwd_inner(acc, l_i, m_i, q, k_ptrs, v_ptrs, bias_ptrs, stride_kn, stride_vk, stride_bn, stride_sn, start_m,\n                    actual_seqlen_k, actual_seqlen_q, dropout_p, philox_seed, philox_ptrs, sd_mask_ptrs, dropout_mask_ptrs,\n                    block_min, block_max, offs_n_causal, masked_blocks, n_extra_tokens, alibi_slope, # pylint: disable=unused-argument\n                    IS_CAUSAL: tl.constexpr, BLOCK_M: tl.constexpr, BLOCK_DMODEL: tl.constexpr, BLOCK_N: tl.constexpr,\n                    OFFS_M: tl.constexpr, OFFS_N: tl.constexpr, PRE_LOAD_V: tl.constexpr, MASK_STEPS: tl.constexpr,\n                    ENABLE_DROPOUT: tl.constexpr, PADDED_HEAD: tl.constexpr,\n                    ACTUAL_BLOCK_DMODEL: tl.constexpr, SM_SCALE: tl.constexpr, USE_ALIBI: tl.constexpr, USE_EXP2: tl.constexpr,\n                    RETURN_SCORES: tl.constexpr, ACCUMULATOR_TYPE):\n    if USE_EXP2:\n        RCP_LN2: tl.constexpr = 1.4426950408889634\n\n    # loop over k, v, and update accumulator\n    for start_n in range(block_min, block_max, BLOCK_N):\n        # For padded blocks, we will overrun the tensor size if\n        # we load all BLOCK_N. For others, the blocks are all within range.\n        if MASK_STEPS:\n            k_offs_n = start_n + tl.arange(0, BLOCK_N)\n        else:\n            k_offs_n = None\n        k_offs_k = None if not PADDED_HEAD else tl.arange(0, BLOCK_DMODEL)\n        k = load_fn(k_ptrs, k_offs_k, k_offs_n, ACTUAL_BLOCK_DMODEL, actual_seqlen_k)\n        if PRE_LOAD_V:\n            # We can use the same offsets as k, just with dims transposed.\n            v = load_fn(v_ptrs, k_offs_n, k_offs_k, actual_seqlen_k, ACTUAL_BLOCK_DMODEL)\n        qk = tl.zeros([BLOCK_M, BLOCK_N], dtype=ACCUMULATOR_TYPE)\n        # We start from end of seqlen_k so only the first iteration would need\n        # to be checked for padding if it is not a multiple of block_n\n        if MASK_STEPS:\n            # If this is the last block / iteration, we want to\n            # mask if the sequence length is not a multiple of block size\n            # a solution is to always do BLOCK_M // BLOCK_N + 1 steps if not is_modulo_mn.\n            # last step might get wasted but that is okay. check if this masking works For\n            # that case.\n            if start_n + BLOCK_N == block_max and n_extra_tokens != 0:\n                boundary_m = tl.full([BLOCK_M], actual_seqlen_k, dtype=tl.int32)\n                size_n = start_n + OFFS_N[None, :]\n                mask = size_n < boundary_m[:, None]\n                qk = tl.where(mask, qk, float(\"-inf\"))\n\n        # compute masks\n        q_mask = OFFS_M[:, None] < actual_seqlen_q\n        k_mask = (start_n + tl.arange(0, BLOCK_N))[None, :] < actual_seqlen_k\n        p_mask = q_mask & k_mask\n\n        # -- compute qk ----\n        qk += tl.dot(q, k)\n        qk_scaled = qk * SM_SCALE\n\n        if IS_CAUSAL:\n            causal_boundary = start_n + offs_n_causal\n            causal_mask = OFFS_M[:, None] >= causal_boundary[None, :]\n            qk_scaled = tl.where(causal_mask, qk_scaled, float(\"-inf\"))\n        if bias_ptrs is not None:\n            bias_offs_n = start_n + tl.arange(0, BLOCK_N) if MASK_STEPS else None\n            bias = load_fn(bias_ptrs, OFFS_M, bias_offs_n, actual_seqlen_q, actual_seqlen_k)\n            qk_scaled += bias\n\n        if USE_ALIBI:\n            # compute the global position of each token within the sequence\n            global_m_positions = start_m * BLOCK_M + tl.arange(0, BLOCK_M)\n            global_n_positions = start_n + tl.arange(0, BLOCK_N)\n            alibi_block = compute_alibi_block(alibi_slope, actual_seqlen_q, actual_seqlen_k, global_m_positions,\n                                              global_n_positions)\n            qk_scaled += alibi_block\n        # get max scores so far\n        m_ij = tl.maximum(m_i, tl.max(qk_scaled, 1))\n\n        # scale and subtract max\n        q_shifted = qk_scaled - m_ij[:, None]\n\n        # Compute scaled QK and softmax probabilities\n        if USE_EXP2:\n            p = tl.math.exp2(q_shifted * RCP_LN2)\n        else:\n            p = tl.math.exp(q_shifted)\n\n        # CAVEAT: Must update l_ij before applying dropout\n        l_ij = tl.sum(p, 1)\n        if ENABLE_DROPOUT:\n            rng_output = tl.rand(philox_seed, philox_ptrs)\n            dropout_mask = rng_output > dropout_p\n\n            # return scores with negative values for dropped vals\n            sd_mask = tl.where(dropout_mask, p, -p)\n            tl.store(sd_mask_ptrs, sd_mask, mask=p_mask)\n\n            # apply dropout mask in place\n            p = tl.where(dropout_mask, p, 0.0)\n        elif RETURN_SCORES:\n            # NOTE: the returned score is not the same as the reference because we need to adjust as we find new maxes per block. We are not doing that\n            tl.store(sd_mask_ptrs, p, mask=p_mask)\n\n        # -- update output accumulator --\n        # alpha is an adjustment factor for acc and li as we loop and find new maxes\n        # store the diff in maxes to adjust acc and li as we discover new maxes\n        m_diff = m_i - m_ij\n        if USE_EXP2:\n            alpha = tl.math.exp2(m_diff * RCP_LN2)\n        else:\n            alpha = tl.math.exp(m_diff)\n        acc = acc * alpha[:, None]\n        if not PRE_LOAD_V:\n            v = load_fn(v_ptrs, k_offs_n, k_offs_k, actual_seqlen_k, ACTUAL_BLOCK_DMODEL)\n        # -- update m_i and l_i\n        l_i = l_i * alpha + l_ij\n        # update m_i and l_i\n        m_i = m_ij\n        acc += tl.dot(p.to(v.type.element_ty), v)\n        k_ptrs += BLOCK_N * stride_kn\n        v_ptrs += BLOCK_N * stride_vk\n        if bias_ptrs is not None:\n            bias_ptrs += BLOCK_N * stride_bn\n        if RETURN_SCORES:\n            sd_mask_ptrs += BLOCK_N * stride_sn\n\n        if ENABLE_DROPOUT:\n            dropout_mask_ptrs += BLOCK_N * stride_sn\n            philox_ptrs += BLOCK_N * stride_sn\n    return acc, l_i, m_i\n\n\ndef get_cdna_autotune_configs():\n    return [\n        triton.Config({'BLOCK_M': 128, 'BLOCK_N': 128, 'waves_per_eu': 2, 'PRE_LOAD_V': False}, num_stages=1,\n                      num_warps=4),\n        triton.Config({'BLOCK_M': 128, 'BLOCK_N': 64, 'waves_per_eu': 2, 'PRE_LOAD_V': False}, num_stages=1,\n                      num_warps=4),\n        triton.Config({'BLOCK_M': 128, 'BLOCK_N': 64, 'waves_per_eu': 3, 'PRE_LOAD_V': False}, num_stages=1,\n                      num_warps=4),\n        triton.Config({'BLOCK_M': 128, 'BLOCK_N': 64, 'waves_per_eu': 1, 'PRE_LOAD_V': False}, num_stages=1,\n                      num_warps=4),\n        triton.Config({'BLOCK_M': 128, 'BLOCK_N': 32, 'waves_per_eu': 2, 'PRE_LOAD_V': False}, num_stages=1,\n                      num_warps=4),\n        triton.Config({'BLOCK_M': 64, 'BLOCK_N': 64, 'waves_per_eu': 1, 'PRE_LOAD_V': False}, num_stages=1,\n                      num_warps=4),\n        # Fall-back config.\n        triton.Config({'BLOCK_M': 16, 'BLOCK_N': 16, 'waves_per_eu': 1, 'PRE_LOAD_V': False}, num_stages=1,\n                      num_warps=4),\n    ], ['IS_CAUSAL', 'dropout_p', 'MAX_SEQLENS_Q', 'MAX_SEQLENS_K', 'ACTUAL_BLOCK_DMODEL', 'IS_VARLEN', 'HQ', 'HK']\n\n\ndef get_rdna_autotune_configs():\n    return [\n        triton.Config({'BLOCK_M': 32, 'BLOCK_N': 32, 'waves_per_eu': 4, 'PRE_LOAD_V': False}, num_stages=1,\n                      num_warps=2),\n        triton.Config({'BLOCK_M': 32, 'BLOCK_N': 32, 'waves_per_eu': 2, 'PRE_LOAD_V': False}, num_stages=1,\n                      num_warps=2),\n        triton.Config({'BLOCK_M': 32, 'BLOCK_N': 16, 'waves_per_eu': 4, 'PRE_LOAD_V': False}, num_stages=1,\n                      num_warps=2),\n        triton.Config({'BLOCK_M': 32, 'BLOCK_N': 16, 'waves_per_eu': 2, 'PRE_LOAD_V': False}, num_stages=1,\n                      num_warps=2),\n        triton.Config({'BLOCK_M': 16, 'BLOCK_N': 16, 'waves_per_eu': 4, 'PRE_LOAD_V': False}, num_stages=1,\n                      num_warps=2),\n        triton.Config({'BLOCK_M': 16, 'BLOCK_N': 16, 'waves_per_eu': 2, 'PRE_LOAD_V': False}, num_stages=1,\n                      num_warps=2),\n        # Fall-back config.\n        triton.Config({'BLOCK_M': 16, 'BLOCK_N': 16, 'waves_per_eu': 1, 'PRE_LOAD_V': False}, num_stages=1,\n                      num_warps=2),\n    ], ['IS_CAUSAL', 'dropout_p', 'MAX_SEQLENS_Q', 'MAX_SEQLENS_K', 'ACTUAL_BLOCK_DMODEL', 'IS_VARLEN', 'HQ', 'HK']\n\n\ndef get_autotune_configs():\n    if AUTOTUNE:\n        if is_rdna():\n            return get_rdna_autotune_configs()\n        elif is_cdna():\n            return get_cdna_autotune_configs()\n        else:\n            raise ValueError(\"Unknown Device Type\")\n    else:\n        return [\n            triton.Config(\n                {\"BLOCK_M\": 64, \"BLOCK_N\": 64, \"waves_per_eu\": 1, \"PRE_LOAD_V\": False},\n                num_stages=1,\n                num_warps=4,\n            ),\n        ], [\n            \"IS_CAUSAL\",\n            \"dropout_p\",\n            \"MAX_SEQLENS_Q\",\n            \"MAX_SEQLENS_K\",\n            \"ACTUAL_BLOCK_DMODEL\",\n            \"IS_VARLEN\",\n            \"HQ\",\n            \"HK\",\n        ]\n\n\nautotune_configs, autotune_keys = get_autotune_configs()\n\n@triton.autotune(\n    configs=autotune_configs,\n    key=autotune_keys,\n    # use_cuda_graph=True,\n)\n@triton.jit\ndef attn_fwd(Q, K, V, bias, Cache_seqlens, Cache_batch_idx, # pylint: disable=unused-argument\n             SM_SCALE: tl.constexpr, LSE, Out, stride_qz, stride_qh, stride_qm, stride_qk,\n             stride_kz, stride_kh, stride_kn, stride_kk, stride_vz, stride_vh, stride_vk, stride_vn,\n             stride_oz, stride_oh, stride_om, stride_on, stride_bz, stride_bh, stride_bm, stride_bn, stride_az, stride_ah, # pylint: disable=unused-argument\n             stride_sz, stride_sh, stride_sm, stride_sn, stride_lse_z, stride_lse_h, stride_lse_m, cu_seqlens_q, cu_seqlens_k,\n             dropout_p, philox_seed, philox_offset_base, sd_mask, dropout_mask, alibi_slopes, HQ: tl.constexpr,\n             HK: tl.constexpr, ACTUAL_BLOCK_DMODEL: tl.constexpr, MAX_SEQLENS_Q: tl.constexpr,\n             MAX_SEQLENS_K: tl.constexpr, IS_VARLEN: tl.constexpr, IS_INFERENCE: tl.constexpr,  IS_CAUSAL: tl.constexpr, BLOCK_M: tl.constexpr,\n             BLOCK_DMODEL: tl.constexpr, BLOCK_N: tl.constexpr, PRE_LOAD_V: tl.constexpr, USE_BIAS: tl.constexpr,\n             ENABLE_DROPOUT: tl.constexpr, RETURN_SCORES: tl.constexpr, USE_ALIBI: tl.constexpr, USE_EXP2: tl.constexpr):\n    # set params\n    ACCUMULATOR_TYPE = tl.float32\n\n    # compute offsets\n    start_m = tl.program_id(0)\n    off_h_q = tl.program_id(1)\n    off_z = tl.program_id(2)\n    offs_m = start_m * BLOCK_M + tl.arange(0, BLOCK_M)\n    offs_n = tl.arange(0, BLOCK_N)\n    offs_d = tl.arange(0, BLOCK_DMODEL)\n\n    # handle seqlen\n    if IS_VARLEN:\n        cu_seqlens_q_start = tl.load(cu_seqlens_q + off_z)\n        cu_seqlens_q_end = tl.load(cu_seqlens_q + off_z + 1)\n        seqlen_q = cu_seqlens_q_end - cu_seqlens_q_start\n\n        # we have a one-size-fits-all grid in id(0). Some seqlens might be too small for all start_m so for those we return early.\n        if start_m * BLOCK_M > seqlen_q:\n            return\n        cu_seqlens_k_start = tl.load(cu_seqlens_k + off_z)\n        cu_seqlens_k_end = tl.load(cu_seqlens_k + off_z + 1)\n        seqlen_k = cu_seqlens_k_end - cu_seqlens_k_start\n    elif IS_INFERENCE:\n        cu_seqlens_q_start = 0\n        cu_seqlens_k_start = 0\n        seqlen_q = MAX_SEQLENS_Q\n        seqlen_k = tl.load(Cache_seqlens + off_z)\n    else:\n        cu_seqlens_q_start = 0\n        cu_seqlens_k_start = 0\n        seqlen_q = MAX_SEQLENS_Q\n        seqlen_k = MAX_SEQLENS_K\n\n    # Now we compute whether we need to exit early due to causal masking.\n    # This is because for seqlen_q > seqlen_k, M rows of the attn scores\n    # are completely masked, resulting in 0s written to the output, and\n    # inf written to LSE. We don't need to do any GEMMs in this case.\n    # This block of code determines what N is, and if this WG is operating\n    # on those M rows.\n    n_blocks = tl.cdiv(seqlen_k, BLOCK_N)\n    if IS_CAUSAL:\n        # If seqlen_q == seqlen_k, the attn scores are a square matrix.\n        # If seqlen_q != seqlen_k, attn scores are rectangular which means\n        # the causal mask boundary is bottom right aligned, and ends at either\n        # the top edge (seqlen_q < seqlen_k) or left edge.\n        # This captures the decrease in n_blocks if we have a rectangular attn matrix\n        n_blocks_seqlen = tl.cdiv((start_m + 1) * BLOCK_M + seqlen_k - seqlen_q, BLOCK_N)\n        # This is what adjusts the block_max for the current WG, only\n        # if IS_CAUSAL. Otherwise we want to always iterate through all n_blocks\n        n_blocks = min(n_blocks, n_blocks_seqlen)\n        # If we have no blocks after adjusting for seqlen deltas, this WG is part of\n        # the blocks that are all 0. We exit early.\n        if n_blocks <= 0:\n            o_offset = Out + off_z * stride_oz + off_h_q * stride_oh + cu_seqlens_q_start * stride_om\n            o_ptrs = o_offset + offs_m[:, None] * stride_om + offs_d[None, :] * stride_on\n            acc = tl.zeros([BLOCK_M, BLOCK_DMODEL], dtype=Out.type.element_ty)\n            o_ptrs_mask = offs_m[:, None] < seqlen_q\n            # We still need to write 0s to the result\n            tl.store(o_ptrs, acc, mask=o_ptrs_mask)\n            # The tensor allocated for L is based on MAX_SEQLENS_Q as that is\n            # statically known.\n            l_offset = LSE + off_z * stride_lse_z + off_h_q * stride_lse_h + cu_seqlens_q_start * stride_lse_m\n            l_ptrs = l_offset + offs_m * stride_lse_m\n\n            l = tl.full([BLOCK_M], value=0.0, dtype=ACCUMULATOR_TYPE)\n\n            # mask_m_offsets = start_m + tl.arange(0, BLOCK_M)\n            # lse_mask = mask_m_offsets < causal_start_idx\n            # softmax_lse = tl.where(lse_mask, 0.0, softmax_lse)\n            l_ptrs_mask = offs_m < MAX_SEQLENS_Q\n            tl.store(l_ptrs, l, mask=l_ptrs_mask)\n            return\n\n    # If MQA / GQA, set the K and V head offsets appropriately.\n    GROUP_SIZE: tl.constexpr = HQ // HK\n    if GROUP_SIZE != 1:\n        off_h_k = off_h_q // GROUP_SIZE\n    else:\n        off_h_k = off_h_q\n\n    n_extra_tokens = 0\n    # print(\"n_extra_tokens:\", n_extra_tokens)\n    # print(\"seqlen_k:\", seqlen_k)\n    # print(\"BLOCK_N:\", BLOCK_N)\n    # return\n    if seqlen_k < BLOCK_N:\n        n_extra_tokens = BLOCK_N - seqlen_k\n    elif seqlen_k % BLOCK_N:\n        n_extra_tokens = seqlen_k % BLOCK_N\n    PADDED_HEAD: tl.constexpr = (ACTUAL_BLOCK_DMODEL != BLOCK_DMODEL)\n\n    # Compute pointers for all the tensors used in this kernel.\n    q_offset = Q + off_z * stride_qz + off_h_q * stride_qh + cu_seqlens_q_start * stride_qm\n    q_ptrs = q_offset + offs_m[:, None] * stride_qm + offs_d[None, :] * stride_qk\n    k_offset = K + off_z * stride_kz + off_h_k * stride_kh + cu_seqlens_k_start * stride_kn\n    k_ptrs = k_offset + offs_d[:, None] * stride_kk + offs_n[None, :] * stride_kn\n    v_offset = V + off_z * stride_vz + off_h_k * stride_vh + cu_seqlens_k_start * stride_vk\n    v_ptrs = v_offset + offs_n[:, None] * stride_vk + offs_d[None, :] * stride_vn\n    if USE_BIAS:\n        # Note: this might get large enough to overflow on some configs\n        bias_offset = off_h_q * stride_bh\n        bias_ptrs = bias + bias_offset + offs_m[:, None] * stride_bm + offs_n[None, :] * stride_bn\n    else:\n        bias_ptrs = None\n\n    if USE_ALIBI:\n        a_offset = off_z * stride_az + off_h_q * stride_ah\n        alibi_slope = tl.load(alibi_slopes + a_offset)\n    else:\n        alibi_slope = None\n\n    if RETURN_SCORES:\n        sd_mask_offset = sd_mask + off_z * stride_sz + off_h_q * stride_sh #+ cu_seqlens_q_start * stride_sm\n        sd_mask_ptrs = sd_mask_offset + offs_m[:, None] * stride_sm + offs_n[None, :] * stride_sn\n    else:\n        sd_mask_ptrs = None\n\n    if ENABLE_DROPOUT:\n        dropout_mask_offset = dropout_mask + off_z * stride_sz + off_h_q * stride_sh #+ cu_seqlens_q_start * stride_sm\n        dropout_mask_ptrs = dropout_mask_offset + offs_m[:, None] * stride_sm + offs_n[None, :] * stride_sn\n        batch_philox_offset = philox_offset_base + off_z * stride_sz + off_h_q * stride_sh #+ cu_seqlens_q_start * stride_sm\n        philox_ptrs = batch_philox_offset + offs_m[:, None] * stride_sm + offs_n[None, :] * stride_sn\n    else:\n        dropout_mask_ptrs = None\n        philox_ptrs = 0\n    # initialize pointer to m and l\n    m_i = tl.full([BLOCK_M], float(\"-inf\"), dtype=ACCUMULATOR_TYPE)\n    l_i = tl.full([BLOCK_M], 1.0, dtype=ACCUMULATOR_TYPE)\n    acc = tl.zeros([BLOCK_M, BLOCK_DMODEL], dtype=ACCUMULATOR_TYPE)\n    # Q is loaded once at the beginning and shared by all N blocks.\n    q_ptrs_mask = offs_m[:, None] < seqlen_q\n    if PADDED_HEAD:\n        q_ptrs_mask = q_ptrs_mask & (offs_d[None, :] < ACTUAL_BLOCK_DMODEL)\n    q = tl.load(q_ptrs, mask=q_ptrs_mask, other=0.0)\n\n    # Here we compute how many full and masked blocks we have.\n    padded_block_k = n_extra_tokens != 0\n    is_modulo_mn = not padded_block_k and (seqlen_q % BLOCK_M == 0)\n    if IS_CAUSAL:\n        # There are always at least BLOCK_M // BLOCK_N masked blocks.\n        # Additionally there might be one more due to dissimilar seqlens.\n        masked_blocks = BLOCK_M // BLOCK_N + (not is_modulo_mn)\n    else:\n        # Padding on Q does not need to be masked in the FA loop.\n        masked_blocks = padded_block_k\n    # if IS_CAUSAL, not is_modulo_mn does not always result in an additional block.\n    # In this case we might exceed n_blocks so pick the min.\n    masked_blocks = min(masked_blocks, n_blocks)\n    n_full_blocks = n_blocks - masked_blocks\n    block_min = 0\n    block_max = n_blocks * BLOCK_N\n    # Compute for full blocks. Here we set causal to false regardless of its actual\n    # value because there is no masking. Similarly we do not need padding.\n    if n_full_blocks > 0:\n        block_max = (n_blocks - masked_blocks) * BLOCK_N\n        acc, l_i, m_i = _attn_fwd_inner(acc, l_i, m_i, q, k_ptrs, v_ptrs, bias_ptrs, stride_kn, stride_vk, stride_bn, stride_sn,\n                                        start_m, seqlen_k, seqlen_q, dropout_p, philox_seed, philox_ptrs,\n                                        sd_mask_ptrs, dropout_mask_ptrs,\n                                        # _, _, offs_n_causal, masked_blocks, n_extra_tokens, _\n                                        block_min, block_max, 0, 0, 0, alibi_slope,\n                                        # IS_CAUSAL, ....\n                                        False, BLOCK_M, BLOCK_DMODEL, BLOCK_N, offs_m, offs_n,\n                                        # _, MASK_STEPS, ...\n                                        PRE_LOAD_V, False, ENABLE_DROPOUT, PADDED_HEAD,\n                                        ACTUAL_BLOCK_DMODEL, SM_SCALE, USE_ALIBI=USE_ALIBI, USE_EXP2=USE_EXP2, RETURN_SCORES=RETURN_SCORES, ACCUMULATOR_TYPE=ACCUMULATOR_TYPE)\n        block_min = block_max\n        block_max = n_blocks * BLOCK_N\n\n    tl.debug_barrier()\n    # Remaining blocks, if any, are full / not masked.\n    if masked_blocks > 0:\n        if IS_CAUSAL:\n            offs_n_causal = offs_n + (seqlen_q - seqlen_k)\n        else:\n            offs_n_causal = 0\n        k_ptrs += n_full_blocks * BLOCK_N * stride_kn\n        v_ptrs += n_full_blocks * BLOCK_N * stride_vk\n        if USE_BIAS:\n            bias_ptrs += n_full_blocks * BLOCK_N * stride_bn\n        if RETURN_SCORES:\n            sd_mask_ptrs += n_full_blocks * BLOCK_N * stride_sn\n        if ENABLE_DROPOUT:\n            dropout_mask_ptrs += n_full_blocks * BLOCK_N * stride_sn\n            philox_ptrs += n_full_blocks * BLOCK_N * stride_sn\n        acc, l_i, m_i = _attn_fwd_inner(acc, l_i, m_i, q, k_ptrs, v_ptrs, bias_ptrs, stride_kn, stride_vk, stride_bn, stride_sn,\n                                        start_m, seqlen_k, seqlen_q, dropout_p, philox_seed, philox_ptrs,\n                                        sd_mask_ptrs, dropout_mask_ptrs, block_min, block_max, offs_n_causal, masked_blocks,\n                                        n_extra_tokens, alibi_slope,\n                                        IS_CAUSAL, BLOCK_M, BLOCK_DMODEL, BLOCK_N, offs_m, offs_n,\n                                        # _, MASK_STEPS, ...\n                                        PRE_LOAD_V, True, ENABLE_DROPOUT, PADDED_HEAD,\n                                        ACTUAL_BLOCK_DMODEL, SM_SCALE, USE_ALIBI=USE_ALIBI, USE_EXP2=USE_EXP2, RETURN_SCORES=RETURN_SCORES, ACCUMULATOR_TYPE=ACCUMULATOR_TYPE)\n    # epilogue\n    # This helps the compiler do Newton Raphson on l_i vs on acc which is much larger.\n    l_recip = 1 / l_i[:, None]\n    acc = acc * l_recip\n    if ENABLE_DROPOUT:\n        dropout_scale = 1 / (1 - dropout_p)\n        acc = acc * dropout_scale\n    # If seqlen_q > seqlen_k but the delta is not a multiple of BLOCK_M,\n    # then we have one block with a row of all NaNs which come from computing\n    # softmax over a row of all -infs (-inf - inf = NaN). We check for that here\n    # and store 0s where there are NaNs as these rows should've been zeroed out.\n    end_m_idx = (start_m + 1) * BLOCK_M\n    start_m_idx = start_m * BLOCK_M\n    causal_start_idx = seqlen_q - seqlen_k\n    if IS_CAUSAL:\n        if causal_start_idx > start_m_idx and causal_start_idx < end_m_idx:\n            out_mask_boundary = tl.full((BLOCK_DMODEL, ), causal_start_idx, dtype=tl.int32)\n            mask_m_offsets = start_m_idx + tl.arange(0, BLOCK_M)\n            out_ptrs_mask = mask_m_offsets[:, None] >= out_mask_boundary[None, :]\n            z = 0.0\n            acc = tl.where(out_ptrs_mask, acc, z.to(acc.type.element_ty))\n\n    # write back LSE(Log Sum Exponents), the log of the normalization constant\n    l_offset = LSE + off_z * stride_lse_z + off_h_q * stride_lse_h + cu_seqlens_q_start * stride_lse_m\n    l_ptrs = l_offset + offs_m * stride_lse_m\n    if USE_EXP2:\n        RCP_LN2: tl.constexpr = 1.4426950408889634\n        LN2: tl.constexpr = 0.6931471824645996\n        # compute log-sum-exp in base 2 units\n        mi_base2 = m_i * RCP_LN2\n        softmax_lse = mi_base2 + tl.math.log2(l_i)\n        # convert back to natural units\n        softmax_lse *= LN2\n    else:\n        softmax_lse = m_i + tl.math.log(l_i)\n\n    if IS_CAUSAL:\n        # zero out nans caused by -infs when doing causal\n        lse_mask = (start_m_idx + tl.arange(0, BLOCK_M)) < causal_start_idx\n        softmax_lse = tl.where(lse_mask, 0.0, softmax_lse)\n\n    # If seqlen_q not multiple of BLOCK_M, we need to mask out the last few rows.\n    # This is only true for the last M block. For others, overflow_size will be -ve\n    overflow_size = end_m_idx - seqlen_q\n    if overflow_size > 0:\n        boundary = tl.full((BLOCK_M, ), BLOCK_M - overflow_size, dtype=tl.int32)\n        l_ptrs_mask = tl.arange(0, BLOCK_M) < boundary\n        tl.store(l_ptrs, softmax_lse, mask=l_ptrs_mask) # the log of the normalization constant\n    else:\n        tl.store(l_ptrs, softmax_lse) # the log of the normalization constant\n\n    # write back O\n    o_offset = Out + off_z * stride_oz + off_h_q * stride_oh + cu_seqlens_q_start * stride_om\n    o_ptrs = o_offset + offs_m[:, None] * stride_om + offs_d[None, :] * stride_on\n    o_ptrs_mask = tl.full([BLOCK_M, BLOCK_DMODEL], 1, dtype=tl.int1)\n    if overflow_size > 0:\n        o_ptrs_mask = o_ptrs_mask & (offs_m[:, None] < seqlen_q)\n    if PADDED_HEAD:\n        o_ptrs_mask = o_ptrs_mask & (offs_d[None, :] < ACTUAL_BLOCK_DMODEL)\n    tl.store(o_ptrs, acc.to(Out.dtype.element_ty), mask=o_ptrs_mask)\n\n\ndef attention_prefill_forward_triton_impl(\n                                        q: torch.Tensor,\n                                        k: torch.Tensor,\n                                        v: torch.Tensor,\n                                        o: torch.Tensor,\n                                        sm_scale: float,\n                                        alibi_slopes: Optional[torch.Tensor],\n                                        causal: bool,\n                                        bias: Optional[torch.Tensor],\n                                        layout: Literal[\"bshd\", \"bhsd\", \"thd\"],\n                                        # varlen\n                                        cu_seqlens_q: Optional[torch.Tensor],\n                                        cu_seqlens_k: Optional[torch.Tensor],\n                                        max_seqlens_q: int,\n                                        max_seqlens_k: int,\n                                        # inference\n                                        cache_seqlens: Optional[Union[(int, torch.Tensor)]],\n                                        cache_batch_idx: Optional[torch.Tensor],\n                                        # dropout\n                                        dropout_p: float,\n                                        philox_seed: Optional[int],\n                                        philox_offset: Optional[int],\n                                        # misc\n                                        return_softmax: bool,\n                                        use_exp2: bool,\n):\n    # check flags\n    is_varlen = layout == \"thd\"\n    use_alibi, (stride_az, stride_ah) = (True, alibi_slopes.stride()) if alibi_slopes is not None else (False, (0, 0))\n    is_inference = cache_seqlens is not None\n    if is_inference:\n        assert layout == \"bshd\", f\"{layout} layout is not supported with inference. Use bshd layout\"\n\n    # NOTE: a large bias tensor leads to overflow during pointer arithmetic\n    if (bias is not None):\n        assert (bias.numel() < 2**31)\n\n    batch, nheads_q, nheads_k, head_size, _, _ = get_shapes_from_layout(q, k, layout, cu_seqlens_q, cu_seqlens_k, max_seqlens_q, max_seqlens_k)\n    q_strides, k_strides, v_strides, o_strides = get_strides_from_layout(q, k, v, o, layout)\n\n    # Get closest power of 2 over or equal to 32.\n    padded_d_model = 1 << (head_size - 1).bit_length()\n    # Smallest head_dim supported is 16. If smaller, the tile in the\n    # kernel is padded - there is no padding in memory for any dims.\n    padded_d_model = max(padded_d_model, 16)\n\n    grid = lambda META: (triton.cdiv(max_seqlens_q, META['BLOCK_M']), nheads_q, batch)\n\n    # sd_mask is used to validate dropout behavior vs the PyTorch SDPA math backend reference.  We zero this out\n    # to give a consistent starting point and then populate it with the output of softmax with the sign bit set according\n    # to the dropout mask. The resulting return allows this mask to be fed into the reference implementation for testing\n    # only. This return holds no useful output aside from debugging.\n    use_dropout = (dropout_p > 0.0)\n    if use_dropout or return_softmax:\n        sd_mask = torch.zeros((batch, nheads_q, max_seqlens_q, max_seqlens_k), device=q.device,\n                                dtype=torch.float32)\n        dropout_mask = torch.zeros((batch, nheads_q, max_seqlens_q, max_seqlens_k), device=q.device,\n                                    dtype=torch.float32)\n        scores_strides = (sd_mask.stride(0), sd_mask.stride(1), sd_mask.stride(2), sd_mask.stride(3))\n    else:\n        sd_mask = None\n        dropout_mask = None\n        scores_strides = (0, 0, 0, 0)\n\n    # stores LSE the log of the normalization constant / sum of expoential score(unnormalzied probablities)\n    if is_varlen:\n        softmax_lse = torch.zeros((q.shape[0], nheads_q), device=q.device, dtype=torch.float32)\n        stride_lse_m, stride_lse_h = softmax_lse.stride()\n        stride_lse_z = 0\n    else:\n        softmax_lse = torch.zeros((batch, nheads_q, max_seqlens_q), device=q.device, dtype=torch.float32)\n        stride_lse_z, stride_lse_h, stride_lse_m = softmax_lse.stride()\n\n    if bias is not None:\n        bias_strides = (bias.stride(0), bias.stride(1),bias.stride(2),\n                        bias.stride(3))\n    else:\n        bias_strides = (0, 0, 0, 0)\n\n    attn_fwd[grid](q, k, v, bias, cache_seqlens, cache_batch_idx,\n                    sm_scale, softmax_lse, o, *q_strides, *k_strides, *v_strides, *o_strides,\n                    *bias_strides, stride_az, stride_ah, *scores_strides, stride_lse_z, stride_lse_h, stride_lse_m, cu_seqlens_q, cu_seqlens_k,\n                    dropout_p=dropout_p, philox_seed=philox_seed, philox_offset_base=philox_offset, sd_mask=sd_mask, dropout_mask=dropout_mask, alibi_slopes=alibi_slopes,\n                    HQ=nheads_q, HK=nheads_k, ACTUAL_BLOCK_DMODEL=head_size, MAX_SEQLENS_Q=max_seqlens_q,\n                    MAX_SEQLENS_K=max_seqlens_k, IS_CAUSAL=causal, IS_VARLEN=is_varlen, IS_INFERENCE=is_inference,\n                    BLOCK_DMODEL=padded_d_model, USE_BIAS=False if bias is None else True,\n                    USE_ALIBI=use_alibi, ENABLE_DROPOUT=dropout_p\n                    > 0.0, USE_EXP2=use_exp2, RETURN_SCORES=return_softmax)\n"
  },
  {
    "path": "modules/flash_attn_triton_amd/interface_fa.py",
    "content": "import torch\nfrom modules.flash_attn_triton_amd.fwd_prefill import attention_prefill_forward_triton_impl\nfrom modules.flash_attn_triton_amd.utils import MetaData\n\n\ndef fwd(q: torch.Tensor,\n        k: torch.Tensor,\n        v: torch.Tensor,\n        out: torch.Tensor,\n        dropout_p: float,\n        softmax_scale: float,\n        causal: bool\n):\n    # Setup metadata\n    metadata = MetaData(sm_scale=softmax_scale)\n    metadata.max_seqlens_q = q.shape[1]\n    metadata.max_seqlens_k = k.shape[1]\n    metadata.layout = \"bshd\"\n\n    if causal:\n        metadata.need_causal(True)\n\n    if dropout_p > 0.0:\n        metadata.need_dropout(dropout_p)\n\n    # check arguments\n    metadata.check_args(q, k, v, out)\n\n    # call implementation\n    attention_prefill_forward_triton_impl(\n                                        q,\n                                        k,\n                                        v,\n                                        out,\n                                        metadata.sm_scale,\n                                        metadata.alibi_slopes,\n                                        metadata.causal,\n                                        None,\n                                        metadata.layout,\n                                        metadata.cu_seqlens_q,\n                                        metadata.cu_seqlens_k,\n                                        metadata.max_seqlens_q,\n                                        metadata.max_seqlens_k,\n                                        metadata.cache_seqlens,\n                                        metadata.cache_batch_idx,\n                                        metadata.dropout_p,\n                                        metadata.philox_seed,\n                                        metadata.philox_offset,\n                                        False,\n                                        metadata.use_exp2)\n\n# varlen\n"
  },
  {
    "path": "modules/flash_attn_triton_amd/utils.py",
    "content": "import csv\nimport math\nimport torch\nimport os\nimport random\nimport functools\nimport triton\nimport triton.language as tl\nfrom typing import Literal, Optional, Union\nfrom modules.rocm import Agent, MicroArchitecture\n\n\nAUTOTUNE = os.environ.get('FLASH_ATTENTION_TRITON_AMD_AUTOTUNE', '0').lower() in ('1', 'true', 'yes')\nUSE_REF = os.environ.get('FLASH_ATTENTION_TRITON_AMD_REF', '0').lower() in ('1', 'true', 'yes')\nPERF = os.environ.get('FLASH_ATTENTION_TRITON_AMD_PERF', '0').lower() in ('1', 'true', 'yes')\n\n\n# -------------------------------\n# Metadata\n# -------------------------------\nclass MetaData():\n    cu_seqlens_q: Optional[torch.Tensor] = None\n    cu_seqlens_k: Optional[torch.Tensor] = None\n    max_seqlens_q: int = 0\n    max_seqlens_k: int = 0\n    bias: Optional[torch.Tensor] = None\n    alibi_slopes: Optional[torch.Tensor] = None\n    causal: bool = False\n    num_contexts = 0\n    varlen: bool = False\n    layout: Optional[Literal[\"bshd\", \"bhsd\", \"thd\"]] = None\n    cache_seqlens: Optional[Union[(int, torch.Tensor)]] = None\n    cache_batch_idx = None\n    packing: Optional[bool] = None\n    return_scores: bool = False\n    dropout_p: float = 0.0\n    philox_seed: Optional[int] = None\n    philox_offset : Optional[int]= None # if dropout_p > 0.0 seed the RNG so we get reproducible results for testing.\n    # NOTE: scale sm_scale by log_2(e) and use 2^x in the loop as we do not have native e^x support in HW.\n    use_exp2: bool = False\n    rotary_sin: Optional[torch.Tensor] = None\n    rotary_cos: Optional[torch.Tensor] = None\n    rotary_interleaved: bool = False\n    rotary_conjunction: bool = False\n\n\n    def __repr__(self) -> str:\n        return (f\"MetaData(\\n\"\n                f\"  sm_scale={self.sm_scale},\\n\"\n                f\"  cu_seqlens_q={self.cu_seqlens_q},\\n\"\n                f\"  cu_seqlens_k={self.cu_seqlens_k},\\n\"\n                f\"  max_seqlens_q={self.max_seqlens_q},\\n\"\n                f\"  max_seqlens_k={self.max_seqlens_k},\\n\"\n                f\"  bias={self.bias},\\n\"\n                f\"  alibi_slopes={self.alibi_slopes},\\n\"\n                f\"  causal={self.causal},\\n\"\n                f\"  num_contexts={self.num_contexts},\\n\"\n                f\"  varlen={self.varlen},\\n\"\n                f\"  layout={self.layout},\\n\"\n                f\"  cache_seqlens={self.cache_seqlens},\\n\"\n                f\"  cache_batch_idx={self.cache_batch_idx},\\n\"\n                f\"  dropout_p={self.dropout_p},\\n\"\n                f\"  return_scores={self.return_scores}\\n\"\n                f\")\")\n\n    def __init__(self, sm_scale=1.0):\n        self.sm_scale = sm_scale\n\n    def set_varlen_params(self, cu_seqlens_q, cu_seqlens_k, max_seqlen_q, max_seqlen_k):\n        self.varlen = True\n        self.layout = 'thd'\n        self.cu_seqlens_q = cu_seqlens_q\n        self.cu_seqlens_k = cu_seqlens_k\n        self.max_seqlens_q = max_seqlen_q\n        self.max_seqlens_k = max_seqlen_k\n\n        # Without \"varlen\", there should still be one sequence.\n        assert len(cu_seqlens_q) >= 2\n        assert len(cu_seqlens_q) == len(cu_seqlens_k)\n\n    def need_bias(self, bias, batch, nheads, seqlen_q, seqlen_k):\n        assert bias.is_cuda\n        assert bias.dim() == 4\n        assert bias.shape[0] == 1\n        assert bias.shape[2:] == (seqlen_q, seqlen_k)\n        self.bias = bias\n\n    def need_alibi(self, alibi_slopes, batch, nheads):\n        assert alibi_slopes.is_cuda\n        assert alibi_slopes.dim() == 2\n        assert alibi_slopes.shape[0] == batch\n        assert alibi_slopes.shape[1] == nheads\n        self.alibi_slopes = alibi_slopes\n\n    def need_causal(self, causal):\n        self.causal = causal\n\n    def need_rotary(self, sin, cos, rotary_interleaved, rotary_conjunction=False):\n        self.rotary_sin = sin\n        self.rotary_cos = cos\n        self.rotary_interleaved = rotary_interleaved\n        self.rotary_conjunction = rotary_conjunction\n\n    def need_dropout(self, dropout_p, return_scores = True):\n        if dropout_p > 0.0:\n            self.dropout_p = dropout_p\n            self.return_scores = return_scores\n            self.philox_seed, self.philox_offset = 0x1BF58, 0x1D4B49\n\n    def check_args(self, q, k, v, o):\n        assert q.dim() == k.dim() and q.dim() == v.dim()\n\n        batch, nheads_q, nheads_k, head_size, _, _ = get_shapes_from_layout(q, k, self.layout, self.cu_seqlens_q, self.cu_seqlens_k, self.max_seqlens_q, self.max_seqlens_k)\n        if self.varlen:\n            assert q.dim() == 3\n            assert self.cu_seqlens_q is not None\n            assert self.cu_seqlens_k is not None\n            assert len(self.cu_seqlens_q) == len(self.cu_seqlens_k)\n            assert self.bias is None\n            # assert not self.return_scores\n        else:\n            assert q.dim() == 4\n            assert self.max_seqlens_q > 0 and self.max_seqlens_k > 0\n            assert self.cu_seqlens_q is None and self.cu_seqlens_k is None\n        assert k.shape == v.shape\n        assert q.shape[-1] == k.shape[-1] and q.shape[-1] == v.shape[-1]\n        assert q.dtype == k.dtype and q.dtype == v.dtype\n        assert o.shape == q.shape\n        assert (nheads_q % nheads_k) == 0\n        assert self.layout is not None\n        assert self.layout == 'thd' or not self.varlen\n\n# -------------------------------\n# Input Helper\n# -------------------------------\ndef random_seqlens_composition(SEQ_LEN, BATCH):\n    # generate a random composition of N into Z positive parts.\n    idx = torch.randperm(SEQ_LEN - 1)[: BATCH - 1] + 1\n    idx, _ = torch.sort(idx)\n    breakpoints = torch.cat([\n        torch.tensor([0], dtype=torch.long),\n        idx,\n        torch.tensor([SEQ_LEN], dtype=torch.long),\n    ])\n    seqlens = (breakpoints[1:] - breakpoints[:-1]).to(torch.int32)\n    return seqlens\n\ndef generate_varlen_tensor(\n    total_seqlen: int,\n    num_heads: int,\n    head_size: int,\n    batch_size: Optional[int] = None,\n    equal_seqlens: bool = False,\n    device: str = \"cuda\",\n    dtype: torch.dtype = torch.float32,\n    DEBUG_INPUT: bool = False\n):\n    # get valid batch_size\n    if batch_size is None:\n        valid_batch_sizes = [bs for bs in [1, 2, 4, 8, 16, 32, 64] if bs <= total_seqlen]\n        batch_size = random.choice(valid_batch_sizes)\n\n    # get seqlens\n    if equal_seqlens:\n        seqlens = torch.full(\n        (batch_size,),\n        total_seqlen // batch_size,\n        dtype=torch.int32,\n        device=device\n        )\n        seqlens[-1] += total_seqlen % batch_size\n    else:\n        seqlens = random_seqlens_composition(total_seqlen, batch_size).to(device=device)\n\n    # create cumulative sequence lengths\n    cu_seqlens = torch.cat([torch.tensor([0], dtype=torch.int32, device=device), seqlens.cumsum(dim=0)]).to(torch.int32).to(device=device)\n    max_seqlen = torch.max(seqlens).to(torch.int32).item()\n\n    # create varlen tensor\n    if DEBUG_INPUT:\n        x = torch.zeros(total_seqlen, num_heads, head_size, dtype=dtype, device=device)\n        for i in range(batch_size):\n            start = cu_seqlens[i].item()\n            end   = cu_seqlens[i+1].item()\n            length  = end - start\n\n            x[start:end, :, :] = (\n                torch.arange(length, dtype=dtype, device=device)\n                .view(length, 1, 1)\n                .expand(length, num_heads, head_size)\n            )\n    else:\n        x = torch.randn((total_seqlen, num_heads, head_size), dtype=dtype, device=device)\n\n    x.requires_grad_()\n    return x, cu_seqlens, max_seqlen\n\ndef generate_bshd_tensor(BATCH, SEQ_LEN, NUM_HEADS, D_HEAD, dtype, device=\"cuda\", DEBUG_INPUT=False):\n    # gen tensor\n    tensor_shape = (BATCH, SEQ_LEN, NUM_HEADS, D_HEAD)\n    if DEBUG_INPUT:\n        x = torch.arange(SEQ_LEN, dtype=dtype, device=device).view(1, SEQ_LEN, 1, 1).expand(*tensor_shape).contiguous()\n    else:\n        x = torch.randn(tensor_shape, dtype=dtype, device=device)\n\n    x.requires_grad_()\n    return x\n\ndef generate_bhsd_tensor(BATCH, NUM_HEADS, SEQ_LEN, D_HEAD, dtype, device=\"cuda\", DEBUG_INPUT=False):\n    # gen tensor\n    tensor_shape = (BATCH, NUM_HEADS, SEQ_LEN, D_HEAD)\n    if DEBUG_INPUT:\n        x = torch.arange(SEQ_LEN, dtype=dtype, device=device).view(1, 1, SEQ_LEN, 1).expand(*tensor_shape).contiguous()\n    else:\n        x = torch.randn(tensor_shape, dtype=dtype, device=device)\n\n    x.requires_grad_()\n    return x\n\ndef input_helper(\n    BATCH: int,\n    HQ: int,\n    HK: int,\n    N_CTX_Q: int,\n    N_CTX_K: int,\n    D_HEAD: int,\n    CAUSAL: bool,\n    DROPOUT_P: float,\n    dtype: torch.dtype,\n    layout: Literal[\"bshd\", \"bhsd\", \"thd\"],\n    packing: Optional[Literal[\"kv\", \"qkv\"]] = None,\n    device: Literal[\"cpu\", \"cuda\"] = \"cuda\",\n    DEBUG_INPUT: bool = False,\n):\n    torch.manual_seed(20)\n\n    if layout == \"thd\":\n        # set params\n        TOTAL_SEQLENS_Q = BATCH * N_CTX_Q\n        TOTAL_SEQLENS_K = BATCH * N_CTX_K\n        equal_seqlens=False\n\n        # gen tensors\n        q, cu_seqlens_q, max_seqlen_q = generate_varlen_tensor(TOTAL_SEQLENS_Q, HQ, D_HEAD, batch_size=BATCH, dtype=dtype, device=device, equal_seqlens=equal_seqlens, DEBUG_INPUT=DEBUG_INPUT)\n        k, cu_seqlens_k, max_seqlen_k = generate_varlen_tensor(TOTAL_SEQLENS_K, HK, D_HEAD, batch_size=BATCH, dtype=dtype, device=device, equal_seqlens=equal_seqlens, DEBUG_INPUT=DEBUG_INPUT)\n        v, _, _ = generate_varlen_tensor(TOTAL_SEQLENS_K, HK, D_HEAD, batch_size=BATCH, dtype=dtype, device=device, equal_seqlens=equal_seqlens, DEBUG_INPUT=DEBUG_INPUT)\n        do = torch.ones_like(q) if DEBUG_INPUT else torch.randn_like(q)\n\n        # setup metadata\n        if DEBUG_INPUT:\n            sm_scale = 1\n        else:\n            sm_scale = D_HEAD**-0.5\n        metadata = MetaData(sm_scale=sm_scale)\n        metadata.set_varlen_params(cu_seqlens_q, cu_seqlens_k, max_seqlen_q, max_seqlen_k)\n        metadata.need_causal(CAUSAL)\n        metadata.need_dropout(DROPOUT_P)\n    elif layout == 'bshd' or layout == \"bhsd\":\n        # gen tensors\n        if layout == \"bshd\":\n            q = generate_bshd_tensor(BATCH, N_CTX_Q, HQ, D_HEAD, dtype=dtype, device=device, DEBUG_INPUT=DEBUG_INPUT)\n            k = generate_bshd_tensor(BATCH, N_CTX_K, HK, D_HEAD, dtype=dtype, device=device, DEBUG_INPUT=DEBUG_INPUT)\n            v = generate_bshd_tensor(BATCH, N_CTX_K, HK, D_HEAD, dtype=dtype, device=device, DEBUG_INPUT=DEBUG_INPUT)\n            do = torch.ones_like(q) if DEBUG_INPUT else torch.randn_like(q)\n        elif layout == \"bhsd\":\n            q = generate_bhsd_tensor(BATCH, HQ, N_CTX_Q, D_HEAD, dtype=dtype, device=device, DEBUG_INPUT=DEBUG_INPUT)\n            k = generate_bhsd_tensor(BATCH, HK, N_CTX_K, D_HEAD, dtype=dtype, device=device, DEBUG_INPUT=DEBUG_INPUT)\n            v = generate_bhsd_tensor(BATCH, HK, N_CTX_K, D_HEAD, dtype=dtype, device=device, DEBUG_INPUT=DEBUG_INPUT)\n            do = torch.ones_like(q) if DEBUG_INPUT else torch.randn_like(q)\n\n        # setup metadata\n        if DEBUG_INPUT:\n            sm_scale = 1\n        else:\n            sm_scale = D_HEAD**-0.5\n        metadata = MetaData(sm_scale=sm_scale)\n        metadata.max_seqlens_q = N_CTX_Q\n        metadata.max_seqlens_k = N_CTX_K\n        metadata.layout = layout\n        metadata.need_causal(CAUSAL)\n        metadata.need_dropout(DROPOUT_P)\n    else:\n        raise ValueError(f\"Unknown layout: {layout}\")\n\n    # deal with packing\n    if packing is None:\n        return q, k, v, do, metadata\n    elif packing == \"kv\":\n        # pack k and v\n        if layout in [\"bhsd\", \"thd\"]:\n            kv = torch.stack([k, v], dim=1)\n        elif layout == \"bshd\":\n            kv = torch.stack([k, v], dim=2)\n        else:\n            raise ValueError(f\"Unknown layout: {layout}\")\n\n        return q, kv, do, metadata\n    elif packing == \"qkv\":\n        # qkv packing - requires same sequence length for q and k\n        assert N_CTX_Q == N_CTX_K, \"For QKV packing, Q and K must have same sequence length\"\n        assert HQ == HK, \"For QKV packing, Q and K must have same number of heads\"\n\n        # pack q, k, and v\n        if layout in [\"bhsd\", \"thd\"]:\n            qkv = torch.stack([q, k, v], dim=1)\n        elif layout == \"bshd\":\n            qkv = torch.stack([q, k, v], dim=2)\n        else:\n            raise ValueError(f\"Unknown layout: {layout}\")\n\n        return qkv, do, metadata\n    else:\n        assert False, f\"Unsupported packing mode: {packing}\"\n\n# -------------------------------\n# Alibi\n# -------------------------------\n@triton.jit\ndef compute_alibi_block(alibi_slope, seqlen_q, seqlen_k, offs_m, offs_n, transpose=False):\n    # when seqlen_k and seqlen_q are different we want the diagonal to stick to the bottom right of the attention matrix\n    # for casual mask we want something like this where (1 is kept and 0 is masked)\n    # seqlen_q = 2 and seqlen_k = 5\n    #   1 1 1 1 0\n    #   1 1 1 1 1\n    # seqlen_q = 5 and seqlen_k = 2\n    #        0 0\n    #        0 0\n    #        0 0\n    #        1 0\n    #        1 1\n    # for alibi the diagonal is 0 indicating no penalty for attending to that spot and increasing penalty for attending further from the diagonal\n    # e.g. alibi_slope = 1, seqlen_q = 2, seqlen_k = 5, offs_m = [0, 1, 2, 3], offs_n = [0, 1, 2, 3, 4], transpose = False\n    # 1. offs_m[:,None] = [[0],\n    #                       [1],\n    # 2. offs_m[:,None] + seqlen_k = [[5],\n    #                                  [6],\n    # 3. offs_m[:,None] + seqlen_k - seqlen_q = [[3],\n    #                                             [4],\n    # 4. offs_m[:,None] + seqlen_k - seqlen_q - offs_n[None,:] = [[3], - [[0, 1, 2, 3, 4]] =  [[ 3, 2, 1, 0,-1],\n    #                                                            [4],                           [ 4, 3, 2, 1, 0]]\n    # 5. -1 * alibi_slope * tl.abs(relative_pos_block) = [[ -3, -2, -1, 0,-1],\n    #                                                     [ -4, -3, -2, -1, 0]],\n    relative_pos_block = offs_m[:, None] + seqlen_k - seqlen_q - offs_n[None, :]\n    alibi_block = -1 * alibi_slope * tl.abs(relative_pos_block)\n    if transpose:\n        return alibi_block.T\n    else:\n        return alibi_block\n\n# -------------------------------\n# Misc\n# -------------------------------\ndef get_shape_from_layout(\n    x: torch.Tensor,\n    layout: Literal[\"bshd\", \"bhsd\", \"thd\"],\n    cu_seqlens: Optional[torch.Tensor] = None,\n    max_seqlen: Optional[int] = None,\n) -> tuple[int, int, int, int]:\n    if layout == 'bhsd':\n        batch, num_heads, max_seqlen_final, head_dim = x.shape\n    elif layout == 'bshd':\n        batch, max_seqlen_final, num_heads, head_dim = x.shape\n    elif  layout == 'thd':\n        total_seqlen, num_heads, head_dim = x.shape\n        if cu_seqlens is None:\n            raise ValueError(\"cu_seqlens must be provided for varlen (thd) layout\")\n        if max_seqlen is None:\n            raise ValueError(\"max_seqlen must be provided for varlen (thd) layout\")\n\n        batch, max_seqlen_final, num_heads, head_dim = len(cu_seqlens) - 1, max_seqlen, num_heads, head_dim\n    else:\n        assert False, \"Got unsupported layout.\"\n\n    return batch, max_seqlen_final, num_heads, head_dim\n\n\ndef get_shapes_from_layout(q, k, layout, cu_seqlens_q = None, cu_seqlens_k = None, max_seqlen_q=None, max_seqlen_k=None):\n    batch_q, seqlen_q, nheads_q, head_size_q = get_shape_from_layout(q, layout, cu_seqlens_q, max_seqlen_q)\n    batch_k, seqlen_k, nheads_k, head_size_k = get_shape_from_layout(k, layout, cu_seqlens_k, max_seqlen_k)\n\n    # assert\n    assert batch_q == batch_k\n    assert head_size_q == head_size_k\n\n    return batch_q, nheads_q, nheads_k, head_size_q, seqlen_q, seqlen_k\n\ndef get_stride_from_layout(x: torch.Tensor, layout:Literal[\"bshd\", \"bhsd\", \"thd\"]):\n    if layout == 'thd':\n        strides = (0, x.stride(1), x.stride(0), x.stride(2))\n    elif layout == 'bhsd':\n        strides = (x.stride(0), x.stride(1), x.stride(2), x.stride(3))\n    elif layout == 'bshd':\n        strides = (x.stride(0), x.stride(2), x.stride(1), x.stride(3))\n    else:\n        assert False, 'Got unsupported layout.'\n    return strides\n\ndef get_shape_and_strides_from_layout(x: torch.Tensor, layout: Literal[\"bshd\", \"bhsd\", \"thd\"], cu_seqlens: Optional[torch.Tensor] = None, max_seqlen: Optional[int] = None):\n    return get_shape_from_layout(x, layout, cu_seqlens, max_seqlen), get_stride_from_layout(x, layout)\n\ndef get_strides_from_layout(q, k, v, o, layout):\n    q_strides = get_stride_from_layout(q, layout)\n    k_strides = get_stride_from_layout(k, layout)\n    v_strides = get_stride_from_layout(v, layout)\n    o_strides = get_stride_from_layout(o, layout)\n    return q_strides, k_strides, v_strides, o_strides\n\ndef get_padded_headsize(size):\n    # Get closest power of 2 over or equal to 32.\n    padded_d_model = 1 << (size - 1).bit_length()\n    # Smallest head_dim supported is 16. If smaller, the tile in the\n    # kernel is padded - there is no padding in memory for any dims.\n    padded_d_model = max(padded_d_model, 16)\n    return padded_d_model\n\ndef compute_alibi_tensor_ref(alibi_slopes, seqlen_q, seqlen_k):\n    q_idx = torch.arange(seqlen_q, dtype=torch.int32, device=\"cuda\").unsqueeze(-1)  # (N_CTX_Q, 1)\n    k_idx = torch.arange(seqlen_k, dtype=torch.int32, device=\"cuda\").unsqueeze(0)  # (1, N_CTX_K)\n    relative_pos = torch.abs(q_idx + seqlen_k - seqlen_q - k_idx)  # (N_CTX_Q, N_CTX_K)\n    return -1 * alibi_slopes.unsqueeze(-1).unsqueeze(-1) * relative_pos  # (Z, H, N_CTX_Q, N_CTX_K)\n\n# -------------------------------\n# Dropouts\n# -------------------------------\ndef create_dropout_mask(dropout_p, shape, seed):\n    device = \"cuda\"\n    rand_vals = torch.rand(shape, generator=torch.Generator(device=device).manual_seed(seed), device=device, dtype=torch.float32)\n    return rand_vals > dropout_p\n\ndef create_dropout_mask_varlen(dropout_p, batch, nheads_q, cu_seqlens_q, cu_seqlens_k, philox_seed):\n    device = \"cuda\"\n    qlens = (cu_seqlens_q[1:] - cu_seqlens_q[:-1])\n    klens = (cu_seqlens_k[1:] - cu_seqlens_k[:-1])\n    max_qlen = qlens.max()\n    max_klen = klens.max()\n    dropout_mask = torch.zeros((batch, nheads_q, max_qlen, max_klen), device=device)\n    for b in range(batch):\n        qlen = qlens[b]\n        klen = klens[b]\n        rand_vals = torch.rand((nheads_q, qlen, klen), generator=torch.Generator(device=device).manual_seed(philox_seed), device=device, dtype=torch.float32)\n        submask = rand_vals > dropout_p\n        dropout_mask[b, :, :qlen, :klen] = submask\n\n    return dropout_mask\n\ndef write_dropout_mask(x, tensor_name = \"tensor\"):\n    batch, head, seqlen_m, seqlen_n = x.shape\n    x = x.tolist()\n\n    with open(f'{tensor_name}.csv', 'w') as f:\n        writer = csv.writer(f)\n        for b in range(batch):\n            for h in range(head):\n                dropout_mask = x[b][h]\n                if True:\n                    BLOCK_M = 64\n                    BLOCK_N = 64\n\n                    # Calculate number of blocks in each dimension\n                    m_blocks = math.ceil(seqlen_m / BLOCK_M)\n                    n_blocks = math.ceil(seqlen_n / BLOCK_N)\n\n                    # Process each block\n                    for m_block in range(m_blocks):\n                        # Calculate row range for current block\n                        row_start = m_block * BLOCK_M\n                        row_end = min(row_start + BLOCK_M, seqlen_m)\n\n                        for n_block in range(n_blocks):\n                            # Calculate column range for current block\n                            col_start = n_block * BLOCK_N\n                            col_end = min(col_start + BLOCK_N, seqlen_n)\n\n                            # Extract and write the current block\n                            for row_idx in range(row_start, row_end):\n                                row_data = dropout_mask[row_idx][col_start:col_end]\n                                writer.writerow(row_data)\n                else:\n                    writer.writerows(dropout_mask)\n\n# -------------------------------\n# Runtime info\n# -------------------------------\n@functools.cache\ndef is_cdna():\n    return Agent(triton.runtime.driver.active.get_current_target().arch).arch == MicroArchitecture.CDNA\n\n\n@functools.cache\ndef is_rdna():\n    return Agent(triton.runtime.driver.active.get_current_target().arch).arch == MicroArchitecture.RDNA\n"
  },
  {
    "path": "modules/framepack/create-video.py",
    "content": "#!/usr/bin/env python\n\nimport os\nimport io\nimport base64\nimport logging\nimport argparse\nimport requests\nimport urllib3\nfrom PIL import Image\n\n\nsd_url = os.environ.get('SDAPI_URL', \"http://127.0.0.1:7860\")\nsd_username = os.environ.get('SDAPI_USR', None)\nsd_password = os.environ.get('SDAPI_PWD', None)\n\n\nlogging.basicConfig(level = logging.INFO, format = '%(asctime)s %(levelname)s: %(message)s')\nlog = logging.getLogger(__name__)\nurllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)\n\n\ndef auth():\n    if sd_username is not None and sd_password is not None:\n        return requests.auth.HTTPBasicAuth(sd_username, sd_password)\n    return None\n\n\ndef get(endpoint: str, dct: dict = None):\n    req = requests.get(f'{sd_url}{endpoint}', json=dct, timeout=300, verify=False, auth=auth())\n    if req.status_code != 200:\n        return { 'error': req.status_code, 'reason': req.reason, 'url': req.url }\n    else:\n        return req.json()\n\n\ndef post(endpoint: str, dct: dict = None):\n    req = requests.post(f'{sd_url}{endpoint}', json = dct, timeout=None, verify=False, auth=auth())\n    if req.status_code != 200:\n        return { 'error': req.status_code, 'reason': req.reason, 'url': req.url }\n    else:\n        return req.json()\n\n\ndef encode(f):\n    if not os.path.exists(f):\n        log.error(f'file not found: {f}')\n        os._exit(1)\n    image = Image.open(f)\n    if image.mode == 'RGBA':\n        image = image.convert('RGB')\n    with io.BytesIO() as stream:\n        image.save(stream, 'JPEG')\n        image.close()\n        values = stream.getvalue()\n        encoded = base64.b64encode(values).decode()\n        return encoded\n\n\ndef generate(args): # pylint: disable=redefined-outer-name\n    request = {\n        'variant': args.variant,\n        'prompt': args.prompt,\n        'section_prompt': args.sections,\n        'init_image': encode(args.init),\n        'end_image': encode(args.end) if args.end else None,\n        'resolution': int(args.resolution),\n        'duration': float(args.duration),\n        'mp4_fps': int(args.fps),\n        'seed': int(args.seed),\n        'steps': int(args.steps),\n        'shift': float(args.shift),\n        'cfg_scale': float(args.scale),\n        'cfg_rescale': float(args.rescale),\n        'cfg_distilled': float(args.distilled),\n        'use_teacache': bool(args.teacache),\n        'vlm_enhance': bool(args.enhance),\n    }\n    log.info(f'request: {args}')\n    result = post('/sdapi/v1/framepack', request) # can abandon request here and not wait for response or wait synchronously\n    log.info(f'response: {result}')\n\n    progress = get('/sdapi/v1/progress?skip_current_image=true', None) # monitor progress of the current task\n    task_id = progress.get('id', None)\n    log.info(f'id: {task_id}')\n    log.info(f'progress: {progress}')\n\n    outputs = []\n    history = get(f'/sdapi/v1/history?id={task_id}') # get history for the task\n    for event in history:\n        log.info(f'history: {event}')\n        outputs = event.get('outputs', [])\n\n    log.info(f'outputs: {outputs}') # you can download output files using /file={filename} endpoint\n\n\nif __name__ == \"__main__\":\n    parser = argparse.ArgumentParser(description = 'api-framepack')\n    parser.add_argument('--init', required=True, help='init image')\n    parser.add_argument('--end', required=False, help='init image')\n    parser.add_argument('--prompt', required=False, default='', help='prompt text')\n    parser.add_argument('--sections', required=False, default='', help='per-section prompts')\n    parser.add_argument('--resolution', type=int, required=False, default=640, help='video resolution')\n    parser.add_argument('--duration', type=float, required=False, default=4.0, help='video duration')\n    parser.add_argument('--fps', type=int, required=False, default=30, help='video frames per second')\n    parser.add_argument('--seed', type=int, required=False, default=-1, help='random seed')\n    parser.add_argument('--enhance', required=False, action='store_true', help='enable prompt enhancer')\n    parser.add_argument('--teacache', required=False, action='store_true', help='enable teacache')\n    parser.add_argument('--steps', type=int, default=25, help='steps')\n    parser.add_argument('--scale', type=float, default=1.0, help='cfg scale')\n    parser.add_argument('--rescale', type=float, default=0.0, help='cfg rescale')\n    parser.add_argument('--distilled', type=float, default=10.0, help='cfg distilled')\n    parser.add_argument('--shift', type=float, default=3.0, help='sampler shift')\n    parser.add_argument('--variant', type=str, default='bi-directional', choices=['bi-directional', 'forward-only'], help='model variant')\n    args = parser.parse_args()\n    log.info(f'api-framepack: {args}')\n    generate(args)\n"
  },
  {
    "path": "modules/framepack/encode-video.py",
    "content": "#!/usr/bin/env python\n\nimport os\nimport logging\nimport argparse\nimport cv2\nimport torch\nimport torchvision\nfrom safetensors.torch import safe_open\nfrom tqdm.rich import trange\n\nlogging.basicConfig(level = logging.INFO, format = '%(asctime)s %(levelname)s: %(message)s')\nlog = logging.getLogger(\"sd\")\n\n\nif __name__ == \"__main__\":\n    parser = argparse.ArgumentParser(description = 'framepack-cli')\n    parser.add_argument('--input', required=True, help='input safetensors')\n    parser.add_argument('--cv2', required=False, help='encode video file using cv2')\n    parser.add_argument('--tv', required=False, help='encode video file using torchvision')\n    parser.add_argument('--codec', default='libx264', help='specify video codec')\n    parser.add_argument('--export', required=False, help='export frames as images to folder')\n    parser.add_argument('--fps', default=30, help='frames-per-second')\n    args = parser.parse_args()\n\n    log.info(f'framepack-cli: {args}')\n    log.info(f'torch={torch.__version__} torchvision={torchvision.__version__}')\n\n    with safe_open(args.input, framework=\"pt\", device=\"cpu\") as f:\n        frames = f.get_tensor('frames')\n        metadata = f.metadata()\n    n, h, w, _c = frames.shape\n    log.info(f'file: metadata={metadata}')\n    log.info(f'tensor: frames={n} shape={frames.shape} dtype={frames.dtype} device={frames.device}')\n    fn = os.path.splitext(os.path.basename(args.input))[0]\n\n    if args.export:\n        log.info(f'export: folder=\"{args.export}\" prefix=\"{fn}\" frames={n} width={w} height={h}')\n        os.makedirs(args.export, exist_ok=True)\n        for i in trange(n):\n            image = cv2.cvtColor(frames[i].numpy(), cv2.COLOR_RGB2BGR)\n            cv2.imwrite(os.path.join(args.export, f'{fn}-{i:05d}.jpg'), image)\n\n    if args.cv2:\n        log.info(f'encode: file={args.cv2} frames={n} width={w} height={h} fps={args.fps} method=cv2')\n        fourcc = cv2.VideoWriter_fourcc(*'mp4v')\n        video = cv2.VideoWriter(args.cv2, fourcc, args.fps, (w, h))\n        for i in trange(n):\n            image = cv2.cvtColor(frames[i].numpy(), cv2.COLOR_RGB2BGR)\n            video.write(image)\n        video.release()\n\n    if args.tv:\n        log.info(f'encode: file={args.tv} frames={n} width={w} height={h} fps={args.fps} method=tv ')\n        torchvision.io.write_video(args.tv, video_array=frames, fps=args.fps, video_codec=args.codec)\n"
  },
  {
    "path": "modules/framepack/framepack_api.py",
    "content": "from typing import Optional, List\nfrom pydantic import BaseModel, Field # pylint: disable=no-name-in-module\nfrom fastapi.exceptions import HTTPException\nfrom modules import shared\n\n\nclass ReqFramepack(BaseModel):\n    variant: str = Field(default=None, title=\"Model variant\", description=\"Model variant to use\")\n    prompt: str = Field(default=None, title=\"Prompt\", description=\"Prompt for the model\")\n    init_image: str = Field(default=None, title=\"Initial image\", description=\"Base64 encoded initial image\")\n    end_image: Optional[str] = Field(default=None, title=\"End image\", description=\"Base64 encoded end image\")\n    start_weight: Optional[float] = Field(default=1.0, title=\"Start weight\", description=\"Weight of the initial image\")\n    end_weight: Optional[float] = Field(default=1.0, title=\"End weight\", description=\"Weight of the end image\")\n    vision_weight: Optional[float] = Field(default=1.0, title=\"Vision weight\", description=\"Weight of the vision model\")\n    system_prompt: Optional[str] = Field(default=None, title=\"System prompt\", description=\"System prompt for the model\")\n    optimized_prompt: Optional[bool] = Field(default=True, title=\"Optimized system prompt\", description=\"Use optimized system prompt for the model\")\n    section_prompt: Optional[str] = Field(default=None, title=\"Section prompt\", description=\"Prompt for each section\")\n    negative_prompt: Optional[str] = Field(default=None, title=\"Negative prompt\", description=\"Negative prompt for the model\")\n    styles: Optional[List[str]] = Field(default=None, title=\"Styles\", description=\"Styles for the model\")\n    seed: Optional[int] = Field(default=None, title=\"Seed\", description=\"Seed for the model\")\n    resolution: Optional[int] = Field(default=640, title=\"Resolution\", description=\"Resolution of the image\")\n    duration: Optional[float] = Field(default=4, title=\"Duration\", description=\"Duration of the video in seconds\")\n    latent_ws: Optional[int] = Field(default=9, title=\"Latent window size\", description=\"Size of the latent window\")\n    steps: Optional[int] = Field(default=25, title=\"Video steps\", description=\"Number of steps for the video generation\")\n    cfg_scale: Optional[float] = Field(default=1.0, title=\"CFG scale\", description=\"CFG scale for the model\")\n    cfg_distilled: Optional[float] = Field(default=10.0, title=\"Distilled CFG scale\", description=\"Distilled CFG scale for the model\")\n    cfg_rescale: Optional[float] = Field(default=0.0, title=\"CFG re-scale\", description=\"CFG re-scale for the model\")\n    shift: Optional[float] = Field(default=0, title=\"Sampler shift\", description=\"Shift for the sampler\")\n    use_teacache: Optional[bool] = Field(default=True, title=\"Enable TeaCache\", description=\"Use TeaCache for the model\")\n    use_cfgzero: Optional[bool] = Field(default=False, title=\"Enable CFGZero\", description=\"Use CFGZero for the model\")\n    mp4_fps: Optional[int] = Field(default=30, title=\"FPS\", description=\"Frames per second for the video\")\n    mp4_codec: Optional[str] = Field(default=\"libx264\", title=\"Codec\", description=\"Codec for the video\")\n    mp4_sf: Optional[bool] = Field(default=False, title=\"Save SafeTensors\", description=\"Save SafeTensors for the video\")\n    mp4_video: Optional[bool] = Field(default=True, title=\"Save Video\", description=\"Save video\")\n    mp4_frames: Optional[bool] = Field(default=False, title=\"Save Frames\", description=\"Save frames for the video\")\n    mp4_opt: Optional[str] = Field(default=\"crf:16\", title=\"Options\", description=\"Options for the video codec\")\n    mp4_ext: Optional[str] = Field(default=\"mp4\", title=\"Format\", description=\"Format for the video\")\n    mp4_interpolate: Optional[int] = Field(default=0, title=\"Interpolation\", description=\"Interpolation for the video\")\n    attention: Optional[str] = Field(default=\"Default\", title=\"Attention\", description=\"Attention type for the model\")\n    vae_type: Optional[str] = Field(default=\"Local\", title=\"VAE\", description=\"VAE type for the model\")\n    vlm_enhance: Optional[bool] = Field(default=False, title=\"VLM enhance\", description=\"Enable VLM enhance\")\n    vlm_model: Optional[str] = Field(default=None, title=\"VLM model\", description=\"VLM model to use\")\n    vlm_system_prompt: Optional[str] = Field(default=None, title=\"VLM system prompt\", description=\"System prompt for the VLM model\")\n\n\nclass ResFramepack(BaseModel):\n    id: str = Field(title=\"TaskID\", description=\"Task ID\")\n    filename: str = Field(title=\"TaskID\", description=\"Task ID\")\n    message: str = Field(title=\"TaskID\", description=\"Task ID\")\n\n\ndef framepack_post(request: ReqFramepack):\n    import numpy as np\n    from modules.api import helpers\n    from framepack_wrappers import run_framepack\n    task_id = shared.state.get_id()\n\n    try:\n        if request.init_image is not None:\n            init_image = np.array(helpers.decode_base64_to_image(request.init_image)) if request.init_image else None\n        else:\n            init_image = None\n    except Exception as e:\n        shared.log.error(f\"API FramePack: id={task_id} cannot decode init image: {e}\")\n        raise HTTPException(status_code=500, detail=str(e)) from e\n\n    try:\n        if request.end_image is not None:\n            end_image = np.array(helpers.decode_base64_to_image(request.end_image)) if request.end_image else None\n        else:\n            end_image = None\n    except Exception as e:\n        shared.log.error(f\"API FramePack: id={task_id} cannot decode end image: {e}\")\n        raise HTTPException(status_code=500, detail=str(e)) from e\n\n    del request.init_image\n    del request.end_image\n    shared.log.trace(f\"API FramePack: id={task_id} init={init_image.shape} end={end_image.shape if end_image else None} {request}\")\n\n    generator = run_framepack(\n        _ui_state=None,\n        task_id=f'task({task_id})',\n        variant=request.variant,\n        init_image=init_image,\n        end_image=end_image,\n        start_weight=request.start_weight,\n        end_weight=request.end_weight,\n        vision_weight=request.vision_weight,\n        prompt=request.prompt,\n        system_prompt=request.system_prompt,\n        optimized_prompt=request.optimized_prompt,\n        section_prompt=request.section_prompt,\n        negative_prompt=request.negative_prompt,\n        styles=request.styles,\n        seed=request.seed,\n        resolution=request.resolution,\n        duration=request.duration,\n        latent_ws=request.latent_ws,\n        steps=request.steps,\n        cfg_scale=request.cfg_scale,\n        cfg_distilled=request.cfg_distilled,\n        cfg_rescale=request.cfg_rescale,\n        shift=request.shift,\n        use_teacache=request.use_teacache,\n        use_cfgzero=request.use_cfgzero,\n        use_preview=False,\n        mp4_fps=request.mp4_fps,\n        mp4_codec=request.mp4_codec,\n        mp4_sf=request.mp4_sf,\n        mp4_video=request.mp4_video,\n        mp4_frames=request.mp4_frames,\n        mp4_opt=request.mp4_opt,\n        mp4_ext=request.mp4_ext,\n        mp4_interpolate=request.mp4_interpolate,\n        attention=request.attention,\n        vae_type=request.vae_type,\n        vlm_enhance=request.vlm_enhance,\n        vlm_model=request.vlm_model,\n        vlm_system_prompt=request.vlm_system_prompt,\n    )\n    response = ResFramepack(id=task_id, filename='', message='')\n    for message in generator:\n        if isinstance(message, tuple) and len(message) == 3:\n            if isinstance(message[0], str):\n                response.filename = message[0]\n            if isinstance(message[2], str):\n                response.message = message[2]\n    return response\n\n\ndef create_api(_fastapi, _gradioapp):\n    shared.api.add_api_route(\"/sdapi/v1/framepack\", framepack_post, methods=[\"POST\"], response_model=ResFramepack)\n"
  },
  {
    "path": "modules/framepack/framepack_hijack.py",
    "content": "DEFAULT_PROMPT_TEMPLATE = { # hunyuanvideo reference prompt template\n    \"template\": (\n        \"<|start_header_id|>system<|end_header_id|>\\n\\nDescribe the video by detailing the following aspects: \"\n        \"1. The main content and theme of the video.\"\n        \"2. Actions, events, behaviors temporal relationships, physical movement changes of the objects.\"\n        \"3. The color, shape, size, texture, quantity, text, and spatial relationships of the objects.\"\n        \"4. camera angles, movements, and transitions used in the video:<|eot_id|>\"\n        \"5. background environment, light, style and atmosphere.\"\n        \"<|start_header_id|>user<|end_header_id|>\\n\\n{}<|eot_id|>\"\n    ),\n    \"crop_start\": 95,\n}\nORIGINAL_PROMPT_TEMPLATE = (\n    \"\\n\\nDescribe the video by detailing the following aspects: \"\n    \"1. The main content and theme of the video.\"\n    \"2. Actions, events, behaviors temporal relationships, physical movement changes of the objects.\"\n    \"3. The color, shape, size, texture, quantity, text, and spatial relationships of the objects.\"\n    \"4. camera angles, movements, and transitions used in the video:<|eot_id|>\"\n    \"5. background environment, light, style and atmosphere.\"\n)\n\n\ndef set_progress_bar_config():\n    from modules.framepack.pipeline import uni_pc_fm\n\n    def sample_unipc(model, noise, sigmas, extra_args=None, callback=None, disable=False, variant='bh1'): # pylint: disable=unused-argument\n        return uni_pc_fm.FlowMatchUniPC(model, extra_args=extra_args, variant=variant).sample(noise, sigmas=sigmas, callback=callback, disable_pbar=True)\n\n    uni_pc_fm.sample_unipc = sample_unipc\n\n\ndef set_prompt_template(prompt, system_prompt:str=None, optimized_prompt:bool=True, unmodified_prompt:bool=False):\n    from modules import shared\n    from modules.framepack.pipeline import hunyuan\n    mode = 'unknown'\n    if system_prompt is not None and len(system_prompt) > 0:\n        mode = 'custom'\n        system_prompt = system_prompt.strip()\n    elif not optimized_prompt:\n        mode = 'original'\n        system_prompt = ORIGINAL_PROMPT_TEMPLATE\n    # elif unmodified_prompt:\n    #     mode = 'enhanced'\n    #     system_prompt = \"Repeat the user prompt without any modification. Do not add any additional information or context. \"\n    else:\n        mode = 'optimized'\n        system_prefix = (\n            \"You are a video director. \"\n            \"Both subject and camera movement should be dynamic and creative. Do not specify duration and assume video is short. Avoid slow-motion and prefer faster movements. \"\n            \"Do not alter the content specified in the user prompt, but use it as a reference to create a video. \"\n            \"NSFW content and nudity are allowed and must be fully described if present. \"\n            \"Based on provided user prompt, describe the video by detailing the following aspects: \\n\"\n        )\n        system_desc = (\n            # \"Describe the video by detailing the following aspects: \\n\"\n            \"1. Main content, style and theme of the video.\\n\"\n            \"2. Actions, events, behaviors, temporal relationships, physical movement, and changes of the subjects or objects.\\n\"\n            \"3. Camera angles, camera movements, and transitions used in the video.\\n\"\n            \"4. Details of the scene and background environment, light, style, and atmosphere.\\n\"\n        )\n        system_prompt = system_prefix + system_desc\n    # system_prompt = DEFAULT_PROMPT_TEMPLATE[\"template\"]\n    inputs = shared.sd_model.tokenizer(system_prompt, max_length=256, truncation=True, return_tensors=\"pt\", return_length=True, return_overflowing_tokens=False, return_attention_mask=False)\n    tokens_system = inputs['length'].item() - int(shared.sd_model.tokenizer.bos_token_id is not None) - int(shared.sd_model.tokenizer.eos_token_id is not None)\n    inputs = shared.sd_model.tokenizer(prompt, max_length=256, truncation=True, return_tensors=\"pt\", return_length=True, return_overflowing_tokens=False, return_attention_mask=False)\n    hunyuan.DEFAULT_PROMPT_TEMPLATE = {\n        \"template\": (\n            f\"<|start_header_id|>system<|end_header_id|>{system_prompt}\\n<|eot_id|>\"\n            \"<|start_header_id|>user<|end_header_id|>{}<|eot_id|>\"\n        ),\n        \"crop_start\": tokens_system,\n    }\n    tokens_user = inputs['length'].item() - int(shared.sd_model.tokenizer.bos_token_id is not None) - int(shared.sd_model.tokenizer.eos_token_id is not None)\n    shared.log.trace(f'FramePack prompt: system={tokens_system} user={tokens_user} optimized={optimized_prompt} unmodified={unmodified_prompt} mode={mode}')\n"
  },
  {
    "path": "modules/framepack/framepack_install.py",
    "content": "import os\nimport shutil\nimport git as gitpython\nfrom installer import install, git\nfrom modules.shared import log\n\n\ndef rename(src:str, dst:str):\n    import errno\n    try:\n        os.rename(src, dst)\n    except OSError as e:\n        if e.errno == errno.EXDEV: # cross-device\n            shutil.move(src, dst)\n        else:\n            raise e\n\n\ndef install_requirements(attention:str='SDPA'):\n    install('av')\n    import av\n    import torchvision\n    torchvision.io.video.av = av\n    if attention == 'Xformers':\n        log.debug('FramePack install: xformers')\n        install('xformers')\n    elif attention == 'FlashAttention':\n        log.debug('FramePack install: flash-attn')\n        install('flash-attn')\n    elif attention == 'SageAttention':\n        log.debug('FramePack install: sageattention')\n        install('sageattention')\n\n\ndef git_clone(git_repo:str, git_dir:str, tmp_dir:str):\n    if os.path.exists(git_dir):\n        return\n    try:\n        shutil.rmtree(tmp_dir, True)\n        args = {\n            'url': git_repo,\n            'to_path': tmp_dir,\n            'allow_unsafe_protocols': True,\n            'allow_unsafe_options': True,\n            'filter': ['blob:none'],\n        }\n        ssh = os.environ.get('GIT_SSH_COMMAND', None)\n        if ssh:\n            args['env'] = {'GIT_SSH_COMMAND':ssh}\n        log.info(f'FramePack install: url={args} path={git_repo}')\n        with gitpython.Repo.clone_from(**args) as repo:\n            repo.remote().fetch(verbose=True)\n            for submodule in repo.submodules:\n                submodule.update()\n        rename(tmp_dir, git_dir)\n    except Exception as e:\n        log.error(f'FramePack install: {e}')\n    shutil.rmtree(tmp_dir, True)\n\n\ndef git_update(git_dir:str, git_commit:str):\n    if not os.path.exists(git_dir):\n        return\n    try:\n        with gitpython.Repo(git_dir) as repo:\n            commit = repo.commit()\n            if f'{commit}' != git_commit:\n                log.info(f'FramePack update: path={repo.git_dir} current={commit} target={git_commit}')\n                repo.git.fetch(all=True)\n                repo.git.reset('origin', hard=True)\n                git(f'checkout {git_commit}', folder=git_dir, ignore=True, optional=True)\n            else:\n                log.debug(f'FramePack version: sha={commit}')\n    except Exception as e:\n        log.error(f'FramePack update: {e}')\n"
  },
  {
    "path": "modules/framepack/framepack_load.py",
    "content": "import os\nimport time\nfrom modules import shared, devices, errors, sd_models, sd_checkpoint, model_quant\n\n\nmodels = {\n    'bi-directional': 'lllyasviel/FramePackI2V_HY',\n    'forward-only': 'lllyasviel/FramePack_F1_I2V_HY_20250503',\n}\ndefault_model = {\n    'pipeline': { 'repo': 'hunyuanvideo-community/HunyuanVideo', 'subfolder': '' },\n    'vae': { 'repo': 'hunyuanvideo-community/HunyuanVideo', 'subfolder': 'vae' },\n    'text_encoder': { 'repo': 'hunyuanvideo-community/HunyuanVideo', 'subfolder': 'text_encoder' },\n    'tokenizer': {'repo': 'hunyuanvideo-community/HunyuanVideo', 'subfolder': 'tokenizer' },\n    # 'text_encoder': { 'repo': 'Kijai/llava-llama-3-8b-text-encoder-tokenizer', 'subfolder': '' },\n    # 'tokenizer': { 'repo': 'Kijai/llava-llama-3-8b-text-encoder-tokenizer', 'subfolder': '' },\n    # 'text_encoder': { 'repo': 'xtuner/llava-llama-3-8b-v1_1-transformers', 'subfolder': '' },\n    # 'tokenizer': {'repo': 'xtuner/llava-llama-3-8b-v1_1-transformers', 'subfolder': '' },\n    'text_encoder_2': { 'repo': 'hunyuanvideo-community/HunyuanVideo', 'subfolder': 'text_encoder_2' },\n    'tokenizer_2': { 'repo': 'hunyuanvideo-community/HunyuanVideo', 'subfolder': 'tokenizer_2' },\n    'feature_extractor': { 'repo': 'lllyasviel/flux_redux_bfl', 'subfolder': 'feature_extractor' },\n    'image_encoder': { 'repo': 'lllyasviel/flux_redux_bfl', 'subfolder': 'image_encoder' },\n    'transformer': { 'repo': models.get('bi-directional'), 'subfolder': '' },\n}\nmodel = default_model.copy()\n\n\ndef split_url(url):\n    if url.count('/') == 1:\n        url += '/'\n    if url.count('/') != 2:\n        raise ValueError(f'Invalid URL: {url}')\n    url = [section.strip() for section in url.split('/')]\n    return { 'repo': f'{url[0]}/{url[1]}', 'subfolder': url[2] }\n\n\ndef set_model(receipe: str=None):\n    if receipe is None or receipe == '':\n        return\n    lines = [line.strip() for line in receipe.split('\\n') if line.strip() != '' and ':' in line]\n    for line in lines:\n        k, v = line.split(':', 1)\n        k = k.strip()\n        if k not in default_model.keys():\n            shared.log.warning(f'FramePack receipe: key={k} invalid')\n        model[k] = split_url(v)\n        shared.log.debug(f'FramePack receipe: set {k}={model[k]}')\n\n\ndef get_model():\n    receipe = ''\n    for k, v in model.items():\n        receipe += f'{k}: {v[\"repo\"]}/{v[\"subfolder\"]}\\n'\n    return receipe.strip()\n\n\ndef reset_model():\n    global model # pylint: disable=global-statement\n    model = default_model.copy()\n    shared.log.debug('FramePack receipe: reset')\n    return ''\n\n\ndef load_model(variant:str=None, pipeline:str=None, text_encoder:str=None, text_encoder_2:str=None, feature_extractor:str=None, image_encoder:str=None, transformer:str=None):\n    shared.state.begin('Load FramePack')\n    if variant is not None:\n        if variant not in models.keys():\n            raise ValueError(f'FramePack: variant=\"{variant}\" invalid')\n        model['transformer']['repo'] = models[variant]\n    if pipeline is not None:\n        model['pipeline'] = split_url(pipeline)\n    if text_encoder is not None:\n        model['text_encoder'] = split_url(text_encoder)\n    if text_encoder_2 is not None:\n        model['text_encoder_2'] = split_url(text_encoder_2)\n    if feature_extractor is not None:\n        model['feature_extractor'] = split_url(feature_extractor)\n    if image_encoder is not None:\n        model['image_encoder'] = split_url(image_encoder)\n    if transformer is not None:\n        model['transformer'] = split_url(transformer)\n    # shared.log.trace(f'FramePack load: {model}')\n\n    try:\n        import diffusers\n        from diffusers import HunyuanVideoImageToVideoPipeline, AutoencoderKLHunyuanVideo\n        from transformers import LlamaModel, CLIPTextModel, LlamaTokenizerFast, CLIPTokenizer, SiglipImageProcessor, SiglipVisionModel\n        from modules.framepack.pipeline.hunyuan_video_packed import HunyuanVideoTransformer3DModelPacked\n\n        class FramepackHunyuanVideoPipeline(HunyuanVideoImageToVideoPipeline): # inherit and override\n            def __init__(\n                self,\n                text_encoder: LlamaModel,\n                tokenizer: LlamaTokenizerFast,\n                text_encoder_2: CLIPTextModel,\n                tokenizer_2: CLIPTokenizer,\n                vae: AutoencoderKLHunyuanVideo,\n                feature_extractor: SiglipImageProcessor,\n                image_processor: SiglipVisionModel,\n                transformer: HunyuanVideoTransformer3DModelPacked,\n                scheduler,\n            ):\n                super().__init__(\n                    text_encoder=text_encoder,\n                    tokenizer=tokenizer,\n                    text_encoder_2=text_encoder_2,\n                    tokenizer_2=tokenizer_2,\n                    vae=vae,\n                    transformer=transformer,\n                    image_processor=image_processor,\n                    scheduler=scheduler,\n                )\n                self.register_modules(\n                    text_encoder=text_encoder,\n                    tokenizer=tokenizer,\n                    text_encoder_2=text_encoder_2,\n                    tokenizer_2=tokenizer_2,\n                    vae=vae,\n                    feature_extractor=feature_extractor,\n                    image_processor=image_processor,\n                    transformer=transformer,\n                    scheduler=scheduler,\n                )\n\n        sd_models.unload_model_weights()\n        t0 = time.time()\n\n        sd_models.hf_auth_check(model[\"transformer\"][\"repo\"])\n        sd_models.hf_auth_check(model[\"text_encoder\"][\"repo\"])\n        sd_models.hf_auth_check(model[\"text_encoder_2\"][\"repo\"])\n\n        offline_config = {}\n        if shared.opts.offline_mode:\n            offline_config[\"local_files_only\"] = True\n            os.environ['HF_HUB_OFFLINE'] = '1'\n        else:\n            os.environ.pop('HF_HUB_OFFLINE', None)\n            os.unsetenv('HF_HUB_OFFLINE')\n\n        shared.log.debug(f'FramePack load: module=llm {model[\"text_encoder\"]}')\n        load_args, quant_args = model_quant.get_dit_args({}, module='TE', device_map=True)\n        text_encoder = LlamaModel.from_pretrained(model[\"text_encoder\"][\"repo\"], subfolder=model[\"text_encoder\"][\"subfolder\"], cache_dir=shared.opts.hfcache_dir, **load_args, **quant_args, **offline_config)\n        tokenizer = LlamaTokenizerFast.from_pretrained(model[\"tokenizer\"][\"repo\"], subfolder=model[\"tokenizer\"][\"subfolder\"], cache_dir=shared.opts.hfcache_dir, **offline_config)\n        text_encoder.requires_grad_(False)\n        text_encoder.eval()\n        sd_models.move_model(text_encoder, devices.cpu)\n\n        shared.log.debug(f'FramePack load: module=te {model[\"text_encoder_2\"]}')\n        text_encoder_2 = CLIPTextModel.from_pretrained(model[\"text_encoder_2\"][\"repo\"], subfolder=model[\"text_encoder_2\"][\"subfolder\"], torch_dtype=devices.dtype, cache_dir=shared.opts.hfcache_dir, **offline_config)\n        tokenizer_2 = CLIPTokenizer.from_pretrained(model[\"pipeline\"][\"repo\"], subfolder='tokenizer_2', cache_dir=shared.opts.hfcache_dir, **offline_config)\n        text_encoder_2.requires_grad_(False)\n        text_encoder_2.eval()\n        sd_models.move_model(text_encoder_2, devices.cpu)\n\n        shared.log.debug(f'FramePack load: module=vae {model[\"vae\"]}')\n        vae = AutoencoderKLHunyuanVideo.from_pretrained(model[\"vae\"][\"repo\"], subfolder=model[\"vae\"][\"subfolder\"], torch_dtype=devices.dtype, cache_dir=shared.opts.hfcache_dir, **offline_config)\n        vae.requires_grad_(False)\n        vae.eval()\n        vae.enable_slicing()\n        vae.enable_tiling()\n        sd_models.move_model(vae, devices.cpu)\n\n        shared.log.debug(f'FramePack load: module=encoder {model[\"feature_extractor\"]} model={model[\"image_encoder\"]}')\n        feature_extractor = SiglipImageProcessor.from_pretrained(model[\"feature_extractor\"][\"repo\"], subfolder=model[\"feature_extractor\"][\"subfolder\"], cache_dir=shared.opts.hfcache_dir, **offline_config)\n        image_encoder = SiglipVisionModel.from_pretrained(model[\"image_encoder\"][\"repo\"], subfolder=model[\"image_encoder\"][\"subfolder\"], torch_dtype=devices.dtype, cache_dir=shared.opts.hfcache_dir, **offline_config)\n        image_encoder.requires_grad_(False)\n        image_encoder.eval()\n        sd_models.move_model(image_encoder, devices.cpu)\n\n        shared.log.debug(f'FramePack load: module=transformer {model[\"transformer\"]}')\n        dit_repo = model[\"transformer\"][\"repo\"]\n        load_args, quant_args = model_quant.get_dit_args({}, module='Model', device_map=True)\n        transformer = HunyuanVideoTransformer3DModelPacked.from_pretrained(dit_repo, subfolder=model[\"transformer\"][\"subfolder\"], cache_dir=shared.opts.hfcache_dir, **load_args, **quant_args, **offline_config)\n        transformer.high_quality_fp32_output_for_inference = False\n        transformer.requires_grad_(False)\n        transformer.eval()\n        sd_models.move_model(transformer, devices.cpu)\n\n        shared.sd_model = FramepackHunyuanVideoPipeline(\n            text_encoder=text_encoder,\n            tokenizer=tokenizer,\n            text_encoder_2=text_encoder_2,\n            tokenizer_2=tokenizer_2,\n            vae=vae,\n            feature_extractor=feature_extractor,\n            image_processor=image_encoder,\n            transformer=transformer,\n            scheduler=None,\n        )\n        shared.sd_model.sd_checkpoint_info = sd_checkpoint.CheckpointInfo(dit_repo) # pylint: disable=attribute-defined-outside-init\n        shared.sd_model.sd_model_checkpoint = dit_repo # pylint: disable=attribute-defined-outside-init\n\n        shared.sd_model = model_quant.do_post_load_quant(shared.sd_model, allow=False)\n        t1 = time.time()\n\n        diffusers.loaders.peft._SET_ADAPTER_SCALE_FN_MAPPING['HunyuanVideoTransformer3DModelPacked'] = lambda model_cls, weights: weights # pylint: disable=protected-access\n        shared.log.info(f'FramePack load: model={shared.sd_model.__class__.__name__} variant=\"{variant}\" type={shared.sd_model_type} time={t1-t0:.2f}')\n        sd_models.apply_balanced_offload(shared.sd_model)\n        devices.torch_gc(force=True, reason='load')\n\n    except Exception as e:\n        shared.log.error(f'FramePack load: {e}')\n        errors.display(e, 'FramePack')\n        shared.state.end()\n        return None\n\n    shared.state.end()\n    return variant\n\n\ndef unload_model():\n    sd_models.unload_model_weights()\n"
  },
  {
    "path": "modules/framepack/framepack_ui.py",
    "content": "import gradio as gr\nfrom modules import ui_sections, ui_video_vlm\nfrom modules.framepack import framepack_load\nfrom modules.framepack.framepack_worker import get_latent_paddings\nfrom modules.framepack.framepack_wrappers import load_model, unload_model\nfrom modules.framepack.framepack_wrappers import run_framepack # pylint: disable=wrong-import-order\n\n\ndef change_sections(duration, mp4_fps, mp4_interpolate, latent_ws, variant):\n    num_sections = len(get_latent_paddings(mp4_fps, mp4_interpolate, latent_ws, duration, variant))\n    num_frames = (latent_ws * 4 - 3) * num_sections + 1\n    return gr.update(value=f'Target video: {num_frames} frames in {num_sections} sections'), gr.update(lines=max(2, 2*num_sections//3))\n\n\ndef create_ui(prompt, negative, styles, _overrides, init_image, last_image, mp4_fps, mp4_interpolate, mp4_codec, mp4_ext, mp4_opt, mp4_video, mp4_frames, mp4_sf):\n    with gr.Row():\n        with gr.Column(variant='compact', elem_id=\"framepack_settings\", elem_classes=['settings-column'], scale=1):\n            with gr.Row():\n                generate = gr.Button('Generate', elem_id=\"framepack_generate_btn\", variant='primary', visible=False)\n            with gr.Row():\n                variant = gr.Dropdown(label=\"FP model variant\", choices=list(framepack_load.models), value='bi-directional', type='value')\n            with gr.Row():\n                resolution = gr.Slider(label=\"FP resolution\", minimum=240, maximum=1088, value=640, step=16)\n                duration = gr.Slider(label=\"FP duration\", minimum=1, maximum=120, value=4, step=0.1)\n                mp4_fps = gr.Slider(label=\"FP target FPS\", minimum=1, maximum=60, value=24, step=1)\n                mp4_interpolate = gr.Slider(label=\"FP interpolation\", minimum=0, maximum=10, value=0, step=1)\n            with gr.Row():\n                section_html = gr.HTML(show_label=False, elem_id=\"framepack_section_html\")\n            with gr.Accordion(label=\"Inputs\", open=False):\n                with gr.Row():\n                    start_weight = gr.Slider(label=\"FP init strength\", value=1.0, minimum=0.0, maximum=2.0, step=0.05, elem_id=\"framepack_start_weight\")\n                    end_weight = gr.Slider(label=\"FP end strength\", value=1.0, minimum=0.0, maximum=2.0, step=0.05, elem_id=\"framepack_end_weight\")\n                    vision_weight = gr.Slider(label=\"FP vision strength\", value=1.0, minimum=0.0, maximum=2.0, step=0.05, elem_id=\"framepack_vision_weight\")\n            with gr.Accordion(label=\"Sections\", open=False):\n                section_prompt = gr.Textbox(label=\"FP section prompts\", elem_id=\"framepack_section_prompt\", lines=2, placeholder=\"Optional one-line prompt suffix per each video section\", interactive=True)\n            with gr.Accordion(label=\"Advanced\", open=False):\n                seed = ui_sections.create_seed_inputs('control', reuse_visible=False, subseed_visible=False, accordion=False)[0]\n                latent_ws = gr.Slider(label=\"FP latent window size\", minimum=1, maximum=33, value=9, step=1)\n                with gr.Row():\n                    steps = gr.Slider(label=\"FP steps\", minimum=1, maximum=100, value=25, step=1)\n                    shift = gr.Slider(label=\"FP sampler shift\", minimum=0.0, maximum=10.0, value=3.0, step=0.01)\n                with gr.Row():\n                    cfg_scale = gr.Slider(label=\"FP CFG scale\", minimum=1.0, maximum=32.0, value=1.0, step=0.01)\n                    cfg_distilled = gr.Slider(label=\"FP distilled CFG scale\", minimum=1.0, maximum=32.0, value=10.0, step=0.01)\n                    cfg_rescale = gr.Slider(label=\"FP CFG re-scale\", minimum=0.0, maximum=1.0, value=0.0, step=0.01)\n\n            vlm_enhance, vlm_model, vlm_system_prompt = ui_video_vlm.create_ui(prompt_element=prompt, image_element=init_image)\n\n            with gr.Accordion(label=\"Model\", open=False):\n                with gr.Row():\n                    btn_load = gr.Button(value=\"Load model\", elem_id=\"framepack_btn_load\", interactive=True)\n                    btn_unload = gr.Button(value=\"Unload model\", elem_id=\"framepack_btn_unload\", interactive=True)\n                with gr.Row():\n                    system_prompt = gr.Textbox(label=\"FP system prompt\", elem_id=\"framepack_system_prompt\", lines=6, placeholder=\"Optional system prompt for the model\", interactive=True)\n                with gr.Row():\n                    receipe = gr.Textbox(label=\"FP model receipe\", elem_id=\"framepack_model_receipe\", lines=6, placeholder=\"Model receipe\", interactive=True)\n                with gr.Row():\n                    receipe_get = gr.Button(value=\"Get receipe\", elem_id=\"framepack_btn_get_model\", interactive=True)\n                    receipe_set = gr.Button(value=\"Set receipe\", elem_id=\"framepack_btn_set_model\", interactive=True)\n                    receipe_reset = gr.Button(value=\"Reset receipe\", elem_id=\"framepack_btn_reset_model\", interactive=True)\n                use_teacache = gr.Checkbox(label='FP enable TeaCache', value=True)\n                optimized_prompt = gr.Checkbox(label='FP use optimized system prompt', value=True)\n                use_cfgzero = gr.Checkbox(label='FP enable CFGZero', value=False)\n                use_preview = gr.Checkbox(label='FP enable Preview', value=True)\n                attention = gr.Dropdown(label=\"FP attention\", choices=['Default', 'Xformers', 'FlashAttention', 'SageAttention'], value='Default', type='value')\n                vae_type = gr.Dropdown(label=\"FP VAE\", choices=['Full', 'Tiny', 'Remote'], value='Local', type='value')\n\n        with gr.Column(elem_id='framepack-output-column', scale=2) as _column_output:\n            with gr.Tabs():\n                with gr.TabItem(\"Video\"):\n                    result_video = gr.Video(label=\"Video\", autoplay=True, show_share_button=False, height=512, loop=True, show_label=False, elem_id=\"framepack_result_video\")\n                with gr.Tab(\"Preview\"):\n                    preview_image = gr.Image(label=\"Current\", height=512, show_label=False, elem_id=\"framepack_preview_image\")\n            progress_desc = gr.HTML('', show_label=False, elem_id=\"framepack_progress_desc\")\n\n    # hidden fields\n    task_id = gr.Textbox(visible=False, value='')\n    ui_state = gr.Textbox(visible=False, value='')\n    state_inputs = [task_id, ui_state]\n\n    framepack_outputs = [\n        result_video,\n        preview_image,\n        progress_desc,\n    ]\n\n    duration.change(fn=change_sections, inputs=[duration, mp4_fps, mp4_interpolate, latent_ws, variant], outputs=[section_html, section_prompt])\n    mp4_fps.change(fn=change_sections, inputs=[duration, mp4_fps, mp4_interpolate, latent_ws, variant], outputs=[section_html, section_prompt])\n    mp4_interpolate.change(fn=change_sections, inputs=[duration, mp4_fps, mp4_interpolate, latent_ws, variant], outputs=[section_html, section_prompt])\n    btn_load.click(fn=load_model, inputs=[variant, attention], outputs=framepack_outputs)\n    btn_unload.click(fn=unload_model, outputs=framepack_outputs)\n    receipe_get.click(fn=framepack_load.get_model, inputs=[], outputs=receipe)\n    receipe_set.click(fn=framepack_load.set_model, inputs=[receipe], outputs=[])\n    receipe_reset.click(fn=framepack_load.reset_model, inputs=[], outputs=[receipe])\n\n    framepack_inputs=[\n        init_image, last_image,\n        start_weight, end_weight, vision_weight,\n        prompt, system_prompt, optimized_prompt, section_prompt, negative, styles,\n        seed,\n        resolution,\n        duration,\n        latent_ws,\n        steps,\n        cfg_scale, cfg_distilled, cfg_rescale,\n        shift,\n        use_teacache, use_cfgzero, use_preview,\n        mp4_fps, mp4_codec, mp4_sf, mp4_video, mp4_frames, mp4_opt, mp4_ext, mp4_interpolate,\n        attention, vae_type, variant,\n        vlm_enhance, vlm_model, vlm_system_prompt,\n    ]\n\n    framepack_dict = dict(\n        fn=run_framepack,\n        _js=\"submit_framepack\",\n        inputs=state_inputs + framepack_inputs,\n        outputs=framepack_outputs,\n        show_progress='hidden',\n    )\n    generate.click(**framepack_dict)\n"
  },
  {
    "path": "modules/framepack/framepack_vae.py",
    "content": "import torch\nimport einops\nfrom modules import shared, devices\n\n\nlatent_rgb_factors = [ # from comfyui\n    [-0.0395, -0.0331, 0.0445],\n    [0.0696, 0.0795, 0.0518],\n    [0.0135, -0.0945, -0.0282],\n    [0.0108, -0.0250, -0.0765],\n    [-0.0209, 0.0032, 0.0224],\n    [-0.0804, -0.0254, -0.0639],\n    [-0.0991, 0.0271, -0.0669],\n    [-0.0646, -0.0422, -0.0400],\n    [-0.0696, -0.0595, -0.0894],\n    [-0.0799, -0.0208, -0.0375],\n    [0.1166, 0.1627, 0.0962],\n    [0.1165, 0.0432, 0.0407],\n    [-0.2315, -0.1920, -0.1355],\n    [-0.0270, 0.0401, -0.0821],\n    [-0.0616, -0.0997, -0.0727],\n    [0.0249, -0.0469, -0.1703]\n]\nlatent_rgb_factors_bias = [0.0259, -0.0192, -0.0761]\nvae_weight = None\nvae_bias = None\ntaesd = None\n\n\ndef vae_decode_simple(latents):\n    global vae_weight, vae_bias # pylint: disable=global-statement\n    with devices.inference_context():\n        if vae_weight is None or vae_bias is None:\n            vae_weight = torch.tensor(latent_rgb_factors, device=devices.device, dtype=devices.dtype).transpose(0, 1)[:, :, None, None, None]\n            vae_bias = torch.tensor(latent_rgb_factors_bias, device=devices.device, dtype=devices.dtype)\n        images = torch.nn.functional.conv3d(latents, weight=vae_weight, bias=vae_bias, stride=1, padding=0, dilation=1, groups=1)\n        images = (images + 1.2) * 100 # sort-of normalized\n        images = einops.rearrange(images, 'b c t h w -> (b h) (t w) c')\n        images = images.to(torch.uint8).detach().cpu().numpy().clip(0, 255)\n    return images\n\n\ndef vae_decode_tiny(latents):\n    global taesd # pylint: disable=global-statement\n    if taesd is None:\n        from modules.vae import sd_vae_taesd\n        taesd, _variant = sd_vae_taesd.get_model(variant='TAE HunyuanVideo')\n        shared.log.debug(f'Video VAE: type=Tiny cls={taesd.__class__.__name__} latents={latents.shape}')\n    with devices.inference_context():\n        taesd = taesd.to(device=devices.device, dtype=devices.dtype)\n        latents = latents.transpose(1, 2) # pipe produces NCTHW and tae wants NTCHW\n        images = taesd.decode_video(latents, parallel=False, show_progress_bar=False)\n        images = images.transpose(1, 2).mul_(2).sub_(1) # normalize\n        taesd = taesd.to(device=devices.cpu, dtype=devices.dtype)\n    return images\n\n\ndef vae_decode_remote(latents):\n    # from modules.vae.sd_vae_remote import remote_decode\n    # images = remote_decode(latents, model_type='hunyuanvideo')\n    from diffusers.utils.remote_utils import remote_decode\n    images = remote_decode(\n        tensor=latents.contiguous(),\n        endpoint='https://o7ywnmrahorts457.us-east-1.aws.endpoints.huggingface.cloud',\n        output_type='pt',\n        return_type='pt',\n    )\n    return images\n\n\ndef vae_decode_full(latents):\n    with devices.inference_context():\n        vae = shared.sd_model.vae\n        latents = (latents / vae.config.scaling_factor).to(device=devices.device, dtype=devices.dtype)\n        images = vae.decode(latents).sample\n    return images\n\n\ndef vae_decode(latents, vae_type):\n    latents = latents.to(device=devices.device, dtype=devices.dtype)\n    if vae_type == 'Tiny':\n        return vae_decode_tiny(latents)\n    elif vae_type == 'Preview':\n        return vae_decode_simple(latents)\n    elif vae_type == 'Remote':\n        return vae_decode_remote(latents)\n    else: # vae_type == 'Full'\n        jobid = shared.state.begin('VAE Decode')\n        result = vae_decode_full(latents)\n        shared.state.end(jobid)\n        return result\n\n\ndef vae_encode(image):\n    with devices.inference_context():\n        vae = shared.sd_model.vae\n        latents = vae.encode(image.to(device=devices.device, dtype=devices.dtype)).latent_dist.sample()\n        latents = latents * vae.config.scaling_factor\n    return latents\n"
  },
  {
    "path": "modules/framepack/framepack_worker.py",
    "content": "import time\nimport torch\nimport rich.progress as rp\nfrom modules import shared, errors ,devices, sd_models, timer, memstats\nfrom modules.framepack import framepack_vae # pylint: disable=wrong-import-order\nfrom modules.framepack import framepack_hijack # pylint: disable=wrong-import-order\nfrom modules.video_models.video_save import save_video # pylint: disable=wrong-import-order\n\n\nstream = None # AsyncStream\n\n\ndef get_latent_paddings(mp4_fps, mp4_interpolate, latent_window_size, total_second_length, variant):\n    try:\n        real_fps = mp4_fps / (mp4_interpolate + 1)\n        is_f1 = variant == 'forward-only'\n        if is_f1:\n            total_latent_sections = (total_second_length * real_fps) / (latent_window_size * 4)\n            total_latent_sections = int(max(round(total_latent_sections), 1))\n            latent_paddings = list(range(total_latent_sections))\n        else:\n            total_latent_sections = int(max((total_second_length * real_fps) / (latent_window_size * 4), 1))\n            latent_paddings = list(reversed(range(total_latent_sections)))\n            if total_latent_sections > 4: # extra padding for better quality\n                # latent_paddings = list(reversed(range(total_latent_sections)))\n                latent_paddings = [3] + [2] * (total_latent_sections - 3) + [1, 0]\n    except Exception:\n        latent_paddings = [0]\n    return latent_paddings\n\n\ndef worker(\n        input_image, end_image,\n        start_weight, end_weight, vision_weight,\n        prompts, n_prompt, system_prompt, optimized_prompt, unmodified_prompt,\n        seed,\n        total_second_length,\n        latent_window_size,\n        steps,\n        cfg_scale, cfg_distilled, cfg_rescale,\n        shift,\n        use_teacache, use_cfgzero, use_preview,\n        mp4_fps, mp4_codec, mp4_sf, mp4_video, mp4_frames, mp4_opt, mp4_ext, mp4_interpolate,\n        vae_type,\n        variant,\n        metadata:dict={},\n    ):\n    timer.process.reset()\n    memstats.reset_stats()\n    if stream is None or shared.state.interrupted or shared.state.skipped:\n        shared.log.error('FramePack: stream is None')\n        stream.output_queue.push(('end', None))\n        return\n\n    from modules.framepack.pipeline import hunyuan\n    from modules.framepack.pipeline import utils\n    from modules.framepack.pipeline import k_diffusion_hunyuan\n\n    is_f1 = variant == 'forward-only'\n    total_generated_frames = 0\n    total_generated_latent_frames = 0\n    latent_paddings = get_latent_paddings(mp4_fps, mp4_interpolate, latent_window_size, total_second_length, variant)\n    num_frames = latent_window_size * 4 - 3 # number of frames to generate in each section\n\n    metadata['title'] = 'sdnext framepack'\n    metadata['description'] = f'variant:{variant} seed:{seed} steps:{steps} scale:{cfg_scale} distilled:{cfg_distilled} rescale:{cfg_rescale} shift:{shift} start:{start_weight} end:{end_weight} vision:{vision_weight}'\n\n    videojob = shared.state.begin('Video')\n    shared.state.job_count = 1\n\n    text_encoder = shared.sd_model.text_encoder\n    text_encoder_2 = shared.sd_model.text_encoder_2\n    tokenizer = shared.sd_model.tokenizer\n    tokenizer_2 = shared.sd_model.tokenizer_2\n    feature_extractor = shared.sd_model.feature_extractor\n    image_encoder = shared.sd_model.image_processor\n    transformer = shared.sd_model.transformer\n    sd_models.apply_balanced_offload(shared.sd_model)\n    pbar = rp.Progress(rp.TextColumn('[cyan]Video'), rp.BarColumn(), rp.MofNCompleteColumn(), rp.TaskProgressColumn(), rp.TimeRemainingColumn(), rp.TimeElapsedColumn(), rp.TextColumn('[cyan]{task.description}'), console=shared.console)\n    task = pbar.add_task('starting', total=steps * len(latent_paddings))\n    t_last = time.time()\n    if not is_f1:\n        prompts = list(reversed(prompts))\n\n    def text_encode(prompt, i:int=None):\n        jobid = shared.state.begin('TE Encode')\n        pbar.update(task, description=f'text encode section={i}')\n        t0 = time.time()\n        torch.manual_seed(seed)\n        # shared.log.debug(f'FramePack: section={i} prompt=\"{prompt}\"')\n        shared.state.textinfo = 'Text encode'\n        stream.output_queue.push(('progress', (None, 'Text encoding...')))\n        sd_models.apply_balanced_offload(shared.sd_model)\n        framepack_hijack.set_prompt_template(prompt, system_prompt, optimized_prompt, unmodified_prompt)\n        llama_vec, clip_l_pooler = hunyuan.encode_prompt_conds(prompt, text_encoder, text_encoder_2, tokenizer, tokenizer_2)\n        metadata['comment'] = prompt\n        if cfg_scale > 1 and n_prompt is not None and len(n_prompt) > 0:\n            llama_vec_n, clip_l_pooler_n = hunyuan.encode_prompt_conds(n_prompt, text_encoder, text_encoder_2, tokenizer, tokenizer_2)\n        else:\n            llama_vec_n, clip_l_pooler_n = torch.zeros_like(llama_vec), torch.zeros_like(clip_l_pooler)\n        llama_vec, llama_attention_mask = utils.crop_or_pad_yield_mask(llama_vec, length=512)\n        llama_vec_n, llama_attention_mask_n = utils.crop_or_pad_yield_mask(llama_vec_n, length=512)\n        sd_models.apply_balanced_offload(shared.sd_model)\n        timer.process.add('prompt', time.time()-t0)\n        shared.state.end(jobid)\n        return llama_vec, llama_vec_n, llama_attention_mask, llama_attention_mask_n, clip_l_pooler, clip_l_pooler_n\n\n    def latents_encode(input_image, end_image):\n        jobid = shared.state.begin('VAE Encode')\n        pbar.update(task, description='image encode')\n        # shared.log.debug(f'FramePack: image encode init={input_image.shape} end={end_image.shape if end_image is not None else None}')\n        t0 = time.time()\n        torch.manual_seed(seed)\n        stream.output_queue.push(('progress', (None, 'VAE encoding...')))\n        sd_models.apply_balanced_offload(shared.sd_model)\n        if input_image is not None:\n            input_image_pt = torch.from_numpy(input_image).float() / 127.5 - 1\n            input_image_pt = input_image_pt.permute(2, 0, 1)[None, :, None]\n            start_latent = framepack_vae.vae_encode(input_image_pt)\n        if start_weight < 1:\n            noise = torch.randn_like(start_latent)\n            start_latent = start_latent * start_weight + noise * (1 - start_weight)\n        if end_image is not None:\n            end_image_pt = torch.from_numpy(end_image).float() / 127.5 - 1\n            end_image_pt = end_image_pt.permute(2, 0, 1)[None, :, None]\n            end_latent = framepack_vae.vae_encode(end_image_pt)\n        else:\n            end_latent = None\n        sd_models.apply_balanced_offload(shared.sd_model)\n        timer.process.add('encode', time.time()-t0)\n        shared.state.end(jobid)\n        return start_latent, end_latent\n\n    def vision_encode(input_image, end_image):\n        pbar.update(task, description='vision encode')\n        # shared.log.debug(f'FramePack: vision encode init={input_image.shape} end={end_image.shape if end_image is not None else None}')\n        t0 = time.time()\n        shared.state.textinfo = 'Vision encode'\n        stream.output_queue.push(('progress', (None, 'Vision encoding...')))\n        sd_models.apply_balanced_offload(shared.sd_model)\n        # siglip doesn't work with offload\n        sd_models.move_model(feature_extractor, devices.device, force=True)\n        sd_models.move_model(image_encoder, devices.device, force=True)\n        preprocessed = feature_extractor.preprocess(images=input_image, return_tensors=\"pt\").to(device=image_encoder.device, dtype=image_encoder.dtype)\n        image_encoder_output = image_encoder(**preprocessed)\n        image_encoder_last_hidden_state = image_encoder_output.last_hidden_state\n        if end_image is not None:\n            preprocessed = feature_extractor.preprocess(images=end_image, return_tensors=\"pt\").to(device=image_encoder.device, dtype=image_encoder.dtype)\n            end_image_encoder_output = image_encoder(**preprocessed)\n            end_image_encoder_last_hidden_state = end_image_encoder_output.last_hidden_state\n            image_encoder_last_hidden_state = (image_encoder_last_hidden_state * start_weight) + (end_image_encoder_last_hidden_state * end_weight) / (start_weight + end_weight) # use weighted approach\n        image_encoder_last_hidden_state = image_encoder_last_hidden_state * vision_weight\n        sd_models.apply_balanced_offload(shared.sd_model)\n        timer.process.add('vision', time.time()-t0)\n        return image_encoder_last_hidden_state\n\n    def step_callback(d):\n        if use_cfgzero and is_first_section and d['i'] == 0:\n            d['denoised'] = d['denoised'] * 0\n        t_current = time.time()\n        if stream.input_queue.top() == 'end' or shared.state.interrupted or shared.state.skipped:\n            stream.output_queue.push(('progress', (None, 'Interrupted...')))\n            stream.output_queue.push(('end', None))\n            raise AssertionError('Interrupted...')\n        if shared.state.paused:\n            shared.log.debug('Sampling paused')\n            while shared.state.paused:\n                if shared.state.interrupted or shared.state.skipped:\n                    raise AssertionError('Interrupted...')\n                time.sleep(0.1)\n        nonlocal total_generated_frames, t_last\n        t_preview = time.time()\n        current_step = d['i'] + 1\n        shared.state.textinfo = ''\n        shared.state.sampling_step = ((lattent_padding_loop-1) * steps) + current_step\n        shared.state.sampling_steps = steps * len(latent_paddings)\n        progress = shared.state.sampling_step / shared.state.sampling_steps\n        total_generated_frames = int(max(0, total_generated_latent_frames * 4 - 3))\n        pbar.update(task, advance=1, description=f'its={1/(t_current-t_last):.2f} sample={d[\"i\"]+1}/{steps} section={lattent_padding_loop}/{len(latent_paddings)} frames={total_generated_frames}/{num_frames*len(latent_paddings)}')\n        desc = f'Step {shared.state.sampling_step}/{shared.state.sampling_steps} | Current {current_step}/{steps} | Section {lattent_padding_loop}/{len(latent_paddings)} | Progress {progress:.2%}'\n        if use_preview:\n            preview = framepack_vae.vae_decode(d['denoised'], 'Preview')\n            stream.output_queue.push(('progress', (preview, desc)))\n        else:\n            stream.output_queue.push(('progress', (None, desc)))\n        timer.process.add('preview', time.time() - t_preview)\n        t_last = t_current\n\n    try:\n        with devices.inference_context(), pbar:\n            t0 = time.time()\n\n            height, width, _C = input_image.shape\n            start_latent, end_latent = latents_encode(input_image, end_image)\n            image_encoder_last_hidden_state = vision_encode(input_image, end_image)\n\n            # Sample loop\n            stream.output_queue.push(('progress', (None, 'Start sampling...')))\n            generator = torch.Generator(\"cpu\").manual_seed(seed)\n            if is_f1:\n                history_latents = torch.zeros(size=(1, 16, 16 + 2 + 1, height // 8, width // 8), dtype=torch.float32).cpu()\n            else:\n                history_latents = torch.zeros(size=(1, 16, 1 + 2 + 16, height // 8, width // 8), dtype=devices.dtype).cpu()\n            history_pixels = None\n            lattent_padding_loop = 0\n            last_prompt = None\n\n            for latent_padding in latent_paddings:\n                current_prompt = prompts[lattent_padding_loop]\n                if current_prompt != last_prompt:\n                    llama_vec, llama_vec_n, llama_attention_mask, llama_attention_mask_n, clip_l_pooler, clip_l_pooler_n = text_encode(current_prompt, i=lattent_padding_loop+1)\n                    last_prompt = current_prompt\n\n                sammplejob = shared.state.begin('Sample')\n                lattent_padding_loop += 1\n                # shared.log.trace(f'FramePack: op=sample section={lattent_padding_loop}/{len(latent_paddings)} frames={total_generated_frames}/{num_frames*len(latent_paddings)} window={latent_window_size} size={num_frames}')\n                if is_f1:\n                    is_first_section, is_last_section = False, False\n                else:\n                    is_first_section, is_last_section = latent_padding == latent_paddings[0], latent_padding == 0\n                if stream.input_queue.top() == 'end' or shared.state.interrupted or shared.state.skipped:\n                    stream.output_queue.push(('end', None))\n                    return\n                if is_f1:\n                    indices = torch.arange(0, sum([1, 16, 2, 1, latent_window_size])).unsqueeze(0)\n                    clean_latent_indices_start, clean_latent_4x_indices, clean_latent_2x_indices, clean_latent_1x_indices, latent_indices = indices.split([1, 16, 2, 1, latent_window_size], dim=1)\n                    clean_latent_indices = torch.cat([clean_latent_indices_start, clean_latent_1x_indices], dim=1)\n                    clean_latents_4x, clean_latents_2x, clean_latents_1x = history_latents[:, :, -sum([16, 2, 1]):, :, :].split([16, 2, 1], dim=2)\n                    clean_latents = torch.cat([start_latent.to(history_latents), clean_latents_1x], dim=2)\n                else:\n                    latent_padding_size = latent_padding * latent_window_size\n                    indices = torch.arange(0, sum([1, latent_padding_size, latent_window_size, 1, 2, 16])).unsqueeze(0)\n                    clean_latent_indices_pre, _blank_indices, latent_indices, clean_latent_indices_post, clean_latent_2x_indices, clean_latent_4x_indices = indices.split([1, latent_padding_size, latent_window_size, 1, 2, 16], dim=1)\n                    clean_latent_indices = torch.cat([clean_latent_indices_pre, clean_latent_indices_post], dim=1)\n                    clean_latents_pre = start_latent.to(history_latents)\n                    clean_latents_post, clean_latents_2x, clean_latents_4x = history_latents[:, :, :1 + 2 + 16, :, :].split([1, 2, 16], dim=2)\n                    clean_latents = torch.cat([clean_latents_pre, clean_latents_post], dim=2)\n                    if end_image is not None and is_first_section:\n                        clean_latents_post = (clean_latents_post * start_weight / len(latent_paddings)) + (end_weight * end_latent.to(history_latents)) / (start_weight/len(latent_paddings) + end_weight) # pylint: disable=possibly-used-before-assignment\n                        clean_latents = torch.cat([clean_latents_pre, clean_latents_post], dim=2)\n\n                sd_models.apply_balanced_offload(shared.sd_model)\n                transformer.initialize_teacache(enable_teacache=use_teacache, num_steps=steps, rel_l1_thresh=shared.opts.teacache_thresh)\n\n                t_sample = time.time()\n                generated_latents = k_diffusion_hunyuan.sample_hunyuan(\n                    transformer=transformer,\n                    sampler='unipc',\n                    width=width,\n                    height=height,\n                    frames=num_frames,\n                    num_inference_steps=steps,\n                    real_guidance_scale=cfg_scale,\n                    distilled_guidance_scale=cfg_distilled,\n                    guidance_rescale=cfg_rescale,\n                    shift=shift if shift > 0 else None,\n                    generator=generator,\n                    prompt_embeds=llama_vec, # pylint: disable=possibly-used-before-assignment\n                    prompt_embeds_mask=llama_attention_mask, # pylint: disable=possibly-used-before-assignment\n                    prompt_poolers=clip_l_pooler, # pylint: disable=possibly-used-before-assignment\n                    negative_prompt_embeds=llama_vec_n, # pylint: disable=possibly-used-before-assignment\n                    negative_prompt_embeds_mask=llama_attention_mask_n, # pylint: disable=possibly-used-before-assignment\n                    negative_prompt_poolers=clip_l_pooler_n, # pylint: disable=possibly-used-before-assignment\n                    image_embeddings=image_encoder_last_hidden_state,\n                    latent_indices=latent_indices,\n                    clean_latents=clean_latents,\n                    clean_latent_indices=clean_latent_indices,\n                    clean_latents_2x=clean_latents_2x,\n                    clean_latent_2x_indices=clean_latent_2x_indices,\n                    clean_latents_4x=clean_latents_4x,\n                    clean_latent_4x_indices=clean_latent_4x_indices,\n                    device=devices.device,\n                    dtype=devices.dtype,\n                    callback=step_callback,\n                )\n\n                if is_last_section:\n                    generated_latents = torch.cat([start_latent.to(generated_latents), generated_latents], dim=2)\n                total_generated_latent_frames += int(generated_latents.shape[2])\n\n                if is_f1:\n                    history_latents = torch.cat([history_latents, generated_latents.to(history_latents)], dim=2)\n                    real_history_latents = history_latents[:, :, -total_generated_latent_frames:, :, :]\n                else:\n                    history_latents = torch.cat([generated_latents.to(history_latents), history_latents], dim=2)\n                    real_history_latents = history_latents[:, :, :total_generated_latent_frames, :, :]\n\n                sd_models.apply_balanced_offload(shared.sd_model)\n                timer.process.add('sample', time.time()-t_sample)\n                shared.state.end(sammplejob)\n\n                t_vae = time.time()\n                if history_pixels is None:\n                    history_pixels = framepack_vae.vae_decode(real_history_latents, vae_type=vae_type).cpu()\n                else:\n                    overlapped_frames = latent_window_size * 4 - 3\n                    if is_f1:\n                        section_latent_frames = latent_window_size * 2\n                        current_pixels = framepack_vae.vae_decode(real_history_latents[:, :, -section_latent_frames:], vae_type=vae_type).cpu()\n                        history_pixels = utils.soft_append_bcthw(history_pixels, current_pixels, overlapped_frames)\n                    else:\n                        section_latent_frames = (latent_window_size * 2 + 1) if is_last_section else (latent_window_size * 2)\n                        current_pixels = framepack_vae.vae_decode(real_history_latents[:, :, :section_latent_frames], vae_type=vae_type).cpu()\n                        history_pixels = utils.soft_append_bcthw(current_pixels, history_pixels, overlapped_frames)\n                sd_models.apply_balanced_offload(shared.sd_model)\n                timer.process.add('vae', time.time()-t_vae)\n\n                if is_last_section:\n                    break\n\n            total_generated_frames, _video_filename = save_video(\n                p=None,\n                pixels=history_pixels,\n                audio=None,\n                binary=None,\n                mp4_fps=mp4_fps,\n                mp4_codec=mp4_codec,\n                mp4_opt=mp4_opt,\n                mp4_ext=mp4_ext,\n                mp4_sf=mp4_sf,\n                mp4_video=mp4_video,\n                mp4_frames=mp4_frames,\n                mp4_interpolate=mp4_interpolate,\n                pbar=pbar,\n                stream=stream,\n                metadata=metadata,\n            )\n\n    except AssertionError:\n        shared.log.info('FramePack: interrupted')\n        if shared.opts.keep_incomplete:\n            save_video(\n                p=None,\n                pixels=history_pixels,\n                audio=None,\n                binary=None,\n                mp4_fps=mp4_fps,\n                mp4_codec=mp4_codec,\n                mp4_opt=mp4_opt,\n                mp4_ext=mp4_ext,\n                mp4_sf=mp4_sf,\n                mp4_video=mp4_video,\n                mp4_frames=mp4_frames,\n                mp4_interpolate=0,\n                pbar=pbar,\n                stream=stream,\n                metadata=metadata,\n            )\n    except Exception as e:\n        shared.log.error(f'FramePack: {e}')\n        errors.display(e, 'FramePack')\n\n    sd_models.apply_balanced_offload(shared.sd_model)\n    stream.output_queue.push(('end', None))\n    t1 = time.time()\n    shared.log.info(f'Processed: frames={total_generated_frames} fps={total_generated_frames/(t1-t0):.2f} its={(shared.state.sampling_step)/(t1-t0):.2f} time={t1-t0:.2f} timers={timer.process.dct()} memory={memstats.memory_stats()}')\n    shared.state.end(videojob)\n"
  },
  {
    "path": "modules/framepack/framepack_wrappers.py",
    "content": "import os\nimport re\nimport random\nimport numpy as np\nimport torch\nimport gradio as gr\nfrom PIL import Image\nfrom modules import shared, processing, timer, paths, extra_networks, progress, ui_video_vlm, call_queue\nfrom modules.video_models.video_utils import check_av\nfrom modules.framepack import framepack_install # pylint: disable=wrong-import-order\nfrom modules.framepack import framepack_load # pylint: disable=wrong-import-order\nfrom modules.framepack import framepack_worker # pylint: disable=wrong-import-order\nfrom modules.framepack import framepack_hijack # pylint: disable=wrong-import-order\n\n\ntmp_dir = os.path.join(paths.data_path, 'tmp', 'framepack')\ngit_dir = os.path.join(os.path.dirname(__file__), 'framepack')\ngit_repo = 'https://github.com/lllyasviel/framepack'\ngit_commit = 'c5d375661a2557383f0b8da9d11d14c23b0c4eaf'\nloaded_variant = None\n\n\ndef prepare_image(image, resolution):\n    from modules.framepack.pipeline.utils import resize_and_center_crop\n    buckets = [\n        (416, 960), (448, 864), (480, 832), (512, 768), (544, 704), (576, 672), (608, 640),\n        (640, 608), (672, 576), (704, 544), (768, 512), (832, 480), (864, 448), (960, 416),\n    ]\n    if isinstance(image, Image.Image):\n        image = np.array(image)\n    h, w, _c = image.shape\n    min_metric = float('inf')\n    scale_factor = resolution / 640.0\n    scaled_h, scaled_w = h, w\n    for (bucket_h, bucket_w) in buckets:\n        metric = abs(h * bucket_w - w * bucket_h)\n        if metric <= min_metric:\n            min_metric = metric\n            scaled_h = round(bucket_h * scale_factor / 16) * 16\n            scaled_w = round(bucket_w * scale_factor / 16) * 16\n\n    image = resize_and_center_crop(image, target_height=scaled_h, target_width=scaled_w)\n    h0, w0, _c = image.shape\n    shared.log.debug(f'FramePack prepare: input=\"{w}x{h}\" resized=\"{w0}x{h0}\" resolution={resolution} scale={scale_factor}')\n    return image\n\n\ndef interpolate_prompts(prompts, steps):\n    interpolated_prompts = [''] * steps\n    if prompts is None:\n        return interpolated_prompts\n    if isinstance(prompts, str):\n        prompts = re.split(r'[,\\n]', prompts)\n        prompts = [p.strip() for p in prompts]\n    if len(prompts) == 0:\n        return interpolated_prompts\n    if len(prompts) == steps:\n        return prompts\n    factor = steps / len(prompts)\n    for i in range(steps):\n        prompt_index = int(i / factor)\n        interpolated_prompts[i] = prompts[prompt_index]\n        # shared.log.trace(f'FramePack interpolate: section={i} prompt=\"{interpolated_prompts[i]}\"')\n    return interpolated_prompts\n\n\ndef prepare_prompts(p, init_image, prompt:str, section_prompt:str, num_sections:int, vlm_enhance:bool, vlm_model:str, vlm_system_prompt:str):\n    section_prompts = interpolate_prompts(section_prompt, num_sections)\n    p.prompt = shared.prompt_styles.apply_styles_to_prompt(p.prompt, p.styles)\n    p.negative_prompt = shared.prompt_styles.apply_negative_styles_to_prompt(p.negative_prompt, p.styles)\n    shared.prompt_styles.apply_styles_to_extra(p)\n    p.prompts, p.network_data = extra_networks.parse_prompts([p.prompt])\n    extra_networks.activate(p)\n    prompt = p.prompts[0]\n    generated_prompts = [''] * num_sections\n    previous_prompt = None\n    for i in range(num_sections):\n        current_prompt = (prompt + ' ' + section_prompts[i]).strip()\n        if current_prompt == previous_prompt:\n            generated_prompts[i] = generated_prompts[i - 1]\n        else:\n            generated_prompts[i] = ui_video_vlm.enhance_prompt(\n                enable=vlm_enhance,\n                model=vlm_model,\n                image=init_image,\n                prompt=current_prompt,\n                system_prompt=vlm_system_prompt,\n            )\n            previous_prompt = current_prompt\n    return generated_prompts\n\n\ndef load_model(variant, attention):\n    global loaded_variant # pylint: disable=global-statement\n    if (shared.sd_model_type != 'hunyuanvideo') or (loaded_variant != variant):\n        yield gr.update(), gr.update(), 'Verifying FramePack'\n        framepack_install.install_requirements(attention)\n        # framepack_install.git_clone(git_repo=git_repo, git_dir=git_dir, tmp_dir=tmp_dir)\n        # framepack_install.git_update(git_dir=git_dir, git_commit=git_commit)\n        # sys.path.append(git_dir)\n        framepack_hijack.set_progress_bar_config()\n        yield gr.update(), gr.update(), 'Model loading...', ''\n        loaded_variant = framepack_load.load_model(variant)\n        if loaded_variant is not None:\n            yield gr.update(), gr.update(), 'Model loaded'\n        else:\n            yield gr.update(), gr.update(), 'Model load failed'\n\n\ndef unload_model():\n    shared.log.debug('FramePack unload')\n    framepack_load.unload_model()\n    yield gr.update(), gr.update(), 'Model unloaded'\n\n\ndef run_framepack(task_id, _ui_state, init_image, end_image, start_weight, end_weight, vision_weight, prompt, system_prompt, optimized_prompt, section_prompt, negative_prompt, styles, seed, resolution, duration, latent_ws, steps, cfg_scale, cfg_distilled, cfg_rescale, shift, use_teacache, use_cfgzero, use_preview, mp4_fps, mp4_codec, mp4_sf, mp4_video, mp4_frames, mp4_opt, mp4_ext, mp4_interpolate, attention, vae_type, variant, vlm_enhance, vlm_model, vlm_system_prompt):\n    variant = variant or 'bi-directional'\n    if init_image is None:\n        init_image = np.zeros((resolution, resolution, 3), dtype=np.uint8)\n        mode = 't2v'\n    elif end_image is not None:\n        mode = 'flf2v'\n    else:\n        mode = 'i2v'\n\n    av = check_av()\n    if av is None:\n        yield gr.update(), gr.update(), 'AV package not installed'\n        return\n\n    progress.add_task_to_queue(task_id)\n    with call_queue.get_lock():\n        progress.start_task(task_id)\n\n        yield from load_model(variant, attention)\n        if shared.sd_model_type != 'hunyuanvideo':\n            progress.finish_task(task_id)\n            yield gr.update(), gr.update(), 'Model load failed'\n            return\n\n        yield gr.update(), gr.update(), 'Generate starting...'\n        from modules.framepack.pipeline.thread_utils import AsyncStream, async_run\n        framepack_worker.stream = AsyncStream()\n\n        if seed is None or seed == '' or seed == -1:\n            random.seed()\n            seed = random.randrange(4294967294)\n        seed = int(seed)\n        torch.manual_seed(seed)\n        num_sections = len(framepack_worker.get_latent_paddings(mp4_fps, mp4_interpolate, latent_ws, duration, variant))\n        num_frames = (latent_ws * 4 - 3) * num_sections + 1\n        shared.log.info(f'FramePack start: mode={mode} variant=\"{variant}\" frames={num_frames} sections={num_sections} resolution={resolution} seed={seed} duration={duration} teacache={use_teacache} thres={shared.opts.teacache_thresh} cfgzero={use_cfgzero}')\n        shared.log.info(f'FramePack params: steps={steps} start={start_weight} end={end_weight} vision={vision_weight} scale={cfg_scale} distilled={cfg_distilled} rescale={cfg_rescale} shift={shift}')\n        init_image = prepare_image(init_image, resolution)\n        if end_image is not None:\n            end_image = prepare_image(end_image, resolution)\n        w, h, _c = init_image.shape\n        p = processing.StableDiffusionProcessingVideo(\n            sd_model=shared.sd_model,\n            prompt=prompt,\n            negative_prompt=negative_prompt,\n            styles=styles,\n            steps=steps,\n            seed=seed,\n            width=w,\n            height=h,\n        )\n        p.ops.append('video')\n        prompts = prepare_prompts(p, init_image, prompt, section_prompt, num_sections, vlm_enhance, vlm_model, vlm_system_prompt)\n\n        async_run(\n            framepack_worker.worker,\n            init_image, end_image,\n            start_weight, end_weight, vision_weight,\n            prompts, p.negative_prompt, system_prompt, optimized_prompt, vlm_enhance,\n            seed,\n            duration,\n            latent_ws,\n            p.steps,\n            cfg_scale, cfg_distilled, cfg_rescale,\n            shift,\n            use_teacache, use_cfgzero, use_preview,\n            mp4_fps, mp4_codec, mp4_sf, mp4_video, mp4_frames, mp4_opt, mp4_ext, mp4_interpolate,\n            vae_type, variant,\n        )\n\n        output_filename = None\n        while True:\n            flag, data = framepack_worker.stream.output_queue.next()\n            if flag == 'file':\n                output_filename = data\n                yield output_filename, gr.update(), gr.update()\n            if flag == 'progress':\n                preview, text = data\n                summary = timer.process.summary(min_time=0.25, total=False).replace('=', ' ')\n                memory = shared.mem_mon.summary()\n                stats = f\"<div class='performance'><p>{summary} {memory}</p></div>\"\n                yield gr.update(), gr.update(value=preview), f'{text} {stats}'\n            if flag == 'end':\n                yield output_filename, gr.update(value=None), gr.update()\n                break\n\n        progress.finish_task(task_id)\n    yield gr.update(), gr.update(), 'Generate finished'\n    return\n"
  },
  {
    "path": "modules/framepack/pipeline/bucket_tools.py",
    "content": "bucket_options = {\n    640: [\n        (416, 960),\n        (448, 864),\n        (480, 832),\n        (512, 768),\n        (544, 704),\n        (576, 672),\n        (608, 640),\n        (640, 608),\n        (672, 576),\n        (704, 544),\n        (768, 512),\n        (832, 480),\n        (864, 448),\n        (960, 416),\n    ],\n}\n\n\ndef find_nearest_bucket(h, w, resolution=640):\n    min_metric = float('inf')\n    best_bucket = None\n    for (bucket_h, bucket_w) in bucket_options[resolution]:\n        metric = abs(h * bucket_w - w * bucket_h)\n        if metric <= min_metric:\n            min_metric = metric\n            best_bucket = (bucket_h, bucket_w)\n    return best_bucket\n"
  },
  {
    "path": "modules/framepack/pipeline/clip_vision.py",
    "content": "import numpy as np\n\n\ndef hf_clip_vision_encode(image, feature_extractor, image_encoder):\n    assert isinstance(image, np.ndarray)\n    assert image.ndim == 3 and image.shape[2] == 3\n    assert image.dtype == np.uint8\n\n    preprocessed = feature_extractor.preprocess(images=image, return_tensors=\"pt\").to(device=image_encoder.device, dtype=image_encoder.dtype)\n    image_encoder_output = image_encoder(**preprocessed)\n\n    return image_encoder_output\n"
  },
  {
    "path": "modules/framepack/pipeline/dit_common.py",
    "content": "import torch\nimport accelerate.accelerator\n\nfrom diffusers.models.normalization import RMSNorm, LayerNorm, FP32LayerNorm, AdaLayerNormContinuous\n\n\naccelerate.accelerator.convert_outputs_to_fp32 = lambda x: x\n\n\ndef LayerNorm_forward(self, x):\n    return torch.nn.functional.layer_norm(x, self.normalized_shape, self.weight, self.bias, self.eps).to(x)\n\n\nLayerNorm.forward = LayerNorm_forward\ntorch.nn.LayerNorm.forward = LayerNorm_forward\n\n\ndef FP32LayerNorm_forward(self, x):\n    origin_dtype = x.dtype\n    return torch.nn.functional.layer_norm(\n        x.float(),\n        self.normalized_shape,\n        self.weight.float() if self.weight is not None else None,\n        self.bias.float() if self.bias is not None else None,\n        self.eps,\n    ).to(origin_dtype)\n\n\nFP32LayerNorm.forward = FP32LayerNorm_forward\n\n\ndef RMSNorm_forward(self, hidden_states):\n    input_dtype = hidden_states.dtype\n    variance = hidden_states.to(torch.float32).pow(2).mean(-1, keepdim=True)\n    hidden_states = hidden_states * torch.rsqrt(variance + self.eps)\n\n    if self.weight is None:\n        return hidden_states.to(input_dtype)\n\n    return hidden_states.to(input_dtype) * self.weight.to(input_dtype)\n\n\nRMSNorm.forward = RMSNorm_forward\n\n\ndef AdaLayerNormContinuous_forward(self, x, conditioning_embedding):\n    emb = self.linear(self.silu(conditioning_embedding))\n    scale, shift = emb.chunk(2, dim=1)\n    x = self.norm(x) * (1 + scale)[:, None, :] + shift[:, None, :]\n    return x\n\n\nAdaLayerNormContinuous.forward = AdaLayerNormContinuous_forward\n"
  },
  {
    "path": "modules/framepack/pipeline/hunyuan.py",
    "content": "import torch\nfrom diffusers.pipelines.hunyuan_video.pipeline_hunyuan_video import DEFAULT_PROMPT_TEMPLATE\nfrom modules import devices\n\n\n@torch.no_grad()\ndef encode_prompt_conds(prompt, text_encoder, text_encoder_2, tokenizer, tokenizer_2, max_length=256):\n    assert isinstance(prompt, str)\n\n    prompt = [prompt]\n\n    # LLAMA\n\n    prompt_llama = [DEFAULT_PROMPT_TEMPLATE[\"template\"].format(p) for p in prompt]\n    crop_start = DEFAULT_PROMPT_TEMPLATE[\"crop_start\"]\n\n    llama_inputs = tokenizer(\n        prompt_llama,\n        padding=\"max_length\",\n        max_length=max_length + crop_start,\n        truncation=True,\n        return_tensors=\"pt\",\n        return_length=False,\n        return_overflowing_tokens=False,\n        return_attention_mask=True,\n    )\n\n    llama_input_ids = llama_inputs.input_ids.to(devices.device)\n    llama_attention_mask = llama_inputs.attention_mask.to(devices.device)\n    llama_attention_length = int(llama_attention_mask.sum())\n\n    llama_outputs = text_encoder(\n        input_ids=llama_input_ids,\n        attention_mask=llama_attention_mask,\n        output_hidden_states=True,\n    )\n\n    llama_vec = llama_outputs.hidden_states[-3][:, crop_start:llama_attention_length]\n    # llama_vec_remaining = llama_outputs.hidden_states[-3][:, llama_attention_length:]\n    llama_attention_mask = llama_attention_mask[:, crop_start:llama_attention_length]\n\n    assert torch.all(llama_attention_mask.bool())\n\n    # CLIP\n\n    clip_l_input_ids = tokenizer_2(\n        prompt,\n        padding=\"max_length\",\n        max_length=77,\n        truncation=True,\n        return_overflowing_tokens=False,\n        return_length=False,\n        return_tensors=\"pt\",\n    ).input_ids\n    clip_l_pooler = text_encoder_2(clip_l_input_ids.to(devices.device), output_hidden_states=False).pooler_output\n\n    return llama_vec, clip_l_pooler\n\n\n@torch.no_grad()\ndef vae_decode_fake(latents):\n    latent_rgb_factors = [\n        [-0.0395, -0.0331, 0.0445],\n        [0.0696, 0.0795, 0.0518],\n        [0.0135, -0.0945, -0.0282],\n        [0.0108, -0.0250, -0.0765],\n        [-0.0209, 0.0032, 0.0224],\n        [-0.0804, -0.0254, -0.0639],\n        [-0.0991, 0.0271, -0.0669],\n        [-0.0646, -0.0422, -0.0400],\n        [-0.0696, -0.0595, -0.0894],\n        [-0.0799, -0.0208, -0.0375],\n        [0.1166, 0.1627, 0.0962],\n        [0.1165, 0.0432, 0.0407],\n        [-0.2315, -0.1920, -0.1355],\n        [-0.0270, 0.0401, -0.0821],\n        [-0.0616, -0.0997, -0.0727],\n        [0.0249, -0.0469, -0.1703]\n    ]  # From comfyui\n\n    latent_rgb_factors_bias = [0.0259, -0.0192, -0.0761]\n\n    weight = torch.tensor(latent_rgb_factors, device=latents.device, dtype=latents.dtype).transpose(0, 1)[:, :, None, None, None]\n    bias = torch.tensor(latent_rgb_factors_bias, device=latents.device, dtype=latents.dtype)\n\n    images = torch.nn.functional.conv3d(latents, weight, bias=bias, stride=1, padding=0, dilation=1, groups=1)\n    images = images.clamp(0.0, 1.0)\n\n    return images\n\n\n@torch.no_grad()\ndef vae_decode(latents, vae, image_mode=False):\n    latents = latents / vae.config.scaling_factor\n\n    if not image_mode:\n        image = vae.decode(latents.to(device=devices.device, dtype=devices.dtype)).sample\n    else:\n        latents = latents.to(device=devices.device, dtype=devices.dtype).unbind(2)\n        image = [vae.decode(l.unsqueeze(2)).sample for l in latents]\n        image = torch.cat(image, dim=2)\n\n    return image\n\n\n@torch.no_grad()\ndef vae_encode(image, vae):\n    latents = vae.encode(image.to(device=devices.device, dtype=devices.dtype)).latent_dist.sample()\n    latents = latents * vae.config.scaling_factor\n    return latents\n"
  },
  {
    "path": "modules/framepack/pipeline/hunyuan_video_packed.py",
    "content": "from typing import Optional, Tuple\n\nimport torch\nimport torch.nn as nn\nimport einops\nimport numpy as np\n\nfrom diffusers.loaders import FromOriginalModelMixin\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.loaders import PeftAdapterMixin\nfrom diffusers.utils import logging\nfrom diffusers.models.attention import FeedForward\nfrom diffusers.models.attention_processor import Attention\nfrom diffusers.models.embeddings import TimestepEmbedding, Timesteps, PixArtAlphaTextProjection\nfrom diffusers.models.modeling_outputs import Transformer2DModelOutput\nfrom diffusers.models.modeling_utils import ModelMixin\nfrom modules.framepack.pipeline.dit_common import LayerNorm\n\n\nenabled_backends = []\n\nif torch.backends.cuda.flash_sdp_enabled():\n    enabled_backends.append(\"flash\")\nif torch.backends.cuda.math_sdp_enabled():\n    enabled_backends.append(\"math\")\nif torch.backends.cuda.mem_efficient_sdp_enabled():\n    enabled_backends.append(\"mem_efficient\")\nif torch.backends.cuda.cudnn_sdp_enabled():\n    enabled_backends.append(\"cudnn\")\n\ntry:\n    # raise NotImplementedError\n    from xformers.ops import memory_efficient_attention as xformers_attn_func\nexcept Exception:\n    xformers_attn_func = None\n\ntry:\n    # raise NotImplementedError\n    from flash_attn import flash_attn_varlen_func, flash_attn_func\nexcept Exception:\n    flash_attn_varlen_func = None\n    flash_attn_func = None\n\ntry:\n    # raise NotImplementedError\n    from sageattention import sageattn_varlen, sageattn\nexcept Exception:\n    sageattn_varlen = None\n    sageattn = None\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\ndef pad_for_3d_conv(x, kernel_size):\n    _b, _c, t, h, w = x.shape\n    pt, ph, pw = kernel_size\n    pad_t = (pt - (t % pt)) % pt\n    pad_h = (ph - (h % ph)) % ph\n    pad_w = (pw - (w % pw)) % pw\n    return torch.nn.functional.pad(x, (0, pad_w, 0, pad_h, 0, pad_t), mode='replicate')\n\n\ndef center_down_sample_3d(x, kernel_size):\n    # pt, ph, pw = kernel_size\n    # cp = (pt * ph * pw) // 2\n    # xp = einops.rearrange(x, 'b c (t pt) (h ph) (w pw) -> (pt ph pw) b c t h w', pt=pt, ph=ph, pw=pw)\n    # xc = xp[cp]\n    # return xc\n    return torch.nn.functional.avg_pool3d(x, kernel_size, stride=kernel_size)\n\n\ndef get_cu_seqlens(text_mask, img_len):\n    batch_size = text_mask.shape[0]\n    text_len = text_mask.sum(dim=1)\n    max_len = text_mask.shape[1] + img_len\n\n    cu_seqlens = torch.zeros([2 * batch_size + 1], dtype=torch.int32, device=\"cuda\")\n\n    for i in range(batch_size):\n        s = text_len[i] + img_len\n        s1 = i * max_len + s\n        s2 = (i + 1) * max_len\n        cu_seqlens[2 * i + 1] = s1\n        cu_seqlens[2 * i + 2] = s2\n\n    return cu_seqlens\n\n\ndef apply_rotary_emb_transposed(x, freqs_cis):\n    cos, sin = freqs_cis.unsqueeze(-2).chunk(2, dim=-1)\n    x_real, x_imag = x.unflatten(-1, (-1, 2)).unbind(-1)\n    x_rotated = torch.stack([-x_imag, x_real], dim=-1).flatten(3)\n    out = x.float() * cos + x_rotated.float() * sin\n    out = out.to(x)\n    return out\n\n\ndef attn_varlen_func(q, k, v, cu_seqlens_q, cu_seqlens_kv, max_seqlen_q, max_seqlen_kv):\n    if cu_seqlens_q is None and cu_seqlens_kv is None and max_seqlen_q is None and max_seqlen_kv is None:\n        if sageattn is not None:\n            x = sageattn(q, k, v, tensor_layout='NHD')\n            return x\n\n        if flash_attn_func is not None:\n            x = flash_attn_func(q, k, v)\n            return x\n\n        if xformers_attn_func is not None:\n            x = xformers_attn_func(q, k, v)\n            return x\n\n        x = torch.nn.functional.scaled_dot_product_attention(q.transpose(1, 2), k.transpose(1, 2), v.transpose(1, 2)).transpose(1, 2)\n        return x\n\n    B, L, _H, _C = q.shape\n\n    q = q.flatten(0, 1)\n    k = k.flatten(0, 1)\n    v = v.flatten(0, 1)\n\n    if sageattn_varlen is not None:\n        x = sageattn_varlen(q, k, v, cu_seqlens_q, cu_seqlens_kv, max_seqlen_q, max_seqlen_kv)\n    elif flash_attn_varlen_func is not None:\n        x = flash_attn_varlen_func(q, k, v, cu_seqlens_q, cu_seqlens_kv, max_seqlen_q, max_seqlen_kv)\n    else:\n        raise NotImplementedError('No Attn Installed!')\n\n    x = x.unflatten(0, (B, L))\n\n    return x\n\n\nclass HunyuanAttnProcessorFlashAttnDouble:\n    def __call__(self, attn, hidden_states, encoder_hidden_states, attention_mask, image_rotary_emb):\n        cu_seqlens_q, cu_seqlens_kv, max_seqlen_q, max_seqlen_kv = attention_mask\n\n        query = attn.to_q(hidden_states)\n        key = attn.to_k(hidden_states)\n        value = attn.to_v(hidden_states)\n\n        query = query.unflatten(2, (attn.heads, -1))\n        key = key.unflatten(2, (attn.heads, -1))\n        value = value.unflatten(2, (attn.heads, -1))\n\n        query = attn.norm_q(query)\n        key = attn.norm_k(key)\n\n        query = apply_rotary_emb_transposed(query, image_rotary_emb)\n        key = apply_rotary_emb_transposed(key, image_rotary_emb)\n\n        encoder_query = attn.add_q_proj(encoder_hidden_states)\n        encoder_key = attn.add_k_proj(encoder_hidden_states)\n        encoder_value = attn.add_v_proj(encoder_hidden_states)\n\n        encoder_query = encoder_query.unflatten(2, (attn.heads, -1))\n        encoder_key = encoder_key.unflatten(2, (attn.heads, -1))\n        encoder_value = encoder_value.unflatten(2, (attn.heads, -1))\n\n        encoder_query = attn.norm_added_q(encoder_query)\n        encoder_key = attn.norm_added_k(encoder_key)\n\n        query = torch.cat([query, encoder_query], dim=1)\n        key = torch.cat([key, encoder_key], dim=1)\n        value = torch.cat([value, encoder_value], dim=1)\n\n        hidden_states = attn_varlen_func(query, key, value, cu_seqlens_q, cu_seqlens_kv, max_seqlen_q, max_seqlen_kv)\n        hidden_states = hidden_states.flatten(-2)\n\n        txt_length = encoder_hidden_states.shape[1]\n        hidden_states, encoder_hidden_states = hidden_states[:, :-txt_length], hidden_states[:, -txt_length:]\n\n        hidden_states = attn.to_out[0](hidden_states)\n        hidden_states = attn.to_out[1](hidden_states)\n        encoder_hidden_states = attn.to_add_out(encoder_hidden_states)\n\n        return hidden_states, encoder_hidden_states\n\n\nclass HunyuanAttnProcessorFlashAttnSingle:\n    def __call__(self, attn, hidden_states, encoder_hidden_states, attention_mask, image_rotary_emb):\n        cu_seqlens_q, cu_seqlens_kv, max_seqlen_q, max_seqlen_kv = attention_mask\n\n        hidden_states = torch.cat([hidden_states, encoder_hidden_states], dim=1)\n\n        query = attn.to_q(hidden_states)\n        key = attn.to_k(hidden_states)\n        value = attn.to_v(hidden_states)\n\n        query = query.unflatten(2, (attn.heads, -1))\n        key = key.unflatten(2, (attn.heads, -1))\n        value = value.unflatten(2, (attn.heads, -1))\n\n        query = attn.norm_q(query)\n        key = attn.norm_k(key)\n\n        txt_length = encoder_hidden_states.shape[1]\n\n        query = torch.cat([apply_rotary_emb_transposed(query[:, :-txt_length], image_rotary_emb), query[:, -txt_length:]], dim=1)\n        key = torch.cat([apply_rotary_emb_transposed(key[:, :-txt_length], image_rotary_emb), key[:, -txt_length:]], dim=1)\n\n        hidden_states = attn_varlen_func(query, key, value, cu_seqlens_q, cu_seqlens_kv, max_seqlen_q, max_seqlen_kv)\n        hidden_states = hidden_states.flatten(-2)\n\n        hidden_states, encoder_hidden_states = hidden_states[:, :-txt_length], hidden_states[:, -txt_length:]\n\n        return hidden_states, encoder_hidden_states\n\n\nclass CombinedTimestepGuidanceTextProjEmbeddings(nn.Module):\n    def __init__(self, embedding_dim, pooled_projection_dim):\n        super().__init__()\n\n        self.time_proj = Timesteps(num_channels=256, flip_sin_to_cos=True, downscale_freq_shift=0)\n        self.timestep_embedder = TimestepEmbedding(in_channels=256, time_embed_dim=embedding_dim)\n        self.guidance_embedder = TimestepEmbedding(in_channels=256, time_embed_dim=embedding_dim)\n        self.text_embedder = PixArtAlphaTextProjection(pooled_projection_dim, embedding_dim, act_fn=\"silu\")\n\n    def forward(self, timestep, guidance, pooled_projection):\n        timesteps_proj = self.time_proj(timestep)\n        timesteps_emb = self.timestep_embedder(timesteps_proj.to(dtype=pooled_projection.dtype))\n\n        guidance_proj = self.time_proj(guidance)\n        guidance_emb = self.guidance_embedder(guidance_proj.to(dtype=pooled_projection.dtype))\n\n        time_guidance_emb = timesteps_emb + guidance_emb\n\n        pooled_projections = self.text_embedder(pooled_projection)\n        conditioning = time_guidance_emb + pooled_projections\n\n        return conditioning\n\n\nclass CombinedTimestepTextProjEmbeddings(nn.Module):\n    def __init__(self, embedding_dim, pooled_projection_dim):\n        super().__init__()\n\n        self.time_proj = Timesteps(num_channels=256, flip_sin_to_cos=True, downscale_freq_shift=0)\n        self.timestep_embedder = TimestepEmbedding(in_channels=256, time_embed_dim=embedding_dim)\n        self.text_embedder = PixArtAlphaTextProjection(pooled_projection_dim, embedding_dim, act_fn=\"silu\")\n\n    def forward(self, timestep, pooled_projection):\n        timesteps_proj = self.time_proj(timestep)\n        timesteps_emb = self.timestep_embedder(timesteps_proj.to(dtype=pooled_projection.dtype))\n\n        pooled_projections = self.text_embedder(pooled_projection)\n\n        conditioning = timesteps_emb + pooled_projections\n\n        return conditioning\n\n\nclass HunyuanVideoAdaNorm(nn.Module):\n    def __init__(self, in_features: int, out_features: Optional[int] = None) -> None:\n        super().__init__()\n\n        out_features = out_features or 2 * in_features\n        self.linear = nn.Linear(in_features, out_features)\n        self.nonlinearity = nn.SiLU()\n\n    def forward(\n        self, temb: torch.Tensor\n    ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor]:\n        temb = self.linear(self.nonlinearity(temb))\n        gate_msa, gate_mlp = temb.chunk(2, dim=-1)\n        gate_msa, gate_mlp = gate_msa.unsqueeze(1), gate_mlp.unsqueeze(1)\n        return gate_msa, gate_mlp\n\n\nclass HunyuanVideoIndividualTokenRefinerBlock(nn.Module):\n    def __init__(\n        self,\n        num_attention_heads: int,\n        attention_head_dim: int,\n        mlp_width_ratio: str = 4.0,\n        mlp_drop_rate: float = 0.0,\n        attention_bias: bool = True,\n    ) -> None:\n        super().__init__()\n\n        hidden_size = num_attention_heads * attention_head_dim\n\n        self.norm1 = LayerNorm(hidden_size, elementwise_affine=True, eps=1e-6)\n        self.attn = Attention(\n            query_dim=hidden_size,\n            cross_attention_dim=None,\n            heads=num_attention_heads,\n            dim_head=attention_head_dim,\n            bias=attention_bias,\n        )\n\n        self.norm2 = LayerNorm(hidden_size, elementwise_affine=True, eps=1e-6)\n        self.ff = FeedForward(hidden_size, mult=mlp_width_ratio, activation_fn=\"linear-silu\", dropout=mlp_drop_rate)\n\n        self.norm_out = HunyuanVideoAdaNorm(hidden_size, 2 * hidden_size)\n\n    def forward(\n        self,\n        hidden_states: torch.Tensor,\n        temb: torch.Tensor,\n        attention_mask: Optional[torch.Tensor] = None,\n    ) -> torch.Tensor:\n        norm_hidden_states = self.norm1(hidden_states)\n\n        attn_output = self.attn(\n            hidden_states=norm_hidden_states,\n            encoder_hidden_states=None,\n            attention_mask=attention_mask,\n        )\n\n        gate_msa, gate_mlp = self.norm_out(temb)\n        hidden_states = hidden_states + attn_output * gate_msa\n\n        ff_output = self.ff(self.norm2(hidden_states))\n        hidden_states = hidden_states + ff_output * gate_mlp\n\n        return hidden_states\n\n\nclass HunyuanVideoIndividualTokenRefiner(nn.Module):\n    def __init__(\n        self,\n        num_attention_heads: int,\n        attention_head_dim: int,\n        num_layers: int,\n        mlp_width_ratio: float = 4.0,\n        mlp_drop_rate: float = 0.0,\n        attention_bias: bool = True,\n    ) -> None:\n        super().__init__()\n\n        self.refiner_blocks = nn.ModuleList(\n            [\n                HunyuanVideoIndividualTokenRefinerBlock(\n                    num_attention_heads=num_attention_heads,\n                    attention_head_dim=attention_head_dim,\n                    mlp_width_ratio=mlp_width_ratio,\n                    mlp_drop_rate=mlp_drop_rate,\n                    attention_bias=attention_bias,\n                )\n                for _ in range(num_layers)\n            ]\n        )\n\n    def forward(\n        self,\n        hidden_states: torch.Tensor,\n        temb: torch.Tensor,\n        attention_mask: Optional[torch.Tensor] = None,\n    ) -> None:\n        self_attn_mask = None\n        if attention_mask is not None:\n            batch_size = attention_mask.shape[0]\n            seq_len = attention_mask.shape[1]\n            attention_mask = attention_mask.to(hidden_states.device).bool()\n            self_attn_mask_1 = attention_mask.view(batch_size, 1, 1, seq_len).repeat(1, 1, seq_len, 1)\n            self_attn_mask_2 = self_attn_mask_1.transpose(2, 3)\n            self_attn_mask = (self_attn_mask_1 & self_attn_mask_2).bool()\n            self_attn_mask[:, :, :, 0] = True\n\n        for block in self.refiner_blocks:\n            hidden_states = block(hidden_states, temb, self_attn_mask)\n\n        return hidden_states\n\n\nclass HunyuanVideoTokenRefiner(nn.Module):\n    def __init__(\n        self,\n        in_channels: int,\n        num_attention_heads: int,\n        attention_head_dim: int,\n        num_layers: int,\n        mlp_ratio: float = 4.0,\n        mlp_drop_rate: float = 0.0,\n        attention_bias: bool = True,\n    ) -> None:\n        super().__init__()\n\n        hidden_size = num_attention_heads * attention_head_dim\n\n        self.time_text_embed = CombinedTimestepTextProjEmbeddings(\n            embedding_dim=hidden_size, pooled_projection_dim=in_channels\n        )\n        self.proj_in = nn.Linear(in_channels, hidden_size, bias=True)\n        self.token_refiner = HunyuanVideoIndividualTokenRefiner(\n            num_attention_heads=num_attention_heads,\n            attention_head_dim=attention_head_dim,\n            num_layers=num_layers,\n            mlp_width_ratio=mlp_ratio,\n            mlp_drop_rate=mlp_drop_rate,\n            attention_bias=attention_bias,\n        )\n\n    def forward(\n        self,\n        hidden_states: torch.Tensor,\n        timestep: torch.LongTensor,\n        attention_mask: Optional[torch.LongTensor] = None,\n    ) -> torch.Tensor:\n        if attention_mask is None:\n            pooled_projections = hidden_states.mean(dim=1)\n        else:\n            original_dtype = hidden_states.dtype\n            mask_float = attention_mask.float().unsqueeze(-1)\n            pooled_projections = (hidden_states * mask_float).sum(dim=1) / mask_float.sum(dim=1)\n            pooled_projections = pooled_projections.to(original_dtype)\n\n        temb = self.time_text_embed(timestep, pooled_projections)\n        hidden_states = self.proj_in(hidden_states)\n        hidden_states = self.token_refiner(hidden_states, temb, attention_mask)\n\n        return hidden_states\n\n\nclass HunyuanVideoRotaryPosEmbed(nn.Module):\n    def __init__(self, rope_dim, theta):\n        super().__init__()\n        self.DT, self.DY, self.DX = rope_dim\n        self.theta = theta\n\n    @torch.no_grad()\n    def get_frequency(self, dim, pos):\n        T, H, W = pos.shape\n        freqs = 1.0 / (self.theta ** (torch.arange(0, dim, 2, dtype=torch.float32, device=pos.device)[: (dim // 2)] / dim))\n        freqs = torch.outer(freqs, pos.reshape(-1)).unflatten(-1, (T, H, W)).repeat_interleave(2, dim=0)\n        return freqs.cos(), freqs.sin()\n\n    @torch.no_grad()\n    def forward_inner(self, frame_indices, height, width, device):\n        GT, GY, GX = torch.meshgrid(\n            frame_indices.to(device=device, dtype=torch.float32),\n            torch.arange(0, height, device=device, dtype=torch.float32),\n            torch.arange(0, width, device=device, dtype=torch.float32),\n            indexing=\"ij\"\n        )\n\n        FCT, FST = self.get_frequency(self.DT, GT)\n        FCY, FSY = self.get_frequency(self.DY, GY)\n        FCX, FSX = self.get_frequency(self.DX, GX)\n\n        result = torch.cat([FCT, FCY, FCX, FST, FSY, FSX], dim=0)\n\n        return result.to(device)\n\n    @torch.no_grad()\n    def forward(self, frame_indices, height, width, device):\n        frame_indices = frame_indices.unbind(0)\n        results = [self.forward_inner(f, height, width, device) for f in frame_indices]\n        results = torch.stack(results, dim=0)\n        return results\n\n\nclass AdaLayerNormZero(nn.Module):\n    def __init__(self, embedding_dim: int, norm_type=\"layer_norm\", bias=True):\n        super().__init__()\n        self.silu = nn.SiLU()\n        self.linear = nn.Linear(embedding_dim, 6 * embedding_dim, bias=bias)\n        if norm_type == \"layer_norm\":\n            self.norm = LayerNorm(embedding_dim, elementwise_affine=False, eps=1e-6)\n        else:\n            raise ValueError(f\"unknown norm_type {norm_type}\")\n\n    def forward(\n        self,\n        x: torch.Tensor,\n        emb: Optional[torch.Tensor] = None,\n    ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor]:\n        emb = emb.unsqueeze(-2)\n        emb = self.linear(self.silu(emb))\n        shift_msa, scale_msa, gate_msa, shift_mlp, scale_mlp, gate_mlp = emb.chunk(6, dim=-1)\n        x = self.norm(x) * (1 + scale_msa) + shift_msa\n        return x, gate_msa, shift_mlp, scale_mlp, gate_mlp\n\n\nclass AdaLayerNormZeroSingle(nn.Module):\n    def __init__(self, embedding_dim: int, norm_type=\"layer_norm\", bias=True):\n        super().__init__()\n\n        self.silu = nn.SiLU()\n        self.linear = nn.Linear(embedding_dim, 3 * embedding_dim, bias=bias)\n        if norm_type == \"layer_norm\":\n            self.norm = LayerNorm(embedding_dim, elementwise_affine=False, eps=1e-6)\n        else:\n            raise ValueError(f\"unknown norm_type {norm_type}\")\n\n    def forward(\n        self,\n        x: torch.Tensor,\n        emb: Optional[torch.Tensor] = None,\n    ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor]:\n        emb = emb.unsqueeze(-2)\n        emb = self.linear(self.silu(emb))\n        shift_msa, scale_msa, gate_msa = emb.chunk(3, dim=-1)\n        x = self.norm(x) * (1 + scale_msa) + shift_msa\n        return x, gate_msa\n\n\nclass AdaLayerNormContinuous(nn.Module):\n    def __init__(\n        self,\n        embedding_dim: int,\n        conditioning_embedding_dim: int,\n        elementwise_affine=True,\n        eps=1e-5,\n        bias=True,\n        norm_type=\"layer_norm\",\n    ):\n        super().__init__()\n        self.silu = nn.SiLU()\n        self.linear = nn.Linear(conditioning_embedding_dim, embedding_dim * 2, bias=bias)\n        if norm_type == \"layer_norm\":\n            self.norm = LayerNorm(embedding_dim, eps, elementwise_affine, bias)\n        else:\n            raise ValueError(f\"unknown norm_type {norm_type}\")\n\n    def forward(self, x: torch.Tensor, emb: torch.Tensor) -> torch.Tensor:\n        emb = emb.unsqueeze(-2)\n        emb = self.linear(self.silu(emb))\n        scale, shift = emb.chunk(2, dim=-1)\n        x = self.norm(x) * (1 + scale) + shift\n        return x\n\n\nclass HunyuanVideoSingleTransformerBlock(nn.Module):\n    def __init__(\n        self,\n        num_attention_heads: int,\n        attention_head_dim: int,\n        mlp_ratio: float = 4.0,\n        qk_norm: str = \"rms_norm\",\n    ) -> None:\n        super().__init__()\n\n        hidden_size = num_attention_heads * attention_head_dim\n        mlp_dim = int(hidden_size * mlp_ratio)\n\n        self.attn = Attention(\n            query_dim=hidden_size,\n            cross_attention_dim=None,\n            dim_head=attention_head_dim,\n            heads=num_attention_heads,\n            out_dim=hidden_size,\n            bias=True,\n            processor=HunyuanAttnProcessorFlashAttnSingle(),\n            qk_norm=qk_norm,\n            eps=1e-6,\n            pre_only=True,\n        )\n\n        self.norm = AdaLayerNormZeroSingle(hidden_size, norm_type=\"layer_norm\")\n        self.proj_mlp = nn.Linear(hidden_size, mlp_dim)\n        self.act_mlp = nn.GELU(approximate=\"tanh\")\n        self.proj_out = nn.Linear(hidden_size + mlp_dim, hidden_size)\n\n    def forward(\n        self,\n        hidden_states: torch.Tensor,\n        encoder_hidden_states: torch.Tensor,\n        temb: torch.Tensor,\n        attention_mask: Optional[torch.Tensor] = None,\n        image_rotary_emb: Optional[Tuple[torch.Tensor, torch.Tensor]] = None,\n    ) -> torch.Tensor:\n        text_seq_length = encoder_hidden_states.shape[1]\n        hidden_states = torch.cat([hidden_states, encoder_hidden_states], dim=1)\n\n        residual = hidden_states\n\n        # 1. Input normalization\n        norm_hidden_states, gate = self.norm(hidden_states, emb=temb)\n        mlp_hidden_states = self.act_mlp(self.proj_mlp(norm_hidden_states))\n\n        norm_hidden_states, norm_encoder_hidden_states = (\n            norm_hidden_states[:, :-text_seq_length, :],\n            norm_hidden_states[:, -text_seq_length:, :],\n        )\n\n        # 2. Attention\n        attn_output, context_attn_output = self.attn(\n            hidden_states=norm_hidden_states,\n            encoder_hidden_states=norm_encoder_hidden_states,\n            attention_mask=attention_mask,\n            image_rotary_emb=image_rotary_emb,\n        )\n        attn_output = torch.cat([attn_output, context_attn_output], dim=1)\n\n        # 3. Modulation and residual connection\n        hidden_states = torch.cat([attn_output, mlp_hidden_states], dim=2)\n        hidden_states = gate * self.proj_out(hidden_states)\n        hidden_states = hidden_states + residual\n\n        hidden_states, encoder_hidden_states = (\n            hidden_states[:, :-text_seq_length, :],\n            hidden_states[:, -text_seq_length:, :],\n        )\n        return hidden_states, encoder_hidden_states\n\n\nclass HunyuanVideoTransformerBlock(nn.Module):\n    def __init__(\n        self,\n        num_attention_heads: int,\n        attention_head_dim: int,\n        mlp_ratio: float,\n        qk_norm: str = \"rms_norm\",\n    ) -> None:\n        super().__init__()\n\n        hidden_size = num_attention_heads * attention_head_dim\n\n        self.norm1 = AdaLayerNormZero(hidden_size, norm_type=\"layer_norm\")\n        self.norm1_context = AdaLayerNormZero(hidden_size, norm_type=\"layer_norm\")\n\n        self.attn = Attention(\n            query_dim=hidden_size,\n            cross_attention_dim=None,\n            added_kv_proj_dim=hidden_size,\n            dim_head=attention_head_dim,\n            heads=num_attention_heads,\n            out_dim=hidden_size,\n            context_pre_only=False,\n            bias=True,\n            processor=HunyuanAttnProcessorFlashAttnDouble(),\n            qk_norm=qk_norm,\n            eps=1e-6,\n        )\n\n        self.norm2 = LayerNorm(hidden_size, elementwise_affine=False, eps=1e-6)\n        self.ff = FeedForward(hidden_size, mult=mlp_ratio, activation_fn=\"gelu-approximate\")\n\n        self.norm2_context = LayerNorm(hidden_size, elementwise_affine=False, eps=1e-6)\n        self.ff_context = FeedForward(hidden_size, mult=mlp_ratio, activation_fn=\"gelu-approximate\")\n\n    def forward(\n        self,\n        hidden_states: torch.Tensor,\n        encoder_hidden_states: torch.Tensor,\n        temb: torch.Tensor,\n        attention_mask: Optional[torch.Tensor] = None,\n        freqs_cis: Optional[Tuple[torch.Tensor, torch.Tensor]] = None,\n    ) -> Tuple[torch.Tensor, torch.Tensor]:\n        # 1. Input normalization\n        norm_hidden_states, gate_msa, shift_mlp, scale_mlp, gate_mlp = self.norm1(hidden_states, emb=temb)\n        norm_encoder_hidden_states, c_gate_msa, c_shift_mlp, c_scale_mlp, c_gate_mlp = self.norm1_context(encoder_hidden_states, emb=temb)\n\n        # 2. Joint attention\n        attn_output, context_attn_output = self.attn(\n            hidden_states=norm_hidden_states,\n            encoder_hidden_states=norm_encoder_hidden_states,\n            attention_mask=attention_mask,\n            image_rotary_emb=freqs_cis,\n        )\n\n        # 3. Modulation and residual connection\n        hidden_states = hidden_states + attn_output * gate_msa\n        encoder_hidden_states = encoder_hidden_states + context_attn_output * c_gate_msa\n\n        norm_hidden_states = self.norm2(hidden_states)\n        norm_encoder_hidden_states = self.norm2_context(encoder_hidden_states)\n\n        norm_hidden_states = norm_hidden_states * (1 + scale_mlp) + shift_mlp\n        norm_encoder_hidden_states = norm_encoder_hidden_states * (1 + c_scale_mlp) + c_shift_mlp\n\n        # 4. Feed-forward\n        ff_output = self.ff(norm_hidden_states)\n        context_ff_output = self.ff_context(norm_encoder_hidden_states)\n\n        hidden_states = hidden_states + gate_mlp * ff_output\n        encoder_hidden_states = encoder_hidden_states + c_gate_mlp * context_ff_output\n\n        return hidden_states, encoder_hidden_states\n\n\nclass ClipVisionProjection(nn.Module):\n    def __init__(self, in_channels, out_channels):\n        super().__init__()\n        self.up = nn.Linear(in_channels, out_channels * 3)\n        self.down = nn.Linear(out_channels * 3, out_channels)\n\n    def forward(self, x):\n        projected_x = self.down(nn.functional.silu(self.up(x)))\n        return projected_x\n\n\nclass HunyuanVideoPatchEmbed(nn.Module):\n    def __init__(self, patch_size, in_chans, embed_dim):\n        super().__init__()\n        self.proj = nn.Conv3d(in_chans, embed_dim, kernel_size=patch_size, stride=patch_size)\n\n\nclass HunyuanVideoPatchEmbedForCleanLatents(nn.Module):\n    def __init__(self, inner_dim):\n        super().__init__()\n        self.proj = nn.Conv3d(16, inner_dim, kernel_size=(1, 2, 2), stride=(1, 2, 2))\n        self.proj_2x = nn.Conv3d(16, inner_dim, kernel_size=(2, 4, 4), stride=(2, 4, 4))\n        self.proj_4x = nn.Conv3d(16, inner_dim, kernel_size=(4, 8, 8), stride=(4, 8, 8))\n\n    @torch.no_grad()\n    def initialize_weight_from_another_conv3d(self, another_layer):\n        weight = another_layer.weight.detach().clone()\n        bias = another_layer.bias.detach().clone()\n\n        sd = {\n            'proj.weight': weight.clone(),\n            'proj.bias': bias.clone(),\n            'proj_2x.weight': einops.repeat(weight, 'b c t h w -> b c (t tk) (h hk) (w wk)', tk=2, hk=2, wk=2) / 8.0,\n            'proj_2x.bias': bias.clone(),\n            'proj_4x.weight': einops.repeat(weight, 'b c t h w -> b c (t tk) (h hk) (w wk)', tk=4, hk=4, wk=4) / 64.0,\n            'proj_4x.bias': bias.clone(),\n        }\n\n        sd = {k: v.clone() for k, v in sd.items()}\n\n        self.load_state_dict(sd)\n        return\n\n\nclass HunyuanVideoTransformer3DModelPacked(ModelMixin, ConfigMixin, PeftAdapterMixin, FromOriginalModelMixin):\n    @register_to_config\n    def __init__(\n        self,\n        in_channels: int = 16,\n        out_channels: int = 16,\n        num_attention_heads: int = 24,\n        attention_head_dim: int = 128,\n        num_layers: int = 20,\n        num_single_layers: int = 40,\n        num_refiner_layers: int = 2,\n        mlp_ratio: float = 4.0,\n        patch_size: int = 2,\n        patch_size_t: int = 1,\n        qk_norm: str = \"rms_norm\",\n        guidance_embeds: bool = True, # pylint: disable=unused-argument\n        text_embed_dim: int = 4096,\n        pooled_projection_dim: int = 768,\n        rope_theta: float = 256.0,\n        rope_axes_dim: Tuple[int] = (16, 56, 56),\n        has_image_proj=False,\n        image_proj_dim=1152,\n        has_clean_x_embedder=False,\n    ) -> None:\n        super().__init__()\n\n        inner_dim = num_attention_heads * attention_head_dim\n        out_channels = out_channels or in_channels\n\n        # 1. Latent and condition embedders\n        self.x_embedder = HunyuanVideoPatchEmbed((patch_size_t, patch_size, patch_size), in_channels, inner_dim)\n        self.context_embedder = HunyuanVideoTokenRefiner(\n            text_embed_dim, num_attention_heads, attention_head_dim, num_layers=num_refiner_layers\n        )\n        self.time_text_embed = CombinedTimestepGuidanceTextProjEmbeddings(inner_dim, pooled_projection_dim)\n\n        self.clean_x_embedder = None\n        self.image_projection = None\n\n        # 2. RoPE\n        self.rope = HunyuanVideoRotaryPosEmbed(rope_axes_dim, rope_theta)\n\n        # 3. Dual stream transformer blocks\n        self.transformer_blocks = nn.ModuleList(\n            [\n                HunyuanVideoTransformerBlock(\n                    num_attention_heads, attention_head_dim, mlp_ratio=mlp_ratio, qk_norm=qk_norm\n                )\n                for _ in range(num_layers)\n            ]\n        )\n\n        # 4. Single stream transformer blocks\n        self.single_transformer_blocks = nn.ModuleList(\n            [\n                HunyuanVideoSingleTransformerBlock(\n                    num_attention_heads, attention_head_dim, mlp_ratio=mlp_ratio, qk_norm=qk_norm\n                )\n                for _ in range(num_single_layers)\n            ]\n        )\n\n        # 5. Output projection\n        self.norm_out = AdaLayerNormContinuous(inner_dim, inner_dim, elementwise_affine=False, eps=1e-6)\n        self.proj_out = nn.Linear(inner_dim, patch_size_t * patch_size * patch_size * out_channels)\n\n        self.inner_dim = inner_dim\n        self.use_gradient_checkpointing = False\n        self.enable_teacache = False\n\n        if has_image_proj:\n            self.install_image_projection(image_proj_dim)\n\n        if has_clean_x_embedder:\n            self.install_clean_x_embedder()\n\n        self.high_quality_fp32_output_for_inference = False\n\n    def install_image_projection(self, in_channels):\n        self.image_projection = ClipVisionProjection(in_channels=in_channels, out_channels=self.inner_dim)\n        self.config['has_image_proj'] = True\n        self.config['image_proj_dim'] = in_channels\n\n    def install_clean_x_embedder(self):\n        self.clean_x_embedder = HunyuanVideoPatchEmbedForCleanLatents(self.inner_dim)\n        self.config['has_clean_x_embedder'] = True\n\n    def enable_gradient_checkpointing(self):\n        self.use_gradient_checkpointing = True\n\n    def disable_gradient_checkpointing(self):\n        self.use_gradient_checkpointing = False\n\n    def initialize_teacache(self, enable_teacache=True, num_steps=25, rel_l1_thresh=0.15):\n        self.enable_teacache = enable_teacache\n        self.cnt = 0\n        self.num_steps = num_steps\n        self.rel_l1_thresh = rel_l1_thresh  # 0.1 for 1.6x speedup, 0.15 for 2.1x speedup\n        self.accumulated_rel_l1_distance = 0\n        self.previous_modulated_input = None\n        self.previous_residual = None\n        self.teacache_rescale_func = np.poly1d([7.33226126e+02, -4.01131952e+02, 6.75869174e+01, -3.14987800e+00, 9.61237896e-02])\n\n    def gradient_checkpointing_method(self, block, *args):\n        if self.use_gradient_checkpointing:\n            result = torch.utils.checkpoint.checkpoint(block, *args, use_reentrant=False)\n        else:\n            result = block(*args)\n        return result\n\n    def process_input_hidden_states(\n            self,\n            latents, latent_indices=None,\n            clean_latents=None, clean_latent_indices=None,\n            clean_latents_2x=None, clean_latent_2x_indices=None,\n            clean_latents_4x=None, clean_latent_4x_indices=None\n    ):\n        hidden_states = self.gradient_checkpointing_method(self.x_embedder.proj, latents)\n        B, C, T, H, W = hidden_states.shape\n\n        if latent_indices is None:\n            latent_indices = torch.arange(0, T).unsqueeze(0).expand(B, -1)\n\n        hidden_states = hidden_states.flatten(2).transpose(1, 2)\n\n        rope_freqs = self.rope(frame_indices=latent_indices, height=H, width=W, device=hidden_states.device)\n        rope_freqs = rope_freqs.flatten(2).transpose(1, 2)\n\n        if clean_latents is not None and clean_latent_indices is not None:\n            clean_latents = clean_latents.to(hidden_states)\n            clean_latents = self.gradient_checkpointing_method(self.clean_x_embedder.proj, clean_latents)\n            clean_latents = clean_latents.flatten(2).transpose(1, 2)\n\n            clean_latent_rope_freqs = self.rope(frame_indices=clean_latent_indices, height=H, width=W, device=clean_latents.device)\n            clean_latent_rope_freqs = clean_latent_rope_freqs.flatten(2).transpose(1, 2)\n\n            hidden_states = torch.cat([clean_latents, hidden_states], dim=1)\n            rope_freqs = torch.cat([clean_latent_rope_freqs, rope_freqs], dim=1)\n\n        if clean_latents_2x is not None and clean_latent_2x_indices is not None:\n            clean_latents_2x = clean_latents_2x.to(hidden_states)\n            clean_latents_2x = pad_for_3d_conv(clean_latents_2x, (2, 4, 4))\n            clean_latents_2x = self.gradient_checkpointing_method(self.clean_x_embedder.proj_2x, clean_latents_2x)\n            clean_latents_2x = clean_latents_2x.flatten(2).transpose(1, 2)\n\n            clean_latent_2x_rope_freqs = self.rope(frame_indices=clean_latent_2x_indices, height=H, width=W, device=clean_latents_2x.device)\n            clean_latent_2x_rope_freqs = pad_for_3d_conv(clean_latent_2x_rope_freqs, (2, 2, 2))\n            clean_latent_2x_rope_freqs = center_down_sample_3d(clean_latent_2x_rope_freqs, (2, 2, 2))\n            clean_latent_2x_rope_freqs = clean_latent_2x_rope_freqs.flatten(2).transpose(1, 2)\n\n            hidden_states = torch.cat([clean_latents_2x, hidden_states], dim=1)\n            rope_freqs = torch.cat([clean_latent_2x_rope_freqs, rope_freqs], dim=1)\n\n        if clean_latents_4x is not None and clean_latent_4x_indices is not None:\n            clean_latents_4x = clean_latents_4x.to(hidden_states)\n            clean_latents_4x = pad_for_3d_conv(clean_latents_4x, (4, 8, 8))\n            clean_latents_4x = self.gradient_checkpointing_method(self.clean_x_embedder.proj_4x, clean_latents_4x)\n            clean_latents_4x = clean_latents_4x.flatten(2).transpose(1, 2)\n\n            clean_latent_4x_rope_freqs = self.rope(frame_indices=clean_latent_4x_indices, height=H, width=W, device=clean_latents_4x.device)\n            clean_latent_4x_rope_freqs = pad_for_3d_conv(clean_latent_4x_rope_freqs, (4, 4, 4))\n            clean_latent_4x_rope_freqs = center_down_sample_3d(clean_latent_4x_rope_freqs, (4, 4, 4))\n            clean_latent_4x_rope_freqs = clean_latent_4x_rope_freqs.flatten(2).transpose(1, 2)\n\n            hidden_states = torch.cat([clean_latents_4x, hidden_states], dim=1)\n            rope_freqs = torch.cat([clean_latent_4x_rope_freqs, rope_freqs], dim=1)\n\n        return hidden_states, rope_freqs\n\n    def forward(\n            self,\n            hidden_states, timestep, encoder_hidden_states, encoder_attention_mask, pooled_projections, guidance,\n            latent_indices=None,\n            clean_latents=None, clean_latent_indices=None,\n            clean_latents_2x=None, clean_latent_2x_indices=None,\n            clean_latents_4x=None, clean_latent_4x_indices=None,\n            image_embeddings=None,\n            attention_kwargs=None, return_dict=True\n    ):\n\n        if attention_kwargs is None:\n            attention_kwargs = {}\n\n        batch_size, num_channels, num_frames, height, width = hidden_states.shape\n        p, p_t = self.config['patch_size'], self.config['patch_size_t']\n        post_patch_num_frames = num_frames // p_t\n        post_patch_height = height // p\n        post_patch_width = width // p\n        original_context_length = post_patch_num_frames * post_patch_height * post_patch_width\n\n        hidden_states, rope_freqs = self.process_input_hidden_states(hidden_states, latent_indices, clean_latents, clean_latent_indices, clean_latents_2x, clean_latent_2x_indices, clean_latents_4x, clean_latent_4x_indices)\n\n        temb = self.gradient_checkpointing_method(self.time_text_embed, timestep, guidance, pooled_projections)\n        encoder_hidden_states = self.gradient_checkpointing_method(self.context_embedder, encoder_hidden_states, timestep, encoder_attention_mask)\n\n        if self.image_projection is not None:\n            assert image_embeddings is not None, 'You must use image embeddings!'\n            extra_encoder_hidden_states = self.gradient_checkpointing_method(self.image_projection, image_embeddings)\n            extra_attention_mask = torch.ones((batch_size, extra_encoder_hidden_states.shape[1]), dtype=encoder_attention_mask.dtype, device=encoder_attention_mask.device)\n\n            # must cat before (not after) encoder_hidden_states, due to attn masking\n            encoder_hidden_states = torch.cat([extra_encoder_hidden_states, encoder_hidden_states], dim=1)\n            encoder_attention_mask = torch.cat([extra_attention_mask, encoder_attention_mask], dim=1)\n\n        if batch_size == 1:\n            # When batch size is 1, we do not need any masks or var-len funcs since cropping is mathematically same to what we want\n            # If they are not same, then their impls are wrong. Ours are always the correct one.\n            text_len = encoder_attention_mask.sum().item()\n            encoder_hidden_states = encoder_hidden_states[:, :text_len]\n            attention_mask = None, None, None, None\n        else:\n            img_seq_len = hidden_states.shape[1]\n            txt_seq_len = encoder_hidden_states.shape[1]\n\n            cu_seqlens_q = get_cu_seqlens(encoder_attention_mask, img_seq_len)\n            cu_seqlens_kv = cu_seqlens_q\n            max_seqlen_q = img_seq_len + txt_seq_len\n            max_seqlen_kv = max_seqlen_q\n\n            attention_mask = cu_seqlens_q, cu_seqlens_kv, max_seqlen_q, max_seqlen_kv\n\n        if self.enable_teacache:\n            modulated_inp = self.transformer_blocks[0].norm1(hidden_states, emb=temb)[0]\n\n            if self.cnt == 0 or self.cnt == self.num_steps-1:\n                should_calc = True\n                self.accumulated_rel_l1_distance = 0\n            else:\n                curr_rel_l1 = ((modulated_inp - self.previous_modulated_input).abs().mean() / self.previous_modulated_input.abs().mean()).cpu().item()\n                self.accumulated_rel_l1_distance += self.teacache_rescale_func(curr_rel_l1)\n                should_calc = self.accumulated_rel_l1_distance >= self.rel_l1_thresh\n\n                if should_calc:\n                    self.accumulated_rel_l1_distance = 0\n\n            self.previous_modulated_input = modulated_inp\n            self.cnt += 1\n\n            if self.cnt == self.num_steps:\n                self.cnt = 0\n\n            if not should_calc:\n                hidden_states = hidden_states + self.previous_residual\n            else:\n                ori_hidden_states = hidden_states.clone()\n\n                for _block_id, block in enumerate(self.transformer_blocks):\n                    hidden_states, encoder_hidden_states = self.gradient_checkpointing_method(\n                        block,\n                        hidden_states,\n                        encoder_hidden_states,\n                        temb,\n                        attention_mask,\n                        rope_freqs\n                    )\n\n                for _block_id, block in enumerate(self.single_transformer_blocks):\n                    hidden_states, encoder_hidden_states = self.gradient_checkpointing_method(\n                        block,\n                        hidden_states,\n                        encoder_hidden_states,\n                        temb,\n                        attention_mask,\n                        rope_freqs\n                    )\n\n                self.previous_residual = hidden_states - ori_hidden_states\n        else:\n            for _block_id, block in enumerate(self.transformer_blocks):\n                hidden_states, encoder_hidden_states = self.gradient_checkpointing_method(\n                    block,\n                    hidden_states,\n                    encoder_hidden_states,\n                    temb,\n                    attention_mask,\n                    rope_freqs\n                )\n\n            for _block_id, block in enumerate(self.single_transformer_blocks):\n                hidden_states, encoder_hidden_states = self.gradient_checkpointing_method(\n                    block,\n                    hidden_states,\n                    encoder_hidden_states,\n                    temb,\n                    attention_mask,\n                    rope_freqs\n                )\n\n        hidden_states = self.gradient_checkpointing_method(self.norm_out, hidden_states, temb)\n\n        hidden_states = hidden_states[:, -original_context_length:, :]\n\n        if self.high_quality_fp32_output_for_inference:\n            hidden_states = hidden_states.to(dtype=torch.float32)\n            if self.proj_out.weight.dtype != torch.float32:\n                self.proj_out.to(dtype=torch.float32)\n\n        hidden_states = self.gradient_checkpointing_method(self.proj_out, hidden_states)\n\n        hidden_states = einops.rearrange(hidden_states, 'b (t h w) (c pt ph pw) -> b c (t pt) (h ph) (w pw)',\n                                         t=post_patch_num_frames, h=post_patch_height, w=post_patch_width,\n                                         pt=p_t, ph=p, pw=p)\n\n        if return_dict:\n            return Transformer2DModelOutput(sample=hidden_states)\n\n        return hidden_states,\n"
  },
  {
    "path": "modules/framepack/pipeline/k_diffusion_hunyuan.py",
    "content": "import math\nimport torch\nfrom modules.framepack.pipeline.uni_pc_fm import sample_unipc\nfrom modules.framepack.pipeline.wrapper import fm_wrapper\nfrom modules.framepack.pipeline.utils import repeat_to_batch_size\n\n\ndef flux_time_shift(t, mu=1.15, sigma=1.0):\n    return math.exp(mu) / (math.exp(mu) + (1 / t - 1) ** sigma)\n\n\ndef calculate_flux_mu(context_length, x1=256, y1=0.5, x2=4096, y2=1.15, exp_max=7.0):\n    k = (y2 - y1) / (x2 - x1)\n    b = y1 - k * x1\n    mu = k * context_length + b\n    mu = min(mu, math.log(exp_max))\n    return mu\n\n\ndef get_flux_sigmas_from_mu(n, mu):\n    sigmas = torch.linspace(1, 0, steps=n + 1)\n    sigmas = flux_time_shift(sigmas, mu=mu)\n    return sigmas\n\n\n@torch.inference_mode()\ndef sample_hunyuan(\n        transformer,\n        sampler='unipc',\n        initial_latent=None,\n        concat_latent=None,\n        strength=1.0,\n        width=512,\n        height=512,\n        frames=16,\n        real_guidance_scale=1.0,\n        distilled_guidance_scale=6.0,\n        guidance_rescale=0.0,\n        shift=None,\n        num_inference_steps=25,\n        batch_size=None,\n        generator=None,\n        prompt_embeds=None,\n        prompt_embeds_mask=None,\n        prompt_poolers=None,\n        negative_prompt_embeds=None,\n        negative_prompt_embeds_mask=None,\n        negative_prompt_poolers=None,\n        dtype=torch.bfloat16,\n        device=None,\n        negative_kwargs=None,\n        callback=None,\n        **kwargs,\n):\n    device = device or transformer.device\n\n    if batch_size is None:\n        batch_size = int(prompt_embeds.shape[0])\n\n    latents = torch.randn((batch_size, 16, (frames + 3) // 4, height // 8, width // 8), generator=generator, device=generator.device).to(device=device, dtype=torch.float32)\n\n    _B, _C, T, H, W = latents.shape\n    seq_length = T * H * W // 4\n\n    if shift is None:\n        mu = calculate_flux_mu(seq_length, exp_max=7.0)\n    else:\n        mu = math.log(shift)\n\n    sigmas = get_flux_sigmas_from_mu(num_inference_steps, mu).to(device)\n\n    k_model = fm_wrapper(transformer)\n\n    if initial_latent is not None:\n        sigmas = sigmas * strength\n        first_sigma = sigmas[0].to(device=device, dtype=torch.float32)\n        initial_latent = initial_latent.to(device=device, dtype=torch.float32)\n        latents = initial_latent.float() * (1.0 - first_sigma) + latents.float() * first_sigma\n\n    if concat_latent is not None:\n        concat_latent = concat_latent.to(latents)\n\n    distilled_guidance = torch.tensor([distilled_guidance_scale * 1000.0] * batch_size).to(device=device, dtype=dtype)\n\n    prompt_embeds = repeat_to_batch_size(prompt_embeds, batch_size)\n    prompt_embeds_mask = repeat_to_batch_size(prompt_embeds_mask, batch_size)\n    prompt_poolers = repeat_to_batch_size(prompt_poolers, batch_size)\n    negative_prompt_embeds = repeat_to_batch_size(negative_prompt_embeds, batch_size)\n    negative_prompt_embeds_mask = repeat_to_batch_size(negative_prompt_embeds_mask, batch_size)\n    negative_prompt_poolers = repeat_to_batch_size(negative_prompt_poolers, batch_size)\n    concat_latent = repeat_to_batch_size(concat_latent, batch_size)\n\n    sampler_kwargs = dict(\n        dtype=dtype,\n        cfg_scale=real_guidance_scale,\n        cfg_rescale=guidance_rescale,\n        concat_latent=concat_latent,\n        positive=dict(\n            pooled_projections=prompt_poolers,\n            encoder_hidden_states=prompt_embeds,\n            encoder_attention_mask=prompt_embeds_mask,\n            guidance=distilled_guidance,\n            **kwargs,\n        ),\n        negative=dict(\n            pooled_projections=negative_prompt_poolers,\n            encoder_hidden_states=negative_prompt_embeds,\n            encoder_attention_mask=negative_prompt_embeds_mask,\n            guidance=distilled_guidance,\n            **(kwargs if negative_kwargs is None else {**kwargs, **negative_kwargs}),\n        )\n    )\n\n    if sampler == 'unipc':\n        results = sample_unipc(k_model, latents, sigmas, extra_args=sampler_kwargs, disable=False, callback=callback)\n    else:\n        raise NotImplementedError(f'Sampler {sampler} is not supported.')\n\n    return results\n"
  },
  {
    "path": "modules/framepack/pipeline/thread_utils.py",
    "content": "import time\n\nfrom threading import Thread, Lock\n\n\nclass Listener:\n    task_queue = []\n    lock = Lock()\n    thread = None\n\n    @classmethod\n    def _process_tasks(cls):\n        while True:\n            task = None\n            with cls.lock:\n                if cls.task_queue:\n                    task = cls.task_queue.pop(0)\n\n            if task is None:\n                time.sleep(0.001)\n                continue\n\n            func, args, kwargs = task\n            try:\n                func(*args, **kwargs)\n            except Exception as e:\n                print(f\"Error in listener thread: {e}\")\n\n    @classmethod\n    def add_task(cls, func, *args, **kwargs):\n        with cls.lock:\n            cls.task_queue.append((func, args, kwargs))\n\n        if cls.thread is None:\n            cls.thread = Thread(target=cls._process_tasks, daemon=True)\n            cls.thread.start()\n\n\ndef async_run(func, *args, **kwargs):\n    Listener.add_task(func, *args, **kwargs)\n\n\nclass FIFOQueue:\n    def __init__(self):\n        self.queue = []\n        self.lock = Lock()\n\n    def push(self, item):\n        with self.lock:\n            self.queue.append(item)\n\n    def pop(self):\n        with self.lock:\n            if self.queue:\n                return self.queue.pop(0)\n            return None\n\n    def top(self):\n        with self.lock:\n            if self.queue:\n                return self.queue[0]\n            return None\n\n    def next(self):\n        while True:\n            with self.lock:\n                if self.queue:\n                    return self.queue.pop(0)\n\n            time.sleep(0.001)\n\n\nclass AsyncStream:\n    def __init__(self):\n        self.input_queue = FIFOQueue()\n        self.output_queue = FIFOQueue()\n"
  },
  {
    "path": "modules/framepack/pipeline/uni_pc_fm.py",
    "content": "# Better Flow Matching UniPC by Lvmin Zhang\n# (c) 2025\n# CC BY-SA 4.0\n# Attribution-ShareAlike 4.0 International Licence\n\n\nimport torch\nimport numpy as np\nfrom tqdm.auto import trange\n\n\ndef expand_dims(v, dims):\n    return v[(...,) + (None,) * (dims - 1)]\n\n\ntorch_linalg_solve = None\n\n\ndef test_solver():\n    from modules import devices, shared\n    try:\n        a = torch.randn(50, 50).to(device=devices.device, dtype=torch.float32)\n        b = torch.randn(50, 2).to(device=devices.device, dtype=torch.float32)\n        _x = torch.linalg.solve(a, b)\n        return True\n    except Exception as e:\n        shared.log.debug(f'FramePack: solver=cpu {e}')\n        return False\n\n\ndef linalg_solve(A, B, device):\n    global torch_linalg_solve # pylint: disable=global-statement\n    if torch_linalg_solve is None:\n        torch_linalg_solve = test_solver()\n    if torch_linalg_solve:\n        X = torch.linalg.solve(A, B)\n        return X\n    else:\n        A_np = A.float().cpu().numpy()\n        B_np = B.float().cpu().numpy()\n        X_np = np.linalg.solve(A_np, B_np)\n        X = torch.from_numpy(X_np).to(device=device, dtype=A.dtype)\n        return X\n\n\nclass FlowMatchUniPC:\n    def __init__(self, model, extra_args, variant='bh1'):\n        self.model = model\n        self.variant = variant\n        self.extra_args = extra_args\n\n    def model_fn(self, x, t):\n        return self.model(x, t, **self.extra_args)\n\n    def update_fn(self, x, model_prev_list, t_prev_list, t, order):\n        assert order <= len(model_prev_list)\n        dims = x.dim()\n\n        t_prev_0 = t_prev_list[-1]\n        lambda_prev_0 = - torch.log(t_prev_0)\n        lambda_t = - torch.log(t)\n        model_prev_0 = model_prev_list[-1]\n\n        h = lambda_t - lambda_prev_0\n\n        rks = []\n        D1s = []\n        for i in range(1, order):\n            t_prev_i = t_prev_list[-(i + 1)]\n            model_prev_i = model_prev_list[-(i + 1)]\n            lambda_prev_i = - torch.log(t_prev_i)\n            rk = ((lambda_prev_i - lambda_prev_0) / h)[0]\n            rks.append(rk)\n            D1s.append((model_prev_i - model_prev_0) / rk)\n\n        rks.append(1.)\n        rks = torch.tensor(rks, device=x.device)\n\n        R = []\n        b = []\n\n        hh = -h[0]\n        h_phi_1 = torch.expm1(hh)\n        h_phi_k = h_phi_1 / hh - 1\n\n        factorial_i = 1\n\n        if self.variant == 'bh1':\n            B_h = hh\n        elif self.variant == 'bh2':\n            B_h = torch.expm1(hh)\n        else:\n            raise NotImplementedError('Bad variant!')\n\n        for i in range(1, order + 1):\n            R.append(torch.pow(rks, i - 1))\n            b.append(h_phi_k * factorial_i / B_h)\n            factorial_i *= (i + 1)\n            h_phi_k = h_phi_k / hh - 1 / factorial_i\n\n        R = torch.stack(R)\n        b = torch.tensor(b, device=x.device)\n\n        use_predictor = len(D1s) > 0\n\n        if use_predictor:\n            D1s = torch.stack(D1s, dim=1)\n            if order == 2:\n                rhos_p = torch.tensor([0.5], device=b.device)\n            else:\n                rhos_p = linalg_solve(R[:-1, :-1], b[:-1], x.device)\n        else:\n            D1s = None\n            rhos_p = None\n\n        if order == 1:\n            rhos_c = torch.tensor([0.5], device=b.device)\n        else:\n            rhos_c = linalg_solve(R, b, x.device)\n\n        x_t_ = expand_dims(t / t_prev_0, dims) * x - expand_dims(h_phi_1, dims) * model_prev_0\n\n        if use_predictor:\n            pred_res = torch.tensordot(D1s, rhos_p, dims=([1], [0]))\n        else:\n            pred_res = 0\n\n        x_t = x_t_ - expand_dims(B_h, dims) * pred_res\n        model_t = self.model_fn(x_t, t)\n\n        if D1s is not None:\n            corr_res = torch.tensordot(D1s, rhos_c[:-1], dims=([1], [0]))\n        else:\n            corr_res = 0\n\n        D1_t = model_t - model_prev_0\n        x_t = x_t_ - expand_dims(B_h, dims) * (corr_res + rhos_c[-1] * D1_t)\n\n        return x_t, model_t\n\n    def sample(self, x, sigmas, callback=None, disable_pbar=False):\n        order = min(3, len(sigmas) - 2)\n        model_prev_list, t_prev_list = [], []\n        for i in trange(len(sigmas) - 1, disable=disable_pbar):\n            vec_t = sigmas[i].expand(x.shape[0])\n\n            if i == 0:\n                model_prev_list = [self.model_fn(x, vec_t)]\n                t_prev_list = [vec_t]\n            elif i < order:\n                init_order = i\n                x, model_x = self.update_fn(x, model_prev_list, t_prev_list, vec_t, init_order)\n                model_prev_list.append(model_x)\n                t_prev_list.append(vec_t)\n            else:\n                x, model_x = self.update_fn(x, model_prev_list, t_prev_list, vec_t, order)\n                model_prev_list.append(model_x)\n                t_prev_list.append(vec_t)\n\n            model_prev_list = model_prev_list[-order:]\n            t_prev_list = t_prev_list[-order:]\n\n            if callback is not None:\n                callback({'x': x, 'i': i, 'denoised': model_prev_list[-1]})\n\n        return model_prev_list[-1]\n\n\ndef sample_unipc(model, noise, sigmas, extra_args=None, callback=None, disable=False, variant='bh1'):\n    assert variant in ['bh1', 'bh2']\n    return FlowMatchUniPC(model, extra_args=extra_args, variant=variant).sample(noise, sigmas=sigmas, callback=callback, disable_pbar=disable)\n"
  },
  {
    "path": "modules/framepack/pipeline/utils.py",
    "content": "import os\nimport json\nimport random\nimport glob\nimport datetime\nimport torch\nimport einops\nimport cv2\nimport numpy as np\nimport torchvision\nfrom PIL import Image, ImageDraw, ImageFont\n\n\ndef min_resize(x, m):\n    if x.shape[0] < x.shape[1]:\n        s0 = m\n        s1 = int(float(m) / float(x.shape[0]) * float(x.shape[1]))\n    else:\n        s0 = int(float(m) / float(x.shape[1]) * float(x.shape[0]))\n        s1 = m\n    new_max = max(s1, s0)\n    raw_max = max(x.shape[0], x.shape[1])\n    if new_max < raw_max:\n        interpolation = cv2.INTER_AREA\n    else:\n        interpolation = cv2.INTER_LANCZOS4\n    y = cv2.resize(x, (s1, s0), interpolation=interpolation)\n    return y\n\n\ndef d_resize(x, y):\n    H, W, _C = y.shape\n    new_min = min(H, W)\n    raw_min = min(x.shape[0], x.shape[1])\n    if new_min < raw_min:\n        interpolation = cv2.INTER_AREA\n    else:\n        interpolation = cv2.INTER_LANCZOS4\n    y = cv2.resize(x, (W, H), interpolation=interpolation)\n    return y\n\n\ndef resize_and_center_crop(image, target_width, target_height):\n    if target_height == image.shape[0] and target_width == image.shape[1]:\n        return image\n\n    pil_image = Image.fromarray(image)\n    original_width, original_height = pil_image.size\n    scale_factor = max(target_width / original_width, target_height / original_height)\n    resized_width = int(round(original_width * scale_factor))\n    resized_height = int(round(original_height * scale_factor))\n    resized_image = pil_image.resize((resized_width, resized_height), Image.Resampling.LANCZOS)\n    left = (resized_width - target_width) / 2\n    top = (resized_height - target_height) / 2\n    right = (resized_width + target_width) / 2\n    bottom = (resized_height + target_height) / 2\n    cropped_image = resized_image.crop((left, top, right, bottom))\n    return np.array(cropped_image)\n\n\ndef resize_and_center_crop_pytorch(image, target_width, target_height):\n    _B, _C, H, W = image.shape\n\n    if H == target_height and W == target_width:\n        return image\n\n    scale_factor = max(target_width / W, target_height / H)\n    resized_width = int(round(W * scale_factor))\n    resized_height = int(round(H * scale_factor))\n\n    resized = torch.nn.functional.interpolate(image, size=(resized_height, resized_width), mode='bilinear', align_corners=False)\n\n    top = (resized_height - target_height) // 2\n    left = (resized_width - target_width) // 2\n    cropped = resized[:, :, top:top + target_height, left:left + target_width]\n\n    return cropped\n\n\ndef resize_without_crop(image, target_width, target_height):\n    if target_height == image.shape[0] and target_width == image.shape[1]:\n        return image\n\n    pil_image = Image.fromarray(image)\n    resized_image = pil_image.resize((target_width, target_height), Image.Resampling.LANCZOS)\n    return np.array(resized_image)\n\n\ndef just_crop(image, w, h):\n    if h == image.shape[0] and w == image.shape[1]:\n        return image\n\n    original_height, original_width = image.shape[:2]\n    k = min(original_height / h, original_width / w)\n    new_width = int(round(w * k))\n    new_height = int(round(h * k))\n    x_start = (original_width - new_width) // 2\n    y_start = (original_height - new_height) // 2\n    cropped_image = image[y_start:y_start + new_height, x_start:x_start + new_width]\n    return cropped_image\n\n\ndef write_to_json(data, file_path):\n    temp_file_path = file_path + \".tmp\"\n    with open(temp_file_path, 'wt', encoding='utf-8') as temp_file:\n        json.dump(data, temp_file, indent=4)\n    os.replace(temp_file_path, file_path)\n    return\n\n\ndef read_from_json(file_path):\n    with open(file_path, 'rt', encoding='utf-8') as file:\n        data = json.load(file)\n    return data\n\n\ndef get_active_parameters(m):\n    return {k: v for k, v in m.named_parameters() if v.requires_grad}\n\n\ndef cast_training_params(m, dtype=torch.float32):\n    result = {}\n    for n, param in m.named_parameters():\n        if param.requires_grad:\n            param.data = param.to(dtype)\n            result[n] = param\n    return result\n\n\ndef separate_lora_AB(parameters, B_patterns=None):\n    parameters_normal = {}\n    parameters_B = {}\n\n    if B_patterns is None:\n        B_patterns = ['.lora_B.', '__zero__']\n\n    for k, v in parameters.items():\n        if any(B_pattern in k for B_pattern in B_patterns):\n            parameters_B[k] = v\n        else:\n            parameters_normal[k] = v\n\n    return parameters_normal, parameters_B\n\n\ndef set_attr_recursive(obj, attr, value):\n    attrs = attr.split(\".\")\n    for name in attrs[:-1]:\n        obj = getattr(obj, name)\n    setattr(obj, attrs[-1], value)\n    return\n\n\n@torch.no_grad()\ndef batch_mixture(a, b=None, probability_a=0.5, mask_a=None):\n    batch_size = a.size(0)\n\n    if b is None:\n        b = torch.zeros_like(a)\n\n    if mask_a is None:\n        mask_a = torch.rand(batch_size) < probability_a\n\n    mask_a = mask_a.to(a.device)\n    mask_a = mask_a.reshape((batch_size,) + (1,) * (a.dim() - 1))\n    result = torch.where(mask_a, a, b)\n    return result\n\n\n@torch.no_grad()\ndef zero_module(module):\n    for p in module.parameters():\n        p.detach().zero_()\n    return module\n\n\n@torch.no_grad()\ndef supress_lower_channels(m, k, alpha=0.01):\n    data = m.weight.data.clone()\n\n    assert int(data.shape[1]) >= k\n\n    data[:, :k] = data[:, :k] * alpha\n    m.weight.data = data.contiguous().clone()\n    return m\n\n\ndef freeze_module(m):\n    if not hasattr(m, '_forward_inside_frozen_module'):\n        m._forward_inside_frozen_module = m.forward # pylint: disable=protected-access\n    m.requires_grad_(False)\n    m.forward = torch.no_grad()(m.forward)\n    return m\n\n\ndef get_latest_safetensors(folder_path):\n    safetensors_files = glob.glob(os.path.join(folder_path, '*.safetensors'))\n\n    if not safetensors_files:\n        raise ValueError('No file to resume!')\n\n    latest_file = max(safetensors_files, key=os.path.getmtime)\n    latest_file = os.path.abspath(os.path.realpath(latest_file))\n    return latest_file\n\n\ndef generate_random_prompt_from_tags(tags_str, min_length=3, max_length=32):\n    tags = tags_str.split(', ')\n    tags = random.sample(tags, k=min(random.randint(min_length, max_length), len(tags)))\n    prompt = ', '.join(tags)\n    return prompt\n\n\ndef interpolate_numbers(a, b, n, round_to_int=False, gamma=1.0):\n    numbers = a + (b - a) * (np.linspace(0, 1, n) ** gamma)\n    if round_to_int:\n        numbers = np.round(numbers).astype(int)\n    return numbers.tolist()\n\n\ndef uniform_random_by_intervals(inclusive, exclusive, n, round_to_int=False):\n    edges = np.linspace(0, 1, n + 1)\n    points = np.random.uniform(edges[:-1], edges[1:])\n    numbers = inclusive + (exclusive - inclusive) * points\n    if round_to_int:\n        numbers = np.round(numbers).astype(int)\n    return numbers.tolist()\n\n\ndef soft_append_bcthw(history, current, overlap=0):\n    if overlap <= 0:\n        return torch.cat([history, current], dim=2)\n\n    assert history.shape[2] >= overlap, f\"History length ({history.shape[2]}) must be >= overlap ({overlap})\"\n    assert current.shape[2] >= overlap, f\"Current length ({current.shape[2]}) must be >= overlap ({overlap})\"\n\n    weights = torch.linspace(1, 0, overlap, dtype=history.dtype, device=history.device).view(1, 1, -1, 1, 1)\n    blended = weights * history[:, :, -overlap:] + (1 - weights) * current[:, :, :overlap]\n    output = torch.cat([history[:, :, :-overlap], blended, current[:, :, overlap:]], dim=2)\n\n    return output.to(history)\n\n\ndef save_bcthw_as_mp4(x, output_filename, fps=10, crf=0):\n    b, _c, _t, _h, _w = x.shape\n\n    per_row = b\n    for p in [6, 5, 4, 3, 2]:\n        if b % p == 0:\n            per_row = p\n            break\n\n    os.makedirs(os.path.dirname(os.path.abspath(os.path.realpath(output_filename))), exist_ok=True)\n    x = torch.clamp(x.float(), -1., 1.) * 127.5 + 127.5\n    x = x.detach().cpu().to(torch.uint8)\n    x = einops.rearrange(x, '(m n) c t h w -> t (m h) (n w) c', n=per_row)\n    torchvision.io.write_video(output_filename, x, fps=fps, video_codec='libx264', options={'crf': str(int(crf))})\n    return x\n\n\ndef save_bcthw_as_png(x, output_filename):\n    os.makedirs(os.path.dirname(os.path.abspath(os.path.realpath(output_filename))), exist_ok=True)\n    x = torch.clamp(x.float(), -1., 1.) * 127.5 + 127.5\n    x = x.detach().cpu().to(torch.uint8)\n    x = einops.rearrange(x, 'b c t h w -> c (b h) (t w)')\n    torchvision.io.write_png(x, output_filename)\n    return output_filename\n\n\ndef save_bchw_as_png(x, output_filename):\n    os.makedirs(os.path.dirname(os.path.abspath(os.path.realpath(output_filename))), exist_ok=True)\n    x = torch.clamp(x.float(), -1., 1.) * 127.5 + 127.5\n    x = x.detach().cpu().to(torch.uint8)\n    x = einops.rearrange(x, 'b c h w -> c h (b w)')\n    torchvision.io.write_png(x, output_filename)\n    return output_filename\n\n\ndef add_tensors_with_padding(tensor1, tensor2):\n    if tensor1.shape == tensor2.shape:\n        return tensor1 + tensor2\n\n    shape1 = tensor1.shape\n    shape2 = tensor2.shape\n\n    new_shape = tuple(max(s1, s2) for s1, s2 in zip(shape1, shape2))\n\n    padded_tensor1 = torch.zeros(new_shape)\n    padded_tensor2 = torch.zeros(new_shape)\n\n    padded_tensor1[tuple(slice(0, s) for s in shape1)] = tensor1\n    padded_tensor2[tuple(slice(0, s) for s in shape2)] = tensor2\n\n    result = padded_tensor1 + padded_tensor2\n    return result\n\n\ndef visualize_txt_as_img(width, height, text, font_path='font/DejaVuSans.ttf', size=18):\n    txt = Image.new(\"RGB\", (width, height), color=\"white\")\n    draw = ImageDraw.Draw(txt)\n    font = ImageFont.truetype(font_path, size=size)\n\n    if text == '':\n        return np.array(txt)\n\n    # Split text into lines that fit within the image width\n    lines = []\n    words = text.split()\n    current_line = words[0]\n\n    for word in words[1:]:\n        line_with_word = f\"{current_line} {word}\"\n        if draw.textbbox((0, 0), line_with_word, font=font)[2] <= width:\n            current_line = line_with_word\n        else:\n            lines.append(current_line)\n            current_line = word\n\n    lines.append(current_line)\n\n    # Draw the text line by line\n    y = 0\n    line_height = draw.textbbox((0, 0), \"A\", font=font)[3]\n\n    for line in lines:\n        if y + line_height > height:\n            break  # stop drawing if the next line will be outside the image\n        draw.text((0, y), line, fill=\"black\", font=font)\n        y += line_height\n\n    return np.array(txt)\n\n\ndef blue_mark(x):\n    x = x.copy()\n    c = x[:, :, 2]\n    b = cv2.blur(c, (9, 9))\n    x[:, :, 2] = ((c - b) * 16.0 + b).clip(-1, 1)\n    return x\n\n\ndef green_mark(x):\n    x = x.copy()\n    x[:, :, 2] = -1\n    x[:, :, 0] = -1\n    return x\n\n\ndef frame_mark(x):\n    x = x.copy()\n    x[:64] = -1\n    x[-64:] = -1\n    x[:, :8] = 1\n    x[:, -8:] = 1\n    return x\n\n\n@torch.inference_mode()\ndef pytorch2numpy(imgs):\n    results = []\n    for x in imgs:\n        y = x.movedim(0, -1)\n        y = y * 127.5 + 127.5\n        y = y.detach().float().cpu().numpy().clip(0, 255).astype(np.uint8)\n        results.append(y)\n    return results\n\n\n@torch.inference_mode()\ndef numpy2pytorch(imgs):\n    h = torch.from_numpy(np.stack(imgs, axis=0)).float() / 127.5 - 1.0\n    h = h.movedim(-1, 1)\n    return h\n\n\n@torch.no_grad()\ndef duplicate_prefix_to_suffix(x, count, zero_out=False):\n    if zero_out:\n        return torch.cat([x, torch.zeros_like(x[:count])], dim=0)\n    else:\n        return torch.cat([x, x[:count]], dim=0)\n\n\ndef weighted_mse(a, b, weight):\n    return torch.mean(weight.float() * (a.float() - b.float()) ** 2)\n\n\ndef clamped_linear_interpolation(x, x_min, y_min, x_max, y_max, sigma=1.0):\n    x = (x - x_min) / (x_max - x_min)\n    x = max(0.0, min(x, 1.0))\n    x = x ** sigma\n    return y_min + x * (y_max - y_min)\n\n\ndef expand_to_dims(x, target_dims):\n    return x.view(*x.shape, *([1] * max(0, target_dims - x.dim())))\n\n\ndef repeat_to_batch_size(tensor: torch.Tensor, batch_size: int):\n    if tensor is None:\n        return None\n\n    first_dim = tensor.shape[0]\n\n    if first_dim == batch_size:\n        return tensor\n\n    if batch_size % first_dim != 0:\n        raise ValueError(f\"Cannot evenly repeat first dim {first_dim} to match batch_size {batch_size}.\")\n\n    repeat_times = batch_size // first_dim\n\n    return tensor.repeat(repeat_times, *[1] * (tensor.dim() - 1))\n\n\ndef dim5(x):\n    return expand_to_dims(x, 5)\n\n\ndef dim4(x):\n    return expand_to_dims(x, 4)\n\n\ndef dim3(x):\n    return expand_to_dims(x, 3)\n\n\ndef crop_or_pad_yield_mask(x, length):\n    B, F, C = x.shape\n    device = x.device\n    dtype = x.dtype\n\n    if F < length:\n        y = torch.zeros((B, length, C), dtype=dtype, device=device)\n        mask = torch.zeros((B, length), dtype=torch.bool, device=device)\n        y[:, :F, :] = x\n        mask[:, :F] = True\n        return y, mask\n\n    return x[:, :length, :], torch.ones((B, length), dtype=torch.bool, device=device)\n\n\ndef extend_dim(x, dim, minimal_length, zero_pad=False):\n    original_length = int(x.shape[dim])\n\n    if original_length >= minimal_length:\n        return x\n\n    if zero_pad:\n        padding_shape = list(x.shape)\n        padding_shape[dim] = minimal_length - original_length\n        padding = torch.zeros(padding_shape, dtype=x.dtype, device=x.device)\n    else:\n        idx = (slice(None),) * dim + (slice(-1, None),) + (slice(None),) * (len(x.shape) - dim - 1)\n        last_element = x[idx]\n        padding = last_element.repeat_interleave(minimal_length - original_length, dim=dim)\n\n    return torch.cat([x, padding], dim=dim)\n\n\ndef lazy_positional_encoding(t, repeats=None):\n    if not isinstance(t, list):\n        t = [t]\n\n    from diffusers.models.embeddings import get_timestep_embedding\n\n    te = torch.tensor(t)\n    te = get_timestep_embedding(timesteps=te, embedding_dim=256, flip_sin_to_cos=True, downscale_freq_shift=0.0, scale=1.0)\n\n    if repeats is None:\n        return te\n\n    te = te[:, None, :].expand(-1, repeats, -1)\n\n    return te\n\n\ndef state_dict_offset_merge(A, B, C=None):\n    result = {}\n    keys = A.keys()\n\n    for key in keys:\n        A_value = A[key]\n        B_value = B[key].to(A_value)\n\n        if C is None:\n            result[key] = A_value + B_value\n        else:\n            C_value = C[key].to(A_value)\n            result[key] = A_value + B_value - C_value\n\n    return result\n\n\ndef state_dict_weighted_merge(state_dicts, weights):\n    if len(state_dicts) != len(weights):\n        raise ValueError(\"Number of state dictionaries must match number of weights\")\n\n    if not state_dicts:\n        return {}\n\n    total_weight = sum(weights)\n\n    if total_weight == 0:\n        raise ValueError(\"Sum of weights cannot be zero\")\n\n    normalized_weights = [w / total_weight for w in weights]\n\n    keys = state_dicts[0].keys()\n    result = {}\n\n    for key in keys:\n        result[key] = state_dicts[0][key] * normalized_weights[0]\n\n        for i in range(1, len(state_dicts)):\n            state_dict_value = state_dicts[i][key].to(result[key])\n            result[key] += state_dict_value * normalized_weights[i]\n\n    return result\n\n\ndef group_files_by_folder(all_files):\n    grouped_files = {}\n\n    for file in all_files:\n        folder_name = os.path.basename(os.path.dirname(file))\n        if folder_name not in grouped_files:\n            grouped_files[folder_name] = []\n        grouped_files[folder_name].append(file)\n\n    list_of_lists = list(grouped_files.values())\n    return list_of_lists\n\n\ndef generate_timestamp():\n    now = datetime.datetime.now()\n    timestamp = now.strftime('%y%m%d_%H%M%S')\n    milliseconds = f\"{int(now.microsecond / 1000):03d}\"\n    random_number = random.randint(0, 9999)\n    return f\"{timestamp}_{milliseconds}_{random_number}\"\n\n\ndef write_PIL_image_with_png_info(image, metadata, path):\n    from PIL.PngImagePlugin import PngInfo\n\n    png_info = PngInfo()\n    for key, value in metadata.items():\n        png_info.add_text(key, value)\n\n    image.save(path, \"PNG\", pnginfo=png_info)\n    return image\n\n\ndef torch_safe_save(content, path):\n    torch.save(content, path + '_tmp')\n    os.replace(path + '_tmp', path)\n    return path\n\n\ndef move_optimizer_to_device(optimizer, device):\n    for state in optimizer.state.values():\n        for k, v in state.items():\n            if isinstance(v, torch.Tensor):\n                state[k] = v.to(device)\n"
  },
  {
    "path": "modules/framepack/pipeline/wrapper.py",
    "content": "import torch\n\n\ndef append_dims(x, target_dims):\n    return x[(...,) + (None,) * (target_dims - x.ndim)]\n\n\ndef rescale_noise_cfg(noise_cfg, noise_pred_text, guidance_rescale=1.0):\n    if guidance_rescale == 0:\n        return noise_cfg\n\n    std_text = noise_pred_text.std(dim=list(range(1, noise_pred_text.ndim)), keepdim=True)\n    std_cfg = noise_cfg.std(dim=list(range(1, noise_cfg.ndim)), keepdim=True)\n    noise_pred_rescaled = noise_cfg * (std_text / std_cfg)\n    noise_cfg = guidance_rescale * noise_pred_rescaled + (1.0 - guidance_rescale) * noise_cfg\n    return noise_cfg\n\n\ndef fm_wrapper(transformer, t_scale=1000.0):\n    def k_model(x, sigma, **extra_args):\n        dtype = extra_args['dtype']\n        cfg_scale = extra_args['cfg_scale']\n        cfg_rescale = extra_args['cfg_rescale']\n        concat_latent = extra_args['concat_latent']\n\n        original_dtype = x.dtype\n        sigma = sigma.float()\n\n        x = x.to(dtype)\n        timestep = (sigma * t_scale).to(dtype)\n\n        if concat_latent is None:\n            hidden_states = x\n        else:\n            hidden_states = torch.cat([x, concat_latent.to(x)], dim=1)\n\n        pred_positive = transformer(hidden_states=hidden_states, timestep=timestep, return_dict=False, **extra_args['positive'])[0].float()\n\n        if cfg_scale == 1.0:\n            pred_negative = torch.zeros_like(pred_positive)\n        else:\n            pred_negative = transformer(hidden_states=hidden_states, timestep=timestep, return_dict=False, **extra_args['negative'])[0].float()\n\n        pred_cfg = pred_negative + cfg_scale * (pred_positive - pred_negative)\n        pred = rescale_noise_cfg(pred_cfg, pred_positive, guidance_rescale=cfg_rescale)\n\n        x0 = x.float() - pred.float() * append_dims(sigma, x.ndim)\n\n        return x0.to(dtype=original_dtype)\n\n    return k_model\n"
  },
  {
    "path": "modules/generation_parameters_copypaste.py",
    "content": "from __future__ import annotations\nimport base64\nimport io\nimport os\nfrom PIL import Image\nimport gradio as gr\nfrom modules import shared, gr_tempdir, script_callbacks, images\nfrom modules.infotext import parse, mapping, quote, unquote # pylint: disable=unused-import\n\n\ntype_of_gr_update = type(gr.update())\npaste_fields: dict[str, dict] = {}\nfield_names = {}\nregistered_param_bindings: list[ParamBinding] = []\ndebug = shared.log.trace if os.environ.get('SD_PASTE_DEBUG', None) is not None else lambda *args, **kwargs: None\ndebug('Trace: PASTE')\nparse_generation_parameters = parse # compatibility\ninfotext_to_setting_name_mapping = mapping # compatibility\n\n# Mapping of aliases to metadata parameter names, populated automatically from component labels/elem_ids\n# This allows users to use component labels, elem_ids, or metadata names in the \"skip params\" setting\nparam_aliases: dict[str, str] = {}\n\n\nclass ParamBinding:\n    def __init__(self, paste_button, tabname: str, source_text_component=None, source_image_component=None, source_tabname=None, override_settings_component=None, paste_field_names=None):\n        self.paste_button = paste_button\n        self.tabname = tabname\n        self.source_text_component = source_text_component\n        self.source_image_component = source_image_component\n        self.source_tabname = source_tabname\n        self.override_settings_component = override_settings_component\n        self.paste_field_names = paste_field_names or []\n        # debug(f'ParamBinding: {vars(self)}')\n\n\ndef reset():\n    paste_fields.clear()\n    field_names.clear()\n\n\ndef image_from_url_text(filedata):\n    if filedata is None:\n        return None\n    if type(filedata) == list and len(filedata) > 0 and type(filedata[0]) == dict and filedata[0].get(\"is_file\", False):\n        filedata = filedata[0]\n    if type(filedata) == dict and filedata.get(\"is_file\", False):\n        filename = filedata[\"name\"]\n        is_in_right_dir = gr_tempdir.check_tmp_file(shared.demo, filename)\n        if is_in_right_dir:\n            filename = filename.rsplit('?', 1)[0]\n            if not os.path.exists(filename):\n                shared.log.error(f'Image file not found: {filename}')\n                image = Image.new('RGB', (512, 512))\n                image.info['parameters'] = f'Image file not found: {filename}'\n                return image\n            image = Image.open(filename)\n            geninfo, _items = images.read_info_from_image(image)\n            image.info['parameters'] = geninfo\n            return image\n        else:\n            shared.log.warning(f'File access denied: {filename}')\n            return None\n    if type(filedata) == list:\n        if len(filedata) == 0:\n            return None\n        filedata = filedata[0]\n    if not isinstance(filedata, str):\n        shared.log.warning('Incorrect filedata received')\n        return None\n    if filedata.startswith(\"data:image/png;base64,\"):\n        filedata = filedata[len(\"data:image/png;base64,\"):]\n    if filedata.startswith(\"data:image/webp;base64,\"):\n        filedata = filedata[len(\"data:image/webp;base64,\"):]\n    if filedata.startswith(\"data:image/jpeg;base64,\"):\n        filedata = filedata[len(\"data:image/jpeg;base64,\"):]\n    if filedata.startswith(\"data:image/jxl;base64,\"):\n        filedata = filedata[len(\"data:image/jxl;base64,\"):]\n    filebytes = base64.decodebytes(filedata.encode('utf-8'))\n    image = Image.open(io.BytesIO(filebytes))\n    image.load()\n    # images.read_info_from_image(image)\n    return image\n\n\ndef add_paste_fields(tabname: str, init_img: gr.Image | gr.HTML | None, fields: list[tuple[gr.components.Component, str]] | None, override_settings_component=None):\n    paste_fields[tabname] = {\"init_img\": init_img, \"fields\": fields, \"override_settings_component\": override_settings_component}\n    try:\n        field_names[tabname] = [f[1] for f in fields if f[1] is not None and not callable(f[1])] if fields is not None else [] # tuple (component, label)\n    except Exception as e:\n        shared.log.error(f\"Paste fields: tab={tabname} fields={fields} {e}\")\n        field_names[tabname] = []\n\n    # Build param_aliases automatically from component labels and elem_ids\n    if fields is not None:\n        for component, metadata_name in fields:\n            if metadata_name is None or callable(metadata_name):\n                continue\n            metadata_lower = metadata_name.lower()\n            # Extract label from component (e.g., \"Batch size\" -> maps to \"Batch-2\")\n            label = getattr(component, 'label', None)\n            if label and isinstance(label, str):\n                label_lower = label.lower()\n                if label_lower != metadata_lower and label_lower not in param_aliases:\n                    param_aliases[label_lower] = metadata_lower\n            # Extract elem_id and derive variable name (e.g., \"txt2img_batch_size\" -> \"batch_size\")\n            elem_id = getattr(component, 'elem_id', None)\n            if elem_id and isinstance(elem_id, str):\n                # Strip common prefixes like \"txt2img_\", \"img2img_\", \"control_\"\n                var_name = elem_id\n                for prefix in ['txt2img_', 'img2img_', 'control_', 'video_', 'extras_']:\n                    if var_name.startswith(prefix):\n                        var_name = var_name[len(prefix):]\n                        break\n                var_name_lower = var_name.lower()\n                if var_name_lower != metadata_lower and var_name_lower not in param_aliases:\n                    param_aliases[var_name_lower] = metadata_lower\n\n    # backwards compatibility for existing extensions\n    debug(f'Paste fields: tab={tabname} fields={field_names[tabname]}')\n    debug(f'All fields: {get_all_fields()}')\n    debug(f'Param aliases: {param_aliases}')\n    import modules.ui\n    if tabname == 'txt2img':\n        modules.ui.txt2img_paste_fields = fields # compatibility\n    elif tabname == 'img2img':\n        modules.ui.img2img_paste_fields = fields # compatibility\n    elif tabname == 'control':\n        modules.ui.control_paste_fields = fields\n    elif tabname == 'video':\n        modules.ui.video_paste_fields = fields\n\n\ndef get_all_fields():\n    all_fields = []\n    for _tab, fields in field_names.items():\n        for field in fields:\n            field = field.replace('-1', '').replace('-2', '').lower()\n            if field not in all_fields:\n                all_fields.append(field)\n    return all_fields\n\n\ndef create_buttons(tabs_list: list[str]) -> dict[str, gr.Button]:\n    buttons = {}\n    for tab in tabs_list:\n        name = tab\n        if name == 'txt2img':\n            name = 'Text'\n        elif name == 'img2img':\n            name = 'Image'\n        elif name == 'inpaint':\n            name = 'Inpaint'\n        elif name == 'extras':\n            name = 'Process'\n        elif name == 'control':\n            name = 'Control'\n        elif name == 'caption':\n            name = 'Caption'\n        buttons[tab] = gr.Button(f\"➠ {name}\", elem_id=f\"{tab}_tab\")\n    return buttons\n\n\ndef should_skip(param: str):\n    skip_params = [p.strip().lower() for p in shared.opts.disable_apply_params.split(\",\")]\n    if not shared.opts.clip_skip_enabled:\n        skip_params += ['clip skip']\n\n    # Expand skip_params with aliases (e.g., \"batch_size\" -> \"batch-2\")\n    expanded_skip = set(skip_params)\n    for skip in skip_params:\n        if skip in param_aliases:\n            expanded_skip.add(param_aliases[skip])\n\n    # Check if param should be skipped\n    param_lower = param.lower()\n    # Also check normalized name (without -1/-2) so \"batch\" skips both \"batch-1\" and \"batch-2\"\n    param_normalized = param_lower.replace('-1', '').replace('-2', '')\n\n    all_params = [p.lower() for p in get_all_fields()]\n    valid = any(p in all_params for p in skip_params)\n    skip = param_lower in expanded_skip or param_normalized in expanded_skip\n    debug(f'Check: param=\"{param}\" valid={valid} skip={skip} expanded={expanded_skip}')\n    return skip\n\n\ndef register_paste_params_button(binding: ParamBinding):\n    registered_param_bindings.append(binding)\n\n\ndef connect_paste_params_buttons():\n    binding: ParamBinding\n    for binding in registered_param_bindings:\n        if binding.tabname not in paste_fields:\n            debug(f\"Not not registered: tab={binding.tabname}\")\n            continue\n        fields: list[tuple[gr.components.Component, str]] = paste_fields[binding.tabname][\"fields\"]\n\n        destination_image_component = paste_fields[binding.tabname][\"init_img\"]\n        if binding.source_image_component:\n            if isinstance(destination_image_component, gr.Image):\n                binding.paste_button.click(\n                    _js=\"extract_image_from_gallery\" if isinstance(binding.source_image_component, gr.Gallery) else None,\n                    fn=send_image,\n                    inputs=[binding.source_image_component],\n                    outputs=[destination_image_component],\n                    show_progress='hidden',\n                )\n            elif isinstance(destination_image_component, gr.HTML): # kanvas\n                binding.paste_button.click(\n                    _js=\"send_to_kanvas\",\n                    fn=None,\n                    inputs=[binding.source_image_component],\n                    outputs=[],\n                    show_progress='hidden',\n                )\n        override_settings_component = binding.override_settings_component or paste_fields[binding.tabname][\"override_settings_component\"]\n        if binding.source_text_component is not None and fields is not None:\n            connect_paste(binding.paste_button, fields, binding.source_text_component, override_settings_component, binding.tabname)\n        if binding.source_tabname is not None and fields is not None and binding.source_tabname in paste_fields:\n            paste_field_names = ['Prompt', 'Negative prompt', 'Steps'] + ([\"Seed\"] if shared.opts.send_seed else []) + binding.paste_field_names\n            if \"fields\" in paste_fields[binding.source_tabname] and paste_fields[binding.source_tabname][\"fields\"] is not None:\n                binding.paste_button.click(\n                    fn=lambda *x: x,\n                    inputs=[field for field, name in paste_fields[binding.source_tabname][\"fields\"] if name in paste_field_names],\n                    outputs=[field for field, name in fields if name in paste_field_names],\n                )\n        binding.paste_button.click(\n            fn=None,\n            _js=f\"switch_to_{binding.tabname}\",\n            inputs=[],\n            outputs=[],\n            show_progress='hidden',\n        )\n\n\ndef send_image(x):\n    image = x if isinstance(x, Image.Image) else image_from_url_text(x)\n    return image\n\n\ndef create_override_settings_dict(text_pairs):\n    res = {}\n    params = {}\n    for pair in text_pairs:\n        k, v = pair.split(\":\", maxsplit=1)\n        params[k] = v.strip()\n    for param_name, setting_name in mapping:\n        value = params.get(param_name, None)\n        if value is None:\n            continue\n        res[setting_name] = shared.opts.cast_value(setting_name, value)\n    return res\n\n\ndef connect_paste(button, local_paste_fields, input_comp, override_settings_component, tabname):\n\n    def paste_func(prompt):\n        from modules.paths import params_path\n        if prompt is None or len(prompt.strip()) == 0:\n            if os.path.exists(params_path):\n                with open(params_path, \"r\", encoding=\"utf8\") as file:\n                    prompt = file.read()\n                shared.log.debug(f'Prompt parse: type=\"params\" prompt=\"{prompt}\"')\n            else:\n                prompt = ''\n        else:\n            shared.log.debug(f'Prompt parse: type=\"current\" prompt=\"{prompt}\"')\n        params = parse(prompt)\n        script_callbacks.infotext_pasted_callback(prompt, params)\n        res = []\n        applied = {}\n        skipped = {}\n        for output, key in local_paste_fields:\n            if callable(key):\n                v = key(params)\n            else:\n                v = params.get(key, None)\n            if v is None:\n                res.append(gr.update()) # triggers update for each gradio component even if there are no updates\n            elif isinstance(v, type_of_gr_update):\n                res.append(v)\n                applied[key] = v\n            else:\n                if isinstance(v, str) and v.strip() == '' and key in {'Prompt', 'Negative prompt'}:\n                    debug(f'Paste skip empty: \"{key}\"')\n                    res.append(gr.update())\n                    skipped[key] = v\n                    continue\n                if should_skip(key):\n                    debug(f'Paste skip: \"{key}\"=\"{v}\"')\n                    res.append(gr.update())\n                    skipped[key] = v\n                    continue\n                try:\n                    valtype = type(output.value)\n                    if hasattr(output, \"step\") and type(output.step) == float:\n                        valtype = float\n                    debug(f'Paste: \"{key}\"=\"{v}\" type={valtype} var={vars(output)}')\n                    if valtype == bool:\n                        val = False if str(v).lower() == \"false\" else True\n                    elif valtype == list:\n                        val = v if isinstance(v, list) else [item.strip() for item in v.split(',')]\n                    else:\n                        val = valtype(v)\n                    res.append(gr.update(value=val))\n                    applied[key] = val\n                except Exception as e:\n                    shared.log.error(f'Paste param: key=\"{key}\" value=\"{v}\" error=\"{e}\"')\n                    res.append(gr.update())\n        list_applied = [{k: v} for k, v in applied.items() if not callable(v) and not callable(k)]\n        shared.log.debug(f\"Prompt restore: apply={list_applied} skip={skipped}\")\n        return res\n\n    if override_settings_component is not None:\n        def paste_settings(params):\n            params.pop('Prompt', None)\n            params.pop('Negative prompt', None)\n            if not params:\n                gr.Dropdown.update(value=[], choices=[], visible=False)\n            vals = {}\n            for param_name, setting_name in infotext_to_setting_name_mapping:\n                v = params.get(param_name, None)\n                if v is None:\n                    continue\n                if setting_name == 'sd_backend':\n                    continue\n                if setting_name in shared.opts.disable_apply_metadata:\n                    continue\n                if should_skip(param_name) or should_skip(setting_name):\n                    continue\n                v = shared.opts.cast_value(setting_name, v)\n                current_value = getattr(shared.opts, setting_name, None)\n                if v == current_value:\n                    continue\n                if type(current_value) == str and v == os.path.splitext(current_value)[0]:\n                    continue\n                vals[param_name] = v\n            vals_pairs = [f\"{k}: {v}\" for k, v in vals.items()]\n            if len(vals_pairs) > 0:\n                shared.log.debug(f'Settings overrides: {vals_pairs}')\n            return gr.Dropdown.update(value=vals_pairs, choices=vals_pairs, visible=len(vals_pairs) > 0)\n\n        local_paste_fields = local_paste_fields + [(override_settings_component, paste_settings)]\n\n    button.click(\n        fn=paste_func,\n        inputs=[input_comp],\n        outputs=[x[0] for x in local_paste_fields],\n        show_progress='hidden',\n    )\n    button.click(\n        fn=None,\n        _js=f\"recalculate_prompts_{tabname}\",\n        inputs=[],\n        outputs=[],\n        show_progress='hidden',\n    )\n"
  },
  {
    "path": "modules/ggml/__init__.py",
    "content": "import os\nimport time\nimport torch\nimport diffusers\nimport transformers\n\n\ndef install_gguf():\n    # pip install git+https://github.com/junejae/transformers@feature/t5-gguf\n    # https://github.com/ggerganov/llama.cpp/issues/9566\n    from installer import install\n    install('gguf', quiet=True)\n    import importlib.metadata\n    import gguf\n    from modules import shared\n    scripts_dir = os.path.join(os.path.dirname(gguf.__file__), '..', 'scripts')\n    if os.path.exists(scripts_dir):\n        os.rename(scripts_dir, scripts_dir + str(time.time()))\n    # monkey patch transformers/diffusers so they detect newly installed gguf pacakge correctly\n    ver = importlib.metadata.version('gguf')\n    transformers.utils.import_utils._is_gguf_available = True # pylint: disable=protected-access\n    transformers.utils.import_utils._gguf_version = ver # pylint: disable=protected-access\n    diffusers.utils.import_utils._is_gguf_available = True # pylint: disable=protected-access\n    diffusers.utils.import_utils._gguf_version = ver # pylint: disable=protected-access\n    shared.log.debug(f'Load GGUF: version={ver}')\n    return gguf\n\n\ndef load_gguf_state_dict(path: str, compute_dtype: torch.dtype) -> dict:\n    gguf = install_gguf()\n    from .gguf_utils import TORCH_COMPATIBLE_QTYPES\n    from .gguf_tensor import GGMLTensor\n    sd: dict[str, GGMLTensor] = {}\n    stats = {}\n    reader = gguf.GGUFReader(path)\n    for tensor in reader.tensors:\n        torch_tensor = torch.from_numpy(tensor.data)\n        shape = torch.Size(tuple(int(v) for v in reversed(tensor.shape)))\n        if tensor.tensor_type in TORCH_COMPATIBLE_QTYPES:\n            torch_tensor = torch_tensor.view(*shape)\n        sd[tensor.name] = GGMLTensor(torch_tensor, ggml_quantization_type=tensor.tensor_type, tensor_shape=shape, compute_dtype=compute_dtype)\n        if tensor.tensor_type.name not in stats:\n            stats[tensor.tensor_type.name] = 0\n        stats[tensor.tensor_type.name] += 1\n    return sd, stats\n\n\ndef load_gguf(path, cls, compute_dtype: torch.dtype):\n    _gguf = install_gguf()\n    loader = cls.from_single_file if hasattr(cls, 'from_single_file') else cls.from_pretrained\n    module = loader(\n        path,\n        quantization_config = diffusers.GGUFQuantizationConfig(compute_dtype=compute_dtype),\n        torch_dtype=compute_dtype,\n    )\n    module.gguf = 'gguf'\n    return module\n"
  },
  {
    "path": "modules/ggml/gguf_tensor.py",
    "content": "# Original: invokeai.backend.quantization.gguf.ggml_tensor\n\nfrom typing import overload\nimport torch\nimport gguf\nfrom .gguf_utils import DEQUANTIZE_FUNCTIONS, TORCH_COMPATIBLE_QTYPES, dequantize\n\n\ndef dequantize_and_run(func, args, kwargs):\n    \"\"\"A helper function for running math ops on GGMLTensor inputs.\n\n    Dequantizes the inputs, and runs the function.\n    \"\"\"\n    dequantized_args = [a.get_dequantized_tensor() if hasattr(a, \"get_dequantized_tensor\") else a for a in args]\n    dequantized_kwargs = {\n        k: v.get_dequantized_tensor() if hasattr(v, \"get_dequantized_tensor\") else v for k, v in kwargs.items()\n    }\n    return func(*dequantized_args, **dequantized_kwargs)\n\n\ndef apply_to_quantized_tensor(func, args, kwargs):\n    \"\"\"A helper function to apply a function to a quantized GGML tensor, and re-wrap the result in a GGMLTensor.\n\n    Assumes that the first argument is a GGMLTensor.\n    \"\"\"\n    # We expect the first argument to be a GGMLTensor, and all other arguments to be non-GGMLTensors.\n    ggml_tensor = args[0]\n    assert isinstance(ggml_tensor, GGMLTensor)\n    assert all(not isinstance(a, GGMLTensor) for a in args[1:])\n    assert all(not isinstance(v, GGMLTensor) for v in kwargs.values())\n\n    new_data = func(ggml_tensor.quantized_data, *args[1:], **kwargs)\n\n    if new_data.dtype != ggml_tensor.quantized_data.dtype:\n        # This is intended to catch calls such as `.to(dtype-torch.float32)`, which are not supported on GGMLTensors.\n        raise ValueError(\"Operation changed the dtype of GGMLTensor unexpectedly.\")\n\n    return GGMLTensor(\n        new_data, ggml_tensor._ggml_quantization_type, ggml_tensor.tensor_shape, ggml_tensor.compute_dtype\n    )\n\n\nGGML_TENSOR_OP_TABLE = {\n    # Ops to run on the quantized tensor.\n    torch.ops.aten.detach.default: apply_to_quantized_tensor,  # pyright: ignore\n    torch.ops.aten._to_copy.default: apply_to_quantized_tensor,  # pyright: ignore\n    # Ops to run on dequantized tensors.\n    torch.ops.aten.t.default: dequantize_and_run,  # pyright: ignore\n    torch.ops.aten.addmm.default: dequantize_and_run,  # pyright: ignore\n    torch.ops.aten.mul.Tensor: dequantize_and_run,  # pyright: ignore\n    torch.ops.aten.split.Tensor: dequantize_and_run,  # pyright: ignore\n}\n\n\nclass GGMLTensor(torch.Tensor):\n    \"\"\"A torch.Tensor sub-class holding a quantized GGML tensor.\n\n    The underlying tensor is quantized, but the GGMLTensor class provides a dequantized view of the tensor on-the-fly\n    when it is used in operations.\n    \"\"\"\n\n    @staticmethod\n    def __new__(\n        cls,\n        data: torch.Tensor,\n        ggml_quantization_type: gguf.GGMLQuantizationType,\n        tensor_shape: torch.Size,\n        compute_dtype: torch.dtype,\n    ):\n        # Type hinting is not supported for torch.Tensor._make_wrapper_subclass, so we ignore the errors.\n        return torch.Tensor._make_wrapper_subclass(  # pyright: ignore\n            cls,\n            data.shape,\n            dtype=data.dtype,\n            layout=data.layout,\n            device=data.device,\n            strides=data.stride(),\n            storage_offset=data.storage_offset(),\n        )\n\n    def __init__(\n        self,\n        data: torch.Tensor,\n        ggml_quantization_type: gguf.GGMLQuantizationType,\n        tensor_shape: torch.Size,\n        compute_dtype: torch.dtype,\n    ):\n        self.quantized_data = data\n        self._ggml_quantization_type = ggml_quantization_type\n        # The dequantized shape of the tensor.\n        self.tensor_shape = tensor_shape\n        self.compute_dtype = compute_dtype\n\n    def __repr__(self, *, tensor_contents=None):\n        return f\"GGMLTensor(type={self._ggml_quantization_type.name}, dequantized_shape=({self.tensor_shape})\"\n\n    @overload\n    def size(self, dim: None = None) -> torch.Size: ...\n\n    @overload\n    def size(self, dim: int) -> int: ...\n\n    def size(self, dim: int | None = None):\n        \"\"\"Return the size of the tensor after dequantization. I.e. the shape that will be used in any math ops.\"\"\"\n        if dim is not None:\n            return self.tensor_shape[dim]\n        return self.tensor_shape\n\n    @property\n    def shape(self) -> torch.Size:  # pyright: ignore[reportIncompatibleVariableOverride] pyright doesn't understand this for some reason.\n        \"\"\"The shape of the tensor after dequantization. I.e. the shape that will be used in any math ops.\"\"\"\n        return self.size()\n\n    @property\n    def quantized_shape(self) -> torch.Size:\n        \"\"\"The shape of the quantized tensor.\"\"\"\n        return self.quantized_data.shape\n\n    def requires_grad_(self, mode: bool = True) -> torch.Tensor:\n        \"\"\"The GGMLTensor class is currently only designed for inference (not training). Setting requires_grad to True\n        is not supported. This method is a no-op.\n        \"\"\"\n        return self\n\n    def get_dequantized_tensor(self):\n        \"\"\"Return the dequantized tensor.\n\n        Args:\n            dtype: The dtype of the dequantized tensor.\n        \"\"\"\n        if self._ggml_quantization_type in TORCH_COMPATIBLE_QTYPES:\n            return self.quantized_data.to(self.compute_dtype)\n        elif self._ggml_quantization_type in DEQUANTIZE_FUNCTIONS:\n            return dequantize(\n                data=self.quantized_data, qtype=self._ggml_quantization_type, oshape=self.tensor_shape, dtype=None\n            ).to(self.compute_dtype)\n        else:\n            # There is no GPU implementation for this quantization type, so fallback to the numpy implementation.\n            new = gguf.quants.dequantize(self.quantized_data.cpu().numpy(), self._ggml_quantization_type)\n            return torch.from_numpy(new).to(self.quantized_data.device, dtype=self.compute_dtype)\n\n    @classmethod\n    def __torch_dispatch__(cls, func, types, args, kwargs):\n        # We will likely hit cases here in the future where a new op is encountered that is not yet supported.\n        # The new op simply needs to be added to the GGML_TENSOR_OP_TABLE.\n        if func in GGML_TENSOR_OP_TABLE:\n            return GGML_TENSOR_OP_TABLE[func](func, args, kwargs)\n        else:\n            return dequantize_and_run(func, args, kwargs)\n        return NotImplemented\n"
  },
  {
    "path": "modules/ggml/gguf_utils.py",
    "content": "# Original: invokeai.backend.quantization.gguf.utils\n# Largely based on https://github.com/city96/ComfyUI-GGUF\n\nfrom typing import Callable, Optional, Union\n\nimport gguf\nimport torch\n\nTORCH_COMPATIBLE_QTYPES = {None, gguf.GGMLQuantizationType.F32, gguf.GGMLQuantizationType.F16}\n\n# K Quants #\nQK_K = 256\nK_SCALE_SIZE = 12\n\n\ndef get_scale_min(scales: torch.Tensor):\n    n_blocks = scales.shape[0]\n    scales = scales.view(torch.uint8)\n    scales = scales.reshape((n_blocks, 3, 4))\n\n    d, m, m_d = torch.split(scales, scales.shape[-2] // 3, dim=-2)\n\n    sc = torch.cat([d & 0x3F, (m_d & 0x0F) | ((d >> 2) & 0x30)], dim=-1)\n    min = torch.cat([m & 0x3F, (m_d >> 4) | ((m >> 2) & 0x30)], dim=-1)\n\n    return (sc.reshape((n_blocks, 8)), min.reshape((n_blocks, 8)))\n\n\n# Legacy Quants #\ndef dequantize_blocks_Q8_0(\n    blocks: torch.Tensor, block_size: int, type_size: int, dtype: Optional[torch.dtype] = None\n) -> torch.Tensor:\n    d, x = split_block_dims(blocks, 2)\n    d = d.view(torch.float16).to(dtype)\n    x = x.view(torch.int8)\n    return d * x\n\n\ndef dequantize_blocks_Q5_1(\n    blocks: torch.Tensor, block_size: int, type_size: int, dtype: Optional[torch.dtype] = None\n) -> torch.Tensor:\n    n_blocks = blocks.shape[0]\n\n    d, m, qh, qs = split_block_dims(blocks, 2, 2, 4)\n    d = d.view(torch.float16).to(dtype)\n    m = m.view(torch.float16).to(dtype)\n    qh = to_uint32(qh)\n\n    qh = qh.reshape((n_blocks, 1)) >> torch.arange(32, device=d.device, dtype=torch.int32).reshape(1, 32)\n    ql = qs.reshape((n_blocks, -1, 1, block_size // 2)) >> torch.tensor(\n        [0, 4], device=d.device, dtype=torch.uint8\n    ).reshape(1, 1, 2, 1)\n    qh = (qh & 1).to(torch.uint8)\n    ql = (ql & 0x0F).reshape((n_blocks, -1))\n\n    qs = ql | (qh << 4)\n    return (d * qs) + m\n\n\ndef dequantize_blocks_Q5_0(\n    blocks: torch.Tensor, block_size: int, type_size: int, dtype: Optional[torch.dtype] = None\n) -> torch.Tensor:\n    n_blocks = blocks.shape[0]\n\n    d, qh, qs = split_block_dims(blocks, 2, 4)\n    d = d.view(torch.float16).to(dtype)\n    qh = to_uint32(qh)\n\n    qh = qh.reshape(n_blocks, 1) >> torch.arange(32, device=d.device, dtype=torch.int32).reshape(1, 32)\n    ql = qs.reshape(n_blocks, -1, 1, block_size // 2) >> torch.tensor(\n        [0, 4], device=d.device, dtype=torch.uint8\n    ).reshape(1, 1, 2, 1)\n\n    qh = (qh & 1).to(torch.uint8)\n    ql = (ql & 0x0F).reshape(n_blocks, -1)\n\n    qs = (ql | (qh << 4)).to(torch.int8) - 16\n    return d * qs\n\n\ndef dequantize_blocks_Q4_1(\n    blocks: torch.Tensor, block_size: int, type_size: int, dtype: Optional[torch.dtype] = None\n) -> torch.Tensor:\n    n_blocks = blocks.shape[0]\n\n    d, m, qs = split_block_dims(blocks, 2, 2)\n    d = d.view(torch.float16).to(dtype)\n    m = m.view(torch.float16).to(dtype)\n\n    qs = qs.reshape((n_blocks, -1, 1, block_size // 2)) >> torch.tensor(\n        [0, 4], device=d.device, dtype=torch.uint8\n    ).reshape(1, 1, 2, 1)\n    qs = (qs & 0x0F).reshape(n_blocks, -1)\n\n    return (d * qs) + m\n\n\ndef dequantize_blocks_Q4_0(\n    blocks: torch.Tensor, block_size: int, type_size: int, dtype: Optional[torch.dtype] = None\n) -> torch.Tensor:\n    n_blocks = blocks.shape[0]\n\n    d, qs = split_block_dims(blocks, 2)\n    d = d.view(torch.float16).to(dtype)\n\n    qs = qs.reshape((n_blocks, -1, 1, block_size // 2)) >> torch.tensor(\n        [0, 4], device=d.device, dtype=torch.uint8\n    ).reshape((1, 1, 2, 1))\n    qs = (qs & 0x0F).reshape((n_blocks, -1)).to(torch.int8) - 8\n    return d * qs\n\n\ndef dequantize_blocks_BF16(\n    blocks: torch.Tensor, block_size: int, type_size: int, dtype: Optional[torch.dtype] = None\n) -> torch.Tensor:\n    return (blocks.view(torch.int16).to(torch.int32) << 16).view(torch.float32)\n\n\ndef dequantize_blocks_Q6_K(\n    blocks: torch.Tensor, block_size: int, type_size: int, dtype: Optional[torch.dtype] = None\n) -> torch.Tensor:\n    n_blocks = blocks.shape[0]\n\n    (\n        ql,\n        qh,\n        scales,\n        d,\n    ) = split_block_dims(blocks, QK_K // 2, QK_K // 4, QK_K // 16)\n\n    scales = scales.view(torch.int8).to(dtype)\n    d = d.view(torch.float16).to(dtype)\n    d = (d * scales).reshape((n_blocks, QK_K // 16, 1))\n\n    ql = ql.reshape((n_blocks, -1, 1, 64)) >> torch.tensor([0, 4], device=d.device, dtype=torch.uint8).reshape(\n        (1, 1, 2, 1)\n    )\n    ql = (ql & 0x0F).reshape((n_blocks, -1, 32))\n    qh = qh.reshape((n_blocks, -1, 1, 32)) >> torch.tensor([0, 2, 4, 6], device=d.device, dtype=torch.uint8).reshape(\n        (1, 1, 4, 1)\n    )\n    qh = (qh & 0x03).reshape((n_blocks, -1, 32))\n    q = (ql | (qh << 4)).to(torch.int8) - 32\n    q = q.reshape((n_blocks, QK_K // 16, -1))\n\n    return (d * q).reshape((n_blocks, QK_K))\n\n\ndef dequantize_blocks_Q5_K(\n    blocks: torch.Tensor, block_size: int, type_size: int, dtype: Optional[torch.dtype] = None\n) -> torch.Tensor:\n    n_blocks = blocks.shape[0]\n\n    d, dmin, scales, qh, qs = split_block_dims(blocks, 2, 2, K_SCALE_SIZE, QK_K // 8)\n\n    d = d.view(torch.float16).to(dtype)\n    dmin = dmin.view(torch.float16).to(dtype)\n\n    sc, m = get_scale_min(scales)\n\n    d = (d * sc).reshape((n_blocks, -1, 1))\n    dm = (dmin * m).reshape((n_blocks, -1, 1))\n\n    ql = qs.reshape((n_blocks, -1, 1, 32)) >> torch.tensor([0, 4], device=d.device, dtype=torch.uint8).reshape(\n        (1, 1, 2, 1)\n    )\n    qh = qh.reshape((n_blocks, -1, 1, 32)) >> torch.tensor(list(range(8)), device=d.device, dtype=torch.uint8).reshape(\n        (1, 1, 8, 1)\n    )\n    ql = (ql & 0x0F).reshape((n_blocks, -1, 32))\n    qh = (qh & 0x01).reshape((n_blocks, -1, 32))\n    q = ql | (qh << 4)\n\n    return (d * q - dm).reshape((n_blocks, QK_K))\n\n\ndef dequantize_blocks_Q4_K(\n    blocks: torch.Tensor, block_size: int, type_size: int, dtype: Optional[torch.dtype] = None\n) -> torch.Tensor:\n    n_blocks = blocks.shape[0]\n\n    d, dmin, scales, qs = split_block_dims(blocks, 2, 2, K_SCALE_SIZE)\n    d = d.view(torch.float16).to(dtype)\n    dmin = dmin.view(torch.float16).to(dtype)\n\n    sc, m = get_scale_min(scales)\n\n    d = (d * sc).reshape((n_blocks, -1, 1))\n    dm = (dmin * m).reshape((n_blocks, -1, 1))\n\n    qs = qs.reshape((n_blocks, -1, 1, 32)) >> torch.tensor([0, 4], device=d.device, dtype=torch.uint8).reshape(\n        (1, 1, 2, 1)\n    )\n    qs = (qs & 0x0F).reshape((n_blocks, -1, 32))\n\n    return (d * qs - dm).reshape((n_blocks, QK_K))\n\n\ndef dequantize_blocks_Q3_K(\n    blocks: torch.Tensor, block_size: int, type_size: int, dtype: Optional[torch.dtype] = None\n) -> torch.Tensor:\n    n_blocks = blocks.shape[0]\n\n    hmask, qs, scales, d = split_block_dims(blocks, QK_K // 8, QK_K // 4, 12)\n    d = d.view(torch.float16).to(dtype)\n\n    lscales, hscales = scales[:, :8], scales[:, 8:]\n    lscales = lscales.reshape((n_blocks, 1, 8)) >> torch.tensor([0, 4], device=d.device, dtype=torch.uint8).reshape(\n        (1, 2, 1)\n    )\n    lscales = lscales.reshape((n_blocks, 16))\n    hscales = hscales.reshape((n_blocks, 1, 4)) >> torch.tensor(\n        [0, 2, 4, 6], device=d.device, dtype=torch.uint8\n    ).reshape((1, 4, 1))\n    hscales = hscales.reshape((n_blocks, 16))\n    scales = (lscales & 0x0F) | ((hscales & 0x03) << 4)\n    scales = scales.to(torch.int8) - 32\n\n    dl = (d * scales).reshape((n_blocks, 16, 1))\n\n    ql = qs.reshape((n_blocks, -1, 1, 32)) >> torch.tensor([0, 2, 4, 6], device=d.device, dtype=torch.uint8).reshape(\n        (1, 1, 4, 1)\n    )\n    qh = hmask.reshape(n_blocks, -1, 1, 32) >> torch.tensor(list(range(8)), device=d.device, dtype=torch.uint8).reshape(\n        (1, 1, 8, 1)\n    )\n    ql = ql.reshape((n_blocks, 16, QK_K // 16)) & 3\n    qh = (qh.reshape((n_blocks, 16, QK_K // 16)) & 1) ^ 1\n    q = ql.to(torch.int8) - (qh << 2).to(torch.int8)\n\n    return (dl * q).reshape((n_blocks, QK_K))\n\n\ndef dequantize_blocks_Q2_K(\n    blocks: torch.Tensor, block_size: int, type_size: int, dtype: Optional[torch.dtype] = None\n) -> torch.Tensor:\n    n_blocks = blocks.shape[0]\n\n    scales, qs, d, dmin = split_block_dims(blocks, QK_K // 16, QK_K // 4, 2)\n    d = d.view(torch.float16).to(dtype)\n    dmin = dmin.view(torch.float16).to(dtype)\n\n    # (n_blocks, 16, 1)\n    dl = (d * (scales & 0xF)).reshape((n_blocks, QK_K // 16, 1))\n    ml = (dmin * (scales >> 4)).reshape((n_blocks, QK_K // 16, 1))\n\n    shift = torch.tensor([0, 2, 4, 6], device=d.device, dtype=torch.uint8).reshape((1, 1, 4, 1))\n\n    qs = (qs.reshape((n_blocks, -1, 1, 32)) >> shift) & 3\n    qs = qs.reshape((n_blocks, QK_K // 16, 16))\n    qs = dl * qs - ml\n\n    return qs.reshape((n_blocks, -1))\n\n\nDEQUANTIZE_FUNCTIONS: dict[\n    gguf.GGMLQuantizationType, Callable[[torch.Tensor, int, int, Optional[torch.dtype]], torch.Tensor]\n] = {\n    gguf.GGMLQuantizationType.BF16: dequantize_blocks_BF16,\n    gguf.GGMLQuantizationType.Q8_0: dequantize_blocks_Q8_0,\n    gguf.GGMLQuantizationType.Q5_1: dequantize_blocks_Q5_1,\n    gguf.GGMLQuantizationType.Q5_0: dequantize_blocks_Q5_0,\n    gguf.GGMLQuantizationType.Q4_1: dequantize_blocks_Q4_1,\n    gguf.GGMLQuantizationType.Q4_0: dequantize_blocks_Q4_0,\n    gguf.GGMLQuantizationType.Q6_K: dequantize_blocks_Q6_K,\n    gguf.GGMLQuantizationType.Q5_K: dequantize_blocks_Q5_K,\n    gguf.GGMLQuantizationType.Q4_K: dequantize_blocks_Q4_K,\n    gguf.GGMLQuantizationType.Q3_K: dequantize_blocks_Q3_K,\n    gguf.GGMLQuantizationType.Q2_K: dequantize_blocks_Q2_K,\n}\n\n\ndef is_torch_compatible(tensor: Optional[torch.Tensor]):\n    return getattr(tensor, \"tensor_type\", None) in TORCH_COMPATIBLE_QTYPES\n\n\ndef is_quantized(tensor: torch.Tensor):\n    return not is_torch_compatible(tensor)\n\n\ndef dequantize(\n    data: torch.Tensor, qtype: gguf.GGMLQuantizationType, oshape: torch.Size, dtype: Optional[torch.dtype] = None\n):\n    \"\"\"\n    Dequantize tensor back to usable shape/dtype\n    \"\"\"\n    block_size, type_size = gguf.GGML_QUANT_SIZES[qtype]\n    dequantize_blocks = DEQUANTIZE_FUNCTIONS[qtype]\n\n    rows = data.reshape((-1, data.shape[-1])).view(torch.uint8)\n\n    n_blocks = rows.numel() // type_size\n    blocks = rows.reshape((n_blocks, type_size))\n    blocks = dequantize_blocks(blocks, block_size, type_size, dtype)\n    return blocks.reshape(oshape)\n\n\ndef to_uint32(x: torch.Tensor) -> torch.Tensor:\n    x = x.view(torch.uint8).to(torch.int32)\n    return (x[:, 0] | x[:, 1] << 8 | x[:, 2] << 16 | x[:, 3] << 24).unsqueeze(1)\n\n\ndef split_block_dims(blocks: torch.Tensor, *args):\n    n_max = blocks.shape[1]\n    dims = list(args) + [n_max - sum(args)]\n    return torch.split(blocks, dims, dim=1)\n\n\nPATCH_TYPES = Union[torch.Tensor, list[torch.Tensor], tuple[torch.Tensor]]\n"
  },
  {
    "path": "modules/gr_hijack.py",
    "content": "import time\nfrom PIL import Image\nimport gradio as gr\nimport gradio.processing_utils\nfrom modules import scripts_manager, patches, gr_tempdir\n\n\nhijacked = False\noriginal_IOComponent_init = None\noriginal_Block_get_config = None\noriginal_BlockContext_init = None\noriginal_Blocks_get_config_file = None\n\n\ndef process_kanvas(self, x): # only used when kanvas overrides gr.Image object\n    import numpy as np\n    from modules import errors\n    t0 = time.time()\n    image_data = list(x.get('image', {}).values())\n    image = None\n    mask = None\n    if image_data:\n        width = x['imageWidth']\n        height = x['imageHeight']\n        array = np.array(image_data, dtype=np.uint8).reshape((height, width, 4))\n        image = Image.fromarray(array, 'RGBA')\n        image = image.convert('RGB')\n    mask_data = list(x.get('mask', {}).values())\n    if mask_data:\n        width = x['maskWidth']\n        height = x['maskHeight']\n        array = np.array(mask_data, dtype=np.uint8).reshape((height, width, 4))\n        mask = Image.fromarray(array, 'RGBA')\n        # alpha = mask.getchannel(\"A\").convert(\"L\")\n        # mask = Image.merge(\"RGB\", [alpha, alpha, alpha])\n        mask = mask.convert('L')\n    t1 = time.time()\n    errors.log.debug(f'Kanvas: image={image} mask={mask} time={t1-t0:.2f}')\n    if image is None:\n        return None\n    if mask is None:\n        return self._format_image(image) # pylint: disable=protected-access\n    return { \"image\": self._format_image(image), \"mask\": self._format_image(mask) } # pylint: disable=protected-access\n\n\ndef gr_image_preprocess(self, x):\n    if x is None:\n        return x\n    mask = None\n    if isinstance(x, dict) and \"kanvas\" in x:\n        return process_kanvas(self, x)\n    if isinstance(x, dict) and \"image\" in x:\n        x, mask = x[\"image\"], x[\"mask\"]\n    if isinstance(x, str):\n        im = gradio.processing_utils.decode_base64_to_image(x)\n    else:\n        im = x\n    im = im.convert(self.image_mode)\n    if self.shape is not None:\n        im = gradio.processing_utils.resize_and_crop(im, self.shape)\n    if self.tool == \"sketch\" and self.source in [\"upload\"]:\n        if mask is not None:\n            mask_im = gradio.processing_utils.decode_base64_to_image(mask)\n            if mask_im.mode == \"RGBA\":  # whiten any opaque pixels in the mask\n                alpha_data = mask_im.getchannel(\"A\").convert(\"L\")\n                mask_im = Image.merge(\"RGB\", [alpha_data, alpha_data, alpha_data])\n        else:\n            mask_im = Image.new(\"L\", im.size, 0)\n        return { \"image\": self._format_image(im), \"mask\": self._format_image(mask_im) } # pylint: disable=protected-access\n    return self._format_image(im) # pylint: disable=protected-access\n\n\ndef add_classes_to_gradio_component(comp):\n    \"\"\"\n    this adds gradio-* to the component for css styling (ie gradio-button to gr.Button), as well as some others\n    \"\"\"\n    comp.elem_classes = [f\"gradio-{comp.get_block_name()}\", *(comp.elem_classes or [])]\n    if getattr(comp, 'multiselect', False):\n        comp.elem_classes.append('multiselect')\n\n\ndef IOComponent_init(self, *args, **kwargs):\n    self.webui_tooltip = kwargs.pop('tooltip', None)\n    if scripts_manager.scripts_current is not None:\n        scripts_manager.scripts_current.before_component(self, **kwargs)\n    scripts_manager.script_callbacks.before_component_callback(self, **kwargs)\n    res = original_IOComponent_init(self, *args, **kwargs) # pylint: disable=assignment-from-no-return\n    add_classes_to_gradio_component(self)\n    scripts_manager.script_callbacks.after_component_callback(self, **kwargs)\n    if scripts_manager.scripts_current is not None:\n        scripts_manager.scripts_current.after_component(self, **kwargs)\n    return res\n\n\ndef Block_get_config(self):\n    config = original_Block_get_config(self)\n    webui_tooltip = getattr(self, 'webui_tooltip', None)\n    if webui_tooltip:\n        config[\"webui_tooltip\"] = webui_tooltip\n    config.pop('example_inputs', None)\n    return config\n\n\ndef BlockContext_init(self, *args, **kwargs):\n    if scripts_manager.scripts_current is not None:\n        scripts_manager.scripts_current.before_component(self, **kwargs)\n    scripts_manager.script_callbacks.before_component_callback(self, **kwargs)\n    res = original_BlockContext_init(self, *args, **kwargs) # pylint: disable=assignment-from-no-return\n    add_classes_to_gradio_component(self)\n    scripts_manager.script_callbacks.after_component_callback(self, **kwargs)\n    if scripts_manager.scripts_current is not None:\n        scripts_manager.scripts_current.after_component(self, **kwargs)\n    return res\n\n\ndef Blocks_get_config_file(self, *args, **kwargs):\n    config = original_Blocks_get_config_file(self, *args, **kwargs)\n    for comp_config in config[\"components\"]:\n        if \"example_inputs\" in comp_config:\n            comp_config[\"example_inputs\"] = {\"serialized\": []}\n    return config\n\n\ndef patch_gradio():\n    def wrap_gradio_js(fn):\n        def wrapper(*args, js=None, _js=None, **kwargs):\n            if _js is not None:\n                js = _js\n            return fn(*args, js=js, **kwargs)\n        return wrapper\n\n    gradio.components.Button.click = wrap_gradio_js(gradio.components.Button.click)\n    gradio.components.Textbox.submit = wrap_gradio_js(gradio.components.Textbox.submit)\n    gradio.components.Image.clear = wrap_gradio_js(gradio.components.Image.clear)\n    gradio.components.Image.change = wrap_gradio_js(gradio.components.Image.change)\n    gradio.components.Image.upload = wrap_gradio_js(gradio.components.Image.upload)\n    gradio.components.Video.change = wrap_gradio_js(gradio.components.Video.change)\n    gradio.components.Video.clear = wrap_gradio_js(gradio.components.Video.clear)\n    gradio.components.Slider.change = wrap_gradio_js(gradio.components.Slider.change)\n    gradio.components.Dropdown.change = wrap_gradio_js(gradio.components.Dropdown.change)\n    gradio.components.File.change = wrap_gradio_js(gradio.components.File.change)\n    gradio.components.File.clear = wrap_gradio_js(gradio.components.File.clear)\n    gradio.components.Number.change = wrap_gradio_js(gradio.components.Number.change)\n    gradio.components.Textbox.change = wrap_gradio_js(gradio.components.Textbox.change)\n    gradio.components.Radio.change = wrap_gradio_js(gradio.components.Radio.change)\n    gradio.components.Checkbox.change = wrap_gradio_js(gradio.components.Checkbox.change)\n    gradio.components.CheckboxGroup.change = wrap_gradio_js(gradio.components.CheckboxGroup.change)\n    gradio.components.ColorPicker.change = wrap_gradio_js(gradio.components.ColorPicker.change)\n    gradio.layouts.Tab.select = wrap_gradio_js(gradio.layouts.Tab.select)\n    gradio.components.Image.edit = lambda *args, **kwargs: None\n    # gradio.components.image.Image.__init__ missing tool, brush_radius, mask_opacity, edit()\n\ndef init():\n    global hijacked, original_IOComponent_init, original_Block_get_config, original_BlockContext_init, original_Blocks_get_config_file # pylint: disable=global-statement\n    if hijacked:\n        return\n    gr.components.Image.preprocess =  gr_image_preprocess\n    if hasattr(gr.components, 'IOComponent'):\n        gr.components.IOComponent.pil_to_temp_file =  gr_tempdir.pil_to_temp_file\n        original_IOComponent_init = patches.patch(__name__, obj=gr.components.IOComponent, field=\"__init__\", replacement=IOComponent_init)\n    original_Block_get_config = patches.patch(__name__, obj=gr.blocks.Block, field=\"get_config\", replacement=Block_get_config)\n    original_BlockContext_init = patches.patch(__name__, obj=gr.blocks.BlockContext, field=\"__init__\", replacement=BlockContext_init)\n    original_Blocks_get_config_file = patches.patch(__name__, obj=gr.blocks.Blocks, field=\"get_config_file\", replacement=Blocks_get_config_file)\n    if not gr.__version__.startswith('3.43'):\n        patch_gradio()\n    hijacked = True\n"
  },
  {
    "path": "modules/gr_tempdir.py",
    "content": "import os\nimport tempfile\nfrom collections import namedtuple\nfrom pathlib import Path\nfrom PIL import Image, PngImagePlugin\nfrom modules import shared, errors, paths\n\n\nSavedfile = namedtuple(\"Savedfile\", [\"name\"])\ndebug = errors.log.trace if os.environ.get('SD_PATH_DEBUG', None) is not None else lambda *args, **kwargs: None\n\n\ndef register_tmp_file(gradio, filename):\n    if hasattr(gradio, 'temp_file_sets'):\n        gradio.temp_file_sets[0] = gradio.temp_file_sets[0] | {os.path.abspath(filename)}\n\n\ndef check_tmp_file(gradio, filename):\n    ok = False\n    if hasattr(gradio, 'temp_file_sets'):\n        ok = ok or any(filename in fileset for fileset in gradio.temp_file_sets)\n    # Check resolved output paths (base + specific)\n    base_samples = shared.opts.outdir_samples\n    base_grids = shared.opts.outdir_grids\n    resolved_paths = [\n        paths.resolve_output_path(base_samples, shared.opts.outdir_txt2img_samples),\n        paths.resolve_output_path(base_samples, shared.opts.outdir_img2img_samples),\n        paths.resolve_output_path(base_samples, shared.opts.outdir_extras_samples),\n        paths.resolve_output_path(base_samples, shared.opts.outdir_control_samples),\n        paths.resolve_output_path(base_samples, shared.opts.outdir_save),\n        paths.resolve_output_path(base_samples, shared.opts.outdir_video),\n        paths.resolve_output_path(base_samples, shared.opts.outdir_init_images),\n        paths.resolve_output_path(base_grids, shared.opts.outdir_txt2img_grids),\n        paths.resolve_output_path(base_grids, shared.opts.outdir_img2img_grids),\n        paths.resolve_output_path(base_grids, shared.opts.outdir_control_grids),\n    ]\n    # Also check base folders directly if set\n    if base_samples:\n        resolved_paths.append(base_samples)\n    if base_grids:\n        resolved_paths.append(base_grids)\n    for path in resolved_paths:\n        if path:\n            try:\n                ok = ok or Path(path).resolve() in Path(filename).resolve().parents\n            except Exception:\n                pass\n    return ok\n\n\ndef pil_to_temp_file(self, img: Image, dir: str, format=\"png\") -> str: # pylint: disable=redefined-builtin,unused-argument\n    \"\"\"\n    # original gradio implementation\n    bytes_data = gr.processing_utils.encode_pil_to_bytes(img, format)\n    temp_dir = Path(dir) / self.hash_bytes(bytes_data)\n    temp_dir.mkdir(exist_ok=True, parents=True)\n    filename = str(temp_dir / f\"image.{format}\")\n    img.save(filename, pnginfo=gr.processing_utils.get_pil_metadata(img))\n    \"\"\"\n    folder = dir\n    already_saved_as = getattr(img, 'already_saved_as', None)\n    exists = os.path.isfile(already_saved_as) if already_saved_as is not None else False\n    debug(f'Image lookup: {already_saved_as} exists={exists}')\n    if already_saved_as and exists:\n        register_tmp_file(shared.demo, already_saved_as)\n        file_obj = Savedfile(already_saved_as)\n        name = file_obj.name\n        debug(f'Image registered: {name}')\n        return name\n    if shared.opts.temp_dir != \"\":\n        folder = shared.opts.temp_dir\n    use_metadata = False\n    metadata = PngImagePlugin.PngInfo()\n    for key, value in img.info.items():\n        if isinstance(key, str) and isinstance(value, str):\n            metadata.add_text(key, value)\n            use_metadata = True\n    if not os.path.exists(folder):\n        os.makedirs(folder, exist_ok=True)\n        shared.log.debug(f'Created temp folder: path=\"{folder}\"')\n    with tempfile.NamedTemporaryFile(delete=False, suffix=\".png\", dir=folder) as tmp:\n        name = tmp.name\n        img.save(name, pnginfo=(metadata if use_metadata else None))\n        img.already_saved_as = name\n        size = os.path.getsize(name)\n        shared.log.debug(f'Save temp: image=\"{name}\" width={img.width} height={img.height} size={size}')\n        shared.state.image_history += 1\n    params = ', '.join([f'{k}: {v}' for k, v in img.info.items()])\n    params = params[12:] if params.startswith('parameters: ') else params\n    if len(params) > 2:\n        with open(paths.params_path, \"w\", encoding=\"utf8\") as file:\n            file.write(params)\n    return name\n\n\n# override save to file function so that it also writes PNG info\n\ndef on_tmpdir_changed():\n    if shared.opts.temp_dir == \"\":\n        return\n    register_tmp_file(shared.demo, os.path.join(shared.opts.temp_dir, \"x\"))\n\n\ndef cleanup_tmpdr():\n    temp_dir = shared.opts.temp_dir\n    if temp_dir == \"\" or not os.path.isdir(temp_dir):\n        temp_dir = os.path.join(paths.temp_dir, \"gradio\")\n    shared.log.debug(f'Temp folder: path=\"{temp_dir}\"')\n    if not os.path.isdir(temp_dir):\n        return\n    for root, _dirs, files in os.walk(temp_dir, topdown=False):\n        for name in files:\n            _, extension = os.path.splitext(name)\n            if extension not in {\".png\", \".jpg\", \".webp\", \".jxl\"}:\n                continue\n            filename = os.path.join(root, name)\n            os.remove(filename)\n"
  },
  {
    "path": "modules/hashes.py",
    "content": "import hashlib\nimport os.path\nfrom rich import progress, errors\nfrom installer import log, console\nfrom modules.json_helpers import readfile, writefile\nfrom modules.paths import data_path\n\n\ncache_filename = os.path.join(data_path, 'data', 'cache.json')\ncache_data = None\nprogress_ok = True\n\n\ndef init_cache():\n    global cache_data # pylint: disable=global-statement\n    if cache_data is None:\n        cache_data = {} if not os.path.isfile(cache_filename) else readfile(cache_filename, lock=True, as_type=\"dict\")\n\n\ndef dump_cache():\n    writefile(cache_data, cache_filename)\n\n\ndef cache(subsection):\n    global cache_data # pylint: disable=global-statement\n    if cache_data is None:\n        cache_data = {} if not os.path.isfile(cache_filename) else readfile(cache_filename, lock=True, as_type=\"dict\")\n    s = cache_data.get(subsection, {})\n    cache_data[subsection] = s\n    return s\n\n\ndef calculate_sha256(filename, quiet=False):\n    global progress_ok # pylint: disable=global-statement\n    hash_sha256 = hashlib.sha256()\n    blksize = 1024 * 1024\n    if not quiet:\n        if progress_ok:\n            try:\n                with progress.open(filename, 'rb', description=f'[cyan]Calculating hash: [yellow]{filename}', auto_refresh=True, console=console) as f:\n                    for chunk in iter(lambda: f.read(blksize), b\"\"):\n                        hash_sha256.update(chunk)\n            except errors.LiveError:\n                log.warning('Hash: attempting to use function in a thread')\n                progress_ok = False\n        if not progress_ok:\n            with open(filename, 'rb') as f:\n                for chunk in iter(lambda: f.read(blksize), b\"\"):\n                    hash_sha256.update(chunk)\n    else:\n        with open(filename, 'rb') as f:\n            for chunk in iter(lambda: f.read(blksize), b\"\"):\n                hash_sha256.update(chunk)\n    return hash_sha256.hexdigest()\n\n\ndef sha256_from_cache(filename, title, use_addnet_hash=False):\n    hashes = cache(\"hashes-addnet\") if use_addnet_hash else cache(\"hashes\")\n    if title not in hashes:\n        return None\n    cached_sha256 = hashes[title].get(\"sha256\", None)\n    cached_mtime = hashes[title].get(\"mtime\", 0)\n    ondisk_mtime = os.path.getmtime(filename) if os.path.isfile(filename) else 0\n    if ondisk_mtime > cached_mtime or cached_sha256 is None:\n        return None\n    return cached_sha256\n\n\ndef sha256(filename, title, use_addnet_hash=False):\n    from modules import shared\n    global progress_ok # pylint: disable=global-statement\n    hashes = cache(\"hashes-addnet\") if use_addnet_hash else cache(\"hashes\")\n    sha256_value = sha256_from_cache(filename, title, use_addnet_hash)\n    if sha256_value is not None:\n        return sha256_value\n    if shared.cmd_opts.no_hashing:\n        return None\n    if not os.path.isfile(filename):\n        return None\n    jobid = shared.state.begin(\"Hash\")\n    if use_addnet_hash:\n        if progress_ok:\n            try:\n                with progress.open(filename, 'rb', description=f'[cyan]Calculating hash: [yellow]{filename}', auto_refresh=True, console=shared.console) as f:\n                    sha256_value = addnet_hash_safetensors(f)\n            except errors.LiveError:\n                log.warning('Hash: attempting to use function in a thread')\n                progress_ok = False\n        if not progress_ok:\n            with open(filename, 'rb') as f:\n                sha256_value = addnet_hash_safetensors(f)\n    else:\n        sha256_value = calculate_sha256(filename)\n    hashes[title] = {\n        \"mtime\": os.path.getmtime(filename),\n        \"sha256\": sha256_value\n    }\n    shared.state.end(jobid)\n    dump_cache()\n    return sha256_value\n\n\ndef addnet_hash_safetensors(b):\n    \"\"\"kohya-ss hash for safetensors from https://github.com/kohya-ss/sd-scripts/blob/main/library/train_util.py\"\"\"\n    hash_sha256 = hashlib.sha256()\n    blksize = 1024 * 1024\n    b.seek(0)\n    header = b.read(8)\n    n = int.from_bytes(header, \"little\")\n    offset = n + 8\n    b.seek(offset)\n    for chunk in iter(lambda: b.read(blksize), b\"\"):\n        hash_sha256.update(chunk)\n    return hash_sha256.hexdigest()\n"
  },
  {
    "path": "modules/hidiffusion/__init__.py",
    "content": "# Original: https://github.com/megvii-research/HiDiffusion\n\nimport time\nfrom modules import shared\nfrom modules.hidiffusion import hidiffusion\n\n\ndef apply(p, model_type):\n    if model_type not in ['sd', 'sdxl'] and p.hidiffusion:\n        shared.log.warning(f'HiDiffusion: class={shared.sd_model.__class__.__name__} not supported')\n        return\n    unapply()\n    pipe = shared.sd_model.pipe if hasattr(shared.sd_model, 'pipe') else shared.sd_model\n    if getattr(p, 'hidiffusion', False) is True:\n        t0 = time.time()\n        hidiffusion.is_aggressive_raunet = shared.opts.hidiffusion_steps > 0\n        hidiffusion.aggressive_step = shared.opts.hidiffusion_steps\n        if shared.opts.hidiffusion_t1 >= 0:\n            t1 = shared.opts.hidiffusion_t1\n            hidiffusion.switching_threshold_ratio_dict['sd15_1024']['T1_ratio'] = t1\n            hidiffusion.switching_threshold_ratio_dict['sd15_2048']['T1_ratio'] = t1\n            hidiffusion.switching_threshold_ratio_dict['sdxl_2048']['T1_ratio'] = t1\n            hidiffusion.switching_threshold_ratio_dict['sdxl_4096']['T1_ratio'] = t1\n            hidiffusion.switching_threshold_ratio_dict['sdxl_turbo_1024']['T1_ratio'] = t1\n            p.extra_generation_params['HiDiffusion Ratios'] = f'{shared.opts.hidiffusion_t1}/{shared.opts.hidiffusion_t2}'\n        if shared.opts.hidiffusion_t2 >= 0:\n            t2 =shared.opts.hidiffusion_t2\n            hidiffusion.switching_threshold_ratio_dict['sd15_1024']['T2_ratio'] = t2\n            hidiffusion.switching_threshold_ratio_dict['sd15_2048']['T2_ratio'] = t2\n            hidiffusion.switching_threshold_ratio_dict['sdxl_2048']['T2_ratio'] = t2\n            hidiffusion.switching_threshold_ratio_dict['sdxl_4096']['T2_ratio'] = t2\n            hidiffusion.switching_threshold_ratio_dict['sdxl_turbo_1024']['T2_ratio'] = t2\n            p.extra_generation_params['HiDiffusion Ratios'] = f'{shared.opts.hidiffusion_t1}/{shared.opts.hidiffusion_t2}'\n        hidiffusion.apply_hidiffusion(pipe, apply_raunet=shared.opts.hidiffusion_raunet, apply_window_attn=shared.opts.hidiffusion_attn, model_type=model_type, steps=p.steps)\n        p.extra_generation_params['HiDiffusion'] = f'{shared.opts.hidiffusion_raunet}/{shared.opts.hidiffusion_attn}/{shared.opts.hidiffusion_steps > 0}:{shared.opts.hidiffusion_steps}'\n        t1 = time.time()\n        shared.log.debug(f'Applying HiDiffusion: raunet={shared.opts.hidiffusion_raunet} attn={shared.opts.hidiffusion_attn} aggressive={shared.opts.hidiffusion_steps > 0}:{shared.opts.hidiffusion_steps} t1={shared.opts.hidiffusion_t1} t2={shared.opts.hidiffusion_t2} time={t1-t0:.2f} type={shared.sd_model_type} width={p.width} height={p.height}')\n    elif hasattr(pipe, 'unet') and getattr(pipe.unet, 'hidiffusion', False):\n        shared.log.warning('HiDiffusion: model reload recomended')\n\n\ndef unapply():\n    pipe = shared.sd_model.pipe if hasattr(shared.sd_model, 'pipe') else shared.sd_model\n    if hasattr(pipe, 'unet') and pipe.unet is not None:\n        hidiffusion.remove_hidiffusion(pipe)\n"
  },
  {
    "path": "modules/hidiffusion/hidiffusion.py",
    "content": "from typing import Type, Dict, Any, Tuple, Optional\nimport math\nimport torch\nimport torch.nn.functional as F\nfrom diffusers.pipelines import auto_pipeline\n\n\ncurrent_steps = 50\ndef sd15_hidiffusion_key():\n    modified_key = {}\n    modified_key['down_module_key'] = ['down_blocks.0.downsamplers.0.conv']\n    modified_key['down_module_key_extra'] = ['down_blocks.1']\n    modified_key['up_module_key'] = ['up_blocks.2.upsamplers.0.conv']\n    modified_key['up_module_key_extra'] = ['up_blocks.2']\n    modified_key['windown_attn_module_key'] = [\n                               'down_blocks.0.attentions.0.transformer_blocks.0',\n                               'down_blocks.0.attentions.1.transformer_blocks.0',\n                               'up_blocks.3.attentions.0.transformer_blocks.0',\n                               'up_blocks.3.attentions.1.transformer_blocks.0',\n                               'up_blocks.3.attentions.2.transformer_blocks.0']\n    return modified_key\n\ndef sdxl_hidiffusion_key():\n    modified_key = {}\n    modified_key['down_module_key'] = ['down_blocks.1']\n    modified_key['down_module_key_extra'] = ['down_blocks.1.downsamplers.0.conv']\n    modified_key['up_module_key'] = ['up_blocks.1']\n    modified_key['up_module_key_extra'] = ['up_blocks.0.upsamplers.0.conv']\n    modified_key['windown_attn_module_key'] = [\n                               'down_blocks.1.attentions.0.transformer_blocks.0',\n                               'down_blocks.1.attentions.0.transformer_blocks.1',\n                               'down_blocks.1.attentions.1.transformer_blocks.0',\n                               'down_blocks.1.attentions.1.transformer_blocks.1',\n                               'up_blocks.1.attentions.0.transformer_blocks.0',\n                               'up_blocks.1.attentions.0.transformer_blocks.1',\n                               'up_blocks.1.attentions.1.transformer_blocks.0',\n                               'up_blocks.1.attentions.1.transformer_blocks.1',\n                               'up_blocks.1.attentions.2.transformer_blocks.0',\n                               'up_blocks.1.attentions.2.transformer_blocks.1']\n    return modified_key\n\n\ndef sdxl_turbo_hidiffusion_key():\n    modified_key = {}\n    modified_key['down_module_key'] = ['down_blocks.1']\n    modified_key['up_module_key'] = ['up_blocks.1']\n    modified_key['windown_attn_module_key'] = [\n                               'down_blocks.1.attentions.0.transformer_blocks.0',\n                               'down_blocks.1.attentions.0.transformer_blocks.1',\n                               'down_blocks.1.attentions.1.transformer_blocks.0',\n                               'down_blocks.1.attentions.1.transformer_blocks.1',\n                               'up_blocks.1.attentions.0.transformer_blocks.0',\n                               'up_blocks.1.attentions.0.transformer_blocks.1',\n                               'up_blocks.1.attentions.1.transformer_blocks.0',\n                               'up_blocks.1.attentions.1.transformer_blocks.1',\n                               'up_blocks.1.attentions.2.transformer_blocks.0',\n                               'up_blocks.1.attentions.2.transformer_blocks.1']\n    return modified_key\n\n\n# T1_ratio: see T1 introduced in the main paper. T1 = number_inference_step * T1_ratio. A higher T1_ratio can better mitigate object duplication. We set T1_ratio=0.4 by default. You'd better adjust it to fit your prompt. Only active when apply_raunet=True.\n# T2_ratio: see T2 introduced in the appendix, used in extreme resolution image generation. T2 = number_inference_step * T2_ratio. A higher T2_ratio can better mitigate object duplication. Only active when apply_raunet=True\nswitching_threshold_ratio_dict = {\n    'sd15_1024': {'T1_ratio': 0.4, 'T2_ratio': 0.0},\n    'sd15_2048': {'T1_ratio': 0.7, 'T2_ratio': 0.3},\n    'sdxl_2048': {'T1_ratio': 0.4, 'T2_ratio': 0.0},\n    'sdxl_4096': {'T1_ratio': 0.7, 'T2_ratio': 0.3},\n    'sdxl_turbo_1024': {'T1_ratio': 0.5, 'T2_ratio': 0.0},\n}\n\n\ntext_to_img_controlnet_switching_threshold_ratio_dict = {\n    'sdxl_2048': {'T1_ratio': 0.5, 'T2_ratio': 0.0},\n}\ncontrolnet_apply_steps_rate = 0.6\nis_aggressive_raunet = True\naggressive_step = 8\ninpainting_is_aggressive_raunet = False\nplayground_is_aggressive_raunet = False\n\n\ndef make_diffusers_transformer_block(block_class: Type[torch.nn.Module]) -> Type[torch.nn.Module]:\n    # replace global self-attention with MSW-MSA\n    class transformer_block(block_class):\n        # Save for unpatching later\n        _parent = block_class\n\n        def forward(\n            self,\n            hidden_states: torch.FloatTensor,\n            attention_mask: Optional[torch.FloatTensor] = None,\n            encoder_hidden_states: Optional[torch.FloatTensor] = None,\n            encoder_attention_mask: Optional[torch.FloatTensor] = None,\n            timestep: Optional[torch.LongTensor] = None,\n            cross_attention_kwargs: Dict[str, Any] = None,\n            class_labels: Optional[torch.LongTensor] = None,\n            added_cond_kwargs: Optional[Dict[str, torch.Tensor]] = None,\n        ) -> torch.FloatTensor:\n            # reference: https://github.com/microsoft/Swin-Transformer\n            def window_partition(x, window_size, shift_size, H, W):\n                B, _N, C = x.shape\n                x = x.view(B,H,W,C)\n                if H % 2 != 0 or W % 2 != 0:\n                    from modules.errors import log\n                    log.warning('HiDiffusion: The feature size is not divisible by 2')\n                    x = F.interpolate(x.permute(0,3,1,2).contiguous(), size=(window_size[0]*2, window_size[1]*2), mode='bicubic').permute(0,2,3,1).contiguous()\n                if type(shift_size) == list or type(shift_size) == tuple:\n                    if shift_size[0] > 0:\n                        x = torch.roll(x, shifts=(-shift_size[0], -shift_size[1]), dims=(1, 2))\n                else:\n                    if shift_size > 0:\n                        x = torch.roll(x, shifts=(-shift_size, -shift_size), dims=(1, 2))\n                x = x.view(B, 2, window_size[0], 2, window_size[1], C)\n                windows = x.permute(0, 1, 3, 2, 4, 5).contiguous().view(-1, window_size[0], window_size[1], C)\n                windows = windows.view(-1, window_size[0] * window_size[1], C)\n                return windows\n\n            def window_reverse(windows, window_size, H, W, shift_size):\n                B, _N, C = windows.shape\n                windows = windows.view(-1, window_size[0], window_size[1], C)\n                B = int(windows.shape[0] / 4) # 2x2\n                x = windows.view(B, 2, 2, window_size[0], window_size[1], -1)\n                x = x.permute(0, 1, 3, 2, 4, 5).contiguous().view(B, window_size[0]*2, window_size[1]*2, -1)\n                if type(shift_size) == list or type(shift_size) == tuple:\n                    if shift_size[0] > 0:\n                        x = torch.roll(x, shifts=(shift_size[0], shift_size[1]), dims=(1, 2))\n                else:\n                    if shift_size > 0:\n                        x = torch.roll(x, shifts=(shift_size, shift_size), dims=(1, 2))\n                if H % 2 != 0 or W % 2 != 0:\n                    x = F.interpolate(x.permute(0,3,1,2).contiguous(), size=(H, W), mode='bicubic').permute(0,2,3,1).contiguous()\n                x = x.view(B, H*W, C)\n                return x\n\n            batch_size = hidden_states.shape[0]\n            if self.use_ada_layer_norm:\n                norm_hidden_states = self.norm1(hidden_states, timestep)\n            elif self.use_ada_layer_norm_zero:\n                norm_hidden_states, gate_msa, shift_mlp, scale_mlp, gate_mlp = self.norm1(hidden_states, timestep, class_labels, hidden_dtype=hidden_states.dtype)\n            elif self.use_layer_norm:\n                norm_hidden_states = self.norm1(hidden_states)\n            elif self.use_ada_layer_norm_continuous:\n                norm_hidden_states = self.norm1(hidden_states, added_cond_kwargs[\"pooled_text_emb\"])\n            elif self.use_ada_layer_norm_single:\n                shift_msa, scale_msa, gate_msa, shift_mlp, scale_mlp, gate_mlp = (self.scale_shift_table[None] + timestep.reshape(batch_size, 6, -1)).chunk(6, dim=1)\n                norm_hidden_states = self.norm1(hidden_states)\n                norm_hidden_states = norm_hidden_states * (1 + scale_msa) + shift_msa\n                norm_hidden_states = norm_hidden_states.squeeze(1)\n            else:\n                raise ValueError(\"HiDiffusion: Incorrect norm used\")\n\n            if self.pos_embed is not None:\n                norm_hidden_states = self.pos_embed(norm_hidden_states)\n\n            # MSW-MSA\n            rand_num = torch.rand(1)\n            _B, N, _C = hidden_states.shape\n            try:\n                ori_H, ori_W = self.info['size']\n            except Exception as e:\n                raise RuntimeError(f'HiDiffusion: cls={self.__class__.__name__} info={hasattr(self, \"info\")} parent={hasattr(self, \"_parent\")} orphaned call') from e\n\n            downsample_ratio = round(((ori_H*ori_W) / N)**0.5)\n            H, W = (math.ceil(ori_H/downsample_ratio), math.ceil(ori_W/downsample_ratio))\n            widow_size = (math.ceil(H/2), math.ceil(W/2))\n            if rand_num <= 0.25:\n                shift_size = (0,0)\n            elif rand_num > 0.25 and rand_num <= 0.5:\n                shift_size = (widow_size[0]//4, widow_size[1]//4)\n            elif rand_num > 0.5 and rand_num <= 0.75:\n                shift_size = (widow_size[0]//4*2, widow_size[1]//4*2)\n            elif rand_num > 0.75 and rand_num <= 1:\n                shift_size = (widow_size[0]//4*3, widow_size[1]//4*3)\n            else:\n                shift_size = (0,0)\n            norm_hidden_states = window_partition(norm_hidden_states, widow_size, shift_size, H, W)\n\n            # 1. Retrieve lora scale.\n            # cross_attention_kwargs.get(\"scale\", 1.0) if cross_attention_kwargs is not None else 1.0\n\n            # 2. Prepare GLIGEN inputs\n            cross_attention_kwargs = cross_attention_kwargs.copy() if cross_attention_kwargs is not None else {}\n            gligen_kwargs = cross_attention_kwargs.pop(\"gligen\", None)\n\n            attn_output = self.attn1(\n                norm_hidden_states,\n                encoder_hidden_states=encoder_hidden_states if self.only_cross_attention else None,\n                attention_mask=attention_mask,\n                **cross_attention_kwargs,\n            )\n            if self.use_ada_layer_norm_zero:\n                attn_output = gate_msa.unsqueeze(1) * attn_output\n            elif self.use_ada_layer_norm_single:\n                attn_output = gate_msa * attn_output\n\n            attn_output = window_reverse(attn_output, widow_size, H, W, shift_size)\n\n            hidden_states = attn_output + hidden_states\n            if hidden_states.ndim == 4:\n                hidden_states = hidden_states.squeeze(1)\n\n            # 2.5 GLIGEN Control\n            if gligen_kwargs is not None:\n                hidden_states = self.fuser(hidden_states, gligen_kwargs[\"objs\"])\n\n            # 3. Cross-Attention\n            if self.attn2 is not None:\n                if self.use_ada_layer_norm:\n                    norm_hidden_states = self.norm2(hidden_states, timestep)\n                elif self.use_ada_layer_norm_zero or self.use_layer_norm:\n                    norm_hidden_states = self.norm2(hidden_states)\n                elif self.use_ada_layer_norm_single:\n                    norm_hidden_states = hidden_states\n                elif self.use_ada_layer_norm_continuous:\n                    norm_hidden_states = self.norm2(hidden_states, added_cond_kwargs[\"pooled_text_emb\"])\n                else:\n                    raise ValueError(\"HiDiffusion: Incorrect norm\")\n\n                if self.pos_embed is not None and self.use_ada_layer_norm_single is False:\n                    norm_hidden_states = self.pos_embed(norm_hidden_states)\n\n                attn_output = self.attn2(\n                    norm_hidden_states,\n                    encoder_hidden_states=encoder_hidden_states,\n                    attention_mask=encoder_attention_mask,\n                    **cross_attention_kwargs,\n                )\n                hidden_states = attn_output + hidden_states\n\n            # 4. Feed-forward\n            if self.use_ada_layer_norm_continuous:\n                norm_hidden_states = self.norm3(hidden_states, added_cond_kwargs[\"pooled_text_emb\"])\n            elif not self.use_ada_layer_norm_single:\n                norm_hidden_states = self.norm3(hidden_states)\n            if self.use_ada_layer_norm_zero:\n                norm_hidden_states = norm_hidden_states * (1 + scale_mlp[:, None]) + shift_mlp[:, None]\n            if self.use_ada_layer_norm_single:\n                norm_hidden_states = self.norm2(hidden_states)\n                norm_hidden_states = norm_hidden_states * (1 + scale_mlp) + shift_mlp\n            if self._chunk_size is not None:\n                ff_output = _chunked_feed_forward(self.ff, norm_hidden_states, self._chunk_dim, self._chunk_size) # pylint: disable=undefined-variable\n            else:\n                ff_output = self.ff(norm_hidden_states)\n            if self.use_ada_layer_norm_zero:\n                ff_output = gate_mlp.unsqueeze(1) * ff_output\n            elif self.use_ada_layer_norm_single:\n                ff_output = gate_mlp * ff_output\n            hidden_states = ff_output + hidden_states\n            if hidden_states.ndim == 4:\n                hidden_states = hidden_states.squeeze(1)\n            return hidden_states\n\n    return transformer_block\n\n\ndef make_diffusers_cross_attn_down_block(block_class: Type[torch.nn.Module]) -> Type[torch.nn.Module]:\n    # replace conventional downsampler with resolution-aware downsampler\n    class cross_attn_down_block(block_class):\n        _parent = block_class # Save for unpatching later\n        timestep = 0\n        aggressive_raunet = False\n        T1_ratio = 0\n        T1_start = 0\n        T1_end = 0\n        T1 = 0 # to avoid confict with sdxl-turbo\n        max_timestep = current_steps\n\n        def forward(\n            self,\n            hidden_states: torch.FloatTensor,\n            temb: Optional[torch.FloatTensor] = None,\n            encoder_hidden_states: Optional[torch.FloatTensor] = None,\n            attention_mask: Optional[torch.FloatTensor] = None,\n            cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n            encoder_attention_mask: Optional[torch.FloatTensor] = None,\n            additional_residuals: Optional[torch.FloatTensor] = None,\n        ) -> Tuple[torch.FloatTensor, Tuple[torch.FloatTensor, ...]]:\n            if not hasattr(self.info['pipeline'], '_num_timesteps'):\n                self.info['pipeline']._num_timesteps = self.max_timestep # pylint: disable=protected-access\n            self.max_timestep = self.info['pipeline']._num_timesteps # pylint: disable=protected-access\n            # self.max_timestep = len(self.info['scheduler'].timesteps)\n            try:\n                ori_H, ori_W = self.info['size']\n            except Exception as e:\n                raise RuntimeError(f'HiDiffusion: cls={self.__class__.__name__} info={hasattr(self, \"info\")} parent={hasattr(self, \"_parent\")} orphaned call') from e\n            if self.model == 'sd15':\n                if ori_H < 256 or ori_W < 256:\n                    self.T1_ratio = switching_threshold_ratio_dict['sd15_1024'][self.switching_threshold_ratio]\n                else:\n                    self.T1_ratio = switching_threshold_ratio_dict['sd15_2048'][self.switching_threshold_ratio]\n            elif self.model == 'sdxl':\n                if ori_H < 512 or ori_W < 512:\n                    if self.info['text_to_img_controlnet']:\n                        self.T1_ratio = text_to_img_controlnet_switching_threshold_ratio_dict['sdxl_2048'][self.switching_threshold_ratio]\n                    else:\n                        self.T1_ratio = switching_threshold_ratio_dict['sdxl_2048'][self.switching_threshold_ratio]\n                    if self.info['is_inpainting_task']:\n                        self.aggressive_raunet = inpainting_is_aggressive_raunet\n                    else:\n                        self.aggressive_raunet = is_aggressive_raunet\n                else:\n                    self.T1_ratio = switching_threshold_ratio_dict['sdxl_4096'][self.switching_threshold_ratio]\n            elif self.model == 'sdxl_turbo':\n                self.T1_ratio = switching_threshold_ratio_dict['sdxl_turbo_1024'][self.switching_threshold_ratio]\n            else:\n                raise RuntimeError('HiDiffusion: unsupported model type')\n\n            if self.aggressive_raunet:\n                self.T1_start = int(aggressive_step/50 * self.max_timestep)\n                self.T1_end = int(self.max_timestep * self.T1_ratio)\n                self.T1 = 0 # to avoid confict with sdxl-turbo\n            else:\n                self.T1 = int(self.max_timestep * self.T1_ratio)\n\n            output_states = ()\n            _scale = cross_attention_kwargs.get(\"scale\", 1.0) if cross_attention_kwargs is not None else 1.0\n\n            blocks = list(zip(self.resnets, self.attentions))\n\n            for i, (resnet, attn) in enumerate(blocks):\n                if self.training and self.gradient_checkpointing:\n\n                    def create_custom_forward(module, return_dict=None):\n                        def custom_forward(*inputs):\n                            if return_dict is not None:\n                                return module(*inputs, return_dict=return_dict)\n                            else:\n                                return module(*inputs)\n\n                        return custom_forward\n\n                    ckpt_kwargs: Dict[str, Any] = {\"use_reentrant\": False}\n                    hidden_states = torch.utils.checkpoint.checkpoint(\n                        create_custom_forward(resnet),\n                        hidden_states,\n                        temb,\n                        **ckpt_kwargs,\n                    )\n                    hidden_states = attn(\n                        hidden_states,\n                        encoder_hidden_states=encoder_hidden_states,\n                        cross_attention_kwargs=cross_attention_kwargs,\n                        attention_mask=attention_mask,\n                        encoder_attention_mask=encoder_attention_mask,\n                        return_dict=False,\n                    )[0]\n                else:\n                    # hidden_states = resnet(hidden_states, temb, scale=lora_scale)\n                    hidden_states = resnet(hidden_states, temb)\n                    hidden_states = attn(\n                        hidden_states,\n                        encoder_hidden_states=encoder_hidden_states,\n                        cross_attention_kwargs=cross_attention_kwargs,\n                        attention_mask=attention_mask,\n                        encoder_attention_mask=encoder_attention_mask,\n                        return_dict=False,\n                    )[0]\n\n                # apply additional residuals to the output of the last pair of resnet and attention blocks\n                if i == len(blocks) - 1 and additional_residuals is not None:\n                    hidden_states = hidden_states + additional_residuals\n\n                if i == 0:\n                    if self.aggressive_raunet and self.timestep >= self.T1_start and self.timestep < self.T1_end:\n                        self.info[\"upsample_size\"] = (hidden_states.shape[2], hidden_states.shape[3])\n                        hidden_states = F.avg_pool2d(hidden_states, kernel_size=(2,2),ceil_mode=True)\n                    elif self.timestep < self.T1:\n                        self.info[\"upsample_size\"] = (hidden_states.shape[2], hidden_states.shape[3])\n                        hidden_states = F.avg_pool2d(hidden_states, kernel_size=(2,2),ceil_mode=True)\n                output_states = output_states + (hidden_states,)\n\n            if self.downsamplers is not None:\n                for downsampler in self.downsamplers:\n                    hidden_states = downsampler(hidden_states)\n                    # hidden_states = downsampler(hidden_states, scale=lora_scale)\n\n                output_states = output_states + (hidden_states,)\n\n            self.timestep += 1\n            if self.timestep == self.max_timestep:\n                self.timestep = 0\n\n            return hidden_states, output_states\n\n    return cross_attn_down_block\n\n\ndef make_diffusers_cross_attn_up_block(block_class: Type[torch.nn.Module]) -> Type[torch.nn.Module]:\n    # replace conventional downsampler with resolution-aware downsampler\n    class cross_attn_up_block(block_class):\n        # Save for unpatching later\n        _parent = block_class\n        timestep = 0\n        aggressive_raunet = False\n        T1_ratio = 0\n        T1_start = 0\n        T1_end = 0\n        T1 = 0 # to avoid confict with sdxl-turbo\n        max_timestep = 50\n\n        def forward(\n            self,\n            hidden_states: torch.FloatTensor,\n            res_hidden_states_tuple: Tuple[torch.FloatTensor, ...],\n            temb: Optional[torch.FloatTensor] = None,\n            encoder_hidden_states: Optional[torch.FloatTensor] = None,\n            cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n            upsample_size: Optional[int] = None,\n            attention_mask: Optional[torch.FloatTensor] = None,\n            encoder_attention_mask: Optional[torch.FloatTensor] = None,\n        ) -> torch.FloatTensor:\n            def fix_scale(first, second):\n                if (first.shape[-1] != second.shape[-1] or first.shape[-2] != second.shape[-2]):\n                    rescale = min(second.shape[-2] / first.shape[-2], second.shape[-1] / first.shape[-1])\n                    # log.debug(f\"HiDiffusion rescale: {hidden_states.shape} => {res_hidden_states_tuple[0].shape} scale={rescale}\")\n                    return F.interpolate(first, scale_factor=rescale, mode='bicubic')\n                return first\n\n            self.max_timestep = self.info['pipeline']._num_timesteps # pylint: disable=protected-access\n            try:\n                ori_H, ori_W = self.info['size']\n            except Exception as e:\n                raise RuntimeError(f'HiDiffusion: cls={self.__class__.__name__} info={hasattr(self, \"info\")} parent={hasattr(self, \"_parent\")} orphaned call') from e\n            if self.model == 'sd15':\n                if ori_H < 256 or ori_W < 256:\n                    self.T1_ratio = switching_threshold_ratio_dict['sd15_1024'][self.switching_threshold_ratio]\n                else:\n                    self.T1_ratio = switching_threshold_ratio_dict['sd15_2048'][self.switching_threshold_ratio]\n            elif self.model == 'sdxl':\n                if ori_H < 512 or ori_W < 512:\n                    if self.info['text_to_img_controlnet']:\n                        self.T1_ratio = text_to_img_controlnet_switching_threshold_ratio_dict['sdxl_2048'][self.switching_threshold_ratio]\n                    else:\n                        self.T1_ratio = switching_threshold_ratio_dict['sdxl_2048'][self.switching_threshold_ratio]\n\n                    if self.info['is_inpainting_task']:\n                        self.aggressive_raunet = inpainting_is_aggressive_raunet\n                    else:\n                        self.aggressive_raunet = is_aggressive_raunet\n\n                else:\n                    self.T1_ratio = switching_threshold_ratio_dict['sdxl_4096'][self.switching_threshold_ratio]\n            elif self.model == 'sdxl_turbo':\n                self.T1_ratio = switching_threshold_ratio_dict['sdxl_turbo_1024'][self.switching_threshold_ratio]\n            else:\n                raise RuntimeError('HiDiffusion: unsupported model type')\n\n            if self.aggressive_raunet:\n                self.T1_start = int(aggressive_step/50 * self.max_timestep)\n                self.T1_end = int(self.max_timestep * self.T1_ratio)\n                self.T1 = 0 # to avoid confict with sdxl-turbo\n            else:\n                self.T1 = int(self.max_timestep * self.T1_ratio)\n\n            for i, (resnet, attn) in enumerate(zip(self.resnets, self.attentions)):\n                # pop res hidden states\n                res_hidden_states = res_hidden_states_tuple[-1]\n                res_hidden_states_tuple = res_hidden_states_tuple[:-1]\n                hidden_states = fix_scale(hidden_states, res_hidden_states)\n                hidden_states = torch.cat([hidden_states, res_hidden_states], dim=1)\n                hidden_states = resnet(hidden_states, temb)\n                hidden_states = attn(\n                    hidden_states,\n                    encoder_hidden_states=encoder_hidden_states,\n                    cross_attention_kwargs=cross_attention_kwargs,\n                    attention_mask=attention_mask,\n                    encoder_attention_mask=encoder_attention_mask,\n                    return_dict=False,\n                )[0]\n                if i == 1:\n                    if self.aggressive_raunet and self.timestep >= self.T1_start and self.timestep < self.T1_end:\n                        hidden_states = F.interpolate(hidden_states, size=self.info[\"upsample_size\"], mode='bicubic')\n                    elif self.timestep < self.T1:\n                        hidden_states = F.interpolate(hidden_states, size=self.info[\"upsample_size\"], mode='bicubic')\n\n            if self.upsamplers is not None:\n                for upsampler in self.upsamplers:\n                    hidden_states = upsampler(hidden_states, upsample_size)\n            self.timestep += 1\n            if self.timestep == self.max_timestep:\n                self.timestep = 0\n            return hidden_states\n\n    return cross_attn_up_block\n\n\ndef make_diffusers_downsampler_block(block_class: Type[torch.nn.Module]) -> Type[torch.nn.Module]:\n    # replace conventional downsampler with resolution-aware downsampler\n    class downsampler_block(block_class):\n        # Save for unpatching later\n        _parent = block_class\n        T1_ratio = 0\n        T1 = 0\n        timestep = 0\n        aggressive_raunet = False\n        max_timestep = 50\n\n        def forward(self, hidden_states: torch.Tensor, scale = 1.0) -> torch.Tensor: # pylint: disable=unused-argument\n            self.max_timestep = self.info['pipeline']._num_timesteps # pylint: disable=protected-access\n            # self.max_timestep = len(self.info['scheduler'].timesteps)\n            try:\n                ori_H, ori_W = self.info['size']\n            except Exception as e:\n                raise RuntimeError(f'HiDiffusion: cls={self.__class__.__name__} info={hasattr(self, \"info\")} parent={hasattr(self, \"_parent\")} orphaned call') from e\n            if self.model == 'sd15':\n                if ori_H < 256 or ori_W < 256:\n                    self.T1_ratio = switching_threshold_ratio_dict['sd15_1024'][self.switching_threshold_ratio]\n                else:\n                    self.T1_ratio = switching_threshold_ratio_dict['sd15_2048'][self.switching_threshold_ratio]\n            elif self.model == 'sdxl':\n                if ori_H < 512 or ori_W < 512:\n                    if self.info['text_to_img_controlnet']:\n                        self.T1_ratio = text_to_img_controlnet_switching_threshold_ratio_dict['sdxl_2048'][self.switching_threshold_ratio]\n                    else:\n                        self.T1_ratio = switching_threshold_ratio_dict['sdxl_2048'][self.switching_threshold_ratio]\n                    if self.info['is_inpainting_task']:\n                        self.aggressive_raunet = inpainting_is_aggressive_raunet\n                    else:\n                        self.aggressive_raunet = is_aggressive_raunet\n                else:\n                    self.T1_ratio = switching_threshold_ratio_dict['sdxl_4096'][self.switching_threshold_ratio]\n            elif self.model == 'sdxl_turbo':\n                self.T1_ratio = switching_threshold_ratio_dict['sdxl_turbo_1024'][self.switching_threshold_ratio]\n            else:\n                raise RuntimeError('HiDiffusion: unsupported model type')\n\n            if self.aggressive_raunet:\n                self.T1 = int(aggressive_step/50 * self.max_timestep)\n            else:\n                self.T1 = int(self.max_timestep * self.T1_ratio)\n            if self.timestep < self.T1:\n                self.ori_stride = self.stride # pylint: disable=access-member-before-definition, attribute-defined-outside-init\n                self.ori_padding = self.padding # pylint: disable=access-member-before-definition, attribute-defined-outside-init\n                self.ori_dilation = self.dilation # pylint: disable=access-member-before-definition, attribute-defined-outside-init\n                self.stride = (4,4) # pylint: disable=access-member-before-definition, attribute-defined-outside-init\n                self.padding = (2,2) # pylint: disable=access-member-before-definition, attribute-defined-outside-init\n                self.dilation = (2,2) # pylint: disable=access-member-before-definition, attribute-defined-outside-init\n\n            hidden_states = F.conv2d(\n                hidden_states, self.weight, self.bias, self.stride, self.padding, self.dilation, self.groups\n            )\n            if self.timestep < self.T1:\n                self.stride = self.ori_stride # pylint: disable=access-member-before-definition, attribute-defined-outside-init\n                self.padding = self.ori_padding # pylint: disable=access-member-before-definition, attribute-defined-outside-init\n                self.dilation = self.ori_dilation # pylint: disable=access-member-before-definition, attribute-defined-outside-init\n            self.timestep += 1\n            if self.timestep == self.max_timestep:\n                self.timestep = 0\n            return hidden_states\n\n    return downsampler_block\n\n\ndef make_diffusers_upsampler_block(block_class: Type[torch.nn.Module]) -> Type[torch.nn.Module]:\n    # replace conventional upsampler with resolution-aware downsampler\n    class upsampler_block(block_class):\n        # Save for unpatching later\n        _parent = block_class\n        T1_ratio = 0\n        T1 = 0\n        timestep = 0\n        aggressive_raunet = False\n        max_timestep = 50\n\n        def forward(self, hidden_states: torch.Tensor, scale = 1.0) -> torch.Tensor: # pylint: disable=unused-argument\n            self.max_timestep = self.info['pipeline']._num_timesteps # pylint: disable=protected-access\n            # self.max_timestep = len(self.info['scheduler'].timesteps)\n            try:\n                ori_H, ori_W = self.info['size']\n            except Exception as e:\n                raise RuntimeError(f'HiDiffusion: cls={self.__class__.__name__} info={hasattr(self, \"info\")} parent={hasattr(self, \"_parent\")} orphaned call') from e\n            if self.model == 'sd15':\n                if ori_H < 256 or ori_W < 256:\n                    self.T1_ratio = switching_threshold_ratio_dict['sd15_1024'][self.switching_threshold_ratio]\n                else:\n                    self.T1_ratio = switching_threshold_ratio_dict['sd15_2048'][self.switching_threshold_ratio]\n            elif self.model == 'sdxl':\n                if ori_H < 512 or ori_W < 512:\n                    if self.info['text_to_img_controlnet']:\n                        self.T1_ratio = text_to_img_controlnet_switching_threshold_ratio_dict['sdxl_2048'][self.switching_threshold_ratio]\n                    else:\n                        self.T1_ratio = switching_threshold_ratio_dict['sdxl_2048'][self.switching_threshold_ratio]\n\n                    if self.info['is_inpainting_task']:\n                        self.aggressive_raunet = inpainting_is_aggressive_raunet\n                    else:\n                        self.aggressive_raunet = is_aggressive_raunet\n                else:\n                    self.T1_ratio = switching_threshold_ratio_dict['sdxl_4096'][self.switching_threshold_ratio]\n            elif self.model == 'sdxl_turbo':\n                self.T1_ratio = switching_threshold_ratio_dict['sdxl_turbo_1024'][self.switching_threshold_ratio]\n            else:\n                raise RuntimeError('HiDiffusion: unsupported model type')\n\n            if self.aggressive_raunet:\n                self.T1 = int(aggressive_step/50 * self.max_timestep)\n            else:\n                self.T1 = int(self.max_timestep * self.T1_ratio)\n            self.timestep += 1\n            if self.timestep == self.max_timestep:\n                self.timestep = 0\n\n            return F.conv2d(hidden_states, self.weight, self.bias, self.stride, self.padding, self.dilation, self.groups)\n\n    return upsampler_block\n\n\ndef hook_diffusion_model(model: torch.nn.Module):\n    \"\"\" Adds a forward pre hook to get the image size. This hook can be removed with remove_hidiffusion. \"\"\"\n    def hook(module, args):\n        module.info[\"size\"] = (args[0].shape[2], args[0].shape[3])\n        return None\n\n    model.info[\"hooks\"].append(model.register_forward_pre_hook(hook))\n\n\ndef apply_hidiffusion(\n        model: torch.nn.Module,\n        apply_raunet: bool = True,\n        apply_window_attn: bool = True,\n        model_type: str = 'None',\n        steps: int = 50):\n    \"\"\"\n    model: diffusers model. We support SD 1.5, 2.1, XL, XL Turbo.\n    apply_raunet: whether to apply RAU-Net\n    apply_window_attn: whether to apply MSW-MSA.\n    \"\"\"\n    global current_steps # pylint: disable=global-statement\n    current_steps = steps\n    if hasattr(model, 'controlnet') and (model_type == 'sd' or model_type == 'sdxl'):\n        from .hidiffusion_controlnet import make_diffusers_sdxl_contrtolnet_ppl, make_diffusers_unet_2d_condition\n        make_ppl_fn = make_diffusers_sdxl_contrtolnet_ppl\n        model.__class__ = make_ppl_fn(model.__class__)\n        make_block_fn = make_diffusers_unet_2d_condition\n        model.unet.__class__ = make_block_fn(model.unet.__class__)\n\n    diffusion_model = model.unet if hasattr(model, \"unet\") else model\n    diffusion_model.num_upsamplers += 12\n    diffusion_model.info = {\n        'size': None,\n        'upsample_size': None,\n        'hooks': [],\n        'text_to_img_controlnet': hasattr(model, 'controlnet'),\n        'is_inpainting_task': model.__class__ in auto_pipeline.AUTO_INPAINT_PIPELINES_MAPPING.values(),\n        'pipeline': model}\n\n    if model_type == 'sd':\n        modified_key = sd15_hidiffusion_key()\n        for key, module in diffusion_model.named_modules():\n            if hasattr(module, \"_parent\"):\n                raise RuntimeError(f'HiDiffusion: key={key} module={module.__class__} already patched')\n            if apply_raunet and key in modified_key['down_module_key']:\n                module.__class__ = make_diffusers_downsampler_block(module.__class__)\n                module.switching_threshold_ratio = 'T1_ratio'\n            if apply_raunet and key in modified_key['down_module_key_extra']:\n                module.__class__ = make_diffusers_cross_attn_down_block(module.__class__)\n                module.switching_threshold_ratio = 'T2_ratio'\n            if apply_raunet and key in modified_key['up_module_key']:\n                module.__class__ = make_diffusers_upsampler_block(module.__class__)\n                module.switching_threshold_ratio = 'T1_ratio'\n            if apply_raunet and key in modified_key['up_module_key_extra']:\n                module.__class__ = make_diffusers_cross_attn_up_block(module.__class__)\n                module.switching_threshold_ratio = 'T2_ratio'\n            if apply_window_attn and key in modified_key['windown_attn_module_key']:\n                module.__class__ = make_diffusers_transformer_block(module.__class__)\n            if hasattr(module, \"_parent\"):\n                module.model = 'sd15'\n                module.info = diffusion_model.info\n\n    elif model_type == 'sdxl':\n        modified_key = sdxl_hidiffusion_key()\n        for key, module in diffusion_model.named_modules():\n            if hasattr(module, \"_parent\"):\n                raise RuntimeError(f'HiDiffusion: key={key} module={module.__class__} already patched')\n            if apply_raunet and key in modified_key['down_module_key']:\n                module.__class__ = make_diffusers_cross_attn_down_block(module.__class__)\n                module.switching_threshold_ratio = 'T1_ratio'\n            if apply_raunet and key in modified_key['down_module_key_extra']:\n                module.__class__ = make_diffusers_downsampler_block(module.__class__)\n                module.switching_threshold_ratio = 'T2_ratio'\n            if apply_raunet and key in modified_key['up_module_key']:\n                module.__class__ = make_diffusers_cross_attn_up_block(module.__class__)\n                module.switching_threshold_ratio = 'T1_ratio'\n            if apply_raunet and key in modified_key['up_module_key_extra']:\n                module.__class__ = make_diffusers_upsampler_block(module.__class__)\n                module.switching_threshold_ratio = 'T2_ratio'\n            if apply_window_attn and key in modified_key['windown_attn_module_key']:\n                module.__class__ = make_diffusers_transformer_block(module.__class__)\n            if hasattr(module, \"_parent\"):\n                module.model = 'sdxl'\n                module.info = diffusion_model.info\n    else:\n        raise RuntimeError('HiDiffusion: unsupported model type')\n\n    model.info = diffusion_model.info\n    model.hidiffusion = True\n    hook_diffusion_model(diffusion_model)\n\n\ndef remove_hidiffusion(model: torch.nn.Module):\n    \"\"\" Removes hidiffusion from a Diffusion module if it was already patched. \"\"\"\n    model = model.unet if hasattr(model, \"unet\") else model\n    for _, module in model.named_modules():\n        while hasattr(module, \"_parent\"):\n            model.hidiffusion = True\n            module.__class__ = module._parent # pylint: disable=protected-access\n        if hasattr(module, \"info\"):\n            for hook in module.info.get(\"hooks\", []):\n                hook.remove()\n            module.info[\"hooks\"].clear()\n            del module.info\n"
  },
  {
    "path": "modules/hidiffusion/hidiffusion_controlnet.py",
    "content": "from typing import Dict, Any, Tuple, Callable, Optional, Union, List\nimport torch\nimport torch.nn.functional as F\nfrom diffusers.utils import USE_PEFT_BACKEND, scale_lora_layers, unscale_lora_layers\nfrom diffusers.pipelines.stable_diffusion_xl.pipeline_output import StableDiffusionXLPipelineOutput\nfrom diffusers.image_processor import PipelineImageInput\nfrom diffusers.utils.torch_utils import is_compiled_module\nfrom diffusers.pipelines.controlnet.multicontrolnet import MultiControlNetModel\nfrom diffusers.models import ControlNetModel\nfrom diffusers.models.unets.unet_2d_condition import UNet2DConditionOutput\n\n\ndef make_diffusers_unet_2d_condition(block_class):\n\n    class unet_2d_condition(block_class):\n        # Save for unpatching later\n        _parent = block_class\n\n        def forward(\n            self,\n            sample: torch.FloatTensor,\n            timestep: Union[torch.Tensor, float, int],\n            encoder_hidden_states: torch.Tensor,\n            class_labels: Optional[torch.Tensor] = None,\n            timestep_cond: Optional[torch.Tensor] = None,\n            attention_mask: Optional[torch.Tensor] = None,\n            cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n            added_cond_kwargs: Optional[Dict[str, torch.Tensor]] = None,\n            down_block_additional_residuals: Optional[Tuple[torch.Tensor]] = None,\n            mid_block_additional_residual: Optional[torch.Tensor] = None,\n            down_intrablock_additional_residuals: Optional[Tuple[torch.Tensor]] = None,\n            encoder_attention_mask: Optional[torch.Tensor] = None,\n            return_dict: bool = True,\n        ) -> Union[UNet2DConditionOutput, Tuple]:\n            default_overall_up_factor = 2**self.num_upsamplers\n            forward_upsample_size = False\n            upsample_size = None\n            for dim in sample.shape[-2:]:\n                if dim % default_overall_up_factor != 0:\n                    forward_upsample_size = True\n                    break\n            if attention_mask is not None:\n                attention_mask = (1 - attention_mask.to(sample.dtype)) * -10000.0\n                attention_mask = attention_mask.unsqueeze(1)\n            if encoder_attention_mask is not None:\n                encoder_attention_mask = (1 - encoder_attention_mask.to(sample.dtype)) * -10000.0\n                encoder_attention_mask = encoder_attention_mask.unsqueeze(1)\n            if self.config.center_input_sample:\n                sample = 2 * sample - 1.0\n            timesteps = timestep\n            if not torch.is_tensor(timesteps):\n                is_mps = sample.device.type == \"mps\"\n                if isinstance(timestep, float):\n                    dtype = torch.float32 if is_mps else torch.float64\n                else:\n                    dtype = torch.int32 if is_mps else torch.int64\n                timesteps = torch.tensor([timesteps], dtype=dtype, device=sample.device)\n            elif len(timesteps.shape) == 0:\n                timesteps = timesteps[None].to(sample.device)\n            timesteps = timesteps.expand(sample.shape[0])\n            t_emb = self.time_proj(timesteps)\n            t_emb = t_emb.to(dtype=sample.dtype)\n            emb = self.time_embedding(t_emb, timestep_cond)\n            aug_emb = None\n            if self.class_embedding is not None:\n                if class_labels is None:\n                    raise ValueError(\"class_labels should be provided when num_class_embeds > 0\")\n                if self.config.class_embed_type == \"timestep\":\n                    class_labels = self.time_proj(class_labels)\n                    class_labels = class_labels.to(dtype=sample.dtype)\n                class_emb = self.class_embedding(class_labels).to(dtype=sample.dtype)\n                if self.config.class_embeddings_concat:\n                    emb = torch.cat([emb, class_emb], dim=-1)\n                else:\n                    emb = emb + class_emb\n            if self.config.addition_embed_type == \"text\":\n                aug_emb = self.add_embedding(encoder_hidden_states)\n            elif self.config.addition_embed_type == \"text_image\":\n                if \"image_embeds\" not in added_cond_kwargs:\n                    raise ValueError(f\"{self.__class__} has the config param `addition_embed_type` set to 'text_image' which requires the keyword argument `image_embeds` to be passed in `added_cond_kwargs`\")\n                image_embs = added_cond_kwargs.get(\"image_embeds\")\n                text_embs = added_cond_kwargs.get(\"text_embeds\", encoder_hidden_states)\n                aug_emb = self.add_embedding(text_embs, image_embs)\n            elif self.config.addition_embed_type == \"text_time\":\n                if \"text_embeds\" not in added_cond_kwargs:\n                    raise ValueError(f\"{self.__class__} has the config param `addition_embed_type` set to 'text_time' which requires the keyword argument `text_embeds` to be passed in `added_cond_kwargs`\")\n                text_embeds = added_cond_kwargs.get(\"text_embeds\")\n                if \"time_ids\" not in added_cond_kwargs:\n                    raise ValueError(f\"{self.__class__} has the config param `addition_embed_type` set to 'text_time' which requires the keyword argument `time_ids` to be passed in `added_cond_kwargs`\")\n                time_ids = added_cond_kwargs.get(\"time_ids\")\n                time_embeds = self.add_time_proj(time_ids.flatten())\n                time_embeds = time_embeds.reshape((text_embeds.shape[0], -1))\n                add_embeds = torch.concat([text_embeds, time_embeds], dim=-1)\n                add_embeds = add_embeds.to(emb.dtype)\n                aug_emb = self.add_embedding(add_embeds)\n            elif self.config.addition_embed_type == \"image\":\n                if \"image_embeds\" not in added_cond_kwargs:\n                    raise ValueError(f\"{self.__class__} has the config param `addition_embed_type` set to 'image' which requires the keyword argument `image_embeds` to be passed in `added_cond_kwargs`\")\n                image_embs = added_cond_kwargs.get(\"image_embeds\")\n                aug_emb = self.add_embedding(image_embs)\n            elif self.config.addition_embed_type == \"image_hint\":\n                if \"image_embeds\" not in added_cond_kwargs or \"hint\" not in added_cond_kwargs:\n                    raise ValueError(f\"{self.__class__} has the config param `addition_embed_type` set to 'image_hint' which requires the keyword arguments `image_embeds` and `hint` to be passed in `added_cond_kwargs`\")\n                image_embs = added_cond_kwargs.get(\"image_embeds\")\n                hint = added_cond_kwargs.get(\"hint\")\n                aug_emb, hint = self.add_embedding(image_embs, hint)\n                sample = torch.cat([sample, hint], dim=1)\n            emb = emb + aug_emb if aug_emb is not None else emb\n            if self.time_embed_act is not None:\n                emb = self.time_embed_act(emb)\n            if self.encoder_hid_proj is not None and self.config.encoder_hid_dim_type == \"text_proj\":\n                encoder_hidden_states = self.encoder_hid_proj(encoder_hidden_states)\n            elif self.encoder_hid_proj is not None and self.config.encoder_hid_dim_type == \"text_image_proj\":\n                if \"image_embeds\" not in added_cond_kwargs:\n                    raise ValueError(f\"{self.__class__} has the config param `encoder_hid_dim_type` set to 'text_image_proj' which requires the keyword argument `image_embeds` to be passed in  `added_conditions`\")\n                image_embeds = added_cond_kwargs.get(\"image_embeds\")\n                encoder_hidden_states = self.encoder_hid_proj(encoder_hidden_states, image_embeds)\n            elif self.encoder_hid_proj is not None and self.config.encoder_hid_dim_type == \"image_proj\":\n                if \"image_embeds\" not in added_cond_kwargs:\n                    raise ValueError(f\"{self.__class__} has the config param `encoder_hid_dim_type` set to 'image_proj' which requires the keyword argument `image_embeds` to be passed in  `added_conditions`\")\n                image_embeds = added_cond_kwargs.get(\"image_embeds\")\n                encoder_hidden_states = self.encoder_hid_proj(image_embeds)\n            elif self.encoder_hid_proj is not None and self.config.encoder_hid_dim_type == \"ip_image_proj\":\n                if \"image_embeds\" not in added_cond_kwargs:\n                    raise ValueError(f\"{self.__class__} has the config param `encoder_hid_dim_type` set to 'ip_image_proj' which requires the keyword argument `image_embeds` to be passed in  `added_conditions`\")\n                image_embeds = added_cond_kwargs.get(\"image_embeds\")\n                image_embeds = self.encoder_hid_proj(image_embeds).to(encoder_hidden_states.dtype)\n                encoder_hidden_states = torch.cat([encoder_hidden_states, image_embeds], dim=1)\n            sample = self.conv_in(sample)\n            if cross_attention_kwargs is not None and cross_attention_kwargs.get(\"gligen\", None) is not None:\n                cross_attention_kwargs = cross_attention_kwargs.copy()\n                gligen_args = cross_attention_kwargs.pop(\"gligen\")\n                cross_attention_kwargs[\"gligen\"] = {\"objs\": self.position_net(**gligen_args)}\n            lora_scale = cross_attention_kwargs.get(\"scale\", 1.0) if cross_attention_kwargs is not None else 1.0\n            if USE_PEFT_BACKEND:\n                # weight the lora layers by setting `lora_scale` for each PEFT layer\n                scale_lora_layers(self, lora_scale)\n\n            is_controlnet = mid_block_additional_residual is not None and down_block_additional_residuals is not None\n            # using new arg down_intrablock_additional_residuals for T2I-Adapters, to distinguish from controlnets\n            is_adapter = down_intrablock_additional_residuals is not None\n\n            down_block_res_samples = (sample,)\n            for downsample_block in self.down_blocks:\n                if hasattr(downsample_block, \"has_cross_attention\") and downsample_block.has_cross_attention:\n                    # For t2i-adapter CrossAttnDownBlock2D\n                    additional_residuals = {}\n                    if is_adapter and len(down_intrablock_additional_residuals) > 0:\n                        additional_residuals[\"additional_residuals\"] = down_intrablock_additional_residuals.pop(0)\n\n                    sample, res_samples = downsample_block(\n                        hidden_states=sample,\n                        temb=emb,\n                        encoder_hidden_states=encoder_hidden_states,\n                        attention_mask=attention_mask,\n                        cross_attention_kwargs=cross_attention_kwargs,\n                        encoder_attention_mask=encoder_attention_mask,\n                        **additional_residuals,\n                    )\n                else:\n                    # sample, res_samples = downsample_block(hidden_states=sample, temb=emb, scale=lora_scale)\n                    sample, res_samples = downsample_block(hidden_states=sample, temb=emb)\n                    if is_adapter and len(down_intrablock_additional_residuals) > 0:\n                        sample += down_intrablock_additional_residuals.pop(0)\n\n                down_block_res_samples += res_samples\n\n            if is_controlnet:\n                new_down_block_res_samples = ()\n\n                for down_block_res_sample, down_block_additional_residual in zip(\n                    down_block_res_samples, down_block_additional_residuals\n                ):\n                    _, _, ori_H, ori_W = down_block_res_sample.shape\n                    down_block_additional_residual = F.interpolate(down_block_additional_residual, (ori_H, ori_W), mode='bicubic')\n                    down_block_res_sample = down_block_res_sample + down_block_additional_residual\n                    new_down_block_res_samples = new_down_block_res_samples + (down_block_res_sample,)\n\n                down_block_res_samples = new_down_block_res_samples\n\n            # 4. mid\n            if self.mid_block is not None:\n                if hasattr(self.mid_block, \"has_cross_attention\") and self.mid_block.has_cross_attention:\n                    sample = self.mid_block(\n                        sample,\n                        emb,\n                        encoder_hidden_states=encoder_hidden_states,\n                        attention_mask=attention_mask,\n                        cross_attention_kwargs=cross_attention_kwargs,\n                        encoder_attention_mask=encoder_attention_mask,\n                    )\n                else:\n                    sample = self.mid_block(sample, emb)\n\n                # To support T2I-Adapter-XL\n                if (\n                    is_adapter\n                    and len(down_intrablock_additional_residuals) > 0\n                    and sample.shape == down_intrablock_additional_residuals[0].shape\n                ):\n                    sample += down_intrablock_additional_residuals.pop(0)\n\n            if is_controlnet:\n                _, _, ori_H, ori_W = sample.shape\n                mid_block_additional_residual = F.interpolate(mid_block_additional_residual, (ori_H, ori_W), mode='bicubic')\n                sample = sample + mid_block_additional_residual\n\n            # 5. up\n            for i, upsample_block in enumerate(self.up_blocks):\n                is_final_block = i == len(self.up_blocks) - 1\n\n                res_samples = down_block_res_samples[-len(upsample_block.resnets) :]\n                down_block_res_samples = down_block_res_samples[: -len(upsample_block.resnets)]\n\n                # if we have not reached the final block and need to forward the\n                # upsample size, we do it here\n                if not is_final_block and forward_upsample_size:\n                    upsample_size = down_block_res_samples[-1].shape[2:]\n\n                if hasattr(upsample_block, \"has_cross_attention\") and upsample_block.has_cross_attention:\n                    sample = upsample_block(\n                        hidden_states=sample,\n                        temb=emb,\n                        res_hidden_states_tuple=res_samples,\n                        encoder_hidden_states=encoder_hidden_states,\n                        cross_attention_kwargs=cross_attention_kwargs,\n                        upsample_size=upsample_size,\n                        attention_mask=attention_mask,\n                        encoder_attention_mask=encoder_attention_mask,\n                    )\n                else:\n                    sample = upsample_block(\n                        hidden_states=sample,\n                        temb=emb,\n                        res_hidden_states_tuple=res_samples,\n                        upsample_size=upsample_size,\n                        # scale=lora_scale,\n                    )\n                    # sample = upsample_block(\n                    #     hidden_states=sample,\n                    #     temb=emb,\n                    #     res_hidden_states_tuple=res_samples,\n                    #     upsample_size=upsample_size,\n                    #     scale=lora_scale,\n                    # )\n\n            # 6. post-process\n            if self.conv_norm_out:\n                sample = self.conv_norm_out(sample)\n                sample = self.conv_act(sample)\n            sample = self.conv_out(sample)\n\n            if USE_PEFT_BACKEND:\n                # remove `lora_scale` from each PEFT layer\n                unscale_lora_layers(self, lora_scale)\n\n            if not return_dict:\n                return (sample,)\n\n            return UNet2DConditionOutput(sample=sample)\n    return unet_2d_condition\n\n\ndef make_diffusers_sdxl_contrtolnet_ppl(block_class):\n    class sdxl_contrtolnet_ppl(block_class):\n        # Save for unpatching later\n        _parent = block_class\n\n        @torch.no_grad()\n        def __call__(\n            self,\n            prompt: Union[str, List[str]] = None,\n            prompt_2: Optional[Union[str, List[str]]] = None,\n            image: PipelineImageInput = None,\n            control_image: PipelineImageInput = None,\n            height: Optional[int] = None,\n            width: Optional[int] = None,\n            strength: float = 0.8,\n            num_inference_steps: int = 50,\n            guidance_scale: float = 5.0,\n            negative_prompt: Optional[Union[str, List[str]]] = None,\n            negative_prompt_2: Optional[Union[str, List[str]]] = None,\n            num_images_per_prompt: Optional[int] = 1,\n            eta: float = 0.0,\n            generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n            latents: Optional[torch.FloatTensor] = None,\n            prompt_embeds: Optional[torch.FloatTensor] = None,\n            negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n            pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n            negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n            output_type: Optional[str] = \"pil\",\n            return_dict: bool = True,\n            cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n            controlnet_conditioning_scale: Union[float, List[float]] = 0.8,\n            guess_mode: bool = False,\n            control_guidance_start: Union[float, List[float]] = 0.0,\n            control_guidance_end: Union[float, List[float]] = 1.0,\n            original_size: Tuple[int, int] = None,\n            crops_coords_top_left: Tuple[int, int] = (0, 0),\n            target_size: Tuple[int, int] = None,\n            negative_original_size: Optional[Tuple[int, int]] = None,\n            negative_crops_coords_top_left: Tuple[int, int] = (0, 0),\n            negative_target_size: Optional[Tuple[int, int]] = None,\n            aesthetic_score: float = 6.0,\n            negative_aesthetic_score: float = 2.5,\n            clip_skip: Optional[int] = None,\n            callback_on_step_end: Optional[Callable[[int, int, Dict], None]] = None,\n            callback_on_step_end_tensor_inputs: List[str] = [\"latents\"],\n            **kwargs,\n        ):\n            # convert image to control_image to fit sdxl_controlnet ppl.\n            if control_image is None:\n                control_image = image\n                image = None\n                self.info['text_to_img_controlnet'] = True\n            else:\n                self.info['text_to_img_controlnet'] = False\n\n            callback = kwargs.pop(\"callback\", None)\n            callback_steps = kwargs.pop(\"callback_steps\", None)\n            controlnet = self.controlnet._orig_mod if is_compiled_module(self.controlnet) else self.controlnet\n\n            # align format for control guidance\n            if not isinstance(control_guidance_start, list) and isinstance(control_guidance_end, list):\n                control_guidance_start = len(control_guidance_end) * [control_guidance_start]\n            elif not isinstance(control_guidance_end, list) and isinstance(control_guidance_start, list):\n                control_guidance_end = len(control_guidance_start) * [control_guidance_end]\n            elif not isinstance(control_guidance_start, list) and not isinstance(control_guidance_end, list):\n                mult = len(controlnet.nets) if isinstance(controlnet, MultiControlNetModel) else 1\n                control_guidance_start, control_guidance_end = (\n                    mult * [control_guidance_start],\n                    mult * [control_guidance_end],\n                )\n\n            # 1. Check inputs. Raise error if not correct\n            if image is not None:\n                # image-to-image controlnet\n                self.check_inputs(\n                    prompt,\n                    prompt_2,\n                    control_image,\n                    strength,\n                    num_inference_steps,\n                    callback_steps,\n                    negative_prompt,\n                    negative_prompt_2,\n                    prompt_embeds,\n                    negative_prompt_embeds,\n                    pooled_prompt_embeds,\n                    negative_pooled_prompt_embeds,\n                    None,\n                    None,\n                    controlnet_conditioning_scale,\n                    control_guidance_start,\n                    control_guidance_end,\n                    callback_on_step_end_tensor_inputs,\n                )\n            else:\n                # text-to-image controlnet\n                self.check_inputs(\n                    prompt,\n                    prompt_2,\n                    control_image,\n                    callback_steps,\n                    negative_prompt,\n                    negative_prompt_2,\n                    prompt_embeds,\n                    negative_prompt_embeds,\n                    pooled_prompt_embeds,\n                    None,\n                    None,\n                    negative_pooled_prompt_embeds,\n                    controlnet_conditioning_scale,\n                    control_guidance_start,\n                    control_guidance_end,\n                    callback_on_step_end_tensor_inputs,\n                )\n\n            self._guidance_scale = guidance_scale\n            self._clip_skip = clip_skip\n            self._cross_attention_kwargs = cross_attention_kwargs\n\n            # 2. Define call parameters\n            if prompt is not None and isinstance(prompt, str):\n                batch_size = 1\n            elif prompt is not None and isinstance(prompt, list):\n                batch_size = len(prompt)\n            else:\n                batch_size = prompt_embeds.shape[0]\n\n            device = self._execution_device\n\n            if isinstance(controlnet, MultiControlNetModel) and isinstance(controlnet_conditioning_scale, float):\n                controlnet_conditioning_scale = [controlnet_conditioning_scale] * len(controlnet.nets)\n\n            global_pool_conditions = (\n                controlnet.config.global_pool_conditions\n                if isinstance(controlnet, ControlNetModel)\n                else controlnet.nets[0].config.global_pool_conditions\n            )\n            guess_mode = guess_mode or global_pool_conditions\n\n            # 3. Encode input prompt\n            text_encoder_lora_scale = (\n                self.cross_attention_kwargs.get(\"scale\", None) if self.cross_attention_kwargs is not None else None\n            )\n            (\n                prompt_embeds,\n                negative_prompt_embeds,\n                pooled_prompt_embeds,\n                negative_pooled_prompt_embeds,\n            ) = self.encode_prompt(\n                prompt,\n                prompt_2,\n                device,\n                num_images_per_prompt,\n                self.do_classifier_free_guidance,\n                negative_prompt,\n                negative_prompt_2,\n                prompt_embeds=prompt_embeds,\n                negative_prompt_embeds=negative_prompt_embeds,\n                pooled_prompt_embeds=pooled_prompt_embeds,\n                negative_pooled_prompt_embeds=negative_pooled_prompt_embeds,\n                lora_scale=text_encoder_lora_scale,\n                clip_skip=self.clip_skip,\n            )\n\n            # 4. Prepare image and controlnet_conditioning_image\n            if image is not None:\n                image = self.image_processor.preprocess(image, height=height, width=width).to(dtype=torch.float32)\n                if isinstance(controlnet, ControlNetModel):\n                    control_image = self.prepare_control_image(\n                        image=control_image,\n                        width=width,\n                        height=height,\n                        batch_size=batch_size * num_images_per_prompt,\n                        num_images_per_prompt=num_images_per_prompt,\n                        device=device,\n                        dtype=controlnet.dtype,\n                        do_classifier_free_guidance=self.do_classifier_free_guidance,\n                        guess_mode=guess_mode,\n                    )\n                    height, width = control_image.shape[-2:]\n                elif isinstance(controlnet, MultiControlNetModel):\n                    control_images = []\n\n                    for control_image_ in control_image:\n                        control_image_ = self.prepare_control_image(\n                            image=control_image_,\n                            width=width,\n                            height=height,\n                            batch_size=batch_size * num_images_per_prompt,\n                            num_images_per_prompt=num_images_per_prompt,\n                            device=device,\n                            dtype=controlnet.dtype,\n                            do_classifier_free_guidance=self.do_classifier_free_guidance,\n                            guess_mode=guess_mode,\n                        )\n\n                        control_images.append(control_image_)\n\n                    control_image = control_images\n                    height, width = control_image[0].shape[-2:]\n                else:\n                    raise AssertionError\n            else:\n                if isinstance(controlnet, ControlNetModel):\n                    control_image = self.prepare_image(\n                        image=control_image,\n                        width=width,\n                        height=height,\n                        batch_size=batch_size * num_images_per_prompt,\n                        num_images_per_prompt=num_images_per_prompt,\n                        device=device,\n                        dtype=controlnet.dtype,\n                        do_classifier_free_guidance=self.do_classifier_free_guidance,\n                        guess_mode=guess_mode,\n                    )\n                    height, width = control_image.shape[-2:]\n                elif isinstance(controlnet, MultiControlNetModel):\n                    images = []\n\n                    for image_ in control_image:\n                        image_ = self.prepare_image(\n                            image=image_,\n                            width=width,\n                            height=height,\n                            batch_size=batch_size * num_images_per_prompt,\n                            num_images_per_prompt=num_images_per_prompt,\n                            device=device,\n                            dtype=controlnet.dtype,\n                            do_classifier_free_guidance=self.do_classifier_free_guidance,\n                            guess_mode=guess_mode,\n                        )\n\n                        images.append(image_)\n\n                    control_image = images\n                    height, width = image[0].shape[-2:]\n                else:\n                    raise AssertionError\n            # 5. Prepare timesteps\n            self.scheduler.set_timesteps(num_inference_steps, device=device)\n            if image is not None:\n                timesteps, num_inference_steps = self.get_timesteps(num_inference_steps, strength, device)\n                latent_timestep = timesteps[:1].repeat(batch_size * num_images_per_prompt)\n            else:\n                timesteps = self.scheduler.timesteps\n            self._num_timesteps = len(timesteps)\n\n            # 6. Prepare latent variables\n            if image is not None:\n                # image-to-image controlnet\n                latents = self.prepare_latents(\n                    image,\n                    latent_timestep,\n                    batch_size,\n                    num_images_per_prompt,\n                    prompt_embeds.dtype,\n                    device,\n                    generator,\n                    True,\n                )\n            else:\n                # text-to-image controlnet\n                num_channels_latents = self.unet.config.in_channels\n                latents = self.prepare_latents(\n                    batch_size * num_images_per_prompt,\n                    num_channels_latents,\n                    height,\n                    width,\n                    prompt_embeds.dtype,\n                    device,\n                    generator,\n                    latents,\n                )\n                # num_channels_latents = self.unet.config.in_channels\n                # shape = (batch_size * num_images_per_prompt, num_channels_latents, height // self.vae_scale_factor, width // self.vae_scale_factor)\n                # if isinstance(generator, list) and len(generator) != batch_size:\n                #     raise ValueError(\n                #         f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                #         f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n                #     )\n\n                # if latents is None:\n                #     latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n                # else:\n                #     latents = latents.to(device)\n\n                # # scale the initial noise by the standard deviation required by the scheduler\n                # latents = latents * self.scheduler.init_noise_sigma\n\n            # 7. Prepare extra step kwargs.\n            extra_step_kwargs = self.prepare_extra_step_kwargs(generator, eta)\n\n            # 7.1 Create tensor stating which controlnets to keep\n            controlnet_keep = []\n            for i in range(len(timesteps)):\n                keeps = [\n                    1.0 - float(i / len(timesteps) < s or (i + 1) / len(timesteps) > e)\n                    for s, e in zip(control_guidance_start, control_guidance_end)\n                ]\n                controlnet_keep.append(keeps[0] if isinstance(controlnet, ControlNetModel) else keeps)\n\n            # 7.2 Prepare added time ids & embeddings\n            if image is not None:\n                if isinstance(control_image, list):\n                    original_size = original_size or control_image[0].shape[-2:]\n                else:\n                    original_size = original_size or control_image.shape[-2:]\n                target_size = target_size or (height, width)\n\n                if negative_original_size is None:\n                    negative_original_size = original_size\n                if negative_target_size is None:\n                    negative_target_size = target_size\n                add_text_embeds = pooled_prompt_embeds\n\n                if self.text_encoder_2 is None:\n                    text_encoder_projection_dim = int(pooled_prompt_embeds.shape[-1])\n                else:\n                    text_encoder_projection_dim = self.text_encoder_2.config.projection_dim\n\n                add_time_ids, add_neg_time_ids = self._get_add_time_ids(\n                    original_size,\n                    crops_coords_top_left,\n                    target_size,\n                    aesthetic_score,\n                    negative_aesthetic_score,\n                    negative_original_size,\n                    negative_crops_coords_top_left,\n                    negative_target_size,\n                    dtype=prompt_embeds.dtype,\n                    text_encoder_projection_dim=text_encoder_projection_dim,\n                )\n                add_time_ids = add_time_ids.repeat(batch_size * num_images_per_prompt, 1)\n\n                if self.do_classifier_free_guidance:\n                    prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds], dim=0)\n                    add_text_embeds = torch.cat([negative_pooled_prompt_embeds, add_text_embeds], dim=0)\n                    add_neg_time_ids = add_neg_time_ids.repeat(batch_size * num_images_per_prompt, 1)\n                    add_time_ids = torch.cat([add_neg_time_ids, add_time_ids], dim=0)\n\n                prompt_embeds = prompt_embeds.to(device)\n                add_text_embeds = add_text_embeds.to(device)\n                add_time_ids = add_time_ids.to(device)\n            else:\n                if isinstance(control_image, list):\n                    original_size = original_size or control_image[0].shape[-2:]\n                else:\n                    original_size = original_size or control_image.shape[-2:]\n                target_size = target_size or (height, width)\n\n                add_text_embeds = pooled_prompt_embeds\n                if self.text_encoder_2 is None:\n                    text_encoder_projection_dim = int(pooled_prompt_embeds.shape[-1])\n                else:\n                    text_encoder_projection_dim = self.text_encoder_2.config.projection_dim\n\n                add_time_ids = self._get_add_time_ids(\n                    original_size,\n                    crops_coords_top_left,\n                    target_size,\n                    dtype=prompt_embeds.dtype,\n                    text_encoder_projection_dim=text_encoder_projection_dim,\n                )\n\n                if negative_original_size is not None and negative_target_size is not None:\n                    negative_add_time_ids = self._get_add_time_ids(\n                        negative_original_size,\n                        negative_crops_coords_top_left,\n                        negative_target_size,\n                        dtype=prompt_embeds.dtype,\n                        text_encoder_projection_dim=text_encoder_projection_dim,\n                    )\n                else:\n                    negative_add_time_ids = add_time_ids\n\n                if self.do_classifier_free_guidance:\n                    prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds], dim=0)\n                    add_text_embeds = torch.cat([negative_pooled_prompt_embeds, add_text_embeds], dim=0)\n                    add_time_ids = torch.cat([negative_add_time_ids, add_time_ids], dim=0)\n\n                prompt_embeds = prompt_embeds.to(device)\n                add_text_embeds = add_text_embeds.to(device)\n                add_time_ids = add_time_ids.to(device).repeat(batch_size * num_images_per_prompt, 1)\n\n            # 8. Denoising loop\n            num_warmup_steps = len(timesteps) - num_inference_steps * self.scheduler.order\n            with self.progress_bar(total=num_inference_steps) as progress_bar:\n                for i, t in enumerate(timesteps):\n                    # expand the latents if we are doing classifier free guidance\n                    latent_model_input = torch.cat([latents] * 2) if self.do_classifier_free_guidance else latents\n                    latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n                    added_cond_kwargs = {\"text_embeds\": add_text_embeds, \"time_ids\": add_time_ids}\n\n                    # controlnet(s) inference\n                    if guess_mode and self.do_classifier_free_guidance:\n                        # Infer ControlNet only for the conditional batch.\n                        control_model_input = latents\n                        control_model_input = self.scheduler.scale_model_input(control_model_input, t)\n                        controlnet_prompt_embeds = prompt_embeds.chunk(2)[1]\n                        controlnet_added_cond_kwargs = {\n                            \"text_embeds\": add_text_embeds.chunk(2)[1],\n                            \"time_ids\": add_time_ids.chunk(2)[1],\n                        }\n                    else:\n                        control_model_input = latent_model_input\n                        controlnet_prompt_embeds = prompt_embeds\n                        controlnet_added_cond_kwargs = added_cond_kwargs\n\n                    if isinstance(controlnet_keep[i], list):\n                        cond_scale = [c * s for c, s in zip(controlnet_conditioning_scale, controlnet_keep[i])]\n                    else:\n                        controlnet_cond_scale = controlnet_conditioning_scale\n                        if isinstance(controlnet_cond_scale, list):\n                            controlnet_cond_scale = controlnet_cond_scale[0]\n                        cond_scale = controlnet_cond_scale * controlnet_keep[i]\n\n\n                    if i < controlnet_apply_steps_rate * num_inference_steps:\n\n                        original_h, original_w = (128,128)\n                        _, _, model_input_h, model_input_w = control_model_input.shape\n                        downsample_factor = max(model_input_h/original_h, model_input_w/original_w)\n                        downsample_size = (int(model_input_h//downsample_factor)//8*8, int(model_input_w//downsample_factor)//8*8)\n\n                        # original_pixel_h, original_pixel_w = (1024,1024)\n                        # _, _, pixel_h, pixel_w = control_image.shape\n                        # downsample_pixel_factor = max(pixel_h/original_pixel_h, pixel_w/original_pixel_w)\n                        # downsample_pixel_size = (int(pixel_h//downsample_pixel_factor)//8*8, int(pixel_w//downsample_pixel_factor)//8*8)\n                        downsample_pixel_size = [downsample_size[0]*8, downsample_size[1]*8]\n\n                        down_block_res_samples, mid_block_res_sample = self.controlnet(\n                            F.interpolate(control_model_input, downsample_size),\n                            # control_model_input,\n                            t,\n                            encoder_hidden_states=controlnet_prompt_embeds,\n                            controlnet_cond=F.interpolate(control_image, downsample_pixel_size),\n                            # controlnet_cond=control_image,\n                            conditioning_scale=cond_scale,\n                            guess_mode=guess_mode,\n                            added_cond_kwargs=controlnet_added_cond_kwargs,\n                            return_dict=False,\n                        )\n\n                    if guess_mode and self.do_classifier_free_guidance:\n                        # Infered ControlNet only for the conditional batch.\n                        # To apply the output of ControlNet to both the unconditional and conditional batches,\n                        # add 0 to the unconditional batch to keep it unchanged.\n                        down_block_res_samples = [torch.cat([torch.zeros_like(d), d]) for d in down_block_res_samples]\n                        mid_block_res_sample = torch.cat([torch.zeros_like(mid_block_res_sample), mid_block_res_sample])\n\n                    # predict the noise residual\n                    if i < controlnet_apply_steps_rate * num_inference_steps:\n                        noise_pred = self.unet(\n                            latent_model_input,\n                            t,\n                            encoder_hidden_states=prompt_embeds,\n                            cross_attention_kwargs=self.cross_attention_kwargs,\n                            down_block_additional_residuals=down_block_res_samples,\n                            mid_block_additional_residual=mid_block_res_sample,\n                            added_cond_kwargs=added_cond_kwargs,\n                            return_dict=False,\n                        )[0]\n                    else:\n                        noise_pred = self.unet(\n                            latent_model_input,\n                            t,\n                            encoder_hidden_states=prompt_embeds,\n                            cross_attention_kwargs=self.cross_attention_kwargs,\n                            down_block_additional_residuals=None,\n                            mid_block_additional_residual=None,\n                            added_cond_kwargs=added_cond_kwargs,\n                            return_dict=False,\n                        )[0]\n\n                    # perform guidance\n                    if self.do_classifier_free_guidance:\n                        noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                        noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                    # compute the previous noisy sample x_t -> x_t-1\n                    latents = self.scheduler.step(noise_pred, t, latents, **extra_step_kwargs, return_dict=False)[0]\n\n                    if callback_on_step_end is not None:\n                        callback_kwargs = {}\n                        for k in callback_on_step_end_tensor_inputs:\n                            callback_kwargs[k] = locals()[k]\n                        callback_outputs = callback_on_step_end(self, i, t, callback_kwargs)\n\n                        latents = callback_outputs.pop(\"latents\", latents)\n                        prompt_embeds = callback_outputs.pop(\"prompt_embeds\", prompt_embeds)\n                        negative_prompt_embeds = callback_outputs.pop(\"negative_prompt_embeds\", negative_prompt_embeds)\n\n                    # call the callback, if provided\n                    if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                        progress_bar.update()\n                        if callback is not None and i % callback_steps == 0:\n                            step_idx = i // getattr(self.scheduler, \"order\", 1)\n                            callback(step_idx, t, latents)\n\n            # If we do sequential model offloading, let's offload unet and controlnet\n            # manually for max memory savings\n            if hasattr(self, \"final_offload_hook\") and self.final_offload_hook is not None:\n                self.unet.to(\"cpu\")\n                self.controlnet.to(\"cpu\")\n                torch.cuda.empty_cache()\n\n            if output_type != \"latent\":\n                # make sure the VAE is in float32 mode, as it overflows in float16\n                needs_upcasting = self.vae.dtype == torch.float16 and self.vae.config.force_upcast\n\n                if needs_upcasting:\n                    self.upcast_vae()\n                    latents = latents.to(next(iter(self.vae.post_quant_conv.parameters())).dtype)\n\n                image = self.vae.decode(latents / self.vae.config.scaling_factor, return_dict=False)[0]\n\n                # cast back to fp16 if needed\n                if needs_upcasting:\n                    self.vae.to(dtype=torch.float16)\n            else:\n                image = latents\n                return StableDiffusionXLPipelineOutput(images=image)\n\n            # apply watermark if available\n            if self.watermark is not None:\n                image = self.watermark.apply_watermark(image)\n\n            image = self.image_processor.postprocess(image, output_type=output_type)\n\n            # Offload all models\n            self.maybe_free_model_hooks()\n\n            if not return_dict:\n                return (image,)\n\n            return StableDiffusionXLPipelineOutput(images=image)\n    return sdxl_contrtolnet_ppl\n"
  },
  {
    "path": "modules/hidiffusion/utils.py",
    "content": "import torch\n\n\ndef isinstance_str(x: object, cls_name: str):\n    \"\"\"\n    Checks whether x has any class *named* cls_name in its ancestry.\n    Doesn't require access to the class's implementation.\n\n    Useful for patching!\n    \"\"\"\n\n    for _cls in x.__class__.__mro__:\n        if _cls.__name__ == cls_name:\n            return True\n\n    return False\n\n\ndef init_generator(device: torch.device, fallback: torch.Generator=None):\n    \"\"\"\n    Forks the current default random generator given device.\n    \"\"\"\n    if device.type == \"cpu\":\n        return torch.Generator(device=\"cpu\").set_state(torch.get_rng_state())\n    elif device.type == \"cuda\":\n        return torch.Generator(device=device).set_state(torch.cuda.get_rng_state())\n    else:\n        if fallback is None:\n            return init_generator(torch.device(\"cpu\"))\n        else:\n            return fallback\n"
  },
  {
    "path": "modules/history.py",
    "content": "\"\"\"\nTODO: apply metadata, preview, load/save\n\"\"\"\n\nimport sys\nimport datetime\nfrom collections import deque\nimport torch\nfrom modules import shared, devices\n\n\nclass Item():\n    def __init__(self, latent, preview=None, info=None, ops=[]):\n        self.ts = datetime.datetime.now().replace(microsecond=0)\n        self.name = self.ts.strftime('%Y-%m-%d %H:%M:%S')\n        self.latent = latent.detach().clone().to(devices.cpu)\n        self.preview = preview\n        self.info = info\n        self.ops = ops.copy()\n        self.size = sys.getsizeof(self.latent.storage())\n\n\nclass History():\n    def __init__(self):\n        self.index = -1\n        self.latents = deque(maxlen=1024)\n\n    @property\n    def count(self):\n        return len(self.latents)\n\n    @property\n    def size(self):\n        s = 0\n        for item in self.latents:\n            s += item.size\n        return s\n\n    @property\n    def list(self):\n        shared.log.info(f'History: items={self.count}/{shared.opts.latent_history} size={self.size}')\n        return [item.name for item in self.latents]\n\n    @property\n    def selected(self):\n        if self.index >= 0 and self.index < self.count:\n            current_index = self.index\n            self.index = -1\n        else:\n            current_index = 0\n        item = self.latents[current_index]\n        shared.log.debug(f'History get: index={current_index} time={item.ts} shape={list(item.latent.shape)} dtype={item.latent.dtype} count={self.count}')\n        return item.latent.to(devices.device), current_index\n\n    def find(self, name):\n        for i, item in enumerate(self.latents):\n            if item.name == name:\n                return i\n        return -1\n\n    def add(self, latent, preview=None, info=None, ops=[]):\n        shared.state.latent_history += 1\n        if shared.opts.latent_history == 0:\n            return\n        if torch.is_tensor(latent):\n            item = Item(latent, preview, info, ops)\n            self.latents.appendleft(item)\n            if self.count >= shared.opts.latent_history:\n                self.latents.pop()\n\n    def clear(self):\n        self.latents.clear()\n        # shared.log.debug(f'History clear: count={self.count}')\n\n    def load(self):\n        pass\n\n    def save(self):\n        pass\n"
  },
  {
    "path": "modules/images.py",
    "content": "import io\nimport re\nimport os\nimport sys\nimport json\nimport queue\nimport random\nimport datetime\nimport threading\nimport numpy as np\nimport piexif\nimport piexif.helper\nfrom PIL import Image, PngImagePlugin, ExifTags, ImageDraw\nfrom modules import sd_samplers, shared, script_callbacks, errors, paths\nfrom modules.images_grid import (\n    image_grid as image_grid,\n    get_grid_size as get_grid_size,\n    split_grid as split_grid,\n    combine_grid as combine_grid,\n    check_grid_size as check_grid_size,\n    get_font as get_font,\n    draw_grid_annotations as draw_grid_annotations,\n    draw_prompt_matrix as draw_prompt_matrix,\n    GridAnnotation as GridAnnotation,\n    Grid as Grid,\n)\nfrom modules.images_resize import resize_image as resize_image\nfrom modules.images_namegen import (\n    FilenameGenerator as FilenameGenerator,\n    get_next_sequence_number as get_next_sequence_number,\n)\nfrom modules.video import save_video as save_video\n\n\ndebug = errors.log.trace if os.environ.get('SD_PATH_DEBUG', None) is not None else lambda *args, **kwargs: None\ndebug_save = errors.log.trace if os.environ.get('SD_SAVE_DEBUG', None) is not None else lambda *args, **kwargs: None\ntry:\n    from pi_heif import register_heif_opener\n    register_heif_opener()\nexcept Exception:\n    pass\n\n\ndef sanitize_filename_part(text, replace_spaces=True):\n    if text is None:\n        return None\n    if replace_spaces:\n        text = text.replace(' ', '_')\n    invalid_filename_chars = '#<>:\"/\\\\|?*\\n\\r\\t'\n    invalid_filename_prefix = ' '\n    invalid_filename_postfix = ' .'\n    max_filename_part_length = 64\n    text = text.translate({ord(x): '_' for x in invalid_filename_chars})\n    text = text.lstrip(invalid_filename_prefix)[:max_filename_part_length]\n    text = text.rstrip(invalid_filename_postfix)\n    return text\n\n\ndef atomically_save_image():\n    Image.MAX_IMAGE_PIXELS = None # disable check in Pillow and rely on check below to allow large custom image sizes\n    while True:\n        image, filename, extension, params, exifinfo, filename_txt, is_grid = save_queue.get()\n        jobid = shared.state.begin('Save image')\n        shared.state.image_history += 1\n        if len(exifinfo) > 2:\n            with open(paths.params_path, \"w\", encoding=\"utf8\") as file:\n                file.write(exifinfo)\n        fn = filename + extension\n        filename = filename.strip()\n        if extension[0] != '.': # add dot if missing\n            extension = '.' + extension\n        try:\n            image_format = Image.registered_extensions()[extension]\n        except Exception:\n            shared.log.warning(f'Save: unknown image format: {extension}')\n            image_format = 'JPEG'\n        exifinfo = (exifinfo or \"\") if shared.opts.image_metadata else \"\"\n        # additional metadata saved in files\n        if shared.opts.save_txt and len(exifinfo) > 0:\n            try:\n                with open(filename_txt, \"w\", encoding=\"utf8\") as file:\n                    file.write(f\"{exifinfo}\\n\")\n                shared.log.info(f'Save: text=\"{filename_txt}\" len={len(exifinfo)}')\n            except Exception as e:\n                shared.log.warning(f'Save failed: description={filename_txt} {e}')\n\n        # actual save\n        if image_format == 'PNG':\n            pnginfo_data = PngImagePlugin.PngInfo()\n            for k, v in params.pnginfo.items():\n                pnginfo_data.add_text(k, str(v))\n            debug_save(f'Save pnginfo: {params.pnginfo.items()}')\n            save_args = { 'compress_level': 6, 'pnginfo': pnginfo_data if shared.opts.image_metadata else None }\n        elif image_format == 'JPEG':\n            if image.mode == 'RGBA':\n                shared.log.warning('Save: removing alpha channel')\n                image = image.convert(\"RGB\")\n            elif image.mode == 'I;16':\n                image = image.point(lambda p: p * 0.0038910505836576).convert(\"L\")\n            save_args = { 'optimize': True, 'quality': shared.opts.jpeg_quality }\n            if shared.opts.image_metadata:\n                debug_save(f'Save exif: {exifinfo}')\n                save_args['exif'] = piexif.dump({ \"Exif\": { piexif.ExifIFD.UserComment: piexif.helper.UserComment.dump(exifinfo, encoding=\"unicode\") } })\n        elif image_format == 'WEBP':\n            if image.mode == 'I;16':\n                image = image.point(lambda p: p * 0.0038910505836576).convert(\"RGB\")\n            save_args = { 'optimize': True, 'quality': shared.opts.jpeg_quality, 'lossless': shared.opts.webp_lossless }\n            if shared.opts.image_metadata:\n                debug_save(f'Save exif: {exifinfo}')\n                save_args['exif'] = piexif.dump({ \"Exif\": { piexif.ExifIFD.UserComment: piexif.helper.UserComment.dump(exifinfo, encoding=\"unicode\") } })\n        elif image_format == 'JXL':\n            if image.mode == 'I;16':\n                image = image.point(lambda p: p * 0.0038910505836576).convert(\"RGB\")\n            elif image.mode not in {\"RGB\", \"RGBA\"}:\n                image = image.convert(\"RGBA\")\n            save_args = { 'optimize': True, 'quality': shared.opts.jpeg_quality, 'lossless': shared.opts.webp_lossless }\n            if shared.opts.image_metadata:\n                debug_save(f'Save exif: {exifinfo}')\n                save_args['exif'] = piexif.dump({ \"Exif\": { piexif.ExifIFD.UserComment: piexif.helper.UserComment.dump(exifinfo, encoding=\"unicode\") } })\n        else:\n            save_args = { 'quality': shared.opts.jpeg_quality }\n        try:\n            debug_save(f'Save args: {save_args}')\n            image.save(fn, format=image_format, **save_args)\n        except Exception as e:\n            shared.log.error(f'Save failed: file=\"{fn}\" format={image_format} args={save_args} {e}')\n            errors.display(e, 'Image save')\n        size = os.path.getsize(fn) if os.path.exists(fn) else 0\n        what = 'grid' if is_grid else 'image'\n        shared.log.info(f'Save: {what}=\"{fn}\" type={image_format} width={image.width} height={image.height} size={size}')\n\n        if shared.opts.save_log_fn != '' and len(exifinfo) > 0:\n            fn = os.path.join(paths.data_path, shared.opts.save_log_fn)\n            if not fn.endswith('.json'):\n                fn += '.json'\n            entries = shared.readfile(fn, silent=True)\n            if not isinstance(entries, list):\n                entries = []\n            idx = len(entries)\n            entry = { 'id': idx, 'filename': filename, 'time': datetime.datetime.now().isoformat(), 'info': exifinfo }\n            entries.append(entry)\n            shared.writefile(entries, fn, mode='w', silent=True)\n            shared.log.info(f'Save: json=\"{fn}\" records={len(entries)}')\n        shared.state.outputs(filename)\n        shared.state.end(jobid)\n        save_queue.task_done()\n\n\nsave_queue: queue.Queue[tuple[Image.Image, str, str, script_callbacks.ImageSaveParams, str, str | None, bool]] = queue.Queue()\nsave_thread = threading.Thread(target=atomically_save_image, daemon=True)\nsave_thread.start()\n\n\ndef save_image(image,\n               path=None,\n               basename='',\n               seed=None,\n               prompt=None,\n               extension=shared.opts.samples_format,\n               info=None,\n               grid=False,\n               pnginfo_section_name='parameters',\n               p=None,\n               existing_info=None,\n               forced_filename=None,\n               suffix='',\n               save_to_dirs=None,\n            ):\n    fn = f'{sys._getframe(2).f_code.co_name}:{sys._getframe(1).f_code.co_name}' # pylint: disable=protected-access\n    debug_save(f'Save: fn={fn}') # pylint: disable=protected-access\n    if image is None:\n        shared.log.warning('Image is none')\n        return None, None, None\n    if isinstance(image, list):\n        if len(image) > 1:\n            shared.log.warning(f'Save: images={image} multiple images provided only the first one will be saved')\n        image = image[0]\n    if not check_grid_size([image]):\n        return None, None, None\n    if path is None or path == '': # set default path to avoid errors when functions are triggered manually or via api and param is not set\n        path = paths.resolve_output_path(shared.opts.outdir_samples, shared.opts.outdir_save)\n    namegen = FilenameGenerator(p, seed, prompt, image, grid=grid)\n    suffix = suffix if suffix is not None else ''\n    basename = '' if basename is None else basename\n    if save_to_dirs is not None and isinstance(save_to_dirs, str) and len(save_to_dirs) > 0:\n        dirname = save_to_dirs\n        path = os.path.join(path, dirname)\n    elif shared.opts.save_to_dirs:\n        dirname = namegen.apply(shared.opts.directories_filename_pattern or \"[prompt_words]\")\n        path = os.path.join(path, dirname)\n    if forced_filename is None:\n        if shared.opts.samples_filename_pattern and len(shared.opts.samples_filename_pattern) > 0:\n            file_decoration = shared.opts.samples_filename_pattern\n        else:\n            file_decoration = \"[seq]-[prompt_words]\"\n        file_decoration = namegen.apply(file_decoration)\n        file_decoration += suffix\n        if file_decoration.startswith(basename):\n            basename = ''\n        filename = os.path.join(path, f\"{file_decoration}.{extension}\") if basename == '' else os.path.join(path, f\"{basename}-{file_decoration}.{extension}\")\n    else:\n        forced_filename += suffix\n        if forced_filename.startswith(basename):\n            basename = ''\n        filename = os.path.join(path, f\"{forced_filename}.{extension}\") if basename == '' else os.path.join(path, f\"{basename}-{forced_filename}.{extension}\")\n    pnginfo = existing_info or {}\n    if info is None:\n        info = image.info.get(pnginfo_section_name, '')\n    if info is not None:\n        pnginfo[pnginfo_section_name] = info\n\n    wm_text = getattr(p, 'watermark_text', shared.opts.image_watermark)\n    wm_image = getattr(p, 'watermark_image', shared.opts.image_watermark_image)\n    image = set_watermark(image, wm_text, wm_image)\n\n    params = script_callbacks.ImageSaveParams(image, p, filename, pnginfo)\n    params.filename = namegen.sanitize(filename)\n    dirname = os.path.dirname(params.filename)\n    if dirname is not None and len(dirname) > 0:\n        os.makedirs(dirname, exist_ok=True)\n    params.filename = namegen.sequence(params.filename)\n    params.filename = namegen.sanitize(params.filename)\n    # callbacks\n    script_callbacks.before_image_saved_callback(params)\n    exifinfo = params.pnginfo.get('UserComment', '')\n    exifinfo = exifinfo + ', ' if len(exifinfo) > 0 else ''\n    exifinfo += params.pnginfo.get(pnginfo_section_name, '')\n    filename, extension = os.path.splitext(params.filename)\n    filename_txt = f\"{filename}.txt\" if shared.opts.save_txt and len(exifinfo) > 0 else None\n    save_queue.put((params.image, filename, extension, params, exifinfo, filename_txt, grid)) # actual save is executed in a thread that polls data from queue\n    save_queue.join()\n    if not hasattr(params.image, 'already_saved_as'):\n        debug(f'Image marked: \"{params.filename}\"')\n        params.image.already_saved_as = params.filename\n    script_callbacks.image_saved_callback(params)\n    return params.filename, filename_txt, exifinfo\n\n\ndef safe_decode_string(s: bytes):\n    remove_prefix = lambda text, prefix: text[len(prefix):] if text.startswith(prefix) else text # pylint: disable=unnecessary-lambda-assignment\n    for encoding in ['utf_16_be', 'utf-8', 'utf-16', 'ascii', 'latin_1', 'cp1252', 'cp437']: # try different encodings\n        try:\n            s = remove_prefix(s, b'UNICODE')\n            s = remove_prefix(s, b'ASCII')\n            s = remove_prefix(s, b'\\x00')\n            val = s.decode(encoding, errors=\"strict\")\n            val = re.sub(r'[\\x00-\\x09]', '', val).strip() # remove remaining special characters\n            if len(val) == 0: # remove empty strings\n                val = None\n            return val\n        except Exception:\n            pass\n    return None\n\n\ndef parse_comfy_metadata(data: dict):\n    def parse_workflow():\n        res = ''\n        try:\n            txt = data.get('workflow', {})\n            dct = json.loads(txt)\n            nodes = len(dct.get('nodes', []))\n            version = dct.get('extra', {}).get('frontendVersion', 'unknown')\n            if version is not None:\n                res = f\" | Version: {version} | Nodes: {nodes}\"\n        except Exception:\n            pass\n        return res\n\n    def parse_prompt():\n        res = ''\n        try:\n            txt = data.get('prompt', {})\n            dct = json.loads(txt)\n            for val in dct.values():\n                inp = val.get('inputs', {})\n                if 'model' in inp:\n                    model = inp.get('model', None)\n                    if isinstance(model, str) and len(model) > 0:\n                        res += f\" | Model: {model} | Class: {val.get('class_type', '')}\"\n        except Exception:\n            pass\n        return res\n\n    workflow = parse_workflow()\n    prompt = parse_prompt()\n    if len(workflow) > 0 or len(prompt) > 0:\n        parsed = f'App: ComfyUI{workflow}{prompt}'\n        shared.log.info(f'Image metadata: {parsed}')\n        return parsed\n    return ''\n\n\ndef parse_invoke_metadata(data: dict):\n    def parse_metadtaa():\n        res = ''\n        try:\n            txt = data.get('invokeai_metadata', {})\n            dct = json.loads(txt)\n            if 'app_version' in dct:\n                version = dct['app_version']\n                if isinstance(version, str) and len(version) > 0:\n                    res += f\" | Version: {version}\"\n        except Exception:\n            pass\n        return res\n\n    metadata = parse_metadtaa()\n    if len(metadata) > 0:\n        parsed = f'App: InvokeAI{metadata}'\n        shared.log.info(f'Image metadata: {parsed}')\n        return parsed\n    return ''\n\n\ndef parse_novelai_metadata(data: dict):\n    geninfo = ''\n    if data.get(\"Software\", None) == \"NovelAI\":\n        try:\n            dct = json.loads(data[\"Comment\"])\n            sampler = sd_samplers.samplers_map.get(dct[\"sampler\"], \"Euler a\")\n            geninfo = f'{data[\"Description\"]} Negative prompt: {dct[\"uc\"]} Steps: {dct[\"steps\"]}, Sampler: {sampler}, CFG scale: {dct[\"scale\"]}, Seed: {dct[\"seed\"]}, Clip skip: 2, ENSD: 31337'\n        except Exception:\n            pass\n    return geninfo\n\n\ndef read_info_from_image(image: Image.Image, watermark: bool = False) -> tuple[str, dict]:\n    if image is None:\n        return '', {}\n    if isinstance(image, str):\n        try:\n            image = Image.open(image)\n            image.load()\n        except Exception:\n            return '', {}\n    items = image.info or {}\n    geninfo = items.pop('parameters', None) or items.pop('UserComment', None) or ''\n    if isinstance(geninfo, dict):\n        if 'UserComment' in geninfo:\n            geninfo = geninfo['UserComment'] # Info was nested\n        else:\n            geninfo = '' # Unknown format. Ignore contents\n        items['UserComment'] = geninfo\n\n    if \"exif\" in items:\n        try:\n            exif = piexif.load(items[\"exif\"])\n        except Exception as e:\n            shared.log.error(f'Error loading EXIF data: {e}')\n            exif = {}\n        for _key, subkey in exif.items():\n            if isinstance(subkey, dict):\n                for key, val in subkey.items():\n                    if isinstance(val, bytes): # decode bytestring\n                        val = safe_decode_string(val)\n                    if isinstance(val, tuple) and isinstance(val[0], int) and isinstance(val[1], int) and val[1] > 0: # convert camera ratios\n                        val = round(val[0] / val[1], 2)\n                    if val is not None and key in ExifTags.TAGS: # add known tags\n                        if ExifTags.TAGS[key] == 'UserComment': # add geninfo from UserComment\n                            geninfo = str(val)\n                            items['parameters'] = val\n                        else:\n                            items[ExifTags.TAGS[key]] = val\n                    elif val is not None and key in ExifTags.GPSTAGS:\n                        items[ExifTags.GPSTAGS[key]] = val\n    if watermark:\n        wm = get_watermark(image)\n        if wm != '':\n            # geninfo += f' Watermark: {wm}'\n            items['watermark'] = wm\n\n    for key, val in items.items():\n        if isinstance(val, bytes): # decode bytestring\n            items[key] = safe_decode_string(val)\n\n    geninfo += parse_comfy_metadata(items)\n    geninfo += parse_invoke_metadata(items)\n    geninfo += parse_novelai_metadata(items)\n\n    for key in ['exif', 'ExifOffset', 'JpegIFOffset', 'JpegIFByteCount', 'ExifVersion', 'icc_profile', 'jfif', 'jfif_version', 'jfif_unit', 'jfif_density', 'adobe', 'photoshop', 'loop', 'duration', 'dpi']: # remove unwanted tags\n        items.pop(key, None)\n\n    try:\n        items['width'] = image.width\n        items['height'] = image.height\n        items['mode'] = image.mode\n    except Exception:\n        pass\n\n    return geninfo, items\n\n\ndef image_data(data):\n    import gradio as gr\n    if data is None:\n        return gr.update(), None\n    err1 = None\n    err2 = None\n    try:\n        image = Image.open(io.BytesIO(data))\n        image.load()\n        info, _ = read_info_from_image(image)\n        errors.log.debug(f'Decoded object: image={image} metadata={info}')\n        return info, None\n    except Exception as e:\n        err1 = e\n    try:\n        if len(data) > 1024 * 10:\n            errors.log.warning(f'Error decoding object: data too long: {len(data)}')\n            return gr.update(), None\n        info = data.decode('utf8')\n        errors.log.debug(f'Decoded object: data={len(data)} metadata={info}')\n        return info, None\n    except Exception as e:\n        err2 = e\n    errors.log.error(f'Error decoding object: {err1 or err2}')\n    return gr.update(), None\n\n\ndef flatten(img, bgcolor):\n    \"\"\"replaces transparency with bgcolor (example: \"#ffffff\"), returning an RGB mode image with no transparency\"\"\"\n    if img.mode == \"RGBA\":\n        background = Image.new('RGBA', img.size, bgcolor)\n        background.paste(img, mask=img)\n        img = background\n    return img.convert('RGB')\n\n\ndef draw_overlay(im, text: str = '', y_offset: int = 0):\n    d = ImageDraw.Draw(im)\n    fontsize = (im.width + im.height) // 50\n    font = get_font(fontsize)\n    d.text((fontsize//2, fontsize//2 + y_offset), text, font=font, fill=shared.opts.font_color)\n    return im\n\n\ndef set_watermark(image, wm_text: str | None = None, wm_image: Image.Image | None = None):\n    if shared.opts.image_watermark_position != 'none' and wm_image is not None: # visible watermark\n        if isinstance(wm_image, str):\n            try:\n                wm_image = Image.open(wm_image)\n            except Exception as e:\n                shared.log.warning(f'Set image watermark: image={wm_image} {e}')\n                return image\n        if isinstance(wm_image, Image.Image):\n            if wm_image.mode != 'RGBA':\n                wm_image = wm_image.convert('RGBA')\n        if shared.opts.image_watermark_position == 'top/left':\n            position = (0, 0)\n        elif shared.opts.image_watermark_position == 'top/right':\n            position = (image.width - wm_image.width, 0)\n        elif shared.opts.image_watermark_position == 'bottom/left':\n            position = (0, image.height - wm_image.height)\n        elif shared.opts.image_watermark_position == 'bottom/right':\n            position = (image.width - wm_image.width, image.height - wm_image.height)\n        elif shared.opts.image_watermark_position == 'center':\n            position = ((image.width - wm_image.width) // 2, (image.height - wm_image.height) // 2)\n        else:\n            position = (random.randint(0, image.width - wm_image.width), random.randint(0, image.height - wm_image.height))\n        try:\n            for x in range(wm_image.width):\n                for y in range(wm_image.height):\n                    rgba = wm_image.getpixel((x, y))\n                    orig = image.getpixel((x+position[0], y+position[1]))\n                    # alpha blend\n                    a = rgba[3] / 255\n                    r = int(rgba[0] * a + orig[0] * (1 - a))\n                    g = int(rgba[1] * a + orig[1] * (1 - a))\n                    b = int(rgba[2] * a + orig[2] * (1 - a))\n                    if not a == 0:\n                        image.putpixel((x+position[0], y+position[1]), (r, g, b))\n            shared.log.debug(f'Set image watermark: image={wm_image} position={position}')\n        except Exception as e:\n            shared.log.warning(f'Set image watermark: image={wm_image} {e}')\n\n    if shared.opts.image_watermark_enabled and wm_text is not None: # invisible watermark\n        from imwatermark import WatermarkEncoder\n        wm_type = 'bytes'\n        wm_method = 'dwtDctSvd'\n        wm_length = 32\n        length = wm_length // 8\n        info = image.info\n        data = np.asarray(image)\n        encoder = WatermarkEncoder()\n        text = f\"{wm_text:<{length}}\"[:length]\n        bytearr = text.encode(encoding='ascii', errors='ignore')\n        try:\n            encoder.set_watermark(wm_type, bytearr)\n            encoded = encoder.encode(data, wm_method)\n            image = Image.fromarray(encoded)\n            image.info = info\n            shared.log.debug(f'Set invisible watermark: {wm_text} method={wm_method} bits={wm_length}')\n        except Exception as e:\n            shared.log.warning(f'Set invisible watermark error: {wm_text} method={wm_method} bits={wm_length} {e}')\n\n    return image\n\n\ndef get_watermark(image):\n    from imwatermark import WatermarkDecoder\n    wm_type = 'bytes'\n    wm_method = 'dwtDctSvd'\n    wm_length = 32\n    data = np.asarray(image)\n    decoder = WatermarkDecoder(wm_type, wm_length)\n    try:\n        decoded = decoder.decode(data, wm_method)\n        wm = decoded.decode(encoding='ascii', errors='ignore')\n    except Exception:\n        wm = ''\n    return wm\n"
  },
  {
    "path": "modules/images_grid.py",
    "content": "import math\nfrom collections import namedtuple\nimport numpy as np\nfrom PIL import Image, ImageFont, ImageDraw\nfrom modules import shared, script_callbacks\n\n\nGrid = namedtuple(\"Grid\", [\"tiles\", \"tile_w\", \"tile_h\", \"image_w\", \"image_h\", \"overlap\"])\n\n\ndef check_grid_size(imgs):\n    if imgs is None or len(imgs) == 0:\n        return False\n    mp = 0\n    for img in imgs:\n        if isinstance(img, list):\n            for im in img:\n                mp += im.width * im.height if im is not None else 0\n        else:\n            mp += img.width * img.height if img is not None else 0\n    mp = round(mp / 1000000)\n    ok = mp <= shared.opts.img_max_size_mp\n    if not ok:\n        shared.log.warning(f'Maximum image size exceded: size={mp} maximum={shared.opts.img_max_size_mp} MPixels')\n    return ok\n\n\ndef get_grid_size(imgs, batch_size=1, rows=None, cols=None):\n    if rows and rows > len(imgs):\n        rows = len(imgs)\n    if cols and cols > len(imgs):\n        cols = len(imgs)\n    if rows is None and cols is None:\n        if shared.opts.n_rows > 0:\n            rows = shared.opts.n_rows\n            cols = math.ceil(len(imgs) / rows)\n        elif shared.opts.n_rows == 0:\n            rows = batch_size\n            cols = math.ceil(len(imgs) / rows)\n        elif shared.opts.n_cols > 0:\n            cols = shared.opts.n_cols\n            rows = math.ceil(len(imgs) / cols)\n        elif shared.opts.n_cols == 0:\n            cols = batch_size\n            rows = math.ceil(len(imgs) / cols)\n        else:\n            rows = math.floor(math.sqrt(len(imgs)))\n            while len(imgs) % rows != 0:\n                rows -= 1\n            cols = math.ceil(len(imgs) / rows)\n    elif cols is None:\n        cols = math.ceil(len(imgs) / rows)\n    elif rows is None:\n        rows = math.ceil(len(imgs) / cols)\n    else:\n        pass\n    return rows, cols\n\n\ndef image_grid(imgs, batch_size:int=1, rows:int=None, cols:int=None):\n    rows, cols = get_grid_size(imgs, batch_size, rows=rows, cols=cols)\n    params = script_callbacks.ImageGridLoopParams(imgs, cols, rows)\n    script_callbacks.image_grid_callback(params)\n    imgs = [i for i in imgs if i is not None] if imgs is not None else []\n    if len(imgs) == 0:\n        return None\n    w, h = max(i.width for i in imgs if i is not None), max(i.height for i in imgs if i is not None)\n    grid = Image.new('RGB', size=(params.cols * w, params.rows * h), color=shared.opts.grid_background)\n    for i, img in enumerate(params.imgs):\n        if img is not None:\n            grid.paste(img, box=(i % params.cols * w, i // params.cols * h))\n    return grid\n\n\ndef split_grid(image, tile_w=512, tile_h=512, overlap=64):\n    w = image.width\n    h = image.height\n    non_overlap_width = tile_w - overlap\n    non_overlap_height = tile_h - overlap\n    cols = math.ceil((w - overlap) / non_overlap_width)\n    rows = math.ceil((h - overlap) / non_overlap_height)\n    dx = (w - tile_w) / (cols - 1) if cols > 1 else 0\n    dy = (h - tile_h) / (rows - 1) if rows > 1 else 0\n    grid = Grid([], tile_w, tile_h, w, h, overlap)\n    for row in range(rows):\n        row_images = []\n        y = int(row * dy)\n        if y + tile_h >= h:\n            y = h - tile_h\n        for col in range(cols):\n            x = int(col * dx)\n            if x + tile_w >= w:\n                x = w - tile_w\n            tile = image.crop((x, y, x + tile_w, y + tile_h))\n            row_images.append([x, tile_w, tile])\n        grid.tiles.append([y, tile_h, row_images])\n    return grid\n\n\ndef combine_grid(grid):\n    def make_mask_image(r):\n        r = r * 255 / grid.overlap\n        r = r.astype(np.uint8)\n        return Image.fromarray(r, 'L')\n\n    mask_w = make_mask_image(np.arange(grid.overlap, dtype=np.float32).reshape((1, grid.overlap)).repeat(grid.tile_h, axis=0))\n    mask_h = make_mask_image(np.arange(grid.overlap, dtype=np.float32).reshape((grid.overlap, 1)).repeat(grid.image_w, axis=1))\n    combined_image = Image.new(\"RGB\", (grid.image_w, grid.image_h))\n    for y, h, row in grid.tiles:\n        combined_row = Image.new(\"RGB\", (grid.image_w, h))\n        for x, w, tile in row:\n            if x == 0:\n                combined_row.paste(tile, (0, 0))\n                continue\n            combined_row.paste(tile.crop((0, 0, grid.overlap, h)), (x, 0), mask=mask_w)\n            combined_row.paste(tile.crop((grid.overlap, 0, w, h)), (x + grid.overlap, 0))\n        if y == 0:\n            combined_image.paste(combined_row, (0, 0))\n            continue\n        combined_image.paste(combined_row.crop((0, 0, combined_row.width, grid.overlap)), (0, y), mask=mask_h)\n        combined_image.paste(combined_row.crop((0, grid.overlap, combined_row.width, h)), (0, y + grid.overlap))\n    return combined_image\n\n\nclass GridAnnotation:\n    def __init__(self, text='', is_active=True):\n        self.text = str(text)\n        self.is_active = is_active\n        self.size = None\n\n\ndef get_font(fontsize):\n    try:\n        return ImageFont.truetype(shared.opts.font or \"javascript/notosans-nerdfont-regular.ttf\", fontsize)\n    except Exception:\n        return ImageFont.truetype(\"javascript/notosans-nerdfont-regular.ttf\", fontsize)\n\n\ndef draw_grid_annotations(im, width, height, x_texts, y_texts, margin=0, title=None):\n    def wrap(drawing, text, font, line_length):\n        lines = ['']\n        for word in text.split():\n            line = f'{lines[-1]} {word}'.strip()\n            if drawing.textlength(line, font=font) <= line_length:\n                lines[-1] = line\n            else:\n                lines.append(word)\n        return lines\n\n    def draw_texts(drawing: ImageDraw, draw_x, draw_y, lines, initial_fnt, initial_fontsize):\n        for line in lines:\n            font = initial_fnt\n            fontsize = initial_fontsize\n            while drawing.multiline_textbbox((0,0), text=line.text, font=font)[2] > line.allowed_width and fontsize > 0:\n                fontsize -= 1\n                font = get_font(fontsize)\n            drawing.multiline_text((draw_x, draw_y + line.size[1] / 2), line.text, font=font, fill=shared.opts.font_color if line.is_active else color_inactive, anchor=\"mm\", align=\"center\")\n            if not line.is_active:\n                drawing.line((draw_x - line.size[0] // 2, draw_y + line.size[1] // 2, draw_x + line.size[0] // 2, draw_y + line.size[1] // 2), fill=color_inactive, width=4)\n            draw_y += line.size[1] + line_spacing\n\n    fontsize = (width + height) // 25\n    line_spacing = fontsize // 2\n    font = get_font(fontsize)\n    color_inactive = (127, 127, 127)\n    pad_left = 0 if sum([sum([len(line.text) for line in lines]) for lines in y_texts]) == 0 else width * 3 // 4\n    cols = len(x_texts)\n    rows = len(y_texts)\n    # assert cols == len(hor_texts), f'bad number of horizontal texts: {len(hor_texts)}; must be {cols}'\n    # assert rows == len(hor_texts), f'bad number of vertical texts: {len(ver_texts)}; must be {rows}'\n    calc_img = Image.new(\"RGB\", (1, 1), shared.opts.grid_background)\n    calc_d = ImageDraw.Draw(calc_img)\n    title_texts = [title] if title else [[GridAnnotation()]]\n    for texts, allowed_width in zip(x_texts + y_texts + title_texts, [width] * len(x_texts) + [pad_left] * len(y_texts) + [(width+margin)*cols]):\n        items = [] + texts\n        texts.clear()\n        for line in items:\n            wrapped = wrap(calc_d, line.text, font, allowed_width)\n            texts += [GridAnnotation(x, line.is_active) for x in wrapped]\n        for line in texts:\n            bbox = calc_d.multiline_textbbox((0, 0), line.text, font=font)\n            line.size = (bbox[2] - bbox[0], bbox[3] - bbox[1])\n            line.allowed_width = allowed_width\n    hor_text_heights = [sum([line.size[1] + line_spacing for line in lines]) - line_spacing for lines in x_texts]\n    ver_text_heights = [sum([line.size[1] + line_spacing for line in lines]) - line_spacing * len(lines) for lines in y_texts]\n    pad_top = 0 if sum(hor_text_heights) == 0 else max(hor_text_heights) + line_spacing * 2\n    title_pad = 0\n    if title:\n        title_text_heights = [sum([line.size[1] + line_spacing for line in lines]) - line_spacing for lines in title_texts] # pylint: disable=unsubscriptable-object\n        title_pad = 0 if sum(title_text_heights) == 0 else max(title_text_heights) + line_spacing * 2\n    result = Image.new(\"RGB\", (im.width + pad_left + margin * (cols-1), im.height + pad_top + title_pad + margin * (rows-1)), shared.opts.grid_background)\n    for row in range(rows):\n        for col in range(cols):\n            cell = im.crop((width * col, height * row, width * (col+1), height * (row+1)))\n            result.paste(cell, (pad_left + (width + margin) * col, pad_top + title_pad + (height + margin) * row))\n    d = ImageDraw.Draw(result)\n    if title:\n        x = pad_left + ((width+margin)*cols) / 2\n        y = title_pad / 2 - title_text_heights[0] / 2\n        draw_texts(d, x, y, title_texts[0], font, fontsize)\n    for col in range(cols):\n        x = pad_left + (width + margin) * col + width / 2\n        y = (pad_top / 2 - hor_text_heights[col] / 2) + title_pad\n        draw_texts(d, x, y, x_texts[col], font, fontsize)\n    for row in range(rows):\n        x = pad_left / 2\n        y = (pad_top + (height + margin) * row + height / 2 - ver_text_heights[row] / 2) + title_pad\n        draw_texts(d, x, y, y_texts[row], font, fontsize)\n    return result\n\n\ndef draw_prompt_matrix(im, width, height, all_prompts, margin=0):\n    prompts = all_prompts[1:]\n    boundary = math.ceil(len(prompts) / 2)\n    prompts_horiz = prompts[:boundary]\n    prompts_vert = prompts[boundary:]\n    hor_texts = [[GridAnnotation(x, is_active=pos & (1 << i) != 0) for i, x in enumerate(prompts_horiz)] for pos in range(1 << len(prompts_horiz))]\n    ver_texts = [[GridAnnotation(x, is_active=pos & (1 << i) != 0) for i, x in enumerate(prompts_vert)] for pos in range(1 << len(prompts_vert))]\n    return draw_grid_annotations(im, width, height, hor_texts, ver_texts, margin)\n"
  },
  {
    "path": "modules/images_namegen.py",
    "content": "import re\nimport os\nimport time\nimport unicodedata\nimport uuid\nimport string\nimport hashlib\nimport datetime\nfrom pathlib import Path\nfrom modules import shared, errors\n\n\ndebug= os.environ.get('SD_NAMEGEN_DEBUG', None) is not None\ndebug_log = errors.log.trace if debug else lambda *args, **kwargs: None\nre_nonletters = re.compile(r'[\\s' + string.punctuation + ']+')\nre_pattern = re.compile(r\"(.*?)(?:\\[([^\\[\\]]+)\\]|$)\")\nre_pattern_arg = re.compile(r\"(.*)<([^>]*)>$\")\nre_attention = re.compile(r'[\\(*\\[*](\\w+)(:\\d+(\\.\\d+))?[\\)*\\]*]|')\nre_network = re.compile(r'\\<\\w+:(\\w+)(:\\d+(\\.\\d+))?\\>|')\nre_brackets = re.compile(r'[\\([{})\\]]')\nre_leading_seq = re.compile(r'^(0*\\d+)(?=[-_.\\s]|$)')\nseq = 0\nNOTHING = object()\n\n\nclass FilenameGenerator:\n    replacements = {\n        'width': lambda self: self.width,\n        'height': lambda self: self.height,\n        'batch_number': lambda self: self.batch_number,\n        'iter_number': lambda self: self.iter_number,\n        'num': lambda self: NOTHING if self.p.n_iter == 1 and self.p.batch_size == 1 else self.p.iteration * self.p.batch_size + self.p.batch_index + 1,\n        'generation_number': lambda self: NOTHING if self.p.n_iter == 1 and self.p.batch_size == 1 else self.p.iteration * self.p.batch_size + self.p.batch_index + 1,\n        'date': lambda self: datetime.datetime.now().strftime('%Y-%m-%d'),\n        'datetime': lambda self, *args: self.datetime(*args),  # accepts formats: [datetime], [datetime<Format>], [datetime<Format><Time Zone>]\n        'hasprompt': lambda self, *args: self.hasprompt(*args),  # accepts formats:[hasprompt<prompt1|default><prompt2>..]\n        'hash': lambda self: self.image_hash() if self.image is not None else '',\n        'image_hash': lambda self: self.image_hash() if self.image is not None else '',\n        'timestamp': lambda self: getattr(self.p, \"job_timestamp\", shared.state.job_timestamp),\n        'epoch': lambda self: int(time.time()),\n        'job_timestamp': lambda self: getattr(self.p, \"job_timestamp\", shared.state.job_timestamp),\n\n        'model': lambda self: shared.sd_model.sd_checkpoint_info.title if shared.sd_loaded and getattr(shared.sd_model, 'sd_checkpoint_info', None) is not None else '',\n        'model_shortname': lambda self: shared.sd_model.sd_checkpoint_info.model_name if shared.sd_loaded and getattr(shared.sd_model, 'sd_checkpoint_info', None) is not None else '',\n        'model_name': lambda self: shared.sd_model.sd_checkpoint_info.model_name if shared.sd_loaded and getattr(shared.sd_model, 'sd_checkpoint_info', None) is not None else '',\n        'model_type': lambda self: shared.sd_model_type if shared.sd_loaded else '',\n        'model_hash': lambda self: shared.sd_model.sd_checkpoint_info.shorthash if shared.sd_loaded and getattr(shared.sd_model, 'sd_checkpoint_info', None) is not None else '',\n\n        'lora': lambda self: self.p and getattr(self.p, 'extra_generation_params', {}).get('LoRA networks', ''),\n\n        'prompt': lambda self: self.prompt_full(),\n        'prompt_no_styles': lambda self: self.prompt_no_style(),\n        'prompt_words': lambda self: self.prompt_words(),\n        'prompt_hash': lambda self: hashlib.sha256(self.prompt.encode()).hexdigest()[0:8],\n\n        'sampler': lambda self: self.p and self.p.sampler_name,\n        'seed': lambda self: (self.seed and str(self.seed)) or '',\n        'steps': lambda self: self.p and getattr(self.p, 'steps', 0),\n        'cfg': lambda self: self.p and getattr(self.p, 'cfg_scale', 0),\n        'pag': lambda self: self.p and getattr(self.p, 'pag_scale', 0),\n        'clip_skip': lambda self: self.p and getattr(self.p, 'clip_skip', 0),\n        'denoising': lambda self: self.p and getattr(self.p, 'denoising_strength', 0),\n        'styles': lambda self: (self.p and \", \".join([style for style in self.p.styles if not style == \"None\"])) or \"None\",\n        'uuid': lambda self: str(uuid.uuid4()),\n    }\n    default_time_format = '%Y%m%d%H%M%S'\n\n    def __init__(self, p, seed, prompt, image=None, grid=False, width=None, height=None):\n        if p is None:\n            debug_log('Filename generator init skip')\n        else:\n            debug_log(f'Filename generator init: seed={seed} prompt=\"{prompt}\"')\n        self.p = p\n        if seed is not None and int(seed) > 0:\n            self.seed = seed\n        elif p is not None and getattr(p, 'all_seeds', None) is not None and len(p.all_seeds) > 0:\n            self.seed = p.all_seeds[0] if p.all_seeds[0] is not None and int(p.all_seeds[0]) > 0 else 0\n        elif p is not None and getattr(p, 'seeds', None) is not None and len(p.seeds) > 0:\n            self.seed = p.seeds[0] if p.seeds[0] is not None and int(p.seeds[0]) > 0 else 0\n        else:\n            self.seed = p.seed if p is not None and getattr(p, 'seed', 0) > 0 else 0\n        if prompt is not None:\n            self.prompt = prompt\n        else:\n            self.prompt = p.prompt if p is not None and getattr(p, 'prompt', '') != '' else ''\n        if isinstance(self.prompt, list):\n            self.prompt = ' '.join(self.prompt)\n        self.image = image[0] if isinstance(image, list) and len(image) > 0 else image\n        self.width = width if width is not None else (self.image.width if self.image is not None else (p.width if p is not None else 0))\n        self.height = height if height is not None else (self.image.height if self.image is not None else (p.height if p is not None else 0))\n        if not grid:\n            self.batch_number = NOTHING if self.p is None or getattr(self.p, 'batch_size', 1) == 1 else (self.p.batch_index + 1 if hasattr(self.p, 'batch_index') else NOTHING)\n            self.iter_number = NOTHING if self.p is None or getattr(self.p, 'n_iter', 1) == 1 else (self.p.iteration + 1 if hasattr(self.p, 'iteration') else NOTHING)\n        else:\n            self.batch_number = NOTHING\n            self.iter_number = NOTHING\n\n    def hasprompt(self, *args):\n        lower = self.prompt.lower()\n        if getattr(self, 'p', None) is None or getattr(self, 'prompt', None) is None:\n            return None\n        outres = \"\"\n        for arg in args:\n            if arg != \"\":\n                division = arg.split(\"|\")\n                expected = division[0].lower()\n                default = division[1] if len(division) > 1 else \"\"\n                if lower.find(expected) >= 0:\n                    outres = f'{outres}{expected}'\n                else:\n                    outres = outres if default == \"\" else f'{outres}{default}'\n        return outres\n\n    def image_hash(self):\n        if getattr(self, 'image', None) is None:\n            return None\n        import base64\n        from io import BytesIO\n        buffered = BytesIO()\n        self.image.save(buffered, format=\"JPEG\")\n        img_str = base64.b64encode(buffered.getvalue())\n        shorthash = hashlib.sha256(img_str).hexdigest()[0:8]\n        return shorthash\n\n    def prompt_full(self):\n        return self.prompt_sanitize(self.prompt)\n\n    def prompt_words(self):\n        if getattr(self, 'prompt', None) is None:\n            return ''\n        no_attention = re_attention.sub(r'\\1', self.prompt)\n        no_network = re_network.sub(r'\\1', no_attention)\n        no_brackets = re_brackets.sub('', no_network)\n        words = [x for x in re_nonletters.split(no_brackets or \"\") if len(x) > 0]\n        prompt = \" \".join(words[0:shared.opts.directories_max_prompt_words])\n        return self.prompt_sanitize(prompt)\n\n    def prompt_no_style(self):\n        if getattr(self, 'p', None) is None or getattr(self, 'prompt', None) is None:\n            return None\n        prompt_no_style = self.prompt\n        for style in shared.prompt_styles.get_style_prompts(self.p.styles):\n            if len(style) > 0:\n                for part in style.split(\"{prompt}\"):\n                    prompt_no_style = prompt_no_style.replace(part, \"\").replace(\", ,\", \",\")\n                prompt_no_style = prompt_no_style.replace(style, \"\")\n        return self.prompt_sanitize(prompt_no_style)\n\n    def datetime(self, *args):\n        import pytz\n        time_datetime = datetime.datetime.now()\n        time_format = args[0] if len(args) > 0 and args[0] != \"\" else self.default_time_format\n        try:\n            time_zone = pytz.timezone(args[1]) if len(args) > 1 else None\n        except pytz.exceptions.UnknownTimeZoneError:\n            time_zone = None\n        time_zone_time = time_datetime.astimezone(time_zone)\n        try:\n            formatted_time = time_zone_time.strftime(time_format)\n        except (ValueError, TypeError):\n            formatted_time = time_zone_time.strftime(self.default_time_format)\n        return formatted_time\n\n    def prompt_sanitize(self, prompt):\n        invalid_chars = '#<>:\\'\"\\\\|?*\\n\\t\\r'\n        sanitized = prompt.translate({ ord(x): '_' for x in invalid_chars }).strip()\n        debug_log(f'Prompt sanitize: input=\"{prompt}\" output=\"{sanitized}\"')\n        return sanitized\n\n    def sanitize(self, filename):\n        # starting reference: <https://learn.microsoft.com/en-us/windows/win32/fileio/naming-a-file>\n        invalid_chars = (\n            \"#<>\\\"'`\"                         # ASCII quote and backtick\n            \"’‚‛\\u2018\\u2019\\u201B\"           # smart single quotes and variants # noqa: RUF001\n            \"\\u02BB\"                          # modifier letter turned comma\n            \"\\u201C\\u201D\\u201F\"              # smart double quotes and variants\n            \"|?*^%$\\u00A0\\u2013\\u2014\\n\\t\\r\"  # pipes, wildcards, percent, currency, NBSP, dashes, control chars\n        )\n        invalid_folder = ':'\n        invalid_files = ['CON', 'PRN', 'AUX', 'NUL', 'NULL', 'COM0', 'COM1', 'LPT0', 'LPT1']\n        invalid_prefix = ', '\n        invalid_suffix = '.,_ '\n        fn, ext = os.path.splitext(unicodedata.normalize('NFKC', filename))\n        fn = fn.strip()\n        ext = ext.strip()\n        parts = Path(fn).parts\n        newparts = []\n        # for ch in filename:\n        #     print(repr(ch), hex(ord(ch)), unicodedata.name(ch, 'UNKNOWN'), ch in invalid_chars)\n        for i, part in enumerate(parts):\n            part = part.translate({ ord(x): '_' for x in invalid_chars })\n            if i > 0 or (len(part) >= 2 and part[1] != invalid_folder): # skip drive, otherwise remove\n                part = part.translate({ ord(x): '_' for x in invalid_folder })\n            part = part.lstrip(invalid_prefix).rstrip(invalid_suffix)\n            if part in invalid_files: # reserved names\n                [part := part.replace(word, '_') for word in invalid_files] # pylint: disable=expression-not-assigned\n            newparts.append(part)\n        fn = str(Path(*newparts))\n        fn = fn.replace('  ', ' ').strip()\n        max_length = max(256 - len(ext), os.statvfs(__file__).f_namemax - 32 if hasattr(os, 'statvfs') else 256 - len(ext))\n        while len(os.path.abspath(fn)) > max_length:\n            fn = fn[:-1]\n        fn += ext\n        debug_log(f'Filename sanitize: input=\"{filename}\" parts={parts} output=\"{fn}\" ext={ext} max={max_length} len={len(fn)}')\n        return fn\n\n    def safe_int(self, s):\n        try:\n            return int(s)\n        except (ValueError, TypeError):\n            return 0\n\n    def sequence(self, fn):\n        global seq # pylint: disable=global-statement\n        x = fn\n        dirname = os.path.dirname(fn)\n        if seq == 0:\n            files = os.listdir(dirname) if os.path.exists(dirname) and os.path.isdir(dirname) else []\n            files = [f for f in files if os.path.isfile(os.path.join(dirname, f))]\n            seq_files = len(files)\n            seq_nums = [re_leading_seq.match(f) for f in files]\n            seq_nums = [self.safe_int(m.group(1)) for m in seq_nums if m is not None]\n            seq_num = max(seq_nums) if len(seq_nums) > 0 else 0\n            seq = max(seq_files, seq_num)\n        if shared.opts.save_images_add_number or '[seq]' in fn:\n            if '[seq]' not in fn:\n                fn = os.path.join(os.path.dirname(fn), f\"[seq]-{os.path.basename(fn)}\")\n            for _i in range(99999): # 99999/000001\n                seq += 1\n                dst = fn.replace('[seq]', f'{seq:05}')\n                if not os.path.exists(dst):\n                    x = dst\n                    break\n        return x\n\n    def apply(self, x):\n        res = ''\n        if debug:\n            for k in self.replacements.keys():\n                try:\n                    fn = self.replacements.get(k, None)\n                    debug_log(f'Namegen: key={k} value={fn(self)}')\n                except Exception as e:\n                    shared.log.error(f'Namegen: key={k} {e}')\n                    errors.display(e, 'namegen')\n        for m in re_pattern.finditer(x):\n            text, pattern = m.groups()\n            debug_log(f'Filename apply: text=\"{text}\" pattern=\"{pattern}\"')\n            if isinstance(pattern, list):\n                pattern = ' '.join(pattern)\n            if pattern is None or not isinstance(pattern, str) or pattern.strip() == '':\n                debug_log(f'Filename skip: pattern=\"{pattern}\"')\n                res += text\n                continue\n\n            _pattern = pattern\n            pattern_args = []\n            while True:\n                m = re_pattern_arg.match(_pattern)\n                if m is None:\n                    break\n                _pattern, arg = m.groups()\n                pattern_args.insert(0, arg)\n\n            fun = self.replacements.get(pattern.lower(), None)\n            if fun is not None:\n                try:\n                    replacement = fun(self, *pattern_args)\n                    debug_log(f'Filename apply: pattern=\"{pattern}\" args={pattern_args} replacement=\"{replacement}\"')\n                except Exception as e:\n                    replacement = None\n                    errors.display(e, 'namegen')\n                    shared.log.error(f'Filename apply pattern: {x} {e}')\n                if replacement == NOTHING:\n                    continue\n                if replacement is not None:\n                    res += text + str(replacement).replace('/', '-').replace('\\\\', '-')\n                    continue\n            else:\n                res += text + f'[{pattern}]' # reinsert unknown pattern\n        return res\n\n\ndef get_next_sequence_number(path, basename): # pylint: disable=unused-argument\n    global seq # pylint: disable=global-statement\n    seq += 1\n    return seq # unused\n"
  },
  {
    "path": "modules/images_resize.py",
    "content": "from typing import Union\nimport sys\nimport time\nimport numpy as np\nimport torch\nfrom PIL import Image\nfrom modules import shared, upscaler\n\n\ndef resize_image(resize_mode: int, im: Union[Image.Image, torch.Tensor], width: int, height: int, upscaler_name: str=None, output_type: str='image', context: str=None):\n    upscaler_name = upscaler_name or shared.opts.upscaler_for_img2img\n\n    def verify_image(image):\n        try:\n            if isinstance(image, torch.Tensor):\n                image = image.float().detach().cpu().numpy()\n            if isinstance(image, np.ndarray):\n                if np.issubdtype(image.dtype, np.floating):\n                    image = (255.0 * image).astype(np.uint8)\n                image = Image.fromarray(image)\n        except Exception as e:\n            shared.log.error(f\"Image verification failed: {e}\")\n        return image\n\n    def latent(im, scale: float, selected_upscaler: upscaler.UpscalerData):\n        if isinstance(im, torch.Tensor):\n            im = selected_upscaler.scaler.upscale(im, scale, selected_upscaler.name)\n            return im\n        else:\n            from modules.processing_vae import vae_encode, vae_decode\n            latents = vae_encode(im, shared.sd_model, vae_type='Tiny') # TODO resize image: enable full VAE mode for resize-latent\n            latents = selected_upscaler.scaler.upscale(latents, scale, selected_upscaler.name)\n            im = vae_decode(latents, shared.sd_model, output_type='pil', vae_type='Tiny')[0]\n            return im\n\n    def resize(im: Union[Image.Image, torch.Tensor], w, h):\n        w, h = int(w), int(h)\n        if upscaler_name is None or upscaler_name == \"None\" or (hasattr(im, 'mode') and im.mode == 'L'):\n            return im.resize((w, h), resample=Image.Resampling.LANCZOS) # force for mask\n        if isinstance(im, torch.Tensor):\n            scale = max(w // 8 / im.shape[-1] , h // 8 / im.shape[-2])\n        else:\n            scale = max(w / im.width, h / im.height)\n        if scale > 1.0:\n            upscalers = [x for x in shared.sd_upscalers if x.name.lower().replace('-', ' ') == upscaler_name.lower().replace('-', ' ')]\n            if len(upscalers) > 0:\n                selected_upscaler: upscaler.UpscalerData = upscalers[0]\n                if selected_upscaler.name.lower().startswith('latent'):\n                    im = latent(im, scale, selected_upscaler)\n                else:\n                    im = selected_upscaler.scaler.upscale(im, scale, selected_upscaler.name)\n            else:\n                shared.log.warning(f\"Resize upscaler: invalid={upscaler_name} fallback={selected_upscaler.name}\")\n                shared.log.debug(f\"Resize upscaler: available={[u.name for u in shared.sd_upscalers]}\")\n        if isinstance(im, Image.Image) and (im.width != w or im.height != h): # probably downsample after upscaler created larger image\n            im = im.resize((w, h), resample=Image.Resampling.LANCZOS)\n        return im\n\n    def crop(im: Image.Image):\n        ratio = width / height\n        src_ratio = im.width / im.height\n        src_w = width if ratio > src_ratio else im.width * height // im.height\n        src_h = height if ratio <= src_ratio else im.height * width // im.width\n        resized = resize(im, src_w, src_h)\n        res = Image.new(im.mode, (width, height))\n        res.paste(resized, box=(width // 2 - src_w // 2, height // 2 - src_h // 2))\n        return res\n\n    def fill(im: Image.Image, color=None):\n        color = color or shared.opts.image_background\n        \"\"\"\n        ratio = round(width / height, 1)\n        src_ratio = round(im.width / im.height, 1)\n        src_w = width if ratio < src_ratio else im.width * height // im.height\n        src_h = height if ratio >= src_ratio else im.height * width // im.width\n        resized = resize(im, src_w, src_h)\n        res = Image.new(im.mode, (width, height))\n        res.paste(resized, box=(width // 2 - src_w // 2, height // 2 - src_h // 2))\n        if ratio < src_ratio:\n            fill_height = height // 2 - src_h // 2\n            if width > 0 and fill_height > 0:\n                res.paste(resized.resize((width, fill_height), box=(0, 0, width, 0)), box=(0, 0))\n                res.paste(resized.resize((width, fill_height), box=(0, resized.height, width, resized.height)), box=(0, fill_height + src_h))\n        elif ratio > src_ratio:\n            fill_width = width // 2 - src_w // 2\n            if height > 0 and fill_width > 0:\n                res.paste(resized.resize((fill_width, height), box=(0, 0, 0, height)), box=(0, 0))\n                res.paste(resized.resize((fill_width, height), box=(resized.width, 0, resized.width, height)), box=(fill_width + src_w, 0))\n        return res\n        \"\"\"\n        ratio = min(width / im.width, height / im.height)\n        im = resize(im, int(im.width * ratio), int(im.height * ratio))\n        res = Image.new(im.mode, (width, height), color=color)\n        res.paste(im, box=((width - im.width)//2, (height - im.height)//2))\n        return res\n\n    def context_aware(im: Image.Image, width, height, context):\n        from installer import install\n        install('seam-carving')\n        width, height = int(width), int(height)\n        import seam_carving # https://github.com/li-plus/seam-carving\n        if 'forward' in context.lower():\n            energy_mode = \"forward\"\n        elif 'backward' in context.lower():\n            energy_mode = \"backward\"\n        else:\n            return im\n        if 'add' in context.lower():\n            src_ratio = min(width / im.width, height / im.height)\n            src_w = int(im.width * src_ratio)\n            src_h = int(im.height * src_ratio)\n            src_image = resize(im, src_w, src_h)\n        elif 'remove' in context.lower():\n            ratio = width / height\n            src_ratio = im.width / im.height\n            src_w = width if ratio > src_ratio else im.width * height // im.height\n            src_h = height if ratio <= src_ratio else im.height * width // im.width\n            src_image = resize(im, src_w, src_h)\n        else:\n            return im\n        np_image = seam_carving.resize(\n            src_image, # source image (rgb or gray)\n            size=(width, height),  # target size\n            energy_mode=energy_mode,  # choose from {backward, forward}\n            order=\"width-first\",  # choose from {width-first, height-first}\n            keep_mask=None,  # object mask to protect from removal\n        )\n        res = Image.fromarray(np_image)\n        return res\n\n    t0 = time.time()\n    if resize_mode is None:\n        resize_mode = 0\n    if isinstance(im, torch.Tensor): # latent resize only supports fixed mode\n        res = resize(im, width, height)\n        return res\n    im = verify_image(im)\n    if not isinstance(im, Image.Image):\n        shared.log.error(f'Image resize: image={type(im)} invalid type')\n        return im\n    if (resize_mode == 0) or ((im.width == width) and (im.height == height)) or (width == 0 and height == 0): # none\n        res = im.copy()\n    elif resize_mode == 1: # fixed\n        res = resize(im, width, height)\n    elif resize_mode == 2: # crop\n        res = crop(im)\n    elif resize_mode == 3: # fill\n        res = fill(im)\n    elif resize_mode == 4: # edge\n        from modules import masking\n        res = fill(im, color=0)\n        res, _mask = masking.outpaint(res)\n    elif resize_mode == 5: # context-aware\n        res = context_aware(im, width, height, context)\n    else:\n        res = im.copy()\n        shared.log.error(f'Invalid resize mode: {resize_mode}')\n    t1 = time.time()\n    fn = f'{sys._getframe(2).f_code.co_name}:{sys._getframe(1).f_code.co_name}' # pylint: disable=protected-access\n    if im.width != width or im.height != height:\n        shared.log.debug(f'Image resize: source={im.width}:{im.height} target={width}:{height} mode=\"{shared.resize_modes[resize_mode]}\" upscaler=\"{upscaler_name}\" type={output_type} time={t1-t0:.2f} fn={fn}') # pylint: disable=protected-access\n    return np.array(res) if output_type == 'np' else res\n"
  },
  {
    "path": "modules/img2img.py",
    "content": "import os\nimport itertools # SBM Batch frames\nimport numpy as np\nimport filetype\nfrom PIL import Image, ImageOps, ImageFilter, ImageEnhance, ImageChops, UnidentifiedImageError\nfrom modules import scripts_manager, shared, processing, images, errors\nfrom modules.generation_parameters_copypaste import create_override_settings_dict\nfrom modules.ui_common import plaintext_to_html\nfrom modules.memstats import memory_stats\nfrom modules.paths import resolve_output_path\n\n\ndebug = shared.log.trace if os.environ.get('SD_PROCESS_DEBUG', None) is not None else lambda *args, **kwargs: None\ndebug('Trace: PROCESS')\n\n\ndef validate_inputs(inputs):\n    outputs = []\n    for image in inputs:\n        if filetype.is_image(image):\n            outputs.append(image)\n        else:\n            shared.log.warning(f'Input skip: file=\"{image}\" filetype={filetype.guess(image)}')\n    return outputs\n\n\ndef process_batch(p, input_files, input_dir, output_dir, inpaint_mask_dir, args):\n    # shared.log.debug(f'batch: {input_files}|{input_dir}|{output_dir}|{inpaint_mask_dir}')\n    processing.fix_seed(p)\n    image_files = []\n    if input_files is not None and len(input_files) > 0:\n        image_files = [f.name for f in input_files]\n        image_files = validate_inputs(image_files)\n        shared.log.info(f'Process batch: input images={len(image_files)}')\n    elif os.path.isdir(input_dir):\n        image_files = [os.path.join(input_dir, f) for f in os.listdir(input_dir)]\n        image_files = validate_inputs(image_files)\n        shared.log.info(f'Process batch: input folder=\"{input_dir}\" images={len(image_files)}')\n    is_inpaint_batch = False\n    if inpaint_mask_dir and os.path.isdir(inpaint_mask_dir):\n        inpaint_masks = [os.path.join(inpaint_mask_dir, f) for f in os.listdir(inpaint_mask_dir)]\n        inpaint_masks = validate_inputs(inpaint_masks)\n        is_inpaint_batch = len(inpaint_masks) > 0\n        shared.log.info(f'Process batch: mask folder=\"{input_dir}\" images={len(inpaint_masks)}')\n    p.do_not_save_grid = True\n    p.do_not_save_samples = True\n    p.default_prompt = p.prompt\n    if p.n_iter > 1:\n        p.n_iter = 1\n        shared.log.warning(f'Process batch: batch_count={p.n_iter} forced to 1')\n    shared.state.job_count = len(image_files) * p.n_iter\n    if shared.opts.batch_frame_mode: # SBM Frame mode is on, process each image in batch with same seed\n        window_size = p.batch_size\n        btcrept = 1\n        p.seed = [p.seed] * window_size # SBM MONKEYPATCH: Need to change processing to support a fixed seed value.\n        p.subseed = [p.subseed] * window_size # SBM MONKEYPATCH\n        shared.log.info(f\"Process batch: inputs={len(image_files)} outputs={p.n_iter}x{len(image_files)} parallel={window_size}\")\n    else: # SBM Frame mode is off, standard operation of repeating same images with sequential seed.\n        window_size = 1\n        btcrept = p.batch_size\n        shared.log.info(f\"Process batch: inputs={len(image_files)} outputs={p.n_iter*p.batch_size}x{len(image_files)}\")\n    for i in range(0, len(image_files), window_size):\n        if shared.state.skipped:\n            shared.state.skipped = False\n        if shared.state.interrupted:\n            break\n        batch_image_files = image_files[i:i+window_size]\n        batch_images = []\n        for image_file in batch_image_files:\n            try:\n                img = Image.open(image_file)\n                img = ImageOps.exif_transpose(img)\n                batch_images.append(img)\n                # p.init()\n                p.width = int(img.width * p.scale_by)\n                p.height = int(img.height * p.scale_by)\n                caption_file = os.path.splitext(image_file)[0] + '.txt'\n                prompt_type='default'\n                if os.path.exists(caption_file):\n                    with open(caption_file, 'r', encoding='utf8') as f:\n                        p.prompt = f.read()\n                        prompt_type='file'\n                else:\n                    p.prompt = p.default_prompt\n                p.all_prompts = None\n                p.all_negative_prompts = None\n                p.all_seeds = None\n                p.all_subseeds = None\n                shared.log.debug(f'Process batch: image=\"{image_file}\" prompt={prompt_type} i={i+1}/{len(image_files)}')\n            except UnidentifiedImageError as e:\n                shared.log.error(f'Process batch: image=\"{image_file}\" {e}')\n        if len(batch_images) == 0:\n            shared.log.warning(\"Process batch: no images found in batch\")\n            continue\n        batch_images = batch_images * btcrept # Standard mode sends the same image per batchsize.\n        p.init_images = batch_images\n\n        if is_inpaint_batch:\n            # try to find corresponding mask for an image using simple filename matching\n            batch_mask_images = []\n            for image_file in batch_image_files:\n                mask_image_path = os.path.join(inpaint_mask_dir, os.path.basename(image_file))\n                # if not found use first one (\"same mask for all images\" use-case)\n                if mask_image_path not in inpaint_masks:\n                    mask_image_path = inpaint_masks[0]\n                mask_image = Image.open(mask_image_path)\n                batch_mask_images.append(mask_image)\n            batch_mask_images = batch_mask_images * btcrept\n            p.image_mask = batch_mask_images\n\n        batch_image_files = batch_image_files * btcrept # List used for naming later.\n\n        try:\n            processed = scripts_manager.scripts_img2img.run(p, *args)\n            if processed is None:\n                processed = processing.process_images(p)\n        except Exception as e:\n            shared.log.error(f'Process batch: {e}')\n            errors.display(e, 'batch')\n            processed = None\n\n        if processed is None or len(processed.images) == 0:\n            shared.log.warning(f'Process batch: i={i+1}/{len(image_files)} no images processed')\n            continue\n\n        for n, (image, image_file) in enumerate(itertools.zip_longest(processed.images, batch_image_files)):\n            if image is None:\n                continue\n            basename = ''\n            if shared.opts.use_original_name_batch:\n                forced_filename, ext = os.path.splitext(os.path.basename(image_file))\n            else:\n                forced_filename = None\n                ext = shared.opts.samples_format\n            if len(processed.images) > 1:\n                basename = f'{n + i}' if shared.opts.batch_frame_mode else f'{n}'\n            else:\n                basename = ''\n            if output_dir == '':\n                output_dir = shared.opts.outdir_img2img_samples\n            os.makedirs(output_dir, exist_ok=True)\n            info, items = images.read_info_from_image(image)\n            for k, v in items.items():\n                image.info[k] = v\n            images.save_image(image, path=output_dir, basename=basename, seed=None, prompt=None, extension=ext, info=info, grid=False, pnginfo_section_name=\"extras\", existing_info=image.info, forced_filename=forced_filename)\n        processed = scripts_manager.scripts_img2img.after(p, processed, *args)\n        shared.log.debug(f'Processed: images={len(batch_image_files)} memory={memory_stats()} batch')\n\n\ndef img2img(id_task: str, state: str, mode: int,\n            prompt, negative_prompt, prompt_styles,\n            init_img,\n            sketch,\n            init_img_with_mask,\n            inpaint_color_sketch,\n            inpaint_color_sketch_orig,\n            init_img_inpaint,\n            init_mask_inpaint,\n            steps,\n            sampler_index,\n            mask_blur, mask_alpha,\n            vae_type, tiling, hidiffusion,\n            detailer_enabled, detailer_prompt, detailer_negative, detailer_steps, detailer_strength, detailer_resolution,\n            n_iter, batch_size,\n            guidance_name, guidance_scale, guidance_rescale, guidance_start, guidance_stop,\n            cfg_scale, image_cfg_scale, diffusers_guidance_rescale, pag_scale, pag_adaptive, cfg_end,\n            refiner_start,\n            clip_skip,\n            denoising_strength,\n            seed, subseed, subseed_strength, seed_resize_from_h, seed_resize_from_w,\n            selected_scale_tab,\n            height, width,\n            scale_by,\n            resize_mode, resize_name, resize_context,\n            inpaint_full_res, inpaint_full_res_padding, inpainting_mask_invert,\n            img2img_batch_files, img2img_batch_input_dir, img2img_batch_output_dir, img2img_batch_inpaint_mask_dir,\n            hdr_mode, hdr_brightness, hdr_color, hdr_sharpen, hdr_clamp, hdr_boundary, hdr_threshold, hdr_maximize, hdr_max_center, hdr_max_boundary, hdr_color_picker, hdr_tint_ratio,\n            enable_hr, hr_sampler_index, hr_denoising_strength, hr_resize_mode, hr_resize_context, hr_upscaler, hr_force, hr_second_pass_steps, hr_scale, hr_resize_x, hr_resize_y, refiner_steps, hr_refiner_start, refiner_prompt, refiner_negative,\n            override_settings_texts,\n            *args):\n\n\n    debug(f'img2img: {id_task}')\n\n    if shared.sd_model is None:\n        shared.log.warning('Aborted: op=img model not loaded')\n        return [], '', '', 'Error: model not loaded'\n\n    if sampler_index is None:\n        shared.log.warning('Sampler: invalid')\n        sampler_index = 0\n\n    mode = int(mode)\n    image = None\n    mask = None\n    override_settings = create_override_settings_dict(override_settings_texts)\n\n    if mode == 0: # img2img\n        if init_img is None:\n            return [], '', '', 'Error: init image not provided'\n        image = init_img.convert(\"RGB\")\n    elif mode == 1: # inpaint\n        if init_img_with_mask is None:\n            return [], '', '', 'Error: init image with mask not provided'\n        image = init_img_with_mask[\"image\"]\n        mask = init_img_with_mask[\"mask\"]\n        alpha_mask = ImageOps.invert(image.split()[-1]).convert('L').point(lambda x: 255 if x > 0 else 0, mode='1')\n        mask = ImageChops.lighter(alpha_mask, mask.convert('L')).convert('L')\n        image = image.convert(\"RGB\")\n    elif mode == 2:  # sketch\n        if sketch is None:\n            return [], '', '', 'Error: sketch image not provided'\n        image = sketch.convert(\"RGB\")\n    elif mode == 3: # composite\n        if inpaint_color_sketch is None:\n            return [], '', '', 'Error: color sketch image not provided'\n        image = inpaint_color_sketch\n        orig = inpaint_color_sketch_orig or inpaint_color_sketch\n        pred = np.any(np.array(image) != np.array(orig), axis=-1)\n        mask = Image.fromarray((255.0 * pred).astype(np.uint8), \"L\")\n        mask = ImageEnhance.Brightness(mask).enhance(mask_alpha)\n        blur = ImageFilter.GaussianBlur(mask_blur)\n        image = Image.composite(image.filter(blur), orig, mask.filter(blur))\n        image = image.convert(\"RGB\")\n    elif mode == 4: # inpaint upload mask\n        if init_img_inpaint is None:\n            return [], '', '', 'Error: inpaint image not provided'\n        image = init_img_inpaint\n        mask = init_mask_inpaint\n    elif mode == 5: # process batch\n        pass # handled later\n    else:\n        shared.log.error(f'Image processing unknown mode: {mode}')\n\n    if image is not None:\n        image = ImageOps.exif_transpose(image)\n        if selected_scale_tab == 1 and resize_mode != 0:\n            width = int(image.width * scale_by)\n            height = int(image.height * scale_by)\n\n    p = processing.StableDiffusionProcessingImg2Img(\n        sd_model=shared.sd_model,\n        outpath_samples=resolve_output_path(shared.opts.outdir_samples, shared.opts.outdir_img2img_samples),\n        outpath_grids=resolve_output_path(shared.opts.outdir_grids, shared.opts.outdir_img2img_grids),\n        prompt=prompt,\n        negative_prompt=negative_prompt,\n        styles=prompt_styles,\n        seed=seed,\n        subseed=subseed,\n        subseed_strength=subseed_strength,\n        seed_resize_from_h=seed_resize_from_h,\n        seed_resize_from_w=seed_resize_from_w,\n        sampler_name = processing.get_sampler_name(sampler_index, img=True),\n        batch_size=batch_size,\n        n_iter=n_iter,\n        steps=steps,\n        guidance_name=guidance_name,\n        guidance_scale=guidance_scale,\n        guidance_rescale=guidance_rescale,\n        guidance_start=guidance_start,\n        guidance_stop=guidance_stop,\n        cfg_scale=cfg_scale,\n        cfg_end=cfg_end,\n        clip_skip=clip_skip,\n        width=width,\n        height=height,\n        vae_type=vae_type,\n        tiling=tiling,\n        hidiffusion=hidiffusion,\n        detailer_enabled=detailer_enabled,\n        detailer_prompt=detailer_prompt,\n        detailer_negative=detailer_negative,\n        detailer_steps=detailer_steps,\n        detailer_strength=detailer_strength,\n        detailer_resolution=detailer_resolution,\n        init_images=[image],\n        mask=mask,\n        mask_blur=mask_blur,\n        resize_mode=resize_mode,\n        resize_name=resize_name,\n        resize_context=resize_context,\n        scale_by=scale_by,\n        denoising_strength=denoising_strength,\n        image_cfg_scale=image_cfg_scale,\n        diffusers_guidance_rescale=diffusers_guidance_rescale,\n        pag_scale=pag_scale,\n        pag_adaptive=pag_adaptive,\n        refiner_start=refiner_start,\n        inpaint_full_res=inpaint_full_res != 0,\n        inpaint_full_res_padding=inpaint_full_res_padding,\n        inpainting_mask_invert=inpainting_mask_invert,\n        hdr_mode=hdr_mode, hdr_brightness=hdr_brightness, hdr_color=hdr_color, hdr_sharpen=hdr_sharpen, hdr_clamp=hdr_clamp,\n        hdr_boundary=hdr_boundary, hdr_threshold=hdr_threshold, hdr_maximize=hdr_maximize, hdr_max_center=hdr_max_center, hdr_max_boundary=hdr_max_boundary, hdr_color_picker=hdr_color_picker, hdr_tint_ratio=hdr_tint_ratio,\n        # refiner\n        enable_hr=enable_hr,\n        hr_denoising_strength=hr_denoising_strength,\n        hr_scale=hr_scale,\n        hr_resize_mode=hr_resize_mode,\n        hr_resize_context=hr_resize_context,\n        hr_upscaler=hr_upscaler,\n        hr_force=hr_force,\n        hr_second_pass_steps=hr_second_pass_steps,\n        hr_resize_x=hr_resize_x,\n        hr_resize_y=hr_resize_y,\n        hr_sampler_name = processing.get_sampler_name(hr_sampler_index),\n        refiner_steps=refiner_steps,\n        hr_refiner_start=hr_refiner_start,\n        refiner_prompt=refiner_prompt,\n        refiner_negative=refiner_negative,\n        # override\n        override_settings=override_settings,\n    )\n    p.scripts = scripts_manager.scripts_img2img\n    p.script_args = args\n    p.state = state\n    if mask:\n        p.extra_generation_params[\"Mask blur\"] = mask_blur\n        p.extra_generation_params[\"Mask alpha\"] = mask_alpha\n        p.extra_generation_params[\"Mask padding\"] = inpaint_full_res_padding\n        p.extra_generation_params[\"Mask invert\"] = ['masked', 'invert'][inpainting_mask_invert]\n        p.extra_generation_params[\"Mask area\"] = [\"full\", \"masked\"][inpaint_full_res]\n    p.is_batch = mode == 5\n    if p.is_batch:\n        process_batch(p, img2img_batch_files, img2img_batch_input_dir, img2img_batch_output_dir, img2img_batch_inpaint_mask_dir, args)\n        processed = processing.get_processed(p, [], p.seed, \"\")\n    else:\n        processed = scripts_manager.scripts_img2img.run(p, *args)\n        if processed is None:\n            processed = processing.process_images(p)\n        processed = scripts_manager.scripts_img2img.after(p, processed, *args)\n    p.close()\n    generation_info_js = processed.js() if processed is not None else ''\n    if processed is None:\n        return [], generation_info_js, '', 'Error: no images'\n    return processed.images, generation_info_js, processed.info, plaintext_to_html(processed.comments)\n"
  },
  {
    "path": "modules/infotext.py",
    "content": "import os\nimport re\nimport json\n\n\nif os.environ.get('SD_PASTE_DEBUG', None) is not None:\n    from modules.errors import log\n    debug = log.trace\nelse:\n    debug = lambda *args, **kwargs: None # pylint: disable=unnecessary-lambda-assignment\nre_size = re.compile(r\"^(\\d+)x(\\d+)$\") # int x int\nre_param = re.compile(r'\\s*([\\w ]+):\\s*(\"(?:\\\\\"[^,]|\\\\\"|\\\\|[^\\\"])+\"|[^,]*)(?:,|$)') # multi-word: value\nre_lora = re.compile(\"<lora:([^:]+):\")\n\n\ndef quote(text):\n    if ',' not in str(text) and '\\n' not in str(text) and ':' not in str(text):\n        return text\n    return json.dumps(text, ensure_ascii=False)\n\n\ndef unquote(text):\n    if len(text) == 0 or text[0] != '\"' or text[-1] != '\"':\n        return text\n    try:\n        return json.loads(text)\n    except Exception:\n        return text\n\n\ndef parse(infotext):\n    if not isinstance(infotext, str):\n        return {}\n    debug(f'Raw: {infotext}')\n\n    remaining = infotext.replace('\\nSteps:', ' Steps:')\n    params = [' steps:', ' seed:', ' width:', ' height:', ' sampler:', ' size:', ' cfg scale:', ' pipeline:'] # first param is one of those\n    params += ['\\nsteps:', '\\nseed:', '\\nwidth:', '\\nheight:', '\\nsampler:', '\\nsize:', '\\ncfg scale:', '\\npipeline:']\n    params += ['.steps:', '.seed:', '.width:', '.height:', '.sampler:', '.size:', '.cfg scale:', '.pipeline:']\n\n    prompt_end = [remaining.lower().find(p) for p in params if p in remaining.lower()]\n    prompt_end += [remaining.lower().find('negative prompt:')]\n    prompt_end = [p for p in prompt_end if p > -1]\n    prompt_end = min(prompt_end) if len(prompt_end) > 0 else 0\n    prompt = remaining[:prompt_end]\n    remaining = remaining.replace(prompt, '')\n    if prompt.lower().startswith('prompt: '):\n        prompt = prompt[8:]\n    # debug(f'Prompt: {prompt}')\n\n    param_idx = [remaining.lower().find(p) for p in params if p in remaining.lower()]\n    param_idx = [p for p in param_idx if p > -1]\n    param_idx = min(param_idx) if len(param_idx) > 0 else 0\n    negative = remaining[:param_idx] if param_idx > 0 else ''\n    remaining = remaining.replace(negative, '')\n    if negative.lower().startswith('negative prompt: '):\n        negative = negative[16:]\n    # debug(f'Negative: {negative}')\n\n    params = dict(re_param.findall(remaining))\n    if len(list(params)) == 0:\n        params['Prompt'] = infotext\n        return params\n    params['Prompt'] = prompt\n    params['Negative prompt'] = negative\n    debug(f'Params: {params}')\n    for key, val in params.copy().items():\n        val = unquote(val).strip(\" ,\\n\").replace('\\\\\\n', '')\n        size = re_size.match(val)\n        if val.replace('.', '', 1).isdigit():\n            params[key] = float(val) if '.' in val else int(val)\n        elif val == \"True\":\n            params[key] = True\n        elif val == \"False\":\n            params[key] = False\n        elif key == 'VAE' and val == 'TAESD':\n            params[\"VAE type\"] = 'Tiny'\n        elif size is not None:\n            params[f\"{key}-1\"] = int(size.group(1))\n            params[f\"{key}-2\"] = int(size.group(2))\n        elif isinstance(params[key], str):\n            params[key] = val\n        debug(f'Param parsed: type={type(params[key])} \"{key}\"=\"{params[key]}\" raw=\"{val}\"')\n\n    return params\n\n\nmapping = [\n    # Models\n    ('Model', 'sd_model_checkpoint'),\n    ('Model hash', 'sd_model_checkpoint'),\n    ('Refiner', 'sd_model_refiner'),\n    ('VAE', 'sd_vae'),\n    ('TE', 'sd_text_encoder'),\n    ('Unet', 'sd_unet'),\n    # Other\n    ('Parser', 'prompt_attention'),\n    ('Color correction', 'img2img_color_correction'),\n    # Samplers\n    ('Sampler eta delta', 'eta_noise_seed_delta'),\n    ('Sampler eta multiplier', 'initial_noise_multiplier'),\n    ('Sampler timesteps', 'schedulers_timesteps'),\n    ('Sampler spacing', 'schedulers_timestep_spacing'),\n    ('Sampler sigma', 'schedulers_sigma'),\n    ('Sampler order', 'schedulers_solver_order'),\n    ('Sampler type', 'schedulers_prediction_type'),\n    ('Sampler beta schedule', 'schedulers_beta_schedule'),\n    ('Sampler low order', 'schedulers_use_loworder'),\n    ('Sampler dynamic', 'schedulers_use_thresholding'),\n    ('Sampler rescale', 'schedulers_rescale_betas'),\n    ('Sampler beta start', 'schedulers_beta_start'),\n    ('Sampler beta end', 'schedulers_beta_end'),\n    ('Sampler range', 'schedulers_timesteps_range'),\n    ('Sampler shift', 'schedulers_shift'),\n    ('Sampler dynamic shift', 'schedulers_dynamic_shift'),\n    # Token Merging\n    ('Mask weight', 'inpainting_mask_weight'),\n    ('ToMe', 'tome_ratio'),\n    ('ToDo', 'todo_ratio'),\n]\n\n\nif __name__ == '__main__':\n    import logging\n    log = logging.getLogger(__name__)\n    logging.basicConfig(level=logging.DEBUG, format='%(asctime)s %(levelname)s | %(message)s')\n    debug = log.info\n\n    import sys\n    if len(sys.argv) > 1:\n        if os.path.exists(sys.argv[1]):\n            with open(sys.argv[1], 'r', encoding='utf8') as f:\n                parse(f.read())\n        else:\n            parse(sys.argv[1])\n"
  },
  {
    "path": "modules/infotext_utils.py",
    "content": "# a1111 compatibility module: unused\n\nfrom modules.infotext import parse as parse_generation_parameters # pylint: disable=unused-import\n"
  },
  {
    "path": "modules/intel/ipex/__init__.py",
    "content": "import os\nimport sys\nimport torch\ntry:\n    import intel_extension_for_pytorch as ipex # pylint: disable=import-error, unused-import\n    has_ipex = True\nexcept Exception:\n    has_ipex = False\nfrom .hijacks import ipex_hijacks\n\ntorch_version = torch.__version__[:4]\nif torch_version[-1] not in {\"0\", \"1\", \"2\", \"3\", \"4\", \"5\", \"6\", \"7\", \"8\", \"9\"}:\n    torch_version = torch_version[:-1]\ntorch_version = torch_version.split(\".\")\ntorch_version[0], torch_version[1] = int(torch_version[0]), int(torch_version[1])\n\n# pylint: disable=protected-access, missing-function-docstring, line-too-long\n\ndef ipex_init(): # pylint: disable=too-many-statements\n    try:\n        if hasattr(torch, \"cuda\") and hasattr(torch.cuda, \"is_xpu_hijacked\") and torch.cuda.is_xpu_hijacked:\n            return True, \"Skipping IPEX hijack\"\n        else:\n            try:\n                # force xpu device on torch compile and triton\n                # import inductor utils to get around lazy import\n                from torch._inductor import utils as torch_inductor_utils # pylint: disable=import-error, unused-import # noqa: F401,RUF100\n                torch._inductor.utils.GPU_TYPES = [\"xpu\"]\n                torch._inductor.utils.get_gpu_type = lambda *args, **kwargs: \"xpu\"\n                from triton import backends as triton_backends # pylint: disable=import-error\n                triton_backends.backends[\"nvidia\"].driver.is_active = lambda *args, **kwargs: False\n            except Exception:\n                pass\n            # Replace cuda with xpu:\n            torch.cuda.current_device = torch.xpu.current_device\n            torch.cuda.current_stream = torch.xpu.current_stream\n            torch.cuda.device = torch.xpu.device\n            torch.cuda.device_count = torch.xpu.device_count\n            torch.cuda.device_of = torch.xpu.device_of\n            torch.cuda.get_device_name = torch.xpu.get_device_name\n            torch.cuda.get_device_properties = torch.xpu.get_device_properties\n            torch.cuda.init = torch.xpu.init\n            torch.cuda.is_available = torch.xpu.is_available\n            torch.cuda.is_initialized = torch.xpu.is_initialized\n            torch.cuda.stream = torch.xpu.stream\n            torch.cuda.Event = torch.xpu.Event\n            torch.cuda.Stream = torch.xpu.Stream\n            torch.cuda.Optional = torch.xpu.Optional\n            torch.cuda.streams = torch.xpu.streams\n            torch.cuda.Any = torch.xpu.Any\n            torch.cuda.default_generators = torch.xpu.default_generators\n            torch.cuda.set_stream = torch.xpu.set_stream\n            torch.cuda.torch = torch.xpu.torch\n            torch.cuda.Union = torch.xpu.Union\n            torch.cuda.StreamContext = torch.xpu.StreamContext\n            torch.cuda.random = torch.xpu.random\n            torch.cuda._get_device_index = torch.xpu._get_device_index\n            torch.cuda._lazy_init = torch.xpu._lazy_init\n            torch.cuda._lazy_call = torch.xpu._lazy_call\n            torch.cuda._device = torch.xpu._device\n            torch.cuda._device_t = torch.xpu._device_t\n            torch.cuda.is_current_stream_capturing = lambda: False\n\n            torch.cuda.__annotations__ = torch.xpu.__annotations__\n            torch.cuda.__builtins__ = torch.xpu.__builtins__\n            torch.cuda.__name__ = torch.xpu.__name__\n            torch.cuda.__spec__ = torch.xpu.__spec__\n            torch.cuda.__file__ = torch.xpu.__file__\n            torch.cuda.__path__ = torch.xpu.__path__\n            torch.cuda.__doc__ = torch.xpu.__doc__\n            torch.cuda.__package__ = getattr(torch.xpu, \"__package__\", None)\n            torch.cuda.__cached__ = getattr(torch.xpu, \"__cached__\", None)\n            torch.cuda.__loader__ = getattr(torch.xpu, \"__loader__\", None)\n\n            torch.Tensor.cuda = torch.Tensor.xpu\n            torch.Tensor.is_cuda = torch.Tensor.is_xpu\n            torch.nn.Module.cuda = torch.nn.Module.xpu\n\n            if torch_version[0] < 2 or (torch_version[0] == 2 and torch_version[1] < 3):\n                torch.cuda.threading = torch.xpu.lazy_init.threading\n                torch.cuda.traceback = torch.xpu.lazy_init.traceback\n\n                torch.cuda._initialization_lock = torch.xpu.lazy_init._initialization_lock\n                torch.cuda._initialized = torch.xpu.lazy_init._initialized\n                torch.cuda._is_in_bad_fork = torch.xpu.lazy_init._is_in_bad_fork\n                torch.cuda._lazy_seed_tracker = torch.xpu.lazy_init._lazy_seed_tracker\n                torch.cuda._queued_calls = torch.xpu.lazy_init._queued_calls\n                torch.cuda._tls = torch.xpu.lazy_init._tls\n                torch.cuda._lazy_new = torch.xpu._lazy_new\n\n                torch.cuda.FloatTensor = torch.xpu.FloatTensor\n                torch.cuda.FloatStorage = torch.xpu.FloatStorage\n                torch.cuda.BFloat16Tensor = torch.xpu.BFloat16Tensor\n                torch.cuda.BFloat16Storage = torch.xpu.BFloat16Storage\n                torch.cuda.HalfTensor = torch.xpu.HalfTensor\n                torch.cuda.HalfStorage = torch.xpu.HalfStorage\n                torch.cuda.ByteTensor = torch.xpu.ByteTensor\n                torch.cuda.ByteStorage = torch.xpu.ByteStorage\n                torch.cuda.DoubleTensor = torch.xpu.DoubleTensor\n                torch.cuda.DoubleStorage = torch.xpu.DoubleStorage\n                torch.cuda.ShortTensor = torch.xpu.ShortTensor\n                torch.cuda.ShortStorage = torch.xpu.ShortStorage\n                torch.cuda.LongTensor = torch.xpu.LongTensor\n                torch.cuda.LongStorage = torch.xpu.LongStorage\n                torch.cuda.IntTensor = torch.xpu.IntTensor\n                torch.cuda.IntStorage = torch.xpu.IntStorage\n                torch.cuda.CharTensor = torch.xpu.CharTensor\n                torch.cuda.CharStorage = torch.xpu.CharStorage\n                torch.cuda.BoolTensor = torch.xpu.BoolTensor\n                torch.cuda.BoolStorage = torch.xpu.BoolStorage\n                torch.cuda.ComplexFloatStorage = torch.xpu.ComplexFloatStorage\n                torch.cuda.ComplexDoubleStorage = torch.xpu.ComplexDoubleStorage\n                if has_ipex:\n                    torch._C._cuda_getCurrentRawStream = ipex._C._getCurrentRawStream\n            else:\n                torch.cuda.threading = torch.xpu.threading\n                torch.cuda.traceback = torch.xpu.traceback\n\n                torch.cuda._initialization_lock = torch.xpu._initialization_lock\n                torch.cuda._initialized = torch.xpu._initialized\n                torch.cuda._is_in_bad_fork = torch.xpu._is_in_bad_fork\n                torch.cuda._lazy_seed_tracker = torch.xpu._lazy_seed_tracker\n                torch.cuda._queued_calls = torch.xpu._queued_calls\n                torch.cuda._tls = torch.xpu._tls\n\n                torch._C._cuda_getCurrentRawStream = torch._C._xpu_getCurrentRawStream\n\n            if torch_version[0] < 2 or (torch_version[0] == 2 and torch_version[1] < 5):\n                torch.cuda.os = torch.xpu.os\n                torch.cuda.Device = torch.xpu.Device\n                torch.cuda.warnings = torch.xpu.warnings\n                torch.cuda.classproperty = torch.xpu.classproperty\n                torch.UntypedStorage.cuda = torch.UntypedStorage.xpu\n\n            if torch_version[0] < 2 or (torch_version[0] == 2 and torch_version[1] < 7):\n                torch.cuda.Tuple = torch.xpu.Tuple\n                torch.cuda.List = torch.xpu.List\n\n            if torch_version[0] < 2 or (torch_version[0] == 2 and torch_version[1] < 8):\n                if has_ipex:\n                    torch.cuda.memory_summary = torch.xpu.memory_summary\n                    torch.cuda.memory_snapshot = torch.xpu.memory_snapshot\n\n            # Memory:\n            if \"linux\" in sys.platform and \"WSL2\" in os.popen(\"uname -a\").read():\n                torch.xpu.empty_cache = lambda: None\n            torch.cuda.empty_cache = torch.xpu.empty_cache\n\n            torch.cuda.memory = torch.xpu.memory\n            torch.cuda.memory_stats = torch.xpu.memory_stats\n            torch.cuda.memory_allocated = torch.xpu.memory_allocated\n            torch.cuda.max_memory_allocated = torch.xpu.max_memory_allocated\n            torch.cuda.memory_reserved = torch.xpu.memory_reserved\n            torch.cuda.memory_cached = torch.xpu.memory_reserved\n            torch.cuda.max_memory_reserved = torch.xpu.max_memory_reserved\n            torch.cuda.max_memory_cached = torch.xpu.max_memory_reserved\n            torch.cuda.reset_peak_memory_stats = torch.xpu.reset_peak_memory_stats\n            torch.cuda.reset_max_memory_cached = torch.xpu.reset_peak_memory_stats\n            torch.cuda.reset_max_memory_allocated = torch.xpu.reset_peak_memory_stats\n            torch.cuda.memory_stats_as_nested_dict = torch.xpu.memory_stats_as_nested_dict\n            torch.cuda.reset_accumulated_memory_stats = torch.xpu.reset_accumulated_memory_stats\n\n            # RNG:\n            torch.cuda.get_rng_state = torch.xpu.get_rng_state\n            torch.cuda.get_rng_state_all = torch.xpu.get_rng_state_all\n            torch.cuda.set_rng_state = torch.xpu.set_rng_state\n            torch.cuda.set_rng_state_all = torch.xpu.set_rng_state_all\n            torch.cuda.manual_seed = torch.xpu.manual_seed\n            torch.cuda.manual_seed_all = torch.xpu.manual_seed_all\n            torch.cuda.seed = torch.xpu.seed\n            torch.cuda.seed_all = torch.xpu.seed_all\n            torch.cuda.initial_seed = torch.xpu.initial_seed\n\n            # Fix functions with ipex:\n            # torch.xpu.mem_get_info always returns the total memory as free memory\n            torch.has_cuda = True\n            torch.version.cuda = \"12.1\"\n            torch.backends.cuda.is_built = lambda *args, **kwargs: True\n            torch._utils._get_available_device_type = lambda: \"xpu\"\n\n            torch.xpu.mem_get_info = lambda device=None: [(torch.xpu.get_device_properties(device).total_memory - torch.xpu.memory_reserved(device)), torch.xpu.get_device_properties(device).total_memory]\n            torch.cuda.mem_get_info = torch.xpu.mem_get_info\n            torch.cuda.has_half = True\n            torch.cuda.is_bf16_supported = getattr(torch.xpu, \"is_bf16_supported\", lambda *args, **kwargs: True)\n            torch.cuda.is_fp16_supported = lambda *args, **kwargs: True\n            torch.cuda.get_arch_list = getattr(torch.xpu, \"get_arch_list\", lambda: [\"pvc\", \"dg2\", \"ats-m150\"])\n            torch.cuda.get_device_capability = lambda *args, **kwargs: (12,1)\n            torch.cuda.ipc_collect = lambda *args, **kwargs: None\n            torch.cuda.utilization = lambda *args, **kwargs: 0\n\n            device_supports_fp64 = ipex_hijacks()\n            try:\n                from .diffusers import ipex_diffusers\n                ipex_diffusers(device_supports_fp64=device_supports_fp64)\n            except Exception: # pylint: disable=broad-exception-caught\n                pass\n            torch.cuda.is_xpu_hijacked = True\n    except Exception as e:\n        return False, e\n    return True, None\n"
  },
  {
    "path": "modules/intel/ipex/attention.py",
    "content": "from typing import Tuple, Optional\n\nimport os\nimport torch\nfrom functools import cache, wraps\n\n# pylint: disable=protected-access, missing-function-docstring, line-too-long\n\n# ARC GPUs can't allocate more than 4GB to a single block so we slice the attention layers\n\ndynamic_attention_slice_rate = float(os.environ.get(\"IPEX_SDPA_SLICE_TRIGGER_RATE\", \"1\"))\ndynamic_attention_trigger_rate = float(os.environ.get(\"IPEX_ATTENTION_SLICE_RATE\", \"0.5\"))\n\n# Find something divisible with the input_tokens\n@cache\ndef find_split_size(original_size: int, slice_block_size: int, slice_rate: int = 2) -> int:\n    split_size = original_size\n    while True:\n        if (split_size * slice_block_size) <= slice_rate and original_size % split_size == 0:\n            return split_size\n        split_size = split_size - 1\n        if split_size <= 1:\n            return 1\n    return split_size\n\n\n# Find slice sizes for SDPA\n@cache\ndef find_sdpa_slice_sizes(query_shape: Tuple[int], key_shape: Tuple[int], query_element_size: int, slice_rate: int = 2, trigger_rate: int = 3) -> Tuple[bool, int]:\n    batch_size, attn_heads, query_len, _ = query_shape\n    _, _, key_len, _ = key_shape\n\n    slice_batch_size = attn_heads * (query_len * key_len) * query_element_size / 1024 / 1024 / 1024\n\n    split_batch_size = batch_size\n    split_head_size = attn_heads\n    split_query_size = query_len\n\n    do_batch_split = False\n    do_head_split = False\n    do_query_split = False\n\n    if batch_size * slice_batch_size >= trigger_rate:\n        do_batch_split = True\n        split_batch_size = find_split_size(batch_size, slice_batch_size, slice_rate=slice_rate)\n\n        if split_batch_size * slice_batch_size > slice_rate:\n            slice_head_size = split_batch_size * (query_len * key_len) * query_element_size / 1024 / 1024 / 1024\n            do_head_split = True\n            split_head_size = find_split_size(attn_heads, slice_head_size, slice_rate=slice_rate)\n\n            if split_head_size * slice_head_size > slice_rate:\n                slice_query_size = split_batch_size * split_head_size * (key_len) * query_element_size / 1024 / 1024 / 1024\n                do_query_split = True\n                split_query_size = find_split_size(query_len, slice_query_size, slice_rate=slice_rate)\n\n    return do_batch_split, do_head_split, do_query_split, split_batch_size, split_head_size, split_query_size\n\n\nsdpa_pre_dyanmic_atten = torch.nn.functional.scaled_dot_product_attention\n@wraps(torch.nn.functional.scaled_dot_product_attention)\ndef dynamic_scaled_dot_product_attention(query: torch.FloatTensor, key: torch.FloatTensor, value: torch.FloatTensor, attn_mask: Optional[torch.FloatTensor] = None, dropout_p: float = 0.0, is_causal: bool = False, scale: Optional[float] = None, enable_gqa: bool = False, **kwargs) -> torch.FloatTensor:\n    if query.device.type != \"xpu\":\n        if enable_gqa:\n            kwargs[\"enable_gqa\"] = enable_gqa\n        return sdpa_pre_dyanmic_atten(query, key, value, attn_mask=attn_mask, dropout_p=dropout_p, is_causal=is_causal, scale=scale, **kwargs)\n    is_unsqueezed = False\n    if query.dim() == 3:\n        query = query.unsqueeze(0)\n        is_unsqueezed = True\n        if key.dim() == 3:\n            key = key.unsqueeze(0)\n        if value.dim() == 3:\n            value = value.unsqueeze(0)\n    if enable_gqa:\n        key = key.repeat_interleave(query.size(-3)//key.size(-3), -3)\n        value = value.repeat_interleave(query.size(-3)//value.size(-3), -3)\n    do_batch_split, do_head_split, do_query_split, split_batch_size, split_head_size, split_query_size = find_sdpa_slice_sizes(query.shape, key.shape, query.element_size(), slice_rate=dynamic_attention_slice_rate, trigger_rate=dynamic_attention_trigger_rate)\n\n    # Slice SDPA\n    if do_batch_split:\n        batch_size, attn_heads, query_len, _ = query.shape\n        _, _, _, head_dim = value.shape\n        hidden_states = torch.zeros((batch_size, attn_heads, query_len, head_dim), device=query.device, dtype=query.dtype)\n        if attn_mask is not None:\n            attn_mask = attn_mask.expand((query.shape[0], query.shape[1], query.shape[2], key.shape[-2]))\n        for ib in range(batch_size // split_batch_size):\n            start_idx = ib * split_batch_size\n            end_idx = (ib + 1) * split_batch_size\n            if do_head_split:\n                for ih in range(attn_heads // split_head_size): # pylint: disable=invalid-name\n                    start_idx_h = ih * split_head_size\n                    end_idx_h = (ih + 1) * split_head_size\n                    if do_query_split:\n                        for iq in range(query_len // split_query_size): # pylint: disable=invalid-name\n                            start_idx_q = iq * split_query_size\n                            end_idx_q = (iq + 1) * split_query_size\n                            hidden_states[start_idx:end_idx, start_idx_h:end_idx_h, start_idx_q:end_idx_q, :] = sdpa_pre_dyanmic_atten(\n                                query[start_idx:end_idx, start_idx_h:end_idx_h, start_idx_q:end_idx_q, :],\n                                key[start_idx:end_idx, start_idx_h:end_idx_h, :, :],\n                                value[start_idx:end_idx, start_idx_h:end_idx_h, :, :],\n                                attn_mask=attn_mask[start_idx:end_idx, start_idx_h:end_idx_h, start_idx_q:end_idx_q, :] if attn_mask is not None else attn_mask,\n                                dropout_p=dropout_p, is_causal=is_causal, scale=scale, **kwargs\n                            )\n                    else:\n                        hidden_states[start_idx:end_idx, start_idx_h:end_idx_h, :, :] = sdpa_pre_dyanmic_atten(\n                            query[start_idx:end_idx, start_idx_h:end_idx_h, :, :],\n                            key[start_idx:end_idx, start_idx_h:end_idx_h, :, :],\n                            value[start_idx:end_idx, start_idx_h:end_idx_h, :, :],\n                            attn_mask=attn_mask[start_idx:end_idx, start_idx_h:end_idx_h, :, :] if attn_mask is not None else attn_mask,\n                            dropout_p=dropout_p, is_causal=is_causal, scale=scale, **kwargs\n                        )\n            else:\n                hidden_states[start_idx:end_idx, :, :, :] = sdpa_pre_dyanmic_atten(\n                    query[start_idx:end_idx, :, :, :],\n                    key[start_idx:end_idx, :, :, :],\n                    value[start_idx:end_idx, :, :, :],\n                    attn_mask=attn_mask[start_idx:end_idx, :, :, :] if attn_mask is not None else attn_mask,\n                    dropout_p=dropout_p, is_causal=is_causal, scale=scale, **kwargs\n                )\n        torch.xpu.synchronize(query.device)\n    else:\n        hidden_states = sdpa_pre_dyanmic_atten(query, key, value, attn_mask=attn_mask, dropout_p=dropout_p, is_causal=is_causal, scale=scale, **kwargs)\n    if is_unsqueezed:\n        hidden_states = hidden_states.squeeze(0)\n    return hidden_states\n"
  },
  {
    "path": "modules/intel/ipex/device_prop.py",
    "content": "\n\ndef mb_to_byte(mb: int) -> int:\n    return mb * 1024*1024\n\nunknown_cache_size = 2\ncache_size_dict = {\n    0x0000: mb_to_byte(unknown_cache_size),\n    0xE212: mb_to_byte(4), # Arc Pro B50 / Xe2\n    0xE211: mb_to_byte(18), # Arc Pro B60 / Xe2\n    0xE20B: mb_to_byte(18), # Arc B580 / Xe2\n    0xE20C: mb_to_byte(18), # Arc B570 / Xe2\n    0x64A0: mb_to_byte(4), # Arc 130V Mobile / Arc 140V Mobile / Lunar Lake / Xe2\n    0x6420: mb_to_byte(unknown_cache_size*2), #  (?) (EU: 64/56) / Lunar Lake / Xe2\n    0x64B0: mb_to_byte(unknown_cache_size), # (?) (EU: 32) / Lunar Lake / Xe2\n    0x7D51: mb_to_byte(4), # Arc 130T Mobile / Arc 140T Mobile / Arrow Lake-H / Xe-LPG\n    0x7D67: mb_to_byte(unknown_cache_size*2), # (?) (EU: 64/48/32) / Arrow Lake-S / Xe-LPG\n    0x7D41: mb_to_byte(unknown_cache_size*2), # (?) (EU: 64) / Arrow Lake-U / Xe-LPG\n    0x7DD5: mb_to_byte(unknown_cache_size*2), # (?) (EU: 128/112) / Meteor Lake / Xe-LPG\n    0x7D45: mb_to_byte(unknown_cache_size), # (?) (EU: 64/48) / Meteor Lake / Xe-LPG\n    0x7D40: mb_to_byte(unknown_cache_size), # (?) (EU: 64/48) / Meteor Lake / Xe-LPG\n    0x7D55: mb_to_byte(unknown_cache_size*2), # (?) (EU: 128/112) / Meteor Lake / Xe-LPG\n    0x0BD5: mb_to_byte(408), # Max 1550 / Xe-HPC\n    0x0BDA: mb_to_byte(204) , # Max 1100 / Xe-HPC\n    0x56C0: mb_to_byte(16), # Flex 170 / Xe-HPG\n    0x56C1: mb_to_byte(4), # Flex 140 / Xe-HPG\n    0x5690: mb_to_byte(16), # Arc A770M / Xe-HPG\n    0x5691: mb_to_byte(12), # Arc A730M / Xe-HPG\n    0x5696: mb_to_byte(8), # Arc A570M / Xe-HPG\n    0x5692: mb_to_byte(8), # Arc A550M / Xe-HPG\n    0x5697: mb_to_byte(8), # Arc A530M / Xe-HPG\n    0x5693: mb_to_byte(4), # Arc A370M / Xe-HPG\n    0x5694: mb_to_byte(4), # Arc A350M / Xe-HPG\n    0x56A0: mb_to_byte(16), # Arc A770 / Xe-HPG\n    0x56A1: mb_to_byte(16), # Arc A750 / Xe-HPG\n    0x56A2: mb_to_byte(8), # Arc A580 / Xe-HPG\n    0x56A5: mb_to_byte(4), # Arc A380 / Xe-HPG\n    0x56A6: mb_to_byte(4), # Arc A310 / Xe-HPG\n    0x56B3: mb_to_byte(12), # Arc Pro A60 / Xe-HPG\n    0x56B2: mb_to_byte(8), # Arc Pro A60M / Xe-HPG\n    0x56B1: mb_to_byte(4), # Arc Pro A40/A50 / Xe-HPG\n    0x56B0: mb_to_byte(4), # Arc Pro A30M / Xe-HPG\n    0x56BA: mb_to_byte(unknown_cache_size*2), # Arc A380E / Xe-HPG\n    0x56BC: mb_to_byte(unknown_cache_size*2), # Arc A370E / Xe-HPG\n    0x56BD: mb_to_byte(unknown_cache_size*2), # Arc A350E / Xe-HPG\n    0x56BB: mb_to_byte(unknown_cache_size*2), # Arc A310E / Xe-HPG\n}\n"
  },
  {
    "path": "modules/intel/ipex/diffusers.py",
    "content": "from functools import wraps\nimport torch\nimport diffusers # pylint: disable=import-error\nfrom diffusers.utils import torch_utils # pylint: disable=import-error, unused-import # noqa: F401,RUF100\n\n# pylint: disable=protected-access, missing-function-docstring, line-too-long\n\n\n# Diffusers FreeU\n# Diffusers is imported before ipex hijacks so fourier_filter needs hijacking too\noriginal_fourier_filter = diffusers.utils.torch_utils.fourier_filter\n@wraps(diffusers.utils.torch_utils.fourier_filter)\ndef fourier_filter(x_in, threshold, scale):\n    return_dtype = x_in.dtype\n    return original_fourier_filter(x_in.to(dtype=torch.float32), threshold, scale).to(dtype=return_dtype)\n\n\n# fp64 error\nclass FluxPosEmbed(torch.nn.Module):\n    def __init__(self, theta: int, axes_dim):\n        super().__init__()\n        self.theta = theta\n        self.axes_dim = axes_dim\n\n    def forward(self, ids: torch.Tensor) -> torch.Tensor:\n        cos_out = []\n        sin_out = []\n        pos = ids.to(dtype=torch.float32)\n        for i in range(ids.shape[-1]):\n            cos, sin = diffusers.models.embeddings.get_1d_rotary_pos_embed(\n                self.axes_dim[i],\n                pos[:, i],\n                theta=self.theta,\n                repeat_interleave_real=True,\n                use_real=True,\n                freqs_dtype=torch.float32,\n            )\n            cos_out.append(cos)\n            sin_out.append(sin)\n        freqs_cos = torch.cat(cos_out, dim=-1).to(ids.device)\n        freqs_sin = torch.cat(sin_out, dim=-1).to(ids.device)\n        return freqs_cos, freqs_sin\n\n\ndef hidream_rope(pos: torch.Tensor, dim: int, theta: int) -> torch.Tensor:\n    assert dim % 2 == 0, \"The dimension must be even.\"\n    return_device = pos.device\n    pos = pos.to(\"cpu\")\n\n    scale = torch.arange(0, dim, 2, dtype=torch.float64, device=pos.device) / dim\n    omega = 1.0 / (theta**scale)\n\n    batch_size, seq_length = pos.shape\n    out = torch.einsum(\"...n,d->...nd\", pos, omega)\n    cos_out = torch.cos(out)\n    sin_out = torch.sin(out)\n\n    stacked_out = torch.stack([cos_out, -sin_out, sin_out, cos_out], dim=-1)\n    out = stacked_out.view(batch_size, -1, dim // 2, 2, 2)\n    return out.to(return_device, dtype=torch.float32)\n\n\ndef get_1d_sincos_pos_embed_from_grid(embed_dim, pos, output_type=\"np\"):\n    if output_type == \"np\":\n        return diffusers.models.embeddings.get_1d_sincos_pos_embed_from_grid_np(embed_dim=embed_dim, pos=pos)\n    if embed_dim % 2 != 0:\n        raise ValueError(\"embed_dim must be divisible by 2\")\n\n    omega = torch.arange(embed_dim // 2, device=pos.device, dtype=torch.float32)\n    omega /= embed_dim / 2.0\n    omega = 1.0 / 10000**omega  # (D/2,)\n\n    pos = pos.reshape(-1)  # (M,)\n    out = torch.outer(pos, omega)  # (M, D/2), outer product\n\n    emb_sin = torch.sin(out)  # (M, D/2)\n    emb_cos = torch.cos(out)  # (M, D/2)\n\n    emb = torch.concat([emb_sin, emb_cos], dim=1)  # (M, D)\n    return emb\n\n\ndef apply_rotary_emb(x, freqs_cis, use_real: bool = True, use_real_unbind_dim: int = -1):\n    if use_real:\n        cos, sin = freqs_cis  # [S, D]\n        cos = cos[None, None]\n        sin = sin[None, None]\n        cos, sin = cos.to(x.device), sin.to(x.device)\n\n        if use_real_unbind_dim == -1:\n            # Used for flux, cogvideox, hunyuan-dit\n            x_real, x_imag = x.reshape(*x.shape[:-1], -1, 2).unbind(-1)  # [B, S, H, D//2]\n            x_rotated = torch.stack([-x_imag, x_real], dim=-1).flatten(3)\n        elif use_real_unbind_dim == -2:\n            # Used for Stable Audio, OmniGen, CogView4 and Cosmos\n            x_real, x_imag = x.reshape(*x.shape[:-1], 2, -1).unbind(-2)  # [B, S, H, D//2]\n            x_rotated = torch.cat([-x_imag, x_real], dim=-1)\n        else:\n            raise ValueError(f\"`use_real_unbind_dim={use_real_unbind_dim}` but should be -1 or -2.\")\n\n        out = (x.to(dtype=torch.float32) * cos + x_rotated.to(dtype=torch.float32) * sin).to(x.dtype)\n        return out\n    else:\n        # used for lumina\n        # force cpu with Alchemist\n        x_rotated = torch.view_as_complex(x.to(\"cpu\").to(dtype=torch.float32).reshape(*x.shape[:-1], -1, 2))\n        freqs_cis = freqs_cis.to(\"cpu\").unsqueeze(2)\n        x_out = torch.view_as_real(x_rotated * freqs_cis).flatten(3)\n        return x_out.type_as(x).to(x.device)\n\n\ndef ipex_diffusers(device_supports_fp64=False):\n    diffusers.utils.torch_utils.fourier_filter = fourier_filter\n    if not device_supports_fp64:\n        # get around lazy imports\n        from diffusers.models import embeddings as diffusers_embeddings # pylint: disable=import-error, unused-import # noqa: F401,RUF100\n        from diffusers.models import transformers as diffusers_transformers # pylint: disable=import-error, unused-import # noqa: F401,RUF100\n        from diffusers.models import controlnets as diffusers_controlnets # pylint: disable=import-error, unused-import # noqa: F401,RUF100\n        diffusers.models.embeddings.get_1d_sincos_pos_embed_from_grid = get_1d_sincos_pos_embed_from_grid\n        diffusers.models.embeddings.FluxPosEmbed = FluxPosEmbed\n        diffusers.models.embeddings.apply_rotary_emb = apply_rotary_emb\n        diffusers.models.transformers.transformer_flux.FluxPosEmbed = FluxPosEmbed\n        diffusers.models.transformers.transformer_flux2.Flux2PosEmbed = FluxPosEmbed\n        diffusers.models.transformers.transformer_lumina2.apply_rotary_emb = apply_rotary_emb\n        diffusers.models.transformers.transformer_hidream_image.rope = hidream_rope\n        diffusers.models.transformers.transformer_chroma.FluxPosEmbed = FluxPosEmbed\n        diffusers.models.controlnets.controlnet_flux.FluxPosEmbed = FluxPosEmbed\n"
  },
  {
    "path": "modules/intel/ipex/hijacks.py",
    "content": "import os\nfrom functools import wraps\nfrom contextlib import nullcontext\nimport torch\nimport numpy as np\n\nfrom modules import devices\nfrom .device_prop import cache_size_dict\n\ntorch_version = torch.__version__[:4]\nif torch_version[-1] not in {\"0\", \"1\", \"2\", \"3\", \"4\", \"5\", \"6\", \"7\", \"8\", \"9\"}:\n    torch_version = torch_version[:-1]\ntorch_version = torch_version.split(\".\")\ntorch_version[0], torch_version[1] = int(torch_version[0]), int(torch_version[1])\n\ndevice_supports_fp64 = torch.xpu.has_fp64_dtype() if hasattr(torch.xpu, \"has_fp64_dtype\") else torch.xpu.get_device_properties(devices.device).has_fp64\n\n# pylint: disable=protected-access, missing-function-docstring, line-too-long, unnecessary-lambda, no-else-return\n\n\n@property\ndef is_cuda(self):\n    return self.device.type == \"xpu\" or self.device.type == \"cuda\"\n\n\ndef check_device_type(device, device_type: str) -> bool:\n    if device is None or type(device) not in {str, int, torch.device}:\n        return False\n    else:\n        return bool(torch.device(device).type == device_type)\n\n\ndef check_cuda(device) -> bool:\n    return bool(isinstance(device, int) or check_device_type(device, \"cuda\"))\n\n\ndef return_xpu(device): # keep the device instance type, aka return string if the input is string\n    return devices.device if device is None else f\"xpu:{device.split(':')[-1]}\" if isinstance(device, str) and \":\" in device else f\"xpu:{device}\" if isinstance(device, int) else torch.device(f\"xpu:{device.index}\" if device.index is not None else \"xpu\") if isinstance(device, torch.device) else \"xpu\"\n\n\n# Autocast\noriginal_autocast_init = torch.amp.autocast_mode.autocast.__init__\n@wraps(torch.amp.autocast_mode.autocast.__init__)\ndef autocast_init(self, device_type=None, dtype=None, enabled=True, cache_enabled=None):\n    if device_type is None or check_cuda(device_type):\n        return original_autocast_init(self, device_type=\"xpu\", dtype=dtype, enabled=enabled, cache_enabled=cache_enabled)\n    else:\n        return original_autocast_init(self, device_type=device_type, dtype=dtype, enabled=enabled, cache_enabled=cache_enabled)\n\n\noriginal_grad_scaler_init = torch.amp.grad_scaler.GradScaler.__init__\n@wraps(torch.amp.grad_scaler.GradScaler.__init__)\ndef GradScaler_init(self, device: str = None, init_scale: float = 2.0**16, growth_factor: float = 2.0, backoff_factor: float = 0.5, growth_interval: int = 2000, enabled: bool = True):\n    if device is None or check_cuda(device):\n        return original_grad_scaler_init(self, device=return_xpu(device), init_scale=init_scale, growth_factor=growth_factor, backoff_factor=backoff_factor, growth_interval=growth_interval, enabled=enabled)\n    else:\n        return original_grad_scaler_init(self, device=device, init_scale=init_scale, growth_factor=growth_factor, backoff_factor=backoff_factor, growth_interval=growth_interval, enabled=enabled)\n\n\noriginal_is_autocast_enabled = torch.is_autocast_enabled\n@wraps(torch.is_autocast_enabled)\ndef torch_is_autocast_enabled(device_type=None):\n    if device_type is None or check_cuda(device_type):\n        return original_is_autocast_enabled(return_xpu(device_type))\n    else:\n        return original_is_autocast_enabled(device_type)\n\n\noriginal_get_autocast_dtype = torch.get_autocast_dtype\n@wraps(torch.get_autocast_dtype)\ndef torch_get_autocast_dtype(device_type=None):\n    if device_type is None or check_cuda(device_type) or check_device_type(device_type, \"xpu\"):\n        return devices.dtype or torch.bfloat16\n    else:\n        return original_get_autocast_dtype(device_type)\n\n\n# Latent Antialias CPU Offload:\n# IPEX 2.5 and above has partial support but doesn't really work most of the time.\noriginal_interpolate = torch.nn.functional.interpolate\n@wraps(torch.nn.functional.interpolate)\ndef interpolate(tensor, size=None, scale_factor=None, mode=\"nearest\", align_corners=None, recompute_scale_factor=None, antialias=False): # pylint: disable=too-many-arguments\n    if mode in {\"bicubic\", \"bilinear\"}:\n        return_device = tensor.device\n        return_dtype = tensor.dtype\n        return original_interpolate(tensor.to(\"cpu\", dtype=torch.float32), size=size, scale_factor=scale_factor, mode=mode,\n        align_corners=align_corners, recompute_scale_factor=recompute_scale_factor, antialias=antialias).to(return_device, dtype=return_dtype)\n    else:\n        return original_interpolate(tensor, size=size, scale_factor=scale_factor, mode=mode,\n        align_corners=align_corners, recompute_scale_factor=recompute_scale_factor, antialias=antialias)\n\n\n# SwinIR BF16:\noriginal_functional_pad = torch.nn.functional.pad\n@wraps(torch.nn.functional.pad)\ndef functional_pad(input, pad, mode=\"constant\", value=None):\n    if mode == \"reflect\" and input.dtype == torch.bfloat16:\n        return original_functional_pad(input.to(torch.float32), pad, mode=mode, value=value).to(dtype=torch.bfloat16)\n    else:\n        return original_functional_pad(input, pad, mode=mode, value=value)\n\n\n# Diffusers FreeU\noriginal_fft_fftn = torch.fft.fftn\n@wraps(torch.fft.fftn)\ndef fft_fftn(input, s=None, dim=None, norm=None, *, out=None):\n    return_dtype = input.dtype\n    return original_fft_fftn(input.to(dtype=torch.float32), s=s, dim=dim, norm=norm, out=out).to(dtype=return_dtype)\n\n\n# Diffusers FreeU\noriginal_fft_ifftn = torch.fft.ifftn\n@wraps(torch.fft.ifftn)\ndef fft_ifftn(input, s=None, dim=None, norm=None, *, out=None):\n    return_dtype = input.dtype\n    return original_fft_ifftn(input.to(dtype=torch.float32), s=s, dim=dim, norm=norm, out=out).to(dtype=return_dtype)\n\n\n# Diffusers Float64 (Alchemist GPUs doesn't support 64 bit):\noriginal_from_numpy = torch.from_numpy\n@wraps(torch.from_numpy)\ndef from_numpy(ndarray):\n    if ndarray.dtype == float:\n        return original_from_numpy(ndarray.astype(\"float32\"))\n    else:\n        return original_from_numpy(ndarray)\n\n\noriginal_as_tensor = torch.as_tensor\n@wraps(torch.as_tensor)\ndef as_tensor(data, dtype=None, device=None):\n    if check_cuda(device):\n        device = return_xpu(device)\n    if isinstance(data, np.ndarray) and data.dtype == float and not check_device_type(device, \"cpu\"):\n        return original_as_tensor(data, dtype=torch.float32, device=device)\n    else:\n        return original_as_tensor(data, dtype=dtype, device=device)\n\n\noriginal_torch_tensor = torch.tensor\n@wraps(torch.tensor)\ndef torch_tensor(data, *args, dtype=None, device=None, **kwargs):\n    global device_supports_fp64\n    if check_cuda(device):\n        device = return_xpu(device)\n    if not device_supports_fp64 and check_device_type(device, \"xpu\"):\n        if dtype == torch.float64:\n            dtype = torch.float32\n        elif dtype is None and (hasattr(data, \"dtype\") and (data.dtype == torch.float64 or data.dtype == float)):\n            dtype = torch.float32\n    return original_torch_tensor(data, *args, dtype=dtype, device=device, **kwargs)\n\n\ntorch.Tensor.original_Tensor_to = torch.Tensor.to\n@wraps(torch.Tensor.to)\ndef Tensor_to(self, device=None, *args, **kwargs):\n    global device_supports_fp64\n    if check_cuda(device):\n        device = return_xpu(device)\n    if not device_supports_fp64:\n        if kwargs.get(\"dtype\", None) == torch.float64 and ((device is None and self.device.type == \"xpu\") or (device is not None and torch.device(device).type == \"xpu\")):\n            kwargs[\"dtype\"] = torch.float32\n        elif device == torch.float64 and self.device.type == \"xpu\":\n            device = torch.float32\n    return self.original_Tensor_to(device, *args, **kwargs)\n\n\noriginal_Tensor_cuda = torch.Tensor.cuda\n@wraps(torch.Tensor.cuda)\ndef Tensor_cuda(self, device=None, *args, **kwargs):\n    if device is None or check_cuda(device):\n        return self.to(return_xpu(device), *args, **kwargs)\n    else:\n        return original_Tensor_cuda(self, device, *args, **kwargs)\n\n\noriginal_Tensor_pin_memory = torch.Tensor.pin_memory\n@wraps(torch.Tensor.pin_memory)\ndef Tensor_pin_memory(self, device=None, *args, **kwargs):\n    if device is None or check_cuda(device):\n        return original_Tensor_pin_memory(self, return_xpu(device), *args, **kwargs)\n    else:\n        return original_Tensor_pin_memory(self, device, *args, **kwargs)\n\n\noriginal_UntypedStorage_init = torch.UntypedStorage.__init__\n@wraps(torch.UntypedStorage.__init__)\ndef UntypedStorage_init(*args, device=None, **kwargs):\n    if check_cuda(device):\n        return original_UntypedStorage_init(*args, device=return_xpu(device), **kwargs)\n    else:\n        return original_UntypedStorage_init(*args, device=device, **kwargs)\n\n\nif torch_version[0] > 2 or (torch_version[0] == 2 and torch_version[1] >= 4):\n    original_UntypedStorage_to = torch.UntypedStorage.to\n    @wraps(torch.UntypedStorage.to)\n    def UntypedStorage_to(self, *args, device=None, **kwargs):\n        if check_cuda(device):\n            return original_UntypedStorage_to(self, *args, device=return_xpu(device), **kwargs)\n        else:\n            return original_UntypedStorage_to(self, *args, device=device, **kwargs)\n\n    original_UntypedStorage_cuda = torch.UntypedStorage.cuda\n    @wraps(torch.UntypedStorage.cuda)\n    def UntypedStorage_cuda(self, device=None, non_blocking=False, **kwargs):\n        if device is None or check_cuda(device):\n            return self.to(device=return_xpu(device), non_blocking=non_blocking, **kwargs)\n        else:\n            return original_UntypedStorage_cuda(self, device=device, non_blocking=non_blocking, **kwargs)\n\n\noriginal_torch_empty = torch.empty\n@wraps(torch.empty)\ndef torch_empty(*args, device=None, **kwargs):\n    if check_cuda(device):\n        return original_torch_empty(*args, device=return_xpu(device), **kwargs)\n    else:\n        return original_torch_empty(*args, device=device, **kwargs)\n\n\noriginal_torch_randn = torch.randn\n@wraps(torch.randn)\ndef torch_randn(*args, device=None, dtype=None, **kwargs):\n    if check_cuda(device):\n        return original_torch_randn(*args, device=return_xpu(device), dtype=dtype, **kwargs)\n    else:\n        return original_torch_randn(*args, device=device, dtype=dtype, **kwargs)\n\n\noriginal_torch_ones = torch.ones\n@wraps(torch.ones)\ndef torch_ones(*args, device=None, **kwargs):\n    if check_cuda(device):\n        return original_torch_ones(*args, device=return_xpu(device), **kwargs)\n    else:\n        return original_torch_ones(*args, device=device, **kwargs)\n\n\noriginal_torch_zeros = torch.zeros\n@wraps(torch.zeros)\ndef torch_zeros(*args, device=None, **kwargs):\n    if check_cuda(device):\n        return original_torch_zeros(*args, device=return_xpu(device), **kwargs)\n    else:\n        return original_torch_zeros(*args, device=device, **kwargs)\n\n\noriginal_torch_full = torch.full\n@wraps(torch.full)\ndef torch_full(*args, device=None, **kwargs):\n    if check_cuda(device):\n        return original_torch_full(*args, device=return_xpu(device), **kwargs)\n    else:\n        return original_torch_full(*args, device=device, **kwargs)\n\n\noriginal_torch_arange = torch.arange\n@wraps(torch.arange)\ndef torch_arange(*args, device=None, dtype=None, **kwargs):\n    global device_supports_fp64\n    if check_cuda(device):\n        if not device_supports_fp64 and dtype == torch.float64:\n            dtype = torch.float32\n        return original_torch_arange(*args, device=return_xpu(device), dtype=dtype, **kwargs)\n    else:\n        if not device_supports_fp64 and check_device_type(device, \"xpu\") and dtype == torch.float64:\n            dtype = torch.float32\n        return original_torch_arange(*args, device=device, dtype=dtype, **kwargs)\n\n\noriginal_torch_linspace = torch.linspace\n@wraps(torch.linspace)\ndef torch_linspace(*args, device=None, dtype=None, **kwargs):\n    global device_supports_fp64\n    if check_cuda(device):\n        if not device_supports_fp64 and dtype == torch.float64:\n            dtype = torch.float32\n        return original_torch_linspace(*args, device=return_xpu(device), dtype=dtype, **kwargs)\n    else:\n        if not device_supports_fp64 and check_device_type(device, \"xpu\") and dtype == torch.float64:\n            dtype = torch.float32\n        return original_torch_linspace(*args, device=device, dtype=dtype, **kwargs)\n\n\noriginal_torch_eye = torch.eye\n@wraps(torch.eye)\ndef torch_eye(*args, device=None, **kwargs):\n    if check_cuda(device):\n        return original_torch_eye(*args, device=return_xpu(device), **kwargs)\n    else:\n        return original_torch_eye(*args, device=device, **kwargs)\n\n\noriginal_torch_load = torch.load\n@wraps(torch.load)\ndef torch_load(f, map_location=None, *args, **kwargs):\n    if map_location is None or check_cuda(map_location):\n        return original_torch_load(f, *args, map_location=return_xpu(map_location), **kwargs)\n    else:\n        return original_torch_load(f, *args, map_location=map_location, **kwargs)\n\n\n@wraps(torch.cuda.synchronize)\ndef torch_cuda_synchronize(device=None):\n    if check_cuda(device):\n        return torch.xpu.synchronize(return_xpu(device))\n    else:\n        return torch.xpu.synchronize(device)\n\n\n@wraps(torch.cuda.device)\ndef torch_cuda_device(device):\n    if check_cuda(device):\n        return torch.xpu.device(return_xpu(device))\n    else:\n        return torch.xpu.device(device)\n\n\n@wraps(torch.cuda.set_device)\ndef torch_cuda_set_device(device):\n    if check_cuda(device):\n        torch.xpu.set_device(return_xpu(device))\n    else:\n        torch.xpu.set_device(device)\n\n\n@wraps(torch.cuda.get_device_properties)\ndef get_device_properties(device=None):\n    device_prop = torch.xpu.get_device_properties(device)\n    new_keys = {\n        \"major\": 12,\n        \"minor\": 1,\n        \"multi_processor_count\": device_prop.gpu_subslice_count,\n    }\n    if not hasattr(device_prop, \"L2_cache_size\"):\n        new_keys[\"L2_cache_size\"] = cache_size_dict.get(getattr(device_prop, \"device_id\", 0x56A0), cache_size_dict[0x0000])\n    return DeviceProperties(device_prop, new_keys)\n\n\nclass DeviceProperties():\n    def __init__(self, device_prop, new_keys):\n        for key in dir(device_prop):\n            if not key.startswith(\"__\"):\n                setattr(self, key, getattr(device_prop, key))\n        for key, value in new_keys.items():\n            setattr(self, key, value)\n\n\n# torch.Generator has to be a class for isinstance checks\noriginal_torch_Generator = torch.Generator\nclass torch_Generator(original_torch_Generator):\n    def __new__(self, device=None):\n        # can't hijack __init__ because of C override so use return super().__new__\n        if check_cuda(device):\n            return super().__new__(self, return_xpu(device))\n        else:\n            return super().__new__(self, device)\n\n\n# Hijack Functions:\ndef ipex_hijacks():\n    global device_supports_fp64\n    if torch_version[0] > 2 or (torch_version[0] == 2 and torch_version[1] >= 4):\n        torch.UntypedStorage.cuda = UntypedStorage_cuda\n        torch.UntypedStorage.to = UntypedStorage_to\n    torch.tensor = torch_tensor\n    torch.Tensor.to = Tensor_to\n    torch.Tensor.cuda = Tensor_cuda\n    torch.Tensor.pin_memory = Tensor_pin_memory\n    torch.UntypedStorage.__init__ = UntypedStorage_init\n    torch.empty = torch_empty\n    torch.randn = torch_randn\n    torch.ones = torch_ones\n    torch.zeros = torch_zeros\n    torch.full = torch_full\n    torch.arange = torch_arange\n    torch.linspace = torch_linspace\n    torch.eye = torch_eye\n    torch.load = torch_load\n    torch.cuda.synchronize = torch_cuda_synchronize\n    torch.cuda.device = torch_cuda_device\n    torch.cuda.set_device = torch_cuda_set_device\n    torch.cuda.get_device_properties = get_device_properties\n\n    torch.Generator = torch_Generator\n    torch._C.Generator = torch_Generator\n\n    torch.UntypedStorage.is_cuda = is_cuda\n    torch.amp.autocast_mode.autocast.__init__ = autocast_init\n\n    torch.nn.functional.interpolate = interpolate\n    torch.nn.functional.pad = functional_pad\n    torch.fft.fftn = fft_fftn\n    torch.fft.ifftn = fft_ifftn\n\n    if not device_supports_fp64:\n        torch.from_numpy = from_numpy\n        torch.as_tensor = as_tensor\n\n    try:\n        import torchvision\n        torchvision.transforms._functional_tensor.interpolate = interpolate\n    except Exception:\n        pass\n\n    if os.environ.get(\"IPEX_FORCE_ATTENTION_SLICE\", \"0\") == \"0\":\n        if torch_version[0] > 2 or (torch_version[0] == 2 and torch_version[1] >= 7):\n            use_dynamic_attention = False # torch 2.7 has flash atten support\n        else:\n            use_dynamic_attention = True\n    else:\n        use_dynamic_attention = bool(os.environ.get(\"IPEX_FORCE_ATTENTION_SLICE\", \"0\") == \"1\")\n\n    if use_dynamic_attention:\n        from .attention import dynamic_scaled_dot_product_attention\n        torch.nn.functional.scaled_dot_product_attention = dynamic_scaled_dot_product_attention\n\n    # AMP:\n    torch.amp.grad_scaler.GradScaler.__init__ = GradScaler_init\n    torch.is_autocast_enabled = torch_is_autocast_enabled\n    torch.get_autocast_gpu_dtype = torch_get_autocast_dtype\n    torch.get_autocast_dtype = torch_get_autocast_dtype\n\n    if hasattr(torch.xpu, \"amp\"):\n        if not hasattr(torch.xpu.amp, \"custom_fwd\"):\n            torch.xpu.amp.custom_fwd = torch.cuda.amp.custom_fwd\n            torch.xpu.amp.custom_bwd = torch.cuda.amp.custom_bwd\n        if not hasattr(torch.xpu.amp, \"GradScaler\"):\n            torch.xpu.amp.GradScaler = torch.amp.grad_scaler.GradScaler\n        torch.cuda.amp = torch.xpu.amp\n    else:\n        if not hasattr(torch.amp, \"custom_fwd\"):\n            torch.amp.custom_fwd = torch.cuda.amp.custom_fwd\n            torch.amp.custom_bwd = torch.cuda.amp.custom_bwd\n        torch.cuda.amp = torch.amp\n\n    if not hasattr(torch.cuda.amp, \"common\"):\n        torch.cuda.amp.common = nullcontext()\n    torch.cuda.amp.common.amp_definitely_not_available = lambda: False\n\n    return device_supports_fp64\n"
  },
  {
    "path": "modules/intel/openvino/__init__.py",
    "content": "import os\nimport sys\nimport torch\nimport nncf\n\nfrom openvino.frontend.pytorch.torchdynamo.partition import Partitioner\nfrom openvino.frontend.pytorch.fx_decoder import TorchFXPythonDecoder\nfrom openvino.frontend import FrontEndManager\nfrom openvino import Core, Type, PartialShape, serialize\nfrom openvino.properties import hint as ov_hints\n\nfrom torch._dynamo.backends.common import fake_tensor_unsupported\nfrom torch._dynamo.backends.registry import register_backend\nfrom torch.fx.experimental.proxy_tensor import make_fx\nfrom torch.fx import GraphModule\nfrom torch.utils._pytree import tree_flatten\n\nfrom types import MappingProxyType\nfrom hashlib import sha256\nimport functools\n\nfrom modules import shared, devices, sd_models\n\n\n# importing openvino.runtime forces DeprecationWarning to \"always\"\n# And Intel's own libs (NNCF) imports the deprecated module\n# Don't allow openvino to override warning filters:\ntry:\n    import warnings\n    filterwarnings = warnings.filterwarnings\n    warnings.filterwarnings = lambda *args, **kwargs: None\n    import openvino.runtime # pylint: disable=unused-import\n    warnings.filterwarnings = filterwarnings\nexcept Exception:\n    pass\n\ntry:\n    # silence the pytorch version warning\n    nncf.common.logging.logger.warn_bkc_version_mismatch = lambda *args, **kwargs: None\nexcept Exception:\n    pass\n\n# Set default params\ntorch._dynamo.config.cache_size_limit = max(64, torch._dynamo.config.cache_size_limit) # pylint: disable=protected-access\ntorch._dynamo.eval_frame.check_if_dynamo_supported = lambda: True # pylint: disable=protected-access\nif hasattr(torch._dynamo.config, \"inline_inbuilt_nn_modules\"):\n    torch._dynamo.config.inline_inbuilt_nn_modules = False # pylint: disable=protected-access\n\n\nDEFAULT_OPENVINO_PYTHON_CONFIG = MappingProxyType(\n    {\n        \"use_python_fusion_cache\": True,\n        \"allow_single_op_fusion\": True,\n    },\n)\n\ndtype_mapping = {\n        torch.float32: Type.f32,\n        torch.float64: Type.f64,\n        torch.float16: Type.f16,\n        torch.bfloat16: Type.bf16,\n        torch.float8_e4m3fn: Type.f8e4m3,\n        torch.float8_e5m2: Type.f8e5m2,\n        torch.int64: Type.i64,\n        torch.uint64: Type.u64,\n        torch.int32: Type.i32,\n        torch.uint32: Type.u32,\n        torch.int8: Type.i8,\n        torch.uint8: Type.u8,\n        torch.bool: Type.boolean\n    }\nif hasattr(torch, \"float8_e8m0fnu\"):\n    dtype_mapping[torch.float8_e8m0fnu] = Type.f8e8m0\n\n\nwarned = False\ndef warn_once(msg):\n    global warned\n    if not warned:\n        shared.log.warning(msg)\n        warned = True\n\nclass OpenVINOGraphModule(torch.nn.Module):\n    def __init__(self, gm, partition_id, use_python_fusion_cache, model_hash_str: str = None, file_name=\"\", int_inputs=[]):\n        super().__init__()\n        self.gm = gm\n        self.int_inputs = int_inputs\n        self.partition_id = partition_id\n        self.executor_parameters = {\"use_python_fusion_cache\": use_python_fusion_cache,\n                                    \"model_hash_str\": model_hash_str}\n        self.file_name = file_name\n\n    def __call__(self, *args):\n        ov_inputs = []\n        for arg in args:\n            if not isinstance(arg, int):\n                ov_inputs.append(arg)\n        for idx, int_input in self.int_inputs:\n            ov_inputs.insert(idx, int_input)\n        result = openvino_execute(self.gm, *ov_inputs, executor_parameters=self.executor_parameters, partition_id=self.partition_id, file_name=self.file_name)\n        return result\n\n\ndef get_device_list():\n    core = Core()\n    return core.available_devices\n\n\ndef get_device():\n    if hasattr(shared, \"opts\") and len(shared.opts.openvino_devices) == 1:\n        return shared.opts.openvino_devices[0]\n\n    core = Core()\n    if hasattr(shared, \"opts\") and len(shared.opts.openvino_devices) > 1:\n        device = \"\"\n        available_devices = shared.opts.openvino_devices.copy()\n        if \"CPU\" in shared.opts.openvino_devices:\n            available_devices.remove(\"CPU\")\n        for hetero_device in available_devices:\n            device = f\"{device},{hetero_device}\"\n        if \"CPU\" in shared.opts.openvino_devices:\n            device = f\"{device},CPU\"\n        device = f\"HETERO:{device[1:]}\"\n    elif any(openvino_cpu in cpu_module.lower() for cpu_module in shared.cmd_opts.use_cpu for openvino_cpu in [\"openvino\", \"all\"]):\n        device = \"CPU\"\n    elif shared.cmd_opts.device_id is not None:\n        device = f\"GPU.{shared.cmd_opts.device_id}\"\n        if device not in core.available_devices:\n            device = \"GPU.0\" if \"GPU.0\" in core.available_devices else \"GPU\" if \"GPU\" in core.available_devices else \"CPU\"\n    elif \"GPU\" in core.available_devices:\n        device = \"GPU\"\n    elif \"GPU.1\" in core.available_devices:\n        device = \"GPU.1\"\n    elif \"GPU.0\" in core.available_devices:\n        device = \"GPU.0\"\n    else:\n        device = core.available_devices[-1]\n        warn_once(f\"OpenVINO: device={device} no compatible GPU detected\")\n    return device\n\n\ndef get_openvino_device():\n    core = Core()\n    try:\n        return core.get_property(get_device(), \"FULL_DEVICE_NAME\")\n    except Exception:\n        return f\"OpenVINO {get_device()}\"\n\n\ndef cached_model_name(model_hash_str, device, args, cache_root, reversed = False):\n    if model_hash_str is None:\n        return None\n\n    model_cache_dir = cache_root + \"/model/\"\n\n    try:\n        os.makedirs(model_cache_dir, exist_ok=True)\n        file_name = model_cache_dir + model_hash_str + \"_\" + device\n    except OSError as error:\n        shared.log.error(f\"Cache directory {cache_root} cannot be created. Model caching is disabled. Error: {error}\")\n        return None\n\n    inputs_str = \"\"\n    for input_data in args:\n        if isinstance(input_data, torch.SymInt):\n            if reversed:\n                inputs_str = \"_\" + \"torch.SymInt[]\" + inputs_str\n            else:\n                inputs_str += \"_\" + \"torch.SymInt[]\"\n        elif isinstance(input_data, int):\n            pass\n        else:\n            if reversed:\n                inputs_str = \"_\" + str(input_data.type()) + str(input_data.size())[11:-1].replace(\" \", \"\") + inputs_str\n            else:\n                inputs_str += \"_\" + str(input_data.type()) + str(input_data.size())[11:-1].replace(\" \", \"\")\n    inputs_str = sha256(inputs_str.encode('utf-8')).hexdigest()\n    file_name += \"_\" + inputs_str\n\n    return file_name\n\n\ndef execute(\n    gm,\n    *args,\n    executor = \"openvino\",\n    executor_parameters = None,\n    file_name = \"\"\n):\n    if executor == \"openvino\":\n        return openvino_execute_partitioned(gm, *args, executor_parameters=executor_parameters, file_name=file_name)\n    elif executor == \"strictly_openvino\":\n        return openvino_execute(gm, *args, executor_parameters=executor_parameters, file_name=file_name)\n\n    msg = \"Received unexpected value for 'executor': {0}. Allowed values are: openvino, strictly_openvino.\".format(executor)\n    raise ValueError(msg)\n\n\ndef execute_cached(compiled_model, *args):\n    flat_args, _ = tree_flatten(args)\n    ov_inputs = [a.detach().cpu().numpy() for a in flat_args]\n\n    if (shared.compiled_model_state.cn_model == []):\n        ov_inputs.reverse()\n\n    res = compiled_model(ov_inputs)\n    result = [torch.from_numpy(res[out]) for out in compiled_model.outputs]\n    return result\n\ndef openvino_compile(gm: GraphModule, *example_inputs, model_hash_str: str = None, file_name=\"\"):\n    core = Core()\n\n    device = get_device()\n    global dont_use_4bit_nncf\n    global dont_use_nncf\n    global dont_use_quant\n\n    if file_name is not None and os.path.isfile(file_name + \".xml\") and os.path.isfile(file_name + \".bin\"):\n        om = core.read_model(file_name + \".xml\")\n    else:\n        fe_manager = FrontEndManager()\n        fe = fe_manager.load_by_framework(\"pytorch\")\n\n        input_shapes = []\n        input_types = []\n        for input_data in example_inputs:\n            if isinstance(input_data, torch.SymInt):\n                input_types.append(torch.SymInt)\n                input_shapes.append(torch.Size([]))\n            elif isinstance(input_data, int):\n                pass\n            else:\n                input_types.append(input_data.type())\n                input_shapes.append(input_data.size())\n\n        decoder = TorchFXPythonDecoder(gm, input_shapes=input_shapes, input_types=input_types)\n        im = fe.load(decoder)\n        om = fe.convert(im)\n\n        if file_name is not None:\n            serialize(om, file_name + \".xml\", file_name + \".bin\")\n            if (shared.compiled_model_state.cn_model != []):\n                f = open(file_name + \".txt\", \"w\")\n                for input_data in example_inputs:\n                    f.write(str(input_data.size()))\n                    f.write(\"\\n\")\n                f.close()\n\n    idx_minus = 0\n    for idx, input_data in enumerate(example_inputs):\n        if isinstance(input_data, int):\n            idx_minus += 1\n        else:\n            om.inputs[idx-idx_minus].get_node().set_element_type(dtype_mapping[input_data.dtype])\n            om.inputs[idx-idx_minus].get_node().set_partial_shape(PartialShape(list(input_data.shape)))\n    om.validate_nodes_and_infer_types()\n\n    if shared.opts.nncf_quantize and not dont_use_quant:\n        new_inputs = []\n        for idx, _ in enumerate(example_inputs):\n            new_inputs.append(example_inputs[idx].detach().cpu().numpy())\n        new_inputs = [new_inputs]\n        if shared.opts.nncf_quantize_mode == \"INT8\":\n            om = nncf.quantize(om, nncf.Dataset(new_inputs))\n        else:\n            om = nncf.quantize(om, nncf.Dataset(new_inputs), mode=getattr(nncf.QuantizationMode, shared.opts.nncf_quantize_mode),\n                advanced_parameters=nncf.quantization.advanced_parameters.AdvancedQuantizationParameters(\n                overflow_fix=nncf.quantization.advanced_parameters.OverflowFix.DISABLE, backend_params=None))\n\n    if shared.opts.nncf_compress_weights and not dont_use_nncf:\n        if dont_use_4bit_nncf or shared.opts.nncf_compress_weights_mode == \"INT8\":\n            om = nncf.compress_weights(om)\n        else:\n            compress_group_size = shared.opts.nncf_compress_weights_group_size if shared.opts.nncf_compress_weights_group_size != 0 else None\n            compress_ratio = shared.opts.nncf_compress_weights_raito if shared.opts.nncf_compress_weights_raito != 0 else None\n            om = nncf.compress_weights(om, mode=getattr(nncf.CompressWeightsMode, shared.opts.nncf_compress_weights_mode), group_size=compress_group_size, ratio=compress_ratio)\n\n    hints = {}\n    if shared.opts.openvino_accuracy == \"performance\":\n        hints[ov_hints.execution_mode] = ov_hints.ExecutionMode.PERFORMANCE\n    elif shared.opts.openvino_accuracy == \"accuracy\":\n        hints[ov_hints.execution_mode] = ov_hints.ExecutionMode.ACCURACY\n    if model_hash_str is not None:\n        hints['CACHE_DIR'] = shared.opts.openvino_cache_path + '/blob'\n    core.set_property(hints)\n    dont_use_nncf = False\n    dont_use_quant = False\n    dont_use_4bit_nncf = False\n\n    compiled_model = core.compile_model(om, device)\n    return compiled_model\n\n\ndef openvino_compile_cached_model(cached_model_path, *example_inputs):\n    core = Core()\n    om = core.read_model(cached_model_path + \".xml\")\n\n    global dont_use_4bit_nncf\n    global dont_use_nncf\n    global dont_use_quant\n\n    for idx, input_data in enumerate(example_inputs):\n        om.inputs[idx].get_node().set_element_type(dtype_mapping[input_data.dtype])\n        om.inputs[idx].get_node().set_partial_shape(PartialShape(list(input_data.shape)))\n    om.validate_nodes_and_infer_types()\n\n    if shared.opts.nncf_quantize and not dont_use_quant:\n        new_inputs = []\n        for idx, _ in enumerate(example_inputs):\n            new_inputs.append(example_inputs[idx].detach().cpu().numpy())\n        new_inputs = [new_inputs]\n        if shared.opts.nncf_quantize_mode == \"INT8\":\n            om = nncf.quantize(om, nncf.Dataset(new_inputs))\n        else:\n            om = nncf.quantize(om, nncf.Dataset(new_inputs), mode=getattr(nncf.QuantizationMode, shared.opts.nncf_quantize_mode),\n                advanced_parameters=nncf.quantization.advanced_parameters.AdvancedQuantizationParameters(\n                overflow_fix=nncf.quantization.advanced_parameters.OverflowFix.DISABLE, backend_params=None))\n\n    if shared.opts.nncf_compress_weights and not dont_use_nncf:\n        if dont_use_4bit_nncf or shared.opts.nncf_compress_weights_mode == \"INT8\":\n            om = nncf.compress_weights(om)\n        else:\n            compress_group_size = shared.opts.nncf_compress_weights_group_size if shared.opts.nncf_compress_weights_group_size != 0 else None\n            compress_ratio = shared.opts.nncf_compress_weights_raito if shared.opts.nncf_compress_weights_raito != 0 else None\n            om = nncf.compress_weights(om, mode=getattr(nncf.CompressWeightsMode, shared.opts.nncf_compress_weights_mode), group_size=compress_group_size, ratio=compress_ratio)\n\n    hints = {'CACHE_DIR': shared.opts.openvino_cache_path + '/blob'}\n    if shared.opts.openvino_accuracy == \"performance\":\n        hints[ov_hints.execution_mode] = ov_hints.ExecutionMode.PERFORMANCE\n    elif shared.opts.openvino_accuracy == \"accuracy\":\n        hints[ov_hints.execution_mode] = ov_hints.ExecutionMode.ACCURACY\n    core.set_property(hints)\n    dont_use_nncf = False\n    dont_use_quant = False\n    dont_use_4bit_nncf = False\n\n    compiled_model = core.compile_model(om, get_device())\n    return compiled_model\n\n\ndef openvino_execute(gm: GraphModule, *args, executor_parameters=None, partition_id=None, file_name=\"\"):\n    if hasattr(gm, \"partition_id\"):\n        partition_id = gm.partition_id\n    if hasattr(gm, \"gm\"):\n        gm = gm.gm\n    executor_parameters = executor_parameters or DEFAULT_OPENVINO_PYTHON_CONFIG\n\n    use_cache = partition_id is not None and executor_parameters.get(\n        \"use_python_fusion_cache\",\n        DEFAULT_OPENVINO_PYTHON_CONFIG[\"use_python_fusion_cache\"],\n    )\n\n    model_hash_str = executor_parameters.get(\"model_hash_str\", None)\n    if model_hash_str is not None:\n        model_hash_str = model_hash_str + str(partition_id) if partition_id is not None else \"\"\n\n    if use_cache and (partition_id in shared.compiled_model_state.compiled_cache.keys()):\n        compiled = shared.compiled_model_state.compiled_cache[partition_id]\n        req = shared.compiled_model_state.req_cache[partition_id]\n    else:\n        if (shared.compiled_model_state.cn_model != [] and file_name is not None\n                and os.path.isfile(file_name + \".xml\") and os.path.isfile(file_name + \".bin\")):\n            compiled = openvino_compile_cached_model(file_name, *args)\n        else:\n            compiled = openvino_compile(gm, *args, model_hash_str=model_hash_str, file_name=file_name)\n        if use_cache:\n            shared.compiled_model_state.compiled_cache[partition_id] = compiled\n        req = compiled.create_infer_request()\n        if use_cache:\n            shared.compiled_model_state.req_cache[partition_id] = req\n\n    flat_args, _ = tree_flatten(args)\n    ov_inputs = []\n    for arg in flat_args:\n        if not isinstance(arg, int):\n            ov_inputs.append((arg.detach().cpu().numpy()))\n\n    res = req.infer(ov_inputs, share_inputs=True, share_outputs=True)\n\n    results1 = [torch.from_numpy(res[out]) for out in compiled.outputs]\n    if len(results1) == 1:\n        return results1[0]\n    return results1\n\n\ndef openvino_execute_partitioned(gm: GraphModule, *args, executor_parameters=None, file_name=\"\"):\n    executor_parameters = executor_parameters or DEFAULT_OPENVINO_PYTHON_CONFIG\n\n    use_python_fusion_cache = executor_parameters.get(\n        \"use_python_fusion_cache\",\n        DEFAULT_OPENVINO_PYTHON_CONFIG[\"use_python_fusion_cache\"],\n    )\n    model_hash_str = executor_parameters.get(\"model_hash_str\", None)\n\n    if file_name:\n        signature = file_name.rsplit(\"/\", maxsplit=1)[-1].split(\"_fs\", maxsplit=1)[0]\n    else:\n        signature = \"signature\"\n    if model_hash_str is None:\n        file_name = None\n\n    idx_minus = 0\n    int_inputs = []\n    for idx, input_data in enumerate(args):\n        if isinstance(input_data, int):\n            int_inputs.append([idx, input_data])\n            idx_minus += 1\n        elif isinstance(input_data, torch.Tensor):\n            signature = signature + \"_\" + str(idx-idx_minus) + \":\" + str(input_data.type())[6:] + \":\" + str(input_data.size())[11:-1].replace(\" \", \"\")\n        else:\n            signature = signature + \"_\" + str(idx-idx_minus) + \":\" + type(input_data).__name__ + \":val(\" + str(input_data) + \")\"\n\n    if signature not in shared.compiled_model_state.partitioned_modules:\n        shared.compiled_model_state.partitioned_modules[signature] = partition_graph(gm,  use_python_fusion_cache=use_python_fusion_cache,\n                                                        model_hash_str=model_hash_str, file_name=file_name, int_inputs=int_inputs)\n\n    ov_inputs = []\n    for arg in args:\n        if not isinstance(arg, int):\n            ov_inputs.append(arg)\n    for idx, int_input in shared.compiled_model_state.partitioned_modules[signature][1]:\n        ov_inputs.insert(idx, int_input)\n    return shared.compiled_model_state.partitioned_modules[signature][0](*ov_inputs)\n\n\ndef partition_graph(gm: GraphModule, use_python_fusion_cache: bool, model_hash_str: str = None, file_name=\"\", int_inputs=[]):\n    for node in gm.graph.nodes:\n        if node.op == \"call_module\" and \"fused_\" in node.name:\n            openvino_submodule = getattr(gm, node.name)\n            if isinstance(openvino_submodule, OpenVINOGraphModule):\n                int_inputs = openvino_submodule.int_inputs\n                continue\n            gm.delete_submodule(node.target)\n            gm.add_submodule(\n                node.target,\n                OpenVINOGraphModule(\n                    openvino_submodule, shared.compiled_model_state.partition_id, use_python_fusion_cache,\n                    model_hash_str=model_hash_str, file_name=file_name, int_inputs=int_inputs),\n            )\n            shared.compiled_model_state.partition_id += 1\n\n    return gm, int_inputs\n\n\ndef generate_subgraph_str(tensor):\n    if hasattr(tensor, \"weight\"):\n        shared.compiled_model_state.model_hash_str = shared.compiled_model_state.model_hash_str + sha256(str(tensor.weight).encode('utf-8')).hexdigest()\n    return tensor\n\n\ndef get_subgraph_type(tensor):\n    global subgraph_type\n    subgraph_type.append(type(tensor))\n    return tensor\n\n\n@fake_tensor_unsupported\ndef openvino_fx(subgraph, example_inputs, options=None):\n    global dont_use_4bit_nncf\n    global dont_use_nncf\n    global dont_use_quant\n    global subgraph_type\n\n    dont_use_4bit_nncf = False\n    dont_use_nncf = False\n    dont_use_quant = False\n    dont_use_faketensors = False\n    executor_parameters = None\n    inputs_reversed = False\n    maybe_fs_cached_name = None\n\n    subgraph_type = []\n    subgraph.apply(get_subgraph_type)\n\n    # SD 1.5 / SDXL VAE\n    if (subgraph_type[0] is torch.nn.modules.conv.Conv2d and\n        subgraph_type[1] is torch.nn.modules.conv.Conv2d and\n        subgraph_type[2] is torch.nn.modules.normalization.GroupNorm and\n        subgraph_type[3] is torch.nn.modules.activation.SiLU):\n\n        dont_use_4bit_nncf = True\n        dont_use_nncf = bool(\"VAE\" not in shared.opts.nncf_compress_weights)\n        dont_use_quant = bool(\"VAE\" not in shared.opts.nncf_quantize)\n\n    # SD 1.5 / SDXL Text Encoder\n    elif (subgraph_type[0] is torch.nn.modules.sparse.Embedding and\n        subgraph_type[1] is torch.nn.modules.sparse.Embedding and\n        subgraph_type[2] is torch.nn.modules.normalization.LayerNorm and\n        subgraph_type[3] is torch.nn.modules.linear.Linear):\n\n        dont_use_faketensors = True\n        dont_use_nncf = bool(\"TE\" not in shared.opts.nncf_compress_weights)\n        dont_use_quant = bool(\"TE\" not in shared.opts.nncf_quantize)\n\n    # Create a hash to be used for caching\n    shared.compiled_model_state.model_hash_str = \"\"\n    subgraph.apply(generate_subgraph_str)\n    #shared.compiled_model_state.model_hash_str = shared.compiled_model_state.model_hash_str + sha256(subgraph.code.encode('utf-8')).hexdigest()\n    shared.compiled_model_state.model_hash_str = sha256(shared.compiled_model_state.model_hash_str.encode('utf-8')).hexdigest()\n\n    # Check if the model was fully supported and already cached\n    example_inputs.reverse()\n    inputs_reversed = True\n    maybe_fs_cached_name = cached_model_name(shared.compiled_model_state.model_hash_str + \"_fs\", get_device(), example_inputs, shared.opts.openvino_cache_path)\n    if not shared.opts.openvino_disable_model_caching:\n        os.environ.setdefault('OPENVINO_TORCH_MODEL_CACHING', \"1\")\n        executor_parameters = {\"model_hash_str\": shared.compiled_model_state.model_hash_str}\n\n        if os.path.isfile(maybe_fs_cached_name + \".xml\") and os.path.isfile(maybe_fs_cached_name + \".bin\"):\n            example_inputs_reordered = []\n            if (os.path.isfile(maybe_fs_cached_name + \".txt\")):\n                f = open(maybe_fs_cached_name + \".txt\", \"r\")\n                for input_data in example_inputs:\n                    shape = f.readline()\n                    if (str(input_data.size()) != shape):\n                        for idx1, input_data1 in enumerate(example_inputs):\n                            if (str(input_data1.size()).strip() == str(shape).strip()):\n                                example_inputs_reordered.append(example_inputs[idx1])\n                example_inputs = example_inputs_reordered\n\n            if dont_use_faketensors or shared.opts.openvino_disable_memory_cleanup:\n                pass\n            else:\n                # Delete unused subgraphs\n                subgraph = subgraph.apply(sd_models.convert_to_faketensors)\n                devices.torch_gc(force=True, reason='openvino')\n\n            # Model is fully supported and already cached. Run the cached OV model directly.\n            compiled_model = openvino_compile_cached_model(maybe_fs_cached_name, *example_inputs)\n\n            def _call(*args):\n                if (shared.compiled_model_state.cn_model != [] and str(shared.compiled_model_state.cn_model) in maybe_fs_cached_name):\n                    args_reordered = []\n                    if (os.path.isfile(maybe_fs_cached_name + \".txt\")):\n                        f = open(maybe_fs_cached_name + \".txt\", \"r\")\n                        for input_data in args:\n                            shape = f.readline()\n                            if (str(input_data.size()) != shape):\n                                for idx1, input_data1 in enumerate(args):\n                                    if (str(input_data1.size()).strip() == str(shape).strip()):\n                                        args_reordered.append(args[idx1])\n                    args = args_reordered\n\n                res = execute_cached(compiled_model, *args)\n                shared.compiled_model_state.partition_id = shared.compiled_model_state.partition_id + 1\n                return res\n            return _call\n    else:\n        os.environ.setdefault('OPENVINO_TORCH_MODEL_CACHING', \"0\")\n\n    if inputs_reversed:\n        example_inputs.reverse()\n    model = make_fx(subgraph)(*example_inputs)\n    for node in model.graph.nodes:\n        if node.target == torch.ops.aten.mul_.Tensor:\n            node.target = torch.ops.aten.mul.Tensor\n        elif node.target == torch.ops.aten._unsafe_index.Tensor:\n            node.target = torch.ops.aten.index.Tensor\n    with devices.inference_context():\n        model.eval()\n    partitioner = Partitioner(options=None)\n    compiled_model = partitioner.make_partitions(model, options=None)\n\n    if executor_parameters is not None and 'model_hash_str' in executor_parameters:\n        # Check if the model is fully supported.\n        fully_supported = partitioner.check_fully_supported(compiled_model)\n        if fully_supported:\n            executor_parameters[\"model_hash_str\"] += \"_fs\"\n\n    def _call(*args):\n        res = execute(compiled_model, *args, executor=\"openvino\", executor_parameters=executor_parameters, file_name=maybe_fs_cached_name)\n        return res\n    return _call\n\n\nif \"openvino_fx\" not in torch.compiler.list_backends():\n    register_backend(compiler_fn=openvino_fx, name=\"openvino_fx\")\n"
  },
  {
    "path": "modules/interrogate/deepbooru.py",
    "content": "import os\nimport re\nimport threading\nimport torch\nimport numpy as np\nfrom PIL import Image\nfrom modules import modelloader, paths, devices, shared\n\nre_special = re.compile(r'([\\\\()])')\nload_lock = threading.Lock()\n\n\nclass DeepDanbooru:\n    def __init__(self):\n        self.model = None\n\n    def load(self):\n        with load_lock:\n            if self.model is not None:\n                return\n            model_path = os.path.join(paths.models_path, \"DeepDanbooru\")\n            shared.log.debug(f'Interrogate load: module=DeepDanbooru folder=\"{model_path}\"')\n            files = modelloader.load_models(\n                model_path=model_path,\n                model_url='https://github.com/AUTOMATIC1111/TorchDeepDanbooru/releases/download/v1/model-resnet_custom_v3.pt',\n                ext_filter=[\".pt\"],\n                download_name='model-resnet_custom_v3.pt',\n            )\n\n            from modules.interrogate.deepbooru_model import DeepDanbooruModel\n            self.model = DeepDanbooruModel()\n            self.model.load_state_dict(torch.load(files[0], map_location=\"cpu\"))\n            self.model.eval()\n            self.model.to(devices.cpu, devices.dtype)\n\n    def start(self):\n        self.load()\n        self.model.to(devices.device)\n\n    def stop(self):\n        if shared.opts.interrogate_offload:\n            self.model.to(devices.cpu)\n        devices.torch_gc()\n\n    def tag(self, pil_image, **kwargs):\n        self.start()\n        res = self.tag_multi(pil_image, **kwargs)\n        self.stop()\n\n        return res\n\n    def tag_multi(\n        self,\n        pil_image,\n        general_threshold: float = None,\n        include_rating: bool = None,\n        exclude_tags: str = None,\n        max_tags: int = None,\n        sort_alpha: bool = None,\n        use_spaces: bool = None,\n        escape_brackets: bool = None,\n    ):\n        \"\"\"Run inference and return formatted tag string.\n\n        Args:\n            pil_image: PIL Image to tag\n            general_threshold: Threshold for tag scores (0-1)\n            include_rating: Whether to include rating tags\n            exclude_tags: Comma-separated tags to exclude\n            max_tags: Maximum number of tags to return\n            sort_alpha: Sort tags alphabetically vs by confidence\n            use_spaces: Use spaces instead of underscores\n            escape_brackets: Escape parentheses/brackets in tags\n\n        Returns:\n            Formatted tag string\n        \"\"\"\n        # Use settings defaults if not specified\n        general_threshold = general_threshold or shared.opts.tagger_threshold\n        include_rating = include_rating if include_rating is not None else shared.opts.tagger_include_rating\n        exclude_tags = exclude_tags or shared.opts.tagger_exclude_tags\n        max_tags = max_tags or shared.opts.tagger_max_tags\n        sort_alpha = sort_alpha if sort_alpha is not None else shared.opts.tagger_sort_alpha\n        use_spaces = use_spaces if use_spaces is not None else shared.opts.tagger_use_spaces\n        escape_brackets = escape_brackets if escape_brackets is not None else shared.opts.tagger_escape_brackets\n\n        if isinstance(pil_image, list):\n            pil_image = pil_image[0] if len(pil_image) > 0 else None\n        if isinstance(pil_image, dict) and 'name' in pil_image:\n            pil_image = Image.open(pil_image['name'])\n        if pil_image is None:\n            return ''\n        pic = pil_image.resize((512, 512), resample=Image.Resampling.LANCZOS).convert(\"RGB\")\n        a = np.expand_dims(np.array(pic, dtype=np.float32), 0) / 255\n        with devices.inference_context():\n            x = torch.from_numpy(a).to(device=devices.device, dtype=devices.dtype)\n            y = self.model(x)[0].detach().float().cpu().numpy()\n        probability_dict = {}\n        for current, probability in zip(self.model.tags, y):\n            if probability < general_threshold:\n                continue\n            if current.startswith(\"rating:\") and not include_rating:\n                continue\n            probability_dict[current] = probability\n        if sort_alpha:\n            tags = sorted(probability_dict)\n        else:\n            tags = [tag for tag, _ in sorted(probability_dict.items(), key=lambda x: -x[1])]\n        res = []\n        filtertags = {x.strip().replace(' ', '_') for x in exclude_tags.split(\",\")}\n        for filtertag in [x for x in tags if x not in filtertags]:\n            probability = probability_dict[filtertag]\n            tag_outformat = filtertag\n            if use_spaces:\n                tag_outformat = tag_outformat.replace('_', ' ')\n            if escape_brackets:\n                tag_outformat = re.sub(re_special, r'\\\\\\1', tag_outformat)\n            if shared.opts.tagger_show_scores:\n                tag_outformat = f\"({tag_outformat}:{probability:.2f})\"\n            res.append(tag_outformat)\n        if max_tags > 0 and len(res) > max_tags:\n            res = res[:max_tags]\n        return \", \".join(res)\n\n\nmodel = DeepDanbooru()\n\n\ndef _save_tags_to_file(img_path, tags_str: str, save_append: bool) -> bool:\n    \"\"\"Save tags to a text file with error handling.\n\n    Args:\n        img_path: Path to the image file\n        tags_str: Tags string to save\n        save_append: If True, append to existing file; otherwise overwrite\n\n    Returns:\n        True if save succeeded, False otherwise\n    \"\"\"\n    try:\n        txt_path = img_path.with_suffix('.txt')\n        if save_append and txt_path.exists():\n            with open(txt_path, 'a', encoding='utf-8') as f:\n                f.write(f', {tags_str}')\n        else:\n            with open(txt_path, 'w', encoding='utf-8') as f:\n                f.write(tags_str)\n        return True\n    except Exception as e:\n        shared.log.error(f'DeepBooru batch: failed to save file=\"{img_path}\" error={e}')\n        return False\n\n\ndef get_models() -> list:\n    \"\"\"Return list of available DeepBooru models (just one).\"\"\"\n    return [\"DeepBooru\"]\n\n\ndef load_model(model_name: str = None) -> bool: # pylint: disable=unused-argument\n    \"\"\"Load the DeepBooru model.\"\"\"\n    try:\n        model.load()\n        return model.model is not None\n    except Exception as e:\n        shared.log.error(f'DeepBooru load: {e}')\n        return False\n\n\ndef unload_model():\n    \"\"\"Unload the DeepBooru model and free memory.\"\"\"\n    if model.model is not None:\n        shared.log.debug('DeepBooru unload')\n        model.model = None\n        devices.torch_gc(force=True)\n\n\ndef tag(image, **kwargs) -> str:\n    \"\"\"Tag an image using DeepBooru.\n\n    Args:\n        image: PIL Image to tag\n        **kwargs: Tagger parameters (general_threshold, include_rating, exclude_tags,\n                  max_tags, sort_alpha, use_spaces, escape_brackets)\n\n    Returns:\n        Formatted tag string\n    \"\"\"\n    import time\n    t0 = time.time()\n    jobid = shared.state.begin('DeepBooru Tag')\n    shared.log.info(f'DeepBooru: image_size={image.size if image else None}')\n\n    try:\n        result = model.tag(image, **kwargs)\n        shared.log.debug(f'DeepBooru: complete time={time.time()-t0:.2f} tags={len(result.split(\", \")) if result else 0}')\n    except Exception as e:\n        result = f\"Exception {type(e)}\"\n        shared.log.error(f'DeepBooru: {e}')\n\n    shared.state.end(jobid)\n    return result\n\n\ndef batch(\n    model_name: str, # pylint: disable=unused-argument\n    batch_files: list,\n    batch_folder: str,\n    batch_str: str,\n    save_output: bool = True,\n    save_append: bool = False,\n    recursive: bool = False,\n    **kwargs\n) -> str:\n    \"\"\"Process multiple images in batch mode.\n\n    Args:\n        model_name: Model name (ignored, only DeepBooru available)\n        batch_files: List of file paths\n        batch_folder: Folder path from file picker\n        batch_str: Folder path as string\n        save_output: Save caption to .txt files\n        save_append: Append to existing caption files\n        recursive: Recursively process subfolders\n        **kwargs: Additional arguments (for interface compatibility)\n\n    Returns:\n        Combined tag results\n    \"\"\"\n    import time\n    from pathlib import Path\n    import rich.progress as rp\n\n    # Load model\n    model.load()\n\n    # Collect image files\n    image_files = []\n    image_extensions = {'.jpg', '.jpeg', '.png', '.webp', '.bmp', '.gif'}\n\n    # From file picker\n    if batch_files:\n        for f in batch_files:\n            if isinstance(f, dict):\n                image_files.append(Path(f['name']))\n            elif hasattr(f, 'name'):\n                image_files.append(Path(f.name))\n            else:\n                image_files.append(Path(f))\n\n    # From folder picker\n    if batch_folder:\n        folder_path = None\n        if isinstance(batch_folder, list) and len(batch_folder) > 0:\n            f = batch_folder[0]\n            if isinstance(f, dict):\n                folder_path = Path(f['name']).parent\n            elif hasattr(f, 'name'):\n                folder_path = Path(f.name).parent\n        if folder_path and folder_path.is_dir():\n            if recursive:\n                for ext in image_extensions:\n                    image_files.extend(folder_path.rglob(f'*{ext}'))\n            else:\n                for ext in image_extensions:\n                    image_files.extend(folder_path.glob(f'*{ext}'))\n\n    # From string path\n    if batch_str and batch_str.strip():\n        folder_path = Path(batch_str.strip())\n        if folder_path.is_dir():\n            if recursive:\n                for ext in image_extensions:\n                    image_files.extend(folder_path.rglob(f'*{ext}'))\n            else:\n                for ext in image_extensions:\n                    image_files.extend(folder_path.glob(f'*{ext}'))\n\n    # Remove duplicates while preserving order\n    seen = set()\n    unique_files = []\n    for f in image_files:\n        f_resolved = f.resolve()\n        if f_resolved not in seen:\n            seen.add(f_resolved)\n            unique_files.append(f)\n    image_files = unique_files\n\n    if not image_files:\n        shared.log.warning('DeepBooru batch: no images found')\n        return ''\n\n    t0 = time.time()\n    jobid = shared.state.begin('DeepBooru Batch')\n    shared.log.info(f'DeepBooru batch: images={len(image_files)} write={save_output} append={save_append} recursive={recursive}')\n\n    results = []\n    model.start()\n\n    # Progress bar\n    pbar = rp.Progress(rp.TextColumn('[cyan]DeepBooru:'), rp.BarColumn(), rp.MofNCompleteColumn(), rp.TaskProgressColumn(), rp.TimeRemainingColumn(), rp.TimeElapsedColumn(), rp.TextColumn('[cyan]{task.description}'), console=shared.console)\n\n    with pbar:\n        task = pbar.add_task(total=len(image_files), description='starting...')\n        for img_path in image_files:\n            pbar.update(task, advance=1, description=str(img_path.name))\n            try:\n                if shared.state.interrupted:\n                    shared.log.info('DeepBooru batch: interrupted')\n                    break\n\n                image = Image.open(img_path)\n                tags_str = model.tag_multi(image, **kwargs)\n\n                if save_output:\n                    _save_tags_to_file(img_path, tags_str, save_append)\n\n                results.append(f'{img_path.name}: {tags_str[:100]}...' if len(tags_str) > 100 else f'{img_path.name}: {tags_str}')\n\n            except Exception as e:\n                shared.log.error(f'DeepBooru batch: file=\"{img_path}\" error={e}')\n                results.append(f'{img_path.name}: ERROR - {e}')\n\n    model.stop()\n    elapsed = time.time() - t0\n    shared.log.info(f'DeepBooru batch: complete images={len(results)} time={elapsed:.1f}s')\n    shared.state.end(jobid)\n\n    return '\\n'.join(results)\n"
  },
  {
    "path": "modules/interrogate/deepbooru_model.py",
    "content": "import torch\nimport torch.nn as nn\nimport torch.nn.functional as F\n\nfrom modules import devices\n\n# see https://github.com/AUTOMATIC1111/TorchDeepDanbooru for more\n\n\nclass DeepDanbooruModel(nn.Module):\n    def __init__(self):\n        super().__init__()\n        self.tags = []\n        self.n_Conv_0 = nn.Conv2d(kernel_size=(7, 7), in_channels=3, out_channels=64, stride=(2, 2))\n        self.n_MaxPool_0 = nn.MaxPool2d(kernel_size=(3, 3), stride=(2, 2))\n        self.n_Conv_1 = nn.Conv2d(kernel_size=(1, 1), in_channels=64, out_channels=256)\n        self.n_Conv_2 = nn.Conv2d(kernel_size=(1, 1), in_channels=64, out_channels=64)\n        self.n_Conv_3 = nn.Conv2d(kernel_size=(3, 3), in_channels=64, out_channels=64)\n        self.n_Conv_4 = nn.Conv2d(kernel_size=(1, 1), in_channels=64, out_channels=256)\n        self.n_Conv_5 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=64)\n        self.n_Conv_6 = nn.Conv2d(kernel_size=(3, 3), in_channels=64, out_channels=64)\n        self.n_Conv_7 = nn.Conv2d(kernel_size=(1, 1), in_channels=64, out_channels=256)\n        self.n_Conv_8 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=64)\n        self.n_Conv_9 = nn.Conv2d(kernel_size=(3, 3), in_channels=64, out_channels=64)\n        self.n_Conv_10 = nn.Conv2d(kernel_size=(1, 1), in_channels=64, out_channels=256)\n        self.n_Conv_11 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=512, stride=(2, 2))\n        self.n_Conv_12 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=128)\n        self.n_Conv_13 = nn.Conv2d(kernel_size=(3, 3), in_channels=128, out_channels=128, stride=(2, 2))\n        self.n_Conv_14 = nn.Conv2d(kernel_size=(1, 1), in_channels=128, out_channels=512)\n        self.n_Conv_15 = nn.Conv2d(kernel_size=(1, 1), in_channels=512, out_channels=128)\n        self.n_Conv_16 = nn.Conv2d(kernel_size=(3, 3), in_channels=128, out_channels=128)\n        self.n_Conv_17 = nn.Conv2d(kernel_size=(1, 1), in_channels=128, out_channels=512)\n        self.n_Conv_18 = nn.Conv2d(kernel_size=(1, 1), in_channels=512, out_channels=128)\n        self.n_Conv_19 = nn.Conv2d(kernel_size=(3, 3), in_channels=128, out_channels=128)\n        self.n_Conv_20 = nn.Conv2d(kernel_size=(1, 1), in_channels=128, out_channels=512)\n        self.n_Conv_21 = nn.Conv2d(kernel_size=(1, 1), in_channels=512, out_channels=128)\n        self.n_Conv_22 = nn.Conv2d(kernel_size=(3, 3), in_channels=128, out_channels=128)\n        self.n_Conv_23 = nn.Conv2d(kernel_size=(1, 1), in_channels=128, out_channels=512)\n        self.n_Conv_24 = nn.Conv2d(kernel_size=(1, 1), in_channels=512, out_channels=128)\n        self.n_Conv_25 = nn.Conv2d(kernel_size=(3, 3), in_channels=128, out_channels=128)\n        self.n_Conv_26 = nn.Conv2d(kernel_size=(1, 1), in_channels=128, out_channels=512)\n        self.n_Conv_27 = nn.Conv2d(kernel_size=(1, 1), in_channels=512, out_channels=128)\n        self.n_Conv_28 = nn.Conv2d(kernel_size=(3, 3), in_channels=128, out_channels=128)\n        self.n_Conv_29 = nn.Conv2d(kernel_size=(1, 1), in_channels=128, out_channels=512)\n        self.n_Conv_30 = nn.Conv2d(kernel_size=(1, 1), in_channels=512, out_channels=128)\n        self.n_Conv_31 = nn.Conv2d(kernel_size=(3, 3), in_channels=128, out_channels=128)\n        self.n_Conv_32 = nn.Conv2d(kernel_size=(1, 1), in_channels=128, out_channels=512)\n        self.n_Conv_33 = nn.Conv2d(kernel_size=(1, 1), in_channels=512, out_channels=128)\n        self.n_Conv_34 = nn.Conv2d(kernel_size=(3, 3), in_channels=128, out_channels=128)\n        self.n_Conv_35 = nn.Conv2d(kernel_size=(1, 1), in_channels=128, out_channels=512)\n        self.n_Conv_36 = nn.Conv2d(kernel_size=(1, 1), in_channels=512, out_channels=1024, stride=(2, 2))\n        self.n_Conv_37 = nn.Conv2d(kernel_size=(1, 1), in_channels=512, out_channels=256)\n        self.n_Conv_38 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256, stride=(2, 2))\n        self.n_Conv_39 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_40 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_41 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_42 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_43 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_44 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_45 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_46 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_47 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_48 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_49 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_50 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_51 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_52 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_53 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_54 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_55 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_56 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_57 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_58 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_59 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_60 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_61 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_62 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_63 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_64 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_65 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_66 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_67 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_68 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_69 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_70 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_71 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_72 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_73 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_74 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_75 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_76 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_77 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_78 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_79 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_80 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_81 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_82 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_83 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_84 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_85 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_86 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_87 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_88 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_89 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_90 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_91 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_92 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_93 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_94 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_95 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_96 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_97 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_98 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256, stride=(2, 2))\n        self.n_Conv_99 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_100 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=1024, stride=(2, 2))\n        self.n_Conv_101 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_102 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_103 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_104 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_105 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_106 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_107 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_108 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_109 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_110 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_111 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_112 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_113 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_114 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_115 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_116 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_117 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_118 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_119 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_120 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_121 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_122 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_123 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_124 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_125 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_126 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_127 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_128 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_129 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_130 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_131 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_132 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_133 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_134 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_135 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_136 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_137 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_138 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_139 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_140 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_141 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_142 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_143 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_144 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_145 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_146 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_147 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_148 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_149 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_150 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_151 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_152 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_153 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_154 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_155 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=256)\n        self.n_Conv_156 = nn.Conv2d(kernel_size=(3, 3), in_channels=256, out_channels=256)\n        self.n_Conv_157 = nn.Conv2d(kernel_size=(1, 1), in_channels=256, out_channels=1024)\n        self.n_Conv_158 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=2048, stride=(2, 2))\n        self.n_Conv_159 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=512)\n        self.n_Conv_160 = nn.Conv2d(kernel_size=(3, 3), in_channels=512, out_channels=512, stride=(2, 2))\n        self.n_Conv_161 = nn.Conv2d(kernel_size=(1, 1), in_channels=512, out_channels=2048)\n        self.n_Conv_162 = nn.Conv2d(kernel_size=(1, 1), in_channels=2048, out_channels=512)\n        self.n_Conv_163 = nn.Conv2d(kernel_size=(3, 3), in_channels=512, out_channels=512)\n        self.n_Conv_164 = nn.Conv2d(kernel_size=(1, 1), in_channels=512, out_channels=2048)\n        self.n_Conv_165 = nn.Conv2d(kernel_size=(1, 1), in_channels=2048, out_channels=512)\n        self.n_Conv_166 = nn.Conv2d(kernel_size=(3, 3), in_channels=512, out_channels=512)\n        self.n_Conv_167 = nn.Conv2d(kernel_size=(1, 1), in_channels=512, out_channels=2048)\n        self.n_Conv_168 = nn.Conv2d(kernel_size=(1, 1), in_channels=2048, out_channels=4096, stride=(2, 2))\n        self.n_Conv_169 = nn.Conv2d(kernel_size=(1, 1), in_channels=2048, out_channels=1024)\n        self.n_Conv_170 = nn.Conv2d(kernel_size=(3, 3), in_channels=1024, out_channels=1024, stride=(2, 2))\n        self.n_Conv_171 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=4096)\n        self.n_Conv_172 = nn.Conv2d(kernel_size=(1, 1), in_channels=4096, out_channels=1024)\n        self.n_Conv_173 = nn.Conv2d(kernel_size=(3, 3), in_channels=1024, out_channels=1024)\n        self.n_Conv_174 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=4096)\n        self.n_Conv_175 = nn.Conv2d(kernel_size=(1, 1), in_channels=4096, out_channels=1024)\n        self.n_Conv_176 = nn.Conv2d(kernel_size=(3, 3), in_channels=1024, out_channels=1024)\n        self.n_Conv_177 = nn.Conv2d(kernel_size=(1, 1), in_channels=1024, out_channels=4096)\n        self.n_Conv_178 = nn.Conv2d(kernel_size=(1, 1), in_channels=4096, out_channels=9176, bias=False)\n\n    def forward(self, *inputs):\n        t_358, = inputs\n        t_359 = t_358.permute(*[0, 3, 1, 2])\n        t_359_padded = F.pad(t_359, [2, 3, 2, 3], value=0)\n        t_360 = self.n_Conv_0(t_359_padded.to(self.n_Conv_0.bias.dtype) if devices.unet_needs_upcast else t_359_padded)\n        t_361 = F.relu(t_360)\n        t_361 = F.pad(t_361, [0, 1, 0, 1], value=float('-inf'))\n        t_362 = self.n_MaxPool_0(t_361)\n        t_363 = self.n_Conv_1(t_362)\n        t_364 = self.n_Conv_2(t_362)\n        t_365 = F.relu(t_364)\n        t_365_padded = F.pad(t_365, [1, 1, 1, 1], value=0)\n        t_366 = self.n_Conv_3(t_365_padded)\n        t_367 = F.relu(t_366)\n        t_368 = self.n_Conv_4(t_367)\n        t_369 = torch.add(t_368, t_363)\n        t_370 = F.relu(t_369)\n        t_371 = self.n_Conv_5(t_370)\n        t_372 = F.relu(t_371)\n        t_372_padded = F.pad(t_372, [1, 1, 1, 1], value=0)\n        t_373 = self.n_Conv_6(t_372_padded)\n        t_374 = F.relu(t_373)\n        t_375 = self.n_Conv_7(t_374)\n        t_376 = torch.add(t_375, t_370)\n        t_377 = F.relu(t_376)\n        t_378 = self.n_Conv_8(t_377)\n        t_379 = F.relu(t_378)\n        t_379_padded = F.pad(t_379, [1, 1, 1, 1], value=0)\n        t_380 = self.n_Conv_9(t_379_padded)\n        t_381 = F.relu(t_380)\n        t_382 = self.n_Conv_10(t_381)\n        t_383 = torch.add(t_382, t_377)\n        t_384 = F.relu(t_383)\n        t_385 = self.n_Conv_11(t_384)\n        t_386 = self.n_Conv_12(t_384)\n        t_387 = F.relu(t_386)\n        t_387_padded = F.pad(t_387, [0, 1, 0, 1], value=0)\n        t_388 = self.n_Conv_13(t_387_padded)\n        t_389 = F.relu(t_388)\n        t_390 = self.n_Conv_14(t_389)\n        t_391 = torch.add(t_390, t_385)\n        t_392 = F.relu(t_391)\n        t_393 = self.n_Conv_15(t_392)\n        t_394 = F.relu(t_393)\n        t_394_padded = F.pad(t_394, [1, 1, 1, 1], value=0)\n        t_395 = self.n_Conv_16(t_394_padded)\n        t_396 = F.relu(t_395)\n        t_397 = self.n_Conv_17(t_396)\n        t_398 = torch.add(t_397, t_392)\n        t_399 = F.relu(t_398)\n        t_400 = self.n_Conv_18(t_399)\n        t_401 = F.relu(t_400)\n        t_401_padded = F.pad(t_401, [1, 1, 1, 1], value=0)\n        t_402 = self.n_Conv_19(t_401_padded)\n        t_403 = F.relu(t_402)\n        t_404 = self.n_Conv_20(t_403)\n        t_405 = torch.add(t_404, t_399)\n        t_406 = F.relu(t_405)\n        t_407 = self.n_Conv_21(t_406)\n        t_408 = F.relu(t_407)\n        t_408_padded = F.pad(t_408, [1, 1, 1, 1], value=0)\n        t_409 = self.n_Conv_22(t_408_padded)\n        t_410 = F.relu(t_409)\n        t_411 = self.n_Conv_23(t_410)\n        t_412 = torch.add(t_411, t_406)\n        t_413 = F.relu(t_412)\n        t_414 = self.n_Conv_24(t_413)\n        t_415 = F.relu(t_414)\n        t_415_padded = F.pad(t_415, [1, 1, 1, 1], value=0)\n        t_416 = self.n_Conv_25(t_415_padded)\n        t_417 = F.relu(t_416)\n        t_418 = self.n_Conv_26(t_417)\n        t_419 = torch.add(t_418, t_413)\n        t_420 = F.relu(t_419)\n        t_421 = self.n_Conv_27(t_420)\n        t_422 = F.relu(t_421)\n        t_422_padded = F.pad(t_422, [1, 1, 1, 1], value=0)\n        t_423 = self.n_Conv_28(t_422_padded)\n        t_424 = F.relu(t_423)\n        t_425 = self.n_Conv_29(t_424)\n        t_426 = torch.add(t_425, t_420)\n        t_427 = F.relu(t_426)\n        t_428 = self.n_Conv_30(t_427)\n        t_429 = F.relu(t_428)\n        t_429_padded = F.pad(t_429, [1, 1, 1, 1], value=0)\n        t_430 = self.n_Conv_31(t_429_padded)\n        t_431 = F.relu(t_430)\n        t_432 = self.n_Conv_32(t_431)\n        t_433 = torch.add(t_432, t_427)\n        t_434 = F.relu(t_433)\n        t_435 = self.n_Conv_33(t_434)\n        t_436 = F.relu(t_435)\n        t_436_padded = F.pad(t_436, [1, 1, 1, 1], value=0)\n        t_437 = self.n_Conv_34(t_436_padded)\n        t_438 = F.relu(t_437)\n        t_439 = self.n_Conv_35(t_438)\n        t_440 = torch.add(t_439, t_434)\n        t_441 = F.relu(t_440)\n        t_442 = self.n_Conv_36(t_441)\n        t_443 = self.n_Conv_37(t_441)\n        t_444 = F.relu(t_443)\n        t_444_padded = F.pad(t_444, [0, 1, 0, 1], value=0)\n        t_445 = self.n_Conv_38(t_444_padded)\n        t_446 = F.relu(t_445)\n        t_447 = self.n_Conv_39(t_446)\n        t_448 = torch.add(t_447, t_442)\n        t_449 = F.relu(t_448)\n        t_450 = self.n_Conv_40(t_449)\n        t_451 = F.relu(t_450)\n        t_451_padded = F.pad(t_451, [1, 1, 1, 1], value=0)\n        t_452 = self.n_Conv_41(t_451_padded)\n        t_453 = F.relu(t_452)\n        t_454 = self.n_Conv_42(t_453)\n        t_455 = torch.add(t_454, t_449)\n        t_456 = F.relu(t_455)\n        t_457 = self.n_Conv_43(t_456)\n        t_458 = F.relu(t_457)\n        t_458_padded = F.pad(t_458, [1, 1, 1, 1], value=0)\n        t_459 = self.n_Conv_44(t_458_padded)\n        t_460 = F.relu(t_459)\n        t_461 = self.n_Conv_45(t_460)\n        t_462 = torch.add(t_461, t_456)\n        t_463 = F.relu(t_462)\n        t_464 = self.n_Conv_46(t_463)\n        t_465 = F.relu(t_464)\n        t_465_padded = F.pad(t_465, [1, 1, 1, 1], value=0)\n        t_466 = self.n_Conv_47(t_465_padded)\n        t_467 = F.relu(t_466)\n        t_468 = self.n_Conv_48(t_467)\n        t_469 = torch.add(t_468, t_463)\n        t_470 = F.relu(t_469)\n        t_471 = self.n_Conv_49(t_470)\n        t_472 = F.relu(t_471)\n        t_472_padded = F.pad(t_472, [1, 1, 1, 1], value=0)\n        t_473 = self.n_Conv_50(t_472_padded)\n        t_474 = F.relu(t_473)\n        t_475 = self.n_Conv_51(t_474)\n        t_476 = torch.add(t_475, t_470)\n        t_477 = F.relu(t_476)\n        t_478 = self.n_Conv_52(t_477)\n        t_479 = F.relu(t_478)\n        t_479_padded = F.pad(t_479, [1, 1, 1, 1], value=0)\n        t_480 = self.n_Conv_53(t_479_padded)\n        t_481 = F.relu(t_480)\n        t_482 = self.n_Conv_54(t_481)\n        t_483 = torch.add(t_482, t_477)\n        t_484 = F.relu(t_483)\n        t_485 = self.n_Conv_55(t_484)\n        t_486 = F.relu(t_485)\n        t_486_padded = F.pad(t_486, [1, 1, 1, 1], value=0)\n        t_487 = self.n_Conv_56(t_486_padded)\n        t_488 = F.relu(t_487)\n        t_489 = self.n_Conv_57(t_488)\n        t_490 = torch.add(t_489, t_484)\n        t_491 = F.relu(t_490)\n        t_492 = self.n_Conv_58(t_491)\n        t_493 = F.relu(t_492)\n        t_493_padded = F.pad(t_493, [1, 1, 1, 1], value=0)\n        t_494 = self.n_Conv_59(t_493_padded)\n        t_495 = F.relu(t_494)\n        t_496 = self.n_Conv_60(t_495)\n        t_497 = torch.add(t_496, t_491)\n        t_498 = F.relu(t_497)\n        t_499 = self.n_Conv_61(t_498)\n        t_500 = F.relu(t_499)\n        t_500_padded = F.pad(t_500, [1, 1, 1, 1], value=0)\n        t_501 = self.n_Conv_62(t_500_padded)\n        t_502 = F.relu(t_501)\n        t_503 = self.n_Conv_63(t_502)\n        t_504 = torch.add(t_503, t_498)\n        t_505 = F.relu(t_504)\n        t_506 = self.n_Conv_64(t_505)\n        t_507 = F.relu(t_506)\n        t_507_padded = F.pad(t_507, [1, 1, 1, 1], value=0)\n        t_508 = self.n_Conv_65(t_507_padded)\n        t_509 = F.relu(t_508)\n        t_510 = self.n_Conv_66(t_509)\n        t_511 = torch.add(t_510, t_505)\n        t_512 = F.relu(t_511)\n        t_513 = self.n_Conv_67(t_512)\n        t_514 = F.relu(t_513)\n        t_514_padded = F.pad(t_514, [1, 1, 1, 1], value=0)\n        t_515 = self.n_Conv_68(t_514_padded)\n        t_516 = F.relu(t_515)\n        t_517 = self.n_Conv_69(t_516)\n        t_518 = torch.add(t_517, t_512)\n        t_519 = F.relu(t_518)\n        t_520 = self.n_Conv_70(t_519)\n        t_521 = F.relu(t_520)\n        t_521_padded = F.pad(t_521, [1, 1, 1, 1], value=0)\n        t_522 = self.n_Conv_71(t_521_padded)\n        t_523 = F.relu(t_522)\n        t_524 = self.n_Conv_72(t_523)\n        t_525 = torch.add(t_524, t_519)\n        t_526 = F.relu(t_525)\n        t_527 = self.n_Conv_73(t_526)\n        t_528 = F.relu(t_527)\n        t_528_padded = F.pad(t_528, [1, 1, 1, 1], value=0)\n        t_529 = self.n_Conv_74(t_528_padded)\n        t_530 = F.relu(t_529)\n        t_531 = self.n_Conv_75(t_530)\n        t_532 = torch.add(t_531, t_526)\n        t_533 = F.relu(t_532)\n        t_534 = self.n_Conv_76(t_533)\n        t_535 = F.relu(t_534)\n        t_535_padded = F.pad(t_535, [1, 1, 1, 1], value=0)\n        t_536 = self.n_Conv_77(t_535_padded)\n        t_537 = F.relu(t_536)\n        t_538 = self.n_Conv_78(t_537)\n        t_539 = torch.add(t_538, t_533)\n        t_540 = F.relu(t_539)\n        t_541 = self.n_Conv_79(t_540)\n        t_542 = F.relu(t_541)\n        t_542_padded = F.pad(t_542, [1, 1, 1, 1], value=0)\n        t_543 = self.n_Conv_80(t_542_padded)\n        t_544 = F.relu(t_543)\n        t_545 = self.n_Conv_81(t_544)\n        t_546 = torch.add(t_545, t_540)\n        t_547 = F.relu(t_546)\n        t_548 = self.n_Conv_82(t_547)\n        t_549 = F.relu(t_548)\n        t_549_padded = F.pad(t_549, [1, 1, 1, 1], value=0)\n        t_550 = self.n_Conv_83(t_549_padded)\n        t_551 = F.relu(t_550)\n        t_552 = self.n_Conv_84(t_551)\n        t_553 = torch.add(t_552, t_547)\n        t_554 = F.relu(t_553)\n        t_555 = self.n_Conv_85(t_554)\n        t_556 = F.relu(t_555)\n        t_556_padded = F.pad(t_556, [1, 1, 1, 1], value=0)\n        t_557 = self.n_Conv_86(t_556_padded)\n        t_558 = F.relu(t_557)\n        t_559 = self.n_Conv_87(t_558)\n        t_560 = torch.add(t_559, t_554)\n        t_561 = F.relu(t_560)\n        t_562 = self.n_Conv_88(t_561)\n        t_563 = F.relu(t_562)\n        t_563_padded = F.pad(t_563, [1, 1, 1, 1], value=0)\n        t_564 = self.n_Conv_89(t_563_padded)\n        t_565 = F.relu(t_564)\n        t_566 = self.n_Conv_90(t_565)\n        t_567 = torch.add(t_566, t_561)\n        t_568 = F.relu(t_567)\n        t_569 = self.n_Conv_91(t_568)\n        t_570 = F.relu(t_569)\n        t_570_padded = F.pad(t_570, [1, 1, 1, 1], value=0)\n        t_571 = self.n_Conv_92(t_570_padded)\n        t_572 = F.relu(t_571)\n        t_573 = self.n_Conv_93(t_572)\n        t_574 = torch.add(t_573, t_568)\n        t_575 = F.relu(t_574)\n        t_576 = self.n_Conv_94(t_575)\n        t_577 = F.relu(t_576)\n        t_577_padded = F.pad(t_577, [1, 1, 1, 1], value=0)\n        t_578 = self.n_Conv_95(t_577_padded)\n        t_579 = F.relu(t_578)\n        t_580 = self.n_Conv_96(t_579)\n        t_581 = torch.add(t_580, t_575)\n        t_582 = F.relu(t_581)\n        t_583 = self.n_Conv_97(t_582)\n        t_584 = F.relu(t_583)\n        t_584_padded = F.pad(t_584, [0, 1, 0, 1], value=0)\n        t_585 = self.n_Conv_98(t_584_padded)\n        t_586 = F.relu(t_585)\n        t_587 = self.n_Conv_99(t_586)\n        t_588 = self.n_Conv_100(t_582)\n        t_589 = torch.add(t_587, t_588)\n        t_590 = F.relu(t_589)\n        t_591 = self.n_Conv_101(t_590)\n        t_592 = F.relu(t_591)\n        t_592_padded = F.pad(t_592, [1, 1, 1, 1], value=0)\n        t_593 = self.n_Conv_102(t_592_padded)\n        t_594 = F.relu(t_593)\n        t_595 = self.n_Conv_103(t_594)\n        t_596 = torch.add(t_595, t_590)\n        t_597 = F.relu(t_596)\n        t_598 = self.n_Conv_104(t_597)\n        t_599 = F.relu(t_598)\n        t_599_padded = F.pad(t_599, [1, 1, 1, 1], value=0)\n        t_600 = self.n_Conv_105(t_599_padded)\n        t_601 = F.relu(t_600)\n        t_602 = self.n_Conv_106(t_601)\n        t_603 = torch.add(t_602, t_597)\n        t_604 = F.relu(t_603)\n        t_605 = self.n_Conv_107(t_604)\n        t_606 = F.relu(t_605)\n        t_606_padded = F.pad(t_606, [1, 1, 1, 1], value=0)\n        t_607 = self.n_Conv_108(t_606_padded)\n        t_608 = F.relu(t_607)\n        t_609 = self.n_Conv_109(t_608)\n        t_610 = torch.add(t_609, t_604)\n        t_611 = F.relu(t_610)\n        t_612 = self.n_Conv_110(t_611)\n        t_613 = F.relu(t_612)\n        t_613_padded = F.pad(t_613, [1, 1, 1, 1], value=0)\n        t_614 = self.n_Conv_111(t_613_padded)\n        t_615 = F.relu(t_614)\n        t_616 = self.n_Conv_112(t_615)\n        t_617 = torch.add(t_616, t_611)\n        t_618 = F.relu(t_617)\n        t_619 = self.n_Conv_113(t_618)\n        t_620 = F.relu(t_619)\n        t_620_padded = F.pad(t_620, [1, 1, 1, 1], value=0)\n        t_621 = self.n_Conv_114(t_620_padded)\n        t_622 = F.relu(t_621)\n        t_623 = self.n_Conv_115(t_622)\n        t_624 = torch.add(t_623, t_618)\n        t_625 = F.relu(t_624)\n        t_626 = self.n_Conv_116(t_625)\n        t_627 = F.relu(t_626)\n        t_627_padded = F.pad(t_627, [1, 1, 1, 1], value=0)\n        t_628 = self.n_Conv_117(t_627_padded)\n        t_629 = F.relu(t_628)\n        t_630 = self.n_Conv_118(t_629)\n        t_631 = torch.add(t_630, t_625)\n        t_632 = F.relu(t_631)\n        t_633 = self.n_Conv_119(t_632)\n        t_634 = F.relu(t_633)\n        t_634_padded = F.pad(t_634, [1, 1, 1, 1], value=0)\n        t_635 = self.n_Conv_120(t_634_padded)\n        t_636 = F.relu(t_635)\n        t_637 = self.n_Conv_121(t_636)\n        t_638 = torch.add(t_637, t_632)\n        t_639 = F.relu(t_638)\n        t_640 = self.n_Conv_122(t_639)\n        t_641 = F.relu(t_640)\n        t_641_padded = F.pad(t_641, [1, 1, 1, 1], value=0)\n        t_642 = self.n_Conv_123(t_641_padded)\n        t_643 = F.relu(t_642)\n        t_644 = self.n_Conv_124(t_643)\n        t_645 = torch.add(t_644, t_639)\n        t_646 = F.relu(t_645)\n        t_647 = self.n_Conv_125(t_646)\n        t_648 = F.relu(t_647)\n        t_648_padded = F.pad(t_648, [1, 1, 1, 1], value=0)\n        t_649 = self.n_Conv_126(t_648_padded)\n        t_650 = F.relu(t_649)\n        t_651 = self.n_Conv_127(t_650)\n        t_652 = torch.add(t_651, t_646)\n        t_653 = F.relu(t_652)\n        t_654 = self.n_Conv_128(t_653)\n        t_655 = F.relu(t_654)\n        t_655_padded = F.pad(t_655, [1, 1, 1, 1], value=0)\n        t_656 = self.n_Conv_129(t_655_padded)\n        t_657 = F.relu(t_656)\n        t_658 = self.n_Conv_130(t_657)\n        t_659 = torch.add(t_658, t_653)\n        t_660 = F.relu(t_659)\n        t_661 = self.n_Conv_131(t_660)\n        t_662 = F.relu(t_661)\n        t_662_padded = F.pad(t_662, [1, 1, 1, 1], value=0)\n        t_663 = self.n_Conv_132(t_662_padded)\n        t_664 = F.relu(t_663)\n        t_665 = self.n_Conv_133(t_664)\n        t_666 = torch.add(t_665, t_660)\n        t_667 = F.relu(t_666)\n        t_668 = self.n_Conv_134(t_667)\n        t_669 = F.relu(t_668)\n        t_669_padded = F.pad(t_669, [1, 1, 1, 1], value=0)\n        t_670 = self.n_Conv_135(t_669_padded)\n        t_671 = F.relu(t_670)\n        t_672 = self.n_Conv_136(t_671)\n        t_673 = torch.add(t_672, t_667)\n        t_674 = F.relu(t_673)\n        t_675 = self.n_Conv_137(t_674)\n        t_676 = F.relu(t_675)\n        t_676_padded = F.pad(t_676, [1, 1, 1, 1], value=0)\n        t_677 = self.n_Conv_138(t_676_padded)\n        t_678 = F.relu(t_677)\n        t_679 = self.n_Conv_139(t_678)\n        t_680 = torch.add(t_679, t_674)\n        t_681 = F.relu(t_680)\n        t_682 = self.n_Conv_140(t_681)\n        t_683 = F.relu(t_682)\n        t_683_padded = F.pad(t_683, [1, 1, 1, 1], value=0)\n        t_684 = self.n_Conv_141(t_683_padded)\n        t_685 = F.relu(t_684)\n        t_686 = self.n_Conv_142(t_685)\n        t_687 = torch.add(t_686, t_681)\n        t_688 = F.relu(t_687)\n        t_689 = self.n_Conv_143(t_688)\n        t_690 = F.relu(t_689)\n        t_690_padded = F.pad(t_690, [1, 1, 1, 1], value=0)\n        t_691 = self.n_Conv_144(t_690_padded)\n        t_692 = F.relu(t_691)\n        t_693 = self.n_Conv_145(t_692)\n        t_694 = torch.add(t_693, t_688)\n        t_695 = F.relu(t_694)\n        t_696 = self.n_Conv_146(t_695)\n        t_697 = F.relu(t_696)\n        t_697_padded = F.pad(t_697, [1, 1, 1, 1], value=0)\n        t_698 = self.n_Conv_147(t_697_padded)\n        t_699 = F.relu(t_698)\n        t_700 = self.n_Conv_148(t_699)\n        t_701 = torch.add(t_700, t_695)\n        t_702 = F.relu(t_701)\n        t_703 = self.n_Conv_149(t_702)\n        t_704 = F.relu(t_703)\n        t_704_padded = F.pad(t_704, [1, 1, 1, 1], value=0)\n        t_705 = self.n_Conv_150(t_704_padded)\n        t_706 = F.relu(t_705)\n        t_707 = self.n_Conv_151(t_706)\n        t_708 = torch.add(t_707, t_702)\n        t_709 = F.relu(t_708)\n        t_710 = self.n_Conv_152(t_709)\n        t_711 = F.relu(t_710)\n        t_711_padded = F.pad(t_711, [1, 1, 1, 1], value=0)\n        t_712 = self.n_Conv_153(t_711_padded)\n        t_713 = F.relu(t_712)\n        t_714 = self.n_Conv_154(t_713)\n        t_715 = torch.add(t_714, t_709)\n        t_716 = F.relu(t_715)\n        t_717 = self.n_Conv_155(t_716)\n        t_718 = F.relu(t_717)\n        t_718_padded = F.pad(t_718, [1, 1, 1, 1], value=0)\n        t_719 = self.n_Conv_156(t_718_padded)\n        t_720 = F.relu(t_719)\n        t_721 = self.n_Conv_157(t_720)\n        t_722 = torch.add(t_721, t_716)\n        t_723 = F.relu(t_722)\n        t_724 = self.n_Conv_158(t_723)\n        t_725 = self.n_Conv_159(t_723)\n        t_726 = F.relu(t_725)\n        t_726_padded = F.pad(t_726, [0, 1, 0, 1], value=0)\n        t_727 = self.n_Conv_160(t_726_padded)\n        t_728 = F.relu(t_727)\n        t_729 = self.n_Conv_161(t_728)\n        t_730 = torch.add(t_729, t_724)\n        t_731 = F.relu(t_730)\n        t_732 = self.n_Conv_162(t_731)\n        t_733 = F.relu(t_732)\n        t_733_padded = F.pad(t_733, [1, 1, 1, 1], value=0)\n        t_734 = self.n_Conv_163(t_733_padded)\n        t_735 = F.relu(t_734)\n        t_736 = self.n_Conv_164(t_735)\n        t_737 = torch.add(t_736, t_731)\n        t_738 = F.relu(t_737)\n        t_739 = self.n_Conv_165(t_738)\n        t_740 = F.relu(t_739)\n        t_740_padded = F.pad(t_740, [1, 1, 1, 1], value=0)\n        t_741 = self.n_Conv_166(t_740_padded)\n        t_742 = F.relu(t_741)\n        t_743 = self.n_Conv_167(t_742)\n        t_744 = torch.add(t_743, t_738)\n        t_745 = F.relu(t_744)\n        t_746 = self.n_Conv_168(t_745)\n        t_747 = self.n_Conv_169(t_745)\n        t_748 = F.relu(t_747)\n        t_748_padded = F.pad(t_748, [0, 1, 0, 1], value=0)\n        t_749 = self.n_Conv_170(t_748_padded)\n        t_750 = F.relu(t_749)\n        t_751 = self.n_Conv_171(t_750)\n        t_752 = torch.add(t_751, t_746)\n        t_753 = F.relu(t_752)\n        t_754 = self.n_Conv_172(t_753)\n        t_755 = F.relu(t_754)\n        t_755_padded = F.pad(t_755, [1, 1, 1, 1], value=0)\n        t_756 = self.n_Conv_173(t_755_padded)\n        t_757 = F.relu(t_756)\n        t_758 = self.n_Conv_174(t_757)\n        t_759 = torch.add(t_758, t_753)\n        t_760 = F.relu(t_759)\n        t_761 = self.n_Conv_175(t_760)\n        t_762 = F.relu(t_761)\n        t_762_padded = F.pad(t_762, [1, 1, 1, 1], value=0)\n        t_763 = self.n_Conv_176(t_762_padded)\n        t_764 = F.relu(t_763)\n        t_765 = self.n_Conv_177(t_764)\n        t_766 = torch.add(t_765, t_760)\n        t_767 = F.relu(t_766)\n        t_768 = self.n_Conv_178(t_767)\n        t_769 = F.avg_pool2d(t_768, kernel_size=t_768.shape[-2:])\n        t_770 = torch.squeeze(t_769, 3)\n        t_770 = torch.squeeze(t_770, 2)\n        t_771 = torch.sigmoid(t_770)\n        return t_771\n\n    def load_state_dict(self, state_dict, **kwargs): # pylint: disable=arguments-differ,unused-argument\n        self.tags = state_dict.get('tags', [])\n        super(DeepDanbooruModel, self).load_state_dict({k: v for k, v in state_dict.items() if k != 'tags'}) # pylint: disable=R1725\n"
  },
  {
    "path": "modules/interrogate/deepseek.py",
    "content": "# source: <https://huggingface.co/deepseek-ai/deepseek-vl2-tiny>\n# implementation: <https://github.com/deepseek-ai/DeepSeek-VL2/tree/main/deepseek_vl2/serve>\n\"\"\"\n- run `git clone https://github.com/deepseek-ai/DeepSeek-VL2 repositories/deepseek-vl2 --depth 1`\n- remove hardcoded `python==3.9` requirement due to obsolete attrdict package dependency\n- patch transformers due to internal changes as deepseek requires obsolete `transformers==4.38.2`\n- deepseek requires `xformers`\n- broken flash_attention\n\"\"\"\n\nimport os\nimport sys\nimport importlib\nfrom transformers import AutoModelForCausalLM\nfrom modules import shared, devices, paths, sd_models\n\n\n# model_path = \"deepseek-ai/deepseek-vl2-small\"\nvl_gpt = None\nvl_chat_processor = None\nloaded_repo = None\n\n\nclass fake_attrdict():\n    class AttrDict(dict):  # dot notation access to dictionary attributes\n        __getattr__ = dict.get\n        __setattr__ = dict.__setitem__\n        __delattr__ = dict.__delitem__\n\n\ndef load(repo: str):\n    \"\"\"Load DeepSeek VL2 model (experimental).\"\"\"\n    global vl_gpt, vl_chat_processor, loaded_repo  # pylint: disable=global-statement\n    if not shared.cmd_opts.experimental:\n        shared.log.error(f'Interrogate: type=vlm model=\"DeepSeek VL2\" repo=\"{repo}\" is experimental-only')\n        return False\n    folder = os.path.join(paths.script_path, 'repositories', 'deepseek-vl2')\n    if not os.path.exists(folder):\n        shared.log.error(f'Interrogate: type=vlm model=\"DeepSeek VL2\" repo=\"{repo}\" deepseek-vl2 repo not found')\n        return False\n    if vl_gpt is None or loaded_repo != repo:\n        sys.modules['attrdict'] = fake_attrdict\n        from transformers.models.llama import modeling_llama\n        modeling_llama.LlamaFlashAttention2 = modeling_llama.LlamaAttention\n        importlib.import_module('repositories.deepseek-vl2.deepseek_vl2')\n        deekseek_vl_models = importlib.import_module('repositories.deepseek-vl2.deepseek_vl2.models')\n        vl_chat_processor = deekseek_vl_models.DeepseekVLV2Processor.from_pretrained(repo, cache_dir=shared.opts.hfcache_dir)\n        vl_gpt = AutoModelForCausalLM.from_pretrained(\n            repo,\n            trust_remote_code=True,\n            cache_dir=shared.opts.hfcache_dir,\n        )\n        vl_gpt.to(dtype=devices.dtype)\n        vl_gpt.eval()\n        loaded_repo = repo\n        shared.log.info(f'Interrogate: type=vlm model=\"DeepSeek VL2\" repo=\"{repo}\"')\n    sd_models.move_model(vl_gpt, devices.device)\n    return True\n\n\ndef unload():\n    \"\"\"Release DeepSeek VL2 model from GPU/memory.\"\"\"\n    global vl_gpt, vl_chat_processor, loaded_repo  # pylint: disable=global-statement\n    if vl_gpt is not None:\n        shared.log.debug(f'DeepSeek unload: model=\"{loaded_repo}\"')\n        sd_models.move_model(vl_gpt, devices.cpu, force=True)\n        vl_gpt = None\n        vl_chat_processor = None\n        loaded_repo = None\n        devices.torch_gc(force=True)\n    else:\n        shared.log.debug('DeepSeek unload: no model loaded')\n\n\ndef predict(question, image, repo):\n    global vl_gpt # pylint: disable=global-statement\n    if not load(repo):\n        return ''\n\n    if len(question) < 2:\n        question = \"Describe the image.\"\n    question = question.replace('<', '').replace('>', '')\n    conversation = [\n        {\n            \"role\": \"<|User|>\",\n            \"content\": f\"<image>\\n<|ref|>{question}<|/ref|>.\",\n            # \"images\": [image],\n        },\n        {\"role\": \"<|Assistant|>\", \"content\": \"\"},\n    ]\n\n    prepare_inputs = vl_chat_processor(\n        conversations=conversation,\n        images=[image],\n        force_batchify=True,\n        system_prompt=\"\"\n    ).to(device=devices.device, dtype=devices.dtype)\n    inputs_embeds = vl_gpt.prepare_inputs_embeds(**prepare_inputs)\n    inputs_embeds = inputs_embeds.to(device=devices.device, dtype=devices.dtype)\n    sd_models.move_model(vl_gpt, devices.device)\n    with devices.inference_context():\n        outputs = vl_gpt.language.generate(\n            inputs_embeds=inputs_embeds,\n            attention_mask=prepare_inputs.attention_mask,\n            pad_token_id=vl_chat_processor.tokenizer.eos_token_id,\n            bos_token_id=vl_chat_processor.tokenizer.bos_token_id,\n            eos_token_id=vl_chat_processor.tokenizer.eos_token_id,\n            max_new_tokens=shared.opts.interrogate_vlm_max_length,\n            do_sample=False,\n            use_cache=True\n        )\n    vl_gpt = vl_gpt.to(devices.cpu)\n    answer = vl_chat_processor.tokenizer.decode(outputs[0].cpu().tolist(), skip_special_tokens=True)\n    print('inputs', prepare_inputs['sft_format'][0])\n    print('answer', answer)\n    return answer\n"
  },
  {
    "path": "modules/interrogate/interrogate.py",
    "content": "import time\nfrom PIL import Image\nfrom modules import shared\n\n\ndef interrogate(image):\n    if isinstance(image, list):\n        image = image[0] if len(image) > 0 else None\n    if isinstance(image, dict) and 'name' in image:\n        image = Image.open(image['name'])\n    if image is None:\n        shared.log.error('Interrogate: no image provided')\n        return ''\n    t0 = time.time()\n    if shared.opts.interrogate_default_type == 'OpenCLiP':\n        shared.log.info(f'Interrogate: type={shared.opts.interrogate_default_type} clip=\"{shared.opts.interrogate_clip_model}\" blip=\"{shared.opts.interrogate_blip_model}\" mode=\"{shared.opts.interrogate_clip_mode}\"')\n        from modules.interrogate import openclip\n        openclip.load_interrogator(clip_model=shared.opts.interrogate_clip_model, blip_model=shared.opts.interrogate_blip_model)\n        openclip.update_interrogate_params()\n        prompt = openclip.interrogate(image, mode=shared.opts.interrogate_clip_mode)\n        shared.log.debug(f'Interrogate: time={time.time()-t0:.2f} answer=\"{prompt}\"')\n        return prompt\n    elif shared.opts.interrogate_default_type == 'Tagger':\n        shared.log.info(f'Interrogate: type={shared.opts.interrogate_default_type} model=\"{shared.opts.waifudiffusion_model}\"')\n        from modules.interrogate import tagger\n        prompt = tagger.tag(\n            image=image,\n            model_name=shared.opts.waifudiffusion_model,\n            general_threshold=shared.opts.tagger_threshold,\n            character_threshold=shared.opts.waifudiffusion_character_threshold,\n            include_rating=shared.opts.tagger_include_rating,\n            exclude_tags=shared.opts.tagger_exclude_tags,\n            max_tags=shared.opts.tagger_max_tags,\n            sort_alpha=shared.opts.tagger_sort_alpha,\n            use_spaces=shared.opts.tagger_use_spaces,\n            escape_brackets=shared.opts.tagger_escape_brackets,\n        )\n        shared.log.debug(f'Interrogate: time={time.time()-t0:.2f} answer=\"{prompt}\"')\n        return prompt\n    elif shared.opts.interrogate_default_type == 'VLM':\n        shared.log.info(f'Interrogate: type={shared.opts.interrogate_default_type} vlm=\"{shared.opts.interrogate_vlm_model}\" prompt=\"{shared.opts.interrogate_vlm_prompt}\"')\n        from modules.interrogate import vqa\n        prompt = vqa.interrogate(image=image, model_name=shared.opts.interrogate_vlm_model, question=shared.opts.interrogate_vlm_prompt, prompt=None, system_prompt=shared.opts.interrogate_vlm_system)\n        shared.log.debug(f'Interrogate: time={time.time()-t0:.2f} answer=\"{prompt}\"')\n        return prompt\n    else:\n        shared.log.error(f'Interrogate: type=\"{shared.opts.interrogate_default_type}\" unknown')\n        return ''\n"
  },
  {
    "path": "modules/interrogate/joycaption.py",
    "content": "# based on <https://huggingface.co/fancyfeast/llama-joycaption-alpha-two-hf-llava>\n\nfrom dataclasses import dataclass\nimport torch\nfrom transformers import AutoProcessor, LlavaForConditionalGeneration\nfrom modules import shared, devices, sd_models, model_quant\n\n\n\"\"\"\nExample prompts\nShort description: Write a short description of the image.\nDetailed descriptive: Please provide a detailed description of the image.\nDescriptive: Write a descriptive caption for this image in a formal tone.\nDescriptive (Informal): Write a descriptive caption for this image in a casual tone.\nTraining Prompt: Write a stable diffusion prompt for this image.\nMidJourney: Write a MidJourney prompt for this image.\nBooru tag list: Write a list of Booru tags for this image.\nBooru-like tag list: Write a list of Booru-like tags for this image.\nArt Critic: Analyze this image like an art critic would with information about its composition, style, symbolism, the use of color, light, any artistic movement it might belong to, etc.\nProduct Listing: Write a caption for this image as though it were a product listing.\nSocial Media Post: Write a caption for this image as if it were being used for a social media post.\nExtra Options:\n- If there is a person/character in the image you must refer to them as {name}.\n- Do NOT include information about people/characters that cannot be changed (like ethnicity, gender, etc), but do still include changeable attributes (like hair style).\n- Include information about lighting.\n- Include information about camera angle.\n- Include information about whether there is a watermark or not.\n- Include information about whether there are JPEG artifacts or not.\n- If it is a photo you MUST include information about what camera was likely used and details such as aperture, shutter speed, ISO, etc.\n- Do NOT include anything sexual; keep it PG.\n- Do NOT mention the image's resolution.\n- You MUST include information about the subjective aesthetic quality of the image from low to very high.\n- Include information on the image's composition style, such as leading lines, rule of thirds, or symmetry.\n- Do NOT mention any text that is in the image.\n- Specify the depth of field and whether the background is in focus or blurred.\n- If applicable, mention the likely use of artificial or natural lighting sources.\n- Do NOT use any ambiguous language.\n- Include whether the image is sfw, suggestive, or nsfw.\n- ONLY describe the most important elements of the image.\n\"\"\"\n\n@dataclass\nclass JoyOptions():\n    repo: str = \"fancyfeast/llama-joycaption-alpha-two-hf-llava\"\n    temp: float = 0.5\n    top_k: float = 10\n    top_p: float = 0.9\n    max_new_tokens: int = 512\n    sample: bool = True\n\n    def __str__(self):\n        return f'repo=\"{self.repo}\" temp={self.temp} top_k={self.top_k} top_p={self.top_p} sample={self.sample} tokens={self.max_new_tokens}'\n\n\nprocessor: AutoProcessor = None\nllava_model: LlavaForConditionalGeneration = None\nopts = JoyOptions()\n\n\ndef load(repo: str = None):\n    \"\"\"Load JoyCaption model.\"\"\"\n    global llava_model, processor  # pylint: disable=global-statement\n    repo = repo or opts.repo\n    if llava_model is None or opts.repo != repo:\n        opts.repo = repo\n        llava_model = None\n        shared.log.info(f'Interrogate: type=vlm model=\"JoyCaption\" {str(opts)}')\n        processor = AutoProcessor.from_pretrained(repo, max_pixels=1024*1024, cache_dir=shared.opts.hfcache_dir)\n        quant_args = model_quant.create_config(module='LLM')\n        llava_model = LlavaForConditionalGeneration.from_pretrained(\n            repo,\n            torch_dtype=devices.dtype,\n            cache_dir=shared.opts.hfcache_dir,\n            **quant_args,\n        )\n        llava_model.eval()\n    sd_models.move_model(llava_model, devices.device)\n\n\ndef unload():\n    \"\"\"Release JoyCaption model from GPU/memory.\"\"\"\n    global llava_model, processor  # pylint: disable=global-statement\n    if llava_model is not None:\n        shared.log.debug(f'JoyCaption unload: model=\"{opts.repo}\"')\n        sd_models.move_model(llava_model, devices.cpu, force=True)\n        llava_model = None\n        processor = None\n        devices.torch_gc(force=True)\n    else:\n        shared.log.debug('JoyCaption unload: no model loaded')\n\n\n@torch.no_grad()\ndef predict(question: str, image, vqa_model: str = None) -> str:\n    opts.max_new_tokens = shared.opts.interrogate_vlm_max_length\n    load(vqa_model)\n\n    if len(question) < 2:\n        question = \"Describe the image.\"\n    question = question.replace('<', '').replace('>', '')\n    convo = [\n        { \"role\": \"system\", \"content\": \"You are a helpful image captioner.\" },\n        { \"role\": \"user\", \"content\": question },\n    ]\n    convo_string = processor.apply_chat_template(convo, tokenize=False, add_generation_prompt=True)\n    inputs = processor(text=[convo_string], images=[image], return_tensors=\"pt\").to(devices.device)\n    inputs['pixel_values'] = inputs['pixel_values'].to(devices.dtype)\n    with devices.inference_context():\n        generate_ids = llava_model.generate( # Generate the captions\n            **inputs,\n            # input_ids=inputs['input_ids'],\n            # pixel_values=inputs['pixel_values'],\n            # attention_mask=inputs['attention_mask'],\n            max_new_tokens=opts.max_new_tokens,\n            suppress_tokens=None,\n            use_cache=True,\n            do_sample=opts.sample,\n            temperature=opts.temp,\n            top_k=opts.top_k,\n            top_p=opts.top_p,\n        )[0]\n        generate_ids = generate_ids[inputs['input_ids'].shape[1]:] # Trim off the prompt\n        caption = processor.tokenizer.decode(generate_ids, skip_special_tokens=True, clean_up_tokenization_spaces=False) # Decode the caption\n    if shared.opts.interrogate_offload:\n        sd_models.move_model(llava_model, devices.cpu, force=True)\n    caption = caption.replace('\\n\\n', '\\n').strip()\n    return caption\n"
  },
  {
    "path": "modules/interrogate/joytag.py",
    "content": "# based on <https://huggingface.co/spaces/fancyfeast/joytag>\n\nimport os\nimport math\nimport json\nfrom pathlib import Path\nfrom typing import Optional\nfrom PIL import Image\nimport torch\nimport torch.backends.cuda\nimport torch.nn as nn\nimport torch.nn.functional as F\nfrom transformers.activations import QuickGELUActivation\nimport torchvision\nimport torchvision.transforms.functional as TVF\nimport einops\nfrom einops.layers.torch import Rearrange\nimport huggingface_hub\nfrom modules import shared, devices, sd_models\n\n\nmodel = None\ntags = None\nMODEL_REPO = \"fancyfeast/joytag\"\nTHRESHOLD = 0.4\nMODEL_CONFIGS = {\n    # Custom models trained from scratch\n    # \"Standard\" definitions:\n    # name | layers | width | heads\n    #  B   |   12   |  768  |   12\n    #  L   |   24   | 1024  |   16\n    #  H   |   32   | 1280  |   16\n    #  G   |   48   | 1664  |   16\n    #  e   |   56   | 1792  |   16\n    #  22  |   48   | 6144  |   48\n\n    # B/16, 224, PaLM, GELU\n    'CustomTest6': {\n        'class': 'CLIPLikeModel',\n        'embedding_dim': 768,\n        'num_attention_heads': 12,\n        'activation_cls': nn.GELU,\n        'num_channels': 3,\n        'patch_size': 16,\n        'use_palm_alt': True,\n        'num_layers': 12,\n        'use_mha_alt': False,\n        'good_dropout': False,\n    },\n\n    # GAP head + Sinusoidal positional embeddings + 448 image size\n    'CustomTest18': {\n        'class': 'CLIPLikeModel',\n        'embedding_dim': 768,\n        'num_attention_heads': 12,\n        'activation_cls': nn.GELU,\n        'num_channels': 3,\n        'patch_size': 16,\n        'use_palm_alt': True,\n        'num_layers': 12,\n        'use_mha_alt': False,\n        'good_dropout': False,\n        'use_gap_head': True,\n        'sine_positional_embeddings': True,\n    },\n\n    # SW Model + B/16 + ASL + 448 image size\n    # cutout_max_pct = 0\n    # mixup_alpha = 0.8\n    # noise_level = 2\n    # random_resize_method = true\n    # total_labels = 6549\n    'SWModel1': {'class': 'ViT', 'num_blocks': 12, 'patch_size': 16, 'd_model': 768, 'mlp_dim': 768*4, 'num_heads': 12, 'stochdepth_rate': 0.05, 'use_sine': False},\n    # Sinusoidal positional embeddings\n    'SWModel2': {'class': 'ViT', 'num_blocks': 12, 'patch_size': 16, 'd_model': 768, 'mlp_dim': 768*4, 'num_heads': 12, 'stochdepth_rate': 0.05, 'use_sine': True},\n    # Sinusoidal positional embeddings + 224 image size + L/14\n    'SWModel3': {'class': 'ViT', 'num_blocks': 24, 'patch_size': 14, 'd_model': 1024, 'mlp_dim': 1024*4, 'num_heads': 16, 'stochdepth_rate': 0.05, 'layerscale_init': 1e-1, 'use_sine': True},\n    # Sinusoidal positional embeddings + 224 image size + G/14\n    'SWModel4': {'class': 'ViT', 'num_blocks': 48, 'patch_size': 14, 'd_model': 1664, 'mlp_dim': 1664*4, 'num_heads': 16, 'stochdepth_rate': 0.05, 'layerscale_init': 1e-1, 'use_sine': True},\n    # Sinusoidal positional embeddings + focal loss\n    'SWModel5': {'class': 'ViT', 'num_blocks': 12, 'patch_size': 16, 'd_model': 768, 'mlp_dim': 768*4, 'num_heads': 12, 'stochdepth_rate': 0.05, 'use_sine': True},\n    'SWModel6': {'class': 'ViT', 'num_blocks': 12, 'patch_size': 16, 'd_model': 768, 'mlp_dim': 768*4, 'num_heads': 12, 'stochdepth_rate': 0.05, 'use_sine': True},\n    'SWModel7': {'class': 'ViT', 'num_blocks': 12, 'patch_size': 16, 'd_model': 768, 'mlp_dim': 768*4, 'num_heads': 12, 'stochdepth_rate': 0.05, 'use_sine': True},\n    'SWModel8': {'class': 'ViT', 'num_blocks': 12, 'patch_size': 16, 'd_model': 768, 'mlp_dim': 768*4, 'num_heads': 12, 'stochdepth_rate': 0.05, 'use_sine': True},\n    'SWModel9': {'class': 'ViT', 'num_blocks': 12, 'patch_size': 16, 'd_model': 768, 'mlp_dim': 768*4, 'num_heads': 12, 'stochdepth_rate': 0.05, 'use_sine': True},\n    'SWModel10': {'class': 'ViT', 'num_blocks': 12, 'patch_size': 16, 'd_model': 768, 'mlp_dim': 768*4, 'num_heads': 12, 'stochdepth_rate': 0.05, 'use_sine': True},\n    'SWModel11': {'class': 'ViT', 'num_blocks': 12, 'patch_size': 16, 'd_model': 768, 'mlp_dim': 768*4, 'num_heads': 12, 'stochdepth_rate': 0, 'use_sine': True},\n    # Trying head_mean_after\n    'SWModel12': {'class': 'ViT', 'num_blocks': 12, 'patch_size': 16, 'd_model': 768, 'mlp_dim': 768*4, 'num_heads': 12, 'stochdepth_rate': 0.05, 'use_sine': True, 'head_mean_after': True},\n    # Fat boy\n    'SWModel13': {'class': 'ViT', 'num_blocks': 6, 'patch_size': 16, 'd_model': 1536, 'mlp_dim': 1536*4, 'num_heads': 12, 'stochdepth_rate': 0.05, 'use_sine': True},\n    # L/14\n    'SWModel14': {'class': 'ViT', 'num_blocks': 24, 'patch_size': 14, 'd_model': 1024, 'mlp_dim': 1024*4, 'num_heads': 16, 'stochdepth_rate': 0.05, 'layerscale_init': 1e-1, 'use_sine': True},\n    'SWModel15': {'class': 'ViT', 'num_blocks': 24, 'patch_size': 14, 'd_model': 1024, 'mlp_dim': 1024*4, 'num_heads': 16, 'stochdepth_rate': 0.05, 'layerscale_init': 1e-5, 'use_sine': True},\n    'SWModel16': {'class': 'ViT', 'num_blocks': 24, 'patch_size': 14, 'd_model': 1024, 'mlp_dim': 1024*4, 'num_heads': 16, 'stochdepth_rate': 0.10, 'layerscale_init': 1e-1, 'use_sine': True},\n    'SWModel16f': {'class': 'ViT', 'num_blocks': 24, 'patch_size': 14, 'd_model': 1024, 'mlp_dim': 1024*4, 'num_heads': 16, 'stochdepth_rate': 0.10, 'layerscale_init': 1e-1, 'use_sine': True},\n    'SWModel22': {'class': 'ViT', 'num_blocks': 24, 'patch_size': 14, 'd_model': 1024, 'mlp_dim': 1024*4, 'num_heads': 16, 'stochdepth_rate': 0.20, 'layerscale_init': 1e-1, 'use_sine': True},\n    'SWModel25': {'class': 'ViT', 'num_blocks': 24, 'patch_size': 16, 'd_model': 1024, 'mlp_dim': 1024*4, 'num_heads': 16, 'stochdepth_rate': 0.15, 'layerscale_init': 1e-1, 'use_sine': True, 'cnn_stem': 'conv:c=128;ln;relu;conv:c=256;ln;relu;conv:c=512;ln;relu;conv:c=1024;ln;relu;conv:c=1024,s=1,k=1,p=0'},\n    # CNN stem\n    'SWModel18': {'class': 'ViT', 'num_blocks': 12, 'patch_size': 16, 'd_model': 768, 'mlp_dim': 768*4, 'num_heads': 12, 'stochdepth_rate': 0.05, 'use_sine': True, 'cnn_stem': 'conv:c=64;bn;relu;conv:c=128;bn;relu;conv:c=256;bn;relu;conv:c=512;bn;relu;conv:c=768,s=1,k=1'},\n    'SWModel19': {'class': 'ViT', 'num_blocks': 12, 'patch_size': 16, 'd_model': 768, 'mlp_dim': 768*4, 'num_heads': 12, 'stochdepth_rate': 0.05, 'use_sine': True, 'cnn_stem': 'conv:c=64;bn;relu;conv:c=128;bn;relu;conv:c=128,s=1;bn;relu;conv:c=256;bn;relu;conv:c=256,s=1;bn;relu;conv:c=512;bn;relu;conv:c=768,s=1,k=1,p=0'},\n    'SWModel20': {'class': 'ViT', 'num_blocks': 12, 'patch_size': 16, 'd_model': 768, 'mlp_dim': 768*4, 'num_heads': 12, 'stochdepth_rate': 0.05, 'use_sine': True, 'cnn_stem': 'conv:c=64;ln;relu;conv:c=128;ln;relu;conv:c=256;ln;relu;conv:c=512;ln;relu;conv:c=768,s=1,k=1,p=0'},\n    'SWModel21': {'class': 'ViT', 'num_blocks': 12, 'patch_size': 16, 'd_model': 768, 'mlp_dim': 768*4, 'num_heads': 12, 'stochdepth_rate': 0.05, 'use_sine': True, 'cnn_stem': 'conv:c=64;ln;gelu;conv:c=128;ln;gelu;conv:c=256;ln;gelu;conv:c=512;ln;gelu;conv:c=768,s=1,k=1,p=0'},\n    'SWModel23': {'class': 'ViT', 'num_blocks': 12, 'patch_size': 16, 'd_model': 768, 'mlp_dim': 768*4, 'num_heads': 12, 'stochdepth_rate': 0.05, 'use_sine': True, 'cnn_stem': 'conv:c=64;ln;relu;conv:c=128;ln;relu;conv:c=256;ln;relu;conv:c=512;ln;relu;conv:c=768,s=1,k=1,p=0'},\n    'SWModel24': {'class': 'ViT', 'num_blocks': 12, 'patch_size': 16, 'd_model': 768, 'mlp_dim': 768*4, 'num_heads': 12, 'stochdepth_rate': 0.05, 'use_sine': True, 'cnn_stem': 'conv:c=64;ln;relu;conv:c=128;ln;relu;conv:c=256;ln;relu;conv:c=512;ln;relu;conv:c=768,s=1,k=1,p=0'},\n    # H/14\n    'SWModel17': {'class': 'ViT', 'num_blocks': 32, 'patch_size': 14, 'd_model': 1280, 'mlp_dim': 1280*4, 'num_heads': 16, 'stochdepth_rate': 0.05, 'layerscale_init': 1e-1, 'use_sine': True},\n    'SWModel26': {'class': 'ViT', 'num_blocks': 32, 'patch_size': 14, 'd_model': 1280, 'mlp_dim': 1280*4, 'num_heads': 16, 'stochdepth_rate': 0.15, 'layerscale_init': 1e-1, 'use_sine': True},\n}\n\n\nclass VisionModel(nn.Module):\n    image_size: int\n    n_tags: int\n\n    def __init__(self, image_size: int, n_tags: int):\n        super().__init__()\n        self.image_size = image_size\n        self.n_tags = n_tags\n\n    @staticmethod\n    def load_model(path: str) -> 'VisionModel':\n        with open(Path(path) / 'config.json', 'r', encoding='utf8') as f:\n            config = json.load(f)\n        from safetensors.torch import load_file\n        resume = load_file(Path(path) / 'model.safetensors', device='cpu')\n        model_classes = VisionModel.__subclasses__()\n        model_cls = next(cls for cls in model_classes if cls.__name__ == config['class'])\n        instance = model_cls(**{k: v for k, v in config.items() if k != 'class'})\n        instance.load(resume)\n        return instance\n\n    @staticmethod\n    def from_config(config: dict) -> 'VisionModel':\n        model_classes = VisionModel.__subclasses__()\n        model_cls = next(cls for cls in model_classes if cls.__name__ == config['class'])\n        return model_cls(**{k: v for k, v in config.items() if k != 'class'})\n\n    def get_optimized_parameters(self, lr: float):\n        raise NotImplementedError\n\n    def save(self):\n        raise NotImplementedError\n\n    def load(self, state_dict):\n        raise NotImplementedError\n\n\ndef basic_calculate_loss(preds: dict[str, torch.Tensor], batch: dict, pos_weight: torch.Tensor, loss_type: str):\n    def asl_helper(preds, target):\n        p = F.softmax(preds, dim=1)\n        xs_pos = p.clamp(min=1e-6)\n        xs_neg = (1 - p).clamp(min=1e-6)\n        los_pos = torch.log(torch.gather(xs_pos, 1, target.unsqueeze(1))).sum()\n        los_neg = torch.log(xs_neg)\n        los_neg = los_neg.sum() - torch.gather(los_neg, 1, target.unsqueeze(1)).sum()\n        loss = los_pos + los_neg\n        return -loss\n\n    if loss_type == \"ce\":\n        loss = F.binary_cross_entropy_with_logits(preds['tags'], batch['tags'])\n    elif loss_type == \"weighted\":\n        loss = F.binary_cross_entropy_with_logits(preds['tags'], batch['tags'], pos_weight=pos_weight)\n    elif loss_type == \"focal\":\n        gamma = 2\n        p = torch.sigmoid(preds['tags'])\n        ce_loss = F.binary_cross_entropy_with_logits(preds['tags'], batch['tags'], reduction='none')\n        p_t = p * batch['tags'] + (1 - p) * (1 - batch['tags'])\n        loss = ce_loss * ((1 - p_t) ** gamma)\n        loss = loss.mean()\n    elif loss_type == \"focal2\":\n        gamma = 2\n        p = torch.sigmoid(preds['tags'])\n        ce_loss = F.binary_cross_entropy_with_logits(preds['tags'], batch['tags'], reduction='none')\n        p_t = p * batch['tags'] + (1 - p) * (1 - batch['tags'])\n        loss = ce_loss * ((1 - p_t) ** gamma) * 256\n        loss = loss.mean()\n    elif loss_type == \"asl\":\n        p = torch.sigmoid(preds['tags'])\n        xs_pos = p\n        xs_neg = 1 - p\n        los_pos = batch['tags'] * torch.log(xs_pos.clamp(min=1e-6))\n        los_neg = (1 - batch['tags']) * torch.log(xs_neg.clamp(min=1e-6))\n        loss = los_pos + los_neg\n        loss = -loss.sum()\n        # Rating\n        loss = loss + asl_helper(preds['rating'], batch['rating'])\n        # Score\n        loss = loss + asl_helper(preds['score'], batch['score'])\n    elif loss_type == \"asl2\":\n        p = torch.sigmoid(preds['tags'])\n        xs_pos = p\n        xs_neg = 1 - p\n        los_pos = batch['tags'] * torch.log(xs_pos.clamp(min=1e-6))\n        los_neg = (1 - batch['tags']) * torch.log(xs_neg.clamp(min=1e-6))\n        loss = -los_pos - los_neg\n        loss = loss.sum()\n    elif loss_type == \"asl3\":\n        p = torch.sigmoid(preds['tags'])\n        xs_pos = p\n        xs_neg = 1 - p\n        los_pos = batch['tags'] * torch.log(xs_pos.clamp(min=1e-6))\n        los_neg = (1 - batch['tags']) * torch.log(xs_neg.clamp(min=1e-6))\n        loss = -los_pos - los_neg\n        loss = loss.mean()\n    elif loss_type == \"asl4\":\n        p = torch.sigmoid(preds['tags'])\n        xs_pos = p\n        xs_neg = 1 - p\n        los_pos = batch['tags'] * torch.log(xs_pos.clamp(min=1e-6))\n        los_neg = (1 - batch['tags']) * torch.log(xs_neg.clamp(min=1e-6))\n        loss = -los_pos - los_neg\n        loss = loss.mean() * 128\n    elif loss_type == \"asl5\":\n        loss = F.binary_cross_entropy_with_logits(preds['tags'], batch['tags'], pos_weight=pos_weight) * 128\n    elif loss_type == \"asl6\":\n        loss = F.binary_cross_entropy_with_logits(preds['tags'], batch['tags'], pos_weight=pos_weight) * 256\n    elif loss_type == \"asl7\":\n        loss = F.binary_cross_entropy_with_logits(preds['tags'], batch['tags'], pos_weight=pos_weight) * 2\n    else:\n        raise ValueError(f\"Invalid loss type: {loss_type}\")\n    return loss\n\n\nclass CLIPMlp(nn.Module):\n    def __init__(self, hidden_size: int, intermediate_size: int, activation_cls):\n        super().__init__()\n        self.activation_fn = activation_cls()\n        self.fc1 = nn.Linear(hidden_size, intermediate_size)\n        self.fc2 = nn.Linear(intermediate_size, hidden_size)\n\n    def forward(self, hidden_states: torch.Tensor):\n        hidden_states = self.fc1(hidden_states)\n        hidden_states = self.activation_fn(hidden_states)\n        hidden_states = self.fc2(hidden_states)\n        return hidden_states\n\n\nclass FastCLIPAttention2(nn.Module):\n    \"\"\"Fast Attention module for CLIP-like. This is NOT a drop-in replacement for CLIPAttention, since it adds additional flexibility.  Mainly uses xformers.\"\"\"\n    def __init__(self, hidden_size: int, out_dim: int, num_attention_heads: int, out_seq_len: Optional[int] = None, norm_qk: bool = False):\n        super().__init__()\n        self.out_seq_len = out_seq_len\n        self.embed_dim = hidden_size\n        self.out_dim = out_dim\n        self.norm_qk = norm_qk\n        self.num_heads = num_attention_heads\n        self.head_dim = hidden_size // num_attention_heads\n        assert self.head_dim * num_attention_heads == self.embed_dim, \"embed_dim must be divisible by num_attention_heads\"\n        self.q_proj = nn.Linear(self.embed_dim, self.embed_dim)\n        self.kv_proj = nn.Linear(self.embed_dim, self.embed_dim * 2)\n        self.out_proj = nn.Linear(self.embed_dim, self.out_dim)\n        if self.norm_qk:\n            self.query_norm = nn.LayerNorm(self.embed_dim)\n            self.key_norm = nn.LayerNorm(self.embed_dim)\n\n    def forward(self, query_states: torch.Tensor, kv_states: torch.Tensor) -> torch.Tensor:\n        bsz, src_len, embed_dim = kv_states.size()\n        if self.out_seq_len is not None:\n            tgt_len = self.out_seq_len\n        else:\n            tgt_len = src_len\n        kv_states = self.kv_proj(kv_states)  # (bsz, src_len, embed_dim * 2)\n        q_states = self.q_proj(query_states[:, :tgt_len])   # (bsz, tgt_len, embed_dim)\n        # NOTE: It is not clear if LayerNorm should be applied to the embed_dim, or to the head_dim\n        if self.norm_qk:\n            q_states = self.query_norm(q_states).type(q_states.dtype)\n            k_states = self.key_norm(kv_states[:, :, :embed_dim]).type(kv_states.dtype)\n            v_states = kv_states[:, :, embed_dim:]\n        else:\n            k_states = kv_states[:, :, :embed_dim]\n            v_states = kv_states[:, :, embed_dim:]\n        q_states = q_states.view(bsz, tgt_len, self.num_heads, self.head_dim).transpose(1, 2)  # (bsz, num_heads, tgt_len, head_dim)\n        k_states = k_states.view(bsz, src_len, self.num_heads, self.head_dim).transpose(1, 2)  # (bsz, num_heads, src_len, head_dim)\n        v_states = v_states.view(bsz, src_len, self.num_heads, self.head_dim).transpose(1, 2)  # (bsz, num_heads, src_len, head_dim)\n        # Performs scale of query_states, attention, and softmax\n        with torch.backends.cuda.sdp_kernel(enable_math=False):\n            x = F.scaled_dot_product_attention(q_states, k_states, v_states)   # (bsz, num_heads, tgt_len, head_dim)\n            x = x.transpose(1, 2).contiguous().view(bsz, tgt_len, embed_dim)   # (bsz, tgt_len, embed_dim)\n        # Projection\n        x = self.out_proj(x)  # (bsz, tgt_len, out_dim)\n        return x\n\n\nclass SkipInit(nn.Module):\n    def __init__(self, hidden_size: int, channel_wise: bool, init_scale: float):\n        super().__init__()\n        self.hidden_size = hidden_size\n        self.channel_wise = channel_wise\n        self.init_scale = init_scale\n        if self.channel_wise:\n            self.scale = nn.Parameter(torch.ones(hidden_size) * init_scale)\n        else:\n            self.scale = nn.Parameter(torch.tensor(init_scale))\n\n    def forward(self, x: torch.Tensor) -> torch.Tensor:\n        return x * self.scale\n\n\nclass FastCLIPEncoderLayer(nn.Module):\n    def __init__(\n        self,\n        hidden_size: int,\n        num_attention_heads: int,\n        out_seq_len: Optional[int],\n        activation_cls = QuickGELUActivation,\n        use_palm_alt: bool = False,\n        norm_qk: bool = False,\n        skip_init: Optional[float] = None,\n        stochastic_depth: Optional[float] = None,\n    ):\n        super().__init__()\n        self.use_palm_alt = use_palm_alt\n        self.stochastic_depth = stochastic_depth\n        self.self_attn = FastCLIPAttention2(\n            hidden_size=hidden_size,\n            out_dim=hidden_size,\n            num_attention_heads=num_attention_heads,\n            out_seq_len=out_seq_len,\n            norm_qk=norm_qk,\n        )\n        self.mlp = CLIPMlp(hidden_size, 4 * hidden_size, activation_cls)\n        self.layer_norm1 = nn.LayerNorm(hidden_size)\n        if not use_palm_alt:\n            self.layer_norm2 = nn.LayerNorm(hidden_size)\n        if skip_init is not None:\n            self.attn_skip_init = SkipInit(hidden_size, channel_wise=True, init_scale=skip_init)\n            self.mlp_skip_init = SkipInit(hidden_size, channel_wise=True, init_scale=skip_init)\n        else:\n            self.attn_skip_init = nn.Identity()\n            self.mlp_skip_init = nn.Identity()\n\n    def forward(self, hidden_states: torch.Tensor):\n        residual = hidden_states\n        hidden_states = self.layer_norm1(hidden_states)\n        if not self.use_palm_alt:\n            hidden_states = self.self_attn(query_states=hidden_states, kv_states=hidden_states)\n            hidden_states = self.attn_skip_init(hidden_states)\n            hidden_states = hidden_states + residual[:, :hidden_states.size(1)]\n            residual = hidden_states\n            hidden_states = self.layer_norm2(hidden_states)\n            hidden_states = self.mlp(hidden_states)\n            hidden_states = self.mlp_skip_init(hidden_states)\n            hidden_states = hidden_states + residual\n        else:\n            # An alternative implementation inspired by the PALM paper\n            # By performing the attention and MLP in parallel it's possible to fuse the linear projections of the attention and MLP layers\n            # We don't do that here yet, but that supposedly improves efficiency without hurting performance\n            attn = self.self_attn(query_states=hidden_states, kv_states=hidden_states)\n            attn = self.attn_skip_init(attn)\n            mlp = self.mlp(hidden_states[:, :attn.size(1)])\n            mlp = self.mlp_skip_init(mlp)\n            if self.stochastic_depth is not None:\n                attn = torchvision.ops.stochastic_depth(attn, self.stochastic_depth, mode='row', training=self.training)\n                mlp = torchvision.ops.stochastic_depth(mlp, self.stochastic_depth, mode='row', training=self.training)\n            hidden_states = residual[:, :attn.size(1)] + attn + mlp\n        return hidden_states\n\n\ndef sinusoidal_position_embedding(width: int, height: int, depth: int, dtype, device, temperature = 10000):\n    \"\"\"\n    Sinusoidal position embedding. Returns a flat tensor of shape (h * w, d).\n    \"\"\"\n    assert depth % 4 == 0, \"Embedding dimension must be divisible by 4.\"\n    y, x = torch.meshgrid(torch.arange(height, device=device), torch.arange(width, device=device), indexing=\"ij\")\n    omega = torch.arange(depth // 4, device=device) / (depth // 4 - 1)\n    omega = 1. / (temperature ** omega)\n    y = y.flatten()[:, None] * omega[None, :]\n    x = x.flatten()[:, None] * omega[None, :]\n    embedding = torch.cat([x.sin(), x.cos(), y.sin(), y.cos()], dim=1)\n    return embedding.type(dtype)\n\n\nclass CLIPEmbeddingLayer(nn.Module):\n    def __init__(self, hidden_size: int, num_channels: int, image_size: int, patch_size: int, patch_dropout: float = 0.0, good_dropout: bool = False, dpn: bool = False, sine_positional_embeddings: bool = False):\n        super().__init__()\n        assert image_size % patch_size == 0, \"Image dimensions must be divisible by the patch size.\"\n        seq_len = (image_size // patch_size) ** 2\n        self.patch_dropout = patch_dropout\n        self.hidden_size = hidden_size\n        self.good_dropout = good_dropout\n        self.dpn = dpn\n        self.sine_positional_embeddings = sine_positional_embeddings\n        self.patch_size = patch_size\n        self.patch_embeddings = nn.Conv2d(\n            in_channels=num_channels,\n            out_channels=hidden_size,\n            kernel_size=patch_size,\n            stride=patch_size,\n            bias=False,\n        )\n        if not self.sine_positional_embeddings:\n            self.positional_embeddings = nn.Embedding(seq_len, hidden_size)\n        self.register_buffer(\"position_ids\", torch.arange(seq_len))\n        if self.dpn:\n            self.to_patch_embeddings = nn.Sequential(\n                Rearrange('b c (h p1) (w p2) -> b (h w) (p1 p2 c)', p1=patch_size, p2=patch_size),\n                nn.LayerNorm(3 * patch_size * patch_size),\n                nn.Linear(3 * patch_size * patch_size, hidden_size),\n                nn.LayerNorm(hidden_size),\n            )\n        else:\n            self.to_patch_embeddings = nn.Conv2d(\n                in_channels=num_channels,\n                out_channels=hidden_size,\n                kernel_size=patch_size,\n                stride=patch_size,\n                bias=False,\n            )\n\n    def forward(self, pixel_values: torch.FloatTensor) -> torch.Tensor:\n        B, _C, H, W = pixel_values.shape\n        assert H % self.patch_size == 0, f\"Input image height ({H}) needs to be divisible by the patch size ({self.patch_size}).\"\n        assert W % self.patch_size == 0, f\"Input image width ({W}) needs to be divisible by the patch size ({self.patch_size}).\"\n        if self.dpn:\n            patches = self.to_patch_embeddings(pixel_values)\n        else:\n            patches = self.to_patch_embeddings(pixel_values)\n            patches = patches.flatten(2).transpose(1, 2)\n        seq_len = patches.shape[1]\n        patch_dropout = int(math.ceil((1.0 - self.patch_dropout) * seq_len))\n        if self.sine_positional_embeddings:\n            position_embeddings = sinusoidal_position_embedding(W // self.patch_size, H // self.patch_size, self.hidden_size, pixel_values.dtype, pixel_values.device)\n        else:\n            position_embeddings = self.positional_embeddings(self.position_ids)\n        if patch_dropout == seq_len or not self.training:\n            embeddings = patches + position_embeddings\n        elif self.good_dropout:\n            # Pick random patches to drop out\n            # The \"good_dropout\" variant uses random permutations for each batch item, but is slightly slower and involves more code\n            # The below method is a nice trick to generate a batch of random permutations.\n            # Torch (as of 1.13) doesn't have a built-in function to do this, and a for loop of torch.randperm is slow.\n            # Based on some benchmarks I measured the generation of the mask and the fetching to be only 50% slower than the non-\"good_dropout\" variant.\n            # And the time taken here is only a fraction of the time spent performing the embedding convolution.\n            # Generate a matrix of random numbers between 0 and 1 of shape (B, seq_len)\n            patch_mask = torch.rand(B, seq_len, device=patches.device)\n            # For each batch tensor, use argsort to convert the random numbers into a permutation of the patch indices\n            patch_mask = torch.argsort(patch_mask, dim=1)\n            # Truncate\n            patch_mask = patch_mask[:, :patch_dropout]\n\n            embeddings = patches.gather(1, patch_mask.unsqueeze(-1).expand(-1, -1, self.hidden_size)) + position_embeddings[patch_mask]\n        else:\n            # The non-\"good_dropout\" variant uses a single random permutation for all batch items, but is faster and uses less code\n            indices = torch.randperm(seq_len, device=pixel_values.device)[:patch_dropout]\n            embeddings = patches[:, indices, :] + position_embeddings[indices.expand(1, -1)]\n        return embeddings\n\n\nclass MHAPoolingHead(nn.Module):\n    def __init__(self, hidden_size: int, num_attention_heads: int, activation_cls, out_dim: int, alt_style: bool, norm_qk: bool):\n        super().__init__()\n        self.out_dim = out_dim if not alt_style else hidden_size\n        self.probe = nn.Parameter(torch.randn(hidden_size))\n        self.mlp = CLIPMlp(hidden_size, 4 * hidden_size, activation_cls)\n        self.layer_norm = nn.LayerNorm(hidden_size)\n        self.pooling_head = nn.Linear(hidden_size, 1)\n        self.self_attn = FastCLIPAttention2(\n            hidden_size=hidden_size,\n            out_dim=self.out_dim,\n            num_attention_heads=num_attention_heads,\n            out_seq_len=1,\n            norm_qk=norm_qk,\n        )\n        self.mlp = CLIPMlp(self.out_dim, 4 * self.out_dim, activation_cls)\n        self.layer_norm1 = nn.LayerNorm(hidden_size)\n        self.layer_norm2 = nn.LayerNorm(self.out_dim)\n        if alt_style:\n            self.final_proj = nn.Linear(hidden_size, out_dim)\n        else:\n            self.final_proj = nn.Identity()\n\n    def forward(self, hidden_states: torch.Tensor):\n        hidden_states = self.layer_norm1(hidden_states)\n        query_states = self.probe.unsqueeze(0).unsqueeze(0).expand(hidden_states.size(0), 1, -1)\n        hidden_states = self.self_attn(query_states=query_states, kv_states=hidden_states)\n        # We don't use a residual connection here because the out_dim is different from the hidden_size\n        residual = hidden_states\n        hidden_states = self.layer_norm2(hidden_states)\n        hidden_states = self.mlp(hidden_states)\n        hidden_states = hidden_states + residual\n        hidden_states = self.final_proj(hidden_states)\n        return hidden_states.squeeze(1)\n\n\nclass GAPHead(nn.Module):\n    def __init__(self, hidden_size: int, out_dim: int):\n        super().__init__()\n        self.norm = nn.LayerNorm(hidden_size)\n        self.proj = nn.Linear(hidden_size, out_dim)\n\n    def forward(self, x: torch.Tensor) -> torch.Tensor:\n        x = x.mean(dim=1)\n        x = self.norm(x)\n        x = self.proj(x)\n        return x\n\n\nclass CLIPLikeModel(VisionModel):\n    def __init__(\n        self,\n        n_tags: int,\n        embedding_dim: int,\n        num_attention_heads: int,\n        activation_cls,\n        num_channels: int,\n        image_size: int,\n        patch_size: int,\n        patch_dropout: float,\n        use_palm_alt: bool,\n        num_layers: int,\n        use_mha_alt: bool,\n        loss_type: str,\n        good_dropout: bool=False,\n        dpn: bool=False,\n        sine_positional_embeddings: bool=False,\n        norm_qk: bool = False,\n        no_wd_bias: bool = False,\n        use_gap_head: bool = False,\n        skip_init: Optional[float] = None,\n        stochastic_depth: Optional[float] = None,\n    ):\n        super().__init__(image_size, n_tags)\n        out_dim = n_tags\n        self.n_tags = n_tags\n        self.loss_type = loss_type\n        self.no_wd_bias = no_wd_bias\n        stochastic_depth_space = torch.linspace(0, stochastic_depth, num_layers) if stochastic_depth is not None else None\n        self.embedding_layer = CLIPEmbeddingLayer(embedding_dim, num_channels, image_size, patch_size, patch_dropout, good_dropout, dpn, sine_positional_embeddings)\n        self.pre_layer_norm = nn.LayerNorm(embedding_dim)\n        self.encoder_layers = nn.ModuleList([FastCLIPEncoderLayer(\n            hidden_size=embedding_dim,\n            num_attention_heads=num_attention_heads,\n            out_seq_len=None,\n            activation_cls=activation_cls,\n            use_palm_alt=use_palm_alt,\n            norm_qk=norm_qk,\n            skip_init=skip_init,\n            stochastic_depth=stochastic_depth_space[i].item() if stochastic_depth_space is not None else None,\n        ) for i in range(num_layers)])\n        if use_gap_head:\n            self.pooling_head = GAPHead(embedding_dim, out_dim)\n        else:\n            self.pooling_head = MHAPoolingHead(embedding_dim, num_attention_heads, activation_cls, out_dim, use_mha_alt, norm_qk=norm_qk)\n\n    def forward(self, batch):\n        hidden_states = self.embedding_layer(batch['image'])\n        hidden_states = self.pre_layer_norm(hidden_states)\n        for layer in self.encoder_layers:\n            hidden_states = layer(hidden_states)\n        preds = self.pooling_head(hidden_states)\n        result = { 'tags': preds }\n        return result\n\n    def calculate_loss(self, preds, batch, pos_weight):\n        return basic_calculate_loss(preds, batch, pos_weight, self.loss_type)\n\n    def get_optimized_parameters(self, lr: float):\n        if self.no_wd_bias:\n            return self.get_optimized_parameters_no_wd_bias()\n        else:\n            return self.parameters()\n\n    def get_optimized_parameters_no_wd_bias(self):\n        decay = []\n        no_decay = []\n        for name, param in self.named_parameters():\n            if not param.requires_grad:\n                continue\n            if len(param.shape) == 1 or name.endswith(\".bias\"):\n                no_decay.append(param)\n                print(f'No decay: {name}')\n            else:\n                decay.append(param)\n\n        return [\n            {'params': decay},\n            {'params': no_decay, 'weight_decay': 0.},\n        ]\n\n    def save(self):\n        return self.state_dict()\n\n    def load(self, state_dict):\n        self.load_state_dict(state_dict)\n\n\nclass MaskedAutoEncoderViT(nn.Module):\n    def __init__(\n        self,\n        n_tags: int,\n        embedding_dim: int,\n        num_attention_heads: int,\n        activation_cls,\n        num_channels: int,\n        image_size: int,\n        patch_size: int,\n        num_layers: int,\n        loss_type: str,\n        sine_positional_embeddings: bool=False,\n        decoder_embedding_dim: int = 512,\n        decoder_num_attention_heads: int = 8,\n        decoder_num_layers: int = 6,\n        decoder_force_projection: bool = False,\n        masking_ratio: float = 0.75,\n        mae_loss_weight: float = 1.0,\n        mae_normalize_targets: bool = False,\n        mae_post_norm: bool = False,\n    ):\n        super().__init__()\n        self.n_tags = n_tags\n        self.seq_len = (image_size // patch_size) ** 2\n        self.embedding_dim = embedding_dim\n        self.decoder_embedding_dim = decoder_embedding_dim\n        self.sine_positional_embeddings = sine_positional_embeddings\n        self.image_size = image_size\n        self.patch_size = patch_size\n        self.masking_ratio = masking_ratio\n        self.loss_type = loss_type\n        self.mae_loss_weight = mae_loss_weight\n        self.mae_normalize_targets = mae_normalize_targets\n        if not self.sine_positional_embeddings:\n            self.positional_embeddings = nn.Embedding(self.seq_len, embedding_dim)\n            self.decoder_positional_embeddings = nn.Embedding(self.seq_len, decoder_embedding_dim)\n        self.register_buffer(\"position_ids\", torch.arange(self.seq_len))\n        self.to_patches = Rearrange('b c (h p1) (w p2) -> b (h w) (p1 p2 c)', p1=patch_size, p2=patch_size)\n        self.patch_embedder = nn.Linear(num_channels * patch_size * patch_size, embedding_dim)\n\n        # Encoder\n        self.pre_layer_norm = nn.LayerNorm(embedding_dim)\n        self.encoder_layers = nn.ModuleList([FastCLIPEncoderLayer(\n            hidden_size=embedding_dim,\n            num_attention_heads=num_attention_heads,\n            out_seq_len=None,\n            activation_cls=activation_cls,\n            use_palm_alt=True,\n            norm_qk=False,\n            skip_init=None,\n        ) for _ in range(num_layers)])\n        # Head for classification\n        self.pooling_head = GAPHead(embedding_dim, n_tags)\n        # Decoder\n        if embedding_dim != decoder_embedding_dim or decoder_force_projection:\n            self.encoder_to_decoder_proj = nn.Linear(embedding_dim, decoder_embedding_dim)\n        else:\n            self.encoder_to_decoder_proj = nn.Identity()\n        self.decoder_pre_layer_norm = nn.LayerNorm(decoder_embedding_dim)\n        self.decoder_layers = nn.ModuleList([FastCLIPEncoderLayer(\n            hidden_size=decoder_embedding_dim,\n            num_attention_heads=decoder_num_attention_heads,\n            out_seq_len=None,\n            activation_cls=activation_cls,\n            use_palm_alt=True,\n            norm_qk=False,\n            skip_init=None,\n        ) for _ in range(decoder_num_layers)])\n        if mae_post_norm:\n            self.decoder_to_pixel_values = nn.Sequential(\n                nn.LayerNorm(decoder_embedding_dim),\n                nn.Linear(decoder_embedding_dim, num_channels * patch_size * patch_size)\n            )\n        else:\n            self.decoder_to_pixel_values = nn.Linear(decoder_embedding_dim, num_channels * patch_size * patch_size)\n        self.mask_token = nn.Parameter(torch.zeros(decoder_embedding_dim))\n        torch.nn.init.normal_(self.mask_token, std=0.02)\n\n    def forward(self, batch):\n        pixel_values = batch['image']\n        device = pixel_values.device\n        B, _C, H, W = pixel_values.shape\n        assert H % self.patch_size == 0, f\"Input image height ({H}) needs to be divisible by the patch size ({self.patch_size}).\"\n        assert W % self.patch_size == 0, f\"Input image width ({W}) needs to be divisible by the patch size ({self.patch_size}).\"\n        # Convert image to patches (B, seq_len, C * patch_size * patch_size)\n        patches = self.to_patches(pixel_values)\n        seq_len = patches.shape[1]\n        num_masked = int(self.masking_ratio * seq_len)\n        # For each batch tensor, use argsort to convert the random numbers into a permutation of the patch indices\n        # From this we can get the masked and unmasked indices\n        patch_mask = torch.rand(B, seq_len, device=device)\n        patch_mask = torch.argsort(patch_mask, dim=1)\n        masked_indices, unmasked_indices = patch_mask[:, :num_masked], patch_mask[:, num_masked:]\n        batch_range = torch.arange(B, device=device)[:, None]\n        # Masked and unmasked patches\n        unmasked_patches = patches[batch_range, unmasked_indices]\n        masked_patches = patches[batch_range, masked_indices]\n        # Embed unmasked patches for the encoder (B, seq_len, embedding_dim)\n        tokens = self.patch_embedder(unmasked_patches)\n        if self.sine_positional_embeddings:\n            position_embeddings = sinusoidal_position_embedding(W // self.patch_size, H // self.patch_size, self.embedding_dim, pixel_values.dtype, device)\n            decoder_position_embeddings = sinusoidal_position_embedding(W // self.patch_size, H // self.patch_size, self.decoder_embedding_dim, pixel_values.dtype, device)\n        else:\n            position_embeddings = self.positional_embeddings(self.position_ids)\n            decoder_position_embeddings = self.decoder_positional_embeddings(self.position_ids)\n        # Add position embeddings\n        tokens = tokens + position_embeddings[unmasked_indices]\n        # Run the encoder\n        encoded_tokens = self.pre_layer_norm(tokens)\n        for layer in self.encoder_layers:\n            encoded_tokens = layer(encoded_tokens)\n        # Label predictions\n        if self.training:\n            preds = self.pooling_head(encoded_tokens)\n        else:\n            # During inference, classify using the entire image\n            # But we'll do the usual for the MAE part, just so we can see how MAE is performing during validation\n            tokens = self.patch_embedder(patches)\n            tokens = tokens + position_embeddings\n            tokens = self.pre_layer_norm(tokens)\n            for layer in self.encoder_layers:\n                tokens = layer(tokens)\n            preds = self.pooling_head(tokens)\n        # Projection for the decoder and position embeddings\n        decoder_tokens = self.encoder_to_decoder_proj(encoded_tokens)\n        decoder_tokens = decoder_tokens + decoder_position_embeddings[unmasked_indices]\n        # Fill in the masked patches\n        mask_tokens = einops.repeat(self.mask_token, 'd -> b n d', b = B, n = num_masked)\n        mask_tokens = mask_tokens + decoder_position_embeddings[masked_indices]\n        decoder_tokens = torch.cat([decoder_tokens, mask_tokens], dim=1)\n        # Run the decoder\n        decoded_tokens = self.decoder_pre_layer_norm(decoder_tokens)\n        for layer in self.decoder_layers:\n            decoded_tokens = layer(decoded_tokens)\n        # Only predict the masked patches\n        # All the masked patches are at the end of the sequence\n        decoded_tokens = decoded_tokens[:, -num_masked:]\n        pred_pixel_values = self.decoder_to_pixel_values(decoded_tokens)\n        # Calculate the mae loss\n        if self.mae_normalize_targets:\n            # Normalize each patch by its mean and variance. The ViCHA paper says this provides better results\n            means = masked_patches.mean(dim=-1, keepdim=True)\n            variant = masked_patches.var(dim=-1, keepdim=True)\n            target = (masked_patches - means) / (variant + 1e-6)**0.5\n            mae_loss = F.mse_loss(pred_pixel_values, target)\n        else:\n            mae_loss = F.mse_loss(pred_pixel_values, masked_patches)\n        mae_loss = mae_loss * self.mae_loss_weight\n        return {\n            'tags': preds,\n            'mae_loss': mae_loss,\n        }\n\n    def calculate_loss(self, preds, batch, pos_weight):\n        return basic_calculate_loss(preds, batch, pos_weight, self.loss_type) + preds['mae_loss']\n\n    def get_optimized_parameters(self, _lr: float):\n        return self.parameters()\n\n    def save(self):\n        return self.state_dict()\n\n    def load(self, state_dict):\n        self.load_state_dict(state_dict)\n\n\nclass StochDepth(nn.Module):\n    def __init__(self, drop_rate: float, scale_by_keep: bool = False):\n        super().__init__()\n        self.drop_rate = drop_rate\n        self.scale_by_keep = scale_by_keep\n\n    def forward(self, x):\n        if not self.training:\n            return x\n        batch_size = x.shape[0]\n        r = torch.rand((batch_size, 1, 1), device=x.device)\n        keep_prob = 1 - self.drop_rate\n        binary_tensor = torch.floor(keep_prob + r)\n        if self.scale_by_keep:\n            x = x / keep_prob\n        return x * binary_tensor\n\n\nclass SkipInitChannelwise(nn.Module):\n    def __init__(self, channels, init_val=1e-6):\n        super().__init__()\n        self.channels = channels\n        self.init_val = init_val\n        self.skip = nn.Parameter(torch.ones(channels) * init_val)\n\n    def forward(self, x):\n        return x * self.skip\n\n\nclass PosEmbedding(nn.Module):\n    def __init__(self, d_model: int, max_len: int, use_sine: bool, patch_size: int):\n        super().__init__()\n        self.d_model = d_model\n        self.max_len = max_len\n        self.use_sine = use_sine\n        self.patch_size = patch_size\n        if not self.use_sine:\n            self.embedding = nn.Embedding(max_len, d_model)\n            nn.init.trunc_normal_(self.embedding.weight, std=0.02)\n            self.register_buffer(\"position_ids\", torch.arange(max_len))\n\n    def forward(self, x, width: int, height: int):\n        if self.use_sine:\n            position_embeddings = sinusoidal_position_embedding(width // self.patch_size, height // self.patch_size, self.d_model, x.dtype, x.device)\n        else:\n            position_embeddings = self.embedding(self.position_ids)\n        return x + position_embeddings\n\n\nclass MLPBlock(nn.Module):\n    def __init__(self, d_model: int, d_ff: int, stochdepth_rate: float):\n        super().__init__()\n        self.linear1 = nn.Linear(d_model, d_ff)\n        self.linear2 = nn.Linear(d_ff, d_model)\n        self.activation = nn.GELU()\n        if stochdepth_rate > 0:\n            self.stochdepth = StochDepth(stochdepth_rate, scale_by_keep=True)\n        else:\n            self.stochdepth = None\n\n    def forward(self, x):\n        x = self.linear1(x)\n        x = self.activation(x)\n        if self.stochdepth is not None:\n            x = self.stochdepth(x)\n        x = self.linear2(x)\n        return x\n\n\nclass ViTBlock(nn.Module):\n    def __init__(self, num_heads: int, d_model: int, d_ff: int, layerscale_init: float, stochdepth_rate: float):\n        super().__init__()\n        self.num_heads = num_heads\n        self.d_model = d_model\n        assert d_model % num_heads == 0, \"d_model must be divisible by num_heads\"\n        # MHA\n        self.norm1 = nn.LayerNorm(d_model)\n        self.qkv_proj = nn.Linear(d_model, d_model * 3)\n        self.out_proj = nn.Linear(d_model, d_model)\n        self.skip_init1 = SkipInitChannelwise(channels=d_model, init_val=layerscale_init)\n        self.stochdepth1 = StochDepth(stochdepth_rate, scale_by_keep=True) if stochdepth_rate > 0 else None\n        # MLP\n        self.norm2 = nn.LayerNorm(d_model)\n        self.mlp = MLPBlock(d_model, d_ff, stochdepth_rate)\n        self.skip_init2 = SkipInitChannelwise(channels=d_model, init_val=layerscale_init)\n        self.stochdepth2 = StochDepth(stochdepth_rate, scale_by_keep=True) if stochdepth_rate > 0 else None\n\n    def forward(self, x):\n        bsz, src_len, embed_dim = x.shape\n        out = x\n        out = self.norm1(out)\n        # MHA\n        qkv_states = self.qkv_proj(out).split(self.d_model, dim=-1)\n        q_states = qkv_states[0].view(bsz, src_len, self.num_heads, embed_dim // self.num_heads).transpose(1, 2)  # (bsz, num_heads, src_len, embed_dim // num_heads)\n        k_states = qkv_states[1].view(bsz, src_len, self.num_heads, embed_dim // self.num_heads).transpose(1, 2)  # (bsz, num_heads, src_len, embed_dim // num_heads)\n        v_states = qkv_states[2].view(bsz, src_len, self.num_heads, embed_dim // self.num_heads).transpose(1, 2)  # (bsz, num_heads, src_len, embed_dim // num_heads)\n        with torch.backends.cuda.sdp_kernel(enable_math=False):\n            out = F.scaled_dot_product_attention(q_states, k_states, v_states)   # (bsz, num_heads, tgt_len, head_dim)\n            out = out.transpose(1, 2).contiguous().view(bsz, src_len, embed_dim)   # (bsz, tgt_len, embed_dim)\n        out = self.out_proj(out)\n        out = self.skip_init1(out)\n        if self.stochdepth1 is not None:\n            out = self.stochdepth1(out)\n        x = out + x\n        out = self.norm2(x)\n        out = self.mlp(out)\n        out = self.skip_init2(out)\n        if self.stochdepth2 is not None:\n            out = self.stochdepth2(out)\n        out = out + x\n        return out\n\n\ndef CaiT_LayerScale_init(network_depth):\n    if network_depth <= 18:\n        return 1e-1\n    elif network_depth <= 24:\n        return 1e-5\n    else:\n        return 1e-6\n\n\nclass CNNLayerNorm(nn.Module):\n    def __init__(self, d_model: int):\n        super().__init__()\n        self.norm = nn.LayerNorm(d_model)\n\n    def forward(self, x: torch.Tensor) -> torch.Tensor:\n        x = x.transpose(1, 3)\n        x = self.norm(x)\n        x = x.transpose(1, 3)\n        return x\n\n\nclass CNNStem(nn.Module):\n    def __init__(self, config: str):\n        super().__init__()\n        self.config = config\n        layers = []\n        channels = 3\n        for line in config.split(\";\"):\n            ty, line = line.split(\":\") if \":\" in line else (line, \"\")\n            options = line.split(\",\")\n            options = [o.split(\"=\") for o in options] if line else []\n            options = {k: v for k, v in options} # pylint: disable=unnecessary-comprehension # noqa: C416\n            if ty == 'conv':\n                layers.append(nn.Conv2d(\n                    in_channels=channels,\n                    out_channels=int(options['c']),\n                    kernel_size=int(options['k'] if 'k' in options else 3),\n                    stride=int(options['s'] if 's' in options else 2),\n                    bias=True,\n                    padding=int(options['p'] if 'p' in options else 1),\n                ))\n                channels = int(options['c'])\n            elif ty == 'bn':\n                layers.append(nn.BatchNorm2d(channels))\n            elif ty == 'ln':\n                layers.append(CNNLayerNorm(channels))\n            elif ty == 'relu':\n                layers.append(nn.ReLU())\n            elif ty == 'gelu':\n                layers.append(nn.GELU())\n        self.conv = nn.Sequential(*layers)\n\n    def forward(self, x: torch.Tensor) -> torch.Tensor:\n        return self.conv(x)\n\n\nclass ViT(VisionModel):\n    def __init__(self,\n        n_tags: int,\n        image_size: int,\n        num_blocks: int,\n        patch_size: int,\n        d_model: int,\n        mlp_dim: int,\n        num_heads: int,\n        stochdepth_rate: float,\n        use_sine: bool,\n        loss_type: str,\n        layerscale_init: Optional[float] = None,\n        head_mean_after: bool = False,\n        cnn_stem: str = None,\n        patch_dropout: float = 0.0,\n    ):\n        super().__init__(image_size, n_tags)\n        #assert image_size % patch_size == 0, \"image_size must be divisible by patch_size\"\n        assert d_model % num_heads == 0, \"d_model must be divisible by num_heads\"\n        out_dim = n_tags\n        self.n_tags = n_tags\n        self.loss_type = loss_type\n        self.patch_size = patch_size\n        self.head_mean_after = head_mean_after\n        self.patch_dropout = patch_dropout\n        layerscale_init = CaiT_LayerScale_init(num_blocks) if layerscale_init is None else layerscale_init\n        self.patch_embeddings = nn.Conv2d(\n            in_channels=3,\n            out_channels=d_model,\n            kernel_size=patch_size,\n            stride=patch_size,\n            bias=True,\n        ) if cnn_stem is None else CNNStem(cnn_stem)\n        self.pos_embedding = PosEmbedding(d_model, (image_size // patch_size) ** 2, use_sine=use_sine, patch_size=patch_size)\n        self.blocks = nn.ModuleList([\n            ViTBlock(num_heads, d_model, mlp_dim, layerscale_init, stochdepth_rate)\n            for _ in range(num_blocks)\n        ])\n        self.norm = nn.LayerNorm(d_model)\n        self.head = nn.Linear(d_model, out_dim)\n\n    def forward(self, batch, return_embeddings=False, return_loss: bool = False, pos_weight = None):\n        B, _C, H, W = batch['image'].shape\n        assert H % self.patch_size == 0, f\"Input image height ({H}) needs to be divisible by the patch size ({self.patch_size}).\"\n        assert W % self.patch_size == 0, f\"Input image width ({W}) needs to be divisible by the patch size ({self.patch_size}).\"\n        x = self.patch_embeddings(batch['image'])  # (bsz, d_model, patch_num, patch_num)\n        x = x.flatten(2).transpose(1, 2)  # (bsz, patch_num ** 2, d_model)\n        x = self.pos_embedding(x, W, H)   # (bsz, patch_num ** 2, d_model)\n        # Patch dropout\n        seq_len = x.shape[1]\n        patch_dropout = int(math.ceil((1.0 - self.patch_dropout) * seq_len))\n        if patch_dropout != seq_len:\n            # Generate a matrix of random numbers between 0 and 1 of shape (B, seq_len)\n            patch_mask = torch.rand(B, seq_len, device=x.device)\n            # For each batch tensor, use argsort to convert the random numbers into a permutation of the patch indices\n            patch_mask = torch.argsort(patch_mask, dim=1)\n            # Truncate\n            patch_mask = patch_mask[:, :patch_dropout]\n            x = x.gather(1, patch_mask.unsqueeze(-1).expand(-1, -1, x.shape[-1]))\n            #indices = torch.randperm(seq_len, device=x.device)[:patch_dropout]\n            #x = x[:, indices, :]\n        # Transformer\n        for block in self.blocks:\n            x = block(x)\n        # Head\n        result = {}\n        x = self.norm(x)\n        if self.head_mean_after:\n            x = self.head(x)\n            x = x.mean(dim=1)\n        else:\n            x = x.mean(dim=1)\n            if return_embeddings:\n                result['embeddings'] = x\n            x = self.head(x)\n        result['tags'] = x\n        if return_loss:\n            result['loss'] = self.calculate_loss(result, batch, pos_weight)\n        return result\n\n    def calculate_loss(self, preds, batch, pos_weight):\n        return basic_calculate_loss(preds, batch, pos_weight, self.loss_type)\n\n    def get_optimized_parameters(self, lr: float):\n        return self.parameters()\n\n    def save(self):\n        return self.state_dict()\n\n    def load(self, state_dict):\n        if 'head.weight' in state_dict and 'head.bias' in state_dict and state_dict['head.weight'].shape[0] == (self.n_tags + 9):\n            # Support old models which included 3 rating and 6 score dimensions\n            state_dict['head.weight'] = state_dict['head.weight'][:self.n_tags]\n            state_dict['head.bias'] = state_dict['head.bias'][:self.n_tags]\n        self.load_state_dict(state_dict)\n\n\ndef prepare_image(image: Image.Image, target_size: int) -> torch.Tensor:\n    # Pad image to square\n    image_shape = image.size\n    max_dim = max(image_shape)\n    pad_left = (max_dim - image_shape[0]) // 2\n    pad_top = (max_dim - image_shape[1]) // 2\n    padded_image = Image.new('RGB', (max_dim, max_dim), (255, 255, 255))\n    padded_image.paste(image, (pad_left, pad_top))\n    if max_dim != target_size:\n        padded_image = padded_image.resize((target_size, target_size), Image.Resampling.LANCZOS)\n    image_tensor = TVF.pil_to_tensor(padded_image) / 255.0\n    image_tensor = TVF.normalize(image_tensor, mean=[0.48145466, 0.4578275, 0.40821073], std=[0.26862954, 0.26130258, 0.27577711])\n    return image_tensor\n\n\ndef load():\n    \"\"\"Load JoyTag model.\"\"\"\n    global model, tags  # pylint: disable=global-statement\n    if model is None:\n        folder = huggingface_hub.snapshot_download(MODEL_REPO, cache_dir=shared.opts.hfcache_dir)\n        model = VisionModel.load_model(folder)\n        model.to(dtype=devices.dtype)\n        model.eval()\n        with open(os.path.join(folder, 'top_tags.txt'), 'r', encoding='utf8') as f:\n            tags = [line.strip() for line in f.readlines() if line.strip()]\n        shared.log.info(f'Interrogate: type=vlm model=\"JoyTag\" repo=\"{MODEL_REPO}\" tags={len(tags)}')\n    sd_models.move_model(model, devices.device)\n\n\ndef unload():\n    \"\"\"Release JoyTag model from GPU/memory.\"\"\"\n    global model, tags  # pylint: disable=global-statement\n    if model is not None:\n        shared.log.debug('JoyTag unload')\n        sd_models.move_model(model, devices.cpu, force=True)\n        model = None\n        tags = None\n        devices.torch_gc(force=True)\n    else:\n        shared.log.debug('JoyTag unload: no model loaded')\n\n\ndef predict(image: Image.Image):\n    load()\n    image_tensor = prepare_image(image, model.image_size).unsqueeze(0).to(device=devices.device, dtype=devices.dtype)\n    with devices.inference_context():\n        preds = model({'image': image_tensor})\n        tag_preds = preds['tags'].sigmoid().cpu()\n    scores = {tags[i]: tag_preds[0][i] for i in range(len(tags))}\n    if shared.opts.interrogate_score:\n        predicted_tags = [f'{tag}:{score:.2f}' for tag, score in scores.items() if score > THRESHOLD]\n    else:\n        predicted_tags = [tag for tag, score in scores.items() if score > THRESHOLD]\n    tag_string = ', '.join(predicted_tags)\n    return tag_string\n"
  },
  {
    "path": "modules/interrogate/moondream3.py",
    "content": "# Moondream 3 Preview VLM Implementation\n# Source: https://huggingface.co/moondream/moondream3-preview\n# Model: 9.3GB, gated (requires HuggingFace authentication)\n# Architecture: Mixture-of-Experts (9B total params, 2B active)\nimport os\nimport re\nimport transformers\nfrom PIL import Image\nfrom modules import shared, devices, sd_models\nfrom modules.interrogate import vqa_detection\n\n\n# Debug logging - function-based to avoid circular import\ndebug_enabled = os.environ.get('SD_INTERROGATE_DEBUG', None) is not None\n\ndef debug(*args, **kwargs):\n    if debug_enabled:\n        shared.log.trace(*args, **kwargs)\n\n\n# Global state\nmoondream3_model = None\nloaded = None\nimage_cache = {}  # Cache encoded images for reuse\n\n\ndef get_settings():\n    \"\"\"\n    Build settings dict for Moondream 3 API from global VQA options.\n    Moondream 3 accepts: temperature, top_p, max_tokens\n    \"\"\"\n    settings = {}\n    if shared.opts.interrogate_vlm_max_length > 0:\n        settings['max_tokens'] = shared.opts.interrogate_vlm_max_length\n    if shared.opts.interrogate_vlm_temperature > 0:\n        settings['temperature'] = shared.opts.interrogate_vlm_temperature\n    if shared.opts.interrogate_vlm_top_p > 0:\n        settings['top_p'] = shared.opts.interrogate_vlm_top_p\n    return settings if settings else None\n\n\ndef load_model(repo: str):\n    \"\"\"Load Moondream 3 model.\"\"\"\n    global moondream3_model, loaded  # pylint: disable=global-statement\n\n    if moondream3_model is None or loaded != repo:\n        shared.log.debug(f'Interrogate load: vlm=\"{repo}\"')\n        moondream3_model = None\n\n        moondream3_model = transformers.AutoModelForCausalLM.from_pretrained(\n            repo,\n            trust_remote_code=True,\n            torch_dtype=devices.dtype,\n            cache_dir=shared.opts.hfcache_dir,\n        )\n\n        moondream3_model.eval()\n\n        # Initialize KV caches before moving to device (they're lazy by default)\n        if hasattr(moondream3_model, '_setup_caches'):\n            moondream3_model._setup_caches() # pylint: disable=protected-access\n\n        # Disable flex_attention decoding (can cause hangs due to torch.compile)\n        if hasattr(moondream3_model, 'model') and hasattr(moondream3_model.model, 'use_flex_decoding'):\n            moondream3_model.model.use_flex_decoding = False\n\n        loaded = repo\n        devices.torch_gc()\n\n    # Move model to active device\n    sd_models.move_model(moondream3_model, devices.device)\n    return moondream3_model\n\n\ndef encode_image(image: Image.Image, cache_key: str = None):\n    \"\"\"\n    Encode image for reuse across multiple queries.\n\n    Args:\n        image: PIL Image\n        cache_key: Optional cache key for storing encoded image\n\n    Returns:\n        Encoded image tensor\n    \"\"\"\n    if cache_key and cache_key in image_cache:\n        debug(f'VQA interrogate: handler=moondream3 using cached encoding for cache_key=\"{cache_key}\"')\n        return image_cache[cache_key]\n\n    model = load_model(loaded)\n\n    with devices.inference_context():\n        encoded = model.encode_image(image)\n\n    if cache_key:\n        image_cache[cache_key] = encoded\n        debug(f'VQA interrogate: handler=moondream3 cached encoding cache_key=\"{cache_key}\" cache_size={len(image_cache)}')\n\n    return encoded\n\n\ndef query(image: Image.Image, question: str, repo: str, stream: bool = False,\n          temperature: float = None, top_p: float = None, max_tokens: int = None,\n          use_cache: bool = False, reasoning: bool = True):\n    \"\"\"\n    Visual question answering with optional streaming.\n\n    Args:\n        image: PIL Image\n        question: Question about the image\n        repo: Model repository\n        stream: Enable streaming output (generator)\n        temperature: Sampling temperature (overrides global setting)\n        top_p: Nucleus sampling parameter (overrides global setting)\n        max_tokens: Maximum tokens to generate (overrides global setting)\n        use_cache: Use cached image encoding if available\n\n    Returns:\n        Answer dict or string (or generator if stream=True)\n    \"\"\"\n    model = load_model(repo)\n\n    # Build settings - per-call parameters override global settings\n    settings = get_settings() or {}\n    if temperature is not None:\n        settings['temperature'] = temperature\n    if top_p is not None:\n        settings['top_p'] = top_p\n    if max_tokens is not None:\n        settings['max_tokens'] = max_tokens\n\n    debug(f'VQA interrogate: handler=moondream3 method=query question=\"{question}\" stream={stream} settings={settings}')\n\n    # Use cached encoding if requested\n    if use_cache:\n        cache_key = f\"{id(image)}_{question}\"\n        image_input = encode_image(image, cache_key)\n    else:\n        image_input = image\n\n    with devices.inference_context():\n        response = model.query(\n            image=image_input,\n            question=question,\n            stream=stream,\n            settings=settings if settings else None,\n            reasoning=reasoning\n        )\n\n    # Log response structure (for non-streaming)\n    if not stream:\n        if isinstance(response, dict):\n            debug(f'VQA interrogate: handler=moondream3 response_type=dict keys={list(response.keys())}')\n            if 'reasoning' in response:\n                reasoning_text = response['reasoning'].get('text', '')[:100] + '...' if len(response['reasoning'].get('text', '')) > 100 else response['reasoning'].get('text', '')\n                debug(f'VQA interrogate: handler=moondream3 reasoning=\"{reasoning_text}\"')\n            if 'answer' in response:\n                debug(f'VQA interrogate: handler=moondream3 answer=\"{response[\"answer\"]}\"')\n\n    return response\n\n\ndef caption(image: Image.Image, repo: str, length: str = 'normal', stream: bool = False,\n            temperature: float = None, top_p: float = None, max_tokens: int = None):\n    \"\"\"\n    Generate image captions at different lengths.\n\n    Args:\n        image: PIL Image\n        repo: Model repository\n        length: Caption length - 'short', 'normal', or 'long'\n        stream: Enable streaming output (generator)\n        temperature: Sampling temperature (overrides global setting)\n        top_p: Nucleus sampling parameter (overrides global setting)\n        max_tokens: Maximum tokens to generate (overrides global setting)\n\n    Returns:\n        Caption dict or string (or generator if stream=True)\n    \"\"\"\n    model = load_model(repo)\n\n    # Build settings - per-call parameters override global settings\n    settings = get_settings() or {}\n    if temperature is not None:\n        settings['temperature'] = temperature\n    if top_p is not None:\n        settings['top_p'] = top_p\n    if max_tokens is not None:\n        settings['max_tokens'] = max_tokens\n\n    debug(f'VQA interrogate: handler=moondream3 method=caption length={length} stream={stream} settings={settings}')\n\n    with devices.inference_context():\n        response = model.caption(\n            image,\n            length=length,\n            stream=stream,\n            settings=settings if settings else None\n        )\n\n    # Log response structure (for non-streaming)\n    if not stream and isinstance(response, dict):\n        debug(f'VQA interrogate: handler=moondream3 response_type=dict keys={list(response.keys())}')\n\n    return response\n\n\ndef point(image: Image.Image, object_name: str, repo: str):\n    \"\"\"\n    Identify coordinates of all instances of a specific object in the image.\n\n    Args:\n        image: PIL Image\n        object_name: Name of object to locate\n        repo: Model repository\n\n    Returns:\n        List of (x, y) tuples with coordinates normalized to 0-1 range, or None if not found\n        Example: [(0.733, 0.442), (0.5, 0.6)] for 2 instances\n    \"\"\"\n    model = load_model(repo)\n\n    debug(f'VQA interrogate: handler=moondream3 method=point object_name=\"{object_name}\"')\n\n    with devices.inference_context():\n        result = model.point(image, object_name)\n\n    debug(f'VQA interrogate: handler=moondream3 point_raw_result=\"{result}\" type={type(result)}')\n    if isinstance(result, dict):\n        debug(f'VQA interrogate: handler=moondream3 point_raw_result_keys={list(result.keys())}')\n\n    points = vqa_detection.parse_points(result)\n    if points:\n        debug(f'VQA interrogate: handler=moondream3 point_result={len(points)} points found')\n        return points\n\n    debug('VQA interrogate: handler=moondream3 point_result=not found')\n    return None\n\n\ndef detect(image: Image.Image, object_name: str, repo: str, max_objects: int = 10):\n    \"\"\"\n    Detect all instances of a specific object with bounding boxes.\n\n    Args:\n        image: PIL Image\n        object_name: Name of object to detect\n        repo: Model repository\n        max_objects: Maximum number of objects to return\n\n    Returns:\n        List of detection dicts with keys:\n        - 'bbox': [x1, y1, x2, y2] normalized to 0-1\n        - 'label': Object label\n        - 'confidence': Detection confidence (0-1)\n        Returns empty list if no objects found.\n    \"\"\"\n    model = load_model(repo)\n\n    debug(f'VQA interrogate: handler=moondream3 method=detect object_name=\"{object_name}\" max_objects={max_objects}')\n\n    with devices.inference_context():\n        result = model.detect(image, object_name)\n\n    debug(f'VQA interrogate: handler=moondream3 detect_raw_result=\"{result}\" type={type(result)}')\n    if isinstance(result, dict):\n        debug(f'VQA interrogate: handler=moondream3 detect_raw_result_keys={list(result.keys())}')\n\n    detections = vqa_detection.parse_detections(result, object_name, max_objects)\n    debug(f'VQA interrogate: handler=moondream3 detect_result={len(detections)} objects found')\n    return detections\n\n\ndef predict(question: str, image: Image.Image, repo: str, model_name: str = None, thinking_mode: bool = False,\n            mode: str = None, stream: bool = False, use_cache: bool = False, **kwargs):\n    \"\"\"\n    Main entry point for Moondream 3 VQA - auto-detects mode from question.\n\n    Args:\n        question: The question/prompt (e.g., \"caption\", \"where is the cat?\", \"describe this\")\n        image: PIL Image\n        repo: Model repository\n        model_name: Display name for logging\n        thinking_mode: Enable reasoning mode for query\n        mode: Force specific mode ('query', 'caption', 'caption_short', 'caption_long', 'point', 'detect')\n        stream: Enable streaming output (for query/caption)\n        use_cache: Use cached image encoding (for query)\n        **kwargs: Additional parameters (max_objects for detect, etc.)\n\n    Returns:\n        Response string (detection data stored on VQA singleton instance.last_detection_data)\n        (or generator if stream=True for query/caption modes)\n    \"\"\"\n    debug(f'VQA interrogate: handler=moondream3 model_name=\"{model_name}\" repo=\"{repo}\" question=\"{question}\" image_size={image.size if image else None} mode={mode} stream={stream}')\n\n    # Clean question\n    question = question.replace('<', '').replace('>', '').replace('_', ' ') if question else ''\n\n    # Auto-detect mode from question if not specified\n    if mode is None:\n        question_lower = question.lower()\n\n        # Caption detection\n        if question in ['CAPTION', 'caption'] or 'caption' in question_lower:\n            if 'more detailed' in question_lower or 'very long' in question_lower:\n                mode = 'caption_long'\n            elif 'detailed' in question_lower or 'long' in question_lower:\n                mode = 'caption_normal'\n            elif 'short' in question_lower or 'brief' in question_lower:\n                mode = 'caption_short'\n            else:\n                # Default caption mode (matches vqa.py legacy behavior)\n                if question == 'CAPTION':\n                    mode = 'caption_short'\n                elif question == 'DETAILED CAPTION':\n                    mode = 'caption_normal'\n                elif question == 'MORE DETAILED CAPTION':\n                    mode = 'caption_long'\n                else:\n                    mode = 'caption_normal'\n\n        # Point detection\n        elif 'where is' in question_lower or 'locate' in question_lower or 'find' in question_lower or 'point' in question_lower:\n            mode = 'point'\n\n        # Object detection\n        elif 'detect' in question_lower or 'bounding box' in question_lower or 'bbox' in question_lower:\n            mode = 'detect'\n\n        # Default to query\n        else:\n            mode = 'query'\n\n    debug(f'VQA interrogate: handler=moondream3 mode_selected={mode}')\n\n    # Dispatch to appropriate method\n    try:\n        if mode == 'caption_short':\n            response = caption(image, repo, length='short', stream=stream)\n        elif mode == 'caption_long':\n            response = caption(image, repo, length='long', stream=stream)\n        elif mode in ['caption', 'caption_normal']:\n            response = caption(image, repo, length='normal', stream=stream)\n        elif mode == 'point':\n            # Extract object name from question - case insensitive, preserve object names\n            object_name = question\n            for phrase in ['point at', 'where is', 'locate', 'find']:\n                object_name = re.sub(rf'\\b{phrase}\\b', '', object_name, flags=re.IGNORECASE)\n            object_name = re.sub(r'[?.!,]', '', object_name).strip()\n            object_name = re.sub(r'^\\s*the\\s+', '', object_name, flags=re.IGNORECASE)\n            debug(f'VQA interrogate: handler=moondream3 point_extracted_object=\"{object_name}\"')\n            result = point(image, object_name, repo)\n            if result:\n                from modules.interrogate import vqa\n                vqa.get_instance().last_detection_data = {'points': result}\n                return vqa_detection.format_points_text(result)\n            return \"Object not found\"\n        elif mode == 'detect':\n            # Extract object name from question - case insensitive\n            object_name = question\n            for phrase in ['detect', 'find all', 'bounding box', 'bbox', 'find']:\n                object_name = re.sub(rf'\\b{phrase}\\b', '', object_name, flags=re.IGNORECASE)\n            object_name = re.sub(r'[?.!,]', '', object_name).strip()\n            object_name = re.sub(r'^\\s*the\\s+', '', object_name, flags=re.IGNORECASE)\n            if ' and ' in object_name.lower():\n                object_name = re.split(r'\\s+and\\s+', object_name, flags=re.IGNORECASE)[0].strip()\n            debug(f'VQA interrogate: handler=moondream3 detect_extracted_object=\"{object_name}\"')\n\n            results = detect(image, object_name, repo, max_objects=kwargs.get('max_objects', 10))\n            if results:\n                from modules.interrogate import vqa\n                vqa.get_instance().last_detection_data = {'detections': results}\n                return vqa_detection.format_detections_text(results)\n            return \"No objects detected\"\n        else:  # mode == 'query'\n            if len(question) < 2:\n                question = \"Describe this image.\"\n            response = query(image, question, repo, stream=stream, use_cache=use_cache, reasoning=thinking_mode)\n\n        debug(f'VQA interrogate: handler=moondream3 response_before_clean=\"{response}\"')\n        return response\n\n    except Exception as e:\n        from modules import errors\n        errors.display(e, 'Moondream3')\n        return f\"Error: {str(e)}\"\n\n\ndef clear_cache():\n    \"\"\"Clear image encoding cache.\"\"\"\n    cache_size = len(image_cache)\n    image_cache.clear()\n    debug(f'VQA interrogate: handler=moondream3 cleared image cache cache_size_was={cache_size}')\n    shared.log.debug(f'Moondream3: Cleared image cache ({cache_size} entries)')\n\n\ndef unload():\n    \"\"\"Release Moondream 3 model from GPU/memory.\"\"\"\n    global moondream3_model, loaded  # pylint: disable=global-statement\n    if moondream3_model is not None:\n        shared.log.debug(f'Moondream3 unload: model=\"{loaded}\"')\n        sd_models.move_model(moondream3_model, devices.cpu, force=True)\n        moondream3_model = None\n        loaded = None\n        clear_cache()\n        devices.torch_gc(force=True)\n    else:\n        shared.log.debug('Moondream3 unload: no model loaded')\n"
  },
  {
    "path": "modules/interrogate/openclip.py",
    "content": "import os\nimport time\nfrom collections import namedtuple\nimport threading\nimport re\nimport gradio as gr\nfrom PIL import Image\nfrom modules import devices, paths, shared, errors, sd_models\n\n\ndebug_enabled = os.environ.get('SD_INTERROGATE_DEBUG', None) is not None\ndebug_log = shared.log.trace if debug_enabled else lambda *args, **kwargs: None\n\n\ndef _apply_blip2_fix(model, processor):\n    \"\"\"Apply compatibility fix for BLIP2 models with newer transformers versions.\"\"\"\n    from transformers import AddedToken\n    if not hasattr(model.config, 'num_query_tokens'):\n        return\n    processor.num_query_tokens = model.config.num_query_tokens\n    image_token = AddedToken(\"<image>\", normalized=False, special=True)\n    processor.tokenizer.add_tokens([image_token], special_tokens=True)\n    model.resize_token_embeddings(len(processor.tokenizer), pad_to_multiple_of=64)\n    model.config.image_token_index = len(processor.tokenizer) - 1\n    debug_log(f'CLIP load: applied BLIP2 tokenizer fix num_query_tokens={model.config.num_query_tokens}')\n\n\ncaption_models = {\n    'blip-base': 'Salesforce/blip-image-captioning-base',\n    'blip-large': 'Salesforce/blip-image-captioning-large',\n    'blip2-opt-2.7b': 'Salesforce/blip2-opt-2.7b-coco',\n    'blip2-opt-6.7b': 'Salesforce/blip2-opt-6.7b',\n    'blip2-flip-t5-xl': 'Salesforce/blip2-flan-t5-xl',\n    'blip2-flip-t5-xxl': 'Salesforce/blip2-flan-t5-xxl',\n}\ncaption_types = [\n    'best',\n    'fast',\n    'classic',\n    'caption',\n    'negative',\n]\nclip_models = []\nci = None\nblip_image_eval_size = 384\nclip_model_name = 'ViT-L/14'\nCategory = namedtuple(\"Category\", [\"name\", \"topn\", \"items\"])\nre_topn = re.compile(r\"\\.top(\\d+)\\.\")\nload_lock = threading.Lock()\n\n\nclass BatchWriter:\n    def __init__(self, folder, mode='w'):\n        self.folder = folder\n        self.csv = None\n        self.file = None\n        self.mode = mode\n\n    def add(self, file, prompt):\n        txt_file = os.path.splitext(file)[0] + \".txt\"\n        if self.mode == 'a':\n            prompt = '\\n' + prompt\n        with open(os.path.join(self.folder, txt_file), self.mode, encoding='utf-8') as f:\n            f.write(prompt)\n\n    def close(self):\n        if self.file is not None:\n            self.file.close()\n\n\ndef update_interrogate_params():\n    if ci is not None:\n        ci.caption_max_length=shared.opts.interrogate_clip_max_length\n        ci.chunk_size=shared.opts.interrogate_clip_chunk_size\n        ci.flavor_intermediate_count=shared.opts.interrogate_clip_flavor_count\n        ci.clip_offload=shared.opts.interrogate_offload\n        ci.caption_offload=shared.opts.interrogate_offload\n\n\ndef get_clip_models():\n    return clip_models\n\n\ndef refresh_clip_models():\n    global clip_models # pylint: disable=global-statement\n    import open_clip\n    models = sorted(open_clip.list_pretrained())\n    shared.log.debug(f'Interrogate: pkg=openclip version={open_clip.__version__} models={len(models)}')\n    clip_models = ['/'.join(x) for x in models]\n    return clip_models\n\n\ndef load_interrogator(clip_model, blip_model):\n    from installer import install\n    install('clip_interrogator==0.6.0')\n    import clip_interrogator\n    clip_interrogator.clip_interrogator.CAPTION_MODELS = caption_models\n    global ci # pylint: disable=global-statement\n    if ci is None:\n        t0 = time.time()\n        device = devices.get_optimal_device()\n        cache_path = os.path.join(paths.models_path, 'Interrogator')\n        shared.log.info(f'CLIP load: clip=\"{clip_model}\" blip=\"{blip_model}\" device={device}')\n        debug_log(f'CLIP load: cache_path=\"{cache_path}\" max_length={shared.opts.interrogate_clip_max_length} chunk_size={shared.opts.interrogate_clip_chunk_size} flavor_count={shared.opts.interrogate_clip_flavor_count} offload={shared.opts.interrogate_offload}')\n        interrogator_config = clip_interrogator.Config(\n            device=device,\n            cache_path=cache_path,\n            clip_model_name=clip_model,\n            caption_model_name=blip_model,\n            quiet=True,\n            caption_max_length=shared.opts.interrogate_clip_max_length,\n            chunk_size=shared.opts.interrogate_clip_chunk_size,\n            flavor_intermediate_count=shared.opts.interrogate_clip_flavor_count,\n            clip_offload=shared.opts.interrogate_offload,\n            caption_offload=shared.opts.interrogate_offload,\n        )\n        ci = clip_interrogator.Interrogator(interrogator_config)\n        if blip_model.startswith('blip2-'):\n            _apply_blip2_fix(ci.caption_model, ci.caption_processor)\n        shared.log.debug(f'CLIP load: time={time.time()-t0:.2f}')\n    elif clip_model != ci.config.clip_model_name or blip_model != ci.config.caption_model_name:\n        t0 = time.time()\n        if clip_model != ci.config.clip_model_name:\n            shared.log.info(f'CLIP load: clip=\"{clip_model}\" reloading')\n            debug_log(f'CLIP load: previous clip=\"{ci.config.clip_model_name}\"')\n            ci.config.clip_model_name = clip_model\n            ci.config.clip_model = None\n            ci.load_clip_model()\n        if blip_model != ci.config.caption_model_name:\n            shared.log.info(f'CLIP load: blip=\"{blip_model}\" reloading')\n            debug_log(f'CLIP load: previous blip=\"{ci.config.caption_model_name}\"')\n            ci.config.caption_model_name = blip_model\n            ci.config.caption_model = None\n            ci.load_caption_model()\n            if blip_model.startswith('blip2-'):\n                _apply_blip2_fix(ci.caption_model, ci.caption_processor)\n        shared.log.debug(f'CLIP load: time={time.time()-t0:.2f}')\n    else:\n        debug_log(f'CLIP: models already loaded clip=\"{clip_model}\" blip=\"{blip_model}\"')\n\n\ndef unload_clip_model():\n    if ci is not None and shared.opts.interrogate_offload:\n        shared.log.debug('CLIP unload: offloading models to CPU')\n        sd_models.move_model(ci.caption_model, devices.cpu)\n        sd_models.move_model(ci.clip_model, devices.cpu)\n        ci.caption_offloaded = True\n        ci.clip_offloaded = True\n        devices.torch_gc()\n        debug_log('CLIP unload: complete')\n\n\ndef interrogate(image, mode, caption=None):\n    if isinstance(image, list):\n        image = image[0] if len(image) > 0 else None\n    if isinstance(image, dict) and 'name' in image:\n        image = Image.open(image['name'])\n    if image is None:\n        return ''\n    image = image.convert(\"RGB\")\n    t0 = time.time()\n    debug_log(f'CLIP: mode=\"{mode}\" image_size={image.size} caption={caption is not None} min_flavors={shared.opts.interrogate_clip_min_flavors} max_flavors={shared.opts.interrogate_clip_max_flavors}')\n    if mode == 'best':\n        prompt = ci.interrogate(image, caption=caption, min_flavors=shared.opts.interrogate_clip_min_flavors, max_flavors=shared.opts.interrogate_clip_max_flavors, )\n    elif mode == 'caption':\n        prompt = ci.generate_caption(image) if caption is None else caption\n    elif mode == 'classic':\n        prompt = ci.interrogate_classic(image, caption=caption, max_flavors=shared.opts.interrogate_clip_max_flavors)\n    elif mode == 'fast':\n        prompt = ci.interrogate_fast(image, caption=caption, max_flavors=shared.opts.interrogate_clip_max_flavors)\n    elif mode == 'negative':\n        prompt = ci.interrogate_negative(image, max_flavors=shared.opts.interrogate_clip_max_flavors)\n    else:\n        raise RuntimeError(f\"Unknown mode {mode}\")\n    debug_log(f'CLIP: mode=\"{mode}\" time={time.time()-t0:.2f} result=\"{prompt[:100]}...\"' if len(prompt) > 100 else f'CLIP: mode=\"{mode}\" time={time.time()-t0:.2f} result=\"{prompt}\"')\n    return prompt\n\n\ndef interrogate_image(image, clip_model, blip_model, mode):\n    jobid = shared.state.begin('Interrogate CLiP')\n    t0 = time.time()\n    shared.log.info(f'CLIP: mode=\"{mode}\" clip=\"{clip_model}\" blip=\"{blip_model}\" image_size={image.size if image else None}')\n    try:\n        if shared.sd_loaded:\n            from modules.sd_models import apply_balanced_offload # prevent circular import\n            apply_balanced_offload(shared.sd_model)\n            debug_log('CLIP: applied balanced offload to sd_model')\n        load_interrogator(clip_model, blip_model)\n        image = image.convert('RGB')\n        prompt = interrogate(image, mode)\n        devices.torch_gc()\n        shared.log.debug(f'CLIP: complete time={time.time()-t0:.2f}')\n    except Exception as e:\n        prompt = f\"Exception {type(e)}\"\n        shared.log.error(f'CLIP: {e}')\n        errors.display(e, 'Interrogate')\n    shared.state.end(jobid)\n    return prompt\n\n\ndef interrogate_batch(batch_files, batch_folder, batch_str, clip_model, blip_model, mode, write, append, recursive):\n    files = []\n    if batch_files is not None:\n        files += [f.name for f in batch_files]\n    if batch_folder is not None:\n        files += [f.name for f in batch_folder]\n    if batch_str is not None and len(batch_str) > 0 and os.path.exists(batch_str) and os.path.isdir(batch_str):\n        from modules.files_cache import list_files\n        files += list(list_files(batch_str, ext_filter=['.png', '.jpg', '.jpeg', '.webp', '.jxl'], recursive=recursive))\n    if len(files) == 0:\n        shared.log.warning('CLIP batch: no images found')\n        return ''\n    t0 = time.time()\n    shared.log.info(f'CLIP batch: mode=\"{mode}\" images={len(files)} clip=\"{clip_model}\" blip=\"{blip_model}\" write={write} append={append}')\n    debug_log(f'CLIP batch: recursive={recursive} files={files[:5]}{\"...\" if len(files) > 5 else \"\"}')\n    jobid = shared.state.begin('Interrogate batch')\n    prompts = []\n\n    load_interrogator(clip_model, blip_model)\n    if write:\n        file_mode = 'w' if not append else 'a'\n        writer = BatchWriter(os.path.dirname(files[0]), mode=file_mode)\n        debug_log(f'CLIP batch: writing to \"{os.path.dirname(files[0])}\" mode=\"{file_mode}\"')\n    import rich.progress as rp\n    pbar = rp.Progress(rp.TextColumn('[cyan]Caption:'), rp.BarColumn(), rp.MofNCompleteColumn(), rp.TaskProgressColumn(), rp.TimeRemainingColumn(), rp.TimeElapsedColumn(), rp.TextColumn('[cyan]{task.description}'), console=shared.console)\n    with pbar:\n        task = pbar.add_task(total=len(files), description='starting...')\n        for file in files:\n            pbar.update(task, advance=1, description=file)\n            try:\n                if shared.state.interrupted:\n                    shared.log.info('CLIP batch: interrupted')\n                    break\n                image = Image.open(file).convert('RGB')\n                prompt = interrogate(image, mode)\n                prompts.append(prompt)\n                if write:\n                    writer.add(file, prompt)\n            except OSError as e:\n                shared.log.error(f'CLIP batch: file=\"{file}\" error={e}')\n    if write:\n        writer.close()\n    ci.config.quiet = False\n    unload_clip_model()\n    shared.state.end(jobid)\n    shared.log.info(f'CLIP batch: complete images={len(prompts)} time={time.time()-t0:.2f}')\n    return '\\n\\n'.join(prompts)\n\n\ndef analyze_image(image, clip_model, blip_model):\n    t0 = time.time()\n    shared.log.info(f'CLIP analyze: clip=\"{clip_model}\" blip=\"{blip_model}\" image_size={image.size if image else None}')\n    load_interrogator(clip_model, blip_model)\n    image = image.convert('RGB')\n    image_features = ci.image_to_features(image)\n    debug_log(f'CLIP analyze: features shape={image_features.shape if hasattr(image_features, \"shape\") else \"unknown\"}')\n    top_mediums = ci.mediums.rank(image_features, 5)\n    top_artists = ci.artists.rank(image_features, 5)\n    top_movements = ci.movements.rank(image_features, 5)\n    top_trendings = ci.trendings.rank(image_features, 5)\n    top_flavors = ci.flavors.rank(image_features, 5)\n    medium_ranks = dict(sorted(zip(top_mediums, ci.similarities(image_features, top_mediums)), key=lambda x: x[1], reverse=True))\n    artist_ranks = dict(sorted(zip(top_artists, ci.similarities(image_features, top_artists)), key=lambda x: x[1], reverse=True))\n    movement_ranks = dict(sorted(zip(top_movements, ci.similarities(image_features, top_movements)), key=lambda x: x[1], reverse=True))\n    trending_ranks = dict(sorted(zip(top_trendings, ci.similarities(image_features, top_trendings)), key=lambda x: x[1], reverse=True))\n    flavor_ranks = dict(sorted(zip(top_flavors, ci.similarities(image_features, top_flavors)), key=lambda x: x[1], reverse=True))\n    shared.log.debug(f'CLIP analyze: complete time={time.time()-t0:.2f}')\n\n    # Format labels as text\n    def format_category(name, ranks):\n        lines = [f\"{name}:\"]\n        for item, score in ranks.items():\n            lines.append(f\"  • {item} - {score*100:.1f}%\")\n        return '\\n'.join(lines)\n\n    formatted_text = '\\n\\n'.join([\n        format_category(\"Medium\", medium_ranks),\n        format_category(\"Artist\", artist_ranks),\n        format_category(\"Movement\", movement_ranks),\n        format_category(\"Trending\", trending_ranks),\n        format_category(\"Flavor\", flavor_ranks),\n    ])\n\n    return [\n        gr.update(value=medium_ranks, visible=True),\n        gr.update(value=artist_ranks, visible=True),\n        gr.update(value=movement_ranks, visible=True),\n        gr.update(value=trending_ranks, visible=True),\n        gr.update(value=flavor_ranks, visible=True),\n        gr.update(value=formatted_text, visible=True),  # New text output for the textbox\n    ]\n"
  },
  {
    "path": "modules/interrogate/tagger.py",
    "content": "# Unified Tagger Interface - Dispatches to WaifuDiffusion or DeepBooru based on model selection\n# Provides a common interface for the Booru Tags tab\n\nfrom modules import shared\n\nDEEPBOORU_MODEL = \"DeepBooru\"\n\n\ndef get_models() -> list:\n    \"\"\"Return combined list: DeepBooru + WaifuDiffusion models.\"\"\"\n    from modules.interrogate import waifudiffusion\n    return [DEEPBOORU_MODEL] + waifudiffusion.get_models()\n\n\ndef refresh_models() -> list:\n    \"\"\"Refresh and return all models.\"\"\"\n    return get_models()\n\n\ndef is_deepbooru(model_name: str) -> bool:\n    \"\"\"Check if selected model is DeepBooru.\"\"\"\n    return model_name == DEEPBOORU_MODEL\n\n\ndef load_model(model_name: str) -> bool:\n    \"\"\"Load appropriate backend.\"\"\"\n    if is_deepbooru(model_name):\n        from modules.interrogate import deepbooru\n        return deepbooru.load_model()\n    else:\n        from modules.interrogate import waifudiffusion\n        return waifudiffusion.load_model(model_name)\n\n\ndef unload_model():\n    \"\"\"Unload both backends to ensure memory is freed.\"\"\"\n    from modules.interrogate import deepbooru, waifudiffusion\n    deepbooru.unload_model()\n    waifudiffusion.unload_model()\n\n\ndef tag(image, model_name: str = None, **kwargs) -> str:\n    \"\"\"Unified tagging - dispatch to correct backend.\n\n    Args:\n        image: PIL Image to tag\n        model_name: Model to use (DeepBooru or WaifuDiffusion model name)\n        **kwargs: Additional arguments passed to the backend\n\n    Returns:\n        Formatted tag string\n    \"\"\"\n    if model_name is None:\n        model_name = shared.opts.waifudiffusion_model\n\n    if is_deepbooru(model_name):\n        from modules.interrogate import deepbooru\n        return deepbooru.tag(image, **kwargs)\n    else:\n        from modules.interrogate import waifudiffusion\n        return waifudiffusion.tag(image, model_name=model_name, **kwargs)\n\n\ndef batch(model_name: str, **kwargs) -> str:\n    \"\"\"Unified batch processing.\n\n    Args:\n        model_name: Model to use (DeepBooru or WaifuDiffusion model name)\n        **kwargs: Additional arguments passed to the backend\n\n    Returns:\n        Combined tag results\n    \"\"\"\n    if is_deepbooru(model_name):\n        from modules.interrogate import deepbooru\n        return deepbooru.batch(model_name=model_name, **kwargs)\n    else:\n        from modules.interrogate import waifudiffusion\n        return waifudiffusion.batch(model_name=model_name, **kwargs)\n"
  },
  {
    "path": "modules/interrogate/vqa.py",
    "content": "import io\nimport os\nimport time\nimport json\nimport base64\nimport copy\nimport torch\nimport transformers\nimport transformers.dynamic_module_utils\nfrom PIL import Image\nfrom modules import shared, devices, errors, model_quant, sd_models, sd_models_compile, ui_symbols\nfrom modules.interrogate import vqa_detection\n\n\n# Debug logging - function-based to avoid circular import\ndebug_enabled = os.environ.get('SD_INTERROGATE_DEBUG', None) is not None\n\ndef debug(*args, **kwargs):\n    if debug_enabled:\n        shared.log.trace(*args, **kwargs)\n\nvlm_default = \"Alibaba Qwen 2.5 VL 3B\"\nvlm_models = {\n    \"Google Gemma 3 4B\": \"google/gemma-3-4b-it\",\n    \"Google Gemma 3n E2B\": \"google/gemma-3n-E2B-it\", # 1.5GB\n    \"Google Gemma 3n E4B\": \"google/gemma-3n-E4B-it\", # 1.5GB\n    \"Nidum Gemma 3 4B Uncensored\": \"nidum/Nidum-Gemma-3-4B-it-Uncensored\",\n    \"Allura Gemma 3 Glitter 4B\": \"allura-org/Gemma-3-Glitter-4B\",\n    \"Alibaba Qwen 2.0 VL 2B\": \"Qwen/Qwen2-VL-2B-Instruct\",\n    \"Alibaba Qwen 2.5 Omni 3B\": \"Qwen/Qwen2.5-Omni-3B\",\n    \"Alibaba Qwen 2.5 VL 3B\": \"Qwen/Qwen2.5-VL-3B-Instruct\",\n    \"Alibaba Qwen 3 VL 2B\": \"Qwen/Qwen3-VL-2B-Instruct\",\n    f\"Alibaba Qwen 3 VL 2B Thinking {ui_symbols.reasoning}\": \"Qwen/Qwen3-VL-2B-Thinking\",\n    \"Alibaba Qwen 3 VL 4B\": \"Qwen/Qwen3-VL-4B-Instruct\",\n    f\"Alibaba Qwen 3 VL 4B Thinking {ui_symbols.reasoning}\": \"Qwen/Qwen3-VL-4B-Thinking\",\n    \"Alibaba Qwen 3 VL 8B\": \"Qwen/Qwen3-VL-8B-Instruct\",\n    f\"Alibaba Qwen 3 VL 8B Thinking {ui_symbols.reasoning}\": \"Qwen/Qwen3-VL-8B-Thinking\",\n    \"XiaomiMiMo MiMo VL 7B RL\": \"XiaomiMiMo/MiMo-VL-7B-RL-2508\", # 8.3GB\n    \"Huggingface Smol VL2 0.5B\": \"HuggingFaceTB/SmolVLM-500M-Instruct\",\n    \"Huggingface Smol VL2 2B\": \"HuggingFaceTB/SmolVLM-Instruct\",\n    \"Apple FastVLM 0.5B\": \"apple/FastVLM-0.5B\",\n    \"Apple FastVLM 1.5B\": \"apple/FastVLM-1.5B\",\n    \"Apple FastVLM 7B\": \"apple/FastVLM-7B\",\n    \"Microsoft Florence 2 Base\": \"florence-community/Florence-2-base-ft\", # 0.5GB\n    \"Microsoft Florence 2 Large\": \"florence-community/Florence-2-large-ft\", # 1.5GB\n    \"MiaoshouAI PromptGen 1.5 Base\": \"Disty0/Florence-2-base-PromptGen-v1.5\", # 0.5GB\n    \"MiaoshouAI PromptGen 1.5 Large\": \"Disty0/Florence-2-large-PromptGen-v1.5\", # 1.5GB\n    \"MiaoshouAI PromptGen 2.0 Base\": \"Disty0/Florence-2-base-PromptGen-v2.0\", # 0.5GB\n    \"MiaoshouAI PromptGen 2.0 Large\": \"Disty0/Florence-2-large-PromptGen-v2.0\", # 1.5GB\n    \"CogFlorence 2.0 Large\": \"thwri/CogFlorence-2-Large-Freeze\", # 1.6GB\n    \"CogFlorence 2.2 Large\": \"thwri/CogFlorence-2.2-Large\", # 1.6GB\n    f\"Moondream 2 {ui_symbols.reasoning}\": \"vikhyatk/moondream2\", # 3.7GB\n    f\"Moondream 3 Preview {ui_symbols.reasoning}\": \"moondream/moondream3-preview\", # 9.3GB (gated)\n    \"Google Pix Textcaps\": \"google/pix2struct-textcaps-base\", # 1.1GB\n    \"Google PaliGemma 2 3B\": \"google/paligemma2-3b-pt-224\",\n    \"Salesforce BLIP Base\": \"Salesforce/blip-vqa-base\", # 1.5GB\n    \"Salesforce BLIP Large\": \"Salesforce/blip-vqa-capfilt-large\", # 1.5GB\n    \"Microsoft GIT TextCaps Base\": \"microsoft/git-base-textcaps\", # 0.7GB\n    \"Microsoft GIT VQA Base\": \"microsoft/git-base-vqav2\", # 0.7GB\n    \"Microsoft GIT VQA Large\": \"microsoft/git-large-vqav2\", # 1.6GB\n    \"ToriiGate 0.4 2B\": \"Minthy/ToriiGate-v0.4-2B\",\n    \"ToriiGate 0.4 7B\": \"Minthy/ToriiGate-v0.4-7B\",\n    \"ViLT Base\": \"dandelin/vilt-b32-finetuned-vqa\", # 0.5GB\n    \"JoyCaption Alpha\": \"fancyfeast/llama-joycaption-alpha-two-hf-llava\", # 17.4GB\n    \"JoyCaption Beta\": \"fancyfeast/llama-joycaption-beta-one-hf-llava\", # 17.4GB\n    \"JoyTag\": \"fancyfeast/joytag\", # 0.7GB\n    \"AIDC Ovis2 1B\": \"AIDC-AI/Ovis2-1B\",\n    \"AIDC Ovis2 2B\": \"AIDC-AI/Ovis2-2B\",\n    \"AIDC Ovis2 4B\": \"AIDC-AI/Ovis2-4B\",\n    \"ByteDance Sa2VA 1B\": \"ByteDance/Sa2VA-1B\",\n    \"ByteDance Sa2VA 4B\": \"ByteDance/Sa2VA-4B\",\n}\nvlm_system = 'You are image captioning expert, creative, unbiased and uncensored.'\n\n# Common prompts (work with all VLM models)\nvlm_prompts_common = [\n    \"Use Prompt\",\n    \"Short Caption\",\n    \"Normal Caption\",\n    \"Long Caption\",\n]\n\n# Florence-2 specific prompts (only shown for Florence/PromptGen models)\nvlm_prompts_florence = [\n    \"Phrase Grounding\",\n    \"Object Detection\",\n    \"Dense Region Caption\",\n    \"Region Proposal\",\n    \"OCR (Read Text)\",\n    \"OCR with Regions\",\n    \"Analyze\",\n    \"Generate Tags\",\n    \"Mixed Caption\",\n    \"Mixed Caption+\",\n]\n\n# Moondream specific prompts (shared by Moondream 2 and 3)\nvlm_prompts_moondream = [\n    \"Point at...\",\n    \"Detect all...\",\n]\n\n# Moondream 2 only prompts (gaze detection not available in Moondream 3)\nvlm_prompts_moondream2 = [\n    \"Detect Gaze\",\n]\n\n# Mapping from friendly names to internal tokens/commands\nvlm_prompt_mapping = {\n    \"Use Prompt\": \"Use Prompt\",\n    \"Short Caption\": \"<CAPTION>\",\n    \"Normal Caption\": \"<DETAILED_CAPTION>\",\n    \"Long Caption\": \"<MORE_DETAILED_CAPTION>\",\n    \"Phrase Grounding\": \"<CAPTION_TO_PHRASE_GROUNDING>\",\n    \"Object Detection\": \"<OD>\",\n    \"Dense Region Caption\": \"<DENSE_REGION_CAPTION>\",\n    \"Region Proposal\": \"<REGION_PROPOSAL>\",\n    \"OCR (Read Text)\": \"<OCR>\",\n    \"OCR with Regions\": \"<OCR_WITH_REGION>\",\n    \"Analyze\": \"<ANALYZE>\",\n    \"Generate Tags\": \"<GENERATE_TAGS>\",\n    \"Mixed Caption\": \"<MIXED_CAPTION>\",\n    \"Mixed Caption+\": \"<MIXED_CAPTION_PLUS>\",\n    \"Point at...\": \"POINT_MODE\",\n    \"Detect all...\": \"DETECT_MODE\",\n    \"Detect Gaze\": \"DETECT_GAZE\",\n}\n\n# Placeholder hints for prompt field based on selected question\nvlm_prompt_placeholders = {\n    \"Use Prompt\": \"Enter your question or instruction for the model\",\n    \"Short Caption\": \"Optional: add specific focus or style instructions\",\n    \"Normal Caption\": \"Optional: add specific focus or style instructions\",\n    \"Long Caption\": \"Optional: add specific focus or style instructions\",\n    \"Phrase Grounding\": \"Optional: specify phrases to ground in the image\",\n    \"Object Detection\": \"Optional: specify object types to detect\",\n    \"Dense Region Caption\": \"Optional: add specific instructions\",\n    \"Region Proposal\": \"Optional: add specific instructions\",\n    \"OCR (Read Text)\": \"Optional: add specific instructions\",\n    \"OCR with Regions\": \"Optional: add specific instructions\",\n    \"Analyze\": \"Optional: add specific analysis instructions\",\n    \"Generate Tags\": \"Optional: add specific tagging instructions\",\n    \"Mixed Caption\": \"Optional: add specific instructions\",\n    \"Mixed Caption+\": \"Optional: add specific instructions\",\n    \"Point at...\": \"Enter objects to locate, e.g., 'the red car' or 'all the eyes'\",\n    \"Detect all...\": \"Enter object type to detect, e.g., 'cars' or 'faces'\",\n    \"Detect Gaze\": \"No input needed - auto-detects face and gaze direction\",\n}\n\n# Legacy list for backwards compatibility\nvlm_prompts = vlm_prompts_common + vlm_prompts_florence + vlm_prompts_moondream + vlm_prompts_moondream2\n\nvlm_prefill = 'Answer: the image shows'\n\n\ndef get_prompts_for_model(model_name: str) -> list:\n    \"\"\"Get available prompts based on selected model.\"\"\"\n    if model_name is None:\n        return vlm_prompts_common\n\n    model_lower = model_name.lower()\n\n    # Check for Florence-2 / PromptGen models\n    if 'florence' in model_lower or 'promptgen' in model_lower:\n        return vlm_prompts_common + vlm_prompts_florence\n\n    # Check for Moondream models (Moondream 2 has gaze detection, Moondream 3 does not)\n    if 'moondream' in model_lower:\n        if 'moondream3' in model_lower or 'moondream 3' in model_lower:\n            return vlm_prompts_common + vlm_prompts_moondream\n        else:  # Moondream 2 includes gaze detection\n            return vlm_prompts_common + vlm_prompts_moondream + vlm_prompts_moondream2\n\n    # Default: common prompts only\n    return vlm_prompts_common\n\n\ndef get_internal_prompt(friendly_name: str, user_prompt: str = None) -> str:\n    \"\"\"Convert friendly prompt name to internal token/command.\"\"\"\n    internal = vlm_prompt_mapping.get(friendly_name, friendly_name)\n\n    # Handle Moondream point/detect modes - prepend trigger phrase\n    if internal == \"POINT_MODE\" and user_prompt:\n        return f\"Point at {user_prompt}\"\n    elif internal == \"DETECT_MODE\" and user_prompt:\n        return f\"Detect {user_prompt}\"\n\n    return internal\n\n\ndef get_prompt_placeholder(friendly_name: str) -> str:\n    \"\"\"Get placeholder text for the prompt field based on selected question.\"\"\"\n    return vlm_prompt_placeholders.get(friendly_name, \"Enter your question or instruction\")\n\n\ndef is_florence_task(question: str) -> bool:\n    \"\"\"Check if the question is a Florence-2 task token (either friendly name or internal token).\"\"\"\n    if not question:\n        return False\n    # Check if it's a Florence-specific friendly name\n    if question in vlm_prompts_florence:\n        return True\n    # Check if it's an internal Florence-2 task token (for backwards compatibility)\n    florence_tokens = ['<CAPTION>', '<DETAILED_CAPTION>', '<MORE_DETAILED_CAPTION>', '<CAPTION_TO_PHRASE_GROUNDING>',\n                       '<OD>', '<DENSE_REGION_CAPTION>', '<REGION_PROPOSAL>', '<OCR>', '<OCR_WITH_REGION>',\n                       '<ANALYZE>', '<GENERATE_TAGS>', '<MIXED_CAPTION>', '<MIXED_CAPTION_PLUS>']\n    return question in florence_tokens\n\n\ndef is_thinking_model(model_name: str) -> bool:\n    \"\"\"Check if the model supports thinking mode based on its name.\"\"\"\n    if not model_name:\n        return False\n    model_lower = model_name.lower()\n    # Check for known thinking models\n    thinking_indicators = [\n        'thinking',  # Qwen3-VL-*-Thinking models\n        'moondream3',  # Moondream 3 supports thinking\n        'moondream 3',\n        'moondream2',  # Moondream 2 supports reasoning mode\n        'moondream 2',\n        'mimo',\n    ]\n    return any(indicator in model_lower for indicator in thinking_indicators)\n\n\ndef truncate_b64_in_conversation(conversation, front_chars=50, tail_chars=50, threshold=200):\n    \"\"\"\n    Deep copy a conversation structure and truncate long base64 image strings for logging.\n    Preserves front and tail of base64 strings with truncation indicator.\n    \"\"\"\n    conv_copy = copy.deepcopy(conversation)\n\n    def truncate_recursive(obj):\n        if isinstance(obj, dict):\n            for key, value in obj.items():\n                if key == \"image\" and isinstance(value, str) and len(value) > threshold:\n                    # Truncate the base64 image string\n                    truncated_count = len(value) - front_chars - tail_chars\n                    obj[key] = f\"{value[:front_chars]}...[{truncated_count} chars truncated]...{value[-tail_chars:]}\"\n                elif isinstance(value, (dict, list)):\n                    truncate_recursive(value)\n        elif isinstance(obj, list):\n            for item in obj:\n                truncate_recursive(item)\n\n    truncate_recursive(conv_copy)\n    return conv_copy\n\n\ndef keep_think_block_open(text_prompt: str) -> str:\n    \"\"\"Remove the closing </think> of the final assistant message so the model can continue reasoning.\"\"\"\n    think_open = \"<think>\"\n    think_close = \"</think>\"\n    last_open = text_prompt.rfind(think_open)\n    if last_open == -1:\n        return text_prompt\n    close_index = text_prompt.find(think_close, last_open)\n    if close_index == -1:\n        return text_prompt\n    # Skip any whitespace immediately following the closing tag\n    end_close = close_index + len(think_close)\n    while end_close < len(text_prompt) and text_prompt[end_close] in (' ', '\\t'):\n        end_close += 1\n    while end_close < len(text_prompt) and text_prompt[end_close] in ('\\r', '\\n'):\n        end_close += 1\n    trimmed_prompt = text_prompt[:close_index] + text_prompt[end_close:]\n    debug('VQA interrogate: keep_think_block_open applied to prompt segment near assistant reply')\n    return trimmed_prompt\n\n\ndef b64(image):\n    if image is None:\n        return ''\n    with io.BytesIO() as stream:\n        image.save(stream, 'JPEG')\n        values = stream.getvalue()\n        encoded = base64.b64encode(values).decode()\n        return encoded\n\n\ndef clean(response, question, prefill=None):\n    strip = ['---', '\\r', '\\t', '**', '\"', '\"', '\"', 'Assistant:', 'Caption:', '<|im_end|>', '<pad>']\n    if isinstance(response, str):\n        response = response.strip()\n    elif isinstance(response, dict):\n        text_response = \"\"\n        if 'reasoning' in response and shared.opts.interrogate_vlm_keep_thinking:\n            r_text = response['reasoning']\n            if isinstance(r_text, dict) and 'text' in r_text:\n                r_text = r_text['text']\n            text_response += f\"Reasoning:\\n{r_text}\\n\\nAnswer:\\n\"\n\n        if 'answer' in response:\n            text_response += response['answer']\n        elif 'caption' in response:\n            text_response += response['caption']\n        elif 'task' in response:\n            text_response += response['task']\n        else:\n            if not text_response:\n                text_response = json.dumps(response)\n        response = text_response\n    elif isinstance(response, list):\n        response = response[0]\n    else:\n        response = str(response)\n\n    # Determine prefill text\n    prefill_text = vlm_prefill if prefill is None else prefill\n    if prefill_text is None:\n        prefill_text = \"\"\n    prefill_text = prefill_text.strip()\n\n    question = question.replace('<', '').replace('>', '').replace('_', ' ')\n    if question in response:\n        response = response.split(question, 1)[1]\n    while any(s in response for s in strip):\n        for s in strip:\n            response = response.replace(s, '')\n    response = response.replace('  ', ' ').replace('*  ', '- ').strip()\n\n    # Handle prefill retention/removal\n    if shared.opts.interrogate_vlm_keep_prefill:\n        # Add prefill if it's missing from the cleaned response\n        if len(prefill_text) > 0 and not response.startswith(prefill_text):\n            sep = \" \"\n            if not response or response[0] in \".,!?;:\":\n                sep = \"\"\n            response = f\"{prefill_text}{sep}{response}\"\n    else:\n        # Remove prefill if it's present in the cleaned response\n        if len(prefill_text) > 0 and response.startswith(prefill_text):\n            response = response[len(prefill_text):].strip()\n\n    return response\n\n\ndef get_kwargs():\n    kwargs = {\n        'max_new_tokens': shared.opts.interrogate_vlm_max_length,\n        'do_sample': shared.opts.interrogate_vlm_do_sample,\n    }\n    if shared.opts.interrogate_vlm_num_beams > 0:\n        kwargs['num_beams'] = shared.opts.interrogate_vlm_num_beams\n    if shared.opts.interrogate_vlm_temperature > 0:\n        kwargs['temperature'] = shared.opts.interrogate_vlm_temperature\n    if shared.opts.interrogate_vlm_top_k > 0:\n        kwargs['top_k'] = shared.opts.interrogate_vlm_top_k\n    if shared.opts.interrogate_vlm_top_p > 0:\n        kwargs['top_p'] = shared.opts.interrogate_vlm_top_p\n    return kwargs\n\n\nclass VQA:\n    \"\"\"Vision-Language Model interrogation class with per-model self-contained loading.\"\"\"\n\n    def __init__(self):\n        self.processor = None\n        self.model = None\n        self.loaded: str = None\n        self.last_annotated_image = None\n        self.last_detection_data = None\n\n    def unload(self):\n        \"\"\"Release VLM model from GPU/memory.\"\"\"\n        if self.model is not None:\n            model_name = self.loaded\n            shared.log.debug(f'VQA unload: unloading model=\"{model_name}\"')\n            sd_models.move_model(self.model, devices.cpu, force=True)\n            self.model = None\n            self.processor = None\n            self.loaded = None\n            devices.torch_gc(force=True, reason='vqa unload')\n            shared.log.debug(f'VQA unload: model=\"{model_name}\" unloaded')\n        else:\n            shared.log.debug('VQA unload: no model loaded')\n\n    def load(self, model_name: str = None):\n        \"\"\"Load VLM model into memory for the specified model name.\"\"\"\n        model_name = model_name or shared.opts.interrogate_vlm_model\n        if not model_name:\n            shared.log.warning('VQA load: no model specified')\n            return\n        repo = vlm_models.get(model_name)\n        if repo is None:\n            shared.log.error(f'VQA load: unknown model=\"{model_name}\"')\n            return\n\n        shared.log.debug(f'VQA load: pre-loading model=\"{model_name}\" repo=\"{repo}\"')\n\n        # Dispatch to appropriate loader (same logic as interrogate)\n        repo_lower = repo.lower()\n        if 'qwen' in repo_lower or 'torii' in repo_lower or 'mimo' in repo_lower:\n            self._load_qwen(repo)\n        elif 'gemma' in repo_lower and 'pali' not in repo_lower:\n            self._load_gemma(repo)\n        elif 'smol' in repo_lower:\n            self._load_smol(repo)\n        elif 'florence' in repo_lower:\n            self._load_florence(repo)\n        elif 'moondream2' in repo_lower:\n            self._load_moondream(repo)\n        elif 'git' in repo_lower:\n            self._load_git(repo)\n        elif 'blip' in repo_lower:\n            self._load_blip(repo)\n        elif 'vilt' in repo_lower:\n            self._load_vilt(repo)\n        elif 'pix' in repo_lower:\n            self._load_pix(repo)\n        elif 'paligemma' in repo_lower:\n            self._load_paligemma(repo)\n        elif 'ovis' in repo_lower:\n            self._load_ovis(repo)\n        elif 'sa2' in repo_lower:\n            self._load_sa2(repo)\n        elif 'fastvlm' in repo_lower:\n            self._load_fastvlm(repo)\n        elif 'moondream3' in repo_lower:\n            from modules.interrogate import moondream3\n            moondream3.load_model(repo)\n            shared.log.info(f'VQA load: model=\"{model_name}\" loaded (external handler)')\n            return\n        elif 'joytag' in repo_lower:\n            from modules.interrogate import joytag\n            joytag.load()\n            shared.log.info(f'VQA load: model=\"{model_name}\" loaded (external handler)')\n            return\n        elif 'joycaption' in repo_lower:\n            from modules.interrogate import joycaption\n            joycaption.load(repo)\n            shared.log.info(f'VQA load: model=\"{model_name}\" loaded (external handler)')\n            return\n        elif 'deepseek' in repo_lower:\n            from modules.interrogate import deepseek\n            deepseek.load(repo)\n            shared.log.info(f'VQA load: model=\"{model_name}\" loaded (external handler)')\n            return\n        else:\n            shared.log.warning(f'VQA load: no pre-loader for model=\"{model_name}\"')\n            return\n\n        sd_models.move_model(self.model, devices.device)\n        shared.log.info(f'VQA load: model=\"{model_name}\" loaded')\n\n    def _load_fastvlm(self, repo: str):\n        \"\"\"Load FastVLM model and tokenizer.\"\"\"\n        if self.model is None or self.loaded != repo:\n            shared.log.debug(f'Interrogate load: vlm=\"{repo}\"')\n            quant_args = model_quant.create_config(module='LLM')\n            self.model = None\n            self.processor = transformers.AutoTokenizer.from_pretrained(repo, trust_remote_code=True, cache_dir=shared.opts.hfcache_dir)\n            self.model = transformers.AutoModelForCausalLM.from_pretrained(\n                repo,\n                torch_dtype=devices.dtype,\n                trust_remote_code=True,\n                cache_dir=shared.opts.hfcache_dir,\n                **quant_args,\n            )\n            self.loaded = repo\n            devices.torch_gc()\n\n    def _fastvlm(self, question: str, image: Image.Image, repo: str, model_name: str = None):\n        debug(f'VQA interrogate: handler=fastvlm model_name=\"{model_name}\" repo=\"{repo}\" question=\"{question}\" image_size={image.size if image else None}')\n        self._load_fastvlm(repo)\n        sd_models.move_model(self.model, devices.device)\n        if len(question) < 2:\n            question = \"Describe the image.\"\n        question = question.replace('<', '').replace('>', '')\n        IMAGE_TOKEN_INDEX = -200  # what the model code looks for\n        messages = [{\"role\": \"user\", \"content\": f\"<image>\\n{question}\"}]\n        rendered = self.processor.apply_chat_template(messages, add_generation_prompt=True, tokenize=False)\n        pre, post = rendered.split(\"<image>\", 1)\n        pre_ids = self.processor(pre, return_tensors=\"pt\", add_special_tokens=False).input_ids\n        post_ids = self.processor(post, return_tensors=\"pt\", add_special_tokens=False).input_ids\n        img_tok = torch.tensor([[IMAGE_TOKEN_INDEX]], dtype=pre_ids.dtype)\n        input_ids = torch.cat([pre_ids, img_tok, post_ids], dim=1)\n        input_ids = input_ids.to(devices.device)\n        attention_mask = torch.ones_like(input_ids, device=devices.device)\n        px = self.model.get_vision_tower().image_processor(images=image, return_tensors=\"pt\")\n        px = px[\"pixel_values\"].to(self.model.device, dtype=self.model.dtype)\n        with devices.inference_context():\n            outputs = self.model.generate(\n                inputs=input_ids,\n                attention_mask=attention_mask,\n                images=px,\n                max_new_tokens=128,\n            )\n        answer = self.processor.decode(outputs[0], skip_special_tokens=True)\n        return answer\n\n    def _load_qwen(self, repo: str):\n        \"\"\"Load Qwen VL model and processor.\"\"\"\n        if self.model is None or self.loaded != repo:\n            shared.log.debug(f'Interrogate load: vlm=\"{repo}\"')\n            self.model = None\n            if 'Qwen3-VL' in repo or 'Qwen3VL' in repo:\n                cls_name = transformers.Qwen3VLForConditionalGeneration\n            elif 'Qwen2.5-VL' in repo or 'Qwen2_5_VL' in repo or 'MiMo-VL' in repo:\n                cls_name = transformers.Qwen2_5_VLForConditionalGeneration\n            elif 'Qwen2-VL' in repo or 'Qwen2VL' in repo:\n                cls_name = transformers.Qwen2VLForConditionalGeneration\n            else:\n                cls_name = transformers.AutoModelForCausalLM\n            quant_args = model_quant.create_config(module='LLM')\n            self.model = cls_name.from_pretrained(\n                repo,\n                torch_dtype=devices.dtype,\n                cache_dir=shared.opts.hfcache_dir,\n                **quant_args,\n            )\n            self.processor = transformers.AutoProcessor.from_pretrained(repo, max_pixels=1024*1024, cache_dir=shared.opts.hfcache_dir)\n            if 'LLM' in shared.opts.cuda_compile:\n                self.model = sd_models_compile.compile_torch(self.model)\n            self.loaded = repo\n            devices.torch_gc()\n\n    def _qwen(self, question: str, image: Image.Image, repo: str, system_prompt: str = None, model_name: str = None, prefill: str = None, thinking_mode: bool = False):\n        self._load_qwen(repo)\n        sd_models.move_model(self.model, devices.device)\n        # Get model class name for logging\n        cls_name = self.model.__class__.__name__\n        debug(f'VQA interrogate: handler=qwen model_name=\"{model_name}\" model_class=\"{cls_name}\" repo=\"{repo}\" question=\"{question}\" system_prompt=\"{system_prompt}\" image_size={image.size if image else None}')\n\n        question = question.replace('<', '').replace('>', '').replace('_', ' ')\n        system_prompt = system_prompt or shared.opts.interrogate_vlm_system\n        conversation = [\n            {\n                \"role\": \"system\",\n                \"content\": [{\"type\": \"text\", \"text\": system_prompt}],\n            },\n            {\n                \"role\": \"user\",\n                \"content\": [\n                    {\"type\": \"image\", \"image\": b64(image)},\n                    {\"type\": \"text\", \"text\": question},\n                ],\n            }\n        ]\n        # Add prefill if provided\n        prefill_value = vlm_prefill if prefill is None else prefill\n        prefill_text = prefill_value.strip()\n\n        # Thinking models emit their own <think> tags via the chat template\n        # Only models with thinking capability can use thinking mode\n        is_thinking = is_thinking_model(model_name)\n\n        # Standardize prefill\n        prefill_value = vlm_prefill if prefill is None else prefill\n        prefill_text = prefill_value.strip()\n        use_prefill = len(prefill_text) > 0\n\n        if debug_enabled:\n            debug(f'VQA interrogate: handler=qwen conversation_roles={[msg[\"role\"] for msg in conversation]}')\n            debug(f'VQA interrogate: handler=qwen full_conversation={truncate_b64_in_conversation(conversation)}')\n            debug(f'VQA interrogate: handler=qwen is_thinking={is_thinking} thinking_mode={thinking_mode} prefill=\"{prefill_text}\"')\n\n        # Generate base prompt using template\n        # Qwen-Thinking template automatically adds \"<|im_start|>assistant\\n<think>\\n\" when add_generation_prompt=True\n        try:\n            text_prompt = self.processor.apply_chat_template(\n                conversation,\n                add_generation_prompt=True,\n            )\n        except (TypeError, ValueError) as e:\n            debug(f'VQA interrogate: handler=qwen chat_template fallback add_generation_prompt=True: {e}')\n            text_prompt = self.processor.apply_chat_template(conversation, add_generation_prompt=True)\n\n        # Manually handle thinking tags and prefill\n        if is_thinking:\n            if not thinking_mode:\n                # User wants to SKIP thinking.\n                # Since template opened the block with <think>, we close it immediately.\n                text_prompt += \"</think>\\n\"\n                if use_prefill:\n                    text_prompt += prefill_text\n            else:\n                # User wants thinking. Prompt already ends in <think>.\n                # If prefill is provided, it becomes part of the thought process.\n                if use_prefill:\n                    text_prompt += prefill_text\n        else:\n            # Standard model (not forcing <think>)\n            if use_prefill:\n                text_prompt += prefill_text\n\n        if debug_enabled:\n            debug(f'VQA interrogate: handler=qwen text_prompt=\"{text_prompt}\"')\n        inputs = self.processor(text=[text_prompt], images=[image], padding=True, return_tensors=\"pt\")\n        inputs = inputs.to(devices.device, devices.dtype)\n        gen_kwargs = get_kwargs()\n        debug(f'VQA interrogate: handler=qwen generation_kwargs={gen_kwargs} input_ids_shape={inputs.input_ids.shape}')\n        output_ids = self.model.generate(\n            **inputs,\n            **gen_kwargs,\n        )\n        debug(f'VQA interrogate: handler=qwen output_ids_shape={output_ids.shape}')\n        generated_ids = [\n            output_ids[len(input_ids):]\n            for input_ids, output_ids in zip(inputs.input_ids, output_ids)\n        ]\n        response = self.processor.batch_decode(generated_ids, skip_special_tokens=True, clean_up_tokenization_spaces=True)\n        if debug_enabled:\n            debug(f'VQA interrogate: handler=qwen response_before_clean=\"{response}\"')\n        # Clean up thinking tags\n        # Note: <think> is in the prompt, not the response - only </think> appears in generated output\n        if len(response) > 0:\n            text = response[0]\n            if shared.opts.interrogate_vlm_keep_thinking:\n                # Handle case where <think> is in prompt (not response) but </think> is in response\n                if '</think>' in text and '<think>' not in text:\n                    text = 'Reasoning:\\n' + text.replace('</think>', '\\n\\nAnswer:')\n                else:\n                    text = text.replace('<think>', 'Reasoning:\\n').replace('</think>', '\\n\\nAnswer:')\n            else:\n                while '</think>' in text:\n                    start = text.find('<think>')\n                    end = text.find('</think>')\n\n                    if start != -1 and start < end:\n                        # Standard <think>...content...</think> block\n                        text = text[:start] + text[end+8:]\n                    else:\n                        # Missing <think> (implied at start) or malformed\n                        # Remove from start up to </think>\n                        text = text[end+8:]\n            response[0] = text\n        return response\n\n    def _load_gemma(self, repo: str):\n        \"\"\"Load Gemma 3 model and processor.\"\"\"\n        if self.model is None or self.loaded != repo:\n            shared.log.debug(f'Interrogate load: vlm=\"{repo}\"')\n            self.model = None\n            if '3n' in repo:\n                cls = transformers.Gemma3nForConditionalGeneration  # pylint: disable=no-member\n            else:\n                cls = transformers.Gemma3ForConditionalGeneration\n            quant_args = model_quant.create_config(module='LLM')\n            self.model = cls.from_pretrained(\n                repo,\n                torch_dtype=devices.dtype,\n                cache_dir=shared.opts.hfcache_dir,\n                **quant_args,\n            )\n            if 'LLM' in shared.opts.cuda_compile:\n                self.model = sd_models_compile.compile_torch(self.model)\n            self.processor = transformers.AutoProcessor.from_pretrained(repo, max_pixels=1024*1024, cache_dir=shared.opts.hfcache_dir)\n            self.loaded = repo\n            devices.torch_gc()\n\n    def _gemma(self, question: str, image: Image.Image, repo: str, system_prompt: str = None, model_name: str = None, prefill: str = None, thinking_mode: bool = False):\n        self._load_gemma(repo)\n        sd_models.move_model(self.model, devices.device)\n        # Get model class name for logging\n        cls_name = self.model.__class__.__name__\n        debug(f'VQA interrogate: handler=gemma model_name=\"{model_name}\" model_class=\"{cls_name}\" repo=\"{repo}\" question=\"{question}\" system_prompt=\"{system_prompt}\" image_size={image.size if image else None}')\n\n        question = question.replace('<', '').replace('>', '').replace('_', ' ')\n        system_prompt = system_prompt or shared.opts.interrogate_vlm_system\n\n        system_content = []\n        if system_prompt is not None and len(system_prompt) > 4:\n            system_content.append({\"type\": \"text\", \"text\": system_prompt})\n\n        user_content = []\n        if question is not None and len(question) > 4:\n            user_content.append({\"type\": \"text\", \"text\": question})\n        if image is not None:\n            user_content.append({\"type\": \"image\", \"image\": b64(image)})\n        conversation = [\n            {\"role\": \"system\", \"content\": system_content},\n            {\"role\": \"user\", \"content\": user_content},\n        ]\n        # Add prefill if provided\n        prefill_value = vlm_prefill if prefill is None else prefill\n        prefill_text = prefill_value.strip()\n        use_prefill = len(prefill_text) > 0\n        # Thinking models emit their own <think> tags via the chat template\n        # Use manual toggle OR auto-detection based on model name\n        use_thinking = thinking_mode or is_thinking_model(model_name)\n        if use_prefill:\n            conversation.append({\n                \"role\": \"assistant\",\n                \"content\": [{\"type\": \"text\", \"text\": prefill_text}],\n            })\n            debug(f'VQA interrogate: handler=gemma prefill=\"{prefill_text}\"')\n        else:\n            debug('VQA interrogate: handler=gemma prefill disabled (empty), relying on add_generation_prompt')\n        if debug_enabled:\n            debug(f'VQA interrogate: handler=gemma conversation_roles={[msg[\"role\"] for msg in conversation]}')\n            debug(f'VQA interrogate: handler=gemma full_conversation={truncate_b64_in_conversation(conversation)}')\n            debug_prefill_mode = 'add_generation_prompt=False continue_final_message=True' if use_prefill else 'add_generation_prompt=True'\n            debug(f'VQA interrogate: handler=gemma template_mode={debug_prefill_mode}')\n        try:\n            if use_prefill:\n                text_prompt = self.processor.apply_chat_template(\n                    conversation,\n                    add_generation_prompt=False,\n                    continue_final_message=True,\n                    tokenize=False,\n                )\n            else:\n                text_prompt = self.processor.apply_chat_template(\n                    conversation,\n                    add_generation_prompt=True,\n                    tokenize=False,\n                )\n        except (TypeError, ValueError) as e:\n            debug(f'VQA interrogate: handler=gemma chat_template fallback add_generation_prompt=True: {e}')\n            text_prompt = self.processor.apply_chat_template(\n                conversation,\n                add_generation_prompt=True,\n                tokenize=False,\n            )\n        if use_prefill and use_thinking:\n            text_prompt = keep_think_block_open(text_prompt)\n        if debug_enabled:\n            debug(f'VQA interrogate: handler=gemma text_prompt=\"{text_prompt}\"')\n        inputs = self.processor(\n            text=[text_prompt],\n            images=[image],\n            padding=True,\n            return_tensors=\"pt\",\n        ).to(device=devices.device, dtype=devices.dtype)\n        input_len = inputs[\"input_ids\"].shape[-1]\n        gen_kwargs = get_kwargs()\n        debug(f'VQA interrogate: handler=gemma generation_kwargs={gen_kwargs} input_len={input_len}')\n        with devices.inference_context():\n            generation = self.model.generate(\n                **inputs,\n                **gen_kwargs,\n            )\n        debug(f'VQA interrogate: handler=gemma output_ids_shape={generation.shape}')\n        generation = generation[0][input_len:]\n        response = self.processor.decode(generation, skip_special_tokens=True)\n        if debug_enabled:\n            debug(f'VQA interrogate: handler=gemma response_before_clean=\"{response}\"')\n\n        # Clean up thinking tags (if any remain)\n        if shared.opts.interrogate_vlm_keep_thinking:\n            response = response.replace('<think>', 'Reasoning:\\n').replace('</think>', '\\n\\nAnswer:')\n        else:\n            text = response\n            while '</think>' in text:\n                start = text.find('<think>')\n                end = text.find('</think>')\n                if start != -1 and start < end:\n                    text = text[:start] + text[end+8:]\n                else:\n                    text = text[end+8:]\n            response = text\n\n        return response\n\n    def _load_paligemma(self, repo: str):\n        \"\"\"Load PaliGemma model and processor.\"\"\"\n        if self.model is None or self.loaded != repo:\n            shared.log.debug(f'Interrogate load: vlm=\"{repo}\"')\n            self.processor = transformers.PaliGemmaProcessor.from_pretrained(repo, cache_dir=shared.opts.hfcache_dir)\n            self.model = None\n            self.model = transformers.PaliGemmaForConditionalGeneration.from_pretrained(\n                repo,\n                cache_dir=shared.opts.hfcache_dir,\n                torch_dtype=devices.dtype,\n            )\n            self.loaded = repo\n            devices.torch_gc()\n\n    def _paligemma(self, question: str, image: Image.Image, repo: str, model_name: str = None): # pylint: disable=unused-argument\n        self._load_paligemma(repo)\n        sd_models.move_model(self.model, devices.device)\n        question = question.replace('<', '').replace('>', '').replace('_', ' ')\n        model_inputs = self.processor(text=question, images=image, return_tensors=\"pt\").to(devices.device, devices.dtype)\n        input_len = model_inputs[\"input_ids\"].shape[-1]\n        with devices.inference_context():\n            generation = self.model.generate(\n                **model_inputs,\n                **get_kwargs(),\n            )\n        generation = generation[0][input_len:]\n        response = self.processor.decode(generation, skip_special_tokens=True)\n        return response\n\n    def _load_ovis(self, repo: str):\n        \"\"\"Load Ovis model (requires flash-attn).\"\"\"\n        if self.model is None or self.loaded != repo:\n            shared.log.debug(f'Interrogate load: vlm=\"{repo}\"')\n            self.model = None\n            self.model = transformers.AutoModelForCausalLM.from_pretrained(\n                repo,\n                torch_dtype=devices.dtype,\n                multimodal_max_length=32768,\n                trust_remote_code=True,\n                cache_dir=shared.opts.hfcache_dir,\n            )\n            self.loaded = repo\n            devices.torch_gc()\n\n    def _ovis(self, question: str, image: Image.Image, repo: str, model_name: str = None): # pylint: disable=unused-argument\n        try:\n            import flash_attn  # pylint: disable=unused-import\n        except Exception:\n            shared.log.error(f'Interrogate: vlm=\"{repo}\" flash-attn is not available')\n            return ''\n        self._load_ovis(repo)\n        sd_models.move_model(self.model, devices.device)\n        text_tokenizer = self.model.get_text_tokenizer()\n        visual_tokenizer = self.model.get_visual_tokenizer()\n        max_partition = 9\n        question = question.replace('<', '').replace('>', '').replace('_', ' ')\n        question = f'<image>\\n{question}'\n        _prompt, input_ids, pixel_values = self.model.preprocess_inputs(question, [image], max_partition=max_partition)\n        attention_mask = torch.ne(input_ids, text_tokenizer.pad_token_id)\n        input_ids = input_ids.unsqueeze(0).to(device=self.model.device)\n        attention_mask = attention_mask.unsqueeze(0).to(device=self.model.device)\n        if pixel_values is not None:\n            pixel_values = pixel_values.to(dtype=visual_tokenizer.dtype, device=visual_tokenizer.device)\n        pixel_values = [pixel_values]\n        with devices.inference_context():\n            output_ids = self.model.generate(\n                input_ids,\n                pixel_values=pixel_values,\n                attention_mask=attention_mask,\n                repetition_penalty=None,\n                eos_token_id=self.model.generation_config.eos_token_id,\n                pad_token_id=text_tokenizer.pad_token_id,\n                use_cache=True,\n                **get_kwargs())\n            response = text_tokenizer.decode(output_ids[0], skip_special_tokens=True)\n        return response\n\n    def _load_smol(self, repo: str):\n        \"\"\"Load SmolVLM model and processor.\"\"\"\n        if self.model is None or self.loaded != repo:\n            shared.log.debug(f'Interrogate load: vlm=\"{repo}\"')\n            self.model = None\n            quant_args = model_quant.create_config(module='LLM')\n            self.model = transformers.AutoModelForVision2Seq.from_pretrained(\n                repo,\n                cache_dir=shared.opts.hfcache_dir,\n                torch_dtype=devices.dtype,\n                **quant_args,\n            )\n            self.processor = transformers.AutoProcessor.from_pretrained(repo, max_pixels=1024*1024, cache_dir=shared.opts.hfcache_dir)\n            if 'LLM' in shared.opts.cuda_compile:\n                self.model = sd_models_compile.compile_torch(self.model)\n            self.loaded = repo\n            devices.torch_gc()\n\n    def _smol(self, question: str, image: Image.Image, repo: str, system_prompt: str = None, model_name: str = None, prefill: str = None, thinking_mode: bool = False):\n        self._load_smol(repo)\n        sd_models.move_model(self.model, devices.device)\n        # Get model class name for logging\n        cls_name = self.model.__class__.__name__\n        debug(f'VQA interrogate: handler=smol model_name=\"{model_name}\" model_class=\"{cls_name}\" repo=\"{repo}\" question=\"{question}\" system_prompt=\"{system_prompt}\" image_size={image.size if image else None}')\n\n        question = question.replace('<', '').replace('>', '').replace('_', ' ')\n        system_prompt = system_prompt or shared.opts.interrogate_vlm_system\n        conversation = [\n            {\n                \"role\": \"system\",\n                \"content\": [{\"type\": \"text\", \"text\": system_prompt}],\n            },\n            {\n                \"role\": \"user\",\n                \"content\": [\n                    {\"type\": \"image\", \"image\": b64(image)},\n                    {\"type\": \"text\", \"text\": question},\n                ],\n            }\n        ]\n        # Add prefill if provided\n        prefill_value = vlm_prefill if prefill is None else prefill\n        prefill_text = prefill_value.strip()\n        use_prefill = len(prefill_text) > 0\n        # Thinking models emit their own <think> tags via the chat template\n        # Use manual toggle OR auto-detection based on model name\n        use_thinking = thinking_mode or is_thinking_model(model_name)\n        if use_prefill:\n            conversation.append({\n                \"role\": \"assistant\",\n                \"content\": [{\"type\": \"text\", \"text\": prefill_text}],\n            })\n            debug(f'VQA interrogate: handler=smol prefill=\"{prefill_text}\"')\n        else:\n            debug('VQA interrogate: handler=smol prefill disabled (empty), relying on add_generation_prompt')\n        if debug_enabled:\n            debug(f'VQA interrogate: handler=smol conversation_roles={[msg[\"role\"] for msg in conversation]}')\n            debug(f'VQA interrogate: handler=smol full_conversation={truncate_b64_in_conversation(conversation)}')\n            debug_prefill_mode = 'add_generation_prompt=False continue_final_message=True' if use_prefill else 'add_generation_prompt=True'\n            debug(f'VQA interrogate: handler=smol template_mode={debug_prefill_mode}')\n        try:\n            if use_prefill:\n                text_prompt = self.processor.apply_chat_template(\n                    conversation,\n                    add_generation_prompt=False,\n                    continue_final_message=True,\n                )\n            else:\n                text_prompt = self.processor.apply_chat_template(conversation, add_generation_prompt=True)\n        except (TypeError, ValueError) as e:\n            debug(f'VQA interrogate: handler=smol chat_template fallback add_generation_prompt=True: {e}')\n            text_prompt = self.processor.apply_chat_template(conversation, add_generation_prompt=True)\n        if use_prefill and use_thinking:\n            text_prompt = keep_think_block_open(text_prompt)\n        if debug_enabled:\n            debug(f'VQA interrogate: handler=smol text_prompt=\"{text_prompt}\"')\n        inputs = self.processor(text=text_prompt, images=[image], padding=True, return_tensors=\"pt\")\n        inputs = inputs.to(devices.device, devices.dtype)\n        gen_kwargs = get_kwargs()\n        debug(f'VQA interrogate: handler=smol generation_kwargs={gen_kwargs}')\n        output_ids = self.model.generate(\n            **inputs,\n            **gen_kwargs,\n        )\n        debug(f'VQA interrogate: handler=smol output_ids_shape={output_ids.shape}')\n        response = self.processor.batch_decode(output_ids, skip_special_tokens=True)\n        if debug_enabled:\n            debug(f'VQA interrogate: handler=smol response_before_clean=\"{response}\"')\n\n        # Clean up thinking tags\n        if len(response) > 0:\n            text = response[0]\n            if shared.opts.interrogate_vlm_keep_thinking:\n                text = text.replace('<think>', 'Reasoning:\\n').replace('</think>', '\\n\\nAnswer:')\n            else:\n                while '</think>' in text:\n                    start = text.find('<think>')\n                    end = text.find('</think>')\n                    if start != -1 and start < end:\n                        text = text[:start] + text[end+8:]\n                    else:\n                        text = text[end+8:]\n            response[0] = text\n\n        return response\n\n    def _load_git(self, repo: str):\n        \"\"\"Load Microsoft GIT model and processor.\"\"\"\n        if self.model is None or self.loaded != repo:\n            shared.log.debug(f'Interrogate load: vlm=\"{repo}\"')\n            self.model = None\n            self.model = transformers.GitForCausalLM.from_pretrained(\n                repo,\n                torch_dtype=devices.dtype,\n                cache_dir=shared.opts.hfcache_dir,\n            )\n            self.processor = transformers.GitProcessor.from_pretrained(repo, cache_dir=shared.opts.hfcache_dir)\n            self.loaded = repo\n            devices.torch_gc()\n\n    def _git(self, question: str, image: Image.Image, repo: str, model_name: str = None): # pylint: disable=unused-argument\n        self._load_git(repo)\n        sd_models.move_model(self.model, devices.device)\n        pixel_values = self.processor(images=image, return_tensors=\"pt\").pixel_values\n        git_dict = {}\n        git_dict['pixel_values'] = pixel_values.to(devices.device, devices.dtype)\n        if len(question) > 0:\n            input_ids = self.processor(text=question, add_special_tokens=False).input_ids\n            input_ids = [self.processor.tokenizer.cls_token_id] + input_ids\n            input_ids = torch.tensor(input_ids).unsqueeze(0)\n            git_dict['input_ids'] = input_ids.to(devices.device)\n        with devices.inference_context():\n            generated_ids = self.model.generate(**git_dict)\n        response = self.processor.batch_decode(generated_ids, skip_special_tokens=True)[0]\n        return response\n\n    def _load_blip(self, repo: str):\n        \"\"\"Load Salesforce BLIP model and processor.\"\"\"\n        if self.model is None or self.loaded != repo:\n            shared.log.debug(f'Interrogate load: vlm=\"{repo}\"')\n            self.model = None\n            self.model = transformers.BlipForQuestionAnswering.from_pretrained(\n                repo,\n                torch_dtype=devices.dtype,\n                cache_dir=shared.opts.hfcache_dir,\n            )\n            self.processor = transformers.BlipProcessor.from_pretrained(repo, cache_dir=shared.opts.hfcache_dir)\n            self.loaded = repo\n            devices.torch_gc()\n\n    def _blip(self, question: str, image: Image.Image, repo: str, model_name: str = None): # pylint: disable=unused-argument\n        self._load_blip(repo)\n        sd_models.move_model(self.model, devices.device)\n        inputs = self.processor(image, question, return_tensors=\"pt\")\n        inputs = inputs.to(devices.device, devices.dtype)\n        with devices.inference_context():\n            outputs = self.model.generate(**inputs)\n        response = self.processor.decode(outputs[0], skip_special_tokens=True)\n        return response\n\n    def _load_vilt(self, repo: str):\n        \"\"\"Load ViLT model and processor.\"\"\"\n        if self.model is None or self.loaded != repo:\n            shared.log.debug(f'Interrogate load: vlm=\"{repo}\"')\n            self.model = None\n            self.model = transformers.ViltForQuestionAnswering.from_pretrained(\n                repo,\n                torch_dtype=devices.dtype,\n                cache_dir=shared.opts.hfcache_dir,\n            )\n            self.processor = transformers.ViltProcessor.from_pretrained(repo, cache_dir=shared.opts.hfcache_dir)\n            self.loaded = repo\n            devices.torch_gc()\n\n    def _vilt(self, question: str, image: Image.Image, repo: str, model_name: str = None): # pylint: disable=unused-argument\n        self._load_vilt(repo)\n        sd_models.move_model(self.model, devices.device)\n        inputs = self.processor(image, question, return_tensors=\"pt\")\n        inputs = inputs.to(devices.device)\n        with devices.inference_context():\n            outputs = self.model(**inputs)\n        logits = outputs.logits\n        idx = logits.argmax(-1).item()\n        response = self.model.config.id2label[idx]\n        return response\n\n    def _load_pix(self, repo: str):\n        \"\"\"Load Pix2Struct model and processor.\"\"\"\n        if self.model is None or self.loaded != repo:\n            shared.log.debug(f'Interrogate load: vlm=\"{repo}\"')\n            self.model = None\n            self.model = transformers.Pix2StructForConditionalGeneration.from_pretrained(\n                repo,\n                torch_dtype=devices.dtype,\n                cache_dir=shared.opts.hfcache_dir,\n            )\n            self.processor = transformers.Pix2StructProcessor.from_pretrained(repo, cache_dir=shared.opts.hfcache_dir)\n            self.loaded = repo\n            devices.torch_gc()\n\n    def _pix(self, question: str, image: Image.Image, repo: str, model_name: str = None): # pylint: disable=unused-argument\n        self._load_pix(repo)\n        sd_models.move_model(self.model, devices.device)\n        if len(question) > 0:\n            inputs = self.processor(images=image, text=question, return_tensors=\"pt\").to(devices.device)\n        else:\n            inputs = self.processor(images=image, return_tensors=\"pt\").to(devices.device)\n        with devices.inference_context():\n            outputs = self.model.generate(**inputs)\n        response = self.processor.decode(outputs[0], skip_special_tokens=True)\n        return response\n\n    def _load_moondream(self, repo: str):\n        \"\"\"Load Moondream 2 model and tokenizer.\"\"\"\n        if self.model is None or self.loaded != repo:\n            shared.log.debug(f'Interrogate load: vlm=\"{repo}\"')\n            self.model = None\n            self.model = transformers.AutoModelForCausalLM.from_pretrained(\n                repo,\n                revision=\"2025-06-21\",\n                trust_remote_code=True,\n                torch_dtype=devices.dtype,\n                cache_dir=shared.opts.hfcache_dir,\n            )\n            self.processor = transformers.AutoTokenizer.from_pretrained(repo, cache_dir=shared.opts.hfcache_dir)\n            self.loaded = repo\n            self.model.eval()\n            devices.torch_gc()\n\n    def _moondream(self, question: str, image: Image.Image, repo: str, model_name: str = None, thinking_mode: bool = False):\n        debug(f'VQA interrogate: handler=moondream model_name=\"{model_name}\" repo=\"{repo}\" question=\"{question}\" thinking_mode={thinking_mode}')\n        self._load_moondream(repo)\n        sd_models.move_model(self.model, devices.device)\n        question = question.replace('<', '').replace('>', '').replace('_', ' ')\n        with devices.inference_context():\n            if question == 'CAPTION':\n                response = self.model.caption(image, length=\"short\")['caption']\n            elif question == 'DETAILED CAPTION':\n                response = self.model.caption(image, length=\"normal\")['caption']\n            elif question == 'MORE DETAILED CAPTION':\n                response = self.model.caption(image, length=\"long\")['caption']\n            elif question.lower().startswith('point at ') or question == 'POINT_MODE':\n                target = question[9:].strip() if question.lower().startswith('point at ') else ''\n                if not target:\n                    return \"Please specify an object to locate\"\n                debug(f'VQA interrogate: handler=moondream method=point target=\"{target}\"')\n                result = self.model.point(image, target)\n                debug(f'VQA interrogate: handler=moondream point_raw_result={result}')\n                points = vqa_detection.parse_points(result)\n                if points:\n                    self.last_detection_data = {'points': points}\n                    return vqa_detection.format_points_text(points)\n                return \"Object not found\"\n            elif question.lower().startswith('detect ') or question == 'DETECT_MODE':\n                target = question[7:].strip() if question.lower().startswith('detect ') else ''\n                if not target:\n                    return \"Please specify an object to detect\"\n                debug(f'VQA interrogate: handler=moondream method=detect target=\"{target}\"')\n                result = self.model.detect(image, target)\n                debug(f'VQA interrogate: handler=moondream detect_raw_result={result}')\n                detections = vqa_detection.parse_detections(result, target)\n                if detections:\n                    self.last_detection_data = {'detections': detections}\n                    return vqa_detection.format_detections_text(detections, include_confidence=False)\n                return \"No objects detected\"\n            elif question == 'DETECT_GAZE' or question.lower() == 'detect gaze':\n                debug('VQA interrogate: handler=moondream method=detect_gaze')\n                faces = self.model.detect(image, \"face\")\n                debug(f'VQA interrogate: handler=moondream detect_gaze faces={faces}')\n                if faces.get('objects'):\n                    eye_x, eye_y = vqa_detection.calculate_eye_position(faces['objects'][0])\n                    result = self.model.detect_gaze(image, eye=(eye_x, eye_y))\n                    debug(f'VQA interrogate: handler=moondream detect_gaze result={result}')\n                    if result.get('gaze'):\n                        gaze = result['gaze']\n                        self.last_detection_data = {'points': [(gaze['x'], gaze['y'])]}\n                        return f\"Gaze direction: ({gaze['x']:.3f}, {gaze['y']:.3f})\"\n                return \"No face/gaze detected\"\n            else:\n                debug(f'VQA interrogate: handler=moondream method=query question=\"{question}\" reasoning={thinking_mode}')\n                result = self.model.query(image, question, reasoning=thinking_mode)\n                response = result['answer']\n                debug(f'VQA interrogate: handler=moondream query_result keys={list(result.keys()) if isinstance(result, dict) else \"not dict\"}')\n                if thinking_mode and 'reasoning' in result:\n                    reasoning_text = result['reasoning'].get('text', '') if isinstance(result['reasoning'], dict) else str(result['reasoning'])\n                    debug(f'VQA interrogate: handler=moondream reasoning_text=\"{reasoning_text[:100]}...\"')\n                    if shared.opts.interrogate_vlm_keep_thinking:\n                        response = f\"Reasoning:\\n{reasoning_text}\\n\\nAnswer:\\n{response}\"\n                    # When keep_thinking is False, just use the answer (reasoning is discarded)\n        return response\n\n    def _load_florence(self, repo: str, revision: str = None):\n        \"\"\"Load Florence-2 model and processor.\"\"\"\n        _get_imports = transformers.dynamic_module_utils.get_imports\n\n        def get_imports(f):\n            R = _get_imports(f)\n            if \"flash_attn\" in R:\n                R.remove(\"flash_attn\")  # flash_attn is optional\n            return R\n\n        # Handle revision splitting and caching\n        cache_key = repo\n        effective_revision = revision\n        repo_name = repo\n\n        if repo and '@' in repo:\n            repo_name, revision_from_repo = repo.split('@')\n            effective_revision = revision_from_repo\n\n        if self.model is None or self.loaded != cache_key:\n            shared.log.debug(f'Interrogate load: vlm=\"{repo_name}\" revision=\"{effective_revision}\" path=\"{shared.opts.hfcache_dir}\"')\n            transformers.dynamic_module_utils.get_imports = get_imports\n            self.model = None\n            quant_args = model_quant.create_config(module='LLM')\n            self.model = transformers.Florence2ForConditionalGeneration.from_pretrained(\n                repo_name,\n                dtype=torch.bfloat16,\n                revision=effective_revision,\n                torch_dtype=devices.dtype,\n                cache_dir=shared.opts.hfcache_dir,\n                **quant_args,\n            )\n            self.processor = transformers.AutoProcessor.from_pretrained(repo_name, max_pixels=1024*1024, trust_remote_code=True, revision=effective_revision, cache_dir=shared.opts.hfcache_dir)\n            transformers.dynamic_module_utils.get_imports = _get_imports\n            self.loaded = cache_key\n            self.model.eval()\n            devices.torch_gc()\n\n    def _florence(self, question: str, image: Image.Image, repo: str, revision: str = None, model_name: str = None): # pylint: disable=unused-argument\n        self._load_florence(repo, revision)\n        sd_models.move_model(self.model, devices.device)\n        if question.startswith('<'):\n            task = question.split('>', 1)[0] + '>'\n        else:\n            task = '<MORE_DETAILED_CAPTION>'\n        inputs = self.processor(text=task, images=image, return_tensors=\"pt\")\n        input_ids = inputs['input_ids'].to(devices.device)\n        pixel_values = inputs['pixel_values'].to(devices.device, devices.dtype)\n        with devices.inference_context():\n            generated_ids = self.model.generate(\n                input_ids=input_ids,\n                pixel_values=pixel_values,\n                **get_kwargs()\n            )\n            generated_text = self.processor.batch_decode(generated_ids, skip_special_tokens=False)[0]\n            response = self.processor.post_process_generation(generated_text, task=\"task\", image_size=(image.width, image.height))\n        return response\n\n    def _load_sa2(self, repo: str):\n        \"\"\"Load SA2VA model and tokenizer.\"\"\"\n        if self.model is None or self.loaded != repo:\n            self.model = None\n            self.model = transformers.AutoModel.from_pretrained(\n                repo,\n                torch_dtype=devices.dtype,\n                low_cpu_mem_usage=True,\n                use_flash_attn=False,\n                trust_remote_code=True)\n            self.model = self.model.eval()\n            self.processor = transformers.AutoTokenizer.from_pretrained(\n                repo,\n                trust_remote_code=True,\n                use_fast=False,\n            )\n            self.loaded = repo\n            devices.torch_gc()\n\n    def _sa2(self, question: str, image: Image.Image, repo: str, model_name: str = None): # pylint: disable=unused-argument\n        self._load_sa2(repo)\n        sd_models.move_model(self.model, devices.device)\n        if question.startswith('<'):\n            task = question.split('>', 1)[0] + '>'\n        else:\n            task = '<MORE_DETAILED_CAPTION>'\n        input_dict = {\n            'image': image,\n            'text': f'<image>{task}',\n            'past_text': '',\n            'mask_prompts': None,\n            'tokenizer': self.processor,\n        }\n        return_dict = self.model.predict_forward(**input_dict)\n        response = return_dict[\"prediction\"]  # the text format answer\n        return response\n\n    def interrogate(self, question: str = '', system_prompt: str = None, prompt: str = None, image: Image.Image = None, model_name: str = None, prefill: str = None, thinking_mode: bool = False, quiet: bool = False) -> str:\n        \"\"\"\n        Main entry point for VQA interrogation. Returns string answer.\n        Detection data stored in self.last_detection_data for annotated image creation.\n        \"\"\"\n        self.last_annotated_image = None\n        self.last_detection_data = None\n        jobid = shared.state.begin('Interrogate LLM')\n        t0 = time.time()\n        model_name = model_name or shared.opts.interrogate_vlm_model\n        prefill = vlm_prefill if prefill is None else prefill  # Use provided prefill when specified\n        if isinstance(image, list):\n            image = image[0] if len(image) > 0 else None\n        if isinstance(image, dict) and 'name' in image:\n            image = Image.open(image['name'])\n        if isinstance(image, Image.Image):\n            if image.width > 768 or image.height > 768:\n                image.thumbnail((768, 768), Image.Resampling.LANCZOS)\n            if image.mode != 'RGB':\n                image = image.convert('RGB')\n        if image is None:\n            shared.log.error(f'VQA interrogate: model=\"{model_name}\" error=\"No input image provided\"')\n            shared.state.end(jobid)\n            return 'Error: No input image provided. Please upload or select an image.'\n\n        # Convert friendly prompt names to internal tokens/commands\n        if question == \"Use Prompt\":\n            # Use content from Prompt field directly - requires user input\n            if not prompt or len(prompt.strip()) < 2:\n                shared.log.error(f'VQA interrogate: model=\"{model_name}\" error=\"Please enter a prompt\"')\n                shared.state.end(jobid)\n                return 'Error: Please enter a question or instruction in the Prompt field.'\n            question = prompt\n        elif question in vlm_prompt_mapping:\n            # Check if this is a mode that requires user input (Point/Detect)\n            raw_mapping = vlm_prompt_mapping.get(question)\n            if raw_mapping in (\"POINT_MODE\", \"DETECT_MODE\"):\n                # These modes require user input in the prompt field\n                if not prompt or len(prompt.strip()) < 2:\n                    shared.log.error(f'VQA interrogate: model=\"{model_name}\" error=\"Please specify what to find in the prompt field\"')\n                    shared.state.end(jobid)\n                    return 'Error: Please specify what to find in the prompt field (e.g., \"the red car\" or \"faces\").'\n            # Convert friendly name to internal token (handles Point/Detect prefix)\n            question = get_internal_prompt(question, prompt)\n        # else: question is already an internal token or custom text\n\n        from modules import modelloader\n        modelloader.hf_login()\n\n        try:\n            if model_name is None:\n                shared.log.error(f'Interrogate: type=vlm model=\"{model_name}\" no model selected')\n                shared.state.end(jobid)\n                return ''\n            vqa_model = vlm_models.get(model_name, None)\n            if vqa_model is None:\n                shared.log.error(f'Interrogate: type=vlm model=\"{model_name}\" unknown')\n                shared.state.end(jobid)\n                return ''\n\n            handler = 'unknown'\n            if 'git' in vqa_model.lower():\n                handler = 'git'\n                answer = self._git(question, image, vqa_model, model_name)\n            elif 'vilt' in vqa_model.lower():\n                handler = 'vilt'\n                answer = self._vilt(question, image, vqa_model, model_name)\n            elif 'blip' in vqa_model.lower():\n                handler = 'blip'\n                answer = self._blip(question, image, vqa_model, model_name)\n            elif 'pix' in vqa_model.lower():\n                handler = 'pix'\n                answer = self._pix(question, image, vqa_model, model_name)\n            elif 'moondream3' in vqa_model.lower():\n                handler = 'moondream3'\n                from modules.interrogate import moondream3\n                answer = moondream3.predict(question, image, vqa_model, model_name, thinking_mode=thinking_mode)\n            elif 'moondream2' in vqa_model.lower():\n                handler = 'moondream'\n                answer = self._moondream(question, image, vqa_model, model_name, thinking_mode)\n            elif 'florence' in vqa_model.lower():\n                handler = 'florence'\n                answer = self._florence(question, image, vqa_model, None, model_name)\n            elif 'qwen' in vqa_model.lower() or 'torii' in vqa_model.lower() or 'mimo' in vqa_model.lower():\n                handler = 'qwen'\n                answer = self._qwen(question, image, vqa_model, system_prompt, model_name, prefill, thinking_mode)\n            elif 'smol' in vqa_model.lower():\n                handler = 'smol'\n                answer = self._smol(question, image, vqa_model, system_prompt, model_name, prefill, thinking_mode)\n            elif 'joytag' in vqa_model.lower():\n                handler = 'joytag'\n                from modules.interrogate import joytag\n                answer = joytag.predict(image)\n            elif 'joycaption' in vqa_model.lower():\n                handler = 'joycaption'\n                from modules.interrogate import joycaption\n                answer = joycaption.predict(question, image, vqa_model)\n            elif 'deepseek' in vqa_model.lower():\n                handler = 'deepseek'\n                from modules.interrogate import deepseek\n                answer = deepseek.predict(question, image, vqa_model)\n            elif 'paligemma' in vqa_model.lower():\n                handler = 'paligemma'\n                answer = self._paligemma(question, image, vqa_model, model_name)\n            elif 'gemma' in vqa_model.lower():\n                handler = 'gemma'\n                answer = self._gemma(question, image, vqa_model, system_prompt, model_name, prefill, thinking_mode)\n            elif 'ovis' in vqa_model.lower():\n                handler = 'ovis'\n                answer = self._ovis(question, image, vqa_model, model_name)\n            elif 'sa2' in vqa_model.lower():\n                handler = 'sa2'\n                answer = self._sa2(question, image, vqa_model, model_name)\n            elif 'fastvlm' in vqa_model.lower():\n                handler = 'fastvlm'\n                answer = self._fastvlm(question, image, vqa_model, model_name)\n            else:\n                answer = 'unknown model'\n        except Exception as e:\n            errors.display(e, 'VQA')\n            answer = 'error'\n\n        if shared.opts.interrogate_offload and self.model is not None:\n            sd_models.move_model(self.model, devices.cpu, force=True)\n        devices.torch_gc(force=True, reason='vqa')\n\n        # Clean the answer\n        answer = clean(answer, question, prefill)\n\n        # Create annotated image if detection data is available\n        if self.last_detection_data and isinstance(self.last_detection_data, dict) and image:\n            detections = self.last_detection_data.get('detections', None)\n            points = self.last_detection_data.get('points', None)\n            if detections or points:\n                self.last_annotated_image = vqa_detection.draw_bounding_boxes(image, detections or [], points)\n                debug(f'VQA interrogate: handler={handler} created annotated image detections={len(detections) if detections else 0} points={len(points) if points else 0}')\n\n        debug(f'VQA interrogate: handler={handler} response_after_clean=\"{answer}\" has_annotation={self.last_annotated_image is not None}')\n        t1 = time.time()\n        if not quiet:\n            shared.log.debug(f'Interrogate: type=vlm model=\"{model_name}\" repo=\"{vqa_model}\" args={get_kwargs()} time={t1-t0:.2f}')\n        shared.state.end(jobid)\n        return answer\n\n    def batch(self, model_name, system_prompt, batch_files, batch_folder, batch_str, question, prompt, write, append, recursive, prefill=None, thinking_mode=False):\n        class BatchWriter:\n            def __init__(self, folder, mode='w'):\n                self.folder = folder\n                self.csv = None\n                self.file = None\n                self.mode = mode\n\n            def add(self, file, prompt_text):\n                txt_file = os.path.splitext(file)[0] + \".txt\"\n                if self.mode == 'a':\n                    prompt_text = '\\n' + prompt_text\n                with open(os.path.join(self.folder, txt_file), self.mode, encoding='utf-8') as f:\n                    f.write(prompt_text)\n\n            def close(self):\n                if self.file is not None:\n                    self.file.close()\n\n        files = []\n        if batch_files is not None:\n            files += [f.name for f in batch_files]\n        if batch_folder is not None:\n            files += [f.name for f in batch_folder]\n        if batch_str is not None and len(batch_str) > 0 and os.path.exists(batch_str) and os.path.isdir(batch_str):\n            from modules.files_cache import list_files\n            files += list(list_files(batch_str, ext_filter=['.png', '.jpg', '.jpeg', '.webp', '.jxl'], recursive=recursive))\n        if len(files) == 0:\n            shared.log.warning('Interrogate batch: type=vlm no images')\n            return ''\n        jobid = shared.state.begin('Interrogate batch')\n        prompts = []\n        if write:\n            mode = 'w' if not append else 'a'\n            writer = BatchWriter(os.path.dirname(files[0]), mode=mode)\n        orig_offload = shared.opts.interrogate_offload\n        shared.opts.interrogate_offload = False\n        import rich.progress as rp\n        pbar = rp.Progress(rp.TextColumn('[cyan]Caption:'), rp.BarColumn(), rp.MofNCompleteColumn(), rp.TaskProgressColumn(), rp.TimeRemainingColumn(), rp.TimeElapsedColumn(), rp.TextColumn('[cyan]{task.description}'), console=shared.console)\n        with pbar:\n            task = pbar.add_task(total=len(files), description='starting...')\n            for file in files:\n                pbar.update(task, advance=1, description=file)\n                try:\n                    if shared.state.interrupted:\n                        break\n                    img = Image.open(file)\n                    caption = self.interrogate(question, system_prompt, prompt, img, model_name, prefill, thinking_mode, quiet=True)\n                    # Save annotated image if available\n                    if self.last_annotated_image and write:\n                        annotated_path = os.path.splitext(file)[0] + \"_annotated.png\"\n                        self.last_annotated_image.save(annotated_path)\n                    prompts.append(caption)\n                    if write:\n                        writer.add(file, caption)\n                except Exception as e:\n                    shared.log.error(f'Interrogate batch: {e}')\n        if write:\n            writer.close()\n        shared.opts.interrogate_offload = orig_offload\n        shared.state.end(jobid)\n        return '\\n\\n'.join(prompts)\n\n\n# Module-level singleton instance\n_instance = None\n\n\ndef get_instance() -> VQA:\n    \"\"\"Get or create the singleton VQA instance.\"\"\"\n    global _instance  # pylint: disable=global-statement\n    if _instance is None:\n        _instance = VQA()\n    return _instance\n\n\n# Backwards-compatible module-level functions\ndef interrogate(*args, **kwargs):\n    return get_instance().interrogate(*args, **kwargs)\n\n\ndef unload_model():\n    return get_instance().unload()\n\n\ndef load_model(model_name: str = None):\n    return get_instance().load(model_name)\n\n\ndef get_last_annotated_image():\n    return get_instance().last_annotated_image\n\n\ndef batch(*args, **kwargs):\n    return get_instance().batch(*args, **kwargs)\n"
  },
  {
    "path": "modules/interrogate/vqa_detection.py",
    "content": "# VQA Detection Utilities\n# Parsing, formatting, and drawing functions for detection results (points, bboxes, gaze)\n\nfrom PIL import Image, ImageDraw, ImageFont\nfrom modules import shared\n\n\ndef parse_points(result) -> list:\n    \"\"\"Parse and validate point coordinates from model result.\n\n    Args:\n        result: Model output, typically dict with 'points' key or list of coordinates\n\n    Returns:\n        List of (x, y) tuples with coordinates clamped to 0-1 range.\n    \"\"\"\n    points = []\n\n    # Dict format: {'points': [{'x': 0.5, 'y': 0.5}, ...]}\n    if isinstance(result, dict) and 'points' in result:\n        points_list = result['points']\n        if points_list and len(points_list) > 0:\n            for point_data in points_list:\n                if isinstance(point_data, dict) and 'x' in point_data and 'y' in point_data:\n                    x = max(0.0, min(1.0, float(point_data['x'])))\n                    y = max(0.0, min(1.0, float(point_data['y'])))\n                    points.append((x, y))\n\n    # Fallback for simple [x, y] format\n    elif isinstance(result, (list, tuple)) and len(result) == 2:\n        try:\n            x = max(0.0, min(1.0, float(result[0])))\n            y = max(0.0, min(1.0, float(result[1])))\n            points.append((x, y))\n        except (ValueError, TypeError):\n            pass\n\n    return points\n\n\ndef parse_detections(result, label: str, max_objects: int = None) -> list:\n    \"\"\"Parse and validate detection bboxes from model result.\n\n    Args:\n        result: Model output, typically dict with 'objects' key\n        label: Label to assign to detected objects\n        max_objects: Maximum number of objects to return (None for all)\n\n    Returns:\n        List of {'bbox': [x1,y1,x2,y2], 'label': str, 'confidence': float}\n        with coordinates clamped to 0-1 range.\n    \"\"\"\n    detections = []\n\n    if isinstance(result, dict) and 'objects' in result:\n        objects = result['objects']\n        if max_objects is not None:\n            objects = objects[:max_objects]\n\n        for obj in objects:\n            if all(k in obj for k in ['x_min', 'y_min', 'x_max', 'y_max']):\n                bbox = [\n                    max(0.0, min(1.0, float(obj['x_min']))),\n                    max(0.0, min(1.0, float(obj['y_min']))),\n                    max(0.0, min(1.0, float(obj['x_max']))),\n                    max(0.0, min(1.0, float(obj['y_max'])))\n                ]\n                detections.append({\n                    'bbox': bbox,\n                    'label': label,\n                    'confidence': obj.get('confidence', 1.0)\n                })\n\n    return detections\n\n\ndef format_points_text(points: list) -> str:\n    \"\"\"Format point coordinates as human-readable text.\n\n    Args:\n        points: List of (x, y) tuples with normalized coordinates\n\n    Returns:\n        Formatted text string describing the points.\n    \"\"\"\n    if not points:\n        return \"Object not found\"\n\n    if len(points) == 1:\n        return f\"Found at: ({points[0][0]:.3f}, {points[0][1]:.3f})\"\n\n    lines = [f\"Found {len(points)} instances:\"]\n    for i, (x, y) in enumerate(points, 1):\n        lines.append(f\"  {i}. ({x:.3f}, {y:.3f})\")\n    return '\\n'.join(lines)\n\n\ndef format_detections_text(detections: list, include_confidence: bool = True) -> str:\n    \"\"\"Format detections with bboxes as human-readable text.\n\n    Args:\n        detections: List of detection dicts with 'bbox', 'label', 'confidence'\n        include_confidence: Whether to include confidence scores in output\n\n    Returns:\n        Formatted text string describing the detections.\n    \"\"\"\n    if not detections:\n        return \"No objects detected\"\n\n    lines = []\n    for det in detections:\n        bbox = det['bbox']\n        label = det.get('label', 'object')\n        confidence = det.get('confidence', 1.0)\n\n        if include_confidence and confidence < 1.0:\n            lines.append(f\"{label}: [{bbox[0]:.3f}, {bbox[1]:.3f}, {bbox[2]:.3f}, {bbox[3]:.3f}] (confidence: {confidence:.2f})\")\n        else:\n            lines.append(f\"{label}: [{bbox[0]:.3f}, {bbox[1]:.3f}, {bbox[2]:.3f}, {bbox[3]:.3f}]\")\n\n    return '\\n'.join(lines)\n\n\ndef calculate_eye_position(face_bbox: dict) -> tuple:\n    \"\"\"Calculate approximate eye position from face bounding box.\n\n    Args:\n        face_bbox: Dict with 'x_min', 'y_min', 'x_max', 'y_max' keys\n\n    Returns:\n        (eye_x, eye_y) tuple with normalized coordinates.\n    \"\"\"\n    eye_x = (face_bbox['x_min'] + face_bbox['x_max']) / 2\n    eye_y = face_bbox['y_min'] + (face_bbox['y_max'] - face_bbox['y_min']) * 0.3  # Approximate eye level\n    return (eye_x, eye_y)\n\n\ndef draw_bounding_boxes(image: Image.Image, detections: list, points: list = None) -> Image.Image:\n    \"\"\"\n    Draw bounding boxes and/or points on an image.\n\n    Args:\n        image: PIL Image to annotate\n        detections: List of detection dicts with format:\n            [{'label': str, 'bbox': [x1, y1, x2, y2], 'confidence': float}, ...]\n            where coordinates are normalized 0-1\n        points: Optional list of (x, y) tuples with normalized 0-1 coordinates\n\n    Returns:\n        Annotated PIL Image with boxes and labels drawn, or None if no annotations\n    \"\"\"\n    if not detections and not points:\n        return None\n\n    # Create a copy to avoid modifying original\n    annotated = image.copy()\n    draw = ImageDraw.Draw(annotated)\n    width, height = image.size\n\n    # Try to load a font, fall back to default if unavailable\n    try:\n        font_size = max(12, int(min(width, height) * 0.02))\n        font_path = shared.opts.font or \"javascript/notosans-nerdfont-regular.ttf\"\n        font = ImageFont.truetype(font_path, size=font_size)\n    except Exception:\n        font = ImageFont.load_default()\n\n    # Draw bounding boxes\n    if detections:\n        colors = ['#FF0000', '#00FF00', '#0000FF', '#FFFF00', '#FF00FF', '#00FFFF', '#FFA500', '#800080']\n        for idx, det in enumerate(detections):\n            bbox = det['bbox']\n            label = det.get('label', 'object')\n            confidence = det.get('confidence', 1.0)\n\n            # Convert normalized coordinates to pixel coordinates\n            x1 = int(bbox[0] * width)\n            y1 = int(bbox[1] * height)\n            x2 = int(bbox[2] * width)\n            y2 = int(bbox[3] * height)\n\n            # Choose color\n            color = colors[idx % len(colors)]\n\n            # Draw box\n            draw.rectangle([x1, y1, x2, y2], outline=color, width=max(2, int(min(width, height) * 0.003)))\n\n            # Draw label with background\n            label_text = f\"{label} {confidence:.2f}\" if confidence < 1.0 else label\n            bbox_font = draw.textbbox((x1, y1), label_text, font=font)\n            text_width = bbox_font[2] - bbox_font[0]\n            text_height = bbox_font[3] - bbox_font[1]\n            draw.rectangle([x1, y1 - text_height - 4, x1 + text_width + 4, y1], fill=color)\n            draw.text((x1 + 2, y1 - text_height - 2), label_text, fill='white', font=font)\n\n    # Draw points\n    if points:\n        point_radius = max(3, int(min(width, height) * 0.01))\n        for px, py in points:\n            x = int(px * width)\n            y = int(py * height)\n            # Draw point as a circle\n            draw.ellipse([x - point_radius, y - point_radius, x + point_radius, y + point_radius],\n                        fill='#FF0000', outline='#FFFFFF', width=2)\n\n    return annotated\n"
  },
  {
    "path": "modules/interrogate/waifudiffusion.py",
    "content": "# WaifuDiffusion Tagger - ONNX-based anime/illustration tagging\n# Based on SmilingWolf's tagger models: https://huggingface.co/SmilingWolf\n\nimport os\nimport re\nimport time\nimport threading\nimport numpy as np\nfrom PIL import Image\nfrom modules import shared, devices, errors\n\n\n# Debug logging - enable with SD_INTERROGATE_DEBUG environment variable\ndebug_enabled = os.environ.get('SD_INTERROGATE_DEBUG', None) is not None\ndebug_log = shared.log.trace if debug_enabled else lambda *args, **kwargs: None\n\nre_special = re.compile(r'([\\\\()])')\nload_lock = threading.Lock()\n\n# WaifuDiffusion model repository mappings\nWAIFUDIFFUSION_MODELS = {\n    # v3 models (latest, recommended)\n    \"wd-eva02-large-tagger-v3\": \"SmilingWolf/wd-eva02-large-tagger-v3\",\n    \"wd-vit-tagger-v3\": \"SmilingWolf/wd-vit-tagger-v3\",\n    \"wd-convnext-tagger-v3\": \"SmilingWolf/wd-convnext-tagger-v3\",\n    \"wd-swinv2-tagger-v3\": \"SmilingWolf/wd-swinv2-tagger-v3\",\n    # v2 models\n    \"wd-v1-4-moat-tagger-v2\": \"SmilingWolf/wd-v1-4-moat-tagger-v2\",\n    \"wd-v1-4-swinv2-tagger-v2\": \"SmilingWolf/wd-v1-4-swinv2-tagger-v2\",\n    \"wd-v1-4-convnext-tagger-v2\": \"SmilingWolf/wd-v1-4-convnext-tagger-v2\",\n    \"wd-v1-4-convnextv2-tagger-v2\": \"SmilingWolf/wd-v1-4-convnextv2-tagger-v2\",\n    \"wd-v1-4-vit-tagger-v2\": \"SmilingWolf/wd-v1-4-vit-tagger-v2\",\n}\n\n# Tag categories from selected_tags.csv\nCATEGORY_GENERAL = 0\nCATEGORY_CHARACTER = 4\nCATEGORY_RATING = 9\n\n\nclass WaifuDiffusionTagger:\n    \"\"\"WaifuDiffusion Tagger using ONNX inference.\"\"\"\n\n    def __init__(self):\n        self.session = None\n        self.tags = None\n        self.tag_categories = None\n        self.model_name = None\n        self.model_path = None\n        self.image_size = 448  # Standard for WD models\n\n    def load(self, model_name: str = None):\n        \"\"\"Load the ONNX model and tags from HuggingFace.\"\"\"\n        import huggingface_hub\n\n        if model_name is None:\n            model_name = shared.opts.waifudiffusion_model\n        if model_name not in WAIFUDIFFUSION_MODELS:\n            shared.log.error(f'WaifuDiffusion: unknown model \"{model_name}\"')\n            return False\n\n        with load_lock:\n            if self.session is not None and self.model_name == model_name:\n                debug_log(f'WaifuDiffusion: model already loaded model=\"{model_name}\"')\n                return True  # Already loaded\n\n            # Unload previous model if different\n            if self.model_name != model_name and self.session is not None:\n                debug_log(f'WaifuDiffusion: switching model from \"{self.model_name}\" to \"{model_name}\"')\n                self.unload()\n\n            repo_id = WAIFUDIFFUSION_MODELS[model_name]\n            t0 = time.time()\n            shared.log.info(f'WaifuDiffusion load: model=\"{model_name}\" repo=\"{repo_id}\"')\n\n            try:\n                # Download only ONNX model and tags CSV (skip safetensors/msgpack variants)\n                debug_log(f'WaifuDiffusion load: downloading from HuggingFace cache_dir=\"{shared.opts.hfcache_dir}\"')\n                self.model_path = huggingface_hub.snapshot_download(\n                    repo_id,\n                    cache_dir=shared.opts.hfcache_dir,\n                    allow_patterns=[\"model.onnx\", \"selected_tags.csv\"],\n                )\n                debug_log(f'WaifuDiffusion load: model_path=\"{self.model_path}\"')\n\n                # Load ONNX model\n                model_file = os.path.join(self.model_path, \"model.onnx\")\n                if not os.path.exists(model_file):\n                    shared.log.error(f'WaifuDiffusion load: model file not found: {model_file}')\n                    return False\n\n                import onnxruntime as ort\n\n                debug_log(f'WaifuDiffusion load: onnxruntime version={ort.__version__}')\n\n                self.session = ort.InferenceSession(model_file, providers=devices.onnx)\n                self.model_name = model_name\n\n                # Get actual providers used\n                actual_providers = self.session.get_providers()\n                debug_log(f'WaifuDiffusion load: active providers={actual_providers}')\n\n                # Load tags from CSV\n                self._load_tags()\n\n                load_time = time.time() - t0\n                shared.log.debug(f'WaifuDiffusion load: time={load_time:.2f} tags={len(self.tags)}')\n                debug_log(f'WaifuDiffusion load: input_name={self.session.get_inputs()[0].name} output_name={self.session.get_outputs()[0].name}')\n                return True\n\n            except Exception as e:\n                shared.log.error(f'WaifuDiffusion load: failed error={e}')\n                errors.display(e, 'WaifuDiffusion load')\n                self.unload()\n                return False\n\n    def _load_tags(self):\n        \"\"\"Load tags and categories from selected_tags.csv.\"\"\"\n        import csv\n\n        csv_path = os.path.join(self.model_path, \"selected_tags.csv\")\n        if not os.path.exists(csv_path):\n            shared.log.error(f'WaifuDiffusion load: tags file not found: {csv_path}')\n            return\n\n        self.tags = []\n        self.tag_categories = []\n\n        with open(csv_path, 'r', encoding='utf-8') as f:\n            reader = csv.DictReader(f)\n            for row in reader:\n                self.tags.append(row['name'])\n                self.tag_categories.append(int(row['category']))\n\n        # Count tags by category\n        category_counts = {}\n        for cat in self.tag_categories:\n            category_counts[cat] = category_counts.get(cat, 0) + 1\n        debug_log(f'WaifuDiffusion load: tag categories={category_counts}')\n\n    def unload(self):\n        \"\"\"Unload the model and free resources.\"\"\"\n        if self.session is not None:\n            shared.log.debug(f'WaifuDiffusion unload: model=\"{self.model_name}\"')\n            self.session = None\n            self.tags = None\n            self.tag_categories = None\n            self.model_name = None\n            self.model_path = None\n            devices.torch_gc(force=True)\n            debug_log('WaifuDiffusion unload: complete')\n        else:\n            debug_log('WaifuDiffusion unload: no model loaded')\n\n    def preprocess_image(self, image: Image.Image) -> np.ndarray:\n        \"\"\"Preprocess image for WaifuDiffusion model input.\n\n        - Resize to 448x448 (standard for WD models)\n        - Pad to square with white background\n        - Normalize to [0, 1] range\n        - BGR channel order (as used by these models)\n        \"\"\"\n        original_size = image.size\n        original_mode = image.mode\n\n        # Convert to RGB if needed\n        if image.mode != 'RGB':\n            image = image.convert('RGB')\n\n        # Pad to square with white background\n        w, h = image.size\n        max_dim = max(w, h)\n        pad_left = (max_dim - w) // 2\n        pad_top = (max_dim - h) // 2\n\n        padded = Image.new('RGB', (max_dim, max_dim), (255, 255, 255))\n        padded.paste(image, (pad_left, pad_top))\n\n        # Resize to model input size\n        if max_dim != self.image_size:\n            padded = padded.resize((self.image_size, self.image_size), Image.Resampling.LANCZOS)\n\n        # Convert to numpy array and normalize\n        img_array = np.array(padded, dtype=np.float32)\n\n        # Convert RGB to BGR (model expects BGR)\n        img_array = img_array[:, :, ::-1]\n\n        # Add batch dimension\n        img_array = np.expand_dims(img_array, axis=0)\n\n        debug_log(f'WaifuDiffusion preprocess: original_size={original_size} mode={original_mode} padded_size={max_dim} output_shape={img_array.shape}')\n        return img_array\n\n    def predict(\n        self,\n        image: Image.Image,\n        general_threshold: float = None,\n        character_threshold: float = None,\n        include_rating: bool = None,\n        exclude_tags: str = None,\n        max_tags: int = None,\n        sort_alpha: bool = None,\n        use_spaces: bool = None,\n        escape_brackets: bool = None,\n    ) -> str:\n        \"\"\"Run inference and return formatted tag string.\n\n        Args:\n            image: PIL Image to tag\n            general_threshold: Threshold for general tags (0-1)\n            character_threshold: Threshold for character tags (0-1)\n            include_rating: Whether to include rating tags\n            exclude_tags: Comma-separated tags to exclude\n            max_tags: Maximum number of tags to return\n            sort_alpha: Sort tags alphabetically vs by confidence\n            use_spaces: Use spaces instead of underscores\n            escape_brackets: Escape parentheses/brackets in tags\n\n        Returns:\n            Formatted tag string\n        \"\"\"\n        t0 = time.time()\n\n        # Use settings defaults if not specified\n        general_threshold = general_threshold or shared.opts.tagger_threshold\n        character_threshold = character_threshold or shared.opts.waifudiffusion_character_threshold\n        include_rating = include_rating if include_rating is not None else shared.opts.tagger_include_rating\n        exclude_tags = exclude_tags or shared.opts.tagger_exclude_tags\n        max_tags = max_tags or shared.opts.tagger_max_tags\n        sort_alpha = sort_alpha if sort_alpha is not None else shared.opts.tagger_sort_alpha\n        use_spaces = use_spaces if use_spaces is not None else shared.opts.tagger_use_spaces\n        escape_brackets = escape_brackets if escape_brackets is not None else shared.opts.tagger_escape_brackets\n\n        debug_log(f'WaifuDiffusion predict: general_threshold={general_threshold} character_threshold={character_threshold} max_tags={max_tags} include_rating={include_rating} sort_alpha={sort_alpha}')\n\n        # Handle input variations\n        if isinstance(image, list):\n            image = image[0] if len(image) > 0 else None\n        if isinstance(image, dict) and 'name' in image:\n            image = Image.open(image['name'])\n        if image is None:\n            shared.log.error('WaifuDiffusion predict: no image provided')\n            return ''\n\n        # Load model if needed\n        if self.session is None:\n            if not self.load():\n                return ''\n\n        # Preprocess image\n        img_input = self.preprocess_image(image)\n\n        # Run inference\n        t_infer = time.time()\n        input_name = self.session.get_inputs()[0].name\n        output_name = self.session.get_outputs()[0].name\n        probs = self.session.run([output_name], {input_name: img_input})[0][0]\n        infer_time = time.time() - t_infer\n        debug_log(f'WaifuDiffusion predict: inference time={infer_time:.3f}s output_shape={probs.shape}')\n\n        # Build tag list with probabilities\n        tag_probs = {}\n        exclude_set = {x.strip().replace(' ', '_').lower() for x in exclude_tags.split(',') if x.strip()}\n        if exclude_set:\n            debug_log(f'WaifuDiffusion predict: exclude_tags={exclude_set}')\n\n        general_count = 0\n        character_count = 0\n        rating_count = 0\n\n        for i, (tag_name, prob) in enumerate(zip(self.tags, probs)):\n            category = self.tag_categories[i]\n            tag_lower = tag_name.lower()\n\n            # Skip excluded tags\n            if tag_lower in exclude_set:\n                continue\n\n            # Apply category-specific thresholds\n            if category == CATEGORY_RATING:\n                if not include_rating:\n                    continue\n                # Always include rating if enabled\n                tag_probs[tag_name] = float(prob)\n                rating_count += 1\n            elif category == CATEGORY_CHARACTER:\n                if prob >= character_threshold:\n                    tag_probs[tag_name] = float(prob)\n                    character_count += 1\n            elif category == CATEGORY_GENERAL:\n                if prob >= general_threshold:\n                    tag_probs[tag_name] = float(prob)\n                    general_count += 1\n            else:\n                # Other categories use general threshold\n                if prob >= general_threshold:\n                    tag_probs[tag_name] = float(prob)\n\n        debug_log(f'WaifuDiffusion predict: matched tags general={general_count} character={character_count} rating={rating_count} total={len(tag_probs)}')\n\n        # Sort tags\n        if sort_alpha:\n            sorted_tags = sorted(tag_probs.keys())\n        else:\n            sorted_tags = [t for t, _ in sorted(tag_probs.items(), key=lambda x: -x[1])]\n\n        # Limit number of tags\n        if max_tags > 0 and len(sorted_tags) > max_tags:\n            sorted_tags = sorted_tags[:max_tags]\n            debug_log(f'WaifuDiffusion predict: limited to max_tags={max_tags}')\n\n        # Format output\n        result = []\n        for tag_name in sorted_tags:\n            formatted_tag = tag_name\n            if use_spaces:\n                formatted_tag = formatted_tag.replace('_', ' ')\n            if escape_brackets:\n                formatted_tag = re.sub(re_special, r'\\\\\\1', formatted_tag)\n            if shared.opts.tagger_show_scores:\n                formatted_tag = f\"({formatted_tag}:{tag_probs[tag_name]:.2f})\"\n            result.append(formatted_tag)\n\n        output = \", \".join(result)\n        total_time = time.time() - t0\n        debug_log(f'WaifuDiffusion predict: complete tags={len(result)} time={total_time:.2f} result=\"{output[:100]}...\"' if len(output) > 100 else f'WaifuDiffusion predict: complete tags={len(result)} time={total_time:.2f} result=\"{output}\"')\n\n        return output\n\n    def tag(self, image: Image.Image, **kwargs) -> str:\n        \"\"\"Alias for predict() to match deepbooru interface.\"\"\"\n        return self.predict(image, **kwargs)\n\n\n# Global tagger instance\ntagger = WaifuDiffusionTagger()\n\n\ndef _save_tags_to_file(img_path, tags_str: str, save_append: bool) -> bool:\n    \"\"\"Save tags to a text file with error handling.\n\n    Args:\n        img_path: Path to the image file\n        tags_str: Tags string to save\n        save_append: If True, append to existing file; otherwise overwrite\n\n    Returns:\n        True if save succeeded, False otherwise\n    \"\"\"\n    try:\n        txt_path = img_path.with_suffix('.txt')\n        if save_append and txt_path.exists():\n            with open(txt_path, 'a', encoding='utf-8') as f:\n                f.write(f', {tags_str}')\n        else:\n            with open(txt_path, 'w', encoding='utf-8') as f:\n                f.write(tags_str)\n        return True\n    except Exception as e:\n        shared.log.error(f'WaifuDiffusion batch: failed to save file=\"{img_path}\" error={e}')\n        return False\n\n\ndef get_models() -> list:\n    \"\"\"Return list of available WaifuDiffusion model names.\"\"\"\n    return list(WAIFUDIFFUSION_MODELS.keys())\n\n\ndef refresh_models() -> list:\n    \"\"\"Refresh and return list of available models.\"\"\"\n    # For now, just return the static list\n    # Could be extended to check for locally cached models\n    return get_models()\n\n\ndef load_model(model_name: str = None) -> bool:\n    \"\"\"Load the specified WaifuDiffusion model.\"\"\"\n    return tagger.load(model_name)\n\n\ndef unload_model():\n    \"\"\"Unload the current WaifuDiffusion model.\"\"\"\n    tagger.unload()\n\n\ndef tag(image: Image.Image, model_name: str = None, **kwargs) -> str:\n    \"\"\"Tag an image using WaifuDiffusion tagger.\n\n    Args:\n        image: PIL Image to tag\n        model_name: Model to use (loads if needed)\n        **kwargs: Additional arguments passed to predict()\n\n    Returns:\n        Formatted tag string\n    \"\"\"\n    t0 = time.time()\n    jobid = shared.state.begin('WaifuDiffusion Tag')\n    shared.log.info(f'WaifuDiffusion: model=\"{model_name or tagger.model_name or shared.opts.waifudiffusion_model}\" image_size={image.size if image else None}')\n\n    try:\n        if model_name and model_name != tagger.model_name:\n            tagger.load(model_name)\n        result = tagger.predict(image, **kwargs)\n        shared.log.debug(f'WaifuDiffusion: complete time={time.time()-t0:.2f} tags={len(result.split(\", \")) if result else 0}')\n        # Offload model if setting enabled\n        if shared.opts.interrogate_offload:\n            tagger.unload()\n    except Exception as e:\n        result = f\"Exception {type(e)}\"\n        shared.log.error(f'WaifuDiffusion: {e}')\n        errors.display(e, 'WaifuDiffusion Tag')\n\n    shared.state.end(jobid)\n    return result\n\n\ndef batch(\n    model_name: str,\n    batch_files: list,\n    batch_folder: str,\n    batch_str: str,\n    save_output: bool = True,\n    save_append: bool = False,\n    recursive: bool = False,\n    **kwargs\n) -> str:\n    \"\"\"Process multiple images in batch mode.\n\n    Args:\n        model_name: Model to use\n        batch_files: List of file paths\n        batch_folder: Folder path from file picker\n        batch_str: Folder path as string\n        save_output: Save caption to .txt files\n        save_append: Append to existing caption files\n        recursive: Recursively process subfolders\n        **kwargs: Additional arguments passed to predict()\n\n    Returns:\n        Combined tag results\n    \"\"\"\n    from pathlib import Path\n\n    # Load model\n    if model_name:\n        tagger.load(model_name)\n    elif tagger.session is None:\n        tagger.load()\n\n    # Collect image files\n    image_files = []\n    image_extensions = {'.jpg', '.jpeg', '.png', '.webp', '.bmp', '.gif'}\n\n    # From file picker\n    if batch_files:\n        for f in batch_files:\n            if isinstance(f, dict):\n                image_files.append(Path(f['name']))\n            elif hasattr(f, 'name'):\n                image_files.append(Path(f.name))\n            else:\n                image_files.append(Path(f))\n\n    # From folder picker\n    if batch_folder:\n        folder_path = None\n        if isinstance(batch_folder, list) and len(batch_folder) > 0:\n            f = batch_folder[0]\n            if isinstance(f, dict):\n                folder_path = Path(f['name']).parent\n            elif hasattr(f, 'name'):\n                folder_path = Path(f.name).parent\n        if folder_path and folder_path.is_dir():\n            if recursive:\n                for ext in image_extensions:\n                    image_files.extend(folder_path.rglob(f'*{ext}'))\n            else:\n                for ext in image_extensions:\n                    image_files.extend(folder_path.glob(f'*{ext}'))\n\n    # From string path\n    if batch_str and batch_str.strip():\n        folder_path = Path(batch_str.strip())\n        if folder_path.is_dir():\n            if recursive:\n                for ext in image_extensions:\n                    image_files.extend(folder_path.rglob(f'*{ext}'))\n            else:\n                for ext in image_extensions:\n                    image_files.extend(folder_path.glob(f'*{ext}'))\n\n    # Remove duplicates while preserving order\n    seen = set()\n    unique_files = []\n    for f in image_files:\n        f_resolved = f.resolve()\n        if f_resolved not in seen:\n            seen.add(f_resolved)\n            unique_files.append(f)\n    image_files = unique_files\n\n    if not image_files:\n        shared.log.warning('WaifuDiffusion batch: no images found')\n        return ''\n\n    t0 = time.time()\n    jobid = shared.state.begin('WaifuDiffusion Batch')\n    shared.log.info(f'WaifuDiffusion batch: model=\"{tagger.model_name}\" images={len(image_files)} write={save_output} append={save_append} recursive={recursive}')\n    debug_log(f'WaifuDiffusion batch: files={[str(f) for f in image_files[:5]]}{\"...\" if len(image_files) > 5 else \"\"}')\n\n    results = []\n\n    # Progress bar\n    import rich.progress as rp\n    pbar = rp.Progress(rp.TextColumn('[cyan]WaifuDiffusion:'), rp.BarColumn(), rp.MofNCompleteColumn(), rp.TaskProgressColumn(), rp.TimeRemainingColumn(), rp.TimeElapsedColumn(), rp.TextColumn('[cyan]{task.description}'), console=shared.console)\n\n    with pbar:\n        task = pbar.add_task(total=len(image_files), description='starting...')\n        for img_path in image_files:\n            pbar.update(task, advance=1, description=str(img_path.name))\n            try:\n                if shared.state.interrupted:\n                    shared.log.info('WaifuDiffusion batch: interrupted')\n                    break\n\n                image = Image.open(img_path)\n                tags_str = tagger.predict(image, **kwargs)\n\n                if save_output:\n                    _save_tags_to_file(img_path, tags_str, save_append)\n\n                results.append(f'{img_path.name}: {tags_str[:100]}...' if len(tags_str) > 100 else f'{img_path.name}: {tags_str}')\n\n            except Exception as e:\n                shared.log.error(f'WaifuDiffusion batch: file=\"{img_path}\" error={e}')\n                results.append(f'{img_path.name}: ERROR - {e}')\n\n    elapsed = time.time() - t0\n    shared.log.info(f'WaifuDiffusion batch: complete images={len(results)} time={elapsed:.1f}s')\n    shared.state.end(jobid)\n\n    return '\\n'.join(results)\n"
  },
  {
    "path": "modules/ipadapter.py",
    "content": "\"\"\"\nLightweight IP-Adapter applied to existing pipeline in Diffusers\n- Downloads image_encoder or first usage (2.5GB)\n- Introduced via: https://github.com/huggingface/diffusers/pull/5713\n- IP adapters: https://huggingface.co/h94/IP-Adapter\n\"\"\"\n\nfrom __future__ import annotations\nimport os\nimport time\nimport json\nfrom typing import TYPE_CHECKING\nfrom PIL import Image\nimport transformers\nfrom modules import processing, shared, devices, sd_models, errors, model_quant\n\nif TYPE_CHECKING:\n    from diffusers import DiffusionPipeline\n\n\nclip_loaded = None\nadapters_loaded = []\nCLIP_ID = \"h94/IP-Adapter\"\nOPEN_ID = \"openai/clip-vit-large-patch14\"\nSIGLIP_ID = 'google/siglip-so400m-patch14-384'\nADAPTERS_NONE = {\n    'None': { 'name': 'none', 'repo': 'none', 'subfolder': 'none' },\n}\nADAPTERS_SD15 = {\n    'None': { 'name': 'none', 'repo': 'none', 'subfolder': 'none' },\n    'Base': { 'name': 'ip-adapter_sd15.safetensors', 'repo': 'h94/IP-Adapter', 'subfolder': 'models' },\n    'Base ViT-G': { 'name': 'ip-adapter_sd15_vit-G.safetensors', 'repo': 'h94/IP-Adapter', 'subfolder': 'models' },\n    'Light': { 'name': 'ip-adapter_sd15_light.safetensors', 'repo': 'h94/IP-Adapter', 'subfolder': 'models' },\n    'Plus': { 'name': 'ip-adapter-plus_sd15.safetensors', 'repo': 'h94/IP-Adapter', 'subfolder': 'models' },\n    'Plus Face': { 'name': 'ip-adapter-plus-face_sd15.safetensors', 'repo': 'h94/IP-Adapter', 'subfolder': 'models' },\n    'Full Face': { 'name': 'ip-adapter-full-face_sd15.safetensors', 'repo': 'h94/IP-Adapter', 'subfolder': 'models' },\n    'Ostris Composition ViT-H': { 'name': 'ip_plus_composition_sd15.safetensors', 'repo': 'ostris/ip-composition-adapter', 'subfolder': '' },\n}\nADAPTERS_SDXL = {\n    'None': { 'name': 'none', 'repo': 'none', 'subfolder': 'none' },\n    'Base SDXL': { 'name': 'ip-adapter_sdxl.safetensors', 'repo': 'h94/IP-Adapter', 'subfolder': 'sdxl_models' },\n    'Base ViT-H SDXL': { 'name': 'ip-adapter_sdxl_vit-h.safetensors', 'repo': 'h94/IP-Adapter', 'subfolder': 'sdxl_models' },\n    'Plus ViT-H SDXL': { 'name': 'ip-adapter-plus_sdxl_vit-h.safetensors', 'repo': 'h94/IP-Adapter', 'subfolder': 'sdxl_models' },\n    'Plus Face ViT-H SDXL': { 'name': 'ip-adapter-plus-face_sdxl_vit-h.safetensors', 'repo': 'h94/IP-Adapter', 'subfolder': 'sdxl_models' },\n    'Ostris Composition ViT-H SDXL': { 'name': 'ip_plus_composition_sdxl.safetensors', 'repo': 'ostris/ip-composition-adapter', 'subfolder': '' },\n}\nADAPTERS_SD3 = {\n    'None': { 'name': 'none', 'repo': 'none', 'subfolder': 'none' },\n    'InstantX Large': { 'name': 'ip-adapter_diffusers.safetensors', 'repo': 'InstantX/SD3.5-Large-IP-Adapter', 'subfolder': 'none', 'revision': 'refs/pr/10' },\n}\nADAPTERS_F1 = {\n    'None': { 'name': 'none', 'repo': 'none', 'subfolder': 'none' },\n    'XLabs AI v1': { 'name': 'ip_adapter.safetensors', 'repo': 'XLabs-AI/flux-ip-adapter', 'subfolder': 'none' },\n    'XLabs AI v2': { 'name': 'ip_adapter.safetensors', 'repo': 'XLabs-AI/flux-ip-adapter-v2', 'subfolder': 'none' },\n}\nADAPTERS = { **ADAPTERS_SD15, **ADAPTERS_SDXL, **ADAPTERS_SD3, **ADAPTERS_F1 }\nADAPTERS_ALL = { **ADAPTERS_SD15, **ADAPTERS_SDXL, **ADAPTERS_SD3, **ADAPTERS_F1 }\n\n\ndef get_adapters():\n    global ADAPTERS # pylint: disable=global-statement\n    if shared.sd_model_type == 'sd':\n        ADAPTERS = ADAPTERS_SD15\n    elif shared.sd_model_type == 'sdxl':\n        ADAPTERS = ADAPTERS_SDXL\n    elif shared.sd_model_type == 'sd3':\n        ADAPTERS = ADAPTERS_SD3\n    elif shared.sd_model_type == 'f1':\n        ADAPTERS = ADAPTERS_F1\n    else:\n        ADAPTERS = ADAPTERS_NONE\n    return list(ADAPTERS)\n\n\ndef get_images(input_images):\n    output_images = []\n    if input_images is None or len(input_images) == 0:\n        shared.log.error('IP adapter: no init images')\n        return None\n    if shared.sd_model_type not in ['sd', 'sdxl', 'sd3', 'f1']:\n        shared.log.error('IP adapter: base model not supported')\n        return None\n    if isinstance(input_images, str):\n        from modules.api.api import decode_base64_to_image\n        input_images = decode_base64_to_image(input_images).convert(\"RGB\")\n    input_images = input_images.copy()\n    if not isinstance(input_images, list):\n        input_images = [input_images]\n    for image in input_images:\n        if image is None:\n            continue\n        if isinstance(image, list):\n            output_images.append(get_images(image)) # recursive\n        elif isinstance(image, Image.Image):\n            output_images.append(image)\n        elif isinstance(image, str):\n            from modules.api.api import decode_base64_to_image\n            decoded_image = decode_base64_to_image(image).convert(\"RGB\")\n            output_images.append(decoded_image)\n        elif hasattr(image, 'name'): # gradio gallery entry\n            pil_image = Image.open(image.name)\n            pil_image.load()\n            output_images.append(pil_image)\n        else:\n            shared.log.error(f'IP adapter: unknown input: {image}')\n    return output_images\n\n\ndef get_scales(adapter_scales, adapter_images):\n    output_scales = [adapter_scales] if not isinstance(adapter_scales, list) else adapter_scales\n    while len(output_scales) < len(adapter_images):\n        output_scales.append(output_scales[-1])\n    return output_scales\n\n\ndef get_crops(adapter_crops, adapter_images):\n    output_crops = [adapter_crops] if not isinstance(adapter_crops, list) else adapter_crops\n    while len(output_crops) < len(adapter_images):\n        output_crops.append(output_crops[-1])\n    return output_crops\n\n\ndef crop_images(images, crops):\n    try:\n        for i in range(len(images)):\n            if crops[i]:\n                from modules.shared import yolo # pylint: disable=no-name-in-module\n                cropped = []\n                for image in images[i]:\n                    faces = yolo.predict('face-yolo8n', image)\n                    if len(faces) > 0:\n                        cropped.append(faces[0].item)\n                if len(cropped) == len(images[i]):\n                    images[i] = cropped\n                else:\n                    shared.log.error(f'IP adapter: failed to crop image: source={len(images[i])} faces={len(cropped)}')\n    except Exception as e:\n        shared.log.error(f'IP adapter: failed to crop image: {e}')\n    if shared.sd_model_type == 'sd3' and len(images) == 1:\n        return images[0]\n    return images\n\n\ndef unapply(pipe, unload: bool = False): # pylint: disable=arguments-differ\n    if len(adapters_loaded) == 0:\n        return\n    try:\n        if hasattr(pipe, 'set_ip_adapter_scale'):\n            pipe.set_ip_adapter_scale(0)\n            if unload:\n                shared.log.debug('IP adapter unload')\n                pipe.unload_ip_adapter()\n        if hasattr(pipe, 'unet') and pipe.unet is not None:\n            module = pipe.unet\n        elif hasattr(pipe, 'transformer'):\n            module = pipe.transformer\n        else:\n            module = None\n        if module is not None and hasattr(module, 'config') and module.config.encoder_hid_dim_type == 'ip_image_proj':\n            pipe.unet.encoder_hid_proj = None\n            pipe.config.encoder_hid_dim_type = None\n            pipe.unet.set_default_attn_processor()\n    except Exception:\n        pass\n\n\ndef load_image_encoder(pipe: DiffusionPipeline, adapter_names: list[str]):\n    global clip_loaded # pylint: disable=global-statement\n    for adapter_name in adapter_names:\n        # which clip to use\n        clip_repo = CLIP_ID\n        if 'ViT' not in adapter_name: # defaults per model\n            clip_subfolder = 'models/image_encoder' if shared.sd_model_type == 'sd' else 'sdxl_models/image_encoder'\n        if 'ViT-H' in adapter_name:\n            clip_subfolder = 'models/image_encoder' # this is vit-h\n        elif 'ViT-G' in adapter_name:\n            clip_subfolder = 'sdxl_models/image_encoder' # this is vit-g\n        else:\n            if shared.sd_model_type == 'sd':\n                clip_subfolder = 'models/image_encoder'\n            elif shared.sd_model_type == 'sdxl':\n                clip_subfolder = 'sdxl_models/image_encoder'\n            elif shared.sd_model_type == 'sd3':\n                clip_repo = SIGLIP_ID\n                clip_subfolder = None\n            elif shared.sd_model_type == 'f1':\n                clip_repo = OPEN_ID\n                clip_subfolder = None\n            else:\n                shared.log.error(f'IP adapter: unknown model type: {adapter_name}')\n                return False\n\n    # load image encoder used by ip adapter\n    if pipe.image_encoder is None or clip_loaded != f'{clip_repo}/{clip_subfolder}':\n        jobid = shared.state.begin('Load encoder')\n        try:\n            offline_config = { 'local_files_only': True } if shared.opts.offline_mode else {}\n            if shared.sd_model_type == 'sd3':\n                image_encoder = transformers.SiglipVisionModel.from_pretrained(clip_repo, torch_dtype=devices.dtype, cache_dir=shared.opts.hfcache_dir, **offline_config)\n            else:\n                if clip_subfolder is None:\n                    image_encoder = transformers.CLIPVisionModelWithProjection.from_pretrained(clip_repo, torch_dtype=devices.dtype, cache_dir=shared.opts.hfcache_dir, use_safetensors=True, **offline_config)\n                    shared.log.debug(f'IP adapter load: encoder=\"{clip_repo}\" cls={pipe.image_encoder.__class__.__name__}')\n                else:\n                    image_encoder = transformers.CLIPVisionModelWithProjection.from_pretrained(clip_repo, subfolder=clip_subfolder, torch_dtype=devices.dtype, cache_dir=shared.opts.hfcache_dir, use_safetensors=True, **offline_config)\n                    shared.log.debug(f'IP adapter load: encoder=\"{clip_repo}/{clip_subfolder}\" cls={pipe.image_encoder.__class__.__name__}')\n            sd_models.clear_caches()\n            image_encoder = model_quant.do_post_load_quant(image_encoder, allow=True)\n            if hasattr(pipe, 'register_modules'):\n                pipe.register_modules(image_encoder=image_encoder)\n            else:\n                pipe.image_encoder = image_encoder\n            clip_loaded = f'{clip_repo}/{clip_subfolder}'\n        except Exception as e:\n            shared.log.error(f'IP adapter load: encoder=\"{clip_repo}/{clip_subfolder}\" {e}')\n            errors.display(e, 'IP adapter: type=encoder')\n            return False\n        shared.state.end(jobid)\n    sd_models.move_model(pipe.image_encoder, devices.device)\n    return True\n\n\ndef load_feature_extractor(pipe):\n    # load feature extractor used by ip adapter\n    if pipe.feature_extractor is None:\n        try:\n            jobid = shared.state.begin('Load extractor')\n            offline_config = { 'local_files_only': True } if shared.opts.offline_mode else {}\n            if shared.sd_model_type == 'sd3':\n                feature_extractor = transformers.SiglipImageProcessor.from_pretrained(SIGLIP_ID, torch_dtype=devices.dtype, cache_dir=shared.opts.hfcache_dir, **offline_config)\n            else:\n                feature_extractor = transformers.CLIPImageProcessor()\n            if hasattr(pipe, 'register_modules'):\n                pipe.register_modules(feature_extractor=feature_extractor)\n            else:\n                pipe.feature_extractor = feature_extractor\n                sd_models.apply_balanced_offload(pipe.feature_extractor)\n            shared.log.debug(f'IP adapter load: extractor={pipe.feature_extractor.__class__.__name__}')\n        except Exception as e:\n            shared.log.error(f'IP adapter load: extractor {e}')\n            errors.display(e, 'IP adapter: type=extractor')\n            return False\n        shared.state.end(jobid)\n    return True\n\n\ndef parse_params(p: processing.StableDiffusionProcessing, adapters: list, adapter_scales: list[float], adapter_crops: list[bool], adapter_starts: list[float], adapter_ends: list[float], adapter_images: list):\n    if hasattr(p, 'ip_adapter_scales'):\n        adapter_scales = p.ip_adapter_scales\n    if hasattr(p, 'ip_adapter_crops'):\n        adapter_crops = p.ip_adapter_crops\n    if hasattr(p, 'ip_adapter_starts'):\n        adapter_starts = p.ip_adapter_starts\n    if hasattr(p, 'ip_adapter_ends'):\n        adapter_ends = p.ip_adapter_ends\n    if hasattr(p, 'ip_adapter_images'):\n        adapter_images = p.ip_adapter_images\n    adapter_images = get_images(adapter_images)\n    if hasattr(p, 'ip_adapter_masks') and len(p.ip_adapter_masks) > 0:\n        adapter_masks = p.ip_adapter_masks\n        adapter_masks = get_images(adapter_masks)\n    else:\n        adapter_masks = []\n    if len(adapter_masks) > 0:\n        from diffusers.image_processor import IPAdapterMaskProcessor\n        mask_processor = IPAdapterMaskProcessor()\n        for i in range(len(adapter_masks)):\n            adapter_masks[i] = mask_processor.preprocess(adapter_masks[i], height=p.height, width=p.width)\n        adapter_masks = mask_processor.preprocess(adapter_masks, height=p.height, width=p.width)\n    if adapter_images is None:\n        shared.log.error('IP adapter: no image provided')\n        return [], [], [], [], [], []\n    if len(adapters) < len(adapter_images):\n        adapter_images = adapter_images[:len(adapters)]\n    if len(adapters) < len(adapter_masks):\n        adapter_masks = adapter_masks[:len(adapters)]\n    if len(adapter_masks) > 0 and len(adapter_masks) != len(adapter_images):\n        shared.log.error('IP adapter: image and mask count mismatch')\n        return [], [], [], [], [], []\n    adapter_scales = get_scales(adapter_scales, adapter_images)\n    p.ip_adapter_scales = adapter_scales.copy()\n    adapter_crops = get_crops(adapter_crops, adapter_images)\n    p.ip_adapter_crops = adapter_crops.copy()\n    adapter_starts = get_scales(adapter_starts, adapter_images)\n    p.ip_adapter_starts = adapter_starts.copy()\n    adapter_ends = get_scales(adapter_ends, adapter_images)\n    p.ip_adapter_ends = adapter_ends.copy()\n    return adapter_images, adapter_masks, adapter_scales, adapter_crops, adapter_starts, adapter_ends\n\n\ndef apply(pipe, p: processing.StableDiffusionProcessing, adapter_names=[], adapter_scales=[1.0], adapter_crops=[False], adapter_starts=[0.0], adapter_ends=[1.0], adapter_images=[]):\n    global adapters_loaded # pylint: disable=global-statement\n    # overrides\n    if hasattr(p, 'ip_adapter_names'):\n        if isinstance(p.ip_adapter_names, str):\n            p.ip_adapter_names = [p.ip_adapter_names]\n        adapters = [ADAPTERS_ALL.get(adapter_name, None) for adapter_name in p.ip_adapter_names if adapter_name is not None and adapter_name.lower() != 'none']\n        adapter_names = p.ip_adapter_names\n    else:\n        if isinstance(adapter_names, str):\n            adapter_names = [adapter_names]\n        adapters = [ADAPTERS.get(adapter_name, None) for adapter_name in adapter_names if adapter_name.lower() != 'none']\n\n    if len(adapters) == 0:\n        unapply(pipe, getattr(p, 'ip_adapter_unload', False))\n        if hasattr(p, 'ip_adapter_images'):\n            del p.ip_adapter_images\n        return False\n    if shared.sd_model_type not in ['sd', 'sdxl', 'sd3', 'f1']:\n        shared.log.error(f'IP adapter: model={shared.sd_model_type} class={pipe.__class__.__name__} not supported')\n        return False\n\n    adapter_images, adapter_masks, adapter_scales, adapter_crops, adapter_starts, adapter_ends = parse_params(p, adapters, adapter_scales, adapter_crops, adapter_starts, adapter_ends, adapter_images)\n\n    # init code\n    if pipe is None:\n        return False\n    if len(adapter_images) == 0:\n        shared.log.error('IP adapter: no image provided')\n        adapters = [] # unload adapter if previously loaded as it will cause runtime errors\n    if len(adapters) == 0:\n        unapply(pipe, getattr(p, 'ip_adapter_unload', False))\n        if hasattr(p, 'ip_adapter_images'):\n            del p.ip_adapter_images\n        return False\n    if not hasattr(pipe, 'load_ip_adapter'):\n        shared.log.error(f'IP adapter: pipeline not supported: {pipe.__class__.__name__}')\n        return False\n\n    if not load_image_encoder(pipe, adapter_names):\n        return False\n\n    if not load_feature_extractor(pipe):\n        return False\n\n    # main code\n    try:\n        t0 = time.time()\n        repos = [adapter.get('repo', None) for adapter in adapters if adapter.get('repo', 'none') != 'none']\n        subfolders = [adapter.get('subfolder', None) for adapter in adapters if adapter.get('subfolder', 'none') != 'none']\n        names = [adapter.get('name', None) for adapter in adapters if adapter.get('name', 'none') != 'none']\n        revisions = [adapter.get('revision', None) for adapter in adapters if adapter.get('revision', 'none') != 'none']\n        kwargs = {}\n        if len(repos) == 1:\n            repos = repos[0]\n        if len(subfolders) > 0:\n            kwargs['subfolder'] = subfolders if len(subfolders) > 1 else subfolders[0]\n        if len(names) > 0:\n            kwargs['weight_name'] = names if len(names) > 1 else names[0]\n        if len(revisions) > 0:\n            kwargs['revision'] = revisions[0]\n        if shared.opts.offline_mode:\n            kwargs[\"local_files_only\"] = True\n        pipe.load_ip_adapter(repos, **kwargs)\n        adapters_loaded = names\n        if hasattr(p, 'ip_adapter_layers'):\n            pipe.set_ip_adapter_scale(p.ip_adapter_layers)\n            ip_str = ';'.join(adapter_names) + ':' + json.dumps(p.ip_adapter_layers)\n        else:\n            for i in range(len(adapter_scales)):\n                if adapter_starts[i] > 0:\n                    adapter_scales[i] = 0.00\n            pipe.set_ip_adapter_scale(adapter_scales if len(adapter_scales) > 1 else adapter_scales[0])\n            ip_str =  [f'{os.path.splitext(adapter)[0]}:{scale}:{start}:{end}:{crop}' for adapter, scale, start, end, crop in zip(adapter_names, adapter_scales, adapter_starts, adapter_ends, adapter_crops)]\n        if hasattr(pipe, 'transformer') and 'Nunchaku' in pipe.transformer.__class__.__name__:\n            if isinstance(repos, str):\n                sd_models.clear_caches(full=True)\n                import accelerate\n                accelerate.hooks.remove_hook_from_module(pipe.transformer, recurse=True)\n                pipe.transformer = pipe.transformer.to(devices.device)\n                from nunchaku.models.ip_adapter.diffusers_adapters import apply_IPA_on_pipe\n                apply_IPA_on_pipe(pipe, ip_adapter_scale=adapter_scales[0], repo_id=repos)\n                pipe = sd_models.apply_balanced_offload(pipe)\n                shared.log.debug(f'IP adapter load: engine=nunchaku scale={adapter_scales[0]} repo=\"{repos}\"')\n            else:\n                shared.log.error('IP adapter: Nunchaku only supports single adapter')\n        p.task_args['ip_adapter_image'] = crop_images(adapter_images, adapter_crops)\n        if len(adapter_masks) > 0:\n            p.cross_attention_kwargs = { 'ip_adapter_masks': adapter_masks }\n        p.extra_generation_params[\"IP Adapter\"] = ';'.join(ip_str)\n        t1 = time.time()\n        shared.log.info(f'IP adapter: {ip_str} image={adapter_images} mask={adapter_masks is not None} time={t1-t0:.2f}')\n    except Exception as e:\n        shared.log.error(f'IP adapter load: adapters={adapter_names} repo={repos} folders={subfolders} names={names} {e}')\n        errors.display(e, 'IP adapter: type=adapter')\n    return True\n"
  },
  {
    "path": "modules/json_helpers.py",
    "content": "import os\nimport sys\nimport time\nimport json\nfrom typing import overload, Literal\nimport fasteners\nimport orjson\nfrom installer import log\n\n\nlocking_available = True # used by file read/write locking\n\n\n@overload\ndef readfile(filename: str, silent: bool = False, lock: bool = False, *, as_type: Literal[\"dict\"]) -> dict: ...\n@overload\ndef readfile(filename: str, silent: bool = False, lock: bool = False, *, as_type: Literal[\"list\"]) -> list: ...\n@overload\ndef readfile(filename: str, silent: bool = False, lock: bool = False) -> dict | list: ...\ndef readfile(filename: str, silent: bool = False, lock: bool = False, *, as_type=\"\") -> dict | list:\n    global locking_available # pylint: disable=global-statement\n    data = {} if as_type == \"dict\" else []\n    lock_file = None\n    locked = False\n    if lock and locking_available:\n        try:\n            lock_file = fasteners.InterProcessReaderWriterLock(f\"{filename}.lock\")\n            lock_file.logger.disabled = True # type: ignore - False positive. Bad typing in Fasteners.\n            locked = lock_file.acquire_read_lock(blocking=True, timeout=3)\n        except Exception as err:\n            lock_file = None\n            locking_available = False\n            log.error(f'File read lock: file=\"{filename}\" {err}')\n            locked = False\n    try:\n        # if not os.path.exists(filename):\n        #    return {}\n        t0 = time.time()\n        with open(filename, \"rb\") as file:\n            b = file.read()\n            data = orjson.loads(b) # pylint: disable=no-member\n        # if type(data) is str:\n        #    data = json.loads(data)\n        t1 = time.time()\n        if not silent:\n            fn = f'{sys._getframe(2).f_code.co_name}:{sys._getframe(1).f_code.co_name}' # pylint: disable=protected-access\n            log.debug(f'Read: file=\"{filename}\" json={len(data)} bytes={os.path.getsize(filename)} time={t1-t0:.3f} fn={fn}')\n    except FileNotFoundError as err:\n        if not silent:\n            log.debug(f'Read failed: file=\"{filename}\" {err}')\n    except Exception as err:\n        if not silent:\n            log.error(f'Read failed: file=\"{filename}\" {err}')\n    try:\n        if locking_available and lock_file is not None:\n            lock_file.release_read_lock()\n        if locked and os.path.exists(f\"{filename}.lock\"):\n            os.remove(f\"{filename}.lock\")\n    except Exception:\n        locking_available = False\n    if isinstance(data, list) and as_type == \"dict\":\n        if not data:\n            return {}\n        log.warning(f\"Read: Expected dictionary from '{filename}' but got list\")\n        data0 = data[0]\n        if isinstance(data0, dict):\n            return data0\n        return {}\n    if isinstance(data, dict) and as_type == \"list\":\n        if not data:\n            return []\n        log.warning(f\"Read: Expected list from '{filename}' but got dictionary\")\n        return [data]\n    return data\n\n\ndef writefile(data, filename, mode='w', silent=False, atomic=False):\n    import tempfile\n    global locking_available # pylint: disable=global-statement\n    lock_file = None\n    locked = False\n\n    def default(obj):\n        log.error(f'Save: file=\"{filename}\" not a valid object: {obj}')\n        return str(obj)\n\n    try:\n        t0 = time.time()\n        # skipkeys=True, ensure_ascii=True, check_circular=True, allow_nan=True\n        if type(data) == dict:\n            output = json.dumps(data, indent=2, default=default)\n        elif type(data) == list:\n            output = json.dumps(data, indent=2, default=default)\n        elif isinstance(data, object):\n            simple = {}\n            for k in data.__dict__:\n                if data.__dict__[k] is not None:\n                    simple[k] = data.__dict__[k]\n            output = json.dumps(simple, indent=2, default=default)\n        else:\n            raise ValueError('not a valid object')\n    except Exception as err:\n        log.error(f'Save failed: file=\"{filename}\" {err}')\n        return\n    try:\n        if locking_available:\n            lock_file = fasteners.InterProcessReaderWriterLock(f\"{filename}.lock\") if locking_available else None\n            lock_file.logger.disabled = True # type: ignore - False positive. Bad typing in Fasteners.\n            locked = lock_file.acquire_write_lock(blocking=True, timeout=3) if lock_file is not None else False\n    except Exception as err:\n        locking_available = False\n        lock_file = None\n        log.error(f'File write lock: file=\"{filename}\" {err}')\n        locked = False\n    try:\n        if atomic:\n            with tempfile.NamedTemporaryFile(mode=mode, encoding=\"utf8\", delete=False, dir=os.path.dirname(filename)) as f:\n                f.write(output)\n                f.flush()\n                os.fsync(f.fileno())\n                os.replace(f.name, filename)\n        else:\n            with open(filename, mode=mode, encoding=\"utf8\") as file:\n                file.write(output)\n        t1 = time.time()\n        if not silent:\n            datalength = len(data) if isinstance(data, (dict, list)) else (len(data.__dict__))\n            log.debug(f'Save: file=\"{filename}\" json={datalength} bytes={len(output)} time={t1-t0:.3f}')\n    except Exception as err:\n        log.error(f'Save failed: file=\"{filename}\" {err}')\n    try:\n        if locking_available and lock_file is not None:\n            lock_file.release_write_lock()\n        if locked and os.path.exists(f\"{filename}.lock\"):\n            os.remove(f\"{filename}.lock\")\n    except Exception:\n        locking_available = False\n"
  },
  {
    "path": "modules/lama.py",
    "content": "import os\nfrom urllib.parse import urlparse\nimport cv2\nimport torch\nimport numpy as np\nfrom torch.hub import download_url_to_file, get_dir\nfrom PIL import Image\nfrom modules import devices\nfrom installer import log\n\n\nLAMA_MODEL_URL = \"https://github.com/enesmsahin/simple-lama-inpainting/releases/download/v0.1.0/big-lama.pt\"\n\n\ndef prepare_img_and_mask(image, mask, device, pad_out_to_modulo=8, scale_factor=None):\n    def ceil_modulo(x, mod):\n        if x % mod == 0:\n            return x\n        return (x // mod + 1) * mod\n\n    def get_image(img):\n        if isinstance(img, Image.Image):\n            img = np.array(img)\n        if img.ndim == 3:\n            img = np.transpose(img, (2, 0, 1))  # chw\n        elif img.ndim == 2:\n            img = img[np.newaxis, ...]\n        img = img.astype(np.float32) / 255\n        return img\n\n    def pad_img_to_modulo(img, mod):\n        _channels, height, width = img.shape\n        out_height = ceil_modulo(height, mod)\n        out_width = ceil_modulo(width, mod)\n        return np.pad(\n            img,\n            ((0, 0), (0, out_height - height), (0, out_width - width)),\n            mode=\"symmetric\",\n        )\n\n    def scale_image(img, factor, interpolation=cv2.INTER_LANCZOS4):\n        if img.shape[0] == 1:\n            img = img[0]\n        else:\n            img = np.transpose(img, (1, 2, 0))\n        img = cv2.resize(img, dsize=None, fx=factor, fy=factor, interpolation=interpolation)\n        if img.ndim == 2:\n            img = img[None, ...]\n        else:\n            img = np.transpose(img, (2, 0, 1))\n        return img\n\n    out_image = get_image(image)\n    out_mask = get_image(mask)\n    if scale_factor is not None:\n        out_image = scale_image(out_image, scale_factor)\n        out_mask = scale_image(out_mask, scale_factor, interpolation=cv2.INTER_LANCZOS4)\n    if pad_out_to_modulo is not None and pad_out_to_modulo > 1:\n        out_image = pad_img_to_modulo(out_image, pad_out_to_modulo)\n        out_mask = pad_img_to_modulo(out_mask, pad_out_to_modulo)\n    out_image = torch.from_numpy(out_image).unsqueeze(0).to(device)\n    out_mask = torch.from_numpy(out_mask).unsqueeze(0).to(device)\n    out_mask = (out_mask > 0) * 1\n    return out_image, out_mask\n\n\ndef download_model():\n    parts = urlparse(LAMA_MODEL_URL)\n    hub_dir = get_dir()\n    model_dir = os.path.join(hub_dir, \"checkpoints\")\n    os.makedirs(os.path.join(model_dir, \"hub\", \"checkpoints\"), exist_ok=True)\n    filename = os.path.basename(parts.path)\n    cached_file = os.path.join(model_dir, filename)\n    if not os.path.exists(cached_file):\n        log.info(f'LaMa download: url=\"{LAMA_MODEL_URL}\" file=\"{cached_file}\"')\n        hash_prefix = None\n        download_url_to_file(LAMA_MODEL_URL, cached_file, hash_prefix, progress=True)\n    return cached_file\n\n\nclass SimpleLama:\n    def __init__(self):\n        self.device = devices.device\n        model_path = download_model()\n        self.model = torch.jit.load(model_path, map_location=self.device)\n        self.model.eval()\n        self.model.to(self.device)\n\n    def __call__(self, image: Image.Image, mask: Image.Image):\n        if image is None:\n            log.warning('LaMa: image is none')\n            return None\n        if mask is None:\n            mask = Image.new('L', image.size, 0)\n            return None\n        image, mask = prepare_img_and_mask(image, mask, self.device)\n        with devices.inference_context():\n            inpainted = self.model(image, mask)\n            cur_res = inpainted[0].permute(1, 2, 0).detach().float().cpu().numpy()\n            cur_res = np.clip(cur_res * 255, 0, 255).astype(np.uint8)\n            cur_res = Image.fromarray(cur_res)\n            return cur_res\n"
  },
  {
    "path": "modules/linfusion/__init__.py",
    "content": "from modules import shared, sd_models, devices, attention\nfrom .linfusion import LinFusion\nfrom .attention import GeneralizedLinearAttention\n\n\napplied: LinFusion = None\n\n\ndef detect(pipeline):\n    if pipeline.__class__.__name__ == 'StableDiffusionXLPipeline':\n        return \"Yuanshi/LinFusion-XL\"\n    if pipeline.__class__.__name__ == 'StableDiffusionPipeline':\n        return \"Yuanshi/LinFusion-1-5\"\n    return None\n\n\ndef apply(pipeline, pretrained: bool = True):\n    global applied # pylint: disable=global-statement\n    if not shared.opts.enable_linfusion:\n        return\n    if applied is not None:\n        return\n    # linfusion = LinFusion.construct_for(pipeline=pipeline)\n    if not pretrained:\n        model_path = None\n        default_config = LinFusion.get_default_config(unet=pipeline.unet)\n        applied = LinFusion(**default_config).to(device=pipeline.unet.device, dtype=pipeline.unet.dtype)\n        applied.mount_to(unet=pipeline.unet)\n    else:\n        model_path = detect(pipeline)\n        if model_path is None:\n            shared.log.error('LinFusion: unsupported model type')\n            return\n        applied = LinFusion.from_pretrained(model_path, cache_dir=shared.opts.hfcache_dir).to(device=pipeline.unet.device, dtype=pipeline.unet.dtype)\n        applied.mount_to(unet=pipeline.unet)\n    shared.log.info(f'Applying LinFusion: class={applied.__class__.__name__} model=\"{model_path}\" modules={len(applied.modules_dict)}')\n\n\ndef unapply(pipeline):\n    global applied # pylint: disable=global-statement\n    if applied is None:\n        return\n    # shared.log.debug('LinFusion: unapply')\n    attention.set_diffusers_attention(pipeline)\n    devices.torch_gc()\n    applied = None\n"
  },
  {
    "path": "modules/linfusion/attention.py",
    "content": "import torch\nimport torch.nn.functional as F\nfrom diffusers.models.attention_processor import Attention\n\n\ndef get_none_linear_projection(query_dim, mid_dim=None):\n    # If mid_dim is None, then the mid_dim is the same as query_dim\n    # If mid_dim is -1, then no non-linear projection is used, and the identity is returned\n    return (\n        torch.nn.Sequential(\n            torch.nn.Linear(query_dim, mid_dim or query_dim),\n            torch.nn.LayerNorm(mid_dim or query_dim),\n            torch.nn.LeakyReLU(inplace=True),\n            torch.nn.Linear(mid_dim or query_dim, query_dim),\n        )\n        if mid_dim != -1\n        else torch.nn.Identity()\n    )\n\n\nclass GeneralizedLinearAttention(Attention):\n    def __init__(self, *args, projection_mid_dim=None, **kwargs):\n        \"\"\"\n        Args:\n            query_dim: the dimension of the query.\n            out_dim: the dimension of the output.\n            dim_head: the dimension of the head. (dim_head * num_heads = query_dim)\n            projection_mid_dim: the dimension of the intermediate layer in the non-linear projection.\n              If `None`, then the dimension is the same as the query dimension.\n              If `-1`, then no non-linear projection is used, and the identity is returned.\n        \"\"\"\n        super().__init__(*args, **kwargs)\n        self.add_non_linear_model(projection_mid_dim)\n\n    def from_attention_instance(self, attention_instance, projection_mid_dim=None):\n        assert isinstance(attention_instance, Attention)\n        new_instance = GeneralizedLinearAttention(128)\n        new_instance.__dict__ = attention_instance.__dict__\n        new_instance.add_non_linear_model(mid_dim = projection_mid_dim)\n        return new_instance\n\n    def add_non_linear_model(self, mid_dim=None, **kwargs):\n        query_dim = self.to_q.weight.shape[0]\n        self.to_q_ = get_none_linear_projection(query_dim, mid_dim, **kwargs)\n        self.to_k_ = get_none_linear_projection(query_dim, mid_dim, **kwargs)\n\n    def forward( # pylint: disable=unused-argument\n        self,\n        hidden_states,\n        encoder_hidden_states=None,\n        attention_mask=None,\n        **kwargs,\n    ):\n        if encoder_hidden_states is None:\n            encoder_hidden_states = hidden_states\n\n        _, sequence_length, _ = hidden_states.shape\n\n        query = self.to_q(hidden_states + self.to_q_(hidden_states))\n        key = self.to_k(encoder_hidden_states + self.to_k_(encoder_hidden_states))\n        value = self.to_v(encoder_hidden_states)\n\n        query = self.head_to_batch_dim(query)\n        key = self.head_to_batch_dim(key)\n        value = self.head_to_batch_dim(value)\n\n        query = F.elu(query) + 1.0\n        key = F.elu(key) + 1.0\n\n        z = query @ key.mean(dim=-2, keepdim=True).transpose(-2, -1) + 1e-4\n        kv = (key.transpose(-2, -1) * (sequence_length**-0.5)) @ (\n            value * (sequence_length**-0.5)\n        )\n        hidden_states = query @ kv / z\n\n        hidden_states = self.batch_to_head_dim(hidden_states)\n\n        # linear proj\n        hidden_states = self.to_out[0](hidden_states)\n        # dropout\n        hidden_states = self.to_out[1](hidden_states)\n\n        return hidden_states\n"
  },
  {
    "path": "modules/linfusion/linfusion.py",
    "content": "import functools\nfrom diffusers.models.attention_processor import Attention\nfrom diffusers import ModelMixin, ConfigMixin\nfrom .attention import GeneralizedLinearAttention\n\n\nmodel_dict = {\n    \"runwayml/stable-diffusion-v1-5\": \"Yuanshi/LinFusion-1-5\",\n    \"SG161222/Realistic_Vision_V4.0_noVAE\": \"Yuanshi/LinFusion-1-5\",\n    \"Lykon/dreamshaper-8\": \"Yuanshi/LinFusion-1-5\",\n    \"stabilityai/stable-diffusion-2-1\": \"Yuanshi/LinFusion-2-1\",\n    \"stabilityai/stable-diffusion-xl-base-1.0\": \"Yuanshi/LinFusion-XL\",\n}\n\n\ndef replace_submodule(model, module_name, new_submodule):\n    path, attr = module_name.rsplit(\".\", 1)\n    parent_module = functools.reduce(getattr, path.split(\".\"), model)\n    setattr(parent_module, attr, new_submodule)\n\n\nclass LinFusion(ModelMixin, ConfigMixin):\n    def __init__(self, modules_list, *args, **kwargs) -> None:\n        super().__init__(*args, **kwargs)\n\n        self.modules_dict = {}\n        self.register_to_config(modules_list=modules_list)\n\n        for i, attention_config in enumerate(modules_list):\n            dim_n = attention_config[\"dim_n\"]\n            heads = attention_config[\"heads\"]\n            projection_mid_dim = attention_config[\"projection_mid_dim\"]\n            linear_attention = GeneralizedLinearAttention(\n                query_dim=dim_n,\n                out_dim=dim_n,\n                dim_head=dim_n // heads,\n                projection_mid_dim=projection_mid_dim,\n            )\n            self.add_module(f\"{i}\", linear_attention)\n            self.modules_dict[attention_config[\"module_name\"]] = linear_attention\n\n    @classmethod\n    def get_default_config(\n        cls,\n        pipeline=None,\n        unet=None,\n    ):\n        \"\"\"\n        Get the default configuration for the LinFusion model.\n        (The `projection_mid_dim` is same as the `query_dim` by default.)\n        \"\"\"\n        assert unet is not None or pipeline.unet is not None\n        unet = unet or pipeline.unet\n        modules_list = []\n        for module_name, module in unet.named_modules():\n            if not isinstance(module, Attention):\n                continue\n            if \"attn1\" not in module_name:\n                continue\n            dim_n = module.to_q.weight.shape[0]\n            # modules_list.append((module_name, dim_n, module.heads))\n            modules_list.append(\n                {\n                    \"module_name\": module_name,\n                    \"dim_n\": dim_n,\n                    \"heads\": module.heads,\n                    \"projection_mid_dim\": None,\n                }\n            )\n        return {\"modules_list\": modules_list}\n\n    @classmethod\n    def construct_for(\n        cls,\n        pipeline=None,\n        unet=None,\n        load_pretrained=True,\n        pretrained_model_name_or_path=None,\n        pipe_name_path=None,\n    ) -> \"LinFusion\":\n        \"\"\"\n        Construct a LinFusion object for the given pipeline.\n        \"\"\"\n        assert unet is not None or pipeline.unet is not None\n        unet = unet or pipeline.unet\n        if load_pretrained:\n            # Load from pretrained\n            if not pretrained_model_name_or_path:\n                pipe_name_path = pipe_name_path or pipeline._internal_dict._name_or_path # pylint: disable=protected-access\n                pretrained_model_name_or_path = model_dict.get(pipe_name_path, None)\n                if pretrained_model_name_or_path:\n                    pass\n                else:\n                    raise RuntimeError(\n                        f\"LinFusion not found for pipeline [{pipe_name_path}], please provide the path.\"\n                    )\n            linfusion = (\n                LinFusion.from_pretrained(pretrained_model_name_or_path)\n                .to(unet.device)\n                .to(unet.dtype)\n            )\n        else:\n            # Create from scratch without pretrained parameters\n            default_config = LinFusion.get_default_config(unet=unet)\n            linfusion = LinFusion(**default_config).to(unet.device).to(unet.dtype)\n        linfusion.mount_to(unet=unet)\n        return linfusion\n\n    def mount_to(self, pipeline=None, unet=None) -> None:\n        \"\"\"\n        Mounts the modules in the `modules_dict` to the given `pipeline`.\n        \"\"\"\n        assert unet is not None or pipeline.unet is not None\n        unet = unet or pipeline.unet\n        for module_name, module in self.modules_dict.items():\n            replace_submodule(unet, module_name, module)\n        self.to(unet.device).to(unet.dtype)\n"
  },
  {
    "path": "modules/loader.py",
    "content": "from __future__ import annotations\nfrom functools import partial\nimport os\nimport re\nimport sys\nimport logging\nimport warnings\nimport urllib3\nfrom modules import timer, errors\n\n\ninitialized = False\nerrors.install()\nlogging.getLogger(\"DeepSpeed\").disabled = True\ntimer.startup.record(\"loader\")\nerrors.log.debug('Initializing: libraries')\n\nnp = None\ntry:\n    os.environ.setdefault('NEP50_DISABLE_WARNING', '1')\n    import numpy as np # pylint: disable=W0611,C0411\n    import numpy.random # pylint: disable=W0611,C0411 # this causes failure if numpy version changed\n    def obj2sctype(obj):\n        return np.dtype(obj).type\n    if np.__version__.startswith('2.'): # monkeypatch for np==1.2 compatibility\n        np.obj2sctype = obj2sctype # noqa: NPY201\n        np.bool8 = np.bool\n        np.float_ = np.float64 # noqa: NPY201\n        def dummy_npwarn_decorator_factory():\n            def npwarn_decorator(x):\n                return x\n            return npwarn_decorator\n        np._no_nep50_warning = getattr(np, '_no_nep50_warning', dummy_npwarn_decorator_factory) # pylint: disable=protected-access\nexcept Exception as e:\n    errors.log.error(f'Loader: numpy=={np.__version__ if np is not None else None} {e}')\n    errors.log.error('Please restart the app to fix this issue')\n    sys.exit(1)\ntimer.startup.record(\"numpy\")\n\nscipy = None\ntry:\n    import scipy # pylint: disable=W0611,C0411\nexcept Exception as e:\n    errors.log.error(f'Loader: scipy=={scipy.__version__ if scipy is not None else None} {e}')\n    errors.log.error('Please restart the app to fix this issue')\n    sys.exit(1)\ntimer.startup.record(\"scipy\")\n\ntry:\n    import atexit\n    import torch._inductor.async_compile as ac\n    atexit.unregister(ac.shutdown_compile_workers)\nexcept Exception:\n    pass\n\nimport torch # pylint: disable=C0411\nif torch.__version__.startswith('2.5.0'):\n    errors.log.warning(f'Disabling cuDNN for SDP on torch={torch.__version__}')\n    torch.backends.cuda.enable_cudnn_sdp(False)\ntry:\n    import intel_extension_for_pytorch as ipex # pylint: disable=import-error,unused-import\n    errors.log.debug(f'Load IPEX=={ipex.__version__}')\nexcept Exception:\n    pass\ntry:\n    import torch.distributed.distributed_c10d as _c10d # pylint: disable=unused-import,ungrouped-imports\nexcept Exception:\n    errors.log.warning('Loader: torch is not built with distributed support')\n\n\nurllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)\nwarnings.filterwarnings(action=\"ignore\", category=UserWarning, module=\"torchvision\")\ntorchvision = None\ntry:\n    import torchvision # pylint: disable=W0611,C0411\n    import pytorch_lightning # pytorch_lightning should be imported after torch, but it re-enables warnings on import so import once to disable them # pylint: disable=W0611,C0411\nexcept Exception as e:\n    errors.log.error(f'Loader: torchvision=={torchvision.__version__ if \"torchvision\" in sys.modules else None} {e}')\n    if '_no_nep' in str(e):\n        errors.log.error('Loaded versions of packaged are not compatible')\n        errors.log.error('Please restart the app to fix this issue')\nlogging.getLogger(\"xformers\").addFilter(lambda record: 'A matching Triton is not available' not in record.getMessage())\nlogging.getLogger(\"pytorch_lightning\").disabled = True\nwarnings.filterwarnings(action=\"ignore\", category=DeprecationWarning)\nwarnings.filterwarnings(action=\"ignore\", category=FutureWarning)\nwarnings.filterwarnings(action=\"ignore\", category=UserWarning, module=\"torchvision\")\nwarnings.filterwarnings(action=\"ignore\", message=\"numpy.dtype size changed\")\ntry:\n    import torch._logging # pylint: disable=ungrouped-imports\n    torch._logging._internal.DEFAULT_LOG_LEVEL = logging.ERROR # pylint: disable=protected-access\n    torch._logging.set_logs(all=logging.ERROR, bytecode=False, aot_graphs=False, aot_joint_graph=False, ddp_graphs=False, graph=False, graph_code=False, graph_breaks=False, graph_sizes=False, guards=False, recompiles=False, recompiles_verbose=False, trace_source=False, trace_call=False, trace_bytecode=False, output_code=False, kernel_code=False, schedule=False, perf_hints=False, post_grad_graphs=False, onnx_diagnostics=False, fusion=False, overlap=False, export=None, modules=None, cudagraphs=False, sym_node=False, compiled_autograd_verbose=False) # pylint: disable=protected-access\n    import torch._dynamo\n    torch._dynamo.config.verbose = False # pylint: disable=protected-access\n    torch._dynamo.config.suppress_errors = True # pylint: disable=protected-access\nexcept Exception as e:\n    errors.log.warning(f'Torch logging: {e}')\nif \".dev\" in torch.__version__ or \"+git\" in torch.__version__:\n    torch.__long_version__ = torch.__version__\n    torch.__version__ = re.search(r'[\\d.]+[\\d]', torch.__version__).group(0)\ntimer.startup.record(\"torch\")\n\ntry:\n    import bitsandbytes # pylint: disable=W0611,C0411\n    _bnb = True\nexcept Exception:\n    _bnb = False\ntimer.startup.record(\"bnb\")\n\nimport huggingface_hub # pylint: disable=W0611,C0411\nlogging.getLogger(\"huggingface_hub.file_download\").setLevel(logging.ERROR)\nif huggingface_hub.__version__.startswith('0.'):\n    huggingface_hub.is_offline_mode = lambda: False\ntimer.startup.record(\"hfhub\")\n\nimport accelerate # pylint: disable=W0611,C0411\ntimer.startup.record(\"accelerate\")\n\nimport pydantic # pylint: disable=W0611,C0411\ntimer.startup.record(\"pydantic\")\n\nimport transformers # pylint: disable=W0611,C0411\nfrom transformers import logging as transformers_logging # pylint: disable=W0611,C0411\ntransformers_logging.set_verbosity_error()\ntimer.startup.record(\"transformers\")\n\ntry:\n    import onnxruntime # pylint: disable=W0611,C0411\n    onnxruntime.set_default_logger_severity(4)\n    onnxruntime.set_default_logger_verbosity(1)\n    onnxruntime.disable_telemetry_events()\nexcept Exception as e:\n    errors.log.warning(f'Torch onnxruntime: {e}')\ntimer.startup.record(\"onnx\")\n\nfrom fastapi import FastAPI # pylint: disable=W0611,C0411\nimport gradio # pylint: disable=W0611,C0411\ntimer.startup.record(\"gradio\")\nerrors.install([gradio])\n\n# patch different progress bars\nimport tqdm as tqdm_lib # pylint: disable=C0411\nfrom tqdm.rich import tqdm # pylint: disable=W0611,C0411\n\ntry:\n    logging.getLogger(\"diffusers.guiders\").setLevel(logging.ERROR)\n    logging.getLogger(\"diffusers.loaders.single_file\").setLevel(logging.ERROR)\n    import diffusers.utils.import_utils # pylint: disable=W0611,C0411\n    diffusers.utils.import_utils._k_diffusion_available = True # pylint: disable=protected-access # monkey-patch since we use k-diffusion from git\n    diffusers.utils.import_utils._k_diffusion_version = '0.0.12' # pylint: disable=protected-access\n    diffusers.utils.import_utils._bitsandbytes_available = _bnb # pylint: disable=protected-access\n\n    import diffusers # pylint: disable=W0611,C0411\n    import diffusers.loaders.single_file # pylint: disable=W0611,C0411\n    diffusers.loaders.single_file.logging.tqdm = partial(tqdm, unit='C')\n    timer.startup.record(\"diffusers\")\nexcept Exception as e:\n    errors.log.error(f'Loader: diffusers=={diffusers.__version__ if \"diffusers\" in sys.modules else None} {e}')\n    errors.log.error('Please restart re-run the installer')\n    sys.exit(1)\n\ntry:\n    import pillow_jxl # pylint: disable=W0611,C0411\nexcept Exception:\n    pass\nfrom PIL import Image # pylint: disable=W0611,C0411\ntimer.startup.record(\"pillow\")\n\n\nimport cv2 # pylint: disable=W0611,C0411\ntimer.startup.record(\"cv2\")\n\nclass _tqdm_cls():\n    def __call__(self, *args, **kwargs):\n        bar_format = 'Progress {rate_fmt}{postfix} {bar} {percentage:3.0f}% {n_fmt}/{total_fmt} {elapsed} {remaining} ' + '\\x1b[38;5;71m' + '{desc}' + '\\x1b[0m'\n        return tqdm_lib.tqdm(*args, bar_format=bar_format, ncols=80, colour='#327fba', **kwargs)\n\nclass _tqdm_old(tqdm_lib.tqdm):\n    def __init__(self, *args, **kwargs):\n        kwargs.pop(\"name\", None)\n        kwargs['bar_format'] = 'Progress {rate_fmt}{postfix} {bar} {percentage:3.0f}% {n_fmt}/{total_fmt} {elapsed} {remaining} ' + '\\x1b[38;5;71m' + '{desc}' + '\\x1b[0m'\n        kwargs['ncols'] = 80\n        super().__init__(*args, **kwargs)\n\n\ntransformers.utils.logging.tqdm = _tqdm_cls()\ndiffusers.pipelines.pipeline_utils.logging.tqdm = _tqdm_cls()\nhuggingface_hub._snapshot_download.hf_tqdm = _tqdm_old # pylint: disable=protected-access\n\n\ndef get_packages():\n    return {\n        \"torch\": getattr(torch, \"__long_version__\", torch.__version__),\n        \"diffusers\": diffusers.__version__,\n        \"gradio\": gradio.__version__,\n        \"transformers\": transformers.__version__,\n        \"accelerate\": accelerate.__version__,\n        \"hub\": huggingface_hub.__version__,\n    }\n\ntry:\n    import math\n    cores = os.cpu_count()\n    affinity = len(os.sched_getaffinity(0)) # pylint: disable=no-member\n    threads = torch.get_num_threads()\n    if threads < (affinity / 2):\n        torch.set_num_threads(math.floor(affinity / 2))\n        threads = torch.get_num_threads()\n    errors.log.debug(f'System: cores={cores} affinity={affinity} threads={threads}')\nexcept Exception:\n    pass\n\ntry:\n    import torchvision.transforms.functional_tensor # pylint: disable=unused-import, ungrouped-imports\nexcept ImportError:\n    try:\n        import torchvision.transforms.functional as functional\n        sys.modules[\"torchvision.transforms.functional_tensor\"] = functional\n    except ImportError:\n        pass  # shrug...\n\n\ndeprecate_diffusers = diffusers.utils.deprecation_utils.deprecate\ndef deprecate_warn(*args, **kwargs):\n    try:\n        deprecate_diffusers(*args, **kwargs)\n    except Exception as e:\n        errors.log.warning(f'Deprecation: {e}')\ndiffusers.utils.deprecation_utils.deprecate = deprecate_warn\ndiffusers.utils.deprecate = deprecate_warn\n\n\nclass VersionString(str): # support both string and tuple for version check\n    def __ge__(self, version):\n        if isinstance(version, tuple):\n            version_tuple = re.findall(r'\\d+', torch.__version__.split('+')[0])\n            version_tuple = tuple(int(x) for x in version_tuple[:3])\n            return version_tuple >= version\n        return super().__ge__(version)\n\n\ntorch.__version__ = VersionString(torch.__version__)\nerrors.log.info(f'Torch: torch=={torch.__version__} torchvision=={torchvision.__version__}')\nerrors.log.info(f'Packages: diffusers=={diffusers.__version__} transformers=={transformers.__version__} accelerate=={accelerate.__version__} gradio=={gradio.__version__} pydantic=={pydantic.__version__} numpy=={np.__version__} cv2=={cv2.__version__}')\n"
  },
  {
    "path": "modules/localization.py",
    "content": "import json\nimport modules.errors as errors\n\n\nlocalizations = {}\n\n\ndef list_localizations(dirname): # pylint: disable=unused-argument\n    localizations.clear()\n    \"\"\"\n    for file in os.listdir(dirname):\n        fn, ext = os.path.splitext(file)\n        if ext.lower() != \".json\":\n            continue\n\n        localizations[fn] = os.path.join(dirname, file)\n\n    from modules import scripts\n    for file in scripts.list_scripts(\"localizations\", \".json\"):\n        fn, ext = os.path.splitext(file.filename)\n        localizations[fn] = file.path\n    \"\"\"\n    return localizations\n\n\ndef localization_js(current_localization_name):\n    fn = localizations.get(current_localization_name, None)\n    data = {}\n    if fn is not None:\n        try:\n            with open(fn, \"r\", encoding=\"utf8\") as file:\n                data = json.load(file)\n        except Exception as e:\n            errors.log.error(f\"Error loading localization from {fn}:\")\n            errors.display(e, 'localization')\n\n    return f\"var localization = {json.dumps(data)}\\n\"\n"
  },
  {
    "path": "modules/lora/extra_networks_lora.py",
    "content": "from typing import List\nimport os\nimport re\nimport numpy as np\nfrom modules.lora import networks, lora_overrides, lora_load, lora_diffusers\nfrom modules.lora import lora_common as l\nfrom modules import extra_networks, shared, sd_models\n\n\ndebug = os.environ.get('SD_LORA_DEBUG', None) is not None\ndebug_log = shared.log.trace if debug else lambda *args, **kwargs: None\n\n\ndef get_stepwise(param, step, steps): # from https://github.com/cheald/sd-webui-loractl/blob/master/loractl/lib/utils.py\n    def sorted_positions(raw_steps):\n        steps = [[float(s.strip()) for s in re.split(\"[@~]\", x)]\n                 for x in re.split(\"[,;]\", str(raw_steps))]\n        if len(steps[0]) == 1: # If we just got a single number, just return it\n            return steps[0][0]\n        steps = [[s[0], s[1] if len(s) == 2 else 1] for s in steps] # Add implicit 1s to any steps which don't have a weight\n        steps.sort(key=lambda k: k[1]) # Sort by index\n        steps = [list(v) for v in zip(*steps)]\n        return steps\n\n    def calculate_weight(m, step, max_steps, step_offset=2):\n        if isinstance(m, list):\n            if m[1][-1] <= 1.0:\n                step = step / (max_steps - step_offset) if max_steps > 0 else 1.0\n            v = np.interp(step, m[1], m[0])\n            debug_log(f\"Network load: type=LoRA step={step} steps={max_steps} v={v}\")\n            return v\n        else:\n            return m\n\n    stepwise = calculate_weight(sorted_positions(param), step, steps)\n    return stepwise\n\n\ndef prompt(p):\n    if shared.opts.lora_apply_tags == 0:\n        return\n    all_tags = []\n    for loaded in l.loaded_networks:\n        page = [en for en in shared.extra_networks if en.name == 'lora'][0]\n        item = page.create_item(loaded.name)\n        tags = (item or {}).get(\"tags\", {})\n        loaded.tags = list(tags)\n        if len(loaded.tags) == 0:\n            loaded.tags.append(loaded.name)\n        if shared.opts.lora_apply_tags > 0:\n            loaded.tags = loaded.tags[:shared.opts.lora_apply_tags]\n        all_tags.extend(loaded.tags)\n    if len(all_tags) > 0:\n        all_tags = list(set(all_tags))\n        all_tags = [t for t in all_tags if t not in p.prompt]\n        if len(all_tags) > 0:\n            shared.log.debug(f\"Network load: type=LoRA tags={all_tags} max={shared.opts.lora_apply_tags} apply\")\n        all_tags = ', '.join(all_tags)\n        p.extra_generation_params[\"LoRA tags\"] = all_tags\n        if '_tags_' in p.prompt:\n            p.prompt = p.prompt.replace('_tags_', all_tags)\n        else:\n            p.prompt = f\"{p.prompt}, {all_tags}\"\n        if p.all_prompts is not None:\n            for i in range(len(p.all_prompts)):\n                if '_tags_' in p.all_prompts[i]:\n                    p.all_prompts[i] = p.all_prompts[i].replace('_tags_', all_tags)\n                else:\n                    p.all_prompts[i] = f\"{p.all_prompts[i]}, {all_tags}\"\n\n\ndef infotext(p):\n    names = [i.name for i in l.loaded_networks]\n    if len(names) > 0:\n        p.extra_generation_params[\"LoRA networks\"] = \", \".join(names)\n    if shared.opts.lora_add_hashes_to_infotext:\n        network_hashes = []\n        for item in l.loaded_networks:\n            if not item.network_on_disk.shorthash:\n                continue\n            network_hashes.append(item.network_on_disk.shorthash)\n        if len(network_hashes) > 0:\n            p.extra_generation_params[\"LoRA hashes\"] = \", \".join(network_hashes)\n\n\ndef to_float(value):\n    try:\n        return float(value)\n    except (ValueError, TypeError):\n        return value\n\n\ndef parse(p, params_list, step=0):\n    names = []\n    te_multipliers = []\n    unet_multipliers = []\n    dyn_dims = []\n    lora_modules = []\n    for params in params_list:\n        name = params.positional[0]\n\n        default_multiplier = params.positional[1] if len(params.positional) > 1 else shared.opts.extra_networks_default_multiplier\n        default_multiplier = to_float(default_multiplier)\n        if isinstance(default_multiplier, str) and \"@\" not in default_multiplier:\n            default_multiplier = shared.opts.extra_networks_default_multiplier\n\n        te_multiplier = params.named.get(\"te\", default_multiplier)\n        if isinstance(te_multiplier, str) and \"@\" in te_multiplier:\n            te_multiplier = get_stepwise(te_multiplier, step, p.steps)\n        else:\n            te_multiplier = to_float(te_multiplier)\n\n        unet_multiplier = 3 * [params.named.get(\"unet\", te_multiplier)] # fill all 3 with same value\n        unet_multiplier[0] = params.named.get(\"in\", unet_multiplier[0])\n        unet_multiplier[1] = params.named.get(\"mid\", unet_multiplier[1])\n        unet_multiplier[2] = params.named.get(\"out\", unet_multiplier[2])\n        for i in range(len(unet_multiplier)):\n            if isinstance(unet_multiplier[i], str) and \"@\" in unet_multiplier[i]:\n                unet_multiplier[i] = get_stepwise(unet_multiplier[i], step, p.steps)\n            else:\n                unet_multiplier[i] = to_float(unet_multiplier[i])\n\n        dyn_dim = int(params.named[\"dyn\"]) if \"dyn\" in params.named else None\n\n        if (te_multiplier == 0) and all(u == 0 for u in unet_multiplier): # skip lora with strength zero\n            continue\n\n        names.append(name)\n        te_multipliers.append(te_multiplier)\n        unet_multipliers.append(unet_multiplier)\n        dyn_dims.append(dyn_dim)\n\n        lora_module = []\n        if 'high' in params.positional or 'HIGH 14B' in params.positional[0]:\n            lora_module.append('transformer')\n        if 'low' in params.positional or 'LOW 14B' in params.positional[0]:\n            lora_module.append('transformer_2')\n        if params.named.get('module', None) is not None:\n            lora_module.append(params.named['module'].lower())\n\n        if len(lora_module) == 0 and shared.sd_loaded:\n            if hasattr(shared.sd_model, 'transformer') and (shared.sd_model.transformer is not None) and hasattr(shared.sd_model, 'transformer_2') and (shared.sd_model.transformer_2 is None):\n                lora_module.append('transformer')\n            if hasattr(shared.sd_model, 'transformer') and (shared.sd_model.transformer is None) and hasattr(shared.sd_model, 'transformer_2') and (shared.sd_model.transformer_2 is not None):\n                lora_module.append('transformer_2')\n\n        lora_modules.append(lora_module)\n\n    return names, te_multipliers, unet_multipliers, dyn_dims, lora_modules\n\n\ndef unload_diffusers():\n    if hasattr(shared.sd_model, \"unfuse_lora\"):\n        try:\n            shared.sd_model.unfuse_lora()\n        except Exception:\n            pass\n    if hasattr(shared.sd_model, \"unload_lora_weights\"):\n        try:\n            shared.sd_model.unload_lora_weights() # fails for non-CLIP models\n        except Exception:\n            pass\n\n\nclass ExtraNetworkLora(extra_networks.ExtraNetwork):\n\n    def __init__(self):\n        super().__init__('lora')\n        self.active = False\n        self.model = None\n        self.errors = {}\n\n    def signature(self, names: List[str], te_multipliers: List, unet_multipliers: List):\n        return [f'{name}:{te}:{unet}' for name, te, unet in zip(names, te_multipliers, unet_multipliers)]\n\n    def changed(self, requested: List[str], include: List[str] = None, exclude: List[str] = None) -> bool:\n        if shared.opts.lora_force_reload:\n            debug_log(f'Network check: type=LoRA requested={requested} status=forced')\n            return True\n        sd_model = shared.sd_model.pipe if hasattr(shared.sd_model, 'pipe') else shared.sd_model\n        if not hasattr(sd_model, 'loaded_loras'):\n            sd_model.loaded_loras = {}\n        if include is None or len(include) == 0:\n            include = ['all']\n        if exclude is None or len(exclude) == 0:\n            exclude = ['none']\n        key = f'include={\",\".join(include)}:exclude={\",\".join(exclude)}'\n        loaded = sd_model.loaded_loras.get(key, [])\n        if len(requested) != len(loaded):\n            sd_model.loaded_loras[key] = requested\n            debug_log(f'Network check: type=LoRA key=\"{key}\" requested={requested} loaded={loaded} status=changed')\n            return True\n        for req, load in zip(requested, loaded):\n            if req != load:\n                sd_model.loaded_loras[key] = requested\n                debug_log(f'Network check: type=LoRA key=\"{key}\" requested={requested} loaded={loaded} status=changed')\n                return True\n        debug_log(f'Network check: type=LoRA key=\"{key}\" requested={requested} loaded={loaded} status=same')\n        return False\n\n    def activate(self, p, params_list, step=0, include=[], exclude=[]):\n        self.errors.clear()\n        if self.active:\n            if self.model != shared.opts.sd_model_checkpoint: # reset if model changed\n                self.active = False\n        if len(params_list) > 0 and not self.active: # activate patches once\n            self.active = True\n            self.model = shared.opts.sd_model_checkpoint\n        names, te_multipliers, unet_multipliers, dyn_dims, lora_modules = parse(p, params_list, step)\n        requested = self.signature(names, te_multipliers, unet_multipliers)\n\n        load_method = lora_overrides.get_method()\n        if debug:\n            import sys\n            fn = f'{sys._getframe(2).f_code.co_name}:{sys._getframe(1).f_code.co_name}' # pylint: disable=protected-access\n            debug_log(f'Network load: type=LoRA include={include} exclude={exclude} method={load_method} requested={requested} fn={fn}')\n\n        if load_method == 'diffusers':\n            has_changed = self.changed(requested)\n            if has_changed:\n                jobid = shared.state.begin('LoRA')\n                lora_load.network_load(names, te_multipliers, unet_multipliers, dyn_dims, lora_modules) # load only on first call\n                sd_models.set_diffuser_offload(shared.sd_model, op=\"model\")\n                shared.state.end(jobid)\n\n        elif load_method == 'nunchaku':\n            from modules.lora import lora_nunchaku\n            has_changed = lora_nunchaku.load_nunchaku(names, unet_multipliers)\n\n        else: # native\n            lora_load.network_load(names, te_multipliers, unet_multipliers, dyn_dims) # load\n            has_changed = self.changed(requested, include, exclude)\n            if has_changed:\n                jobid = shared.state.begin('LoRA')\n                if len(l.previously_loaded_networks) > 0:\n                    shared.log.info(f'Network unload: type=LoRA networks={[n.name for n in l.previously_loaded_networks]} mode={\"fuse\" if shared.opts.lora_fuse_native else \"backup\"}')\n                    networks.network_deactivate(include, exclude)\n                networks.network_activate(include, exclude)\n                debug_log(f'Network change: type=LoRA previous={[n.name for n in l.previously_loaded_networks]} current={[n.name for n in l.loaded_networks]}')\n                if len(include) == 0:\n                    l.previously_loaded_networks = l.loaded_networks.copy()\n                shared.state.end(jobid)\n\n        if len(l.loaded_networks) > 0 and (len(networks.applied_layers) > 0 or load_method=='diffusers' or load_method=='nunchaku') and step == 0:\n            infotext(p)\n            prompt(p)\n            if has_changed and len(include) == 0: # print only once\n                shared.log.info(f'Network load: type=LoRA networks={[n.name for n in l.loaded_networks]} method={load_method} mode={\"fuse\" if shared.opts.lora_fuse_native else \"backup\"} te={te_multipliers} unet={unet_multipliers} time={l.timer.summary}')\n\n    def deactivate(self, p, force=False):\n        if len(lora_diffusers.diffuser_loaded) > 0 and (shared.opts.lora_force_reload or force):\n            unload_diffusers()\n        if force:\n            networks.network_deactivate()\n        if self.active and l.debug:\n            shared.log.debug(f\"Network end: type=LoRA time={l.timer.summary}\")\n        if self.errors:\n            for k, v in self.errors.items():\n                shared.log.error(f'Network: type=LoRA name=\"{k}\" errors={v}')\n            self.errors.clear()\n"
  },
  {
    "path": "modules/lora/lora_apply.py",
    "content": "from typing import Union\nimport re\nimport time\nimport torch\nimport diffusers.models.lora\nfrom modules.errorlimiter import ErrorLimiter\nfrom modules.lora import lora_common as l\nfrom modules import shared, devices, errors, model_quant\n\n\nbnb = None\nre_network_name = re.compile(r\"(.*)\\s*\\([0-9a-fA-F]+\\)\")\n\n\ndef network_backup_weights(self: Union[torch.nn.Conv2d, torch.nn.Linear, torch.nn.GroupNorm, torch.nn.LayerNorm, diffusers.models.lora.LoRACompatibleLinear, diffusers.models.lora.LoRACompatibleConv], network_layer_name: str, wanted_names: tuple):\n    global bnb # pylint: disable=W0603\n    backup_size = 0\n    if len(l.loaded_networks) > 0 and network_layer_name is not None and any([net.modules.get(network_layer_name, None) for net in l.loaded_networks]): # noqa: C419 # pylint: disable=R1729\n        t0 = time.time()\n\n        weights_backup = getattr(self, \"network_weights_backup\", None)\n        bias_backup = getattr(self, \"network_bias_backup\", None)\n        if weights_backup is not None or bias_backup is not None:\n            if (shared.opts.lora_fuse_native and not isinstance(weights_backup, bool)) or (not shared.opts.lora_fuse_native and isinstance(weights_backup, bool)): # invalidate so we can change direct/backup on-the-fly\n                weights_backup = None\n                bias_backup = None\n                self.network_weights_backup = weights_backup\n                self.network_bias_backup = bias_backup\n\n        if weights_backup is None and wanted_names != (): # pylint: disable=C1803\n            weight = getattr(self, 'weight', None)\n            self.network_weights_backup = None\n            if getattr(weight, \"quant_type\", None) in ['nf4', 'fp4']:\n                if bnb is None:\n                    bnb = model_quant.load_bnb('Network load: type=LoRA', silent=True)\n                if bnb is not None:\n                    if shared.opts.lora_fuse_native:\n                        self.network_weights_backup = True\n                    else:\n                        self.network_weights_backup = bnb.functional.dequantize_4bit(weight, quant_state=weight.quant_state, quant_type=weight.quant_type, blocksize=weight.blocksize,)\n                    self.quant_state, self.quant_type, self.blocksize = weight.quant_state, weight.quant_type, weight.blocksize\n                else:\n                    self.network_weights_backup = weight.clone().to(devices.cpu) if not shared.opts.lora_fuse_native else True\n            else:\n                if shared.opts.lora_fuse_native:\n                    self.network_weights_backup = True\n                else:\n                    self.network_weights_backup = weight.clone().to(devices.cpu)\n                    if hasattr(self, \"sdnq_dequantizer\"):\n                        self.sdnq_dequantizer_backup = self.sdnq_dequantizer\n                        self.sdnq_scale_backup = self.scale.clone().to(devices.cpu)\n                        if self.zero_point is not None:\n                            self.sdnq_zero_point_backup = self.zero_point.clone().to(devices.cpu)\n                        else:\n                            self.sdnq_zero_point_backup = None\n                        if self.svd_up is not None:\n                            self.sdnq_svd_up_backup = self.svd_up.clone().to(devices.cpu)\n                            self.sdnq_svd_down_backup = self.svd_down.clone().to(devices.cpu)\n                        else:\n                            self.sdnq_svd_up_backup = None\n                            self.sdnq_svd_down_backup = None\n\n        if bias_backup is None:\n            if getattr(self, 'bias', None) is not None:\n                if shared.opts.lora_fuse_native:\n                    self.network_bias_backup = True\n                else:\n                    bias_backup = self.bias.clone()\n                    bias_backup = bias_backup.to(devices.cpu)\n\n        if getattr(self, 'network_weights_backup', None) is not None:\n            backup_size += self.network_weights_backup.numel() * self.network_weights_backup.element_size() if isinstance(self.network_weights_backup, torch.Tensor) else 0\n        if getattr(self, 'network_bias_backup', None) is not None:\n            backup_size += self.network_bias_backup.numel() * self.network_bias_backup.element_size() if isinstance(self.network_bias_backup, torch.Tensor) else 0\n        l.timer.backup += time.time() - t0\n    return backup_size\n\n\ndef network_calc_weights(self: Union[torch.nn.Conv2d, torch.nn.Linear, torch.nn.GroupNorm, torch.nn.LayerNorm, diffusers.models.lora.LoRACompatibleLinear, diffusers.models.lora.LoRACompatibleConv], network_layer_name: str, use_previous: bool = False):\n    if shared.opts.diffusers_offload_mode == \"none\":\n        try:\n            self.to(devices.device)\n        except Exception:\n            pass\n    batch_updown = None\n    batch_ex_bias = None\n    loaded = l.loaded_networks if not use_previous else l.previously_loaded_networks\n    for net in loaded:\n        module = net.modules.get(network_layer_name, None)\n        if module is None:\n            continue\n        try:\n            t0 = time.time()\n            if hasattr(self, \"sdnq_dequantizer_backup\"):\n                weight = self.sdnq_dequantizer_backup(\n                    self.weight.to(devices.device),\n                    self.sdnq_scale_backup.to(devices.device),\n                    self.sdnq_zero_point_backup.to(devices.device) if self.sdnq_zero_point_backup is not None else None,\n                    self.sdnq_svd_up_backup.to(devices.device) if self.sdnq_svd_up_backup is not None else None,\n                    self.sdnq_svd_down_backup.to(devices.device) if self.sdnq_svd_down_backup is not None else None,\n                    skip_quantized_matmul=self.sdnq_dequantizer_backup.use_quantized_matmul\n                )\n            elif hasattr(self, \"sdnq_dequantizer\"):\n                weight = self.sdnq_dequantizer(\n                    self.weight.to(devices.device),\n                    self.scale.to(devices.device),\n                    self.zero_point.to(devices.device) if self.zero_point is not None else None,\n                    self.svd_up.to(devices.device) if self.svd_up is not None else None,\n                    self.svd_down.to(devices.device) if self.svd_down is not None else None,\n                    skip_quantized_matmul=self.sdnq_dequantizer.use_quantized_matmul\n                )\n            else:\n                weight = self.weight.to(devices.device) # must perform calc on gpu due to performance\n            updown, ex_bias = module.calc_updown(weight)\n            weight = None\n            del weight\n\n            if updown is not None:\n                if batch_updown is not None:\n                    batch_updown += updown.to(batch_updown.device)\n                else:\n                    batch_updown = updown.to(devices.device)\n            if ex_bias is not None:\n                if batch_ex_bias:\n                    batch_ex_bias += ex_bias.to(batch_ex_bias.device)\n                else:\n                    batch_ex_bias = ex_bias.to(devices.device)\n            l.timer.calc += time.time() - t0\n\n            if shared.opts.diffusers_offload_mode == \"sequential\":\n                t0 = time.time()\n                if batch_updown is not None:\n                    batch_updown = batch_updown.to(devices.cpu)\n                if batch_ex_bias is not None:\n                    batch_ex_bias = batch_ex_bias.to(devices.cpu)\n                t1 = time.time()\n                l.timer.move += t1 - t0\n        except RuntimeError as e:\n            l.extra_network_lora.errors[net.name] = l.extra_network_lora.errors.get(net.name, 0) + 1\n            module_name = net.modules.get(network_layer_name, None)\n            shared.log.error(f'Network: type=LoRA name=\"{net.name}\" module=\"{module_name}\" layer=\"{network_layer_name}\" apply weight: {e}')\n            if l.debug:\n                errors.display(e, 'LoRA')\n                raise RuntimeError('LoRA apply weight') from e\n            ErrorLimiter.notify((\"network_activate\", \"network_deactivate\"))\n        continue\n    return batch_updown, batch_ex_bias\n\n\ndef network_add_weights(self: Union[torch.nn.Conv2d, torch.nn.Linear, torch.nn.GroupNorm, torch.nn.LayerNorm, diffusers.models.lora.LoRACompatibleLinear, diffusers.models.lora.LoRACompatibleConv], model_weights: Union[None, torch.Tensor] = None, lora_weights: torch.Tensor = None, deactivate: bool = False, device: torch.device = None, bias: bool = False):\n    if lora_weights is None:\n        return\n    if deactivate:\n        lora_weights *= -1\n    if model_weights is None: # weights are used if provided-from-backup else use self.weight\n        model_weights = self.weight\n    weight, new_weight = None, None\n    # TODO lora: add other quantization types\n    if self.__class__.__name__ == 'Linear4bit' and bnb is not None:\n        try:\n            dequant_weight = bnb.functional.dequantize_4bit(model_weights.to(devices.device), quant_state=self.quant_state, quant_type=self.quant_type, blocksize=self.blocksize)\n            new_weight = dequant_weight.to(devices.device) + lora_weights.to(devices.device)\n            weight = bnb.nn.Params4bit(new_weight.to(device), quant_state=self.quant_state, quant_type=self.quant_type, blocksize=self.blocksize, requires_grad=False)\n            # TODO lora: maybe force imediate quantization\n            # weight._quantize(devices.device) / weight.to(device=device)\n        except Exception as e:\n            shared.log.error(f'Network load: type=LoRA quant=bnb cls={self.__class__.__name__} type={self.quant_type} blocksize={self.blocksize} state={vars(self.quant_state)} weight={self.weight} bias={lora_weights} {e}')\n    elif not bias and hasattr(self, \"sdnq_dequantizer\"):\n        try:\n            from modules.sdnq import sdnq_quantize_layer\n            if hasattr(self, \"sdnq_dequantizer_backup\"):\n                use_svd = bool(self.sdnq_svd_up_backup is not None)\n                dequantize_fp32 = bool(self.sdnq_scale_backup.dtype == torch.float32)\n                sdnq_dequantizer = self.sdnq_dequantizer_backup\n                dequant_weight = self.sdnq_dequantizer_backup(\n                    model_weights.to(devices.device),\n                    self.sdnq_scale_backup.to(devices.device),\n                    self.sdnq_zero_point_backup.to(devices.device) if self.sdnq_zero_point_backup is not None else None,\n                    self.sdnq_svd_up_backup.to(devices.device) if use_svd else None,\n                    self.sdnq_svd_down_backup.to(devices.device) if use_svd else None,\n                    skip_quantized_matmul=self.sdnq_dequantizer_backup.use_quantized_matmul,\n                    dtype=torch.float32,\n                )\n            else:\n                use_svd = bool(self.svd_up is not None)\n                dequantize_fp32 = bool(self.scale.dtype == torch.float32)\n                sdnq_dequantizer = self.sdnq_dequantizer\n                dequant_weight = self.sdnq_dequantizer(\n                    model_weights.to(devices.device),\n                    self.scale.to(devices.device),\n                    self.zero_point.to(devices.device) if self.zero_point is not None else None,\n                    self.svd_up.to(devices.device) if use_svd else None,\n                    self.svd_down.to(devices.device) if use_svd else None,\n                    skip_quantized_matmul=self.sdnq_dequantizer.use_quantized_matmul,\n                    dtype=torch.float32,\n                )\n\n            new_weight = dequant_weight.to(devices.device, dtype=torch.float32) + lora_weights.to(devices.device, dtype=torch.float32)\n            self.weight = torch.nn.Parameter(new_weight, requires_grad=False)\n            del self.sdnq_dequantizer, self.scale, self.zero_point, self.svd_up, self.svd_down\n            self = sdnq_quantize_layer(\n                self,\n                weights_dtype=sdnq_dequantizer.weights_dtype,\n                quantized_matmul_dtype=sdnq_dequantizer.quantized_matmul_dtype,\n                torch_dtype=sdnq_dequantizer.result_dtype,\n                group_size=sdnq_dequantizer.group_size,\n                svd_rank=sdnq_dequantizer.svd_rank,\n                use_quantized_matmul=sdnq_dequantizer.use_quantized_matmul,\n                use_quantized_matmul_conv=sdnq_dequantizer.use_quantized_matmul,\n                use_svd=use_svd,\n                dequantize_fp32=dequantize_fp32,\n                svd_steps=shared.opts.sdnq_svd_steps,\n                quant_conv=True, # quant_conv is True if conv layers ends up here\n                non_blocking=False,\n                quantization_device=devices.device,\n                return_device=device,\n                param_name=getattr(self, 'network_layer_name', None),\n            )[0].to(device)\n            weight = None\n            del dequant_weight\n        except Exception as e:\n            shared.log.error(f'Network load: type=LoRA quant=sdnq cls={self.__class__.__name__} weight={self.weight} lora_weights={lora_weights} {e}')\n    else:\n        try:\n            new_weight = model_weights.to(devices.device) + lora_weights.to(devices.device)\n        except Exception as e:\n            shared.log.warning(f'Network load: {e}')\n            if 'The size of tensor' in str(e):\n                shared.log.error(f'Network load: type=LoRA model={shared.sd_model.__class__.__name__} incompatible lora shape')\n                new_weight = model_weights\n            else:\n                new_weight = model_weights + lora_weights # try without device cast\n        weight = torch.nn.Parameter(new_weight.to(device), requires_grad=False)\n    if weight is not None:\n        if not bias:\n            self.weight = weight\n        else:\n            self.bias = weight\n    del model_weights, lora_weights, new_weight, weight # required to avoid memory leak\n\n\ndef network_apply_direct(self: Union[torch.nn.Conv2d, torch.nn.Linear, torch.nn.GroupNorm, torch.nn.LayerNorm, diffusers.models.lora.LoRACompatibleLinear, diffusers.models.lora.LoRACompatibleConv], updown: torch.Tensor, ex_bias: torch.Tensor, deactivate: bool = False, device: torch.device = devices.device):\n    weights_backup = getattr(self, \"network_weights_backup\", False)\n    bias_backup = getattr(self, \"network_bias_backup\", False)\n    if not isinstance(weights_backup, bool): # remove previous backup if we switched settings\n        weights_backup = True\n    if not isinstance(bias_backup, bool):\n        bias_backup = True\n    if not weights_backup and not bias_backup:\n        return\n    t0 = time.time()\n\n    if weights_backup:\n        if updown is not None and len(self.weight.shape) == 4 and self.weight.shape[1] == 9: # inpainting model so zero pad updown to make channel 4 to 9\n            updown = torch.nn.functional.pad(updown, (0, 0, 0, 0, 0, 5)) # pylint: disable=not-callable\n        if updown is not None:\n            network_add_weights(self, lora_weights=updown, deactivate=deactivate, device=device, bias=False)\n\n    if bias_backup:\n        if ex_bias is not None:\n            network_add_weights(self, lora_weights=ex_bias, deactivate=deactivate, device=device, bias=True)\n\n    if hasattr(self, \"qweight\") and hasattr(self, \"freeze\"):\n        self.freeze()\n\n    l.timer.apply += time.time() - t0\n\n\ndef network_apply_weights(self: Union[torch.nn.Conv2d, torch.nn.Linear, torch.nn.GroupNorm, torch.nn.LayerNorm, diffusers.models.lora.LoRACompatibleLinear, diffusers.models.lora.LoRACompatibleConv], updown: torch.Tensor, ex_bias: torch.Tensor, device: torch.device, deactivate: bool = False):\n    weights_backup = getattr(self, \"network_weights_backup\", None)\n    bias_backup = getattr(self, \"network_bias_backup\", None)\n    if weights_backup is None and bias_backup is None:\n        return\n    t0 = time.time()\n\n    if weights_backup is not None:\n        self.weight = None\n        if updown is not None and len(weights_backup.shape) == 4 and weights_backup.shape[1] == 9: # inpainting model. zero pad updown to make channel[1]  4 to 9\n            updown = torch.nn.functional.pad(updown, (0, 0, 0, 0, 0, 5)) # pylint: disable=not-callable\n        if updown is not None:\n            network_add_weights(self, model_weights=weights_backup, lora_weights=updown, deactivate=deactivate, device=device, bias=False)\n        else:\n            self.weight = torch.nn.Parameter(weights_backup.to(device), requires_grad=False)\n            if hasattr(self, \"sdnq_dequantizer_backup\"):\n                self.sdnq_dequantizer = self.sdnq_dequantizer_backup\n                self.scale = torch.nn.Parameter(self.sdnq_scale_backup.to(device), requires_grad=False)\n                if self.sdnq_zero_point_backup is not None:\n                    self.zero_point = torch.nn.Parameter(self.sdnq_zero_point_backup.to(device), requires_grad=False)\n                else:\n                    self.zero_point = None\n                if self.sdnq_svd_up_backup is not None:\n                    self.svd_up = torch.nn.Parameter(self.sdnq_svd_up_backup.to(device), requires_grad=False)\n                    self.svd_down = torch.nn.Parameter(self.sdnq_svd_down_backup.to(device), requires_grad=False)\n                else:\n                    self.svd_up, self.svd_down = None, None\n                del self.sdnq_dequantizer_backup, self.sdnq_scale_backup, self.sdnq_zero_point_backup, self.sdnq_svd_up_backup, self.sdnq_svd_down_backup\n\n    if bias_backup is not None:\n        self.bias = None\n        if ex_bias is not None:\n            network_add_weights(self, model_weights=bias_backup, lora_weights=ex_bias, deactivate=deactivate, device=device, bias=True)\n        else:\n            self.bias = torch.nn.Parameter(bias_backup.to(device), requires_grad=False)\n\n    if hasattr(self, \"qweight\") and hasattr(self, \"freeze\"):\n        self.freeze()\n\n    l.timer.apply += time.time() - t0\n"
  },
  {
    "path": "modules/lora/lora_common.py",
    "content": "from typing import List\nimport os\nfrom modules.lora import lora_timers\nfrom modules.lora import network_lora, network_hada, network_ia3, network_oft, network_lokr, network_full, network_norm, network_glora\n\n\ntimer = lora_timers.Timer()\ndebug = os.environ.get('SD_LORA_DEBUG', None) is not None\nmodule_types = [\n    network_lora.ModuleTypeLora(),\n    network_hada.ModuleTypeHada(),\n    network_ia3.ModuleTypeIa3(),\n    network_oft.ModuleTypeOFT(),\n    network_lokr.ModuleTypeLokr(),\n    network_full.ModuleTypeFull(),\n    network_norm.ModuleTypeNorm(),\n    network_glora.ModuleTypeGLora(),\n]\nloaded_networks: List = [] # no type due to circular import\npreviously_loaded_networks: List = [] # no type due to circular import\nextra_network_lora = None # initialized in extra_networks.py\n"
  },
  {
    "path": "modules/lora/lora_convert.py",
    "content": "import os\nimport re\nimport bisect\nfrom typing import Dict\nimport torch\nfrom modules import shared\n\n\ndebug = os.environ.get('SD_LORA_DEBUG', None) is not None\nsuffix_conversion = {\n    \"attentions\": {},\n    \"resnets\": {\n        \"conv1\": \"in_layers_2\",\n        \"conv2\": \"out_layers_3\",\n        \"norm1\": \"in_layers_0\",\n        \"norm2\": \"out_layers_0\",\n        \"time_emb_proj\": \"emb_layers_1\",\n        \"conv_shortcut\": \"skip_connection\",\n    }\n}\nre_digits = re.compile(r\"\\d+\")\nre_x_proj = re.compile(r\"(.*)_([qkv]_proj)$\")\nre_compiled = {}\n\n\ndef make_unet_conversion_map() -> Dict[str, str]:\n    unet_conversion_map_layer = []\n\n    for i in range(4):  # num_blocks is 3 in sdxl\n        # loop over downblocks/upblocks\n        for j in range(2):\n            # loop over resnets/attentions for downblocks\n            hf_down_res_prefix = f\"down_blocks.{i}.resnets.{j}.\"\n            sd_down_res_prefix = f\"input_blocks.{3 * i + j + 1}.0.\"\n            unet_conversion_map_layer.append((sd_down_res_prefix, hf_down_res_prefix))\n            if i < 3:\n                # no attention layers in down_blocks.3\n                hf_down_atn_prefix = f\"down_blocks.{i}.attentions.{j}.\"\n                sd_down_atn_prefix = f\"input_blocks.{3 * i + j + 1}.1.\"\n                unet_conversion_map_layer.append((sd_down_atn_prefix, hf_down_atn_prefix))\n\n        for j in range(3):\n            # loop over resnets/attentions for upblocks\n            hf_up_res_prefix = f\"up_blocks.{i}.resnets.{j}.\"\n            sd_up_res_prefix = f\"output_blocks.{3 * i + j}.0.\"\n            unet_conversion_map_layer.append((sd_up_res_prefix, hf_up_res_prefix))\n            # if i > 0: commentout for sdxl\n            # no attention layers in up_blocks.0\n            hf_up_atn_prefix = f\"up_blocks.{i}.attentions.{j}.\"\n            sd_up_atn_prefix = f\"output_blocks.{3 * i + j}.1.\"\n            unet_conversion_map_layer.append((sd_up_atn_prefix, hf_up_atn_prefix))\n\n        if i < 3:\n            # no downsample in down_blocks.3\n            hf_downsample_prefix = f\"down_blocks.{i}.downsamplers.0.conv.\"\n            sd_downsample_prefix = f\"input_blocks.{3 * (i + 1)}.0.op.\"\n            unet_conversion_map_layer.append((sd_downsample_prefix, hf_downsample_prefix))\n            # no upsample in up_blocks.3\n            hf_upsample_prefix = f\"up_blocks.{i}.upsamplers.0.\"\n            sd_upsample_prefix = f\"output_blocks.{3 * i + 2}.{2}.\"  # change for sdxl\n            unet_conversion_map_layer.append((sd_upsample_prefix, hf_upsample_prefix))\n\n    hf_mid_atn_prefix = \"mid_block.attentions.0.\"\n    sd_mid_atn_prefix = \"middle_block.1.\"\n    unet_conversion_map_layer.append((sd_mid_atn_prefix, hf_mid_atn_prefix))\n\n    for j in range(2):\n        hf_mid_res_prefix = f\"mid_block.resnets.{j}.\"\n        sd_mid_res_prefix = f\"middle_block.{2 * j}.\"\n        unet_conversion_map_layer.append((sd_mid_res_prefix, hf_mid_res_prefix))\n\n    unet_conversion_map_resnet = [\n        # (stable-diffusion, HF Diffusers)\n        (\"in_layers.0.\", \"norm1.\"),\n        (\"in_layers.2.\", \"conv1.\"),\n        (\"out_layers.0.\", \"norm2.\"),\n        (\"out_layers.3.\", \"conv2.\"),\n        (\"emb_layers.1.\", \"time_emb_proj.\"),\n        (\"skip_connection.\", \"conv_shortcut.\"),\n    ]\n\n    unet_conversion_map = []\n    for sd, hf in unet_conversion_map_layer:\n        if \"resnets\" in hf:\n            for sd_res, hf_res in unet_conversion_map_resnet:\n                unet_conversion_map.append((sd + sd_res, hf + hf_res))\n        else:\n            unet_conversion_map.append((sd, hf))\n\n    for j in range(2):\n        hf_time_embed_prefix = f\"time_embedding.linear_{j + 1}.\"\n        sd_time_embed_prefix = f\"time_embed.{j * 2}.\"\n        unet_conversion_map.append((sd_time_embed_prefix, hf_time_embed_prefix))\n\n    for j in range(2):\n        hf_label_embed_prefix = f\"add_embedding.linear_{j + 1}.\"\n        sd_label_embed_prefix = f\"label_emb.0.{j * 2}.\"\n        unet_conversion_map.append((sd_label_embed_prefix, hf_label_embed_prefix))\n\n    unet_conversion_map.append((\"input_blocks.0.0.\", \"conv_in.\"))\n    unet_conversion_map.append((\"out.0.\", \"conv_norm_out.\"))\n    unet_conversion_map.append((\"out.2.\", \"conv_out.\"))\n\n    sd_hf_conversion_map = {sd.replace(\".\", \"_\")[:-1]: hf.replace(\".\", \"_\")[:-1] for sd, hf in unet_conversion_map}\n    return sd_hf_conversion_map\n\n\nclass KeyConvert:\n    def __init__(self):\n        self.is_sdxl = True if shared.sd_model_type == \"sdxl\" else False\n        self.UNET_CONVERSION_MAP = make_unet_conversion_map()\n        self.LORA_PREFIX_UNET = \"lora_unet_\"\n        self.LORA_PREFIX_TEXT_ENCODER = \"lora_te_\"\n        self.OFT_PREFIX_UNET = \"oft_unet_\"\n        # SDXL: must starts with LORA_PREFIX_TEXT_ENCODER\n        self.LORA_PREFIX_TEXT_ENCODER1 = \"lora_te1_\"\n        self.LORA_PREFIX_TEXT_ENCODER2 = \"lora_te2_\"\n\n    def __call__(self, key):\n        if \"diffusion_model\" in key:  # Fix NTC Slider naming error\n            key = key.replace(\"diffusion_model\", \"lora_unet\")\n        map_keys = list(self.UNET_CONVERSION_MAP.keys())  # prefix of U-Net modules\n        map_keys.sort()\n        search_key = key.replace(self.LORA_PREFIX_UNET, \"\").replace(self.OFT_PREFIX_UNET, \"\").replace(self.LORA_PREFIX_TEXT_ENCODER1, \"\").replace(self.LORA_PREFIX_TEXT_ENCODER2, \"\")\n        position = bisect.bisect_right(map_keys, search_key)\n        map_key = map_keys[position - 1]\n        if search_key.startswith(map_key):\n            key = key.replace(map_key, self.UNET_CONVERSION_MAP[map_key]).replace(\"oft\", \"lora\") # pylint: disable=unsubscriptable-object\n        if \"lycoris\" in key and \"transformer\" in key:\n            key = key.replace(\"lycoris\", \"lora_transformer\")\n        sd_module = shared.sd_model.network_layer_mapping.get(key, None)\n        if sd_module is None:\n            sd_module = shared.sd_model.network_layer_mapping.get(key.replace(\"guidance\", \"timestep\"), None)  # FLUX1 fix\n        if debug and sd_module is None:\n            raise RuntimeError(f\"LoRA key not found in network_layer_mapping: key={key} mapping={shared.sd_model.network_layer_mapping.keys()}\")\n        return key, sd_module\n\n\n# Taken from https://github.com/huggingface/diffusers/blob/main/src/diffusers/loaders/lora_conversion_utils.py\n# Modified from 'lora_A' and 'lora_B' to 'lora_down' and 'lora_up'\n# Added early exit\n# The utilities under `_convert_kohya_flux_lora_to_diffusers()`\n# are taken from https://github.com/kohya-ss/sd-scripts/blob/a61cf73a5cb5209c3f4d1a3688dd276a4dfd1ecb/networks/convert_flux_lora.py\n# All credits go to `kohya-ss`.\ndef _convert_to_ai_toolkit(sds_sd, ait_sd, sds_key, ait_key):\n    if sds_key + \".lora_down.weight\" not in sds_sd:\n        return\n    down_weight = sds_sd.pop(sds_key + \".lora_down.weight\")\n\n    # scale weight by alpha and dim\n    rank = down_weight.shape[0]\n    alpha = sds_sd.pop(sds_key + \".alpha\").item()  # alpha is scalar\n    scale = alpha / rank  # LoRA is scaled by 'alpha / rank' in forward pass, so we need to scale it back here\n\n    # calculate scale_down and scale_up to keep the same value. if scale is 4, scale_down is 2 and scale_up is 2\n    scale_down = scale\n    scale_up = 1.0\n    while scale_down * 2 < scale_up:\n        scale_down *= 2\n        scale_up /= 2\n\n    ait_sd[ait_key + \".lora_down.weight\"] = down_weight * scale_down\n    ait_sd[ait_key + \".lora_up.weight\"] = sds_sd.pop(sds_key + \".lora_up.weight\") * scale_up\n\ndef _convert_to_ai_toolkit_cat(sds_sd, ait_sd, sds_key, ait_keys, dims=None):\n    if sds_key + \".lora_down.weight\" not in sds_sd:\n        return\n    down_weight = sds_sd.pop(sds_key + \".lora_down.weight\")\n    up_weight = sds_sd.pop(sds_key + \".lora_up.weight\")\n    sd_lora_rank = down_weight.shape[0]\n\n    # scale weight by alpha and dim\n    alpha = sds_sd.pop(sds_key + \".alpha\")\n    scale = alpha / sd_lora_rank\n\n    # calculate scale_down and scale_up\n    scale_down = scale\n    scale_up = 1.0\n    while scale_down * 2 < scale_up:\n        scale_down *= 2\n        scale_up /= 2\n\n    down_weight = down_weight * scale_down\n    up_weight = up_weight * scale_up\n\n    # calculate dims if not provided\n    num_splits = len(ait_keys)\n    if dims is None:\n        dims = [up_weight.shape[0] // num_splits] * num_splits\n    else:\n        assert sum(dims) == up_weight.shape[0]\n\n    # check upweight is sparse or not\n    is_sparse = False\n    if sd_lora_rank % num_splits == 0:\n        ait_rank = sd_lora_rank // num_splits\n        is_sparse = True\n        i = 0\n        for j in range(len(dims)):\n            for k in range(len(dims)):\n                if j == k:\n                    continue\n                is_sparse = is_sparse and torch.all(\n                    up_weight[i : i + dims[j], k * ait_rank : (k + 1) * ait_rank] == 0\n                )\n            i += dims[j]\n\n    # make ai-toolkit weight\n    ait_down_keys = [k + \".lora_down.weight\" for k in ait_keys]\n    ait_up_keys = [k + \".lora_up.weight\" for k in ait_keys]\n    if not is_sparse:\n        # down_weight is copied to each split\n        ait_sd.update({k: down_weight for k in ait_down_keys})\n\n        # up_weight is split to each split\n        ait_sd.update({k: v for k, v in zip(ait_up_keys, torch.split(up_weight, dims, dim=0))})  # noqa: C416 # pylint: disable=unnecessary-comprehension\n    else:\n        # down_weight is chunked to each split\n        ait_sd.update({k: v for k, v in zip(ait_down_keys, torch.chunk(down_weight, num_splits, dim=0))})  # noqa: C416 # pylint: disable=unnecessary-comprehension\n\n        # up_weight is sparse: only non-zero values are copied to each split\n        i = 0\n        for j in range(len(dims)):\n            ait_sd[ait_up_keys[j]] = up_weight[i : i + dims[j], j * ait_rank : (j + 1) * ait_rank].contiguous()\n            i += dims[j]\n\ndef _convert_text_encoder_lora_key(key, lora_name):\n    \"\"\"\n    Converts a text encoder LoRA key to a Diffusers compatible key.\n    \"\"\"\n    if lora_name.startswith((\"lora_te_\", \"lora_te1_\")):\n        key_to_replace = \"lora_te_\" if lora_name.startswith(\"lora_te_\") else \"lora_te1_\"\n    else:\n        key_to_replace = \"lora_te2_\"\n\n    diffusers_name = key.replace(key_to_replace, \"\").replace(\"_\", \".\")\n    diffusers_name = diffusers_name.replace(\"text.model\", \"text_model\")\n    diffusers_name = diffusers_name.replace(\"self.attn\", \"self_attn\")\n    diffusers_name = diffusers_name.replace(\"q.proj.lora\", \"to_q_lora\")\n    diffusers_name = diffusers_name.replace(\"k.proj.lora\", \"to_k_lora\")\n    diffusers_name = diffusers_name.replace(\"v.proj.lora\", \"to_v_lora\")\n    diffusers_name = diffusers_name.replace(\"out.proj.lora\", \"to_out_lora\")\n    diffusers_name = diffusers_name.replace(\"text.projection\", \"text_projection\")\n\n    if \"self_attn\" in diffusers_name or \"text_projection\" in diffusers_name:\n        pass\n    elif \"mlp\" in diffusers_name:\n        # Be aware that this is the new diffusers convention and the rest of the code might\n        # not utilize it yet.\n        diffusers_name = diffusers_name.replace(\".lora.\", \".lora_linear_layer.\")\n    return diffusers_name\n\ndef _convert_kohya_flux_lora_to_diffusers(state_dict):\n    def _convert_sd_scripts_to_ai_toolkit(sds_sd):\n        ait_sd = {}\n        for i in range(19):\n            _convert_to_ai_toolkit(\n                sds_sd,\n                ait_sd,\n                f\"lora_unet_double_blocks_{i}_img_attn_proj\",\n                f\"transformer.transformer_blocks.{i}.attn.to_out.0\",\n            )\n            _convert_to_ai_toolkit_cat(\n                sds_sd,\n                ait_sd,\n                f\"lora_unet_double_blocks_{i}_img_attn_qkv\",\n                [\n                    f\"transformer.transformer_blocks.{i}.attn.to_q\",\n                    f\"transformer.transformer_blocks.{i}.attn.to_k\",\n                    f\"transformer.transformer_blocks.{i}.attn.to_v\",\n                ],\n            )\n            _convert_to_ai_toolkit(\n                sds_sd,\n                ait_sd,\n                f\"lora_unet_double_blocks_{i}_img_mlp_0\",\n                f\"transformer.transformer_blocks.{i}.ff.net.0.proj\",\n            )\n            _convert_to_ai_toolkit(\n                sds_sd,\n                ait_sd,\n                f\"lora_unet_double_blocks_{i}_img_mlp_2\",\n                f\"transformer.transformer_blocks.{i}.ff.net.2\",\n            )\n            _convert_to_ai_toolkit(\n                sds_sd,\n                ait_sd,\n                f\"lora_unet_double_blocks_{i}_img_mod_lin\",\n                f\"transformer.transformer_blocks.{i}.norm1.linear\",\n            )\n            _convert_to_ai_toolkit(\n                sds_sd,\n                ait_sd,\n                f\"lora_unet_double_blocks_{i}_txt_attn_proj\",\n                f\"transformer.transformer_blocks.{i}.attn.to_add_out\",\n            )\n            _convert_to_ai_toolkit_cat(\n                sds_sd,\n                ait_sd,\n                f\"lora_unet_double_blocks_{i}_txt_attn_qkv\",\n                [\n                    f\"transformer.transformer_blocks.{i}.attn.add_q_proj\",\n                    f\"transformer.transformer_blocks.{i}.attn.add_k_proj\",\n                    f\"transformer.transformer_blocks.{i}.attn.add_v_proj\",\n                ],\n            )\n            _convert_to_ai_toolkit(\n                sds_sd,\n                ait_sd,\n                f\"lora_unet_double_blocks_{i}_txt_mlp_0\",\n                f\"transformer.transformer_blocks.{i}.ff_context.net.0.proj\",\n            )\n            _convert_to_ai_toolkit(\n                sds_sd,\n                ait_sd,\n                f\"lora_unet_double_blocks_{i}_txt_mlp_2\",\n                f\"transformer.transformer_blocks.{i}.ff_context.net.2\",\n            )\n            _convert_to_ai_toolkit(\n                sds_sd,\n                ait_sd,\n                f\"lora_unet_double_blocks_{i}_txt_mod_lin\",\n                f\"transformer.transformer_blocks.{i}.norm1_context.linear\",\n            )\n\n        for i in range(38):\n            _convert_to_ai_toolkit_cat(\n                sds_sd,\n                ait_sd,\n                f\"lora_unet_single_blocks_{i}_linear1\",\n                [\n                    f\"transformer.single_transformer_blocks.{i}.attn.to_q\",\n                    f\"transformer.single_transformer_blocks.{i}.attn.to_k\",\n                    f\"transformer.single_transformer_blocks.{i}.attn.to_v\",\n                    f\"transformer.single_transformer_blocks.{i}.proj_mlp\",\n                ],\n                dims=[3072, 3072, 3072, 12288],\n            )\n            _convert_to_ai_toolkit(\n                sds_sd,\n                ait_sd,\n                f\"lora_unet_single_blocks_{i}_linear2\",\n                f\"transformer.single_transformer_blocks.{i}.proj_out\",\n            )\n            _convert_to_ai_toolkit(\n                sds_sd,\n                ait_sd,\n                f\"lora_unet_single_blocks_{i}_modulation_lin\",\n                f\"transformer.single_transformer_blocks.{i}.norm.linear\",\n            )\n\n        if len(sds_sd) > 0:\n            return None\n\n        return ait_sd\n\n    return _convert_sd_scripts_to_ai_toolkit(state_dict)\n\ndef _convert_kohya_sd3_lora_to_diffusers(state_dict):\n    def _convert_sd_scripts_to_ai_toolkit(sds_sd):\n        ait_sd = {}\n        for i in range(38):\n            _convert_to_ai_toolkit_cat(\n                sds_sd,\n                ait_sd,\n                f\"lora_unet_joint_blocks_{i}_context_block_attn_qkv\",\n                [\n                    f\"transformer.transformer_blocks.{i}.attn.to_q\",\n                    f\"transformer.transformer_blocks.{i}.attn.to_k\",\n                    f\"transformer.transformer_blocks.{i}.attn.to_v\",\n                ],\n            )\n            _convert_to_ai_toolkit(\n                sds_sd,\n                ait_sd,\n                f\"lora_unet_joint_blocks_{i}_context_block_mlp_fc1\",\n                f\"transformer.transformer_blocks.{i}.ff_context.net.0.proj\",\n            )\n            _convert_to_ai_toolkit(\n                sds_sd,\n                ait_sd,\n                f\"lora_unet_joint_blocks_{i}_context_block_mlp_fc2\",\n                f\"transformer.transformer_blocks.{i}.ff_context.net.2\",\n            )\n            _convert_to_ai_toolkit(\n                sds_sd,\n                ait_sd,\n                f\"lora_unet_joint_blocks_{i}_x_block_mlp_fc1\",\n                f\"transformer.transformer_blocks.{i}.ff.net.0.proj\",\n            )\n            _convert_to_ai_toolkit(\n                sds_sd,\n                ait_sd,\n                f\"lora_unet_joint_blocks_{i}_x_block_mlp_fc2\",\n                f\"transformer.transformer_blocks.{i}.ff.net.2\",\n            )\n            _convert_to_ai_toolkit(\n                sds_sd,\n                ait_sd,\n                f\"lora_unet_joint_blocks_{i}_context_block_adaLN_modulation_1\",\n                f\"transformer.transformer_blocks.{i}.norm1_context.linear\",\n            )\n            _convert_to_ai_toolkit(\n                sds_sd,\n                ait_sd,\n                f\"lora_unet_joint_blocks_{i}_x_block_adaLN_modulation_1\",\n                f\"transformer.transformer_blocks.{i}.norm1.linear\",\n            )\n            _convert_to_ai_toolkit(\n                sds_sd,\n                ait_sd,\n                f\"lora_unet_joint_blocks_{i}_context_block_attn_proj\",\n                f\"transformer.transformer_blocks.{i}.attn.to_add_out\",\n            )\n            _convert_to_ai_toolkit(\n                sds_sd,\n                ait_sd,\n                f\"lora_unet_joint_blocks_{i}_x_block_attn_proj\",\n                f\"transformer.transformer_blocks.{i}.attn.to_out_0\",\n            )\n\n            _convert_to_ai_toolkit_cat(\n                sds_sd,\n                ait_sd,\n                f\"lora_unet_joint_blocks_{i}_x_block_attn_qkv\",\n                [\n                    f\"transformer.transformer_blocks.{i}.attn.add_q_proj\",\n                    f\"transformer.transformer_blocks.{i}.attn.add_k_proj\",\n                    f\"transformer.transformer_blocks.{i}.attn.add_v_proj\",\n                ],\n            )\n        remaining_keys = list(sds_sd.keys())\n        te_state_dict = {}\n        if remaining_keys:\n            if not all(k.startswith(\"lora_te1\") for k in remaining_keys):\n                raise ValueError(f\"Incompatible keys detected: \\n\\n {', '.join(remaining_keys)}\")\n            for key in remaining_keys:\n                if not key.endswith(\"lora_down.weight\"):\n                    continue\n\n                lora_name = key.split(\".\")[0]\n                lora_name_up = f\"{lora_name}.lora_up.weight\"\n                lora_name_alpha = f\"{lora_name}.alpha\"\n                diffusers_name = _convert_text_encoder_lora_key(key, lora_name)\n\n                sd_lora_rank = 1\n                if lora_name.startswith((\"lora_te_\", \"lora_te1_\")):\n                    down_weight = sds_sd.pop(key)\n                    sd_lora_rank = down_weight.shape[0]\n                    te_state_dict[diffusers_name] = down_weight\n                    te_state_dict[diffusers_name.replace(\".down.\", \".up.\")] = sds_sd.pop(lora_name_up)\n\n                if lora_name_alpha in sds_sd:\n                    alpha = sds_sd.pop(lora_name_alpha).item()\n                    scale = alpha / sd_lora_rank\n\n                    scale_down = scale\n                    scale_up = 1.0\n                    while scale_down * 2 < scale_up:\n                        scale_down *= 2\n                        scale_up /= 2\n\n                    te_state_dict[diffusers_name] *= scale_down\n                    te_state_dict[diffusers_name.replace(\".down.\", \".up.\")] *= scale_up\n\n        if len(sds_sd) > 0:\n            print(f\"Unsupported keys for ai-toolkit: {sds_sd.keys()}\")\n\n        if te_state_dict:\n            te_state_dict = {f\"text_encoder.{module_name}\": params for module_name, params in te_state_dict.items()}\n\n        new_state_dict = {**ait_sd, **te_state_dict}\n        return new_state_dict\n\n    return _convert_sd_scripts_to_ai_toolkit(state_dict)\n\n\ndef assign_network_names_to_compvis_modules(sd_model):\n    if sd_model is None:\n        return\n    sd_model = getattr(shared.sd_model, \"pipe\", shared.sd_model)  # wrapped model compatiblility\n    network_layer_mapping = {}\n    if hasattr(sd_model, 'text_encoder') and sd_model.text_encoder is not None:\n        for name, module in sd_model.text_encoder.named_modules():\n            prefix = \"lora_te1_\" if hasattr(sd_model, 'text_encoder_2') else \"lora_te_\"\n            network_name = prefix + name.replace(\".\", \"_\")\n            network_layer_mapping[network_name] = module\n            module.network_layer_name = network_name\n    if hasattr(sd_model, 'text_encoder_2'):\n        for name, module in sd_model.text_encoder_2.named_modules():\n            network_name = \"lora_te2_\" + name.replace(\".\", \"_\")\n            network_layer_mapping[network_name] = module\n            module.network_layer_name = network_name\n    if hasattr(sd_model, 'unet'):\n        for name, module in sd_model.unet.named_modules():\n            network_name = \"lora_unet_\" + name.replace(\".\", \"_\")\n            network_layer_mapping[network_name] = module\n            module.network_layer_name = network_name\n    if hasattr(sd_model, 'transformer'):\n        for name, module in sd_model.transformer.named_modules():\n            network_name = \"lora_transformer_\" + name.replace(\".\", \"_\")\n            network_layer_mapping[network_name] = module\n            if \"norm\" in network_name and \"linear\" not in network_name and shared.sd_model_type != \"sd3\":\n                continue\n            module.network_layer_name = network_name\n    shared.sd_model.network_layer_mapping = network_layer_mapping\n"
  },
  {
    "path": "modules/lora/lora_diffusers.py",
    "content": "from typing import Union\nimport os\nimport time\nimport diffusers\nfrom modules import shared, errors\nfrom modules.lora import network\nfrom modules.lora import lora_common as l\n\n\ndiffuser_loaded = []\ndiffuser_scales = []\n\n\ndef load_per_module(sd_model: diffusers.DiffusionPipeline, filename: str, adapter_name: str, lora_modules: list[str]):\n    shared.log.debug(f'LoRA load: modules={lora_modules}')\n    try:\n        state_dict = sd_model.lora_state_dict(filename)\n        if isinstance(state_dict, tuple) and len(state_dict) == 2:\n            state_dict, network_alphas = state_dict\n        else:\n            network_alphas = {}\n    except Exception as e:\n        shared.log.error(f'LoRA load: {e}')\n        if l.debug:\n            errors.display(e, \"LoRA\")\n        return None\n    for lora_module in lora_modules:\n        if lora_module == 'transformer':\n            if hasattr(sd_model, 'transformer') and sd_model.transformer is not None:\n                sd_model.load_lora_into_transformer(state_dict, transformer=sd_model.transformer, adapter_name=adapter_name)\n            else:\n                shared.log.warning(f'LoRA load: requested={lora_module} missing')\n        elif lora_module == 'transformer_2':\n            if hasattr(sd_model, 'transformer_2') and sd_model.transformer_2 is not None:\n                sd_model.load_lora_into_transformer(state_dict, transformer=sd_model.transformer_2, adapter_name=adapter_name)\n            else:\n                shared.log.warning(f'LoRA load: requested={lora_module} missing')\n        elif lora_module == 'unet':\n            if hasattr(sd_model, 'unet') and sd_model.unet is not None:\n                sd_model.load_lora_into_unet(state_dict, network_alphas, unet=sd_model.unet, adapter_name=adapter_name)\n            else:\n                shared.log.warning(f'LoRA load: requested={lora_module} missing')\n        elif lora_module == 'text_encoder' or lora_module == 'te':\n            if hasattr(sd_model, 'text_encoder') and sd_model.text_encoder is not None:\n                sd_model.load_lora_into_text_encoder(state_dict, network_alphas, text_encoder=sd_model.text_encoder, adapter_name=adapter_name)\n            else:\n                shared.log.warning(f'LoRA load: requested={lora_module} missing')\n        else:\n            shared.log.warning(f'LoRA load: requested={lora_module} unknown')\n    return adapter_name\n\n\ndef load_diffusers(name: str, network_on_disk: network.NetworkOnDisk, lora_scale:float=shared.opts.extra_networks_default_multiplier, lora_module=None) -> Union[network.Network, None]:\n    t0 = time.time()\n    name = name.replace(\".\", \"_\")\n    sd_model: diffusers.DiffusionPipeline = getattr(shared.sd_model, \"pipe\", shared.sd_model)\n    shared.log.debug(f'Network load: type=LoRA name=\"{name}\" file=\"{network_on_disk.filename}\" detected={network_on_disk.sd_version} method=diffusers scale={lora_scale} fuse={shared.opts.lora_fuse_native}:{shared.opts.lora_fuse_diffusers}')\n    if not hasattr(sd_model, 'load_lora_weights'):\n        shared.log.error(f'Network load: type=LoRA class={sd_model.__class__} does not implement load lora')\n        return None\n    try:\n        if lora_module is not None and isinstance(lora_module, list) and len(lora_module) > 0:\n            name = load_per_module(sd_model, network_on_disk.filename, adapter_name=name, lora_modules=lora_module)\n            sd_model._lora_partial = True # pylint: disable=protected-access\n        else:\n            sd_model.load_lora_weights(network_on_disk.filename, adapter_name=name)\n    except Exception as e:\n        if 'already in use' in str(e):\n            pass\n        else:\n            if 'following keys have not been correctly renamed' in str(e):\n                shared.log.error(f'Network load: type=LoRA name=\"{name}\" diffusers unsupported format')\n            elif 'object has no attribute' in str(e):\n                shared.log.error(f'Network load: type=LoRA name=\"{name}\" diffusers empty module')\n            else:\n                shared.log.error(f'Network load: type=LoRA name=\"{name}\" {e}')\n            if l.debug:\n                errors.display(e, \"LoRA\")\n            return None\n    if name is None:\n        return None\n    if name not in diffuser_loaded:\n        list_adapters = sd_model.get_list_adapters()\n        list_adapters = [adapter for adapters in list_adapters.values() for adapter in adapters]\n        if name not in list_adapters:\n            shared.log.error(f'Network load: type=LoRA name=\"{name}\" adapters={list_adapters} not loaded')\n        else:\n            diffuser_loaded.append(name)\n            diffuser_scales.append(lora_scale)\n    net = network.Network(name, network_on_disk)\n    net.mtime = os.path.getmtime(network_on_disk.filename)\n    l.timer.activate += time.time() - t0\n    return net\n"
  },
  {
    "path": "modules/lora/lora_extract.py",
    "content": "import os\nimport time\nimport json\nimport datetime\nimport torch\nfrom safetensors.torch import save_file\nimport gradio as gr\nfrom rich import progress as rp\nfrom modules import shared, devices\nfrom modules.ui_common import create_refresh_button\nfrom modules.call_queue import wrap_gradio_gpu_call\n\n\nclass SVDHandler:\n    def __init__(self, maxrank=0, rank_ratio=1):\n        self.network_name: str = None\n        self.U: torch.Tensor = None\n        self.S: torch.Tensor = None\n        self.Vh: torch.Tensor = None\n        self.maxrank: int = maxrank\n        self.rank_ratio: float = rank_ratio\n        self.rank: int = 0\n        self.out_size: int = None\n        self.in_size: int = None\n        self.kernel_size: tuple[int, int] = None\n        self.conv2d: bool = False\n\n    def decompose(self, weight, backupweight):\n        self.conv2d = len(weight.size()) == 4\n        self.kernel_size = None if not self.conv2d else weight.size()[2:4]\n        self.out_size, self.in_size = weight.size()[0:2]\n        diffweight = weight.clone().to(devices.device)\n        diffweight -= backupweight.to(devices.device)\n        if self.conv2d:\n            if self.conv2d and self.kernel_size != (1, 1):\n                diffweight = diffweight.flatten(start_dim=1)\n            else:\n                diffweight = diffweight.squeeze()\n        self.U, self.S, self.Vh = torch.svd_lowrank(diffweight.to(device=devices.device, dtype=torch.float), self.maxrank, 2)\n        # del diffweight\n        self.U = self.U.to(device=devices.cpu, dtype=torch.bfloat16)\n        self.S = self.S.to(device=devices.cpu, dtype=torch.bfloat16)\n        self.Vh = self.Vh.t().to(device=devices.cpu, dtype=torch.bfloat16)  # svd_lowrank outputs a transposed matrix\n\n    def findrank(self):\n        if self.rank_ratio < 1:\n            S_squared = self.S.pow(2)\n            S_fro_sq = float(torch.sum(S_squared))\n            sum_S_squared = torch.cumsum(S_squared, dim=0) / S_fro_sq\n            index = int(torch.searchsorted(sum_S_squared, self.rank_ratio ** 2)) + 1\n            index = max(1, min(index, len(self.S) - 1))\n            self.rank = index\n            if self.maxrank > 0:\n                self.rank = min(self.rank, self.maxrank)\n        else:\n            self.rank = min(self.in_size, self.out_size, self.maxrank)\n\n    def makeweights(self):\n        self.findrank()\n        up = self.U[:, :self.rank] @ torch.diag(self.S[:self.rank])\n        down = self.Vh[:self.rank, :]\n        if self.conv2d and self.kernel_size is not None:\n            up = up.reshape(self.out_size, self.rank, 1, 1)\n            down = down.reshape(self.rank, self.in_size, self.kernel_size[0], self.kernel_size[1]) # pylint: disable=unsubscriptable-object\n        return_dict = {f'{self.network_name}.lora_up.weight': up.contiguous(),\n                       f'{self.network_name}.lora_down.weight': down.contiguous(),\n                       f'{self.network_name}.alpha': torch.tensor(down.shape[0]),\n                       }\n        return return_dict\n\n\ndef loaded_lora():\n    if not shared.sd_loaded:\n        return \"\"\n    loaded = set()\n    if hasattr(shared.sd_model, 'unet'):\n        for _name, module in shared.sd_model.unet.named_modules():\n            current = getattr(module, \"network_current_names\", None)\n            if current is not None:\n                current = [item[0] for item in current]\n                loaded.update(current)\n    return list(loaded)\n\n\ndef loaded_lora_str():\n    return \", \".join(loaded_lora())\n\n\ndef make_meta(fn, maxrank, rank_ratio):\n    meta = {\n        \"model_spec.sai_model_spec\": \"1.0.0\",\n        \"model_spec.title\": os.path.splitext(os.path.basename(fn))[0],\n        \"model_spec.author\": \"SD.Next\",\n        \"model_spec.implementation\": \"https://github.com/vladmandic/sdnext\",\n        \"model_spec.date\": datetime.datetime.now().astimezone().replace(microsecond=0).isoformat(),\n        \"model_spec.base_model\": shared.opts.sd_model_checkpoint,\n        \"model_spec.dtype\": str(devices.dtype),\n        \"model_spec.base_lora\": json.dumps(loaded_lora()),\n        \"model_spec.config\": f\"maxrank={maxrank} rank_ratio={rank_ratio}\",\n    }\n    if shared.sd_model_type == \"sdxl\":\n        meta[\"model_spec.architecture\"] = \"stable-diffusion-xl-v1-base/lora\" # sai standard\n        meta[\"ss_base_model_version\"] = \"sdxl_base_v1-0\" # kohya standard\n    elif shared.sd_model_type == \"sd\":\n        meta[\"model_spec.architecture\"] = \"stable-diffusion-v1/lora\"\n        meta[\"ss_base_model_version\"] = \"sd_v1\"\n    elif shared.sd_model_type == \"f1\":\n        meta[\"model_spec.architecture\"] = \"flux-1-dev/lora\"\n        meta[\"ss_base_model_version\"] = \"flux1\"\n    elif shared.sd_model_type == \"chroma\":\n        meta[\"model_spec.architecture\"] = \"chroma/lora\"\n        meta[\"ss_base_model_version\"] = \"chroma\"\n    elif shared.sd_model_type == \"sc\":\n        meta[\"model_spec.architecture\"] = \"stable-cascade-v1-prior/lora\"\n    return meta\n\n\ndef make_lora(fn, maxrank, auto_rank, rank_ratio, modules, overwrite):\n    if not shared.sd_loaded:\n        msg = \"LoRA extract: model not loaded\"\n        shared.log.warning(msg)\n        yield msg\n        return\n    if loaded_lora() == \"\":\n        msg = \"LoRA extract: no LoRA detected\"\n        shared.log.warning(msg)\n        yield msg\n        return\n    if not fn:\n        msg = \"LoRA extract: target filename required\"\n        shared.log.warning(msg)\n        yield msg\n        return\n    t0 = time.time()\n    maxrank = int(maxrank)\n    rank_ratio = 1 if not auto_rank else rank_ratio\n    shared.log.debug(f'LoRA extract: modules={modules} maxrank={maxrank} auto={auto_rank} ratio={rank_ratio} fn=\"{fn}\"')\n    jobid = shared.state.begin('LoRA extract')\n\n    with rp.Progress(rp.TextColumn('[cyan]LoRA extract'), rp.BarColumn(), rp.TaskProgressColumn(), rp.TimeRemainingColumn(), rp.TimeElapsedColumn(), rp.TextColumn('[cyan]{task.description}'), console=shared.console) as progress:\n\n        if 'te' in modules and getattr(shared.sd_model, 'text_encoder', None) is not None:\n            modules = shared.sd_model.text_encoder.named_modules()\n            task = progress.add_task(description=\"te1 decompose\", total=len(list(modules)))\n            for name, module in shared.sd_model.text_encoder.named_modules():\n                progress.update(task, advance=1)\n                weights_backup = getattr(module, \"network_weights_backup\", None)\n                if weights_backup is None or getattr(module, \"network_current_names\", None) is None:\n                    continue\n                prefix = \"lora_te1_\" if hasattr(shared.sd_model, 'text_encoder_2') else \"lora_te_\"\n                module.svdhandler = SVDHandler(maxrank, rank_ratio)\n                module.svdhandler.network_name = prefix + name.replace(\".\", \"_\")\n                with devices.inference_context():\n                    module.svdhandler.decompose(module.weight, weights_backup)\n            progress.remove_task(task)\n        t1 = time.time()\n\n        if 'te' in modules and getattr(shared.sd_model, 'text_encoder_2', None) is not None:\n            modules = shared.sd_model.text_encoder_2.named_modules()\n            task = progress.add_task(description=\"te2 decompose\", total=len(list(modules)))\n            for name, module in shared.sd_model.text_encoder_2.named_modules():\n                progress.update(task, advance=1)\n                weights_backup = getattr(module, \"network_weights_backup\", None)\n                if weights_backup is None or getattr(module, \"network_current_names\", None) is None:\n                    continue\n                module.svdhandler = SVDHandler(maxrank, rank_ratio)\n                module.svdhandler.network_name = \"lora_te2_\" + name.replace(\".\", \"_\")\n                with devices.inference_context():\n                    module.svdhandler.decompose(module.weight, weights_backup)\n            progress.remove_task(task)\n        t2 = time.time()\n\n        if 'unet' in modules and getattr(shared.sd_model, 'unet', None) is not None:\n            modules = shared.sd_model.unet.named_modules()\n            task = progress.add_task(description=\"unet decompose\", total=len(list(modules)))\n            for name, module in shared.sd_model.unet.named_modules():\n                progress.update(task, advance=1)\n                weights_backup = getattr(module, \"network_weights_backup\", None)\n                if weights_backup is None or getattr(module, \"network_current_names\", None) is None:\n                    continue\n                module.svdhandler = SVDHandler(maxrank, rank_ratio)\n                module.svdhandler.network_name = \"lora_unet_\" + name.replace(\".\", \"_\")\n                with devices.inference_context():\n                    module.svdhandler.decompose(module.weight, weights_backup)\n            progress.remove_task(task)\n        t3 = time.time()\n\n        # TODO: lora: support pre-quantized flux\n        # if 'te' in modules and getattr(shared.sd_model, 'transformer', None) is not None:\n        #     for name, module in shared.sd_model.transformer.named_modules():\n        #         if \"norm\" in name and \"linear\" not in name:\n        #             continue\n        #         weights_backup = getattr(module, \"network_weights_backup\", None)\n        #         if weights_backup is None:\n        #             continue\n        #         module.svdhandler = SVDHandler()\n        #         module.svdhandler.network_name = \"lora_transformer_\" + name.replace(\".\", \"_\")\n        #         module.svdhandler.decompose(module.weight, weights_backup)\n        #         module.svdhandler.findrank(rank, rank_ratio)\n\n        lora_state_dict = {}\n        for sub in ['text_encoder', 'text_encoder_2', 'unet', 'transformer']:\n            submodel = getattr(shared.sd_model, sub, None)\n            if submodel is not None:\n                modules = submodel.named_modules()\n                task = progress.add_task(description=f\"{sub} exctract\", total=len(list(modules)))\n                for _name, module in submodel.named_modules():\n                    progress.update(task, advance=1)\n                    if not hasattr(module, \"svdhandler\"):\n                        continue\n                    lora_state_dict.update(module.svdhandler.makeweights())\n                    del module.svdhandler\n                progress.remove_task(task)\n        t4 = time.time()\n\n    if not os.path.isabs(fn):\n        fn = os.path.join(shared.cmd_opts.lora_dir, fn)\n    if not fn.endswith('.safetensors'):\n        fn += '.safetensors'\n    if os.path.exists(fn):\n        if overwrite:\n            os.remove(fn)\n        else:\n            msg = f'LoRA extract: fn=\"{fn}\" file exists'\n            shared.log.warning(msg)\n            yield msg\n            return\n\n    shared.state.end(jobid)\n    meta = make_meta(fn, maxrank, rank_ratio)\n    shared.log.debug(f'LoRA metadata: {meta}')\n    try:\n        save_file(tensors=lora_state_dict, metadata=meta, filename=fn)\n    except Exception as e:\n        msg = f'LoRA extract error: fn=\"{fn}\" {e}'\n        shared.log.error(msg)\n        yield msg\n        return\n    t5 = time.time()\n    shared.log.debug(f'LoRA extract: time={t5-t0:.2f} te1={t1-t0:.2f} te2={t2-t1:.2f} unet={t3-t2:.2f} save={t5-t4:.2f}')\n    keys = list(lora_state_dict.keys())\n    msg = f'LoRA extract: fn=\"{fn}\" keys={len(keys)}'\n    shared.log.info(msg)\n    yield msg\n\n\ndef create_ui():\n    def gr_show(visible=True):\n        return {\"visible\": visible, \"__type__\": \"update\"}\n\n    with gr.Tab(label=\"Extract LoRA\"):\n        with gr.Row():\n            gr.HTML('<h2>&nbspExtract currently loaded LoRA(s)<br></h2>')\n        with gr.Row():\n            loaded = gr.Textbox(placeholder=\"Press refresh to query loaded LoRA\", label=\"Loaded LoRA\", interactive=False)\n            create_refresh_button(loaded, lambda: None, lambda: {'value': loaded_lora_str()}, \"lora_extract_refresh\")\n        with gr.Group():\n            with gr.Row():\n                modules = gr.CheckboxGroup(label=\"Modules to extract\", value=['unet'], choices=['te', 'unet'])\n            with gr.Row():\n                auto_rank = gr.Checkbox(value=False, label=\"Automatically determine rank\")\n                rank_ratio = gr.Slider(label=\"Autorank ratio\", value=1, minimum=0, maximum=1, step=0.05, visible=False)\n                rank = gr.Slider(label=\"Maximum rank\", value=32, minimum=1, maximum=256)\n        with gr.Row():\n            filename = gr.Textbox(label=\"LoRA target filename\")\n            overwrite = gr.Checkbox(value=False, label=\"Overwrite existing file\")\n        with gr.Row():\n            extract = gr.Button(value=\"Extract LoRA\", variant='primary')\n            status = gr.HTML(value=\"\", show_label=False)\n\n        auto_rank.change(fn=lambda x: gr_show(x), inputs=[auto_rank], outputs=[rank_ratio])\n        extract.click(\n            fn=wrap_gradio_gpu_call(make_lora, extra_outputs=[], name='LoRA'),\n            inputs=[filename, rank, auto_rank, rank_ratio, modules, overwrite],\n            outputs=[status]\n        )\n"
  },
  {
    "path": "modules/lora/lora_load.py",
    "content": "from typing import Union\nimport os\nimport time\nimport concurrent\nfrom modules import shared, errors, sd_models, sd_models_compile, files_cache\nfrom modules.lora import network, lora_overrides, lora_convert, lora_diffusers\nfrom modules.lora import lora_common as l\n\n\nlora_cache = {}\navailable_networks = {}\navailable_network_aliases = {}\nforbidden_network_aliases = {}\navailable_network_hash_lookup = {}\ndump_lora_keys = os.environ.get('SD_LORA_DUMP', None) is not None\nexclude_errors = [\n    \"'ChronoEditTransformer3DModel'\",\n]\n\n\ndef lora_dump(lora, dct):\n    import tempfile\n    sd_model = getattr(shared.sd_model, \"pipe\", shared.sd_model)\n    ty = shared.sd_model_type\n    cn = sd_model.__class__.__name__\n    shared.log.trace(f'LoRA dump: type={ty} model={cn} fn=\"{lora}\"')\n    bn = os.path.splitext(os.path.basename(lora))[0]\n    fn = os.path.join(tempfile.gettempdir(), f'LoRA-{ty}-{cn}-{bn}.txt')\n    with open(fn, 'w', encoding='utf8') as f:\n        keys = sorted(dct.keys())\n        shared.log.trace(f'LoRA dump: type=LoRA fn=\"{fn}\" keys={len(keys)}')\n        for line in keys:\n            f.write(line + \"\\n\")\n    fn = os.path.join(tempfile.gettempdir(), f'Model-{ty}-{cn}.txt')\n    with open(fn, 'w', encoding='utf8') as f:\n        keys = sd_model.network_layer_mapping.keys()\n        shared.log.trace(f'LoRA dump: type=Mapping fn=\"{fn}\" keys={len(keys)}')\n        for line in keys:\n            f.write(line + \"\\n\")\n\n\ndef load_safetensors(name, network_on_disk: network.NetworkOnDisk) -> Union[network.Network, None]:\n    if not shared.sd_loaded:\n        return None\n\n    sd_model = getattr(shared.sd_model, \"pipe\", shared.sd_model)\n    cached = lora_cache.get(name, None)\n    if l.debug:\n        shared.log.debug(f'Network load: type=LoRA name=\"{name}\" file=\"{network_on_disk.filename}\" type=lora {\"cached\" if cached else \"\"}')\n    if cached is not None:\n        return cached\n    net = network.Network(name, network_on_disk)\n    net.mtime = os.path.getmtime(network_on_disk.filename)\n    state_dict = sd_models.read_state_dict(network_on_disk.filename, what='network')\n    if shared.sd_model_type in ['f1', 'chroma']: # if kohya flux lora, convert state_dict\n        state_dict = lora_convert._convert_kohya_flux_lora_to_diffusers(state_dict) or state_dict # pylint: disable=protected-access\n    if shared.sd_model_type == 'sd3': # if kohya flux lora, convert state_dict\n        try:\n            state_dict = lora_convert._convert_kohya_sd3_lora_to_diffusers(state_dict) or state_dict # pylint: disable=protected-access\n        except ValueError: # EAFP for diffusers PEFT keys\n            pass\n    lora_convert.assign_network_names_to_compvis_modules(sd_model)\n    keys_failed_to_match = {}\n    matched_networks = {}\n    bundle_embeddings = {}\n    dtypes = []\n    convert = lora_convert.KeyConvert()\n    if dump_lora_keys:\n        lora_dump(network_on_disk.filename, state_dict)\n\n    for key_network, weight in state_dict.items():\n        parts = key_network.split('.')\n        if parts[0] == \"bundle_emb\":\n            emb_name, vec_name = parts[1], key_network.split(\".\", 2)[-1]\n            emb_dict = bundle_embeddings.get(emb_name, {})\n            emb_dict[vec_name] = weight\n            bundle_embeddings[emb_name] = emb_dict\n            continue\n        if parts[0] in [\"clip_l\",\"clip_g\",\"t5\",\"unet\",\"transformer\"]:\n            network_part = []\n            while parts[-1] in [\"alpha\",\"weight\",\"lora_up\",\"lora_down\"]:\n                network_part.insert(0,parts[-1])\n                parts = parts[0:-1]\n            network_part = \".\".join(network_part)\n            key_network_without_network_parts = \"_\".join(parts)\n            if key_network_without_network_parts.startswith(\"unet\") or key_network_without_network_parts.startswith(\"transformer\"):\n                key_network_without_network_parts = \"lora_\" + key_network_without_network_parts\n            key_network_without_network_parts = key_network_without_network_parts.replace(\"clip_g\",\"lora_te2\").replace(\"clip_l\",\"lora_te\")\n            # TODO lora: add t5 key support for sd35/f1\n\n        elif len(parts) > 5: # messy handler for diffusers peft lora\n            key_network_without_network_parts = '_'.join(parts[:-2])\n            if not key_network_without_network_parts.startswith('lora_'):\n                key_network_without_network_parts = 'lora_' + key_network_without_network_parts\n            network_part = '.'.join(parts[-2:]).replace('lora_A', 'lora_down').replace('lora_B', 'lora_up')\n        else:\n            key_network_without_network_parts, network_part = key_network.split(\".\", 1)\n        key, sd_module = convert(key_network_without_network_parts)\n        if sd_module is None:\n            keys_failed_to_match[key_network] = key\n            continue\n        if key not in matched_networks:\n            matched_networks[key] = network.NetworkWeights(network_key=key_network, sd_key=key, w={}, sd_module=sd_module)\n        matched_networks[key].w[network_part] = weight\n        if weight.dtype not in dtypes:\n            dtypes.append(weight.dtype)\n    network_types = []\n    state_dict = None\n    del state_dict\n    module_errors = 0\n    for key, weights in matched_networks.items():\n        net_module = None\n        for nettype in l.module_types:\n            net_module = nettype.create_module(net, weights)\n            if net_module is not None:\n                network_types.append(nettype.__class__.__name__)\n                break\n        if net_module is None:\n            module_errors += 1\n            if l.debug:\n                shared.log.error(f'LoRA unhandled: name={name} key={key} weights={weights.w.keys()}')\n        else:\n            net.modules[key] = net_module\n    if module_errors > 0:\n        shared.log.error(f'Network load: type=LoRA name=\"{name}\" file=\"{network_on_disk.filename}\" errors={module_errors} empty modules')\n    if len(keys_failed_to_match) > 0:\n        shared.log.warning(f'Network load: type=LoRA name=\"{name}\" type={set(network_types)} unmatched={len(keys_failed_to_match)} matched={len(matched_networks)}')\n        if l.debug:\n            shared.log.debug(f'Network load: type=LoRA name=\"{name}\" unmatched={keys_failed_to_match}')\n    else:\n        shared.log.debug(f'Network load: type=LoRA name=\"{name}\" type={set(network_types)} keys={len(matched_networks)} dtypes={dtypes} fuse={shared.opts.lora_fuse_native}:{shared.opts.lora_fuse_diffusers}')\n    if len(matched_networks) == 0:\n        return None\n    lora_cache[name] = net\n    net.bundle_embeddings = bundle_embeddings\n    return net\n\n\ndef maybe_recompile_model(names, te_multipliers):\n    sd_model = getattr(shared.sd_model, \"pipe\", shared.sd_model)\n    recompile_model = False\n    skip_lora_load = False\n    if shared.compiled_model_state is not None and shared.compiled_model_state.is_compiled:\n        if len(names) == len(shared.compiled_model_state.lora_model):\n            for i, name in enumerate(names):\n                if shared.compiled_model_state.lora_model[\n                    i] != f\"{name}:{te_multipliers[i] if te_multipliers else shared.opts.extra_networks_default_multiplier}\":\n                    recompile_model = True\n                    shared.compiled_model_state.lora_model = []\n                    break\n            if not recompile_model:\n                skip_lora_load = True\n                if len(l.loaded_networks) > 0 and l.debug:\n                    shared.log.debug('Model Compile: Skipping LoRa loading')\n                return recompile_model, skip_lora_load\n        else:\n            recompile_model = True\n            shared.compiled_model_state.lora_model = []\n    if recompile_model:\n        current_task = sd_models.get_diffusers_task(shared.sd_model)\n        shared.log.debug(f'Compile: task={current_task} force model reload')\n        backup_cuda_compile = shared.opts.cuda_compile\n        backup_scheduler = getattr(sd_model, \"scheduler\", None)\n        sd_models.unload_model_weights(op='model')\n        shared.opts.cuda_compile = []\n        sd_models.reload_model_weights(op='model')\n        shared.sd_model = sd_models.set_diffuser_pipe(shared.sd_model, current_task)\n        shared.opts.cuda_compile = backup_cuda_compile\n        if backup_scheduler is not None:\n            sd_model.scheduler = backup_scheduler\n    return recompile_model, skip_lora_load\n\n\ndef list_available_networks():\n    t0 = time.time()\n    available_networks.clear()\n    available_network_aliases.clear()\n    forbidden_network_aliases.clear()\n    available_network_hash_lookup.clear()\n    forbidden_network_aliases.update({\"none\": 1, \"Addams\": 1})\n    if not os.path.exists(shared.cmd_opts.lora_dir):\n        shared.log.warning(f'LoRA directory not found: path=\"{shared.cmd_opts.lora_dir}\"')\n\n    def add_network(filename):\n        if not os.path.isfile(filename):\n            return\n        name = os.path.splitext(os.path.basename(filename))[0]\n        name = name.replace('.', '_')\n        try:\n            entry = network.NetworkOnDisk(name, filename)\n            available_networks[entry.name] = entry\n            if entry.alias in available_network_aliases:\n                forbidden_network_aliases[entry.alias.lower()] = 1\n            available_network_aliases[entry.name] = entry\n            if entry.shorthash:\n                available_network_hash_lookup[entry.shorthash] = entry\n        except OSError as e: # should catch FileNotFoundError and PermissionError etc.\n            shared.log.error(f'LoRA: filename=\"{filename}\" {e}')\n\n    candidates = sorted(files_cache.list_files(shared.cmd_opts.lora_dir, ext_filter=[\".pt\", \".ckpt\", \".safetensors\"]))\n    with concurrent.futures.ThreadPoolExecutor(max_workers=shared.max_workers) as executor:\n        for fn in candidates:\n            executor.submit(add_network, fn)\n    t1 = time.time()\n    l.timer.list = t1 - t0\n    shared.log.info(f'Available LoRAs: path=\"{shared.cmd_opts.lora_dir}\" items={len(available_networks)} folders={len(forbidden_network_aliases)} time={t1 - t0:.2f}')\n\n\ndef network_download(name):\n    from huggingface_hub import hf_hub_download\n    if os.path.exists(name):\n        return network.NetworkOnDisk(name, name)\n    parts = name.split('/')\n    if len(parts) >= 5 and parts[1] == 'huggingface.co':\n        repo_id = f'{parts[2]}/{parts[3]}'\n        filename = '/'.join(parts[4:])\n        fn = hf_hub_download(repo_id=repo_id, filename=filename, cache_dir=shared.opts.hfcache_dir)\n        return network.NetworkOnDisk(name, fn)\n    return None\n\n\ndef gather_networks(names):\n    networks_on_disk: list[network.NetworkOnDisk] = [available_network_aliases.get(name, None) for name in names]\n    if any(x is None for x in networks_on_disk):\n        list_available_networks()\n        networks_on_disk: list[network.NetworkOnDisk] = [available_network_aliases.get(name, None) for name in names]\n    for i in range(len(names)):\n        if names[i].startswith('/'):\n            networks_on_disk[i] = network_download(names[i])\n    return networks_on_disk\n\n\ndef network_load(names, te_multipliers=None, unet_multipliers=None, dyn_dims=None, lora_modules=None):\n    networks_on_disk = gather_networks(names)\n    failed_to_load_networks = []\n    recompile_model, skip_lora_load = maybe_recompile_model(names, te_multipliers)\n    sd_model = getattr(shared.sd_model, \"pipe\", shared.sd_model)\n\n    l.loaded_networks.clear()\n    lora_diffusers.diffuser_loaded.clear()\n    lora_diffusers.diffuser_scales.clear()\n    t0 = time.time()\n\n    for i, (network_on_disk, name) in enumerate(zip(networks_on_disk, names)):\n        net = None\n        if network_on_disk is not None:\n            shorthash = getattr(network_on_disk, 'shorthash', '').lower()\n            if l.debug:\n                shared.log.debug(f'Network load: type=LoRA name=\"{name}\" file=\"{network_on_disk.filename}\" hash=\"{shorthash}\"')\n            try:\n                lora_scale = te_multipliers[i] if te_multipliers else shared.opts.extra_networks_default_multiplier\n                lora_module = lora_modules[i] if lora_modules and len(lora_modules) > i else None\n                if recompile_model and shared.compiled_model_state is not None:\n                    shared.compiled_model_state.lora_model.append(f\"{name}:{lora_scale}\")\n                lora_method = lora_overrides.get_method(shorthash)\n                if lora_method == 'diffusers':\n                    net = lora_diffusers.load_diffusers(name, network_on_disk, lora_scale, lora_module)\n                elif lora_method == 'nunchaku':\n                    pass # handled directly from extra_networks_lora.load_nunchaku\n                else:\n                    net = load_safetensors(name, network_on_disk)\n                if net is not None:\n                    net.mentioned_name = name\n                    network_on_disk.read_hash()\n            except Exception as e:\n                shared.log.error(f'Network load: type=LoRA file=\"{network_on_disk.filename}\" {e}')\n                if l.debug:\n                    errors.display(e, 'LoRA')\n                continue\n        if net is None:\n            failed_to_load_networks.append(name)\n            shared.log.error(f'Network load: type=LoRA name=\"{name}\" detected={network_on_disk.sd_version if network_on_disk is not None else None} not found')\n            continue\n        if hasattr(sd_model, 'embedding_db'):\n            sd_model.embedding_db.load_diffusers_embedding(None, net.bundle_embeddings)\n        net.te_multiplier = te_multipliers[i] if te_multipliers else shared.opts.extra_networks_default_multiplier\n        net.unet_multiplier = unet_multipliers[i] if unet_multipliers else shared.opts.extra_networks_default_multiplier\n        net.dyn_dim = dyn_dims[i] if dyn_dims else shared.opts.extra_networks_default_multiplier\n        l.loaded_networks.append(net)\n\n    while len(lora_cache) > shared.opts.lora_in_memory_limit:\n        name = next(iter(lora_cache))\n        lora_cache.pop(name, None)\n\n    if not skip_lora_load and len(lora_diffusers.diffuser_loaded) > 0:\n        shared.log.debug(f'Network load: type=LoRA loaded={lora_diffusers.diffuser_loaded} available={sd_model.get_list_adapters()} active={sd_model.get_active_adapters()} scales={lora_diffusers.diffuser_scales}')\n        try:\n            t1 = time.time()\n            if l.debug:\n                shared.log.trace(f'Network load: type=LoRA list={sd_model.get_list_adapters()}')\n                shared.log.trace(f'Network load: type=LoRA active={sd_model.get_active_adapters()}')\n            sd_model.set_adapters(adapter_names=lora_diffusers.diffuser_loaded, adapter_weights=lora_diffusers.diffuser_scales)\n        except Exception as e:\n            if str(e) not in exclude_errors:\n                shared.log.error(f'Network load: type=LoRA action=strength {str(e)}')\n            if l.debug:\n                errors.display(e, 'LoRA')\n        try:\n            if shared.opts.lora_fuse_diffusers and not lora_overrides.disable_fuse():\n                sd_model.fuse_lora(adapter_names=lora_diffusers.diffuser_loaded, lora_scale=1.0, fuse_unet=True, fuse_text_encoder=True) # diffusers with fuse uses fixed scale since later apply does the scaling\n                sd_model.unload_lora_weights()\n            l.timer.activate += time.time() - t1\n        except Exception as e:\n            shared.log.error(f'Network load: type=LoRA action=fuse {str(e)}')\n            if l.debug:\n                errors.display(e, 'LoRA')\n        shared.sd_model = sd_models.apply_balanced_offload(shared.sd_model, force=True, silent=True) # some layers may end up on cpu without hook\n\n    if len(l.loaded_networks) > 0 and l.debug:\n        shared.log.debug(f'Network load: type=LoRA loaded={[n.name for n in l.loaded_networks]} cache={list(lora_cache)} fuse={shared.opts.lora_fuse_native}:{shared.opts.lora_fuse_diffusers}')\n\n    if recompile_model:\n        shared.log.info(\"Network load: type=LoRA recompiling model\")\n        if shared.compiled_model_state is not None:\n            backup_lora_model = shared.compiled_model_state.lora_model\n        else:\n            backup_lora_model = []\n        if 'Model' in shared.opts.cuda_compile:\n            sd_model = sd_models_compile.compile_diffusers(sd_model)\n        if shared.compiled_model_state is not None:\n            shared.compiled_model_state.lora_model = backup_lora_model\n\n    l.timer.load = time.time() - t0\n"
  },
  {
    "path": "modules/lora/lora_nunchaku.py",
    "content": "import time\nfrom modules import shared, errors\nfrom modules.lora import lora_load, lora_common\n\n\npreviously_loaded = [] # we maintain private state here\n\n\ndef load_nunchaku(names, strengths):\n    global previously_loaded # pylint: disable=global-statement\n    strengths = [s[0] if isinstance(s, list) else s for s in strengths]\n    networks = lora_load.gather_networks(names)\n    networks = [(network, strength) for network, strength in zip(networks, strengths) if network is not None and strength > 0]\n    loras = [(network.filename, strength) for network, strength in networks]\n    is_changed = loras != previously_loaded\n    if not is_changed:\n        return False\n    if not hasattr(shared.sd_model, 'transformer') or not hasattr(shared.sd_model.transformer, 'update_lora_params'):\n        shared.log.error(f'Network load: type=LoRA method=nunchaku model={shared.sd_model.__class__.__name__} unsupported')\n        return False\n\n    previously_loaded = loras\n    try:\n        t0 = time.time()\n        from nunchaku.lora.flux.compose import compose_lora\n        composed_lora = compose_lora(loras)\n        shared.sd_model.transformer.update_lora_params(composed_lora)\n        lora_common.loaded_networks = [n[0] for n in networks] # used by infotext\n        t1 = time.time()\n        lora_common.timer.load = t1 - t0\n        shared.log.debug(f\"Network load: type=LoRA method=nunchaku loras={names} strength={strengths} time={t1-t0:.3f}\")\n    except Exception as e:\n        shared.log.error(f'Network load: type=LoRA method=nunchaku {e}')\n        if lora_common.debug:\n            errors.display(e, 'LoRA')\n    return is_changed\n"
  },
  {
    "path": "modules/lora/lora_overrides.py",
    "content": "from modules import shared\n\n\nforce_hashes_diffusers = [ # forced always\n    # '816d0eed49fd', # flash-sdxl\n    # 'c2ec22757b46', # flash-sd15\n    # '22c8339e7666', # spo-sdxl-10ep\n    # 'aaebf6360f7d', # sd15-lcm\n    # '3d18b05e4f56', # sdxl-lcm\n    # 'b71dcb732467', # sdxl-tcd\n    # '813ea5fb1c67', # sdxl-turbo\n    # '5a48ac366664', # hyper-sd15-1step\n    # 'ee0ff23dcc42', # hyper-sd15-2step\n    # 'e476eb1da5df', # hyper-sd15-4step\n    # 'ecb844c3f3b0', # hyper-sd15-8step\n    # '1ab289133ebb', # hyper-sd15-8step-cfg\n    # '4f494295edb1', # hyper-sdxl-8step\n    # 'ca14a8c621f8', # hyper-sdxl-8step-cfg\n    # '1c88f7295856', # hyper-sdxl-4step\n    # 'fdd5dcd1d88a', # hyper-sdxl-2step\n    # '8cca3706050b', # hyper-sdxl-1step\n]\n\nallow_native = [\n    'sd',\n    'sdxl',\n    'sd3',\n    'f1',\n    'chroma',\n]\n\n\nforce_classes_diffusers = [ # forced always\n    'FluxKontextPipeline', 'FluxKontextInpaintPipeline',\n]\n\nfuse_ignore = [\n    'hunyuanvideo',\n]\n\n\ndef get_method(shorthash=''):\n    use_diffusers = shared.opts.lora_force_diffusers or (shared.sd_model.__class__.__name__ in force_classes_diffusers) or (shared.sd_model_type not in allow_native)\n    if len(shorthash) > 4:\n        use_diffusers = use_diffusers or any(x.startswith(shorthash) for x in force_hashes_diffusers)\n    nunchaku_dit = hasattr(shared.sd_model, 'transformer') and 'Nunchaku' in shared.sd_model.transformer.__class__.__name__\n    nunchaku_unet = hasattr(shared.sd_model, 'unet') and 'Nunchaku' in shared.sd_model.unet.__class__.__name__\n    use_nunchaku = nunchaku_dit or nunchaku_unet\n    if use_nunchaku:\n        return 'nunchaku'\n    elif use_diffusers:\n        return 'diffusers'\n    else:\n        return 'native'\n\n\ndef disable_fuse():\n    if hasattr(shared.sd_model, 'quantization_config'):\n        return True\n    if hasattr(shared.sd_model, 'transformer') and hasattr(shared.sd_model.transformer, 'quantization_config'):\n        return True\n    if hasattr(shared.sd_model, 'transformer_2') and hasattr(shared.sd_model.transformer_2, 'quantization_config'):\n        return True\n    if hasattr(shared.sd_model, '_lora_partial'):\n        return True\n    return shared.sd_model_type in fuse_ignore\n"
  },
  {
    "path": "modules/lora/lora_timers.py",
    "content": "class Timer():\n    list: float = 0\n    load: float = 0\n    backup: float = 0\n    calc: float = 0\n    apply: float = 0\n    move: float = 0\n    restore: float = 0\n    activate: float = 0\n    deactivate: float = 0\n\n    @property\n    def total(self):\n        return round(self.activate + self.deactivate, 2)\n\n    @property\n    def summary(self):\n        t = {}\n        for k, v in self.__dict__.items():\n            if v > 0.1:\n                t[k] = round(v, 2)\n        return t\n\n    def clear(self, complete: bool = False):\n        self.backup = 0\n        self.calc = 0\n        self.apply = 0\n        self.move = 0\n        self.restore = 0\n        if complete:\n            self.activate = 0\n            self.deactivate = 0\n\n    def add(self, name, t):\n        self.__dict__[name] += t\n\n    def __str__(self):\n        return f'{self.__class__.__name__}({self.summary})'\n"
  },
  {
    "path": "modules/lora/lyco_helpers.py",
    "content": "import torch\n\n\ndef make_weight_cp(t, wa, wb):\n    temp = torch.einsum('i j k l, j r -> i r k l', t, wb)\n    return torch.einsum('i j k l, i r -> r j k l', temp, wa)\n\n\ndef rebuild_conventional(up, down, shape, dyn_dim=None):\n    up = up.reshape(up.size(0), -1)\n    down = down.reshape(down.size(0), -1)\n    if dyn_dim is not None:\n        up = up[:, :dyn_dim]\n        down = down[:dyn_dim, :]\n    return (up @ down).reshape(shape).to(up.dtype)\n\n\ndef rebuild_cp_decomposition(up, down, mid):\n    up = up.reshape(up.size(0), -1)\n    down = down.reshape(down.size(0), -1)\n    return torch.einsum('n m k l, i n, m j -> i j k l', mid, up, down).to(up.dtype)\n\n\n# copied from https://github.com/KohakuBlueleaf/LyCORIS/blob/dev/lycoris/modules/lokr.py\ndef factorization(dimension: int, factor:int=-1) -> tuple[int, int]:\n    \"\"\"\n    return a tuple of two value of input dimension decomposed by the number closest to factor\n    second value is higher or equal than first value.\n\n    In LoRA with Kroneckor Product, first value is a value for weight scale.\n    secon value is a value for weight.\n\n    Becuase of non-commutative property, A⊗B ≠ B⊗A. Meaning of two matrices is slightly different.\n\n    examples\n    factor\n        -1               2                4               8               16               ...\n    127 -> 1, 127   127 -> 1, 127    127 -> 1, 127   127 -> 1, 127   127 -> 1, 127\n    128 -> 8, 16    128 -> 2, 64     128 -> 4, 32    128 -> 8, 16    128 -> 8, 16\n    250 -> 10, 25   250 -> 2, 125    250 -> 2, 125   250 -> 5, 50    250 -> 10, 25\n    360 -> 8, 45    360 -> 2, 180    360 -> 4, 90    360 -> 8, 45    360 -> 12, 30\n    512 -> 16, 32   512 -> 2, 256    512 -> 4, 128   512 -> 8, 64    512 -> 16, 32\n    1024 -> 32, 32  1024 -> 2, 512   1024 -> 4, 256  1024 -> 8, 128  1024 -> 16, 64\n    \"\"\"\n\n    if factor > 0 and (dimension % factor) == 0:\n        m = factor\n        n = dimension // factor\n        if m > n:\n            n, m = m, n\n        return m, n\n    if factor < 0:\n        factor = dimension\n    m, n = 1, dimension\n    length = m + n\n    while m<n:\n        new_m = m + 1\n        while dimension%new_m != 0:\n            new_m += 1\n        new_n = dimension // new_m\n        if new_m + new_n > length or new_m>factor:\n            break\n        m, n = new_m, new_n\n    if m > n:\n        n, m = m, n\n    return m, n\n"
  },
  {
    "path": "modules/lora/network.py",
    "content": "import os\nimport enum\nfrom typing import Union\nfrom collections import namedtuple\nfrom modules import sd_models, hashes, shared\n\n\nNetworkWeights = namedtuple('NetworkWeights', ['network_key', 'sd_key', 'w', 'sd_module'])\nmetadata_tags_order = {\"ss_sd_model_name\": 1, \"ss_resolution\": 2, \"ss_clip_skip\": 3, \"ss_num_train_images\": 10, \"ss_tag_frequency\": 20}\n\n\nclass SdVersion(enum.Enum):\n    Unknown = 1\n    SD1 = 2\n    SD2 = 3\n    SD3 = 3\n    SDXL = 4\n    SC = 5\n    F1 = 6\n    HV = 7\n    CHROMA = 8\n\n\nclass NetworkOnDisk:\n    def __init__(self, name, filename):\n        self.shorthash = None\n        self.hash = None\n        self.name = name\n        self.filename = filename\n        if filename.startswith(shared.cmd_opts.lora_dir):\n            self.fullname = os.path.splitext(filename[len(shared.cmd_opts.lora_dir):].strip(\"/\"))[0]\n        else:\n            self.fullname = name\n        self.metadata = {}\n        self.is_safetensors = os.path.splitext(filename)[1].lower() == \".safetensors\"\n        if self.is_safetensors:\n            self.metadata = sd_models.read_metadata_from_safetensors(filename)\n        if self.metadata:\n            m = {}\n            for k, v in sorted(self.metadata.items(), key=lambda x: metadata_tags_order.get(x[0], 999)):\n                m[k] = v\n            self.metadata = m\n        self.alias = self.metadata.get('ss_output_name', self.name)\n        sha256 = hashes.sha256_from_cache(self.filename, \"lora/\" + self.name) or hashes.sha256_from_cache(self.filename, \"lora/\" + self.name, use_addnet_hash=True) or self.metadata.get('sshs_model_hash')\n        self.set_hash(sha256)\n        self.sd_version = self.detect_version()\n\n    def __str__(self):\n        return f\"NetworkOnDisk(name={self.name} filename={self.filename}\"\n\n    def detect_version(self):\n        base = str(self.metadata.get('ss_base_model_version', \"\")).lower()\n        arch = str(self.metadata.get('modelspec.architecture', \"\")).lower()\n        if base.startswith(\"sd_v1\"):\n            return 'sd1'\n        if base.startswith(\"sdxl\"):\n            return 'xl'\n        if base.startswith(\"stable_cascade\"):\n            return 'sc'\n        if base.startswith(\"sd3\"):\n            return 'sd3'\n        if base.startswith(\"flux\"):\n            return 'f1'\n        if base.startswith(\"hunyuan_video\"):\n            return 'hv'\n        if base.startswith(\"chroma\"):\n            return 'chroma'\n        if base.startswith('zimage'):\n            return 'zimage'\n        if base.startswith('qwen'):\n            return 'qwen'\n\n        if arch.startswith(\"stable-diffusion-v1\"):\n            return 'sd1'\n        if arch.startswith(\"stable-diffusion-xl\"):\n            return 'xl'\n        if arch.startswith(\"stable-cascade\"):\n            return 'sc'\n        if arch.startswith(\"flux\"):\n            return 'f1'\n        if arch.startswith(\"hunyuan-video\"):\n            return 'hv'\n        if arch.startswith(\"chroma\"):\n            return 'chroma'\n\n        if \"v1-5\" in str(self.metadata.get('ss_sd_model_name', \"\")):\n            return 'sd1'\n        if str(self.metadata.get('ss_v2', \"\")) == \"True\":\n            return 'sd2'\n        if 'flux' in self.name.lower():\n            return 'f1'\n        if 'xl' in self.name.lower():\n            return 'xl'\n        if 'chroma' in self.name.lower():\n            return 'chroma'\n\n        return ''\n\n    def set_hash(self, v):\n        self.hash = v or ''\n        self.shorthash = self.hash[0:8]\n\n    def read_hash(self):\n        if not self.hash:\n            self.set_hash(hashes.sha256(self.filename, \"lora/\" + self.name, use_addnet_hash=self.is_safetensors) or '')\n\n    def get_info(self):\n        data = {}\n        if shared.cmd_opts.no_metadata:\n            return data\n        if self.filename is not None:\n            fn = os.path.splitext(self.filename)[0] + '.json'\n            if os.path.exists(fn):\n                data = shared.readfile(fn, silent=True, as_type=\"dict\")\n        return data\n\n    def get_desc(self):\n        if shared.cmd_opts.no_metadata:\n            return None\n        if self.filename is not None:\n            fn = os.path.splitext(self.filename)[0] + '.txt'\n            if os.path.exists(fn):\n                with open(fn, \"r\", encoding=\"utf-8\") as file:\n                    return file.read()\n        return None\n\n    def get_alias(self):\n        return self.name\n\n\nclass Network:  # LoraModule\n    def __init__(self, name, network_on_disk: NetworkOnDisk):\n        self.name = name\n        self.network_on_disk = network_on_disk\n        self.te_multiplier = 1.0\n        self.unet_multiplier = [1.0] * 3\n        self.dyn_dim = None\n        self.modules = {}\n        self.bundle_embeddings = {}\n        self.mtime = None\n        self.mentioned_name = None\n        self.tags = None\n        \"\"\"the text that was used to add the network to prompt - can be either name or an alias\"\"\"\n\n\nclass ModuleType:\n    def create_module(self, net: Network, weights: NetworkWeights) -> Union[Network, None]: # pylint: disable=W0613\n        return None\n\n\nclass NetworkModule:\n    def __init__(self, net: Network, weights: NetworkWeights):\n        self.network = net\n        self.network_key = weights.network_key\n        self.sd_key = weights.sd_key\n        self.sd_module = weights.sd_module\n        if hasattr(self.sd_module, 'weight'):\n            if hasattr(self.sd_module, \"sdnq_dequantizer\"):\n                self.shape = self.sd_module.sdnq_dequantizer.original_shape\n            else:\n                self.shape = self.sd_module.weight.shape\n        self.dim = None\n        self.bias = weights.w.get(\"bias\")\n        self.alpha = weights.w[\"alpha\"].item() if \"alpha\" in weights.w else None\n        self.scale = weights.w[\"scale\"].item() if \"scale\" in weights.w else None\n        self.dora_scale = weights.w.get(\"dora_scale\", None)\n        self.dora_norm_dims = len(self.shape) - 1\n\n    def multiplier(self):\n        unet_multiplier = 3 * [self.network.unet_multiplier] if not isinstance(self.network.unet_multiplier, list) else self.network.unet_multiplier\n        if 'transformer' in self.sd_key[:20]:\n            return self.network.te_multiplier\n        if \"down_blocks\" in self.sd_key:\n            return unet_multiplier[0]\n        if \"mid_block\" in self.sd_key:\n            return unet_multiplier[1]\n        if \"up_blocks\" in self.sd_key:\n            return unet_multiplier[2]\n        else:\n            return unet_multiplier[0]\n\n    def calc_scale(self):\n        if self.scale is not None:\n            return self.scale\n        if self.dim is not None and self.alpha is not None:\n            return self.alpha / self.dim\n        return 1.0\n\n    def apply_weight_decompose(self, updown, orig_weight):\n        # Match the device/dtype\n        orig_weight = orig_weight.to(updown.dtype)\n        dora_scale = self.dora_scale.to(device=orig_weight.device, dtype=updown.dtype)\n        updown = updown.to(orig_weight.device)\n\n        merged_scale1 = updown + orig_weight\n        merged_scale1_norm = (\n            merged_scale1.transpose(0, 1)\n            .reshape(merged_scale1.shape[1], -1)\n            .norm(dim=1, keepdim=True)\n            .reshape(merged_scale1.shape[1], *[1] * self.dora_norm_dims)\n            .transpose(0, 1)\n        )\n\n        dora_merged = (\n                merged_scale1 * (dora_scale / merged_scale1_norm)\n        )\n        final_updown = dora_merged - orig_weight\n        return final_updown\n\n    def finalize_updown(self, updown, orig_weight, output_shape, ex_bias=None):\n        if self.bias is not None:\n            updown = updown.reshape(self.bias.shape)\n            updown += self.bias.to(orig_weight.device, dtype=orig_weight.dtype)\n            updown = updown.reshape(output_shape)\n        if len(output_shape) == 4:\n            updown = updown.reshape(output_shape)\n        if orig_weight.size().numel() == updown.size().numel():\n            updown = updown.reshape(orig_weight.shape)\n        if ex_bias is not None:\n            ex_bias = ex_bias * self.multiplier()\n        if self.dora_scale is not None:\n            updown = self.apply_weight_decompose(updown, orig_weight)\n        return updown * self.calc_scale() * self.multiplier(), ex_bias\n\n    def calc_updown(self, target):\n        raise NotImplementedError\n\n    def forward(self, x, y):\n        raise NotImplementedError\n"
  },
  {
    "path": "modules/lora/network_full.py",
    "content": "import modules.lora.network as network\n\n\nclass ModuleTypeFull(network.ModuleType):\n    def create_module(self, net: network.Network, weights: network.NetworkWeights):\n        if all(x in weights.w for x in [\"diff\"]):\n            return NetworkModuleFull(net, weights)\n        return None\n\n\nclass NetworkModuleFull(network.NetworkModule): # pylint: disable=abstract-method\n    def __init__(self,  net: network.Network, weights: network.NetworkWeights):\n        super().__init__(net, weights)\n\n        self.weight = weights.w.get(\"diff\")\n        self.ex_bias = weights.w.get(\"diff_b\")\n\n    def calc_updown(self, target):\n        output_shape = self.weight.shape\n        updown = self.weight.to(target.device, dtype=target.dtype)\n        if self.ex_bias is not None:\n            ex_bias = self.ex_bias.to(target.device, dtype=target.dtype)\n        else:\n            ex_bias = None\n\n        return self.finalize_updown(updown, target, output_shape, ex_bias)\n"
  },
  {
    "path": "modules/lora/network_glora.py",
    "content": "import modules.lora.network as network\n\n\nclass ModuleTypeGLora(network.ModuleType):\n    def create_module(self, net: network.Network, weights: network.NetworkWeights):\n        if all(x in weights.w for x in [\"a1.weight\", \"a2.weight\", \"alpha\", \"b1.weight\", \"b2.weight\"]):\n            return NetworkModuleGLora(net, weights)\n        return None\n\n# adapted from https://github.com/KohakuBlueleaf/LyCORIS\nclass NetworkModuleGLora(network.NetworkModule): # pylint: disable=abstract-method\n    def __init__(self,  net: network.Network, weights: network.NetworkWeights):\n        super().__init__(net, weights)\n\n        if hasattr(self.sd_module, 'weight'):\n            self.shape = self.sd_module.weight.shape\n\n        self.w1a = weights.w[\"a1.weight\"]\n        self.w1b = weights.w[\"b1.weight\"]\n        self.w2a = weights.w[\"a2.weight\"]\n        self.w2b = weights.w[\"b2.weight\"]\n\n    def calc_updown(self, target): # pylint: disable=arguments-differ\n        w1a = self.w1a.to(target.device, dtype=target.dtype)\n        w1b = self.w1b.to(target.device, dtype=target.dtype)\n        w2a = self.w2a.to(target.device, dtype=target.dtype)\n        w2b = self.w2b.to(target.device, dtype=target.dtype)\n        output_shape = [w1a.size(0), w1b.size(1)]\n        updown = (w2b @ w1b) + ((target @ w2a) @ w1a)\n        return self.finalize_updown(updown, target, output_shape)\n"
  },
  {
    "path": "modules/lora/network_hada.py",
    "content": "import modules.lora.lyco_helpers as lyco_helpers\nimport modules.lora.network as network\n\n\nclass ModuleTypeHada(network.ModuleType):\n    def create_module(self, net: network.Network, weights: network.NetworkWeights):\n        if all(x in weights.w for x in [\"hada_w1_a\", \"hada_w1_b\", \"hada_w2_a\", \"hada_w2_b\"]):\n            return NetworkModuleHada(net, weights)\n        return None\n\n\nclass NetworkModuleHada(network.NetworkModule): # pylint: disable=abstract-method\n    def __init__(self,  net: network.Network, weights: network.NetworkWeights):\n        super().__init__(net, weights)\n        if hasattr(self.sd_module, 'weight'):\n            self.shape = self.sd_module.weight.shape\n        self.w1a = weights.w[\"hada_w1_a\"]\n        self.w1b = weights.w[\"hada_w1_b\"]\n        self.dim = self.w1b.shape[0]\n        self.w2a = weights.w[\"hada_w2_a\"]\n        self.w2b = weights.w[\"hada_w2_b\"]\n        self.t1 = weights.w.get(\"hada_t1\")\n        self.t2 = weights.w.get(\"hada_t2\")\n\n    def calc_updown(self, target):\n        w1a = self.w1a.to(target.device, dtype=target.dtype)\n        w1b = self.w1b.to(target.device, dtype=target.dtype)\n        w2a = self.w2a.to(target.device, dtype=target.dtype)\n        w2b = self.w2b.to(target.device, dtype=target.dtype)\n        output_shape = [w1a.size(0), w1b.size(1)]\n        if self.t1 is not None:\n            output_shape = [w1a.size(1), w1b.size(1)]\n            t1 = self.t1.to(target.device, dtype=target.dtype)\n            updown1 = lyco_helpers.make_weight_cp(t1, w1a, w1b)\n            output_shape += t1.shape[2:]\n        else:\n            if len(w1b.shape) == 4:\n                output_shape += w1b.shape[2:]\n            updown1 = lyco_helpers.rebuild_conventional(w1a, w1b, output_shape)\n        if self.t2 is not None:\n            t2 = self.t2.to(target.device, dtype=target.dtype)\n            updown2 = lyco_helpers.make_weight_cp(t2, w2a, w2b)\n        else:\n            updown2 = lyco_helpers.rebuild_conventional(w2a, w2b, output_shape)\n        updown = updown1 * updown2\n        return self.finalize_updown(updown, target, output_shape)\n"
  },
  {
    "path": "modules/lora/network_ia3.py",
    "content": "import modules.lora.network as network\n\nclass ModuleTypeIa3(network.ModuleType):\n    def create_module(self, net: network.Network, weights: network.NetworkWeights):\n        if all(x in weights.w for x in [\"weight\"]):\n            return NetworkModuleIa3(net, weights)\n        return None\n\n\nclass NetworkModuleIa3(network.NetworkModule): # pylint: disable=abstract-method\n    def __init__(self,  net: network.Network, weights: network.NetworkWeights):\n        super().__init__(net, weights)\n        self.w = weights.w[\"weight\"]\n        self.on_input = weights.w[\"on_input\"].item()\n\n    def calc_updown(self, target):\n        w = self.w.to(target.device, dtype=target.dtype)\n        output_shape = [w.size(0), target.size(1)]\n        if self.on_input:\n            output_shape.reverse()\n        else:\n            w = w.reshape(-1, 1)\n        updown = target * w\n        return self.finalize_updown(updown, target, output_shape)\n"
  },
  {
    "path": "modules/lora/network_lokr.py",
    "content": "import torch\nimport modules.lora.lyco_helpers as lyco_helpers\nimport modules.lora.network as network\n\n\nclass ModuleTypeLokr(network.ModuleType):\n    def create_module(self, net: network.Network, weights: network.NetworkWeights):\n        has_1 = \"lokr_w1\" in weights.w or (\"lokr_w1_a\" in weights.w and \"lokr_w1_b\" in weights.w)\n        has_2 = \"lokr_w2\" in weights.w or (\"lokr_w2_a\" in weights.w and \"lokr_w2_b\" in weights.w)\n        if has_1 and has_2:\n            return NetworkModuleLokr(net, weights)\n        return None\n\n\ndef make_kron(orig_shape, w1, w2):\n    if len(w2.shape) == 4:\n        w1 = w1.unsqueeze(2).unsqueeze(2)\n    w2 = w2.contiguous()\n    return torch.kron(w1, w2).reshape(orig_shape)\n\n\nclass NetworkModuleLokr(network.NetworkModule): # pylint: disable=abstract-method\n    def __init__(self,  net: network.Network, weights: network.NetworkWeights):\n        super().__init__(net, weights)\n        self.w1 = weights.w.get(\"lokr_w1\")\n        self.w1a = weights.w.get(\"lokr_w1_a\")\n        self.w1b = weights.w.get(\"lokr_w1_b\")\n        self.dim = self.w1b.shape[0] if self.w1b is not None else self.dim\n        self.w2 = weights.w.get(\"lokr_w2\")\n        self.w2a = weights.w.get(\"lokr_w2_a\")\n        self.w2b = weights.w.get(\"lokr_w2_b\")\n        self.dim = self.w2b.shape[0] if self.w2b is not None else self.dim\n        self.t2 = weights.w.get(\"lokr_t2\")\n\n    def calc_updown(self, target):\n        if self.w1 is not None:\n            w1 = self.w1.to(target.device, dtype=target.dtype)\n        else:\n            w1a = self.w1a.to(target.device, dtype=target.dtype)\n            w1b = self.w1b.to(target.device, dtype=target.dtype)\n            w1 = w1a @ w1b\n        if self.w2 is not None:\n            w2 = self.w2.to(target.device, dtype=target.dtype)\n        elif self.t2 is None:\n            w2a = self.w2a.to(target.device, dtype=target.dtype)\n            w2b = self.w2b.to(target.device, dtype=target.dtype)\n            w2 = w2a @ w2b\n        else:\n            t2 = self.t2.to(target.device, dtype=target.dtype)\n            w2a = self.w2a.to(target.device, dtype=target.dtype)\n            w2b = self.w2b.to(target.device, dtype=target.dtype)\n            w2 = lyco_helpers.make_weight_cp(t2, w2a, w2b)\n        output_shape = [w1.size(0) * w2.size(0), w1.size(1) * w2.size(1)]\n        if len(target.shape) == 4:\n            output_shape = target.shape\n        updown = make_kron(output_shape, w1, w2)\n        return self.finalize_updown(updown, target, output_shape)\n"
  },
  {
    "path": "modules/lora/network_lora.py",
    "content": "import torch\nimport diffusers.models.lora as diffusers_lora\nimport modules.lora.lyco_helpers as lyco_helpers\nimport modules.lora.network as network\nfrom modules import devices\n\n\nclass ModuleTypeLora(network.ModuleType):\n    def create_module(self, net: network.Network, weights: network.NetworkWeights):\n        if all(x in weights.w for x in [\"lora_up.weight\", \"lora_down.weight\"]):\n            return NetworkModuleLora(net, weights)\n        return None\n\n\nclass NetworkModuleLora(network.NetworkModule):\n\n    def __init__(self,  net: network.Network, weights: network.NetworkWeights):\n        super().__init__(net, weights)\n        self.up_model = self.create_module(weights.w, \"lora_up.weight\")\n        self.down_model = self.create_module(weights.w, \"lora_down.weight\")\n        self.mid_model = self.create_module(weights.w, \"lora_mid.weight\", none_ok=True)\n        self.dim = weights.w[\"lora_down.weight\"].shape[0]\n\n    def create_module(self, weights, key, none_ok=False):\n        weight = weights.get(key)\n        if weight is None and none_ok:\n            return None\n        linear_modules = [torch.nn.Linear, torch.nn.modules.linear.NonDynamicallyQuantizableLinear, torch.nn.MultiheadAttention, diffusers_lora.LoRACompatibleLinear]\n        typ = type(self.sd_module)\n        is_linear = typ in linear_modules or self.sd_module.__class__.__name__ in [\"SDNQLinear\", \"QLinear\", \"Linear4bit\"]\n        is_conv = (typ in [torch.nn.Conv2d, diffusers_lora.LoRACompatibleConv]) or (self.sd_module.__class__.__name__ in [\"SDNQConv2d\", \"QConv2d\"]) or (typ.__name__ in ['downsampler_block', 'upsampler_block'])\n        if is_linear:\n            weight = weight.reshape(weight.shape[0], -1)\n            module = torch.nn.Linear(weight.shape[1], weight.shape[0], bias=False)\n        elif is_conv and (key == \"lora_down.weight\" or key == \"dyn_up\"):\n            if len(weight.shape) == 2:\n                weight = weight.reshape(weight.shape[0], -1, 1, 1)\n            if weight.shape[2] != 1 or weight.shape[3] != 1:\n                module = torch.nn.Conv2d(weight.shape[1], weight.shape[0], self.sd_module.kernel_size, self.sd_module.stride, self.sd_module.padding, bias=False)\n            else:\n                module = torch.nn.Conv2d(weight.shape[1], weight.shape[0], (1, 1), bias=False)\n        elif is_conv and (key == \"lora_mid.weight\"):\n            module = torch.nn.Conv2d(weight.shape[1], weight.shape[0], self.sd_module.kernel_size, self.sd_module.stride, self.sd_module.padding, bias=False)\n        elif is_conv and (key == \"lora_up.weight\" or key == \"dyn_down\"):\n            module = torch.nn.Conv2d(weight.shape[1], weight.shape[0], (1, 1), bias=False)\n        else:\n            raise AssertionError(f'Lora unsupported: key={key} layer={self.network_key} type={typ.__name__}')\n        with torch.no_grad():\n            if weight.shape != module.weight.shape:\n                weight = weight.reshape(module.weight.shape)\n            module.weight.copy_(weight)\n        module.weight.requires_grad_(False)\n        return module\n\n    def calc_updown(self, target): # pylint: disable=W0237\n        target_dtype = target.dtype if target.dtype != torch.uint8 else self.up_model.weight.dtype\n        up = self.up_model.weight.to(target.device, dtype=target_dtype)\n        down = self.down_model.weight.to(target.device, dtype=target_dtype)\n        output_shape = [up.size(0), down.size(1)]\n        if self.mid_model is not None:\n            mid = self.mid_model.weight.to(target.device, dtype=target_dtype)\n            updown = lyco_helpers.rebuild_cp_decomposition(up, down, mid) # cp-decomposition\n            output_shape += mid.shape[2:]\n        else:\n            mid = None\n            if len(down.shape) == 4:\n                output_shape += down.shape[2:]\n            updown = lyco_helpers.rebuild_conventional(up, down, output_shape, self.network.dyn_dim)\n        del up, down, mid\n        return self.finalize_updown(updown, target, output_shape)\n\n    def forward(self, x, y):\n        self.up_model.to(device=devices.device)\n        self.down_model.to(device=devices.device)\n        if hasattr(y, \"scale\"):\n            return y(scale=1) + self.up_model(self.down_model(x)) * self.multiplier() * self.calc_scale()\n        return y + self.up_model(self.down_model(x)) * self.multiplier() * self.calc_scale()\n"
  },
  {
    "path": "modules/lora/network_norm.py",
    "content": "import modules.lora.network as network\n\n\nclass ModuleTypeNorm(network.ModuleType):\n    def create_module(self, net: network.Network, weights: network.NetworkWeights):\n        if all(x in weights.w for x in [\"w_norm\", \"b_norm\"]):\n            return NetworkModuleNorm(net, weights)\n        return None\n\n\nclass NetworkModuleNorm(network.NetworkModule): # pylint: disable=abstract-method\n    def __init__(self,  net: network.Network, weights: network.NetworkWeights):\n        super().__init__(net, weights)\n        self.w_norm = weights.w.get(\"w_norm\")\n        self.b_norm = weights.w.get(\"b_norm\")\n\n    def calc_updown(self, target):\n        output_shape = self.w_norm.shape\n        updown = self.w_norm.to(target.device, dtype=target.dtype)\n        if self.b_norm is not None:\n            ex_bias = self.b_norm.to(target.device, dtype=target.dtype)\n        else:\n            ex_bias = None\n        return self.finalize_updown(updown, target, output_shape, ex_bias)\n"
  },
  {
    "path": "modules/lora/network_oft.py",
    "content": "import torch\nfrom einops import rearrange\nimport modules.lora.network as network\nfrom modules.lora.lyco_helpers import factorization\n\n\nclass ModuleTypeOFT(network.ModuleType):\n    def create_module(self, net: network.Network, weights: network.NetworkWeights):\n        if all(x in weights.w for x in [\"oft_blocks\"]) or all(x in weights.w for x in [\"oft_diag\"]):\n            return NetworkModuleOFT(net, weights)\n        return None\n\n\n# Supports both kohya-ss' implementation of COFT  https://github.com/kohya-ss/sd-scripts/blob/main/networks/oft.py\n# and KohakuBlueleaf's implementation of OFT/COFT https://github.com/KohakuBlueleaf/LyCORIS/blob/dev/lycoris/modules/diag_oft.py\nclass NetworkModuleOFT(network.NetworkModule): # pylint: disable=abstract-method\n    def __init__(self,  net: network.Network, weights: network.NetworkWeights):\n        super().__init__(net, weights)\n        self.lin_module = None\n        self.org_module: list[torch.Module] = [self.sd_module]\n        self.scale = 1.0\n\n        # kohya-ss\n        if \"oft_blocks\" in weights.w.keys():\n            self.is_kohya = True\n            self.oft_blocks = weights.w[\"oft_blocks\"] # (num_blocks, block_size, block_size)\n            self.alpha = weights.w[\"alpha\"] # alpha is constraint\n            self.dim = self.oft_blocks.shape[0] # lora dim\n        # LyCORIS\n        elif \"oft_diag\" in weights.w.keys():\n            self.is_kohya = False\n            self.oft_blocks = weights.w[\"oft_diag\"]\n            # self.alpha is unused\n            self.dim = self.oft_blocks.shape[1] # (num_blocks, block_size, block_size)\n\n        is_linear = type(self.sd_module) in [torch.nn.Linear, torch.nn.modules.linear.NonDynamicallyQuantizableLinear]\n        is_conv = type(self.sd_module) in [torch.nn.Conv2d]\n        is_other_linear = type(self.sd_module) in [torch.nn.MultiheadAttention] # unsupported\n\n        if is_linear:\n            self.out_dim = self.sd_module.out_features\n        elif is_conv:\n            self.out_dim = self.sd_module.out_channels\n        elif is_other_linear:\n            self.out_dim = self.sd_module.embed_dim\n\n        if self.is_kohya:\n            self.constraint = self.alpha * self.out_dim\n            self.num_blocks = self.dim\n            self.block_size = self.out_dim // self.dim\n        else:\n            self.constraint = None\n            self.block_size, self.num_blocks = factorization(self.out_dim, self.dim)\n\n    def calc_updown(self, target):\n        oft_blocks = self.oft_blocks.to(target.device, dtype=target.dtype)\n        eye = torch.eye(self.block_size, device=target.device)\n        constraint = self.constraint.to(target.device)\n\n        if self.is_kohya:\n            block_Q = oft_blocks - oft_blocks.transpose(1, 2) # ensure skew-symmetric orthogonal matrix\n            norm_Q = torch.norm(block_Q.flatten()).to(target.device)\n            new_norm_Q = torch.clamp(norm_Q, max=constraint)\n            block_Q = block_Q * ((new_norm_Q + 1e-8) / (norm_Q + 1e-8))\n            mat1 = eye + block_Q\n            mat2 = (eye - block_Q).float().inverse()\n            oft_blocks = torch.matmul(mat1, mat2)\n\n        R = oft_blocks.to(target.device, dtype=target.dtype)\n\n        # This errors out for MultiheadAttention, might need to be handled up-stream\n        merged_weight = rearrange(target, '(k n) ... -> k n ...', k=self.num_blocks, n=self.block_size)\n        merged_weight = torch.einsum(\n            'k n m, k n ... -> k m ...',\n            R,\n            merged_weight\n        )\n        merged_weight = rearrange(merged_weight, 'k m ... -> (k m) ...')\n\n        updown = merged_weight.to(target.device, dtype=target.dtype) - target\n        output_shape = target.shape\n        return self.finalize_updown(updown, target, output_shape)\n"
  },
  {
    "path": "modules/lora/networks.py",
    "content": "from contextlib import nullcontext\nimport time\nimport rich.progress as rp\nfrom modules.errorlimiter import limit_errors\nfrom modules.lora import lora_common as l\nfrom modules.lora.lora_apply import network_apply_weights, network_apply_direct, network_backup_weights, network_calc_weights\nfrom modules import shared, devices, sd_models\n\n\napplied_layers: list[str] = []\ndefault_components = ['text_encoder', 'text_encoder_2', 'text_encoder_3', 'text_encoder_4', 'unet', 'transformer', 'transformer_2']\n\n\ndef network_activate(include=[], exclude=[]):\n    t0 = time.time()\n    with limit_errors(\"network_activate\"):\n        sd_model = getattr(shared.sd_model, \"pipe\", shared.sd_model)\n        if shared.opts.diffusers_offload_mode == \"sequential\":\n            sd_models.disable_offload(sd_model)\n            sd_models.move_model(sd_model, device=devices.cpu)\n        device = None\n        modules = {}\n        components = include if len(include) > 0 else default_components\n        components = [x for x in components if x not in exclude]\n        active_components = []\n        for name in components:\n            component = getattr(sd_model, name, None)\n            if component is not None and hasattr(component, 'named_modules'):\n                active_components.append(name)\n                modules[name] = list(component.named_modules())\n        total = sum(len(x) for x in modules.values())\n        if len(l.loaded_networks) > 0:\n            pbar = rp.Progress(rp.TextColumn('[cyan]Network: type=LoRA action=activate'), rp.BarColumn(), rp.TaskProgressColumn(), rp.TimeRemainingColumn(), rp.TimeElapsedColumn(), rp.TextColumn('[cyan]{task.description}'), console=shared.console)\n            task = pbar.add_task(description='' , total=total)\n        else:\n            task = None\n            pbar = nullcontext()\n        applied_weight = 0\n        applied_bias = 0\n        with devices.inference_context(), pbar:\n            wanted_names = tuple((x.name, x.te_multiplier, x.unet_multiplier, x.dyn_dim) for x in l.loaded_networks) if len(l.loaded_networks) > 0 else ()\n            applied_layers.clear()\n            backup_size = 0\n            for component in modules.keys():\n                device = getattr(sd_model, component, None).device\n                for _, module in modules[component]:\n                    network_layer_name = getattr(module, 'network_layer_name', None)\n                    current_names = getattr(module, \"network_current_names\", ())\n                    if getattr(module, 'weight', None) is None or shared.state.interrupted or (network_layer_name is None) or (current_names == wanted_names):\n                        if task is not None:\n                            pbar.update(task, advance=1)\n                        continue\n                    backup_size += network_backup_weights(module, network_layer_name, wanted_names)\n                    batch_updown, batch_ex_bias = network_calc_weights(module, network_layer_name)\n                    if shared.opts.lora_fuse_native:\n                        network_apply_direct(module, batch_updown, batch_ex_bias, device=device)\n                    else:\n                        network_apply_weights(module, batch_updown, batch_ex_bias, device=device)\n                    if batch_updown is not None or batch_ex_bias is not None:\n                        applied_layers.append(network_layer_name)\n                        applied_weight += 1 if batch_updown is not None else 0\n                        applied_bias += 1 if batch_ex_bias is not None else 0\n                    batch_updown, batch_ex_bias = None, None\n                    del batch_updown, batch_ex_bias\n                    module.network_current_names = wanted_names\n                    if task is not None:\n                        bs = round(backup_size/1024/1024/1024, 2) if backup_size > 0 else None\n                        pbar.update(task, advance=1, description=f'networks={len(l.loaded_networks)} modules={active_components} layers={total} weights={applied_weight} bias={applied_bias} backup={bs} device={device}')\n\n            if task is not None and len(applied_layers) == 0:\n                pbar.remove_task(task) # hide progress bar for no action\n    l.timer.activate += time.time() - t0\n    if l.debug and len(l.loaded_networks) > 0:\n        shared.log.debug(f'Network load: type=LoRA networks={[n.name for n in l.loaded_networks]} modules={active_components} layers={total} weights={applied_weight} bias={applied_bias} backup={round(backup_size/1024/1024/1024, 2)} fuse={shared.opts.lora_fuse_native}:{shared.opts.lora_fuse_diffusers} device={device} time={l.timer.summary}')\n    modules.clear()\n    if len(applied_layers) > 0 or shared.opts.diffusers_offload_mode == \"sequential\":\n        sd_models.set_diffuser_offload(sd_model, op=\"model\")\n\n\ndef network_deactivate(include=[], exclude=[]):\n    if not shared.opts.lora_fuse_native or shared.opts.lora_force_diffusers:\n        return\n    if len(l.previously_loaded_networks) == 0:\n        return\n    t0 = time.time()\n    with limit_errors(\"network_deactivate\"):\n        sd_model = getattr(shared.sd_model, \"pipe\", shared.sd_model)\n        if shared.opts.diffusers_offload_mode == \"sequential\":\n            sd_models.disable_offload(sd_model)\n            sd_models.move_model(sd_model, device=devices.cpu)\n        modules = {}\n\n        components = include if len(include) > 0 else ['text_encoder', 'text_encoder_2', 'text_encoder_3', 'unet', 'transformer']\n        components = [x for x in components if x not in exclude]\n        active_components = []\n        for name in components:\n            component = getattr(sd_model, name, None)\n            if component is not None and hasattr(component, 'named_modules'):\n                modules[name] = list(component.named_modules())\n                active_components.append(name)\n        total = sum(len(x) for x in modules.values())\n        if len(l.previously_loaded_networks) > 0 and l.debug:\n            pbar = rp.Progress(rp.TextColumn('[cyan]Network: type=LoRA action=deactivate'), rp.BarColumn(), rp.TaskProgressColumn(), rp.TimeRemainingColumn(), rp.TimeElapsedColumn(), rp.TextColumn('[cyan]{task.description}'), console=shared.console)\n            task = pbar.add_task(description='', total=total)\n        else:\n            task = None\n            pbar = nullcontext()\n        with devices.inference_context(), pbar:\n            applied_layers.clear()\n            for component in modules.keys():\n                device = getattr(sd_model, component, None).device\n                for _, module in modules[component]:\n                    network_layer_name = getattr(module, 'network_layer_name', None)\n                    if shared.state.interrupted or network_layer_name is None:\n                        if task is not None:\n                            pbar.update(task, advance=1)\n                        continue\n                    batch_updown, batch_ex_bias = network_calc_weights(module, network_layer_name, use_previous=True)\n                    if shared.opts.lora_fuse_native:\n                        network_apply_direct(module, batch_updown, batch_ex_bias, device=device, deactivate=True)\n                    else:\n                        network_apply_weights(module, batch_updown, batch_ex_bias, device=device, deactivate=True)\n                    if batch_updown is not None or batch_ex_bias is not None:\n                        applied_layers.append(network_layer_name)\n                    del batch_updown, batch_ex_bias\n                    module.network_current_names = ()\n                    if task is not None:\n                        pbar.update(task, advance=1, description=f'networks={len(l.previously_loaded_networks)} modules={active_components} layers={total} unapply={len(applied_layers)}')\n    l.timer.deactivate = time.time() - t0\n    if l.debug and len(l.previously_loaded_networks) > 0:\n        shared.log.debug(f'Network deactivate: type=LoRA networks={[n.name for n in l.previously_loaded_networks]} modules={active_components} layers={total} apply={len(applied_layers)} fuse={shared.opts.lora_fuse_native}:{shared.opts.lora_fuse_diffusers} time={l.timer.summary}')\n    modules.clear()\n    if len(applied_layers) > 0 or shared.opts.diffusers_offload_mode == \"sequential\":\n        sd_models.set_diffuser_offload(sd_model, op=\"model\")\n"
  },
  {
    "path": "modules/ltx/ltx_process.py",
    "content": "import os\nimport time\nimport torch\nfrom PIL import Image\n\nfrom modules import shared, errors, timer, memstats, progress, processing, sd_models, sd_samplers, extra_networks, call_queue\nfrom modules.video_models.video_vae import set_vae_params\nfrom modules.video_models.video_save import save_video\nfrom modules.video_models.video_utils import check_av\nfrom modules.processing_callbacks import diffusers_callback\nfrom modules.ltx.ltx_util import get_bucket, get_frames, load_model, load_upsample, get_conditions, get_generator, get_prompts, vae_decode\n\n\ndebug = shared.log.trace if os.environ.get('SD_VIDEO_DEBUG', None) is not None else lambda *args, **kwargs: None\n# engine, model = 'LTX Video', 'LTXVideo 0.9.7 13B'\nupsample_repo_id = \"a-r-r-o-w/LTX-Video-0.9.7-Latent-Spatial-Upsampler-diffusers\"\nupsample_pipe = None\n\n\ndef run_ltx(task_id,\n            _ui_state,\n            model:str,\n            prompt:str,\n            negative:str,\n            styles:list[str],\n            width:int,\n            height:int,\n            frames:int,\n            steps:int,\n            sampler_index:int,\n            seed:int,\n            upsample_enable:bool,\n            upsample_ratio:float,\n            refine_enable:bool,\n            refine_strength:float,\n            condition_strength: float,\n            condition_image,\n            condition_last,\n            condition_files,\n            condition_video,\n            condition_video_frames:int,\n            condition_video_skip:int,\n            decode_timestep:float,\n            image_cond_noise_scale:float,\n            mp4_fps:int,\n            mp4_interpolate:int,\n            mp4_codec:str,\n            mp4_ext:str,\n            mp4_opt:str,\n            mp4_video:bool,\n            mp4_frames:bool,\n            mp4_sf:bool,\n            audio_enable:bool,\n            _overrides,\n           ):\n\n    def abort(e, ok:bool=False, p=None):\n        if ok:\n            shared.log.info(e)\n        else:\n            shared.log.error(f'Video: cls={shared.sd_model.__class__.__name__} op=base {e}')\n            errors.display(e, 'LTX')\n        if p is not None:\n            extra_networks.deactivate(p)\n        shared.state.end()\n        progress.finish_task(task_id)\n        yield None, f'LTX Error: {str(e)}'\n\n    if model is None or len(model) == 0:\n        yield from abort('Video: no model selected', ok=True)\n        return\n    # from diffusers import LTXConditionPipeline # pylint: disable=unused-import\n    check_av()\n    progress.add_task_to_queue(task_id)\n    with call_queue.get_lock():\n        progress.start_task(task_id)\n        memstats.reset_stats()\n        timer.process.reset()\n        yield None, 'LTX: Loading...'\n        engine = 'LTX Video'\n        load_model(engine, model)\n        debug(f'Video: cls={shared.sd_model.__class__.__name__} op=init model=\"{model}\"')\n        if not shared.sd_model.__class__.__name__.startswith(\"LTX\"):\n            yield from abort(f'Video: cls={shared.sd_model.__class__.__name__} selected model is not LTX model', ok=True)\n            return\n\n        videojob = shared.state.begin('Video', task_id=task_id)\n        shared.state.job_count = 1\n\n        p = processing.StableDiffusionProcessingVideo(\n            video_engine=engine,\n            video_model=model,\n            prompt=prompt,\n            negative_prompt=negative,\n            styles=styles,\n            width=width,\n            height=height,\n            frames=frames,\n            steps=steps,\n            sampler_index=sampler_index,\n            seed=seed,\n        )\n        p.ops.append('video')\n\n        condition_images = []\n        if condition_image is not None:\n            condition_images.append(condition_image)\n        if condition_last is not None:\n            condition_images.append(condition_last)\n        conditions = get_conditions(\n            width,\n            height,\n            condition_strength,\n            condition_images,\n            condition_files,\n            condition_video,\n            condition_video_frames,\n            condition_video_skip,\n        )\n\n        prompt, negative, networks = get_prompts(prompt, negative, styles)\n        sampler_name = processing.get_sampler_name(sampler_index)\n        sd_samplers.create_sampler(sampler_name, shared.sd_model)\n        shared.log.debug(f'Video: cls={shared.sd_model.__class__.__name__} op=init styles={styles} networks={networks} sampler={shared.sd_model.scheduler.__class__.__name__}')\n\n        extra_networks.activate(p, networks)\n        framewise = 'LTX2' not in shared.sd_model.__class__.__name__\n        set_vae_params(p, framewise=framewise)\n\n        t0 = time.time()\n        shared.sd_model = sd_models.apply_balanced_offload(shared.sd_model)\n        t1 = time.time()\n        if 'LTX2' in shared.sd_model.__class__.__name__:\n            output_type = 'np'\n        else:\n            output_type = 'latent'\n        base_args = {\n            \"prompt\": prompt,\n            \"negative_prompt\": negative,\n            \"width\": get_bucket(width),\n            \"height\": get_bucket(height),\n            \"num_frames\": get_frames(frames),\n            \"num_inference_steps\": steps,\n            \"generator\": get_generator(seed),\n            \"callback_on_step_end\": diffusers_callback,\n            \"output_type\": output_type,\n        }\n        if 'LTX2' in shared.sd_model.__class__.__name__:\n            base_args[\"frame_rate\"] = float(mp4_fps)\n        if 'Condition' in shared.sd_model.__class__.__name__:\n            base_args[\"image_cond_noise_scale\"] = image_cond_noise_scale\n        shared.log.debug(f'Video: cls={shared.sd_model.__class__.__name__} op=base {base_args}')\n        if len(conditions) > 0:\n            base_args[\"conditions\"] = conditions\n\n        if debug:\n            shared.log.trace(f'LTX args: {base_args}')\n        yield None, 'LTX: Generate in progress...'\n        samplejob = shared.state.begin('Sample')\n        try:\n            result = shared.sd_model(**base_args)\n            latents = result.frames[0]\n        except AssertionError as e:\n            yield from abort(e, ok=True, p=p)\n            return\n        except Exception as e:\n            yield from abort(e, ok=False, p=p)\n            return\n        if audio_enable and hasattr(result, 'audio') and result.audio is not None:\n            audio = result.audio[0].float().cpu()\n        else:\n            audio = None\n        try:\n            if debug:\n                shared.log.trace(f'LTX result frames={latents.shape if latents is not None else None} audio={audio.shape if audio is not None else None}')\n        except Exception:\n            pass\n\n        t2 = time.time()\n        shared.sd_model = sd_models.apply_balanced_offload(shared.sd_model)\n        t3 = time.time()\n        timer.process.add('offload', t1 - t0)\n        timer.process.add('base', t2 - t1)\n        timer.process.add('offload', t3 - t2)\n        shared.state.end(samplejob)\n\n        if upsample_enable:\n            t4 = time.time()\n            upsamplejob = shared.state.begin('Upsample')\n            global upsample_pipe # pylint: disable=global-statement\n            upsample_pipe = load_upsample(upsample_pipe, upsample_repo_id)\n            upsample_pipe = sd_models.apply_balanced_offload(upsample_pipe)\n            upscale_args = {\n                \"width\": get_bucket(upsample_ratio * width),\n                \"height\": get_bucket(upsample_ratio * height),\n                \"generator\": get_generator(seed),\n                \"output_type\": output_type,\n            }\n            if latents.ndim == 4:\n                latents = latents.unsqueeze(0) # add batch dimension\n            shared.log.debug(f'Video: cls={shared.sd_model.__class__.__name__} op=upsample latents={latents.shape} {upscale_args}')\n            yield None, 'LTX: Upsample in progress...'\n            try:\n                upsampled_latents = upsample_pipe(latents=latents, **upscale_args).frames[0]\n            except AssertionError as e:\n                yield from abort(e, ok=True, p=p)\n                return\n            except Exception as e:\n                yield from abort(e, ok=False, p=p)\n                return\n            latents = upsampled_latents\n            t5 = time.time()\n            upsample_pipe = sd_models.apply_balanced_offload(upsample_pipe)\n            t6 = time.time()\n            timer.process.add('upsample', t5 - t4)\n            timer.process.add('offload', t6 - t5)\n            shared.state.end(upsamplejob)\n\n        if refine_enable:\n            t7 = time.time()\n            refinejob = shared.state.begin('Refine')\n            shared.sd_model = sd_models.apply_balanced_offload(shared.sd_model)\n            refine_args = {\n                \"prompt\": prompt,\n                \"negative_prompt\": negative,\n                \"width\": get_bucket(upsample_ratio * width),\n                \"height\": get_bucket(upsample_ratio * height),\n                \"num_frames\": get_frames(frames),\n                \"denoise_strength\": refine_strength,\n                \"num_inference_steps\": steps,\n                \"image_cond_noise_scale\": image_cond_noise_scale,\n                \"generator\": get_generator(seed),\n                \"callback_on_step_end\": diffusers_callback,\n                \"output_type\": output_type,\n            }\n            if latents.ndim == 4:\n                latents = latents.unsqueeze(0) # add batch dimension\n\n            shared.log.debug(f'Video: cls={shared.sd_model.__class__.__name__} op=refine latents={latents.shape} {refine_args}')\n            if len(conditions) > 0:\n                refine_args[\"conditions\"] = conditions\n            yield None, 'LTX: Refine in progress...'\n            try:\n                refined_latents = shared.sd_model(latents=latents, **refine_args).frames[0]\n            except AssertionError as e:\n                yield from abort(e, ok=True, p=p)\n                return\n            except Exception as e:\n                yield from abort(e, ok=False, p=p)\n                return\n            latents = refined_latents\n            t8 = time.time()\n            shared.sd_model = sd_models.apply_balanced_offload(shared.sd_model)\n            t9 = time.time()\n            timer.process.add('refine', t8 - t7)\n            timer.process.add('offload', t9 - t8)\n            shared.state.end(refinejob)\n\n        extra_networks.deactivate(p)\n\n        yield None, 'LTX: VAE decode in progress...'\n        try:\n            if torch.is_tensor(latents):\n                frames = vae_decode(latents, decode_timestep, seed)\n            else:\n                frames = latents\n        except TypeError:\n            frames = latents # likely because the latents are already decoded\n        except AssertionError as e:\n            yield from abort(e, ok=True, p=p)\n            return\n        except Exception as e:\n            yield from abort(e, ok=False, p=p)\n            return\n        t10 = time.time()\n        shared.sd_model = sd_models.apply_balanced_offload(shared.sd_model)\n        t11 = time.time()\n        timer.process.add('offload', t11 - t10)\n\n        try:\n            aac_sample_rate = shared.sd_model.vocoder.config.output_sampling_rate\n        except Exception:\n            aac_sample_rate = 24000\n\n        num_frames, video_file = save_video(\n            p=p,\n            pixels=frames,\n            audio=audio,\n            mp4_fps=mp4_fps,\n            mp4_codec=mp4_codec,\n            mp4_opt=mp4_opt,\n            mp4_ext=mp4_ext,\n            mp4_sf=mp4_sf,\n            mp4_video=mp4_video,\n            mp4_frames=mp4_frames,\n            mp4_interpolate=mp4_interpolate,\n            aac_sample_rate=aac_sample_rate,\n            metadata={},\n        )\n\n        t_end = time.time()\n        if isinstance(frames, list) and isinstance(frames[0], Image.Image):\n            w, h = frames[0].size\n        elif frames.ndim == 5:\n            _n, _c, _t, h, w = frames.shape\n        elif frames.ndim == 4:\n            _n, h, w, _c = frames.shape\n        else:\n            h, w = frames.shape[-2], frames.shape[-1]\n        resolution = f'{w}x{h}' if num_frames > 0 else None\n        summary = timer.process.summary(min_time=0.25, total=False).replace('=', ' ')\n        memory = shared.mem_mon.summary()\n        fps = f'{num_frames/(t_end-t0):.2f}'\n        its = f'{(steps)/(t_end-t0):.2f}'\n\n        shared.state.end(videojob)\n        progress.finish_task(task_id)\n\n        shared.log.info(f'Processed: fn=\"{video_file}\" frames={num_frames} fps={fps} its={its} resolution={resolution} time={t_end-t0:.2f} timers={timer.process.dct()} memory={memstats.memory_stats()}')\n        yield video_file, f'LTX: Generation completed | File {video_file} | Frames {len(frames)} | Resolution {resolution} | f/s {fps} | it/s {its} '+ f\"<div class='performance'><p>{summary} {memory}</p></div>\"\n"
  },
  {
    "path": "modules/ltx/ltx_ui.py",
    "content": "import os\nimport gradio as gr\nfrom modules import shared, ui_sections\nfrom modules.video_models.models_def import models\nfrom modules.ltx import ltx_process\n\n\ndebug = shared.log.trace if os.environ.get('SD_VIDEO_DEBUG', None) is not None else lambda *args, **kwargs: None\n\n\ndef create_ui(prompt, negative, styles, overrides, init_image, init_strength, last_image, mp4_fps, mp4_interpolate, mp4_codec, mp4_ext, mp4_opt, mp4_video, mp4_frames, mp4_sf, width, height, frames, seed):\n    with gr.Row():\n        with gr.Column(variant='compact', elem_id=\"ltx_settings\", elem_classes=['settings-column'], scale=1):\n            with gr.Row():\n                generate = gr.Button('Generate', elem_id=\"ltx_generate_btn\", variant='primary', visible=False)\n            with gr.Row():\n                ltx_models = [m.name for m in models['LTX Video']] if 'LTX Video' in models else ['None']\n                model = gr.Dropdown(label='LTX model', choices=ltx_models, value=ltx_models[0], elem_id=\"ltx_model\")\n            with gr.Accordion(open=False, label=\"Condition\", elem_id='ltx_condition_accordion'):\n                with gr.Tabs():\n                    with gr.Tab('Video', id='ltx_condition_video_tab'):\n                        condition_video = gr.Video(label='Video', type='filepath', elem_id=\"ltx_condition_video\", width=256, height=256, source='upload')\n                        with gr.Row():\n                            condition_video_frames = gr.Slider(label='LTX frames number', minimum=-1, maximum=1024, step=1, value=-1, elem_id=\"ltx_condition_video_frames\")\n                            condition_video_skip = gr.Slider(label='LTX frames skip', minimum=0, maximum=1024, step=1, value=0, elem_id=\"ltx_condition_video_sip\")\n                    with gr.Tab('Gallery', id='ltx_condition_batch_tab'):\n                        condition_files = gr.Files(label=\"Image Batch\", interactive=True, elem_id=\"ltx_condition_batch\")\n            with gr.Accordion(open=False, label=\"Upsample\", elem_id='ltx_upsample_accordion'):\n                with gr.Row():\n                    upsample_enable = gr.Checkbox(label='LTX enable upsampling', value=False, elem_id=\"ltx_upsample_enable\")\n                    upsample_ratio = gr.Slider(label='LTX upsample ratio', minimum=1.0, maximum=4.0, step=0.1, value=2.0, elem_id=\"ltx_upsample_ratio\", interactive=False)\n            with gr.Accordion(open=False, label=\"Refine\", elem_id='ltx_refine_accordion'):\n                with gr.Row():\n                    refine_enable = gr.Checkbox(label='LTX enable refine', value=False, elem_id=\"ltx_refine_enable\")\n                    refine_strength = gr.Slider(label='LTX refine strength', minimum=0.1, maximum=1.0, step=0.05, value=0.4, elem_id=\"ltx_refine_strength\")\n            with gr.Accordion(open=False, label=\"Advanced\", elem_id='ltx_parameters_accordion'):\n                steps, sampler_index = ui_sections.create_sampler_and_steps_selection(None, \"ltx\", default_steps=50)\n                with gr.Row():\n                    decode_timestep = gr.Slider(label='LTX decode timestep', minimum=0.01, maximum=1.0, step=0.01, value=0.05, elem_id=\"ltx_decode_timestep\")\n                    image_cond_noise_scale = gr.Slider(label='Noise scale', minimum=0.01, maximum=1.0, step=0.01, value=0.025, elem_id=\"ltx_image_cond_noise_scale\")\n            with gr.Accordion(open=False, label=\"Audio\", elem_id='ltx_audio_accordion'):\n                with gr.Row():\n                    audio_enable = gr.Checkbox(label='LTX enable audio', value=False, elem_id=\"ltx_audio_enable\")\n\n        with gr.Column(elem_id='ltx-output-column', scale=2) as _column_output:\n            with gr.Row():\n                video = gr.Video(label=\"Output\", show_label=False, elem_id='ltx_output_video', elem_classes=['control-image'], height=512, autoplay=False)\n                # video = gr.Gallery(value=[], label=\"Output\", show_label=False, elem_id='ltx_output_video', elem_classes=['control-image'], height=512)\n            with gr.Row():\n                text = gr.HTML('', elem_id='ltx_generation_info', show_label=False)\n\n    task_id = gr.Textbox(visible=False, value='')\n    ui_state = gr.Textbox(visible=False, value='')\n    state_inputs = [task_id, ui_state]\n\n    video_inputs = [\n        model,\n        prompt, negative, styles,\n        width, height, frames,\n        steps, sampler_index, seed,\n        upsample_enable, upsample_ratio,\n        refine_enable, refine_strength,\n        init_strength, init_image, last_image, condition_files, condition_video, condition_video_frames, condition_video_skip,\n        decode_timestep, image_cond_noise_scale,\n        mp4_fps, mp4_interpolate, mp4_codec, mp4_ext, mp4_opt, mp4_video, mp4_frames, mp4_sf,\n        audio_enable,\n        overrides,\n    ]\n    video_outputs = [\n        video,\n        text,\n    ]\n\n    video_dict = dict(\n        fn=ltx_process.run_ltx,\n        _js=\"submit_ltx\",\n        inputs=state_inputs + video_inputs,\n        outputs=video_outputs,\n        show_progress='hidden',\n    )\n    generate.click(**video_dict)\n"
  },
  {
    "path": "modules/ltx/ltx_util.py",
    "content": "import time\nimport torch\nfrom PIL import Image\nfrom modules import devices, shared, sd_models, timer, extra_networks\n\n\nloaded_model: str = None\n\n\ndef get_bucket(size: int):\n    if not hasattr(shared.sd_model, 'vae_temporal_compression_ratio'):\n        return int(size) - (int(size) % 32)\n    return int(size) - (int(size) % shared.sd_model.vae_temporal_compression_ratio)\n\n\ndef get_frames(frames: int):\n    return int(8 * (int(frames) // 8)) + 1\n\n\ndef load_model(engine: str, model: str):\n    global loaded_model # pylint: disable=global-statement\n    if loaded_model == model:\n        return\n    if model is None or model == '' or model=='None':\n        loaded_model = None\n        shared.sd_model = None\n        return\n    t0 = time.time()\n    from modules.video_models import models_def, video_load\n    selected: models_def.Model = [m for m in models_def.models[engine] if m.name == model][0]\n    shared.log.info(f'Video load: engine=\"{engine}\" selected=\"{model}\" {selected}')\n    video_load.load_model(selected)\n    loaded_model = model\n    t1 = time.time()\n    shared.sd_model = sd_models.apply_balanced_offload(shared.sd_model)\n    t2 = time.time()\n    timer.process.add('load', t1 - t0)\n    timer.process.add('offload', t2 - t1)\n\n\ndef load_upsample(upsample_pipe, upsample_repo_id):\n    if upsample_pipe is None:\n        t0 = time.time()\n        from diffusers.pipelines.ltx.pipeline_ltx_latent_upsample import LTXLatentUpsamplePipeline\n        shared.log.info(f'Video load: cls={LTXLatentUpsamplePipeline.__class__.__name__} repo=\"{upsample_repo_id}\"')\n        upsample_pipe = LTXLatentUpsamplePipeline.from_pretrained(\n            upsample_repo_id,\n            vae=shared.sd_model.vae,\n            cache_dir=shared.opts.hfcache_dir,\n            torch_dtype=devices.dtype,\n        )\n        t1 = time.time()\n        timer.process.add('load', t1 - t0)\n    return upsample_pipe\n\n\ndef get_conditions(width, height, condition_strength, condition_images, condition_files, condition_video, condition_video_frames, condition_video_skip):\n    from diffusers.pipelines.ltx.pipeline_ltx_condition import LTXVideoCondition\n    conditions = []\n    if condition_images is not None:\n        for condition_image in condition_images:\n            try:\n                if isinstance(condition_image, str):\n                    from modules.api.api import decode_base64_to_image\n                    condition_image = decode_base64_to_image(condition_image)\n                condition_image = condition_image.convert('RGB').resize((width, height), resample=Image.Resampling.LANCZOS)\n                conditions.append(LTXVideoCondition(image=condition_image, frame_index=0, strength=condition_strength))\n                shared.log.debug(f'Video condition: image={condition_image.size} strength={condition_strength}')\n            except Exception as e:\n                shared.log.error(f'LTX condition image: {e}')\n    if condition_files is not None:\n        condition_images = []\n        for fn in condition_files:\n            try:\n                if hasattr(fn, 'name'):\n                    condition_image = Image.open(fn.name).convert('RGB').resize((width, height), resample=Image.Resampling.LANCZOS)\n                else:\n                    condition_image = fn.convert('RGB').resize((width, height), resample=Image.Resampling.LANCZOS)\n                condition_images.append(condition_image)\n            except Exception as e:\n                shared.log.error(f'LTX condition files: {e}')\n        if len(condition_images) > 0:\n            conditions.append(LTXVideoCondition(video=condition_images, frame_index=0, strength=condition_strength))\n            shared.log.debug(f'Video condition: files={len(condition_images)} size={condition_images[0].size} strength={condition_strength}')\n    if condition_video is not None:\n        from modules.video_models.video_utils import get_video_frames\n        try:\n            condition_frames = get_video_frames(condition_video, num_frames=condition_video_frames, skip_frames=condition_video_skip)\n            condition_frames = [f.convert('RGB').resize((width, height), resample=Image.Resampling.LANCZOS) for f in condition_frames]\n            if len(condition_frames) > 0:\n                conditions.append(LTXVideoCondition(video=condition_frames, frame_index=0, strength=condition_strength))\n                shared.log.debug(f'Video condition: frames={len(condition_frames)} size={condition_frames[0].size} strength={condition_strength}')\n        except Exception as e:\n            shared.log.error(f'LTX condition video: {e}')\n    return conditions\n\n\ndef get_prompts(prompt, negative, styles):\n    prompt = shared.prompt_styles.apply_styles_to_prompt(prompt, styles)\n    negative = shared.prompt_styles.apply_negative_styles_to_prompt(negative, styles)\n    prompts, networks = extra_networks.parse_prompts([prompt])\n    prompt = prompts[0] if len(prompts) > 0 else prompt\n    return prompt, negative, networks\n\n\ndef get_generator(seed):\n    import random\n    if seed is None or seed < 0:\n        random.seed()\n        seed = int(random.randrange(4294967294))\n    return torch.Generator().manual_seed(seed)\n\n\ndef vae_decode(latents, decode_timestep, seed):\n    t0 = time.time()\n    shared.log.debug(f'Video: cls={shared.sd_model.vae.__class__.__name__} op=vae latents={latents.shape} timestep={decode_timestep}')\n    from diffusers.utils.torch_utils import randn_tensor\n    latents = shared.sd_model._denormalize_latents( # pylint: disable=protected-access\n        latents,\n        shared.sd_model.vae.latents_mean,\n        shared.sd_model.vae.latents_std,\n        shared.sd_model.vae.config.scaling_factor\n    )\n    latents = latents.to(device=devices.device, dtype=devices.dtype)\n    if not shared.sd_model.vae.config.timestep_conditioning:\n        timestep = None\n    else:\n        noise = randn_tensor(latents.shape, generator=get_generator(seed), device=devices.device, dtype=devices.dtype)\n        timestep = torch.tensor([decode_timestep], device=devices.device, dtype=latents.dtype)\n        noise_scale = torch.tensor([decode_timestep], device=devices.device, dtype=devices.dtype)[:, None, None, None, None]\n        latents = (1 - noise_scale) * latents + noise_scale * noise\n    frames = shared.sd_model.vae.decode(latents, timestep, return_dict=False)[0] # n, c, f, h, w\n    # frames = frames.squeeze(0) if frames.ndim == 5 else frames\n    # frames = frames.permute(1, 2, 3, 0)\n    # frames = shared.sd_model.video_processor.postprocess_video(frames, output_type='pil')\n    t1 = time.time()\n    timer.process.add('vae', t1 - t0)\n    return frames\n"
  },
  {
    "path": "modules/masking.py",
    "content": "from types import SimpleNamespace\nfrom typing import List\nimport os\nimport sys\nimport time\nimport gradio as gr\nimport numpy as np\nimport cv2\nfrom PIL import Image, ImageFilter, ImageOps\nfrom transformers import SamModel, SamImageProcessor, MaskGenerationPipeline\nfrom modules import shared, errors, devices, paths, sd_models\nfrom modules.memstats import memory_stats\n\n\ndebug = shared.log.trace if os.environ.get('SD_MASK_DEBUG', None) is not None else lambda *args, **kwargs: None\ndebug('Trace: MASK')\n\n\ndef get_crop_region(mask, pad=0):\n    \"\"\"finds a rectangular region that contains all masked ares in an image. Returns (x1, y1, x2, y2) coordinates of the rectangle.\n    For example, if a user has painted the top-right part of a 512x512 image\", the result may be (256, 0, 512, 256)\"\"\"\n    h, w = mask.shape\n    crop_left = 0\n    for i in range(w):\n        if not (mask[:, i] == 0).all():\n            break\n        crop_left += 1\n    crop_right = 0\n    for i in reversed(range(w)):\n        if not (mask[:, i] == 0).all():\n            break\n        crop_right += 1\n    crop_top = 0\n    for i in range(h):\n        if not (mask[i] == 0).all():\n            break\n        crop_top += 1\n    crop_bottom = 0\n    for i in reversed(range(h)):\n        if not (mask[i] == 0).all():\n            break\n        crop_bottom += 1\n    x1 = max(crop_left - pad, 0)\n    y1 = max(crop_top - pad, 0)\n    x2 = max(w - crop_right + pad, 0)\n    y2 = max(h - crop_bottom + pad, 0)\n    if x2 < x1:\n        x1, x2 = x2, x1\n    if y2 < y1:\n        y1, y2 = y2, y1\n    crop_region = (\n        int(min(x1, w)),\n        int(min(y1, h)),\n        int(min(x2, w)),\n        int(min(y2, h)),\n    )\n    debug(f'Mask crop: mask={w, h} region={crop_region} pad={pad}')\n    return crop_region\n\n\ndef expand_crop_region(crop_region, processing_width, processing_height, image_width, image_height):\n    \"\"\"expands crop region get_crop_region() to match the ratio of the image the region will processed in; returns expanded region\n    for example, if user drew mask in a 128x32 region, and the dimensions for processing are 512x512, the region will be expanded to 128x128.\"\"\"\n    x1, y1, x2, y2 = crop_region\n    ratio_crop_region = (x2 - x1) / (y2 - y1)\n    ratio_processing = processing_width / processing_height\n\n    if ratio_crop_region > ratio_processing:\n        desired_height = (x2 - x1) / ratio_processing\n        desired_height_diff = int(desired_height - (y2-y1))\n        y1 -= desired_height_diff//2\n        y2 += desired_height_diff - desired_height_diff//2\n        if y2 >= image_height:\n            diff = y2 - image_height\n            y2 -= diff\n            y1 -= diff\n        if y1 < 0:\n            y2 -= y1\n            y1 -= y1\n        if y2 >= image_height:\n            y2 = image_height\n    else:\n        desired_width = (y2 - y1) * ratio_processing\n        desired_width_diff = int(desired_width - (x2-x1))\n        x1 -= desired_width_diff//2\n        x2 += desired_width_diff - desired_width_diff//2\n        if x2 >= image_width:\n            diff = x2 - image_width\n            x2 -= diff\n            x1 -= diff\n        if x1 < 0:\n            x2 -= x1\n            x1 -= x1\n        if x2 >= image_width:\n            x2 = image_width\n    crop_expand = (\n        int(x1),\n        int(y1),\n        int(x2),\n        int(y2),\n    )\n    debug(f'Mask expand: image={image_width, image_height} processing={processing_width, processing_height} region={crop_expand}')\n    return crop_expand\n\n\ndef fill(image, mask):\n    \"\"\"fills masked regions with colors from image using blur. Not extremely effective.\"\"\"\n    image_mod = Image.new('RGBA', (image.width, image.height))\n    image_masked = Image.new('RGBa', (image.width, image.height))\n    image_masked.paste(image.convert(\"RGBA\").convert(\"RGBa\"), mask=ImageOps.invert(mask.convert('L')))\n    image_masked = image_masked.convert('RGBa')\n    for radius, repeats in [(256, 1), (64, 1), (16, 2), (4, 4), (2, 2), (0, 1)]:\n        blurred = image_masked.filter(ImageFilter.GaussianBlur(radius)).convert('RGBA')\n        for _ in range(repeats):\n            image_mod.alpha_composite(blurred)\n    return image_mod.convert(\"RGB\")\n\n\n\"\"\"\n[docs](https://huggingface.co/docs/transformers/v4.36.1/en/model_doc/sam#overview)\nTODO: additional masking algorithms\n- PerSAM\n- REMBG\n- https://huggingface.co/docs/transformers/tasks/semantic_segmentation\n- transformers.pipeline.MaskGenerationPipeline: https://huggingface.co/models?pipeline_tag=mask-generation\n- transformers.pipeline.ImageSegmentationPipeline: https://huggingface.co/models?pipeline_tag=image-segmentation\n\"\"\"\n\nMODELS = {\n    'None': None,\n    'Facebook SAM ViT Base': 'facebook/sam-vit-base',\n    'Facebook SAM ViT Large': 'facebook/sam-vit-large',\n    'Facebook SAM ViT Huge': 'facebook/sam-vit-huge',\n    'SlimSAM Uniform': 'Zigeng/SlimSAM-uniform-50',\n    'SlimSAM Uniform Tiny': 'Zigeng/SlimSAM-uniform-77',\n    'Rembg BEN2': 'ben2',\n    'Rembg Silueta': 'silueta',\n    'Rembg U2Net': 'u2net',\n    'Rembg U2Net human': 'u2net_human_seg',\n    'Rembg ISNet general': 'isnet-general-use',\n    'Rembg ISNet anime': 'isnet-anime',\n}\nCOLORMAP = ['autumn', 'bone', 'jet', 'winter', 'rainbow', 'ocean', 'summer', 'spring', 'cool', 'hsv', 'pink', 'hot', 'parula', 'magma', 'inferno', 'plasma', 'viridis', 'cividis', 'twilight', 'shifted', 'turbo', 'deepgreen']\nTYPES = ['None', 'Opaque', 'Binary', 'Masked', 'Grayscale', 'Color', 'Composite']\ncache_dir = 'models/control/segment'\ngenerator: MaskGenerationPipeline = None\nbusy = False\nbtn_mask = None\nbtn_lama = None\nlama_model = None\ncontrols = []\nopts = SimpleNamespace(**{\n    'model': None,\n    'auto_mask': 'None',\n    'auto_segment': 'None',\n    'mask_only': False,\n    'mask_blur': 0,\n    'mask_erode': 0,\n    'mask_dilate': 0,\n    'seg_iou_thresh': 0.5,\n    'seg_score_thresh': 0.8,\n    'seg_nms_thresh': 0.5,\n    'seg_overlap_ratio': 0.3,\n    'seg_points_per_batch': 64,\n    'seg_topK': 50,\n    'seg_colormap': 'pink',\n    'preview_type': 'Composite',\n    'seg_live': True,\n    'weight_original': 0.5,\n    'weight_mask': 0.5,\n    'kernel_iterations': 1,\n    'invert': False\n})\n\n\ndef init_model(selected_model: str):\n    global busy, generator # pylint: disable=global-statement\n    model_path = MODELS[selected_model]\n    if model_path is None: # none\n        if generator is not None:\n            shared.log.debug('Mask segment unloading model')\n        opts.model = None\n        generator = None\n        devices.torch_gc()\n        return selected_model\n    if 'Rembg' in selected_model: # rembg\n        opts.model = model_path\n        generator = None\n        devices.torch_gc()\n        return selected_model\n    if opts.model != selected_model or generator is None: # sam pipeline\n        busy = True\n        t0 = time.time()\n        shared.log.debug(f'Mask segment loading: model=\"{selected_model}\" path={model_path}')\n        model = SamModel.from_pretrained(model_path, cache_dir=cache_dir).to(device=devices.device)\n        processor = SamImageProcessor.from_pretrained(model_path, cache_dir=cache_dir)\n        generator = MaskGenerationPipeline(\n            model=model,\n            image_processor=processor,\n            device=devices.device,\n            # output_bboxes_mask=False,\n            # output_rle_masks=False,\n        )\n        devices.torch_gc()\n        shared.log.debug(f'Mask segment loaded: model=\"{selected_model}\" path={model_path} time={time.time()-t0:.2f}s')\n        opts.model = selected_model\n        busy = False\n    return selected_model\n\n\ndef run_segment(input_image: gr.Image, input_mask: np.ndarray):\n    outputs = None\n    with devices.inference_context():\n        try:\n            outputs = generator(\n                input_image,\n                points_per_batch=opts.seg_points_per_batch,\n                pred_iou_thresh=opts.seg_iou_thresh,\n                stability_score_thresh=opts.seg_score_thresh,\n                crops_nms_thresh=opts.seg_nms_thresh,\n                crop_overlap_ratio=opts.seg_overlap_ratio,\n                crops_n_layers=0,\n                crop_n_points_downscale_factor=1,\n            )\n        except Exception as e:\n            shared.log.error(f'Mask segment error: {e}')\n            errors.display(e, 'Mask segment')\n            return outputs\n    devices.torch_gc()\n    i = 1\n    if input_mask is None:\n        input_mask = np.zeros((input_image.height, input_image.width), dtype='uint8')\n    elif isinstance(input_mask, Image.Image):\n        input_mask = np.array(input_mask)\n    combined_mask = np.zeros(input_mask.shape, dtype='uint8')\n    input_mask_size = np.count_nonzero(input_mask)\n    debug(f'Segment SAM: {vars(opts)}')\n    for mask, score in zip(outputs['masks'], outputs['scores']):\n        mask = mask.astype('uint8')\n        mask_size = np.count_nonzero(mask)\n        if mask_size == 0:\n            continue\n        overlap = 0\n        if input_mask_size > 0:\n            if mask.shape != input_mask.shape:\n                mask = cv2.resize(mask, (input_mask.shape[1], input_mask.shape[0]), interpolation=cv2.INTER_LANCZOS4)\n            overlap = cv2.bitwise_and(mask, input_mask)\n            overlap = np.count_nonzero(overlap)\n            if overlap == 0:\n                continue\n        mask = (opts.seg_topK + 1 - i) * mask * (255 // opts.seg_topK) # set grayscale intensity so we can recolor\n        combined_mask = combined_mask + mask\n        debug(f'Segment mask: i={i} size={input_image.width}x{input_image.height} masked={mask_size}px overlap={overlap} score={score:.2f}')\n        i += 1\n        if i > opts.seg_topK:\n            break\n    return combined_mask\n\n\ndef run_rembg(input_image: Image, input_mask: np.ndarray):\n    try:\n        import rembg\n    except Exception as e:\n        shared.log.error(f'Mask Rembg load failed: {e}')\n        return input_mask\n    if \"U2NET_HOME\" not in os.environ:\n        os.environ[\"U2NET_HOME\"] = os.path.join(paths.models_path, \"Rembg\")\n    if opts.model == 'ben2':\n        from modules import ben2\n        args = {\n            'image': input_image,\n            'refine': True,\n        }\n        mask = ben2.remove(**args)\n        _r, _g, _b, alpha = mask.split()\n        mask = alpha\n    else:\n        args = {\n            'data': input_image,\n            'only_mask': True,\n            'post_process_mask': False,\n            'bgcolor': None,\n            'alpha_matting': False,\n            'alpha_matting_foreground_threshold': 240,\n            'alpha_matting_background_threshold': 10,\n            'alpha_matting_erode_size': int(opts.mask_erode * 40),\n            'session': rembg.new_session(opts.model),\n        }\n        mask = rembg.remove(**args)\n    mask = np.array(mask)\n    if input_mask is None:\n        input_mask = np.zeros(mask.shape, dtype='uint8')\n    elif isinstance(input_mask, Image.Image):\n        input_mask = np.array(input_mask)\n    binary_input = cv2.threshold(input_mask, 127, 255, cv2.THRESH_BINARY | cv2.THRESH_OTSU)[1]\n    binary_output = cv2.threshold(mask, 127, 255, cv2.THRESH_BINARY | cv2.THRESH_OTSU)[1]\n    if binary_input.shape != binary_output.shape:\n        binary_output = cv2.resize(binary_output, binary_input.shape[:2], interpolation=cv2.INTER_LANCZOS4)\n    binary_overlap = cv2.bitwise_and(binary_input, binary_output)\n    input_size = np.count_nonzero(binary_input)\n    overlap_size = np.count_nonzero(binary_overlap)\n    debug(f'Segment Rembg: {args} overlap={overlap_size}')\n    if input_size > 0 and overlap_size == 0:\n        mask = np.invert(mask)\n    return mask\n\n\ndef get_mask(input_image: gr.Image, input_mask: gr.Image):\n    debug('Run auto-mask') # pylint: disable=protected-access\n    t0 = time.time()\n    if input_mask is not None:\n        output_mask = np.array(input_mask)\n        if len(output_mask.shape) > 2:\n            output_mask = cv2.cvtColor(output_mask, cv2.COLOR_RGB2GRAY)\n        binary_mask = cv2.threshold(output_mask, 127, 255, cv2.THRESH_BINARY | cv2.THRESH_OTSU)[1]\n        mask_size = np.count_nonzero(binary_mask)\n    else:\n        output_mask = None\n        mask_size = 0\n    if mask_size == 0 and opts.auto_mask != 'None': # mask_size == 0\n        output_mask = np.array(input_image)\n        if opts.auto_mask == 'Threshold':\n            output_mask = cv2.cvtColor(output_mask, cv2.COLOR_RGB2GRAY)\n            output_mask = cv2.threshold(output_mask, 127, 255, cv2.THRESH_BINARY | cv2.THRESH_OTSU)[1]\n        elif opts.auto_mask == 'Edge':\n            output_mask = cv2.cvtColor(output_mask, cv2.COLOR_RGB2GRAY)\n            output_mask = cv2.threshold(output_mask, 127, 255, cv2.THRESH_BINARY | cv2.THRESH_OTSU)[1]\n            # output_mask = cv2.Canny(output_mask, 50, 150) # run either canny or threshold before contouring\n            contours, _hierarchy = cv2.findContours(output_mask, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)\n            contours = sorted(contours, key=cv2.contourArea, reverse=True) # sort contours by area with largest first\n            contours = contours[:opts.seg_topK] # limit to top K contours\n            output_mask = np.zeros(output_mask.shape, dtype='uint8')\n            largest_size = cv2.contourArea(contours[0]) if len(contours) > 0 else 0\n            for i, contour in enumerate(contours):\n                area_size = cv2.contourArea(contour)\n                luminance = int(255.0 * area_size / largest_size)\n                if luminance < 1:\n                    break\n                cv2.drawContours(output_mask, contours, i, (luminance), -1)\n        elif opts.auto_mask == 'Grayscale':\n            lab_image = cv2.cvtColor(output_mask, cv2.COLOR_RGB2LAB)\n            l_channel, a, b = cv2.split(lab_image)\n            clahe = cv2.createCLAHE(clipLimit=2.0, tileGridSize=(8, 8)) # applying CLAHE to L-channel\n            cl = clahe.apply(l_channel)\n            lab_image = cv2.merge((cl, a, b)) # merge the CLAHE enhanced L-channel with the a and b channel\n            lab_image = cv2.cvtColor(lab_image, cv2.COLOR_LAB2RGB)\n            output_mask = cv2.cvtColor(lab_image, cv2.COLOR_RGB2GRAY)\n        t1 = time.time()\n        debug(f'Segment auto-mask: mode={opts.auto_mask} time={t1-t0:.2f}')\n        return output_mask\n    else: # no mask or empty mask and no auto-mask\n        return output_mask\n\n\ndef outpaint(input_image: Image.Image, outpaint_type: str = 'Edge'):\n    fn = f'{sys._getframe(2).f_code.co_name}:{sys._getframe(1).f_code.co_name}' # pylint: disable=protected-access\n    debug(f'Run outpaint: fn={fn}') # pylint: disable=protected-access\n    image = cv2.cvtColor(np.array(input_image), cv2.COLOR_RGB2BGR)\n    h0, w0 = image.shape[:2]\n    empty = (image == 0).all(axis=2) # pylint: disable=no-member\n    y0, x0 = np.where(~empty) # non empty\n    x1, x2 = min(x0), max(x0)\n    y1, y2 = min(y0), max(y0)\n    cropped = image[y1:y2, x1:x2]\n\n    mask = cv2.copyMakeBorder(cropped, y1, h0-y2, x1, w0-x2, cv2.BORDER_CONSTANT, value=(0, 0, 0))\n    mask = cv2.resize(mask, (w0, h0))\n    mask = cv2.cvtColor(np.array(mask), cv2.COLOR_BGR2GRAY)\n    mask = cv2.threshold(mask, 0, 255, cv2.THRESH_BINARY)[1]\n    if outpaint_type == 'Edge':\n        bordered = cv2.copyMakeBorder(cropped, y1, h0-y2, x1, w0-x2, cv2.BORDER_REPLICATE)\n        bordered = cv2.resize(bordered, (w0, h0))\n        image = bordered\n\n    image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)\n    image = Image.fromarray(image)\n    mask = Image.fromarray(mask)\n    return image, mask\n\n\ndef run_mask(input_image: Image.Image, input_mask: Image.Image = None, return_type: str = None, mask_blur: int = None, mask_padding: int = None, invert=None):\n    if isinstance(input_image, list) and len(input_image) > 0:\n        input_image = input_image[0]\n    elif isinstance(input_image, dict):\n        input_mask = input_image.get('mask', None)\n        input_image = input_image.get('image', None)\n    elif isinstance(input_image, np.ndarray):\n        input_image = Image.fromarray(input_image)\n    elif isinstance(input_image, Image.Image):\n        pass\n    else:\n        return input_mask\n\n    fn = f'{sys._getframe(2).f_code.co_name}:{sys._getframe(1).f_code.co_name}' # pylint: disable=protected-access\n    debug(f'Run mask: fn={fn}') # pylint: disable=protected-access\n    debug(f'Run mask: opts={opts}') # pylint: disable=protected-access\n\n    size = min(input_image.width, input_image.height)\n    if invert is not None:\n        opts.invert = invert\n\n    # set legacy mask args\n    if mask_blur is not None or mask_padding is not None:\n        debug(f'Mask args legacy: blur={mask_blur} padding={mask_padding}')\n        if mask_blur is not None: # compatibility with old img2img values which uses px values\n            opts.mask_blur = round(4 * mask_blur / size, 3)\n        if mask_padding is not None: # compatibility with old img2img values which uses px values\n            size = min(input_image.width, input_image.height)\n            opts.mask_dilate = 4 * mask_padding / size\n\n\n    # optional auto-masking and auto-segmentation\n    mask = input_mask\n    if opts.auto_mask is not None and opts.auto_mask != 'None':\n        mask = get_mask(input_image, input_mask) # perform optional auto-masking\n    elif opts.auto_segment is not None and opts.auto_segment != 'None':\n        init_model(opts.auto_segment)\n        if generator is not None:\n            mask = run_segment(input_image, input_mask)\n        else:\n            mask = run_rembg(input_image, input_mask)\n    elif isinstance(mask, Image.Image):\n        mask = np.array(mask)\n\n    # early exit if no input mask or auto-mask\n    if mask is None:\n        return None\n    mask = cv2.resize(mask, (input_image.width, input_image.height), interpolation=cv2.INTER_LANCZOS4)\n\n    if opts.mask_erode > 0:\n        try:\n            kernel = np.ones((int(opts.mask_erode * size / 4) + 1, int(opts.mask_erode * size / 4) + 1), np.uint8)\n            mask = cv2.erode(mask, kernel, iterations=opts.kernel_iterations) # remove noise\n            debug(f'Mask erode={opts.mask_erode:.3f} kernel={kernel.shape} mask={mask.shape}')\n        except Exception as e:\n            shared.log.error(f'Mask erode: {e}')\n    if opts.mask_dilate > 0:\n        try:\n            kernel = np.ones((int(opts.mask_dilate * size / 4) + 1, int(opts.mask_dilate * size / 4) + 1), np.uint8)\n            mask = cv2.dilate(mask, kernel, iterations=opts.kernel_iterations) # expand area\n            debug(f'Mask dilate={opts.mask_dilate:.3f} kernel={kernel.shape} mask={mask.shape}')\n        except Exception as e:\n            shared.log.error(f'Mask dilate: {e}')\n    if opts.mask_blur > 0:\n        try:\n            sigmax, sigmay = 1 + int(opts.mask_blur * size / 4), 1 + int(opts.mask_blur * size / 4)\n            mask = cv2.GaussianBlur(mask, (0, 0), sigmaX=sigmax, sigmaY=sigmay) # blur mask\n            debug(f'Mask blur={opts.mask_blur:.3f} x={sigmax} y={sigmay} mask={mask.shape}')\n        except Exception as e:\n            shared.log.error(f'Mask blur: {e}')\n    if opts.invert:\n        mask = np.invert(mask)\n\n    return_type = return_type or opts.preview_type\n\n    if return_type == 'None':\n        return input_mask\n    elif return_type == 'Opaque':\n        binary_mask = cv2.threshold(mask, 0, 255, cv2.THRESH_BINARY)[1]\n        return Image.fromarray(binary_mask)\n    elif return_type == 'Binary':\n        binary_mask = cv2.threshold(mask, 127, 255, cv2.THRESH_BINARY | cv2.THRESH_OTSU)[1] # otsu uses mean instead of threshold\n        return Image.fromarray(binary_mask)\n    elif return_type == 'Masked':\n        orig = np.array(input_image)\n        mask = cv2.cvtColor(mask, cv2.COLOR_GRAY2RGB)\n        masked_image = cv2.bitwise_and(orig, mask)\n        return Image.fromarray(masked_image)\n    elif return_type == 'Grayscale':\n        return Image.fromarray(mask)\n    elif return_type == 'Color':\n        colored_mask = cv2.applyColorMap(mask, COLORMAP.index(opts.seg_colormap)) # recolor mask\n        return Image.fromarray(colored_mask)\n    elif return_type == 'Composite':\n        colored_mask = cv2.applyColorMap(mask, COLORMAP.index(opts.seg_colormap)) # recolor mask\n        orig = np.array(input_image)\n        combined_image = cv2.addWeighted(orig, opts.weight_original, colored_mask, opts.weight_mask, 0)\n        return Image.fromarray(combined_image)\n    else:\n        shared.log.error(f'Mask unknown return type: {return_type}')\n    return input_mask\n\n\ndef run_lama(input_image: gr.Image, input_mask: gr.Image = None):\n    global lama_model # pylint: disable=global-statement\n    if isinstance(input_image, dict):\n        input_mask = input_image.get('mask', None)\n        input_image = input_image.get('image', None)\n    if input_image is None:\n        return None\n    input_mask = run_mask(input_image, input_mask, return_type='Grayscale')\n    if lama_model is None:\n        import modules.lama\n        shared.log.debug(f'Mask LaMa loading: model={modules.lama.LAMA_MODEL_URL}')\n        lama_model = modules.lama.SimpleLama()\n        shared.log.debug(f'Mask LaMa loaded: {memory_stats()}')\n    sd_models.move_model(lama_model.model, devices.device)\n\n    result = lama_model(input_image, input_mask)\n    if shared.opts.control_move_processor:\n        lama_model.model.to('cpu')\n    return result\n\n\ndef run_mask_live(input_image: gr.Image):\n    global busy # pylint: disable=global-statement\n    if opts.seg_live:\n        if not busy:\n            busy = True\n            res = run_mask(input_image)\n            busy = False\n            return res\n    return None\n\n\ndef create_segment_ui():\n    def update_opts(*args):\n        opts.seg_live = args[0]\n        opts.mask_only = args[1]\n        opts.invert = args[2]\n        opts.mask_dilate = args[3]\n        opts.mask_erode = args[4]\n        opts.mask_blur = args[5]\n        opts.seg_score_thresh = args[6]\n        opts.auto_segment = args[7]\n        opts.auto_mask = args[8]\n        opts.seg_iou_thresh = args[9]\n        opts.seg_nms_thresh = args[10]\n        opts.preview_type = args[11]\n        opts.seg_colormap = args[12]\n\n    global btn_mask, btn_lama # pylint: disable=global-statement\n    with gr.Accordion(open=False, label=\"Mask\", elem_id=\"control_mask\", elem_classes=[\"small-accordion\"]):\n        controls.clear()\n        with gr.Row():\n            controls.append(gr.Checkbox(label=\"Live update\", value=False, visible=False, elem_id=\"control_mask_live_update\"))\n        with gr.Row():\n            controls.append(gr.Checkbox(label=\"Inpaint masked only\", value=False, elem_id=\"control_mask_only\", ))\n            controls.append(gr.Checkbox(label=\"Invert mask\", value=False, elem_id=\"control_mask_invert\"))\n        with gr.Row():\n            controls.append(gr.Slider(minimum=0.0, maximum=1.0, step=0.01, label='Dilate', value=0, elem_id=\"control_mask_dilate\"))\n            controls.append(gr.Slider(minimum=0.0, maximum=1.0, step=0.01, label='Erode', value=0, elem_id=\"control_mask_erode\"))\n        with gr.Row():\n            controls.append(gr.Slider(minimum=0.0, maximum=1.0, step=0.01, label='Blur', value=0, elem_id=\"control_mask_blur\"))\n            controls.append(gr.Slider(minimum=0.0, maximum=1.0, step=0.01, label='Auto min score', value=0.8, elem_id=\"control_mask_score\"))\n        with gr.Row():\n            controls.append(gr.Dropdown(label=\"Auto-segment\", choices=MODELS.keys(), value='None', elem_id=\"control_mask_segment\"))\n            controls.append(gr.Dropdown(label=\"Auto-mask\", choices=['None', 'Threshold', 'Edge', 'Grayscale'], value='None', elem_id=\"control_mask_auto\"))\n        with gr.Row():\n            controls.append(gr.Slider(minimum=0.0, maximum=1.0, step=0.01, label='IOU', value=0.5, visible=False, elem_id=\"control_mask_iou\"))\n            controls.append(gr.Slider(minimum=0.0, maximum=1.0, step=0.01, label='NMS', value=0.5, visible=False, elem_id=\"control_mask_nms\"))\n        with gr.Row():\n            controls.append(gr.Dropdown(label=\"Preview\", choices=['None', 'Masked', 'Binary', 'Grayscale', 'Color', 'Composite'], value='Composite', elem_id=\"control_mask_preview\"))\n            controls.append(gr.Dropdown(label=\"Colormap\", choices=COLORMAP, value='pink', elem_id=\"control_mask_colormap\"))\n        with gr.Row():\n            btn_mask = gr.Button(\"Run Preview\", elem_id=\"control_mask_refresh\", )\n            btn_lama = gr.Button(\"LaMa Remove\", elem_id=\"control_mask_remove\")\n\n        for control in controls:\n            control.change(fn=update_opts, inputs=controls, outputs=[])\n        return controls\n\n\ndef bind_controls(image_controls: List[gr.Image], preview_image: gr.Image, output_image: gr.Image):\n    for image_control in image_controls:\n        btn_mask.click(run_mask, inputs=[image_control], outputs=[preview_image])\n        btn_lama.click(run_lama, inputs=[image_control], outputs=[output_image])\n        image_control.edit(fn=run_mask_live, inputs=[image_control], outputs=[preview_image])\n        for control in controls:\n            control.change(fn=run_mask_live, inputs=[image_control], outputs=[preview_image])\n\n\ndef process_kanvas(kanvas_data):\n    from modules import ui_control_helpers\n    if kanvas_data is None or 'kanvas' not in kanvas_data:\n        return None\n    input_image, input_mask = ui_control_helpers.process_kanvas(kanvas_data)\n    shared.log.debug(f'Kanvas mask: opts={vars(opts)}')\n    output_mask = run_mask(input_image, input_mask)\n    return output_mask\n\n\ndef process_kanvas_lama(kanvas_data):\n    from modules import ui_control_helpers\n    if kanvas_data is None or 'kanvas' not in kanvas_data:\n        return None\n    input_image, input_mask = ui_control_helpers.process_kanvas(kanvas_data)\n    shared.log.debug(f'Kanvas LaMa: opts={vars(opts)}')\n    output_mask = run_lama(input_image, input_mask)\n    return output_mask\n\n\ndef bind_kanvas(input_image: Image.Image, output_image: gr.Image):\n    btn_mask.click(_js='getKanvasData', fn=process_kanvas, inputs=[input_image], outputs=[output_image])\n    btn_lama.click(_js='getKanvasData', fn=process_kanvas_lama, inputs=[input_image], outputs=[output_image])\n"
  },
  {
    "path": "modules/memmon.py",
    "content": "from collections import defaultdict\nimport torch\n\n\nclass MemUsageMonitor():\n    device = None\n    disabled = False\n    opts = None\n    data = None\n\n    def __init__(self, name, device):\n        self.name = name\n        self.device = device\n        self.data = defaultdict(int)\n        if not torch.cuda.is_available():\n            self.disabled = True\n        else:\n            try:\n                torch.cuda.mem_get_info(self.device.index if self.device.index is not None else torch.cuda.current_device())\n                torch.cuda.memory_stats(self.device)\n            except Exception:\n                self.disabled = True\n\n    def cuda_mem_get_info(self): # legacy for extensions only\n        if self.disabled:\n            return 0, 0\n        return torch.cuda.mem_get_info(self.device.index if self.device.index is not None else torch.cuda.current_device())\n\n    def reset(self):\n        if not self.disabled:\n            try:\n                torch.cuda.reset_peak_memory_stats(self.device)\n                self.data['retries'] = 0\n                self.data['oom'] = 0\n                # torch.cuda.reset_accumulated_memory_stats(self.device)\n                # torch.cuda.reset_max_memory_allocated(self.device)\n                # torch.cuda.reset_max_memory_cached(self.device)\n            except Exception:\n                pass\n\n    def read(self):\n        if not self.disabled:\n            try:\n                self.data[\"free\"], self.data[\"total\"] = torch.cuda.mem_get_info(self.device.index if self.device.index is not None else torch.cuda.current_device())\n                self.data[\"used\"] = self.data[\"total\"] - self.data[\"free\"]\n                torch_stats = torch.cuda.memory_stats(self.device)\n                self.data[\"active\"] = torch_stats.get(\"active.all.current\", torch_stats.get(\"active_bytes.all.current\", -1))\n                self.data[\"active_peak\"] = torch_stats.get(\"active_bytes.all.peak\", -1)\n                self.data[\"reserved\"] = torch_stats.get(\"reserved_bytes.all.current\", -1)\n                self.data[\"reserved_peak\"] = torch_stats.get(\"reserved_bytes.all.peak\", -1)\n                self.data['retries'] = torch_stats.get(\"num_alloc_retries\", -1)\n                self.data['oom'] = torch_stats.get(\"num_ooms\", -1)\n            except Exception:\n                self.disabled = True\n        return self.data\n\n    def summary(self):\n        from modules.shared import ram_stats\n        gpu = ''\n        cpu = ''\n        gpu = ''\n        if not self.disabled:\n            mem_mon_read = self.read()\n            ooms = mem_mon_read.pop(\"oom\")\n            retries = mem_mon_read.pop(\"retries\")\n            vram = {k: v//1048576 for k, v in mem_mon_read.items()}\n            if 'active_peak' in vram:\n                peak = max(vram['active_peak'], vram['reserved_peak'], vram['used'])\n                used = round(100.0 * peak / vram['total']) if vram['total'] > 0 else 0\n            else:\n                peak = 0\n                used = 0\n            if peak > 0:\n                gpu += f\"| GPU {peak} MB\"\n                gpu += f\" {used}%\" if used > 0 else ''\n                gpu += f\" | retries {retries} oom {ooms}\" if retries > 0 or ooms > 0 else ''\n        ram = ram_stats()\n        if ram['used'] > 0:\n            cpu += f\"| RAM {ram['used']} GB\"\n            cpu += f\" {round(100.0 * ram['used'] / ram['total'])}%\" if ram['total'] > 0 else ''\n        return f'{gpu} {cpu}'\n"
  },
  {
    "path": "modules/memstats.py",
    "content": "import re\nimport sys\nimport os\nimport psutil\nimport torch\nfrom modules import shared, errors\n\n\nfail_once = False\nram = {}\ngpu = {}\nmem = {}\nprocess = None\ndocker_limit = None\nrunpod_limit = None\n\n\ndef gb(val: float):\n    return round(val / 1024 / 1024 / 1024, 2)\n\n\ndef get_docker_limit():\n    global docker_limit # pylint: disable=global-statement\n    if docker_limit is not None:\n        return docker_limit\n    try:\n        with open('/sys/fs/cgroup/memory/memory.limit_in_bytes', 'r', encoding='utf8') as f:\n            docker_limit = float(f.read())\n    except Exception:\n        docker_limit = sys.float_info.max\n    if docker_limit == 0:\n        docker_limit = sys.float_info.max\n    return docker_limit\n\n\ndef get_runpod_limit():\n    global runpod_limit # pylint: disable=global-statement\n    if runpod_limit is not None:\n        return runpod_limit\n    runpod_limit = float(os.environ.get('RUNPOD_MEM_GB', 0)) * 1024 * 1024 * 1024\n    if runpod_limit == 0:\n        runpod_limit = sys.float_info.max\n    return runpod_limit\n\n\ndef ram_stats():\n    global process, fail_once # pylint: disable=global-statement\n    try:\n        if process is None:\n            process = psutil.Process(os.getpid())\n        res = process.memory_info()\n        if 'total' not in ram:\n            process = psutil.Process(os.getpid())\n            ram_total = 100 * res.rss / process.memory_percent()\n            ram_total = min(ram_total, get_docker_limit(), get_runpod_limit())\n            ram['total'] = gb(ram_total)\n        ram['rss'] = gb(res.rss)\n    except Exception as e:\n        ram['total'] = 0\n        ram['rss'] = 0\n        ram['error'] = str(e)\n        if not fail_once:\n            shared.log.error(f'RAM stats: {e}')\n            errors.display(e, 'RAM stats')\n            fail_once = True\n    try:\n        vmem = psutil.virtual_memory()\n        ram['used'] = gb(vmem.used) if hasattr(vmem, 'used') else 0\n        ram['free'] = gb(vmem.free) if hasattr(vmem, 'free') else 0\n        ram['avail'] = gb(vmem.available) if hasattr(vmem, 'available') else 0\n        ram['buffers'] = gb(vmem.buffers) if hasattr(vmem, 'buffers') else 0\n        ram['cached'] = gb(vmem.cached) if hasattr(vmem, 'cached') else 0\n    except Exception as e:\n        ram['used'] = 0\n        ram['free'] = 0\n        ram['avail'] = 0\n        ram['buffers'] = 0\n        ram['cached'] = 0\n        ram['error'] = str(e)\n        if not fail_once:\n            shared.log.error(f'RAM stats: {e}')\n            errors.display(e, 'RAM stats')\n            fail_once = True\n    return ram\n\n\ndef gpu_stats():\n    global fail_once # pylint: disable=global-statement\n    try:\n        free, total = torch.cuda.mem_get_info()\n        gpu['used'] = gb(total - free)\n        gpu['total'] = gb(total)\n        stats = dict(torch.cuda.memory_stats())\n        if stats.get('num_ooms', 0) > 0:\n            shared.state.oom = True\n        gpu['active'] = gb(stats.get('active_bytes.all.current', 0))\n        gpu['peak'] = gb(stats.get('active_bytes.all.peak', 0))\n        gpu['retries'] = stats.get('num_alloc_retries', 0)\n        gpu['oom'] = stats.get('num_ooms', 0)\n    except Exception as e:\n        gpu['total'] = 0\n        gpu['used'] = 0\n        gpu['error'] = str(e)\n        if not fail_once:\n            shared.log.warning(f'GPU stats: {e}')\n            # errors.display(e, 'GPU stats')\n            fail_once = True\n    return gpu\n\n\ndef memory_stats():\n    mem['ram'] = ram_stats()\n    mem['gpu'] = gpu_stats()\n    mem['job'] = shared.state.job\n    try:\n        mem['gpu']['swap'] = round(mem['gpu']['active'] - mem['gpu']['used']) if mem['gpu']['active'] > mem['gpu']['used'] else 0\n    except Exception:\n        mem['gpu']['swap'] = 0\n    return mem\n\n\ndef reset_stats():\n    try:\n        torch.cuda.reset_memory_stats()\n    except Exception:\n        pass\n\n\nclass Object:\n    pattern = r\"'(.*?)'\"\n\n    def __init__(self, name, obj):\n        self.id = id(obj)\n        self.name = name\n        self.fn = sys._getframe(2).f_code.co_name\n        self.size = sys.getsizeof(obj)\n        self.refcount = sys.getrefcount(obj)\n        if torch.is_tensor(obj):\n            self.type = obj.dtype\n            self.size = obj.element_size() * obj.nelement()\n        else:\n            self.type = re.findall(self.pattern, str(type(obj)))[0]\n            self.size = sys.getsizeof(obj)\n    def __str__(self):\n        return f'{self.fn}.{self.name} type={self.type} size={self.size} ref={self.refcount}'\n\n\ndef get_objects(gcl={}, threshold:int=0):\n    objects = []\n    seen = []\n\n    for name, obj in gcl.items():\n        if id(obj) in seen:\n            continue\n        seen.append(id(obj))\n        if name == '__name__':\n            name = obj\n        elif name.startswith('__'):\n            continue\n        try:\n            o = Object(name, obj)\n            if o.size >= threshold:\n                objects.append(o)\n        except Exception:\n            pass\n\n    objects = sorted(objects, key=lambda x: x.size, reverse=True)\n    for obj in objects:\n        shared.log.trace(obj)\n\n    return objects\n"
  },
  {
    "path": "modules/merging/convert_sdxl.py",
    "content": "import io\nimport os\nimport re\nimport hashlib\nimport torch\nfrom safetensors.torch import load_file, save_file\n\n\nunet_conversion_map = [\n    # (stable-diffusion, HF Diffusers)\n    (\"time_embed.0.weight\", \"time_embedding.linear_1.weight\"),\n    (\"time_embed.0.bias\", \"time_embedding.linear_1.bias\"),\n    (\"time_embed.2.weight\", \"time_embedding.linear_2.weight\"),\n    (\"time_embed.2.bias\", \"time_embedding.linear_2.bias\"),\n    (\"input_blocks.0.0.weight\", \"conv_in.weight\"),\n    (\"input_blocks.0.0.bias\", \"conv_in.bias\"),\n    (\"out.0.weight\", \"conv_norm_out.weight\"),\n    (\"out.0.bias\", \"conv_norm_out.bias\"),\n    (\"out.2.weight\", \"conv_out.weight\"),\n    (\"out.2.bias\", \"conv_out.bias\"),\n    # the following are for sdxl\n    (\"label_emb.0.0.weight\", \"add_embedding.linear_1.weight\"),\n    (\"label_emb.0.0.bias\", \"add_embedding.linear_1.bias\"),\n    (\"label_emb.0.2.weight\", \"add_embedding.linear_2.weight\"),\n    (\"label_emb.0.2.bias\", \"add_embedding.linear_2.bias\"),\n]\n\nunet_conversion_map_resnet = [\n    # (stable-diffusion, HF Diffusers)\n    (\"in_layers.0\", \"norm1\"),\n    (\"in_layers.2\", \"conv1\"),\n    (\"out_layers.0\", \"norm2\"),\n    (\"out_layers.3\", \"conv2\"),\n    (\"emb_layers.1\", \"time_emb_proj\"),\n    (\"skip_connection\", \"conv_shortcut\"),\n]\n\nunet_conversion_map_layer = []\n# hardcoded number of downblocks and resnets/attentions...\n# would need smarter logic for other networks.\nfor i in range(3):\n    # loop over downblocks/upblocks\n\n    for j in range(2):\n        # loop over resnets/attentions for downblocks\n        hf_down_res_prefix = f\"down_blocks.{i}.resnets.{j}.\"\n        sd_down_res_prefix = f\"input_blocks.{3*i + j + 1}.0.\"\n        unet_conversion_map_layer.append((sd_down_res_prefix, hf_down_res_prefix))\n\n        if i > 0:\n            hf_down_atn_prefix = f\"down_blocks.{i}.attentions.{j}.\"\n            sd_down_atn_prefix = f\"input_blocks.{3*i + j + 1}.1.\"\n            unet_conversion_map_layer.append((sd_down_atn_prefix, hf_down_atn_prefix))\n\n    for j in range(4):\n        # loop over resnets/attentions for upblocks\n        hf_up_res_prefix = f\"up_blocks.{i}.resnets.{j}.\"\n        sd_up_res_prefix = f\"output_blocks.{3*i + j}.0.\"\n        unet_conversion_map_layer.append((sd_up_res_prefix, hf_up_res_prefix))\n\n        if i < 2:\n            # no attention layers in up_blocks.0\n            hf_up_atn_prefix = f\"up_blocks.{i}.attentions.{j}.\"\n            sd_up_atn_prefix = f\"output_blocks.{3 * i + j}.1.\"\n            unet_conversion_map_layer.append((sd_up_atn_prefix, hf_up_atn_prefix))\n\n    if i < 3:\n        # no downsample in down_blocks.3\n        hf_downsample_prefix = f\"down_blocks.{i}.downsamplers.0.conv.\"\n        sd_downsample_prefix = f\"input_blocks.{3*(i+1)}.0.op.\"\n        unet_conversion_map_layer.append((sd_downsample_prefix, hf_downsample_prefix))\n\n        # no upsample in up_blocks.3\n        hf_upsample_prefix = f\"up_blocks.{i}.upsamplers.0.\"\n        sd_upsample_prefix = f\"output_blocks.{3*i + 2}.{1 if i == 0 else 2}.\"\n        unet_conversion_map_layer.append((sd_upsample_prefix, hf_upsample_prefix))\nunet_conversion_map_layer.append((\"output_blocks.2.2.conv.\", \"output_blocks.2.1.conv.\"))\n\nhf_mid_atn_prefix = \"mid_block.attentions.0.\"\nsd_mid_atn_prefix = \"middle_block.1.\"\nunet_conversion_map_layer.append((sd_mid_atn_prefix, hf_mid_atn_prefix))\nfor j in range(2):\n    hf_mid_res_prefix = f\"mid_block.resnets.{j}.\"\n    sd_mid_res_prefix = f\"middle_block.{2*j}.\"\n    unet_conversion_map_layer.append((sd_mid_res_prefix, hf_mid_res_prefix))\n\n\ndef convert_unet_state_dict(unet_state_dict):\n    # buyer beware: this is a *brittle* function,\n    # and correct output requires that all of these pieces interact in\n    # the exact order in which I have arranged them.\n    mapping = {k: k for k in unet_state_dict.keys()}\n    for sd_name, hf_name in unet_conversion_map:\n        mapping[hf_name] = sd_name\n    for k, v in mapping.items():\n        if \"resnets\" in k:\n            for sd_part, hf_part in unet_conversion_map_resnet:\n                v = v.replace(hf_part, sd_part)\n            mapping[k] = v\n    for k, v in mapping.items():\n        for sd_part, hf_part in unet_conversion_map_layer:\n            v = v.replace(hf_part, sd_part)\n        mapping[k] = v\n    new_state_dict = {sd_name: unet_state_dict[hf_name] for hf_name, sd_name in mapping.items()}\n    return new_state_dict\n\n\nvae_conversion_map = [\n    # (stable-diffusion, HF Diffusers)\n    (\"nin_shortcut\", \"conv_shortcut\"),\n    (\"norm_out\", \"conv_norm_out\"),\n    (\"mid.attn_1.\", \"mid_block.attentions.0.\"),\n]\n\nfor i in range(4):\n    # down_blocks have two resnets\n    for j in range(2):\n        hf_down_prefix = f\"encoder.down_blocks.{i}.resnets.{j}.\"\n        sd_down_prefix = f\"encoder.down.{i}.block.{j}.\"\n        vae_conversion_map.append((sd_down_prefix, hf_down_prefix))\n\n    if i < 3:\n        hf_downsample_prefix = f\"down_blocks.{i}.downsamplers.0.\"\n        sd_downsample_prefix = f\"down.{i}.downsample.\"\n        vae_conversion_map.append((sd_downsample_prefix, hf_downsample_prefix))\n\n        hf_upsample_prefix = f\"up_blocks.{i}.upsamplers.0.\"\n        sd_upsample_prefix = f\"up.{3-i}.upsample.\"\n        vae_conversion_map.append((sd_upsample_prefix, hf_upsample_prefix))\n\n    # up_blocks have three resnets\n    # also, up blocks in hf are numbered in reverse from sd\n    for j in range(3):\n        hf_up_prefix = f\"decoder.up_blocks.{i}.resnets.{j}.\"\n        sd_up_prefix = f\"decoder.up.{3-i}.block.{j}.\"\n        vae_conversion_map.append((sd_up_prefix, hf_up_prefix))\n\n# this part accounts for mid blocks in both the encoder and the decoder\nfor i in range(2):\n    hf_mid_res_prefix = f\"mid_block.resnets.{i}.\"\n    sd_mid_res_prefix = f\"mid.block_{i+1}.\"\n    vae_conversion_map.append((sd_mid_res_prefix, hf_mid_res_prefix))\n\n\nvae_conversion_map_attn = [\n    # (stable-diffusion, HF Diffusers)\n    (\"norm.\", \"group_norm.\"),\n    # the following are for SDXL\n    (\"q.\", \"to_q.\"),\n    (\"k.\", \"to_k.\"),\n    (\"v.\", \"to_v.\"),\n    (\"proj_out.\", \"to_out.0.\"),\n]\n\n\ndef reshape_weight_for_sd(w):\n    # convert HF linear weights to SD conv2d weights\n    if not w.ndim == 1:\n        return w.reshape(*w.shape, 1, 1)\n    else:\n        return w\n\n\ndef convert_vae_state_dict(vae_state_dict):\n    mapping = {k: k for k in vae_state_dict.keys()}\n    for k, v in mapping.items():\n        for sd_part, hf_part in vae_conversion_map:\n            v = v.replace(hf_part, sd_part)\n        mapping[k] = v\n    for k, v in mapping.items():\n        if \"attentions\" in k:\n            for sd_part, hf_part in vae_conversion_map_attn:\n                v = v.replace(hf_part, sd_part)\n            mapping[k] = v\n    new_state_dict = {v: vae_state_dict[k] for k, v in mapping.items()}\n    weights_to_convert = [\"q\", \"k\", \"v\", \"proj_out\"]\n    for k, v in new_state_dict.items():\n        for weight_name in weights_to_convert:\n            if f\"mid.attn_1.{weight_name}.weight\" in k:\n                new_state_dict[k] = reshape_weight_for_sd(v)\n    return new_state_dict\n\n\ntextenc_conversion_lst = [\n    # (stable-diffusion, HF Diffusers)\n    (\"transformer.resblocks.\", \"text_model.encoder.layers.\"),\n    (\"ln_1\", \"layer_norm1\"),\n    (\"ln_2\", \"layer_norm2\"),\n    (\".c_fc.\", \".fc1.\"),\n    (\".c_proj.\", \".fc2.\"),\n    (\".attn\", \".self_attn\"),\n    (\"ln_final.\", \"text_model.final_layer_norm.\"),\n    (\"token_embedding.weight\", \"text_model.embeddings.token_embedding.weight\"),\n    (\"positional_embedding\", \"text_model.embeddings.position_embedding.weight\"),\n]\nprotected = {re.escape(x[1]): x[0] for x in textenc_conversion_lst}\ntextenc_pattern = re.compile(\"|\".join(protected.keys()))\n\n# Ordering is from https://github.com/pytorch/pytorch/blob/master/test/cpp/api/modules.cpp\ncode2idx = {\"q\": 0, \"k\": 1, \"v\": 2}\n\n\ndef convert_openclip_text_enc_state_dict(text_enc_dict):\n    new_state_dict = {}\n    capture_qkv_weight = {}\n    capture_qkv_bias = {}\n    for k, v in text_enc_dict.items():\n        if (\n            k.endswith(\".self_attn.q_proj.weight\")\n            or k.endswith(\".self_attn.k_proj.weight\")\n            or k.endswith(\".self_attn.v_proj.weight\")\n        ):\n            k_pre = k[: -len(\".q_proj.weight\")]\n            k_code = k[-len(\"q_proj.weight\")]\n            if k_pre not in capture_qkv_weight:\n                capture_qkv_weight[k_pre] = [None, None, None]\n            capture_qkv_weight[k_pre][code2idx[k_code]] = v\n            continue\n\n        if (\n            k.endswith(\".self_attn.q_proj.bias\")\n            or k.endswith(\".self_attn.k_proj.bias\")\n            or k.endswith(\".self_attn.v_proj.bias\")\n        ):\n            k_pre = k[: -len(\".q_proj.bias\")]\n            k_code = k[-len(\"q_proj.bias\")]\n            if k_pre not in capture_qkv_bias:\n                capture_qkv_bias[k_pre] = [None, None, None]\n            capture_qkv_bias[k_pre][code2idx[k_code]] = v\n            continue\n\n        relabelled_key = textenc_pattern.sub(lambda m: protected[re.escape(m.group(0))], k)\n        new_state_dict[relabelled_key] = v\n\n    for k_pre, tensors in capture_qkv_weight.items():\n        if None in tensors:\n            raise RuntimeError(\"CORRUPTED MODEL: one of the q-k-v values for the text encoder was missing\")\n        relabelled_key = textenc_pattern.sub(lambda m: protected[re.escape(m.group(0))], k_pre)\n        new_state_dict[relabelled_key + \".in_proj_weight\"] = torch.cat(tensors)\n\n    for k_pre, tensors in capture_qkv_bias.items():\n        if None in tensors:\n            raise RuntimeError(\"CORRUPTED MODEL: one of the q-k-v values for the text encoder was missing\")\n        relabelled_key = textenc_pattern.sub(lambda m: protected[re.escape(m.group(0))], k_pre)\n        new_state_dict[relabelled_key + \".in_proj_bias\"] = torch.cat(tensors)\n\n    return new_state_dict\n\n\ndef convert_openai_text_enc_state_dict(text_enc_dict):\n    return text_enc_dict\n\n\ndef calculate_model_hash(state_dict):\n    func = hashlib.sha256()\n    for module in state_dict.values():\n        buffer = io.BytesIO()\n        torch.save(module, buffer)\n        func.update(buffer.getvalue())\n    return func.hexdigest()\n\n\ndef convert(model_path:str, checkpoint_path:str, metadata:dict={}):\n    unet_path = os.path.join(model_path, \"unet\", \"diffusion_pytorch_model.safetensors\")\n    vae_path = os.path.join(model_path, \"vae\", \"diffusion_pytorch_model.safetensors\")\n    text_enc_path = os.path.join(model_path, \"text_encoder\", \"model.safetensors\")\n    text_enc_2_path = os.path.join(model_path, \"text_encoder_2\", \"model.safetensors\")\n\n    unet_state_dict = load_file(unet_path, device=\"cpu\")\n    vae_state_dict = load_file(vae_path, device=\"cpu\")\n    text_enc_dict = load_file(text_enc_path, device=\"cpu\")\n    text_enc_2_dict = load_file(text_enc_2_path, device=\"cpu\")\n\n    unet_state_dict = convert_unet_state_dict(unet_state_dict)\n    unet_state_dict = {\"model.diffusion_model.\" + k: v for k, v in unet_state_dict.items()}\n\n    vae_state_dict = convert_vae_state_dict(vae_state_dict)\n    vae_state_dict = {\"first_stage_model.\" + k: v for k, v in vae_state_dict.items()}\n\n    text_enc_dict = convert_openai_text_enc_state_dict(text_enc_dict)\n    text_enc_dict = {\"conditioner.embedders.0.transformer.\" + k: v for k, v in text_enc_dict.items()}\n\n    text_enc_2_dict = convert_openclip_text_enc_state_dict(text_enc_2_dict)\n    text_enc_2_dict = {\"conditioner.embedders.1.model.\" + k: v for k, v in text_enc_2_dict.items()}\n    text_enc_2_dict[\"conditioner.embedders.1.model.text_projection\"] = text_enc_2_dict.pop(\"conditioner.embedders.1.model.text_projection.weight\").T.contiguous()\n\n    state_dict = {\n        **unet_state_dict,\n        **vae_state_dict,\n        **text_enc_dict,\n        **text_enc_2_dict\n    }\n    if metadata.get('modelspec.hash_sha256', None) is not None:\n        metadata['modelspec.hash_sha256'] = calculate_model_hash(state_dict)\n\n    save_file(state_dict, checkpoint_path, metadata=metadata)\n    return metadata\n"
  },
  {
    "path": "modules/merging/merge.py",
    "content": "import os\nfrom concurrent.futures import ThreadPoolExecutor\nfrom contextlib import contextmanager\nfrom typing import Dict, Optional, Tuple, Set\nimport safetensors.torch\nimport torch\nfrom tensordict import TensorDict\nimport modules.memstats\nimport modules.devices as devices\nfrom installer import log, console\nfrom modules.sd_models import read_state_dict\nfrom modules.merging import merge_methods\nfrom modules.merging.merge_utils import WeightClass\nfrom modules.merging.merge_rebasin import (\n    apply_permutation,\n    update_model_a,\n    weight_matching,\n)\nfrom modules.merging.merge_PermSpec import sdunet_permutation_spec\nfrom modules.merging.merge_PermSpec_SDXL import sdxl_permutation_spec\n##########################################################\n# Files in modules.merging are heavily modified\n# versions of sd-meh by @s1dxl used with his blessing\n# orginal code can be found @ https://github.com/s1dlx/meh\n##########################################################\n\nMAX_TOKENS = 77\n\n\nKEY_POSITION_IDS = \".\".join(\n    [\n        \"cond_stage_model\",\n        \"transformer\",\n        \"text_model\",\n        \"embeddings\",\n        \"position_ids\",\n    ]\n)\n\n\ndef fix_clip(model: Dict) -> Dict:\n    if KEY_POSITION_IDS in model.keys():\n        model[KEY_POSITION_IDS] = torch.tensor(\n            [list(range(MAX_TOKENS))],\n            dtype=torch.int64,\n            device=model[KEY_POSITION_IDS].device,\n        )\n\n    return model\n\n\ndef prune_sd_model(model: Dict, keyset: Set) -> Dict:\n    keys = list(model.keys())\n    for k in keys:\n        if (\n            not k.startswith(\"model.diffusion_model.\")\n            # and not k.startswith(\"first_stage_model.\")\n            and not k.startswith(\"cond_stage_model.\")\n        ) or k not in keyset:\n            del model[k]\n    return model\n\n\ndef restore_sd_model(original_model: Dict, merged_model: Dict) -> Dict:\n    for k in original_model:\n        if k not in merged_model:\n            merged_model[k] = original_model[k]\n    return merged_model\n\n\ndef log_vram(txt=\"\"):\n    log.debug(f\"Merge {txt}: {modules.memstats.memory_stats()}\")\n\n\ndef load_thetas(\n    models: Dict[str, os.PathLike],\n    prune: bool,\n    device: torch.device,\n    precision: str,\n) -> Dict:\n    thetas = {k: TensorDict.from_dict(read_state_dict(m, \"cpu\")) for k, m in models.items()}\n    if prune:\n        keyset = set.intersection(*[set(m.keys()) for m in thetas.values() if len(m.keys())])\n        thetas = {k: prune_sd_model(m, keyset) for k, m in thetas.items()}\n\n    for model_key, model in thetas.items():\n        for key, block in model.items():\n            if precision == \"fp16\":\n                thetas[model_key].update({key: block.to(device).half()})\n            else:\n                thetas[model_key].update({key: block.to(device)})\n\n    log_vram(\"models loaded\")\n    return thetas\n\n\ndef merge_models(\n    models: Dict[str, os.PathLike],\n    merge_mode: str,\n    precision: str = \"fp16\",\n    weights_clip: bool = False,\n    device: torch.device = None,\n    work_device: torch.device = None,\n    prune: bool = False,\n    threads: int = 4,\n    **kwargs,\n) -> Dict:\n    thetas = load_thetas(models, prune, device, precision)\n    # log.info(f'Merge start: models={models.values()} precision={precision} clip={weights_clip} rebasin={re_basin} prune={prune} threads={threads}')\n    weight_matcher = WeightClass(thetas[\"model_a\"], **kwargs)\n    if kwargs.get(\"re_basin\", False):\n        merged = rebasin_merge(\n            thetas,\n            weight_matcher,\n            merge_mode,\n            precision=precision,\n            weights_clip=weights_clip,\n            iterations=kwargs.get(\"re_basin_iterations\", 1),\n            device=device,\n            work_device=work_device,\n            threads=threads,\n        )\n    else:\n        merged = simple_merge(\n            thetas,\n            weight_matcher,\n            merge_mode,\n            precision=precision,\n            weights_clip=weights_clip,\n            device=device,\n            work_device=work_device,\n            threads=threads,\n        )\n\n    return un_prune_model(merged, thetas, models, device, prune, precision)\n\n\ndef un_prune_model(\n    merged: Dict,\n    thetas: Dict,\n    models: Dict,\n    device: torch.device,\n    prune: bool,\n    precision: str,\n) -> Dict:\n    if prune:\n        log.info(\"Merge restoring pruned keys\")\n        del thetas\n        devices.torch_gc(force=False)\n        original_a = TensorDict.from_dict(read_state_dict(models[\"model_a\"], device))\n        unpruned = 0\n        for key in original_a.keys():\n            if KEY_POSITION_IDS in key:\n                continue\n            if \"model\" in key and key not in merged.keys():\n                merged.update({key: original_a[key]})\n                unpruned += 1\n                if precision == \"fp16\":\n                    merged.update({key: merged[key].half()})\n        if unpruned > 248:  # VAE has 248 keys, and we are purposely restoring it here\n            log.debug(f\"Merge restored from primary model: keys={unpruned - 248}\")\n        unpruned = 0\n        del original_a\n        original_b = TensorDict.from_dict(read_state_dict(models[\"model_b\"], device))\n        for key in original_b.keys():\n            if KEY_POSITION_IDS in key:\n                continue\n            if \"model\" in key and key not in merged.keys():\n                merged.update({key: original_b[key]})\n                unpruned += 1\n                if precision == \"fp16\":\n                    merged.update({key: merged[key].half()})\n        if unpruned != 0:\n            log.debug(f\"Merge restored from secondary model: keys={unpruned}\")\n        del original_b\n        devices.torch_gc(force=False)\n\n    return fix_clip(merged)\n\n\ndef simple_merge(\n    thetas: Dict[str, Dict],\n    weight_matcher: WeightClass,\n    merge_mode: str,\n    precision: str = \"fp16\",\n    weights_clip: bool = False,\n    device: torch.device = None,\n    work_device: torch.device = None,\n    threads: int = 4,\n) -> Dict:\n    futures = []\n    import rich.progress as p\n    with p.Progress(p.TextColumn('[cyan]{task.description}'), p.BarColumn(), p.TaskProgressColumn(), p.TimeRemainingColumn(), p.TimeElapsedColumn(), p.TextColumn('[cyan]keys={task.fields[keys]}'), console=console) as progress:\n        task = progress.add_task(description=\"Merging\", total=len(thetas[\"model_a\"].keys()), keys=len(thetas[\"model_a\"].keys()))\n        with ThreadPoolExecutor(max_workers=threads) as executor:\n            for key in thetas[\"model_a\"].keys():\n                future = executor.submit(\n                    simple_merge_key,\n                    progress,\n                    task,\n                    key,\n                    thetas,\n                    weight_matcher,\n                    merge_mode,\n                    precision,\n                    weights_clip,\n                    device,\n                    work_device,\n                )\n                futures.append(future)\n\n        for res in futures:\n            res.result()\n\n    if len(thetas[\"model_b\"]) > 0:\n        log.debug(f'Merge update thetas: keys={len(thetas[\"model_b\"])}')\n        for key in thetas[\"model_b\"].keys():\n            if KEY_POSITION_IDS in key:\n                continue\n            if \"model\" in key and key not in thetas[\"model_a\"].keys():\n                thetas[\"model_a\"].update({key: thetas[\"model_b\"][key]})\n                if precision == \"fp16\":\n                    thetas[\"model_a\"].update({key: thetas[\"model_a\"][key].half()})\n\n    return fix_clip(thetas[\"model_a\"])\n\n\ndef rebasin_merge(\n    thetas: Dict[str, os.PathLike],\n    weight_matcher: WeightClass,\n    merge_mode: str,\n    precision: str = \"fp16\",\n    weights_clip: bool = False,\n    iterations: int = 1,\n    device: torch.device = None,\n    work_device: torch.device = None,\n    threads: int = 1,\n):\n    # not sure how this does when 3 models are involved...\n    model_a = thetas[\"model_a\"].clone()\n    if weight_matcher.SDXL:\n        perm_spec = sdxl_permutation_spec()\n    else:\n        perm_spec = sdunet_permutation_spec()\n\n    for it in range(iterations):\n        log_vram(f\"rebasin: iteration={it+1}\")\n        weight_matcher.set_it(it)\n\n        # normal block merge we already know and love\n        thetas[\"model_a\"] = simple_merge(\n            thetas,\n            weight_matcher,\n            merge_mode,\n            precision,\n            False,\n            device,\n            work_device,\n            threads,\n        )\n\n        # find permutations\n        perm_1, y = weight_matching(\n            perm_spec,\n            model_a,\n            thetas[\"model_a\"],\n            max_iter=it,\n            init_perm=None,\n            usefp16=precision == \"fp16\",\n            device=device,\n        )\n        thetas[\"model_a\"] = apply_permutation(perm_spec, perm_1, thetas[\"model_a\"])\n\n        perm_2, z = weight_matching(\n            perm_spec,\n            thetas[\"model_b\"],\n            thetas[\"model_a\"],\n            max_iter=it,\n            init_perm=None,\n            usefp16=precision == \"fp16\",\n            device=device,\n        )\n\n        new_alpha = torch.nn.functional.normalize(\n            torch.sigmoid(torch.Tensor([y, z])), p=1, dim=0\n        ).tolist()[0]\n        thetas[\"model_a\"] = update_model_a(\n            perm_spec, perm_2, thetas[\"model_a\"], new_alpha\n        )\n\n    if weights_clip:\n        clip_thetas = thetas.copy()\n        clip_thetas[\"model_a\"] = model_a\n        thetas[\"model_a\"] = clip_weights(thetas, thetas[\"model_a\"])\n\n    return thetas[\"model_a\"]\n\n\ndef simple_merge_key(progress, task, key, thetas, *args, **kwargs):\n    with merge_key_context(key, thetas, *args, **kwargs) as result:\n        if result is not None:\n            thetas[\"model_a\"].update({key: result.detach().clone()})\n    progress.update(task, advance=1)\n\n\ndef merge_key(  # pylint: disable=inconsistent-return-statements\n    key: str,\n    thetas: Dict,\n    weight_matcher: WeightClass,\n    merge_mode: str,\n    precision: str = \"fp16\",\n    weights_clip: bool = False,\n    device: torch.device = None,\n    work_device: torch.device = None,\n) -> Optional[Tuple[str, Dict]]:\n    if work_device is None:\n        work_device = device\n\n    if KEY_POSITION_IDS in key:\n        return\n\n    for theta in thetas.values():\n        if key not in theta.keys():\n            return thetas[\"model_a\"][key]\n\n        current_bases = weight_matcher(key)\n        try:\n            merge_method = getattr(merge_methods, merge_mode)\n        except AttributeError as e:\n            raise ValueError(f\"{merge_mode} not implemented, aborting merge!\") from e\n\n        merge_args = get_merge_method_args(current_bases, thetas, key, work_device)\n\n        # dealing with pix2pix and inpainting models\n        if (a_size := merge_args[\"a\"].size()) != (b_size := merge_args[\"b\"].size()):\n            if a_size[1] > b_size[1]:\n                merged_key = merge_args[\"a\"]\n            else:\n                merged_key = merge_args[\"b\"]\n        else:\n            merged_key = merge_method(**merge_args).to(device)\n\n        if weights_clip:\n            merged_key = clip_weights_key(thetas, merged_key, key)\n\n        if precision == \"fp16\":\n            merged_key = merged_key.half()\n\n        return merged_key\n\n\ndef clip_weights(thetas, merged):\n    for k in thetas[\"model_a\"].keys():\n        if k in thetas[\"model_b\"].keys():\n            merged.update({k: clip_weights_key(thetas, merged[k], k)})\n    return merged\n\n\ndef clip_weights_key(thetas, merged_weights, key):\n    t0 = thetas[\"model_a\"][key]\n    t1 = thetas[\"model_b\"][key]\n    maximums = torch.maximum(t0, t1)\n    minimums = torch.minimum(t0, t1)\n    return torch.minimum(torch.maximum(merged_weights, minimums), maximums)\n\n\n@contextmanager\ndef merge_key_context(*args, **kwargs):\n    result = merge_key(*args, **kwargs)\n    try:\n        yield result\n    finally:\n        if result is not None:\n            del result\n\n\ndef get_merge_method_args(\n    current_bases: Dict,\n    thetas: Dict,\n    key: str,\n    work_device: torch.device,\n) -> Dict:\n    merge_method_args = {\n        \"a\": thetas[\"model_a\"][key].to(work_device),\n        \"b\": thetas[\"model_b\"][key].to(work_device),\n        **current_bases,\n    }\n\n    if \"model_c\" in thetas:\n        merge_method_args[\"c\"] = thetas[\"model_c\"][key].to(work_device)\n\n    return merge_method_args\n\n\ndef save_model(model, output_file, file_format) -> None:\n    log.info(f\"Merge saving: model='{output_file}'\")\n    if file_format == \"safetensors\":\n        safetensors.torch.save_file(\n            model if type(model) == dict else model.to_dict(),\n            f\"{output_file}.safetensors\",\n            metadata={\"format\": \"pt\"},\n        )\n    else:\n        torch.save({\"state_dict\": model}, f\"{output_file}.ckpt\")\n"
  },
  {
    "path": "modules/merging/merge_PermSpec.py",
    "content": "from modules.merging.merge_rebasin import PermutationSpec, permutation_spec_from_axes_to_perm\ndef sdunet_permutation_spec() -> PermutationSpec:\n    conv = lambda name, p_in, p_out: {  # pylint: disable=unnecessary-lambda-assignment\n        f\"{name}.weight\": (\n            p_out,\n            p_in,\n        ),\n        f\"{name}.bias\": (p_out,),\n    }\n    norm = lambda name, p: {f\"{name}.weight\": (p,), f\"{name}.bias\": (p,)}  # pylint: disable=unnecessary-lambda-assignment\n    dense = (\n        lambda name, p_in, p_out, bias=True: {  # pylint: disable=unnecessary-lambda-assignment\n            f\"{name}.weight\": (p_out, p_in),\n            f\"{name}.bias\": (p_out,),\n        }\n        if bias\n        else {f\"{name}.weight\": (p_out, p_in)}\n    )\n    skip = lambda name, p_in, p_out: {  # pylint: disable=unnecessary-lambda-assignment\n        f\"{name}\": (\n            p_out,\n            p_in,\n            None,\n            None,\n        )\n    }\n\n    # Unet Res blocks\n    easyblock = lambda name, p_in, p_out: {  # pylint: disable=unnecessary-lambda-assignment\n        **norm(f\"{name}.in_layers.0\", p_in),\n        **conv(f\"{name}.in_layers.2\", p_in, f\"P_{name}_inner\"),\n        **dense(\n            f\"{name}.emb_layers.1\", f\"P_{name}_inner2\", f\"P_{name}_inner3\", bias=True\n        ),\n        **norm(f\"{name}.out_layers.0\", f\"P_{name}_inner4\"),\n        **conv(f\"{name}.out_layers.3\", f\"P_{name}_inner4\", p_out),\n    }\n\n    # VAE blocks - Unused\n    easyblock2 = lambda name, p: {  # pylint: disable=unnecessary-lambda-assignment, unused-variable # noqa: F841\n        **norm(f\"{name}.norm1\", p),\n        **conv(f\"{name}.conv1\", p, f\"P_{name}_inner\"),\n        **norm(f\"{name}.norm2\", f\"P_{name}_inner\"),\n        **conv(f\"{name}.conv2\", f\"P_{name}_inner\", p),\n    }\n\n    # This is for blocks that use a residual connection, but change the number of channels via a Conv.\n    shortcutblock = lambda name, p_in, p_out: {  # pylint: disable=unnecessary-lambda-assignment, , unused-variable # noqa: F841\n        **norm(f\"{name}.norm1\", p_in),\n        **conv(f\"{name}.conv1\", p_in, f\"P_{name}_inner\"),\n        **norm(f\"{name}.norm2\", f\"P_{name}_inner\"),\n        **conv(f\"{name}.conv2\", f\"P_{name}_inner\", p_out),\n        **conv(f\"{name}.nin_shortcut\", p_in, p_out),\n        **norm(f\"{name}.nin_shortcut\", p_out),\n    }\n\n    return permutation_spec_from_axes_to_perm(\n        {\n            # Skipped Layers\n            **skip(\"betas\", None, None),\n            **skip(\"alphas_cumprod\", None, None),\n            **skip(\"alphas_cumprod_prev\", None, None),\n            **skip(\"sqrt_alphas_cumprod\", None, None),\n            **skip(\"sqrt_one_minus_alphas_cumprod\", None, None),\n            **skip(\"log_one_minus_alphas_cumprods\", None, None),\n            **skip(\"sqrt_recip_alphas_cumprod\", None, None),\n            **skip(\"sqrt_recipm1_alphas_cumprod\", None, None),\n            **skip(\"posterior_variance\", None, None),\n            **skip(\"posterior_log_variance_clipped\", None, None),\n            **skip(\"posterior_mean_coef1\", None, None),\n            **skip(\"posterior_mean_coef2\", None, None),\n            **skip(\"log_one_minus_alphas_cumprod\", None, None),\n            **skip(\"model_ema.decay\", None, None),\n            **skip(\"model_ema.num_updates\", None, None),\n            # initial\n            **dense(\"model.diffusion_model.time_embed.0\", None, \"P_bg0\", bias=True),\n            **dense(\"model.diffusion_model.time_embed.2\", \"P_bg0\", \"P_bg1\", bias=True),\n            **conv(\"model.diffusion_model.input_blocks.0.0\", \"P_bg2\", \"P_bg3\"),\n            # input blocks\n            **easyblock(\"model.diffusion_model.input_blocks.1.0\", \"P_bg4\", \"P_bg5\"),\n            **norm(\"model.diffusion_model.input_blocks.1.1.norm\", \"P_bg6\"),\n            **conv(\"model.diffusion_model.input_blocks.1.1.proj_in\", \"P_bg6\", \"P_bg7\"),\n            **dense(\"model.diffusion_model.input_blocks.1.1.transformer_blocks.0.attn1.to_q\", \"P_bg8\", \"P_bg9\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.1.1.transformer_blocks.0.attn1.to_k\", \"P_bg8\", \"P_bg9\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.1.1.transformer_blocks.0.attn1.to_v\", \"P_bg8\", \"P_bg9\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.1.1.transformer_blocks.0.attn1.to_out.0\", \"P_bg8\", \"P_bg9\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.1.1.transformer_blocks.0.ff.net.0.proj\", \"P_bg10\", \"P_bg11\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.1.1.transformer_blocks.0.ff.net.2\", \"P_bg12\", \"P_bg13\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.1.1.transformer_blocks.0.attn2.to_q\", \"P_bg14\", \"P_bg15\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.1.1.transformer_blocks.0.attn2.to_k\", \"P_bg16\", \"P_bg17\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.1.1.transformer_blocks.0.attn2.to_v\", \"P_bg16\", \"P_bg17\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.1.1.transformer_blocks.0.attn2.to_out.0\", \"P_bg18\", \"P_bg19\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.1.1.transformer_blocks.0.norm1\", \"P_bg19\"),\n            **norm(\"model.diffusion_model.input_blocks.1.1.transformer_blocks.0.norm2\", \"P_bg19\"),\n            **norm(\"model.diffusion_model.input_blocks.1.1.transformer_blocks.0.norm3\", \"P_bg19\"),\n            **conv(\"model.diffusion_model.input_blocks.1.1.proj_out\", \"P_bg19\", \"P_bg20\"),\n            **easyblock(\"model.diffusion_model.input_blocks.2.0\", \"P_bg21\", \"P_bg22\"),\n            **norm(\"model.diffusion_model.input_blocks.2.1.norm\", \"P_bg23\"),\n            **conv(\"model.diffusion_model.input_blocks.2.1.proj_in\", \"P_bg23\", \"P_bg24\"),\n            **dense(\"model.diffusion_model.input_blocks.2.1.transformer_blocks.0.attn1.to_q\", \"P_bg25\", \"P_bg26\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.2.1.transformer_blocks.0.attn1.to_k\", \"P_bg25\", \"P_bg26\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.2.1.transformer_blocks.0.attn1.to_v\", \"P_bg25\", \"P_bg26\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.2.1.transformer_blocks.0.attn1.to_out.0\", \"P_bg25\", \"P_bg26\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.2.1.transformer_blocks.0.ff.net.0.proj\", \"P_bg27\", \"P_bg28\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.2.1.transformer_blocks.0.ff.net.2\", \"P_bg29\", \"P_bg30\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.2.1.transformer_blocks.0.attn2.to_q\", \"P_bg31\", \"P_bg32\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.2.1.transformer_blocks.0.attn2.to_k\", \"P_bg33\", \"P_bg34\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.2.1.transformer_blocks.0.attn2.to_v\", \"P_bg33\", \"P_bg34\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.2.1.transformer_blocks.0.attn2.to_out.0\", \"P_bg35\", \"P_bg36\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.2.1.transformer_blocks.0.norm1\", \"P_bg36\"),\n            **norm(\"model.diffusion_model.input_blocks.2.1.transformer_blocks.0.norm2\", \"P_bg36\"),\n            **norm(\"model.diffusion_model.input_blocks.2.1.transformer_blocks.0.norm3\", \"P_bg36\"),\n            **conv(\"model.diffusion_model.input_blocks.2.1.proj_out\", \"P_bg36\", \"P_bg37\"),\n            **conv(\"model.diffusion_model.input_blocks.3.0.op\", \"P_bg38\", \"P_bg39\"),\n            **easyblock(\"model.diffusion_model.input_blocks.4.0\", \"P_bg40\", \"P_bg41\"),\n            **conv(\"model.diffusion_model.input_blocks.4.0.skip_connection\", \"P_bg42\", \"P_bg43\"),\n            **norm(\"model.diffusion_model.input_blocks.4.1.norm\", \"P_bg44\"),\n            **conv(\"model.diffusion_model.input_blocks.4.1.proj_in\", \"P_bg44\", \"P_bg45\"),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.0.attn1.to_q\", \"P_bg46\", \"P_bg47\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.0.attn1.to_k\", \"P_bg46\", \"P_bg47\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.0.attn1.to_v\", \"P_bg46\", \"P_bg47\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.0.attn1.to_out.0\", \"P_bg46\", \"P_bg47\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.0.ff.net.0.proj\", \"P_bg48\", \"P_bg49\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.0.ff.net.2\", \"P_bg50\", \"P_bg51\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.0.attn2.to_q\", \"P_bg52\", \"P_bg53\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.0.attn2.to_k\", \"P_bg54\", \"P_bg55\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.0.attn2.to_v\", \"P_bg54\", \"P_bg55\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.0.attn2.to_out.0\", \"P_bg56\", \"P_bg57\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.0.norm1\", \"P_bg57\"),\n            **norm(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.0.norm2\", \"P_bg57\"),\n            **norm(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.0.norm3\", \"P_bg57\"),\n            **conv(\"model.diffusion_model.input_blocks.4.1.proj_out\", \"P_bg57\", \"P_bg58\"),\n            **easyblock(\"model.diffusion_model.input_blocks.5.0\", \"P_bg59\", \"P_bg60\"),\n            **norm(\"model.diffusion_model.input_blocks.5.1.norm\", \"P_bg61\"),\n            **conv(\"model.diffusion_model.input_blocks.5.1.proj_in\", \"P_bg61\", \"P_bg62\"),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.0.attn1.to_q\", \"P_bg63\", \"P_bg64\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.0.attn1.to_k\", \"P_bg63\", \"P_bg64\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.0.attn1.to_v\", \"P_bg63\", \"P_bg64\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.0.attn1.to_out.0\", \"P_bg63\", \"P_bg64\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.0.ff.net.0.proj\", \"P_bg65\", \"P_bg66\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.0.ff.net.2\", \"P_bg67\", \"P_bg68\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.0.attn2.to_q\", \"P_bg69\", \"P_bg70\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.0.attn2.to_k\", \"P_bg71\", \"P_bg72\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.0.attn2.to_v\", \"P_bg71\", \"P_bg72\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.0.attn2.to_out.0\", \"P_bg73\", \"P_bg74\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.0.norm1\", \"P_bg74\"),\n            **norm(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.0.norm2\", \"P_bg74\"),\n            **norm(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.0.norm3\", \"P_bg74\"),\n            **conv(\"model.diffusion_model.input_blocks.5.1.proj_out\", \"P_bg74\", \"P_bg75\"),\n            **conv(\"model.diffusion_model.input_blocks.6.0.op\", \"P_bg76\", \"P_bg77\"),\n            **easyblock(\"model.diffusion_model.input_blocks.7.0\", \"P_bg78\", \"P_bg79\"),\n            **conv(\"model.diffusion_model.input_blocks.7.0.skip_connection\", \"P_bg80\", \"P_bg81\"),\n            **norm(\"model.diffusion_model.input_blocks.7.1.norm\", \"P_bg82\"),\n            **conv(\"model.diffusion_model.input_blocks.7.1.proj_in\", \"P_bg82\", \"P_bg83\"),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.0.attn1.to_q\", \"P_bg84\", \"P_bg85\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.0.attn1.to_k\", \"P_bg84\", \"P_bg85\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.0.attn1.to_v\", \"P_bg84\", \"P_bg85\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.0.attn1.to_out.0\", \"P_bg84\", \"P_bg85\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.0.ff.net.0.proj\", \"P_bg86\", \"P_bg87\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.0.ff.net.2\", \"P_bg88\", \"P_bg89\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.0.attn2.to_q\", \"P_bg90\", \"P_bg91\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.0.attn2.to_k\", \"P_bg92\", \"P_bg93\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.0.attn2.to_v\", \"P_bg92\", \"P_bg93\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.0.attn2.to_out.0\", \"P_bg94\", \"P_bg95\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.0.norm1\", \"P_bg95\"),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.0.norm2\", \"P_bg95\"),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.0.norm3\", \"P_bg95\"),\n            **conv(\"model.diffusion_model.input_blocks.7.1.proj_out\", \"P_bg95\", \"P_bg96\"),\n            **easyblock(\"model.diffusion_model.input_blocks.8.0\", \"P_bg97\", \"P_bg98\"),\n            **norm(\"model.diffusion_model.input_blocks.8.1.norm\", \"P_bg99\"),\n            **conv(\"model.diffusion_model.input_blocks.8.1.proj_in\", \"P_bg99\", \"P_bg100\"),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.0.attn1.to_q\", \"P_bg101\", \"P_bg102\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.0.attn1.to_k\", \"P_bg101\", \"P_bg102\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.0.attn1.to_v\", \"P_bg101\", \"P_bg102\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.0.attn1.to_out.0\", \"P_bg101\", \"P_bg102\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.0.ff.net.0.proj\", \"P_bg103\", \"P_bg104\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.0.ff.net.2\", \"P_bg105\", \"P_bg106\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.0.attn2.to_q\", \"P_bg107\", \"P_bg108\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.0.attn2.to_k\", \"P_bg109\", \"P_bg110\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.0.attn2.to_v\", \"P_bg109\", \"P_bg110\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.0.attn2.to_out.0\", \"P_bg111\", \"P_bg112\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.0.norm1\", \"P_bg112\"),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.0.norm2\", \"P_bg112\"),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.0.norm3\", \"P_bg112\"),\n            **conv(\"model.diffusion_model.input_blocks.8.1.proj_out\", \"P_bg112\", \"P_bg113\"),\n            **conv(\"model.diffusion_model.input_blocks.9.0.op\", \"P_bg114\", \"P_bg115\"),\n            **easyblock(\"model.diffusion_model.input_blocks.10.0\", \"P_bg115\", \"P_bg116\"),\n            **easyblock(\"model.diffusion_model.input_blocks.11.0\", \"P_bg116\", \"P_bg117\"),\n            # middle blocks\n            **easyblock(\"model.diffusion_model.middle_block.0\", \"P_bg117\", \"P_bg118\"),\n            **norm(\"model.diffusion_model.middle_block.1.norm\", \"P_bg119\"),\n            **conv(\"model.diffusion_model.middle_block.1.proj_in\", \"P_bg119\", \"P_bg120\"),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.0.attn1.to_q\", \"P_bg121\", \"P_bg122\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.0.attn1.to_k\", \"P_bg121\", \"P_bg122\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.0.attn1.to_v\", \"P_bg121\", \"P_bg122\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.0.attn1.to_out.0\", \"P_bg121\", \"P_bg122\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.0.ff.net.0.proj\", \"P_bg123\", \"P_bg124\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.0.ff.net.2\", \"P_bg125\", \"P_bg126\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.0.attn2.to_q\", \"P_bg127\", \"P_bg128\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.0.attn2.to_k\", \"P_bg129\", \"P_bg130\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.0.attn2.to_v\", \"P_bg129\", \"P_bg130\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.0.attn2.to_out.0\", \"P_bg131\", \"P_bg132\", bias=True),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.0.norm1\", \"P_bg132\"),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.0.norm2\", \"P_bg132\"),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.0.norm3\", \"P_bg132\"),\n            **conv(\"model.diffusion_model.middle_block.1.proj_out\", \"P_bg132\", \"P_bg133\"),\n            **easyblock(\"model.diffusion_model.middle_block.2\", \"P_bg134\", \"P_bg135\"),\n            # output blocks\n            **easyblock(\"model.diffusion_model.output_blocks.0.0\", \"P_bg136\", \"P_bg137\"),\n            **conv(\"model.diffusion_model.output_blocks.0.0.skip_connection\", \"P_bg138\", \"P_bg139\"),\n            **easyblock(\"model.diffusion_model.output_blocks.1.0\", \"P_bg140\", \"P_bg141\"),\n            **conv(\"model.diffusion_model.output_blocks.1.0.skip_connection\", \"P_bg142\", \"P_bg143\"),\n            **easyblock(\"model.diffusion_model.output_blocks.2.0\", \"P_bg144\", \"P_bg145\"),\n            **conv(\"model.diffusion_model.output_blocks.2.0.skip_connection\", \"P_bg146\", \"P_bg147\"),\n            **conv(\"model.diffusion_model.output_blocks.2.1.conv\", \"P_bg148\", \"P_bg149\"),\n            **easyblock(\"model.diffusion_model.output_blocks.3.0\", \"P_bg150\", \"P_bg151\"),\n            **conv(\"model.diffusion_model.output_blocks.3.0.skip_connection\", \"P_bg152\", \"P_bg153\"),\n            **norm(\"model.diffusion_model.output_blocks.3.1.norm\", \"P_bg154\"),\n            **conv(\"model.diffusion_model.output_blocks.3.1.proj_in\", \"P_bg154\", \"P_bg155\"),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.0.attn1.to_q\", \"P_bg156\", \"P_bg157\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.0.attn1.to_k\", \"P_bg156\", \"P_bg157\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.0.attn1.to_v\", \"P_bg156\", \"P_bg157\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.0.attn1.to_out.0\", \"P_bg156\", \"P_bg157\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.0.ff.net.0.proj\", \"P_bg158\", \"P_bg159\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.0.ff.net.2\", \"P_bg160\", \"P_bg161\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.0.attn2.to_q\", \"P_bg162\", \"P_bg163\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.0.attn2.to_k\", \"P_bg164\", \"P_bg165\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.0.attn2.to_v\", \"P_bg164\", \"P_bg165\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.0.attn2.to_out.0\", \"P_bg166\", \"P_bg167\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.0.norm1\", \"P_bg167\"),\n            **norm(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.0.norm2\", \"P_bg167\"),\n            **norm(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.0.norm3\", \"P_bg167\"),\n            **conv(\"model.diffusion_model.output_blocks.3.1.proj_out\", \"P_bg167\", \"P_bg168\"),\n            **easyblock(\"model.diffusion_model.output_blocks.4.0\", \"P_bg169\", \"P_bg170\"),\n            **conv(\"model.diffusion_model.output_blocks.4.0.skip_connection\", \"P_bg171\", \"P_bg172\"),\n            **norm(\"model.diffusion_model.output_blocks.4.1.norm\", \"P_bg173\"),\n            **conv(\"model.diffusion_model.output_blocks.4.1.proj_in\", \"P_bg173\", \"P_bg174\"),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.0.attn1.to_q\", \"P_bg175\", \"P_bg176\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.0.attn1.to_k\", \"P_bg175\", \"P_bg176\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.0.attn1.to_v\", \"P_bg175\", \"P_bg176\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.0.attn1.to_out.0\", \"P_bg175\", \"P_bg176\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.0.ff.net.0.proj\", \"P_bg177\", \"P_bg178\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.0.ff.net.2\", \"P_bg179\", \"P_bg180\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.0.attn2.to_q\", \"P_bg181\", \"P_bg182\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.0.attn2.to_k\", \"P_bg183\", \"P_bg184\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.0.attn2.to_v\", \"P_bg183\", \"P_bg184\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.0.attn2.to_out.0\", \"P_bg185\", \"P_bg186\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.0.norm1\", \"P_bg186\"),\n            **norm(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.0.norm2\", \"P_bg186\"),\n            **norm(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.0.norm3\", \"P_bg186\"),\n            **conv(\"model.diffusion_model.output_blocks.4.1.proj_out\", \"P_bg186\", \"P_bg187\"),\n            **easyblock(\"model.diffusion_model.output_blocks.5.0\", \"P_bg188\", \"P_bg189\"),\n            **conv(\"model.diffusion_model.output_blocks.5.0.skip_connection\", \"P_bg190\", \"P_bg191\"),\n            **norm(\"model.diffusion_model.output_blocks.5.1.norm\", \"P_bg192\"),\n            **conv(\"model.diffusion_model.output_blocks.5.1.proj_in\", \"P_bg192\", \"P_bg193\"),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.0.attn1.to_q\", \"P_bg194\", \"P_bg195\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.0.attn1.to_k\", \"P_bg194\", \"P_bg195\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.0.attn1.to_v\", \"P_bg194\", \"P_bg195\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.0.attn1.to_out.0\", \"P_bg194\", \"P_bg195\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.0.ff.net.0.proj\", \"P_bg196\", \"P_bg197\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.0.ff.net.2\", \"P_bg198\", \"P_bg199\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.0.attn2.to_q\", \"P_bg200\", \"P_bg201\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.0.attn2.to_k\", \"P_bg202\", \"P_bg203\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.0.attn2.to_v\", \"P_bg202\", \"P_bg203\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.0.attn2.to_out.0\", \"P_bg204\", \"P_bg205\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.0.norm1\", \"P_bg205\"),\n            **norm(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.0.norm2\", \"P_bg205\"),\n            **norm(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.0.norm3\", \"P_bg205\"),\n            **conv(\"model.diffusion_model.output_blocks.5.1.proj_out\", \"P_bg205\", \"P_bg206\"),\n            **conv(\"model.diffusion_model.output_blocks.5.2.conv\", \"P_bg206\", \"P_bg207\"),\n            **easyblock(\"model.diffusion_model.output_blocks.6.0\", \"P_bg208\", \"P_bg209\"),\n            **conv(\"model.diffusion_model.output_blocks.6.0.skip_connection\", \"P_bg210\", \"P_bg211\"),\n            **norm(\"model.diffusion_model.output_blocks.6.1.norm\", \"P_bg212\"),\n            **conv(\"model.diffusion_model.output_blocks.6.1.proj_in\", \"P_bg212\", \"P_bg213\"),\n            **dense(\"model.diffusion_model.output_blocks.6.1.transformer_blocks.0.attn1.to_q\", \"P_bg214\", \"P_bg215\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.6.1.transformer_blocks.0.attn1.to_k\", \"P_bg214\", \"P_bg215\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.6.1.transformer_blocks.0.attn1.to_v\", \"P_bg214\", \"P_bg215\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.6.1.transformer_blocks.0.attn1.to_out.0\", \"P_bg214\", \"P_bg215\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.6.1.transformer_blocks.0.ff.net.0.proj\", \"P_bg216\", \"P_bg217\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.6.1.transformer_blocks.0.ff.net.2\", \"P_bg218\", \"P_bg219\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.6.1.transformer_blocks.0.attn2.to_q\", \"P_bg220\", \"P_bg221\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.6.1.transformer_blocks.0.attn2.to_k\", \"P_bg222\", \"P_bg223\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.6.1.transformer_blocks.0.attn2.to_v\", \"P_bg222\", \"P_bg223\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.6.1.transformer_blocks.0.attn2.to_out.0\", \"P_bg224\", \"P_bg225\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.6.1.transformer_blocks.0.norm1\", \"P_bg225\"),\n            **norm(\"model.diffusion_model.output_blocks.6.1.transformer_blocks.0.norm2\", \"P_bg225\"),\n            **norm(\"model.diffusion_model.output_blocks.6.1.transformer_blocks.0.norm3\", \"P_bg225\"),\n            **conv(\"model.diffusion_model.output_blocks.6.1.proj_out\", \"P_bg225\", \"P_bg226\"),\n            **easyblock(\"model.diffusion_model.output_blocks.7.0\", \"P_bg227\", \"P_bg228\"),\n            **conv(\"model.diffusion_model.output_blocks.7.0.skip_connection\", \"P_bg229\", \"P_bg230\"),\n            **norm(\"model.diffusion_model.output_blocks.7.1.norm\", \"P_bg231\"),\n            **conv(\"model.diffusion_model.output_blocks.7.1.proj_in\", \"P_bg231\", \"P_bg232\"),\n            **dense(\"model.diffusion_model.output_blocks.7.1.transformer_blocks.0.attn1.to_q\", \"P_bg233\", \"P_bg234\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.7.1.transformer_blocks.0.attn1.to_k\", \"P_bg233\", \"P_bg234\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.7.1.transformer_blocks.0.attn1.to_v\", \"P_bg233\", \"P_bg234\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.7.1.transformer_blocks.0.attn1.to_out.0\", \"P_bg233\", \"P_bg234\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.7.1.transformer_blocks.0.ff.net.0.proj\", \"P_bg235\", \"P_bg236\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.7.1.transformer_blocks.0.ff.net.2\", \"P_bg237\", \"P_bg238\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.7.1.transformer_blocks.0.attn2.to_q\", \"P_bg239\", \"P_bg240\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.7.1.transformer_blocks.0.attn2.to_k\", \"P_bg241\", \"P_bg242\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.7.1.transformer_blocks.0.attn2.to_v\", \"P_bg241\", \"P_bg242\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.7.1.transformer_blocks.0.attn2.to_out.0\", \"P_bg243\", \"P_bg244\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.7.1.transformer_blocks.0.norm1\", \"P_bg244\"),\n            **norm(\"model.diffusion_model.output_blocks.7.1.transformer_blocks.0.norm2\", \"P_bg244\"),\n            **norm(\"model.diffusion_model.output_blocks.7.1.transformer_blocks.0.norm3\", \"P_bg244\"),\n            **conv(\"model.diffusion_model.output_blocks.7.1.proj_out\", \"P_bg244\", \"P_bg245\"),\n            **easyblock(\"model.diffusion_model.output_blocks.8.0\", \"P_bg246\", \"P_bg247\"),\n            **conv(\"model.diffusion_model.output_blocks.8.0.skip_connection\", \"P_bg248\", \"P_bg249\"),\n            **norm(\"model.diffusion_model.output_blocks.8.1.norm\", \"P_bg250\"),\n            **conv(\"model.diffusion_model.output_blocks.8.1.proj_in\", \"P_bg250\", \"P_bg251\"),\n            **dense(\"model.diffusion_model.output_blocks.8.1.transformer_blocks.0.attn1.to_q\", \"P_bg252\", \"P_bg253\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.8.1.transformer_blocks.0.attn1.to_k\", \"P_bg252\", \"P_bg253\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.8.1.transformer_blocks.0.attn1.to_v\", \"P_bg252\", \"P_bg253\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.8.1.transformer_blocks.0.attn1.to_out.0\", \"P_bg252\", \"P_bg253\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.8.1.transformer_blocks.0.ff.net.0.proj\", \"P_bg254\", \"P_bg255\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.8.1.transformer_blocks.0.ff.net.2\", \"P_bg256\", \"P_bg257\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.8.1.transformer_blocks.0.attn2.to_q\", \"P_bg258\", \"P_bg259\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.8.1.transformer_blocks.0.attn2.to_k\", \"P_bg260\", \"P_bg261\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.8.1.transformer_blocks.0.attn2.to_v\", \"P_bg260\", \"P_bg261\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.8.1.transformer_blocks.0.attn2.to_out.0\", \"P_bg262\", \"P_bg263\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.8.1.transformer_blocks.0.norm1\", \"P_bg263\"),\n            **norm(\"model.diffusion_model.output_blocks.8.1.transformer_blocks.0.norm2\", \"P_bg263\"),\n            **norm(\"model.diffusion_model.output_blocks.8.1.transformer_blocks.0.norm3\", \"P_bg263\"),\n            **conv(\"model.diffusion_model.output_blocks.8.1.proj_out\", \"P_bg263\", \"P_bg264\"),\n            **conv(\"model.diffusion_model.output_blocks.8.2.conv\", \"P_bg265\", \"P_bg266\"),\n            **easyblock(\"model.diffusion_model.output_blocks.9.0\", \"P_bg267\", \"P_bg268\"),\n            **conv(\"model.diffusion_model.output_blocks.9.0.skip_connection\", \"P_bg269\", \"P_bg270\"),\n            **norm(\"model.diffusion_model.output_blocks.9.1.norm\", \"P_bg271\"),\n            **conv(\"model.diffusion_model.output_blocks.9.1.proj_in\", \"P_bg271\", \"P_bg272\"),\n            **dense(\"model.diffusion_model.output_blocks.9.1.transformer_blocks.0.attn1.to_q\", \"P_bg273\", \"P_bg274\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.9.1.transformer_blocks.0.attn1.to_k\", \"P_bg273\", \"P_bg274\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.9.1.transformer_blocks.0.attn1.to_v\", \"P_bg273\", \"P_bg274\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.9.1.transformer_blocks.0.attn1.to_out.0\", \"P_bg273\", \"P_bg274\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.9.1.transformer_blocks.0.ff.net.0.proj\", \"P_bg275\", \"P_bg276\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.9.1.transformer_blocks.0.ff.net.2\", \"P_bg277\", \"P_bg278\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.9.1.transformer_blocks.0.attn2.to_q\", \"P_bg279\", \"P_bg280\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.9.1.transformer_blocks.0.attn2.to_k\", \"P_bg281\", \"P_bg282\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.9.1.transformer_blocks.0.attn2.to_v\", \"P_bg281\", \"P_bg282\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.9.1.transformer_blocks.0.attn2.to_out.0\", \"P_bg283\", \"P_bg284\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.9.1.transformer_blocks.0.norm1\", \"P_bg284\"),\n            **norm(\"model.diffusion_model.output_blocks.9.1.transformer_blocks.0.norm2\", \"P_bg284\"),\n            **norm(\"model.diffusion_model.output_blocks.9.1.transformer_blocks.0.norm3\", \"P_bg284\"),\n            **conv(\"model.diffusion_model.output_blocks.9.1.proj_out\", \"P_bg284\", \"P_bg285\"),\n            **easyblock(\"model.diffusion_model.output_blocks.10.0\", \"P_bg286\", \"P_bg287\"),\n            **conv(\"model.diffusion_model.output_blocks.10.0.skip_connection\", \"P_bg288\", \"P_bg289\"),\n            **norm(\"model.diffusion_model.output_blocks.10.1.norm\", \"P_bg290\"),\n            **conv(\"model.diffusion_model.output_blocks.10.1.proj_in\", \"P_bg290\", \"P_bg291\"),\n            **dense(\"model.diffusion_model.output_blocks.10.1.transformer_blocks.0.attn1.to_q\", \"P_bg292\", \"P_bg293\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.10.1.transformer_blocks.0.attn1.to_k\", \"P_bg292\", \"P_bg293\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.10.1.transformer_blocks.0.attn1.to_v\", \"P_bg292\", \"P_bg293\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.10.1.transformer_blocks.0.attn1.to_out.0\", \"P_bg292\", \"P_bg293\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.10.1.transformer_blocks.0.ff.net.0.proj\", \"P_b294\", \"P_bg295\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.10.1.transformer_blocks.0.ff.net.2\", \"P_bg296\", \"P_bg297\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.10.1.transformer_blocks.0.attn2.to_q\", \"P_bg298\", \"P_bg299\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.10.1.transformer_blocks.0.attn2.to_k\", \"P_bg300\", \"P_bg301\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.10.1.transformer_blocks.0.attn2.to_v\", \"P_bg300\", \"P_bg301\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.10.1.transformer_blocks.0.attn2.to_out.0\", \"P_bg302\", \"P_bg303\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.10.1.transformer_blocks.0.norm1\", \"P_bg303\"),\n            **norm(\"model.diffusion_model.output_blocks.10.1.transformer_blocks.0.norm2\", \"P_bg303\"),\n            **norm(\"model.diffusion_model.output_blocks.10.1.transformer_blocks.0.norm3\", \"P_bg303\"),\n            **conv(\"model.diffusion_model.output_blocks.10.1.proj_out\", \"P_bg303\", \"P_bg304\"),\n            **easyblock(\"model.diffusion_model.output_blocks.11.0\", \"P_bg305\", \"P_bg306\"),\n            **conv(\"model.diffusion_model.output_blocks.11.0.skip_connection\", \"P_bg307\", \"P_bg308\"),\n            **norm(\"model.diffusion_model.output_blocks.11.1.norm\", \"P_bg309\"),\n            **conv(\"model.diffusion_model.output_blocks.11.1.proj_in\", \"P_bg309\", \"P_bg310\"),\n            **dense(\"model.diffusion_model.output_blocks.11.1.transformer_blocks.0.attn1.to_q\", \"P_bg311\", \"P_bg312\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.11.1.transformer_blocks.0.attn1.to_k\", \"P_bg311\", \"P_bg312\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.11.1.transformer_blocks.0.attn1.to_v\", \"P_bg311\", \"P_bg312\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.11.1.transformer_blocks.0.attn1.to_out.0\", \"P_bg311\", \"P_bg312\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.11.1.transformer_blocks.0.ff.net.0.proj\", \"P_bg313\", \"P_bg314\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.11.1.transformer_blocks.0.ff.net.2\", \"P_bg315\", \"P_bg316\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.11.1.transformer_blocks.0.attn2.to_q\", \"P_bg317\", \"P_bg318\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.11.1.transformer_blocks.0.attn2.to_k\", \"P_bg319\", \"P_bg320\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.11.1.transformer_blocks.0.attn2.to_v\", \"P_bg319\", \"P_bg320\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.11.1.transformer_blocks.0.attn2.to_out.0\", \"P_bg321\", \"P_bg322\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.11.1.transformer_blocks.0.norm1\", \"P_bg322\"),\n            **norm(\"model.diffusion_model.output_blocks.11.1.transformer_blocks.0.norm2\", \"P_bg322\"),\n            **norm(\"model.diffusion_model.output_blocks.11.1.transformer_blocks.0.norm3\", \"P_bg322\"),\n            **conv(\"model.diffusion_model.output_blocks.11.1.proj_out\", \"P_bg322\", \"P_bg323\"),\n            **norm(\"model.diffusion_model.out.0\", \"P_bg324\"),\n            **conv(\"model.diffusion_model.out.2\", \"P_bg325\", \"P_bg326\"),\n            **skip(\"cond_stage_model.transformer.text_model.embeddings.position_ids\", None, None),\n            **dense(\"cond_stage_model.transformer.text_model.embeddings.token_embedding\", \"P_bg365\", \"P_bg366\", bias=False),\n            **dense(\"cond_stage_model.transformer.text_model.embeddings.token_embedding\", None, None),\n            **dense(\"cond_stage_model.transformer.text_model.embeddings.position_embedding\", \"P_bg367\", \"P_bg368\", bias=False),\n            # cond stage text encoder\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.0.self_attn.k_proj\", \"P_bg369\", \"P_bg370\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.0.self_attn.v_proj\", \"P_bg369\", \"P_bg370\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.0.self_attn.q_proj\", \"P_bg369\", \"P_bg370\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.0.self_attn.out_proj\", \"P_bg369\", \"P_bg370\", bias=True),\n            **norm(\"cond_stage_model.transformer.text_model.encoder.layers.0.layer_norm1\", \"P_bg370\"),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.0.mlp.fc1\", \"P_bg370\", \"P_bg371\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.0.mlp.fc2\", \"P_bg371\", \"P_bg372\", bias=True),\n            **norm(\"cond_stage_model.transformer.text_model.encoder.layers.0.layer_norm2\", \"P_bg372\"),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.1.self_attn.k_proj\", \"P_bg372\", \"P_bg373\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.1.self_attn.v_proj\", \"P_bg372\", \"P_bg373\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.1.self_attn.q_proj\", \"P_bg372\", \"P_bg373\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.1.self_attn.out_proj\", \"P_bg372\", \"P_bg373\", bias=True),\n            **norm(\"cond_stage_model.transformer.text_model.encoder.layers.1.layer_norm1\", \"P_bg373\"),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.1.mlp.fc1\", \"P_bg373\", \"P_bg374\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.1.mlp.fc2\", \"P_bg374\", \"P_bg375\", bias=True),\n            **norm(\"cond_stage_model.transformer.text_model.encoder.layers.1.layer_norm2\", \"P_bg375\"),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.2.self_attn.k_proj\", \"P_bg375\", \"P_bg376\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.2.self_attn.v_proj\", \"P_bg375\", \"P_bg376\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.2.self_attn.q_proj\", \"P_bg375\", \"P_bg376\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.2.self_attn.out_proj\", \"P_bg375\", \"P_bg376\", bias=True),\n            **norm(\"cond_stage_model.transformer.text_model.encoder.layers.2.layer_norm1\", \"P_bg376\"),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.2.mlp.fc1\", \"P_bg376\", \"P_bg377\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.2.mlp.fc2\", \"P_bg377\", \"P_bg378\", bias=True),\n            **norm(\"cond_stage_model.transformer.text_model.encoder.layers.2.layer_norm2\", \"P_bg378\"),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.3.self_attn.k_proj\", \"P_bg378\", \"P_bg379\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.3.self_attn.v_proj\", \"P_bg378\", \"P_bg379\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.3.self_attn.q_proj\", \"P_bg378\", \"P_bg379\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.3.self_attn.out_proj\", \"P_bg378\", \"P_bg379\", bias=True),\n            **norm(\"cond_stage_model.transformer.text_model.encoder.layers.3.layer_norm1\", \"P_bg379\"),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.3.mlp.fc1\", \"P_bg379\", \"P_bg380\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.3.mlp.fc2\", \"P_bg380\", \"P_b381\", bias=True),\n            **norm(\"cond_stage_model.transformer.text_model.encoder.layers.3.layer_norm2\", \"P_bg381\"),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.4.self_attn.k_proj\", \"P_bg381\", \"P_bg382\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.4.self_attn.v_proj\", \"P_bg381\", \"P_bg382\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.4.self_attn.q_proj\", \"P_bg381\", \"P_bg382\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.4.self_attn.out_proj\", \"P_bg381\", \"P_bg382\", bias=True),\n            **norm(\"cond_stage_model.transformer.text_model.encoder.layers.4.layer_norm1\", \"P_bg382\"),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.4.mlp.fc1\", \"P_bg382\", \"P_bg383\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.4.mlp.fc2\", \"P_bg383\", \"P_bg384\", bias=True),\n            **norm(\"cond_stage_model.transformer.text_model.encoder.layers.4.layer_norm2\", \"P_bg384\"),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.5.self_attn.k_proj\", \"P_bg384\", \"P_bg385\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.5.self_attn.v_proj\", \"P_bg384\", \"P_bg385\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.5.self_attn.q_proj\", \"P_bg384\", \"P_bg385\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.5.self_attn.out_proj\", \"P_bg384\", \"P_bg385\", bias=True),\n            **norm(\"cond_stage_model.transformer.text_model.encoder.layers.5.layer_norm1\", \"P_bg385\"),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.5.mlp.fc1\", \"P_bg385\", \"P_bg386\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.5.mlp.fc2\", \"P_bg386\", \"P_bg387\", bias=True),\n            **norm(\"cond_stage_model.transformer.text_model.encoder.layers.5.layer_norm2\", \"P_bg387\"),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.6.self_attn.k_proj\", \"P_bg387\", \"P_bg388\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.6.self_attn.v_proj\", \"P_bg387\", \"P_bg388\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.6.self_attn.q_proj\", \"P_bg387\", \"P_bg388\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.6.self_attn.out_proj\", \"P_bg387\", \"P_bg388\", bias=True),\n            **norm(\"cond_stage_model.transformer.text_model.encoder.layers.6.layer_norm1\", \"P_bg389\"),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.6.mlp.fc1\", \"P_bg389\", \"P_bg390\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.6.mlp.fc2\", \"P_bg390\", \"P_bg391\", bias=True),\n            **norm(\"cond_stage_model.transformer.text_model.encoder.layers.6.layer_norm2\", \"P_bg391\"),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.7.self_attn.k_proj\", \"P_bg391\", \"P_bg392\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.7.self_attn.v_proj\", \"P_bg391\", \"P_bg392\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.7.self_attn.q_proj\", \"P_bg391\", \"P_bg392\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.7.self_attn.out_proj\", \"P_bg391\", \"P_bg392\", bias=True),\n            **norm(\"cond_stage_model.transformer.text_model.encoder.layers.7.layer_norm1\", \"P_bg392\"),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.7.mlp.fc1\", \"P_bg392\", \"P_bg393\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.7.mlp.fc2\", \"P_bg393\", \"P_bg394\", bias=True),\n            **norm(\"cond_stage_model.transformer.text_model.encoder.layers.7.layer_norm2\", \"P_bg394\"),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.8.self_attn.k_proj\", \"P_bg394\", \"P_bg395\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.8.self_attn.v_proj\", \"P_bg394\", \"P_bg395\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.8.self_attn.q_proj\", \"P_bg394\", \"P_bg395\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.8.self_attn.out_proj\", \"P_bg394\", \"P_bg395\", bias=True),\n            **norm(\"cond_stage_model.transformer.text_model.encoder.layers.8.layer_norm1\", \"P_bg395\"),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.8.mlp.fc1\", \"P_bg395\", \"P_bg396\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.8.mlp.fc2\", \"P_bg396\", \"P_bg397\", bias=True),\n            **norm(\"cond_stage_model.transformer.text_model.encoder.layers.8.layer_norm2\", \"P_bg397\"),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.9.self_attn.k_proj\", \"P_bg397\", \"P_bg398\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.9.self_attn.v_proj\", \"P_bg397\", \"P_bg398\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.9.self_attn.q_proj\", \"P_bg397\", \"P_bg398\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.9.self_attn.out_proj\", \"P_bg397\", \"P_bg398\", bias=True),\n            **norm(\"cond_stage_model.transformer.text_model.encoder.layers.9.layer_norm1\", \"P_bg398\"),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.9.mlp.fc1\", \"P_bg398\", \"P_bg399\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.9.mlp.fc2\", \"P_bg400\", \"P_bg401\", bias=True),\n            **norm(\"cond_stage_model.transformer.text_model.encoder.layers.9.layer_norm2\", \"P_bg401\"),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.10.self_attn.k_proj\", \"P_bg401\", \"P_bg402\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.10.self_attn.v_proj\", \"P_bg401\", \"P_bg402\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.10.self_attn.q_proj\", \"P_bg401\", \"P_bg402\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.10.self_attn.out_proj\", \"P_bg401\", \"P_bg402\", bias=True),\n            **norm(\"cond_stage_model.transformer.text_model.encoder.layers.10.layer_norm1\", \"P_bg402\"),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.10.mlp.fc1\", \"P_bg402\", \"P_bg403\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.10.mlp.fc2\", \"P_bg403\", \"P_bg404\", bias=True),\n            **norm(\"cond_stage_model.transformer.text_model.encoder.layers.10.layer_norm2\", \"P_bg404\"),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.11.self_attn.k_proj\", \"P_bg404\", \"P_bg405\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.11.self_attn.v_proj\", \"P_bg404\", \"P_bg405\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.11.self_attn.q_proj\", \"P_bg404\", \"P_bg405\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.11.self_attn.out_proj\", \"P_bg404\", \"P_bg405\", bias=True),\n            **norm(\"cond_stage_model.transformer.text_model.encoder.layers.11.layer_norm1\", \"P_bg405\"),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.11.mlp.fc1\", \"P_bg405\", \"P_bg406\", bias=True),\n            **dense(\"cond_stage_model.transformer.text_model.encoder.layers.11.mlp.fc2\", \"P_bg406\", \"P_bg407\", bias=True),\n            **norm(\"cond_stage_model.transformer.text_model.encoder.layers.11.layer_norm2\", \"P_bg407\"),\n            **norm(\"cond_stage_model.transformer.text_model.final_layer_norm\", \"P_bg407\"),\n        }\n    )\n"
  },
  {
    "path": "modules/merging/merge_PermSpec_SDXL.py",
    "content": "from modules.merging.merge_rebasin import PermutationSpec, permutation_spec_from_axes_to_perm\n\ndef sdxl_permutation_spec() -> PermutationSpec:\n    conv = lambda name, p_in, p_out: {  # pylint: disable=unnecessary-lambda-assignment\n        f\"{name}.weight\": (\n            p_out,\n            p_in,\n        ),\n        f\"{name}.bias\": (p_out,),\n    }\n    norm = lambda name, p: {f\"{name}.weight\": (p,), f\"{name}.bias\": (p,)}  # pylint: disable=unnecessary-lambda-assignment\n    dense = (\n        lambda name, p_in, p_out, bias=True: {  # pylint: disable=unnecessary-lambda-assignment\n            f\"{name}.weight\": (p_out, p_in),\n            f\"{name}.bias\": (p_out,),\n        }\n        if bias\n        else {f\"{name}.weight\": (p_out, p_in)}\n    )\n    skip = lambda name, p_in, p_out: {  # pylint: disable=unnecessary-lambda-assignment\n        f\"{name}\": (\n            p_out,\n            p_in,\n            None,\n            None,\n        )\n    }\n\n    # Unet Res blocks\n    easyblock = lambda name, p_in, p_out: {  # pylint: disable=unnecessary-lambda-assignment\n        **norm(f\"{name}.in_layers.0\", p_in),\n        **conv(f\"{name}.in_layers.2\", p_in, f\"P_{name}_inner\"),\n        **dense(\n            f\"{name}.emb_layers.1\", f\"P_{name}_inner2\", f\"P_{name}_inner3\", bias=True\n        ),\n        **norm(f\"{name}.out_layers.0\", f\"P_{name}_inner4\"),\n        **conv(f\"{name}.out_layers.3\", f\"P_{name}_inner4\", p_out),\n    }\n\n    return permutation_spec_from_axes_to_perm(\n        {\n            # Skipped Layers\n            **skip(\"betas\", None, None),\n            **skip(\"alphas_cumprod\", None, None),\n            **skip(\"alphas_cumprod_prev\", None, None),\n            **skip(\"sqrt_alphas_cumprod\", None, None),\n            **skip(\"sqrt_one_minus_alphas_cumprod\", None, None),\n            **skip(\"log_one_minus_alphas_cumprods\", None, None),\n            **skip(\"sqrt_recip_alphas_cumprod\", None, None),\n            **skip(\"sqrt_recipm1_alphas_cumprod\", None, None),\n            **skip(\"posterior_variance\", None, None),\n            **skip(\"posterior_log_variance_clipped\", None, None),\n            **skip(\"posterior_mean_coef1\", None, None),\n            **skip(\"posterior_mean_coef2\", None, None),\n            **skip(\"log_one_minus_alphas_cumprod\", None, None),\n            **skip(\"model_ema.decay\", None, None),\n            **skip(\"model_ema.num_updates\", None, None),\n            **skip(\"conditioner.embedders.0.transformer.text_model.embeddings.position_ids\", None, None),\n            **skip(\"conditioner.embedders.1.model.logit_scale\", None, None),\n            **skip(\"conditioner.embedders.1.model.positional_embedding\", None, None),\n            **skip(\"conditioner.embedders.1.model.text_projection\", None, None),\n            **conv(\"model.diffusion_model.input_blocks.0.0\", \"P_bg0\", \"P_bg1\"),\n            **easyblock(\"model.diffusion_model.input_blocks.1.0\", \"P_bg2\", \"P_bg3\"),\n            **easyblock(\"model.diffusion_model.input_blocks.2.0\", \"P_bg4\", \"P_bg5\"),\n            **conv(\"model.diffusion_model.input_blocks.3.0.op\", \"P_bg6\", \"P_bg7\"),\n            **easyblock(\"model.diffusion_model.input_blocks.4.0\", \"P_bg8\", \"P_bg9\"),\n            **conv(\"model.diffusion_model.input_blocks.4.0.skip_connection\", \"P_bg10\", \"P_bg11\"),\n            **norm(\"model.diffusion_model.input_blocks.4.1.norm\", \"P_bg12\"),\n            **conv(\"model.diffusion_model.input_blocks.4.1.proj_in\", \"P_bg12\", \"P_bg13\"),\n            **conv(\"model.diffusion_model.input_blocks.4.1.proj_out\", \"P_bg14\", \"P_bg15\"),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.0.attn1.to_k\", \"P_bg16\", \"P_bg17\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.0.attn1.to_out.0\", \"P_bg16\", \"P_bg17\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.0.attn1.to_q\", \"P_bg16\", \"P_bg17\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.0.attn1.to_v\", \"P_bg16\", \"P_bg17\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.0.attn2.to_k\", \"P_bg18\", \"P_bg19\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.0.attn2.to_out.0\", \"P_bg20\", \"P_bg21\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.0.attn2.to_q\", \"P_bg20\", \"P_bg21\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.0.attn2.to_v\", \"P_bg18\", \"P_bg19\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.0.ff.net.0.proj\", \"P_bg22\", \"P_bg23\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.0.ff.net.2\", \"P_bg24\", \"P_bg25\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.0.norm1\", \"P_bg26\"),\n            **norm(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.0.norm2\", \"P_bg26\"),\n            **norm(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.0.norm3\", \"P_bg26\"),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.1.attn1.to_k\", \"P_bg27\", \"P_bg28\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.1.attn1.to_out.0\", \"P_bg27\", \"P_bg28\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.1.attn1.to_q\", \"P_bg27\", \"P_bg28\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.1.attn1.to_v\", \"P_bg27\", \"P_bg28\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.1.attn2.to_k\", \"P_bg29\", \"P_bg30\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.1.attn2.to_out.0\", \"P_bg31\", \"P_bg32\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.1.attn2.to_q\", \"P_bg31\", \"P_bg32\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.1.attn2.to_v\", \"P_bg33\", \"P_bg34\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.1.ff.net.0.proj\", \"P_bg35\", \"P_bg36\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.1.ff.net.2\", \"P_bg37\", \"P_bg38\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.1.norm1\", \"P_bg39\"),\n            **norm(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.1.norm2\", \"P_bg39\"),\n            **norm(\"model.diffusion_model.input_blocks.4.1.transformer_blocks.1.norm3\", \"P_bg39\"),\n            **easyblock(\"model.diffusion_model.input_blocks.5.0\", \"P_bg40\", \"P_bg41\"),\n            **norm(\"model.diffusion_model.input_blocks.5.1.norm\", \"P_bg42\"),\n            **conv(\"model.diffusion_model.input_blocks.5.1.proj_in\", \"P_bg43\", \"P_bg44\"),\n            **conv(\"model.diffusion_model.input_blocks.5.1.proj_out\", \"P_bg45\", \"P_bg46\"),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.0.attn1.to_k\", \"P_bg47\", \"P_bg48\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.0.attn1.to_out.0\", \"P_bg47\", \"P_bg48\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.0.attn1.to_q\", \"P_bg47\", \"P_bg48\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.0.attn1.to_v\", \"P_bg47\", \"P_bg48\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.0.attn2.to_k\", \"P_bg49\", \"P_bg50\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.0.attn2.to_out.0\", \"P_bg51\", \"P_bg52\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.0.attn2.to_q\", \"P_bg53\", \"P_bg54\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.0.attn2.to_v\", \"P_bg55\", \"P_bg56\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.0.ff.net.0.proj\", \"P_bg57\", \"P_bg58\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.0.ff.net.2\", \"P_bg59\", \"P_bg60\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.0.norm1\", \"P_bg61\"),\n            **norm(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.0.norm2\", \"P_bg61\"),\n            **norm(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.0.norm3\", \"P_bg61\"),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.1.attn1.to_k\", \"P_bg62\", \"P_bg63\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.1.attn1.to_out.0\", \"P_bg62\", \"P_bg63\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.1.attn1.to_q\", \"P_bg62\", \"P_bg63\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.1.attn1.to_v\", \"P_bg62\", \"P_bg63\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.1.attn2.to_k\", \"P_bg64\", \"P_bg65\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.1.attn2.to_out.0\", \"P_bg66\", \"P_bg67\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.1.attn2.to_q\", \"P_bg68\", \"P_bg69\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.1.attn2.to_v\", \"P_bg70\", \"P_bg71\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.1.ff.net.0.proj\", \"P_bg72\", \"P_bg73\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.1.ff.net.2\", \"P_bg74\", \"P_bg75\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.1.norm1\", \"P_bg76\"),\n            **norm(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.1.norm2\", \"P_bg76\"),\n            **norm(\"model.diffusion_model.input_blocks.5.1.transformer_blocks.1.norm3\", \"P_bg76\"),\n            **conv(\"model.diffusion_model.input_blocks.6.0.op\", \"P_bg77\", \"P_bg78\"),\n            **easyblock(\"model.diffusion_model.input_blocks.7.0\", \"P_bg78\", \"P_bg79\"),\n            **conv(\"model.diffusion_model.input_blocks.7.0.skip_connection\", \"P_bg80\", \"P_bg81\"),\n            **norm(\"model.diffusion_model.input_blocks.7.1.norm\", \"P_bg82\"),\n            **conv(\"model.diffusion_model.input_blocks.7.1.proj_in\", \"P_bg82\", \"P_bg83\"),\n            **conv(\"model.diffusion_model.input_blocks.7.1.proj_out\", \"P_bg84\", \"P_bg85\"),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.0.attn1.to_k\", \"P_bg86\", \"P_bg87\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.0.attn1.to_out.0\", \"P_bg86\", \"P_bg87\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.0.attn1.to_q\", \"P_bg86\", \"P_bg87\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.0.attn1.to_v\", \"P_bg86\", \"P_bg87\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.0.attn2.to_k\", \"P_bg88\", \"P_bg89\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.0.attn2.to_out.0\", \"P_bg90\", \"P_bg91\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.0.attn2.to_q\", \"P_bg92\", \"P_bg93\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.0.attn2.to_v\", \"P_bg94\", \"P_bg95\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.0.ff.net.0.proj\", \"P_bg96\", \"P_bg97\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.0.ff.net.2\", \"P_bg98\", \"P_bg99\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.0.norm1\", \"P_bg100\"),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.0.norm2\", \"P_bg100\"),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.0.norm3\", \"P_bg100\"),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.1.attn1.to_k\", \"P_bg101\", \"P_bg102\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.1.attn1.to_out.0\", \"P_bg101\", \"P_bg102\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.1.attn1.to_q\", \"P_bg101\", \"P_bg102\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.1.attn1.to_v\", \"P_bg101\", \"P_bg102\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.1.attn2.to_k\", \"P_bg103\", \"P_bg104\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.1.attn2.to_out.0\", \"P_bg105\", \"P_bg106\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.1.attn2.to_q\", \"P_bg107\", \"P_bg108\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.1.attn2.to_v\", \"P_bg109\", \"P_bg110\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.1.ff.net.0.proj\", \"P_bg111\", \"P_bg112\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.1.ff.net.2\", \"P_bg113\", \"P_bg114\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.1.norm1\", \"P_bg115\"),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.1.norm2\", \"P_bg115\"),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.1.norm3\", \"P_bg115\"),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.2.attn1.to_k\", \"P_bg116\", \"P_bg117\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.2.attn1.to_out.0\", \"P_bg116\", \"P_bg117\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.2.attn1.to_q\", \"P_bg116\", \"P_bg117\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.2.attn1.to_v\", \"P_bg116\", \"P_bg117\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.2.attn2.to_k\", \"P_bg118\", \"P_bg119\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.2.attn2.to_out.0\", \"P_bg120\", \"P_bg121\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.2.attn2.to_q\", \"P_bg122\", \"P_bg123\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.2.attn2.to_v\", \"P_bg124\", \"P_bg125\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.2.ff.net.0.proj\", \"P_bg126\", \"P_bg127\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.2.ff.net.2\", \"P_bg128\", \"P_bg129\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.2.norm1\", \"P_bg130\"),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.2.norm2\", \"P_bg130\"),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.2.norm3\", \"P_bg130\"),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.3.attn1.to_k\", \"P_bg110\", \"P_bg111\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.3.attn1.to_out.0\", \"P_bg131\", \"P_bg132\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.3.attn1.to_q\", \"P_bg131\", \"P_bg132\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.3.attn1.to_v\", \"P_bg131\", \"P_bg132\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.3.attn2.to_k\", \"P_bg133\", \"P_bg134\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.3.attn2.to_out.0\", \"P_bg135\", \"P_bg136\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.3.attn2.to_q\", \"P_bg137\", \"P_bg138\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.3.attn2.to_v\", \"P_bg139\", \"P_bg140\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.3.ff.net.0.proj\", \"P_bg141\", \"P_bg142\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.3.ff.net.2\", \"P_bg143\", \"P_bg144\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.3.norm1\", \"P_bg145\"),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.3.norm2\", \"P_bg145\"),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.3.norm3\", \"P_bg145\"),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.4.attn1.to_k\", \"P_bg146\", \"P_bg147\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.4.attn1.to_out.0\", \"P_bg146\", \"P_bg147\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.4.attn1.to_q\", \"P_bg146\", \"P_bg147\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.4.attn1.to_v\", \"P_bg146\", \"P_bg147\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.4.attn2.to_k\", \"P_bg148\", \"P_bg149\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.4.attn2.to_out.0\", \"P_bg150\", \"P_bg151\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.4.attn2.to_q\", \"P_bg152\", \"P_bg153\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.4.attn2.to_v\", \"P_bg154\", \"P_bg155\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.4.ff.net.0.proj\", \"P_bg156\", \"P_bg157\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.4.ff.net.2\", \"P_bg158\", \"P_bg159\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.4.norm1\", \"P_bg160\"),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.4.norm2\", \"P_bg160\"),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.4.norm3\", \"P_bg160\"),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.5.attn1.to_k\", \"P_bg161\", \"P_bg162\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.5.attn1.to_out.0\", \"P_bg161\", \"P_bg162\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.5.attn1.to_q\", \"P_bg161\", \"P_bg162\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.5.attn1.to_v\", \"P_bg161\", \"P_bg162\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.5.attn2.to_k\", \"P_bg163\", \"P_bg164\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.5.attn2.to_out.0\", \"P_bg165\", \"P_bg166\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.5.attn2.to_q\", \"P_bg167\", \"P_bg168\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.5.attn2.to_v\", \"P_bg169\", \"P_bg170\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.5.ff.net.0.proj\", \"P_bg171\", \"P_bg172\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.5.ff.net.2\", \"P_bg173\", \"P_bg174\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.5.norm1\", \"P_bg175\"),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.5.norm2\", \"P_bg175\"),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.5.norm3\", \"P_bg175\"),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.6.attn1.to_k\", \"P_bg176\", \"P_bg177\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.6.attn1.to_out.0\", \"P_bg176\", \"P_bg177\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.6.attn1.to_q\", \"P_bg176\", \"P_bg177\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.6.attn1.to_v\", \"P_bg176\", \"P_bg177\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.6.attn2.to_k\", \"P_bg178\", \"P_bg179\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.6.attn2.to_out.0\", \"P_bg180\", \"P_bg181\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.6.attn2.to_q\", \"P_bg182\", \"P_bg183\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.6.attn2.to_v\", \"P_bg184\", \"P_bg185\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.6.ff.net.0.proj\", \"P_bg186\", \"P_bg187\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.6.ff.net.2\", \"P_bg188\", \"P_bg189\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.6.norm1\", \"P_bg190\"),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.6.norm2\", \"P_bg190\"),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.6.norm3\", \"P_bg190\"),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.7.attn1.to_k\", \"P_bg191\", \"P_bg192\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.7.attn1.to_out.0\", \"P_bg193\", \"P_bg194\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.7.attn1.to_q\", \"P_bg195\", \"P_bg196\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.7.attn1.to_v\", \"P_bg197\", \"P_bg198\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.7.attn2.to_k\", \"P_bg199\", \"P_bg200\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.7.attn2.to_out.0\", \"P_bg201\", \"P_bg202\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.7.attn2.to_q\", \"P_bg203\", \"P_bg204\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.7.attn2.to_v\", \"P_bg205\", \"P_bg206\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.7.ff.net.0.proj\", \"P_bg207\", \"P_bg208\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.7.ff.net.2\", \"P_bg209\", \"P_bg210\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.7.norm1\", \"P_bg211\"),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.7.norm2\", \"P_bg211\"),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.7.norm3\", \"P_bg211\"),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.8.attn1.to_k\", \"P_bg212\", \"P_bg213\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.8.attn1.to_out.0\", \"P_bg212\", \"P_bg213\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.8.attn1.to_q\", \"P_bg212\", \"P_bg213\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.8.attn1.to_v\", \"P_bg212\", \"P_bg213\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.8.attn2.to_k\", \"P_bg214\", \"P_bg215\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.8.attn2.to_out.0\", \"P_bg216\", \"P_bg217\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.8.attn2.to_q\", \"P_bg218\", \"P_bg219\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.8.attn2.to_v\", \"P_bg220\", \"P_bg221\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.8.ff.net.0.proj\", \"P_bg222\", \"P_bg223\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.8.ff.net.2\", \"P_bg224\", \"P_bg225\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.8.norm1\", \"P_bg226\"),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.8.norm2\", \"P_bg226\"),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.8.norm3\", \"P_bg226\"),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.9.attn1.to_k\", \"P_bg227\", \"P_bg228\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.9.attn1.to_out.0\", \"P_bg227\", \"P_bg228\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.9.attn1.to_q\", \"P_bg227\", \"P_bg228\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.9.attn1.to_v\", \"P_bg227\", \"P_bg228\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.9.attn2.to_k\", \"P_bg229\", \"P_bg230\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.9.attn2.to_out.0\", \"P_bg231\", \"P_bg232\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.9.attn2.to_q\", \"P_bg233\", \"P_bg234\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.9.attn2.to_v\", \"P_bg235\", \"P_bg236\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.9.ff.net.0.proj\", \"P_bg237\", \"P_bg238\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.9.ff.net.2\", \"P_bg239\", \"P_bg240\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.9.norm1\", \"P_bg241\"),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.9.norm2\", \"P_bg241\"),\n            **norm(\"model.diffusion_model.input_blocks.7.1.transformer_blocks.9.norm3\", \"P_bg241\"),\n            **easyblock(\"model.diffusion_model.input_blocks.8.0\", \"P_bg242\", \"P_bg243\"),\n            **norm(\"model.diffusion_model.input_blocks.8.1.norm\", \"P_bg244\"),\n            **conv(\"model.diffusion_model.input_blocks.8.1.proj_in\", \"P_bg244\", \"P_bg245\"),\n            **conv(\"model.diffusion_model.input_blocks.8.1.proj_out\", \"P_bg246\", \"P_bg247\"),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.0.attn1.to_k\", \"P_bg248\", \"P_bg249\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.0.attn1.to_out.0\", \"P_bg248\", \"P_bg249\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.0.attn1.to_q\", \"P_bg248\", \"P_bg249\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.0.attn1.to_v\", \"P_bg248\", \"P_bg249\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.0.attn2.to_k\", \"P_bg250\", \"P_bg251\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.0.attn2.to_out.0\", \"P_bg252\", \"P_bg253\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.0.attn2.to_q\", \"P_bg254\", \"P_bg255\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.0.attn2.to_v\", \"P_bg256\", \"P_bg257\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.0.ff.net.0.proj\", \"P_bg258\", \"P_bg259\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.0.ff.net.2\", \"P_bg260\", \"P_bg261\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.0.norm1\", \"P_bg262\"),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.0.norm2\", \"P_bg262\"),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.0.norm3\", \"P_bg262\"),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.1.attn1.to_k\", \"P_bg263\", \"P_bg264\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.1.attn1.to_out.0\", \"P_bg263\", \"P_bg264\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.1.attn1.to_q\", \"P_bg263\", \"P_bg264\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.1.attn1.to_v\", \"P_bg263\", \"P_bg264\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.1.attn2.to_k\", \"P_bg265\", \"P_bg266\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.1.attn2.to_out.0\", \"P_bg267\", \"P_bg268\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.1.attn2.to_q\", \"P_bg269\", \"P_bg270\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.1.attn2.to_v\", \"P_bg271\", \"P_bg272\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.1.ff.net.0.proj\", \"P_bg273\", \"P_bg274\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.1.ff.net.2\", \"P_bg275\", \"P_bg276\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.1.norm1\", \"P_bg277\"),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.1.norm2\", \"P_bg277\"),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.1.norm3\", \"P_bg277\"),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.2.attn1.to_k\", \"P_bg278\", \"P_bg279\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.2.attn1.to_out.0\", \"P_bg278\", \"P_bg279\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.2.attn1.to_q\", \"P_bg278\", \"P_bg279\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.2.attn1.to_v\", \"P_bg278\", \"P_bg279\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.2.attn2.to_k\", \"P_bg280\", \"P_bg281\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.2.attn2.to_out.0\", \"P_bg282\", \"P_bg283\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.2.attn2.to_q\", \"P_bg284\", \"P_bg285\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.2.attn2.to_v\", \"P_bg286\", \"P_bg287\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.2.ff.net.0.proj\", \"P_bg288\", \"P_bg289\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.2.ff.net.2\", \"P_bg290\", \"P_bg291\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.2.norm1\", \"P_bg292\"),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.2.norm2\", \"P_bg292\"),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.2.norm3\", \"P_bg292\"),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.3.attn1.to_k\", \"P_bg293\", \"P_bg294\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.3.attn1.to_out.0\", \"P_bg293\", \"P_bg294\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.3.attn1.to_q\", \"P_bg293\", \"P_bg294\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.3.attn1.to_v\", \"P_bg293\", \"P_bg294\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.3.attn2.to_k\", \"P_bg295\", \"P_bg296\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.3.attn2.to_out.0\", \"P_bg297\", \"P_bg298\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.3.attn2.to_q\", \"P_bg299\", \"P_bg300\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.3.attn2.to_v\", \"P_bg301\", \"P_bg302\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.3.ff.net.0.proj\", \"P_bg303\", \"P_bg304\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.3.ff.net.2\", \"P_bg305\", \"P_bg306\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.3.norm1\", \"P_bg307\"),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.3.norm2\", \"P_bg307\"),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.3.norm3\", \"P_bg307\"),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.4.attn1.to_k\", \"P_bg308\", \"P_bg309\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.4.attn1.to_out.0\", \"P_bg308\", \"P_bg309\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.4.attn1.to_q\", \"P_bg308\", \"P_bg309\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.4.attn1.to_v\", \"P_bg308\", \"P_bg309\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.4.attn2.to_k\", \"P_bg310\", \"P_bg311\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.4.attn2.to_out.0\", \"P_bg312\", \"P_bg313\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.4.attn2.to_q\", \"P_bg314\", \"P_bg315\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.4.attn2.to_v\", \"P_bg316\", \"P_bg317\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.4.ff.net.0.proj\", \"P_bg318\", \"P_bg319\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.4.ff.net.2\", \"P_bg320\", \"P_bg321\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.4.norm1\", \"P_bg322\"),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.4.norm2\", \"P_bg322\"),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.4.norm3\", \"P_bg322\"),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.5.attn1.to_k\", \"P_bg322\", \"P_bg323\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.5.attn1.to_out.0\", \"P_bg322\", \"P_bg323\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.5.attn1.to_q\", \"P_bg322\", \"P_bg323\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.5.attn1.to_v\", \"P_bg322\", \"P_bg323\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.5.attn2.to_k\", \"P_bg324\", \"P_bg325\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.5.attn2.to_out.0\", \"P_bg326\", \"P_bg327\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.5.attn2.to_q\", \"P_bg328\", \"P_bg329\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.5.attn2.to_v\", \"P_bg330\", \"P_bg331\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.5.ff.net.0.proj\", \"P_bg332\", \"P_bg333\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.5.ff.net.2\", \"P_bg334\", \"P_bg335\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.5.norm1\", \"P_bg336\"),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.5.norm2\", \"P_bg336\"),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.5.norm3\", \"P_bg336\"),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.6.attn1.to_k\", \"P_bg337\", \"P_bg338\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.6.attn1.to_out.0\", \"P_bg337\", \"P_bg338\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.6.attn1.to_q\", \"P_bg337\", \"P_bg338\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.6.attn1.to_v\", \"P_bg337\", \"P_bg338\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.6.attn2.to_k\", \"P_bg339\", \"P_bg340\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.6.attn2.to_out.0\", \"P_bg341\", \"P_bg342\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.6.attn2.to_q\", \"P_bg343\", \"P_bg344\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.6.attn2.to_v\", \"P_bg345\", \"P_bg346\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.6.ff.net.0.proj\", \"P_bg347\", \"P_bg348\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.6.ff.net.2\", \"P_bg349\", \"P_bg350\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.6.norm1\", \"P_bg351\"),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.6.norm2\", \"P_bg351\"),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.6.norm3\", \"P_bg351\"),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.7.attn1.to_k\", \"P_bg352\", \"P_bg353\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.7.attn1.to_out.0\", \"P_bg352\", \"P_bg353\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.7.attn1.to_q\", \"P_bg352\", \"P_bg353\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.7.attn1.to_v\", \"P_bg352\", \"P_bg353\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.7.attn2.to_k\", \"P_bg354\", \"P_bg355\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.7.attn2.to_out.0\", \"P_bg356\", \"P_bg357\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.7.attn2.to_q\", \"P_bg358\", \"P_bg359\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.7.attn2.to_v\", \"P_bg360\", \"P_bg361\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.7.ff.net.0.proj\", \"P_bg362\", \"P_bg363\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.7.ff.net.2\", \"P_bg364\", \"P_bg365\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.7.norm1\", \"P_bg366\"),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.7.norm2\", \"P_bg366\"),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.7.norm3\", \"P_bg366\"),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.8.attn1.to_k\", \"P_bg367\", \"P_bg368\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.8.attn1.to_out.0\", \"P_bg367\", \"P_bg368\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.8.attn1.to_q\", \"P_bg367\", \"P_bg368\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.8.attn1.to_v\", \"P_bg367\", \"P_bg368\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.8.attn2.to_k\", \"P_bg369\", \"P_bg370\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.8.attn2.to_out.0\", \"P_bg371\", \"P_bg372\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.8.attn2.to_q\", \"P_bg373\", \"P_bg374\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.8.attn2.to_v\", \"P_bg375\", \"P_bg376\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.8.ff.net.0.proj\", \"P_bg377\", \"P_bg378\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.8.ff.net.2\", \"P_bg379\", \"P_bg380\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.8.norm1\", \"P_bg381\"),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.8.norm2\", \"P_bg381\"),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.8.norm3\", \"P_bg381\"),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.9.attn1.to_k\", \"P_bg382\", \"P_bg383\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.9.attn1.to_out.0\", \"P_bg382\", \"P_bg383\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.9.attn1.to_q\", \"P_bg382\", \"P_bg383\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.9.attn1.to_v\", \"P_bg382\", \"P_bg383\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.9.attn2.to_k\", \"P_bg384\", \"P_bg385\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.9.attn2.to_out.0\", \"P_bg386\", \"P_bg387\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.9.attn2.to_q\", \"P_bg388\", \"P_bg389\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.9.attn2.to_v\", \"P_bg390\", \"P_bg391\", bias=False),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.9.ff.net.0.proj\", \"P_bg392\", \"P_bg393\", bias=True),\n            **dense(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.9.ff.net.2\", \"P_bg394\", \"P_bg395\", bias=True),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.9.norm1\", \"P_bg396\"),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.9.norm2\", \"P_bg396\"),\n            **norm(\"model.diffusion_model.input_blocks.8.1.transformer_blocks.9.norm3\", \"P_bg396\"),\n            **dense(\"model.diffusion_model.label_emb.0.0\", \"P_bg397\", \"P_bg398\", bias=True),\n            **dense(\"model.diffusion_model.label_emb.0.2\", \"P_bg399\", \"P_bg400\", bias=True),\n            **easyblock(\"model.diffusion_model.middle_block.0\", \"P_bg401\", \"P_bg402\"),\n            **norm(\"model.diffusion_model.middle_block.1.norm\", \"P_bg403\"),\n            **conv(\"model.diffusion_model.middle_block.1.proj_in\", \"P_bg403\", \"P_bg404\"),\n            **conv(\"model.diffusion_model.middle_block.1.proj_out\", \"P_bg405\", \"P_bg406\"),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.0.attn1.to_k\", \"P_bg407\", \"P_bg408\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.0.attn1.to_out.0\", \"P_bg407\", \"P_bg408\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.0.attn1.to_q\", \"P_bg407\", \"P_bg408\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.0.attn1.to_v\", \"P_bg407\", \"P_bg408\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.0.attn2.to_k\", \"P_bg409\", \"P_bg410\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.0.attn2.to_out.0\", \"P_bg411\", \"P_bg412\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.0.attn2.to_q\", \"P_bg413\", \"P_bg414\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.0.attn2.to_v\", \"P_bg415\", \"P_bg416\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.0.ff.net.0.proj\", \"P_bg417\", \"P_bg418\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.0.ff.net.2\", \"P_bg419\", \"P_bg420\", bias=True),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.0.norm1\", \"P_bg421\"),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.0.norm2\", \"P_bg421\"),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.0.norm3\", \"P_bg421\"),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.1.attn1.to_k\", \"P_bg422\", \"P_bg423\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.1.attn1.to_out.0\", \"P_bg422\", \"P_bg423\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.1.attn1.to_q\", \"P_bg422\", \"P_bg423\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.1.attn1.to_v\", \"P_bg422\", \"P_bg423\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.1.attn2.to_k\", \"P_bg424\", \"P_bg425\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.1.attn2.to_out.0\", \"P_bg426\", \"P_bg427\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.1.attn2.to_q\", \"P_bg428\", \"P_bg429\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.1.attn2.to_v\", \"P_bg430\", \"P_bg431\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.1.ff.net.0.proj\", \"P_bg432\", \"P_bg433\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.1.ff.net.2\", \"P_bg434\", \"P_bg435\", bias=True),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.1.norm1\", \"P_bg436\"),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.1.norm2\", \"P_bg436\"),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.1.norm3\", \"P_bg436\"),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.2.attn1.to_k\", \"P_bg437\", \"P_bg438\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.2.attn1.to_out.0\", \"P_bg437\", \"P_bg438\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.2.attn1.to_q\", \"P_bg437\", \"P_bg438\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.2.attn1.to_v\", \"P_bg437\", \"P_bg438\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.2.attn2.to_k\", \"P_bg439\", \"P_bg440\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.2.attn2.to_out.0\", \"P_bg441\", \"P_bg442\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.2.attn2.to_q\", \"P_bg443\", \"P_bg444\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.2.attn2.to_v\", \"P_bg445\", \"P_bg446\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.2.ff.net.0.proj\", \"P_bg447\", \"P_bg448\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.2.ff.net.2\", \"P_bg449\", \"P_bg450\", bias=True),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.2.norm1\", \"P_bg451\"),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.2.norm2\", \"P_bg451\"),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.2.norm3\", \"P_bg451\"),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.3.attn1.to_k\", \"P_bg452\", \"P_bg453\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.3.attn1.to_out.0\", \"P_bg452\", \"P_bg453\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.3.attn1.to_q\", \"P_bg452\", \"P_bg453\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.3.attn1.to_v\", \"P_bg452\", \"P_bg453\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.3.attn2.to_k\", \"P_bg454\", \"P_bg455\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.3.attn2.to_out.0\", \"P_bg456\", \"P_bg457\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.3.attn2.to_q\", \"P_bg458\", \"P_bg459\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.3.attn2.to_v\", \"P_bg460\", \"P_bg461\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.3.ff.net.0.proj\", \"P_bg462\", \"P_bg463\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.3.ff.net.2\", \"P_bg464\", \"P_bg465\", bias=True),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.3.norm1\", \"P_bg466\"),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.3.norm2\", \"P_bg466\"),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.3.norm3\", \"P_bg466\"),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.4.attn1.to_k\", \"P_bg467\", \"P_bg468\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.4.attn1.to_out.0\", \"P_bg467\", \"P_bg468\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.4.attn1.to_q\", \"P_bg467\", \"P_bg468\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.4.attn1.to_v\", \"P_bg467\", \"P_bg468\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.4.attn2.to_k\", \"P_bg469\", \"P_bg470\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.4.attn2.to_out.0\", \"P_bg471\", \"P_bg472\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.4.attn2.to_q\", \"P_bg473\", \"P_bg474\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.4.attn2.to_v\", \"P_bg475\", \"P_bg476\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.4.ff.net.0.proj\", \"P_bg477\", \"P_bg478\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.4.ff.net.2\", \"P_bg479\", \"P_bg480\", bias=True),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.4.norm1\", \"P_bg481\"),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.4.norm2\", \"P_bg481\"),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.4.norm3\", \"P_bg481\"),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.5.attn1.to_k\", \"P_bg482\", \"P_bg483\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.5.attn1.to_out.0\", \"P_bg482\", \"P_bg483\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.5.attn1.to_q\", \"P_bg482\", \"P_bg483\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.5.attn1.to_v\", \"P_bg482\", \"P_bg483\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.5.attn2.to_k\", \"P_bg484\", \"P_bg485\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.5.attn2.to_out.0\", \"P_bg486\", \"P_bg487\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.5.attn2.to_q\", \"P_bg488\", \"P_bg489\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.5.attn2.to_v\", \"P_bg490\", \"P_bg491\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.5.ff.net.0.proj\", \"P_bg492\", \"P_bg493\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.5.ff.net.2\", \"P_bg494\", \"P_bg495\", bias=True),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.5.norm1\", \"P_bg496\"),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.5.norm2\", \"P_bg496\"),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.5.norm3\", \"P_bg496\"),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.6.attn1.to_k\", \"P_bg497\", \"P_bg498\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.6.attn1.to_out.0\", \"P_bg497\", \"P_bg498\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.6.attn1.to_q\", \"P_bg497\", \"P_bg498\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.6.attn1.to_v\", \"P_bg497\", \"P_bg498\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.6.attn2.to_k\", \"P_bg499\", \"P_bg500\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.6.attn2.to_out.0\", \"P_bg501\", \"P_bg502\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.6.attn2.to_q\", \"P_bg503\", \"P_bg504\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.6.attn2.to_v\", \"P_bg505\", \"P_bg506\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.6.ff.net.0.proj\", \"P_bg507\", \"P_bg508\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.6.ff.net.2\", \"P_bg509\", \"P_bg510\", bias=True),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.6.norm1\", \"P_bg511\"),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.6.norm2\", \"P_bg511\"),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.6.norm3\", \"P_bg511\"),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.7.attn1.to_k\", \"P_bg512\", \"P_bg513\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.7.attn1.to_out.0\", \"P_bg512\", \"P_bg513\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.7.attn1.to_q\", \"P_bg512\", \"P_bg513\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.7.attn1.to_v\", \"P_bg512\", \"P_bg513\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.7.attn2.to_k\", \"P_bg514\", \"P_bg515\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.7.attn2.to_out.0\", \"P_bg516\", \"P_bg517\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.7.attn2.to_q\", \"P_bg518\", \"P_bg519\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.7.attn2.to_v\", \"P_bg520\", \"P_bg521\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.7.ff.net.0.proj\", \"P_bg522\", \"P_bg523\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.7.ff.net.2\", \"P_bg524\", \"P_bg525\", bias=True),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.7.norm1\", \"P_bg526\"),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.7.norm2\", \"P_bg526\"),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.7.norm3\", \"P_bg526\"),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.8.attn1.to_k\", \"P_bg527\", \"P_bg528\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.8.attn1.to_out.0\", \"P_bg527\", \"P_bg528\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.8.attn1.to_q\", \"P_bg527\", \"P_bg528\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.8.attn1.to_v\", \"P_bg527\", \"P_bg528\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.8.attn2.to_k\", \"P_bg529\", \"P_bg530\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.8.attn2.to_out.0\", \"P_bg531\", \"P_bg532\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.8.attn2.to_q\", \"P_bg533\", \"P_bg534\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.8.attn2.to_v\", \"P_bg535\", \"P_bg536\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.8.ff.net.0.proj\", \"P_bg537\", \"P_bg538\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.8.ff.net.2\", \"P_bg539\", \"P_bg540\", bias=True),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.8.norm1\", \"P_bg541\"),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.8.norm2\", \"P_bg541\"),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.8.norm3\", \"P_bg541\"),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.9.attn1.to_k\", \"P_bg542\", \"P_bg543\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.9.attn1.to_out.0\", \"P_bg542\", \"P_bg543\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.9.attn1.to_q\", \"P_bg542\", \"P_bg543\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.9.attn1.to_v\", \"P_bg542\", \"P_bg543\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.9.attn2.to_k\", \"P_bg544\", \"P_bg545\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.9.attn2.to_out.0\", \"P_bg546\", \"P_bg547\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.9.attn2.to_q\", \"P_bg548\", \"P_bg549\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.9.attn2.to_v\", \"P_bg550\", \"P_bg551\", bias=False),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.9.ff.net.0.proj\", \"P_bg552\", \"P_bg553\", bias=True),\n            **dense(\"model.diffusion_model.middle_block.1.transformer_blocks.9.ff.net.2\", \"P_bg554\", \"P_bg555\", bias=True),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.9.norm1\", \"P_bg556\"),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.9.norm2\", \"P_bg556\"),\n            **norm(\"model.diffusion_model.middle_block.1.transformer_blocks.9.norm3\", \"P_bg556\"),\n            **easyblock(\"model.diffusion_model.middle_block.2\", \"P_bg557\", \"P_bg558\"),\n            **norm(\"model.diffusion_model.out.0\", \"P_bg559\"),\n            **conv(\"model.diffusion_model.out.2\", \"P_bg560\", \"P_bg561\"),\n            **easyblock(\"model.diffusion_model.output_blocks.0.0\", \"P_bg562\", \"P_bg563\"),\n            **conv(\"model.diffusion_model.output_blocks.0.0.skip_connection\", \"P_bg564\", \"P_bg565\"),\n            **norm(\"model.diffusion_model.output_blocks.0.1.norm\", \"P_bg566\"),\n            **conv(\"model.diffusion_model.output_blocks.0.1.proj_in\", \"P_bg566\", \"P_bg567\"),\n            **conv(\"model.diffusion_model.output_blocks.0.1.proj_out\", \"P_bg568\", \"P_bg569\"),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.0.attn1.to_k\", \"P_bg570\", \"P_bg571\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.0.attn1.to_out.0\", \"P_bg570\", \"P_bg571\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.0.attn1.to_q\", \"P_bg570\", \"P_bg571\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.0.attn1.to_v\", \"P_bg570\", \"P_bg571\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.0.attn2.to_k\", \"P_bg572\", \"P_bg573\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.0.attn2.to_out.0\", \"P_bg574\", \"P_bg575\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.0.attn2.to_q\", \"P_bg576\", \"P_bg577\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.0.attn2.to_v\", \"P_bg578\", \"P_bg579\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.0.ff.net.0.proj\", \"P_bg580\", \"P_bg581\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.0.ff.net.2\", \"P_bg582\", \"P_bg583\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.0.norm1\", \"P_bg584\"),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.0.norm2\", \"P_bg584\"),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.0.norm3\", \"P_bg584\"),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.1.attn1.to_k\", \"P_bg585\", \"P_bg586\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.1.attn1.to_out.0\", \"P_bg585\", \"P_bg586\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.1.attn1.to_q\", \"P_bg585\", \"P_bg586\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.1.attn1.to_v\", \"P_bg585\", \"P_bg586\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.1.attn2.to_k\", \"P_bg587\", \"P_bg588\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.1.attn2.to_out.0\", \"P_bg589\", \"P_bg590\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.1.attn2.to_q\", \"P_bg591\", \"P_bg592\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.1.attn2.to_v\", \"P_bg593\", \"P_bg594\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.1.ff.net.0.proj\", \"P_bg595\", \"P_bg596\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.1.ff.net.2\", \"P_bg597\", \"P_bg598\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.1.norm1\", \"P_bg599\"),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.1.norm2\", \"P_bg599\"),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.1.norm3\", \"P_bg599\"),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.2.attn1.to_k\", \"P_bg600\", \"P_bg601\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.2.attn1.to_out.0\", \"P_bg600\", \"P_bg601\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.2.attn1.to_q\", \"P_bg600\", \"P_bg601\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.2.attn1.to_v\", \"P_bg600\", \"P_bg601\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.2.attn2.to_k\", \"P_bg602\", \"P_bg603\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.2.attn2.to_out.0\", \"P_bg604\", \"P_bg605\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.2.attn2.to_q\", \"P_bg606\", \"P_bg607\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.2.attn2.to_v\", \"P_bg608\", \"P_bg609\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.2.ff.net.0.proj\", \"P_bg610\", \"P_bg611\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.2.ff.net.2\", \"P_bg612\", \"P_bg613\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.2.norm1\", \"P_bg614\"),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.2.norm2\", \"P_bg614\"),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.2.norm3\", \"P_bg614\"),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.3.attn1.to_k\", \"P_bg615\", \"P_bg616\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.3.attn1.to_out.0\", \"P_bg615\", \"P_bg616\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.3.attn1.to_q\", \"P_bg615\", \"P_bg616\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.3.attn1.to_v\", \"P_bg615\", \"P_bg616\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.3.attn2.to_k\", \"P_bg617\", \"P_bg618\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.3.attn2.to_out.0\", \"P_bg619\", \"P_bg620\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.3.attn2.to_q\", \"P_bg621\", \"P_bg622\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.3.attn2.to_v\", \"P_bg623\", \"P_bg624\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.3.ff.net.0.proj\", \"P_bg625\", \"P_bg626\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.3.ff.net.2\", \"P_bg627\", \"P_bg628\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.3.norm1\", \"P_bg629\"),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.3.norm2\", \"P_bg629\"),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.3.norm3\", \"P_bg629\"),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.4.attn1.to_k\", \"P_bg630\", \"P_bg631\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.4.attn1.to_out.0\", \"P_bg630\", \"P_bg631\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.4.attn1.to_q\", \"P_bg630\", \"P_bg631\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.4.attn1.to_v\", \"P_bg630\", \"P_bg631\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.4.attn2.to_k\", \"P_bg632\", \"P_bg633\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.4.attn2.to_out.0\", \"P_bg634\", \"P_bg635\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.4.attn2.to_q\", \"P_bg636\", \"P_bg637\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.4.attn2.to_v\", \"P_bg638\", \"P_bg639\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.4.ff.net.0.proj\", \"P_bg640\", \"P_bg641\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.4.ff.net.2\", \"P_bg642\", \"P_bg643\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.4.norm1\", \"P_bg644\"),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.4.norm2\", \"P_bg644\"),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.4.norm3\", \"P_bg644\"),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.5.attn1.to_k\", \"P_bg645\", \"P_bg646\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.5.attn1.to_out.0\", \"P_bg645\", \"P_bg646\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.5.attn1.to_q\", \"P_bg645\", \"P_bg646\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.5.attn1.to_v\", \"P_bg645\", \"P_bg646\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.5.attn2.to_k\", \"P_bg647\", \"P_bg648\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.5.attn2.to_out.0\", \"P_bg649\", \"P_bg650\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.5.attn2.to_q\", \"P_bg651\", \"P_bg652\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.5.attn2.to_v\", \"P_bg653\", \"P_bg654\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.5.ff.net.0.proj\", \"P_bg655\", \"P_bg656\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.5.ff.net.2\", \"P_bg657\", \"P_bg658\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.5.norm1\", \"P_bg659\"),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.5.norm2\", \"P_bg659\"),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.5.norm3\", \"P_bg659\"),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.6.attn1.to_k\", \"P_bg660\", \"P_bg661\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.6.attn1.to_out.0\", \"P_bg660\", \"P_bg661\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.6.attn1.to_q\", \"P_bg660\", \"P_bg661\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.6.attn1.to_v\", \"P_bg660\", \"P_bg661\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.6.attn2.to_k\", \"P_bg662\", \"P_bg663\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.6.attn2.to_out.0\", \"P_bg664\", \"P_bg665\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.6.attn2.to_q\", \"P_bg666\", \"P_bg667\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.6.attn2.to_v\", \"P_bg668\", \"P_bg669\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.6.ff.net.0.proj\", \"P_bg670\", \"P_bg671\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.6.ff.net.2\", \"P_bg672\", \"P_bg673\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.6.norm1\", \"P_bg674\"),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.6.norm2\", \"P_bg674\"),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.6.norm3\", \"P_bg674\"),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.7.attn1.to_k\", \"P_bg675\", \"P_bg676\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.7.attn1.to_out.0\", \"P_bg675\", \"P_bg676\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.7.attn1.to_q\", \"P_bg675\", \"P_bg676\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.7.attn1.to_v\", \"P_bg675\", \"P_bg676\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.7.attn2.to_k\", \"P_bg677\", \"P_bg678\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.7.attn2.to_out.0\", \"P_bg679\", \"P_bg680\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.7.attn2.to_q\", \"P_bg681\", \"P_bg682\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.7.attn2.to_v\", \"P_bg683\", \"P_bg684\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.7.ff.net.0.proj\", \"P_bg685\", \"P_bg686\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.7.ff.net.2\", \"P_bg687\", \"P_bg688\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.7.norm1\", \"P_bg689\"),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.7.norm2\", \"P_bg689\"),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.7.norm3\", \"P_bg689\"),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.8.attn1.to_k\", \"P_bg690\", \"P_bg691\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.8.attn1.to_out.0\", \"P_bg690\", \"P_bg691\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.8.attn1.to_q\", \"P_bg690\", \"P_bg691\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.8.attn1.to_v\", \"P_bg690\", \"P_bg691\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.8.attn2.to_k\", \"P_bg692\", \"P_bg693\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.8.attn2.to_out.0\", \"P_bg694\", \"P_bg695\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.8.attn2.to_q\", \"P_bg696\", \"P_bg697\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.8.attn2.to_v\", \"P_bg698\", \"P_bg699\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.8.ff.net.0.proj\", \"P_bg700\", \"P_bg701\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.8.ff.net.2\", \"P_bg702\", \"P_bg703\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.8.norm1\", \"P_bg704\"),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.8.norm2\", \"P_bg704\"),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.8.norm3\", \"P_bg704\"),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.9.attn1.to_k\", \"P_bg705\", \"P_bg706\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.9.attn1.to_out.0\", \"P_bg705\", \"P_bg706\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.9.attn1.to_q\", \"P_bg705\", \"P_bg706\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.9.attn1.to_v\", \"P_bg705\", \"P_bg706\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.9.attn2.to_k\", \"P_bg707\", \"P_bg708\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.9.attn2.to_out.0\", \"P_bg709\", \"P_bg710\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.9.attn2.to_q\", \"P_bg711\", \"P_bg712\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.9.attn2.to_v\", \"P_bg713\", \"P_bg714\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.9.ff.net.0.proj\", \"P_bg715\", \"P_bg716\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.9.ff.net.2\", \"P_bg717\", \"P_bg718\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.9.norm1\", \"P_bg719\"),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.9.norm2\", \"P_bg719\"),\n            **norm(\"model.diffusion_model.output_blocks.0.1.transformer_blocks.9.norm3\", \"P_bg719\"),\n            **easyblock(\"model.diffusion_model.output_blocks.1.0\", \"P_bg720\", \"P_bg721\"),\n            **conv(\"model.diffusion_model.output_blocks.1.0.skip_connection\", \"P_bg722\", \"P_bg723\"),\n            **norm(\"model.diffusion_model.output_blocks.1.1.norm\", \"P_bg724\"),\n            **conv(\"model.diffusion_model.output_blocks.1.1.proj_in\", \"P_bg724\", \"P_bg725\"),\n            **conv(\"model.diffusion_model.output_blocks.1.1.proj_out\", \"P_bg726\", \"P_bg727\"),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.0.attn1.to_k\", \"P_bg728\", \"P_bg729\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.0.attn1.to_out.0\", \"P_bg728\", \"P_bg729\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.0.attn1.to_q\", \"P_bg728\", \"P_bg729\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.0.attn1.to_v\", \"P_bg728\", \"P_bg729\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.0.attn2.to_k\", \"P_bg730\", \"P_bg731\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.0.attn2.to_out.0\", \"P_bg732\", \"P_bg733\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.0.attn2.to_q\", \"P_bg734\", \"P_bg735\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.0.attn2.to_v\", \"P_bg736\", \"P_bg737\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.0.ff.net.0.proj\", \"P_bg738\", \"P_bg739\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.0.ff.net.2\", \"P_bg740\", \"P_bg741\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.0.norm1\", \"P_bg742\"),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.0.norm2\", \"P_bg742\"),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.0.norm3\", \"P_bg742\"),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.1.attn1.to_k\", \"P_bg743\", \"P_bg744\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.1.attn1.to_out.0\", \"P_bg743\", \"P_bg744\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.1.attn1.to_q\", \"P_bg743\", \"P_bg744\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.1.attn1.to_v\", \"P_bg743\", \"P_bg744\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.1.attn2.to_k\", \"P_bg745\", \"P_bg746\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.1.attn2.to_out.0\", \"P_bg747\", \"P_bg748\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.1.attn2.to_q\", \"P_bg749\", \"P_bg750\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.1.attn2.to_v\", \"P_bg751\", \"P_bg752\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.1.ff.net.0.proj\", \"P_bg753\", \"P_bg754\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.1.ff.net.2\", \"P_bg755\", \"P_bg756\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.1.norm1\", \"P_bg757\"),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.1.norm2\", \"P_bg757\"),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.1.norm3\", \"P_bg757\"),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.2.attn1.to_k\", \"P_bg758\", \"P_bg759\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.2.attn1.to_out.0\", \"P_bg758\", \"P_bg759\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.2.attn1.to_q\", \"P_bg758\", \"P_bg759\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.2.attn1.to_v\", \"P_bg758\", \"P_bg759\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.2.attn2.to_k\", \"P_bg760\", \"P_bg761\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.2.attn2.to_out.0\", \"P_bg762\", \"P_bg763\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.2.attn2.to_q\", \"P_bg764\", \"P_bg765\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.2.attn2.to_v\", \"P_bg766\", \"P_bg767\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.2.ff.net.0.proj\", \"P_bg768\", \"P_bg769\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.2.ff.net.2\", \"P_bg770\", \"P_bg771\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.2.norm1\", \"P_bg772\"),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.2.norm2\", \"P_bg772\"),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.2.norm3\", \"P_bg772\"),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.3.attn1.to_k\", \"P_bg773\", \"P_bg774\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.3.attn1.to_out.0\", \"P_bg773\", \"P_bg774\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.3.attn1.to_q\", \"P_bg773\", \"P_bg774\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.3.attn1.to_v\", \"P_bg773\", \"P_bg774\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.3.attn2.to_k\", \"P_bg775\", \"P_bg776\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.3.attn2.to_out.0\", \"P_bg777\", \"P_bg778\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.3.attn2.to_q\", \"P_bg779\", \"P_bg780\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.3.attn2.to_v\", \"P_bg781\", \"P_bg782\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.3.ff.net.0.proj\", \"P_bg783\", \"P_bg784\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.3.ff.net.2\", \"P_bg785\", \"P_bg786\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.3.norm1\", \"P_bg787\"),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.3.norm2\", \"P_bg787\"),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.3.norm3\", \"P_bg787\"),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.4.attn1.to_k\", \"P_bg788\", \"P_bg789\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.4.attn1.to_out.0\", \"P_bg788\", \"P_bg789\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.4.attn1.to_q\", \"P_bg788\", \"P_bg789\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.4.attn1.to_v\", \"P_bg788\", \"P_bg789\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.4.attn2.to_k\", \"P_bg790\", \"P_bg791\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.4.attn2.to_out.0\", \"P_bg792\", \"P_bg793\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.4.attn2.to_q\", \"P_bg794\", \"P_bg795\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.4.attn2.to_v\", \"P_bg796\", \"P_bg797\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.4.ff.net.0.proj\", \"P_bg798\", \"P_bg799\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.4.ff.net.2\", \"P_bg800\", \"P_bg801\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.4.norm1\", \"P_bg802\"),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.4.norm2\", \"P_bg802\"),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.4.norm3\", \"P_bg802\"),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.5.attn1.to_k\", \"P_bg803\", \"P_bg804\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.5.attn1.to_out.0\", \"P_bg803\", \"P_bg804\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.5.attn1.to_q\", \"P_bg803\", \"P_bg804\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.5.attn1.to_v\", \"P_bg803\", \"P_bg804\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.5.attn2.to_k\", \"P_bg805\", \"P_bg806\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.5.attn2.to_out.0\", \"P_bg807\", \"P_bg808\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.5.attn2.to_q\", \"P_bg809\", \"P_bg810\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.5.attn2.to_v\", \"P_bg811\", \"P_bg812\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.5.ff.net.0.proj\", \"P_bg813\", \"P_bg814\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.5.ff.net.2\", \"P_bg815\", \"P_bg816\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.5.norm1\", \"P_bg817\"),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.5.norm2\", \"P_bg817\"),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.5.norm3\", \"P_bg817\"),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.6.attn1.to_k\", \"P_bg818\", \"P_bg819\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.6.attn1.to_out.0\", \"P_bg818\", \"P_bg819\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.6.attn1.to_q\", \"P_bg818\", \"P_bg819\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.6.attn1.to_v\", \"P_bg818\", \"P_bg819\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.6.attn2.to_k\", \"P_bg820\", \"P_bg821\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.6.attn2.to_out.0\", \"P_bg822\", \"P_bg823\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.6.attn2.to_q\", \"P_bg824\", \"P_bg825\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.6.attn2.to_v\", \"P_bg826\", \"P_bg827\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.6.ff.net.0.proj\", \"P_bg828\", \"P_bg829\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.6.ff.net.2\", \"P_bg830\", \"P_bg831\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.6.norm1\", \"P_bg832\"),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.6.norm2\", \"P_bg832\"),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.6.norm3\", \"P_bg832\"),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.7.attn1.to_k\", \"P_bg833\", \"P_bg834\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.7.attn1.to_out.0\", \"P_bg833\", \"P_bg834\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.7.attn1.to_q\", \"P_bg833\", \"P_bg834\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.7.attn1.to_v\", \"P_bg833\", \"P_bg834\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.7.attn2.to_k\", \"P_bg835\", \"P_bg836\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.7.attn2.to_out.0\", \"P_bg837\", \"P_bg838\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.7.attn2.to_q\", \"P_bg839\", \"P_bg840\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.7.attn2.to_v\", \"P_bg841\", \"P_bg842\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.7.ff.net.0.proj\", \"P_bg843\", \"P_bg844\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.7.ff.net.2\", \"P_bg845\", \"P_bg846\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.7.norm1\", \"P_bg847\"),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.7.norm2\", \"P_bg847\"),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.7.norm3\", \"P_bg847\"),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.8.attn1.to_k\", \"P_bg848\", \"P_bg849\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.8.attn1.to_out.0\", \"P_bg848\", \"P_bg849\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.8.attn1.to_q\", \"P_bg848\", \"P_bg849\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.8.attn1.to_v\", \"P_bg848\", \"P_bg849\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.8.attn2.to_k\", \"P_bg850\", \"P_bg851\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.8.attn2.to_out.0\", \"P_bg852\", \"P_bg853\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.8.attn2.to_q\", \"P_bg854\", \"P_bg855\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.8.attn2.to_v\", \"P_bg856\", \"P_bg857\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.8.ff.net.0.proj\", \"P_bg858\", \"P_bg859\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.8.ff.net.2\", \"P_bg860\", \"P_bg861\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.8.norm1\", \"P_bg862\"),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.8.norm2\", \"P_bg862\"),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.8.norm3\", \"P_bg862\"),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.9.attn1.to_k\", \"P_bg863\", \"P_bg864\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.9.attn1.to_out.0\", \"P_bg863\", \"P_bg864\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.9.attn1.to_q\", \"P_bg863\", \"P_bg864\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.9.attn1.to_v\", \"P_bg863\", \"P_bg864\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.9.attn2.to_k\", \"P_bg865\", \"P_bg866\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.9.attn2.to_out.0\", \"P_bg867\", \"P_bg868\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.9.attn2.to_q\", \"P_bg869\", \"P_bg870\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.9.attn2.to_v\", \"P_bg871\", \"P_bg872\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.9.ff.net.0.proj\", \"P_bg873\", \"P_bg874\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.9.ff.net.2\", \"P_bg875\", \"P_bg876\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.9.norm1\", \"P_bg877\"),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.9.norm2\", \"P_bg877\"),\n            **norm(\"model.diffusion_model.output_blocks.1.1.transformer_blocks.9.norm3\", \"P_bg877\"),\n            **easyblock(\"model.diffusion_model.output_blocks.2.0\", \"P_bg878\", \"P_bg879\"),\n            **conv(\"model.diffusion_model.output_blocks.2.0.skip_connection\", \"P_bg880\", \"P_bg881\"),\n            **norm(\"model.diffusion_model.output_blocks.2.1.norm\", \"P_bg882\"),\n            **conv(\"model.diffusion_model.output_blocks.2.1.proj_in\", \"P_bg882\", \"P_bg883\"),\n            **conv(\"model.diffusion_model.output_blocks.2.1.proj_out\", \"P_bg884\", \"P_bg885\"),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.0.attn1.to_k\", \"P_bg886\", \"P_bg887\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.0.attn1.to_out.0\", \"P_bg886\", \"P_bg887\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.0.attn1.to_q\", \"P_bg886\", \"P_bg887\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.0.attn1.to_v\", \"P_bg886\", \"P_bg887\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.0.attn2.to_k\", \"P_bg888\", \"P_bg889\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.0.attn2.to_out.0\", \"P_bg890\", \"P_bg891\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.0.attn2.to_q\", \"P_bg892\", \"P_bg893\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.0.attn2.to_v\", \"P_bg894\", \"P_bg895\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.0.ff.net.0.proj\", \"P_bg896\", \"P_bg897\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.0.ff.net.2\", \"P_bg898\", \"P_bg899\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.0.norm1\", \"P_bg900\"),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.0.norm2\", \"P_bg900\"),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.0.norm3\", \"P_bg900\"),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.1.attn1.to_k\", \"P_bg901\", \"P_bg902\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.1.attn1.to_out.0\", \"P_bg901\", \"P_bg902\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.1.attn1.to_q\", \"P_bg901\", \"P_bg902\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.1.attn1.to_v\", \"P_bg901\", \"P_bg902\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.1.attn2.to_k\", \"P_bg903\", \"P_bg904\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.1.attn2.to_out.0\", \"P_bg905\", \"P_bg906\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.1.attn2.to_q\", \"P_bg907\", \"P_bg908\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.1.attn2.to_v\", \"P_bg909\", \"P_bg910\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.1.ff.net.0.proj\", \"P_bg911\", \"P_bg912\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.1.ff.net.2\", \"P_bg913\", \"P_bg914\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.1.norm1\", \"P_bg915\"),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.1.norm2\", \"P_bg915\"),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.1.norm3\", \"P_bg915\"),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.2.attn1.to_k\", \"P_bg916\", \"P_bg917\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.2.attn1.to_out.0\", \"P_bg916\", \"P_bg917\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.2.attn1.to_q\", \"P_bg916\", \"P_bg917\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.2.attn1.to_v\", \"P_bg916\", \"P_bg917\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.2.attn2.to_k\", \"P_bg918\", \"P_bg919\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.2.attn2.to_out.0\", \"P_bg920\", \"P_bg921\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.2.attn2.to_q\", \"P_bg922\", \"P_bg923\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.2.attn2.to_v\", \"P_bg924\", \"P_bg925\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.2.ff.net.0.proj\", \"P_bg926\", \"P_bg927\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.2.ff.net.2\", \"P_bg928\", \"P_bg929\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.2.norm1\", \"P_bg930\"),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.2.norm2\", \"P_bg930\"),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.2.norm3\", \"P_bg930\"),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.3.attn1.to_k\", \"P_bg931\", \"P_bg932\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.3.attn1.to_out.0\", \"P_bg931\", \"P_bg932\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.3.attn1.to_q\", \"P_bg931\", \"P_bg932\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.3.attn1.to_v\", \"P_bg931\", \"P_bg932\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.3.attn2.to_k\", \"P_bg933\", \"P_bg934\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.3.attn2.to_out.0\", \"P_bg935\", \"P_bg936\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.3.attn2.to_q\", \"P_bg937\", \"P_bg938\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.3.attn2.to_v\", \"P_bg939\", \"P_bg940\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.3.ff.net.0.proj\", \"P_bg941\", \"P_bg942\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.3.ff.net.2\", \"P_bg943\", \"P_bg944\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.3.norm1\", \"P_bg945\"),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.3.norm2\", \"P_bg945\"),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.3.norm3\", \"P_bg945\"),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.4.attn1.to_k\", \"P_bg946\", \"P_bg947\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.4.attn1.to_out.0\", \"P_bg946\", \"P_bg947\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.4.attn1.to_q\", \"P_bg946\", \"P_bg947\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.4.attn1.to_v\", \"P_bg946\", \"P_bg947\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.4.attn2.to_k\", \"P_bg948\", \"P_bg949\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.4.attn2.to_out.0\", \"P_bg950\", \"P_bg951\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.4.attn2.to_q\", \"P_bg952\", \"P_bg953\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.4.attn2.to_v\", \"P_bg954\", \"P_bg955\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.4.ff.net.0.proj\", \"P_bg956\", \"P_bg957\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.4.ff.net.2\", \"P_bg958\", \"P_bg959\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.4.norm1\", \"P_bg960\"),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.4.norm2\", \"P_bg960\"),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.4.norm3\", \"P_bg960\"),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.5.attn1.to_k\", \"P_bg961\", \"P_bg962\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.5.attn1.to_out.0\", \"P_bg961\", \"P_bg962\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.5.attn1.to_q\", \"P_bg961\", \"P_bg962\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.5.attn1.to_v\", \"P_bg961\", \"P_bg962\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.5.attn2.to_k\", \"P_bg963\", \"P_bg964\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.5.attn2.to_out.0\", \"P_bg965\", \"P_bg966\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.5.attn2.to_q\", \"P_bg967\", \"P_bg968\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.5.attn2.to_v\", \"P_bg969\", \"P_bg970\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.5.ff.net.0.proj\", \"P_bg971\", \"P_bg972\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.5.ff.net.2\", \"P_bg973\", \"P_bg974\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.5.norm1\", \"P_bg975\"),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.5.norm2\", \"P_bg975\"),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.5.norm3\", \"P_bg975\"),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.6.attn1.to_k\", \"P_bg976\", \"P_bg977\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.6.attn1.to_out.0\", \"P_bg976\", \"P_bg977\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.6.attn1.to_q\", \"P_bg976\", \"P_bg977\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.6.attn1.to_v\", \"P_bg976\", \"P_bg977\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.6.attn2.to_k\", \"P_bg978\", \"P_bg979\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.6.attn2.to_out.0\", \"P_bg980\", \"P_bg981\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.6.attn2.to_q\", \"P_bg982\", \"P_bg983\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.6.attn2.to_v\", \"P_bg984\", \"P_bg985\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.6.ff.net.0.proj\", \"P_bg986\", \"P_bg987\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.6.ff.net.2\", \"P_bg988\", \"P_bg989\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.6.norm1\", \"P_bg990\"),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.6.norm2\", \"P_bg990\"),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.6.norm3\", \"P_bg990\"),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.7.attn1.to_k\", \"P_bg991\", \"P_bg992\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.7.attn1.to_out.0\", \"P_bg991\", \"P_bg992\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.7.attn1.to_q\", \"P_bg991\", \"P_bg992\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.7.attn1.to_v\", \"P_bg991\", \"P_bg992\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.7.attn2.to_k\", \"P_bg993\", \"P_bg994\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.7.attn2.to_out.0\", \"P_bg995\", \"P_bg996\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.7.attn2.to_q\", \"P_bg997\", \"P_bg998\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.7.attn2.to_v\", \"P_bg999\", \"P_bg1000\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.7.ff.net.0.proj\", \"P_bg1001\", \"P_bg1002\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.7.ff.net.2\", \"P_bg1003\", \"P_bg1004\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.7.norm1\", \"P_bg1005\"),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.7.norm2\", \"P_bg1005\"),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.7.norm3\", \"P_bg1005\"),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.8.attn1.to_k\", \"P_bg1006\", \"P_bg1007\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.8.attn1.to_out.0\", \"P_bg1006\", \"P_bg1007\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.8.attn1.to_q\", \"P_bg1006\", \"P_bg1007\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.8.attn1.to_v\", \"P_bg1006\", \"P_bg1007\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.8.attn2.to_k\", \"P_bg1008\", \"P_bg1009\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.8.attn2.to_out.0\", \"P_bg1010\", \"P_bg1011\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.8.attn2.to_q\", \"P_bg1012\", \"P_bg1013\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.8.attn2.to_v\", \"P_bg1014\", \"P_bg1015\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.8.ff.net.0.proj\", \"P_bg1016\", \"P_bg1017\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.8.ff.net.2\", \"P_bg1018\", \"P_bg1019\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.8.norm1\", \"P_bg1020\"),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.8.norm2\", \"P_bg1020\"),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.8.norm3\", \"P_bg1020\"),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.9.attn1.to_k\", \"P_bg1021\", \"P_bg1022\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.9.attn1.to_out.0\", \"P_bg1021\", \"P_bg1022\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.9.attn1.to_q\", \"P_bg1021\", \"P_bg1022\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.9.attn1.to_v\", \"P_bg1021\", \"P_bg1022\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.9.attn2.to_k\", \"P_bg1023\", \"P_bg1024\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.9.attn2.to_out.0\", \"P_bg1025\", \"P_bg1026\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.9.attn2.to_q\", \"P_bg1027\", \"P_bg1028\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.9.attn2.to_v\", \"P_bg1029\", \"P_bg1030\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.9.ff.net.0.proj\", \"P_bg1031\", \"P_bg1032\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.9.ff.net.2\", \"P_bg1033\", \"P_bg1034\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.9.norm1\", \"P_bg1035\"),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.9.norm2\", \"P_bg1035\"),\n            **norm(\"model.diffusion_model.output_blocks.2.1.transformer_blocks.9.norm3\", \"P_bg1035\"),\n            **conv(\"model.diffusion_model.output_blocks.2.2.conv\", \"P_bg1036\", \"P_bg1037\"),\n            **easyblock(\"model.diffusion_model.output_blocks.3.0\", \"P_bg1038\", \"P_bg1039\"),\n            **conv(\"model.diffusion_model.output_blocks.3.0.skip_connection\", \"P_bg1040\", \"P_bg1041\"),\n            **norm(\"model.diffusion_model.output_blocks.3.1.norm\", \"P_bg1042\"),\n            **conv(\"model.diffusion_model.output_blocks.3.1.proj_in\", \"P_bg1042\", \"P_bg1043\"),\n            **conv(\"model.diffusion_model.output_blocks.3.1.proj_out\", \"P_bg1044\", \"P_bg1045\"),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.0.attn1.to_k\", \"P_bg1046\", \"P_bg1047\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.0.attn1.to_out.0\", \"P_bg1046\", \"P_bg1047\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.0.attn1.to_q\", \"P_bg1046\", \"P_bg1047\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.0.attn1.to_v\", \"P_bg1046\", \"P_bg1047\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.0.attn2.to_k\", \"P_bg1048\", \"P_bg1049\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.0.attn2.to_out.0\", \"P_bg1050\", \"P_bg1051\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.0.attn2.to_q\", \"P_bg1052\", \"P_bg1053\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.0.attn2.to_v\", \"P_bg1054\", \"P_bg1055\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.0.ff.net.0.proj\", \"P_bg1056\", \"P_bg1057\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.0.ff.net.2\", \"P_bg1058\", \"P_bg1059\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.0.norm1\", \"P_bg1060\"),\n            **norm(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.0.norm2\", \"P_bg1060\"),\n            **norm(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.0.norm3\", \"P_bg1060\"),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.1.attn1.to_k\", \"P_bg1061\", \"P_bg1062\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.1.attn1.to_out.0\", \"P_bg1061\", \"P_bg1062\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.1.attn1.to_q\", \"P_bg1061\", \"P_bg1062\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.1.attn1.to_v\", \"P_bg1061\", \"P_bg1062\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.1.attn2.to_k\", \"P_bg1063\", \"P_bg1064\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.1.attn2.to_out.0\", \"P_bg1065\", \"P_bg1066\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.1.attn2.to_q\", \"P_bg1067\", \"P_bg1068\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.1.attn2.to_v\", \"P_bg1069\", \"P_bg1070\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.1.ff.net.0.proj\", \"P_bg1071\", \"P_bg1072\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.1.ff.net.2\", \"P_bg1073\", \"P_bg1074\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.1.norm1\", \"P_bg1075\"),\n            **norm(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.1.norm2\", \"P_bg1075\"),\n            **norm(\"model.diffusion_model.output_blocks.3.1.transformer_blocks.1.norm3\", \"P_bg1075\"),\n            **easyblock(\"model.diffusion_model.output_blocks.4.0\", \"P_bg1076\", \"P_bg1077\"),\n            **conv(\"model.diffusion_model.output_blocks.4.0.skip_connection\", \"P_bg1078\", \"P_bg1079\"),\n            **norm(\"model.diffusion_model.output_blocks.4.1.norm\", \"P_bg1080\"),\n            **conv(\"model.diffusion_model.output_blocks.4.1.proj_in\", \"P_bg1080\", \"P_bg1081\"),\n            **conv(\"model.diffusion_model.output_blocks.4.1.proj_out\", \"P_bg1082\", \"P_bg1083\"),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.0.attn1.to_k\", \"P_bg1084\", \"P_bg1085\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.0.attn1.to_out.0\", \"P_bg1084\", \"P_bg1085\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.0.attn1.to_q\", \"P_bg1084\", \"P_bg1085\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.0.attn1.to_v\", \"P_bg1084\", \"P_bg1085\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.0.attn2.to_k\", \"P_bg1086\", \"P_bg1087\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.0.attn2.to_out.0\", \"P_bg1088\", \"P_bg1089\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.0.attn2.to_q\", \"P_bg1090\", \"P_bg1091\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.0.attn2.to_v\", \"P_bg1092\", \"P_bg1093\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.0.ff.net.0.proj\", \"P_bg1094\", \"P_bg1095\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.0.ff.net.2\", \"P_bg1096\", \"P_bg1097\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.0.norm1\", \"P_bg1098\"),\n            **norm(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.0.norm2\", \"P_bg1098\"),\n            **norm(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.0.norm3\", \"P_bg1098\"),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.1.attn1.to_k\", \"P_bg1099\", \"P_bg1100\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.1.attn1.to_out.0\", \"P_bg1099\", \"P_bg1100\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.1.attn1.to_q\", \"P_bg1099\", \"P_bg1100\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.1.attn1.to_v\", \"P_bg1099\", \"P_bg1100\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.1.attn2.to_k\", \"P_bg1101\", \"P_bg1102\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.1.attn2.to_out.0\", \"P_bg1103\", \"P_bg1104\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.1.attn2.to_q\", \"P_bg1105\", \"P_bg1106\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.1.attn2.to_v\", \"P_bg1107\", \"P_bg1108\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.1.ff.net.0.proj\", \"P_bg1109\", \"P_bg1110\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.1.ff.net.2\", \"P_bg1111\", \"P_bg1112\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.1.norm1\", \"P_bg1113\"),\n            **norm(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.1.norm2\", \"P_bg1113\"),\n            **norm(\"model.diffusion_model.output_blocks.4.1.transformer_blocks.1.norm3\", \"P_bg1113\"),\n            **easyblock(\"model.diffusion_model.output_blocks.5.0\", \"P_bg1114\", \"P_bg1115\"),\n            **conv(\"model.diffusion_model.output_blocks.5.0.skip_connection\", \"P_bg1116\", \"P_bg1117\"),\n            **norm(\"model.diffusion_model.output_blocks.5.1.norm\", \"P_bg1118\"),\n            **conv(\"model.diffusion_model.output_blocks.5.1.proj_in\", \"P_bg1118\", \"P_bg1119\"),\n            **conv(\"model.diffusion_model.output_blocks.5.1.proj_out\", \"P_bg1120\", \"P_bg1121\"),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.0.attn1.to_k\", \"P_bg1122\", \"P_bg1123\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.0.attn1.to_out.0\", \"P_bg1122\", \"P_bg1123\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.0.attn1.to_q\", \"P_bg1122\", \"P_bg1123\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.0.attn1.to_v\", \"P_bg1122\", \"P_bg1123\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.0.attn2.to_k\", \"P_bg1124\", \"P_bg1125\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.0.attn2.to_out.0\", \"P_bg1126\", \"P_bg1127\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.0.attn2.to_q\", \"P_bg1128\", \"P_bg1129\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.0.attn2.to_v\", \"P_bg1130\", \"P_bg1131\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.0.ff.net.0.proj\", \"P_bg1132\", \"P_bg1133\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.0.ff.net.2\", \"P_bg1134\", \"P_bg1135\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.0.norm1\", \"P_bg1136\"),\n            **norm(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.0.norm2\", \"P_bg1136\"),\n            **norm(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.0.norm3\", \"P_bg1136\"),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.1.attn1.to_k\", \"P_bg1137\", \"P_bg1138\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.1.attn1.to_out.0\", \"P_bg1137\", \"P_bg1138\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.1.attn1.to_q\", \"P_bg1137\", \"P_bg1138\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.1.attn1.to_v\", \"P_bg1137\", \"P_bg1138\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.1.attn2.to_k\", \"P_bg1139\", \"P_bg1140\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.1.attn2.to_out.0\", \"P_bg1141\", \"P_bg1142\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.1.attn2.to_q\", \"P_bg1143\", \"P_bg1144\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.1.attn2.to_v\", \"P_bg1145\", \"P_bg1146\", bias=False),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.1.ff.net.0.proj\", \"P_bg1147\", \"P_bg1148\", bias=True),\n            **dense(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.1.ff.net.2\", \"P_bg1149\", \"P_bg1150\", bias=True),\n            **norm(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.1.norm1\", \"P_bg1151\"),\n            **norm(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.1.norm2\", \"P_bg1151\"),\n            **norm(\"model.diffusion_model.output_blocks.5.1.transformer_blocks.1.norm3\", \"P_bg1151\"),\n            **conv(\"model.diffusion_model.output_blocks.5.2.conv\", \"P_bg1152\", \"P_bg1153\"),\n            **easyblock(\"model.diffusion_model.output_blocks.6.0\", \"P_bg1154\", \"P_bg1155\"),\n            **conv(\"model.diffusion_model.output_blocks.6.0.skip_connection\", \"P_bg1156\", \"P_bg1157\"),\n            **easyblock(\"model.diffusion_model.output_blocks.7.0\", \"P_bg1158\", \"P_bg1159\"),\n            **conv(\"model.diffusion_model.output_blocks.7.0.skip_connection\", \"P_bg1160\", \"P_bg1161\"),\n            **easyblock(\"model.diffusion_model.output_blocks.8.0\", \"P_bg1162\", \"P_bg1163\"),\n            **conv(\"model.diffusion_model.output_blocks.8.0.skip_connection\", \"P_bg1164\", \"P_bg1165\"),\n            **dense(\"model.diffusion_model.time_embed.0\", \"P_bg1166\", \"P_bg1167\", bias=True),\n            **dense(\"model.diffusion_model.time_embed.2\", \"P_bg1168\", \"P_bg1169\", bias=True),\n            # Text Encoder 1\n            **dense(\"conditioner.embedders.0.transformer.text_model.embeddings.position_embedding\", \"P_bg1170\", \"P_bg1171\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.embeddings.token_embedding\", \"P_bg1172\", \"P_bg1173\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.0.mlp.fc1\", \"P_bg1176\", \"P_bg1177\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.0.mlp.fc2\", \"P_bg1178\", \"P_bg1179\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.0.self_attn.k_proj\", \"P_bg1180\", \"P_bg1181\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.0.self_attn.out_proj\", \"P_bg1180\", \"P_bg1181\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.0.self_attn.q_proj\", \"P_bg1180\", \"P_bg1181\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.0.self_attn.v_proj\", \"P_bg1180\", \"P_bg1181\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.1.mlp.fc1\", \"P_bg1184\", \"P_bg1185\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.1.mlp.fc2\", \"P_bg1186\", \"P_bg1187\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.1.self_attn.k_proj\", \"P_bg1188\", \"P_bg1189\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.1.self_attn.out_proj\", \"P_bg1188\", \"P_bg1189\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.1.self_attn.q_proj\", \"P_bg1188\", \"P_bg1189\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.1.self_attn.v_proj\", \"P_bg1188\", \"P_bg1189\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.10.mlp.fc1\", \"P_bg1192\", \"P_bg1193\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.10.mlp.fc2\", \"P_bg1194\", \"P_bg1195\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.10.self_attn.k_proj\", \"P_bg1196\", \"P_bg1197\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.10.self_attn.out_proj\", \"P_bg1196\", \"P_bg1197\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.10.self_attn.q_proj\", \"P_bg1196\", \"P_bg1197\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.10.self_attn.v_proj\", \"P_bg1196\", \"P_bg1197\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.11.mlp.fc1\", \"P_bg1200\", \"P_bg1201\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.11.mlp.fc2\", \"P_bg1202\", \"P_bg1203\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.11.self_attn.k_proj\", \"P_bg1204\", \"P_bg1205\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.11.self_attn.out_proj\", \"P_bg1204\", \"P_bg1205\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.11.self_attn.q_proj\", \"P_bg1204\", \"P_bg1205\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.11.self_attn.v_proj\", \"P_bg1204\", \"P_bg1205\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.2.mlp.fc1\", \"P_bg1208\", \"P_bg1209\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.2.mlp.fc2\", \"P_bg1210\", \"P_bg1211\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.2.self_attn.k_proj\", \"P_bg1212\", \"P_bg1213\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.2.self_attn.out_proj\", \"P_bg1212\", \"P_bg1213\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.2.self_attn.q_proj\", \"P_bg1212\", \"P_bg1213\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.2.self_attn.v_proj\", \"P_bg1212\", \"P_bg1213\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.3.mlp.fc1\", \"P_bg1216\", \"P_bg1217\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.3.mlp.fc2\", \"P_bg1218\", \"P_bg1219\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.3.self_attn.k_proj\", \"P_bg1220\", \"P_bg1221\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.3.self_attn.out_proj\", \"P_bg1220\", \"P_bg1221\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.3.self_attn.q_proj\", \"P_bg1220\", \"P_bg1221\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.3.self_attn.v_proj\", \"P_bg1220\", \"P_bg1221\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.4.mlp.fc1\", \"P_bg1224\", \"P_bg1225\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.4.mlp.fc2\", \"P_bg1226\", \"P_bg1227\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.4.self_attn.k_proj\", \"P_bg1228\", \"P_bg1229\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.4.self_attn.out_proj\", \"P_bg1228\", \"P_bg1229\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.4.self_attn.q_proj\", \"P_bg1228\", \"P_bg1229\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.4.self_attn.v_proj\", \"P_bg1228\", \"P_bg1229\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.5.mlp.fc1\", \"P_bg1232\", \"P_bg1233\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.5.mlp.fc2\", \"P_bg1234\", \"P_bg1235\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.5.self_attn.k_proj\", \"P_bg1236\", \"P_bg1237\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.5.self_attn.out_proj\", \"P_bg1236\", \"P_bg1237\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.5.self_attn.q_proj\", \"P_bg1236\", \"P_bg1237\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.5.self_attn.v_proj\", \"P_bg1236\", \"P_bg1237\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.6.mlp.fc1\", \"P_bg1240\", \"P_bg1241\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.6.mlp.fc2\", \"P_bg1242\", \"P_bg1243\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.6.self_attn.k_proj\", \"P_bg1244\", \"P_bg1245\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.6.self_attn.out_proj\", \"P_bg1244\", \"P_bg1245\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.6.self_attn.q_proj\", \"P_bg1244\", \"P_bg1245\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.6.self_attn.v_proj\", \"P_bg1244\", \"P_bg1245\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.7.mlp.fc1\", \"P_bg1248\", \"P_bg1249\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.7.mlp.fc2\", \"P_bg1250\", \"P_bg1251\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.7.self_attn.k_proj\", \"P_bg1252\", \"P_bg1253\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.7.self_attn.out_proj\", \"P_bg1252\", \"P_bg1253\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.7.self_attn.q_proj\", \"P_bg1252\", \"P_bg1253\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.7.self_attn.v_proj\", \"P_bg1252\", \"P_bg1253\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.8.mlp.fc1\", \"P_bg1256\", \"P_bg1257\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.8.mlp.fc2\", \"P_bg1258\", \"P_bg1259\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.8.self_attn.k_proj\", \"P_bg1260\", \"P_bg1261\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.8.self_attn.out_proj\", \"P_bg1260\", \"P_bg1261\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.8.self_attn.q_proj\", \"P_bg1260\", \"P_bg1261\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.8.self_attn.v_proj\", \"P_bg1260\", \"P_bg1261\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.9.mlp.fc1\", \"P_bg1264\", \"P_bg1265\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.9.mlp.fc2\", \"P_bg1266\", \"P_bg1267\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.9.self_attn.k_proj\", \"P_bg1268\", \"P_bg1269\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.9.self_attn.out_proj\", \"P_bg1268\", \"P_bg1269\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.9.self_attn.q_proj\", \"P_bg1268\", \"P_bg1269\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.9.self_attn.v_proj\", \"P_bg1268\", \"P_bg1269\", bias=False),\n            # Text Encoder 2\n            **dense(\"conditioner.embedders.1.model.token_embedding\", \"P_bg1272\", \"P_bg1273\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.0.attn.in_proj_weight\", \"P_bg1274\", \"P_bg1275\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.0.attn.out_proj\", \"P_bg1274\", \"P_bg1275\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.0.mlp.c_fc\", \"P_bg1278\", \"P_bg1279\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.0.mlp.c_proj\", \"P_bg1280\", \"P_bg1281\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.1.attn.in_proj_weight\", \"P_bg1280\", \"P_bg1281\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.1.attn.out_proj\", \"P_bg1280\", \"P_bg1281\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.1.mlp.c_fc\", \"P_bg1284\", \"P_bg1285\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.1.mlp.c_proj\", \"P_bg1286\", \"P_bg1287\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.10.attn.in_proj_weight\", \"P_bg1286\", \"P_bg1287\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.10.attn.out_proj\", \"P_bg1286\", \"P_bg1287\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.10.mlp.c_fc\", \"P_bg1290\", \"P_bg1291\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.10.mlp.c_proj\", \"P_bg1292\", \"P_bg1293\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.11.attn.in_proj_weight\", \"P_bg1292\", \"P_bg1293\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.11.attn.out_proj\", \"P_bg1292\", \"P_bg1293\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.11.mlp.c_fc\", \"P_bg1296\", \"P_bg1297\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.11.mlp.c_proj\", \"P_bg1298\", \"P_bg1299\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.12.attn.in_proj_weight\", \"P_bg1298\", \"P_bg1299\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.12.attn.out_proj\", \"P_bg1298\", \"P_bg1299\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.12.mlp.c_fc\", \"P_bg1302\", \"P_bg1303\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.12.mlp.c_proj\", \"P_bg1304\", \"P_bg1305\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.13.attn.in_proj_weight\", \"P_bg1304\", \"P_bg1305\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.13.attn.out_proj\", \"P_bg1304\", \"P_bg1305\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.13.mlp.c_fc\", \"P_bg1308\", \"P_bg1309\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.13.mlp.c_proj\", \"P_bg1310\", \"P_bg1311\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.14.attn.in_proj_weight\", \"P_bg1310\", \"P_bg1311\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.14.attn.out_proj\", \"P_bg1310\", \"P_bg1311\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.14.mlp.c_fc\", \"P_bg1314\", \"P_bg1315\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.14.mlp.c_proj\", \"P_bg1316\", \"P_bg1317\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.15.attn.in_proj_weight\", \"P_bg1316\", \"P_bg1317\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.15.attn.out_proj\", \"P_bg1316\", \"P_bg1317\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.15.mlp.c_fc\", \"P_bg1320\", \"P_bg1321\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.15.mlp.c_proj\", \"P_bg1322\", \"P_bg1323\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.16.attn.in_proj_weight\", \"P_bg1322\", \"P_bg1323\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.16.attn.out_proj\", \"P_bg1322\", \"P_bg1323\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.16.mlp.c_fc\", \"P_bg1326\", \"P_bg1327\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.16.mlp.c_proj\", \"P_bg1328\", \"P_bg1329\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.17.attn.in_proj_weight\", \"P_bg1328\", \"P_bg1329\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.17.attn.out_proj\", \"P_bg1328\", \"P_bg1329\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.17.mlp.c_fc\", \"P_bg1332\", \"P_bg1333\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.17.mlp.c_proj\", \"P_bg1334\", \"P_bg1335\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.18.attn.in_proj_weight\", \"P_bg1334\", \"P_bg1335\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.18.attn.out_proj\", \"P_bg1334\", \"P_bg1335\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.18.mlp.c_fc\", \"P_bg1338\", \"P_bg1339\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.18.mlp.c_proj\", \"P_bg1340\", \"P_bg1341\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.19.attn.in_proj_weight\", \"P_bg1340\", \"P_bg1341\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.19.attn.out_proj\", \"P_bg1340\", \"P_bg1341\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.19.mlp.c_fc\", \"P_bg1344\", \"P_bg1345\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.19.mlp.c_proj\", \"P_bg1346\", \"P_bg1347\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.2.attn.in_proj_weight\", \"P_bg1346\", \"P_bg1347\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.2.attn.out_proj\", \"P_bg1346\", \"P_bg1347\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.2.mlp.c_fc\", \"P_bg1350\", \"P_bg1351\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.2.mlp.c_proj\", \"P_bg1352\", \"P_bg1353\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.20.attn.in_proj_weight\", \"P_bg1352\", \"P_bg1353\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.20.attn.out_proj\", \"P_bg1352\", \"P_bg1353\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.20.mlp.c_fc\", \"P_bg1356\", \"P_bg1357\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.20.mlp.c_proj\", \"P_bg1358\", \"P_bg1359\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.21.attn.in_proj_weight\", \"P_bg1358\", \"P_bg1359\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.21.attn.out_proj\", \"P_bg1358\", \"P_bg1359\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.21.mlp.c_fc\", \"P_bg1362\", \"P_bg1363\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.21.mlp.c_proj\", \"P_bg1364\", \"P_bg1365\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.22.attn.in_proj_weight\", \"P_bg1364\", \"P_bg1365\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.22.attn.out_proj\", \"P_bg1364\", \"P_bg1365\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.22.mlp.c_fc\", \"P_bg1368\", \"P_bg1369\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.22.mlp.c_proj\", \"P_bg1370\", \"P_bg1371\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.23.attn.in_proj_weight\", \"P_bg1370\", \"P_bg1371\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.23.attn.out_proj\", \"P_bg1370\", \"P_bg1371\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.23.mlp.c_fc\", \"P_bg1374\", \"P_bg1375\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.23.mlp.c_proj\", \"P_bg1376\", \"P_bg1377\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.24.attn.in_proj_weight\", \"P_bg1376\", \"P_bg1377\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.24.attn.out_proj\", \"P_bg1376\", \"P_bg1377\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.24.mlp.c_fc\", \"P_bg1380\", \"P_bg1381\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.24.mlp.c_proj\", \"P_bg1382\", \"P_bg1383\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.25.attn.in_proj_weight\", \"P_bg1382\", \"P_bg1383\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.25.attn.out_proj\", \"P_bg1382\", \"P_bg1383\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.25.mlp.c_fc\", \"P_bg1386\", \"P_bg1387\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.25.mlp.c_proj\", \"P_bg1388\", \"P_bg1389\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.26.attn.in_proj_weight\", \"P_bg1388\", \"P_bg1389\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.26.attn.out_proj\", \"P_bg1388\", \"P_bg1389\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.26.mlp.c_fc\", \"P_bg1392\", \"P_bg1393\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.26.mlp.c_proj\", \"P_bg1394\", \"P_bg1395\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.27.attn.in_proj_weight\", \"P_bg1394\", \"P_bg1395\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.27.attn.out_proj\", \"P_bg1394\", \"P_bg1395\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.27.mlp.c_fc\", \"P_bg1398\", \"P_bg1399\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.27.mlp.c_proj\", \"P_bg1400\", \"P_bg1401\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.28.attn.in_proj_weight\", \"P_bg1400\", \"P_bg1401\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.28.attn.out_proj\", \"P_bg1400\", \"P_bg1401\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.28.mlp.c_fc\", \"P_bg1404\", \"P_bg1405\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.28.mlp.c_proj\", \"P_bg1406\", \"P_bg1407\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.29.attn.in_proj_weight\", \"P_bg1406\", \"P_bg1407\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.29.attn.out_proj\", \"P_bg1406\", \"P_bg1407\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.29.mlp.c_fc\", \"P_bg1410\", \"P_bg1411\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.29.mlp.c_proj\", \"P_bg1412\", \"P_bg1413\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.3.attn.in_proj_weight\", \"P_bg1412\", \"P_bg1413\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.3.attn.out_proj\", \"P_bg1412\", \"P_bg1413\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.3.mlp.c_fc\", \"P_bg1416\", \"P_bg1417\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.3.mlp.c_proj\", \"P_bg1418\", \"P_bg1419\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.30.attn.in_proj_weight\", \"P_bg1418\", \"P_bg1419\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.30.attn.out_proj\", \"P_bg1418\", \"P_bg1419\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.30.mlp.c_fc\", \"P_bg1422\", \"P_bg1423\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.30.mlp.c_proj\", \"P_bg1424\", \"P_bg1425\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.31.attn.in_proj_weight\", \"P_bg1424\", \"P_bg1425\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.31.attn.out_proj\", \"P_bg1424\", \"P_bg1425\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.31.mlp.c_fc\", \"P_bg1428\", \"P_bg1429\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.31.mlp.c_proj\", \"P_bg1430\", \"P_bg1431\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.4.attn.in_proj_weight\", \"P_bg1430\", \"P_bg1431\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.4.attn.out_proj\", \"P_bg1430\", \"P_bg1431\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.4.mlp.c_fc\", \"P_bg1434\", \"P_bg1435\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.4.mlp.c_proj\", \"P_bg1436\", \"P_bg1437\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.5.attn.in_proj_weight\", \"P_bg1436\", \"P_bg1437\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.5.attn.out_proj\", \"P_bg1436\", \"P_bg1437\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.5.mlp.c_fc\", \"P_bg1440\", \"P_bg1441\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.5.mlp.c_proj\", \"P_bg1442\", \"P_bg1443\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.6.attn.in_proj_weight\", \"P_bg1442\", \"P_bg1443\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.6.attn.out_proj\", \"P_bg1442\", \"P_bg1443\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.6.mlp.c_fc\", \"P_bg1446\", \"P_bg1447\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.6.mlp.c_proj\", \"P_bg1448\", \"P_bg1449\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.7.attn.in_proj_weight\", \"P_bg1448\", \"P_bg1449\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.7.attn.out_proj\", \"P_bg1448\", \"P_bg1449\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.7.mlp.c_fc\", \"P_bg1452\", \"P_bg1453\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.7.mlp.c_proj\", \"P_bg1454\", \"P_bg1455\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.8.attn.in_proj_weight\", \"P_bg1454\", \"P_bg1455\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.8.attn.out_proj\", \"P_bg1454\", \"P_bg1455\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.8.mlp.c_fc\", \"P_bg1458\", \"P_bg1459\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.8.mlp.c_proj\", \"P_bg1460\", \"P_bg1461\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.9.attn.in_proj_weight\", \"P_bg1460\", \"P_bg1461\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.9.attn.out_proj\", \"P_bg1460\", \"P_bg1461\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.9.mlp.c_fc\", \"P_bg1464\", \"P_bg1465\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.9.mlp.c_proj\", \"P_bg1466\", \"P_bg1467\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.embeddings.position_embedding\", \"P_bg1170\", \"P_bg1171\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.embeddings.token_embedding\", \"P_bg1172\", \"P_bg1173\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.0.mlp.fc1\", \"P_bg1176\", \"P_bg1177\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.0.mlp.fc2\", \"P_bg1178\", \"P_bg1179\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.0.self_attn.k_proj\", \"P_bg1180\", \"P_bg1181\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.0.self_attn.out_proj\", \"P_bg1180\", \"P_bg1181\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.0.self_attn.q_proj\", \"P_bg1180\", \"P_bg1181\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.0.self_attn.v_proj\", \"P_bg1180\", \"P_bg1181\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.1.mlp.fc1\", \"P_bg1184\", \"P_bg1185\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.1.mlp.fc2\", \"P_bg1186\", \"P_bg1187\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.1.self_attn.k_proj\", \"P_bg1188\", \"P_bg1189\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.1.self_attn.out_proj\", \"P_bg1188\", \"P_bg1189\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.1.self_attn.q_proj\", \"P_bg1188\", \"P_bg1189\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.1.self_attn.v_proj\", \"P_bg1188\", \"P_bg1189\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.10.mlp.fc1\", \"P_bg1192\", \"P_bg1193\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.10.mlp.fc2\", \"P_bg1194\", \"P_bg1195\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.10.self_attn.k_proj\", \"P_bg1196\", \"P_bg1197\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.10.self_attn.out_proj\", \"P_bg1196\", \"P_bg1197\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.10.self_attn.q_proj\", \"P_bg1196\", \"P_bg1197\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.10.self_attn.v_proj\", \"P_bg1196\", \"P_bg1197\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.11.mlp.fc1\", \"P_bg1200\", \"P_bg1201\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.11.mlp.fc2\", \"P_bg1202\", \"P_bg1203\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.11.self_attn.k_proj\", \"P_bg1204\", \"P_bg1205\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.11.self_attn.out_proj\", \"P_bg1204\", \"P_bg1205\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.11.self_attn.q_proj\", \"P_bg1204\", \"P_bg1205\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.11.self_attn.v_proj\", \"P_bg1204\", \"P_bg1205\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.2.mlp.fc1\", \"P_bg1208\", \"P_bg1209\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.2.mlp.fc2\", \"P_bg1210\", \"P_bg1211\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.2.self_attn.k_proj\", \"P_bg1212\", \"P_bg1213\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.2.self_attn.out_proj\", \"P_bg1212\", \"P_bg1213\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.2.self_attn.q_proj\", \"P_bg1212\", \"P_bg1213\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.2.self_attn.v_proj\", \"P_bg1212\", \"P_bg1213\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.3.mlp.fc1\", \"P_bg1216\", \"P_bg1217\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.3.mlp.fc2\", \"P_bg1218\", \"P_bg1219\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.3.self_attn.k_proj\", \"P_bg1220\", \"P_bg1221\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.3.self_attn.out_proj\", \"P_bg1220\", \"P_bg1221\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.3.self_attn.q_proj\", \"P_bg1220\", \"P_bg1221\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.3.self_attn.v_proj\", \"P_bg1220\", \"P_bg1221\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.4.mlp.fc1\", \"P_bg1224\", \"P_bg1225\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.4.mlp.fc2\", \"P_bg1226\", \"P_bg1227\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.4.self_attn.k_proj\", \"P_bg1228\", \"P_bg1229\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.4.self_attn.out_proj\", \"P_bg1228\", \"P_bg1229\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.4.self_attn.q_proj\", \"P_bg1228\", \"P_bg1229\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.4.self_attn.v_proj\", \"P_bg1228\", \"P_bg1229\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.5.mlp.fc1\", \"P_bg1232\", \"P_bg1233\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.5.mlp.fc2\", \"P_bg1234\", \"P_bg1235\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.5.self_attn.k_proj\", \"P_bg1236\", \"P_bg1237\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.5.self_attn.out_proj\", \"P_bg1236\", \"P_bg1237\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.5.self_attn.q_proj\", \"P_bg1236\", \"P_bg1237\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.5.self_attn.v_proj\", \"P_bg1236\", \"P_bg1237\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.6.mlp.fc1\", \"P_bg1240\", \"P_bg1241\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.6.mlp.fc2\", \"P_bg1242\", \"P_bg1243\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.6.self_attn.k_proj\", \"P_bg1244\", \"P_bg1245\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.6.self_attn.out_proj\", \"P_bg1244\", \"P_bg1245\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.6.self_attn.q_proj\", \"P_bg1244\", \"P_bg1245\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.6.self_attn.v_proj\", \"P_bg1244\", \"P_bg1245\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.7.mlp.fc1\", \"P_bg1248\", \"P_bg1249\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.7.mlp.fc2\", \"P_bg1250\", \"P_bg1251\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.7.self_attn.k_proj\", \"P_bg1252\", \"P_bg1253\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.7.self_attn.out_proj\", \"P_bg1252\", \"P_bg1253\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.7.self_attn.q_proj\", \"P_bg1252\", \"P_bg1253\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.7.self_attn.v_proj\", \"P_bg1252\", \"P_bg1253\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.8.mlp.fc1\", \"P_bg1256\", \"P_bg1257\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.8.mlp.fc2\", \"P_bg1258\", \"P_bg1259\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.8.self_attn.k_proj\", \"P_bg1260\", \"P_bg1261\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.8.self_attn.out_proj\", \"P_bg1260\", \"P_bg1261\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.8.self_attn.q_proj\", \"P_bg1260\", \"P_bg1261\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.8.self_attn.v_proj\", \"P_bg1260\", \"P_bg1261\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.9.mlp.fc1\", \"P_bg1264\", \"P_bg1265\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.9.mlp.fc2\", \"P_bg1266\", \"P_bg1267\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.9.self_attn.k_proj\", \"P_bg1268\", \"P_bg1269\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.9.self_attn.out_proj\", \"P_bg1268\", \"P_bg1269\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.9.self_attn.q_proj\", \"P_bg1268\", \"P_bg1269\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.9.self_attn.v_proj\", \"P_bg1268\", \"P_bg1269\", bias=False),\n            **dense(\"conditioner.embedders.1.model.token_embedding\", \"P_bg1272\", \"P_bg1273\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.0.attn.in_proj_weight\", \"P_bg1274\", \"P_bg1275\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.0.attn.out_proj\", \"P_bg1274\", \"P_bg1275\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.0.mlp.c_fc\", \"P_bg1278\", \"P_bg1279\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.0.mlp.c_proj\", \"P_bg1280\", \"P_bg1281\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.1.attn.in_proj_weight\", \"P_bg1280\", \"P_bg1281\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.1.attn.out_proj\", \"P_bg1280\", \"P_bg1281\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.1.mlp.c_fc\", \"P_bg1284\", \"P_bg1285\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.1.mlp.c_proj\", \"P_bg1286\", \"P_bg1287\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.10.attn.in_proj_weight\", \"P_bg1286\", \"P_bg1287\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.10.attn.out_proj\", \"P_bg1286\", \"P_bg1287\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.10.mlp.c_fc\", \"P_bg1290\", \"P_bg1291\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.10.mlp.c_proj\", \"P_bg1292\", \"P_bg1293\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.11.attn.in_proj_weight\", \"P_bg1292\", \"P_bg1293\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.11.attn.out_proj\", \"P_bg1292\", \"P_bg1293\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.11.mlp.c_fc\", \"P_bg1296\", \"P_bg1297\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.11.mlp.c_proj\", \"P_bg1298\", \"P_bg1299\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.12.attn.in_proj_weight\", \"P_bg1298\", \"P_bg1299\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.12.attn.out_proj\", \"P_bg1298\", \"P_bg1299\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.12.mlp.c_fc\", \"P_bg1302\", \"P_bg1303\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.12.mlp.c_proj\", \"P_bg1304\", \"P_bg1305\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.13.attn.in_proj_weight\", \"P_bg1304\", \"P_bg1305\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.13.attn.out_proj\", \"P_bg1304\", \"P_bg1305\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.13.mlp.c_fc\", \"P_bg1308\", \"P_bg1309\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.13.mlp.c_proj\", \"P_bg1310\", \"P_bg1311\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.14.attn.in_proj_weight\", \"P_bg1310\", \"P_bg1311\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.14.attn.out_proj\", \"P_bg1310\", \"P_bg1311\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.14.mlp.c_fc\", \"P_bg1314\", \"P_bg1315\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.14.mlp.c_proj\", \"P_bg1316\", \"P_bg1317\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.15.attn.in_proj_weight\", \"P_bg1316\", \"P_bg1317\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.15.attn.out_proj\", \"P_bg1316\", \"P_bg1317\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.15.mlp.c_fc\", \"P_bg1320\", \"P_bg1321\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.15.mlp.c_proj\", \"P_bg1322\", \"P_bg1323\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.16.attn.in_proj_weight\", \"P_bg1322\", \"P_bg1323\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.16.attn.out_proj\", \"P_bg1322\", \"P_bg1323\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.16.mlp.c_fc\", \"P_bg1326\", \"P_bg1327\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.16.mlp.c_proj\", \"P_bg1328\", \"P_bg1329\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.17.attn.in_proj_weight\", \"P_bg1328\", \"P_bg1329\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.17.attn.out_proj\", \"P_bg1328\", \"P_bg1329\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.17.mlp.c_fc\", \"P_bg1332\", \"P_bg1333\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.17.mlp.c_proj\", \"P_bg1334\", \"P_bg1335\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.18.attn.in_proj_weight\", \"P_bg1334\", \"P_bg1335\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.18.attn.out_proj\", \"P_bg1334\", \"P_bg1335\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.18.mlp.c_fc\", \"P_bg1338\", \"P_bg1339\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.18.mlp.c_proj\", \"P_bg1340\", \"P_bg1341\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.19.attn.in_proj_weight\", \"P_bg1340\", \"P_bg1341\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.19.attn.out_proj\", \"P_bg1340\", \"P_bg1341\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.19.mlp.c_fc\", \"P_bg1344\", \"P_bg1345\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.19.mlp.c_proj\", \"P_bg1346\", \"P_bg1347\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.2.attn.in_proj_weight\", \"P_bg1346\", \"P_bg1347\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.2.attn.out_proj\", \"P_bg1346\", \"P_bg1347\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.2.mlp.c_fc\", \"P_bg1350\", \"P_bg1351\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.2.mlp.c_proj\", \"P_bg1352\", \"P_bg1353\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.20.attn.in_proj_weight\", \"P_bg1352\", \"P_bg1353\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.20.attn.out_proj\", \"P_bg1352\", \"P_bg1353\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.20.mlp.c_fc\", \"P_bg1356\", \"P_bg1357\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.20.mlp.c_proj\", \"P_bg1358\", \"P_bg1359\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.21.attn.in_proj_weight\", \"P_bg1358\", \"P_bg1359\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.21.attn.out_proj\", \"P_bg1358\", \"P_bg1359\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.21.mlp.c_fc\", \"P_bg1362\", \"P_bg1363\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.21.mlp.c_proj\", \"P_bg1364\", \"P_bg1365\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.22.attn.in_proj_weight\", \"P_bg1364\", \"P_bg1365\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.22.attn.out_proj\", \"P_bg1364\", \"P_bg1365\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.22.mlp.c_fc\", \"P_bg1368\", \"P_bg1369\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.22.mlp.c_proj\", \"P_bg1370\", \"P_bg1371\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.23.attn.in_proj_weight\", \"P_bg1370\", \"P_bg1371\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.23.attn.out_proj\", \"P_bg1370\", \"P_bg1371\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.23.mlp.c_fc\", \"P_bg1374\", \"P_bg1375\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.23.mlp.c_proj\", \"P_bg1376\", \"P_bg1377\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.24.attn.in_proj_weight\", \"P_bg1376\", \"P_bg1377\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.24.attn.out_proj\", \"P_bg1376\", \"P_bg1377\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.24.mlp.c_fc\", \"P_bg1380\", \"P_bg1381\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.24.mlp.c_proj\", \"P_bg1382\", \"P_bg1383\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.25.attn.in_proj_weight\", \"P_bg1382\", \"P_bg1383\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.25.attn.out_proj\", \"P_bg1382\", \"P_bg1383\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.25.mlp.c_fc\", \"P_bg1386\", \"P_bg1387\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.25.mlp.c_proj\", \"P_bg1388\", \"P_bg1389\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.26.attn.in_proj_weight\", \"P_bg1388\", \"P_bg1389\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.26.attn.out_proj\", \"P_bg1388\", \"P_bg1389\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.26.mlp.c_fc\", \"P_bg1392\", \"P_bg1393\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.26.mlp.c_proj\", \"P_bg1394\", \"P_bg1395\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.27.attn.in_proj_weight\", \"P_bg1394\", \"P_bg1395\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.27.attn.out_proj\", \"P_bg1394\", \"P_bg1395\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.27.mlp.c_fc\", \"P_bg1398\", \"P_bg1399\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.27.mlp.c_proj\", \"P_bg1400\", \"P_bg1401\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.28.attn.in_proj_weight\", \"P_bg1400\", \"P_bg1401\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.28.attn.out_proj\", \"P_bg1400\", \"P_bg1401\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.28.mlp.c_fc\", \"P_bg1404\", \"P_bg1405\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.28.mlp.c_proj\", \"P_bg1406\", \"P_bg1407\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.29.attn.in_proj_weight\", \"P_bg1406\", \"P_bg1407\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.29.attn.out_proj\", \"P_bg1406\", \"P_bg1407\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.29.mlp.c_fc\", \"P_bg1410\", \"P_bg1411\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.29.mlp.c_proj\", \"P_bg1412\", \"P_bg1413\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.3.attn.in_proj_weight\", \"P_bg1412\", \"P_bg1413\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.3.attn.out_proj\", \"P_bg1412\", \"P_bg1413\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.3.mlp.c_fc\", \"P_bg1416\", \"P_bg1417\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.3.mlp.c_proj\", \"P_bg1418\", \"P_bg1419\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.30.attn.in_proj_weight\", \"P_bg1418\", \"P_bg1419\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.30.attn.out_proj\", \"P_bg1418\", \"P_bg1419\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.30.mlp.c_fc\", \"P_bg1422\", \"P_bg1423\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.30.mlp.c_proj\", \"P_bg1424\", \"P_bg1425\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.31.attn.in_proj_weight\", \"P_bg1424\", \"P_bg1425\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.31.attn.out_proj\", \"P_bg1424\", \"P_bg1425\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.31.mlp.c_fc\", \"P_bg1428\", \"P_bg1429\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.31.mlp.c_proj\", \"P_bg1430\", \"P_bg1431\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.4.attn.in_proj_weight\", \"P_bg1430\", \"P_bg1431\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.4.attn.out_proj\", \"P_bg1430\", \"P_bg1431\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.4.mlp.c_fc\", \"P_bg1434\", \"P_bg1435\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.4.mlp.c_proj\", \"P_bg1436\", \"P_bg1437\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.5.attn.in_proj_weight\", \"P_bg1436\", \"P_bg1437\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.5.attn.out_proj\", \"P_bg1436\", \"P_bg1437\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.5.mlp.c_fc\", \"P_bg1440\", \"P_bg1441\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.5.mlp.c_proj\", \"P_bg1442\", \"P_bg1443\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.6.attn.in_proj_weight\", \"P_bg1442\", \"P_bg1443\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.6.attn.out_proj\", \"P_bg1442\", \"P_bg1443\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.6.mlp.c_fc\", \"P_bg1446\", \"P_bg1447\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.6.mlp.c_proj\", \"P_bg1448\", \"P_bg1449\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.7.attn.in_proj_weight\", \"P_bg1448\", \"P_bg1449\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.7.attn.out_proj\", \"P_bg1448\", \"P_bg1449\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.7.mlp.c_fc\", \"P_bg1452\", \"P_bg1453\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.7.mlp.c_proj\", \"P_bg1454\", \"P_bg1455\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.8.attn.in_proj_weight\", \"P_bg1454\", \"P_bg1455\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.8.attn.out_proj\", \"P_bg1454\", \"P_bg1455\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.8.mlp.c_fc\", \"P_bg1458\", \"P_bg1459\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.8.mlp.c_proj\", \"P_bg1460\", \"P_bg1461\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.9.attn.in_proj_weight\", \"P_bg1460\", \"P_bg1461\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.9.attn.out_proj\", \"P_bg1460\", \"P_bg1461\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.9.mlp.c_fc\", \"P_bg1464\", \"P_bg1465\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.9.mlp.c_proj\", \"P_bg1466\", \"P_bg1467\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.embeddings.position_embedding\", \"P_bg1170\", \"P_bg1171\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.embeddings.token_embedding\", \"P_bg1172\", \"P_bg1173\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.0.mlp.fc1\", \"P_bg1176\", \"P_bg1177\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.0.mlp.fc2\", \"P_bg1178\", \"P_bg1179\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.0.self_attn.k_proj\", \"P_bg1180\", \"P_bg1181\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.0.self_attn.out_proj\", \"P_bg1180\", \"P_bg1181\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.0.self_attn.q_proj\", \"P_bg1180\", \"P_bg1181\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.0.self_attn.v_proj\", \"P_bg1180\", \"P_bg1181\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.1.mlp.fc1\", \"P_bg1184\", \"P_bg1185\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.1.mlp.fc2\", \"P_bg1186\", \"P_bg1187\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.1.self_attn.k_proj\", \"P_bg1188\", \"P_bg1189\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.1.self_attn.out_proj\", \"P_bg1188\", \"P_bg1189\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.1.self_attn.q_proj\", \"P_bg1188\", \"P_bg1189\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.1.self_attn.v_proj\", \"P_bg1188\", \"P_bg1189\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.10.mlp.fc1\", \"P_bg1192\", \"P_bg1193\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.10.mlp.fc2\", \"P_bg1194\", \"P_bg1195\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.10.self_attn.k_proj\", \"P_bg1196\", \"P_bg1197\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.10.self_attn.out_proj\", \"P_bg1196\", \"P_bg1197\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.10.self_attn.q_proj\", \"P_bg1196\", \"P_bg1197\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.10.self_attn.v_proj\", \"P_bg1196\", \"P_bg1197\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.11.mlp.fc1\", \"P_bg1200\", \"P_bg1201\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.11.mlp.fc2\", \"P_bg1202\", \"P_bg1203\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.11.self_attn.k_proj\", \"P_bg1204\", \"P_bg1205\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.11.self_attn.out_proj\", \"P_bg1204\", \"P_bg1205\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.11.self_attn.q_proj\", \"P_bg1204\", \"P_bg1205\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.11.self_attn.v_proj\", \"P_bg1204\", \"P_bg1205\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.2.mlp.fc1\", \"P_bg1208\", \"P_bg1209\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.2.mlp.fc2\", \"P_bg1210\", \"P_bg1211\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.2.self_attn.k_proj\", \"P_bg1212\", \"P_bg1213\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.2.self_attn.out_proj\", \"P_bg1212\", \"P_bg1213\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.2.self_attn.q_proj\", \"P_bg1212\", \"P_bg1213\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.2.self_attn.v_proj\", \"P_bg1212\", \"P_bg1213\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.3.mlp.fc1\", \"P_bg1216\", \"P_bg1217\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.3.mlp.fc2\", \"P_bg1218\", \"P_bg1219\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.3.self_attn.k_proj\", \"P_bg1220\", \"P_bg1221\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.3.self_attn.out_proj\", \"P_bg1220\", \"P_bg1221\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.3.self_attn.q_proj\", \"P_bg1220\", \"P_bg1221\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.3.self_attn.v_proj\", \"P_bg1220\", \"P_bg1221\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.4.mlp.fc1\", \"P_bg1224\", \"P_bg1225\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.4.mlp.fc2\", \"P_bg1226\", \"P_bg1227\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.4.self_attn.k_proj\", \"P_bg1228\", \"P_bg1229\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.4.self_attn.out_proj\", \"P_bg1228\", \"P_bg1229\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.4.self_attn.q_proj\", \"P_bg1228\", \"P_bg1229\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.4.self_attn.v_proj\", \"P_bg1228\", \"P_bg1229\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.5.mlp.fc1\", \"P_bg1232\", \"P_bg1233\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.5.mlp.fc2\", \"P_bg1234\", \"P_bg1235\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.5.self_attn.k_proj\", \"P_bg1236\", \"P_bg1237\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.5.self_attn.out_proj\", \"P_bg1236\", \"P_bg1237\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.5.self_attn.q_proj\", \"P_bg1236\", \"P_bg1237\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.5.self_attn.v_proj\", \"P_bg1236\", \"P_bg1237\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.6.mlp.fc1\", \"P_bg1240\", \"P_bg1241\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.6.mlp.fc2\", \"P_bg1242\", \"P_bg1243\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.6.self_attn.k_proj\", \"P_bg1244\", \"P_bg1245\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.6.self_attn.out_proj\", \"P_bg1244\", \"P_bg1245\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.6.self_attn.q_proj\", \"P_bg1244\", \"P_bg1245\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.6.self_attn.v_proj\", \"P_bg1244\", \"P_bg1245\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.7.mlp.fc1\", \"P_bg1248\", \"P_bg1249\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.7.mlp.fc2\", \"P_bg1250\", \"P_bg1251\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.7.self_attn.k_proj\", \"P_bg1252\", \"P_bg1253\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.7.self_attn.out_proj\", \"P_bg1252\", \"P_bg1253\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.7.self_attn.q_proj\", \"P_bg1252\", \"P_bg1253\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.7.self_attn.v_proj\", \"P_bg1252\", \"P_bg1253\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.8.mlp.fc1\", \"P_bg1256\", \"P_bg1257\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.8.mlp.fc2\", \"P_bg1258\", \"P_bg1259\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.8.self_attn.k_proj\", \"P_bg1260\", \"P_bg1261\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.8.self_attn.out_proj\", \"P_bg1260\", \"P_bg1261\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.8.self_attn.q_proj\", \"P_bg1260\", \"P_bg1261\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.8.self_attn.v_proj\", \"P_bg1260\", \"P_bg1261\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.9.mlp.fc1\", \"P_bg1264\", \"P_bg1265\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.9.mlp.fc2\", \"P_bg1266\", \"P_bg1267\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.9.self_attn.k_proj\", \"P_bg1268\", \"P_bg1269\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.9.self_attn.out_proj\", \"P_bg1268\", \"P_bg1269\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.9.self_attn.q_proj\", \"P_bg1268\", \"P_bg1269\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.9.self_attn.v_proj\", \"P_bg1268\", \"P_bg1269\", bias=False),\n            **dense(\"conditioner.embedders.1.model.token_embedding\", \"P_bg1272\", \"P_bg1273\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.0.attn.in_proj_weight\", \"P_bg1274\", \"P_bg1275\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.0.attn.out_proj\", \"P_bg1274\", \"P_bg1275\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.0.mlp.c_fc\", \"P_bg1278\", \"P_bg1279\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.0.mlp.c_proj\", \"P_bg1280\", \"P_bg1281\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.1.attn.in_proj_weight\", \"P_bg1280\", \"P_bg1281\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.1.attn.out_proj\", \"P_bg1280\", \"P_bg1281\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.1.mlp.c_fc\", \"P_bg1284\", \"P_bg1285\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.1.mlp.c_proj\", \"P_bg1286\", \"P_bg1287\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.10.attn.in_proj_weight\", \"P_bg1286\", \"P_bg1287\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.10.attn.out_proj\", \"P_bg1286\", \"P_bg1287\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.10.mlp.c_fc\", \"P_bg1290\", \"P_bg1291\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.10.mlp.c_proj\", \"P_bg1292\", \"P_bg1293\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.11.attn.in_proj_weight\", \"P_bg1292\", \"P_bg1293\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.11.attn.out_proj\", \"P_bg1292\", \"P_bg1293\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.11.mlp.c_fc\", \"P_bg1296\", \"P_bg1297\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.11.mlp.c_proj\", \"P_bg1298\", \"P_bg1299\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.12.attn.in_proj_weight\", \"P_bg1298\", \"P_bg1299\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.12.attn.out_proj\", \"P_bg1298\", \"P_bg1299\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.12.mlp.c_fc\", \"P_bg1302\", \"P_bg1303\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.12.mlp.c_proj\", \"P_bg1304\", \"P_bg1305\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.13.attn.in_proj_weight\", \"P_bg1304\", \"P_bg1305\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.13.attn.out_proj\", \"P_bg1304\", \"P_bg1305\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.13.mlp.c_fc\", \"P_bg1308\", \"P_bg1309\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.13.mlp.c_proj\", \"P_bg1310\", \"P_bg1311\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.14.attn.in_proj_weight\", \"P_bg1310\", \"P_bg1311\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.14.attn.out_proj\", \"P_bg1310\", \"P_bg1311\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.14.mlp.c_fc\", \"P_bg1314\", \"P_bg1315\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.14.mlp.c_proj\", \"P_bg1316\", \"P_bg1317\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.15.attn.in_proj_weight\", \"P_bg1316\", \"P_bg1317\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.15.attn.out_proj\", \"P_bg1316\", \"P_bg1317\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.15.mlp.c_fc\", \"P_bg1320\", \"P_bg1321\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.15.mlp.c_proj\", \"P_bg1322\", \"P_bg1323\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.16.attn.in_proj_weight\", \"P_bg1322\", \"P_bg1323\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.16.attn.out_proj\", \"P_bg1322\", \"P_bg1323\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.16.mlp.c_fc\", \"P_bg1326\", \"P_bg1327\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.16.mlp.c_proj\", \"P_bg1328\", \"P_bg1329\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.17.attn.in_proj_weight\", \"P_bg1328\", \"P_bg1329\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.17.attn.out_proj\", \"P_bg1328\", \"P_bg1329\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.17.mlp.c_fc\", \"P_bg1332\", \"P_bg1333\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.17.mlp.c_proj\", \"P_bg1334\", \"P_bg1335\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.18.attn.in_proj_weight\", \"P_bg1334\", \"P_bg1335\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.18.attn.out_proj\", \"P_bg1334\", \"P_bg1335\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.18.mlp.c_fc\", \"P_bg1338\", \"P_bg1339\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.18.mlp.c_proj\", \"P_bg1340\", \"P_bg1341\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.19.attn.in_proj_weight\", \"P_bg1340\", \"P_bg1341\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.19.attn.out_proj\", \"P_bg1340\", \"P_bg1341\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.19.mlp.c_fc\", \"P_bg1344\", \"P_bg1345\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.19.mlp.c_proj\", \"P_bg1346\", \"P_bg1347\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.2.attn.in_proj_weight\", \"P_bg1346\", \"P_bg1347\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.2.attn.out_proj\", \"P_bg1346\", \"P_bg1347\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.2.mlp.c_fc\", \"P_bg1350\", \"P_bg1351\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.2.mlp.c_proj\", \"P_bg1352\", \"P_bg1353\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.20.attn.in_proj_weight\", \"P_bg1352\", \"P_bg1353\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.20.attn.out_proj\", \"P_bg1352\", \"P_bg1353\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.20.mlp.c_fc\", \"P_bg1356\", \"P_bg1357\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.20.mlp.c_proj\", \"P_bg1358\", \"P_bg1359\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.21.attn.in_proj_weight\", \"P_bg1358\", \"P_bg1359\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.21.attn.out_proj\", \"P_bg1358\", \"P_bg1359\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.21.mlp.c_fc\", \"P_bg1362\", \"P_bg1363\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.21.mlp.c_proj\", \"P_bg1364\", \"P_bg1365\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.22.attn.in_proj_weight\", \"P_bg1364\", \"P_bg1365\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.22.attn.out_proj\", \"P_bg1364\", \"P_bg1365\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.22.mlp.c_fc\", \"P_bg1368\", \"P_bg1369\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.22.mlp.c_proj\", \"P_bg1370\", \"P_bg1371\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.23.attn.in_proj_weight\", \"P_bg1370\", \"P_bg1371\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.23.attn.out_proj\", \"P_bg1370\", \"P_bg1371\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.23.mlp.c_fc\", \"P_bg1374\", \"P_bg1375\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.23.mlp.c_proj\", \"P_bg1376\", \"P_bg1377\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.24.attn.in_proj_weight\", \"P_bg1376\", \"P_bg1377\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.24.attn.out_proj\", \"P_bg1376\", \"P_bg1377\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.24.mlp.c_fc\", \"P_bg1380\", \"P_bg1381\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.24.mlp.c_proj\", \"P_bg1382\", \"P_bg1383\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.25.attn.in_proj_weight\", \"P_bg1382\", \"P_bg1383\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.25.attn.out_proj\", \"P_bg1382\", \"P_bg1383\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.25.mlp.c_fc\", \"P_bg1386\", \"P_bg1387\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.25.mlp.c_proj\", \"P_bg1388\", \"P_bg1389\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.26.attn.in_proj_weight\", \"P_bg1388\", \"P_bg1389\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.26.attn.out_proj\", \"P_bg1388\", \"P_bg1389\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.26.mlp.c_fc\", \"P_bg1392\", \"P_bg1393\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.26.mlp.c_proj\", \"P_bg1394\", \"P_bg1395\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.27.attn.in_proj_weight\", \"P_bg1394\", \"P_bg1395\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.27.attn.out_proj\", \"P_bg1394\", \"P_bg1395\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.27.mlp.c_fc\", \"P_bg1398\", \"P_bg1399\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.27.mlp.c_proj\", \"P_bg1400\", \"P_bg1401\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.28.attn.in_proj_weight\", \"P_bg1400\", \"P_bg1401\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.28.attn.out_proj\", \"P_bg1400\", \"P_bg1401\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.28.mlp.c_fc\", \"P_bg1404\", \"P_bg1405\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.28.mlp.c_proj\", \"P_bg1406\", \"P_bg1407\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.29.attn.in_proj_weight\", \"P_bg1406\", \"P_bg1407\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.29.attn.out_proj\", \"P_bg1406\", \"P_bg1407\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.29.mlp.c_fc\", \"P_bg1410\", \"P_bg1411\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.29.mlp.c_proj\", \"P_bg1412\", \"P_bg1413\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.3.attn.in_proj_weight\", \"P_bg1412\", \"P_bg1413\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.3.attn.out_proj\", \"P_bg1412\", \"P_bg1413\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.3.mlp.c_fc\", \"P_bg1416\", \"P_bg1417\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.3.mlp.c_proj\", \"P_bg1418\", \"P_bg1419\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.30.attn.in_proj_weight\", \"P_bg1418\", \"P_bg1419\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.30.attn.out_proj\", \"P_bg1418\", \"P_bg1419\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.30.mlp.c_fc\", \"P_bg1422\", \"P_bg1423\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.30.mlp.c_proj\", \"P_bg1424\", \"P_bg1425\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.31.attn.in_proj_weight\", \"P_bg1424\", \"P_bg1425\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.31.attn.out_proj\", \"P_bg1424\", \"P_bg1425\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.31.mlp.c_fc\", \"P_bg1428\", \"P_bg1429\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.31.mlp.c_proj\", \"P_bg1430\", \"P_bg1431\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.4.attn.in_proj_weight\", \"P_bg1430\", \"P_bg1431\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.4.attn.out_proj\", \"P_bg1430\", \"P_bg1431\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.4.mlp.c_fc\", \"P_bg1434\", \"P_bg1435\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.4.mlp.c_proj\", \"P_bg1436\", \"P_bg1437\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.5.attn.in_proj_weight\", \"P_bg1436\", \"P_bg1437\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.5.attn.out_proj\", \"P_bg1436\", \"P_bg1437\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.5.mlp.c_fc\", \"P_bg1440\", \"P_bg1441\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.5.mlp.c_proj\", \"P_bg1442\", \"P_bg1443\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.6.attn.in_proj_weight\", \"P_bg1442\", \"P_bg1443\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.6.attn.out_proj\", \"P_bg1442\", \"P_bg1443\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.6.mlp.c_fc\", \"P_bg1446\", \"P_bg1447\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.6.mlp.c_proj\", \"P_bg1448\", \"P_bg1449\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.7.attn.in_proj_weight\", \"P_bg1448\", \"P_bg1449\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.7.attn.out_proj\", \"P_bg1448\", \"P_bg1449\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.7.mlp.c_fc\", \"P_bg1452\", \"P_bg1453\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.7.mlp.c_proj\", \"P_bg1454\", \"P_bg1455\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.8.attn.in_proj_weight\", \"P_bg1454\", \"P_bg1455\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.8.attn.out_proj\", \"P_bg1454\", \"P_bg1455\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.8.mlp.c_fc\", \"P_bg1458\", \"P_bg1459\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.8.mlp.c_proj\", \"P_bg1460\", \"P_bg1461\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.9.attn.in_proj_weight\", \"P_bg1460\", \"P_bg1461\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.9.attn.out_proj\", \"P_bg1460\", \"P_bg1461\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.9.mlp.c_fc\", \"P_bg1464\", \"P_bg1465\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.9.mlp.c_proj\", \"P_bg1466\", \"P_bg1467\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.embeddings.position_embedding\", \"P_bg1170\", \"P_bg1171\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.embeddings.token_embedding\", \"P_bg1172\", \"P_bg1173\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.0.mlp.fc1\", \"P_bg1176\", \"P_bg1177\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.0.mlp.fc2\", \"P_bg1178\", \"P_bg1179\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.0.self_attn.k_proj\", \"P_bg1180\", \"P_bg1181\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.0.self_attn.out_proj\", \"P_bg1180\", \"P_bg1181\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.0.self_attn.q_proj\", \"P_bg1180\", \"P_bg1181\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.0.self_attn.v_proj\", \"P_bg1180\", \"P_bg1181\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.1.mlp.fc1\", \"P_bg1184\", \"P_bg1185\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.1.mlp.fc2\", \"P_bg1186\", \"P_bg1187\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.1.self_attn.k_proj\", \"P_bg1188\", \"P_bg1189\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.1.self_attn.out_proj\", \"P_bg1188\", \"P_bg1189\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.1.self_attn.q_proj\", \"P_bg1188\", \"P_bg1189\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.1.self_attn.v_proj\", \"P_bg1188\", \"P_bg1189\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.10.mlp.fc1\", \"P_bg1192\", \"P_bg1193\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.10.mlp.fc2\", \"P_bg1194\", \"P_bg1195\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.10.self_attn.k_proj\", \"P_bg1196\", \"P_bg1197\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.10.self_attn.out_proj\", \"P_bg1196\", \"P_bg1197\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.10.self_attn.q_proj\", \"P_bg1196\", \"P_bg1197\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.10.self_attn.v_proj\", \"P_bg1196\", \"P_bg1197\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.11.mlp.fc1\", \"P_bg1200\", \"P_bg1201\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.11.mlp.fc2\", \"P_bg1202\", \"P_bg1203\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.11.self_attn.k_proj\", \"P_bg1204\", \"P_bg1205\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.11.self_attn.out_proj\", \"P_bg1204\", \"P_bg1205\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.11.self_attn.q_proj\", \"P_bg1204\", \"P_bg1205\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.11.self_attn.v_proj\", \"P_bg1204\", \"P_bg1205\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.2.mlp.fc1\", \"P_bg1208\", \"P_bg1209\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.2.mlp.fc2\", \"P_bg1210\", \"P_bg1211\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.2.self_attn.k_proj\", \"P_bg1212\", \"P_bg1213\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.2.self_attn.out_proj\", \"P_bg1212\", \"P_bg1213\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.2.self_attn.q_proj\", \"P_bg1212\", \"P_bg1213\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.2.self_attn.v_proj\", \"P_bg1212\", \"P_bg1213\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.3.mlp.fc1\", \"P_bg1216\", \"P_bg1217\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.3.mlp.fc2\", \"P_bg1218\", \"P_bg1219\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.3.self_attn.k_proj\", \"P_bg1220\", \"P_bg1221\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.3.self_attn.out_proj\", \"P_bg1220\", \"P_bg1221\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.3.self_attn.q_proj\", \"P_bg1220\", \"P_bg1221\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.3.self_attn.v_proj\", \"P_bg1220\", \"P_bg1221\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.4.mlp.fc1\", \"P_bg1224\", \"P_bg1225\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.4.mlp.fc2\", \"P_bg1226\", \"P_bg1227\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.4.self_attn.k_proj\", \"P_bg1228\", \"P_bg1229\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.4.self_attn.out_proj\", \"P_bg1228\", \"P_bg1229\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.4.self_attn.q_proj\", \"P_bg1228\", \"P_bg1229\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.4.self_attn.v_proj\", \"P_bg1228\", \"P_bg1229\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.5.mlp.fc1\", \"P_bg1232\", \"P_bg1233\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.5.mlp.fc2\", \"P_bg1234\", \"P_bg1235\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.5.self_attn.k_proj\", \"P_bg1236\", \"P_bg1237\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.5.self_attn.out_proj\", \"P_bg1236\", \"P_bg1237\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.5.self_attn.q_proj\", \"P_bg1236\", \"P_bg1237\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.5.self_attn.v_proj\", \"P_bg1236\", \"P_bg1237\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.6.mlp.fc1\", \"P_bg1240\", \"P_bg1241\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.6.mlp.fc2\", \"P_bg1242\", \"P_bg1243\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.6.self_attn.k_proj\", \"P_bg1244\", \"P_bg1245\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.6.self_attn.out_proj\", \"P_bg1244\", \"P_bg1245\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.6.self_attn.q_proj\", \"P_bg1244\", \"P_bg1245\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.6.self_attn.v_proj\", \"P_bg1244\", \"P_bg1245\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.7.mlp.fc1\", \"P_bg1248\", \"P_bg1249\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.7.mlp.fc2\", \"P_bg1250\", \"P_bg1251\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.7.self_attn.k_proj\", \"P_bg1252\", \"P_bg1253\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.7.self_attn.out_proj\", \"P_bg1252\", \"P_bg1253\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.7.self_attn.q_proj\", \"P_bg1252\", \"P_bg1253\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.7.self_attn.v_proj\", \"P_bg1252\", \"P_bg1253\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.8.mlp.fc1\", \"P_bg1256\", \"P_bg1257\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.8.mlp.fc2\", \"P_bg1258\", \"P_bg1259\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.8.self_attn.k_proj\", \"P_bg1260\", \"P_bg1261\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.8.self_attn.out_proj\", \"P_bg1260\", \"P_bg1261\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.8.self_attn.q_proj\", \"P_bg1260\", \"P_bg1261\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.8.self_attn.v_proj\", \"P_bg1260\", \"P_bg1261\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.9.mlp.fc1\", \"P_bg1264\", \"P_bg1265\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.9.mlp.fc2\", \"P_bg1266\", \"P_bg1267\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.9.self_attn.k_proj\", \"P_bg1268\", \"P_bg1269\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.9.self_attn.out_proj\", \"P_bg1268\", \"P_bg1269\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.9.self_attn.q_proj\", \"P_bg1268\", \"P_bg1269\", bias=False),\n            **dense(\"conditioner.embedders.0.transformer.text_model.encoder.layers.9.self_attn.v_proj\", \"P_bg1268\", \"P_bg1269\", bias=False),\n            **dense(\"conditioner.embedders.1.model.token_embedding\", \"P_bg1272\", \"P_bg1273\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.0.attn.in_proj_weight\", \"P_bg1274\", \"P_bg1275\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.0.attn.out_proj\", \"P_bg1274\", \"P_bg1275\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.0.mlp.c_fc\", \"P_bg1278\", \"P_bg1279\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.0.mlp.c_proj\", \"P_bg1280\", \"P_bg1281\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.1.attn.in_proj_weight\", \"P_bg1280\", \"P_bg1281\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.1.attn.out_proj\", \"P_bg1280\", \"P_bg1281\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.1.mlp.c_fc\", \"P_bg1284\", \"P_bg1285\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.1.mlp.c_proj\", \"P_bg1286\", \"P_bg1287\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.10.attn.in_proj_weight\", \"P_bg1286\", \"P_bg1287\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.10.attn.out_proj\", \"P_bg1286\", \"P_bg1287\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.10.mlp.c_fc\", \"P_bg1290\", \"P_bg1291\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.10.mlp.c_proj\", \"P_bg1292\", \"P_bg1293\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.11.attn.in_proj_weight\", \"P_bg1292\", \"P_bg1293\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.11.attn.out_proj\", \"P_bg1292\", \"P_bg1293\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.11.mlp.c_fc\", \"P_bg1296\", \"P_bg1297\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.11.mlp.c_proj\", \"P_bg1298\", \"P_bg1299\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.12.attn.in_proj_weight\", \"P_bg1298\", \"P_bg1299\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.12.attn.out_proj\", \"P_bg1298\", \"P_bg1299\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.12.mlp.c_fc\", \"P_bg1302\", \"P_bg1303\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.12.mlp.c_proj\", \"P_bg1304\", \"P_bg1305\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.13.attn.in_proj_weight\", \"P_bg1304\", \"P_bg1305\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.13.attn.out_proj\", \"P_bg1304\", \"P_bg1305\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.13.mlp.c_fc\", \"P_bg1308\", \"P_bg1309\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.13.mlp.c_proj\", \"P_bg1310\", \"P_bg1311\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.14.attn.in_proj_weight\", \"P_bg1310\", \"P_bg1311\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.14.attn.out_proj\", \"P_bg1310\", \"P_bg1311\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.14.mlp.c_fc\", \"P_bg1314\", \"P_bg1315\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.14.mlp.c_proj\", \"P_bg1316\", \"P_bg1317\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.15.attn.in_proj_weight\", \"P_bg1316\", \"P_bg1317\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.15.attn.out_proj\", \"P_bg1316\", \"P_bg1317\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.15.mlp.c_fc\", \"P_bg1320\", \"P_bg1321\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.15.mlp.c_proj\", \"P_bg1322\", \"P_bg1323\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.16.attn.in_proj_weight\", \"P_bg1322\", \"P_bg1323\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.16.attn.out_proj\", \"P_bg1322\", \"P_bg1323\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.16.mlp.c_fc\", \"P_bg1326\", \"P_bg1327\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.16.mlp.c_proj\", \"P_bg1328\", \"P_bg1329\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.17.attn.in_proj_weight\", \"P_bg1328\", \"P_bg1329\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.17.attn.out_proj\", \"P_bg1328\", \"P_bg1329\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.17.mlp.c_fc\", \"P_bg1332\", \"P_bg1333\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.17.mlp.c_proj\", \"P_bg1334\", \"P_bg1335\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.18.attn.in_proj_weight\", \"P_bg1334\", \"P_bg1335\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.18.attn.out_proj\", \"P_bg1334\", \"P_bg1335\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.18.mlp.c_fc\", \"P_bg1338\", \"P_bg1339\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.18.mlp.c_proj\", \"P_bg1340\", \"P_bg1341\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.19.attn.in_proj_weight\", \"P_bg1340\", \"P_bg1341\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.19.attn.out_proj\", \"P_bg1340\", \"P_bg1341\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.19.mlp.c_fc\", \"P_bg1344\", \"P_bg1345\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.19.mlp.c_proj\", \"P_bg1346\", \"P_bg1347\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.2.attn.in_proj_weight\", \"P_bg1346\", \"P_bg1347\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.2.attn.out_proj\", \"P_bg1346\", \"P_bg1347\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.2.mlp.c_fc\", \"P_bg1350\", \"P_bg1351\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.2.mlp.c_proj\", \"P_bg1352\", \"P_bg1353\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.20.attn.in_proj_weight\", \"P_bg1352\", \"P_bg1353\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.20.attn.out_proj\", \"P_bg1352\", \"P_bg1353\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.20.mlp.c_fc\", \"P_bg1356\", \"P_bg1357\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.20.mlp.c_proj\", \"P_bg1358\", \"P_bg1359\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.21.attn.in_proj_weight\", \"P_bg1358\", \"P_bg1359\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.21.attn.out_proj\", \"P_bg1358\", \"P_bg1359\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.21.mlp.c_fc\", \"P_bg1362\", \"P_bg1363\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.21.mlp.c_proj\", \"P_bg1364\", \"P_bg1365\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.22.attn.in_proj_weight\", \"P_bg1364\", \"P_bg1365\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.22.attn.out_proj\", \"P_bg1364\", \"P_bg1365\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.22.mlp.c_fc\", \"P_bg1368\", \"P_bg1369\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.22.mlp.c_proj\", \"P_bg1370\", \"P_bg1371\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.23.attn.in_proj_weight\", \"P_bg1370\", \"P_bg1371\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.23.attn.out_proj\", \"P_bg1370\", \"P_bg1371\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.23.mlp.c_fc\", \"P_bg1374\", \"P_bg1375\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.23.mlp.c_proj\", \"P_bg1376\", \"P_bg1377\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.24.attn.in_proj_weight\", \"P_bg1376\", \"P_bg1377\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.24.attn.out_proj\", \"P_bg1376\", \"P_bg1377\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.24.mlp.c_fc\", \"P_bg1380\", \"P_bg1381\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.24.mlp.c_proj\", \"P_bg1382\", \"P_bg1383\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.25.attn.in_proj_weight\", \"P_bg1382\", \"P_bg1383\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.25.attn.out_proj\", \"P_bg1382\", \"P_bg1383\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.25.mlp.c_fc\", \"P_bg1386\", \"P_bg1387\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.25.mlp.c_proj\", \"P_bg1388\", \"P_bg1389\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.26.attn.in_proj_weight\", \"P_bg1388\", \"P_bg1389\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.26.attn.out_proj\", \"P_bg1388\", \"P_bg1389\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.26.mlp.c_fc\", \"P_bg1392\", \"P_bg1393\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.26.mlp.c_proj\", \"P_bg1394\", \"P_bg1395\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.27.attn.in_proj_weight\", \"P_bg1394\", \"P_bg1395\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.27.attn.out_proj\", \"P_bg1394\", \"P_bg1395\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.27.mlp.c_fc\", \"P_bg1398\", \"P_bg1399\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.27.mlp.c_proj\", \"P_bg1400\", \"P_bg1401\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.28.attn.in_proj_weight\", \"P_bg1400\", \"P_bg1401\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.28.attn.out_proj\", \"P_bg1400\", \"P_bg1401\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.28.mlp.c_fc\", \"P_bg1404\", \"P_bg1405\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.28.mlp.c_proj\", \"P_bg1406\", \"P_bg1407\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.29.attn.in_proj_weight\", \"P_bg1406\", \"P_bg1407\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.29.attn.out_proj\", \"P_bg1406\", \"P_bg1407\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.29.mlp.c_fc\", \"P_bg1410\", \"P_bg1411\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.29.mlp.c_proj\", \"P_bg1412\", \"P_bg1413\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.3.attn.in_proj_weight\", \"P_bg1412\", \"P_bg1413\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.3.attn.out_proj\", \"P_bg1412\", \"P_bg1413\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.3.mlp.c_fc\", \"P_bg1416\", \"P_bg1417\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.3.mlp.c_proj\", \"P_bg1418\", \"P_bg1419\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.30.attn.in_proj_weight\", \"P_bg1418\", \"P_bg1419\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.30.attn.out_proj\", \"P_bg1418\", \"P_bg1419\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.30.mlp.c_fc\", \"P_bg1422\", \"P_bg1423\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.30.mlp.c_proj\", \"P_bg1424\", \"P_bg1425\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.31.attn.in_proj_weight\", \"P_bg1424\", \"P_bg1425\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.31.attn.out_proj\", \"P_bg1424\", \"P_bg1425\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.31.mlp.c_fc\", \"P_bg1428\", \"P_bg1429\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.31.mlp.c_proj\", \"P_bg1430\", \"P_bg1431\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.4.attn.in_proj_weight\", \"P_bg1430\", \"P_bg1431\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.4.attn.out_proj\", \"P_bg1430\", \"P_bg1431\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.4.mlp.c_fc\", \"P_bg1434\", \"P_bg1435\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.4.mlp.c_proj\", \"P_bg1436\", \"P_bg1437\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.5.attn.in_proj_weight\", \"P_bg1436\", \"P_bg1437\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.5.attn.out_proj\", \"P_bg1436\", \"P_bg1437\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.5.mlp.c_fc\", \"P_bg1440\", \"P_bg1441\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.5.mlp.c_proj\", \"P_bg1442\", \"P_bg1443\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.6.attn.in_proj_weight\", \"P_bg1442\", \"P_bg1443\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.6.attn.out_proj\", \"P_bg1442\", \"P_bg1443\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.6.mlp.c_fc\", \"P_bg1446\", \"P_bg1447\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.6.mlp.c_proj\", \"P_bg1448\", \"P_bg1449\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.7.attn.in_proj_weight\", \"P_bg1448\", \"P_bg1449\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.7.attn.out_proj\", \"P_bg1448\", \"P_bg1449\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.7.mlp.c_fc\", \"P_bg1452\", \"P_bg1453\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.7.mlp.c_proj\", \"P_bg1454\", \"P_bg1455\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.8.attn.in_proj_weight\", \"P_bg1454\", \"P_bg1455\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.8.attn.out_proj\", \"P_bg1454\", \"P_bg1455\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.8.mlp.c_fc\", \"P_bg1458\", \"P_bg1459\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.8.mlp.c_proj\", \"P_bg1460\", \"P_bg1461\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.9.attn.in_proj_weight\", \"P_bg1460\", \"P_bg1461\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.9.attn.out_proj\", \"P_bg1460\", \"P_bg1461\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.9.mlp.c_fc\", \"P_bg1464\", \"P_bg1465\", bias=False),\n            **dense(\"conditioner.embedders.1.model.transformer.resblocks.9.mlp.c_proj\", \"P_bg1466\", \"P_bg1467\", bias=False),\n\n        }\n    )\n"
  },
  {
    "path": "modules/merging/merge_methods.py",
    "content": "import math\nfrom typing import Tuple\n\nimport torch\nfrom torch import Tensor\n\n__all__ = [ # noqa: RUF022\n    \"weighted_sum\",\n    \"weighted_subtraction\",\n    \"tensor_sum\",\n    \"add_difference\",\n    \"sum_twice\",\n    \"triple_sum\",\n    \"euclidean_add_difference\",\n    \"multiply_difference\",\n    \"top_k_tensor_sum\",\n    \"similarity_add_difference\",\n    \"distribution_crossover\",\n    \"ties_add_difference\",\n]\n\n\nEPSILON = 1e-10  # Define a small constant EPSILON to prevent division by zero\n\n\ndef weighted_sum(a: Tensor, b: Tensor, alpha: float, **kwargs) -> Tensor:  # pylint: disable=unused-argument\n    \"\"\"\n    Basic Merge:\n    alpha 0 returns Primary Model\n    alpha 1 returns Secondary Model\n    \"\"\"\n    return (1 - alpha) * a + alpha * b\n\n\ndef weighted_subtraction(a: Tensor, b: Tensor, alpha: float, beta: float, **kwargs) -> Tensor:  # pylint: disable=unused-argument\n    \"\"\"\n    The inverse of a Weighted Sum Merge\n    Returns Primary Model when alpha*beta = 0\n    High values of alpha*beta are likely to break the merged model\n    \"\"\"\n    # Adjust beta if both alpha and beta are 1.0 to avoid division by zero\n    if alpha == 1.0 and beta == 1.0:\n        beta -= EPSILON\n\n    return (a - alpha * beta * b) / (1 - alpha * beta)\n\n\ndef tensor_sum(a: Tensor, b: Tensor, alpha: float, beta: float, **kwargs) -> Tensor:  # pylint: disable=unused-argument\n    \"\"\"\n    Takes a slice of Secondary Model and pastes it into Primary Model\n    Alpha sets the width of the slice\n    Beta sets the start point of the slice\n    ie Alpha = 0.5 Beta = 0.25 is (ABBA) Alpha = 0.25 Beta = 0 is (BAAA)\n    \"\"\"\n    if alpha + beta <= 1:\n        tt = a.clone()\n        talphas = int(a.shape[0] * beta)\n        talphae = int(a.shape[0] * (alpha + beta))\n        tt[talphas:talphae] = b[talphas:talphae].clone()\n    else:\n        talphas = int(a.shape[0] * (alpha + beta - 1))\n        talphae = int(a.shape[0] * beta)\n        tt = b.clone()\n        tt[talphas:talphae] = a[talphas:talphae].clone()\n    return tt\n\n\ndef add_difference(a: Tensor, b: Tensor, c: Tensor, alpha: float, **kwargs) -> Tensor:  # pylint: disable=unused-argument\n    \"\"\"\n    Classic Add Difference Merge\n    \"\"\"\n    return a + alpha * (b - c)\n\n\ndef sum_twice(a: Tensor, b: Tensor, c: Tensor, alpha: float, beta: float, **kwargs) -> Tensor:  # pylint: disable=unused-argument\n    \"\"\"\n    Stacked Basic Merge:\n    Equivalent to Merging Primary and Secondary @ alpha\n    Then merging the result with Tertiary @ beta\n    \"\"\"\n    return (1 - beta) * ((1 - alpha) * a + alpha * b) + beta * c\n\n\ndef triple_sum(a: Tensor, b: Tensor, c: Tensor, alpha: float, beta: float, **kwargs) -> Tensor:  # pylint: disable=unused-argument\n    \"\"\"\n    Weights Secondary and Tertiary at alpha and beta respectively\n    Fills in the rest with Primary\n    Expect odd results if alpha + beta > 1 as Primary will be merged with a negative ratio\n    \"\"\"\n    return (1 - alpha - beta) * a + alpha * b + beta * c\n\n\ndef euclidean_add_difference(a: Tensor, b: Tensor, c: Tensor, alpha: float, **kwargs) -> Tensor:  # pylint: disable=unused-argument\n    \"\"\"\n    Subtract Primary and Secondary from Tertiary\n    Compare the remainders via Euclidean distance\n    Add to Tertiary\n    Note: Slow\n    \"\"\"\n    a_diff = a.float() - c.float()\n    b_diff = b.float() - c.float()\n    a_diff = torch.nan_to_num(a_diff / torch.linalg.norm(a_diff))\n    b_diff = torch.nan_to_num(b_diff / torch.linalg.norm(b_diff))\n\n    distance = (1 - alpha) * a_diff**2 + alpha * b_diff**2\n    distance = torch.sqrt(distance)\n    sum_diff = weighted_sum(a.float(), b.float(), alpha) - c.float()\n    distance = torch.copysign(distance, sum_diff)\n\n    target_norm = torch.linalg.norm(sum_diff)\n    return c + distance / torch.linalg.norm(distance) * target_norm\n\n\ndef multiply_difference(a: Tensor, b: Tensor, c: Tensor, alpha: float, beta: float, **kwargs) -> Tensor:  # pylint: disable=unused-argument\n    \"\"\"\n    Similar to Add Difference but with geometric mean instead of arithmatic mean\n    \"\"\"\n    diff_a = torch.pow(torch.abs(a.float() - c), (1 - alpha))\n    diff_b = torch.pow(torch.abs(b.float() - c), alpha)\n    difference = torch.copysign(diff_a * diff_b, weighted_sum(a, b, beta) - c)\n    return c + difference.to(c.dtype)\n\n\ndef top_k_tensor_sum(a: Tensor, b: Tensor, alpha: float, beta: float, **kwargs) -> Tensor:  # pylint: disable=unused-argument\n    \"\"\"\n    Redistributes the largest weights of Secondary Model into Primary Model\n    \"\"\"\n    a_flat = torch.flatten(a)\n    a_dist = torch.msort(a_flat)\n    b_indices = torch.argsort(torch.flatten(b), stable=True)\n    redist_indices = torch.argsort(b_indices)\n\n    start_i, end_i, region_is_inverted = ratio_to_region(alpha, beta, torch.numel(a))\n    start_top_k = kth_abs_value(a_dist, start_i)\n    end_top_k = kth_abs_value(a_dist, end_i)\n\n    indices_mask = (start_top_k < torch.abs(a_dist)) & (torch.abs(a_dist) <= end_top_k)\n    if region_is_inverted:\n        indices_mask = ~indices_mask\n    indices_mask = torch.gather(indices_mask.float(), 0, redist_indices)\n\n    a_redist = torch.gather(a_dist, 0, redist_indices)\n    a_redist = (1 - indices_mask) * a_flat + indices_mask * a_redist\n    return a_redist.reshape_as(a)\n\n\ndef kth_abs_value(a: Tensor, k: int) -> Tensor:\n    if k <= 0:\n        return torch.tensor(-1, device=a.device)\n    else:\n        return torch.kthvalue(torch.abs(a.float()), k)[0]\n\n\ndef ratio_to_region(width: float, offset: float, n: int) -> Tuple[int, int, bool]:\n    if width < 0:\n        offset += width\n        width = -width\n    width = min(width, 1)\n\n    if offset < 0:\n        offset = 1 + offset - int(offset)\n    offset = math.fmod(offset, 1.0)\n\n    if width + offset <= 1:\n        inverted = False\n        start = offset * n\n        end = (width + offset) * n\n    else:\n        inverted = True\n        start = (width + offset - 1) * n\n        end = offset * n\n\n    return round(start), round(end), inverted\n\n\ndef similarity_add_difference(a: Tensor, b: Tensor, c: Tensor, alpha: float, beta: float, **kwargs) -> Tensor:  # pylint: disable=unused-argument\n    \"\"\"\n    Weighted Sum where A and B are similar and Add Difference where A and B are dissimilar\n    \"\"\"\n    threshold = torch.maximum(torch.abs(a), torch.abs(b))\n    similarity = ((a * b / threshold**2) + 1) / 2\n    similarity = torch.nan_to_num(similarity * beta, nan=beta)\n\n    ab_diff = a + alpha * (b - c)\n    ab_sum = (1 - alpha / 2) * a + (alpha / 2) * b\n    return (1 - similarity) * ab_diff + similarity * ab_sum\n\n\ndef distribution_crossover(a: Tensor, b: Tensor, c: Tensor, alpha: float, beta: float, **kwargs):  # pylint: disable=unused-argument\n    \"\"\"\n    From the creator:\n    It's Primary high-passed + Secondary low-passed. Takes the fourrier transform of the weights of\n    Primary and Secondary when ordered with respect to Tertiary. Split the frequency domain\n    using a linear function. Alpha is the split frequency and Beta is the inclination of the line.\n    add everything under the line as the contribution of Primary and everything over the line as the contribution of Secondary\n    \"\"\"\n    if a.shape == ():\n        return alpha * a + (1 - alpha) * b\n\n    c_indices = torch.argsort(torch.flatten(c))\n    a_dist = torch.gather(torch.flatten(a), 0, c_indices)\n    b_dist = torch.gather(torch.flatten(b), 0, c_indices)\n\n    a_dft = torch.fft.rfft(a_dist.float())\n    b_dft = torch.fft.rfft(b_dist.float())\n\n    dft_filter = torch.arange(0, torch.numel(a_dft), device=a_dft.device).float()\n    dft_filter /= torch.numel(a_dft)\n    if beta > EPSILON:\n        dft_filter = (dft_filter - alpha) / beta + 1 / 2\n        dft_filter = torch.clamp(dft_filter, 0.0, 1.0)\n    else:\n        dft_filter = (dft_filter >= alpha).float()\n\n    x_dft = (1 - dft_filter) * a_dft + dft_filter * b_dft\n    x_dist = torch.fft.irfft(x_dft, a_dist.shape[0])\n    x_values = torch.gather(x_dist, 0, torch.argsort(c_indices))\n    return x_values.reshape_as(a)\n\n\ndef ties_add_difference(a: Tensor, b: Tensor, c: Tensor, alpha: float, beta: float, **kwargs) -> Tensor:  # pylint: disable=unused-argument\n    \"\"\"\n    An implementation of arXiv:2306.01708\n    \"\"\"\n    deltas = []\n    signs = []\n    for m in [a, b]:\n        deltas.append(filter_top_k(m - c, beta))\n        signs.append(torch.sign(deltas[-1]))\n\n    signs = torch.stack(signs, dim=0)\n    final_sign = torch.sign(torch.sum(signs, dim=0))\n    delta_filters = (signs == final_sign).float()\n\n    res = torch.zeros_like(c, device=c.device)\n    for delta_filter, delta in zip(delta_filters, deltas):\n        res += delta_filter * delta\n\n    param_count = torch.sum(delta_filters, dim=0)\n    return c + alpha * torch.nan_to_num(res / param_count)\n\n\ndef filter_top_k(a: Tensor, k: float):\n    k = max(int((1 - k) * torch.numel(a)), 1)\n    k_value, _ = torch.kthvalue(torch.abs(a.flatten()).float(), k)\n    top_k_filter = (torch.abs(a) >= k_value).float()\n    return a * top_k_filter\n"
  },
  {
    "path": "modules/merging/merge_presets.py",
    "content": "BLOCK_WEIGHTS_PRESETS = {\n    \"GRAD_V\": [0, 1, 0.9166666667, 0.8333333333, 0.75, 0.6666666667, 0.5833333333, 0.5, 0.4166666667, 0.3333333333, 0.25, 0.1666666667, 0.0833333333, 0, 0.0833333333, 0.1666666667, 0.25, 0.3333333333, 0.4166666667, 0.5, 0.5833333333, 0.6666666667, 0.75, 0.8333333333, 0.9166666667, 1.0],\n    \"GRAD_A\": [0, 0, 0.0833333333, 0.1666666667, 0.25, 0.3333333333, 0.4166666667, 0.5, 0.5833333333, 0.6666666667, 0.75, 0.8333333333, 0.9166666667, 1.0, 0.9166666667, 0.8333333333, 0.75, 0.6666666667, 0.5833333333, 0.5, 0.4166666667, 0.3333333333, 0.25, 0.1666666667, 0.0833333333, 0],\n    \"FLAT_25\": [0, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25],\n    \"FLAT_75\": [0, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75],\n    \"WRAP08\": [0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1],\n    \"WRAP12\": [0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1],\n    \"WRAP14\": [0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1],\n    \"WRAP16\": [0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1],\n    \"MID12_50\": [0, 0, 0, 0, 0, 0, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0, 0, 0, 0, 0, 0],\n    \"OUT07\": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1],\n    \"OUT12\": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],\n    \"OUT12_5\": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],\n    \"RING08_SOFT\": [0, 0, 0, 0, 0, 0, 0.5, 1, 1, 1, 0.5, 0, 0, 0, 0, 0, 0.5, 1, 1, 1, 0.5, 0, 0, 0, 0, 0],\n    \"RING08_5\": [0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0],\n    \"RING10_5\": [0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0],\n    \"RING10_3\": [0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0],\n    \"SMOOTHSTEP\": [0, 0, 0.00506365740740741, 0.0196759259259259, 0.04296875, 0.0740740740740741, 0.112123842592593, 0.15625, 0.205584490740741, 0.259259259259259, 0.31640625, 0.376157407407407, 0.437644675925926, 0.5, 0.562355324074074, 0.623842592592592, 0.68359375, 0.740740740740741, 0.794415509259259, 0.84375, 0.887876157407408, 0.925925925925926, 0.95703125, 0.980324074074074, 0.994936342592593, 1],\n    \"REVERSE_SMOOTHSTEP\": [0, 1, 0.994936342592593, 0.980324074074074, 0.95703125, 0.925925925925926, 0.887876157407407, 0.84375, 0.794415509259259, 0.740740740740741, 0.68359375, 0.623842592592593, 0.562355324074074, 0.5, 0.437644675925926, 0.376157407407408, 0.31640625, 0.259259259259259, 0.205584490740741, 0.15625, 0.112123842592592, 0.0740740740740742, 0.0429687499999996, 0.0196759259259258, 0.00506365740740744, 0],\n    \"2SMOOTHSTEP\": [0, 0, 0.0101273148148148, 0.0393518518518519, 0.0859375, 0.148148148148148, 0.224247685185185, 0.3125, 0.411168981481482, 0.518518518518519, 0.6328125, 0.752314814814815, 0.875289351851852, 1.0, 0.875289351851852, 0.752314814814815, 0.6328125, 0.518518518518519, 0.411168981481481, 0.3125, 0.224247685185184, 0.148148148148148, 0.0859375, 0.0393518518518512, 0.0101273148148153, 0],\n    \"2R_SMOOTHSTEP\": [0, 1, 0.989872685185185, 0.960648148148148, 0.9140625, 0.851851851851852, 0.775752314814815, 0.6875, 0.588831018518519, 0.481481481481481, 0.3671875, 0.247685185185185, 0.124710648148148, 0.0, 0.124710648148148, 0.247685185185185, 0.3671875, 0.481481481481481, 0.588831018518519, 0.6875, 0.775752314814816, 0.851851851851852, 0.9140625, 0.960648148148149, 0.989872685185185, 1],\n    \"3SMOOTHSTEP\": [0, 0, 0.0151909722222222, 0.0590277777777778, 0.12890625, 0.222222222222222, 0.336371527777778, 0.46875, 0.616753472222222, 0.777777777777778, 0.94921875, 0.871527777777778, 0.687065972222222, 0.5, 0.312934027777778, 0.128472222222222, 0.0507812500000004, 0.222222222222222, 0.383246527777778, 0.53125, 0.663628472222223, 0.777777777777778, 0.87109375, 0.940972222222222, 0.984809027777777, 1],\n    \"3R_SMOOTHSTEP\": [0, 1, 0.984809027777778, 0.940972222222222, 0.87109375, 0.777777777777778, 0.663628472222222, 0.53125, 0.383246527777778, 0.222222222222222, 0.05078125, 0.128472222222222, 0.312934027777778, 0.5, 0.687065972222222, 0.871527777777778, 0.94921875, 0.777777777777778, 0.616753472222222, 0.46875, 0.336371527777777, 0.222222222222222, 0.12890625, 0.0590277777777777, 0.0151909722222232, 0],\n    \"4SMOOTHSTEP\": [0, 0, 0.0202546296296296, 0.0787037037037037, 0.171875, 0.296296296296296, 0.44849537037037, 0.625, 0.822337962962963, 0.962962962962963, 0.734375, 0.49537037037037, 0.249421296296296, 0.0, 0.249421296296296, 0.495370370370371, 0.734375000000001, 0.962962962962963, 0.822337962962962, 0.625, 0.448495370370369, 0.296296296296297, 0.171875, 0.0787037037037024, 0.0202546296296307, 0],\n    \"4R_SMOOTHSTEP\": [0, 1, 0.97974537037037, 0.921296296296296, 0.828125, 0.703703703703704, 0.55150462962963, 0.375, 0.177662037037037, 0.0370370370370372, 0.265625, 0.50462962962963, 0.750578703703704, 1.0, 0.750578703703704, 0.504629629629629, 0.265624999999999, 0.0370370370370372, 0.177662037037038, 0.375, 0.551504629629631, 0.703703703703703, 0.828125, 0.921296296296298, 0.979745370370369, 1],\n    \"HALF_SMOOTHSTEP\": [0, 0, 0.0196759259259259, 0.0740740740740741, 0.15625, 0.259259259259259, 0.376157407407407, 0.5, 0.623842592592593, 0.740740740740741, 0.84375, 0.925925925925926, 0.980324074074074, 1.0, 0.980324074074074, 0.925925925925926, 0.84375, 0.740740740740741, 0.623842592592593, 0.5, 0.376157407407407, 0.259259259259259, 0.15625, 0.0740740740740741, 0.0196759259259259, 0],\n    \"HALF_R_SMOOTHSTEP\": [0, 1, 0.980324074074074, 0.925925925925926, 0.84375, 0.740740740740741, 0.623842592592593, 0.5, 0.376157407407407, 0.259259259259259, 0.15625, 0.0740740740740742, 0.0196759259259256, 0.0, 0.0196759259259256, 0.0740740740740742, 0.15625, 0.259259259259259, 0.376157407407407, 0.5, 0.623842592592593, 0.740740740740741, 0.84375, 0.925925925925926, 0.980324074074074, 1],\n    \"ONE_THIRD_SMOOTHSTEP\": [0, 0, 0.04296875, 0.15625, 0.31640625, 0.5, 0.68359375, 0.84375, 0.95703125, 1.0, 0.95703125, 0.84375, 0.68359375, 0.5, 0.31640625, 0.15625, 0.04296875, 0.0, 0.04296875, 0.15625, 0.31640625, 0.5, 0.68359375, 0.84375, 0.95703125, 1],\n    \"ONE_THIRD_R_SMOOTHSTEP\": [0, 1, 0.95703125, 0.84375, 0.68359375, 0.5, 0.31640625, 0.15625, 0.04296875, 0.0, 0.04296875, 0.15625, 0.31640625, 0.5, 0.68359375, 0.84375, 0.95703125, 1.0, 0.95703125, 0.84375, 0.68359375, 0.5, 0.31640625, 0.15625, 0.04296875, 0],\n    \"ONE_FOURTH_SMOOTHSTEP\": [0, 0, 0.0740740740740741, 0.259259259259259, 0.5, 0.740740740740741, 0.925925925925926, 1.0, 0.925925925925926, 0.740740740740741, 0.5, 0.259259259259259, 0.0740740740740741, 0.0, 0.0740740740740741, 0.259259259259259, 0.5, 0.740740740740741, 0.925925925925926, 1.0, 0.925925925925926, 0.740740740740741, 0.5, 0.259259259259259, 0.0740740740740741, 0],\n    \"ONE_FOURTH_R_SMOOTHSTEP\": [0, 1, 0.925925925925926, 0.740740740740741, 0.5, 0.259259259259259, 0.0740740740740742, 0.0, 0.0740740740740742, 0.259259259259259, 0.5, 0.740740740740741, 0.925925925925926, 1.0, 0.925925925925926, 0.740740740740741, 0.5, 0.259259259259259, 0.0740740740740742, 0.0, 0.0740740740740742, 0.259259259259259, 0.5, 0.740740740740741, 0.925925925925926, 1],\n    \"COSINE\": [0, 1, 0.995722430686905, 0.982962913144534, 0.961939766255643, 0.933012701892219, 0.896676670145617, 0.853553390593274, 0.80438071450436, 0.75, 0.691341716182545, 0.62940952255126, 0.565263096110026, 0.5, 0.434736903889974, 0.37059047744874, 0.308658283817455, 0.25, 0.195619285495639, 0.146446609406726, 0.103323329854382, 0.0669872981077805, 0.0380602337443566, 0.0170370868554658, 0.00427756931309475, 0],\n    \"REVERSE_COSINE\": [0, 0, 0.00427756931309475, 0.0170370868554659, 0.0380602337443566, 0.0669872981077808, 0.103323329854383, 0.146446609406726, 0.19561928549564, 0.25, 0.308658283817455, 0.37059047744874, 0.434736903889974, 0.5, 0.565263096110026, 0.62940952255126, 0.691341716182545, 0.75, 0.804380714504361, 0.853553390593274, 0.896676670145618, 0.933012701892219, 0.961939766255643, 0.982962913144534, 0.995722430686905, 1],\n    \"CUBIC_HERMITE\": [0, 0, 0.157576195987654, 0.28491512345679, 0.384765625, 0.459876543209877, 0.512996720679012, 0.546875, 0.564260223765432, 0.567901234567901, 0.560546875, 0.544945987654321, 0.523847415123457, 0.5, 0.476152584876543, 0.455054012345679, 0.439453125, 0.432098765432099, 0.435739776234568, 0.453125, 0.487003279320987, 0.540123456790124, 0.615234375, 0.71508487654321, 0.842423804012347, 1],\n    \"REVERSE_CUBIC_HERMITE\": [0, 1, 0.842423804012346, 0.71508487654321, 0.615234375, 0.540123456790123, 0.487003279320988, 0.453125, 0.435739776234568, 0.432098765432099, 0.439453125, 0.455054012345679, 0.476152584876543, 0.5, 0.523847415123457, 0.544945987654321, 0.560546875, 0.567901234567901, 0.564260223765432, 0.546875, 0.512996720679013, 0.459876543209876, 0.384765625, 0.28491512345679, 0.157576195987653, 0],\n    \"ALL_A\": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],\n    \"ALL_B\": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],\n}\n\n\nSDXL_BLOCK_WEIGHTS_PRESETS = {\n    \"SDXL_GRAD_V\": [0, 1.0, 0.888889, 0.777778, 0.666667, 0.555556, 0.444444, 0.333333, 0.222222, 0.111111, 0.0, 0.111111, 0.222222, 0.333333, 0.444444, 0.555556, 0.666667, 0.777778, 0.888889, 1.0],\n    \"SDXL_GRAD_A\": [0, 0.0, 0.111111, 0.222222, 0.333333, 0.444444, 0.555556, 0.666667, 0.777778, 0.888889, 1.0, 0.888889, 0.777778, 0.666667, 0.555556, 0.444444, 0.333333, 0.222222, 0.111111, 0.0],\n    \"SDXL_FLAT_25\": [0, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25, 0.25],\n    \"SDXL_FLAT_75\": [0, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75, 0.75],\n    \"SDXL_WRAP08\": [0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1],\n    \"SDXL_WRAP12\": [0, 1, 1, 1, 1, 1, 1, 0, 0, 0,  0, 0, 0, 0, 1, 1, 1, 1, 1, 1],\n    \"SDXL_WRAP14\": [0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1],\n    \"SDXL_OUT07\": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1],\n    \"SDXL_SMOOTHSTEP\": [0, 0, 0.008916, 0.034294, 0.074074, 0.126200, 0.188615, 0.259259, 0.336077, 0.417010, 0.500000, 0.582990, 0.663923, 0.740741, 0.811385, 0.873800, 0.925926, 0.965706, 0.991084, 1],\n    \"SDXL_REVERSE_SMOOTHSTEP\": [0, 1, 0.991084, 0.965706, 0.925926, 0.873800, 0.811385, 0.740741, 0.663923, 0.582990, 0.500000, 0.417010, 0.336077, 0.259259, 0.188615, 0.126200, 0.074074, 0.034294, 0.008916, 0],\n    \"SDXL_HALF_SMOOTHSTEP\": [0, 0, 0.034294, 0.126200, 0.259259, 0.417010, 0.582990, 0.740741, 0.873800, 0.965706, 1, 0.965706, 0.873800, 0.740741, 0.582990, 0.417010, 0.259259, 0.126200, 0.034294, 0],\n    \"SDXL_HALF_R_SMOOTHSTEP\": [0, 1, 0.965706, 0.873800, 0.740741, 0.582990, 0.417010, 0.259259, 0.126200, 0.034294, 0, 0.034294, 0.126200, 0.259259, 0.417010, 0.582990, 0.740741, 0.873800, 0.965706, 1],\n    \"SDXL_ONE_THIRD_SMOOTHSTEP\": [0, 0, 0.074074, 0.259259, 0.500000, 0.740741, 0.925926, 1, 0.907407, 0.592593, 0, 0.592593, 0.907407, 1, 0.925926, 0.740741, 0.500000, 0.259259, 0.074074, 0],\n    \"SDXL_ONE_THIRD_R_SMOOTHSTEP\": [0, 1, 0.925926, 0.740741, 0.500000, 0.259259, 0.074074, 0, 0.092593, 0.407407, 1, 0.407407, 0.092593, 0, 0.074074, 0.259259, 0.500000, 0.740741, 0.925926, 1],\n    \"SDXL_COSINE\": [0, 1, 0.992404, 0.969846, 0.933013, 0.883022, 0.821394, 0.750000, 0.671010, 0.586824, 0.500000, 0.413176, 0.328990, 0.250000, 0.178606, 0.116978, 0.066987, 0.030154, 0.007596, 0],\n    \"SDXL_REVERSE_COSINE\": [0, 0, 0.007596, 0.030154, 0.066987, 0.116978, 0.178606, 0.250000, 0.328990, 0.413176, 0.500000, 0.586824, 0.671010, 0.750000, 0.821394, 0.883022, 0.933013, 0.969846, 0.992404, 1],\n    \"SDXL_CUBIC_HERMITE\": [0, 0, 0.268023, 0.461058, 0.588477, 0.659656, 0.683966, 0.670782, 0.629477, 0.569425, 0.500000, 0.430575, 0.370523, 0.329218, 0.316034, 0.340344, 0.411523, 0.538942, 0.731977, 1],\n    \"SDXL_REVERSE_CUBIC_HERMITE\": [0, 1, 0.731977, 0.538942, 0.411523, 0.340344, 0.316034, 0.329218, 0.370523, 0.430575, 0.500000, 0.569425, 0.629477, 0.670782, 0.683966, 0.659656, 0.588477, 0.461058, 0.268023, 0],\n    \"SDXL_ALL_A\": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],\n    \"SDXL_ALL_B\": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],\n}\n"
  },
  {
    "path": "modules/merging/merge_rebasin.py",
    "content": "# https://github.com/ogkalu2/Merge-Stable-Diffusion-models-without-distortion\nfrom collections import defaultdict\nfrom random import shuffle\nfrom typing import NamedTuple\nimport torch\nfrom scipy.optimize import linear_sum_assignment\nfrom installer import log\n\n\nSPECIAL_KEYS = [\n    \"first_stage_model.decoder.norm_out.weight\",\n    \"first_stage_model.decoder.norm_out.bias\",\n    \"first_stage_model.encoder.norm_out.weight\",\n    \"first_stage_model.encoder.norm_out.bias\",\n    \"model.diffusion_model.out.0.weight\",\n    \"model.diffusion_model.out.0.bias\",\n]\n\n\nclass PermutationSpec(NamedTuple):\n    perm_to_axes: dict\n    axes_to_perm: dict\n\n\ndef permutation_spec_from_axes_to_perm(axes_to_perm: dict) -> PermutationSpec:\n    perm_to_axes = defaultdict(list)\n    for wk, axis_perms in axes_to_perm.items():\n        for axis, perm in enumerate(axis_perms):\n            if perm is not None:\n                perm_to_axes[perm].append((wk, axis))\n    return PermutationSpec(perm_to_axes=dict(perm_to_axes), axes_to_perm=axes_to_perm)\n\n\ndef get_permuted_param(ps: PermutationSpec, perm, k: str, params, except_axis=None):\n    \"\"\"Get parameter `k` from `params`, with the permutations applied.\"\"\"\n    w = params[k]\n    for axis, p in enumerate(ps.axes_to_perm[k]):\n        # Skip the axis we're trying to permute.\n        if axis == except_axis:\n            continue\n\n        # None indicates that there is no permutation relevant to that axis.\n        if p:\n            w = torch.index_select(w, axis, perm[p].int())\n\n    return w\n\n\ndef apply_permutation(ps: PermutationSpec, perm, params):\n    \"\"\"Apply a `perm` to `params`.\"\"\"\n    return {k: get_permuted_param(ps, perm, k, params) for k in params.keys()}\n\n\ndef update_model_a(ps: PermutationSpec, perm, model_a, new_alpha):\n    for k in model_a:\n        try:\n            perm_params = get_permuted_param(\n                ps, perm, k, model_a\n            )\n            model_a[k] = model_a[k] * (1 - new_alpha) + new_alpha * perm_params\n        except RuntimeError:  # dealing with pix2pix and inpainting models\n            continue\n    return model_a\n\n\ndef inner_matching(\n    n,\n    ps,\n    p,\n    params_a,\n    params_b,\n    usefp16,\n    progress,\n    number,\n    linear_sum,\n    perm,\n    device,\n):\n    A = torch.zeros((n, n), dtype=torch.float16) if usefp16 else torch.zeros((n, n))\n    A = A.to(device)\n\n    for wk, axis in ps.perm_to_axes[p]:\n        w_a = params_a[wk]\n        w_b = get_permuted_param(ps, perm, wk, params_b, except_axis=axis)\n        w_a = torch.moveaxis(w_a, axis, 0).reshape((n, -1)).to(device)\n        w_b = torch.moveaxis(w_b, axis, 0).reshape((n, -1)).T.to(device)\n\n        if usefp16:\n            w_a = w_a.half().to(device)\n            w_b = w_b.half().to(device)\n\n        try:\n            A += torch.matmul(w_a, w_b)\n        except RuntimeError:\n            A += torch.matmul(torch.dequantize(w_a), torch.dequantize(w_b))\n\n    A = A.cpu()\n    ri, ci = linear_sum_assignment(A.detach().numpy(), maximize=True)\n    A = A.to(device)\n\n    assert (torch.tensor(ri) == torch.arange(len(ri))).all()\n\n    eye_tensor = torch.eye(n).to(device)\n\n    oldL = torch.vdot(\n        torch.flatten(A).float(), torch.flatten(eye_tensor[perm[p].long()])\n    )\n    newL = torch.vdot(torch.flatten(A).float(), torch.flatten(eye_tensor[ci, :]))\n\n    if usefp16:\n        oldL = oldL.half()\n        newL = newL.half()\n\n    if newL - oldL != 0:\n        linear_sum += abs((newL - oldL).item())\n        number += 1\n        log.debug(f\"Merge Rebasin permutation: {p}={newL-oldL}\")\n\n    progress = progress or newL > oldL + 1e-12\n\n    perm[p] = torch.Tensor(ci).to(device)\n\n    return linear_sum, number, perm, progress\n\n\ndef weight_matching(\n    ps: PermutationSpec,\n    params_a,\n    params_b,\n    max_iter=1,\n    init_perm=None,\n    usefp16=False,\n    device=\"cpu\",\n):\n    perm_sizes = {\n        p: params_a[axes[0][0]].shape[axes[0][1]]\n        for p, axes in ps.perm_to_axes.items()\n        if axes[0][0] in params_a.keys()\n    }\n    perm = {}\n    perm = (\n        {p: torch.arange(n).to(device) for p, n in perm_sizes.items()}\n        if init_perm is None\n        else init_perm\n    )\n\n    linear_sum = 0\n    number = 0\n\n    special_layers = [\"P_bg324\"]\n    for _i in range(max_iter):\n        progress = False\n        shuffle(special_layers)\n        for p in special_layers:\n            n = perm_sizes[p]\n            linear_sum, number, perm, progress = inner_matching(\n                n,\n                ps,\n                p,\n                params_a,\n                params_b,\n                usefp16,\n                progress,\n                number,\n                linear_sum,\n                perm,\n                device,\n            )\n        progress = True\n        if not progress:\n            break\n\n    average = linear_sum / number if number > 0 else 0\n    return perm, average\n"
  },
  {
    "path": "modules/merging/merge_utils.py",
    "content": "import inspect\nimport re\nfrom modules.merging import merge_methods\nfrom modules.merging.merge_presets import BLOCK_WEIGHTS_PRESETS, SDXL_BLOCK_WEIGHTS_PRESETS\n\nALL_PRESETS = {}\nALL_PRESETS.update(BLOCK_WEIGHTS_PRESETS)\nALL_PRESETS.update(SDXL_BLOCK_WEIGHTS_PRESETS)\n\nMERGE_METHODS = dict(inspect.getmembers(merge_methods, inspect.isfunction))\nBETA_METHODS = [\n    name\n    for name, fn in MERGE_METHODS.items()\n    if \"beta\" in inspect.getfullargspec(fn)[0]\n]\nTRIPLE_METHODS = [\n    name\n    for name, fn in MERGE_METHODS.items()\n    if \"c\" in inspect.getfullargspec(fn)[0]\n]\n\n\ndef interpolate(values, interp_lambda):\n    interpolated = []\n    for i in range(len(values[0])):\n        interpolated.append((1 - interp_lambda) * values[0][i] + interp_lambda * values[1][i])\n    return interpolated\n\n\nclass WeightClass:\n    def __init__(self,\n                 model_a,\n                 **kwargs,\n                 ):\n        self.SDXL = \"model.diffusion_model.middle_block.1.transformer_blocks.9.norm3.weight\" in model_a.keys()\n        self.NUM_INPUT_BLOCKS = 12 if not self.SDXL else 9\n        self.NUM_MID_BLOCK = 1\n        self.NUM_OUTPUT_BLOCKS = 12 if not self.SDXL else 9\n        self.NUM_TOTAL_BLOCKS = self.NUM_INPUT_BLOCKS + self.NUM_MID_BLOCK + self.NUM_OUTPUT_BLOCKS\n        self.iterations = kwargs.get(\"re_basin_iterations\", 1)\n        self.it = 0\n        self.re_basin = kwargs.get(\"re_basin\", False)\n        self.ratioDict = {}\n        for key, value in kwargs.items():\n            if isinstance(value, list) or (key.lower() not in [\"alpha\", \"beta\"]):\n                self.ratioDict[key.lower()] = value\n            else:\n                self.ratioDict[key.lower()] = [value]\n\n        for key, value in self.ratioDict.items():\n            if key in [\"alpha\", \"beta\"]:\n                for i, v in enumerate(value):\n                    if isinstance(v, str) and v.upper() in BLOCK_WEIGHTS_PRESETS.keys():\n                        value[i] = BLOCK_WEIGHTS_PRESETS[v.upper()]\n                    else:\n                        value[i] = [float(x) for x in v.split(\",\")] if isinstance(v, str) else v\n                        if not isinstance(value[i], list):\n                            value[i] = [value[i]] * (self.NUM_TOTAL_BLOCKS + 1)\n                if len(value) > 1 and isinstance(value[0], list):\n                    self.ratioDict[key] = interpolate(value, self.ratioDict.get(key + \"_lambda\", 0))\n                else:\n                    self.ratioDict[key] = self.ratioDict[key][0]\n\n    def __call__(self, key, it=0):\n        current_bases = {}\n        if \"alpha\" in self.ratioDict:\n            current_bases[\"alpha\"] = self.step_weights_and_bases(self.ratioDict[\"alpha\"])\n        if \"beta\" in self.ratioDict:\n            current_bases[\"beta\"] = self.step_weights_and_bases(self.ratioDict[\"beta\"])\n\n        weight_index = 0\n        if \"model\" in key:\n\n            if \"model.diffusion_model.\" in key:\n                weight_index = -1\n\n                re_inp = re.compile(r\"\\.input_blocks\\.(\\d+)\\.\")  # 12\n                re_mid = re.compile(r\"\\.middle_block\\.(\\d+)\\.\")  # 1\n                re_out = re.compile(r\"\\.output_blocks\\.(\\d+)\\.\")  # 12\n\n                if \"time_embed\" in key:\n                    weight_index = 0  # before input blocks\n                elif \".out.\" in key:\n                    weight_index = self.NUM_TOTAL_BLOCKS - 1  # after output blocks\n                elif m := re_inp.search(key):\n                    weight_index = int(m.groups()[0])\n                elif re_mid.search(key):\n                    weight_index = self.NUM_INPUT_BLOCKS\n                elif m := re_out.search(key):\n                    weight_index = self.NUM_INPUT_BLOCKS + self.NUM_MID_BLOCK + int(m.groups()[0])\n\n                if weight_index >= self.NUM_TOTAL_BLOCKS:\n                    raise ValueError(f\"illegal block index {key}\")\n\n        current_bases = {k: w[weight_index] for k, w in current_bases.items()}\n        return current_bases\n\n    def step_weights_and_bases(self, ratio):\n        if not self.re_basin:\n            return ratio\n\n        new_ratio = [\n            1 - (1 - (1 + self.it) * v / self.iterations) / (1 - self.it * v / self.iterations)\n            if self.it > 0\n            else v / self.iterations\n            for v in ratio\n        ]\n        return new_ratio\n\n    def set_it(self, it):\n        self.it = it\n"
  },
  {
    "path": "modules/merging/modules_sdxl.py",
    "content": "import io\nimport os\nimport json\nimport base64\nfrom datetime import datetime\nfrom PIL import Image\nimport torch\nfrom safetensors.torch import load_file\nimport diffusers\nimport transformers\nfrom modules import shared, devices, errors\n\n\nclass Recipe:\n    author = ''\n    name = ''\n    version = ''\n    desc = ''\n    hint = ''\n    license = ''\n    prediction = ''\n    thumbnail = None\n    base = None\n    unet = None\n    vae = None\n    te1 = None\n    te2 = None\n    scheduler = 'UniPCMultistepScheduler'\n    dtype = torch.float16\n    diffusers = True\n    safetensors = True\n    debug = False\n    lora = {\n    }\n    fuse = 1.0\n\n    def __repr__(self):\n        return f'Recipe(name=\"{self.name}\" version=\"{self.version}\" author=\"{self.author}\" desc=\"{self.desc}\" hint=\"{self.hint}\" license=\"{self.license}\" dtype=\"{self.dtype}\" fuse={self.fuse} diffusers={self.diffusers} safetensors={self.safetensors})'\n\n\nclass Test:\n    generate = True\n    prompt = 'astronaut in a diner drinking coffee with burger and french fries on the table'\n    negative = 'ugly, blurry'\n    width = 1024\n    height = 1024\n    guidance = 4\n    steps = 20\n\n\nrecipe = Recipe()\ntest = Test()\npipeline: diffusers.StableDiffusionXLPipeline = None\nstatus = ''\n\n\ndef msg(text, err:bool=False):\n    global status # pylint: disable=global-statement\n    if err:\n        shared.log.error(f'Modules merge: {text}')\n    else:\n        shared.log.info(f'Modules merge: {text}')\n    status += text + '<br>'\n    return status\n\n\ndef load_base(override:str=None):\n    global pipeline # pylint: disable=global-statement\n    fn = override or recipe.base\n    yield msg(f'base={fn}')\n    if os.path.isfile(fn):\n        pipeline = diffusers.StableDiffusionXLPipeline.from_single_file(fn, cache_dir=shared.opts.hfcache_dir, torch_dtype=recipe.dtype, add_watermarker=False)\n    elif os.path.isdir(fn):\n        pipeline = diffusers.StableDiffusionXLPipeline.from_pretrained(fn, cache_dir=shared.opts.hfcache_dir, torch_dtype=recipe.dtype, add_watermarker=False)\n    else:\n        yield msg('base: not found')\n        return\n    pipeline.vae.register_to_config(force_upcast = False)\n\n\ndef load_unet(pipe: diffusers.StableDiffusionXLPipeline, override:str=None):\n    if (recipe.unet is None or len(recipe.unet) == 0) and override is None:\n        return\n    fn = override or recipe.unet\n    if not os.path.isabs(fn):\n        fn = os.path.join(shared.opts.unet_dir, fn)\n    if not fn.endswith('.safetensors'):\n        fn += '.safetensors'\n    yield msg(f'unet={fn}')\n    if recipe.debug:\n        yield msg(f'config={pipe.unet.config}')\n    try:\n        unet = diffusers.UNet2DConditionModel.from_config(pipe.unet.config).to(recipe.dtype)\n        state_dict = load_file(fn)\n        unet.load_state_dict(state_dict)\n        pipe.unet = unet.to(device=devices.device, dtype=recipe.dtype)\n    except Exception as e:\n        yield msg(f'unet: {e}')\n\n\ndef load_scheduler(pipe: diffusers.StableDiffusionXLPipeline, override:str=None):\n    if recipe.scheduler is None and override is None:\n        return\n    config = pipe.scheduler.config.__dict__\n    scheduler = override or recipe.scheduler\n    yield msg(f'scheduler={scheduler}')\n    if recipe.debug:\n        yield msg(f'config={config}')\n    try:\n        pipe.scheduler = getattr(diffusers, scheduler).from_config(config)\n    except Exception as e:\n        yield msg(f'scheduler: {e}')\n\n\n\ndef load_vae(pipe: diffusers.StableDiffusionXLPipeline, override:str=None):\n    if (recipe.vae is None or len(recipe.vae) == 0)and override is None:\n        return\n    fn = override or recipe.vae\n    if not os.path.isabs(fn):\n        fn = os.path.join(shared.opts.vae_dir, fn)\n    if not fn.endswith('.safetensors'):\n        fn += '.safetensors'\n    try:\n        vae = diffusers.AutoencoderKL.from_single_file(fn, cache_dir=shared.opts.hfcache_dir, torch_dtype=recipe.dtype)\n        vae.config.force_upcast = False\n        vae.config.scaling_factor = 0.13025\n        vae.config.sample_size = 1024\n        yield msg(f'vae={fn}')\n        if recipe.debug:\n            yield msg(f'config={pipe.vae.config}')\n        pipe.vae = vae.to(device=devices.device, dtype=recipe.dtype)\n    except Exception as e:\n        yield msg(f'vae: {e}')\n\n\ndef load_te1(pipe: diffusers.StableDiffusionXLPipeline, override:str=None):\n    if (recipe.te1 is None or len(recipe.te1) == 0) and override is None:\n        return\n    config = pipe.text_encoder.config.__dict__\n    pretrained_config = transformers.PretrainedConfig.from_dict(config)\n    fn = override or recipe.te1\n    if not os.path.isabs(fn):\n        fn = os.path.join(shared.opts.te_dir, fn)\n    if not fn.endswith('.safetensors'):\n        fn += '.safetensors'\n    yield msg(f'te1={fn}')\n    if recipe.debug:\n        yield msg(f'config={config}')\n    try:\n        state_dict = load_file(fn)\n        te1 = transformers.CLIPTextModel.from_pretrained(pretrained_model_name_or_path=None, state_dict=state_dict, config=pretrained_config, cache_dir=shared.opts.hfcache_dir)\n        pipe.text_encoder = te1.to(device=devices.device, dtype=recipe.dtype)\n    except Exception as e:\n        yield msg(f'te1: {e}')\n\n\ndef load_te2(pipe: diffusers.StableDiffusionXLPipeline, override:str=None):\n    if (recipe.te2 is None or len(recipe.te2) == 0) and override is None:\n        return\n    config = pipe.text_encoder_2.config.__dict__\n    pretrained_config = transformers.PretrainedConfig.from_dict(config)\n    fn = override or recipe.te2\n    if not os.path.isabs(fn):\n        fn = os.path.join(shared.opts.te_dir, fn)\n    if not fn.endswith('.safetensors'):\n        fn += '.safetensors'\n    yield msg(f'te2={recipe.te2}')\n    if recipe.debug:\n        yield msg(f'config={config}')\n    try:\n        state_dict = load_file(fn)\n        te2 = transformers.CLIPTextModelWithProjection.from_pretrained(pretrained_model_name_or_path=None, state_dict=state_dict, config=pretrained_config, cache_dir=shared.opts.hfcache_dir)\n        pipe.text_encoder_2 = te2.to(device=devices.device, dtype=recipe.dtype)\n    except Exception as e:\n        yield msg(f'te2: {e}')\n\n\ndef load_lora(pipe: diffusers.StableDiffusionXLPipeline, override: dict=None, fuse: float=None):\n    if recipe.lora is None and override is None:\n        return\n    names = []\n    pipe.unfuse_lora()\n    pipe.unload_lora_weights()\n    loras = override or recipe.lora\n    for lora, weight in loras.items():\n        try:\n            fn = lora\n            if not os.path.isabs(fn):\n                fn = os.path.join(shared.opts.lora_dir, fn)\n            if not fn.endswith('.safetensors'):\n                fn += '.safetensors'\n            yield msg(f'lora={fn} weight={weight} fuse={fuse or recipe.fuse}')\n            name = os.path.splitext(os.path.basename(lora))[0].replace('.', '').replace(' ', '').replace('-', '').replace('_', '')\n            names.append(name)\n            pipe.load_lora_weights(fn, name)\n        except Exception as e:\n            yield msg(f'lora: {e}')\n    if len(names) > 0:\n        pipe.set_adapters(adapter_names=names, adapter_weights=list(loras.values()))\n        pipe.fuse_lora(adapter_names=names, lora_scale=fuse or recipe.fuse, components=[\"unet\", \"text_encoder\", \"text_encoder_2\"])\n        pipe.unload_lora_weights()\n\n\ndef test_model(pipe: diffusers.StableDiffusionXLPipeline, fn: str, **kwargs):\n    if not test.generate:\n        return\n    try:\n        generator = torch.Generator(devices.device).manual_seed(int(4242))\n        args = {\n            'prompt': test.prompt,\n            'negative_prompt': test.negative,\n            'num_inference_steps': test.steps,\n            'width': test.width,\n            'height': test.height,\n            'guidance_scale': test.guidance,\n            'generator': generator,\n        }\n        args.update(kwargs)\n        yield msg(f'test={args}')\n        image = pipe(**args).images[0]\n        yield msg(f'image={fn} {image}')\n        image.save(fn)\n    except Exception as e:\n        yield msg(f'test: {e}')\n\n\ndef get_thumbnail():\n    if recipe.thumbnail is None:\n        return ''\n    image = Image.open(recipe.thumbnail)\n    image = image.convert('RGB')\n    image.thumbnail((512, 512), resample=Image.Resampling.LANCZOS)\n    buffer = io.BytesIO()\n    image.save(buffer, format=\"JPEG\", quality=50)\n    b64encoded = base64.b64encode(buffer.getvalue()).decode(\"utf-8\")\n    return f'data:image/jpeg;base64,{b64encoded}'\n\n\ndef get_metadata():\n    return {\n        \"modelspec.sai_model_spec\": \"1.0.0\",\n        \"modelspec.architecture\": \"stable-diffusion-xl-v1-base\",\n        \"modelspec.implementation\": \"diffusers\",\n        \"modelspec.title\": recipe.name,\n        \"modelspec.version\": recipe.version,\n        \"modelspec.description\": recipe.desc,\n        \"modelspec.author\": recipe.author,\n        \"modelspec.date\": datetime.now().isoformat(timespec='minutes'),\n        \"modelspec.license\": recipe.license,\n        \"modelspec.usage_hint\": recipe.hint,\n        \"modelspec.prediction_type\": recipe.prediction,\n        \"modelspec.dtype\": str(recipe.dtype).split('.')[1],\n        \"modelspec.hash_sha256\": \"\",\n        \"modelspec.thumbnail\": get_thumbnail(),\n        \"recipe\": json.dumps({\n            \"base\": os.path.basename(recipe.base) if recipe.base else \"default\",\n            \"unet\": os.path.basename(recipe.unet) if recipe.unet else \"default\",\n            \"vae\": os.path.basename(recipe.vae) if recipe.vae else \"default\",\n            \"te1\": os.path.basename(recipe.te1) if recipe.te1 else \"default\",\n            \"te2\": os.path.basename(recipe.te2) if recipe.te2 else \"default\",\n            \"scheduler\": recipe.scheduler or \"default\",\n            \"lora\": [f'{os.path.basename(k)}:{v}' for k, v in recipe.lora.items()],\n        }),\n    }\n\n\ndef save_model(pipe: diffusers.StableDiffusionXLPipeline):\n    author = recipe.author if len(recipe.author) > 0 else 'anonymous'\n    folder = os.path.join(shared.opts.diffusers_dir, f'models--{author}--{recipe.name}')\n    if len(recipe.version) > 0:\n        folder += f'-{recipe.version}'\n    if not (recipe.diffusers or recipe.safetensors):\n        shared.log.debug(f'Modules merge: type=sdxl {recipe} skipping save')\n        return\n    try:\n        yield msg('save')\n        yield msg(f'pretrained={folder}')\n        shared.log.info(f'Modules merge save: type=sdxl diffusers=\"{folder}\"')\n        pipe.save_pretrained(folder, safe_serialization=True, push_to_hub=False)\n        with open(os.path.join(folder, 'vae', 'config.json'), 'r', encoding='utf8') as f:\n            vae_config = json.load(f)\n            vae_config['force_upcast'] = False\n            vae_config['scaling_factor'] = 0.13025\n            vae_config['sample_size'] = 1024\n        with open(os.path.join(folder, 'vae', 'config.json'), 'w', encoding='utf8') as f:\n            json.dump(vae_config, f, indent=2)\n        if recipe.safetensors:\n            fn = recipe.name\n            if len(recipe.version) > 0:\n                fn += f'-{recipe.version}'\n            if not os.path.isabs(fn):\n                fn = os.path.join(shared.opts.ckpt_dir, fn)\n            if not fn.endswith('.safetensors'):\n                fn += '.safetensors'\n            shared.log.info(f'Modules merge save: type=sdxl safetensors=\"{fn}\"')\n            yield msg(f'safetensors={fn}')\n            from modules.merging import convert_sdxl\n            metadata = convert_sdxl.convert(model_path=folder, checkpoint_path=fn, metadata=get_metadata())\n            if 'modelspec.thumbnail' in metadata:\n                metadata['modelspec.thumbnail'] = f\"{metadata['modelspec.thumbnail'].split(',')[0]}:{len(metadata['modelspec.thumbnail'])}\" # pylint: disable=use-maxsplit-arg\n            yield msg(f'metadata={metadata}')\n    except Exception as e:\n        shared.log.error(f'Modules merge save: {e}')\n        errors.display(e, 'merge')\n        yield msg(f'save: {e}')\n\n\ndef merge():\n    global pipeline # pylint: disable=global-statement\n    yield from load_base()\n    if pipeline is None:\n        return\n    shared.log.info(f'Modules merge: type=sdxl {recipe}')\n    pipeline = pipeline.to(device=devices.device, dtype=recipe.dtype)\n    yield from load_scheduler(pipeline)\n    yield from load_unet(pipeline)\n    yield from load_vae(pipeline)\n    yield from load_te1(pipeline)\n    yield from load_te2(pipeline)\n    yield from load_lora(pipeline)\n    yield from save_model(pipeline)\n    # pipeline = pipeline.to(device=devices.device, dtype=recipe.dtype)\n    # test_model(pipeline, '/tmp/merge.png')\n"
  },
  {
    "path": "modules/migrate.py",
    "content": "import os\nfrom modules.paths import data_path\nfrom installer import log\n\n\nfiles = [\n    'cache.json',\n    'metadata.json',\n    'html/extensions.json',\n    'html/previews.json',\n    'html/upscalers.json',\n    'html/reference.json',\n    'html/themes.json',\n    'html/reference-quant.json',\n    'html/reference-distilled.json',\n    'html/reference-community.json',\n    'html/reference-cloud.json',\n]\n\n\ndef migrate_data():\n    for f in files:\n        old_filename = os.path.join(data_path, f)\n        new_filename = os.path.join(data_path, \"data\", os.path.basename(f))\n        if os.path.exists(old_filename):\n            if not os.path.exists(new_filename):\n                log.info(f'Migrating: file=\"{old_filename}\" target=\"{new_filename}\"')\n                try:\n                    os.rename(old_filename, new_filename)\n                except Exception as e:\n                    log.error(f'Migrating: file=\"{old_filename}\" target=\"{new_filename}\" {e}')\n            else:\n                log.warning(f'Migrating: file=\"{old_filename}\" target=\"{new_filename}\" skip existing')\n\n\nmigrate_data()\n"
  },
  {
    "path": "modules/mit_nunchaku.py",
    "content": "# MIT-Han-Lab Nunchaku: <https://github.com/mit-han-lab/nunchaku>\n\nfrom installer import log, pip\nfrom modules import devices\n\n\nnunchaku_ver = '1.1.0'\nok = False\n\n\ndef check():\n    global ok # pylint: disable=global-statement\n    if ok:\n        return True\n    try:\n        import nunchaku\n        import nunchaku.utils\n        from nunchaku import __version__\n        log.info(f'Nunchaku: path={nunchaku.__path__} version={__version__.__version__} precision={nunchaku.utils.get_precision()}')\n        if __version__.__version__ != nunchaku_ver:\n            ok = False\n            return False\n        ok = True\n        return True\n    except Exception as e:\n        log.error(f'Nunchaku: {e}')\n        ok = False\n        return False\n\n\ndef install_nunchaku():\n    if devices.backend is None:\n        return False # too early\n    if not check():\n        import os\n        import sys\n        import platform\n        import importlib\n        import pkg_resources\n        import torch\n        python_ver = f'{sys.version_info.major}{sys.version_info.minor}'\n        if python_ver not in ['311', '312', '313']:\n            log.error(f'Nunchaku: python={sys.version_info} unsupported')\n            return False\n        arch = platform.system().lower()\n        if arch not in ['linux', 'windows']:\n            log.error(f'Nunchaku: platform={arch} unsupported')\n            return False\n        if devices.backend not in ['cuda']:\n            log.error(f'Nunchaku: backend={devices.backend} unsupported')\n            return False\n        torch_ver = torch.__version__[:3]\n        if torch_ver not in ['2.5', '2.6', '2.7', '2.8', '2.9', '2.10']:\n            log.error(f'Nunchaku: torch={torch.__version__} unsupported')\n        suffix = 'x86_64' if arch == 'linux' else 'win_amd64'\n        url = os.environ.get('NUNCHAKU_COMMAND', None)\n        if url is None:\n            arch = f'{arch}_' if arch == 'linux' else ''\n            url = f'https://huggingface.co/nunchaku-tech/nunchaku/resolve/main/nunchaku-{nunchaku_ver}'\n            url += f'+torch{torch_ver}-cp{python_ver}-cp{python_ver}-{arch}{suffix}.whl'\n        cmd = f'install --upgrade {url}'\n        log.debug(f'Nunchaku: install=\"{url}\"')\n        pip(cmd, ignore=False, uv=False)\n        importlib.reload(pkg_resources)\n    if not check():\n        log.error('Nunchaku: install failed')\n        return False\n    return True\n"
  },
  {
    "path": "modules/model_quant.py",
    "content": "import os\nimport re\nimport sys\nimport copy\nimport json\nimport time\nimport diffusers\nimport transformers\nfrom installer import installed, install, log, setup_logging\n\n\nao = None\nbnb = None\noptimum_quanto = None\ntrt = None\nquant_last_model_name = None\nquant_last_model_device = None\ndebug = os.environ.get('SD_QUANT_DEBUG', None) is not None\n\n\ndef get_quant_type(args):\n    if args is not None and \"quantization_config\" in args:\n        return args['quantization_config'].__class__.__name__\n    return None\n\n\ndef get_quant(name):\n    if \"qint8\" in name.lower():\n        return 'qint8'\n    if \"qint4\" in name.lower():\n        return 'qint4'\n    if \"fp8\" in name.lower():\n        return 'fp8'\n    if \"fp4\" in name.lower():\n        return 'fp4'\n    if \"nf4\" in name.lower():\n        return 'nf4'\n    if name.endswith('.gguf'):\n        return 'gguf'\n    return 'none'\n\n\ndef dont_quant():\n    from modules import shared\n    models_list = re.split(r'[ ,]+', shared.opts.models_not_to_quant)\n    models_list = [m.lower().strip() for m in models_list]\n    if shared.sd_model_type.lower() in models_list:\n        shared.log.debug(f'Quantization: model={shared.sd_model_type} skip')\n        return True\n    return False\n\n\ndef create_bnb_config(kwargs = None, allow: bool = True, module: str = 'Model', modules_to_not_convert: list = None):\n    from modules import shared, devices\n    if allow and (module == 'any' or module in shared.opts.bnb_quantization):\n        load_bnb()\n        if bnb is None:\n            return kwargs\n        bnb_config = diffusers.BitsAndBytesConfig(\n            load_in_8bit=shared.opts.bnb_quantization_type in ['fp8'],\n            load_in_4bit=shared.opts.bnb_quantization_type in ['nf4', 'fp4'],\n            bnb_4bit_quant_storage=shared.opts.bnb_quantization_storage,\n            bnb_4bit_quant_type=shared.opts.bnb_quantization_type,\n            bnb_4bit_compute_dtype=devices.dtype,\n            llm_int8_skip_modules=modules_to_not_convert,\n        )\n        log.debug(f'Quantization: module={module} type=bnb dtype={shared.opts.bnb_quantization_type} storage={shared.opts.bnb_quantization_storage}')\n        if kwargs is None:\n            return bnb_config\n        else:\n            kwargs['quantization_config'] = bnb_config\n            return kwargs\n    return kwargs\n\n\ndef create_ao_config(kwargs = None, allow: bool = True, module: str = 'Model', modules_to_not_convert: list = None):\n    from modules import shared\n    if allow and (shared.opts.torchao_quantization_mode in {'pre', 'auto'}) and (module == 'any' or module in shared.opts.torchao_quantization):\n        torchao = load_torchao()\n        if torchao is None:\n            return kwargs\n        if module in {'TE', 'LLM'}:\n            ao_config = transformers.TorchAoConfig(quant_type=shared.opts.torchao_quantization_type, modules_to_not_convert=modules_to_not_convert)\n        else:\n            ao_config = diffusers.TorchAoConfig(shared.opts.torchao_quantization_type, modules_to_not_convert=modules_to_not_convert)\n        log.debug(f'Quantization: module={module} type=torchao dtype={shared.opts.torchao_quantization_type}')\n        if kwargs is None:\n            return ao_config\n        else:\n            kwargs['quantization_config'] = ao_config\n            return kwargs\n    return kwargs\n\n\ndef create_quanto_config(kwargs = None, allow: bool = True, module: str = 'Model', modules_to_not_convert: list = None):\n    from modules import shared\n    if allow and (module == 'any' or module in shared.opts.quanto_quantization):\n        load_quanto(silent=True)\n        if optimum_quanto is None:\n            return kwargs\n        if module in {'TE', 'LLM'}:\n            quanto_config = transformers.QuantoConfig(weights=shared.opts.quanto_quantization_type, modules_to_not_convert=modules_to_not_convert)\n            quanto_config.weights_dtype = quanto_config.weights\n        else:\n            quanto_config = diffusers.QuantoConfig(weights_dtype=shared.opts.quanto_quantization_type, modules_to_not_convert=modules_to_not_convert)\n            quanto_config.activations = None # patch so it works with transformers\n            quanto_config.weights = quanto_config.weights_dtype\n        log.debug(f'Quantization: module={module} type=quanto dtype={shared.opts.quanto_quantization_type}')\n        if kwargs is None:\n            return quanto_config\n        else:\n            kwargs['quantization_config'] = quanto_config\n            return kwargs\n    return kwargs\n\n\ndef create_trt_config(kwargs = None, allow: bool = True, module: str = 'Model', modules_to_not_convert: list = None):\n    from modules import shared\n    if allow and (module == 'any' or module in shared.opts.trt_quantization):\n        load_trt()\n        if trt is None:\n            return kwargs\n        trt_config_data = {\n            \"int8\": {\"quant_type\": \"INT8\", \"quant_method\": \"modelopt\", \"modules_to_not_convert\": []},\n            \"int4\": {\"quant_type\": \"INT4\", \"quant_method\": \"modelopt\", \"block_quantize\": 128, \"channel_quantize\": -1, \"modules_to_not_convert\": [\"conv\", \"patch_embed\"]},\n            \"fp8\": {\"quant_type\": \"FP8\", \"quant_method\": \"modelopt\", \"modules_to_not_convert\": []},\n            \"nf4\": {\"quant_type\": \"NF4\", \"quant_method\": \"modelopt\", \"block_quantize\": 128, \"channel_quantize\": -1, \"scale_block_quantize\": 8, \"scale_channel_quantize\": -1, \"modules_to_not_convert\": [\"conv\"]},\n            \"nvfp4\": {\"quant_type\": \"NVFP4\", \"quant_method\": \"modelopt\", \"block_quantize\": 128, \"channel_quantize\": -1, \"modules_to_not_convert\": [\"conv\"]},\n        }\n        trt_quant_config = trt_config_data[shared.opts.trt_quantization_type].copy()\n        if modules_to_not_convert is not None:\n            for m in modules_to_not_convert:\n                if m not in trt_quant_config['modules_to_not_convert']:\n                    trt_quant_config['modules_to_not_convert'].append(m)\n        trt_config = diffusers.quantizers.quantization_config.NVIDIAModelOptConfig(**trt_quant_config)\n        log.debug(f'Quantization: module={module} type=tensorrt dtype={shared.opts.trt_quantization_type}')\n        if kwargs is None:\n            return trt_config\n        else:\n            kwargs['quantization_config'] = trt_config\n            return kwargs\n    return kwargs\n\n\ndef get_sdnq_devices(mode=\"pre\"):\n    from modules import devices, shared\n    if shared.opts.device_map == \"gpu\":\n        quantization_device = devices.device\n        return_device = devices.device\n    elif shared.opts.device_map == \"cpu\":\n        quantization_device = devices.cpu\n        return_device = devices.cpu\n    elif shared.opts.diffusers_offload_mode in {\"none\", \"model\"} or (mode == \"post\" and shared.opts.sdnq_quantize_shuffle_weights):\n        quantization_device = devices.device if shared.opts.sdnq_quantize_with_gpu else devices.cpu\n        return_device = devices.device\n    elif shared.opts.sdnq_quantize_with_gpu:\n        quantization_device = devices.device\n        return_device = devices.device if shared.opts.diffusers_to_gpu else devices.cpu\n    else:\n        quantization_device = None\n        return_device = None\n    return quantization_device, return_device\n\n\ndef create_sdnq_config(kwargs = None, allow: bool = True, module: str = 'Model', weights_dtype: str = None, quantized_matmul_dtype: str = None, modules_to_not_convert: list = None, modules_dtype_dict: dict = None):\n    from modules import shared\n    if allow and (shared.opts.sdnq_quantize_mode in {'pre', 'auto'}) and (module == 'any' or module in shared.opts.sdnq_quantize_weights):\n        from modules.sdnq import SDNQConfig\n        from modules.sdnq.common import use_torch_compile as sdnq_use_torch_compile\n\n        if shared.opts.sdnq_use_quantized_matmul and not sdnq_use_torch_compile:\n            shared.log.warning('SDNQ Quantized MatMul requires a working Triton install. Disabling Quantized MatMul.')\n            shared.opts.sdnq_use_quantized_matmul = False\n\n        if weights_dtype is None:\n            if module in {\"TE\", \"LLM\"} and shared.opts.sdnq_quantize_weights_mode_te not in {\"Same as model\", \"default\"}:\n                weights_dtype = shared.opts.sdnq_quantize_weights_mode_te\n            else:\n                weights_dtype = shared.opts.sdnq_quantize_weights_mode\n        if weights_dtype is None or weights_dtype == 'none':\n            return kwargs\n\n        if quantized_matmul_dtype is None:\n            if module in {\"TE\", \"LLM\"} and shared.opts.sdnq_quantize_matmul_mode_te not in {\"Same as model\", \"default\"}:\n                quantized_matmul_dtype = shared.opts.sdnq_quantize_matmul_mode_te\n            else:\n                quantized_matmul_dtype = shared.opts.sdnq_quantize_matmul_mode\n        if quantized_matmul_dtype == \"auto\":\n            quantized_matmul_dtype = None\n\n        if modules_to_not_convert is None:\n            modules_to_not_convert = []\n        if modules_dtype_dict is None:\n            modules_dtype_dict = {}\n\n        sdnq_modules_to_not_convert = [m.strip() for m in re.split(';|,| ', shared.opts.sdnq_modules_to_not_convert) if len(m.strip()) > 1]\n        if len(sdnq_modules_to_not_convert) > 0:\n            modules_to_not_convert.extend(sdnq_modules_to_not_convert)\n\n        try:\n            if len(shared.opts.sdnq_modules_dtype_dict) > 2:\n                sdnq_modules_dtype_dict = shared.opts.sdnq_modules_dtype_dict\n                if \"{\" not in sdnq_modules_dtype_dict:\n                    sdnq_modules_dtype_dict = \"{\" + sdnq_modules_dtype_dict + \"}\"\n                sdnq_modules_dtype_dict = json.loads(bytes(sdnq_modules_dtype_dict, 'utf-8'))\n                for key, value in sdnq_modules_dtype_dict.items():\n                    if isinstance(value, str):\n                        value = [m.strip() for m in re.split(';|,| ', value) if len(m.strip()) > 1]\n                    if key not in modules_dtype_dict.keys():\n                        modules_dtype_dict[key] = value\n                    else:\n                        modules_dtype_dict[key].extend(value)\n        except Exception as e:\n            log.warning(f'Quantization: SDNQ failed to parse sdnq_modules_dtype_dict: {e}')\n\n        quantization_device, return_device = get_sdnq_devices(mode=\"pre\")\n\n        sdnq_config = SDNQConfig(\n            weights_dtype=weights_dtype,\n            quantized_matmul_dtype=quantized_matmul_dtype,\n            group_size=shared.opts.sdnq_quantize_weights_group_size,\n            svd_rank=shared.opts.sdnq_svd_rank,\n            svd_steps=shared.opts.sdnq_svd_steps,\n            dynamic_loss_threshold=shared.opts.sdnq_dynamic_loss_threshold,\n            use_svd=shared.opts.sdnq_use_svd,\n            quant_conv=shared.opts.sdnq_quantize_conv_layers,\n            use_quantized_matmul=shared.opts.sdnq_use_quantized_matmul,\n            use_quantized_matmul_conv=shared.opts.sdnq_use_quantized_matmul_conv,\n            use_dynamic_quantization=shared.opts.sdnq_use_dynamic_quantization,\n            dequantize_fp32=shared.opts.sdnq_dequantize_fp32,\n            non_blocking=shared.opts.diffusers_offload_nonblocking,\n            quantization_device=quantization_device,\n            return_device=return_device,\n            modules_to_not_convert=modules_to_not_convert,\n            modules_dtype_dict=modules_dtype_dict.copy(),\n        )\n        if quantized_matmul_dtype is None:\n            quantized_matmul_dtype = \"auto\" # set for logging\n        svd = f'{shared.opts.sdnq_use_svd} rank={shared.opts.sdnq_svd_rank} steps={shared.opts.sdnq_svd_steps}' if shared.opts.sdnq_use_svd else f'{shared.opts.sdnq_use_svd}'\n        log.debug(f'Quantization: module=\"{module}\" type=sdnq mode=pre dtype={weights_dtype} svd={svd} dynamic={shared.opts.sdnq_use_dynamic_quantization} group={shared.opts.sdnq_quantize_weights_group_size} loss={shared.opts.sdnq_dynamic_loss_threshold} matmul_dtype={quantized_matmul_dtype} matmul_quant={shared.opts.sdnq_use_quantized_matmul} matmul_conv={shared.opts.sdnq_use_quantized_matmul_conv}  quant_conv={shared.opts.sdnq_quantize_conv_layers} fp32={shared.opts.sdnq_dequantize_fp32} device={quantization_device} return={return_device} use_gpu={shared.opts.sdnq_quantize_with_gpu} map={shared.opts.device_map} offload={shared.opts.diffusers_offload_mode} non_blocking={shared.opts.diffusers_offload_nonblocking} skip_modules={modules_to_not_convert} dict={modules_dtype_dict}')\n        if kwargs is None:\n            return sdnq_config\n        else:\n            kwargs['quantization_config'] = sdnq_config\n            return kwargs\n    return kwargs\n\n\ndef check_quant(module: str = ''):\n    from modules import shared\n    if module in shared.opts.sdnq_quantize_weights or module in shared.opts.bnb_quantization or module in shared.opts.torchao_quantization or module in shared.opts.quanto_quantization:\n        return True\n    return False\n\n\ndef check_nunchaku(module: str = ''):\n    from modules import shared\n    if module not in shared.opts.nunchaku_quantization:\n        return False\n    from modules import mit_nunchaku\n    mit_nunchaku.install_nunchaku()\n    if not mit_nunchaku.ok:\n        return False\n    return True\n\n\ndef create_config(kwargs = None, allow: bool = True, module: str = 'Model', modules_to_not_convert: list = None, modules_dtype_dict: dict = None):\n    if kwargs is None:\n        kwargs = {}\n    if module == 'Model' and dont_quant():\n        return kwargs\n    kwargs = create_sdnq_config(kwargs, allow=allow, module=module, modules_to_not_convert=modules_to_not_convert, modules_dtype_dict=modules_dtype_dict)\n    if kwargs is not None and 'quantization_config' in kwargs:\n        if debug:\n            log.trace(f'Quantization: type=sdnq config={kwargs.get(\"quantization_config\", None)}')\n        return kwargs\n    kwargs = create_bnb_config(kwargs, allow=allow, module=module, modules_to_not_convert=modules_to_not_convert)\n    if kwargs is not None and 'quantization_config' in kwargs:\n        if debug:\n            log.trace(f'Quantization: type=bnb config={kwargs.get(\"quantization_config\", None)}')\n        return kwargs\n    kwargs = create_quanto_config(kwargs, allow=allow, module=module, modules_to_not_convert=modules_to_not_convert)\n    if kwargs is not None and 'quantization_config' in kwargs:\n        if debug:\n            log.trace(f'Quantization: type=quanto config={kwargs.get(\"quantization_config\", None)}')\n        return kwargs\n    kwargs = create_ao_config(kwargs, allow=allow, module=module, modules_to_not_convert=modules_to_not_convert)\n    if kwargs is not None and 'quantization_config' in kwargs:\n        if debug:\n            log.trace(f'Quantization: type=torchao config={kwargs.get(\"quantization_config\", None)}')\n        return kwargs\n    kwargs = create_trt_config(kwargs, allow=allow, module=module, modules_to_not_convert=modules_to_not_convert)\n    if kwargs is not None and 'quantization_config' in kwargs:\n        if debug:\n            log.trace(f'Quantization: type=tensorrt config={kwargs.get(\"quantization_config\", None)}')\n        return kwargs\n    return kwargs\n\n\ndef load_torchao(msg='', silent=False):\n    global ao # pylint: disable=global-statement\n    if ao is not None:\n        return ao\n    if not installed('torchao'):\n        install('torchao==0.10.0', quiet=True)\n        log.warning('Quantization: torchao installed please restart')\n    try:\n        import torchao\n        ao = torchao\n        fn = f'{sys._getframe(2).f_code.co_name}:{sys._getframe(1).f_code.co_name}' # pylint: disable=protected-access\n        log.debug(f'Quantization: type=torchao version={ao.__version__} fn={fn}') # pylint: disable=protected-access\n        from diffusers.utils import import_utils\n        import_utils.is_torchao_available = lambda: True\n        import_utils._torchao_available = True # pylint: disable=protected-access\n        return ao\n    except Exception as e:\n        if len(msg) > 0:\n            log.error(f\"{msg} failed to import torchao: {e}\")\n        ao = None\n        if not silent:\n            raise\n    return None\n\n\ndef load_bnb(msg='', silent=False):\n    from modules import devices\n    global bnb # pylint: disable=global-statement\n    if bnb is not None:\n        return bnb\n    if not installed('bitsandbytes'):\n        if devices.backend == 'cuda':\n            # forcing a version will uninstall the multi-backend-refactor branch of bnb\n            install('bitsandbytes==0.47.0', quiet=True)\n            log.warning('Quantization: bitsandbytes installed please restart')\n    try:\n        import bitsandbytes\n        bnb = bitsandbytes\n        from diffusers.utils import import_utils\n        import_utils._bitsandbytes_available = True # pylint: disable=protected-access\n        import_utils._bitsandbytes_version = '0.43.3' # pylint: disable=protected-access\n        fn = f'{sys._getframe(3).f_code.co_name}:{sys._getframe(2).f_code.co_name}:{sys._getframe(1).f_code.co_name}' # pylint: disable=protected-access\n        log.debug(f'Quantization: type=bitsandbytes version={bnb.__version__} fn={fn}') # pylint: disable=protected-access\n        return bnb\n    except Exception as e:\n        if len(msg) > 0:\n            log.error(f\"{msg} failed to import bitsandbytes: {e}\")\n        bnb = None\n        if not silent:\n            raise\n    return None\n\n\ndef load_quanto(msg='', silent=False):\n    global optimum_quanto # pylint: disable=global-statement\n    if optimum_quanto is not None:\n        return optimum_quanto\n    if not installed('optimum-quanto'):\n        install('optimum-quanto==0.2.7', quiet=True)\n        log.warning('Quantization: optimum-quanto installed please restart')\n    try:\n        from optimum import quanto # pylint: disable=no-name-in-module\n        # disable device specific tensors because the model can't be moved between cpu and gpu with them\n        quanto.tensor.weights.qbits.WeightQBitsTensor.create = lambda *args, **kwargs: quanto.tensor.weights.qbits.WeightQBitsTensor(*args, **kwargs)\n        optimum_quanto = quanto\n        fn = f'{sys._getframe(3).f_code.co_name}:{sys._getframe(2).f_code.co_name}:{sys._getframe(1).f_code.co_name}' # pylint: disable=protected-access\n        log.debug(f'Quantization: type=quanto version={quanto.__version__} fn={fn}') # pylint: disable=protected-access\n        from diffusers.utils import import_utils\n        import_utils.is_optimum_quanto_available = lambda: True\n        import_utils._optimum_quanto_available = True # pylint: disable=protected-access\n        import_utils._optimum_quanto_version = quanto.__version__ # pylint: disable=protected-access\n        import_utils._replace_with_quanto_layers = diffusers.quantizers.quanto.utils._replace_with_quanto_layers # pylint: disable=protected-access\n        return optimum_quanto\n    except Exception as e:\n        if len(msg) > 0:\n            log.error(f\"{msg} failed to import optimum.quanto: {e}\")\n        optimum_quanto = None\n        if not silent:\n            raise\n    return None\n\n\ndef load_trt(msg='', silent=False):\n    global trt # pylint: disable=global-statement\n    if trt is not None:\n        return trt\n    try:\n        install('nvidia-modelopt')\n        import pydantic\n        if pydantic.__version__.startswith('1'):\n            log.error('Quantization: type=tensorrt pydantic==2 required')\n            return None\n        import modelopt\n        trt = modelopt\n        fn = f'{sys._getframe(3).f_code.co_name}:{sys._getframe(2).f_code.co_name}:{sys._getframe(1).f_code.co_name}' # pylint: disable=protected-access\n        log.debug(f'Quantization: type=tensorrt version={trt.__version__} fn={fn}') # pylint: disable=protected-access\n        return trt\n    except Exception as e:\n        if len(msg) > 0:\n            log.error(f\"{msg} failed to import tensorrt: {e}\")\n        trt = None\n        if not silent:\n            raise\n    return None\n\n\ndef upcast_non_layerwise_modules(model, dtype): # pylint: disable=unused-argument\n    from diffusers.hooks.layerwise_casting import _GO_LC_SUPPORTED_PYTORCH_LAYERS\n    model_children = list(model.children())\n    if not model_children:\n        if not isinstance(model, _GO_LC_SUPPORTED_PYTORCH_LAYERS):\n            model = model.to(dtype)\n        return model\n    for module in model_children:\n        has_children = list(module.children())\n        if not has_children:\n            if not isinstance(module, _GO_LC_SUPPORTED_PYTORCH_LAYERS):\n                module = module.to(dtype)\n        else:\n            module = upcast_non_layerwise_modules(module, dtype)\n    return model\n\n\ndef load_fp8_model_layerwise(checkpoint_info, load_model_func, diffusers_load_config):\n    model = None\n    if isinstance(checkpoint_info, str):\n        repo_path = checkpoint_info\n    else:\n        repo_path = checkpoint_info.path\n    try:\n        import torch\n        from modules import devices, shared\n        from diffusers.quantizers import quantization_config\n        if not hasattr(quantization_config.QuantizationMethod, 'LAYERWISE'):\n            setattr(quantization_config.QuantizationMethod, 'LAYERWISE', 'layerwise') # noqa: B010\n        if \"e5m2\" in repo_path.lower():\n            storage_dtype = torch.float8_e5m2\n        else:\n            storage_dtype= torch.float8_e4m3fn\n        load_args = diffusers_load_config.copy()\n        load_args[\"torch_dtype\"] = storage_dtype\n        model = load_model_func(repo_path, **load_args)\n        model = upcast_non_layerwise_modules(model, devices.dtype)\n        model._skip_layerwise_casting_patterns = None # pylint: disable=protected-access\n        model.enable_layerwise_casting(compute_dtype=devices.dtype, storage_dtype=storage_dtype, non_blocking=shared.opts.diffusers_offload_nonblocking, skip_modules_pattern=[])\n        model.layerwise_storage_dtype = storage_dtype\n        model.quantization_method = 'LayerWise'\n    except Exception as e:\n        log.error(f\"Load model: Failed to load FP8 model: {e}\")\n        model = None\n    return model\n\n\ndef apply_layerwise(sd_model, quiet:bool=False):\n    import torch\n    from diffusers.quantizers import quantization_config\n    from modules import shared, devices, sd_models\n    if shared.opts.layerwise_quantization_storage == 'float8_e4m3fn' and hasattr(torch, 'float8_e4m3fn'):\n        storage_dtype = torch.float8_e4m3fn\n    elif shared.opts.layerwise_quantization_storage == 'float8_e5m2' and hasattr(torch, 'float8_e5m2'):\n        storage_dtype = torch.float8_e5m2\n    else:\n        storage_dtype = None\n        log.warning(f'Quantization: type=layerwise storage={shared.opts.layerwise_quantization_storage} not supported')\n        return\n    if not hasattr(quantization_config.QuantizationMethod, 'LAYERWISE'):\n        setattr(quantization_config.QuantizationMethod, 'LAYERWISE', 'layerwise') # noqa: B010\n    for module in sd_models.get_signature(sd_model).keys():\n        if not hasattr(sd_model, module):\n            continue\n        try:\n            cls = getattr(sd_model, module).__class__.__name__\n            m = getattr(sd_model, module)\n            if getattr(m, \"quantization_method\", None) in {'LayerWise', quantization_config.QuantizationMethod.LAYERWISE}: # pylint: disable=no-member\n                storage_dtype = getattr(m, \"layerwise_storage_dtype\", storage_dtype)\n                m.enable_layerwise_casting(compute_dtype=devices.dtype, storage_dtype=storage_dtype, non_blocking=shared.opts.diffusers_offload_nonblocking)\n            elif module.startswith('unet') and ('Model' in shared.opts.layerwise_quantization):\n                if hasattr(m, 'enable_layerwise_casting'):\n                    m.enable_layerwise_casting(compute_dtype=devices.dtype, storage_dtype=storage_dtype, non_blocking=shared.opts.diffusers_offload_nonblocking)\n                    m.layerwise_storage_dtype = storage_dtype\n                    m.quantization_method = 'LayerWise'\n                    log.quiet(quiet, f'Quantization: type=layerwise module={module} cls={cls} storage={storage_dtype} compute={devices.dtype} blocking={not shared.opts.diffusers_offload_nonblocking}')\n            elif module.startswith('transformer') and ('Model' in shared.opts.layerwise_quantization):\n                if hasattr(m, 'enable_layerwise_casting'):\n                    m.enable_layerwise_casting(compute_dtype=devices.dtype, storage_dtype=storage_dtype, non_blocking=shared.opts.diffusers_offload_nonblocking)\n                    m.layerwise_storage_dtype = storage_dtype\n                    m.quantization_method = 'LayerWise'\n                    log.quiet(quiet, f'Quantization: type=layerwise module={module} cls={cls} storage={storage_dtype} compute={devices.dtype} blocking={not shared.opts.diffusers_offload_nonblocking}')\n            elif module.startswith('text_encoder') and ('TE' in shared.opts.layerwise_quantization) and ('clip' not in cls.lower()):\n                if hasattr(m, 'enable_layerwise_casting'):\n                    m.enable_layerwise_casting(compute_dtype=devices.dtype, storage_dtype=storage_dtype, non_blocking=shared.opts.diffusers_offload_nonblocking)\n                    m.layerwise_storage_dtype = storage_dtype\n                    m.quantization_method = quantization_config.QuantizationMethod.LAYERWISE # pylint: disable=no-member\n                    log.quiet(quiet, f'Quantization: type=layerwise module={module} cls={cls} storage={storage_dtype} compute={devices.dtype} blocking={not shared.opts.diffusers_offload_nonblocking}')\n        except Exception as e:\n            if 'Hook with name' not in str(e):\n                log.error(f'Quantization: type=layerwise {e}')\n\n\ndef sdnq_quantize_model(model, op=None, sd_model=None, do_gc: bool = True, weights_dtype: str = None, quantized_matmul_dtype: str = None, modules_to_not_convert: list = None, modules_dtype_dict: dict = None):\n    global quant_last_model_name, quant_last_model_device # pylint: disable=global-statement\n    from modules import devices, shared, timer\n    from modules.sdnq import sdnq_post_load_quant\n    from modules.sdnq.common import use_torch_compile as sdnq_use_torch_compile\n\n    if shared.opts.sdnq_use_quantized_matmul and not sdnq_use_torch_compile:\n        shared.log.warning('SDNQ Quantized MatMul requires a working Triton install. Disabling Quantized MatMul.')\n        shared.opts.sdnq_use_quantized_matmul = False\n\n    if weights_dtype is None:\n        if (op is not None) and (\"text_encoder\" in op or op in {\"TE\", \"LLM\"}) and (shared.opts.sdnq_quantize_weights_mode_te not in {\"Same as model\", \"default\"}):\n            weights_dtype = shared.opts.sdnq_quantize_weights_mode_te\n        else:\n            weights_dtype = shared.opts.sdnq_quantize_weights_mode\n    if weights_dtype is None or weights_dtype == 'none':\n        return model\n\n    if quantized_matmul_dtype is None:\n        if (op is not None) and (\"text_encoder\" in op or op in {\"TE\", \"LLM\"}) and (shared.opts.sdnq_quantize_matmul_mode_te not in {\"Same as model\", \"default\"}):\n            quantized_matmul_dtype = shared.opts.sdnq_quantize_matmul_mode_te\n        else:\n            quantized_matmul_dtype = shared.opts.sdnq_quantize_matmul_mode\n    if quantized_matmul_dtype == \"auto\":\n        quantized_matmul_dtype = None\n\n    quantization_device, return_device = get_sdnq_devices(mode=\"post\")\n\n    if modules_to_not_convert is None:\n        modules_to_not_convert = []\n    if modules_dtype_dict is None:\n        modules_dtype_dict = {}\n\n    sdnq_modules_to_not_convert = [m.strip() for m in re.split(';|,| ', shared.opts.sdnq_modules_to_not_convert) if len(m.strip()) > 1]\n    if len(sdnq_modules_to_not_convert) > 0:\n        modules_to_not_convert.extend(sdnq_modules_to_not_convert)\n\n    try:\n        if len(shared.opts.sdnq_modules_dtype_dict) > 2:\n            sdnq_modules_dtype_dict = shared.opts.sdnq_modules_dtype_dict\n            if \"{\" not in sdnq_modules_dtype_dict:\n                sdnq_modules_dtype_dict = \"{\" + sdnq_modules_dtype_dict + \"}\"\n            sdnq_modules_dtype_dict = json.loads(bytes(sdnq_modules_dtype_dict, 'utf-8'))\n            for key, value in sdnq_modules_dtype_dict.items():\n                if isinstance(value, str):\n                    value = [m.strip() for m in re.split(';|,| ', value) if len(m.strip()) > 1]\n                if key not in modules_dtype_dict.keys():\n                    modules_dtype_dict[key] = value\n                else:\n                    modules_dtype_dict[key].extend(value)\n    except Exception as e:\n        log.warning(f'Quantization: SDNQ failed to parse sdnq_modules_dtype_dict: {e}')\n\n    t0 = time.time()\n\n    model = sdnq_post_load_quant(\n        model,\n        weights_dtype=weights_dtype,\n        quantized_matmul_dtype=quantized_matmul_dtype,\n        torch_dtype=devices.dtype,\n        group_size=shared.opts.sdnq_quantize_weights_group_size,\n        svd_rank=shared.opts.sdnq_svd_rank,\n        svd_steps=shared.opts.sdnq_svd_steps,\n        dynamic_loss_threshold=shared.opts.sdnq_dynamic_loss_threshold,\n        use_svd=shared.opts.sdnq_use_svd,\n        quant_conv=shared.opts.sdnq_quantize_conv_layers,\n        use_quantized_matmul=shared.opts.sdnq_use_quantized_matmul,\n        use_quantized_matmul_conv=shared.opts.sdnq_use_quantized_matmul_conv,\n        use_dynamic_quantization=shared.opts.sdnq_use_dynamic_quantization,\n        dequantize_fp32=shared.opts.sdnq_dequantize_fp32,\n        non_blocking=shared.opts.diffusers_offload_nonblocking,\n        quantization_device=quantization_device,\n        return_device=return_device,\n        modules_to_not_convert=modules_to_not_convert,\n        modules_dtype_dict=modules_dtype_dict.copy(),\n    )\n\n    t1 = time.time()\n    timer.load.add('sdnq', t1 - t0)\n\n    if op is not None and shared.opts.sdnq_quantize_shuffle_weights:\n        if quant_last_model_name is not None:\n            if \".\" in quant_last_model_name:\n                last_model_names = quant_last_model_name.split(\".\")\n                getattr(getattr(sd_model, last_model_names[0]), last_model_names[1]).to(quant_last_model_device)\n            else:\n                getattr(sd_model, quant_last_model_name).to(quant_last_model_device)\n            if do_gc:\n                devices.torch_gc(force=True, reason='sdnq')\n        if shared.cmd_opts.medvram or shared.cmd_opts.lowvram or shared.opts.diffusers_offload_mode != \"none\":\n            quant_last_model_name = op\n            quant_last_model_device = model.device\n        else:\n            quant_last_model_name = None\n            quant_last_model_device = None\n        model.to(devices.device)\n    elif (shared.opts.diffusers_offload_mode != \"none\") and (not shared.opts.diffusers_to_gpu):\n        model = model.to(devices.cpu)\n    if do_gc:\n        devices.torch_gc(force=True, reason='sdnq')\n\n    if quantized_matmul_dtype is None:\n        quantized_matmul_dtype = \"auto\" # set for logging\n    log.debug(f'Quantization: module=\"{op if op is not None else model.__class__}\" type=sdnq mode=post dtype={weights_dtype} matmul_dtype={quantized_matmul_dtype} matmul={shared.opts.sdnq_use_quantized_matmul} svd={shared.opts.sdnq_use_svd}dynamic={shared.opts.sdnq_use_dynamic_quantization}:group={shared.opts.sdnq_quantize_weights_group_size}:rank={shared.opts.sdnq_svd_rank}:steps={shared.opts.sdnq_svd_steps}:loss={shared.opts.sdnq_dynamic_loss_threshold} quant_conv={shared.opts.sdnq_quantize_conv_layers} matmul_conv={shared.opts.sdnq_use_quantized_matmul_conv} fp32={shared.opts.sdnq_dequantize_fp32} gpu={shared.opts.sdnq_quantize_with_gpu} device={quantization_device} return={return_device} map={shared.opts.device_map} non_blocking={shared.opts.diffusers_offload_nonblocking} modules_skip={modules_to_not_convert} modules_dtype={modules_dtype_dict}')\n    return model\n\n\ndef sdnq_quantize_weights(sd_model):\n    try:\n        t0 = time.time()\n        from modules import shared, devices, sd_models\n        log.debug(f\"Quantization: type=SDNQ modules={shared.opts.sdnq_quantize_weights} dtype={shared.opts.sdnq_quantize_weights_mode} dtype_te={shared.opts.sdnq_quantize_weights_mode_te} offload={shared.opts.diffusers_offload_mode} pre_forward={shared.opts.diffusers_offload_pre}\")\n        global quant_last_model_name, quant_last_model_device # pylint: disable=global-statement\n\n        sd_model = sd_models.apply_function_to_model(sd_model, sdnq_quantize_model, shared.opts.sdnq_quantize_weights, op=\"sdnq\")\n        if quant_last_model_name is not None:\n            if \".\" in quant_last_model_name:\n                last_model_names = quant_last_model_name.split(\".\")\n                getattr(getattr(sd_model, last_model_names[0]), last_model_names[1]).to(quant_last_model_device)\n            else:\n                getattr(sd_model, quant_last_model_name).to(quant_last_model_device)\n            devices.torch_gc(force=True, reason='sdnq')\n        quant_last_model_name = None\n        quant_last_model_device = None\n\n        t1 = time.time()\n        log.info(f\"Quantization: type=SDNQ time={t1-t0:.2f}\")\n    except Exception as e:\n        log.warning(f\"Quantization: type=SDNQ {e}\")\n        from modules import errors\n        errors.display(e, 'Quantization')\n    return sd_model\n\n\ndef optimum_quanto_model(model, op=None, sd_model=None, weights=None, activations=None):\n    from modules import devices, shared\n    quanto = load_quanto('Quantize model: type=Optimum Quanto')\n    global quant_last_model_name, quant_last_model_device # pylint: disable=global-statement\n    if model.__class__.__name__ in {\"FluxTransformer2DModel\", \"ChromaTransformer2DModel\"}: # LayerNorm is not supported\n        exclude_list = [\"transformer_blocks.*.norm1.norm\", \"transformer_blocks.*.norm2\", \"transformer_blocks.*.norm1_context.norm\", \"transformer_blocks.*.norm2_context\", \"single_transformer_blocks.*.norm.norm\", \"norm_out.norm\"]\n        if model.__class__.__name__ == \"ChromaTransformer2DModel\":\n            # we ignore the distilled guidance layer because it degrades quality too much\n            # see: https://github.com/huggingface/diffusers/pull/11698#issuecomment-2969717180 for more details\n            exclude_list.append(\"distilled_guidance_layer.*\")\n    elif model.__class__.__name__ == \"QwenImageTransformer2DModel\":\n        exclude_list = [\"transformer_blocks.0.img_mod.1.weight\", \"time_text_embed\", \"img_in\", \"txt_in\", \"proj_out\", \"norm_out\", \"pos_embed\"]\n    else:\n        exclude_list = None\n    weights = getattr(quanto, weights) if weights is not None else getattr(quanto, shared.opts.optimum_quanto_weights_type)\n    if activations is not None:\n        activations = getattr(quanto, activations) if activations != 'none' else None\n    elif shared.opts.optimum_quanto_activations_type != 'none':\n        activations = getattr(quanto, shared.opts.optimum_quanto_activations_type)\n    else:\n        activations = None\n    model.eval()\n    backup_embeddings = None\n    if hasattr(model, \"get_input_embeddings\"):\n        backup_embeddings = copy.deepcopy(model.get_input_embeddings())\n    quanto.quantize(model, weights=weights, activations=activations, exclude=exclude_list)\n    quanto.freeze(model)\n    if hasattr(model, \"set_input_embeddings\") and backup_embeddings is not None:\n        model.set_input_embeddings(backup_embeddings)\n    if op is not None and shared.opts.optimum_quanto_shuffle_weights:\n        if quant_last_model_name is not None:\n            if \".\" in quant_last_model_name:\n                last_model_names = quant_last_model_name.split(\".\")\n                getattr(getattr(sd_model, last_model_names[0]), last_model_names[1]).to(quant_last_model_device)\n            else:\n                getattr(sd_model, quant_last_model_name).to(quant_last_model_device)\n            devices.torch_gc(force=True, reason='quanto')\n        if shared.cmd_opts.medvram or shared.cmd_opts.lowvram or shared.opts.diffusers_offload_mode != \"none\":\n            quant_last_model_name = op\n            quant_last_model_device = model.device\n        else:\n            quant_last_model_name = None\n            quant_last_model_device = None\n        model.to(devices.device)\n    devices.torch_gc(force=True, reason='quanto')\n    return model\n\n\ndef optimum_quanto_weights(sd_model):\n    try:\n        t0 = time.time()\n        from modules import shared, devices, sd_models\n        if shared.opts.diffusers_offload_mode in {\"balanced\", \"sequential\"}:\n            log.warning(f\"Quantization: type=Optimum.quanto offload={shared.opts.diffusers_offload_mode} not compatible\")\n            return sd_model\n        log.info(f\"Quantization: type=Optimum.quanto: modules={shared.opts.optimum_quanto_weights}\")\n        global quant_last_model_name, quant_last_model_device # pylint: disable=global-statement\n        quanto = load_quanto()\n\n        sd_model = sd_models.apply_function_to_model(sd_model, optimum_quanto_model, shared.opts.optimum_quanto_weights, op=\"optimum-quanto\")\n        if quant_last_model_name is not None:\n            if \".\" in quant_last_model_name:\n                last_model_names = quant_last_model_name.split(\".\")\n                getattr(getattr(sd_model, last_model_names[0]), last_model_names[1]).to(quant_last_model_device)\n            else:\n                getattr(sd_model, quant_last_model_name).to(quant_last_model_device)\n            devices.torch_gc(force=True, reason='quanto')\n        quant_last_model_name = None\n        quant_last_model_device = None\n\n        if shared.opts.optimum_quanto_activations_type != 'none':\n            activations = getattr(quanto, shared.opts.optimum_quanto_activations_type)\n        else:\n            activations = None\n\n        if activations is not None:\n            def optimum_quanto_freeze(model, op=None, sd_model=None): # pylint: disable=unused-argument\n                quanto.freeze(model)\n                return model\n            if shared.opts.diffusers_offload_mode == \"model\":\n                sd_model.enable_model_cpu_offload(device=devices.device)\n                if hasattr(sd_model, \"encode_prompt\"):\n                    original_encode_prompt = sd_model.encode_prompt\n                    def encode_prompt(*args, **kwargs):\n                        embeds = original_encode_prompt(*args, **kwargs)\n                        sd_model.maybe_free_model_hooks() # Diffusers keeps the TE on VRAM\n                        return embeds\n                    sd_model.encode_prompt = encode_prompt\n            else:\n                sd_models.move_model(sd_model, devices.device)\n            with quanto.Calibration(momentum=0.9):\n                sd_model(prompt=\"dummy prompt\", num_inference_steps=10)\n            sd_model = sd_models.apply_function_to_model(sd_model, optimum_quanto_freeze, shared.opts.optimum_quanto_weights, op=\"optimum-quanto-freeze\")\n            if shared.opts.diffusers_offload_mode == \"model\":\n                sd_models.disable_offload(sd_model)\n                sd_models.move_model(sd_model, devices.cpu)\n                if hasattr(sd_model, \"encode_prompt\"):\n                    sd_model.encode_prompt = original_encode_prompt\n            devices.torch_gc(force=True, reason='quanto')\n\n        t1 = time.time()\n        log.info(f\"Quantization: type=Optimum.quanto time={t1-t0:.2f}\")\n    except Exception as e:\n        log.warning(f\"Quantization: type=Optimum.quanto {e}\")\n    return sd_model\n\n\ndef torchao_quantization(sd_model):\n    from modules import shared, devices, sd_models\n    torchao = load_torchao()\n    q = torchao.quantization\n\n    fn = getattr(q, shared.opts.torchao_quantization_type, None)\n    if fn is None:\n        log.error(f\"Quantization: type=TorchAO type={shared.opts.torchao_quantization_type} not supported\")\n        return sd_model\n    def torchao_model(model, op=None, sd_model=None): # pylint: disable=unused-argument\n        q.quantize_(model, fn(), device=devices.device)\n        return model\n\n    log.info(f\"Quantization: type=TorchAO pipe={sd_model.__class__.__name__} quant={shared.opts.torchao_quantization_type} fn={fn} targets={shared.opts.torchao_quantization}\")\n    try:\n        t0 = time.time()\n        sd_models.apply_function_to_model(sd_model, torchao_model, shared.opts.torchao_quantization, op=\"torchao\")\n        t1 = time.time()\n        log.info(f\"Quantization: type=TorchAO time={t1-t0:.2f}\")\n    except Exception as e:\n        log.error(f\"Quantization: type=TorchAO {e}\")\n    setup_logging() # torchao uses dynamo which messes with logging so reset is needed\n    return sd_model\n\n\ndef get_dit_args(load_config:dict=None, module:str=None, device_map:bool=False, allow_quant:bool=True, modules_to_not_convert: list = None, modules_dtype_dict: dict = None):\n    from modules import shared, devices\n    config = {} if load_config is None else load_config.copy()\n    if 'torch_dtype' not in config:\n        config['torch_dtype'] = devices.dtype\n    if 'low_cpu_mem_usage' in config:\n        del config['low_cpu_mem_usage']\n    if 'load_connected_pipeline' in config:\n        del config['load_connected_pipeline']\n    if 'safety_checker' in config:\n        del config['safety_checker']\n    if 'requires_safety_checker' in config:\n        del config['requires_safety_checker']\n    # if 'variant' in config:\n    #     del config['variant']\n    if device_map:\n        if devices.backend == 'ipex' and os.environ.get('UR_L0_ENABLE_RELAXED_ALLOCATION_LIMITS', '0') != '1' and module in {'TE', 'LLM'}:\n            config['device_map'] = 'cpu' # alchemist gpus hits the 4GB allocation limit with transformers, UR_L0_ENABLE_RELAXED_ALLOCATION_LIMITS emulates above 4GB allocations\n        elif shared.opts.device_map == 'cpu':\n            config['device_map'] = 'cpu'\n        elif shared.opts.device_map == 'gpu':\n            config['device_map'] = devices.device\n    if allow_quant:\n        quant_args = create_config(module=module, modules_to_not_convert=modules_to_not_convert, modules_dtype_dict=modules_dtype_dict)\n    else:\n        quant_args = {}\n    return config, quant_args\n\n\ndef do_post_load_quant(sd_model, allow=True):\n    from modules import shared\n    if dont_quant():\n        return sd_model\n    if shared.opts.sdnq_quantize_weights and (shared.opts.sdnq_quantize_mode == 'post' or (allow and shared.opts.sdnq_quantize_mode == 'auto')):\n        shared.log.debug('Load model: post_quant=sdnq')\n        sd_model = sdnq_quantize_weights(sd_model)\n    if len(shared.opts.optimum_quanto_weights) > 0:\n        shared.log.debug('Load model: post_quant=quanto')\n        sd_model = optimum_quanto_weights(sd_model)\n    if shared.opts.torchao_quantization and (shared.opts.torchao_quantization_mode == 'post' or (allow and shared.opts.torchao_quantization_mode == 'auto')):\n        shared.log.debug('Load model: post_quant=torchao')\n        sd_model = torchao_quantization(sd_model)\n    if shared.opts.layerwise_quantization:\n        shared.log.debug('Load model: post_quant=layerwise')\n        apply_layerwise(sd_model)\n    return sd_model\n"
  },
  {
    "path": "modules/model_te.py",
    "content": "import os\nimport json\nimport torch\nimport transformers\nfrom safetensors.torch import load_file\nfrom modules import shared, devices, files_cache, errors, model_quant\n\n\nte_dict = {}\ndebug = os.environ.get('SD_LOAD_DEBUG', None) is not None\nloaded_te = None\n\n\ndef load_t5(name=None, cache_dir=None):\n    global loaded_te # pylint: disable=global-statement\n    if name is None:\n        return None\n    cache_dir = cache_dir or shared.opts.hfcache_dir\n    from modules import modelloader\n    modelloader.hf_login()\n    repo_id = 'stabilityai/stable-diffusion-3-medium-diffusers'\n    if os.path.exists(name):\n        fn = name\n    else:\n        fn = te_dict.get(name) if name in te_dict else None\n\n    if fn is not None and name.lower().endswith('gguf'):\n        from modules import ggml\n        ggml.install_gguf()\n        with open(os.path.join('configs', 'flux', 'text_encoder_2', 'config.json'), encoding='utf8') as f:\n            t5_config = transformers.T5Config(**json.load(f))\n        t5 = transformers.T5EncoderModel.from_pretrained(None, gguf_file=fn, config=t5_config, device_map=\"auto\", cache_dir=cache_dir, torch_dtype=devices.dtype)\n\n    elif fn is not None and 'fp8' in name.lower():\n        from accelerate.utils import set_module_tensor_to_device\n        with open(os.path.join('configs', 'flux', 'text_encoder_2', 'config.json'), encoding='utf8') as f:\n            t5_config = transformers.T5Config(**json.load(f))\n        state_dict = load_file(fn)\n        dtype = state_dict['encoder.block.0.layer.0.SelfAttention.relative_attention_bias.weight'].dtype\n        with torch.device(\"meta\"):\n            t5 = transformers.T5EncoderModel(t5_config).to(dtype=dtype)\n        for param_name, param in state_dict.items():\n            is_param_float8_e4m3fn = hasattr(torch, \"float8_e4m3fn\") and param.dtype == torch.float8_e4m3fn\n            if torch.is_floating_point(param) and not is_param_float8_e4m3fn:\n                param = param.to(devices.dtype)\n                set_module_tensor_to_device(t5, param_name, device=0, value=param)\n        if t5.dtype != devices.dtype:\n            try:\n                t5 = t5.to(dtype=devices.dtype)\n            except Exception:\n                shared.log.error(f\"T5: Failed to cast text encoder to {devices.dtype}, set dtype to {t5.dtype}\")\n                raise\n        del state_dict\n\n    elif fn is not None:\n        with open(os.path.join('configs', 'flux', 'text_encoder_2', 'config.json'), encoding='utf8') as f:\n            t5_config = transformers.T5Config(**json.load(f))\n        state_dict = load_file(fn)\n        t5 = transformers.T5EncoderModel.from_pretrained(None, state_dict=state_dict, config=t5_config, torch_dtype=devices.dtype)\n\n    elif 'fp16' in name.lower():\n        t5 = transformers.T5EncoderModel.from_pretrained(repo_id, subfolder='text_encoder_3', cache_dir=cache_dir, torch_dtype=devices.dtype)\n\n    elif 'fp4' in name.lower():\n        model_quant.load_bnb('Load model: type=T5')\n        quantization_config = transformers.BitsAndBytesConfig(load_in_4bit=True)\n        t5 = transformers.T5EncoderModel.from_pretrained(repo_id, subfolder='text_encoder_3', quantization_config=quantization_config, cache_dir=cache_dir, torch_dtype=devices.dtype)\n\n    elif 'fp8' in name.lower():\n        model_quant.load_bnb('Load model: type=T5')\n        quantization_config = transformers.BitsAndBytesConfig(load_in_8bit=True)\n        t5 = transformers.T5EncoderModel.from_pretrained(repo_id, subfolder='text_encoder_3', quantization_config=quantization_config, cache_dir=cache_dir, torch_dtype=devices.dtype)\n\n    elif 'int8' in name.lower():\n        from modules.model_quant import create_sdnq_config\n        quantization_config = create_sdnq_config(kwargs=None, allow=True, module='any', weights_dtype='int8')\n        if quantization_config is not None:\n            t5 = transformers.T5EncoderModel.from_pretrained(repo_id, subfolder='text_encoder_3', quantization_config=quantization_config, cache_dir=cache_dir, torch_dtype=devices.dtype)\n\n    elif 'uint4' in name.lower():\n        from modules.model_quant import create_sdnq_config\n        quantization_config = create_sdnq_config(kwargs=None, allow=True, module='any', weights_dtype='uint4')\n        if quantization_config is not None:\n            t5 = transformers.T5EncoderModel.from_pretrained(repo_id, subfolder='text_encoder_3', quantization_config=quantization_config, cache_dir=cache_dir, torch_dtype=devices.dtype)\n\n    elif 'qint4' in name.lower():\n        model_quant.load_quanto('Load model: type=T5')\n        quantization_config = transformers.QuantoConfig(weights='int4')\n        if quantization_config is not None:\n            t5 = transformers.T5EncoderModel.from_pretrained(repo_id, subfolder='text_encoder_3', quantization_config=quantization_config, cache_dir=cache_dir, torch_dtype=devices.dtype)\n\n    elif 'qint8' in name.lower():\n        model_quant.load_quanto('Load model: type=T5')\n        quantization_config = transformers.QuantoConfig(weights='int8')\n        if quantization_config is not None:\n            t5 = transformers.T5EncoderModel.from_pretrained(repo_id, subfolder='text_encoder_3', quantization_config=quantization_config, cache_dir=cache_dir, torch_dtype=devices.dtype)\n\n    elif '/' in name:\n        shared.log.debug(f'Load model: type=T5 repo={name}')\n        quant_config = model_quant.create_config(module='TE')\n        if quantization_config is not None:\n            t5 = transformers.T5EncoderModel.from_pretrained(name, cache_dir=cache_dir, torch_dtype=devices.dtype, **quant_config)\n\n    else:\n        t5 = None\n\n    if t5 is not None:\n        loaded_te = name\n    return t5\n\n\ndef set_t5(pipe, module, t5=None, cache_dir=None):\n    global loaded_te # pylint: disable=global-statement\n    if loaded_te == shared.opts.sd_text_encoder:\n        return pipe\n    if pipe is None or not hasattr(pipe, module):\n        return pipe\n    try:\n        t5 = load_t5(name=t5, cache_dir=cache_dir)\n    except Exception as e:\n        shared.log.error(f'Load module: type={module} class=\"T5\" file=\"{shared.opts.sd_text_encoder}\" {e}')\n        if debug:\n            errors.display(e, 'TE:')\n        t5 = None\n    if t5 is None:\n        return pipe\n    loaded_te = shared.opts.sd_text_encoder\n    setattr(pipe, module, t5)\n    if shared.opts.diffusers_offload_mode == \"sequential\":\n        from accelerate import cpu_offload\n        getattr(pipe, module).to(\"cpu\")\n        cpu_offload(getattr(pipe, module), devices.device, offload_buffers=len(getattr(pipe, module)._parameters) > 0) # pylint: disable=protected-access\n    elif shared.opts.diffusers_offload_mode == \"model\":\n        if not hasattr(pipe, \"_all_hooks\") or len(pipe._all_hooks) == 0: # pylint: disable=protected-access\n            pipe.enable_model_cpu_offload(device=devices.device)\n    if hasattr(pipe, \"maybe_free_model_hooks\"):\n        pipe.maybe_free_model_hooks()\n    devices.torch_gc()\n    return pipe\n\n\ndef load_vit_l():\n    global loaded_te # pylint: disable=global-statement\n    config = transformers.PretrainedConfig.from_json_file('configs/sdxl/text_encoder/config.json')\n    state_dict = load_file(os.path.join(shared.opts.te_dir, f'{shared.opts.sd_text_encoder}.safetensors'))\n    te = transformers.CLIPTextModel.from_pretrained(pretrained_model_name_or_path=None, state_dict=state_dict, config=config)\n    te = te.to(dtype=devices.dtype)\n    loaded_te = shared.opts.sd_text_encoder\n    del state_dict\n    return te\n\n\ndef load_vit_g():\n    global loaded_te # pylint: disable=global-statement\n    config = transformers.PretrainedConfig.from_json_file('configs/sdxl/text_encoder_2/config.json')\n    state_dict = load_file(os.path.join(shared.opts.te_dir, f'{shared.opts.sd_text_encoder}.safetensors'))\n    te = transformers.CLIPTextModelWithProjection.from_pretrained(pretrained_model_name_or_path=None, state_dict=state_dict, config=config)\n    te = te.to(dtype=devices.dtype)\n    loaded_te = shared.opts.sd_text_encoder\n    del state_dict\n    return te\n\n\ndef set_clip(pipe):\n    if loaded_te == shared.opts.sd_text_encoder:\n        return\n    from modules.sd_models import move_model\n    if 'vit-l' in shared.opts.sd_text_encoder.lower() and hasattr(shared.sd_model, 'text_encoder') and shared.sd_model.text_encoder.__class__.__name__ == 'CLIPTextModel':\n        try:\n            te = load_vit_l()\n        except Exception as e:\n            shared.log.error(f'Load module: type=\"text_encoder\" class=\"ViT-L\" file=\"{shared.opts.sd_text_encoder}\" {e}')\n            if debug:\n                errors.display(e, 'TE:')\n            te = None\n        if te is not None:\n            pipe.text_encoder = te\n            shared.log.info(f'Load module: type=\"text_encoder\" class=\"ViT-L\" file=\"{shared.opts.sd_text_encoder}\"')\n            import modules.prompt_parser_diffusers\n            modules.prompt_parser_diffusers.cache.clear()\n            move_model(pipe.text_encoder, devices.device)\n            devices.torch_gc()\n    if 'vit-g' in shared.opts.sd_text_encoder.lower() and hasattr(shared.sd_model, 'text_encoder_2') and shared.sd_model.text_encoder_2.__class__.__name__ == 'CLIPTextModelWithProjection':\n        try:\n            te = load_vit_g()\n        except Exception as e:\n            shared.log.error(f'Load module: type module=\"text_encoder_2\" class=\"ViT-G\" file=\"{shared.opts.sd_text_encoder}\" {e}')\n            if debug:\n                errors.display(e, 'TE:')\n            te = None\n        if te is not None:\n            pipe.text_encoder_2 = te\n            shared.log.info(f'Load module: type=\"text_encoder_2\" class=\"ViT-G\" file=\"{shared.opts.sd_text_encoder}\"')\n            import modules.prompt_parser_diffusers\n            modules.prompt_parser_diffusers.cache.clear()\n            move_model(pipe.text_encoder_2, devices.device)\n            devices.torch_gc()\n\n\ndef refresh_te_list():\n    te_dict.clear()\n    for file in files_cache.list_files(shared.opts.te_dir, ext_filter=['.safetensors', '.gguf']):\n        basename = os.path.basename(file)\n        name = os.path.splitext(basename)[0] if '.safetensors' in basename else basename\n        te_dict[name] = file\n    shared.log.info(f'Available TEs: path=\"{shared.opts.te_dir}\" items={len(te_dict)}')\n"
  },
  {
    "path": "modules/model_tools.py",
    "content": "import inspect\nimport diffusers\nimport transformers\nimport safetensors.torch\nfrom modules import shared, devices, model_quant\n\n\ndef remove_entries_after_depth(d, depth, current_depth=0):\n    if current_depth >= depth:\n        return None\n    if isinstance(d, dict):\n        return {k: remove_entries_after_depth(v, depth, current_depth + 1) for k, v in d.items() if remove_entries_after_depth(v, depth, current_depth + 1) is not None}\n    return d\n\n\ndef list_compact(flat_list):\n    result_list = []\n    for item in flat_list:\n        keys = item.split('.')\n        keys = '.'.join(keys[:2])\n        if keys not in result_list:\n            result_list.append(keys)\n    return result_list\n\n\ndef list_to_dict(flat_list):\n    result_dict = {}\n    try:\n        for item in flat_list:\n            keys = item.split('.')\n            d = result_dict\n            for key in keys[:-1]:\n                d = d.setdefault(key, {})\n            d[keys[-1]] = None\n    except Exception:\n        pass\n    return result_dict\n\n\ndef get_safetensor_keys(filename):\n    keys = []\n    try:\n        with safetensors.torch.safe_open(filename, framework=\"pt\", device=\"cpu\") as f:\n            keys = f.keys()\n    except Exception:\n        pass\n    return keys\n\n\ndef get_modules(model: callable):\n    signature = inspect.signature(model.__init__, follow_wrapped=True)\n    params = {param.name: param.annotation for param in signature.parameters.values() if param.annotation != inspect._empty and hasattr(param.annotation, 'from_pretrained')} # pylint: disable=protected-access\n    for name, cls in params.items():\n        shared.log.debug(f'Analyze: model={model} module={name} class={cls.__name__} loadable={getattr(cls, \"from_pretrained\", None)}')\n    return params\n\n\ndef load_modules(repo_id: str, params: dict):\n    cache_dir = shared.opts.hfcache_dir\n    modules = {}\n    for name, cls in params.items():\n        subfolder = None\n        kwargs = {}\n        if cls == diffusers.AutoencoderKL:\n            subfolder = 'vae'\n        if cls == transformers.CLIPTextModel: # clip-vit-l\n            subfolder = 'text_encoder'\n        if cls == transformers.CLIPTextModelWithProjection: # clip-vit-g\n            subfolder = 'text_encoder_2'\n        if cls == transformers.T5EncoderModel: # t5-xxl\n            subfolder = 'text_encoder_3'\n            kwargs = model_quant.create_config(kwargs)\n            kwargs['variant'] = 'fp16'\n        if cls == diffusers.SD3Transformer2DModel:\n            subfolder = 'transformer'\n            kwargs = model_quant.create_config(kwargs)\n        if subfolder is None:\n            continue\n        shared.log.debug(f'Load: module={name} class={cls.__name__} repo={repo_id} location={subfolder}')\n        modules[name] = cls.from_pretrained(repo_id, subfolder=subfolder, cache_dir=cache_dir, torch_dtype=devices.dtype, **kwargs)\n    return modules\n"
  },
  {
    "path": "modules/modeldata.py",
    "content": "import os\nimport sys\nimport threading\nfrom modules import shared, errors\n\n\ndef get_model_type(pipe):\n    name = pipe.__class__.__name__\n    if not shared.native:\n        model_type = 'ldm'\n    elif \"StableDiffusion3\" in name:\n        model_type = 'sd3'\n    elif \"StableDiffusionXL\" in name:\n        model_type = 'sdxl'\n    elif \"StableDiffusion\" in name:\n        model_type = 'sd'\n    elif \"StableVideoDiffusion\" in name:\n        model_type = 'svd'\n    elif \"LatentConsistencyModel\" in name:\n        model_type = 'sd' # lcm is compatible with sd\n    elif \"InstaFlowPipeline\" in name:\n        model_type = 'sd' # instaflow is compatible with sd\n    elif \"AnimateDiffPipeline\" in name:\n        model_type = 'sd' # animatediff is compatible with sd\n    elif \"Kandinsky5\" in name and '2I' in name:\n        model_type = 'kandinsky5'\n    elif \"Kandinsky3\" in name:\n        model_type = 'kandinsky3'\n    elif \"Kandinsky\" in name:\n        model_type = 'kandinsky'\n    elif \"HunyuanDiT\" in name:\n        model_type = 'hunyuandit'\n    elif \"Cascade\" in name:\n        model_type = 'sc'\n    elif \"AuraFlow\" in name:\n        model_type = 'auraflow'\n    elif 'Chroma' in name:\n        model_type = 'chroma'\n    elif \"Flux2\" in name:\n        model_type = 'f2'\n    elif \"Flux\" in name or \"Flex1\" in name or \"Flex2\" in name:\n        model_type = 'f1'\n    elif \"ZImage\" in name or \"Z-Image\" in name:\n        model_type = 'zimage'\n    elif \"Lumina2\" in name:\n        model_type = 'lumina2'\n    elif \"Lumina\" in name:\n        model_type = 'lumina'\n    elif \"OmniGen2\" in name:\n        model_type = 'omnigen2'\n    elif \"OmniGen\" in name:\n        model_type = 'omnigen'\n    elif \"CogView3\" in name:\n        model_type = 'cogview3'\n    elif \"CogView4\" in name:\n        model_type = 'cogview4'\n    elif \"Sana\" in name:\n        model_type = 'sana'\n    elif \"HiDream\" in name:\n        model_type = 'h1'\n    elif \"Cosmos2TextToImage\" in name or \"AnimaTextToImage\" in name:\n        model_type = 'cosmos'\n    elif \"FLite\" in name:\n        model_type = 'flite'\n    elif \"PixArtSigma\" in name:\n        model_type = 'pixartsigma'\n    elif \"PixArtAlpha\" in name:\n        model_type = 'pixartalpha'\n    elif \"Bria\" in name:\n        model_type = 'bria'\n    elif 'Qwen' in name:\n        model_type = 'qwen'\n    elif 'NextStep' in name:\n        model_type = 'nextstep'\n    elif 'X-Omni' in name:\n        model_type = 'x-omni'\n    elif 'Photoroom' in name:\n        model_type = 'prx'\n    elif 'LongCat' in name:\n        model_type = 'longcat'\n    elif 'GlmImage' in name:\n        model_type = 'glmimage'\n    elif 'Ovis-Image' in name:\n        model_type = 'ovis'\n    elif 'Wan' in name:\n        model_type = 'wanai'\n    elif 'ChronoEdit' in name:\n        model_type = 'chrono'\n    elif 'HDM-xut' in name:\n        model_type = 'hdm'\n    elif 'HunyuanImage3' in name:\n        model_type = 'hunyuanimage3'\n    elif 'HunyuanImage' in name:\n        model_type = 'hunyuanimage'\n    # video models\n    elif \"Kandinsky5\" in name and '2V' in name:\n        model_type = 'kandinsky5video'\n    elif \"CogVideo\" in name:\n        model_type = 'cogvideo'\n    elif 'HunyuanVideo15' in name:\n        model_type = 'hunyuanvideo15'\n    elif 'HunyuanVideoPipeline' in name or 'HunyuanSkyreels' in name:\n        model_type = 'hunyuanvideo'\n    elif 'LTX' in name:\n        model_type = 'ltxvideo'\n    elif \"Mochi\" in name:\n        model_type = 'mochivideo'\n    elif \"Allegro\" in name:\n        model_type = 'allegrovideo'\n    # cloud models\n    elif 'GoogleVeo' in name:\n        model_type = 'veo3'\n    elif 'NanoBanana' in name:\n        model_type = 'nanobanana'\n    else:\n        model_type = name\n    return model_type\n\n\nclass ModelData:\n    def __init__(self):\n        self.sd_model = None\n        self.sd_refiner = None\n        self.sd_dict = 'None'\n        self.initial = True\n        self.locked = True\n        self.lock = threading.Lock()\n\n    def get_sd_model(self):\n        if self.locked:\n            if self.sd_model is None:\n                fn = f'{os.path.basename(sys._getframe(2).f_code.co_filename)}:{sys._getframe(2).f_code.co_name}:{sys._getframe(1).f_code.co_name}' # pylint: disable=protected-access\n                shared.log.warning(f'Model locked: fn={fn}')\n            return self.sd_model\n        elif (self.sd_model is None) and (shared.opts.sd_model_checkpoint != 'None') and (not self.lock.locked()):\n            with self.lock:\n                try:\n                    from modules.sd_models import reload_model_weights\n                    self.sd_model = reload_model_weights(op='model') # note: reload_model_weights directly updates model_data.sd_model and returns it at the end\n                    self.initial = False\n                except Exception as e:\n                    shared.log.error(\"Failed to load stable diffusion model\")\n                    errors.display(e, \"loading stable diffusion model\")\n                    self.sd_model = None\n        return self.sd_model\n\n    def set_sd_model(self, v):\n        if not self.locked:\n            self.sd_model = v\n\n    def get_sd_refiner(self):\n        if (self.sd_refiner is None) and (shared.opts.sd_model_refiner != 'None') and (not self.lock.locked()):\n            with self.lock:\n                try:\n                    from modules.sd_models import reload_model_weights\n                    self.sd_refiner = reload_model_weights(op='refiner')\n                    self.initial = False\n                except Exception as e:\n                    shared.log.error(\"Failed to load stable diffusion model\")\n                    errors.display(e, \"loading stable diffusion model\")\n                    self.sd_refiner = None\n        return self.sd_refiner\n\n    def set_sd_refiner(self, v):\n        if not self.locked:\n            self.sd_refiner = v\n\n\n# provides shared.sd_model field as a property\nclass Shared(sys.modules[__name__].__class__):\n    @property\n    def sd_loaded(self):\n        import modules.sd_models # pylint: disable=W0621\n        return modules.sd_models.model_data.sd_model is not None\n\n    @property\n    def sd_model(self):\n        import modules.sd_models # pylint: disable=W0621\n        if modules.sd_models.model_data.sd_model is None:\n            fn = f'{os.path.basename(sys._getframe(2).f_code.co_filename)}:{sys._getframe(2).f_code.co_name}:{sys._getframe(1).f_code.co_name}' # pylint: disable=protected-access\n            shared.log.debug(f'Model requested: fn={fn}') # pylint: disable=protected-access\n        return modules.sd_models.model_data.get_sd_model()\n\n    @sd_model.setter\n    def sd_model(self, value):\n        import modules.sd_models # pylint: disable=W0621\n        modules.sd_models.model_data.set_sd_model(value)\n\n    @property\n    def sd_refiner(self):\n        import modules.sd_models # pylint: disable=W0621\n        return modules.sd_models.model_data.get_sd_refiner()\n\n    @sd_refiner.setter\n    def sd_refiner(self, value):\n        import modules.sd_models # pylint: disable=W0621\n        modules.sd_models.model_data.set_sd_refiner(value)\n\n    @property\n    def sd_model_type(self):\n        try:\n            import modules.sd_models # pylint: disable=W0621\n            if modules.sd_models.model_data.sd_model is None:\n                model_type = 'none'\n                return model_type\n            model_type = get_model_type(self.sd_model)\n        except Exception:\n            model_type = 'unknown'\n        return model_type\n\n    @property\n    def sd_refiner_type(self):\n        try:\n            import modules.sd_models # pylint: disable=W0621\n            if modules.sd_models.model_data.sd_refiner is None:\n                model_type = 'none'\n                return model_type\n            model_type = get_model_type(self.sd_refiner)\n        except Exception:\n            model_type = 'unknown'\n        return model_type\n\n\nmodel_data = ModelData()\n"
  },
  {
    "path": "modules/modelloader.py",
    "content": "import io\nimport os\nimport time\nimport shutil\nimport importlib\nimport contextlib\nfrom typing import Dict\nfrom urllib.parse import urlparse\nimport huggingface_hub as hf\nfrom installer import install, log\nfrom modules import shared, errors, files_cache\nfrom modules.upscaler import Upscaler\nfrom modules.paths import script_path, models_path\n\n\nloggedin = None\ndiffuser_repos = []\ndebug = log.trace if os.environ.get('SD_DOWNLOAD_DEBUG', None) is not None else lambda *args, **kwargs: None\npbar = None\n\n\ndef hf_login(token=None):\n    if shared.opts.offline_mode:\n        return False\n    global loggedin # pylint: disable=global-statement\n    token = token or shared.opts.huggingface_token\n    token = token.replace(\"\\n\", \"\").replace(\"\\r\", \"\").strip() if token is not None else None\n    install('hf_xet', quiet=True)\n    if token is None or len(token) <= 4:\n        log.debug('HF login: no token provided')\n        return False\n    if len(shared.opts.huggingface_mirror.strip()) > 0 and os.environ.get('HF_ENDPOINT', None) is None:\n        os.environ['HF_ENDPOINT'] = shared.opts.huggingface_mirror.strip()\n    if os.environ.get('HUGGING_FACE_HUB_TOKEN', None) is not None:\n        os.environ.pop('HUGGING_FACE_HUB_TOKEN', None)\n        os.unsetenv('HUGGING_FACE_HUB_TOKEN')\n    if os.environ.get('HF_TOKEN', None) is not None:\n        os.environ.pop('HF_TOKEN', None)\n        os.unsetenv('HF_TOKEN')\n    if loggedin != token:\n        stdout = io.StringIO()\n        try:\n            with contextlib.redirect_stdout(stdout):\n                hf.logout()\n        except Exception:\n            pass\n        with contextlib.redirect_stdout(stdout):\n            hf.login(token=token, add_to_git_credential=False)\n        os.environ['HF_TOKEN'] = token\n        text = stdout.getvalue() or ''\n        obfuscated_token = 'hf_...' + token[-4:]\n        line = [l for l in text.split('\\n') if 'Token' in l]\n        log.info(f'HF login: token=\"{obfuscated_token}\" fn=\"{hf.constants.HF_TOKEN_PATH}\" {line[0] if len(line) > 0 else text}')\n        loggedin = token\n    return True\n\n\ndef download_diffusers_model(hub_id: str, cache_dir: str = None, download_config: Dict[str, str] = None, token = None, variant = None, revision = None, mirror = None, custom_pipeline = None):\n    if hub_id is None or len(hub_id) == 0:\n        return None\n    from diffusers import DiffusionPipeline\n    jobid = shared.state.begin('Download')\n    if hub_id.startswith('huggingface/'):\n        hub_id = hub_id.replace('huggingface/', '')\n    if download_config is None:\n        download_config = {\n            \"force_download\": False,\n            \"resume_download\": True,\n            \"cache_dir\": shared.opts.diffusers_dir,\n            \"load_connected_pipeline\": True,\n        }\n    if cache_dir is not None:\n        download_config[\"cache_dir\"] = cache_dir\n    if variant is not None and len(variant) > 0:\n        download_config[\"variant\"] = variant\n    if revision is not None and len(revision) > 0:\n        download_config[\"revision\"] = revision\n    if mirror is not None and len(mirror) > 0:\n        download_config[\"mirror\"] = mirror\n    if custom_pipeline is not None and len(custom_pipeline) > 0:\n        download_config[\"custom_pipeline\"] = custom_pipeline\n    shared.log.debug(f'HF download: id=\"{hub_id}\" args={download_config}')\n    token = token or shared.opts.huggingface_token\n    if token is not None and len(token) > 2:\n        hf_login(token)\n    pipeline_dir = None\n    try:\n        download_config.pop('load_connected_pipeline', None)\n        download_config.pop('variant', None)\n        pipeline_dir = hf.snapshot_download(hub_id, **download_config)\n    except Exception as e:\n        debug(f'HF download error: id=\"{hub_id}\" {e}')\n        if 'gated' in str(e):\n            shared.log.error(f'HF download error: id=\"{hub_id}\" model access requires login')\n            shared.state.end(jobid)\n            return None\n    if pipeline_dir is None:\n        shared.log.error(f'HF download error: id=\"{hub_id}\" no data')\n        shared.state.end(jobid)\n        return None\n    try:\n        model_info_dict = hf.model_info(hub_id).cardData if pipeline_dir is not None else None\n    except Exception:\n        model_info_dict = None\n    if model_info_dict is not None and \"prior\" in model_info_dict: # some checkpoints need to be downloaded as \"hidden\" as they just serve as pre- or post-pipelines of other pipelines\n        download_dir = DiffusionPipeline.download(model_info_dict[\"prior\"][0], **download_config)\n        model_info_dict[\"prior\"] = download_dir\n        with open(os.path.join(download_dir, \"hidden\"), \"w\", encoding=\"utf-8\") as f: # mark prior as hidden\n            f.write(\"True\")\n    if pipeline_dir is not None:\n        shared.writefile(model_info_dict, os.path.join(pipeline_dir, \"model_info.json\"))\n    shared.state.end(jobid)\n    return pipeline_dir\n\n\ndef load_diffusers_models(clear=True):\n    # t0 = time.time()\n    place = shared.opts.diffusers_dir\n    if place is None or len(place) == 0 or not os.path.isdir(place):\n        place = os.path.join(models_path, 'Diffusers')\n    if clear:\n        diffuser_repos.clear()\n    already_found = []\n    try:\n        for folder in os.listdir(place):\n            try:\n                name = folder[8:] if folder.startswith('models--') else folder\n                folder = os.path.join(place, folder)\n                if name.endswith(\"-prior\"):\n                    continue\n                if not os.path.isdir(folder):\n                    continue\n                name = name.replace(\"--\", \"/\")\n                friendly = os.path.join(place, name)\n                has_index = os.path.exists(os.path.join(folder, 'model_index.json'))\n\n                if has_index: # direct download of diffusers model\n                    repo = { 'name': name, 'filename': name, 'friendly': friendly, 'folder': folder, 'path': folder, 'hash': None, 'mtime': os.path.getmtime(folder), 'model_info': os.path.join(folder, 'model_info.json'), 'model_index': os.path.join(folder, 'model_index.json') }\n                    diffuser_repos.append(repo)\n                    continue\n\n                snapshots = os.listdir(os.path.join(folder, \"snapshots\"))\n                if len(snapshots) == 0:\n                    shared.log.warning(f'Diffusers folder has no snapshots: location=\"{place}\" folder=\"{folder}\" name=\"{name}\"')\n                    continue\n                for snapshot in snapshots: # download using from_pretrained which uses huggingface_hub or huggingface_hub directly and creates snapshot-like structure\n                    commit = os.path.join(folder, 'snapshots', snapshot)\n                    mtime = os.path.getmtime(commit)\n                    info = os.path.join(commit, \"model_info.json\")\n                    index = os.path.join(commit, \"model_index.json\")\n                    config = os.path.join(commit, \"config.json\")\n                    if (not os.path.exists(index)) and (not os.path.exists(info)) and (not os.path.exists(config)):\n                        debug(f'Diffusers skip model no info: {name}')\n                        continue\n                    if name in already_found:\n                        debug(f'Diffusers skip model already found: {name}')\n                        continue\n                    repo = { 'name': name, 'filename': name, 'friendly': friendly, 'folder': folder, 'path': commit, 'hash': snapshot, 'mtime': mtime, 'model_info': info, 'model_index': index, 'model_config': config }\n                    already_found.append(name)\n                    diffuser_repos.append(repo)\n                    if os.path.exists(os.path.join(folder, 'hidden')):\n                        continue\n            except Exception as e:\n                debug(f'Error analyzing diffusers model: \"{folder}\" {e}')\n    except Exception as e:\n        shared.log.error(f\"Error listing diffusers: {place} {e}\")\n    # shared.log.debug(f'Scanning diffusers cache: folder=\"{place}\" items={len(list(diffuser_repos))} time={time.time()-t0:.2f}')\n    return diffuser_repos\n\n\ndef find_diffuser(name: str, full=False):\n    repo = [r for r in diffuser_repos if name == r['name'] or name == r['friendly'] or name == r['path']]\n    if len(repo) > 0:\n        return [repo[0]['name']]\n    hf_api = hf.HfApi()\n    suffix = ''\n    if len(name) > 3 and name.count('/') > 1:\n        parts = name.split('/')\n        name = '/'.join(parts[:2]) # only user/model\n        suffix = '/'.join(parts[2:]) # subfolder\n        if len(suffix) > 0:\n            suffix = '/' + suffix\n    models = list(hf_api.list_models(model_name=name, library=['diffusers'], full=True, limit=20, sort=\"downloads\", direction=-1))\n    if len(models) == 0:\n        models = list(hf_api.list_models(model_name=name, full=True, limit=20, sort=\"downloads\", direction=-1)) # widen search\n    models = [m for m in models if m.id.startswith(name)] # filter exact\n    shared.log.debug(f'Search model: repo=\"{name}\" {len(models) > 0}')\n    if len(models) > 0:\n        if not full:\n            return models[0].id + suffix\n        else:\n            return [m.id + suffix for m in models]\n    return None\n\n\ndef get_reference_opts(name: str, quiet=False):\n    model_opts = {}\n    name = name.replace('Diffusers/', 'huggingface/')\n    for k, v in shared.reference_models.items():\n        model_name = v.get('path', '')\n        if k == name or model_name == name:\n            model_opts = v\n            break\n        model_name_split = os.path.splitext(model_name.split('@')[0])[0]\n        if k == name or model_name_split == name:\n            model_opts = v\n            break\n        model_name_replace = model_name.replace('huggingface/', '')\n        if k == name or model_name_replace == name:\n            model_opts = v\n            break\n    if not model_opts:\n        # shared.log.error(f'Reference: model=\"{name}\" not found')\n        return {}\n    if not quiet:\n        desc = model_opts.copy()\n        desc.pop('desc', None)\n        shared.log.debug(f'Reference: model=\"{name}\" {desc}')\n    return model_opts\n\n\ndef load_reference(name: str, variant: str = None, revision: str = None, mirror: str = None, custom_pipeline: str = None):\n    if '+' in name:\n        name = name.split('+')[0]\n    found = [r for r in diffuser_repos if name == r['name'] or name == r['friendly'] or name == r['path']]\n    if len(found) > 0: # already downloaded\n        model_opts = get_reference_opts(found[0]['name'])\n        return True\n    else:\n        model_opts = get_reference_opts(name)\n    if model_opts.get('skip', False):\n        return True\n    shared.log.debug(f'Reference: download=\"{name}\"')\n    model_dir = download_diffusers_model(\n        hub_id=name,\n        cache_dir=shared.opts.diffusers_dir,\n        variant=variant or model_opts.get('variant', None),\n        revision=revision or model_opts.get('revision', None),\n        mirror=mirror or model_opts.get('mirror', None),\n        custom_pipeline=custom_pipeline or model_opts.get('custom_pipeline', None)\n    )\n    if model_dir is None:\n        shared.log.error(f'Reference download: model=\"{name}\"')\n        return False\n    else:\n        shared.log.debug(f'Reference download complete: model=\"{name}\"')\n        model_opts = get_reference_opts(name)\n        from modules import sd_models\n        sd_models.list_models()\n        return True\n\n\ndef load_civitai(model: str, url: str):\n    from modules import sd_models\n    name, _ext = os.path.splitext(model)\n    info = sd_models.get_closest_checkpoint_match(name)\n    if info is not None:\n        _model_opts = get_reference_opts(info.model_name)\n        return name # already downloaded\n    else:\n        shared.log.debug(f'Reference download start: model=\"{name}\"')\n        from modules.civitai.download_civitai import download_civit_model_thread\n        download_civit_model_thread(model_name=model, model_url=url, model_path='', model_type='safetensors', token=shared.opts.civitai_token)\n        shared.log.debug(f'Reference download complete: model=\"{name}\"')\n        sd_models.list_models()\n        info = sd_models.get_closest_checkpoint_match(name)\n        if info is not None:\n            shared.log.debug(f'Reference: model=\"{name}\"')\n            return name # already downloaded\n        else:\n            shared.log.error(f'Reference model=\"{name}\" not found')\n            return None\n\n\ndef download_url_to_file(url: str, dst: str):\n    # based on torch.hub.download_url_to_file\n    import ssl\n    import uuid\n    import tempfile\n    from urllib.request import urlopen, Request\n    from rich.progress import Progress, TextColumn, BarColumn, TaskProgressColumn, TimeRemainingColumn, TimeElapsedColumn\n    file_size = None\n    req = Request(url, headers={\"User-Agent\": \"sdnext\"})\n\n    context = ssl._create_unverified_context() # pylint: disable=protected-access\n    u = urlopen(req, context=context) # pylint: disable=R1732\n    meta = u.info()\n    if hasattr(meta, 'getheaders'):\n        content_length = meta.getheaders(\"Content-Length\")\n    else:\n        content_length = meta.get_all(\"Content-Length\") # pylint: disable=R1732\n    if content_length is not None and len(content_length) > 0:\n        file_size = int(content_length[0])\n    dst = os.path.expanduser(dst)\n    for _seq in range(tempfile.TMP_MAX):\n        tmp_dst = dst + '.' + uuid.uuid4().hex + '.partial'\n        try:\n            f = open(tmp_dst, 'w+b') # pylint: disable=R1732\n        except FileExistsError:\n            continue\n        break\n    else:\n        shared.log.error(f'Error downloading: url={url} no usable temporary filename found')\n        return\n    try:\n        with Progress(TextColumn('[cyan]{task.description}'), BarColumn(), TaskProgressColumn(), TimeRemainingColumn(), TimeElapsedColumn(), console=shared.console) as progress:\n            task = progress.add_task(description=\"Downloading\", total=file_size)\n            while True:\n                buffer = u.read(8192)\n                if len(buffer) == 0:\n                    break\n                f.write(buffer)\n                progress.update(task, advance=len(buffer))\n        f.close()\n        shutil.move(f.name, dst)\n    finally:\n        f.close()\n        if os.path.exists(f.name):\n            os.remove(f.name)\n\n\ndef load_file_from_url(url: str, *, model_dir: str, progress: bool = True, file_name = None): # pylint: disable=unused-argument\n    \"\"\"Download a file from url into model_dir, using the file present if possible. Returns the path to the downloaded file.\"\"\"\n    if model_dir is None:\n        shared.log.error('Download folder is none')\n    os.makedirs(model_dir, exist_ok=True)\n    if not file_name:\n        parts = urlparse(url)\n        file_name = os.path.basename(parts.path)\n    cached_file = os.path.abspath(os.path.join(model_dir, file_name))\n    if not os.path.exists(cached_file):\n        shared.log.info(f'Downloading: url=\"{url}\" file=\"{cached_file}\"')\n        download_url_to_file(url, cached_file)\n    if os.path.exists(cached_file):\n        return cached_file\n    else:\n        return None\n\n\ndef load_models(model_path: str, model_url: str = None, command_path: str = None, ext_filter=None, download_name=None, ext_blacklist=None) -> list:\n    \"\"\"\n    A one-and done loader to try finding the desired models in specified directories.\n    @param download_name: Specify to download from model_url immediately.\n    @param model_url: If no other models are found, this will be downloaded on upscale.\n    @param model_path: The location to store/find models in.\n    @param command_path: A command-line argument to search for models in first.\n    @param ext_filter: An optional list of filename extensions to filter by\n    @return: A list of paths containing the desired model(s)\n    \"\"\"\n    places = [x for x in list(set([model_path, command_path])) if x is not None] # noqa:C405\n    output = []\n    try:\n        output:list = [*files_cache.list_files(*places, ext_filter=ext_filter, ext_blacklist=ext_blacklist)]\n        if model_url is not None and len(output) == 0:\n            if download_name is not None:\n                dl = load_file_from_url(model_url, model_dir=places[0], progress=True, file_name=download_name)\n                if dl is not None:\n                    output.append(dl)\n            else:\n                output.append(model_url)\n    except Exception as e:\n        errors.display(e,f\"Error listing models: {files_cache.unique_directories(places)}\")\n    return output\n\n\ndef friendly_name(file: str):\n    if \"http\" in file:\n        file = urlparse(file).path\n    file = os.path.basename(file)\n    model_name, _extension = os.path.splitext(file)\n    return model_name\n\n\ndef friendly_fullname(file: str):\n    if \"http\" in file:\n        file = urlparse(file).path\n    file = os.path.basename(file)\n    return file\n\n\ndef cleanup_models():\n    # This code could probably be more efficient if we used a tuple list or something to store the src/destinations\n    # and then enumerate that, but this works for now. In the future, it'd be nice to just have every \"model\" scaler\n    # somehow auto-register and just do these things...\n    root_path = script_path\n    src_path = models_path\n    dest_path = os.path.join(models_path, \"Stable-diffusion\")\n    # move_files(src_path, dest_path, \".ckpt\")\n    # move_files(src_path, dest_path, \".safetensors\")\n    src_path = os.path.join(root_path, \"ESRGAN\")\n    dest_path = os.path.join(models_path, \"ESRGAN\")\n    move_files(src_path, dest_path)\n    src_path = os.path.join(models_path, \"BSRGAN\")\n    dest_path = os.path.join(models_path, \"ESRGAN\")\n    move_files(src_path, dest_path, \".pth\")\n    src_path = os.path.join(root_path, \"gfpgan\")\n    dest_path = os.path.join(models_path, \"GFPGAN\")\n    move_files(src_path, dest_path)\n    src_path = os.path.join(root_path, \"SwinIR\")\n    dest_path = os.path.join(models_path, \"SwinIR\")\n    move_files(src_path, dest_path)\n    src_path = os.path.join(root_path, \"repositories/latent-diffusion/experiments/pretrained_models/\")\n    dest_path = os.path.join(models_path, \"LDSR\")\n    move_files(src_path, dest_path)\n    src_path = os.path.join(root_path, \"SCUNet\")\n    dest_path = os.path.join(models_path, \"SCUNet\")\n    move_files(src_path, dest_path)\n\n\ndef move_files(src_path: str, dest_path: str, ext_filter: str = None):\n    try:\n        if not os.path.exists(dest_path):\n            os.makedirs(dest_path)\n        if os.path.exists(src_path):\n            for file in os.listdir(src_path):\n                fullpath = os.path.join(src_path, file)\n                if os.path.isfile(fullpath):\n                    if ext_filter is not None:\n                        if ext_filter not in file:\n                            continue\n                    shared.log.warning(f\"Moving {file} from {src_path} to {dest_path}.\")\n                    try:\n                        shutil.move(fullpath, dest_path)\n                    except Exception:\n                        pass\n            if len(os.listdir(src_path)) == 0:\n                shared.log.info(f\"Removing empty folder: {src_path}\")\n                shutil.rmtree(src_path, True)\n    except Exception:\n        pass\n\n\ndef load_upscalers():\n    # We can only do this 'magic' method to dynamically load upscalers if they are referenced, so we'll try to import any _model.py files before looking in __subclasses__\n    t0 = time.time()\n    modules_dir = os.path.join(shared.script_path, \"modules\", \"postprocess\")\n    for file in os.listdir(modules_dir):\n        if \"_model.py\" in file:\n            model_name = file.replace(\"_model.py\", \"\")\n            full_model = f\"modules.postprocess.{model_name}_model\"\n            try:\n                importlib.import_module(full_model)\n            except Exception as e:\n                shared.log.error(f'Error loading upscaler: {model_name} {e}')\n    upscalers = []\n    commandline_options = vars(shared.cmd_opts)\n    # some of upscaler classes will not go away after reloading their modules, and we'll end up with two copies of those classes. The newest copy will always be the last in the list, so we go from end to beginning and ignore duplicates\n    used_classes = {}\n    for cls in reversed(Upscaler.__subclasses__()):\n        classname = str(cls)\n        if classname not in used_classes:\n            used_classes[classname] = cls\n    upscaler_types = []\n    for cls in reversed(used_classes.values()):\n        name = cls.__name__\n        cmd_name = f\"{name.lower().replace('upscaler', '')}_models_path\"\n        commandline_model_path = commandline_options.get(cmd_name, None)\n        scaler = cls(commandline_model_path)\n        scaler.user_path = commandline_model_path\n        scaler.model_download_path = commandline_model_path or scaler.model_path\n        upscalers += scaler.scalers\n        upscaler_types.append(name[8:])\n    shared.sd_upscalers = upscalers\n    t1 = time.time()\n    shared.log.info(f\"Available Upscalers: items={len(shared.sd_upscalers)} downloaded={len([x for x in shared.sd_upscalers if x.data_path is not None and os.path.isfile(x.data_path)])} user={len([x for x in shared.sd_upscalers if x.custom])} time={t1-t0:.2f} types={upscaler_types}\")\n    return [x.name for x in shared.sd_upscalers]\n"
  },
  {
    "path": "modules/models_hf.py",
    "content": "import os\nimport time\nimport gradio as gr\nfrom installer import log, install\nfrom modules.shared import opts\n\n\n# initialize huggingface environment\ndef hf_init():\n    os.environ.setdefault('HF_HUB_DISABLE_EXPERIMENTAL_WARNING', '1')\n    os.environ.setdefault('HF_HUB_DISABLE_EXPERIMENTAL_WARNING', '1')\n    os.environ.setdefault('HF_HUB_DISABLE_IMPLICIT_TOKEN', '1')\n    os.environ.setdefault('HF_HUB_DISABLE_SYMLINKS_WARNING', '1')\n    os.environ.setdefault('HF_HUB_DISABLE_TELEMETRY', '1')\n    os.environ.setdefault('HF_HUB_VERBOSITY', 'warning')\n    os.environ.setdefault('HF_HUB_DOWNLOAD_TIMEOUT', '60')\n    os.environ.setdefault('HF_HUB_ETAG_TIMEOUT', '10')\n    os.environ.setdefault('HF_ENABLE_PARALLEL_LOADING', 'true' if opts.sd_parallel_load else 'false')\n    os.environ.setdefault('HF_HUB_CACHE', opts.hfcache_dir)\n    if opts.hf_transfer_mode == 'requests':\n        os.environ.setdefault('HF_XET_HIGH_PERFORMANCE', 'false')\n        os.environ.setdefault('HF_HUB_ENABLE_HF_TRANSFER', 'false')\n        os.environ.setdefault('HF_HUB_DISABLE_XET', 'true')\n    elif opts.hf_transfer_mode == 'rust':\n        install('hf_transfer')\n        import huggingface_hub\n        huggingface_hub.utils._runtime.is_hf_transfer_available = lambda: True  # pylint: disable=protected-access\n        os.environ.setdefault('HF_XET_HIGH_PERFORMANCE', 'false')\n        os.environ.setdefault('HF_HUB_ENABLE_HF_TRANSFER', 'true')\n        os.environ.setdefault('HF_HUB_DISABLE_XET', 'true')\n    elif opts.hf_transfer_mode == 'xet':\n        install('hf_xet')\n        import huggingface_hub\n        huggingface_hub.utils._runtime.is_xet_available = lambda: True  # pylint: disable=protected-access\n        os.environ.setdefault('HF_XET_HIGH_PERFORMANCE', 'true')\n        os.environ.setdefault('HF_HUB_ENABLE_HF_TRANSFER', 'true')\n        os.environ.setdefault('HF_HUB_DISABLE_XET', 'false')\n\n    obfuscated_token = None\n    if len(opts.huggingface_token) > 0 and opts.huggingface_token.startswith('hf_'):\n        obfuscated_token = 'hf_...' + opts.huggingface_token[-4:]\n    log.info(f'Huggingface: transfer={opts.hf_transfer_mode} parallel={opts.sd_parallel_load} direct={opts.diffusers_to_gpu} token=\"{obfuscated_token}\" cache=\"{opts.hfcache_dir}\" init')\n\n\ndef hf_check_cache():\n    prev_default = os.environ.get(\"SD_HFCACHEDIR\", None) or os.path.join(os.path.expanduser('~'), '.cache', 'huggingface', 'hub')\n    from modules.modelstats import stat\n    if opts.hfcache_dir != prev_default:\n        size, _mtime = stat(prev_default)\n        if size//1024//1024 > 0:\n            log.warning(f'Cache location changed: previous=\"{prev_default}\" size={size//1024//1024} MB')\n    size, _mtime = stat(opts.hfcache_dir)\n    log.debug(f'Huggingface: cache=\"{opts.hfcache_dir}\" size={size//1024//1024} MB')\n\n\ndef hf_search(keyword):\n    import huggingface_hub as hf\n    t0 = time.time()\n    hf_api = hf.HfApi()\n    models = hf_api.list_models(model_name=keyword, full=True, library=\"diffusers\", limit=50, sort=\"downloads\", direction=-1)\n    data = []\n    for model in models:\n        tags = [t for t in model.tags if not t.startswith('diffusers') and not t.startswith('license') and not t.startswith('arxiv') and len(t) > 2]\n        data.append([model.id, model.pipeline_tag, tags, model.downloads, model.lastModified, f'https://huggingface.co/{model.id}'])\n    log.debug(f'Huggingface: search=\"{keyword}\" results={len(data)} time={time.time()-t0:.2f}')\n    return data\n\n\ndef hf_select(evt: gr.SelectData, df):\n    row = list(df.iloc[evt.index[0]])\n    log.debug(f'Huggingface: selected={row} index={evt.index}')\n    return row[0] # repo_id only\n\n\ndef hf_download_model(hub_id: str, token, variant, revision, mirror, custom_pipeline):\n    from modules.modelloader import download_diffusers_model\n    download_diffusers_model(hub_id, cache_dir=opts.diffusers_dir, token=token, variant=variant, revision=revision, mirror=mirror, custom_pipeline=custom_pipeline)\n    from modules.sd_models import list_models  # pylint: disable=W0621\n    list_models()\n    log.info(f'Huggingface: model=\"{hub_id}\" downloaded')\n    return f'Diffuser model downloaded: model=\"{hub_id}\"'\n\n\ndef hf_update_token(token):\n    log.debug('Huggingface: update token')\n    opts.huggingface_token = token\n    opts.save()\n"
  },
  {
    "path": "modules/modelstats.py",
    "content": "import os\nfrom datetime import datetime\nimport torch\nfrom modules import shared, sd_models\n\n\ndef walk(folder: str):\n    files = []\n    for root, _, filenames in os.walk(folder):\n        for filename in filenames:\n            files.append(os.path.join(root, filename))\n    return files\n\n\ndef stat(fn: str):\n    if fn is None or len(fn) == 0 or not os.path.exists(fn):\n        return 0, datetime.fromtimestamp(0)\n    fs_stat = os.stat(fn, follow_symlinks=False)\n    mtime = datetime.fromtimestamp(fs_stat.st_mtime).replace(microsecond=0)\n    if os.path.islink(fn):\n        size = 0\n    elif os.path.isfile(fn):\n        size = round(fs_stat.st_size)\n    elif os.path.isdir(fn):\n        size = round(sum(stat(fn)[0] for fn in walk(fn)))\n    else:\n        size = 0\n    return size, mtime\n\n\nclass Module():\n    name: str = ''\n    cls: str = None\n    device: str = None\n    dtype: str = None\n    params: int = 0\n    modules: int = 0\n    quant: str = None\n    config: dict = None\n\n    def __init__(self, name, module):\n        self.name = name\n        self.cls = module.__class__.__name__\n        if isinstance(module, tuple):\n            self.cls = module[1]\n        if hasattr(module, 'config'):\n            self.config = module.config\n        if isinstance(module, torch.nn.Module):\n            self.device = getattr(module, 'device', None)\n            self.dtype = getattr(module, 'dtype', None)\n            self.params = sum(p.numel() for p in module.parameters(recurse=True))\n            self.modules = len(list(module.modules()))\n            self.quant = getattr(module, 'quantization_method', None)\n\n    def __repr__(self):\n        s = f'name=\"{self.name}\" cls={self.cls} config={self.config is not None}'\n        if self.device or self.dtype:\n            s += f' device={self.device} dtype={self.dtype}'\n        if self.params or self.modules:\n            s += f' params={self.params} modules={self.modules}'\n        return s\n\n\nclass Model():\n    name: str = ''\n    fn: str = ''\n    type: str = ''\n    cls: str = ''\n    hash: str = ''\n    meta: dict = {}\n    size: int = 0\n    mtime: datetime = None\n    info: sd_models.CheckpointInfo = None\n    modules: list[Module] = []\n\n    def __init__(self, name):\n        self.name = name\n        if not shared.sd_loaded:\n            return\n        self.cls = shared.sd_model.__class__.__name__\n        self.type = shared.sd_model_type\n        self.info = sd_models.get_closest_checkpoint_match(name)\n        if self.info is not None:\n            self.name = self.info.name or self.name\n            self.hash = self.info.shorthash or ''\n            self.meta = self.info.metadata or {}\n            self.size, self.mtime = stat(self.info.filename)\n\n    def __repr__(self):\n        return f'model=\"{self.name}\" type={self.type} class={self.cls} size={self.size} mtime=\"{self.mtime}\" modules={self.modules}'\n\n\ndef analyze():\n    if not shared.sd_loaded:\n        return None\n    model = Model(shared.opts.sd_model_checkpoint)\n    if model.cls == '':\n        return model\n    if hasattr(shared.sd_model, '_internal_dict'):\n        keys = shared.sd_model._internal_dict.keys() # pylint: disable=protected-access\n    else:\n        keys = sd_models.get_signature(shared.sd_model).keys()\n    model.modules.clear()\n    for k in keys: # pylint: disable=protected-access\n        if k.startswith('_'):\n            continue\n        component = getattr(shared.sd_model, k, None)\n        module = Module(k, component)\n        model.modules.append(module)\n    shared.log.debug(f'Analyzed: {model}')\n    return model\n"
  },
  {
    "path": "modules/modular.py",
    "content": "import time\nimport diffusers\nfrom modules import shared\n\n\nmodular_map= {\n    'StableDiffusionXLPipeline': 'StableDiffusionXLAutoBlocks',\n    'StableDiffusionXLImg2ImgPipeline': 'StableDiffusionXLAutoBlocks',\n    'StableDiffusionXLInpaintPipeline': 'StableDiffusionXLAutoBlocks',\n    'FluxPipeline': 'FluxAutoBlocks',\n    'FluxImg2ImgPipeline': 'FluxAutoBlocks',\n    'FluxInpaintPipeline': 'FluxAutoBlocks',\n    'WanPipeline': 'WanAutoBlocks',\n    'WanImageToVideoPipeline': 'WanAutoBlocks',\n    'QwenImagePipeline': 'QwenImageAutoBlocks',\n    'QwenImageEditPipeline': 'QwenImageEditAutoBlocks',\n}\n\n\ndef is_compatible(diffusion_pipeline: diffusers.DiffusionPipeline) -> bool:\n    if not shared.opts.model_modular_enable:\n        return False\n    compatible = diffusion_pipeline.__class__.__name__ in modular_map\n    if not compatible:\n        shared.log.debug(f'Modular: source={diffusion_pipeline.__class__.__name__} incompatible pipeline')\n    return compatible\n\n\ndef is_guider(diffusion_pipeline: diffusers.DiffusionPipeline) -> bool:\n    guider = getattr(diffusion_pipeline, 'guider', None)\n    return guider is not None\n\n\ndef convert_to_modular(diffusion_pipeline: diffusers.DiffusionPipeline) -> diffusers.ModularPipeline:\n    modular_pipe = None\n    try:\n        t0 = time.time()\n        modular_cls = modular_map.get(diffusion_pipeline.__class__.__name__, None)\n        if modular_cls is None:\n            raise ValueError(f'unknown: cls={diffusion_pipeline.__class__.__name__}')\n        modular_cls = getattr(diffusers, modular_cls, None)\n        if modular_cls is None:\n            raise ValueError(f'invalid: cls={diffusion_pipeline.__class__.__name__}')\n        modular_blocks = modular_cls()\n        modular_pipe = modular_blocks.init_pipeline()\n        components_dct = {k: v for k, v in diffusion_pipeline.components.items() if v is not None}\n        modular_pipe.update_components(**components_dct, **diffusion_pipeline.parameters)\n        modular_pipe.original_pipe = diffusion_pipeline\n        t1 = time.time()\n        shared.log.debug(f'Modular: source={diffusion_pipeline.__class__.__name__} target={modular_pipe.__class__.__name__} time={t1 - t0:.2f}')\n        \"\"\"\n        for expected_input_param in modular_pipe.blocks.inputs:\n            name = expected_input_param.name\n            default = expected_input_param.default\n            kwargs_type = expected_input_param.kwargs_type\n            shared.log.trace(f'Modular input: name={name} type={kwargs_type} default={default}')\n        \"\"\"\n\n    except Exception as e:\n        shared.log.error(f'Modular: {e}')\n        raise e\n    return modular_pipe\n\n\ndef restore_standard(modular_pipe):\n    if hasattr(modular_pipe, 'original_pipe'):\n        shared.log.debug(f'Modular: source={modular_pipe.__class__.__name__} target={modular_pipe.original_pipe.__class__.__name__}')\n        return modular_pipe.original_pipe\n    return modular_pipe\n"
  },
  {
    "path": "modules/modular_guiders.py",
    "content": "import diffusers\nfrom modules import shared, errors, processing\n\n\n# ['Default', 'CFG', 'Zero', 'PAG', 'APG', 'SLG', 'SEG', 'TCFG', 'FDG']\nguiders = {\n    # 'None': { 'cls': None, 'args': {}, },\n    'Default': { 'cls': None, 'args': {}, },\n    'CFG: ClassifierFreeGuidance': { 'cls': diffusers.ClassifierFreeGuidance, 'args': {} },\n    'Auto: AutoGuidance': { 'cls': diffusers.AutoGuidance, 'args': { 'dropout': 1.0, 'auto_guidance_layers': [7, 8, 9], 'auto_guidance_config': None } },\n    'Zero: ClassifierFreeZeroStar': { 'cls': diffusers.ClassifierFreeZeroStarGuidance, 'args': { 'zero_init_steps': 1 } },\n    'PAG: PerturbedAttentionGuidance': { 'cls': diffusers.PerturbedAttentionGuidance, 'args': { 'perturbed_guidance_scale': 2.8, 'perturbed_guidance_start': 0.01, 'perturbed_guidance_stop': 0.2, 'perturbed_guidance_layers': [7, 8, 9], 'perturbed_guidance_config': None } },\n    'APG: AdaptiveProjectedGuidance': { 'cls': diffusers.AdaptiveProjectedGuidance, 'args': { 'adaptive_projected_guidance_momentum': -1, 'adaptive_projected_guidance_rescale': 15.0 } },\n    'SLG: SkipLayerGuidance': { 'cls': diffusers.SkipLayerGuidance, 'args': { 'skip_layer_guidance_scale': 2.8, 'skip_layer_guidance_start': 0.01, 'skip_layer_guidance_stop': 0.2, 'skip_layer_guidance_layers': [7, 8, 9], 'skip_layer_config': None } },\n    'SEG: SmoothedEnergyGuidance': { 'cls': diffusers.SmoothedEnergyGuidance, 'args': { 'seg_guidance_scale': 3.0, 'seg_blur_sigma': 9999999.0, 'seg_blur_threshold_inf': 9999.0, 'seg_guidance_start': 0.0, 'seg_guidance_stop': 1.0, 'seg_guidance_layers': [7, 8, 9], 'seg_guidance_config': None } },\n    'TCFG: TangentialClassifierFreeGuidance': { 'cls': diffusers.TangentialClassifierFreeGuidance, 'args': {} },\n    'FDG: FrequencyDecoupledGuidance': { 'cls': diffusers.FrequencyDecoupledGuidance, 'args': { 'guidance_scales': [10.0, 5.0], 'parallel_weights': 1.0, 'guidance_rescale_space': \"data\" } },\n}\nbase_args = {\n    'guidance_scale': 6.0,\n    'guidance_rescale': 0.0,\n    'start': 0.0,\n    'stop': 1.0,\n}\n\n\ndef set_guider(p: processing.StableDiffusionProcessing):\n    guidance_name = p.guidance_name or 'Default'\n    if guidance_name not in guiders:\n        return\n\n    if guidance_name == 'Default':\n        if hasattr(shared.sd_model, 'default_guider'):\n            guider_info = shared.sd_model.default_guider\n            guider_cls = guider_info.type_hint if hasattr(guider_info, 'type_hint') else type(guider_info)\n            shared.sd_model.update_components(guider=guider_info)\n        elif hasattr(shared.sd_model, 'get_component_spec'):\n            guider_info = shared.sd_model.get_component_spec(\"guider\")\n            guider_cls = guider_info.type_hint if hasattr(guider_info, 'type_hint') else type(guider_info)\n            shared.sd_model.default_guider = guider_info\n        elif hasattr(shared.sd_model, 'guider') and hasattr(shared.sd_model.guider, 'config'):\n            guider_info = shared.sd_model.guider\n            guider_cls = type(shared.sd_model.guider)\n            # shared.sd_model.default_guider = guider_info\n        else:\n            guider_info = None\n            guider_cls = None\n        if guider_info is not None and guider_cls is not None and guider_info.config is not None:\n            guider_args = {k: v for k, v in guider_info.config.items() if not k.startswith('_') and v is not None}\n        else:\n            guider_args = {}\n        shared.log.info(f'Guider: name={guidance_name} cls={guider_cls.__name__ if guider_cls is not None else None} args={guider_args}')\n        return\n    if guidance_name == 'None':\n        shared.sd_model.update_components(guider=None) # breaks the pipeline\n        shared.log.info(f'Guider: name={guidance_name}')\n        return\n\n    guider_info = guiders[guidance_name]\n    guider_cls = guider_info['cls']\n    guider_args = {}\n    for k, v in base_args.items():\n        if v is not None and v >= 0.0:\n            guider_args[k] = v\n    shared.log.warning('Guiders: partially implemented') # TODO: guiders\n    for k, v in guider_info['args'].items():\n        try:\n            if k is None:\n                pass\n            elif k.endswith('_layers') and isinstance(v, str):\n                guider_args[k] = [int(x.strip()) for x in v.split(',') if x.strip().isdigit()]\n            elif k.endswith('_config'):\n                # if lsc_enabled\n                # guider_args[k] = diffusers.LayerSkipConfig(...)\n                pass\n            elif isinstance(v, list) and len(v) > 0:\n                guider_args[k] = v\n            elif isinstance(v, int) and (v >= 0):\n                guider_args[k] = int(v)\n            elif isinstance(v, float) and (v >= 0.0):\n                guider_args[k] = float(v)\n            elif isinstance(v, str) and (len(v) > 0):\n                guider_args[k] = v\n        except Exception as e:\n            shared.log.error(f'Guiders: arg={k} value={v} error={e}')\n            errors.display(e, 'Guiders')\n    # guider_args.update(guider_info['args'])\n    if guider_cls is not None:\n        try:\n            guider_instance = guider_cls(**guider_args)\n            shared.log.info(f'Guider: name={guidance_name} cls={guider_cls.__name__} args={guider_args}')\n            shared.sd_model.update_components(guider=guider_instance)\n        except Exception as e:\n            shared.log.error(f'Guider: name={guidance_name} cls={guider_cls.__name__} args={guider_args} {e}')\n            return\n"
  },
  {
    "path": "modules/olive_script.py",
    "content": "import os\nfrom typing import Type, Callable, TypeVar, Dict, Any\nimport torch\nimport diffusers\nfrom transformers.models.clip.modeling_clip import CLIPTextModel, CLIPTextModelWithProjection\n\n\nclass ENVStore:\n    __DESERIALIZER: Dict[Type, Callable[[str,], Any]] = {\n        bool: lambda x: bool(int(x)),\n        int: int,\n        str: lambda x: x,\n    }\n    __SERIALIZER: Dict[Type, Callable[[Any,], str]] = {\n        bool: lambda x: str(int(x)),\n        int: str,\n        str: lambda x: x,\n    }\n\n    def __getattr__(self, name: str):\n        value = os.environ.get(f\"SDNEXT_OLIVE_{name}\", None)\n        if value is None:\n            return value\n        ty = self.__class__.__annotations__[name]\n        deserialize = self.__DESERIALIZER[ty]\n        return deserialize(value)\n\n    def __setattr__(self, name: str, value) -> None:\n        if name not in self.__class__.__annotations__:\n            return\n        ty = self.__class__.__annotations__[name]\n        serialize = self.__SERIALIZER[ty]\n        os.environ[f\"SDNEXT_OLIVE_{name}\"] = serialize(value)\n\n    def __delattr__(self, name: str) -> None:\n        if name not in self.__class__.__annotations__:\n            return\n        key = f\"SDNEXT_OLIVE_{name}\"\n        if key not in os.environ:\n            return\n        os.environ.pop(key)\n\n\nclass OliveOptimizerConfig(ENVStore):\n    from_diffusers_cache: bool\n\n    is_sdxl: bool\n\n    vae: str\n    vae_sdxl_fp16_fix: bool\n\n    width: int\n    height: int\n    batch_size: int\n\n    cross_attention_dim: int\n    time_ids_size: int\n\n\nconfig = OliveOptimizerConfig()\n\n\ndef get_variant():\n    from modules.shared import opts\n\n    if opts.diffusers_model_load_variant == 'default':\n        from modules import devices\n\n        if devices.dtype == torch.float16:\n            return 'fp16'\n\n        return None\n    elif opts.diffusers_model_load_variant == 'fp32':\n        return None\n    else:\n        return opts.diffusers_model_load_variant\n\n\ndef get_loader_arguments(no_variant: bool = False):\n    kwargs = {}\n\n    if config.from_diffusers_cache:\n        from modules.shared import opts\n        kwargs[\"cache_dir\"] = opts.diffusers_dir\n        if not no_variant:\n            kwargs[\"variant\"] = get_variant()\n\n    return kwargs\n\n\nT = TypeVar(\"T\")\ndef from_pretrained(cls: Type[T], pretrained_model_name_or_path: os.PathLike, *args, no_variant: bool = False, **kwargs) -> T:\n    pretrained_model_name_or_path = str(pretrained_model_name_or_path)\n    if pretrained_model_name_or_path.endswith(\".onnx\"):\n        cls = diffusers.OnnxRuntimeModel\n        pretrained_model_name_or_path = os.path.dirname(pretrained_model_name_or_path)\n    return cls.from_pretrained(pretrained_model_name_or_path, *args, **kwargs, **get_loader_arguments(no_variant))\n\n\n# -------------------------------------------------------------------------\n# Copyright (c) Microsoft Corporation. All rights reserved.\n# Licensed under the MIT License.\n# --------------------------------------------------------------------------\n\n\n# Helper latency-only dataloader that creates random tensors with no label\nclass RandomDataLoader:\n    def __init__(self, create_inputs_func, batchsize, torch_dtype):\n        self.create_input_func = create_inputs_func\n        self.batchsize = batchsize\n        self.torch_dtype = torch_dtype\n\n    def __getitem__(self, idx):\n        label = None\n        return self.create_input_func(self.batchsize, self.torch_dtype), label\n\n# -----------------------------------------------------------------------------\n# TEXT ENCODER\n# -----------------------------------------------------------------------------\n\n\ndef text_encoder_inputs(batchsize, torch_dtype): # pylint: disable=unused-argument\n    input_ids = torch.zeros((config.batch_size, 77), dtype=torch_dtype)\n    return {\n        \"input_ids\": input_ids,\n        \"output_hidden_states\": True,\n    } if config.is_sdxl else input_ids\n\n\ndef text_encoder_load(model_name):\n    model = from_pretrained(CLIPTextModel, model_name, subfolder=\"text_encoder\")\n    return model\n\n\ndef text_encoder_conversion_inputs(model): # pylint: disable=unused-argument\n    return text_encoder_inputs(1, torch.int32)\n\n\ndef text_encoder_data_loader(data_dir, batchsize, *_, **__): # pylint: disable=unused-argument\n    return RandomDataLoader(text_encoder_inputs, config.batch_size, torch.int32)\n\n\n# -----------------------------------------------------------------------------\n# TEXT ENCODER 2\n# -----------------------------------------------------------------------------\n\n\ndef text_encoder_2_inputs(batchsize, torch_dtype): # pylint: disable=unused-argument\n    return {\n        \"input_ids\": torch.zeros((config.batch_size, 77), dtype=torch_dtype),\n        \"output_hidden_states\": True,\n    }\n\n\ndef text_encoder_2_load(model_name):\n    model = from_pretrained(CLIPTextModelWithProjection, model_name, subfolder=\"text_encoder_2\")\n    return model\n\n\ndef text_encoder_2_conversion_inputs(model): # pylint: disable=unused-argument\n    return text_encoder_2_inputs(1, torch.int64)\n\n\ndef text_encoder_2_data_loader(data_dir, batchsize, *_, **__): # pylint: disable=unused-argument\n    return RandomDataLoader(text_encoder_2_inputs, config.batch_size, torch.int64)\n\n\n# -----------------------------------------------------------------------------\n# UNET\n# -----------------------------------------------------------------------------\n\n\ndef unet_inputs(batchsize, torch_dtype, is_conversion_inputs=False): # pylint: disable=unused-argument\n    if config.is_sdxl:\n        inputs = {\n            \"sample\": torch.rand((2 * config.batch_size, 4, config.height // 8, config.width // 8), dtype=torch_dtype),\n            \"timestep\": torch.rand((1,), dtype=torch_dtype),\n            \"encoder_hidden_states\": torch.rand((2 * config.batch_size, 77, config.cross_attention_dim), dtype=torch_dtype),\n        }\n\n        if is_conversion_inputs:\n            inputs[\"additional_inputs\"] = {\n                \"added_cond_kwargs\": {\n                    \"text_embeds\": torch.rand((2 * config.batch_size, 1280), dtype=torch_dtype),\n                    \"time_ids\": torch.rand((2 * config.batch_size, config.time_ids_size), dtype=torch_dtype),\n                }\n            }\n        else:\n            inputs[\"text_embeds\"] = torch.rand((2 * config.batch_size, 1280), dtype=torch_dtype)\n            inputs[\"time_ids\"] = torch.rand((2 * config.batch_size, config.time_ids_size), dtype=torch_dtype)\n    else:\n        inputs = {\n            \"sample\": torch.rand((config.batch_size, 4, config.height // 8, config.width // 8), dtype=torch_dtype),\n            \"timestep\": torch.rand((config.batch_size,), dtype=torch_dtype),\n            \"encoder_hidden_states\": torch.rand((config.batch_size, 77, config.cross_attention_dim), dtype=torch_dtype),\n        }\n\n        # use as kwargs since they won't be in the correct position if passed along with the tuple of inputs\n        kwargs = {\n            \"return_dict\": False,\n        }\n        if is_conversion_inputs:\n            inputs[\"additional_inputs\"] = {\n                **kwargs,\n                \"added_cond_kwargs\": {\n                    \"text_embeds\": torch.rand((1, 1280), dtype=torch_dtype),\n                    \"time_ids\": torch.rand((1, 5), dtype=torch_dtype),\n                },\n            }\n        else:\n            inputs.update(kwargs)\n            inputs[\"onnx::Concat_4\"] = torch.rand((1, 1280), dtype=torch_dtype)\n            inputs[\"onnx::Shape_5\"] = torch.rand((1, 5), dtype=torch_dtype)\n\n    return inputs\n\n\ndef unet_load(model_name):\n    model = from_pretrained(diffusers.UNet2DConditionModel, model_name, subfolder=\"unet\")\n    return model\n\n\ndef unet_conversion_inputs(model): # pylint: disable=unused-argument\n    return tuple(unet_inputs(1, torch.float32, True).values())\n\n\ndef unet_data_loader(data_dir, batchsize, *_, **__): # pylint: disable=unused-argument\n    return RandomDataLoader(unet_inputs, config.batch_size, torch.float16)\n\n\n# -----------------------------------------------------------------------------\n# VAE ENCODER\n# -----------------------------------------------------------------------------\n\n\ndef vae_encoder_inputs(batchsize, torch_dtype): # pylint: disable=unused-argument\n    return {\n        \"sample\": torch.rand((config.batch_size, 3, config.height, config.width), dtype=torch_dtype),\n        \"return_dict\": False,\n    }\n\n\ndef vae_encoder_load(model_name):\n    subfolder = \"vae_encoder\" if os.path.isdir(os.path.join(model_name, \"vae_encoder\")) else \"vae\"\n\n    if config.vae_sdxl_fp16_fix:\n        model_name = \"madebyollin/sdxl-vae-fp16-fix\"\n        subfolder = \"\"\n\n    if config.vae is None:\n        model = from_pretrained(diffusers.AutoencoderKL, model_name, subfolder=subfolder, no_variant=config.vae_sdxl_fp16_fix)\n    else:\n        model = diffusers.AutoencoderKL.from_single_file(config.vae)\n\n    model.forward = lambda sample, return_dict: model.encode(sample, return_dict)[0].sample()\n\n    return model\n\n\ndef vae_encoder_conversion_inputs(model): # pylint: disable=unused-argument\n    return tuple(vae_encoder_inputs(1, torch.float32).values())\n\n\ndef vae_encoder_data_loader(data_dir, batchsize, *_, **__): # pylint: disable=unused-argument\n    return RandomDataLoader(vae_encoder_inputs, config.batch_size, torch.float16)\n\n\n# -----------------------------------------------------------------------------\n# VAE DECODER\n# -----------------------------------------------------------------------------\n\n\ndef vae_decoder_inputs(batchsize, torch_dtype): # pylint: disable=unused-argument\n    return {\n        \"latent_sample\": torch.rand((config.batch_size, 4, config.height // 8, config.width // 8), dtype=torch_dtype),\n        \"return_dict\": False,\n    }\n\n\ndef vae_decoder_load(model_name):\n    subfolder = \"vae_decoder\" if os.path.isdir(os.path.join(model_name, \"vae_decoder\")) else \"vae\"\n\n    if config.vae_sdxl_fp16_fix:\n        model_name = \"madebyollin/sdxl-vae-fp16-fix\"\n        subfolder = \"\"\n\n    if config.vae is None:\n        model = from_pretrained(diffusers.AutoencoderKL, model_name, subfolder=subfolder, no_variant=config.vae_sdxl_fp16_fix)\n    else:\n        model = diffusers.AutoencoderKL.from_single_file(config.vae)\n\n    model.forward = model.decode\n\n    return model\n\n\ndef vae_decoder_conversion_inputs(model): # pylint: disable=unused-argument\n    return tuple(vae_decoder_inputs(1, torch.float32).values())\n\n\ndef vae_decoder_data_loader(data_dir, batchsize, *_, **__): # pylint: disable=unused-argument\n    return RandomDataLoader(vae_decoder_inputs, config.batch_size, torch.float16)\n"
  },
  {
    "path": "modules/onnx_impl/__init__.py",
    "content": "from typing import Any, Dict, Optional\nimport numpy as np\nimport torch\nimport diffusers\nfrom installer import log, installed, install\n\n\ninitialized = False\n\n\ntry:\n    import onnxruntime as ort\nexcept Exception as e:\n    log.error(f'ONNX import error: {e}')\n    ort = None\n\n\nclass DynamicSessionOptions(ort.SessionOptions):\n    config: Optional[Dict] = None\n\n    def __init__(self):\n        super().__init__()\n        self.enable_mem_pattern = False\n\n    @classmethod\n    def from_sess_options(cls, sess_options: ort.SessionOptions):\n        if isinstance(sess_options, DynamicSessionOptions):\n            return sess_options.copy()\n        return DynamicSessionOptions()\n\n    def enable_static_dims(self, config: Dict):\n        self.config = config\n        self.add_free_dimension_override_by_name(\"unet_sample_batch\", config[\"hidden_batch_size\"])\n        self.add_free_dimension_override_by_name(\"unet_sample_channels\", 4)\n        self.add_free_dimension_override_by_name(\"unet_sample_height\", config[\"height\"] // 8)\n        self.add_free_dimension_override_by_name(\"unet_sample_width\", config[\"width\"] // 8)\n        self.add_free_dimension_override_by_name(\"unet_time_batch\", 1)\n        self.add_free_dimension_override_by_name(\"unet_hidden_batch\", config[\"hidden_batch_size\"])\n        self.add_free_dimension_override_by_name(\"unet_hidden_sequence\", 77)\n        if config[\"is_sdxl\"] and not config[\"is_refiner\"]:\n            self.add_free_dimension_override_by_name(\"unet_text_embeds_batch\", config[\"hidden_batch_size\"])\n            self.add_free_dimension_override_by_name(\"unet_text_embeds_size\", 1280)\n            self.add_free_dimension_override_by_name(\"unet_time_ids_batch\", config[\"hidden_batch_size\"])\n            self.add_free_dimension_override_by_name(\"unet_time_ids_size\", 6)\n\n    def copy(self):\n        sess_options = DynamicSessionOptions()\n        if self.config is not None:\n            sess_options.enable_static_dims(self.config)\n        return sess_options\n\n\nclass TorchCompatibleModule:\n    device = torch.device(\"cpu\")\n    dtype = torch.float32\n\n    def named_modules(self): # dummy\n        return ()\n\n    def to(self, *_, **__):\n        raise NotImplementedError\n\n    def type(self, *_, **__):\n        return self\n\n\nclass TemporalModule(TorchCompatibleModule):\n    \"\"\"\n    Replace the models which are not able to be moved to CPU.\n    \"\"\"\n    provider: Any\n    path: str\n    sess_options: ort.SessionOptions\n\n    def __init__(self, provider: Any, path: str, sess_options: ort.SessionOptions):\n        self.provider = provider\n        self.path = path\n        self.sess_options = sess_options\n\n    def to(self, *args, **kwargs):\n        from .utils import extract_device\n\n        device = extract_device(args, kwargs)\n        if device is not None and device.type != \"cpu\":\n            from .execution_providers import TORCH_DEVICE_TO_EP\n            provider = TORCH_DEVICE_TO_EP[device.type] if device.type in TORCH_DEVICE_TO_EP else self.provider\n            return OnnxRuntimeModel.load_model(self.path, provider, DynamicSessionOptions.from_sess_options(self.sess_options))\n        return self\n\n\nclass OnnxRuntimeModel(TorchCompatibleModule, diffusers.OnnxRuntimeModel):\n    config = {} # dummy\n\n    def to(self, *args, **kwargs):\n        from modules.onnx_impl.utils import extract_device, move_inference_session\n\n        device = extract_device(args, kwargs)\n        if device is not None:\n            self.device = device\n            self.model = move_inference_session(self.model, device)\n        return self\n\n\nclass VAEConfig:\n    DEFAULTS = { \"scaling_factor\": 0.18215 }\n    config: Dict\n\n    def __init__(self, config: Dict):\n        self.config = config\n\n    def __getattr__(self, key):\n        return self.config.get(key, VAEConfig.DEFAULTS.get(key, None))\n\n    def get(self, key, default):\n        return self.config.get(key, VAEConfig.DEFAULTS.get(key, default))\n\n\nclass VAE(TorchCompatibleModule):\n    pipeline: Any\n\n    def __init__(self, pipeline: Any):\n        self.pipeline = pipeline\n\n    @property\n    def config(self):\n        return VAEConfig(self.pipeline.vae_decoder.config)\n\n    @property\n    def device(self):\n        return self.pipeline.vae_decoder.device\n\n    def encode(self, sample: torch.Tensor, *_, **__):\n        sample_np = sample.cpu().numpy()\n        return [\n            torch.from_numpy(np.concatenate(\n                [self.pipeline.vae_encoder(sample=sample_np[i : i + 1])[0] for i in range(sample_np.shape[0])]\n            )).to(sample.device)\n        ]\n\n    def decode(self, latent_sample: torch.Tensor, *_, **__):\n        latents_np = latent_sample.cpu().numpy()\n        return [\n            torch.from_numpy(np.concatenate(\n                [self.pipeline.vae_decoder(latent_sample=latents_np[i : i + 1])[0] for i in range(latents_np.shape[0])]\n            )).to(latent_sample.device)\n        ]\n\n    def to(self, *args, **kwargs):\n        self.pipeline.vae_encoder = self.pipeline.vae_encoder.to(*args, **kwargs)\n        self.pipeline.vae_decoder = self.pipeline.vae_decoder.to(*args, **kwargs)\n        return self\n\n\ndef check_parameters_changed(p, refiner_enabled: bool):\n    from modules import shared, sd_models\n    if shared.sd_model.__class__.__name__ == \"OnnxRawPipeline\" or not shared.sd_model.__class__.__name__.startswith(\"Onnx\"):\n        return shared.sd_model\n    compile_height = p.height\n    compile_width = p.width\n    if (shared.compiled_model_state is None or\n    shared.compiled_model_state.height != compile_height\n    or shared.compiled_model_state.width != compile_width\n    or shared.compiled_model_state.batch_size != p.batch_size):\n        shared.log.info(\"Olive: Parameter change detected\")\n        shared.log.info(\"Olive: Recompiling base model\")\n        sd_models.unload_model_weights(op='model')\n        sd_models.reload_model_weights(op='model')\n        if refiner_enabled:\n            shared.log.info(\"Olive: Recompiling refiner\")\n            sd_models.unload_model_weights(op='refiner')\n            sd_models.reload_model_weights(op='refiner')\n    shared.compiled_model_state.height = compile_height\n    shared.compiled_model_state.width = compile_width\n    shared.compiled_model_state.batch_size = p.batch_size\n    return shared.sd_model\n\n\ndef preprocess_pipeline(p):\n    from modules import shared, sd_models\n    if \"ONNX\" not in shared.opts.diffusers_pipeline:\n        shared.log.warning(f\"Unsupported pipeline for 'olive-ai' compile backend: {shared.opts.diffusers_pipeline}. You should select one of the ONNX pipelines.\")\n        return shared.sd_model\n    if hasattr(shared.sd_model, \"preprocess\"):\n        shared.sd_model = shared.sd_model.preprocess(p)\n    if hasattr(shared.sd_refiner, \"preprocess\"):\n        if shared.opts.onnx_unload_base:\n            sd_models.unload_model_weights(op='model')\n        shared.sd_refiner = shared.sd_refiner.preprocess(p)\n        if shared.opts.onnx_unload_base:\n            sd_models.reload_model_weights(op='model')\n            shared.sd_model = shared.sd_model.preprocess(p)\n    return shared.sd_model\n\n\ndef ORTPipelinePart_to(self, *args, **kwargs):\n    self.parent_pipeline = self.parent_pipeline.to(*args, **kwargs)\n    return self\n\n\ndef initialize_onnx():\n    global initialized # pylint: disable=global-statement\n    if initialized:\n        return\n    from modules import devices\n    if not installed('onnx', quiet=True):\n        return\n    try: # may fail on onnx import\n        import onnx # pylint: disable=unused-import\n        from .execution_providers import ExecutionProvider, TORCH_DEVICE_TO_EP, available_execution_providers\n        if devices.backend == \"rocm\":\n            TORCH_DEVICE_TO_EP[\"cuda\"] = ExecutionProvider.ROCm\n        log.debug(f'ONNX: version={ort.__version__}, available={available_execution_providers}')\n\n    except Exception as e:\n        log.error(f'ONNX initialization: {e}')\n\n    initialized = True\n\n\ndef initialize_onnx_pipelines():\n    try: # may fail on onnx import\n        import onnx # pylint: disable=unused-import\n        OnnxRuntimeModel.__module__ = 'diffusers' # OnnxRuntimeModel Hijack.\n        diffusers.OnnxRuntimeModel = OnnxRuntimeModel\n        from .pipelines.onnx_stable_diffusion_pipeline import OnnxStableDiffusionPipeline\n        from .pipelines.onnx_stable_diffusion_img2img_pipeline import OnnxStableDiffusionImg2ImgPipeline\n        from .pipelines.onnx_stable_diffusion_inpaint_pipeline import OnnxStableDiffusionInpaintPipeline\n        from .pipelines.onnx_stable_diffusion_upscale_pipeline import OnnxStableDiffusionUpscalePipeline\n        from .pipelines.onnx_stable_diffusion_xl_pipeline import OnnxStableDiffusionXLPipeline\n        from .pipelines.onnx_stable_diffusion_xl_img2img_pipeline import OnnxStableDiffusionXLImg2ImgPipeline\n        diffusers.OnnxStableDiffusionPipeline = OnnxStableDiffusionPipeline\n        diffusers.OnnxStableDiffusionImg2ImgPipeline = OnnxStableDiffusionImg2ImgPipeline\n        diffusers.OnnxStableDiffusionInpaintPipeline = OnnxStableDiffusionInpaintPipeline\n        diffusers.OnnxStableDiffusionUpscalePipeline = OnnxStableDiffusionUpscalePipeline\n        diffusers.OnnxStableDiffusionXLPipeline = OnnxStableDiffusionXLPipeline\n        diffusers.OnnxStableDiffusionXLImg2ImgPipeline = OnnxStableDiffusionXLImg2ImgPipeline\n        diffusers.pipelines.auto_pipeline.AUTO_TEXT2IMAGE_PIPELINES_MAPPING[\"onnx-stable-diffusion\"] = diffusers.OnnxStableDiffusionPipeline\n        diffusers.pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING[\"onnx-stable-diffusion\"] = diffusers.OnnxStableDiffusionImg2ImgPipeline\n        diffusers.pipelines.auto_pipeline.AUTO_INPAINT_PIPELINES_MAPPING[\"onnx-stable-diffusion\"] = diffusers.OnnxStableDiffusionInpaintPipeline\n        diffusers.pipelines.auto_pipeline.AUTO_TEXT2IMAGE_PIPELINES_MAPPING[\"onnx-stable-diffusion-xl\"] = diffusers.OnnxStableDiffusionXLPipeline\n        diffusers.pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING[\"onnx-stable-diffusion-xl\"] = diffusers.OnnxStableDiffusionXLImg2ImgPipeline\n        diffusers.ORTStableDiffusionXLPipeline = diffusers.OnnxStableDiffusionXLPipeline # Huggingface model compatibility\n        diffusers.ORTStableDiffusionXLImg2ImgPipeline = diffusers.OnnxStableDiffusionXLImg2ImgPipeline\n    except Exception as e:\n        log.error(f'ONNX initialization: {e}')\n\n\ndef install_olive():\n    if installed(\"olive-ai\"):\n        return\n    try:\n        log.info('Installing Olive')\n        install('onnx', 'onnx', ignore=True)\n        install('olive-ai', 'olive-ai', ignore=True)\n        import olive.workflows # pylint: disable=unused-import\n    except Exception as e:\n        log.error(f'Olive: Failed to load olive-ai: {e}')\n    else:\n        log.info('Olive: Please restart webui session.')\n"
  },
  {
    "path": "modules/onnx_impl/execution_providers.py",
    "content": "import sys\nfrom enum import Enum\nfrom typing import Tuple, List\nfrom installer import log\nfrom modules import devices\n\n\nclass ExecutionProvider(str, Enum):\n    CPU = \"CPUExecutionProvider\"\n    DirectML = \"DmlExecutionProvider\"\n    CUDA = \"CUDAExecutionProvider\"\n    ROCm = \"ROCMExecutionProvider\"\n    MIGraphX = \"MIGraphXExecutionProvider\"\n    OpenVINO = \"OpenVINOExecutionProvider\"\n\n\nEP_TO_NAME = {\n    ExecutionProvider.CPU: \"gpu-cpu\", # ???\n    ExecutionProvider.DirectML: \"gpu-dml\",\n    ExecutionProvider.CUDA: \"gpu-cuda\", # test required\n    ExecutionProvider.ROCm: \"gpu-rocm\", # test required\n    ExecutionProvider.MIGraphX: \"gpu-migraphx\", # test required\n    ExecutionProvider.OpenVINO: \"gpu-openvino\", # test required\n}\nTORCH_DEVICE_TO_EP = {\n    \"cpu\": ExecutionProvider.CPU if devices.backend != \"openvino\" else ExecutionProvider.OpenVINO,\n    \"cuda\": ExecutionProvider.CUDA,\n    \"xpu\": ExecutionProvider.OpenVINO,\n    \"privateuseone\": ExecutionProvider.DirectML,\n    \"meta\": None,\n}\n\n\ntry:\n    import onnxruntime as ort\n    available_execution_providers: List[ExecutionProvider] = ort.get_available_providers()\nexcept Exception as e:\n    log.error(f'ONNX import error: {e}')\n    available_execution_providers = []\n    ort = None\n\n\ndef get_default_execution_provider() -> ExecutionProvider:\n    if devices.backend == \"cpu\":\n        return ExecutionProvider.CPU\n    elif devices.backend == \"directml\":\n        return ExecutionProvider.DirectML\n    elif devices.backend == \"cuda\":\n        return ExecutionProvider.CUDA\n    elif devices.backend == \"rocm\":\n        return ExecutionProvider.ROCm\n    elif devices.backend == \"ipex\" or devices.backend == \"openvino\":\n        return ExecutionProvider.OpenVINO\n    return ExecutionProvider.CPU\n\n\ndef get_execution_provider_options():\n    from modules.shared import cmd_opts, opts\n    execution_provider_options = { \"device_id\": int(cmd_opts.device_id or 0) }\n    if opts.onnx_execution_provider == ExecutionProvider.ROCm:\n        if ExecutionProvider.ROCm in available_execution_providers:\n            execution_provider_options[\"tunable_op_enable\"] = True\n            execution_provider_options[\"tunable_op_tuning_enable\"] = True\n    elif opts.onnx_execution_provider == ExecutionProvider.OpenVINO:\n        from modules.intel.openvino import get_device as get_raw_openvino_device\n        device = get_raw_openvino_device()\n        if \"HETERO:\" not in device:\n            if opts.olive_float16:\n                device = f\"{device}_FP16\"\n            else:\n                device = f\"{device}_FP32\"\n        else:\n            device = \"\"\n            available_devices = opts.openvino_devices.copy()\n            available_devices.remove(\"CPU\")\n            for hetero_device in available_devices:\n                if opts.olive_float16:\n                    device = f\"{device},{hetero_device}_FP16\"\n                else:\n                    device = f\"{device},{hetero_device}_FP32\"\n            if \"CPU\" in opts.openvino_devices:\n                if opts.olive_float16:\n                    device = f\"{device},CPU_FP16\"\n                else:\n                    device = f\"{device},CPU_FP32\"\n            device = f\"HETERO:{device[1:]}\"\n\n        execution_provider_options[\"device_type\"] = device\n        del execution_provider_options[\"device_id\"]\n    return execution_provider_options\n\n\ndef get_provider() -> Tuple:\n    from modules.shared import opts\n    return (opts.onnx_execution_provider, get_execution_provider_options(),)\n\n\ndef install_execution_provider(ep: ExecutionProvider):\n    import importlib  # pylint: disable=deprecated-module\n    from installer import installed, install, uninstall\n    res = \"<br><pre>\"\n    res += uninstall([\"onnxruntime\", \"onnxruntime-directml\", \"onnxruntime-gpu\", \"onnxruntime-training\", \"onnxruntime-openvino\"], quiet=True)\n    installed(\"onnxruntime\", reload=True)\n    packages = [\"onnxruntime\"] # Failed to load olive: cannot import name '__version__' from 'onnxruntime'\n    if ep == ExecutionProvider.DirectML:\n        packages.append(\"onnxruntime-directml\")\n    elif ep == ExecutionProvider.CUDA:\n        packages.append(\"onnxruntime-gpu\")\n    elif ep == ExecutionProvider.ROCm:\n        if \"linux\" not in sys.platform:\n            log.warning(\"ROCMExecutionProvider is not supported on Windows.\")\n            return\n        packages.append(\"--pre onnxruntime-training --index-url https://pypi.lsh.sh/60 --extra-index-url https://pypi.org/simple\")\n    elif ep == ExecutionProvider.OpenVINO:\n        packages.append(\"openvino\")\n        packages.append(\"onnxruntime-openvino\")\n    log.info(f'ONNX install: {packages}')\n    for package in packages:\n        res += install(package)\n    res += '</pre><br>'\n    res += 'Server restart required'\n    log.info(\"Server restart required\")\n    try:\n        importlib.reload(ort)\n    except Exception:\n        pass\n    return res\n"
  },
  {
    "path": "modules/onnx_impl/pipelines/__init__.py",
    "content": "import os\nimport sys\nimport json\nimport shutil\nimport tempfile\nfrom abc import ABCMeta\nfrom typing import Type, Tuple, List, Any, Dict, TYPE_CHECKING\nimport torch\nimport diffusers\nfrom installer import log, install\nfrom modules import shared\nfrom modules.paths import sd_configs_path, models_path\nfrom modules.sd_models import CheckpointInfo\nif TYPE_CHECKING:\n    from modules.processing import StableDiffusionProcessing\nfrom modules.olive_script import config\nfrom modules.onnx_impl import DynamicSessionOptions, TorchCompatibleModule, VAE\nfrom modules.onnx_impl.utils import extract_device, move_inference_session, check_diffusers_cache, check_pipeline_sdxl, check_cache_onnx, load_init_dict, load_submodel, load_submodels, patch_kwargs, load_pipeline, get_base_constructor, get_io_config\nfrom modules.onnx_impl.execution_providers import ExecutionProvider, EP_TO_NAME, get_provider\n\n\nSUBMODELS_SD = (\"text_encoder\", \"unet\", \"vae_encoder\", \"vae_decoder\",)\nSUBMODELS_SDXL = (\"text_encoder\", \"text_encoder_2\", \"unet\", \"vae_encoder\", \"vae_decoder\",)\nSUBMODELS_SDXL_REFINER = (\"text_encoder_2\", \"unet\", \"vae_encoder\", \"vae_decoder\",)\nSUBMODELS_LARGE = (\"text_encoder_2\", \"unet\",)\n\n\nclass PipelineBase(TorchCompatibleModule, diffusers.DiffusionPipeline, metaclass=ABCMeta):\n    model_type: str\n    sd_model_hash: str\n    sd_checkpoint_info: CheckpointInfo\n    sd_model_checkpoint: str\n\n    def __init__(self): # pylint: disable=super-init-not-called\n        self.model_type = self.__class__.__name__\n\n    def to(self, *args, **kwargs):\n        if self.__class__ == OnnxRawPipeline: # cannot move pipeline which is not preprocessed.\n            return self\n\n        expected_modules, _ = self._get_signature_keys(self)\n        for name in expected_modules:\n            if not hasattr(self, name):\n                log.warning(f\"Pipeline does not have module '{name}'.\")\n                continue\n\n            module = getattr(self, name)\n\n            if \"optimum.onnxruntime\" in sys.modules:\n                import optimum.onnxruntime\n                if isinstance(module, optimum.onnxruntime.modeling_diffusion._ORTDiffusionModelPart): # pylint: disable=protected-access, no-member\n                    device = extract_device(args, kwargs)\n                    if device is None:\n                        return self\n                    module.session = move_inference_session(module.session, device)\n\n            if not isinstance(module, diffusers.OnnxRuntimeModel):\n                continue\n\n            try:\n                setattr(self, name, module.to(*args, **kwargs))\n                del module\n            except Exception:\n                log.debug(f\"Component device/dtype conversion failed: module={name} args={args}, kwargs={kwargs}\")\n        return self\n\n    @property\n    def components(self):\n        return {}\n\n    @classmethod\n    def from_pretrained(cls, pretrained_model_name_or_path, **_): # pylint: disable=arguments-differ\n        return OnnxRawPipeline(\n            cls,\n            pretrained_model_name_or_path,\n        )\n\n    @classmethod\n    def from_single_file(cls, pretrained_model_name_or_path, **_):\n        return OnnxRawPipeline(\n            cls,\n            pretrained_model_name_or_path,\n        )\n\n    @classmethod\n    def from_ckpt(cls, pretrained_model_name_or_path, **_):\n        return cls.from_single_file(pretrained_model_name_or_path)\n\n\nclass CallablePipelineBase(PipelineBase):\n    vae: VAE\n\n    def __init__(self):\n        super().__init__()\n        self.vae = VAE(self)\n\n\nclass OnnxRawPipeline(PipelineBase):\n    config = {}\n    _is_sdxl: bool\n    is_refiner: bool\n    from_diffusers_cache: bool\n    path: os.PathLike\n    original_filename: str\n\n    constructor: Type[PipelineBase]\n    init_dict: Dict[str, Tuple[str]] = {}\n\n    default_scheduler: Any = None # for Img2Img\n\n    def __init__(self, constructor: Type[PipelineBase], path: os.PathLike): # pylint: disable=super-init-not-called\n        self._is_sdxl = check_pipeline_sdxl(constructor)\n        self.from_diffusers_cache = check_diffusers_cache(path)\n        self.path = path\n        self.original_filename = os.path.basename(os.path.dirname(os.path.dirname(path)) if self.from_diffusers_cache else path)\n\n        if os.path.isdir(path):\n            self.init_dict = load_init_dict(constructor, path)\n            self.default_scheduler = load_submodel(self.path, None, \"scheduler\", self.init_dict[\"scheduler\"])\n        else:\n            cls = diffusers.StableDiffusionXLPipeline if self._is_sdxl else diffusers.StableDiffusionPipeline\n            try:\n                pipeline = cls.from_single_file(path)\n                self.default_scheduler = pipeline.scheduler\n                path = shared.opts.onnx_temp_dir\n                if os.path.isdir(path):\n                    shutil.rmtree(path)\n                os.mkdir(path)\n                pipeline.save_pretrained(path)\n                del pipeline\n                self.init_dict = load_init_dict(constructor, path)\n            except Exception:\n                log.error(f'ONNX: Failed to load ONNX pipeline: is_sdxl={self._is_sdxl}')\n                log.warning('ONNX: You cannot load this model using the pipeline you selected. Please check Diffusers pipeline in Compute Settings.')\n                return\n        if \"vae\" in self.init_dict:\n            del self.init_dict[\"vae\"]\n\n        self.is_refiner = self._is_sdxl and \"Img2Img\" not in constructor.__name__ and \"Img2Img\" in diffusers.DiffusionPipeline.load_config(path)[\"_class_name\"]\n        self.constructor = constructor\n        if self.is_refiner:\n            from modules.onnx_impl.pipelines.onnx_stable_diffusion_xl_img2img_pipeline import OnnxStableDiffusionXLImg2ImgPipeline\n            self.constructor = OnnxStableDiffusionXLImg2ImgPipeline\n        self.model_type = self.constructor.__name__\n\n    def derive_properties(self, pipeline: diffusers.DiffusionPipeline):\n        pipeline.sd_model_hash = self.sd_model_hash\n        pipeline.sd_checkpoint_info = self.sd_checkpoint_info\n        pipeline.sd_model_checkpoint = self.sd_model_checkpoint\n        pipeline.scheduler = self.default_scheduler\n        return pipeline\n\n    def convert(self, submodels: List[str], in_dir: os.PathLike, out_dir: os.PathLike):\n        install('onnx') # may not be installed yet, this performs check and installs as needed\n        import onnx\n        shutil.rmtree(\"cache\", ignore_errors=True)\n        shutil.rmtree(\"footprints\", ignore_errors=True)\n\n        if shared.opts.onnx_cache_converted:\n            shutil.copytree(\n                in_dir, out_dir, ignore=shutil.ignore_patterns(\"weights.pb\", \"*.onnx\", \"*.safetensors\", \"*.ckpt\")\n            )\n\n        from modules import olive_script as script\n\n        for submodel in submodels:\n            destination = os.path.join(out_dir, submodel)\n\n            if not os.path.isdir(destination):\n                os.mkdir(destination)\n\n            model = getattr(script, f\"{submodel}_load\")(in_dir)\n            sample = getattr(script, f\"{submodel}_conversion_inputs\")(None)\n            with tempfile.TemporaryDirectory(prefix=\"onnx_conversion\") as temp_dir:\n                temp_path = os.path.join(temp_dir, \"model.onnx\")\n                torch.onnx.export(\n                    model,\n                    sample,\n                    temp_path,\n                    opset_version=14,\n                    **get_io_config(submodel, self._is_sdxl),\n                )\n                model = onnx.load(temp_path)\n            onnx.save_model(\n                model,\n                os.path.join(destination, \"model.onnx\"),\n                save_as_external_data=submodel in SUBMODELS_LARGE,\n                all_tensors_to_one_file=True,\n                location=\"weights.pb\",\n            )\n            log.info(f\"ONNX: Successfully exported converted model: submodel={submodel}\")\n\n        kwargs = {}\n\n        init_dict = self.init_dict.copy()\n        for submodel in submodels:\n            kwargs[submodel] = diffusers.OnnxRuntimeModel.load_model(\n                os.path.join(out_dir, submodel, \"model.onnx\"),\n                provider=get_provider(),\n            ) if self._is_sdxl else diffusers.OnnxRuntimeModel.from_pretrained(\n                os.path.join(out_dir, submodel),\n                provider=get_provider(),\n            )\n            if submodel in init_dict:\n                del init_dict[submodel] # already loaded as OnnxRuntimeModel.\n        kwargs.update(load_submodels(in_dir, self._is_sdxl, init_dict)) # load others.\n        constructor = get_base_constructor(self.constructor, self.is_refiner)\n        kwargs = patch_kwargs(constructor, kwargs)\n\n        pipeline = constructor(**kwargs)\n        model_index = json.loads(pipeline.to_json_string())\n        del pipeline\n\n        for k, v in init_dict.items(): # copy missing submodels. (ORTStableDiffusionXLPipeline)\n            if k not in model_index:\n                model_index[k] = v\n\n        with open(os.path.join(out_dir, \"model_index.json\"), 'w', encoding=\"utf-8\") as file:\n            json.dump(model_index, file)\n\n    def run_olive(self, submodels: List[str], in_dir: os.PathLike, out_dir: os.PathLike):\n        from olive.model import ONNXModelHandler\n        from olive.workflows import run as run_workflows\n\n        shutil.rmtree(\"cache\", ignore_errors=True)\n        shutil.rmtree(\"footprints\", ignore_errors=True)\n\n        if shared.opts.olive_cache_optimized:\n            shutil.copytree(\n                in_dir, out_dir, ignore=shutil.ignore_patterns(\"weights.pb\", \"*.onnx\", \"*.safetensors\", \"*.ckpt\")\n            )\n\n        optimized_model_paths = {}\n\n        for submodel in submodels:\n            log.info(f\"\\nProcessing {submodel}\")\n\n            with open(os.path.join(sd_configs_path, \"olive\", 'sdxl' if self._is_sdxl else 'sd', f\"{submodel}.json\"), \"r\", encoding=\"utf-8\") as config_file:\n                olive_config: Dict[str, Dict[str, Dict]] = json.load(config_file)\n\n            for flow in olive_config[\"pass_flows\"]:\n                for i in range(len(flow)):\n                    flow[i] = flow[i].replace(\"AutoExecutionProvider\", shared.opts.onnx_execution_provider)\n            olive_config[\"input_model\"][\"config\"][\"model_path\"] = os.path.abspath(os.path.join(in_dir, submodel, \"model.onnx\"))\n            olive_config[\"systems\"][\"local_system\"][\"config\"][\"accelerators\"][0][\"device\"] = \"cpu\" if shared.opts.onnx_execution_provider == ExecutionProvider.CPU else \"gpu\"\n            olive_config[\"systems\"][\"local_system\"][\"config\"][\"accelerators\"][0][\"execution_providers\"] = [shared.opts.onnx_execution_provider]\n\n            for pass_key in olive_config[\"passes\"]:\n                if olive_config[\"passes\"][pass_key][\"type\"] == \"OrtTransformersOptimization\":\n                    float16 = shared.opts.olive_float16 and not (submodel == \"vae_encoder\" and shared.opts.olive_vae_encoder_float32)\n                    olive_config[\"passes\"][pass_key][\"config\"][\"float16\"] = float16\n                    if not float16:\n                        olive_config[\"passes\"][pass_key][\"config\"][\"force_fp16_inputs\"] = {}\n                    if shared.opts.onnx_execution_provider == ExecutionProvider.CUDA or shared.opts.onnx_execution_provider == ExecutionProvider.ROCm:\n                        if float16:\n                            olive_config[\"passes\"][pass_key][\"config\"][\"keep_io_types\"] = False\n\n            run_workflows(olive_config)\n\n            with open(os.path.join(\"footprints\", f\"{submodel}_{EP_TO_NAME[shared.opts.onnx_execution_provider]}_footprints.json\"), \"r\", encoding=\"utf-8\") as footprint_file:\n                footprints = json.load(footprint_file)\n            processor_final_pass_footprint = None\n            for _, footprint in footprints.items():\n                if footprint[\"from_pass\"] == olive_config[\"passes\"][olive_config[\"pass_flows\"][-1][-1]][\"type\"]:\n                    processor_final_pass_footprint = footprint\n\n            assert processor_final_pass_footprint, \"Failed to optimize model\"\n\n            optimized_model_paths[submodel] = ONNXModelHandler(\n                **processor_final_pass_footprint[\"model_config\"][\"config\"]\n            ).model_path\n\n            log.info(f\"Olive: Successfully processed model: submodel={submodel}\")\n\n        for submodel in submodels:\n            src_path = optimized_model_paths[submodel]\n            src_parent = os.path.dirname(src_path)\n            dst_parent = os.path.join(out_dir, submodel)\n            dst_path = os.path.join(dst_parent, \"model.onnx\")\n            if not os.path.isdir(dst_parent):\n                os.mkdir(dst_parent)\n            shutil.copyfile(src_path, dst_path)\n\n            data_src_path = os.path.join(src_parent, (os.path.basename(src_path) + \".data\"))\n            if os.path.isfile(data_src_path):\n                data_dst_path = os.path.join(dst_parent, (os.path.basename(dst_path) + \".data\"))\n                shutil.copyfile(data_src_path, data_dst_path)\n\n            weights_src_path = os.path.join(src_parent, \"weights.pb\")\n            if os.path.isfile(weights_src_path):\n                weights_dst_path = os.path.join(dst_parent, \"weights.pb\")\n                shutil.copyfile(weights_src_path, weights_dst_path)\n        del optimized_model_paths\n\n        kwargs = {}\n\n        init_dict = self.init_dict.copy()\n        for submodel in submodels:\n            kwargs[submodel] = diffusers.OnnxRuntimeModel.load_model(\n                os.path.join(out_dir, submodel, \"model.onnx\"),\n                provider=get_provider(),\n            ) if self._is_sdxl else diffusers.OnnxRuntimeModel.from_pretrained(\n                os.path.join(out_dir, submodel),\n                provider=get_provider(),\n            )\n            if submodel in init_dict:\n                del init_dict[submodel] # already loaded as OnnxRuntimeModel.\n        kwargs.update(load_submodels(in_dir, self._is_sdxl, init_dict)) # load others.\n        constructor = get_base_constructor(self.constructor, self.is_refiner)\n        kwargs = patch_kwargs(constructor, kwargs)\n\n        pipeline = constructor(**kwargs)\n        model_index = json.loads(pipeline.to_json_string())\n        del pipeline\n\n        for k, v in init_dict.items(): # copy missing submodels. (ORTStableDiffusionXLPipeline)\n            if k not in model_index:\n                model_index[k] = v\n\n        with open(os.path.join(out_dir, \"model_index.json\"), 'w', encoding=\"utf-8\") as file:\n            json.dump(model_index, file)\n\n    def preprocess(self, p: 'StableDiffusionProcessing'):\n        disable_classifier_free_guidance = p.cfg_scale < 0.01\n\n        config.from_diffusers_cache = self.from_diffusers_cache\n        config.is_sdxl = self._is_sdxl\n\n        config.vae = os.path.join(models_path, \"VAE\", shared.opts.sd_vae)\n        if not os.path.isfile(config.vae):\n            del config.vae\n        config.vae_sdxl_fp16_fix = self._is_sdxl and shared.opts.diffusers_vae_upcast == \"false\"\n\n        config.width = p.width\n        config.height = p.height\n        config.batch_size = p.batch_size\n\n        if self._is_sdxl and not self.is_refiner:\n            config.cross_attention_dim = 2048\n            config.time_ids_size = 6\n        else:\n            config.cross_attention_dim = 768\n            config.time_ids_size = 5\n\n        if not disable_classifier_free_guidance and \"turbo\" in str(self.path).lower():\n            log.warning(\"ONNX: It looks like you are trying to run a Turbo model with CFG Scale, which will lead to 'size mismatch' or 'unexpected parameter' error.\")\n\n        out_dir = os.path.join(shared.opts.onnx_cached_models_path, self.original_filename)\n        if (self.from_diffusers_cache and check_cache_onnx(self.path)): # if model is ONNX format or had already converted, skip conversion.\n            out_dir = self.path\n        elif not os.path.isdir(out_dir):\n            try:\n                self.convert(\n                    (SUBMODELS_SDXL_REFINER if self.is_refiner else SUBMODELS_SDXL) if self._is_sdxl else SUBMODELS_SD,\n                    self.path if os.path.isdir(self.path) else shared.opts.onnx_temp_dir,\n                    out_dir,\n                )\n            except Exception as e:\n                log.error(f\"ONNX: Failed to convert model: model='{self.original_filename}', error={e}\")\n                shutil.rmtree(shared.opts.onnx_temp_dir, ignore_errors=True)\n                shutil.rmtree(out_dir, ignore_errors=True)\n                return\n\n        kwargs = {\n            \"provider\": get_provider(),\n        }\n        in_dir = out_dir\n\n        if shared.opts.cuda_compile_backend == \"olive-ai\":\n            submodels_for_olive = []\n\n            if \"TE\" in shared.opts.cuda_compile:\n                if not self.is_refiner:\n                    submodels_for_olive.append(\"text_encoder\")\n                if self._is_sdxl:\n                    submodels_for_olive.append(\"text_encoder_2\")\n            if \"Model\" in shared.opts.cuda_compile:\n                submodels_for_olive.append(\"unet\")\n            if \"VAE\" in shared.opts.cuda_compile:\n                submodels_for_olive.append(\"vae_encoder\")\n                submodels_for_olive.append(\"vae_decoder\")\n\n            if len(submodels_for_olive) == 0:\n                log.warning(\"Olive: Skipping olive run.\")\n            else:\n                log.warning(\"Olive implementation is experimental. It contains potentially an issue and is subject to change at any time.\")\n\n                out_dir = os.path.join(shared.opts.onnx_cached_models_path, f\"{self.original_filename}-{config.width}w-{config.height}h\")\n                if not os.path.isdir(out_dir): # check the model is already optimized (cached)\n                    if not shared.opts.olive_cache_optimized:\n                        out_dir = shared.opts.onnx_temp_dir\n\n                    if p.width != p.height:\n                        log.warning(\"Olive: Different width and height are detected. The quality of the result is not guaranteed.\")\n\n                    if shared.opts.olive_static_dims:\n                        sess_options = DynamicSessionOptions()\n                        sess_options.enable_static_dims({\n                            \"is_sdxl\": self._is_sdxl,\n                            \"is_refiner\": self.is_refiner,\n\n                            \"hidden_batch_size\": p.batch_size if disable_classifier_free_guidance else p.batch_size * 2,\n                            \"height\": p.height,\n                            \"width\": p.width,\n                        })\n                        kwargs[\"sess_options\"] = sess_options\n\n                    try:\n                        self.run_olive(submodels_for_olive, in_dir, out_dir)\n                    except Exception as e:\n                        log.error(f\"Olive: Failed to run olive passes: model='{self.original_filename}', error={e}\")\n                        shutil.rmtree(shared.opts.onnx_temp_dir, ignore_errors=True)\n                        shutil.rmtree(out_dir, ignore_errors=True)\n\n        pipeline = self.derive_properties(load_pipeline(self.constructor, out_dir, **kwargs))\n\n        if not shared.opts.onnx_cache_converted and in_dir != self.path:\n            shutil.rmtree(in_dir)\n        shutil.rmtree(shared.opts.onnx_temp_dir, ignore_errors=True)\n\n        return pipeline\n"
  },
  {
    "path": "modules/onnx_impl/pipelines/onnx_stable_diffusion_img2img_pipeline.py",
    "content": "import inspect\nfrom typing import Union, Optional, Callable, List, Any\nimport numpy as np\nimport torch\nimport diffusers\nfrom diffusers.pipelines.onnx_utils import ORT_TO_NP_TYPE\nfrom diffusers.pipelines.stable_diffusion import StableDiffusionPipelineOutput\nfrom diffusers.image_processor import VaeImageProcessor, PipelineImageInput\nfrom modules.onnx_impl.pipelines import CallablePipelineBase\nfrom modules.onnx_impl.pipelines.utils import randn_tensor\n\n\nclass OnnxStableDiffusionImg2ImgPipeline(diffusers.OnnxStableDiffusionImg2ImgPipeline, CallablePipelineBase):\n    __module__ = 'diffusers'\n    __name__ = 'OnnxStableDiffusionImg2ImgPipeline'\n\n    image_processor: VaeImageProcessor\n\n    def __init__(\n        self,\n        vae_encoder: diffusers.OnnxRuntimeModel,\n        vae_decoder: diffusers.OnnxRuntimeModel,\n        text_encoder: diffusers.OnnxRuntimeModel,\n        tokenizer: Any,\n        unet: diffusers.OnnxRuntimeModel,\n        scheduler: Any,\n        safety_checker: diffusers.OnnxRuntimeModel,\n        feature_extractor: Any,\n        requires_safety_checker: bool = True\n    ):\n        super().__init__(vae_encoder, vae_decoder, text_encoder, tokenizer, unet, scheduler, safety_checker, feature_extractor, requires_safety_checker)\n        self.image_processor = VaeImageProcessor(vae_scale_factor=64)\n\n    def __call__(\n        self,\n        prompt: Union[str, List[str]],\n        image: PipelineImageInput = None,\n        strength: float = 0.8,\n        num_inference_steps: Optional[int] = 50,\n        guidance_scale: Optional[float] = 7.5,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        eta: Optional[float] = 0.0,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        prompt_embeds: Optional[np.ndarray] = None,\n        negative_prompt_embeds: Optional[np.ndarray] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        callback: Optional[Callable[[int, int, np.ndarray], None]] = None,\n        callback_steps: int = 1,\n    ):\n        # check inputs. Raise error if not correct\n        self.check_inputs(prompt, callback_steps, negative_prompt, prompt_embeds, negative_prompt_embeds)\n\n        # define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        if generator is None:\n            generator = torch.Generator(\"cpu\")\n\n        if strength < 0 or strength > 1:\n            raise ValueError(f\"The value of strength should in [0.0, 1.0] but is {strength}\")\n\n        # set timesteps\n        self.scheduler.set_timesteps(num_inference_steps)\n\n        image = self.image_processor.preprocess(image).cpu().numpy()\n\n        # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2)\n        # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1`\n        # corresponds to doing no classifier free guidance.\n        do_classifier_free_guidance = guidance_scale > 1.0\n\n        prompt_embeds = self._encode_prompt(\n            prompt,\n            num_images_per_prompt,\n            do_classifier_free_guidance,\n            negative_prompt,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n        )\n\n        scaling_factor = self.vae_decoder.config.get(\"scaling_factor\", 0.18215)\n\n        latents_dtype = prompt_embeds.dtype\n        image = image.astype(latents_dtype)\n        # encode the init image into latents and scale the latents\n        init_latents = self.vae_encoder(sample=image)[0]\n        init_latents = scaling_factor * init_latents\n\n        if isinstance(prompt, str):\n            prompt = [prompt]\n\n        init_latents = np.concatenate([init_latents] * num_images_per_prompt, axis=0)\n\n        # get the original timestep using init_timestep\n        offset = self.scheduler.config.get(\"steps_offset\", 0)\n        init_timestep = int(num_inference_steps * strength) + offset\n        init_timestep = min(init_timestep, num_inference_steps)\n\n        timesteps = self.scheduler.timesteps.numpy()[-init_timestep]\n        timesteps = np.array([timesteps] * batch_size * num_images_per_prompt)\n\n        # add noise to latents using the timesteps\n        noise = randn_tensor(init_latents.shape, latents_dtype, generator)\n        init_latents = self.scheduler.add_noise(\n            torch.from_numpy(init_latents), torch.from_numpy(noise), torch.from_numpy(timesteps)\n        )\n        init_latents = init_latents.numpy()\n\n        # prepare extra kwargs for the scheduler step, since not all schedulers have the same signature\n        # eta (η) is only used with the DDIMScheduler, it will be ignored for other schedulers.\n        # eta corresponds to η in DDIM paper: https://arxiv.org/abs/2010.02502\n        # and should be between [0, 1]\n        accepts_eta = \"eta\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        extra_step_kwargs = {}\n        if accepts_eta:\n            extra_step_kwargs[\"eta\"] = eta\n\n        latents = init_latents\n\n        t_start = max(num_inference_steps - init_timestep + offset, 0)\n        timesteps = self.scheduler.timesteps[t_start:].numpy()\n\n        timestep_dtype = next(\n            (input.type for input in self.unet.model.get_inputs() if input.name == \"timestep\"), \"tensor(float)\"\n        )\n        timestep_dtype = ORT_TO_NP_TYPE[timestep_dtype]\n\n        for i, t in enumerate(self.progress_bar(timesteps)):\n            # expand the latents if we are doing classifier free guidance\n            latent_model_input = np.concatenate([latents] * 2) if do_classifier_free_guidance else latents\n            latent_model_input = self.scheduler.scale_model_input(torch.from_numpy(latent_model_input), t)\n            latent_model_input = latent_model_input.cpu().numpy()\n\n            # predict the noise residual\n            timestep = np.array([t], dtype=timestep_dtype)\n            noise_pred = self.unet(sample=latent_model_input, timestep=timestep, encoder_hidden_states=prompt_embeds)[\n                0\n            ]\n\n            # perform guidance\n            if do_classifier_free_guidance:\n                noise_pred_uncond, noise_pred_text = np.split(noise_pred, 2)\n                noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n            # compute the previous noisy sample x_t -> x_t-1\n            scheduler_output = self.scheduler.step(\n                torch.from_numpy(noise_pred), t, torch.from_numpy(latents), **extra_step_kwargs\n            )\n            latents = scheduler_output.prev_sample.numpy()\n\n            # call the callback, if provided\n            if callback is not None and i % callback_steps == 0:\n                step_idx = i // getattr(self.scheduler, \"order\", 1)\n                callback(step_idx, t, latents)\n\n        has_nsfw_concept = None\n\n        if output_type != \"latent\":\n            latents /= scaling_factor\n\n            # image = self.vae_decoder(latent_sample=latents)[0]\n            # it seems likes there is a strange result for using half-precision vae decoder if batchsize>1\n            image = np.concatenate(\n                [self.vae_decoder(latent_sample=latents[i : i + 1])[0] for i in range(latents.shape[0])]\n            )\n\n            image = np.clip(image / 2 + 0.5, 0, 1)\n            image = image.transpose((0, 2, 3, 1))\n\n            if self.safety_checker is not None:\n                safety_checker_input = self.feature_extractor(\n                    self.numpy_to_pil(image), return_tensors=\"np\"\n                ).pixel_values.astype(image.dtype)\n\n                images, has_nsfw_concept = [], []\n                for i in range(image.shape[0]):\n                    image_i, has_nsfw_concept_i = self.safety_checker(\n                        clip_input=safety_checker_input[i : i + 1], images=image[i : i + 1]\n                    )\n                    images.append(image_i)\n                    has_nsfw_concept.append(has_nsfw_concept_i[0])\n                image = np.concatenate(images)\n\n            if output_type == \"pil\":\n                image = self.numpy_to_pil(image)\n        else:\n            image = latents\n\n        # skip postprocess\n\n        if not return_dict:\n            return (image, has_nsfw_concept)\n\n        return StableDiffusionPipelineOutput(images=image, nsfw_content_detected=has_nsfw_concept)\n"
  },
  {
    "path": "modules/onnx_impl/pipelines/onnx_stable_diffusion_inpaint_pipeline.py",
    "content": "import inspect\nfrom typing import Union, Optional, Callable, List, Any\nimport numpy as np\nimport torch\nimport diffusers\nfrom diffusers.pipelines.onnx_utils import ORT_TO_NP_TYPE\nfrom diffusers.pipelines.stable_diffusion import StableDiffusionPipelineOutput\nfrom diffusers.image_processor import PipelineImageInput\nfrom modules.onnx_impl.pipelines import CallablePipelineBase\nfrom modules.onnx_impl.pipelines.utils import prepare_latents\n\n\nclass OnnxStableDiffusionInpaintPipeline(diffusers.OnnxStableDiffusionInpaintPipeline, CallablePipelineBase):\n    __module__ = 'diffusers'\n    __name__ = 'OnnxStableDiffusionInpaintPipeline'\n\n    def __init__(\n        self,\n        vae_encoder: diffusers.OnnxRuntimeModel,\n        vae_decoder: diffusers.OnnxRuntimeModel,\n        text_encoder: diffusers.OnnxRuntimeModel,\n        tokenizer: Any,\n        unet: diffusers.OnnxRuntimeModel,\n        scheduler: Any,\n        safety_checker: diffusers.OnnxRuntimeModel,\n        feature_extractor: Any,\n        requires_safety_checker: bool = True\n    ):\n        super().__init__(vae_encoder, vae_decoder, text_encoder, tokenizer, unet, scheduler, safety_checker, feature_extractor, requires_safety_checker)\n\n    @torch.no_grad()\n    def __call__(\n        self,\n        prompt: Union[str, List[str]],\n        image: PipelineImageInput,\n        mask_image: PipelineImageInput,\n        masked_image_latents: torch.FloatTensor = None,\n        height: Optional[int] = 512,\n        width: Optional[int] = 512,\n        strength: float = 1.0,\n        num_inference_steps: int = 50,\n        guidance_scale: float = 7.5,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        eta: float = 0.0,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[np.ndarray] = None,\n        prompt_embeds: Optional[np.ndarray] = None,\n        negative_prompt_embeds: Optional[np.ndarray] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        callback: Optional[Callable[[int, int, np.ndarray], None]] = None,\n        callback_steps: int = 1,\n    ):\n        # check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt, height, width, callback_steps, negative_prompt, prompt_embeds, negative_prompt_embeds\n        )\n\n        # define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        if generator is None:\n            generator = torch.Generator(\"cpu\")\n\n        # set timesteps\n        self.scheduler.set_timesteps(num_inference_steps)\n\n        # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2)\n        # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1`\n        # corresponds to doing no classifier free guidance.\n        do_classifier_free_guidance = guidance_scale > 1.0\n\n        prompt_embeds = self._encode_prompt(\n            prompt,\n            num_images_per_prompt,\n            do_classifier_free_guidance,\n            negative_prompt,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n        )\n\n        num_channels_latents = diffusers.pipelines.stable_diffusion.pipeline_onnx_stable_diffusion_inpaint.NUM_LATENT_CHANNELS\n        latents = prepare_latents(\n            self.scheduler.init_noise_sigma,\n            batch_size * num_images_per_prompt,\n            height,\n            width,\n            prompt_embeds.dtype,\n            generator,\n            latents,\n            num_channels_latents,\n        )\n\n        scaling_factor = self.vae_decoder.config.get(\"scaling_factor\", 0.18215)\n\n        # prepare mask and masked_image\n        mask, masked_image = diffusers.pipelines.stable_diffusion.pipeline_onnx_stable_diffusion_inpaint.prepare_mask_and_masked_image(\n            image[0],\n            mask_image,\n            (height // 8, width // 8),\n        )\n        mask = mask.astype(latents.dtype)\n        masked_image = masked_image.astype(latents.dtype)\n\n        masked_image_latents = self.vae_encoder(sample=masked_image)[0]\n        masked_image_latents = scaling_factor * masked_image_latents\n\n        # duplicate mask and masked_image_latents for each generation per prompt\n        mask = mask.repeat(batch_size * num_images_per_prompt, 0)\n        masked_image_latents = masked_image_latents.repeat(batch_size * num_images_per_prompt, 0)\n\n        mask = np.concatenate([mask] * 2) if do_classifier_free_guidance else mask\n        masked_image_latents = (\n            np.concatenate([masked_image_latents] * 2) if do_classifier_free_guidance else masked_image_latents\n        )\n\n        num_channels_mask = mask.shape[1]\n        num_channels_masked_image = masked_image_latents.shape[1]\n\n        unet_input_channels = diffusers.pipelines.stable_diffusion.pipeline_onnx_stable_diffusion_inpaint.NUM_UNET_INPUT_CHANNELS\n        if num_channels_latents + num_channels_mask + num_channels_masked_image != unet_input_channels:\n            raise ValueError(\n                \"Incorrect configuration settings! The config of `pipeline.unet` expects\"\n                f\" {unet_input_channels} but received `num_channels_latents`: {num_channels_latents} +\"\n                f\" `num_channels_mask`: {num_channels_mask} + `num_channels_masked_image`: {num_channels_masked_image}\"\n                f\" = {num_channels_latents+num_channels_masked_image+num_channels_mask}. Please verify the config of\"\n                \" `pipeline.unet` or your `mask_image` or `image` input.\"\n            )\n\n        # set timesteps\n        self.scheduler.set_timesteps(num_inference_steps)\n\n        # prepare extra kwargs for the scheduler step, since not all schedulers have the same signature\n        # eta (η) is only used with the DDIMScheduler, it will be ignored for other schedulers.\n        # eta corresponds to η in DDIM paper: https://arxiv.org/abs/2010.02502\n        # and should be between [0, 1]\n        accepts_eta = \"eta\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        extra_step_kwargs = {}\n        if accepts_eta:\n            extra_step_kwargs[\"eta\"] = eta\n\n        timestep_dtype = next(\n            (input.type for input in self.unet.model.get_inputs() if input.name == \"timestep\"), \"tensor(float)\"\n        )\n        timestep_dtype = ORT_TO_NP_TYPE[timestep_dtype]\n\n        for i, t in enumerate(self.progress_bar(self.scheduler.timesteps)):\n            # expand the latents if we are doing classifier free guidance\n            latent_model_input = np.concatenate([latents] * 2) if do_classifier_free_guidance else latents\n            # concat latents, mask, masked_image_latnets in the channel dimension\n            latent_model_input = self.scheduler.scale_model_input(torch.from_numpy(latent_model_input), t)\n            latent_model_input = latent_model_input.cpu().numpy()\n            latent_model_input = np.concatenate([latent_model_input, mask, masked_image_latents], axis=1)\n\n            # predict the noise residual\n            timestep = np.array([t], dtype=timestep_dtype)\n            noise_pred = self.unet(sample=latent_model_input, timestep=timestep, encoder_hidden_states=prompt_embeds)[\n                0\n            ]\n\n            # perform guidance\n            if do_classifier_free_guidance:\n                noise_pred_uncond, noise_pred_text = np.split(noise_pred, 2)\n                noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n            # compute the previous noisy sample x_t -> x_t-1\n            scheduler_output = self.scheduler.step(\n                torch.from_numpy(noise_pred), t, torch.from_numpy(latents), **extra_step_kwargs\n            )\n            latents = scheduler_output.prev_sample.numpy()\n\n            # call the callback, if provided\n            if callback is not None and i % callback_steps == 0:\n                step_idx = i // getattr(self.scheduler, \"order\", 1)\n                callback(step_idx, t, latents)\n\n        has_nsfw_concept = None\n\n        if output_type != \"latent\":\n            latents /= scaling_factor\n\n            # image = self.vae_decoder(latent_sample=latents)[0]\n            # it seems likes there is a strange result for using half-precision vae decoder if batchsize>1\n            image = np.concatenate(\n                [self.vae_decoder(latent_sample=latents[i : i + 1])[0] for i in range(latents.shape[0])]\n            )\n\n            image = np.clip(image / 2 + 0.5, 0, 1)\n            image = image.transpose((0, 2, 3, 1))\n\n            if self.safety_checker is not None:\n                safety_checker_input = self.feature_extractor(\n                    self.numpy_to_pil(image), return_tensors=\"np\"\n                ).pixel_values.astype(image.dtype)\n\n                images, has_nsfw_concept = [], []\n                for i in range(image.shape[0]):\n                    image_i, has_nsfw_concept_i = self.safety_checker(\n                        clip_input=safety_checker_input[i : i + 1], images=image[i : i + 1]\n                    )\n                    images.append(image_i)\n                    has_nsfw_concept.append(has_nsfw_concept_i[0])\n                image = np.concatenate(images)\n\n            if output_type == \"pil\":\n                image = self.numpy_to_pil(image)\n        else:\n            image = latents\n\n        if not return_dict:\n            return (image, has_nsfw_concept)\n\n        return StableDiffusionPipelineOutput(images=image, nsfw_content_detected=has_nsfw_concept)\n"
  },
  {
    "path": "modules/onnx_impl/pipelines/onnx_stable_diffusion_pipeline.py",
    "content": "import inspect\nfrom typing import Union, Optional, Callable, List, Any\nimport numpy as np\nimport torch\nimport diffusers\nfrom diffusers.pipelines.onnx_utils import ORT_TO_NP_TYPE\nfrom diffusers.pipelines.stable_diffusion import StableDiffusionPipelineOutput\nfrom modules.onnx_impl.pipelines import CallablePipelineBase\nfrom modules.onnx_impl.pipelines.utils import prepare_latents\n\n\nclass OnnxStableDiffusionPipeline(diffusers.OnnxStableDiffusionPipeline, CallablePipelineBase):\n    __module__ = 'diffusers'\n    __name__ = 'OnnxStableDiffusionPipeline'\n\n    def __init__(\n        self,\n        vae_encoder: diffusers.OnnxRuntimeModel,\n        vae_decoder: diffusers.OnnxRuntimeModel,\n        text_encoder: diffusers.OnnxRuntimeModel,\n        tokenizer: Any,\n        unet: diffusers.OnnxRuntimeModel,\n        scheduler: Any,\n        safety_checker: diffusers.OnnxRuntimeModel,\n        feature_extractor: Any,\n        requires_safety_checker: bool = True\n    ):\n        super().__init__(vae_encoder, vae_decoder, text_encoder, tokenizer, unet, scheduler, safety_checker, feature_extractor, requires_safety_checker)\n\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        height: Optional[int] = 512,\n        width: Optional[int] = 512,\n        num_inference_steps: Optional[int] = 50,\n        guidance_scale: Optional[float] = 7.5,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        eta: Optional[float] = 0.0,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[np.ndarray] = None,\n        prompt_embeds: Optional[np.ndarray] = None,\n        negative_prompt_embeds: Optional[np.ndarray] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        callback: Optional[Callable[[int, int, np.ndarray], None]] = None,\n        callback_steps: int = 1,\n    ):\n        # check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt, height, width, callback_steps, negative_prompt, prompt_embeds, negative_prompt_embeds\n        )\n\n        # define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        if generator is None:\n            generator = torch.Generator(\"cpu\")\n\n        # set timesteps\n        self.scheduler.set_timesteps(num_inference_steps)\n\n        # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2)\n        # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1`\n        # corresponds to doing no classifier free guidance.\n        do_classifier_free_guidance = guidance_scale > 1.0\n\n        prompt_embeds = self._encode_prompt(\n            prompt,\n            num_images_per_prompt,\n            do_classifier_free_guidance,\n            negative_prompt,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n        )\n\n        # get the initial random noise unless the user supplied it\n        latents = prepare_latents(\n            self.scheduler.init_noise_sigma,\n            batch_size * num_images_per_prompt,\n            height,\n            width,\n            prompt_embeds.dtype,\n            generator,\n            latents,\n        )\n\n        # prepare extra kwargs for the scheduler step, since not all schedulers have the same signature\n        # eta (η) is only used with the DDIMScheduler, it will be ignored for other schedulers.\n        # eta corresponds to η in DDIM paper: https://arxiv.org/abs/2010.02502\n        # and should be between [0, 1]\n        accepts_eta = \"eta\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        extra_step_kwargs = {}\n        if accepts_eta:\n            extra_step_kwargs[\"eta\"] = eta\n\n        timestep_dtype = next(\n            (input.type for input in self.unet.model.get_inputs() if input.name == \"timestep\"), \"tensor(float)\"\n        )\n        timestep_dtype = ORT_TO_NP_TYPE[timestep_dtype]\n\n        for i, t in enumerate(self.progress_bar(self.scheduler.timesteps)):\n            # expand the latents if we are doing classifier free guidance\n            latent_model_input = np.concatenate([latents] * 2) if do_classifier_free_guidance else latents\n            latent_model_input = self.scheduler.scale_model_input(torch.from_numpy(latent_model_input), t)\n            latent_model_input = latent_model_input.cpu().numpy()\n\n            # predict the noise residual\n            timestep = np.array([t], dtype=timestep_dtype)\n            noise_pred = self.unet(sample=latent_model_input, timestep=timestep, encoder_hidden_states=prompt_embeds)\n            noise_pred = noise_pred[0]\n\n            # perform guidance\n            if do_classifier_free_guidance:\n                noise_pred_uncond, noise_pred_text = np.split(noise_pred, 2)\n                noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n            # compute the previous noisy sample x_t -> x_t-1\n            scheduler_output = self.scheduler.step(\n                torch.from_numpy(noise_pred), t, torch.from_numpy(latents), **extra_step_kwargs\n            )\n            latents = scheduler_output.prev_sample.numpy()\n\n            # call the callback, if provided\n            if callback is not None and i % callback_steps == 0:\n                step_idx = i // getattr(self.scheduler, \"order\", 1)\n                callback(step_idx, t, latents)\n\n        has_nsfw_concept = None\n\n        if output_type != \"latent\":\n            latents /= self.vae_decoder.config.get(\"scaling_factor\", 0.18215)\n\n            # image = self.vae_decoder(latent_sample=latents)[0]\n            # it seems likes there is a strange result for using half-precision vae decoder if batchsize>1\n            image = np.concatenate(\n                [self.vae_decoder(latent_sample=latents[i : i + 1])[0] for i in range(latents.shape[0])]\n            )\n\n            image = np.clip(image / 2 + 0.5, 0, 1)\n            image = image.transpose((0, 2, 3, 1))\n\n            if self.safety_checker is not None:\n                safety_checker_input = self.feature_extractor(\n                    self.numpy_to_pil(image), return_tensors=\"np\"\n                ).pixel_values.astype(image.dtype)\n\n                images, has_nsfw_concept = [], []\n                for i in range(image.shape[0]):\n                    image_i, has_nsfw_concept_i = self.safety_checker(\n                        clip_input=safety_checker_input[i : i + 1], images=image[i : i + 1]\n                    )\n                    images.append(image_i)\n                    has_nsfw_concept.append(has_nsfw_concept_i[0])\n                image = np.concatenate(images)\n\n            if output_type == \"pil\":\n                image = self.numpy_to_pil(image)\n        else:\n            image = latents\n\n        if not return_dict:\n            return (image, has_nsfw_concept)\n\n        return StableDiffusionPipelineOutput(images=image, nsfw_content_detected=has_nsfw_concept)\n"
  },
  {
    "path": "modules/onnx_impl/pipelines/onnx_stable_diffusion_upscale_pipeline.py",
    "content": "import inspect\nfrom typing import Union, Optional, Callable, Any, List\nimport torch\nimport numpy as np\nimport diffusers\nfrom diffusers.pipelines.onnx_utils import ORT_TO_NP_TYPE\nfrom diffusers.pipelines.stable_diffusion import StableDiffusionPipelineOutput\nfrom diffusers.pipelines.stable_diffusion.pipeline_onnx_stable_diffusion_upscale import preprocess\nfrom diffusers.image_processor import PipelineImageInput\nfrom modules.onnx_impl.pipelines import CallablePipelineBase\nfrom modules.onnx_impl.pipelines.utils import prepare_latents, randn_tensor\n\n\nclass OnnxStableDiffusionUpscalePipeline(diffusers.OnnxStableDiffusionUpscalePipeline, CallablePipelineBase):\n    __module__ = 'diffusers'\n    __name__ = 'OnnxStableDiffusionUpscalePipeline'\n\n    def __init__(\n        self,\n        vae_encoder: diffusers.OnnxRuntimeModel,\n        vae_decoder: diffusers.OnnxRuntimeModel,\n        text_encoder: diffusers.OnnxRuntimeModel,\n        tokenizer: Any,\n        unet: diffusers.OnnxRuntimeModel,\n        scheduler: Any,\n        safety_checker: diffusers.OnnxRuntimeModel,\n        feature_extractor: Any,\n        requires_safety_checker: bool = True\n    ):\n        super().__init__(vae_encoder, vae_decoder, text_encoder, tokenizer, unet, scheduler, safety_checker, feature_extractor, requires_safety_checker)\n\n    def __call__(\n        self,\n        prompt: Union[str, List[str]],\n        image: PipelineImageInput = None,\n        num_inference_steps: int = 75,\n        guidance_scale: float = 9.0,\n        noise_level: int = 20,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        eta: float = 0.0,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[np.ndarray] = None,\n        prompt_embeds: Optional[np.ndarray] = None,\n        negative_prompt_embeds: Optional[np.ndarray] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        callback: Optional[Callable[[int, int, np.ndarray], None]] = None,\n        callback_steps: Optional[int] = 1,\n    ):\n        # 1. Check inputs\n        self.check_inputs(\n            prompt,\n            image,\n            noise_level,\n            callback_steps,\n            negative_prompt,\n            prompt_embeds,\n            negative_prompt_embeds,\n        )\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        if generator is None:\n            generator = torch.Generator(\"cpu\")\n\n        self.scheduler.set_timesteps(num_inference_steps)\n        timesteps = self.scheduler.timesteps\n\n        # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2)\n        # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1`\n        # corresponds to doing no classifier free guidance.\n        do_classifier_free_guidance = guidance_scale > 1.0\n\n        prompt_embeds = self._encode_prompt(\n            prompt,\n            num_images_per_prompt,\n            do_classifier_free_guidance,\n            negative_prompt,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n        )\n\n        latents_dtype = prompt_embeds.dtype\n        image = preprocess(image).cpu().numpy()\n        height, width = image.shape[2:]\n\n        latents = prepare_latents(\n            self.scheduler.init_noise_sigma,\n            batch_size * num_images_per_prompt,\n            height,\n            width,\n            latents_dtype,\n            generator,\n        )\n\n        # 5. Add noise to image\n        noise_level = np.array([noise_level]).astype(np.int64)\n        noise = randn_tensor(\n            image.shape,\n            latents_dtype,\n            generator,\n        )\n\n        image = self.low_res_scheduler.add_noise(\n            torch.from_numpy(image), torch.from_numpy(noise), torch.from_numpy(noise_level)\n        )\n        image = image.numpy()\n\n        batch_multiplier = 2 if do_classifier_free_guidance else 1\n        image = np.concatenate([image] * batch_multiplier * num_images_per_prompt)\n        noise_level = np.concatenate([noise_level] * image.shape[0])\n\n        # 7. Check that sizes of image and latents match\n        num_channels_image = image.shape[1]\n        if self.num_latent_channels + num_channels_image != self.num_unet_input_channels:\n            raise ValueError(\n                \"Incorrect configuration settings! The config of `pipeline.unet` expects\"\n                f\" {self.num_unet_input_channels} but received `num_channels_latents`: {self.num_latent_channels} +\"\n                f\" `num_channels_image`: {num_channels_image} \"\n                f\" = {self.num_latent_channels + num_channels_image}. Please verify the config of\"\n                \" `pipeline.unet` or your `image` input.\"\n            )\n\n        # 8. Prepare extra step kwargs.\n        accepts_eta = \"eta\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        extra_step_kwargs = {}\n        if accepts_eta:\n            extra_step_kwargs[\"eta\"] = eta\n\n        timestep_dtype = next(\n            (input.type for input in self.unet.model.get_inputs() if input.name == \"timestep\"), \"tensor(float)\"\n        )\n        timestep_dtype = ORT_TO_NP_TYPE[timestep_dtype]\n\n        # 9. Denoising loop\n        num_warmup_steps = len(timesteps) - num_inference_steps * self.scheduler.order\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                # expand the latents if we are doing classifier free guidance\n                latent_model_input = np.concatenate([latents] * 2) if do_classifier_free_guidance else latents\n\n                # concat latents, mask, masked_image_latents in the channel dimension\n                latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n                latent_model_input = np.concatenate([latent_model_input, image], axis=1)\n\n                # timestep to tensor\n                timestep = np.array([t], dtype=timestep_dtype)\n\n                # predict the noise residual\n                noise_pred = self.unet(\n                    sample=latent_model_input,\n                    timestep=timestep,\n                    encoder_hidden_states=prompt_embeds,\n                    class_labels=noise_level,\n                )[0]\n\n                # perform guidance\n                if do_classifier_free_guidance:\n                    noise_pred_uncond, noise_pred_text = np.split(noise_pred, 2)\n                noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents = self.scheduler.step(\n                    torch.from_numpy(noise_pred), t, torch.from_numpy(latents), **extra_step_kwargs\n                ).prev_sample\n                latents = latents.numpy()\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n                    if callback is not None and i % callback_steps == 0:\n                        step_idx = i // getattr(self.scheduler, \"order\", 1)\n                        callback(step_idx, t, latents)\n\n        has_nsfw_concept = None\n\n        if output_type != \"latent\":\n            # 10. Post-processing\n            image = self.decode_latents(latents)\n\n            # image = self.vae_decoder(latent_sample=latents)[0]\n            # it seems likes there is a strange result for using half-precision vae decoder if batchsize>1\n            image = np.concatenate(\n                [self.vae_decoder(latent_sample=latents[i : i + 1])[0] for i in range(latents.shape[0])]\n            )\n\n            image = np.clip(image / 2 + 0.5, 0, 1)\n            image = image.transpose((0, 2, 3, 1))\n\n            if self.safety_checker is not None:\n                safety_checker_input = self.feature_extractor(\n                    self.numpy_to_pil(image), return_tensors=\"np\"\n                ).pixel_values.astype(image.dtype)\n\n                images, has_nsfw_concept = [], []\n                for i in range(image.shape[0]):\n                    image_i, has_nsfw_concept_i = self.safety_checker(\n                        clip_input=safety_checker_input[i : i + 1], images=image[i : i + 1]\n                    )\n                    images.append(image_i)\n                    has_nsfw_concept.append(has_nsfw_concept_i[0])\n                image = np.concatenate(images)\n\n            if output_type == \"pil\":\n                image = self.numpy_to_pil(image)\n        else:\n            image = latents\n\n        if not return_dict:\n            return (image, has_nsfw_concept)\n\n        return StableDiffusionPipelineOutput(images=image, nsfw_content_detected=has_nsfw_concept)\n"
  },
  {
    "path": "modules/onnx_impl/pipelines/onnx_stable_diffusion_xl_img2img_pipeline.py",
    "content": "from typing import Optional, Dict, Any\nimport numpy as np\nimport torch\nimport onnxruntime as ort\n\nimport optimum.onnxruntime\nfrom modules.onnx_impl.pipelines import CallablePipelineBase\nfrom modules.onnx_impl.pipelines.utils import randn_tensor\n\n\nclass OnnxStableDiffusionXLImg2ImgPipeline(CallablePipelineBase, optimum.onnxruntime.ORTStableDiffusionXLImg2ImgPipeline):\n    __module__ = 'optimum.onnxruntime.modeling_diffusion'\n    __name__ = 'ORTStableDiffusionXLImg2ImgPipeline'\n\n    def __init__(\n        self,\n        vae_decoder: ort.InferenceSession,\n        text_encoder: ort.InferenceSession,\n        unet: ort.InferenceSession,\n        config: Dict[str, Any],\n        tokenizer: Any,\n        scheduler: Any,\n        feature_extractor = None,\n        vae_encoder: Optional[ort.InferenceSession] = None,\n        text_encoder_2: Optional[ort.InferenceSession] = None,\n        tokenizer_2: Any = None,\n        use_io_binding: Optional[bool] = None,\n        model_save_dir = None,\n        add_watermarker: Optional[bool] = None\n    ):\n        optimum.onnxruntime.ORTStableDiffusionXLImg2ImgPipeline.__init__(self, vae_decoder, text_encoder, unet, config, tokenizer, scheduler, feature_extractor, vae_encoder, text_encoder_2, tokenizer_2, use_io_binding, model_save_dir, add_watermarker)\n        super().__init__()\n        del self.image_processor # This image processor requires np array. In order to share same workflow with non-XL pipelines, delete it.\n\n    def prepare_latents(self, image, timestep, batch_size, num_images_per_prompt, dtype, generator=None):\n        batch_size = batch_size * num_images_per_prompt\n\n        if image.shape[1] == 4:\n            init_latents = image\n        else:\n            init_latents = self.vae_encoder(sample=image)[0] * self.vae_decoder.config.get(\"scaling_factor\", 0.18215)\n\n        if batch_size > init_latents.shape[0] and batch_size % init_latents.shape[0] == 0:\n            # expand init_latents for batch_size\n            additional_image_per_prompt = batch_size // init_latents.shape[0]\n            init_latents = np.concatenate([init_latents] * additional_image_per_prompt, axis=0)\n        elif batch_size > init_latents.shape[0] and batch_size % init_latents.shape[0] != 0:\n            raise ValueError(\n                f\"Cannot duplicate `image` of batch size {init_latents.shape[0]} to {batch_size} text prompts.\"\n            )\n        else:\n            init_latents = np.concatenate([init_latents], axis=0)\n\n        # add noise to latents using the timesteps\n        noise = randn_tensor(init_latents.shape, dtype, generator)\n        init_latents = self.scheduler.add_noise(\n            torch.from_numpy(init_latents), torch.from_numpy(noise), torch.from_numpy(timestep)\n        )\n        return init_latents.numpy()\n"
  },
  {
    "path": "modules/onnx_impl/pipelines/onnx_stable_diffusion_xl_pipeline.py",
    "content": "from typing import Optional, Dict, Any\nimport onnxruntime as ort\nimport optimum.onnxruntime\nfrom modules.onnx_impl.pipelines import CallablePipelineBase\nfrom modules.onnx_impl.pipelines.utils import prepare_latents\n\n\nclass OnnxStableDiffusionXLPipeline(CallablePipelineBase, optimum.onnxruntime.ORTStableDiffusionXLPipeline):\n    __module__ = 'optimum.onnxruntime.modeling_diffusion'\n    __name__ = 'ORTStableDiffusionXLPipeline'\n\n    def __init__(\n        self,\n        vae_decoder: ort.InferenceSession,\n        text_encoder: ort.InferenceSession,\n        unet: ort.InferenceSession,\n        config: Dict[str, Any],\n        tokenizer: Any,\n        scheduler: Any,\n        feature_extractor: Any = None,\n        vae_encoder: Optional[ort.InferenceSession] = None,\n        text_encoder_2: Optional[ort.InferenceSession] = None,\n        tokenizer_2: Any = None,\n        use_io_binding: Optional[bool] = None,\n        model_save_dir = None,\n        add_watermarker: Optional[bool] = None\n    ):\n        optimum.onnxruntime.ORTStableDiffusionXLPipeline.__init__(self, vae_decoder, text_encoder, unet, config, tokenizer, scheduler, feature_extractor, vae_encoder, text_encoder_2, tokenizer_2, use_io_binding, model_save_dir, add_watermarker)\n        super().__init__()\n        del self.image_processor # This image processor requires np array. In order to share same workflow with non-XL pipelines, delete it.\n\n    def prepare_latents(self, batch_size, num_channels_latents, height, width, dtype, generator, latents=None):\n        return prepare_latents(self.scheduler.init_noise_sigma, batch_size, height, width, dtype, generator, latents, num_channels_latents, self.vae_scale_factor)\n"
  },
  {
    "path": "modules/onnx_impl/pipelines/utils.py",
    "content": "from typing import Union, List\nimport numpy as np\nimport torch\n\n\ndef extract_generator_seed(generator: Union[torch.Generator, List[torch.Generator]]) -> List[int]:\n    if isinstance(generator, list):\n        generator = [g.seed() for g in generator]\n    else:\n        generator = [generator.seed()]\n    return generator\n\n\ndef randn_tensor(shape, dtype: np.dtype, generator: Union[torch.Generator, List[torch.Generator], int, List[int]]):\n    if hasattr(generator, \"seed\") or (isinstance(generator, list) and hasattr(generator[0], \"seed\")):\n        generator = extract_generator_seed(generator)\n        if len(generator) == 1:\n            generator = generator[0]\n    return np.random.default_rng(generator).standard_normal(shape).astype(dtype)\n\n\ndef prepare_latents(\n    init_noise_sigma: float,\n    batch_size: int,\n    height: int,\n    width: int,\n    dtype: np.dtype,\n    generator: Union[torch.Generator, List[torch.Generator]],\n    latents: Union[np.ndarray, None] = None,\n    num_channels_latents = 4,\n    vae_scale_factor = 8,\n):\n    shape = (batch_size, num_channels_latents, height // vae_scale_factor, width // vae_scale_factor)\n\n    if latents is None:\n        latents = randn_tensor(shape, dtype, generator)\n\n    # scale the initial noise by the standard deviation required by the scheduler\n    latents = latents * np.float64(init_noise_sigma)\n\n    return latents\n"
  },
  {
    "path": "modules/onnx_impl/ui.py",
    "content": "import os\nimport json\nimport shutil\nfrom typing import Dict, List, Union\nimport gradio as gr\n\n\ndef get_recursively(d: Union[Dict, List], *args):\n    if len(args) == 0:\n        return d\n    return get_recursively(d.get(args[0]), *args[1:])\n\n\ndef create_ui():\n    from modules.ui_common import create_refresh_button\n    from modules.ui_components import DropdownMulti\n    from modules.shared import log, opts, cmd_opts, refresh_checkpoints\n    from modules.sd_models import checkpoint_titles, get_closest_checkpoint_match\n    from modules.paths import sd_configs_path\n    from .execution_providers import ExecutionProvider, install_execution_provider\n    from .utils import check_diffusers_cache\n\n    with gr.Blocks(analytics_enabled=False) as ui:\n        with gr.Tabs(elem_id=\"tabs_onnx\"):\n            with gr.TabItem(\"Provider\", id=\"onnxep\"):\n                gr.Markdown(\"Install ONNX execution provider\")\n                ep_default = None\n                if cmd_opts.use_directml:\n                    ep_default = ExecutionProvider.DirectML\n                elif cmd_opts.use_cuda:\n                    ep_default = ExecutionProvider.CUDA\n                elif cmd_opts.use_rocm:\n                    ep_default = ExecutionProvider.ROCm\n                elif cmd_opts.use_openvino:\n                    ep_default = ExecutionProvider.OpenVINO\n                ep_checkbox = gr.Radio(label=\"Execution provider\", value=ep_default, choices=ExecutionProvider)\n                ep_install = gr.Button(value=\"Reinstall\")\n                ep_log = gr.HTML(\"\")\n                ep_install.click(fn=install_execution_provider, inputs=[ep_checkbox], outputs=[ep_log])\n\n            if opts.cuda_compile_backend == \"olive-ai\":\n                import olive.passes as olive_passes\n                from olive.hardware.accelerator import AcceleratorSpec, Device\n                accelerator = AcceleratorSpec(accelerator_type=Device.GPU, execution_provider=opts.onnx_execution_provider)\n\n                with gr.TabItem(\"Manage cache\", id=\"manage_cache\"):\n                    cache_state_dirname = gr.Textbox(value=None, visible=False)\n                    with gr.Row():\n                        model_dropdown = gr.Dropdown(label=\"Model\", value=\"Please select model\", choices=checkpoint_titles())\n                        create_refresh_button(model_dropdown, refresh_checkpoints, {}, \"onnx_cache_diffusers_model_refresh\")\n                    with gr.Row():\n                        def remove_cache_onnx_converted(dirname: str):\n                            shutil.rmtree(os.path.join(opts.onnx_cached_models_path, dirname))\n                            log.info(f\"ONNX converted cache of '{dirname}' is removed.\")\n                        cache_onnx_converted = gr.Markdown(\"Please select model\")\n                        cache_remove_onnx_converted = gr.Button(value=\"Remove cache\", visible=False)\n                        cache_remove_onnx_converted.click(fn=remove_cache_onnx_converted, inputs=[cache_state_dirname,])\n                    with gr.Column():\n                        cache_optimized_selected = gr.Textbox(value=None, visible=False)\n                        def select_cache_optimized(evt: gr.SelectData, data):\n                            return \",\".join(data[evt.index[0]])\n                        def remove_cache_optimized(dirname: str, s: str):\n                            if s == \"\":\n                                return\n                            size = s.split(\",\")\n                            shutil.rmtree(os.path.join(opts.onnx_cached_models_path, f\"{dirname}-{size[0]}w-{size[1]}h\"))\n                            log.info(f\"Olive processed cache of '{dirname}' is removed: width={size[0]}, height={size[1]}\")\n                        with gr.Row():\n                            cache_list_optimized_headers = [\"height\", \"width\"]\n                            cache_list_optimized_types = [\"str\", \"str\"]\n                            cache_list_optimized = gr.Dataframe(None, label=\"Optimized caches\", show_label=True, interactive=False, headers=cache_list_optimized_headers, datatype=cache_list_optimized_types, type=\"array\")\n                            cache_list_optimized.select(fn=select_cache_optimized, inputs=[cache_list_optimized,], outputs=[cache_optimized_selected,])\n                        cache_remove_optimized = gr.Button(value=\"Remove selected cache\", visible=False)\n                        cache_remove_optimized.click(fn=remove_cache_optimized, inputs=[cache_state_dirname, cache_optimized_selected,])\n\n                    def cache_update_menus(query: str):\n                        checkpoint_info = get_closest_checkpoint_match(query)\n                        if checkpoint_info is None:\n                            log.error(f\"Could not find checkpoint object for '{query}'.\")\n                            return\n                        model_name = os.path.basename(os.path.dirname(os.path.dirname(checkpoint_info.path)) if check_diffusers_cache(checkpoint_info.path) else checkpoint_info.path)\n                        caches = os.listdir(opts.onnx_cached_models_path)\n                        onnx_converted = False\n                        optimized_sizes = []\n                        for cache in caches:\n                            if cache == model_name:\n                                onnx_converted = True\n                            elif model_name in cache:\n                                try:\n                                    splitted = cache.split(\"-\")\n                                    height = splitted[-1][:-1]\n                                    width = splitted[-2][:-1]\n                                    optimized_sizes.append((width, height,))\n                                except Exception:\n                                    pass\n                        return (\n                            model_name,\n                            cache_onnx_converted.update(value=\"ONNX model cache of this model exists.\" if onnx_converted else \"ONNX model cache of this model does not exist.\"),\n                            cache_remove_onnx_converted.update(visible=onnx_converted),\n                            None if len(optimized_sizes) == 0 else optimized_sizes,\n                            cache_remove_optimized.update(visible=True),\n                        )\n\n                    model_dropdown.change(fn=cache_update_menus, inputs=[model_dropdown,], outputs=[\n                        cache_state_dirname,\n                        cache_onnx_converted, cache_remove_onnx_converted,\n                        cache_list_optimized, cache_remove_optimized,\n                    ])\n\n                with gr.TabItem(\"Customize pass flow\", id=\"pass_flow\"):\n                    with gr.Tabs(elem_id=\"tabs_model_type\"):\n                        with gr.TabItem(\"Stable Diffusion\", id=\"sd\"):\n                            sd_config_path = os.path.join(sd_configs_path, \"olive\", \"sd\")\n                            sd_submodels = os.listdir(sd_config_path)\n                            sd_configs: Dict[str, Dict[str, Dict[str, Dict]]] = {}\n                            sd_pass_config_components: Dict[str, Dict[str, Dict]] = {}\n\n                            with gr.Tabs(elem_id=\"tabs_sd_submodel\"):\n                                def sd_create_change_listener(*args):\n                                    def listener(v: Dict):\n                                        get_recursively(sd_configs, *args[:-1])[args[-1]] = v\n                                    return listener\n\n                                for submodel in sd_submodels:\n                                    config: Dict = None\n                                    sd_pass_config_components[submodel] = {}\n                                    with open(os.path.join(sd_config_path, submodel), \"r\", encoding=\"utf-8\") as file:\n                                        config = json.load(file)\n                                    sd_configs[submodel] = config\n\n                                    submodel_name = submodel[:-5]\n                                    with gr.TabItem(submodel_name, id=f\"sd_{submodel_name}\"):\n                                        pass_flows = DropdownMulti(label=\"Pass flow\", value=sd_configs[submodel][\"pass_flows\"][0], choices=sd_configs[submodel][\"passes\"].keys())\n                                        pass_flows.change(fn=sd_create_change_listener(submodel, \"pass_flows\", 0), inputs=pass_flows)\n\n                                        with gr.Tabs(elem_id=f\"tabs_sd_{submodel_name}_pass\"):\n                                            for pass_name in sd_configs[submodel][\"passes\"]:\n                                                sd_pass_config_components[submodel][pass_name] = {}\n\n                                                with gr.TabItem(pass_name, id=f\"sd_{submodel_name}_pass_{pass_name}\"):\n                                                    config_dict = sd_configs[submodel][\"passes\"][pass_name]\n                                                    pass_type = gr.Dropdown(label=\"Type\", value=config_dict[\"type\"], choices=(x.__name__ for x in tuple(olive_passes.REGISTRY.values())))\n\n                                                    def create_pass_config_change_listener(submodel, pass_name, config_key):\n                                                        def listener(value):\n                                                            sd_configs[submodel][\"passes\"][pass_name][\"config\"][config_key] = value\n                                                        return listener\n\n                                                    pass_cls = getattr(olive_passes, config_dict[\"type\"], None)\n                                                    default_config = {} if pass_cls is None else pass_cls._default_config(accelerator) # pylint: disable=protected-access\n                                                    for config_key, v in default_config.items():\n                                                        component = None\n                                                        if v.type_ == bool:\n                                                            component = gr.Checkbox\n                                                        elif v.type_ == str:\n                                                            component = gr.Textbox\n                                                        elif v.type_ == int:\n                                                            component = gr.Number\n                                                        if component is not None:\n                                                            component = component(value=config_dict[\"config\"][config_key] if config_key in config_dict[\"config\"] else v.default_value, label=config_key)\n                                                            sd_pass_config_components[submodel][pass_name][config_key] = component\n                                                            component.change(fn=create_pass_config_change_listener(submodel, pass_name, config_key), inputs=component)\n\n                                                    pass_type.change(fn=sd_create_change_listener(submodel, \"passes\", pass_name, \"type\"), inputs=pass_type)\n\n                            def sd_save():\n                                for k, v in sd_configs.items():\n                                    with open(os.path.join(sd_config_path, k), \"w\", encoding=\"utf-8\") as file:\n                                        json.dump(v, file)\n                                log.info(\"Olive: config for SD was saved.\")\n\n                            sd_save_button = gr.Button(value=\"Save\")\n                            sd_save_button.click(fn=sd_save)\n\n                        with gr.TabItem(\"Stable Diffusion XL\", id=\"sdxl\"):\n                            sdxl_config_path = os.path.join(sd_configs_path, \"olive\", \"sdxl\")\n                            sdxl_submodels = os.listdir(sdxl_config_path)\n                            sdxl_configs: Dict[str, Dict[str, Dict[str, Dict]]] = {}\n                            sdxl_pass_config_components: Dict[str, Dict[str, Dict]] = {}\n\n                            with gr.Tabs(elem_id=\"tabs_sdxl_submodel\"):\n                                def sdxl_create_change_listener(*args):\n                                    def listener(v: Dict):\n                                        get_recursively(sdxl_configs, *args[:-1])[args[-1]] = v\n                                    return listener\n\n                                for submodel in sdxl_submodels:\n                                    config: Dict = None\n                                    sdxl_pass_config_components[submodel] = {}\n                                    with open(os.path.join(sdxl_config_path, submodel), \"r\", encoding=\"utf-8\") as file:\n                                        config = json.load(file)\n                                    sdxl_configs[submodel] = config\n\n                                    submodel_name = submodel[:-5]\n                                    with gr.TabItem(submodel_name, id=f\"sdxl_{submodel_name}\"):\n                                        pass_flows = DropdownMulti(label=\"Pass flow\", value=sdxl_configs[submodel][\"pass_flows\"][0], choices=sdxl_configs[submodel][\"passes\"].keys())\n                                        pass_flows.change(fn=sdxl_create_change_listener(submodel, \"pass_flows\", 0), inputs=pass_flows)\n\n                                        with gr.Tabs(elem_id=f\"tabs_sdxl_{submodel_name}_pass\"):\n                                            for pass_name in sdxl_configs[submodel][\"passes\"]:\n                                                sdxl_pass_config_components[submodel][pass_name] = {}\n\n                                                with gr.TabItem(pass_name, id=f\"sdxl_{submodel_name}_pass_{pass_name}\"):\n                                                    config_dict = sdxl_configs[submodel][\"passes\"][pass_name]\n                                                    pass_type = gr.Dropdown(label=\"Type\", value=sdxl_configs[submodel][\"passes\"][pass_name][\"type\"], choices=(x.__name__ for x in tuple(olive_passes.REGISTRY.values())))\n\n                                                    def create_pass_config_change_listener(submodel, pass_name, config_key): # pylint: disable=function-redefined\n                                                        def listener(value):\n                                                            sdxl_configs[submodel][\"passes\"][pass_name][\"config\"][config_key] = value\n                                                        return listener\n\n                                                    pass_cls = getattr(olive_passes, config_dict[\"type\"], None)\n                                                    default_config = {} if pass_cls is None else pass_cls._default_config(accelerator) # pylint: disable=protected-access\n                                                    for config_key, v in default_config.items():\n                                                        component = None\n                                                        if v.type_ == bool:\n                                                            component = gr.Checkbox\n                                                        elif v.type_ == str:\n                                                            component = gr.Textbox\n                                                        elif v.type_ == int:\n                                                            component = gr.Number\n                                                        if component is not None:\n                                                            component = component(value=config_dict[\"config\"][config_key] if config_key in config_dict[\"config\"] else v.default_value, label=config_key)\n                                                            sdxl_pass_config_components[submodel][pass_name][config_key] = component\n                                                            component.change(fn=create_pass_config_change_listener(submodel, pass_name, config_key), inputs=component)\n                                                    pass_type.change(fn=sdxl_create_change_listener(submodel, \"passes\", pass_name, \"type\"), inputs=pass_type)\n\n                            def sdxl_save():\n                                for k, v in sdxl_configs.items():\n                                    with open(os.path.join(sdxl_config_path, k), \"w\", encoding=\"utf-8\") as file:\n                                        json.dump(v, file)\n                                log.info(\"Olive: config for SDXL was saved.\")\n\n                            sdxl_save_button = gr.Button(value=\"Save\")\n                            sdxl_save_button.click(fn=sdxl_save)\n    return ui\n"
  },
  {
    "path": "modules/onnx_impl/utils.py",
    "content": "import os\nimport json\nimport importlib\nfrom typing import Type, Tuple, Union, List, Dict, Any\nimport torch\nimport diffusers\n\n\ndef extract_device(args: List, kwargs: Dict):\n    device = kwargs.get(\"device\", None)\n\n    if device is None:\n        for arg in args:\n            if isinstance(arg, torch.device):\n                device = arg\n\n    return device\n\n\ndef move_inference_session(session, device: torch.device): # session: ort.InferenceSession\n    from modules.devices import device as default_device\n    from modules.devices import backend as default_backend\n\n    if default_device.type == \"cpu\" and default_backend != \"openvino\": # CPU-only torch without any other external ops overriding. This transfer will be led to mistake.\n        return session\n\n    from . import DynamicSessionOptions, TemporalModule\n    from .execution_providers import TORCH_DEVICE_TO_EP\n\n    previous_provider = session._providers # pylint: disable=protected-access\n    provider = TORCH_DEVICE_TO_EP[device.type] if device.type in TORCH_DEVICE_TO_EP else previous_provider\n    path = session._model_path # pylint: disable=protected-access\n\n    try:\n        return diffusers.OnnxRuntimeModel.load_model(path, provider, DynamicSessionOptions.from_sess_options(session._sess_options)) # pylint: disable=protected-access\n    except Exception:\n        return TemporalModule(previous_provider, path, session._sess_options) # pylint: disable=protected-access\n\n\ndef check_diffusers_cache(path: os.PathLike):\n    from modules.shared import opts\n    return opts.diffusers_dir in os.path.abspath(path)\n\n\ndef check_pipeline_sdxl(cls: Type[diffusers.DiffusionPipeline]) -> bool:\n    return 'XL' in cls.__name__\n\n\ndef check_cache_onnx(path: os.PathLike) -> bool:\n    if not os.path.isdir(path):\n        return False\n\n    init_dict_path = os.path.join(path, \"model_index.json\")\n\n    if not os.path.isfile(init_dict_path):\n        return False\n\n    init_dict = None\n\n    with open(init_dict_path, \"r\", encoding=\"utf-8\") as file:\n        init_dict = file.read()\n\n    if \"OnnxRuntimeModel\" not in init_dict:\n        return False\n\n    return True\n\n\ndef load_init_dict(cls: Type[diffusers.DiffusionPipeline], path: os.PathLike):\n    merged: Dict[str, Any] = {}\n    extracted = cls.extract_init_dict(diffusers.DiffusionPipeline.load_config(path))\n\n    for item in extracted:\n        merged.update(item)\n\n    merged = merged.items()\n    R: Dict[str, Tuple[str]] = {}\n\n    for k, v in merged:\n        if isinstance(v, list):\n            if k not in cls.__init__.__annotations__:\n                continue\n            R[k] = v\n\n    return R\n\n\ndef load_submodel(path: os.PathLike, is_sdxl: bool, submodel_name: str, item: List[Union[str, None]], **kwargs_ort):\n    lib, atr = item\n\n    if lib is None or atr is None:\n        return None\n\n    library = importlib.import_module(lib)\n    attribute = getattr(library, atr)\n    path = os.path.join(path, submodel_name)\n\n    if issubclass(attribute, diffusers.OnnxRuntimeModel):\n        return diffusers.OnnxRuntimeModel.load_model(\n            os.path.join(path, \"model.onnx\"),\n            **kwargs_ort,\n        ) if is_sdxl else diffusers.OnnxRuntimeModel.from_pretrained(\n            path,\n            **kwargs_ort,\n        )\n\n    return attribute.from_pretrained(path)\n\n\ndef load_submodels(path: os.PathLike, is_sdxl: bool, init_dict: Dict[str, Type], **kwargs_ort):\n    loaded = {}\n\n    for k, v in init_dict.items():\n        if not isinstance(v, list):\n            loaded[k] = v\n            continue\n        try:\n            loaded[k] = load_submodel(path, is_sdxl, k, v, **kwargs_ort)\n        except Exception:\n            pass\n\n    return loaded\n\n\ndef load_pipeline(cls: Type[diffusers.DiffusionPipeline], path: os.PathLike, **kwargs_ort) -> diffusers.DiffusionPipeline:\n    if os.path.isdir(path):\n        return cls(**patch_kwargs(cls, load_submodels(path, check_pipeline_sdxl(cls), load_init_dict(cls, path), **kwargs_ort)))\n    else:\n        return cls.from_single_file(path)\n\n\ndef patch_kwargs(cls: Type[diffusers.DiffusionPipeline], kwargs: Dict) -> Dict:\n    if cls == diffusers.OnnxStableDiffusionPipeline or cls == diffusers.OnnxStableDiffusionImg2ImgPipeline or cls == diffusers.OnnxStableDiffusionInpaintPipeline:\n        kwargs[\"safety_checker\"] = None\n        kwargs[\"requires_safety_checker\"] = False\n\n    if cls == diffusers.OnnxStableDiffusionXLPipeline or cls == diffusers.OnnxStableDiffusionXLImg2ImgPipeline:\n        kwargs[\"config\"] = {}\n\n    return kwargs\n\n\ndef get_base_constructor(cls: Type[diffusers.DiffusionPipeline], is_refiner: bool):\n    if cls == diffusers.OnnxStableDiffusionImg2ImgPipeline or cls == diffusers.OnnxStableDiffusionInpaintPipeline:\n        return diffusers.OnnxStableDiffusionPipeline\n\n    if cls == diffusers.OnnxStableDiffusionXLImg2ImgPipeline and not is_refiner:\n        return diffusers.OnnxStableDiffusionXLPipeline\n\n    return cls\n\n\ndef get_io_config(submodel: str, is_sdxl: bool):\n    from modules.paths import sd_configs_path\n\n    with open(os.path.join(sd_configs_path, \"olive\", 'sdxl' if is_sdxl else 'sd', f\"{submodel}.json\"), \"r\", encoding=\"utf-8\") as config_file:\n        io_config: Dict[str, Any] = json.load(config_file)[\"input_model\"][\"config\"][\"io_config\"]\n\n    for axe in io_config[\"dynamic_axes\"]:\n        io_config[\"dynamic_axes\"][axe] = { int(k): v for k, v in io_config[\"dynamic_axes\"][axe].items() }\n\n    return io_config\n"
  },
  {
    "path": "modules/options.py",
    "content": "from __future__ import annotations\nfrom dataclasses import dataclass\nfrom typing import TYPE_CHECKING, Any\nfrom installer import log\n\n\nif TYPE_CHECKING:\n    from collections.abc import Callable\n    from gradio.components import Component\n    from modules.shared_legacy import LegacyOption\n    from modules.ui_components import DropdownEditable\n\n\ndef options_section(section_identifier: tuple[str, str], options_dict: dict[str, OptionInfo | LegacyOption]) -> dict[str, OptionInfo | LegacyOption]:\n    \"\"\"Set the `section` value for all OptionInfo/LegacyOption items\"\"\"\n    if len(section_identifier) > 2:\n        section_identifier = section_identifier[:2]\n    for v in options_dict.values():\n        v.section = section_identifier\n    return options_dict\n\n\nclass OptionInfo:\n    def __init__(\n            self,\n            default: Any = None,\n            label=\"\",\n            component: type[Component] | type[DropdownEditable] | None = None,\n            component_args: dict | Callable[..., dict] | None = None,\n            onchange: Callable | None = None,\n            section: tuple[str, ...] | None = None,\n            refresh: Callable | None = None,\n            folder=False,\n            submit=None,\n            comment_before='',\n            comment_after='',\n            category_id=None, # pylint: disable=unused-argument\n            *args, # pylint: disable=unused-argument\n            **kwargs, # pylint: disable=unused-argument\n        ): # pylint: disable=keyword-arg-before-vararg\n        self.default = default\n        self.label = label\n        self.component = component\n        self.component_args = component_args\n        self.onchange = onchange\n        self.section = section\n        self.refresh = refresh\n        self.folder = folder\n        self.comment_before = comment_before # HTML text that will be added after label in UI\n        self.comment_after = comment_after # HTML text that will be added before label in UI\n        self.submit = submit\n        self.exclude = ['sd_model_checkpoint', 'sd_model_refiner', 'sd_vae', 'sd_unet', 'sd_text_encoder']\n        self.dynamic = callable(component_args)\n        args = {} if self.dynamic else (component_args or {}) # executing callable here is too expensive\n        self.visible = args.get('visible', True) and len(self.label) > 2  # type: ignore - Type checking only sees the value of self.dynamic, not the `callable` check\n\n    def needs_reload_ui(self):\n        return self\n\n    def link(self, label, uri):\n        self.comment_before += f\"[<a href='{uri}' target='_blank'>{label}</a>]\"\n        return self\n\n    def js(self, label, js_func):\n        self.comment_before += f\"[<a onclick='{js_func}(); return false'>{label}</a>]\"\n        return self\n\n    def info(self, info):\n        self.comment_after += f\"<span class='info'>({info})</span>\"\n        return self\n\n    def html(self, info):\n        self.comment_after += f\"<span class='info'>{info}</span>\"\n        return self\n\n    def needs_restart(self):\n        self.comment_after += \" <span class='info'>(requires restart)</span>\"\n        return self\n\n    def validate(self, opt, value):\n        if opt in self.exclude:\n            return True\n        args = self.component_args if self.component_args is not None else {}\n        if callable(args):\n            try:\n                args = args()\n            except Exception:\n                args = {}\n        choices = args.get(\"choices\", [])\n        if callable(choices):\n            try:\n                choices = choices()\n            except Exception:\n                choices = []\n        if len(choices) > 0:\n            if not isinstance(value, list):\n                value = [value]\n            for v in value:\n                if v not in choices:\n                    if isinstance(choices, list) and ('All' in choices or 'all' in choices): # may be added dynamically\n                        continue\n                    log.debug(f'Setting validation: \"{opt}\"=\"{v}\" default=\"{self.default}\" choices={choices}')\n                    # return False\n        minimum = args.get(\"minimum\", None)\n        maximum = args.get(\"maximum\", None)\n        try:\n            if (minimum is not None and value < minimum) or (maximum is not None and value > maximum):\n                log.error(f'Setting validation: \"{opt}\"={value} default={self.default} minimum={minimum} maximum={maximum}')\n                return False\n        except Exception as err:\n            log.error(f'Setting validation: \"{opt}\"={value} default={self.default} minimum={minimum} maximum={maximum} error={err}')\n            return False\n        return True\n\n    def __str__(self) -> str:\n        args = self.component_args if self.component_args is not None else {}\n        if callable(args):\n            args = args()\n        choices = args.get(\"choices\", [])\n        return f'OptionInfo: label=\"{self.label}\" section=\"{self.section}\" component=\"{self.component}\" default=\"{self.default}\" refresh=\"{self.refresh is not None}\" change=\"{self.onchange is not None}\" args={args} choices={choices}'\n\n\n@dataclass\nclass OptionsCategory:\n    id: str\n    label: str\n\nclass OptionsCategories:\n    def __init__(self):\n        self.mapping = {}\n\n    def register_category(self, category_id, label):\n        if category_id not in self.mapping:\n            self.mapping[category_id] = OptionsCategory(category_id, label)\n        return category_id\n\n\ncategories = OptionsCategories()\n"
  },
  {
    "path": "modules/options_handler.py",
    "content": "from __future__ import annotations\nimport os\nimport json\nimport threading\nfrom typing import TYPE_CHECKING\nfrom modules import cmd_args, errors\nfrom modules.json_helpers import readfile, writefile\nfrom modules.shared_legacy import LegacyOption\nfrom installer import log\n\n\nif TYPE_CHECKING:\n    from collections.abc import Callable\n    from modules.options import OptionInfo\n    from typing import Any\n\ncmd_opts = cmd_args.parse_args()\ncompatibility_opts = ['clip_skip', 'uni_pc_lower_order_final', 'uni_pc_order']\n\n\nclass Options():\n    data_labels: dict[str, OptionInfo | LegacyOption]\n    data: dict[str, Any]\n    typemap = {int: float}\n    debug = os.environ.get('SD_CONFIG_DEBUG', None) is not None\n\n    def __init__(self, options_templates: dict[str, OptionInfo | LegacyOption] = {}, restricted_opts: set[str] | None = None, *, filename = ''):\n        if restricted_opts is None:\n            restricted_opts = set()\n        super().__setattr__('data_labels', options_templates)\n        super().__setattr__('data', {k: v.default for k, v in options_templates.items()})\n        self.filename: str = filename or cmd_opts.config\n        self.restricted_opts = restricted_opts\n        self.legacy = [k for k, v in options_templates.items() if isinstance(v, LegacyOption)]\n        self.load()\n\n    def __setattr__(self, key, value): # pylint: disable=inconsistent-return-statements\n        if key in self.data or key in self.data_labels:\n            if cmd_opts.freeze:\n                log.warning(f'Settings are frozen: {key}')\n                return\n            if cmd_opts.hide_ui_dir_config and key in self.restricted_opts:\n                log.warning(f'Settings key is restricted: {key}')\n                return\n            if self.debug:\n                log.trace(f'Settings set: {key}={value}')\n            if key in self.legacy:\n                log.warning(f'Settings set: {key}={value} legacy')\n            self.data[key] = value\n            return\n        return super(Options, self).__setattr__(key, value) # pylint: disable=super-with-arguments\n\n    def get(self, item):\n        if item in self.data:\n            return self.data[item]\n        if item in self.data_labels:\n            return self.data_labels[item].default\n        return super(Options, self).__getattribute__(item) # pylint: disable=super-with-arguments\n\n    def __getattr__(self, item):\n        if item in self.data:\n            return self.data[item]\n        if item in self.data_labels:\n            return self.data_labels[item].default\n        return super(Options, self).__getattribute__(item) # pylint: disable=super-with-arguments\n\n    def set(self, key, value):\n        \"\"\"sets an option and calls its onchange callback, returning True if the option changed and False otherwise\"\"\"\n        oldval = self.data.get(key, None)\n        if oldval is None:\n            if key in self.data_labels:\n                oldval = self.data_labels[key].default\n            else:\n                log.warning(f'Settings: key={key} value={value} unknown')\n                return False\n        if oldval == value:\n            return False\n        try:\n            setattr(self, key, value)\n        except RuntimeError:\n            return False\n        func = self.data_labels[key].onchange\n        if func is not None:\n            try:\n                func()\n            except Exception as err:\n                log.error(f'Error in onchange callback: {key} {value} {err}')\n                errors.display(err, 'Error in onchange callback')\n                setattr(self, key, oldval)\n                return False\n        return True\n\n    def get_default(self, key):\n        \"\"\"returns the default value for the key\"\"\"\n        data_label = self.data_labels.get(key)\n        return data_label.default if data_label is not None else None\n\n    def list(self):\n        \"\"\"list all visible options\"\"\"\n        components = [k for k, v in self.data_labels.items() if v.visible]\n        return components\n\n    def save_atomic(self, filename=None, silent=False):\n        if self.debug:\n            log.debug(f'Settings: save settings=\"{self.filename}\" override=\"{filename}\" cmd=\"{cmd_opts.config}\" cwd=\"{os.getcwd()}\"')\n        if filename is None:\n            filename = self.filename\n        filename = os.path.abspath(filename)\n        if cmd_opts.freeze:\n            log.warning(f'Setting: fn=\"{filename}\" save disabled')\n            return\n        try:\n            diff = {}\n            unused_settings = []\n\n            # if self.debug:\n            #     log.debug('Settings: user')\n            #     for k, v in self.data.items():\n            #         log.trace(f'  Config: item={k} value={v} default={self.data_labels[k].default if k in self.data_labels else None}')\n\n            if self.debug:\n                log.debug(f'Settings: total={len(self.data.keys())} known={len(self.data_labels.keys())}')\n\n            for k, v in self.data.items():\n                if k in self.data_labels:\n                    default = self.data_labels[k].default\n                    if isinstance(v, list):\n                        if (len(default) != len(v) or set(default) != set(v)): # list order is non-deterministic\n                            diff[k] = v\n                            if self.debug:\n                                log.trace(f'Settings changed: {k}={v} default={default}')\n                    elif self.data_labels[k].default != v:\n                        diff[k] = v\n                        if self.debug:\n                            log.trace(f'Settings changed: {k}={v} default={default}')\n                else:\n                    if k not in compatibility_opts:\n                        diff[k] = v\n                        if not k.startswith('uiux_'):\n                            unused_settings.append(k)\n                        if self.debug:\n                            log.trace(f'Settings unknown: {k}={v}')\n            writefile(diff, filename, silent=silent)\n            if self.debug:\n                log.trace(f'Settings save: count={len(diff.keys())} {diff}')\n            if len(unused_settings) > 0:\n                log.debug(f\"Settings: unused={unused_settings}\")\n        except Exception as err:\n            log.error(f'Settings: fn=\"{filename}\" {err}')\n\n    def save(self, filename=None, silent=False):\n        threading.Thread(target=self.save_atomic, args=(filename, silent)).start()\n\n    def same_type(self, x, y):\n        if x is None or y is None:\n            return True\n        type_x = self.typemap.get(type(x), type(x))\n        type_y = self.typemap.get(type(y), type(y))\n        return type_x == type_y\n\n    def load(self, filename=None):\n        if filename is None:\n            filename = self.filename\n        filename = os.path.abspath(filename)\n        if not os.path.isfile(filename):\n            log.debug(f'Settings: fn=\"{filename}\" created')\n            self.save(filename)\n            return\n        self.data = readfile(filename, lock=True, as_type=\"dict\")\n        if self.data.get('quicksettings') is not None and self.data.get('quicksettings_list') is None:\n            self.data['quicksettings_list'] = [i.strip() for i in self.data.get('quicksettings', '').split(',')]\n        unknown_settings = []\n        for k, v in self.data.items():\n            info = self.data_labels.get(k, None)\n            if info is not None:\n                if not info.validate(k, v):\n                    self.data[k] = info.default\n            if info is not None and not self.same_type(info.default, v):\n                log.warning(f\"Setting validation: {k}={v} ({type(v).__name__} expected={type(info.default).__name__})\")\n                self.data[k] = info.default\n            if info is None and k not in compatibility_opts and not k.startswith('uiux_'):\n                unknown_settings.append(k)\n        if len(unknown_settings) > 0:\n            log.warning(f\"Setting validation: unknown={unknown_settings}\")\n\n    def onchange(self, key, func: Callable, call=True):\n        item = self.data_labels.get(key)\n        item.onchange = func\n        if call:\n            func()\n\n    def dumpjson(self):\n        d = {k: self.data.get(k, self.data_labels.get(k).default) for k in self.data_labels.keys()}\n        metadata = {\n            k: {\n                \"is_stored\": k in self.data and self.data[k] != self.data_labels[k].default, # pylint: disable=unnecessary-dict-index-lookup\n                \"tab_name\": v.section[0]\n            } for k, v in self.data_labels.items()\n        }\n        return json.dumps({\"values\": d, \"metadata\": metadata})\n\n    def add_option(self, key, info):\n        self.data_labels[key] = info\n\n    def reorder(self):\n        \"\"\"reorder settings so that all items related to section always go together\"\"\"\n        section_ids = {}\n        settings_items = self.data_labels.items()\n        for _k, item in settings_items:\n            if item.section not in section_ids:\n                section_ids[item.section] = len(section_ids)\n        self.data_labels = dict(sorted(settings_items, key=lambda x: section_ids[x[1].section]))\n\n    def cast_value(self, key, value):\n        \"\"\"casts an arbitrary to the same type as this setting's value with key\n        Example: cast_value(\"eta_noise_seed_delta\", \"12\") -> returns 12 (an int rather than str)\n        \"\"\"\n        if value is None:\n            return None\n        default_value = self.data_labels[key].default\n        if default_value is None:\n            default_value = getattr(self, key, None)\n        if default_value is None:\n            return None\n        expected_type = type(default_value)\n        if expected_type == bool and value == \"False\":\n            value = False\n        elif expected_type == type(value):\n            pass\n        else:\n            value = expected_type(value)\n        return value\n"
  },
  {
    "path": "modules/pag/__init__.py",
    "content": "from diffusers.pipelines import StableDiffusionPipeline, StableDiffusionXLPipeline # pylint: disable=unused-import\nfrom modules import shared, processing, sd_models\nfrom modules.pag.pipe_sd import StableDiffusionPAGPipeline\nfrom modules.pag.pipe_sdxl import StableDiffusionXLPAGPipeline\nfrom modules.control.units import detect\n\n\norig_pipeline = None\n\n\ndef apply(p: processing.StableDiffusionProcessing): # pylint: disable=arguments-differ\n    global orig_pipeline # pylint: disable=global-statement\n    cls = shared.sd_model.__class__ if shared.sd_loaded else None\n    if cls == StableDiffusionPAGPipeline or cls == StableDiffusionXLPAGPipeline:\n        cls = unapply()\n    if p.pag_scale == 0:\n        return\n    if cls is not None and 'PAG' in cls.__name__:\n        pass\n    elif detect.is_sd15(cls):\n        if sd_models.get_diffusers_task(shared.sd_model) != sd_models.DiffusersTaskType.TEXT_2_IMAGE:\n            shared.log.warning(f'PAG: pipeline={cls.__name__} not implemented')\n            return None\n        orig_pipeline = shared.sd_model\n        shared.sd_model = sd_models.switch_pipe(StableDiffusionPAGPipeline, shared.sd_model)\n    elif detect.is_sdxl(cls):\n        if sd_models.get_diffusers_task(shared.sd_model) != sd_models.DiffusersTaskType.TEXT_2_IMAGE:\n            shared.log.warning(f'PAG: pipeline={cls.__name__} not implemented')\n            return None\n        orig_pipeline = shared.sd_model\n        shared.sd_model = sd_models.switch_pipe(StableDiffusionXLPAGPipeline, shared.sd_model)\n    elif detect.is_f1(cls):\n        p.task_args['true_cfg_scale'] = p.pag_scale\n    else:\n        # shared.log.warning(f'PAG: pipeline={cls.__name__} required={StableDiffusionPipeline.__name__}')\n        return None\n\n    p.task_args['pag_scale'] = p.pag_scale\n    p.task_args['pag_adaptive_scaling'] = p.pag_adaptive\n    p.task_args['pag_adaptive_scale'] = p.pag_adaptive\n    pag_applied_layers = shared.opts.pag_apply_layers\n    pag_applied_layers_index = pag_applied_layers.split() if len(pag_applied_layers) > 0 else []\n    pag_applied_layers_index = [p.strip() for p in pag_applied_layers_index]\n    p.task_args['pag_applied_layers_index'] = pag_applied_layers_index if len(pag_applied_layers_index) > 0 else ['m0'] # Available layers: d[0-5], m[0], u[0-8]\n    p.extra_generation_params[\"CFG true\"] = p.pag_scale\n    p.extra_generation_params[\"CFG adaptive\"] = p.pag_adaptive\n    # shared.log.debug(f'{c}: args={p.task_args}')\n\n\ndef unapply():\n    global orig_pipeline # pylint: disable=global-statement\n    if orig_pipeline is not None:\n        shared.sd_model = orig_pipeline\n        orig_pipeline = None\n    return shared.sd_model.__class__\n"
  },
  {
    "path": "modules/pag/pipe_sd.py",
    "content": "# Implementation of StableDiffusionPAGPipeline\n\nimport inspect\nfrom typing import Any, Callable, Dict, List, Optional, Union\n\nimport torch\nimport torch.nn.functional as F\nfrom packaging import version\nfrom transformers import CLIPImageProcessor, CLIPTextModel, CLIPTokenizer, CLIPVisionModelWithProjection\n\nfrom diffusers.configuration_utils import FrozenDict\nfrom diffusers.image_processor import PipelineImageInput, VaeImageProcessor\nfrom diffusers.loaders import FromSingleFileMixin, IPAdapterMixin, LoraLoaderMixin, TextualInversionLoaderMixin\nfrom diffusers.models import AutoencoderKL, ImageProjection, UNet2DConditionModel\nfrom diffusers.models.attention_processor import Attention, AttnProcessor2_0, FusedAttnProcessor2_0\nfrom diffusers.models.lora import adjust_lora_scale_text_encoder\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline\nfrom diffusers.pipelines.stable_diffusion.pipeline_output import StableDiffusionPipelineOutput\nfrom diffusers.pipelines.stable_diffusion.safety_checker import StableDiffusionSafetyChecker\nfrom diffusers.schedulers import KarrasDiffusionSchedulers\nfrom diffusers.utils import (\n    USE_PEFT_BACKEND,\n    deprecate,\n    logging,\n    replace_example_docstring,\n    scale_lora_layers,\n    unscale_lora_layers,\n)\nfrom diffusers.utils.torch_utils import randn_tensor\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\nEXAMPLE_DOC_STRING = \"\"\"\n    Examples:\n        ```py\n        >>> import torch\n        >>> from diffusers import StableDiffusionPipeline\n        >>> pipe = StableDiffusionPipeline.from_pretrained(\"runwayml/stable-diffusion-v1-5\", torch_dtype=torch.float16)\n        >>> pipe = pipe.to(\"cuda\")\n        >>> prompt = \"a photo of an astronaut riding a horse on mars\"\n        >>> image = pipe(prompt).images[0]\n        ```\n\"\"\"\n\n\nclass PAGIdentitySelfAttnProcessor:\n    r\"\"\"\n    Processor for implementing scaled dot-product attention (enabled by default if you're using PyTorch 2.0).\n    \"\"\"\n\n    def __init__(self):\n        if not hasattr(F, \"scaled_dot_product_attention\"):\n            raise ImportError(\"AttnProcessor2_0 requires PyTorch 2.0, to use it, please upgrade PyTorch to 2.0.\")\n\n    def __call__(\n        self,\n        attn: Attention,\n        hidden_states: torch.FloatTensor,\n        encoder_hidden_states: Optional[torch.FloatTensor] = None,\n        attention_mask: Optional[torch.FloatTensor] = None,\n        temb: Optional[torch.FloatTensor] = None,\n        *args,\n        **kwargs,\n    ) -> torch.FloatTensor:\n        if len(args) > 0 or kwargs.get(\"scale\", None) is not None:\n            deprecation_message = \"The `scale` argument is deprecated and will be ignored. Please remove it, as passing it will raise an error in the future. `scale` should directly be passed while calling the underlying pipeline component i.e., via `cross_attention_kwargs`.\"\n            deprecate(\"scale\", \"1.0.0\", deprecation_message)\n\n        residual = hidden_states\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n\n        # chunk\n        hidden_states_org, hidden_states_ptb = hidden_states.chunk(2)\n\n        # original path\n        batch_size, sequence_length, _ = hidden_states_org.shape\n\n        if attention_mask is not None:\n            attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n            # scaled_dot_product_attention expects attention_mask shape to be\n            # (batch, heads, source_length, target_length)\n            attention_mask = attention_mask.view(batch_size, attn.heads, -1, attention_mask.shape[-1])\n\n        if attn.group_norm is not None:\n            hidden_states_org = attn.group_norm(hidden_states_org.transpose(1, 2)).transpose(1, 2)\n\n        query = attn.to_q(hidden_states_org)\n        key = attn.to_k(hidden_states_org)\n        value = attn.to_v(hidden_states_org)\n\n        inner_dim = key.shape[-1]\n        head_dim = inner_dim // attn.heads\n\n        query = query.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        key = key.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        value = value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        # the output of sdp = (batch, num_heads, seq_len, head_dim)\n        hidden_states_org = F.scaled_dot_product_attention(\n            query, key, value, attn_mask=attention_mask, dropout_p=0.0, is_causal=False\n        )\n\n        hidden_states_org = hidden_states_org.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n        hidden_states_org = hidden_states_org.to(query.dtype)\n\n        # linear proj\n        hidden_states_org = attn.to_out[0](hidden_states_org)\n        # dropout\n        hidden_states_org = attn.to_out[1](hidden_states_org)\n\n        if input_ndim == 4:\n            hidden_states_org = hidden_states_org.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        # perturbed path (identity attention)\n        batch_size, sequence_length, _ = hidden_states_ptb.shape\n\n        if attention_mask is not None:\n            attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n            # scaled_dot_product_attention expects attention_mask shape to be\n            # (batch, heads, source_length, target_length)\n            attention_mask = attention_mask.view(batch_size, attn.heads, -1, attention_mask.shape[-1])\n\n        if attn.group_norm is not None:\n            hidden_states_ptb = attn.group_norm(hidden_states_ptb.transpose(1, 2)).transpose(1, 2)\n\n        value = attn.to_v(hidden_states_ptb)\n\n        # hidden_states_ptb = torch.zeros(value.shape).to(value.get_device())\n        hidden_states_ptb = value\n\n        hidden_states_ptb = hidden_states_ptb.to(query.dtype)\n\n        # linear proj\n        hidden_states_ptb = attn.to_out[0](hidden_states_ptb)\n        # dropout\n        hidden_states_ptb = attn.to_out[1](hidden_states_ptb)\n\n        if input_ndim == 4:\n            hidden_states_ptb = hidden_states_ptb.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        # cat\n        hidden_states = torch.cat([hidden_states_org, hidden_states_ptb])\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n\n\nclass PAGCFGIdentitySelfAttnProcessor:\n    r\"\"\"\n    Processor for implementing scaled dot-product attention (enabled by default if you're using PyTorch 2.0).\n    \"\"\"\n\n    def __init__(self):\n        if not hasattr(F, \"scaled_dot_product_attention\"):\n            raise ImportError(\"AttnProcessor2_0 requires PyTorch 2.0, to use it, please upgrade PyTorch to 2.0.\")\n\n    def __call__(\n        self,\n        attn: Attention,\n        hidden_states: torch.FloatTensor,\n        encoder_hidden_states: Optional[torch.FloatTensor] = None,\n        attention_mask: Optional[torch.FloatTensor] = None,\n        temb: Optional[torch.FloatTensor] = None,\n        *args,\n        **kwargs,\n    ) -> torch.FloatTensor:\n        if len(args) > 0 or kwargs.get(\"scale\", None) is not None:\n            deprecation_message = \"The `scale` argument is deprecated and will be ignored. Please remove it, as passing it will raise an error in the future. `scale` should directly be passed while calling the underlying pipeline component i.e., via `cross_attention_kwargs`.\"\n            deprecate(\"scale\", \"1.0.0\", deprecation_message)\n\n        residual = hidden_states\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n\n        # chunk\n        hidden_states_uncond, hidden_states_org, hidden_states_ptb = hidden_states.chunk(3)\n        hidden_states_org = torch.cat([hidden_states_uncond, hidden_states_org])\n\n        # original path\n        batch_size, sequence_length, _ = hidden_states_org.shape\n\n        if attention_mask is not None:\n            attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n            # scaled_dot_product_attention expects attention_mask shape to be\n            # (batch, heads, source_length, target_length)\n            attention_mask = attention_mask.view(batch_size, attn.heads, -1, attention_mask.shape[-1])\n\n        if attn.group_norm is not None:\n            hidden_states_org = attn.group_norm(hidden_states_org.transpose(1, 2)).transpose(1, 2)\n\n        query = attn.to_q(hidden_states_org)\n        key = attn.to_k(hidden_states_org)\n        value = attn.to_v(hidden_states_org)\n\n        inner_dim = key.shape[-1]\n        head_dim = inner_dim // attn.heads\n\n        query = query.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        key = key.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        value = value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        # the output of sdp = (batch, num_heads, seq_len, head_dim)\n        hidden_states_org = F.scaled_dot_product_attention(\n            query, key, value, attn_mask=attention_mask, dropout_p=0.0, is_causal=False\n        )\n\n        hidden_states_org = hidden_states_org.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n        hidden_states_org = hidden_states_org.to(query.dtype)\n\n        # linear proj\n        hidden_states_org = attn.to_out[0](hidden_states_org)\n        # dropout\n        hidden_states_org = attn.to_out[1](hidden_states_org)\n\n        if input_ndim == 4:\n            hidden_states_org = hidden_states_org.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        # perturbed path (identity attention)\n        batch_size, sequence_length, _ = hidden_states_ptb.shape\n\n        if attention_mask is not None:\n            attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n            # scaled_dot_product_attention expects attention_mask shape to be\n            # (batch, heads, source_length, target_length)\n            attention_mask = attention_mask.view(batch_size, attn.heads, -1, attention_mask.shape[-1])\n\n        if attn.group_norm is not None:\n            hidden_states_ptb = attn.group_norm(hidden_states_ptb.transpose(1, 2)).transpose(1, 2)\n\n        value = attn.to_v(hidden_states_ptb)\n        hidden_states_ptb = value\n        hidden_states_ptb = hidden_states_ptb.to(query.dtype)\n\n        # linear proj\n        hidden_states_ptb = attn.to_out[0](hidden_states_ptb)\n        # dropout\n        hidden_states_ptb = attn.to_out[1](hidden_states_ptb)\n\n        if input_ndim == 4:\n            hidden_states_ptb = hidden_states_ptb.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        # cat\n        hidden_states = torch.cat([hidden_states_org, hidden_states_ptb])\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n\n\ndef rescale_noise_cfg(noise_cfg, noise_pred_text, guidance_rescale=0.0):\n    \"\"\"\n    Rescale `noise_cfg` according to `guidance_rescale`. Based on findings of [Common Diffusion Noise Schedules and\n    Sample Steps are Flawed](https://arxiv.org/pdf/2305.08891.pdf). See Section 3.4\n    \"\"\"\n    std_text = noise_pred_text.std(dim=list(range(1, noise_pred_text.ndim)), keepdim=True)\n    std_cfg = noise_cfg.std(dim=list(range(1, noise_cfg.ndim)), keepdim=True)\n    # rescale the results from guidance (fixes overexposure)\n    noise_pred_rescaled = noise_cfg * (std_text / std_cfg)\n    # mix with the original results from guidance by factor guidance_rescale to avoid \"plain looking\" images\n    noise_cfg = guidance_rescale * noise_pred_rescaled + (1 - guidance_rescale) * noise_cfg\n    return noise_cfg\n\n\ndef retrieve_timesteps(\n    scheduler,\n    num_inference_steps: Optional[int] = None,\n    device: Optional[Union[str, torch.device]] = None,\n    timesteps: Optional[List[int]] = None,\n    **kwargs,\n):\n    \"\"\"\n    Calls the scheduler's `set_timesteps` method and retrieves timesteps from the scheduler after the call. Handles\n    custom timesteps. Any kwargs will be supplied to `scheduler.set_timesteps`.\n    Args:\n        scheduler (`SchedulerMixin`):\n            The scheduler to get timesteps from.\n        num_inference_steps (`int`):\n            The number of diffusion steps used when generating samples with a pre-trained model. If used,\n            `timesteps` must be `None`.\n        device (`str` or `torch.device`, *optional*):\n            The device to which the timesteps should be moved to. If `None`, the timesteps are not moved.\n        timesteps (`List[int]`, *optional*):\n                Custom timesteps used to support arbitrary spacing between timesteps. If `None`, then the default\n                timestep spacing strategy of the scheduler is used. If `timesteps` is passed, `num_inference_steps`\n                must be `None`.\n    Returns:\n        `Tuple[torch.Tensor, int]`: A tuple where the first element is the timestep schedule from the scheduler and the\n        second element is the number of inference steps.\n    \"\"\"\n    if timesteps is not None:\n        accepts_timesteps = \"timesteps\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n        if not accepts_timesteps:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" timestep schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(timesteps=timesteps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    else:\n        scheduler.set_timesteps(num_inference_steps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n    return timesteps, num_inference_steps\n\n\nclass StableDiffusionPAGPipeline(\n    DiffusionPipeline, TextualInversionLoaderMixin, LoraLoaderMixin, IPAdapterMixin, FromSingleFileMixin\n):\n    r\"\"\"\n    Pipeline for text-to-image generation using Stable Diffusion.\n    This model inherits from [`DiffusionPipeline`]. Check the superclass documentation for the generic methods\n    implemented for all pipelines (downloading, saving, running on a particular device, etc.).\n    The pipeline also inherits the following loading methods:\n        - [`~loaders.TextualInversionLoaderMixin.load_textual_inversion`] for loading textual inversion embeddings\n        - [`~loaders.LoraLoaderMixin.load_lora_weights`] for loading LoRA weights\n        - [`~loaders.LoraLoaderMixin.save_lora_weights`] for saving LoRA weights\n        - [`~loaders.FromSingleFileMixin.from_single_file`] for loading `.ckpt` files\n        - [`~loaders.IPAdapterMixin.load_ip_adapter`] for loading IP Adapters\n    Args:\n        vae ([`AutoencoderKL`]):\n            Variational Auto-Encoder (VAE) model to encode and decode images to and from latent representations.\n        text_encoder ([`~transformers.CLIPTextModel`]):\n            Frozen text-encoder ([clip-vit-large-patch14](https://huggingface.co/openai/clip-vit-large-patch14)).\n        tokenizer ([`~transformers.CLIPTokenizer`]):\n            A `CLIPTokenizer` to tokenize text.\n        unet ([`UNet2DConditionModel`]):\n            A `UNet2DConditionModel` to denoise the encoded image latents.\n        scheduler ([`SchedulerMixin`]):\n            A scheduler to be used in combination with `unet` to denoise the encoded image latents. Can be one of\n            [`DDIMScheduler`], [`LMSDiscreteScheduler`], or [`PNDMScheduler`].\n        safety_checker ([`StableDiffusionSafetyChecker`]):\n            Classification module that estimates whether generated images could be considered offensive or harmful.\n            Please refer to the [model card](https://huggingface.co/runwayml/stable-diffusion-v1-5) for more details\n            about a model's potential harms.\n        feature_extractor ([`~transformers.CLIPImageProcessor`]):\n            A `CLIPImageProcessor` to extract features from generated images; used as inputs to the `safety_checker`.\n    \"\"\"\n\n    model_cpu_offload_seq = \"text_encoder->image_encoder->unet->vae\"\n    _optional_components = [\"safety_checker\", \"feature_extractor\", \"image_encoder\"]\n    _exclude_from_cpu_offload = [\"safety_checker\"]\n    _callback_tensor_inputs = [\"latents\", \"prompt_embeds\", \"negative_prompt_embeds\"]\n\n    def __init__(\n        self,\n        vae: AutoencoderKL,\n        text_encoder: CLIPTextModel,\n        tokenizer: CLIPTokenizer,\n        unet: UNet2DConditionModel,\n        scheduler: KarrasDiffusionSchedulers,\n        safety_checker: StableDiffusionSafetyChecker,\n        feature_extractor: CLIPImageProcessor,\n        image_encoder: CLIPVisionModelWithProjection = None,\n        requires_safety_checker: bool = False,\n    ):\n        super().__init__()\n\n        if hasattr(scheduler.config, \"steps_offset\") and scheduler.config.steps_offset != 1:\n            deprecation_message = (\n                f\"The configuration file of this scheduler: {scheduler} is outdated. `steps_offset`\"\n                f\" should be set to 1 instead of {scheduler.config.steps_offset}. Please make sure \"\n                \"to update the config accordingly as leaving `steps_offset` might led to incorrect results\"\n                \" in future versions. If you have downloaded this checkpoint from the Hugging Face Hub,\"\n                \" it would be very nice if you could open a Pull request for the `scheduler/scheduler_config.json`\"\n                \" file\"\n            )\n            deprecate(\"steps_offset!=1\", \"1.0.0\", deprecation_message, standard_warn=False)\n            new_config = dict(scheduler.config)\n            new_config[\"steps_offset\"] = 1\n            scheduler._internal_dict = FrozenDict(new_config)\n\n        if hasattr(scheduler.config, \"clip_sample\") and scheduler.config.clip_sample is True:\n            deprecation_message = (\n                f\"The configuration file of this scheduler: {scheduler} has not set the configuration `clip_sample`.\"\n                \" `clip_sample` should be set to False in the configuration file. Please make sure to update the\"\n                \" config accordingly as not setting `clip_sample` in the config might lead to incorrect results in\"\n                \" future versions. If you have downloaded this checkpoint from the Hugging Face Hub, it would be very\"\n                \" nice if you could open a Pull request for the `scheduler/scheduler_config.json` file\"\n            )\n            deprecate(\"clip_sample not set\", \"1.0.0\", deprecation_message, standard_warn=False)\n            new_config = dict(scheduler.config)\n            new_config[\"clip_sample\"] = False\n            scheduler._internal_dict = FrozenDict(new_config)\n\n        if safety_checker is None and requires_safety_checker:\n            logger.warning(\n                f\"You have disabled the safety checker for {self.__class__} by passing `safety_checker=None`. Ensure\"\n                \" that you abide to the conditions of the Stable Diffusion license and do not expose unfiltered\"\n                \" results in services or applications open to the public. Both the diffusers team and Hugging Face\"\n                \" strongly recommend to keep the safety filter enabled in all public facing circumstances, disabling\"\n                \" it only for use-cases that involve analyzing network behavior or auditing its results. For more\"\n                \" information, please have a look at https://github.com/huggingface/diffusers/pull/254 .\"\n            )\n\n        if safety_checker is not None and feature_extractor is None:\n            raise ValueError(\n                \"Make sure to define a feature extractor when loading {self.__class__} if you want to use the safety\"\n                \" checker. If you do not want to use the safety checker, you can pass `'safety_checker=None'` instead.\"\n            )\n\n        is_unet_version_less_0_9_0 = hasattr(unet.config, \"_diffusers_version\") and version.parse(\n            version.parse(unet.config._diffusers_version).base_version\n        ) < version.parse(\"0.9.0.dev0\")\n        is_unet_sample_size_less_64 = hasattr(unet.config, \"sample_size\") and unet.config.sample_size < 64\n        if is_unet_version_less_0_9_0 and is_unet_sample_size_less_64:\n            deprecation_message = (\n                \"The configuration file of the unet has set the default `sample_size` to smaller than\"\n                \" 64 which seems highly unlikely. If your checkpoint is a fine-tuned version of any of the\"\n                \" following: \\n- CompVis/stable-diffusion-v1-4 \\n- CompVis/stable-diffusion-v1-3 \\n-\"\n                \" CompVis/stable-diffusion-v1-2 \\n- CompVis/stable-diffusion-v1-1 \\n- runwayml/stable-diffusion-v1-5\"\n                \" \\n- runwayml/stable-diffusion-inpainting \\n you should change 'sample_size' to 64 in the\"\n                \" configuration file. Please make sure to update the config accordingly as leaving `sample_size=32`\"\n                \" in the config might lead to incorrect results in future versions. If you have downloaded this\"\n                \" checkpoint from the Hugging Face Hub, it would be very nice if you could open a Pull request for\"\n                \" the `unet/config.json` file\"\n            )\n            deprecate(\"sample_size<64\", \"1.0.0\", deprecation_message, standard_warn=False)\n            new_config = dict(unet.config)\n            new_config[\"sample_size\"] = 64\n            unet._internal_dict = FrozenDict(new_config)\n\n        self.register_modules(\n            vae=vae,\n            text_encoder=text_encoder,\n            tokenizer=tokenizer,\n            unet=unet,\n            scheduler=scheduler,\n            safety_checker=safety_checker,\n            feature_extractor=feature_extractor,\n            image_encoder=image_encoder,\n        )\n        self.vae_scale_factor = 2 ** (len(self.vae.config.block_out_channels) - 1)\n        self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor)\n        self.register_to_config(requires_safety_checker=requires_safety_checker)\n\n    def enable_vae_slicing(self):\n        r\"\"\"\n        Enable sliced VAE decoding. When this option is enabled, the VAE will split the input tensor in slices to\n        compute decoding in several steps. This is useful to save some memory and allow larger batch sizes.\n        \"\"\"\n        self.vae.enable_slicing()\n\n    def disable_vae_slicing(self):\n        r\"\"\"\n        Disable sliced VAE decoding. If `enable_vae_slicing` was previously enabled, this method will go back to\n        computing decoding in one step.\n        \"\"\"\n        self.vae.disable_slicing()\n\n    def enable_vae_tiling(self):\n        r\"\"\"\n        Enable tiled VAE decoding. When this option is enabled, the VAE will split the input tensor into tiles to\n        compute decoding and encoding in several steps. This is useful for saving a large amount of memory and to allow\n        processing larger images.\n        \"\"\"\n        self.vae.enable_tiling()\n\n    def disable_vae_tiling(self):\n        r\"\"\"\n        Disable tiled VAE decoding. If `enable_vae_tiling` was previously enabled, this method will go back to\n        computing decoding in one step.\n        \"\"\"\n        self.vae.disable_tiling()\n\n    def _encode_prompt(\n        self,\n        prompt,\n        device,\n        num_images_per_prompt,\n        do_classifier_free_guidance,\n        negative_prompt=None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        lora_scale: Optional[float] = None,\n        **kwargs,\n    ):\n        deprecation_message = \"`_encode_prompt()` is deprecated and it will be removed in a future version. Use `encode_prompt()` instead. Also, be aware that the output format changed from a concatenated tensor to a tuple.\"\n        deprecate(\"_encode_prompt()\", \"1.0.0\", deprecation_message, standard_warn=False)\n\n        prompt_embeds_tuple = self.encode_prompt(\n            prompt=prompt,\n            device=device,\n            num_images_per_prompt=num_images_per_prompt,\n            do_classifier_free_guidance=do_classifier_free_guidance,\n            negative_prompt=negative_prompt,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            lora_scale=lora_scale,\n            **kwargs,\n        )\n\n        # concatenate for backwards comp\n        prompt_embeds = torch.cat([prompt_embeds_tuple[1], prompt_embeds_tuple[0]])\n\n        return prompt_embeds\n\n    def encode_prompt(\n        self,\n        prompt,\n        device,\n        num_images_per_prompt,\n        do_classifier_free_guidance,\n        negative_prompt=None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        lora_scale: Optional[float] = None,\n        clip_skip: Optional[int] = None,\n    ):\n        r\"\"\"\n        Encodes the prompt into text encoder hidden states.\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                prompt to be encoded\n            device: (`torch.device`):\n                torch device\n            num_images_per_prompt (`int`):\n                number of images that should be generated per prompt\n            do_classifier_free_guidance (`bool`):\n                whether to use classifier free guidance or not\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            lora_scale (`float`, *optional*):\n                A LoRA scale that will be applied to all LoRA layers of the text encoder if LoRA layers are loaded.\n            clip_skip (`int`, *optional*):\n                Number of layers to be skipped from CLIP while computing the prompt embeddings. A value of 1 means that\n                the output of the pre-final layer will be used for computing the prompt embeddings.\n        \"\"\"\n        # set lora scale so that monkey patched LoRA\n        # function of text encoder can correctly access it\n        if lora_scale is not None and isinstance(self, LoraLoaderMixin):\n            self._lora_scale = lora_scale\n\n            # dynamically adjust the LoRA scale\n            if not USE_PEFT_BACKEND:\n                adjust_lora_scale_text_encoder(self.text_encoder, lora_scale)\n            else:\n                scale_lora_layers(self.text_encoder, lora_scale)\n\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        if prompt_embeds is None:\n            # textual inversion: process multi-vector tokens if necessary\n            if isinstance(self, TextualInversionLoaderMixin):\n                prompt = self.maybe_convert_prompt(prompt, self.tokenizer)\n\n            text_inputs = self.tokenizer(\n                prompt,\n                padding=\"max_length\",\n                max_length=self.tokenizer.model_max_length,\n                truncation=True,\n                return_tensors=\"pt\",\n            )\n            text_input_ids = text_inputs.input_ids\n            untruncated_ids = self.tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n            if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(\n                text_input_ids, untruncated_ids\n            ):\n                removed_text = self.tokenizer.batch_decode(\n                    untruncated_ids[:, self.tokenizer.model_max_length - 1 : -1]\n                )\n                logger.warning(\n                    \"The following part of your input was truncated because CLIP can only handle sequences up to\"\n                    f\" {self.tokenizer.model_max_length} tokens: {removed_text}\"\n                )\n\n            if hasattr(self.text_encoder.config, \"use_attention_mask\") and self.text_encoder.config.use_attention_mask:\n                attention_mask = text_inputs.attention_mask.to(device)\n            else:\n                attention_mask = None\n\n            if clip_skip is None:\n                prompt_embeds = self.text_encoder(text_input_ids.to(device), attention_mask=attention_mask)\n                prompt_embeds = prompt_embeds[0]\n            else:\n                prompt_embeds = self.text_encoder(\n                    text_input_ids.to(device), attention_mask=attention_mask, output_hidden_states=True\n                )\n                # Access the `hidden_states` first, that contains a tuple of\n                # all the hidden states from the encoder layers. Then index into\n                # the tuple to access the hidden states from the desired layer.\n                prompt_embeds = prompt_embeds[-1][-(clip_skip + 1)]\n                # We also need to apply the final LayerNorm here to not mess with the\n                # representations. The `last_hidden_states` that we typically use for\n                # obtaining the final prompt representations passes through the LayerNorm\n                # layer.\n                prompt_embeds = self.text_encoder.text_model.final_layer_norm(prompt_embeds)\n\n        if self.text_encoder is not None:\n            prompt_embeds_dtype = self.text_encoder.dtype\n        elif self.unet is not None:\n            prompt_embeds_dtype = self.unet.dtype\n        else:\n            prompt_embeds_dtype = prompt_embeds.dtype\n\n        prompt_embeds = prompt_embeds.to(dtype=prompt_embeds_dtype, device=device)\n\n        bs_embed, seq_len, _ = prompt_embeds.shape\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(bs_embed * num_images_per_prompt, seq_len, -1)\n\n        # get unconditional embeddings for classifier free guidance\n        if do_classifier_free_guidance and negative_prompt_embeds is None:\n            uncond_tokens: List[str]\n            if negative_prompt is None:\n                uncond_tokens = [\"\"] * batch_size\n            elif prompt is not None and type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif isinstance(negative_prompt, str):\n                uncond_tokens = [negative_prompt]\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n            else:\n                uncond_tokens = negative_prompt\n\n            # textual inversion: process multi-vector tokens if necessary\n            if isinstance(self, TextualInversionLoaderMixin):\n                uncond_tokens = self.maybe_convert_prompt(uncond_tokens, self.tokenizer)\n\n            max_length = prompt_embeds.shape[1]\n            uncond_input = self.tokenizer(\n                uncond_tokens,\n                padding=\"max_length\",\n                max_length=max_length,\n                truncation=True,\n                return_tensors=\"pt\",\n            )\n\n            if hasattr(self.text_encoder.config, \"use_attention_mask\") and self.text_encoder.config.use_attention_mask:\n                attention_mask = uncond_input.attention_mask.to(device)\n            else:\n                attention_mask = None\n\n            negative_prompt_embeds = self.text_encoder(\n                uncond_input.input_ids.to(device),\n                attention_mask=attention_mask,\n            )\n            negative_prompt_embeds = negative_prompt_embeds[0]\n\n        if do_classifier_free_guidance:\n            # duplicate unconditional embeddings for each generation per prompt, using mps friendly method\n            seq_len = negative_prompt_embeds.shape[1]\n\n            negative_prompt_embeds = negative_prompt_embeds.to(dtype=prompt_embeds_dtype, device=device)\n\n            negative_prompt_embeds = negative_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds = negative_prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n        if isinstance(self, LoraLoaderMixin) and USE_PEFT_BACKEND:\n            # Retrieve the original scale by scaling back the LoRA layers\n            unscale_lora_layers(self.text_encoder, lora_scale)\n\n        return prompt_embeds, negative_prompt_embeds\n\n    def encode_image(self, image, device, num_images_per_prompt, output_hidden_states=None):\n        dtype = next(self.image_encoder.parameters()).dtype\n\n        if not isinstance(image, torch.Tensor):\n            image = self.feature_extractor(image, return_tensors=\"pt\").pixel_values\n\n        image = image.to(device=device, dtype=dtype)\n        if output_hidden_states:\n            image_enc_hidden_states = self.image_encoder(image, output_hidden_states=True).hidden_states[-2]\n            image_enc_hidden_states = image_enc_hidden_states.repeat_interleave(num_images_per_prompt, dim=0)\n            uncond_image_enc_hidden_states = self.image_encoder(\n                torch.zeros_like(image), output_hidden_states=True\n            ).hidden_states[-2]\n            uncond_image_enc_hidden_states = uncond_image_enc_hidden_states.repeat_interleave(\n                num_images_per_prompt, dim=0\n            )\n            return image_enc_hidden_states, uncond_image_enc_hidden_states\n        else:\n            image_embeds = self.image_encoder(image).image_embeds\n            image_embeds = image_embeds.repeat_interleave(num_images_per_prompt, dim=0)\n            uncond_image_embeds = torch.zeros_like(image_embeds)\n\n            return image_embeds, uncond_image_embeds\n\n    def prepare_ip_adapter_image_embeds(\n        self, ip_adapter_image, ip_adapter_image_embeds, device, num_images_per_prompt\n    ):\n        if ip_adapter_image_embeds is None:\n            if not isinstance(ip_adapter_image, list):\n                ip_adapter_image = [ip_adapter_image]\n\n            if len(ip_adapter_image) != len(self.unet.encoder_hid_proj.image_projection_layers):\n                raise ValueError(\n                    f\"`ip_adapter_image` must have same length as the number of IP Adapters. Got {len(ip_adapter_image)} images and {len(self.unet.encoder_hid_proj.image_projection_layers)} IP Adapters.\"\n                )\n\n            image_embeds = []\n            for single_ip_adapter_image, image_proj_layer in zip(\n                ip_adapter_image, self.unet.encoder_hid_proj.image_projection_layers\n            ):\n                output_hidden_state = not isinstance(image_proj_layer, ImageProjection)\n                single_image_embeds, single_negative_image_embeds = self.encode_image(\n                    single_ip_adapter_image, device, 1, output_hidden_state\n                )\n                single_image_embeds = torch.stack([single_image_embeds] * num_images_per_prompt, dim=0)\n                single_negative_image_embeds = torch.stack(\n                    [single_negative_image_embeds] * num_images_per_prompt, dim=0\n                )\n\n                if self.do_classifier_free_guidance:\n                    single_image_embeds = torch.cat([single_negative_image_embeds, single_image_embeds])\n                    single_image_embeds = single_image_embeds.to(device)\n\n                image_embeds.append(single_image_embeds)\n        else:\n            image_embeds = ip_adapter_image_embeds\n        return image_embeds\n\n    def run_safety_checker(self, image, device, dtype):\n        if self.safety_checker is None:\n            has_nsfw_concept = None\n        else:\n            if torch.is_tensor(image):\n                feature_extractor_input = self.image_processor.postprocess(image, output_type=\"pil\")\n            else:\n                feature_extractor_input = self.image_processor.numpy_to_pil(image)\n            safety_checker_input = self.feature_extractor(feature_extractor_input, return_tensors=\"pt\").to(device)\n            image, has_nsfw_concept = self.safety_checker(\n                images=image, clip_input=safety_checker_input.pixel_values.to(dtype)\n            )\n        return image, has_nsfw_concept\n\n    def decode_latents(self, latents):\n        deprecation_message = \"The decode_latents method is deprecated and will be removed in 1.0.0. Please use VaeImageProcessor.postprocess(...) instead\"\n        deprecate(\"decode_latents\", \"1.0.0\", deprecation_message, standard_warn=False)\n\n        latents = 1 / self.vae.config.scaling_factor * latents\n        image = self.vae.decode(latents, return_dict=False)[0]\n        image = (image / 2 + 0.5).clamp(0, 1)\n        # we always cast to float32 as this does not cause significant overhead and is compatible with bfloat16\n        image = image.cpu().permute(0, 2, 3, 1).float().numpy()\n        return image\n\n    def prepare_extra_step_kwargs(self, generator, eta):\n        # prepare extra kwargs for the scheduler step, since not all schedulers have the same signature\n        # eta (η) is only used with the DDIMScheduler, it will be ignored for other schedulers.\n        # eta corresponds to η in DDIM paper: https://arxiv.org/abs/2010.02502\n        # and should be between [0, 1]\n\n        accepts_eta = \"eta\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        extra_step_kwargs = {}\n        if accepts_eta:\n            extra_step_kwargs[\"eta\"] = eta\n\n        # check if the scheduler accepts generator\n        accepts_generator = \"generator\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        if accepts_generator:\n            extra_step_kwargs[\"generator\"] = generator\n        return extra_step_kwargs\n\n    def check_inputs(\n        self,\n        prompt,\n        height,\n        width,\n        callback_steps,\n        negative_prompt=None,\n        prompt_embeds=None,\n        negative_prompt_embeds=None,\n        ip_adapter_image=None,\n        ip_adapter_image_embeds=None,\n        callback_on_step_end_tensor_inputs=None,\n    ):\n        if height % 8 != 0 or width % 8 != 0:\n            raise ValueError(f\"`height` and `width` have to be divisible by 8 but are {height} and {width}.\")\n\n        if callback_steps is not None and (not isinstance(callback_steps, int) or callback_steps <= 0):\n            raise ValueError(\n                f\"`callback_steps` has to be a positive integer but is {callback_steps} of type\"\n                f\" {type(callback_steps)}.\"\n            )\n        if callback_on_step_end_tensor_inputs is not None and not all(\n            k in self._callback_tensor_inputs for k in callback_on_step_end_tensor_inputs\n        ):\n            raise ValueError(\n                f\"`callback_on_step_end_tensor_inputs` has to be in {self._callback_tensor_inputs}, but found {[k for k in callback_on_step_end_tensor_inputs if k not in self._callback_tensor_inputs]}\"\n            )\n\n        if prompt is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n\n        if negative_prompt is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n\n        if prompt_embeds is not None and negative_prompt_embeds is not None:\n            if prompt_embeds.shape != negative_prompt_embeds.shape:\n                raise ValueError(\n                    \"`prompt_embeds` and `negative_prompt_embeds` must have the same shape when passed directly, but\"\n                    f\" got: `prompt_embeds` {prompt_embeds.shape} != `negative_prompt_embeds`\"\n                    f\" {negative_prompt_embeds.shape}.\"\n                )\n\n        if ip_adapter_image is not None and ip_adapter_image_embeds is not None:\n            raise ValueError(\n                \"Provide either `ip_adapter_image` or `ip_adapter_image_embeds`. Cannot leave both `ip_adapter_image` and `ip_adapter_image_embeds` defined.\"\n            )\n\n    def prepare_latents(self, batch_size, num_channels_latents, height, width, dtype, device, generator, latents=None):\n        shape = (batch_size, num_channels_latents, height // self.vae_scale_factor, width // self.vae_scale_factor)\n        if isinstance(generator, list) and len(generator) != batch_size:\n            raise ValueError(\n                f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n            )\n\n        if latents is None:\n            latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n        else:\n            latents = latents.to(device)\n\n        # scale the initial noise by the standard deviation required by the scheduler\n        latents = latents * self.scheduler.init_noise_sigma\n        return latents\n\n    def enable_freeu(self, s1: float, s2: float, b1: float, b2: float):\n        r\"\"\"Enables the FreeU mechanism as in https://arxiv.org/abs/2309.11497.\n        The suffixes after the scaling factors represent the stages where they are being applied.\n        Please refer to the [official repository](https://github.com/ChenyangSi/FreeU) for combinations of the values\n        that are known to work well for different pipelines such as Stable Diffusion v1, v2, and Stable Diffusion XL.\n        Args:\n            s1 (`float`):\n                Scaling factor for stage 1 to attenuate the contributions of the skip features. This is done to\n                mitigate \"oversmoothing effect\" in the enhanced denoising process.\n            s2 (`float`):\n                Scaling factor for stage 2 to attenuate the contributions of the skip features. This is done to\n                mitigate \"oversmoothing effect\" in the enhanced denoising process.\n            b1 (`float`): Scaling factor for stage 1 to amplify the contributions of backbone features.\n            b2 (`float`): Scaling factor for stage 2 to amplify the contributions of backbone features.\n        \"\"\"\n        if not hasattr(self, \"unet\"):\n            raise ValueError(\"The pipeline must have `unet` for using FreeU.\")\n        self.unet.enable_freeu(s1=s1, s2=s2, b1=b1, b2=b2)\n\n    def disable_freeu(self):\n        \"\"\"Disables the FreeU mechanism if enabled.\"\"\"\n        self.unet.disable_freeu()\n\n    # Copied from diffusers.pipelines.stable_diffusion_xl.pipeline_stable_diffusion_xl.StableDiffusionXLPipeline.fuse_qkv_projections\n    def fuse_qkv_projections(self, unet: bool = True, vae: bool = True):\n        \"\"\"\n        Enables fused QKV projections. For self-attention modules, all projection matrices (i.e., query,\n        key, value) are fused. For cross-attention modules, key and value projection matrices are fused.\n        <Tip warning={true}>\n        This API is 🧪 experimental.\n        </Tip>\n        Args:\n            unet (`bool`, defaults to `True`): To apply fusion on the UNet.\n            vae (`bool`, defaults to `True`): To apply fusion on the VAE.\n        \"\"\"\n        self.fusing_unet = False\n        self.fusing_vae = False\n\n        if unet:\n            self.fusing_unet = True\n            self.unet.fuse_qkv_projections()\n            self.unet.set_attn_processor(FusedAttnProcessor2_0())\n\n        if vae:\n            if not isinstance(self.vae, AutoencoderKL):\n                raise ValueError(\"`fuse_qkv_projections()` is only supported for the VAE of type `AutoencoderKL`.\")\n\n            self.fusing_vae = True\n            self.vae.fuse_qkv_projections()\n            self.vae.set_attn_processor(FusedAttnProcessor2_0())\n\n    # Copied from diffusers.pipelines.stable_diffusion_xl.pipeline_stable_diffusion_xl.StableDiffusionXLPipeline.unfuse_qkv_projections\n    def unfuse_qkv_projections(self, unet: bool = True, vae: bool = True):\n        \"\"\"Disable QKV projection fusion if enabled.\n        <Tip warning={true}>\n        This API is 🧪 experimental.\n        </Tip>\n        Args:\n            unet (`bool`, defaults to `True`): To apply fusion on the UNet.\n            vae (`bool`, defaults to `True`): To apply fusion on the VAE.\n        \"\"\"\n        if unet:\n            if not self.fusing_unet:\n                logger.warning(\"The UNet was not initially fused for QKV projections. Doing nothing.\")\n            else:\n                self.unet.unfuse_qkv_projections()\n                self.fusing_unet = False\n\n        if vae:\n            if not self.fusing_vae:\n                logger.warning(\"The VAE was not initially fused for QKV projections. Doing nothing.\")\n            else:\n                self.vae.unfuse_qkv_projections()\n                self.fusing_vae = False\n\n    # Copied from diffusers.pipelines.latent_consistency_models.pipeline_latent_consistency_text2img.LatentConsistencyModelPipeline.get_guidance_scale_embedding\n    def get_guidance_scale_embedding(self, w, embedding_dim=512, dtype=torch.float32):\n        \"\"\"\n        See https://github.com/google-research/vdm/blob/dc27b98a554f65cdc654b800da5aa1846545d41b/model_vdm.py#L298\n        Args:\n            timesteps (`torch.Tensor`):\n                generate embedding vectors at these timesteps\n            embedding_dim (`int`, *optional*, defaults to 512):\n                dimension of the embeddings to generate\n            dtype:\n                data type of the generated embeddings\n        Returns:\n            `torch.FloatTensor`: Embedding vectors with shape `(len(timesteps), embedding_dim)`\n        \"\"\"\n        assert len(w.shape) == 1\n        w = w * 1000.0\n\n        half_dim = embedding_dim // 2\n        emb = torch.log(torch.tensor(10000.0)) / (half_dim - 1)\n        emb = torch.exp(torch.arange(half_dim, dtype=dtype) * -emb)\n        emb = w.to(dtype)[:, None] * emb[None, :]\n        emb = torch.cat([torch.sin(emb), torch.cos(emb)], dim=1)\n        if embedding_dim % 2 == 1:  # zero pad\n            emb = torch.nn.functional.pad(emb, (0, 1))\n        assert emb.shape == (w.shape[0], embedding_dim)\n        return emb\n\n    def pred_z0(self, sample, model_output, timestep):\n        alpha_prod_t = self.scheduler.alphas_cumprod[timestep].to(sample.device)\n\n        beta_prod_t = 1 - alpha_prod_t\n        if self.scheduler.config.prediction_type == \"epsilon\":\n            pred_original_sample = (sample - beta_prod_t ** (0.5) * model_output) / alpha_prod_t ** (0.5)\n        elif self.scheduler.config.prediction_type == \"sample\":\n            pred_original_sample = model_output\n        elif self.scheduler.config.prediction_type == \"v_prediction\":\n            pred_original_sample = (alpha_prod_t**0.5) * sample - (beta_prod_t**0.5) * model_output\n            # predict V\n            model_output = (alpha_prod_t**0.5) * model_output + (beta_prod_t**0.5) * sample\n        else:\n            raise ValueError(\n                f\"prediction_type given as {self.scheduler.config.prediction_type} must be one of `epsilon`, `sample`,\"\n                \" or `v_prediction`\"\n            )\n\n        return pred_original_sample\n\n    def pred_x0(self, latents, noise_pred, t, generator, device, prompt_embeds, output_type):\n        pred_z0 = self.pred_z0(latents, noise_pred, t)\n        pred_x0 = self.vae.decode(pred_z0 / self.vae.config.scaling_factor, return_dict=False, generator=generator)[0]\n        pred_x0, ____ = self.run_safety_checker(pred_x0, device, prompt_embeds.dtype)\n        do_denormalize = [True] * pred_x0.shape[0]\n        pred_x0 = self.image_processor.postprocess(pred_x0, output_type=output_type, do_denormalize=do_denormalize)\n\n        return pred_x0\n\n    @property\n    def guidance_scale(self):\n        return self._guidance_scale\n\n    @property\n    def guidance_rescale(self):\n        return self._guidance_rescale\n\n    @property\n    def clip_skip(self):\n        return self._clip_skip\n\n    # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2)\n    # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1`\n    # corresponds to doing no classifier free guidance.\n    @property\n    def do_classifier_free_guidance(self):\n        return self._guidance_scale > 1 and self.unet.config.time_cond_proj_dim is None\n\n    @property\n    def cross_attention_kwargs(self):\n        return self._cross_attention_kwargs\n\n    @property\n    def num_timesteps(self):\n        return self._num_timesteps\n\n    @property\n    def interrupt(self):\n        return self._interrupt\n\n    @property\n    def pag_scale(self):\n        return self._pag_scale\n\n    @property\n    def do_perturbed_attention_guidance(self):\n        return self._pag_scale > 0\n\n    @property\n    def pag_adaptive_scaling(self):\n        return self._pag_adaptive_scaling\n\n    @property\n    def do_pag_adaptive_scaling(self):\n        return self._pag_adaptive_scaling > 0\n\n    @property\n    def pag_applied_layers_index(self):\n        return self._pag_applied_layers_index\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        height: Optional[int] = None,\n        width: Optional[int] = None,\n        num_inference_steps: int = 50,\n        timesteps: List[int] = None,\n        guidance_scale: float = 7.5,\n        pag_scale: float = 0.0,\n        pag_adaptive_scaling: float = 0.0,\n        pag_applied_layers_index: List[str] = [\"d4\"],  # ['d4', 'd5', 'm0']\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        eta: float = 0.0,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.FloatTensor] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        ip_adapter_image: Optional[PipelineImageInput] = None,\n        ip_adapter_image_embeds: Optional[List[torch.FloatTensor]] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        guidance_rescale: float = 0.0,\n        clip_skip: Optional[int] = None,\n        callback_on_step_end: Optional[Callable[[int, int, Dict], None]] = None,\n        callback_on_step_end_tensor_inputs: List[str] = [\"latents\"],\n        **kwargs,\n    ):\n        r\"\"\"\n        The call function to the pipeline for generation.\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide image generation. If not defined, you need to pass `prompt_embeds`.\n            height (`int`, *optional*, defaults to `self.unet.config.sample_size * self.vae_scale_factor`):\n                The height in pixels of the generated image.\n            width (`int`, *optional*, defaults to `self.unet.config.sample_size * self.vae_scale_factor`):\n                The width in pixels of the generated image.\n            num_inference_steps (`int`, *optional*, defaults to 50):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            timesteps (`List[int]`, *optional*):\n                Custom timesteps to use for the denoising process with schedulers which support a `timesteps` argument\n                in their `set_timesteps` method. If not defined, the default behavior when `num_inference_steps` is\n                passed will be used. Must be in descending order.\n            guidance_scale (`float`, *optional*, defaults to 7.5):\n                A higher guidance scale value encourages the model to generate images closely linked to the text\n                `prompt` at the expense of lower image quality. Guidance scale is enabled when `guidance_scale > 1`.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide what to not include in image generation. If not defined, you need to\n                pass `negative_prompt_embeds` instead. Ignored when not using guidance (`guidance_scale < 1`).\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            eta (`float`, *optional*, defaults to 0.0):\n                Corresponds to parameter eta (η) from the [DDIM](https://arxiv.org/abs/2010.02502) paper. Only applies\n                to the [`~schedulers.DDIMScheduler`], and is ignored in other schedulers.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                A [`torch.Generator`](https://pytorch.org/docs/stable/generated/torch.Generator.html) to make\n                generation deterministic.\n            latents (`torch.FloatTensor`, *optional*):\n                Pre-generated noisy latents sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor is generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs (prompt weighting). If not\n                provided, text embeddings are generated from the `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs (prompt weighting). If\n                not provided, `negative_prompt_embeds` are generated from the `negative_prompt` input argument.\n            ip_adapter_image: (`PipelineImageInput`, *optional*): Optional image input to work with IP Adapters.\n            ip_adapter_image_embeds (`List[torch.FloatTensor]`, *optional*):\n                Pre-generated image embeddings for IP-Adapter. If not\n                provided, embeddings are computed from the `ip_adapter_image` input argument.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generated image. Choose between `PIL.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.stable_diffusion.StableDiffusionPipelineOutput`] instead of a\n                plain tuple.\n            cross_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the [`AttentionProcessor`] as defined in\n                [`self.processor`](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            guidance_rescale (`float`, *optional*, defaults to 0.0):\n                Guidance rescale factor from [Common Diffusion Noise Schedules and Sample Steps are\n                Flawed](https://arxiv.org/pdf/2305.08891.pdf). Guidance rescale factor should fix overexposure when\n                using zero terminal SNR.\n            clip_skip (`int`, *optional*):\n                Number of layers to be skipped from CLIP while computing the prompt embeddings. A value of 1 means that\n                the output of the pre-final layer will be used for computing the prompt embeddings.\n            callback_on_step_end (`Callable`, *optional*):\n                A function that calls at the end of each denoising steps during the inference. The function is called\n                with the following arguments: `callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int,\n                callback_kwargs: Dict)`. `callback_kwargs` will include a list of all tensors as specified by\n                `callback_on_step_end_tensor_inputs`.\n            callback_on_step_end_tensor_inputs (`List`, *optional*):\n                The list of tensor inputs for the `callback_on_step_end` function. The tensors specified in the list\n                will be passed as `callback_kwargs` argument. You will only be able to include variables listed in the\n                `._callback_tensor_inputs` attribute of your pipeline class.\n        Examples:\n        Returns:\n            [`~pipelines.stable_diffusion.StableDiffusionPipelineOutput`] or `tuple`:\n                If `return_dict` is `True`, [`~pipelines.stable_diffusion.StableDiffusionPipelineOutput`] is returned,\n                otherwise a `tuple` is returned where the first element is a list with the generated images and the\n                second element is a list of `bool`s indicating whether the corresponding generated image contains\n                \"not-safe-for-work\" (nsfw) content.\n        \"\"\"\n\n        callback = kwargs.pop(\"callback\", None)\n        callback_steps = kwargs.pop(\"callback_steps\", None)\n\n        if callback is not None:\n            deprecate(\n                \"callback\",\n                \"1.0.0\",\n                \"Passing `callback` as an input argument to `__call__` is deprecated, consider using `callback_on_step_end`\",\n            )\n        if callback_steps is not None:\n            deprecate(\n                \"callback_steps\",\n                \"1.0.0\",\n                \"Passing `callback_steps` as an input argument to `__call__` is deprecated, consider using `callback_on_step_end`\",\n            )\n\n        # 0. Default height and width to unet\n        height = height or self.unet.config.sample_size * self.vae_scale_factor\n        width = width or self.unet.config.sample_size * self.vae_scale_factor\n        # to deal with lora scaling and other possible forward hooks\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            height,\n            width,\n            callback_steps,\n            negative_prompt,\n            prompt_embeds,\n            negative_prompt_embeds,\n            ip_adapter_image,\n            ip_adapter_image_embeds,\n            callback_on_step_end_tensor_inputs,\n        )\n\n        self._guidance_scale = guidance_scale\n        self._guidance_rescale = guidance_rescale\n        self._clip_skip = clip_skip\n        self._cross_attention_kwargs = cross_attention_kwargs\n        self._interrupt = False\n\n        self._pag_scale = pag_scale\n        self._pag_adaptive_scaling = pag_adaptive_scaling\n        self._pag_applied_layers_index = pag_applied_layers_index\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        device = self._execution_device\n\n        # 3. Encode input prompt\n        lora_scale = (\n            self.cross_attention_kwargs.get(\"scale\", None) if self.cross_attention_kwargs is not None else None\n        )\n\n        prompt_embeds, negative_prompt_embeds = self.encode_prompt(\n            prompt,\n            device,\n            num_images_per_prompt,\n            self.do_classifier_free_guidance,\n            negative_prompt,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            lora_scale=lora_scale,\n            clip_skip=self.clip_skip,\n        )\n\n        # For classifier free guidance, we need to do two forward passes.\n        # Here we concatenate the unconditional and text embeddings into a single batch\n        # to avoid doing two forward passes\n\n        # cfg\n        if self.do_classifier_free_guidance and not self.do_perturbed_attention_guidance:\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds])\n        # pag\n        elif not self.do_classifier_free_guidance and self.do_perturbed_attention_guidance:\n            prompt_embeds = torch.cat([prompt_embeds, prompt_embeds])\n        # both\n        elif self.do_classifier_free_guidance and self.do_perturbed_attention_guidance:\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds, prompt_embeds])\n\n        if ip_adapter_image is not None or ip_adapter_image_embeds is not None:\n            image_embeds = self.prepare_ip_adapter_image_embeds(\n                ip_adapter_image, ip_adapter_image_embeds, device, batch_size * num_images_per_prompt\n            )\n\n        # 4. Prepare timesteps\n        timesteps, num_inference_steps = retrieve_timesteps(self.scheduler, num_inference_steps, device, timesteps)\n\n        # 5. Prepare latent variables\n        num_channels_latents = self.unet.config.in_channels\n        latents = self.prepare_latents(\n            batch_size * num_images_per_prompt,\n            num_channels_latents,\n            height,\n            width,\n            prompt_embeds.dtype,\n            device,\n            generator,\n            latents,\n        )\n\n        # 6. Prepare extra step kwargs.\n        extra_step_kwargs = self.prepare_extra_step_kwargs(generator, eta)\n\n        # 6.1 Add image embeds for IP-Adapter\n        added_cond_kwargs = (\n            {\"image_embeds\": image_embeds}\n            if (ip_adapter_image is not None or ip_adapter_image_embeds is not None)\n            else None\n        )\n\n        # 6.2 Optionally get Guidance Scale Embedding\n        timestep_cond = None\n        if self.unet.config.time_cond_proj_dim is not None:\n            guidance_scale_tensor = torch.tensor(self.guidance_scale - 1).repeat(batch_size * num_images_per_prompt)\n            timestep_cond = self.get_guidance_scale_embedding(\n                guidance_scale_tensor, embedding_dim=self.unet.config.time_cond_proj_dim\n            ).to(device=device, dtype=latents.dtype)\n\n        # 7. Denoising loop\n        if self.do_perturbed_attention_guidance:\n            down_layers = []\n            mid_layers = []\n            up_layers = []\n            for name, module in self.unet.named_modules():\n                if \"attn1\" in name and \"to\" not in name:\n                    layer_type = name.split(\".\")[0].split(\"_\")[0]\n                    if layer_type == \"down\":\n                        down_layers.append(module)\n                    elif layer_type == \"mid\":\n                        mid_layers.append(module)\n                    elif layer_type == \"up\":\n                        up_layers.append(module)\n                    else:\n                        raise ValueError(f\"Invalid layer type: {layer_type}\")\n\n        # change attention layer in UNet if use PAG\n        if self.do_perturbed_attention_guidance:\n            if self.do_classifier_free_guidance:\n                replace_processor = PAGCFGIdentitySelfAttnProcessor()\n            else:\n                replace_processor = PAGIdentitySelfAttnProcessor()\n\n            drop_layers = self.pag_applied_layers_index\n            for drop_layer in drop_layers:\n                try:\n                    if drop_layer[0] == \"d\":\n                        down_layers[int(drop_layer[1])].processor = replace_processor\n                    elif drop_layer[0] == \"m\":\n                        mid_layers[int(drop_layer[1])].processor = replace_processor\n                    elif drop_layer[0] == \"u\":\n                        up_layers[int(drop_layer[1])].processor = replace_processor\n                    else:\n                        raise ValueError(f\"Invalid layer type: {drop_layer[0]}\")\n                except IndexError:\n                    raise ValueError(\n                        f\"Invalid layer index: {drop_layer}. Available layers: {len(down_layers)} down layers, {len(mid_layers)} mid layers, {len(up_layers)} up layers.\"\n                    )\n\n        num_warmup_steps = len(timesteps) - num_inference_steps * self.scheduler.order\n        self._num_timesteps = len(timesteps)\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                if self.interrupt:\n                    continue\n\n                # cfg\n                if self.do_classifier_free_guidance and not self.do_perturbed_attention_guidance:\n                    latent_model_input = torch.cat([latents] * 2)\n                # pag\n                elif not self.do_classifier_free_guidance and self.do_perturbed_attention_guidance:\n                    latent_model_input = torch.cat([latents] * 2)\n                # both\n                elif self.do_classifier_free_guidance and self.do_perturbed_attention_guidance:\n                    latent_model_input = torch.cat([latents] * 3)\n                # no\n                else:\n                    latent_model_input = latents\n\n                latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n                # predict the noise residual\n                noise_pred = self.unet(\n                    latent_model_input,\n                    t,\n                    encoder_hidden_states=prompt_embeds,\n                    timestep_cond=timestep_cond,\n                    cross_attention_kwargs=self.cross_attention_kwargs,\n                    added_cond_kwargs=added_cond_kwargs,\n                    return_dict=False,\n                )[0]\n\n                # perform guidance\n\n                # cfg\n                if self.do_classifier_free_guidance and not self.do_perturbed_attention_guidance:\n                    noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n\n                    delta = noise_pred_text - noise_pred_uncond\n                    noise_pred = noise_pred_uncond + self.guidance_scale * delta\n\n                # pag\n                elif not self.do_classifier_free_guidance and self.do_perturbed_attention_guidance:\n                    noise_pred_original, noise_pred_perturb = noise_pred.chunk(2)\n\n                    signal_scale = self.pag_scale\n                    if self.do_pag_adaptive_scaling:\n                        signal_scale = self.pag_scale - self.pag_adaptive_scaling * (1000 - t)\n                        if signal_scale < 0:\n                            signal_scale = 0\n\n                    noise_pred = noise_pred_original + signal_scale * (noise_pred_original - noise_pred_perturb)\n\n                # both\n                elif self.do_classifier_free_guidance and self.do_perturbed_attention_guidance:\n                    noise_pred_uncond, noise_pred_text, noise_pred_text_perturb = noise_pred.chunk(3)\n\n                    signal_scale = self.pag_scale\n                    if self.do_pag_adaptive_scaling:\n                        signal_scale = self.pag_scale - self.pag_adaptive_scaling * (1000 - t)\n                        if signal_scale < 0:\n                            signal_scale = 0\n\n                    noise_pred = (\n                        noise_pred_text\n                        + (self.guidance_scale - 1.0) * (noise_pred_text - noise_pred_uncond)\n                        + signal_scale * (noise_pred_text - noise_pred_text_perturb)\n                    )\n\n                if self.do_classifier_free_guidance and self.guidance_rescale > 0.0:\n                    # Based on 3.4. in https://arxiv.org/pdf/2305.08891.pdf\n                    noise_pred = rescale_noise_cfg(noise_pred, noise_pred_text, guidance_rescale=self.guidance_rescale)\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents = self.scheduler.step(noise_pred, t, latents, **extra_step_kwargs, return_dict=False)[0]\n\n                if callback_on_step_end is not None:\n                    callback_kwargs = {}\n                    for k in callback_on_step_end_tensor_inputs:\n                        callback_kwargs[k] = locals()[k]\n                    callback_outputs = callback_on_step_end(self, i, t, callback_kwargs)\n\n                    latents = callback_outputs.pop(\"latents\", latents)\n                    prompt_embeds = callback_outputs.pop(\"prompt_embeds\", prompt_embeds)\n                    negative_prompt_embeds = callback_outputs.pop(\"negative_prompt_embeds\", negative_prompt_embeds)\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n                    if callback is not None and i % callback_steps == 0:\n                        step_idx = i // getattr(self.scheduler, \"order\", 1)\n                        callback(step_idx, t, latents)\n\n        if not output_type == \"latent\":\n            image = self.vae.decode(latents / self.vae.config.scaling_factor, return_dict=False, generator=generator)[\n                0\n            ]\n            image, has_nsfw_concept = self.run_safety_checker(image, device, prompt_embeds.dtype)\n        else:\n            image = latents\n            has_nsfw_concept = None\n\n        if has_nsfw_concept is None:\n            do_denormalize = [True] * image.shape[0]\n        else:\n            do_denormalize = [not has_nsfw for has_nsfw in has_nsfw_concept]\n\n        image = self.image_processor.postprocess(image, output_type=output_type, do_denormalize=do_denormalize)\n\n        # Offload all models\n        self.maybe_free_model_hooks()\n\n        # change attention layer in UNet if use PAG\n        if self.do_perturbed_attention_guidance:\n            drop_layers = self.pag_applied_layers_index\n            for drop_layer in drop_layers:\n                try:\n                    if drop_layer[0] == \"d\":\n                        down_layers[int(drop_layer[1])].processor = AttnProcessor2_0()\n                    elif drop_layer[0] == \"m\":\n                        mid_layers[int(drop_layer[1])].processor = AttnProcessor2_0()\n                    elif drop_layer[0] == \"u\":\n                        up_layers[int(drop_layer[1])].processor = AttnProcessor2_0()\n                    else:\n                        raise ValueError(f\"Invalid layer type: {drop_layer[0]}\")\n                except IndexError:\n                    raise ValueError(\n                        f\"Invalid layer index: {drop_layer}. Available layers: {len(down_layers)} down layers, {len(mid_layers)} mid layers, {len(up_layers)} up layers.\"\n                    )\n\n        if not return_dict:\n            return (image, has_nsfw_concept)\n\n        return StableDiffusionPipelineOutput(images=image, nsfw_content_detected=has_nsfw_concept)\n"
  },
  {
    "path": "modules/pag/pipe_sdxl.py",
    "content": "# Implementation of StableDiffusionXLPAGPipeline\n\nimport inspect\nfrom typing import Any, Callable, Dict, List, Optional, Tuple, Union\n\nimport torch\nimport torch.nn.functional as F\n\nfrom transformers import (\n    CLIPImageProcessor,\n    CLIPTextModel,\n    CLIPTextModelWithProjection,\n    CLIPTokenizer,\n    CLIPVisionModelWithProjection,\n)\n\nfrom diffusers.image_processor import PipelineImageInput, VaeImageProcessor\nfrom diffusers.loaders import (\n    FromSingleFileMixin,\n    IPAdapterMixin,\n    StableDiffusionXLLoraLoaderMixin,\n    TextualInversionLoaderMixin,\n)\nfrom diffusers.models import AutoencoderKL, ImageProjection, UNet2DConditionModel\nfrom diffusers.models.attention_processor import (\n    AttnProcessor2_0,\n    FusedAttnProcessor2_0,\n    XFormersAttnProcessor,\n)\nfrom diffusers.models.lora import adjust_lora_scale_text_encoder\nfrom diffusers.schedulers import KarrasDiffusionSchedulers\nfrom diffusers.utils import (\n    USE_PEFT_BACKEND,\n    deprecate,\n    is_invisible_watermark_available,\n    is_torch_xla_available,\n    logging,\n    replace_example_docstring,\n    scale_lora_layers,\n    unscale_lora_layers,\n)\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline, StableDiffusionMixin\nfrom diffusers.pipelines.stable_diffusion_xl.pipeline_output import StableDiffusionXLPipelineOutput\n\nfrom diffusers.models.attention_processor import Attention\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\nEXAMPLE_DOC_STRING = \"\"\"\n    Examples:\n        ```py\n        >>> import torch\n        >>> from diffusers import StableDiffusionXLPipeline\n\n        >>> pipe = StableDiffusionXLPipeline.from_pretrained(\n        ...     \"stabilityai/stable-diffusion-xl-base-1.0\", torch_dtype=torch.float16\n        ... )\n        >>> pipe = pipe.to(\"cuda\")\n\n        >>> prompt = \"a photo of an astronaut riding a horse on mars\"\n        >>> image = pipe(prompt).images[0]\n        ```\n\"\"\"\n\n\nclass PAGIdentitySelfAttnProcessor:\n    r\"\"\"\n    Processor for implementing scaled dot-product attention (enabled by default if you're using PyTorch 2.0).\n    \"\"\"\n\n    def __init__(self):\n        if not hasattr(F, \"scaled_dot_product_attention\"):\n            raise ImportError(\"AttnProcessor2_0 requires PyTorch 2.0, to use it, please upgrade PyTorch to 2.0.\")\n\n    def __call__(\n        self,\n        attn: Attention,\n        hidden_states: torch.FloatTensor,\n        encoder_hidden_states: Optional[torch.FloatTensor] = None,\n        attention_mask: Optional[torch.FloatTensor] = None,\n        temb: Optional[torch.FloatTensor] = None,\n        *args,\n        **kwargs,\n    ) -> torch.FloatTensor:\n        if len(args) > 0 or kwargs.get(\"scale\", None) is not None:\n            deprecation_message = \"The `scale` argument is deprecated and will be ignored. Please remove it, as passing it will raise an error in the future. `scale` should directly be passed while calling the underlying pipeline component i.e., via `cross_attention_kwargs`.\"\n            deprecate(\"scale\", \"1.0.0\", deprecation_message)\n\n        residual = hidden_states\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n\n        # chunk\n        hidden_states_org, hidden_states_ptb = hidden_states.chunk(2)\n\n        # original path\n        batch_size, sequence_length, _ = hidden_states_org.shape\n\n        if attention_mask is not None:\n            attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n            # scaled_dot_product_attention expects attention_mask shape to be\n            # (batch, heads, source_length, target_length)\n            attention_mask = attention_mask.view(batch_size, attn.heads, -1, attention_mask.shape[-1])\n\n        if attn.group_norm is not None:\n            hidden_states_org = attn.group_norm(hidden_states_org.transpose(1, 2)).transpose(1, 2)\n\n        query = attn.to_q(hidden_states_org)\n        key = attn.to_k(hidden_states_org)\n        value = attn.to_v(hidden_states_org)\n\n        inner_dim = key.shape[-1]\n        head_dim = inner_dim // attn.heads\n\n        query = query.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        key = key.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        value = value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        # the output of sdp = (batch, num_heads, seq_len, head_dim)\n        hidden_states_org = F.scaled_dot_product_attention(\n            query, key, value, attn_mask=attention_mask, dropout_p=0.0, is_causal=False\n        )\n\n        hidden_states_org = hidden_states_org.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n        hidden_states_org = hidden_states_org.to(query.dtype)\n\n        # linear proj\n        hidden_states_org = attn.to_out[0](hidden_states_org)\n        # dropout\n        hidden_states_org = attn.to_out[1](hidden_states_org)\n\n        if input_ndim == 4:\n            hidden_states_org = hidden_states_org.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        # perturbed path (identity attention)\n        batch_size, sequence_length, _ = hidden_states_ptb.shape\n\n        if attention_mask is not None:\n            attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n            # scaled_dot_product_attention expects attention_mask shape to be\n            # (batch, heads, source_length, target_length)\n            attention_mask = attention_mask.view(batch_size, attn.heads, -1, attention_mask.shape[-1])\n\n        if attn.group_norm is not None:\n            hidden_states_ptb = attn.group_norm(hidden_states_ptb.transpose(1, 2)).transpose(1, 2)\n\n        value = attn.to_v(hidden_states_ptb)\n\n        # hidden_states_ptb = torch.zeros(value.shape).to(value.get_device())\n        hidden_states_ptb = value\n\n        hidden_states_ptb = hidden_states_ptb.to(query.dtype)\n\n        # linear proj\n        hidden_states_ptb = attn.to_out[0](hidden_states_ptb)\n        # dropout\n        hidden_states_ptb = attn.to_out[1](hidden_states_ptb)\n\n        if input_ndim == 4:\n            hidden_states_ptb = hidden_states_ptb.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        # cat\n        hidden_states = torch.cat([hidden_states_org, hidden_states_ptb])\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n\n\nclass PAGCFGIdentitySelfAttnProcessor:\n    r\"\"\"\n    Processor for implementing scaled dot-product attention (enabled by default if you're using PyTorch 2.0).\n    \"\"\"\n\n    def __init__(self):\n        if not hasattr(F, \"scaled_dot_product_attention\"):\n            raise ImportError(\"AttnProcessor2_0 requires PyTorch 2.0, to use it, please upgrade PyTorch to 2.0.\")\n\n    def __call__(\n        self,\n        attn: Attention,\n        hidden_states: torch.FloatTensor,\n        encoder_hidden_states: Optional[torch.FloatTensor] = None,\n        attention_mask: Optional[torch.FloatTensor] = None,\n        temb: Optional[torch.FloatTensor] = None,\n        *args,\n        **kwargs,\n    ) -> torch.FloatTensor:\n        if len(args) > 0 or kwargs.get(\"scale\", None) is not None:\n            deprecation_message = \"The `scale` argument is deprecated and will be ignored. Please remove it, as passing it will raise an error in the future. `scale` should directly be passed while calling the underlying pipeline component i.e., via `cross_attention_kwargs`.\"\n            deprecate(\"scale\", \"1.0.0\", deprecation_message)\n\n        residual = hidden_states\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n\n        # chunk\n        hidden_states_uncond, hidden_states_org, hidden_states_ptb = hidden_states.chunk(3)\n        hidden_states_org = torch.cat([hidden_states_uncond, hidden_states_org])\n\n        # original path\n        batch_size, sequence_length, _ = hidden_states_org.shape\n\n        if attention_mask is not None:\n            attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n            # scaled_dot_product_attention expects attention_mask shape to be\n            # (batch, heads, source_length, target_length)\n            attention_mask = attention_mask.view(batch_size, attn.heads, -1, attention_mask.shape[-1])\n\n        if attn.group_norm is not None:\n            hidden_states_org = attn.group_norm(hidden_states_org.transpose(1, 2)).transpose(1, 2)\n\n        query = attn.to_q(hidden_states_org)\n        key = attn.to_k(hidden_states_org)\n        value = attn.to_v(hidden_states_org)\n\n        inner_dim = key.shape[-1]\n        head_dim = inner_dim // attn.heads\n\n        query = query.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        key = key.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        value = value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        # the output of sdp = (batch, num_heads, seq_len, head_dim)\n        hidden_states_org = F.scaled_dot_product_attention(\n            query, key, value, attn_mask=attention_mask, dropout_p=0.0, is_causal=False\n        )\n\n        hidden_states_org = hidden_states_org.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n        hidden_states_org = hidden_states_org.to(query.dtype)\n\n        # linear proj\n        hidden_states_org = attn.to_out[0](hidden_states_org)\n        # dropout\n        hidden_states_org = attn.to_out[1](hidden_states_org)\n\n        if input_ndim == 4:\n            hidden_states_org = hidden_states_org.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        # perturbed path (identity attention)\n        batch_size, sequence_length, _ = hidden_states_ptb.shape\n\n        if attention_mask is not None:\n            attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n            # scaled_dot_product_attention expects attention_mask shape to be\n            # (batch, heads, source_length, target_length)\n            attention_mask = attention_mask.view(batch_size, attn.heads, -1, attention_mask.shape[-1])\n\n        if attn.group_norm is not None:\n            hidden_states_ptb = attn.group_norm(hidden_states_ptb.transpose(1, 2)).transpose(1, 2)\n\n        value = attn.to_v(hidden_states_ptb)\n        hidden_states_ptb = value\n        hidden_states_ptb = hidden_states_ptb.to(query.dtype)\n\n        # linear proj\n        hidden_states_ptb = attn.to_out[0](hidden_states_ptb)\n        # dropout\n        hidden_states_ptb = attn.to_out[1](hidden_states_ptb)\n\n        if input_ndim == 4:\n            hidden_states_ptb = hidden_states_ptb.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        # cat\n        hidden_states = torch.cat([hidden_states_org, hidden_states_ptb])\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n\nif is_invisible_watermark_available():\n    from diffusers.pipelines.stable_diffusion_xl.watermark import StableDiffusionXLWatermarker\n\nif is_torch_xla_available():\n    import torch_xla.core.xla_model as xm\n\n    XLA_AVAILABLE = True\nelse:\n    XLA_AVAILABLE = False\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\ndef rescale_noise_cfg(noise_cfg, noise_pred_text, guidance_rescale=0.0):\n    \"\"\"\n    Rescale `noise_cfg` according to `guidance_rescale`. Based on findings of [Common Diffusion Noise Schedules and\n    Sample Steps are Flawed](https://arxiv.org/pdf/2305.08891.pdf). See Section 3.4\n    \"\"\"\n    std_text = noise_pred_text.std(dim=list(range(1, noise_pred_text.ndim)), keepdim=True)\n    std_cfg = noise_cfg.std(dim=list(range(1, noise_cfg.ndim)), keepdim=True)\n    # rescale the results from guidance (fixes overexposure)\n    noise_pred_rescaled = noise_cfg * (std_text / std_cfg)\n    # mix with the original results from guidance by factor guidance_rescale to avoid \"plain looking\" images\n    noise_cfg = guidance_rescale * noise_pred_rescaled + (1 - guidance_rescale) * noise_cfg\n    return noise_cfg\n\n\ndef retrieve_timesteps(\n    scheduler,\n    num_inference_steps: Optional[int] = None,\n    device: Optional[Union[str, torch.device]] = None,\n    timesteps: Optional[List[int]] = None,\n    **kwargs,\n):\n    \"\"\"\n    Calls the scheduler's `set_timesteps` method and retrieves timesteps from the scheduler after the call. Handles\n    custom timesteps. Any kwargs will be supplied to `scheduler.set_timesteps`.\n\n    Args:\n        scheduler (`SchedulerMixin`):\n            The scheduler to get timesteps from.\n        num_inference_steps (`int`):\n            The number of diffusion steps used when generating samples with a pre-trained model. If used, `timesteps`\n            must be `None`.\n        device (`str` or `torch.device`, *optional*):\n            The device to which the timesteps should be moved to. If `None`, the timesteps are not moved.\n        timesteps (`List[int]`, *optional*):\n                Custom timesteps used to support arbitrary spacing between timesteps. If `None`, then the default\n                timestep spacing strategy of the scheduler is used. If `timesteps` is passed, `num_inference_steps`\n                must be `None`.\n\n    Returns:\n        `Tuple[torch.Tensor, int]`: A tuple where the first element is the timestep schedule from the scheduler and the\n        second element is the number of inference steps.\n    \"\"\"\n    if timesteps is not None:\n        accepts_timesteps = \"timesteps\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n        if not accepts_timesteps:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" timestep schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(timesteps=timesteps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    else:\n        scheduler.set_timesteps(num_inference_steps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n    return timesteps, num_inference_steps\n\nclass StableDiffusionXLPAGPipeline(\n    DiffusionPipeline,\n    StableDiffusionMixin,\n    FromSingleFileMixin,\n    StableDiffusionXLLoraLoaderMixin,\n    TextualInversionLoaderMixin,\n    IPAdapterMixin,\n):\n    r\"\"\"\n    Pipeline for text-to-image generation using Stable Diffusion XL.\n\n    This model inherits from [`DiffusionPipeline`]. Check the superclass documentation for the generic methods the\n    library implements for all the pipelines (such as downloading or saving, running on a particular device, etc.)\n\n    The pipeline also inherits the following loading methods:\n        - [`~loaders.TextualInversionLoaderMixin.load_textual_inversion`] for loading textual inversion embeddings\n        - [`~loaders.FromSingleFileMixin.from_single_file`] for loading `.ckpt` files\n        - [`~loaders.StableDiffusionXLLoraLoaderMixin.load_lora_weights`] for loading LoRA weights\n        - [`~loaders.StableDiffusionXLLoraLoaderMixin.save_lora_weights`] for saving LoRA weights\n        - [`~loaders.IPAdapterMixin.load_ip_adapter`] for loading IP Adapters\n\n    Args:\n        vae ([`AutoencoderKL`]):\n            Variational Auto-Encoder (VAE) Model to encode and decode images to and from latent representations.\n        text_encoder ([`CLIPTextModel`]):\n            Frozen text-encoder. Stable Diffusion XL uses the text portion of\n            [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModel), specifically\n            the [clip-vit-large-patch14](https://huggingface.co/openai/clip-vit-large-patch14) variant.\n        text_encoder_2 ([` CLIPTextModelWithProjection`]):\n            Second frozen text-encoder. Stable Diffusion XL uses the text and pool portion of\n            [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModelWithProjection),\n            specifically the\n            [laion/CLIP-ViT-bigG-14-laion2B-39B-b160k](https://huggingface.co/laion/CLIP-ViT-bigG-14-laion2B-39B-b160k)\n            variant.\n        tokenizer (`CLIPTokenizer`):\n            Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer).\n        tokenizer_2 (`CLIPTokenizer`):\n            Second Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer).\n        unet ([`UNet2DConditionModel`]): Conditional U-Net architecture to denoise the encoded image latents.\n        scheduler ([`SchedulerMixin`]):\n            A scheduler to be used in combination with `unet` to denoise the encoded image latents. Can be one of\n            [`DDIMScheduler`], [`LMSDiscreteScheduler`], or [`PNDMScheduler`].\n        force_zeros_for_empty_prompt (`bool`, *optional*, defaults to `\"True\"`):\n            Whether the negative prompt embeddings shall be forced to always be set to 0. Also see the config of\n            `stabilityai/stable-diffusion-xl-base-1-0`.\n        add_watermarker (`bool`, *optional*):\n            Whether to use the [invisible_watermark library](https://github.com/ShieldMnt/invisible-watermark/) to\n            watermark output images. If not defined, it will default to True if the package is installed, otherwise no\n            watermarker will be used.\n    \"\"\"\n\n    model_cpu_offload_seq = \"text_encoder->text_encoder_2->image_encoder->unet->vae\"\n    _optional_components = [\n        \"tokenizer\",\n        \"tokenizer_2\",\n        \"text_encoder\",\n        \"text_encoder_2\",\n        \"image_encoder\",\n        \"feature_extractor\",\n    ]\n    _callback_tensor_inputs = [\n        \"latents\",\n        \"prompt_embeds\",\n        \"negative_prompt_embeds\",\n        \"add_text_embeds\",\n        \"add_time_ids\",\n        \"negative_pooled_prompt_embeds\",\n        \"negative_add_time_ids\",\n    ]\n\n    def __init__(\n        self,\n        vae: AutoencoderKL,\n        text_encoder: CLIPTextModel,\n        text_encoder_2: CLIPTextModelWithProjection,\n        tokenizer: CLIPTokenizer,\n        tokenizer_2: CLIPTokenizer,\n        unet: UNet2DConditionModel,\n        scheduler: KarrasDiffusionSchedulers,\n        image_encoder: CLIPVisionModelWithProjection = None,\n        feature_extractor: CLIPImageProcessor = None,\n        force_zeros_for_empty_prompt: bool = True,\n        add_watermarker: Optional[bool] = None,\n        requires_aesthetics_score: Optional[bool] = None, # todo: patch SDXLPAG pipeline\n    ):\n        super().__init__()\n\n        self.register_modules(\n            vae=vae,\n            text_encoder=text_encoder,\n            text_encoder_2=text_encoder_2,\n            tokenizer=tokenizer,\n            tokenizer_2=tokenizer_2,\n            unet=unet,\n            scheduler=scheduler,\n            image_encoder=image_encoder,\n            feature_extractor=feature_extractor,\n        )\n        if 'requires_aesthetics_score' in self.config:\n            self.register_to_config(requires_aesthetics_score=requires_aesthetics_score)\n        self.register_to_config(force_zeros_for_empty_prompt=force_zeros_for_empty_prompt)\n        self.vae_scale_factor = 2 ** (len(self.vae.config.block_out_channels) - 1)\n        self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor)\n        self.default_sample_size = self.unet.config.sample_size\n        add_watermarker = False\n\n        if add_watermarker:\n            self.watermark = StableDiffusionXLWatermarker()\n        else:\n            self.watermark = None\n\n    def encode_prompt(\n        self,\n        prompt: str,\n        prompt_2: Optional[str] = None,\n        device: Optional[torch.device] = None,\n        num_images_per_prompt: int = 1,\n        do_classifier_free_guidance: bool = True,\n        negative_prompt: Optional[str] = None,\n        negative_prompt_2: Optional[str] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        lora_scale: Optional[float] = None,\n        clip_skip: Optional[int] = None,\n    ):\n        r\"\"\"\n        Encodes the prompt into text encoder hidden states.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                prompt to be encoded\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders\n            device: (`torch.device`):\n                torch device\n            num_images_per_prompt (`int`):\n                number of images that should be generated per prompt\n            do_classifier_free_guidance (`bool`):\n                whether to use classifier free guidance or not\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            lora_scale (`float`, *optional*):\n                A lora scale that will be applied to all LoRA layers of the text encoder if LoRA layers are loaded.\n            clip_skip (`int`, *optional*):\n                Number of layers to be skipped from CLIP while computing the prompt embeddings. A value of 1 means that\n                the output of the pre-final layer will be used for computing the prompt embeddings.\n        \"\"\"\n        device = device or self._execution_device\n\n        # set lora scale so that monkey patched LoRA\n        # function of text encoder can correctly access it\n        if lora_scale is not None and isinstance(self, StableDiffusionXLLoraLoaderMixin):\n            self._lora_scale = lora_scale\n\n            # dynamically adjust the LoRA scale\n            if self.text_encoder is not None:\n                if not USE_PEFT_BACKEND:\n                    adjust_lora_scale_text_encoder(self.text_encoder, lora_scale)\n                else:\n                    scale_lora_layers(self.text_encoder, lora_scale)\n\n            if self.text_encoder_2 is not None:\n                if not USE_PEFT_BACKEND:\n                    adjust_lora_scale_text_encoder(self.text_encoder_2, lora_scale)\n                else:\n                    scale_lora_layers(self.text_encoder_2, lora_scale)\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n\n        if prompt is not None:\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        # Define tokenizers and text encoders\n        tokenizers = [self.tokenizer, self.tokenizer_2] if self.tokenizer is not None else [self.tokenizer_2]\n        text_encoders = (\n            [self.text_encoder, self.text_encoder_2] if self.text_encoder is not None else [self.text_encoder_2]\n        )\n\n        if prompt_embeds is None:\n            prompt_2 = prompt_2 or prompt\n            prompt_2 = [prompt_2] if isinstance(prompt_2, str) else prompt_2\n\n            # textual inversion: process multi-vector tokens if necessary\n            prompt_embeds_list = []\n            prompts = [prompt, prompt_2]\n            for prompt, tokenizer, text_encoder in zip(prompts, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    prompt = self.maybe_convert_prompt(prompt, tokenizer)\n\n                text_inputs = tokenizer(\n                    prompt,\n                    padding=\"max_length\",\n                    max_length=tokenizer.model_max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                text_input_ids = text_inputs.input_ids\n                untruncated_ids = tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n                if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(\n                    text_input_ids, untruncated_ids\n                ):\n                    removed_text = tokenizer.batch_decode(untruncated_ids[:, tokenizer.model_max_length - 1 : -1])\n                    logger.warning(\n                        \"The following part of your input was truncated because CLIP can only handle sequences up to\"\n                        f\" {tokenizer.model_max_length} tokens: {removed_text}\"\n                    )\n\n                prompt_embeds = text_encoder(text_input_ids.to(device), output_hidden_states=True)\n\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                pooled_prompt_embeds = prompt_embeds[0]\n                if clip_skip is None:\n                    prompt_embeds = prompt_embeds.hidden_states[-2]\n                else:\n                    # \"2\" because SDXL always indexes from the penultimate layer.\n                    prompt_embeds = prompt_embeds.hidden_states[-(clip_skip + 2)]\n\n                prompt_embeds_list.append(prompt_embeds)\n\n            prompt_embeds = torch.concat(prompt_embeds_list, dim=-1)\n\n        # get unconditional embeddings for classifier free guidance\n        zero_out_negative_prompt = negative_prompt is None and self.config.force_zeros_for_empty_prompt\n        if do_classifier_free_guidance and negative_prompt_embeds is None and zero_out_negative_prompt:\n            negative_prompt_embeds = torch.zeros_like(prompt_embeds)\n            negative_pooled_prompt_embeds = torch.zeros_like(pooled_prompt_embeds)\n        elif do_classifier_free_guidance and negative_prompt_embeds is None:\n            negative_prompt = negative_prompt or \"\"\n            negative_prompt_2 = negative_prompt_2 or negative_prompt\n\n            # normalize str to list\n            negative_prompt = batch_size * [negative_prompt] if isinstance(negative_prompt, str) else negative_prompt\n            negative_prompt_2 = (\n                batch_size * [negative_prompt_2] if isinstance(negative_prompt_2, str) else negative_prompt_2\n            )\n\n            uncond_tokens: List[str]\n            if prompt is not None and type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n            else:\n                uncond_tokens = [negative_prompt, negative_prompt_2]\n\n            negative_prompt_embeds_list = []\n            for negative_prompt, tokenizer, text_encoder in zip(uncond_tokens, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    negative_prompt = self.maybe_convert_prompt(negative_prompt, tokenizer)\n\n                max_length = prompt_embeds.shape[1]\n                uncond_input = tokenizer(\n                    negative_prompt,\n                    padding=\"max_length\",\n                    max_length=max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                negative_prompt_embeds = text_encoder(\n                    uncond_input.input_ids.to(device),\n                    output_hidden_states=True,\n                )\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                negative_pooled_prompt_embeds = negative_prompt_embeds[0]\n                negative_prompt_embeds = negative_prompt_embeds.hidden_states[-2]\n\n                negative_prompt_embeds_list.append(negative_prompt_embeds)\n\n            negative_prompt_embeds = torch.concat(negative_prompt_embeds_list, dim=-1)\n\n        if self.text_encoder_2 is not None:\n            prompt_embeds = prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n        else:\n            prompt_embeds = prompt_embeds.to(dtype=self.unet.dtype, device=device)\n\n        bs_embed, seq_len, _ = prompt_embeds.shape\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(bs_embed * num_images_per_prompt, seq_len, -1)\n\n        if do_classifier_free_guidance:\n            # duplicate unconditional embeddings for each generation per prompt, using mps friendly method\n            seq_len = negative_prompt_embeds.shape[1]\n\n            if self.text_encoder_2 is not None:\n                negative_prompt_embeds = negative_prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n            else:\n                negative_prompt_embeds = negative_prompt_embeds.to(dtype=self.unet.dtype, device=device)\n\n            negative_prompt_embeds = negative_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds = negative_prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n        pooled_prompt_embeds = pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n            bs_embed * num_images_per_prompt, -1\n        )\n        if do_classifier_free_guidance:\n            negative_pooled_prompt_embeds = negative_pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n                bs_embed * num_images_per_prompt, -1\n            )\n\n        if self.text_encoder is not None:\n            if isinstance(self, StableDiffusionXLLoraLoaderMixin) and USE_PEFT_BACKEND:\n                # Retrieve the original scale by scaling back the LoRA layers\n                unscale_lora_layers(self.text_encoder, lora_scale)\n\n        if self.text_encoder_2 is not None:\n            if isinstance(self, StableDiffusionXLLoraLoaderMixin) and USE_PEFT_BACKEND:\n                # Retrieve the original scale by scaling back the LoRA layers\n                unscale_lora_layers(self.text_encoder_2, lora_scale)\n\n        return prompt_embeds, negative_prompt_embeds, pooled_prompt_embeds, negative_pooled_prompt_embeds\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.encode_image\n    def encode_image(self, image, device, num_images_per_prompt, output_hidden_states=None):\n        dtype = next(self.image_encoder.parameters()).dtype\n\n        if not isinstance(image, torch.Tensor):\n            image = self.feature_extractor(image, return_tensors=\"pt\").pixel_values\n\n        image = image.to(device=device, dtype=dtype)\n        if output_hidden_states:\n            image_enc_hidden_states = self.image_encoder(image, output_hidden_states=True).hidden_states[-2]\n            image_enc_hidden_states = image_enc_hidden_states.repeat_interleave(num_images_per_prompt, dim=0)\n            uncond_image_enc_hidden_states = self.image_encoder(\n                torch.zeros_like(image), output_hidden_states=True\n            ).hidden_states[-2]\n            uncond_image_enc_hidden_states = uncond_image_enc_hidden_states.repeat_interleave(\n                num_images_per_prompt, dim=0\n            )\n            return image_enc_hidden_states, uncond_image_enc_hidden_states\n        else:\n            image_embeds = self.image_encoder(image).image_embeds\n            image_embeds = image_embeds.repeat_interleave(num_images_per_prompt, dim=0)\n            uncond_image_embeds = torch.zeros_like(image_embeds)\n\n            return image_embeds, uncond_image_embeds\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_ip_adapter_image_embeds\n    def prepare_ip_adapter_image_embeds(\n        self, ip_adapter_image, ip_adapter_image_embeds, device, num_images_per_prompt, do_classifier_free_guidance\n    ):\n        if ip_adapter_image_embeds is None:\n            if not isinstance(ip_adapter_image, list):\n                ip_adapter_image = [ip_adapter_image]\n\n            if len(ip_adapter_image) != len(self.unet.encoder_hid_proj.image_projection_layers):\n                raise ValueError(\n                    f\"`ip_adapter_image` must have same length as the number of IP Adapters. Got {len(ip_adapter_image)} images and {len(self.unet.encoder_hid_proj.image_projection_layers)} IP Adapters.\"\n                )\n\n            image_embeds = []\n            for single_ip_adapter_image, image_proj_layer in zip(\n                ip_adapter_image, self.unet.encoder_hid_proj.image_projection_layers\n            ):\n                output_hidden_state = not isinstance(image_proj_layer, ImageProjection)\n                single_image_embeds, single_negative_image_embeds = self.encode_image(\n                    single_ip_adapter_image, device, 1, output_hidden_state\n                )\n                single_image_embeds = torch.stack([single_image_embeds] * num_images_per_prompt, dim=0)\n                single_negative_image_embeds = torch.stack(\n                    [single_negative_image_embeds] * num_images_per_prompt, dim=0\n                )\n\n                if do_classifier_free_guidance:\n                    single_image_embeds = torch.cat([single_negative_image_embeds, single_image_embeds])\n                    single_image_embeds = single_image_embeds.to(device)\n\n                image_embeds.append(single_image_embeds)\n        else:\n            repeat_dims = [1]\n            image_embeds = []\n            for single_image_embeds in ip_adapter_image_embeds:\n                if do_classifier_free_guidance:\n                    single_negative_image_embeds, single_image_embeds = single_image_embeds.chunk(2)\n                    single_image_embeds = single_image_embeds.repeat(\n                        num_images_per_prompt, *(repeat_dims * len(single_image_embeds.shape[1:]))\n                    )\n                    single_negative_image_embeds = single_negative_image_embeds.repeat(\n                        num_images_per_prompt, *(repeat_dims * len(single_negative_image_embeds.shape[1:]))\n                    )\n                    single_image_embeds = torch.cat([single_negative_image_embeds, single_image_embeds])\n                else:\n                    single_image_embeds = single_image_embeds.repeat(\n                        num_images_per_prompt, *(repeat_dims * len(single_image_embeds.shape[1:]))\n                    )\n                image_embeds.append(single_image_embeds)\n\n        return image_embeds\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_extra_step_kwargs\n    def prepare_extra_step_kwargs(self, generator, eta):\n        # prepare extra kwargs for the scheduler step, since not all schedulers have the same signature\n        # eta (η) is only used with the DDIMScheduler, it will be ignored for other schedulers.\n        # eta corresponds to η in DDIM paper: https://arxiv.org/abs/2010.02502\n        # and should be between [0, 1]\n\n        accepts_eta = \"eta\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        extra_step_kwargs = {}\n        if accepts_eta:\n            extra_step_kwargs[\"eta\"] = eta\n\n        # check if the scheduler accepts generator\n        accepts_generator = \"generator\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        if accepts_generator:\n            extra_step_kwargs[\"generator\"] = generator\n        return extra_step_kwargs\n\n    def check_inputs(\n        self,\n        prompt,\n        prompt_2,\n        height,\n        width,\n        callback_steps,\n        negative_prompt=None,\n        negative_prompt_2=None,\n        prompt_embeds=None,\n        negative_prompt_embeds=None,\n        pooled_prompt_embeds=None,\n        negative_pooled_prompt_embeds=None,\n        ip_adapter_image=None,\n        ip_adapter_image_embeds=None,\n        callback_on_step_end_tensor_inputs=None,\n    ):\n        if height % 8 != 0 or width % 8 != 0:\n            raise ValueError(f\"`height` and `width` have to be divisible by 8 but are {height} and {width}.\")\n\n        if callback_steps is not None and (not isinstance(callback_steps, int) or callback_steps <= 0):\n            raise ValueError(\n                f\"`callback_steps` has to be a positive integer but is {callback_steps} of type\"\n                f\" {type(callback_steps)}.\"\n            )\n\n        if callback_on_step_end_tensor_inputs is not None and not all(\n            k in self._callback_tensor_inputs for k in callback_on_step_end_tensor_inputs\n        ):\n            raise ValueError(\n                f\"`callback_on_step_end_tensor_inputs` has to be in {self._callback_tensor_inputs}, but found {[k for k in callback_on_step_end_tensor_inputs if k not in self._callback_tensor_inputs]}\"\n            )\n\n        if prompt is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt_2 is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt_2`: {prompt_2} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n        elif prompt_2 is not None and (not isinstance(prompt_2, str) and not isinstance(prompt_2, list)):\n            raise ValueError(f\"`prompt_2` has to be of type `str` or `list` but is {type(prompt_2)}\")\n\n        if negative_prompt is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n        elif negative_prompt_2 is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt_2`: {negative_prompt_2} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n\n        if prompt_embeds is not None and negative_prompt_embeds is not None:\n            if prompt_embeds.shape != negative_prompt_embeds.shape:\n                raise ValueError(\n                    \"`prompt_embeds` and `negative_prompt_embeds` must have the same shape when passed directly, but\"\n                    f\" got: `prompt_embeds` {prompt_embeds.shape} != `negative_prompt_embeds`\"\n                    f\" {negative_prompt_embeds.shape}.\"\n                )\n\n        if prompt_embeds is not None and pooled_prompt_embeds is None:\n            raise ValueError(\n                \"If `prompt_embeds` are provided, `pooled_prompt_embeds` also have to be passed. Make sure to generate `pooled_prompt_embeds` from the same text encoder that was used to generate `prompt_embeds`.\"\n            )\n\n        if negative_prompt_embeds is not None and negative_pooled_prompt_embeds is None:\n            raise ValueError(\n                \"If `negative_prompt_embeds` are provided, `negative_pooled_prompt_embeds` also have to be passed. Make sure to generate `negative_pooled_prompt_embeds` from the same text encoder that was used to generate `negative_prompt_embeds`.\"\n            )\n\n        if ip_adapter_image is not None and ip_adapter_image_embeds is not None:\n            raise ValueError(\n                \"Provide either `ip_adapter_image` or `ip_adapter_image_embeds`. Cannot leave both `ip_adapter_image` and `ip_adapter_image_embeds` defined.\"\n            )\n\n        if ip_adapter_image_embeds is not None:\n            if not isinstance(ip_adapter_image_embeds, list):\n                raise ValueError(\n                    f\"`ip_adapter_image_embeds` has to be of type `list` but is {type(ip_adapter_image_embeds)}\"\n                )\n            elif ip_adapter_image_embeds[0].ndim not in [3, 4]:\n                raise ValueError(\n                    f\"`ip_adapter_image_embeds` has to be a list of 3D or 4D tensors but is {ip_adapter_image_embeds[0].ndim}D\"\n                )\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_latents\n    def prepare_latents(self, batch_size, num_channels_latents, height, width, dtype, device, generator, latents=None):\n        shape = (batch_size, num_channels_latents, height // self.vae_scale_factor, width // self.vae_scale_factor)\n        if isinstance(generator, list) and len(generator) != batch_size:\n            raise ValueError(\n                f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n            )\n\n        if latents is None:\n            latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n        else:\n            latents = latents.to(device)\n\n        # scale the initial noise by the standard deviation required by the scheduler\n        latents = latents * self.scheduler.init_noise_sigma\n        return latents\n\n    def _get_add_time_ids(\n        self, original_size, crops_coords_top_left, target_size, dtype, text_encoder_projection_dim=None\n    ):\n        add_time_ids = list(original_size + crops_coords_top_left + target_size)\n\n        passed_add_embed_dim = (\n            self.unet.config.addition_time_embed_dim * len(add_time_ids) + text_encoder_projection_dim\n        )\n        expected_add_embed_dim = self.unet.add_embedding.linear_1.in_features\n\n        if expected_add_embed_dim != passed_add_embed_dim:\n            raise ValueError(\n                f\"Model expects an added time embedding vector of length {expected_add_embed_dim}, but a vector of {passed_add_embed_dim} was created. The model has an incorrect config. Please check `unet.config.time_embedding_type` and `text_encoder_2.config.projection_dim`.\"\n            )\n\n        add_time_ids = torch.tensor([add_time_ids], dtype=dtype)\n        return add_time_ids\n\n    def upcast_vae(self):\n        dtype = self.vae.dtype\n        self.vae.to(dtype=torch.float32)\n        use_torch_2_0_or_xformers = isinstance(\n            self.vae.decoder.mid_block.attentions[0].processor,\n            (\n                AttnProcessor2_0,\n                XFormersAttnProcessor,\n                FusedAttnProcessor2_0,\n            ),\n        )\n        # if xformers or torch_2_0 is used attention block does not need\n        # to be in float32 which can save lots of memory\n        if use_torch_2_0_or_xformers:\n            self.vae.post_quant_conv.to(dtype)\n            self.vae.decoder.conv_in.to(dtype)\n            self.vae.decoder.mid_block.to(dtype)\n\n    # Copied from diffusers.pipelines.latent_consistency_models.pipeline_latent_consistency_text2img.LatentConsistencyModelPipeline.get_guidance_scale_embedding\n    def get_guidance_scale_embedding(\n        self, w: torch.Tensor, embedding_dim: int = 512, dtype: torch.dtype = torch.float32\n    ) -> torch.FloatTensor:\n        \"\"\"\n        See https://github.com/google-research/vdm/blob/dc27b98a554f65cdc654b800da5aa1846545d41b/model_vdm.py#L298\n\n        Args:\n            w (`torch.Tensor`):\n                Generate embedding vectors with a specified guidance scale to subsequently enrich timestep embeddings.\n            embedding_dim (`int`, *optional*, defaults to 512):\n                Dimension of the embeddings to generate.\n            dtype (`torch.dtype`, *optional*, defaults to `torch.float32`):\n                Data type of the generated embeddings.\n\n        Returns:\n            `torch.FloatTensor`: Embedding vectors with shape `(len(w), embedding_dim)`.\n        \"\"\"\n        assert len(w.shape) == 1\n        w = w * 1000.0\n\n        half_dim = embedding_dim // 2\n        emb = torch.log(torch.tensor(10000.0)) / (half_dim - 1)\n        emb = torch.exp(torch.arange(half_dim, dtype=dtype) * -emb)\n        emb = w.to(dtype)[:, None] * emb[None, :]\n        emb = torch.cat([torch.sin(emb), torch.cos(emb)], dim=1)\n        if embedding_dim % 2 == 1:  # zero pad\n            emb = torch.nn.functional.pad(emb, (0, 1))\n        assert emb.shape == (w.shape[0], embedding_dim)\n        return emb\n\n    def pred_z0(self, sample, model_output, timestep):\n        alpha_prod_t = self.scheduler.alphas_cumprod[timestep].to(sample.device)\n\n        beta_prod_t = 1 - alpha_prod_t\n        if self.scheduler.config.prediction_type == \"epsilon\":\n            pred_original_sample = (sample - beta_prod_t ** (0.5) * model_output) / alpha_prod_t ** (0.5)\n        elif self.scheduler.config.prediction_type == \"sample\":\n            pred_original_sample = model_output\n        elif self.scheduler.config.prediction_type == \"v_prediction\":\n            pred_original_sample = (alpha_prod_t**0.5) * sample - (beta_prod_t**0.5) * model_output\n            # predict V\n            model_output = (alpha_prod_t**0.5) * model_output + (beta_prod_t**0.5) * sample\n        else:\n            raise ValueError(\n                f\"prediction_type given as {self.scheduler.config.prediction_type} must be one of `epsilon`, `sample`,\"\n                \" or `v_prediction`\"\n            )\n\n        return pred_original_sample\n\n    def pred_x0(self, latents, noise_pred, t, generator, device, prompt_embeds, output_type):\n        pred_z0 = self.pred_z0(latents, noise_pred, t)\n        pred_x0 = self.vae.decode(\n            pred_z0 / self.vae.config.scaling_factor,\n            return_dict=False,\n            generator=generator\n        )[0]\n        #pred_x0, ____ = self.run_safety_checker(pred_x0, device, prompt_embeds.dtype)\n        do_denormalize = [True] * pred_x0.shape[0]\n        pred_x0 = self.image_processor.postprocess(pred_x0, output_type=output_type, do_denormalize=do_denormalize)\n\n        return pred_x0\n\n    @property\n    def guidance_scale(self):\n        return self._guidance_scale\n\n    @property\n    def guidance_rescale(self):\n        return self._guidance_rescale\n\n    @property\n    def clip_skip(self):\n        return self._clip_skip\n\n    # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2)\n    # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1`\n    # corresponds to doing no classifier free guidance.\n    @property\n    def do_classifier_free_guidance(self):\n        return self._guidance_scale > 1 and self.unet.config.time_cond_proj_dim is None\n\n    @property\n    def cross_attention_kwargs(self):\n        return self._cross_attention_kwargs\n\n    @property\n    def denoising_end(self):\n        return self._denoising_end\n\n    @property\n    def num_timesteps(self):\n        return self._num_timesteps\n\n    @property\n    def interrupt(self):\n        return self._interrupt\n\n    @property\n    def pag_scale(self):\n        return self._pag_scale\n\n    @property\n    def do_adversarial_guidance(self):\n        return self._pag_scale > 0\n\n    @property\n    def pag_adaptive_scaling(self):\n        return self._pag_adaptive_scaling\n\n    @property\n    def do_pag_adaptive_scaling(self):\n        return self._pag_adaptive_scaling > 0\n\n    @property\n    def pag_drop_rate(self):\n        return self._pag_drop_rate\n\n    @property\n    def pag_applied_layers(self):\n        return self._pag_applied_layers\n\n    @property\n    def pag_applied_layers_index(self):\n        return self._pag_applied_layers_index\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        prompt_2: Optional[Union[str, List[str]]] = None,\n        height: Optional[int] = None,\n        width: Optional[int] = None,\n        num_inference_steps: int = 50,\n        timesteps: List[int] = None,\n        denoising_end: Optional[float] = None,\n        guidance_scale: float = 5.0,\n        pag_scale: float = 0.0,\n        pag_adaptive_scaling: float = 0.0,\n        pag_drop_rate: float = 0.5,\n        pag_applied_layers: List[str] = ['mid'], #['down', 'mid', 'up']\n        pag_applied_layers_index: List[str] = None, #['d4', 'd5', 'm0']\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        negative_prompt_2: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        eta: float = 0.0,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.FloatTensor] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        ip_adapter_image: Optional[PipelineImageInput] = None,\n        ip_adapter_image_embeds: Optional[List[torch.FloatTensor]] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        guidance_rescale: float = 0.0,\n        original_size: Optional[Tuple[int, int]] = None,\n        crops_coords_top_left: Tuple[int, int] = (0, 0),\n        target_size: Optional[Tuple[int, int]] = None,\n        negative_original_size: Optional[Tuple[int, int]] = None,\n        negative_crops_coords_top_left: Tuple[int, int] = (0, 0),\n        negative_target_size: Optional[Tuple[int, int]] = None,\n        clip_skip: Optional[int] = None,\n        callback_on_step_end: Optional[Callable[[int, int, Dict], None]] = None,\n        callback_on_step_end_tensor_inputs: List[str] = [\"latents\"],\n        **kwargs,\n    ):\n        r\"\"\"\n        Function invoked when calling the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide the image generation. If not defined, one has to pass `prompt_embeds`.\n                instead.\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders\n            height (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The height in pixels of the generated image. This is set to 1024 by default for the best results.\n                Anything below 512 pixels won't work well for\n                [stabilityai/stable-diffusion-xl-base-1.0](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0)\n                and checkpoints that are not specifically fine-tuned on low resolutions.\n            width (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The width in pixels of the generated image. This is set to 1024 by default for the best results.\n                Anything below 512 pixels won't work well for\n                [stabilityai/stable-diffusion-xl-base-1.0](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0)\n                and checkpoints that are not specifically fine-tuned on low resolutions.\n            num_inference_steps (`int`, *optional*, defaults to 50):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            timesteps (`List[int]`, *optional*):\n                Custom timesteps to use for the denoising process with schedulers which support a `timesteps` argument\n                in their `set_timesteps` method. If not defined, the default behavior when `num_inference_steps` is\n                passed will be used. Must be in descending order.\n            denoising_end (`float`, *optional*):\n                When specified, determines the fraction (between 0.0 and 1.0) of the total denoising process to be\n                completed before it is intentionally prematurely terminated. As a result, the returned sample will\n                still retain a substantial amount of noise as determined by the discrete timesteps selected by the\n                scheduler. The denoising_end parameter should ideally be utilized when this pipeline forms a part of a\n                \"Mixture of Denoisers\" multi-pipeline setup, as elaborated in [**Refining the Image\n                Output**](https://huggingface.co/docs/diffusers/api/pipelines/stable_diffusion/stable_diffusion_xl#refining-the-image-output)\n            guidance_scale (`float`, *optional*, defaults to 5.0):\n                Guidance scale as defined in [Classifier-Free Diffusion Guidance](https://arxiv.org/abs/2207.12598).\n                `guidance_scale` is defined as `w` of equation 2. of [Imagen\n                Paper](https://arxiv.org/pdf/2205.11487.pdf). Guidance scale is enabled by setting `guidance_scale >\n                1`. Higher guidance scale encourages to generate images that are closely linked to the text `prompt`,\n                usually at the expense of lower image quality.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            eta (`float`, *optional*, defaults to 0.0):\n                Corresponds to parameter eta (η) in the DDIM paper: https://arxiv.org/abs/2010.02502. Only applies to\n                [`schedulers.DDIMScheduler`], will be ignored for others.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                One or a list of [torch generator(s)](https://pytorch.org/docs/stable/generated/torch.Generator.html)\n                to make generation deterministic.\n            latents (`torch.FloatTensor`, *optional*):\n                Pre-generated noisy latents, sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor will ge generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            ip_adapter_image: (`PipelineImageInput`, *optional*): Optional image input to work with IP Adapters.\n            ip_adapter_image_embeds (`List[torch.FloatTensor]`, *optional*):\n                Pre-generated image embeddings for IP-Adapter. It should be a list of length same as number of\n                IP-adapters. Each element should be a tensor of shape `(batch_size, num_images, emb_dim)`. It should\n                contain the negative image embedding if `do_classifier_free_guidance` is set to `True`. If not\n                provided, embeddings are computed from the `ip_adapter_image` input argument.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generate image. Choose between\n                [PIL](https://pillow.readthedocs.io/en/stable/): `PIL.Image.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] instead\n                of a plain tuple.\n            cross_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            guidance_rescale (`float`, *optional*, defaults to 0.0):\n                Guidance rescale factor proposed by [Common Diffusion Noise Schedules and Sample Steps are\n                Flawed](https://arxiv.org/pdf/2305.08891.pdf) `guidance_scale` is defined as `φ` in equation 16. of\n                [Common Diffusion Noise Schedules and Sample Steps are Flawed](https://arxiv.org/pdf/2305.08891.pdf).\n                Guidance rescale factor should fix overexposure when using zero terminal SNR.\n            original_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                If `original_size` is not the same as `target_size` the image will appear to be down- or upsampled.\n                `original_size` defaults to `(height, width)` if not specified. Part of SDXL's micro-conditioning as\n                explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            crops_coords_top_left (`Tuple[int]`, *optional*, defaults to (0, 0)):\n                `crops_coords_top_left` can be used to generate an image that appears to be \"cropped\" from the position\n                `crops_coords_top_left` downwards. Favorable, well-centered images are usually achieved by setting\n                `crops_coords_top_left` to (0, 0). Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            target_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                For most cases, `target_size` should be set to the desired height and width of the generated image. If\n                not specified it will default to `(height, width)`. Part of SDXL's micro-conditioning as explained in\n                section 2.2 of [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            negative_original_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                To negatively condition the generation process based on a specific image resolution. Part of SDXL's\n                micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). For more\n                information, refer to this issue thread: https://github.com/huggingface/diffusers/issues/4208.\n            negative_crops_coords_top_left (`Tuple[int]`, *optional*, defaults to (0, 0)):\n                To negatively condition the generation process based on a specific crop coordinates. Part of SDXL's\n                micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). For more\n                information, refer to this issue thread: https://github.com/huggingface/diffusers/issues/4208.\n            negative_target_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                To negatively condition the generation process based on a target image resolution. It should be as same\n                as the `target_size` for most cases. Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). For more\n                information, refer to this issue thread: https://github.com/huggingface/diffusers/issues/4208.\n            callback_on_step_end (`Callable`, *optional*):\n                A function that calls at the end of each denoising steps during the inference. The function is called\n                with the following arguments: `callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int,\n                callback_kwargs: Dict)`. `callback_kwargs` will include a list of all tensors as specified by\n                `callback_on_step_end_tensor_inputs`.\n            callback_on_step_end_tensor_inputs (`List`, *optional*):\n                The list of tensor inputs for the `callback_on_step_end` function. The tensors specified in the list\n                will be passed as `callback_kwargs` argument. You will only be able to include variables listed in the\n                `._callback_tensor_inputs` attribute of your pipeline class.\n\n        Examples:\n\n        Returns:\n            [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] or `tuple`:\n            [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] if `return_dict` is True, otherwise a\n            `tuple`. When returning a tuple, the first element is a list with the generated images.\n        \"\"\"\n\n        callback = kwargs.pop(\"callback\", None)\n        callback_steps = kwargs.pop(\"callback_steps\", None)\n\n        if callback is not None:\n            deprecate(\n                \"callback\",\n                \"1.0.0\",\n                \"Passing `callback` as an input argument to `__call__` is deprecated, consider use `callback_on_step_end`\",\n            )\n        if callback_steps is not None:\n            deprecate(\n                \"callback_steps\",\n                \"1.0.0\",\n                \"Passing `callback_steps` as an input argument to `__call__` is deprecated, consider use `callback_on_step_end`\",\n            )\n\n        # 0. Default height and width to unet\n        height = height or self.default_sample_size * self.vae_scale_factor\n        width = width or self.default_sample_size * self.vae_scale_factor\n\n        original_size = original_size or (height, width)\n        target_size = target_size or (height, width)\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            prompt_2,\n            height,\n            width,\n            callback_steps,\n            negative_prompt,\n            negative_prompt_2,\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n            ip_adapter_image,\n            ip_adapter_image_embeds,\n            callback_on_step_end_tensor_inputs,\n        )\n\n        self._guidance_scale = guidance_scale\n        self._guidance_rescale = guidance_rescale\n        self._clip_skip = clip_skip\n        self._cross_attention_kwargs = cross_attention_kwargs\n        self._denoising_end = denoising_end\n        self._interrupt = False\n\n        self._pag_scale = pag_scale\n        self._pag_adaptive_scaling = pag_adaptive_scaling\n        self._pag_drop_rate = pag_drop_rate\n        self._pag_applied_layers = pag_applied_layers\n        self._pag_applied_layers_index = pag_applied_layers_index\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        device = self._execution_device\n\n        # 3. Encode input prompt\n        lora_scale = (\n            self.cross_attention_kwargs.get(\"scale\", None) if self.cross_attention_kwargs is not None else None\n        )\n\n        (\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n        ) = self.encode_prompt(\n            prompt=prompt,\n            prompt_2=prompt_2,\n            device=device,\n            num_images_per_prompt=num_images_per_prompt,\n            do_classifier_free_guidance=self.do_classifier_free_guidance,\n            negative_prompt=negative_prompt,\n            negative_prompt_2=negative_prompt_2,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            negative_pooled_prompt_embeds=negative_pooled_prompt_embeds,\n            lora_scale=lora_scale,\n            clip_skip=self.clip_skip,\n        )\n\n        # 4. Prepare timesteps\n        timesteps, num_inference_steps = retrieve_timesteps(self.scheduler, num_inference_steps, device, timesteps)\n\n        # 5. Prepare latent variables\n        num_channels_latents = self.unet.config.in_channels\n        latents = self.prepare_latents(\n            batch_size * num_images_per_prompt,\n            num_channels_latents,\n            height,\n            width,\n            prompt_embeds.dtype,\n            device,\n            generator,\n            latents,\n        )\n\n        # 6. Prepare extra step kwargs.\n        extra_step_kwargs = self.prepare_extra_step_kwargs(generator, eta)\n\n        # 7. Prepare added time ids & embeddings\n        add_text_embeds = pooled_prompt_embeds\n        if self.text_encoder_2 is None:\n            text_encoder_projection_dim = int(pooled_prompt_embeds.shape[-1])\n        else:\n            text_encoder_projection_dim = self.text_encoder_2.config.projection_dim\n\n        add_time_ids = self._get_add_time_ids(\n            original_size,\n            crops_coords_top_left,\n            target_size,\n            dtype=prompt_embeds.dtype,\n            text_encoder_projection_dim=text_encoder_projection_dim,\n        )\n        if negative_original_size is not None and negative_target_size is not None:\n            negative_add_time_ids = self._get_add_time_ids(\n                negative_original_size,\n                negative_crops_coords_top_left,\n                negative_target_size,\n                dtype=prompt_embeds.dtype,\n                text_encoder_projection_dim=text_encoder_projection_dim,\n            )\n        else:\n            negative_add_time_ids = add_time_ids\n\n        #cfg\n        if self.do_classifier_free_guidance and not self.do_adversarial_guidance:\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds], dim=0)\n            add_text_embeds = torch.cat([negative_pooled_prompt_embeds, add_text_embeds], dim=0)\n            add_time_ids = torch.cat([negative_add_time_ids, add_time_ids], dim=0)\n        #pag\n        elif not self.do_classifier_free_guidance and self.do_adversarial_guidance:\n            prompt_embeds = torch.cat([prompt_embeds, prompt_embeds], dim=0)\n            add_text_embeds = torch.cat([add_text_embeds, add_text_embeds], dim=0)\n            add_time_ids = torch.cat([add_time_ids, add_time_ids], dim=0)\n        #both\n        elif self.do_classifier_free_guidance and self.do_adversarial_guidance:\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds, prompt_embeds], dim=0)\n            add_text_embeds = torch.cat([negative_pooled_prompt_embeds, add_text_embeds, add_text_embeds], dim=0)\n            add_time_ids = torch.cat([negative_add_time_ids, add_time_ids, add_time_ids], dim=0)\n\n        prompt_embeds = prompt_embeds.to(device)\n        add_text_embeds = add_text_embeds.to(device)\n        add_time_ids = add_time_ids.to(device).repeat(batch_size * num_images_per_prompt, 1)\n\n        if ip_adapter_image is not None or ip_adapter_image_embeds is not None:\n            image_embeds = self.prepare_ip_adapter_image_embeds(\n                ip_adapter_image,\n                ip_adapter_image_embeds,\n                device,\n                batch_size * num_images_per_prompt,\n                self.do_classifier_free_guidance,\n            )\n\n        # 8. Denoising loop\n        num_warmup_steps = max(len(timesteps) - num_inference_steps * self.scheduler.order, 0)\n\n        # 8.1 Apply denoising_end\n        if (\n            self.denoising_end is not None\n            and isinstance(self.denoising_end, float)\n            and self.denoising_end > 0\n            and self.denoising_end < 1\n        ):\n            discrete_timestep_cutoff = int(\n                round(\n                    self.scheduler.config.num_train_timesteps\n                    - (self.denoising_end * self.scheduler.config.num_train_timesteps)\n                )\n            )\n            num_inference_steps = len(list(filter(lambda ts: ts >= discrete_timestep_cutoff, timesteps)))\n            timesteps = timesteps[:num_inference_steps]\n\n        # 9. Optionally get Guidance Scale Embedding\n        timestep_cond = None\n        if self.unet.config.time_cond_proj_dim is not None:\n            guidance_scale_tensor = torch.tensor(self.guidance_scale - 1).repeat(batch_size * num_images_per_prompt)\n            timestep_cond = self.get_guidance_scale_embedding(\n                guidance_scale_tensor, embedding_dim=self.unet.config.time_cond_proj_dim\n            ).to(device=device, dtype=latents.dtype)\n\n        # 10. Create down mid and up layer lists\n        if self.do_adversarial_guidance:\n            down_layers = []\n            mid_layers = []\n            up_layers = []\n            for name, module in self.unet.named_modules():\n                if 'attn1' in name and 'to' not in name:\n                    layer_type = name.split('.')[0].split('_')[0]\n                    if layer_type == 'down':\n                        down_layers.append(module)\n                    elif layer_type == 'mid':\n                        mid_layers.append(module)\n                    elif layer_type == 'up':\n                        up_layers.append(module)\n                    else:\n                        raise ValueError(f\"Invalid layer type: {layer_type}\")\n\n        self._num_timesteps = len(timesteps)\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                if self.interrupt:\n                    continue\n\n                #cfg\n                if self.do_classifier_free_guidance and not self.do_adversarial_guidance:\n                    latent_model_input = torch.cat([latents] * 2)\n                #pag\n                elif not self.do_classifier_free_guidance and self.do_adversarial_guidance:\n                    latent_model_input = torch.cat([latents] * 2)\n                #both\n                elif self.do_classifier_free_guidance and self.do_adversarial_guidance:\n                    latent_model_input = torch.cat([latents] * 3)\n                #no\n                else:\n                    latent_model_input = latents\n\n                # change attention layer in UNet if use PAG\n                if self.do_adversarial_guidance:\n\n                    if self.do_classifier_free_guidance:\n                        replace_processor = PAGCFGIdentitySelfAttnProcessor()\n                    else:\n                        replace_processor = PAGIdentitySelfAttnProcessor()\n\n                    if self.pag_applied_layers_index:\n                        drop_layers = self.pag_applied_layers_index\n                        for drop_layer in drop_layers:\n                            layer_number = int(drop_layer[1:])\n                            try:\n                                if drop_layer[0] == 'd':\n                                    down_layers[layer_number].processor = replace_processor\n                                elif drop_layer[0] == 'm':\n                                    mid_layers[layer_number].processor = replace_processor\n                                elif drop_layer[0] == 'u':\n                                    up_layers[layer_number].processor = replace_processor\n                                else:\n                                    raise ValueError(f\"Invalid layer type: {drop_layer[0]}\")\n                            except IndexError:\n                                raise ValueError(\n                                    f\"Invalid layer index: {drop_layer}. Available layers: {len(down_layers)} down layers, {len(mid_layers)} mid layers, {len(up_layers)} up layers.\"\n                                )\n                    elif self.pag_applied_layers:\n                        drop_full_layers = self.pag_applied_layers\n                        for drop_full_layer in drop_full_layers:\n                            try:\n                                if drop_full_layer == \"down\":\n                                    for down_layer in down_layers:\n                                        down_layer.processor = replace_processor\n                                elif drop_full_layer == \"mid\":\n                                    for mid_layer in mid_layers:\n                                        mid_layer.processor = replace_processor\n                                elif drop_full_layer == \"up\":\n                                    for up_layer in up_layers:\n                                        up_layer.processor = replace_processor\n                                else:\n                                    raise ValueError(f\"Invalid layer type: {drop_full_layer}\")\n                            except IndexError:\n                                raise ValueError(\n                                    f\"Invalid layer index: {drop_full_layer}. Available layers are: down, mid and up. If you need to specify each layer index, you can use `pag_applied_layers_index`\"\n                                )\n\n                latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n                # predict the noise residual\n                added_cond_kwargs = {\"text_embeds\": add_text_embeds, \"time_ids\": add_time_ids}\n                if ip_adapter_image is not None or ip_adapter_image_embeds is not None:\n                    added_cond_kwargs[\"image_embeds\"] = image_embeds\n\n                noise_pred = self.unet(\n                    latent_model_input,\n                    t,\n                    encoder_hidden_states=prompt_embeds,\n                    timestep_cond=timestep_cond,\n                    cross_attention_kwargs=self.cross_attention_kwargs,\n                    added_cond_kwargs=added_cond_kwargs,\n                    return_dict=False,\n                )[0]\n\n                # perform guidance\n                if self.do_classifier_free_guidance and not self.do_adversarial_guidance:\n                    noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                    noise_pred = noise_pred_uncond + self.guidance_scale * (noise_pred_text - noise_pred_uncond)\n                # pag\n                elif not self.do_classifier_free_guidance and self.do_adversarial_guidance:\n                    noise_pred_original, noise_pred_perturb = noise_pred.chunk(2)\n\n                    signal_scale = self.pag_scale\n                    if self.do_pag_adaptive_scaling:\n                        signal_scale = self.pag_scale - self.pag_adaptive_scaling * (1000-t)\n                        if signal_scale<0:\n                            signal_scale = 0\n\n                    noise_pred = noise_pred_original + signal_scale * (noise_pred_original - noise_pred_perturb)\n\n                # both\n                elif self.do_classifier_free_guidance and self.do_adversarial_guidance:\n\n                    noise_pred_uncond, noise_pred_text, noise_pred_text_perturb = noise_pred.chunk(3)\n\n                    signal_scale = self.pag_scale\n                    if self.do_pag_adaptive_scaling:\n                        signal_scale = self.pag_scale - self.pag_adaptive_scaling * (1000-t)\n                        if signal_scale<0:\n                            signal_scale = 0\n\n                    noise_pred = noise_pred_text + (self.guidance_scale-1.0) * (noise_pred_text - noise_pred_uncond) + signal_scale * (noise_pred_text - noise_pred_text_perturb)\n\n                if self.do_classifier_free_guidance and self.guidance_rescale > 0.0:\n                    # Based on 3.4. in https://arxiv.org/pdf/2305.08891.pdf\n                    noise_pred = rescale_noise_cfg(noise_pred, noise_pred_text, guidance_rescale=self.guidance_rescale)\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents_dtype = latents.dtype\n                latents = self.scheduler.step(noise_pred, t, latents, **extra_step_kwargs, return_dict=False)[0]\n                if latents.dtype != latents_dtype:\n                    if torch.backends.mps.is_available():\n                        # some platforms (eg. apple mps) misbehave due to a pytorch bug: https://github.com/pytorch/pytorch/pull/99272\n                        latents = latents.to(latents_dtype)\n\n                if callback_on_step_end is not None:\n                    callback_kwargs = {}\n                    for k in callback_on_step_end_tensor_inputs:\n                        callback_kwargs[k] = locals()[k]\n                    callback_outputs = callback_on_step_end(self, i, t, callback_kwargs)\n\n                    latents = callback_outputs.pop(\"latents\", latents)\n                    prompt_embeds = callback_outputs.pop(\"prompt_embeds\", prompt_embeds)\n                    negative_prompt_embeds = callback_outputs.pop(\"negative_prompt_embeds\", negative_prompt_embeds)\n                    add_text_embeds = callback_outputs.pop(\"add_text_embeds\", add_text_embeds)\n                    negative_pooled_prompt_embeds = callback_outputs.pop(\n                        \"negative_pooled_prompt_embeds\", negative_pooled_prompt_embeds\n                    )\n                    add_time_ids = callback_outputs.pop(\"add_time_ids\", add_time_ids)\n                    negative_add_time_ids = callback_outputs.pop(\"negative_add_time_ids\", negative_add_time_ids)\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n                    if callback is not None and i % callback_steps == 0:\n                        step_idx = i // getattr(self.scheduler, \"order\", 1)\n                        callback(step_idx, t, latents)\n\n                if XLA_AVAILABLE:\n                    xm.mark_step()\n\n        if output_type != \"latent\":\n            # make sure the VAE is in float32 mode, as it overflows in float16\n            needs_upcasting = self.vae.dtype == torch.float16 and self.vae.config.force_upcast\n\n            if needs_upcasting:\n                self.upcast_vae()\n                latents = latents.to(next(iter(self.vae.post_quant_conv.parameters())).dtype)\n            elif latents.dtype != self.vae.dtype:\n                if torch.backends.mps.is_available():\n                    # some platforms (eg. apple mps) misbehave due to a pytorch bug: https://github.com/pytorch/pytorch/pull/99272\n                    self.vae = self.vae.to(latents.dtype)\n\n            # unscale/denormalize the latents\n            # denormalize with the mean and std if available and not None\n            has_latents_mean = hasattr(self.vae.config, \"latents_mean\") and self.vae.config.latents_mean is not None\n            has_latents_std = hasattr(self.vae.config, \"latents_std\") and self.vae.config.latents_std is not None\n            if has_latents_mean and has_latents_std:\n                latents_mean = (\n                    torch.tensor(self.vae.config.latents_mean).view(1, 4, 1, 1).to(latents.device, latents.dtype)\n                )\n                latents_std = (\n                    torch.tensor(self.vae.config.latents_std).view(1, 4, 1, 1).to(latents.device, latents.dtype)\n                )\n                latents = latents * latents_std / self.vae.config.scaling_factor + latents_mean\n            else:\n                latents = latents / self.vae.config.scaling_factor\n\n            image = self.vae.decode(latents, return_dict=False)[0]\n\n            # cast back to fp16 if needed\n            if needs_upcasting:\n                self.vae.to(dtype=torch.float16)\n        else:\n            image = latents\n\n        if output_type != \"latent\":\n            # apply watermark if available\n            if self.watermark is not None:\n                image = self.watermark.apply_watermark(image)\n\n            image = self.image_processor.postprocess(image, output_type=output_type)\n\n        # Offload all models\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return (image,)\n\n        #Change the attention layers back to original ones after PAG was applied\n        if self.do_adversarial_guidance:\n            if self.pag_applied_layers_index:\n                drop_layers = self.pag_applied_layers_index\n                for drop_layer in drop_layers:\n                    layer_number = int(drop_layer[1:])\n                    try:\n                        if drop_layer[0] == 'd':\n                            down_layers[layer_number].processor = AttnProcessor2_0()\n                        elif drop_layer[0] == 'm':\n                            mid_layers[layer_number].processor = AttnProcessor2_0()\n                        elif drop_layer[0] == 'u':\n                            up_layers[layer_number].processor = AttnProcessor2_0()\n                        else:\n                            raise ValueError(f\"Invalid layer type: {drop_layer[0]}\")\n                    except IndexError:\n                        raise ValueError(f\"Invalid layer index: {drop_layer}. Available layers: {len(down_layers)} down layers, {len(mid_layers)} mid layers, {len(up_layers)} up layers.\")\n            elif self.pag_applied_layers:\n                drop_full_layers = self.pag_applied_layers\n                for drop_full_layer in drop_full_layers:\n                    try:\n                        if drop_full_layer == \"down\":\n                            for down_layer in down_layers:\n                                down_layer.processor = AttnProcessor2_0()\n                        elif drop_full_layer == \"mid\":\n                            for mid_layer in mid_layers:\n                                mid_layer.processor = AttnProcessor2_0()\n                        elif drop_full_layer == \"up\":\n                            for up_layer in up_layers:\n                                up_layer.processor = AttnProcessor2_0()\n                        else:\n                            raise ValueError(f\"Invalid layer type: {drop_full_layer}\")\n                    except IndexError:\n                        raise ValueError(f\"Invalid layer index: {drop_full_layer}. Available layers are: down, mid and up. If you need to specify each layer index, you can use `pag_applied_layers_index`\")\n        return StableDiffusionXLPipelineOutput(images=image)\n"
  },
  {
    "path": "modules/para_attention.py",
    "content": "from modules import shared\n\n\nsupported_models = ['Flux', 'HunyuanVideo', 'CogVideoX', 'Mochi']\n\n\ndef apply_first_block_cache():\n    if not shared.opts.para_cache_enabled:\n        return\n    if not any(shared.sd_model.__class__.__name__.startswith(x) for x in supported_models):\n        return\n    from installer import install\n    install('para_attn')\n    try:\n        if 'Nunchaku' in shared.sd_model.transformer.__class__.__name__:\n            from nunchaku.caching.diffusers_adapters import apply_cache_on_pipe\n            shared.log.info(f'Transformers cache: type=nunchaku rdt={shared.opts.para_diff_threshold} cls={shared.sd_model.transformer.__class__.__name__}')\n        else:\n            from para_attn.first_block_cache.diffusers_adapters import apply_cache_on_pipe\n            shared.log.info(f'Transformers cache: type=paraattn rdt={shared.opts.para_diff_threshold} cls={shared.sd_model.transformer.__class__.__name__}')\n        apply_cache_on_pipe(shared.sd_model, residual_diff_threshold=shared.opts.para_diff_threshold)\n    except Exception as e:\n        shared.log.error(f'Transformers cache: type=paraattn {e}')\n        return\n"
  },
  {
    "path": "modules/patches.py",
    "content": "from collections import defaultdict\nfrom typing import Optional\nfrom modules.errors import log\n\n\ndef patch(key, obj, field, replacement, add_if_not_exists:bool = False):\n    \"\"\"Replaces a function in a module or a class.\n    Also stores the original function in this module, possible to be retrieved via original(key, obj, field).\n    If the function is already replaced by this caller (key), an exception is raised -- use undo() before that.\n    Arguments:\n        key: identifying information for who is doing the replacement. You can use __name__.\n        obj: the module or the class\n        field: name of the function as a string\n        replacement: the new function\n    Returns:\n        the original function\n    \"\"\"\n    patch_key = (obj, field)\n    if patch_key in originals[key]:\n        log.error(f\"Patch already applied: field={field}\")\n        return getattr(obj, field, None) # avoid patching again\n    if not hasattr(obj, field) and not add_if_not_exists:\n        log.error(f\"Patch no attribute: type={type(obj)} name='{type.__name__}' fiel'{field}'\")\n        return None\n    original_func = getattr(obj, field, None)\n    originals[key][patch_key] = original_func\n    setattr(obj, field, replacement)\n    return original_func\n\n\ndef undo(key, obj, field):\n    \"\"\"Undoes the peplacement by the patch().\n    If the function is not replaced, raises an exception.\n    Arguments:\n        key: identifying information for who is doing the replacement. You can use __name__.\n        obj: the module or the class\n        field: name of the function as a string\n    Returns:\n        Always None\n    \"\"\"\n    patch_key = (obj, field)\n    if patch_key not in originals[key]:\n        log.error(f\"Patch no patch to undo: field={field}\")\n        return None\n    original_func = originals[key].pop(patch_key)\n    if original_func is None:\n        delattr(obj, field)\n    setattr(obj, field, original_func)\n    return None\n\n\ndef original(key, obj, field):\n    \"\"\"Returns the original function for the patch created by the patch() function\"\"\"\n    patch_key = (obj, field)\n    return originals[key].get(patch_key, None)\n\n\ndef patch_method(cls, key:Optional[str]=None):\n    def decorator(func):\n        patch(func.__module__ if key is None else key, cls, func.__name__, func)\n    return decorator\n\n\ndef add_method(cls, key:Optional[str]=None):\n    def decorator(func):\n        patch(func.__module__ if key is None else key, cls, func.__name__, func, True)\n    return decorator\n\n\noriginals = defaultdict(dict)\n"
  },
  {
    "path": "modules/paths.py",
    "content": "# this module must not have any dependencies as it is a very first import before webui even starts\nimport os\nimport sys\nimport json\nimport shlex\nimport argparse\nimport tempfile\nfrom installer import log\n\n\n# parse args, parse again after we have the data-dir and early-read the config file\nargv = shlex.split(\" \".join(sys.argv[1:])) if \"USED_VSCODE_COMMAND_PICKARGS\" in os.environ else sys.argv[1:]\nparser = argparse.ArgumentParser(add_help=False)\nparser.add_argument(\"--ckpt\", type=str, default=os.environ.get(\"SD_MODEL\", None), help=\"Path to model checkpoint to load immediately, default: %(default)s\")\nparser.add_argument(\"--data-dir\", type=str, default=os.environ.get(\"SD_DATADIR\", ''), help=\"Base path where all user data is stored, default: %(default)s\")\nparser.add_argument(\"--models-dir\", type=str, default=os.environ.get(\"SD_MODELSDIR\", None), help=\"Base path where all models are stored, default: %(default)s\",)\nparser.add_argument(\"--extensions-dir\", type=str, default=os.environ.get(\"SD_EXTENSIONSDIR\", None), help=\"Base path where all extensions are stored, default: %(default)s\",)\ncli = parser.parse_known_args(argv)[0]\nparser.add_argument(\"--config\", type=str, default=os.environ.get(\"SD_CONFIG\", os.path.join(cli.data_dir, 'config.json')), help=\"Use specific server configuration file, default: %(default)s\") # twice because we want data_dir\ncli = parser.parse_known_args(argv)[0]\nconfig_path = cli.config if os.path.isabs(cli.config) else os.path.join(cli.data_dir, cli.config)\n\ntry:\n    with open(config_path, 'r', encoding='utf8') as f:\n        config = json.load(f)\nexcept Exception:\n    config = {}\n\ntemp_dir = config.get('temp_dir', '')\nif len(temp_dir) == 0:\n    temp_dir = tempfile.gettempdir()\nreference_path = os.path.join('models', 'Reference')\nmodules_path = os.path.dirname(os.path.realpath(__file__))\nscript_path = os.path.dirname(modules_path)\ndata_path = cli.data_dir\nmodels_config = cli.models_dir or config.get('models_dir') or 'models'\nmodels_path = models_config if os.path.isabs(models_config) else os.path.join(data_path, models_config)\nparams_path = os.environ.get('SD_PATH_PARAMS', os.path.join(data_path, \"params.txt\"))\nextensions_dir = cli.extensions_dir or os.path.join(data_path, \"extensions\")\nextensions_builtin_dir = \"extensions-builtin\"\nsd_configs_path = os.path.join(script_path, \"configs\")\nsd_default_config = os.path.join(sd_configs_path, \"v1-inference.yaml\")\nsd_model_file = cli.ckpt or os.path.join(script_path, 'model.safetensors') # not used\ndefault_sd_model_file = sd_model_file # not used\ndebug = log.trace if os.environ.get('SD_PATH_DEBUG', None) is not None else lambda *args, **kwargs: None\ndebug('Trace: PATH')\npaths = {}\n\nif os.environ.get('SD_PATH_DEBUG', None) is not None:\n    log.debug(f'Paths: script-path=\"{script_path}\" data-dir=\"{data_path}\" models-dir=\"{models_path}\" config=\"{config_path}\"')\n\n\ndef create_path(folder):\n    if folder is None or folder == '':\n        return\n    if os.path.exists(folder):\n        return\n    try:\n        os.makedirs(folder, exist_ok=True)\n        log.info(f'Create: folder=\"{folder}\"')\n    except Exception as e:\n        log.error(f'Create failed: folder=\"{folder}\" {e}')\n\n\ndef resolve_output_path(base_path: str, specific_path: str) -> str:\n    \"\"\"\n    Resolve output path by combining base and specific paths.\n\n    - If specific_path is absolute, return it directly (base is ignored)\n    - If base_path is set and specific_path is relative, join them\n    - If base_path is empty/None, return specific_path as-is\n    \"\"\"\n    if not specific_path:\n        return base_path or ''\n    if os.path.isabs(specific_path):\n        return specific_path\n    if base_path:\n        return os.path.normpath(os.path.join(base_path, specific_path))\n    return specific_path\n\n\ndef create_paths(opts):\n    def fix_path(folder):\n        tgt = None\n        if folder in opts.data:\n            tgt = opts.data[folder]\n        elif folder in opts.data_labels:\n            tgt = opts.data_labels[folder].default\n        else:\n            log.warning(f'Path: folder=\"{folder}\" unknown')\n        if tgt is None or tgt == '':\n            return tgt\n        fix = tgt\n        if not os.path.isabs(tgt) and len(data_path) > 0 and not tgt.startswith(data_path): # path is already relative to data_path\n            fix = os.path.join(data_path, fix)\n        if fix.startswith('..'):\n            fix = os.path.abspath(fix)\n        fix = fix if os.path.isabs(fix) else os.path.relpath(fix, script_path)\n        opts.data[folder] = fix\n        debug(f'Paths: folder=\"{folder}\" original=\"{tgt}\" target=\"{fix}\"')\n        return opts.data[folder]\n\n    create_path(data_path)\n    create_path(script_path)\n    create_path(models_path)\n    create_path(sd_configs_path)\n    create_path(extensions_dir)\n    create_path(extensions_builtin_dir)\n    create_path(fix_path('temp_dir'))\n    create_path(fix_path('ckpt_dir'))\n    create_path(fix_path('diffusers_dir'))\n    create_path(fix_path('hfcache_dir'))\n    create_path(fix_path('vae_dir'))\n    create_path(fix_path('unet_dir'))\n    create_path(fix_path('te_dir'))\n    create_path(fix_path('lora_dir'))\n    create_path(fix_path('tunable_dir'))\n    create_path(fix_path('embeddings_dir'))\n    create_path(fix_path('onnx_temp_dir'))\n    create_path(fix_path('outdir_samples'))\n    create_path(fix_path('outdir_txt2img_samples'))\n    create_path(fix_path('outdir_img2img_samples'))\n    create_path(fix_path('outdir_control_samples'))\n    create_path(fix_path('outdir_extras_samples'))\n    create_path(fix_path('outdir_init_images'))\n    create_path(fix_path('outdir_grids'))\n    create_path(fix_path('outdir_txt2img_grids'))\n    create_path(fix_path('outdir_img2img_grids'))\n    create_path(fix_path('outdir_control_grids'))\n    create_path(fix_path('outdir_save'))\n    create_path(fix_path('outdir_video'))\n    create_path(fix_path('styles_dir'))\n    create_path(fix_path('yolo_dir'))\n    create_path(fix_path('wildcards_dir'))\n\n    # Create resolved output paths (base + specific)\n    base_samples = opts.data.get('outdir_samples', '')\n    base_grids = opts.data.get('outdir_grids', '')\n    if base_samples:\n        create_path(resolve_output_path(base_samples, opts.data.get('outdir_txt2img_samples', '')))\n        create_path(resolve_output_path(base_samples, opts.data.get('outdir_img2img_samples', '')))\n        create_path(resolve_output_path(base_samples, opts.data.get('outdir_control_samples', '')))\n        create_path(resolve_output_path(base_samples, opts.data.get('outdir_extras_samples', '')))\n        create_path(resolve_output_path(base_samples, opts.data.get('outdir_save', '')))\n        create_path(resolve_output_path(base_samples, opts.data.get('outdir_video', '')))\n        create_path(resolve_output_path(base_samples, opts.data.get('outdir_init_images', '')))\n    if base_grids:\n        create_path(resolve_output_path(base_grids, opts.data.get('outdir_txt2img_grids', '')))\n        create_path(resolve_output_path(base_grids, opts.data.get('outdir_img2img_grids', '')))\n        create_path(resolve_output_path(base_grids, opts.data.get('outdir_control_grids', '')))\n\n\nclass Prioritize:\n    def __init__(self, name):\n        self.name = name\n        self.path = None\n\n    def __enter__(self):\n        self.path = sys.path.copy()\n        sys.path = [paths[self.name]] + sys.path\n\n    def __exit__(self, exc_type, exc_val, exc_tb):\n        sys.path = self.path\n        self.path = None\n"
  },
  {
    "path": "modules/paths_internal.py",
    "content": "# no longer used, all paths are defined in paths.py\n\nfrom modules.paths import modules_path, script_path, sd_configs_path, sd_default_config, sd_model_file, default_sd_model_file, data_path, models_path, extensions_dir, extensions_builtin_dir # pylint: disable=unused-import\n"
  },
  {
    "path": "modules/postprocess/aurasr_arch.py",
    "content": "# AuraSR: GAN-based Super-Resolution for real-world, a reproduction of the GigaGAN* paper. Implementation is\n# based on the unofficial lucidrains/gigagan-pytorch repository. Heavily modified from there.\n#\n# https://mingukkang.github.io/GigaGAN/\nfrom math import log2, ceil\nfrom functools import partial\nfrom typing import Any, Optional, List, Iterable\n\nimport torch\nfrom torchvision import transforms\nfrom PIL import Image\nfrom torch import nn, einsum, Tensor\nimport torch.nn.functional as F\n\nfrom einops import rearrange, repeat, reduce\nfrom einops.layers.torch import Rearrange\n\n\ndef get_same_padding(size, kernel, dilation, stride):\n    return ((size - 1) * (stride - 1) + dilation * (kernel - 1)) // 2\n\n\nclass AdaptiveConv2DMod(nn.Module):\n    def __init__(\n        self,\n        dim,\n        dim_out,\n        kernel,\n        *,\n        demod=True,\n        stride=1,\n        dilation=1,\n        eps=1e-8,\n        num_conv_kernels=1,  # set this to be greater than 1 for adaptive\n    ):\n        super().__init__()\n        self.eps = eps\n\n        self.dim_out = dim_out\n\n        self.kernel = kernel\n        self.stride = stride\n        self.dilation = dilation\n        self.adaptive = num_conv_kernels > 1\n\n        self.weights = nn.Parameter(\n            torch.randn((num_conv_kernels, dim_out, dim, kernel, kernel))\n        )\n\n        self.demod = demod\n\n        nn.init.kaiming_normal_(\n            self.weights, a=0, mode=\"fan_in\", nonlinearity=\"leaky_relu\"\n        )\n\n    def forward(\n        self, fmap, mod: Optional[Tensor] = None, kernel_mod: Optional[Tensor] = None\n    ):\n        \"\"\"\n        notation\n\n        b - batch\n        n - convs\n        o - output\n        i - input\n        k - kernel\n        \"\"\"\n\n        b, h = fmap.shape[0], fmap.shape[-2]\n\n        # account for feature map that has been expanded by the scale in the first dimension\n        # due to multiscale inputs and outputs\n\n        if mod.shape[0] != b:\n            mod = repeat(mod, \"b ... -> (s b) ...\", s=b // mod.shape[0])\n\n        if exists(kernel_mod):\n            kernel_mod_has_el = kernel_mod.numel() > 0\n\n            assert self.adaptive or not kernel_mod_has_el\n\n            if kernel_mod_has_el and kernel_mod.shape[0] != b:\n                kernel_mod = repeat(\n                    kernel_mod, \"b ... -> (s b) ...\", s=b // kernel_mod.shape[0]\n                )\n\n        # prepare weights for modulation\n\n        weights = self.weights\n\n        if self.adaptive:\n            weights = repeat(weights, \"... -> b ...\", b=b)\n\n            # determine an adaptive weight and 'select' the kernel to use with softmax\n\n            assert exists(kernel_mod) and kernel_mod.numel() > 0\n\n            kernel_attn = kernel_mod.softmax(dim=-1)\n            kernel_attn = rearrange(kernel_attn, \"b n -> b n 1 1 1 1\")\n\n            weights = reduce(weights * kernel_attn, \"b n ... -> b ...\", \"sum\")\n\n        # do the modulation, demodulation, as done in stylegan2\n\n        mod = rearrange(mod, \"b i -> b 1 i 1 1\")\n\n        weights = weights * (mod + 1)\n\n        if self.demod:\n            inv_norm = (\n                reduce(weights**2, \"b o i k1 k2 -> b o 1 1 1\", \"sum\")\n                .clamp(min=self.eps)\n                .rsqrt()\n            )\n            weights = weights * inv_norm\n\n        fmap = rearrange(fmap, \"b c h w -> 1 (b c) h w\")\n\n        weights = rearrange(weights, \"b o ... -> (b o) ...\")\n\n        padding = get_same_padding(h, self.kernel, self.dilation, self.stride)\n        fmap = F.conv2d(fmap, weights, padding=padding, groups=b)\n\n        return rearrange(fmap, \"1 (b o) ... -> b o ...\", b=b)\n\n\nclass Attend(nn.Module):\n    def __init__(self, dropout=0.0, flash=False):\n        super().__init__()\n        self.dropout = dropout\n        self.attn_dropout = nn.Dropout(dropout)\n        self.scale = nn.Parameter(torch.randn(1))\n        self.flash = flash\n\n    def flash_attn(self, q, k, v):\n        q, k, v = map(lambda t: t.contiguous(), (q, k, v))\n        out = F.scaled_dot_product_attention(\n            q, k, v, dropout_p=self.dropout if self.training else 0.0\n        )\n        return out\n\n    def forward(self, q, k, v):\n        if self.flash:\n            return self.flash_attn(q, k, v)\n\n        scale = q.shape[-1] ** -0.5\n\n        # similarity\n        sim = einsum(\"b h i d, b h j d -> b h i j\", q, k) * scale\n\n        # attention\n        attn = sim.softmax(dim=-1)\n        attn = self.attn_dropout(attn)\n\n        # aggregate values\n        out = einsum(\"b h i j, b h j d -> b h i d\", attn, v)\n\n        return out\n\n\ndef exists(x):\n    return x is not None\n\n\ndef default(val, d):\n    if exists(val):\n        return val\n    return d() if callable(d) else d\n\n\ndef cast_tuple(t, length=1):\n    if isinstance(t, tuple):\n        return t\n    return (t,) * length\n\n\ndef identity(t, *args, **kwargs):\n    return t\n\n\ndef is_power_of_two(n):\n    return log2(n).is_integer()\n\n\ndef null_iterator():\n    while True:\n        yield None\n\ndef Downsample(dim, dim_out=None):\n    return nn.Sequential(\n        Rearrange(\"b c (h p1) (w p2) -> b (c p1 p2) h w\", p1=2, p2=2),\n        nn.Conv2d(dim * 4, default(dim_out, dim), 1),\n    )\n\n\nclass RMSNorm(nn.Module):\n    def __init__(self, dim):\n        super().__init__()\n        self.g = nn.Parameter(torch.ones(1, dim, 1, 1))\n        self.eps = 1e-4\n\n    def forward(self, x):\n        return F.normalize(x, dim=1) * self.g * (x.shape[1] ** 0.5)\n\n\n# building block modules\n\n\nclass Block(nn.Module):\n    def __init__(self, dim, dim_out, groups=8, num_conv_kernels=0):\n        super().__init__()\n        self.proj = AdaptiveConv2DMod(\n            dim, dim_out, kernel=3, num_conv_kernels=num_conv_kernels\n        )\n        self.kernel = 3\n        self.dilation = 1\n        self.stride = 1\n\n        self.act = nn.SiLU()\n\n    def forward(self, x, conv_mods_iter: Optional[Iterable] = None):\n        conv_mods_iter = default(conv_mods_iter, null_iterator())\n\n        x = self.proj(x, mod=next(conv_mods_iter), kernel_mod=next(conv_mods_iter))\n\n        x = self.act(x)\n        return x\n\n\nclass ResnetBlock(nn.Module):\n    def __init__(\n        self, dim, dim_out, *, groups=8, num_conv_kernels=0, style_dims: List = []\n    ):\n        super().__init__()\n        style_dims.extend([dim, num_conv_kernels, dim_out, num_conv_kernels])\n\n        self.block1 = Block(\n            dim, dim_out, groups=groups, num_conv_kernels=num_conv_kernels\n        )\n        self.block2 = Block(\n            dim_out, dim_out, groups=groups, num_conv_kernels=num_conv_kernels\n        )\n        self.res_conv = nn.Conv2d(dim, dim_out, 1) if dim != dim_out else nn.Identity()\n\n    def forward(self, x, conv_mods_iter: Optional[Iterable] = None):\n        h = self.block1(x, conv_mods_iter=conv_mods_iter)\n        h = self.block2(h, conv_mods_iter=conv_mods_iter)\n\n        return h + self.res_conv(x)\n\n\nclass LinearAttention(nn.Module):\n    def __init__(self, dim, heads=4, dim_head=32):\n        super().__init__()\n        self.scale = dim_head**-0.5\n        self.heads = heads\n        hidden_dim = dim_head * heads\n\n        self.norm = RMSNorm(dim)\n        self.to_qkv = nn.Conv2d(dim, hidden_dim * 3, 1, bias=False)\n\n        self.to_out = nn.Sequential(nn.Conv2d(hidden_dim, dim, 1), RMSNorm(dim))\n\n    def forward(self, x):\n        b, c, h, w = x.shape\n\n        x = self.norm(x)\n\n        qkv = self.to_qkv(x).chunk(3, dim=1)\n        q, k, v = map(\n            lambda t: rearrange(t, \"b (h c) x y -> b h c (x y)\", h=self.heads), qkv\n        )\n\n        q = q.softmax(dim=-2)\n        k = k.softmax(dim=-1)\n\n        q = q * self.scale\n\n        context = torch.einsum(\"b h d n, b h e n -> b h d e\", k, v)\n\n        out = torch.einsum(\"b h d e, b h d n -> b h e n\", context, q)\n        out = rearrange(out, \"b h c (x y) -> b (h c) x y\", h=self.heads, x=h, y=w)\n        return self.to_out(out)\n\n\nclass Attention(nn.Module):\n    def __init__(self, dim, heads=4, dim_head=32, flash=False):\n        super().__init__()\n        self.heads = heads\n        hidden_dim = dim_head * heads\n\n        self.norm = RMSNorm(dim)\n\n        self.attend = Attend(flash=flash)\n        self.to_qkv = nn.Conv2d(dim, hidden_dim * 3, 1, bias=False)\n        self.to_out = nn.Conv2d(hidden_dim, dim, 1)\n\n    def forward(self, x):\n        b, c, h, w = x.shape\n        x = self.norm(x)\n        qkv = self.to_qkv(x).chunk(3, dim=1)\n\n        q, k, v = map(\n            lambda t: rearrange(t, \"b (h c) x y -> b h (x y) c\", h=self.heads), qkv\n        )\n\n        out = self.attend(q, k, v)\n        out = rearrange(out, \"b h (x y) d -> b (h d) x y\", x=h, y=w)\n\n        return self.to_out(out)\n\n\n# feedforward\ndef FeedForward(dim, mult=4):\n    return nn.Sequential(\n        RMSNorm(dim),\n        nn.Conv2d(dim, dim * mult, 1),\n        nn.GELU(),\n        nn.Conv2d(dim * mult, dim, 1),\n    )\n\n\n# transformers\nclass Transformer(nn.Module):\n    def __init__(self, dim, dim_head=64, heads=8, depth=1, flash_attn=True, ff_mult=4):\n        super().__init__()\n        self.layers = nn.ModuleList([])\n\n        for _ in range(depth):\n            self.layers.append(\n                nn.ModuleList(\n                    [\n                        Attention(\n                            dim=dim, dim_head=dim_head, heads=heads, flash=flash_attn\n                        ),\n                        FeedForward(dim=dim, mult=ff_mult),\n                    ]\n                )\n            )\n\n    def forward(self, x):\n        for attn, ff in self.layers:\n            x = attn(x) + x\n            x = ff(x) + x\n\n        return x\n\n\nclass LinearTransformer(nn.Module):\n    def __init__(self, dim, dim_head=64, heads=8, depth=1, ff_mult=4):\n        super().__init__()\n        self.layers = nn.ModuleList([])\n\n        for _ in range(depth):\n            self.layers.append(\n                nn.ModuleList(\n                    [\n                        LinearAttention(dim=dim, dim_head=dim_head, heads=heads),\n                        FeedForward(dim=dim, mult=ff_mult),\n                    ]\n                )\n            )\n\n    def forward(self, x):\n        for attn, ff in self.layers:\n            x = attn(x) + x\n            x = ff(x) + x\n\n        return x\n\n\nclass NearestNeighborhoodUpsample(nn.Module):\n    def __init__(self, dim, dim_out=None):\n        super().__init__()\n        dim_out = default(dim_out, dim)\n        self.conv = nn.Conv2d(dim, dim_out, kernel_size=3, stride=1, padding=1)\n\n    def forward(self, x):\n\n        if x.shape[0] >= 64:\n            x = x.contiguous()\n\n        x = F.interpolate(x, scale_factor=2.0, mode=\"nearest\")\n        x = self.conv(x)\n\n        return x\n\nclass EqualLinear(nn.Module):\n    def __init__(self, dim, dim_out, lr_mul=1, bias=True):\n        super().__init__()\n        self.weight = nn.Parameter(torch.randn(dim_out, dim))\n        if bias:\n            self.bias = nn.Parameter(torch.zeros(dim_out))\n\n        self.lr_mul = lr_mul\n\n    def forward(self, input):\n        return F.linear(input, self.weight * self.lr_mul, bias=self.bias * self.lr_mul)\n\n\nclass StyleGanNetwork(nn.Module):\n    def __init__(self, dim_in=128, dim_out=512, depth=8, lr_mul=0.1, dim_text_latent=0):\n        super().__init__()\n        self.dim_in = dim_in\n        self.dim_out = dim_out\n        self.dim_text_latent = dim_text_latent\n\n        layers = []\n        for i in range(depth):\n            is_first = i == 0\n\n            if is_first:\n                dim_in_layer = dim_in + dim_text_latent\n            else:\n                dim_in_layer = dim_out\n\n            dim_out_layer = dim_out\n\n            layers.extend(\n                [EqualLinear(dim_in_layer, dim_out_layer, lr_mul), nn.LeakyReLU(0.2)]\n            )\n\n        self.net = nn.Sequential(*layers)\n\n    def forward(self, x, text_latent=None):\n        x = F.normalize(x, dim=1)\n        if self.dim_text_latent > 0:\n            assert exists(text_latent)\n            x = torch.cat((x, text_latent), dim=-1)\n        return self.net(x)\n\n\nclass UnetUpsampler(torch.nn.Module):\n\n    def __init__(\n        self,\n        dim: int,\n        *,\n        image_size: int,\n        input_image_size: int,\n        init_dim: Optional[int] = None,\n        out_dim: Optional[int] = None,\n        style_network: Optional[dict] = None,\n        up_dim_mults: tuple = (1, 2, 4, 8, 16),\n        down_dim_mults: tuple = (4, 8, 16),\n        channels: int = 3,\n        resnet_block_groups: int = 8,\n        full_attn: tuple = (False, False, False, True, True),\n        flash_attn: bool = True,\n        self_attn_dim_head: int = 64,\n        self_attn_heads: int = 8,\n        attn_depths: tuple = (2, 2, 2, 2, 4),\n        mid_attn_depth: int = 4,\n        num_conv_kernels: int = 4,\n        resize_mode: str = \"bilinear\",\n        unconditional: bool = True,\n        skip_connect_scale: Optional[float] = None,\n    ):\n        super().__init__()\n        self.style_network = style_network = StyleGanNetwork(**style_network)\n        self.unconditional = unconditional\n        assert not (\n            unconditional\n            and exists(style_network)\n            and style_network.dim_text_latent > 0\n        )\n\n        assert is_power_of_two(image_size) and is_power_of_two(\n            input_image_size\n        ), \"both output image size and input image size must be power of 2\"\n        assert (\n            input_image_size < image_size\n        ), \"input image size must be smaller than the output image size, thus upsampling\"\n\n        self.image_size = image_size\n        self.input_image_size = input_image_size\n\n        style_embed_split_dims = []\n\n        self.channels = channels\n        input_channels = channels\n\n        init_dim = default(init_dim, dim)\n\n        up_dims = [init_dim, *map(lambda m: dim * m, up_dim_mults)]\n        init_down_dim = up_dims[len(up_dim_mults) - len(down_dim_mults)]\n        down_dims = [init_down_dim, *map(lambda m: dim * m, down_dim_mults)]\n        self.init_conv = nn.Conv2d(input_channels, init_down_dim, 7, padding=3)\n\n        up_in_out = list(zip(up_dims[:-1], up_dims[1:]))\n        down_in_out = list(zip(down_dims[:-1], down_dims[1:]))\n\n        block_klass = partial(\n            ResnetBlock,\n            groups=resnet_block_groups,\n            num_conv_kernels=num_conv_kernels,\n            style_dims=style_embed_split_dims,\n        )\n\n        FullAttention = partial(Transformer, flash_attn=flash_attn)\n        *_, mid_dim = up_dims\n\n        self.skip_connect_scale = default(skip_connect_scale, 2**-0.5)\n\n        self.downs = nn.ModuleList([])\n        self.ups = nn.ModuleList([])\n\n        block_count = 6\n\n        for ind, (\n            (dim_in, dim_out),\n            layer_full_attn,\n            layer_attn_depth,\n        ) in enumerate(zip(down_in_out, full_attn, attn_depths)):\n            attn_klass = FullAttention if layer_full_attn else LinearTransformer\n\n            blocks = []\n            for i in range(block_count):\n                blocks.append(block_klass(dim_in, dim_in))\n\n            self.downs.append(\n                nn.ModuleList(\n                    [\n                        nn.ModuleList(blocks),\n                        nn.ModuleList(\n                            [\n                                (\n                                    attn_klass(\n                                        dim_in,\n                                        dim_head=self_attn_dim_head,\n                                        heads=self_attn_heads,\n                                        depth=layer_attn_depth,\n                                    )\n                                    if layer_full_attn\n                                    else None\n                                ),\n                                nn.Conv2d(\n                                    dim_in, dim_out, kernel_size=3, stride=2, padding=1\n                                ),\n                            ]\n                        ),\n                    ]\n                )\n            )\n\n        self.mid_block1 = block_klass(mid_dim, mid_dim)\n        self.mid_attn = FullAttention(\n            mid_dim,\n            dim_head=self_attn_dim_head,\n            heads=self_attn_heads,\n            depth=mid_attn_depth,\n        )\n        self.mid_block2 = block_klass(mid_dim, mid_dim)\n\n        *_, last_dim = up_dims\n\n        for ind, (\n            (dim_in, dim_out),\n            layer_full_attn,\n            layer_attn_depth,\n        ) in enumerate(\n            zip(\n                reversed(up_in_out),\n                reversed(full_attn),\n                reversed(attn_depths),\n            )\n        ):\n            attn_klass = FullAttention if layer_full_attn else LinearTransformer\n\n            blocks = []\n            input_dim = dim_in * 2 if ind < len(down_in_out) else dim_in\n            for i in range(block_count):\n                blocks.append(block_klass(input_dim, dim_in))\n\n            self.ups.append(\n                nn.ModuleList(\n                    [\n                        nn.ModuleList(blocks),\n                        nn.ModuleList(\n                            [\n                                NearestNeighborhoodUpsample(\n                                    last_dim if ind == 0 else dim_out,\n                                    dim_in,\n                                ),\n                                (\n                                    attn_klass(\n                                        dim_in,\n                                        dim_head=self_attn_dim_head,\n                                        heads=self_attn_heads,\n                                        depth=layer_attn_depth,\n                                    )\n                                    if layer_full_attn\n                                    else None\n                                ),\n                            ]\n                        ),\n                    ]\n                )\n            )\n\n        self.out_dim = default(out_dim, channels)\n        self.final_res_block = block_klass(dim, dim)\n        self.final_to_rgb = nn.Conv2d(dim, channels, 1)\n        self.resize_mode = resize_mode\n        self.style_to_conv_modulations = nn.Linear(\n            style_network.dim_out, sum(style_embed_split_dims)\n        )\n        self.style_embed_split_dims = style_embed_split_dims\n\n    @property\n    def allowable_rgb_resolutions(self):\n        input_res_base = int(log2(self.input_image_size))\n        output_res_base = int(log2(self.image_size))\n        allowed_rgb_res_base = list(range(input_res_base, output_res_base))\n        return [*map(lambda p: 2**p, allowed_rgb_res_base)]\n\n    @property\n    def device(self):\n        return next(self.parameters()).device\n\n    @property\n    def total_params(self):\n        return sum([p.numel() for p in self.parameters()])\n\n    def resize_image_to(self, x, size):\n        return F.interpolate(x, (size, size), mode=self.resize_mode)\n\n    def forward(\n        self,\n        lowres_image: torch.Tensor,\n        styles: Optional[torch.Tensor] = None,\n        noise: Optional[torch.Tensor] = None,\n        global_text_tokens: Optional[torch.Tensor] = None,\n        return_all_rgbs: bool = False,\n    ):\n        x = lowres_image\n\n        noise_scale = 0.001  # Adjust the scale of the noise as needed\n        noise_aug = torch.randn_like(x) * noise_scale\n        x = x + noise_aug\n        x = x.clamp(0, 1)\n\n        shape = x.shape\n        batch_size = shape[0]\n\n        assert shape[-2:] == ((self.input_image_size,) * 2)\n\n        # styles\n        if not exists(styles):\n            assert exists(self.style_network)\n\n            noise = default(\n                noise,\n                torch.randn(\n                    (batch_size, self.style_network.dim_in), device=self.device\n                ),\n            )\n            styles = self.style_network(noise, global_text_tokens)\n\n        # project styles to conv modulations\n        conv_mods = self.style_to_conv_modulations(styles)\n        conv_mods = conv_mods.split(self.style_embed_split_dims, dim=-1)\n        conv_mods = iter(conv_mods)\n\n        x = self.init_conv(x)\n\n        h = []\n        for blocks, (attn, downsample) in self.downs:\n            for block in blocks:\n                x = block(x, conv_mods_iter=conv_mods)\n                h.append(x)\n\n            if attn is not None:\n                x = attn(x)\n\n            x = downsample(x)\n\n        x = self.mid_block1(x, conv_mods_iter=conv_mods)\n        x = self.mid_attn(x)\n        x = self.mid_block2(x, conv_mods_iter=conv_mods)\n\n        for (\n            blocks,\n            (\n                upsample,\n                attn,\n            ),\n        ) in self.ups:\n            x = upsample(x)\n            for block in blocks:\n                if h != []:\n                    res = h.pop()\n                    res = res * self.skip_connect_scale\n                    x = torch.cat((x, res), dim=1)\n\n                x = block(x, conv_mods_iter=conv_mods)\n\n            if attn is not None:\n                x = attn(x)\n\n        x = self.final_res_block(x, conv_mods_iter=conv_mods)\n        rgb = self.final_to_rgb(x)\n\n        if not return_all_rgbs:\n            return rgb\n\n        return rgb, []\n\n\ndef tile_image(image, chunk_size=64):\n    c, h, w = image.shape\n    h_chunks = ceil(h / chunk_size)\n    w_chunks = ceil(w / chunk_size)\n    tiles = []\n    for i in range(h_chunks):\n        for j in range(w_chunks):\n            tile = image[:, i * chunk_size:(i + 1) * chunk_size, j * chunk_size:(j + 1) * chunk_size]\n            tiles.append(tile)\n    return tiles, h_chunks, w_chunks\n\n\ndef merge_tiles(tiles, h_chunks, w_chunks, chunk_size=64):\n    # Determine the shape of the output tensor\n    c = tiles[0].shape[0]\n    h = h_chunks * chunk_size\n    w = w_chunks * chunk_size\n\n    # Create an empty tensor to hold the merged image\n    merged = torch.zeros((c, h, w), dtype=tiles[0].dtype)\n\n    # Iterate over the tiles and place them in the correct position\n    for idx, tile in enumerate(tiles):\n        i = idx // w_chunks\n        j = idx % w_chunks\n\n        h_start = i * chunk_size\n        w_start = j * chunk_size\n\n        tile_h, tile_w = tile.shape[1:]\n        merged[:, h_start:h_start+tile_h, w_start:w_start+tile_w] = tile\n\n    return merged\n\n\nclass AuraSR:\n    def __init__(self, config: dict[str, Any], device: str = \"cuda\"):\n        self.upsampler = UnetUpsampler(**config).to(device)\n        self.input_image_size = config[\"input_image_size\"]\n\n    @classmethod\n    def from_pretrained(cls, model_id: str = \"fal-ai/AuraSR\", use_safetensors: bool = True):\n        import json\n        import torch\n        from pathlib import Path\n        from huggingface_hub import snapshot_download\n\n        # Check if model_id is a local file\n        if Path(model_id).is_file():\n            local_file = Path(model_id)\n            if local_file.suffix == '.safetensors':\n                use_safetensors = True\n            elif local_file.suffix == '.ckpt':\n                use_safetensors = False\n            else:\n                raise ValueError(f\"Unsupported file format: {local_file.suffix}. Please use .safetensors or .ckpt files.\")\n\n            # For local files, we need to provide the config separately\n            config_path = local_file.with_name('config.json')\n            if not config_path.exists():\n                raise FileNotFoundError(\n                    f\"Config file not found: {config_path}. \"\n                    f\"When loading from a local file, ensure that 'config.json' \"\n                    f\"is present in the same directory as '{local_file.name}'. \"\n                    f\"If you're trying to load a model from Hugging Face, \"\n                    f\"please provide the model ID instead of a file path.\"\n                )\n\n            config = json.loads(config_path.read_text())\n            hf_model_path = local_file.parent\n        else:\n            hf_model_path = Path(snapshot_download(model_id))\n            config = json.loads((hf_model_path / \"config.json\").read_text())\n\n        model = cls(config)\n\n        if use_safetensors:\n            try:\n                from safetensors.torch import load_file\n                checkpoint = load_file(hf_model_path / \"model.safetensors\" if not Path(model_id).is_file() else model_id)\n            except ImportError:\n                raise ImportError(\n                    \"The safetensors library is not installed. \"\n                    \"Please install it with `pip install safetensors` \"\n                    \"or use `use_safetensors=False` to load the model with PyTorch.\"\n                )\n        else:\n            checkpoint = torch.load(hf_model_path / \"model.ckpt\" if not Path(model_id).is_file() else model_id)\n\n        model.upsampler.load_state_dict(checkpoint, strict=True)\n        return model\n\n    @torch.no_grad()\n    def upscale_4x(self, image: Image.Image, max_batch_size=8) -> Image.Image:\n        tensor_transform = transforms.ToTensor()\n        device = self.upsampler.device\n\n        image_tensor = tensor_transform(image).unsqueeze(0)\n        _, _, h, w = image_tensor.shape\n        pad_h = (self.input_image_size - h % self.input_image_size) % self.input_image_size\n        pad_w = (self.input_image_size - w % self.input_image_size) % self.input_image_size\n\n        # Pad the image\n        image_tensor = torch.nn.functional.pad(image_tensor, (0, pad_w, 0, pad_h), mode='reflect').squeeze(0)\n        tiles, h_chunks, w_chunks = tile_image(image_tensor, self.input_image_size)\n\n        # Batch processing of tiles\n        num_tiles = len(tiles)\n        batches = [tiles[i:i + max_batch_size] for i in range(0, num_tiles, max_batch_size)]\n        reconstructed_tiles = []\n\n        for batch in batches:\n            model_input = torch.stack(batch).to(device)\n            generator_output = self.upsampler(\n                lowres_image=model_input,\n                noise=torch.randn(model_input.shape[0], 128, device=device)\n            )\n            reconstructed_tiles.extend(list(generator_output.clamp_(0, 1).detach().cpu()))\n\n        merged_tensor = merge_tiles(reconstructed_tiles, h_chunks, w_chunks, self.input_image_size * 4)\n        unpadded = merged_tensor[:, :h * 4, :w * 4]\n\n        to_pil = transforms.ToPILImage()\n        return to_pil(unpadded)\n"
  },
  {
    "path": "modules/postprocess/aurasr_model.py",
    "content": "import torch\nimport diffusers\nfrom PIL import Image\nfrom modules import shared, devices\nfrom modules.upscaler import Upscaler, UpscalerData\n\n\nclass UpscalerAuraSR(Upscaler):\n    def __init__(self, dirname): # pylint: disable=super-init-not-called\n        self.name = \"AuraSR\"\n        self.user_path = dirname\n        self.model = None\n        self.scalers = [\n            UpscalerData(name=\"Aura SR 4x\", path=\"stabilityai/sd-x2-latent-upscaler\", upscaler=self, model=None, scale=4),\n        ]\n\n    def callback(self, _step: int, _timestep: int, _latents: torch.FloatTensor):\n        pass\n\n    def do_upscale(self, img: Image.Image, selected_model):\n        from modules.postprocess.aurasr_arch import AuraSR\n        if self.model is None:\n            self.model = AuraSR.from_pretrained(\"vladmandic/aurasr\", use_safetensors=False)\n        devices.torch_gc()\n\n        self.model.upsampler.to(devices.device)\n        image = self.model.upscale_4x(img)\n        self.model.upsampler.to(devices.cpu)\n\n        if shared.opts.upscaler_unload:\n            self.model = None\n            shared.log.debug(f\"Upscaler unloaded: type={self.name} model={selected_model}\")\n            devices.torch_gc(force=True)\n        return image\n"
  },
  {
    "path": "modules/postprocess/codeformer_arch.py",
    "content": "# this file is copied from CodeFormer repository. Please see comment in modules/codeformer_model.py\n\nimport math\nfrom typing import Optional\nimport torch\nfrom torch import nn, Tensor\nimport torch.nn.functional as F\nfrom modules.postprocess.vqgan_arch import VQAutoEncoder, ResBlock\n\ndef calc_mean_std(feat, eps=1e-5):\n    \"\"\"Calculate mean and std for adaptive_instance_normalization.\n\n    Args:\n        feat (Tensor): 4D tensor.\n        eps (float): A small value added to the variance to avoid\n            divide-by-zero. Default: 1e-5.\n    \"\"\"\n    size = feat.size()\n    assert len(size) == 4, 'The input feature should be 4D tensor.'\n    b, c = size[:2]\n    feat_var = feat.view(b, c, -1).var(dim=2) + eps\n    feat_std = feat_var.sqrt().view(b, c, 1, 1)\n    feat_mean = feat.view(b, c, -1).mean(dim=2).view(b, c, 1, 1)\n    return feat_mean, feat_std\n\n\ndef adaptive_instance_normalization(content_feat, style_feat):\n    \"\"\"Adaptive instance normalization.\n\n    Adjust the reference features to have the similar color and illuminations\n    as those in the degradate features.\n\n    Args:\n        content_feat (Tensor): The reference feature.\n        style_feat (Tensor): The degradate features.\n    \"\"\"\n    size = content_feat.size()\n    style_mean, style_std = calc_mean_std(style_feat)\n    content_mean, content_std = calc_mean_std(content_feat)\n    normalized_feat = (content_feat - content_mean.expand(size)) / content_std.expand(size)\n    return normalized_feat * style_std.expand(size) + style_mean.expand(size)\n\n\nclass PositionEmbeddingSine(nn.Module):\n    \"\"\"\n    This is a more standard version of the position embedding, very similar to the one\n    used by the Attention is all you need paper, generalized to work on images.\n    \"\"\"\n\n    def __init__(self, num_pos_feats=64, temperature=10000, normalize=False, scale=None):\n        super().__init__()\n        self.num_pos_feats = num_pos_feats\n        self.temperature = temperature\n        self.normalize = normalize\n        if scale is not None and normalize is False:\n            raise ValueError(\"normalize should be True if scale is passed\")\n        if scale is None:\n            scale = 2 * math.pi\n        self.scale = scale\n\n    def forward(self, x, mask=None):\n        if mask is None:\n            mask = torch.zeros((x.size(0), x.size(2), x.size(3)), device=x.device, dtype=torch.bool)\n        not_mask = ~mask\n        y_embed = not_mask.cumsum(1, dtype=torch.float32)\n        x_embed = not_mask.cumsum(2, dtype=torch.float32)\n        if self.normalize:\n            eps = 1e-6\n            y_embed = y_embed / (y_embed[:, -1:, :] + eps) * self.scale\n            x_embed = x_embed / (x_embed[:, :, -1:] + eps) * self.scale\n\n        dim_t = torch.arange(self.num_pos_feats, dtype=torch.float32, device=x.device)\n        dim_t = self.temperature ** (2 * (dim_t // 2) / self.num_pos_feats)\n\n        pos_x = x_embed[:, :, :, None] / dim_t\n        pos_y = y_embed[:, :, :, None] / dim_t\n        pos_x = torch.stack(\n            (pos_x[:, :, :, 0::2].sin(), pos_x[:, :, :, 1::2].cos()), dim=4\n        ).flatten(3)\n        pos_y = torch.stack(\n            (pos_y[:, :, :, 0::2].sin(), pos_y[:, :, :, 1::2].cos()), dim=4\n        ).flatten(3)\n        pos = torch.cat((pos_y, pos_x), dim=3).permute(0, 3, 1, 2)\n        return pos\n\ndef _get_activation_fn(activation):\n    \"\"\"Return an activation function given a string\"\"\"\n    if activation == \"relu\":\n        return F.relu\n    if activation == \"gelu\":\n        return F.gelu\n    if activation == \"glu\":\n        return F.glu\n    raise RuntimeError(F\"activation should be relu/gelu, not {activation}.\")\n\n\nclass TransformerSALayer(nn.Module):\n    def __init__(self, embed_dim, nhead=8, dim_mlp=2048, dropout=0.0, activation=\"gelu\"):\n        super().__init__()\n        self.self_attn = nn.MultiheadAttention(embed_dim, nhead, dropout=dropout)\n        # Implementation of Feedforward model - MLP\n        self.linear1 = nn.Linear(embed_dim, dim_mlp)\n        self.dropout = nn.Dropout(dropout)\n        self.linear2 = nn.Linear(dim_mlp, embed_dim)\n\n        self.norm1 = nn.LayerNorm(embed_dim)\n        self.norm2 = nn.LayerNorm(embed_dim)\n        self.dropout1 = nn.Dropout(dropout)\n        self.dropout2 = nn.Dropout(dropout)\n\n        self.activation = _get_activation_fn(activation)\n\n    def with_pos_embed(self, tensor, pos: Optional[Tensor]):\n        return tensor if pos is None else tensor + pos\n\n    def forward(self, tgt,\n                tgt_mask: Optional[Tensor] = None,\n                tgt_key_padding_mask: Optional[Tensor] = None,\n                query_pos: Optional[Tensor] = None):\n        # self attention\n        tgt2 = self.norm1(tgt)\n        q = k = self.with_pos_embed(tgt2, query_pos)\n        tgt2 = self.self_attn(q, k, value=tgt2, attn_mask=tgt_mask,\n                              key_padding_mask=tgt_key_padding_mask)[0]\n        tgt = tgt + self.dropout1(tgt2)\n\n        # ffn\n        tgt2 = self.norm2(tgt)\n        tgt2 = self.linear2(self.dropout(self.activation(self.linear1(tgt2))))\n        tgt = tgt + self.dropout2(tgt2)\n        return tgt\n\nclass Fuse_sft_block(nn.Module):\n    def __init__(self, in_ch, out_ch):\n        super().__init__()\n        self.encode_enc = ResBlock(2*in_ch, out_ch)\n\n        self.scale = nn.Sequential(\n                    nn.Conv2d(in_ch, out_ch, kernel_size=3, padding=1),\n                    nn.LeakyReLU(0.2, True),\n                    nn.Conv2d(out_ch, out_ch, kernel_size=3, padding=1))\n\n        self.shift = nn.Sequential(\n                    nn.Conv2d(in_ch, out_ch, kernel_size=3, padding=1),\n                    nn.LeakyReLU(0.2, True),\n                    nn.Conv2d(out_ch, out_ch, kernel_size=3, padding=1))\n\n    def forward(self, enc_feat, dec_feat, w=1):\n        enc_feat = self.encode_enc(torch.cat([enc_feat, dec_feat], dim=1))\n        scale = self.scale(enc_feat)\n        shift = self.shift(enc_feat)\n        residual = w * (dec_feat * scale + shift)\n        out = dec_feat + residual\n        return out\n\n\nclass CodeFormer(VQAutoEncoder):\n    def __init__(self, dim_embd=512, n_head=8, n_layers=9,\n                codebook_size=1024, latent_size=256,\n                connect_list=('32', '64', '128', '256'),\n                fix_modules=('quantize', 'generator')):\n        super(CodeFormer, self).__init__(512, 64, [1, 2, 2, 4, 4, 8], 'nearest',2, [16], codebook_size)\n\n        if fix_modules is not None:\n            for module in fix_modules:\n                for param in getattr(self, module).parameters():\n                    param.requires_grad = False\n\n        self.connect_list = connect_list\n        self.n_layers = n_layers\n        self.dim_embd = dim_embd\n        self.dim_mlp = dim_embd*2\n\n        self.position_emb = nn.Parameter(torch.zeros(latent_size, self.dim_embd))\n        self.feat_emb = nn.Linear(256, self.dim_embd)\n\n        # transformer\n        self.ft_layers = nn.Sequential(*[TransformerSALayer(embed_dim=dim_embd, nhead=n_head, dim_mlp=self.dim_mlp, dropout=0.0)\n                                    for _ in range(self.n_layers)])\n\n        # logits_predict head\n        self.idx_pred_layer = nn.Sequential(\n            nn.LayerNorm(dim_embd),\n            nn.Linear(dim_embd, codebook_size, bias=False))\n\n        self.channels = {\n            '16': 512,\n            '32': 256,\n            '64': 256,\n            '128': 128,\n            '256': 128,\n            '512': 64,\n        }\n\n        # after second residual block for > 16, before attn layer for ==16\n        self.fuse_encoder_block = {'512':2, '256':5, '128':8, '64':11, '32':14, '16':18}\n        # after first residual block for > 16, before attn layer for ==16\n        self.fuse_generator_block = {'16':6, '32': 9, '64':12, '128':15, '256':18, '512':21}\n\n        # fuse_convs_dict\n        self.fuse_convs_dict = nn.ModuleDict()\n        for f_size in self.connect_list:\n            in_ch = self.channels[f_size]\n            self.fuse_convs_dict[f_size] = Fuse_sft_block(in_ch, in_ch)\n\n    def _init_weights(self, module):\n        if isinstance(module, (nn.Linear, nn.Embedding)):\n            module.weight.data.normal_(mean=0.0, std=0.02)\n            if isinstance(module, nn.Linear) and module.bias is not None:\n                module.bias.data.zero_()\n        elif isinstance(module, nn.LayerNorm):\n            module.bias.data.zero_()\n            module.weight.data.fill_(1.0)\n\n    def forward(self, x, w=0, detach_16=True, code_only=False, adain=False):\n        # ################### Encoder #####################\n        enc_feat_dict = {}\n        out_list = [self.fuse_encoder_block[f_size] for f_size in self.connect_list]\n        for i, block in enumerate(self.encoder.blocks):\n            x = block(x)\n            if i in out_list:\n                enc_feat_dict[str(x.shape[-1])] = x.clone()\n\n        lq_feat = x\n        # ################# Transformer ###################\n        # quant_feat, codebook_loss, quant_stats = self.quantize(lq_feat)\n        pos_emb = self.position_emb.unsqueeze(1).repeat(1,x.shape[0],1)\n        # BCHW -> BC(HW) -> (HW)BC\n        feat_emb = self.feat_emb(lq_feat.flatten(2).permute(2,0,1))\n        query_emb = feat_emb\n        # Transformer encoder\n        for layer in self.ft_layers:\n            query_emb = layer(query_emb, query_pos=pos_emb)\n\n        # output logits\n        logits = self.idx_pred_layer(query_emb) # (hw)bn\n        logits = logits.permute(1,0,2) # (hw)bn -> b(hw)n\n\n        if code_only: # for training stage II\n          # logits doesn't need softmax before cross_entropy loss\n            return logits, lq_feat\n\n        # ################# Quantization ###################\n        # if self.training:\n        #     quant_feat = torch.einsum('btn,nc->btc', [soft_one_hot, self.quantize.embedding.weight])\n        #     # b(hw)c -> bc(hw) -> bchw\n        #     quant_feat = quant_feat.permute(0,2,1).view(lq_feat.shape)\n        # ------------\n        soft_one_hot = F.softmax(logits, dim=2)\n        _, top_idx = torch.topk(soft_one_hot, 1, dim=2)\n        quant_feat = self.quantize.get_codebook_feat(top_idx, shape=[x.shape[0],16,16,256])\n        # preserve gradients\n        # quant_feat = lq_feat + (quant_feat - lq_feat).detach()\n\n        if detach_16:\n            quant_feat = quant_feat.detach() # for training stage III\n        if adain:\n            quant_feat = adaptive_instance_normalization(quant_feat, lq_feat)\n\n        # ################## Generator ####################\n        x = quant_feat\n        fuse_list = [self.fuse_generator_block[f_size] for f_size in self.connect_list]\n\n        for i, block in enumerate(self.generator.blocks):\n            x = block(x)\n            if i in fuse_list: # fuse after i-th block\n                f_size = str(x.shape[-1])\n                if w>0:\n                    x = self.fuse_convs_dict[f_size](enc_feat_dict[f_size].detach(), x, w)\n        out = x\n        # logits doesn't need softmax before cross_entropy loss\n        return out, logits, lq_feat\n"
  },
  {
    "path": "modules/postprocess/codeformer_model.py",
    "content": "import os\nimport cv2\nimport torch\nimport modules.detailer\nfrom modules import shared, devices, modelloader, errors\nfrom modules.paths import models_path\n\n\n# codeformer people made a choice to include modified basicsr library to their project which makes\n# it utterly impossible to use it alongside with other libraries that also use basicsr, like GFPGAN.\n# I am making a choice to include some files from codeformer to work around this issue.\nmodel_dir = \"Codeformer\"\nmodel_path = os.path.join(models_path, model_dir)\nmodel_url = 'https://github.com/sczhou/CodeFormer/releases/download/v0.1.0/codeformer.pth'\n\nhave_codeformer = False\ncodeformer = None\n\n\ndef setup_model(dirname):\n    try:\n        if not os.path.exists(model_path):\n            os.makedirs(model_path)\n    except Exception:\n        pass\n\n    try:\n        class FaceRestorerCodeFormer(modules.detailer.Detailer):\n            def name(self):\n                return \"CodeFormer\"\n\n            def __init__(self, dirname):\n                self.net = None\n                self.face_helper = None\n                self.cmd_dir = dirname\n\n            def create_models(self):\n                try:\n                    from modules.postprocess.codeformer_arch import CodeFormer\n                    from modules.facelib.utils.face_restoration_helper import FaceRestoreHelper\n                    from modules.facelib.detection.retinaface import retinaface\n                except Exception as e:\n                    shared.log.error(f\"CodeFormer error: {e}\")\n                    errors.display(e, 'codeformer')\n                    return None, None\n                if self.net is not None and self.face_helper is not None:\n                    self.net.to(devices.device)\n                    return self.net, self.face_helper\n                model_paths = modelloader.load_models(model_path, model_url, self.cmd_dir, download_name='codeformer-v0.1.0.pth', ext_filter=['.pth'])\n                if len(model_paths) != 0:\n                    ckpt_path = model_paths[0]\n                else:\n                    shared.log.error(f\"Model failed loading: type=CodeFormer model={model_path}\")\n                    return None, None\n                net = CodeFormer(dim_embd=512, codebook_size=1024, n_head=8, n_layers=9, connect_list=['32', '64', '128', '256']).to(devices.device)\n                checkpoint = torch.load(ckpt_path)['params_ema']\n                net.load_state_dict(checkpoint)\n                net.eval()\n                shared.log.info(f\"Model loaded: type=CodeFormer model={ckpt_path}\")\n                if hasattr(retinaface, 'device'):\n                    retinaface.device = devices.device\n                face_helper = FaceRestoreHelper(1, face_size=512, crop_ratio=(1, 1), det_model='retinaface_resnet50', save_ext='png', use_parse=True, device=devices.device)\n                self.net = net\n                self.face_helper = face_helper\n                return net, face_helper\n\n            def send_model_to(self, device):\n                self.net.to(device)\n                self.face_helper.face_det.to(device) # pylint: disable=no-member\n                self.face_helper.face_parse.to(device)\n\n            def restore(self, np_image, p=None, w=None): # pylint: disable=unused-argument\n                from torchvision.transforms.functional import normalize\n                from basicsr.utils import img2tensor, tensor2img\n                np_image = np_image[:, :, ::-1]\n                original_resolution = np_image.shape[0:2]\n                self.create_models()\n                if self.net is None or self.face_helper is None:\n                    return np_image\n                self.send_model_to(devices.device)\n                self.face_helper.clean_all()\n                self.face_helper.read_image(np_image)\n                self.face_helper.get_face_landmarks_5(only_center_face=False, resize=640, eye_dist_threshold=5)\n                self.face_helper.align_warp_face()\n                for cropped_face in self.face_helper.cropped_faces:\n                    cropped_face_t = img2tensor(cropped_face / 255., bgr2rgb=True, float32=True)\n                    normalize(cropped_face_t, (0.5, 0.5, 0.5), (0.5, 0.5, 0.5), inplace=True)\n                    cropped_face_t = cropped_face_t.unsqueeze(0).to(devices.device)\n                    try:\n                        with devices.inference_context():\n                            output = self.net(cropped_face_t, w=w if w is not None else shared.opts.code_former_weight, adain=True)[0] # pylint: disable=not-callable\n                            restored_face = tensor2img(output, rgb2bgr=True, min_max=(-1, 1))\n                        del output\n                        devices.torch_gc()\n                    except Exception as e:\n                        shared.log.error(f'CodeFormer error: {e}')\n                        restored_face = tensor2img(cropped_face_t, rgb2bgr=True, min_max=(-1, 1))\n                    restored_face = restored_face.astype('uint8')\n                    self.face_helper.add_restored_face(restored_face)\n                self.face_helper.get_inverse_affine(None)\n                restored_img = self.face_helper.paste_faces_to_input_image()\n                restored_img = restored_img[:, :, ::-1]\n                if original_resolution != restored_img.shape[0:2]:\n                    restored_img = cv2.resize(restored_img, (0, 0), fx=original_resolution[1]/restored_img.shape[1], fy=original_resolution[0]/restored_img.shape[0], interpolation=cv2.INTER_LANCZOS4)\n                self.face_helper.clean_all()\n                if shared.opts.detailer_unload:\n                    self.send_model_to(devices.cpu)\n                return restored_img\n\n        global have_codeformer # pylint: disable=global-statement\n        have_codeformer = True\n        global codeformer # pylint: disable=global-statement\n        codeformer = FaceRestorerCodeFormer(dirname)\n        shared.face_restorers.append(codeformer)\n\n    except Exception as e:\n        errors.display(e, 'codeformer')\n"
  },
  {
    "path": "modules/postprocess/dcc.py",
    "content": "import numpy as np\n\n\ndef DetectDirect(A, dcc_type, k, T):\n    if dcc_type == 1:\n        # 45 degree diagonal direction\n        t1 = abs(A[2,0]-A[0,2])\n        t2 = abs(A[4,0]-A[2,2])+abs(A[2,2]-A[0,4])\n        t3 = abs(A[6,0]-A[4,2])+abs(A[4,2]-A[2,4])+abs(A[2,4]-A[0,6])\n        t4 = abs(A[6,2]-A[4,4])+abs(A[4,4]-A[2,6])\n        t5 = abs(A[6,4]-A[4,6])\n        d1 = t1+t2+t3+t4+t5\n\n        # 135 degree diagonal direction\n        t1 = abs(A[0,4]-A[2,6])\n        t2 = abs(A[0,2]-A[2,4])+abs(A[2,4]-A[4,6])\n        t3 = abs(A[0,0]-A[2,2])+abs(A[2,2]-A[4,4])+abs(A[4,4]-A[6,6])\n        t4 = abs(A[2,0]-A[4,2])+abs(A[4,2]-A[6,4])\n        t5 = abs(A[4,0]-A[6,2])\n        d2 = t1+t2+t3+t4+t5\n    else:\n        # horizontal direction\n        t1 = abs(A[0,1]-A[0,3])+abs(A[2,1]-A[2,3])+abs(A[4,1]-A[4,3])\n        t2 = abs(A[1,0]-A[1,2])+abs(A[1,2]-A[1,4])\n        t3 = abs(A[3,0]-A[3,2])+abs(A[3,2]-A[3,4])\n        d1 = t1+t2+t3\n\n        # vertical direction\n        t1 = abs(A[1,0]-A[3,0])+abs(A[1,2]-A[3,2])+abs(A[1,4]-A[3,4])\n        t2 = abs(A[0,1]-A[2,1])+abs(A[2,1]-A[4,1])\n        t3 = abs(A[0,3]-A[2,3])+abs(A[2,3]-A[4,3])\n        d2 = t1+t2+t3\n    # Compute the weight vector\n    w = np.array([1/(1+d1**k), 1/(1+d2**k)])\n    # Compute the directional index\n    n = 3\n    if (1+d1)/(1+d2) > T:\n        n = 1\n    elif (1+d2)/(1+d1) > T:\n        n = 2\n    return w, n\n\ndef PixelValue(A, mode, w, n, f):\n    if mode == 1:\n        v1 = np.diag(np.fliplr(A))[::2]\n        v2 = np.diag(A)[::2]\n    else:\n        v1 =  A[3,::2]\n        v2 =  A[::2,3]\n    if n == 1:\n        p = np.dot(v2, f)\n    elif n == 2:\n        p = np.dot(v1, f)\n    else:\n        p1 = np.dot(v1, f)\n        p2 = np.dot(v2, f)\n        p = (w[0]*p1+w[1]*p2)/(w[0]+w[1])\n    return p\n\ndef PadLeftTop(img_pad, H, W):\n    img = img_pad[3:-3,3:-3]\n    # Pad the first/last three col and row\n    img_pad[3:H+3,1]=img[:,0]\n    img_pad[H+3::2,3:W+3]=img[H-2:H-1,:]\n    img_pad[3:H+3,W+3::2]=img[:,W-2:W-1]\n    img_pad[1,3:W+3]=img[0,:]\n    # Pad the missing nine points\n    img_pad[1,1]=img[0,0]\n    img_pad[H+3::2,1]=img[H-2,0]\n    img_pad[H+3::2,W+3::2]=img[H-2,W-2]\n    img_pad[1,W+3::2]=img[0,W-2]\n    return img_pad\n\ndef PadRightBottom(img_pad, H, W):\n    img = img_pad[3:-3,3:-3]\n    # Pad the first/last three col and row\n    img_pad[3:H+3,0:3:2]=img[:,1:2]\n    img_pad[H+4::2,3:W+3]=img[H-1:H,:]\n    img_pad[3:H+3,W+4::2]=img[:,W-1:W]\n    img_pad[0:3:2,3:W+3]=img[1,:]\n    # Pad the missing nine points\n    img_pad[0:3:2,0:3:2]=img[1,1]\n    img_pad[H+4,0:3:2]=img[H-1,1]\n    img_pad[H+4,W+4]=img[H-1,W-1]\n    img_pad[0:3:2,W+4]=img[0,W-1]\n    return img_pad\n\ndef _DCC(I, k, T):\n    m, n = I.shape\n    nRow = 2*m\n    nCol = 2*n\n    A = np.zeros([nRow+6, nCol+6])\n    A[0+3:-1-3:2, 0+3:-1-3:2] = I\n    A = PadLeftTop(A, nRow, nCol)\n    f = np.array([-1, 9, 9, -1])/16\n    for i in range(4,nRow+3,2):\n        for j in range(4,nCol+3,2):\n            [w,n] = DetectDirect(A[i-3:i+4,j-3:j+4],1,k,T)\n            A[i,j] = PixelValue(A[i-3:i+4,j-3:j+4],1,w,n,f)\n    A = PadRightBottom(A, nRow, nCol)\n    for i in range(3,nRow+3,2):\n        for j in range(4,nCol+3,2):\n            [w,n] = DetectDirect(A[i-2:i+3,j-2:j+3],2,k,T)\n            A[i,j] = PixelValue(A[i-3:i+4,j-3:j+4],2,w,n,f)\n    for i in range(4,nRow+3,2):\n        for j in range(3,nCol+3,2):\n            [w,n] = DetectDirect(A[i-2:i+3,j-2:j+3],3,k,T)\n            A[i,j] = PixelValue(A[i-3:i+4,j-3:j+4],3,w,n,f)\n    return A[3:-3,3:-3]\n\n\n'''\nimg: Shape[H,W,C], Value Range[0-1]\nlevel: super resolution level\nReturn: super resolution img who shape is the same with input\n'''\ndef DCC(img, level):\n    # hyper parameters\n    k, T = 5, 1.15\n    sr_img = img\n    # get the high resolution image channel by channel\n    for channel in range(img.shape[-1]):\n        sr_img_simple = img[:,:,channel]\n        for _ in range(level):\n            sr_img_simple  = _DCC(sr_img_simple, k, T)\n        sr_img[:,:,channel] = sr_img_simple\n    return sr_img\n"
  },
  {
    "path": "modules/postprocess/esrgan_model.py",
    "content": "import numpy as np\nimport torch\nfrom PIL import Image\nfrom rich.progress import Progress, TextColumn, BarColumn, TaskProgressColumn, TimeRemainingColumn, TimeElapsedColumn\nimport modules.postprocess.esrgan_model_arch as arch\nfrom modules import images, devices, shared\nfrom modules.upscaler import Upscaler, UpscalerData, compile_upscaler\n\n\ndef mod2normal(state_dict):\n    # this code is copied from https://github.com/victorca25/iNNfer\n    if 'conv_first.weight' in state_dict:\n        crt_net = {}\n        items = list(state_dict)\n\n        crt_net['model.0.weight'] = state_dict['conv_first.weight']\n        crt_net['model.0.bias'] = state_dict['conv_first.bias']\n\n        for k in items.copy():\n            if 'RDB' in k:\n                ori_k = k.replace('RRDB_trunk.', 'model.1.sub.')\n                if '.weight' in k:\n                    ori_k = ori_k.replace('.weight', '.0.weight')\n                elif '.bias' in k:\n                    ori_k = ori_k.replace('.bias', '.0.bias')\n                crt_net[ori_k] = state_dict[k]\n                items.remove(k)\n\n        crt_net['model.1.sub.23.weight'] = state_dict['trunk_conv.weight']\n        crt_net['model.1.sub.23.bias'] = state_dict['trunk_conv.bias']\n        crt_net['model.3.weight'] = state_dict['upconv1.weight']\n        crt_net['model.3.bias'] = state_dict['upconv1.bias']\n        crt_net['model.6.weight'] = state_dict['upconv2.weight']\n        crt_net['model.6.bias'] = state_dict['upconv2.bias']\n        crt_net['model.8.weight'] = state_dict['HRconv.weight']\n        crt_net['model.8.bias'] = state_dict['HRconv.bias']\n        crt_net['model.10.weight'] = state_dict['conv_last.weight']\n        crt_net['model.10.bias'] = state_dict['conv_last.bias']\n        state_dict = crt_net\n    return state_dict\n\n\ndef resrgan2normal(state_dict, nb=23):\n    # this code is copied from https://github.com/victorca25/iNNfer\n    if \"conv_first.weight\" in state_dict and \"body.0.rdb1.conv1.weight\" in state_dict:\n        re8x = 0\n        crt_net = {}\n        items = list(state_dict)\n\n        crt_net['model.0.weight'] = state_dict['conv_first.weight']\n        crt_net['model.0.bias'] = state_dict['conv_first.bias']\n\n        for k in items.copy():\n            if \"rdb\" in k:\n                ori_k = k.replace('body.', 'model.1.sub.')\n                ori_k = ori_k.replace('.rdb', '.RDB')\n                if '.weight' in k:\n                    ori_k = ori_k.replace('.weight', '.0.weight')\n                elif '.bias' in k:\n                    ori_k = ori_k.replace('.bias', '.0.bias')\n                crt_net[ori_k] = state_dict[k]\n                items.remove(k)\n\n        crt_net[f'model.1.sub.{nb}.weight'] = state_dict['conv_body.weight']\n        crt_net[f'model.1.sub.{nb}.bias'] = state_dict['conv_body.bias']\n        crt_net['model.3.weight'] = state_dict['conv_up1.weight']\n        crt_net['model.3.bias'] = state_dict['conv_up1.bias']\n        crt_net['model.6.weight'] = state_dict['conv_up2.weight']\n        crt_net['model.6.bias'] = state_dict['conv_up2.bias']\n\n        if 'conv_up3.weight' in state_dict:\n            # modification supporting: https://github.com/ai-forever/Real-ESRGAN/blob/main/RealESRGAN/rrdbnet_arch.py\n            re8x = 3\n            crt_net['model.9.weight'] = state_dict['conv_up3.weight']\n            crt_net['model.9.bias'] = state_dict['conv_up3.bias']\n\n        crt_net[f'model.{8+re8x}.weight'] = state_dict['conv_hr.weight']\n        crt_net[f'model.{8+re8x}.bias'] = state_dict['conv_hr.bias']\n        crt_net[f'model.{10+re8x}.weight'] = state_dict['conv_last.weight']\n        crt_net[f'model.{10+re8x}.bias'] = state_dict['conv_last.bias']\n\n        state_dict = crt_net\n    return state_dict\n\n\ndef infer_params(state_dict):\n    # this code is copied from https://github.com/victorca25/iNNfer\n    scale2x = 0\n    scalemin = 6\n    n_uplayer = 0\n    plus = False\n\n    for block in list(state_dict):\n        parts = block.split(\".\")\n        n_parts = len(parts)\n        if n_parts == 5 and parts[2] == \"sub\":\n            nb = int(parts[3])\n        elif n_parts == 3:\n            part_num = int(parts[1])\n            if (part_num > scalemin\n                and parts[0] == \"model\"\n                and parts[2] == \"weight\"):\n                scale2x += 1\n            if part_num > n_uplayer:\n                n_uplayer = part_num\n                out_nc = state_dict[block].shape[0]\n        if not plus and \"conv1x1\" in block:\n            plus = True\n\n    nf = state_dict[\"model.0.weight\"].shape[0]\n    in_nc = state_dict[\"model.0.weight\"].shape[1]\n    # out_nc = out_nc\n    scale = 2 ** scale2x\n\n    return in_nc, out_nc, nf, nb, plus, scale\n\n\nclass UpscalerESRGAN(Upscaler):\n    def __init__(self, dirname):\n        self.name = \"ESRGAN\"\n        self.user_path = dirname\n        super().__init__()\n        self.scalers = self.find_scalers()\n        self.models = {}\n\n    def do_upscale(self, img, selected_model):\n        model = self.load_model(selected_model)\n        if model is None:\n            return img\n        model.to(devices.device)\n        img = esrgan_upscale(model, img)\n        if shared.opts.upscaler_unload and selected_model in self.models:\n            del self.models[selected_model]\n            shared.log.debug(f\"Upscaler unloaded: type={self.name} model={selected_model}\")\n            devices.torch_gc(force=True)\n        return img\n\n    def load_model(self, path: str):\n        info: UpscalerData = self.find_model(path)\n        if info is None:\n            return\n        if self.models.get(info.local_data_path, None) is not None:\n            shared.log.debug(f\"Upscaler cached: type={self.name} model={info.local_data_path}\")\n            return self.models[info.local_data_path]\n        state_dict = torch.load(info.local_data_path, map_location='cpu' if devices.device.type in {'mps', 'cpu'} else None)\n        shared.log.info(f\"Upscaler loaded: type={self.name} model={info.local_data_path}\")\n\n        if \"params_ema\" in state_dict:\n            state_dict = state_dict[\"params_ema\"]\n        elif \"params\" in state_dict:\n            state_dict = state_dict[\"params\"]\n            num_conv = 16 if \"realesr-animevideov3\" in info.local_data_path else 32\n            model = arch.SRVGGNetCompact(num_in_ch=3, num_out_ch=3, num_feat=64, num_conv=num_conv, upscale=4, act_type='prelu')\n            model.load_state_dict(state_dict)\n            model.eval()\n            model = compile_upscaler(model)\n            self.models[info.local_data_path] = model\n            return self.models[info.local_data_path]\n\n        if \"body.0.rdb1.conv1.weight\" in state_dict and \"conv_first.weight\" in state_dict:\n            nb = 6 if \"RealESRGAN_x4plus_anime_6B\" in info.local_data_path else 23\n            state_dict = resrgan2normal(state_dict, nb)\n        elif \"conv_first.weight\" in state_dict:\n            state_dict = mod2normal(state_dict)\n        elif \"model.0.weight\" not in state_dict:\n            raise TypeError(\"The file is not a recognized ESRGAN model.\")\n        in_nc, out_nc, nf, nb, plus, mscale = infer_params(state_dict)\n        model = arch.RRDBNet(in_nc=in_nc, out_nc=out_nc, nf=nf, nb=nb, upscale=mscale, plus=plus)\n        model.load_state_dict(state_dict)\n        model.eval()\n        model = compile_upscaler(model)\n        self.models[info.local_data_path] = model\n        return self.models[info.local_data_path]\n\n\ndef upscale_without_tiling(model, img):\n    img = np.array(img)\n    img = img[:, :, ::-1]\n    img = np.ascontiguousarray(np.transpose(img, (2, 0, 1))) / 255\n    img = torch.from_numpy(img).float()\n    img = img.unsqueeze(0).to(devices.device)\n    with devices.inference_context():\n        output = model(img)\n    output = output.squeeze().float().cpu().clamp_(0, 1).detach().numpy()\n    output = 255. * np.moveaxis(output, 0, 2)\n    output = output.astype(np.uint8)\n    output = output[:, :, ::-1]\n    return Image.fromarray(output, 'RGB')\n\n\ndef esrgan_upscale(model, img):\n    if shared.opts.upscaler_tile_size == 0:\n        return upscale_without_tiling(model, img)\n\n    grid = images.split_grid(img, shared.opts.upscaler_tile_size, shared.opts.upscaler_tile_size, shared.opts.upscaler_tile_overlap)\n    newtiles = []\n    scale_factor = 1\n\n    with Progress(TextColumn('[cyan]{task.description}'), BarColumn(), TaskProgressColumn(), TimeRemainingColumn(), TimeElapsedColumn(), console=shared.console) as progress:\n        total = 0\n        for _y, _h, row in grid.tiles:\n            total += len(row)\n        task = progress.add_task(description=\"Upscaling\", total=total)\n        for y, h, row in grid.tiles:\n            if shared.state.interrupted:\n                break\n            newrow = []\n            for tiledata in row:\n                if shared.state.interrupted:\n                    break\n                x, w, tile = tiledata\n                output = upscale_without_tiling(model, tile)\n                scale_factor = output.width // tile.width\n                newrow.append([x * scale_factor, w * scale_factor, output])\n                progress.update(task, advance=1, description=\"Upscaling\")\n            newtiles.append([y * scale_factor, h * scale_factor, newrow])\n\n    newgrid = images.Grid(newtiles, grid.tile_w * scale_factor, grid.tile_h * scale_factor, grid.image_w * scale_factor, grid.image_h * scale_factor, grid.overlap * scale_factor)\n    output = images.combine_grid(newgrid)\n    return output\n"
  },
  {
    "path": "modules/postprocess/esrgan_model_arch.py",
    "content": "# this file is adapted from https://github.com/victorca25/iNNfer\n\nimport math\nimport torch\nimport torch.nn as nn\nimport torch.nn.functional as F\n\n\n####################\n# RRDBNet Generator\n####################\n\nclass RRDBNet(nn.Module):\n    def __init__(self, in_nc, out_nc, nf, nb, nr=3, gc=32, upscale=4, norm_type=None,\n            act_type='leakyrelu', mode='CNA', upsample_mode='upconv', convtype='Conv2D',\n            finalact=None, gaussian_noise=False, plus=False):\n        super(RRDBNet, self).__init__()\n        n_upscale = int(math.log(upscale, 2))\n        if upscale == 3:\n            n_upscale = 1\n\n        self.resrgan_scale = 0\n        if in_nc % 16 == 0:\n            self.resrgan_scale = 1\n        elif in_nc != 4 and in_nc % 4 == 0:\n            self.resrgan_scale = 2\n\n        fea_conv = conv_block(in_nc, nf, kernel_size=3, norm_type=None, act_type=None, convtype=convtype)\n        rb_blocks = [RRDB(nf, nr, kernel_size=3, gc=32, stride=1, bias=1, pad_type='zero',\n            norm_type=norm_type, act_type=act_type, mode='CNA', convtype=convtype,\n            gaussian_noise=gaussian_noise, plus=plus) for _ in range(nb)]\n        LR_conv = conv_block(nf, nf, kernel_size=3, norm_type=norm_type, act_type=None, mode=mode, convtype=convtype)\n\n        if upsample_mode == 'upconv':\n            upsample_block = upconv_block\n        elif upsample_mode == 'pixelshuffle':\n            upsample_block = pixelshuffle_block\n        else:\n            raise NotImplementedError(f'upsample mode [{upsample_mode}] is not found')\n        if upscale == 3:\n            upsampler = upsample_block(nf, nf, 3, act_type=act_type, convtype=convtype)\n        else:\n            upsampler = [upsample_block(nf, nf, act_type=act_type, convtype=convtype) for _ in range(n_upscale)]\n        HR_conv0 = conv_block(nf, nf, kernel_size=3, norm_type=None, act_type=act_type, convtype=convtype)\n        HR_conv1 = conv_block(nf, out_nc, kernel_size=3, norm_type=None, act_type=None, convtype=convtype)\n\n        outact = act(finalact) if finalact else None\n\n        self.model = sequential(fea_conv, ShortcutBlock(sequential(*rb_blocks, LR_conv)),\n            *upsampler, HR_conv0, HR_conv1, outact)\n\n    def forward(self, x, outm=None):\n        if self.resrgan_scale == 1:\n            feat = pixel_unshuffle(x, scale=4)\n        elif self.resrgan_scale == 2:\n            feat = pixel_unshuffle(x, scale=2)\n        else:\n            feat = x\n\n        return self.model(feat)\n\n\nclass RRDB(nn.Module):\n    \"\"\"\n    Residual in Residual Dense Block\n    (ESRGAN: Enhanced Super-Resolution Generative Adversarial Networks)\n    \"\"\"\n\n    def __init__(self, nf, nr=3, kernel_size=3, gc=32, stride=1, bias=1, pad_type='zero',\n            norm_type=None, act_type='leakyrelu', mode='CNA', convtype='Conv2D',\n            spectral_norm=False, gaussian_noise=False, plus=False):\n        super(RRDB, self).__init__()\n        # This is for backwards compatibility with existing models\n        if nr == 3:\n            self.RDB1 = ResidualDenseBlock_5C(nf, kernel_size, gc, stride, bias, pad_type,\n                    norm_type, act_type, mode, convtype, spectral_norm=spectral_norm,\n                    gaussian_noise=gaussian_noise, plus=plus)\n            self.RDB2 = ResidualDenseBlock_5C(nf, kernel_size, gc, stride, bias, pad_type,\n                    norm_type, act_type, mode, convtype, spectral_norm=spectral_norm,\n                    gaussian_noise=gaussian_noise, plus=plus)\n            self.RDB3 = ResidualDenseBlock_5C(nf, kernel_size, gc, stride, bias, pad_type,\n                    norm_type, act_type, mode, convtype, spectral_norm=spectral_norm,\n                    gaussian_noise=gaussian_noise, plus=plus)\n        else:\n            RDB_list = [ResidualDenseBlock_5C(nf, kernel_size, gc, stride, bias, pad_type,\n                                              norm_type, act_type, mode, convtype, spectral_norm=spectral_norm,\n                                              gaussian_noise=gaussian_noise, plus=plus) for _ in range(nr)]\n            self.RDBs = nn.Sequential(*RDB_list)\n\n    def forward(self, x):\n        if hasattr(self, 'RDB1'):\n            out = self.RDB1(x)\n            out = self.RDB2(out)\n            out = self.RDB3(out)\n        else:\n            out = self.RDBs(x)\n        return out * 0.2 + x\n\n\nclass ResidualDenseBlock_5C(nn.Module):\n    \"\"\"\n    Residual Dense Block\n    The core module of paper: (Residual Dense Network for Image Super-Resolution, CVPR 18)\n    Modified options that can be used:\n        - \"Partial Convolution based Padding\" arXiv:1811.11718\n        - \"Spectral normalization\" arXiv:1802.05957\n        - \"ICASSP 2020 - ESRGAN+ : Further Improving ESRGAN\" N. C.\n            {Rakotonirina} and A. {Rasoanaivo}\n    \"\"\"\n\n    def __init__(self, nf=64, kernel_size=3, gc=32, stride=1, bias=1, pad_type='zero',\n            norm_type=None, act_type='leakyrelu', mode='CNA', convtype='Conv2D',\n            spectral_norm=False, gaussian_noise=False, plus=False):\n        super(ResidualDenseBlock_5C, self).__init__()\n\n        self.noise = GaussianNoise() if gaussian_noise else None\n        self.conv1x1 = conv1x1(nf, gc) if plus else None\n\n        self.conv1 = conv_block(nf, gc, kernel_size, stride, bias=bias, pad_type=pad_type,\n            norm_type=norm_type, act_type=act_type, mode=mode, convtype=convtype,\n            spectral_norm=spectral_norm)\n        self.conv2 = conv_block(nf+gc, gc, kernel_size, stride, bias=bias, pad_type=pad_type,\n            norm_type=norm_type, act_type=act_type, mode=mode, convtype=convtype,\n            spectral_norm=spectral_norm)\n        self.conv3 = conv_block(nf+2*gc, gc, kernel_size, stride, bias=bias, pad_type=pad_type,\n            norm_type=norm_type, act_type=act_type, mode=mode, convtype=convtype,\n            spectral_norm=spectral_norm)\n        self.conv4 = conv_block(nf+3*gc, gc, kernel_size, stride, bias=bias, pad_type=pad_type,\n            norm_type=norm_type, act_type=act_type, mode=mode, convtype=convtype,\n            spectral_norm=spectral_norm)\n        if mode == 'CNA':\n            last_act = None\n        else:\n            last_act = act_type\n        self.conv5 = conv_block(nf+4*gc, nf, 3, stride, bias=bias, pad_type=pad_type,\n            norm_type=norm_type, act_type=last_act, mode=mode, convtype=convtype,\n            spectral_norm=spectral_norm)\n\n    def forward(self, x):\n        x1 = self.conv1(x)\n        x2 = self.conv2(torch.cat((x, x1), 1))\n        if self.conv1x1:\n            x2 = x2 + self.conv1x1(x)\n        x3 = self.conv3(torch.cat((x, x1, x2), 1))\n        x4 = self.conv4(torch.cat((x, x1, x2, x3), 1))\n        if self.conv1x1:\n            x4 = x4 + x2\n        x5 = self.conv5(torch.cat((x, x1, x2, x3, x4), 1))\n        if self.noise:\n            return self.noise(x5.mul(0.2) + x)\n        else:\n            return x5 * 0.2 + x\n\n\n####################\n# ESRGANplus\n####################\n\nclass GaussianNoise(nn.Module):\n    def __init__(self, sigma=0.1, is_relative_detach=False):\n        super().__init__()\n        self.sigma = sigma\n        self.is_relative_detach = is_relative_detach\n        self.noise = torch.tensor(0, dtype=torch.float)\n\n    def forward(self, x):\n        if self.training and self.sigma != 0:\n            self.noise = self.noise.to(x.device)\n            scale = self.sigma * x.detach() if self.is_relative_detach else self.sigma * x\n            sampled_noise = self.noise.repeat(*x.size()).normal_() * scale\n            x = x + sampled_noise\n        return x\n\ndef conv1x1(in_planes, out_planes, stride=1):\n    return nn.Conv2d(in_planes, out_planes, kernel_size=1, stride=stride, bias=False)\n\n\n####################\n# SRVGGNetCompact\n####################\n\nclass SRVGGNetCompact(nn.Module):\n    \"\"\"A compact VGG-style network structure for super-resolution.\n    This class is copied from https://github.com/xinntao/Real-ESRGAN\n    \"\"\"\n\n    def __init__(self, num_in_ch=3, num_out_ch=3, num_feat=64, num_conv=16, upscale=4, act_type='prelu'):\n        super(SRVGGNetCompact, self).__init__()\n        self.num_in_ch = num_in_ch\n        self.num_out_ch = num_out_ch\n        self.num_feat = num_feat\n        self.num_conv = num_conv\n        self.upscale = upscale\n        self.act_type = act_type\n\n        self.body = nn.ModuleList()\n        # the first conv\n        self.body.append(nn.Conv2d(num_in_ch, num_feat, 3, 1, 1))\n        # the first activation\n        if act_type == 'relu':\n            activation = nn.ReLU(inplace=True)\n        elif act_type == 'prelu':\n            activation = nn.PReLU(num_parameters=num_feat)\n        elif act_type == 'leakyrelu':\n            activation = nn.LeakyReLU(negative_slope=0.1, inplace=True)\n        self.body.append(activation)\n\n        # the body structure\n        for _ in range(num_conv):\n            self.body.append(nn.Conv2d(num_feat, num_feat, 3, 1, 1))\n            # activation\n            if act_type == 'relu':\n                activation = nn.ReLU(inplace=True)\n            elif act_type == 'prelu':\n                activation = nn.PReLU(num_parameters=num_feat)\n            elif act_type == 'leakyrelu':\n                activation = nn.LeakyReLU(negative_slope=0.1, inplace=True)\n            self.body.append(activation)\n\n        # the last conv\n        self.body.append(nn.Conv2d(num_feat, num_out_ch * upscale * upscale, 3, 1, 1))\n        # upsample\n        self.upsampler = nn.PixelShuffle(upscale)\n\n    def forward(self, x):\n        out = x\n        for i in range(0, len(self.body)):\n            out = self.body[i](out)\n\n        out = self.upsampler(out)\n        # add the nearest upsampled image, so that the network learns the residual\n        base = F.interpolate(x, scale_factor=self.upscale, mode='nearest')\n        out += base\n        return out\n\n\n####################\n# Upsampler\n####################\n\nclass Upsample(nn.Module):\n    r\"\"\"Upsamples a given multi-channel 1D (temporal), 2D (spatial) or 3D (volumetric) data.\n    The input data is assumed to be of the form\n    `minibatch x channels x [optional depth] x [optional height] x width`.\n    \"\"\"\n\n    def __init__(self, size=None, scale_factor=None, mode=\"nearest\", align_corners=None):\n        super(Upsample, self).__init__()\n        if isinstance(scale_factor, tuple):\n            self.scale_factor = tuple(float(factor) for factor in scale_factor)\n        else:\n            self.scale_factor = float(scale_factor) if scale_factor else None\n        self.mode = mode\n        self.size = size\n        self.align_corners = align_corners\n\n    def forward(self, x):\n        return nn.functional.interpolate(x, size=self.size, scale_factor=self.scale_factor, mode=self.mode, align_corners=self.align_corners)\n\n    def extra_repr(self):\n        if self.scale_factor is not None:\n            info = f'scale_factor={self.scale_factor}'\n        else:\n            info = f'size={self.size}'\n        info += f', mode={self.mode}'\n        return info\n\n\ndef pixel_unshuffle(x, scale):\n    \"\"\" Pixel unshuffle.\n    Args:\n        x (Tensor): Input feature with shape (b, c, hh, hw).\n        scale (int): Downsample ratio.\n    Returns:\n        Tensor: the pixel unshuffled feature.\n    \"\"\"\n    b, c, hh, hw = x.size()\n    out_channel = c * (scale**2)\n    assert hh % scale == 0 and hw % scale == 0\n    h = hh // scale\n    w = hw // scale\n    x_view = x.view(b, c, h, scale, w, scale)\n    return x_view.permute(0, 1, 3, 5, 2, 4).reshape(b, out_channel, h, w)\n\n\ndef pixelshuffle_block(in_nc, out_nc, upscale_factor=2, kernel_size=3, stride=1, bias=True,\n                        pad_type='zero', norm_type=None, act_type='relu', convtype='Conv2D'):\n    \"\"\"\n    Pixel shuffle layer\n    (Real-Time Single Image and Video Super-Resolution Using an Efficient Sub-Pixel Convolutional\n    Neural Network, CVPR17)\n    \"\"\"\n    conv = conv_block(in_nc, out_nc * (upscale_factor ** 2), kernel_size, stride, bias=bias,\n                        pad_type=pad_type, norm_type=None, act_type=None, convtype=convtype)\n    pixel_shuffle = nn.PixelShuffle(upscale_factor)\n\n    n = norm(norm_type, out_nc) if norm_type else None\n    a = act(act_type) if act_type else None\n    return sequential(conv, pixel_shuffle, n, a)\n\n\ndef upconv_block(in_nc, out_nc, upscale_factor=2, kernel_size=3, stride=1, bias=True,\n                pad_type='zero', norm_type=None, act_type='relu', mode='nearest', convtype='Conv2D'):\n    \"\"\" Upconv layer \"\"\"\n    upscale_factor = (1, upscale_factor, upscale_factor) if convtype == 'Conv3D' else upscale_factor\n    upsample = Upsample(scale_factor=upscale_factor, mode=mode)\n    conv = conv_block(in_nc, out_nc, kernel_size, stride, bias=bias,\n                        pad_type=pad_type, norm_type=norm_type, act_type=act_type, convtype=convtype)\n    return sequential(upsample, conv)\n\n\n\n\n\n\n\n\n####################\n# Basic blocks\n####################\n\n\ndef make_layer(basic_block, num_basic_block, **kwarg):\n    \"\"\"Make layers by stacking the same blocks.\n    Args:\n        basic_block (nn.module): nn.module class for basic block. (block)\n        num_basic_block (int): number of blocks. (n_layers)\n    Returns:\n        nn.Sequential: Stacked blocks in nn.Sequential.\n    \"\"\"\n    layers = []\n    for _ in range(num_basic_block):\n        layers.append(basic_block(**kwarg))\n    return nn.Sequential(*layers)\n\n\ndef act(act_type, inplace=True, neg_slope=0.2, n_prelu=1, beta=1.0):\n    \"\"\" activation helper \"\"\"\n    act_type = act_type.lower()\n    if act_type == 'relu':\n        layer = nn.ReLU(inplace)\n    elif act_type in ('leakyrelu', 'lrelu'):\n        layer = nn.LeakyReLU(neg_slope, inplace)\n    elif act_type == 'prelu':\n        layer = nn.PReLU(num_parameters=n_prelu, init=neg_slope)\n    elif act_type == 'tanh':  # [-1, 1] range output\n        layer = nn.Tanh()\n    elif act_type == 'sigmoid':  # [0, 1] range output\n        layer = nn.Sigmoid()\n    else:\n        raise NotImplementedError(f'activation layer [{act_type}] is not found')\n    return layer\n\n\nclass Identity(nn.Module):\n    def __init__(self, *kwargs):\n        super(Identity, self).__init__()\n\n    def forward(self, x, *kwargs):\n        return x\n\n\ndef norm(norm_type, nc):\n    \"\"\" Return a normalization layer \"\"\"\n    norm_type = norm_type.lower()\n    if norm_type == 'batch':\n        layer = nn.BatchNorm2d(nc, affine=True)\n    elif norm_type == 'instance':\n        layer = nn.InstanceNorm2d(nc, affine=False)\n    elif norm_type == 'none':\n        def norm_layer(x): return Identity()\n    else:\n        raise NotImplementedError(f'normalization layer [{norm_type}] is not found')\n    return layer\n\n\ndef pad(pad_type, padding):\n    \"\"\" padding layer helper \"\"\"\n    pad_type = pad_type.lower()\n    if padding == 0:\n        return None\n    if pad_type == 'reflect':\n        layer = nn.ReflectionPad2d(padding)\n    elif pad_type == 'replicate':\n        layer = nn.ReplicationPad2d(padding)\n    elif pad_type == 'zero':\n        layer = nn.ZeroPad2d(padding)\n    else:\n        raise NotImplementedError(f'padding layer [{pad_type}] is not implemented')\n    return layer\n\n\ndef get_valid_padding(kernel_size, dilation):\n    kernel_size = kernel_size + (kernel_size - 1) * (dilation - 1)\n    padding = (kernel_size - 1) // 2\n    return padding\n\n\nclass ShortcutBlock(nn.Module):\n    \"\"\" Elementwise sum the output of a submodule to its input \"\"\"\n    def __init__(self, submodule):\n        super(ShortcutBlock, self).__init__()\n        self.sub = submodule\n\n    def forward(self, x):\n        output = x + self.sub(x)\n        return output\n\n    def __repr__(self):\n        return 'Identity + \\n|' + self.sub.__repr__().replace('\\n', '\\n|')\n\n\ndef sequential(*args):\n    \"\"\" Flatten Sequential. It unwraps nn.Sequential. \"\"\"\n    if len(args) == 1:\n        from collections import OrderedDict\n        if isinstance(args[0], OrderedDict):\n            raise NotImplementedError('sequential does not support OrderedDict input.')\n        return args[0]  # No sequential is needed.\n    modules = []\n    for module in args:\n        if isinstance(module, nn.Sequential):\n            for submodule in module.children():\n                modules.append(submodule)\n        elif isinstance(module, nn.Module):\n            modules.append(module)\n    return nn.Sequential(*modules)\n\n\ndef conv_block(in_nc, out_nc, kernel_size, stride=1, dilation=1, groups=1, bias=True,\n               pad_type='zero', norm_type=None, act_type='relu', mode='CNA', convtype='Conv2D',\n               spectral_norm=False):\n    \"\"\" Conv layer with padding, normalization, activation \"\"\"\n    assert mode in ['CNA', 'NAC', 'CNAC'], f'Wrong conv mode [{mode}]'\n    padding = get_valid_padding(kernel_size, dilation)\n    p = pad(pad_type, padding) if pad_type and pad_type != 'zero' else None\n    padding = padding if pad_type == 'zero' else 0\n\n    if convtype=='PartialConv2D':\n        from torchvision.ops import PartialConv2d\n        c = PartialConv2d(in_nc, out_nc, kernel_size=kernel_size, stride=stride, padding=padding,\n               dilation=dilation, bias=bias, groups=groups)\n    elif convtype=='DeformConv2D':\n        from torchvision.ops import DeformConv2d\n        c = DeformConv2d(in_nc, out_nc, kernel_size=kernel_size, stride=stride, padding=padding,\n               dilation=dilation, bias=bias, groups=groups)\n    elif convtype=='Conv3D':\n        c = nn.Conv3d(in_nc, out_nc, kernel_size=kernel_size, stride=stride, padding=padding,\n                dilation=dilation, bias=bias, groups=groups)\n    else:\n        c = nn.Conv2d(in_nc, out_nc, kernel_size=kernel_size, stride=stride, padding=padding,\n                dilation=dilation, bias=bias, groups=groups)\n\n    if spectral_norm:\n        c = nn.utils.spectral_norm(c)\n\n    a = act(act_type) if act_type else None\n    if 'CNA' in mode:\n        n = norm(norm_type, out_nc) if norm_type else None\n        return sequential(p, c, n, a)\n    elif mode == 'NAC':\n        if norm_type is None and act_type is not None:\n            a = act(act_type, inplace=False)\n        n = norm(norm_type, in_nc) if norm_type else None\n        return sequential(n, a, p, c)\n"
  },
  {
    "path": "modules/postprocess/gfpgan_model.py",
    "content": "import os\n\nfrom installer import install\nfrom modules import paths, shared, devices, modelloader, errors\n\nmodel_dir = \"GFPGAN\"\nuser_path = None\nmodel_path = os.path.join(paths.models_path, model_dir)\nmodel_url = \"https://github.com/TencentARC/GFPGAN/releases/download/v1.3.0/GFPGANv1.4.pth\"\nhave_gfpgan = False\nloaded_gfpgan_model = None\n\n\ndef gfpgann():\n    import facexlib\n    import gfpgan # pylint: disable=unused-import\n    global loaded_gfpgan_model # pylint: disable=global-statement\n    if loaded_gfpgan_model is not None:\n        loaded_gfpgan_model.gfpgan.to(devices.device)\n        return loaded_gfpgan_model\n    if gfpgan_constructor is None:\n        return None\n    models = modelloader.load_models(model_path, model_url, user_path, ext_filter=\"GFPGAN\")\n    if len(models) == 1 and \"http\" in models[0]:\n        model_file = models[0]\n    elif len(models) != 0:\n        latest_file = max(models, key=os.path.getctime)\n        model_file = latest_file\n    else:\n        shared.log.error(f\"Model failed loading: type=GFPGAN model={model_file}\")\n        return None\n    if hasattr(facexlib.detection.retinaface, 'device'):\n        facexlib.detection.retinaface.device = devices.device\n    model = gfpgan_constructor(model_path=model_file, upscale=1, arch='clean', channel_multiplier=2, bg_upsampler=None, device=devices.device)\n    loaded_gfpgan_model = model\n    shared.log.info(f\"Model loaded: type=GFPGAN model={model_file}\")\n    return model\n\n\ndef send_model_to(model, device):\n    model.gfpgan.to(device)\n    model.face_helper.face_det.to(device)\n    model.face_helper.face_parse.to(device)\n\n\ndef gfpgan_fix_faces(np_image):\n    model = gfpgann()\n    if model is None:\n        return np_image\n\n    send_model_to(model, devices.device)\n\n    np_image_bgr = np_image[:, :, ::-1]\n    _cropped_faces, _restored_faces, gfpgan_output_bgr = model.enhance(np_image_bgr, has_aligned=False, only_center_face=False, paste_back=True)\n    np_image = gfpgan_output_bgr[:, :, ::-1]\n\n    model.face_helper.clean_all()\n\n    if shared.opts.detailer_unload:\n        send_model_to(model, devices.cpu)\n\n    return np_image\n\n\ngfpgan_constructor = None\n\n\ndef setup_model(dirname):\n    try:\n        if not os.path.exists(model_path):\n            os.makedirs(model_path)\n    except Exception:\n        pass\n    try:\n        install('--no-build-isolation git+https://github.com/Disty0/BasicSR@23c1fb6f5c559ef5ce7ad657f2fa56e41b121754', 'basicsr')\n        install('--no-build-isolation git+https://github.com/Disty0/GFPGAN@ae0f7e44fafe0ef4716f3c10067f8f379b74c21c', 'gfpgan')\n        import gfpgan\n        import facexlib\n        import modules.detailer\n\n        global user_path # pylint: disable=global-statement\n        global have_gfpgan # pylint: disable=global-statement\n        global gfpgan_constructor # pylint: disable=global-statement\n        load_file_from_url_orig = gfpgan.utils.load_file_from_url\n        facex_load_file_from_url_orig = facexlib.detection.load_file_from_url\n        facex_load_file_from_url_orig2 = facexlib.parsing.load_file_from_url\n\n        def my_load_file_from_url(**kwargs):\n            return load_file_from_url_orig(**dict(kwargs, model_dir=model_path))\n\n        def facex_load_file_from_url(**kwargs):\n            return facex_load_file_from_url_orig(**dict(kwargs, save_dir=model_path, model_dir=None))\n\n        def facex_load_file_from_url2(**kwargs):\n            return facex_load_file_from_url_orig2(**dict(kwargs, save_dir=model_path, model_dir=None))\n\n        gfpgan.utils.load_file_from_url = my_load_file_from_url\n        facexlib.detection.load_file_from_url = facex_load_file_from_url\n        facexlib.parsing.load_file_from_url = facex_load_file_from_url2\n        user_path = dirname\n        have_gfpgan = True\n        gfpgan_constructor = gfpgan.GFPGANer\n\n        class FaceRestorerGFPGAN(modules.detailer.Detailer):\n            cmd_dir = model_path\n\n            def name(self):\n                return \"GFPGAN\"\n\n            def restore(self, np_image, p=None): # pylint: disable=unused-argument\n                return gfpgan_fix_faces(np_image)\n\n        shared.face_restorers.append(FaceRestorerGFPGAN())\n    except Exception as e:\n        errors.log.error(f'GFPGan failed to initialize: {e}')\n"
  },
  {
    "path": "modules/postprocess/hqx.py",
    "content": "# pylint: disable=superfluous-parens\n\nimport cv2\nimport numpy as np\n\nMASK_2 = 0x00FF00\nMASK_13 = 0xFF00FF\n\nYmask = 0x00FF0000\nUmask = 0x0000FF00\nVmask = 0x000000FF\n\ntrY = 0x00300000\ntrU = 0x00000700\ntrV = 0x00000006\n\n\ndef RGBtoYUV(c):\n    r = (c & 0xFF0000) >> 16\n    g = (c & 0x00FF00) >> 8\n    b = (c & 0x0000FF)\n    ret = (int(0.299*r + 0.587*g + 0.114*b) << 16) + (int((-0.169*r - 0.331*g + 0.5*b) + 128) << 8) + (int((0.5*r - 0.419*g - 0.081*b) + 128))\n    return ret\n\n\ndef Diff(w1, w2):\n    # Mask against RGBMASK to discard the alpha channel\n    YUV1 = RGBtoYUV(w1)\n    YUV2 = RGBtoYUV(w2)\n    return ((abs((YUV1 & Ymask) - (YUV2 & Ymask)) > trY ) or ( abs((YUV1 & Umask) - (YUV2 & Umask)) > trU ) or ( abs((YUV1 & Vmask) - (YUV2 & Vmask)) > trV ))\n\n\ndef Interp1( pc, c1, c2, dest ):\n    # pc = (c1*3+c2) >> 2\n    if c1 == c2:\n        dest[pc] = c1\n        return\n    dest[pc] = ((((c1 & MASK_2) * 3 + (c2 & MASK_2)) >> 2) & MASK_2) + ((((c1 & MASK_13) * 3 + (c2 & MASK_13)) >> 2) & MASK_13)\n    dest[pc] |= (c1 & 0xFF000000)\n\n\ndef Interp2( pc, c1, c2, c3, dest ):\n    # pc = (c1*2+c2+c3) >> 2\n    dest[pc] = (((((c1 & MASK_2) << 1) + (c2 & MASK_2) + (c3 & MASK_2)) >> 2) & MASK_2) + (((((c1 & MASK_13) << 1) + (c2 & MASK_13) + (c3 & MASK_13)) >> 2) & MASK_13)\n    dest[pc] |= (c1 & 0xFF000000)\n\n\ndef Interp3( pc, c1, c2, dest ):\n    # pc = (c1*7+c2)/8\n    if c1 == c2:\n        dest[pc] = c1\n        return\n    dest[pc] = ((((c1 & MASK_2) * 7 + (c2 & MASK_2)) >> 3) & MASK_2) + ((((c1 & MASK_13) * 7 + (c2 & MASK_13)) >> 3) & MASK_13)\n    dest[pc] |= (c1 & 0xFF000000)\n\n\ndef Interp4( pc, c1, c2, c3, dest ):\n    # pc = (c1*2+(c2+c3)*7)/16\n    dest[pc] = (((((c1 & MASK_2) << 1) + (c2 & MASK_2) * 7 + (c3 & MASK_2) * 7) >> 4) & MASK_2) + (((((c1 & MASK_13) << 1) + (c2 & MASK_13) * 7 + (c3 & MASK_13) * 7) >> 4) & MASK_13)\n    dest[pc] |= (c1 & 0xFF000000)\n\n\ndef Interp5( pc, c1, c2, dest ):\n    # pc = (c1+c2) >> 1\n    if c1 == c2:\n        dest[pc] = c1\n        return\n    dest[pc] = ((((c1 & MASK_2) + (c2 & MASK_2)) >> 1) & MASK_2) + ((((c1 & MASK_13) + (c2 & MASK_13)) >> 1) & MASK_13)\n    dest[pc] |= (c1 & 0xFF000000)\n\n\ndef Interp6( pc, c1, c2, c3, dest ):\n    # pc = (c1*5+c2*2+c3)/8\n    dest[pc] = ((((c1 & MASK_2) * 5 + ((c2 & MASK_2) << 1) + (c3 & MASK_2)) >> 3) & MASK_2) + ((((c1 & MASK_13) * 5 + ((c2 & MASK_13) << 1) + (c3 & MASK_13)) >> 3) & MASK_13)\n    dest[pc] |= (c1 & 0xFF000000)\n\n\ndef Interp7( pc, c1, c2, c3, dest ):\n    # pc = (c1*6+c2+c3)/8\n    dest[pc] = ((((c1 & MASK_2) * 6 + (c2 & MASK_2) + (c3 & MASK_2)) >> 3) & MASK_2) + ((((c1 & MASK_13) * 6 + (c2 & MASK_13) + (c3 & MASK_13)) >> 3) & MASK_13)\n    dest[pc] |= (c1 & 0xFF000000)\n\n\ndef Interp8( pc, c1, c2, dest ):\n    # pc = (c1*5+c2*3)/8\n    if c1 == c2:\n        dest[pc] = c1\n        return\n    dest[pc] = ((((c1 & MASK_2) * 5 + (c2 & MASK_2) * 3) >> 3) & MASK_2) + ((((c1 & MASK_13) * 5 + (c2 & MASK_13) * 3) >> 3) & MASK_13)\n    dest[pc] |= (c1 & 0xFF000000)\n\n\ndef Interp9( pc, c1, c2, c3, dest ):\n    # pc = (c1*2+(c2+c3)*3)/8\n    dest[pc] = (((((c1 & MASK_2) << 1) + (c2 & MASK_2) * 3 + (c3 & MASK_2) * 3) >> 3) & MASK_2) + (((((c1 & MASK_13) << 1) + (c2 & MASK_13) * 3 + (c3 & MASK_13) * 3) >> 3) & MASK_13)\n    dest[pc] |= (c1 & 0xFF000000)\n\n\ndef Interp10( pc, c1, c2, c3, dest ):\n    # pc = (c1*14+c2+c3)/16\n    dest[pc] = ((((c1 & MASK_2) * 14 + (c2 & MASK_2) + (c3 & MASK_2)) >> 4) & MASK_2) + ((((c1 & MASK_13) * 14 + (c2 & MASK_13) + (c3 & MASK_13)) >> 4) & MASK_13)\n    dest[pc] |= (c1 & 0xFF000000)\n\n\ndef hqx( img: cv2.Mat, scale_factor: int ) -> cv2.Mat:\n    # We can only scale with a factor of 2, 3 or 4\n    if scale_factor not in [2, 3, 4]:\n        return img\n\n    height, width = img.shape[0], img.shape[1]\n\n    # pack RGB colors into integers\n    src = []\n    dest = [None] * (height * width * scale_factor * scale_factor)\n    for row in range(height):\n        for col in range(width):\n            b, g, r = img[row][col]\n            src.append((r << 16) + (g << 8) + b)\n\n    if scale_factor == 2:\n        hq2x( width, height, src, dest )\n    elif scale_factor == 3:\n        hq3x( width, height, src, dest )\n    elif scale_factor == 4:\n        hq4x( width, height, src, dest )\n\n    scaled_img = np.zeros((height * scale_factor, width * scale_factor, 3))\n    cnt = 0\n    for row in range(scaled_img.shape[0]):\n        for col in range(scaled_img.shape[1]):\n            pc = dest[cnt]\n            r, g, b = (pc & 0x00FF0000) >> 16, (pc & 0x0000FF00) >> 8, (pc & 0x000000FF)\n            scaled_img[row][col] = [b, g, r]\n            cnt += 1\n\n    return scaled_img\n\n\ndef hq2x( width: int, height: int, src, dest ) -> None: # noqa:C901 # pylint: disable=too-many-branches, too-many-statements\n    w = [None] * 10\n    dpL = width << 1\n    dp = 0\n    sp = 0\n\n    #   +----+----+----+\n    #   |    |    |    |\n    #   | w1 | w2 | w3 |\n    #   +----+----+----+\n    #   |    |    |    |\n    #   | w4 | w5 | w6 |\n    #   +----+----+----+\n    #   |    |    |    |\n    #   | w7 | w8 | w9 |\n    #   +----+----+----+\n\n    for j in range(height):\n        prevline = -width if j > 0 else 0\n        nextline = width if j < height - 1 else 0\n\n        for i in range(width):\n            w[2] = src[sp + prevline]\n            w[5] = src[sp]\n            w[8] = src[sp + nextline]\n\n            if i > 0:\n                w[1] = src[sp + prevline - 1]\n                w[4] = src[sp - 1]\n                w[7] = src[sp + nextline - 1]\n            else:\n                w[1] = w[2]\n                w[4] = w[5]\n                w[7] = w[8]\n\n            if i < width - 1:\n                w[3] = src[sp + prevline + 1]\n                w[6] = src[sp + 1]\n                w[9] = src[sp + nextline + 1]\n            else:\n                w[3] = w[2]\n                w[6] = w[5]\n                w[9] = w[8]\n\n            pattern = 0\n            flag = 1\n\n            YUV1 = RGBtoYUV(w[5])\n\n            for k in range(1, 10):\n                if k == 5:\n                    continue\n\n                if w[k] != w[5]:\n                    YUV2 = RGBtoYUV(w[k])\n                    if ( ( abs((YUV1 & Ymask) - (YUV2 & Ymask)) > trY ) or ( abs((YUV1 & Umask) - (YUV2 & Umask)) > trU ) or ( abs((YUV1 & Vmask) - (YUV2 & Vmask)) > trV ) ):\n                        pattern |= flag\n                flag <<= 1\n\n            match pattern:\n                case 0|1|4|32|128|5|132|160|33|129|36|133|164|161|37|165:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp2(dp+1, w[5], w[2], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 2|34|130|162:\n                    Interp2(dp, w[5], w[1], w[4], dest)\n                    Interp2(dp+1, w[5], w[3], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 16|17|48|49:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[2], dest)\n                    Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[8], dest)\n                case 64|65|68|69:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp2(dp+1, w[5], w[2], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[6], dest)\n                case 8|12|136|140:\n                    Interp2(dp, w[5], w[1], w[2], dest)\n                    Interp2(dp+1, w[5], w[2], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[8], dest)\n                    Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 3|35|131|163:\n                    Interp1(dp, w[5], w[4], dest)\n                    Interp2(dp+1, w[5], w[3], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 6|38|134|166:\n                    Interp2(dp, w[5], w[1], w[4], dest)\n                    Interp1(dp+1, w[5], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 20|21|52|53:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[8], dest)\n                case 144|145|176|177:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[2], dest)\n                    Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[8], dest)\n                case 192|193|196|197:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp2(dp+1, w[5], w[2], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[6], dest)\n                case 96|97|100|101:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp2(dp+1, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[6], dest)\n                case 40|44|168|172:\n                    Interp2(dp, w[5], w[1], w[2], dest)\n                    Interp2(dp+1, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[8], dest)\n                    Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 9|13|137|141:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp2(dp+1, w[5], w[2], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[8], dest)\n                    Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 18|50:\n                    Interp2(dp, w[5], w[1], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+1, w[5], w[3], dest)\n                    else:\n                        Interp2(dp+1, w[5], w[2], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[8], dest)\n                case 80|81:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[2], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+dpL+1, w[5], w[9], dest)\n                    else:\n                        Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 72|76:\n                    Interp2(dp, w[5], w[1], w[2], dest)\n                    Interp2(dp+1, w[5], w[2], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+dpL, w[5], w[7], dest)\n                    else:\n                        Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[6], dest)\n                case 10|138:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[4], dest)\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[8], dest)\n                    Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 66:\n                    Interp2(dp, w[5], w[1], w[4], dest)\n                    Interp2(dp+1, w[5], w[3], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[6], dest)\n                case 24:\n                    Interp2(dp, w[5], w[1], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[2], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[8], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[8], dest)\n                case 7|39|135:\n                    Interp1(dp, w[5], w[4], dest)\n                    Interp1(dp+1, w[5], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 148|149|180:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[8], dest)\n                case 224|228|225:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp2(dp+1, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[6], dest)\n                case 41|169|45:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp2(dp+1, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[8], dest)\n                    Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 22|54:\n                    Interp2(dp, w[5], w[1], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp2(dp+1, w[5], w[2], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[8], dest)\n                case 208|209:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[2], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 104|108:\n                    Interp2(dp, w[5], w[1], w[2], dest)\n                    Interp2(dp+1, w[5], w[2], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[6], dest)\n                case 11|139:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[8], dest)\n                    Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 19|51:\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp, w[5], w[4], dest)\n                        Interp1(dp+1, w[5], w[3], dest)\n                    else:\n                        Interp6(dp, w[5], w[2], w[4], dest)\n                        Interp9(dp+1, w[5], w[2], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[8], dest)\n                case 146|178:\n                    Interp2(dp, w[5], w[1], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+1, w[5], w[3], dest)\n                        Interp1(dp+dpL+1, w[5], w[8], dest)\n                    else:\n                        Interp9(dp+1, w[5], w[2], w[6], dest)\n                        Interp6(dp+dpL+1, w[5], w[6], w[8], dest)\n                    Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                case 84|85:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+1, w[5], w[2], dest)\n                        Interp1(dp+dpL+1, w[5], w[9], dest)\n                    else:\n                        Interp6(dp+1, w[5], w[6], w[2], dest)\n                        Interp9(dp+dpL+1, w[5], w[6], w[8], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[4], dest)\n                case 112|113:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[2], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+dpL, w[5], w[4], dest)\n                        Interp1(dp+dpL+1, w[5], w[9], dest)\n                    else:\n                        Interp6(dp+dpL, w[5], w[8], w[4], dest)\n                        Interp9(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 200|204:\n                    Interp2(dp, w[5], w[1], w[2], dest)\n                    Interp2(dp+1, w[5], w[2], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+dpL, w[5], w[7], dest)\n                        Interp1(dp+dpL+1, w[5], w[6], dest)\n                    else:\n                        Interp9(dp+dpL, w[5], w[8], w[4], dest)\n                        Interp6(dp+dpL+1, w[5], w[8], w[6], dest)\n                case 73|77:\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp, w[5], w[2], dest)\n                        Interp1(dp+dpL, w[5], w[7], dest)\n                    else:\n                        Interp6(dp, w[5], w[4], w[2], dest)\n                        Interp9(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp2(dp+1, w[5], w[2], w[6], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[6], dest)\n                case 42|170:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[4], dest)\n                        Interp1(dp+dpL, w[5], w[8], dest)\n                    else:\n                        Interp9(dp, w[5], w[4], w[2], dest)\n                        Interp6(dp+dpL, w[5], w[4], w[8], dest)\n                    Interp2(dp+1, w[5], w[3], w[6], dest)\n                    Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 14|142:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[4], dest)\n                        Interp1(dp+1, w[5], w[6], dest)\n                    else:\n                        Interp9(dp, w[5], w[4], w[2], dest)\n                        Interp6(dp+1, w[5], w[2], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[8], dest)\n                    Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 67:\n                    Interp1(dp, w[5], w[4], dest)\n                    Interp2(dp+1, w[5], w[3], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[6], dest)\n                case 70:\n                    Interp2(dp, w[5], w[1], w[4], dest)\n                    Interp1(dp+1, w[5], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[6], dest)\n                case 28:\n                    Interp2(dp, w[5], w[1], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[8], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[8], dest)\n                case 152:\n                    Interp2(dp, w[5], w[1], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[2], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[8], dest)\n                    Interp1(dp+dpL+1, w[5], w[8], dest)\n                case 194:\n                    Interp2(dp, w[5], w[1], w[4], dest)\n                    Interp2(dp+1, w[5], w[3], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[6], dest)\n                case 98:\n                    Interp2(dp, w[5], w[1], w[4], dest)\n                    Interp2(dp+1, w[5], w[3], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[6], dest)\n                case 56:\n                    Interp2(dp, w[5], w[1], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[2], dest)\n                    Interp1(dp+dpL, w[5], w[8], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[8], dest)\n                case 25:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[2], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[8], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[8], dest)\n                case 26|31:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp2(dp+1, w[5], w[2], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[8], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[8], dest)\n                case 82|214:\n                    Interp2(dp, w[5], w[1], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp2(dp+1, w[5], w[2], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 88|248:\n                    Interp2(dp, w[5], w[1], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[2], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 74|107:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[6], dest)\n                case 27:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[3], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[8], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[8], dest)\n                case 86:\n                    Interp2(dp, w[5], w[1], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp2(dp+1, w[5], w[2], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[9], dest)\n                case 216:\n                    Interp2(dp, w[5], w[1], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[2], dest)\n                    Interp1(dp+dpL, w[5], w[7], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 106:\n                    Interp1(dp, w[5], w[4], dest)\n                    Interp2(dp+1, w[5], w[3], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[6], dest)\n                case 30:\n                    Interp1(dp, w[5], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp2(dp+1, w[5], w[2], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[8], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[8], dest)\n                case 210:\n                    Interp2(dp, w[5], w[1], w[4], dest)\n                    Interp1(dp+1, w[5], w[3], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 120:\n                    Interp2(dp, w[5], w[1], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[2], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[9], dest)\n                case 75:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[7], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[6], dest)\n                case 29:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[8], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[8], dest)\n                case 198:\n                    Interp2(dp, w[5], w[1], w[4], dest)\n                    Interp1(dp+1, w[5], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[6], dest)\n                case 184:\n                    Interp2(dp, w[5], w[1], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[2], dest)\n                    Interp1(dp+dpL, w[5], w[8], dest)\n                    Interp1(dp+dpL+1, w[5], w[8], dest)\n                case 99:\n                    Interp1(dp, w[5], w[4], dest)\n                    Interp2(dp+1, w[5], w[3], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[6], dest)\n                case 57:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[2], dest)\n                    Interp1(dp+dpL, w[5], w[8], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[8], dest)\n                case 71:\n                    Interp1(dp, w[5], w[4], dest)\n                    Interp1(dp+1, w[5], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[6], dest)\n                case 156:\n                    Interp2(dp, w[5], w[1], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[8], dest)\n                    Interp1(dp+dpL+1, w[5], w[8], dest)\n                case 226:\n                    Interp2(dp, w[5], w[1], w[4], dest)\n                    Interp2(dp+1, w[5], w[3], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[6], dest)\n                case 60:\n                    Interp2(dp, w[5], w[1], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+dpL, w[5], w[8], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[8], dest)\n                case 195:\n                    Interp1(dp, w[5], w[4], dest)\n                    Interp2(dp+1, w[5], w[3], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[6], dest)\n                case 102:\n                    Interp2(dp, w[5], w[1], w[4], dest)\n                    Interp1(dp+1, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[6], dest)\n                case 153:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[2], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[8], dest)\n                    Interp1(dp+dpL+1, w[5], w[8], dest)\n                case 58:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[4], dest)\n                    else:\n                        Interp7(dp, w[5], w[4], w[2], dest)\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+1, w[5], w[3], dest)\n                    else:\n                        Interp7(dp+1, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[8], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[8], dest)\n                case 83:\n                    Interp1(dp, w[5], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+1, w[5], w[3], dest)\n                    else:\n                        Interp7(dp+1, w[5], w[2], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+dpL+1, w[5], w[9], dest)\n                    else:\n                        Interp7(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 92:\n                    Interp2(dp, w[5], w[1], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+dpL, w[5], w[7], dest)\n                    else:\n                        Interp7(dp+dpL, w[5], w[8], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+dpL+1, w[5], w[9], dest)\n                    else:\n                        Interp7(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 202:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[4], dest)\n                    else:\n                        Interp7(dp, w[5], w[4], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+dpL, w[5], w[7], dest)\n                    else:\n                        Interp7(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[6], dest)\n                case 78:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[4], dest)\n                    else:\n                        Interp7(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+dpL, w[5], w[7], dest)\n                    else:\n                        Interp7(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[6], dest)\n                case 154:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[4], dest)\n                    else:\n                        Interp7(dp, w[5], w[4], w[2], dest)\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+1, w[5], w[3], dest)\n                    else:\n                        Interp7(dp+1, w[5], w[2], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[8], dest)\n                    Interp1(dp+dpL+1, w[5], w[8], dest)\n                case 114:\n                    Interp2(dp, w[5], w[1], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+1, w[5], w[3], dest)\n                    else:\n                        Interp7(dp+1, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+dpL+1, w[5], w[9], dest)\n                    else:\n                        Interp7(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 89:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[2], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+dpL, w[5], w[7], dest)\n                    else:\n                        Interp7(dp+dpL, w[5], w[8], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+dpL+1, w[5], w[9], dest)\n                    else:\n                        Interp7(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 90:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[4], dest)\n                    else:\n                        Interp7(dp, w[5], w[4], w[2], dest)\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+1, w[5], w[3], dest)\n                    else:\n                        Interp7(dp+1, w[5], w[2], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+dpL, w[5], w[7], dest)\n                    else:\n                        Interp7(dp+dpL, w[5], w[8], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+dpL+1, w[5], w[9], dest)\n                    else:\n                        Interp7(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 55|23:\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp, w[5], w[4], dest)\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp6(dp, w[5], w[2], w[4], dest)\n                        Interp9(dp+1, w[5], w[2], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[8], dest)\n                case 182|150:\n                    Interp2(dp, w[5], w[1], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                        Interp1(dp+dpL+1, w[5], w[8], dest)\n                    else:\n                        Interp9(dp+1, w[5], w[2], w[6], dest)\n                        Interp6(dp+dpL+1, w[5], w[6], w[8], dest)\n                    Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                case 213|212:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+1, w[5], w[2], dest)\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp6(dp+1, w[5], w[6], w[2], dest)\n                        Interp9(dp+dpL+1, w[5], w[6], w[8], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[4], dest)\n                case 241|240:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[2], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+dpL, w[5], w[4], dest)\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp6(dp+dpL, w[5], w[8], w[4], dest)\n                        Interp9(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 236|232:\n                    Interp2(dp, w[5], w[1], w[2], dest)\n                    Interp2(dp+1, w[5], w[2], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                        Interp1(dp+dpL+1, w[5], w[6], dest)\n                    else:\n                        Interp9(dp+dpL, w[5], w[8], w[4], dest)\n                        Interp6(dp+dpL+1, w[5], w[8], w[6], dest)\n                case 109|105:\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp, w[5], w[2], dest)\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp6(dp, w[5], w[4], w[2], dest)\n                        Interp9(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp2(dp+1, w[5], w[2], w[6], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[6], dest)\n                case 171|43:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        Interp1(dp+dpL, w[5], w[8], dest)\n                    else:\n                        Interp9(dp, w[5], w[4], w[2], dest)\n                        Interp6(dp+dpL, w[5], w[4], w[8], dest)\n                    Interp2(dp+1, w[5], w[3], w[6], dest)\n                    Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 143|15:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        Interp1(dp+1, w[5], w[6], dest)\n                    else:\n                        Interp9(dp, w[5], w[4], w[2], dest)\n                        Interp6(dp+1, w[5], w[2], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[8], dest)\n                    Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 124:\n                    Interp2(dp, w[5], w[1], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[9], dest)\n                case 203:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[7], dest)\n                    Interp1(dp+dpL+1, w[5], w[6], dest)\n                case 62:\n                    Interp1(dp, w[5], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp2(dp+1, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[8], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[8], dest)\n                case 211:\n                    Interp1(dp, w[5], w[4], dest)\n                    Interp1(dp+1, w[5], w[3], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 118:\n                    Interp2(dp, w[5], w[1], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp2(dp+1, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[9], dest)\n                case 217:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[2], dest)\n                    Interp1(dp+dpL, w[5], w[7], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 110:\n                    Interp1(dp, w[5], w[4], dest)\n                    Interp1(dp+1, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[6], dest)\n                case 155:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[3], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[8], dest)\n                    Interp1(dp+dpL+1, w[5], w[8], dest)\n                case 188:\n                    Interp2(dp, w[5], w[1], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+dpL, w[5], w[8], dest)\n                    Interp1(dp+dpL+1, w[5], w[8], dest)\n                case 185:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[2], dest)\n                    Interp1(dp+dpL, w[5], w[8], dest)\n                    Interp1(dp+dpL+1, w[5], w[8], dest)\n                case 61:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+dpL, w[5], w[8], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[8], dest)\n                case 157:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[8], dest)\n                    Interp1(dp+dpL+1, w[5], w[8], dest)\n                case 103:\n                    Interp1(dp, w[5], w[4], dest)\n                    Interp1(dp+1, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[6], dest)\n                case 227:\n                    Interp1(dp, w[5], w[4], dest)\n                    Interp2(dp+1, w[5], w[3], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[6], dest)\n                case 230:\n                    Interp2(dp, w[5], w[1], w[4], dest)\n                    Interp1(dp+1, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[6], dest)\n                case 199:\n                    Interp1(dp, w[5], w[4], dest)\n                    Interp1(dp+1, w[5], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[6], dest)\n                case 220:\n                    Interp2(dp, w[5], w[1], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+dpL, w[5], w[7], dest)\n                    else:\n                        Interp7(dp+dpL, w[5], w[8], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 158:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[4], dest)\n                    else:\n                        Interp7(dp, w[5], w[4], w[2], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp2(dp+1, w[5], w[2], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[8], dest)\n                    Interp1(dp+dpL+1, w[5], w[8], dest)\n                case 234:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[4], dest)\n                    else:\n                        Interp7(dp, w[5], w[4], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[6], dest)\n                case 242:\n                    Interp2(dp, w[5], w[1], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+1, w[5], w[3], dest)\n                    else:\n                        Interp7(dp+1, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 59:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+1, w[5], w[3], dest)\n                    else:\n                        Interp7(dp+1, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[8], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[8], dest)\n                case 121:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[2], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+dpL+1, w[5], w[9], dest)\n                    else:\n                        Interp7(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 87:\n                    Interp1(dp, w[5], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp2(dp+1, w[5], w[2], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+dpL+1, w[5], w[9], dest)\n                    else:\n                        Interp7(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 79:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+dpL, w[5], w[7], dest)\n                    else:\n                        Interp7(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[6], dest)\n                case 122:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[4], dest)\n                    else:\n                        Interp7(dp, w[5], w[4], w[2], dest)\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+1, w[5], w[3], dest)\n                    else:\n                        Interp7(dp+1, w[5], w[2], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+dpL+1, w[5], w[9], dest)\n                    else:\n                        Interp7(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 94:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[4], dest)\n                    else:\n                        Interp7(dp, w[5], w[4], w[2], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp2(dp+1, w[5], w[2], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+dpL, w[5], w[7], dest)\n                    else:\n                        Interp7(dp+dpL, w[5], w[8], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+dpL+1, w[5], w[9], dest)\n                    else:\n                        Interp7(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 218:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[4], dest)\n                    else:\n                        Interp7(dp, w[5], w[4], w[2], dest)\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+1, w[5], w[3], dest)\n                    else:\n                        Interp7(dp+1, w[5], w[2], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+dpL, w[5], w[7], dest)\n                    else:\n                        Interp7(dp+dpL, w[5], w[8], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 91:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+1, w[5], w[3], dest)\n                    else:\n                        Interp7(dp+1, w[5], w[2], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+dpL, w[5], w[7], dest)\n                    else:\n                        Interp7(dp+dpL, w[5], w[8], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+dpL+1, w[5], w[9], dest)\n                    else:\n                        Interp7(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 229:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp2(dp+1, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[6], dest)\n                case 167:\n                    Interp1(dp, w[5], w[4], dest)\n                    Interp1(dp+1, w[5], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 173:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp2(dp+1, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[8], dest)\n                    Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 181:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[8], dest)\n                case 186:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[4], dest)\n                    else:\n                        Interp7(dp, w[5], w[4], w[2], dest)\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+1, w[5], w[3], dest)\n                    else:\n                        Interp7(dp+1, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[8], dest)\n                    Interp1(dp+dpL+1, w[5], w[8], dest)\n                case 115:\n                    Interp1(dp, w[5], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+1, w[5], w[3], dest)\n                    else:\n                        Interp7(dp+1, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+dpL+1, w[5], w[9], dest)\n                    else:\n                        Interp7(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 93:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+dpL, w[5], w[7], dest)\n                    else:\n                        Interp7(dp+dpL, w[5], w[8], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+dpL+1, w[5], w[9], dest)\n                    else:\n                        Interp7(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 206:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[4], dest)\n                    else:\n                        Interp7(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+dpL, w[5], w[7], dest)\n                    else:\n                        Interp7(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[6], dest)\n                case 205|201:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp2(dp+1, w[5], w[2], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+dpL, w[5], w[7], dest)\n                    else:\n                        Interp7(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[6], dest)\n                case 174|46:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[4], dest)\n                    else:\n                        Interp7(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[8], dest)\n                    Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 179|147:\n                    Interp1(dp, w[5], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+1, w[5], w[3], dest)\n                    else:\n                        Interp7(dp+1, w[5], w[2], w[6], dest)\n                    Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[8], dest)\n                case 117|116:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+dpL+1, w[5], w[9], dest)\n                    else:\n                        Interp7(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 189:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+dpL, w[5], w[8], dest)\n                    Interp1(dp+dpL+1, w[5], w[8], dest)\n                case 231:\n                    Interp1(dp, w[5], w[4], dest)\n                    Interp1(dp+1, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[6], dest)\n                case 126:\n                    Interp1(dp, w[5], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp2(dp+1, w[5], w[2], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[9], dest)\n                case 219:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[7], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 125:\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp, w[5], w[2], dest)\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp6(dp, w[5], w[4], w[2], dest)\n                        Interp9(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+dpL+1, w[5], w[9], dest)\n                case 221:\n                    Interp1(dp, w[5], w[2], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+1, w[5], w[2], dest)\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp6(dp+1, w[5], w[6], w[2], dest)\n                        Interp9(dp+dpL+1, w[5], w[6], w[8], dest)\n                    Interp1(dp+dpL, w[5], w[7], dest)\n                case 207:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        Interp1(dp+1, w[5], w[6], dest)\n                    else:\n                        Interp9(dp, w[5], w[4], w[2], dest)\n                        Interp6(dp+1, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[7], dest)\n                    Interp1(dp+dpL+1, w[5], w[6], dest)\n                case 238:\n                    Interp1(dp, w[5], w[4], dest)\n                    Interp1(dp+1, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                        Interp1(dp+dpL+1, w[5], w[6], dest)\n                    else:\n                        Interp9(dp+dpL, w[5], w[8], w[4], dest)\n                        Interp6(dp+dpL+1, w[5], w[8], w[6], dest)\n                case 190:\n                    Interp1(dp, w[5], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                        Interp1(dp+dpL+1, w[5], w[8], dest)\n                    else:\n                        Interp9(dp+1, w[5], w[2], w[6], dest)\n                        Interp6(dp+dpL+1, w[5], w[6], w[8], dest)\n                    Interp1(dp+dpL, w[5], w[8], dest)\n                case 187:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        Interp1(dp+dpL, w[5], w[8], dest)\n                    else:\n                        Interp9(dp, w[5], w[4], w[2], dest)\n                        Interp6(dp+dpL, w[5], w[4], w[8], dest)\n                    Interp1(dp+1, w[5], w[3], dest)\n                    Interp1(dp+dpL+1, w[5], w[8], dest)\n                case 243:\n                    Interp1(dp, w[5], w[4], dest)\n                    Interp1(dp+1, w[5], w[3], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+dpL, w[5], w[4], dest)\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp6(dp+dpL, w[5], w[8], w[4], dest)\n                        Interp9(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 119:\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp, w[5], w[4], dest)\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp6(dp, w[5], w[2], w[4], dest)\n                        Interp9(dp+1, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[9], dest)\n                case 237|233:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp2(dp+1, w[5], w[2], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp1(dp+dpL, w[5], w[7], dest)\n                    Interp1(dp+dpL+1, w[5], w[6], dest)\n                case 175|47:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp1(dp, w[5], w[4], dest)\n                    Interp1(dp+1, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[8], dest)\n                    Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 183|151:\n                    Interp1(dp, w[5], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp1(dp+1, w[5], w[3], dest)\n                    Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[8], dest)\n                case 245|244:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp1(dp+dpL+1, w[5], w[9], dest)\n                case 250:\n                    Interp1(dp, w[5], w[4], dest)\n                    Interp1(dp+1, w[5], w[3], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 123:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[3], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[9], dest)\n                case 95:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp2(dp+1, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[7], dest)\n                    Interp1(dp+dpL+1, w[5], w[9], dest)\n                case 222:\n                    Interp1(dp, w[5], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp2(dp+1, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[7], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 252:\n                    Interp2(dp, w[5], w[1], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp1(dp+dpL+1, w[5], w[9], dest)\n                case 249:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[2], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp1(dp+dpL, w[5], w[7], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 235:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp2(dp+1, w[5], w[3], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp1(dp+dpL, w[5], w[7], dest)\n                    Interp1(dp+dpL+1, w[5], w[6], dest)\n                case 111:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp1(dp, w[5], w[4], dest)\n                    Interp1(dp+1, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[6], dest)\n                case 63:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp1(dp, w[5], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp2(dp+1, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[8], dest)\n                    Interp2(dp+dpL+1, w[5], w[9], w[8], dest)\n                case 159:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp1(dp+1, w[5], w[3], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[8], dest)\n                    Interp1(dp+dpL+1, w[5], w[8], dest)\n                case 215:\n                    Interp1(dp, w[5], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp1(dp+1, w[5], w[3], dest)\n                    Interp2(dp+dpL, w[5], w[7], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 246:\n                    Interp2(dp, w[5], w[1], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp2(dp+1, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp1(dp+dpL+1, w[5], w[9], dest)\n                case 254:\n                    Interp1(dp, w[5], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp2(dp+1, w[5], w[2], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp1(dp+dpL+1, w[5], w[9], dest)\n                case 253:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp1(dp+dpL, w[5], w[7], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp1(dp+dpL+1, w[5], w[9], dest)\n                case 251:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[3], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp1(dp+dpL, w[5], w[7], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 239:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp1(dp, w[5], w[4], dest)\n                    Interp1(dp+1, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp1(dp+dpL, w[5], w[7], dest)\n                    Interp1(dp+dpL+1, w[5], w[6], dest)\n                case 127:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp1(dp, w[5], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp2(dp+1, w[5], w[2], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp2(dp+dpL, w[5], w[8], w[4], dest)\n                    Interp1(dp+dpL+1, w[5], w[9], dest)\n                case 191:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp1(dp, w[5], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp1(dp+1, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[8], dest)\n                    Interp1(dp+dpL+1, w[5], w[8], dest)\n                case 223:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp1(dp+1, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[7], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp2(dp+dpL+1, w[5], w[6], w[8], dest)\n                case 247:\n                    Interp1(dp, w[5], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp1(dp+1, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp1(dp+dpL+1, w[5], w[9], dest)\n                case 255:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp1(dp, w[5], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp1(dp+1, w[5], w[3], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp1(dp+dpL, w[5], w[7], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp1(dp+dpL+1, w[5], w[9], dest)\n            sp += 1\n            dp += 2\n        dp += dpL\n\n\ndef hq3x( width: int, height: int, src, dest ) -> None: # noqa:C901 # pylint: disable=too-many-branches, too-many-statements\n    w = [None] * 10\n    dpL = width * 3\n    dp = 0\n    sp = 0\n\n    #   +----+----+----+\n    #   |\t|\t|\t|\n    #   | w1 | w2 | w3 |\n    #   +----+----+----+\n    #   |\t|\t|\t|\n    #   | w4 | w5 | w6 |\n    #   +----+----+----+\n    #   |\t|\t|\t|\n    #   | w7 | w8 | w9 |\n    #   +----+----+----+\n\n    for j in range(height):\n        prevline = -width if j > 0 else 0\n        nextline = width if j < height - 1 else 0\n\n        for i in range(width):\n            w[2] = src[sp + prevline]\n            w[5] = src[sp]\n            w[8] = src[sp + nextline]\n\n            if i > 0:\n                w[1] = src[sp + prevline - 1]\n                w[4] = src[sp - 1]\n                w[7] = src[sp + nextline - 1]\n            else:\n                w[1] = w[2]\n                w[4] = w[5]\n                w[7] = w[8]\n\n            if i < width - 1:\n                w[3] = src[sp + prevline + 1]\n                w[6] = src[sp + 1]\n                w[9] = src[sp + nextline + 1]\n            else:\n                w[3] = w[2]\n                w[6] = w[5]\n                w[9] = w[8]\n\n            pattern = 0\n            flag = 1\n\n            YUV1 = RGBtoYUV(w[5])\n\n            for k in range(1, 10):\n                if k == 5:\n                    continue\n                if w[k] != w[5]:\n                    YUV2 = RGBtoYUV(w[k])\n                    if ( ( abs((YUV1 & Ymask) - (YUV2 & Ymask)) > trY ) or ( abs((YUV1 & Umask) - (YUV2 & Umask)) > trU ) or ( abs((YUV1 & Vmask) - (YUV2 & Vmask)) > trV ) ):\n                        pattern |= flag\n                flag <<= 1\n\n            match pattern:\n                case 0|1|4|32|128|5|132|160|33|129|36|133|164|161|37|165:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp2(dp+2, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 2|34|130|162:\n                    Interp1(dp, w[5], w[1], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 16|17|48|49:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 64|65|68|69:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp2(dp+2, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 8|12|136|140:\n                    Interp1(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp2(dp+2, w[5], w[2], w[6], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 3|35|131|163:\n                    Interp1(dp, w[5], w[4], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 6|38|134|166:\n                    Interp1(dp, w[5], w[1], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 20|21|52|53:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[2], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 144|145|176|177:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[8], dest)\n                case 192|193|196|197:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp2(dp+2, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[6], dest)\n                case 96|97|100|101:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp2(dp+2, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 40|44|168|172:\n                    Interp1(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp2(dp+2, w[5], w[2], w[6], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 9|13|137|141:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp2(dp+2, w[5], w[2], w[6], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 18|50:\n                    Interp1(dp, w[5], w[1], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                        Interp1(dp+2, w[5], w[3], dest)\n                        dest[dp+dpL+2] = w[5]\n                    else:\n                        Interp3(dp+1, w[5], w[2], dest)\n                        Interp4(dp+2, w[5], w[2], w[6], dest)\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 80|81:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+2] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    else:\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                        Interp4(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 72|76:\n                    Interp1(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp2(dp+2, w[5], w[2], w[6], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    else:\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                        Interp4(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 10|138:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[1], dest)\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp4(dp, w[5], w[4], w[2], dest)\n                        Interp3(dp+1, w[5], w[2], dest)\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 66:\n                    Interp1(dp, w[5], w[1], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 24:\n                    Interp1(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 7|39|135:\n                    Interp1(dp, w[5], w[4], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 148|149|180:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[2], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[8], dest)\n                case 224|228|225:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp2(dp+2, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[6], dest)\n                case 41|169|45:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp2(dp+2, w[5], w[2], w[6], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 22|54:\n                    Interp1(dp, w[5], w[1], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                        dest[dp+2] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    else:\n                        Interp3(dp+1, w[5], w[2], dest)\n                        Interp4(dp+2, w[5], w[2], w[6], dest)\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 208|209:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+2] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                        Interp4(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 104|108:\n                    Interp1(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp2(dp+2, w[5], w[2], w[6], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    else:\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                        Interp4(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 11|139:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp4(dp, w[5], w[4], w[2], dest)\n                        Interp3(dp+1, w[5], w[2], dest)\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 19|51:\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp, w[5], w[4], dest)\n                        dest[dp+1] = w[5]\n                        Interp1(dp+2, w[5], w[3], dest)\n                        dest[dp+dpL+2] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                        Interp1(dp+1, w[2], w[5], dest)\n                        Interp5(dp+2, w[2], w[6], dest)\n                        Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 146|178:\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                        Interp1(dp+2, w[5], w[3], dest)\n                        dest[dp+dpL+2] = w[5]\n                        Interp1(dp+(dpL << 1)+2, w[5], w[8], dest)\n                    else:\n                        Interp1(dp+1, w[5], w[2], dest)\n                        Interp5(dp+2, w[2], w[6], dest)\n                        Interp1(dp+dpL+2, w[6], w[5], dest)\n                        Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                    Interp1(dp, w[5], w[1], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                case 84|85:\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+2, w[5], w[2], dest)\n                        dest[dp+dpL+2] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    else:\n                        Interp2(dp+2, w[5], w[2], w[6], dest)\n                        Interp1(dp+dpL+2, w[6], w[5], dest)\n                        Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                        Interp5(dp+(dpL << 1)+2, w[6], w[8], dest)\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                case 112|113:\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+2] = w[5]\n                        Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    else:\n                        Interp1(dp+dpL+2, w[5], w[6], dest)\n                        Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        Interp1(dp+(dpL << 1)+1, w[8], w[5], dest)\n                        Interp5(dp+(dpL << 1)+2, w[6], w[8], dest)\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                case 200|204:\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        Interp1(dp+(dpL << 1)+2, w[5], w[6], dest)\n                    else:\n                        Interp1(dp+dpL, w[5], w[4], dest)\n                        Interp5(dp+(dpL << 1), w[8], w[4], dest)\n                        Interp1(dp+(dpL << 1)+1, w[8], w[5], dest)\n                        Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                    Interp1(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp2(dp+2, w[5], w[2], w[6], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                case 73|77:\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp, w[5], w[2], dest)\n                        dest[dp+dpL] = w[5]\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                        Interp1(dp+dpL, w[4], w[5], dest)\n                        Interp5(dp+(dpL << 1), w[8], w[4], dest)\n                        Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp2(dp+2, w[5], w[2], w[6], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 42|170:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[1], dest)\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                        Interp1(dp+(dpL << 1), w[5], w[8], dest)\n                    else:\n                        Interp5(dp, w[4], w[2], dest)\n                        Interp1(dp+1, w[5], w[2], dest)\n                        Interp1(dp+dpL, w[4], w[5], dest)\n                        Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 14|142:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[1], dest)\n                        dest[dp+1] = w[5]\n                        Interp1(dp+2, w[5], w[6], dest)\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp5(dp, w[4], w[2], dest)\n                        Interp1(dp+1, w[2], w[5], dest)\n                        Interp2(dp+2, w[5], w[2], w[6], dest)\n                        Interp1(dp+dpL, w[5], w[4], dest)\n                        dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 67:\n                    Interp1(dp, w[5], w[4], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 70:\n                    Interp1(dp, w[5], w[1], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 28:\n                    Interp1(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[2], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 152:\n                    Interp1(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[8], dest)\n                case 194:\n                    Interp1(dp, w[5], w[1], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[6], dest)\n                case 98:\n                    Interp1(dp, w[5], w[1], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 56:\n                    Interp1(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 25:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 26|31:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp4(dp, w[5], w[4], w[2], dest)\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                        dest[dp+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    else:\n                        Interp4(dp+2, w[5], w[2], w[6], dest)\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                        dest[dp+dpL+1] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 82|214:\n                    Interp1(dp, w[5], w[1], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                        dest[dp+2] = w[5]\n                    else:\n                        Interp3(dp+1, w[5], w[2], dest)\n                        Interp4(dp+2, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                        Interp4(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 88|248:\n                    Interp1(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL+1] = w[5]\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                        dest[dp+(dpL << 1)] = w[5]\n                    else:\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                        Interp4(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+2] = w[5]\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                        Interp4(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 74|107:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp4(dp, w[5], w[4], w[2], dest)\n                        Interp3(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    else:\n                        Interp4(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 27:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp4(dp, w[5], w[4], w[2], dest)\n                        Interp3(dp+1, w[5], w[2], dest)\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 86:\n                    Interp1(dp, w[5], w[1], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                        dest[dp+2] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    else:\n                        Interp3(dp+1, w[5], w[2], dest)\n                        Interp4(dp+2, w[5], w[2], w[6], dest)\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 216:\n                    Interp1(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+2] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                        Interp4(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 106:\n                    Interp1(dp, w[5], w[1], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    else:\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                        Interp4(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 30:\n                    Interp1(dp, w[5], w[1], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                        dest[dp+2] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    else:\n                        Interp3(dp+1, w[5], w[2], dest)\n                        Interp4(dp+2, w[5], w[2], w[6], dest)\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                        dest[dp+dpL] = w[5]\n                        dest[dp+dpL+1] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 210:\n                    Interp1(dp, w[5], w[1], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+2] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                        Interp4(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 120:\n                    Interp1(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    else:\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                        Interp4(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 75:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp4(dp, w[5], w[4], w[2], dest)\n                        Interp3(dp+1, w[5], w[2], dest)\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 29:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[2], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 198:\n                    Interp1(dp, w[5], w[1], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[6], dest)\n                case 184:\n                    Interp1(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[8], dest)\n                case 99:\n                    Interp1(dp, w[5], w[4], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 57:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 71:\n                    Interp1(dp, w[5], w[4], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 156:\n                    Interp1(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[2], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[8], dest)\n                case 226:\n                    Interp1(dp, w[5], w[1], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[6], dest)\n                case 60:\n                    Interp1(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[2], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 195:\n                    Interp1(dp, w[5], w[4], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[6], dest)\n                case 102:\n                    Interp1(dp, w[5], w[1], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 153:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[8], dest)\n                case 58:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[1], dest)\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                        dest[dp+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                    else:\n                        Interp2(dp+2, w[5], w[2], w[6], dest)\n                        dest[dp+dpL] = w[5]\n                        dest[dp+dpL+1] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 83:\n                    Interp1(dp, w[5], w[4], dest)\n                    dest[dp+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                    else:\n                        Interp2(dp+2, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    else:\n                        Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 92:\n                    Interp1(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[2], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    else:\n                        Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    else:\n                        Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 202:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[1], dest)\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                        dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    else:\n                        Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[6], dest)\n                case 78:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[1], dest)\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                        dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[6], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    else:\n                        Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 154:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[1], dest)\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                        dest[dp+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                    else:\n                        Interp2(dp+2, w[5], w[2], w[6], dest)\n                        dest[dp+dpL] = w[5]\n                        dest[dp+dpL+1] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[8], dest)\n                case 114:\n                    Interp1(dp, w[5], w[1], dest)\n                    dest[dp+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                    else:\n                        Interp2(dp+2, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    else:\n                        Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 89:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    else:\n                        Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    else:\n                        Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 90:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[1], dest)\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                        dest[dp+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                    else:\n                        Interp2(dp+2, w[5], w[2], w[6], dest)\n                        dest[dp+dpL] = w[5]\n                        dest[dp+dpL+1] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    else:\n                        Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    else:\n                        Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 55|23:\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp, w[5], w[4], dest)\n                        dest[dp+1] = w[5]\n                        dest[dp+2] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                        Interp1(dp+1, w[2], w[5], dest)\n                        Interp5(dp+2, w[2], w[6], dest)\n                        Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 182|150:\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                        dest[dp+2] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                        Interp1(dp+(dpL << 1)+2, w[5], w[8], dest)\n                    else:\n                        Interp1(dp+1, w[5], w[2], dest)\n                        Interp5(dp+2, w[2], w[6], dest)\n                        Interp1(dp+dpL+2, w[6], w[5], dest)\n                        Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                    Interp1(dp, w[5], w[1], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                case 213|212:\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+2, w[5], w[2], dest)\n                        dest[dp+dpL+2] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp2(dp+2, w[5], w[2], w[6], dest)\n                        Interp1(dp+dpL+2, w[6], w[5], dest)\n                        Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                        Interp5(dp+(dpL << 1)+2, w[6], w[8], dest)\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                case 241|240:\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+2] = w[5]\n                        Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp1(dp+dpL+2, w[5], w[6], dest)\n                        Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        Interp1(dp+(dpL << 1)+1, w[8], w[5], dest)\n                        Interp5(dp+(dpL << 1)+2, w[6], w[8], dest)\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                case 236|232:\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        Interp1(dp+(dpL << 1)+2, w[5], w[6], dest)\n                    else:\n                        Interp1(dp+dpL, w[5], w[4], dest)\n                        Interp5(dp+(dpL << 1), w[8], w[4], dest)\n                        Interp1(dp+(dpL << 1)+1, w[8], w[5], dest)\n                        Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                    Interp1(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp2(dp+2, w[5], w[2], w[6], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                case 109|105:\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp, w[5], w[2], dest)\n                        dest[dp+dpL] = w[5]\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                        Interp1(dp+dpL, w[4], w[5], dest)\n                        Interp5(dp+(dpL << 1), w[8], w[4], dest)\n                        Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp2(dp+2, w[5], w[2], w[6], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 171|43:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                        Interp1(dp+(dpL << 1), w[5], w[8], dest)\n                    else:\n                        Interp5(dp, w[4], w[2], dest)\n                        Interp1(dp+1, w[5], w[2], dest)\n                        Interp1(dp+dpL, w[4], w[5], dest)\n                        Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 143|15:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        Interp1(dp+2, w[5], w[6], dest)\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp5(dp, w[4], w[2], dest)\n                        Interp1(dp+1, w[2], w[5], dest)\n                        Interp2(dp+2, w[5], w[2], w[6], dest)\n                        Interp1(dp+dpL, w[5], w[4], dest)\n                        dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 124:\n                    Interp1(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[2], dest)\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    else:\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                        Interp4(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 203:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp4(dp, w[5], w[4], w[2], dest)\n                        Interp3(dp+1, w[5], w[2], dest)\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[6], dest)\n                case 62:\n                    Interp1(dp, w[5], w[1], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                        dest[dp+2] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    else:\n                        Interp3(dp+1, w[5], w[2], dest)\n                        Interp4(dp+2, w[5], w[2], w[6], dest)\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                        dest[dp+dpL] = w[5]\n                        dest[dp+dpL+1] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 211:\n                    Interp1(dp, w[5], w[4], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+2] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                        Interp4(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 118:\n                    Interp1(dp, w[5], w[1], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                        dest[dp+2] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    else:\n                        Interp3(dp+1, w[5], w[2], dest)\n                        Interp4(dp+2, w[5], w[2], w[6], dest)\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 217:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+2] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                        Interp4(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 110:\n                    Interp1(dp, w[5], w[1], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[6], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    else:\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                        Interp4(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 155:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp4(dp, w[5], w[4], w[2], dest)\n                        Interp3(dp+1, w[5], w[2], dest)\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[8], dest)\n                case 188:\n                    Interp1(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[2], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[8], dest)\n                case 185:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[8], dest)\n                case 61:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[2], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 157:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[2], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[8], dest)\n                case 103:\n                    Interp1(dp, w[5], w[4], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 227:\n                    Interp1(dp, w[5], w[4], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[6], dest)\n                case 230:\n                    Interp1(dp, w[5], w[1], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[6], dest)\n                case 199:\n                    Interp1(dp, w[5], w[4], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[6], dest)\n                case 220:\n                    Interp1(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[2], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    else:\n                        Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+2] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                        Interp4(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 158:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[1], dest)\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                        dest[dp+2] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    else:\n                        Interp3(dp+1, w[5], w[2], dest)\n                        Interp4(dp+2, w[5], w[2], w[6], dest)\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                        dest[dp+dpL] = w[5]\n                        dest[dp+dpL+1] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[8], dest)\n                case 234:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[1], dest)\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                        dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    else:\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                        Interp4(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[6], dest)\n                case 242:\n                    Interp1(dp, w[5], w[1], dest)\n                    dest[dp+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                    else:\n                        Interp2(dp+2, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+2] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                        Interp4(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 59:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp4(dp, w[5], w[4], w[2], dest)\n                        Interp3(dp+1, w[5], w[2], dest)\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                    else:\n                        Interp2(dp+2, w[5], w[2], w[6], dest)\n                        dest[dp+dpL+1] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 121:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    else:\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                        Interp4(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    else:\n                        Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 87:\n                    Interp1(dp, w[5], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                        dest[dp+2] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    else:\n                        Interp3(dp+1, w[5], w[2], dest)\n                        Interp4(dp+2, w[5], w[2], w[6], dest)\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    else:\n                        Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 79:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp4(dp, w[5], w[4], w[2], dest)\n                        Interp3(dp+1, w[5], w[2], dest)\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                    Interp1(dp+2, w[5], w[6], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    else:\n                        Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 122:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[1], dest)\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                        dest[dp+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                    else:\n                        Interp2(dp+2, w[5], w[2], w[6], dest)\n                        dest[dp+dpL+1] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    else:\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                        Interp4(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    else:\n                        Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 94:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[1], dest)\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                        dest[dp+2] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    else:\n                        Interp3(dp+1, w[5], w[2], dest)\n                        Interp4(dp+2, w[5], w[2], w[6], dest)\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                        dest[dp+dpL] = w[5]\n                        dest[dp+dpL+1] = w[5]\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    else:\n                        Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    else:\n                        Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 218:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[1], dest)\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                        dest[dp+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                    else:\n                        Interp2(dp+2, w[5], w[2], w[6], dest)\n                        dest[dp+dpL] = w[5]\n                        dest[dp+dpL+1] = w[5]\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    else:\n                        Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+2] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                        Interp4(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 91:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp4(dp, w[5], w[4], w[2], dest)\n                        Interp3(dp+1, w[5], w[2], dest)\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                    else:\n                        Interp2(dp+2, w[5], w[2], w[6], dest)\n                        dest[dp+dpL+1] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    else:\n                        Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    else:\n                        Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 229:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp2(dp+2, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[6], dest)\n                case 167:\n                    Interp1(dp, w[5], w[4], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 173:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp2(dp+2, w[5], w[2], w[6], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 181:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[2], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[8], dest)\n                case 186:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[1], dest)\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                        dest[dp+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                    else:\n                        Interp2(dp+2, w[5], w[2], w[6], dest)\n                        dest[dp+dpL] = w[5]\n                        dest[dp+dpL+1] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[8], dest)\n                case 115:\n                    Interp1(dp, w[5], w[4], dest)\n                    dest[dp+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                    else:\n                        Interp2(dp+2, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    else:\n                        Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 93:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[2], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    else:\n                        Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    else:\n                        Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 206:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[1], dest)\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                        dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[6], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    else:\n                        Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[6], dest)\n                case 205|201:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp2(dp+2, w[5], w[2], w[6], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    else:\n                        Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[6], dest)\n                case 174|46:\n                    if (Diff(w[4], w[2])):\n                        Interp1(dp, w[5], w[1], dest)\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                        dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[6], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 179|147:\n                    Interp1(dp, w[5], w[4], dest)\n                    dest[dp+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                    else:\n                        Interp2(dp+2, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[8], dest)\n                case 117|116:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[2], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    else:\n                        Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 189:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[2], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[8], dest)\n                case 231:\n                    Interp1(dp, w[5], w[4], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[6], dest)\n                case 126:\n                    Interp1(dp, w[5], w[1], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                        dest[dp+2] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    else:\n                        Interp3(dp+1, w[5], w[2], dest)\n                        Interp4(dp+2, w[5], w[2], w[6], dest)\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                        dest[dp+dpL+1] = w[5]\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    else:\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                        Interp4(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 219:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp4(dp, w[5], w[4], w[2], dest)\n                        Interp3(dp+1, w[5], w[2], dest)\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+2] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                        Interp4(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 125:\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp, w[5], w[2], dest)\n                        dest[dp+dpL] = w[5]\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                        Interp1(dp+dpL, w[4], w[5], dest)\n                        Interp5(dp+(dpL << 1), w[8], w[4], dest)\n                        Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[2], dest)\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 221:\n                    if (Diff(w[6], w[8])):\n                        Interp1(dp+2, w[5], w[2], dest)\n                        dest[dp+dpL+2] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp2(dp+2, w[5], w[2], w[6], dest)\n                        Interp1(dp+dpL+2, w[6], w[5], dest)\n                        Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                        Interp5(dp+(dpL << 1)+2, w[6], w[8], dest)\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                case 207:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        Interp1(dp+2, w[5], w[6], dest)\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp5(dp, w[4], w[2], dest)\n                        Interp1(dp+1, w[2], w[5], dest)\n                        Interp2(dp+2, w[5], w[2], w[6], dest)\n                        Interp1(dp+dpL, w[5], w[4], dest)\n                        dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[6], dest)\n                case 238:\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        Interp1(dp+(dpL << 1)+2, w[5], w[6], dest)\n                    else:\n                        Interp1(dp+dpL, w[5], w[4], dest)\n                        Interp5(dp+(dpL << 1), w[8], w[4], dest)\n                        Interp1(dp+(dpL << 1)+1, w[8], w[5], dest)\n                        Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                    Interp1(dp, w[5], w[1], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[6], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                case 190:\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                        dest[dp+2] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                        Interp1(dp+(dpL << 1)+2, w[5], w[8], dest)\n                    else:\n                        Interp1(dp+1, w[5], w[2], dest)\n                        Interp5(dp+2, w[2], w[6], dest)\n                        Interp1(dp+dpL+2, w[6], w[5], dest)\n                        Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                    Interp1(dp, w[5], w[1], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                case 187:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                        Interp1(dp+(dpL << 1), w[5], w[8], dest)\n                    else:\n                        Interp5(dp, w[4], w[2], dest)\n                        Interp1(dp+1, w[5], w[2], dest)\n                        Interp1(dp+dpL, w[4], w[5], dest)\n                        Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[8], dest)\n                case 243:\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+2] = w[5]\n                        Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp1(dp+dpL+2, w[5], w[6], dest)\n                        Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        Interp1(dp+(dpL << 1)+1, w[8], w[5], dest)\n                        Interp5(dp+(dpL << 1)+2, w[6], w[8], dest)\n                    Interp1(dp, w[5], w[4], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                case 119:\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp, w[5], w[4], dest)\n                        dest[dp+1] = w[5]\n                        dest[dp+2] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                        Interp1(dp+1, w[2], w[5], dest)\n                        Interp5(dp+2, w[2], w[6], dest)\n                        Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 237|233:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp2(dp+2, w[5], w[2], w[6], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                    else:\n                        Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[6], dest)\n                case 175|47:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                        dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[6], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 183|151:\n                    Interp1(dp, w[5], w[4], dest)\n                    dest[dp+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                    else:\n                        Interp2(dp+2, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[8], dest)\n                case 245|244:\n                    Interp2(dp, w[5], w[4], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[2], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 250:\n                    Interp1(dp, w[5], w[1], dest)\n                    dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL+1] = w[5]\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                        dest[dp+(dpL << 1)] = w[5]\n                    else:\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                        Interp4(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+2] = w[5]\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                        Interp4(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 123:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp4(dp, w[5], w[4], w[2], dest)\n                        Interp3(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    else:\n                        Interp4(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 95:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp4(dp, w[5], w[4], w[2], dest)\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                        dest[dp+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    else:\n                        Interp4(dp+2, w[5], w[2], w[6], dest)\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                        dest[dp+dpL+1] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 222:\n                    Interp1(dp, w[5], w[1], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                        dest[dp+2] = w[5]\n                    else:\n                        Interp3(dp+1, w[5], w[2], dest)\n                        Interp4(dp+2, w[5], w[2], w[6], dest)\n                        dest[dp+dpL] = w[5]\n                        dest[dp+dpL+1] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                        Interp4(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 252:\n                    Interp1(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[2], dest)\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                        dest[dp+(dpL << 1)] = w[5]\n                    else:\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                        Interp4(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 249:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                    else:\n                        Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+2] = w[5]\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                        Interp4(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 235:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp4(dp, w[5], w[4], w[2], dest)\n                        Interp3(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                    else:\n                        Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[6], dest)\n                case 111:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                        dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[6], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    else:\n                        Interp4(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 63:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                        dest[dp+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    else:\n                        Interp4(dp+2, w[5], w[2], w[6], dest)\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                        dest[dp+dpL] = w[5]\n                        dest[dp+dpL+1] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 159:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp4(dp, w[5], w[4], w[2], dest)\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                        dest[dp+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                    else:\n                        Interp2(dp+2, w[5], w[2], w[6], dest)\n                        dest[dp+dpL+1] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[8], dest)\n                case 215:\n                    Interp1(dp, w[5], w[4], dest)\n                    dest[dp+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                    else:\n                        Interp2(dp+2, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                        Interp4(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 246:\n                    Interp1(dp, w[5], w[1], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                        dest[dp+2] = w[5]\n                    else:\n                        Interp3(dp+1, w[5], w[2], dest)\n                        Interp4(dp+2, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 254:\n                    Interp1(dp, w[5], w[1], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                        dest[dp+2] = w[5]\n                    else:\n                        Interp3(dp+1, w[5], w[2], dest)\n                        Interp4(dp+2, w[5], w[2], w[6], dest)\n                        dest[dp+dpL+1] = w[5]\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                        dest[dp+(dpL << 1)] = w[5]\n                    else:\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                        Interp4(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+2] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                        Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 253:\n                    Interp1(dp, w[5], w[2], dest)\n                    Interp1(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[2], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                    else:\n                        Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 251:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                    else:\n                        Interp4(dp, w[5], w[4], w[2], dest)\n                        Interp3(dp+1, w[5], w[2], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    dest[dp+dpL+1] = w[5]\n                    if (Diff(w[8], w[4])):\n                        dest[dp+dpL] = w[5]\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    else:\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                        Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+dpL+2] = w[5]\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                        Interp4(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 239:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                        dest[dp+1] = w[5]\n                    Interp1(dp+2, w[5], w[6], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    Interp1(dp+dpL+2, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                    else:\n                        Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    Interp1(dp+(dpL << 1)+2, w[5], w[6], dest)\n                case 127:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                        Interp3(dp+1, w[5], w[2], dest)\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    else:\n                        Interp4(dp+2, w[5], w[2], w[6], dest)\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                        dest[dp+dpL+1] = w[5]\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    else:\n                        Interp4(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[9], dest)\n                case 191:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                        dest[dp+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                    else:\n                        Interp2(dp+2, w[5], w[2], w[6], dest)\n                        dest[dp+dpL] = w[5]\n                        dest[dp+dpL+1] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp1(dp+(dpL << 1)+2, w[5], w[8], dest)\n                case 223:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp4(dp, w[5], w[4], w[2], dest)\n                        Interp3(dp+dpL, w[5], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+1] = w[5]\n                        dest[dp+2] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    else:\n                        Interp3(dp+1, w[5], w[2], dest)\n                        Interp2(dp+2, w[5], w[2], w[6], dest)\n                        Interp3(dp+dpL+2, w[5], w[6], dest)\n                        dest[dp+dpL+1] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                        Interp4(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 247:\n                    Interp1(dp, w[5], w[4], dest)\n                    dest[dp+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                    else:\n                        Interp2(dp+2, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[4], dest)\n                    dest[dp+dpL+1] = w[5]\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                case 255:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[4], w[2], dest)\n                        dest[dp+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                    else:\n                        Interp2(dp+2, w[5], w[2], w[6], dest)\n                        dest[dp+dpL] = w[5]\n                        dest[dp+dpL+1] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                    else:\n                        Interp2(dp+(dpL << 1), w[5], w[8], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    else:\n                        Interp2(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n            sp += 1\n            dp += 3\n        dp += (dpL << 1)\n\n\ndef hq4x( width: int, height: int, src, dest ) -> None: # noqa:C901 # pylint: disable=too-many-branches, too-many-statements\n    w = [None] * 10\n    dpL = width << 2\n    dp = 0\n    sp = 0\n\n    #   +----+----+----+\n    #   |    |    |    |\n    #   | w1 | w2 | w3 |\n    #   +----+----+----+\n    #   |    |    |    |\n    #   | w4 | w5 | w6 |\n    #   +----+----+----+\n    #   |    |    |    |\n    #   | w7 | w8 | w9 |\n    #   +----+----+----+\n\n    for j in range(height):\n        prevline = -width if j > 0 else 0\n        nextline = width if j < height - 1 else 0\n\n        for i in range(width):\n            w[2] = src[sp + prevline]\n            w[5] = src[sp]\n            w[8] = src[sp + nextline]\n\n            if i > 0:\n                w[1] = src[sp + prevline - 1]\n                w[4] = src[sp - 1]\n                w[7] = src[sp + nextline - 1]\n            else:\n                w[1] = w[2]\n                w[4] = w[5]\n                w[7] = w[8]\n\n            if i < width - 1:\n                w[3] = src[sp + prevline + 1]\n                w[6] = src[sp + 1]\n                w[9] = src[sp + nextline + 1]\n            else:\n                w[3] = w[2]\n                w[6] = w[5]\n                w[9] = w[8]\n\n            pattern = 0\n            flag = 1\n\n            YUV1 = RGBtoYUV(w[5])\n\n            for k in range(1, 10):\n                if k == 5:\n                    continue\n\n                if w[k] != w[5]:\n                    YUV2 = RGBtoYUV(w[k])\n                    if ( ( abs((YUV1 & Ymask) - (YUV2 & Ymask)) > trY ) or ( abs((YUV1 & Umask) - (YUV2 & Umask)) > trU ) or ( abs((YUV1 & Vmask) - (YUV2 & Vmask)) > trV ) ):\n                        pattern |= flag\n                flag <<= 1\n\n            match pattern:\n                case 0|1|4|32|128|5|132|160|33|129|36|133|164|161|37|165:\n                    Interp2(dp, w[5], w[2], w[4], dest)\n                    Interp6(dp+1, w[5], w[2], w[4], dest)\n                    Interp6(dp+2, w[5], w[2], w[6], dest)\n                    Interp2(dp+3, w[5], w[2], w[6], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[2], dest)\n                    Interp7(dp+dpL+1, w[5], w[4], w[2], dest)\n                    Interp7(dp+dpL+2, w[5], w[6], w[2], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[2], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[8], dest)\n                    Interp7(dp+(dpL << 1)+1, w[5], w[4], w[8], dest)\n                    Interp7(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[8], dest)\n                    Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6], dest)\n                    Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 2|34|130|162:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[3], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[8], dest)\n                    Interp7(dp+(dpL << 1)+1, w[5], w[4], w[8], dest)\n                    Interp7(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[8], dest)\n                    Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6], dest)\n                    Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 16|17|48|49:\n                    Interp2(dp, w[5], w[2], w[4], dest)\n                    Interp6(dp+1, w[5], w[2], w[4], dest)\n                    Interp6(dp+2, w[5], w[2], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[2], dest)\n                    Interp7(dp+dpL+1, w[5], w[4], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[8], dest)\n                    Interp7(dp+(dpL << 1)+1, w[5], w[4], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 64|65|68|69:\n                    Interp2(dp, w[5], w[2], w[4], dest)\n                    Interp6(dp+1, w[5], w[2], w[4], dest)\n                    Interp6(dp+2, w[5], w[2], w[6], dest)\n                    Interp2(dp+3, w[5], w[2], w[6], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[2], dest)\n                    Interp7(dp+dpL+1, w[5], w[4], w[2], dest)\n                    Interp7(dp+dpL+2, w[5], w[6], w[2], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[2], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 8|12|136|140:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp6(dp+1, w[5], w[2], w[1], dest)\n                    Interp6(dp+2, w[5], w[2], w[6], dest)\n                    Interp2(dp+3, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp7(dp+dpL+2, w[5], w[6], w[2], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[2], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp7(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[8], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6], dest)\n                    Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 3|35|131|163:\n                    Interp8(dp, w[5], w[4], dest)\n                    Interp3(dp+1, w[5], w[4], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp8(dp+dpL, w[5], w[4], dest)\n                    Interp3(dp+dpL+1, w[5], w[4], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[3], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[8], dest)\n                    Interp7(dp+(dpL << 1)+1, w[5], w[4], w[8], dest)\n                    Interp7(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[8], dest)\n                    Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6], dest)\n                    Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 6|38|134|166:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    Interp3(dp+2, w[5], w[6], dest)\n                    Interp8(dp+3, w[5], w[6], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp8(dp+dpL+3, w[5], w[6], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[8], dest)\n                    Interp7(dp+(dpL << 1)+1, w[5], w[4], w[8], dest)\n                    Interp7(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[8], dest)\n                    Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6], dest)\n                    Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 20|21|52|53:\n                    Interp2(dp, w[5], w[2], w[4], dest)\n                    Interp6(dp+1, w[5], w[2], w[4], dest)\n                    Interp8(dp+2, w[5], w[2], dest)\n                    Interp8(dp+3, w[5], w[2], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[2], dest)\n                    Interp7(dp+dpL+1, w[5], w[4], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[2], dest)\n                    Interp3(dp+dpL+3, w[5], w[2], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[8], dest)\n                    Interp7(dp+(dpL << 1)+1, w[5], w[4], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 144|145|176|177:\n                    Interp2(dp, w[5], w[2], w[4], dest)\n                    Interp6(dp+1, w[5], w[2], w[4], dest)\n                    Interp6(dp+2, w[5], w[2], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[2], dest)\n                    Interp7(dp+dpL+1, w[5], w[4], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[8], dest)\n                    Interp7(dp+(dpL << 1)+1, w[5], w[4], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+3, w[5], w[8], dest)\n                    Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4], dest)\n                    Interp8(dp+(dpL * 3)+2, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[8], dest)\n                case 192|193|196|197:\n                    Interp2(dp, w[5], w[2], w[4], dest)\n                    Interp6(dp+1, w[5], w[2], w[4], dest)\n                    Interp6(dp+2, w[5], w[2], w[6], dest)\n                    Interp2(dp+3, w[5], w[2], w[6], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[2], dest)\n                    Interp7(dp+dpL+1, w[5], w[4], w[2], dest)\n                    Interp7(dp+dpL+2, w[5], w[6], w[2], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[2], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL << 1)+3, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL * 3)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[6], dest)\n                case 96|97|100|101:\n                    Interp2(dp, w[5], w[2], w[4], dest)\n                    Interp6(dp+1, w[5], w[2], w[4], dest)\n                    Interp6(dp+2, w[5], w[2], w[6], dest)\n                    Interp2(dp+3, w[5], w[2], w[6], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[2], dest)\n                    Interp7(dp+dpL+1, w[5], w[4], w[2], dest)\n                    Interp7(dp+dpL+2, w[5], w[6], w[2], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[2], dest)\n                    Interp8(dp+(dpL << 1), w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[4], dest)\n                    Interp3(dp+(dpL * 3)+1, w[5], w[4], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 40|44|168|172:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp6(dp+1, w[5], w[2], w[1], dest)\n                    Interp6(dp+2, w[5], w[2], w[6], dest)\n                    Interp2(dp+3, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp7(dp+dpL+2, w[5], w[6], w[2], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[2], dest)\n                    Interp3(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp7(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[8], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6], dest)\n                    Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 9|13|137|141:\n                    Interp8(dp, w[5], w[2], dest)\n                    Interp8(dp+1, w[5], w[2], dest)\n                    Interp6(dp+2, w[5], w[2], w[6], dest)\n                    Interp2(dp+3, w[5], w[2], w[6], dest)\n                    Interp3(dp+dpL, w[5], w[2], dest)\n                    Interp3(dp+dpL+1, w[5], w[2], dest)\n                    Interp7(dp+dpL+2, w[5], w[6], w[2], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[2], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp7(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[8], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6], dest)\n                    Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 18|50:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                        Interp8(dp+3, w[5], w[3], dest)\n                        Interp3(dp+dpL+2, w[5], w[3], dest)\n                        Interp1(dp+dpL+3, w[5], w[3], dest)\n                    else:\n                        Interp5(dp+2, w[2], w[5], dest)\n                        Interp5(dp+3, w[2], w[6], dest)\n                        dest[dp+dpL+2] = w[5]\n                        Interp5(dp+dpL+3, w[6], w[5], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[8], dest)\n                    Interp7(dp+(dpL << 1)+1, w[5], w[4], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 80|81:\n                    Interp2(dp, w[5], w[2], w[4], dest)\n                    Interp6(dp+1, w[5], w[2], w[4], dest)\n                    Interp6(dp+2, w[5], w[2], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[2], dest)\n                    Interp7(dp+dpL+1, w[5], w[4], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                        Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                        Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                    else:\n                        dest[dp+(dpL << 1)+2] = w[5]\n                        Interp5(dp+(dpL << 1)+3, w[6], w[5], dest)\n                        Interp5(dp+(dpL * 3)+2, w[8], w[5], dest)\n                        Interp5(dp+(dpL * 3)+3, w[8], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                case 72|76:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp6(dp+1, w[5], w[2], w[1], dest)\n                    Interp6(dp+2, w[5], w[2], w[6], dest)\n                    Interp2(dp+3, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp7(dp+dpL+2, w[5], w[6], w[2], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[2], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                        Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    else:\n                        Interp5(dp+(dpL << 1), w[4], w[5], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        Interp5(dp+(dpL * 3), w[8], w[4], dest)\n                        Interp5(dp+(dpL * 3)+1, w[8], w[5], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[9], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 10|138:\n                    if (Diff(w[4], w[2])):\n                        Interp8(dp, w[5], w[1], dest)\n                        Interp1(dp+1, w[5], w[1], dest)\n                        Interp1(dp+dpL, w[5], w[1], dest)\n                        Interp3(dp+dpL+1, w[5], w[1], dest)\n                    else:\n                        Interp5(dp, w[2], w[4], dest)\n                        Interp5(dp+1, w[2], w[5], dest)\n                        Interp5(dp+dpL, w[4], w[5], dest)\n                        dest[dp+dpL+1] = w[5]\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[3], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp7(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[8], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6], dest)\n                    Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 66:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[3], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 24:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp6(dp+1, w[5], w[2], w[1], dest)\n                    Interp6(dp+2, w[5], w[2], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 7|39|135:\n                    Interp8(dp, w[5], w[4], dest)\n                    Interp3(dp+1, w[5], w[4], dest)\n                    Interp3(dp+2, w[5], w[6], dest)\n                    Interp8(dp+3, w[5], w[6], dest)\n                    Interp8(dp+dpL, w[5], w[4], dest)\n                    Interp3(dp+dpL+1, w[5], w[4], dest)\n                    Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp8(dp+dpL+3, w[5], w[6], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[8], dest)\n                    Interp7(dp+(dpL << 1)+1, w[5], w[4], w[8], dest)\n                    Interp7(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[8], dest)\n                    Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6], dest)\n                    Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 148|149|180:\n                    Interp2(dp, w[5], w[2], w[4], dest)\n                    Interp6(dp+1, w[5], w[2], w[4], dest)\n                    Interp8(dp+2, w[5], w[2], dest)\n                    Interp8(dp+3, w[5], w[2], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[2], dest)\n                    Interp7(dp+dpL+1, w[5], w[4], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[2], dest)\n                    Interp3(dp+dpL+3, w[5], w[2], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[8], dest)\n                    Interp7(dp+(dpL << 1)+1, w[5], w[4], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+3, w[5], w[8], dest)\n                    Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4], dest)\n                    Interp8(dp+(dpL * 3)+2, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[8], dest)\n                case 224|228|225:\n                    Interp2(dp, w[5], w[2], w[4], dest)\n                    Interp6(dp+1, w[5], w[2], w[4], dest)\n                    Interp6(dp+2, w[5], w[2], w[6], dest)\n                    Interp2(dp+3, w[5], w[2], w[6], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[2], dest)\n                    Interp7(dp+dpL+1, w[5], w[4], w[2], dest)\n                    Interp7(dp+dpL+2, w[5], w[6], w[2], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[2], dest)\n                    Interp8(dp+(dpL << 1), w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL << 1)+3, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[4], dest)\n                    Interp3(dp+(dpL * 3)+1, w[5], w[4], dest)\n                    Interp3(dp+(dpL * 3)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[6], dest)\n                case 41|169|45:\n                    Interp8(dp, w[5], w[2], dest)\n                    Interp8(dp+1, w[5], w[2], dest)\n                    Interp6(dp+2, w[5], w[2], w[6], dest)\n                    Interp2(dp+3, w[5], w[2], w[6], dest)\n                    Interp3(dp+dpL, w[5], w[2], dest)\n                    Interp3(dp+dpL+1, w[5], w[2], dest)\n                    Interp7(dp+dpL+2, w[5], w[6], w[2], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[2], dest)\n                    Interp3(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp7(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[8], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6], dest)\n                    Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 22|54:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                        dest[dp+3] = w[5]\n                        dest[dp+dpL+3] = w[5]\n                    else:\n                        Interp5(dp+2, w[2], w[5], dest)\n                        Interp5(dp+3, w[2], w[6], dest)\n                        Interp5(dp+dpL+3, w[6], w[5], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    dest[dp+dpL+2] = w[5]\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[8], dest)\n                    Interp7(dp+(dpL << 1)+1, w[5], w[4], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 208|209:\n                    Interp2(dp, w[5], w[2], w[4], dest)\n                    Interp6(dp+1, w[5], w[2], w[4], dest)\n                    Interp6(dp+2, w[5], w[2], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[2], dest)\n                    Interp7(dp+dpL+1, w[5], w[4], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    dest[dp+(dpL << 1)+2] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+3] = w[5]\n                        dest[dp+(dpL * 3)+2] = w[5]\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1)+3, w[6], w[5], dest)\n                        Interp5(dp+(dpL * 3)+2, w[8], w[5], dest)\n                        Interp5(dp+(dpL * 3)+3, w[8], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                case 104|108:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp6(dp+1, w[5], w[2], w[1], dest)\n                    Interp6(dp+2, w[5], w[2], w[6], dest)\n                    Interp2(dp+3, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp7(dp+dpL+2, w[5], w[6], w[2], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[2], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL * 3)] = w[5]\n                        dest[dp+(dpL * 3)+1] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1), w[4], w[5], dest)\n                        Interp5(dp+(dpL * 3), w[8], w[4], dest)\n                        Interp5(dp+(dpL * 3)+1, w[8], w[5], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[9], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 11|139:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp5(dp, w[2], w[4], dest)\n                        Interp5(dp+1, w[2], w[5], dest)\n                        Interp5(dp+dpL, w[4], w[5], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[3], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp7(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[8], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6], dest)\n                    Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 19|51:\n                    if (Diff(w[2], w[6])):\n                        Interp8(dp, w[5], w[4], dest)\n                        Interp3(dp+1, w[5], w[4], dest)\n                        Interp1(dp+2, w[5], w[3], dest)\n                        Interp8(dp+3, w[5], w[3], dest)\n                        Interp3(dp+dpL+2, w[5], w[3], dest)\n                        Interp1(dp+dpL+3, w[5], w[3], dest)\n                    else:\n                        Interp1(dp, w[5], w[2], dest)\n                        Interp1(dp+1, w[2], w[5], dest)\n                        Interp8(dp+2, w[2], w[6], dest)\n                        Interp5(dp+3, w[2], w[6], dest)\n                        Interp7(dp+dpL+2, w[5], w[6], w[2], dest)\n                        Interp2(dp+dpL+3, w[6], w[5], w[2], dest)\n                    Interp8(dp+dpL, w[5], w[4], dest)\n                    Interp3(dp+dpL+1, w[5], w[4], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[8], dest)\n                    Interp7(dp+(dpL << 1)+1, w[5], w[4], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 146|178:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                        Interp8(dp+3, w[5], w[3], dest)\n                        Interp3(dp+dpL+2, w[5], w[3], dest)\n                        Interp1(dp+dpL+3, w[5], w[3], dest)\n                        Interp3(dp+(dpL << 1)+3, w[5], w[8], dest)\n                        Interp8(dp+(dpL * 3)+3, w[5], w[8], dest)\n                    else:\n                        Interp2(dp+2, w[2], w[5], w[6], dest)\n                        Interp5(dp+3, w[2], w[6], dest)\n                        Interp7(dp+dpL+2, w[5], w[6], w[2], dest)\n                        Interp8(dp+dpL+3, w[6], w[2], dest)\n                        Interp1(dp+(dpL << 1)+3, w[6], w[5], dest)\n                        Interp1(dp+(dpL * 3)+3, w[5], w[6], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[8], dest)\n                    Interp7(dp+(dpL << 1)+1, w[5], w[4], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[8], dest)\n                    Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4], dest)\n                    Interp8(dp+(dpL * 3)+2, w[5], w[8], dest)\n                case 84|85:\n                    Interp2(dp, w[5], w[2], w[4], dest)\n                    Interp6(dp+1, w[5], w[2], w[4], dest)\n                    Interp8(dp+2, w[5], w[2], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp8(dp+3, w[5], w[2], dest)\n                        Interp3(dp+dpL+3, w[5], w[2], dest)\n                        Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                        Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                        Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                    else:\n                        Interp1(dp+3, w[5], w[6], dest)\n                        Interp1(dp+dpL+3, w[6], w[5], dest)\n                        Interp7(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                        Interp8(dp+(dpL << 1)+3, w[6], w[8], dest)\n                        Interp2(dp+(dpL * 3)+2, w[8], w[5], w[6], dest)\n                        Interp5(dp+(dpL * 3)+3, w[8], w[6], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[2], dest)\n                    Interp7(dp+dpL+1, w[5], w[4], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[2], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                case 112|113:\n                    Interp2(dp, w[5], w[2], w[4], dest)\n                    Interp6(dp+1, w[5], w[2], w[4], dest)\n                    Interp6(dp+2, w[5], w[2], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[2], dest)\n                    Interp7(dp+dpL+1, w[5], w[4], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    Interp8(dp+(dpL << 1), w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                        Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                        Interp8(dp+(dpL * 3), w[5], w[4], dest)\n                        Interp3(dp+(dpL * 3)+1, w[5], w[4], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                        Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                    else:\n                        Interp7(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                        Interp2(dp+(dpL << 1)+3, w[6], w[5], w[8], dest)\n                        Interp1(dp+(dpL * 3), w[5], w[8], dest)\n                        Interp1(dp+(dpL * 3)+1, w[8], w[5], dest)\n                        Interp8(dp+(dpL * 3)+2, w[8], w[6], dest)\n                        Interp5(dp+(dpL * 3)+3, w[8], w[6], dest)\n                case 200|204:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp6(dp+1, w[5], w[2], w[1], dest)\n                    Interp6(dp+2, w[5], w[2], w[6], dest)\n                    Interp2(dp+3, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp7(dp+dpL+2, w[5], w[6], w[2], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[2], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                        Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                        Interp3(dp+(dpL * 3)+2, w[5], w[6], dest)\n                        Interp8(dp+(dpL * 3)+3, w[5], w[6], dest)\n                    else:\n                        Interp2(dp+(dpL << 1), w[4], w[5], w[8], dest)\n                        Interp7(dp+(dpL << 1)+1, w[5], w[4], w[8], dest)\n                        Interp5(dp+(dpL * 3), w[8], w[4], dest)\n                        Interp8(dp+(dpL * 3)+1, w[8], w[4], dest)\n                        Interp1(dp+(dpL * 3)+2, w[8], w[5], dest)\n                        Interp1(dp+(dpL * 3)+3, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL << 1)+3, w[5], w[6], dest)\n                case 73|77:\n                    if (Diff(w[8], w[4])):\n                        Interp8(dp, w[5], w[2], dest)\n                        Interp3(dp+dpL, w[5], w[2], dest)\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                        Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    else:\n                        Interp1(dp, w[5], w[4], dest)\n                        Interp1(dp+dpL, w[4], w[5], dest)\n                        Interp8(dp+(dpL << 1), w[4], w[8], dest)\n                        Interp7(dp+(dpL << 1)+1, w[5], w[4], w[8], dest)\n                        Interp5(dp+(dpL * 3), w[8], w[4], dest)\n                        Interp2(dp+(dpL * 3)+1, w[8], w[5], w[4], dest)\n                    Interp8(dp+1, w[5], w[2], dest)\n                    Interp6(dp+2, w[5], w[2], w[6], dest)\n                    Interp2(dp+3, w[5], w[2], w[6], dest)\n                    Interp3(dp+dpL+1, w[5], w[2], dest)\n                    Interp7(dp+dpL+2, w[5], w[6], w[2], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[2], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[9], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 42|170:\n                    if (Diff(w[4], w[2])):\n                        Interp8(dp, w[5], w[1], dest)\n                        Interp1(dp+1, w[5], w[1], dest)\n                        Interp1(dp+dpL, w[5], w[1], dest)\n                        Interp3(dp+dpL+1, w[5], w[1], dest)\n                        Interp3(dp+(dpL << 1), w[5], w[8], dest)\n                        Interp8(dp+(dpL * 3), w[5], w[8], dest)\n                    else:\n                        Interp5(dp, w[2], w[4], dest)\n                        Interp2(dp+1, w[2], w[5], w[4], dest)\n                        Interp8(dp+dpL, w[4], w[2], dest)\n                        Interp7(dp+dpL+1, w[5], w[4], w[2], dest)\n                        Interp1(dp+(dpL << 1), w[4], w[5], dest)\n                        Interp1(dp+(dpL * 3), w[5], w[4], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[3], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp7(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[8], dest)\n                    Interp8(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6], dest)\n                    Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 14|142:\n                    if (Diff(w[4], w[2])):\n                        Interp8(dp, w[5], w[1], dest)\n                        Interp1(dp+1, w[5], w[1], dest)\n                        Interp3(dp+2, w[5], w[6], dest)\n                        Interp8(dp+3, w[5], w[6], dest)\n                        Interp1(dp+dpL, w[5], w[1], dest)\n                        Interp3(dp+dpL+1, w[5], w[1], dest)\n                    else:\n                        Interp5(dp, w[2], w[4], dest)\n                        Interp8(dp+1, w[2], w[4], dest)\n                        Interp1(dp+2, w[2], w[5], dest)\n                        Interp1(dp+3, w[5], w[2], dest)\n                        Interp2(dp+dpL, w[4], w[5], w[2], dest)\n                        Interp7(dp+dpL+1, w[5], w[4], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp8(dp+dpL+3, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp7(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[8], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6], dest)\n                    Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 67:\n                    Interp8(dp, w[5], w[4], dest)\n                    Interp3(dp+1, w[5], w[4], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp8(dp+dpL, w[5], w[4], dest)\n                    Interp3(dp+dpL+1, w[5], w[4], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[3], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 70:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    Interp3(dp+2, w[5], w[6], dest)\n                    Interp8(dp+3, w[5], w[6], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp8(dp+dpL+3, w[5], w[6], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 28:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp6(dp+1, w[5], w[2], w[1], dest)\n                    Interp8(dp+2, w[5], w[2], dest)\n                    Interp8(dp+3, w[5], w[2], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[2], dest)\n                    Interp3(dp+dpL+3, w[5], w[2], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 152:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp6(dp+1, w[5], w[2], w[1], dest)\n                    Interp6(dp+2, w[5], w[2], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+3, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7], dest)\n                    Interp8(dp+(dpL * 3)+2, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[8], dest)\n                case 194:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[3], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL << 1)+3, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL * 3)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[6], dest)\n                case 98:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[3], dest)\n                    Interp8(dp+(dpL << 1), w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[4], dest)\n                    Interp3(dp+(dpL * 3)+1, w[5], w[4], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 56:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp6(dp+1, w[5], w[2], w[1], dest)\n                    Interp6(dp+2, w[5], w[2], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    Interp3(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 25:\n                    Interp8(dp, w[5], w[2], dest)\n                    Interp8(dp+1, w[5], w[2], dest)\n                    Interp6(dp+2, w[5], w[2], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp3(dp+dpL, w[5], w[2], dest)\n                    Interp3(dp+dpL+1, w[5], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 26|31:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp5(dp, w[2], w[4], dest)\n                        Interp5(dp+1, w[2], w[5], dest)\n                        Interp5(dp+dpL, w[4], w[5], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                        dest[dp+3] = w[5]\n                        dest[dp+dpL+3] = w[5]\n                    else:\n                        Interp5(dp+2, w[2], w[5], dest)\n                        Interp5(dp+3, w[2], w[6], dest)\n                        Interp5(dp+dpL+3, w[6], w[5], dest)\n                        dest[dp+dpL+1] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 82|214:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                        dest[dp+3] = w[5]\n                        dest[dp+dpL+3] = w[5]\n                    else:\n                        Interp5(dp+2, w[2], w[5], dest)\n                        Interp5(dp+3, w[2], w[6], dest)\n                        Interp5(dp+dpL+3, w[6], w[5], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    dest[dp+dpL+2] = w[5]\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    dest[dp+(dpL << 1)+2] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+3] = w[5]\n                        dest[dp+(dpL * 3)+2] = w[5]\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1)+3, w[6], w[5], dest)\n                        Interp5(dp+(dpL * 3)+2, w[8], w[5], dest)\n                        Interp5(dp+(dpL * 3)+3, w[8], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                case 88|248:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp6(dp+1, w[5], w[2], w[1], dest)\n                    Interp6(dp+2, w[5], w[2], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL * 3)] = w[5]\n                        dest[dp+(dpL * 3)+1] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1), w[4], w[5], dest)\n                        Interp5(dp+(dpL * 3), w[8], w[4], dest)\n                        Interp5(dp+(dpL * 3)+1, w[8], w[5], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+3] = w[5]\n                        dest[dp+(dpL * 3)+2] = w[5]\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1)+3, w[6], w[5], dest)\n                        Interp5(dp+(dpL * 3)+2, w[8], w[5], dest)\n                        Interp5(dp+(dpL * 3)+3, w[8], w[6], dest)\n                case 74|107:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp5(dp, w[2], w[4], dest)\n                        Interp5(dp+1, w[2], w[5], dest)\n                        Interp5(dp+dpL, w[4], w[5], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[3], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL * 3)] = w[5]\n                        dest[dp+(dpL * 3)+1] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1), w[4], w[5], dest)\n                        Interp5(dp+(dpL * 3), w[8], w[4], dest)\n                        Interp5(dp+(dpL * 3)+1, w[8], w[5], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[9], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 27:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp5(dp, w[2], w[4], dest)\n                        Interp5(dp+1, w[2], w[5], dest)\n                        Interp5(dp+dpL, w[4], w[5], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 86:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                        dest[dp+3] = w[5]\n                        dest[dp+dpL+3] = w[5]\n                    else:\n                        Interp5(dp+2, w[2], w[5], dest)\n                        Interp5(dp+3, w[2], w[6], dest)\n                        Interp5(dp+dpL+3, w[6], w[5], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    dest[dp+dpL+2] = w[5]\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 216:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp6(dp+1, w[5], w[2], w[1], dest)\n                    Interp6(dp+2, w[5], w[2], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    dest[dp+(dpL << 1)+2] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+3] = w[5]\n                        dest[dp+(dpL * 3)+2] = w[5]\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1)+3, w[6], w[5], dest)\n                        Interp5(dp+(dpL * 3)+2, w[8], w[5], dest)\n                        Interp5(dp+(dpL * 3)+3, w[8], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                case 106:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[3], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL * 3)] = w[5]\n                        dest[dp+(dpL * 3)+1] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1), w[4], w[5], dest)\n                        Interp5(dp+(dpL * 3), w[8], w[4], dest)\n                        Interp5(dp+(dpL * 3)+1, w[8], w[5], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[9], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 30:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                        dest[dp+3] = w[5]\n                        dest[dp+dpL+3] = w[5]\n                    else:\n                        Interp5(dp+2, w[2], w[5], dest)\n                        Interp5(dp+3, w[2], w[6], dest)\n                        Interp5(dp+dpL+3, w[6], w[5], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 210:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    dest[dp+(dpL << 1)+2] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+3] = w[5]\n                        dest[dp+(dpL * 3)+2] = w[5]\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1)+3, w[6], w[5], dest)\n                        Interp5(dp+(dpL * 3)+2, w[8], w[5], dest)\n                        Interp5(dp+(dpL * 3)+3, w[8], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                case 120:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp6(dp+1, w[5], w[2], w[1], dest)\n                    Interp6(dp+2, w[5], w[2], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL * 3)] = w[5]\n                        dest[dp+(dpL * 3)+1] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1), w[4], w[5], dest)\n                        Interp5(dp+(dpL * 3), w[8], w[4], dest)\n                        Interp5(dp+(dpL * 3)+1, w[8], w[5], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 75:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp5(dp, w[2], w[4], dest)\n                        Interp5(dp+1, w[2], w[5], dest)\n                        Interp5(dp+dpL, w[4], w[5], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[3], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 29:\n                    Interp8(dp, w[5], w[2], dest)\n                    Interp8(dp+1, w[5], w[2], dest)\n                    Interp8(dp+2, w[5], w[2], dest)\n                    Interp8(dp+3, w[5], w[2], dest)\n                    Interp3(dp+dpL, w[5], w[2], dest)\n                    Interp3(dp+dpL+1, w[5], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[2], dest)\n                    Interp3(dp+dpL+3, w[5], w[2], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 198:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    Interp3(dp+2, w[5], w[6], dest)\n                    Interp8(dp+3, w[5], w[6], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp8(dp+dpL+3, w[5], w[6], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL << 1)+3, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL * 3)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[6], dest)\n                case 184:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp6(dp+1, w[5], w[2], w[1], dest)\n                    Interp6(dp+2, w[5], w[2], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    Interp3(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+3, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+2, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[8], dest)\n                case 99:\n                    Interp8(dp, w[5], w[4], dest)\n                    Interp3(dp+1, w[5], w[4], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp8(dp+dpL, w[5], w[4], dest)\n                    Interp3(dp+dpL+1, w[5], w[4], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[3], dest)\n                    Interp8(dp+(dpL << 1), w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[4], dest)\n                    Interp3(dp+(dpL * 3)+1, w[5], w[4], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 57:\n                    Interp8(dp, w[5], w[2], dest)\n                    Interp8(dp+1, w[5], w[2], dest)\n                    Interp6(dp+2, w[5], w[2], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp3(dp+dpL, w[5], w[2], dest)\n                    Interp3(dp+dpL+1, w[5], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    Interp3(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 71:\n                    Interp8(dp, w[5], w[4], dest)\n                    Interp3(dp+1, w[5], w[4], dest)\n                    Interp3(dp+2, w[5], w[6], dest)\n                    Interp8(dp+3, w[5], w[6], dest)\n                    Interp8(dp+dpL, w[5], w[4], dest)\n                    Interp3(dp+dpL+1, w[5], w[4], dest)\n                    Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp8(dp+dpL+3, w[5], w[6], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 156:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp6(dp+1, w[5], w[2], w[1], dest)\n                    Interp8(dp+2, w[5], w[2], dest)\n                    Interp8(dp+3, w[5], w[2], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[2], dest)\n                    Interp3(dp+dpL+3, w[5], w[2], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+3, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7], dest)\n                    Interp8(dp+(dpL * 3)+2, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[8], dest)\n                case 226:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[3], dest)\n                    Interp8(dp+(dpL << 1), w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL << 1)+3, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[4], dest)\n                    Interp3(dp+(dpL * 3)+1, w[5], w[4], dest)\n                    Interp3(dp+(dpL * 3)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[6], dest)\n                case 60:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp6(dp+1, w[5], w[2], w[1], dest)\n                    Interp8(dp+2, w[5], w[2], dest)\n                    Interp8(dp+3, w[5], w[2], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[2], dest)\n                    Interp3(dp+dpL+3, w[5], w[2], dest)\n                    Interp3(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 195:\n                    Interp8(dp, w[5], w[4], dest)\n                    Interp3(dp+1, w[5], w[4], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp8(dp+dpL, w[5], w[4], dest)\n                    Interp3(dp+dpL+1, w[5], w[4], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[3], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL << 1)+3, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL * 3)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[6], dest)\n                case 102:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    Interp3(dp+2, w[5], w[6], dest)\n                    Interp8(dp+3, w[5], w[6], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp8(dp+dpL+3, w[5], w[6], dest)\n                    Interp8(dp+(dpL << 1), w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[4], dest)\n                    Interp3(dp+(dpL * 3)+1, w[5], w[4], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 153:\n                    Interp8(dp, w[5], w[2], dest)\n                    Interp8(dp+1, w[5], w[2], dest)\n                    Interp6(dp+2, w[5], w[2], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp3(dp+dpL, w[5], w[2], dest)\n                    Interp3(dp+dpL+1, w[5], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+3, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7], dest)\n                    Interp8(dp+(dpL * 3)+2, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[8], dest)\n                case 58:\n                    if (Diff(w[4], w[2])):\n                        Interp8(dp, w[5], w[1], dest)\n                        Interp1(dp+1, w[5], w[1], dest)\n                        Interp1(dp+dpL, w[5], w[1], dest)\n                        Interp3(dp+dpL+1, w[5], w[1], dest)\n                    else:\n                        Interp2(dp, w[5], w[2], w[4], dest)\n                        Interp1(dp+1, w[5], w[2], dest)\n                        Interp1(dp+dpL, w[5], w[4], dest)\n                        dest[dp+dpL+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                        Interp8(dp+3, w[5], w[3], dest)\n                        Interp3(dp+dpL+2, w[5], w[3], dest)\n                        Interp1(dp+dpL+3, w[5], w[3], dest)\n                    else:\n                        Interp1(dp+2, w[5], w[2], dest)\n                        Interp2(dp+3, w[5], w[2], w[6], dest)\n                        dest[dp+dpL+2] = w[5]\n                        Interp1(dp+dpL+3, w[5], w[6], dest)\n                    Interp3(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 83:\n                    Interp8(dp, w[5], w[4], dest)\n                    Interp3(dp+1, w[5], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                        Interp8(dp+3, w[5], w[3], dest)\n                        Interp3(dp+dpL+2, w[5], w[3], dest)\n                        Interp1(dp+dpL+3, w[5], w[3], dest)\n                    else:\n                        Interp1(dp+2, w[5], w[2], dest)\n                        Interp2(dp+3, w[5], w[2], w[6], dest)\n                        dest[dp+dpL+2] = w[5]\n                        Interp1(dp+dpL+3, w[5], w[6], dest)\n                    Interp8(dp+dpL, w[5], w[4], dest)\n                    Interp3(dp+dpL+1, w[5], w[4], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                        Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                        Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                    else:\n                        dest[dp+(dpL << 1)+2] = w[5]\n                        Interp1(dp+(dpL << 1)+3, w[5], w[6], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[8], dest)\n                        Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                case 92:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp6(dp+1, w[5], w[2], w[1], dest)\n                    Interp8(dp+2, w[5], w[2], dest)\n                    Interp8(dp+3, w[5], w[2], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[2], dest)\n                    Interp3(dp+dpL+3, w[5], w[2], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                        Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    else:\n                        Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                        Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                        Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                    else:\n                        dest[dp+(dpL << 1)+2] = w[5]\n                        Interp1(dp+(dpL << 1)+3, w[5], w[6], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[8], dest)\n                        Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 202:\n                    if (Diff(w[4], w[2])):\n                        Interp8(dp, w[5], w[1], dest)\n                        Interp1(dp+1, w[5], w[1], dest)\n                        Interp1(dp+dpL, w[5], w[1], dest)\n                        Interp3(dp+dpL+1, w[5], w[1], dest)\n                    else:\n                        Interp2(dp, w[5], w[2], w[4], dest)\n                        Interp1(dp+1, w[5], w[2], dest)\n                        Interp1(dp+dpL, w[5], w[4], dest)\n                        dest[dp+dpL+1] = w[5]\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[3], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                        Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    else:\n                        Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL << 1)+3, w[5], w[6], dest)\n                    Interp3(dp+(dpL * 3)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[6], dest)\n                case 78:\n                    if (Diff(w[4], w[2])):\n                        Interp8(dp, w[5], w[1], dest)\n                        Interp1(dp+1, w[5], w[1], dest)\n                        Interp1(dp+dpL, w[5], w[1], dest)\n                        Interp3(dp+dpL+1, w[5], w[1], dest)\n                    else:\n                        Interp2(dp, w[5], w[2], w[4], dest)\n                        Interp1(dp+1, w[5], w[2], dest)\n                        Interp1(dp+dpL, w[5], w[4], dest)\n                        dest[dp+dpL+1] = w[5]\n                    Interp3(dp+2, w[5], w[6], dest)\n                    Interp8(dp+3, w[5], w[6], dest)\n                    Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp8(dp+dpL+3, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                        Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    else:\n                        Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[9], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 154:\n                    if (Diff(w[4], w[2])):\n                        Interp8(dp, w[5], w[1], dest)\n                        Interp1(dp+1, w[5], w[1], dest)\n                        Interp1(dp+dpL, w[5], w[1], dest)\n                        Interp3(dp+dpL+1, w[5], w[1], dest)\n                    else:\n                        Interp2(dp, w[5], w[2], w[4], dest)\n                        Interp1(dp+1, w[5], w[2], dest)\n                        Interp1(dp+dpL, w[5], w[4], dest)\n                        dest[dp+dpL+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                        Interp8(dp+3, w[5], w[3], dest)\n                        Interp3(dp+dpL+2, w[5], w[3], dest)\n                        Interp1(dp+dpL+3, w[5], w[3], dest)\n                    else:\n                        Interp1(dp+2, w[5], w[2], dest)\n                        Interp2(dp+3, w[5], w[2], w[6], dest)\n                        dest[dp+dpL+2] = w[5]\n                        Interp1(dp+dpL+3, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+3, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7], dest)\n                    Interp8(dp+(dpL * 3)+2, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[8], dest)\n                case 114:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                        Interp8(dp+3, w[5], w[3], dest)\n                        Interp3(dp+dpL+2, w[5], w[3], dest)\n                        Interp1(dp+dpL+3, w[5], w[3], dest)\n                    else:\n                        Interp1(dp+2, w[5], w[2], dest)\n                        Interp2(dp+3, w[5], w[2], w[6], dest)\n                        dest[dp+dpL+2] = w[5]\n                        Interp1(dp+dpL+3, w[5], w[6], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp8(dp+(dpL << 1), w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                        Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                        Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                    else:\n                        dest[dp+(dpL << 1)+2] = w[5]\n                        Interp1(dp+(dpL << 1)+3, w[5], w[6], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[8], dest)\n                        Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[4], dest)\n                    Interp3(dp+(dpL * 3)+1, w[5], w[4], dest)\n                case 89:\n                    Interp8(dp, w[5], w[2], dest)\n                    Interp8(dp+1, w[5], w[2], dest)\n                    Interp6(dp+2, w[5], w[2], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp3(dp+dpL, w[5], w[2], dest)\n                    Interp3(dp+dpL+1, w[5], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                        Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    else:\n                        Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                        Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                        Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                    else:\n                        dest[dp+(dpL << 1)+2] = w[5]\n                        Interp1(dp+(dpL << 1)+3, w[5], w[6], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[8], dest)\n                        Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 90:\n                    if (Diff(w[4], w[2])):\n                        Interp8(dp, w[5], w[1], dest)\n                        Interp1(dp+1, w[5], w[1], dest)\n                        Interp1(dp+dpL, w[5], w[1], dest)\n                        Interp3(dp+dpL+1, w[5], w[1], dest)\n                    else:\n                        Interp2(dp, w[5], w[2], w[4], dest)\n                        Interp1(dp+1, w[5], w[2], dest)\n                        Interp1(dp+dpL, w[5], w[4], dest)\n                        dest[dp+dpL+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                        Interp8(dp+3, w[5], w[3], dest)\n                        Interp3(dp+dpL+2, w[5], w[3], dest)\n                        Interp1(dp+dpL+3, w[5], w[3], dest)\n                    else:\n                        Interp1(dp+2, w[5], w[2], dest)\n                        Interp2(dp+3, w[5], w[2], w[6], dest)\n                        dest[dp+dpL+2] = w[5]\n                        Interp1(dp+dpL+3, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                        Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    else:\n                        Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                        Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                        Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                    else:\n                        dest[dp+(dpL << 1)+2] = w[5]\n                        Interp1(dp+(dpL << 1)+3, w[5], w[6], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[8], dest)\n                        Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 55|23:\n                    if (Diff(w[2], w[6])):\n                        Interp8(dp, w[5], w[4], dest)\n                        Interp3(dp+1, w[5], w[4], dest)\n                        dest[dp+2] = w[5]\n                        dest[dp+3] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                        dest[dp+dpL+3] = w[5]\n                    else:\n                        Interp1(dp, w[5], w[2], dest)\n                        Interp1(dp+1, w[2], w[5], dest)\n                        Interp8(dp+2, w[2], w[6], dest)\n                        Interp5(dp+3, w[2], w[6], dest)\n                        Interp7(dp+dpL+2, w[5], w[6], w[2], dest)\n                        Interp2(dp+dpL+3, w[6], w[5], w[2], dest)\n                    Interp8(dp+dpL, w[5], w[4], dest)\n                    Interp3(dp+dpL+1, w[5], w[4], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[8], dest)\n                    Interp7(dp+(dpL << 1)+1, w[5], w[4], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 182|150:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                        dest[dp+3] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                        dest[dp+dpL+3] = w[5]\n                        Interp3(dp+(dpL << 1)+3, w[5], w[8], dest)\n                        Interp8(dp+(dpL * 3)+3, w[5], w[8], dest)\n                    else:\n                        Interp2(dp+2, w[2], w[5], w[6], dest)\n                        Interp5(dp+3, w[2], w[6], dest)\n                        Interp7(dp+dpL+2, w[5], w[6], w[2], dest)\n                        Interp8(dp+dpL+3, w[6], w[2], dest)\n                        Interp1(dp+(dpL << 1)+3, w[6], w[5], dest)\n                        Interp1(dp+(dpL * 3)+3, w[5], w[6], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[8], dest)\n                    Interp7(dp+(dpL << 1)+1, w[5], w[4], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[8], dest)\n                    Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4], dest)\n                    Interp8(dp+(dpL * 3)+2, w[5], w[8], dest)\n                case 213|212:\n                    Interp2(dp, w[5], w[2], w[4], dest)\n                    Interp6(dp+1, w[5], w[2], w[4], dest)\n                    Interp8(dp+2, w[5], w[2], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp8(dp+3, w[5], w[2], dest)\n                        Interp3(dp+dpL+3, w[5], w[2], dest)\n                        dest[dp+(dpL << 1)+2] = w[5]\n                        dest[dp+(dpL << 1)+3] = w[5]\n                        dest[dp+(dpL * 3)+2] = w[5]\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp1(dp+3, w[5], w[6], dest)\n                        Interp1(dp+dpL+3, w[6], w[5], dest)\n                        Interp7(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                        Interp8(dp+(dpL << 1)+3, w[6], w[8], dest)\n                        Interp2(dp+(dpL * 3)+2, w[8], w[5], w[6], dest)\n                        Interp5(dp+(dpL * 3)+3, w[8], w[6], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[2], dest)\n                    Interp7(dp+dpL+1, w[5], w[4], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[2], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                case 241|240:\n                    Interp2(dp, w[5], w[2], w[4], dest)\n                    Interp6(dp+1, w[5], w[2], w[4], dest)\n                    Interp6(dp+2, w[5], w[2], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[2], dest)\n                    Interp7(dp+dpL+1, w[5], w[4], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    Interp8(dp+(dpL << 1), w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+2] = w[5]\n                        dest[dp+(dpL << 1)+3] = w[5]\n                        Interp8(dp+(dpL * 3), w[5], w[4], dest)\n                        Interp3(dp+(dpL * 3)+1, w[5], w[4], dest)\n                        dest[dp+(dpL * 3)+2] = w[5]\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp7(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                        Interp2(dp+(dpL << 1)+3, w[6], w[5], w[8], dest)\n                        Interp1(dp+(dpL * 3), w[5], w[8], dest)\n                        Interp1(dp+(dpL * 3)+1, w[8], w[5], dest)\n                        Interp8(dp+(dpL * 3)+2, w[8], w[6], dest)\n                        Interp5(dp+(dpL * 3)+3, w[8], w[6], dest)\n                case 236|232:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp6(dp+1, w[5], w[2], w[1], dest)\n                    Interp6(dp+2, w[5], w[2], w[6], dest)\n                    Interp2(dp+3, w[5], w[2], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp7(dp+dpL+2, w[5], w[6], w[2], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[2], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        dest[dp+(dpL * 3)] = w[5]\n                        dest[dp+(dpL * 3)+1] = w[5]\n                        Interp3(dp+(dpL * 3)+2, w[5], w[6], dest)\n                        Interp8(dp+(dpL * 3)+3, w[5], w[6], dest)\n                    else:\n                        Interp2(dp+(dpL << 1), w[4], w[5], w[8], dest)\n                        Interp7(dp+(dpL << 1)+1, w[5], w[4], w[8], dest)\n                        Interp5(dp+(dpL * 3), w[8], w[4], dest)\n                        Interp8(dp+(dpL * 3)+1, w[8], w[4], dest)\n                        Interp1(dp+(dpL * 3)+2, w[8], w[5], dest)\n                        Interp1(dp+(dpL * 3)+3, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL << 1)+3, w[5], w[6], dest)\n                case 109|105:\n                    if (Diff(w[8], w[4])):\n                        Interp8(dp, w[5], w[2], dest)\n                        Interp3(dp+dpL, w[5], w[2], dest)\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        dest[dp+(dpL * 3)] = w[5]\n                        dest[dp+(dpL * 3)+1] = w[5]\n                    else:\n                        Interp1(dp, w[5], w[4], dest)\n                        Interp1(dp+dpL, w[4], w[5], dest)\n                        Interp8(dp+(dpL << 1), w[4], w[8], dest)\n                        Interp7(dp+(dpL << 1)+1, w[5], w[4], w[8], dest)\n                        Interp5(dp+(dpL * 3), w[8], w[4], dest)\n                        Interp2(dp+(dpL * 3)+1, w[8], w[5], w[4], dest)\n                    Interp8(dp+1, w[5], w[2], dest)\n                    Interp6(dp+2, w[5], w[2], w[6], dest)\n                    Interp2(dp+3, w[5], w[2], w[6], dest)\n                    Interp3(dp+dpL+1, w[5], w[2], dest)\n                    Interp7(dp+dpL+2, w[5], w[6], w[2], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[2], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[9], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 171|43:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                        dest[dp+dpL+1] = w[5]\n                        Interp3(dp+(dpL << 1), w[5], w[8], dest)\n                        Interp8(dp+(dpL * 3), w[5], w[8], dest)\n                    else:\n                        Interp5(dp, w[2], w[4], dest)\n                        Interp2(dp+1, w[2], w[5], w[4], dest)\n                        Interp8(dp+dpL, w[4], w[2], dest)\n                        Interp7(dp+dpL+1, w[5], w[4], w[2], dest)\n                        Interp1(dp+(dpL << 1), w[4], w[5], dest)\n                        Interp1(dp+(dpL * 3), w[5], w[4], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[3], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp7(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[8], dest)\n                    Interp8(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6], dest)\n                    Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 143|15:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        Interp3(dp+2, w[5], w[6], dest)\n                        Interp8(dp+3, w[5], w[6], dest)\n                        dest[dp+dpL] = w[5]\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp5(dp, w[2], w[4], dest)\n                        Interp8(dp+1, w[2], w[4], dest)\n                        Interp1(dp+2, w[2], w[5], dest)\n                        Interp1(dp+3, w[5], w[2], dest)\n                        Interp2(dp+dpL, w[4], w[5], w[2], dest)\n                        Interp7(dp+dpL+1, w[5], w[4], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp8(dp+dpL+3, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp7(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[8], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6], dest)\n                    Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 124:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp6(dp+1, w[5], w[2], w[1], dest)\n                    Interp8(dp+2, w[5], w[2], dest)\n                    Interp8(dp+3, w[5], w[2], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[2], dest)\n                    Interp3(dp+dpL+3, w[5], w[2], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL * 3)] = w[5]\n                        dest[dp+(dpL * 3)+1] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1), w[4], w[5], dest)\n                        Interp5(dp+(dpL * 3), w[8], w[4], dest)\n                        Interp5(dp+(dpL * 3)+1, w[8], w[5], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 203:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp5(dp, w[2], w[4], dest)\n                        Interp5(dp+1, w[2], w[5], dest)\n                        Interp5(dp+dpL, w[4], w[5], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[3], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL << 1)+3, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL * 3)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[6], dest)\n                case 62:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                        dest[dp+3] = w[5]\n                        dest[dp+dpL+3] = w[5]\n                    else:\n                        Interp5(dp+2, w[2], w[5], dest)\n                        Interp5(dp+3, w[2], w[6], dest)\n                        Interp5(dp+dpL+3, w[6], w[5], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    dest[dp+dpL+2] = w[5]\n                    Interp3(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 211:\n                    Interp8(dp, w[5], w[4], dest)\n                    Interp3(dp+1, w[5], w[4], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp8(dp+dpL, w[5], w[4], dest)\n                    Interp3(dp+dpL+1, w[5], w[4], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    dest[dp+(dpL << 1)+2] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+3] = w[5]\n                        dest[dp+(dpL * 3)+2] = w[5]\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1)+3, w[6], w[5], dest)\n                        Interp5(dp+(dpL * 3)+2, w[8], w[5], dest)\n                        Interp5(dp+(dpL * 3)+3, w[8], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                case 118:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                        dest[dp+3] = w[5]\n                        dest[dp+dpL+3] = w[5]\n                    else:\n                        Interp5(dp+2, w[2], w[5], dest)\n                        Interp5(dp+3, w[2], w[6], dest)\n                        Interp5(dp+dpL+3, w[6], w[5], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    dest[dp+dpL+2] = w[5]\n                    Interp8(dp+(dpL << 1), w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[4], dest)\n                    Interp3(dp+(dpL * 3)+1, w[5], w[4], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 217:\n                    Interp8(dp, w[5], w[2], dest)\n                    Interp8(dp+1, w[5], w[2], dest)\n                    Interp6(dp+2, w[5], w[2], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp3(dp+dpL, w[5], w[2], dest)\n                    Interp3(dp+dpL+1, w[5], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    dest[dp+(dpL << 1)+2] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+3] = w[5]\n                        dest[dp+(dpL * 3)+2] = w[5]\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1)+3, w[6], w[5], dest)\n                        Interp5(dp+(dpL * 3)+2, w[8], w[5], dest)\n                        Interp5(dp+(dpL * 3)+3, w[8], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                case 110:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    Interp3(dp+2, w[5], w[6], dest)\n                    Interp8(dp+3, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp8(dp+dpL+3, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL * 3)] = w[5]\n                        dest[dp+(dpL * 3)+1] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1), w[4], w[5], dest)\n                        Interp5(dp+(dpL * 3), w[8], w[4], dest)\n                        Interp5(dp+(dpL * 3)+1, w[8], w[5], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[9], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 155:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp5(dp, w[2], w[4], dest)\n                        Interp5(dp+1, w[2], w[5], dest)\n                        Interp5(dp+dpL, w[4], w[5], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+3, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7], dest)\n                    Interp8(dp+(dpL * 3)+2, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[8], dest)\n                case 188:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp6(dp+1, w[5], w[2], w[1], dest)\n                    Interp8(dp+2, w[5], w[2], dest)\n                    Interp8(dp+3, w[5], w[2], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[2], dest)\n                    Interp3(dp+dpL+3, w[5], w[2], dest)\n                    Interp3(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+3, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+2, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[8], dest)\n                case 185:\n                    Interp8(dp, w[5], w[2], dest)\n                    Interp8(dp+1, w[5], w[2], dest)\n                    Interp6(dp+2, w[5], w[2], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp3(dp+dpL, w[5], w[2], dest)\n                    Interp3(dp+dpL+1, w[5], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    Interp3(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+3, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+2, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[8], dest)\n                case 61:\n                    Interp8(dp, w[5], w[2], dest)\n                    Interp8(dp+1, w[5], w[2], dest)\n                    Interp8(dp+2, w[5], w[2], dest)\n                    Interp8(dp+3, w[5], w[2], dest)\n                    Interp3(dp+dpL, w[5], w[2], dest)\n                    Interp3(dp+dpL+1, w[5], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[2], dest)\n                    Interp3(dp+dpL+3, w[5], w[2], dest)\n                    Interp3(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 157:\n                    Interp8(dp, w[5], w[2], dest)\n                    Interp8(dp+1, w[5], w[2], dest)\n                    Interp8(dp+2, w[5], w[2], dest)\n                    Interp8(dp+3, w[5], w[2], dest)\n                    Interp3(dp+dpL, w[5], w[2], dest)\n                    Interp3(dp+dpL+1, w[5], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[2], dest)\n                    Interp3(dp+dpL+3, w[5], w[2], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+3, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7], dest)\n                    Interp8(dp+(dpL * 3)+2, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[8], dest)\n                case 103:\n                    Interp8(dp, w[5], w[4], dest)\n                    Interp3(dp+1, w[5], w[4], dest)\n                    Interp3(dp+2, w[5], w[6], dest)\n                    Interp8(dp+3, w[5], w[6], dest)\n                    Interp8(dp+dpL, w[5], w[4], dest)\n                    Interp3(dp+dpL+1, w[5], w[4], dest)\n                    Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp8(dp+dpL+3, w[5], w[6], dest)\n                    Interp8(dp+(dpL << 1), w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[4], dest)\n                    Interp3(dp+(dpL * 3)+1, w[5], w[4], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 227:\n                    Interp8(dp, w[5], w[4], dest)\n                    Interp3(dp+1, w[5], w[4], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp8(dp+dpL, w[5], w[4], dest)\n                    Interp3(dp+dpL+1, w[5], w[4], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[3], dest)\n                    Interp8(dp+(dpL << 1), w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL << 1)+3, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[4], dest)\n                    Interp3(dp+(dpL * 3)+1, w[5], w[4], dest)\n                    Interp3(dp+(dpL * 3)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[6], dest)\n                case 230:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    Interp3(dp+2, w[5], w[6], dest)\n                    Interp8(dp+3, w[5], w[6], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp8(dp+dpL+3, w[5], w[6], dest)\n                    Interp8(dp+(dpL << 1), w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL << 1)+3, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[4], dest)\n                    Interp3(dp+(dpL * 3)+1, w[5], w[4], dest)\n                    Interp3(dp+(dpL * 3)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[6], dest)\n                case 199:\n                    Interp8(dp, w[5], w[4], dest)\n                    Interp3(dp+1, w[5], w[4], dest)\n                    Interp3(dp+2, w[5], w[6], dest)\n                    Interp8(dp+3, w[5], w[6], dest)\n                    Interp8(dp+dpL, w[5], w[4], dest)\n                    Interp3(dp+dpL+1, w[5], w[4], dest)\n                    Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp8(dp+dpL+3, w[5], w[6], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL << 1)+3, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL * 3)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[6], dest)\n                case 220:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp6(dp+1, w[5], w[2], w[1], dest)\n                    Interp8(dp+2, w[5], w[2], dest)\n                    Interp8(dp+3, w[5], w[2], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[2], dest)\n                    Interp3(dp+dpL+3, w[5], w[2], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                        Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    else:\n                        Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[8], dest)\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+3] = w[5]\n                        dest[dp+(dpL * 3)+2] = w[5]\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1)+3, w[6], w[5], dest)\n                        Interp5(dp+(dpL * 3)+2, w[8], w[5], dest)\n                        Interp5(dp+(dpL * 3)+3, w[8], w[6], dest)\n                case 158:\n                    if (Diff(w[4], w[2])):\n                        Interp8(dp, w[5], w[1], dest)\n                        Interp1(dp+1, w[5], w[1], dest)\n                        Interp1(dp+dpL, w[5], w[1], dest)\n                        Interp3(dp+dpL+1, w[5], w[1], dest)\n                    else:\n                        Interp2(dp, w[5], w[2], w[4], dest)\n                        Interp1(dp+1, w[5], w[2], dest)\n                        Interp1(dp+dpL, w[5], w[4], dest)\n                        dest[dp+dpL+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                        dest[dp+3] = w[5]\n                        dest[dp+dpL+3] = w[5]\n                    else:\n                        Interp5(dp+2, w[2], w[5], dest)\n                        Interp5(dp+3, w[2], w[6], dest)\n                        Interp5(dp+dpL+3, w[6], w[5], dest)\n                        dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+3, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7], dest)\n                    Interp8(dp+(dpL * 3)+2, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[8], dest)\n                case 234:\n                    if (Diff(w[4], w[2])):\n                        Interp8(dp, w[5], w[1], dest)\n                        Interp1(dp+1, w[5], w[1], dest)\n                        Interp1(dp+dpL, w[5], w[1], dest)\n                        Interp3(dp+dpL+1, w[5], w[1], dest)\n                    else:\n                        Interp2(dp, w[5], w[2], w[4], dest)\n                        Interp1(dp+1, w[5], w[2], dest)\n                        Interp1(dp+dpL, w[5], w[4], dest)\n                        dest[dp+dpL+1] = w[5]\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[3], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL * 3)] = w[5]\n                        dest[dp+(dpL * 3)+1] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1), w[4], w[5], dest)\n                        Interp5(dp+(dpL * 3), w[8], w[4], dest)\n                        Interp5(dp+(dpL * 3)+1, w[8], w[5], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    Interp3(dp+(dpL << 1)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL << 1)+3, w[5], w[6], dest)\n                    Interp3(dp+(dpL * 3)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[6], dest)\n                case 242:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                        Interp8(dp+3, w[5], w[3], dest)\n                        Interp3(dp+dpL+2, w[5], w[3], dest)\n                        Interp1(dp+dpL+3, w[5], w[3], dest)\n                    else:\n                        Interp1(dp+2, w[5], w[2], dest)\n                        Interp2(dp+3, w[5], w[2], w[6], dest)\n                        dest[dp+dpL+2] = w[5]\n                        Interp1(dp+dpL+3, w[5], w[6], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp8(dp+(dpL << 1), w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[4], dest)\n                    dest[dp+(dpL << 1)+2] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+3] = w[5]\n                        dest[dp+(dpL * 3)+2] = w[5]\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1)+3, w[6], w[5], dest)\n                        Interp5(dp+(dpL * 3)+2, w[8], w[5], dest)\n                        Interp5(dp+(dpL * 3)+3, w[8], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[4], dest)\n                    Interp3(dp+(dpL * 3)+1, w[5], w[4], dest)\n                case 59:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp5(dp, w[2], w[4], dest)\n                        Interp5(dp+1, w[2], w[5], dest)\n                        Interp5(dp+dpL, w[4], w[5], dest)\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                        Interp8(dp+3, w[5], w[3], dest)\n                        Interp3(dp+dpL+2, w[5], w[3], dest)\n                        Interp1(dp+dpL+3, w[5], w[3], dest)\n                    else:\n                        Interp1(dp+2, w[5], w[2], dest)\n                        Interp2(dp+3, w[5], w[2], w[6], dest)\n                        dest[dp+dpL+2] = w[5]\n                        Interp1(dp+dpL+3, w[5], w[6], dest)\n                        dest[dp+dpL+1] = w[5]\n                    Interp3(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 121:\n                    Interp8(dp, w[5], w[2], dest)\n                    Interp8(dp+1, w[5], w[2], dest)\n                    Interp6(dp+2, w[5], w[2], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp3(dp+dpL, w[5], w[2], dest)\n                    Interp3(dp+dpL+1, w[5], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL * 3)] = w[5]\n                        dest[dp+(dpL * 3)+1] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1), w[4], w[5], dest)\n                        Interp5(dp+(dpL * 3), w[8], w[4], dest)\n                        Interp5(dp+(dpL * 3)+1, w[8], w[5], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    if (Diff(w[6], w[8])):\n                        Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                        Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                        Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                    else:\n                        dest[dp+(dpL << 1)+2] = w[5]\n                        Interp1(dp+(dpL << 1)+3, w[5], w[6], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[8], dest)\n                        Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 87:\n                    Interp8(dp, w[5], w[4], dest)\n                    Interp3(dp+1, w[5], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                        dest[dp+3] = w[5]\n                        dest[dp+dpL+3] = w[5]\n                    else:\n                        Interp5(dp+2, w[2], w[5], dest)\n                        Interp5(dp+3, w[2], w[6], dest)\n                        Interp5(dp+dpL+3, w[6], w[5], dest)\n                    Interp8(dp+dpL, w[5], w[4], dest)\n                    Interp3(dp+dpL+1, w[5], w[4], dest)\n                    dest[dp+dpL+2] = w[5]\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                        Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                        Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                    else:\n                        dest[dp+(dpL << 1)+2] = w[5]\n                        Interp1(dp+(dpL << 1)+3, w[5], w[6], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[8], dest)\n                        Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                case 79:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp5(dp, w[2], w[4], dest)\n                        Interp5(dp+1, w[2], w[5], dest)\n                        Interp5(dp+dpL, w[4], w[5], dest)\n                    Interp3(dp+2, w[5], w[6], dest)\n                    Interp8(dp+3, w[5], w[6], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp8(dp+dpL+3, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                        Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    else:\n                        Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[9], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 122:\n                    if (Diff(w[4], w[2])):\n                        Interp8(dp, w[5], w[1], dest)\n                        Interp1(dp+1, w[5], w[1], dest)\n                        Interp1(dp+dpL, w[5], w[1], dest)\n                        Interp3(dp+dpL+1, w[5], w[1], dest)\n                    else:\n                        Interp2(dp, w[5], w[2], w[4], dest)\n                        Interp1(dp+1, w[5], w[2], dest)\n                        Interp1(dp+dpL, w[5], w[4], dest)\n                        dest[dp+dpL+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                        Interp8(dp+3, w[5], w[3], dest)\n                        Interp3(dp+dpL+2, w[5], w[3], dest)\n                        Interp1(dp+dpL+3, w[5], w[3], dest)\n                    else:\n                        Interp1(dp+2, w[5], w[2], dest)\n                        Interp2(dp+3, w[5], w[2], w[6], dest)\n                        dest[dp+dpL+2] = w[5]\n                        Interp1(dp+dpL+3, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL * 3)] = w[5]\n                        dest[dp+(dpL * 3)+1] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1), w[4], w[5], dest)\n                        Interp5(dp+(dpL * 3), w[8], w[4], dest)\n                        Interp5(dp+(dpL * 3)+1, w[8], w[5], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    if (Diff(w[6], w[8])):\n                        Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                        Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                        Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                    else:\n                        dest[dp+(dpL << 1)+2] = w[5]\n                        Interp1(dp+(dpL << 1)+3, w[5], w[6], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[8], dest)\n                        Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 94:\n                    if (Diff(w[4], w[2])):\n                        Interp8(dp, w[5], w[1], dest)\n                        Interp1(dp+1, w[5], w[1], dest)\n                        Interp1(dp+dpL, w[5], w[1], dest)\n                        Interp3(dp+dpL+1, w[5], w[1], dest)\n                    else:\n                        Interp2(dp, w[5], w[2], w[4], dest)\n                        Interp1(dp+1, w[5], w[2], dest)\n                        Interp1(dp+dpL, w[5], w[4], dest)\n                        dest[dp+dpL+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                        dest[dp+3] = w[5]\n                        dest[dp+dpL+3] = w[5]\n                    else:\n                        Interp5(dp+2, w[2], w[5], dest)\n                        Interp5(dp+3, w[2], w[6], dest)\n                        Interp5(dp+dpL+3, w[6], w[5], dest)\n                        dest[dp+dpL+2] = w[5]\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                        Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    else:\n                        Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                        Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                        Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                    else:\n                        dest[dp+(dpL << 1)+2] = w[5]\n                        Interp1(dp+(dpL << 1)+3, w[5], w[6], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[8], dest)\n                        Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 218:\n                    if (Diff(w[4], w[2])):\n                        Interp8(dp, w[5], w[1], dest)\n                        Interp1(dp+1, w[5], w[1], dest)\n                        Interp1(dp+dpL, w[5], w[1], dest)\n                        Interp3(dp+dpL+1, w[5], w[1], dest)\n                    else:\n                        Interp2(dp, w[5], w[2], w[4], dest)\n                        Interp1(dp+1, w[5], w[2], dest)\n                        Interp1(dp+dpL, w[5], w[4], dest)\n                        dest[dp+dpL+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                        Interp8(dp+3, w[5], w[3], dest)\n                        Interp3(dp+dpL+2, w[5], w[3], dest)\n                        Interp1(dp+dpL+3, w[5], w[3], dest)\n                    else:\n                        Interp1(dp+2, w[5], w[2], dest)\n                        Interp2(dp+3, w[5], w[2], w[6], dest)\n                        dest[dp+dpL+2] = w[5]\n                        Interp1(dp+dpL+3, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                        Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    else:\n                        Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[8], dest)\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+3] = w[5]\n                        dest[dp+(dpL * 3)+2] = w[5]\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1)+3, w[6], w[5], dest)\n                        Interp5(dp+(dpL * 3)+2, w[8], w[5], dest)\n                        Interp5(dp+(dpL * 3)+3, w[8], w[6], dest)\n                case 91:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp5(dp, w[2], w[4], dest)\n                        Interp5(dp+1, w[2], w[5], dest)\n                        Interp5(dp+dpL, w[4], w[5], dest)\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                        Interp8(dp+3, w[5], w[3], dest)\n                        Interp3(dp+dpL+2, w[5], w[3], dest)\n                        Interp1(dp+dpL+3, w[5], w[3], dest)\n                    else:\n                        Interp1(dp+2, w[5], w[2], dest)\n                        Interp2(dp+3, w[5], w[2], w[6], dest)\n                        dest[dp+dpL+2] = w[5]\n                        Interp1(dp+dpL+3, w[5], w[6], dest)\n                        dest[dp+dpL+1] = w[5]\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                        Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    else:\n                        Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                        Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                        Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                    else:\n                        dest[dp+(dpL << 1)+2] = w[5]\n                        Interp1(dp+(dpL << 1)+3, w[5], w[6], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[8], dest)\n                        Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 229:\n                    Interp2(dp, w[5], w[2], w[4], dest)\n                    Interp6(dp+1, w[5], w[2], w[4], dest)\n                    Interp6(dp+2, w[5], w[2], w[6], dest)\n                    Interp2(dp+3, w[5], w[2], w[6], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[2], dest)\n                    Interp7(dp+dpL+1, w[5], w[4], w[2], dest)\n                    Interp7(dp+dpL+2, w[5], w[6], w[2], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[2], dest)\n                    Interp8(dp+(dpL << 1), w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL << 1)+3, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[4], dest)\n                    Interp3(dp+(dpL * 3)+1, w[5], w[4], dest)\n                    Interp3(dp+(dpL * 3)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[6], dest)\n                case 167:\n                    Interp8(dp, w[5], w[4], dest)\n                    Interp3(dp+1, w[5], w[4], dest)\n                    Interp3(dp+2, w[5], w[6], dest)\n                    Interp8(dp+3, w[5], w[6], dest)\n                    Interp8(dp+dpL, w[5], w[4], dest)\n                    Interp3(dp+dpL+1, w[5], w[4], dest)\n                    Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp8(dp+dpL+3, w[5], w[6], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[8], dest)\n                    Interp7(dp+(dpL << 1)+1, w[5], w[4], w[8], dest)\n                    Interp7(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[8], dest)\n                    Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6], dest)\n                    Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 173:\n                    Interp8(dp, w[5], w[2], dest)\n                    Interp8(dp+1, w[5], w[2], dest)\n                    Interp6(dp+2, w[5], w[2], w[6], dest)\n                    Interp2(dp+3, w[5], w[2], w[6], dest)\n                    Interp3(dp+dpL, w[5], w[2], dest)\n                    Interp3(dp+dpL+1, w[5], w[2], dest)\n                    Interp7(dp+dpL+2, w[5], w[6], w[2], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[2], dest)\n                    Interp3(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp7(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[8], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6], dest)\n                    Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 181:\n                    Interp2(dp, w[5], w[2], w[4], dest)\n                    Interp6(dp+1, w[5], w[2], w[4], dest)\n                    Interp8(dp+2, w[5], w[2], dest)\n                    Interp8(dp+3, w[5], w[2], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[2], dest)\n                    Interp7(dp+dpL+1, w[5], w[4], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[2], dest)\n                    Interp3(dp+dpL+3, w[5], w[2], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[8], dest)\n                    Interp7(dp+(dpL << 1)+1, w[5], w[4], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+3, w[5], w[8], dest)\n                    Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4], dest)\n                    Interp8(dp+(dpL * 3)+2, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[8], dest)\n                case 186:\n                    if (Diff(w[4], w[2])):\n                        Interp8(dp, w[5], w[1], dest)\n                        Interp1(dp+1, w[5], w[1], dest)\n                        Interp1(dp+dpL, w[5], w[1], dest)\n                        Interp3(dp+dpL+1, w[5], w[1], dest)\n                    else:\n                        Interp2(dp, w[5], w[2], w[4], dest)\n                        Interp1(dp+1, w[5], w[2], dest)\n                        Interp1(dp+dpL, w[5], w[4], dest)\n                        dest[dp+dpL+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                        Interp8(dp+3, w[5], w[3], dest)\n                        Interp3(dp+dpL+2, w[5], w[3], dest)\n                        Interp1(dp+dpL+3, w[5], w[3], dest)\n                    else:\n                        Interp1(dp+2, w[5], w[2], dest)\n                        Interp2(dp+3, w[5], w[2], w[6], dest)\n                        dest[dp+dpL+2] = w[5]\n                        Interp1(dp+dpL+3, w[5], w[6], dest)\n                    Interp3(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+3, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+2, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[8], dest)\n                case 115:\n                    Interp8(dp, w[5], w[4], dest)\n                    Interp3(dp+1, w[5], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                        Interp8(dp+3, w[5], w[3], dest)\n                        Interp3(dp+dpL+2, w[5], w[3], dest)\n                        Interp1(dp+dpL+3, w[5], w[3], dest)\n                    else:\n                        Interp1(dp+2, w[5], w[2], dest)\n                        Interp2(dp+3, w[5], w[2], w[6], dest)\n                        dest[dp+dpL+2] = w[5]\n                        Interp1(dp+dpL+3, w[5], w[6], dest)\n                    Interp8(dp+dpL, w[5], w[4], dest)\n                    Interp3(dp+dpL+1, w[5], w[4], dest)\n                    Interp8(dp+(dpL << 1), w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                        Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                        Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                    else:\n                        dest[dp+(dpL << 1)+2] = w[5]\n                        Interp1(dp+(dpL << 1)+3, w[5], w[6], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[8], dest)\n                        Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[4], dest)\n                    Interp3(dp+(dpL * 3)+1, w[5], w[4], dest)\n                case 93:\n                    Interp8(dp, w[5], w[2], dest)\n                    Interp8(dp+1, w[5], w[2], dest)\n                    Interp8(dp+2, w[5], w[2], dest)\n                    Interp8(dp+3, w[5], w[2], dest)\n                    Interp3(dp+dpL, w[5], w[2], dest)\n                    Interp3(dp+dpL+1, w[5], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[2], dest)\n                    Interp3(dp+dpL+3, w[5], w[2], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                        Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    else:\n                        Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                        Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                        Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                    else:\n                        dest[dp+(dpL << 1)+2] = w[5]\n                        Interp1(dp+(dpL << 1)+3, w[5], w[6], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[8], dest)\n                        Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 206:\n                    if (Diff(w[4], w[2])):\n                        Interp8(dp, w[5], w[1], dest)\n                        Interp1(dp+1, w[5], w[1], dest)\n                        Interp1(dp+dpL, w[5], w[1], dest)\n                        Interp3(dp+dpL+1, w[5], w[1], dest)\n                    else:\n                        Interp2(dp, w[5], w[2], w[4], dest)\n                        Interp1(dp+1, w[5], w[2], dest)\n                        Interp1(dp+dpL, w[5], w[4], dest)\n                        dest[dp+dpL+1] = w[5]\n                    Interp3(dp+2, w[5], w[6], dest)\n                    Interp8(dp+3, w[5], w[6], dest)\n                    Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp8(dp+dpL+3, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                        Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    else:\n                        Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL << 1)+3, w[5], w[6], dest)\n                    Interp3(dp+(dpL * 3)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[6], dest)\n                case 205|201:\n                    Interp8(dp, w[5], w[2], dest)\n                    Interp8(dp+1, w[5], w[2], dest)\n                    Interp6(dp+2, w[5], w[2], w[6], dest)\n                    Interp2(dp+3, w[5], w[2], w[6], dest)\n                    Interp3(dp+dpL, w[5], w[2], dest)\n                    Interp3(dp+dpL+1, w[5], w[2], dest)\n                    Interp7(dp+dpL+2, w[5], w[6], w[2], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[2], dest)\n                    if (Diff(w[8], w[4])):\n                        Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                        Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                        Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    else:\n                        Interp1(dp+(dpL << 1), w[5], w[4], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                        Interp1(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL << 1)+3, w[5], w[6], dest)\n                    Interp3(dp+(dpL * 3)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[6], dest)\n                case 174|46:\n                    if (Diff(w[4], w[2])):\n                        Interp8(dp, w[5], w[1], dest)\n                        Interp1(dp+1, w[5], w[1], dest)\n                        Interp1(dp+dpL, w[5], w[1], dest)\n                        Interp3(dp+dpL+1, w[5], w[1], dest)\n                    else:\n                        Interp2(dp, w[5], w[2], w[4], dest)\n                        Interp1(dp+1, w[5], w[2], dest)\n                        Interp1(dp+dpL, w[5], w[4], dest)\n                        dest[dp+dpL+1] = w[5]\n                    Interp3(dp+2, w[5], w[6], dest)\n                    Interp8(dp+3, w[5], w[6], dest)\n                    Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp8(dp+dpL+3, w[5], w[6], dest)\n                    Interp3(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp7(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[8], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6], dest)\n                    Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 179|147:\n                    Interp8(dp, w[5], w[4], dest)\n                    Interp3(dp+1, w[5], w[4], dest)\n                    if (Diff(w[2], w[6])):\n                        Interp1(dp+2, w[5], w[3], dest)\n                        Interp8(dp+3, w[5], w[3], dest)\n                        Interp3(dp+dpL+2, w[5], w[3], dest)\n                        Interp1(dp+dpL+3, w[5], w[3], dest)\n                    else:\n                        Interp1(dp+2, w[5], w[2], dest)\n                        Interp2(dp+3, w[5], w[2], w[6], dest)\n                        dest[dp+dpL+2] = w[5]\n                        Interp1(dp+dpL+3, w[5], w[6], dest)\n                    Interp8(dp+dpL, w[5], w[4], dest)\n                    Interp3(dp+dpL+1, w[5], w[4], dest)\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[8], dest)\n                    Interp7(dp+(dpL << 1)+1, w[5], w[4], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+3, w[5], w[8], dest)\n                    Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4], dest)\n                    Interp8(dp+(dpL * 3)+2, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[8], dest)\n                case 117|116:\n                    Interp2(dp, w[5], w[2], w[4], dest)\n                    Interp6(dp+1, w[5], w[2], w[4], dest)\n                    Interp8(dp+2, w[5], w[2], dest)\n                    Interp8(dp+3, w[5], w[2], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[2], dest)\n                    Interp7(dp+dpL+1, w[5], w[4], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[2], dest)\n                    Interp3(dp+dpL+3, w[5], w[2], dest)\n                    Interp8(dp+(dpL << 1), w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                        Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                        Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                    else:\n                        dest[dp+(dpL << 1)+2] = w[5]\n                        Interp1(dp+(dpL << 1)+3, w[5], w[6], dest)\n                        Interp1(dp+(dpL * 3)+2, w[5], w[8], dest)\n                        Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[4], dest)\n                    Interp3(dp+(dpL * 3)+1, w[5], w[4], dest)\n                case 189:\n                    Interp8(dp, w[5], w[2], dest)\n                    Interp8(dp+1, w[5], w[2], dest)\n                    Interp8(dp+2, w[5], w[2], dest)\n                    Interp8(dp+3, w[5], w[2], dest)\n                    Interp3(dp+dpL, w[5], w[2], dest)\n                    Interp3(dp+dpL+1, w[5], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[2], dest)\n                    Interp3(dp+dpL+3, w[5], w[2], dest)\n                    Interp3(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+3, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+2, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[8], dest)\n                case 231:\n                    Interp8(dp, w[5], w[4], dest)\n                    Interp3(dp+1, w[5], w[4], dest)\n                    Interp3(dp+2, w[5], w[6], dest)\n                    Interp8(dp+3, w[5], w[6], dest)\n                    Interp8(dp+dpL, w[5], w[4], dest)\n                    Interp3(dp+dpL+1, w[5], w[4], dest)\n                    Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp8(dp+dpL+3, w[5], w[6], dest)\n                    Interp8(dp+(dpL << 1), w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL << 1)+3, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[4], dest)\n                    Interp3(dp+(dpL * 3)+1, w[5], w[4], dest)\n                    Interp3(dp+(dpL * 3)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[6], dest)\n                case 126:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                        dest[dp+3] = w[5]\n                        dest[dp+dpL+3] = w[5]\n                    else:\n                        Interp5(dp+2, w[2], w[5], dest)\n                        Interp5(dp+3, w[2], w[6], dest)\n                        Interp5(dp+dpL+3, w[6], w[5], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    dest[dp+dpL+2] = w[5]\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL * 3)] = w[5]\n                        dest[dp+(dpL * 3)+1] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1), w[4], w[5], dest)\n                        Interp5(dp+(dpL * 3), w[8], w[4], dest)\n                        Interp5(dp+(dpL * 3)+1, w[8], w[5], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 219:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp5(dp, w[2], w[4], dest)\n                        Interp5(dp+1, w[2], w[5], dest)\n                        Interp5(dp+dpL, w[4], w[5], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    dest[dp+(dpL << 1)+2] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+3] = w[5]\n                        dest[dp+(dpL * 3)+2] = w[5]\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1)+3, w[6], w[5], dest)\n                        Interp5(dp+(dpL * 3)+2, w[8], w[5], dest)\n                        Interp5(dp+(dpL * 3)+3, w[8], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                case 125:\n                    if (Diff(w[8], w[4])):\n                        Interp8(dp, w[5], w[2], dest)\n                        Interp3(dp+dpL, w[5], w[2], dest)\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        dest[dp+(dpL * 3)] = w[5]\n                        dest[dp+(dpL * 3)+1] = w[5]\n                    else:\n                        Interp1(dp, w[5], w[4], dest)\n                        Interp1(dp+dpL, w[4], w[5], dest)\n                        Interp8(dp+(dpL << 1), w[4], w[8], dest)\n                        Interp7(dp+(dpL << 1)+1, w[5], w[4], w[8], dest)\n                        Interp5(dp+(dpL * 3), w[8], w[4], dest)\n                        Interp2(dp+(dpL * 3)+1, w[8], w[5], w[4], dest)\n                    Interp8(dp+1, w[5], w[2], dest)\n                    Interp8(dp+2, w[5], w[2], dest)\n                    Interp8(dp+3, w[5], w[2], dest)\n                    Interp3(dp+dpL+1, w[5], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[2], dest)\n                    Interp3(dp+dpL+3, w[5], w[2], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 221:\n                    Interp8(dp, w[5], w[2], dest)\n                    Interp8(dp+1, w[5], w[2], dest)\n                    Interp8(dp+2, w[5], w[2], dest)\n                    if (Diff(w[6], w[8])):\n                        Interp8(dp+3, w[5], w[2], dest)\n                        Interp3(dp+dpL+3, w[5], w[2], dest)\n                        dest[dp+(dpL << 1)+2] = w[5]\n                        dest[dp+(dpL << 1)+3] = w[5]\n                        dest[dp+(dpL * 3)+2] = w[5]\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp1(dp+3, w[5], w[6], dest)\n                        Interp1(dp+dpL+3, w[6], w[5], dest)\n                        Interp7(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                        Interp8(dp+(dpL << 1)+3, w[6], w[8], dest)\n                        Interp2(dp+(dpL * 3)+2, w[8], w[5], w[6], dest)\n                        Interp5(dp+(dpL * 3)+3, w[8], w[6], dest)\n                    Interp3(dp+dpL, w[5], w[2], dest)\n                    Interp3(dp+dpL+1, w[5], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[2], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                case 207:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        Interp3(dp+2, w[5], w[6], dest)\n                        Interp8(dp+3, w[5], w[6], dest)\n                        dest[dp+dpL] = w[5]\n                        dest[dp+dpL+1] = w[5]\n                    else:\n                        Interp5(dp, w[2], w[4], dest)\n                        Interp8(dp+1, w[2], w[4], dest)\n                        Interp1(dp+2, w[2], w[5], dest)\n                        Interp1(dp+3, w[5], w[2], dest)\n                        Interp2(dp+dpL, w[4], w[5], w[2], dest)\n                        Interp7(dp+dpL+1, w[5], w[4], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp8(dp+dpL+3, w[5], w[6], dest)\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL << 1)+3, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL * 3)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[6], dest)\n                case 238:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    Interp3(dp+2, w[5], w[6], dest)\n                    Interp8(dp+3, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp8(dp+dpL+3, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        dest[dp+(dpL * 3)] = w[5]\n                        dest[dp+(dpL * 3)+1] = w[5]\n                        Interp3(dp+(dpL * 3)+2, w[5], w[6], dest)\n                        Interp8(dp+(dpL * 3)+3, w[5], w[6], dest)\n                    else:\n                        Interp2(dp+(dpL << 1), w[4], w[5], w[8], dest)\n                        Interp7(dp+(dpL << 1)+1, w[5], w[4], w[8], dest)\n                        Interp5(dp+(dpL * 3), w[8], w[4], dest)\n                        Interp8(dp+(dpL * 3)+1, w[8], w[4], dest)\n                        Interp1(dp+(dpL * 3)+2, w[8], w[5], dest)\n                        Interp1(dp+(dpL * 3)+3, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL << 1)+3, w[5], w[6], dest)\n                case 190:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                        dest[dp+3] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                        dest[dp+dpL+3] = w[5]\n                        Interp3(dp+(dpL << 1)+3, w[5], w[8], dest)\n                        Interp8(dp+(dpL * 3)+3, w[5], w[8], dest)\n                    else:\n                        Interp2(dp+2, w[2], w[5], w[6], dest)\n                        Interp5(dp+3, w[2], w[6], dest)\n                        Interp7(dp+dpL+2, w[5], w[6], w[2], dest)\n                        Interp8(dp+dpL+3, w[6], w[2], dest)\n                        Interp1(dp+(dpL << 1)+3, w[6], w[5], dest)\n                        Interp1(dp+(dpL * 3)+3, w[5], w[6], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+2, w[5], w[8], dest)\n                case 187:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                        dest[dp+dpL+1] = w[5]\n                        Interp3(dp+(dpL << 1), w[5], w[8], dest)\n                        Interp8(dp+(dpL * 3), w[5], w[8], dest)\n                    else:\n                        Interp5(dp, w[2], w[4], dest)\n                        Interp2(dp+1, w[2], w[5], w[4], dest)\n                        Interp8(dp+dpL, w[4], w[2], dest)\n                        Interp7(dp+dpL+1, w[5], w[4], w[2], dest)\n                        Interp1(dp+(dpL << 1), w[4], w[5], dest)\n                        Interp1(dp+(dpL * 3), w[5], w[4], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+3, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+2, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[8], dest)\n                case 243:\n                    Interp8(dp, w[5], w[4], dest)\n                    Interp3(dp+1, w[5], w[4], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp8(dp+dpL, w[5], w[4], dest)\n                    Interp3(dp+dpL+1, w[5], w[4], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    Interp8(dp+(dpL << 1), w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[4], dest)\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+2] = w[5]\n                        dest[dp+(dpL << 1)+3] = w[5]\n                        Interp8(dp+(dpL * 3), w[5], w[4], dest)\n                        Interp3(dp+(dpL * 3)+1, w[5], w[4], dest)\n                        dest[dp+(dpL * 3)+2] = w[5]\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp7(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                        Interp2(dp+(dpL << 1)+3, w[6], w[5], w[8], dest)\n                        Interp1(dp+(dpL * 3), w[5], w[8], dest)\n                        Interp1(dp+(dpL * 3)+1, w[8], w[5], dest)\n                        Interp8(dp+(dpL * 3)+2, w[8], w[6], dest)\n                        Interp5(dp+(dpL * 3)+3, w[8], w[6], dest)\n                case 119:\n                    if (Diff(w[2], w[6])):\n                        Interp8(dp, w[5], w[4], dest)\n                        Interp3(dp+1, w[5], w[4], dest)\n                        dest[dp+2] = w[5]\n                        dest[dp+3] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                        dest[dp+dpL+3] = w[5]\n                    else:\n                        Interp1(dp, w[5], w[2], dest)\n                        Interp1(dp+1, w[2], w[5], dest)\n                        Interp8(dp+2, w[2], w[6], dest)\n                        Interp5(dp+3, w[2], w[6], dest)\n                        Interp7(dp+dpL+2, w[5], w[6], w[2], dest)\n                        Interp2(dp+dpL+3, w[6], w[5], w[2], dest)\n                    Interp8(dp+dpL, w[5], w[4], dest)\n                    Interp3(dp+dpL+1, w[5], w[4], dest)\n                    Interp8(dp+(dpL << 1), w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[4], dest)\n                    Interp3(dp+(dpL * 3)+1, w[5], w[4], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 237|233:\n                    Interp8(dp, w[5], w[2], dest)\n                    Interp8(dp+1, w[5], w[2], dest)\n                    Interp6(dp+2, w[5], w[2], w[6], dest)\n                    Interp2(dp+3, w[5], w[2], w[6], dest)\n                    Interp3(dp+dpL, w[5], w[2], dest)\n                    Interp3(dp+dpL+1, w[5], w[2], dest)\n                    Interp7(dp+dpL+2, w[5], w[6], w[2], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[2], dest)\n                    dest[dp+(dpL << 1)] = w[5]\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp3(dp+(dpL << 1)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL << 1)+3, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL * 3)] = w[5]\n                    else:\n                        Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                        dest[dp+(dpL * 3)+1] = w[5]\n                    Interp3(dp+(dpL * 3)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[6], dest)\n                case 175|47:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[2], w[4], dest)\n                        dest[dp+1] = w[5]\n                    Interp3(dp+2, w[5], w[6], dest)\n                    Interp8(dp+3, w[5], w[6], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp8(dp+dpL+3, w[5], w[6], dest)\n                    Interp3(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp7(dp+(dpL << 1)+2, w[5], w[6], w[8], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[8], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6], dest)\n                    Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 183|151:\n                    Interp8(dp, w[5], w[4], dest)\n                    Interp3(dp+1, w[5], w[4], dest)\n                    dest[dp+2] = w[5]\n                    if (Diff(w[2], w[6])):\n                        dest[dp+3] = w[5]\n                    else:\n                        Interp2(dp+3, w[5], w[2], w[6], dest)\n                    Interp8(dp+dpL, w[5], w[4], dest)\n                    Interp3(dp+dpL+1, w[5], w[4], dest)\n                    dest[dp+dpL+2] = w[5]\n                    dest[dp+dpL+3] = w[5]\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[8], dest)\n                    Interp7(dp+(dpL << 1)+1, w[5], w[4], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+3, w[5], w[8], dest)\n                    Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4], dest)\n                    Interp8(dp+(dpL * 3)+2, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[8], dest)\n                case 245|244:\n                    Interp2(dp, w[5], w[2], w[4], dest)\n                    Interp6(dp+1, w[5], w[2], w[4], dest)\n                    Interp8(dp+2, w[5], w[2], dest)\n                    Interp8(dp+3, w[5], w[2], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[2], dest)\n                    Interp7(dp+dpL+1, w[5], w[4], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[2], dest)\n                    Interp3(dp+dpL+3, w[5], w[2], dest)\n                    Interp8(dp+(dpL << 1), w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[4], dest)\n                    dest[dp+(dpL << 1)+2] = w[5]\n                    dest[dp+(dpL << 1)+3] = w[5]\n                    Interp8(dp+(dpL * 3), w[5], w[4], dest)\n                    Interp3(dp+(dpL * 3)+1, w[5], w[4], dest)\n                    dest[dp+(dpL * 3)+2] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 250:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL * 3)] = w[5]\n                        dest[dp+(dpL * 3)+1] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1), w[4], w[5], dest)\n                        Interp5(dp+(dpL * 3), w[8], w[4], dest)\n                        Interp5(dp+(dpL * 3)+1, w[8], w[5], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        dest[dp+(dpL << 1)+2] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+3] = w[5]\n                        dest[dp+(dpL * 3)+2] = w[5]\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1)+3, w[6], w[5], dest)\n                        Interp5(dp+(dpL * 3)+2, w[8], w[5], dest)\n                        Interp5(dp+(dpL * 3)+3, w[8], w[6], dest)\n                case 123:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp5(dp, w[2], w[4], dest)\n                        Interp5(dp+1, w[2], w[5], dest)\n                        Interp5(dp+dpL, w[4], w[5], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL * 3)] = w[5]\n                        dest[dp+(dpL * 3)+1] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1), w[4], w[5], dest)\n                        Interp5(dp+(dpL * 3), w[8], w[4], dest)\n                        Interp5(dp+(dpL * 3)+1, w[8], w[5], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 95:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp5(dp, w[2], w[4], dest)\n                        Interp5(dp+1, w[2], w[5], dest)\n                        Interp5(dp+dpL, w[4], w[5], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                        dest[dp+3] = w[5]\n                        dest[dp+dpL+3] = w[5]\n                    else:\n                        Interp5(dp+2, w[2], w[5], dest)\n                        Interp5(dp+3, w[2], w[6], dest)\n                        Interp5(dp+dpL+3, w[6], w[5], dest)\n                        dest[dp+dpL+1] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 222:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                        dest[dp+3] = w[5]\n                        dest[dp+dpL+3] = w[5]\n                    else:\n                        Interp5(dp+2, w[2], w[5], dest)\n                        Interp5(dp+3, w[2], w[6], dest)\n                        Interp5(dp+dpL+3, w[6], w[5], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    dest[dp+dpL+2] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    dest[dp+(dpL << 1)+2] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+3] = w[5]\n                        dest[dp+(dpL * 3)+2] = w[5]\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1)+3, w[6], w[5], dest)\n                        Interp5(dp+(dpL * 3)+2, w[8], w[5], dest)\n                        Interp5(dp+(dpL * 3)+3, w[8], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                case 252:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp6(dp+1, w[5], w[2], w[1], dest)\n                    Interp8(dp+2, w[5], w[2], dest)\n                    Interp8(dp+3, w[5], w[2], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    Interp3(dp+dpL+2, w[5], w[2], dest)\n                    Interp3(dp+dpL+3, w[5], w[2], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL * 3)] = w[5]\n                        dest[dp+(dpL * 3)+1] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1), w[4], w[5], dest)\n                        Interp5(dp+(dpL * 3), w[8], w[4], dest)\n                        Interp5(dp+(dpL * 3)+1, w[8], w[5], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        dest[dp+(dpL << 1)+2] = w[5]\n                        dest[dp+(dpL << 1)+3] = w[5]\n                        dest[dp+(dpL * 3)+2] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 249:\n                    Interp8(dp, w[5], w[2], dest)\n                    Interp8(dp+1, w[5], w[2], dest)\n                    Interp6(dp+2, w[5], w[2], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    Interp3(dp+dpL, w[5], w[2], dest)\n                    Interp3(dp+dpL+1, w[5], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    dest[dp+(dpL << 1)] = w[5]\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    dest[dp+(dpL << 1)+2] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+3] = w[5]\n                        dest[dp+(dpL * 3)+2] = w[5]\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1)+3, w[6], w[5], dest)\n                        Interp5(dp+(dpL * 3)+2, w[8], w[5], dest)\n                        Interp5(dp+(dpL * 3)+3, w[8], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL * 3)] = w[5]\n                    else:\n                        Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                        dest[dp+(dpL * 3)+1] = w[5]\n                case 235:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp5(dp, w[2], w[4], dest)\n                        Interp5(dp+1, w[2], w[5], dest)\n                        Interp5(dp+dpL, w[4], w[5], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp6(dp+dpL+3, w[5], w[6], w[3], dest)\n                    dest[dp+(dpL << 1)] = w[5]\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp3(dp+(dpL << 1)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL << 1)+3, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL * 3)] = w[5]\n                    else:\n                        Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                        dest[dp+(dpL * 3)+1] = w[5]\n                    Interp3(dp+(dpL * 3)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[6], dest)\n                case 111:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[2], w[4], dest)\n                        dest[dp+1] = w[5]\n                    Interp3(dp+2, w[5], w[6], dest)\n                    Interp8(dp+3, w[5], w[6], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp8(dp+dpL+3, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL * 3)] = w[5]\n                        dest[dp+(dpL * 3)+1] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1), w[4], w[5], dest)\n                        Interp5(dp+(dpL * 3), w[8], w[4], dest)\n                        Interp5(dp+(dpL * 3)+1, w[8], w[5], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp6(dp+(dpL << 1)+3, w[5], w[6], w[9], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 63:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[2], w[4], dest)\n                        dest[dp+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                        dest[dp+3] = w[5]\n                        dest[dp+dpL+3] = w[5]\n                    else:\n                        Interp5(dp+2, w[2], w[5], dest)\n                        Interp5(dp+3, w[2], w[6], dest)\n                        Interp5(dp+dpL+3, w[6], w[5], dest)\n                        dest[dp+dpL] = w[5]\n                        dest[dp+dpL+1] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    Interp3(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 159:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp5(dp, w[2], w[4], dest)\n                        Interp5(dp+1, w[2], w[5], dest)\n                        Interp5(dp+dpL, w[4], w[5], dest)\n                        dest[dp+2] = w[5]\n                    if (Diff(w[2], w[6])):\n                        dest[dp+3] = w[5]\n                    else:\n                        Interp2(dp+3, w[5], w[2], w[6], dest)\n                        dest[dp+dpL+1] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                        dest[dp+dpL+3] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+3, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7], dest)\n                    Interp8(dp+(dpL * 3)+2, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[8], dest)\n                case 215:\n                    Interp8(dp, w[5], w[4], dest)\n                    Interp3(dp+1, w[5], w[4], dest)\n                    dest[dp+2] = w[5]\n                    if (Diff(w[2], w[6])):\n                        dest[dp+3] = w[5]\n                    else:\n                        Interp2(dp+3, w[5], w[2], w[6], dest)\n                    Interp8(dp+dpL, w[5], w[4], dest)\n                    Interp3(dp+dpL+1, w[5], w[4], dest)\n                    dest[dp+dpL+2] = w[5]\n                    dest[dp+dpL+3] = w[5]\n                    Interp6(dp+(dpL << 1), w[5], w[4], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    dest[dp+(dpL << 1)+2] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+3] = w[5]\n                        dest[dp+(dpL * 3)+2] = w[5]\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1)+3, w[6], w[5], dest)\n                        Interp5(dp+(dpL * 3)+2, w[8], w[5], dest)\n                        Interp5(dp+(dpL * 3)+3, w[8], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                case 246:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                        dest[dp+3] = w[5]\n                        dest[dp+dpL+3] = w[5]\n                    else:\n                        Interp5(dp+2, w[2], w[5], dest)\n                        Interp5(dp+3, w[2], w[6], dest)\n                        Interp5(dp+dpL+3, w[6], w[5], dest)\n                    Interp6(dp+dpL, w[5], w[4], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    dest[dp+dpL+2] = w[5]\n                    Interp8(dp+(dpL << 1), w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[4], dest)\n                    dest[dp+(dpL << 1)+2] = w[5]\n                    dest[dp+(dpL << 1)+3] = w[5]\n                    Interp8(dp+(dpL * 3), w[5], w[4], dest)\n                    Interp3(dp+(dpL * 3)+1, w[5], w[4], dest)\n                    dest[dp+(dpL * 3)+2] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 254:\n                    Interp8(dp, w[5], w[1], dest)\n                    Interp1(dp+1, w[5], w[1], dest)\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                        dest[dp+3] = w[5]\n                        dest[dp+dpL+3] = w[5]\n                    else:\n                        Interp5(dp+2, w[2], w[5], dest)\n                        Interp5(dp+3, w[2], w[6], dest)\n                        Interp5(dp+dpL+3, w[6], w[5], dest)\n                    Interp1(dp+dpL, w[5], w[1], dest)\n                    Interp3(dp+dpL+1, w[5], w[1], dest)\n                    dest[dp+dpL+2] = w[5]\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL * 3)] = w[5]\n                        dest[dp+(dpL * 3)+1] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1), w[4], w[5], dest)\n                        Interp5(dp+(dpL * 3), w[8], w[4], dest)\n                        Interp5(dp+(dpL * 3)+1, w[8], w[5], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        dest[dp+(dpL << 1)+2] = w[5]\n                        dest[dp+(dpL << 1)+3] = w[5]\n                        dest[dp+(dpL * 3)+2] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 253:\n                    Interp8(dp, w[5], w[2], dest)\n                    Interp8(dp+1, w[5], w[2], dest)\n                    Interp8(dp+2, w[5], w[2], dest)\n                    Interp8(dp+3, w[5], w[2], dest)\n                    Interp3(dp+dpL, w[5], w[2], dest)\n                    Interp3(dp+dpL+1, w[5], w[2], dest)\n                    Interp3(dp+dpL+2, w[5], w[2], dest)\n                    Interp3(dp+dpL+3, w[5], w[2], dest)\n                    dest[dp+(dpL << 1)] = w[5]\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    dest[dp+(dpL << 1)+2] = w[5]\n                    dest[dp+(dpL << 1)+3] = w[5]\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL * 3)] = w[5]\n                    else:\n                        Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                        dest[dp+(dpL * 3)+1] = w[5]\n                        dest[dp+(dpL * 3)+2] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 251:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp5(dp, w[2], w[4], dest)\n                        Interp5(dp+1, w[2], w[5], dest)\n                        Interp5(dp+dpL, w[4], w[5], dest)\n                    Interp1(dp+2, w[5], w[3], dest)\n                    Interp8(dp+3, w[5], w[3], dest)\n                    dest[dp+dpL+1] = w[5]\n                    Interp3(dp+dpL+2, w[5], w[3], dest)\n                    Interp1(dp+dpL+3, w[5], w[3], dest)\n                    dest[dp+(dpL << 1)] = w[5]\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    dest[dp+(dpL << 1)+2] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+3] = w[5]\n                        dest[dp+(dpL * 3)+2] = w[5]\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1)+3, w[6], w[5], dest)\n                        Interp5(dp+(dpL * 3)+2, w[8], w[5], dest)\n                        Interp5(dp+(dpL * 3)+3, w[8], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL * 3)] = w[5]\n                    else:\n                        Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                        dest[dp+(dpL * 3)+1] = w[5]\n                case 239:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[2], w[4], dest)\n                        dest[dp+1] = w[5]\n                    Interp3(dp+2, w[5], w[6], dest)\n                    Interp8(dp+3, w[5], w[6], dest)\n                    dest[dp+dpL] = w[5]\n                    dest[dp+dpL+1] = w[5]\n                    Interp3(dp+dpL+2, w[5], w[6], dest)\n                    Interp8(dp+dpL+3, w[5], w[6], dest)\n                    dest[dp+(dpL << 1)] = w[5]\n                    dest[dp+(dpL << 1)+1] = w[5]\n                    Interp3(dp+(dpL << 1)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL << 1)+3, w[5], w[6], dest)\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL * 3)] = w[5]\n                    else:\n                        Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                        dest[dp+(dpL * 3)+1] = w[5]\n                    Interp3(dp+(dpL * 3)+2, w[5], w[6], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[6], dest)\n                case 127:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[2], w[4], dest)\n                        dest[dp+1] = w[5]\n                    if (Diff(w[2], w[6])):\n                        dest[dp+2] = w[5]\n                        dest[dp+3] = w[5]\n                        dest[dp+dpL+3] = w[5]\n                    else:\n                        Interp5(dp+2, w[2], w[5], dest)\n                        Interp5(dp+3, w[2], w[6], dest)\n                        Interp5(dp+dpL+3, w[6], w[5], dest)\n                        dest[dp+dpL] = w[5]\n                        dest[dp+dpL+1] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL * 3)] = w[5]\n                        dest[dp+(dpL * 3)+1] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1), w[4], w[5], dest)\n                        Interp5(dp+(dpL * 3), w[8], w[4], dest)\n                        Interp5(dp+(dpL * 3)+1, w[8], w[5], dest)\n                        dest[dp+(dpL << 1)+1] = w[5]\n                    Interp3(dp+(dpL << 1)+2, w[5], w[9], dest)\n                    Interp1(dp+(dpL << 1)+3, w[5], w[9], dest)\n                    Interp1(dp+(dpL * 3)+2, w[5], w[9], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[9], dest)\n                case 191:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[2], w[4], dest)\n                        dest[dp+1] = w[5]\n                        dest[dp+2] = w[5]\n                    if (Diff(w[2], w[6])):\n                        dest[dp+3] = w[5]\n                    else:\n                        Interp2(dp+3, w[5], w[2], w[6], dest)\n                        dest[dp+dpL] = w[5]\n                        dest[dp+dpL+1] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                        dest[dp+dpL+3] = w[5]\n                    Interp3(dp+(dpL << 1), w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+2, w[5], w[8], dest)\n                    Interp3(dp+(dpL << 1)+3, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+1, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+2, w[5], w[8], dest)\n                    Interp8(dp+(dpL * 3)+3, w[5], w[8], dest)\n                case 223:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                        dest[dp+1] = w[5]\n                        dest[dp+dpL] = w[5]\n                    else:\n                        Interp5(dp, w[2], w[4], dest)\n                        Interp5(dp+1, w[2], w[5], dest)\n                        Interp5(dp+dpL, w[4], w[5], dest)\n                        dest[dp+2] = w[5]\n                    if (Diff(w[2], w[6])):\n                        dest[dp+3] = w[5]\n                    else:\n                        Interp2(dp+3, w[5], w[2], w[6], dest)\n                        dest[dp+dpL+1] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                        dest[dp+dpL+3] = w[5]\n                    Interp1(dp+(dpL << 1), w[5], w[7], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[7], dest)\n                    dest[dp+(dpL << 1)+2] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL << 1)+3] = w[5]\n                        dest[dp+(dpL * 3)+2] = w[5]\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp5(dp+(dpL << 1)+3, w[6], w[5], dest)\n                        Interp5(dp+(dpL * 3)+2, w[8], w[5], dest)\n                        Interp5(dp+(dpL * 3)+3, w[8], w[6], dest)\n                    Interp8(dp+(dpL * 3), w[5], w[7], dest)\n                    Interp1(dp+(dpL * 3)+1, w[5], w[7], dest)\n                case 247:\n                    Interp8(dp, w[5], w[4], dest)\n                    Interp3(dp+1, w[5], w[4], dest)\n                    dest[dp+2] = w[5]\n                    if (Diff(w[2], w[6])):\n                        dest[dp+3] = w[5]\n                    else:\n                        Interp2(dp+3, w[5], w[2], w[6], dest)\n                    Interp8(dp+dpL, w[5], w[4], dest)\n                    Interp3(dp+dpL+1, w[5], w[4], dest)\n                    dest[dp+dpL+2] = w[5]\n                    dest[dp+dpL+3] = w[5]\n                    Interp8(dp+(dpL << 1), w[5], w[4], dest)\n                    Interp3(dp+(dpL << 1)+1, w[5], w[4], dest)\n                    dest[dp+(dpL << 1)+2] = w[5]\n                    dest[dp+(dpL << 1)+3] = w[5]\n                    Interp8(dp+(dpL * 3), w[5], w[4], dest)\n                    Interp3(dp+(dpL * 3)+1, w[5], w[4], dest)\n                    dest[dp+(dpL * 3)+2] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n                case 255:\n                    if (Diff(w[4], w[2])):\n                        dest[dp] = w[5]\n                    else:\n                        Interp2(dp, w[5], w[2], w[4], dest)\n                        dest[dp+1] = w[5]\n                        dest[dp+2] = w[5]\n                    if (Diff(w[2], w[6])):\n                        dest[dp+3] = w[5]\n                    else:\n                        Interp2(dp+3, w[5], w[2], w[6], dest)\n                        dest[dp+dpL] = w[5]\n                        dest[dp+dpL+1] = w[5]\n                        dest[dp+dpL+2] = w[5]\n                        dest[dp+dpL+3] = w[5]\n                        dest[dp+(dpL << 1)] = w[5]\n                        dest[dp+(dpL << 1)+1] = w[5]\n                        dest[dp+(dpL << 1)+2] = w[5]\n                        dest[dp+(dpL << 1)+3] = w[5]\n                    if (Diff(w[8], w[4])):\n                        dest[dp+(dpL * 3)] = w[5]\n                    else:\n                        Interp2(dp+(dpL * 3), w[5], w[8], w[4], dest)\n                        dest[dp+(dpL * 3)+1] = w[5]\n                        dest[dp+(dpL * 3)+2] = w[5]\n                    if (Diff(w[6], w[8])):\n                        dest[dp+(dpL * 3)+3] = w[5]\n                    else:\n                        Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6], dest)\n            sp += 1\n            dp += 4\n        dp += (dpL * 3)\n\n\ndef main():\n    try:\n        import sys\n        file_path = sys.argv[1]\n        out_path = sys.argv[2]\n        scale_factor = int(sys.argv[3])\n    except Exception:\n        print('usage: python hqx.py <file_path: str> <out_path: str> <scale_factor: int>')\n        exit(-1)\n\n    img = cv2.imread(file_path)\n    cv2.imwrite(out_path, hqx(img, scale_factor))\n\n\nif __name__ == '__main__':\n    main()\n"
  },
  {
    "path": "modules/postprocess/icbi.py",
    "content": "'''\nThis is the python implementation of icbi.m\n\nAuthor: gyf\nBegin: 2019-1-16\n'''\nimport numpy as np\nimport cv2\n\n\ndef icbi(IM,ZK = 1,SZ = 8,PF = 1,ST = 20,TM = 100,TC = 50,SC = 1,TS = 100,AL = 1,BT = -1,GM = 5):\n    '''\n\n    :param IM: Source image\n    :param ZK: Power of zoom factor (default:1)\n    :param SZ: Number of image bits per layer (default:8)\n    :param PF: Potential to be minimized (default:1)\n    :param ST: Maximum number of iterations (default:20)\n    :param TM: Maximum edge step (default:100)\n    :param TC: Edge continuity threshold (deafult:50).\n    :param SC: Stopping criterion: 1 = change under threshold, 0 = ST iterations (default:1).\n    :param TS: Threshold on image change for stopping iterations (default:100).\n    :param AL: Weight for Curvature Continuity energy (default:1.0).\n    :param BT: Weight for Curvature enhancement energy (default:-1.0).\n    :param GM: Weight for Isophote smoothing energy (default:5.0).\n    :return: EI: Enlarged image\n    '''\n    H = IM.shape[0]\n    W = IM.shape[1]\n    if ZK < 1:\n        EI = cv2.resize(IM,(H*(2**ZK),W*(2**ZK)))\n\n    #check image type\n    IDIM = np.ndim(IM)\n    if IDIM == 3:\n        CL = IM.shape[2] #number of colors\n\n    elif IDIM == 2:\n        IM = np.reshape(IM,(H,W,1))\n        CL = 1\n    else:\n        print('Unrecognized image type, please use RGB or grayscale images')\n        return 0\n\n\n    #calculate final size\n    fm = H * (2**ZK) - (2**ZK - 1)\n    fn = W * (2**ZK) - (2**ZK - 1)\n\n    #initialize output image\n    if SZ>32:\n        EI  = np.zeros([fm,fn,CL],dtype= np.uint64)\n\n    elif SZ>16:\n        EI = np.zeros([fm,fn,CL],dtype= np.uint32)\n\n    elif SZ>8:\n        EI = np.zeros([fm,fn,CL],dtype= np.uint16)\n\n    else:\n        EI = np.zeros([fm,fn,CL],dtype= np.uint8)\n\n    #each image color\n    IMG = IM.copy()\n    for CID in range(CL):\n        IMG = IM[:,:,CID]\n        #The image is enlarged by scaling factor 2**ZK-1 at each cycle\n        for _ZF in range(ZK):\n\n            #size of enlarged image\n            mm = 2*H - 1\n            nn = 2*W - 1\n\n            #initialize expanded and support matrix\n            IMGEXP = np.zeros([mm,nn])\n            D1 = np.zeros([mm,nn])\n            D2 = np.zeros([mm,nn])\n            D3 = np.zeros([mm,nn])\n            C1 = np.zeros([mm,nn])\n            C2 = np.zeros([mm,nn])\n\n            #copy low resolution grid on high resolution grid\n            IMGEXP[::2,::2] = IMG\n\n            #interpolation at borders (average value of 2 neighbors)\n            for i in range(1,mm-1,2):\n                #left col\n                IMGEXP[i,0] = (IMGEXP[i-1,0]+IMGEXP[i+1,0])/2\n                #right col\n                IMGEXP[i,nn-1] = (IMGEXP[i-1,nn-1]+IMGEXP[i+1,nn-1])/2\n\n            for i in range(1,nn,2):\n                #top row\n                IMGEXP[0,i] = (IMGEXP[0,i-1] + IMGEXP[0,i+1])/2\n                #bottom row\n                IMGEXP[mm-1,i] = (IMGEXP[mm-1,i-1]+IMGEXP[mm-1,i+1])/2\n\n            #Calculate interpolated points in two steps\n            #s = 0 calculates on diagonal directions\n            #s = 1 calculates on vertical and horizontal directions\n            for s in range(2):\n                #FCBI (Fast Curvature Based Interpolation)\n                for i in range(1,mm-s,2-s):\n                    for j in range(1+(s*(1-np.mod(i+1,2))),nn-s,2):\n                        v1 = np.abs(IMGEXP[i-1,j-1+s]-IMGEXP[i+1,j+1-s])\n                        v2 = np.abs(IMGEXP[i+1-s,j-1]-IMGEXP[i-1+s,j+1])\n                        p1 = (IMGEXP[i-1,j-1+s]+IMGEXP[i+1,j+1-s])/2\n                        p2 = (IMGEXP[i+1-s,j-1]+IMGEXP[i-1+s,j+1])/2\n                        if (v1<TM) and (v2<TM) and (i>2-s) and i<mm-4-s and j>2-s and j<nn-4-s and (np.abs(p1-p2)<TM):\n                            if np.abs( IMGEXP[i-1-s,j-3+2*s] + IMGEXP[i-3+s,j-1+2*s] + IMGEXP[i+1+s,j+3-2*s] +IMGEXP[i+3-s,j+1-2*s] + 2*p2-6*p1)> np.abs( IMGEXP[i-3+2*s,j+1+s] + IMGEXP[i-1+2*s,j+3-s] + IMGEXP[i+3-2*s,j-1-s] +IMGEXP[i+1-2*s,j-3+s] + 2*p1-6*p2):\n                                IMGEXP[i,j] = p1\n\n                            else:\n                                IMGEXP[i,j] = p2\n\n                        else:\n                            if v1<v2:\n                                IMGEXP[i,j] = p1\n                            else:\n                                IMGEXP[i,j] = p2\n\n                step = 4.0/(1+s)\n\n                #iterative refinement\n                for g in range(ST):\n                    diff = 0\n\n                    if g<ST/4 -1:\n                        step = 1\n                    elif g<ST/2 -1:\n                        step = 2\n                    elif g<3*ST/4 -1:\n                        step = 2\n\n                    #computation of derivatives:\n                    for i in range(3-2*s,mm-3+s):\n                        for j in range(3-2*s+(1-s)*np.mod(i+1,2),nn-3+s,2-s):\n                            C1[i,j] = (IMGEXP[i-1+s,j-1] - IMGEXP[i+1-s,j+1])/2\n                            C2[i,j] = (IMGEXP[i+1-2*s,j-1+s] - IMGEXP[i-1+2*s,j+1-s])/2\n                            D1[i,j] = IMGEXP[i-1+s,j-1] + IMGEXP[i+1-s,j+1] - 2*IMGEXP[i,j]\n                            D2[i,j] = IMGEXP[i+1,j-1+s] + IMGEXP[i-1,j+1-s] - 2*IMGEXP[i,j]\n                            D3[i,j] = (IMGEXP[i-s,j-2+s] - IMGEXP[i-2+s,j+s] + IMGEXP[i+s,j+2-s] - IMGEXP[i+2-s,j-s])/2\n\n\n                    for i in range(5-3*s,mm-5+3*s,2-s):\n                        for j in range(5+s*(np.mod(i+1,2)-2),nn-5+3*s,2):\n                            c_1 = 1\n                            c_2 = 1\n                            c_3 = 1\n                            c_4 = 1\n                            if np.abs(IMGEXP[i+1-s,j+1] - IMGEXP[i,j])>TC:\n                                c_1 = 0\n\n                            if np.abs(IMGEXP[i-1+s,j-1] - IMGEXP[i,j])>TC:\n                                c_2 = 0\n\n                            if np.abs(IMGEXP[i+1,j-1+s] - IMGEXP[i,j])>TC:\n                                c_3 = 0\n\n                            if np.abs(IMGEXP[i-1,j+1-s] - IMGEXP[i,j])>TC:\n                                c_4 = 0\n\n\n                            EN1 = c_1*np.abs(D1[i,j] - D1[i+1-s,j+1]) + c_2*np.abs(D1[i,j] - D1[i-1+s,j-1])\n                            EN2 = c_3*np.abs(D1[i,j] - D1[i+1,j-1+s]) + c_4*np.abs(D1[i,j] - D1[i-1,j+1-s])\n                            EN3 = c_1*np.abs(D2[i,j] - D2[i+1-s,j+1]) + c_2*np.abs(D2[i,j] - D2[i-1+s,j-1])\n                            EN4 = c_3*np.abs(D2[i,j] - D2[i+1,j-1+s]) + c_4*np.abs(D2[i,j] - D2[i-1,j+1-s])\n                            EN5 = np.abs(IMGEXP[i-2+2*s,j-2] + IMGEXP[i+2-2*s,j+2] - 2*IMGEXP[i,j])\n                            EN6 = np.abs(IMGEXP[i+2,j-2+2*s] + IMGEXP[i-2,j+2-2*s] - 2*IMGEXP[i,j])\n\n                            EA1 = c_1*np.abs(D1[i,j] - D1[i+1-s,j+1] - 3*step) + c_2*np.abs(D1[i,j] - D1[i-1+s,j-1] - 3*step)\n                            EA2 = c_3*np.abs(D1[i,j] - D1[i+1,j-1+s] - 3*step) + c_4*np.abs(D1[i,j] - D1[i-1,j+1-s] - 3*step)\n                            EA3 = c_1*np.abs(D2[i,j] - D2[i+1-s,j+1] - 3*step) + c_2*np.abs(D2[i,j] - D2[i-1+s,j-1] - 3*step)\n                            EA4 = c_3*np.abs(D2[i,j] - D2[i+1,j-1+s] - 3*step) + c_4*np.abs(D2[i,j] - D2[i-1,j+1-s] - 3*step)\n                            EA5 = np.abs(IMGEXP[i-2+2*s,j-2] + IMGEXP[i+2-2*s,j+2] - 2*IMGEXP[i,j] - 2*step)\n                            EA6 = np.abs(IMGEXP[i+2,j-2+2*s] + IMGEXP[i-2,j+2-2*s] - 2*IMGEXP[i,j] - 2*step)\n\n                            ES1 = c_1*np.abs(D1[i,j] - D1[i+1-s,j+1] + 3*step) + c_2*np.abs(D1[i,j] - D1[i-1+s,j-1] + 3*step)\n                            ES2 = c_3*np.abs(D1[i,j] - D1[i+1,j-1+s] + 3*step) + c_4*np.abs(D1[i,j] - D1[i-1,j+1-s] + 3*step)\n                            ES3 = c_1*np.abs(D2[i,j] - D2[i+1-s,j+1] + 3*step) + c_2*np.abs(D2[i,j] - D2[i-1+s,j-1] + 3*step)\n                            ES4 = c_3*np.abs(D2[i,j] - D2[i+1,j-1+s] + 3*step) + c_4*np.abs(D2[i,j] - D2[i-1,j+1-s] + 3*step)\n                            ES5 = np.abs(IMGEXP[i-2+2*s,j-2] + IMGEXP[i+2-2*s,j+2] - 2*IMGEXP[i,j] + 2*step)\n                            ES6 = np.abs(IMGEXP[i+2,j-2+2*s] + IMGEXP[i-2,j+2-2*s] - 2*IMGEXP[i,j] + 2*step)\n\n                            EISO = (C1[i,j]*C1[i,j]*D2[i,j] - 2*C1[i,j]*C2[i,j]*D3[i,j] + C2[i,j]*C2[i,j]*D1[i,j])/(C1[i,j]*C1[i,j]+C2[i,j]*C2[i,j])\n\n                            if np.abs(EISO) < 0.2:\n                                EISO = 0\n\n                            if PF==1:\n                                EN = AL*(EN1 + EN2 + EN3 + EN4) + BT*(EN5 + EN6)\n                                EA = AL*(EA1 + EA2 + EA3 + EA4) + BT*(EA5 + EA6)\n                                ES = AL*(ES1 + ES2 + ES3 + ES4) + BT*(ES5 + ES6)\n\n                            elif PF==2:\n                                EN = AL*(EN1 + EN2 + EN3 + EN4)\n                                EA = AL*(EA1 + EA2 + EA3 + EA4) - GM*np.sign(EISO)\n                                ES = AL*(ES1 + ES2 + ES3 + ES4) - GM*np.sign(EISO)\n\n                            else:\n                                EN = AL*(EN1 + EN2 + EN3 + EN4) + BT*(EN5 + EN6)\n                                EA = AL*(EA1 + EA2 + EA3 + EA4) + BT*(EA5 + EA6) - GM*np.sign(EISO)\n                                ES = AL*(ES1 + ES2 + ES3 + ES4) + BT*(ES5 + ES6) + GM*np.sign(EISO)\n\n                            if (EN>EA) and (ES>EA):\n                                IMGEXP[i,j] = IMGEXP[i,j] + step\n                                diff = diff + step\n\n                            elif (EN>ES) and (EA>ES):\n                                IMGEXP[i,j] = IMGEXP[i,j] - step\n                                diff = diff + step\n\n                    if (SC==1) and (diff<TS):\n                        break\n\n            #assign the expanded image to the current image\n            IMG = IMGEXP\n\n        EI[:,:,CID] = np.round(IMG)\n\n    #back to 2D array if gray\n    if CL ==1:\n        EI = np.reshape(EI,(fm,fn))\n\n    return EI\n"
  },
  {
    "path": "modules/postprocess/pixelart.py",
    "content": "from typing import List\n\nimport math\nimport torch\nimport torchvision\nimport numpy as np\n\nfrom PIL import Image\nfrom diffusers.utils import CONFIG_NAME\nfrom diffusers.image_processor import PipelineImageInput\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom transformers import ImageProcessingMixin\n\nfrom modules import devices\n\n\n@devices.inference_context()\ndef img_to_pixelart(image: PipelineImageInput, sharpen: float = 0, block_size: int = 8, return_type: str = \"pil\", device: torch.device = \"cpu\") -> PipelineImageInput:\n    block_size_sq = block_size * block_size\n    processor = JPEGEncoder(block_size=block_size, cbcr_downscale=1)\n    new_image = processor.encode(image, device=device)\n    y = new_image[:,0,:,:].unsqueeze(1)\n    cb = new_image[:,block_size_sq,:,:].unsqueeze(1)\n    cr = new_image[:,block_size_sq*2,:,:].unsqueeze(1)\n\n    if sharpen > 0:\n        ycbcr = torch.cat([y,cb,cr], dim=1)\n        laplacian_kernel = torch.tensor(\n            [\n                [[[ 0, 1, 0], [1, -4, 1], [ 0, 1, 0]]],\n                [[[ 0, 1, 0], [1, -4, 1], [ 0, 1, 0]]],\n                [[[ 0, 1, 0], [1, -4, 1], [ 0, 1, 0]]],\n            ],\n            dtype=torch.float32,\n        ).to(device)\n        ycbcr = ycbcr.sub_(torch.nn.functional.conv2d(ycbcr, laplacian_kernel, padding=1, groups=3), alpha=sharpen)\n        y = ycbcr[:,0,:,:].unsqueeze(1)\n        cb = ycbcr[:,1,:,:].unsqueeze(1)\n        cr = ycbcr[:,2,:,:].unsqueeze(1)\n\n    new_image = torch.zeros_like(new_image)\n    new_image[:,0,:,:] = y\n    new_image[:,block_size_sq,:,:] = cb\n    new_image[:,block_size_sq*2,:,:] = cr\n    new_image = processor.decode(new_image, return_type=return_type)\n    return new_image\n\n\n@devices.inference_context()\ndef edge_detect_for_pixelart(image: PipelineImageInput, image_weight: float = 1.0, block_size: int = 8, device: torch.device = \"cpu\") -> torch.Tensor:\n    block_size_sq = block_size * block_size\n    new_image = process_image_input(image).to(device).to(dtype=torch.float32) / 255\n    new_image = new_image.permute(0,3,1,2)\n    batch_size, _channels, height, width = new_image.shape\n    block_height = height // block_size\n    block_width = width // block_size\n\n    min_pool = 0 - torch.nn.functional.max_pool2d(-new_image, block_size, 1, block_size//2, 1, False, False)\n    min_pool = min_pool[:, :, :height, :width]\n\n    greyscale = (new_image[:,0,:,:] * 0.299).add_(new_image[:,1,:,:], alpha=0.587).add_(new_image[:,2,:,:], alpha=0.114)\n    greyscale = greyscale[:, :(new_image.shape[-2]//block_size)*block_size, :(new_image.shape[-1]//block_size)*block_size] # crop to a multiple of block_size\n    greyscale_reshaped = greyscale.reshape(batch_size, block_size, block_height, block_size, block_width)\n    greyscale_reshaped = greyscale_reshaped.permute(0,1,3,2,4)\n    greyscale_reshaped = greyscale_reshaped.reshape(batch_size, block_size_sq, block_height, block_width)\n\n    greyscale_range = greyscale_reshaped.amax(dim=1, keepdim=True).sub_(greyscale_reshaped.amin(dim=1, keepdim=True))\n    upsample = torchvision.transforms.Resize((height, width), interpolation=torchvision.transforms.InterpolationMode.BICUBIC)\n\n    range_weight = upsample(greyscale_range)\n    range_weight = range_weight.div_(range_weight.max())\n    weight_map = upsample((greyscale > greyscale.median()).to(dtype=torch.float32))\n    weight_map = weight_map.unsqueeze(0).add_(range_weight).mul_(image_weight / 2)\n\n    new_image = new_image.mul_(weight_map).addcmul_(min_pool, (1-weight_map))\n    new_image = new_image.permute(0,2,3,1).mul_(255).clamp_(0, 255)\n    return new_image\n\n\ndef get_dct_harmonics(N: int, device: torch.device) -> torch.FloatTensor:\n    k = torch.arange(N, dtype=torch.float32, device=device)\n    spatial = torch.add(1, k.unsqueeze(1), alpha=2)\n    spectral = k.unsqueeze(0) * (torch.pi / (2 * N))\n    return torch.cos(torch.mm(spatial, spectral))\n\n\ndef get_dct_norm(N: int, device: torch.device) -> torch.FloatTensor:\n    n = torch.ones((N, 1), dtype=torch.float32, device=device)\n    n[0, 0] = 1 / math.sqrt(2)\n    n = torch.mm(n, n.t())\n    return n\n\n\ndef dct_2d(x: torch.FloatTensor, norm: str=\"ortho\") -> torch.FloatTensor:\n    x_shape = x.shape\n    N = x_shape[-1]\n    x = x.contiguous().view(-1, N, N)\n\n    h = get_dct_harmonics(N, x.device)\n    coeff = torch.matmul(torch.matmul(h.t(), x), (h * (2 / N)))\n    if norm == \"ortho\":\n        coeff = torch.mul(coeff, get_dct_norm(N, x.device))\n\n    coeff = coeff.view(x_shape)\n    return coeff\n\n\ndef idct_2d(coeff: torch.FloatTensor, norm: str=\"ortho\") -> torch.FloatTensor:\n    x_shape = coeff.shape\n    N = x_shape[-1]\n    coeff = coeff.contiguous().view(-1, N, N)\n\n    h = get_dct_harmonics(N, coeff.device)\n    if norm == \"ortho\":\n        coeff = torch.mul(coeff, get_dct_norm(N, coeff.device))\n    x = torch.matmul(torch.matmul((h * (2 / N)), coeff), h.t())\n\n    x = x.view(x_shape)\n    return x\n\n\ndef encode_single_channel_dct_2d(img: torch.FloatTensor, block_size: int=16, norm: str=\"ortho\") -> torch.FloatTensor:\n    batch_size, height, width = img.shape\n    h_blocks = int(height//block_size)\n    w_blocks = int(width//block_size)\n\n    # batch_size, h_blocks, w_blocks, block_size_h, block_size_w\n    dct_tensor = img.view(batch_size, h_blocks, block_size, w_blocks, block_size).transpose(2,3).to(dtype=torch.float32)\n    dct_tensor = dct_2d(dct_tensor, norm=norm)\n\n    # batch_size, combined_block_size, h_blocks, w_blocks\n    dct_tensor = dct_tensor.reshape(batch_size, h_blocks, w_blocks, block_size*block_size).permute(0,3,1,2)\n    return dct_tensor\n\n\ndef decode_single_channel_dct_2d(img: torch.FloatTensor, norm: str=\"ortho\") -> torch.FloatTensor:\n    batch_size, combined_block_size, h_blocks, w_blocks = img.shape\n    block_size = int(math.sqrt(combined_block_size))\n    height = int(h_blocks*block_size)\n    width = int(w_blocks*block_size)\n\n    img_tensor = img.permute(0,2,3,1).view(batch_size, h_blocks, w_blocks, block_size, block_size)\n    img_tensor = idct_2d(img_tensor, norm=norm)\n    img_tensor = img_tensor.permute(0,1,3,2,4).reshape(batch_size, height, width)\n    return img_tensor\n\n\ndef rgb_to_ycbcr_tensor(image: torch.ByteTensor) -> torch.FloatTensor:\n    rgb_weights = torch.tensor([[0.002345098, -0.001323419, 0.003921569], [0.004603922, -0.00259815, -0.003283824], [0.000894118, 0.003921569, -0.000637744]], device=image.device)\n    ycbcr = torch.einsum(\"cv,...chw->...vhw\", [rgb_weights, image.permute(0,3,1,2).to(dtype=torch.float32)])\n    ycbcr[:,0,:,:] = ycbcr[:,0,:,:].add(-1)\n    return ycbcr\n\n\ndef ycbcr_tensor_to_rgb(ycbcr: torch.FloatTensor) -> torch.ByteTensor:\n    ycbcr_weights = torch.tensor([[127.5, 127.5, 127.5], [0, -43.877376465, 225.93], [178.755, -91.052376465, 0]], device=ycbcr.device)\n    return torch.einsum(\"cv,...chw->...vhw\", [ycbcr_weights, ycbcr]).add(127.5).round().clamp(0,255).permute(0,2,3,1).to(dtype=torch.uint8)\n\n\ndef encode_jpeg_tensor(img: torch.FloatTensor, block_size: int=16, cbcr_downscale: int=2, norm: str=\"ortho\") -> torch.FloatTensor:\n    img = img[:, :, :(img.shape[-2]//block_size)*block_size, :(img.shape[-1]//block_size)*block_size] # crop to a multiply of block_size\n    cbcr_block_size = block_size//cbcr_downscale\n    _, _, height, width = img.shape\n    downsample = torchvision.transforms.Resize((height//cbcr_downscale, width//cbcr_downscale), interpolation=torchvision.transforms.InterpolationMode.BICUBIC)\n    down_img = downsample(img[:, 1:,:,:])\n    y = encode_single_channel_dct_2d(img[:, 0, :,:], block_size=block_size, norm=norm)\n    cb = encode_single_channel_dct_2d(down_img[:, 0, :,:], block_size=cbcr_block_size, norm=norm)\n    cr = encode_single_channel_dct_2d(down_img[:, 1, :,:], block_size=cbcr_block_size, norm=norm)\n    return torch.cat([y,cb,cr], dim=1)\n\n\ndef decode_jpeg_tensor(jpeg_img: torch.FloatTensor, block_size: int=16, cbcr_downscale: int=2, norm: str=\"ortho\") -> torch.FloatTensor:\n    _, _, h_blocks, w_blocks = jpeg_img.shape\n    y_block_size = block_size*block_size\n    cbcr_block_size = int((block_size//cbcr_downscale) ** 2)\n    cr_start = y_block_size + cbcr_block_size\n    y = jpeg_img[:, :y_block_size]\n    cb = jpeg_img[:, y_block_size:cr_start]\n    cr = jpeg_img[:, cr_start:]\n    y = decode_single_channel_dct_2d(y, norm=norm)\n    cb = decode_single_channel_dct_2d(cb, norm=norm)\n    cr = decode_single_channel_dct_2d(cr, norm=norm)\n    upsample = torchvision.transforms.Resize((h_blocks*block_size, w_blocks*block_size), interpolation=torchvision.transforms.InterpolationMode.BICUBIC)\n    cb = upsample(cb)\n    cr = upsample(cr)\n    return torch.stack([y,cb,cr], dim=1)\n\n\ndef process_image_input(images: PipelineImageInput) -> torch.ByteTensor:\n    if isinstance(images, list):\n        combined_images = []\n        for img in images:\n            if isinstance(img, Image.Image):\n                img = torch.from_numpy(np.asarray(img).copy()).unsqueeze(0)\n                combined_images.append(img)\n            elif isinstance(img, np.ndarray):\n                img = torch.from_numpy(img)\n                if img.ndim == 3:\n                    img = img.unsqueeze(0)\n                combined_images.append(img)\n            elif isinstance(img, torch.Tensor):\n                if img.ndim == 3:\n                    img = img.unsqueeze(0)\n                combined_images.append(img)\n            else:\n                raise RuntimeError(f\"Invalid input! Given: {type(img)} should be in ('torch.Tensor', 'np.ndarray', 'PIL.Image.Image')\")\n        combined_images = torch.cat(combined_images, dim=0)\n    elif isinstance(images, Image.Image):\n        combined_images = torch.from_numpy(np.asarray(images).copy()).unsqueeze(0)\n    elif isinstance(images, np.ndarray):\n        combined_images = torch.from_numpy(images)\n        if combined_images.ndim == 3:\n            combined_images = combined_images.unsqueeze(0)\n    elif isinstance(images, torch.Tensor):\n        combined_images = images\n        if combined_images.ndim == 3:\n            combined_images = combined_images.unsqueeze(0)\n    else:\n        raise RuntimeError(f\"Invalid input! Given: {type(images)} should be in ('torch.Tensor', 'np.ndarray', 'PIL.Image.Image')\")\n    return combined_images\n\n\nclass JPEGEncoder(ImageProcessingMixin, ConfigMixin):\n\n    config_name = CONFIG_NAME\n\n    @register_to_config\n    def __init__(\n        self,\n        block_size: int = 16,\n        cbcr_downscale: int = 2,\n        norm: str = \"ortho\",\n        latents_std: List[float] = None,\n        latents_mean: List[float] = None,\n    ):\n        self.block_size = block_size\n        self.cbcr_downscale = cbcr_downscale\n        self.norm = norm\n        self.latents_std = latents_std\n        self.latents_mean = latents_mean\n        super().__init__()\n\n    def encode(self, images: PipelineImageInput, device: str=\"cpu\") -> torch.FloatTensor:\n        \"\"\"\n        Encode RGB 0-255 image to JPEG Latents.\n\n        Args:\n            image (`PIL.Image.Image`, `np.ndarray` or `torch.Tensor`):\n                The image input, can be a PIL image, numpy array or pytorch tensor.\n                Must be an RGB image or a list of RGB images with 0-255 range and (batch_size, height, width, channels) shape.\n\n        Returns:\n            `torch.Tensor`:\n                The encoded JPEG Latents.\n        \"\"\"\n\n        combined_images = process_image_input(images).to(device)\n        latents = rgb_to_ycbcr_tensor(combined_images)\n        latents = encode_jpeg_tensor(latents, block_size=self.block_size, cbcr_downscale=self.cbcr_downscale, norm=self.norm)\n\n        if self.latents_mean is not None:\n            latents = latents - torch.tensor(self.latents_mean, device=device, dtype=torch.float32).view(1,-1,1,1)\n        if self.latents_std is not None:\n            latents = latents / torch.tensor(self.latents_std, device=device, dtype=torch.float32).view(1,-1,1,1)\n\n        return latents\n\n    def decode(self, latents: torch.FloatTensor, return_type: str=\"pil\") -> PipelineImageInput:\n        latents = latents.to(dtype=torch.float32)\n        if self.latents_std is not None:\n            latents_std = torch.tensor(self.latents_std, device=latents.device, dtype=torch.float32).view(1,-1,1,1)\n            if self.latents_mean is not None:\n                latents_mean = torch.tensor(self.latents_mean, device=latents.device, dtype=torch.float32).view(1,-1,1,1)\n                latents = torch.addcmul(latents_mean, latents, latents_std)\n            else:\n                latents = latents * latents_std\n        elif self.latents_mean is not None:\n            latents = latents + torch.tensor(self.latents_mean, device=latents.device, dtype=torch.float32).view(1,-1,1,1)\n\n        images = decode_jpeg_tensor(latents, block_size=self.block_size, cbcr_downscale=self.cbcr_downscale, norm=self.norm)\n        images = ycbcr_tensor_to_rgb(images)\n\n        if return_type == \"pt\":\n            return images\n        elif return_type == \"np\":\n            return images.detach().cpu().numpy()\n        elif return_type == \"pil\":\n            image_list = []\n            for i in range(images.shape[0]):\n                image_list.append(Image.fromarray(images[i].detach().cpu().numpy()))\n            return image_list\n        else:\n            raise RuntimeError(f\"Invalid return_type! Given: {return_type} should be in ('pt', 'np', 'pil')\")\n"
  },
  {
    "path": "modules/postprocess/realesrgan_model.py",
    "content": "import os\nimport numpy as np\nfrom PIL import Image\nfrom basicsr.archs.rrdbnet_arch import RRDBNet\nfrom modules.postprocess.realesrgan_model_arch import SRVGGNetCompact\nfrom modules.upscaler import Upscaler\nfrom modules.shared import opts, device, log\nfrom modules import devices\n\nclass UpscalerRealESRGAN(Upscaler):\n    def __init__(self, dirname):\n        self.name = \"RealESRGAN\"\n        self.user_path = dirname\n        super().__init__()\n        self.scalers = self.find_scalers()\n        self.models = {}\n        for scaler in self.scalers:\n            if scaler.name == 'RealESRGAN 2x+':\n                scaler.model = lambda: RRDBNet(num_in_ch=3, num_out_ch=3, num_feat=64, num_block=23, num_grow_ch=32, scale=2)\n                scaler.scale = 2\n            elif scaler.name == 'RealESRGAN 4x+ Anime6B':\n                scaler.model=lambda: RRDBNet(num_in_ch=3, num_out_ch=3, num_feat=64, num_block=6, num_grow_ch=32, scale=4)\n            elif scaler.name == 'RealESRGAN 4x General V3':\n                scaler.model = lambda: SRVGGNetCompact(num_in_ch=3, num_out_ch=3, num_feat=64, num_conv=32, upscale=4, act_type='prelu')\n            elif scaler.name == 'RealESRGAN 4x General WDN V3':\n                scaler.model = lambda: SRVGGNetCompact(num_in_ch=3, num_out_ch=3, num_feat=64, num_conv=32, upscale=4, act_type='prelu')\n            elif scaler.name == 'RealESRGAN AnimeVideo V3':\n                scaler.model=lambda: SRVGGNetCompact(num_in_ch=3, num_out_ch=3, num_feat=64, num_conv=16, upscale=4, act_type='prelu')\n            elif scaler.name == 'RealESRGAN 4x+':\n                scaler.model = lambda: RRDBNet(num_in_ch=3, num_out_ch=3, num_feat=64, num_block=23, num_grow_ch=32, scale=4)\n            else:\n                log.error(f\"Upscaler unrecognized model: type={self.name} model={scaler.name}\")\n\n    def load_model(self, path): # pylint: disable=unused-argument\n        pass\n\n    def do_upscale(self, img, selected_model):\n        if not self.enable:\n            return img\n        try:\n            from modules.postprocess.realesrgan_model_arch import RealESRGANer\n        except Exception:\n            log.error(\"Error importing Real-ESRGAN:\")\n            return img\n        info = self.find_model(selected_model)\n        if info is None or not os.path.exists(info.local_data_path):\n            return img\n        if self.models.get(info.local_data_path, None) is not None:\n            log.debug(f\"Upscaler cached: type={self.name} model={info.local_data_path}\")\n            upsampler=self.models[info.local_data_path]\n        else:\n            upsampler = RealESRGANer(\n                name=info.name,\n                scale=info.scale,\n                model_path=info.local_data_path,\n                model=info.model(),\n                half=not opts.no_half and not opts.upcast_sampling,\n                tile=opts.upscaler_tile_size,\n                tile_pad=opts.upscaler_tile_overlap,\n                device=device,\n            )\n            self.models[info.local_data_path] = upsampler\n        upsampled = upsampler.enhance(np.array(img), outscale=info.scale)[0]\n        if opts.upscaler_unload and info.local_data_path in self.models:\n            del self.models[info.local_data_path]\n            log.debug(f\"Upscaler unloaded: type={self.name} model={selected_model}\")\n            devices.torch_gc(force=True)\n\n        image = Image.fromarray(upsampled)\n        return image\n"
  },
  {
    "path": "modules/postprocess/realesrgan_model_arch.py",
    "content": "import os\nimport math\nimport queue\nimport threading\nimport cv2\nimport numpy as np\nimport torch\nfrom torch import nn\nfrom torch.nn import functional as F\nfrom rich.progress import Progress, TextColumn, BarColumn, TaskProgressColumn, TimeRemainingColumn, TimeElapsedColumn\nfrom modules import devices, shared\nfrom modules.upscaler import compile_upscaler\n\nROOT_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))\n\n\nclass RealESRGANer():\n    \"\"\"A helper class for upsampling images with RealESRGAN.\n\n    Args:\n        scale (int): Upsampling scale factor used in the networks. It is usually 2 or 4.\n        model_path (str): The path to the pretrained model. It can be urls (will first download it automatically).\n        model (nn.Module): The defined network. Default: None.\n        tile (int): As too large images result in the out of GPU memory issue, so this tile option will first crop\n            input images into tiles, and then process each of them. Finally, they will be merged into one image.\n            0 denotes for do not use tile. Default: 0.\n        tile_pad (int): The pad size for each tile, to remove border artifacts. Default: 10.\n        pre_pad (int): Pad the input images to avoid border artifacts. Default: 10.\n        half (float): Whether to use half precision during inference. Default: False.\n    \"\"\"\n\n    def __init__(self,\n                 name,\n                 scale,\n                 model_path,\n                 dni_weight=None,\n                 model=None,\n                 tile=0,\n                 tile_pad=10,\n                 pre_pad=10,\n                 half=False,\n                 device=None,\n                 gpu_id=None):\n        self.name = name\n        self.scale = scale\n        self.tile_size = tile\n        self.tile_pad = tile_pad\n        self.pre_pad = pre_pad\n        self.mod_scale = None\n        self.half = half\n\n        # initialize model\n        if gpu_id:\n            self.device = torch.device(\n                f'cuda:{gpu_id}' if torch.cuda.is_available() else 'cpu') if device is None else device\n        else:\n            self.device = devices.device if device is None else device\n\n        if isinstance(model_path, list):\n            # dni\n            assert len(model_path) == len(dni_weight), 'model_path and dni_weight should have the save length.'\n            loadnet = self.dni(model_path[0], model_path[1], dni_weight)\n        else:\n            # if the model_path starts with https, it will first download models to the folder: weights\n            if model_path.startswith('https://'):\n                from modules.modelloader import load_file_from_url\n                model_path = load_file_from_url(url=model_path, model_dir=os.path.join(ROOT_DIR, 'weights'), progress=True, file_name=None)\n            loadnet = torch.load(model_path, map_location=torch.device('cpu'))\n            shared.log.info(f\"Upscaler loaded: type={self.name} model={model_path}\")\n\n        # prefer to use params_ema\n        if 'params_ema' in loadnet:\n            keyname = 'params_ema'\n        else:\n            keyname = 'params'\n        model.load_state_dict(loadnet[keyname], strict=True)\n\n        model.eval()\n        if self.half:\n            model = model.half()\n        self.model = model.to(self.device)\n        self.model = compile_upscaler(self.model)\n\n    def dni(self, net_a, net_b, dni_weight, key='params', loc='cpu'):\n        \"\"\"Deep network interpolation.\n\n        ``Paper: Deep Network Interpolation for Continuous Imagery Effect Transition``\n        \"\"\"\n        net_a = torch.load(net_a, map_location=torch.device(loc))\n        net_b = torch.load(net_b, map_location=torch.device(loc))\n        for k, v_a in net_a[key].items():\n            net_a[key][k] = dni_weight[0] * v_a + dni_weight[1] * net_b[key][k]\n        return net_a\n\n    def pre_process(self, img):\n        \"\"\"Pre-process, such as pre-pad and mod pad, so that the images can be divisible\n        \"\"\"\n        img = torch.from_numpy(np.transpose(img, (2, 0, 1))).float()\n        self.img = img.unsqueeze(0).to(self.device)\n        if self.half:\n            self.img = self.img.half()\n\n        # pre_pad\n        if self.pre_pad != 0:\n            self.img = F.pad(self.img, (0, self.pre_pad, 0, self.pre_pad), 'reflect')\n        # mod pad for divisible borders\n        if self.scale == 2:\n            self.mod_scale = 2\n        elif self.scale == 1:\n            self.mod_scale = 4\n        if self.mod_scale is not None:\n            self.mod_pad_h, self.mod_pad_w = 0, 0\n            _, _, h, w = self.img.size()\n            if (h % self.mod_scale != 0):\n                self.mod_pad_h = (self.mod_scale - h % self.mod_scale)\n            if (w % self.mod_scale != 0):\n                self.mod_pad_w = (self.mod_scale - w % self.mod_scale)\n            self.img = F.pad(self.img, (0, self.mod_pad_w, 0, self.mod_pad_h), 'reflect')\n\n    def process(self):\n        # model inference\n        self.output = self.model(self.img)\n\n    def tile_process(self):\n        \"\"\"It will first crop input images to tiles, and then process each tile.\n        Finally, all the processed tiles are merged into one images.\n\n        Modified from: https://github.com/ata4/esrgan-launcher\n        \"\"\"\n        batch, channel, height, width = self.img.shape\n        output_height = height * self.scale\n        output_width = width * self.scale\n        output_shape = (batch, channel, output_height, output_width)\n\n        # start with black image\n        self.output = self.img.new_zeros(output_shape)\n        tiles_x = math.ceil(width / self.tile_size)\n        tiles_y = math.ceil(height / self.tile_size)\n\n        # loop over all tiles\n        with Progress(TextColumn('[cyan]{task.description}'), BarColumn(), TaskProgressColumn(), TimeRemainingColumn(), TimeElapsedColumn(), console=shared.console) as progress:\n            task = progress.add_task(description=\"Upscaling\", total=tiles_y * tiles_x)\n            with torch.no_grad():\n                for y in range(tiles_y):\n                    if shared.state.interrupted:\n                        break\n                    for x in range(tiles_x):\n                        if shared.state.interrupted:\n                            break\n                        # extract tile from input image\n                        ofs_x = x * self.tile_size\n                        ofs_y = y * self.tile_size\n                        # input tile area on total image\n                        input_start_x = ofs_x\n                        input_end_x = min(ofs_x + self.tile_size, width)\n                        input_start_y = ofs_y\n                        input_end_y = min(ofs_y + self.tile_size, height)\n\n                        # input tile area on total image with padding\n                        input_start_x_pad = max(input_start_x - self.tile_pad, 0)\n                        input_end_x_pad = min(input_end_x + self.tile_pad, width)\n                        input_start_y_pad = max(input_start_y - self.tile_pad, 0)\n                        input_end_y_pad = min(input_end_y + self.tile_pad, height)\n\n                        # input tile dimensions\n                        input_tile_width = input_end_x - input_start_x\n                        input_tile_height = input_end_y - input_start_y\n                        tile_idx = y * tiles_x + x + 1 # noqa\n                        input_tile = self.img[:, :, input_start_y_pad:input_end_y_pad, input_start_x_pad:input_end_x_pad]\n\n                        # upscale tile\n                        try:\n                            output_tile = self.model(input_tile)\n                        except Exception as e:\n                            shared.log.error(f'Upscale error: type=R-ESRGAN {e}')\n\n                        # output tile area on total image\n                        output_start_x = input_start_x * self.scale\n                        output_end_x = input_end_x * self.scale\n                        output_start_y = input_start_y * self.scale\n                        output_end_y = input_end_y * self.scale\n\n                        # output tile area without padding\n                        output_start_x_tile = (input_start_x - input_start_x_pad) * self.scale\n                        output_end_x_tile = output_start_x_tile + input_tile_width * self.scale\n                        output_start_y_tile = (input_start_y - input_start_y_pad) * self.scale\n                        output_end_y_tile = output_start_y_tile + input_tile_height * self.scale\n\n                        # put tile into output image\n                        self.output[:, :, output_start_y:output_end_y,\n                                    output_start_x:output_end_x] = output_tile[:, :, output_start_y_tile:output_end_y_tile,\n                                                                            output_start_x_tile:output_end_x_tile]\n                        progress.update(task, advance=1, description=\"Upscaling\")\n\n    def post_process(self):\n        # remove extra pad\n        if self.mod_scale is not None:\n            _, _, h, w = self.output.size()\n            self.output = self.output[:, :, 0:h - self.mod_pad_h * self.scale, 0:w - self.mod_pad_w * self.scale]\n        # remove prepad\n        if self.pre_pad != 0:\n            _, _, h, w = self.output.size()\n            self.output = self.output[:, :, 0:h - self.pre_pad * self.scale, 0:w - self.pre_pad * self.scale]\n        return self.output\n\n    @torch.no_grad()\n    def enhance(self, img, outscale=None, alpha_upsampler='realesrgan'):\n        h_input, w_input = img.shape[0:2]\n        # img: numpy\n        img = img.astype(np.float32)\n        if np.max(img) > 256:  # 16-bit image\n            max_range = 65535\n        else:\n            max_range = 255\n        img = img / max_range\n        if len(img.shape) == 2:  # gray image\n            img_mode = 'L'\n            img = cv2.cvtColor(img, cv2.COLOR_GRAY2RGB)\n        elif img.shape[2] == 4:  # RGBA image with alpha channel\n            img_mode = 'RGBA'\n            alpha = img[:, :, 3]\n            img = img[:, :, 0:3]\n            img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)\n            if alpha_upsampler == 'realesrgan':\n                alpha = cv2.cvtColor(alpha, cv2.COLOR_GRAY2RGB)\n        else:\n            img_mode = 'RGB'\n            img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)\n\n        # ------------------- process image (without the alpha channel) ------------------- #\n        self.pre_process(img)\n        if self.tile_size > 0:\n            self.tile_process()\n        else:\n            self.process()\n        output_img = self.post_process()\n        output_img = output_img.data.squeeze().float().cpu().clamp_(0, 1).numpy()\n        output_img = np.transpose(output_img[[2, 1, 0], :, :], (1, 2, 0))\n        if img_mode == 'L':\n            output_img = cv2.cvtColor(output_img, cv2.COLOR_BGR2GRAY)\n\n        # ------------------- process the alpha channel if necessary ------------------- #\n        if img_mode == 'RGBA':\n            if alpha_upsampler == 'realesrgan':\n                self.pre_process(alpha)\n                if self.tile_size > 0:\n                    self.tile_process()\n                else:\n                    self.process()\n                output_alpha = self.post_process()\n                output_alpha = output_alpha.data.squeeze().float().cpu().clamp_(0, 1).numpy()\n                output_alpha = np.transpose(output_alpha[[2, 1, 0], :, :], (1, 2, 0))\n                output_alpha = cv2.cvtColor(output_alpha, cv2.COLOR_BGR2GRAY)\n            else:  # use the cv2 resize for alpha channel\n                h, w = alpha.shape[0:2]\n                output_alpha = cv2.resize(alpha, (w * self.scale, h * self.scale), interpolation=cv2.INTER_LANCZOS4)\n\n            # merge the alpha channel\n            output_img = cv2.cvtColor(output_img, cv2.COLOR_BGR2BGRA)\n            output_img[:, :, 3] = output_alpha\n\n        # ------------------------------ return ------------------------------ #\n        if max_range == 65535:  # 16-bit image\n            output = (output_img * 65535.0).round().astype(np.uint16)\n        else:\n            output = (output_img * 255.0).round().astype(np.uint8)\n\n        if outscale is not None and outscale != float(self.scale):\n            output = cv2.resize(\n                output, (\n                    int(w_input * outscale),\n                    int(h_input * outscale),\n                ), interpolation=cv2.INTER_LANCZOS4)\n\n        return output, img_mode\n\n\nclass PrefetchReader(threading.Thread):\n    \"\"\"Prefetch images.\n\n    Args:\n        img_list (list[str]): A image list of image paths to be read.\n        num_prefetch_queue (int): Number of prefetch queue.\n    \"\"\"\n\n    def __init__(self, img_list, num_prefetch_queue):\n        super().__init__()\n        self.que = queue.Queue(num_prefetch_queue)\n        self.img_list = img_list\n\n    def run(self):\n        for img_path in self.img_list:\n            img = cv2.imread(img_path, cv2.IMREAD_UNCHANGED)\n            self.que.put(img)\n\n        self.que.put(None)\n\n    def __next__(self):\n        next_item = self.que.get()\n        if next_item is None:\n            raise StopIteration\n        return next_item\n\n    def __iter__(self):\n        return self\n\n\nclass IOConsumer(threading.Thread):\n\n    def __init__(self, opt, que, qid):\n        super().__init__()\n        self._queue = que\n        self.qid = qid\n        self.opt = opt\n\n    def run(self):\n        while True:\n            msg = self._queue.get()\n            if isinstance(msg, str) and msg == 'quit':\n                break\n\n            output = msg['output']\n            save_path = msg['save_path']\n            cv2.imwrite(save_path, output)\n\n\nclass SRVGGNetCompact(nn.Module):\n    \"\"\"A compact VGG-style network structure for super-resolution.\n\n    It is a compact network structure, which performs upsampling in the last layer and no convolution is\n    conducted on the HR feature space.\n\n    Args:\n        num_in_ch (int): Channel number of inputs. Default: 3.\n        num_out_ch (int): Channel number of outputs. Default: 3.\n        num_feat (int): Channel number of intermediate features. Default: 64.\n        num_conv (int): Number of convolution layers in the body network. Default: 16.\n        upscale (int): Upsampling factor. Default: 4.\n        act_type (str): Activation type, options: 'relu', 'prelu', 'leakyrelu'. Default: prelu.\n    \"\"\"\n\n    def __init__(self, num_in_ch=3, num_out_ch=3, num_feat=64, num_conv=16, upscale=4, act_type='prelu'):\n        super(SRVGGNetCompact, self).__init__()\n        self.num_in_ch = num_in_ch\n        self.num_out_ch = num_out_ch\n        self.num_feat = num_feat\n        self.num_conv = num_conv\n        self.upscale = upscale\n        self.act_type = act_type\n\n        self.body = nn.ModuleList()\n        # the first conv\n        self.body.append(nn.Conv2d(num_in_ch, num_feat, 3, 1, 1))\n        # the first activation\n        if act_type == 'relu':\n            activation = nn.ReLU(inplace=True)\n        elif act_type == 'prelu':\n            activation = nn.PReLU(num_parameters=num_feat)\n        elif act_type == 'leakyrelu':\n            activation = nn.LeakyReLU(negative_slope=0.1, inplace=True)\n        self.body.append(activation)\n\n        # the body structure\n        for _ in range(num_conv):\n            self.body.append(nn.Conv2d(num_feat, num_feat, 3, 1, 1))\n            # activation\n            if act_type == 'relu':\n                activation = nn.ReLU(inplace=True)\n            elif act_type == 'prelu':\n                activation = nn.PReLU(num_parameters=num_feat)\n            elif act_type == 'leakyrelu':\n                activation = nn.LeakyReLU(negative_slope=0.1, inplace=True)\n            self.body.append(activation)\n\n        # the last conv\n        self.body.append(nn.Conv2d(num_feat, num_out_ch * upscale * upscale, 3, 1, 1))\n        # upsample\n        self.upsampler = nn.PixelShuffle(upscale)\n\n    def forward(self, x):\n        out = x\n        for i in range(0, len(self.body)):\n            out = self.body[i](out)\n\n        out = self.upsampler(out)\n        # add the nearest upsampled image, so that the network learns the residual\n        base = F.interpolate(x, scale_factor=self.upscale, mode='nearest')\n        out += base\n        return out\n"
  },
  {
    "path": "modules/postprocess/restorer.py",
    "content": "import time\nimport cv2\nimport numpy as np\nfrom modules import shared, devices\n\n\nface_helper = None\n\n\ndef restore(np_image, name, session, strength): # pylint: disable=unused-argument\n    t0 = time.time()\n    global face_helper # pylint: disable=global-statement\n    try:\n        from modules.facelib.utils.face_restoration_helper import FaceRestoreHelper\n        from modules.facelib.detection.retinaface import retinaface\n    except Exception as e:\n        shared.log.error(f\"FaceRestorer error: {e}\")\n        return np_image\n    if hasattr(retinaface, 'device'):\n        retinaface.device = devices.device\n    if face_helper is None:\n        face_helper = FaceRestoreHelper(1, face_size=512, crop_ratio=(1, 1), det_model='retinaface_resnet50', save_ext='png', use_parse=True, device=devices.device)\n\n    np_image = np_image[:, :, ::-1]\n    original_resolution = np_image.shape[0:2]\n    resolution = session.get_inputs()[0].shape[-2:]\n\n    if face_helper is None or session is None:\n        return np_image\n    face_helper.clean_all()\n    face_helper.read_image(np_image)\n    face_helper.get_face_landmarks_5(only_center_face=False, eye_dist_threshold=5)\n    face_helper.align_warp_face()\n\n    detected_faces = len(face_helper.cropped_faces)\n    for cropped_face in face_helper.cropped_faces:\n        cropped_face = cv2.resize(cropped_face, resolution, interpolation=cv2.INTER_LANCZOS4)\n        cropped_face = cropped_face.astype(np.float16)[:,:,::-1] / 255.0\n        cropped_face = cropped_face.transpose((2, 0, 1))\n        cropped_face = (cropped_face - 0.5) / 0.5\n        cropped_face = np.expand_dims(cropped_face, axis=0).astype(np.float16)\n        w = np.array([strength], dtype=np.double)\n        if 'codeformer' in name:\n            restored_face = session.run(None, {'x':cropped_face, 'w':w})[0][0]\n        else:\n            restored_face = session.run(None, {'input':cropped_face})[0][0]\n        restored_face = (restored_face.transpose(1,2,0).clip(-1,1) + 1) * 0.5\n        restored_face = (restored_face * 255)[:,:,::-1]\n        restored_face = restored_face.clip(0, 255).astype('uint8')\n        face_helper.add_restored_face(restored_face)\n    face_helper.get_inverse_affine(None)\n    restored_img = face_helper.paste_faces_to_input_image()\n    restored_img = restored_img[:, :, ::-1]\n    if original_resolution != restored_img.shape[0:2]:\n        restored_img = cv2.resize(restored_img, (0, 0), fx=original_resolution[1]/restored_img.shape[1], fy=original_resolution[0]/restored_img.shape[0], interpolation=cv2.INTER_LANCZOS4)\n\n    face_helper.clean_all()\n    t1 = time.time()\n    shared.log.info(f'Detailer: model=\"{name}\" faces={detected_faces} strength={strength} time={t1-t0:.3f}')\n\n    return restored_img\n"
  },
  {
    "path": "modules/postprocess/scunet_model.py",
    "content": "from PIL import Image\nimport numpy as np\nimport torch\nfrom rich.progress import Progress, TextColumn, BarColumn, TaskProgressColumn, TimeRemainingColumn, TimeElapsedColumn\nfrom modules import devices\nfrom modules.postprocess.scunet_model_arch import SCUNet as net\nfrom modules.shared import opts, log, console\nfrom modules.upscaler import Upscaler, compile_upscaler\n\n\nclass UpscalerSCUNet(Upscaler):\n    def __init__(self, dirname):\n        self.name = \"SCUNet\"\n        self.user_path = dirname\n        super().__init__()\n        self.scalers = self.find_scalers()\n        self.models = {}\n\n    def load_model(self, path: str):\n        info = self.find_model(path)\n        if info is None:\n            return\n        if self.models.get(info.local_data_path, None) is not None:\n            log.debug(f\"Upscaler cached: type={self.name} model={info.local_data_path}\")\n            model=self.models[info.local_data_path]\n        else:\n            model = net(in_nc=3, config=[4, 4, 4, 4, 4, 4, 4], dim=64)\n            model.load_state_dict(torch.load(info.local_data_path), strict=True)\n            model.eval()\n            log.info(f\"Upscaler loaded: type={self.name} model={info.local_data_path}\")\n            for _, v in model.named_parameters():\n                v.requires_grad = False\n            model = model.to(devices.device)\n            model = compile_upscaler(model)\n            self.models[info.local_data_path] = model\n        return model\n\n    @staticmethod\n    @torch.no_grad()\n    def tiled_inference(img, model):\n        # test the image tile by tile\n        h, w = img.shape[2:]\n        tile = opts.upscaler_tile_size\n        tile_overlap = opts.upscaler_tile_overlap\n        if tile == 0:\n            return model(img)\n        assert tile % 8 == 0, \"tile size should be a multiple of window_size\"\n        sf = 1\n        stride = tile - tile_overlap\n        h_idx_list = list(range(0, h - tile, stride)) + [h - tile]\n        w_idx_list = list(range(0, w - tile, stride)) + [w - tile]\n        E = torch.zeros(1, 3, h * sf, w * sf, dtype=img.dtype, device=devices.device)\n        W = torch.zeros_like(E, dtype=devices.dtype, device=devices.device)\n        with Progress(TextColumn('[cyan]{task.description}'), BarColumn(), TaskProgressColumn(), TimeRemainingColumn(), TimeElapsedColumn(), console=console) as progress:\n            task = progress.add_task(description=\"Upscaling\", total=len(h_idx_list) * len(w_idx_list))\n            for h_idx in h_idx_list:\n                for w_idx in w_idx_list:\n                    in_patch = img[..., h_idx: h_idx + tile, w_idx: w_idx + tile]\n                    out_patch = model(in_patch)\n                    out_patch_mask = torch.ones_like(out_patch)\n                    E[\n                        ..., h_idx * sf: (h_idx + tile) * sf, w_idx * sf: (w_idx + tile) * sf\n                    ].add_(out_patch)\n                    W[\n                        ..., h_idx * sf: (h_idx + tile) * sf, w_idx * sf: (w_idx + tile) * sf\n                    ].add_(out_patch_mask)\n                    progress.update(task, advance=1, description=\"Upscaling\")\n        output = E.div_(W)\n        return output\n\n    def do_upscale(self, img: Image.Image, selected_file):\n        devices.torch_gc()\n        model = self.load_model(selected_file)\n        if model is None:\n            return img\n        tile = opts.upscaler_tile_size\n        h, w = img.height, img.width\n        np_img = np.array(img)\n        np_img = np_img[:, :, ::-1]  # RGB to BGR\n        np_img = np_img.transpose((2, 0, 1)) / 255  # HWC to CHW\n        torch_img = torch.from_numpy(np_img).float().unsqueeze(0).to(devices.device)  # type: ignore\n        if tile > h or tile > w:\n            _img = torch.zeros(1, 3, max(h, tile), max(w, tile), dtype=torch_img.dtype, device=torch_img.device)\n            _img[:, :, :h, :w] = torch_img # pad image\n            torch_img = _img\n        torch_output = self.tiled_inference(torch_img, model).squeeze(0)\n        torch_output = torch_output[:, :h * 1, :w * 1] # remove padding, if any\n        np_output: np.ndarray = torch_output.float().cpu().clamp_(0, 1).numpy()\n        del torch_img, torch_output\n        devices.torch_gc()\n        output = np_output.transpose((1, 2, 0))  # CHW to HWC\n        output = output[:, :, ::-1]  # BGR to RGB\n        img = Image.fromarray((output * 255).astype(np.uint8))\n        if opts.upscaler_unload and selected_file in self.models:\n            del self.models[selected_file]\n            log.debug(f\"Upscaler unloaded: type={self.name} model={selected_file}\")\n            devices.torch_gc(force=True)\n        return img\n"
  },
  {
    "path": "modules/postprocess/scunet_model_arch.py",
    "content": "# -*- coding: utf-8 -*-\nimport numpy as np\nimport torch\nimport torch.nn as nn\nfrom einops import rearrange\nfrom einops.layers.torch import Rearrange\nfrom timm.models.layers import trunc_normal_, DropPath\n\n\nclass WMSA(nn.Module):\n    \"\"\" Self-attention module in Swin Transformer\n    \"\"\"\n\n    def __init__(self, input_dim, output_dim, head_dim, window_size, type):\n        super(WMSA, self).__init__()\n        self.input_dim = input_dim\n        self.output_dim = output_dim\n        self.head_dim = head_dim\n        self.scale = self.head_dim ** -0.5\n        self.n_heads = input_dim // head_dim\n        self.window_size = window_size\n        self.type = type\n        self.embedding_layer = nn.Linear(self.input_dim, 3 * self.input_dim, bias=True)\n\n        self.relative_position_params = nn.Parameter(\n            torch.zeros((2 * window_size - 1) * (2 * window_size - 1), self.n_heads))\n\n        self.linear = nn.Linear(self.input_dim, self.output_dim)\n\n        trunc_normal_(self.relative_position_params, std=.02)\n        self.relative_position_params = torch.nn.Parameter(\n            self.relative_position_params.view(2 * window_size - 1, 2 * window_size - 1, self.n_heads).transpose(1,\n                                                                                                                 2).transpose(\n                0, 1))\n\n    def generate_mask(self, h, w, p, shift):\n        \"\"\" generating the mask of SW-MSA\n        Args:\n            shift: shift parameters in CyclicShift.\n        Returns:\n            attn_mask: should be (1 1 w p p),\n        \"\"\"\n        # supporting square.\n        attn_mask = torch.zeros(h, w, p, p, p, p, dtype=torch.bool, device=self.relative_position_params.device)\n        if self.type == 'W':\n            return attn_mask\n\n        s = p - shift\n        attn_mask[-1, :, :s, :, s:, :] = True\n        attn_mask[-1, :, s:, :, :s, :] = True\n        attn_mask[:, -1, :, :s, :, s:] = True\n        attn_mask[:, -1, :, s:, :, :s] = True\n        attn_mask = rearrange(attn_mask, 'w1 w2 p1 p2 p3 p4 -> 1 1 (w1 w2) (p1 p2) (p3 p4)')\n        return attn_mask\n\n    def forward(self, x):\n        \"\"\" Forward pass of Window Multi-head Self-attention module.\n        Args:\n            x: input tensor with shape of [b h w c];\n            attn_mask: attention mask, fill -inf where the value is True;\n        Returns:\n            output: tensor shape [b h w c]\n        \"\"\"\n        if self.type != 'W':\n            x = torch.roll(x, shifts=(-(self.window_size // 2), -(self.window_size // 2)), dims=(1, 2))\n\n        x = rearrange(x, 'b (w1 p1) (w2 p2) c -> b w1 w2 p1 p2 c', p1=self.window_size, p2=self.window_size)\n        h_windows = x.size(1)\n        w_windows = x.size(2)\n        # square validation\n        # assert h_windows == w_windows\n\n        x = rearrange(x, 'b w1 w2 p1 p2 c -> b (w1 w2) (p1 p2) c', p1=self.window_size, p2=self.window_size)\n        qkv = self.embedding_layer(x)\n        q, k, v = rearrange(qkv, 'b nw np (threeh c) -> threeh b nw np c', c=self.head_dim).chunk(3, dim=0)\n        sim = torch.einsum('hbwpc,hbwqc->hbwpq', q, k) * self.scale\n        # Adding learnable relative embedding\n        sim = sim + rearrange(self.relative_embedding(), 'h p q -> h 1 1 p q')\n        # Using Attn Mask to distinguish different subwindows.\n        if self.type != 'W':\n            attn_mask = self.generate_mask(h_windows, w_windows, self.window_size, shift=self.window_size // 2)\n            sim = sim.masked_fill_(attn_mask, float(\"-inf\"))\n\n        probs = nn.functional.softmax(sim, dim=-1)\n        output = torch.einsum('hbwij,hbwjc->hbwic', probs, v)\n        output = rearrange(output, 'h b w p c -> b w p (h c)')\n        output = self.linear(output)\n        output = rearrange(output, 'b (w1 w2) (p1 p2) c -> b (w1 p1) (w2 p2) c', w1=h_windows, p1=self.window_size)\n\n        if self.type != 'W':\n            output = torch.roll(output, shifts=(self.window_size // 2, self.window_size // 2), dims=(1, 2))\n\n        return output\n\n    def relative_embedding(self):\n        cord = torch.tensor(np.array([[i, j] for i in range(self.window_size) for j in range(self.window_size)]))\n        relation = cord[:, None, :] - cord[None, :, :] + self.window_size - 1\n        # negative is allowed\n        return self.relative_position_params[:, relation[:, :, 0].long(), relation[:, :, 1].long()]\n\n\nclass Block(nn.Module):\n    def __init__(self, input_dim, output_dim, head_dim, window_size, drop_path, type='W', input_resolution=None):\n        \"\"\" SwinTransformer Block\n        \"\"\"\n        super(Block, self).__init__()\n        self.input_dim = input_dim\n        self.output_dim = output_dim\n        assert type in ['W', 'SW']\n        self.type = type\n        if input_resolution <= window_size:\n            self.type = 'W'\n\n        self.ln1 = nn.LayerNorm(input_dim)\n        self.msa = WMSA(input_dim, input_dim, head_dim, window_size, self.type)\n        self.drop_path = DropPath(drop_path) if drop_path > 0. else nn.Identity()\n        self.ln2 = nn.LayerNorm(input_dim)\n        self.mlp = nn.Sequential(\n            nn.Linear(input_dim, 4 * input_dim),\n            nn.GELU(),\n            nn.Linear(4 * input_dim, output_dim),\n        )\n\n    def forward(self, x):\n        x = x + self.drop_path(self.msa(self.ln1(x)))\n        x = x + self.drop_path(self.mlp(self.ln2(x)))\n        return x\n\n\nclass ConvTransBlock(nn.Module):\n    def __init__(self, conv_dim, trans_dim, head_dim, window_size, drop_path, type='W', input_resolution=None):\n        \"\"\" SwinTransformer and Conv Block\n        \"\"\"\n        super(ConvTransBlock, self).__init__()\n        self.conv_dim = conv_dim\n        self.trans_dim = trans_dim\n        self.head_dim = head_dim\n        self.window_size = window_size\n        self.drop_path = drop_path\n        self.type = type\n        self.input_resolution = input_resolution\n\n        assert self.type in ['W', 'SW']\n        if self.input_resolution <= self.window_size:\n            self.type = 'W'\n\n        self.trans_block = Block(self.trans_dim, self.trans_dim, self.head_dim, self.window_size, self.drop_path,\n                                 self.type, self.input_resolution)\n        self.conv1_1 = nn.Conv2d(self.conv_dim + self.trans_dim, self.conv_dim + self.trans_dim, 1, 1, 0, bias=True)\n        self.conv1_2 = nn.Conv2d(self.conv_dim + self.trans_dim, self.conv_dim + self.trans_dim, 1, 1, 0, bias=True)\n\n        self.conv_block = nn.Sequential(\n            nn.Conv2d(self.conv_dim, self.conv_dim, 3, 1, 1, bias=False),\n            nn.ReLU(True),\n            nn.Conv2d(self.conv_dim, self.conv_dim, 3, 1, 1, bias=False)\n        )\n\n    def forward(self, x):\n        conv_x, trans_x = torch.split(self.conv1_1(x), (self.conv_dim, self.trans_dim), dim=1)\n        conv_x = self.conv_block(conv_x) + conv_x\n        trans_x = Rearrange('b c h w -> b h w c')(trans_x)\n        trans_x = self.trans_block(trans_x)\n        trans_x = Rearrange('b h w c -> b c h w')(trans_x)\n        res = self.conv1_2(torch.cat((conv_x, trans_x), dim=1))\n        x = x + res\n\n        return x\n\n\nclass SCUNet(nn.Module):\n    # def __init__(self, in_nc=3, config=[2, 2, 2, 2, 2, 2, 2], dim=64, drop_path_rate=0.0, input_resolution=256):\n    def __init__(self, in_nc=3, config=None, dim=64, drop_path_rate=0.0, input_resolution=256):\n        super(SCUNet, self).__init__()\n        if config is None:\n            config = [2, 2, 2, 2, 2, 2, 2]\n        self.config = config\n        self.dim = dim\n        self.head_dim = 32\n        self.window_size = 8\n\n        # drop path rate for each layer\n        dpr = [x.item() for x in torch.linspace(0, drop_path_rate, sum(config))]\n\n        self.m_head = [nn.Conv2d(in_nc, dim, 3, 1, 1, bias=False)]\n\n        begin = 0\n        self.m_down1 = [ConvTransBlock(dim // 2, dim // 2, self.head_dim, self.window_size, dpr[i + begin],\n                                       'W' if not i % 2 else 'SW', input_resolution)\n                        for i in range(config[0])] + \\\n                       [nn.Conv2d(dim, 2 * dim, 2, 2, 0, bias=False)]\n\n        begin += config[0]\n        self.m_down2 = [ConvTransBlock(dim, dim, self.head_dim, self.window_size, dpr[i + begin],\n                                       'W' if not i % 2 else 'SW', input_resolution // 2)\n                        for i in range(config[1])] + \\\n                       [nn.Conv2d(2 * dim, 4 * dim, 2, 2, 0, bias=False)]\n\n        begin += config[1]\n        self.m_down3 = [ConvTransBlock(2 * dim, 2 * dim, self.head_dim, self.window_size, dpr[i + begin],\n                                       'W' if not i % 2 else 'SW', input_resolution // 4)\n                        for i in range(config[2])] + \\\n                       [nn.Conv2d(4 * dim, 8 * dim, 2, 2, 0, bias=False)]\n\n        begin += config[2]\n        self.m_body = [ConvTransBlock(4 * dim, 4 * dim, self.head_dim, self.window_size, dpr[i + begin],\n                                      'W' if not i % 2 else 'SW', input_resolution // 8)\n                       for i in range(config[3])]\n\n        begin += config[3]\n        self.m_up3 = [nn.ConvTranspose2d(8 * dim, 4 * dim, 2, 2, 0, bias=False), ] + \\\n                     [ConvTransBlock(2 * dim, 2 * dim, self.head_dim, self.window_size, dpr[i + begin],\n                                     'W' if not i % 2 else 'SW', input_resolution // 4)\n                      for i in range(config[4])]\n\n        begin += config[4]\n        self.m_up2 = [nn.ConvTranspose2d(4 * dim, 2 * dim, 2, 2, 0, bias=False), ] + \\\n                     [ConvTransBlock(dim, dim, self.head_dim, self.window_size, dpr[i + begin],\n                                     'W' if not i % 2 else 'SW', input_resolution // 2)\n                      for i in range(config[5])]\n\n        begin += config[5]\n        self.m_up1 = [nn.ConvTranspose2d(2 * dim, dim, 2, 2, 0, bias=False), ] + \\\n                     [ConvTransBlock(dim // 2, dim // 2, self.head_dim, self.window_size, dpr[i + begin],\n                                     'W' if not i % 2 else 'SW', input_resolution)\n                      for i in range(config[6])]\n\n        self.m_tail = [nn.Conv2d(dim, in_nc, 3, 1, 1, bias=False)]\n\n        self.m_head = nn.Sequential(*self.m_head)\n        self.m_down1 = nn.Sequential(*self.m_down1)\n        self.m_down2 = nn.Sequential(*self.m_down2)\n        self.m_down3 = nn.Sequential(*self.m_down3)\n        self.m_body = nn.Sequential(*self.m_body)\n        self.m_up3 = nn.Sequential(*self.m_up3)\n        self.m_up2 = nn.Sequential(*self.m_up2)\n        self.m_up1 = nn.Sequential(*self.m_up1)\n        self.m_tail = nn.Sequential(*self.m_tail)\n        # self.apply(self._init_weights)\n\n    def forward(self, x0):\n\n        h, w = x0.size()[-2:]\n        paddingBottom = int(np.ceil(h / 64) * 64 - h)\n        paddingRight = int(np.ceil(w / 64) * 64 - w)\n        x0 = nn.ReplicationPad2d((0, paddingRight, 0, paddingBottom))(x0)\n\n        x1 = self.m_head(x0)\n        x2 = self.m_down1(x1)\n        x3 = self.m_down2(x2)\n        x4 = self.m_down3(x3)\n        x = self.m_body(x4)\n        x = self.m_up3(x + x4)\n        x = self.m_up2(x + x3)\n        x = self.m_up1(x + x2)\n        x = self.m_tail(x + x1)\n\n        x = x[..., :h, :w]\n\n        return x\n\n    def _init_weights(self, m):\n        if isinstance(m, nn.Linear):\n            trunc_normal_(m.weight, std=.02)\n            if m.bias is not None:\n                nn.init.constant_(m.bias, 0)\n        elif isinstance(m, nn.LayerNorm):\n            nn.init.constant_(m.bias, 0)\n            nn.init.constant_(m.weight, 1.0)\n"
  },
  {
    "path": "modules/postprocess/sdupscaler_model.py",
    "content": "import torch\nimport diffusers\nfrom PIL import Image\nfrom modules import shared, devices\nfrom modules.upscaler import Upscaler, UpscalerData\n\n\nclass UpscalerDiffusion(Upscaler):\n    def __init__(self, dirname): # pylint: disable=super-init-not-called\n        self.name = \"SDUpscale\"\n        self.user_path = dirname\n        self.scalers = [\n            UpscalerData(name=\"Diffusion Latent Upscaler 2x\", path=\"stabilityai/sd-x2-latent-upscaler\", upscaler=self, model=None, scale=4),\n            UpscalerData(name=\"Diffusion Latent Upscaler 4x\", path=\"stabilityai/stable-diffusion-x4-upscaler\", upscaler=self, model=None, scale=4),\n        ]\n        self.pipelines = [\n            None,\n            None,\n        ]\n        self.models = {}\n\n    def load_model(self, path: str):\n        from modules.sd_models import set_diffuser_options\n        scaler: UpscalerData = [x for x in self.scalers if x.data_path == path or x.name == path]\n        if len(scaler) == 0:\n            shared.log.error(f\"Upscaler cannot match model: type={self.name} model={path}\")\n            return None\n        scaler = scaler[0]\n        if self.models.get(path, None) is not None:\n            shared.log.debug(f\"Upscaler cached: type={scaler.name} model={path}\")\n            return self.models[path]\n        else:\n            model = diffusers.DiffusionPipeline.from_pretrained(scaler.data_path, cache_dir=shared.opts.diffusers_dir, torch_dtype=devices.dtype)\n            if hasattr(model, \"set_progress_bar_config\"):\n                model.set_progress_bar_config(bar_format='Progress {rate_fmt}{postfix} {bar} {percentage:3.0f}% {n_fmt}/{total_fmt} {elapsed} {remaining} ' + '\\x1b[38;5;71m' + 'Upscale', ncols=80, colour='#327fba')\n            set_diffuser_options(model, vae=None, op='upscaler')\n            self.models[path] = model\n        return self.models[path]\n\n    def callback(self, _step: int, _timestep: int, _latents: torch.FloatTensor):\n        pass\n\n    def do_upscale(self, img: Image.Image, selected_model):\n        devices.torch_gc()\n        model = self.load_model(selected_model)\n        if model is None:\n            return img\n        seeds = [torch.randint(0, 2 ** 32, (1,)).item() for _ in range(1)]\n        generator_device = devices.cpu if shared.opts.diffusers_generator_device == \"CPU\" else devices.device\n        generator = [torch.Generator(generator_device).manual_seed(s) for s in seeds]\n        args = {\n            'prompt': '',\n            'negative_prompt': '',\n            'image': img,\n            'num_inference_steps': shared.opts.upscaler_latent_steps,\n            'guidance_scale': 7.5,\n            'generator': generator,\n            'latents': None,\n            'return_dict': True,\n            'callback': self.callback,\n            'callback_steps': 1,\n            # 'noise_level': 100,\n            # 'num_images_per_prompt': 1,\n            # 'eta': 0.0,\n            # 'cross_attention_kwargs': None,\n        }\n        model = model.to(devices.device)\n        output = model(**args)\n        image = output.images[0]\n        if shared.opts.upscaler_unload and selected_model in self.models:\n            del self.models[selected_model]\n            shared.log.debug(f\"Upscaler unloaded: type={self.name} model={selected_model}\")\n            devices.torch_gc(force=True)\n        return image\n"
  },
  {
    "path": "modules/postprocess/seedvr_model.py",
    "content": "import time\nimport random\nimport numpy as np\nimport torch\nfrom PIL import Image\nfrom torchvision.transforms import ToPILImage\nfrom modules import devices\nfrom modules.shared import opts, log\nfrom modules.upscaler import Upscaler, UpscalerData\n\n\nMODELS_MAP = {\n    \"SeedVR2 3B\": \"seedvr2_ema_3b_fp16.safetensors\",\n    \"SeedVR2 7B\": \"seedvr2_ema_7b_fp16.safetensors\",\n    \"SeedVR2 7B Sharp\": \"seedvr2_ema_7b_sharp_fp16.safetensors\",\n}\nto_pil = ToPILImage()\n\n\nclass UpscalerSeedVR(Upscaler):\n    def __init__(self, dirname=None):\n        self.name = \"SeedVR2\"\n        super().__init__()\n        self.scalers = [\n            UpscalerData(name=\"SeedVR2 3B\", path=None, upscaler=self, model=None, scale=1),\n            UpscalerData(name=\"SeedVR2 7B\", path=None, upscaler=self, model=None, scale=1),\n            UpscalerData(name=\"SeedVR2 7B Sharp\", path=None, upscaler=self, model=None, scale=1),\n        ]\n        self.model = None\n        self.model_loaded = None\n\n    def load_model(self, path: str):\n        model_name = MODELS_MAP.get(path, None)\n        if (self.model is None) or (self.model_loaded != model_name):\n            log.debug(f'Upscaler loading: name=\"{self.name}\" model=\"{model_name}\"')\n            t0 = time.time()\n            from modules.seedvr.src.core.model_manager import configure_runner\n            from modules.seedvr.src.core import generation\n            self.model = configure_runner(\n                model_name=model_name,\n                cache_dir=opts.hfcache_dir,\n                device=devices.device,\n                dtype=devices.dtype,\n            )\n            self.model_loaded = model_name\n            self.model.dit.device = devices.device\n            self.model.dit.dtype = devices.dtype\n            self.model.vae_encode = self.vae_encode\n            self.model.vae_decode = self.vae_decode\n            self.model.model_step = generation.generation_step\n            generation.generation_step = self.model_step\n            self.model._internal_dict = {\n                'dit': self.model.dit,\n                'vae': self.model.vae,\n            }\n            t1 = time.time()\n            self.model.dit.config = self.model.config.dit\n            self.model.vae.tile_sample_min_size = 1024\n            self.model.vae.tile_latent_min_size = 128\n            from modules.model_quant import do_post_load_quant\n            self.model = do_post_load_quant(self.model, allow=True)\n            # from modules.sd_offload import set_diffuser_offload\n            # set_diffuser_offload(self.model)\n            log.info(f'Upscaler loaded: name=\"{self.name}\" model=\"{model_name}\" time={t1 - t0:.2f}')\n\n    def vae_encode(self, samples):\n        log.debug(f'Upscaler encode: samples={samples[0].shape if len(samples) > 0 else None} tile={self.model.vae.tile_sample_min_size} overlap={self.model.vae.tile_overlap_factor}')\n        latents = []\n        if len(samples) == 0:\n            return latents\n        self.model.dit = self.model.dit.to(device=\"cpu\")\n        self.model.vae = self.model.vae.to(device=self.device)\n        devices.torch_gc()\n        from einops import rearrange\n        from modules.seedvr.src.optimization import memory_manager\n        memory_manager.clear_rope_cache(self.model)\n        scale = self.model.config.vae.scaling_factor\n        shift = self.model.config.vae.get(\"shifting_factor\", 0.0)\n        batches = [sample.unsqueeze(0) for sample in samples]\n        for sample in batches:\n            sample = sample.to(self.device, self.model.vae.dtype)\n            sample = self.model.vae.preprocess(sample)\n            latent = self.model.vae.encode(sample).latent\n            latent = latent.unsqueeze(2) if latent.ndim == 4 else latent\n            latent = rearrange(latent, \"b c ... -> b ... c\")\n            latent = (latent - shift) * scale\n            latents.append(latent)\n        latents = [latent.squeeze(0) for latent in latents]\n        self.model.vae = self.model.vae.to(device=\"cpu\")\n        devices.torch_gc()\n        return latents\n\n    def vae_decode(self, latents, target_dtype: torch.dtype = None):\n        log.debug(f'Upscaler decode: latents={latents[0].shape if len(latents) > 0 else None} tile={self.model.vae.tile_latent_min_size} overlap={self.model.vae.tile_overlap_factor}')\n        samples = []\n        if len(latents) == 0:\n            return samples\n        from einops import rearrange\n        from modules.seedvr.src.optimization import memory_manager\n        memory_manager.clear_rope_cache(self.model)\n        self.model.dit = self.model.dit.to(device=\"cpu\")\n        self.model.vae = self.model.vae.to(device=self.device)\n        devices.torch_gc()\n        scale = self.model.config.vae.scaling_factor\n        shift = self.model.config.vae.get(\"shifting_factor\", 0.0)\n        latents = [latent.unsqueeze(0) for latent in latents]\n        with devices.inference_context():\n            for _i, latent in enumerate(latents):\n                latent = latent.to(self.device, self.model.vae.dtype)\n                latent = latent / scale + shift\n                latent = rearrange(latent, \"b ... c -> b c ...\")\n                latent = latent.squeeze(2)\n                sample = self.model.vae.decode(latent).sample\n                sample = self.model.vae.postprocess(sample)\n                samples.append(sample)\n        samples = [sample.squeeze(0) for sample in samples]\n        self.model.vae = self.model.vae.to(device=\"cpu\")\n        devices.torch_gc()\n        return samples\n\n    def model_step(self, *args, **kwargs):\n        from modules.seedvr.src.optimization import memory_manager\n        self.model.vae = self.model.vae.to(device=\"cpu\")\n        self.model.dit = self.model.dit.to(device=self.device)\n        devices.torch_gc()\n        log.debug(f'Upscaler inference: args={len(args)} kwargs={list(kwargs.keys())}')\n        memory_manager.preinitialize_rope_cache(self.model)\n        with devices.inference_context():\n            result = self.model.model_step(*args, **kwargs)\n        self.model.dit = self.model.dit.to(device=\"cpu\")\n        devices.torch_gc()\n        return result\n\n    def do_upscale(self, img: Image.Image, selected_file):\n        self.load_model(selected_file)\n        if self.model is None:\n            return img\n\n        from modules.seedvr.src.core import generation\n\n        width = int(self.scale * img.width) // 8 * 8\n        image_tensor = np.array(img)\n        image_tensor = torch.from_numpy(image_tensor).to(device=devices.device, dtype=devices.dtype).unsqueeze(0) / 255.0\n\n        random.seed()\n        seed = int(random.randrange(4294967294))\n\n        t0 = time.time()\n        with devices.inference_context():\n            result_tensor = generation.generation_loop(\n                runner=self.model,\n                images=image_tensor,\n                cfg_scale=opts.seedvt_cfg_scale,\n                seed=seed,\n                res_w=width,\n                batch_size=1,\n                temporal_overlap=0,\n                device=devices.device,\n            )\n        t1 = time.time()\n        log.info(f'Upscaler: type=\"{self.name}\" model=\"{selected_file}\" scale={self.scale} cfg={opts.seedvt_cfg_scale} seed={seed} time={t1 - t0:.2f}')\n        img = to_pil(result_tensor.squeeze().permute((2, 0, 1)))\n\n        if opts.upscaler_unload:\n            self.model.dit = None\n            self.model.vae = None\n            self.model.cache = None\n            self.model = None\n            log.debug(f'Upscaler unload: type=\"{self.name}\" model=\"{selected_file}\"')\n        devices.torch_gc(force=True)\n        return img\n"
  },
  {
    "path": "modules/postprocess/swinir_model.py",
    "content": "import numpy as np\nimport torch\nfrom PIL import Image\nfrom rich.progress import Progress, TextColumn, BarColumn, TaskProgressColumn, TimeRemainingColumn, TimeElapsedColumn\nfrom modules.postprocess.swinir_model_arch import SwinIR as net\nfrom modules.postprocess.swinir_model_arch_v2 import Swin2SR as net2\nfrom modules import devices, script_callbacks, shared\nfrom modules.upscaler import Upscaler, compile_upscaler\n\n\nclass UpscalerSwinIR(Upscaler):\n    def __init__(self, dirname):\n        self.name = \"SwinIR\"\n        self.user_path = dirname\n        super().__init__()\n        self.scalers = self.find_scalers()\n        self.models = {}\n\n    def load_model(self, path, scale=4):\n        info = self.find_model(path)\n        if info is None:\n            return\n        if self.models.get(info.local_data_path, None) is not None:\n            shared.log.debug(f\"Upscaler cached: type={self.name} model={info.local_data_path}\")\n            return self.models[info.local_data_path]\n        pretrained_model = torch.load(info.local_data_path)\n        model_v2 = net2(\n            upscale=scale,\n            in_chans=3,\n            img_size=64,\n            window_size=8,\n            img_range=1.0,\n            depths=[6, 6, 6, 6, 6, 6],\n            embed_dim=180,\n            num_heads=[6, 6, 6, 6, 6, 6],\n            mlp_ratio=2,\n            upsampler=\"nearest+conv\",\n            resi_connection=\"1conv\",\n        )\n        model_v1 = net(\n            upscale=scale,\n            in_chans=3,\n            img_size=64,\n            window_size=8,\n            img_range=1.0,\n            depths=[6, 6, 6, 6, 6, 6, 6, 6, 6],\n            embed_dim=240,\n            num_heads=[8, 8, 8, 8, 8, 8, 8, 8, 8],\n            mlp_ratio=2,\n            upsampler=\"nearest+conv\",\n            resi_connection=\"3conv\",\n        )\n        for model in [model_v1, model_v2]:\n            for param in [\"params_ema\", \"params\", None]:\n                try:\n                    if param is not None:\n                        model.load_state_dict(pretrained_model[param], strict=True)\n                    else:\n                        model.load_state_dict(pretrained_model, strict=True)\n                    shared.log.info(f\"Upscaler loaded: type={self.name} model={info.local_data_path} param={param}\")\n                    model = compile_upscaler(model)\n                    self.models[info.local_data_path] = model\n                    return model\n                except Exception as e:\n                    shared.log.error(f'Upscaler invalid parameters: type={self.name} model={info.local_data_path} {e}')\n        return model\n\n    def do_upscale(self, img, selected_model):\n        model = self.load_model(selected_model)\n        if model is None:\n            return img\n        model = model.to(devices.device, dtype=devices.dtype)\n        img = upscale(img, model)\n        if shared.opts.upscaler_unload and selected_model in self.models:\n            del self.models[selected_model]\n            shared.log.debug(f\"Upscaler unloaded: type={self.name} model={selected_model}\")\n            devices.torch_gc(force=True)\n        return img\n\n\ndef upscale(\n        img,\n        model,\n        tile=None,\n        tile_overlap=None,\n        window_size=8,\n        scale=4,\n):\n    tile = tile or shared.opts.upscaler_tile_size\n    tile_overlap = tile_overlap or shared.opts.upscaler_tile_overlap\n    img = np.array(img)\n    img = img[:, :, ::-1]\n    img = np.moveaxis(img, 2, 0) / 255\n    img = torch.from_numpy(img).float()\n    img = img.unsqueeze(0).to(devices.device, dtype=devices.dtype)\n    with torch.no_grad(), devices.autocast():\n        _, _, h_old, w_old = img.size()\n        h_pad = (h_old // window_size + 1) * window_size - h_old\n        w_pad = (w_old // window_size + 1) * window_size - w_old\n        img = torch.cat([img, torch.flip(img, [2])], 2)[:, :, : h_old + h_pad, :]\n        img = torch.cat([img, torch.flip(img, [3])], 3)[:, :, :, : w_old + w_pad]\n        output = inference(img, model, tile, tile_overlap, window_size, scale)\n        output = output[..., : h_old * scale, : w_old * scale]\n        output = output.data.squeeze().float().cpu().clamp_(0, 1).numpy()\n        if output.ndim == 3:\n            output = np.transpose(\n                output[[2, 1, 0], :, :], (1, 2, 0)\n            )  # CHW-RGB to HCW-BGR\n        output = (output * 255.0).round().astype(np.uint8)  # float32 to uint8\n        return Image.fromarray(output, \"RGB\")\n\n\ndef inference(img, model, tile, tile_overlap, window_size, scale):\n    # test the image tile by tile\n    b, c, h, w = img.size()\n    tile = min(tile, h, w)\n    assert tile % window_size == 0, \"tile size should be a multiple of window_size\"\n    sf = scale\n    stride = tile - tile_overlap\n    h_idx_list = list(range(0, h - tile, stride)) + [h - tile]\n    w_idx_list = list(range(0, w - tile, stride)) + [w - tile]\n    E = torch.zeros(b, c, h * sf, w * sf, dtype=devices.dtype, device=devices.device).type_as(img)\n    W = torch.zeros_like(E, dtype=devices.dtype, device=devices.device)\n\n    with Progress(TextColumn('[cyan]{task.description}'), BarColumn(), TaskProgressColumn(), TimeRemainingColumn(), TimeElapsedColumn(), console=shared.console) as progress:\n        task = progress.add_task(description=\"Upscaling Initializing\", total=len(h_idx_list) * len(w_idx_list))\n        for h_idx in h_idx_list:\n            if shared.state.interrupted:\n                break\n            for w_idx in w_idx_list:\n                if shared.state.interrupted or shared.state.skipped:\n                    break\n                in_patch = img[..., h_idx: h_idx + tile, w_idx: w_idx + tile]\n                out_patch = model(in_patch)\n                out_patch_mask = torch.ones_like(out_patch)\n\n                E[\n                ..., h_idx * sf: (h_idx + tile) * sf, w_idx * sf: (w_idx + tile) * sf\n                ].add_(out_patch)\n                W[\n                ..., h_idx * sf: (h_idx + tile) * sf, w_idx * sf: (w_idx + tile) * sf\n                ].add_(out_patch_mask)\n                progress.update(task, advance=1, description=\"Upscaling\")\n    output = E.div_(W)\n    return output\n"
  },
  {
    "path": "modules/postprocess/swinir_model_arch.py",
    "content": "# -----------------------------------------------------------------------------------\n# SwinIR: Image Restoration Using Swin Transformer, https://arxiv.org/abs/2108.10257\n# Originally Written by Ze Liu, Modified by Jingyun Liang.\n# -----------------------------------------------------------------------------------\n\nimport math\nimport torch\nfrom torch import nn\nimport torch.nn.functional as F\nimport torch.utils.checkpoint as checkpoint\nfrom timm.models.layers import DropPath, to_2tuple, trunc_normal_\n\n\nclass Mlp(nn.Module):\n    def __init__(self, in_features, hidden_features=None, out_features=None, act_layer=nn.GELU, drop=0.):\n        super().__init__()\n        out_features = out_features or in_features\n        hidden_features = hidden_features or in_features\n        self.fc1 = nn.Linear(in_features, hidden_features)\n        self.act = act_layer()\n        self.fc2 = nn.Linear(hidden_features, out_features)\n        self.drop = nn.Dropout(drop)\n\n    def forward(self, x):\n        x = self.fc1(x)\n        x = self.act(x)\n        x = self.drop(x)\n        x = self.fc2(x)\n        x = self.drop(x)\n        return x\n\n\ndef window_partition(x, window_size):\n    \"\"\"\n    Args:\n        x: (B, H, W, C)\n        window_size (int): window size\n\n    Returns:\n        windows: (num_windows*B, window_size, window_size, C)\n    \"\"\"\n    B, H, W, C = x.shape\n    x = x.view(B, H // window_size, window_size, W // window_size, window_size, C)\n    windows = x.permute(0, 1, 3, 2, 4, 5).contiguous().view(-1, window_size, window_size, C)\n    return windows\n\n\ndef window_reverse(windows, window_size, H, W):\n    \"\"\"\n    Args:\n        windows: (num_windows*B, window_size, window_size, C)\n        window_size (int): Window size\n        H (int): Height of image\n        W (int): Width of image\n\n    Returns:\n        x: (B, H, W, C)\n    \"\"\"\n    B = int(windows.shape[0] / (H * W / window_size / window_size))\n    x = windows.view(B, H // window_size, W // window_size, window_size, window_size, -1)\n    x = x.permute(0, 1, 3, 2, 4, 5).contiguous().view(B, H, W, -1)\n    return x\n\n\nclass WindowAttention(nn.Module):\n    r\"\"\" Window based multi-head self attention (W-MSA) module with relative position bias.\n    It supports both of shifted and non-shifted window.\n\n    Args:\n        dim (int): Number of input channels.\n        window_size (tuple[int]): The height and width of the window.\n        num_heads (int): Number of attention heads.\n        qkv_bias (bool, optional):  If True, add a learnable bias to query, key, value. Default: True\n        qk_scale (float | None, optional): Override default qk scale of head_dim ** -0.5 if set\n        attn_drop (float, optional): Dropout ratio of attention weight. Default: 0.0\n        proj_drop (float, optional): Dropout ratio of output. Default: 0.0\n    \"\"\"\n\n    def __init__(self, dim, window_size, num_heads, qkv_bias=True, qk_scale=None, attn_drop=0., proj_drop=0.):\n\n        super().__init__()\n        self.dim = dim\n        self.window_size = window_size  # Wh, Ww\n        self.num_heads = num_heads\n        head_dim = dim // num_heads\n        self.scale = qk_scale or head_dim ** -0.5\n\n        # define a parameter table of relative position bias\n        self.relative_position_bias_table = nn.Parameter(\n            torch.zeros((2 * window_size[0] - 1) * (2 * window_size[1] - 1), num_heads))  # 2*Wh-1 * 2*Ww-1, nH\n\n        # get pair-wise relative position index for each token inside the window\n        coords_h = torch.arange(self.window_size[0])\n        coords_w = torch.arange(self.window_size[1])\n        coords = torch.stack(torch.meshgrid([coords_h, coords_w]))  # 2, Wh, Ww\n        coords_flatten = torch.flatten(coords, 1)  # 2, Wh*Ww\n        relative_coords = coords_flatten[:, :, None] - coords_flatten[:, None, :]  # 2, Wh*Ww, Wh*Ww\n        relative_coords = relative_coords.permute(1, 2, 0).contiguous()  # Wh*Ww, Wh*Ww, 2\n        relative_coords[:, :, 0] += self.window_size[0] - 1  # shift to start from 0\n        relative_coords[:, :, 1] += self.window_size[1] - 1\n        relative_coords[:, :, 0] *= 2 * self.window_size[1] - 1\n        relative_position_index = relative_coords.sum(-1)  # Wh*Ww, Wh*Ww\n        self.register_buffer(\"relative_position_index\", relative_position_index)\n\n        self.qkv = nn.Linear(dim, dim * 3, bias=qkv_bias)\n        self.attn_drop = nn.Dropout(attn_drop)\n        self.proj = nn.Linear(dim, dim)\n\n        self.proj_drop = nn.Dropout(proj_drop)\n\n        trunc_normal_(self.relative_position_bias_table, std=.02)\n        self.softmax = nn.Softmax(dim=-1)\n\n    def forward(self, x, mask=None):\n        \"\"\"\n        Args:\n            x: input features with shape of (num_windows*B, N, C)\n            mask: (0/-inf) mask with shape of (num_windows, Wh*Ww, Wh*Ww) or None\n        \"\"\"\n        B_, N, C = x.shape\n        qkv = self.qkv(x).reshape(B_, N, 3, self.num_heads, C // self.num_heads).permute(2, 0, 3, 1, 4)\n        q, k, v = qkv[0], qkv[1], qkv[2]  # make torchscript happy (cannot use tensor as tuple)\n\n        q = q * self.scale\n        attn = (q @ k.transpose(-2, -1))\n\n        relative_position_bias = self.relative_position_bias_table[self.relative_position_index.view(-1)].view(\n            self.window_size[0] * self.window_size[1], self.window_size[0] * self.window_size[1], -1)  # Wh*Ww,Wh*Ww,nH\n        relative_position_bias = relative_position_bias.permute(2, 0, 1).contiguous()  # nH, Wh*Ww, Wh*Ww\n        attn = attn + relative_position_bias.unsqueeze(0)\n\n        if mask is not None:\n            nW = mask.shape[0]\n            attn = attn.view(B_ // nW, nW, self.num_heads, N, N) + mask.unsqueeze(1).unsqueeze(0)\n            attn = attn.view(-1, self.num_heads, N, N)\n            attn = self.softmax(attn)\n        else:\n            attn = self.softmax(attn)\n\n        attn = self.attn_drop(attn)\n\n        x = (attn @ v).transpose(1, 2).reshape(B_, N, C)\n        x = self.proj(x)\n        x = self.proj_drop(x)\n        return x\n\n    def extra_repr(self) -> str:\n        return f'dim={self.dim}, window_size={self.window_size}, num_heads={self.num_heads}'\n\n    def flops(self, N):\n        # calculate flops for 1 window with token length of N\n        flops = 0\n        # qkv = self.qkv(x)\n        flops += N * self.dim * 3 * self.dim\n        # attn = (q @ k.transpose(-2, -1))\n        flops += self.num_heads * N * (self.dim // self.num_heads) * N\n        #  x = (attn @ v)\n        flops += self.num_heads * N * N * (self.dim // self.num_heads)\n        # x = self.proj(x)\n        flops += N * self.dim * self.dim\n        return flops\n\n\nclass SwinTransformerBlock(nn.Module):\n    r\"\"\" Swin Transformer Block.\n\n    Args:\n        dim (int): Number of input channels.\n        input_resolution (tuple[int]): Input resolution.\n        num_heads (int): Number of attention heads.\n        window_size (int): Window size.\n        shift_size (int): Shift size for SW-MSA.\n        mlp_ratio (float): Ratio of mlp hidden dim to embedding dim.\n        qkv_bias (bool, optional): If True, add a learnable bias to query, key, value. Default: True\n        qk_scale (float | None, optional): Override default qk scale of head_dim ** -0.5 if set.\n        drop (float, optional): Dropout rate. Default: 0.0\n        attn_drop (float, optional): Attention dropout rate. Default: 0.0\n        drop_path (float, optional): Stochastic depth rate. Default: 0.0\n        act_layer (nn.Module, optional): Activation layer. Default: nn.GELU\n        norm_layer (nn.Module, optional): Normalization layer.  Default: nn.LayerNorm\n    \"\"\"\n\n    def __init__(self, dim, input_resolution, num_heads, window_size=7, shift_size=0,\n                 mlp_ratio=4., qkv_bias=True, qk_scale=None, drop=0., attn_drop=0., drop_path=0.,\n                 act_layer=nn.GELU, norm_layer=nn.LayerNorm):\n        super().__init__()\n        self.dim = dim\n        self.input_resolution = input_resolution\n        self.num_heads = num_heads\n        self.window_size = window_size\n        self.shift_size = shift_size\n        self.mlp_ratio = mlp_ratio\n        if min(self.input_resolution) <= self.window_size:\n            # if window size is larger than input resolution, we don't partition windows\n            self.shift_size = 0\n            self.window_size = min(self.input_resolution)\n        assert 0 <= self.shift_size < self.window_size, \"shift_size must in 0-window_size\"\n\n        self.norm1 = norm_layer(dim)\n        self.attn = WindowAttention(\n            dim, window_size=to_2tuple(self.window_size), num_heads=num_heads,\n            qkv_bias=qkv_bias, qk_scale=qk_scale, attn_drop=attn_drop, proj_drop=drop)\n\n        self.drop_path = DropPath(drop_path) if drop_path > 0. else nn.Identity()\n        self.norm2 = norm_layer(dim)\n        mlp_hidden_dim = int(dim * mlp_ratio)\n        self.mlp = Mlp(in_features=dim, hidden_features=mlp_hidden_dim, act_layer=act_layer, drop=drop)\n\n        if self.shift_size > 0:\n            attn_mask = self.calculate_mask(self.input_resolution)\n        else:\n            attn_mask = None\n\n        self.register_buffer(\"attn_mask\", attn_mask)\n\n    def calculate_mask(self, x_size):\n        # calculate attention mask for SW-MSA\n        H, W = x_size\n        img_mask = torch.zeros((1, H, W, 1))  # 1 H W 1\n        h_slices = (slice(0, -self.window_size),\n                    slice(-self.window_size, -self.shift_size),\n                    slice(-self.shift_size, None))\n        w_slices = (slice(0, -self.window_size),\n                    slice(-self.window_size, -self.shift_size),\n                    slice(-self.shift_size, None))\n        cnt = 0\n        for h in h_slices:\n            for w in w_slices:\n                img_mask[:, h, w, :] = cnt\n                cnt += 1\n\n        mask_windows = window_partition(img_mask, self.window_size)  # nW, window_size, window_size, 1\n        mask_windows = mask_windows.view(-1, self.window_size * self.window_size)\n        attn_mask = mask_windows.unsqueeze(1) - mask_windows.unsqueeze(2)\n        attn_mask = attn_mask.masked_fill(attn_mask != 0, float(-100.0)).masked_fill(attn_mask == 0, float(0.0))\n\n        return attn_mask\n\n    def forward(self, x, x_size):\n        H, W = x_size\n        B, L, C = x.shape\n        # assert L == H * W, \"input feature has wrong size\"\n\n        shortcut = x\n        x = self.norm1(x)\n        x = x.view(B, H, W, C)\n\n        # cyclic shift\n        if self.shift_size > 0:\n            shifted_x = torch.roll(x, shifts=(-self.shift_size, -self.shift_size), dims=(1, 2))\n        else:\n            shifted_x = x\n\n        # partition windows\n        x_windows = window_partition(shifted_x, self.window_size)  # nW*B, window_size, window_size, C\n        x_windows = x_windows.view(-1, self.window_size * self.window_size, C)  # nW*B, window_size*window_size, C\n\n        # W-MSA/SW-MSA (to be compatible for testing on images whose shapes are the multiple of window size\n        if self.input_resolution == x_size:\n            attn_windows = self.attn(x_windows, mask=self.attn_mask)  # nW*B, window_size*window_size, C\n        else:\n            attn_windows = self.attn(x_windows, mask=self.calculate_mask(x_size).to(x.device))\n\n        # merge windows\n        attn_windows = attn_windows.view(-1, self.window_size, self.window_size, C)\n        shifted_x = window_reverse(attn_windows, self.window_size, H, W)  # B H' W' C\n\n        # reverse cyclic shift\n        if self.shift_size > 0:\n            x = torch.roll(shifted_x, shifts=(self.shift_size, self.shift_size), dims=(1, 2))\n        else:\n            x = shifted_x\n        x = x.view(B, H * W, C)\n\n        # FFN\n        x = shortcut + self.drop_path(x)\n        x = x + self.drop_path(self.mlp(self.norm2(x)))\n\n        return x\n\n    def extra_repr(self) -> str:\n        return f\"dim={self.dim}, input_resolution={self.input_resolution}, num_heads={self.num_heads}, window_size={self.window_size}, shift_size={self.shift_size}, mlp_ratio={self.mlp_ratio}\"\n\n    def flops(self):\n        flops = 0\n        H, W = self.input_resolution\n        # norm1\n        flops += self.dim * H * W\n        # W-MSA/SW-MSA\n        nW = H * W / self.window_size / self.window_size\n        flops += nW * self.attn.flops(self.window_size * self.window_size)\n        # mlp\n        flops += 2 * H * W * self.dim * self.dim * self.mlp_ratio\n        # norm2\n        flops += self.dim * H * W\n        return flops\n\n\nclass PatchMerging(nn.Module):\n    r\"\"\" Patch Merging Layer.\n\n    Args:\n        input_resolution (tuple[int]): Resolution of input feature.\n        dim (int): Number of input channels.\n        norm_layer (nn.Module, optional): Normalization layer.  Default: nn.LayerNorm\n    \"\"\"\n\n    def __init__(self, input_resolution, dim, norm_layer=nn.LayerNorm):\n        super().__init__()\n        self.input_resolution = input_resolution\n        self.dim = dim\n        self.reduction = nn.Linear(4 * dim, 2 * dim, bias=False)\n        self.norm = norm_layer(4 * dim)\n\n    def forward(self, x):\n        \"\"\"\n        x: B, H*W, C\n        \"\"\"\n        H, W = self.input_resolution\n        B, L, C = x.shape\n        assert L == H * W, \"input feature has wrong size\"\n        assert H % 2 == 0 and W % 2 == 0, f\"x size ({H}*{W}) are not even.\"\n\n        x = x.view(B, H, W, C)\n\n        x0 = x[:, 0::2, 0::2, :]  # B H/2 W/2 C\n        x1 = x[:, 1::2, 0::2, :]  # B H/2 W/2 C\n        x2 = x[:, 0::2, 1::2, :]  # B H/2 W/2 C\n        x3 = x[:, 1::2, 1::2, :]  # B H/2 W/2 C\n        x = torch.cat([x0, x1, x2, x3], -1)  # B H/2 W/2 4*C\n        x = x.view(B, -1, 4 * C)  # B H/2*W/2 4*C\n\n        x = self.norm(x)\n        x = self.reduction(x)\n\n        return x\n\n    def extra_repr(self) -> str:\n        return f\"input_resolution={self.input_resolution}, dim={self.dim}\"\n\n    def flops(self):\n        H, W = self.input_resolution\n        flops = H * W * self.dim\n        flops += (H // 2) * (W // 2) * 4 * self.dim * 2 * self.dim\n        return flops\n\n\nclass BasicLayer(nn.Module):\n    \"\"\" A basic Swin Transformer layer for one stage.\n\n    Args:\n        dim (int): Number of input channels.\n        input_resolution (tuple[int]): Input resolution.\n        depth (int): Number of blocks.\n        num_heads (int): Number of attention heads.\n        window_size (int): Local window size.\n        mlp_ratio (float): Ratio of mlp hidden dim to embedding dim.\n        qkv_bias (bool, optional): If True, add a learnable bias to query, key, value. Default: True\n        qk_scale (float | None, optional): Override default qk scale of head_dim ** -0.5 if set.\n        drop (float, optional): Dropout rate. Default: 0.0\n        attn_drop (float, optional): Attention dropout rate. Default: 0.0\n        drop_path (float | tuple[float], optional): Stochastic depth rate. Default: 0.0\n        norm_layer (nn.Module, optional): Normalization layer. Default: nn.LayerNorm\n        downsample (nn.Module | None, optional): Downsample layer at the end of the layer. Default: None\n        use_checkpoint (bool): Whether to use checkpointing to save memory. Default: False.\n    \"\"\"\n\n    def __init__(self, dim, input_resolution, depth, num_heads, window_size,\n                 mlp_ratio=4., qkv_bias=True, qk_scale=None, drop=0., attn_drop=0.,\n                 drop_path=0., norm_layer=nn.LayerNorm, downsample=None, use_checkpoint=False):\n\n        super().__init__()\n        self.dim = dim\n        self.input_resolution = input_resolution\n        self.depth = depth\n        self.use_checkpoint = use_checkpoint\n\n        # build blocks\n        self.blocks = nn.ModuleList([\n            SwinTransformerBlock(dim=dim, input_resolution=input_resolution,\n                                 num_heads=num_heads, window_size=window_size,\n                                 shift_size=0 if (i % 2 == 0) else window_size // 2,\n                                 mlp_ratio=mlp_ratio,\n                                 qkv_bias=qkv_bias, qk_scale=qk_scale,\n                                 drop=drop, attn_drop=attn_drop,\n                                 drop_path=drop_path[i] if isinstance(drop_path, list) else drop_path,\n                                 norm_layer=norm_layer)\n            for i in range(depth)])\n\n        # patch merging layer\n        if downsample is not None:\n            self.downsample = downsample(input_resolution, dim=dim, norm_layer=norm_layer)\n        else:\n            self.downsample = None\n\n    def forward(self, x, x_size):\n        for blk in self.blocks:\n            if self.use_checkpoint:\n                x = checkpoint.checkpoint(blk, x, x_size)\n            else:\n                x = blk(x, x_size)\n        if self.downsample is not None:\n            x = self.downsample(x)\n        return x\n\n    def extra_repr(self) -> str:\n        return f\"dim={self.dim}, input_resolution={self.input_resolution}, depth={self.depth}\"\n\n    def flops(self):\n        flops = 0\n        for blk in self.blocks:\n            flops += blk.flops()\n        if self.downsample is not None:\n            flops += self.downsample.flops()\n        return flops\n\n\nclass RSTB(nn.Module):\n    \"\"\"Residual Swin Transformer Block (RSTB).\n\n    Args:\n        dim (int): Number of input channels.\n        input_resolution (tuple[int]): Input resolution.\n        depth (int): Number of blocks.\n        num_heads (int): Number of attention heads.\n        window_size (int): Local window size.\n        mlp_ratio (float): Ratio of mlp hidden dim to embedding dim.\n        qkv_bias (bool, optional): If True, add a learnable bias to query, key, value. Default: True\n        qk_scale (float | None, optional): Override default qk scale of head_dim ** -0.5 if set.\n        drop (float, optional): Dropout rate. Default: 0.0\n        attn_drop (float, optional): Attention dropout rate. Default: 0.0\n        drop_path (float | tuple[float], optional): Stochastic depth rate. Default: 0.0\n        norm_layer (nn.Module, optional): Normalization layer. Default: nn.LayerNorm\n        downsample (nn.Module | None, optional): Downsample layer at the end of the layer. Default: None\n        use_checkpoint (bool): Whether to use checkpointing to save memory. Default: False.\n        img_size: Input image size.\n        patch_size: Patch size.\n        resi_connection: The convolutional block before residual connection.\n    \"\"\"\n\n    def __init__(self, dim, input_resolution, depth, num_heads, window_size,\n                 mlp_ratio=4., qkv_bias=True, qk_scale=None, drop=0., attn_drop=0.,\n                 drop_path=0., norm_layer=nn.LayerNorm, downsample=None, use_checkpoint=False,\n                 img_size=224, patch_size=4, resi_connection='1conv'):\n        super(RSTB, self).__init__()\n\n        self.dim = dim\n        self.input_resolution = input_resolution\n\n        self.residual_group = BasicLayer(dim=dim,\n                                         input_resolution=input_resolution,\n                                         depth=depth,\n                                         num_heads=num_heads,\n                                         window_size=window_size,\n                                         mlp_ratio=mlp_ratio,\n                                         qkv_bias=qkv_bias, qk_scale=qk_scale,\n                                         drop=drop, attn_drop=attn_drop,\n                                         drop_path=drop_path,\n                                         norm_layer=norm_layer,\n                                         downsample=downsample,\n                                         use_checkpoint=use_checkpoint)\n\n        if resi_connection == '1conv':\n            self.conv = nn.Conv2d(dim, dim, 3, 1, 1)\n        elif resi_connection == '3conv':\n            # to save parameters and memory\n            self.conv = nn.Sequential(nn.Conv2d(dim, dim // 4, 3, 1, 1), nn.LeakyReLU(negative_slope=0.2, inplace=True),\n                                      nn.Conv2d(dim // 4, dim // 4, 1, 1, 0),\n                                      nn.LeakyReLU(negative_slope=0.2, inplace=True),\n                                      nn.Conv2d(dim // 4, dim, 3, 1, 1))\n\n        self.patch_embed = PatchEmbed(\n            img_size=img_size, patch_size=patch_size, in_chans=0, embed_dim=dim,\n            norm_layer=None)\n\n        self.patch_unembed = PatchUnEmbed(\n            img_size=img_size, patch_size=patch_size, in_chans=0, embed_dim=dim,\n            norm_layer=None)\n\n    def forward(self, x, x_size):\n        return self.patch_embed(self.conv(self.patch_unembed(self.residual_group(x, x_size), x_size))) + x\n\n    def flops(self):\n        flops = 0\n        flops += self.residual_group.flops()\n        H, W = self.input_resolution\n        flops += H * W * self.dim * self.dim * 9\n        flops += self.patch_embed.flops()\n        flops += self.patch_unembed.flops()\n\n        return flops\n\n\nclass PatchEmbed(nn.Module):\n    r\"\"\" Image to Patch Embedding\n\n    Args:\n        img_size (int): Image size.  Default: 224.\n        patch_size (int): Patch token size. Default: 4.\n        in_chans (int): Number of input image channels. Default: 3.\n        embed_dim (int): Number of linear projection output channels. Default: 96.\n        norm_layer (nn.Module, optional): Normalization layer. Default: None\n    \"\"\"\n\n    def __init__(self, img_size=224, patch_size=4, in_chans=3, embed_dim=96, norm_layer=None):\n        super().__init__()\n        img_size = to_2tuple(img_size)\n        patch_size = to_2tuple(patch_size)\n        patches_resolution = [img_size[0] // patch_size[0], img_size[1] // patch_size[1]]\n        self.img_size = img_size\n        self.patch_size = patch_size\n        self.patches_resolution = patches_resolution\n        self.num_patches = patches_resolution[0] * patches_resolution[1]\n\n        self.in_chans = in_chans\n        self.embed_dim = embed_dim\n\n        if norm_layer is not None:\n            self.norm = norm_layer(embed_dim)\n        else:\n            self.norm = None\n\n    def forward(self, x):\n        x = x.flatten(2).transpose(1, 2)  # B Ph*Pw C\n        if self.norm is not None:\n            x = self.norm(x)\n        return x\n\n    def flops(self):\n        flops = 0\n        H, W = self.img_size\n        if self.norm is not None:\n            flops += H * W * self.embed_dim\n        return flops\n\n\nclass PatchUnEmbed(nn.Module):\n    r\"\"\" Image to Patch Unembedding\n\n    Args:\n        img_size (int): Image size.  Default: 224.\n        patch_size (int): Patch token size. Default: 4.\n        in_chans (int): Number of input image channels. Default: 3.\n        embed_dim (int): Number of linear projection output channels. Default: 96.\n        norm_layer (nn.Module, optional): Normalization layer. Default: None\n    \"\"\"\n\n    def __init__(self, img_size=224, patch_size=4, in_chans=3, embed_dim=96, norm_layer=None):\n        super().__init__()\n        img_size = to_2tuple(img_size)\n        patch_size = to_2tuple(patch_size)\n        patches_resolution = [img_size[0] // patch_size[0], img_size[1] // patch_size[1]]\n        self.img_size = img_size\n        self.patch_size = patch_size\n        self.patches_resolution = patches_resolution\n        self.num_patches = patches_resolution[0] * patches_resolution[1]\n\n        self.in_chans = in_chans\n        self.embed_dim = embed_dim\n\n    def forward(self, x, x_size):\n        B, HW, C = x.shape\n        x = x.transpose(1, 2).view(B, self.embed_dim, x_size[0], x_size[1])  # B Ph*Pw C\n        return x\n\n    def flops(self):\n        flops = 0\n        return flops\n\n\nclass Upsample(nn.Sequential):\n    \"\"\"Upsample module.\n\n    Args:\n        scale (int): Scale factor. Supported scales: 2^n and 3.\n        num_feat (int): Channel number of intermediate features.\n    \"\"\"\n\n    def __init__(self, scale, num_feat):\n        m = []\n        if (scale & (scale - 1)) == 0:  # scale = 2^n\n            for _ in range(int(math.log(scale, 2))):\n                m.append(nn.Conv2d(num_feat, 4 * num_feat, 3, 1, 1))\n                m.append(nn.PixelShuffle(2))\n        elif scale == 3:\n            m.append(nn.Conv2d(num_feat, 9 * num_feat, 3, 1, 1))\n            m.append(nn.PixelShuffle(3))\n        else:\n            raise ValueError(f'scale {scale} is not supported. Supported scales: 2^n and 3.')\n        super(Upsample, self).__init__(*m)\n\n\nclass UpsampleOneStep(nn.Sequential):\n    \"\"\"UpsampleOneStep module (the difference with Upsample is that it always only has 1conv + 1pixelshuffle)\n       Used in lightweight SR to save parameters.\n\n    Args:\n        scale (int): Scale factor. Supported scales: 2^n and 3.\n        num_feat (int): Channel number of intermediate features.\n\n    \"\"\"\n\n    def __init__(self, scale, num_feat, num_out_ch, input_resolution=None):\n        self.num_feat = num_feat\n        self.input_resolution = input_resolution\n        m = []\n        m.append(nn.Conv2d(num_feat, (scale ** 2) * num_out_ch, 3, 1, 1))\n        m.append(nn.PixelShuffle(scale))\n        super(UpsampleOneStep, self).__init__(*m)\n\n    def flops(self):\n        H, W = self.input_resolution\n        flops = H * W * self.num_feat * 3 * 9\n        return flops\n\n\nclass SwinIR(nn.Module):\n    r\"\"\" SwinIR\n        A PyTorch impl of : `SwinIR: Image Restoration Using Swin Transformer`, based on Swin Transformer.\n\n    Args:\n        img_size (int | tuple(int)): Input image size. Default 64\n        patch_size (int | tuple(int)): Patch size. Default: 1\n        in_chans (int): Number of input image channels. Default: 3\n        embed_dim (int): Patch embedding dimension. Default: 96\n        depths (tuple(int)): Depth of each Swin Transformer layer.\n        num_heads (tuple(int)): Number of attention heads in different layers.\n        window_size (int): Window size. Default: 7\n        mlp_ratio (float): Ratio of mlp hidden dim to embedding dim. Default: 4\n        qkv_bias (bool): If True, add a learnable bias to query, key, value. Default: True\n        qk_scale (float): Override default qk scale of head_dim ** -0.5 if set. Default: None\n        drop_rate (float): Dropout rate. Default: 0\n        attn_drop_rate (float): Attention dropout rate. Default: 0\n        drop_path_rate (float): Stochastic depth rate. Default: 0.1\n        norm_layer (nn.Module): Normalization layer. Default: nn.LayerNorm.\n        ape (bool): If True, add absolute position embedding to the patch embedding. Default: False\n        patch_norm (bool): If True, add normalization after patch embedding. Default: True\n        use_checkpoint (bool): Whether to use checkpointing to save memory. Default: False\n        upscale: Upscale factor. 2/3/4/8 for image SR, 1 for denoising and compress artifact reduction\n        img_range: Image range. 1. or 255.\n        upsampler: The reconstruction reconstruction module. 'pixelshuffle'/'pixelshuffledirect'/'nearest+conv'/None\n        resi_connection: The convolutional block before residual connection. '1conv'/'3conv'\n    \"\"\"\n\n    def __init__(self, img_size=64, patch_size=1, in_chans=3,\n                 embed_dim=96, depths=(6, 6, 6, 6), num_heads=(6, 6, 6, 6),\n                 window_size=7, mlp_ratio=4., qkv_bias=True, qk_scale=None,\n                 drop_rate=0., attn_drop_rate=0., drop_path_rate=0.1,\n                 norm_layer=nn.LayerNorm, ape=False, patch_norm=True,\n                 use_checkpoint=False, upscale=2, img_range=1., upsampler='', resi_connection='1conv',\n                 **kwargs):\n        super(SwinIR, self).__init__()\n        num_in_ch = in_chans\n        num_out_ch = in_chans\n        num_feat = 64\n        self.img_range = img_range\n        if in_chans == 3:\n            rgb_mean = (0.4488, 0.4371, 0.4040)\n            self.mean = torch.Tensor(rgb_mean).view(1, 3, 1, 1)\n        else:\n            self.mean = torch.zeros(1, 1, 1, 1)\n        self.upscale = upscale\n        self.upsampler = upsampler\n        self.window_size = window_size\n\n        #####################################################################################################\n        ################################### 1, shallow feature extraction ###################################\n        self.conv_first = nn.Conv2d(num_in_ch, embed_dim, 3, 1, 1)\n\n        #####################################################################################################\n        ################################### 2, deep feature extraction ######################################\n        self.num_layers = len(depths)\n        self.embed_dim = embed_dim\n        self.ape = ape\n        self.patch_norm = patch_norm\n        self.num_features = embed_dim\n        self.mlp_ratio = mlp_ratio\n\n        # split image into non-overlapping patches\n        self.patch_embed = PatchEmbed(\n            img_size=img_size, patch_size=patch_size, in_chans=embed_dim, embed_dim=embed_dim,\n            norm_layer=norm_layer if self.patch_norm else None)\n        num_patches = self.patch_embed.num_patches\n        patches_resolution = self.patch_embed.patches_resolution\n        self.patches_resolution = patches_resolution\n\n        # merge non-overlapping patches into image\n        self.patch_unembed = PatchUnEmbed(\n            img_size=img_size, patch_size=patch_size, in_chans=embed_dim, embed_dim=embed_dim,\n            norm_layer=norm_layer if self.patch_norm else None)\n\n        # absolute position embedding\n        if self.ape:\n            self.absolute_pos_embed = nn.Parameter(torch.zeros(1, num_patches, embed_dim))\n            trunc_normal_(self.absolute_pos_embed, std=.02)\n\n        self.pos_drop = nn.Dropout(p=drop_rate)\n\n        # stochastic depth\n        dpr = [x.item() for x in torch.linspace(0, drop_path_rate, sum(depths))]  # stochastic depth decay rule\n\n        # build Residual Swin Transformer blocks (RSTB)\n        self.layers = nn.ModuleList()\n        for i_layer in range(self.num_layers):\n            layer = RSTB(dim=embed_dim,\n                         input_resolution=(patches_resolution[0],\n                                           patches_resolution[1]),\n                         depth=depths[i_layer],\n                         num_heads=num_heads[i_layer],\n                         window_size=window_size,\n                         mlp_ratio=self.mlp_ratio,\n                         qkv_bias=qkv_bias, qk_scale=qk_scale,\n                         drop=drop_rate, attn_drop=attn_drop_rate,\n                         drop_path=dpr[sum(depths[:i_layer]):sum(depths[:i_layer + 1])],  # no impact on SR results\n                         norm_layer=norm_layer,\n                         downsample=None,\n                         use_checkpoint=use_checkpoint,\n                         img_size=img_size,\n                         patch_size=patch_size,\n                         resi_connection=resi_connection\n\n                         )\n            self.layers.append(layer)\n        self.norm = norm_layer(self.num_features)\n\n        # build the last conv layer in deep feature extraction\n        if resi_connection == '1conv':\n            self.conv_after_body = nn.Conv2d(embed_dim, embed_dim, 3, 1, 1)\n        elif resi_connection == '3conv':\n            # to save parameters and memory\n            self.conv_after_body = nn.Sequential(nn.Conv2d(embed_dim, embed_dim // 4, 3, 1, 1),\n                                                 nn.LeakyReLU(negative_slope=0.2, inplace=True),\n                                                 nn.Conv2d(embed_dim // 4, embed_dim // 4, 1, 1, 0),\n                                                 nn.LeakyReLU(negative_slope=0.2, inplace=True),\n                                                 nn.Conv2d(embed_dim // 4, embed_dim, 3, 1, 1))\n\n        #####################################################################################################\n        ################################ 3, high quality image reconstruction ################################\n        if self.upsampler == 'pixelshuffle':\n            # for classical SR\n            self.conv_before_upsample = nn.Sequential(nn.Conv2d(embed_dim, num_feat, 3, 1, 1),\n                                                      nn.LeakyReLU(inplace=True))\n            self.upsample = Upsample(upscale, num_feat)\n            self.conv_last = nn.Conv2d(num_feat, num_out_ch, 3, 1, 1)\n        elif self.upsampler == 'pixelshuffledirect':\n            # for lightweight SR (to save parameters)\n            self.upsample = UpsampleOneStep(upscale, embed_dim, num_out_ch,\n                                            (patches_resolution[0], patches_resolution[1]))\n        elif self.upsampler == 'nearest+conv':\n            # for real-world SR (less artifacts)\n            self.conv_before_upsample = nn.Sequential(nn.Conv2d(embed_dim, num_feat, 3, 1, 1),\n                                                      nn.LeakyReLU(inplace=True))\n            self.conv_up1 = nn.Conv2d(num_feat, num_feat, 3, 1, 1)\n            if self.upscale == 4:\n                self.conv_up2 = nn.Conv2d(num_feat, num_feat, 3, 1, 1)\n            self.conv_hr = nn.Conv2d(num_feat, num_feat, 3, 1, 1)\n            self.conv_last = nn.Conv2d(num_feat, num_out_ch, 3, 1, 1)\n            self.lrelu = nn.LeakyReLU(negative_slope=0.2, inplace=True)\n        else:\n            # for image denoising and JPEG compression artifact reduction\n            self.conv_last = nn.Conv2d(embed_dim, num_out_ch, 3, 1, 1)\n\n        self.apply(self._init_weights)\n\n    def _init_weights(self, m):\n        if isinstance(m, nn.Linear):\n            trunc_normal_(m.weight, std=.02)\n            if isinstance(m, nn.Linear) and m.bias is not None:\n                nn.init.constant_(m.bias, 0)\n        elif isinstance(m, nn.LayerNorm):\n            nn.init.constant_(m.bias, 0)\n            nn.init.constant_(m.weight, 1.0)\n\n    @torch.jit.ignore\n    def no_weight_decay(self):\n        return {'absolute_pos_embed'}\n\n    @torch.jit.ignore\n    def no_weight_decay_keywords(self):\n        return {'relative_position_bias_table'}\n\n    def check_image_size(self, x):\n        _, _, h, w = x.size()\n        mod_pad_h = (self.window_size - h % self.window_size) % self.window_size\n        mod_pad_w = (self.window_size - w % self.window_size) % self.window_size\n        x = F.pad(x, (0, mod_pad_w, 0, mod_pad_h), 'reflect')\n        return x\n\n    def forward_features(self, x):\n        x_size = (x.shape[2], x.shape[3])\n        x = self.patch_embed(x)\n        if self.ape:\n            x = x + self.absolute_pos_embed\n        x = self.pos_drop(x)\n\n        for layer in self.layers:\n            x = layer(x, x_size)\n\n        x = self.norm(x)  # B L C\n        x = self.patch_unembed(x, x_size)\n\n        return x\n\n    def forward(self, x):\n        H, W = x.shape[2:]\n        x = self.check_image_size(x)\n\n        self.mean = self.mean.type_as(x)\n        x = (x - self.mean) * self.img_range\n\n        if self.upsampler == 'pixelshuffle':\n            # for classical SR\n            x = self.conv_first(x)\n            x = self.conv_after_body(self.forward_features(x)) + x\n            x = self.conv_before_upsample(x)\n            x = self.conv_last(self.upsample(x))\n        elif self.upsampler == 'pixelshuffledirect':\n            # for lightweight SR\n            x = self.conv_first(x)\n            x = self.conv_after_body(self.forward_features(x)) + x\n            x = self.upsample(x)\n        elif self.upsampler == 'nearest+conv':\n            # for real-world SR\n            x = self.conv_first(x)\n            x = self.conv_after_body(self.forward_features(x)) + x\n            x = self.conv_before_upsample(x)\n            x = self.lrelu(self.conv_up1(torch.nn.functional.interpolate(x, scale_factor=2, mode='nearest')))\n            if self.upscale == 4:\n                x = self.lrelu(self.conv_up2(torch.nn.functional.interpolate(x, scale_factor=2, mode='nearest')))\n            x = self.conv_last(self.lrelu(self.conv_hr(x)))\n        else:\n            # for image denoising and JPEG compression artifact reduction\n            x_first = self.conv_first(x)\n            res = self.conv_after_body(self.forward_features(x_first)) + x_first\n            x = x + self.conv_last(res)\n\n        x = x / self.img_range + self.mean\n\n        return x[:, :, :H*self.upscale, :W*self.upscale]\n\n    def flops(self):\n        flops = 0\n        H, W = self.patches_resolution\n        flops += H * W * 3 * self.embed_dim * 9\n        flops += self.patch_embed.flops()\n        for layer in self.layers:\n            flops += layer.flops()\n        flops += H * W * 3 * self.embed_dim * self.embed_dim\n        flops += self.upsample.flops()\n        return flops\n"
  },
  {
    "path": "modules/postprocess/swinir_model_arch_v2.py",
    "content": "# -----------------------------------------------------------------------------------\n# Swin2SR: Swin2SR: SwinV2 Transformer for Compressed Image Super-Resolution and Restoration, https://arxiv.org/abs/\n# Written by Conde and Choi et al.\n# -----------------------------------------------------------------------------------\n\nimport math\nimport numpy as np\nimport torch\nfrom torch import nn\nimport torch.nn.functional as F\nimport torch.utils.checkpoint as checkpoint\nfrom timm.models.layers import DropPath, to_2tuple, trunc_normal_\n\n\nclass Mlp(nn.Module):\n    def __init__(self, in_features, hidden_features=None, out_features=None, act_layer=nn.GELU, drop=0.):\n        super().__init__()\n        out_features = out_features or in_features\n        hidden_features = hidden_features or in_features\n        self.fc1 = nn.Linear(in_features, hidden_features)\n        self.act = act_layer()\n        self.fc2 = nn.Linear(hidden_features, out_features)\n        self.drop = nn.Dropout(drop)\n\n    def forward(self, x):\n        x = self.fc1(x)\n        x = self.act(x)\n        x = self.drop(x)\n        x = self.fc2(x)\n        x = self.drop(x)\n        return x\n\n\ndef window_partition(x, window_size):\n    \"\"\"\n    Args:\n        x: (B, H, W, C)\n        window_size (int): window size\n    Returns:\n        windows: (num_windows*B, window_size, window_size, C)\n    \"\"\"\n    B, H, W, C = x.shape\n    x = x.view(B, H // window_size, window_size, W // window_size, window_size, C)\n    windows = x.permute(0, 1, 3, 2, 4, 5).contiguous().view(-1, window_size, window_size, C)\n    return windows\n\n\ndef window_reverse(windows, window_size, H, W):\n    \"\"\"\n    Args:\n        windows: (num_windows*B, window_size, window_size, C)\n        window_size (int): Window size\n        H (int): Height of image\n        W (int): Width of image\n    Returns:\n        x: (B, H, W, C)\n    \"\"\"\n    B = int(windows.shape[0] / (H * W / window_size / window_size))\n    x = windows.view(B, H // window_size, W // window_size, window_size, window_size, -1)\n    x = x.permute(0, 1, 3, 2, 4, 5).contiguous().view(B, H, W, -1)\n    return x\n\nclass WindowAttention(nn.Module):\n    r\"\"\" Window based multi-head self attention (W-MSA) module with relative position bias.\n    It supports both of shifted and non-shifted window.\n    Args:\n        dim (int): Number of input channels.\n        window_size (tuple[int]): The height and width of the window.\n        num_heads (int): Number of attention heads.\n        qkv_bias (bool, optional):  If True, add a learnable bias to query, key, value. Default: True\n        attn_drop (float, optional): Dropout ratio of attention weight. Default: 0.0\n        proj_drop (float, optional): Dropout ratio of output. Default: 0.0\n        pretrained_window_size (tuple[int]): The height and width of the window in pre-training.\n    \"\"\"\n\n    def __init__(self, dim, window_size, num_heads, qkv_bias=True, attn_drop=0., proj_drop=0.,\n                 pretrained_window_size=(0, 0)):\n\n        super().__init__()\n        self.dim = dim\n        self.window_size = window_size  # Wh, Ww\n        self.pretrained_window_size = pretrained_window_size\n        self.num_heads = num_heads\n\n        self.logit_scale = nn.Parameter(torch.log(10 * torch.ones((num_heads, 1, 1))), requires_grad=True)\n\n        # mlp to generate continuous relative position bias\n        self.cpb_mlp = nn.Sequential(nn.Linear(2, 512, bias=True),\n                                     nn.ReLU(inplace=True),\n                                     nn.Linear(512, num_heads, bias=False))\n\n        # get relative_coords_table\n        relative_coords_h = torch.arange(-(self.window_size[0] - 1), self.window_size[0], dtype=torch.float32)\n        relative_coords_w = torch.arange(-(self.window_size[1] - 1), self.window_size[1], dtype=torch.float32)\n        relative_coords_table = torch.stack(\n            torch.meshgrid([relative_coords_h,\n                            relative_coords_w])).permute(1, 2, 0).contiguous().unsqueeze(0)  # 1, 2*Wh-1, 2*Ww-1, 2\n        if pretrained_window_size[0] > 0:\n            relative_coords_table[:, :, :, 0] /= (pretrained_window_size[0] - 1)\n            relative_coords_table[:, :, :, 1] /= (pretrained_window_size[1] - 1)\n        else:\n            relative_coords_table[:, :, :, 0] /= (self.window_size[0] - 1)\n            relative_coords_table[:, :, :, 1] /= (self.window_size[1] - 1)\n        relative_coords_table *= 8  # normalize to -8, 8\n        relative_coords_table = torch.sign(relative_coords_table) * torch.log2(\n            torch.abs(relative_coords_table) + 1.0) / np.log2(8)\n\n        self.register_buffer(\"relative_coords_table\", relative_coords_table)\n\n        # get pair-wise relative position index for each token inside the window\n        coords_h = torch.arange(self.window_size[0])\n        coords_w = torch.arange(self.window_size[1])\n        coords = torch.stack(torch.meshgrid([coords_h, coords_w]))  # 2, Wh, Ww\n        coords_flatten = torch.flatten(coords, 1)  # 2, Wh*Ww\n        relative_coords = coords_flatten[:, :, None] - coords_flatten[:, None, :]  # 2, Wh*Ww, Wh*Ww\n        relative_coords = relative_coords.permute(1, 2, 0).contiguous()  # Wh*Ww, Wh*Ww, 2\n        relative_coords[:, :, 0] += self.window_size[0] - 1  # shift to start from 0\n        relative_coords[:, :, 1] += self.window_size[1] - 1\n        relative_coords[:, :, 0] *= 2 * self.window_size[1] - 1\n        relative_position_index = relative_coords.sum(-1)  # Wh*Ww, Wh*Ww\n        self.register_buffer(\"relative_position_index\", relative_position_index)\n\n        self.qkv = nn.Linear(dim, dim * 3, bias=False)\n        if qkv_bias:\n            self.q_bias = nn.Parameter(torch.zeros(dim))\n            self.v_bias = nn.Parameter(torch.zeros(dim))\n        else:\n            self.q_bias = None\n            self.v_bias = None\n        self.attn_drop = nn.Dropout(attn_drop)\n        self.proj = nn.Linear(dim, dim)\n        self.proj_drop = nn.Dropout(proj_drop)\n        self.softmax = nn.Softmax(dim=-1)\n\n    def forward(self, x, mask=None):\n        \"\"\"\n        Args:\n            x: input features with shape of (num_windows*B, N, C)\n            mask: (0/-inf) mask with shape of (num_windows, Wh*Ww, Wh*Ww) or None\n        \"\"\"\n        B_, N, C = x.shape\n        qkv_bias = None\n        if self.q_bias is not None:\n            qkv_bias = torch.cat((self.q_bias, torch.zeros_like(self.v_bias, requires_grad=False), self.v_bias))\n        qkv = F.linear(input=x, weight=self.qkv.weight, bias=qkv_bias)\n        qkv = qkv.reshape(B_, N, 3, self.num_heads, -1).permute(2, 0, 3, 1, 4)\n        q, k, v = qkv[0], qkv[1], qkv[2]  # make torchscript happy (cannot use tensor as tuple)\n\n        # cosine attention\n        attn = (F.normalize(q, dim=-1) @ F.normalize(k, dim=-1).transpose(-2, -1))\n        logit_scale = torch.clamp(self.logit_scale, max=torch.log(torch.tensor(1. / 0.01)).to(self.logit_scale.device)).exp()\n        attn = attn * logit_scale\n\n        relative_position_bias_table = self.cpb_mlp(self.relative_coords_table).view(-1, self.num_heads)\n        relative_position_bias = relative_position_bias_table[self.relative_position_index.view(-1)].view(\n            self.window_size[0] * self.window_size[1], self.window_size[0] * self.window_size[1], -1)  # Wh*Ww,Wh*Ww,nH\n        relative_position_bias = relative_position_bias.permute(2, 0, 1).contiguous()  # nH, Wh*Ww, Wh*Ww\n        relative_position_bias = 16 * torch.sigmoid(relative_position_bias)\n        attn = attn + relative_position_bias.unsqueeze(0)\n\n        if mask is not None:\n            nW = mask.shape[0]\n            attn = attn.view(B_ // nW, nW, self.num_heads, N, N) + mask.unsqueeze(1).unsqueeze(0)\n            attn = attn.view(-1, self.num_heads, N, N)\n            attn = self.softmax(attn)\n        else:\n            attn = self.softmax(attn)\n\n        attn = self.attn_drop(attn)\n\n        x = (attn @ v).transpose(1, 2).reshape(B_, N, C)\n        x = self.proj(x)\n        x = self.proj_drop(x)\n        return x\n\n    def extra_repr(self) -> str:\n        return f'dim={self.dim}, window_size={self.window_size}, pretrained_window_size={self.pretrained_window_size}, num_heads={self.num_heads}'\n\n    def flops(self, N):\n        # calculate flops for 1 window with token length of N\n        flops = 0\n        # qkv = self.qkv(x)\n        flops += N * self.dim * 3 * self.dim\n        # attn = (q @ k.transpose(-2, -1))\n        flops += self.num_heads * N * (self.dim // self.num_heads) * N\n        #  x = (attn @ v)\n        flops += self.num_heads * N * N * (self.dim // self.num_heads)\n        # x = self.proj(x)\n        flops += N * self.dim * self.dim\n        return flops\n\nclass SwinTransformerBlock(nn.Module):\n    r\"\"\" Swin Transformer Block.\n    Args:\n        dim (int): Number of input channels.\n        input_resolution (tuple[int]): Input resulotion.\n        num_heads (int): Number of attention heads.\n        window_size (int): Window size.\n        shift_size (int): Shift size for SW-MSA.\n        mlp_ratio (float): Ratio of mlp hidden dim to embedding dim.\n        qkv_bias (bool, optional): If True, add a learnable bias to query, key, value. Default: True\n        drop (float, optional): Dropout rate. Default: 0.0\n        attn_drop (float, optional): Attention dropout rate. Default: 0.0\n        drop_path (float, optional): Stochastic depth rate. Default: 0.0\n        act_layer (nn.Module, optional): Activation layer. Default: nn.GELU\n        norm_layer (nn.Module, optional): Normalization layer.  Default: nn.LayerNorm\n        pretrained_window_size (int): Window size in pre-training.\n    \"\"\"\n\n    def __init__(self, dim, input_resolution, num_heads, window_size=7, shift_size=0,\n                 mlp_ratio=4., qkv_bias=True, drop=0., attn_drop=0., drop_path=0.,\n                 act_layer=nn.GELU, norm_layer=nn.LayerNorm, pretrained_window_size=0):\n        super().__init__()\n        self.dim = dim\n        self.input_resolution = input_resolution\n        self.num_heads = num_heads\n        self.window_size = window_size\n        self.shift_size = shift_size\n        self.mlp_ratio = mlp_ratio\n        if min(self.input_resolution) <= self.window_size:\n            # if window size is larger than input resolution, we don't partition windows\n            self.shift_size = 0\n            self.window_size = min(self.input_resolution)\n        assert 0 <= self.shift_size < self.window_size, \"shift_size must in 0-window_size\"\n\n        self.norm1 = norm_layer(dim)\n        self.attn = WindowAttention(\n            dim, window_size=to_2tuple(self.window_size), num_heads=num_heads,\n            qkv_bias=qkv_bias, attn_drop=attn_drop, proj_drop=drop,\n            pretrained_window_size=to_2tuple(pretrained_window_size))\n\n        self.drop_path = DropPath(drop_path) if drop_path > 0. else nn.Identity()\n        self.norm2 = norm_layer(dim)\n        mlp_hidden_dim = int(dim * mlp_ratio)\n        self.mlp = Mlp(in_features=dim, hidden_features=mlp_hidden_dim, act_layer=act_layer, drop=drop)\n\n        if self.shift_size > 0:\n            attn_mask = self.calculate_mask(self.input_resolution)\n        else:\n            attn_mask = None\n\n        self.register_buffer(\"attn_mask\", attn_mask)\n\n    def calculate_mask(self, x_size):\n        # calculate attention mask for SW-MSA\n        H, W = x_size\n        img_mask = torch.zeros((1, H, W, 1))  # 1 H W 1\n        h_slices = (slice(0, -self.window_size),\n                    slice(-self.window_size, -self.shift_size),\n                    slice(-self.shift_size, None))\n        w_slices = (slice(0, -self.window_size),\n                    slice(-self.window_size, -self.shift_size),\n                    slice(-self.shift_size, None))\n        cnt = 0\n        for h in h_slices:\n            for w in w_slices:\n                img_mask[:, h, w, :] = cnt\n                cnt += 1\n\n        mask_windows = window_partition(img_mask, self.window_size)  # nW, window_size, window_size, 1\n        mask_windows = mask_windows.view(-1, self.window_size * self.window_size)\n        attn_mask = mask_windows.unsqueeze(1) - mask_windows.unsqueeze(2)\n        attn_mask = attn_mask.masked_fill(attn_mask != 0, float(-100.0)).masked_fill(attn_mask == 0, float(0.0))\n\n        return attn_mask\n\n    def forward(self, x, x_size):\n        H, W = x_size\n        B, L, C = x.shape\n        #assert L == H * W, \"input feature has wrong size\"\n\n        shortcut = x\n        x = x.view(B, H, W, C)\n\n        # cyclic shift\n        if self.shift_size > 0:\n            shifted_x = torch.roll(x, shifts=(-self.shift_size, -self.shift_size), dims=(1, 2))\n        else:\n            shifted_x = x\n\n        # partition windows\n        x_windows = window_partition(shifted_x, self.window_size)  # nW*B, window_size, window_size, C\n        x_windows = x_windows.view(-1, self.window_size * self.window_size, C)  # nW*B, window_size*window_size, C\n\n        # W-MSA/SW-MSA (to be compatible for testing on images whose shapes are the multiple of window size\n        if self.input_resolution == x_size:\n            attn_windows = self.attn(x_windows, mask=self.attn_mask)  # nW*B, window_size*window_size, C\n        else:\n            attn_windows = self.attn(x_windows, mask=self.calculate_mask(x_size).to(x.device))\n\n        # merge windows\n        attn_windows = attn_windows.view(-1, self.window_size, self.window_size, C)\n        shifted_x = window_reverse(attn_windows, self.window_size, H, W)  # B H' W' C\n\n        # reverse cyclic shift\n        if self.shift_size > 0:\n            x = torch.roll(shifted_x, shifts=(self.shift_size, self.shift_size), dims=(1, 2))\n        else:\n            x = shifted_x\n        x = x.view(B, H * W, C)\n        x = shortcut + self.drop_path(self.norm1(x))\n\n        # FFN\n        x = x + self.drop_path(self.norm2(self.mlp(x)))\n\n        return x\n\n    def extra_repr(self) -> str:\n        return f\"dim={self.dim}, input_resolution={self.input_resolution}, num_heads={self.num_heads}, window_size={self.window_size}, shift_size={self.shift_size}, mlp_ratio={self.mlp_ratio}\"\n\n    def flops(self):\n        flops = 0\n        H, W = self.input_resolution\n        # norm1\n        flops += self.dim * H * W\n        # W-MSA/SW-MSA\n        nW = H * W / self.window_size / self.window_size\n        flops += nW * self.attn.flops(self.window_size * self.window_size)\n        # mlp\n        flops += 2 * H * W * self.dim * self.dim * self.mlp_ratio\n        # norm2\n        flops += self.dim * H * W\n        return flops\n\nclass PatchMerging(nn.Module):\n    r\"\"\" Patch Merging Layer.\n    Args:\n        input_resolution (tuple[int]): Resolution of input feature.\n        dim (int): Number of input channels.\n        norm_layer (nn.Module, optional): Normalization layer.  Default: nn.LayerNorm\n    \"\"\"\n\n    def __init__(self, input_resolution, dim, norm_layer=nn.LayerNorm):\n        super().__init__()\n        self.input_resolution = input_resolution\n        self.dim = dim\n        self.reduction = nn.Linear(4 * dim, 2 * dim, bias=False)\n        self.norm = norm_layer(2 * dim)\n\n    def forward(self, x):\n        \"\"\"\n        x: B, H*W, C\n        \"\"\"\n        H, W = self.input_resolution\n        B, L, C = x.shape\n        assert L == H * W, \"input feature has wrong size\"\n        assert H % 2 == 0 and W % 2 == 0, f\"x size ({H}*{W}) are not even.\"\n\n        x = x.view(B, H, W, C)\n\n        x0 = x[:, 0::2, 0::2, :]  # B H/2 W/2 C\n        x1 = x[:, 1::2, 0::2, :]  # B H/2 W/2 C\n        x2 = x[:, 0::2, 1::2, :]  # B H/2 W/2 C\n        x3 = x[:, 1::2, 1::2, :]  # B H/2 W/2 C\n        x = torch.cat([x0, x1, x2, x3], -1)  # B H/2 W/2 4*C\n        x = x.view(B, -1, 4 * C)  # B H/2*W/2 4*C\n\n        x = self.reduction(x)\n        x = self.norm(x)\n\n        return x\n\n    def extra_repr(self) -> str:\n        return f\"input_resolution={self.input_resolution}, dim={self.dim}\"\n\n    def flops(self):\n        H, W = self.input_resolution\n        flops = (H // 2) * (W // 2) * 4 * self.dim * 2 * self.dim\n        flops += H * W * self.dim // 2\n        return flops\n\nclass BasicLayer(nn.Module):\n    \"\"\" A basic Swin Transformer layer for one stage.\n    Args:\n        dim (int): Number of input channels.\n        input_resolution (tuple[int]): Input resolution.\n        depth (int): Number of blocks.\n        num_heads (int): Number of attention heads.\n        window_size (int): Local window size.\n        mlp_ratio (float): Ratio of mlp hidden dim to embedding dim.\n        qkv_bias (bool, optional): If True, add a learnable bias to query, key, value. Default: True\n        drop (float, optional): Dropout rate. Default: 0.0\n        attn_drop (float, optional): Attention dropout rate. Default: 0.0\n        drop_path (float | tuple[float], optional): Stochastic depth rate. Default: 0.0\n        norm_layer (nn.Module, optional): Normalization layer. Default: nn.LayerNorm\n        downsample (nn.Module | None, optional): Downsample layer at the end of the layer. Default: None\n        use_checkpoint (bool): Whether to use checkpointing to save memory. Default: False.\n        pretrained_window_size (int): Local window size in pre-training.\n    \"\"\"\n\n    def __init__(self, dim, input_resolution, depth, num_heads, window_size,\n                 mlp_ratio=4., qkv_bias=True, drop=0., attn_drop=0.,\n                 drop_path=0., norm_layer=nn.LayerNorm, downsample=None, use_checkpoint=False,\n                 pretrained_window_size=0):\n\n        super().__init__()\n        self.dim = dim\n        self.input_resolution = input_resolution\n        self.depth = depth\n        self.use_checkpoint = use_checkpoint\n\n        # build blocks\n        self.blocks = nn.ModuleList([\n            SwinTransformerBlock(dim=dim, input_resolution=input_resolution,\n                                 num_heads=num_heads, window_size=window_size,\n                                 shift_size=0 if (i % 2 == 0) else window_size // 2,\n                                 mlp_ratio=mlp_ratio,\n                                 qkv_bias=qkv_bias,\n                                 drop=drop, attn_drop=attn_drop,\n                                 drop_path=drop_path[i] if isinstance(drop_path, list) else drop_path,\n                                 norm_layer=norm_layer,\n                                 pretrained_window_size=pretrained_window_size)\n            for i in range(depth)])\n\n        # patch merging layer\n        if downsample is not None:\n            self.downsample = downsample(input_resolution, dim=dim, norm_layer=norm_layer)\n        else:\n            self.downsample = None\n\n    def forward(self, x, x_size):\n        for blk in self.blocks:\n            if self.use_checkpoint:\n                x = checkpoint.checkpoint(blk, x, x_size)\n            else:\n                x = blk(x, x_size)\n        if self.downsample is not None:\n            x = self.downsample(x)\n        return x\n\n    def extra_repr(self) -> str:\n        return f\"dim={self.dim}, input_resolution={self.input_resolution}, depth={self.depth}\"\n\n    def flops(self):\n        flops = 0\n        for blk in self.blocks:\n            flops += blk.flops()\n        if self.downsample is not None:\n            flops += self.downsample.flops()\n        return flops\n\n    def _init_respostnorm(self):\n        for blk in self.blocks:\n            nn.init.constant_(blk.norm1.bias, 0)\n            nn.init.constant_(blk.norm1.weight, 0)\n            nn.init.constant_(blk.norm2.bias, 0)\n            nn.init.constant_(blk.norm2.weight, 0)\n\nclass PatchEmbed(nn.Module):\n    r\"\"\" Image to Patch Embedding\n    Args:\n        img_size (int): Image size.  Default: 224.\n        patch_size (int): Patch token size. Default: 4.\n        in_chans (int): Number of input image channels. Default: 3.\n        embed_dim (int): Number of linear projection output channels. Default: 96.\n        norm_layer (nn.Module, optional): Normalization layer. Default: None\n    \"\"\"\n\n    def __init__(self, img_size=224, patch_size=4, in_chans=3, embed_dim=96, norm_layer=None):\n        super().__init__()\n        img_size = to_2tuple(img_size)\n        patch_size = to_2tuple(patch_size)\n        patches_resolution = [img_size[0] // patch_size[0], img_size[1] // patch_size[1]]\n        self.img_size = img_size\n        self.patch_size = patch_size\n        self.patches_resolution = patches_resolution\n        self.num_patches = patches_resolution[0] * patches_resolution[1]\n\n        self.in_chans = in_chans\n        self.embed_dim = embed_dim\n\n        self.proj = nn.Conv2d(in_chans, embed_dim, kernel_size=patch_size, stride=patch_size)\n        if norm_layer is not None:\n            self.norm = norm_layer(embed_dim)\n        else:\n            self.norm = None\n\n    def forward(self, x):\n        B, C, H, W = x.shape\n        # FIXME look at relaxing size constraints\n        # assert H == self.img_size[0] and W == self.img_size[1],\n        #     f\"Input image size ({H}*{W}) doesn't match model ({self.img_size[0]}*{self.img_size[1]}).\"\n        x = self.proj(x).flatten(2).transpose(1, 2)  # B Ph*Pw C\n        if self.norm is not None:\n            x = self.norm(x)\n        return x\n\n    def flops(self):\n        Ho, Wo = self.patches_resolution\n        flops = Ho * Wo * self.embed_dim * self.in_chans * (self.patch_size[0] * self.patch_size[1])\n        if self.norm is not None:\n            flops += Ho * Wo * self.embed_dim\n        return flops\n\nclass RSTB(nn.Module):\n    \"\"\"Residual Swin Transformer Block (RSTB).\n\n    Args:\n        dim (int): Number of input channels.\n        input_resolution (tuple[int]): Input resolution.\n        depth (int): Number of blocks.\n        num_heads (int): Number of attention heads.\n        window_size (int): Local window size.\n        mlp_ratio (float): Ratio of mlp hidden dim to embedding dim.\n        qkv_bias (bool, optional): If True, add a learnable bias to query, key, value. Default: True\n        drop (float, optional): Dropout rate. Default: 0.0\n        attn_drop (float, optional): Attention dropout rate. Default: 0.0\n        drop_path (float | tuple[float], optional): Stochastic depth rate. Default: 0.0\n        norm_layer (nn.Module, optional): Normalization layer. Default: nn.LayerNorm\n        downsample (nn.Module | None, optional): Downsample layer at the end of the layer. Default: None\n        use_checkpoint (bool): Whether to use checkpointing to save memory. Default: False.\n        img_size: Input image size.\n        patch_size: Patch size.\n        resi_connection: The convolutional block before residual connection.\n    \"\"\"\n\n    def __init__(self, dim, input_resolution, depth, num_heads, window_size,\n                 mlp_ratio=4., qkv_bias=True, drop=0., attn_drop=0.,\n                 drop_path=0., norm_layer=nn.LayerNorm, downsample=None, use_checkpoint=False,\n                 img_size=224, patch_size=4, resi_connection='1conv'):\n        super(RSTB, self).__init__()\n\n        self.dim = dim\n        self.input_resolution = input_resolution\n\n        self.residual_group = BasicLayer(dim=dim,\n                                         input_resolution=input_resolution,\n                                         depth=depth,\n                                         num_heads=num_heads,\n                                         window_size=window_size,\n                                         mlp_ratio=mlp_ratio,\n                                         qkv_bias=qkv_bias,\n                                         drop=drop, attn_drop=attn_drop,\n                                         drop_path=drop_path,\n                                         norm_layer=norm_layer,\n                                         downsample=downsample,\n                                         use_checkpoint=use_checkpoint)\n\n        if resi_connection == '1conv':\n            self.conv = nn.Conv2d(dim, dim, 3, 1, 1)\n        elif resi_connection == '3conv':\n            # to save parameters and memory\n            self.conv = nn.Sequential(nn.Conv2d(dim, dim // 4, 3, 1, 1), nn.LeakyReLU(negative_slope=0.2, inplace=True),\n                                      nn.Conv2d(dim // 4, dim // 4, 1, 1, 0),\n                                      nn.LeakyReLU(negative_slope=0.2, inplace=True),\n                                      nn.Conv2d(dim // 4, dim, 3, 1, 1))\n\n        self.patch_embed = PatchEmbed(\n            img_size=img_size, patch_size=patch_size, in_chans=dim, embed_dim=dim,\n            norm_layer=None)\n\n        self.patch_unembed = PatchUnEmbed(\n            img_size=img_size, patch_size=patch_size, in_chans=dim, embed_dim=dim,\n            norm_layer=None)\n\n    def forward(self, x, x_size):\n        return self.patch_embed(self.conv(self.patch_unembed(self.residual_group(x, x_size), x_size))) + x\n\n    def flops(self):\n        flops = 0\n        flops += self.residual_group.flops()\n        H, W = self.input_resolution\n        flops += H * W * self.dim * self.dim * 9\n        flops += self.patch_embed.flops()\n        flops += self.patch_unembed.flops()\n\n        return flops\n\nclass PatchUnEmbed(nn.Module):\n    r\"\"\" Image to Patch Unembedding\n\n    Args:\n        img_size (int): Image size.  Default: 224.\n        patch_size (int): Patch token size. Default: 4.\n        in_chans (int): Number of input image channels. Default: 3.\n        embed_dim (int): Number of linear projection output channels. Default: 96.\n        norm_layer (nn.Module, optional): Normalization layer. Default: None\n    \"\"\"\n\n    def __init__(self, img_size=224, patch_size=4, in_chans=3, embed_dim=96, norm_layer=None):\n        super().__init__()\n        img_size = to_2tuple(img_size)\n        patch_size = to_2tuple(patch_size)\n        patches_resolution = [img_size[0] // patch_size[0], img_size[1] // patch_size[1]]\n        self.img_size = img_size\n        self.patch_size = patch_size\n        self.patches_resolution = patches_resolution\n        self.num_patches = patches_resolution[0] * patches_resolution[1]\n\n        self.in_chans = in_chans\n        self.embed_dim = embed_dim\n\n    def forward(self, x, x_size):\n        B, HW, C = x.shape\n        x = x.transpose(1, 2).view(B, self.embed_dim, x_size[0], x_size[1])  # B Ph*Pw C\n        return x\n\n    def flops(self):\n        flops = 0\n        return flops\n\n\nclass Upsample(nn.Sequential):\n    \"\"\"Upsample module.\n\n    Args:\n        scale (int): Scale factor. Supported scales: 2^n and 3.\n        num_feat (int): Channel number of intermediate features.\n    \"\"\"\n\n    def __init__(self, scale, num_feat):\n        m = []\n        if (scale & (scale - 1)) == 0:  # scale = 2^n\n            for _ in range(int(math.log(scale, 2))):\n                m.append(nn.Conv2d(num_feat, 4 * num_feat, 3, 1, 1))\n                m.append(nn.PixelShuffle(2))\n        elif scale == 3:\n            m.append(nn.Conv2d(num_feat, 9 * num_feat, 3, 1, 1))\n            m.append(nn.PixelShuffle(3))\n        else:\n            raise ValueError(f'scale {scale} is not supported. Supported scales: 2^n and 3.')\n        super(Upsample, self).__init__(*m)\n\nclass Upsample_hf(nn.Sequential):\n    \"\"\"Upsample module.\n\n    Args:\n        scale (int): Scale factor. Supported scales: 2^n and 3.\n        num_feat (int): Channel number of intermediate features.\n    \"\"\"\n\n    def __init__(self, scale, num_feat):\n        m = []\n        if (scale & (scale - 1)) == 0:  # scale = 2^n\n            for _ in range(int(math.log(scale, 2))):\n                m.append(nn.Conv2d(num_feat, 4 * num_feat, 3, 1, 1))\n                m.append(nn.PixelShuffle(2))\n        elif scale == 3:\n            m.append(nn.Conv2d(num_feat, 9 * num_feat, 3, 1, 1))\n            m.append(nn.PixelShuffle(3))\n        else:\n            raise ValueError(f'scale {scale} is not supported. Supported scales: 2^n and 3.')\n        super(Upsample_hf, self).__init__(*m)\n\n\nclass UpsampleOneStep(nn.Sequential):\n    \"\"\"UpsampleOneStep module (the difference with Upsample is that it always only has 1conv + 1pixelshuffle)\n       Used in lightweight SR to save parameters.\n\n    Args:\n        scale (int): Scale factor. Supported scales: 2^n and 3.\n        num_feat (int): Channel number of intermediate features.\n\n    \"\"\"\n\n    def __init__(self, scale, num_feat, num_out_ch, input_resolution=None):\n        self.num_feat = num_feat\n        self.input_resolution = input_resolution\n        m = []\n        m.append(nn.Conv2d(num_feat, (scale ** 2) * num_out_ch, 3, 1, 1))\n        m.append(nn.PixelShuffle(scale))\n        super(UpsampleOneStep, self).__init__(*m)\n\n    def flops(self):\n        H, W = self.input_resolution\n        flops = H * W * self.num_feat * 3 * 9\n        return flops\n\n\n\nclass Swin2SR(nn.Module):\n    r\"\"\" Swin2SR\n        A PyTorch impl of : `Swin2SR: SwinV2 Transformer for Compressed Image Super-Resolution and Restoration`.\n\n    Args:\n        img_size (int | tuple(int)): Input image size. Default 64\n        patch_size (int | tuple(int)): Patch size. Default: 1\n        in_chans (int): Number of input image channels. Default: 3\n        embed_dim (int): Patch embedding dimension. Default: 96\n        depths (tuple(int)): Depth of each Swin Transformer layer.\n        num_heads (tuple(int)): Number of attention heads in different layers.\n        window_size (int): Window size. Default: 7\n        mlp_ratio (float): Ratio of mlp hidden dim to embedding dim. Default: 4\n        qkv_bias (bool): If True, add a learnable bias to query, key, value. Default: True\n        drop_rate (float): Dropout rate. Default: 0\n        attn_drop_rate (float): Attention dropout rate. Default: 0\n        drop_path_rate (float): Stochastic depth rate. Default: 0.1\n        norm_layer (nn.Module): Normalization layer. Default: nn.LayerNorm.\n        ape (bool): If True, add absolute position embedding to the patch embedding. Default: False\n        patch_norm (bool): If True, add normalization after patch embedding. Default: True\n        use_checkpoint (bool): Whether to use checkpointing to save memory. Default: False\n        upscale: Upscale factor. 2/3/4/8 for image SR, 1 for denoising and compress artifact reduction\n        img_range: Image range. 1. or 255.\n        upsampler: The reconstruction reconstruction module. 'pixelshuffle'/'pixelshuffledirect'/'nearest+conv'/None\n        resi_connection: The convolutional block before residual connection. '1conv'/'3conv'\n    \"\"\"\n\n    def __init__(self, img_size=64, patch_size=1, in_chans=3,\n                 embed_dim=96, depths=(6, 6, 6, 6), num_heads=(6, 6, 6, 6),\n                 window_size=7, mlp_ratio=4., qkv_bias=True,\n                 drop_rate=0., attn_drop_rate=0., drop_path_rate=0.1,\n                 norm_layer=nn.LayerNorm, ape=False, patch_norm=True,\n                 use_checkpoint=False, upscale=2, img_range=1., upsampler='', resi_connection='1conv',\n                 **kwargs):\n        super(Swin2SR, self).__init__()\n        num_in_ch = in_chans\n        num_out_ch = in_chans\n        num_feat = 64\n        self.img_range = img_range\n        if in_chans == 3:\n            rgb_mean = (0.4488, 0.4371, 0.4040)\n            self.mean = torch.Tensor(rgb_mean).view(1, 3, 1, 1)\n        else:\n            self.mean = torch.zeros(1, 1, 1, 1)\n        self.upscale = upscale\n        self.upsampler = upsampler\n        self.window_size = window_size\n\n        #####################################################################################################\n        ################################### 1, shallow feature extraction ###################################\n        self.conv_first = nn.Conv2d(num_in_ch, embed_dim, 3, 1, 1)\n\n        #####################################################################################################\n        ################################### 2, deep feature extraction ######################################\n        self.num_layers = len(depths)\n        self.embed_dim = embed_dim\n        self.ape = ape\n        self.patch_norm = patch_norm\n        self.num_features = embed_dim\n        self.mlp_ratio = mlp_ratio\n\n        # split image into non-overlapping patches\n        self.patch_embed = PatchEmbed(\n            img_size=img_size, patch_size=patch_size, in_chans=embed_dim, embed_dim=embed_dim,\n            norm_layer=norm_layer if self.patch_norm else None)\n        num_patches = self.patch_embed.num_patches\n        patches_resolution = self.patch_embed.patches_resolution\n        self.patches_resolution = patches_resolution\n\n        # merge non-overlapping patches into image\n        self.patch_unembed = PatchUnEmbed(\n            img_size=img_size, patch_size=patch_size, in_chans=embed_dim, embed_dim=embed_dim,\n            norm_layer=norm_layer if self.patch_norm else None)\n\n        # absolute position embedding\n        if self.ape:\n            self.absolute_pos_embed = nn.Parameter(torch.zeros(1, num_patches, embed_dim))\n            trunc_normal_(self.absolute_pos_embed, std=.02)\n\n        self.pos_drop = nn.Dropout(p=drop_rate)\n\n        # stochastic depth\n        dpr = [x.item() for x in torch.linspace(0, drop_path_rate, sum(depths))]  # stochastic depth decay rule\n\n        # build Residual Swin Transformer blocks (RSTB)\n        self.layers = nn.ModuleList()\n        for i_layer in range(self.num_layers):\n            layer = RSTB(dim=embed_dim,\n                         input_resolution=(patches_resolution[0],\n                                           patches_resolution[1]),\n                         depth=depths[i_layer],\n                         num_heads=num_heads[i_layer],\n                         window_size=window_size,\n                         mlp_ratio=self.mlp_ratio,\n                         qkv_bias=qkv_bias,\n                         drop=drop_rate, attn_drop=attn_drop_rate,\n                         drop_path=dpr[sum(depths[:i_layer]):sum(depths[:i_layer + 1])],  # no impact on SR results\n                         norm_layer=norm_layer,\n                         downsample=None,\n                         use_checkpoint=use_checkpoint,\n                         img_size=img_size,\n                         patch_size=patch_size,\n                         resi_connection=resi_connection\n\n                         )\n            self.layers.append(layer)\n\n        if self.upsampler == 'pixelshuffle_hf':\n            self.layers_hf = nn.ModuleList()\n            for i_layer in range(self.num_layers):\n                layer = RSTB(dim=embed_dim,\n                             input_resolution=(patches_resolution[0],\n                                               patches_resolution[1]),\n                             depth=depths[i_layer],\n                             num_heads=num_heads[i_layer],\n                             window_size=window_size,\n                             mlp_ratio=self.mlp_ratio,\n                             qkv_bias=qkv_bias,\n                             drop=drop_rate, attn_drop=attn_drop_rate,\n                             drop_path=dpr[sum(depths[:i_layer]):sum(depths[:i_layer + 1])],  # no impact on SR results\n                             norm_layer=norm_layer,\n                             downsample=None,\n                             use_checkpoint=use_checkpoint,\n                             img_size=img_size,\n                             patch_size=patch_size,\n                             resi_connection=resi_connection\n\n                             )\n                self.layers_hf.append(layer)\n\n        self.norm = norm_layer(self.num_features)\n\n        # build the last conv layer in deep feature extraction\n        if resi_connection == '1conv':\n            self.conv_after_body = nn.Conv2d(embed_dim, embed_dim, 3, 1, 1)\n        elif resi_connection == '3conv':\n            # to save parameters and memory\n            self.conv_after_body = nn.Sequential(nn.Conv2d(embed_dim, embed_dim // 4, 3, 1, 1),\n                                                 nn.LeakyReLU(negative_slope=0.2, inplace=True),\n                                                 nn.Conv2d(embed_dim // 4, embed_dim // 4, 1, 1, 0),\n                                                 nn.LeakyReLU(negative_slope=0.2, inplace=True),\n                                                 nn.Conv2d(embed_dim // 4, embed_dim, 3, 1, 1))\n\n        #####################################################################################################\n        ################################ 3, high quality image reconstruction ################################\n        if self.upsampler == 'pixelshuffle':\n            # for classical SR\n            self.conv_before_upsample = nn.Sequential(nn.Conv2d(embed_dim, num_feat, 3, 1, 1),\n                                                      nn.LeakyReLU(inplace=True))\n            self.upsample = Upsample(upscale, num_feat)\n            self.conv_last = nn.Conv2d(num_feat, num_out_ch, 3, 1, 1)\n        elif self.upsampler == 'pixelshuffle_aux':\n            self.conv_bicubic = nn.Conv2d(num_in_ch, num_feat, 3, 1, 1)\n            self.conv_before_upsample = nn.Sequential(\n                nn.Conv2d(embed_dim, num_feat, 3, 1, 1),\n                nn.LeakyReLU(inplace=True))\n            self.conv_aux = nn.Conv2d(num_feat, num_out_ch, 3, 1, 1)\n            self.conv_after_aux = nn.Sequential(\n                nn.Conv2d(3, num_feat, 3, 1, 1),\n                nn.LeakyReLU(inplace=True))\n            self.upsample = Upsample(upscale, num_feat)\n            self.conv_last = nn.Conv2d(num_feat, num_out_ch, 3, 1, 1)\n\n        elif self.upsampler == 'pixelshuffle_hf':\n            self.conv_before_upsample = nn.Sequential(nn.Conv2d(embed_dim, num_feat, 3, 1, 1),\n                                                      nn.LeakyReLU(inplace=True))\n            self.upsample = Upsample(upscale, num_feat)\n            self.upsample_hf = Upsample_hf(upscale, num_feat)\n            self.conv_last = nn.Conv2d(num_feat, num_out_ch, 3, 1, 1)\n            self.conv_first_hf = nn.Sequential(nn.Conv2d(num_feat, embed_dim, 3, 1, 1),\n                                                      nn.LeakyReLU(inplace=True))\n            self.conv_after_body_hf = nn.Conv2d(embed_dim, embed_dim, 3, 1, 1)\n            self.conv_before_upsample_hf = nn.Sequential(\n                nn.Conv2d(embed_dim, num_feat, 3, 1, 1),\n                nn.LeakyReLU(inplace=True))\n            self.conv_last_hf = nn.Conv2d(num_feat, num_out_ch, 3, 1, 1)\n\n        elif self.upsampler == 'pixelshuffledirect':\n            # for lightweight SR (to save parameters)\n            self.upsample = UpsampleOneStep(upscale, embed_dim, num_out_ch,\n                                            (patches_resolution[0], patches_resolution[1]))\n        elif self.upsampler == 'nearest+conv':\n            # for real-world SR (less artifacts)\n            assert self.upscale == 4, 'only support x4 now.'\n            self.conv_before_upsample = nn.Sequential(nn.Conv2d(embed_dim, num_feat, 3, 1, 1),\n                                                      nn.LeakyReLU(inplace=True))\n            self.conv_up1 = nn.Conv2d(num_feat, num_feat, 3, 1, 1)\n            self.conv_up2 = nn.Conv2d(num_feat, num_feat, 3, 1, 1)\n            self.conv_hr = nn.Conv2d(num_feat, num_feat, 3, 1, 1)\n            self.conv_last = nn.Conv2d(num_feat, num_out_ch, 3, 1, 1)\n            self.lrelu = nn.LeakyReLU(negative_slope=0.2, inplace=True)\n        else:\n            # for image denoising and JPEG compression artifact reduction\n            self.conv_last = nn.Conv2d(embed_dim, num_out_ch, 3, 1, 1)\n\n        self.apply(self._init_weights)\n\n    def _init_weights(self, m):\n        if isinstance(m, nn.Linear):\n            trunc_normal_(m.weight, std=.02)\n            if isinstance(m, nn.Linear) and m.bias is not None:\n                nn.init.constant_(m.bias, 0)\n        elif isinstance(m, nn.LayerNorm):\n            nn.init.constant_(m.bias, 0)\n            nn.init.constant_(m.weight, 1.0)\n\n    @torch.jit.ignore\n    def no_weight_decay(self):\n        return {'absolute_pos_embed'}\n\n    @torch.jit.ignore\n    def no_weight_decay_keywords(self):\n        return {'relative_position_bias_table'}\n\n    def check_image_size(self, x):\n        _, _, h, w = x.size()\n        mod_pad_h = (self.window_size - h % self.window_size) % self.window_size\n        mod_pad_w = (self.window_size - w % self.window_size) % self.window_size\n        x = F.pad(x, (0, mod_pad_w, 0, mod_pad_h), 'reflect')\n        return x\n\n    def forward_features(self, x):\n        x_size = (x.shape[2], x.shape[3])\n        x = self.patch_embed(x)\n        if self.ape:\n            x = x + self.absolute_pos_embed\n        x = self.pos_drop(x)\n\n        for layer in self.layers:\n            x = layer(x, x_size)\n\n        x = self.norm(x)  # B L C\n        x = self.patch_unembed(x, x_size)\n\n        return x\n\n    def forward_features_hf(self, x):\n        x_size = (x.shape[2], x.shape[3])\n        x = self.patch_embed(x)\n        if self.ape:\n            x = x + self.absolute_pos_embed\n        x = self.pos_drop(x)\n\n        for layer in self.layers_hf:\n            x = layer(x, x_size)\n\n        x = self.norm(x)  # B L C\n        x = self.patch_unembed(x, x_size)\n\n        return x\n\n    def forward(self, x):\n        H, W = x.shape[2:]\n        x = self.check_image_size(x)\n\n        self.mean = self.mean.type_as(x)\n        x = (x - self.mean) * self.img_range\n\n        if self.upsampler == 'pixelshuffle':\n            # for classical SR\n            x = self.conv_first(x)\n            x = self.conv_after_body(self.forward_features(x)) + x\n            x = self.conv_before_upsample(x)\n            x = self.conv_last(self.upsample(x))\n        elif self.upsampler == 'pixelshuffle_aux':\n            bicubic = F.interpolate(x, size=(H * self.upscale, W * self.upscale), mode='bicubic', align_corners=False)\n            bicubic = self.conv_bicubic(bicubic)\n            x = self.conv_first(x)\n            x = self.conv_after_body(self.forward_features(x)) + x\n            x = self.conv_before_upsample(x)\n            aux = self.conv_aux(x) # b, 3, LR_H, LR_W\n            x = self.conv_after_aux(aux)\n            x = self.upsample(x)[:, :, :H * self.upscale, :W * self.upscale] + bicubic[:, :, :H * self.upscale, :W * self.upscale]\n            x = self.conv_last(x)\n            aux = aux / self.img_range + self.mean\n        elif self.upsampler == 'pixelshuffle_hf':\n            # for classical SR with HF\n            x = self.conv_first(x)\n            x = self.conv_after_body(self.forward_features(x)) + x\n            x_before = self.conv_before_upsample(x)\n            x_out = self.conv_last(self.upsample(x_before))\n\n            x_hf = self.conv_first_hf(x_before)\n            x_hf = self.conv_after_body_hf(self.forward_features_hf(x_hf)) + x_hf\n            x_hf = self.conv_before_upsample_hf(x_hf)\n            x_hf = self.conv_last_hf(self.upsample_hf(x_hf))\n            x = x_out + x_hf\n            x_hf = x_hf / self.img_range + self.mean\n\n        elif self.upsampler == 'pixelshuffledirect':\n            # for lightweight SR\n            x = self.conv_first(x)\n            x = self.conv_after_body(self.forward_features(x)) + x\n            x = self.upsample(x)\n        elif self.upsampler == 'nearest+conv':\n            # for real-world SR\n            x = self.conv_first(x)\n            x = self.conv_after_body(self.forward_features(x)) + x\n            x = self.conv_before_upsample(x)\n            x = self.lrelu(self.conv_up1(torch.nn.functional.interpolate(x, scale_factor=2, mode='nearest')))\n            x = self.lrelu(self.conv_up2(torch.nn.functional.interpolate(x, scale_factor=2, mode='nearest')))\n            x = self.conv_last(self.lrelu(self.conv_hr(x)))\n        else:\n            # for image denoising and JPEG compression artifact reduction\n            x_first = self.conv_first(x)\n            res = self.conv_after_body(self.forward_features(x_first)) + x_first\n            x = x + self.conv_last(res)\n\n        x = x / self.img_range + self.mean\n        if self.upsampler == \"pixelshuffle_aux\":\n            return x[:, :, :H*self.upscale, :W*self.upscale], aux\n\n        elif self.upsampler == \"pixelshuffle_hf\":\n            x_out = x_out / self.img_range + self.mean\n            return x_out[:, :, :H*self.upscale, :W*self.upscale], x[:, :, :H*self.upscale, :W*self.upscale], x_hf[:, :, :H*self.upscale, :W*self.upscale]\n\n        else:\n            return x[:, :, :H*self.upscale, :W*self.upscale]\n\n    def flops(self):\n        flops = 0\n        H, W = self.patches_resolution\n        flops += H * W * 3 * self.embed_dim * 9\n        flops += self.patch_embed.flops()\n        for layer in self.layers:\n            flops += layer.flops()\n        flops += H * W * 3 * self.embed_dim * self.embed_dim\n        flops += self.upsample.flops()\n        return flops\n"
  },
  {
    "path": "modules/postprocess/vqgan_arch.py",
    "content": "# this file is copied from CodeFormer repository. Please see comment in modules/codeformer_model.py\n\n'''\nVQGAN code, adapted from the original created by the Unleashing Transformers authors:\nhttps://github.com/samb-t/unleashing-transformers/blob/master/models/vqgan.py\n\n'''\nimport torch\nfrom torch import nn\nimport torch.nn.functional as F\nfrom basicsr.utils import get_root_logger\nfrom basicsr.utils.registry import ARCH_REGISTRY\n\ndef normalize(in_channels):\n    return torch.nn.GroupNorm(num_groups=32, num_channels=in_channels, eps=1e-6, affine=True)\n\n\n@torch.jit.script\ndef swish(x):\n    return x*torch.sigmoid(x)\n\n\n#  Define VQVAE classes\nclass VectorQuantizer(nn.Module):\n    def __init__(self, codebook_size, emb_dim, beta):\n        super(VectorQuantizer, self).__init__()\n        self.codebook_size = codebook_size  # number of embeddings\n        self.emb_dim = emb_dim  # dimension of embedding\n        self.beta = beta  # commitment cost used in loss term, beta * ||z_e(x)-sg[e]||^2\n        self.embedding = nn.Embedding(self.codebook_size, self.emb_dim)\n        self.embedding.weight.data.uniform_(-1.0 / self.codebook_size, 1.0 / self.codebook_size)\n\n    def forward(self, z):\n        # reshape z -> (batch, height, width, channel) and flatten\n        z = z.permute(0, 2, 3, 1).contiguous()\n        z_flattened = z.view(-1, self.emb_dim)\n\n        # distances from z to embeddings e_j (z - e)^2 = z^2 + e^2 - 2 e * z\n        d = (z_flattened ** 2).sum(dim=1, keepdim=True) + (self.embedding.weight**2).sum(1) - \\\n            2 * torch.matmul(z_flattened, self.embedding.weight.t())\n\n        mean_distance = torch.mean(d)\n        # find closest encodings\n        # min_encoding_indices = torch.argmin(d, dim=1).unsqueeze(1)\n        min_encoding_scores, min_encoding_indices = torch.topk(d, 1, dim=1, largest=False)\n        # [0-1], higher score, higher confidence\n        min_encoding_scores = torch.exp(-min_encoding_scores/10)\n\n        min_encodings = torch.zeros(min_encoding_indices.shape[0], self.codebook_size).to(z)\n        min_encodings.scatter_(1, min_encoding_indices, 1)\n\n        # get quantized latent vectors\n        z_q = torch.matmul(min_encodings, self.embedding.weight).view(z.shape)\n        # compute loss for embedding\n        loss = torch.mean((z_q.detach()-z)**2) + self.beta * torch.mean((z_q - z.detach()) ** 2)\n        # preserve gradients\n        z_q = z + (z_q - z).detach()\n\n        # perplexity\n        e_mean = torch.mean(min_encodings, dim=0)\n        perplexity = torch.exp(-torch.sum(e_mean * torch.log(e_mean + 1e-10)))\n        # reshape back to match original input shape\n        z_q = z_q.permute(0, 3, 1, 2).contiguous()\n\n        return z_q, loss, {\n            \"perplexity\": perplexity,\n            \"min_encodings\": min_encodings,\n            \"min_encoding_indices\": min_encoding_indices,\n            \"min_encoding_scores\": min_encoding_scores,\n            \"mean_distance\": mean_distance\n            }\n\n    def get_codebook_feat(self, indices, shape):\n        # input indices: batch*token_num -> (batch*token_num)*1\n        # shape: batch, height, width, channel\n        indices = indices.view(-1,1)\n        min_encodings = torch.zeros(indices.shape[0], self.codebook_size).to(indices)\n        min_encodings.scatter_(1, indices, 1)\n        # get quantized latent vectors\n        z_q = torch.matmul(min_encodings.float(), self.embedding.weight)\n\n        if shape is not None:  # reshape back to match original input shape\n            z_q = z_q.view(shape).permute(0, 3, 1, 2).contiguous()\n\n        return z_q\n\n\nclass GumbelQuantizer(nn.Module):\n    def __init__(self, codebook_size, emb_dim, num_hiddens, straight_through=False, kl_weight=5e-4, temp_init=1.0):\n        super().__init__()\n        self.codebook_size = codebook_size  # number of embeddings\n        self.emb_dim = emb_dim  # dimension of embedding\n        self.straight_through = straight_through\n        self.temperature = temp_init\n        self.kl_weight = kl_weight\n        self.proj = nn.Conv2d(num_hiddens, codebook_size, 1)  # projects last encoder layer to quantized logits\n        self.embed = nn.Embedding(codebook_size, emb_dim)\n\n    def forward(self, z):\n        hard = self.straight_through if self.training else True\n\n        logits = self.proj(z)\n\n        soft_one_hot = F.gumbel_softmax(logits, tau=self.temperature, dim=1, hard=hard)\n\n        z_q = torch.einsum(\"b n h w, n d -> b d h w\", soft_one_hot, self.embed.weight)\n\n        # + kl divergence to the prior loss\n        qy = F.softmax(logits, dim=1)\n        diff = self.kl_weight * torch.sum(qy * torch.log(qy * self.codebook_size + 1e-10), dim=1).mean()\n        min_encoding_indices = soft_one_hot.argmax(dim=1)\n\n        return z_q, diff, {\n            \"min_encoding_indices\": min_encoding_indices\n        }\n\n\nclass Downsample(nn.Module):\n    def __init__(self, in_channels):\n        super().__init__()\n        self.conv = torch.nn.Conv2d(in_channels, in_channels, kernel_size=3, stride=2, padding=0)\n\n    def forward(self, x):\n        pad = (0, 1, 0, 1)\n        x = torch.nn.functional.pad(x, pad, mode=\"constant\", value=0)\n        x = self.conv(x)\n        return x\n\n\nclass Upsample(nn.Module):\n    def __init__(self, in_channels):\n        super().__init__()\n        self.conv = nn.Conv2d(in_channels, in_channels, kernel_size=3, stride=1, padding=1)\n\n    def forward(self, x):\n        x = F.interpolate(x, scale_factor=2.0, mode=\"nearest\")\n        x = self.conv(x)\n\n        return x\n\n\nclass ResBlock(nn.Module):\n    def __init__(self, in_channels, out_channels=None):\n        super(ResBlock, self).__init__()\n        self.in_channels = in_channels\n        self.out_channels = in_channels if out_channels is None else out_channels\n        self.norm1 = normalize(in_channels)\n        self.conv1 = nn.Conv2d(in_channels, out_channels, kernel_size=3, stride=1, padding=1)\n        self.norm2 = normalize(out_channels)\n        self.conv2 = nn.Conv2d(out_channels, out_channels, kernel_size=3, stride=1, padding=1)\n        if self.in_channels != self.out_channels:\n            self.conv_out = nn.Conv2d(in_channels, out_channels, kernel_size=1, stride=1, padding=0)\n\n    def forward(self, x_in):\n        x = x_in\n        x = self.norm1(x)\n        x = swish(x)\n        x = self.conv1(x)\n        x = self.norm2(x)\n        x = swish(x)\n        x = self.conv2(x)\n        if self.in_channels != self.out_channels:\n            x_in = self.conv_out(x_in)\n\n        return x + x_in\n\n\nclass AttnBlock(nn.Module):\n    def __init__(self, in_channels):\n        super().__init__()\n        self.in_channels = in_channels\n\n        self.norm = normalize(in_channels)\n        self.q = torch.nn.Conv2d(\n            in_channels,\n            in_channels,\n            kernel_size=1,\n            stride=1,\n            padding=0\n        )\n        self.k = torch.nn.Conv2d(\n            in_channels,\n            in_channels,\n            kernel_size=1,\n            stride=1,\n            padding=0\n        )\n        self.v = torch.nn.Conv2d(\n            in_channels,\n            in_channels,\n            kernel_size=1,\n            stride=1,\n            padding=0\n        )\n        self.proj_out = torch.nn.Conv2d(\n            in_channels,\n            in_channels,\n            kernel_size=1,\n            stride=1,\n            padding=0\n        )\n\n    def forward(self, x):\n        h_ = x\n        h_ = self.norm(h_)\n        q = self.q(h_)\n        k = self.k(h_)\n        v = self.v(h_)\n\n        # compute attention\n        b, c, h, w = q.shape\n        q = q.reshape(b, c, h*w)\n        q = q.permute(0, 2, 1)\n        k = k.reshape(b, c, h*w)\n        w_ = torch.bmm(q, k)\n        w_ = w_ * (int(c)**(-0.5))\n        w_ = F.softmax(w_, dim=2)\n\n        # attend to values\n        v = v.reshape(b, c, h*w)\n        w_ = w_.permute(0, 2, 1)\n        h_ = torch.bmm(v, w_)\n        h_ = h_.reshape(b, c, h, w)\n\n        h_ = self.proj_out(h_)\n\n        return x+h_\n\n\nclass Encoder(nn.Module):\n    def __init__(self, in_channels, nf, emb_dim, ch_mult, num_res_blocks, resolution, attn_resolutions):\n        super().__init__()\n        self.nf = nf\n        self.num_resolutions = len(ch_mult)\n        self.num_res_blocks = num_res_blocks\n        self.resolution = resolution\n        self.attn_resolutions = attn_resolutions\n\n        curr_res = self.resolution\n        in_ch_mult = (1,)+tuple(ch_mult)\n\n        blocks = []\n        # initial convultion\n        blocks.append(nn.Conv2d(in_channels, nf, kernel_size=3, stride=1, padding=1))\n\n        # residual and downsampling blocks, with attention on smaller res (16x16)\n        for i in range(self.num_resolutions):\n            block_in_ch = nf * in_ch_mult[i]\n            block_out_ch = nf * ch_mult[i]\n            for _ in range(self.num_res_blocks):\n                blocks.append(ResBlock(block_in_ch, block_out_ch))\n                block_in_ch = block_out_ch\n                if curr_res in attn_resolutions:\n                    blocks.append(AttnBlock(block_in_ch))\n\n            if i != self.num_resolutions - 1:\n                blocks.append(Downsample(block_in_ch))\n                curr_res = curr_res // 2\n\n        # non-local attention block\n        blocks.append(ResBlock(block_in_ch, block_in_ch))\n        blocks.append(AttnBlock(block_in_ch))\n        blocks.append(ResBlock(block_in_ch, block_in_ch))\n\n        # normalise and convert to latent size\n        blocks.append(normalize(block_in_ch))\n        blocks.append(nn.Conv2d(block_in_ch, emb_dim, kernel_size=3, stride=1, padding=1))\n        self.blocks = nn.ModuleList(blocks)\n\n    def forward(self, x):\n        for block in self.blocks:\n            x = block(x)\n\n        return x\n\n\nclass Generator(nn.Module):\n    def __init__(self, nf, emb_dim, ch_mult, res_blocks, img_size, attn_resolutions):\n        super().__init__()\n        self.nf = nf\n        self.ch_mult = ch_mult\n        self.num_resolutions = len(self.ch_mult)\n        self.num_res_blocks = res_blocks\n        self.resolution = img_size\n        self.attn_resolutions = attn_resolutions\n        self.in_channels = emb_dim\n        self.out_channels = 3\n        block_in_ch = self.nf * self.ch_mult[-1]\n        curr_res = self.resolution // 2 ** (self.num_resolutions-1)\n\n        blocks = []\n        # initial conv\n        blocks.append(nn.Conv2d(self.in_channels, block_in_ch, kernel_size=3, stride=1, padding=1))\n\n        # non-local attention block\n        blocks.append(ResBlock(block_in_ch, block_in_ch))\n        blocks.append(AttnBlock(block_in_ch))\n        blocks.append(ResBlock(block_in_ch, block_in_ch))\n\n        for i in reversed(range(self.num_resolutions)):\n            block_out_ch = self.nf * self.ch_mult[i]\n\n            for _ in range(self.num_res_blocks):\n                blocks.append(ResBlock(block_in_ch, block_out_ch))\n                block_in_ch = block_out_ch\n\n                if curr_res in self.attn_resolutions:\n                    blocks.append(AttnBlock(block_in_ch))\n\n            if i != 0:\n                blocks.append(Upsample(block_in_ch))\n                curr_res = curr_res * 2\n\n        blocks.append(normalize(block_in_ch))\n        blocks.append(nn.Conv2d(block_in_ch, self.out_channels, kernel_size=3, stride=1, padding=1))\n\n        self.blocks = nn.ModuleList(blocks)\n\n\n    def forward(self, x):\n        for block in self.blocks:\n            x = block(x)\n\n        return x\n\n\n@ARCH_REGISTRY.register()\nclass VQAutoEncoder(nn.Module):\n    def __init__(self, img_size, nf, ch_mult, quantizer=\"nearest\", res_blocks=2, attn_resolutions=None, codebook_size=1024, emb_dim=256,\n                beta=0.25, gumbel_straight_through=False, gumbel_kl_weight=1e-8, model_path=None):\n        super().__init__()\n        logger = get_root_logger()\n        self.in_channels = 3\n        self.nf = nf\n        self.n_blocks = res_blocks\n        self.codebook_size = codebook_size\n        self.embed_dim = emb_dim\n        self.ch_mult = ch_mult\n        self.resolution = img_size\n        self.attn_resolutions = attn_resolutions or [16]\n        self.quantizer_type = quantizer\n        self.encoder = Encoder(\n            self.in_channels,\n            self.nf,\n            self.embed_dim,\n            self.ch_mult,\n            self.n_blocks,\n            self.resolution,\n            self.attn_resolutions\n        )\n        if self.quantizer_type == \"nearest\":\n            self.beta = beta #0.25\n            self.quantize = VectorQuantizer(self.codebook_size, self.embed_dim, self.beta)\n        elif self.quantizer_type == \"gumbel\":\n            self.gumbel_num_hiddens = emb_dim\n            self.straight_through = gumbel_straight_through\n            self.kl_weight = gumbel_kl_weight\n            self.quantize = GumbelQuantizer(\n                self.codebook_size,\n                self.embed_dim,\n                self.gumbel_num_hiddens,\n                self.straight_through,\n                self.kl_weight\n            )\n        self.generator = Generator(\n            self.nf,\n            self.embed_dim,\n            self.ch_mult,\n            self.n_blocks,\n            self.resolution,\n            self.attn_resolutions\n        )\n\n        if model_path is not None:\n            chkpt = torch.load(model_path, map_location='cpu')\n            if 'params_ema' in chkpt:\n                self.load_state_dict(torch.load(model_path, map_location='cpu')['params_ema'])\n                logger.info(f'vqgan is loaded from: {model_path} [params_ema]')\n            elif 'params' in chkpt:\n                self.load_state_dict(torch.load(model_path, map_location='cpu')['params'])\n                logger.info(f'vqgan is loaded from: {model_path} [params]')\n            else:\n                raise ValueError('Wrong params!')\n\n\n    def forward(self, x):\n        x = self.encoder(x)\n        quant, codebook_loss, quant_stats = self.quantize(x)\n        x = self.generator(quant)\n        return x, codebook_loss, quant_stats\n\n\n\n# patch based discriminator\n@ARCH_REGISTRY.register()\nclass VQGANDiscriminator(nn.Module):\n    def __init__(self, nc=3, ndf=64, n_layers=4, model_path=None):\n        super().__init__()\n\n        layers = [nn.Conv2d(nc, ndf, kernel_size=4, stride=2, padding=1), nn.LeakyReLU(0.2, True)]\n        ndf_mult = 1\n        ndf_mult_prev = 1\n        for n in range(1, n_layers):  # gradually increase the number of filters\n            ndf_mult_prev = ndf_mult\n            ndf_mult = min(2 ** n, 8)\n            layers += [\n                nn.Conv2d(ndf * ndf_mult_prev, ndf * ndf_mult, kernel_size=4, stride=2, padding=1, bias=False),\n                nn.BatchNorm2d(ndf * ndf_mult),\n                nn.LeakyReLU(0.2, True)\n            ]\n\n        ndf_mult_prev = ndf_mult\n        ndf_mult = min(2 ** n_layers, 8)\n\n        layers += [\n            nn.Conv2d(ndf * ndf_mult_prev, ndf * ndf_mult, kernel_size=4, stride=1, padding=1, bias=False),\n            nn.BatchNorm2d(ndf * ndf_mult),\n            nn.LeakyReLU(0.2, True)\n        ]\n\n        layers += [\n            nn.Conv2d(ndf * ndf_mult, 1, kernel_size=4, stride=1, padding=1)]  # output 1 channel prediction map\n        self.main = nn.Sequential(*layers)\n\n        if model_path is not None:\n            chkpt = torch.load(model_path, map_location='cpu')\n            if 'params_d' in chkpt:\n                self.load_state_dict(torch.load(model_path, map_location='cpu')['params_d'])\n            elif 'params' in chkpt:\n                self.load_state_dict(torch.load(model_path, map_location='cpu')['params'])\n            else:\n                raise ValueError('Wrong params!')\n\n    def forward(self, x):\n        return self.main(x)\n"
  },
  {
    "path": "modules/postprocess/yolo.py",
    "content": "from typing import TYPE_CHECKING\nimport os\nimport re\nimport threading\nfrom copy import copy\nimport numpy as np\nimport gradio as gr\nfrom PIL import Image, ImageDraw\nfrom modules import shared, processing, devices, processing_class, ui_common, ui_components, ui_symbols, images, extra_networks, sd_models\nfrom modules.detailer import Detailer\n\n\npredefined = [ # <https://huggingface.co/vladmandic/yolo-detailers/tree/main>\n    'https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11m.pt',\n    'https://huggingface.co/vladmandic/yolo-detailers/resolve/main/face-yolo8n.pt',\n    'https://huggingface.co/vladmandic/yolo-detailers/resolve/main/face-yolo8m.pt',\n    'https://huggingface.co/vladmandic/yolo-detailers/resolve/main/hand_yolov8n.pt',\n    'https://huggingface.co/vladmandic/yolo-detailers/resolve/main/person_yolov8n-seg.pt',\n    'https://huggingface.co/vladmandic/yolo-detailers/resolve/main/eyes-v1.pt',\n    'https://huggingface.co/vladmandic/yolo-detailers/resolve/main/eyes-full-v1.pt',\n    'https://huggingface.co/vladmandic/yolo-detailers/resolve/main/anzhc-eyes-seg.pt',\n    'https://huggingface.co/vladmandic/yolo-detailers/resolve/main/anzhc-face-1024-seg-8n.pt',\n    'https://huggingface.co/vladmandic/yolo-detailers/resolve/main/anzhc-head-seg-8n.pt',\n    'https://huggingface.co/netrunner-exe/Face-Upscalers-onnx/resolve/main/codeformer.fp16.onnx',\n    'https://huggingface.co/netrunner-exe/Face-Upscalers-onnx/resolve/main/restoreformer.fp16.onnx',\n    'https://huggingface.co/netrunner-exe/Face-Upscalers-onnx/resolve/main/GFPGANv1.4.fp16.onnx',\n    'https://huggingface.co/netrunner-exe/Face-Upscalers-onnx/resolve/main/GPEN-BFR-512.fp16.onnx',\n]\nload_lock = threading.Lock()\n\n\nclass YoloResult:\n    def __init__(self, cls: int, label: str, score: float, box: list[int], mask: Image.Image = None, item: Image.Image = None, width = 0, height = 0, args = {}):\n        self.cls = cls\n        self.label = label\n        self.score = score\n        self.box = box\n        self.mask = mask\n        self.item = item\n        self.width = width\n        self.height = height\n        self.args = args\n\n    def __repl__(self):\n        return f'cls={self.cls} label={self.label} score={self.score} box={self.box} mask={self.mask} item={self.item} size={self.width}x{self.height} args={self.args}'\n\n\nclass YoloRestorer(Detailer):\n    def __init__(self):\n        super().__init__()\n        self.models = {} # cache loaded models\n        self.list = {}\n        self.ui_mode = True\n        self.cmd_dir = shared.opts.yolo_dir\n        self.enumerate()\n\n    def name(self):\n        return \"Detailer\"\n\n    def enumerate(self):\n        self.list.clear()\n        files = []\n        downloaded = 0\n        for m in predefined:\n            name = os.path.splitext(os.path.basename(m))[0]\n            self.list[name] = m\n            files.append(name)\n        if os.path.exists(shared.opts.yolo_dir):\n            for f in os.listdir(shared.opts.yolo_dir):\n                if f.endswith('.pt'):\n                    downloaded += 1\n                    name = os.path.splitext(os.path.basename(f))[0]\n                    if name not in files:\n                        self.list[name] = os.path.join(shared.opts.yolo_dir, f)\n        shared.log.info(f'Available Detailer: path=\"{shared.opts.yolo_dir}\" items={len(list(self.list))} downloaded={downloaded}')\n        return list(self.list)\n\n    def dependencies(self):\n        import installer\n        installer.install('ultralytics==8.3.40', ignore=True, quiet=True)\n\n    def predict(\n            self,\n            model,\n            image: Image.Image,\n            imgsz: int = 640,\n            half: bool = True,\n            device = devices.device,\n            augment: bool = shared.opts.detailer_augment,\n            agnostic: bool = False,\n            retina: bool = False,\n            mask: bool = True,\n            offload: bool = shared.opts.detailer_unload,\n        ) -> list[YoloResult]:\n\n        if model is None or (isinstance(model, str) and len(model) == 0):\n            model = 'yolo11m'\n        result = []\n        if isinstance(model, str):\n            cached = self.models.get(model, None)\n            if cached is None:\n                _, model = self.load(model)\n            else:\n                model = cached\n        if model is None:\n            return result\n        args = {\n            'conf': shared.opts.detailer_conf,\n            'iou': shared.opts.detailer_iou,\n            # 'max_det': shared.opts.detailer_max,\n        }\n        try:\n            if TYPE_CHECKING:\n                from ultralytics import YOLO # pylint: disable=import-outside-toplevel, unused-import\n            model: YOLO = model.to(device)\n            predictions = model.predict(\n                source=[image],\n                stream=False,\n                verbose=False,\n                imgsz=imgsz,\n                half=half,\n                device=device,\n                augment=augment,\n                agnostic_nms=agnostic,\n                retina_masks=retina,\n                **args\n            )\n            if offload:\n                model.to('cpu')\n        except Exception as e:\n            shared.log.error(f'Detailer predict: {e}')\n            return result\n\n        desired = shared.opts.detailer_classes.split(',')\n        desired = [d.lower().strip() for d in desired]\n        desired = [d for d in desired if len(d) > 0]\n\n        for prediction in predictions:\n            boxes = prediction.boxes.xyxy.detach().int().cpu().numpy() if prediction.boxes is not None else []\n            scores = prediction.boxes.conf.detach().float().cpu().numpy() if prediction.boxes is not None else []\n            classes = prediction.boxes.cls.detach().float().cpu().numpy() if prediction.boxes is not None else []\n            masks = prediction.masks.data.cpu().float().numpy() if prediction.masks is not None else []\n            if len(masks) < len(classes):\n                masks = len(classes) * [None]\n            for score, box, cls, seg in zip(scores, boxes, classes, masks):\n                if seg is not None:\n                    try:\n                        seg = (255 * seg).astype(np.uint8)\n                        seg = Image.fromarray(seg).resize(image.size).convert('L')\n                    except Exception:\n                        seg = None\n                cls = int(cls)\n                label = prediction.names[cls] if cls < len(prediction.names) else f'cls{cls}'\n                if len(desired) > 0 and label.lower() not in desired:\n                    continue\n                box = box.tolist()\n                w, h = box[2] - box[0], box[3] - box[1]\n                x_size, y_size = w/image.width, h/image.height\n                min_size = shared.opts.detailer_min_size if shared.opts.detailer_min_size >= 0 and shared.opts.detailer_min_size <= 1 else 0\n                max_size = shared.opts.detailer_max_size if shared.opts.detailer_max_size >= 0 and shared.opts.detailer_max_size <= 1 else 1\n                if x_size >= min_size and y_size >=min_size and x_size <= max_size and y_size <= max_size:\n                    if mask:\n                        if shared.opts.detailer_seg and seg is not None:\n                            masked = seg\n                        else:\n                            masked = Image.new('L', image.size, 0)\n                            draw = ImageDraw.Draw(masked)\n                            draw.rectangle(box, fill=\"white\", outline=None, width=0)\n                        cropped = image.crop(box)\n                        res = YoloResult(\n                            cls=cls,\n                            label=label,\n                            score=round(score, 2),\n                            box=box,\n                            mask=masked,\n                            item=cropped,\n                            width=w,\n                            height=h,\n                            args=args,\n                        )\n                        result.append(res)\n                if len(result) >= shared.opts.detailer_max:\n                    break\n        return result\n\n    def load(self, model_name: str = None):\n        with load_lock:\n            from modules import modelloader\n            model = None\n            if model_name is None:\n                model_name = list(self.list)[0]\n            if model_name in self.models:\n                return model_name, self.models[model_name]\n            else:\n                model_url = self.list.get(model_name, None)\n                if model_url is None:\n                    shared.log.error(f'Load: type=Detailer name=\"{model_name}\" error=\"model not found\"')\n                    return None, None\n                file_name = os.path.basename(model_url)\n                model_file = None\n                try:\n                    model_file = modelloader.load_file_from_url(url=model_url, model_dir=shared.opts.yolo_dir, file_name=file_name)\n                    if model_file is None:\n                        shared.log.error(f'Load: type=Detailer name=\"{model_name}\" url=\"{model_url}\" error=\"failed to fetch model\"')\n                    elif model_file.endswith('.onnx'):\n                        import onnxruntime as ort\n                        options = ort.SessionOptions()\n                        # options.graph_optimization_level = onnxruntime.GraphOptimizationLevel.ORT_ENABLE_ALL\n                        session = ort.InferenceSession(model_file, sess_options=options, providers=devices.onnx)\n                        self.models[model_name] = session\n                        return model_name, session\n                    else:\n                        self.dependencies()\n                        import ultralytics\n                        model = ultralytics.YOLO(model_file)\n                        classes = list(model.names.values())\n                        shared.log.info(f'Load: type=Detailer name=\"{model_name}\" model=\"{model_file}\" ultralytics={ultralytics.__version__} classes={classes}')\n                        self.models[model_name] = model\n                        return model_name, model\n                except Exception as e:\n                    shared.log.error(f'Load: type=Detailer name=\"{model_name}\" error=\"{e}\"')\n        return None, None\n\n    def merge(self, items: list[YoloResult]) -> list[YoloResult]:\n        if items is None or len(items) == 0:\n            return None\n        box=[min(item.box[0] for item in items), min(item.box[1] for item in items), max(item.box[2] for item in items), max(item.box[3] for item in items)]\n        mask = Image.new('L', items[0].mask.size, 0)\n        for item in items:\n            mask = Image.fromarray(np.maximum(np.array(mask), np.array(item.mask)))\n        merged = YoloResult(\n            cls=items[0].cls,\n            label=items[0].label,\n            score=sum(item.score for item in items) / len(items),\n            box=box,\n            mask=mask,\n            item=None,\n            width=box[2] - box[0],\n            height=box[3] - box[1],\n        )\n        return [merged]\n\n    def draw_masks(self, image: Image.Image, items: list[YoloResult]) -> Image.Image:\n        if not isinstance(image, Image.Image):\n            image = Image.fromarray(image)\n        image = image.convert('RGBA')\n        size = min(image.width, image.height) // 32\n        font = images.get_font(size)\n        color = (0, 190, 190)\n        shared.log.debug(f'Detailer: draw={items}')\n        for i, item in enumerate(items):\n            if shared.opts.detailer_seg and item.mask is not None:\n                mask = item.mask.convert('L')\n            else:\n                mask = Image.new('L', image.size, 0)\n                draw_mask = ImageDraw.Draw(mask)\n                draw_mask.rectangle(item.box, fill=\"white\", outline=None, width=0)\n            alpha = mask.point(lambda p: int(p * 0.5))\n            overlay = Image.new(\"RGBA\", image.size, color + (0,))\n            overlay.putalpha(alpha)\n            image = Image.alpha_composite(image, overlay)\n\n            draw_text = ImageDraw.Draw(image)\n            draw_text.text((item.box[0] + 2, item.box[1] - size - 2), f'{i+1} {item.label} {item.score:.2f}', fill=\"black\", font=font)\n            draw_text.text((item.box[0] + 0, item.box[1] - size - 4), f'{i+1} {item.label} {item.score:.2f}', fill=\"white\", font=font)\n        image = image.convert(\"RGB\")\n        return np.array(image)\n\n    def restore(self, np_image, p: processing.StableDiffusionProcessing = None):\n        if shared.state.interrupted or shared.state.skipped:\n            return np_image\n        if hasattr(p, 'recursion'):\n            return np_image\n        if not hasattr(p, 'detailer_active'):\n            p.detailer_active = 0\n        if np_image is None or p.detailer_active >= p.batch_size * p.n_iter:\n            return np_image\n\n        shared.sd_model = sd_models.set_diffuser_pipe(shared.sd_model, sd_models.DiffusersTaskType.INPAINTING)\n        if (sd_models.get_diffusers_task(shared.sd_model) != sd_models.DiffusersTaskType.INPAINTING) and (shared.sd_model.__class__.__name__ not in sd_models.pipe_switch_task_exclude):\n            shared.log.error(f'Detailer: model=\"{shared.sd_model.__class__.__name__}\" not compatible')\n            return np_image\n\n        models = []\n        if len(shared.opts.detailer_args) > 0:\n            models = [m.strip() for m in re.split(r'[\\n,;]+', shared.opts.detailer_args)]\n            models = [m for m in models if len(m) > 0]\n        if len(models) == 0:\n            models = shared.opts.detailer_models\n        if len(models) == 0:\n            shared.log.warning('Detailer: model=None')\n            return np_image\n        shared.log.debug(f'Detailer: models={models}')\n\n        # create backups\n        orig_apply_overlay = shared.opts.mask_apply_overlay\n        orig_p = p.__dict__.copy()\n        orig_cls = p.__class__\n        models_used = []\n        np_images = []\n        annotated = Image.fromarray(np_image)\n        image = None\n\n        for i, model_val in enumerate(models):\n            if ':' in model_val:\n                model_name, model_args = model_val.split(':', 1)\n            else:\n                model_name, model_args = model_val, ''\n            model_args = [m.strip() for m in model_args.split(':')]\n            model_args = {k.strip(): v.strip() for k, v in (arg.split('=') for arg in model_args if '=' in arg)}\n\n            name, model = self.load(model_name)\n            if model is None:\n                shared.log.warning(f'Detailer: model=\"{name}\" not loaded')\n                continue\n\n            if name.endswith('.fp16'): # run gfpgan or codeformer directly and skip detailer processing\n                from modules.postprocess import restorer\n                np_image = restorer.restore(np_image, name, model, p.detailer_strength)\n                image = Image.fromarray(np_image)\n                continue\n\n            if image is None:\n                image = Image.fromarray(np_image)\n            items = self.predict(model, image)\n\n            if len(items) == 0:\n                shared.log.info(f'Detailer: model=\"{name}\" no items detected')\n                continue\n\n            if shared.opts.detailer_merge and len(items) > 1:\n                shared.log.debug(f'Detailer: model=\"{name}\" items={len(items)} merge')\n                items = self.merge(items)\n\n            shared.opts.data['mask_apply_overlay'] = True\n            orig_prompt: str = orig_p.get('all_prompts', [''])[0]\n            orig_negative: str = orig_p.get('all_negative_prompts', [''])[0]\n            prompt: str = orig_p.get('detailer_prompt', '')\n            negative: str = orig_p.get('detailer_negative', '')\n            if prompt is None or len(prompt) == 0:\n                prompt = orig_prompt\n            else:\n                prompt = prompt.replace('[PROMPT]', orig_prompt)\n                prompt = prompt.replace('[prompt]', orig_prompt)\n            if len(negative) == 0:\n                negative = orig_negative\n            else:\n                negative = negative.replace('[PROMPT]', orig_negative)\n                negative = negative.replace('[prompt]', orig_negative)\n            prompt_lines = 99 * [p.strip() for p in prompt.split('\\n')]\n            negative_lines = 99 * [n.strip() for n in negative.split('\\n')]\n\n            args = {\n                'detailer': True,\n                'batch_size': 1,\n                'n_iter': 1,\n                'prompt': prompt,\n                'negative_prompt': negative,\n                'denoising_strength': p.detailer_strength,\n                'sampler_name': orig_p.get('hr_sampler_name', 'default'),\n                'steps': p.detailer_steps,\n                'styles': [],\n                'inpaint_full_res': True,\n                'inpainting_mask_invert': 0,\n                'mask_blur': shared.opts.detailer_blur,\n                'inpaint_full_res_padding': shared.opts.detailer_padding,\n                'width': p.detailer_resolution,\n                'height': p.detailer_resolution,\n                'vae_type': orig_p.get('vae_type', 'Full'),\n            }\n            args.update(model_args)\n            if args['denoising_strength'] == 0:\n                shared.log.debug(f'Detailer: model=\"{name}\" strength=0 skip')\n                return np_image\n            control_pipeline = None\n            orig_class = shared.sd_model.__class__\n            if getattr(p, 'is_control', False):\n                from modules.control import run\n                control_pipeline = shared.sd_model\n                run.restore_pipeline()\n\n            p = processing_class.switch_class(p, processing.StableDiffusionProcessingImg2Img, args)\n            if hasattr(shared.sd_model, 'restore_pipeline'):\n                shared.sd_model.restore_pipeline()\n            p.detailer_active += 1 # set flag to avoid recursion\n\n            if p.steps < 1:\n                p.steps = orig_p.get('steps', 0)\n\n            # report = [{'label': i.label, 'score': i.score, 'size': f'{i.width}x{i.height}' } for i in items]\n            # shared.log.info(f'Detailer: model=\"{name}\" items={report} args={args}')\n            models_used.append(name)\n\n            mask_all = []\n            p.state = ''\n            pc = copy(p)\n            pc.ops.append('detailer')\n\n            orig_sigma_adjust: float = shared.opts.schedulers_sigma_adjust\n            orig_sigma_end: float = shared.opts.schedulers_sigma_adjust_max\n            shared.opts.schedulers_sigma_adjust = shared.opts.detailer_sigma_adjust\n            shared.opts.schedulers_sigma_adjust_max = shared.opts.detailer_sigma_adjust_max\n\n            if shared.opts.detailer_sort:\n                items = sorted(items, key=lambda x: x.box[0]) # sort items left-to-right to improve consistency\n            if shared.opts.detailer_save:\n                annotated = self.draw_masks(annotated, items)\n\n            for j, item in enumerate(items):\n                if item.mask is None:\n                    continue\n                pc.keep_prompts = True\n                shared.sd_model.fail_on_switch_error = True\n                pc.prompt = prompt_lines[i*len(items)+j]\n                pc.negative_prompt = negative_lines[i*len(items)+j]\n                pc.prompts = [pc.prompt]\n                pc.negative_prompts = [pc.negative_prompt]\n                pc.prompts, pc.network_data = extra_networks.parse_prompts(pc.prompts)\n                extra_networks.activate(pc, pc.network_data)\n                shared.log.debug(f'Detail: model=\"{i+1}:{name}\" item={j+1}/{len(items)} box={item.box} label=\"{item.label}\" score={item.score:.2f} seg={shared.opts.detailer_seg} prompt=\"{pc.prompt}\"')\n                pc.init_images = [image]\n                pc.image_mask = [item.mask]\n                pc.overlay_images = []\n                # explictly disable for detailer pass\n                pc.enable_hr = False\n                pc.do_not_save_samples = True\n                pc.do_not_save_grid = True\n                # set recursion flag to avoid nested detailer calls\n                pc.recursion = True\n\n                # process\n                jobid = shared.state.begin('Detailer')\n                pp = processing.process_images_inner(pc)\n                extra_networks.deactivate(pc, force=True)\n                shared.sd_model.fail_on_switch_error = False\n                shared.state.end(jobid)\n\n                del pc.recursion\n                if (pp is not None) and (pp.images is not None) and (len(pp.images) > 0):\n                    image = pp.images[0] # update image to be reused for next item\n                    if len(pp.images) > 1:\n                        mask_all.append(pp.images[1])\n\n            shared.opts.schedulers_sigma_adjust = orig_sigma_adjust\n            shared.opts.schedulers_sigma_adjust_max = orig_sigma_end\n\n            # restore pipeline\n            if control_pipeline is not None:\n                shared.sd_model = control_pipeline\n            else:\n                shared.sd_model.__class__ = orig_class\n            p = processing_class.switch_class(p, orig_cls, orig_p)\n            p.init_images = orig_p.get('init_images', None)\n            p.image_mask = orig_p.get('image_mask', None)\n            p.state = orig_p.get('state', None)\n            p.ops = orig_p.get('ops', [])\n            shared.opts.data['mask_apply_overlay'] = orig_apply_overlay\n\n            if len(mask_all) > 0 and shared.opts.include_mask:\n                from modules.control.util import blend\n                p.image_mask = blend([np.array(m) for m in mask_all])\n                p.image_mask = Image.fromarray(p.image_mask)\n\n        if image is not None:\n            np_images.append(np.array(image))\n        if shared.opts.detailer_save and annotated is not None:\n            np_images.append(annotated) # save debug image with boxes\n        return np_images\n\n    def change_mode(self, dropdown, text):\n        self.ui_mode = not self.ui_mode\n        if self.ui_mode:\n            value = [val.split(':')[0].strip() for val in text.split(',')]\n            return gr.update(visible=True, value=value), gr.update(visible=False), gr.update(visible=True)\n        else:\n            value = ', '.join(dropdown)\n            return gr.update(visible=False), gr.update(visible=True, value=value), gr.update(visible=False)\n\n    def ui(self, tab: str):\n        def ui_settings_change(merge, detailers, text, classes, strength, padding, blur, min_confidence, max_detected, min_size, max_size, iou, steps, renoise_value, renoise_end, resolution, save, sort, seg):\n            shared.opts.detailer_merge = merge\n            shared.opts.detailer_models = detailers\n            shared.opts.detailer_args = text if not self.ui_mode else ''\n            shared.opts.detailer_classes = classes\n            shared.opts.detailer_padding = padding\n            shared.opts.detailer_blur = blur\n            shared.opts.detailer_conf = min_confidence\n            shared.opts.detailer_max = max_detected\n            shared.opts.detailer_min_size = min_size\n            shared.opts.detailer_max_size = max_size\n            shared.opts.detailer_iou = iou\n            shared.opts.detailer_sigma_adjust = renoise_value\n            shared.opts.detailer_sigma_adjust_max = renoise_end\n            shared.opts.detailer_save = save\n            shared.opts.detailer_sort = sort\n            shared.opts.detailer_seg = seg\n            # shared.opts.detailer_resolution = resolution\n            shared.opts.save(silent=True)\n            shared.log.debug(f'Detailer settings: models={detailers} classes={classes} strength={strength} conf={min_confidence} max={max_detected} iou={iou} size={min_size}-{max_size} padding={padding} steps={steps} resolution={resolution} save={save} sort={sort} seg={seg}')\n            if not self.ui_mode:\n                shared.log.debug(f'Detailer expert: {text}')\n\n        with gr.Accordion(open=False, label=\"Detailer\", elem_id=f\"{tab}_detailer_accordion\", elem_classes=[\"small-accordion\"]):\n            with gr.Row():\n                enabled = gr.Checkbox(label=\"Enable detailer pass\", elem_id=f\"{tab}_detailer_enabled\", value=False)\n            with gr.Row():\n                seg = gr.Checkbox(label=\"Use segmentation\", elem_id=f\"{tab}_detailer_seg\", value=shared.opts.detailer_seg, visible=True)\n                save = gr.Checkbox(label=\"Include detections\", elem_id=f\"{tab}_detailer_save\", value=shared.opts.detailer_save, visible=True)\n            with gr.Row():\n                merge = gr.Checkbox(label=\"Merge detailers\", elem_id=f\"{tab}_detailer_merge\", value=shared.opts.detailer_merge, visible=True)\n                sort = gr.Checkbox(label=\"Sort detections\", elem_id=f\"{tab}_detailer_sort\", value=shared.opts.detailer_sort, visible=True)\n            with gr.Row():\n                detailers = gr.Dropdown(label=\"Detailer models\", elem_id=f\"{tab}_detailers\", choices=list(self.list), value=shared.opts.detailer_models, multiselect=True, visible=True)\n                detailers_text = gr.Textbox(label=\"Detailer list\", elem_id=f\"{tab}_detailers_text\", placeholder=\"Comma separated list of detailer models\", lines=2, visible=False, interactive=True)\n                refresh_btn = ui_common.create_refresh_button(detailers, self.enumerate, lambda: {\"choices\": self.enumerate()}, 'yolo_models_refresh')\n                ui_mode = ui_components.ToolButton(value=ui_symbols.view, elem_id=f'{tab}_yolo_models_list')\n                ui_mode.click(fn=self.change_mode, inputs=[detailers, detailers_text], outputs=[detailers, detailers_text, refresh_btn])\n            with gr.Row():\n                classes = gr.Textbox(label=\"Detailer classes\", placeholder=\"Classes\", elem_id=f\"{tab}_detailer_classes\")\n            with gr.Row():\n                prompt = gr.Textbox(label=\"Detailer prompt\", value='', placeholder='detailer prompt or leave empty to use main prompt', lines=2, elem_id=f\"{tab}_detailer_prompt\", elem_classes=[\"prompt\"])\n            with gr.Row():\n                negative = gr.Textbox(label=\"Detailer negative prompt\", value='', placeholder='detailer prompt or leave empty to use main prompt', lines=2, elem_id=f\"{tab}_detailer_negative\", elem_classes=[\"prompt\"])\n            with gr.Row():\n                steps = gr.Slider(label=\"Detailer steps\", elem_id=f\"{tab}_detailer_steps\", value=10, minimum=0, maximum=99, step=1)\n                strength = gr.Slider(label=\"Detailer strength\", elem_id=f\"{tab}_detailer_strength\", value=0.3, minimum=0, maximum=1, step=0.01)\n            with gr.Row():\n                resolution = gr.Slider(label=\"Detailer resolution\", elem_id=f\"{tab}_detailer_resolution\", value=1024, minimum=256, maximum=4096, step=8)\n                max_detected = gr.Slider(label=\"Max detected\", elem_id=f\"{tab}_detailer_max\", value=shared.opts.detailer_max, minimum=1, maximum=10, step=1)\n            with gr.Row():\n                padding = gr.Slider(label=\"Edge padding\", elem_id=f\"{tab}_detailer_padding\", value=shared.opts.detailer_padding, minimum=0, maximum=100, step=1)\n                blur = gr.Slider(label=\"Edge blur\", elem_id=f\"{tab}_detailer_blur\", value=shared.opts.detailer_blur, minimum=0, maximum=100, step=1)\n            with gr.Row():\n                min_confidence = gr.Slider(label=\"Min confidence\", elem_id=f\"{tab}_detailer_conf\", value=shared.opts.detailer_conf, minimum=0.0, maximum=1.0, step=0.05)\n                iou = gr.Slider(label=\"Max overlap\", elem_id=f\"{tab}_detailer_iou\", value=shared.opts.detailer_iou, minimum=0, maximum=1.0, step=0.05)\n            with gr.Row():\n                min_size = shared.opts.detailer_min_size if shared.opts.detailer_min_size < 1 else 0.0\n                min_size = gr.Slider(label=\"Min size\", elem_id=f\"{tab}_detailer_min_size\", value=min_size, minimum=0.0, maximum=1.0, step=0.05)\n                max_size = shared.opts.detailer_max_size if shared.opts.detailer_max_size < 1 and shared.opts.detailer_max_size > 0 else 1.0\n                max_size = gr.Slider(label=\"Max size\", elem_id=f\"{tab}_detailer_max_size\", value=max_size, minimum=0.0, maximum=1.0, step=0.05)\n            with gr.Row(elem_classes=['flex-break']):\n                renoise_value = gr.Slider(minimum=0.5, maximum=1.5, step=0.01, label='Renoise', value=shared.opts.detailer_sigma_adjust, elem_id=f\"{tab}_detailer_renoise\")\n                renoise_end = gr.Slider(minimum=0.0, maximum=1.0, step=0.01, label='Renoise end', value=shared.opts.detailer_sigma_adjust_max, elem_id=f\"{tab}_detailer_renoise_end\")\n\n            merge.change(fn=ui_settings_change, inputs=[merge, detailers, detailers_text, classes, strength, padding, blur, min_confidence, max_detected, min_size, max_size, iou, steps, renoise_value, renoise_end, resolution, save, sort, seg], outputs=[])\n            detailers.change(fn=ui_settings_change, inputs=[merge, detailers, detailers_text, classes, strength, padding, blur, min_confidence, max_detected, min_size, max_size, iou, steps, renoise_value, renoise_end, resolution, save, sort, seg], outputs=[])\n            detailers_text.change(fn=ui_settings_change, inputs=[merge, detailers, detailers_text, classes, strength, padding, blur, min_confidence, max_detected, min_size, max_size, iou, steps, renoise_value, renoise_end, resolution, save, sort, seg], outputs=[])\n            classes.change(fn=ui_settings_change, inputs=[merge, detailers, detailers_text, classes, strength, padding, blur, min_confidence, max_detected, min_size, max_size, iou, steps, renoise_value, renoise_end, resolution, save, sort, seg], outputs=[])\n            padding.change(fn=ui_settings_change, inputs=[merge, detailers, detailers_text, classes, strength, padding, blur, min_confidence, max_detected, min_size, max_size, iou, steps, renoise_value, renoise_end, resolution, save, sort, seg], outputs=[])\n            blur.change(fn=ui_settings_change, inputs=[merge, detailers, detailers_text, classes, strength, padding, blur, min_confidence, max_detected, min_size, max_size, iou, steps, renoise_value, renoise_end, resolution, save, sort, seg], outputs=[])\n            min_confidence.change(fn=ui_settings_change, inputs=[merge, detailers, detailers_text, classes, strength, padding, blur, min_confidence, max_detected, min_size, max_size, iou, steps, renoise_value, renoise_end, resolution, save, sort, seg], outputs=[])\n            max_detected.change(fn=ui_settings_change, inputs=[merge, detailers, detailers_text, classes, strength, padding, blur, min_confidence, max_detected, min_size, max_size, iou, steps, renoise_value, renoise_end, resolution, save, sort, seg], outputs=[])\n            min_size.change(fn=ui_settings_change, inputs=[merge, detailers, detailers_text, classes, strength, padding, blur, min_confidence, max_detected, min_size, max_size, iou, steps, renoise_value, renoise_end, resolution, save, sort, seg], outputs=[])\n            max_size.change(fn=ui_settings_change, inputs=[merge, detailers, detailers_text, classes, strength, padding, blur, min_confidence, max_detected, min_size, max_size, iou, steps, renoise_value, renoise_end, resolution, save, sort, seg], outputs=[])\n            iou.change(fn=ui_settings_change, inputs=[merge, detailers, detailers_text, classes, strength, padding, blur, min_confidence, max_detected, min_size, max_size, iou, steps, renoise_value, renoise_end, resolution, save, sort, seg], outputs=[])\n            resolution.change(fn=ui_settings_change, inputs=[merge, detailers, detailers_text, classes, strength, padding, blur, min_confidence, max_detected, min_size, max_size, iou, steps, renoise_value, renoise_end, resolution, save, sort, seg], outputs=[])\n            save.change(fn=ui_settings_change, inputs=[merge, detailers, detailers_text, classes, strength, padding, blur, min_confidence, max_detected, min_size, max_size, iou, steps, renoise_value, renoise_end, resolution, save, sort, seg], outputs=[])\n            sort.change(fn=ui_settings_change, inputs=[merge, detailers, detailers_text, classes, strength, padding, blur, min_confidence, max_detected, min_size, max_size, iou, steps, renoise_value, renoise_end, resolution, save, sort, seg], outputs=[])\n            seg.change(fn=ui_settings_change, inputs=[merge, detailers, detailers_text, classes, strength, padding, blur, min_confidence, max_detected, min_size, max_size, iou, steps, renoise_value, renoise_end, resolution, save, sort, seg], outputs=[])\n            return enabled, prompt, negative, steps, strength, resolution\n\n\ndef initialize():\n    shared.yolo = YoloRestorer()\n    shared.detailers.append(shared.yolo)\n"
  },
  {
    "path": "modules/postprocessing.py",
    "content": "import os\nimport tempfile\nfrom typing import List\n\nfrom PIL import Image\n\nfrom modules import shared, images, devices, scripts_manager, scripts_postprocessing, infotext\nfrom modules.shared import opts\nfrom modules.paths import resolve_output_path\n\n\ndef run_postprocessing(extras_mode, image, image_folder: List[tempfile.NamedTemporaryFile], input_dir, output_dir, show_extras_results, *args, save_output: bool = True):\n    devices.torch_gc()\n    shared.state.begin('Extras')\n    image_data = []\n    image_names = []\n    image_fullnames = []\n    image_ext = []\n    outputs = []\n    params = {}\n    info = ''\n    if extras_mode == 1:\n        for img in image_folder:\n            if isinstance(img, Image.Image):\n                image = img\n                fn = ''\n                ext = None\n            else:\n                try:\n                    image = Image.open(os.path.abspath(img.name))\n                except Exception as e:\n                    shared.log.error(f'Failed to open image: file=\"{img.name}\" {e}')\n                    continue\n                fn, ext = os.path.splitext(img.orig_name)\n                image_fullnames.append(img.name)\n            image_data.append(image)\n            image_names.append(fn)\n            image_ext.append(ext)\n        shared.log.debug(f'Process: mode=batch inputs={len(image_folder)} images={len(image_data)}')\n    elif extras_mode == 2:\n        assert input_dir, 'input directory not selected'\n        image_list = os.listdir(input_dir)\n        for filename in image_list:\n            fn = os.path.join(input_dir, filename)\n            try:\n                image = Image.open(fn)\n            except Exception as e:\n                shared.log.error(f'Failed to open image: file=\"{fn}\" {e}')\n                continue\n            image_fullnames.append(fn)\n            image_data.append(image)\n            image_names.append(fn)\n            image_ext.append(None)\n        shared.log.debug(f'Process: mode=folder inputs={input_dir} files={len(image_list)} images={len(image_data)}')\n    else:\n        image_data.append(image)\n        image_names.append(None)\n        image_ext.append(None)\n    if extras_mode == 2 and output_dir != '':\n        outpath = output_dir\n    else:\n        outpath = resolve_output_path(opts.outdir_samples, opts.outdir_extras_samples)\n    processed_images = []\n    for image, name, ext in zip(image_data, image_names, image_ext): # pylint: disable=redefined-argument-from-local\n        shared.log.debug(f'Process: image={image} {args}')\n        info = ''\n        if shared.state.interrupted:\n            shared.log.debug('Postprocess interrupted')\n            break\n        if image is None:\n            continue\n        shared.state.textinfo = name\n        pp = scripts_postprocessing.PostprocessedImage(image.convert(\"RGB\"))\n        scripts_manager.scripts_postproc.run(pp, args)\n        geninfo, items = images.read_info_from_image(image)\n        params = infotext.parse(geninfo)\n        for k, v in items.items():\n            pp.image.info[k] = v\n        if 'parameters' in items:\n            info = items['parameters'] + ', '\n        if (params.get('size-1', 0) != pp.image.width) or (params.get('size-2', 0) != pp.image.height):\n            params['size-1'] = pp.image.width\n            params['size-2'] = pp.image.height\n            info += f\"Size: {pp.image.width}x{pp.image.height}, \"\n        info = info + \", \".join([k if k == v else f'{k}: {infotext.quote(v)}' for k, v in pp.info.items() if v is not None])\n        pp.image.info[\"postprocessing\"] = info\n        processed_images.append(pp.image)\n        if save_output:\n            if opts.use_original_name_batch and name is not None:\n                forced_filename = os.path.splitext(os.path.basename(name))[0]\n                images.save_image(pp.image, path=outpath, extension=ext or opts.samples_format, info=info, grid=False, pnginfo_section_name=\"extras\", existing_info=pp.image.info, forced_filename=forced_filename)\n            else:\n                images.save_image(pp.image, path=outpath, extension=ext or opts.samples_format, info=info, grid=False, pnginfo_section_name=\"extras\", existing_info=pp.image.info)\n        if extras_mode != 2 or show_extras_results:\n            outputs.append(pp.image)\n        image.close()\n    scripts_manager.scripts_postproc.postprocess(processed_images, args)\n\n    devices.torch_gc()\n    return outputs, info, params\n\n\ndef run_extras(extras_mode, resize_mode, image, image_folder, input_dir, output_dir, show_extras_results, gfpgan_visibility, codeformer_visibility, codeformer_weight, upscaling_resize, upscaling_resize_w, upscaling_resize_h, upscaling_crop, extras_upscaler_1, extras_upscaler_2, extras_upscaler_2_visibility, save_output: bool = True):\n    \"\"\"old handler for API\"\"\"\n\n    args = scripts_manager.scripts_postproc.create_args_for_run({\n        \"Upscale\": {\n            \"upscale_mode\": resize_mode,\n            \"upscale_by\": upscaling_resize,\n            \"upscale_to_width\": upscaling_resize_w,\n            \"upscale_to_height\": upscaling_resize_h,\n            \"upscale_crop\": upscaling_crop,\n            \"upscaler_1_name\": extras_upscaler_1,\n            \"upscaler_2_name\": extras_upscaler_2,\n            \"upscaler_2_visibility\": extras_upscaler_2_visibility,\n        },\n        \"GFPGAN\": {\n            \"gfpgan_visibility\": gfpgan_visibility,\n        },\n        \"CodeFormer\": {\n            \"codeformer_visibility\": codeformer_visibility,\n            \"codeformer_weight\": codeformer_weight,\n        },\n    })\n\n    return run_postprocessing(extras_mode, image, image_folder, input_dir, output_dir, show_extras_results, *args, save_output=save_output)\n"
  },
  {
    "path": "modules/processing.py",
    "content": "import os\nimport json\nimport time\nimport numpy as np\nfrom PIL import Image, ImageOps\nfrom modules import shared, devices, errors, images, scripts_manager, memstats, script_callbacks, extra_networks, detailer, sd_models, sd_checkpoint, sd_vae, processing_helpers, timer, face_restoration\nfrom modules.sd_hijack_hypertile import context_hypertile_vae, context_hypertile_unet\nfrom modules.processing_class import StableDiffusionProcessing, StableDiffusionProcessingTxt2Img, StableDiffusionProcessingImg2Img, StableDiffusionProcessingControl, StableDiffusionProcessingVideo # pylint: disable=unused-import\nfrom modules.processing_info import create_infotext\nfrom modules.modeldata import model_data\n\n\nopt_C = 4\nopt_f = 8\ndebug = shared.log.trace if os.environ.get('SD_PROCESS_DEBUG', None) is not None else lambda *args, **kwargs: None\ndebug('Trace: PROCESS')\ncreate_binary_mask = processing_helpers.create_binary_mask\napply_overlay = processing_helpers.apply_overlay\napply_color_correction = processing_helpers.apply_color_correction\nsetup_color_correction = processing_helpers.setup_color_correction\nfix_seed = processing_helpers.fix_seed\nget_fixed_seed = processing_helpers.get_fixed_seed\ncreate_random_tensors = processing_helpers.create_random_tensors\nold_hires_fix_first_pass_dimensions = processing_helpers.old_hires_fix_first_pass_dimensions\nget_sampler_name = processing_helpers.get_sampler_name\nget_sampler_index = processing_helpers.get_sampler_index\nvalidate_sample = processing_helpers.validate_sample\ndecode_first_stage = processing_helpers.decode_first_stage\nimages_tensor_to_samples = processing_helpers.images_tensor_to_samples\nprocessed = None # last known processed results\n\n\nclass Processed:\n    def __init__(self, p: StableDiffusionProcessing, images_list, seed=-1, info=None, subseed=None, all_prompts=None, all_negative_prompts=None, all_seeds=None, all_subseeds=None, index_of_first_image=0, infotexts=None, comments=\"\", binary=None, audio=None):\n        self.sd_model_hash = getattr(shared.sd_model, 'sd_model_hash', '') if model_data.sd_model is not None else ''\n\n        self.prompt = p.prompt or ''\n        self.negative_prompt = p.negative_prompt or ''\n        self.prompt = self.prompt if type(self.prompt) != list else self.prompt[0]\n        self.negative_prompt = self.negative_prompt if type(self.negative_prompt) != list else self.negative_prompt[0]\n        self.styles = p.styles\n\n        self.bytes = binary\n        self.images = images_list\n        self.width = p.width if hasattr(p, 'width') else (self.images[0].width if len(self.images) > 0 else 0)\n        self.height = p.height if hasattr(p, 'height') else (self.images[0].height if len(self.images) > 0 else 0)\n\n        self.sampler_name = p.sampler_name or ''\n        self.cfg_scale = p.cfg_scale if p.cfg_scale > 1 else None\n        self.cfg_end = p.cfg_end if p.cfg_end < 1 else None\n        self.image_cfg_scale = p.image_cfg_scale or 0\n        self.steps = p.steps or 0\n        self.batch_size = max(1, p.batch_size)\n        self.denoising_strength = p.denoising_strength\n\n        self.audio = audio\n\n        self.restore_faces = p.restore_faces or False\n        self.face_restoration_model = shared.opts.face_restoration_model if p.restore_faces else None\n        self.detailer = p.detailer_enabled or False\n        self.detailer_model = shared.opts.detailer_model if p.detailer_enabled else None\n        self.seed_resize_from_w = p.seed_resize_from_w\n        self.seed_resize_from_h = p.seed_resize_from_h\n        self.extra_generation_params = p.extra_generation_params\n        self.index_of_first_image = index_of_first_image\n        self.job_timestamp = shared.state.job_timestamp\n        self.clip_skip = p.clip_skip\n        self.eta = p.eta\n\n        self.seed = seed if seed != -1 else p.seed\n        self.subseed = subseed\n        self.seed = int(self.seed if type(self.seed) != list else self.seed[0]) if self.seed is not None else -1\n        self.subseed = int(self.subseed if type(self.subseed) != list else self.subseed[0]) if self.subseed is not None else -1\n        self.subseed_strength = p.subseed_strength\n\n        self.is_using_inpainting_conditioning = p.is_using_inpainting_conditioning\n\n        self.all_prompts = all_prompts or p.all_prompts or [self.prompt]\n        self.all_negative_prompts = all_negative_prompts or p.all_negative_prompts or [self.negative_prompt]\n        self.all_seeds = all_seeds or p.all_seeds or [self.seed]\n        self.all_subseeds = all_subseeds or p.all_subseeds or [self.subseed]\n\n        self.info = info or create_infotext(p)\n        self.infotexts = infotexts or [self.info]\n        self.comments = comments or ''\n        memstats.reset_stats()\n\n    def js(self):\n        obj = {\n            \"prompt\": self.all_prompts[0],\n            \"all_prompts\": self.all_prompts,\n            \"negative_prompt\": self.all_negative_prompts[0],\n            \"all_negative_prompts\": self.all_negative_prompts,\n            \"seed\": self.seed,\n            \"all_seeds\": self.all_seeds,\n            \"subseed\": self.subseed,\n            \"all_subseeds\": self.all_subseeds,\n            \"subseed_strength\": self.subseed_strength,\n            \"width\": self.width,\n            \"height\": self.height,\n            \"sampler_name\": self.sampler_name,\n            \"cfg_scale\": self.cfg_scale,\n            \"cfg_end\": self.cfg_end,\n            \"steps\": self.steps,\n            \"batch_size\": self.batch_size,\n            \"detailer\": self.detailer,\n            \"detailer_model\": self.detailer_model,\n            \"sd_model_hash\": self.sd_model_hash,\n            \"seed_resize_from_w\": self.seed_resize_from_w,\n            \"seed_resize_from_h\": self.seed_resize_from_h,\n            \"denoising_strength\": self.denoising_strength,\n            \"extra_generation_params\": self.extra_generation_params,\n            \"index_of_first_image\": self.index_of_first_image,\n            \"infotexts\": self.infotexts,\n            \"styles\": self.styles,\n            \"job_timestamp\": self.job_timestamp,\n            \"clip_skip\": self.clip_skip,\n        }\n        return json.dumps(obj)\n\n    def infotext(self, p: StableDiffusionProcessing, index):\n        return create_infotext(p, self.all_prompts, self.all_seeds, self.all_subseeds, comments=[], position_in_batch=index % self.batch_size, iteration=index // self.batch_size)\n\n    def __str___(self):\n        return f'{self.__class__.__name__}: {self.__dict__}'\n\n\ndef get_processed(*args, **kwargs):\n    global processed # pylint: disable=global-statement\n    processed = Processed(*args, **kwargs)\n    return processed\n\n\ndef process_images(p: StableDiffusionProcessing) -> Processed:\n    timer.process.reset()\n    debug(f'Process images: class={p.__class__.__name__} {vars(p)}')\n    if not hasattr(p.sd_model, 'sd_checkpoint_info'):\n        shared.log.error('Processing: incomplete model')\n        return None\n    if p.abort:\n        shared.log.debug('Processing: aborted')\n        return None\n    if p.scripts is not None and isinstance(p.scripts, scripts_manager.ScriptRunner):\n        p.scripts.before_process(p)\n    stored_opts = {}\n    for k, v in p.override_settings.copy().items():\n        if shared.opts.data.get(k, None) is None and shared.opts.data_labels.get(k, None) is None:\n            continue\n        orig = shared.opts.data.get(k, None) or shared.opts.data_labels[k].default\n        if orig == v or (type(orig) == str and os.path.splitext(orig)[0] == v):\n            p.override_settings.pop(k, None)\n    for k in p.override_settings.keys():\n        stored_opts[k] = shared.opts.data.get(k, None) or shared.opts.data_labels[k].default\n    results = None\n    try:\n        # if no checkpoint override or the override checkpoint can't be found, remove override entry and load opts checkpoint\n        if p.override_settings.get('sd_model_checkpoint', None) is not None and sd_checkpoint.checkpoint_aliases.get(p.override_settings.get('sd_model_checkpoint')) is None:\n            shared.log.warning(f\"Override not found: checkpoint={p.override_settings.get('sd_model_checkpoint', None)}\")\n            p.override_settings.pop('sd_model_checkpoint', None)\n            sd_models.reload_model_weights()\n        if p.override_settings.get('sd_model_refiner', None) is not None and sd_checkpoint.checkpoint_aliases.get(p.override_settings.get('sd_model_refiner')) is None:\n            shared.log.warning(f\"Override not found: refiner={p.override_settings.get('sd_model_refiner', None)}\")\n            p.override_settings.pop('sd_model_refiner', None)\n            sd_models.reload_model_weights()\n        if p.override_settings.get('sd_vae', None) is not None:\n            if p.override_settings.get('sd_vae', None) == 'TAESD':\n                p.vae_type = 'Tiny'\n                p.override_settings.pop('sd_vae', None)\n            if p.override_settings.get('sd_vae', None) == 'REPA-E':\n                p.vae_type = 'Repa'\n                p.override_settings.pop('sd_vae', None)\n        if p.override_settings.get('Hires upscaler', None) is not None:\n            p.enable_hr = True\n        if len(p.override_settings.keys()) > 0:\n            shared.log.debug(f'Override: {p.override_settings}')\n        for k, v in p.override_settings.items():\n            setattr(shared.opts, k, v)\n            if k == 'sd_model_checkpoint':\n                sd_models.reload_model_weights()\n            if k == 'sd_vae':\n                sd_vae.reload_vae_weights()\n\n        shared.prompt_styles.apply_styles_to_extra(p)\n        shared.prompt_styles.extract_comments(p)\n        vae_scale_factor = sd_vae.get_vae_scale_factor()\n\n        if p.width is not None:\n            p.width = vae_scale_factor * int(p.width / vae_scale_factor)\n        if p.height is not None:\n            p.height = vae_scale_factor * int(p.height / vae_scale_factor)\n\n        script_callbacks.before_process_callback(p)\n        timer.process.record('pre')\n\n        if shared.cmd_opts.profile:\n            timer.startup.profile = True\n            timer.process.profile = True\n            with context_hypertile_vae(p), context_hypertile_unet(p):\n                import torch.profiler # pylint: disable=redefined-outer-name\n                activities=[torch.profiler.ProfilerActivity.CPU]\n                if torch.cuda.is_available():\n                    activities.append(torch.profiler.ProfilerActivity.CUDA)\n                if devices.has_xpu() and hasattr(torch.profiler.ProfilerActivity, \"XPU\"):\n                    activities.append(torch.profiler.ProfilerActivity.XPU)\n                shared.log.debug(f'Torch profile: activities={activities}')\n                if shared.profiler is None:\n                    profile_args = {\n                        'activities': activities,\n                        'profile_memory': True,\n                        'with_modules': True,\n                        'with_stack': os.environ.get('SD_PROFILE_STACK', None) is not None,\n                        'experimental_config': torch._C._profiler._ExperimentalConfig(verbose=True) if os.environ.get('SD_PROFILE_STACK', None) is not None else None, # pylint: disable=protected-access\n                        'with_flops': os.environ.get('SD_PROFILE_FLOPS', None) is not None,\n                        'record_shapes': os.environ.get('SD_PROFILE_SHAPES', None) is not None,\n                        'on_trace_ready': torch.profiler.tensorboard_trace_handler(os.environ.get('SD_PROFILE_FOLDER', None)) if os.environ.get('SD_PROFILE_FOLDER', None) is not None else None,\n                    }\n                    shared.log.debug(f'Torch profile: {profile_args}')\n                    shared.profiler = torch.profiler.profile(**profile_args)\n                shared.profiler.start()\n                results = process_images_inner(p)\n                errors.profile_torch(shared.profiler, 'Process')\n        else:\n            with context_hypertile_vae(p), context_hypertile_unet(p):\n                results = process_images_inner(p)\n\n    finally:\n        script_callbacks.after_process_callback(p)\n\n        if p.override_settings_restore_afterwards: # restore opts to original state\n            for k, v in stored_opts.items():\n                setattr(shared.opts, k, v)\n                if k == 'sd_model_checkpoint':\n                    sd_models.reload_model_weights()\n                if k == 'sd_model_refiner':\n                    sd_models.reload_model_weights()\n                if k == 'sd_vae':\n                    sd_vae.reload_vae_weights()\n        timer.process.record('post')\n    return results\n\n\ndef process_init(p: StableDiffusionProcessing):\n    seed = get_fixed_seed(p.seed)\n    subseed = get_fixed_seed(p.subseed)\n    reset_prompts = False\n    if not p.all_prompts:\n        p.all_prompts = p.prompt if isinstance(p.prompt, list) else p.batch_size * p.n_iter * [p.prompt]\n        reset_prompts = True\n    if not p.all_negative_prompts:\n        p.all_negative_prompts = p.negative_prompt if isinstance(p.negative_prompt, list) else p.batch_size * p.n_iter * [p.negative_prompt]\n        reset_prompts = True\n    if not p.all_seeds:\n        reset_prompts = True\n        if type(seed) == list:\n            p.all_seeds = [int(s) for s in seed]\n        else:\n            if shared.opts.sequential_seed:\n                p.all_seeds = [int(seed) + (x if p.subseed_strength == 0 else 0) for x in range(len(p.all_prompts))]\n            else:\n                p.all_seeds = []\n                if p.all_prompts is not None:\n                    for i in range(len(p.all_prompts)):\n                        seed = get_fixed_seed(p.seed)\n                        p.all_seeds.append(int(seed) + (i if p.subseed_strength == 0 else 0))\n    if not p.all_subseeds:\n        if type(subseed) == list:\n            p.all_subseeds = [int(s) for s in subseed]\n        else:\n            p.all_subseeds = [int(subseed) + x for x in range(len(p.all_prompts))]\n    if reset_prompts:\n        if not hasattr(p, 'keep_prompts'):\n            p.all_prompts, p.all_negative_prompts = shared.prompt_styles.apply_styles_to_prompts(p.all_prompts, p.all_negative_prompts, p.styles, p.all_seeds)\n            p.prompts = p.all_prompts[(p.iteration * p.batch_size):((p.iteration+1) * p.batch_size)]\n            p.negative_prompts = p.all_negative_prompts[(p.iteration * p.batch_size):((p.iteration+1) * p.batch_size)]\n        p.prompts, _ = extra_networks.parse_prompts(p.prompts)\n\n\ndef process_samples(p: StableDiffusionProcessing, samples):\n    out_images = []\n    out_infotexts = []\n    if not isinstance(samples, list):\n        return samples, []\n    for i, sample in enumerate(samples):\n        debug(f'Processing result: index={i+1}/{len(samples)}')\n        p.batch_index = i\n        if isinstance(sample, Image.Image) or (isinstance(sample, list) and isinstance(sample[0], Image.Image)):\n            image = sample\n            sample = np.array(sample)\n        else:\n            sample = validate_sample(sample)\n            image = Image.fromarray(sample)\n\n        if isinstance(image, list):\n            if len(image) > 1:\n                shared.log.warning(f'Processing: images={image} contains multiple images using first one only')\n            image = image[0]\n\n        if not shared.state.interrupted and not shared.state.skipped:\n\n            if p.restore_faces:\n                p.ops.append('restore')\n                if not p.do_not_save_samples and shared.opts.save_images_before_detailer:\n                    info = create_infotext(p, p.prompts, p.seeds, p.subseeds, index=i)\n                    images.save_image(Image.fromarray(sample), path=p.outpath_samples, basename=\"\", seed=p.seeds[i], prompt=p.prompts[i], extension=shared.opts.samples_format, info=info, p=p, suffix=\"-before-restore\")\n                sample = face_restoration.restore_faces(sample, p)\n                if sample is not None:\n                    image = Image.fromarray(sample)\n\n            if p.detailer_enabled:\n                p.ops.append('detailer')\n                if not p.do_not_save_samples and shared.opts.save_images_before_detailer:\n                    info = create_infotext(p, p.prompts, p.seeds, p.subseeds, index=i)\n                    images.save_image(Image.fromarray(sample), path=p.outpath_samples, basename=\"\", seed=p.seeds[i], prompt=p.prompts[i], extension=shared.opts.samples_format, info=info, p=p, suffix=\"-before-detailer\")\n                sample = detailer.detail(sample, p)\n                if isinstance(sample, list):\n                    if len(sample) > 0:\n                        image = Image.fromarray(sample[0])\n                    if len(sample) > 1:\n                        annotated = sample[1] if isinstance(sample[1], Image.Image) else Image.fromarray(sample[1])\n                        out_images.append(annotated)\n                        out_infotexts.append(\"Detailer annotations\")\n                elif sample is not None:\n                    image = Image.fromarray(sample)\n\n            if p.color_corrections is not None and i < len(p.color_corrections):\n                p.ops.append('color')\n                if not p.do_not_save_samples and shared.opts.save_images_before_color_correction:\n                    image_without_cc = apply_overlay(image, p.paste_to, i, p.overlay_images)\n                    info = create_infotext(p, p.prompts, p.seeds, p.subseeds, index=i)\n                    images.save_image(image_without_cc, path=p.outpath_samples, basename=\"\", seed=p.seeds[i], prompt=p.prompts[i], extension=shared.opts.samples_format, info=info, p=p, suffix=\"-before-color-correct\")\n                image = apply_color_correction(p.color_corrections[i], image)\n\n            if p.scripts is not None and isinstance(p.scripts, scripts_manager.ScriptRunner):\n                pp = scripts_manager.PostprocessImageArgs(image)\n                p.scripts.postprocess_image(p, pp)\n                if pp.image is not None:\n                    image = pp.image\n\n            if shared.opts.mask_apply_overlay:\n                image = apply_overlay(image, p.paste_to, i, p.overlay_images)\n\n            if hasattr(p, 'mask_for_overlay') and p.mask_for_overlay and any([shared.opts.save_mask, shared.opts.save_mask_composite, shared.opts.return_mask, shared.opts.return_mask_composite]):\n                image_mask = p.mask_for_overlay.convert('RGB')\n                image1 = image.convert('RGBA').convert('RGBa')\n                image2 = Image.new('RGBa', image.size)\n                mask = images.resize_image(3, p.mask_for_overlay, image.width, image.height).convert('L')\n                image_mask_composite = Image.composite(image1, image2, mask).convert('RGBA')\n                info = create_infotext(p, p.prompts, p.seeds, p.subseeds, index=i)\n                if shared.opts.save_mask:\n                    images.save_image(image_mask, p.outpath_samples, \"\", p.seeds[i], p.prompts[i], shared.opts.samples_format, info=info, p=p, suffix=\"-mask\")\n                if shared.opts.save_mask_composite:\n                    images.save_image(image_mask_composite, p.outpath_samples, \"\", p.seeds[i], p.prompts[i], shared.opts.samples_format, info=info, p=p, suffix=\"-mask-composite\")\n                if shared.opts.return_mask:\n                    out_infotexts.append(info)\n                    out_images.append(image_mask)\n                if shared.opts.return_mask_composite:\n                    out_infotexts.append(info)\n                    out_images.append(image_mask_composite)\n\n            if shared.opts.include_mask:\n                info = create_infotext(p, p.prompts, p.seeds, p.subseeds, index=i)\n                if shared.opts.mask_apply_overlay and p.overlay_images is not None and len(p.overlay_images) > 0:\n                    p.image_mask = create_binary_mask(p.overlay_images[0])\n                    p.image_mask = ImageOps.invert(p.image_mask)\n                    out_infotexts.append(info)\n                    out_images.append(p.image_mask)\n                elif getattr(p, 'image_mask', None) is not None and isinstance(p.image_mask, Image.Image):\n                    if getattr(p, 'mask_for_detailer', None) is not None:\n                        out_infotexts.append(info)\n                        out_images.append(p.mask_for_detailer)\n                    else:\n                        out_infotexts.append(info)\n                        out_images.append(p.image_mask)\n\n            if p.selected_scale_tab_after == 1:\n                p.width_after, p.height_after = int(image.width * p.scale_by_after), int(image.height * p.scale_by_after)\n            if p.resize_mode_after != 0 and p.resize_name_after != 'None':\n                image = images.resize_image(p.resize_mode_after, image, p.width_after, p.height_after, p.resize_name_after, context=p.resize_context_after)\n\n        info = create_infotext(p, p.prompts, p.seeds, p.subseeds, index=i)\n        if shared.opts.samples_save and not p.do_not_save_samples and p.outpath_samples is not None:\n            images.save_image(image, p.outpath_samples, \"\", p.seeds[i], p.prompts[i], shared.opts.samples_format, info=info, p=p) # main save image\n\n        image.info[\"parameters\"] = info\n        out_infotexts.append(info)\n        out_images.append(image)\n    return out_images, out_infotexts\n\n\ndef process_images_inner(p: StableDiffusionProcessing) -> Processed:\n    if type(p.prompt) == list:\n        assert len(p.prompt) > 0\n    else:\n        assert p.prompt is not None\n\n    comments = {}\n    infotexts = []\n    output_images = []\n    output_binary = None\n    audio = None\n\n    process_init(p)\n    if p.scripts is not None and isinstance(p.scripts, scripts_manager.ScriptRunner):\n        p.scripts.process(p)\n\n    jobid = shared.state.begin('Process')\n    shared.state.batch_count = p.n_iter\n    with devices.inference_context():\n        t0 = time.time()\n        if not hasattr(p, 'skip_init'):\n            p.init(p.all_prompts, p.all_seeds, p.all_subseeds)\n        debug(f'Processing inner: args={vars(p)}')\n        p.iter_init_images = p.init_images # required so we use same starting non-processed images for each batch sequence\n        for n in range(p.n_iter):\n            p.init_images = p.iter_init_images\n            if p.n_iter > 1:\n                shared.log.debug(f'Processing: batch={n+1} total={p.n_iter} progress={(n+1)/p.n_iter:.2f}')\n            shared.state.batch_no = n + 1\n            debug(f'Processing inner: iteration={n+1}/{p.n_iter}')\n            p.iteration = n\n            if shared.state.interrupted:\n                shared.log.debug(f'Process interrupted: {n+1}/{p.n_iter}')\n                break\n            if shared.state.skipped:\n                shared.log.debug(f'Process skipped: {n+1}/{p.n_iter}')\n                shared.state.skipped = False\n                continue\n\n            if not hasattr(p, 'keep_prompts'):\n                p.prompts = p.all_prompts[(n * p.batch_size):((n+1) * p.batch_size)]\n                p.negative_prompts = p.all_negative_prompts[(n * p.batch_size):((n+1) * p.batch_size)]\n            p.seeds = p.all_seeds[(n * p.batch_size):((n+1) * p.batch_size)]\n            p.subseeds = p.all_subseeds[(n * p.batch_size):((n+1) * p.batch_size)]\n            if p.scripts is not None and isinstance(p.scripts, scripts_manager.ScriptRunner):\n                p.scripts.before_process_batch(p, batch_number=n, prompts=p.prompts, seeds=p.seeds, subseeds=p.subseeds)\n            if not p.prompts:\n                break\n            p.prompts, p.network_data = extra_networks.parse_prompts(p.prompts)\n            if p.scripts is not None and isinstance(p.scripts, scripts_manager.ScriptRunner):\n                p.scripts.process_batch(p, batch_number=n, prompts=p.prompts, seeds=p.seeds, subseeds=p.subseeds)\n\n            samples = None\n            timer.process.record('init')\n            if p.scripts is not None and isinstance(p.scripts, scripts_manager.ScriptRunner):\n                results = p.scripts.process_images(p)\n                if results is not None:\n                    samples = results.images\n                    for script_image, script_infotext in zip(results.images, results.infotexts):\n                        output_images.append(script_image)\n                        infotexts.append(script_infotext)\n\n            # main processing\n            if samples is None:\n                from modules.processing_diffusers import process_diffusers\n                samples = process_diffusers(p)\n            timer.process.record('process')\n\n            if shared.state.interrupted:\n                shared.log.debug(f'Process: batch={n+1}/{p.n_iter} interrupted')\n                p.do_not_save_samples = not shared.opts.keep_incomplete\n                if shared.state.current_image is not None and isinstance(shared.state.current_image, Image.Image):\n                    samples = [shared.state.current_image]\n                    infotexts = [create_infotext(p, p.all_prompts, p.all_seeds, p.all_subseeds, index=0)]\n                else:\n                    samples = []\n                if not shared.opts.keep_incomplete:\n                    break\n\n            if p.scripts is not None and isinstance(p.scripts, scripts_manager.ScriptRunner):\n                p.scripts.postprocess_batch(p, samples, batch_number=n)\n            if p.scripts is not None and isinstance(p.scripts, scripts_manager.ScriptRunner):\n                p.prompts = p.all_prompts[(n * p.batch_size):((n+1) * p.batch_size)]\n                p.negative_prompts = p.all_negative_prompts[(n * p.batch_size):((n+1) * p.batch_size)]\n                batch_params = scripts_manager.PostprocessBatchListArgs(list(samples))\n                p.scripts.postprocess_batch_list(p, batch_params, batch_number=n)\n                samples = batch_params.images\n\n            if hasattr(samples, 'bytes') and samples.bytes is not None:\n                output_binary = samples.bytes\n            else:\n                batch_images, batch_infotexts = process_samples(p, samples)\n                for batch_image, batch_infotext in zip(batch_images, batch_infotexts):\n                    if batch_image is not None and batch_image not in output_images:\n                        output_images.append(batch_image)\n                        infotexts.append(batch_infotext)\n\n            audio = getattr(samples, 'audio', None)\n\n            if shared.cmd_opts.lowvram:\n                devices.torch_gc(force=True, reason='lowvram')\n            timer.process.record('post')\n            if shared.state.interrupted:\n                break\n\n        if not p.xyz:\n            if hasattr(shared.sd_model, 'restore_pipeline') and (shared.sd_model.restore_pipeline is not None):\n                shared.sd_model.restore_pipeline()\n            shared.sd_model = sd_models.set_diffuser_pipe(shared.sd_model, sd_models.DiffusersTaskType.TEXT_2_IMAGE)\n\n        t1 = time.time()\n\n        p.color_corrections = None\n        index_of_first_image = 0\n        if (shared.opts.return_grid or shared.opts.grid_save) and (not p.do_not_save_grid) and (len(output_images) > 1):\n            if images.check_grid_size(output_images):\n                r, c = images.get_grid_size(output_images, p.batch_size)\n                grid = images.image_grid(output_images, p.batch_size)\n                grid_text = f'{r}x{c}'\n                grid_info = create_infotext(p, p.all_prompts, p.all_seeds, p.all_subseeds, index=0, grid=grid_text)\n                if shared.opts.return_grid:\n                    infotexts.insert(0, grid_info)\n                    output_images.insert(0, grid)\n                    index_of_first_image = 1\n                if shared.opts.grid_save:\n                    images.save_image(grid, p.outpath_grids, \"\", p.all_seeds[0], p.all_prompts[0], shared.opts.grid_format, info=grid_info, p=p, grid=True) # main save grid\n\n    results = get_processed(\n        p,\n        images_list=output_images,\n        binary=output_binary,\n        seed=p.all_seeds[0],\n        info=infotexts[0] if len(infotexts) > 0 else '',\n        comments=\"\\n\".join(comments),\n        subseed=p.all_subseeds[0],\n        index_of_first_image=index_of_first_image,\n        infotexts=infotexts,\n        audio=audio,\n    )\n    if p.scripts is not None and isinstance(p.scripts, scripts_manager.ScriptRunner) and not (shared.state.interrupted or shared.state.skipped):\n        p.scripts.postprocess(p, results)\n    timer.process.record('post')\n    p.ops = list(set(p.ops))\n    if not p.disable_extra_networks:\n        shared.log.info(f'Processed: images={len(output_images)} its={(p.steps * len(output_images)) / (t1 - t0):.2f} ops={p.ops}')\n        shared.log.debug(f'Processed: timers={timer.process.dct()}')\n        shared.log.debug(f'Processed: memory={memstats.memory_stats()}')\n\n    if shared.cmd_opts.lowvram or shared.cmd_opts.medvram:\n        devices.torch_gc(force=True, reason='final')\n    shared.state.end(jobid)\n    return results\n"
  },
  {
    "path": "modules/processing_args.py",
    "content": "import typing\nimport os\nimport re\nimport math\nimport time\nimport inspect\nimport torch\nimport numpy as np\nfrom PIL import Image\nfrom modules import shared, sd_models, processing, processing_vae, processing_helpers, sd_hijack_hypertile, extra_networks, sd_vae\nfrom modules.processing_callbacks import diffusers_callback_legacy, diffusers_callback, set_callbacks_p\nfrom modules.processing_helpers import resize_hires, calculate_base_steps, calculate_hires_steps, calculate_refiner_steps, get_generator, set_latents, apply_circular # pylint: disable=unused-import\nfrom modules.processing_prompt import set_prompt\nfrom modules.api import helpers\n\n\ndebug_enabled = os.environ.get('SD_DIFFUSERS_DEBUG', None)\ndebug_log = shared.log.trace if debug_enabled else lambda *args, **kwargs: None\ndisable_pbar = os.environ.get('SD_DISABLE_PBAR', None) is not None\n\n\ndef task_modular_kwargs(p, model): # pylint: disable=unused-argument\n    # model_cls = model.__class__.__name__\n    task_args = {}\n    p.ops.append('modular')\n\n    processing_helpers.resize_init_images(p)\n    task_args['width'] = p.width\n    task_args['height'] = p.height\n    if len(getattr(p, 'init_images', [])) > 0:\n        task_args['image'] = p.init_images\n        task_args['strength'] = p.denoising_strength\n    mask_image = p.task_args.get('image_mask', None) or getattr(p, 'image_mask', None) or getattr(p, 'mask', None)\n    if mask_image is not None:\n        task_args['mask_image'] = mask_image\n\n    if debug_enabled:\n        debug_log(f'Process task specific args: {task_args}')\n    return task_args\n\n\ndef task_specific_kwargs(p, model):\n    model_cls = model.__class__.__name__\n    vae_scale_factor = sd_vae.get_vae_scale_factor(model)\n    task_args = {}\n    is_img2img_model = bool('Zero123' in model_cls)\n    task_type = sd_models.get_diffusers_task(model)\n    if len(getattr(p, 'init_images', [])) > 0:\n        if isinstance(p.init_images[0], str):\n            p.init_images = [helpers.decode_base64_to_image(i, quiet=True) for i in p.init_images]\n        if isinstance(p.init_images[0], Image.Image):\n            p.init_images = [i.convert('RGB') if i.mode != 'RGB' else i for i in p.init_images if i is not None]\n    width, height = processing_helpers.resize_init_images(p)\n    if (task_type == sd_models.DiffusersTaskType.TEXT_2_IMAGE or len(getattr(p, 'init_images', [])) == 0) and not is_img2img_model and 'video' not in p.ops:\n        p.ops.append('txt2img')\n        if hasattr(p, 'width') and hasattr(p, 'height'):\n            task_args = {\n                'width': width,\n                'height': height,\n            }\n    elif (task_type == sd_models.DiffusersTaskType.IMAGE_2_IMAGE or is_img2img_model) and len(getattr(p, 'init_images', [])) > 0:\n        if shared.sd_model_type == 'sdxl' and hasattr(model, 'register_to_config'):\n            if model_cls in sd_models.i2i_pipes:\n                pass\n            else:\n                model.register_to_config(requires_aesthetics_score = False)\n        if 'hires' not in p.ops:\n            p.ops.append('img2img')\n        if p.vae_type == 'Remote':\n            from modules.vae.sd_vae_remote import remote_encode\n            p.init_images = remote_encode(p.init_images)\n        task_args = {\n            'image': p.init_images,\n            'strength': p.denoising_strength,\n        }\n        if model_cls == 'FluxImg2ImgPipeline' or model_cls == 'FluxKontextPipeline': # needs explicit width/height\n            if torch.is_tensor(p.init_images[0]):\n                p.width = p.init_images[0].shape[-1] * vae_scale_factor\n                p.height = p.init_images[0].shape[-2] * vae_scale_factor\n            else:\n                p.width = width\n                p.height = height\n            if model_cls == 'FluxKontextPipeline':\n                aspect_ratio = p.width / p.height\n                max_area = max(p.width, p.height)**2\n                p.width = round((max_area * aspect_ratio) ** 0.5)\n                p.height = round((max_area / aspect_ratio) ** 0.5)\n                p.width = p.width // vae_scale_factor * vae_scale_factor\n                p.height = p.height // vae_scale_factor * vae_scale_factor\n                task_args['max_area'] = max_area\n            task_args['width'], task_args['height'] = p.width, p.height\n        elif model_cls == 'OmniGenPipeline' or model_cls == 'OmniGen2Pipeline':\n            p.width = width\n            p.height = height\n            task_args = {\n                'width': p.width,\n                'height': p.height,\n                'input_images': [p.init_images], # omnigen expects list-of-lists\n            }\n    elif task_type == sd_models.DiffusersTaskType.INSTRUCT and len(getattr(p, 'init_images', [])) > 0:\n        p.ops.append('instruct')\n        task_args = {\n            'width': width if hasattr(p, 'width') else None,\n            'height': height if hasattr(p, 'height') else None,\n            'image': p.init_images,\n            'strength': p.denoising_strength,\n        }\n    elif (task_type == sd_models.DiffusersTaskType.INPAINTING or is_img2img_model) and len(getattr(p, 'init_images', [])) > 0:\n        if shared.sd_model_type == 'sdxl' and hasattr(model, 'register_to_config'):\n            if model_cls in [sd_models.i2i_pipes]:\n                pass\n            else:\n                model.register_to_config(requires_aesthetics_score = False)\n        if p.detailer_enabled:\n            p.ops.append('detailer')\n        else:\n            p.ops.append('inpaint')\n        mask_image = p.task_args.get('image_mask', None) or getattr(p, 'image_mask', None) or getattr(p, 'mask', None)\n        if p.vae_type == 'Remote':\n            from modules.vae.sd_vae_remote import remote_encode\n            p.init_images = remote_encode(p.init_images)\n            # mask_image = remote_encode(mask_image)\n        task_args = {\n            'image': p.init_images,\n            'mask_image': mask_image,\n            'strength': p.denoising_strength,\n            'height': height,\n            'width': width,\n        }\n\n    # model specific args\n    if ('QwenImageEdit' in model_cls) and (p.init_images is None or len(p.init_images) == 0):\n        task_args['image'] = [Image.new('RGB', (p.width, p.height), (0, 0, 0))] # monkey-patch so qwen-image-edit pipeline does not error-out on t2i\n    if ('QwenImageEditPlusPipeline' in model_cls) and (p.init_control is not None) and (len(p.init_control) > 0):\n        task_args['image'] += p.init_control\n    if ('QwenImageLayeredPipeline' in model_cls) and (p.init_images is not None) and (len(p.init_images) > 0):\n        task_args['image'] = p.init_images[0].convert('RGBA')\n    if ('Flux2' in model_cls) and (p.init_control is not None) and (len(p.init_control) > 0):\n        task_args['image'] += p.init_control\n    if ('LatentConsistencyModelPipeline' in model_cls) and (len(p.init_images) > 0):\n        p.ops.append('lcm')\n        init_latents = [processing_vae.vae_encode(image, model=shared.sd_model, vae_type=p.vae_type).squeeze(dim=0) for image in p.init_images]\n        init_latent = torch.stack(init_latents, dim=0).to(shared.device)\n        init_noise = p.denoising_strength * processing.create_random_tensors(init_latent.shape[1:], seeds=p.all_seeds, subseeds=p.all_subseeds, subseed_strength=p.subseed_strength, p=p)\n        init_latent = (1 - p.denoising_strength) * init_latent + init_noise\n        task_args = {\n            'latents': init_latent.to(model.dtype),\n            'width': p.width,\n            'height': p.height,\n        }\n    if ('WanImageToVideoPipeline' in model_cls) or ('ChronoEditPipeline' in model_cls):\n        if (p.init_images is not None) and (len(p.init_images) > 0):\n            task_args['image'] = p.init_images[0]\n        else:\n            task_args['image'] = Image.new('RGB', (p.width, p.height), (0, 0, 0)) # monkey-patch so wan-i2i pipeline does not error-out on t2i\n    if ('WanVACEPipeline' in model_cls) and (p.init_images is not None) and (len(p.init_images) > 0):\n        task_args['reference_images'] = p.init_images\n    if ('GoogleNanoBananaPipeline' in model_cls) and (p.init_images is not None) and (len(p.init_images) > 0):\n        task_args['image'] = p.init_images[0]\n    if ('GlmImagePipeline' in model_cls) and (p.init_images is not None) and (len(p.init_images) > 0):\n        task_args['image'] = p.init_images\n    if 'BlipDiffusionPipeline' in model_cls:\n        if len(p.init_images) == 0:\n            shared.log.error('BLiP diffusion requires init image')\n            return task_args\n        task_args = {\n            'reference_image': p.init_images[0],\n            'source_subject_category': getattr(p, 'negative_prompt', '').split()[-1],\n            'target_subject_category': getattr(p, 'prompt', '').split()[-1],\n            'output_type': 'pil',\n        }\n\n    if debug_enabled:\n        debug_log(f'Process task specific args: {task_args}')\n    return task_args\n\n\ndef get_params(model):\n    if hasattr(model, 'blocks') and hasattr(model.blocks, 'inputs'): # modular pipeline\n        possible = [input_param.name for input_param in model.blocks.inputs]\n        return possible\n    else:\n        signature = inspect.signature(type(model).__call__, follow_wrapped=True)\n        possible = list(signature.parameters)\n        return possible\n\n\ndef set_pipeline_args(p, model, prompts:list, negative_prompts:list, prompts_2:typing.Optional[list]=None, negative_prompts_2:typing.Optional[list]=None, prompt_attention:typing.Optional[str]=None, desc:typing.Optional[str]='', **kwargs):\n    t0 = time.time()\n    shared.sd_model = sd_models.apply_balanced_offload(shared.sd_model)\n    argsid = shared.state.begin('Params')\n    apply_circular(p.tiling, model)\n    args = {}\n    has_vae = hasattr(model, 'vae') or (hasattr(model, 'pipe') and hasattr(model.pipe, 'vae'))\n    cls = model.__class__.__name__\n    if hasattr(model, 'pipe') and not hasattr(model, 'no_recurse'): # recurse\n        model = model.pipe\n        has_vae = has_vae or hasattr(model, 'vae')\n    if hasattr(model, \"set_progress_bar_config\"):\n        if disable_pbar:\n            model.set_progress_bar_config(bar_format='Progress {rate_fmt}{postfix} {bar} {percentage:3.0f}% {n_fmt}/{total_fmt} {elapsed} {remaining} ' + '\\x1b[38;5;71m' + desc, ncols=80, colour='#327fba', disable=disable_pbar)\n        else:\n            model.set_progress_bar_config(bar_format='Progress {rate_fmt}{postfix} {bar} {percentage:3.0f}% {n_fmt}/{total_fmt} {elapsed} {remaining} ' + '\\x1b[38;5;71m' + desc, ncols=80, colour='#327fba')\n\n    possible = get_params(model)\n\n    if debug_enabled:\n        debug_log(f'Process pipeline possible: {possible}')\n    steps = kwargs.get(\"num_inference_steps\", None) or len(getattr(p, 'timesteps', ['1']))\n    clip_skip = kwargs.pop(\"clip_skip\", 1)\n\n    prompt_attention, args = set_prompt(p, args, possible, cls, prompt_attention, steps, clip_skip, prompts, negative_prompts, prompts_2, negative_prompts_2)\n\n    if 'clip_skip' in possible:\n        if clip_skip == 1:\n            pass # clip_skip = None\n        else:\n            args['clip_skip'] = clip_skip - 1\n\n    if shared.opts.lora_apply_te:\n        extra_networks.activate(p, include=['text_encoder', 'text_encoder_2', 'text_encoder_3'])\n\n    if 'complex_human_instruction' in possible:\n        chi = shared.opts.te_complex_human_instruction\n        p.extra_generation_params[\"CHI\"] = chi\n        if not chi:\n            args['complex_human_instruction'] = None\n    if 'use_resolution_binning' in possible:\n        args['use_resolution_binning'] = False\n    if 'use_mask_in_transformer' in possible:\n        args['use_mask_in_transformer'] = shared.opts.te_use_mask\n\n    timesteps = re.split(',| ', shared.opts.schedulers_timesteps)\n    if len(timesteps) > 2:\n        if ('timesteps' in possible) and hasattr(model.scheduler, 'set_timesteps') and (\"timesteps\" in set(inspect.signature(model.scheduler.set_timesteps).parameters.keys())):\n            p.timesteps = [int(x) for x in timesteps if x.isdigit()]\n            p.steps = len(timesteps)\n            args['timesteps'] = p.timesteps\n            shared.log.debug(f'Sampler: steps={len(p.timesteps)} timesteps={p.timesteps}')\n        elif ('sigmas' in possible) and hasattr(model.scheduler, 'set_timesteps') and (\"sigmas\" in set(inspect.signature(model.scheduler.set_timesteps).parameters.keys())):\n            p.timesteps = [float(x)/1000.0 for x in timesteps if x.isdigit()]\n            p.steps = len(p.timesteps)\n            args['sigmas'] = p.timesteps\n            shared.log.debug(f'Sampler: steps={len(p.timesteps)} sigmas={p.timesteps}')\n        else:\n            shared.log.warning(f'Sampler: cls={model.scheduler.__class__.__name__} timesteps not supported')\n\n    if hasattr(model, 'scheduler') and hasattr(model.scheduler, 'noise_sampler_seed') and hasattr(model.scheduler, 'noise_sampler'):\n        model.scheduler.noise_sampler = None # noise needs to be reset instead of using cached values\n        model.scheduler.noise_sampler_seed = p.seeds # some schedulers have internal noise generator and do not use pipeline generator\n    if 'seed' in possible and p.seed is not None:\n        args['seed'] = p.seed\n    if 'noise_sampler_seed' in possible and p.seeds is not None:\n        args['noise_sampler_seed'] = p.seeds\n    if 'guidance_scale' in possible and p.cfg_scale is not None and p.cfg_scale > 0:\n        args['guidance_scale'] = p.cfg_scale\n    if 'img_guidance_scale' in possible and hasattr(p, 'image_cfg_scale') and p.image_cfg_scale is not None and p.image_cfg_scale > 0:\n        args['img_guidance_scale'] = p.image_cfg_scale\n    if 'generator' in possible:\n        generator = get_generator(p)\n        args['generator'] = generator\n    else:\n        generator = None\n    if 'latents' in possible and getattr(p, \"init_latent\", None) is not None:\n        if sd_models.get_diffusers_task(model) == sd_models.DiffusersTaskType.TEXT_2_IMAGE:\n            args['latents'] = p.init_latent\n    if 'output_type' in possible:\n        if not has_vae:\n            kwargs['output_type'] = 'np' # only set latent if model has vae\n\n    # model specific\n    if 'Kandinsky' in model.__class__.__name__ or 'Cosmos2' in model.__class__.__name__ or 'Anima' in model.__class__.__name__ or 'OmniGen2' in model.__class__.__name__:\n        kwargs['output_type'] = 'np' # only set latent if model has vae\n    if 'StableCascade' in model.__class__.__name__:\n        kwargs.pop(\"guidance_scale\") # remove\n        kwargs.pop(\"num_inference_steps\") # remove\n        if 'prior_num_inference_steps' in possible:\n            args[\"prior_num_inference_steps\"] = p.steps\n            args[\"num_inference_steps\"] = p.refiner_steps\n        if 'prior_guidance_scale' in possible:\n            args[\"prior_guidance_scale\"] = p.cfg_scale\n        if 'decoder_guidance_scale' in possible:\n            args[\"decoder_guidance_scale\"] = p.image_cfg_scale\n    if 'Flex2' in model.__class__.__name__:\n        if len(getattr(p, 'init_images', [])) > 0:\n            args['inpaint_image'] = p.init_images[0] if isinstance(p.init_images, list) else p.init_images\n            args['inpaint_mask'] = Image.new('L', args['inpaint_image'].size, int(p.denoising_strength * 255))\n            args['control_image'] = args['inpaint_image'].convert('L').convert('RGB') # will be interpreted as depth\n            args['control_strength'] = p.denoising_strength\n            args['width'] = p.width\n            args['height'] = p.height\n    if 'WanVACEPipeline' in model.__class__.__name__:\n        if isinstance(args['prompt'], list):\n            args['prompt'] = args['prompt'][0] if len(args['prompt']) > 0 else ''\n        if isinstance(args.get('negative_prompt', None), list):\n            args['negative_prompt'] = args['negative_prompt'][0] if len(args['negative_prompt']) > 0 else ''\n        if isinstance(args['generator'], list) and len(args['generator']) > 0:\n            args['generator'] = args['generator'][0]\n\n    # set callbacks\n    if 'prior_callback_steps' in possible:  # Wuerstchen / Cascade\n        args['prior_callback_steps'] = 1\n    elif 'callback_steps' in possible:\n        args['callback_steps'] = 1\n\n    set_callbacks_p(p)\n    if 'prior_callback_on_step_end' in possible: # Wuerstchen / Cascade\n        args['prior_callback_on_step_end'] = diffusers_callback\n        if 'prior_callback_on_step_end_tensor_inputs' in possible:\n            args['prior_callback_on_step_end_tensor_inputs'] = ['latents']\n    elif 'callback_on_step_end' in possible:\n        args['callback_on_step_end'] = diffusers_callback\n        if 'callback_on_step_end_tensor_inputs' in possible:\n            if 'HiDreamImage' in model.__class__.__name__: # uses prompt_embeds_t5 and prompt_embeds_llama3 instead\n                args['callback_on_step_end_tensor_inputs'] = model._callback_tensor_inputs # pylint: disable=protected-access\n            elif 'prompt_embeds' in possible and 'negative_prompt_embeds' in possible and hasattr(model, '_callback_tensor_inputs'):\n                args['callback_on_step_end_tensor_inputs'] = model._callback_tensor_inputs # pylint: disable=protected-access\n            else:\n                args['callback_on_step_end_tensor_inputs'] = ['latents']\n    elif 'callback' in possible:\n        args['callback'] = diffusers_callback_legacy\n\n    if 'image' in kwargs:\n        if isinstance(kwargs['image'], list) and isinstance(kwargs['image'][0], Image.Image):\n            p.init_images = kwargs['image']\n        if isinstance(kwargs['image'], Image.Image):\n            p.init_images = [kwargs['image']]\n        if isinstance(kwargs['image'], torch.Tensor):\n            p.init_images = kwargs['image']\n\n    # handle remaining args\n    for arg in kwargs:\n        if arg in possible: # add kwargs\n            if type(kwargs[arg]) == float or type(kwargs[arg]) == int:\n                if kwargs[arg] <= -1: # skip -1 as default value\n                    continue\n            args[arg] = kwargs[arg]\n\n    # optional preprocess\n    if hasattr(model, 'preprocess') and callable(model.preprocess):\n        model.preprocess(p, args)\n\n\n    # handle task specific args\n    if sd_models.get_diffusers_task(model) == sd_models.DiffusersTaskType.MODULAR:\n        task_kwargs = task_modular_kwargs(p, model)\n    else:\n        task_kwargs = task_specific_kwargs(p, model)\n\n    pipe_args = getattr(p, 'task_args', {})\n    model_args = getattr(model, 'task_args', {})\n    task_kwargs.update(pipe_args or {})\n    task_kwargs.update(model_args or {})\n    if debug_enabled:\n        debug_log(f'Process task args: {task_kwargs}')\n    for k, v in task_kwargs.items():\n        if k in possible:\n            args[k] = v\n        else:\n            debug_log(f'Process unknown task args: {k}={v}')\n\n    # handle cross-attention args\n    cross_attention_args = getattr(p, 'cross_attention_kwargs', {})\n    if debug_enabled:\n        debug_log(f'Process cross-attention args: {cross_attention_args}')\n    for k, v in cross_attention_args.items():\n        if args.get('cross_attention_kwargs', None) is None:\n            args['cross_attention_kwargs'] = {}\n        args['cross_attention_kwargs'][k] = v\n\n    # handle missing resolution\n    if args.get('image', None) is not None and ('width' not in args or 'height' not in args):\n        if 'width' in possible and 'height' in possible:\n            vae_scale_factor = sd_vae.get_vae_scale_factor(model)\n            if isinstance(args['image'], torch.Tensor) or isinstance(args['image'], np.ndarray):\n                if args['image'].shape[-1] == 3: # nhwc\n                    args['width'] = args['image'].shape[-2]\n                    args['height'] = args['image'].shape[-3]\n                elif args['image'].shape[-3] == 3: # nchw\n                    args['width'] = args['image'].shape[-1]\n                    args['height'] = args['image'].shape[-2]\n                else: # assume latent\n                    args['width'] = vae_scale_factor * args['image'].shape[-1]\n                    args['height'] = vae_scale_factor * args['image'].shape[-2]\n            elif isinstance(args['image'], Image.Image):\n                args['width'] = args['image'].width\n                args['height'] = args['image'].height\n            elif isinstance(args['image'][0], torch.Tensor) or isinstance(args['image'][0], np.ndarray):\n                args['width'] = vae_scale_factor * args['image'][0].shape[-1]\n                args['height'] = vae_scale_factor * args['image'][0].shape[-2]\n            else:\n                args['width'] = vae_scale_factor * math.ceil(args['image'][0].width / vae_scale_factor)\n                args['height'] = vae_scale_factor * math.ceil(args['image'][0].height / vae_scale_factor)\n    if 'max_area' in possible and 'width' in args and 'height' in args and 'max_area' not in args:\n        args['max_area'] = args['width'] * args['height']\n\n    # handle implicit controlnet\n    if ('control_image' in possible) and ('control_image' not in args) and ('image' in args):\n        if sd_models.get_diffusers_task(model) != sd_models.DiffusersTaskType.MODULAR:\n            debug_log('Process: set control image')\n            args['control_image'] = args['image']\n\n    sd_hijack_hypertile.hypertile_set(p, hr=len(getattr(p, 'init_images', [])) > 0)\n\n    # debug info\n    clean = args.copy()\n    clean.pop('cross_attention_kwargs', None)\n    clean.pop('callback', None)\n    clean.pop('callback_steps', None)\n    clean.pop('callback_on_step_end', None)\n    clean.pop('callback_on_step_end_tensor_inputs', None)\n    if 'prompt' in clean and clean['prompt'] is not None:\n        clean['prompt'] = len(clean['prompt'])\n    if 'negative_prompt' in clean and clean['negative_prompt'] is not None:\n        clean['negative_prompt'] = len(clean['negative_prompt'])\n    if generator is not None:\n        clean['generator'] = f'{generator[0].device}:{[g.initial_seed() for g in generator]}'\n    clean['parser'] = prompt_attention\n    for k, v in clean.copy().items():\n        if v is None:\n            clean[k] = None\n        elif isinstance(v, torch.Tensor) or isinstance(v, np.ndarray):\n            clean[k] = v.shape\n        elif isinstance(v, list) and len(v) > 0 and (isinstance(v[0], torch.Tensor) or isinstance(v[0], np.ndarray)):\n            clean[k] = [x.shape for x in v]\n        elif not debug_enabled and k.endswith('_embeds'):\n            del clean[k]\n            clean['prompt'] = 'embeds'\n    task = str(sd_models.get_diffusers_task(model)).replace('DiffusersTaskType.', '')\n    shared.log.info(f'{desc}: pipeline={model.__class__.__name__} task={task} batch={p.iteration + 1}/{p.n_iter}x{p.batch_size} set={clean}')\n\n    if p.hdr_clamp or p.hdr_maximize or p.hdr_brightness != 0 or p.hdr_color != 0 or p.hdr_sharpen != 0:\n        shared.log.debug(f'HDR: clamp={p.hdr_clamp} maximize={p.hdr_maximize} brightness={p.hdr_brightness} color={p.hdr_color} sharpen={p.hdr_sharpen} threshold={p.hdr_threshold} boundary={p.hdr_boundary} max={p.hdr_max_boundary} center={p.hdr_max_center}')\n    if shared.cmd_opts.profile:\n        t1 = time.time()\n        shared.log.debug(f'Profile: pipeline args: {t1-t0:.2f}')\n    if debug_enabled:\n        debug_log(f'Process pipeline args: {args}')\n\n    _args = {}\n    for k, v in args.items(): # pipeline may modify underlying args\n        if isinstance(v, Image.Image):\n            _args[k] = v.copy()\n        elif (isinstance(v, list) and len(v) > 0 and isinstance(v[0], Image.Image)):\n            _args[k] = [i.copy() for i in v]\n        else:\n            _args[k] = v\n\n    shared.state.end(argsid)\n    return _args\n"
  },
  {
    "path": "modules/processing_callbacks.py",
    "content": "import typing\nimport os\nimport time\nimport torch\nimport numpy as np\nfrom modules import shared, devices, processing_correction, timer, prompt_parser_diffusers\n\n\np = None\ndebug = os.environ.get('SD_CALLBACK_DEBUG', None) is not None\ndebug_callback = shared.log.trace if debug else lambda *args, **kwargs: None\nwarned = False\n\n\ndef set_callbacks_p(processing):\n    global p, warned # pylint: disable=global-statement\n    p = processing\n    warned = False\n\n\ndef prompt_callback(step, kwargs):\n    if prompt_parser_diffusers.embedder is None or 'prompt_embeds' not in kwargs:\n        return kwargs\n    try:\n        prompt_embeds = prompt_parser_diffusers.embedder('prompt_embeds', step + 1)\n        negative_prompt_embeds = prompt_parser_diffusers.embedder('negative_prompt_embeds', step + 1)\n        if p.cfg_scale > 1:  # Perform guidance\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds], dim=0)  # Combined embeds\n        assert prompt_embeds.shape == kwargs['prompt_embeds'].shape, f\"prompt_embed shape mismatch {kwargs['prompt_embeds'].shape} {prompt_embeds.shape}\"\n        kwargs['prompt_embeds'] = prompt_embeds\n    except Exception as e:\n        debug_callback(f\"Callback: type=prompt {e}\")\n    return kwargs\n\n\ndef diffusers_callback_legacy(step: int, timestep: int, latents: typing.Union[torch.FloatTensor, np.ndarray]):\n    if p is None:\n        return\n    if isinstance(latents, np.ndarray): # latents from Onnx pipelines is ndarray.\n        latents = torch.from_numpy(latents)\n    shared.state.sampling_step = step\n    shared.state.current_latent = latents\n    latents = processing_correction.correction_callback(p, timestep, {'latents': latents})\n    if shared.state.interrupted or shared.state.skipped:\n        raise AssertionError('Interrupted...')\n    if shared.state.paused:\n        shared.log.debug('Sampling paused')\n        while shared.state.paused:\n            if shared.state.interrupted or shared.state.skipped:\n                raise AssertionError('Interrupted...')\n            time.sleep(0.1)\n\n\ndef diffusers_callback(pipe, step: int = 0, timestep: int = 0, kwargs: dict = {}):\n    t0 = time.time()\n    if devices.backend == \"ipex\":\n        torch.xpu.synchronize(devices.device)\n    elif devices.backend in {\"cuda\", \"zluda\", \"rocm\"}:\n        torch.cuda.synchronize(devices.device)\n    latents = kwargs.get('latents', None)\n    if debug:\n        debug_callback(f'Callback: step={step} timestep={timestep} latents={latents.shape if latents is not None else None} kwargs={list(kwargs)}')\n    if shared.state.sampling_steps == 0 and getattr(pipe, 'num_timesteps', 0) > 0:\n        shared.state.sampling_steps = pipe.num_timesteps\n    shared.state.step()\n    if shared.state.interrupted or shared.state.skipped:\n        raise AssertionError('Interrupted...')\n    if shared.state.paused:\n        shared.log.debug('Sampling paused')\n        while shared.state.paused:\n            if shared.state.interrupted or shared.state.skipped:\n                raise AssertionError('Interrupted...')\n            time.sleep(0.1)\n    if latents is None:\n        return kwargs\n    elif shared.opts.nan_skip:\n        assert not torch.isnan(latents[..., 0, 0]).all(), f'NaN detected at step {step}: Skipping...'\n    if p is None:\n        return kwargs\n    if len(getattr(p, 'ip_adapter_names', [])) > 0 and p.ip_adapter_names[0] != 'None':\n        ip_adapter_scales = list(p.ip_adapter_scales)\n        ip_adapter_starts = list(p.ip_adapter_starts)\n        ip_adapter_ends = list(p.ip_adapter_ends)\n        if any(end != 1 for end in ip_adapter_ends) or any(start != 0 for start in ip_adapter_starts):\n            if 'Flux' in pipe.__class__.__name__:\n                ip_adapter_scales = [(ip_adapter_starts[0] + (ip_adapter_ends[0] - ip_adapter_starts[0]) * (i / (19 - 1))) for i in range(19)]\n            else:\n                for i in range(len(ip_adapter_scales)):\n                    ip_adapter_scales[i] *= float(step >= pipe.num_timesteps * ip_adapter_starts[i])\n                    ip_adapter_scales[i] *= float(step <= pipe.num_timesteps * ip_adapter_ends[i])\n            debug_callback(f\"Callback: IP Adapter scales={ip_adapter_scales}\")\n            pipe.set_ip_adapter_scale(ip_adapter_scales)\n    if step != getattr(pipe, 'num_timesteps', 0):\n        kwargs = processing_correction.correction_callback(p, timestep, kwargs, initial=step == 0)\n    kwargs = prompt_callback(step, kwargs)  # monkey patch for diffusers callback issues\n\n    if step == 0:\n        pipe._cfg_end_applied = False  # pylint: disable=protected-access\n\n    cfg_end = getattr(p, \"cfg_end\", 1.0) or 1.0\n    total_steps = getattr(pipe, \"num_timesteps\", 0)\n    target_step = int(total_steps * cfg_end) if total_steps else 0\n    if (cfg_end < 1.0) and not getattr(pipe, \"_cfg_end_applied\", False) and (step >= target_step):\n        pipe._cfg_end_applied = True # pylint: disable=protected-access\n        if \"PAG\" in shared.sd_model.__class__.__name__:\n            pipe._guidance_scale = 1.001 if pipe._guidance_scale > 1 else pipe._guidance_scale  # pylint: disable=protected-access\n            pipe._pag_scale = 0.001  # pylint: disable=protected-access\n        else:\n            pipe._guidance_scale = 0.0  # pylint: disable=protected-access\n            for key in [\"prompt_embeds\", \"negative_prompt_embeds\", \"add_text_embeds\", \"add_time_ids\"]:\n                tensor = kwargs.get(key, None)\n                if tensor is not None and hasattr(tensor, \"chunk\") and tensor.shape[0] % 2 == 0:\n                    kwargs[key] = tensor.chunk(2)[-1]\n    try:\n        current_noise_pred = kwargs.get(\"noise_pred\", None)\n        if current_noise_pred is None:\n            current_noise_pred = kwargs.get(\"predicted_image_embedding\", None)\n\n        if hasattr(pipe, \"_unpack_latents\") and hasattr(pipe, \"vae_scale_factor\"): # FLUX.1\n            if p.hr_resize_mode > 0 and (p.hr_upscaler != 'None' or p.hr_resize_mode == 5) and p.is_hr_pass:\n                width = max(getattr(p, 'width', 0), getattr(p, 'hr_upscale_to_x', 0))\n                height = max(getattr(p, 'height', 0), getattr(p, 'hr_upscale_to_y', 0))\n            else:\n                width = getattr(p, 'width', 1024)\n                height = getattr(p, 'height', 1024)\n            shared.state.current_latent = pipe._unpack_latents(kwargs['latents'], height, width, pipe.vae_scale_factor) # pylint: disable=protected-access\n            if current_noise_pred is not None:\n                shared.state.current_noise_pred = pipe._unpack_latents(current_noise_pred, height, width, pipe.vae_scale_factor) # pylint: disable=protected-access\n            else:\n                shared.state.current_noise_pred = current_noise_pred\n        elif hasattr(pipe, \"_unpatchify_latents\"): # FLUX.2 - unpack [B, seq, patch_ch] to [B, ch, H, W]\n            vae_scale = getattr(pipe, 'vae_scale_factor', 8)\n            if p.hr_resize_mode > 0 and (p.hr_upscaler != 'None' or p.hr_resize_mode == 5) and p.is_hr_pass:\n                width = max(getattr(p, 'width', 0), getattr(p, 'hr_upscale_to_x', 0))\n                height = max(getattr(p, 'height', 0), getattr(p, 'hr_upscale_to_y', 0))\n            else:\n                width = getattr(p, 'width', 1024)\n                height = getattr(p, 'height', 1024)\n            latents = kwargs['latents']\n            if len(latents.shape) == 3:  # packed format [B, seq_len, patch_channels]\n                b, seq_len, patch_ch = latents.shape\n                channels = patch_ch // 4  # 4 = 2x2 patch\n                h_patches = height // vae_scale // 2\n                w_patches = width // vae_scale // 2\n                if h_patches * w_patches != seq_len:  # fallback to square assumption\n                    h_patches = w_patches = int(seq_len ** 0.5)\n                # [B, h*w, C*4] -> [B, h, w, C, 2, 2] -> [B, C, h, 2, w, 2] -> [B, C, H, W]\n                latents = latents.view(b, h_patches, w_patches, channels, 2, 2)\n                latents = latents.permute(0, 3, 1, 4, 2, 5).reshape(b, channels, h_patches * 2, w_patches * 2)\n            shared.state.current_latent = latents\n            if current_noise_pred is not None and len(current_noise_pred.shape) == 3:\n                b, seq_len, patch_ch = current_noise_pred.shape\n                channels = patch_ch // 4\n                h_patches = height // vae_scale // 2\n                w_patches = width // vae_scale // 2\n                if h_patches * w_patches != seq_len:\n                    h_patches = w_patches = int(seq_len ** 0.5)\n                current_noise_pred = current_noise_pred.view(b, h_patches, w_patches, channels, 2, 2)\n                current_noise_pred = current_noise_pred.permute(0, 3, 1, 4, 2, 5).reshape(b, channels, h_patches * 2, w_patches * 2)\n            shared.state.current_noise_pred = current_noise_pred\n        else:\n            shared.state.current_latent = kwargs['latents']\n            shared.state.current_noise_pred = current_noise_pred\n\n        if hasattr(pipe, \"scheduler\") and hasattr(pipe.scheduler, \"sigmas\") and hasattr(pipe.scheduler, \"step_index\") and pipe.scheduler.step_index is not None:\n            try:\n                shared.state.current_sigma = pipe.scheduler.sigmas[pipe.scheduler.step_index-1]\n                shared.state.current_sigma_next = pipe.scheduler.sigmas[pipe.scheduler.step_index]\n                if (shared.opts.schedulers_sigma_adjust != 1.0) and (timestep > 1000 * shared.opts.schedulers_sigma_adjust_min) and (timestep < 1000 * shared.opts.schedulers_sigma_adjust_max):\n                    pipe.scheduler.sigmas[pipe.scheduler.step_index+1] = pipe.scheduler.sigmas[pipe.scheduler.step_index+1] * shared.opts.schedulers_sigma_adjust\n                    p.extra_generation_params[\"Sigma adjust\"] = shared.opts.schedulers_sigma_adjust\n            except Exception:\n                pass\n    except Exception as e:\n        global warned # pylint: disable=global-statement\n        if not warned:\n            shared.log.error(f'Callback: {e}')\n            warned = True\n        # from modules import errors\n        # errors.display(e, 'Callback')\n    if shared.cmd_opts.profile and shared.profiler is not None:\n        shared.profiler.step()\n    t1 = time.time()\n    timer.process.add('callback', t1 - t0)\n    return kwargs\n"
  },
  {
    "path": "modules/processing_class.py",
    "content": "import os\nimport sys\nimport inspect\nimport hashlib\nfrom typing import Any, Dict, List\nfrom dataclasses import dataclass, field\nimport numpy as np\nfrom PIL import Image, ImageOps\nfrom modules import shared, images, scripts_manager, masking, sd_models, sd_vae, processing_helpers\nfrom modules.paths import resolve_output_path\n\n\ndebug = shared.log.trace if os.environ.get('SD_PROCESS_DEBUG', None) is not None else lambda *args, **kwargs: None\n\n\n@dataclass(repr=False)\nclass StableDiffusionProcessing:\n    def __init__(self,\n                 sd_model_checkpoint: str = None, # # used only to set sd_model\n                 sd_model=None, # pylint: disable=unused-argument # local instance of sd_model\n                 # base params\n                 prompt: str = \"\",\n                 negative_prompt: str = \"\",\n                 seed: int = -1,\n                 subseed: int = -1,\n                 subseed_strength: float = 0,\n                 seed_resize_from_h: int = -1,\n                 seed_resize_from_w: int = -1,\n                 batch_size: int = 1,\n                 n_iter: int = 1,\n                 steps: int = 20,\n                 clip_skip: int = 1,\n                 width: int = 1024,\n                 height: int = 1024,\n                 # samplers\n                 sampler_index: int = None, # pylint: disable=unused-argument # used only to set sampler_name\n                 sampler_name: str = None,\n                 hr_sampler_name: str = None,\n                 eta: float = None,\n                 # modular guidance\n                 guidance_name: str = 'Default',\n                 guidance_scale: float = 6.0,\n                 guidance_rescale: float = 0.0,\n                 guidance_start: float = 0.0,\n                 guidance_stop: float = 1.0,\n                 # legacy guidance\n                 cfg_scale: float = 6.0,\n                 cfg_end: float = 1,\n                 diffusers_guidance_rescale: float = 0.0,\n                 pag_scale: float = 0.0,\n                 pag_adaptive: float = 0.5,\n                 # styles\n                 styles: List[str] = [],\n                 # vae\n                 tiling: bool = False,\n                 vae_type: str = 'Full',\n                 # other\n                 hidiffusion: bool = False,\n                 do_not_reload_embeddings: bool = False,\n                 restore_faces: bool = False,\n                 # detailer\n                 detailer_enabled: bool = False,\n                 detailer_prompt: str = '',\n                 detailer_negative: str = '',\n                 detailer_steps: int = 10,\n                 detailer_strength: float = 0.3,\n                 detailer_resolution: int = 1024,\n                 # hdr corrections\n                 hdr_mode: int = 0,\n                 hdr_brightness: float = 0,\n                 hdr_color: float = 0,\n                 hdr_sharpen: float = 0,\n                 hdr_clamp: bool = False,\n                 hdr_boundary: float = 4.0,\n                 hdr_threshold: float = 0.95,\n                 hdr_maximize: bool = False,\n                 hdr_max_center: float = 0.6,\n                 hdr_max_boundary: float = 1.0,\n                 hdr_color_picker: str = None,\n                 hdr_tint_ratio: float = 0,\n                 # img2img\n                 init_images: list = [],\n                 init_control: list = [],\n                 denoising_strength: float = 0.3,\n                 image_cfg_scale: float = None,\n                 initial_noise_multiplier: float = None, # pylint: disable=unused-argument # a1111 compatibility\n                 # resize\n                 scale_by: float = 1,\n                 selected_scale_tab: int = 0, # pylint: disable=unused-argument # a1111 compatibility\n                 resize_mode: int = 0,\n                 resize_name: str = 'None',\n                 resize_context: str = 'None',\n                 width_before:int = 0,\n                 width_after:int = 0,\n                 width_mask:int = 0,\n                 height_before:int = 0,\n                 height_after:int = 0,\n                 height_mask:int = 0,\n                 resize_name_before: str = 'None',\n                 resize_name_after: str = 'None',\n                 resize_name_mask: str = 'None',\n                 resize_mode_before: int = 0,\n                 resize_mode_after: int = 0,\n                 resize_mode_mask: int = 0,\n                 resize_context_before: str = 'None',\n                 resize_context_after: str = 'None',\n                 resize_context_mask: str = 'None',\n                 selected_scale_tab_before: int = 0,\n                 selected_scale_tab_after: int = 0,\n                 selected_scale_tab_mask: int = 0,\n                 scale_by_before: float = 1,\n                 scale_by_after: float = 1,\n                 scale_by_mask: float = 1,\n                 # inpaint\n                 mask: Any = None,\n                 latent_mask: Any = None,\n                 mask_for_overlay: Any = None,\n                 mask_blur: int = 4,\n                 paste_to: Any = None,\n                 inpainting_fill: int = 1, # obsolete\n                 inpaint_full_res: bool = False,\n                 inpaint_full_res_padding: int = 0,\n                 inpainting_mask_invert: int = 0,\n                 overlay_images: Any = None,\n                 # refiner\n                 enable_hr: bool = False,\n                 firstphase_width: int = 0,\n                 firstphase_height: int = 0,\n                 hr_scale: float = 2.0,\n                 hr_force: bool = False,\n                 hr_resize_mode: int = 0,\n                 hr_resize_context: str = 'None',\n                 hr_upscaler: str = None,\n                 hr_second_pass_steps: int = 0,\n                 hr_resize_x: int = 0,\n                 hr_resize_y: int = 0,\n                 hr_denoising_strength: float = 0.0,\n                 refiner_steps: int = 5,\n                 refiner_start: float = 0,\n                 refiner_prompt: str = '',\n                 refiner_negative: str = '',\n                 hr_refiner_start: float = 0,\n                 # prompt enhancer\n                 enhance_prompt: bool = False,\n                 # save options\n                 outpath_samples=None,\n                 outpath_grids=None,\n                 do_not_save_samples: bool = False,\n                 do_not_save_grid: bool = False,\n                 # xyz flag\n                 xyz: bool = False,\n                 # scripts\n                 script_args: list = [],\n                 # overrides\n                 override_settings: Dict[str, Any] = {},\n                 override_settings_restore_afterwards: bool = True,\n                 # metadata\n                 # extra_generation_params: Dict[Any, Any] = {},\n                 # task_args: Dict[str, Any] = {},\n                 # ops: List[str] = [],\n                 **kwargs,\n                ):\n\n        for k, v in kwargs.items():\n            setattr(self, k, v)\n\n        # extra args set by processing loop\n        self.task_args = {}\n        self.extra_generation_params = {}\n\n        # state items\n        self.state: str = ''\n        self.ops = []\n        self.skip = []\n        self.color_corrections = []\n        self.is_control = False\n        self.is_hr_pass = False\n        self.is_refiner_pass = False\n        self.is_api = False\n        self.scheduled_prompt = False\n        self.enhance_prompt = enhance_prompt\n        self.prompt_embeds = []\n        self.positive_pooleds = []\n        self.negative_embeds = []\n        self.negative_pooleds = []\n        self.prompt_attention_masks = []\n        self.negative_prompt_attention_masks = []\n        self.disable_extra_networks = False\n        self.iteration = 0\n        self.network_data = {}\n\n        # initializers\n        self.prompt = prompt\n        self.seed = seed\n        self.subseed = subseed\n        self.subseed_strength = subseed_strength\n        self.seed_resize_from_h = seed_resize_from_h\n        self.seed_resize_from_w = seed_resize_from_w\n        self.batch_size = batch_size\n        self.n_iter = n_iter\n        self.steps = steps\n        self.clip_skip = clip_skip\n        self.width = width\n        self.height = height\n        self.negative_prompt = negative_prompt\n        self.styles = styles\n        self.tiling = tiling\n        self.vae_type = vae_type\n        self.hidiffusion = hidiffusion\n        self.do_not_reload_embeddings = do_not_reload_embeddings\n        self.detailer_enabled = detailer_enabled\n        self.detailer_prompt = detailer_prompt\n        self.detailer_negative = detailer_negative\n        self.detailer_steps = detailer_steps\n        self.detailer_strength = detailer_strength\n        self.detailer_resolution = detailer_resolution\n        self.restore_faces = restore_faces\n        self.init_images = init_images\n        self.init_control = init_control\n        self.resize_mode = resize_mode\n        self.resize_name = resize_name\n        self.resize_context = resize_context\n        self.denoising_strength = denoising_strength\n        self.image_cfg_scale = image_cfg_scale\n        self.scale_by = scale_by\n        self.mask = mask\n        self.image_mask = mask # TODO processing: remove duplicate mask params\n        self.latent_mask = latent_mask\n        self.mask_blur = mask_blur\n        self.inpainting_fill = inpainting_fill\n        self.inpaint_full_res_padding = inpaint_full_res_padding\n        self.inpainting_mask_invert = inpainting_mask_invert\n        self.overlay_images = overlay_images\n        self.enable_hr = enable_hr\n        self.firstphase_width = firstphase_width\n        self.firstphase_height = firstphase_height\n        self.hr_scale = hr_scale\n        self.hr_force = hr_force\n        self.hr_resize_mode = hr_resize_mode\n        self.hr_resize_context = hr_resize_context\n        self.hr_upscaler = hr_upscaler\n        self.hr_second_pass_steps = hr_second_pass_steps\n        self.hr_resize_x = hr_resize_x\n        self.hr_resize_y = hr_resize_y\n        self.hr_upscale_to_x = hr_resize_x\n        self.hr_upscale_to_y = hr_resize_y\n        self.hr_denoising_strength = hr_denoising_strength\n        self.refiner_steps = refiner_steps\n        self.refiner_start = refiner_start\n        self.refiner_prompt = refiner_prompt\n        self.refiner_negative = refiner_negative\n        self.hr_refiner_start = hr_refiner_start\n        self.outpath_samples = outpath_samples\n        self.outpath_grids = outpath_grids\n        self.do_not_save_samples = do_not_save_samples\n        self.do_not_save_grid = do_not_save_grid\n        self.override_settings_restore_afterwards = override_settings_restore_afterwards\n        self.eta = eta\n        self.guidance_name = guidance_name\n        self.guidance_scale = guidance_scale\n        self.guidance_rescale = guidance_rescale\n        self.guidance_start = guidance_start\n        self.guidance_stop = guidance_stop\n        self.cfg_scale = cfg_scale\n        self.cfg_end = cfg_end\n        self.diffusers_guidance_rescale = diffusers_guidance_rescale\n        self.pag_scale = pag_scale\n        self.pag_adaptive = pag_adaptive\n        self.selected_scale_tab = selected_scale_tab\n        self.mask_for_overlay = mask_for_overlay\n        self.paste_to = paste_to\n        self.init_latent = None\n        self.width_before = width_before\n        self.width_after = width_after\n        self.width_mask = width_mask\n        self.height_before = height_before\n        self.height_after = height_after\n        self.height_mask = height_mask\n        self.resize_name_before = resize_name_before\n        self.resize_name_after = resize_name_after\n        self.resize_name_mask = resize_name_mask\n        self.resize_mode_before = resize_mode_before\n        self.resize_mode_after = resize_mode_after\n        self.resize_mode_mask = resize_mode_mask\n        self.resize_context_before = resize_context_before\n        self.resize_context_after = resize_context_after\n        self.resize_context_mask = resize_context_mask\n        self.selected_scale_tab_before = selected_scale_tab_before\n        self.selected_scale_tab_after = selected_scale_tab_after\n        self.selected_scale_tab_mask = selected_scale_tab_mask\n        self.scale_by_before = scale_by_before\n        self.scale_by_after = scale_by_after\n        self.scale_by_mask = scale_by_mask\n\n        # special handled items\n        if firstphase_width != 0 or firstphase_height != 0:\n            self.hr_upscale_to_x = self.width\n            self.hr_upscale_to_y = self.height\n            self.width = firstphase_width\n            self.height = firstphase_height\n        self.sampler_name = sampler_name or processing_helpers.get_sampler_name(sampler_index, img=True)\n        self.hr_sampler_name: str = hr_sampler_name if hr_sampler_name != 'Same as primary' else self.sampler_name\n        self.inpaint_full_res = inpaint_full_res if isinstance(inpaint_full_res, bool) else self.inpaint_full_res\n        self.inpaint_full_res = inpaint_full_res != 0 if isinstance(inpaint_full_res, int) else self.inpaint_full_res\n        try:\n            self.override_settings = {k: v for k, v in (override_settings or {}).items() if k not in shared.restricted_opts}\n        except Exception as e:\n            shared.log.error(f'Override: {override_settings} {e}')\n            self.override_settings = {}\n\n        self.prompts = []\n        self.negative_prompts = []\n        self.all_prompts = []\n        self.all_negative_prompts = []\n        self.seeds = []\n        self.subseeds = []\n        self.all_seeds = []\n        self.all_subseeds = []\n\n        # a1111 compatibility items\n        self.seed_enable_extras: bool = True\n        self.is_using_inpainting_conditioning = False # a111 compatibility\n        self.batch_index = 0\n        self.refiner_switch_at = 0\n        self.hr_prompt = ''\n        self.all_hr_prompts = []\n        self.hr_negative_prompt = ''\n        self.all_hr_negative_prompts = []\n        self.comments = {}\n        self.sampler = None\n        self.nmask = None\n        self.initial_noise_multiplier = initial_noise_multiplier or shared.opts.initial_noise_multiplier\n        self.image_conditioning = None\n        self.prompt_for_display: str = None\n\n        # scripts\n        self.scripts_value: scripts_manager.ScriptRunner = field(default=None, init=False)\n        self.script_args_value: list = field(default=None, init=False)\n        self.scripts_setup_complete: bool = field(default=False, init=False)\n        self.script_args = script_args\n        self.per_script_args = {}\n\n        # ip adapter\n        self.ip_adapter_names = []\n        self.ip_adapter_scales = [0.0]\n        self.ip_adapter_images = []\n        self.ip_adapter_starts = [0.0]\n        self.ip_adapter_ends = [1.0]\n        self.ip_adapter_crops = []\n\n        # hdr\n        self.hdr_mode=hdr_mode\n        self.hdr_brightness=hdr_brightness\n        self.hdr_color=hdr_color\n        self.hdr_sharpen=hdr_sharpen\n        self.hdr_clamp=hdr_clamp\n        self.hdr_boundary=hdr_boundary\n        self.hdr_threshold=hdr_threshold\n        self.hdr_maximize=hdr_maximize\n        self.hdr_max_center=hdr_max_center\n        self.hdr_max_boundary=hdr_max_boundary\n        self.hdr_color_picker=hdr_color_picker\n        self.hdr_tint_ratio=hdr_tint_ratio\n\n        # globals\n        self.embedder = None\n        self.override = None\n        self.scheduled_prompt: bool = False\n        self.prompt_embeds = []\n        self.positive_pooleds = []\n        self.negative_embeds = []\n        self.negative_pooleds = []\n        self.prompt_attention_masks = []\n        self.negative_prompt_attention_mask = []\n        self.xyz = xyz\n        self.abort = False\n\n        # set model\n        if sd_model_checkpoint is not None and len(sd_model_checkpoint) > 0:\n            from modules import sd_checkpoint\n            if sd_checkpoint.select_checkpoint(op='model', sd_model_checkpoint=sd_model_checkpoint) is None:\n                shared.log.error(f'Processing: model=\"{sd_model_checkpoint}\" not found')\n                self.abort = True\n            else:\n                shared.opts.sd_model_checkpoint = sd_model_checkpoint\n                sd_models.reload_model_weights()\n\n    def __repr__(self):\n        return f'{self.__class__.__name__}({\", \".join([f\"{k}={v}\" for k, v in self.__dict__.items() if k not in [\"scripts_value\", \"script_args_value\"]])})'\n\n    @property\n    def sd_model(self):\n        return shared.sd_model\n\n    @property\n    def scripts(self):\n        return self.scripts_value\n\n    @scripts.setter\n    def scripts(self, value):\n        self.scripts_value = value\n        if self.scripts_value and self.script_args_value and not self.scripts_setup_complete:\n            self.setup_scripts()\n\n    @property\n    def script_args(self):\n        return self.script_args_value\n\n    @script_args.setter\n    def script_args(self, value):\n        self.script_args_value = value\n        if self.scripts_value and self.script_args_value and not self.scripts_setup_complete:\n            self.setup_scripts()\n\n    def setup_scripts(self):\n        self.scripts_setup_complete = True\n        self.scripts.setup_scripts()\n\n    def comment(self, text):\n        self.comments[text] = 1\n\n    def init(self, all_prompts=None, all_seeds=None, all_subseeds=None):\n        pass\n\n    def close(self):\n        self.sampler = None\n        self.scripts = None\n\n\nclass StableDiffusionProcessingVideo(StableDiffusionProcessing):\n    def __init__(self, **kwargs):\n        self.prompt_template: str = None\n        self.frames: int = kwargs.pop('frames', 1)\n        self.vae_tile_frames: int = kwargs.pop('vae_tile_frames', 0)\n        self.video_engine: str = kwargs.pop('video_engine', None)\n        self.video_model: str = kwargs.pop('video_model', None)\n        self.scheduler_shift: float = 0.0\n        debug(f'Process init: mode={self.__class__.__name__} kwargs={kwargs}') # pylint: disable=protected-access\n        super().__init__(**kwargs)\n\nclass StableDiffusionProcessingTxt2Img(StableDiffusionProcessing):\n    def __init__(self, **kwargs):\n        debug(f'Process init: mode={self.__class__.__name__} kwargs={kwargs}') # pylint: disable=protected-access\n        super().__init__(**kwargs)\n\n    def init(self, all_prompts=None, all_seeds=None, all_subseeds=None):\n        shared.sd_model = sd_models.set_diffuser_pipe(self.sd_model, sd_models.DiffusersTaskType.TEXT_2_IMAGE)\n        self.width = self.width or 1024\n        self.height = self.height or 1024\n        if all_prompts is not None:\n            self.all_prompts = all_prompts\n        if all_seeds is not None:\n            self.all_seeds = all_seeds\n        if all_subseeds is not None:\n            self.all_subseeds = all_subseeds\n\n    def init_hr(self, scale = None, upscaler = None, force = False): # pylint: disable=unused-argument\n        scale = scale or self.hr_scale\n        upscaler = upscaler or self.hr_upscaler\n        if self.hr_resize_x == 0 and self.hr_resize_y == 0:\n            self.hr_upscale_to_x = int(self.width * scale)\n            self.hr_upscale_to_y = int(self.height * scale)\n        else:\n            if self.hr_resize_y == 0:\n                self.hr_upscale_to_x = int(self.hr_resize_x)\n                self.hr_upscale_to_y = int(self.hr_resize_x * self.height // self.width)\n            elif self.hr_resize_x == 0:\n                self.hr_upscale_to_x = int(self.hr_resize_y * self.width // self.height)\n                self.hr_upscale_to_y = int(self.hr_resize_y)\n            elif self.hr_resize_x > 0 and self.hr_resize_y > 0:\n                self.hr_upscale_to_x = int(self.hr_resize_x)\n                self.hr_upscale_to_y = int(self.hr_resize_y)\n        shared.log.debug(f'Init hires: upscaler=\"{self.hr_upscaler}\" sampler=\"{self.hr_sampler_name}\" resize={self.hr_resize_x}x{self.hr_resize_y} upscale={self.hr_upscale_to_x}x{self.hr_upscale_to_y}')\n\n\nclass StableDiffusionProcessingImg2Img(StableDiffusionProcessing):\n    def __init__(self, **kwargs):\n        debug(f'Process init: mode={self.__class__.__name__} kwargs={kwargs}') # pylint: disable=protected-access\n        super().__init__(**kwargs)\n\n    def init(self, all_prompts=None, all_seeds=None, all_subseeds=None):\n        if self.init_images is not None and len(self.init_images) > 0:\n            vae_scale_factor = sd_vae.get_vae_scale_factor()\n            if self.width is None or self.width == 0:\n                self.width = int(vae_scale_factor * (self.init_images[0].width * self.scale_by // vae_scale_factor))\n            if self.height is None or self.height == 0:\n                self.height = int(vae_scale_factor * (self.init_images[0].height * self.scale_by // vae_scale_factor))\n        if (getattr(self, 'image_mask', None) is not None) and ((len(self.image_mask) > 0) if isinstance(self.image_mask, list) else True):\n            shared.sd_model = sd_models.set_diffuser_pipe(self.sd_model, sd_models.DiffusersTaskType.INPAINTING)\n        elif (getattr(self, 'init_images', None) is not None) and ((len(self.init_images) > 0) if isinstance(self.init_images, list) else True):\n            shared.sd_model = sd_models.set_diffuser_pipe(self.sd_model, sd_models.DiffusersTaskType.IMAGE_2_IMAGE)\n\n        if all_prompts is not None:\n            self.all_prompts = all_prompts\n        if all_seeds is not None:\n            self.all_seeds = all_seeds\n        if all_subseeds is not None:\n            self.all_subseeds = all_subseeds\n        if self.image_mask is not None:\n            self.ops.append('inpaint')\n        elif self.init_images is not None and len(self.init_images) > 0:\n            self.ops.append('img2img')\n        crop_region = None\n\n        if type(self.image_mask) == list:\n            self.image_mask = self.image_mask[0]\n        if 'Control' in self.__class__.__name__:\n            self.image_mask = masking.run_mask(input_image=self.init_images, input_mask=self.image_mask, return_type='Grayscale', invert=self.inpainting_mask_invert==1) # blur/padding are handled in masking module\n        elif self.image_mask is not None:\n            self.image_mask = masking.run_mask(input_image=self.init_images, input_mask=self.image_mask, return_type='Grayscale', invert=self.inpainting_mask_invert==1, mask_blur=self.mask_blur, mask_padding=self.inpaint_full_res_padding) # old img2img\n        if self.inpaint_full_res and self.image_mask is not None: # mask only inpaint\n            self.mask_for_overlay = self.image_mask\n            mask = self.image_mask.convert('L')\n            crop_region = masking.get_crop_region(np.array(mask), self.inpaint_full_res_padding)\n            crop_region = masking.expand_crop_region(crop_region, self.width, self.height, mask.width, mask.height)\n            x1, y1, x2, y2 = crop_region\n            crop_mask = mask.crop(crop_region)\n            self.image_mask = images.resize_image(resize_mode=2, im=crop_mask, width=self.width, height=self.height)\n            self.paste_to = (x1, y1, x2-x1, y2-y1)\n        elif self.image_mask is not None: # full image inpaint\n            self.image_mask = images.resize_image(resize_mode=self.resize_mode, im=self.image_mask, width=self.width, height=self.height)\n            np_mask = np.array(self.image_mask)\n            np_mask = np.clip((np_mask.astype(np.float32)) * 2, 0, 255).astype(np.uint8)\n            self.mask_for_overlay = Image.fromarray(np_mask)\n        self.overlay_images = []\n\n        add_color_corrections = shared.opts.img2img_color_correction and self.color_corrections is None\n        if add_color_corrections:\n            self.color_corrections = []\n        processed_images = []\n        if self.init_images is None:\n            return\n        if not isinstance(self.init_images, list):\n            self.init_images = [self.init_images]\n        for img in self.init_images:\n            if img is None:\n                continue\n            self.init_img_hash = getattr(self, 'init_img_hash', hashlib.sha256(img.tobytes()).hexdigest()[0:8]) # pylint: disable=attribute-defined-outside-init\n            self.init_img_width = getattr(self, 'init_img_width', img.width) # pylint: disable=attribute-defined-outside-init\n            self.init_img_height = getattr(self, 'init_img_height', img.height) # pylint: disable=attribute-defined-outside-init\n            if shared.opts.save_init_img:\n                images.save_image(img, path=resolve_output_path(shared.opts.outdir_samples, shared.opts.outdir_init_images), basename=None, forced_filename=self.init_img_hash, suffix=\"-init-image\")\n            image = images.flatten(img, shared.opts.img2img_background_color)\n            if crop_region is None and self.resize_mode > 0:\n                image = images.resize_image(self.resize_mode, image, self.width, self.height, upscaler_name=self.resize_name, context=self.resize_context)\n                self.width = image.width\n                self.height = image.height\n            if self.image_mask is not None and shared.opts.mask_apply_overlay:\n                image_masked = Image.new('RGBa', (image.width, image.height))\n                image_to_paste = image.convert(\"RGBA\").convert(\"RGBa\")\n                image_to_mask = ImageOps.invert(self.mask_for_overlay.convert('L')) if self.mask_for_overlay is not None else None\n                image_to_mask = image_to_mask.resize((image.width, image.height), Image.Resampling.BILINEAR) if image_to_mask is not None else None\n                image_masked.paste(image_to_paste, mask=image_to_mask)\n                image_masked = image_masked.convert('RGBA')\n                self.overlay_images.append(image_masked)\n            if crop_region is not None: # crop_region is not None if we are doing inpaint full res\n                image = image.crop(crop_region)\n                if image.width != self.width or image.height != self.height:\n                    image = images.resize_image(3, image, self.width, self.height, self.resize_name)\n            # if self.image_mask is not None and self.inpainting_fill != 1:\n            #     image = masking.fill(image, latent_mask)\n            if add_color_corrections:\n                self.color_corrections.append(processing_helpers.setup_color_correction(image))\n            processed_images.append(image)\n        self.init_images = processed_images\n        # self.batch_size = len(self.init_images)\n        if self.overlay_images is not None and len(self.overlay_images) > 0:\n            self.overlay_images = self.overlay_images * self.batch_size\n        if self.color_corrections is not None and len(self.color_corrections) == 1:\n            self.color_corrections = self.color_corrections * self.batch_size\n\n\nclass StableDiffusionProcessingControl(StableDiffusionProcessingImg2Img):\n    def __init__(self, **kwargs):\n        debug(f'Process init: mode={self.__class__.__name__} kwargs={kwargs}') # pylint: disable=protected-access\n        super().__init__(**kwargs)\n\n    def init_hr(self, scale:float=None, upscaler:str=None, force:bool=False):\n        scale = scale or self.scale_by or self.scale_by_before\n        upscaler = upscaler or self.hr_upscaler or self.resize_name or self.resize_name_before\n        if upscaler is None:\n            upscaler = 'None'\n        # self.hr_upscaler = upscaler or 'None'\n        use_scale = self.hr_resize_x == 0 or self.hr_resize_y == 0\n        if upscaler == 'None' or (use_scale and scale == 1.0):\n            return\n        self.is_hr_pass = True\n        self.hr_force = force\n        if use_scale:\n            vae_scale_factor = sd_vae.get_vae_scale_factor()\n            self.hr_upscale_to_x, self.hr_upscale_to_y = int(vae_scale_factor * int(self.width * scale / vae_scale_factor)), int(vae_scale_factor * int(self.height * scale / vae_scale_factor))\n        else:\n            self.hr_upscale_to_x, self.hr_upscale_to_y = int(self.hr_resize_x), int(self.hr_resize_y)\n\n\ndef switch_class(p: StableDiffusionProcessing, new_class: type, dct: dict = None):\n    kwargs = {}\n    signature = inspect.signature(StableDiffusionProcessing.__init__, follow_wrapped=True) # base class\n    possible = list(signature.parameters)\n    for k, v in p.__dict__.copy().items():\n        if k in possible:\n            kwargs[k] = v\n    signature = inspect.signature(type(new_class).__init__, follow_wrapped=True) # target class\n    possible = list(signature.parameters)\n    for k, v in p.__dict__.copy().items():\n        if k in possible:\n            kwargs[k] = v\n    if dct is not None: # overrides\n        for k, v in dct.items():\n            if k in possible:\n                kwargs[k] = v\n    if new_class == StableDiffusionProcessingTxt2Img:\n        sd_models.clean_diffuser_pipe(shared.sd_model)\n    fn = f'{sys._getframe(2).f_code.co_name}:{sys._getframe(1).f_code.co_name}' # pylint: disable=protected-access\n    debug(f\"Switching class: {p.__class__.__name__} -> {new_class.__name__} fn={fn}\") # pylint: disable=protected-access\n    p.__class__ = new_class\n    p.__init__(**kwargs)\n    for k, v in p.__dict__.items():\n        if hasattr(p, k):\n            setattr(p, k, v)\n    if dct is not None: # post init set additional values\n        for k, v in dct.items():\n            if hasattr(p, k):\n                valtype = type(getattr(p, k, None))\n                if valtype in [int, float, str]:\n                    setattr(p, k, valtype(v))\n                else:\n                    setattr(p, k, v)\n    return p\n"
  },
  {
    "path": "modules/processing_correction.py",
    "content": "\"\"\"\nbased on article by TimothyAlexisVass\nhttps://huggingface.co/blog/TimothyAlexisVass/explaining-the-sdxl-latent-space\n\"\"\"\n\nimport os\nimport torch\nfrom modules import shared, devices\nfrom modules.vae import sd_vae_taesd\n\n\ndebug_enabled = os.environ.get('SD_HDR_DEBUG', None) is not None\ndebug = shared.log.trace if debug_enabled else lambda *args, **kwargs: None\ndebug('Trace: HDR')\nskip_correction = False\nwarned = False\n\n\ndef warn_once(message):\n    global warned # pylint: disable=global-statement\n    if not warned:\n        shared.log.warning(f'VAE: {message}')\n        warned = True\n\n\ndef sharpen_tensor(tensor, ratio=0):\n    if ratio == 0:\n        # debug(\"Sharpen: Early exit\")\n        return tensor\n    kernel = torch.ones((3, 3), dtype=tensor.dtype, device=tensor.device)\n    kernel[1, 1] = 5.0\n    kernel /= kernel.sum()\n    kernel = kernel.expand(tensor.shape[-3], 1, kernel.shape[0], kernel.shape[1])\n    result_tmp = torch.nn.functional.conv2d(tensor, kernel, groups=tensor.shape[-3])\n    result = tensor.clone()\n    result[..., 1:-1, 1:-1] = result_tmp\n    output = (1.0 + ratio) * tensor + (0 - ratio) * result\n    return soft_clamp_tensor(output, threshold=0.95)\n\n\ndef soft_clamp_tensor(tensor, threshold=0.8, boundary=4):\n    # shrinking towards the mean; will also remove outliers\n    if max(abs(tensor.max()), abs(tensor.min())) < boundary or threshold == 0:\n        return tensor\n    channel_dim = 0\n    threshold *= boundary\n    max_vals = tensor.max(channel_dim, keepdim=True)[0]\n    max_replace = ((tensor - threshold) / (max_vals - threshold)) * (boundary - threshold) + threshold\n    over_mask = tensor > threshold\n    min_vals = tensor.min(channel_dim, keepdim=True)[0]\n    min_replace = ((tensor + threshold) / (min_vals + threshold)) * (-boundary + threshold) - threshold\n    under_mask = tensor < -threshold\n    tensor = torch.where(over_mask, max_replace, torch.where(under_mask, min_replace, tensor))\n    # debug(f'HDR soft clamp: threshold={threshold} boundary={boundary} shape={tensor.shape}')\n    return tensor\n\n\ndef center_tensor(tensor, channel_shift=0.0, full_shift=0.0, offset=0.0):\n    if channel_shift == 0 and full_shift == 0 and offset == 0:\n        return tensor\n    # debug(f'HDR center: Before Adjustment: Full mean={tensor.mean().item()} Channel means={tensor.mean(dim=(-1, -2)).float().cpu().numpy()}')\n    tensor -= tensor.mean(dim=(-1, -2), keepdim=True) * channel_shift\n    tensor -= tensor.mean() * full_shift - offset\n    # debug(f'HDR center: channel-shift={channel_shift} full-shift={full_shift}')\n    # debug(f'HDR center: After Adjustment: Full mean={tensor.mean().item()} Channel means={tensor.mean(dim=(-1, -2)).float().cpu().numpy()}')\n    return tensor\n\n\ndef maximize_tensor(tensor, boundary=1.0):\n    if boundary == 1.0:\n        return tensor\n    boundary *= 4\n    min_val = tensor.min()\n    max_val = tensor.max()\n    normalization_factor = boundary / max(abs(min_val), abs(max_val))\n    tensor *= normalization_factor\n    # debug(f'HDR maximize: boundary={boundary} min={min_val} max={max_val} factor={normalization_factor}')\n    return tensor\n\n\ndef get_color(colorstr):\n    rgb = torch.tensor(tuple(int(colorstr.lstrip('#')[i:i + 2], 16) for i in (0, 2, 4))).to(dtype=torch.float32)\n    rgb = (rgb / 255).unsqueeze(-1).unsqueeze(-1).repeat(1, 64, 64).to(dtype=devices.dtype, device=devices.device)\n    color = sd_vae_taesd.encode(rgb).squeeze(0)[0:3, 5, 5]\n    return color\n\n\ndef color_adjust(tensor, colorstr, ratio):\n    color = get_color(colorstr)\n    # debug(f'HDR tint: str={colorstr} color={color} ratio={ratio}')\n    for i in range(3):\n        tensor[i] = center_tensor(tensor[i], full_shift=1, offset=color[i]*(ratio/2))\n    return tensor\n\n\ndef correction(p, timestep, latent):\n    if timestep > 950 and p.hdr_clamp:\n        latent = soft_clamp_tensor(latent, threshold=p.hdr_threshold, boundary=p.hdr_boundary)\n        p.extra_generation_params[\"HDR clamp\"] = f'{p.hdr_threshold}/{p.hdr_boundary}'\n    if 600 < timestep < 900 and p.hdr_color != 0:\n        latent[1:] = center_tensor(latent[1:], channel_shift=p.hdr_color, full_shift=float(p.hdr_mode))  # Color\n        p.extra_generation_params[\"HDR color\"] = f'{p.hdr_color}'\n    if 600 < timestep < 900 and p.hdr_tint_ratio != 0:\n        latent = color_adjust(latent, p.hdr_color_picker, p.hdr_tint_ratio)\n        p.extra_generation_params[\"HDR tint\"] = f'{p.hdr_tint_ratio}'\n    if timestep < 200 and (p.hdr_brightness != 0): # do it late so it doesn't change the composition\n        latent[0:1] = center_tensor(latent[0:1], full_shift=float(p.hdr_mode), offset=p.hdr_brightness)  # Brightness\n        p.extra_generation_params[\"HDR brightness\"] = f'{p.hdr_brightness}'\n    if timestep < 350 and p.hdr_sharpen != 0:\n        per_step_ratio = 2 ** (timestep / 250) * p.hdr_sharpen / 16\n        if abs(per_step_ratio) > 0.01:\n            latent = sharpen_tensor(latent, ratio=per_step_ratio)\n        p.extra_generation_params[\"HDR sharpen\"] = f'{p.hdr_sharpen}'\n    if 1 < timestep < 100 and p.hdr_maximize:\n        latent = center_tensor(latent, channel_shift=p.hdr_max_center, full_shift=1.0)\n        latent = maximize_tensor(latent, boundary=p.hdr_max_boundary)\n        p.extra_generation_params[\"HDR max\"] = f'{p.hdr_max_center}/{p.hdr_max_boundary}'\n    return latent\n\n\ndef correction_callback(p, timestep, kwargs, initial: bool = False):\n    global skip_correction # pylint: disable=global-statement\n    if initial:\n        if not any([p.hdr_clamp, p.hdr_mode, p.hdr_maximize, p.hdr_sharpen, p.hdr_color, p.hdr_brightness, p.hdr_tint_ratio]):\n            skip_correction = True\n            return kwargs\n        else:\n            skip_correction = False\n    elif skip_correction:\n        return kwargs\n    latents = kwargs[\"latents\"]\n    # debug(f'HDR correction: latents={latents.shape}')\n    if len(latents.shape) <= 3: # packed latent\n        warn_once(f'HDR correction: shape={latents.shape} packed latent')\n        return kwargs\n    if len(latents.shape) == 4: # standard batched latent\n        for i in range(latents.shape[0]):\n            latents[i] = correction(p, timestep, latents[i])\n            if debug_enabled:\n                debug(f\"Full Mean: {latents[i].mean().item()}\")\n                debug(f\"Channel Means: {latents[i].mean(dim=(-1, -2), keepdim=True).flatten().float().cpu().numpy()}\")\n                debug(f\"Channel Mins: {latents[i].min(-1, keepdim=True)[0].min(-2, keepdim=True)[0].flatten().float().cpu().numpy()}\")\n                debug(f\"Channel Maxes: {latents[i].max(-1, keepdim=True)[0].min(-2, keepdim=True)[0].flatten().float().cpu().numpy()}\")\n    elif len(latents.shape) == 5 and latents.shape[0] == 1: # probably animatediff\n        latents = latents.squeeze(0).permute(1, 0, 2, 3)\n        for i in range(latents.shape[0]):\n            latents[i] = correction(p, timestep, latents[i])\n        latents = latents.permute(1, 0, 2, 3).unsqueeze(0)\n    else:\n        warn_once(f'HDR correction: shape={latents.shape} unknown latent')\n    kwargs[\"latents\"] = latents\n    return kwargs\n"
  },
  {
    "path": "modules/processing_diffusers.py",
    "content": "from types import SimpleNamespace\nimport os\nimport time\nimport numpy as np\nimport torch\nimport torchvision.transforms.functional as TF\nfrom PIL import Image\nfrom modules import shared, devices, processing, sd_models, errors, sd_hijack_hypertile, processing_vae, sd_models_compile, timer, modelstats, extra_networks, attention\nfrom modules.processing_helpers import resize_hires, calculate_base_steps, calculate_hires_steps, calculate_refiner_steps, save_intermediate, update_sampler, is_txt2img, is_refiner_enabled, get_job_name\nfrom modules.processing_args import set_pipeline_args\nfrom modules.onnx_impl import preprocess_pipeline as preprocess_onnx_pipeline, check_parameters_changed as olive_check_parameters_changed\nfrom modules.lora import lora_common\n\n\ndebug = os.environ.get('SD_DIFFUSERS_DEBUG', None) is not None\noutput_type = 'np' if os.environ.get('SD_VAE_DEFAULT', None) is not None else 'latent'\nlast_p = None\norig_pipeline = shared.sd_model\n\n\ndef restore_state(p: processing.StableDiffusionProcessing):\n    if p.state in ['reprocess_refine', 'reprocess_detail']:\n        # validate\n        if last_p is None:\n            shared.log.warning(f'Restore state: op={p.state} last state missing')\n            return p\n        if p.__class__ != last_p.__class__:\n            shared.log.warning(f'Restore state: op={p.state} last state is different type')\n            return p\n        if shared.history.count == 0:\n            shared.log.warning(f'Restore state: op={p.state} last latents missing')\n            return p\n        state = p.state\n\n        # set ops\n        if state == 'reprocess_refine':\n            width, width_before, width_after, width_mask = p.width, p.width_before, p.width_after, p.width_mask\n            height, height_before, height_after, height_mask = p.height, p.height_before, p.height_after, p.height_mask\n            scale_by, scale_by_before, scale_by_after, scale_by_mask = p.scale_by, p.scale_by_before, p.scale_by_after, p.scale_by_mask\n            resize_name, resize_name_before, resize_name_after, resize_name_mask = p.resize_name, p.resize_name_before, p.resize_name_after, p.resize_name_mask\n            resize_mode, resize_mode_before, resize_mode_after, resize_mode_mask = p.resize_mode, p.resize_mode_before, p.resize_mode_after, p.resize_mode_mask\n            resize_context, resize_context_before, resize_context_after, resize_context_mask = p.resize_context, p.resize_context_before, p.resize_context_after, p.resize_context_mask\n            selected_scale_tab, selected_scale_tab_before, selected_scale_tab_after, selected_scale_tab_mask = p.selected_scale_tab, p.selected_scale_tab_before, p.selected_scale_tab_after, p.selected_scale_tab_mask\n            hr_scale, hr_resize_mode, hr_resize_context, hr_upscaler, hr_second_pass_steps = p.hr_scale, p.hr_resize_mode, p.hr_resize_context, p.hr_upscaler, p.hr_second_pass_steps\n            hr_resize_x, hr_resize_y, hr_upscale_to_x, hr_upscale_to_y, hr_denoising_strength = p.hr_resize_x, p.hr_resize_y, p.hr_upscale_to_x, p.hr_upscale_to_y, p.hr_denoising_strength\n\n            p = last_p\n            p.skip = ['encode', 'base']\n            p.state = state\n            p.enable_hr = True\n            p.hr_force = True\n            p.init_images = None\n\n            p.width, p.width_before, p.width_after, p.width_mask = width, width_before, width_after, width_mask\n            p.height, p.height_before, p.height_after, p.height_mask = height, height_before, height_after, height_mask\n            p.resize_name, p.resize_name_before, p.resize_name_after, p.resize_name_mask = resize_name, resize_name_before, resize_name_after, resize_name_mask\n            p.resize_mode, p.resize_mode_before, p.resize_mode_after, p.resize_mode_mask = resize_mode, resize_mode_before, resize_mode_after, resize_mode_mask\n            p.resize_context, p.resize_context_before, p.resize_context_after, p.resize_context_mask = resize_context, resize_context_before, resize_context_after, resize_context_mask\n            p.selected_scale_tab, p.selected_scale_tab_before, p.selected_scale_tab_after, p.selected_scale_tab_mask = selected_scale_tab, selected_scale_tab_before, selected_scale_tab_after, selected_scale_tab_mask\n            p.scale_by, p.scale_by_before, p.scale_by_after, p.scale_by_mask = scale_by, scale_by_before, scale_by_after, scale_by_mask\n            p.hr_scale, p.hr_resize_mode, p.hr_resize_context, p.hr_upscaler, p.hr_second_pass_steps = hr_scale, hr_resize_mode, hr_resize_context, hr_upscaler, hr_second_pass_steps\n            p.hr_resize_x, p.hr_resize_y, p.hr_upscale_to_x, p.hr_upscale_to_y, p.hr_denoising_strength = hr_resize_x, hr_resize_y, hr_upscale_to_x, hr_upscale_to_y, hr_denoising_strength\n        if state == 'reprocess_detail':\n            p.skip = ['encode', 'base', 'hires']\n            p.detailer_enabled = True\n        shared.log.info(f'Restore state: op={p.state} skip={p.skip}')\n    return p\n\n\ndef process_pre(p: processing.StableDiffusionProcessing):\n    from modules import ipadapter, sd_hijack_freeu, para_attention, teacache, hidiffusion, ras, pag, cfgzero, transformer_cache, token_merge, linfusion, cachedit\n    shared.log.info('Processing modifiers: apply')\n\n    try:\n        # apply-with-unapply\n        sd_models_compile.check_deepcache(enable=True)\n        ipadapter.apply(shared.sd_model, p)\n        token_merge.apply_token_merging(p.sd_model)\n        hidiffusion.apply(p, shared.sd_model_type)\n        ras.apply(shared.sd_model, p)\n        pag.apply(p)\n        cfgzero.apply(p)\n        linfusion.apply(shared.sd_model)\n        cachedit.apply_cache_dit(shared.sd_model)\n\n        # apply-only\n        sd_hijack_freeu.apply_freeu(p)\n        transformer_cache.set_cache()\n        para_attention.apply_first_block_cache()\n        teacache.apply_teacache(p)\n    except Exception as e:\n        shared.log.error(f'Processing apply: {e}')\n        errors.display(e, 'apply')\n\n    shared.sd_model = sd_models.apply_balanced_offload(shared.sd_model)\n    # if hasattr(shared.sd_model, 'unet'):\n    #     sd_models.move_model(shared.sd_model.unet, devices.device)\n    # if hasattr(shared.sd_model, 'transformer'):\n    #     sd_models.move_model(shared.sd_model.transformer, devices.device)\n\n    from modules import modular\n    if modular.is_compatible(shared.sd_model):\n        modular_pipe = modular.convert_to_modular(shared.sd_model)\n        if modular_pipe is not None:\n            shared.sd_model = modular_pipe\n    if modular.is_guider(shared.sd_model):\n        from modules import modular_guiders\n        modular_guiders.set_guider(p)\n\n    timer.process.record('pre')\n\n\ndef process_post(p: processing.StableDiffusionProcessing):\n    from modules import ipadapter, hidiffusion, ras, pag, cfgzero, token_merge, linfusion, cachedit\n    shared.log.info('Processing modifiers: unapply')\n\n    try:\n        sd_models_compile.check_deepcache(enable=False)\n        ipadapter.unapply(shared.sd_model, unload=getattr(p, 'ip_adapter_unload', False))\n        token_merge.remove_token_merging(p.sd_model)\n        hidiffusion.unapply()\n        ras.unapply(shared.sd_model)\n        pag.unapply()\n        cfgzero.unapply()\n        linfusion.unapply(shared.sd_model)\n        cachedit.unapply_cache_dir(shared.sd_model)\n    except Exception as e:\n        shared.log.error(f'Processing unapply: {e}')\n        errors.display(e, 'unapply')\n    timer.process.record('post')\n\n\ndef process_base(p: processing.StableDiffusionProcessing):\n    jobid = shared.state.begin('Base')\n    txt2img = is_txt2img()\n    use_refiner_start = is_refiner_enabled(p) and (not p.is_hr_pass)\n    use_denoise_start = not txt2img and p.refiner_start > 0 and p.refiner_start < 1\n\n    shared.sd_model = update_pipeline(shared.sd_model, p)\n    update_sampler(p, shared.sd_model)\n    timer.process.record('prepare')\n    process_pre(p)\n    desc = 'Base'\n    if 'detailer' in p.ops:\n        desc = 'Detail'\n    base_args = set_pipeline_args(\n        p=p,\n        model=shared.sd_model,\n        prompts=p.prompts,\n        negative_prompts=p.negative_prompts,\n        prompts_2=[p.refiner_prompt] if len(p.refiner_prompt) > 0 else p.prompts,\n        negative_prompts_2=[p.refiner_negative] if len(p.refiner_negative) > 0 else p.negative_prompts,\n        num_inference_steps=calculate_base_steps(p, use_refiner_start=use_refiner_start, use_denoise_start=use_denoise_start),\n        eta=shared.opts.scheduler_eta,\n        guidance_scale=p.cfg_scale,\n        guidance_rescale=p.diffusers_guidance_rescale,\n        true_cfg_scale=p.pag_scale,\n        denoising_start=0 if use_refiner_start else p.refiner_start if use_denoise_start else None,\n        denoising_end=p.refiner_start if use_refiner_start else 1 if use_denoise_start else None,\n        num_frames=getattr(p, 'frames', 1),\n        output_type=output_type,\n        clip_skip=p.clip_skip,\n        desc=desc,\n    )\n    base_steps = base_args.get('prior_num_inference_steps', None) or p.steps or base_args.get('num_inference_steps', None)\n    shared.state.update(get_job_name(p, shared.sd_model), base_steps, 1)\n    if shared.opts.scheduler_eta is not None and shared.opts.scheduler_eta > 0 and shared.opts.scheduler_eta < 1:\n        p.extra_generation_params[\"Sampler Eta\"] = shared.opts.scheduler_eta\n    output = None\n    if debug:\n        modelstats.analyze()\n    try:\n        t0 = time.time()\n        extra_networks.activate(p, exclude=['text_encoder', 'text_encoder_2', 'text_encoder_3'])\n\n        if hasattr(shared.sd_model, 'tgate') and getattr(p, 'gate_step', -1) > 0:\n            base_args['gate_step'] = p.gate_step\n            output = shared.sd_model.tgate(**base_args) # pylint: disable=not-callable\n        else:\n            taskid = shared.state.begin('Inference')\n            output = shared.sd_model(**base_args)\n            shared.state.end(taskid)\n        if isinstance(output, dict):\n            output = SimpleNamespace(**output)\n        if isinstance(output, list):\n            output = SimpleNamespace(images=output)\n        if isinstance(output, Image.Image):\n            output = SimpleNamespace(images=[output])\n        if hasattr(output, 'image'):\n            output.images = output.image\n        if hasattr(output, 'images'):\n            shared.history.add(output.images, info=processing.create_infotext(p), ops=p.ops)\n        timer.process.record('pipeline')\n        sd_models_compile.openvino_post_compile(op=\"base\") # only executes on compiled vino models\n        if shared.cmd_opts.profile:\n            t1 = time.time()\n            shared.log.debug(f'Profile: pipeline call: {t1-t0:.2f}')\n        if not hasattr(output, 'images') and hasattr(output, 'frames'):\n            if hasattr(output.frames[0], 'shape'):\n                shared.log.debug(f'Generated: frames={output.frames[0].shape[1]}')\n            else:\n                shared.log.debug(f'Generated: frames={len(output.frames[0])}')\n            output.images = output.frames[0]\n        if hasattr(output, 'images') and isinstance(output.images, np.ndarray):\n            output.images = torch.from_numpy(output.images)\n    except AssertionError as e:\n        shared.log.info(e)\n    except ValueError as e:\n        shared.state.interrupted = True\n        err_args = base_args.copy()\n        for k, v in base_args.items():\n            if isinstance(v, torch.Tensor):\n                err_args[k] = f'{v.device}:{v.dtype}:{v.shape}'\n        shared.log.error(f'Processing: args={err_args} {e}')\n        if shared.cmd_opts.debug:\n            errors.display(e, 'Processing')\n    except RuntimeError as e:\n        shared.state.interrupted = True\n        err_args = base_args.copy()\n        for k, v in base_args.items():\n            if isinstance(v, torch.Tensor):\n                err_args[k] = f'{v.device}:{v.dtype}:{v.shape}'\n        shared.log.error(f'Processing: step=base args={err_args} {e}')\n        errors.display(e, 'Processing')\n        modelstats.analyze()\n    finally:\n        process_post(p)\n\n    if hasattr(shared.sd_model, 'postprocess') and callable(shared.sd_model.postprocess):\n        output = shared.sd_model.postprocess(p, output)\n\n    shared.state.end(jobid)\n    shared.state.nextjob()\n    return output\n\n\ndef process_hires(p: processing.StableDiffusionProcessing, output):\n    # optional second pass\n    if (output is None) or (output.images is None):\n        return output\n    if p.enable_hr:\n        jobid = shared.state.begin('Hires')\n        p.is_hr_pass = True\n        if hasattr(p, 'init_hr'):\n            p.init_hr(p.hr_scale, p.hr_upscaler, force=p.hr_force)\n        else:\n            if not p.is_hr_pass: # fake hires for img2img if not actual hr pass\n                p.hr_scale = p.scale_by\n                p.hr_upscaler = p.resize_name\n                p.hr_resize_mode = p.resize_mode\n                p.hr_resize_context = p.resize_context\n            p.hr_upscale_to_x = int(p.width * p.hr_scale) if p.hr_resize_x == 0 else p.hr_resize_x\n            p.hr_upscale_to_y = int(p.height * p.hr_scale) if p.hr_resize_y == 0 else p.hr_resize_y\n\n        # hires runs on original pipeline\n        if hasattr(shared.sd_model, 'restore_pipeline') and (shared.sd_model.restore_pipeline is not None) and (not shared.opts.control_hires):\n            shared.sd_model.restore_pipeline()\n        if (getattr(shared.sd_model, 'controlnet', None) is not None) and (((isinstance(shared.sd_model.controlnet, list) and len(shared.sd_model.controlnet) > 1)) or ('Multi' in type(shared.sd_model.controlnet).__name__)):\n            shared.log.warning(f'Process: control={type(shared.sd_model.controlnet)} not supported in hires')\n            return output\n\n        # upscale\n        if hasattr(p, 'height') and hasattr(p, 'width') and p.hr_resize_mode > 0 and (p.hr_upscaler != 'None' or p.hr_resize_mode == 5):\n            shared.log.info(f'Upscale: mode={p.hr_resize_mode} upscaler=\"{p.hr_upscaler}\" context=\"{p.hr_resize_context}\" resize={p.hr_resize_x}x{p.hr_resize_y} upscale={p.hr_upscale_to_x}x{p.hr_upscale_to_y}')\n            p.ops.append('upscale')\n            if shared.opts.samples_save and not p.do_not_save_samples and shared.opts.save_images_before_highres_fix and hasattr(shared.sd_model, 'vae'):\n                save_intermediate(p, latents=output.images, suffix=\"-before-hires\")\n            output.images = resize_hires(p, latents=output.images)\n            sd_hijack_hypertile.hypertile_set(p, hr=True)\n        elif torch.is_tensor(output.images) and output.images.shape[-1] == 3: # nhwc\n            if output.images.dim() == 3:\n                output.images = TF.to_pil_image(output.images.permute(2,0,1))\n            elif output.images.dim() == 4:\n                output.images = [TF.to_pil_image(output.images[i].permute(2,0,1)) for i in range(output.images.shape[0])]\n\n        strength = p.hr_denoising_strength if p.hr_denoising_strength > 0 else p.denoising_strength\n        if (p.hr_upscaler is not None) and (p.hr_upscaler.lower().startswith('latent') or p.hr_force) and strength > 0:\n            p.ops.append('hires')\n            sd_models_compile.openvino_recompile_model(p, hires=True, refiner=False)\n            if shared.sd_model.__class__.__name__ == \"OnnxRawPipeline\":\n                shared.sd_model = preprocess_onnx_pipeline(p)\n            p.hr_force = True\n\n        # hires\n        if p.hr_force and strength == 0:\n            shared.log.warning('Hires skip: denoising=0')\n            p.hr_force = False\n        if p.hr_force:\n            shared.sd_model = sd_models.set_diffuser_pipe(shared.sd_model, sd_models.DiffusersTaskType.IMAGE_2_IMAGE)\n            if 'Upscale' in shared.sd_model.__class__.__name__ or 'Flux' in shared.sd_model.__class__.__name__ or 'Kandinsky' in shared.sd_model.__class__.__name__:\n                output.images = processing_vae.vae_decode(latents=output.images, model=shared.sd_model, vae_type=p.vae_type, output_type='pil', width=p.width, height=p.height)\n            if p.is_control and hasattr(p, 'task_args') and p.task_args.get('image', None) is not None:\n                if hasattr(shared.sd_model, \"vae\") and output.images is not None and len(output.images) > 0:\n                    output.images = processing_vae.vae_decode(latents=output.images, model=shared.sd_model, vae_type=p.vae_type, output_type='pil', width=p.hr_upscale_to_x, height=p.hr_upscale_to_y) # controlnet cannnot deal with latent input\n            update_sampler(p, shared.sd_model, second_pass=True)\n            orig_denoise = p.denoising_strength\n            p.denoising_strength = strength\n            orig_image = p.task_args.pop('image', None) # remove image override from hires\n            process_pre(p)\n            hires_args = set_pipeline_args(\n                p=p,\n                model=shared.sd_model,\n                prompts=len(output.images)* [p.refiner_prompt] if len(p.refiner_prompt) > 0 else p.prompts,\n                negative_prompts=len(output.images) * [p.refiner_negative] if len(p.refiner_negative) > 0 else p.negative_prompts,\n                prompts_2=len(output.images) * [p.refiner_prompt] if len(p.refiner_prompt) > 0 else p.prompts,\n                negative_prompts_2=len(output.images) * [p.refiner_negative] if len(p.refiner_negative) > 0 else p.negative_prompts,\n                num_inference_steps=calculate_hires_steps(p),\n                eta=shared.opts.scheduler_eta,\n                guidance_scale=p.image_cfg_scale if p.image_cfg_scale is not None else p.cfg_scale,\n                guidance_rescale=p.diffusers_guidance_rescale,\n                output_type=output_type,\n                clip_skip=p.clip_skip,\n                image=output.images,\n                strength=strength,\n                desc='Hires',\n            )\n            hires_steps = hires_args.get('prior_num_inference_steps', None) or p.hr_second_pass_steps or hires_args.get('num_inference_steps', None)\n            shared.state.update(get_job_name(p, shared.sd_model), hires_steps, 1)\n            try:\n                if 'base' in p.skip:\n                    extra_networks.activate(p)\n                taskid = shared.state.begin('Inference')\n                output = shared.sd_model(**hires_args) # pylint: disable=not-callable\n                shared.state.end(taskid)\n                if isinstance(output, dict):\n                    output = SimpleNamespace(**output)\n                if hasattr(output, 'images'):\n                    shared.history.add(output.images, info=processing.create_infotext(p), ops=p.ops)\n                sd_models_compile.check_deepcache(enable=False)\n                sd_models_compile.openvino_post_compile(op=\"base\")\n            except AssertionError as e:\n                shared.log.info(e)\n            except RuntimeError as e:\n                shared.state.interrupted = True\n                shared.log.error(f'Processing step=hires: args={hires_args} {e}')\n                errors.display(e, 'Processing')\n                modelstats.analyze()\n            finally:\n                process_post(p)\n            if hasattr(shared.sd_model, 'postprocess') and callable(shared.sd_model.postprocess):\n                output = shared.sd_model.postprocess(p, output)\n            if orig_image is not None:\n                p.task_args['image'] = orig_image\n            p.denoising_strength = orig_denoise\n        shared.state.end(jobid)\n        shared.state.nextjob()\n        p.is_hr_pass = False\n        timer.process.record('hires')\n    return output\n\n\ndef process_refine(p: processing.StableDiffusionProcessing, output):\n    # optional refiner pass or decode\n    if (output is None) or (output.images is None):\n        return output\n    if is_refiner_enabled(p):\n        if shared.opts.samples_save and not p.do_not_save_samples and shared.opts.save_images_before_refiner and hasattr(shared.sd_model, 'vae'):\n            save_intermediate(p, latents=output.images, suffix=\"-before-refiner\")\n        if shared.opts.diffusers_move_base:\n            shared.log.debug('Moving to CPU: model=base')\n            sd_models.move_model(shared.sd_model, devices.cpu)\n        if shared.state.interrupted or shared.state.skipped:\n            shared.sd_model = orig_pipeline\n            return output\n        jobid = shared.state.begin('Refine')\n        shared.sd_model = sd_models.apply_balanced_offload(shared.sd_model)\n        if shared.opts.diffusers_move_refiner:\n            sd_models.move_model(shared.sd_refiner, devices.device)\n            if hasattr(shared.sd_refiner, 'unet'):\n                sd_models.move_model(shared.sd_model.unet, devices.device)\n            if hasattr(shared.sd_refiner, 'transformer'):\n                sd_models.move_model(shared.sd_model.transformer, devices.device)\n        p.ops.append('refine')\n        p.is_refiner_pass = True\n        sd_models_compile.openvino_recompile_model(p, hires=False, refiner=True)\n        shared.sd_model = sd_models.set_diffuser_pipe(shared.sd_model, sd_models.DiffusersTaskType.TEXT_2_IMAGE)\n        shared.sd_refiner = sd_models.set_diffuser_pipe(shared.sd_refiner, sd_models.DiffusersTaskType.IMAGE_2_IMAGE)\n        for i in range(len(output.images)):\n            image = output.images[i]\n            noise_level = round(350 * p.denoising_strength)\n            refiner_output_type = output_type\n            if 'Upscale' in shared.sd_refiner.__class__.__name__ or 'Flux' in shared.sd_refiner.__class__.__name__ or 'Kandinsky' in shared.sd_refiner.__class__.__name__:\n                image = processing_vae.vae_decode(latents=image, model=shared.sd_model, vae_type=p.vae_type, output_type='pil', width=p.width, height=p.height)\n                p.extra_generation_params['Noise level'] = noise_level\n                refiner_output_type = 'np'\n            update_sampler(p, shared.sd_refiner, second_pass=True)\n            shared.opts.prompt_attention = 'fixed'\n            refiner_args = set_pipeline_args(\n                p=p,\n                model=shared.sd_refiner,\n                prompts=[p.refiner_prompt] if len(p.refiner_prompt) > 0 else p.prompts[i],\n                negative_prompts=[p.refiner_negative] if len(p.refiner_negative) > 0 else p.negative_prompts[i],\n                num_inference_steps=calculate_refiner_steps(p),\n                eta=shared.opts.scheduler_eta,\n                # strength=p.denoising_strength,\n                noise_level=noise_level, # StableDiffusionUpscalePipeline only\n                guidance_scale=p.image_cfg_scale if p.image_cfg_scale is not None else p.cfg_scale,\n                guidance_rescale=p.diffusers_guidance_rescale,\n                denoising_start=p.refiner_start if p.refiner_start > 0 and p.refiner_start < 1 else None,\n                denoising_end=1 if p.refiner_start > 0 and p.refiner_start < 1 else None,\n                image=image,\n                output_type=refiner_output_type,\n                clip_skip=p.clip_skip,\n                prompt_attention='fixed',\n                desc='Refiner',\n            )\n            refiner_steps = refiner_args.get('prior_num_inference_steps', None) or p.steps or refiner_args.get('num_inference_steps', None)\n            shared.state.update(get_job_name(p, shared.sd_refiner), refiner_steps, 1)\n            try:\n                if 'requires_aesthetics_score' in shared.sd_refiner.config: # sdxl-model needs false and sdxl-refiner needs true\n                    shared.sd_refiner.register_to_config(requires_aesthetics_score = getattr(shared.sd_refiner, 'tokenizer', None) is None)\n                output = shared.sd_refiner(**refiner_args) # pylint: disable=not-callable\n                if isinstance(output, dict):\n                    output = SimpleNamespace(**output)\n                if hasattr(output, 'images'):\n                    shared.history.add(output.images, info=processing.create_infotext(p), ops=p.ops)\n                sd_models_compile.openvino_post_compile(op=\"refiner\")\n            except AssertionError as e:\n                shared.log.info(e)\n            except RuntimeError as e:\n                shared.state.interrupted = True\n                shared.log.error(f'Processing step=refine: args={refiner_args} {e}')\n                errors.display(e, 'Processing')\n                modelstats.analyze()\n\n        if shared.opts.diffusers_offload_mode == \"balanced\":\n            shared.sd_refiner = sd_models.apply_balanced_offload(shared.sd_refiner)\n        elif shared.opts.diffusers_move_refiner:\n            shared.log.debug('Moving to CPU: model=refiner')\n            sd_models.move_model(shared.sd_refiner, devices.cpu)\n        shared.state.end(jobid)\n        shared.state.nextjob()\n        p.is_refiner_pass = False\n        timer.process.record('refine')\n    return output\n\n\ndef process_decode(p: processing.StableDiffusionProcessing, output):\n    shared.sd_model = sd_models.apply_balanced_offload(shared.sd_model, exclude=['vae'])\n    if output is not None:\n        if hasattr(output, 'bytes') and output.bytes is not None:\n            shared.log.debug(f'Generated: bytes={len(output.bytes)}')\n            return output\n        if not hasattr(output, 'images') and hasattr(output, 'frames'):\n            shared.log.debug(f'Generated: frames={len(output.frames[0])}')\n            output.images = output.frames[0]\n        if output.images is not None and len(output.images) > 0 and isinstance(output.images[0], Image.Image):\n            return output.images\n        model = shared.sd_model if not is_refiner_enabled(p) else shared.sd_refiner\n        if not hasattr(model, 'vae'):\n            if hasattr(model, 'pipe') and hasattr(model.pipe, 'vae'):\n                model = model.pipe\n        if (hasattr(model, \"vae\") or hasattr(model, \"vqgan\")) and (output.images is not None) and (len(output.images) > 0):\n            if p.hr_resize_mode > 0 and (p.hr_upscaler != 'None' or p.hr_resize_mode == 5):\n                width = max(getattr(p, 'width', 0), getattr(p, 'hr_upscale_to_x', 0))\n                height = max(getattr(p, 'height', 0), getattr(p, 'hr_upscale_to_y', 0))\n            else:\n                width = getattr(p, 'width', 0)\n                height = getattr(p, 'height', 0)\n            frames = p.task_args.get('num_frames', None) or getattr(p, 'frames', None)\n            if isinstance(output.images, list):\n                results = []\n                for i in range(len(output.images)):\n                    result_batch = processing_vae.vae_decode(\n                        latents = output.images[i],\n                        model = model,\n                        vae_type = p.vae_type,\n                        width = width,\n                        height = height,\n                        frames = frames,\n                    )\n                    for result in list(result_batch):\n                        results.append(result)\n            else:\n                results = processing_vae.vae_decode(\n                    latents = output.images,\n                    model = model,\n                    vae_type = p.vae_type,\n                    width = width,\n                    height = height,\n                    frames = frames,\n                )\n                if not isinstance(results, list):\n                    results = list(results)\n        elif hasattr(output, 'images'):\n            results = output.images\n        else:\n            shared.log.warning('Processing: no results')\n            results = []\n    else:\n        shared.log.warning('Processing: no results')\n        results = []\n    return results\n\n\ndef update_pipeline(sd_model, p: processing.StableDiffusionProcessing):\n    if sd_models.get_diffusers_task(sd_model) == sd_models.DiffusersTaskType.INPAINTING and getattr(p, 'image_mask', None) is None and p.task_args.get('image_mask', None) is None and getattr(p, 'mask', None) is None:\n        shared.log.warning('Processing: mode=inpaint mask=None')\n        sd_model = sd_models.set_diffuser_pipe(sd_model, sd_models.DiffusersTaskType.IMAGE_2_IMAGE)\n    if shared.opts.cuda_compile_backend == \"olive-ai\":\n        sd_model = olive_check_parameters_changed(p, is_refiner_enabled(p))\n    if sd_model.__class__.__name__ == \"OnnxRawPipeline\":\n        sd_model = preprocess_onnx_pipeline(p)\n        global orig_pipeline # pylint: disable=global-statement\n        orig_pipeline = sd_model # processed ONNX pipeline should not be replaced with original pipeline.\n    if getattr(sd_model, \"current_attn_name\", None) != shared.opts.cross_attention_optimization:\n        shared.log.info(f\"Setting attention optimization: {shared.opts.cross_attention_optimization}\")\n        attention.set_diffusers_attention(sd_model)\n    return sd_model\n\n\ndef validate_pipeline(p: processing.StableDiffusionProcessing):\n    from modules.video_models.models_def import models as video_models\n    models_cls = []\n    for family in video_models:\n        for m in video_models[family]:\n            if m.repo_cls is not None:\n                models_cls.append(m.repo_cls.__name__)\n            if m.custom is not None:\n                models_cls.append(m.custom)\n    is_video_model = shared.sd_model.__class__.__name__ in models_cls\n    override_video_pipelines = ['WanPipeline', 'WanImageToVideoPipeline', 'WanVACEPipeline']\n    is_video_pipeline = ('video' in p.__class__.__name__.lower()) or (shared.sd_model.__class__.__name__ in override_video_pipelines)\n    if is_video_model and not is_video_pipeline:\n        shared.log.error(f'Mismatch: type={shared.sd_model_type} cls={shared.sd_model.__class__.__name__} request={p.__class__.__name__} video model with non-video pipeline')\n        return False\n    elif not is_video_model and is_video_pipeline:\n        shared.log.error(f'Mismatch: type={shared.sd_model_type} cls={shared.sd_model.__class__.__name__} request={p.__class__.__name__} non-video model with video pipeline')\n        return False\n    return True\n\n\ndef process_diffusers(p: processing.StableDiffusionProcessing):\n    results = []\n    if debug:\n        shared.log.trace(f'Process diffusers args: {vars(p)}')\n    if not validate_pipeline(p):\n        return results\n\n    p = restore_state(p)\n    global orig_pipeline # pylint: disable=global-statement\n    orig_pipeline = shared.sd_model\n\n    if shared.state.interrupted or shared.state.skipped:\n        shared.sd_model = orig_pipeline\n        return results\n\n    # sanitize init_images\n    if hasattr(p, 'init_images') and not isinstance(getattr(p, 'init_images', []), list):\n        p.init_images = [p.init_images]\n    if hasattr(p, 'init_images') and isinstance(getattr(p, 'init_images', []), list):\n        p.init_images = [i for i in p.init_images if i is not None]\n    if len(getattr(p, 'init_images', [])) > 0:\n        while len(p.init_images) < len(p.prompts):\n            p.init_images.append(p.init_images[-1])\n\n    # pipeline type is set earlier in processing, but check for sanity\n    is_control = getattr(p, 'is_control', False) is True\n    has_images = len(getattr(p, 'init_images', [])) > 0\n    if (sd_models.get_diffusers_task(shared.sd_model) != sd_models.DiffusersTaskType.TEXT_2_IMAGE) and (not has_images) and (not is_control):\n        shared.sd_model = sd_models.set_diffuser_pipe(shared.sd_model, sd_models.DiffusersTaskType.TEXT_2_IMAGE) # reset pipeline\n    if hasattr(shared.sd_model, 'unet') and hasattr(shared.sd_model.unet, 'config') and hasattr(shared.sd_model.unet.config, 'in_channels') and shared.sd_model.unet.config.in_channels == 9 and not is_control:\n        shared.sd_model = sd_models.set_diffuser_pipe(shared.sd_model, sd_models.DiffusersTaskType.INPAINTING) # force pipeline\n        if len(getattr(p, 'init_images', [])) == 0:\n            p.init_images = [TF.to_pil_image(torch.rand((3, getattr(p, 'height', 512), getattr(p, 'width', 512))))]\n    if not p.prompts:\n        p.prompts = p.all_prompts[p.iteration * p.batch_size:(p.iteration+1) * p.batch_size]\n    if not p.negative_prompts:\n        p.negative_prompts = p.all_negative_prompts[p.iteration * p.batch_size:(p.iteration+1) * p.batch_size]\n\n    sd_models_compile.openvino_recompile_model(p, hires=False, refiner=False) # recompile if a parameter changes\n\n    if hasattr(p, 'dummy'):\n        images = [Image.new(mode='RGB', size=(p.width, p.height))]\n        return images\n    if 'base' not in p.skip:\n        output = process_base(p)\n    else:\n        images, _index=shared.history.selected\n        output = SimpleNamespace(images=images)\n\n    if (output is None or (hasattr(output, 'images') and len(output.images) == 0)) and has_images:\n        if output is not None:\n            shared.log.debug('Processing: using input as base output')\n            output.images = p.init_images\n\n    if shared.state.interrupted or shared.state.skipped:\n        shared.sd_model = orig_pipeline\n        return results\n\n    if 'hires' not in p.skip:\n        output = process_hires(p, output)\n        if shared.state.interrupted or shared.state.skipped:\n            shared.sd_model = orig_pipeline\n            return results\n\n    if 'refine' not in p.skip:\n        output = process_refine(p, output)\n        if shared.state.interrupted or shared.state.skipped:\n            shared.sd_model = orig_pipeline\n            return results\n\n    extra_networks.deactivate(p)\n    timer.process.add('lora', lora_common.timer.total)\n    lora_common.timer.clear(complete=True)\n\n    results = process_decode(p, output)\n    timer.process.record('decode')\n\n    shared.sd_model = orig_pipeline\n\n    if p.state == '':\n        global last_p # pylint: disable=global-statement\n        last_p = p\n    return results\n"
  },
  {
    "path": "modules/processing_helpers.py",
    "content": "import os\nimport time\nimport math\nimport random\nimport warnings\nimport torch\nimport numpy as np\nimport cv2\nfrom PIL import Image\nfrom blendmodes.blend import blendLayers, BlendType\nfrom modules import shared, devices, images, sd_models, sd_samplers, sd_vae, sd_hijack_hypertile, processing_vae, timer\nfrom modules.api import helpers\n\n\ndebug = shared.log.trace if os.environ.get('SD_PROCESS_DEBUG', None) is not None else lambda *args, **kwargs: None\ndebug_steps = shared.log.trace if os.environ.get('SD_STEPS_DEBUG', None) is not None else lambda *args, **kwargs: None\ndebug_steps('Trace: STEPS')\n\n\ndef is_modular():\n    return sd_models.get_diffusers_task(shared.sd_model) == sd_models.DiffusersTaskType.MODULAR\n\n\ndef is_txt2img():\n    return sd_models.get_diffusers_task(shared.sd_model) == sd_models.DiffusersTaskType.TEXT_2_IMAGE\n\n\ndef is_refiner_enabled(p):\n    return p.enable_hr and (p.refiner_steps > 0) and (p.refiner_start > 0) and (p.refiner_start < 1) and (shared.sd_refiner is not None)\n\n\ndef setup_color_correction(image):\n    debug(\"Calibrating color correction\")\n    correction_target = cv2.cvtColor(np.asarray(image.copy()), cv2.COLOR_RGB2LAB)\n    return correction_target\n\n\ndef apply_color_correction(correction, original_image):\n    from skimage import exposure\n    shared.log.debug(f\"Applying color correction: correction={correction.shape} image={original_image}\")\n    np_image = np.asarray(original_image)\n    np_recolor = cv2.cvtColor(np_image, cv2.COLOR_RGB2LAB)\n    np_match = exposure.match_histograms(np_recolor, correction, channel_axis=2)\n    np_output = cv2.cvtColor(np_match, cv2.COLOR_LAB2RGB)\n    image = Image.fromarray(np_output.astype(\"uint8\"))\n    image = blendLayers(image, original_image, BlendType.LUMINOSITY)\n    return image\n\n\ndef apply_overlay(image: Image, paste_loc, index, overlays):\n    if overlays is None or index >= len(overlays):\n        return image\n    debug(f'Apply overlay: image={image} loc={paste_loc} index={index} overlays={overlays}')\n    overlay = overlays[index]\n    if not isinstance(image, Image.Image) or not isinstance(overlay, Image.Image):\n        return image\n    try:\n        if paste_loc is not None and (isinstance(paste_loc, tuple) or isinstance(paste_loc, list)):\n            x, y, w, h = paste_loc\n            if x is None or y is None or w is None or h is None:\n                return image\n            if image.width != w or image.height != h or x != 0 or y != 0:\n                base_image = Image.new('RGBA', (overlay.width, overlay.height))\n                image = images.resize_image(2, image, w, h)\n                base_image.paste(image, (x, y))\n                image = base_image\n        image = image.convert('RGBA')\n        image.alpha_composite(overlay)\n        image = image.convert('RGB')\n    except Exception as e:\n        shared.log.error(f'Apply overlay: {e}')\n    return image\n\n\ndef create_binary_mask(image):\n    if image.mode == 'RGBA' and image.getextrema()[-1] != (255, 255):\n        image = image.split()[-1].convert(\"L\").point(lambda x: 255 if x > 128 else 0)\n    else:\n        image = image.convert('L')\n    return image\n\n\ndef images_tensor_to_samples(image, approximation=None, model=None): # pylint: disable=unused-argument\n    if model is None:\n        model = shared.sd_model\n    model.first_stage_model.to(devices.dtype_vae)\n    image = image.to(shared.device, dtype=devices.dtype_vae)\n    image = image * 2 - 1\n    if len(image) > 1:\n        x_latent = torch.stack([\n            model.get_first_stage_encoding(model.encode_first_stage(torch.unsqueeze(img, 0)))[0]\n            for img in image\n        ])\n    else:\n        x_latent = model.get_first_stage_encoding(model.encode_first_stage(image))\n    return x_latent\n\n\ndef get_sampler_name(sampler_index: int, img: bool = False) -> str:\n    sampler_index = sampler_index or 0\n    if len(sd_samplers.samplers) > sampler_index:\n        sampler_name = sd_samplers.samplers[sampler_index].name\n    else:\n        sampler_name = \"Default\"\n        shared.log.warning(f'Sampler not found: index={sampler_index} available={[s.name for s in sd_samplers.samplers]} fallback={sampler_name}')\n    if img and sampler_name == \"PLMS\":\n        sampler_name = \"Default\"\n        shared.log.warning(f'Sampler not compatible: name=PLMS fallback={sampler_name}')\n    return sampler_name\n\n\ndef get_sampler_index(sampler_name: str) -> int:\n    sampler_index = 0\n    for i, sampler in enumerate(sd_samplers.samplers):\n        if sampler.name == sampler_name:\n            sampler_index = i\n            break\n    return sampler_index\n\n\ndef slerp(val, lo, hi): # from https://discuss.pytorch.org/t/help-regarding-slerp-function-for-generative-model-sampling/32475/3\n    lo_norm = lo / torch.norm(lo, dim=1, keepdim=True)\n    hi_norm = hi / torch.norm(hi, dim=1, keepdim=True)\n    dot = (lo_norm * hi_norm).sum(1)\n    dot_mean = dot.mean()\n    if dot_mean > 0.9999: # simplifies slerp to lerp if vectors are nearly parallel\n        return lo * val + hi * (1 - val)\n    if dot_mean < 0.0001: # also simplifies slerp to lerp to avoid division-by-zero later on\n        return lo * (1.0 - val) + hi * val\n    omega = torch.acos(dot)\n    so = torch.sin(omega)\n    lo_res = (torch.sin((1.0 - val) * omega) / so).unsqueeze(1)\n    hi_res = (torch.sin(val * omega) / so).unsqueeze(1)\n    # lo_res[lo_res != lo_res] = 0 # replace nans with zeros, but should not happen with dot_mean filtering\n    # hi_res[hi_res != hi_res] = 0\n    res = lo * lo_res + hi * hi_res\n    return res\n\n\ndef slerp_alt(val, lo, hi): # from https://discuss.pytorch.org/t/help-regarding-slerp-function-for-generative-model-sampling/32475/3\n    lo_norm = lo / torch.linalg.norm(lo, dim=1, keepdim=True)\n    hi_norm = hi / torch.linalg.norm(hi, dim=1, keepdim=True)\n    dot = (lo_norm * hi_norm).sum(1)\n    dot_mean = dot.mean().abs()\n    if dot_mean > 0.9999: # simplifies slerp to lerp if vectors are nearly parallel\n        lerp_val = lo * val + hi * (1 - val)\n        return lerp_val / torch.linalg.norm(lerp_val) * torch.sqrt(torch.linalg.norm(hi_norm) * torch.linalg.norm(lo_norm))\n    if dot_mean < 0.0001: # also simplifies slerp to lerp to avoid division-by-zero later on\n        lerp_val = lo * (1.0 - val) + hi * val\n        return lerp_val / torch.linalg.norm(lerp_val) * torch.sqrt(torch.linalg.norm(hi_norm) * torch.linalg.norm(lo_norm))\n    omega = torch.acos(dot)\n    so = torch.sin(omega)\n    lo_res = (torch.sin((1.0 - val) * omega) / so).unsqueeze(1)\n    hi_res = (torch.sin(val * omega) / so).unsqueeze(1)\n    res = lo * lo_res + hi * hi_res\n    return res\n\n\ndef create_random_tensors(shape, seeds, subseeds=None, subseed_strength=0.0, seed_resize_from_h=0, seed_resize_from_w=0, p=None):\n    eta_noise_seed_delta = shared.opts.eta_noise_seed_delta or 0\n    xs = []\n    # if we have multiple seeds, this means we are working with batch size>1; this then\n    # enables the generation of additional tensors with noise that the sampler will use during its processing.\n    # Using those pre-generated tensors instead of simple torch.randn allows a batch with seeds [100, 101] to\n    # produce the same images as with two batches [100], [101].\n    if p is not None and p.sampler is not None and ((len(seeds) > 1 and shared.opts.enable_batch_seeds) or (eta_noise_seed_delta > 0)):\n        sampler_noises = [[] for _ in range(p.sampler.number_of_needed_noises(p))]\n    else:\n        sampler_noises = None\n    for i, seed in enumerate(seeds):\n        noise_shape = shape if seed_resize_from_h <= 0 or seed_resize_from_w <= 0 else (shape[0], seed_resize_from_h//8, seed_resize_from_w//8)\n        subnoise = None\n        if subseeds is not None:\n            subseed = 0 if i >= len(subseeds) else subseeds[i]\n            subnoise = devices.randn(subseed, noise_shape)\n        # randn results depend on device; gpu and cpu get different results for same seed;\n        # the way I see it, it's better to do this on CPU, so that everyone gets same result;\n        # but the original script had it like this, so I do not dare change it for now because\n        # it will break everyone's seeds.\n        noise = devices.randn(seed, noise_shape)\n        if subnoise is not None:\n            noise = slerp(subseed_strength, noise, subnoise)\n        if noise_shape != shape:\n            x = devices.randn(seed, shape)\n            dx = (shape[2] - noise_shape[2]) // 2\n            dy = (shape[1] - noise_shape[1]) // 2\n            w = noise_shape[2] if dx >= 0 else noise_shape[2] + 2 * dx\n            h = noise_shape[1] if dy >= 0 else noise_shape[1] + 2 * dy\n            tx = 0 if dx < 0 else dx\n            ty = 0 if dy < 0 else dy\n            dx = max(-dx, 0)\n            dy = max(-dy, 0)\n            x[:, ty:ty+h, tx:tx+w] = noise[:, dy:dy+h, dx:dx+w]\n            noise = x\n        if sampler_noises is not None:\n            cnt = p.sampler.number_of_needed_noises(p)\n            if eta_noise_seed_delta > 0:\n                torch.manual_seed(seed + eta_noise_seed_delta)\n            for j in range(cnt):\n                sampler_noises[j].append(devices.randn_without_seed(tuple(noise_shape)))\n        xs.append(noise)\n    if sampler_noises is not None:\n        p.sampler.sampler_noises = [torch.stack(n).to(shared.device) for n in sampler_noises]\n    x = torch.stack(xs).to(shared.device)\n    return x\n\n\ndef decode_first_stage(model, x):\n    if not shared.opts.keep_incomplete and (shared.state.skipped or shared.state.interrupted):\n        shared.log.debug(f'Decode VAE: skipped={shared.state.skipped} interrupted={shared.state.interrupted}')\n        x_sample = torch.zeros((len(x), 3, x.shape[2] * 8, x.shape[3] * 8), dtype=devices.dtype_vae, device=devices.device)\n        return x_sample\n    with devices.autocast(disable = x.dtype==devices.dtype_vae):\n        try:\n            if hasattr(model, 'decode_first_stage'):\n                # x_sample = model.decode_first_stage(x) * 0.5 + 0.5\n                x_sample = model.decode_first_stage(x)\n            elif hasattr(model, 'vae'):\n                x_sample = processing_vae.vae_decode(latents=x, model=model, output_type='np')\n            else:\n                x_sample = x\n                shared.log.error('Decode VAE unknown model')\n        except Exception as e:\n            x_sample = x\n            shared.log.error(f'Decode VAE: {e}')\n    return x_sample\n\n\ndef get_fixed_seed(seed):\n    if (seed is None) or (seed == '') or (seed == -1):\n        random.seed()\n        seed = int(random.randrange(4294967294))\n    return seed\n\n\ndef fix_seed(p):\n    p.seed = get_fixed_seed(p.seed)\n    p.subseed = get_fixed_seed(p.subseed)\n    if p.all_seeds is None or len(p.all_seeds) == 0:\n        p.all_seeds = [p.seed]\n    else:\n        for i in range(len(p.all_seeds)):\n            p.all_seeds[i] = get_fixed_seed(p.all_seeds[i])\n    if p.all_subseeds is None or len(p.all_subseeds) == 0:\n        p.all_subseeds = [p.subseed]\n    else:\n        for i in range(len(p.all_subseeds)):\n            p.all_subseeds[i] = get_fixed_seed(p.all_subseeds[i])\n\n\ndef old_hires_fix_first_pass_dimensions(width, height):\n    \"\"\"old algorithm for auto-calculating first pass size\"\"\"\n    desired_pixel_count = 512 * 512\n    actual_pixel_count = width * height\n    scale = math.sqrt(desired_pixel_count / actual_pixel_count)\n    width = math.ceil(scale * width / 64) * 64\n    height = math.ceil(scale * height / 64) * 64\n    return width, height\n\n\ndef validate_sample(tensor):\n    t0 = time.time()\n    if not isinstance(tensor, np.ndarray) and not isinstance(tensor, torch.Tensor):\n        return tensor\n    dtype = tensor.dtype\n    if tensor.dtype == torch.bfloat16: # numpy does not support bf16\n        tensor = tensor.to(torch.float16)\n    if isinstance(tensor, torch.Tensor) and hasattr(tensor, 'detach'):\n        sample = tensor.detach().cpu().numpy()\n    elif isinstance(tensor, np.ndarray):\n        sample = tensor\n    else:\n        shared.log.warning(f'Decode: type={type(tensor)} unknown sample')\n        return tensor\n    sample = 255.0 * sample\n    with warnings.catch_warnings(record=True) as w:\n        cast = sample.astype(np.uint8)\n    if len(w) > 0:\n        nans = np.isnan(sample).sum()\n        cast = np.nan_to_num(sample)\n        cast = cast.astype(np.uint8)\n        vae = shared.sd_model.vae.dtype if hasattr(shared.sd_model, 'vae') else None\n        upcast = getattr(shared.sd_model.vae.config, 'force_upcast', None) if hasattr(shared.sd_model, 'vae') and hasattr(shared.sd_model.vae, 'config') else None\n        shared.log.error(f'Decode: sample={sample.shape} invalid={nans} dtype={dtype} vae={vae} upcast={upcast} failed to validate')\n        if upcast is not None and not upcast:\n            setattr(shared.sd_model.vae.config, 'force_upcast', True) # noqa: B010\n            shared.log.info('Decode: set upcast=True and attempt to retry operation')\n    t1 = time.time()\n    timer.process.add('validate', t1 - t0)\n    return cast\n\n\ndef decode_images(image):\n    if isinstance(image, list):\n        decoded = []\n        for i, img in enumerate(image):\n            if isinstance(img, str):\n                try:\n                    decoded.append(helpers.decode_base64_to_image(img, quiet=True))\n                except Exception as e:\n                    shared.log.error(f'Decode image[{i}]: {e}')\n            elif isinstance(img, Image.Image):\n                decoded.append(img)\n            else:\n                shared.log.error(f'Decode image[{i}]: {type(img)} unknown type')\n        return decoded\n    elif isinstance(image, str):\n        try:\n            return helpers.decode_base64_to_image(image, quiet=True)\n        except Exception as e:\n            shared.log.error(f'Decode image: {e}')\n    # elif isinstance(image, Image.Image):\n    #     return image\n    # elif torch.is_tensor(image):\n    #     return image\n    else:\n        return image\n        # shared.log.error(f'Decode image: {type(image)} unknown type')\n    return None\n\n\ndef resize_init_images(p):\n    try:\n        if getattr(p, 'image', None) is not None and getattr(p, 'init_images', None) is None:\n            p.init_images = [p.image]\n        if getattr(p, 'init_images', None) is not None and len(p.init_images) > 0:\n            p.init_images = decode_images(p.init_images)\n            vae_scale_factor = sd_vae.get_vae_scale_factor()\n            tgt_width = vae_scale_factor * math.ceil(p.init_images[0].width / vae_scale_factor)\n            tgt_height = vae_scale_factor * math.ceil(p.init_images[0].height / vae_scale_factor)\n            if p.init_images[0].size != (tgt_width, tgt_height):\n                shared.log.debug(f'Resizing init images: original={p.init_images[0].width}x{p.init_images[0].height} target={tgt_width}x{tgt_height}')\n                p.init_images = [images.resize_image(1, image, tgt_width, tgt_height, upscaler_name=None) for image in p.init_images]\n                p.height = tgt_height\n                p.width = tgt_width\n                sd_hijack_hypertile.hypertile_set(p)\n            if getattr(p, 'mask', None) is not None and p.mask is not None and p.mask.size != (tgt_width, tgt_height):\n                p.mask = decode_images(p.mask)\n                p.mask = images.resize_image(1, p.mask, tgt_width, tgt_height, upscaler_name=None)\n            if getattr(p, 'init_mask', None) is not None and p.init_mask is not None and p.init_mask.size != (tgt_width, tgt_height):\n                p.init_mask = decode_images(p.init_mask)\n                p.init_mask = images.resize_image(1, p.init_mask, tgt_width, tgt_height, upscaler_name=None)\n            if getattr(p, 'mask_for_overlay', None) is not None and p.mask_for_overlay is not None and p.mask_for_overlay.size != (tgt_width, tgt_height):\n                p.mask_for_overlay = decode_images(p.mask_for_overlay)\n                p.mask_for_overlay = images.resize_image(1, p.mask_for_overlay, tgt_width, tgt_height, upscaler_name=None)\n            return tgt_width, tgt_height\n    except Exception:\n        pass\n    return p.width, p.height\n\n\ndef resize_hires(p, latents): # input=latents output=pil if not latent_upscaler else latent\n    if (p.hr_upscale_to_x == 0 or p.hr_upscale_to_y == 0) and hasattr(p, 'init_hr'):\n        shared.log.error('Hires: missing upscaling dimensions')\n        return latents\n\n    jobid = shared.state.begin('Resize')\n\n    if p.hr_upscaler.lower().startswith('latent'):\n        if isinstance(latents, list):\n            try:\n                for i in range(len(latents)):\n                    if not torch.is_tensor(latents[i]):\n                        shared.log.warning(f'Hires: input[{i}]={type(latents[i])} not tensor')\n                        latents[i] = processing_vae.vae_encode(image=latents[i], model=shared.sd_model, vae_type=p.vae_type)\n                    latents = torch.cat(latents, dim=0)\n            except Exception as e:\n                shared.log.error(f'Hires: prepare latents: {e}')\n                resized = latents\n        elif not torch.is_tensor(latents):\n            shared.log.warning(f'Hires: input={type(latents)} not tensor')\n        resized = images.resize_image(p.hr_resize_mode, latents, p.hr_upscale_to_x, p.hr_upscale_to_y, upscaler_name=p.hr_upscaler, context=p.hr_resize_context)\n    else:\n        decoded = processing_vae.vae_decode(latents=latents, model=shared.sd_model, vae_type=p.vae_type, output_type='pil', width=p.width, height=p.height)\n        resized = []\n        for image in decoded:\n            resize = images.resize_image(p.hr_resize_mode, image, p.hr_upscale_to_x, p.hr_upscale_to_y, upscaler_name=p.hr_upscaler, context=p.hr_resize_context)\n            resized.append(resize)\n\n    devices.torch_gc()\n    shared.state.end(jobid)\n    return resized\n\n\ndef calculate_base_steps(p, use_denoise_start, use_refiner_start):\n    if len(getattr(p, 'timesteps', [])) > 0:\n        return None\n    cls = shared.sd_model.__class__.__name__\n    if shared.sd_model_type not in ['sd', 'sdxl']:\n        steps = p.steps\n    elif is_modular():\n        steps = p.steps\n    elif not is_txt2img():\n        if cls in sd_models.i2i_pipes:\n            steps = p.steps\n        elif use_denoise_start and (shared.sd_model_type == 'sdxl'):\n            steps = p.steps // (1 - p.refiner_start)\n        elif p.denoising_strength > 0:\n            steps = (p.steps // p.denoising_strength) + 1\n        else:\n            steps = p.steps\n    elif use_refiner_start and shared.sd_model_type == 'sdxl':\n        steps = (p.steps // p.refiner_start) + 1\n    else:\n        steps = p.steps\n    debug_steps(f'Steps: type=base input={p.steps} output={steps} task={sd_models.get_diffusers_task(shared.sd_model)} refiner={use_refiner_start} denoise={p.denoising_strength} model={shared.sd_model_type}')\n    return max(1, int(steps))\n\n\ndef calculate_hires_steps(p):\n    if shared.sd_model_type not in ['sd', 'sdxl']:\n        if p.hr_second_pass_steps > 0:\n            steps = p.hr_second_pass_steps\n        else:\n            steps = p.steps\n    elif p.hr_second_pass_steps > 0:\n        steps = (p.hr_second_pass_steps // p.denoising_strength) + 1\n    elif p.denoising_strength > 0:\n        steps = (p.steps // p.denoising_strength) + 1\n    else:\n        steps = 0\n    debug_steps(f'Steps: type=hires input={p.hr_second_pass_steps} output={steps} denoise={p.denoising_strength} model={shared.sd_model_type}')\n    return max(1, int(steps))\n\n\ndef calculate_refiner_steps(p):\n    if shared.sd_refiner_type == 'sdxl':\n        if p.refiner_start > 0 and p.refiner_start < 1:\n            steps = (p.refiner_steps // (1 - p.refiner_start) // 2) + 1\n        elif p.denoising_strength > 0:\n            steps = (p.refiner_steps // p.denoising_strength) + 1\n        else:\n            steps = 0\n    else:\n        if p.refiner_steps > 0:\n            steps = p.refiner_steps\n        else:\n            steps = p.steps\n    debug_steps(f'Steps: type=refiner input={p.refiner_steps} output={steps} start={p.refiner_start} denoise={p.denoising_strength}')\n    return max(1, int(steps))\n\n\ndef get_generator(p):\n    if shared.opts.diffusers_generator_device == \"Unset\":\n        generator_device = None\n        generator = None\n    elif getattr(p, \"generator\", None) is not None:\n        generator_device = devices.cpu if shared.opts.diffusers_generator_device == \"CPU\" else shared.device\n        generator = p.generator\n    else:\n        generator_device = devices.cpu if shared.opts.diffusers_generator_device == \"CPU\" else shared.device\n        try:\n            p.seeds = [seed if seed != -1 else get_fixed_seed(seed) for seed in p.seeds if seed]\n            devices.randn(p.seeds[0])\n            generator = [torch.Generator(generator_device).manual_seed(s) for s in p.seeds]\n        except Exception as e:\n            shared.log.error(f'Torch generator: seeds={p.seeds} device={generator_device} {e}')\n            generator = None\n    return generator\n\n\ndef set_latents(p):\n    def dummy_prepare_latents(*args, **_kwargs):\n        return args[0] # just return image to skip re-processing it\n\n    from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion import retrieve_timesteps\n    image = shared.sd_model.image_processor.preprocess(p.init_images) # resize to mod8, normalize, transpose, to tensor\n    timesteps, steps = retrieve_timesteps(shared.sd_model.scheduler, p.steps, devices.device)\n    timesteps, steps = shared.sd_model.get_timesteps(steps, p.denoising_strength, devices.device)\n    timestep = timesteps[:1].repeat(p.batch_size) # need to determine level of added noise\n    latents = shared.sd_model.prepare_latents(image, timestep, batch_size=p.batch_size, num_images_per_prompt=1, dtype=devices.dtype, device=devices.device, generator=get_generator(p))\n    shared.sd_model.prepare_latents = dummy_prepare_latents # stop diffusers processing latents again\n    return latents\n\n\ndef apply_circular(enable: bool, model):\n    if not hasattr(model, 'unet') or not hasattr(model, 'vae'):\n        return\n    current = getattr(model, 'texture_tiling', None)\n    if isinstance(current, bool) and current == enable:\n        return\n    try:\n        i = 0\n        for layer in [layer for layer in model.unet.modules() if type(layer) is torch.nn.Conv2d]:\n            i += 1\n            layer.padding_mode = 'circular' if enable else 'zeros'\n        for layer in [layer for layer in model.vae.modules() if type(layer) is torch.nn.Conv2d]:\n            i += 1\n            layer.padding_mode = 'circular' if enable else 'zeros'\n        model.texture_tiling = enable\n        if current is not None or enable:\n            shared.log.debug(f'Apply texture tiling: enabled={enable} layers={i} cls={model.__class__.__name__} ')\n    except Exception as e:\n        debug(f\"Diffusers tiling failed: {e}\")\n\n\ndef save_intermediate(p, latents, suffix):\n    for i in range(len(latents)):\n        from modules.processing import create_infotext\n        info=create_infotext(p, p.all_prompts, p.all_seeds, p.all_subseeds, [], iteration=p.iteration, position_in_batch=i)\n        decoded = processing_vae.vae_decode(latents=latents, model=shared.sd_model, output_type='pil', vae_type=p.vae_type, width=p.width, height=p.height)\n        for j in range(len(decoded)):\n            images.save_image(decoded[j], path=p.outpath_samples, basename=\"\", seed=p.seeds[i], prompt=p.prompts[i], extension=shared.opts.samples_format, info=info, p=p, suffix=suffix)\n\n\ndef update_sampler(p, sd_model, second_pass=False):\n    sampler_selection = p.hr_sampler_name if second_pass else p.sampler_name\n    if hasattr(sd_model, 'scheduler'):\n        if sampler_selection == 'None':\n            return\n        sampler = sd_samplers.find_sampler(sampler_selection)\n        if sampler is None:\n            shared.log.warning(f'Sampler: \"{sampler_selection}\" not found')\n            sampler = sd_samplers.all_samplers_map.get(\"UniPC\")\n        sampler = sd_samplers.create_sampler(sampler.name, sd_model)\n        if sampler is None or sampler_selection == 'Default':\n            if second_pass:\n                p.hr_sampler = 'Default'\n            else:\n                p.sampler_name = 'Default'\n            return\n        sampler_options = []\n        if sampler.config.get('rescale_betas_zero_snr', False) and shared.opts.schedulers_rescale_betas != shared.opts.data_labels.get('schedulers_rescale_betas').default:\n            sampler_options.append('rescale')\n        if sampler.config.get('thresholding', False) and shared.opts.schedulers_use_thresholding != shared.opts.data_labels.get('schedulers_use_thresholding').default:\n            sampler_options.append('dynamic')\n        if 'lower_order_final' in sampler.config and shared.opts.schedulers_use_loworder != shared.opts.data_labels.get('schedulers_use_loworder').default:\n            sampler_options.append('low order')\n        if len(sampler_options) > 0:\n            p.extra_generation_params['Sampler options'] = '/'.join(sampler_options)\n\n\ndef get_job_name(p, model):\n    if hasattr(model, 'pipe'):\n        model = model.pipe\n    if getattr(p, 'xyz', False):\n        return 'Ignore' # xyz grid handles its own jobs\n    if sd_models.get_diffusers_task(model) == sd_models.DiffusersTaskType.TEXT_2_IMAGE:\n        return 'Text'\n    elif sd_models.get_diffusers_task(model) == sd_models.DiffusersTaskType.IMAGE_2_IMAGE:\n        if p.is_refiner_pass:\n            return 'Refiner'\n        elif p.is_hr_pass:\n            return 'Hires'\n        else:\n            return 'Image'\n    elif sd_models.get_diffusers_task(model) == sd_models.DiffusersTaskType.INPAINTING:\n        if p.detailer_enabled:\n            return 'Detailer'\n        else:\n            return 'Inpaint'\n    else:\n        return 'Unknown'\n"
  },
  {
    "path": "modules/processing_info.py",
    "content": "import os\nfrom installer import git_commit\nfrom modules import shared, sd_samplers_common, sd_vae, generation_parameters_copypaste\nfrom modules.processing_class import StableDiffusionProcessing\n\n\nargs = {} # maintain history\ninfotext = '' # maintain history\ndebug = shared.log.trace if os.environ.get('SD_PROCESS_DEBUG', None) is not None else lambda *args, **kwargs: None\n\n\ndef get_last_args():\n    return args, infotext\n\n\ndef create_infotext(p: StableDiffusionProcessing, all_prompts=None, all_seeds=None, all_subseeds=None, comments=None, iteration=0, position_in_batch=0, index=None, all_negative_prompts=None, grid=None):\n    global args, infotext # pylint: disable=global-statement\n    if p is None:\n        shared.log.warning('Processing info: no data')\n        return ''\n    if not hasattr(shared.sd_model, 'sd_checkpoint_info'):\n        return ''\n    if index is None:\n        index = position_in_batch + iteration * p.batch_size\n    if all_prompts is None:\n        all_prompts = p.all_prompts or [p.prompt]\n    if all_negative_prompts is None:\n        all_negative_prompts = p.all_negative_prompts or [p.negative_prompt]\n    if all_seeds is None:\n        all_seeds = p.all_seeds or [p.seed]\n    if all_subseeds is None:\n        all_subseeds = p.all_subseeds or [p.subseed]\n    while len(all_prompts) <= index:\n        all_prompts.insert(0, p.prompt)\n    while len(all_seeds) <= index:\n        all_seeds.insert(0, int(p.seed))\n    while len(all_subseeds) <= index:\n        all_subseeds.insert(0, int(p.subseed))\n    while len(all_negative_prompts) <= index:\n        all_negative_prompts.insert(0, p.negative_prompt)\n    comment = ', '.join(comments) if comments is not None and type(comments) is list else None\n    ops = list(set(p.ops))\n    args = {\n        # basic\n        \"Steps\": p.steps,\n        \"Size\": f\"{p.width}x{p.height}\" if hasattr(p, 'width') and hasattr(p, 'height') else None,\n        \"Sampler\": p.sampler_name if p.sampler_name != 'Default' else None,\n        \"Scheduler\": shared.sd_model.scheduler.__class__.__name__ if getattr(shared.sd_model, 'scheduler', None) is not None else None,\n        \"Seed\": all_seeds[index],\n        \"Seed resize from\": None if p.seed_resize_from_w <= 0 or p.seed_resize_from_h <= 0 else f\"{p.seed_resize_from_w}x{p.seed_resize_from_h}\",\n        \"CFG scale\": p.cfg_scale if p.cfg_scale > 1.0 else 1.0,\n        \"CFG rescale\": p.diffusers_guidance_rescale if p.diffusers_guidance_rescale > 0 else None,\n        \"CFG end\": p.cfg_end if p.cfg_end < 1.0 else None,\n        \"CFG true\": p.pag_scale if p.pag_scale > 0 else None,\n        \"CFG adaptive\": p.pag_adaptive if p.pag_adaptive != 0.5 else None,\n        \"Clip skip\": p.clip_skip if p.clip_skip > 1 else None,\n        \"Batch\": f'{p.n_iter}x{p.batch_size}' if p.n_iter > 1 or p.batch_size > 1 else None,\n        \"Refiner prompt\": p.refiner_prompt if len(p.refiner_prompt) > 0 else None,\n        \"Refiner negative\": p.refiner_negative if len(p.refiner_negative) > 0 else None,\n        \"Styles\": \"; \".join(p.styles) if p.styles is not None and len(p.styles) > 0 else None,\n        \"App\": 'SD.Next',\n        \"Version\": git_commit,\n        \"Parser\": shared.opts.prompt_attention if shared.opts.prompt_attention != 'native' else None,\n        \"Comment\": comment,\n        \"Pipeline\": shared.sd_model.__class__.__name__,\n        \"TE\": None if (shared.opts.sd_text_encoder is None or shared.opts.sd_text_encoder == 'Default') else shared.opts.sd_text_encoder,\n        \"UNet\": None if (shared.opts.sd_unet is None or shared.opts.sd_unet == 'Default') else shared.opts.sd_unet,\n        \"Operations\": '; '.join(ops).replace('\"', '') if len(p.ops) > 0 else 'none',\n    }\n    if shared.opts.add_model_name_to_info:\n        if getattr(shared.sd_model, 'sd_checkpoint_info', None) is not None:\n            args[\"Model\"] = shared.sd_model.sd_checkpoint_info.model_name.replace(',', '').replace(':', '')\n    if shared.opts.add_model_hash_to_info:\n        if getattr(p, 'sd_model_hash', None) is not None:\n            args[\"Model hash\"] = p.sd_model_hash\n        elif getattr(shared.sd_model, 'sd_model_hash', None) is not None:\n            args[\"Model hash\"] = shared.sd_model.sd_model_hash\n    if p.vae_type == 'Full':\n        args[\"VAE\"] = (None if not shared.opts.add_model_name_to_info or sd_vae.loaded_vae_file is None else os.path.splitext(os.path.basename(sd_vae.loaded_vae_file))[0])\n    elif p.vae_type == 'Tiny':\n        args[\"VAE\"] = 'TAESD'\n    elif p.vae_type == 'REPA-E':\n        args[\"VAE\"] = 'REPA-E'\n    elif p.vae_type == 'Remote':\n        args[\"VAE\"] = 'Remote'\n    if grid is None and (p.n_iter > 1 or p.batch_size > 1) and index >= 0:\n        args['Index'] = f'{p.iteration + 1}x{index + 1}'\n    if grid is not None:\n        args['Grid'] = grid\n    if 'txt2img' in p.ops:\n        args[\"Variation seed\"] = all_subseeds[index] if p.subseed_strength > 0 else None\n        args[\"Variation strength\"] = p.subseed_strength if p.subseed_strength > 0 else None\n    if 'hires' in p.ops or 'upscale' in p.ops:\n        is_resize = p.hr_resize_mode > 0 and (p.hr_upscaler != 'None' or p.hr_resize_mode == 5)\n        is_fixed = p.hr_resize_x > 0 or p.hr_resize_y > 0\n        args[\"Refine\"] = p.enable_hr\n        if is_resize:\n            args[\"HiRes mode\"] = p.hr_resize_mode\n            args[\"HiRes context\"] = p.hr_resize_context if p.hr_resize_mode == 5 else None\n            args[\"Hires upscaler\"] = p.hr_upscaler\n            if is_fixed:\n                args[\"Hires fixed\"] = f\"{p.hr_resize_x}x{p.hr_resize_y}\"\n            else:\n                args[\"Hires scale\"] = p.hr_scale\n            args[\"Hires size\"] = f\"{p.hr_upscale_to_x}x{p.hr_upscale_to_y}\"\n        if p.hr_force or ('Latent' in p.hr_upscaler):\n            args[\"Hires force\"] = p.hr_force\n            args[\"Hires steps\"] = p.hr_second_pass_steps\n            args[\"Hires strength\"] = p.hr_denoising_strength\n            args[\"Hires sampler\"] = p.hr_sampler_name\n            args[\"Hires CFG scale\"] = p.image_cfg_scale\n    if 'refine' in p.ops:\n        args[\"Refine\"] = p.enable_hr\n        args[\"Refiner\"] = None if (not shared.opts.add_model_name_to_info) or (not shared.sd_refiner) or (not shared.sd_refiner.sd_checkpoint_info.model_name) else shared.sd_refiner.sd_checkpoint_info.model_name.replace(',', '').replace(':', '')\n        args['Hires CFG scale'] = p.image_cfg_scale\n        args['Refiner steps'] = p.refiner_steps\n        args['Refiner start'] = p.refiner_start\n        args[\"Hires steps\"] = p.hr_second_pass_steps\n        args[\"Hires sampler\"] = p.hr_sampler_name\n    if ('img2img' in p.ops or 'inpaint' in p.ops) and ('txt2img' not in p.ops and 'hires' not in p.ops): # real img2img/inpaint\n        args[\"Init image size\"] = f\"{getattr(p, 'init_img_width', 0)}x{getattr(p, 'init_img_height', 0)}\"\n        args[\"Init image hash\"] = getattr(p, 'init_img_hash', None)\n        args['Image CFG scale'] = p.image_cfg_scale\n        args[\"Mask weight\"] = getattr(p, \"inpainting_mask_weight\", shared.opts.inpainting_mask_weight) if p.is_using_inpainting_conditioning else None\n        args[\"Denoising strength\"] = getattr(p, 'denoising_strength', None)\n        if args[\"Size\"] != args[\"Init image size\"]:\n            args['Resize scale'] = float(getattr(p, 'scale_by', None)) if getattr(p, 'scale_by', None) != 1 else None\n            args['Resize mode'] = shared.resize_modes[p.resize_mode] if shared.resize_modes[p.resize_mode] != 'None' else None\n        if args[\"Size\"] is None:\n            args[\"Size\"] = args[\"Init image size\"]\n    if p.resize_mode_before != 0 and p.resize_name_before != 'None' and hasattr(p, 'init_images') and p.init_images is not None and len(p.init_images) > 0:\n        args['Resize before'] = f\"{p.width_before}x{p.height_before}\"\n        args['Resize mode before'] = p.resize_mode_before\n        args['Resize name before'] = p.resize_name_before\n        args['Resize scale before'] = float(p.scale_by_before) if p.scale_by_before != 1.0 else None\n    if p.resize_mode_after != 0 and p.resize_name_after != 'None':\n        args['Resize after'] = f\"{p.width_after}x{p.height_after}\"\n        args['Resize mode after'] = p.resize_mode_after\n        args['Resize name after'] = p.resize_name_after\n        args['Resize scale after'] = float(p.scale_by_after) if p.scale_by_after != 1.0 else None\n    if p.resize_name_mask != 'None' and p.scale_by_mask != 1.0:\n        args['Resize mask'] = f\"{p.width_mask}x{p.height_mask}\"\n        args['Resize mode mask'] = p.resize_mode_mask\n        args['Resize name mask'] = p.resize_name_mask\n        args['Resize scale mask'] = float(p.scale_by_mask)\n    if 'detailer' in p.ops:\n        args[\"Detailer\"] = ', '.join(shared.opts.detailer_models) if len(shared.opts.detailer_args) == 0 else shared.opts.detailer_args\n        args[\"Detailer steps\"] = p.detailer_steps\n        args[\"Detailer strength\"] = p.detailer_strength\n        args[\"Detailer resolution\"] = p.detailer_resolution if p.detailer_resolution != 1024 else None\n        args[\"Detailer prompt\"] = p.detailer_prompt if len(p.detailer_prompt) > 0 else None\n        args[\"Detailer negative\"] = p.detailer_negative if len(p.detailer_negative) > 0 else None\n    if 'color' in p.ops:\n        args[\"Color correction\"] = True\n    if shared.opts.token_merging_method == 'ToMe': # tome/todo\n        args['ToMe'] = shared.opts.tome_ratio if shared.opts.tome_ratio != 0 else None\n    elif shared.opts.token_merging_method == 'ToDo':\n        args['ToDo'] = shared.opts.todo_ratio if shared.opts.todo_ratio != 0 else None\n    if hasattr(shared.sd_model, 'embedding_db') and len(shared.sd_model.embedding_db.embeddings_used) > 0: # register used embeddings\n        args['Embeddings'] = ', '.join(shared.sd_model.embedding_db.embeddings_used)\n\n    # samplers\n    if getattr(p, 'sampler_name', None) is not None and p.sampler_name.lower() != 'default':\n        args[\"Sampler eta delta\"] = shared.opts.eta_noise_seed_delta if shared.opts.eta_noise_seed_delta != 0 and sd_samplers_common.is_sampler_using_eta_noise_seed_delta(p) else None\n        args[\"Sampler eta multiplier\"] = p.initial_noise_multiplier if getattr(p, 'initial_noise_multiplier', 1.0) != 1.0 else None\n        args['Sampler timesteps'] = shared.opts.schedulers_timesteps if shared.opts.schedulers_timesteps != shared.opts.data_labels.get('schedulers_timesteps').default else None\n        args['Sampler spacing'] = shared.opts.schedulers_timestep_spacing if shared.opts.schedulers_timestep_spacing != shared.opts.data_labels.get('schedulers_timestep_spacing').default else None\n        args['Sampler sigma'] = shared.opts.schedulers_sigma if shared.opts.schedulers_sigma != shared.opts.data_labels.get('schedulers_sigma').default else None\n        args['Sampler order'] = shared.opts.schedulers_solver_order if shared.opts.schedulers_solver_order != shared.opts.data_labels.get('schedulers_solver_order').default else None\n        args['Sampler type'] = shared.opts.schedulers_prediction_type if shared.opts.schedulers_prediction_type != shared.opts.data_labels.get('schedulers_prediction_type').default else None\n        args['Sampler beta schedule'] = shared.opts.schedulers_beta_schedule if shared.opts.schedulers_beta_schedule != shared.opts.data_labels.get('schedulers_beta_schedule').default else None\n        args['Sampler low order'] = shared.opts.schedulers_use_loworder if shared.opts.schedulers_use_loworder != shared.opts.data_labels.get('schedulers_use_loworder').default else None\n        args['Sampler dynamic'] = shared.opts.schedulers_use_thresholding if shared.opts.schedulers_use_thresholding != shared.opts.data_labels.get('schedulers_use_thresholding').default else None\n        args['Sampler rescale'] = shared.opts.schedulers_rescale_betas if shared.opts.schedulers_rescale_betas != shared.opts.data_labels.get('schedulers_rescale_betas').default else None\n        args['Sampler beta start'] = shared.opts.schedulers_beta_start if shared.opts.schedulers_beta_start != shared.opts.data_labels.get('schedulers_beta_start').default else None\n        args['Sampler beta end'] = shared.opts.schedulers_beta_end if shared.opts.schedulers_beta_end != shared.opts.data_labels.get('schedulers_beta_end').default else None\n        args['Sampler range'] = shared.opts.schedulers_timesteps_range if shared.opts.schedulers_timesteps_range != shared.opts.data_labels.get('schedulers_timesteps_range').default else None\n        args['Sampler shift'] = shared.opts.schedulers_shift if shared.opts.schedulers_shift != shared.opts.data_labels.get('schedulers_shift').default else None\n        args['Sampler dynamic shift'] = shared.opts.schedulers_dynamic_shift if shared.opts.schedulers_dynamic_shift != shared.opts.data_labels.get('schedulers_dynamic_shift').default else None\n\n    # model specific\n    if shared.sd_model_type == 'h1':\n        args['LLM'] =  None if shared.opts.model_h1_llama_repo == 'Default' else shared.opts.model_h1_llama_repo\n\n    args.update(p.extra_generation_params)\n    for k, v in args.copy().items():\n        if v is None:\n            del args[k]\n        if type(v) is float or type(v) is int:\n            if v <= -1:\n                del args[k]\n        if isinstance(v, str):\n            if len(v) == 0 or v == '0x0':\n                del args[k]\n    debug(f'Infotext: args={args}')\n    params_text = \", \".join([k if k == v else f'{k}: {generation_parameters_copypaste.quote(v)}' for k, v in args.items()])\n\n    if hasattr(p, 'original_prompt'):\n        args['Original prompt'] = p.original_prompt\n    if hasattr(p, 'original_negative'):\n        args['Original negative'] = p.original_negative\n\n    negative_prompt_text = f\"\\nNegative prompt: {all_negative_prompts[index] if all_negative_prompts[index] else ''}\"\n    infotext = f\"{all_prompts[index]}{negative_prompt_text}\\n{params_text}\".strip()\n    debug(f'Infotext: \"{infotext}\"')\n    return infotext\n"
  },
  {
    "path": "modules/processing_prompt.py",
    "content": "import os\nimport torch\nfrom modules import shared, errors, timer, prompt_parser_diffusers\n\n\ndebug_enabled = os.environ.get('SD_PROMPT_DEBUG', None) is not None\ndebug_log = shared.log.trace if debug_enabled else lambda *args, **kwargs: None\n\n\ndef fix_prompt_batch(p, prompts, negative_prompts, prompts_2, negative_prompts_2):\n    if hasattr(p, 'keep_prompts'):\n        return prompts, negative_prompts, prompts_2, negative_prompts_2\n\n    if type(prompts) is str:\n        prompts = [prompts]\n    if type(negative_prompts) is str:\n        negative_prompts = [negative_prompts]\n\n    if hasattr(p, '[init_images]') and p.init_images is not None and len(p.init_images) > 1:\n        while len(prompts) < len(p.init_images):\n            prompts.append(prompts[-1])\n        while len(negative_prompts) < len(p.init_images):\n            negative_prompts.append(negative_prompts[-1])\n\n    while len(prompts) < p.batch_size:\n        prompts.append(prompts[-1])\n    while len(negative_prompts) < p.batch_size:\n        negative_prompts.append(negative_prompts[-1])\n\n    while len(negative_prompts) < len(prompts):\n        negative_prompts.append(negative_prompts[-1])\n    while len(prompts) < len(negative_prompts):\n        prompts.append(prompts[-1])\n\n    if type(prompts_2) is str:\n        prompts_2 = [prompts_2]\n    if type(prompts_2) is list:\n        while len(prompts_2) < len(prompts):\n            prompts_2.append(prompts_2[-1])\n    if type(negative_prompts_2) is str:\n        negative_prompts_2 = [negative_prompts_2]\n    if type(negative_prompts_2) is list:\n        while len(negative_prompts_2) < len(prompts_2):\n            negative_prompts_2.append(negative_prompts_2[-1])\n    return prompts, negative_prompts, prompts_2, negative_prompts_2\n\n\ndef fix_prompt_model(cls, prompts, negative_prompts, prompts_2, negative_prompts_2):\n    if 'OmniGen' in cls:\n        prompts = [p.replace('|image|', '<img><|image_1|></img>') for p in prompts]\n    if 'PixArtSigmaPipeline' in cls: # pixart-sigma pipeline throws list-of-list for negative prompt\n        negative_prompts = negative_prompts[0]\n    return prompts, negative_prompts, prompts_2, negative_prompts_2\n\n\ndef set_fallback_prompt(args: dict, possible: list[str], prompts, negative_prompts, prompts_2, negative_prompts_2) -> dict:\n    if ('prompt' in possible) and ('prompt' not in args) and (prompts is not None) and len(prompts) > 0:\n        debug_log(f'Prompt fallback: prompt={prompts}')\n        args['prompt'] = prompts\n    if ('negative_prompt' in possible) and ('negative_prompt' not in args) and (negative_prompts is not None) and len(negative_prompts) > 0:\n        debug_log(f'Prompt fallback: negative_prompt={negative_prompts}')\n        args['negative_prompt'] = negative_prompts\n    if ('prompt_2' in possible) and ('prompt_2' not in args) and (prompts_2 is not None) and len(prompts_2) > 0:\n        debug_log(f'Prompt fallback: prompt_2={prompts_2}')\n        args['prompt_2'] = prompts_2\n    if ('negative_prompt_2' in possible) and ('negative_prompt_2' not in args) and (negative_prompts_2 is not None) and len(negative_prompts_2) > 0:\n        debug_log(f'Prompt fallback: negative_prompt_2={negative_prompts_2}')\n        args['negative_prompt_2'] = negative_prompts_2\n    return args\n\n\ndef set_prompt(p,\n               args: dict,\n               possible: list[str],\n               cls: str,\n               prompt_attention: str,\n               steps: int,\n               clip_skip: int,\n               prompts: list[str],\n               negative_prompts: list[str],\n               prompts_2: list[str],\n               negative_prompts_2: list[str],\n              ) -> dict:\n    prompt_attention = prompt_attention or shared.opts.prompt_attention\n    if (prompt_attention != 'fixed') and ('Onnx' not in cls) and ('prompt' not in p.task_args) and (\n        ('StableDiffusion' in cls) or\n        ('StableCascade' in cls) or\n        ('Flux' in cls and 'Flux2' not in cls) or\n        ('Chroma' in cls) or\n        ('HiDreamImagePipeline' in cls)\n    ):\n        jobid = shared.state.begin('TE Encode')\n        try:\n            prompt_parser_diffusers.embedder = prompt_parser_diffusers.PromptEmbedder(prompts, negative_prompts, steps, clip_skip, p)\n        except Exception as e:\n            prompt_parser_diffusers.embedder = None\n            shared.log.error(f'Prompt parser encode: {e}')\n            if debug_enabled:\n                errors.display(e, 'Prompt parser encode')\n        timer.process.record('prompt', reset=False)\n        shared.state.end(jobid)\n    else:\n        prompt_parser_diffusers.embedder = None\n        prompt_attention = 'fixed'\n\n    prompts, negative_prompts, prompts_2, negative_prompts_2 = fix_prompt_batch(p, prompts, negative_prompts, prompts_2, negative_prompts_2)\n    prompts, negative_prompts, prompts_2, negative_prompts_2 = fix_prompt_model(cls, prompts, negative_prompts, prompts_2, negative_prompts_2)\n\n    if prompt_parser_diffusers.embedder is not None:\n        if 'prompt' in possible:\n            debug_log(f'Prompt set embeds: positive={prompts}')\n            prompt_embeds = prompt_parser_diffusers.embedder('prompt_embeds')\n            prompt_pooled_embeds = prompt_parser_diffusers.embedder('positive_pooleds')\n            prompt_attention_masks = prompt_parser_diffusers.embedder('prompt_attention_masks')\n\n            if prompt_embeds is None:\n                shared.log.warning('Prompt parser encode: empty prompt embeds')\n                prompt_parser_diffusers.embedder = None\n                args = set_fallback_prompt(args, possible, prompts=prompts, negative_prompts=None, prompts_2=None, negative_prompts_2=None)\n                prompt_attention = 'fixed'\n            elif prompt_embeds.device == torch.device('meta'):\n                shared.log.warning('Prompt parser encode: embeds on meta device')\n                prompt_parser_diffusers.embedder = None\n                args = set_fallback_prompt(args, possible, prompts=prompts, negative_prompts=None, prompts_2=None, negative_prompts_2=None)\n                prompt_attention = 'fixed'\n            else:\n                if 'prompt_embeds' in possible:\n                    args['prompt_embeds'] = prompt_embeds\n                else:\n                    args = set_fallback_prompt(args, possible, prompts=prompts, negative_prompts=None, prompts_2=None, negative_prompts_2=None)\n                if 'pooled_prompt_embeds' in possible:\n                    args['pooled_prompt_embeds'] = prompt_pooled_embeds\n                    if 'StableCascade' in cls:\n                        args['prompt_embeds_pooled'] = prompt_pooled_embeds.unsqueeze(0)\n                    if 'HiDreamImage' in cls:\n                        args['prompt_embeds_t5'] = prompt_embeds[0]\n                        args['prompt_embeds_llama3'] = prompt_embeds[1]\n                if 'prompt_attention_mask' in possible:\n                    args['prompt_attention_mask'] = prompt_attention_masks\n\n        if 'negative_prompt' in possible:\n            debug_log(f'Prompt set embeds: negative={negative_prompts}')\n            negative_embeds = prompt_parser_diffusers.embedder('negative_prompt_embeds')\n            negative_pooled_embeds = prompt_parser_diffusers.embedder('negative_pooleds')\n            negative_attention_masks = prompt_parser_diffusers.embedder('negative_prompt_attention_masks')\n\n            if negative_embeds is None:\n                shared.log.warning('Prompt parser encode: empty negative prompt embeds')\n                prompt_parser_diffusers.embedder = None\n                args = set_fallback_prompt(args, possible, prompts=None, negative_prompts=negative_prompts, prompts_2=None, negative_prompts_2=None)\n                prompt_attention = 'fixed'\n            elif negative_embeds.device == torch.device('meta'):\n                shared.log.warning('Prompt parser encode: negative embeds on meta device')\n                prompt_parser_diffusers.embedder = None\n                args = set_fallback_prompt(args, possible, prompts=None, negative_prompts=negative_prompts, prompts_2=None, negative_prompts_2=None)\n                prompt_attention = 'fixed'\n            else:\n                if 'negative_prompt_embeds' in possible:\n                    args['negative_prompt_embeds'] = negative_embeds\n                else:\n                    args = set_fallback_prompt(args, possible, prompts=None, negative_prompts=negative_prompts, prompts_2=None, negative_prompts_2=None)\n                if 'negative_pooled_prompt_embeds' in possible:\n                    args['negative_pooled_prompt_embeds'] = negative_pooled_embeds\n                    if 'StableCascade' in cls:\n                        args['negative_prompt_embeds_pooled'] = negative_pooled_embeds.unsqueeze(0)\n                    if 'HiDreamImage' in cls:\n                        args['negative_prompt_embeds_t5'] = negative_embeds[0]\n                        args['negative_prompt_embeds_llama3'] = negative_embeds[1]\n                if 'negative_prompt_attention_mask' in possible:\n                    args['negative_prompt_attention_mask'] = negative_attention_masks\n    else:\n        debug_log('Prompt fallback: no embedder')\n        args = set_fallback_prompt(args, possible, prompts=prompts, negative_prompts=negative_prompts, prompts_2=None, negative_prompts_2=None)\n        prompt_attention = 'fixed'\n\n    if 'prompt_embeds' not in args and 'negative_prompt_embeds' not in args: # pass secondary prompts as-in\n        args = set_fallback_prompt(args, possible, prompts=None, negative_prompts=None, prompts_2=prompts_2, negative_prompts_2=negative_prompts_2)\n\n    if (prompt_parser_diffusers.embedder is not None) and (not prompt_parser_diffusers.embedder.scheduled_prompt):\n        prompt_parser_diffusers.embedder = None # not scheduled so we dont need it anymore\n\n    return prompt_attention, args\n"
  },
  {
    "path": "modules/processing_vae.py",
    "content": "import os\nimport time\nimport numpy as np\nimport torch\nfrom modules import shared, devices, sd_models, sd_vae, errors\nfrom modules.vae import sd_vae_taesd\n\n\ndebug = os.environ.get('SD_VAE_DEBUG', None) is not None\nlog_debug = shared.log.trace if debug else lambda *args, **kwargs: None\nlog_debug('Trace: VAE')\n\n\ndef create_latents(image, p, dtype=None, device=None):\n    from modules.processing import create_random_tensors\n    from PIL import Image\n    if image is None:\n        return image\n    elif isinstance(image, Image.Image):\n        latents = vae_encode(image, model=shared.sd_model, vae_type=p.vae_type)\n    elif isinstance(image, list):\n        latents = [vae_encode(i, model=shared.sd_model, vae_type=p.vae_type).squeeze(dim=0) for i in image]\n        latents = torch.stack(latents, dim=0).to(shared.device)\n    else:\n        shared.log.warning(f'Latents: input type: {type(image)} {image}')\n        return image\n    noise = p.denoising_strength * create_random_tensors(latents.shape[1:], seeds=p.all_seeds, subseeds=p.all_subseeds, subseed_strength=p.subseed_strength, p=p)\n    latents = (1 - p.denoising_strength) * latents + noise\n    if dtype is not None:\n        latents = latents.to(dtype=dtype)\n    if device is not None:\n        latents = latents.to(device=device)\n    return latents\n\n\ndef full_vqgan_decode(latents, model):\n    t0 = time.time()\n    if model is None or not hasattr(model, 'vqgan'):\n        shared.log.error('VQGAN not found in model')\n        return []\n    if debug:\n        devices.torch_gc(force=True)\n        shared.mem_mon.reset()\n\n    base_device = None\n    if shared.opts.diffusers_move_unet and not getattr(model, 'has_accelerate', False):\n        base_device = sd_models.move_base(model, devices.cpu)\n\n    if shared.opts.diffusers_offload_mode == \"balanced\":\n        shared.sd_model = sd_models.apply_balanced_offload(shared.sd_model)\n    elif shared.opts.diffusers_offload_mode != \"sequential\":\n        sd_models.move_model(model.vqgan, devices.device)\n\n    latents = latents.to(devices.device, dtype=model.vqgan.dtype)\n\n    #normalize latents\n    scaling_factor = model.vqgan.config.get(\"scale_factor\", None)\n    if scaling_factor:\n        latents = latents * scaling_factor\n\n    log_debug(f'VAE config: {model.vqgan.config}')\n    try:\n        decoded = model.vqgan.decode(latents).sample.clamp(0, 1)\n    except Exception as e:\n        shared.log.error(f'VAE decode: {e}')\n        errors.display(e, 'VAE decode')\n        decoded = []\n\n    # delete vae after OpenVINO compile\n    if 'VAE' in shared.opts.cuda_compile and shared.opts.cuda_compile_backend == \"openvino_fx\" and shared.compiled_model_state.first_pass_vae:\n        shared.compiled_model_state.first_pass_vae = False\n        if not shared.opts.openvino_disable_memory_cleanup and hasattr(shared.sd_model, \"vqgan\"):\n            model.vqgan.apply(sd_models.convert_to_faketensors)\n            devices.torch_gc(force=True)\n\n    if shared.opts.diffusers_offload_mode == \"balanced\":\n        shared.sd_model = sd_models.apply_balanced_offload(shared.sd_model)\n    elif shared.opts.diffusers_move_unet and not getattr(model, 'has_accelerate', False) and base_device is not None:\n        sd_models.move_base(model, base_device)\n    t1 = time.time()\n    if debug:\n        log_debug(f'VAE memory: {shared.mem_mon.read()}')\n    vae_name = os.path.splitext(os.path.basename(sd_vae.loaded_vae_file))[0] if sd_vae.loaded_vae_file is not None else \"default\"\n    shared.log.debug(f'VAE decode: vae=\"{vae_name}\" type=\"vqgan\" dtype={model.vqgan.dtype} device={model.vqgan.device} time={round(t1-t0, 3)}')\n    return decoded\n\n\ndef full_vae_decode(latents, model):\n    t0 = time.time()\n    if not hasattr(model, 'vae') and hasattr(model, 'pipe'):\n        model = model.pipe\n    if model is None or not hasattr(model, 'vae'):\n        shared.log.error('VAE not found in model')\n        return []\n    if debug:\n        devices.torch_gc(force=True)\n        shared.mem_mon.reset()\n\n    base_device = None\n    if shared.opts.diffusers_move_unet and not getattr(model, 'has_accelerate', False):\n        base_device = sd_models.move_base(model, devices.cpu)\n    elif shared.opts.diffusers_offload_mode != \"sequential\":\n        sd_models.move_model(model.vae, devices.device)\n\n    sd_models.set_vae_options(model, vae=None, op='decode')\n    upcast = (model.vae.dtype == torch.float16) and (getattr(model.vae.config, 'force_upcast', False) or shared.opts.no_half_vae)\n    if upcast:\n        if hasattr(model, 'upcast_vae'): # this is done by diffusers automatically if output_type != 'latent'\n            model.upcast_vae()\n        else: # manual upcast and we restore it later\n            model.vae.orig_dtype = model.vae.dtype\n            model.vae = model.vae.to(dtype=torch.float32)\n    latents = latents.to(devices.device)\n\n    # normalize latents\n    latents_mean = model.vae.config.get(\"latents_mean\", None)\n    latents_std = model.vae.config.get(\"latents_std\", None)\n    scaling_factor = model.vae.config.get(\"scaling_factor\", 1.0)\n    shift_factor = model.vae.config.get(\"shift_factor\", None)\n    if latents_mean and latents_std:\n        broadcast_shape = [1 for _ in range(latents.ndim)]\n        broadcast_shape[1] = -1\n        latents_mean = (torch.tensor(latents_mean).view(*broadcast_shape).to(latents.device, latents.dtype))\n        latents_std = (torch.tensor(latents_std).view(*broadcast_shape).to(latents.device, latents.dtype))\n        latents = ((latents * latents_std) / scaling_factor) + latents_mean\n    else:\n        latents = latents / scaling_factor\n    if shift_factor:\n        latents = latents + shift_factor\n\n    # check dims\n    if model.vae.__class__.__name__ in ['AutoencoderKLWan'] and latents.ndim == 4:\n        latents = latents.unsqueeze(2) # wan is __nhw\n\n    # handle quants\n    if getattr(model.vae, \"post_quant_conv\", None) is not None:\n        if getattr(model.vae.post_quant_conv, \"bias\", None) is not None:\n            latents = latents.to(model.vae.post_quant_conv.bias.dtype)\n        elif \"VAE\" in shared.opts.sdnq_quantize_weights:\n            latents = latents.to(devices.dtype_vae)\n        else:\n            latents = latents.to(next(iter(model.vae.post_quant_conv.parameters())).dtype)\n        # if getattr(model.vae.post_quant_conv, \"bias\", None) is not None:\n            # model.vae.post_quant_conv.bias = torch.nn.Parameter(model.vae.post_quant_conv.bias.to(devices.device), requires_grad=False)\n        # if getattr(model.vae.post_quant_conv, \"weight\", None) is not None:\n            # model.vae.post_quant_conv.weight = torch.nn.Parameter(model.vae.post_quant_conv.weight.to(devices.device), requires_grad=False)\n    else:\n        latents = latents.to(model.vae.dtype)\n\n    log_debug(f'VAE config: {model.vae.config}')\n    try:\n        with devices.inference_context():\n            decoded = model.vae.decode(latents, return_dict=False)[0]\n    except Exception as e:\n        shared.log.error(f'VAE decode: {e}')\n        if 'out of memory' not in str(e) and 'no data' not in str(e):\n            errors.display(e, 'VAE decode')\n        decoded = []\n\n    if hasattr(model.vae, \"orig_dtype\"):\n        model.vae = model.vae.to(dtype=model.vae.orig_dtype)\n        del model.vae.orig_dtype\n\n    # delete vae after OpenVINO compile\n    if 'VAE' in shared.opts.cuda_compile and shared.opts.cuda_compile_backend == \"openvino_fx\" and shared.compiled_model_state.first_pass_vae:\n        shared.compiled_model_state.first_pass_vae = False\n        if not shared.opts.openvino_disable_memory_cleanup and hasattr(shared.sd_model, \"vae\"):\n            model.vae.apply(sd_models.convert_to_faketensors)\n            devices.torch_gc(force=True)\n\n    elif shared.opts.diffusers_move_unet and not getattr(model, 'has_accelerate', False) and base_device is not None:\n        sd_models.move_base(model, base_device)\n\n    t1 = time.time()\n    if debug:\n        log_debug(f'VAE memory: {shared.mem_mon.read()}')\n    vae_name = os.path.splitext(os.path.basename(sd_vae.loaded_vae_file))[0] if sd_vae.loaded_vae_file is not None else \"default\"\n    vae_scale_factor = sd_vae.get_vae_scale_factor(model)\n    shared.log.debug(f'Decode: vae=\"{vae_name}\" scale={vae_scale_factor} upcast={upcast} slicing={getattr(model.vae, \"use_slicing\", None)} tiling={getattr(model.vae, \"use_tiling\", None)} latents={list(latents.shape)}:{latents.device} dtype={latents.dtype} time={t1-t0:.3f}')\n    return decoded\n\n\ndef full_vae_encode(image, model):\n    t0 = time.time()\n    if shared.opts.diffusers_move_unet and not getattr(model, 'has_accelerate', False) and hasattr(model, 'unet'):\n        log_debug('Moving to CPU: model=UNet')\n        unet_device = model.unet.device\n        sd_models.move_model(model.unet, devices.cpu)\n    if not shared.opts.diffusers_offload_mode == \"sequential\" and hasattr(model, 'vae'):\n        sd_models.move_model(model.vae, devices.device)\n    vae_name = sd_vae.loaded_vae_file if sd_vae.loaded_vae_file is not None else \"default\"\n    log_debug(f'Encode vae=\"{vae_name}\" dtype={model.vae.dtype} upcast={model.vae.config.get(\"force_upcast\", None)}')\n\n    sd_models.set_vae_options(model, vae=None, op='encode')\n    upcast = (model.vae.dtype == torch.float16) and (getattr(model.vae.config, 'force_upcast', False) or shared.opts.no_half_vae)\n    if upcast:\n        if hasattr(model, 'upcast_vae'): # this is done by diffusers automatically if output_type != 'latent'\n            model.upcast_vae()\n        else: # manual upcast and we restore it later\n            model.vae.orig_dtype = model.vae.dtype\n            model.vae = model.vae.to(dtype=torch.float32)\n\n    encoded = model.vae.encode(image.to(model.vae.device, model.vae.dtype)).latent_dist.sample()\n\n    if hasattr(model.vae, \"orig_dtype\"):\n        model.vae = model.vae.to(dtype=model.vae.orig_dtype)\n        del model.vae.orig_dtype\n\n    if shared.opts.diffusers_move_unet and not getattr(model, 'has_accelerate', False) and hasattr(model, 'unet'):\n        sd_models.move_model(model.unet, unet_device)\n    t1 = time.time()\n    shared.log.debug(f'Encode: vae=\"{vae_name}\" upcast={upcast} slicing={getattr(model.vae, \"use_slicing\", None)} tiling={getattr(model.vae, \"use_tiling\", None)} latents={encoded.shape}:{encoded.device}:{encoded.dtype} time={t1-t0:.3f}')\n    return encoded\n\n\ndef taesd_vae_decode(latents):\n    t0 = time.time()\n    if len(latents) == 0:\n        return []\n    if len(latents) > 1:\n        decoded = torch.zeros((len(latents), 3, latents.shape[2] * 8, latents.shape[3] * 8), dtype=devices.dtype_vae, device=devices.device)\n        for i in range(latents.shape[0]):\n            decoded[i] = sd_vae_taesd.decode(latents[i])\n    else:\n        decoded = sd_vae_taesd.decode(latents)\n    t1 = time.time()\n    shared.log.debug(f'Decode: vae=\"taesd\" latents={latents.shape}:{latents.device} dtype={latents.dtype} time={t1-t0:.3f}')\n    return decoded\n\n\ndef taesd_vae_encode(image):\n    shared.log.debug(f'Encode: vae=\"taesd\" image={image.shape}')\n    encoded = sd_vae_taesd.encode(image)\n    return encoded\n\n\ndef vae_postprocess(tensor, model, output_type='np'):\n    images = []\n    try:\n        if isinstance(tensor, list) and len(tensor) > 0 and torch.is_tensor(tensor[0]):\n            tensor = torch.stack(tensor)\n        if torch.is_tensor(tensor):\n            if tensor.ndim == 3 and tensor.shape[0] == 3:\n                tensor = tensor.unsqueeze(0)\n            if hasattr(model, 'video_processor'):\n                if tensor.ndim == 6 and tensor.shape[1] == 1:\n                    tensor = tensor.squeeze(0)\n                images = model.video_processor.postprocess_video(tensor, output_type='pil')\n            elif hasattr(model, 'image_processor'):\n                if tensor.ndim == 5 and tensor.shape[1] == 3: # Qwen Image\n                    tensor = tensor[:, :, 0]\n                images = model.image_processor.postprocess(tensor, output_type=output_type)\n            elif hasattr(model, \"vqgan\"):\n                images = tensor.permute(0, 2, 3, 1).cpu().float().numpy()\n                if output_type == \"pil\":\n                    images = model.numpy_to_pil(images)\n            else:\n                from diffusers.image_processor import VaeImageProcessor\n                model.image_processor = VaeImageProcessor()\n                if tensor.ndim == 5 and tensor.shape[1] == 3: # Qwen Image\n                    tensor = tensor[:, :, 0]\n                images = model.image_processor.postprocess(tensor, output_type=output_type)\n        else:\n            images = tensor if isinstance(tensor, list) or isinstance(tensor, np.ndarray) else [tensor]\n    except Exception as e:\n        shared.log.error(f'VAE postprocess: {e}')\n        errors.display(e, 'VAE')\n    return images\n\n\ndef vae_decode(latents, model, output_type='np', vae_type='Full', width=None, height=None, frames=None):\n    t0 = time.time()\n    model = model or shared.sd_model\n    if not hasattr(model, 'vae') and hasattr(model, 'pipe'):\n        model = model.pipe\n    if latents is None or not torch.is_tensor(latents): # already decoded\n        return latents\n\n    if latents.shape[0] == 0:\n        shared.log.error(f'VAE nothing to decode: {latents.shape}')\n        return []\n    if shared.state.interrupted or shared.state.skipped:\n        return []\n    if not hasattr(model, 'vae') and not hasattr(model, 'vqgan'):\n        shared.log.error('VAE not found in model')\n        return []\n\n    if vae_type == 'Remote':\n        jobid = shared.state.begin('Remote VAE')\n        from modules.vae.sd_vae_remote import remote_decode\n        tensors = remote_decode(latents=latents, width=width, height=height)\n        shared.state.end(jobid)\n        if tensors is not None and len(tensors) > 0:\n            return vae_postprocess(tensors, model, output_type)\n    if vae_type == 'Repa':\n        from modules.vae.sd_vae_repa import repa_load\n        vae = repa_load(latents)\n        vae_type = 'Full'\n        if vae is not None:\n            model.vae = vae\n\n    jobid = shared.state.begin('VAE Decode')\n    if hasattr(model, '_unpack_latents') and hasattr(model, 'transformer_spatial_patch_size') and frames is not None: # LTX\n        latent_num_frames = (frames - 1) // model.vae_temporal_compression_ratio + 1\n        latents = model._unpack_latents(latents.unsqueeze(0), latent_num_frames, height // 32, width // 32, model.transformer_spatial_patch_size, model.transformer_temporal_patch_size) # pylint: disable=protected-access\n        latents = model._denormalize_latents(latents, model.vae.latents_mean, model.vae.latents_std, model.vae.config.scaling_factor) # pylint: disable=protected-access\n    elif hasattr(model, '_unpack_latents') and hasattr(model, \"vae_scale_factor\") and width is not None and height is not None and latents.ndim == 3: # FLUX\n        latents = model._unpack_latents(latents, height, width, model.vae_scale_factor) # pylint: disable=protected-access\n\n    if latents.ndim == 3: # lost a batch dim in hires\n        latents = latents.unsqueeze(0)\n    if latents.shape[-1] <= 4: # not a latent, likely an image\n        decoded = latents.float().cpu().numpy()\n    elif vae_type == 'Tiny':\n        decoded = taesd_vae_decode(latents=latents)\n        if torch.is_tensor(decoded):\n            decoded = 2.0 * decoded - 1.0 # typical normalized range\n    elif hasattr(model, \"vqgan\"):\n        decoded = full_vqgan_decode(latents=latents, model=model)\n    elif hasattr(model, \"vae\"):\n        decoded = full_vae_decode(latents=latents, model=model)\n    else:\n        shared.log.error('VAE not found in model')\n        decoded = []\n\n    images = vae_postprocess(decoded, model, output_type)\n    if shared.cmd_opts.profile or debug:\n        t1 = time.time()\n        shared.log.debug(f'Profile: VAE decode: {t1-t0:.2f}')\n    devices.torch_gc()\n    shared.state.end(jobid)\n    return images\n\n\ndef vae_encode(image, model, vae_type='Full'): # pylint: disable=unused-variable\n    jobid = shared.state.begin('VAE Encode')\n    import torchvision.transforms.functional as f\n    if shared.state.interrupted or shared.state.skipped:\n        return []\n    if not hasattr(model, 'vae') and hasattr(model, 'pipe'):\n        model = model.pipe\n    if not hasattr(model, 'vae'):\n        shared.log.error('VAE not found in model')\n        return []\n    tensor = f.to_tensor(image.convert(\"RGB\")).unsqueeze(0).to(devices.device, devices.dtype_vae)\n    if vae_type == 'Tiny':\n        latents = taesd_vae_encode(image=tensor)\n    elif vae_type == 'Full' and hasattr(model, 'vae'):\n        tensor = tensor * 2 - 1\n        latents = full_vae_encode(image=tensor, model=shared.sd_model)\n    else:\n        shared.log.error('VAE not found in model')\n        latents = []\n    devices.torch_gc()\n    shared.state.end(jobid)\n    return latents\n\n\ndef reprocess(gallery):\n    from PIL import Image\n    from modules import images\n    latent, index = shared.history.selected\n    if latent is None or gallery is None:\n        return None\n    shared.log.info(f'Reprocessing: latent={latent.shape}')\n    reprocessed = vae_decode(latent, shared.sd_model, output_type='pil')\n    outputs = []\n    for i0, i1 in zip(gallery, reprocessed):\n        if isinstance(i1, np.ndarray):\n            i1 = Image.fromarray(i1)\n        fn = i0['name']\n        i0 = Image.open(fn)\n        fn = os.path.splitext(os.path.basename(fn))[0] + '-re'\n        i0.load() # wait for info to be populated\n        i1.info = i0.info\n        info, _params = images.read_info_from_image(i0)\n        if shared.opts.samples_save:\n            images.save_image(i1, info=info, forced_filename=fn)\n            i1.already_saved_as = fn\n        if index == -1:\n            outputs.append(i0)\n        outputs.append(i1)\n    return outputs\n"
  },
  {
    "path": "modules/progress.py",
    "content": "import base64\nimport os\nimport io\nimport time\nfrom typing import Union\nfrom pydantic import BaseModel, Field # pylint: disable=no-name-in-module\nimport modules.shared as shared\n\n\ncurrent_task = None\npending_tasks = {}\nfinished_tasks = []\nrecorded_results = []\nrecorded_results_limit = 2\ndebug = os.environ.get('SD_PREVIEW_DEBUG', None) is not None\ndebug_log = shared.log.trace if debug else lambda *args, **kwargs: None\n\n\ndef start_task(id_task):\n    global current_task # pylint: disable=global-statement\n    current_task = id_task\n    pending_tasks.pop(id_task, None)\n\n\ndef record_results(id_task, res):\n    recorded_results.append((id_task, res))\n    if len(recorded_results) > recorded_results_limit:\n        recorded_results.pop(0)\n\n\ndef finish_task(id_task):\n    global current_task # pylint: disable=global-statement\n    if current_task == id_task:\n        current_task = None\n    finished_tasks.append(id_task)\n    if len(finished_tasks) > 16:\n        finished_tasks.pop(0)\n\n\ndef add_task_to_queue(id_job):\n    pending_tasks[id_job] = time.time()\n\n\nclass ProgressRequest(BaseModel):\n    id_task: str = Field(default=None, title=\"Task ID\", description=\"id of the task to get progress for\")\n    id_live_preview: int = Field(default=-1, title=\"Live preview image ID\", description=\"id of last received last preview image\")\n\n\nclass InternalProgressResponse(BaseModel):\n    job: str = Field(default=None, title=\"Job name\", description=\"Internal job name\")\n    textinfo: Union[str|None] = Field(default=None, title=\"Info text\", description=\"Info text used by WebUI.\")\n    # status fields\n    active: bool = Field(title=\"Whether the task is being worked on right now\")\n    queued: bool = Field(title=\"Whether the task is in queue\")\n    paused: bool = Field(title=\"Whether the task is paused\")\n    completed: bool = Field(title=\"Whether the task has already finished\")\n    debug: bool = Field(title=\"Debug logging level\")\n    # raw fields\n    step: int = Field(default=None, title=\"Current step\", description=\"Current step of the task\")\n    steps: int = Field(default=None, title=\"Total steps\", description=\"Total number of steps\")\n    batch_no: int = Field(default=None, title=\"Current batch\", description=\"Current batch\")\n    batch_count: int = Field(default=None, title=\"Total batches\", description=\"Total number of batches\")\n    # calculated fields\n    progress: float = Field(default=None, title=\"Progress\", description=\"The progress with a range of 0 to 1\")\n    eta: Union[float|None] = Field(default=None, title=\"ETA in secs\")\n    # image fields\n    live_preview: Union[str|None] = Field(default=None, title=\"Live preview image\", description=\"Current live preview; a data: uri\")\n    id_live_preview: Union[int|None] = Field(default=None, title=\"Live preview image ID\", description=\"Send this together with next request to prevent receiving same image\")\n\n\ndef api_progress(req: ProgressRequest):\n    active = req.id_task == current_task\n    queued = req.id_task in pending_tasks\n    completed = req.id_task in finished_tasks\n    paused = shared.state.paused\n    step = max(shared.state.sampling_step, 0)\n    steps = max(shared.state.sampling_steps, 1)\n    batch_no = max(shared.state.batch_no, 0)\n    batch_count = max(shared.state.batch_count, 0)\n\n    current = step / steps if step > 0 and steps > 0 else 0\n    batch = batch_no / batch_count if batch_no > 0 and batch_count > 0 else 1\n    progress = round(min(1, current * batch), 2)\n\n    elapsed = time.time() - shared.state.time_start if shared.state.time_start is not None else 0\n    predicted = elapsed / progress if progress > 0 else None\n    eta = predicted - elapsed if predicted is not None else None\n    id_live_preview = req.id_live_preview\n    live_preview = None\n    textinfo = shared.state.textinfo\n    if not active:\n        id_live_preview = -1\n        textinfo = \"Queued...\" if queued else \"Waiting...\"\n\n    debug_log(f'Preview: job={shared.state.job} active={active} progress={step}/{steps}/{progress} image={shared.state.current_image_sampling_step} request={id_live_preview} last={shared.state.id_live_preview} job={shared.state.preview_job} elapsed={elapsed:.3f}')\n\n    if active and (req.id_live_preview != -1):\n        have_image = shared.state.set_current_image()\n        if have_image and shared.state.current_image is not None:\n            buffered = io.BytesIO()\n            shared.state.current_image.save(buffered, format='jpeg', quality=60)\n            b64 = base64.b64encode(buffered.getvalue())\n            live_preview = f'data:image/jpeg;base64,{b64.decode(\"ascii\")}'\n        else:\n            live_preview = None\n\n    id_live_preview = shared.state.id_live_preview\n\n    res = InternalProgressResponse(\n        job=shared.state.job,\n        textinfo=textinfo,\n        active=active,\n        queued=queued,\n        paused=paused,\n        completed=completed,\n        debug=debug,\n        progress=progress,\n        step=step,\n        steps=steps,\n        batch_no=batch_no,\n        batch_count=batch_count,\n        job_timestamp=shared.state.time_start,\n        eta=eta,\n        live_preview=live_preview,\n        id_live_preview=id_live_preview,\n    )\n    return res\n\n\ndef setup_progress_api():\n    shared.api.add_api_route(\"/internal/progress\", api_progress, methods=[\"POST\"], response_model=InternalProgressResponse)\n"
  },
  {
    "path": "modules/prompt_parser.py",
    "content": "# pylint: disable=anomalous-backslash-in-string\n\n\"\"\"\nimport os\nimport sys\nfrom rich import print\nsys.path.append(os.path.join(os.path.dirname(__file__), '..'))\n\"\"\"\n\nimport os\nimport re\nfrom collections import namedtuple\nfrom typing import List\nimport lark\nimport torch\nfrom compel import Compel\nfrom modules.shared import opts, log\n\n\n# a prompt like this: \"fantasy landscape with a [mountain:lake:0.25] and [an oak:a christmas tree:0.75][ in foreground::0.6][ in background:0.25] [shoddy:masterful:0.5]\"\n# will be represented with prompt_schedule like this (assuming steps=100):\n# [25, 'fantasy landscape with a mountain and an oak in foreground shoddy']\n# [50, 'fantasy landscape with a lake and an oak in foreground in background shoddy']\n# [60, 'fantasy landscape with a lake and an oak in foreground in background masterful']\n# [75, 'fantasy landscape with a lake and an oak in background masterful']\n# [100, 'fantasy landscape with a lake and a christmas tree in background masterful']\n\n\nround_bracket_multiplier = 1.1\nsquare_bracket_multiplier = 1.0 / 1.1\nre_AND = re.compile(r\"\\bAND\\b\")\n# re_weight = re.compile(r\"^(.*?)(?:\\s*:\\s*([-+]?(?:\\d+\\.?|\\d*\\.\\d+)))?\\s*$\")\nre_weight = re.compile(r\"^((?:\\s|.)*?)(?:\\s*:\\s*([-+]?(?:\\d+\\.?|\\d*\\.\\d+)))?\\s*$\")\nScheduledPromptConditioning = namedtuple(\"ScheduledPromptConditioning\", [\"end_at_step\", \"cond\"])\nschedule_parser = lark.Lark(r\"\"\"\n!start: (prompt | /[][():]/+)*\nprompt: (emphasized | scheduled | alternate | plain | WHITESPACE)*\n!emphasized: \"(\" prompt \")\"\n        | \"(\" prompt \":\" prompt \")\"\n        | \"[\" prompt \"]\"\nscheduled: \"[\" [prompt \":\"] prompt \":\" [WHITESPACE] NUMBER \"]\"\nalternate: \"[\" prompt (\"|\" prompt)+ \"]\"\nWHITESPACE: /\\s+/\nplain: /([^\\\\\\[\\]():|]|\\\\.)+/\n%import common.SIGNED_NUMBER -> NUMBER\n\"\"\")\nre_clean = re.compile(r\"^\\W+\", re.S)\nre_whitespace = re.compile(r\"\\s+\", re.S)\nre_break = re.compile(r\"\\s*\\bBREAK\\b|##\\s*\", re.S)\nre_attention_v2 = re.compile(r\"\"\"\n\\\\\\(             |      # Allow masked '\\('\n\\\\\\)             |      # Allow masked '\\)'\n\\\\\\:             |      # Allow masked '\\:'\n\\\\\\[             |      # Allow masked '\\['\n\\\\\\]             |      # Allow masked '\\]'\n\\\\\\\\             |      # Allow masked '\\\\'\n\\\\               |      # Removes '\\'\n\\(               |      # Start '('\n\\[               |      # Start '['\n:([+-]?[.\\d]+)\\) |      # Weight ':', followed by an optional sign and a number, and then ')'\n\\)               |      # End ')'\n\\]               |      # End ']'\n[^\\\\()\\[\\]:]+    |      # Content matches any character except '\\', '(', ')', '[', ']', ':'\n\"\"\", re.X)\nre_attention_v1 = re.compile(r\"\"\"\n\\\\\\(|\n\\\\\\)|\n\\\\\\[|\n\\\\]|\n\\\\\\\\|\n\\\\|\n\\(|\n\\[|\n:([+-]?[.\\d]+)\\)|\n\\)|\n]|\n[^\\\\()\\[\\]:]+|\n:\n\"\"\", re.X)\n\n\ndebug_output = os.environ.get('SD_PROMPT_DEBUG', None)\ndebug = log.trace if debug_output is not None else lambda *args, **kwargs: None\ndebug('Trace: PROMPT')\n\n\ndef get_learned_conditioning_prompt_schedules(prompts, steps):\n    \"\"\"\n    >>> g = lambda p: get_learned_conditioning_prompt_schedules([p], 10)[0]\n    >>> g(\"test\")\n    [[10, 'test']]\n    >>> g(\"a [b:3]\")\n    [[3, 'a '], [10, 'a b']]\n    >>> g(\"a [b: 3]\")\n    [[3, 'a '], [10, 'a b']]\n    >>> g(\"a [[[b]]:2]\")\n    [[2, 'a '], [10, 'a [[b]]']]\n    >>> g(\"[(a:2):3]\")\n    [[3, ''], [10, '(a:2)']]\n    >>> g(\"a [b : c : 1] d\")\n    [[1, 'a b  d'], [10, 'a  c  d']]\n    >>> g(\"a[b:[c:d:2]:1]e\")\n    [[1, 'abe'], [2, 'ace'], [10, 'ade']]\n    >>> g(\"a [unbalanced\")\n    [[10, 'a [unbalanced']]\n    >>> g(\"a [b:.5] c\")\n    [[5, 'a  c'], [10, 'a b c']]\n    >>> g(\"a [{b|d{:.5] c\")  # not handling this right now\n    [[5, 'a  c'], [10, 'a {b|d{ c']]\n    >>> g(\"((a][:b:c [d:3]\")\n    [[3, '((a][:b:c '], [10, '((a][:b:c d']]\n    >>> g(\"[a|(b:1.1)]\")\n    [[1, 'a'], [2, '(b:1.1)'], [3, 'a'], [4, '(b:1.1)'], [5, 'a'], [6, '(b:1.1)'], [7, 'a'], [8, '(b:1.1)'], [9, 'a'], [10, '(b:1.1)']]\n    \"\"\"\n\n    def collect_steps(steps, tree):\n        res = [steps]\n        class CollectSteps(lark.Visitor):\n            def scheduled(self, tree):\n                tree.children[-1] = float(tree.children[-1])\n                if tree.children[-1] < 1:\n                    tree.children[-1] *= steps\n                tree.children[-1] = min(steps, int(tree.children[-1]))\n                res.append(tree.children[-1])\n            def alternate(self, tree): # pylint: disable=unused-argument\n                res.extend(range(1, steps+1))\n        CollectSteps().visit(tree)\n        return sorted(set(res))\n\n    def at_step(step, tree):\n        class AtStep(lark.Transformer):\n            def scheduled(self, args):\n                before, after, _, when = args\n                try:\n                    yield before or () if step <= when else after\n                except StopIteration:\n                    yield ''\n            def alternate(self, args):\n                try:\n                    yield next(args[(step - 1) % len(args)]) # pylint: disable=stop-iteration-return\n                except StopIteration:\n                    yield ''\n            def start(self, args):\n                def flatten(x):\n                    if type(x) == str:\n                        yield x\n                    else:\n                        for gen in x:\n                            yield from flatten(gen)\n                return ''.join(flatten(args))\n            def plain(self, args):\n                yield args[0].value\n            def __default__(self, data, children, meta):\n                yield from children\n        return AtStep().transform(tree)\n\n    def get_schedule(prompt):\n        try:\n            tree = schedule_parser.parse(prompt)\n        except Exception:\n            return [[steps, prompt]]\n        return [[t, at_step(t, tree)] for t in collect_steps(steps, tree)]\n\n    promptdict = {prompt: get_schedule(prompt) for prompt in set(prompts)}\n    return [promptdict[prompt] for prompt in prompts]\n\n\ndef get_learned_conditioning(model, prompts, steps):\n    \"\"\"converts a list of prompts into a list of prompt schedules - each schedule is a list of ScheduledPromptConditioning, specifying the comdition (cond),\n    and the sampling step at which this condition is to be replaced by the next one.\n    Input:\n        (model, ['a red crown', 'a [blue:green:5] jeweled crown'], 20)\n    Output:\n    [\n        [ ScheduledPromptConditioning(end_at_step=20, cond=tensor([[-0.3886,  0.0229, -0.0523,  ..., -0.4901, -0.3066,  0.0674], ..., [ 0.3317, -0.5102, -0.4066,  ...,  0.4119, -0.7647, -1.0160]], device='cuda:0')) ],\n        [ ScheduledPromptConditioning(end_at_step=5, cond=tensor([[-0.3886,  0.0229, -0.0522,  ..., -0.4901, -0.3067,  0.0673], ..., [-0.0192,  0.3867, -0.4644,  ...,  0.1135, -0.3696, -0.4625]], device='cuda:0')),\n          ScheduledPromptConditioning(end_at_step=20, cond=tensor([[-0.3886,  0.0229, -0.0522,  ..., -0.4901, -0.3067,  0.0673], ..., [-0.7352, -0.4356, -0.7888,  ...,  0.6994, -0.4312, -1.2593]], device='cuda:0')),\n        ]\n    ]\n    \"\"\"\n    res = []\n    prompt_schedules = get_learned_conditioning_prompt_schedules(prompts, steps)\n    cache = {}\n    for prompt, prompt_schedule in zip(prompts, prompt_schedules):\n        debug(f'Prompt schedule: {prompt_schedule}')\n        cached = cache.get(prompt, None)\n        if cached is not None:\n            res.append(cached)\n            continue\n        texts = [x[1] for x in prompt_schedule]\n        conds = model.get_learned_conditioning(texts)\n        cond_schedule = []\n        for i, (end_at_step, _text) in enumerate(prompt_schedule):\n            cond_schedule.append(ScheduledPromptConditioning(end_at_step, conds[i]))\n        cache[prompt] = cond_schedule\n        res.append(cond_schedule)\n    return res\n\n\ndef get_multicond_prompt_list(prompts):\n    res_indexes = []\n    prompt_flat_list = []\n    prompt_indexes = {}\n    for prompt in prompts:\n        subprompts = re_AND.split(prompt)\n        indexes = []\n        for subprompt in subprompts:\n            match = re_weight.search(subprompt)\n            text, weight = match.groups() if match is not None else (subprompt, 1.0)\n            weight = float(weight) if weight is not None else 1.0\n            index = prompt_indexes.get(text, None)\n            if index is None:\n                index = len(prompt_flat_list)\n                prompt_flat_list.append(text)\n                prompt_indexes[text] = index\n            indexes.append((index, weight))\n        res_indexes.append(indexes)\n    return res_indexes, prompt_flat_list, prompt_indexes\n\n\nclass ComposableScheduledPromptConditioning:\n    def __init__(self, schedules, weight=1.0):\n        self.schedules: List[ScheduledPromptConditioning] = schedules\n        self.weight: float = weight\n\n\nclass MulticondLearnedConditioning:\n    def __init__(self, shape, batch):\n        self.shape: tuple = shape  # the shape field is needed to send this object to DDIM/PLMS\n        self.batch: List[List[ComposableScheduledPromptConditioning]] = batch\n\n\ndef get_multicond_learned_conditioning(model, prompts, steps) -> MulticondLearnedConditioning:\n    \"\"\"same as get_learned_conditioning, but returns a list of ScheduledPromptConditioning along with the weight objects for each prompt.\n    For each prompt, the list is obtained by splitting the prompt using the AND separator.\n    https://energy-based-model.github.io/Compositional-Visual-Generation-with-Composable-Diffusion-Models/\n    \"\"\"\n    res_indexes, prompt_flat_list, _prompt_indexes = get_multicond_prompt_list(prompts)\n    learned_conditioning = get_learned_conditioning(model, prompt_flat_list, steps)\n    res = []\n    for indexes in res_indexes:\n        res.append([ComposableScheduledPromptConditioning(learned_conditioning[i], weight) for i, weight in indexes])\n    return MulticondLearnedConditioning(shape=(len(prompts),), batch=res)\n\n\ndef reconstruct_cond_batch(c: List[List[ScheduledPromptConditioning]], current_step):\n    param = c[0][0].cond\n    res = torch.zeros((len(c),) + param.shape, device=param.device, dtype=param.dtype)\n    for i, cond_schedule in enumerate(c):\n        target_index = 0\n        for current, (end_at, _cond) in enumerate(cond_schedule):\n            if current_step <= end_at:\n                target_index = current\n                break\n        res[i] = cond_schedule[target_index].cond\n    return res\n\n\ndef reconstruct_multicond_batch(c: MulticondLearnedConditioning, current_step):\n    param = c.batch[0][0].schedules[0].cond\n    tensors = []\n    conds_list = []\n    for composable_prompts in c.batch:\n        conds_for_batch = []\n        for composable_prompt in composable_prompts:\n            target_index = 0\n            for current, entry in enumerate(composable_prompt.schedules):\n                if current_step <= entry.end_at_step:\n                    target_index = current\n                    break\n            conds_for_batch.append((len(tensors), composable_prompt.weight))\n            tensors.append(composable_prompt.schedules[target_index].cond)\n        conds_list.append(conds_for_batch)\n    # if prompts have wildly different lengths above the limit we'll get tensors fo different shapes and won't be able to torch.stack them. So this fixes that.\n    token_count = max([x.shape[0] for x in tensors])\n    for i in range(len(tensors)):\n        if tensors[i].shape[0] != token_count:\n            last_vector = tensors[i][-1:]\n            last_vector_repeated = last_vector.repeat([token_count - tensors[i].shape[0], 1])\n            tensors[i] = torch.vstack([tensors[i], last_vector_repeated])\n    return conds_list, torch.stack(tensors).to(device=param.device, dtype=param.dtype)\n\n\ndef parse_prompt_attention(text):\n    \"\"\"\n    Parses a string with attention tokens and returns a list of pairs: text and its associated weight.\n    Accepted tokens are:\n      (abc) - increases attention to abc by a multiplier of 1.1\n      (abc:3.12) - increases attention to abc by a multiplier of 3.12\n      [abc] - decreases attention to abc by a multiplier of 1.1\n      ( - literal character '('\n      [ - literal character '['\n      ) - literal character ')'\n      ] - literal character ']'\n      \\\\ - literal character '\\'\n      anything else - just text\n    >>> parse_prompt_attention('normal text')\n    [['normal text', 1.0]]\n    >>> parse_prompt_attention('an (important) word')\n    [['an ', 1.0], ['important', 1.1], [' word', 1.0]]\n    >>> parse_prompt_attention('(unbalanced')\n    [['unbalanced', 1.1]]\n    >>> parse_prompt_attention('(literal]')\n    [['(literal]', 1.0]]\n    >>> parse_prompt_attention('(unnecessary)(parens)')\n    [['unnecessaryparens', 1.1]]\n    >>> parse_prompt_attention('a (((house:1.3)) [on] a (hill:0.5), sun, (((sky))).')\n    [['a ', 1.0],\n     ['house', 1.5730000000000004],\n     [' ', 1.1],\n     ['on', 1.0],\n     [' a ', 1.1],\n     ['hill', 0.55],\n     [', sun, ', 1.1],\n     ['sky', 1.4641000000000006],\n     ['.', 1.1]]\n    \"\"\"\n    res = []\n    round_brackets = []\n    square_brackets = []\n    if opts.prompt_attention == 'fixed':\n        res = [[text, 1.0]]\n        debug(f'Prompt: parser=\"{opts.prompt_attention}\" {res}')\n        return res\n    elif opts.prompt_attention == 'compel':\n        conjunction = Compel.parse_prompt_string(text)\n        if conjunction is None or conjunction.prompts is None or conjunction.prompts is None or len(conjunction.prompts[0].children) == 0:\n            return [[\"\", 1.0]]\n        res = []\n        for frag in conjunction.prompts[0].children:\n            res.append([frag.text, frag.weight])\n        debug(f'Prompt: parser=\"{opts.prompt_attention}\" {res}')\n        return res\n    elif opts.prompt_attention == 'a1111':\n        re_attention = re_attention_v1\n        whitespace = ''\n    else:\n        re_attention = re_attention_v2\n        if opts.sd_textencder_linebreak:\n            text = text.replace('\\n', ' BREAK ')\n        else:\n            text = text.replace('\\n', ' ')\n        whitespace = ' '\n\n    def multiply_range(start_position, multiplier):\n        try:\n            for p in range(start_position, len(res)):\n                res[p][1] = round(res[p][1] * multiplier, 3)\n        except Exception as e:\n            log(f'Prompt parser: {e}')\n\n    for m in re_attention.finditer(text):\n        try:\n            section = m.group(0)\n            weight = m.group(1)\n            # log.trace(f'Prompt: text=\"{text[m.start():m.end()]}\" section=\"{section}\" weight=\"{weight}\"')\n            if len(section) == 0:\n                continue\n            if section.startswith('\\\\'):\n                if len(res) > 0 and text[m.start()-1] != ' ':\n                    res[-1][0] += section[1:] # append literal character to the last section\n                else:\n                    res.append([section[1:], 1.0])\n            elif section == '(':\n                round_brackets.append(len(res))\n            elif section == '[':\n                square_brackets.append(len(res))\n            elif weight is not None and len(round_brackets) > 0:\n                multiply_range(round_brackets.pop(), float(weight))\n            elif section == ')' and len(round_brackets) > 0:\n                multiply_range(round_brackets.pop(), round_bracket_multiplier)\n            elif section == ']' and len(square_brackets) > 0:\n                multiply_range(square_brackets.pop(), square_bracket_multiplier)\n            else:\n                parts = re.split(re_break, section)\n                for i, part in enumerate(parts):\n                    if i > 0:\n                        res.append([\"BREAK\", -1])\n                    if opts.prompt_attention == 'native':\n                        part = re_clean.sub(\"\", part)\n                        part = re_whitespace.sub(\" \", part).strip()\n                        if len(part) == 0:\n                            continue\n                    res.append([part, 1.0])\n        except Exception as e:\n            log.error(f'Prompt parser: section=\"{text[m.start():m.end()]}\" position={m.start()}:{m.end()} text=\"{text}\" error={e}')\n    for pos in round_brackets:\n        multiply_range(pos, round_bracket_multiplier)\n    for pos in square_brackets:\n        multiply_range(pos, square_bracket_multiplier)\n    if len(res) == 0:\n        res = [[\"\", 1.0]]\n    # merge runs of identical weights\n    i = 0\n    while i + 1 < len(res):\n        if res[i][1] == res[i+1][1]:\n            sep = whitespace if res[i][0][-1].isalnum() else ''\n            res[i][0] += sep + res[i+1][0]\n            res.pop(i+1)\n        else:\n            i += 1\n    debug(f'Prompt: parser=\"{opts.prompt_attention}\" {res}')\n    return res\n\nif __name__ == \"__main__\":\n    input_text = '[black] [[grey]] (white) ((gray)) ((orange:1.1) yellow) ((purple) and [dark] red:1.1) [mouse:0.2] [(cat:1.1):0.5]'\n    log.info(f'Prompt: {input_text}')\n    all_schedules = get_learned_conditioning_prompt_schedules([input_text], 100)[0]\n    log.info(f'Schedules: {all_schedules}')\n    for schedule in all_schedules:\n        log.info(f'Schedule: {schedule[0]}')\n        opts.data['prompt_attention'] = 'fixed'\n        output_list = parse_prompt_attention(schedule[1])\n        log.info(f'  Fixed: {output_list}')\n        opts.data['prompt_attention'] = 'compel'\n        output_list = parse_prompt_attention(schedule[1])\n        log.info(f'  Compel: {output_list}')\n        opts.data['prompt_attention'] = 'a1111'\n        output_list = parse_prompt_attention(schedule[1])\n        log.info(f'  A1111: {output_list}')\n        opts.data['prompt_attention'] = 'native'\n        output_list = parse_prompt_attention(schedule[1])\n        log.info(f'  Full:  {output_list}')\n"
  },
  {
    "path": "modules/prompt_parser_diffusers.py",
    "content": "import os\nimport math\nimport time\nimport typing\nfrom collections import OrderedDict\nimport torch\nfrom compel.embeddings_provider import BaseTextualInversionManager, EmbeddingsProvider\nfrom transformers import PreTrainedTokenizer\nfrom modules import shared, prompt_parser, devices, sd_models\nfrom modules.prompt_parser_xhinker import get_weighted_text_embeddings_sd15, get_weighted_text_embeddings_sdxl_2p, get_weighted_text_embeddings_sd3, get_weighted_text_embeddings_flux1, get_weighted_text_embeddings_chroma\n\ndebug_enabled = os.environ.get('SD_PROMPT_DEBUG', None)\ndebug = shared.log.trace if debug_enabled else lambda *args, **kwargs: None\ndebug('Trace: PROMPT')\norig_encode_token_ids_to_embeddings = EmbeddingsProvider._encode_token_ids_to_embeddings # pylint: disable=protected-access\ntoken_dict = None # used by helper get_tokens\ntoken_type = None # used by helper get_tokens\ncache = OrderedDict()\nlast_attention = None\nembedder = None\n\n\ndef prompt_compatible(pipe = None):\n    pipe = pipe or shared.sd_model\n    if (\n        'StableDiffusion' not in pipe.__class__.__name__ and\n        'DemoFusion' not in pipe.__class__.__name__ and\n        'StableCascade' not in pipe.__class__.__name__ and\n        'Flux' not in pipe.__class__.__name__ and\n        'Chroma' not in pipe.__class__.__name__ and\n        'HiDreamImage' not in pipe.__class__.__name__\n    ):\n        shared.log.warning(f\"Prompt parser not supported: {pipe.__class__.__name__}\")\n        return False\n    return True\n\n\ndef prepare_model(pipe = None):\n    pipe = pipe or shared.sd_model\n    if not hasattr(pipe, \"text_encoder\") and hasattr(shared.sd_model, \"pipe\"):\n        pipe = pipe.pipe\n    if not hasattr(pipe, \"text_encoder\"):\n        return None\n    elif hasattr(pipe, \"maybe_free_model_hooks\"):\n        pipe.maybe_free_model_hooks()\n        devices.torch_gc()\n    return pipe\n\n\nclass PromptEmbedder:\n    def __init__(self,\n                 prompts,\n                 negative_prompts,\n                 steps,\n                 clip_skip,\n                 p,\n                ):\n        t0 = time.time()\n        self.prompts = prompts\n        self.negative_prompts = negative_prompts\n        self.batchsize = len(self.prompts)\n        self.attention = last_attention\n        self.allsame = False # dont collapse prompts\n        # self.allsame = self.compare_prompts()  # collapses batched prompts to single prompt if possible\n        self.steps = steps\n        self.clip_skip = clip_skip\n        # All embeds are nested lists, outer list batch length, inner schedule length\n        self.prompt_embeds = [[] for _ in range(self.batchsize)]\n        self.positive_pooleds = [[] for _ in range(self.batchsize)]\n        self.negative_prompt_embeds = [[] for _ in range(self.batchsize)]\n        self.negative_pooleds = [[] for _ in range(self.batchsize)]\n        self.prompt_attention_masks = [[] for _ in range(self.batchsize)]\n        self.negative_prompt_attention_masks = [[] for _ in range(self.batchsize)]\n        self.positive_schedule = None\n        self.negative_schedule = None\n        self.scheduled_prompt = False\n        if hasattr(p, 'dummy'):\n            return\n        earlyout = self.checkcache(p)\n        if earlyout:\n            return\n        self.pipe = prepare_model(p.sd_model)\n        if self.pipe is None:\n            shared.log.error(\"Prompt encode: cannot find text encoder in model\")\n            return\n        seen_prompts = {}\n        # per prompt in batch\n        for batchidx, (prompt, negative_prompt) in enumerate(zip(self.prompts, self.negative_prompts)):\n            self.prepare_schedule(prompt, negative_prompt)\n            schedule_key = (\n                tuple(self.positive_schedule) if self.positive_schedule is not None else None,\n                tuple(self.negative_schedule) if self.negative_schedule is not None else None,\n                self.scheduled_prompt,\n            )\n            cache_key = (prompt, negative_prompt, schedule_key)\n            cached_idx = seen_prompts.get(cache_key)\n            if cached_idx is not None:\n                self.clone_embeds(batchidx, cached_idx)\n                continue\n            if self.scheduled_prompt:\n                self.scheduled_encode(self.pipe, batchidx)\n            else:\n                self.encode(self.pipe, prompt, negative_prompt, batchidx)\n            seen_prompts[cache_key] = batchidx\n        self.checkcache(p)\n        debug(f\"Prompt encode: time={(time.time() - t0):.3f}\")\n\n    def checkcache(self, p) -> bool:\n        if shared.opts.sd_textencoder_cache_size == 0:\n            return False\n        if self.scheduled_prompt:\n            debug(\"Prompt cache: scheduled prompt\")\n            cache.clear()\n            return False\n        if self.attention != shared.opts.prompt_attention:\n            debug(f\"Prompt cache: parser={shared.opts.prompt_attention} changed\")\n            cache.clear()\n            return False\n\n        def flatten(xss):\n            return [x for xs in xss for x in xs]\n\n        # unpack EN data in case of TE LoRA\n        en_data = p.network_data\n        en_data = [idx.items for item in en_data.values() for idx in item]\n        effective_batch = 1 if self.allsame else self.batchsize\n        key = str([self.prompts, self.negative_prompts, effective_batch, self.clip_skip, self.steps, en_data])\n        item = cache.get(key)\n        if not item:\n            if not any(flatten(emb) for emb in [self.prompt_embeds,\n                                                self.negative_prompt_embeds,\n                                                self.positive_pooleds,\n                                                self.negative_pooleds,\n                                                self.prompt_attention_masks,\n                                                self.negative_prompt_attention_masks]):\n                return False\n            else:\n                cache[key] = {'prompt_embeds': self.prompt_embeds,\n                              'negative_prompt_embeds': self.negative_prompt_embeds,\n                              'positive_pooleds': self.positive_pooleds,\n                              'negative_pooleds': self.negative_pooleds,\n                              'prompt_attention_masks': self.prompt_attention_masks,\n                              'negative_prompt_attention_masks': self.negative_prompt_attention_masks,\n                              }\n                debug(f\"Prompt cache: add={key}\")\n                while len(cache) > int(shared.opts.sd_textencoder_cache_size):\n                    cache.popitem(last=False)\n                return True\n        if item:\n            self.__dict__.update(cache[key])\n            cache.move_to_end(key)\n            if self.allsame and len(self.prompt_embeds) < self.batchsize:\n                self.prompt_embeds = [self.prompt_embeds[0]] * self.batchsize\n                self.positive_pooleds = [self.positive_pooleds[0]] * self.batchsize\n                self.negative_prompt_embeds = [self.negative_prompt_embeds[0]] * self.batchsize\n                self.negative_pooleds = [self.negative_pooleds[0]] * self.batchsize\n                self.prompt_attention_masks = [self.prompt_attention_masks[0]] * self.batchsize\n                self.negative_prompt_attention_masks = [self.negative_prompt_attention_masks[0]] * self.batchsize\n            debug(f\"Prompt cache: get={key}\")\n            return True\n\n    def compare_prompts(self):\n        same = (self.prompts == [self.prompts[0]] * len(self.prompts) and self.negative_prompts == [self.negative_prompts[0]] * len(self.negative_prompts))\n        if same:\n            self.prompts = [self.prompts[0]]\n            self.negative_prompts = [self.negative_prompts[0]]\n        return same\n\n    def prepare_schedule(self, prompt, negative_prompt):\n        self.positive_schedule, scheduled = get_prompt_schedule(prompt, self.steps)\n        self.negative_schedule, neg_scheduled = get_prompt_schedule(negative_prompt, self.steps)\n        self.scheduled_prompt = scheduled or neg_scheduled\n        debug(f\"Prompt schedule: positive={self.positive_schedule} negative={self.negative_schedule} scheduled={scheduled}\")\n\n    def scheduled_encode(self, pipe, batchidx):\n        prompt_dict = {}  # index cache\n        for i in range(max(len(self.positive_schedule), len(self.negative_schedule))):\n            positive_prompt = self.positive_schedule[i % len(self.positive_schedule)]\n            negative_prompt = self.negative_schedule[i % len(self.negative_schedule)]\n            # skip repeated scheduled subprompts\n            idx = prompt_dict.get(positive_prompt+negative_prompt)\n            if idx is not None:\n                self.extend_embeds(batchidx, idx)\n                continue\n            self.encode(pipe, positive_prompt, negative_prompt, batchidx)\n            prompt_dict[positive_prompt+negative_prompt] = i\n\n    def extend_embeds(self, batchidx, idx):  # Extends scheduled prompt via index\n        if len(self.prompt_embeds[batchidx]) > 0:\n            self.prompt_embeds[batchidx].append(self.prompt_embeds[batchidx][idx])\n        if len(self.negative_prompt_embeds[batchidx]) > 0:\n            self.negative_prompt_embeds[batchidx].append(self.negative_prompt_embeds[batchidx][idx])\n        if len(self.positive_pooleds[batchidx]) > 0:\n            self.positive_pooleds[batchidx].append(self.positive_pooleds[batchidx][idx])\n        if len(self.negative_pooleds[batchidx]) > 0:\n            self.negative_pooleds[batchidx].append(self.negative_pooleds[batchidx][idx])\n        if len(self.prompt_attention_masks[batchidx]) > 0:\n            self.prompt_attention_masks[batchidx].append(self.prompt_attention_masks[batchidx][idx])\n        if len(self.negative_prompt_attention_masks[batchidx]) > 0:\n            self.negative_prompt_attention_masks[batchidx].append(self.negative_prompt_attention_masks[batchidx][idx])\n\n    def encode(self, pipe, positive_prompt, negative_prompt, batchidx):\n        if positive_prompt is None:\n            positive_prompt = ''\n        if negative_prompt is None:\n            negative_prompt = ''\n        global last_attention # pylint: disable=global-statement\n        self.attention = shared.opts.prompt_attention\n        last_attention = self.attention\n        if self.attention == \"xhinker\":\n            (\n                prompt_embed,\n                positive_pooled,\n                prompt_attention_mask,\n                negative_embed,\n                negative_pooled,\n                negative_prompt_attention_mask\n            ) = get_xhinker_text_embeddings(pipe, positive_prompt, negative_prompt, self.clip_skip)\n        else:\n            (\n                prompt_embed,\n                positive_pooled,\n                prompt_attention_mask,\n                negative_embed,\n                negative_pooled,\n                negative_prompt_attention_mask\n            ) = get_weighted_text_embeddings(pipe, positive_prompt, negative_prompt, self.clip_skip)\n        def _store(target, value):\n            if value is None:\n                return\n            # scheduled prompts need to keep all slices, unscheduled can overwrite\n            if self.scheduled_prompt and len(target[batchidx]) > 0:\n                target[batchidx].append(value)\n            else:\n                target[batchidx] = [value]\n\n        _store(self.prompt_embeds, prompt_embed)\n        _store(self.negative_prompt_embeds, negative_embed)\n        _store(self.positive_pooleds, positive_pooled)\n        _store(self.negative_pooleds, negative_pooled)\n        _store(self.prompt_attention_masks, prompt_attention_mask)\n        _store(self.negative_prompt_attention_masks, negative_prompt_attention_mask)\n        if debug_enabled:\n            get_tokens(pipe, 'positive', positive_prompt)\n            get_tokens(pipe, 'negative', negative_prompt)\n\n    def clone_embeds(self, batchidx, idx):\n        def _clone(target):\n            if len(target) <= idx:\n                return\n            src = target[idx]\n            if isinstance(src, list):\n                target[batchidx] = [item if not isinstance(item, list) else list(item) for item in src]\n            else:\n                target[batchidx] = src\n\n        _clone(self.prompt_embeds)\n        _clone(self.negative_prompt_embeds)\n        _clone(self.positive_pooleds)\n        _clone(self.negative_pooleds)\n        _clone(self.prompt_attention_masks)\n        _clone(self.negative_prompt_attention_masks)\n\n    def __call__(self, key, step=0):\n        batch = getattr(self, key)\n        res = []\n        try:\n            if len(batch) == 0 or len(batch[0]) == 0:\n                return None # flux has no negative prompts\n            if isinstance(batch[0][0], list) and len(batch[0][0]) == 2 and isinstance(batch[0][0][1], torch.Tensor) and batch[0][0][1].shape[0] == 32:\n                # hidream uses a list of t5 + llama prompt embeds: [t5_embeds, llama_embeds]\n                # t5_embeds shape: [batch_size, seq_len, dim]\n                # llama_embeds shape: [number_of_hidden_states, batch_size, seq_len, dim]\n                res2 = []\n                for i in range(self.batchsize):\n                    if len(batch[i]) == 0:  # if asking for a null key, ie pooled on SD1.5\n                        return None\n                    try:\n                        res.append(batch[i][step][0])\n                        res2.append(batch[i][step][1])\n                    except IndexError:\n                        # if not scheduled, return default\n                        res.append(batch[i][0][0])\n                        res2.append(batch[i][0][1])\n                res = [torch.cat(res, dim=0), torch.cat(res2, dim=1)]\n                return res\n            else:\n                for i in range(self.batchsize):\n                    if len(batch[i]) == 0:  # if asking for a null key, ie pooled on SD1.5\n                        return None\n                    try:\n                        res.append(batch[i][step])\n                    except IndexError:\n                        res.append(batch[i][0])  # if not scheduled, return default\n                if any(res[0].shape[1] != r.shape[1] for r in res):\n                    res = pad_to_same_length(self.pipe, res)\n                return torch.cat(res)\n        except Exception as e:\n            shared.log.error(f\"Prompt encode: {e}\")\n        return None\n\n\ndef compel_hijack(self, token_ids: torch.Tensor, attention_mask: typing.Optional[torch.Tensor] = None) -> torch.Tensor:\n    needs_hidden_states = self.returned_embeddings_type != 1\n    text_encoder_output = self.text_encoder(token_ids, attention_mask, output_hidden_states=needs_hidden_states, return_dict=True)\n\n    if not needs_hidden_states:\n        return text_encoder_output.last_hidden_state\n    try:\n        normalized = self.returned_embeddings_type > 0\n        clip_skip = math.floor(abs(self.returned_embeddings_type))\n        interpolation = abs(self.returned_embeddings_type) - clip_skip\n    except Exception:\n        normalized = False\n        clip_skip = 1\n        interpolation = False\n    if interpolation:\n        hidden_state = (1 - interpolation) * text_encoder_output.hidden_states[-clip_skip] + interpolation * text_encoder_output.hidden_states[-(clip_skip+1)]\n    else:\n        hidden_state = text_encoder_output.hidden_states[-clip_skip]\n    if normalized:\n        hidden_state = self.text_encoder.text_model.final_layer_norm(hidden_state)\n    return hidden_state\n\n\ndef sd3_compel_hijack(self, token_ids: torch.Tensor, attention_mask: typing.Optional[torch.Tensor] = None) -> torch.Tensor:\n    needs_hidden_states = True\n    text_encoder_output = self.text_encoder(token_ids, attention_mask, output_hidden_states=needs_hidden_states, return_dict=True)\n    clip_skip = int(self.returned_embeddings_type)\n    hidden_state = text_encoder_output.hidden_states[-(clip_skip+1)]\n    return hidden_state\n\n\ndef insert_parser_highjack(pipename):\n    if \"StableDiffusion3\" in pipename:\n        EmbeddingsProvider._encode_token_ids_to_embeddings = sd3_compel_hijack # pylint: disable=protected-access\n        debug(\"Load SD3 Parser hijack\")\n    else:\n        EmbeddingsProvider._encode_token_ids_to_embeddings = compel_hijack # pylint: disable=protected-access\n        debug(\"Load Standard Parser hijack\")\n\n\ninsert_parser_highjack(\"Initialize\")\n\n\n# from https://github.com/damian0815/compel/blob/main/src/compel/diffusers_textual_inversion_manager.py\nclass DiffusersTextualInversionManager(BaseTextualInversionManager):\n    def __init__(self, pipe, tokenizer):\n        self.pipe = pipe\n        self.tokenizer = tokenizer\n        if hasattr(self.pipe, 'embedding_db'):\n            self.pipe.embedding_db.embeddings_used.clear()\n\n    # code from\n    # https://github.com/huggingface/diffusers/blob/705c592ea98ba4e288d837b9cba2767623c78603/src/diffusers/loaders.py\n    def maybe_convert_prompt(self, prompt: typing.Union[str, typing.List[str]], tokenizer: PreTrainedTokenizer):\n        prompts = [prompt] if not isinstance(prompt, typing.List) else prompt\n        prompts = [self._maybe_convert_prompt(p, tokenizer) for p in prompts]\n        if not isinstance(prompt, typing.List):\n            return prompts[0]\n        return prompts\n\n    def _maybe_convert_prompt(self, prompt: str, tokenizer: PreTrainedTokenizer):\n        tokens = tokenizer.tokenize(prompt)\n        unique_tokens = set(tokens)\n        for token in unique_tokens:\n            if token in tokenizer.added_tokens_encoder:\n                if hasattr(self.pipe, 'embedding_db'):\n                    self.pipe.embedding_db.embeddings_used.append(token)\n                replacement = token\n                i = 1\n                while f\"{token}_{i}\" in tokenizer.added_tokens_encoder:\n                    replacement += f\" {token}_{i}\"\n                    i += 1\n                prompt = prompt.replace(token, replacement)\n        if hasattr(self.pipe, 'embedding_db'):\n            self.pipe.embedding_db.embeddings_used = list(set(self.pipe.embedding_db.embeddings_used))\n        debug(f'Prompt: convert=\"{prompt}\"')\n        return prompt\n\n    def expand_textual_inversion_token_ids_if_necessary(self, token_ids: typing.List[int]) -> typing.List[int]:\n        if len(token_ids) == 0:\n            return token_ids\n        prompt = self.pipe.tokenizer.decode(token_ids)\n        prompt = self.maybe_convert_prompt(prompt, self.pipe.tokenizer)\n        debug(f'Prompt: expand=\"{prompt}\"')\n        return self.pipe.tokenizer.encode(prompt, add_special_tokens=False)\n\n\ndef get_prompt_schedule(prompt, steps):\n    temp = []\n    schedule = prompt_parser.get_learned_conditioning_prompt_schedules([prompt], steps)[0]\n    if all(x == schedule[0] for x in schedule):\n        return [schedule[0][1]], False\n    for chunk in schedule:\n        for s in range(steps):\n            if len(temp) < s + 1 <= chunk[0]:\n                temp.append(chunk[1])\n    return temp, len(schedule) > 1\n\n\ndef get_tokens(pipe, msg, prompt):\n    global token_dict, token_type # pylint: disable=global-statement\n    token_count = 0\n    if shared.sd_loaded and hasattr(pipe, 'tokenizer') and pipe.tokenizer is not None:\n        tokenizer = pipe.tokenizer\n        # For multi-modal processors (e.g., PixtralProcessor), use the underlying text tokenizer\n        if hasattr(tokenizer, 'tokenizer') and tokenizer.tokenizer is not None:\n            tokenizer = tokenizer.tokenizer\n        prompt = prompt.replace(' BOS ', ' !!!!!!!! ').replace(' EOS ', ' !!!!!!! ')\n        debug(f'Prompt tokenizer: type={msg} prompt=\"{prompt}\"')\n        if token_dict is None or token_type != shared.sd_model_type:\n            token_type = shared.sd_model_type\n            fn = getattr(tokenizer, 'name_or_path', '')\n            if fn.endswith('tokenizer'):\n                fn = os.path.join(fn, 'vocab.json')\n            else:\n                fn = os.path.join(fn, 'tokenizer', 'vocab.json')\n            token_dict = shared.readfile(fn, silent=True, as_type=\"dict\")\n            added_tokens = getattr(tokenizer, 'added_tokens_decoder', {})\n            for k, v in added_tokens.items():\n                token_dict[str(v)] = k\n            shared.log.debug(f'Tokenizer: words={len(token_dict)} file=\"{fn}\"')\n        has_bos_token = getattr(tokenizer, 'bos_token_id', None) is not None\n        has_eos_token = getattr(tokenizer, 'eos_token_id', None) is not None\n        try:\n            ids = tokenizer(prompt)\n            ids = getattr(ids, 'input_ids', [])\n        except Exception:\n            ids = []\n        if has_bos_token and has_eos_token:\n            for i in range(len(ids)):\n                if ids[i] == 21622:\n                    ids[i] = tokenizer.bos_token_id\n                elif ids[i] == 15203:\n                    ids[i] = tokenizer.eos_token_id\n        tokens = []\n        for i in ids:\n            try:\n                key = list(token_dict.keys())[list(token_dict.values()).index(i)]\n                tokens.append(key)\n            except Exception:\n                tokens.append(f'UNK_{i}')\n        token_count = len(ids) - int(has_bos_token) - int(has_eos_token)\n        debug(f'Prompt tokenizer: type={msg} tokens={token_count} tokens={tokens} ids={ids}')\n    return token_count\n\n\ndef normalize_prompt(pairs: list):\n    num_words = 0\n    total_weight = 0\n    for section in pairs:\n        words = len(section[0].split())\n        if section[1] == -1: # control tokens\n            continue\n        num_words += words\n        total_weight += section[1] * words\n    avg_weight = round(100 * total_weight / num_words) / 100 if num_words > 0 else 1\n    debug(f'Prompt stats: words={num_words} weight={avg_weight}')\n    for section in pairs:\n        section[1] = section[1] / avg_weight if section[1] != -1 else -1 # skip control tokens\n    debug(f'Prompt normalized: {pairs}')\n    return pairs\n\n\ndef get_prompts_with_weights(pipe, prompt: str):\n    t0 = time.time()\n    manager = DiffusersTextualInversionManager(pipe, pipe.tokenizer or pipe.tokenizer_2)\n    prompt = manager.maybe_convert_prompt(prompt, pipe.tokenizer or pipe.tokenizer_2)\n    texts_and_weights = prompt_parser.parse_prompt_attention(prompt)\n    if shared.opts.prompt_mean_norm:\n        texts_and_weights = normalize_prompt(texts_and_weights)\n    texts, text_weights = zip(*texts_and_weights)\n    avg_weight = 0\n    min_weight = 1\n    max_weight = 0\n    sections = 0\n\n    try:\n        all_tokens = 0\n        for text, weight in zip(texts, text_weights):\n            tokens = get_tokens(pipe, 'section', text)\n            all_tokens += tokens\n            avg_weight += tokens*weight\n            min_weight = min(min_weight, weight)\n            max_weight = max(max_weight, weight)\n            if text != 'BREAK':\n                sections += 1\n        if all_tokens > 0:\n            avg_weight = avg_weight / all_tokens\n            debug(f'Prompt tokenizer: parser={shared.opts.prompt_attention} len={len(prompt)} sections={sections} tokens={all_tokens} weights={min_weight:.2f}/{avg_weight:.2f}/{max_weight:.2f}')\n    except Exception:\n        pass\n    debug(f'Prompt: weights={texts_and_weights} time={(time.time() - t0):.3f}')\n\n    return texts, text_weights\n\n\ndef prepare_embedding_providers(pipe, clip_skip) -> list[EmbeddingsProvider]:\n    device = devices.device\n    embeddings_providers = []\n    if 'StableCascade' in pipe.__class__.__name__:\n        embedding_type = -(clip_skip)\n    elif 'XL' in pipe.__class__.__name__:\n        embedding_type = -(clip_skip + 1)\n    else:\n        embedding_type = clip_skip\n    embedding_args = {\n        'truncate': False,\n        'returned_embeddings_type': embedding_type,\n        'device': device,\n        'dtype_for_device_getter': lambda device: devices.dtype,\n    }\n    if getattr(pipe, \"prior_pipe\", None) is not None and getattr(pipe.prior_pipe, \"tokenizer\", None) is not None and getattr(pipe.prior_pipe, \"text_encoder\", None) is not None:\n        provider = EmbeddingsProvider(padding_attention_mask_value=0, tokenizer=pipe.prior_pipe.tokenizer, text_encoder=pipe.prior_pipe.text_encoder, **embedding_args)\n        embeddings_providers.append(provider)\n        no_mask_provider = EmbeddingsProvider(padding_attention_mask_value=1 if \"sote\" in pipe.sd_checkpoint_info.name.lower() else 0, tokenizer=pipe.prior_pipe.tokenizer, text_encoder=pipe.prior_pipe.text_encoder, **embedding_args)\n        embeddings_providers.append(no_mask_provider)\n    elif getattr(pipe, \"tokenizer\", None) is not None and getattr(pipe, \"text_encoder\", None) is not None:\n        if pipe.text_encoder.__class__.__name__.startswith('CLIP'):\n            sd_models.move_model(pipe.text_encoder, devices.device, force=True)\n        provider = EmbeddingsProvider(tokenizer=pipe.tokenizer, text_encoder=pipe.text_encoder, **embedding_args)\n        embeddings_providers.append(provider)\n    if getattr(pipe, \"tokenizer_2\", None) is not None and getattr(pipe, \"text_encoder_2\", None) is not None:\n        if pipe.text_encoder_2.__class__.__name__.startswith('CLIP'):\n            sd_models.move_model(pipe.text_encoder_2, devices.device, force=True)\n        provider = EmbeddingsProvider(tokenizer=pipe.tokenizer_2, text_encoder=pipe.text_encoder_2, **embedding_args)\n        embeddings_providers.append(provider)\n    if getattr(pipe, \"tokenizer_3\", None) is not None and getattr(pipe, \"text_encoder_3\", None) is not None:\n        if pipe.text_encoder_3.__class__.__name__.startswith('CLIP'):\n            sd_models.move_model(pipe.text_encoder_3, devices.device, force=True)\n        provider = EmbeddingsProvider(tokenizer=pipe.tokenizer_3, text_encoder=pipe.text_encoder_3, **embedding_args)\n        embeddings_providers.append(provider)\n    return embeddings_providers\n\n\ndef pad_to_same_length(pipe, embeds, empty_embedding_providers=None):\n    if not hasattr(pipe, 'encode_prompt') and ('StableCascade' not in pipe.__class__.__name__):\n        return embeds\n    device = devices.device\n    if shared.opts.diffusers_zeros_prompt_pad or 'StableDiffusion3' in pipe.__class__.__name__:\n        empty_embed = [torch.zeros((1, 77, embeds[0].shape[2]), device=device, dtype=embeds[0].dtype)]\n    else:\n        try:\n            if 'StableCascade' in pipe.__class__.__name__:\n                empty_embed = empty_embedding_providers[0].get_embeddings_for_weighted_prompt_fragments(text_batch=[[\"\"]], fragment_weights_batch=[[1]], should_return_tokens=False, device=device)\n                empty_embed = [empty_embed]\n            else:\n                empty_embed = pipe.encode_prompt(\"\")\n        except TypeError:  # SD1.5\n            empty_embed = pipe.encode_prompt(\"\", device, 1, False)\n    max_token_count = max([embed.shape[1] for embed in embeds])\n    repeats = max_token_count - min([embed.shape[1] for embed in embeds])\n    empty_batched = empty_embed[0].to(embeds[0].device).repeat(embeds[0].shape[0], repeats // empty_embed[0].shape[1], 1)\n    for i, embed in enumerate(embeds):\n        if embed.shape[1] < max_token_count:\n            embed = torch.cat([embed, empty_batched], dim=1)\n            embeds[i] = embed\n    return embeds\n\n\ndef split_prompts(pipe, prompt, SD3 = False):\n    if prompt.find(\"TE2:\") != -1:\n        prompt, prompt2 = prompt.split(\"TE2:\")\n    else:\n        prompt2 = prompt\n\n    if prompt.find(\"TE3:\") != -1:\n        prompt, prompt3 = prompt.split(\"TE3:\")\n    elif prompt2.find(\"TE3:\") != -1:\n        prompt2, prompt3 = prompt2.split(\"TE3:\")\n    else:\n        prompt3 = prompt\n\n    if prompt.find(\"TE4:\") != -1:\n        prompt, prompt4 = prompt.split(\"TE4:\")\n    elif prompt2.find(\"TE4:\") != -1:\n        prompt2, prompt4 = prompt2.split(\"TE4:\")\n    elif prompt3.find(\"TE4:\") != -1:\n        prompt3, prompt4 = prompt3.split(\"TE4:\")\n    else:\n        prompt4 = prompt\n\n    prompt = prompt.strip()\n    prompt2 = \" \" if prompt2.strip() == \"\" else prompt2.strip()\n    prompt3 = \" \" if prompt3.strip() == \"\" else prompt3.strip()\n    prompt4 = \" \" if prompt4.strip() == \"\" else prompt4.strip()\n\n    if SD3 and prompt3 != \" \":\n        ps, _ws = get_prompts_with_weights(pipe, prompt3)\n        prompt3 = \" \".join(ps)\n    return prompt, prompt2, prompt3, prompt4\n\n\ndef get_weighted_text_embeddings(pipe, prompt: str = \"\", neg_prompt: str = \"\", clip_skip: int = None):\n    device = devices.device\n    if prompt is None:\n        prompt = ''\n    if neg_prompt is None:\n        neg_prompt = ''\n    SD3 = bool(hasattr(pipe, 'text_encoder_3') and not hasattr(pipe, 'text_encoder_4'))\n    prompt, prompt_2, prompt_3, prompt_4 = split_prompts(pipe, prompt, SD3)\n    neg_prompt, neg_prompt_2, neg_prompt_3, neg_prompt_4 = split_prompts(pipe, neg_prompt, SD3)\n\n    if \"Flux\" in pipe.__class__.__name__: # clip is only used for the pooled embeds\n        prompt_embeds, pooled_prompt_embeds, _ = pipe.encode_prompt(prompt=prompt, prompt_2=prompt_2, device=device, num_images_per_prompt=1)\n        return prompt_embeds, pooled_prompt_embeds, None, None, None, None # no negative support\n\n    if \"Chroma\" in pipe.__class__.__name__: # does not use clip and has no pooled embeds\n        prompt_embeds, _, prompt_attention_mask, negative_prompt_embeds, _, negative_prompt_attention_mask = pipe.encode_prompt(prompt=prompt, negative_prompt=neg_prompt, device=device, num_images_per_prompt=1)\n        return prompt_embeds, None, prompt_attention_mask, negative_prompt_embeds, None, negative_prompt_attention_mask\n\n    if \"HiDreamImage\" in pipe.__class__.__name__: # clip is only used for the pooled embeds\n        prompt_embeds_t5, negative_prompt_embeds_t5, prompt_embeds_llama3, negative_prompt_embeds_llama3, pooled_prompt_embeds, negative_pooled_prompt_embeds = pipe.encode_prompt(\n            prompt=prompt, prompt_2=prompt_2, prompt_3=prompt_3, prompt_4=prompt_4,\n            negative_prompt=neg_prompt, negative_prompt_2=neg_prompt_2, negative_prompt_3=neg_prompt_3, negative_prompt_4=neg_prompt_4,\n            device=device, num_images_per_prompt=1,\n        )\n        prompt_embeds = [prompt_embeds_t5, prompt_embeds_llama3]\n        negative_prompt_embeds = [negative_prompt_embeds_t5, negative_prompt_embeds_llama3]\n        return prompt_embeds, pooled_prompt_embeds, None, negative_prompt_embeds, negative_pooled_prompt_embeds, None\n\n    if prompt != prompt_2:\n        ps = [get_prompts_with_weights(pipe, p) for p in [prompt, prompt_2]]\n        ns = [get_prompts_with_weights(pipe, p) for p in [neg_prompt, neg_prompt_2]]\n    else:\n        ps = 2 * [get_prompts_with_weights(pipe, prompt)]\n        ns = 2 * [get_prompts_with_weights(pipe, neg_prompt)]\n\n    positives, positive_weights = zip(*ps)\n    negatives, negative_weights = zip(*ns)\n    if hasattr(pipe, \"tokenizer_2\") and not hasattr(pipe, \"tokenizer\"):\n        positives.pop(0)\n        positive_weights.pop(0)\n        negatives.pop(0)\n        negative_weights.pop(0)\n\n    embedding_providers = prepare_embedding_providers(pipe, clip_skip)\n    if len(embedding_providers) == 0:\n        shared.log.error(\"Prompt encode: cannot find text encoder in model\")\n        return None, None, None, None, None, None\n    empty_embedding_providers = None\n    if 'StableCascade' in pipe.__class__.__name__:\n        empty_embedding_providers = [embedding_providers[1]]\n        embedding_providers = [embedding_providers[0]]\n\n    prompt_embeds = []\n    negative_prompt_embeds = []\n    pooled_prompt_embeds = []\n    negative_pooled_prompt_embeds = []\n    for i in range(len(embedding_providers)):\n        if i >= len(positives): # te may be missing/unloaded\n            break\n        t0 = time.time()\n        text = list(positives[i])\n        weights = list(positive_weights[i])\n        text.append('BREAK')\n        weights.append(-1)\n        provider_embed = []\n        ptokens = 0\n        while 'BREAK' in text:\n            pos = text.index('BREAK')\n            debug(f'Prompt: section=\"{text[:pos]}\" len={len(text[:pos])} weights={weights[:pos]}')\n            if len(text[:pos]) > 0:\n                embed, ptokens = embedding_providers[i].get_embeddings_for_weighted_prompt_fragments(text_batch=[text[:pos]], fragment_weights_batch=[weights[:pos]], device=device, should_return_tokens=True)\n                provider_embed.append(embed)\n            text = text[pos + 1:]\n            weights = weights[pos + 1:]\n        prompt_embeds.append(torch.cat(provider_embed, dim=1))\n        # negative prompt has no keywords\n        if shared.opts.diffusers_zeros_prompt_pad and len(negatives[i]) == 1 and negatives[i][0] in {\"\", \" \"}:\n            embed, ntokens = torch.zeros_like(embed), torch.zeros_like(ptokens)\n        else:\n            embed, ntokens = embedding_providers[i].get_embeddings_for_weighted_prompt_fragments(text_batch=[negatives[i]], fragment_weights_batch=[negative_weights[i]], device=device, should_return_tokens=True)\n        negative_prompt_embeds.append(embed)\n        debug(f'Prompt: unpadded={prompt_embeds[0].shape} TE{i+1} ptokens={torch.count_nonzero(ptokens)} ntokens={torch.count_nonzero(ntokens)} time={(time.time() - t0):.3f}')\n    if SD3:\n        t0 = time.time()\n        pooled_prompt_embeds.append(embedding_providers[0].get_pooled_embeddings(texts=positives[0] if len(positives[0]) == 1 else [\" \".join(positives[0])], device=device))\n        pooled_prompt_embeds.append(embedding_providers[1].get_pooled_embeddings(texts=positives[-1] if len(positives[-1]) == 1 else [\" \".join(positives[-1])], device=device))\n        negative_pooled_prompt_embeds.append(embedding_providers[0].get_pooled_embeddings(texts=negatives[0] if len(negatives[0]) == 1 else [\" \".join(negatives[0])], device=device))\n        negative_pooled_prompt_embeds.append(embedding_providers[1].get_pooled_embeddings(texts=negatives[-1] if len(negatives[-1]) == 1 else [\" \".join(negatives[-1])], device=device))\n        pooled_prompt_embeds = torch.cat(pooled_prompt_embeds, dim=-1)\n        negative_pooled_prompt_embeds = torch.cat(negative_pooled_prompt_embeds, dim=-1)\n        debug(f'Prompt: pooled={pooled_prompt_embeds[0].shape} time={(time.time() - t0):.3f}')\n    elif prompt_embeds[-1].shape[-1] > 768:\n        t0 = time.time()\n        if shared.opts.te_pooled_embeds:\n            pooled_prompt_embeds = embedding_providers[-1].text_encoder.text_projection(prompt_embeds[-1][\n                torch.arange(prompt_embeds[-1].shape[0], device=device),\n                (ptokens.to(dtype=torch.int, device=device) == 49407)\n                .int()\n                .argmax(dim=-1),\n            ])\n            negative_pooled_prompt_embeds = embedding_providers[-1].text_encoder.text_projection(negative_prompt_embeds[-1][\n                torch.arange(negative_prompt_embeds[-1].shape[0], device=device),\n                (ntokens.to(dtype=torch.int, device=device) == 49407)\n                .int()\n                .argmax(dim=-1),\n            ])\n        else:\n            try:\n                pooled_prompt_embeds = embedding_providers[-1].get_pooled_embeddings(texts=[prompt_2], device=device) if prompt_embeds[-1].shape[-1] > 768 else None\n                if shared.opts.diffusers_zeros_prompt_pad and neg_prompt_2 in {\"\", \" \"}:\n                    negative_pooled_prompt_embeds = torch.zeros_like(pooled_prompt_embeds) if negative_prompt_embeds[-1].shape[-1] > 768 else None\n                else:\n                    negative_pooled_prompt_embeds = embedding_providers[-1].get_pooled_embeddings(texts=[neg_prompt_2], device=device) if negative_prompt_embeds[-1].shape[-1] > 768 else None\n            except Exception:\n                pooled_prompt_embeds = None\n                negative_pooled_prompt_embeds = None\n        debug(f'Prompt: pooled shape={pooled_prompt_embeds[0].shape if pooled_prompt_embeds is not None else None} time={(time.time() - t0):.3f}')\n\n    prompt_embeds = torch.cat(prompt_embeds, dim=-1) if len(prompt_embeds) > 1 else prompt_embeds[0]\n    negative_prompt_embeds = torch.cat(negative_prompt_embeds, dim=-1) if len(negative_prompt_embeds) > 1 else \\\n        negative_prompt_embeds[0]\n    if pooled_prompt_embeds == []:\n        pooled_prompt_embeds = None\n    if negative_pooled_prompt_embeds == []:\n        negative_pooled_prompt_embeds = None\n    debug(f'Prompt: positive={prompt_embeds.shape if prompt_embeds is not None else None} pooled={pooled_prompt_embeds.shape if pooled_prompt_embeds is not None else None} negative={negative_prompt_embeds.shape if negative_prompt_embeds is not None else None} pooled={negative_pooled_prompt_embeds.shape if negative_pooled_prompt_embeds is not None else None}')\n    if prompt_embeds.shape[1] != negative_prompt_embeds.shape[1]:\n        [prompt_embeds, negative_prompt_embeds] = pad_to_same_length(pipe, [prompt_embeds, negative_prompt_embeds], empty_embedding_providers=empty_embedding_providers)\n    if SD3:\n        device = devices.device\n        t5_prompt_embed = pipe._get_t5_prompt_embeds( # pylint: disable=protected-access\n            prompt=prompt_3,\n            num_images_per_prompt=prompt_embeds.shape[0],\n            device=device,\n        )\n        prompt_embeds = torch.nn.functional.pad(\n            prompt_embeds, (0, t5_prompt_embed.shape[-1] - prompt_embeds.shape[-1])\n        ).to(device)\n        prompt_embeds = torch.cat([prompt_embeds, t5_prompt_embed], dim=-2)\n        t5_negative_prompt_embed = pipe._get_t5_prompt_embeds( # pylint: disable=protected-access\n            prompt=neg_prompt_3,\n            num_images_per_prompt=prompt_embeds.shape[0],\n            device=device,\n        )\n        negative_prompt_embeds = torch.nn.functional.pad(\n            negative_prompt_embeds, (0, t5_negative_prompt_embed.shape[-1] - negative_prompt_embeds.shape[-1])\n        ).to(device)\n        negative_prompt_embeds = torch.cat([negative_prompt_embeds, t5_negative_prompt_embed], dim=-2)\n    return prompt_embeds, pooled_prompt_embeds, None, negative_prompt_embeds, negative_pooled_prompt_embeds, None\n\n\ndef get_xhinker_text_embeddings(pipe, prompt: str = \"\", neg_prompt: str = \"\", clip_skip: int = None):\n    is_sd3 = hasattr(pipe, 'text_encoder_3')\n    prompt, prompt_2, _prompt_3, _ = split_prompts(pipe, prompt, is_sd3)\n    neg_prompt, neg_prompt_2, _neg_prompt_3, _ = split_prompts(pipe, neg_prompt, is_sd3)\n    try:\n        prompt = pipe.maybe_convert_prompt(prompt, pipe.tokenizer)\n        neg_prompt = pipe.maybe_convert_prompt(neg_prompt, pipe.tokenizer)\n        prompt_2 = pipe.maybe_convert_prompt(prompt_2, pipe.tokenizer_2)\n        neg_prompt_2 = pipe.maybe_convert_prompt(neg_prompt_2, pipe.tokenizer_2)\n    except Exception:\n        pass\n    prompt_embed = positive_pooled = negative_embed = negative_pooled = prompt_attention_mask = negative_prompt_attention_mask = None\n\n    te1_device, te2_device, te3_device = None, None, None\n    if hasattr(pipe, \"text_encoder\") and pipe.text_encoder.device != devices.device:\n        te1_device = pipe.text_encoder.device\n        sd_models.move_model(pipe.text_encoder, devices.device, force=True)\n    if hasattr(pipe, \"text_encoder_2\") and pipe.text_encoder_2.device != devices.device:\n        te2_device = pipe.text_encoder_2.device\n        sd_models.move_model(pipe.text_encoder_2, devices.device, force=True)\n    if hasattr(pipe, \"text_encoder_3\") and pipe.text_encoder_3.device != devices.device:\n        te3_device = pipe.text_encoder_3.device\n        sd_models.move_model(pipe.text_encoder_3, devices.device, force=True)\n\n    if 'StableDiffusion3' in pipe.__class__.__name__:\n        prompt_embed, negative_embed, positive_pooled, negative_pooled = get_weighted_text_embeddings_sd3(pipe=pipe, prompt=prompt, neg_prompt=neg_prompt, use_t5_encoder=bool(pipe.text_encoder_3))\n    elif 'Flux' in pipe.__class__.__name__:\n        prompt_embed, positive_pooled = get_weighted_text_embeddings_flux1(pipe=pipe, prompt=prompt, prompt2=prompt_2, device=devices.device)\n    elif 'Chroma' in pipe.__class__.__name__:\n        prompt_embed, prompt_attention_mask, negative_embed, negative_prompt_attention_mask = get_weighted_text_embeddings_chroma(pipe=pipe, prompt=prompt, neg_prompt=neg_prompt, device=devices.device)\n    elif 'XL' in pipe.__class__.__name__:\n        prompt_embed, negative_embed, positive_pooled, negative_pooled = get_weighted_text_embeddings_sdxl_2p(pipe=pipe, prompt=prompt, prompt_2=prompt_2, neg_prompt=neg_prompt, neg_prompt_2=neg_prompt_2)\n    else:\n        prompt_embed, negative_embed = get_weighted_text_embeddings_sd15(pipe=pipe, prompt=prompt, neg_prompt=neg_prompt, clip_skip=clip_skip)\n\n    if te1_device is not None:\n        sd_models.move_model(pipe.text_encoder, te1_device, force=True)\n    if te2_device is not None:\n        sd_models.move_model(pipe.text_encoder_2, te1_device, force=True)\n    if te3_device is not None:\n        sd_models.move_model(pipe.text_encoder_3, te1_device, force=True)\n\n    return prompt_embed, positive_pooled, prompt_attention_mask, negative_embed, negative_pooled, negative_prompt_attention_mask\n"
  },
  {
    "path": "modules/prompt_parser_xhinker.py",
    "content": "## -----------------------------------------------------------------------------\n# Generate unlimited size prompt with weighting for SD3&SDXL&SD15\n# If you use sd_embed in your research, please cite the following work:\n#\n# ```\n# @misc{sd_embed_2024,\n#   author       = {Shudong Zhu(Andrew Zhu)},\n#   title        = {Long Prompt Weighted Stable Diffusion Embedding},\n#   howpublished = {\\url{https://github.com/xhinker/sd_embed}},\n#   year         = {2024},\n# }\n# ```\n# Author: Andrew Zhu\n# Book: Using Stable Diffusion with Python, https://www.amazon.com/Using-Stable-Diffusion-Python-Generation/dp/1835086373\n# Github: https://github.com/xhinker\n# Medium: https://medium.com/@xhinker\n## -----------------------------------------------------------------------------\n\nimport torch\nimport torch.nn.functional as F\nfrom transformers import CLIPTokenizer, T5Tokenizer\nfrom diffusers import StableDiffusionPipeline\nfrom diffusers import StableDiffusionXLPipeline\nfrom diffusers import StableDiffusion3Pipeline\nfrom diffusers import FluxPipeline\nfrom diffusers import ChromaPipeline\nfrom modules.prompt_parser import parse_prompt_attention  # use built-in A1111 parser\n\n\ndef get_prompts_tokens_with_weights(\n        clip_tokenizer: CLIPTokenizer\n        , prompt: str = None\n):\n    \"\"\"\n    Get prompt token ids and weights, this function works for both prompt and negative prompt\n\n    Args:\n        pipe (CLIPTokenizer)\n            A CLIPTokenizer\n        prompt (str)\n            A prompt string with weights\n\n    Returns:\n        text_tokens (list)\n            A list contains token ids\n        text_weight (list)\n            A list contains the correspodent weight of token ids\n\n    Example:\n        import torch\n        from diffusers_plus.tools.sd_embeddings import get_prompts_tokens_with_weights\n        from transformers import CLIPTokenizer\n\n        clip_tokenizer = CLIPTokenizer.from_pretrained(\n            \"stablediffusionapi/deliberate-v2\"\n            , subfolder = \"tokenizer\"\n            , dtype = torch.float16\n        )\n\n        token_id_list, token_weight_list = get_prompts_tokens_with_weights(\n            clip_tokenizer = clip_tokenizer\n            ,prompt = \"a (red:1.5) cat\"*70\n        )\n    \"\"\"\n    if (prompt is None) or (len(prompt) < 1):\n        prompt = \"empty\"\n\n    texts_and_weights = parse_prompt_attention(prompt)\n    text_tokens, text_weights = [], []\n    for word, weight in texts_and_weights:\n        # tokenize and discard the starting and the ending token\n        token = clip_tokenizer(\n            word\n            , truncation=False  # so that tokenize whatever length prompt\n        ).input_ids[1:-1]\n        # the returned token is a 1d list: [320, 1125, 539, 320]\n\n        # merge the new tokens to the all tokens holder: text_tokens\n        text_tokens = [*text_tokens, *token]\n\n        # each token chunk will come with one weight, like ['red cat', 2.0]\n        # need to expand weight for each token.\n        chunk_weights = [weight] * len(token)\n\n        # append the weight back to the weight holder: text_weights\n        text_weights = [*text_weights, *chunk_weights]\n    return text_tokens, text_weights\n\n\ndef get_prompts_tokens_with_weights_t5(\n        t5_tokenizer: T5Tokenizer,\n        prompt: str,\n        add_special_tokens: bool = True\n):\n    \"\"\"\n    Get prompt token ids and weights, this function works for both prompt and negative prompt\n    \"\"\"\n    if (prompt is None) or (len(prompt) < 1):\n        prompt = \"empty\"\n\n    texts_and_weights = parse_prompt_attention(prompt)\n    text_tokens, text_weights, text_masks = [], [], []\n    for word, weight in texts_and_weights:\n        # tokenize and discard the starting and the ending token\n        inputs = t5_tokenizer(\n            word,\n            truncation=False,  # so that tokenize whatever length prompt\n            add_special_tokens=add_special_tokens,\n            return_length=False,\n        )\n\n        token = inputs.input_ids\n        mask = inputs.attention_mask\n\n        # merge the new tokens to the all tokens holder: text_tokens\n        text_tokens = [*text_tokens, *token]\n        text_masks = [*text_masks, *mask]\n\n        # each token chunk will come with one weight, like ['red cat', 2.0]\n        # need to expand weight for each token.\n        chunk_weights = [weight] * len(token)\n\n        # append the weight back to the weight holder: text_weights\n        text_weights = [*text_weights, *chunk_weights]\n    return text_tokens, text_weights, text_masks\n\n\ndef group_tokens_and_weights(\n        token_ids: list\n        , weights: list\n        , pad_last_block=False\n):\n    \"\"\"\n    Produce tokens and weights in groups and pad the missing tokens\n\n    Args:\n        token_ids (list)\n            The token ids from tokenizer\n        weights (list)\n            The weights list from function get_prompts_tokens_with_weights\n        pad_last_block (bool)\n            Control if fill the last token list to 75 tokens with eos\n    Returns:\n        new_token_ids (2d list)\n        new_weights (2d list)\n\n    Example:\n        from diffusers_plus.tools.sd_embeddings import group_tokens_and_weights\n        token_groups,weight_groups = group_tokens_and_weights(\n            token_ids = token_id_list\n            , weights = token_weight_list\n        )\n    \"\"\"\n    bos, eos = 49406, 49407\n\n    # this will be a 2d list\n    new_token_ids = []\n    new_weights = []\n    while len(token_ids) >= 75:\n        # get the first 75 tokens\n        head_75_tokens = [token_ids.pop(0) for _ in range(75)]\n        head_75_weights = [weights.pop(0) for _ in range(75)]\n\n        # extract token ids and weights\n        temp_77_token_ids = [bos] + head_75_tokens + [eos]\n        temp_77_weights = [1.0] + head_75_weights + [1.0]\n\n        # add 77 token and weights chunk to the holder list\n        new_token_ids.append(temp_77_token_ids)\n        new_weights.append(temp_77_weights)\n\n    # padding the left\n    if len(token_ids) > 0:\n        padding_len = 75 - len(token_ids) if pad_last_block else 0\n\n        temp_77_token_ids = [bos] + token_ids + [eos] * padding_len + [eos]\n        new_token_ids.append(temp_77_token_ids)\n\n        temp_77_weights = [1.0] + weights + [1.0] * padding_len + [1.0]\n        new_weights.append(temp_77_weights)\n\n    return new_token_ids, new_weights\n\n\ndef get_weighted_text_embeddings_sd15(\n        pipe: StableDiffusionPipeline\n        , prompt: str = \"\"\n        , neg_prompt: str = \"\"\n        , pad_last_block=False\n        , clip_skip: int = 0\n):\n    \"\"\"\n    This function can process long prompt with weights, no length limitation\n    for Stable Diffusion v1.5\n\n    Args:\n        pipe (StableDiffusionPipeline)\n        prompt (str)\n        neg_prompt (str)\n    Returns:\n        prompt_embeds (torch.Tensor)\n        neg_prompt_embeds (torch.Tensor)\n\n    Example:\n        from diffusers import StableDiffusionPipeline\n        text2img_pipe = StableDiffusionPipeline.from_pretrained(\n            \"stablediffusionapi/deliberate-v2\"\n            , torch_dtype = torch.float16\n            , safety_checker = None\n        ).to(\"cuda:0\")\n        prompt_embeds, neg_prompt_embeds = get_weighted_text_embeddings_v15(\n            pipe = text2img_pipe\n            , prompt = \"a (white) cat\"\n            , neg_prompt = \"blur\"\n        )\n        image = text2img_pipe(\n            prompt_embeds = prompt_embeds\n            , negative_prompt_embeds = neg_prompt_embeds\n            , generator = torch.Generator(text2img_pipe.device).manual_seed(2)\n        ).images[0]\n    \"\"\"\n    original_clip_layers = pipe.text_encoder.text_model.encoder.layers\n    if clip_skip > 0:\n        pipe.text_encoder.text_model.encoder.layers = original_clip_layers[:-clip_skip]\n\n    eos = pipe.tokenizer.eos_token_id\n    prompt_tokens, prompt_weights = get_prompts_tokens_with_weights(\n        pipe.tokenizer, prompt\n    )\n    neg_prompt_tokens, neg_prompt_weights = get_prompts_tokens_with_weights(\n        pipe.tokenizer, neg_prompt\n    )\n\n    # padding the shorter one\n    prompt_token_len = len(prompt_tokens)\n    neg_prompt_token_len = len(neg_prompt_tokens)\n    if prompt_token_len > neg_prompt_token_len:\n        # padding the neg_prompt with eos token\n        neg_prompt_tokens = (\n                neg_prompt_tokens +\n                [eos] * abs(prompt_token_len - neg_prompt_token_len)\n        )\n        neg_prompt_weights = (\n                neg_prompt_weights +\n                [1.0] * abs(prompt_token_len - neg_prompt_token_len)\n        )\n    else:\n        # padding the prompt\n        prompt_tokens = (\n                prompt_tokens\n                + [eos] * abs(prompt_token_len - neg_prompt_token_len)\n        )\n        prompt_weights = (\n                prompt_weights\n                + [1.0] * abs(prompt_token_len - neg_prompt_token_len)\n        )\n\n    embeds = []\n    neg_embeds = []\n\n    prompt_token_groups, prompt_weight_groups = group_tokens_and_weights(\n        prompt_tokens.copy()\n        , prompt_weights.copy()\n        , pad_last_block=pad_last_block\n    )\n\n    neg_prompt_token_groups, neg_prompt_weight_groups = group_tokens_and_weights(\n        neg_prompt_tokens.copy()\n        , neg_prompt_weights.copy()\n        , pad_last_block=pad_last_block\n    )\n\n    # get prompt embeddings one by one is not working\n    # we must embed prompt group by group\n    for i in range(len(prompt_token_groups)):\n        # get positive prompt embeddings with weights\n        token_tensor = torch.tensor(\n            [prompt_token_groups[i]]\n            , dtype=torch.long, device=pipe.text_encoder.device\n        )\n        weight_tensor = torch.tensor(\n            prompt_weight_groups[i]\n            , dtype=torch.float16\n            , device=pipe.text_encoder.device\n        )\n\n        token_embedding = pipe.text_encoder(token_tensor)[0].squeeze(0)\n        for j in range(len(weight_tensor)):\n            token_embedding[j] = token_embedding[j] * weight_tensor[j]\n        token_embedding = token_embedding.unsqueeze(0)\n        embeds.append(token_embedding)\n\n        # get negative prompt embeddings with weights\n        neg_token_tensor = torch.tensor(\n            [neg_prompt_token_groups[i]]\n            , dtype=torch.long, device=pipe.text_encoder.device\n        )\n        neg_weight_tensor = torch.tensor(\n            neg_prompt_weight_groups[i]\n            , dtype=torch.float16\n            , device=pipe.text_encoder.device\n        )\n        neg_token_embedding = pipe.text_encoder(neg_token_tensor)[0].squeeze(0)\n        for z in range(len(neg_weight_tensor)):\n            neg_token_embedding[z] = (\n                    neg_token_embedding[z] * neg_weight_tensor[z]\n            )\n        neg_token_embedding = neg_token_embedding.unsqueeze(0)\n        neg_embeds.append(neg_token_embedding)\n\n    prompt_embeds = torch.cat(embeds, dim=1)\n    neg_prompt_embeds = torch.cat(neg_embeds, dim=1)\n\n    # recover clip layers\n    if clip_skip > 0:\n        pipe.text_encoder.text_model.encoder.layers = original_clip_layers\n\n    return prompt_embeds, neg_prompt_embeds\n\n\ndef get_weighted_text_embeddings_sdxl(\n        pipe: StableDiffusionXLPipeline\n        , prompt: str = \"\"\n        , neg_prompt: str = \"\"\n        , pad_last_block=True\n):\n    \"\"\"\n    This function can process long prompt with weights, no length limitation\n    for Stable Diffusion XL\n\n    Args:\n        pipe (StableDiffusionPipeline)\n        prompt (str)\n        neg_prompt (str)\n    Returns:\n        prompt_embeds (torch.Tensor)\n        neg_prompt_embeds (torch.Tensor)\n\n    Example:\n        from diffusers import StableDiffusionPipeline\n        text2img_pipe = StableDiffusionPipeline.from_pretrained(\n            \"stablediffusionapi/deliberate-v2\"\n            , torch_dtype = torch.float16\n            , safety_checker = None\n        ).to(\"cuda:0\")\n        prompt_embeds, neg_prompt_embeds = get_weighted_text_embeddings_v15(\n            pipe = text2img_pipe\n            , prompt = \"a (white) cat\"\n            , neg_prompt = \"blur\"\n        )\n        image = text2img_pipe(\n            prompt_embeds = prompt_embeds\n            , negative_prompt_embeds = neg_prompt_embeds\n            , generator = torch.Generator(text2img_pipe.device).manual_seed(2)\n        ).images[0]\n    \"\"\"\n    eos = pipe.tokenizer.eos_token_id\n\n    # tokenizer 1\n    prompt_tokens, prompt_weights = get_prompts_tokens_with_weights(\n        pipe.tokenizer, prompt\n    )\n\n    neg_prompt_tokens, neg_prompt_weights = get_prompts_tokens_with_weights(\n        pipe.tokenizer, neg_prompt\n    )\n\n    # tokenizer 2\n    prompt_tokens_2, prompt_weights_2 = get_prompts_tokens_with_weights(\n        pipe.tokenizer_2, prompt\n    )\n\n    neg_prompt_tokens_2, neg_prompt_weights_2 = get_prompts_tokens_with_weights(\n        pipe.tokenizer_2, neg_prompt\n    )\n\n    # padding the shorter one\n    prompt_token_len = len(prompt_tokens)\n    neg_prompt_token_len = len(neg_prompt_tokens)\n\n    if prompt_token_len > neg_prompt_token_len:\n        # padding the neg_prompt with eos token\n        neg_prompt_tokens = (\n                neg_prompt_tokens +\n                [eos] * abs(prompt_token_len - neg_prompt_token_len)\n        )\n        neg_prompt_weights = (\n                neg_prompt_weights +\n                [1.0] * abs(prompt_token_len - neg_prompt_token_len)\n        )\n    else:\n        # padding the prompt\n        prompt_tokens = (\n                prompt_tokens\n                + [eos] * abs(prompt_token_len - neg_prompt_token_len)\n        )\n        prompt_weights = (\n                prompt_weights\n                + [1.0] * abs(prompt_token_len - neg_prompt_token_len)\n        )\n\n    # padding the shorter one for token set 2\n    prompt_token_len_2 = len(prompt_tokens_2)\n    neg_prompt_token_len_2 = len(neg_prompt_tokens_2)\n\n    if prompt_token_len_2 > neg_prompt_token_len_2:\n        # padding the neg_prompt with eos token\n        neg_prompt_tokens_2 = (\n                neg_prompt_tokens_2 +\n                [eos] * abs(prompt_token_len_2 - neg_prompt_token_len_2)\n        )\n        neg_prompt_weights_2 = (\n                neg_prompt_weights_2 +\n                [1.0] * abs(prompt_token_len_2 - neg_prompt_token_len_2)\n        )\n    else:\n        # padding the prompt\n        prompt_tokens_2 = (\n                prompt_tokens_2\n                + [eos] * abs(prompt_token_len_2 - neg_prompt_token_len_2)\n        )\n        prompt_weights_2 = (\n                prompt_weights_2\n                + [1.0] * abs(prompt_token_len_2 - neg_prompt_token_len_2)\n        )\n\n    embeds = []\n    neg_embeds = []\n\n    prompt_token_groups, prompt_weight_groups = group_tokens_and_weights(\n        prompt_tokens.copy()\n        , prompt_weights.copy()\n        , pad_last_block=pad_last_block\n    )\n\n    neg_prompt_token_groups, neg_prompt_weight_groups = group_tokens_and_weights(\n        neg_prompt_tokens.copy()\n        , neg_prompt_weights.copy()\n        , pad_last_block=pad_last_block\n    )\n\n    prompt_token_groups_2, _prompt_weight_groups_2 = group_tokens_and_weights(\n        prompt_tokens_2.copy()\n        , prompt_weights_2.copy()\n        , pad_last_block=pad_last_block\n    )\n\n    neg_prompt_token_groups_2, _neg_prompt_weight_groups_2 = group_tokens_and_weights(\n        neg_prompt_tokens_2.copy()\n        , neg_prompt_weights_2.copy()\n        , pad_last_block=pad_last_block\n    )\n\n    # get prompt embeddings one by one is not working.\n    for i in range(len(prompt_token_groups)):\n        # get positive prompt embeddings with weights\n        token_tensor = torch.tensor(\n            [prompt_token_groups[i]]\n            , dtype=torch.long, device=pipe.text_encoder.device\n        )\n        weight_tensor = torch.tensor(\n            prompt_weight_groups[i]\n            , dtype=torch.float16\n            , device=pipe.text_encoder.device\n        )\n\n        token_tensor_2 = torch.tensor(\n            [prompt_token_groups_2[i]]\n            , dtype=torch.long, device=pipe.text_encoder_2.device\n        )\n\n        # use first text encoder\n        prompt_embeds_1 = pipe.text_encoder(\n            token_tensor.to(pipe.text_encoder.device)\n            , output_hidden_states=True\n        )\n        prompt_embeds_1_hidden_states = prompt_embeds_1.hidden_states[-2]\n\n        # use second text encoder\n        prompt_embeds_2 = pipe.text_encoder_2(\n            token_tensor_2.to(pipe.text_encoder_2.device)\n            , output_hidden_states=True\n        )\n        prompt_embeds_2_hidden_states = prompt_embeds_2.hidden_states[-2]\n        pooled_prompt_embeds = prompt_embeds_2[0]\n\n        prompt_embeds_list = [prompt_embeds_1_hidden_states, prompt_embeds_2_hidden_states]\n        token_embedding = torch.concat(prompt_embeds_list, dim=-1).squeeze(0).to(pipe.text_encoder.device)\n\n        for j in range(len(weight_tensor)):\n            if weight_tensor[j] != 1.0:\n                # ow = weight_tensor[j] - 1\n\n                # optional process\n                # To map number of (0,1) to (-1,1)\n                # tanh_weight = (math.exp(ow)/(math.exp(ow) + 1) - 0.5) * 2\n                # weight = 1 + tanh_weight\n\n                # add weight method 1:\n                # token_embedding[j] = token_embedding[j] * weight\n                # token_embedding[j] = (\n                #     token_embedding[-1] + (token_embedding[j] - token_embedding[-1]) * weight\n                # )\n\n                # add weight method 2:\n                # token_embedding[j] = (\n                #     token_embedding[-1] + (token_embedding[j] - token_embedding[-1]) * weight_tensor[j]\n                # )\n\n                # add weight method 3:\n                token_embedding[j] = token_embedding[j] * weight_tensor[j]\n\n        token_embedding = token_embedding.unsqueeze(0)\n        embeds.append(token_embedding)\n\n        # get negative prompt embeddings with weights\n        neg_token_tensor = torch.tensor(\n            [neg_prompt_token_groups[i]]\n            , dtype=torch.long, device=pipe.text_encoder.device\n        )\n        neg_token_tensor_2 = torch.tensor(\n            [neg_prompt_token_groups_2[i]]\n            , dtype=torch.long, device=pipe.text_encoder_2.device\n        )\n        neg_weight_tensor = torch.tensor(\n            neg_prompt_weight_groups[i]\n            , dtype=torch.float16\n            , device=pipe.text_encoder.device\n        )\n\n        # use first text encoder\n        neg_prompt_embeds_1 = pipe.text_encoder(\n            neg_token_tensor.to(pipe.text_encoder.device)\n            , output_hidden_states=True\n        )\n        neg_prompt_embeds_1_hidden_states = neg_prompt_embeds_1.hidden_states[-2]\n\n        # use second text encoder\n        neg_prompt_embeds_2 = pipe.text_encoder_2(\n            neg_token_tensor_2.to(pipe.text_encoder_2.device)\n            , output_hidden_states=True\n        )\n        neg_prompt_embeds_2_hidden_states = neg_prompt_embeds_2.hidden_states[-2]\n        negative_pooled_prompt_embeds = neg_prompt_embeds_2[0]\n\n        neg_prompt_embeds_list = [neg_prompt_embeds_1_hidden_states, neg_prompt_embeds_2_hidden_states]\n        neg_token_embedding = torch.concat(neg_prompt_embeds_list, dim=-1).squeeze(0).to(pipe.text_encoder.device)\n\n        for z in range(len(neg_weight_tensor)):\n            if neg_weight_tensor[z] != 1.0:\n                # ow = neg_weight_tensor[z] - 1\n                # neg_weight = 1 + (math.exp(ow)/(math.exp(ow) + 1) - 0.5) * 2\n\n                # add weight method 1:\n                # neg_token_embedding[z] = neg_token_embedding[z] * neg_weight\n                # neg_token_embedding[z] = (\n                #     neg_token_embedding[-1] + (neg_token_embedding[z] - neg_token_embedding[-1]) * neg_weight\n                # )\n\n                # add weight method 2:\n                # neg_token_embedding[z] = (\n                #     neg_token_embedding[-1] + (neg_token_embedding[z] - neg_token_embedding[-1]) * neg_weight_tensor[z]\n                # )\n\n                # add weight method 3:\n                neg_token_embedding[z] = neg_token_embedding[z] * neg_weight_tensor[z]\n\n        neg_token_embedding = neg_token_embedding.unsqueeze(0)\n        neg_embeds.append(neg_token_embedding)\n\n    prompt_embeds = torch.cat(embeds, dim=1)\n    negative_prompt_embeds = torch.cat(neg_embeds, dim=1)\n\n    return prompt_embeds, negative_prompt_embeds, pooled_prompt_embeds, negative_pooled_prompt_embeds\n\n\ndef get_weighted_text_embeddings_sdxl_refiner(\n        pipe: StableDiffusionXLPipeline\n        , prompt: str = \"\"\n        , neg_prompt: str = \"\"\n):\n    \"\"\"\n    This function can process long prompt with weights, no length limitation\n    for Stable Diffusion XL\n\n    Args:\n        pipe (StableDiffusionPipeline)\n        prompt (str)\n        neg_prompt (str)\n    Returns:\n        prompt_embeds (torch.Tensor)\n        neg_prompt_embeds (torch.Tensor)\n\n    Example:\n        from diffusers import StableDiffusionPipeline\n        text2img_pipe = StableDiffusionPipeline.from_pretrained(\n            \"stablediffusionapi/deliberate-v2\"\n            , torch_dtype = torch.float16\n            , safety_checker = None\n        ).to(\"cuda:0\")\n        prompt_embeds, neg_prompt_embeds = get_weighted_text_embeddings_v15(\n            pipe = text2img_pipe\n            , prompt = \"a (white) cat\"\n            , neg_prompt = \"blur\"\n        )\n        image = text2img_pipe(\n            prompt_embeds = prompt_embeds\n            , negative_prompt_embeds = neg_prompt_embeds\n            , generator = torch.Generator(text2img_pipe.device).manual_seed(2)\n        ).images[0]\n    \"\"\"\n    eos = 49407  # pipe.tokenizer.eos_token_id\n\n    # tokenizer 2\n    prompt_tokens_2, prompt_weights_2 = get_prompts_tokens_with_weights(\n        pipe.tokenizer_2, prompt\n    )\n\n    neg_prompt_tokens_2, neg_prompt_weights_2 = get_prompts_tokens_with_weights(\n        pipe.tokenizer_2, neg_prompt\n    )\n\n    # padding the shorter one for token set 2\n    prompt_token_len_2 = len(prompt_tokens_2)\n    neg_prompt_token_len_2 = len(neg_prompt_tokens_2)\n\n    if prompt_token_len_2 > neg_prompt_token_len_2:\n        # padding the neg_prompt with eos token\n        neg_prompt_tokens_2 = (\n                neg_prompt_tokens_2 +\n                [eos] * abs(prompt_token_len_2 - neg_prompt_token_len_2)\n        )\n        neg_prompt_weights_2 = (\n                neg_prompt_weights_2 +\n                [1.0] * abs(prompt_token_len_2 - neg_prompt_token_len_2)\n        )\n    else:\n        # padding the prompt\n        prompt_tokens_2 = (\n                prompt_tokens_2\n                + [eos] * abs(prompt_token_len_2 - neg_prompt_token_len_2)\n        )\n        prompt_weights_2 = (\n                prompt_weights_2\n                + [1.0] * abs(prompt_token_len_2 - neg_prompt_token_len_2)\n        )\n\n    embeds = []\n    neg_embeds = []\n\n    prompt_token_groups_2, prompt_weight_groups_2 = group_tokens_and_weights(\n        prompt_tokens_2.copy()\n        , prompt_weights_2.copy()\n    )\n\n    neg_prompt_token_groups_2, neg_prompt_weight_groups_2 = group_tokens_and_weights(\n        neg_prompt_tokens_2.copy()\n        , neg_prompt_weights_2.copy()\n    )\n\n    # get prompt embeddings one by one is not working.\n    for i in range(len(prompt_token_groups_2)):\n        # get positive prompt embeddings with weights\n        token_tensor_2 = torch.tensor(\n            [prompt_token_groups_2[i]]\n            , dtype=torch.long, device=pipe.text_encoder_2.device\n        )\n\n        weight_tensor_2 = torch.tensor(\n            prompt_weight_groups_2[i]\n            , dtype=torch.float16\n            , device=pipe.text_encoder_2.device\n        )\n\n        # use second text encoder\n        prompt_embeds_2 = pipe.text_encoder_2(\n            token_tensor_2.to(pipe.text_encoder_2.device)\n            , output_hidden_states=True\n        )\n        prompt_embeds_2_hidden_states = prompt_embeds_2.hidden_states[-2]\n        pooled_prompt_embeds = prompt_embeds_2[0]\n\n        prompt_embeds_list = [prompt_embeds_2_hidden_states]\n        token_embedding = torch.concat(prompt_embeds_list, dim=-1).squeeze(0)\n\n        for j in range(len(weight_tensor_2)):\n            if weight_tensor_2[j] != 1.0:\n                # ow = weight_tensor_2[j] - 1\n\n                # optional process\n                # To map number of (0,1) to (-1,1)\n                # tanh_weight = (math.exp(ow) / (math.exp(ow) + 1) - 0.5) * 2\n                # weight = 1 + tanh_weight\n\n                # add weight method 1:\n                # token_embedding[j] = token_embedding[j] * weight\n                # token_embedding[j] = (\n                #     token_embedding[-1] + (token_embedding[j] - token_embedding[-1]) * weight\n                # )\n\n                # add weight method 2:\n                token_embedding[j] = (\n                        token_embedding[-1] + (token_embedding[j] - token_embedding[-1]) * weight_tensor_2[j]\n                )\n\n        token_embedding = token_embedding.unsqueeze(0)\n        embeds.append(token_embedding)\n\n        # get negative prompt embeddings with weights\n        neg_token_tensor_2 = torch.tensor(\n            [neg_prompt_token_groups_2[i]]\n            , dtype=torch.long, device=pipe.text_encoder_2.device\n        )\n        neg_weight_tensor_2 = torch.tensor(\n            neg_prompt_weight_groups_2[i]\n            , dtype=torch.float16\n            , device=pipe.text_encoder_2.device\n        )\n\n        # use second text encoder\n        neg_prompt_embeds_2 = pipe.text_encoder_2(\n            neg_token_tensor_2.to(pipe.text_encoder_2.device)\n            , output_hidden_states=True\n        )\n        neg_prompt_embeds_2_hidden_states = neg_prompt_embeds_2.hidden_states[-2]\n        negative_pooled_prompt_embeds = neg_prompt_embeds_2[0]\n\n        neg_prompt_embeds_list = [neg_prompt_embeds_2_hidden_states]\n        neg_token_embedding = torch.concat(neg_prompt_embeds_list, dim=-1).squeeze(0)\n\n        for z in range(len(neg_weight_tensor_2)):\n            if neg_weight_tensor_2[z] != 1.0:\n                # ow = neg_weight_tensor_2[z] - 1\n                # neg_weight = 1 + (math.exp(ow)/(math.exp(ow) + 1) - 0.5) * 2\n\n                # add weight method 1:\n                # neg_token_embedding[z] = neg_token_embedding[z] * neg_weight\n                # neg_token_embedding[z] = (\n                #     neg_token_embedding[-1] + (neg_token_embedding[z] - neg_token_embedding[-1]) * neg_weight\n                # )\n\n                # add weight method 2:\n                neg_token_embedding[z] = (\n                        neg_token_embedding[-1] + (neg_token_embedding[z] - neg_token_embedding[-1]) *\n                        neg_weight_tensor_2[z]\n                )\n\n        neg_token_embedding = neg_token_embedding.unsqueeze(0)\n        neg_embeds.append(neg_token_embedding)\n\n    prompt_embeds = torch.cat(embeds, dim=1)\n    negative_prompt_embeds = torch.cat(neg_embeds, dim=1)\n\n    return prompt_embeds, negative_prompt_embeds, pooled_prompt_embeds, negative_pooled_prompt_embeds\n\n\ndef get_weighted_text_embeddings_sdxl_2p(\n        pipe: StableDiffusionXLPipeline\n        , prompt: str = \"\"\n        , prompt_2: str = None\n        , neg_prompt: str = \"\"\n        , neg_prompt_2: str = None\n):\n    \"\"\"\n    This function can process long prompt with weights, no length limitation\n    for Stable Diffusion XL, support two prompt sets.\n\n    Args:\n        pipe (StableDiffusionPipeline)\n        prompt (str)\n        neg_prompt (str)\n    Returns:\n        prompt_embeds (torch.Tensor)\n        neg_prompt_embeds (torch.Tensor)\n\n    Example:\n        from diffusers import StableDiffusionPipeline\n        text2img_pipe = StableDiffusionPipeline.from_pretrained(\n            \"stablediffusionapi/deliberate-v2\"\n            , torch_dtype = torch.float16\n            , safety_checker = None\n        ).to(\"cuda:0\")\n        prompt_embeds, neg_prompt_embeds = get_weighted_text_embeddings_v15(\n            pipe = text2img_pipe\n            , prompt = \"a (white) cat\"\n            , neg_prompt = \"blur\"\n        )\n        image = text2img_pipe(\n            prompt_embeds = prompt_embeds\n            , negative_prompt_embeds = neg_prompt_embeds\n            , generator = torch.Generator(text2img_pipe.device).manual_seed(2)\n        ).images[0]\n    \"\"\"\n    prompt_2 = prompt_2 or prompt\n    neg_prompt_2 = neg_prompt_2 or neg_prompt\n    eos = pipe.tokenizer.eos_token_id\n\n    # tokenizer 1\n    prompt_tokens, prompt_weights = get_prompts_tokens_with_weights(\n        pipe.tokenizer, prompt\n    )\n\n    neg_prompt_tokens, neg_prompt_weights = get_prompts_tokens_with_weights(\n        pipe.tokenizer, neg_prompt\n    )\n\n    # tokenizer 2\n    prompt_tokens_2, prompt_weights_2 = get_prompts_tokens_with_weights(\n        pipe.tokenizer_2, prompt_2\n    )\n\n    neg_prompt_tokens_2, neg_prompt_weights_2 = get_prompts_tokens_with_weights(\n        pipe.tokenizer_2, neg_prompt_2\n    )\n\n    # padding the shorter one\n    prompt_token_len = len(prompt_tokens)\n    neg_prompt_token_len = len(neg_prompt_tokens)\n\n    if prompt_token_len > neg_prompt_token_len:\n        # padding the neg_prompt with eos token\n        neg_prompt_tokens = (\n                neg_prompt_tokens +\n                [eos] * abs(prompt_token_len - neg_prompt_token_len)\n        )\n        neg_prompt_weights = (\n                neg_prompt_weights +\n                [1.0] * abs(prompt_token_len - neg_prompt_token_len)\n        )\n    else:\n        # padding the prompt\n        prompt_tokens = (\n                prompt_tokens\n                + [eos] * abs(prompt_token_len - neg_prompt_token_len)\n        )\n        prompt_weights = (\n                prompt_weights\n                + [1.0] * abs(prompt_token_len - neg_prompt_token_len)\n        )\n\n    # padding the shorter one for token set 2\n    prompt_token_len_2 = len(prompt_tokens_2)\n    neg_prompt_token_len_2 = len(neg_prompt_tokens_2)\n\n    if prompt_token_len_2 > neg_prompt_token_len_2:\n        # padding the neg_prompt with eos token\n        neg_prompt_tokens_2 = (\n                neg_prompt_tokens_2 +\n                [eos] * abs(prompt_token_len_2 - neg_prompt_token_len_2)\n        )\n        neg_prompt_weights_2 = (\n                neg_prompt_weights_2 +\n                [1.0] * abs(prompt_token_len_2 - neg_prompt_token_len_2)\n        )\n    else:\n        # padding the prompt\n        prompt_tokens_2 = (\n                prompt_tokens_2\n                + [eos] * abs(prompt_token_len_2 - neg_prompt_token_len_2)\n        )\n        prompt_weights_2 = (\n                prompt_weights_2\n                + [1.0] * abs(prompt_token_len_2 - neg_prompt_token_len_2)\n        )\n\n    # now, need to ensure prompt and prompt_2 has the same lemgth\n    prompt_token_len = len(prompt_tokens)\n    prompt_token_len_2 = len(prompt_tokens_2)\n    if prompt_token_len > prompt_token_len_2:\n        prompt_tokens_2 = prompt_tokens_2 + [eos] * abs(prompt_token_len - prompt_token_len_2)\n        prompt_weights_2 = prompt_weights_2 + [1.0] * abs(prompt_token_len - prompt_token_len_2)\n    else:\n        prompt_tokens = prompt_tokens + [eos] * abs(prompt_token_len - prompt_token_len_2)\n        prompt_weights = prompt_weights + [1.0] * abs(prompt_token_len - prompt_token_len_2)\n\n    # now, need to ensure neg_prompt and net_prompt_2 has the same lemgth\n    neg_prompt_token_len = len(neg_prompt_tokens)\n    neg_prompt_token_len_2 = len(neg_prompt_tokens_2)\n    if neg_prompt_token_len > neg_prompt_token_len_2:\n        neg_prompt_tokens_2 = neg_prompt_tokens_2 + [eos] * abs(neg_prompt_token_len - neg_prompt_token_len_2)\n        neg_prompt_weights_2 = neg_prompt_weights_2 + [1.0] * abs(neg_prompt_token_len - neg_prompt_token_len_2)\n    else:\n        neg_prompt_tokens = neg_prompt_tokens + [eos] * abs(neg_prompt_token_len - neg_prompt_token_len_2)\n        neg_prompt_weights = neg_prompt_weights + [1.0] * abs(neg_prompt_token_len - neg_prompt_token_len_2)\n\n    embeds = []\n    neg_embeds = []\n\n    prompt_token_groups, prompt_weight_groups = group_tokens_and_weights(\n        prompt_tokens.copy()\n        , prompt_weights.copy()\n    )\n\n    neg_prompt_token_groups, neg_prompt_weight_groups = group_tokens_and_weights(\n        neg_prompt_tokens.copy()\n        , neg_prompt_weights.copy()\n    )\n\n    prompt_token_groups_2, prompt_weight_groups_2 = group_tokens_and_weights(\n        prompt_tokens_2.copy()\n        , prompt_weights_2.copy()\n    )\n\n    neg_prompt_token_groups_2, neg_prompt_weight_groups_2 = group_tokens_and_weights(\n        neg_prompt_tokens_2.copy()\n        , neg_prompt_weights_2.copy()\n    )\n\n    # get prompt embeddings one by one is not working.\n    for i in range(len(prompt_token_groups)):\n        # get positive prompt embeddings with weights\n        token_tensor = torch.tensor(\n            [prompt_token_groups[i]]\n            , dtype=torch.long, device=pipe.text_encoder.device\n        )\n        weight_tensor = torch.tensor(\n            prompt_weight_groups[i]\n            , device=pipe.text_encoder.device\n        )\n\n        token_tensor_2 = torch.tensor(\n            [prompt_token_groups_2[i]]\n            , device=pipe.text_encoder_2.device\n        )\n\n        weight_tensor_2 = torch.tensor(\n            prompt_weight_groups_2[i]\n            , device=pipe.text_encoder_2.device\n        )\n\n        # use first text encoder\n        prompt_embeds_1 = pipe.text_encoder(\n            token_tensor.to(pipe.text_encoder.device)\n            , output_hidden_states=True\n        )\n        prompt_embeds_1_hidden_states = prompt_embeds_1.hidden_states[-2]\n\n        # use second text encoder\n        prompt_embeds_2 = pipe.text_encoder_2(\n            token_tensor_2.to(pipe.text_encoder_2.device)\n            , output_hidden_states=True\n        )\n        prompt_embeds_2_hidden_states = prompt_embeds_2.hidden_states[-2]\n        pooled_prompt_embeds = prompt_embeds_2[0]\n\n        prompt_embeds_1_hidden_states = prompt_embeds_1_hidden_states.squeeze(0)\n        prompt_embeds_2_hidden_states = prompt_embeds_2_hidden_states.squeeze(0)\n\n        for j in range(len(weight_tensor)):\n            if weight_tensor[j] != 1.0:\n                prompt_embeds_1_hidden_states[j] = (\n                        prompt_embeds_1_hidden_states[-1] + (\n                            prompt_embeds_1_hidden_states[j] - prompt_embeds_1_hidden_states[-1]) * weight_tensor[j]\n                )\n\n            if weight_tensor_2[j] != 1.0:\n                prompt_embeds_2_hidden_states[j] = (\n                        prompt_embeds_2_hidden_states[-1] + (\n                            prompt_embeds_2_hidden_states[j] - prompt_embeds_2_hidden_states[-1]) * weight_tensor_2[j]\n                )\n\n        prompt_embeds_1_hidden_states = prompt_embeds_1_hidden_states.unsqueeze(0)\n        prompt_embeds_2_hidden_states = prompt_embeds_2_hidden_states.unsqueeze(0)\n\n        prompt_embeds_list = [prompt_embeds_1_hidden_states, prompt_embeds_2_hidden_states]\n        token_embedding = torch.cat(prompt_embeds_list, dim=-1)\n\n        embeds.append(token_embedding)\n\n        # get negative prompt embeddings with weights\n        neg_token_tensor = torch.tensor(\n            [neg_prompt_token_groups[i]]\n            , device=pipe.text_encoder.device\n        )\n        neg_token_tensor_2 = torch.tensor(\n            [neg_prompt_token_groups_2[i]]\n            , device=pipe.text_encoder_2.device\n        )\n        neg_weight_tensor = torch.tensor(\n            neg_prompt_weight_groups[i]\n            , device=pipe.text_encoder.device\n        )\n        neg_weight_tensor_2 = torch.tensor(\n            neg_prompt_weight_groups_2[i]\n            , device=pipe.text_encoder_2.device\n        )\n\n        # use first text encoder\n        neg_prompt_embeds_1 = pipe.text_encoder(\n            neg_token_tensor.to(pipe.text_encoder.device)\n            , output_hidden_states=True\n        )\n        neg_prompt_embeds_1_hidden_states = neg_prompt_embeds_1.hidden_states[-2]\n\n        # use second text encoder\n        neg_prompt_embeds_2 = pipe.text_encoder_2(\n            neg_token_tensor_2.to(pipe.text_encoder_2.device)\n            , output_hidden_states=True\n        )\n        neg_prompt_embeds_2_hidden_states = neg_prompt_embeds_2.hidden_states[-2]\n        negative_pooled_prompt_embeds = neg_prompt_embeds_2[0]\n\n        neg_prompt_embeds_1_hidden_states = neg_prompt_embeds_1_hidden_states.squeeze(0)\n        neg_prompt_embeds_2_hidden_states = neg_prompt_embeds_2_hidden_states.squeeze(0)\n\n        for z in range(len(neg_weight_tensor)):\n            if neg_weight_tensor[z] != 1.0:\n                neg_prompt_embeds_1_hidden_states[z] = (\n                        neg_prompt_embeds_1_hidden_states[-1] + (\n                            neg_prompt_embeds_1_hidden_states[z] - neg_prompt_embeds_1_hidden_states[-1]) *\n                        neg_weight_tensor[z]\n                )\n\n            if neg_weight_tensor_2[z] != 1.0:\n                neg_prompt_embeds_2_hidden_states[z] = (\n                        neg_prompt_embeds_2_hidden_states[-1] + (\n                            neg_prompt_embeds_2_hidden_states[z] - neg_prompt_embeds_2_hidden_states[-1]) *\n                        neg_weight_tensor_2[z]\n                )\n\n        neg_prompt_embeds_1_hidden_states = neg_prompt_embeds_1_hidden_states.unsqueeze(0)\n        neg_prompt_embeds_2_hidden_states = neg_prompt_embeds_2_hidden_states.unsqueeze(0)\n\n        neg_prompt_embeds_list = [neg_prompt_embeds_1_hidden_states, neg_prompt_embeds_2_hidden_states]\n        neg_token_embedding = torch.cat(neg_prompt_embeds_list, dim=-1)\n\n        neg_embeds.append(neg_token_embedding)\n\n    prompt_embeds = torch.cat(embeds, dim=1)\n    negative_prompt_embeds = torch.cat(neg_embeds, dim=1)\n\n    return prompt_embeds, negative_prompt_embeds, pooled_prompt_embeds, negative_pooled_prompt_embeds\n\n\ndef get_weighted_text_embeddings_sd3(\n        pipe: StableDiffusion3Pipeline\n        , prompt: str = \"\"\n        , neg_prompt: str = \"\"\n        , pad_last_block=True\n        , use_t5_encoder=True\n):\n    \"\"\"\n    This function can process long prompt with weights, no length limitation\n    for Stable Diffusion 3\n\n    Args:\n        pipe (StableDiffusionPipeline)\n        prompt (str)\n        neg_prompt (str)\n    Returns:\n        sd3_prompt_embeds (torch.Tensor)\n        sd3_neg_prompt_embeds (torch.Tensor)\n        pooled_prompt_embeds (torch.Tensor)\n        negative_pooled_prompt_embeds (torch.Tensor)\n    \"\"\"\n    eos = pipe.tokenizer.eos_token_id\n\n    # tokenizer 1\n    prompt_tokens, prompt_weights = get_prompts_tokens_with_weights(\n        pipe.tokenizer, prompt\n    )\n\n    neg_prompt_tokens, neg_prompt_weights = get_prompts_tokens_with_weights(\n        pipe.tokenizer, neg_prompt\n    )\n\n    # tokenizer 2\n    prompt_tokens_2, prompt_weights_2 = get_prompts_tokens_with_weights(\n        pipe.tokenizer_2, prompt\n    )\n\n    neg_prompt_tokens_2, neg_prompt_weights_2 = get_prompts_tokens_with_weights(\n        pipe.tokenizer_2, neg_prompt\n    )\n\n    # tokenizer 3\n    prompt_tokens_3, prompt_weights_3, _ = get_prompts_tokens_with_weights_t5(\n        pipe.tokenizer_3, prompt\n    )\n\n    neg_prompt_tokens_3, neg_prompt_weights_3, _ = get_prompts_tokens_with_weights_t5(\n        pipe.tokenizer_3, neg_prompt\n    )\n\n    # padding the shorter one\n    prompt_token_len = len(prompt_tokens)\n    neg_prompt_token_len = len(neg_prompt_tokens)\n\n    if prompt_token_len > neg_prompt_token_len:\n        # padding the neg_prompt with eos token\n        neg_prompt_tokens = (\n                neg_prompt_tokens +\n                [eos] * abs(prompt_token_len - neg_prompt_token_len)\n        )\n        neg_prompt_weights = (\n                neg_prompt_weights +\n                [1.0] * abs(prompt_token_len - neg_prompt_token_len)\n        )\n    else:\n        # padding the prompt\n        prompt_tokens = (\n                prompt_tokens\n                + [eos] * abs(prompt_token_len - neg_prompt_token_len)\n        )\n        prompt_weights = (\n                prompt_weights\n                + [1.0] * abs(prompt_token_len - neg_prompt_token_len)\n        )\n\n    # padding the shorter one for token set 2\n    prompt_token_len_2 = len(prompt_tokens_2)\n    neg_prompt_token_len_2 = len(neg_prompt_tokens_2)\n\n    if prompt_token_len_2 > neg_prompt_token_len_2:\n        # padding the neg_prompt with eos token\n        neg_prompt_tokens_2 = (\n                neg_prompt_tokens_2 +\n                [eos] * abs(prompt_token_len_2 - neg_prompt_token_len_2)\n        )\n        neg_prompt_weights_2 = (\n                neg_prompt_weights_2 +\n                [1.0] * abs(prompt_token_len_2 - neg_prompt_token_len_2)\n        )\n    else:\n        # padding the prompt\n        prompt_tokens_2 = (\n                prompt_tokens_2\n                + [eos] * abs(prompt_token_len_2 - neg_prompt_token_len_2)\n        )\n        prompt_weights_2 = (\n                prompt_weights_2\n                + [1.0] * abs(prompt_token_len_2 - neg_prompt_token_len_2)\n        )\n\n    embeds = []\n    neg_embeds = []\n\n    prompt_token_groups, prompt_weight_groups = group_tokens_and_weights(\n        prompt_tokens.copy()\n        , prompt_weights.copy()\n        , pad_last_block=pad_last_block\n    )\n\n    neg_prompt_token_groups, neg_prompt_weight_groups = group_tokens_and_weights(\n        neg_prompt_tokens.copy()\n        , neg_prompt_weights.copy()\n        , pad_last_block=pad_last_block\n    )\n\n    prompt_token_groups_2, _prompt_weight_groups_2 = group_tokens_and_weights(\n        prompt_tokens_2.copy()\n        , prompt_weights_2.copy()\n        , pad_last_block=pad_last_block\n    )\n\n    neg_prompt_token_groups_2, _neg_prompt_weight_groups_2 = group_tokens_and_weights(\n        neg_prompt_tokens_2.copy()\n        , neg_prompt_weights_2.copy()\n        , pad_last_block=pad_last_block\n    )\n\n    # get prompt embeddings one by one is not working.\n    for i in range(len(prompt_token_groups)):\n        # get positive prompt embeddings with weights\n        token_tensor = torch.tensor(\n            [prompt_token_groups[i]]\n            , dtype=torch.long, device=pipe.text_encoder.device\n        )\n        weight_tensor = torch.tensor(\n            prompt_weight_groups[i]\n            , dtype=torch.float16\n            , device=pipe.text_encoder.device\n        )\n\n        token_tensor_2 = torch.tensor(\n            [prompt_token_groups_2[i]]\n            , dtype=torch.long, device=pipe.text_encoder_2.device\n        )\n\n        # use first text encoder\n        prompt_embeds_1 = pipe.text_encoder(\n            token_tensor.to(pipe.text_encoder.device)\n            , output_hidden_states=True\n        )\n        prompt_embeds_1_hidden_states = prompt_embeds_1.hidden_states[-2]\n        pooled_prompt_embeds_1 = prompt_embeds_1[0]\n\n        # use second text encoder\n        prompt_embeds_2 = pipe.text_encoder_2(\n            token_tensor_2.to(pipe.text_encoder_2.device)\n            , output_hidden_states=True\n        )\n        prompt_embeds_2_hidden_states = prompt_embeds_2.hidden_states[-2]\n        pooled_prompt_embeds_2 = prompt_embeds_2[0]\n\n        prompt_embeds_list = [prompt_embeds_1_hidden_states, prompt_embeds_2_hidden_states]\n        token_embedding = torch.concat(prompt_embeds_list, dim=-1).squeeze(0).to(pipe.text_encoder.device)\n\n        for j in range(len(weight_tensor)):\n            if weight_tensor[j] != 1.0:\n                # ow = weight_tensor[j] - 1\n\n                # optional process\n                # To map number of (0,1) to (-1,1)\n                # tanh_weight = (math.exp(ow)/(math.exp(ow) + 1) - 0.5) * 2\n                # weight = 1 + tanh_weight\n\n                # add weight method 1:\n                # token_embedding[j] = token_embedding[j] * weight\n                # token_embedding[j] = (\n                #     token_embedding[-1] + (token_embedding[j] - token_embedding[-1]) * weight\n                # )\n\n                # add weight method 2:\n                # token_embedding[j] = (\n                #     token_embedding[-1] + (token_embedding[j] - token_embedding[-1]) * weight_tensor[j]\n                # )\n\n                # add weight method 3:\n                token_embedding[j] = token_embedding[j] * weight_tensor[j]\n\n        token_embedding = token_embedding.unsqueeze(0)\n        embeds.append(token_embedding)\n\n        # get negative prompt embeddings with weights\n        neg_token_tensor = torch.tensor(\n            [neg_prompt_token_groups[i]]\n            , dtype=torch.long, device=pipe.text_encoder.device\n        )\n        neg_token_tensor_2 = torch.tensor(\n            [neg_prompt_token_groups_2[i]]\n            , dtype=torch.long, device=pipe.text_encoder_2.device\n        )\n        neg_weight_tensor = torch.tensor(\n            neg_prompt_weight_groups[i]\n            , dtype=torch.float16\n            , device=pipe.text_encoder.device\n        )\n\n        # use first text encoder\n        neg_prompt_embeds_1 = pipe.text_encoder(\n            neg_token_tensor.to(pipe.text_encoder.device)\n            , output_hidden_states=True\n        )\n        neg_prompt_embeds_1_hidden_states = neg_prompt_embeds_1.hidden_states[-2]\n        negative_pooled_prompt_embeds_1 = neg_prompt_embeds_1[0]\n\n        # use second text encoder\n        neg_prompt_embeds_2 = pipe.text_encoder_2(\n            neg_token_tensor_2.to(pipe.text_encoder_2.device)\n            , output_hidden_states=True\n        )\n        neg_prompt_embeds_2_hidden_states = neg_prompt_embeds_2.hidden_states[-2]\n        negative_pooled_prompt_embeds_2 = neg_prompt_embeds_2[0]\n\n        neg_prompt_embeds_list = [neg_prompt_embeds_1_hidden_states, neg_prompt_embeds_2_hidden_states]\n        neg_token_embedding = torch.concat(neg_prompt_embeds_list, dim=-1).squeeze(0).to(pipe.text_encoder.device)\n\n        for z in range(len(neg_weight_tensor)):\n            if neg_weight_tensor[z] != 1.0:\n                # ow = neg_weight_tensor[z] - 1\n                # neg_weight = 1 + (math.exp(ow)/(math.exp(ow) + 1) - 0.5) * 2\n\n                # add weight method 1:\n                # neg_token_embedding[z] = neg_token_embedding[z] * neg_weight\n                # neg_token_embedding[z] = (\n                #     neg_token_embedding[-1] + (neg_token_embedding[z] - neg_token_embedding[-1]) * neg_weight\n                # )\n\n                # add weight method 2:\n                # neg_token_embedding[z] = (\n                #     neg_token_embedding[-1] + (neg_token_embedding[z] - neg_token_embedding[-1]) * neg_weight_tensor[z]\n                # )\n\n                # add weight method 3:\n                neg_token_embedding[z] = neg_token_embedding[z] * neg_weight_tensor[z]\n\n        neg_token_embedding = neg_token_embedding.unsqueeze(0)\n        neg_embeds.append(neg_token_embedding)\n\n    prompt_embeds = torch.cat(embeds, dim=1)\n    negative_prompt_embeds = torch.cat(neg_embeds, dim=1)\n\n    pooled_prompt_embeds = torch.cat([pooled_prompt_embeds_1, pooled_prompt_embeds_2], dim=-1)\n    negative_pooled_prompt_embeds = torch.cat([negative_pooled_prompt_embeds_1, negative_pooled_prompt_embeds_2],\n                                              dim=-1)\n\n    if use_t5_encoder and pipe.text_encoder_3:\n        # ----------------- generate positive t5 embeddings --------------------\n        prompt_tokens_3 = torch.tensor([prompt_tokens_3], dtype=torch.long)\n\n        t5_prompt_embeds = pipe.text_encoder_3(prompt_tokens_3.to(pipe.text_encoder_3.device))[0].squeeze(0)\n        t5_prompt_embeds = t5_prompt_embeds.to(device=pipe.text_encoder_3.device)\n\n        # add weight to t5 prompt\n        for z in range(len(prompt_weights_3)):\n            if prompt_weights_3[z] != 1.0:\n                t5_prompt_embeds[z] = t5_prompt_embeds[z] * prompt_weights_3[z]\n        t5_prompt_embeds = t5_prompt_embeds.unsqueeze(0)\n    else:\n        t5_prompt_embeds = torch.zeros(1, 4096, dtype=prompt_embeds.dtype).unsqueeze(0)\n        t5_prompt_embeds = t5_prompt_embeds.to(device=pipe.text_encoder_3.device)\n\n    # merge with the clip embedding 1 and clip embedding 2\n    clip_prompt_embeds = torch.nn.functional.pad(\n        prompt_embeds, (0, t5_prompt_embeds.shape[-1] - prompt_embeds.shape[-1])\n    )\n    sd3_prompt_embeds = torch.cat([clip_prompt_embeds, t5_prompt_embeds], dim=-2)\n\n    if use_t5_encoder and pipe.text_encoder_3:\n        # ---------------------- get neg t5 embeddings -------------------------\n        neg_prompt_tokens_3 = torch.tensor([neg_prompt_tokens_3], dtype=torch.long)\n\n        t5_neg_prompt_embeds = pipe.text_encoder_3(neg_prompt_tokens_3.to(pipe.text_encoder_3.device))[0].squeeze(0)\n        t5_neg_prompt_embeds = t5_neg_prompt_embeds.to(device=pipe.text_encoder_3.device)\n\n        # add weight to neg t5 embeddings\n        for z in range(len(neg_prompt_weights_3)):\n            if neg_prompt_weights_3[z] != 1.0:\n                t5_neg_prompt_embeds[z] = t5_neg_prompt_embeds[z] * neg_prompt_weights_3[z]\n        t5_neg_prompt_embeds = t5_neg_prompt_embeds.unsqueeze(0)\n    else:\n        t5_neg_prompt_embeds = torch.zeros(1, 4096, dtype=prompt_embeds.dtype).unsqueeze(0)\n        t5_neg_prompt_embeds = t5_prompt_embeds.to(device=pipe.text_encoder_3.device)\n\n    clip_neg_prompt_embeds = torch.nn.functional.pad(\n        negative_prompt_embeds, (0, t5_neg_prompt_embeds.shape[-1] - negative_prompt_embeds.shape[-1])\n    )\n    sd3_neg_prompt_embeds = torch.cat([clip_neg_prompt_embeds, t5_neg_prompt_embeds], dim=-2)\n\n    # padding\n    size_diff = sd3_neg_prompt_embeds.size(1) - sd3_prompt_embeds.size(1)\n    # Calculate padding. Format for pad is (padding_left, padding_right, padding_top, padding_bottom, padding_front, padding_back)\n    # Since we are padding along the second dimension (axis=1), we need (0, 0, padding_top, padding_bottom, 0, 0)\n    # Here padding_top will be 0 and padding_bottom will be size_diff\n\n    # Check if padding is needed\n    if size_diff > 0:\n        padding = (0, 0, 0, abs(size_diff), 0, 0)\n        sd3_prompt_embeds = F.pad(sd3_prompt_embeds, padding)\n    elif size_diff < 0:\n        padding = (0, 0, 0, abs(size_diff), 0, 0)\n        sd3_neg_prompt_embeds = F.pad(sd3_neg_prompt_embeds, padding)\n\n    return sd3_prompt_embeds, sd3_neg_prompt_embeds, pooled_prompt_embeds, negative_pooled_prompt_embeds\n\n\ndef get_weighted_text_embeddings_flux1(\n        pipe: FluxPipeline\n        , prompt: str = \"\"\n        , prompt2: str = None\n        , device=None\n):\n    \"\"\"\n    This function can process long prompt with weights for flux1 model\n\n    Args:\n\n    Returns:\n\n    \"\"\"\n    prompt2 = prompt if prompt2 is None else prompt2\n    if device is None:\n        device = pipe.text_encoder.device\n\n    # tokenizer 1 - openai/clip-vit-large-patch14\n    prompt_tokens, prompt_weights = get_prompts_tokens_with_weights(\n        pipe.tokenizer, prompt\n    )\n\n    # tokenizer 2 - google/t5-v1_1-xxl\n    prompt_tokens_2, prompt_weights_2, _ = get_prompts_tokens_with_weights_t5(\n        pipe.tokenizer_2, prompt2\n    )\n\n    prompt_token_groups, _prompt_weight_groups = group_tokens_and_weights(\n        prompt_tokens.copy()\n        , prompt_weights.copy()\n        , pad_last_block=True\n    )\n\n    # # get positive prompt embeddings, flux1 use only text_encoder 1 pooled embeddings\n    # token_tensor = torch.tensor(\n    #     [prompt_token_groups[0]]\n    #     , dtype = torch.long, device = device\n    # )\n    # # use first text encoder\n    # prompt_embeds_1 = pipe.text_encoder(\n    #     token_tensor.to(device)\n    #     , output_hidden_states  = False\n    # )\n    # pooled_prompt_embeds_1  = prompt_embeds_1.pooler_output\n    # prompt_embeds           = pooled_prompt_embeds_1.to(dtype = pipe.text_encoder.dtype, device = device)\n\n    # use avg pooling embeddings\n    pool_embeds_list = []\n    for token_group in prompt_token_groups:\n        token_tensor = torch.tensor(\n            [token_group]\n            , dtype=torch.long\n            , device=device\n        )\n        prompt_embeds_1 = pipe.text_encoder(\n            token_tensor.to(device)\n            , output_hidden_states=False\n        )\n        pooled_prompt_embeds = prompt_embeds_1.pooler_output.squeeze(0)\n        pool_embeds_list.append(pooled_prompt_embeds)\n\n    prompt_embeds = torch.stack(pool_embeds_list, dim=0)\n\n    # get the avg pool\n    prompt_embeds = prompt_embeds.mean(dim=0, keepdim=True)\n    # prompt_embeds = prompt_embeds.unsqueeze(0)\n    prompt_embeds = prompt_embeds.to(dtype=pipe.text_encoder.dtype, device=device)\n\n    # generate positive t5 embeddings\n    prompt_tokens_2 = torch.tensor([prompt_tokens_2], dtype=torch.long)\n\n    t5_prompt_embeds = pipe.text_encoder_2(prompt_tokens_2.to(device))[0].squeeze(0)\n    t5_prompt_embeds = t5_prompt_embeds.to(device=device)\n\n    # add weight to t5 prompt\n    for z in range(len(prompt_weights_2)):\n        if prompt_weights_2[z] != 1.0:\n            t5_prompt_embeds[z] = t5_prompt_embeds[z] * prompt_weights_2[z]\n    t5_prompt_embeds = t5_prompt_embeds.unsqueeze(0)\n\n    t5_prompt_embeds = t5_prompt_embeds.to(dtype=pipe.text_encoder_2.dtype, device=device)\n\n    return t5_prompt_embeds, prompt_embeds\n\n\ndef get_weighted_text_embeddings_chroma(\n    pipe: ChromaPipeline,\n    prompt: str = \"\",\n    neg_prompt: str = \"\",\n    device=None\n):\n    \"\"\"\n    This function can process long prompt with weights for Chroma model\n\n    Args:\n        pipe (ChromaPipeline)\n        prompt (str)\n        neg_prompt (str)\n        device (torch.device, optional): Device to run the embeddings on.\n    Returns:\n        prompt_embeds (torch.Tensor)\n        prompt_attention_mask (torch.Tensor)\n        neg_prompt_embeds (torch.Tensor)\n        neg_prompt_attention_mask (torch.Tensor)\n    \"\"\"\n    if device is None:\n        device = pipe.text_encoder.device\n\n    dtype = pipe.text_encoder.dtype\n\n    prompt_tokens, prompt_weights, prompt_masks = get_prompts_tokens_with_weights_t5(\n        pipe.tokenizer, prompt, add_special_tokens=False\n    )\n\n    neg_prompt_tokens, neg_prompt_weights, neg_prompt_masks = get_prompts_tokens_with_weights_t5(\n        pipe.tokenizer, neg_prompt, add_special_tokens=False\n    )\n\n    prompt_tokens, prompt_weights, prompt_masks = pad_prompt_tokens_to_length_chroma(\n        pipe,\n        prompt_tokens,\n        prompt_weights,\n        prompt_masks\n    )\n\n    prompt_embeds, prompt_masks = get_weighted_prompt_embeds_with_attention_mask_chroma(\n        pipe,\n        prompt_tokens,\n        prompt_weights,\n        prompt_masks,\n        device=device,\n        dtype=dtype)\n\n    neg_prompt_tokens, neg_prompt_weights, neg_prompt_masks = pad_prompt_tokens_to_length_chroma(\n        pipe,\n        neg_prompt_tokens,\n        neg_prompt_weights,\n        neg_prompt_masks\n    )\n\n    neg_prompt_embeds, neg_prompt_masks = get_weighted_prompt_embeds_with_attention_mask_chroma(\n        pipe,\n        neg_prompt_tokens,\n        neg_prompt_weights,\n        neg_prompt_masks,\n        device=device,\n        dtype=dtype)\n    # debug, will be removed later\n\n    return prompt_embeds, prompt_masks, neg_prompt_embeds, neg_prompt_masks\n\n\ndef get_weighted_prompt_embeds_with_attention_mask_chroma(\n    pipe: ChromaPipeline,\n    tokens,\n    weights,\n    masks,\n    device,\n    dtype\n):\n    prompt_tokens = torch.tensor([tokens], dtype=torch.long, device=device)\n    prompt_masks = torch.tensor([masks], dtype=torch.long, device=device)\n    prompt_embeds = pipe.text_encoder(prompt_tokens, output_hidden_states=False, attention_mask=prompt_masks)[0].squeeze(0)\n    for z in range(len(weights)):\n        if weights[z] != 1.0:\n            prompt_embeds[z] = prompt_embeds[z] * weights[z]\n    prompt_embeds = prompt_embeds.unsqueeze(0).to(dtype=dtype, device=device)\n    return prompt_embeds, prompt_masks\n\n\ndef pad_prompt_tokens_to_length_chroma(pipe, input_tokens, input_weights, input_masks, min_length=5, add_eos_token=True):\n    \"\"\"\n    Implementation of Chroma's padding for prompt embeddings.\n    Pads the embeddings to the maximum length found in the batch, while ensuring\n    that the padding tokens are masked correctly while keeping at least one padding and one eos token unmasked.\n\n    https://huggingface.co/lodestones/Chroma#tldr-masking-t5-padding-tokens-enhanced-fidelity-and-increased-stability-during-training\n    \"\"\"\n\n    output_tokens = input_tokens.copy()\n    output_weights = input_weights.copy()\n    output_masks = input_masks.copy()\n\n    pad_token_id = pipe.tokenizer.pad_token_id\n    eos_token_id = pipe.tokenizer.eos_token_id\n\n    pad_length = 1\n\n    for j, token in enumerate(output_tokens):\n        if token == pad_token_id:\n            output_masks[j] = 0\n            pad_length = 0\n\n    current_length = len(output_tokens)\n\n    if current_length < min_length:\n        pad_length = min_length - current_length\n\n    if pad_length > 0:\n        output_tokens += [pad_token_id] * pad_length\n        output_weights += [1.0] * pad_length\n        output_masks += [0] * pad_length\n\n    output_masks[-1] = 1\n\n    if add_eos_token and output_tokens[-1] != eos_token_id:\n        output_tokens += [eos_token_id]\n        output_weights += [1.0]\n        output_masks += [1]\n\n    return output_tokens, output_weights, output_masks\n"
  },
  {
    "path": "modules/ras/__init__.py",
    "content": "# source <https://github.com/Trojaner/RAS_Simplified>\n# original: <https://github.com/microsoft/RAS>\n\nfrom modules import shared, processing\n\n\ndef apply(pipe, p: processing.StableDiffusionProcessing):\n    if shared.sd_model_type != \"sd3\" or not shared.opts.ras_enable:\n        return\n    from .ras_manager import MANAGER\n    from .ras_scheduler import RASFlowMatchEulerDiscreteScheduler\n    from .ras_attention import RASJointAttnProcessor2_0\n    from .ras_forward import ras_forward\n    scheduler = RASFlowMatchEulerDiscreteScheduler.from_config(pipe.scheduler.config)\n    pipe.scheduler = scheduler\n    MANAGER.num_steps = p.steps\n    MANAGER.scheduler_end_step = p.steps\n    MANAGER.width = p.width\n    MANAGER.height = p.height\n    MANAGER.error_reset_steps = [int(1*p.steps/3), int(2*p.steps/3)]\n    shared.log.info(f'RAS: scheduler={pipe.scheduler.__class__.__name__} {str(MANAGER)}')\n    MANAGER.reset_cache()\n    MANAGER.generate_skip_token_list()\n    pipe.transformer.old_forward = pipe.transformer.forward\n    pipe.transformer.forward = ras_forward.__get__(pipe.transformer, pipe.transformer.__class__) # pylint: disable=no-value-for-parameter\n    for block in pipe.transformer.transformer_blocks:\n        block.attn.set_processor(RASJointAttnProcessor2_0())\n\n\ndef unapply(pipe):\n    if hasattr(pipe, 'transformer') and hasattr(pipe.transformer, \"old_forward\"):\n        from diffusers.models.attention_processor import JointAttnProcessor2_0\n        pipe.transformer.forward = pipe.transformer.old_forward\n        del pipe.transformer.old_forward\n        for block in pipe.transformer.transformer_blocks:\n            block.attn.set_processor(JointAttnProcessor2_0())\n"
  },
  {
    "path": "modules/ras/ras_attention.py",
    "content": "# Copyright 2024 The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nfrom typing import Optional\nimport math\nimport torch\nimport torch.nn.functional as F\nfrom diffusers.models.attention_processor import Attention\nfrom . import ras_manager\n\n\nclass RASLuminaAttnProcessor2_0:\n    r\"\"\"\n    Processor for implementing scaled dot-product attention (enabled by default if you're using PyTorch 2.0). This is\n    used in the LuminaNextDiT model. It applies a s normalization layer and rotary embedding on query and key vector.\n    \"\"\"\n\n    def __init__(self):\n        if not hasattr(F, \"scaled_dot_product_attention\"):\n            raise ImportError(\"AttnProcessor2_0 requires PyTorch 2.0, to use it, please upgrade PyTorch to 2.0.\")\n        if ras_manager.MANAGER.sample_ratio < 1.0:\n            self.k_cache = None\n            self.v_cache = None\n\n    def __call__(\n        self,\n        attn: Attention,\n        hidden_states: torch.Tensor,\n        encoder_hidden_states: torch.Tensor,\n        attention_mask: Optional[torch.Tensor] = None,\n        query_rotary_emb: Optional[torch.Tensor] = None,\n        key_rotary_emb: Optional[torch.Tensor] = None,\n        base_sequence_length: Optional[int] = None,\n    ) -> torch.Tensor:\n        from diffusers.models.embeddings import apply_rotary_emb\n\n        is_self_attention = True if hidden_states.shape == encoder_hidden_states.shape else False\n\n        input_ndim = hidden_states.ndim\n\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n\n        batch_size, sequence_length, _ = hidden_states.shape\n\n        # Get Query-Key-Value Pair\n        query = attn.to_q(hidden_states)\n        value = attn.to_v(encoder_hidden_states)\n        key = attn.to_k(encoder_hidden_states)\n\n        query_dim = query.shape[-1]\n        inner_dim = key.shape[-1]\n        head_dim = query_dim // attn.heads\n        dtype = query.dtype\n\n        # Get key-value heads\n        kv_heads = inner_dim // head_dim\n\n        # Apply Query-Key Norm if needed\n        if attn.norm_q is not None:\n            query = attn.norm_q(query)\n        if attn.norm_k is not None:\n            key = attn.norm_k(key)\n\n        query = query.view(batch_size, -1, attn.heads, head_dim)\n        key = key.view(batch_size, -1, kv_heads, head_dim)\n        value = value.view(batch_size, -1, kv_heads, head_dim)\n\n        if ras_manager.MANAGER.sample_ratio < 1.0 and ras_manager.MANAGER.current_step == 0 and is_self_attention:\n            self.k_cache = None\n            self.v_cache = None\n\n        if ras_manager.MANAGER.sample_ratio < 1.0 and ras_manager.MANAGER.current_step > ras_manager.MANAGER.scheduler_end_step and is_self_attention:\n            self.k_cache = None\n            self.v_cache = None\n\n        # Apply RoPE if needed\n        if query_rotary_emb is not None:\n            if ras_manager.MANAGER.sample_ratio < 1.0 and ras_manager.MANAGER.is_RAS_step:\n                query = apply_rotary_emb(query, ras_manager.MANAGER.image_rotary_emb_skip, use_real=False)\n            else:\n                query = apply_rotary_emb(query, query_rotary_emb, use_real=False)\n        if key_rotary_emb is not None:\n            if ras_manager.MANAGER.sample_ratio < 1.0 and ras_manager.MANAGER.is_RAS_step:\n                key = apply_rotary_emb(key, ras_manager.MANAGER.image_rotary_emb_skip, use_real=False)\n            else:\n                key = apply_rotary_emb(key, key_rotary_emb, use_real=False)\n\n        if ras_manager.MANAGER.sample_ratio < 1.0 and (ras_manager.MANAGER.current_step == ras_manager.MANAGER.scheduler_start_step - 1 or ras_manager.MANAGER.current_step in ras_manager.MANAGER.error_reset_steps) and is_self_attention:\n            self.k_cache = key\n            self.v_cache = value\n\n        if ras_manager.MANAGER.sample_ratio < 1.0 and is_self_attention and ras_manager.MANAGER.is_RAS_step:\n            self.k_cache[:, ras_manager.MANAGER.other_patchified_index] = key\n            self.v_cache[:, ras_manager.MANAGER.other_patchified_index] = value\n            key = self.k_cache\n            value = self.v_cache\n\n        query, key = query.to(dtype), key.to(dtype)\n\n        if ras_manager.MANAGER.sample_ratio < 1.0 and is_self_attention and ras_manager.MANAGER.is_RAS_step:\n            if is_self_attention:\n                sequence_length = key.shape[1]\n            else:\n                sequence_length = base_sequence_length\n\n\n        # Apply proportional attention if true\n        if key_rotary_emb is None:\n            softmax_scale = None\n        else:\n            if base_sequence_length is not None:\n                softmax_scale = math.sqrt(math.log(sequence_length, base_sequence_length)) * attn.scale\n            else:\n                softmax_scale = attn.scale\n\n        # perform Grouped-qurey Attention (GQA)\n        n_rep = attn.heads // kv_heads\n        if n_rep >= 1:\n            key = key.unsqueeze(3).repeat(1, 1, 1, n_rep, 1).flatten(2, 3)\n            value = value.unsqueeze(3).repeat(1, 1, 1, n_rep, 1).flatten(2, 3)\n\n        # scaled_dot_product_attention expects attention_mask shape to be\n        # (batch, heads, source_length, target_length)\n        attention_mask = attention_mask.bool().view(batch_size, 1, 1, -1)\n        if ras_manager.MANAGER.sample_ratio < 1.0 and is_self_attention and ras_manager.MANAGER.is_RAS_step:\n            attention_mask = attention_mask.expand(-1, attn.heads, query.shape[1], -1)\n        else:\n            attention_mask = attention_mask.expand(-1, attn.heads, sequence_length, -1)\n\n        query = query.transpose(1, 2)\n        key = key.transpose(1, 2)\n        value = value.transpose(1, 2)\n        hidden_states = F.scaled_dot_product_attention(\n            query, key, value, attn_mask=attention_mask, scale=softmax_scale\n        )\n        hidden_states = hidden_states.transpose(1, 2).to(dtype)\n        return hidden_states\n\n\nclass RASJointAttnProcessor2_0:\n    \"\"\"Attention processor used typically in processing the SD3-like self-attention projections.\"\"\"\n\n    def __init__(self):\n        if not hasattr(F, \"scaled_dot_product_attention\"):\n            raise ImportError(\"AttnProcessor2_0 requires PyTorch 2.0, to use it, please upgrade PyTorch to 2.0.\")\n        if ras_manager.MANAGER.sample_ratio < 1.0:\n            self.k_cache = None\n            self.v_cache = None\n\n    def __call__(\n        self,\n        attn: Attention,\n        hidden_states: torch.FloatTensor,\n        encoder_hidden_states: torch.FloatTensor = None,\n        attention_mask: Optional[torch.FloatTensor] = None,\n        *args,\n        **kwargs,\n    ) -> torch.FloatTensor:\n        residual = hidden_states\n\n        batch_size = hidden_states.shape[0]\n\n        # `sample` projections.\n        query = attn.to_q(hidden_states)\n        key = attn.to_k(hidden_states)\n        value = attn.to_v(hidden_states)\n\n        inner_dim = key.shape[-1]\n        head_dim = inner_dim // attn.heads\n\n        query = query.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        key = key.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        value = value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        if attn.norm_q is not None:\n            query = attn.norm_q(query)\n        if attn.norm_k is not None:\n            key = attn.norm_k(key)\n\n        if ras_manager.MANAGER.sample_ratio < 1.0 and ras_manager.MANAGER.current_step == 0:\n            self.k_cache = None\n            self.v_cache = None\n\n        if ras_manager.MANAGER.sample_ratio < 1.0 and (ras_manager.MANAGER.current_step == ras_manager.MANAGER.scheduler_start_step - 1 or ras_manager.MANAGER.current_step in ras_manager.MANAGER.error_reset_steps):\n            self.k_cache = key\n            self.v_cache = value\n\n        if ras_manager.MANAGER.sample_ratio < 1.0 and ras_manager.MANAGER.is_RAS_step:\n            self.k_cache[:, :, ras_manager.MANAGER.other_patchified_index] = key\n            self.v_cache[:, :, ras_manager.MANAGER.other_patchified_index] = value\n            key = self.k_cache\n            value = self.v_cache\n\n        if ras_manager.MANAGER.sample_ratio < 1.0 and ras_manager.MANAGER.current_step > ras_manager.MANAGER.scheduler_end_step:\n            self.k_cache = None\n            self.v_cache = None\n\n        # `context` projections.\n        if encoder_hidden_states is not None:\n            encoder_hidden_states_query_proj = attn.add_q_proj(encoder_hidden_states)\n            encoder_hidden_states_key_proj = attn.add_k_proj(encoder_hidden_states)\n            encoder_hidden_states_value_proj = attn.add_v_proj(encoder_hidden_states)\n\n            encoder_hidden_states_query_proj = encoder_hidden_states_query_proj.view(\n                batch_size, -1, attn.heads, head_dim\n            ).transpose(1, 2)\n            encoder_hidden_states_key_proj = encoder_hidden_states_key_proj.view(\n                batch_size, -1, attn.heads, head_dim\n            ).transpose(1, 2)\n            encoder_hidden_states_value_proj = encoder_hidden_states_value_proj.view(\n                batch_size, -1, attn.heads, head_dim\n            ).transpose(1, 2)\n\n            if attn.norm_added_q is not None:\n                encoder_hidden_states_query_proj = attn.norm_added_q(encoder_hidden_states_query_proj)\n            if attn.norm_added_k is not None:\n                encoder_hidden_states_key_proj = attn.norm_added_k(encoder_hidden_states_key_proj)\n\n            query = torch.cat([query, encoder_hidden_states_query_proj], dim=2)\n            key = torch.cat([key, encoder_hidden_states_key_proj], dim=2)\n            value = torch.cat([value, encoder_hidden_states_value_proj], dim=2)\n\n        hidden_states = F.scaled_dot_product_attention(query, key, value, dropout_p=0.0, is_causal=False)\n        hidden_states = hidden_states.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n        hidden_states = hidden_states.to(query.dtype)\n\n        if encoder_hidden_states is not None:\n            # Split the attention outputs.\n            hidden_states, encoder_hidden_states = (\n                hidden_states[:, : residual.shape[1]],\n                hidden_states[:, residual.shape[1] :],\n            )\n            if not attn.context_pre_only:\n                encoder_hidden_states = attn.to_add_out(encoder_hidden_states)\n\n        # linear proj\n        hidden_states = attn.to_out[0](hidden_states)\n        # dropout\n        hidden_states = attn.to_out[1](hidden_states)\n\n        if encoder_hidden_states is not None:\n            return hidden_states, encoder_hidden_states\n        else:\n            return hidden_states\n"
  },
  {
    "path": "modules/ras/ras_forward.py",
    "content": "# Copyright 2024 Stability AI, The HuggingFace Team and The InstantX Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nfrom typing import Any, Dict, List, Optional, Union\nimport torch\nfrom diffusers.models.modeling_outputs import Transformer2DModelOutput\nfrom diffusers.utils import USE_PEFT_BACKEND, scale_lora_layers, unscale_lora_layers\nfrom . import ras_manager\n\n\ndef ras_forward(\n        self,\n        hidden_states: torch.FloatTensor,\n        encoder_hidden_states: torch.FloatTensor = None,\n        pooled_projections: torch.FloatTensor = None,\n        timestep: torch.LongTensor = None,\n        block_controlnet_hidden_states: List = None,\n        joint_attention_kwargs: Optional[Dict[str, Any]] = None,\n        return_dict: bool = True,\n        skip_layers: Optional[List[int]] = None,\n    ) -> Union[torch.FloatTensor, Transformer2DModelOutput]:\n    \"\"\"\n    The [`SD3Transformer2DModel`] forward method.\n\n    Args:\n        hidden_states (`torch.FloatTensor` of shape `(batch size, channel, height, width)`):\n            Input `hidden_states`.\n        encoder_hidden_states (`torch.FloatTensor` of shape `(batch size, sequence_len, embed_dims)`):\n            Conditional embeddings (embeddings computed from the input conditions such as prompts) to use.\n        pooled_projections (`torch.FloatTensor` of shape `(batch_size, projection_dim)`): Embeddings projected\n            from the embeddings of input conditions.\n        timestep (`torch.LongTensor`):\n            Used to indicate denoising step.\n        block_controlnet_hidden_states (`list` of `torch.Tensor`):\n            A list of tensors that if specified are added to the residuals of transformer blocks.\n        joint_attention_kwargs (`dict`, *optional*):\n            A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n            `self.processor` in\n            [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n        return_dict (`bool`, *optional*, defaults to `True`):\n            Whether or not to return a [`~models.transformer_2d.Transformer2DModelOutput`] instead of a plain\n            tuple.\n        skip_layers (`list` of `int`, *optional*):\n            A list of layer indices to skip during the forward pass.\n\n    Returns:\n        If `return_dict` is True, an [`~models.transformer_2d.Transformer2DModelOutput`] is returned, otherwise a\n        `tuple` where the first element is the sample tensor.\n    \"\"\"\n    if joint_attention_kwargs is not None:\n        joint_attention_kwargs = joint_attention_kwargs.copy()\n        lora_scale = joint_attention_kwargs.pop(\"scale\", 1.0)\n    else:\n        lora_scale = 1.0\n\n    scale_lora_layers(self, lora_scale)\n\n    height, width = hidden_states.shape[-2:]\n\n    hidden_states = self.pos_embed(hidden_states)  # takes care of adding positional embeddings too.\n    temb = self.time_text_embed(timestep, pooled_projections)\n    encoder_hidden_states = self.context_embedder(encoder_hidden_states)\n    if ras_manager.MANAGER.sample_ratio < 1.0 and ras_manager.MANAGER.is_RAS_step:\n        hidden_states = hidden_states[:, ras_manager.MANAGER.other_patchified_index]\n\n    if joint_attention_kwargs is not None and \"ip_adapter_image_embeds\" in joint_attention_kwargs:\n        ip_adapter_image_embeds = joint_attention_kwargs.pop(\"ip_adapter_image_embeds\")\n        ip_hidden_states, ip_temb = self.image_proj(ip_adapter_image_embeds, timestep)\n\n        joint_attention_kwargs.update(ip_hidden_states=ip_hidden_states, temb=ip_temb)\n\n    for index_block, block in enumerate(self.transformer_blocks):\n        # Skip specified layers\n        is_skip = True if skip_layers is not None and index_block in skip_layers else False\n\n        if torch.is_grad_enabled() and self.gradient_checkpointing and not is_skip:\n            encoder_hidden_states, hidden_states = self._gradient_checkpointing_func(\n                block,\n                hidden_states,\n                encoder_hidden_states,\n                temb,\n                joint_attention_kwargs,\n            )\n        elif not is_skip:\n            encoder_hidden_states, hidden_states = block(\n                hidden_states=hidden_states,\n                encoder_hidden_states=encoder_hidden_states,\n                temb=temb,\n                joint_attention_kwargs=joint_attention_kwargs,\n            )\n\n        # controlnet residual\n        if block_controlnet_hidden_states is not None and block.context_pre_only is False:\n            interval_control = len(self.transformer_blocks) / len(block_controlnet_hidden_states)\n            hidden_states = hidden_states + block_controlnet_hidden_states[int(index_block / interval_control)]\n\n    hidden_states = self.norm_out(hidden_states, temb)\n    hidden_states = self.proj_out(hidden_states)\n\n    # unpatchify\n    patch_size = self.config.patch_size\n    height = height // patch_size\n    width = width // patch_size\n    if ras_manager.MANAGER.sample_ratio < 1.0 and ras_manager.MANAGER.is_RAS_step:\n        final_hidden_states = torch.zeros(\n            (hidden_states.shape[0], height * width, hidden_states.shape[2]),\n            device=hidden_states.device,\n            dtype=hidden_states.dtype,\n        )\n        final_hidden_states[:, ras_manager.MANAGER.other_patchified_index] = hidden_states\n        hidden_states = final_hidden_states\n\n    hidden_states = hidden_states.reshape(\n        shape=(hidden_states.shape[0], height, width, patch_size, patch_size, self.out_channels)\n    )\n    hidden_states = torch.einsum(\"nhwpqc->nchpwq\", hidden_states)\n    output = hidden_states.reshape(\n        shape=(hidden_states.shape[0], self.out_channels, height * patch_size, width * patch_size)\n    )\n\n    if USE_PEFT_BACKEND:\n        # remove `lora_scale` from each PEFT layer\n        unscale_lora_layers(self, lora_scale)\n\n    if not return_dict:\n        return (output,)\n\n    return Transformer2DModelOutput(sample=output)\n"
  },
  {
    "path": "modules/ras/ras_manager.py",
    "content": "class ras_manager:\n    def __init__(self):\n        ## configurable\n        self.metric = \"std\"\n        self.patch_size = 2\n        self.scheduler_start_step = 4\n        self.sample_ratio = 0.5\n        self.starvation_scale = 1.0\n        self.vae_size = 8\n        self.high_ratio = 0.3\n        self.skip_num_step = []\n        self.skip_num_step_length = 0\n\n        # applied by sdnext pipeline in ras/__init__.py\n        self.scheduler_end_step = 0\n        self.error_reset_steps = [0, 0]\n        self.num_steps = 0\n        self.height = 0\n        self.width = 0\n\n        ## dynamic\n        self.current_step = 0\n        self.is_RAS_step = False\n        self.is_next_RAS_step = False\n        self.cached_index = None\n        self.other_index = None\n        self.cached_patchified_index = None\n        self.other_patchified_index = None\n        self.image_rotary_emb_skip = None\n        self.cached_scaled_noise = None\n        self.skip_token_num_list = []\n\n    def __str__(self):\n        return f'steps={self.num_steps} start={self.scheduler_start_step} end={self.scheduler_end_step} patch={self.patch_size} metric={self.metric} reset={self.error_reset_steps} ratio={self.sample_ratio} starvation={self.starvation_scale} vae={self.vae_size} high={self.high_ratio} skip={self.skip_num_step}length={self.skip_num_step_length}'\n\n    def set_parameters(self, args):\n        self.patch_size = args.patch_size\n        self.scheduler_start_step = args.scheduler_start_step\n        self.scheduler_end_step = args.scheduler_end_step\n        self.metric = args.metric\n        self.error_reset_steps = [int(i.strip()) for i in args.error_reset_steps.split(\",\")]\n        self.sample_ratio = args.sample_ratio\n        self.num_steps = args.num_inference_steps\n        self.skip_num_step = args.skip_num_step\n        self.skip_num_step_length = args.skip_num_step_length\n        self.height = args.height\n        self.width = args.width\n        self.high_ratio = args.high_ratio\n        self.generate_skip_token_list()\n\n\n    def generate_skip_token_list(self):\n        avg_skip_token_num = int((1 - self.sample_ratio) * ((self.height // self.patch_size) // self.vae_size) * ((self.width // self.patch_size) // self.vae_size))\n        if self.skip_num_step_length == 0: # static dropping\n            self.skip_token_num_list = [avg_skip_token_num for i in range(self.num_steps)]\n            for i in self.error_reset_steps:\n                self.skip_token_num_list[i] = 0\n            for i in range(self.scheduler_start_step):\n                self.skip_token_num_list[i] = 0\n            return\n        for i in range(0, self.num_steps // self.skip_num_step_length + 1):\n            for j in range(self.skip_num_step_length):\n                if i * self.skip_num_step_length + j >= self.num_steps:\n                    break\n                temp_skip_num = avg_skip_token_num + self.skip_num_step * (i - (((self.num_steps + self.scheduler_start_step) // self.skip_num_step_length) // 2))\n                temp_skip_num = (temp_skip_num // 64) * 64\n                self.skip_token_num_list.append(temp_skip_num)\n        for i in range(self.scheduler_start_step):\n            self.skip_token_num_list[i] = 0\n        for i in self.error_reset_steps:\n            self.skip_token_num_list[i] = 0\n        for i in range(len(self.skip_token_num_list)):\n            assert self.skip_token_num_list[i] >= 0, \"Skip token number should be positive\"\n            assert self.skip_token_num_list[i] <= ((self.height // self.patch_size) // self.vae_size) * ((self.width // self.patch_size) // self.vae_size)\n\n    def reset_cache(self):\n        self.cached_index = None\n        self.other_index = None\n        self.cached_patchified_index = None\n        self.other_patchified_index = None\n        self.image_rotary_emb_skip = None\n        self.cached_scaled_noise = None\n        self.current_step = 0\n        if self.current_step >= self.scheduler_start_step and self.current_step <= self.scheduler_end_step and self.current_step not in self.error_reset_steps:\n            self.is_RAS_step = True\n        else:\n            self.is_RAS_step = False\n        if self.current_step + 1 >= self.scheduler_start_step and self.current_step + 1 <= self.scheduler_end_step and self.current_step + 1 not in self.error_reset_steps:\n            self.is_next_RAS_step = True\n        else:\n            self.is_next_RAS_step = False\n\n    def increase_step(self):\n        self.current_step += 1\n        if self.current_step >= self.scheduler_start_step and self.current_step <= self.scheduler_end_step and self.current_step not in self.error_reset_steps:\n            self.is_RAS_step = True\n        else:\n            self.is_RAS_step = False\n        if self.current_step + 1 >= self.scheduler_start_step and self.current_step + 1 < self.scheduler_end_step and self.current_step + 1 not in self.error_reset_steps:\n            self.is_next_RAS_step = True\n        else:\n            self.is_next_RAS_step = False\n\nMANAGER = ras_manager()\n"
  },
  {
    "path": "modules/ras/ras_scheduler.py",
    "content": "# This file is a modified version of the original file from the HuggingFace/diffusers library.\n\n# Copyright 2024 Stability AI, Katherine Crowson and The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nfrom dataclasses import dataclass\nfrom typing import Optional, Tuple, Union\nimport torch\nfrom diffusers.configuration_utils import register_to_config\nfrom diffusers.utils import BaseOutput, logging\nfrom diffusers.schedulers import FlowMatchEulerDiscreteScheduler\nfrom . import ras_manager\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\n@dataclass\nclass RASFlowMatchEulerDiscreteSchedulerOutput(BaseOutput):\n    \"\"\"\n    Output class for the scheduler's `step` function output.\n\n    Args:\n        prev_sample (`torch.FloatTensor` of shape `(batch_size, num_channels, height, width)` for images):\n            Computed sample `(x_{t-1})` of previous timestep. `prev_sample` should be used as next model input in the\n            denoising loop.\n    \"\"\"\n\n    prev_sample: torch.FloatTensor\n\n\nclass RASFlowMatchEulerDiscreteScheduler(FlowMatchEulerDiscreteScheduler):\n    \"\"\"\n    RAS Euler scheduler.\n\n    This model inherits from ['FlowMatchEulerDiscreteScheduler']. Check the superclass documentation for the generic\n    methods the library implements for all schedulers such as loading and saving.\n\n    Args:\n        num_train_timesteps (`int`, defaults to 1000):\n            The number of diffusion steps to train the model.\n        timestep_spacing (`str`, defaults to `\"linspace\"`):\n            The way the timesteps should be scaled. Refer to Table 2 of the [Common Diffusion Noise Schedules and\n            Sample Steps are Flawed](https://huggingface.co/papers/2305.08891) for more information.\n        shift (`float`, defaults to 1.0):\n            The shift value for the timestep schedule.\n    \"\"\"\n\n    _compatibles = []\n    order = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        shift: float = 1.0,\n        use_dynamic_shifting=False,\n        base_shift: Optional[float] = 0.5,\n        max_shift: Optional[float] = 1.15,\n        base_image_seq_len: Optional[int] = 256,\n        max_image_seq_len: Optional[int] = 4096,\n        invert_sigmas: bool = False,\n    ):\n        super().__init__(num_train_timesteps=num_train_timesteps,\n                         shift=shift,\n                         use_dynamic_shifting=use_dynamic_shifting,\n                         base_shift=base_shift,\n                         max_shift=max_shift,\n                         base_image_seq_len=base_image_seq_len,\n                         max_image_seq_len=max_image_seq_len,\n                        #  invert_sigmas=invert_sigmas\n                         )\n        self.drop_cnt = None\n\n\n    def _init_ras_config(self, latents):\n        self.drop_cnt = torch.zeros((latents.shape[-2] // ras_manager.MANAGER.patch_size * latents.shape[-1] // ras_manager.MANAGER.patch_size), device=latents.device) - len(self.sigmas)\n\n    def extract_latents_index_from_patched_latents_index(self, indices, height):\n        flattened_indices = indices // (height // ras_manager.MANAGER.patch_size) * ras_manager.MANAGER.patch_size * height + indices % (height // ras_manager.MANAGER.patch_size) *ras_manager.MANAGER.patch_size\n        flattened_indices = (flattened_indices[:, None] + torch.tensor([0, height + 1, 1, height], dtype=indices.dtype, device=indices.device)[None, :]).flatten()\n        return flattened_indices\n\n    def ras_selection(self, sample, diff, height, width):\n        diff = diff.squeeze(0).permute(1, 2, 0)\n        # calculate the metric for each patch\n        if ras_manager.MANAGER.metric == \"std\":\n            metric = torch.std(diff, dim=-1).view(height // ras_manager.MANAGER.patch_size, ras_manager.MANAGER.patch_size, width // ras_manager.MANAGER.patch_size, ras_manager.MANAGER.patch_size).transpose(-2, -3).mean(-1).mean(-1).view(-1)\n        elif ras_manager.MANAGER.metric == \"l2norm\":\n            metric = torch.norm(diff, p=2, dim=-1).view(height // ras_manager.MANAGER.patch_size, ras_manager.MANAGER.patch_size, width // ras_manager.MANAGER.patch_size, ras_manager.MANAGER.patch_size).transpose(-2, -3).mean(-1).mean(-1).view(-1)\n        else:\n            raise ValueError(\"Unknown metric\")\n\n        # scale the metric with the drop count to avoid starvation\n        metric *= torch.exp(ras_manager.MANAGER.starvation_scale * self.drop_cnt)\n        current_skip_num = ras_manager.MANAGER.skip_token_num_list[self._step_index + 1]\n        assert ras_manager.MANAGER.high_ratio >= 0 and ras_manager.MANAGER.high_ratio <= 1, \"High ratio should be in the range of [0, 1]\"\n        indices = torch.sort(metric, dim=0, descending=False).indices\n        low_bar = int(current_skip_num * (1 - ras_manager.MANAGER.high_ratio))\n        high_bar = int(current_skip_num * ras_manager.MANAGER.high_ratio)\n        cached_patchified_indices = torch.cat([indices[:low_bar], indices[-high_bar:]])\n        other_patchified_indices = indices[low_bar:-high_bar]\n        self.drop_cnt[cached_patchified_indices] += 1\n        latent_cached_indices = self.extract_latents_index_from_patched_latents_index(cached_patchified_indices, height)\n\n        return latent_cached_indices, other_patchified_indices\n\n\n    def step(\n        self,\n        model_output: torch.FloatTensor,\n        timestep: Union[float, torch.FloatTensor],\n        sample: torch.FloatTensor,\n        s_churn: float = 0.0,\n        s_tmin: float = 0.0,\n        s_tmax: float = float(\"inf\"),\n        s_noise: float = 1.0,\n        generator: Optional[torch.Generator] = None,\n        return_dict: bool = True,\n    ) -> Union[RASFlowMatchEulerDiscreteSchedulerOutput, Tuple]:\n        \"\"\"\n        Predict the sample from the previous timestep by reversing the SDE. This function propagates the diffusion\n        process from the learned model outputs (most often the predicted noise).\n\n        Args:\n            model_output (`torch.FloatTensor`):\n                The direct output from learned diffusion model.\n            timestep (`float`):\n                The current discrete timestep in the diffusion chain.\n            sample (`torch.FloatTensor`):\n                A current instance of a sample created by the diffusion process.\n            s_churn (`float`):\n            s_tmin  (`float`):\n            s_tmax  (`float`):\n            s_noise (`float`, defaults to 1.0):\n                Scaling factor for noise added to the sample.\n            generator (`torch.Generator`, *optional*):\n                A random number generator.\n            return_dict (`bool`):\n                Whether or not to return a [`~schedulers.scheduling_euler_discrete.EulerDiscreteSchedulerOutput`] or\n                tuple.\n\n        Returns:\n            [`~schedulers.scheduling_euler_discrete.EulerDiscreteSchedulerOutput`] or `tuple`:\n                If return_dict is `True`, [`~schedulers.scheduling_euler_discrete.EulerDiscreteSchedulerOutput`] is\n                returned, otherwise a tuple is returned where the first element is the sample tensor.\n        \"\"\"\n        if (\n            isinstance(timestep, int)\n            or isinstance(timestep, torch.IntTensor)\n            or isinstance(timestep, torch.LongTensor)\n        ):\n            raise ValueError(\n                (\n                    \"Passing integer indices (e.g. from `enumerate(timesteps)`) as timesteps to\"\n                    \" `EulerDiscreteScheduler.step()` is not supported. Make sure to pass\"\n                    \" one of the `scheduler.timesteps` as a timestep.\"\n                ),\n            )\n\n        if self.step_index is None:\n            self._init_step_index(timestep)\n\n        if self.drop_cnt is None or self._step_index == 0:\n            self._init_ras_config(sample)\n\n        if self._step_index == 0:\n            ras_manager.MANAGER.reset_cache()\n\n        latent_dim, height, width = sample.shape[-3:]\n\n        assert ras_manager.MANAGER.sample_ratio > 0.0 and ras_manager.MANAGER.sample_ratio <= 1.0\n        if ras_manager.MANAGER.sample_ratio < 1.0 and ras_manager.MANAGER.is_RAS_step:\n            model_output.squeeze(0).view(latent_dim, -1)[:, ras_manager.MANAGER.cached_index] = ras_manager.MANAGER.cached_scaled_noise\n            model_output = model_output.transpose(0, 1).view(latent_dim, height, width).unsqueeze(0)\n\n        # Upcast to avoid precision issues when computing prev_sample\n        sample = sample.to(torch.float32)\n\n        sigma = self.sigmas[self.step_index]\n        sigma_next = self.sigmas[self.step_index + 1]\n\n        diff = (sigma_next - sigma) * model_output\n\n        prev_sample = sample + diff\n        # Cast sample back to model compatible dtype\n        prev_sample = prev_sample.to(model_output.dtype)\n\n        if ras_manager.MANAGER.sample_ratio < 1.0 and ras_manager.MANAGER.is_next_RAS_step:\n            latent_cached_indices, other_patchified_indices = self.ras_selection(sample, diff, height, width)\n            ras_manager.MANAGER.cached_scaled_noise = model_output.squeeze(0).view(latent_dim, -1)[:, latent_cached_indices]\n            ras_manager.MANAGER.cached_index = latent_cached_indices\n            ras_manager.MANAGER.other_patchified_index = other_patchified_indices\n\n        # upon completion increase step index by one\n        self._step_index += 1\n        ras_manager.MANAGER.increase_step()\n        if ras_manager.MANAGER.current_step >= ras_manager.MANAGER.num_steps:\n            ras_manager.MANAGER.reset_cache()\n\n        if not return_dict:\n            return (prev_sample,)\n\n        return RASFlowMatchEulerDiscreteSchedulerOutput(prev_sample=prev_sample)\n"
  },
  {
    "path": "modules/res4lyf/__init__.py",
    "content": "# res4lyf\n\nfrom .abnorsett_scheduler import ABNorsettScheduler\nfrom .bong_tangent_scheduler import BongTangentScheduler\nfrom .common_sigma_scheduler import CommonSigmaScheduler\nfrom .deis_scheduler_alt import RESDEISMultistepScheduler\nfrom .etdrk_scheduler import ETDRKScheduler\nfrom .gauss_legendre_scheduler import GaussLegendreScheduler\nfrom .langevin_dynamics_scheduler import LangevinDynamicsScheduler\nfrom .lawson_scheduler import LawsonScheduler\nfrom .linear_rk_scheduler import LinearRKScheduler\nfrom .lobatto_scheduler import LobattoScheduler\nfrom .pec_scheduler import PECScheduler\nfrom .radau_iia_scheduler import RadauIIAScheduler\nfrom .res_multistep_scheduler import RESMultistepScheduler\nfrom .res_multistep_sde_scheduler import RESMultistepSDEScheduler\nfrom .res_singlestep_scheduler import RESSinglestepScheduler\nfrom .res_singlestep_sde_scheduler import RESSinglestepSDEScheduler\nfrom .res_unified_scheduler import RESUnifiedScheduler\nfrom .riemannian_flow_scheduler import RiemannianFlowScheduler\nfrom .rungekutta_44s_scheduler import RungeKutta44Scheduler\nfrom .rungekutta_57s_scheduler import RungeKutta57Scheduler\nfrom .rungekutta_67s_scheduler import RungeKutta67Scheduler\nfrom .simple_exponential_scheduler import SimpleExponentialScheduler\nfrom .specialized_rk_scheduler import SpecializedRKScheduler\n\nfrom .variants import (\n    ABNorsett2MScheduler,\n    ABNorsett3MScheduler,\n    ABNorsett4MScheduler,\n    SigmaArcsineScheduler,\n    DEIS1MultistepScheduler,\n    DEIS2MScheduler,\n    DEIS2MultistepScheduler,\n    DEIS3MScheduler,\n    DEIS3MultistepScheduler,\n    DEISUnified1SScheduler,\n    DEISUnified2MScheduler,\n    DEISUnified3MScheduler,\n    SigmaEasingScheduler,\n    ETDRK2Scheduler,\n    ETDRK3AScheduler,\n    ETDRK3BScheduler,\n    ETDRK4AltScheduler,\n    ETDRK4Scheduler,\n    FlowEuclideanScheduler,\n    FlowHyperbolicScheduler,\n    Lawson2AScheduler,\n    Lawson2BScheduler,\n    Lawson4Scheduler,\n    LinearRK2Scheduler,\n    LinearRK3Scheduler,\n    LinearRK4Scheduler,\n    LinearRKMidpointScheduler,\n    LinearRKRalsstonScheduler,\n    Lobatto2Scheduler,\n    Lobatto3Scheduler,\n    Lobatto4Scheduler,\n    FlowLorentzianScheduler,\n    PEC2H2SScheduler,\n    PEC2H3SScheduler,\n    RadauIIA2Scheduler,\n    RadauIIA3Scheduler,\n    RES2MScheduler,\n    RES2MSDEScheduler,\n    RES2SScheduler,\n    RES2SSDEScheduler,\n    RES3MScheduler,\n    RES3MSDEScheduler,\n    RES3SScheduler,\n    RES3SSDEScheduler,\n    RES5SScheduler,\n    RES5SSDEScheduler,\n    RES6SScheduler,\n    RES6SSDEScheduler,\n    RESUnified2MScheduler,\n    RESUnified2SScheduler,\n    RESUnified3MScheduler,\n    RESUnified3SScheduler,\n    RESUnified5SScheduler,\n    RESUnified6SScheduler,\n    SigmaSigmoidScheduler,\n    SigmaSineScheduler,\n    SigmaSmoothScheduler,\n    FlowSphericalScheduler,\n    GaussLegendre2SScheduler,\n    GaussLegendre3SScheduler,\n    GaussLegendre4SScheduler,\n)\n\n__all__ = [ # noqa: RUF022\n    # Base\n    \"RESUnifiedScheduler\",\n    \"RESMultistepScheduler\",\n    \"RESMultistepSDEScheduler\",\n    \"RESSinglestepScheduler\",\n    \"RESSinglestepSDEScheduler\",\n    \"RESDEISMultistepScheduler\",\n    \"ETDRKScheduler\",\n    \"LawsonScheduler\",\n    \"ABNorsettScheduler\",\n    \"PECScheduler\",\n    \"BongTangentScheduler\",\n    \"RiemannianFlowScheduler\",\n    \"LangevinDynamicsScheduler\",\n    \"CommonSigmaScheduler\",\n    \"SimpleExponentialScheduler\",\n    \"LinearRKScheduler\",\n    \"LobattoScheduler\",\n    \"RadauIIAScheduler\",\n    \"GaussLegendreScheduler\",\n    \"SpecializedRKScheduler\",\n    # Variants\n    \"RES2MScheduler\",\n    \"RES3MScheduler\",\n    \"DEIS2MScheduler\",\n    \"DEIS3MScheduler\",\n    \"RES2MSDEScheduler\",\n    \"RES3MSDEScheduler\",\n    \"RES2SScheduler\",\n    \"RES3SScheduler\",\n    \"RES5SScheduler\",\n    \"RES6SScheduler\",\n    \"RES2SSDEScheduler\",\n    \"RES3SSDEScheduler\",\n    \"RES5SSDEScheduler\",\n    \"RES6SSDEScheduler\",\n    \"ETDRK2Scheduler\",\n    \"ETDRK3AScheduler\",\n    \"ETDRK3BScheduler\",\n    \"ETDRK4Scheduler\",\n    \"ETDRK4AltScheduler\",\n    \"Lawson2AScheduler\",\n    \"Lawson2BScheduler\",\n    \"Lawson4Scheduler\",\n    \"ABNorsett2MScheduler\",\n    \"ABNorsett3MScheduler\",\n    \"ABNorsett4MScheduler\",\n    \"PEC2H2SScheduler\",\n    \"PEC2H3SScheduler\",\n    \"FlowEuclideanScheduler\",\n    \"FlowHyperbolicScheduler\",\n    \"FlowSphericalScheduler\",\n    \"FlowLorentzianScheduler\",\n    \"SigmaSigmoidScheduler\",\n    \"SigmaSineScheduler\",\n    \"SigmaEasingScheduler\",\n    \"SigmaArcsineScheduler\",\n    \"SigmaSmoothScheduler\",\n    \"DEISUnified1SScheduler\",\n    \"DEISUnified2MScheduler\",\n    \"DEISUnified3MScheduler\",\n    \"RESUnified2MScheduler\",\n    \"RESUnified3MScheduler\",\n    \"RESUnified2SScheduler\",\n    \"RESUnified3SScheduler\",\n    \"RESUnified5SScheduler\",\n    \"RESUnified6SScheduler\",\n    \"DEIS1MultistepScheduler\",\n    \"DEIS2MultistepScheduler\",\n    \"DEIS3MultistepScheduler\",\n    \"LinearRK2Scheduler\",\n    \"LinearRK3Scheduler\",\n    \"LinearRK4Scheduler\",\n    \"LinearRKRalsstonScheduler\",\n    \"LinearRKMidpointScheduler\",\n    \"Lobatto2Scheduler\",\n    \"Lobatto3Scheduler\",\n    \"Lobatto4Scheduler\",\n    \"RadauIIA2Scheduler\",\n    \"RadauIIA3Scheduler\",\n    \"GaussLegendre2SScheduler\",\n    \"GaussLegendre3SScheduler\",\n    \"GaussLegendre4SScheduler\",\n    \"RungeKutta44Scheduler\",\n    \"RungeKutta57Scheduler\",\n    \"RungeKutta67Scheduler\",\n]\n\nBASE = [\n    (\"RES Unified\", RESUnifiedScheduler),\n    (\"RES Multistep\", RESMultistepScheduler),\n    (\"RES Multistep SDE\", RESMultistepSDEScheduler),\n    (\"RES Singlestep\", RESSinglestepScheduler),\n    (\"RES Singlestep SDE\", RESSinglestepSDEScheduler),\n    (\"DEIS Multistep\", RESDEISMultistepScheduler),\n    (\"ETDRK\", ETDRKScheduler),\n    (\"Lawson\", LawsonScheduler),\n    (\"ABNorsett\", ABNorsettScheduler),\n    (\"PEC\", PECScheduler),\n    (\"Common Sigma\", CommonSigmaScheduler),\n    (\"Riemannian Flow\", RiemannianFlowScheduler),\n    (\"Specialized RK\", SpecializedRKScheduler),\n]\n\nSIMPLE = [\n    (\"Bong Tangent\", BongTangentScheduler),\n    (\"Langevin Dynamics\", LangevinDynamicsScheduler),\n    (\"Simple Exponential\", SimpleExponentialScheduler),\n]\n\nVARIANTS = [\n    (\"RES 2M\", RES2MScheduler),\n    (\"RES 3M\", RES3MScheduler),\n    (\"DEIS 2M\", DEIS2MScheduler),\n    (\"DEIS 3M\", DEIS3MScheduler),\n    (\"RES 2M SDE\", RES2MSDEScheduler),\n    (\"RES 3M SDE\", RES3MSDEScheduler),\n    (\"RES 2S\", RES2SScheduler),\n    (\"RES 3S\", RES3SScheduler),\n    (\"RES 5S\", RES5SScheduler),\n    (\"RES 6S\", RES6SScheduler),\n    (\"RES 2S SDE\", RES2SSDEScheduler),\n    (\"RES 3S SDE\", RES3SSDEScheduler),\n    (\"RES 5S SDE\", RES5SSDEScheduler),\n    (\"RES 6S SDE\", RES6SSDEScheduler),\n    (\"ETDRK 2\", ETDRK2Scheduler),\n    (\"ETDRK 3A\", ETDRK3AScheduler),\n    (\"ETDRK 3B\", ETDRK3BScheduler),\n    (\"ETDRK 4\", ETDRK4Scheduler),\n    (\"ETDRK 4 Alt\", ETDRK4AltScheduler),\n    (\"Lawson 2A\", Lawson2AScheduler),\n    (\"Lawson 2B\", Lawson2BScheduler),\n    (\"Lawson 4\", Lawson4Scheduler),\n    (\"ABNorsett 2M\", ABNorsett2MScheduler),\n    (\"ABNorsett 3M\", ABNorsett3MScheduler),\n    (\"ABNorsett 4M\", ABNorsett4MScheduler),\n    (\"PEC 2H2S\", PEC2H2SScheduler),\n    (\"PEC 2H3S\", PEC2H3SScheduler),\n    (\"Euclidean Flow\", FlowEuclideanScheduler),\n    (\"Hyperbolic Flow\", FlowHyperbolicScheduler),\n    (\"Spherical Flow\", FlowSphericalScheduler),\n    (\"Lorentzian Flow\", FlowLorentzianScheduler),\n    (\"Sigmoid Sigma\", SigmaSigmoidScheduler),\n    (\"Sine Sigma\", SigmaSineScheduler),\n    (\"Easing Sigma\", SigmaEasingScheduler),\n    (\"Arcsine Sigma\", SigmaArcsineScheduler),\n    (\"Smoothstep Sigma\", SigmaSmoothScheduler),\n    (\"DEIS Unified 1\", DEISUnified1SScheduler),\n    (\"DEIS Unified 2\", DEISUnified2MScheduler),\n    (\"DEIS Unified 3\", DEISUnified3MScheduler),\n    (\"RES Unified 2M\", RESUnified2MScheduler),\n    (\"RES Unified 3M\", RESUnified3MScheduler),\n    (\"RES Unified 2S\", RESUnified2SScheduler),\n    (\"RES Unified 3S\", RESUnified3SScheduler),\n    (\"RES Unified 5S\", RESUnified5SScheduler),\n    (\"RES Unified 6S\", RESUnified6SScheduler),\n    (\"DEIS Multistep 1\", DEIS1MultistepScheduler),\n    (\"DEIS Multistep 2\", DEIS2MultistepScheduler),\n    (\"DEIS Multistep 3\", DEIS3MultistepScheduler),\n    (\"Linear-RK 2\", LinearRK2Scheduler),\n    (\"Linear-RK 3\", LinearRK3Scheduler),\n    (\"Linear-RK 4\", LinearRK4Scheduler),\n    (\"Linear-RK Ralston\", LinearRKRalsstonScheduler),\n    (\"Linear-RK Midpoint\", LinearRKMidpointScheduler),\n    (\"Lobatto 2\", Lobatto2Scheduler),\n    (\"Lobatto 3\", Lobatto3Scheduler),\n    (\"Lobatto 4\", Lobatto4Scheduler),\n    (\"Radau-IIA 2\", RadauIIA2Scheduler),\n    (\"Radau-IIA 3\", RadauIIA3Scheduler),\n    (\"Gauss-Legendre 2S\", GaussLegendre2SScheduler),\n    (\"Gauss-Legendre 3S\", GaussLegendre3SScheduler),\n    (\"Gauss-Legendre 4S\", GaussLegendre4SScheduler),\n    (\"Runge-Kutta 4/4\", RungeKutta44Scheduler),\n    (\"Runge-Kutta 5/7\", RungeKutta57Scheduler),\n    (\"Runge-Kutta 6/7\", RungeKutta67Scheduler),\n]\n"
  },
  {
    "path": "modules/res4lyf/abnorsett_scheduler.py",
    "content": "# Copyright 2025 The RES4LYF Team (Clybius) and The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nfrom typing import ClassVar, List, Literal, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.schedulers.scheduling_utils import KarrasDiffusionSchedulers, SchedulerMixin, SchedulerOutput\n\nfrom diffusers.utils import logging\n\nfrom .phi_functions import Phi\n\nlogger = logging.get_logger(__name__)\n\n\nclass ABNorsettScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    Adams-Bashforth Norsett (ABNorsett) scheduler.\n    \"\"\"\n\n    _compatibles: ClassVar[List[str]] = [e.name for e in KarrasDiffusionSchedulers]\n    order = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.00085,\n        beta_end: float = 0.012,\n        beta_schedule: str = \"linear\",\n        trained_betas: Optional[Union[np.ndarray, List[float]]] = None,\n        prediction_type: str = \"epsilon\",\n        variant: Literal[\"abnorsett_2m\", \"abnorsett_3m\", \"abnorsett_4m\"] = \"abnorsett_2m\",\n        use_analytic_solution: bool = True,\n        timestep_spacing: str = \"linspace\",\n        steps_offset: int = 0,\n        rescale_betas_zero_snr: bool = False,\n        use_karras_sigmas: bool = False,\n        use_exponential_sigmas: bool = False,\n        use_beta_sigmas: bool = False,\n        use_flow_sigmas: bool = False,\n        shift: float = 1.0,\n        use_dynamic_shifting: bool = False,\n        base_shift: float = 0.5,\n        max_shift: float = 1.15,\n        base_image_seq_len: int = 256,\n        max_image_seq_len: int = 4096,\n    ):\n        from .scheduler_utils import betas_for_alpha_bar, rescale_zero_terminal_snr\n\n        if trained_betas is not None:\n            self.betas = torch.tensor(trained_betas, dtype=torch.float32)\n        elif beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        elif beta_schedule == \"squaredcos_cap_v2\":\n            self.betas = betas_for_alpha_bar(num_train_timesteps)\n        else:\n            raise NotImplementedError(f\"{beta_schedule} does not exist.\")\n\n        if rescale_betas_zero_snr:\n            self.betas = rescale_zero_terminal_snr(self.betas)\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n\n        # Buffer for multistep\n        self.model_outputs = []\n        self.x0_outputs = []\n        self.prev_sigmas = []\n        self._step_index = None\n        self._begin_index = None\n        self.init_noise_sigma = 1.0\n\n    @property\n    def step_index(self) -> Optional[int]:\n        return self._step_index\n\n    @property\n    def begin_index(self) -> Optional[int]:\n        return self._begin_index\n\n    def set_begin_index(self, begin_index: int = 0) -> None:\n        self._begin_index = begin_index\n\n    def set_timesteps(self, num_inference_steps: int, device: Union[str, torch.device] = None, mu: Optional[float] = None, dtype: torch.dtype = torch.float32):\n        from .scheduler_utils import (\n            apply_shift,\n            get_dynamic_shift,\n            get_sigmas_beta,\n            get_sigmas_exponential,\n            get_sigmas_flow,\n            get_sigmas_karras,\n        )\n\n        self.num_inference_steps = num_inference_steps\n\n        if self.config.timestep_spacing == \"linspace\":\n            timesteps = np.linspace(0, self.config.num_train_timesteps - 1, num_inference_steps, dtype=float)[::-1].copy()\n        elif self.config.timestep_spacing == \"leading\":\n            step_ratio = self.config.num_train_timesteps // self.num_inference_steps\n            timesteps = (np.arange(0, num_inference_steps) * step_ratio).round()[::-1].copy()\n            timesteps += self.config.steps_offset\n        elif self.config.timestep_spacing == \"trailing\":\n            step_ratio = self.config.num_train_timesteps / self.num_inference_steps\n            timesteps = (np.arange(self.config.num_train_timesteps, 0, -step_ratio)).round().copy()\n            timesteps -= 1\n        else:\n            raise ValueError(f\"timestep_spacing {self.config.timestep_spacing} is not supported.\")\n\n        sigmas = np.array(((1 - self.alphas_cumprod) / self.alphas_cumprod) ** 0.5)\n        sigmas = np.interp(timesteps, np.arange(0, len(sigmas)), sigmas)\n\n        if self.config.use_karras_sigmas:\n            sigmas = get_sigmas_karras(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_exponential_sigmas:\n            sigmas = get_sigmas_exponential(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_beta_sigmas:\n            sigmas = get_sigmas_beta(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_flow_sigmas:\n            s_min = getattr(self.config, \"sigma_min\", None)\n            s_max = getattr(self.config, \"sigma_max\", None)\n            if s_min is None:\n                s_min = 0.001\n            if s_max is None:\n                s_max = 1.0\n            sigmas = np.linspace(s_max, s_min, num_inference_steps)\n\n        if self.config.shift != 1.0 or self.config.use_dynamic_shifting:\n            shift = self.config.shift\n            if self.config.use_dynamic_shifting and mu is not None:\n                shift = get_dynamic_shift(\n                    mu,\n                    self.config.base_shift,\n                    self.config.max_shift,\n                    self.config.base_image_seq_len,\n                    self.config.max_image_seq_len,\n                )\n            sigmas = apply_shift(torch.from_numpy(sigmas), shift).numpy()\n\n        # Map shifted sigmas back to timesteps (Linear mapping for Flow)\n        # t = sigma * 1000. Use standard linear scaling.\n        # This ensures the model receives the correct time embedding for the shifted noise level.\n        # We assume Flow sigmas are in [1.0, 0.0] range (before shift) and model expects [1000, 0].\n        timesteps = sigmas * self.config.num_train_timesteps\n\n        self.sigmas = torch.from_numpy(np.concatenate([sigmas, [0.0]])).to(device=device, dtype=dtype)\n        self.timesteps = torch.from_numpy(timesteps).to(device=device, dtype=dtype)\n        self.init_noise_sigma = self.sigmas.max().item() if self.sigmas.numel() > 0 else 1.0\n\n        self._step_index = None\n        self._begin_index = None\n        self.model_outputs = []\n        self.x0_outputs = []\n        self.prev_sigmas = []\n\n    def index_for_timestep(self, timestep, schedule_timesteps=None):\n        from .scheduler_utils import index_for_timestep\n        if schedule_timesteps is None:\n            schedule_timesteps = self.timesteps\n        return index_for_timestep(timestep, schedule_timesteps)\n\n    def add_noise(\n        self,\n        original_samples: torch.Tensor,\n        noise: torch.Tensor,\n        timesteps: torch.Tensor,\n    ) -> torch.Tensor:\n        from .scheduler_utils import add_noise_to_sample\n        return add_noise_to_sample(original_samples, noise, self.sigmas, timesteps, self.timesteps)\n\n    def scale_model_input(self, sample: torch.Tensor, timestep: Union[float, torch.Tensor]) -> torch.Tensor:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n        if self.config.prediction_type == \"flow_prediction\":\n            return sample\n        sigma = self.sigmas[self._step_index]\n        sample = sample / ((sigma**2 + 1) ** 0.5)\n        return sample\n\n    def step(\n        self,\n        model_output: torch.Tensor,\n        timestep: Union[float, torch.Tensor],\n        sample: torch.Tensor,\n        return_dict: bool = True,\n    ) -> Union[SchedulerOutput, Tuple]:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n\n        step = self._step_index\n        sigma = self.sigmas[step]\n        sigma_next = self.sigmas[step + 1]\n\n        h = -torch.log(sigma_next / sigma) if sigma > 0 and sigma_next > 0 else torch.zeros_like(sigma)\n\n        # RECONSTRUCT X0\n        if self.config.prediction_type == \"epsilon\":\n            x0 = sample - sigma * model_output\n        elif self.config.prediction_type == \"sample\":\n            x0 = model_output\n        elif self.config.prediction_type == \"v_prediction\":\n            alpha_t = 1.0 / (sigma**2 + 1) ** 0.5\n            sigma_t = sigma * alpha_t\n            x0 = alpha_t * sample - sigma_t * model_output\n        elif self.config.prediction_type == \"flow_prediction\":\n            x0 = sample - sigma * model_output\n        else:\n            x0 = model_output\n\n        self.model_outputs.append(model_output)\n        self.x0_outputs.append(x0)\n        self.prev_sigmas.append(sigma)\n\n        variant = self.config.variant\n        order = int(variant[-2])\n        curr_order = min(len(self.prev_sigmas), order)\n\n        phi = Phi(h, [0], getattr(self.config, \"use_analytic_solution\", True))\n\n        if sigma_next == 0:\n            x_next = x0\n        else:\n            # Multi-step coefficients b for ABNorsett family\n            if curr_order == 1:\n                b = [[phi(1)]]\n            elif curr_order == 2:\n                b2 = -phi(2)\n                b1 = phi(1) - b2\n                b = [[b1, b2]]\n            elif curr_order == 3:\n                b2 = -2 * phi(2) - 2 * phi(3)\n                b3 = 0.5 * phi(2) + phi(3)\n                b1 = phi(1) - (b2 + b3)\n                b = [[b1, b2, b3]]\n            elif curr_order == 4:\n                b2 = -3 * phi(2) - 5 * phi(3) - 3 * phi(4)\n                b3 = 1.5 * phi(2) + 4 * phi(3) + 3 * phi(4)\n                b4 = -1 / 3 * phi(2) - phi(3) - phi(4)\n                b1 = phi(1) - (b2 + b3 + b4)\n                b = [[b1, b2, b3, b4]]\n            else:\n                b = [[phi(1)]]\n\n            # Apply coefficients to x0 buffer\n            res = torch.zeros_like(sample)\n            for i, b_val in enumerate(b[0]):\n                idx = len(self.x0_outputs) - 1 - i\n                if idx >= 0:\n                    res += b_val * self.x0_outputs[idx]\n\n            # Exponential Integrator Update\n            if self.config.prediction_type == \"flow_prediction\":\n                # Variable Step Adams-Bashforth for Flow Matching\n                # x_{n+1} = x_n + \\int_{t_n}^{t_{n+1}} v(t) dt\n                sigma_curr = sigma\n                dt = sigma_next - sigma_curr\n\n                # Current derivative v_n is self.model_outputs[-1]\n                v_n = self.model_outputs[-1]\n\n                if curr_order == 1:\n                    # Euler: x_{n+1} = x_n + dt * v_n\n                    x_next = sample + dt * v_n\n                elif curr_order == 2:\n                    # AB2 Variable Step\n                    # x_{n+1} = x_n + dt * [ (1 + r/2) * v_n - (r/2) * v_{n-1} ]\n                    # where r = dt_cur / dt_prev\n\n                    v_nm1 = self.model_outputs[-2]\n                    sigma_prev = self.prev_sigmas[-2]\n                    dt_prev = sigma_curr - sigma_prev\n\n                    if abs(dt_prev) < 1e-8:\n                         # Fallback to Euler if division by zero risk\n                         x_next = sample + dt * v_n\n                    else:\n                        r = dt / dt_prev\n                        # Standard variable step AB2 coefficients\n                        c0 = 1 + 0.5 * r\n                        c1 = -0.5 * r\n                        x_next = sample + dt * (c0 * v_n + c1 * v_nm1)\n\n                elif curr_order >= 3:\n                     # For now, fallback to AB2 (variable) for higher orders to ensure stability\n                     # given the complexity of variable-step AB3/4 formulas inline.\n                     # The user specifically requested abnorsett_2m.\n                     v_nm1 = self.model_outputs[-2]\n                     sigma_prev = self.prev_sigmas[-2]\n                     dt_prev = sigma_curr - sigma_prev\n\n                     if abs(dt_prev) < 1e-8:\n                         x_next = sample + dt * v_n\n                     else:\n                        r = dt / dt_prev\n                        c0 = 1 + 0.5 * r\n                        c1 = -0.5 * r\n                        x_next = sample + dt * (c0 * v_n + c1 * v_nm1)\n                else:\n                     x_next = sample + dt * v_n\n\n            else:\n                x_next = torch.exp(-h) * sample + h * res\n\n        self._step_index += 1\n\n        if len(self.x0_outputs) > order:\n            self.x0_outputs.pop(0)\n            self.model_outputs.pop(0)\n            self.prev_sigmas.pop(0)\n\n        if not return_dict:\n            return (x_next,)\n\n        return SchedulerOutput(prev_sample=x_next)\n\n    def _init_step_index(self, timestep):\n        if self.begin_index is None:\n            if isinstance(timestep, torch.Tensor):\n                timestep = timestep.to(self.timesteps.device)\n            self._step_index = self.index_for_timestep(timestep)\n        else:\n            self._step_index = self._begin_index\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/res4lyf/bong_tangent_scheduler.py",
    "content": "# Copyright 2025 The RES4LYF Team and The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nfrom typing import ClassVar, List, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.schedulers.scheduling_utils import SchedulerMixin, SchedulerOutput\n\nfrom diffusers.utils import logging\n\nlogger = logging.get_logger(__name__)\n\n\nclass BongTangentScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    BongTangent scheduler using Exponential Integrator step.\n    \"\"\"\n\n    _compatibles: ClassVar[List[str]] = []\n    order = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        start: float = 1.0,\n        middle: float = 0.5,\n        end: float = 0.0,\n        pivot_1: float = 0.6,\n        pivot_2: float = 0.6,\n        slope_1: float = 0.2,\n        slope_2: float = 0.2,\n        pad: bool = False,\n        prediction_type: str = \"epsilon\",\n        timestep_spacing: str = \"linspace\",\n        rescale_betas_zero_snr: bool = False,\n        use_karras_sigmas: bool = False,\n        use_exponential_sigmas: bool = False,\n        use_beta_sigmas: bool = False,\n        use_flow_sigmas: bool = False,\n        shift: float = 1.0,\n        use_dynamic_shifting: bool = False,\n        base_shift: float = 0.5,\n        max_shift: float = 1.15,\n        base_image_seq_len: int = 256,\n        max_image_seq_len: int = 4096,\n        beta_start: float = 0.00085,\n        beta_end: float = 0.012,\n        beta_schedule: str = \"linear\",\n    ):\n        from .scheduler_utils import betas_for_alpha_bar, rescale_zero_terminal_snr\n\n        if beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        elif beta_schedule == \"squaredcos_cap_v2\":\n            self.betas = betas_for_alpha_bar(num_train_timesteps)\n        else:\n            raise NotImplementedError(f\"{beta_schedule} is not implemented\")\n\n        if rescale_betas_zero_snr:\n            self.betas = rescale_zero_terminal_snr(self.betas)\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n\n        self.sigmas = torch.Tensor([])\n        self.timesteps = torch.Tensor([])\n        self.num_inference_steps = None\n        self._step_index = None\n        self._begin_index = None\n        self.init_noise_sigma = 1.0\n\n    @property\n    def step_index(self) -> Optional[int]:\n        return self._step_index\n\n    @property\n    def begin_index(self) -> Optional[int]:\n        return self._begin_index\n\n    def set_begin_index(self, begin_index: int = 0) -> None:\n        self._begin_index = begin_index\n\n    def scale_model_input(self, sample: torch.Tensor, timestep: Union[float, torch.Tensor]) -> torch.Tensor:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n        if self.config.prediction_type == \"flow_prediction\":\n            return sample\n        sigma = self.sigmas[self._step_index]\n        sample = sample / ((sigma**2 + 1) ** 0.5)\n        return sample\n\n    def set_timesteps(self, num_inference_steps: int, device: Union[str, torch.device] = None, mu: Optional[float] = None, dtype: torch.dtype = torch.float32):\n        from .scheduler_utils import (\n            apply_shift,\n            get_dynamic_shift,\n            get_sigmas_beta,\n            get_sigmas_exponential,\n            get_sigmas_flow,\n            get_sigmas_karras,\n        )\n\n        self.num_inference_steps = num_inference_steps\n        timestep_spacing = getattr(self.config, \"timestep_spacing\", \"linspace\")\n        steps_offset = getattr(self.config, \"steps_offset\", 0)\n\n        if timestep_spacing == \"linspace\":\n            timesteps = np.linspace(0, self.config.num_train_timesteps - 1, num_inference_steps, dtype=float)[::-1].copy()\n        elif timestep_spacing == \"leading\":\n            step_ratio = self.config.num_train_timesteps // self.num_inference_steps\n            timesteps = (np.arange(0, num_inference_steps) * step_ratio).round()[::-1].copy()\n            timesteps += steps_offset\n        elif timestep_spacing == \"trailing\":\n            step_ratio = self.config.num_train_timesteps / self.num_inference_steps\n            timesteps = (np.arange(self.config.num_train_timesteps, 0, -step_ratio)).round().copy()\n            timesteps -= 1\n        else:\n            raise ValueError(f\"timestep_spacing {timestep_spacing} is not supported.\")\n\n        # Derived sigma range from alphas_cumprod\n        base_sigmas = np.array(((1 - self.alphas_cumprod) / self.alphas_cumprod) ** 0.5)\n        # Note: alphas_cumprod[0] is ~0.999 (small sigma), alphas_cumprod[-1] is ~0.0001 (large sigma)\n        sigma_max = base_sigmas[-1]\n        sigma_min = base_sigmas[0]\n        sigma_mid = (sigma_max + sigma_min) / 2 # Default midpoint for tangent nodes\n\n        steps = num_inference_steps\n        midpoint = int(steps * getattr(self.config, \"midpoint\", 0.5))\n        p1 = int(steps * getattr(self.config, \"pivot_1\", 0.6))\n        p2 = int(steps * getattr(self.config, \"pivot_2\", 0.6))\n\n        s1 = getattr(self.config, \"slope_1\", 0.2) / (steps / 40)\n        s2 = getattr(self.config, \"slope_2\", 0.2) / (steps / 40)\n\n        stage_1_len = midpoint\n        stage_2_len = steps - midpoint + 1\n\n        # Use model's sigma range for start/middle/end\n        start_cfg = getattr(self.config, \"start\", 1.0)\n        start_val = sigma_max * start_cfg if start_cfg > 1.0 else sigma_max\n        end_val = sigma_min\n        mid_val = sigma_mid\n\n        tan_sigmas_1 = self._get_bong_tangent_sigmas(stage_1_len, s1, p1, start_val, mid_val, dtype=dtype)\n        tan_sigmas_2 = self._get_bong_tangent_sigmas(stage_2_len, s2, p2 - stage_1_len, mid_val, end_val, dtype=dtype)\n\n        tan_sigmas_1 = tan_sigmas_1[:-1]\n        sigmas_list = tan_sigmas_1 + tan_sigmas_2\n        if getattr(self.config, \"pad\", False):\n            sigmas_list.append(0.0)\n\n        sigmas = np.array(sigmas_list)\n\n        if getattr(self.config, \"use_karras_sigmas\", False):\n            sigmas = get_sigmas_karras(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif getattr(self.config, \"use_exponential_sigmas\", False):\n            sigmas = get_sigmas_exponential(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif getattr(self.config, \"use_beta_sigmas\", False):\n            sigmas = get_sigmas_beta(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif getattr(self.config, \"use_flow_sigmas\", False):\n            sigmas = get_sigmas_flow(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n\n        shift = getattr(self.config, \"shift\", 1.0)\n        use_dynamic_shifting = getattr(self.config, \"use_dynamic_shifting\", False)\n        if shift != 1.0 or use_dynamic_shifting:\n            if use_dynamic_shifting and mu is not None:\n                shift = get_dynamic_shift(\n                    mu,\n                    getattr(self.config, \"base_shift\", 0.5),\n                    getattr(self.config, \"max_shift\", 1.5),\n                    getattr(self.config, \"base_image_seq_len\", 256),\n                    getattr(self.config, \"max_image_seq_len\", 4096),\n                )\n            sigmas = apply_shift(torch.from_numpy(sigmas), shift).numpy()\n\n        self.sigmas = torch.from_numpy(np.concatenate([sigmas, [0.0]])).to(device=device, dtype=dtype)\n        self.timesteps = torch.from_numpy(timesteps).to(device=device, dtype=dtype)\n        self.init_noise_sigma = self.sigmas.max().item() if self.sigmas.numel() > 0 else 1.0\n\n        self._step_index = None\n        self._begin_index = None\n\n    def index_for_timestep(self, timestep, schedule_timesteps=None):\n        from .scheduler_utils import index_for_timestep\n        if schedule_timesteps is None:\n            schedule_timesteps = self.timesteps\n        return index_for_timestep(timestep, schedule_timesteps)\n\n    def add_noise(\n        self,\n        original_samples: torch.Tensor,\n        noise: torch.Tensor,\n        timesteps: torch.Tensor,\n    ) -> torch.Tensor:\n        from .scheduler_utils import add_noise_to_sample\n        return add_noise_to_sample(original_samples, noise, self.sigmas, timesteps, self.timesteps)\n\n    def _get_bong_tangent_sigmas(self, steps: int, slope: float, pivot: int, start: float, end: float, dtype: torch.dtype = torch.float32) -> List[float]:\n        x = torch.arange(steps, dtype=dtype)\n\n        def bong_fn(val):\n            return ((2 / torch.pi) * torch.atan(-slope * (val - pivot)) + 1) / 2\n\n        smax = bong_fn(torch.tensor(0.0))\n        smin = bong_fn(torch.tensor(steps - 1.0))\n\n        srange = smax - smin\n        sscale = start - end\n\n        sigmas = ((bong_fn(x) - smin) * (1 / srange) * sscale + end)\n        return sigmas.tolist()\n\n    def step(\n        self,\n        model_output: torch.Tensor,\n        timestep: Union[float, torch.Tensor],\n        sample: torch.Tensor,\n        return_dict: bool = True,\n    ) -> Union[SchedulerOutput, Tuple]:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n\n        sigma = self.sigmas[self._step_index]\n        sigma_next = self.sigmas[self._step_index + 1]\n\n        # RECONSTRUCT X0\n        if self.config.prediction_type == \"epsilon\":\n            x0 = sample - sigma * model_output\n        elif self.config.prediction_type == \"v_prediction\":\n            alpha_t = 1.0 / (sigma**2 + 1)**0.5\n            sigma_t = sigma * alpha_t\n            x0 = alpha_t * sample - sigma_t * model_output\n        elif self.config.prediction_type == \"sample\":\n            x0 = model_output\n        elif self.config.prediction_type == \"flow_prediction\":\n            x0 = sample - sigma * model_output\n        else:\n            x0 = model_output\n\n        # Exponential Integrator Update\n        if sigma_next == 0:\n            x_next = x0\n        else:\n            h = -torch.log(sigma_next / sigma) if sigma > 0 and sigma_next > 0 else torch.zeros_like(sigma)\n            x_next = torch.exp(-h) * sample + (1 - torch.exp(-h)) * x0\n\n        self._step_index += 1\n\n        if not return_dict:\n            return (x_next,)\n\n        return SchedulerOutput(prev_sample=x_next)\n\n    def _init_step_index(self, timestep):\n        if self.begin_index is None:\n            if isinstance(timestep, torch.Tensor):\n                timestep = timestep.to(self.timesteps.device)\n            self._step_index = self.index_for_timestep(timestep)\n        else:\n            self._step_index = self._begin_index\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/res4lyf/common_sigma_scheduler.py",
    "content": "# Copyright 2025 The RES4LYF Team (Clybius) and The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport math\nfrom typing import ClassVar, List, Literal, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.schedulers.scheduling_utils import KarrasDiffusionSchedulers, SchedulerMixin, SchedulerOutput\n\nfrom diffusers.utils import logging\n\nlogger = logging.get_logger(__name__)\n\n\nclass CommonSigmaScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    Common Sigma scheduler using Exponential Integrator step.\n    \"\"\"\n\n    _compatibles: ClassVar[List[str]] = [e.name for e in KarrasDiffusionSchedulers]\n    order: ClassVar[int] = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.00085,\n        beta_end: float = 0.012,\n        beta_schedule: str = \"linear\",\n        profile: Literal[\"sigmoid\", \"sine\", \"easing\", \"arcsine\", \"smoothstep\"] = \"sigmoid\",\n        variant: str = \"logistic\",\n        strength: float = 1.0,\n        gain: float = 1.0,\n        offset: float = 0.0,\n        prediction_type: str = \"epsilon\",\n        timestep_spacing: str = \"linspace\",\n        rescale_betas_zero_snr: bool = False,\n        use_karras_sigmas: bool = False,\n        use_exponential_sigmas: bool = False,\n        use_beta_sigmas: bool = False,\n        use_flow_sigmas: bool = False,\n        shift: float = 1.0,\n        use_dynamic_shifting: bool = False,\n        base_shift: float = 0.5,\n        max_shift: float = 1.15,\n        base_image_seq_len: int = 256,\n        max_image_seq_len: int = 4096,\n    ):\n        from .scheduler_utils import betas_for_alpha_bar, rescale_zero_terminal_snr\n\n        if beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        elif beta_schedule == \"squaredcos_cap_v2\":\n            self.betas = betas_for_alpha_bar(num_train_timesteps)\n        else:\n            raise NotImplementedError(f\"{beta_schedule} does not exist.\")\n\n        if rescale_betas_zero_snr:\n            self.betas = rescale_zero_terminal_snr(self.betas)\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n\n        # Standard deviation of the initial noise distribution\n        self.init_noise_sigma = 1.0\n\n        # Setable values\n        self.num_inference_steps = None\n        self.timesteps = torch.from_numpy(np.arange(0, num_train_timesteps)[::-1].copy())\n        self.sigmas = torch.Tensor([])\n\n        self._step_index = None\n        self._begin_index = None\n\n    @property\n    def step_index(self) -> Optional[int]:\n        return self._step_index\n\n    @property\n    def begin_index(self) -> Optional[int]:\n        return self._begin_index\n\n    def set_begin_index(self, begin_index: int = 0) -> None:\n        self._begin_index = begin_index\n\n    def set_timesteps(self, num_inference_steps: int, device: Union[str, torch.device] = None, mu: Optional[float] = None, dtype: torch.dtype = torch.float32):\n        from .scheduler_utils import (\n            apply_shift,\n            get_dynamic_shift,\n            get_sigmas_beta,\n            get_sigmas_exponential,\n            get_sigmas_flow,\n            get_sigmas_karras,\n        )\n\n        self.num_inference_steps = num_inference_steps\n\n        if self.config.timestep_spacing == \"linspace\":\n            timesteps = np.linspace(0, self.config.num_train_timesteps - 1, num_inference_steps, dtype=float)[::-1].copy()\n        elif self.config.timestep_spacing == \"leading\":\n            step_ratio = self.config.num_train_timesteps // self.num_inference_steps\n            timesteps = (np.arange(0, num_inference_steps) * step_ratio).round()[::-1].copy()\n            timesteps += self.config.steps_offset\n        elif self.config.timestep_spacing == \"trailing\":\n            step_ratio = self.config.num_train_timesteps / self.num_inference_steps\n            timesteps = (np.arange(self.config.num_train_timesteps, 0, -step_ratio)).round().copy()\n            timesteps -= 1\n        else:\n            raise ValueError(f\"timestep_spacing {self.config.timestep_spacing} is not supported.\")\n\n        # Derived sigma range from alphas_cumprod\n        base_sigmas = np.array(((1 - self.alphas_cumprod) / self.alphas_cumprod) ** 0.5)\n        sigma_max = base_sigmas[-1]\n        sigma_min = base_sigmas[0]\n\n        t = torch.linspace(0, 1, num_inference_steps)\n        profile = self.config.profile\n        variant = self.config.variant\n        gain = self.config.gain\n        offset = self.config.offset\n\n        if profile == \"sigmoid\":\n            x = gain * (t * 10 - 5 + offset)\n            if variant == \"logistic\":\n                result = 1.0 / (1.0 + torch.exp(-x))\n            elif variant == \"tanh\":\n                result = (torch.tanh(x) + 1) / 2\n            else:\n                result = torch.sigmoid(x)\n        elif profile == \"sine\":\n            result = torch.sin(t * math.pi / 2)\n        elif profile == \"easing\":\n            result = t * t * (3 - 2 * t)\n        elif profile == \"arcsine\":\n            result = torch.arcsin(t) / (math.pi / 2)\n        else:\n            result = t\n\n        # Map profile to sigma range\n        sigmas = (sigma_max * (1 - result) + sigma_min * result).cpu().numpy()\n\n        if self.config.use_karras_sigmas:\n            sigmas = get_sigmas_karras(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_exponential_sigmas:\n            sigmas = get_sigmas_exponential(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_beta_sigmas:\n            sigmas = get_sigmas_beta(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_flow_sigmas:\n            sigmas = get_sigmas_flow(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n\n        if self.config.shift != 1.0 or self.config.use_dynamic_shifting:\n            shift = self.config.shift\n            if self.config.use_dynamic_shifting and mu is not None:\n                shift = get_dynamic_shift(\n                    mu,\n                    self.config.base_shift,\n                    self.config.max_shift,\n                    self.config.base_image_seq_len,\n                    self.config.max_image_seq_len,\n                )\n            sigmas = apply_shift(torch.from_numpy(sigmas), shift).numpy()\n\n        self.sigmas = torch.from_numpy(np.concatenate([sigmas, [0.0]])).to(device=device, dtype=dtype)\n        self.timesteps = torch.from_numpy(timesteps).to(device=device, dtype=dtype)\n        self.init_noise_sigma = self.sigmas.max().item() if self.sigmas.numel() > 0 else 1.0\n\n        self._step_index = None\n        self._begin_index = None\n        self.model_outputs = []\n        self.x0_outputs = []\n        self.prev_sigmas = []\n\n    def index_for_timestep(self, timestep, schedule_timesteps=None):\n        from .scheduler_utils import index_for_timestep\n        if schedule_timesteps is None:\n            schedule_timesteps = self.timesteps\n        return index_for_timestep(timestep, schedule_timesteps)\n\n    def add_noise(\n        self,\n        original_samples: torch.Tensor,\n        noise: torch.Tensor,\n        timesteps: torch.Tensor,\n    ) -> torch.Tensor:\n        from .scheduler_utils import add_noise_to_sample\n        return add_noise_to_sample(original_samples, noise, self.sigmas, timesteps, self.timesteps)\n\n    def scale_model_input(self, sample: torch.Tensor, timestep: Union[float, torch.Tensor]) -> torch.Tensor:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n        if self.config.prediction_type == \"flow_prediction\":\n            return sample\n        sigma = self.sigmas[self._step_index]\n        sample = sample / ((sigma**2 + 1) ** 0.5)\n        return sample\n\n    def step(\n        self,\n        model_output: torch.Tensor,\n        timestep: Union[float, torch.Tensor],\n        sample: torch.Tensor,\n        return_dict: bool = True,\n    ) -> Union[SchedulerOutput, Tuple]:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n\n        step_index = self._step_index\n        sigma = self.sigmas[step_index]\n        sigma_next = self.sigmas[step_index + 1]\n\n        # RECONSTRUCT X0\n        if self.config.prediction_type == \"epsilon\":\n            x0 = sample - sigma * model_output\n        elif self.config.prediction_type == \"sample\":\n            x0 = model_output\n        elif self.config.prediction_type == \"v_prediction\":\n            alpha_t = 1.0 / (sigma**2 + 1)**0.5\n            sigma_t = sigma * alpha_t\n            x0 = alpha_t * sample - sigma_t * model_output\n        elif self.config.prediction_type == \"flow_prediction\":\n            x0 = sample - sigma * model_output\n        else:\n            x0 = model_output\n\n        # Exponential Integrator Update\n        if sigma_next == 0:\n            x_next = x0\n        else:\n            h = -torch.log(sigma_next / sigma) if sigma > 0 and sigma_next > 0 else torch.zeros_like(sigma)\n            x_next = torch.exp(-h) * sample + (1 - torch.exp(-h)) * x0\n\n        self._step_index += 1\n\n        if not return_dict:\n            return (x_next,)\n\n        return SchedulerOutput(prev_sample=x_next)\n\n    def _init_step_index(self, timestep):\n        if self.begin_index is None:\n            if isinstance(timestep, torch.Tensor):\n                timestep = timestep.to(self.timesteps.device)\n            self._step_index = self.index_for_timestep(timestep)\n        else:\n            self._step_index = self._begin_index\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/res4lyf/deis_scheduler_alt.py",
    "content": "from typing import List, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.schedulers.scheduling_utils import SchedulerMixin, SchedulerOutput\n\nfrom .phi_functions import Phi\n\n\ndef get_def_integral_2(a, b, start, end, c):\n    coeff = (end**3 - start**3) / 3 - (end**2 - start**2) * (a + b) / 2 + (end - start) * a * b\n    return coeff / ((c - a) * (c - b))\n\n\ndef get_def_integral_3(a, b, c, start, end, d):\n    coeff = (end**4 - start**4) / 4 - (end**3 - start**3) * (a + b + c) / 3 + (end**2 - start**2) * (a * b + a * c + b * c) / 2 - (end - start) * a * b * c\n    return coeff / ((d - a) * (d - b) * (d - c))\n\n\nclass RESDEISMultistepScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    RESDEISMultistepScheduler: Diffusion Explicit Iterative Sampler with high-order multistep.\n    Adapted from the RES4LYF repository.\n    \"\"\"\n\n    order = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.00085,\n        beta_end: float = 0.012,\n        beta_schedule: str = \"linear\",\n        trained_betas: Optional[Union[np.ndarray, List[float]]] = None,\n        prediction_type: str = \"epsilon\",\n        use_karras_sigmas: bool = False,\n        use_exponential_sigmas: bool = False,\n        use_beta_sigmas: bool = False,\n        use_flow_sigmas: bool = False,\n        sigma_min: Optional[float] = None,\n        sigma_max: Optional[float] = None,\n        rho: float = 7.0,\n        shift: Optional[float] = None,\n        base_shift: float = 0.5,\n        max_shift: float = 1.15,\n        use_dynamic_shifting: bool = False,\n        timestep_spacing: str = \"linspace\",\n        solver_order: int = 2,\n        use_analytic_solution: bool = True,\n        clip_sample: bool = False,\n        sample_max_value: float = 1.0,\n        set_alpha_to_one: bool = False,\n        skip_prk_steps: bool = False,\n        interpolation_type: str = \"linear\",\n        steps_offset: int = 0,\n        timestep_type: str = \"discrete\",\n        rescale_betas_zero_snr: bool = False,\n        final_sigmas_type: str = \"zero\",\n    ):\n        if trained_betas is not None:\n            self.betas = torch.tensor(trained_betas, dtype=torch.float32)\n        elif beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        else:\n            raise NotImplementedError(f\"{beta_schedule} is not implemented\")\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n\n        self.num_inference_steps = None\n        self.timesteps = torch.from_numpy(np.arange(0, num_train_timesteps)[::-1].copy())\n        self.sigmas = None\n        self.init_noise_sigma = 1.0\n\n        # Internal state\n        self.model_outputs = []\n        self.hist_samples = []\n        self._step_index = None\n        self._sigmas_cpu = None\n        self.all_coeffs = []\n        self.prev_sigmas = []\n\n    def set_timesteps(\n        self,\n        num_inference_steps: int,\n        device: Union[str, torch.device] = None,\n        mu: Optional[float] = None,\n        dtype: torch.dtype = torch.float32):\n\n        self.num_inference_steps = num_inference_steps\n\n        # 1. Spacing\n        if self.config.timestep_spacing == \"linspace\":\n            timesteps = np.linspace(self.config.num_train_timesteps - 1, 0, num_inference_steps, dtype=float).copy()\n        elif self.config.timestep_spacing == \"leading\":\n            step_ratio = self.config.num_train_timesteps // num_inference_steps\n            timesteps = (np.arange(0, num_inference_steps) * step_ratio).round()[::-1].copy().astype(float)\n        elif self.config.timestep_spacing == \"trailing\":\n            step_ratio = self.config.num_train_timesteps / num_inference_steps\n            timesteps = (np.arange(num_inference_steps, 0, -step_ratio)).round().copy().astype(float)\n            timesteps -= step_ratio\n        else:\n            raise ValueError(f\"timestep_spacing must be one of 'linspace', 'leading', or 'trailing', got {self.config.timestep_spacing}\")\n\n        if self.config.timestep_spacing == \"trailing\":\n            timesteps = np.maximum(timesteps, 0)\n\n        sigmas = np.array(((1 - self.alphas_cumprod) / self.alphas_cumprod) ** 0.5)\n        log_sigmas_all = np.log(np.maximum(sigmas, 1e-10))\n        if self.config.interpolation_type == \"linear\":\n            sigmas = np.interp(timesteps, np.arange(len(sigmas)), sigmas)\n        elif self.config.interpolation_type == \"log_linear\":\n            sigmas = np.exp(np.interp(timesteps, np.arange(len(sigmas)), np.log(sigmas)))\n        else:\n            raise ValueError(f\"interpolation_type must be one of 'linear' or 'log_linear', got {self.config.interpolation_type}\")\n\n        # 2. Sigma Schedule\n        if self.config.use_karras_sigmas:\n            sigma_min = self.config.sigma_min if self.config.sigma_min is not None else sigmas[-1]\n            sigma_max = self.config.sigma_max if self.config.sigma_max is not None else sigmas[0]\n            rho = self.config.rho\n            ramp = np.linspace(0, 1, num_inference_steps)\n            sigmas = (sigma_max ** (1 / rho) + ramp * (sigma_min ** (1 / rho) - sigma_max ** (1 / rho))) ** rho\n        elif self.config.use_exponential_sigmas:\n            sigma_min = self.config.sigma_min if self.config.sigma_min is not None else sigmas[-1]\n            sigma_max = self.config.sigma_max if self.config.sigma_max is not None else sigmas[0]\n            sigmas = np.exp(np.linspace(np.log(sigma_max), np.log(sigma_min), num_inference_steps))\n        elif self.config.use_beta_sigmas:\n            sigma_min = self.config.sigma_min if self.config.sigma_min is not None else sigmas[-1]\n            sigma_max = self.config.sigma_max if self.config.sigma_max is not None else sigmas[0]\n            alpha, beta = 0.6, 0.6\n            ramp = np.linspace(0, 1, num_inference_steps)\n            try:\n                import torch.distributions as dist\n\n                b = dist.Beta(alpha, beta)\n                ramp = b.sample((num_inference_steps,)).sort().values.numpy()\n            except Exception:\n                pass\n            sigmas = sigma_max * (1 - ramp) + sigma_min * ramp\n        elif self.config.use_flow_sigmas:\n             sigmas = np.linspace(1.0, 1 / 1000, num_inference_steps)\n\n        # 3. Shifting\n        if self.config.use_dynamic_shifting and mu is not None:\n            sigmas = mu * sigmas / (1 + (mu - 1) * sigmas)\n        elif self.config.shift is not None:\n            sigmas = self.config.shift * sigmas / (1 + (self.config.shift - 1) * sigmas)\n\n        # Map back to timesteps\n        if self.config.use_flow_sigmas:\n             timesteps = sigmas * self.config.num_train_timesteps\n        else:\n             timesteps = np.interp(np.log(np.maximum(sigmas, 1e-10)), log_sigmas_all, np.arange(len(log_sigmas_all)))\n\n        self.sigmas = torch.from_numpy(np.append(sigmas, 0.0)).to(device=device, dtype=dtype)\n        self.timesteps = torch.from_numpy(timesteps + self.config.steps_offset).to(device=device, dtype=dtype)\n        self.init_noise_sigma = self.sigmas.max().item() if self.sigmas.numel() > 0 else 1.0\n\n        self._sigmas_cpu = self.sigmas.detach().cpu().numpy()\n\n        # Precompute coefficients\n        self.all_coeffs = []\n        num_steps = len(timesteps)\n        for i in range(num_steps):\n            sigma_t = self._sigmas_cpu[i]\n            sigma_next = self._sigmas_cpu[i + 1]\n\n            if sigma_next <= 0:\n                coeffs = None\n            else:\n                current_order = min(i + 1, self.config.solver_order)\n                if current_order == 1:\n                    coeffs = [sigma_next - sigma_t]\n                else:\n                    ts = [self._sigmas_cpu[i - j] for j in range(current_order)]\n                    t_next = sigma_next\n                    if current_order == 2:\n                        t_cur, t_prev1 = ts[0], ts[1]\n                        coeff_cur = ((t_next - t_prev1) ** 2 - (t_cur - t_prev1) ** 2) / (2 * (t_cur - t_prev1))\n                        coeff_prev1 = (t_next - t_cur) ** 2 / (2 * (t_prev1 - t_cur))\n                        coeffs = [coeff_cur, coeff_prev1]\n                    elif current_order == 3:\n                        t_cur, t_prev1, t_prev2 = ts[0], ts[1], ts[2]\n                        coeffs = [\n                            get_def_integral_2(t_prev1, t_prev2, t_cur, t_next, t_cur),\n                            get_def_integral_2(t_cur, t_prev2, t_cur, t_next, t_prev1),\n                            get_def_integral_2(t_cur, t_prev1, t_cur, t_next, t_prev2),\n                        ]\n                    elif current_order == 4:\n                        t_cur, t_prev1, t_prev2, t_prev3 = ts[0], ts[1], ts[2], ts[3]\n                        coeffs = [\n                            get_def_integral_3(t_prev1, t_prev2, t_prev3, t_cur, t_next, t_cur),\n                            get_def_integral_3(t_cur, t_prev2, t_prev3, t_cur, t_next, t_prev1),\n                            get_def_integral_3(t_cur, t_prev1, t_prev3, t_cur, t_next, t_prev2),\n                            get_def_integral_3(t_cur, t_prev1, t_prev2, t_cur, t_next, t_prev3),\n                        ]\n                    else:\n                        coeffs = [(sigma_next - sigma_t) / sigma_t]  # Fallback to Euler\n            self.all_coeffs.append(coeffs)\n\n        # Reset history\n        self.model_outputs = []\n        self.hist_samples = []\n        self._step_index = None\n\n    @property\n    def step_index(self):\n        \"\"\"\n        The index counter for the current timestep. It will increase 1 after each scheduler step.\n        \"\"\"\n        return self._step_index\n\n    def index_for_timestep(self, timestep, schedule_timesteps=None):\n        from .scheduler_utils import index_for_timestep\n        if schedule_timesteps is None:\n            schedule_timesteps = self.timesteps\n        return index_for_timestep(timestep, schedule_timesteps)\n\n    def _init_step_index(self, timestep):\n        if self._step_index is None:\n            self._step_index = self.index_for_timestep(timestep)\n\n    def scale_model_input(self, sample: torch.Tensor, timestep: Union[float, torch.Tensor]) -> torch.Tensor:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n        if self.config.prediction_type == \"flow_prediction\":\n            return sample\n        sigma = self.sigmas[self._step_index]\n        return sample / ((sigma**2 + 1) ** 0.5)\n\n    def step(\n        self,\n        model_output: torch.Tensor,\n        timestep: Union[float, torch.Tensor],\n        sample: torch.Tensor,\n        return_dict: bool = True,\n    ) -> Union[SchedulerOutput, Tuple]:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n\n        step_index = self._step_index\n        sigma_t = self.sigmas[step_index]\n\n        # RECONSTRUCT X0 (Matching PEC pattern)\n        if self.config.prediction_type == \"epsilon\":\n            denoised = sample - sigma_t * model_output\n        elif self.config.prediction_type == \"v_prediction\":\n            alpha_t = 1 / (sigma_t**2 + 1) ** 0.5\n            sigma_actual = sigma_t * alpha_t\n            denoised = alpha_t * sample - sigma_actual * model_output\n        elif self.config.prediction_type == \"flow_prediction\":\n            denoised = sample - sigma_t * model_output\n        elif self.config.prediction_type == \"sample\":\n            denoised = model_output\n        else:\n            raise ValueError(f\"prediction_type error: {self.config.prediction_type}\")\n\n        if self.config.clip_sample:\n            denoised = denoised.clamp(-self.config.sample_max_value, self.config.sample_max_value)\n\n        if self.config.prediction_type == \"flow_prediction\":\n            # Variable Step Adams-Bashforth for Flow Matching\n            self.model_outputs.append(model_output)\n            self.prev_sigmas.append(sigma_t)\n            # Note: deis uses hist_samples for x0? I'll use model_outputs for v.\n            if len(self.model_outputs) > 4:\n                 self.model_outputs.pop(0)\n                 self.prev_sigmas.pop(0)\n\n            dt = self.sigmas[step_index + 1] - sigma_t\n            v_n = model_output\n\n            curr_order = min(len(self.prev_sigmas), 3)\n\n            if curr_order == 1:\n                 x_next = sample + dt * v_n\n            elif curr_order == 2:\n                 sigma_prev = self.prev_sigmas[-2]\n                 dt_prev = sigma_t - sigma_prev\n                 r = dt / dt_prev if abs(dt_prev) > 1e-8 else 0.0\n                 if dt_prev == 0 or r < -0.9 or r > 2.0:\n                     x_next = sample + dt * v_n\n                 else:\n                     c0 = 1 + 0.5 * r\n                     c1 = -0.5 * r\n                     x_next = sample + dt * (c0 * v_n + c1 * self.model_outputs[-2])\n            else:\n                 # AB2 fallback\n                 sigma_prev = self.prev_sigmas[-2]\n                 dt_prev = sigma_t - sigma_prev\n                 r = dt / dt_prev if abs(dt_prev) > 1e-8 else 0.0\n                 c0 = 1 + 0.5 * r\n                 c1 = -0.5 * r\n                 x_next = sample + dt * (c0 * v_n + c1 * self.model_outputs[-2])\n\n            self._step_index += 1\n            if not return_dict:\n                return (x_next,)\n            return SchedulerOutput(prev_sample=x_next)\n\n        sigma_next = self.sigmas[step_index + 1]\n\n        if self.config.solver_order == 1:\n            # 1st order step (Euler) in x-space\n            x_next = (sigma_next / sigma_t) * sample + (1 - sigma_next / sigma_t) * denoised\n            prev_sample = x_next\n        else:\n            # Multistep weights based on phi functions (consistent with RESMultistep)\n            h = -torch.log(sigma_next / sigma_t) if sigma_t > 0 and sigma_next > 0 else torch.zeros_like(sigma_t)\n            phi = Phi(h, [0], getattr(self.config, \"use_analytic_solution\", True))\n            phi_1 = phi(1)\n\n            # History of denoised samples\n            x0s = [denoised] + self.model_outputs[::-1]\n            orders = min(len(x0s), self.config.solver_order)\n\n            # Force Order 1 at the end of schedule\n            if self.num_inference_steps is not None and step_index >= self.num_inference_steps - 3:\n                res = phi_1 * denoised\n            elif orders == 1:\n                res = phi_1 * denoised\n            elif orders == 2:\n                # Use phi(2) for 2nd order interpolation\n                h_prev = -np.log(self._sigmas_cpu[step_index] / (self._sigmas_cpu[step_index - 1] + 1e-9))\n                h_prev_t = torch.tensor(h_prev, device=sample.device, dtype=sample.dtype)\n                r = h_prev_t / (h + 1e-9)\n                h_prev = -np.log(self._sigmas_cpu[step_index] / (self._sigmas_cpu[step_index - 1] + 1e-9))\n                h_prev_t = torch.tensor(h_prev, device=sample.device, dtype=sample.dtype)\n                r = h_prev_t / (h + 1e-9)\n\n                # Hard Restart\n                if r < 0.5 or r > 2.0:\n                    res = phi_1 * denoised\n                else:\n                    phi_2 = phi(2)\n                    # Correct Adams-Bashforth-like coefficients: b2 = -phi_2 / r\n                    b2 = -phi_2 / (r + 1e-9)\n                    b1 = phi_1 - b2\n                    res = b1 * x0s[0] + b2 * x0s[1]\n            elif orders == 3:\n                # 3rd order with varying step sizes\n                # 3rd order with varying step sizes\n                h_p1 = -np.log(self._sigmas_cpu[step_index] / (self._sigmas_cpu[step_index - 1] + 1e-9))\n                h_p2 = -np.log(self._sigmas_cpu[step_index] / (self._sigmas_cpu[step_index - 2] + 1e-9))\n                r1 = torch.tensor(h_p1, device=sample.device, dtype=sample.dtype) / (h + 1e-9)\n                r2 = torch.tensor(h_p2, device=sample.device, dtype=sample.dtype) / (h + 1e-9)\n                h_p1 = -np.log(self._sigmas_cpu[step_index] / (self._sigmas_cpu[step_index - 1] + 1e-9))\n                h_p2 = -np.log(self._sigmas_cpu[step_index] / (self._sigmas_cpu[step_index - 2] + 1e-9))\n                r1 = torch.tensor(h_p1, device=sample.device, dtype=sample.dtype) / (h + 1e-9)\n                r2 = torch.tensor(h_p2, device=sample.device, dtype=sample.dtype) / (h + 1e-9)\n\n                # Hard Restart\n                if r1 < 0.5 or r1 > 2.0 or r2 < 0.5 or r2 > 2.0:\n                    res = phi_1 * denoised\n                else:\n                    phi_2, phi_3 = phi(2), phi(3)\n                    denom = r2 - r1 + 1e-9\n                    b3 = (phi_3 + r1 * phi_2) / (r2 * denom)\n                    b2 = -(phi_3 + r2 * phi_2) / (r1 * denom)\n                    b1 = phi_1 - b2 - b3\n                    res = b1 * x0s[0] + b2 * x0s[1] + b3 * x0s[2]\n            else:\n                # Fallback to Euler or lower order\n                res = phi_1 * denoised\n\n            # Stable update in x-space\n            if sigma_next == 0:\n                x_next = denoised\n            else:\n                x_next = torch.exp(-h) * sample + h * res\n            prev_sample = x_next\n\n        # Store state (always store x0)\n        self.model_outputs.append(denoised)\n        self.hist_samples.append(sample)\n\n        if len(self.model_outputs) > 4:\n            self.model_outputs.pop(0)\n            self.hist_samples.pop(0)\n\n        if self._step_index is not None:\n            self._step_index += 1\n\n        if not return_dict:\n            return (prev_sample,)\n        return SchedulerOutput(prev_sample=prev_sample)\n\n    def add_noise(\n        self,\n        original_samples: torch.Tensor,\n        noise: torch.Tensor,\n        timesteps: torch.Tensor,\n    ) -> torch.Tensor:\n        from .scheduler_utils import add_noise_to_sample\n        return add_noise_to_sample(original_samples, noise, self.sigmas, timesteps, self.timesteps)\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/res4lyf/etdrk_scheduler.py",
    "content": "# Copyright 2025 The RES4LYF Team (Clybius) and The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nfrom typing import ClassVar, List, Literal, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.schedulers.scheduling_utils import KarrasDiffusionSchedulers, SchedulerMixin, SchedulerOutput\n\nfrom diffusers.utils import logging\n\nfrom .phi_functions import Phi\n\nlogger = logging.get_logger(__name__)\n\n\nclass ETDRKScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    Exponential Time Differencing Runge-Kutta (ETDRK) scheduler.\n    \"\"\"\n\n    _compatibles: ClassVar[List[str]] = [e.name for e in KarrasDiffusionSchedulers]\n    order = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.00085,\n        beta_end: float = 0.012,\n        beta_schedule: str = \"linear\",\n        trained_betas: Optional[Union[np.ndarray, List[float]]] = None,\n        prediction_type: str = \"epsilon\",\n        variant: Literal[\"etdrk2_2s\", \"etdrk3_a_3s\", \"etdrk3_b_3s\", \"etdrk4_4s\", \"etdrk4_4s_alt\"] = \"etdrk4_4s\",\n        use_analytic_solution: bool = True,\n        timestep_spacing: str = \"linspace\",\n        steps_offset: int = 0,\n        rescale_betas_zero_snr: bool = False,\n        use_karras_sigmas: bool = False,\n        use_exponential_sigmas: bool = False,\n        use_beta_sigmas: bool = False,\n        use_flow_sigmas: bool = False,\n        shift: float = 1.0,\n        use_dynamic_shifting: bool = False,\n        base_shift: float = 0.5,\n        max_shift: float = 1.15,\n        base_image_seq_len: int = 256,\n        max_image_seq_len: int = 4096,\n    ):\n        from .scheduler_utils import betas_for_alpha_bar, rescale_zero_terminal_snr\n\n        if trained_betas is not None:\n            self.betas = torch.tensor(trained_betas, dtype=torch.float32)\n        elif beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        elif beta_schedule == \"squaredcos_cap_v2\":\n            self.betas = betas_for_alpha_bar(num_train_timesteps)\n        else:\n            raise NotImplementedError(f\"{beta_schedule} does not exist.\")\n\n        if rescale_betas_zero_snr:\n            self.betas = rescale_zero_terminal_snr(self.betas)\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n\n        # Buffer for multistage/multistep\n        self.model_outputs = []\n        self.x0_outputs = []\n        self.prev_sigmas = []\n        self._step_index = None\n        self._begin_index = None\n        self.init_noise_sigma = 1.0\n\n    @property\n    def step_index(self) -> Optional[int]:\n        return self._step_index\n\n    @property\n    def begin_index(self) -> Optional[int]:\n        return self._begin_index\n\n    def set_begin_index(self, begin_index: int = 0) -> None:\n        self._begin_index = begin_index\n\n    def set_timesteps(self, num_inference_steps: int, device: Union[str, torch.device] = None, mu: Optional[float] = None, dtype: torch.dtype = torch.float32):\n        from .scheduler_utils import (\n            apply_shift,\n            get_dynamic_shift,\n            get_sigmas_beta,\n            get_sigmas_exponential,\n            get_sigmas_flow,\n            get_sigmas_karras,\n        )\n\n        self.num_inference_steps = num_inference_steps\n\n        if self.config.timestep_spacing == \"linspace\":\n            timesteps = np.linspace(0, self.config.num_train_timesteps - 1, num_inference_steps, dtype=float)[::-1].copy()\n        elif self.config.timestep_spacing == \"leading\":\n            step_ratio = self.config.num_train_timesteps // self.num_inference_steps\n            timesteps = (np.arange(0, num_inference_steps) * step_ratio).round()[::-1].copy()\n            timesteps += self.config.steps_offset\n        elif self.config.timestep_spacing == \"trailing\":\n            step_ratio = self.config.num_train_timesteps / self.num_inference_steps\n            timesteps = (np.arange(self.config.num_train_timesteps, 0, -step_ratio)).round().copy()\n            timesteps -= 1\n        else:\n            raise ValueError(f\"timestep_spacing {self.config.timestep_spacing} is not supported.\")\n\n        sigmas = np.array(((1 - self.alphas_cumprod) / self.alphas_cumprod) ** 0.5)\n        sigmas = np.interp(timesteps, np.arange(0, len(sigmas)), sigmas)\n\n        if self.config.use_karras_sigmas:\n            sigmas = get_sigmas_karras(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_exponential_sigmas:\n            sigmas = get_sigmas_exponential(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_beta_sigmas:\n            sigmas = get_sigmas_beta(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_flow_sigmas:\n            sigmas = get_sigmas_flow(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n\n        if self.config.shift != 1.0 or self.config.use_dynamic_shifting:\n            shift = self.config.shift\n            if self.config.use_dynamic_shifting and mu is not None:\n                shift = get_dynamic_shift(\n                    mu,\n                    self.config.base_shift,\n                    self.config.max_shift,\n                    self.config.base_image_seq_len,\n                    self.config.max_image_seq_len,\n                )\n            sigmas = apply_shift(torch.from_numpy(sigmas), shift).numpy()\n\n        self.sigmas = torch.from_numpy(np.concatenate([sigmas, [0.0]])).to(device=device, dtype=dtype)\n        self.timesteps = torch.from_numpy(timesteps).to(device=device, dtype=dtype)\n        self.init_noise_sigma = self.sigmas.max().item() if self.sigmas.numel() > 0 else 1.0\n\n        self._step_index = None\n        self._begin_index = None\n        self.model_outputs = []\n        self.x0_outputs = []\n        self.prev_sigmas = []\n\n    def index_for_timestep(self, timestep, schedule_timesteps=None):\n        from .scheduler_utils import index_for_timestep\n        if schedule_timesteps is None:\n            schedule_timesteps = self.timesteps\n        return index_for_timestep(timestep, schedule_timesteps)\n\n    def add_noise(\n        self,\n        original_samples: torch.Tensor,\n        noise: torch.Tensor,\n        timesteps: torch.Tensor,\n    ) -> torch.Tensor:\n        from .scheduler_utils import add_noise_to_sample\n        return add_noise_to_sample(original_samples, noise, self.sigmas, timesteps, self.timesteps)\n\n    def scale_model_input(self, sample: torch.Tensor, timestep: Union[float, torch.Tensor]) -> torch.Tensor:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n        if self.config.prediction_type == \"flow_prediction\":\n            return sample\n        sigma = self.sigmas[self._step_index]\n        sample = sample / ((sigma**2 + 1) ** 0.5)\n        return sample\n\n    def step(\n        self,\n        model_output: torch.Tensor,\n        timestep: Union[float, torch.Tensor],\n        sample: torch.Tensor,\n        return_dict: bool = True,\n    ) -> Union[SchedulerOutput, Tuple]:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n\n        step_index = self._step_index\n        sigma = self.sigmas[step_index]\n        sigma_next = self.sigmas[step_index + 1]\n\n        h = -torch.log(sigma_next / sigma) if sigma > 0 and sigma_next > 0 else torch.zeros_like(sigma)\n\n        # RECONSTRUCT X0\n        if self.config.prediction_type == \"epsilon\":\n            x0 = sample - sigma * model_output\n        elif self.config.prediction_type == \"sample\":\n            x0 = model_output\n        elif self.config.prediction_type == \"v_prediction\":\n            alpha_t = 1.0 / (sigma**2 + 1) ** 0.5\n            sigma_t = sigma * alpha_t\n            x0 = alpha_t * sample - sigma_t * model_output\n        elif self.config.prediction_type == \"flow_prediction\":\n            x0 = sample - sigma * model_output\n        else:\n            x0 = model_output\n\n        self.model_outputs.append(model_output)\n        self.x0_outputs.append(x0)\n        self.prev_sigmas.append(sigma)\n\n        variant = self.config.variant\n\n        if sigma_next == 0:\n            x_next = x0\n        else:\n            # ETDRK coefficients\n            if variant == \"etdrk2_2s\":\n                ci = [0.0, 1.0]\n                phi = Phi(h, ci, self.config.use_analytic_solution)\n                if len(self.x0_outputs) < 2:\n                    res = phi(1) * x0\n                else:\n                    eps_1, eps_2 = self.x0_outputs[-2:]\n                    b2 = phi(2)\n                    b1 = phi(1) - b2\n                    res = b1 * eps_1 + b2 * eps_2\n            elif variant == \"etdrk3_b_3s\":\n                ci = [0, 4/9, 2/3]\n                phi = Phi(h, ci, self.config.use_analytic_solution)\n                if len(self.x0_outputs) < 3:\n                    res = phi(1) * x0\n                else:\n                    eps_1, eps_2, eps_3 = self.x0_outputs[-3:]\n                    b3 = (3/2) * phi(2)\n                    b2 = 0\n                    b1 = phi(1) - b3\n                    res = b1 * eps_1 + b2 * eps_2 + b3 * eps_3\n            elif variant == \"etdrk4_4s\":\n                ci = [0, 1/2, 1/2, 1]\n                phi = Phi(h, ci, self.config.use_analytic_solution)\n                if len(self.x0_outputs) < 4:\n                    res = phi(1) * x0\n                else:\n                    e1, e2, e3, e4 = self.x0_outputs[-4:]\n                    b2 = 2*phi(2) - 4*phi(3)\n                    b3 = 2*phi(2) - 4*phi(3)\n                    b4 = -phi(2) + 4*phi(3)\n                    b1 = phi(1) - (b2 + b3 + b4)\n                    res = b1 * e1 + b2 * e2 + b3 * e3 + b4 * e4\n            else:\n                res = Phi(h, [0], self.config.use_analytic_solution)(1) * x0\n\n            # Exponential Integrator Update\n            x_next = torch.exp(-h) * sample + h * res\n\n        self._step_index += 1\n\n        # Buffer control\n        limit = 4 if variant.startswith(\"etdrk4\") else 3\n        if len(self.x0_outputs) > limit:\n            self.x0_outputs.pop(0)\n            self.model_outputs.pop(0)\n            self.prev_sigmas.pop(0)\n\n        if not return_dict:\n            return (x_next,)\n\n        return SchedulerOutput(prev_sample=x_next)\n\n    def _init_step_index(self, timestep):\n        if self.begin_index is None:\n            if isinstance(timestep, torch.Tensor):\n                timestep = timestep.to(self.timesteps.device)\n            self._step_index = self.index_for_timestep(timestep)\n        else:\n            self._step_index = self._begin_index\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/res4lyf/gauss_legendre_scheduler.py",
    "content": "from typing import List, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.schedulers.scheduling_utils import SchedulerMixin, SchedulerOutput\n\n\nclass GaussLegendreScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    GaussLegendreScheduler: High-accuracy implicit symplectic integrators.\n    Supports various orders (2s, 3s, 4s, 5s, 8s-diagonal).\n    Adapted from the RES4LYF repository.\n    \"\"\"\n\n    order = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.00085,\n        beta_end: float = 0.012,\n        beta_schedule: str = \"linear\",\n        trained_betas: Optional[Union[np.ndarray, List[float]]] = None,\n        prediction_type: str = \"epsilon\",\n        variant: str = \"gauss-legendre_2s\",  # 2s to 8s variants\n        use_karras_sigmas: bool = False,\n        use_exponential_sigmas: bool = False,\n        use_beta_sigmas: bool = False,\n        use_flow_sigmas: bool = False,\n        sigma_min: Optional[float] = None,\n        sigma_max: Optional[float] = None,\n        rho: float = 7.0,\n        shift: Optional[float] = None,\n        base_shift: float = 0.5,\n        max_shift: float = 1.15,\n        use_dynamic_shifting: bool = False,\n        timestep_spacing: str = \"linspace\",\n        clip_sample: bool = False,\n        sample_max_value: float = 1.0,\n        set_alpha_to_one: bool = False,\n        skip_prk_steps: bool = False,\n        interpolation_type: str = \"linear\",\n        steps_offset: int = 0,\n        timestep_type: str = \"discrete\",\n        rescale_betas_zero_snr: bool = False,\n        final_sigmas_type: str = \"zero\",\n    ):\n        if trained_betas is not None:\n            self.betas = torch.tensor(trained_betas, dtype=torch.float32)\n        elif beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        else:\n            raise NotImplementedError(f\"{beta_schedule} is not implemented\")\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n\n        self.num_inference_steps = None\n        self.timesteps = torch.from_numpy(np.arange(0, num_train_timesteps)[::-1].copy())\n        self.sigmas = None\n        self.init_noise_sigma = 1.0\n\n        # Internal state\n        self.model_outputs = []\n        self.sample_at_start_of_step = None\n        self._step_index = None\n\n    def _get_tableau(self):\n        v = self.config.variant\n        if v == \"gauss-legendre_2s\":\n            r3 = 3**0.5\n            a = [[1 / 4, 1 / 4 - r3 / 6], [1 / 4 + r3 / 6, 1 / 4]]\n            b = [1 / 2, 1 / 2]\n            c = [1 / 2 - r3 / 6, 1 / 2 + r3 / 6]\n        elif v == \"gauss-legendre_3s\":\n            r15 = 15**0.5\n            a = [[5 / 36, 2 / 9 - r15 / 15, 5 / 36 - r15 / 30], [5 / 36 + r15 / 24, 2 / 9, 5 / 36 - r15 / 24], [5 / 36 + r15 / 30, 2 / 9 + r15 / 15, 5 / 36]]\n            b = [5 / 18, 4 / 9, 5 / 18]\n            c = [1 / 2 - r15 / 10, 1 / 2, 1 / 2 + r15 / 10]\n        elif v == \"gauss-legendre_4s\":\n            r15 = 15**0.5\n            a = [[1 / 4, 1 / 4 - r15 / 6, 1 / 4 + r15 / 6, 1 / 4], [1 / 4 + r15 / 6, 1 / 4, 1 / 4 - r15 / 6, 1 / 4], [1 / 4, 1 / 4 + r15 / 6, 1 / 4, 1 / 4 - r15 / 6], [1 / 4 - r15 / 6, 1 / 4, 1 / 4 + r15 / 6, 1 / 4]]\n            b = [1 / 8, 3 / 8, 3 / 8, 1 / 8]\n            c = [1 / 2 - r15 / 10, 1 / 2 + r15 / 10, 1 / 2 + r15 / 10, 1 / 2 - r15 / 10]\n        elif v == \"gauss-legendre_5s\":\n            r739 = 739**0.5\n            a = [\n                [\n                    4563950663 / 32115191526,\n                    (310937500000000 / 2597974476091533 + 45156250000 * r739 / 8747388808389),\n                    (310937500000000 / 2597974476091533 - 45156250000 * r739 / 8747388808389),\n                    (5236016175 / 88357462711 + 709703235 * r739 / 353429850844),\n                    (5236016175 / 88357462711 - 709703235 * r739 / 353429850844),\n                ],\n                [\n                    (4563950663 / 32115191526 - 38339103 * r739 / 6250000000),\n                    (310937500000000 / 2597974476091533 + 9557056475401 * r739 / 3498955523355600000),\n                    (310937500000000 / 2597974476091533 - 14074198220719489 * r739 / 3498955523355600000),\n                    (5236016175 / 88357462711 + 5601362553163918341 * r739 / 2208936567775000000000),\n                    (5236016175 / 88357462711 - 5040458465159165409 * r739 / 2208936567775000000000),\n                ],\n                [\n                    (4563950663 / 32115191526 + 38339103 * r739 / 6250000000),\n                    (310937500000000 / 2597974476091533 + 14074198220719489 * r739 / 3498955523355600000),\n                    (310937500000000 / 2597974476091533 - 9557056475401 * r739 / 3498955523355600000),\n                    (5236016175 / 88357462711 + 5040458465159165409 * r739 / 2208936567775000000000),\n                    (5236016175 / 88357462711 - 5601362553163918341 * r739 / 2208936567775000000000),\n                ],\n                [\n                    (4563950663 / 32115191526 - 38209 * r739 / 7938810),\n                    (310937500000000 / 2597974476091533 - 359369071093750 * r739 / 70145310854471391),\n                    (310937500000000 / 2597974476091533 - 323282178906250 * r739 / 70145310854471391),\n                    (5236016175 / 88357462711 - 470139 * r739 / 1413719403376),\n                    (5236016175 / 88357462711 - 44986764863 * r739 / 21205791050640),\n                ],\n                [\n                    (4563950663 / 32115191526 + 38209 * r739 / 7938810),\n                    (310937500000000 / 2597974476091533 + 359369071093750 * r739 / 70145310854471391),\n                    (310937500000000 / 2597974476091533 + 323282178906250 * r739 / 70145310854471391),\n                    (5236016175 / 88357462711 + 44986764863 * r739 / 21205791050640),\n                    (5236016175 / 88357462711 + 470139 * r739 / 1413719403376),\n                ],\n            ]\n            b = [4563950663 / 16057595763, 621875000000000 / 2597974476091533, 621875000000000 / 2597974476091533, 10472032350 / 88357462711, 10472032350 / 88357462711]\n            c = [1 / 2, 1 / 2 - 99 * r739 / 10000, 1 / 2 + 99 * r739 / 10000, 1 / 2 - r739 / 60, 1 / 2 + r739 / 60]\n        elif v == \"gauss-legendre_diag_8s\":\n            a = [\n                [0.5, 0, 0, 0, 0, 0, 0, 0],\n                [1.0818949631055815, 0.5, 0, 0, 0, 0, 0, 0],\n                [0.9599572962220549, 1.0869589243008327, 0.5, 0, 0, 0, 0, 0],\n                [1.0247213458032004, 0.9550588736973743, 1.0880938387323083, 0.5, 0, 0, 0, 0],\n                [0.9830238267636289, 1.0287597754747493, 0.9538345351852, 1.0883471611098278, 0.5, 0, 0, 0],\n                [1.0122259141132982, 0.9799828723635913, 1.0296038730649779, 0.9538345351852, 1.0880938387323083, 0.5, 0, 0],\n                [0.9912514332308026, 1.0140743558891669, 0.9799828723635913, 1.0287597754747493, 0.9550588736973743, 1.0869589243008327, 0.5, 0],\n                [1.0054828082532159, 0.9912514332308026, 1.0122259141132982, 0.9830238267636289, 1.0247213458032004, 0.9599572962220549, 1.0818949631055815, 0.5],\n            ]\n            b = [0.05061426814518813, 0.11119051722668724, 0.15685332293894364, 0.181341891689181, 0.181341891689181, 0.15685332293894364, 0.11119051722668724, 0.05061426814518813]\n            c = [0.019855071751231884, 0.10166676129318663, 0.2372337950418355, 0.4082826787521751, 0.5917173212478249, 0.7627662049581645, 0.8983332387068134, 0.9801449282487681]\n        else:\n            raise ValueError(f\"Unknown variant: {v}\")\n        return np.array(a), np.array(b), np.array(c)\n\n    def set_timesteps(\n        self,\n        num_inference_steps: int,\n        device: Union[str, torch.device] = None,\n        mu: Optional[float] = None, dtype: torch.dtype = torch.float32):\n        self.num_inference_steps = num_inference_steps\n\n        # 1. Spacing\n        if self.config.timestep_spacing == \"linspace\":\n            timesteps = np.linspace(0, self.config.num_train_timesteps - 1, num_inference_steps, dtype=float)[::-1].copy()\n        elif self.config.timestep_spacing == \"leading\":\n            step_ratio = self.config.num_train_timesteps // num_inference_steps\n            timesteps = (np.arange(0, num_inference_steps) * step_ratio).round()[::-1].copy().astype(float)\n        elif self.config.timestep_spacing == \"trailing\":\n            step_ratio = self.config.num_train_timesteps / num_inference_steps\n            timesteps = (np.arange(self.config.num_train_timesteps, 0, -step_ratio)).round().copy().astype(float)\n            timesteps -= 1\n        else:\n            raise ValueError(f\"timestep_spacing must be one of 'linspace', 'leading', or 'trailing', got {self.config.timestep_spacing}\")\n\n        sigmas = np.array(((1 - self.alphas_cumprod) / self.alphas_cumprod) ** 0.5)\n        if self.config.interpolation_type == \"linear\":\n            sigmas = np.interp(timesteps, np.arange(len(sigmas)), sigmas)\n        elif self.config.interpolation_type == \"log_linear\":\n            sigmas = np.exp(np.interp(timesteps, np.arange(len(sigmas)), np.log(sigmas)))\n        else:\n            raise ValueError(f\"interpolation_type must be one of 'linear' or 'log_linear', got {self.config.interpolation_type}\")\n\n        # 2. Sigma Schedule\n        if self.config.use_karras_sigmas:\n            sigma_min = self.config.sigma_min if self.config.sigma_min is not None else sigmas[-1]\n            sigma_max = self.config.sigma_max if self.config.sigma_max is not None else sigmas[0]\n            rho = self.config.rho\n            ramp = np.linspace(0, 1, num_inference_steps)\n            sigmas = (sigma_max ** (1 / rho) + ramp * (sigma_min ** (1 / rho) - sigma_max ** (1 / rho))) ** rho\n        elif self.config.use_exponential_sigmas:\n            sigma_min = self.config.sigma_min if self.config.sigma_min is not None else sigmas[-1]\n            sigma_max = self.config.sigma_max if self.config.sigma_max is not None else sigmas[0]\n            sigmas = np.exp(np.linspace(np.log(sigma_max), np.log(sigma_min), num_inference_steps))\n        elif self.config.use_beta_sigmas:\n            sigma_min = self.config.sigma_min if self.config.sigma_min is not None else sigmas[-1]\n            sigma_max = self.config.sigma_max if self.config.sigma_max is not None else sigmas[0]\n            alpha, beta = 0.6, 0.6\n            ramp = np.linspace(0, 1, num_inference_steps)\n            try:\n                import torch.distributions as dist\n\n                b = dist.Beta(alpha, beta)\n                ramp = b.sample((num_inference_steps,)).sort().values.numpy()\n            except Exception:\n                pass\n            sigmas = sigma_max * (1 - ramp) + sigma_min * ramp\n        elif self.config.use_flow_sigmas:\n            sigmas = np.linspace(1.0, 1 / 1000, num_inference_steps)\n\n        # 3. Shifting\n        if self.config.use_dynamic_shifting and mu is not None:\n            sigmas = mu * sigmas / (1 + (mu - 1) * sigmas)\n        elif self.config.shift is not None:\n            sigmas = self.config.shift * sigmas / (1 + (self.config.shift - 1) * sigmas)\n\n        # We handle multi-history expansion\n        _a_mat, _b_vec, c_vec = self._get_tableau()\n        len(c_vec)\n\n        sigmas_expanded = []\n        for i in range(len(sigmas) - 1):\n            s_curr = sigmas[i]\n            s_next = sigmas[i + 1]\n            for c_val in c_vec:\n                sigmas_expanded.append(s_curr + c_val * (s_next - s_curr))\n        sigmas_expanded.append(0.0)\n\n        sigmas_interpolated = np.array(sigmas_expanded)\n        # Linear remapping for Flow Matching\n        timesteps_expanded = sigmas_interpolated * self.config.num_train_timesteps\n\n        self.sigmas = torch.from_numpy(sigmas_interpolated).to(device=device, dtype=dtype)\n        self.timesteps = torch.from_numpy(timesteps_expanded + self.config.steps_offset).to(device=device, dtype=dtype)\n        self.init_noise_sigma = self.sigmas.max().item() if self.sigmas.numel() > 0 else 1.0\n\n        self.model_outputs = []\n        self.sample_at_start_of_step = None\n        self._step_index = None\n\n    @property\n    def step_index(self):\n        \"\"\"\n        The index counter for the current timestep. It will increase 1 after each scheduler step.\n        \"\"\"\n        return self._step_index\n\n    def index_for_timestep(self, timestep, schedule_timesteps=None):\n        from .scheduler_utils import index_for_timestep\n        if schedule_timesteps is None:\n            schedule_timesteps = self.timesteps\n        return index_for_timestep(timestep, schedule_timesteps)\n\n    def _init_step_index(self, timestep):\n        if self._step_index is None:\n            if isinstance(timestep, torch.Tensor):\n                timestep = timestep.to(self.timesteps.device)\n            self._step_index = self.index_for_timestep(timestep)\n\n    def scale_model_input(self, sample: torch.Tensor, timestep: Union[float, torch.Tensor]) -> torch.Tensor:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n        if self.config.prediction_type == \"flow_prediction\":\n            return sample\n        sigma = self.sigmas[self._step_index]\n        return sample / ((sigma**2 + 1) ** 0.5)\n\n    def step(\n        self,\n        model_output: torch.Tensor,\n        timestep: Union[float, torch.Tensor],\n        sample: torch.Tensor,\n        return_dict: bool = True,\n    ) -> Union[SchedulerOutput, Tuple]:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n\n        step_index = self._step_index\n        a_mat, b_vec, c_vec = self._get_tableau()\n        num_stages = len(c_vec)\n\n        stage_index = step_index % num_stages\n        base_step_index = (step_index // num_stages) * num_stages\n\n        sigma_curr = self.sigmas[base_step_index]\n        sigma_next_idx = min(base_step_index + num_stages, len(self.sigmas) - 1)\n        sigma_next = self.sigmas[sigma_next_idx]\n\n        if sigma_next <= 0:\n            sigma_t = self.sigmas[step_index]\n            prediction_type = getattr(self.config, \"prediction_type\", \"epsilon\")\n            if prediction_type == \"epsilon\":\n                denoised = sample - sigma_t * model_output\n            elif prediction_type == \"v_prediction\":\n                alpha_t = 1 / (sigma_t**2 + 1) ** 0.5\n                sigma_actual = sigma_t * alpha_t\n                denoised = alpha_t * sample - sigma_actual * model_output\n            elif prediction_type == \"flow_prediction\":\n                denoised = sample - sigma_t * model_output\n            else:\n                denoised = model_output\n\n            if getattr(self.config, \"clip_sample\", False):\n                denoised = denoised.clamp(-self.config.sample_max_value, self.config.sample_max_value)\n\n            prev_sample = denoised\n            self._step_index += 1\n            if not return_dict:\n                return (prev_sample,)\n            return SchedulerOutput(prev_sample=prev_sample)\n\n        h = sigma_next - sigma_curr\n        sigma_t = self.sigmas[step_index]\n\n        prediction_type = getattr(self.config, \"prediction_type\", \"epsilon\")\n        if prediction_type == \"epsilon\":\n            denoised = sample - sigma_t * model_output\n        elif self.config.prediction_type == \"v_prediction\":\n            alpha_t = 1 / (sigma_t**2 + 1) ** 0.5\n            sigma_actual = sigma_t * alpha_t\n            denoised = alpha_t * sample - sigma_actual * model_output\n        elif prediction_type == \"flow_prediction\":\n            denoised = sample - sigma_t * model_output\n        elif prediction_type == \"sample\":\n            denoised = model_output\n        else:\n            raise ValueError(f\"prediction_type error: {prediction_type}\")\n\n        if self.config.clip_sample:\n            denoised = denoised.clamp(-self.config.sample_max_value, self.config.sample_max_value)\n\n        # derivative = (x - x0) / sigma\n        derivative = (sample - denoised) / sigma_t if sigma_t > 1e-6 else torch.zeros_like(sample)\n\n        if self.sample_at_start_of_step is None:\n            if stage_index > 0:\n                # Mid-step fallback for Img2Img/Inpainting\n                sigma_next_t = self.sigmas[self._step_index + 1]\n                dt = sigma_next_t - sigma_t\n                prev_sample = sample + dt * derivative\n                self._step_index += 1\n                if not return_dict:\n                    return (prev_sample,)\n                return SchedulerOutput(prev_sample=prev_sample)\n\n            self.sample_at_start_of_step = sample\n            self.model_outputs = [derivative] * stage_index\n\n        if stage_index == 0:\n            self.model_outputs = [derivative]\n            self.sample_at_start_of_step = sample\n        else:\n            self.model_outputs.append(derivative)\n\n        # Predict sample for next stage\n        next_stage_idx = stage_index + 1\n        if next_stage_idx < num_stages:\n            sum_ak = 0\n            for j in range(len(self.model_outputs)):\n                sum_ak = sum_ak + a_mat[next_stage_idx][j] * self.model_outputs[j]\n\n            sigma_next_stage = self.sigmas[min(step_index + 1, len(self.sigmas) - 1)]\n\n            # Update x (unnormalized sample)\n            prev_sample = self.sample_at_start_of_step + (sigma_next_stage - sigma_curr) * sum_ak\n        else:\n            # Final step update using b coefficients\n            sum_bk = 0\n            for j in range(len(self.model_outputs)):\n                sum_bk = sum_bk + b_vec[j] * self.model_outputs[j]\n\n            prev_sample = self.sample_at_start_of_step + h * sum_bk\n\n            self.model_outputs = []\n            self.sample_at_start_of_step = None\n\n        self._step_index += 1\n\n        if not return_dict:\n            return (prev_sample,)\n        return SchedulerOutput(prev_sample=prev_sample)\n\n    def add_noise(\n        self,\n        original_samples: torch.Tensor,\n        noise: torch.Tensor,\n        timesteps: torch.Tensor,\n    ) -> torch.Tensor:\n        from .scheduler_utils import add_noise_to_sample\n        return add_noise_to_sample(original_samples, noise, self.sigmas, timesteps, self.timesteps)\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/res4lyf/langevin_dynamics_scheduler.py",
    "content": "# Copyright 2025 The RES4LYF Team (Clybius) and The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport math\nfrom typing import ClassVar, List, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.schedulers.scheduling_utils import KarrasDiffusionSchedulers, SchedulerMixin, SchedulerOutput\n\nfrom diffusers.utils import logging\n\nlogger = logging.get_logger(__name__)\n\n\nclass LangevinDynamicsScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    Langevin Dynamics sigma scheduler using Exponential Integrator step.\n    \"\"\"\n\n    _compatibles: ClassVar[List[str]] = [e.name for e in KarrasDiffusionSchedulers]\n    order: ClassVar[int] = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.00085,\n        beta_end: float = 0.012,\n        beta_schedule: str = \"linear\",\n        temperature: float = 0.5,\n        friction: float = 1.0,\n        prediction_type: str = \"epsilon\",\n        timestep_spacing: str = \"linspace\",\n        rescale_betas_zero_snr: bool = False,\n        use_karras_sigmas: bool = False,\n        use_exponential_sigmas: bool = False,\n        use_beta_sigmas: bool = False,\n        use_flow_sigmas: bool = False,\n        shift: float = 1.0,\n        use_dynamic_shifting: bool = False,\n        base_shift: float = 0.5,\n        max_shift: float = 1.15,\n        base_image_seq_len: int = 256,\n        max_image_seq_len: int = 4096,\n    ):\n        from .scheduler_utils import betas_for_alpha_bar, rescale_zero_terminal_snr\n\n        if beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        elif beta_schedule == \"squaredcos_cap_v2\":\n            self.betas = betas_for_alpha_bar(num_train_timesteps)\n        else:\n            raise NotImplementedError(f\"{beta_schedule} does not exist.\")\n\n        if rescale_betas_zero_snr:\n            self.betas = rescale_zero_terminal_snr(self.betas)\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n\n        # Standard deviation of the initial noise distribution\n        self.init_noise_sigma = 1.0\n\n        # Setable values\n        self.num_inference_steps = None\n        self.timesteps = torch.from_numpy(np.arange(0, num_train_timesteps)[::-1].copy())\n        self.sigmas = torch.zeros((num_train_timesteps,), dtype=torch.float32)\n\n        self._step_index = None\n        self._begin_index = None\n\n    @property\n    def step_index(self) -> Optional[int]:\n        return self._step_index\n\n    @property\n    def begin_index(self) -> Optional[int]:\n        return self._begin_index\n\n    def set_begin_index(self, begin_index: int = 0) -> None:\n        self._begin_index = begin_index\n\n    def set_timesteps(\n        self,\n        num_inference_steps: int,\n        device: Union[str, torch.device] = None,\n        generator: Optional[torch.Generator] = None,\n        mu: Optional[float] = None, dtype: torch.dtype = torch.float32):\n        from .scheduler_utils import (\n            apply_shift,\n            get_dynamic_shift,\n            get_sigmas_beta,\n            get_sigmas_exponential,\n            get_sigmas_flow,\n            get_sigmas_karras,\n        )\n\n        self.num_inference_steps = num_inference_steps\n\n        # Discretization parameters for Langevin schedule generation\n        dt = 1.0 / num_inference_steps\n        sqrt_2dt = math.sqrt(2 * dt)\n\n        start_sigma = 10.0\n        if hasattr(self, \"alphas_cumprod\"):\n            start_sigma = float(((1 - self.alphas_cumprod[-1]) / self.alphas_cumprod[-1]) ** 0.5)\n\n        end_sigma = 0.01\n\n        def grad_U(x):\n            return x - end_sigma\n\n        x = torch.tensor([start_sigma], dtype=dtype)\n        v = torch.zeros(1)\n\n        trajectory = [start_sigma]\n        temperature = self.config.temperature\n        friction = self.config.friction\n\n        for _ in range(num_inference_steps - 1):\n            v = v - dt * friction * v - dt * grad_U(x) / 2\n            x = x + dt * v\n            noise = torch.randn(1, generator=generator) * sqrt_2dt * temperature\n            v = v - dt * friction * v - dt * grad_U(x) / 2 + noise\n            trajectory.append(x.item())\n\n        sigmas = np.array(trajectory)\n        # Force monotonicity to prevent negative h in step()\n        sigmas = np.sort(sigmas)[::-1]\n        sigmas[-1] = end_sigma\n\n        if self.config.use_karras_sigmas:\n            sigmas = get_sigmas_karras(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_exponential_sigmas:\n            sigmas = get_sigmas_exponential(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_beta_sigmas:\n            sigmas = get_sigmas_beta(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_flow_sigmas:\n            sigmas = get_sigmas_flow(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n\n        if self.config.shift != 1.0 or self.config.use_dynamic_shifting:\n            shift = self.config.shift\n            if self.config.use_dynamic_shifting and mu is not None:\n                shift = get_dynamic_shift(\n                    mu,\n                    self.config.base_shift,\n                    self.config.max_shift,\n                    self.config.base_image_seq_len,\n                    self.config.max_image_seq_len,\n                )\n            sigmas = apply_shift(torch.from_numpy(sigmas), shift).numpy()\n\n        self.sigmas = torch.from_numpy(np.concatenate([sigmas, [0.0]])).to(device=device, dtype=dtype)\n        self.timesteps = torch.from_numpy(np.linspace(1000, 0, num_inference_steps)).to(device=device, dtype=dtype)\n        self.init_noise_sigma = self.sigmas.max().item() if self.sigmas.numel() > 0 else 1.0\n\n        self._step_index = None\n        self._begin_index = None\n\n    def index_for_timestep(self, timestep, schedule_timesteps=None):\n        from .scheduler_utils import index_for_timestep\n        if schedule_timesteps is None:\n            schedule_timesteps = self.timesteps\n        return index_for_timestep(timestep, schedule_timesteps)\n\n    def add_noise(\n        self,\n        original_samples: torch.Tensor,\n        noise: torch.Tensor,\n        timesteps: torch.Tensor,\n    ) -> torch.Tensor:\n        from .scheduler_utils import add_noise_to_sample\n        return add_noise_to_sample(original_samples, noise, self.sigmas, timesteps, self.timesteps)\n\n    def scale_model_input(self, sample: torch.Tensor, timestep: Union[float, torch.Tensor]) -> torch.Tensor:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n        if self.config.prediction_type == \"flow_prediction\":\n            return sample\n        sigma = self.sigmas[self._step_index]\n        sample = sample / ((sigma**2 + 1) ** 0.5)\n        return sample\n\n    def step(\n        self,\n        model_output: torch.Tensor,\n        timestep: Union[float, torch.Tensor],\n        sample: torch.Tensor,\n        return_dict: bool = True,\n    ) -> Union[SchedulerOutput, Tuple]:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n\n        step_index = self._step_index\n        sigma = self.sigmas[step_index]\n        sigma_next = self.sigmas[step_index + 1]\n\n        # Determine denoised (x_0 prediction)\n        if self.config.prediction_type == \"epsilon\":\n            x0 = sample - sigma * model_output\n        elif self.config.prediction_type == \"v_prediction\":\n            alpha_t = 1.0 / (sigma**2 + 1)**0.5\n            sigma_t = sigma * alpha_t\n            x0 = alpha_t * sample - sigma_t * model_output\n        elif self.config.prediction_type == \"sample\":\n            x0 = model_output\n        elif self.config.prediction_type == \"flow_prediction\":\n            x0 = sample - sigma * model_output\n        else:\n            x0 = model_output\n\n        # Exponential Integrator Update\n        if sigma_next == 0:\n            x_next = x0\n        else:\n            h = -torch.log(sigma_next / sigma) if sigma > 0 and sigma_next > 0 else torch.zeros_like(sigma)\n            x_next = torch.exp(-h) * sample + (1 - torch.exp(-h)) * x0\n\n        self._step_index += 1\n\n        if not return_dict:\n            return (x_next,)\n        return SchedulerOutput(prev_sample=x_next)\n\n    def _init_step_index(self, timestep):\n        if self.begin_index is None:\n            if isinstance(timestep, torch.Tensor):\n                timestep = timestep.to(self.timesteps.device)\n            self._step_index = self.index_for_timestep(timestep)\n        else:\n            self._step_index = self._begin_index\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/res4lyf/lawson_scheduler.py",
    "content": "# Copyright 2025 The RES4LYF Team (Clybius) and The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nfrom typing import ClassVar, List, Literal, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.schedulers.scheduling_utils import KarrasDiffusionSchedulers, SchedulerMixin, SchedulerOutput\n\nfrom diffusers.utils import logging\n\nlogger = logging.get_logger(__name__)\n\n\nclass LawsonScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    Lawson's integration method scheduler.\n    \"\"\"\n\n    _compatibles: ClassVar[List[str]] = [e.name for e in KarrasDiffusionSchedulers]\n    order = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.00085,\n        beta_end: float = 0.012,\n        beta_schedule: str = \"linear\",\n        trained_betas: Optional[Union[np.ndarray, List[float]]] = None,\n        prediction_type: str = \"epsilon\",\n        variant: Literal[\"lawson2a_2s\", \"lawson2b_2s\", \"lawson4_4s\"] = \"lawson4_4s\",\n        use_analytic_solution: bool = True,\n        timestep_spacing: str = \"linspace\",\n        steps_offset: int = 0,\n        rescale_betas_zero_snr: bool = False,\n        use_karras_sigmas: bool = False,\n        use_exponential_sigmas: bool = False,\n        use_beta_sigmas: bool = False,\n        use_flow_sigmas: bool = False,\n        shift: float = 1.0,\n        use_dynamic_shifting: bool = False,\n        base_shift: float = 0.5,\n        max_shift: float = 1.15,\n        base_image_seq_len: int = 256,\n        max_image_seq_len: int = 4096,\n    ):\n        from .scheduler_utils import betas_for_alpha_bar, rescale_zero_terminal_snr\n\n        if trained_betas is not None:\n            self.betas = torch.tensor(trained_betas, dtype=torch.float32)\n        elif beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        elif beta_schedule == \"squaredcos_cap_v2\":\n            self.betas = betas_for_alpha_bar(num_train_timesteps)\n        else:\n            raise NotImplementedError(f\"{beta_schedule} does not exist.\")\n\n        if rescale_betas_zero_snr:\n            self.betas = rescale_zero_terminal_snr(self.betas)\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n\n        # Buffer for multistage/multistep\n        self.model_outputs = []\n        self.x0_outputs = []\n        self.prev_sigmas = []\n        self._step_index = None\n        self._begin_index = None\n        self.init_noise_sigma = 1.0\n\n    @property\n    def step_index(self) -> Optional[int]:\n        return self._step_index\n\n    @property\n    def begin_index(self) -> Optional[int]:\n        return self._begin_index\n\n    def set_begin_index(self, begin_index: int = 0) -> None:\n        self._begin_index = begin_index\n\n    def set_timesteps(self, num_inference_steps: int, device: Union[str, torch.device] = None, mu: Optional[float] = None, dtype: torch.dtype = torch.float32):\n        from .scheduler_utils import (\n            apply_shift,\n            get_dynamic_shift,\n            get_sigmas_beta,\n            get_sigmas_exponential,\n            get_sigmas_flow,\n            get_sigmas_karras,\n        )\n\n        self.num_inference_steps = num_inference_steps\n\n        if self.config.timestep_spacing == \"linspace\":\n            timesteps = np.linspace(0, self.config.num_train_timesteps - 1, num_inference_steps, dtype=float)[::-1].copy()\n        elif self.config.timestep_spacing == \"leading\":\n            step_ratio = self.config.num_train_timesteps // self.num_inference_steps\n            timesteps = (np.arange(0, num_inference_steps) * step_ratio).round()[::-1].copy()\n            timesteps += self.config.steps_offset\n        elif self.config.timestep_spacing == \"trailing\":\n            step_ratio = self.config.num_train_timesteps / self.num_inference_steps\n            timesteps = (np.arange(self.config.num_train_timesteps, 0, -step_ratio)).round().copy()\n            timesteps -= 1\n        else:\n            raise ValueError(f\"timestep_spacing {self.config.timestep_spacing} is not supported.\")\n\n        sigmas = np.array(((1 - self.alphas_cumprod) / self.alphas_cumprod) ** 0.5)\n        sigmas = np.interp(timesteps, np.arange(0, len(sigmas)), sigmas)\n\n        if self.config.use_karras_sigmas:\n            sigmas = get_sigmas_karras(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_exponential_sigmas:\n            sigmas = get_sigmas_exponential(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_beta_sigmas:\n            sigmas = get_sigmas_beta(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_flow_sigmas:\n            sigmas = get_sigmas_flow(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n\n        if self.config.shift != 1.0 or self.config.use_dynamic_shifting:\n            shift = self.config.shift\n            if self.config.use_dynamic_shifting and mu is not None:\n                shift = get_dynamic_shift(\n                    mu,\n                    self.config.base_shift,\n                    self.config.max_shift,\n                    self.config.base_image_seq_len,\n                    self.config.max_image_seq_len,\n                )\n            sigmas = apply_shift(torch.from_numpy(sigmas), shift).numpy()\n\n        self.sigmas = torch.from_numpy(np.concatenate([sigmas, [0.0]])).to(device=device, dtype=dtype)\n        self.timesteps = torch.from_numpy(timesteps).to(device=device, dtype=dtype)\n        self.init_noise_sigma = self.sigmas.max().item() if self.sigmas.numel() > 0 else 1.0\n\n        self._step_index = None\n        self._begin_index = None\n        self.model_outputs = []\n        self.x0_outputs = []\n        self.prev_sigmas = []\n\n    def index_for_timestep(self, timestep, schedule_timesteps=None):\n        from .scheduler_utils import index_for_timestep\n        if schedule_timesteps is None:\n            schedule_timesteps = self.timesteps\n        return index_for_timestep(timestep, schedule_timesteps)\n\n    def add_noise(\n        self,\n        original_samples: torch.Tensor,\n        noise: torch.Tensor,\n        timesteps: torch.Tensor,\n    ) -> torch.Tensor:\n        from .scheduler_utils import add_noise_to_sample\n        return add_noise_to_sample(original_samples, noise, self.sigmas, timesteps, self.timesteps)\n\n    def scale_model_input(self, sample: torch.Tensor, timestep: Union[float, torch.Tensor]) -> torch.Tensor:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n        if self.config.prediction_type == \"flow_prediction\":\n            return sample\n        sigma = self.sigmas[self._step_index]\n        sample = sample / ((sigma**2 + 1) ** 0.5)\n        return sample\n\n    def step(\n        self,\n        model_output: torch.Tensor,\n        timestep: Union[float, torch.Tensor],\n        sample: torch.Tensor,\n        return_dict: bool = True,\n    ) -> Union[SchedulerOutput, Tuple]:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n\n        step_index = self._step_index\n        sigma = self.sigmas[step_index]\n        sigma_next = self.sigmas[step_index + 1]\n\n        h = -torch.log(sigma_next / sigma) if sigma > 0 and sigma_next > 0 else torch.zeros_like(sigma)\n        exp_h = torch.exp(-h)\n\n        # RECONSTRUCT X0\n        if self.config.prediction_type == \"epsilon\":\n            x0 = sample - sigma * model_output\n        elif self.config.prediction_type == \"sample\":\n            x0 = model_output\n        elif self.config.prediction_type == \"v_prediction\":\n            alpha_t = 1.0 / (sigma**2 + 1) ** 0.5\n            sigma_t = sigma * alpha_t\n            x0 = alpha_t * sample - sigma_t * model_output\n        elif self.config.prediction_type == \"flow_prediction\":\n            x0 = sample - sigma * model_output\n        else:\n            x0 = model_output\n\n        self.model_outputs.append(model_output)\n        self.x0_outputs.append(x0)\n        self.prev_sigmas.append(sigma)\n\n        variant = self.config.variant\n\n        if sigma_next == 0:\n            x_next = x0\n        else:\n            # Lawson coefficients (anchored at x0)\n            if variant == \"lawson2a_2s\":\n                if len(self.x0_outputs) < 2:\n                    res = (1 - exp_h) / h * x0\n                else:\n                    x0_1, x0_2 = self.x0_outputs[-2:]\n                    # b2 = exp(-h/2)\n                    # b1 = phi(1) - b2? No, Lawson is different.\n                    # But if we want it to be a valid exponential integrator,\n                    # we use the Lawson-specific weighting.\n                    res = torch.exp(-h/2) * x0_2\n            elif variant == \"lawson2b_2s\":\n                if len(self.x0_outputs) < 2:\n                    res = (1 - exp_h) / h * x0\n                else:\n                    x0_1, x0_2 = self.x0_outputs[-2:]\n                    res = 0.5 * exp_h * x0_1 + 0.5 * x0_2\n            elif variant == \"lawson4_4s\":\n                if len(self.x0_outputs) < 4:\n                    res = (1 - exp_h) / h * x0\n                else:\n                    e1, e2, e3, e4 = self.x0_outputs[-4:]\n                    b1 = (1/6) * exp_h\n                    b2 = (1/3) * torch.exp(-h/2)\n                    b3 = (1/3) * torch.exp(-h/2)\n                    b4 = 1/6\n                    res = b1 * e1 + b2 * e2 + b3 * e3 + b4 * e4\n            else:\n                res = (1 - exp_h) / h * x0\n\n            # Update\n            x_next = exp_h * sample + h * res\n\n        self._step_index += 1\n\n        # Buffer control\n        limit = 4 if variant == \"lawson4_4s\" else 2\n        if len(self.x0_outputs) > limit:\n            self.x0_outputs.pop(0)\n            self.model_outputs.pop(0)\n            self.prev_sigmas.pop(0)\n\n        if not return_dict:\n            return (x_next,)\n\n        return SchedulerOutput(prev_sample=x_next)\n\n    def _init_step_index(self, timestep):\n        if self.begin_index is None:\n            if isinstance(timestep, torch.Tensor):\n                timestep = timestep.to(self.timesteps.device)\n            self._step_index = self.index_for_timestep(timestep)\n        else:\n            self._step_index = self._begin_index\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/res4lyf/linear_rk_scheduler.py",
    "content": "from typing import List, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.schedulers.scheduling_utils import SchedulerMixin, SchedulerOutput\n\n\nclass LinearRKScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    LinearRKScheduler: Standard explicit Runge-Kutta integrators.\n    Supports Ralston, Midpoint, Heun, Kutta, and standard RK4.\n    Adapted from the RES4LYF repository.\n    \"\"\"\n\n    order = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.00085,\n        beta_end: float = 0.012,\n        beta_schedule: str = \"linear\",\n        trained_betas: Optional[Union[np.ndarray, List[float]]] = None,\n        prediction_type: str = \"epsilon\",\n        variant: str = \"rk4\",  # euler, heun, rk2, rk3, rk4, ralston, midpoint\n        use_karras_sigmas: bool = False,\n        use_exponential_sigmas: bool = False,\n        use_beta_sigmas: bool = False,\n        use_flow_sigmas: bool = False,\n        sigma_min: Optional[float] = None,\n        sigma_max: Optional[float] = None,\n        rho: float = 7.0,\n        shift: Optional[float] = None,\n        base_shift: float = 0.5,\n        max_shift: float = 1.15,\n        use_dynamic_shifting: bool = False,\n        timestep_spacing: str = \"linspace\",\n        clip_sample: bool = False,\n        sample_max_value: float = 1.0,\n        set_alpha_to_one: bool = False,\n        skip_prk_steps: bool = False,\n        interpolation_type: str = \"linear\",\n        steps_offset: int = 0,\n        timestep_type: str = \"discrete\",\n        rescale_betas_zero_snr: bool = False,\n        final_sigmas_type: str = \"zero\",\n    ):\n        if trained_betas is not None:\n            self.betas = torch.tensor(trained_betas, dtype=torch.float32)\n        elif beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        else:\n            raise NotImplementedError(f\"{beta_schedule} is not implemented\")\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n\n        self.num_inference_steps = None\n        self.timesteps = torch.from_numpy(np.arange(0, num_train_timesteps)[::-1].copy())\n        self.sigmas = None\n        self.init_noise_sigma = 1.0\n\n        # Internal state\n        self.model_outputs = []\n        self.sample_at_start_of_step = None\n        self._step_index = None\n\n    def _get_tableau(self):\n        v = str(self.config.variant).lower().strip()\n        if v in [\"ralston\", \"ralston_2s\"]:\n            a, b, c = [[2 / 3]], [1 / 4, 3 / 4], [0, 2 / 3]\n        elif v in [\"midpoint\", \"midpoint_2s\"]:\n            a, b, c = [[1 / 2]], [0, 1], [0, 1 / 2]\n        elif v in [\"heun\", \"heun_2s\"]:\n            a, b, c = [[1]], [1 / 2, 1 / 2], [0, 1]\n        elif v == \"heun_3s\":\n            a, b, c = [[1 / 3], [0, 2 / 3]], [1 / 4, 0, 3 / 4], [0, 1 / 3, 2 / 3]\n        elif v in [\"kutta\", \"kutta_3s\"]:\n            a, b, c = [[1 / 2], [-1, 2]], [1 / 6, 2 / 3, 1 / 6], [0, 1 / 2, 1]\n        elif v in [\"rk4\", \"rk4_4s\"]:\n            a, b, c = [[1 / 2], [0, 1 / 2], [0, 0, 1]], [1 / 6, 1 / 3, 1 / 3, 1 / 6], [0, 1 / 2, 1 / 2, 1]\n        elif v in [\"rk2\", \"heun\"]:\n            a, b, c = [[1]], [1 / 2, 1 / 2], [0, 1]\n        elif v == \"rk3\":\n            a, b, c = [[1 / 2], [-1, 2]], [1 / 6, 2 / 3, 1 / 6], [0, 1 / 2, 1]\n        elif v == \"euler\":\n            a, b, c = [], [1], [0]\n        else:\n            raise ValueError(f\"Unknown variant: {v}\")\n\n        # Expand 'a' to full matrix\n        stages = len(c)\n        full_a = np.zeros((stages, stages))\n        for i, row in enumerate(a):\n            full_a[i + 1, : len(row)] = row\n\n        return full_a, np.array(b), np.array(c)\n\n    def set_timesteps(\n        self,\n        num_inference_steps: int,\n        device: Union[str, torch.device] = None,\n        mu: Optional[float] = None, dtype: torch.dtype = torch.float32):\n        self.num_inference_steps = num_inference_steps\n\n        # 1. Spacing\n        if self.config.timestep_spacing == \"linspace\":\n            timesteps = np.linspace(0, self.config.num_train_timesteps - 1, num_inference_steps, dtype=float)[::-1].copy()\n        elif self.config.timestep_spacing == \"leading\":\n            step_ratio = self.config.num_train_timesteps // num_inference_steps\n            timesteps = (np.arange(0, num_inference_steps) * step_ratio).round()[::-1].copy().astype(float)\n        elif self.config.timestep_spacing == \"trailing\":\n            step_ratio = self.config.num_train_timesteps / num_inference_steps\n            timesteps = (np.arange(self.config.num_train_timesteps, 0, -step_ratio)).round().copy().astype(float)\n            timesteps -= 1\n        else:\n            raise ValueError(f\"timestep_spacing must be one of 'linspace', 'leading', or 'trailing', got {self.config.timestep_spacing}\")\n\n        sigmas = np.array(((1 - self.alphas_cumprod) / self.alphas_cumprod) ** 0.5)\n        if self.config.interpolation_type == \"linear\":\n            sigmas = np.interp(timesteps, np.arange(len(sigmas)), sigmas)\n        elif self.config.interpolation_type == \"log_linear\":\n            sigmas = np.exp(np.interp(timesteps, np.arange(len(sigmas)), np.log(sigmas)))\n        else:\n            raise ValueError(f\"interpolation_type must be one of 'linear' or 'log_linear', got {self.config.interpolation_type}\")\n\n        # 2. Sigma Schedule\n        if self.config.use_karras_sigmas:\n            sigma_min = self.config.sigma_min if self.config.sigma_min is not None else sigmas[-1]\n            sigma_max = self.config.sigma_max if self.config.sigma_max is not None else sigmas[0]\n            rho = self.config.rho\n            ramp = np.linspace(0, 1, num_inference_steps)\n            sigmas = (sigma_max ** (1 / rho) + ramp * (sigma_min ** (1 / rho) - sigma_max ** (1 / rho))) ** rho\n        elif self.config.use_exponential_sigmas:\n            sigma_min = self.config.sigma_min if self.config.sigma_min is not None else sigmas[-1]\n            sigma_max = self.config.sigma_max if self.config.sigma_max is not None else sigmas[0]\n            sigmas = np.exp(np.linspace(np.log(sigma_max), np.log(sigma_min), num_inference_steps))\n        elif self.config.use_beta_sigmas:\n            sigma_min = self.config.sigma_min if self.config.sigma_min is not None else sigmas[-1]\n            sigma_max = self.config.sigma_max if self.config.sigma_max is not None else sigmas[0]\n            alpha, beta = 0.6, 0.6\n            ramp = np.linspace(0, 1, num_inference_steps)\n            try:\n                import torch.distributions as dist\n\n                b = dist.Beta(alpha, beta)\n                ramp = b.sample((num_inference_steps,)).sort().values.numpy()\n            except Exception:\n                pass\n            sigmas = sigma_max * (1 - ramp) + sigma_min * ramp\n        elif self.config.use_flow_sigmas:\n            sigmas = np.linspace(1.0, 1 / 1000, num_inference_steps)\n\n        # 3. Shifting\n        if self.config.use_dynamic_shifting and mu is not None:\n            sigmas = mu * sigmas / (1 + (mu - 1) * sigmas)\n        elif self.config.shift is not None:\n            sigmas = self.config.shift * sigmas / (1 + (self.config.shift - 1) * sigmas)\n\n        # We handle multi-history expansion\n        _a_mat, _b_vec, c_vec = self._get_tableau()\n        len(c_vec)\n\n        sigmas_expanded = []\n        for i in range(len(sigmas) - 1):\n            s_curr = sigmas[i]\n            s_next = sigmas[i + 1]\n            for c_val in c_vec:\n                sigmas_expanded.append(s_curr + c_val * (s_next - s_curr))\n        sigmas_expanded.append(0.0)\n\n        sigmas_interpolated = np.array(sigmas_expanded)\n        # Linear remapping for Flow Matching\n        timesteps_expanded = sigmas_interpolated * self.config.num_train_timesteps\n\n        self.sigmas = torch.from_numpy(sigmas_interpolated).to(device=device, dtype=dtype)\n        self.timesteps = torch.from_numpy(timesteps_expanded + self.config.steps_offset).to(device=device, dtype=dtype)\n        self.init_noise_sigma = self.sigmas.max().item() if self.sigmas.numel() > 0 else 1.0\n\n        self.model_outputs = []\n        self.sample_at_start_of_step = None\n        self._step_index = None\n\n    @property\n    def step_index(self):\n        \"\"\"\n        The index counter for the current timestep. It will increase 1 after each scheduler step.\n        \"\"\"\n        return self._step_index\n\n    def index_for_timestep(self, timestep, schedule_timesteps=None):\n        from .scheduler_utils import index_for_timestep\n        if schedule_timesteps is None:\n            schedule_timesteps = self.timesteps\n        return index_for_timestep(timestep, schedule_timesteps)\n\n    def _init_step_index(self, timestep):\n        if self._step_index is None:\n            if isinstance(timestep, torch.Tensor):\n                timestep = timestep.to(self.timesteps.device)\n            self._step_index = self.index_for_timestep(timestep)\n\n    def scale_model_input(self, sample: torch.Tensor, timestep: Union[float, torch.Tensor]) -> torch.Tensor:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n        if self.config.prediction_type == \"flow_prediction\":\n            return sample\n        sigma = self.sigmas[self._step_index]\n        return sample / ((sigma**2 + 1) ** 0.5)\n\n    def step(\n        self,\n        model_output: torch.Tensor,\n        timestep: Union[float, torch.Tensor],\n        sample: torch.Tensor,\n        return_dict: bool = True,\n    ) -> Union[SchedulerOutput, Tuple]:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n        a_mat, b_vec, c_vec = self._get_tableau()\n        num_stages = len(c_vec)\n\n        stage_index = self._step_index % num_stages\n        base_step_index = (self._step_index // num_stages) * num_stages\n\n        sigma_curr = self.sigmas[base_step_index]\n        sigma_next_idx = min(base_step_index + num_stages, len(self.sigmas) - 1)\n        sigma_next = self.sigmas[sigma_next_idx]\n\n        if sigma_next <= 0:\n            sigma_t = self.sigmas[self._step_index]\n            denoised = sample - sigma_t * model_output if self.config.prediction_type == \"epsilon\" else model_output\n            prev_sample = denoised\n            self._step_index += 1\n            if not return_dict:\n                return (prev_sample,)\n            return SchedulerOutput(prev_sample=prev_sample)\n\n        h = sigma_next - sigma_curr\n        sigma_t = self.sigmas[self._step_index]\n\n        if self.config.prediction_type == \"epsilon\":\n            denoised = sample - sigma_t * model_output\n        elif self.config.prediction_type == \"v_prediction\":\n            alpha_t = 1 / (sigma_t**2 + 1) ** 0.5\n            sigma_actual = sigma_t * alpha_t\n            denoised = alpha_t * sample - sigma_actual * model_output\n        elif self.config.prediction_type == \"flow_prediction\":\n            denoised = sample - sigma_t * model_output\n        elif self.config.prediction_type == \"sample\":\n            denoised = model_output\n        else:\n            raise ValueError(f\"prediction_type {self.config.prediction_type} is not supported.\")\n\n        if self.config.clip_sample:\n            denoised = denoised.clamp(-self.config.sample_max_value, self.config.sample_max_value)\n\n        # derivative = (x - x0) / sigma\n        derivative = (sample - denoised) / sigma_t if sigma_t > 1e-6 else torch.zeros_like(sample)\n\n        if self.sample_at_start_of_step is None:\n            if stage_index > 0:\n                # Mid-step fallback for Img2Img/Inpainting\n                sigma_next_t = self.sigmas[self._step_index + 1]\n                dt = sigma_next_t - sigma_t\n                prev_sample = sample + dt * derivative\n                self._step_index += 1\n                if not return_dict:\n                    return (prev_sample,)\n                return SchedulerOutput(prev_sample=prev_sample)\n\n            self.sample_at_start_of_step = sample\n            self.model_outputs = [derivative] * stage_index\n\n        if stage_index == 0:\n            self.model_outputs = [derivative]\n            self.sample_at_start_of_step = sample\n        else:\n            self.model_outputs.append(derivative)\n\n        next_stage_idx = stage_index + 1\n        if next_stage_idx < num_stages:\n            sum_ak = 0\n            for j in range(len(self.model_outputs)):\n                sum_ak = sum_ak + a_mat[next_stage_idx][j] * self.model_outputs[j]\n\n            sigma_next_stage = self.sigmas[self._step_index + 1]\n\n            # Update x (unnormalized sample)\n            prev_sample = self.sample_at_start_of_step + (sigma_next_stage - sigma_curr) * sum_ak\n        else:\n            sum_bk = 0\n            for j in range(len(self.model_outputs)):\n                sum_bk = sum_bk + b_vec[j] * self.model_outputs[j]\n\n            prev_sample = self.sample_at_start_of_step + h * sum_bk\n\n            self.model_outputs = []\n            self.sample_at_start_of_step = None\n\n        self._step_index += 1\n\n        if not return_dict:\n            return (prev_sample,)\n        return SchedulerOutput(prev_sample=prev_sample)\n\n    def add_noise(\n        self,\n        original_samples: torch.Tensor,\n        noise: torch.Tensor,\n        timesteps: torch.Tensor,\n    ) -> torch.Tensor:\n        from .scheduler_utils import add_noise_to_sample\n        return add_noise_to_sample(original_samples, noise, self.sigmas, timesteps, self.timesteps)\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/res4lyf/lobatto_scheduler.py",
    "content": "from typing import List, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.schedulers.scheduling_utils import SchedulerMixin, SchedulerOutput\n\n\n# pylint: disable=no-member\nclass LobattoScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    LobattoScheduler: High-accuracy implicit integrators from the Lobatto family.\n    Supports variants IIIA, IIIB, IIIC, IIIC*, IIID (orders 2, 3, 4).\n    Adapted from the RES4LYF repository.\n    \"\"\"\n\n    order = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.00085,\n        beta_end: float = 0.012,\n        beta_schedule: str = \"linear\",\n        trained_betas: Optional[Union[np.ndarray, List[float]]] = None,\n        prediction_type: str = \"epsilon\",\n        variant: str = \"lobatto_iiia_3s\",  # Available: iiia, iiib, iiic\n        use_karras_sigmas: bool = False,\n        use_exponential_sigmas: bool = False,\n        use_beta_sigmas: bool = False,\n        use_flow_sigmas: bool = False,\n        sigma_min: Optional[float] = None,\n        sigma_max: Optional[float] = None,\n        rho: float = 7.0,\n        shift: Optional[float] = None,\n        base_shift: float = 0.5,\n        max_shift: float = 1.15,\n        use_dynamic_shifting: bool = False,\n        timestep_spacing: str = \"linspace\",\n        clip_sample: bool = False,\n        sample_max_value: float = 1.0,\n        set_alpha_to_one: bool = False,\n        skip_prk_steps: bool = False,\n        interpolation_type: str = \"linear\",\n        steps_offset: int = 0,\n        timestep_type: str = \"discrete\",\n        rescale_betas_zero_snr: bool = False,\n        final_sigmas_type: str = \"zero\",\n    ):\n        if trained_betas is not None:\n            self.betas = torch.tensor(trained_betas, dtype=torch.float32)\n        elif beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        else:\n            raise NotImplementedError(f\"{beta_schedule} is not implemented\")\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n\n        self.num_inference_steps = None\n        self.timesteps = torch.from_numpy(np.arange(0, num_train_timesteps)[::-1].copy())\n        self.sigmas = None\n        self.init_noise_sigma = 1.0\n\n        # Internal state\n        self.model_outputs = []\n        self.sample_at_start_of_step = None\n        self._step_index = None\n\n    def _get_tableau(self):\n        v = self.config.variant\n        r5 = 5**0.5\n        if v == \"lobatto_iiia_2s\":\n            a, b, c = [[0, 0], [1 / 2, 1 / 2]], [1 / 2, 1 / 2], [0, 1]\n        elif v == \"lobatto_iiia_3s\":\n            a, b, c = [[0, 0, 0], [5 / 24, 1 / 3, -1 / 24], [1 / 6, 2 / 3, 1 / 6]], [1 / 6, 2 / 3, 1 / 6], [0, 1 / 2, 1]\n        elif v == \"lobatto_iiia_4s\":\n            a = [[0, 0, 0, 0], [(11 + r5) / 120, (25 - r5) / 120, (25 - 13 * r5) / 120, (-1 + r5) / 120], [(11 - r5) / 120, (25 + 13 * r5) / 120, (25 + r5) / 120, (-1 - r5) / 120], [1 / 12, 5 / 12, 5 / 12, 1 / 12]]\n            b = [1 / 12, 5 / 12, 5 / 12, 1 / 12]\n            c = [0, (5 - r5) / 10, (5 + r5) / 10, 1]\n        elif v == \"lobatto_iiib_2s\":\n            a, b, c = [[1 / 2, 0], [1 / 2, 0]], [1 / 2, 1 / 2], [0, 1]\n        elif v == \"lobatto_iiib_3s\":\n            a, b, c = [[1 / 6, -1 / 6, 0], [1 / 6, 1 / 3, 0], [1 / 6, 5 / 6, 0]], [1 / 6, 2 / 3, 1 / 6], [0, 1 / 2, 1]\n        elif v == \"lobatto_iiic_2s\":\n            a, b, c = [[1 / 2, -1 / 2], [1 / 2, 1 / 2]], [1 / 2, 1 / 2], [0, 1]\n        elif v == \"lobatto_iiic_3s\":\n            a, b, c = [[1 / 6, -1 / 3, 1 / 6], [1 / 6, 5 / 12, -1 / 12], [1 / 6, 2 / 3, 1 / 6]], [1 / 6, 2 / 3, 1 / 6], [0, 1 / 2, 1]\n        elif v == \"kraaijevanger_spijker_2s\":\n            a, b, c = [[1 / 2, 0], [-1 / 2, 2]], [-1 / 2, 3 / 2], [1 / 2, 3 / 2]\n        elif v == \"qin_zhang_2s\":\n            a, b, c = [[1 / 4, 0], [1 / 2, 1 / 4]], [1 / 2, 1 / 2], [1 / 4, 3 / 4]\n        elif v == \"pareschi_russo_2s\":\n            gamma = 1 - 2**0.5 / 2\n            a, b, c = [[gamma, 0], [1 - 2 * gamma, gamma]], [1 / 2, 1 / 2], [gamma, 1 - gamma]\n        else:\n            raise ValueError(f\"Unknown variant: {v}\")\n        return np.array(a), np.array(b), np.array(c)\n\n    def set_timesteps(\n        self,\n        num_inference_steps: int,\n        device: Union[str, torch.device] = None,\n        mu: Optional[float] = None, dtype: torch.dtype = torch.float32):\n        self.num_inference_steps = num_inference_steps\n\n        # 1. Spacing\n        if self.config.timestep_spacing == \"linspace\":\n            timesteps = np.linspace(0, self.config.num_train_timesteps - 1, num_inference_steps, dtype=float)[::-1].copy()\n        elif self.config.timestep_spacing == \"leading\":\n            step_ratio = self.config.num_train_timesteps // num_inference_steps\n            timesteps = (np.arange(0, num_inference_steps) * step_ratio).round()[::-1].copy().astype(float)\n        elif self.config.timestep_spacing == \"trailing\":\n            step_ratio = self.config.num_train_timesteps / num_inference_steps\n            timesteps = (np.arange(self.config.num_train_timesteps, 0, -step_ratio)).round().copy().astype(float)\n            timesteps -= 1\n        else:\n            raise ValueError(f\"timestep_spacing must be one of 'linspace', 'leading', or 'trailing', got {self.config.timestep_spacing}\")\n\n        sigmas = np.array(((1 - self.alphas_cumprod) / self.alphas_cumprod) ** 0.5)\n        if self.config.interpolation_type == \"linear\":\n            sigmas = np.interp(timesteps, np.arange(len(sigmas)), sigmas)\n        elif self.config.interpolation_type == \"log_linear\":\n            sigmas = np.exp(np.interp(timesteps, np.arange(len(sigmas)), np.log(sigmas)))\n        else:\n            raise ValueError(f\"interpolation_type must be one of 'linear' or 'log_linear', got {self.config.interpolation_type}\")\n\n        # 2. Sigma Schedule\n        if self.config.use_karras_sigmas:\n            sigma_min = self.config.sigma_min if self.config.sigma_min is not None else sigmas[-1]\n            sigma_max = self.config.sigma_max if self.config.sigma_max is not None else sigmas[0]\n            rho = self.config.rho\n            ramp = np.linspace(0, 1, num_inference_steps)\n            sigmas = (sigma_max ** (1 / rho) + ramp * (sigma_min ** (1 / rho) - sigma_max ** (1 / rho))) ** rho\n        elif self.config.use_exponential_sigmas:\n            sigma_min = self.config.sigma_min if self.config.sigma_min is not None else sigmas[-1]\n            sigma_max = self.config.sigma_max if self.config.sigma_max is not None else sigmas[0]\n            sigmas = np.exp(np.linspace(np.log(sigma_max), np.log(sigma_min), num_inference_steps))\n        elif self.config.use_beta_sigmas:\n            sigma_min = self.config.sigma_min if self.config.sigma_min is not None else sigmas[-1]\n            sigma_max = self.config.sigma_max if self.config.sigma_max is not None else sigmas[0]\n            alpha, beta = 0.6, 0.6\n            ramp = np.linspace(0, 1, num_inference_steps)\n            try:\n                import torch.distributions as dist\n\n                b = dist.Beta(alpha, beta)\n                ramp = b.sample((num_inference_steps,)).sort().values.numpy()\n            except Exception:\n                pass\n            sigmas = sigma_max * (1 - ramp) + sigma_min * ramp\n        elif self.config.use_flow_sigmas:\n            sigmas = np.linspace(1.0, 1 / 1000, num_inference_steps)\n\n        # 3. Shifting\n        if self.config.use_dynamic_shifting and mu is not None:\n            sigmas = mu * sigmas / (1 + (mu - 1) * sigmas)\n        elif self.config.shift is not None:\n            sigmas = self.config.shift * sigmas / (1 + (self.config.shift - 1) * sigmas)\n\n        # We handle multi-history expansion\n        _a_mat, _b_vec, c_vec = self._get_tableau()\n        len(c_vec)\n\n        sigmas_expanded = []\n        for i in range(len(sigmas) - 1):\n            s_curr = sigmas[i]\n            s_next = sigmas[i + 1]\n            for c_val in c_vec:\n                sigmas_expanded.append(s_curr + c_val * (s_next - s_curr))\n        sigmas_expanded.append(0.0)  # Add the final sigma=0 for the last step\n\n        sigmas_interpolated = np.array(sigmas_expanded)\n        # Linear remapping for Flow Matching\n        timesteps_expanded = sigmas_interpolated * self.config.num_train_timesteps\n\n        self.sigmas = torch.from_numpy(sigmas_interpolated).to(device=device, dtype=dtype)\n        self.timesteps = torch.from_numpy(timesteps_expanded + self.config.steps_offset).to(device=device, dtype=dtype)\n        self.init_noise_sigma = self.sigmas.max().item() if self.sigmas.numel() > 0 else 1.0\n\n        self.model_outputs = []\n        self.sample_at_start_of_step = None\n        self._step_index = None\n\n    @property\n    def step_index(self):\n        \"\"\"\n        The index counter for the current timestep. It will increase 1 after each scheduler step.\n        \"\"\"\n        return self._step_index\n\n    def index_for_timestep(self, timestep, schedule_timesteps=None):\n        from .scheduler_utils import index_for_timestep\n        if schedule_timesteps is None:\n            schedule_timesteps = self.timesteps\n        return index_for_timestep(timestep, schedule_timesteps)\n\n    def _init_step_index(self, timestep):\n        if self._step_index is None:\n            if isinstance(timestep, torch.Tensor):\n                timestep = timestep.to(self.timesteps.device)\n            self._step_index = self.index_for_timestep(timestep)\n\n    def scale_model_input(self, sample: torch.Tensor, timestep: Union[float, torch.Tensor]) -> torch.Tensor:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n        if self.config.prediction_type == \"flow_prediction\":\n            return sample\n        sigma = self.sigmas[self._step_index]\n        return sample / ((sigma**2 + 1) ** 0.5)\n\n    def step(\n        self,\n        model_output: torch.Tensor,\n        timestep: Union[float, torch.Tensor],\n        sample: torch.Tensor,\n        return_dict: bool = True,\n    ) -> Union[SchedulerOutput, Tuple]:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n        a_mat, b_vec, c_vec = self._get_tableau()\n        num_stages = len(c_vec)\n\n        stage_index = self._step_index % num_stages\n        base_step_index = (self._step_index // num_stages) * num_stages\n\n        sigma_curr = self.sigmas[base_step_index]\n        sigma_next_idx = min(base_step_index + num_stages, len(self.sigmas) - 1)\n        sigma_next = self.sigmas[sigma_next_idx]\n\n        if sigma_next <= 0:\n            sigma_t = self.sigmas[self._step_index]\n            denoised = sample - sigma_t * model_output if self.config.prediction_type == \"epsilon\" else model_output\n            prev_sample = denoised\n            self._step_index += 1\n            if not return_dict:\n                return (prev_sample,)\n            return SchedulerOutput(prev_sample=prev_sample)\n\n        h = sigma_next - sigma_curr\n        sigma_t = self.sigmas[self._step_index]\n\n        if self.config.prediction_type == \"epsilon\":\n            denoised = sample - sigma_t * model_output\n        elif self.config.prediction_type == \"v_prediction\":\n            alpha_t = 1 / (sigma_t**2 + 1) ** 0.5\n            sigma_actual = sigma_t * alpha_t\n            denoised = alpha_t * sample - sigma_actual * model_output\n        elif self.config.prediction_type == \"flow_prediction\":\n            denoised = sample - sigma_t * model_output\n        elif self.config.prediction_type == \"sample\":\n            denoised = model_output\n        else:\n            raise ValueError(f\"prediction_type error: {getattr(self.config, 'prediction_type', 'epsilon')}\")\n\n        if self.config.clip_sample:\n            denoised = denoised.clamp(-self.config.sample_max_value, self.config.sample_max_value)\n\n        # derivative = (x - x0) / sigma\n        derivative = (sample - denoised) / sigma_t if sigma_t > 1e-6 else torch.zeros_like(sample)\n\n        if self.sample_at_start_of_step is None:\n            if stage_index > 0:\n                # Mid-step fallback for Img2Img/Inpainting\n                sigma_next_t = self.sigmas[self._step_index + 1]\n                dt = sigma_next_t - sigma_t\n                prev_sample = sample + dt * derivative\n                self._step_index += 1\n                if not return_dict:\n                    return (prev_sample,)\n                return SchedulerOutput(prev_sample=prev_sample)\n\n            self.sample_at_start_of_step = sample\n            self.model_outputs = [derivative] * stage_index\n\n        if stage_index == 0:\n            self.model_outputs = [derivative]\n            self.sample_at_start_of_step = sample\n        else:\n            self.model_outputs.append(derivative)\n\n        next_stage_idx = stage_index + 1\n        if next_stage_idx < num_stages:\n            sum_ak = 0\n            for j in range(len(self.model_outputs)):\n                sum_ak = sum_ak + a_mat[next_stage_idx][j] * self.model_outputs[j]\n\n            sigma_next_stage = self.sigmas[self._step_index + 1]\n\n            # Update x (unnormalized sample)\n            prev_sample = self.sample_at_start_of_step + (sigma_next_stage - sigma_curr) * sum_ak\n        else:\n            sum_bk = 0\n            for j in range(len(self.model_outputs)):\n                sum_bk = sum_bk + b_vec[j] * self.model_outputs[j]\n\n            prev_sample = self.sample_at_start_of_step + h * sum_bk\n\n            self.model_outputs = []\n            self.sample_at_start_of_step = None\n\n        self._step_index += 1\n\n        if not return_dict:\n            return (prev_sample,)\n        return SchedulerOutput(prev_sample=prev_sample)\n\n    def add_noise(\n        self,\n        original_samples: torch.Tensor,\n        noise: torch.Tensor,\n        timesteps: torch.Tensor,\n    ) -> torch.Tensor:\n        from .scheduler_utils import add_noise_to_sample\n        return add_noise_to_sample(original_samples, noise, self.sigmas, timesteps, self.timesteps)\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/res4lyf/pec_scheduler.py",
    "content": "# Copyright 2025 The RES4LYF Team (Clybius) and The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nfrom typing import ClassVar, List, Literal, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.schedulers.scheduling_utils import KarrasDiffusionSchedulers, SchedulerMixin, SchedulerOutput\n\nfrom diffusers.utils import logging\n\nfrom .phi_functions import Phi\n\nlogger = logging.get_logger(__name__)\n\n\nclass PECScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    Predictor-Corrector (PEC) scheduler.\n    \"\"\"\n\n    _compatibles: ClassVar[List[str]] = [e.name for e in KarrasDiffusionSchedulers]\n    order = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.00085,\n        beta_end: float = 0.012,\n        beta_schedule: str = \"linear\",\n        trained_betas: Optional[Union[np.ndarray, List[float]]] = None,\n        prediction_type: str = \"epsilon\",\n        variant: Literal[\"pec423_2h2s\", \"pec433_2h3s\"] = \"pec423_2h2s\",\n        use_analytic_solution: bool = True,\n        timestep_spacing: str = \"linspace\",\n        steps_offset: int = 0,\n        rescale_betas_zero_snr: bool = False,\n        use_karras_sigmas: bool = False,\n        use_exponential_sigmas: bool = False,\n        use_beta_sigmas: bool = False,\n        use_flow_sigmas: bool = False,\n        shift: float = 1.0,\n        use_dynamic_shifting: bool = False,\n        base_shift: float = 0.5,\n        max_shift: float = 1.15,\n        base_image_seq_len: int = 256,\n        max_image_seq_len: int = 4096,\n    ):\n        from .scheduler_utils import betas_for_alpha_bar, rescale_zero_terminal_snr\n\n        if trained_betas is not None:\n            self.betas = torch.tensor(trained_betas, dtype=torch.float32)\n        elif beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        elif beta_schedule == \"squaredcos_cap_v2\":\n            self.betas = betas_for_alpha_bar(num_train_timesteps)\n        else:\n            raise NotImplementedError(f\"{beta_schedule} does not exist.\")\n\n        if rescale_betas_zero_snr:\n            self.betas = rescale_zero_terminal_snr(self.betas)\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n\n        # Buffer for multistep\n        self.model_outputs = []\n        self.x0_outputs = []\n        self.prev_sigmas = []\n        self._step_index = None\n        self._begin_index = None\n        self.init_noise_sigma = 1.0\n\n    @property\n    def step_index(self) -> Optional[int]:\n        return self._step_index\n\n    @property\n    def begin_index(self) -> Optional[int]:\n        return self._begin_index\n\n    def set_begin_index(self, begin_index: int = 0) -> None:\n        self._begin_index = begin_index\n\n    def set_timesteps(\n        self,\n        num_inference_steps: int,\n        device: Union[str, torch.device] = None,\n        mu: Optional[float] = None,\n        dtype: torch.dtype = torch.float32,\n    ):\n        from .scheduler_utils import (\n            apply_shift,\n            get_dynamic_shift,\n            get_sigmas_beta,\n            get_sigmas_exponential,\n            get_sigmas_flow,\n            get_sigmas_karras,\n        )\n\n        self.num_inference_steps = num_inference_steps\n\n        if self.config.timestep_spacing == \"linspace\":\n            timesteps = np.linspace(0, self.config.num_train_timesteps - 1, num_inference_steps, dtype=float)[::-1].copy()\n        elif self.config.timestep_spacing == \"leading\":\n            step_ratio = self.config.num_train_timesteps // self.num_inference_steps\n            timesteps = (np.arange(0, num_inference_steps) * step_ratio).round()[::-1].copy()\n            timesteps += self.config.steps_offset\n        elif self.config.timestep_spacing == \"trailing\":\n            step_ratio = self.config.num_train_timesteps / self.num_inference_steps\n            timesteps = (np.arange(self.config.num_train_timesteps, 0, -step_ratio)).round().copy()\n            timesteps -= 1\n        else:\n            raise ValueError(f\"timestep_spacing {self.config.timestep_spacing} is not supported.\")\n\n        sigmas = np.array(((1 - self.alphas_cumprod) / self.alphas_cumprod) ** 0.5)\n        sigmas = np.interp(timesteps, np.arange(0, len(sigmas)), sigmas)\n\n        if self.config.use_karras_sigmas:\n            sigmas = get_sigmas_karras(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_exponential_sigmas:\n            sigmas = get_sigmas_exponential(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_beta_sigmas:\n            sigmas = get_sigmas_beta(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_flow_sigmas:\n            sigmas = get_sigmas_flow(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n\n        if self.config.shift != 1.0 or self.config.use_dynamic_shifting:\n            shift = self.config.shift\n            if self.config.use_dynamic_shifting and mu is not None:\n                shift = get_dynamic_shift(\n                    mu,\n                    self.config.base_shift,\n                    self.config.max_shift,\n                    self.config.base_image_seq_len,\n                    self.config.max_image_seq_len,\n                )\n            sigmas = apply_shift(torch.from_numpy(sigmas), shift).numpy()\n\n        self.sigmas = torch.from_numpy(np.concatenate([sigmas, [0.0]])).to(device=device, dtype=dtype)\n        self.timesteps = torch.from_numpy(timesteps).to(device=device, dtype=dtype)\n        self.init_noise_sigma = self.sigmas.max().item() if self.sigmas.numel() > 0 else 1.0\n\n        self._step_index = None\n        self._begin_index = None\n        self.model_outputs = []\n        self.x0_outputs = []\n        self.prev_sigmas = []\n\n    def index_for_timestep(self, timestep, schedule_timesteps=None):\n        from .scheduler_utils import index_for_timestep\n        if schedule_timesteps is None:\n            schedule_timesteps = self.timesteps\n        return index_for_timestep(timestep, schedule_timesteps)\n\n    def add_noise(\n        self,\n        original_samples: torch.Tensor,\n        noise: torch.Tensor,\n        timesteps: torch.Tensor,\n    ) -> torch.Tensor:\n        from .scheduler_utils import add_noise_to_sample\n        return add_noise_to_sample(original_samples, noise, self.sigmas, timesteps, self.timesteps)\n\n    def scale_model_input(self, sample: torch.Tensor, timestep: Union[float, torch.Tensor]) -> torch.Tensor:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n        if self.config.prediction_type == \"flow_prediction\":\n            return sample\n        sigma = self.sigmas[self._step_index]\n        return sample / ((sigma**2 + 1) ** 0.5)\n\n    def step(\n        self,\n        model_output: torch.Tensor,\n        timestep: Union[float, torch.Tensor],\n        sample: torch.Tensor,\n        return_dict: bool = True,\n    ) -> Union[SchedulerOutput, Tuple]:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n\n        step_index = self._step_index\n        sigma = self.sigmas[step_index]\n        sigma_next = self.sigmas[step_index + 1]\n\n        h = -torch.log(sigma_next / sigma) if sigma > 0 and sigma_next > 0 else torch.zeros_like(sigma)\n\n        # RECONSTRUCT X0\n        if self.config.prediction_type == \"epsilon\":\n            # This x0 is actually a * x0 in discrete NSR space\n            x0 = sample - sigma * model_output\n        elif self.config.prediction_type == \"sample\":\n            x0 = model_output\n        elif self.config.prediction_type == \"v_prediction\":\n            # This x0 is the true clean x0\n            alpha_t = 1.0 / (sigma**2 + 1) ** 0.5\n            sigma_t = sigma * alpha_t\n            x0 = alpha_t * sample - sigma_t * model_output\n        elif self.config.prediction_type == \"flow_prediction\":\n            x0 = sample - sigma * model_output\n        else:\n            x0 = model_output\n\n        self.model_outputs.append(model_output)\n        self.x0_outputs.append(x0)\n        self.prev_sigmas.append(sigma)\n\n        variant = self.config.variant\n        phi = Phi(h, [0], getattr(self.config, \"use_analytic_solution\", True))\n\n        if sigma_next == 0:\n            x_next = x0\n        else:\n            # PEC coefficients (anchored at x0)\n            if variant == \"pec423_2h2s\":\n                if len(self.x0_outputs) < 2:\n                    res = phi(1) * x0\n                else:\n                    x0_n, x0_p1 = self.x0_outputs[-2:]\n                    b2 = (1/3)*phi(2) + phi(3) + phi(4)\n                    b1 = phi(1) - b2\n                    res = b1 * x0_n + b2 * x0_p1\n            elif variant == \"pec433_2h3s\":\n                if len(self.x0_outputs) < 3:\n                    res = phi(1) * x0\n                else:\n                    x0_n, x0_p1, x0_p2 = self.x0_outputs[-3:]\n                    b3 = (1/3)*phi(2) + phi(3) + phi(4)\n                    b2 = 0\n                    b1 = phi(1) - b3\n                    res = b1 * x0_n + b2 * x0_p1 + b3 * x0_p2\n            else:\n                res = phi(1) * x0\n\n            # Update in x-space\n            x_next = torch.exp(-h) * sample + h * res\n\n        self._step_index += 1\n\n        # Buffer control\n        limit = 3 if variant == \"pec433_2h3s\" else 2\n        if len(self.x0_outputs) > limit:\n            self.x0_outputs.pop(0)\n            self.model_outputs.pop(0)\n            self.prev_sigmas.pop(0)\n\n        if not return_dict:\n            return (x_next,)\n\n        return SchedulerOutput(prev_sample=x_next)\n\n    def _init_step_index(self, timestep):\n        if self.begin_index is None:\n            self._step_index = self.index_for_timestep(timestep)\n        else:\n            self._step_index = self._begin_index\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/res4lyf/phi_functions.py",
    "content": "# Copyright 2025 The RES4LYF Team (Clybius) and The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport math\nfrom typing import Dict, List, Tuple, Union\n\nimport torch\nfrom mpmath import exp as mp_exp\nfrom mpmath import factorial as mp_factorial\nfrom mpmath import mp, mpf\n\n# Set precision for mpmath\nmp.dps = 80\n\n\ndef calculate_gamma(c2: float, c3: float) -> float:\n    \"\"\"Calculates the gamma parameter for RES 3s samplers.\"\"\"\n    return (3 * (c3**3) - 2 * c3) / (c2 * (2 - 3 * c2))\n\n\ndef _torch_factorial(n: int) -> float:\n    return float(math.factorial(n))\n\n\ndef phi_standard_torch(j: int, neg_h: torch.Tensor) -> torch.Tensor:\n    r\"\"\"\n    Standard implementation of phi functions using torch.\n    ϕj(-h) = (e^(-h) - \\sum_{k=0}^{j-1} (-h)^k / k!) / (-h)^j\n    For h=0, ϕj(0) = 1/j!\n    \"\"\"\n    assert j > 0\n\n    # Handle h=0 case\n    if torch.all(neg_h == 0):\n        return torch.full_like(neg_h, 1.0 / _torch_factorial(j))\n\n    # We use double precision for the series to avoid early overflow/precision loss\n    orig_dtype = neg_h.dtype\n    neg_h = neg_h.to(torch.float64)\n\n    # For very small h, use series expansion to avoid 0/0\n    if torch.any(torch.abs(neg_h) < 1e-4):\n        # 1/j! + z/(j+1)! + z^2/(2!(j+2)!) ...\n        result = torch.full_like(neg_h, 1.0 / _torch_factorial(j))\n        term = torch.full_like(neg_h, 1.0 / _torch_factorial(j))\n        for k in range(1, 5):\n            term = term * neg_h / (j + k)\n            result += term\n        return result.to(orig_dtype)\n\n    remainder = torch.zeros_like(neg_h)\n    for k in range(j):\n        remainder += (neg_h**k) / _torch_factorial(k)\n\n    phi_val = (torch.exp(neg_h) - remainder) / (neg_h**j)\n    return phi_val.to(orig_dtype)\n\n\ndef phi_mpmath_series(j: int, neg_h: float) -> float:\n    \"\"\"Arbitrary-precision phi_j(-h) via series definition.\"\"\"\n    j = int(j)\n    z = mpf(float(neg_h))\n\n    # Handle h=0 case: phi_j(0) = 1/j!\n    if z == 0:\n        return float(1.0 / mp_factorial(j))\n\n    s_val = mp.mpf(\"0\")\n    for k in range(j):\n        s_val += (z**k) / mp_factorial(k)\n    phi_val = (mp_exp(z) - s_val) / (z**j)\n    return float(phi_val)\n\n\nclass Phi:\n    \"\"\"\n    Class to manage phi function calculations and caching.\n    Supports both standard torch-based and high-precision mpmath-based solutions.\n    \"\"\"\n\n    def __init__(self, h: torch.Tensor, c: List[Union[float, mpf]], analytic_solution: bool = True):\n        self.h = h\n        self.c = c\n        self.cache: Dict[Tuple[int, int], Union[float, torch.Tensor]] = {}\n        self.analytic_solution = analytic_solution\n\n        if analytic_solution:\n            self.phi_f = phi_mpmath_series\n            self.h_mpf = mpf(float(h))\n            self.c_mpf = [mpf(float(c_val)) for c_val in c]\n        else:\n            self.phi_f = phi_standard_torch\n\n    def __call__(self, j: int, i: int = -1) -> Union[float, torch.Tensor]:\n        if (j, i) in self.cache:\n            return self.cache[(j, i)]\n\n        if i < 0:\n            c_val = 1.0\n        else:\n            c_val = self.c[i - 1]\n            if c_val == 0:\n                self.cache[(j, i)] = 0.0\n                return 0.0\n\n        if self.analytic_solution:\n            h_val = self.h_mpf\n            c_mapped = self.c_mpf[i - 1] if i >= 0 else 1.0\n\n            if j == 0:\n                result = float(mp_exp(-h_val * c_mapped))\n            else:\n                # Use the mpmath internal function for higher precision\n                z = -h_val * c_mapped\n                if z == 0:\n                    result = float(1.0 / mp_factorial(j))\n                else:\n                    s_val = mp.mpf(\"0\")\n                    for k in range(j):\n                        s_val += (z**k) / mp_factorial(k)\n                    result = float((mp_exp(z) - s_val) / (z**j))\n        else:\n            h_val = self.h\n            c_mapped = float(c_val)\n\n            if j == 0:\n                result = torch.exp(-h_val * c_mapped)\n            else:\n                result = self.phi_f(j, -h_val * c_mapped)\n\n        self.cache[(j, i)] = result\n        return result\n"
  },
  {
    "path": "modules/res4lyf/radau_iia_scheduler.py",
    "content": "from typing import List, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.schedulers.scheduling_utils import SchedulerMixin, SchedulerOutput\n\n\n# pylint: disable=no-member\nclass RadauIIAScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    RadauIIAScheduler: Fully implicit Runge-Kutta integrators.\n    Supports variants with 2, 3, 5, 7, 9, 11 stages.\n    Adapted from the RES4LYF repository.\n    \"\"\"\n\n    order = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.00085,\n        beta_end: float = 0.012,\n        beta_schedule: str = \"linear\",\n        trained_betas: Optional[Union[np.ndarray, List[float]]] = None,\n        prediction_type: str = \"epsilon\",\n        variant: str = \"radau_iia_3s\",  # 2s to 11s variants\n        use_karras_sigmas: bool = False,\n        use_exponential_sigmas: bool = False,\n        use_beta_sigmas: bool = False,\n        use_flow_sigmas: bool = False,\n        sigma_min: Optional[float] = None,\n        sigma_max: Optional[float] = None,\n        rho: float = 7.0,\n        shift: Optional[float] = None,\n        base_shift: float = 0.5,\n        max_shift: float = 1.15,\n        use_dynamic_shifting: bool = False,\n        timestep_spacing: str = \"linspace\",\n        clip_sample: bool = False,\n        sample_max_value: float = 1.0,\n        set_alpha_to_one: bool = False,\n        skip_prk_steps: bool = False,\n        interpolation_type: str = \"linear\",\n        steps_offset: int = 0,\n        timestep_type: str = \"discrete\",\n        rescale_betas_zero_snr: bool = False,\n        final_sigmas_type: str = \"zero\",\n    ):\n        if trained_betas is not None:\n            self.betas = torch.tensor(trained_betas, dtype=torch.float32)\n        elif beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        else:\n            raise NotImplementedError(f\"{beta_schedule} is not implemented\")\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n\n        self.num_inference_steps = None\n        self.timesteps = torch.from_numpy(np.arange(0, num_train_timesteps)[::-1].copy())\n        self.sigmas = None\n        self.init_noise_sigma = 1.0\n\n        # Internal state\n        self.model_outputs = []\n        self.sample_at_start_of_step = None\n        self._step_index = None\n\n    def _get_tableau(self):\n        v = self.config.variant\n        if v == \"radau_iia_2s\":\n            a, b, c = [[5 / 12, -1 / 12], [3 / 4, 1 / 4]], [3 / 4, 1 / 4], [1 / 3, 1]\n        elif v == \"radau_iia_3s\":\n            r6 = 6**0.5\n            a = [[11 / 45 - 7 * r6 / 360, 37 / 225 - 169 * r6 / 1800, -2 / 225 + r6 / 75], [37 / 225 + 169 * r6 / 1800, 11 / 45 + 7 * r6 / 360, -2 / 225 - r6 / 75], [4 / 9 - r6 / 36, 4 / 9 + r6 / 36, 1 / 9]]\n            b, c = [4 / 9 - r6 / 36, 4 / 9 + r6 / 36, 1 / 9], [2 / 5 - r6 / 10, 2 / 5 + r6 / 10, 1]\n        elif v == \"radau_iia_5s\":\n            a = [\n                [0.07299886, -0.02673533, 0.01867693, -0.01287911, 0.00504284],\n                [0.15377523, 0.14621487, -0.03644457, 0.02123306, -0.00793558],\n                [0.14006305, 0.29896713, 0.16758507, -0.03396910, 0.01094429],\n                [0.14489431, 0.27650007, 0.32579792, 0.12875675, -0.01570892],\n                [0.14371356, 0.28135602, 0.31182652, 0.22310390, 0.04000000],\n            ]\n            b = [0.14371356, 0.28135602, 0.31182652, 0.22310390, 0.04]\n            c = [0.05710420, 0.27684301, 0.58359043, 0.86024014, 1.0]\n        elif v == \"radau_iia_7s\":\n            a = [\n                [0.03754626, -0.01403933, 0.01035279, -0.00815832, 0.00638841, -0.00460233, 0.00182894],\n                [0.08014760, 0.08106206, -0.02123799, 0.01400029, -0.01023419, 0.00715347, -0.00281264],\n                [0.07206385, 0.17106835, 0.10961456, -0.02461987, 0.01476038, -0.00957526, 0.00367268],\n                [0.07570513, 0.15409016, 0.22710774, 0.11747819, -0.02381083, 0.01270999, -0.00460884],\n                [0.07391234, 0.16135561, 0.20686724, 0.23700712, 0.10308679, -0.01885414, 0.00585890],\n                [0.07470556, 0.15830722, 0.21415342, 0.21987785, 0.19875212, 0.06926550, -0.00811601],\n                [0.07449424, 0.15910212, 0.21235189, 0.22355491, 0.19047494, 0.11961374, 0.02040816],\n            ]\n            b = [0.07449424, 0.15910212, 0.21235189, 0.22355491, 0.19047494, 0.11961374, 0.02040816]\n            c = [0.02931643, 0.14807860, 0.33698469, 0.55867152, 0.76923386, 0.92694567, 1.0]\n        elif v == \"radau_iia_9s\":\n            a = [\n                [0.02278838, -0.00858964, 0.00645103, -0.00525753, 0.00438883, -0.00365122, 0.00294049, -0.00214927, 0.00085884],\n                [0.04890795, 0.05070205, -0.01352381, 0.00920937, -0.00715571, 0.00574725, -0.00454258, 0.00328816, -0.00130907],\n                [0.04374276, 0.10830189, 0.07291957, -0.01687988, 0.01070455, -0.00790195, 0.00599141, -0.00424802, 0.00167815],\n                [0.04624924, 0.09656073, 0.15429877, 0.08671937, -0.01845164, 0.01103666, -0.00767328, 0.00522822, -0.00203591],\n                [0.04483444, 0.10230685, 0.13821763, 0.18126393, 0.09043360, -0.01808506, 0.01019339, -0.00640527, 0.00242717],\n                [0.04565876, 0.09914547, 0.14574704, 0.16364828, 0.18594459, 0.08361326, -0.01580994, 0.00813825, -0.00291047],\n                [0.04520060, 0.10085371, 0.14194224, 0.17118947, 0.16978339, 0.16776829, 0.06707903, -0.01179223, 0.00360925],\n                [0.04541652, 0.10006040, 0.14365284, 0.16801908, 0.17556077, 0.15588627, 0.12889391, 0.04281083, -0.00493457],\n                [0.04535725, 0.10027665, 0.14319335, 0.16884698, 0.17413650, 0.15842189, 0.12359469, 0.07382701, 0.01234568],\n            ]\n            b = [0.04535725, 0.10027665, 0.14319335, 0.16884698, 0.17413650, 0.15842189, 0.12359469, 0.07382701, 0.01234568]\n            c = [0.01777992, 0.09132361, 0.21430848, 0.37193216, 0.54518668, 0.71317524, 0.85563374, 0.95536604, 1.0]\n        elif v == \"radau_iia_11s\":\n            a = [\n                [0.01528052, -0.00578250, 0.00438010, -0.00362104, 0.00309298, -0.00267283, 0.00230509, -0.00195565, 0.00159387, -0.00117286, 0.00046993],\n                [0.03288398, 0.03451351, -0.00928542, 0.00641325, -0.00509546, 0.00424609, -0.00358767, 0.00300683, -0.00243267, 0.00178278, -0.00071315],\n                [0.02933250, 0.07416243, 0.05114868, -0.01200502, 0.00777795, -0.00594470, 0.00480266, -0.00392360, 0.00312733, -0.00227314, 0.00090638],\n                [0.03111455, 0.06578995, 0.10929963, 0.06381052, -0.01385359, 0.00855744, -0.00630764, 0.00491336, -0.00381400, 0.00273343, -0.00108397],\n                [0.03005269, 0.07011285, 0.09714692, 0.13539160, 0.07147108, -0.01471024, 0.00873319, -0.00619941, 0.00459164, -0.00321333, 0.00126286],\n                [0.03072807, 0.06751926, 0.10334060, 0.12083526, 0.15032679, 0.07350932, -0.01451288, 0.00829665, -0.00561283, 0.00376623, -0.00145771],\n                [0.03029202, 0.06914472, 0.09972096, 0.12801064, 0.13493180, 0.15289670, 0.06975993, -0.01327455, 0.00725877, -0.00448439, 0.00168785],\n                [0.03056654, 0.06813851, 0.10188107, 0.12403361, 0.14211432, 0.13829395, 0.14289135, 0.06052636, -0.01107774, 0.00559867, -0.00198773],\n                [0.03040663, 0.06871881, 0.10066096, 0.12619527, 0.13848876, 0.14450774, 0.13065189, 0.12111401, 0.04655548, -0.00802620, 0.00243764],\n                [0.03048412, 0.06843925, 0.10124185, 0.12518732, 0.14011843, 0.14190387, 0.13500343, 0.11262870, 0.08930604, 0.02896966, -0.00331170],\n                [0.03046255, 0.06851684, 0.10108155, 0.12546269, 0.13968067, 0.14258278, 0.13393354, 0.11443306, 0.08565881, 0.04992304, 0.00826446],\n            ]\n            b = [0.03046255, 0.06851684, 0.10108155, 0.12546269, 0.13968067, 0.14258278, 0.13393354, 0.11443306, 0.08565881, 0.04992304, 0.00826446]\n            c = [0.01191761, 0.06173207, 0.14711145, 0.26115968, 0.39463985, 0.53673877, 0.67594446, 0.80097892, 0.90171099, 0.96997097, 1.0]\n        else:\n            raise ValueError(f\"Unknown variant: {v}\")\n        return np.array(a), np.array(b), np.array(c)\n\n    def set_timesteps(\n        self,\n        num_inference_steps: int,\n        device: Union[str, torch.device] = None,\n        mu: Optional[float] = None, dtype: torch.dtype = torch.float32):\n        self.num_inference_steps = num_inference_steps\n\n        # 1. Spacing\n        if self.config.timestep_spacing == \"linspace\":\n            timesteps = np.linspace(0, self.config.num_train_timesteps - 1, num_inference_steps, dtype=float)[::-1].copy()\n        elif self.config.timestep_spacing == \"leading\":\n            step_ratio = self.config.num_train_timesteps // num_inference_steps\n            timesteps = (np.arange(0, num_inference_steps) * step_ratio).round()[::-1].copy().astype(float)\n        elif self.config.timestep_spacing == \"trailing\":\n            step_ratio = self.config.num_train_timesteps / num_inference_steps\n            timesteps = (np.arange(self.config.num_train_timesteps, 0, -step_ratio)).round().copy().astype(float)\n            timesteps -= 1\n        else:\n            raise ValueError(f\"timestep_spacing must be one of 'linspace', 'leading', or 'trailing', got {self.config.timestep_spacing}\")\n\n        sigmas = np.array(((1 - self.alphas_cumprod) / self.alphas_cumprod) ** 0.5)\n        if self.config.interpolation_type == \"linear\":\n            sigmas = np.interp(timesteps, np.arange(len(sigmas)), sigmas)\n        elif self.config.interpolation_type == \"log_linear\":\n            sigmas = np.exp(np.interp(timesteps, np.arange(len(sigmas)), np.log(sigmas)))\n        else:\n            raise ValueError(f\"interpolation_type must be one of 'linear' or 'log_linear', got {self.config.interpolation_type}\")\n\n        # 2. Sigma Schedule\n        if self.config.use_karras_sigmas:\n            sigma_min = self.config.sigma_min if self.config.sigma_min is not None else sigmas[-1]\n            sigma_max = self.config.sigma_max if self.config.sigma_max is not None else sigmas[0]\n            rho = self.config.rho\n            ramp = np.linspace(0, 1, num_inference_steps)\n            sigmas = (sigma_max ** (1 / rho) + ramp * (sigma_min ** (1 / rho) - sigma_max ** (1 / rho))) ** rho\n        elif self.config.use_exponential_sigmas:\n            sigma_min = self.config.sigma_min if self.config.sigma_min is not None else sigmas[-1]\n            sigma_max = self.config.sigma_max if self.config.sigma_max is not None else sigmas[0]\n            sigmas = np.exp(np.linspace(np.log(sigma_max), np.log(sigma_min), num_inference_steps))\n        elif self.config.use_beta_sigmas:\n            sigma_min = self.config.sigma_min if self.config.sigma_min is not None else sigmas[-1]\n            sigma_max = self.config.sigma_max if self.config.sigma_max is not None else sigmas[0]\n            alpha, beta = 0.6, 0.6\n            ramp = np.linspace(0, 1, num_inference_steps)\n            try:\n                import torch.distributions as dist\n\n                b = dist.Beta(alpha, beta)\n                ramp = b.sample((num_inference_steps,)).sort().values.numpy()\n            except Exception:\n                pass\n            sigmas = sigma_max * (1 - ramp) + sigma_min * ramp\n        elif self.config.use_flow_sigmas:\n            sigmas = np.linspace(1.0, 1 / 1000, num_inference_steps)\n\n        # 3. Shifting\n        if self.config.use_dynamic_shifting and mu is not None:\n            sigmas = mu * sigmas / (1 + (mu - 1) * sigmas)\n        elif self.config.shift is not None:\n            sigmas = self.config.shift * sigmas / (1 + (self.config.shift - 1) * sigmas)\n\n        # We handle multi-history expansion\n        _a_mat, _b_vec, c_vec = self._get_tableau()\n        len(c_vec)\n\n        sigmas_expanded = []\n        for i in range(len(sigmas) - 1):\n            s_curr = sigmas[i]\n            s_next = sigmas[i + 1]\n            for c_val in c_vec:\n                sigmas_expanded.append(s_curr + c_val * (s_next - s_curr))\n        sigmas_expanded.append(0.0)\n\n        sigmas_interpolated = np.array(sigmas_expanded)\n        # Linear remapping for Flow Matching\n        timesteps_expanded = sigmas_interpolated * self.config.num_train_timesteps\n\n        self.sigmas = torch.from_numpy(sigmas_interpolated).to(device=device, dtype=dtype)\n        self.timesteps = torch.from_numpy(timesteps_expanded + self.config.steps_offset).to(device=device, dtype=dtype)\n        self.init_noise_sigma = self.sigmas.max().item() if self.sigmas.numel() > 0 else 1.0\n\n        self.model_outputs = []\n        self.sample_at_start_of_step = None\n        self._step_index = None\n\n    @property\n    def step_index(self):\n        \"\"\"\n        The index counter for the current timestep. It will increase 1 after each scheduler step.\n        \"\"\"\n        return self._step_index\n\n    def index_for_timestep(self, timestep, schedule_timesteps=None):\n        if schedule_timesteps is None:\n            schedule_timesteps = self.timesteps\n\n        if isinstance(schedule_timesteps, torch.Tensor):\n            schedule_timesteps = schedule_timesteps.detach().cpu().numpy()\n\n        if isinstance(timestep, torch.Tensor):\n            timestep = timestep.detach().cpu().numpy()\n\n        return np.abs(schedule_timesteps - timestep).argmin().item()\n\n    def scale_model_input(self, sample: torch.Tensor, timestep: Union[float, torch.Tensor]) -> torch.Tensor:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n        if self.config.prediction_type == \"flow_prediction\":\n            return sample\n        sigma = self.sigmas[self._step_index]\n        return sample / ((sigma**2 + 1) ** 0.5)\n\n\n\n    def _init_step_index(self, timestep):\n        if self._step_index is None:\n            if isinstance(timestep, torch.Tensor):\n                timestep = timestep.to(self.timesteps.device)\n            self._step_index = self.index_for_timestep(timestep)\n\n    def step(\n        self,\n        model_output: torch.Tensor,\n        timestep: Union[float, torch.Tensor],\n        sample: torch.Tensor,\n        return_dict: bool = True,\n    ) -> Union[SchedulerOutput, Tuple]:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n        a_mat, b_vec, c_vec = self._get_tableau()\n        num_stages = len(c_vec)\n\n        stage_index = self._step_index % num_stages\n        base_step_index = (self._step_index // num_stages) * num_stages\n\n        sigma_curr = self.sigmas[base_step_index]\n        sigma_next_idx = min(base_step_index + num_stages, len(self.sigmas) - 1)\n        sigma_next = self.sigmas[sigma_next_idx]\n\n        if sigma_next <= 0:\n            sigma_t = self.sigmas[self._step_index]\n            denoised = sample - sigma_t * model_output if getattr(self.config, \"prediction_type\", \"epsilon\") == \"epsilon\" else model_output\n            prev_sample = denoised\n            self._step_index += 1\n            if not return_dict:\n                return (prev_sample,)\n            return SchedulerOutput(prev_sample=prev_sample)\n\n        h = sigma_next - sigma_curr\n        sigma_t = self.sigmas[self._step_index]\n\n        prediction_type = getattr(self.config, \"prediction_type\", \"epsilon\")\n        if prediction_type == \"epsilon\":\n            denoised = sample - sigma_t * model_output\n        elif self.config.prediction_type == \"v_prediction\":\n            alpha_t = 1 / (sigma_t**2 + 1) ** 0.5\n            sigma_actual = sigma_t * alpha_t\n            denoised = alpha_t * sample - sigma_actual * model_output\n        elif prediction_type == \"flow_prediction\":\n            denoised = sample - sigma_t * model_output\n        elif prediction_type == \"sample\":\n            denoised = model_output\n        else:\n            raise ValueError(f\"prediction_type error: {getattr(self.config, 'prediction_type', 'epsilon')}\")\n\n        if self.config.clip_sample:\n            denoised = denoised.clamp(-self.config.sample_max_value, self.config.sample_max_value)\n\n        # derivative = (x - x0) / sigma\n        derivative = (sample - denoised) / sigma_t if sigma_t > 1e-6 else torch.zeros_like(sample)\n\n        if self.sample_at_start_of_step is None:\n            if stage_index > 0:\n                # Mid-step fallback for Img2Img/Inpainting\n                sigma_next_t = self.sigmas[self._step_index + 1]\n                dt = sigma_next_t - sigma_t\n                prev_sample = sample + dt * derivative\n                self._step_index += 1\n                if not return_dict:\n                    return (prev_sample,)\n                return SchedulerOutput(prev_sample=prev_sample)\n\n            self.sample_at_start_of_step = sample\n            self.model_outputs = [derivative] * stage_index\n\n        if stage_index == 0:\n            self.model_outputs = [derivative]\n            self.sample_at_start_of_step = sample\n        else:\n            self.model_outputs.append(derivative)\n\n        next_stage_idx = stage_index + 1\n        if next_stage_idx < num_stages:\n            sum_ak = 0\n            for j in range(len(self.model_outputs)):\n                sum_ak = sum_ak + a_mat[next_stage_idx][j] * self.model_outputs[j]\n\n            sigma_next_stage = self.sigmas[self._step_index + 1]\n\n            # Update x (unnormalized sample)\n            prev_sample = self.sample_at_start_of_step + (sigma_next_stage - sigma_curr) * sum_ak\n        else:\n            sum_bk = 0\n            for j in range(len(self.model_outputs)):\n                sum_bk = sum_bk + b_vec[j] * self.model_outputs[j]\n\n            prev_sample = self.sample_at_start_of_step + h * sum_bk\n\n            self.model_outputs = []\n            self.sample_at_start_of_step = None\n\n        self._step_index += 1\n\n        if not return_dict:\n            return (prev_sample,)\n        return SchedulerOutput(prev_sample=prev_sample)\n\n    def add_noise(\n        self,\n        original_samples: torch.Tensor,\n        noise: torch.Tensor,\n        timesteps: torch.Tensor,\n    ) -> torch.Tensor:\n        from .scheduler_utils import add_noise_to_sample\n        return add_noise_to_sample(original_samples, noise, self.sigmas, timesteps, self.timesteps)\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/res4lyf/res_multistep_scheduler.py",
    "content": "# Copyright 2025 The RES4LYF Team (Clybius) and The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nfrom typing import ClassVar, List, Literal, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.schedulers.scheduling_utils import KarrasDiffusionSchedulers, SchedulerMixin, SchedulerOutput\n\nfrom diffusers.utils import logging\n\nfrom .phi_functions import Phi, calculate_gamma\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\nclass RESMultistepScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    RESMultistepScheduler (Restartable Exponential Integrator) ported from RES4LYF.\n\n    Supports RES 2M, 3M and DEIS 2M, 3M variants.\n\n    Args:\n        num_train_timesteps (`int`, defaults to 1000):\n            The number of diffusion steps to train the model.\n        beta_start (`float`, defaults to 0.0001):\n            The starting `beta` value of inference.\n        beta_end (`float`, defaults to 0.02):\n            The final `beta` value.\n        beta_schedule (`str`, defaults to \"linear\"):\n            The beta schedule, a mapping from a beta range to a sequence of betas for stepping the model.\n        prediction_type (`str`, defaults to \"epsilon\"):\n            The prediction type of the scheduler function.\n        variant (`str`, defaults to \"res_2m\"):\n            The specific RES/DEIS variant to use. Supported: \"res_2m\", \"res_3m\", \"deis_2m\", \"deis_3m\".\n        use_analytic_solution (`bool`, defaults to True):\n            Whether to use high-precision analytic solutions for phi functions.\n    \"\"\"\n\n    _compatibles: ClassVar[List[str]] = [e.name for e in KarrasDiffusionSchedulers]\n    order = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.00085,\n        beta_end: float = 0.012,\n        beta_schedule: str = \"linear\",\n        prediction_type: str = \"epsilon\",\n        variant: Literal[\"res_2m\", \"res_3m\", \"deis_2m\", \"deis_3m\"] = \"res_2m\",\n        use_analytic_solution: bool = True,\n        timestep_spacing: str = \"linspace\",\n        steps_offset: int = 0,\n        rescale_betas_zero_snr: bool = False,\n        use_karras_sigmas: bool = False,\n        use_exponential_sigmas: bool = False,\n        use_beta_sigmas: bool = False,\n        use_flow_sigmas: bool = False,\n        shift: float = 1.0,\n        use_dynamic_shifting: bool = False,\n        base_shift: float = 0.5,\n        max_shift: float = 1.15,\n        base_image_seq_len: int = 256,\n        max_image_seq_len: int = 4096,\n    ):\n        from .scheduler_utils import betas_for_alpha_bar, rescale_zero_terminal_snr\n\n        if beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        elif beta_schedule == \"squaredcos_cap_v2\":\n            self.betas = betas_for_alpha_bar(num_train_timesteps)\n        else:\n            raise NotImplementedError(f\"{beta_schedule} is not implemented\")\n\n        if rescale_betas_zero_snr:\n            self.betas = rescale_zero_terminal_snr(self.betas)\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n\n        # Buffer for multistep\n        self.model_outputs = []\n        self.x0_outputs = []\n        self.prev_sigmas = []\n        self._step_index = None\n        self._begin_index = None\n        self.init_noise_sigma = 1.0\n\n    @property\n    def step_index(self) -> Optional[int]:\n        return self._step_index\n\n    @property\n    def begin_index(self) -> Optional[int]:\n        return self._begin_index\n\n    def set_begin_index(self, begin_index: int = 0) -> None:\n        self._begin_index = begin_index\n\n    def scale_model_input(self, sample: torch.Tensor, timestep: Union[float, torch.Tensor]) -> torch.Tensor:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n        if self.config.prediction_type == \"flow_prediction\":\n            return sample\n        sigma = self.sigmas[self._step_index]\n        return sample / ((sigma**2 + 1) ** 0.5)\n\n    def set_timesteps(self, num_inference_steps: int, device: Union[str, torch.device] = None, mu: Optional[float] = None, dtype: torch.dtype = torch.float32):\n        from .scheduler_utils import (\n            apply_shift,\n            get_dynamic_shift,\n            get_sigmas_beta,\n            get_sigmas_exponential,\n            get_sigmas_flow,\n            get_sigmas_karras,\n        )\n\n        self.num_inference_steps = num_inference_steps\n\n        if self.config.timestep_spacing == \"linspace\":\n            timesteps = np.linspace(0, self.config.num_train_timesteps - 1, num_inference_steps, dtype=float)[::-1].copy()\n        elif self.config.timestep_spacing == \"leading\":\n            step_ratio = self.config.num_train_timesteps // self.num_inference_steps\n            timesteps = (np.arange(0, num_inference_steps) * step_ratio).round()[::-1].copy()\n            timesteps += self.config.steps_offset\n        elif self.config.timestep_spacing == \"trailing\":\n            step_ratio = self.config.num_train_timesteps / self.num_inference_steps\n            timesteps = (np.arange(self.config.num_train_timesteps, 0, -step_ratio)).round().copy()\n            timesteps -= 1\n        else:\n            raise ValueError(f\"timestep_spacing {self.config.timestep_spacing} is not supported.\")\n\n        sigmas = np.array(((1 - self.alphas_cumprod) / self.alphas_cumprod) ** 0.5)\n        # Linear remapping for Flow Matching\n        if self.config.use_flow_sigmas:\n             # Standardize linear spacing\n             sigmas = np.linspace(1.0, 1 / 1000, num_inference_steps)\n        else:\n             sigmas = np.interp(timesteps, np.arange(0, len(sigmas)), sigmas)\n\n        if self.config.use_karras_sigmas:\n            sigmas = get_sigmas_karras(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_exponential_sigmas:\n            sigmas = get_sigmas_exponential(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_beta_sigmas:\n            sigmas = get_sigmas_beta(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_flow_sigmas:\n             # Already handled above, ensuring variable consistency\n             sigmas = np.linspace(1.0, 1 / 1000, num_inference_steps)\n\n        if self.config.shift != 1.0 or self.config.use_dynamic_shifting:\n            shift = self.config.shift\n            if self.config.use_dynamic_shifting and mu is not None:\n                shift = get_dynamic_shift(\n                    mu,\n                    self.config.base_shift,\n                    self.config.max_shift,\n                    self.config.base_image_seq_len,\n                    self.config.max_image_seq_len,\n                )\n            sigmas = apply_shift(torch.from_numpy(sigmas), shift).numpy()\n\n        if self.config.use_flow_sigmas:\n             timesteps = sigmas * self.config.num_train_timesteps\n\n        self.sigmas = torch.from_numpy(np.concatenate([sigmas, [0.0]])).to(device=device, dtype=dtype)\n        self.timesteps = torch.from_numpy(timesteps).to(device=device, dtype=dtype)\n        self.init_noise_sigma = self.sigmas.max().item() if self.sigmas.numel() > 0 else 1.0\n\n        self._step_index = None\n        self._begin_index = None\n        self.model_outputs = []\n        self.x0_outputs = []\n        self.prev_sigmas = []\n\n        self.lower_order_nums = 0\n\n    def index_for_timestep(self, timestep, schedule_timesteps=None):\n        from .scheduler_utils import index_for_timestep\n        if schedule_timesteps is None:\n            schedule_timesteps = self.timesteps\n        return index_for_timestep(timestep, schedule_timesteps)\n\n    def add_noise(\n        self,\n        original_samples: torch.Tensor,\n        noise: torch.Tensor,\n        timesteps: torch.Tensor,\n    ) -> torch.Tensor:\n        from .scheduler_utils import add_noise_to_sample\n        return add_noise_to_sample(original_samples, noise, self.sigmas, timesteps, self.timesteps)\n\n    def step(\n        self,\n        model_output: torch.Tensor,\n        timestep: Union[float, torch.Tensor],\n        sample: torch.Tensor,\n        return_dict: bool = True,\n    ) -> Union[SchedulerOutput, Tuple]:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n\n        step = self._step_index\n        sigma = self.sigmas[step]\n        sigma_next = self.sigmas[step + 1]\n\n        h = -torch.log(sigma_next / sigma) if sigma > 0 and sigma_next > 0 else torch.zeros_like(sigma)\n\n        # RECONSTRUCT X0 (Matching PEC pattern)\n        if self.config.prediction_type == \"epsilon\":\n            x0 = sample - sigma * model_output\n        elif self.config.prediction_type == \"sample\":\n            x0 = model_output\n        elif self.config.prediction_type == \"v_prediction\":\n            alpha_t = 1.0 / (sigma**2 + 1) ** 0.5\n            sigma_t = sigma * alpha_t\n            x0 = alpha_t * sample - sigma_t * model_output\n        elif self.config.prediction_type == \"flow_prediction\":\n            x0 = sample - sigma * model_output\n        else:\n            raise ValueError(f\"prediction_type {self.config.prediction_type} is not supported.\")\n\n        self.model_outputs.append(model_output)\n        self.x0_outputs.append(x0)\n        self.prev_sigmas.append(sigma)\n\n        # Order logic\n        variant = self.config.variant\n        order = int(variant[-2]) if variant.endswith(\"m\") else 1\n\n        # Effective order for current step\n        curr_order = min(len(self.prev_sigmas), order) if sigma > 0 else 1\n\n        if self.config.prediction_type == \"flow_prediction\":\n            # Variable Step Adams-Bashforth for Flow Matching\n            dt = sigma_next - sigma\n            v_n = model_output\n\n            if curr_order == 1:\n                 x_next = sample + dt * v_n\n            elif curr_order == 2:\n                 # AB2\n                 sigma_prev = self.prev_sigmas[-2]\n                 dt_prev = sigma - sigma_prev\n                 r = dt / dt_prev if abs(dt_prev) > 1e-8 else 0.0\n\n                 # Stability check\n                 if dt_prev == 0 or r < -0.9 or r > 2.0: # Fallback\n                     x_next = sample + dt * v_n\n                 else:\n                     c0 = 1 + 0.5 * r\n                     c1 = -0.5 * r\n                     x_next = sample + dt * (c0 * v_n + c1 * self.model_outputs[-2])\n            elif curr_order >= 3:\n                 # Re-implement AB2 logic\n                 sigma_prev = self.prev_sigmas[-2]\n                 dt_prev = sigma - sigma_prev\n                 r = dt / dt_prev if abs(dt_prev) > 1e-8 else 0.0\n                 c0 = 1 + 0.5 * r\n                 c1 = -0.5 * r\n                 x_next = sample + dt * (c0 * v_n + c1 * self.model_outputs[-2])\n\n            self._step_index += 1\n            if len(self.model_outputs) > order:\n                self.model_outputs.pop(0)\n                self.x0_outputs.pop(0)\n                self.prev_sigmas.pop(0)\n\n            if not return_dict:\n                return (x_next,)\n            return SchedulerOutput(prev_sample=x_next)\n\n        # Exponential Integrator Setup\n        phi = Phi(h, [0], getattr(self.config, \"use_analytic_solution\", True))\n        phi_1 = phi(1)\n\n        if variant.startswith(\"res\"):\n            # Force Order 1 at the end of schedule\n            if self.num_inference_steps is not None and self._step_index >= self.num_inference_steps - 3:\n                 curr_order = 1\n\n            if curr_order == 2:\n                h_prev = -torch.log(self.prev_sigmas[-1] / self.prev_sigmas[-2])\n            elif curr_order == 3:\n                pass\n            else:\n                pass\n\n            # Exponential Integrator Update in x-space\n            if curr_order == 1:\n                res = phi_1 * x0\n            elif curr_order == 2:\n                # b2 = -phi_2 / r\n                # b2 = -phi_2 / r = -phi(2) / (h_prev/h)\n                # Here we use: b2 = phi(2) / ((-h_prev / h) + 1e-9)\n                # Since (-h_prev/h) is negative (-r), this gives correct negative sign for b2.\n\n                # Stability check\n                r_check = h_prev / (h + 1e-9) # This is effectively -r if using h_prev definition above?\n                # Wait, h_prev above is -log(). Positive.\n                # h is positive.\n                # So h_prev/h is positive. defined as r in other files.\n                # But here code uses -h_prev / h in denominator.\n\n                # Stability check\n                r_check = h_prev / (h + 1e-9)\n\n                # Hard Restart\n                if r_check < 0.5 or r_check > 2.0:\n                    res = phi_1 * x0\n                else:\n                    b2 = phi(2) / ((-h_prev / h) + 1e-9)\n                    b1 = phi_1 - b2\n                    res = b1 * self.x0_outputs[-1] + b2 * self.x0_outputs[-2]\n            elif curr_order == 3:\n                # Generalized AB3 for Exponential Integrators\n                h_p1 = -torch.log(self.prev_sigmas[-1] / (self.prev_sigmas[-2] + 1e-9))\n                h_p2 = -torch.log(self.prev_sigmas[-1] / (self.prev_sigmas[-3] + 1e-9))\n                r1 = h_p1 / (h + 1e-9)\n                r2 = h_p2 / (h + 1e-9)\n\n                if r1 < 0.5 or r1 > 2.0 or r2 < 0.5 or r2 > 2.0:\n                     res = phi_1 * x0\n                else:\n                    phi_2, phi_3 = phi(2), phi(3)\n                    denom = r2 - r1 + 1e-9\n                    b3 = (phi_3 + r1 * phi_2) / (r2 * denom)\n                    b2 = -(phi_3 + r2 * phi_2) / (r1 * denom)\n                    b1 = phi_1 - b2 - b3\n                    res = b1 * self.x0_outputs[-1] + b2 * self.x0_outputs[-2] + b3 * self.x0_outputs[-3]\n            else:\n                res = phi_1 * x0\n\n            if sigma_next == 0:\n                x_next = x0\n            else:\n                x_next = torch.exp(-h) * sample + h * res\n\n        else:\n            # DEIS logic (Linear multistep in log-sigma space)\n            b = self._get_deis_coefficients(curr_order, sigma, sigma_next)\n\n            # For DEIS, we apply b to the denoised estimates\n            res = torch.zeros_like(sample)\n            for i, b_val in enumerate(b[0]):\n                idx = len(self.x0_outputs) - 1 - i\n                if idx >= 0:\n                    res += b_val * self.x0_outputs[idx]\n\n            # DEIS update in x-space\n            if sigma_next == 0:\n                x_next = x0\n            else:\n                x_next = torch.exp(-h) * sample + h * res\n\n        self._step_index += 1\n\n        if len(self.model_outputs) > order:\n            self.model_outputs.pop(0)\n            self.x0_outputs.pop(0)\n            self.prev_sigmas.pop(0)\n\n        if not return_dict:\n            return (x_next,)\n\n        return SchedulerOutput(prev_sample=x_next)\n\n    def _get_res_coefficients(self, rk_type, h, c2, c3):\n        ci = [0, c2, c3]\n        phi = Phi(h, ci, getattr(self.config, \"use_analytic_solution\", True))\n\n        if rk_type == \"res_2s\":\n            b2 = phi(2) / (c2 + 1e-9)\n            b = [[phi(1) - b2, b2]]\n            a = [[0, 0], [c2 * phi(1, 2), 0]]\n        elif rk_type == \"res_3s\":\n            gamma_val = calculate_gamma(c2, c3)\n            b3 = phi(2) / (gamma_val * c2 + c3 + 1e-9)\n            b2 = gamma_val * b3\n            b = [[phi(1) - (b2 + b3), b2, b3]]\n            a = [] # Simplified\n        else:\n            b = [[phi(1)]]\n            a = [[0]]\n        return a, b, ci\n\n    def _get_deis_coefficients(self, order, sigma, sigma_next):\n        h = -torch.log(sigma_next / sigma) if sigma > 0 and sigma_next > 0 else torch.zeros_like(sigma)\n        phi = Phi(h, [0], getattr(self.config, \"use_analytic_solution\", True))\n        phi_1 = phi(1)\n\n        if order == 1:\n            return [[phi_1]]\n        elif order == 2:\n            h_prev = -torch.log(self.prev_sigmas[-1] / (self.prev_sigmas[-2] + 1e-9))\n            r = h_prev / (h + 1e-9)\n\n            # Correct Adams-Bashforth-like coefficients for Exponential Integrators\n\n            # Hard Restart for stability\n            if r < 0.5 or r > 2.0:\n                 return [[phi_1]]\n\n            phi_2 = phi(2)\n            b2 = -phi_2 / (r + 1e-9)\n            b1 = phi_1 - b2\n            return [[b1, b2]]\n        elif order == 3:\n            h_prev1 = -torch.log(self.prev_sigmas[-1] / (self.prev_sigmas[-2] + 1e-9))\n            h_prev2 = -torch.log(self.prev_sigmas[-1] / (self.prev_sigmas[-3] + 1e-9))\n            r1 = h_prev1 / (h + 1e-9)\n            r2 = h_prev2 / (h + 1e-9)\n\n            if r1 < 0.5 or r1 > 2.0 or r2 < 0.5 or r2 > 2.0:\n                return [[phi_1]]\n\n            phi_2 = phi(2)\n            phi_3 = phi(3)\n\n            # Generalized AB3 for Exponential Integrators (Varying steps)\n            denom = r2 - r1 + 1e-9\n            b3 = (phi_3 + r1 * phi_2) / (r2 * denom)\n            b2 = -(phi_3 + r2 * phi_2) / (r1 * denom)\n            b1 = phi_1 - (b2 + b3)\n            return [[b1, b2, b3]]\n        else:\n            return [[phi_1]]\n\n    def _init_step_index(self, timestep):\n        if self.begin_index is None:\n            self._step_index = self.index_for_timestep(timestep)\n        else:\n            self._step_index = self._begin_index\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/res4lyf/res_multistep_sde_scheduler.py",
    "content": "# Copyright 2025 The RES4LYF Team (Clybius) and The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nfrom typing import ClassVar, List, Literal, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.schedulers.scheduling_utils import KarrasDiffusionSchedulers, SchedulerMixin, SchedulerOutput\nfrom diffusers.utils.torch_utils import randn_tensor\n\nfrom diffusers.utils import logging\n\nlogger = logging.get_logger(__name__)\n\n\nclass RESMultistepSDEScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    RESMultistepSDEScheduler (Stochastic Exponential Integrator) ported from RES4LYF.\n\n    Args:\n        num_train_timesteps (`int`, defaults to 1000):\n            The number of diffusion steps to train the model.\n        variant (`str`, defaults to \"res_2m\"):\n            The specific RES/DEIS variant to use. Supported: \"res_2m\", \"res_3m\".\n        eta (`float`, defaults to 1.0):\n            The amount of noise to add during sampling (0.0 for ODE, 1.0 for full SDE).\n    \"\"\"\n\n    _compatibles: ClassVar[List[str]] = [e.name for e in KarrasDiffusionSchedulers]\n    order = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.00085,\n        beta_end: float = 0.012,\n        beta_schedule: str = \"linear\",\n        prediction_type: str = \"epsilon\",\n        variant: Literal[\"res_2m\", \"res_3m\"] = \"res_2m\",\n        eta: float = 1.0,\n        use_analytic_solution: bool = True,\n        timestep_spacing: str = \"linspace\",\n        steps_offset: int = 0,\n        rescale_betas_zero_snr: bool = False,\n        use_karras_sigmas: bool = False,\n        use_exponential_sigmas: bool = False,\n        use_beta_sigmas: bool = False,\n        use_flow_sigmas: bool = False,\n        shift: float = 1.0,\n        use_dynamic_shifting: bool = False,\n        base_shift: float = 0.5,\n        max_shift: float = 1.15,\n        base_image_seq_len: int = 256,\n        max_image_seq_len: int = 4096,\n    ):\n        from .scheduler_utils import betas_for_alpha_bar, rescale_zero_terminal_snr\n\n        if beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        elif beta_schedule == \"squaredcos_cap_v2\":\n            self.betas = betas_for_alpha_bar(num_train_timesteps)\n        else:\n            raise NotImplementedError(f\"{beta_schedule} is not implemented\")\n\n        if rescale_betas_zero_snr:\n            self.betas = rescale_zero_terminal_snr(self.betas)\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n\n        # Buffer for multistep\n        self.model_outputs = []\n        self.x0_outputs = []\n        self.prev_sigmas = []\n        self._step_index = None\n        self._begin_index = None\n        self.init_noise_sigma = 1.0\n\n    @property\n    def step_index(self) -> Optional[int]:\n        return self._step_index\n\n    @property\n    def begin_index(self) -> Optional[int]:\n        return self._begin_index\n\n    def set_begin_index(self, begin_index: int = 0) -> None:\n        self._begin_index = begin_index\n\n    def scale_model_input(self, sample: torch.Tensor, timestep: Union[float, torch.Tensor]) -> torch.Tensor:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n        if self.config.prediction_type == \"flow_prediction\":\n            return sample\n        sigma = self.sigmas[self._step_index]\n        sample = sample / ((sigma**2 + 1) ** 0.5)\n        return sample\n\n    def set_timesteps(self, num_inference_steps: int, device: Union[str, torch.device] = None, mu: Optional[float] = None, dtype: torch.dtype = torch.float32):\n        from .scheduler_utils import (\n            apply_shift,\n            get_dynamic_shift,\n            get_sigmas_beta,\n            get_sigmas_exponential,\n            get_sigmas_flow,\n            get_sigmas_karras,\n        )\n\n        self.num_inference_steps = num_inference_steps\n\n        if self.config.timestep_spacing == \"linspace\":\n            timesteps = np.linspace(0, self.config.num_train_timesteps - 1, num_inference_steps, dtype=float)[::-1].copy()\n        elif self.config.timestep_spacing == \"leading\":\n            step_ratio = self.config.num_train_timesteps // self.num_inference_steps\n            timesteps = (np.arange(0, num_inference_steps) * step_ratio).round()[::-1].copy()\n            timesteps += self.config.steps_offset\n        elif self.config.timestep_spacing == \"trailing\":\n            step_ratio = self.config.num_train_timesteps / self.num_inference_steps\n            timesteps = (np.arange(self.config.num_train_timesteps, 0, -step_ratio)).round().copy()\n            timesteps -= 1\n        else:\n            raise ValueError(f\"timestep_spacing {self.config.timestep_spacing} is not supported.\")\n\n        sigmas = np.array(((1 - self.alphas_cumprod) / self.alphas_cumprod) ** 0.5)\n        sigmas = np.interp(timesteps, np.arange(0, len(sigmas)), sigmas)\n\n        if self.config.use_karras_sigmas:\n            sigmas = get_sigmas_karras(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_exponential_sigmas:\n            sigmas = get_sigmas_exponential(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_beta_sigmas:\n            sigmas = get_sigmas_beta(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_flow_sigmas:\n            sigmas = get_sigmas_flow(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n\n        if self.config.shift != 1.0 or self.config.use_dynamic_shifting:\n            shift = self.config.shift\n            if self.config.use_dynamic_shifting and mu is not None:\n                shift = get_dynamic_shift(\n                    mu,\n                    self.config.base_shift,\n                    self.config.max_shift,\n                    self.config.base_image_seq_len,\n                    self.config.max_image_seq_len,\n                )\n            sigmas = apply_shift(torch.from_numpy(sigmas), shift).numpy()\n\n        self.sigmas = torch.from_numpy(np.concatenate([sigmas, [0.0]])).to(device=device, dtype=dtype)\n        self.timesteps = torch.from_numpy(timesteps).to(device=device, dtype=dtype)\n        self.init_noise_sigma = self.sigmas.max().item() if self.sigmas.numel() > 0 else 1.0\n\n        self._step_index = None\n        self._begin_index = None\n        self.model_outputs = []\n        self.x0_outputs = []\n        self.prev_sigmas = []\n\n    def index_for_timestep(self, timestep, schedule_timesteps=None):\n        from .scheduler_utils import index_for_timestep\n        if schedule_timesteps is None:\n            schedule_timesteps = self.timesteps\n        return index_for_timestep(timestep, schedule_timesteps)\n\n    def add_noise(\n        self,\n        original_samples: torch.Tensor,\n        noise: torch.Tensor,\n        timesteps: torch.Tensor,\n    ) -> torch.Tensor:\n        from .scheduler_utils import add_noise_to_sample\n        return add_noise_to_sample(original_samples, noise, self.sigmas, timesteps, self.timesteps)\n\n    def step(\n        self,\n        model_output: torch.Tensor,\n        timestep: Union[float, torch.Tensor],\n        sample: torch.Tensor,\n        generator: Optional[torch.Generator] = None,\n        return_dict: bool = True,\n    ) -> Union[SchedulerOutput, Tuple]:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n\n        step = self._step_index\n        sigma = self.sigmas[step]\n        sigma_next = self.sigmas[step + 1]\n\n        h = -torch.log(sigma_next / sigma) if sigma > 0 and sigma_next > 0 else torch.zeros_like(sigma)\n\n        # RECONSTRUCT X0\n        if self.config.prediction_type == \"epsilon\":\n            x0 = sample - sigma * model_output\n        elif self.config.prediction_type == \"sample\":\n            x0 = model_output\n        elif self.config.prediction_type == \"v_prediction\":\n            alpha_t = 1.0 / (sigma**2 + 1) ** 0.5\n            sigma_t = sigma * alpha_t\n            x0 = alpha_t * sample - sigma_t * model_output\n        elif self.config.prediction_type == \"flow_prediction\":\n            x0 = sample - sigma * model_output\n        else:\n            x0 = model_output\n\n        self.model_outputs.append(model_output)\n        self.x0_outputs.append(x0)\n        self.prev_sigmas.append(sigma)\n\n        # Order logic\n        variant = self.config.variant\n        order = int(variant[-2]) if variant.endswith(\"m\") else 1\n\n        # Effective order for current step\n        curr_order = min(len(self.prev_sigmas), order)\n\n        # REiS Multistep logic\n        c2, c3 = 0.5, 1.0\n        if curr_order == 2:\n            h_prev = -torch.log(self.prev_sigmas[-1] / self.prev_sigmas[-2])\n            c2 = (-h_prev / h).item() if h > 0 else 0.5\n            rk_type = \"res_2s\"\n        elif curr_order == 3:\n            h_prev1 = -torch.log(self.prev_sigmas[-1] / self.prev_sigmas[-2])\n            h_prev2 = -torch.log(self.prev_sigmas[-1] / self.prev_sigmas[-3])\n            c2 = (-h_prev1 / h).item() if h > 0 else 0.5\n            c3 = (-h_prev2 / h).item() if h > 0 else 1.0\n            rk_type = \"res_3s\"\n        else:\n            rk_type = \"res_1s\"\n\n        if curr_order == 1:\n            rk_type = \"res_1s\"\n        _a, b, _ci = self._get_res_coefficients(rk_type, h, c2, c3)\n\n        # Apply coefficients to get multistep x_0\n        res = torch.zeros_like(sample)\n        for i, b_val in enumerate(b[0]):\n            idx = len(self.x0_outputs) - 1 - i\n            if idx >= 0:\n                res += b_val * self.x0_outputs[idx]\n\n        # SDE stochastic step\n        eta = self.config.eta\n        if sigma_next == 0:\n            x_next = x0\n        else:\n            # Ancestral SDE logic:\n            # 1. Calculate sigma_up and sigma_down to preserve variance\n            # sigma_up = eta * sigma_next * sqrt(1 - (sigma_next/sigma)^2)\n            # sigma_down = sqrt(sigma_next^2 - sigma_up^2)\n\n            sigma_up = eta * (sigma_next**2 * (sigma**2 - sigma_next**2) / (sigma**2 + 1e-9))**0.5\n            sigma_down = (sigma_next**2 - sigma_up**2)**0.5\n\n            # 2. Take deterministic step to sigma_down\n            h_det = -torch.log(sigma_down / sigma) if sigma > 0 and sigma_down > 0 else h\n\n            # Re-calculate coefficients for h_det\n            _a, b_det, _ci = self._get_res_coefficients(rk_type, h_det, c2, c3)\n            res_det = torch.zeros_like(sample)\n            for i, b_val in enumerate(b_det[0]):\n                idx = len(self.x0_outputs) - 1 - i\n                if idx >= 0:\n                    res_det += b_val * self.x0_outputs[idx]\n\n            x_det = torch.exp(-h_det) * sample + h_det * res_det\n\n            # 3. Add noise scaled by sigma_up\n            if eta > 0:\n                noise = randn_tensor(sample.shape, generator=generator, device=sample.device, dtype=sample.dtype)\n                x_next = x_det + sigma_up * noise\n            else:\n                x_next = x_det\n\n        self._step_index += 1\n\n        if len(self.x0_outputs) > order:\n            self.x0_outputs.pop(0)\n            self.model_outputs.pop(0)\n            self.prev_sigmas.pop(0)\n\n        if not return_dict:\n            return (x_next,)\n\n        return SchedulerOutput(prev_sample=x_next)\n\n    def _get_res_coefficients(self, rk_type, h, c2, c3):\n        from .phi_functions import Phi, calculate_gamma\n        ci = [0, c2, c3]\n        phi = Phi(h, ci, self.config.use_analytic_solution)\n\n        if rk_type == \"res_2s\":\n            b2 = phi(2) / (c2 + 1e-9)\n            b = [[phi(1) - b2, b2]]\n            a = [[0, 0], [c2 * phi(1, 2), 0]]\n        elif rk_type == \"res_3s\":\n            gamma_val = calculate_gamma(c2, c3)\n            b3 = phi(2) / (gamma_val * c2 + c3 + 1e-9)\n            b2 = gamma_val * b3\n            b = [[phi(1) - (b2 + b3), b2, b3]]\n            a = []\n        else:\n            b = [[phi(1)]]\n            a = [[0]]\n        return a, b, ci\n\n    def _init_step_index(self, timestep):\n        if self.begin_index is None:\n            if isinstance(timestep, torch.Tensor):\n                timestep = timestep.to(self.timesteps.device)\n            self._step_index = self.index_for_timestep(timestep)\n        else:\n            self._step_index = self._begin_index\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/res4lyf/res_singlestep_scheduler.py",
    "content": "# Copyright 2025 The RES4LYF Team (Clybius) and The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nfrom typing import ClassVar, List, Literal, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.schedulers.scheduling_utils import KarrasDiffusionSchedulers, SchedulerMixin, SchedulerOutput\n\nfrom diffusers.utils import logging\n\nlogger = logging.get_logger(__name__)\n\n\nclass RESSinglestepScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    RESSinglestepScheduler (Multistage Exponential Integrator) ported from RES4LYF.\n    \"\"\"\n\n    _compatibles: ClassVar[List[str]] = [e.name for e in KarrasDiffusionSchedulers]\n    order = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.00085,\n        beta_end: float = 0.012,\n        beta_schedule: str = \"linear\",\n        prediction_type: str = \"epsilon\",\n        variant: Literal[\"res_2s\", \"res_3s\", \"res_5s\", \"res_6s\"] = \"res_2s\",\n        use_analytic_solution: bool = True,\n        timestep_spacing: str = \"linspace\",\n        steps_offset: int = 0,\n        rescale_betas_zero_snr: bool = False,\n        use_karras_sigmas: bool = False,\n        use_exponential_sigmas: bool = False,\n        use_beta_sigmas: bool = False,\n        use_flow_sigmas: bool = False,\n        shift: float = 1.0,\n        use_dynamic_shifting: bool = False,\n        base_shift: float = 0.5,\n        max_shift: float = 1.15,\n        base_image_seq_len: int = 256,\n        max_image_seq_len: int = 4096,\n    ):\n        from .scheduler_utils import betas_for_alpha_bar, rescale_zero_terminal_snr\n\n        if beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        elif beta_schedule == \"squaredcos_cap_v2\":\n            self.betas = betas_for_alpha_bar(num_train_timesteps)\n        else:\n            raise NotImplementedError(f\"{beta_schedule} is not implemented\")\n\n        if rescale_betas_zero_snr:\n            self.betas = rescale_zero_terminal_snr(self.betas)\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n\n        self._step_index = None\n        self._begin_index = None\n        self.init_noise_sigma = 1.0\n\n    @property\n    def step_index(self) -> Optional[int]:\n        return self._step_index\n\n    @property\n    def begin_index(self) -> Optional[int]:\n        return self._begin_index\n\n    def set_begin_index(self, begin_index: int = 0) -> None:\n        self._begin_index = begin_index\n\n    def scale_model_input(self, sample: torch.Tensor, timestep: Union[float, torch.Tensor]) -> torch.Tensor:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n        if self.config.prediction_type == \"flow_prediction\":\n            return sample\n        sigma = self.sigmas[self._step_index]\n        return sample / ((sigma**2 + 1) ** 0.5)\n\n    def set_timesteps(self, num_inference_steps: int, device: Union[str, torch.device] = None, mu: Optional[float] = None, dtype: torch.dtype = torch.float32):\n        from .scheduler_utils import (\n            apply_shift,\n            get_dynamic_shift,\n            get_sigmas_beta,\n            get_sigmas_exponential,\n            get_sigmas_flow,\n            get_sigmas_karras,\n        )\n\n        self.num_inference_steps = num_inference_steps\n\n        if self.config.timestep_spacing == \"linspace\":\n            timesteps = np.linspace(0, self.config.num_train_timesteps - 1, num_inference_steps, dtype=float)[::-1].copy()\n        elif self.config.timestep_spacing == \"leading\":\n            step_ratio = self.config.num_train_timesteps // self.num_inference_steps\n            timesteps = (np.arange(0, num_inference_steps) * step_ratio).round()[::-1].copy()\n            timesteps += self.config.steps_offset\n        elif self.config.timestep_spacing == \"trailing\":\n            step_ratio = self.config.num_train_timesteps / self.num_inference_steps\n            timesteps = (np.arange(self.config.num_train_timesteps, 0, -step_ratio)).round().copy()\n            timesteps -= 1\n        else:\n            raise ValueError(f\"timestep_spacing {self.config.timestep_spacing} is not supported.\")\n\n        sigmas = np.array(((1 - self.alphas_cumprod) / self.alphas_cumprod) ** 0.5)\n\n        # Linear remapping logic\n        if self.config.use_flow_sigmas:\n             # Logic handled here\n             pass\n        else:\n             sigmas = np.interp(timesteps, np.arange(0, len(sigmas)), sigmas)\n\n        if self.config.use_karras_sigmas:\n            sigmas = get_sigmas_karras(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_exponential_sigmas:\n            sigmas = get_sigmas_exponential(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_beta_sigmas:\n            sigmas = get_sigmas_beta(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_flow_sigmas:\n            sigmas = get_sigmas_flow(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n\n        if self.config.shift != 1.0 or self.config.use_dynamic_shifting:\n            shift = self.config.shift\n            if self.config.use_dynamic_shifting and mu is not None:\n                shift = get_dynamic_shift(\n                    mu,\n                    self.config.base_shift,\n                    self.config.max_shift,\n                    self.config.base_image_seq_len,\n                    self.config.max_image_seq_len,\n                )\n            if not self.config.use_flow_sigmas:\n                 sigmas = apply_shift(torch.from_numpy(sigmas), shift).numpy()\n\n        if self.config.use_flow_sigmas:\n             sigmas = np.linspace(1.0, 1 / 1000, num_inference_steps)\n\n        if self.config.use_flow_sigmas:\n             timesteps = sigmas * self.config.num_train_timesteps\n\n        self.sigmas = torch.from_numpy(np.concatenate([sigmas, [0.0]])).to(device=device, dtype=dtype)\n        self.timesteps = torch.from_numpy(timesteps).to(device=device, dtype=dtype)\n        self.init_noise_sigma = self.sigmas.max().item() if self.sigmas.numel() > 0 else 1.0\n\n        self._step_index = None\n        self._begin_index = None\n\n    def index_for_timestep(self, timestep, schedule_timesteps=None):\n        from .scheduler_utils import index_for_timestep\n        if schedule_timesteps is None:\n            schedule_timesteps = self.timesteps\n        return index_for_timestep(timestep, schedule_timesteps)\n\n    def add_noise(\n        self,\n        original_samples: torch.Tensor,\n        noise: torch.Tensor,\n        timesteps: torch.Tensor,\n    ) -> torch.Tensor:\n        from .scheduler_utils import add_noise_to_sample\n        return add_noise_to_sample(original_samples, noise, self.sigmas, timesteps, self.timesteps)\n\n    def step(\n        self,\n        model_output: torch.Tensor,\n        timestep: Union[float, torch.Tensor],\n        sample: torch.Tensor,\n        return_dict: bool = True,\n    ) -> Union[SchedulerOutput, Tuple]:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n\n        step = self._step_index\n        sigma = self.sigmas[step]\n        sigma_next = self.sigmas[step + 1]\n\n        h = -torch.log(sigma_next / sigma) if sigma > 0 and sigma_next > 0 else torch.zeros_like(sigma)\n\n        # RECONSTRUCT X0 (Matching PEC pattern)\n        if self.config.prediction_type == \"epsilon\":\n            x0 = sample - sigma * model_output\n        elif self.config.prediction_type == \"sample\":\n            x0 = model_output\n        elif self.config.prediction_type == \"v_prediction\":\n            alpha_t = 1.0 / (sigma**2 + 1) ** 0.5\n            sigma_t = sigma * alpha_t\n            x0 = alpha_t * sample - sigma_t * model_output\n        elif self.config.prediction_type == \"flow_prediction\":\n            x0 = sample - sigma * model_output\n        else:\n            x0 = model_output\n\n        if self.config.prediction_type == \"flow_prediction\":\n             dt = sigma_next - sigma\n             x_next = sample + dt * model_output\n             self._step_index += 1\n             if not return_dict:\n                 return (x_next,)\n             return SchedulerOutput(prev_sample=x_next)\n\n        # Exponential Integrator Update\n        if sigma_next == 0:\n            x_next = x0\n        else:\n            # For singlestep RES (multistage), a proper RK requires model evals at intermediate ci * h.\n            # Here we provide the standard 1st order update as a base.\n            x_next = torch.exp(-h) * sample + (1 - torch.exp(-h)) * x0\n\n        self._step_index += 1\n\n        if not return_dict:\n            return (x_next,)\n\n        return SchedulerOutput(prev_sample=x_next)\n\n    def _init_step_index(self, timestep):\n        if self.begin_index is None:\n            self._step_index = self.index_for_timestep(timestep)\n        else:\n            self._step_index = self._begin_index\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/res4lyf/res_singlestep_sde_scheduler.py",
    "content": "# Copyright 2025 The RES4LYF Team (Clybius) and The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nfrom typing import ClassVar, List, Literal, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.schedulers.scheduling_utils import KarrasDiffusionSchedulers, SchedulerMixin, SchedulerOutput\nfrom diffusers.utils.torch_utils import randn_tensor\n\nfrom diffusers.utils import logging\n\nlogger = logging.get_logger(__name__)\n\n\nclass RESSinglestepSDEScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    RESSinglestepSDEScheduler (Stochastic Multistage Exponential Integrator) ported from RES4LYF.\n    \"\"\"\n\n    _compatibles: ClassVar[List[str]] = [e.name for e in KarrasDiffusionSchedulers]\n    order = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.00085,\n        beta_end: float = 0.012,\n        beta_schedule: str = \"linear\",\n        prediction_type: str = \"epsilon\",\n        variant: Literal[\"res_2s\", \"res_3s\", \"res_5s\", \"res_6s\"] = \"res_2s\",\n        eta: float = 1.0,\n        use_analytic_solution: bool = True,\n        timestep_spacing: str = \"linspace\",\n        steps_offset: int = 0,\n        rescale_betas_zero_snr: bool = False,\n        use_karras_sigmas: bool = False,\n        use_exponential_sigmas: bool = False,\n        use_beta_sigmas: bool = False,\n        use_flow_sigmas: bool = False,\n        shift: float = 1.0,\n        use_dynamic_shifting: bool = False,\n        base_shift: float = 0.5,\n        max_shift: float = 1.15,\n        base_image_seq_len: int = 256,\n        max_image_seq_len: int = 4096,\n    ):\n        from .scheduler_utils import betas_for_alpha_bar, rescale_zero_terminal_snr\n\n        if beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        elif beta_schedule == \"squaredcos_cap_v2\":\n            self.betas = betas_for_alpha_bar(num_train_timesteps)\n        else:\n            raise NotImplementedError(f\"{beta_schedule} is not implemented\")\n\n        if rescale_betas_zero_snr:\n            self.betas = rescale_zero_terminal_snr(self.betas)\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n\n        self._step_index = None\n        self._begin_index = None\n        self.init_noise_sigma = 1.0\n\n    @property\n    def step_index(self) -> Optional[int]:\n        return self._step_index\n\n    @property\n    def begin_index(self) -> Optional[int]:\n        return self._begin_index\n\n    def set_begin_index(self, begin_index: int = 0) -> None:\n        self._begin_index = begin_index\n\n    def scale_model_input(self, sample: torch.Tensor, timestep: Union[float, torch.Tensor]) -> torch.Tensor:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n        if self.config.prediction_type == \"flow_prediction\":\n            return sample\n        sigma = self.sigmas[self._step_index]\n        sample = sample / ((sigma**2 + 1) ** 0.5)\n        return sample\n\n    def set_timesteps(self, num_inference_steps: int, device: Union[str, torch.device] = None, mu: Optional[float] = None, dtype: torch.dtype = torch.float32):\n        from .scheduler_utils import (\n            apply_shift,\n            get_dynamic_shift,\n            get_sigmas_beta,\n            get_sigmas_exponential,\n            get_sigmas_flow,\n            get_sigmas_karras,\n        )\n\n        self.num_inference_steps = num_inference_steps\n\n        if self.config.timestep_spacing == \"linspace\":\n            timesteps = np.linspace(0, self.config.num_train_timesteps - 1, num_inference_steps, dtype=float)[::-1].copy()\n        elif self.config.timestep_spacing == \"leading\":\n            step_ratio = self.config.num_train_timesteps // self.num_inference_steps\n            timesteps = (np.arange(0, num_inference_steps) * step_ratio).round()[::-1].copy()\n            timesteps += self.config.steps_offset\n        elif self.config.timestep_spacing == \"trailing\":\n            step_ratio = self.config.num_train_timesteps / self.num_inference_steps\n            timesteps = (np.arange(self.config.num_train_timesteps, 0, -step_ratio)).round().copy()\n            timesteps -= 1\n        else:\n            raise ValueError(f\"timestep_spacing {self.config.timestep_spacing} is not supported.\")\n\n        sigmas = np.array(((1 - self.alphas_cumprod) / self.alphas_cumprod) ** 0.5)\n        sigmas = np.interp(timesteps, np.arange(0, len(sigmas)), sigmas)\n\n        if self.config.use_karras_sigmas:\n            sigmas = get_sigmas_karras(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_exponential_sigmas:\n            sigmas = get_sigmas_exponential(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_beta_sigmas:\n            sigmas = get_sigmas_beta(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_flow_sigmas:\n            sigmas = get_sigmas_flow(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n\n        if self.config.shift != 1.0 or self.config.use_dynamic_shifting:\n            shift = self.config.shift\n            if self.config.use_dynamic_shifting and mu is not None:\n                shift = get_dynamic_shift(\n                    mu,\n                    self.config.base_shift,\n                    self.config.max_shift,\n                    self.config.base_image_seq_len,\n                    self.config.max_image_seq_len,\n                )\n            sigmas = apply_shift(torch.from_numpy(sigmas), shift).numpy()\n\n        self.sigmas = torch.from_numpy(np.concatenate([sigmas, [0.0]])).to(device=device, dtype=dtype)\n        self.timesteps = torch.from_numpy(timesteps).to(device=device, dtype=dtype)\n        self.init_noise_sigma = self.sigmas.max().item() if self.sigmas.numel() > 0 else 1.0\n\n        self._step_index = None\n        self._begin_index = None\n\n    def index_for_timestep(self, timestep, schedule_timesteps=None):\n        from .scheduler_utils import index_for_timestep\n        if schedule_timesteps is None:\n            schedule_timesteps = self.timesteps\n        return index_for_timestep(timestep, schedule_timesteps)\n\n    def add_noise(\n        self,\n        original_samples: torch.Tensor,\n        noise: torch.Tensor,\n        timesteps: torch.Tensor,\n    ) -> torch.Tensor:\n        from .scheduler_utils import add_noise_to_sample\n        return add_noise_to_sample(original_samples, noise, self.sigmas, timesteps, self.timesteps)\n\n    def step(\n        self,\n        model_output: torch.Tensor,\n        timestep: Union[float, torch.Tensor],\n        sample: torch.Tensor,\n        generator: Optional[torch.Generator] = None,\n        return_dict: bool = True,\n    ) -> Union[SchedulerOutput, Tuple]:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n\n        step = self._step_index\n        sigma = self.sigmas[step]\n        sigma_next = self.sigmas[step + 1]\n        eta = self.config.eta\n\n        # RECONSTRUCT X0\n        if self.config.prediction_type == \"epsilon\":\n            x0 = sample - sigma * model_output\n        elif self.config.prediction_type == \"sample\":\n            x0 = model_output\n        elif self.config.prediction_type == \"v_prediction\":\n            alpha_t = 1.0 / (sigma**2 + 1)**0.5\n            sigma_t = sigma * alpha_t\n            x0 = alpha_t * sample - sigma_t * model_output\n        elif self.config.prediction_type == \"flow_prediction\":\n            x0 = sample - sigma * model_output\n        else:\n            x0 = model_output\n\n        # Exponential Integrator Update (Deterministic Part)\n        if sigma_next == 0:\n            x_next = x0\n        else:\n            # Ancestral SDE logic\n            sigma_up = eta * (sigma_next**2 * (sigma**2 - sigma_next**2) / (sigma**2 + 1e-9))**0.5\n            sigma_down = (sigma_next**2 - sigma_up**2)**0.5\n\n            h_det = -torch.log(sigma_down / sigma) if sigma > 0 and sigma_down > 0 else torch.zeros_like(sigma)\n\n            # Deterministic update to sigma_down\n            x_det = torch.exp(-h_det) * sample + (1 - torch.exp( -h_det)) * x0\n\n            # Stochastic part\n            if eta > 0:\n                noise = randn_tensor(model_output.shape, generator=generator, device=model_output.device, dtype=model_output.dtype)\n                x_next = x_det + sigma_up * noise\n            else:\n                x_next = x_det\n\n        self._step_index += 1\n\n        if not return_dict:\n            return (x_next,)\n\n        return SchedulerOutput(prev_sample=x_next)\n\n    def _init_step_index(self, timestep):\n        if self.begin_index is None:\n            self._step_index = self.index_for_timestep(timestep)\n        else:\n            self._step_index = self._begin_index\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/res4lyf/res_unified_scheduler.py",
    "content": "from typing import ClassVar, List, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.schedulers.scheduling_utils import KarrasDiffusionSchedulers, SchedulerMixin, SchedulerOutput\n\nfrom .phi_functions import Phi\n\n\nclass RESUnifiedScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    RESUnifiedScheduler (Exponential Integrator) ported from RES4LYF.\n    Supports RES 2M, 3M, 2S, 3S, 5S, 6S\n    Supports DEIS 1S, 2M, 3M\n    \"\"\"\n\n    _compatibles: ClassVar[List[str]] = [e.name for e in KarrasDiffusionSchedulers]\n    order: ClassVar[int] = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.00085,\n        beta_end: float = 0.012,\n        beta_schedule: str = \"linear\",\n        prediction_type: str = \"epsilon\",\n        rk_type: str = \"res_2m\",\n        use_analytic_solution: bool = True,\n        rescale_betas_zero_snr: bool = False,\n        timestep_spacing: str = \"linspace\",\n        steps_offset: int = 0,\n        use_karras_sigmas: bool = False,\n        use_exponential_sigmas: bool = False,\n        use_beta_sigmas: bool = False,\n        use_flow_sigmas: bool = False,\n        shift: float = 1.0,\n        use_dynamic_shifting: bool = False,\n        base_shift: float = 0.5,\n        max_shift: float = 1.15,\n        base_image_seq_len: int = 256,\n        max_image_seq_len: int = 4096,\n    ):\n        from .scheduler_utils import betas_for_alpha_bar, rescale_zero_terminal_snr\n\n        if beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        elif beta_schedule == \"squaredcos_cap_v2\":\n            self.betas = betas_for_alpha_bar(num_train_timesteps)\n        else:\n            raise NotImplementedError(f\"{beta_schedule} is not implemented\")\n\n        if rescale_betas_zero_snr:\n            self.betas = rescale_zero_terminal_snr(self.betas)\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n\n        self.sigmas = torch.Tensor([])\n        self.timesteps = torch.Tensor([])\n        self.model_outputs = []\n        self.x0_outputs = []\n        self.prev_sigmas = []\n\n        self._step_index = None\n        self._begin_index = None\n        self.init_noise_sigma = 1.0\n\n    def set_sigmas(self, sigmas: torch.Tensor):\n        self.sigmas = sigmas\n        self._step_index = None\n\n    @property\n    def step_index(self) -> Optional[int]:\n        return self._step_index\n\n    @property\n    def begin_index(self) -> Optional[int]:\n        return self._begin_index\n\n    def set_begin_index(self, begin_index: int = 0) -> None:\n        self._begin_index = begin_index\n\n    def scale_model_input(self, sample: torch.Tensor, timestep: Union[float, torch.Tensor]) -> torch.Tensor:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n        if self.config.prediction_type == \"flow_prediction\":\n            return sample\n        sigma = self.sigmas[self._step_index]\n        return sample / ((sigma**2 + 1) ** 0.5)\n\n    def set_timesteps(self, num_inference_steps: int, device: Union[str, torch.device] = None, mu: Optional[float] = None, dtype: torch.dtype = torch.float32):\n        from .scheduler_utils import (\n            apply_shift,\n            get_dynamic_shift,\n            get_sigmas_beta,\n            get_sigmas_exponential,\n            get_sigmas_flow,\n            get_sigmas_karras,\n        )\n\n        self.num_inference_steps = num_inference_steps\n        timestep_spacing = getattr(self.config, \"timestep_spacing\", \"linspace\")\n        steps_offset = getattr(self.config, \"steps_offset\", 0)\n\n        if timestep_spacing == \"linspace\":\n            timesteps = np.linspace(0, self.config.num_train_timesteps - 1, num_inference_steps, dtype=float)[::-1].copy()\n        elif timestep_spacing == \"leading\":\n            step_ratio = self.config.num_train_timesteps // self.num_inference_steps\n            timesteps = (np.arange(0, num_inference_steps) * step_ratio).round()[::-1].copy()\n            timesteps += steps_offset\n        elif timestep_spacing == \"trailing\":\n            step_ratio = self.config.num_train_timesteps / self.num_inference_steps\n            timesteps = (np.arange(self.config.num_train_timesteps, 0, -step_ratio)).round().copy()\n            timesteps -= 1\n        else:\n            raise ValueError(f\"timestep_spacing {timestep_spacing} is not supported.\")\n\n        # Derived sigma range from alphas_cumprod\n        base_sigmas = np.array(((1 - self.alphas_cumprod) / self.alphas_cumprod) ** 0.5)\n        sigmas = base_sigmas[::-1].copy() # Ensure high to low\n\n        if getattr(self.config, \"use_karras_sigmas\", False):\n            sigmas = get_sigmas_karras(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif getattr(self.config, \"use_exponential_sigmas\", False):\n            sigmas = get_sigmas_exponential(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif getattr(self.config, \"use_beta_sigmas\", False):\n            sigmas = get_sigmas_beta(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif getattr(self.config, \"use_flow_sigmas\", False):\n            sigmas = np.linspace(1.0, 1 / 1000, num_inference_steps)\n        else:\n             if self.config.use_flow_sigmas:\n                  sigmas = np.linspace(1.0, 1 / 1000, num_inference_steps)\n             else:\n                  # Re-sample the base sigmas at the requested steps\n                  idx = np.linspace(0, len(base_sigmas) - 1, num_inference_steps)\n                  sigmas = np.interp(idx, np.arange(len(base_sigmas)), base_sigmas)[::-1].copy()\n\n        shift = getattr(self.config, \"shift\", 1.0)\n        use_dynamic_shifting = getattr(self.config, \"use_dynamic_shifting\", False)\n        if shift != 1.0 or use_dynamic_shifting:\n            if use_dynamic_shifting and mu is not None:\n                shift = get_dynamic_shift(\n                    mu,\n                    getattr(self.config, \"base_shift\", 0.5),\n                    getattr(self.config, \"max_shift\", 1.5),\n                    getattr(self.config, \"base_image_seq_len\", 256),\n                    getattr(self.config, \"max_image_seq_len\", 4096),\n                )\n            sigmas = apply_shift(torch.from_numpy(sigmas), shift).numpy()\n\n        if getattr(self.config, \"use_flow_sigmas\", False):\n             timesteps = sigmas * self.config.num_train_timesteps\n\n        self.sigmas = torch.from_numpy(np.concatenate([sigmas, [0.0]])).to(device=device, dtype=dtype)\n        self.timesteps = torch.from_numpy(timesteps).to(device=device, dtype=dtype)\n        self.init_noise_sigma = self.sigmas.max().item() if self.sigmas.numel() > 0 else 1.0\n\n        self._step_index = None\n        self._begin_index = None\n\n    def index_for_timestep(self, timestep, schedule_timesteps=None):\n        from .scheduler_utils import index_for_timestep\n        if schedule_timesteps is None:\n            schedule_timesteps = self.timesteps\n        return index_for_timestep(timestep, schedule_timesteps)\n\n    def add_noise(\n        self,\n        original_samples: torch.Tensor,\n        noise: torch.Tensor,\n        timesteps: torch.Tensor,\n    ) -> torch.Tensor:\n        from .scheduler_utils import add_noise_to_sample\n        return add_noise_to_sample(original_samples, noise, self.sigmas, timesteps, self.timesteps)\n\n    def _get_coefficients(self, sigma, sigma_next):\n        h = -torch.log(sigma_next / sigma) if sigma > 0 else torch.zeros_like(sigma)\n        phi = Phi(h, [], getattr(self.config, \"use_analytic_solution\", True))\n        phi_1 = phi(1)\n        phi_2 = phi(2)\n        # phi_2 = phi(2) # Moved inside conditional blocks as needed\n\n        history_len = len(self.x0_outputs)\n\n        # Stability: Force Order 1 for final few steps to prevent degradation at low noise levels\n        if self.num_inference_steps is not None and self._step_index >= self.num_inference_steps - 3:\n            return [phi_1], h\n\n        if self.config.rk_type in [\"res_2m\", \"deis_2m\"] and history_len >= 2:\n            h_prev = -torch.log(self.prev_sigmas[-1] / (self.prev_sigmas[-2] + 1e-9))\n            r = h_prev / (h + 1e-9)\n\n            h_prev = -torch.log(self.prev_sigmas[-1] / (self.prev_sigmas[-2] + 1e-9))\n            r = h_prev / (h + 1e-9)\n\n            # Hard Restart: if step sizes vary too wildly, fallback to order 1\n            if r < 0.5 or r > 2.0:\n                 return [phi_1], h\n\n            phi_2 = phi(2)\n            # Correct Adams-Bashforth-like coefficients for Exponential Integrators\n            b2 = -phi_2 / (r + 1e-9)\n            b1 = phi_1 - b2\n            return [b1, b2], h\n        elif self.config.rk_type in [\"res_3m\", \"deis_3m\"] and history_len >= 3:\n            h_prev1 = -torch.log(self.prev_sigmas[-1] / (self.prev_sigmas[-2] + 1e-9))\n            h_prev2 = -torch.log(self.prev_sigmas[-1] / (self.prev_sigmas[-3] + 1e-9))\n            r1 = h_prev1 / (h + 1e-9)\n            r2 = h_prev2 / (h + 1e-9)\n\n            h_prev1 = -torch.log(self.prev_sigmas[-1] / (self.prev_sigmas[-2] + 1e-9))\n            h_prev2 = -torch.log(self.prev_sigmas[-1] / (self.prev_sigmas[-3] + 1e-9))\n            r1 = h_prev1 / (h + 1e-9)\n            r2 = h_prev2 / (h + 1e-9)\n\n            # Hard Restart check\n            if r1 < 0.5 or r1 > 2.0 or r2 < 0.5 or r2 > 2.0:\n                 return [phi_1], h\n\n            phi_2 = phi(2)\n            phi_3 = phi(3)\n\n            # Generalized AB3 for Exponential Integrators (Varying steps)\n            denom = r2 - r1 + 1e-9\n            b3 = (phi_3 + r1 * phi_2) / (r2 * denom)\n            b2 = -(phi_3 + r2 * phi_2) / (r1 * denom)\n            b1 = phi_1 - (b2 + b3)\n            return [b1, b2, b3], h\n\n        return [phi_1], h\n\n    def step(\n        self,\n        model_output: torch.Tensor,\n        timestep: Union[float, torch.Tensor],\n        sample: torch.Tensor,\n        return_dict: bool = True,\n    ) -> Union[SchedulerOutput, Tuple]:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n\n        sigma = self.sigmas[self._step_index]\n        sigma_next = self.sigmas[self._step_index + 1]\n\n        h = -torch.log(sigma_next / sigma) if sigma > 0 and sigma_next > 0 else torch.zeros_like(sigma)\n\n        # RECONSTRUCT X0 (Matching PEC pattern)\n        if self.config.prediction_type == \"epsilon\":\n            x0 = sample - sigma * model_output\n        elif self.config.prediction_type == \"sample\":\n            x0 = model_output\n        elif self.config.prediction_type == \"v_prediction\":\n            alpha_t = 1.0 / (sigma**2 + 1) ** 0.5\n            sigma_t = sigma * alpha_t\n            x0 = alpha_t * sample - sigma_t * model_output\n        elif self.config.prediction_type == \"flow_prediction\":\n            x0 = sample - sigma * model_output\n        else:\n            x0 = model_output\n\n        self.x0_outputs.append(x0)\n        self.model_outputs.append(model_output) # Added for AB support\n        self.prev_sigmas.append(sigma)\n\n        if len(self.x0_outputs) > 3:\n            self.x0_outputs.pop(0)\n            self.model_outputs.pop(0)\n            self.prev_sigmas.pop(0)\n\n        if self.config.prediction_type == \"flow_prediction\":\n            # Variable Step Adams-Bashforth for Flow Matching\n            dt = sigma_next - sigma\n            v_n = model_output\n\n            curr_order = min(len(self.prev_sigmas), 3) # Max order 3 here\n\n            if curr_order == 1:\n                 x_next = sample + dt * v_n\n            elif curr_order == 2:\n                 sigma_prev = self.prev_sigmas[-2]\n                 dt_prev = sigma - sigma_prev\n                 r = dt / dt_prev if abs(dt_prev) > 1e-8 else 0.0\n                 if dt_prev == 0 or r < -0.9 or r > 2.0:\n                     x_next = sample + dt * v_n\n                 else:\n                     c0 = 1 + 0.5 * r\n                     c1 = -0.5 * r\n                     x_next = sample + dt * (c0 * v_n + c1 * self.model_outputs[-2])\n            else:\n                 # AB2 fallback for robustness\n                 sigma_prev = self.prev_sigmas[-2]\n                 dt_prev = sigma - sigma_prev\n                 r = dt / dt_prev if abs(dt_prev) > 1e-8 else 0.0\n                 c0 = 1 + 0.5 * r\n                 c1 = -0.5 * r\n                 x_next = sample + dt * (c0 * v_n + c1 * self.model_outputs[-2])\n\n            self._step_index += 1\n            if not return_dict:\n                return (x_next,)\n            return SchedulerOutput(prev_sample=x_next)\n\n        # GET COEFFICIENTS\n        b, h_val = self._get_coefficients(sigma, sigma_next)\n\n        if len(b) == 1:\n            res = b[0] * x0\n        elif len(b) == 2:\n            res = b[0] * self.x0_outputs[-1] + b[1] * self.x0_outputs[-2]\n        elif len(b) == 3:\n            res = b[0] * self.x0_outputs[-1] + b[1] * self.x0_outputs[-2] + b[2] * self.x0_outputs[-3]\n        else:\n            res = b[0] * x0\n\n        # UPDATE\n        if sigma_next == 0:\n            x_next = x0\n        else:\n            # Propagate in x-space (unnormalized)\n            x_next = torch.exp(-h) * sample + h * res\n\n        self._step_index += 1\n\n        if not return_dict:\n            return (x_next,)\n\n        return SchedulerOutput(prev_sample=x_next)\n\n    def _init_step_index(self, timestep):\n        if self.begin_index is None:\n            if isinstance(timestep, torch.Tensor):\n                timestep = timestep.to(self.timesteps.device)\n            self._step_index = self.index_for_timestep(timestep)\n        else:\n            self._step_index = self._begin_index\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/res4lyf/riemannian_flow_scheduler.py",
    "content": "# Copyright 2025 The RES4LYF Team (Clybius) and The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nfrom typing import ClassVar, List, Literal, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.schedulers.scheduling_utils import KarrasDiffusionSchedulers, SchedulerMixin, SchedulerOutput\n\nfrom diffusers.utils import logging\n\nlogger = logging.get_logger(__name__)\n\n\nclass RiemannianFlowScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    Riemannian Flow scheduler using Exponential Integrator step.\n    \"\"\"\n\n    _compatibles: ClassVar[List[str]] = [e.name for e in KarrasDiffusionSchedulers]\n    order: ClassVar[int] = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.00085,\n        beta_end: float = 0.012,\n        beta_schedule: str = \"linear\",\n        metric_type: Literal[\"euclidean\", \"hyperbolic\", \"spherical\", \"lorentzian\"] = \"hyperbolic\",\n        curvature: float = 1.0,\n        prediction_type: str = \"epsilon\",\n        timestep_spacing: str = \"linspace\",\n        rescale_betas_zero_snr: bool = False,\n        use_karras_sigmas: bool = False,\n        use_exponential_sigmas: bool = False,\n        use_beta_sigmas: bool = False,\n        use_flow_sigmas: bool = False,\n        shift: float = 1.0,\n        use_dynamic_shifting: bool = False,\n        base_shift: float = 0.5,\n        max_shift: float = 1.15,\n        base_image_seq_len: int = 256,\n        max_image_seq_len: int = 4096,\n    ):\n        from .scheduler_utils import betas_for_alpha_bar, rescale_zero_terminal_snr\n\n        if beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        elif beta_schedule == \"squaredcos_cap_v2\":\n            self.betas = betas_for_alpha_bar(num_train_timesteps)\n        else:\n            raise NotImplementedError(f\"{beta_schedule} does not exist.\")\n\n        if rescale_betas_zero_snr:\n            self.betas = rescale_zero_terminal_snr(self.betas)\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n\n        # Standard deviation of the initial noise distribution\n        self.init_noise_sigma = 1.0\n\n        # Setable values\n        self.num_inference_steps = None\n        self.timesteps = torch.from_numpy(np.arange(0, num_train_timesteps)[::-1].copy())\n        self.sigmas = torch.zeros((num_train_timesteps,), dtype=torch.float32)\n\n        self._step_index = None\n        self._begin_index = None\n\n    @property\n    def step_index(self) -> Optional[int]:\n        return self._step_index\n\n    @property\n    def begin_index(self) -> Optional[int]:\n        return self._begin_index\n\n    def set_begin_index(self, begin_index: int = 0) -> None:\n        self._begin_index = begin_index\n\n    def set_timesteps(self, num_inference_steps: int, device: Union[str, torch.device] = None, mu: Optional[float] = None, dtype: torch.dtype = torch.float32):\n        from .scheduler_utils import (\n            apply_shift,\n            get_dynamic_shift,\n            get_sigmas_beta,\n            get_sigmas_exponential,\n            get_sigmas_flow,\n            get_sigmas_karras,\n        )\n\n        self.num_inference_steps = num_inference_steps\n        timestep_spacing = getattr(self.config, \"timestep_spacing\", \"linspace\")\n        steps_offset = getattr(self.config, \"steps_offset\", 0)\n\n        if timestep_spacing == \"linspace\":\n            timesteps = np.linspace(0, self.config.num_train_timesteps - 1, num_inference_steps, dtype=float)[::-1].copy()\n        elif timestep_spacing == \"leading\":\n            step_ratio = self.config.num_train_timesteps // self.num_inference_steps\n            timesteps = (np.arange(0, num_inference_steps) * step_ratio).round()[::-1].copy()\n            timesteps += steps_offset\n        elif timestep_spacing == \"trailing\":\n            step_ratio = self.config.num_train_timesteps / self.num_inference_steps\n            timesteps = (np.arange(self.config.num_train_timesteps, 0, -step_ratio)).round().copy()\n            timesteps -= 1\n        else:\n            raise ValueError(f\"timestep_spacing {timestep_spacing} is not supported.\")\n\n        # Derived sigma range from alphas_cumprod\n        # In FM, we usually go from sigma_max to sigma_min\n        base_sigmas = np.array(((1 - self.alphas_cumprod) / self.alphas_cumprod) ** 0.5)\n        # Note: alphas_cumprod[0] is ~0.999 (small sigma), alphas_cumprod[-1] is ~0.0001 (large sigma)\n        start_sigma = base_sigmas[-1]\n        end_sigma = base_sigmas[0]\n\n        t = torch.linspace(0, 1, num_inference_steps, device=device)\n        metric_type = self.config.metric_type\n        curvature = self.config.curvature\n\n        if metric_type == \"euclidean\":\n            result = start_sigma * (1 - t) + end_sigma * t\n        elif metric_type == \"hyperbolic\":\n            x_start = torch.tanh(torch.tensor(start_sigma / 2, device=device))\n            x_end = torch.tanh(torch.tensor(end_sigma / 2, device=device))\n            d = torch.acosh(torch.clamp(1 + 2 * ((x_start - x_end)**2) / ((1 - x_start**2) * (1 - x_end**2) + 1e-9), min=1.0))\n            lambda_t = torch.sinh(t * d) / (torch.sinh(d) + 1e-9)\n            result = 2 * torch.atanh(torch.clamp((1 - lambda_t) * x_start + lambda_t * x_end, -0.999, 0.999))\n        elif metric_type == \"spherical\":\n            k = torch.tensor(curvature, device=device)\n            theta_start = start_sigma * torch.sqrt(k)\n            theta_end = end_sigma * torch.sqrt(k)\n            result = torch.sin((1 - t) * theta_start + t * theta_end) / torch.sqrt(k)\n        elif metric_type == \"lorentzian\":\n            gamma = 1 / torch.sqrt(torch.clamp(1 - curvature * t**2, min=1e-9))\n            result = (start_sigma * (1 - t) + end_sigma * t) * gamma\n        else:\n            result = start_sigma * (1 - t) + end_sigma * t\n\n        result = torch.clamp(result, min=min(start_sigma, end_sigma), max=max(start_sigma, end_sigma))\n\n        if start_sigma > end_sigma:\n            result, _ = torch.sort(result, descending=True)\n\n        sigmas = result.cpu().numpy()\n\n        if getattr(self.config, \"use_karras_sigmas\", False):\n            sigmas = get_sigmas_karras(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif getattr(self.config, \"use_exponential_sigmas\", False):\n            sigmas = get_sigmas_exponential(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif getattr(self.config, \"use_beta_sigmas\", False):\n            sigmas = get_sigmas_beta(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif getattr(self.config, \"use_flow_sigmas\", False):\n            sigmas = get_sigmas_flow(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n\n        shift = getattr(self.config, \"shift\", 1.0)\n        use_dynamic_shifting = getattr(self.config, \"use_dynamic_shifting\", False)\n        if shift != 1.0 or use_dynamic_shifting:\n            if use_dynamic_shifting and mu is not None:\n                shift = get_dynamic_shift(\n                    mu,\n                    getattr(self.config, \"base_shift\", 0.5),\n                    getattr(self.config, \"max_shift\", 1.5),\n                    getattr(self.config, \"base_image_seq_len\", 256),\n                    getattr(self.config, \"max_image_seq_len\", 4096),\n                )\n            sigmas = apply_shift(torch.from_numpy(sigmas), shift).numpy()\n\n        self.sigmas = torch.from_numpy(np.concatenate([sigmas, [0.0]])).to(device=device, dtype=dtype)\n        self.timesteps = torch.from_numpy(timesteps).to(device=device, dtype=dtype)\n        self.init_noise_sigma = self.sigmas.max().item() if self.sigmas.numel() > 0 else 1.0\n\n        self._step_index = None\n        self._begin_index = None\n\n    def index_for_timestep(self, timestep, schedule_timesteps=None):\n        from .scheduler_utils import index_for_timestep\n        if schedule_timesteps is None:\n            schedule_timesteps = self.timesteps\n        return index_for_timestep(timestep, schedule_timesteps)\n\n    def add_noise(\n        self,\n        original_samples: torch.Tensor,\n        noise: torch.Tensor,\n        timesteps: torch.Tensor,\n    ) -> torch.Tensor:\n        from .scheduler_utils import add_noise_to_sample\n        return add_noise_to_sample(original_samples, noise, self.sigmas, timesteps, self.timesteps)\n\n    def scale_model_input(self, sample: torch.Tensor, timestep: Union[float, torch.Tensor]) -> torch.Tensor:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n        if self.config.prediction_type == \"flow_prediction\":\n            return sample\n        sigma = self.sigmas[self._step_index]\n        sample = sample / ((sigma**2 + 1) ** 0.5)\n        return sample\n\n    def step(\n        self,\n        model_output: torch.Tensor,\n        timestep: Union[float, torch.Tensor],\n        sample: torch.Tensor,\n        return_dict: bool = True,\n    ) -> Union[SchedulerOutput, Tuple]:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n\n        step_index = self._step_index\n        sigma = self.sigmas[step_index]\n        sigma_next = self.sigmas[step_index + 1]\n\n        # Determine denoised (x_0 prediction)\n        if self.config.prediction_type == \"epsilon\":\n            x0 = sample - sigma * model_output\n        elif self.config.prediction_type == \"v_prediction\":\n            alpha_t = 1.0 / (sigma**2 + 1)**0.5\n            sigma_t = sigma * alpha_t\n            x0 = alpha_t * sample - sigma_t * model_output\n        elif self.config.prediction_type == \"sample\":\n            x0 = model_output\n        elif self.config.prediction_type == \"flow_prediction\":\n            x0 = sample - sigma * model_output\n        else:\n            x0 = model_output\n\n        # Exponential Integrator Update (1st order)\n        if sigma_next == 0:\n            x_next = x0\n        else:\n            h = -torch.log(sigma_next / sigma) if sigma > 0 and sigma_next > 0 else torch.zeros_like(sigma)\n            x_next = torch.exp(-h) * sample + (1 - torch.exp(-h)) * x0\n\n        self._step_index += 1\n\n        if not return_dict:\n            return (x_next,)\n        return SchedulerOutput(prev_sample=x_next)\n\n    def _init_step_index(self, timestep):\n        if self.begin_index is None:\n            if isinstance(timestep, torch.Tensor):\n                timestep = timestep.to(self.timesteps.device)\n            self._step_index = self.index_for_timestep(timestep)\n        else:\n            self._step_index = self._begin_index\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/res4lyf/rungekutta_44s_scheduler.py",
    "content": "from typing import List, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.schedulers.scheduling_utils import SchedulerMixin, SchedulerOutput\n\n\nclass RungeKutta44Scheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    RK4: Classical 4th-order Runge-Kutta scheduler.\n    Adapted from the RES4LYF repository.\n\n    This scheduler uses 4 stages per step.\n    \"\"\"\n\n    order = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.00085,\n        beta_end: float = 0.012,\n        beta_schedule: str = \"linear\",\n        trained_betas: Optional[Union[np.ndarray, List[float]]] = None,\n        prediction_type: str = \"epsilon\",\n        use_karras_sigmas: bool = False,\n        use_exponential_sigmas: bool = False,\n        use_beta_sigmas: bool = False,\n        use_flow_sigmas: bool = False,\n        sigma_min: Optional[float] = None,\n        sigma_max: Optional[float] = None,\n        rho: float = 7.0,\n        shift: Optional[float] = None,\n        base_shift: float = 0.5,\n        max_shift: float = 1.15,\n        use_dynamic_shifting: bool = False,\n        timestep_spacing: str = \"linspace\",\n        clip_sample: bool = False,\n        sample_max_value: float = 1.0,\n        set_alpha_to_one: bool = False,\n        skip_prk_steps: bool = False,\n        interpolation_type: str = \"linear\",\n        steps_offset: int = 0,\n        timestep_type: str = \"discrete\",\n        rescale_betas_zero_snr: bool = False,\n        final_sigmas_type: str = \"zero\",\n    ):\n        if trained_betas is not None:\n            self.betas = torch.tensor(trained_betas, dtype=torch.float32)\n        elif beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        else:\n            raise NotImplementedError(f\"{beta_schedule} is not implemented for RungeKutta44Scheduler\")\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n\n        self.sigmas = None\n        self.timesteps = torch.from_numpy(np.arange(0, num_train_timesteps)[::-1].copy())\n        self.init_noise_sigma = 1.0\n\n        # Internal state for multi-stage\n        self.model_outputs = []\n        self.sample_at_start_of_step = None\n        self._sigmas_cpu = None\n        self._step_index = None\n\n    def set_timesteps(self, num_inference_steps: int, device: Union[str, torch.device] = None, mu: Optional[float] = None, dtype: torch.dtype = torch.float32):\n        self.num_inference_steps = num_inference_steps\n\n        # 1. Base sigmas\n        timesteps = np.linspace(0, self.config.num_train_timesteps - 1, num_inference_steps, dtype=float)[::-1].copy()\n        sigmas = np.array(((1 - self.alphas_cumprod) / self.alphas_cumprod) ** 0.5)\n        if self.config.interpolation_type == \"linear\":\n            sigmas = np.interp(timesteps, np.arange(len(sigmas)), sigmas)\n        elif self.config.interpolation_type == \"log_linear\":\n            sigmas = np.exp(np.interp(timesteps, np.arange(len(sigmas)), np.log(sigmas)))\n        else:\n            raise ValueError(f\"interpolation_type must be one of 'linear' or 'log_linear', got {self.config.interpolation_type}\")\n\n        if self.config.use_karras_sigmas:\n            sigma_min = self.config.sigma_min if self.config.sigma_min is not None else sigmas[-1]\n            sigma_max = self.config.sigma_max if self.config.sigma_max is not None else sigmas[0]\n            rho = self.config.rho\n            ramp = np.linspace(0, 1, num_inference_steps)\n            min_inv_rho = sigma_min ** (1 / rho)\n            max_inv_rho = sigma_max ** (1 / rho)\n            sigmas = (max_inv_rho + ramp * (min_inv_rho - max_inv_rho)) ** rho\n\n        # 2. Add sub-step sigmas for multi-stage RK\n        # RK4 has c = [0, 1/2, 1/2, 1]\n        c_values = [0.0, 0.5, 0.5, 1.0]\n\n        sigmas_expanded = []\n        for i in range(len(sigmas) - 1):\n            s_curr = sigmas[i]\n            s_next = sigmas[i + 1]\n            # Intermediate sigmas: s_curr + c * (s_next - s_curr)\n            for c in c_values:\n                # Add a tiny epsilon to duplicate sigmas to allow distinct indexing if needed,\n                # but better to rely on internal counter.\n                sigmas_expanded.append(s_curr + c * (s_next - s_curr))\n        sigmas_expanded.append(0.0)  # terminal sigma\n\n        # 3. Map back to timesteps\n        sigmas_interpolated = np.array(sigmas_expanded)\n        # Linear remapping for Flow Matching\n        timesteps_expanded = sigmas_interpolated * self.config.num_train_timesteps\n\n        self.sigmas = torch.from_numpy(sigmas_interpolated).to(device=device, dtype=dtype)\n        self.timesteps = torch.from_numpy(timesteps_expanded + self.config.steps_offset).to(device=device, dtype=dtype)\n        self.init_noise_sigma = self.sigmas.max().item() if self.sigmas.numel() > 0 else 1.0\n\n        self._sigmas_cpu = self.sigmas.detach().cpu().numpy()\n\n        self.model_outputs = []\n        self.sample_at_start_of_step = None\n        self._step_index = None\n\n    @property\n    def step_index(self):\n        \"\"\"\n        The index counter for the current timestep. It will increase 1 after each scheduler step.\n        \"\"\"\n        return self._step_index\n\n    def index_for_timestep(self, timestep, schedule_timesteps=None):\n        if schedule_timesteps is None:\n            schedule_timesteps = self.timesteps\n\n        # Use argmin for robust float matching\n        index = torch.abs(schedule_timesteps - timestep).argmin().item()\n        return index\n\n    def _init_step_index(self, timestep):\n        if isinstance(timestep, torch.Tensor):\n            timestep = timestep.to(self.timesteps.device)\n        self._step_index = self.index_for_timestep(timestep)\n\n    def scale_model_input(self, sample: torch.Tensor, timestep: Union[float, torch.Tensor]) -> torch.Tensor:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n        if self.config.prediction_type == \"flow_prediction\":\n            return sample\n        sigma = self._sigmas_cpu[self._step_index]\n        return sample / ((sigma**2 + 1) ** 0.5)\n\n    def step(\n        self,\n        model_output: torch.Tensor,\n        timestep: Union[float, torch.Tensor],\n        sample: torch.Tensor,\n        return_dict: bool = True,\n    ) -> Union[SchedulerOutput, Tuple]:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n\n        step_index = self._step_index\n        stage_index = step_index % 4\n\n        # Current and next step interval sigmas\n        base_step_index = (step_index // 4) * 4\n        sigma_curr = self._sigmas_cpu[base_step_index]\n        sigma_next_idx = min(base_step_index + 4, len(self._sigmas_cpu) - 1)\n        sigma_next = self._sigmas_cpu[sigma_next_idx]  # The sigma at the end of this 4-stage step\n\n        h = sigma_next - sigma_curr\n\n        sigma_t = self._sigmas_cpu[step_index]\n        alpha_t = 1 / (sigma_t**2 + 1) ** 0.5\n        sigma_actual = sigma_t * alpha_t\n\n        prediction_type = getattr(self.config, \"prediction_type\", \"epsilon\")\n        if prediction_type == \"epsilon\":\n            denoised = sample - sigma_t * model_output\n        elif prediction_type == \"v_prediction\":\n            alpha_t = 1 / (sigma_t**2 + 1) ** 0.5\n            sigma_actual = sigma_t * alpha_t\n            denoised = alpha_t * sample - sigma_actual * model_output\n        elif prediction_type == \"flow_prediction\":\n            denoised = sample - sigma_t * model_output\n        elif prediction_type == \"sample\":\n            denoised = model_output\n        else:\n            raise ValueError(f\"prediction_type error: {prediction_type}\")\n\n        if self.config.clip_sample:\n            denoised = denoised.clamp(-self.config.sample_max_value, self.config.sample_max_value)\n\n        # derivative = (x - x0) / sigma\n        derivative = (sample - denoised) / sigma_t if sigma_t > 1e-6 else torch.zeros_like(sample)\n\n        if self.sample_at_start_of_step is None:\n            if stage_index > 0:\n                # Mid-step fallback for Img2Img/Inpainting\n                sigma_next_t = self._sigmas_cpu[self._step_index + 1]\n                dt = sigma_next_t - sigma_t\n                prev_sample = sample + dt * derivative\n                self._step_index += 1\n                if not return_dict:\n                    return (prev_sample,)\n                return SchedulerOutput(prev_sample=prev_sample)\n\n            self.sample_at_start_of_step = sample\n            self.model_outputs = [derivative] * stage_index\n\n        if stage_index == 0:\n            self.model_outputs = [derivative]\n            self.sample_at_start_of_step = sample\n            # Stage 2 input: y + 0.5 * h * k1\n            prev_sample = self.sample_at_start_of_step + 0.5 * h * derivative\n        elif stage_index == 1:\n            self.model_outputs.append(derivative)\n            # Stage 3 input: y + 0.5 * h * k2\n            prev_sample = self.sample_at_start_of_step + 0.5 * h * derivative\n        elif stage_index == 2:\n            self.model_outputs.append(derivative)\n            # Stage 4 input: y + h * k3\n            prev_sample = self.sample_at_start_of_step + h * derivative\n        elif stage_index == 3:\n            self.model_outputs.append(derivative)\n            # Final result: y + (h/6) * (k1 + 2*k2 + 2*k3 + k4)\n            k1, k2, k3, k4 = self.model_outputs\n            prev_sample = self.sample_at_start_of_step + (h / 6.0) * (k1 + 2 * k2 + 2 * k3 + k4)\n            # Clear state\n            self.model_outputs = []\n            self.sample_at_start_of_step = None\n\n        # Increment step index\n        self._step_index += 1\n\n        if not return_dict:\n            return (prev_sample,)\n\n        return SchedulerOutput(prev_sample=prev_sample)\n\n    def add_noise(\n        self,\n        original_samples: torch.Tensor,\n        noise: torch.Tensor,\n        timesteps: torch.Tensor,\n    ) -> torch.Tensor:\n        from .scheduler_utils import add_noise_to_sample\n        return add_noise_to_sample(original_samples, noise, self.sigmas, timesteps, self.timesteps)\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/res4lyf/rungekutta_57s_scheduler.py",
    "content": "from typing import List, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.schedulers.scheduling_utils import SchedulerMixin, SchedulerOutput\n\n\nclass RungeKutta57Scheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    RK5_7S: 5th-order Runge-Kutta scheduler with 7 stages.\n    Adapted from the RES4LYF repository.\n    \"\"\"\n\n    order = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.00085,\n        beta_end: float = 0.012,\n        beta_schedule: str = \"linear\",\n        trained_betas: Optional[Union[np.ndarray, List[float]]] = None,\n        prediction_type: str = \"epsilon\",\n        use_karras_sigmas: bool = False,\n        use_exponential_sigmas: bool = False,\n        use_beta_sigmas: bool = False,\n        use_flow_sigmas: bool = False,\n        sigma_min: Optional[float] = None,\n        sigma_max: Optional[float] = None,\n        rho: float = 7.0,\n        shift: Optional[float] = None,\n        base_shift: float = 0.5,\n        max_shift: float = 1.15,\n        use_dynamic_shifting: bool = False,\n        timestep_spacing: str = \"linspace\",\n        clip_sample: bool = False,\n        sample_max_value: float = 1.0,\n        set_alpha_to_one: bool = False,\n        skip_prk_steps: bool = False,\n        interpolation_type: str = \"linear\",\n        steps_offset: int = 0,\n        timestep_type: str = \"discrete\",\n        rescale_betas_zero_snr: bool = False,\n        final_sigmas_type: str = \"zero\",\n    ):\n        if trained_betas is not None:\n            self.betas = torch.tensor(trained_betas, dtype=torch.float32)\n        elif beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        else:\n            raise NotImplementedError(f\"{beta_schedule} is not implemented\")\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n\n        self.num_inference_steps = None\n        self.timesteps = torch.from_numpy(np.arange(0, num_train_timesteps)[::-1].copy())\n        self.sigmas = None\n        self.init_noise_sigma = 1.0\n\n        # Internal state\n        self.model_outputs = []\n        self.sample_at_start_of_step = None\n        self._sigmas_cpu = None\n        self._step_index = None\n        self._timesteps_cpu = None\n\n    def set_timesteps(\n        self,\n        num_inference_steps: int,\n        device: Union[str, torch.device] = None,\n        mu: Optional[float] = None, dtype: torch.dtype = torch.float32):\n        self.num_inference_steps = num_inference_steps\n\n        # 1. Spacing\n        if self.config.timestep_spacing == \"linspace\":\n            timesteps = np.linspace(self.config.num_train_timesteps - 1, 0, num_inference_steps, dtype=float).copy()\n        elif self.config.timestep_spacing == \"leading\":\n            step_ratio = self.config.num_train_timesteps // num_inference_steps\n            timesteps = (np.arange(0, num_inference_steps) * step_ratio).round()[::-1].copy().astype(float)\n        elif self.config.timestep_spacing == \"trailing\":\n            step_ratio = self.config.num_train_timesteps / num_inference_steps\n            timesteps = np.arange(self.config.num_train_timesteps, 0, -step_ratio).round().copy().astype(float)\n            timesteps -= step_ratio\n        else:\n            raise ValueError(f\"timestep_spacing must be one of 'linspace', 'leading', or 'trailing', got {self.config.timestep_spacing}\")\n\n        # Ensure trailing ends at 0\n        if self.config.timestep_spacing == \"trailing\":\n            timesteps = np.maximum(timesteps, 0)\n\n        sigmas = np.array(((1 - self.alphas_cumprod) / self.alphas_cumprod) ** 0.5)\n        if self.config.interpolation_type == \"linear\":\n            sigmas = np.interp(timesteps, np.arange(len(sigmas)), sigmas)\n        elif self.config.interpolation_type == \"log_linear\":\n            sigmas = np.exp(np.interp(timesteps, np.arange(len(sigmas)), np.log(sigmas)))\n        else:\n            raise ValueError(f\"interpolation_type must be one of 'linear' or 'log_linear', got {self.config.interpolation_type}\")\n\n        if self.config.use_karras_sigmas:\n            sigma_min = self.config.sigma_min if self.config.sigma_min is not None else sigmas[-1]\n            sigma_max = self.config.sigma_max if self.config.sigma_max is not None else sigmas[0]\n            rho = self.config.rho\n            ramp = np.linspace(0, 1, num_inference_steps)\n            sigmas = (sigma_max ** (1 / rho) + ramp * (sigma_min ** (1 / rho) - sigma_max ** (1 / rho))) ** rho\n        elif self.config.use_exponential_sigmas:\n            sigma_min = self.config.sigma_min if self.config.sigma_min is not None else sigmas[-1]\n            sigma_max = self.config.sigma_max if self.config.sigma_max is not None else sigmas[0]\n            sigmas = np.exp(np.linspace(np.log(sigma_max), np.log(sigma_min), num_inference_steps))\n        elif self.config.use_beta_sigmas:\n            sigma_min = self.config.sigma_min if self.config.sigma_min is not None else sigmas[-1]\n            sigma_max = self.config.sigma_max if self.config.sigma_max is not None else sigmas[0]\n            alpha, beta = 0.6, 0.6\n            ramp = np.linspace(0, 1, num_inference_steps)\n            try:\n                import torch.distributions as dist\n\n                b = dist.Beta(alpha, beta)\n                ramp = b.sample((num_inference_steps,)).sort().values.numpy()\n            except Exception:\n                pass\n            sigmas = sigma_max * (1 - ramp) + sigma_min * ramp\n        elif self.config.use_flow_sigmas:\n            sigmas = np.linspace(1.0, 1 / 1000, num_inference_steps)\n\n        # 3. Shifting\n        if self.config.use_dynamic_shifting and mu is not None:\n            sigmas = mu * sigmas / (1 + (mu - 1) * sigmas)\n        elif self.config.shift is not None:\n            sigmas = self.config.shift * sigmas / (1 + (self.config.shift - 1) * sigmas)\n\n        # RK5_7s c values: [0, 1/5, 3/10, 4/5, 8/9, 1, 1]\n        c_values = [0, 1 / 5, 3 / 10, 4 / 5, 8 / 9, 1, 1]\n\n        sigmas_expanded = []\n        for i in range(len(sigmas) - 1):\n            s_curr = sigmas[i]\n            s_next = sigmas[i + 1]\n            for c in c_values:\n                sigmas_expanded.append(s_curr + c * (s_next - s_curr))\n        sigmas_expanded.append(0.0)\n\n        sigmas_interpolated = np.array(sigmas_expanded)\n        # Linear remapping for Flow Matching\n        timesteps_expanded = sigmas_interpolated * self.config.num_train_timesteps\n\n        self.sigmas = torch.from_numpy(sigmas_interpolated).to(device=device, dtype=dtype)\n        self.timesteps = torch.from_numpy(timesteps_expanded + self.config.steps_offset).to(device=device, dtype=dtype)\n        self.init_noise_sigma = self.sigmas.max().item() if self.sigmas.numel() > 0 else 1.0\n\n        self._sigmas_cpu = self.sigmas.detach().cpu().numpy()\n        self._timesteps_cpu = self.timesteps.detach().cpu().numpy()\n        self._step_index = None\n\n        self.model_outputs = []\n        self.sample_at_start_of_step = None\n\n    @property\n    def step_index(self):\n        \"\"\"\n        The index counter for the current timestep. It will increase 1 after each scheduler step.\n        \"\"\"\n        return self._step_index\n\n    def index_for_timestep(self, timestep, schedule_timesteps=None):\n        from .scheduler_utils import index_for_timestep\n        if schedule_timesteps is None:\n            schedule_timesteps = self.timesteps\n        return index_for_timestep(timestep, schedule_timesteps)\n\n    def _init_step_index(self, timestep):\n        if self._step_index is None:\n            if isinstance(timestep, torch.Tensor):\n                timestep = timestep.to(self.timesteps.device)\n            self._step_index = self.index_for_timestep(timestep)\n\n    def scale_model_input(self, sample: torch.Tensor, timestep: Union[float, torch.Tensor]) -> torch.Tensor:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n        if self.config.prediction_type == \"flow_prediction\":\n            return sample\n        sigma = self._sigmas_cpu[self._step_index]\n        return sample / ((sigma**2 + 1) ** 0.5)\n\n    def step(\n        self,\n        model_output: torch.Tensor,\n        timestep: Union[float, torch.Tensor],\n        sample: torch.Tensor,\n        return_dict: bool = True,\n    ) -> Union[SchedulerOutput, Tuple]:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n\n        # Dormand-Prince 5(4) Coefficients\n        a = [\n            [],\n            [1/5],\n            [3/40, 9/40],\n            [44/45, -56/15, 32/9],\n            [19372/6561, -25360/2187, 64448/6561, -212/729],\n            [9017/3168, -355/33, 46732/5247, 49/176, -5103/18656],\n            [35/384, 0, 500/1113, 125/192, -2187/6784, 11/84]\n        ]\n        b = [35/384, 0, 500/1113, 125/192, -2187/6784, 11/84, 0]\n\n        step_index = self._step_index\n        stage_index = step_index % 7\n\n        base_step_index = (step_index // 7) * 7\n        sigma_curr = self._sigmas_cpu[base_step_index]\n        sigma_next_idx = min(base_step_index + 7, len(self._sigmas_cpu) - 1)\n        sigma_next = self._sigmas_cpu[sigma_next_idx]\n        h = sigma_next - sigma_curr\n\n        sigma_t = self._sigmas_cpu[step_index]\n        alpha_t = 1 / (sigma_t**2 + 1) ** 0.5\n        sigma_actual = sigma_t * alpha_t\n        prediction_type = getattr(self.config, \"prediction_type\", \"epsilon\")\n        if prediction_type == \"epsilon\":\n            denoised = sample - sigma_t * model_output\n        elif prediction_type == \"v_prediction\":\n            alpha_t = 1 / (sigma_t**2 + 1) ** 0.5\n            sigma_actual = sigma_t * alpha_t\n            denoised = alpha_t * sample - sigma_actual * model_output\n        elif prediction_type == \"flow_prediction\":\n            denoised = sample - sigma_t * model_output\n        elif prediction_type == \"sample\":\n            denoised = model_output\n        else:\n            raise ValueError(f\"prediction_type error: {prediction_type}\")\n\n        if self.config.clip_sample:\n            denoised = denoised.clamp(-self.config.sample_max_value, self.config.sample_max_value)\n\n        # derivative = (x - x0) / sigma\n        derivative = (sample - denoised) / sigma_t if sigma_t > 1e-6 else torch.zeros_like(sample)\n\n        if self.sample_at_start_of_step is None:\n            if stage_index > 0:\n                # Mid-step fallback for Img2Img/Inpainting\n                sigma_next_t = self._sigmas_cpu[self._step_index + 1]\n                dt = sigma_next_t - sigma_t\n                prev_sample = sample + dt * derivative\n                self._step_index += 1\n                if not return_dict:\n                    return (prev_sample,)\n                return SchedulerOutput(prev_sample=prev_sample)\n\n            self.sample_at_start_of_step = sample\n            self.model_outputs = [derivative] * stage_index\n\n        if stage_index == 0:\n            self.model_outputs = [derivative]\n            self.sample_at_start_of_step = sample\n        else:\n            self.model_outputs.append(derivative)\n\n        if stage_index < 6:\n            # Predict next stage sample: y_next_stage = y_start + h * sum(a[stage_index+1][j] * k[j])\n            next_a_row = a[stage_index + 1]\n            sum_ak = torch.zeros_like(derivative)\n            for j, weight in enumerate(next_a_row):\n                sum_ak += weight * self.model_outputs[j]\n\n            prev_sample = self.sample_at_start_of_step + h * sum_ak\n        else:\n            # Final 7th stage complete, calculate final step\n            sum_bk = torch.zeros_like(derivative)\n            for j, weight in enumerate(b):\n                sum_bk += weight * self.model_outputs[j]\n\n            prev_sample = self.sample_at_start_of_step + h * sum_bk\n\n            # Clear state\n            self.model_outputs = []\n            self.sample_at_start_of_step = None\n\n        self._step_index += 1\n\n        if not return_dict:\n            return (prev_sample,)\n        return SchedulerOutput(prev_sample=prev_sample)\n\n    def add_noise(\n        self,\n        original_samples: torch.Tensor,\n        noise: torch.Tensor,\n        timesteps: torch.Tensor,\n    ) -> torch.Tensor:\n        from .scheduler_utils import add_noise_to_sample\n        return add_noise_to_sample(original_samples, noise, self.sigmas, timesteps, self.timesteps)\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/res4lyf/rungekutta_67s_scheduler.py",
    "content": "from typing import List, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.schedulers.scheduling_utils import SchedulerMixin, SchedulerOutput\n\n\nclass RungeKutta67Scheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    RK6_7S: 6th-order Runge-Kutta scheduler with 7 stages.\n    Adapted from the RES4LYF repository.\n    (Note: Defined as 5th order in some contexts, but follows the 7-stage tableau).\n    \"\"\"\n\n    order = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.00085,\n        beta_end: float = 0.012,\n        beta_schedule: str = \"linear\",\n        trained_betas: Optional[Union[np.ndarray, List[float]]] = None,\n        prediction_type: str = \"epsilon\",\n        use_karras_sigmas: bool = False,\n        use_exponential_sigmas: bool = False,\n        use_beta_sigmas: bool = False,\n        use_flow_sigmas: bool = False,\n        sigma_min: Optional[float] = None,\n        sigma_max: Optional[float] = None,\n        rho: float = 7.0,\n        shift: Optional[float] = None,\n        base_shift: float = 0.5,\n        max_shift: float = 1.15,\n        use_dynamic_shifting: bool = False,\n        timestep_spacing: str = \"linspace\",\n        clip_sample: bool = False,\n        sample_max_value: float = 1.0,\n        set_alpha_to_one: bool = False,\n        skip_prk_steps: bool = False,\n        interpolation_type: str = \"linear\",\n        steps_offset: int = 0,\n        timestep_type: str = \"discrete\",\n        rescale_betas_zero_snr: bool = False,\n        final_sigmas_type: str = \"zero\",\n    ):\n        if trained_betas is not None:\n            self.betas = torch.tensor(trained_betas, dtype=torch.float32)\n        elif beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        else:\n            raise NotImplementedError(f\"{beta_schedule} is not implemented\")\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n        self.init_noise_sigma = 1.0\n\n        # internal state\n        self.num_inference_steps = None\n        self.timesteps = torch.from_numpy(np.arange(0, num_train_timesteps)[::-1].copy())\n        self.sigmas = None\n        self.model_outputs = []\n        self.sample_at_start_of_step = None\n        self._sigmas_cpu = None\n        self._timesteps_cpu = None\n        self._step_index = None\n\n    def set_timesteps(\n        self,\n        num_inference_steps: int,\n        device: Union[str, torch.device] = None,\n        mu: Optional[float] = None, dtype: torch.dtype = torch.float32):\n        self.num_inference_steps = num_inference_steps\n\n        # 1. Spacing\n        if self.config.timestep_spacing == \"linspace\":\n            timesteps = np.linspace(self.config.num_train_timesteps - 1, 0, num_inference_steps, dtype=float).copy()\n        elif self.config.timestep_spacing == \"leading\":\n            step_ratio = self.config.num_train_timesteps // num_inference_steps\n            timesteps = (np.arange(0, num_inference_steps) * step_ratio).round()[::-1].copy().astype(float)\n        elif self.config.timestep_spacing == \"trailing\":\n            step_ratio = self.config.num_train_timesteps / num_inference_steps\n            timesteps = np.arange(self.config.num_train_timesteps, 0, -step_ratio).round().copy().astype(float)\n            timesteps -= step_ratio\n        else:\n            raise ValueError(f\"timestep_spacing must be one of 'linspace', 'leading', or 'trailing', got {self.config.timestep_spacing}\")\n\n        # Ensure trailing ends at 0\n        if self.config.timestep_spacing == \"trailing\":\n            timesteps = np.maximum(timesteps, 0)\n\n        sigmas = np.array(((1 - self.alphas_cumprod) / self.alphas_cumprod) ** 0.5)\n        if self.config.interpolation_type == \"linear\":\n            sigmas = np.interp(timesteps, np.arange(len(sigmas)), sigmas)\n        elif self.config.interpolation_type == \"log_linear\":\n            sigmas = np.exp(np.interp(timesteps, np.arange(len(sigmas)), np.log(sigmas)))\n        else:\n            raise ValueError(f\"interpolation_type must be one of 'linear' or 'log_linear', got {self.config.interpolation_type}\")\n\n        if self.config.use_karras_sigmas:\n            sigma_min = self.config.sigma_min if self.config.sigma_min is not None else sigmas[-1]\n            sigma_max = self.config.sigma_max if self.config.sigma_max is not None else sigmas[0]\n            rho = self.config.rho\n            ramp = np.linspace(0, 1, num_inference_steps)\n            sigmas = (sigma_max ** (1 / rho) + ramp * (sigma_min ** (1 / rho) - sigma_max ** (1 / rho))) ** rho\n        elif self.config.use_exponential_sigmas:\n            sigma_min = self.config.sigma_min if self.config.sigma_min is not None else sigmas[-1]\n            sigma_max = self.config.sigma_max if self.config.sigma_max is not None else sigmas[0]\n            sigmas = np.exp(np.linspace(np.log(sigma_max), np.log(sigma_min), num_inference_steps))\n        elif self.config.use_beta_sigmas:\n            sigma_min = self.config.sigma_min if self.config.sigma_min is not None else sigmas[-1]\n            sigma_max = self.config.sigma_max if self.config.sigma_max is not None else sigmas[0]\n            alpha, beta = 0.6, 0.6\n            ramp = np.linspace(0, 1, num_inference_steps)\n            try:\n                import torch.distributions as dist\n\n                b = dist.Beta(alpha, beta)\n                ramp = b.sample((num_inference_steps,)).sort().values.numpy()\n            except Exception:\n                pass\n            sigmas = sigma_max * (1 - ramp) + sigma_min * ramp\n        elif self.config.use_flow_sigmas:\n            sigmas = np.linspace(1.0, 1 / 1000, num_inference_steps)\n\n        # 3. Shifting\n        if self.config.use_dynamic_shifting and mu is not None:\n            sigmas = mu * sigmas / (1 + (mu - 1) * sigmas)\n        elif self.config.shift is not None:\n            sigmas = self.config.shift * sigmas / (1 + (self.config.shift - 1) * sigmas)\n\n        # RK6_7s c values: [0, 1/3, 2/3, 1/3, 1/2, 1/2, 1]\n        c_values = [0, 1 / 3, 2 / 3, 1 / 3, 1 / 2, 1 / 2, 1]\n\n        sigmas_expanded = []\n        for i in range(len(sigmas) - 1):\n            s_curr = sigmas[i]\n            s_next = sigmas[i + 1]\n            for c in c_values:\n                sigmas_expanded.append(s_curr + c * (s_next - s_curr))\n        sigmas_expanded.append(0.0)\n\n        sigmas_interpolated = np.array(sigmas_expanded)\n        # Linear remapping for Flow Matching\n        timesteps_expanded = sigmas_interpolated * self.config.num_train_timesteps\n        self.sigmas = torch.from_numpy(sigmas_interpolated).to(device=device, dtype=dtype)\n        self.timesteps = torch.from_numpy(timesteps_expanded + self.config.steps_offset).to(device=device, dtype=dtype)\n\n        self.init_noise_sigma = self.sigmas.max().item() if self.sigmas.numel() > 0 else 1.0\n        self._sigmas_cpu = self.sigmas.detach().cpu().numpy()\n        self._timesteps_cpu = self.timesteps.detach().cpu().numpy()\n        self._step_index = None\n\n        self.model_outputs = []\n        self.sample_at_start_of_step = None\n\n    @property\n    def step_index(self):\n        \"\"\"\n        The index counter for the current timestep. It will increase 1 after each scheduler step.\n        \"\"\"\n        return self._step_index\n\n    def index_for_timestep(self, timestep, schedule_timesteps=None):\n        from .scheduler_utils import index_for_timestep\n        if schedule_timesteps is None:\n            schedule_timesteps = self.timesteps\n        return index_for_timestep(timestep, schedule_timesteps)\n\n    def _init_step_index(self, timestep):\n        if self._step_index is None:\n            if isinstance(timestep, torch.Tensor):\n                timestep = timestep.to(self.timesteps.device)\n            self._step_index = self.index_for_timestep(timestep)\n\n    def scale_model_input(self, sample: torch.Tensor, timestep: Union[float, torch.Tensor]) -> torch.Tensor:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n        if self.config.prediction_type == \"flow_prediction\":\n            return sample\n        sigma = self._sigmas_cpu[self._step_index]\n        return sample / ((sigma**2 + 1) ** 0.5)\n\n    def step(\n        self,\n        model_output: torch.Tensor,\n        timestep: Union[float, torch.Tensor],\n        sample: torch.Tensor,\n        return_dict: bool = True,\n    ) -> Union[SchedulerOutput, Tuple]:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n\n        step_index = self._step_index\n        stage_index = step_index % 7\n\n        base_step_index = (step_index // 7) * 7\n        sigma_curr = self._sigmas_cpu[base_step_index]\n        sigma_next_idx = min(base_step_index + 7, len(self._sigmas_cpu) - 1)\n        sigma_next = self._sigmas_cpu[sigma_next_idx]\n        h = sigma_next - sigma_curr\n\n        sigma_t = self._sigmas_cpu[step_index]\n        alpha_t = 1 / (sigma_t**2 + 1) ** 0.5\n        sigma_actual = sigma_t * alpha_t\n\n        prediction_type = getattr(self.config, \"prediction_type\", \"epsilon\")\n        if prediction_type == \"epsilon\":\n            denoised = sample - sigma_t * model_output\n        elif prediction_type == \"v_prediction\":\n            alpha_t = 1 / (sigma_t**2 + 1) ** 0.5\n            sigma_actual = sigma_t * alpha_t\n            denoised = alpha_t * sample - sigma_actual * model_output\n        elif prediction_type == \"flow_prediction\":\n            denoised = sample - sigma_t * model_output\n        elif prediction_type == \"sample\":\n            denoised = model_output\n        else:\n            raise ValueError(f\"prediction_type error: {prediction_type}\")\n\n        if self.config.clip_sample:\n            denoised = denoised.clamp(-self.config.sample_max_value, self.config.sample_max_value)\n\n        # derivative = (x - x0) / sigma\n        derivative = (sample - denoised) / sigma_t if sigma_t > 1e-6 else torch.zeros_like(sample)\n\n        if self.sample_at_start_of_step is None:\n            if stage_index > 0:\n                # Mid-step fallback for Img2Img/Inpainting\n                sigma_next_t = self._sigmas_cpu[self._step_index + 1]\n                dt = sigma_next_t - sigma_t\n                prev_sample = sample + dt * derivative\n                self._step_index += 1\n                if not return_dict:\n                    return (prev_sample,)\n                return SchedulerOutput(prev_sample=prev_sample)\n\n            self.sample_at_start_of_step = sample\n            self.model_outputs = [derivative] * stage_index\n\n        # Butcher Tableau A matrix for rk6_7s\n        a = [\n            [],\n            [1 / 3],\n            [0, 2 / 3],\n            [1 / 12, 1 / 3, -1 / 12],\n            [-1 / 16, 9 / 8, -3 / 16, -3 / 8],\n            [0, 9 / 8, -3 / 8, -3 / 4, 1 / 2],\n            [9 / 44, -9 / 11, 63 / 44, 18 / 11, 0, -16 / 11],\n        ]\n\n        # Butcher Tableau B weights for rk6_7s\n        b = [11 / 120, 0, 27 / 40, 27 / 40, -4 / 15, -4 / 15, 11 / 120]\n\n        if stage_index == 0:\n            self.model_outputs = [derivative]\n            self.sample_at_start_of_step = sample\n        else:\n            self.model_outputs.append(derivative)\n\n        if stage_index < 6:\n            # Predict next stage sample: y_next_stage = y_start + h * sum(a[stage_index+1][j] * k[j])\n            next_a_row = a[stage_index + 1]\n            sum_ak = torch.zeros_like(derivative)\n            for j, weight in enumerate(next_a_row):\n                sum_ak += weight * self.model_outputs[j]\n\n            prev_sample = self.sample_at_start_of_step + h * sum_ak\n        else:\n            # Final 7th stage complete, calculate final step\n            sum_bk = torch.zeros_like(derivative)\n            for j, weight in enumerate(b):\n                sum_bk += weight * self.model_outputs[j]\n\n            prev_sample = self.sample_at_start_of_step + h * sum_bk\n\n            # Clear state\n            self.model_outputs = []\n            self.sample_at_start_of_step = None\n\n        self._step_index += 1\n\n        if not return_dict:\n            return (prev_sample,)\n        return SchedulerOutput(prev_sample=prev_sample)\n\n    def add_noise(\n        self,\n        original_samples: torch.Tensor,\n        noise: torch.Tensor,\n        timesteps: torch.Tensor,\n    ) -> torch.Tensor:\n        from .scheduler_utils import add_noise_to_sample\n        return add_noise_to_sample(original_samples, noise, self.sigmas, timesteps, self.timesteps)\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/res4lyf/scheduler_utils.py",
    "content": "import math\nfrom typing import Literal\n\nimport numpy as np\nimport torch\n\ntry:\n    import scipy.stats\n    _scipy_available = True\nexcept ImportError:\n    _scipy_available = False\n\ndef betas_for_alpha_bar(\n    num_diffusion_timesteps: int,\n    max_beta: float = 0.999,\n    alpha_transform_type: Literal[\"cosine\", \"exp\", \"laplace\"] = \"cosine\",\n    dtype: torch.dtype = torch.float32,\n) -> torch.Tensor:\n    if alpha_transform_type == \"cosine\":\n        def alpha_bar_fn(t):\n            return math.cos((t + 0.008) / 1.008 * math.pi / 2) ** 2\n    elif alpha_transform_type == \"laplace\":\n        def alpha_bar_fn(t):\n            lmb = -0.5 * math.copysign(1, 0.5 - t) * math.log(1 - 2 * math.fabs(0.5 - t) + 1e-6)\n            snr = math.exp(lmb)\n            return math.sqrt(snr / (1 + snr))\n    elif alpha_transform_type == \"exp\":\n        def alpha_bar_fn(t):\n            return math.exp(t * -12.0)\n    else:\n        raise ValueError(f\"Unsupported alpha_transform_type: {alpha_transform_type}\")\n\n    betas = []\n    for i in range(num_diffusion_timesteps):\n        t1 = i / num_diffusion_timesteps\n        t2 = (i + 1) / num_diffusion_timesteps\n        betas.append(min(1 - alpha_bar_fn(t2) / alpha_bar_fn(t1), max_beta))\n    return torch.tensor(betas, dtype=dtype)\n\ndef rescale_zero_terminal_snr(betas: torch.Tensor) -> torch.Tensor:\n    alphas = 1.0 - betas\n    alphas_cumprod = torch.cumprod(alphas, dim=0)\n    alphas_bar_sqrt = alphas_cumprod.sqrt()\n    alphas_bar_sqrt_0 = alphas_bar_sqrt[0].clone()\n    alphas_bar_sqrt_T = alphas_bar_sqrt[-1].clone()\n    alphas_bar_sqrt -= alphas_bar_sqrt_T\n    alphas_bar_sqrt *= alphas_bar_sqrt_0 / (alphas_bar_sqrt_0 - alphas_bar_sqrt_T)\n    alphas_bar = alphas_bar_sqrt**2\n    alphas = alphas_bar[1:] / alphas_bar[:-1]\n    alphas = torch.cat([alphas_bar[0:1], alphas])\n    betas = 1 - alphas\n    return betas\n\ndef get_sigmas_karras(n, sigma_min, sigma_max, rho=7.0, device=\"cpu\", dtype: torch.dtype = torch.float32):\n    ramp = np.linspace(0, 1, n)\n    min_inv_rho = sigma_min ** (1 / rho)\n    max_inv_rho = sigma_max ** (1 / rho)\n    sigmas = (max_inv_rho + ramp * (min_inv_rho - max_inv_rho)) ** rho\n    return torch.from_numpy(sigmas).to(dtype=dtype, device=device)\n\ndef get_sigmas_exponential(n, sigma_min, sigma_max, device=\"cpu\", dtype: torch.dtype = torch.float32):\n    sigmas = np.exp(np.linspace(math.log(sigma_max), math.log(sigma_min), n))\n    return torch.from_numpy(sigmas).to(dtype=dtype, device=device)\n\ndef get_sigmas_beta(n, sigma_min, sigma_max, alpha=0.6, beta=0.6, device=\"cpu\", dtype: torch.dtype = torch.float32):\n    if not _scipy_available:\n        raise ImportError(\"scipy is required for beta sigmas\")\n    sigmas = np.array(\n        [\n            sigma_min + (ppf * (sigma_max - sigma_min))\n            for ppf in [\n                scipy.stats.beta.ppf(timestep, alpha, beta)\n                for timestep in 1 - np.linspace(0, 1, n)\n            ]\n        ]\n    )\n    return torch.from_numpy(sigmas).to(dtype=dtype, device=device)\n\ndef get_sigmas_flow(n, sigma_min, sigma_max, device=\"cpu\", dtype: torch.dtype = torch.float32):\n    # Linear flow sigmas\n    sigmas = np.linspace(sigma_max, sigma_min, n)\n    return torch.from_numpy(sigmas).to(dtype=dtype, device=device)\n\ndef apply_shift(sigmas, shift):\n    return shift * sigmas / (1 + (shift - 1) * sigmas)\n\ndef get_dynamic_shift(mu, base_shift, max_shift, base_seq_len, max_seq_len):\n    m = (max_shift - base_shift) / (max_seq_len - base_seq_len)\n    b = base_shift - m * base_seq_len\n    return m * mu + b\n\ndef index_for_timestep(timestep, timesteps):\n    # Normalize inputs to numpy arrays for a robust, device-agnostic argmin\n    if isinstance(timestep, torch.Tensor):\n        timestep_np = timestep.detach().cpu().numpy()\n    else:\n        timestep_np = np.array(timestep)\n\n    if isinstance(timesteps, torch.Tensor):\n        timesteps_np = timesteps.detach().cpu().numpy()\n    else:\n        timesteps_np = np.array(timesteps)\n\n    # Use numpy argmin on absolute difference for stability\n    idx = np.abs(timesteps_np - timestep_np).argmin()\n    return int(idx)\n\ndef add_noise_to_sample(\n    original_samples: torch.Tensor,\n    noise: torch.Tensor,\n    sigmas: torch.Tensor,\n    timestep: torch.Tensor,\n    timesteps: torch.Tensor,\n) -> torch.Tensor:\n    step_index = index_for_timestep(timestep, timesteps)\n    sigma = sigmas[step_index].to(original_samples.dtype)\n\n    noisy_samples = original_samples + sigma * noise\n    return noisy_samples\n"
  },
  {
    "path": "modules/res4lyf/simple_exponential_scheduler.py",
    "content": "# Copyright 2025 The RES4LYF Team (Clybius) and The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nfrom typing import ClassVar, List, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.schedulers.scheduling_utils import KarrasDiffusionSchedulers, SchedulerMixin, SchedulerOutput\n\nfrom diffusers.utils import logging\n\nlogger = logging.get_logger(__name__)\n\n\nclass SimpleExponentialScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    Simple Exponential sigma scheduler using Exponential Integrator step.\n    \"\"\"\n\n    _compatibles: ClassVar[List[str]] = [e.name for e in KarrasDiffusionSchedulers]\n    order: ClassVar[int] = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.00085,\n        beta_end: float = 0.012,\n        beta_schedule: str = \"linear\",\n        sigma_max: float = 1.0,\n        sigma_min: float = 0.01,\n        gain: float = 1.0,\n        prediction_type: str = \"epsilon\",\n        timestep_spacing: str = \"linspace\",\n        rescale_betas_zero_snr: bool = False,\n        use_karras_sigmas: bool = False,\n        use_exponential_sigmas: bool = False,\n        use_beta_sigmas: bool = False,\n        use_flow_sigmas: bool = False,\n        shift: float = 1.0,\n        use_dynamic_shifting: bool = False,\n        base_shift: float = 0.5,\n        max_shift: float = 1.15,\n        base_image_seq_len: int = 256,\n        max_image_seq_len: int = 4096,\n    ):\n        from .scheduler_utils import betas_for_alpha_bar, rescale_zero_terminal_snr\n\n        if beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        elif beta_schedule == \"squaredcos_cap_v2\":\n            self.betas = betas_for_alpha_bar(num_train_timesteps)\n        else:\n            raise NotImplementedError(f\"{beta_schedule} does not exist.\")\n\n        if rescale_betas_zero_snr:\n            self.betas = rescale_zero_terminal_snr(self.betas)\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n\n        # Standard deviation of the initial noise distribution\n        self.init_noise_sigma = 1.0\n\n        # Setable values\n        self.num_inference_steps = None\n        self.timesteps = torch.from_numpy(np.arange(0, num_train_timesteps)[::-1].copy())\n        self.sigmas = torch.zeros((num_train_timesteps,), dtype=torch.float32)\n\n        self._step_index = None\n        self._begin_index = None\n\n    @property\n    def step_index(self) -> Optional[int]:\n        return self._step_index\n\n    @property\n    def begin_index(self) -> Optional[int]:\n        return self._begin_index\n\n    def set_begin_index(self, begin_index: int = 0) -> None:\n        self._begin_index = begin_index\n\n    def set_timesteps(self, num_inference_steps: int, device: Union[str, torch.device] = None, mu: Optional[float] = None, dtype: torch.dtype = torch.float32):\n        from .scheduler_utils import (\n            apply_shift,\n            get_dynamic_shift,\n            get_sigmas_beta,\n            get_sigmas_exponential,\n            get_sigmas_flow,\n            get_sigmas_karras,\n        )\n\n        self.num_inference_steps = num_inference_steps\n\n        sigmas = np.exp(np.linspace(np.log(self.config.sigma_max), np.log(self.config.sigma_min), num_inference_steps))\n\n        if self.config.use_karras_sigmas:\n            sigmas = get_sigmas_karras(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_exponential_sigmas:\n            sigmas = get_sigmas_exponential(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_beta_sigmas:\n            sigmas = get_sigmas_beta(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n        elif self.config.use_flow_sigmas:\n            sigmas = get_sigmas_flow(num_inference_steps, sigmas[-1], sigmas[0], device=device, dtype=dtype).cpu().numpy()\n\n        if self.config.shift != 1.0 or self.config.use_dynamic_shifting:\n            shift = self.config.shift\n            if self.config.use_dynamic_shifting and mu is not None:\n                shift = get_dynamic_shift(\n                    mu,\n                    self.config.base_shift,\n                    self.config.max_shift,\n                    self.config.base_image_seq_len,\n                    self.config.max_image_seq_len,\n                )\n            sigmas = apply_shift(torch.from_numpy(sigmas), shift).numpy()\n\n        self.sigmas = torch.from_numpy(np.concatenate([sigmas, [0.0]])).to(device=device, dtype=dtype)\n        self.timesteps = torch.from_numpy(np.linspace(1000, 0, num_inference_steps)).to(device=device, dtype=dtype)\n        self.init_noise_sigma = self.sigmas.max().item() if self.sigmas.numel() > 0 else 1.0\n\n        self._step_index = None\n        self._begin_index = None\n\n    def index_for_timestep(self, timestep, schedule_timesteps=None):\n        from .scheduler_utils import index_for_timestep\n        if schedule_timesteps is None:\n            schedule_timesteps = self.timesteps\n        return index_for_timestep(timestep, schedule_timesteps)\n\n    def add_noise(\n        self,\n        original_samples: torch.Tensor,\n        noise: torch.Tensor,\n        timesteps: torch.Tensor,\n    ) -> torch.Tensor:\n        from .scheduler_utils import add_noise_to_sample\n        return add_noise_to_sample(original_samples, noise, self.sigmas, timesteps, self.timesteps)\n\n    def scale_model_input(self, sample: torch.Tensor, timestep: Union[float, torch.Tensor]) -> torch.Tensor:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n        if self.config.prediction_type == \"flow_prediction\":\n            return sample\n        sigma = self.sigmas[self._step_index]\n        sample = sample / ((sigma**2 + 1) ** 0.5)\n        return sample\n\n    def step(\n        self,\n        model_output: torch.Tensor,\n        timestep: Union[float, torch.Tensor],\n        sample: torch.Tensor,\n        return_dict: bool = True,\n    ) -> Union[SchedulerOutput, Tuple]:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n\n        step_index = self._step_index\n        sigma = self.sigmas[step_index]\n        sigma_next = self.sigmas[step_index + 1]\n\n        # Determine denoised (x_0 prediction)\n        if self.config.prediction_type == \"epsilon\":\n            x0 = sample - sigma * model_output\n        elif self.config.prediction_type == \"v_prediction\":\n            alpha_t = 1.0 / (sigma**2 + 1)**0.5\n            sigma_t = sigma * alpha_t\n            x0 = alpha_t * sample - sigma_t * model_output\n        elif self.config.prediction_type == \"sample\":\n            x0 = model_output\n        elif self.config.prediction_type == \"flow_prediction\":\n            x0 = sample - sigma * model_output\n        else:\n            x0 = model_output\n\n        # Exponential Integrator Update (1st order)\n        if sigma_next == 0:\n            x_next = x0\n        else:\n            h = -torch.log(sigma_next / sigma) if sigma > 0 and sigma_next > 0 else torch.zeros_like(sigma)\n            x_next = torch.exp(-h) * sample + (1 - torch.exp(-h)) * x0\n\n        self._step_index += 1\n\n        if not return_dict:\n            return (x_next,)\n        return SchedulerOutput(prev_sample=x_next)\n\n    def _init_step_index(self, timestep):\n        if self.begin_index is None:\n            if isinstance(timestep, torch.Tensor):\n                timestep = timestep.to(self.timesteps.device)\n            self._step_index = self.index_for_timestep(timestep)\n        else:\n            self._step_index = self._begin_index\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/res4lyf/specialized_rk_scheduler.py",
    "content": "from typing import List, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.schedulers.scheduling_utils import SchedulerMixin, SchedulerOutput\n\n\n# pylint: disable=no-member\nclass SpecializedRKScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    SpecializedRKScheduler: High-order and specialized Runge-Kutta integrators.\n    Supports SSPRK, TSI_7S, Ralston 4s, and Bogacki-Shampine 4s.\n    Adapted from the RES4LYF repository.\n    \"\"\"\n\n    order = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.00085,\n        beta_end: float = 0.012,\n        beta_schedule: str = \"linear\",\n        trained_betas: Optional[Union[np.ndarray, List[float]]] = None,\n        prediction_type: str = \"epsilon\",\n        variant: str = \"ssprk3_3s\",  # ssprk3_3s, ssprk4_4s, tsi_7s, ralston_4s, bogacki-shampine_4s\n        use_karras_sigmas: bool = False,\n        use_exponential_sigmas: bool = False,\n        use_beta_sigmas: bool = False,\n        use_flow_sigmas: bool = False,\n        sigma_min: Optional[float] = None,\n        sigma_max: Optional[float] = None,\n        rho: float = 7.0,\n        shift: Optional[float] = None,\n        base_shift: float = 0.5,\n        max_shift: float = 1.15,\n        use_dynamic_shifting: bool = False,\n        timestep_spacing: str = \"linspace\",\n        clip_sample: bool = False,\n        sample_max_value: float = 1.0,\n        set_alpha_to_one: bool = False,\n        skip_prk_steps: bool = False,\n        interpolation_type: str = \"linear\",\n        steps_offset: int = 0,\n        timestep_type: str = \"discrete\",\n        rescale_betas_zero_snr: bool = False,\n        final_sigmas_type: str = \"zero\",\n    ):\n        if trained_betas is not None:\n            self.betas = torch.tensor(trained_betas, dtype=torch.float32)\n        elif beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        else:\n            raise NotImplementedError(f\"{beta_schedule} is not implemented\")\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n\n        self.num_inference_steps = None\n        self.timesteps = torch.from_numpy(np.arange(0, num_train_timesteps)[::-1].copy())\n        self.sigmas = None\n        self.init_noise_sigma = 1.0\n\n        # Internal state\n        self.model_outputs = []\n        self.sample_at_start_of_step = None\n        self._step_index = None\n\n    def _get_tableau(self):\n        v = self.config.variant\n        if v == \"ssprk3_3s\":\n            a, b, c = [[1], [1 / 4, 1 / 4]], [1 / 6, 1 / 6, 2 / 3], [0, 1, 1 / 2]\n        elif v == \"ssprk4_4s\":\n            a, b, c = [[1 / 2], [1 / 2, 1 / 2], [1 / 6, 1 / 6, 1 / 6]], [1 / 6, 1 / 6, 1 / 6, 1 / 2], [0, 1 / 2, 1, 1 / 2]\n        elif v == \"ralston_4s\":\n            r5 = 5**0.5\n            a = [[2 / 5], [(-2889 + 1428 * r5) / 1024, (3785 - 1620 * r5) / 1024], [(-3365 + 2094 * r5) / 6040, (-975 - 3046 * r5) / 2552, (467040 + 203968 * r5) / 240845]]\n            b = [(263 + 24 * r5) / 1812, (125 - 1000 * r5) / 3828, (3426304 + 1661952 * r5) / 5924787, (30 - 4 * r5) / 123]\n            c = [0, 2 / 5, (14 - 3 * r5) / 16, 1]\n        elif v == \"bogacki-shampine_4s\":\n            a, b, c = [[1 / 2], [0, 3 / 4], [2 / 9, 1 / 3, 4 / 9]], [2 / 9, 1 / 3, 4 / 9, 0], [0, 1 / 2, 3 / 4, 1]\n        elif v == \"tsi_7s\":\n            a = [\n                [0.161],\n                [-0.008480655492356989, 0.335480655492357],\n                [2.8971530571054935, -6.359448489975075, 4.3622954328695815],\n                [5.325864828439257, -11.748883564062828, 7.4955393428898365, -0.09249506636175525],\n                [5.86145544294642, -12.92096931784711, 8.159367898576159, -0.071584973281401, -0.02826905039406838],\n                [0.09646076681806523, 0.01, 0.4798896504144996, 1.379008574103742, -3.290069515436081, 2.324710524099774],\n            ]\n            b = [0.09646076681806523, 0.01, 0.4798896504144996, 1.379008574103742, -3.290069515436081, 2.324710524099774, 0.0]\n            c = [0.0, 0.161, 0.327, 0.9, 0.9800255409045097, 1.0, 1.0]\n        else:\n            raise ValueError(f\"Unknown variant: {v}\")\n\n        stages = len(c)\n        full_a = np.zeros((stages, stages))\n        for i, row in enumerate(a):\n            full_a[i + 1, : len(row)] = row\n\n        return full_a, np.array(b), np.array(c)\n\n    def set_timesteps(\n        self,\n        num_inference_steps: int,\n        device: Union[str, torch.device] = None,\n        mu: Optional[float] = None, dtype: torch.dtype = torch.float32):\n        self.num_inference_steps = num_inference_steps\n\n        # 1. Spacing\n        if self.config.timestep_spacing == \"linspace\":\n            timesteps = np.linspace(0, self.config.num_train_timesteps - 1, num_inference_steps, dtype=float)[::-1].copy()\n        elif self.config.timestep_spacing == \"leading\":\n            step_ratio = self.config.num_train_timesteps // num_inference_steps\n            timesteps = (np.arange(0, num_inference_steps) * step_ratio).round()[::-1].copy().astype(float)\n        elif self.config.timestep_spacing == \"trailing\":\n            step_ratio = self.config.num_train_timesteps / num_inference_steps\n            timesteps = (np.arange(self.config.num_train_timesteps, 0, -step_ratio)).round().copy().astype(float)\n            timesteps -= 1\n        else:\n            raise ValueError(f\"timestep_spacing must be one of 'linspace', 'leading', or 'trailing', got {self.config.timestep_spacing}\")\n\n        sigmas = np.array(((1 - self.alphas_cumprod) / self.alphas_cumprod) ** 0.5)\n        if self.config.interpolation_type == \"linear\":\n            sigmas = np.interp(timesteps, np.arange(len(sigmas)), sigmas)\n        elif self.config.interpolation_type == \"log_linear\":\n            sigmas = np.exp(np.interp(timesteps, np.arange(len(sigmas)), np.log(sigmas)))\n        else:\n            raise ValueError(f\"interpolation_type must be one of 'linear' or 'log_linear', got {self.config.interpolation_type}\")\n\n        # 2. Sigma Schedule\n        if self.config.use_karras_sigmas:\n            sigma_min = self.config.sigma_min if self.config.sigma_min is not None else sigmas[-1]\n            sigma_max = self.config.sigma_max if self.config.sigma_max is not None else sigmas[0]\n            rho = self.config.rho\n            ramp = np.linspace(0, 1, num_inference_steps)\n            sigmas = (sigma_max ** (1 / rho) + ramp * (sigma_min ** (1 / rho) - sigma_max ** (1 / rho))) ** rho\n        elif self.config.use_exponential_sigmas:\n            sigma_min = self.config.sigma_min if self.config.sigma_min is not None else sigmas[-1]\n            sigma_max = self.config.sigma_max if self.config.sigma_max is not None else sigmas[0]\n            sigmas = np.exp(np.linspace(np.log(sigma_max), np.log(sigma_min), num_inference_steps))\n        elif self.config.use_beta_sigmas:\n            sigma_min = self.config.sigma_min if self.config.sigma_min is not None else sigmas[-1]\n            sigma_max = self.config.sigma_max if self.config.sigma_max is not None else sigmas[0]\n            alpha, beta = 0.6, 0.6\n            ramp = np.linspace(0, 1, num_inference_steps)\n            try:\n                import torch.distributions as dist\n\n                b = dist.Beta(alpha, beta)\n                ramp = b.sort().values.numpy()  # assume single batch sample for schedule\n            except Exception:\n                pass\n            sigmas = sigma_max * (1 - ramp) + sigma_min * ramp\n        elif self.config.use_flow_sigmas:\n            sigmas = np.linspace(1.0, 1 / 1000, num_inference_steps)\n\n        # 3. Shifting\n        if self.config.use_dynamic_shifting and mu is not None:\n            sigmas = mu * sigmas / (1 + (mu - 1) * sigmas)\n        elif self.config.shift is not None:\n            sigmas = self.config.shift * sigmas / (1 + (self.config.shift - 1) * sigmas)\n\n        # We handle multi-history expansion\n        _a_mat, _b_vec, c_vec = self._get_tableau()\n        len(c_vec)\n\n        sigmas_expanded = []\n        for i in range(len(sigmas) - 1):\n            s_curr = sigmas[i]\n            s_next = sigmas[i + 1]\n            for c_val in c_vec:\n                sigmas_expanded.append(s_curr + c_val * (s_next - s_curr))\n        sigmas_expanded.append(0.0)\n\n        sigmas_interpolated = np.array(sigmas_expanded)\n        # Linear remapping for Flow Matching\n        timesteps_expanded = sigmas_interpolated * self.config.num_train_timesteps\n\n        self.sigmas = torch.from_numpy(sigmas_interpolated).to(device=device, dtype=dtype)\n        self.timesteps = torch.from_numpy(timesteps_expanded + self.config.steps_offset).to(device=device, dtype=dtype)\n\n        self.init_noise_sigma = self.sigmas.max().item() if self.sigmas.numel() > 0 else 1.0\n        self._sigmas_cpu = self.sigmas.detach().cpu().numpy()\n        self._timesteps_cpu = self.timesteps.detach().cpu().numpy()\n        self._step_index = None\n\n        self.model_outputs = []\n        self.sample_at_start_of_step = None\n\n    @property\n    def step_index(self):\n        \"\"\"\n        The index counter for the current timestep. It will increase 1 after each scheduler step.\n        \"\"\"\n        return self._step_index\n\n    def index_for_timestep(self, timestep, schedule_timesteps=None):\n        from .scheduler_utils import index_for_timestep\n        if schedule_timesteps is None:\n            schedule_timesteps = self.timesteps\n        return index_for_timestep(timestep, schedule_timesteps)\n\n    def _init_step_index(self, timestep):\n        if self._step_index is None:\n            if isinstance(timestep, torch.Tensor):\n                timestep = timestep.to(self.timesteps.device)\n            self._step_index = self.index_for_timestep(timestep)\n\n    def scale_model_input(self, sample: torch.Tensor, timestep: Union[float, torch.Tensor]) -> torch.Tensor:\n        if self._step_index is None:\n            self._init_step_index(timestep)\n        if self.config.prediction_type == \"flow_prediction\":\n            return sample\n        sigma = self.sigmas[self._step_index]\n        return sample / ((sigma**2 + 1) ** 0.5)\n\n    def step(\n        self,\n        model_output: torch.Tensor,\n        timestep: Union[float, torch.Tensor],\n        sample: torch.Tensor,\n        return_dict: bool = True,\n    ) -> Union[SchedulerOutput, Tuple]:\n        self._init_step_index(timestep)\n        a_mat, b_vec, c_vec = self._get_tableau()\n        num_stages = len(c_vec)\n\n        stage_index = self._step_index % num_stages\n        base_step_index = (self._step_index // num_stages) * num_stages\n\n        sigma_curr = self._sigmas_cpu[base_step_index]\n        sigma_next_idx = min(base_step_index + num_stages, len(self._sigmas_cpu) - 1)\n        sigma_next = self._sigmas_cpu[sigma_next_idx]\n\n        if sigma_next <= 0:\n            sigma_t = self.sigmas[self._step_index]\n            prediction_type = getattr(self.config, \"prediction_type\", \"epsilon\")\n            if prediction_type == \"epsilon\":\n                denoised = sample - sigma_t * model_output\n            elif prediction_type == \"v_prediction\":\n                alpha_t = 1 / (sigma_t**2 + 1) ** 0.5\n                sigma_actual = sigma_t * alpha_t\n                denoised = alpha_t * sample - sigma_actual * model_output\n            elif prediction_type == \"flow_prediction\":\n                denoised = sample - sigma_t * model_output\n            else:\n                denoised = model_output\n\n            if getattr(self.config, \"clip_sample\", False):\n                denoised = denoised.clamp(-self.config.sample_max_value, self.config.sample_max_value)\n\n            prev_sample = denoised\n            self._step_index += 1\n            if not return_dict:\n                return (prev_sample,)\n            return SchedulerOutput(prev_sample=prev_sample)\n\n        h = sigma_next - sigma_curr\n        sigma_t = self.sigmas[self._step_index]\n\n        prediction_type = getattr(self.config, \"prediction_type\", \"epsilon\")\n        if prediction_type == \"epsilon\":\n            denoised = sample - sigma_t * model_output\n        elif self.config.prediction_type == \"v_prediction\":\n            alpha_t = 1 / (sigma_t**2 + 1) ** 0.5\n            sigma_actual = sigma_t * alpha_t\n            denoised = alpha_t * sample - sigma_actual * model_output\n            # If we want pure x-space x0 from alpha x - sigma v:\n            # x0 = x * (1/sqrt(1+sigma^2)) - v * (sigma/sqrt(1+sigma^2))\n            # which matches the above.\n        elif prediction_type == \"flow_prediction\":\n            denoised = sample - sigma_t * model_output\n        elif prediction_type == \"sample\":\n            denoised = model_output\n        else:\n            raise ValueError(f\"prediction_type error: {getattr(self.config, 'prediction_type', 'epsilon')}\")\n\n        if self.config.clip_sample:\n            denoised = denoised.clamp(-self.config.sample_max_value, self.config.sample_max_value)\n\n        # derivative = (x - x0) / sigma\n        derivative = (sample - denoised) / sigma_t if sigma_t > 1e-6 else torch.zeros_like(sample)\n\n        if self.sample_at_start_of_step is None:\n            if stage_index > 0:\n                # Mid-step fallback for Img2Img/Inpainting\n                sigma_next_t = self._sigmas_cpu[self._step_index + 1]\n                dt = sigma_next_t - sigma_t\n                prev_sample = sample + dt * derivative\n                self._step_index += 1\n                if not return_dict:\n                    return (prev_sample,)\n                return SchedulerOutput(prev_sample=prev_sample)\n\n            self.sample_at_start_of_step = sample\n            self.model_outputs = [derivative] * stage_index\n\n        if stage_index == 0:\n            self.model_outputs = [derivative]\n            self.sample_at_start_of_step = sample\n        else:\n            self.model_outputs.append(derivative)\n\n        next_stage_idx = stage_index + 1\n        if next_stage_idx < num_stages:\n            sum_ak = 0\n            for j in range(len(self.model_outputs)):\n                sum_ak = sum_ak + a_mat[next_stage_idx][j] * self.model_outputs[j]\n\n            sigma_next_stage = self.sigmas[min(self._step_index + 1, len(self.sigmas) - 1)]\n\n            # Update x (unnormalized sample)\n            prev_sample = self.sample_at_start_of_step + (sigma_next_stage - sigma_curr) * sum_ak\n        else:\n            sum_bk = 0\n            for j in range(len(self.model_outputs)):\n                sum_bk = sum_bk + b_vec[j] * self.model_outputs[j]\n\n            prev_sample = self.sample_at_start_of_step + h * sum_bk\n\n            self.model_outputs = []\n            self.sample_at_start_of_step = None\n\n        self._step_index += 1\n\n        if not return_dict:\n            return (prev_sample,)\n        return SchedulerOutput(prev_sample=prev_sample)\n\n    def add_noise(\n        self,\n        original_samples: torch.Tensor,\n        noise: torch.Tensor,\n        timesteps: torch.Tensor,\n    ) -> torch.Tensor:\n        from .scheduler_utils import add_noise_to_sample\n        return add_noise_to_sample(original_samples, noise, self.sigmas, timesteps, self.timesteps)\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/res4lyf/variants.py",
    "content": "from .abnorsett_scheduler import ABNorsettScheduler\nfrom .common_sigma_scheduler import CommonSigmaScheduler\nfrom .deis_scheduler_alt import RESDEISMultistepScheduler\nfrom .etdrk_scheduler import ETDRKScheduler\nfrom .gauss_legendre_scheduler import GaussLegendreScheduler\nfrom .lawson_scheduler import LawsonScheduler\nfrom .linear_rk_scheduler import LinearRKScheduler\nfrom .lobatto_scheduler import LobattoScheduler\nfrom .pec_scheduler import PECScheduler\nfrom .radau_iia_scheduler import RadauIIAScheduler\nfrom .res_multistep_scheduler import RESMultistepScheduler\nfrom .res_multistep_sde_scheduler import RESMultistepSDEScheduler\nfrom .res_singlestep_scheduler import RESSinglestepScheduler\nfrom .res_singlestep_sde_scheduler import RESSinglestepSDEScheduler\nfrom .res_unified_scheduler import RESUnifiedScheduler\nfrom .riemannian_flow_scheduler import RiemannianFlowScheduler\n\n# RES Unified Variants\n\n\"\"\"\n    Supports RES 2M, 3M, 2S, 3S, 5S, 6S\n    Supports DEIS 1S, 2M, 3M\n\"\"\"\n\nclass RESUnified2MScheduler(RESUnifiedScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"rk_type\"] = \"res_2m\"\n        super().__init__(**kwargs)\n\n\nclass RESUnified3MScheduler(RESUnifiedScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"rk_type\"] = \"res_3m\"\n        super().__init__(**kwargs)\n\n\nclass RESUnified2SScheduler(RESUnifiedScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"rk_type\"] = \"res_2s\"\n        super().__init__(**kwargs)\n\n\nclass RESUnified3SScheduler(RESUnifiedScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"rk_type\"] = \"res_3s\"\n        super().__init__(**kwargs)\n\n\nclass RESUnified5SScheduler(RESUnifiedScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"rk_type\"] = \"res_5s\"\n        super().__init__(**kwargs)\n\n\nclass RESUnified6SScheduler(RESUnifiedScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"rk_type\"] = \"res_6s\"\n        super().__init__(**kwargs)\n\n\nclass DEISUnified1SScheduler(RESUnifiedScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"rk_type\"] = \"deis_1s\"\n        super().__init__(**kwargs)\n\n\nclass DEISUnified2MScheduler(RESUnifiedScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"rk_type\"] = \"deis_2m\"\n        super().__init__(**kwargs)\n\n\nclass DEISUnified3MScheduler(RESUnifiedScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"rk_type\"] = \"deis_3m\"\n        super().__init__(**kwargs)\n\n\n# RES Multistep Variants\nclass RES2MScheduler(RESMultistepScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"res_2m\"\n        super().__init__(**kwargs)\n\n\nclass RES3MScheduler(RESMultistepScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"res_3m\"\n        super().__init__(**kwargs)\n\n\nclass DEIS2MScheduler(RESMultistepScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"deis_2m\"\n        super().__init__(**kwargs)\n\n\nclass DEIS3MScheduler(RESMultistepScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"deis_3m\"\n        super().__init__(**kwargs)\n\n\n# RES Multistep SDE Variants\nclass RES2MSDEScheduler(RESMultistepSDEScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"res_2m\"\n        super().__init__(**kwargs)\n\n\nclass RES3MSDEScheduler(RESMultistepSDEScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"res_3m\"\n        super().__init__(**kwargs)\n\n\n# RES Singlestep (Multistage) Variants\nclass RES2SScheduler(RESSinglestepScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"res_2s\"\n        super().__init__(**kwargs)\n\n\nclass RES3SScheduler(RESSinglestepScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"res_3s\"\n        super().__init__(**kwargs)\n\n\nclass RES5SScheduler(RESSinglestepScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"res_5s\"\n        super().__init__(**kwargs)\n\n\nclass RES6SScheduler(RESSinglestepScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"res_6s\"\n        super().__init__(**kwargs)\n\n\n# RES Singlestep SDE Variants\nclass RES2SSDEScheduler(RESSinglestepSDEScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"res_2s\"\n        super().__init__(**kwargs)\n\n\nclass RES3SSDEScheduler(RESSinglestepSDEScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"res_3s\"\n        super().__init__(**kwargs)\n\n\nclass RES5SSDEScheduler(RESSinglestepSDEScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"res_5s\"\n        super().__init__(**kwargs)\n\n\nclass RES6SSDEScheduler(RESSinglestepSDEScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"res_6s\"\n        super().__init__(**kwargs)\n\n\n# ETDRK Variants\nclass ETDRK2Scheduler(ETDRKScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"etdrk2_2s\"\n        super().__init__(**kwargs)\n\n\nclass ETDRK3AScheduler(ETDRKScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"etdrk3_a_3s\"\n        super().__init__(**kwargs)\n\n\nclass ETDRK3BScheduler(ETDRKScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"etdrk3_b_3s\"\n        super().__init__(**kwargs)\n\n\nclass ETDRK4Scheduler(ETDRKScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"etdrk4_4s\"\n        super().__init__(**kwargs)\n\n\nclass ETDRK4AltScheduler(ETDRKScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"etdrk4_4s_alt\"\n        super().__init__(**kwargs)\n\n\n# Lawson Variants\nclass Lawson2AScheduler(LawsonScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"lawson2a_2s\"\n        super().__init__(**kwargs)\n\n\nclass Lawson2BScheduler(LawsonScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"lawson2b_2s\"\n        super().__init__(**kwargs)\n\n\nclass Lawson4Scheduler(LawsonScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"lawson4_4s\"\n        super().__init__(**kwargs)\n\n\n# ABNorsett Variants\nclass ABNorsett2MScheduler(ABNorsettScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"abnorsett_2m\"\n        super().__init__(**kwargs)\n\n\nclass ABNorsett3MScheduler(ABNorsettScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"abnorsett_3m\"\n        super().__init__(**kwargs)\n\n\nclass ABNorsett4MScheduler(ABNorsettScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"abnorsett_4m\"\n        super().__init__(**kwargs)\n\n\n# PEC Variants\nclass PEC2H2SScheduler(PECScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"pec423_2h2s\"\n        super().__init__(**kwargs)\n\n\nclass PEC2H3SScheduler(PECScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"pec433_2h3s\"\n        super().__init__(**kwargs)\n\n\n# Riemannian Flow Variants\nclass FlowEuclideanScheduler(RiemannianFlowScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"metric_type\"] = \"euclidean\"\n        super().__init__(**kwargs)\n\n\nclass FlowHyperbolicScheduler(RiemannianFlowScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"metric_type\"] = \"hyperbolic\"\n        super().__init__(**kwargs)\n\n\nclass FlowSphericalScheduler(RiemannianFlowScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"metric_type\"] = \"spherical\"\n        super().__init__(**kwargs)\n\n\nclass FlowLorentzianScheduler(RiemannianFlowScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"metric_type\"] = \"lorentzian\"\n        super().__init__(**kwargs)\n\n\n# Common Sigma Variants\nclass SigmaSigmoidScheduler(CommonSigmaScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"profile\"] = \"sigmoid\"\n        super().__init__(**kwargs)\n\n\nclass SigmaSineScheduler(CommonSigmaScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"profile\"] = \"sine\"\n        super().__init__(**kwargs)\n\n\nclass SigmaEasingScheduler(CommonSigmaScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"profile\"] = \"easing\"\n        super().__init__(**kwargs)\n\n\nclass SigmaArcsineScheduler(CommonSigmaScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"profile\"] = \"arcsine\"\n        super().__init__(**kwargs)\n\n\nclass SigmaSmoothScheduler(CommonSigmaScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"profile\"] = \"smoothstep\"\n        super().__init__(**kwargs)\n\n## DEIS Multistep Variants\nclass DEIS1MultistepScheduler(RESDEISMultistepScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"solver_order\"] = 1\n        super().__init__(**kwargs)\n\nclass DEIS2MultistepScheduler(RESDEISMultistepScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"solver_order\"] = 2\n        super().__init__(**kwargs)\n\nclass DEIS3MultistepScheduler(RESDEISMultistepScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"solver_order\"] = 3\n        super().__init__(**kwargs)\n\n## Linear RK Variants\nclass LinearRKEulerScheduler(LinearRKScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"euler\"\n        super().__init__(**kwargs)\n\nclass LinearRKHeunScheduler(LinearRKScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"heun\"\n        super().__init__(**kwargs)\n\nclass LinearRK2Scheduler(LinearRKScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"rk2\"\n        super().__init__(**kwargs)\n\nclass LinearRK3Scheduler(LinearRKScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"rk3\"\n        super().__init__(**kwargs)\n\nclass LinearRK4Scheduler(LinearRKScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"rk4\"\n        super().__init__(**kwargs)\n\nclass LinearRKRalsstonScheduler(LinearRKScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"ralston\"\n        super().__init__(**kwargs)\n\nclass LinearRKMidpointScheduler(LinearRKScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"midpoint\"\n        super().__init__(**kwargs)\n\n## Lobatto Variants\nclass Lobatto2Scheduler(LobattoScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"lobatto_iiia_2s\"\n        super().__init__(**kwargs)\n\nclass Lobatto3Scheduler(LobattoScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"lobatto_iiia_3s\"\n        super().__init__(**kwargs)\n\nclass Lobatto4Scheduler(LobattoScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"lobatto_iiia_4s\"\n        super().__init__(**kwargs)\n\n## Radau IIA Variants\nclass RadauIIA2Scheduler(RadauIIAScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"radau_iia_2s\"\n        super().__init__(**kwargs)\n\nclass RadauIIA3Scheduler(RadauIIAScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"radau_iia_3s\"\n        super().__init__(**kwargs)\n\n## Gauss Legendre Variants\nclass GaussLegendre2SScheduler(GaussLegendreScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"gauss-legendre_2s\"\n        super().__init__(**kwargs)\n\nclass GaussLegendre3SScheduler(GaussLegendreScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"gauss-legendre_3s\"\n        super().__init__(**kwargs)\n\nclass GaussLegendre4SScheduler(GaussLegendreScheduler):\n    def __init__(self, **kwargs):\n        kwargs[\"variant\"] = \"gauss-legendre_4s\"\n        super().__init__(**kwargs)\n"
  },
  {
    "path": "modules/rife/__init__.py",
    "content": "#!/bin/env python\n\nimport _thread\nimport os\nimport time\nfrom queue import Queue\nimport cv2\nimport numpy as np\nimport torch\nfrom PIL import Image\nfrom torch.nn import functional as F\nfrom tqdm.rich import tqdm\nfrom modules.rife.ssim import ssim_matlab\nfrom modules.rife.model_rife import RifeModel\nfrom modules import devices, shared\n\n\nmodel_url = 'https://github.com/vladmandic/rife/raw/main/model/flownet-v46.pkl'\nmodel: RifeModel = None\n\n\ndef load(model_path: str = 'rife/flownet-v46.pkl'):\n    global model # pylint: disable=global-statement\n    if model is None:\n        from modules import modelloader\n        model_dir = os.path.join(shared.models_path, 'RIFE')\n        model_path = modelloader.load_file_from_url(url=model_url, model_dir=model_dir, file_name='flownet-v46.pkl')\n        shared.log.debug(f'Video interpolate: model=\"{model_path}\"')\n        model = RifeModel()\n        model.load_model(model_path, -1)\n        model.eval()\n        model.device()\n\n\ndef interpolate(images: list, count: int = 2, scale: float = 1.0, pad: int = 1, change: float = 0.3):\n    if images is None or len(images) < 2:\n        return []\n    if model is None:\n        load()\n    interpolated = []\n    h = images[0].height\n    w = images[0].width\n    t0 = time.time()\n\n    def write(buffer):\n        item = buffer.get()\n        while item is not None:\n            img = item[:, :, ::-1]\n            image = Image.fromarray(img)\n            item = buffer.get()\n            interpolated.append(image)\n\n    def execute(I0, I1, n):\n        if model.version >= 3.9:\n            res = []\n            for i in range(n):\n                res.append(model.inference(I0, I1, (i+1) * 1. / (n+1), scale))\n            return res\n        else:\n            middle = model.inference(I0, I1, scale)\n            if n == 1:\n                return [middle]\n            first_half = execute(I0, middle, n=n//2)\n            second_half = execute(middle, I1, n=n//2)\n            if n % 2:\n                return [*first_half, middle, *second_half]\n            else:\n                return [*first_half, *second_half]\n\n    def f_pad(img):\n        return F.pad(img, padding).to(devices.dtype) # pylint: disable=not-callable\n\n    tmp = max(128, int(128 / scale))\n    ph = ((h - 1) // tmp + 1) * tmp\n    pw = ((w - 1) // tmp + 1) * tmp\n    padding = (0, pw - w, 0, ph - h)\n    buffer = Queue(maxsize=8192)\n    duplicate = 0\n    _thread.start_new_thread(write, (buffer,))\n\n    frame = cv2.cvtColor(np.array(images[0]), cv2.COLOR_RGB2BGR)\n    for _i in range(pad): # fill starting frames\n        buffer.put(frame)\n\n    I1 = f_pad(torch.from_numpy(np.transpose(frame, (2,0,1))).to(devices.device).unsqueeze(0).float() / 255.0)\n    with torch.no_grad():\n        with tqdm(total=len(images), desc='Interpolate', unit='frame') as pbar:\n            for image in images:\n                frame = cv2.cvtColor(np.array(image), cv2.COLOR_RGB2BGR)\n                I0 = I1\n                I1 = f_pad(torch.from_numpy(np.transpose(frame, (2,0,1))).to(devices.device).unsqueeze(0).float() / 255.0)\n                I0_small = F.interpolate(I0, (32, 32), mode='bilinear', align_corners=False).to(torch.float32)\n                I1_small = F.interpolate(I1, (32, 32), mode='bilinear', align_corners=False).to(torch.float32)\n                ssim = ssim_matlab(I0_small[:, :3], I1_small[:, :3])\n                if ssim > 0.99: # skip duplicate frames\n                    duplicate += 1\n                    # continue\n                if ssim < change:\n                    output = []\n                    for _i in range(pad): # fill frames if change rate is above threshold\n                        output.append(I0)\n                    for _i in range(pad):\n                        output.append(I1)\n                else:\n                    output = execute(I0, I1, count-1)\n                for mid in output:\n                    mid = (((mid[0] * 255.0).byte().cpu().numpy().transpose(1, 2, 0)))\n                    buffer.put(mid[:h, :w])\n                buffer.put(frame)\n                pbar.update(1)\n\n    for _i in range(pad): # fill ending frames\n        buffer.put(frame)\n    while not buffer.qsize() > 0:\n        time.sleep(0.1)\n    t1 = time.time()\n    shared.log.info(f'Video interpolate: input={len(images)} frames={len(interpolated)} buffer={buffer.qsize()} duplicate={duplicate} width={w} height={h} interpolate={count} scale={scale} pad={pad} change={change} time={round(t1 - t0, 2)}')\n    return interpolated\n\n\ndef interpolate_nchw(images: list, count: int = 2, scale: float = 1.0):\n    if images is None or len(images) < 2:\n        return images\n    if model is None:\n        load()\n    interpolated = []\n    _n, _c, h, w = images.shape\n    t0 = time.time()\n\n    def f_pad(img):\n        return F.pad(img, padding).to(device=devices.device, dtype=devices.dtype) # pylint: disable=not-callable\n\n    tmp = max(128, int(128 / scale))\n    ph = ((h - 1) // tmp + 1) * tmp\n    pw = ((w - 1) // tmp + 1) * tmp\n    padding = (0, pw - w, 0, ph - h)\n\n    I1 = f_pad(images[0].unsqueeze(0))\n    with torch.no_grad():\n        with tqdm(total=len(images), desc='Interpolate', unit='frame') as pbar:\n            for frame in images:\n                I0 = I1\n                I1 = f_pad(frame.unsqueeze(0))\n                for i in range(count-1):\n                    output = model.inference(I0, I1, (i+1) * 1. / (count), scale)\n                    interpolated.append(output)\n                interpolated.append(I1)\n                pbar.update(1)\n\n    t1 = time.time()\n    shared.log.info(f'Video interpolate: input={len(images)} frames={len(interpolated)} width={w} height={h} interpolate={count} scale={scale} time={round(t1 - t0, 2)}')\n    return interpolated\n"
  },
  {
    "path": "modules/rife/loss.py",
    "content": "import numpy as np\nimport torch\nimport torch.nn as nn\nimport torch.nn.functional as F\nimport torchvision.models as models\nfrom modules import devices\n\n\nclass EPE(nn.Module):\n    def __init__(self):\n        super(EPE, self).__init__()\n\n    def forward(self, flow, gt, loss_mask):\n        loss_map = (flow - gt.detach()) ** 2\n        loss_map = (loss_map.sum(1, True) + 1e-6) ** 0.5\n        return loss_map * loss_mask\n\n\nclass Ternary(nn.Module):\n    def __init__(self):\n        super(Ternary, self).__init__()\n        patch_size = 7\n        out_channels = patch_size * patch_size\n        self.w = np.eye(out_channels).reshape(\n            (patch_size, patch_size, 1, out_channels))\n        self.w = np.transpose(self.w, (3, 2, 0, 1))\n        self.w = torch.tensor(self.w).float().to(devices.device)\n\n    def transform(self, img):\n        patches = F.conv2d(img, self.w, padding=3, bias=None)\n        transf = patches - img\n        transf_norm = transf / torch.sqrt(0.81 + transf**2)\n        return transf_norm\n\n    def rgb2gray(self, rgb):\n        r, g, b = rgb[:, 0:1, :, :], rgb[:, 1:2, :, :], rgb[:, 2:3, :, :]\n        gray = 0.2989 * r + 0.5870 * g + 0.1140 * b\n        return gray\n\n    def hamming(self, t1, t2):\n        dist = (t1 - t2) ** 2\n        dist_norm = torch.mean(dist / (0.1 + dist), 1, True)\n        return dist_norm\n\n    def valid_mask(self, t, padding):\n        n, _, h, w = t.size()\n        inner = torch.ones(n, 1, h - 2 * padding, w - 2 * padding).type_as(t)\n        mask = F.pad(inner, [padding] * 4)\n        return mask\n\n    def forward(self, img0, img1):\n        img0 = self.transform(self.rgb2gray(img0))\n        img1 = self.transform(self.rgb2gray(img1))\n        return self.hamming(img0, img1) * self.valid_mask(img0, 1)\n\n\nclass SOBEL(nn.Module):\n    def __init__(self):\n        super(SOBEL, self).__init__()\n        self.kernelX = torch.tensor([\n            [1, 0, -1],\n            [2, 0, -2],\n            [1, 0, -1],\n        ]).float()\n        self.kernelY = self.kernelX.clone().T\n        self.kernelX = self.kernelX.unsqueeze(0).unsqueeze(0).to(devices.device)\n        self.kernelY = self.kernelY.unsqueeze(0).unsqueeze(0).to(devices.device)\n\n    def forward(self, pred, gt):\n        N, C, H, W = pred.shape[0], pred.shape[1], pred.shape[2], pred.shape[3]\n        img_stack = torch.cat(\n            [pred.reshape(N*C, 1, H, W), gt.reshape(N*C, 1, H, W)], 0)\n        sobel_stack_x = F.conv2d(img_stack, self.kernelX, padding=1)\n        sobel_stack_y = F.conv2d(img_stack, self.kernelY, padding=1)\n        pred_X, gt_X = sobel_stack_x[:N*C], sobel_stack_x[N*C:]\n        pred_Y, gt_Y = sobel_stack_y[:N*C], sobel_stack_y[N*C:]\n        L1X, L1Y = torch.abs(pred_X-gt_X), torch.abs(pred_Y-gt_Y)\n        loss = L1X+L1Y\n        return loss\n\n\nclass MeanShift(nn.Conv2d):\n    def __init__(self, data_mean, data_std, data_range=1, norm=True):\n        c = len(data_mean)\n        super(MeanShift, self).__init__(c, c, kernel_size=1)\n        std = torch.Tensor(data_std)\n        self.weight.data = torch.eye(c).view(c, c, 1, 1)\n        if norm:\n            self.weight.data.div_(std.view(c, 1, 1, 1))\n            self.bias.data = -1 * data_range * torch.Tensor(data_mean)\n            self.bias.data.div_(std)\n        else:\n            self.weight.data.mul_(std.view(c, 1, 1, 1))\n            self.bias.data = data_range * torch.Tensor(data_mean)\n        self.requires_grad = False\n\n\nclass VGGPerceptualLoss(torch.nn.Module):\n    def __init__(self, rank=0): # pylint: disable=unused-argument\n        super(VGGPerceptualLoss, self).__init__()\n        pretrained = True\n        self.vgg_pretrained_features = models.vgg19(\n            pretrained=pretrained).features\n        self.normalize = MeanShift([0.485, 0.456, 0.406], [0.229, 0.224, 0.225], norm=True).to(device=devices.device)\n        for param in self.parameters():\n            param.requires_grad = False\n\n    def forward(self, X, Y, indices=None):\n        X = self.normalize(X)\n        Y = self.normalize(Y)\n        indices = [2, 7, 12, 21, 30]\n        weights = [1.0/2.6, 1.0/4.8, 1.0/3.7, 1.0/5.6, 10/1.5]\n        k = 0\n        loss = 0\n        for i in range(indices[-1]):\n            X = self.vgg_pretrained_features[i](X)\n            Y = self.vgg_pretrained_features[i](Y)\n            if i+1 in indices:\n                loss += weights[k] * (X - Y.detach()).abs().mean() * 0.1\n                k += 1\n        return loss\n"
  },
  {
    "path": "modules/rife/model_ifnet.py",
    "content": "import os\nimport sys\nimport torch\nimport torch.nn as nn\nimport torch.nn.functional as F\n\nsys.path.append(os.path.dirname(__file__))\nfrom warplayer import warp # pylint: disable=wrong-import-position\n\n\ndevice = torch.device(\"cuda\" if torch.cuda.is_available() else \"cpu\")\n\n\ndef conv(in_planes, out_planes, kernel_size=3, stride=1, padding=1, dilation=1):\n    return nn.Sequential(\n        nn.Conv2d(in_planes, out_planes, kernel_size=kernel_size, stride=stride,\n                  padding=padding, dilation=dilation, bias=True),\n        nn.LeakyReLU(0.2, True)\n    )\n\ndef conv_bn(in_planes, out_planes, kernel_size=3, stride=1, padding=1, dilation=1):\n    return nn.Sequential(\n        nn.Conv2d(in_planes, out_planes, kernel_size=kernel_size, stride=stride,\n                  padding=padding, dilation=dilation, bias=False),\n        nn.BatchNorm2d(out_planes),\n        nn.LeakyReLU(0.2, True)\n    )\n\nclass ResConv(nn.Module):\n    def __init__(self, c, dilation=1):\n        super(ResConv, self).__init__()\n        self.conv = nn.Conv2d(c, c, 3, 1, dilation, dilation=dilation, groups=1\\\n)\n        self.beta = nn.Parameter(torch.ones((1, c, 1, 1)), requires_grad=True)\n        self.relu = nn.LeakyReLU(0.2, True)\n\n    def forward(self, x):\n        return self.relu(self.conv(x) * self.beta + x)\n\nclass IFBlock(nn.Module):\n    def __init__(self, in_planes, c=64):\n        super(IFBlock, self).__init__()\n        self.conv0 = nn.Sequential(\n            conv(in_planes, c//2, 3, 2, 1),\n            conv(c//2, c, 3, 2, 1),\n            )\n        self.convblock = nn.Sequential(\n            ResConv(c),\n            ResConv(c),\n            ResConv(c),\n            ResConv(c),\n            ResConv(c),\n            ResConv(c),\n            ResConv(c),\n            ResConv(c),\n        )\n        self.lastconv = nn.Sequential(\n            nn.ConvTranspose2d(c, 4*6, 4, 2, 1),\n            nn.PixelShuffle(2)\n        )\n\n    def forward(self, x, flow=None, scale=1):\n        x = F.interpolate(x, scale_factor= 1. / scale, mode=\"bilinear\", align_corners=False)\n        if flow is not None:\n            flow = F.interpolate(flow, scale_factor= 1. / scale, mode=\"bilinear\", align_corners=False) * 1. / scale\n            x = torch.cat((x, flow), 1)\n        feat = self.conv0(x)\n        feat = self.convblock(feat)\n        tmp = self.lastconv(feat)\n        tmp = F.interpolate(tmp, scale_factor=scale, mode=\"bilinear\", align_corners=False)\n        flow = tmp[:, :4] * scale\n        mask = tmp[:, 4:5]\n        return flow, mask\n\nclass IFNet(nn.Module):\n    def __init__(self):\n        super(IFNet, self).__init__()\n        self.block0 = IFBlock(7, c=192)\n        self.block1 = IFBlock(8+4, c=128)\n        self.block2 = IFBlock(8+4, c=96)\n        self.block3 = IFBlock(8+4, c=64)\n        # self.contextnet = Contextnet()\n        # self.unet = Unet()\n\n    def forward( self, x, timestep=0.5, scale_list=[8, 4, 2, 1], training=False, fastmode=True, ensemble=False): # pylint: disable=dangerous-default-value, unused-argument\n        if training is False:\n            channel = x.shape[1] // 2\n            img0 = x[:, :channel]\n            img1 = x[:, channel:]\n        if not torch.is_tensor(timestep):\n            timestep = (x[:, :1].clone() * 0 + 1) * timestep\n        else:\n            timestep = timestep.repeat(1, 1, img0.shape[2], img0.shape[3])\n        flow_list = []\n        merged = []\n        mask_list = []\n        warped_img0 = img0\n        warped_img1 = img1\n        flow = None\n        mask = None\n        # loss_cons = 0\n        block = [self.block0, self.block1, self.block2, self.block3]\n        for i in range(4):\n            if flow is None:\n                flow, mask = block[i](torch.cat((img0[:, :3], img1[:, :3], timestep), 1), None, scale=scale_list[i])\n                if ensemble:\n                    f1, m1 = block[i](torch.cat((img1[:, :3], img0[:, :3], 1-timestep), 1), None, scale=scale_list[i])\n                    flow = (flow + torch.cat((f1[:, 2:4], f1[:, :2]), 1)) / 2\n                    mask = (mask + (-m1)) / 2\n            else:\n                f0, m0 = block[i](torch.cat((warped_img0[:, :3], warped_img1[:, :3], timestep, mask), 1), flow, scale=scale_list[i])\n                if ensemble:\n                    f1, m1 = block[i](torch.cat((warped_img1[:, :3], warped_img0[:, :3], 1-timestep, -mask), 1), torch.cat((flow[:, 2:4], flow[:, :2]), 1), scale=scale_list[i]) # pylint: disable=invalid-unary-operand-type\n                    f0 = (f0 + torch.cat((f1[:, 2:4], f1[:, :2]), 1)) / 2\n                    m0 = (m0 + (-m1)) / 2\n                flow = flow + f0\n                mask = mask + m0\n            mask_list.append(mask)\n            flow_list.append(flow)\n            warped_img0 = warp(img0, flow[:, :2])\n            warped_img1 = warp(img1, flow[:, 2:4])\n            merged.append((warped_img0, warped_img1))\n        mask_list[3] = torch.sigmoid(mask_list[3])\n        merged[3] = merged[3][0] * mask_list[3] + merged[3][1] * (1 - mask_list[3])\n        return flow_list, mask_list[3], merged\n"
  },
  {
    "path": "modules/rife/model_rife.py",
    "content": "import torch\nfrom torch.optim import AdamW\nfrom torch.nn.parallel import DistributedDataParallel as DDP\nfrom modules.rife.model_ifnet import IFNet\nfrom modules.rife.loss import EPE, SOBEL\nfrom modules import devices\n\n\nclass RifeModel:\n    def __init__(self, local_rank=-1):\n        self.flownet = IFNet()\n        self.device()\n        self.optimG = AdamW(self.flownet.parameters(), lr=1e-6, weight_decay=1e-4)\n        self.epe = EPE()\n        self.version = 3.9\n        # self.vgg = VGGPerceptualLoss().to(device)\n        self.sobel = SOBEL()\n        if local_rank != -1:\n            self.flownet = DDP(self.flownet, device_ids=[local_rank], output_device=local_rank)\n\n    def train(self):\n        self.flownet.train()\n\n    def eval(self):\n        self.flownet.eval()\n\n    def device(self):\n        self.flownet.to(devices.device)\n        self.flownet.to(devices.dtype)\n\n    def load_model(self, model_file, rank=0):\n        def convert(param):\n            if rank == -1:\n                return { k.replace(\"module.\", \"\"): v for k, v in param.items() if \"module.\" in k }\n            else:\n                return param\n        if rank <= 0:\n            if torch.cuda.is_available():\n                self.flownet.load_state_dict(convert(torch.load(model_file)), False)\n            else:\n                self.flownet.load_state_dict(convert(torch.load(model_file, map_location='cpu')), False)\n\n    def save_model(self, model_file, rank=0):\n        if rank == 0:\n            torch.save(self.flownet.state_dict(), model_file)\n\n    def inference(self, img0, img1, timestep=0.5, scale=1.0):\n        imgs = torch.cat((img0, img1), 1)\n        scale_list = [8/scale, 4/scale, 2/scale, 1/scale]\n        _flow, _mask, merged = self.flownet(imgs, timestep, scale_list)\n        return merged[3]\n\n    def update(self, imgs, gt, learning_rate=0, mul=1, training=True, flow_gt=None): # pylint: disable=unused-argument\n        for param_group in self.optimG.param_groups:\n            param_group['lr'] = learning_rate\n        # img0 = imgs[:, :3]\n        # img1 = imgs[:, 3:]\n        if training:\n            self.train()\n        else:\n            self.eval()\n        scale = [8, 4, 2, 1]\n        flow, mask, merged = self.flownet(torch.cat((imgs, gt), 1), scale=scale, training=training)\n        loss_l1 = (merged[3] - gt).abs().mean()\n        loss_smooth = self.sobel(flow[3], flow[3]*0).mean()\n        # loss_vgg = self.vgg(merged[2], gt)\n        if training:\n            self.optimG.zero_grad()\n            loss_G = loss_l1 + loss_smooth * 0.1\n            loss_G.backward()\n            self.optimG.step()\n        # else:\n        #    flow_teacher = flow[2]\n        return merged[3], {\n            'mask': mask,\n            'flow': flow[3][:, :2],\n            'loss_l1': loss_l1,\n            'loss_smooth': loss_smooth,\n        }\n"
  },
  {
    "path": "modules/rife/refine.py",
    "content": "import torch\nimport torch.nn as nn\nimport torch.nn.functional as F\nfrom modules.rife.warplayer import warp\n\n\nc = 16\n\n\ndef conv(in_planes, out_planes, kernel_size=3, stride=1, padding=1, dilation=1):\n    return nn.Sequential(\n        nn.Conv2d(in_planes, out_planes, kernel_size=kernel_size, stride=stride, padding=padding, dilation=dilation, bias=True),\n        nn.LeakyReLU(0.2, True)\n    )\n\n\ndef conv_woact(in_planes, out_planes, kernel_size=3, stride=1, padding=1, dilation=1):\n    return nn.Sequential(\n        nn.Conv2d(in_planes, out_planes, kernel_size=kernel_size, stride=stride, padding=padding, dilation=dilation, bias=True),\n    )\n\n\ndef deconv(in_planes, out_planes, kernel_size=4, stride=2, padding=1): # pylint: disable=unused-argument\n    return nn.Sequential(\n        torch.nn.ConvTranspose2d(in_channels=in_planes, out_channels=out_planes, kernel_size=4, stride=2, padding=1, bias=True),\n        nn.LeakyReLU(0.2, True)\n    )\n\n\nclass Conv2(nn.Module):\n    def __init__(self, in_planes, out_planes, stride=2):\n        super(Conv2, self).__init__()\n        self.conv1 = conv(in_planes, out_planes, 3, stride, 1)\n        self.conv2 = conv(out_planes, out_planes, 3, 1, 1)\n\n    def forward(self, x):\n        x = self.conv1(x)\n        x = self.conv2(x)\n        return x\n\n\nclass Contextnet(nn.Module):\n    def __init__(self):\n        super(Contextnet, self).__init__()\n        self.conv1 = Conv2(3, c)\n        self.conv2 = Conv2(c, 2*c)\n        self.conv3 = Conv2(2*c, 4*c)\n        self.conv4 = Conv2(4*c, 8*c)\n\n    def forward(self, x, flow):\n        x = self.conv1(x)\n        flow = F.interpolate(flow, scale_factor=0.5, mode=\"bilinear\", align_corners=False) * 0.5\n        f1 = warp(x, flow)\n        x = self.conv2(x)\n        flow = F.interpolate(flow, scale_factor=0.5, mode=\"bilinear\", align_corners=False) * 0.5\n        f2 = warp(x, flow)\n        x = self.conv3(x)\n        flow = F.interpolate(flow, scale_factor=0.5, mode=\"bilinear\", align_corners=False) * 0.5\n        f3 = warp(x, flow)\n        x = self.conv4(x)\n        flow = F.interpolate(flow, scale_factor=0.5, mode=\"bilinear\", align_corners=False) * 0.5\n        f4 = warp(x, flow)\n        return [f1, f2, f3, f4]\n\n\nclass Unet(nn.Module):\n    def __init__(self):\n        super(Unet, self).__init__()\n        self.down0 = Conv2(17, 2*c)\n        self.down1 = Conv2(4*c, 4*c)\n        self.down2 = Conv2(8*c, 8*c)\n        self.down3 = Conv2(16*c, 16*c)\n        self.up0 = deconv(32*c, 8*c)\n        self.up1 = deconv(16*c, 4*c)\n        self.up2 = deconv(8*c, 2*c)\n        self.up3 = deconv(4*c, c)\n        self.conv = nn.Conv2d(c, 3, 3, 1, 1)\n\n    def forward(self, img0, img1, warped_img0, warped_img1, mask, flow, c0, c1):\n        s0 = self.down0(\n            torch.cat((img0, img1, warped_img0, warped_img1, mask, flow), 1))\n        s1 = self.down1(torch.cat((s0, c0[0], c1[0]), 1))\n        s2 = self.down2(torch.cat((s1, c0[1], c1[1]), 1))\n        s3 = self.down3(torch.cat((s2, c0[2], c1[2]), 1))\n        x = self.up0(torch.cat((s3, c0[3], c1[3]), 1))\n        x = self.up1(torch.cat((x, s2), 1))\n        x = self.up2(torch.cat((x, s1), 1))\n        x = self.up3(torch.cat((x, s0), 1))\n        x = self.conv(x)\n        return torch.sigmoid(x)\n"
  },
  {
    "path": "modules/rife/ssim.py",
    "content": "from math import exp\nimport torch\nimport torch.nn.functional as F\nfrom modules import devices\n\n\ndef gaussian(window_size, sigma):\n    gauss = torch.Tensor([exp(-(x - window_size//2)**2/float(2*sigma**2)) for x in range(window_size)])\n    return gauss/gauss.sum()\n\n\ndef create_window(window_size, channel=1):\n    _1D_window = gaussian(window_size, 1.5).unsqueeze(1)\n    _2D_window = _1D_window.mm(_1D_window.t()).float().unsqueeze(0).unsqueeze(0).to(devices.device)\n    window = _2D_window.expand(channel, 1, window_size, window_size).contiguous()\n    return window\n\n\ndef create_window_3d(window_size, channel=1):\n    _1D_window = gaussian(window_size, 1.5).unsqueeze(1)\n    _2D_window = _1D_window.mm(_1D_window.t())\n    _3D_window = _2D_window.unsqueeze(2) @ (_1D_window.t())\n    window = _3D_window.expand(1, channel, window_size, window_size, window_size).contiguous().to(devices.device)\n    return window\n\n\ndef ssim(img1, img2, window_size=11, window=None, size_average=True, full=False, val_range=None):\n    # Value range can be different from 255. Other common ranges are 1 (sigmoid) and 2 (tanh).\n    if val_range is None:\n        if torch.max(img1) > 128:\n            max_val = 255\n        else:\n            max_val = 1\n\n        if torch.min(img1) < -0.5:\n            min_val = -1\n        else:\n            min_val = 0\n        L = max_val - min_val\n    else:\n        L = val_range\n    padd = 0\n    (_, channel, height, width) = img1.size()\n    if window is None:\n        real_size = min(window_size, height, width)\n        window = create_window(real_size, channel=channel).to(img1.device)\n    # mu1 = F.conv2d(img1, window, padding=padd, groups=channel)\n    # mu2 = F.conv2d(img2, window, padding=padd, groups=channel)\n    mu1 = F.conv2d(F.pad(img1, (5, 5, 5, 5), mode='replicate'), window, padding=padd, groups=channel)\n    mu2 = F.conv2d(F.pad(img2, (5, 5, 5, 5), mode='replicate'), window, padding=padd, groups=channel)\n    mu1_sq = mu1.pow(2)\n    mu2_sq = mu2.pow(2)\n    mu1_mu2 = mu1 * mu2\n    sigma1_sq = F.conv2d(F.pad(img1 * img1, (5, 5, 5, 5), 'replicate'), window, padding=padd, groups=channel) - mu1_sq\n    sigma2_sq = F.conv2d(F.pad(img2 * img2, (5, 5, 5, 5), 'replicate'), window, padding=padd, groups=channel) - mu2_sq\n    sigma12 = F.conv2d(F.pad(img1 * img2, (5, 5, 5, 5), 'replicate'), window, padding=padd, groups=channel) - mu1_mu2\n    C1 = (0.01 * L) ** 2\n    C2 = (0.03 * L) ** 2\n    v1 = 2.0 * sigma12 + C2\n    v2 = sigma1_sq + sigma2_sq + C2\n    cs = torch.mean(v1 / v2)  # contrast sensitivity\n    ssim_map = ((2 * mu1_mu2 + C1) * v1) / ((mu1_sq + mu2_sq + C1) * v2)\n    if size_average:\n        ret = ssim_map.mean()\n    else:\n        ret = ssim_map.mean(1).mean(1).mean(1)\n    if full:\n        return ret, cs\n    return ret\n\n\ndef ssim_matlab(img1, img2, window_size=11, window=None, size_average=True, full=False, val_range=None):\n    # Value range can be different from 255. Other common ranges are 1 (sigmoid) and 2 (tanh).\n    if val_range is None:\n        if torch.max(img1) > 128:\n            max_val = 255\n        else:\n            max_val = 1\n        if torch.min(img1) < -0.5:\n            min_val = -1\n        else:\n            min_val = 0\n        L = max_val - min_val\n    else:\n        L = val_range\n    padd = 0\n    (_, _, height, width) = img1.size()\n    if window is None:\n        real_size = min(window_size, height, width)\n        window = create_window_3d(real_size, channel=1).to(img1.device)\n        # Channel is set to 1 since we consider color images as volumetric images\n    img1 = img1.unsqueeze(1)\n    img2 = img2.unsqueeze(1)\n    mu1 = F.conv3d(F.pad(img1, (5, 5, 5, 5, 5, 5), mode='replicate'), window, padding=padd, groups=1)\n    mu2 = F.conv3d(F.pad(img2, (5, 5, 5, 5, 5, 5), mode='replicate'), window, padding=padd, groups=1)\n    mu1_sq = mu1.pow(2)\n    mu2_sq = mu2.pow(2)\n    mu1_mu2 = mu1 * mu2\n    sigma1_sq = F.conv3d(F.pad(img1 * img1, (5, 5, 5, 5, 5, 5), 'replicate'), window, padding=padd, groups=1) - mu1_sq\n    sigma2_sq = F.conv3d(F.pad(img2 * img2, (5, 5, 5, 5, 5, 5), 'replicate'), window, padding=padd, groups=1) - mu2_sq\n    sigma12 = F.conv3d(F.pad(img1 * img2, (5, 5, 5, 5, 5, 5), 'replicate'), window, padding=padd, groups=1) - mu1_mu2\n    C1 = (0.01 * L) ** 2\n    C2 = (0.03 * L) ** 2\n    v1 = 2.0 * sigma12 + C2\n    v2 = sigma1_sq + sigma2_sq + C2\n    cs = torch.mean(v1 / v2)  # contrast sensitivity\n    ssim_map = ((2 * mu1_mu2 + C1) * v1) / ((mu1_sq + mu2_sq + C1) * v2)\n    if size_average:\n        ret = ssim_map.mean()\n    else:\n        ret = ssim_map.mean(1).mean(1).mean(1)\n    if full:\n        return ret, cs\n    return ret\n\n\ndef msssim(img1, img2, window_size=11, size_average=True, val_range=None, normalize=False):\n    local_device = img1.device\n    weights = torch.FloatTensor([0.0448, 0.2856, 0.3001, 0.2363, 0.1333]).to(local_device)\n    levels = weights.size()[0]\n    mssim = []\n    mcs = []\n    for _ in range(levels):\n        sim, cs = ssim(img1, img2, window_size=window_size, size_average=size_average, full=True, val_range=val_range)\n        mssim.append(sim)\n        mcs.append(cs)\n        img1 = F.avg_pool2d(img1, (2, 2))\n        img2 = F.avg_pool2d(img2, (2, 2))\n    mssim = torch.stack(mssim)\n    mcs = torch.stack(mcs)\n    # Normalize (to avoid NaNs during training unstable models, not compliant with original definition)\n    if normalize:\n        mssim = (mssim + 1) / 2\n        mcs = (mcs + 1) / 2\n    pow1 = mcs ** weights\n    pow2 = mssim ** weights\n    # From Matlab implementation https://ece.uwaterloo.ca/~z70wang/research/iwssim/\n    output = torch.prod(pow1[:-1] * pow2[-1])\n    return output\n\n\n# Classes to re-use window\nclass SSIM(torch.nn.Module):\n    def __init__(self, window_size=11, size_average=True, val_range=None):\n        super(SSIM, self).__init__()\n        self.window_size = window_size\n        self.size_average = size_average\n        self.val_range = val_range\n        # Assume 3 channel for SSIM\n        self.channel = 3\n        self.window = create_window(window_size, channel=self.channel)\n\n    def forward(self, img1, img2):\n        (_, channel, _, _) = img1.size()\n        if channel == self.channel and self.window.dtype == img1.dtype:\n            window = self.window\n        else:\n            window = create_window(self.window_size, channel).to(img1.device).type(img1.dtype)\n            self.window = window\n            self.channel = channel\n        _ssim = ssim(img1, img2, window=window, window_size=self.window_size, size_average=self.size_average)\n        dssim = (1 - _ssim) / 2\n        return dssim\n\n\nclass MSSSIM(torch.nn.Module):\n    def __init__(self, window_size=11, size_average=True, channel=3):\n        super(MSSSIM, self).__init__()\n        self.window_size = window_size\n        self.size_average = size_average\n        self.channel = channel\n\n    def forward(self, img1, img2):\n        return msssim(img1, img2, window_size=self.window_size, size_average=self.size_average)\n"
  },
  {
    "path": "modules/rife/warplayer.py",
    "content": "import torch\nfrom modules import devices\n\n\nbackwarp_tenGrid = {}\n\n\ndef warp(tenInput, tenFlow):\n    k = (str(tenFlow.device), str(tenFlow.size()))\n    if k not in backwarp_tenGrid:\n        tenHorizontal = torch.linspace(-1.0, 1.0, tenFlow.shape[3], device=devices.device).view(1, 1, 1, tenFlow.shape[3]).expand(tenFlow.shape[0], -1, tenFlow.shape[2], -1)\n        tenVertical = torch.linspace(-1.0, 1.0, tenFlow.shape[2], device=devices.device).view(1, 1, tenFlow.shape[2], 1).expand(tenFlow.shape[0], -1, -1, tenFlow.shape[3])\n        backwarp_tenGrid[k] = torch.cat([tenHorizontal, tenVertical], 1).to(devices.device)\n    tenFlow = torch.cat([tenFlow[:, 0:1, :, :] / ((tenInput.shape[3] - 1.0) / 2.0),\n                         tenFlow[:, 1:2, :, :] / ((tenInput.shape[2] - 1.0) / 2.0)], 1)\n    grid = (backwarp_tenGrid[k] + tenFlow).permute(0, 2, 3, 1).to(devices.dtype)\n    return torch.nn.functional.grid_sample(input=tenInput, grid=grid, mode='bilinear', padding_mode='border', align_corners=True)\n"
  },
  {
    "path": "modules/rocm.py",
    "content": "import os\nimport sys\nimport glob\nimport ctypes\nimport shutil\nimport subprocess\nfrom types import ModuleType\nfrom typing import Union, overload, TYPE_CHECKING\nfrom enum import Enum\nfrom functools import wraps\nif TYPE_CHECKING:\n    import torch\n\n\nrocm_sdk: Union[ModuleType, None] = None\n\n\ndef resolve_link(path_: str) -> str:\n    if not os.path.islink(path_):\n        return path_\n    return resolve_link(os.readlink(path_))\n\n\ndef dirname(path_: str, r: int = 1) -> str:\n    for _ in range(0, r):\n        path_ = os.path.dirname(path_)\n    return path_\n\n\ndef spawn(command: Union[str, list[str]], cwd: os.PathLike = '.') -> str:\n    process = subprocess.run(command, cwd=cwd, shell=True, check=False, stdout=subprocess.PIPE, stderr=subprocess.DEVNULL)\n    return process.stdout.decode(encoding=\"utf8\", errors=\"ignore\")\n\n\ndef load_library_global(path_: str):\n    ctypes.CDLL(path_, mode=ctypes.RTLD_GLOBAL)\n\n\nclass Environment:\n    pass\n\n\n# rocm is installed system-wide\nclass ROCmEnvironment(Environment):\n    path: str\n\n    def __init__(self, path: str):\n        self.path = path\n\n\n# rocm-sdk package is installed\nclass PythonPackageEnvironment(Environment):\n    hip: ctypes.CDLL\n\n    def __init__(self, rocm_sdk_module: ModuleType):\n        spec = rocm_sdk_module._dist_info.ALL_PACKAGES['core'].get_py_package() # pylint: disable=protected-access\n        lib = rocm_sdk_module._dist_info.ALL_LIBRARIES['amdhip64'] # pylint: disable=protected-access\n        pattern = os.path.join(os.path.dirname(spec.origin), lib.windows_relpath if sys.platform == \"win32\" else lib.posix_relpath, lib.dll_pattern if sys.platform == \"win32\" else lib.so_pattern)\n        candidates = glob.glob(pattern)\n        if len(candidates) == 0:\n            raise FileNotFoundError(\"Could not find amdhip64 in rocm-sdk package\")\n        self.hip = ctypes.CDLL(candidates[0])\n\n\nclass MicroArchitecture(Enum):\n    GCN = \"gcn\"\n    RDNA = \"rdna\"\n    CDNA = \"cdna\"\n\n\nclass Agent:\n    name: str\n    gfx_version: int\n    arch: MicroArchitecture\n    is_apu: bool\n    blaslt_supported: bool\n\n    @staticmethod\n    def parse_gfx_version(name: str) -> int:\n        result = 0\n        for i in range(3, len(name)):\n            if name[i].isdigit():\n                result *= 0x10\n                result += ord(name[i]) - 48\n                continue\n            if name[i] in \"abcdef\":\n                result *= 0x10\n                result += ord(name[i]) - 87\n                continue\n            break\n        return result\n\n    @overload\n    def __init__(self, name: str): ...\n    @overload\n    def __init__(self, device: 'torch.types.Device'): ...\n\n    def __init__(self, arg):\n        if isinstance(arg, str):\n            name = arg\n        else: # assume arg is device-like object\n            import torch\n            name = getattr(torch.cuda.get_device_properties(arg), \"gcnArchName\", \"gfx0000\")\n        self.name = name.split(':')[0]\n        self.gfx_version = Agent.parse_gfx_version(self.name)\n        if self.gfx_version > 0x1000:\n            self.arch = MicroArchitecture.RDNA\n        elif self.gfx_version in (0x908, 0x90a, 0x942,):\n            self.arch = MicroArchitecture.CDNA\n        else:\n            self.arch = MicroArchitecture.GCN\n        self.is_apu = (self.gfx_version & 0xFFF0 == 0x1150) or self.gfx_version in (0x801, 0x902, 0x90c, 0x1013, 0x1033, 0x1035, 0x1036, 0x1103,)\n        self.blaslt_supported = False if blaslt_tensile_libpath is None else os.path.exists(os.path.join(blaslt_tensile_libpath, f\"TensileLibrary_lazy_{self.name}.dat\"))\n\n    def __str__(self) -> str:\n        return self.name\n\n    @property\n    def therock(self) -> Union[str, None]:\n        if (self.gfx_version & 0xFFF0) == 0x1200:\n            return \"v2/gfx120X-all\"\n        if (self.gfx_version & 0xFFF0) == 0x1100:\n            return \"v2/gfx110X-all\"\n        if self.gfx_version == 0x1150:\n            return \"v2-staging/gfx1150\"\n        if self.gfx_version == 0x1151:\n            return \"v2/gfx1151\"\n        if self.gfx_version == 0x1152:\n            return \"v2-staging/gfx1152\"\n        if self.gfx_version == 0x1153:\n            return \"v2-staging/gfx1153\"\n        if self.gfx_version in (0x1030, 0x1032,):\n            return \"v2-staging/gfx103X-dgpu\"\n        #if (self.gfx_version & 0xFFF0) == 0x1010:\n        #    return \"gfx101X-dgpu\"\n        #if (self.gfx_version & 0xFFF0) == 0x900:\n        #    return \"gfx90X-dcgpu\"\n        #if (self.gfx_version & 0xFFF0) == 0x940:\n        #    return \"gfx94X-dcgpu\"\n        #if self.gfx_version == 0x950:\n        #    return \"gfx950-dcgpu\"\n        return None\n\n    def get_gfx_version(self) -> Union[str, None]:\n        if self.gfx_version is None:\n            return None\n        if self.gfx_version >= 0x1100 and self.gfx_version < 0x1200:\n            return \"11.0.0\"\n        elif self.gfx_version != 0x1030 and self.gfx_version >= 0x1000 and self.gfx_version < 0x1100:\n            # gfx1010 users had to override gfx version to 10.3.0 in Linux\n            # it is unknown whether overriding is needed in ZLUDA\n            return \"10.3.0\"\n        return None\n\n\ndef find() -> Union[ROCmEnvironment, None]:\n    hip_path = shutil.which(\"hipconfig\")\n    if hip_path is not None:\n        return ROCmEnvironment(dirname(resolve_link(hip_path), 2))\n\n    if sys.platform == \"win32\":\n        hip_path = os.environ.get(\"HIP_PATH\", None)\n        if hip_path is not None:\n            return ROCmEnvironment(hip_path)\n\n        program_files = os.environ.get('ProgramFiles', r'C:\\Program Files')\n        hip_path = rf'{program_files}\\AMD\\ROCm'\n        if not os.path.exists(hip_path):\n            return None\n\n        class Version:\n            major: int\n            minor: int\n\n            def __init__(self, string: str):\n                self.major, self.minor = [int(v) for v in string.strip().split(\".\")]\n\n            def __gt__(self, other):\n                return self.major * 10 + other.minor > other.major * 10 + other.minor\n\n            def __str__(self):\n                return f\"{self.major}.{self.minor}\"\n\n        latest = None\n        versions = os.listdir(hip_path)\n        for s in versions:\n            item = None\n            try:\n                item = Version(s)\n            except Exception:\n                continue\n            if latest is None:\n                latest = item\n                continue\n            if item > latest:\n                latest = item\n\n        if latest is None:\n            return None\n\n        return ROCmEnvironment(os.path.join(hip_path, str(latest)))\n    else:\n        if not os.path.exists(\"/opt/rocm\"):\n            return None\n        return ROCmEnvironment(resolve_link(\"/opt/rocm\"))\n\n\ndef get_version() -> str:\n    if isinstance(environment, ROCmEnvironment):\n        # We don't load the hip library that will not be used by PyTorch.\n        if sys.platform == \"win32\":\n            # ROCm is system-wide installed. Assume the version is the folder name. (e.g. C:\\Program Files\\AMD\\ROCm\\6.4)\n            # hipconfig requires Perl\n            return os.path.basename(environment.path) or os.path.basename(os.path.dirname(environment.path))\n        else:\n            arr = spawn(\"hipconfig --version\", cwd=os.path.join(environment.path, 'bin')).split(\".\")\n            return f'{arr[0]}.{arr[1]}' if len(arr) >= 2 else None\n    elif isinstance(environment, PythonPackageEnvironment):\n        # If rocm-sdk package is installed, the hip library may be used by PyTorch.\n        ver = ctypes.c_int()\n        environment.hip.hipRuntimeGetVersion(ctypes.byref(ver))\n        major = ver.value // 10000000\n        minor = (ver.value // 100000) % 100\n        #patch = version.value % 100000\n        return f\"{major}.{minor}\"\n    else:\n        return None\n\n\ndef get_flash_attention_command(agent: Agent) -> str:\n    default = \"git+https://github.com/ROCm/flash-attention\"\n    if agent.gfx_version >= 0x1100 and agent.gfx_version < 0x1200 and os.environ.get(\"FLASH_ATTENTION_USE_TRITON_ROCM\", \"false\").lower() != \"true\":\n        # use the navi_rotary_fix fork because the original doesn't support rotary_emb for transformers\n        # original: \"git+https://github.com/ROCm/flash-attention@howiejay/navi_support\"\n        default = \"git+https://github.com/Disty0/flash-attention@navi_rotary_fix\"\n    return \"--no-build-isolation \" + os.environ.get(\"FLASH_ATTENTION_PACKAGE\", default)\n\n\ndef refresh():\n    global rocm_sdk, environment, blaslt_tensile_libpath, is_installed, version # pylint: disable=global-statement\n    try:\n        import rocm_sdk\n        environment = PythonPackageEnvironment(rocm_sdk)\n        try:\n            target_family = rocm_sdk._dist_info.determine_target_family() # pylint: disable=protected-access\n            spec = rocm_sdk._dist_info.ALL_PACKAGES['libraries'].get_py_package(target_family) # pylint: disable=protected-access\n            blaslt_tensile_libpath = os.path.join(os.path.dirname(spec.origin), \"bin\", \"hipblaslt\", \"library\")\n        except Exception:\n            blaslt_tensile_libpath = None\n        spawn([\"rocm-sdk\", \"init\"])\n    except ImportError:\n        rocm_sdk = None\n        environment = find()\n        if environment is not None:\n            blaslt_tensile_libpath = os.path.join(environment.path, \"bin\" if sys.platform == \"win32\" else \"lib\", \"hipblaslt\", \"library\")\n\n    if environment is not None:\n        blaslt_tensile_libpath = os.environ.get(\"HIPBLASLT_TENSILE_LIBPATH\", blaslt_tensile_libpath)\n        is_installed = True\n        version = get_version()\n\n\nif sys.platform == \"win32\":\n    import tempfile\n\n    def get_agents() -> list[Agent]:\n        name = None\n        with tempfile.NamedTemporaryFile(mode='w', encoding='utf-8', delete=False) as f:\n            name = f.name\n            f.write(CODE_AMDGPU_ARCH)\n            f.flush()\n        out = spawn([sys.executable, name])\n        os.unlink(name)\n        out = out.strip()\n        if out == \"\":\n            return []\n        return [Agent(x.split(' ')[-1].strip()) for x in out.split(\"\\n\")]\n\n    def postinstall():\n        import torch\n        if torch.version.hip is None:\n            os.environ.pop(\"ROCM_HOME\", None)\n            os.environ.pop(\"ROCM_PATH\", None)\n            paths = os.environ[\"PATH\"].split(\";\")\n            paths_no_rocm = []\n            for path_ in paths:\n                if \"rocm\" not in path_.lower():\n                    paths_no_rocm.append(path_)\n            os.environ[\"PATH\"] = \";\".join(paths_no_rocm)\n            return\n\n    def rocm_init():\n        try:\n            import torch\n            import numpy as np\n            from installer import log\n            from modules.devices import get_hip_agent\n            from modules.rocm_triton_windows import apply_triton_patches\n\n            build_targets = torch.cuda.get_arch_list()\n            agents = get_agents()\n            log.debug(f'ROCm: agents={agents}')\n            if all(available.name not in build_targets for available in agents):\n                log.warning('ROCm: torch-rocm is installed, but none of build targets are available')\n                # use cpu instead of crashing\n                torch.cuda.is_available = lambda: False\n\n            agent = get_hip_agent()\n            log.debug(f'ROCm: selected={agents}')\n            if not agent.blaslt_supported:\n                log.warning(f'ROCm: hipBLASLt unavailable agent={agent}')\n\n            if sys.platform == \"win32\":\n                apply_triton_patches()\n\n            original_cholesky_ex = torch.linalg.cholesky_ex\n            @wraps(original_cholesky_ex)\n            def cholesky_ex(A: torch.Tensor, upper=False, check_errors=False, out=None) -> torch.return_types.linalg_cholesky_ex:\n                assert not check_errors\n                return_device = A.device\n                L = torch.from_numpy(np.linalg.cholesky(A.to(\"cpu\").numpy(), upper=upper)).to(return_device)\n                info = torch.tensor(0, dtype=torch.int32, device=return_device)\n                if out is not None:\n                    out[0].copy_(L)\n                    out[1].copy_(info)\n                return torch.return_types.linalg_cholesky_ex((L, info), {})\n            torch.linalg.cholesky_ex = cholesky_ex\n\n            original_cholesky = torch.linalg.cholesky\n            @wraps(original_cholesky)\n            def cholesky(A: torch.Tensor, upper=False, out=None) -> torch.Tensor:\n                return_device = A.device\n                L = torch.from_numpy(np.linalg.cholesky(A.to(\"cpu\").numpy(), upper=upper)).to(return_device)\n                if out is not None:\n                    out.copy_(L)\n                return L\n            torch.linalg.cholesky = cholesky\n        except Exception as e:\n            return False, e\n        return True, None\n\n    is_wsl: bool = False\nelse: # sys.platform != \"win32\"\n    def get_agents() -> list[Agent]:\n        try:\n            _agents = spawn(\"rocm_agent_enumerator\").split(\"\\n\")\n            _agents = [x for x in _agents if x and x != 'gfx000']\n        except Exception: # old version of ROCm WSL doesn't have rocm_agent_enumerator\n            _agents = spawn(\"rocminfo\").split(\"\\n\")\n            _agents = [x.strip().split(\" \")[-1] for x in _agents if x.startswith('  Name:') and \"CPU\" not in x]\n        return [Agent(x) for x in _agents]\n\n    def postinstall():\n        if is_wsl:\n            try:\n                if shutil.which(\"conda\") is not None:\n                    # Preload stdc++ library. This will bypass Anaconda stdc++ library.\n                    # (hsa-runtime64 depends on stdc++)\n                    load_library_global(\"/lib/x86_64-linux-gnu/libstdc++.so.6\")\n                # Preload rocr4wsl. The user don't have to replace the library file.\n                load_library_global(\"/opt/rocm/lib/libhsa-runtime64.so\")\n            except OSError:\n                pass\n\n    def rocm_init():\n        try:\n            import torch\n            from installer import log\n            from modules.devices import get_hip_agent\n\n            agent = get_hip_agent()\n            if not agent.blaslt_supported:\n                log.debug(f'ROCm: hipBLASLt unavailable agent={agent}')\n        except Exception as e:\n            return False, e\n        return True, None\n\n    is_wsl: bool = os.environ.get('WSL_DISTRO_NAME', 'unknown' if spawn('wslpath -w /') else None) is not None\n\nenvironment: Union[Environment, None] = None\nblaslt_tensile_libpath: Union[str, None] = None\nis_installed: bool = False\nversion: Union[str, None] = None\nrefresh()\n\n# amdgpu-arch.exe written in Python\nCODE_AMDGPU_ARCH = \"\"\"\nimport os\nimport sys\nimport ctypes\nimport ctypes.wintypes\nimport contextlib\nhipDeviceProp = ctypes.c_byte * 1472\n@contextlib.contextmanager\ndef mute(fd):\n    s = os.dup(fd)\n    try:\n        with open(os.devnull, 'w') as devnull:\n            os.dup2(devnull.fileno(), fd)\n            yield\n    finally:\n        os.dup2(s, fd)\n        os.close(s)\nclass HIP:\n    def __init__(self):\n        ctypes.windll.kernel32.LoadLibraryA.restype = ctypes.wintypes.HMODULE\n        ctypes.windll.kernel32.LoadLibraryA.argtypes = [ctypes.c_char_p]\n        self.handle = None\n        path = os.environ.get(\"windir\", \"C:\\\\\\\\Windows\") + \"\\\\\\\\System32\\\\\\\\amdhip64_7.dll\"\n        if not os.path.isfile(path):\n            path = os.environ.get(\"windir\", \"C:\\\\\\\\Windows\") + \"\\\\\\\\System32\\\\\\\\amdhip64_6.dll\"\n        if not os.path.isfile(path):\n            path = os.environ.get(\"windir\", \"C:\\\\\\\\Windows\") + \"\\\\\\\\System32\\\\\\\\amdhip64.dll\"\n        assert os.path.isfile(path)\n        self.handle = ctypes.windll.kernel32.LoadLibraryA(path.encode('utf-8'))\n        ctypes.windll.kernel32.GetLastError.restype = ctypes.wintypes.DWORD\n        ctypes.windll.kernel32.GetLastError.argtypes = []\n        assert ctypes.windll.kernel32.GetLastError() == 0\n        ctypes.windll.kernel32.GetProcAddress.restype = ctypes.c_void_p\n        ctypes.windll.kernel32.GetProcAddress.argtypes = [ctypes.wintypes.HMODULE, ctypes.c_char_p]\n        hipInit = ctypes.CFUNCTYPE(ctypes.c_int, ctypes.c_uint)(\n            ctypes.windll.kernel32.GetProcAddress(self.handle, b\"hipInit\"))\n        with mute(sys.stdout.fileno()):\n            hipInit(0)\n        self.hipGetDeviceCount = ctypes.CFUNCTYPE(ctypes.c_int, ctypes.POINTER(ctypes.c_int))(\n            ctypes.windll.kernel32.GetProcAddress(self.handle, b\"hipGetDeviceCount\"))\n        self.hipGetDeviceProperties = ctypes.CFUNCTYPE(ctypes.c_int, ctypes.POINTER(hipDeviceProp), ctypes.c_int)(\n            ctypes.windll.kernel32.GetProcAddress(self.handle, b\"hipGetDeviceProperties\"))\n    def get_device_count(self) -> int:\n        count = ctypes.c_int()\n        assert self.hipGetDeviceCount(ctypes.byref(count)) == 0\n        return count.value\n    def get_device_properties(self, device_id) -> bytes:\n        prop = hipDeviceProp()\n        assert self.hipGetDeviceProperties(ctypes.byref(prop), device_id) == 0\n        return bytes(prop)\nif __name__ == \"__main__\":\n    hip = HIP()\n    count = hip.get_device_count()\n    archs: list[str | None] = [None] * count\n    for i in range(count):\n        prop = hip.get_device_properties(i)\n        name = \"\"\n        idx = 0\n        while idx < len(prop):\n            try:\n                idx = prop.index(0x67, idx) + 1\n            except ValueError:\n                break\n            if prop[idx] != 0x66:\n                continue\n            if prop[idx + 1] != 0x78:\n                continue\n            idx = idx + 2\n            while prop[idx] != 0x00:\n                c = prop[idx]\n                idx += 1\n                if (c < 0x30 or c > 0x39) and (c < 0x61 or c > 0x66):\n                    name = \"\"\n                    continue\n                name += chr(c)\n            break\n        if name:\n            archs[i] = \"gfx\" + name\n    del hip\n    for arch in archs:\n        if arch is not None:\n            print(arch)\n\"\"\"\n"
  },
  {
    "path": "modules/rocm_triton_windows.py",
    "content": "import sys\nfrom typing import Union\nimport torch\nfrom modules import shared, devices\nfrom modules.rocm import Agent\n\n\nif sys.platform == \"win32\":\n    MEM_BUS_WIDTH = {\n        \"AMD Radeon RX 9070 XT\": 256,\n        \"AMD Radeon RX 9070\": 256,\n        \"AMD Radeon RX 9060 XT\": 192,\n        \"AMD Radeon RX 7900 XTX\": 384,\n        \"AMD Radeon RX 7900 XT\": 320,\n        \"AMD Radeon RX 7900 GRE\": 256,\n        \"AMD Radeon RX 7800 XT\": 256,\n        \"AMD Radeon RX 7700 XT\": 192,\n        \"AMD Radeon RX 7700\": 192,\n        \"AMD Radeon RX 7650 GRE\": 128,\n        \"AMD Radeon RX 7600 XT\": 128,\n        \"AMD Radeon RX 7600\": 128,\n        \"AMD Radeon RX 7500 XT\": 96,\n        \"AMD Radeon RX 6950 XT\": 256,\n        \"AMD Radeon RX 6900 XT\": 256,\n        \"AMD Radeon RX 6800 XT\": 256,\n        \"AMD Radeon RX 6800\": 256,\n        \"AMD Radeon RX 6750 XT\": 192,\n        \"AMD Radeon RX 6700 XT\": 192,\n        \"AMD Radeon RX 6700\": 160,\n        \"AMD Radeon RX 6650 XT\": 128,\n        \"AMD Radeon RX 6600 XT\": 128,\n        \"AMD Radeon RX 6600\": 128,\n        \"AMD Radeon RX 6500 XT\": 64,\n        \"AMD Radeon RX 6400\": 64,\n    }\n\n    class DeviceProperties:\n        PROPERTIES_OVERRIDE = {\n            # sometimes gcnArchName contains device name (\"AMD Radeon RX ...\"), not architecture name (\"gfx...\")\n            \"gcnArchName\": \"gfx0000\",\n        }\n        internal: torch._C._CudaDeviceProperties\n\n        def __init__(self, props: torch._C._CudaDeviceProperties):\n            self.internal = props\n\n        def __getattr__(self, name):\n            if name in DeviceProperties.PROPERTIES_OVERRIDE:\n                return DeviceProperties.PROPERTIES_OVERRIDE[name]\n            return getattr(self.internal, name)\n\n    __get_device_properties = torch.cuda._get_device_properties # pylint: disable=protected-access\n    def torch_cuda__get_device_properties(device):\n        return DeviceProperties(__get_device_properties(device))\n\n    _cuda_getCurrentRawStream = torch._C._cuda_getCurrentRawStream # pylint: disable=protected-access\n    def torch__C__cuda_getCurrentRawStream(device):\n        from modules import zluda\n        return zluda.core.to_hip_stream(_cuda_getCurrentRawStream(device))\n\n    def get_default_agent() -> Union[Agent, None]:\n        if shared.devices.has_rocm():\n            return devices.get_hip_agent()\n        else:\n            from modules import zluda\n            return zluda.default_agent\n\n    def apply_triton_patches():\n        agent = get_default_agent()\n        if agent is not None:\n            DeviceProperties.PROPERTIES_OVERRIDE[\"gcnArchName\"] = agent.name\n        torch.cuda._get_device_properties = torch_cuda__get_device_properties # pylint: disable=protected-access\n        if shared.devices.backend == \"zluda\":\n            torch._C._cuda_getCurrentRawStream = torch__C__cuda_getCurrentRawStream # pylint: disable=protected-access\n            torch._dynamo.device_interface.CudaInterface.get_raw_stream = staticmethod(torch__C__cuda_getCurrentRawStream) # pylint: disable=protected-access\n\n        # Triton\n        try:\n            import triton\n            _get_device_properties = triton.runtime.driver.active.utils.get_device_properties\n            def triton_runtime_driver_active_utils_get_device_properties(device):\n                props = _get_device_properties(device)\n                name = torch.cuda.get_device_name()\n                if shared.devices.has_zluda():\n                    name = name[:-8]\n                if props[\"mem_bus_width\"] == 0: # Windows HIP SDK bug\n                    if name in MEM_BUS_WIDTH:\n                        props[\"mem_bus_width\"] = MEM_BUS_WIDTH[name]\n                    else:\n                        props[\"mem_bus_width\"] = 128\n                        shared.log.warning(f'[TRITON] defaulting mem_bus_width=128 for device \"{name}\".')\n                return props\n            triton.runtime.driver.active.utils.get_device_properties = triton_runtime_driver_active_utils_get_device_properties\n        except Exception:\n            pass\n"
  },
  {
    "path": "modules/safe.py",
    "content": "# this code is adapted from the script contributed by anon from /h/\n\nimport pickle\nimport collections\nimport zipfile\nimport re\n\nimport torch\nimport numpy as np\nimport _codecs\n\n# PyTorch 1.13 and later have _TypedStorage renamed to TypedStorage\nTypedStorage = torch.storage.TypedStorage if hasattr(torch.storage, 'TypedStorage') else torch.storage._TypedStorage # pylint: disable=protected-access\n\n\ndef encode(*args):\n    out = _codecs.encode(*args)\n    return out\n\n\nclass RestrictedUnpickler(pickle.Unpickler):\n    extra_handler = None\n\n    def persistent_load(self, pid):\n        assert pid[0] == 'storage'\n        try:\n            return TypedStorage(_internal=True)\n        except TypeError:\n            return TypedStorage()  # PyTorch before 2.0 does not have the _internal argument\n\n    def find_class(self, module, name):\n        if self.extra_handler is not None:\n            res = self.extra_handler(module, name)\n            if res is not None:\n                return res\n\n        if module == 'collections' and name == 'OrderedDict':\n            return getattr(collections, name)\n        if module == 'torch._utils' and name in ['_rebuild_tensor_v2', '_rebuild_parameter', '_rebuild_device_tensor_from_numpy']:\n            return getattr(torch._utils, name) # pylint: disable=protected-access\n        if module == 'torch' and name in ['FloatStorage', 'HalfStorage', 'IntStorage', 'LongStorage', 'DoubleStorage', 'ByteStorage', 'float32', 'BFloat16Storage']:\n            return getattr(torch, name)\n        if module == 'torch.nn.modules.container' and name in ['ParameterDict']:\n            return getattr(torch.nn.modules.container, name)\n        if module == 'numpy.core.multiarray' and name in ['scalar', '_reconstruct']:\n            return getattr(np.core.multiarray, name)\n        if module == 'numpy' and name in ['dtype', 'ndarray']:\n            return getattr(np, name)\n        if module == '_codecs' and name == 'encode':\n            return encode\n        if module == \"pytorch_lightning.callbacks\" and name == 'model_checkpoint':\n            import pytorch_lightning.callbacks\n            return pytorch_lightning.callbacks.model_checkpoint\n        if module == \"pytorch_lightning.callbacks.model_checkpoint\" and name == 'ModelCheckpoint':\n            import pytorch_lightning.callbacks.model_checkpoint\n            return pytorch_lightning.callbacks.model_checkpoint.ModelCheckpoint\n        if module == \"__builtin__\" and name == 'set':\n            return set\n\n        # Forbid everything else.\n        raise Exception(f\"global '{module}/{name}' is forbidden\") # pylint: disable=broad-exception-raised\n\n\n# Regular expression that accepts 'dirname/version', 'dirname/data.pkl', and 'dirname/data/<number>'\nallowed_zip_names_re = re.compile(r\"^([^/]+)/((data/\\d+)|version|(data\\.pkl))$\")\ndata_pkl_re = re.compile(r\"^([^/]+)/data\\.pkl$\")\n\ndef check_zip_filenames(filename, names):\n    for name in names:\n        if allowed_zip_names_re.match(name):\n            continue\n\n        raise Exception(f\"bad file inside {filename}: {name}\") # pylint: disable=broad-exception-raised\n\n\ndef check_pt(filename, extra_handler):\n    try:\n\n        # new pytorch format is a zip file\n        with zipfile.ZipFile(filename) as z:\n            check_zip_filenames(filename, z.namelist())\n\n            # find filename of data.pkl in zip file: '<directory name>/data.pkl'\n            data_pkl_filenames = [f for f in z.namelist() if data_pkl_re.match(f)]\n            if len(data_pkl_filenames) == 0:\n                raise Exception(f\"data.pkl not found in {filename}\") # pylint: disable=broad-exception-raised\n            if len(data_pkl_filenames) > 1:\n                raise Exception(f\"Multiple data.pkl found in {filename}\") # pylint: disable=broad-exception-raised\n            with z.open(data_pkl_filenames[0]) as file:\n                unpickler = RestrictedUnpickler(file)\n                unpickler.extra_handler = extra_handler\n                unpickler.load()\n\n    except zipfile.BadZipfile:\n\n        # if it's not a zip file, it's an olf pytorch format, with five objects written to pickle\n        with open(filename, \"rb\") as file:\n            unpickler = RestrictedUnpickler(file)\n            unpickler.extra_handler = extra_handler\n            for _i in range(5):\n                unpickler.load()\n\n\ndef load(filename, *args, **kwargs):\n    return load_with_extra(filename, *args, extra_handler=global_extra_handler, **kwargs)\n\n\ndef load_with_extra(filename, extra_handler=None, *args, **kwargs): # pylint: disable=keyword-arg-before-vararg\n    \"\"\"\n    this function is intended to be used by extensions that want to load models with\n    some extra classes in them that the usual unpickler would find suspicious.\n\n    Use the extra_handler argument to specify a function that takes module and field name as text,\n    and returns that field's value:\n\n    ```python\n    def extra(module, name):\n        if module == 'collections' and name == 'OrderedDict':\n            return collections.OrderedDict\n\n        return None\n\n    safe.load_with_extra('model.pt', extra_handler=extra)\n    ```\n\n    The alternative to this is just to use safe.unsafe_torch_load('model.pt'), which as the name implies is\n    definitely unsafe.\n    \"\"\"\n\n    from modules import shared, errors\n\n    try:\n        if not shared.cmd_opts.disable_safe_unpickle:\n            check_pt(filename, extra_handler)\n    except Exception as e:\n        errors.display(e, f'verifying pickled file {filename}')\n        return None\n\n    return unsafe_torch_load(filename, *args, **kwargs)\n\n\nclass Extra:\n    \"\"\"\n    A class for temporarily setting the global handler for when you can't explicitly call load_with_extra\n    (because it's not your code making the torch.load call). The intended use is like this:\n\n```\nimport torch\nfrom modules import safe\n\ndef handler(module, name):\n    if module == 'torch' and name in ['float64', 'float16']:\n        return getattr(torch, name)\n\n    return None\n\nwith safe.Extra(handler):\n    x = torch.load('model.pt')\n```\n    \"\"\"\n\n    def __init__(self, handler):\n        self.handler = handler\n\n    def __enter__(self):\n        global global_extra_handler # pylint: disable=global-statement\n\n        assert global_extra_handler is None, 'already inside an Extra() block'\n        global_extra_handler = self.handler\n\n    def __exit__(self, exc_type, exc_val, exc_tb):\n        global global_extra_handler # pylint: disable=global-statement\n\n        global_extra_handler = None\n\n\nunsafe_torch_load = torch.load\ntorch.load = load\nglobal_extra_handler = None\n"
  },
  {
    "path": "modules/schedulers/perflow/__init__.py",
    "content": "### original: <https://github.com/magic-research/piecewise-rectified-flow>\n\nfrom .scheduler_perflow import PeRFlowScheduler\nfrom .utils_perflow import merge_delta_weights_into_unet\n"
  },
  {
    "path": "modules/schedulers/perflow/pfode_solver.py",
    "content": "import torch\nimport torch.utils.checkpoint\n\n\nclass PFODESolver():\n    def __init__(self, scheduler, t_initial=1, t_terminal=0,) -> None:\n        self.t_initial = t_initial\n        self.t_terminal = t_terminal\n        self.scheduler = scheduler\n\n        train_step_terminal = 0\n        train_step_initial = train_step_terminal + self.scheduler.config.num_train_timesteps # 0+1000\n        self.stepsize  = (t_terminal-t_initial) / (train_step_terminal - train_step_initial) #1/1000\n\n    def get_timesteps(self, t_start, t_end, num_steps):\n        # (b,) -> (b,1)\n        t_start = t_start[:, None]\n        t_end = t_end[:, None]\n        assert t_start.dim() == 2\n\n        timepoints = torch.arange(0, num_steps, 1).expand(t_start.shape[0], num_steps).to(device=t_start.device)\n        interval = (t_end - t_start) / (torch.ones([1], device=t_start.device) * num_steps)\n        timepoints = t_start + interval * timepoints\n\n        timesteps = (self.scheduler.num_train_timesteps - 1) + (timepoints - self.t_initial) / self.stepsize # correspondint to StableDiffusion indexing system, from 999 (t_init) -> 0 (dt)\n        return timesteps.round().long()\n        # return timesteps.floor().long()\n\n    def solve(self,\n              latents,\n              unet,\n              t_start,\n              t_end,\n              prompt_embeds,\n              negative_prompt_embeds,\n              guidance_scale=1.0,\n              num_steps = 2,\n              num_windows = 1,\n    ):\n        assert t_start.dim() == 1\n        assert guidance_scale >= 1 and torch.all(torch.gt(t_start, t_end))\n\n        do_classifier_free_guidance = True if guidance_scale > 1 else False\n        bsz = latents.shape[0]\n\n        if do_classifier_free_guidance:\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds])\n\n        timestep_cond = None\n        if unet.config.time_cond_proj_dim is not None:\n            guidance_scale_tensor = torch.tensor(guidance_scale - 1).repeat(bsz)\n            timestep_cond = self.get_guidance_scale_embedding( # pylint: disable=no-member\n                guidance_scale_tensor, embedding_dim=unet.config.time_cond_proj_dim\n            ).to(device=latents.device, dtype=latents.dtype)\n\n        timesteps = self.get_timesteps(t_start, t_end, num_steps).to(device=latents.device)\n        timestep_interval = self.scheduler.config.num_train_timesteps // (num_windows * num_steps)\n\n        # 7. Denoising loop\n        with torch.no_grad():\n            # for i in tqdm(range(num_steps)):\n            for i in range(num_steps):\n\n                t = torch.cat([timesteps[:, i]]*2) if do_classifier_free_guidance else timesteps[:, i]\n                # expand the latents if we are doing classifier free guidance\n                latent_model_input = torch.cat([latents] * 2) if do_classifier_free_guidance else latents\n                latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n                # predict the noise residual\n                noise_pred = unet(\n                    latent_model_input,\n                    t,\n                    encoder_hidden_states=prompt_embeds,\n                    timestep_cond=timestep_cond,\n                    return_dict=False,\n                )[0]\n\n                if do_classifier_free_guidance:\n                    noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                    noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                # STEP: compute the previous noisy sample x_t -> x_t-1\n                # latents = self.scheduler.step(noise_pred, timesteps[:, i].cpu(), latents, return_dict=False)[0]\n\n                batch_timesteps = timesteps[:, i].cpu()\n                prev_timestep = batch_timesteps - timestep_interval\n                # prev_timestep = batch_timesteps - self.scheduler.config.num_train_timesteps // self.scheduler.num_inference_steps\n\n                alpha_prod_t = self.scheduler.alphas_cumprod[batch_timesteps]\n                alpha_prod_t_prev = torch.zeros_like(alpha_prod_t)\n                for ib in range(prev_timestep.shape[0]):\n                    alpha_prod_t_prev[ib] = self.scheduler.alphas_cumprod[prev_timestep[ib]] if prev_timestep[ib] >= 0 else self.scheduler.final_alpha_cumprod\n                beta_prod_t = 1 - alpha_prod_t\n\n                alpha_prod_t = alpha_prod_t.to(device=latents.device, dtype=latents.dtype)\n                alpha_prod_t_prev = alpha_prod_t_prev.to(device=latents.device, dtype=latents.dtype)\n                beta_prod_t = beta_prod_t.to(device=latents.device, dtype=latents.dtype)\n\n                # 3. compute predicted original sample from predicted noise also called\n                # \"predicted x_0\" of formula (12) from https://arxiv.org/pdf/2010.02502.pdf\n                if self.scheduler.config.prediction_type == \"epsilon\":\n                    pred_original_sample = (latents - beta_prod_t[:,None,None,None] ** (0.5) * noise_pred) / alpha_prod_t[:, None,None,None] ** (0.5)\n                    pred_epsilon = noise_pred\n                # elif self.scheduler.config.prediction_type == \"sample\":\n                #     pred_original_sample = noise_pred\n                #     pred_epsilon = (latents - alpha_prod_t ** (0.5) * pred_original_sample) / beta_prod_t ** (0.5)\n                elif self.scheduler.config.prediction_type == \"v_prediction\":\n                    pred_original_sample = (alpha_prod_t[:,None,None,None]**0.5) * latents - (beta_prod_t[:,None,None,None]**0.5) * noise_pred\n                    pred_epsilon = (alpha_prod_t[:,None,None,None]**0.5) * noise_pred + (beta_prod_t[:,None,None,None]**0.5) * latents\n                else:\n                    raise ValueError(\n                        f\"prediction_type given as {self.scheduler.config.prediction_type} must be one of `epsilon`, `sample`, or\"\n                        \" `v_prediction`\"\n                    )\n                pred_sample_direction = (1 - alpha_prod_t_prev[:,None,None,None]) ** (0.5) * pred_epsilon\n                latents = alpha_prod_t_prev[:,None,None,None] ** (0.5) * pred_original_sample + pred_sample_direction\n\n        return latents\n\n\nclass PFODESolverSDXL():\n    def __init__(self, scheduler, t_initial=1, t_terminal=0,) -> None:\n        self.t_initial = t_initial\n        self.t_terminal = t_terminal\n        self.scheduler = scheduler\n\n        train_step_terminal = 0\n        train_step_initial = train_step_terminal + self.scheduler.config.num_train_timesteps # 0+1000\n\n        self.stepsize  = (t_terminal-t_initial) / (train_step_terminal - train_step_initial) #1/1000\n\n    def get_timesteps(self, t_start, t_end, num_steps):\n        # (b,) -> (b,1)\n        t_start = t_start[:, None]\n        t_end = t_end[:, None]\n        assert t_start.dim() == 2\n\n        timepoints = torch.arange(0, num_steps, 1).expand(t_start.shape[0], num_steps).to(device=t_start.device)\n        interval = (t_end - t_start) / (torch.ones([1], device=t_start.device) * num_steps)\n        timepoints = t_start + interval * timepoints\n\n        timesteps = (self.scheduler.num_train_timesteps - 1) + (timepoints - self.t_initial) / self.stepsize # correspondint to StableDiffusion indexing system, from 999 (t_init) -> 0 (dt)\n        return timesteps.round().long()\n        # return timesteps.floor().long()\n\n    def _get_add_time_ids(self, original_size, crops_coords_top_left, target_size, dtype):\n        # Adapted from pipeline.StableDiffusionXLPipeline._get_add_time_ids\n        add_time_ids = list(original_size + crops_coords_top_left + target_size)\n        add_time_ids = torch.tensor([add_time_ids], dtype=dtype)\n        return add_time_ids\n\n    def solve(self,\n            latents,\n            unet,\n            t_start,\n            t_end,\n            prompt_embeds,\n            pooled_prompt_embeds,\n            negative_prompt_embeds,\n            negative_pooled_prompt_embeds,\n            guidance_scale=1.0,\n            num_steps = 10,\n            num_windows = 4,\n            resolution = 1024,\n    ):\n        assert t_start.dim() == 1\n        assert guidance_scale >= 1 and torch.all(torch.gt(t_start, t_end))\n        dtype = latents.dtype\n        device = latents.device\n        bsz = latents.shape[0]\n        do_classifier_free_guidance = True if guidance_scale > 1 else False\n\n        add_text_embeds = pooled_prompt_embeds\n        add_time_ids = torch.cat(\n            # [self._get_add_time_ids((1024, 1024), (0, 0), (1024, 1024), dtype) for _ in range(bsz)]\n            [self._get_add_time_ids((resolution, resolution), (0, 0), (resolution, resolution), dtype) for _ in range(bsz)]\n        ).to(device)\n        negative_add_time_ids = add_time_ids\n\n        if do_classifier_free_guidance:\n            # prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds])\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds], dim=0)\n            add_text_embeds = torch.cat([negative_pooled_prompt_embeds, add_text_embeds], dim=0)\n            add_time_ids = torch.cat([negative_add_time_ids, add_time_ids], dim=0)\n\n        timestep_cond = None\n        if unet.config.time_cond_proj_dim is not None:\n            guidance_scale_tensor = torch.tensor(guidance_scale - 1).repeat(bsz)\n            timestep_cond = self.get_guidance_scale_embedding( # pylint: disable=no-member\n                guidance_scale_tensor, embedding_dim=unet.config.time_cond_proj_dim\n            ).to(device=latents.device, dtype=latents.dtype)\n\n        timesteps = self.get_timesteps(t_start, t_end, num_steps).to(device=latents.device)\n        timestep_interval = self.scheduler.config.num_train_timesteps // (num_windows * num_steps)\n\n        # 7. Denoising loop\n        with torch.no_grad():\n            # for i in tqdm(range(num_steps)):\n            for i in range(num_steps):\n                # expand the latents if we are doing classifier free guidance\n                t = torch.cat([timesteps[:, i]]*2) if do_classifier_free_guidance else timesteps[:, i]\n                latent_model_input = torch.cat([latents] * 2) if do_classifier_free_guidance else latents\n                latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n                # predict the noise residual\n                added_cond_kwargs = {\"text_embeds\": add_text_embeds, \"time_ids\": add_time_ids}\n                noise_pred = unet(\n                    latent_model_input,\n                    t,\n                    encoder_hidden_states=prompt_embeds,\n                    timestep_cond=timestep_cond,\n                    added_cond_kwargs=added_cond_kwargs,\n                    return_dict=False,\n                )[0]\n\n                if do_classifier_free_guidance:\n                    noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                    noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n\n                # STEP: compute the previous noisy sample x_t -> x_t-1\n                # latents = self.scheduler.step(noise_pred, timesteps[:, i].cpu(), latents, return_dict=False)[0]\n\n                batch_timesteps = timesteps[:, i].cpu()\n                prev_timestep = batch_timesteps - timestep_interval\n                # prev_timestep = batch_timesteps - self.scheduler.config.num_train_timesteps // self.scheduler.num_inference_steps\n\n                alpha_prod_t = self.scheduler.alphas_cumprod[batch_timesteps]\n                alpha_prod_t_prev = torch.zeros_like(alpha_prod_t)\n                for ib in range(prev_timestep.shape[0]):\n                    alpha_prod_t_prev[ib] = self.scheduler.alphas_cumprod[prev_timestep[ib]] if prev_timestep[ib] >= 0 else self.scheduler.final_alpha_cumprod\n                beta_prod_t = 1 - alpha_prod_t\n\n                alpha_prod_t = alpha_prod_t.to(device=latents.device, dtype=latents.dtype)\n                alpha_prod_t_prev = alpha_prod_t_prev.to(device=latents.device, dtype=latents.dtype)\n                beta_prod_t = beta_prod_t.to(device=latents.device, dtype=latents.dtype)\n\n                # 3. compute predicted original sample from predicted noise also called\n                # \"predicted x_0\" of formula (12) from https://arxiv.org/pdf/2010.02502.pdf\n                if self.scheduler.config.prediction_type == \"epsilon\":\n                    pred_original_sample = (latents - beta_prod_t[:,None,None,None] ** (0.5) * noise_pred) / alpha_prod_t[:, None,None,None] ** (0.5)\n                    pred_epsilon = noise_pred\n                # elif self.scheduler.config.prediction_type == \"sample\":\n                #     pred_original_sample = noise_pred\n                #     pred_epsilon = (latents - alpha_prod_t ** (0.5) * pred_original_sample) / beta_prod_t ** (0.5)\n                # elif self.scheduler.config.prediction_type == \"v_prediction\":\n                #     pred_original_sample = (alpha_prod_t**0.5) * latents - (beta_prod_t**0.5) * noise_pred\n                #     pred_epsilon = (alpha_prod_t**0.5) * noise_pred + (beta_prod_t**0.5) * latents\n                else:\n                    raise ValueError(\n                        f\"prediction_type given as {self.scheduler.config.prediction_type} must be one of `epsilon`, `sample`, or\"\n                        \" `v_prediction`\"\n                    )\n                pred_sample_direction = (1 - alpha_prod_t_prev[:,None,None,None]) ** (0.5) * pred_epsilon\n                latents = alpha_prod_t_prev[:,None,None,None] ** (0.5) * pred_original_sample + pred_sample_direction\n\n        return latents\n"
  },
  {
    "path": "modules/schedulers/perflow/scheduler_perflow.py",
    "content": "# Copyright 2023 Stanford University Team and The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\n# DISCLAIMER: This code is strongly influenced by https://github.com/pesser/pytorch_diffusion\n# and https://github.com/hojonathanho/diffusion\n\nimport math\nfrom dataclasses import dataclass\nfrom typing import List, Optional, Tuple, Union\nimport numpy as np\nimport torch\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.utils import BaseOutput\nfrom diffusers.schedulers.scheduling_utils import KarrasDiffusionSchedulers, SchedulerMixin\n\n\nclass Time_Windows():\n    def __init__(self, t_initial=1, t_terminal=0, num_windows=4, precision=1./1000) -> None:\n        assert t_terminal < t_initial\n        time_windows = [ 1.*i/num_windows for i in range(1, num_windows+1)][::-1]\n\n        self.window_starts = time_windows                      # [1.0, 0.75, 0.5, 0.25]\n        self.window_ends = time_windows[1:] + [t_terminal]     # [0.75, 0.5, 0.25, 0]\n        self.precision = precision\n\n    def get_window(self, tp):\n        idx = 0\n        # robust to numerical error; e.g, (0.6+1/10000) belongs to [0.6, 0.3)\n        while (tp-0.1*self.precision) <= self.window_ends[idx]:\n            idx += 1\n        return self.window_starts[idx], self.window_ends[idx]\n\n    def lookup_window(self, timepoint):\n        if timepoint.dim() == 0:\n            t_start, t_end = self.get_window(timepoint)\n            t_start = torch.ones_like(timepoint) * t_start\n            t_end = torch.ones_like(timepoint) * t_end\n        else:\n            t_start = torch.zeros_like(timepoint)\n            t_end = torch.zeros_like(timepoint)\n            bsz = timepoint.shape[0]\n            for i in range(bsz):\n                tp = timepoint[i]\n                ts, te = self.get_window(tp)\n                t_start[i] = ts\n                t_end[i] = te\n        return t_start, t_end\n\n\n@dataclass\nclass PeRFlowSchedulerOutput(BaseOutput):\n    \"\"\"\n    Output class for the scheduler's `step` function output.\n\n    Args:\n        prev_sample (`torch.FloatTensor` of shape `(batch_size, num_channels, height, width)` for images):\n            Computed sample `(x_{t-1})` of previous timestep. `prev_sample` should be used as next model input in the\n            denoising loop.\n        pred_original_sample (`torch.FloatTensor` of shape `(batch_size, num_channels, height, width)` for images):\n            The predicted denoised sample `(x_{0})` based on the model output from the current timestep.\n            `pred_original_sample` can be used to preview progress or for guidance.\n    \"\"\"\n\n    prev_sample: torch.FloatTensor\n    pred_original_sample: Optional[torch.FloatTensor] = None\n\n\n# Copied from diffusers.schedulers.scheduling_ddpm.betas_for_alpha_bar\ndef betas_for_alpha_bar(\n    num_diffusion_timesteps,\n    max_beta=0.999,\n    alpha_transform_type=\"cosine\",\n):\n    \"\"\"\n    Create a beta schedule that discretizes the given alpha_t_bar function, which defines the cumulative product of\n    (1-beta) over time from t = [0,1].\n\n    Contains a function alpha_bar that takes an argument t and transforms it to the cumulative product of (1-beta) up\n    to that part of the diffusion process.\n\n\n    Args:\n        num_diffusion_timesteps (`int`): the number of betas to produce.\n        max_beta (`float`): the maximum beta to use; use values lower than 1 to\n                     prevent singularities.\n        alpha_transform_type (`str`, *optional*, default to `cosine`): the type of noise schedule for alpha_bar.\n                     Choose from `cosine` or `exp`\n\n    Returns:\n        betas (`np.ndarray`): the betas used by the scheduler to step the model outputs\n    \"\"\"\n    if alpha_transform_type == \"cosine\":\n\n        def alpha_bar_fn(t):\n            return math.cos((t + 0.008) / 1.008 * math.pi / 2) ** 2\n\n    elif alpha_transform_type == \"exp\":\n\n        def alpha_bar_fn(t):\n            return math.exp(t * -12.0)\n\n    else:\n        raise ValueError(f\"Unsupported alpha_tranform_type: {alpha_transform_type}\")\n\n    betas = []\n    for i in range(num_diffusion_timesteps):\n        t1 = i / num_diffusion_timesteps\n        t2 = (i + 1) / num_diffusion_timesteps\n        betas.append(min(1 - alpha_bar_fn(t2) / alpha_bar_fn(t1), max_beta))\n    return torch.tensor(betas, dtype=torch.float32)\n\n\n\nclass PeRFlowScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    `ReFlowScheduler` extends the denoising procedure introduced in denoising diffusion probabilistic models (DDPMs) with\n    non-Markovian guidance.\n\n    This model inherits from [`SchedulerMixin`] and [`ConfigMixin`]. Check the superclass documentation for the generic\n    methods the library implements for all schedulers such as loading and saving.\n\n    Args:\n        num_train_timesteps (`int`, defaults to 1000):\n            The number of diffusion steps to train the model.\n        beta_start (`float`, defaults to 0.0001):\n            The starting `beta` value of inference.\n        beta_end (`float`, defaults to 0.02):\n            The final `beta` value.\n        beta_schedule (`str`, defaults to `\"linear\"`):\n            The beta schedule, a mapping from a beta range to a sequence of betas for stepping the model. Choose from\n            `linear`, `scaled_linear`, or `squaredcos_cap_v2`.\n        trained_betas (`np.ndarray`, *optional*):\n            Pass an array of betas directly to the constructor to bypass `beta_start` and `beta_end`.\n        set_alpha_to_one (`bool`, defaults to `True`):\n            Each diffusion step uses the alphas product value at that step and at the previous one. For the final step\n            there is no previous alpha. When this option is `True` the previous alpha product is fixed to `1`,\n            otherwise it uses the alpha value at step 0.\n        prediction_type (`str`, defaults to `epsilon`, *optional*)\n    \"\"\"\n\n    _compatibles = [e.name for e in KarrasDiffusionSchedulers]\n    order = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.00085,\n        beta_end: float = 0.012,\n        beta_schedule: str = \"scaled_linear\",\n        trained_betas: Optional[Union[np.ndarray, List[float]]] = None,\n        set_alpha_to_one: bool = False,\n        prediction_type: str = \"ddim_eps\",\n        t_noise: float = 1,\n        t_clean: float = 0,\n        num_time_windows = 4,\n    ):\n        if trained_betas is not None:\n            self.betas = torch.tensor(trained_betas, dtype=torch.float32)\n        elif beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            # this schedule is very specific to the latent diffusion model.\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        elif beta_schedule == \"squaredcos_cap_v2\":\n            # Glide cosine schedule\n            self.betas = betas_for_alpha_bar(num_train_timesteps)\n        else:\n            raise NotImplementedError(f\"{beta_schedule} does is not implemented for {self.__class__}\")\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n\n        # At every step in ddim, we are looking into the previous alphas_cumprod\n        # For the final step, there is no previous alphas_cumprod because we are already at 0\n        # `set_alpha_to_one` decides whether we set this parameter simply to one or\n        # whether we use the final alpha of the \"non-previous\" one.\n        self.final_alpha_cumprod = torch.tensor(1.0) if set_alpha_to_one else self.alphas_cumprod[0]\n\n        # # standard deviation of the initial noise distribution\n        self.init_noise_sigma = 1.0\n\n        self.time_windows = Time_Windows(t_initial=t_noise, t_terminal=t_clean,\n                                         num_windows=num_time_windows,\n                                         precision=1./num_train_timesteps)\n\n        assert prediction_type in [\"ddim_eps\", \"diff_eps\", \"velocity\"]\n\n\n    def scale_model_input(self, sample: torch.FloatTensor, timestep: Optional[int] = None) -> torch.FloatTensor: # pylint: disable=unused-argument\n        \"\"\"\n        Ensures interchangeability with schedulers that need to scale the denoising model input depending on the\n        current timestep.\n\n        Args:\n            sample (`torch.FloatTensor`):\n                The input sample.\n            timestep (`int`, *optional*):\n                The current timestep in the diffusion chain.\n\n        Returns:\n            `torch.FloatTensor`:\n                A scaled input sample.\n        \"\"\"\n        return sample\n\n\n    def set_timesteps(self, num_inference_steps: int, device: Union[str, torch.device] = None):\n        \"\"\"\n        Sets the discrete timesteps used for the diffusion chain (to be run before inference).\n\n        Args:\n            num_inference_steps (`int`):\n                The number of diffusion steps used when generating samples with a pre-trained model.\n        \"\"\"\n        if num_inference_steps < self.config.num_time_windows: # pylint: disable=no-member\n            num_inference_steps = self.config.num_time_windows # pylint: disable=no-member\n            print(f\"### We recommend a num_inference_steps not less than num_time_windows. It's set as {self.config.num_time_windows}.\") # pylint: disable=no-member\n\n        timesteps = []\n        for i in range(self.config.num_time_windows): # pylint: disable=no-member\n            if i < num_inference_steps%self.config.num_time_windows: # pylint: disable=no-member\n                num_steps_cur_win = num_inference_steps//self.config.num_time_windows+1 # pylint: disable=no-member\n            else:\n                num_steps_cur_win = num_inference_steps//self.config.num_time_windows # pylint: disable=no-member\n\n            t_s = self.time_windows.window_starts[i]\n            t_e = self.time_windows.window_ends[i]\n            timesteps_cur_win = np.linspace(t_s, t_e, num=num_steps_cur_win, endpoint=False)\n            timesteps.append(timesteps_cur_win)\n\n        timesteps = np.concatenate(timesteps)\n\n        self.timesteps = torch.from_numpy( # pylint: disable=attribute-defined-outside-init\n            (timesteps*self.config.num_train_timesteps).astype(np.int64) # pylint: disable=no-member,\n        ).to(device)\n\n    def get_window_alpha(self, timepoints):\n        time_windows = self.time_windows\n        num_train_timesteps = self.config.num_train_timesteps # pylint: disable=no-member\n\n        t_win_start, t_win_end = time_windows.lookup_window(timepoints)\n        t_win_len = t_win_end - t_win_start\n        t_interval = timepoints - t_win_start # NOTE: negative value\n\n        idx_start = (t_win_start*num_train_timesteps - 1 ).long()\n        alphas_cumprod_start = self.alphas_cumprod[idx_start]\n\n        idx_end = torch.clamp( (t_win_end*num_train_timesteps - 1 ).long(), min=0)\n        alphas_cumprod_end = self.alphas_cumprod[idx_end]\n\n        alpha_cumprod_s_e = alphas_cumprod_start / alphas_cumprod_end\n        gamma_s_e = alpha_cumprod_s_e ** 0.5\n\n        return t_win_start, t_win_end, t_win_len, t_interval, gamma_s_e, alphas_cumprod_start, alphas_cumprod_end\n\n    def step(\n        self,\n        model_output: torch.FloatTensor,\n        timestep: int,\n        sample: torch.FloatTensor,\n        return_dict: bool = True,\n    ) -> Union[PeRFlowSchedulerOutput, Tuple]:\n        \"\"\"\n        Predict the sample from the previous timestep by reversing the SDE. This function propagates the diffusion\n        process from the learned model outputs (most often the predicted noise).\n\n        Args:\n            model_output (`torch.FloatTensor`):\n                The direct output from learned diffusion model.\n            timestep (`float`):\n                The current discrete timestep in the diffusion chain.\n            sample (`torch.FloatTensor`):\n                A current instance of a sample created by the diffusion process.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~schedulers.scheduling_ddim.PeRFlowSchedulerOutput`] or `tuple`.\n\n        Returns:\n            [`~schedulers.scheduling_utils.PeRFlowSchedulerOutput`] or `tuple`:\n                If return_dict is `True`, [`~schedulers.scheduling_ddim.PeRFlowSchedulerOutput`] is returned, otherwise a\n                tuple is returned where the first element is the sample tensor.\n        \"\"\"\n\n        if self.config.prediction_type == \"ddim_eps\": # pylint: disable=no-member\n            pred_epsilon = model_output\n            t_c = timestep / self.config.num_train_timesteps # pylint: disable=no-member\n            t_s, t_e, _, c_to_s, _, alphas_cumprod_start, alphas_cumprod_end = self.get_window_alpha(t_c)\n\n            lambda_s = (alphas_cumprod_end / alphas_cumprod_start)**0.5\n            eta_s = (1-alphas_cumprod_end)**0.5 - ( alphas_cumprod_end / alphas_cumprod_start * (1-alphas_cumprod_start) )**0.5\n\n            lambda_t =  ( lambda_s * (t_e - t_s) ) / ( lambda_s *(t_c - t_s) + (t_e - t_c) )\n            eta_t = ( eta_s * (t_e - t_c) ) / ( lambda_s *(t_c - t_s) + (t_e - t_c) )\n\n            pred_win_end = lambda_t * sample + eta_t * pred_epsilon\n            pred_velocity = (pred_win_end - sample) / (t_e - (t_s + c_to_s))\n\n        elif self.config.prediction_type == \"diff_eps\": # pylint: disable=no-member\n            pred_epsilon = model_output\n            t_c = timestep / self.config.num_train_timesteps # pylint: disable=no-member\n            t_s, t_e, _, c_to_s, gamma_s_e, _, _ = self.get_window_alpha(t_c)\n\n            lambda_s = 1 / gamma_s_e\n            eta_s = -1 * ( 1- gamma_s_e**2)**0.5 / gamma_s_e\n\n            lambda_t =  ( lambda_s * (t_e - t_s) ) / ( lambda_s *(t_c - t_s) + (t_e - t_c) )\n            eta_t = ( eta_s * (t_e - t_c) ) / ( lambda_s *(t_c - t_s) + (t_e - t_c) )\n\n            pred_win_end = lambda_t * sample + eta_t * pred_epsilon\n            pred_velocity = (pred_win_end - sample) / (t_e - (t_s + c_to_s))\n\n        elif self.config.prediction_type == \"velocity\": # pylint: disable=no-member\n            pred_velocity = model_output\n        else:\n            raise ValueError(\n                f\"prediction_type given as {self.config.prediction_type} must be one of `epsilon` or `velocity`.\" # pylint: disable=no-member\n            )\n\n        # get dt\n        idx = torch.argwhere(torch.where(self.timesteps==timestep, 1,0))\n        prev_step = self.timesteps[idx+1] if (idx+1)<len(self.timesteps) else 0\n        dt = (prev_step - timestep) / self.config.num_train_timesteps # pylint: disable=no-member\n        dt = dt.to(sample.device, sample.dtype)\n\n        prev_sample = sample + dt * pred_velocity\n\n        if not return_dict:\n            return (prev_sample,)\n        return PeRFlowSchedulerOutput(prev_sample=prev_sample, pred_original_sample=None)\n\n\n    # Copied from diffusers.schedulers.scheduling_ddpm.DDPMScheduler.add_noise\n    def add_noise(\n        self,\n        original_samples: torch.FloatTensor,\n        noise: torch.FloatTensor,\n        timesteps: torch.IntTensor,\n    ) -> torch.FloatTensor:\n        # Make sure alphas_cumprod and timestep have same device and dtype as original_samples\n        alphas_cumprod = self.alphas_cumprod.to(device=original_samples.device, dtype=original_samples.dtype)\n        timesteps = timesteps.to(original_samples.device) - 1   # indexing from 0\n\n        sqrt_alpha_prod = alphas_cumprod[timesteps] ** 0.5\n        sqrt_alpha_prod = sqrt_alpha_prod.flatten()\n        while len(sqrt_alpha_prod.shape) < len(original_samples.shape):\n            sqrt_alpha_prod = sqrt_alpha_prod.unsqueeze(-1)\n\n        sqrt_one_minus_alpha_prod = (1 - alphas_cumprod[timesteps]) ** 0.5\n        sqrt_one_minus_alpha_prod = sqrt_one_minus_alpha_prod.flatten()\n        while len(sqrt_one_minus_alpha_prod.shape) < len(original_samples.shape):\n            sqrt_one_minus_alpha_prod = sqrt_one_minus_alpha_prod.unsqueeze(-1)\n\n        noisy_samples = sqrt_alpha_prod * original_samples + sqrt_one_minus_alpha_prod * noise\n        return noisy_samples\n\n    def __len__(self):\n        return self.config.num_train_timesteps # pylint: disable=no-member\n"
  },
  {
    "path": "modules/schedulers/perflow/utils_perflow.py",
    "content": "import os\nfrom collections import OrderedDict\nimport torch\nfrom safetensors import safe_open\nfrom safetensors.torch import save_file\nfrom diffusers.pipelines.stable_diffusion import StableDiffusionPipeline\nfrom diffusers.pipelines.stable_diffusion.convert_from_ckpt import convert_ldm_unet_checkpoint, convert_ldm_vae_checkpoint, convert_ldm_clip_checkpoint\n\n\ndef merge_delta_weights_into_unet(pipe, delta_weights):\n    unet_weights = pipe.unet.state_dict()\n    assert unet_weights.keys() == delta_weights.keys()\n    for key in delta_weights.keys():\n        dtype = unet_weights[key].dtype\n        unet_weights[key] = unet_weights[key].to(dtype=delta_weights[key].dtype) + delta_weights[key].to(device=unet_weights[key].device)\n        unet_weights[key] = unet_weights[key].to(dtype)\n    pipe.unet.load_state_dict(unet_weights, strict=True)\n    return pipe\n\n\ndef load_delta_weights_into_unet(\n    pipe,\n    model_path = \"hsyan/piecewise-rectified-flow-v0-1\",\n    base_path = \"runwayml/stable-diffusion-v1-5\",\n):\n    ## load delta_weights\n    if os.path.exists(os.path.join(model_path, \"delta_weights.safetensors\")):\n        print(\"### delta_weights exists, loading...\")\n        delta_weights = OrderedDict()\n        with safe_open(os.path.join(model_path, \"delta_weights.safetensors\"), framework=\"pt\", device=\"cpu\") as f:\n            for key in f.keys():\n                delta_weights[key] = f.get_tensor(key)\n\n    elif os.path.exists(os.path.join(model_path, \"diffusion_pytorch_model.safetensors\")):\n        print(\"### merged_weights exists, loading...\")\n        merged_weights = OrderedDict()\n        with safe_open(os.path.join(model_path, \"diffusion_pytorch_model.safetensors\"), framework=\"pt\", device=\"cpu\") as f:\n            for key in f.keys():\n                merged_weights[key] = f.get_tensor(key)\n\n        base_weights = StableDiffusionPipeline.from_pretrained(\n            base_path, torch_dtype=torch.float16, safety_checker=None).unet.state_dict()\n        assert base_weights.keys() == merged_weights.keys()\n\n        delta_weights = OrderedDict()\n        for key in merged_weights.keys():\n            delta_weights[key] = merged_weights[key] - base_weights[key].to(device=merged_weights[key].device, dtype=merged_weights[key].dtype)\n\n        print(\"### saving delta_weights...\")\n        save_file(delta_weights, os.path.join(model_path, \"delta_weights.safetensors\"))\n\n    else:\n        raise ValueError(f\"{model_path} does not contain delta weights or merged weights\")\n\n    ## merge delta_weights to the target pipeline\n    pipe = merge_delta_weights_into_unet(pipe, delta_weights)\n    return pipe\n\n\ndef load_dreambooth_into_pipeline(pipe, sd_dreambooth):\n    assert sd_dreambooth.endswith(\".safetensors\")\n    state_dict = {}\n    with safe_open(sd_dreambooth, framework=\"pt\", device=\"cpu\") as f:\n        for key in f.keys():\n            state_dict[key] = f.get_tensor(key)\n\n    unet_config = {} # unet, line 449 in convert_ldm_unet_checkpoint\n    for key in pipe.unet.config.keys():\n        if key != 'num_class_embeds':\n            unet_config[key] = pipe.unet.config[key]\n\n    pipe.unet.load_state_dict(convert_ldm_unet_checkpoint(state_dict, unet_config), strict=False)\n    pipe.vae.load_state_dict(convert_ldm_vae_checkpoint(state_dict, pipe.vae.config))\n    pipe.text_encoder = convert_ldm_clip_checkpoint(state_dict, text_encoder=pipe.text_encoder)\n    return pipe\n"
  },
  {
    "path": "modules/schedulers/scheduler_bdia.py",
    "content": "# Copyright 2024 Stanford University Team and The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\n# DISCLAIMER: This code is strongly influenced by https://github.com/pesser/pytorch_diffusion\n# and https://github.com/hojonathanho/diffusion\n\nimport math\nfrom dataclasses import dataclass\nfrom typing import List, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\n\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.utils import BaseOutput\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom diffusers.schedulers.scheduling_utils import KarrasDiffusionSchedulers, SchedulerMixin\n\n\n@dataclass\n# Copied from diffusers.schedulers.scheduling_ddpm.DDPMSchedulerOutput with DDPM->DDIM\nclass DDIMSchedulerOutput(BaseOutput):\n    \"\"\"\n    Output class for the scheduler's `step` function output.\n\n    Args:\n        prev_sample (`torch.Tensor` of shape `(batch_size, num_channels, height, width)` for images):\n            Computed sample `(x_{t-1})` of previous timestep. `prev_sample` should be used as next model input in the\n            denoising loop.\n        pred_original_sample (`torch.Tensor` of shape `(batch_size, num_channels, height, width)` for images):\n            The predicted denoised sample `(x_{0})` based on the model output from the current timestep.\n            `pred_original_sample` can be used to preview progress or for guidance.\n    \"\"\"\n\n    prev_sample: torch.Tensor\n    pred_original_sample: Optional[torch.Tensor] = None\n\n\n# Copied from diffusers.schedulers.scheduling_ddpm.betas_for_alpha_bar\ndef betas_for_alpha_bar(\n    num_diffusion_timesteps,\n    max_beta=0.999,\n    alpha_transform_type=\"cosine\",\n):\n    \"\"\"\n    Create a beta schedule that discretizes the given alpha_t_bar function, which defines the cumulative product of\n    (1-beta) over time from t = [0,1].\n\n    Contains a function alpha_bar that takes an argument t and transforms it to the cumulative product of (1-beta) up\n    to that part of the diffusion process.\n\n\n    Args:\n        num_diffusion_timesteps (`int`): the number of betas to produce.\n        max_beta (`float`): the maximum beta to use; use values lower than 1 to\n                     prevent singularities.\n        alpha_transform_type (`str`, *optional*, default to `cosine`): the type of noise schedule for alpha_bar.\n                     Choose from `cosine` or `exp`\n\n    Returns:\n        betas (`np.ndarray`): the betas used by the scheduler to step the model outputs\n    \"\"\"\n    if alpha_transform_type == \"cosine\":\n\n        def alpha_bar_fn(t):\n            return math.cos((t + 0.008) / 1.008 * math.pi / 2) ** 2\n\n    elif alpha_transform_type == \"exp\":\n\n        def alpha_bar_fn(t):\n            return math.exp(t * -12.0)\n\n    else:\n        raise ValueError(f\"Unsupported alpha_transform_type: {alpha_transform_type}\")\n\n    betas = []\n    for i in range(num_diffusion_timesteps):\n        t1 = i / num_diffusion_timesteps\n        t2 = (i + 1) / num_diffusion_timesteps\n        betas.append(min(1 - alpha_bar_fn(t2) / alpha_bar_fn(t1), max_beta))\n    return torch.tensor(betas, dtype=torch.float32)\n\n\ndef rescale_zero_terminal_snr(betas):\n    \"\"\"\n    Rescales betas to have zero terminal SNR Based on https://arxiv.org/pdf/2305.08891.pdf (Algorithm 1)\n\n\n    Args:\n        betas (`torch.Tensor`):\n            the betas that the scheduler is being initialized with.\n\n    Returns:\n        `torch.Tensor`: rescaled betas with zero terminal SNR\n    \"\"\"\n    # Convert betas to alphas_bar_sqrt\n    alphas = 1.0 - betas\n    alphas_cumprod = torch.cumprod(alphas, dim=0)\n    alphas_bar_sqrt = alphas_cumprod.sqrt()\n\n    # Store old values.\n    alphas_bar_sqrt_0 = alphas_bar_sqrt[0].clone()\n    alphas_bar_sqrt_T = alphas_bar_sqrt[-1].clone()\n\n    # Shift so the last timestep is zero.\n    alphas_bar_sqrt -= alphas_bar_sqrt_T\n\n    # Scale so the first timestep is back to the old value.\n    alphas_bar_sqrt *= alphas_bar_sqrt_0 / (alphas_bar_sqrt_0 - alphas_bar_sqrt_T)\n\n    # Convert alphas_bar_sqrt to betas\n    alphas_bar = alphas_bar_sqrt**2  # Revert sqrt\n    alphas = alphas_bar[1:] / alphas_bar[:-1]  # Revert cumprod\n    alphas = torch.cat([alphas_bar[0:1], alphas])\n    betas = 1 - alphas\n\n    return betas\n\nclass BDIA_DDIMScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    `DDIMScheduler` extends the denoising procedure introduced in denoising diffusion probabilistic models (DDPMs) with\n    non-Markovian guidance.\n\n    This model inherits from [`SchedulerMixin`] and [`ConfigMixin`]. Check the superclass documentation for the generic\n    methods the library implements for all schedulers such as loading and saving.\n\n    Args:\n        num_train_timesteps (`int`, defaults to 1000):\n            The number of diffusion steps to train the model.\n        beta_start (`float`, defaults to 0.0001):\n            The starting `beta` value of inference.\n        beta_end (`float`, defaults to 0.02):\n            The final `beta` value.\n        beta_schedule (`str`, defaults to `\"linear\"`):\n            The beta schedule, a mapping from a beta range to a sequence of betas for stepping the model. Choose from\n            `linear`, `scaled_linear`, or `squaredcos_cap_v2`.\n        trained_betas (`np.ndarray`, *optional*):\n            Pass an array of betas directly to the constructor to bypass `beta_start` and `beta_end`.\n        clip_sample (`bool`, defaults to `True`):\n            Clip the predicted sample for numerical stability.\n        clip_sample_range (`float`, defaults to 1.0):\n            The maximum magnitude for sample clipping. Valid only when `clip_sample=True`.\n        set_alpha_to_one (`bool`, defaults to `True`):\n            Each diffusion step uses the alphas product value at that step and at the previous one. For the final step\n            there is no previous alpha. When this option is `True` the previous alpha product is fixed to `1`,\n            otherwise it uses the alpha value at step 0.\n        steps_offset (`int`, defaults to 0):\n            An offset added to the inference steps, as required by some model families.\n        prediction_type (`str`, defaults to `epsilon`, *optional*):\n            Prediction type of the scheduler function; can be `epsilon` (predicts the noise of the diffusion process),\n            `sample` (directly predicts the noisy sample`) or `v_prediction` (see section 2.4 of [Imagen\n            Video](https://imagen.research.google/video/paper.pdf) paper).\n        thresholding (`bool`, defaults to `False`):\n            Whether to use the \"dynamic thresholding\" method. This is unsuitable for latent-space diffusion models such\n            as Stable Diffusion.\n        dynamic_thresholding_ratio (`float`, defaults to 0.995):\n            The ratio for the dynamic thresholding method. Valid only when `thresholding=True`.\n        sample_max_value (`float`, defaults to 1.0):\n            The threshold value for dynamic thresholding. Valid only when `thresholding=True`.\n        timestep_spacing (`str`, defaults to `\"leading\"`):\n            The way the timesteps should be scaled. Refer to Table 2 of the [Common Diffusion Noise Schedules and\n            Sample Steps are Flawed](https://huggingface.co/papers/2305.08891) for more information.\n        rescale_betas_zero_snr (`bool`, defaults to `False`):\n            Whether to rescale the betas to have zero terminal SNR. This enables the model to generate very bright and\n            dark samples instead of limiting it to samples with medium brightness. Loosely related to\n            [`--offset_noise`](https://github.com/huggingface/diffusers/blob/74fd735eb073eb1d774b1ab4154a0876eb82f055/examples/dreambooth/train_dreambooth.py#L506).\n    \"\"\"\n\n    _compatibles = [e.name for e in KarrasDiffusionSchedulers]\n    order = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.0001,\n        beta_end: float = 0.02,\n        beta_schedule: str = \"linear\",\n        trained_betas: Optional[Union[np.ndarray, List[float]]] = None,\n        clip_sample: bool = True,\n        set_alpha_to_one: bool = True, #was True\n        steps_offset: int = 0,\n        prediction_type: str = \"epsilon\",\n        thresholding: bool = False,\n        dynamic_thresholding_ratio: float = 0.995,\n        clip_sample_range: float = 1.0,\n        sample_max_value: float = 1.0,\n        timestep_spacing: str = \"leading\", #leading\n        rescale_betas_zero_snr: bool = False,\n        gamma: float = 1.0,\n\n    ):\n        if trained_betas is not None:\n            self.betas = torch.tensor(trained_betas, dtype=torch.float32)\n        elif beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            # this schedule is very specific to the latent diffusion model.\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        elif beta_schedule == \"squaredcos_cap_v2\":\n            # Glide cosine schedule\n            self.betas = betas_for_alpha_bar(num_train_timesteps)\n        else:\n            raise NotImplementedError(f\"{beta_schedule} is not implemented for {self.__class__}\")\n\n        # Rescale for zero SNR\n        if rescale_betas_zero_snr:\n            self.betas = rescale_zero_terminal_snr(self.betas)\n\n        self.alphas = 1.0 - self.betas #may have to add something for last step\n\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n        # At every step in ddim, we are looking into the previous alphas_cumprod\n        # For the final step, there is no previous alphas_cumprod because we are already at 0\n        # `set_alpha_to_one` decides whether we set this parameter simply to one or\n        # whether we use the final alpha of the \"non-previous\" one.\n        self.final_alpha_cumprod = torch.tensor(1.0) if set_alpha_to_one else self.alphas_cumprod[0]\n\n        # standard deviation of the initial noise distribution\n        self.init_noise_sigma = 1.0\n\n        # setable values\n        self.num_inference_steps = None\n        self.timesteps = torch.from_numpy(np.arange(0, num_train_timesteps)[::-1].copy().astype(np.int64))\n        self.next_sample = []\n        self.BDIA = False\n\n\n    def scale_model_input(self, sample: torch.Tensor, timestep: Optional[int] = None) -> torch.Tensor:\n        \"\"\"\n        Ensures interchangeability with schedulers that need to scale the denoising model input depending on the\n        current timestep.\n\n        Args:\n            sample (`torch.Tensor`):\n                The input sample.\n            timestep (`int`, *optional*):\n                The current timestep in the diffusion chain.\n\n        Returns:\n            `torch.Tensor`:\n                A scaled input sample.\n        \"\"\"\n        return sample\n\n    def _get_variance(self, timestep, prev_timestep):\n        alpha_prod_t = self.alphas_cumprod[timestep]\n        alpha_prod_t_prev = self.alphas_cumprod[prev_timestep] if prev_timestep >= 0 else self.final_alpha_cumprod\n        beta_prod_t = 1 - alpha_prod_t\n        beta_prod_t_prev = 1 - alpha_prod_t_prev\n\n        variance = (beta_prod_t_prev / beta_prod_t) * (1 - alpha_prod_t / alpha_prod_t_prev)\n\n        return variance\n\n    # Copied from diffusers.schedulers.scheduling_ddpm.DDPMScheduler._threshold_sample\n    def _threshold_sample(self, sample: torch.Tensor) -> torch.Tensor:\n        \"\"\"\n        \"Dynamic thresholding: At each sampling step we set s to a certain percentile absolute pixel value in xt0 (the\n        prediction of x_0 at timestep t), and if s > 1, then we threshold xt0 to the range [-s, s] and then divide by\n        s. Dynamic thresholding pushes saturated pixels (those near -1 and 1) inwards, thereby actively preventing\n        pixels from saturation at each step. We find that dynamic thresholding results in significantly better\n        photorealism as well as better image-text alignment, especially when using very large guidance weights.\"\n\n        https://arxiv.org/abs/2205.11487\n        \"\"\"\n        dtype = sample.dtype\n        batch_size, channels, *remaining_dims = sample.shape\n\n        if dtype not in (torch.float32, torch.float64):\n            sample = sample.float()  # upcast for quantile calculation, and clamp not implemented for cpu half\n\n        # Flatten sample for doing quantile calculation along each image\n        sample = sample.reshape(batch_size, channels * np.prod(remaining_dims))\n\n        abs_sample = sample.abs()  # \"a certain percentile absolute pixel value\"\n\n        s = torch.quantile(abs_sample, self.config.dynamic_thresholding_ratio, dim=1)\n        s = torch.clamp(\n            s, min=1, max=self.config.sample_max_value\n        )  # When clamped to min=1, equivalent to standard clipping to [-1, 1]\n        s = s.unsqueeze(1)  # (batch_size, 1) because clamp will broadcast along dim=0\n        sample = torch.clamp(sample, -s, s) / s  # \"we threshold xt0 to the range [-s, s] and then divide by s\"\n\n        sample = sample.reshape(batch_size, channels, *remaining_dims)\n        sample = sample.to(dtype)\n\n        return sample\n\n    def set_timesteps(self, num_inference_steps: int, device: Union[str, torch.device] = None):\n        \"\"\"\n        Sets the discrete timesteps used for the diffusion chain (to be run before inference).\n\n        Args:\n            num_inference_steps (`int`):\n                The number of diffusion steps used when generating samples with a pre-trained model.\n        \"\"\"\n\n        if num_inference_steps > self.config.num_train_timesteps:\n            raise ValueError(\n                f\"`num_inference_steps`: {num_inference_steps} cannot be larger than `self.config.train_timesteps`:\"\n                f\" {self.config.num_train_timesteps} as the unet model trained with this scheduler can only handle\"\n                f\" maximal {self.config.num_train_timesteps} timesteps.\"\n            )\n\n        self.num_inference_steps = num_inference_steps\n\n        # \"linspace\", \"leading\", \"trailing\" corresponds to annotation of Table 2. of https://arxiv.org/abs/2305.08891\n        if self.config.timestep_spacing == \"linspace\":\n            timesteps = (\n                np.linspace(0, self.config.num_train_timesteps - 1, num_inference_steps)\n                .round()[::-1]\n                .copy()\n                .astype(np.int64)\n            )\n        elif self.config.timestep_spacing == \"leading\":\n            step_ratio = self.config.num_train_timesteps // self.num_inference_steps\n            # creates integer timesteps by multiplying by ratio\n            # casting to int to avoid issues when num_inference_step is power of 3\n            timesteps = (np.arange(0, num_inference_steps) * step_ratio).round()[::-1].copy().astype(np.int64)\n            timesteps += self.config.steps_offset\n        elif self.config.timestep_spacing == \"trailing\":\n            step_ratio = self.config.num_train_timesteps / self.num_inference_steps\n            # creates integer timesteps by multiplying by ratio\n            # casting to int to avoid issues when num_inference_step is power of 3\n            timesteps = np.round(np.arange(self.config.num_train_timesteps, 0, -step_ratio)).astype(np.int64)\n            timesteps -= 1\n        else:\n            raise ValueError(\n                f\"{self.config.timestep_spacing} is not supported. Please make sure to choose one of 'leading' or 'trailing'.\"\n            )\n\n        self.timesteps = torch.from_numpy(timesteps).to(device)\n\n    def step(\n        self,\n        model_output: torch.Tensor,\n        timestep: int,\n        sample: torch.Tensor,\n        eta: float = 0.0,\n        use_clipped_model_output: bool = False,\n        generator=None,\n        variance_noise: Optional[torch.Tensor] = None,\n        return_dict: bool = True,\n        debug: bool = False,\n    ) -> Union[DDIMSchedulerOutput, Tuple]:\n        \"\"\"\n        Predict the sample from the previous timestep by reversing the SDE.\n\n        Args:\n            model_output (torch.Tensor): Direct output from learned diffusion model\n            timestep (int): Current discrete timestep in the diffusion chain\n            sample (torch.Tensor): Current instance of sample created by diffusion process\n            eta (float): Weight of noise for added noise in diffusion step\n            use_clipped_model_output (bool): Whether to use clipped model output\n            generator (torch.Generator, optional): Random number generator\n            variance_noise (torch.Tensor, optional): Pre-generated noise for variance\n            return_dict (bool): Whether to return as DDIMSchedulerOutput or tuple\n            debug (bool): Whether to print debug information\n        \"\"\"\n        if self.num_inference_steps is None:\n            raise ValueError(\"Number of inference steps is 'None', run 'set_timesteps' first\")\n\n        # Calculate timesteps\n        step_size = self.config.num_train_timesteps // self.num_inference_steps\n        prev_timestep = timestep - step_size\n        next_timestep = timestep + step_size\n\n        if debug:\n            print(\"\\n=== Timestep Information ===\")\n            print(f\"Current timestep: {timestep}\")\n            print(f\"Previous timestep: {prev_timestep}\")\n            print(f\"Next timestep: {next_timestep}\")\n            print(f\"Step size: {step_size}\")\n\n        # Pre-compute alpha and variance values\n        alpha_prod_t = self.alphas_cumprod[timestep]\n        alpha_prod_t_prev = self.alphas_cumprod[prev_timestep] if prev_timestep >= 0 else self.final_alpha_cumprod\n        variance = self._get_variance(timestep, prev_timestep)\n        std_dev_t = eta * variance ** 0.5\n\n        # Compute required values\n        alpha_i = alpha_prod_t ** 0.5\n        alpha_i_minus_1 = alpha_prod_t_prev ** 0.5\n        sigma_i = (1 - alpha_prod_t) ** 0.5\n        sigma_i_minus_1 = (1 - alpha_prod_t_prev - std_dev_t**2) ** 0.5\n\n        if debug:\n            print(\"\\n=== Alpha Values ===\")\n            print(f\"alpha_i: {alpha_i}\")\n            print(f\"alpha_i_minus_1: {alpha_i_minus_1}\")\n            print(f\"sigma_i: {sigma_i}\")\n            print(f\"sigma_i_minus_1: {sigma_i_minus_1}\")\n\n        # Predict original sample based on prediction type\n        if self.config.prediction_type == \"epsilon\":\n            pred_original_sample = (sample - sigma_i * model_output) / alpha_i\n            pred_epsilon = model_output\n            if debug:\n                print(\"\\nPrediction type: epsilon\")\n        elif self.config.prediction_type == \"sample\":\n            pred_original_sample = model_output\n            pred_epsilon = (sample - alpha_i * pred_original_sample) / sigma_i\n            if debug:\n                print(\"\\nPrediction type: sample\")\n        elif self.config.prediction_type == \"v_prediction\":\n            pred_original_sample = alpha_i * sample - sigma_i * model_output\n            pred_epsilon = alpha_i * model_output + sigma_i * sample\n            if debug:\n                print(\"\\nPrediction type: v_prediction\")\n        else:\n            raise ValueError(\n                f\"prediction_type {self.config.prediction_type} must be one of `epsilon`, `sample`, or `v_prediction`\"\n            )\n\n        # Apply thresholding or clipping if configured\n        if self.config.thresholding:\n            if debug:\n                print(\"\\nApplying thresholding\")\n            pred_original_sample = self._threshold_sample(pred_original_sample)\n        elif self.config.clip_sample:\n            if debug:\n                print(\"\\nApplying clipping\")\n            pred_original_sample = pred_original_sample.clamp(\n                -self.config.clip_sample_range, self.config.clip_sample_range\n            )\n\n        # Recompute pred_epsilon if using clipped model output\n        if use_clipped_model_output:\n            if debug:\n                print(\"\\nUsing clipped model output\")\n            pred_epsilon = (sample - alpha_i * pred_original_sample) / sigma_i\n\n        # Compute DDIM step\n        ddim_step = alpha_i_minus_1 * pred_original_sample + sigma_i_minus_1 * pred_epsilon\n\n        # Handle initial DDIM step or BDIA steps\n        if len(self.next_sample) == 0:\n            if debug:\n                print(\"\\nFirst iteration (DDIM)\")\n            self.update_next_sample_BDIA(sample)\n            self.update_next_sample_BDIA(ddim_step)\n        else:\n            if debug:\n                print(\"\\nBDIA step\")\n            # BDIA implementation\n            alpha_prod_t_next = self.alphas_cumprod[next_timestep]\n            alpha_i_plus_1 = alpha_prod_t_next ** 0.5\n            sigma_i_plus_1 = (1 - alpha_prod_t_next) ** 0.5\n\n            if debug:\n                print(f\"alpha_i_plus_1: {alpha_i_plus_1}\")\n                print(f\"sigma_i_plus_1: {sigma_i_plus_1}\")\n\n            a = alpha_i_plus_1 * pred_original_sample + sigma_i_plus_1 * pred_epsilon\n            bdia_step = (\n                self.config.gamma * self.next_sample[-2] +\n                ddim_step -\n                (self.config.gamma * a)\n            )\n            self.update_next_sample_BDIA(bdia_step)\n\n        prev_sample = self.next_sample[-1]\n\n        # Apply variance noise if eta > 0\n        if eta > 0:\n            if debug:\n                print(f\"\\nApplying variance noise with eta: {eta}\")\n\n            if variance_noise is not None and generator is not None:\n                raise ValueError(\n                    \"Cannot pass both generator and variance_noise. Use either `generator` or `variance_noise`.\"\n                )\n\n            if variance_noise is None:\n                variance_noise = randn_tensor(\n                    model_output.shape,\n                    generator=generator,\n                    device=model_output.device,\n                    dtype=model_output.dtype\n                )\n            prev_sample = prev_sample + std_dev_t * variance_noise\n\n        if not return_dict:\n            return (prev_sample,)\n\n        return DDIMSchedulerOutput(prev_sample=prev_sample, pred_original_sample=pred_original_sample)\n\n    def add_noise(\n        self,\n        original_samples: torch.Tensor,\n        noise: torch.Tensor,\n        timesteps: torch.IntTensor,\n    ) -> torch.Tensor:\n        # Make sure alphas_cumprod and timestep have same device and dtype as original_samples\n        # Move the self.alphas_cumprod to device to avoid redundant CPU to GPU data movement\n        # for the subsequent add_noise calls\n        self.alphas_cumprod = self.alphas_cumprod.to(device=original_samples.device)\n        alphas_cumprod = self.alphas_cumprod.to(dtype=original_samples.dtype)\n        timesteps = timesteps.to(original_samples.device)\n\n        sqrt_alpha_prod = alphas_cumprod[timesteps] ** 0.5\n        sqrt_alpha_prod = sqrt_alpha_prod.flatten()\n        while len(sqrt_alpha_prod.shape) < len(original_samples.shape):\n            sqrt_alpha_prod = sqrt_alpha_prod.unsqueeze(-1)\n\n        sqrt_one_minus_alpha_prod = (1 - alphas_cumprod[timesteps]) ** 0.5\n        sqrt_one_minus_alpha_prod = sqrt_one_minus_alpha_prod.flatten()\n        while len(sqrt_one_minus_alpha_prod.shape) < len(original_samples.shape):\n            sqrt_one_minus_alpha_prod = sqrt_one_minus_alpha_prod.unsqueeze(-1)\n\n        noisy_samples = sqrt_alpha_prod * original_samples + sqrt_one_minus_alpha_prod * noise\n        return noisy_samples\n\n    # Copied from diffusers.schedulers.scheduling_ddpm.DDPMScheduler.get_velocity\n    def get_velocity(self, sample: torch.Tensor, noise: torch.Tensor, timesteps: torch.IntTensor) -> torch.Tensor:\n        # Make sure alphas_cumprod and timestep have same device and dtype as sample\n        self.alphas_cumprod = self.alphas_cumprod.to(device=sample.device)\n        alphas_cumprod = self.alphas_cumprod.to(dtype=sample.dtype)\n        timesteps = timesteps.to(sample.device)\n\n        sqrt_alpha_prod = alphas_cumprod[timesteps] ** 0.5\n        sqrt_alpha_prod = sqrt_alpha_prod.flatten()\n        while len(sqrt_alpha_prod.shape) < len(sample.shape):\n            sqrt_alpha_prod = sqrt_alpha_prod.unsqueeze(-1)\n\n        sqrt_one_minus_alpha_prod = (1 - alphas_cumprod[timesteps]) ** 0.5\n        sqrt_one_minus_alpha_prod = sqrt_one_minus_alpha_prod.flatten()\n        while len(sqrt_one_minus_alpha_prod.shape) < len(sample.shape):\n            sqrt_one_minus_alpha_prod = sqrt_one_minus_alpha_prod.unsqueeze(-1)\n\n        velocity = sqrt_alpha_prod * noise - sqrt_one_minus_alpha_prod * sample\n        return velocity\n\n    def update_next_sample_BDIA(self, new_value):\n        self.next_sample.append(new_value.clone())\n\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/schedulers/scheduler_dc.py",
    "content": "# Copyright 2023 TSAIL Team and The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\n# DISCLAIMER: check https://arxiv.org/abs/2302.04867 and https://github.com/wl-zhao/UniPC for more info\n# The codebase is modified based on https://github.com/huggingface/diffusers/blob/main/src/diffusers/schedulers/scheduling_dpmsolver_multistep.py\n\nimport math\nfrom typing import List, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\n\n# from ..configuration_utils import ConfigMixin, register_to_config\n# from ..utils import deprecate\n# from .scheduling_utils import KarrasDiffusionSchedulers, SchedulerMixin, SchedulerOutput\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.utils import deprecate\nfrom diffusers.schedulers.scheduling_utils import KarrasDiffusionSchedulers, SchedulerMixin, SchedulerOutput\n\n\n# Copied from diffusers.schedulers.scheduling_ddpm.betas_for_alpha_bar\ndef betas_for_alpha_bar(\n    num_diffusion_timesteps,\n    max_beta=0.999,\n    alpha_transform_type=\"cosine\",\n):\n    \"\"\"\n    Create a beta schedule that discretizes the given alpha_t_bar function, which defines the cumulative product of\n    (1-beta) over time from t = [0,1].\n\n    Contains a function alpha_bar that takes an argument t and transforms it to the cumulative product of (1-beta) up\n    to that part of the diffusion process.\n\n\n    Args:\n        num_diffusion_timesteps (`int`): the number of betas to produce.\n        max_beta (`float`): the maximum beta to use; use values lower than 1 to\n                     prevent singularities.\n        alpha_transform_type (`str`, *optional*, default to `cosine`): the type of noise schedule for alpha_bar.\n                     Choose from `cosine` or `exp`\n\n    Returns:\n        betas (`np.ndarray`): the betas used by the scheduler to step the model outputs\n    \"\"\"\n    if alpha_transform_type == \"cosine\":\n\n        def alpha_bar_fn(t):\n            return math.cos((t + 0.008) / 1.008 * math.pi / 2) ** 2\n\n    elif alpha_transform_type == \"exp\":\n\n        def alpha_bar_fn(t):\n            return math.exp(t * -12.0)\n\n    else:\n        raise ValueError(f\"Unsupported alpha_tranform_type: {alpha_transform_type}\")\n\n    betas = []\n    for i in range(num_diffusion_timesteps):\n        t1 = i / num_diffusion_timesteps\n        t2 = (i + 1) / num_diffusion_timesteps\n        betas.append(min(1 - alpha_bar_fn(t2) / alpha_bar_fn(t1), max_beta))\n    return torch.tensor(betas, dtype=torch.float32)\n\n\nclass DCSolverMultistepScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    `UniPCMultistepScheduler` is a training-free framework designed for the fast sampling of diffusion models.\n\n    Dynamic Extropolation\n\n    This model inherits from [`SchedulerMixin`] and [`ConfigMixin`]. Check the superclass documentation for the generic\n    methods the library implements for all schedulers such as loading and saving.\n\n    Args:\n        num_train_timesteps (`int`, defaults to 1000):\n            The number of diffusion steps to train the model.\n        beta_start (`float`, defaults to 0.0001):\n            The starting `beta` value of inference.\n        beta_end (`float`, defaults to 0.02):\n            The final `beta` value.\n        beta_schedule (`str`, defaults to `\"linear\"`):\n            The beta schedule, a mapping from a beta range to a sequence of betas for stepping the model. Choose from\n            `linear`, `scaled_linear`, or `squaredcos_cap_v2`.\n        trained_betas (`np.ndarray`, *optional*):\n            Pass an array of betas directly to the constructor to bypass `beta_start` and `beta_end`.\n        solver_order (`int`, default `2`):\n            The UniPC order which can be any positive integer. The effective order of accuracy is `solver_order + 1`\n            due to the UniC. It is recommended to use `solver_order=2` for guided sampling, and `solver_order=3` for\n            unconditional sampling.\n        prediction_type (`str`, defaults to `epsilon`, *optional*):\n            Prediction type of the scheduler function; can be `epsilon` (predicts the noise of the diffusion process),\n            `sample` (directly predicts the noisy sample`) or `v_prediction` (see section 2.4 of [Imagen\n            Video](https://imagen.research.google/video/paper.pdf) paper).\n        thresholding (`bool`, defaults to `False`):\n            Whether to use the \"dynamic thresholding\" method. This is unsuitable for latent-space diffusion models such\n            as Stable Diffusion.\n        dynamic_thresholding_ratio (`float`, defaults to 0.995):\n            The ratio for the dynamic thresholding method. Valid only when `thresholding=True`.\n        sample_max_value (`float`, defaults to 1.0):\n            The threshold value for dynamic thresholding. Valid only when `thresholding=True` and `predict_x0=True`.\n        predict_x0 (`bool`, defaults to `True`):\n            Whether to use the updating algorithm on the predicted x0.\n        solver_type (`str`, default `bh2`):\n            Solver type for UniPC. It is recommended to use `bh1` for unconditional sampling when steps < 10, and `bh2`\n            otherwise.\n        lower_order_final (`bool`, default `True`):\n            Whether to use lower-order solvers in the final steps. Only valid for < 15 inference steps. This can\n            stabilize the sampling of DPMSolver for steps < 15, especially for steps <= 10.\n        disable_corrector (`list`, default `[]`):\n            Decides which step to disable the corrector to mitigate the misalignment between `epsilon_theta(x_t, c)`\n            and `epsilon_theta(x_t^c, c)` which can influence convergence for a large guidance scale. Corrector is\n            usually disabled during the first few steps.\n        solver_p (`SchedulerMixin`, default `None`):\n            Any other scheduler that if specified, the algorithm becomes `solver_p + UniC`.\n        use_karras_sigmas (`bool`, *optional*, defaults to `False`):\n            Whether to use Karras sigmas for step sizes in the noise schedule during the sampling process. If `True`,\n            the sigmas are determined according to a sequence of noise levels {σi}.\n        timestep_spacing (`str`, defaults to `\"linspace\"`):\n            The way the timesteps should be scaled. Refer to Table 2 of the [Common Diffusion Noise Schedules and\n            Sample Steps are Flawed](https://huggingface.co/papers/2305.08891) for more information.\n        steps_offset (`int`, defaults to 0):\n            An offset added to the inference steps. You can use a combination of `offset=1` and\n            `set_alpha_to_one=False` to make the last step use step 0 for the previous alpha product like in Stable\n            Diffusion.\n    \"\"\"\n\n    _compatibles = [e.name for e in KarrasDiffusionSchedulers]\n    order = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.0001,\n        beta_end: float = 0.02,\n        beta_schedule: str = \"linear\",\n        trained_betas: Optional[Union[np.ndarray, List[float]]] = None,\n        solver_order: int = 2,\n        dc_order: int = 2,\n        prediction_type: str = \"epsilon\",\n        thresholding: bool = False,\n        dynamic_thresholding_ratio: float = 0.995,\n        sample_max_value: float = 1.0,\n        predict_x0: bool = True,\n        solver_type: str = \"bh2\",\n        lower_order_final: bool = True,\n        disable_corrector: List[int] = [],\n        solver_p: SchedulerMixin = None,\n        use_karras_sigmas: Optional[bool] = False,\n        timestep_spacing: str = \"linspace\",\n        steps_offset: int = 0,\n        # ddim_gt_path: str = None,\n        ddim_gt=None,\n        num_iters=20,\n        bound_func='none',\n    ):\n        if trained_betas is not None:\n            self.betas = torch.tensor(trained_betas, dtype=torch.float32)\n        elif beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            # this schedule is very specific to the latent diffusion model.\n            self.betas = (\n                torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n            )\n        elif beta_schedule == \"squaredcos_cap_v2\":\n            # Glide cosine schedule\n            self.betas = betas_for_alpha_bar(num_train_timesteps)\n        else:\n            raise NotImplementedError(f\"{beta_schedule} does is not implemented for {self.__class__}\")\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n        # Currently we only support VP-type noise schedule\n        self.alpha_t = torch.sqrt(self.alphas_cumprod)\n        self.sigma_t = torch.sqrt(1 - self.alphas_cumprod)\n        self.lambda_t = torch.log(self.alpha_t) - torch.log(self.sigma_t)\n\n        # standard deviation of the initial noise distribution\n        self.init_noise_sigma = 1.0\n\n        if solver_type not in [\"bh1\", \"bh2\"]:\n            if solver_type in [\"midpoint\", \"heun\", \"logrho\"]:\n                self.register_to_config(solver_type=\"bh2\")\n            else:\n                raise NotImplementedError(f\"{solver_type} does is not implemented for {self.__class__}\")\n\n        self.predict_x0 = predict_x0\n        # setable values\n        self.num_inference_steps = None\n        timesteps = np.linspace(0, num_train_timesteps - 1, num_train_timesteps, dtype=np.float32)[::-1].copy()\n        self.timesteps = torch.from_numpy(timesteps)\n        self.buffer_size = max(solver_order, dc_order + 1)\n        self.num_iters = num_iters\n        self.model_outputs = [None] * self.buffer_size\n        self.timestep_list = [None] * self.buffer_size\n        self.lower_order_nums = 0\n        self.disable_corrector = disable_corrector\n        self.solver_p = solver_p\n        self.last_sample = None\n        self._step_index = None\n\n        if ddim_gt is not None:\n            self.ddim_gt = dict(\n                ts=ddim_gt['ts'].cpu().numpy(),\n                intermediates=ddim_gt['intermediates'].cpu().numpy(),\n            )\n        else:\n            self.ddim_gt = None\n        self.bound_func = bound_func\n        self.dc_order = dc_order\n\n    @property\n    def step_index(self):\n        \"\"\"\n        The index counter for current timestep. It will increae 1 after each scheduler step.\n        \"\"\"\n        return self._step_index\n\n    def set_timesteps(self, num_inference_steps: int, device: Union[str, torch.device] = None):\n        \"\"\"\n        Sets the discrete timesteps used for the diffusion chain (to be run before inference).\n\n        Args:\n            num_inference_steps (`int`):\n                The number of diffusion steps used when generating samples with a pre-trained model.\n            device (`str` or `torch.device`, *optional*):\n                The device to which the timesteps should be moved to. If `None`, the timesteps are not moved.\n        \"\"\"\n        # \"linspace\", \"leading\", \"trailing\" corresponds to annotation of Table 2. of https://arxiv.org/abs/2305.08891\n        if self.config.timestep_spacing == \"linspace\":\n            timesteps = (\n                np.linspace(0, self.config.num_train_timesteps - 1, num_inference_steps + 1)\n                .round()[::-1][:-1]\n                .copy()\n                .astype(np.int64)\n            )\n        elif self.config.timestep_spacing == \"leading\":\n            step_ratio = self.config.num_train_timesteps // (num_inference_steps + 1)\n            # creates integer timesteps by multiplying by ratio\n            # casting to int to avoid issues when num_inference_step is power of 3\n            timesteps = (np.arange(0, num_inference_steps + 1) * step_ratio).round()[::-1][:-1].copy().astype(np.int64)\n            timesteps += self.config.steps_offset\n        elif self.config.timestep_spacing == \"trailing\":\n            step_ratio = self.config.num_train_timesteps / num_inference_steps\n            # creates integer timesteps by multiplying by ratio\n            # casting to int to avoid issues when num_inference_step is power of 3\n            timesteps = np.arange(self.config.num_train_timesteps, 0, -step_ratio).round().copy().astype(np.int64)\n            timesteps -= 1\n        else:\n            raise ValueError(\n                f\"{self.config.timestep_spacing} is not supported. Please make sure to choose one of 'linspace', 'leading' or 'trailing'.\"\n            )\n\n        sigmas = np.array(((1 - self.alphas_cumprod) / self.alphas_cumprod) ** 0.5)\n        if self.config.use_karras_sigmas:\n            log_sigmas = np.log(sigmas)\n            sigmas = np.flip(sigmas).copy()\n            sigmas = self._convert_to_karras(in_sigmas=sigmas, num_inference_steps=num_inference_steps)\n            timesteps = np.array([self._sigma_to_t(sigma, log_sigmas) for sigma in sigmas]).round()\n            sigmas = np.concatenate([sigmas, sigmas[-1:]]).astype(np.float32)\n        else:\n            sigmas = np.interp(timesteps, np.arange(0, len(sigmas)), sigmas)\n            sigma_last = ((1 - self.alphas_cumprod[0]) / self.alphas_cumprod[0]) ** 0.5\n            sigmas = np.concatenate([sigmas, [sigma_last]]).astype(np.float32)\n\n        self.sigmas = torch.from_numpy(sigmas)\n        self.timesteps = torch.from_numpy(timesteps).to(device=device, dtype=torch.int64)\n\n        self.num_inference_steps = len(timesteps)\n\n        self.model_outputs = [None] * self.buffer_size\n        self.timestep_list = [None] * self.buffer_size\n\n        self.lower_order_nums = 0\n        self.last_sample = None\n        if self.solver_p:\n            self.solver_p.set_timesteps(self.num_inference_steps, device=device)\n\n        # add an index counter for schedulers that allow duplicated timesteps\n        self._step_index = None\n        # also init the ratios\n        self.dc_ratios = []\n\n    # Copied from diffusers.schedulers.scheduling_ddpm.DDPMScheduler._threshold_sample\n    def _threshold_sample(self, sample: torch.FloatTensor) -> torch.FloatTensor:\n        \"\"\"\n        \"Dynamic thresholding: At each sampling step we set s to a certain percentile absolute pixel value in xt0 (the\n        prediction of x_0 at timestep t), and if s > 1, then we threshold xt0 to the range [-s, s] and then divide by\n        s. Dynamic thresholding pushes saturated pixels (those near -1 and 1) inwards, thereby actively preventing\n        pixels from saturation at each step. We find that dynamic thresholding results in significantly better\n        photorealism as well as better image-text alignment, especially when using very large guidance weights.\"\n\n        https://arxiv.org/abs/2205.11487\n        \"\"\"\n        dtype = sample.dtype\n        batch_size, channels, *remaining_dims = sample.shape\n\n        if dtype not in (torch.float32, torch.float64):\n            sample = sample.float()  # upcast for quantile calculation, and clamp not implemented for cpu half\n\n        # Flatten sample for doing quantile calculation along each image\n        sample = sample.reshape(batch_size, channels * np.prod(remaining_dims))\n\n        abs_sample = sample.abs()  # \"a certain percentile absolute pixel value\"\n\n        s = torch.quantile(abs_sample, self.config.dynamic_thresholding_ratio, dim=1)\n        s = torch.clamp(\n            s, min=1, max=self.config.sample_max_value\n        )  # When clamped to min=1, equivalent to standard clipping to [-1, 1]\n        s = s.unsqueeze(1)  # (batch_size, 1) because clamp will broadcast along dim=0\n        sample = torch.clamp(sample, -s, s) / s  # \"we threshold xt0 to the range [-s, s] and then divide by s\"\n\n        sample = sample.reshape(batch_size, channels, *remaining_dims)\n        sample = sample.to(dtype)\n\n        return sample\n\n    # Copied from diffusers.schedulers.scheduling_euler_discrete.EulerDiscreteScheduler._sigma_to_t\n    def _sigma_to_t(self, sigma, log_sigmas):\n        # get log sigma\n        log_sigma = np.log(sigma)\n\n        # get distribution\n        dists = log_sigma - log_sigmas[:, np.newaxis]\n\n        # get sigmas range\n        low_idx = np.cumsum((dists >= 0), axis=0).argmax(axis=0).clip(max=log_sigmas.shape[0] - 2)\n        high_idx = low_idx + 1\n\n        low = log_sigmas[low_idx]\n        high = log_sigmas[high_idx]\n\n        # interpolate sigmas\n        w = (low - log_sigma) / (low - high)\n        w = np.clip(w, 0, 1)\n\n        # transform interpolation to time range\n        t = (1 - w) * low_idx + w * high_idx\n        t = t.reshape(sigma.shape)\n        return t\n\n    # Copied from diffusers.schedulers.scheduling_dpmsolver_multistep.DPMSolverMultistepScheduler._sigma_to_alpha_sigma_t\n    def _sigma_to_alpha_sigma_t(self, sigma):\n        alpha_t = 1 / ((sigma**2 + 1) ** 0.5)\n        sigma_t = sigma * alpha_t\n\n        return alpha_t, sigma_t\n\n    # Copied from diffusers.schedulers.scheduling_euler_discrete.EulerDiscreteScheduler._convert_to_karras\n    def _convert_to_karras(self, in_sigmas: torch.FloatTensor, num_inference_steps) -> torch.FloatTensor:\n        \"\"\"Constructs the noise schedule of Karras et al. (2022).\"\"\"\n\n        sigma_min: float = in_sigmas[-1].item()\n        sigma_max: float = in_sigmas[0].item()\n\n        rho = 7.0  # 7.0 is the value used in the paper\n        ramp = np.linspace(0, 1, num_inference_steps)\n        min_inv_rho = sigma_min ** (1 / rho)\n        max_inv_rho = sigma_max ** (1 / rho)\n        sigmas = (max_inv_rho + ramp * (min_inv_rho - max_inv_rho)) ** rho\n        return sigmas\n\n    def convert_model_output(\n        self,\n        model_output: torch.FloatTensor,\n        *args,\n        sample: torch.FloatTensor = None,\n        **kwargs,\n    ) -> torch.FloatTensor:\n        r\"\"\"\n        Convert the model output to the corresponding type the UniPC algorithm needs.\n\n        Args:\n            model_output (`torch.FloatTensor`):\n                The direct output from the learned diffusion model.\n            timestep (`int`):\n                The current discrete timestep in the diffusion chain.\n            sample (`torch.FloatTensor`):\n                A current instance of a sample created by the diffusion process.\n\n        Returns:\n            `torch.FloatTensor`:\n                The converted model output.\n        \"\"\"\n        timestep = args[0] if len(args) > 0 else kwargs.pop(\"timestep\", None)\n        if sample is None:\n            if len(args) > 1:\n                sample = args[1]\n            else:\n                raise ValueError(\"missing `sample` as a required keyward argument\")\n        if timestep is not None:\n            deprecate(\n                \"timesteps\",\n                \"1.0.0\",\n                \"Passing `timesteps` is deprecated and has no effect as model output conversion is now handled via an internal counter `self.step_index`\",\n            )\n\n        sigma = self.sigmas[self.step_index]\n        alpha_t, sigma_t = self._sigma_to_alpha_sigma_t(sigma)\n\n        if self.predict_x0:\n            if self.config.prediction_type == \"epsilon\":\n                x0_pred = (sample - sigma_t * model_output) / alpha_t\n            elif self.config.prediction_type == \"sample\":\n                x0_pred = model_output\n            elif self.config.prediction_type == \"v_prediction\":\n                x0_pred = alpha_t * sample - sigma_t * model_output\n            else:\n                raise ValueError(\n                    f\"prediction_type given as {self.config.prediction_type} must be one of `epsilon`, `sample`, or\"\n                    \" `v_prediction` for the UniPCMultistepScheduler.\"\n                )\n\n            if self.config.thresholding:\n                x0_pred = self._threshold_sample(x0_pred)\n\n            return x0_pred\n        else:\n            if self.config.prediction_type == \"epsilon\":\n                return model_output\n            elif self.config.prediction_type == \"sample\":\n                epsilon = (sample - alpha_t * model_output) / sigma_t\n                return epsilon\n            elif self.config.prediction_type == \"v_prediction\":\n                epsilon = alpha_t * model_output + sigma_t * sample\n                return epsilon\n            else:\n                raise ValueError(\n                    f\"prediction_type given as {self.config.prediction_type} must be one of `epsilon`, `sample`, or\"\n                    \" `v_prediction` for the UniPCMultistepScheduler.\"\n                )\n\n\n    def multistep_uni_p_bh_update(\n        self,\n        model_output: torch.FloatTensor = None,\n        *args,\n        sample: torch.FloatTensor = None,\n        order: int = None,\n        **kwargs,\n    ) -> torch.FloatTensor:\n        \"\"\"\n        One step for the UniP (B(h) version). Alternatively, `self.solver_p` is used if is specified.\n\n        Args:\n            model_output (`torch.FloatTensor`):\n                The direct output from the learned diffusion model at the current timestep.\n            prev_timestep (`int`):\n                The previous discrete timestep in the diffusion chain.\n            sample (`torch.FloatTensor`):\n                A current instance of a sample created by the diffusion process.\n            order (`int`):\n                The order of UniP at this timestep (corresponds to the *p* in UniPC-p).\n\n        Returns:\n            `torch.FloatTensor`:\n                The sample tensor at the previous timestep.\n        \"\"\"\n        prev_timestep = args[0] if len(args) > 0 else kwargs.pop(\"prev_timestep\", None)\n        if sample is None:\n            if len(args) > 1:\n                sample = args[1]\n            else:\n                raise ValueError(\" missing `sample` as a required keyward argument\")\n        if order is None:\n            if len(args) > 2:\n                order = args[2]\n            else:\n                raise ValueError(\" missing `order` as a required keyward argument\")\n        if prev_timestep is not None:\n            deprecate(\n                \"prev_timestep\",\n                \"1.0.0\",\n                \"Passing `prev_timestep` is deprecated and has no effect as model output conversion is now handled via an internal counter `self.step_index`\",\n            )\n        model_output_list = self.model_outputs\n\n        s0 = self.timestep_list[-1]\n        m0 = model_output_list[-1]\n        assert m0 is not None\n        x = sample\n\n        if self.solver_p:\n            raise NotImplementedError()\n\n        sigma_t, sigma_s0 = self.sigmas[self.step_index + 1], self.sigmas[self.step_index]\n        alpha_t, sigma_t = self._sigma_to_alpha_sigma_t(sigma_t)\n        alpha_s0, sigma_s0 = self._sigma_to_alpha_sigma_t(sigma_s0)\n\n        lambda_t = torch.log(alpha_t) - torch.log(sigma_t)\n        lambda_s0 = torch.log(alpha_s0) - torch.log(sigma_s0)\n\n        h = lambda_t - lambda_s0\n        device = sample.device\n\n        rks = []\n        D1s = []\n        for i in range(1, order):\n            si = self.step_index - i\n            mi = model_output_list[-(i + 1)]\n            alpha_si, sigma_si = self._sigma_to_alpha_sigma_t(self.sigmas[si])\n            lambda_si = torch.log(alpha_si) - torch.log(sigma_si)\n            rk = (lambda_si - lambda_s0) / h\n            rks.append(rk)\n            D1s.append((mi - m0) / rk)\n\n        rks.append(1.0)\n        rks = torch.tensor(rks, device=device)\n\n        R = []\n        b = []\n\n        hh = -h if self.predict_x0 else h\n        h_phi_1 = torch.expm1(hh)  # h\\phi_1(h) = e^h - 1\n        h_phi_k = h_phi_1 / hh - 1\n\n        factorial_i = 1\n\n        if self.config.solver_type == \"bh1\":\n            B_h = hh\n        elif self.config.solver_type == \"bh2\":\n            B_h = torch.expm1(hh)\n        else:\n            raise NotImplementedError()\n\n        for i in range(1, order + 1):\n            R.append(torch.pow(rks, i - 1))\n            b.append(h_phi_k * factorial_i / B_h)\n            factorial_i *= i + 1\n            h_phi_k = h_phi_k / hh - 1 / factorial_i\n\n        R = torch.stack(R)\n        b = torch.tensor(b, device=device)\n\n        if len(D1s) > 0:\n            D1s = torch.stack(D1s, dim=1)  # (B, K)\n            # for order 2, we use a simplified version\n            if order == 2:\n                rhos_p = torch.tensor([0.5], dtype=x.dtype, device=device)\n            else:\n                rhos_p = torch.linalg.solve(R[:-1, :-1], b[:-1])\n        else:\n            D1s = None\n\n        if self.predict_x0:\n            x_t_ = sigma_t / sigma_s0 * x - alpha_t * h_phi_1 * m0\n            if D1s is not None:\n                pred_res = torch.einsum(\"k,bkc...->bc...\", rhos_p, D1s)\n            else:\n                pred_res = 0\n            x_t = x_t_ - alpha_t * B_h * pred_res\n        else:\n            x_t_ = alpha_t / alpha_s0 * x - sigma_t * h_phi_1 * m0\n            if D1s is not None:\n                pred_res = torch.einsum(\"k,bkc...->bc...\", rhos_p, D1s)\n            else:\n                pred_res = 0\n            x_t = x_t_ - sigma_t * B_h * pred_res\n\n        x_t = x_t.to(x.dtype)\n        return x_t\n\n    def multistep_uni_c_bh_update(\n        self,\n        this_model_output: torch.FloatTensor,\n        *args,\n        last_sample: torch.FloatTensor = None,\n        this_sample: torch.FloatTensor = None,\n        order: int = None,\n        **kwargs,\n    ) -> torch.FloatTensor:\n        \"\"\"\n        One step for the UniC (B(h) version).\n\n        Args:\n            this_model_output (`torch.FloatTensor`):\n                The model outputs at `x_t`.\n            this_timestep (`int`):\n                The current timestep `t`.\n            last_sample (`torch.FloatTensor`):\n                The generated sample before the last predictor `x_{t-1}`.\n            this_sample (`torch.FloatTensor`):\n                The generated sample after the last predictor `x_{t}`.\n            order (`int`):\n                The `p` of UniC-p at this step. The effective order of accuracy should be `order + 1`.\n\n        Returns:\n            `torch.FloatTensor`:\n                The corrected sample tensor at the current timestep.\n        \"\"\"\n        this_timestep = args[0] if len(args) > 0 else kwargs.pop(\"this_timestep\", None)\n        if last_sample is None:\n            if len(args) > 1:\n                last_sample = args[1]\n            else:\n                raise ValueError(\" missing`last_sample` as a required keyward argument\")\n        if this_sample is None:\n            if len(args) > 2:\n                this_sample = args[2]\n            else:\n                raise ValueError(\" missing`this_sample` as a required keyward argument\")\n        if order is None:\n            if len(args) > 3:\n                order = args[3]\n            else:\n                raise ValueError(\" missing`order` as a required keyward argument\")\n        if this_timestep is not None:\n            deprecate(\n                \"this_timestep\",\n                \"1.0.0\",\n                \"Passing `this_timestep` is deprecated and has no effect as model output conversion is now handled via an internal counter `self.step_index`\",\n            )\n\n        model_output_list = self.model_outputs\n\n        m0 = model_output_list[-1]\n        x = last_sample\n        x_t = this_sample\n        model_t = this_model_output\n\n        sigma_t, sigma_s0 = self.sigmas[self.step_index], self.sigmas[self.step_index - 1]\n        alpha_t, sigma_t = self._sigma_to_alpha_sigma_t(sigma_t)\n        alpha_s0, sigma_s0 = self._sigma_to_alpha_sigma_t(sigma_s0)\n\n        lambda_t = torch.log(alpha_t) - torch.log(sigma_t)\n        lambda_s0 = torch.log(alpha_s0) - torch.log(sigma_s0)\n\n        h = lambda_t - lambda_s0\n        device = this_sample.device\n\n        rks = []\n        D1s = []\n        for i in range(1, order):\n            si = self.step_index - (i + 1)\n            mi = model_output_list[-(i + 1)]\n            alpha_si, sigma_si = self._sigma_to_alpha_sigma_t(self.sigmas[si])\n            lambda_si = torch.log(alpha_si) - torch.log(sigma_si)\n            rk = (lambda_si - lambda_s0) / h\n            rks.append(rk)\n            D1s.append((mi - m0) / rk)\n\n        rks.append(1.0)\n        rks = torch.tensor(rks, device=device)\n\n        R = []\n        b = []\n\n        hh = -h if self.predict_x0 else h\n        h_phi_1 = torch.expm1(hh)  # h\\phi_1(h) = e^h - 1\n        h_phi_k = h_phi_1 / hh - 1\n\n        factorial_i = 1\n\n        if self.config.solver_type == \"bh1\":\n            B_h = hh\n        elif self.config.solver_type == \"bh2\":\n            B_h = torch.expm1(hh)\n        else:\n            raise NotImplementedError()\n\n        for i in range(1, order + 1):\n            R.append(torch.pow(rks, i - 1))\n            b.append(h_phi_k * factorial_i / B_h)\n            factorial_i *= i + 1\n            h_phi_k = h_phi_k / hh - 1 / factorial_i\n\n        R = torch.stack(R)\n        b = torch.tensor(b, device=device)\n\n        if len(D1s) > 0:\n            D1s = torch.stack(D1s, dim=1)\n        else:\n            D1s = None\n\n        # for order 1, we use a simplified version\n        if order == 1:\n            rhos_c = torch.tensor([0.5], dtype=x.dtype, device=device)\n        else:\n            rhos_c = torch.linalg.solve(R, b)\n\n        if self.predict_x0:\n            x_t_ = sigma_t / sigma_s0 * x - alpha_t * h_phi_1 * m0\n            if D1s is not None:\n                corr_res = torch.einsum(\"k,bkc...->bc...\", rhos_c[:-1], D1s)\n            else:\n                corr_res = 0\n            D1_t = model_t - m0\n            x_t = x_t_ - alpha_t * B_h * (corr_res + rhos_c[-1] * D1_t)\n        else:\n            x_t_ = alpha_t / alpha_s0 * x - sigma_t * h_phi_1 * m0\n            if D1s is not None:\n                corr_res = torch.einsum(\"k,bkc...->bc...\", rhos_c[:-1], D1s)\n            else:\n                corr_res = 0\n            D1_t = model_t - m0\n            x_t = x_t_ - sigma_t * B_h * (corr_res + rhos_c[-1] * D1_t)\n        x_t = x_t.to(x.dtype)\n        return x_t\n\n    def _init_step_index(self, timestep):\n        if isinstance(timestep, torch.Tensor):\n            timestep = timestep.to(self.timesteps.device)\n\n        index_candidates = (self.timesteps == timestep).nonzero()\n\n        if len(index_candidates) == 0:\n            step_index = len(self.timesteps) - 1\n        # The sigma index that is taken for the **very** first `step`\n        # is always the second index (or the last index if there is only 1)\n        # This way we can ensure we don't accidentally skip a sigma in\n        # case we start in the middle of the denoising schedule (e.g. for image-to-image)\n        elif len(index_candidates) > 1:\n            step_index = index_candidates[1].item()\n        else:\n            step_index = index_candidates[0].item()\n\n        self._step_index = step_index\n\n    def dynamic_compensation(self, model_prev_list, t_prev_list, ratio):\n        len_buffer = len([t for t in t_prev_list if t is not None])\n        if len_buffer < 2:\n            return None\n\n        t_ = ratio * (t_prev_list[-1] - t_prev_list[-2]) + t_prev_list[-2]\n\n        inter_order = min(self.dc_order + 1, 4)\n\n        if inter_order is not None:\n            model_t_dc = torch.zeros_like(model_prev_list[-1])\n            for i in range(inter_order):\n                term = model_prev_list[-(i + 1)]\n                for j in range(inter_order):\n                    if i != j:\n                        para = (t_ - t_prev_list[-(j + 1)]) / (t_prev_list[-(i + 1)] - t_prev_list[-(j + 1)])\n                        term = term * para\n                model_t_dc = model_t_dc + term\n        else:\n            model_t_dc = None\n        return model_t_dc\n\n    def find_optim_ratio(self, sample, ratio_initial=1.0):\n        if self.bound_func == 'tanh':\n            bound_func = lambda x: torch.nn.functional.tanh(x) * 0.5 + ratio_initial\n            param_initial = 0.\n        else:\n            bound_func = lambda x: x\n            param_initial = ratio_initial\n\n        # step 1: define the parameters\n        if self.step_index < len(self.timesteps) - 2:\n            scalar_t = self.timesteps[self.step_index + 1].item()\n        else:\n            scalar_t = 0\n        ratio_param = torch.nn.Parameter(torch.tensor([param_initial], device=sample.device), requires_grad=True)\n\n        sample_clone = sample.clone()\n\n        index = np.where(self.ddim_gt['ts'] >= scalar_t)[0].max()\n        batch_size = sample.shape[0]\n\n        x_t_gt = torch.from_numpy(self.ddim_gt['intermediates'][:batch_size, index]).to(sample.device) # suppose the first batch\n\n        model_t_bak = self.model_outputs[-1]\n        def closure(ratio_param):\n            ratio_bound = bound_func(ratio_param)\n            # torch.nn.functional.tanh(ratio_param) * 0.5 + ratio_initial\n            sample = sample_clone.clone()\n            model_t_dc = self.dynamic_compensation(self.model_outputs, self.timestep_list, ratio=ratio_bound)\n            if model_t_dc is not None:\n                self.model_outputs[-1] = model_t_dc\n            self.last_sample = sample\n            # run predictor\n            sample = self.multistep_uni_p_bh_update(\n                sample=sample,\n                order=self.this_order,\n            )\n            # run the next corrector\n            self._step_index += 1\n            use_corrector = (\n                self.step_index > 0 and self.step_index - 1 not in self.disable_corrector \\\n                and self.last_sample is not None \\\n                and self.step_index < len(self.timesteps)\n            )\n            if use_corrector:\n                model_output = self.model_wrapper(sample, self.timesteps[self.step_index])\n                model_output_convert = self.convert_model_output(model_output, sample=sample)\n                sample = self.multistep_uni_c_bh_update(\n                    this_model_output=model_output_convert,\n                    last_sample=self.last_sample,\n                    this_sample=sample,\n                    order=self.this_order,\n                )\n            x_t_pred = sample\n            loss = torch.nn.functional.mse_loss(x_t_pred, x_t_gt)\n            # rewind\n            self._step_index -= 1\n            self.model_outputs[-1] = model_t_bak\n            return loss\n\n        optimizer = torch.optim.AdamW([ratio_param], lr=0.1)\n        for iter_ in range(self.num_iters):\n            optimizer.zero_grad()\n            loss = closure(ratio_param)\n            loss.backward()\n            optimizer.step()\n            ratio_bound = bound_func(ratio_param)\n\n        torch.cuda.empty_cache()\n        return ratio_bound.data.detach().item()\n\n    def cascade_polynomial_regression(self, test_CFG, test_NFE, cpr_path):\n        def f1(x, a, b, c):\n            return a * x ** 2 + b * x + c # np.log(np.abs(x - c)) + b\n\n        def f2(x, a, b, c):\n            return a * x ** 2 + b * x + c # a * np.exp(-b * x) + c\n\n        def predict(xs, *coeffs):\n            CFG, NFE, x = xs[0], xs[1], xs[2]\n            CFG = CFG / 12\n            x = x / NFE\n            NFE = NFE / 50\n            NFE = NFE.reshape(-1, 1, 1)\n            CFG = CFG.reshape(-1, 1)\n            coeffs = np.array(coeffs).reshape(-1, 3, 3)\n            coeffs1 = f2(NFE, coeffs[..., 0], coeffs[..., 1], coeffs[..., 2])\n            coeffs2 = f1(CFG, coeffs1[..., 0], coeffs1[..., 1], coeffs1[..., 2])\n\n            x_pow = 1\n            result = 0\n            for i in range(coeffs2.shape[-1]):\n                result = result + coeffs2[:, i] * x_pow\n                x_pow = x_pow * x\n            return result\n\n        cpr_coeffs = np.load(cpr_path)\n        ratios = []\n        steps = list(range(1, test_NFE + 1))\n        for step in steps:\n            if step < 3:\n                ratio = 1\n            else:\n                infer_x = np.array([test_CFG, test_NFE, step]).reshape(3, -1)\n                ratio = predict(infer_x, *cpr_coeffs).item()\n            ratios.append(ratio)\n        return ratios\n\n\n    def step(self, *args, **kwargs):\n        if self.ddim_gt is None:\n            return self._step(*args, **kwargs)\n        else:\n            return self._step_search(*args, **kwargs)\n\n    @torch.no_grad()\n    def _step_search(\n        self,\n        model_output: torch.FloatTensor,\n        timestep: int,\n        sample: torch.FloatTensor,\n        return_dict: bool = True,\n    ) -> Union[SchedulerOutput, Tuple]:\n        \"\"\"\n        Predict the sample from the previous timestep by reversing the SDE. This function propagates the sample with\n        the multistep UniPC.\n\n        Args:\n            model_output (`torch.FloatTensor`):\n                The direct output from learned diffusion model.\n            timestep (`int`):\n                The current discrete timestep in the diffusion chain.\n            sample (`torch.FloatTensor`):\n                A current instance of a sample created by the diffusion process.\n            return_dict (`bool`):\n                Whether or not to return a [`~schedulers.scheduling_utils.SchedulerOutput`] or `tuple`.\n\n        Returns:\n            [`~schedulers.scheduling_utils.SchedulerOutput`] or `tuple`:\n                If return_dict is `True`, [`~schedulers.scheduling_utils.SchedulerOutput`] is returned, otherwise a\n                tuple is returned where the first element is the sample tensor.\n\n        \"\"\"\n        if self.num_inference_steps is None:\n            raise ValueError(\n                \"Number of inference steps is 'None', you need to run 'set_timesteps' after creating the scheduler\"\n            )\n\n        if self.step_index is None:\n            self._init_step_index(timestep)\n\n        use_corrector = (\n            self.step_index > 0 and self.step_index - 1 not in self.disable_corrector and self.last_sample is not None\n        )\n\n        model_output_convert = self.convert_model_output(model_output, sample=sample)\n        if use_corrector:\n            sample = self.multistep_uni_c_bh_update(\n                this_model_output=model_output_convert,\n                last_sample=self.last_sample,\n                this_sample=sample,\n                order=self.this_order,\n            )\n\n        for i in range(self.buffer_size - 1):\n            self.model_outputs[i] = self.model_outputs[i + 1]\n            self.timestep_list[i] = self.timestep_list[i + 1]\n\n        self.model_outputs[-1] = model_output_convert\n        self.timestep_list[-1] = timestep\n\n        if self.config.lower_order_final:\n            this_order = min(self.config.solver_order, len(self.timesteps) - self.step_index)\n        else:\n            this_order = self.config.solver_order\n\n        self.this_order = min(this_order, self.lower_order_nums + 1)  # warmup for multistep\n        assert self.this_order > 0\n\n        # here we will use dynamic extrapolation to update the model_output\n        with torch.enable_grad():\n            if self.step_index > 1:\n                ratio_optim = self.find_optim_ratio(sample, ratio_initial=1.0)\n            else:\n                ratio_optim = 1.0\n            self.dc_ratios.append(ratio_optim)\n\n        # now update by dynamic compensation\n        if ratio_optim != 1.0:\n            self.model_outputs[-1] = self.dynamic_compensation(self.model_outputs, self.timestep_list, ratio=ratio_optim)\n\n        prev_sample = self.multistep_uni_p_bh_update(\n            # model_output=model_output,  # pass the original non-converted model output, in case solver-p is used\n            sample=sample,\n            order=self.this_order,\n        )\n        self.last_sample = sample\n        if self.lower_order_nums < self.config.solver_order:\n            self.lower_order_nums += 1\n\n        # upon completion increase step index by one\n        self._step_index += 1\n\n        if not return_dict:\n            return (prev_sample,)\n\n        return SchedulerOutput(prev_sample=prev_sample)\n\n    def _step(\n        self,\n        model_output: torch.FloatTensor,\n        timestep: int,\n        sample: torch.FloatTensor,\n        return_dict: bool = True,\n    ) -> Union[SchedulerOutput, Tuple]:\n        \"\"\"\n        Predict the sample from the previous timestep by reversing the SDE. This function propagates the sample with\n        the multistep UniPC.\n\n        Args:\n            model_output (`torch.FloatTensor`):\n                The direct output from learned diffusion model.\n            timestep (`int`):\n                The current discrete timestep in the diffusion chain.\n            sample (`torch.FloatTensor`):\n                A current instance of a sample created by the diffusion process.\n            return_dict (`bool`):\n                Whether or not to return a [`~schedulers.scheduling_utils.SchedulerOutput`] or `tuple`.\n\n        Returns:\n            [`~schedulers.scheduling_utils.SchedulerOutput`] or `tuple`:\n                If return_dict is `True`, [`~schedulers.scheduling_utils.SchedulerOutput`] is returned, otherwise a\n                tuple is returned where the first element is the sample tensor.\n\n        \"\"\"\n        if self.num_inference_steps is None:\n            raise ValueError(\n                \"Number of inference steps is 'None', you need to run 'set_timesteps' after creating the scheduler\"\n            )\n\n        if self.step_index is None:\n            self._init_step_index(timestep)\n\n        use_corrector = (\n            self.step_index > 0 and self.step_index - 1 not in self.disable_corrector and self.last_sample is not None\n        )\n\n        model_output_convert = self.convert_model_output(model_output, sample=sample)\n        if use_corrector:\n            sample = self.multistep_uni_c_bh_update(\n                this_model_output=model_output_convert,\n                last_sample=self.last_sample,\n                this_sample=sample,\n                order=self.this_order,\n            )\n\n        for i in range(self.buffer_size - 1):\n            self.model_outputs[i] = self.model_outputs[i + 1]\n            self.timestep_list[i] = self.timestep_list[i + 1]\n\n        self.model_outputs[-1] = model_output_convert\n        self.timestep_list[-1] = timestep\n\n        if self.config.lower_order_final:\n            this_order = min(self.config.solver_order, len(self.timesteps) - self.step_index)\n        else:\n            this_order = self.config.solver_order\n\n        self.this_order = min(this_order, self.lower_order_nums + 1)  # warmup for multistep\n        assert self.this_order > 0\n\n        self.last_sample = sample\n\n        # here we will use dynamic compensation to update the model_output\n        # dc_ratio = self.dc_ratios[self.step_index]\n        # if dc_ratio != 1.0:\n        #    self.model_outputs[-1] = self.dynamic_compensation(self.model_outputs, self.timestep_list, dc_ratio)\n\n        prev_sample = self.multistep_uni_p_bh_update(\n            model_output=model_output,  # pass the original non-converted model output, in case solver-p is used\n            sample=sample,\n            order=self.this_order,\n        )\n\n        if self.lower_order_nums < self.config.solver_order:\n            self.lower_order_nums += 1\n\n        # upon completion increase step index by one\n        self._step_index += 1\n\n        if not return_dict:\n            return (prev_sample,)\n\n        return SchedulerOutput(prev_sample=prev_sample)\n\n\n    def scale_model_input(self, sample: torch.FloatTensor, *args, **kwargs) -> torch.FloatTensor:\n        \"\"\"\n        Ensures interchangeability with schedulers that need to scale the denoising model input depending on the\n        current timestep.\n\n        Args:\n            sample (`torch.FloatTensor`):\n                The input sample.\n\n        Returns:\n            `torch.FloatTensor`:\n                A scaled input sample.\n        \"\"\"\n        return sample\n\n    # Copied from diffusers.schedulers.scheduling_dpmsolver_multistep.DPMSolverMultistepScheduler.add_noise\n    def add_noise(\n        self,\n        original_samples: torch.FloatTensor,\n        noise: torch.FloatTensor,\n        timesteps: torch.IntTensor,\n    ) -> torch.FloatTensor:\n        # Make sure sigmas and timesteps have the same device and dtype as original_samples\n        sigmas = self.sigmas.to(device=original_samples.device, dtype=original_samples.dtype)\n        if original_samples.device.type == \"mps\" and torch.is_floating_point(timesteps):\n            # mps does not support float64\n            schedule_timesteps = self.timesteps.to(original_samples.device, dtype=torch.float32)\n            timesteps = timesteps.to(original_samples.device, dtype=torch.float32)\n        else:\n            schedule_timesteps = self.timesteps.to(original_samples.device)\n            timesteps = timesteps.to(original_samples.device)\n\n        step_indices = [(schedule_timesteps == t).nonzero().item() for t in timesteps]\n\n        sigma = sigmas[step_indices].flatten()\n        while len(sigma.shape) < len(original_samples.shape):\n            sigma = sigma.unsqueeze(-1)\n\n        alpha_t, sigma_t = self._sigma_to_alpha_sigma_t(sigma)\n        noisy_samples = alpha_t * original_samples + sigma_t * noise\n        return noisy_samples\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/schedulers/scheduler_dpm_flowmatch.py",
    "content": "# Credits: @ukaprch <https://github.com/huggingface/diffusers/issues/9924>\n\nimport math\nfrom dataclasses import dataclass\nfrom typing import List, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nimport torchsde\n\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.utils import BaseOutput\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom diffusers.schedulers.scheduling_utils import SchedulerMixin\nimport scipy.stats\n\n\nclass BatchedBrownianTree:\n    \"\"\"A wrapper around torchsde.BrownianTree that enables batches of entropy.\"\"\"\n\n    def __init__(self, x, t0, t1, seed=None, **kwargs):\n        t0, t1, self.sign = self.sort(t0, t1)\n        w0 = kwargs.get(\"w0\", torch.zeros_like(x))\n        if seed is None:\n            seed = [torch.randint(0, 2**63 - 1, []).item()]\n        seed = [s.initial_seed() if isinstance(s, torch.Generator) else s for s in seed]\n        self.batched = True\n        try:\n            assert len(seed) == x.shape[0]\n            w0 = w0[0]\n        except TypeError:\n            seed = [seed]\n            self.batched = False\n        self.trees = [\n            torchsde.BrownianInterval(\n                t0=t0,\n                t1=t1,\n                size=w0.shape,\n                dtype=w0.dtype,\n                device=w0.device,\n                entropy=s,\n                tol=1e-6,\n                pool_size=24,\n                halfway_tree=True,\n            )\n            for s in seed\n        ]\n\n    @staticmethod\n    def sort(a, b):\n        return (a, b, 1) if a < b else (b, a, -1)\n\n    def __call__(self, t0, t1):\n        t0, t1, sign = self.sort(t0, t1)\n        w = torch.stack([tree(t0, t1) for tree in self.trees]) * (self.sign * sign)\n        return w if self.batched else w[0]\n\nclass BrownianTreeNoiseSampler:\n    \"\"\"A noise sampler backed by a torchsde.BrownianTree.\n\n    Args:\n        x (Tensor): The tensor whose shape, device and dtype to use to generate\n            random samples.\n        sigma_min (float): The low end of the valid interval.\n        sigma_max (float): The high end of the valid interval.\n        seed (int or List[int]): The random seed. If a list of seeds is\n            supplied instead of a single integer, then the noise sampler will use one BrownianTree per batch item, each\n            with its own seed.\n        transform (callable): A function that maps sigma to the sampler's\n            internal timestep.\n    \"\"\"\n\n    def __init__(self, x, sigma_min, sigma_max, seed=None, transform=lambda x: x):\n        self.transform = transform\n        t0, t1 = self.transform(torch.as_tensor(sigma_min)), self.transform(torch.as_tensor(sigma_max))\n        self.tree = BatchedBrownianTree(x, t0, t1, seed)\n\n    def __call__(self, sigma, sigma_next):\n        t0, t1 = self.transform(torch.as_tensor(sigma)), self.transform(torch.as_tensor(sigma_next))\n        return self.tree(t0, t1) / (t1 - t0).abs().sqrt()\n\n@dataclass\nclass FlowMatchDPMSolverMultistepSchedulerOutput(BaseOutput):\n    \"\"\"\n    Output class for the scheduler's `step` function output.\n\n    Args:\n        prev_sample (`torch.FloatTensor` of shape `(batch_size, num_channels, height, width)` for images):\n            Computed sample `(x_{t-1})` of previous timestep. `prev_sample` should be used as next model input in the\n            denoising loop.\n    \"\"\"\n\n    prev_sample: torch.FloatTensor\n\nclass FlowMatchDPMSolverMultistepScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    `DPMSolverMultistepScheduler` is a fast dedicated high-order solver for diffusion ODEs.\n\n    This model inherits from [`SchedulerMixin`] and [`ConfigMixin`]. Check the superclass documentation for the generic\n    methods the library implements for all schedulers such as loading and saving.\n\n    Args:\n        num_train_timesteps (`int`, defaults to 1000):\n            The number of diffusion steps to train the model.\n        beta_start (`float`, defaults to 0.0001):\n            The starting `beta` value of inference.\n        beta_end (`float`, defaults to 0.02):\n            The final `beta` value.\n        beta_schedule (`str`, defaults to `\"scaled linear\"`):\n            The beta schedule, a mapping from a beta range to a sequence of betas for stepping the model. Choose from `linear` or `scaled_linear`.\n        trained_betas (`np.ndarray`, *optional*):\n            Pass an array of betas directly to the constructor to bypass `beta_start` and `beta_end`.\n        solver_order (`int`, defaults to 2):\n            The DPMSolver order which can be `2` or `3`. It is recommended to use `solver_order=2` for guided\n            sampling, and `solver_order=3` for unconditional sampling.\n        algorithm_type (`str`, defaults to `dpmsolver++2M`):\n            Algorithm type for the solver; can be `dpmsolver2`, `dpmsolver2A`, `dpmsolver++2M`, `dpmsolver++2S`, `dpmsolver++sde`, `dpmsolver++2Msde`,\n            or `dpmsolver++3Msde`.\n        solver_type (`str`, defaults to `midpoint`):\n            Solver type for the second-order solver; can be `midpoint` or `heun`. The solver type slightly affects the\n            sample quality, especially for a small number of steps. It is recommended to use `midpoint` solvers.\n        sigma_schedule (`str`, *optional*, defaults to None (beta)): Sigma schedule to compute the `sigmas`. Optionally, we use\n            the schedule \"karras\" introduced in the EDM paper (https://arxiv.org/abs/2206.00364). Other acceptable values are\n            \"exponential\". The exponential schedule was incorporated in this model: https://huggingface.co/stabilityai/cosxl.\n            Other acceptable values are \"lambdas\". The uniform-logSNR for step sizes proposed by Lu's DPM-Solver in the\n            noise schedule during the sampling process. The sigmas and time steps are determined according to a sequence of `lambda(t)`.\n            \"betas\" for step sizes in the noise schedule during the sampling process. Refer to [Beta\n            Sampling is All You Need](https://huggingface.co/papers/2407.12173) for more information.\n        use_noise_sampler for BrownianTreeNoiseSampler (only valid for `dpmsolver++2S`, `dpmsolver++sde`, `dpmsolver++2Msde`, or `dpmsolver++3Msde`.\n            A noise sampler backed by a torchsde increasing the stability of convergence. Default strategy\n            (random noise) has it jumping all over the place, but Brownian sampling is more stable. Utilizes the model generation seed provided.\n        midpoint_ratio (`float`, *optional*, range: 0.4 to 0.6, default=0.5): Only valid for (`dpmsolver++sde`, `dpmsolver++2S`).\n            Higher values may result in smoothing, more vivid colors and less noise at the expense of more detail and effect.\n        s_noise (`float`, *optional*, defaults to 1.0): Sigma noise strength: range 0 - 1.1 (only valid for `dpmsolver++2S`, `dpmsolver++sde`,\n            `dpmsolver++2Msde`, or `dpmsolver++3Msde`). The amount of additional noise to counteract loss of detail during sampling. A\n            reasonable range is [1.000, 1.011]. Defaults to 1.0 from the original implementation.\n        use_beta_sigmas: (`bool` defaults to False for FLUX and True for SD3). Based on original interpretation of using beta values for determining sigmas.\n        use_dynamic_shifting (`bool` defaults to False for SD3 and True for FLUX). When `True`, shift is ignored.\n        shift (`float`, defaults to 3.0): The shift value for the timestep schedule for SD3 when not using dynamic shifting.\n        The remaining args are specific to Flux's dynamic shifting based on resolution.\n    \"\"\"\n\n    _compatibles = []\n    order = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.00085,\n        beta_end: float = 0.012,\n        beta_schedule: str = \"scaled linear\",\n        trained_betas: Optional[Union[np.ndarray, List[float]]] = None,\n        solver_order: int = 2,\n        algorithm_type: str = \"dpmsolver++2M\",\n        solver_type: str = \"midpoint\",\n        sigma_schedule: Optional[str] = None,\n        prediction_type: str = \"flow_prediction\",\n        use_flow_sigmas: bool = True,\n        shift: float = 3.0,\n        midpoint_ratio: Optional[float] = 0.5,\n        s_noise: Optional[float] = 1.0,\n        use_noise_sampler: Optional[bool] = True,\n        use_beta_sigmas: Optional[bool] = False,\n        use_dynamic_shifting=False,\n        base_shift: Optional[float] = 0.5,\n        max_shift: Optional[float] = 1.15,\n        base_image_seq_len: Optional[int] = 256,\n        max_image_seq_len: Optional[int] = 4096,\n    ):\n        # settings for DPM-Solver\n        if algorithm_type not in [\"dpmsolver2\", \"dpmsolver2A\", \"dpmsolver++2M\", \"dpmsolver++2S\", \"dpmsolver++sde\", \"dpmsolver++2Msde\", \"dpmsolver++3Msde\"]:\n            raise NotImplementedError(f\"{algorithm_type} is not implemented for {self.__class__}\")\n\n        if solver_type not in [\"midpoint\", \"heun\"]:\n            raise NotImplementedError(f\"{solver_type} is not implemented for {self.__class__}\")\n\n        if sigma_schedule not in [None, \"karras\", \"exponential\", \"lambdas\", \"betas\"]:\n            raise NotImplementedError(f\"{sigma_schedule} is not implemented for {self.__class__}\")\n\n        if beta_schedule not in [\"linear\", \"scaled linear\"]:\n            raise NotImplementedError(f\"{beta_schedule} is not implemented for {self.__class__}\")\n\n        # setable values\n        timesteps = np.linspace(1, num_train_timesteps, num_train_timesteps, dtype=np.float32)[::-1].copy()\n        timesteps = torch.from_numpy(timesteps).to(dtype=torch.float32)\n\n        sigmas = timesteps / num_train_timesteps\n        if not use_dynamic_shifting:\n            # when use_dynamic_shifting is True, we apply the timestep shifting on the fly based on the image resolution\n            sigmas = shift * sigmas / (1 + (shift - 1) * sigmas)\n\n        self.timesteps = sigmas * num_train_timesteps\n        self.h_last = None\n        self.h_1 = None\n        self.h_2 = None\n        self.noise_sampler = None\n        self._step_index = None\n        self._begin_index = None\n        self.sigmas = sigmas.to(\"cpu\")  # to avoid too much CPU/GPU communication\n        self.model_outputs = [None] * solver_order\n\n    @property\n    def step_index(self):\n        \"\"\"\n        The index counter for current timestep. It will increase 1 after each scheduler step.\n        \"\"\"\n        return self._step_index\n\n    @property\n    def begin_index(self):\n        \"\"\"\n        The index for the first timestep. It should be set from pipeline with `set_begin_index` method.\n        \"\"\"\n        return self._begin_index\n\n    def set_begin_index(self, begin_index: int = 0):\n        \"\"\"\n        Sets the begin index for the scheduler. This function should be run from pipeline before the inference.\n\n        Args:\n            begin_index (`int`):\n                The begin index for the scheduler.\n        \"\"\"\n        self._begin_index = begin_index\n\n    def time_shift(self, mu: float, sigma: float, t: torch.FloatTensor):\n        return math.exp(mu) / (math.exp(mu) + (1 / t - 1) ** sigma)\n\n    def set_timesteps(self,\n        num_inference_steps: int = None,\n        device: Union[str, torch.device] = None,\n        sigmas: Optional[List[float]] = None,\n        mu: Optional[float] = None,\n        timesteps: Optional[torch.Tensor] = None,\n    ):\n        \"\"\"\n        Sets the discrete timesteps used for the diffusion chain (to be run before inference).\n\n        Args:\n            num_inference_steps (`int`):\n                The number of diffusion steps used when generating samples with a pre-trained model.\n            device (`str` or `torch.device`, *optional*):\n                The device to which the timesteps should be moved to. If `None`, the timesteps are not moved.\n        \"\"\"\n        if self.config.use_dynamic_shifting and mu is None:\n            raise ValueError(\" you have a pass a value for `mu` when `use_dynamic_shifting` is set to be `True`\")\n\n        if sigmas is None:\n            self.use_beta_sigmas = True\n            self.num_inference_steps = num_inference_steps\n            beta_start = self.config.beta_start\n            beta_end = self.config.beta_end\n            if self.config.trained_betas is not None:\n                betas = torch.tensor(self.config.trained_betas, dtype=torch.float64)\n            elif self.config.beta_schedule == \"linear\":\n                betas = torch.linspace(beta_start, beta_end, self.config.num_train_timesteps, dtype=torch.float64)\n            elif self.config.beta_schedule == \"scaled linear\":\n                # this schedule is very specific to the latent diffusion model.\n                betas = torch.linspace(beta_start**0.5, beta_end**0.5, self.config.num_train_timesteps, dtype=torch.float64) ** 2\n            else:\n                raise NotImplementedError(f\"{self.config.beta_schedule} is not implemented for {self.__class__}\")\n            alphas = 1.0 - betas\n            alphas_cumprod = torch.cumprod(alphas, dim=0)\n            sigmas = np.array(((1 - alphas_cumprod) / alphas_cumprod) ** 0.5)\n            del alphas_cumprod\n            del alphas\n            del betas\n        elif self.use_beta_sigmas:\n            num_inference_steps = len(sigmas)\n            self.num_inference_steps = num_inference_steps\n            beta_start = self.config.beta_start\n            beta_end = self.config.beta_end\n            if self.config.trained_betas is not None:\n                betas = torch.tensor(self.config.trained_betas, dtype=torch.float64)\n            elif self.config.beta_schedule == \"linear\":\n                betas = torch.linspace(beta_start, beta_end, self.config.num_train_timesteps, dtype=torch.float64)\n            elif self.config.beta_schedule == \"scaled linear\":\n                # this schedule is very specific to the latent diffusion model.\n                betas = torch.linspace(beta_start**0.5, beta_end**0.5, self.config.num_train_timesteps, dtype=torch.float64) ** 2\n            else:\n                raise NotImplementedError(f\"{self.config.beta_schedule} is not implemented for {self.__class__}\")\n            alphas = 1.0 - betas\n            alphas_cumprod = torch.cumprod(alphas, dim=0)\n            sigmas = np.array(((1 - alphas_cumprod) / alphas_cumprod) ** 0.5)\n            del alphas_cumprod\n            del alphas\n            del betas\n        else:\n            num_inference_steps = len(sigmas)\n            self.num_inference_steps = num_inference_steps\n\n        if self.config.sigma_schedule == \"exponential\":\n            if self.use_beta_sigmas:\n                sigmas = np.flip(sigmas).copy()\n                sigma_min = sigmas[-1]\n                sigma_max = sigmas[0]\n                sigmas = self._convert_to_exponential(sigma_min, sigma_max, num_inference_steps=num_inference_steps)\n                OldRange = sigma_max - sigma_min\n                NewRange = 1.0 - sigma_min\n                sigmas = (((sigmas - sigma_min) * NewRange) / OldRange) + sigma_min\n            else:\n                sigma_min = sigmas[-1]\n                sigma_max = sigmas[0]\n                sigmas = self._convert_to_exponential(sigma_min, sigma_max, num_inference_steps=num_inference_steps)\n        elif self.config.sigma_schedule == \"karras\":\n            if self.use_beta_sigmas:\n                sigmas = np.flip(sigmas).copy()\n                sigma_min = sigmas[-1]\n                sigma_max = sigmas[0]\n                sigmas = self._convert_to_karras(sigma_min, sigma_max, num_inference_steps=num_inference_steps)\n                OldRange = sigma_max - sigma_min\n                NewRange = 1.0 - sigma_min\n                sigmas = (((sigmas - sigma_min) * NewRange) / OldRange) + sigma_min\n            else:\n                sigma_min = sigmas[-1]\n                sigma_max = sigmas[0]\n                sigmas = self._convert_to_karras(sigma_min, sigma_max, num_inference_steps=num_inference_steps)\n            sigmas = torch.from_numpy(sigmas).to(dtype=torch.float64, device=device)\n        elif self.config.sigma_schedule == \"lambdas\":\n            if self.use_beta_sigmas:\n                log_sigmas = np.log(sigmas)\n                lambdas = np.flip(log_sigmas.copy())\n                lambdas = self._convert_to_lu(in_lambdas=lambdas, num_inference_steps=num_inference_steps)\n                sigmas = np.exp(lambdas)\n                sigma_min = sigmas[-1]\n                sigma_max = sigmas[0]\n                OldRange = sigma_max - sigma_min\n                NewRange = 1.0 - sigma_min\n                sigmas = (((sigmas - sigma_min) * NewRange) / OldRange) + sigma_min\n                del lambdas\n                del log_sigmas\n            else:\n                log_sigmas = np.log(sigmas)\n                lambdas = log_sigmas.copy()\n                lambdas = self._convert_to_lu(in_lambdas=lambdas, num_inference_steps=num_inference_steps)\n                sigmas = np.exp(lambdas)\n                del lambdas\n                del log_sigmas\n            sigmas = torch.from_numpy(sigmas).to(dtype=torch.float64, device=device)\n        elif self.config.sigma_schedule == \"betas\":\n            if self.use_beta_sigmas:\n                sigmas = np.flip(sigmas).copy()\n                sigma_min = sigmas[-1]\n                sigma_max = sigmas[0]\n                sigmas = self._convert_to_beta(sigma_min, sigma_max, num_inference_steps=num_inference_steps, device=device)\n                OldRange = sigma_max - sigma_min\n                NewRange = 1.0 - sigma_min\n                sigmas = (((sigmas - sigma_min) * NewRange) / OldRange) + sigma_min\n            else:\n                sigmas = np.flip(sigmas).copy()\n                sigma_min = sigmas[-1]\n                sigmas = np.linspace(1.0, sigma_min, num_inference_steps)\n                sigmas = torch.from_numpy(sigmas).to(dtype=torch.float64, device=device)\n        else:\n            if self.use_beta_sigmas:\n                sigmas = np.flip(sigmas).copy()\n                sigma_min = sigmas[-1]\n                sigmas = np.linspace(1.0, sigma_min, num_inference_steps)\n            sigmas = torch.from_numpy(sigmas).to(dtype=torch.float64, device=device)\n\n        if self.config.use_dynamic_shifting:\n            sigmas = self.time_shift(mu, 1.0, sigmas)\n        else:\n            sigmas = self.config.shift * sigmas / (1 + (self.config.shift - 1) * sigmas)\n\n        timesteps = sigmas * self.config.num_train_timesteps\n        self.timesteps = timesteps.to(device=device)\n        self.sigmas = torch.cat([sigmas, torch.zeros(1, device=sigmas.device)])\n        self.h_last = None\n        self.h_1 = None\n        self.h_2 = None\n        self.noise_sampler = None\n        self.model_outputs = [None] * self.config.solver_order\n        self._step_index = None\n        self._begin_index = None\n\n    # Copied from diffusers.schedulers.scheduling_euler_discrete.EulerDiscreteScheduler._convert_to_beta\n    def _convert_to_beta(self, sigma_min, sigma_max, num_inference_steps, device: Union[str, torch.device] = None, alpha: float = 0.6, beta: float = 0.6) -> torch.Tensor:\n        \"\"\"From \"Beta Sampling is All You Need\" [arXiv:2407.12173] (Lee et. al, 2024)\"\"\"\n        sigmas = torch.Tensor(\n            [\n                sigma_min + (ppf * (sigma_max - sigma_min))\n                for ppf in [\n                    scipy.stats.beta.ppf(timestep, alpha, beta)\n                    for timestep in 1 - np.linspace(0, 1, num_inference_steps).astype(np.float64)\n                ]\n            ]\n        ).to(dtype=torch.float64, device=device)\n        return sigmas\n\n    def _convert_to_lu(self, in_lambdas: torch.Tensor, num_inference_steps) -> torch.Tensor:\n        \"\"\"Constructs the noise schedule of Lu et al. (2022).\"\"\"\n\n        lambda_min: float = in_lambdas[-1].item()\n        lambda_max: float = in_lambdas[0].item()\n\n        rho = 1.0  # 1.0 is the value used in the paper\n        ramp = np.linspace(0, 1, num_inference_steps)\n        min_inv_rho = lambda_min ** (1 / rho)\n        max_inv_rho = lambda_max ** (1 / rho)\n        lambdas = (max_inv_rho + ramp * (min_inv_rho - max_inv_rho)) ** rho\n        return lambdas\n\n    # Copied from diffusers.schedulers.scheduling_euler_discrete.EulerDiscreteScheduler._convert_to_karras\n    def _convert_to_karras(self, sigma_min, sigma_max, num_inference_steps) -> torch.Tensor:\n        rho = 7.0  # 7.0 is the value used in the paper\n        ramp = np.linspace(0, 1, num_inference_steps)\n        min_inv_rho = sigma_min ** (1 / rho)\n        max_inv_rho = sigma_max ** (1 / rho)\n        sigmas = (max_inv_rho + ramp * (min_inv_rho - max_inv_rho)) ** rho\n        return sigmas\n\n    def _convert_to_exponential(self, sigma_min, sigma_max, num_inference_steps) -> torch.Tensor:\n        sigmas = torch.linspace(math.log(sigma_max), math.log(sigma_min), num_inference_steps).exp()\n        return sigmas\n\n    def index_for_timestep(self, timestep, schedule_timesteps=None):\n        if schedule_timesteps is None:\n            schedule_timesteps = self.timesteps\n\n        indices = (schedule_timesteps == timestep).nonzero()\n\n        # The sigma index that is taken for the **very** first `step`\n        # is always the second index (or the last index if there is only 1)\n        # This way we can ensure we don't accidentally skip a sigma in\n        # case we start in the middle of the denoising schedule (e.g. for image-to-image)\n        pos = 1 if len(indices) > 1 else 0\n\n        return indices[pos].item()\n\n    def _init_step_index(self, timestep):\n        if self.begin_index is None:\n            if isinstance(timestep, torch.Tensor):\n                timestep = timestep.to(self.timesteps.device)\n            self._step_index = self.index_for_timestep(timestep)\n        else:\n            self._step_index = self._begin_index\n\n    def step(\n        self,\n        model_output: torch.FloatTensor,\n        timestep: Union[float, torch.FloatTensor],\n        sample: torch.FloatTensor,\n        generator: Optional[torch.Generator] = None,\n        variance_noise: Optional[torch.FloatTensor] = None,\n        return_dict: bool = True,\n    ) -> Union[FlowMatchDPMSolverMultistepSchedulerOutput, Tuple]:\n        \"\"\"\n        Predict the sample from the previous timestep by reversing the SDE. This function propagates the sample with\n        the multistep DPMSolver.\n\n        Args:\n            model_output (`torch.Tensor`):\n                The direct output from learned diffusion model.\n            timestep (`int`):\n                The current discrete timestep in the diffusion chain.\n            sample (`torch.Tensor`):\n                A current instance of a sample created by the diffusion process.\n            generator (`torch.Generator`, *optional*):\n                A random number generator.\n            variance_noise (`torch.Tensor`):\n                Alternative to generating noise with `generator` by directly providing the noise for the variance\n                itself. Useful for methods such as [`LEdits++`].\n            return_dict (`bool`):\n                Whether or not to return a [`~schedulers.scheduling_utils.SchedulerOutput`] or `tuple`.\n\n        Returns:\n            [`~schedulers.scheduling_utils.SchedulerOutput`] or `tuple`:\n                If return_dict is `True`, [`~schedulers.scheduling_utils.SchedulerOutput`] is returned, otherwise a\n                tuple is returned where the first element is the sample tensor.\n\n        \"\"\"\n        if self.num_inference_steps is None:\n            raise ValueError(\n                \"Number of inference steps is 'None', you need to run 'set_timesteps' after creating the scheduler\"\n            )\n\n        if self.step_index is None:\n            self._init_step_index(timestep)\n\n        if self.config.algorithm_type in [\"dpmsolver2\", \"dpmsolver2A\"]:\n            pass\n        else:\n            # Flow Match needs to solve an integral of the data prediction model.\n            sigma = self.sigmas[self.step_index]\n            model_output = sample - sigma * model_output\n            for i in range(self.config.solver_order - 1):\n                self.model_outputs[i] = self.model_outputs[i + 1]\n            self.model_outputs[-1] = model_output\n\n        # Upcast to avoid precision issues when computing prev_sample\n        if sample.dtype != model_output.dtype:\n            sample = sample.to(model_output.dtype)\n\n        if self.config.algorithm_type in [\"dpmsolver2A\", \"dpmsolver++2S\", \"dpmsolver++sde\", \"dpmsolver++2Msde\", \"dpmsolver++3Msde\"] and variance_noise is None:\n            # Create a noise sampler if it hasn't been created yet\n            if self.config.use_noise_sampler:\n                if self.noise_sampler is None:\n                    min_sigma, max_sigma = self.sigmas[self.sigmas > 0].min(), self.sigmas.max()\n                    self.noise_sampler = BrownianTreeNoiseSampler(sample, min_sigma, max_sigma, generator)\n            else:\n                noise = randn_tensor(model_output.shape, generator=generator, device=model_output.device, dtype=model_output.dtype)\n        elif self.config.algorithm_type in [\"dpmsolver2A\", \"dpmsolver++2S\", \"dpmsolver++sde\", \"dpmsolver++2Msde\", \"dpmsolver++3Msde\"]:\n            noise = variance_noise.to(device=model_output.device, dtype=model_output.dtype)\n        else:\n            noise = None\n\n        def sigma_fn(_t: torch.Tensor) -> torch.Tensor:\n            return _t.neg().exp()\n        def t_fn(_sigma: torch.Tensor) -> torch.Tensor:\n            return _sigma.log().neg()\n        sigma = self.sigmas[self.step_index]\n        try:\n            sigma_next = self.sigmas[self.step_index + 1]\n        except Exception:\n            sigma_next = self.sigmas[-1]\n        sigma_prev = self.sigmas[self.step_index - 1]\n        if self.config.algorithm_type == \"dpmsolver2\":\n            if self.config.solver_order == 2:\n                if sigma_next == 0:\n                    # Euler method\n                    model_output = sample - sigma * model_output\n                    d = (sample - model_output) / sigma\n                    dt = sigma_next - sigma\n                    sample = sample + d * dt\n                else:\n                    # DPM-Solver2\n                    sigma_mid = sigma.log().lerp(sigma_next.log(), 0.5).exp()\n\n                    #using epsilon for new model output:\n                    pred_original_sample = sample - sigma * model_output\n                    # 2. Convert to an ODE derivative for 1st order\n                    d = (sample - pred_original_sample) / sigma\n                    # 3. delta timestep\n                    dt = sigma_mid - sigma\n                    x_2 = sample + d * dt\n\n                    #using epsilon for new model output:\n                    denoised_2 = x_2 - sigma_mid * model_output\n                    # 2. Convert to an ODE derivative for 2nd order\n                    d = (x_2 - denoised_2) / sigma_mid\n\n                    # 3. delta timestep\n                    dt = sigma_next - sigma\n                    sample = sample + d * dt\n\n                    del pred_original_sample\n                    del denoised_2\n                    del x_2\n                    del d\n        elif self.config.algorithm_type == \"dpmsolver2A\":\n            if self.config.solver_order == 2:\n                # get ancestral step\n                sigma_from = sigma\n                sigma_to = sigma_next\n                su = min(sigma_to, (sigma_to**2 * (sigma_from**2 - sigma_to**2) / sigma_from**2) ** 0.5)\n                sd = (sigma_to**2 - su**2) ** 0.5\n                if sd == 0:\n                    # Euler method\n                    model_output = sample - sigma * model_output\n                    d = (sample - model_output) / sigma\n                    dt = sd - sigma\n                    sample = sample + d * dt\n                else:\n                    # DPM-Solver2A\n                    sigma_mid = sigma.log().lerp(sd.log(), 0.5).exp()\n\n                    #using epsilon for new model output:\n                    model_output = sample - sigma * model_output\n                    # 2. Convert to an ODE derivative for 1st order\n                    d = (sample - model_output) / sigma\n                    dt = sd - sigma\n                    sample = sample + d * dt\n\n                    #using epsilon for new model output:\n                    pred_original_sample = sample - sigma * model_output\n                    # 2. Convert to an ODE derivative for 1st order\n                    d = (sample - pred_original_sample) / sigma\n                    # 3. delta timestep\n                    dt_1 = sigma_mid - sigma\n                    x_2 = sample + d * dt_1\n\n                    #using epsilon for new model output:\n                    denoised_2 = x_2 - sigma_mid * model_output\n                    # 2. Convert to an ODE derivative for 2nd order\n                    d_2 = (x_2 - denoised_2) / sigma_mid\n\n                    # 3. delta timestep\n                    dt_2 = sd - sigma_mid\n                    sample = sample + d_2 * dt_2\n\n                    if self.config.use_noise_sampler:\n                        sample = sample + self.noise_sampler(sigma, sigma_next) * self.config.s_noise * su\n                    else:\n                        sample = sample + noise * self.config.s_noise * su\n\n                    del pred_original_sample\n                    del denoised_2\n                    del x_2\n                    del d\n        elif self.config.algorithm_type == \"dpmsolver++2M\":\n            if self.config.solver_order == 2:\n                t, t_next = t_fn(sigma), t_fn(sigma_next)\n                h = t_next - t\n                if self.model_outputs[-2] is None or sigma_next == 0:\n                    sample = (sigma_fn(t_next) / sigma_fn(t)) * sample - (-h).expm1() * model_output\n                else:\n                    # DPM-Solver++(2M)\n                    h_last = t - t_fn(sigma_prev)\n                    r = h_last / h\n                    denoised_d = (1 + 1 / (2 * r)) * model_output - (1 / (2 * r)) * self.model_outputs[-2]\n                    sample = (sigma_fn(t_next) / sigma_fn(t)) * sample - (-h).expm1() * denoised_d\n                    del denoised_d\n        elif self.config.algorithm_type == \"dpmsolver++2S\":\n            if self.config.solver_order == 2:\n                # get ancestral step\n                sigma_from = sigma\n                sigma_to = sigma_next\n                su = min(sigma_to, (sigma_to**2 * (sigma_from**2 - sigma_to**2) / sigma_from**2) ** 0.5)\n                sd = (sigma_to**2 - su**2) ** 0.5\n                if sd == 0:\n                    # Euler method\n                    d = (sample - model_output) / sigma\n                    dt = sd - sigma\n                    sample = sample + d * dt\n                else:\n                    # DPM-Solver++(2S)\n                    t, t_next = t_fn(sigma), t_fn(sd)\n                    r = self.config.midpoint_ratio\n                    h = t_next - t\n                    s = t + r * h\n\n                    # Euler method\n                    d = (sample - model_output) / sigma\n                    dt = sd - sigma\n                    sample = sample + d * dt\n\n                    x_2 = (sigma_fn(s) / sigma_fn(t)) * sample - (-h * r).expm1() * model_output\n\n                    #using epsilon for new model output:\n                    denoised_2 = x_2 - sigma_fn(s) * model_output\n                    # 2. Convert to an ODE derivative for 2nd order\n                    d = (x_2 - denoised_2) / sigma_fn(s)\n                    dt = sd - sigma_next\n                    sample = sample + d * dt\n\n                    del x_2\n                    del denoised_2\n                    del d\n                # Noise addition\n                if sigma_next > 0:\n                    if self.config.use_noise_sampler:\n                        sample = sample + self.noise_sampler(sigma, sigma_next) * self.config.s_noise * su\n                    else:\n                        sample = sample + noise * self.config.s_noise * su\n        elif self.config.algorithm_type == \"dpmsolver++sde\":\n            if self.config.solver_order == 2:\n                if sigma_next == 0:\n                    # Euler method\n                    d = (sample - model_output) / sigma\n                    dt = sigma_next - sigma\n                    sample = sample + d * dt\n                else:\n                    # DPM-Solver++(SDE)\n                    t, t_next = t_fn(sigma), t_fn(sigma_next)\n                    r = self.config.midpoint_ratio\n                    h = t_next - t\n                    s = t + r * h\n\n                    # Euler method\n                    d = (sample - model_output) / sigma\n                    dt = sigma_next - sigma\n                    sample = sample + d * dt\n\n                    # Step 1\n                    # get ancestral step\n                    sigma_from = sigma_fn(t)\n                    sigma_to = sigma_fn(s)\n                    su = min(sigma_to, (sigma_to**2 * (sigma_from**2 - sigma_to**2) / sigma_from**2) ** 0.5)\n                    sd = (sigma_to**2 - su**2) ** 0.5\n\n                    # Euler method\n                    d = (sample - model_output) / sigma\n                    dt = sd - sigma\n                    sample = sample + d * dt\n\n                    s_ = t_fn(sd)\n                    x_2 = (sigma_fn(s_) / sigma_fn(t)) * sample - (t - s_).expm1() * model_output\n                    if self.config.use_noise_sampler:\n                        x_2 = x_2 + self.noise_sampler(sigma_fn(t), sigma_fn(s)) * self.config.s_noise * su\n                    else:\n                        x_2 = x_2 + noise * self.config.s_noise * su\n\n                    # Step 2\n                    # get ancestral step\n                    sigma_from = sigma_fn(t)\n                    sigma_to = sigma_fn(t_next)\n                    su = min(sigma_to, (sigma_to**2 * (sigma_from**2 - sigma_to**2) / sigma_from**2) ** 0.5)\n                    sd = (sigma_to**2 - su**2) ** 0.5\n\n                    #using epsilon for new model output:\n                    denoised_2 = x_2 - sigma_fn(s) * model_output\n                    # 2. Convert to an ODE derivative for 2nd order\n                    d = (x_2 - denoised_2) / sigma_fn(s)\n                    dt = sd - sigma_next\n                    sample = sample + d * dt\n\n                    if self.config.use_noise_sampler:\n                        sample = sample + self.noise_sampler(sigma_fn(t), sigma_fn(t_next)) * self.config.s_noise * su\n                    else:\n                        sample = sample + noise * self.config.s_noise * su\n                    del x_2\n                    del denoised_2\n                    del d\n        elif self.config.algorithm_type == \"dpmsolver++2Msde\":\n            if self.config.solver_order == 2:\n                if sigma_next == 0:\n                    sample = model_output\n                else:\n                    # DPM-Solver++(2M) SDE\n                    t, s = -sigma.log(), -sigma_next.log()\n                    h = s - t\n                    eta_h = h * 1\n\n                    # 3. Delta timestep\n                    dt = sigma_next - sigma\n                    sample = sample + model_output * dt\n\n                    sample = sigma_next / sigma * (-eta_h).exp() * sample + (-h - eta_h).expm1().neg() * model_output\n\n                    if self.model_outputs[-2] is not None:\n                        r = self.h_last / h\n                        if self.solver_type == 'heun':\n                            sample = sample + ((-h - eta_h).expm1().neg() / (-h - eta_h) + 1) * (1 / r) * (model_output - self.model_outputs[-2])\n                        elif self.solver_type == 'midpoint':\n                            sample = sample + 0.5 * (-h - eta_h).expm1().neg() * (1 / r) * (model_output - self.model_outputs[-2])\n\n                    if self.config.use_noise_sampler:\n                        sample = sample + self.noise_sampler(sigma, sigma_next) * sigma_next * (-2 * eta_h).expm1().neg().sqrt() * self.config.s_noise\n                    else:\n                        sample = sample + noise * sigma_next * (-2 * eta_h).expm1().neg().sqrt() * self.config.s_noise\n\n                    self.h_last = h\n        elif self.config.algorithm_type == \"dpmsolver++3Msde\":\n            if self.config.solver_order == 3:\n                if sigma_next == 0:\n                    sample = model_output\n                else:\n                    # DPM-Solver++(3M) SDE\n                    t, s = -sigma.log(), -sigma_next.log()\n                    h = s - t\n                    h_eta = h * 2\n\n                    # 3. Delta timestep\n                    dt = sigma_next - sigma\n                    sample = sample + model_output * dt\n\n                    sample = torch.exp(-h_eta) * sample + (-h_eta).expm1().neg() * model_output\n\n                    if self.h_2 is not None:\n                        r0 = self.h_1 / h\n                        r1 = self.h_2 / h\n                        d1_0 = (model_output - self.model_outputs[-2]) / r0\n                        d1_1 = (self.model_outputs[-2] - self.model_outputs[-3]) / r1\n                        d1 = d1_0 + (d1_0 - d1_1) * r0 / (r0 + r1)\n                        d2 = (d1_0 - d1_1) / (r0 + r1)\n                        phi_2 = h_eta.neg().expm1() / h_eta + 1\n                        phi_3 = phi_2 / h_eta - 0.5\n                        sample = sample + phi_2 * d1 - phi_3 * d2\n                        del d1_0\n                        del d1_1\n                        del d1\n                        del d2\n                        del phi_2\n                        del phi_3\n                    elif self.h_1 is not None:\n                        r = self.h_1 / h\n                        d = (model_output - self.model_outputs[-2]) / r\n                        phi_2 = h_eta.neg().expm1() / h_eta + 1\n                        sample = sample + phi_2 * d\n                        del d\n                        del phi_2\n\n                    if self.config.use_noise_sampler:\n                        sample = sample + self.noise_sampler(sigma, sigma_next) * sigma_next * (-2 * h).expm1().neg().sqrt() * self.config.s_noise\n                    else:\n                        sample = sample + noise * sigma_next * (-2 * h).expm1().neg().sqrt() * self.config.s_noise\n\n                    self.h_2 = self.h_1\n                    self.h_1 = h\n            if not self.config.use_noise_sampler and noise is not None:\n                del noise\n        prev_sample = sample\n\n        # Cast sample back to expected dtype\n        prev_sample = prev_sample.to(model_output.dtype)\n\n        # upon completion increase step index by one\n        self._step_index += 1\n\n        torch.cuda.empty_cache()\n\n        if not return_dict:\n            return (prev_sample,)\n\n        return FlowMatchDPMSolverMultistepSchedulerOutput(prev_sample=prev_sample)\n\n    def scale_model_input(self, sample: torch.FloatTensor, *args, **kwargs) -> torch.FloatTensor:\n        \"\"\"\n        Ensures interchangeability with schedulers that need to scale the denoising model input depending on the\n        current timestep.\n\n        Args:\n            sample (`torch.Tensor`):\n                The input sample.\n\n        Returns:\n            `torch.Tensor`:\n                A scaled input sample.\n        \"\"\"\n        return sample\n\n    def scale_noise(\n        self,\n        sample: torch.FloatTensor,\n        timestep: Union[float, torch.FloatTensor],\n        noise: Optional[torch.FloatTensor] = None,\n    ) -> torch.FloatTensor:\n        \"\"\"\n        Forward process in flow-matching\n\n        Args:\n            sample (`torch.FloatTensor`):\n                The input sample.\n            timestep (`int`, *optional*):\n                The current timestep in the diffusion chain.\n\n        Returns:\n            `torch.FloatTensor`:\n                A scaled input sample.\n        \"\"\"\n        # Make sure sigmas and timesteps have the same device and dtype as original_samples\n        sigmas = self.sigmas.to(device=sample.device, dtype=sample.dtype)\n\n        if sample.device.type == \"mps\" and torch.is_floating_point(timestep):\n            # mps does not support float64\n            schedule_timesteps = self.timesteps.to(sample.device, dtype=torch.float32)\n            timestep = timestep.to(sample.device, dtype=torch.float32)\n        else:\n            schedule_timesteps = self.timesteps.to(sample.device)\n            timestep = timestep.to(sample.device)\n\n        # self.begin_index is None when scheduler is used for training, or pipeline does not implement set_begin_index\n        if self.begin_index is None:\n            step_indices = [self.index_for_timestep(t, schedule_timesteps) for t in timestep]\n        elif self.step_index is not None:\n            # add_noise is called after first denoising step (for inpainting)\n            step_indices = [self.step_index] * timestep.shape[0]\n        else:\n            # add noise is called before first denoising step to create initial latent(img2img)\n            step_indices = [self.begin_index] * timestep.shape[0]\n\n        sigma = sigmas[step_indices].flatten()\n        while len(sigma.shape) < len(sample.shape):\n            sigma = sigma.unsqueeze(-1)\n\n        sample = sigma * noise + (1.0 - sigma) * sample\n\n        return sample\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/schedulers/scheduler_flashflow.py",
    "content": "# Copyright 2024 Stability AI, Katherine Crowson and The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport math\nfrom dataclasses import dataclass\nfrom typing import List, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.schedulers.scheduling_utils import SchedulerMixin\nfrom diffusers.utils import BaseOutput, is_scipy_available, logging\nfrom diffusers.utils.torch_utils import randn_tensor\n\nif is_scipy_available():\n    import scipy.stats\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\n@dataclass\nclass FlashFlowMatchEulerDiscreteSchedulerOutput(BaseOutput):\n    \"\"\"\n    Output class for the scheduler's `step` function output.\n\n    Args:\n        prev_sample (`torch.FloatTensor` of shape `(batch_size, num_channels, height, width)` for images):\n            Computed sample `(x_{t-1})` of previous timestep. `prev_sample` should be used as next model input in the\n            denoising loop.\n    \"\"\"\n\n    prev_sample: torch.FloatTensor\n\n\nclass FlashFlowMatchEulerDiscreteScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    Euler scheduler.\n\n    This model inherits from [`SchedulerMixin`] and [`ConfigMixin`]. Check the superclass documentation for the generic\n    methods the library implements for all schedulers such as loading and saving.\n\n    Args:\n        num_train_timesteps (`int`, defaults to 1000):\n            The number of diffusion steps to train the model.\n        timestep_spacing (`str`, defaults to `\"linspace\"`):\n            The way the timesteps should be scaled. Refer to Table 2 of the [Common Diffusion Noise Schedules and\n            Sample Steps are Flawed](https://huggingface.co/papers/2305.08891) for more information.\n        shift (`float`, defaults to 1.0):\n            The shift value for the timestep schedule.\n    \"\"\"\n\n    _compatibles = []\n    order = 1\n\n    @register_to_config\n    def __init__(\n            self,\n            num_train_timesteps: int = 1000,\n            shift: float = 1.0,\n            use_dynamic_shifting=False,\n            prediction_type: str = \"flow_prediction\",\n            use_flow_sigmas: bool = True,\n            base_shift: Optional[float] = 0.5,\n            max_shift: Optional[float] = 1.15,\n            base_image_seq_len: Optional[int] = 256,\n            max_image_seq_len: Optional[int] = 4096,\n            invert_sigmas: bool = False,\n            use_karras_sigmas: Optional[bool] = False,\n            use_exponential_sigmas: Optional[bool] = False,\n            use_beta_sigmas: Optional[bool] = False,\n    ):\n        if self.config.use_beta_sigmas and not is_scipy_available():\n            raise ImportError(\"Make sure to install scipy if you want to use beta sigmas.\")\n        if sum([self.config.use_beta_sigmas, self.config.use_exponential_sigmas, self.config.use_karras_sigmas]) > 1:\n            raise ValueError(\n                \"Only one of `config.use_beta_sigmas`, `config.use_exponential_sigmas`, `config.use_karras_sigmas` can be used.\"\n            )\n        timesteps = np.linspace(1, num_train_timesteps, num_train_timesteps, dtype=np.float32)[::-1].copy()\n        timesteps = torch.from_numpy(timesteps).to(dtype=torch.float32)\n\n        sigmas = timesteps / num_train_timesteps\n        if not use_dynamic_shifting:\n            # when use_dynamic_shifting is True, we apply the timestep shifting on the fly based on the image resolution\n            sigmas = shift * sigmas / (1 + (shift - 1) * sigmas)\n\n        self.timesteps = sigmas * num_train_timesteps\n\n        self._step_index = None\n        self._begin_index = None\n\n        self.sigmas = sigmas.to(\"cpu\")  # to avoid too much CPU/GPU communication\n        self.sigma_min = self.sigmas[-1].item()\n        self.sigma_max = self.sigmas[0].item()\n\n    @property\n    def step_index(self):\n        \"\"\"\n        The index counter for current timestep. It will increase 1 after each scheduler step.\n        \"\"\"\n        return self._step_index\n\n    @property\n    def begin_index(self):\n        \"\"\"\n        The index for the first timestep. It should be set from pipeline with `set_begin_index` method.\n        \"\"\"\n        return self._begin_index\n\n    # Copied from diffusers.schedulers.scheduling_dpmsolver_multistep.DPMSolverMultistepScheduler.set_begin_index\n    def set_begin_index(self, begin_index: int = 0):\n        \"\"\"\n        Sets the begin index for the scheduler. This function should be run from pipeline before the inference.\n\n        Args:\n            begin_index (`int`):\n                The begin index for the scheduler.\n        \"\"\"\n        self._begin_index = begin_index\n\n    def scale_noise(\n            self,\n            sample: torch.FloatTensor,\n            timestep: Union[float, torch.FloatTensor],\n            noise: Optional[torch.FloatTensor] = None,\n    ) -> torch.FloatTensor:\n        \"\"\"\n        Forward process in flow-matching\n\n        Args:\n            sample (`torch.FloatTensor`):\n                The input sample.\n            timestep (`int`, *optional*):\n                The current timestep in the diffusion chain.\n\n        Returns:\n            `torch.FloatTensor`:\n                A scaled input sample.\n        \"\"\"\n        # Make sure sigmas and timesteps have the same device and dtype as original_samples\n        sigmas = self.sigmas.to(device=sample.device, dtype=sample.dtype)\n\n        if sample.device.type == \"mps\" and torch.is_floating_point(timestep):\n            # mps does not support float64\n            schedule_timesteps = self.timesteps.to(sample.device, dtype=torch.float32)\n            timestep = timestep.to(sample.device, dtype=torch.float32)\n        else:\n            schedule_timesteps = self.timesteps.to(sample.device)\n            timestep = timestep.to(sample.device)\n\n        # self.begin_index is None when scheduler is used for training, or pipeline does not implement set_begin_index\n        if self.begin_index is None:\n            step_indices = [self.index_for_timestep(t, schedule_timesteps) for t in timestep]\n        elif self.step_index is not None:\n            # add_noise is called after first denoising step (for inpainting)\n            step_indices = [self.step_index] * timestep.shape[0]\n        else:\n            # add noise is called before first denoising step to create initial latent(img2img)\n            step_indices = [self.begin_index] * timestep.shape[0]\n\n        sigma = sigmas[step_indices].flatten()\n        while len(sigma.shape) < len(sample.shape):\n            sigma = sigma.unsqueeze(-1)\n\n        sample = sigma * noise + (1.0 - sigma) * sample\n\n        return sample\n\n    def _sigma_to_t(self, sigma):\n        return sigma * self.config.num_train_timesteps\n\n    def time_shift(self, mu: float, sigma: float, t: torch.Tensor):\n        return math.exp(mu) / (math.exp(mu) + (1 / t - 1) ** sigma)\n\n    def set_timesteps(\n            self,\n            num_inference_steps: int = None,\n            device: Union[str, torch.device] = None,\n            sigmas: Optional[List[float]] = None,\n            mu: Optional[float] = None,\n    ):\n        \"\"\"\n        Sets the discrete timesteps used for the diffusion chain (to be run before inference).\n\n        Args:\n            num_inference_steps (`int`):\n                The number of diffusion steps used when generating samples with a pre-trained model.\n            device (`str` or `torch.device`, *optional*):\n                The device to which the timesteps should be moved to. If `None`, the timesteps are not moved.\n        \"\"\"\n        if self.config.use_dynamic_shifting and mu is None:\n            raise ValueError(\" you have a pass a value for `mu` when `use_dynamic_shifting` is set to be `True`\")\n\n        if sigmas is None:\n            timesteps = np.linspace(\n                self._sigma_to_t(self.sigma_max), self._sigma_to_t(self.sigma_min), num_inference_steps\n            )\n\n            sigmas = timesteps / self.config.num_train_timesteps\n        else:\n            sigmas = np.array(sigmas).astype(np.float32)\n            num_inference_steps = len(sigmas)\n        self.num_inference_steps = num_inference_steps\n\n        if self.config.use_dynamic_shifting:\n            sigmas = self.time_shift(mu, 1.0, sigmas)\n        else:\n            sigmas = self.config.shift * sigmas / (1 + (self.config.shift - 1) * sigmas)\n\n        if self.config.use_karras_sigmas:\n            sigmas = self._convert_to_karras(in_sigmas=sigmas, num_inference_steps=num_inference_steps)\n\n        elif self.config.use_exponential_sigmas:\n            sigmas = self._convert_to_exponential(in_sigmas=sigmas, num_inference_steps=num_inference_steps)\n\n        elif self.config.use_beta_sigmas:\n            sigmas = self._convert_to_beta(in_sigmas=sigmas, num_inference_steps=num_inference_steps)\n\n        sigmas = torch.from_numpy(sigmas).to(dtype=torch.float32, device=device)\n        timesteps = sigmas * self.config.num_train_timesteps\n\n        if self.config.invert_sigmas:\n            sigmas = 1.0 - sigmas\n            timesteps = sigmas * self.config.num_train_timesteps\n            sigmas = torch.cat([sigmas, torch.ones(1, device=sigmas.device)])\n        else:\n            sigmas = torch.cat([sigmas, torch.zeros(1, device=sigmas.device)])\n\n        self.timesteps = timesteps.to(device=device)\n        self.sigmas = sigmas\n        self._step_index = None\n        self._begin_index = None\n\n    def index_for_timestep(self, timestep, schedule_timesteps=None):\n        if schedule_timesteps is None:\n            schedule_timesteps = self.timesteps\n\n        indices = (schedule_timesteps == timestep).nonzero()\n\n        # The sigma index that is taken for the **very** first `step`\n        # is always the second index (or the last index if there is only 1)\n        # This way we can ensure we don't accidentally skip a sigma in\n        # case we start in the middle of the denoising schedule (e.g. for image-to-image)\n        pos = 1 if len(indices) > 1 else 0\n\n        return indices[pos].item()\n\n    def _init_step_index(self, timestep):\n        if self.begin_index is None:\n            if isinstance(timestep, torch.Tensor):\n                timestep = timestep.to(self.timesteps.device)\n            self._step_index = self.index_for_timestep(timestep)\n        else:\n            self._step_index = self._begin_index\n\n    def scale_model_input(self, sample: torch.FloatTensor, timestep: Optional[int] = None) -> torch.FloatTensor:\n        \"\"\"\n        Ensures interchangeability with schedulers that need to scale the denoising model input depending on the\n        current timestep.\n\n        Args:\n            sample (`torch.FloatTensor`):\n                The input sample.\n            timestep (`int`, *optional*):\n                The current timestep in the diffusion chain.\n        Returns:\n            `torch.FloatTensor`:\n                A scaled input sample.\n        \"\"\"\n        return sample\n\n    def step(\n            self,\n            model_output: torch.FloatTensor,\n            timestep: Union[float, torch.FloatTensor],\n            sample: torch.FloatTensor,\n            s_churn: float = 0.0,\n            s_tmin: float = 0.0,\n            s_tmax: float = float(\"inf\"),\n            s_noise: float = 1.0,\n            generator: Optional[torch.Generator] = None,\n            return_dict: bool = True,\n    ) -> Union[FlashFlowMatchEulerDiscreteSchedulerOutput, Tuple]:\n        \"\"\"\n        Predict the sample from the previous timestep by reversing the SDE. This function propagates the diffusion\n        process from the learned model outputs (most often the predicted noise).\n\n        Args:\n            model_output (`torch.FloatTensor`):\n                The direct output from learned diffusion model.\n            timestep (`float`):\n                The current discrete timestep in the diffusion chain.\n            sample (`torch.FloatTensor`):\n                A current instance of a sample created by the diffusion process.\n            s_churn (`float`):\n            s_tmin  (`float`):\n            s_tmax  (`float`):\n            s_noise (`float`, defaults to 1.0):\n                Scaling factor for noise added to the sample.\n            generator (`torch.Generator`, *optional*):\n                A random number generator.\n            return_dict (`bool`):\n                Whether or not to return a [`~schedulers.scheduling_euler_discrete.EulerDiscreteSchedulerOutput`] or\n                tuple.\n\n        Returns:\n            [`~schedulers.scheduling_euler_discrete.EulerDiscreteSchedulerOutput`] or `tuple`:\n                If return_dict is `True`, [`~schedulers.scheduling_euler_discrete.EulerDiscreteSchedulerOutput`] is\n                returned, otherwise a tuple is returned where the first element is the sample tensor.\n        \"\"\"\n\n        if (\n                isinstance(timestep, int)\n                or isinstance(timestep, torch.IntTensor)\n                or isinstance(timestep, torch.LongTensor)\n        ):\n            raise ValueError(\n                (\n                    \"Passing integer indices (e.g. from `enumerate(timesteps)`) as timesteps to\"\n                    \" `EulerDiscreteScheduler.step()` is not supported. Make sure to pass\"\n                    \" one of the `scheduler.timesteps` as a timestep.\"\n                ),\n            )\n\n        if self.step_index is None:\n            self._init_step_index(timestep)\n\n        # Upcast to avoid precision issues when computing prev_sample\n\n        sigma = self.sigmas[self.step_index]\n\n        # Upcast to avoid precision issues when computing prev_sample\n        sample = sample.to(torch.float32)\n\n        denoised = sample - model_output * sigma\n\n        if self.step_index < self.num_inference_steps - 1:\n            sigma_next = self.sigmas[self.step_index + 1]\n            noise = randn_tensor(\n                model_output.shape,\n                generator=generator,\n                device=model_output.device,\n                dtype=denoised.dtype,\n            )\n            sample = sigma_next * noise + (1.0 - sigma_next) * denoised\n\n        self._step_index += 1\n        sample = sample.to(model_output.dtype)\n\n        if not return_dict:\n            return (sample,)\n\n        return FlashFlowMatchEulerDiscreteSchedulerOutput(prev_sample=sample)\n\n    # Copied from diffusers.schedulers.scheduling_euler_discrete.EulerDiscreteScheduler._convert_to_karras\n    def _convert_to_karras(self, in_sigmas: torch.Tensor, num_inference_steps) -> torch.Tensor:\n        \"\"\"Constructs the noise schedule of Karras et al. (2022).\"\"\"\n\n        # Hack to make sure that other schedulers which copy this function don't break\n        if hasattr(self.config, \"sigma_min\"):\n            sigma_min = self.config.sigma_min\n        else:\n            sigma_min = None\n\n        if hasattr(self.config, \"sigma_max\"):\n            sigma_max = self.config.sigma_max\n        else:\n            sigma_max = None\n\n        sigma_min = sigma_min if sigma_min is not None else in_sigmas[-1].item()\n        sigma_max = sigma_max if sigma_max is not None else in_sigmas[0].item()\n\n        rho = 7.0  # 7.0 is the value used in the paper\n        ramp = np.linspace(0, 1, num_inference_steps)\n        min_inv_rho = sigma_min ** (1 / rho)\n        max_inv_rho = sigma_max ** (1 / rho)\n        sigmas = (max_inv_rho + ramp * (min_inv_rho - max_inv_rho)) ** rho\n        return sigmas\n\n    # Copied from diffusers.schedulers.scheduling_euler_discrete.EulerDiscreteScheduler._convert_to_exponential\n    def _convert_to_exponential(self, in_sigmas: torch.Tensor, num_inference_steps: int) -> torch.Tensor:\n        \"\"\"Constructs an exponential noise schedule.\"\"\"\n\n        # Hack to make sure that other schedulers which copy this function don't break\n        if hasattr(self.config, \"sigma_min\"):\n            sigma_min = self.config.sigma_min\n        else:\n            sigma_min = None\n\n        if hasattr(self.config, \"sigma_max\"):\n            sigma_max = self.config.sigma_max\n        else:\n            sigma_max = None\n\n        sigma_min = sigma_min if sigma_min is not None else in_sigmas[-1].item()\n        sigma_max = sigma_max if sigma_max is not None else in_sigmas[0].item()\n\n        sigmas = np.exp(np.linspace(math.log(sigma_max), math.log(sigma_min), num_inference_steps))\n        return sigmas\n\n    # Copied from diffusers.schedulers.scheduling_euler_discrete.EulerDiscreteScheduler._convert_to_beta\n    def _convert_to_beta(\n            self, in_sigmas: torch.Tensor, num_inference_steps: int, alpha: float = 0.6, beta: float = 0.6\n    ) -> torch.Tensor:\n        \"\"\"From \"Beta Sampling is All You Need\" [arXiv:2407.12173] (Lee et. al, 2024)\"\"\"\n\n        # Hack to make sure that other schedulers which copy this function don't break\n        if hasattr(self.config, \"sigma_min\"):\n            sigma_min = self.config.sigma_min\n        else:\n            sigma_min = None\n\n        if hasattr(self.config, \"sigma_max\"):\n            sigma_max = self.config.sigma_max\n        else:\n            sigma_max = None\n\n        sigma_min = sigma_min if sigma_min is not None else in_sigmas[-1].item()\n        sigma_max = sigma_max if sigma_max is not None else in_sigmas[0].item()\n\n        sigmas = np.array(\n            [\n                sigma_min + (ppf * (sigma_max - sigma_min))\n                for ppf in [\n                scipy.stats.beta.ppf(timestep, alpha, beta)\n                for timestep in 1 - np.linspace(0, 1, num_inference_steps)\n            ]\n            ]\n        )\n        return sigmas\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/schedulers/scheduler_tcd.py",
    "content": "# Copied from: https://github.com/jabir-zheng/TCD/blob/main/scheduling_tcd.py\n# pylint: skip-file\n\n# Copyright 2023 Stanford University Team and The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\n# DISCLAIMER: This code is strongly influenced by https://github.com/pesser/pytorch_diffusion\n# and https://github.com/hojonathanho/diffusion\n\nimport math\nfrom dataclasses import dataclass\nfrom typing import List, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\n\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.utils import BaseOutput, logging\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom diffusers.schedulers.scheduling_utils import SchedulerMixin\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\n@dataclass\nclass TCDSchedulerOutput(BaseOutput):\n    \"\"\"\n    Output class for the scheduler's `step` function output.\n\n    Args:\n        prev_sample (`torch.FloatTensor` of shape `(batch_size, num_channels, height, width)` for images):\n            Computed sample `(x_{t-1})` of previous timestep. `prev_sample` should be used as next model input in the\n            denoising loop.\n        pred_noised_sample (`torch.FloatTensor` of shape `(batch_size, num_channels, height, width)` for images):\n            The predicted noised sample `(x_{s})` based on the model output from the current timestep.\n    \"\"\"\n\n    prev_sample: torch.FloatTensor\n    pred_noised_sample: Optional[torch.FloatTensor] = None\n\n\n# Copied from diffusers.schedulers.scheduling_ddpm.betas_for_alpha_bar\ndef betas_for_alpha_bar(\n    num_diffusion_timesteps,\n    max_beta=0.999,\n    alpha_transform_type=\"cosine\",\n):\n    \"\"\"\n    Create a beta schedule that discretizes the given alpha_t_bar function, which defines the cumulative product of\n    (1-beta) over time from t = [0,1].\n\n    Contains a function alpha_bar that takes an argument t and transforms it to the cumulative product of (1-beta) up\n    to that part of the diffusion process.\n\n\n    Args:\n        num_diffusion_timesteps (`int`): the number of betas to produce.\n        max_beta (`float`): the maximum beta to use; use values lower than 1 to\n                     prevent singularities.\n        alpha_transform_type (`str`, *optional*, default to `cosine`): the type of noise schedule for alpha_bar.\n                     Choose from `cosine` or `exp`\n\n    Returns:\n        betas (`np.ndarray`): the betas used by the scheduler to step the model outputs\n    \"\"\"\n    if alpha_transform_type == \"cosine\":\n\n        def alpha_bar_fn(t):\n            return math.cos((t + 0.008) / 1.008 * math.pi / 2) ** 2\n\n    elif alpha_transform_type == \"exp\":\n\n        def alpha_bar_fn(t):\n            return math.exp(t * -12.0)\n\n    else:\n        raise ValueError(f\"Unsupported alpha_tranform_type: {alpha_transform_type}\")\n\n    betas = []\n    for i in range(num_diffusion_timesteps):\n        t1 = i / num_diffusion_timesteps\n        t2 = (i + 1) / num_diffusion_timesteps\n        betas.append(min(1 - alpha_bar_fn(t2) / alpha_bar_fn(t1), max_beta))\n    return torch.tensor(betas, dtype=torch.float32)\n\n\n# Copied from diffusers.schedulers.scheduling_ddim.rescale_zero_terminal_snr\ndef rescale_zero_terminal_snr(betas: torch.FloatTensor) -> torch.FloatTensor:\n    \"\"\"\n    Rescales betas to have zero terminal SNR Based on https://arxiv.org/pdf/2305.08891.pdf (Algorithm 1)\n\n\n    Args:\n        betas (`torch.FloatTensor`):\n            the betas that the scheduler is being initialized with.\n\n    Returns:\n        `torch.FloatTensor`: rescaled betas with zero terminal SNR\n    \"\"\"\n    # Convert betas to alphas_bar_sqrt\n    alphas = 1.0 - betas\n    alphas_cumprod = torch.cumprod(alphas, dim=0)\n    alphas_bar_sqrt = alphas_cumprod.sqrt()\n\n    # Store old values.\n    alphas_bar_sqrt_0 = alphas_bar_sqrt[0].clone()\n    alphas_bar_sqrt_T = alphas_bar_sqrt[-1].clone()\n\n    # Shift so the last timestep is zero.\n    alphas_bar_sqrt -= alphas_bar_sqrt_T\n\n    # Scale so the first timestep is back to the old value.\n    alphas_bar_sqrt *= alphas_bar_sqrt_0 / (alphas_bar_sqrt_0 - alphas_bar_sqrt_T)\n\n    # Convert alphas_bar_sqrt to betas\n    alphas_bar = alphas_bar_sqrt**2  # Revert sqrt\n    alphas = alphas_bar[1:] / alphas_bar[:-1]  # Revert cumprod\n    alphas = torch.cat([alphas_bar[0:1], alphas])\n    betas = 1 - alphas\n\n    return betas\n\n\nclass TCDScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    `TCDScheduler` incorporates the `Strategic Stochastic Sampling` introduced by the paper `Trajectory Consistency Distillation`,\n    extending the original Multistep Consistency Sampling to enable unrestricted trajectory traversal.\n\n    This model inherits from [`SchedulerMixin`] and [`ConfigMixin`]. [`~ConfigMixin`] takes care of storing all config\n    attributes that are passed in the scheduler's `__init__` function, such as `num_train_timesteps`. They can be\n    accessed via `scheduler.config.num_train_timesteps`. [`SchedulerMixin`] provides general loading and saving\n    functionality via the [`SchedulerMixin.save_pretrained`] and [`~SchedulerMixin.from_pretrained`] functions.\n\n    Args:\n        num_train_timesteps (`int`, defaults to 1000):\n            The number of diffusion steps to train the model.\n        beta_start (`float`, defaults to 0.0001):\n            The starting `beta` value of inference.\n        beta_end (`float`, defaults to 0.02):\n            The final `beta` value.\n        beta_schedule (`str`, defaults to `\"linear\"`):\n            The beta schedule, a mapping from a beta range to a sequence of betas for stepping the model. Choose from\n            `linear`, `scaled_linear`, or `squaredcos_cap_v2`.\n        trained_betas (`np.ndarray`, *optional*):\n            Pass an array of betas directly to the constructor to bypass `beta_start` and `beta_end`.\n        original_inference_steps (`int`, *optional*, defaults to 50):\n            The default number of inference steps used to generate a linearly-spaced timestep schedule, from which we\n            will ultimately take `num_inference_steps` evenly spaced timesteps to form the final timestep schedule.\n        clip_sample (`bool`, defaults to `True`):\n            Clip the predicted sample for numerical stability.\n        clip_sample_range (`float`, defaults to 1.0):\n            The maximum magnitude for sample clipping. Valid only when `clip_sample=True`.\n        set_alpha_to_one (`bool`, defaults to `True`):\n            Each diffusion step uses the alphas product value at that step and at the previous one. For the final step\n            there is no previous alpha. When this option is `True` the previous alpha product is fixed to `1`,\n            otherwise it uses the alpha value at step 0.\n        steps_offset (`int`, defaults to 0):\n            An offset added to the inference steps. You can use a combination of `offset=1` and\n            `set_alpha_to_one=False` to make the last step use step 0 for the previous alpha product like in Stable\n            Diffusion.\n        prediction_type (`str`, defaults to `epsilon`, *optional*):\n            Prediction type of the scheduler function; can be `epsilon` (predicts the noise of the diffusion process),\n            `sample` (directly predicts the noisy sample`) or `v_prediction` (see section 2.4 of [Imagen\n            Video](https://imagen.research.google/video/paper.pdf) paper).\n        thresholding (`bool`, defaults to `False`):\n            Whether to use the \"dynamic thresholding\" method. This is unsuitable for latent-space diffusion models such\n            as Stable Diffusion.\n        dynamic_thresholding_ratio (`float`, defaults to 0.995):\n            The ratio for the dynamic thresholding method. Valid only when `thresholding=True`.\n        sample_max_value (`float`, defaults to 1.0):\n            The threshold value for dynamic thresholding. Valid only when `thresholding=True`.\n        timestep_spacing (`str`, defaults to `\"leading\"`):\n            The way the timesteps should be scaled. Refer to Table 2 of the [Common Diffusion Noise Schedules and\n            Sample Steps are Flawed](https://huggingface.co/papers/2305.08891) for more information.\n        timestep_scaling (`float`, defaults to 10.0):\n            The factor the timesteps will be multiplied by when calculating the consistency model boundary conditions\n            `c_skip` and `c_out`. Increasing this will decrease the approximation error (although the approximation\n            error at the default of `10.0` is already pretty small).\n        rescale_betas_zero_snr (`bool`, defaults to `False`):\n            Whether to rescale the betas to have zero terminal SNR. This enables the model to generate very bright and\n            dark samples instead of limiting it to samples with medium brightness. Loosely related to\n            [`--offset_noise`](https://github.com/huggingface/diffusers/blob/74fd735eb073eb1d774b1ab4154a0876eb82f055/examples/dreambooth/train_dreambooth.py#L506).\n    \"\"\"\n\n    order = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.00085,\n        beta_end: float = 0.012,\n        beta_schedule: str = \"scaled_linear\",\n        trained_betas: Optional[Union[np.ndarray, List[float]]] = None,\n        original_inference_steps: int = 50,\n        clip_sample: bool = False,\n        clip_sample_range: float = 1.0,\n        set_alpha_to_one: bool = True,\n        steps_offset: int = 0,\n        prediction_type: str = \"epsilon\",\n        thresholding: bool = False,\n        dynamic_thresholding_ratio: float = 0.995,\n        sample_max_value: float = 1.0,\n        timestep_spacing: str = \"leading\",\n        timestep_scaling: float = 10.0,\n        rescale_betas_zero_snr: bool = False,\n    ):\n        if trained_betas is not None:\n            self.betas = torch.tensor(trained_betas, dtype=torch.float32)\n        elif beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            # this schedule is very specific to the latent diffusion model.\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        elif beta_schedule == \"squaredcos_cap_v2\":\n            # Glide cosine schedule\n            self.betas = betas_for_alpha_bar(num_train_timesteps)\n        else:\n            raise NotImplementedError(f\"{beta_schedule} does is not implemented for {self.__class__}\")\n\n        # Rescale for zero SNR\n        if rescale_betas_zero_snr:\n            self.betas = rescale_zero_terminal_snr(self.betas)\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n\n        # At every step in ddim, we are looking into the previous alphas_cumprod\n        # For the final step, there is no previous alphas_cumprod because we are already at 0\n        # `set_alpha_to_one` decides whether we set this parameter simply to one or\n        # whether we use the final alpha of the \"non-previous\" one.\n        self.final_alpha_cumprod = torch.tensor(1.0) if set_alpha_to_one else self.alphas_cumprod[0]\n\n        # standard deviation of the initial noise distribution\n        self.init_noise_sigma = 1.0\n\n        # setable values\n        self.num_inference_steps = None\n        self.timesteps = torch.from_numpy(np.arange(0, num_train_timesteps)[::-1].copy().astype(np.int64))\n        self.custom_timesteps = False\n\n        self._step_index = None\n\n    # Copied from diffusers.schedulers.scheduling_euler_discrete.EulerDiscreteScheduler._init_step_index\n    def _init_step_index(self, timestep):\n        if isinstance(timestep, torch.Tensor):\n            timestep = timestep.to(self.timesteps.device)\n\n        index_candidates = (self.timesteps == timestep).nonzero()\n\n        # The sigma index that is taken for the **very** first `step`\n        # is always the second index (or the last index if there is only 1)\n        # This way we can ensure we don't accidentally skip a sigma in\n        # case we start in the middle of the denoising schedule (e.g. for image-to-image)\n        if len(index_candidates) > 1:\n            step_index = index_candidates[1]\n        else:\n            step_index = index_candidates[0]\n\n        self._step_index = step_index.item()\n\n    @property\n    def step_index(self):\n        return self._step_index\n\n    def scale_model_input(self, sample: torch.FloatTensor, timestep: Optional[int] = None) -> torch.FloatTensor:\n        \"\"\"\n        Ensures interchangeability with schedulers that need to scale the denoising model input depending on the\n        current timestep.\n\n        Args:\n            sample (`torch.FloatTensor`):\n                The input sample.\n            timestep (`int`, *optional*):\n                The current timestep in the diffusion chain.\n        Returns:\n            `torch.FloatTensor`:\n                A scaled input sample.\n        \"\"\"\n        return sample\n\n    def _get_variance(self, timestep, prev_timestep):\n        alpha_prod_t = self.alphas_cumprod[timestep]\n        alpha_prod_t_prev = self.alphas_cumprod[prev_timestep] if prev_timestep >= 0 else self.final_alpha_cumprod\n        beta_prod_t = 1 - alpha_prod_t\n        beta_prod_t_prev = 1 - alpha_prod_t_prev\n\n        variance = (beta_prod_t_prev / beta_prod_t) * (1 - alpha_prod_t / alpha_prod_t_prev)\n\n        return variance\n\n    # Copied from diffusers.schedulers.scheduling_ddpm.DDPMScheduler._threshold_sample\n    def _threshold_sample(self, sample: torch.FloatTensor) -> torch.FloatTensor:\n        \"\"\"\n        \"Dynamic thresholding: At each sampling step we set s to a certain percentile absolute pixel value in xt0 (the\n        prediction of x_0 at timestep t), and if s > 1, then we threshold xt0 to the range [-s, s] and then divide by\n        s. Dynamic thresholding pushes saturated pixels (those near -1 and 1) inwards, thereby actively preventing\n        pixels from saturation at each step. We find that dynamic thresholding results in significantly better\n        photorealism as well as better image-text alignment, especially when using very large guidance weights.\"\n\n        https://arxiv.org/abs/2205.11487\n        \"\"\"\n        dtype = sample.dtype\n        batch_size, channels, *remaining_dims = sample.shape\n\n        if dtype not in (torch.float32, torch.float64):\n            sample = sample.float()  # upcast for quantile calculation, and clamp not implemented for cpu half\n\n        # Flatten sample for doing quantile calculation along each image\n        sample = sample.reshape(batch_size, channels * np.prod(remaining_dims))\n\n        abs_sample = sample.abs()  # \"a certain percentile absolute pixel value\"\n\n        s = torch.quantile(abs_sample, self.config.dynamic_thresholding_ratio, dim=1)\n        s = torch.clamp(\n            s, min=1, max=self.config.sample_max_value\n        )  # When clamped to min=1, equivalent to standard clipping to [-1, 1]\n        s = s.unsqueeze(1)  # (batch_size, 1) because clamp will broadcast along dim=0\n        sample = torch.clamp(sample, -s, s) / s  # \"we threshold xt0 to the range [-s, s] and then divide by s\"\n\n        sample = sample.reshape(batch_size, channels, *remaining_dims)\n        sample = sample.to(dtype)\n\n        return sample\n\n    def set_timesteps(\n        self,\n        num_inference_steps: Optional[int] = None,\n        device: Union[str, torch.device] = None,\n        original_inference_steps: Optional[int] = None,\n        timesteps: Optional[List[int]] = None,\n        strength: int = 1.0,\n    ):\n        \"\"\"\n        Sets the discrete timesteps used for the diffusion chain (to be run before inference).\n\n        Args:\n            num_inference_steps (`int`, *optional*):\n                The number of diffusion steps used when generating samples with a pre-trained model. If used,\n                `timesteps` must be `None`.\n            device (`str` or `torch.device`, *optional*):\n                The device to which the timesteps should be moved to. If `None`, the timesteps are not moved.\n            original_inference_steps (`int`, *optional*):\n                The original number of inference steps, which will be used to generate a linearly-spaced timestep\n                schedule (which is different from the standard `diffusers` implementation). We will then take\n                `num_inference_steps` timesteps from this schedule, evenly spaced in terms of indices, and use that as\n                our final timestep schedule. If not set, this will default to the `original_inference_steps` attribute.\n            timesteps (`List[int]`, *optional*):\n                Custom timesteps used to support arbitrary spacing between timesteps. If `None`, then the default\n                timestep spacing strategy of equal spacing between timesteps on the training/distillation timestep\n                schedule is used. If `timesteps` is passed, `num_inference_steps` must be `None`.\n        \"\"\"\n        # 0. Check inputs\n        if num_inference_steps is None and timesteps is None:\n            raise ValueError(\"Must pass exactly one of `num_inference_steps` or `custom_timesteps`.\")\n\n        if num_inference_steps is not None and timesteps is not None:\n            raise ValueError(\"Can only pass one of `num_inference_steps` or `custom_timesteps`.\")\n\n        # 1. Calculate the TCD original training/distillation timestep schedule.\n        original_steps = (\n            original_inference_steps if original_inference_steps is not None else self.config.original_inference_steps\n        )\n\n        if original_steps is not None:\n            if original_steps > self.config.num_train_timesteps:\n                raise ValueError(\n                    f\"`original_steps`: {original_steps} cannot be larger than `self.config.train_timesteps`:\"\n                    f\" {self.config.num_train_timesteps} as the unet model trained with this scheduler can only handle\"\n                    f\" maximal {self.config.num_train_timesteps} timesteps.\"\n                )\n            # TCD Timesteps Setting\n            # The skipping step parameter k from the paper.\n            k = self.config.num_train_timesteps // original_steps\n            # TCD Training/Distillation Steps Schedule\n            tcd_origin_timesteps = np.asarray(list(range(1, int(original_steps * strength) + 1))) * k - 1\n        else:\n            tcd_origin_timesteps = np.asarray(list(range(0, int(self.config.num_train_timesteps * strength))))\n\n        # 2. Calculate the TCD inference timestep schedule.\n        if timesteps is not None:\n            # 2.1 Handle custom timestep schedules.\n            train_timesteps = set(tcd_origin_timesteps)\n            non_train_timesteps = []\n            for i in range(1, len(timesteps)):\n                if timesteps[i] >= timesteps[i - 1]:\n                    raise ValueError(\"`custom_timesteps` must be in descending order.\")\n\n                if timesteps[i] not in train_timesteps:\n                    non_train_timesteps.append(timesteps[i])\n\n            if timesteps[0] >= self.config.num_train_timesteps:\n                raise ValueError(\n                    f\"`timesteps` must start before `self.config.train_timesteps`:\"\n                    f\" {self.config.num_train_timesteps}.\"\n                )\n\n            # Raise warning if timestep schedule does not start with self.config.num_train_timesteps - 1\n            if strength == 1.0 and timesteps[0] != self.config.num_train_timesteps - 1:\n                logger.warning(\n                    f\"The first timestep on the custom timestep schedule is {timesteps[0]}, not\"\n                    f\" `self.config.num_train_timesteps - 1`: {self.config.num_train_timesteps - 1}. You may get\"\n                    f\" unexpected results when using this timestep schedule.\"\n                )\n\n            # Raise warning if custom timestep schedule contains timesteps not on original timestep schedule\n            if non_train_timesteps:\n                logger.warning(\n                    f\"The custom timestep schedule contains the following timesteps which are not on the original\"\n                    f\" training/distillation timestep schedule: {non_train_timesteps}. You may get unexpected results\"\n                    f\" when using this timestep schedule.\"\n                )\n\n            # Raise warning if custom timestep schedule is longer than original_steps\n            if original_steps is not None:\n                if len(timesteps) > original_steps:\n                    logger.warning(\n                        f\"The number of timesteps in the custom timestep schedule is {len(timesteps)}, which exceeds the\"\n                        f\" the length of the timestep schedule used for training: {original_steps}. You may get some\"\n                        f\" unexpected results when using this timestep schedule.\"\n                    )\n            else:\n                if len(timesteps) > self.config.num_train_timesteps:\n                    logger.warning(\n                        f\"The number of timesteps in the custom timestep schedule is {len(timesteps)}, which exceeds the\"\n                        f\" the length of the timestep schedule used for training: {self.config.num_train_timesteps}. You may get some\"\n                        f\" unexpected results when using this timestep schedule.\"\n                    )\n\n            timesteps = np.array(timesteps, dtype=np.int64)\n            self.num_inference_steps = len(timesteps)\n            self.custom_timesteps = True\n\n            # Apply strength (e.g. for img2img pipelines) (see StableDiffusionImg2ImgPipeline.get_timesteps)\n            init_timestep = min(int(self.num_inference_steps * strength), self.num_inference_steps)\n            t_start = max(self.num_inference_steps - init_timestep, 0)\n            timesteps = timesteps[t_start * self.order :]\n        else:\n            # 2.2 Create the \"standard\" TCD inference timestep schedule.\n            if num_inference_steps > self.config.num_train_timesteps:\n                raise ValueError(\n                    f\"`num_inference_steps`: {num_inference_steps} cannot be larger than `self.config.train_timesteps`:\"\n                    f\" {self.config.num_train_timesteps} as the unet model trained with this scheduler can only handle\"\n                    f\" maximal {self.config.num_train_timesteps} timesteps.\"\n                )\n\n            if original_steps is not None:\n                skipping_step = len(tcd_origin_timesteps) // num_inference_steps\n\n                if skipping_step < 1:\n                    raise ValueError(\n                        f\"The combination of `original_steps x strength`: {original_steps} x {strength} is smaller than `num_inference_steps`: {num_inference_steps}. Make sure to either reduce `num_inference_steps` to a value smaller than {int(original_steps * strength)} or increase `strength` to a value higher than {float(num_inference_steps / original_steps)}.\"\n                    )\n\n            self.num_inference_steps = num_inference_steps\n\n            if original_steps is not None:\n                if num_inference_steps > original_steps:\n                    raise ValueError(\n                        f\"`num_inference_steps`: {num_inference_steps} cannot be larger than `original_inference_steps`:\"\n                        f\" {original_steps} because the final timestep schedule will be a subset of the\"\n                        f\" `original_inference_steps`-sized initial timestep schedule.\"\n                    )\n            else:\n                if num_inference_steps > self.config.num_train_timesteps:\n                    raise ValueError(\n                        f\"`num_inference_steps`: {num_inference_steps} cannot be larger than `num_train_timesteps`:\"\n                        f\" {self.config.num_train_timesteps} because the final timestep schedule will be a subset of the\"\n                        f\" `num_train_timesteps`-sized initial timestep schedule.\"\n                    )\n\n            # TCD Inference Steps Schedule\n            tcd_origin_timesteps = tcd_origin_timesteps[::-1].copy()\n            # Select (approximately) evenly spaced indices from tcd_origin_timesteps.\n            inference_indices = np.linspace(0, len(tcd_origin_timesteps), num=num_inference_steps, endpoint=False)\n            inference_indices = np.floor(inference_indices).astype(np.int64)\n            timesteps = tcd_origin_timesteps[inference_indices]\n\n        self.timesteps = torch.from_numpy(timesteps).to(device=device, dtype=torch.long)\n\n        self._step_index = None\n\n    def step(\n        self,\n        model_output: torch.FloatTensor,\n        timestep: int,\n        sample: torch.FloatTensor,\n        eta: float = 0.0,\n        generator: Optional[torch.Generator] = None,\n        return_dict: bool = True,\n    ) -> Union[TCDSchedulerOutput, Tuple]:\n        \"\"\"\n        Predict the sample from the previous timestep by reversing the SDE. This function propagates the diffusion\n        process from the learned model outputs (most often the predicted noise).\n\n        Args:\n            model_output (`torch.FloatTensor`):\n                The direct output from learned diffusion model.\n            timestep (`int`):\n                The current discrete timestep in the diffusion chain.\n            sample (`torch.FloatTensor`):\n                A current instance of a sample created by the diffusion process.\n            eta (`float`):\n                A stochastic parameter (referred to as `gamma` in the paper) used to control the stochasticity in every step.\n                When eta = 0, it represents deterministic sampling, whereas eta = 1 indicates full stochastic sampling.\n            generator (`torch.Generator`, *optional*):\n                A random number generator.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~schedulers.scheduling_tcd.TCDSchedulerOutput`] or `tuple`.\n        Returns:\n            [`~schedulers.scheduling_utils.TCDSchedulerOutput`] or `tuple`:\n                If return_dict is `True`, [`~schedulers.scheduling_tcd.TCDSchedulerOutput`] is returned, otherwise a\n                tuple is returned where the first element is the sample tensor.\n        \"\"\"\n        if self.num_inference_steps is None:\n            raise ValueError(\n                \"Number of inference steps is 'None', you need to run 'set_timesteps' after creating the scheduler\"\n            )\n\n        if self.step_index is None:\n            self._init_step_index(timestep)\n\n        # 1. get previous step value\n        prev_step_index = self.step_index + 1\n        if prev_step_index < len(self.timesteps):\n            prev_timestep = self.timesteps[prev_step_index]\n        else:\n            prev_timestep = torch.tensor(0)\n\n        timestep_s = torch.floor((1 - eta) * prev_timestep).to(dtype=torch.long)\n\n        # 2. compute alphas, betas\n        alpha_prod_t = self.alphas_cumprod[timestep]\n        beta_prod_t = 1 - alpha_prod_t\n\n        alpha_prod_t_prev = self.alphas_cumprod[prev_timestep] if prev_timestep >= 0 else self.final_alpha_cumprod\n        _beta_prod_t_prev = 1 - alpha_prod_t_prev\n\n        alpha_prod_s = self.alphas_cumprod[timestep_s] if timestep_s >= 0 else self.final_alpha_cumprod\n        beta_prod_s = 1 - alpha_prod_s\n\n        # 3. Compute the predicted noised sample x_s based on the model parameterization\n        if self.config.prediction_type == \"epsilon\":  # noise-prediction\n            pred_original_sample = (sample - beta_prod_t.sqrt() * model_output) / alpha_prod_t.sqrt()\n            pred_epsilon = model_output\n            pred_noised_sample = alpha_prod_s.sqrt() * pred_original_sample + beta_prod_s.sqrt() * pred_epsilon\n        elif self.config.prediction_type == \"sample\":  # x-prediction\n            pred_original_sample = model_output\n            pred_epsilon = (sample - alpha_prod_t ** (0.5) * pred_original_sample) / beta_prod_t ** (0.5)\n            pred_noised_sample = alpha_prod_s.sqrt() * pred_original_sample + beta_prod_s.sqrt() * pred_epsilon\n        elif self.config.prediction_type == \"v_prediction\":  # v-prediction\n            pred_original_sample = (alpha_prod_t**0.5) * sample - (beta_prod_t**0.5) * model_output\n            pred_epsilon = (alpha_prod_t**0.5) * model_output + (beta_prod_t**0.5) * sample\n            pred_noised_sample = alpha_prod_s.sqrt() * pred_original_sample + beta_prod_s.sqrt() * pred_epsilon\n        else:\n            raise ValueError(\n                f\"prediction_type given as {self.config.prediction_type} must be one of `epsilon`, `sample` or\"\n                \" `v_prediction` for `TCDScheduler`.\"\n            )\n\n        # 4. Sample and inject noise z ~ N(0, I) for MultiStep Inference\n        # Noise is not used on the final timestep of the timestep schedule.\n        # This also means that noise is not used for one-step sampling.\n        # Eta (referred to as \"gamma\" in the paper) was introduced to control the stochasticity in every step.\n        # When eta = 0, it represents deterministic sampling, whereas eta = 1 indicates full stochastic sampling.\n        if eta > 0:\n            if self.step_index != self.num_inference_steps - 1:\n                noise = randn_tensor(\n                    model_output.shape, generator=generator, device=model_output.device, dtype=pred_noised_sample.dtype\n                )\n                prev_sample = (alpha_prod_t_prev / alpha_prod_s).sqrt() * pred_noised_sample + (1 - alpha_prod_t_prev / alpha_prod_s).sqrt() * noise\n            else:\n                prev_sample = pred_noised_sample\n        else:\n            prev_sample = pred_noised_sample\n\n        # upon completion increase step index by one\n        self._step_index += 1\n\n        if not return_dict:\n            return (prev_sample, pred_noised_sample)\n\n        return TCDSchedulerOutput(prev_sample=prev_sample, pred_noised_sample=pred_noised_sample)\n\n    # Copied from diffusers.schedulers.scheduling_ddpm.DDPMScheduler.add_noise\n    def add_noise(\n        self,\n        original_samples: torch.FloatTensor,\n        noise: torch.FloatTensor,\n        timesteps: torch.IntTensor,\n    ) -> torch.FloatTensor:\n        # Make sure alphas_cumprod and timestep have same device and dtype as original_samples\n        alphas_cumprod = self.alphas_cumprod.to(device=original_samples.device, dtype=original_samples.dtype)\n        timesteps = timesteps.to(original_samples.device)\n\n        sqrt_alpha_prod = alphas_cumprod[timesteps] ** 0.5\n        sqrt_alpha_prod = sqrt_alpha_prod.flatten()\n        while len(sqrt_alpha_prod.shape) < len(original_samples.shape):\n            sqrt_alpha_prod = sqrt_alpha_prod.unsqueeze(-1)\n\n        sqrt_one_minus_alpha_prod = (1 - alphas_cumprod[timesteps]) ** 0.5\n        sqrt_one_minus_alpha_prod = sqrt_one_minus_alpha_prod.flatten()\n        while len(sqrt_one_minus_alpha_prod.shape) < len(original_samples.shape):\n            sqrt_one_minus_alpha_prod = sqrt_one_minus_alpha_prod.unsqueeze(-1)\n\n        noisy_samples = sqrt_alpha_prod * original_samples + sqrt_one_minus_alpha_prod * noise\n        return noisy_samples\n\n    # Copied from diffusers.schedulers.scheduling_ddpm.DDPMScheduler.get_velocity\n    def get_velocity(\n        self, sample: torch.FloatTensor, noise: torch.FloatTensor, timesteps: torch.IntTensor\n    ) -> torch.FloatTensor:\n        # Make sure alphas_cumprod and timestep have same device and dtype as sample\n        alphas_cumprod = self.alphas_cumprod.to(device=sample.device, dtype=sample.dtype)\n        timesteps = timesteps.to(sample.device)\n\n        sqrt_alpha_prod = alphas_cumprod[timesteps] ** 0.5\n        sqrt_alpha_prod = sqrt_alpha_prod.flatten()\n        while len(sqrt_alpha_prod.shape) < len(sample.shape):\n            sqrt_alpha_prod = sqrt_alpha_prod.unsqueeze(-1)\n\n        sqrt_one_minus_alpha_prod = (1 - alphas_cumprod[timesteps]) ** 0.5\n        sqrt_one_minus_alpha_prod = sqrt_one_minus_alpha_prod.flatten()\n        while len(sqrt_one_minus_alpha_prod.shape) < len(sample.shape):\n            sqrt_one_minus_alpha_prod = sqrt_one_minus_alpha_prod.unsqueeze(-1)\n\n        velocity = sqrt_alpha_prod * noise - sqrt_one_minus_alpha_prod * sample\n        return velocity\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n\n    # Copied from diffusers.schedulers.scheduling_ddpm.DDPMScheduler.previous_timestep\n    def previous_timestep(self, timestep):\n        if self.custom_timesteps:\n            index = (self.timesteps == timestep).nonzero(as_tuple=True)[0][0]\n            if index == self.timesteps.shape[0] - 1:\n                prev_t = torch.tensor(-1)\n            else:\n                prev_t = self.timesteps[index + 1]\n        else:\n            num_inference_steps = (\n                self.num_inference_steps if self.num_inference_steps else self.config.num_train_timesteps\n            )\n            prev_t = timestep - self.config.num_train_timesteps // num_inference_steps\n\n        return prev_t\n"
  },
  {
    "path": "modules/schedulers/scheduler_tdd.py",
    "content": "from typing import Union, List, Optional, Tuple\nimport numpy as np\nimport torch\nfrom diffusers.utils import  deprecate, logging\nfrom diffusers.configuration_utils import register_to_config\nfrom diffusers import DPMSolverSinglestepScheduler\nfrom diffusers.schedulers.scheduling_utils import SchedulerOutput\nfrom diffusers.utils.torch_utils import randn_tensor\n# from diffusers.schedulers.scheduling_tcd import *\n# from diffusers.schedulers.scheduling_dpmsolver_singlestep import *\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\nclass TDDScheduler(DPMSolverSinglestepScheduler):\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.0001,\n        beta_end: float = 0.02,\n        beta_schedule: str = \"linear\",\n        trained_betas: Optional[np.ndarray] = None,\n        solver_order: int = 1,\n        prediction_type: str = \"epsilon\",\n        thresholding: bool = False,\n        dynamic_thresholding_ratio: float = 0.995,\n        sample_max_value: float = 1.0,\n        algorithm_type: str = \"dpmsolver++\",\n        solver_type: str = \"midpoint\",\n        lower_order_final: bool = False,\n        use_karras_sigmas: Optional[bool] = False,\n        final_sigmas_type: Optional[str] = \"zero\",  # \"zero\", \"sigma_min\"\n        lambda_min_clipped: float = -float(\"inf\"),\n        variance_type: Optional[str] = None,\n        tdd_train_step: int = 250,\n        special_jump: bool = False,\n        t_l: int = -1,\n        use_flow_sigmas: bool = False,\n    ):\n        self.t_l = t_l\n        self.special_jump = special_jump\n        self.tdd_train_step = tdd_train_step\n        if algorithm_type == \"dpmsolver\":\n            deprecation_message = \"algorithm_type `dpmsolver` is deprecated and will be removed in a future version. Choose from `dpmsolver++` or `sde-dpmsolver++` instead\"\n            deprecate(\"algorithm_types=dpmsolver\", \"1.0.0\", deprecation_message)\n\n        if trained_betas is not None:\n            self.betas = torch.tensor(trained_betas, dtype=torch.float32)\n        elif beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            # this schedule is very specific to the latent diffusion model.\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        elif beta_schedule == \"squaredcos_cap_v2\":\n            # Glide cosine schedule\n            self.betas = betas_for_alpha_bar(num_train_timesteps)\n        else:\n            raise NotImplementedError(f\"{beta_schedule} does is not implemented for {self.__class__}\")\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n        # Currently we only support VP-type noise schedule\n        self.alpha_t = torch.sqrt(self.alphas_cumprod)\n        self.sigma_t = torch.sqrt(1 - self.alphas_cumprod)\n        self.lambda_t = torch.log(self.alpha_t) - torch.log(self.sigma_t)\n        self.sigmas = ((1 - self.alphas_cumprod) / self.alphas_cumprod) ** 0.5\n\n        # standard deviation of the initial noise distribution\n        self.init_noise_sigma = 1.0\n\n        # settings for DPM-Solver\n        if algorithm_type not in [\"dpmsolver\", \"dpmsolver++\"]:\n            if algorithm_type == \"deis\":\n                self.register_to_config(algorithm_type=\"dpmsolver++\")\n            else:\n                raise NotImplementedError(f\"{algorithm_type} does is not implemented for {self.__class__}\")\n        if solver_type not in [\"midpoint\", \"heun\"]:\n            if solver_type in [\"logrho\", \"bh1\", \"bh2\"]:\n                self.register_to_config(solver_type=\"midpoint\")\n            else:\n                raise NotImplementedError(f\"{solver_type} does is not implemented for {self.__class__}\")\n\n        if algorithm_type != \"dpmsolver++\" and final_sigmas_type == \"zero\":\n            raise ValueError(\n                f\"`final_sigmas_type` {final_sigmas_type} is not supported for `algorithm_type` {algorithm_type}. Please chooose `sigma_min` instead.\"\n            )\n\n        # setable values\n        self.num_inference_steps = None\n        timesteps = np.linspace(0, num_train_timesteps - 1, num_train_timesteps, dtype=np.float32)[::-1].copy()\n        self.timesteps = torch.from_numpy(timesteps)\n        self.model_outputs = [None] * solver_order\n        self.sample = None\n        self.order_list = self.get_order_list(num_train_timesteps)\n        self._step_index = None\n        self._begin_index = None\n        self.sigmas = self.sigmas.to(\"cpu\")  # to avoid too much CPU/GPU communication\n\n    def set_timesteps(self, num_inference_steps: int, device: Union[str, torch.device] = None):\n        self.num_inference_steps = num_inference_steps\n        # Clipping the minimum of all lambda(t) for numerical stability.\n        # This is critical for cosine (squaredcos_cap_v2) noise schedule.\n        #original_steps = self.config.original_inference_steps\n        if True:\n            original_steps=self.tdd_train_step\n            k = 1000 / original_steps\n            tcd_origin_timesteps = np.asarray(list(range(1, int(original_steps) + 1))) * k - 1\n        else:\n            tcd_origin_timesteps = np.asarray(list(range(0, int(self.config.num_train_timesteps))))\n        # TCD Inference Steps Schedule\n        tcd_origin_timesteps = tcd_origin_timesteps[::-1].copy()\n        # Select (approximately) evenly spaced indices from tcd_origin_timesteps.\n        inference_indices = np.linspace(0, len(tcd_origin_timesteps), num=num_inference_steps, endpoint=False)\n        inference_indices = np.floor(inference_indices).astype(np.int64)\n        timesteps = tcd_origin_timesteps[inference_indices]\n        if self.special_jump:\n            if self.tdd_train_step == 50:\n                pass\n            elif self.tdd_train_step == 250:\n                if num_inference_steps == 5:\n                    timesteps = np.array([999., 875., 751., 499., 251.])\n                elif num_inference_steps == 6:\n                    timesteps = np.array([999., 875., 751., 627., 499., 251.])\n                elif num_inference_steps == 7:\n                    timesteps = np.array([999., 875., 751., 627., 499., 375., 251.])\n\n        sigmas = np.array(((1 - self.alphas_cumprod) / self.alphas_cumprod) ** 0.5)\n        if self.config.use_karras_sigmas:\n            log_sigmas = np.log(sigmas)\n            sigmas = np.flip(sigmas).copy()\n            sigmas = self._convert_to_karras(in_sigmas=sigmas, num_inference_steps=num_inference_steps)\n            timesteps = np.array([self._sigma_to_t(sigma, log_sigmas) for sigma in sigmas]).round()\n        else:\n            sigmas = np.interp(timesteps, np.arange(0, len(sigmas)), sigmas)\n\n        if self.config.final_sigmas_type == \"sigma_min\":\n            sigma_last = ((1 - self.alphas_cumprod[0]) / self.alphas_cumprod[0]) ** 0.5\n        elif self.config.final_sigmas_type == \"zero\":\n            sigma_last = 0\n        else:\n            raise ValueError(\n                f\" `final_sigmas_type` must be one of `sigma_min` or `zero`, but got {self.config.final_sigmas_type}\"\n            )\n        sigmas = np.concatenate([sigmas, [sigma_last]]).astype(np.float32)\n\n        self.sigmas = torch.from_numpy(sigmas).to(device=device)\n\n        self.timesteps = torch.from_numpy(timesteps).to(device=device, dtype=torch.int64)\n        self.model_outputs = [None] * self.config.solver_order\n        self.sample = None\n\n        if not self.config.lower_order_final and num_inference_steps % self.config.solver_order != 0:\n            logger.warning(\n                \"Changing scheduler {self.config} to have `lower_order_final` set to True to handle uneven amount of inference steps. Please make sure to always use an even number of `num_inference steps when using `lower_order_final=False`.\"\n            )\n            self.register_to_config(lower_order_final=True)\n\n        if not self.config.lower_order_final and self.config.final_sigmas_type == \"zero\":\n            logger.warning(\n                \" `last_sigmas_type='zero'` is not supported for `lower_order_final=False`. Changing scheduler {self.config} to have `lower_order_final` set to True.\"\n            )\n            self.register_to_config(lower_order_final=True)\n\n        self.order_list = self.get_order_list(num_inference_steps)\n\n        # add an index counter for schedulers that allow duplicated timesteps\n        self._step_index = None\n        self._begin_index = None\n        self.sigmas = self.sigmas.to(\"cpu\")  # to avoid too much CPU/GPU communication\n\n    def set_timesteps_s(self, eta: float = 0.0):\n        # Clipping the minimum of all lambda(t) for numerical stability.\n        # This is critical for cosine (squaredcos_cap_v2) noise schedule.\n        num_inference_steps = self.num_inference_steps\n        device = self.timesteps.device\n        if True:\n            original_steps=self.tdd_train_step\n            k = 1000 / original_steps\n            tcd_origin_timesteps = np.asarray(list(range(1, int(original_steps) + 1))) * k - 1\n        else:\n            tcd_origin_timesteps = np.asarray(list(range(0, int(self.config.num_train_timesteps))))\n        # TCD Inference Steps Schedule\n        tcd_origin_timesteps = tcd_origin_timesteps[::-1].copy()\n        # Select (approximately) evenly spaced indices from tcd_origin_timesteps.\n        inference_indices = np.linspace(0, len(tcd_origin_timesteps), num=num_inference_steps, endpoint=False)\n        inference_indices = np.floor(inference_indices).astype(np.int64)\n        timesteps = tcd_origin_timesteps[inference_indices]\n        if self.special_jump:\n            if self.tdd_train_step == 50:\n                timesteps = np.array([999., 879., 759., 499., 259.])\n            elif self.tdd_train_step == 250:\n                if num_inference_steps == 5:\n                    timesteps = np.array([999., 875., 751., 499., 251.])\n                elif num_inference_steps == 6:\n                    timesteps = np.array([999., 875., 751., 627., 499., 251.])\n                elif num_inference_steps == 7:\n                    timesteps = np.array([999., 875., 751., 627., 499., 375., 251.])\n\n        timesteps_s = np.floor((1 - eta) * timesteps).astype(np.int64)\n\n        sigmas_s = np.array(((1 - self.alphas_cumprod) / self.alphas_cumprod) ** 0.5)\n        if self.config.use_karras_sigmas:\n            pass\n        else:\n            sigmas_s = np.interp(timesteps_s, np.arange(0, len(sigmas_s)), sigmas_s)\n\n        if self.config.final_sigmas_type == \"sigma_min\":\n            sigma_last = ((1 - self.alphas_cumprod[0]) / self.alphas_cumprod[0]) ** 0.5\n        elif self.config.final_sigmas_type == \"zero\":\n            sigma_last = 0\n        else:\n            raise ValueError(\n                f\" `final_sigmas_type` must be one of `sigma_min` or `zero`, but got {self.config.final_sigmas_type}\"\n            )\n\n        sigmas_s = np.concatenate([sigmas_s, [sigma_last]]).astype(np.float32)\n        self.sigmas_s = torch.from_numpy(sigmas_s).to(device=device)\n        self.timesteps_s = torch.from_numpy(timesteps_s).to(device=device, dtype=torch.int64)\n\n    def step(\n        self,\n        model_output: torch.FloatTensor,\n        timestep: int,\n        sample: torch.FloatTensor,\n        eta: float = 0.0,\n        generator: Optional[torch.Generator] = None,\n        return_dict: bool = True,\n    ) -> Union[SchedulerOutput, Tuple]:\n        if self.num_inference_steps is None:\n            raise ValueError(\n                \"Number of inference steps is 'None', you need to run 'set_timesteps' after creating the scheduler\"\n            )\n\n        if self.step_index is None:\n            self._init_step_index(timestep)\n\n        if self.step_index == 0:\n            self.set_timesteps_s(eta)\n\n        model_output = self.convert_model_output(model_output, sample=sample)\n        for i in range(self.config.solver_order - 1):\n            self.model_outputs[i] = self.model_outputs[i + 1]\n        self.model_outputs[-1] = model_output\n\n        order = self.order_list[self.step_index]\n\n        #  For img2img denoising might start with order>1 which is not possible\n        #  In this case make sure that the first two steps are both order=1\n        while self.model_outputs[-order] is None:\n            order -= 1\n\n        # For single-step solvers, we use the initial value at each time with order = 1.\n        if order == 1:\n            self.sample = sample\n\n        prev_sample = self.singlestep_dpm_solver_update(self.model_outputs, sample=self.sample, order=order)\n\n        if eta > 0:\n            if self.step_index != self.num_inference_steps - 1:\n\n                alpha_prod_s = self.alphas_cumprod[self.timesteps_s[self.step_index + 1]]\n                alpha_prod_t_prev = self.alphas_cumprod[self.timesteps[self.step_index + 1]]\n\n                noise = randn_tensor(\n                    model_output.shape, generator=generator, device=model_output.device, dtype=prev_sample.dtype\n                )\n                prev_sample = (alpha_prod_t_prev / alpha_prod_s).sqrt() * prev_sample + (\n                    1 - alpha_prod_t_prev / alpha_prod_s\n                ).sqrt() * noise\n\n        # upon completion increase step index by one\n        self._step_index += 1\n\n        if not return_dict:\n            return (prev_sample,)\n\n        return SchedulerOutput(prev_sample=prev_sample)\n\n    def dpm_solver_first_order_update(\n        self,\n        model_output: torch.FloatTensor,\n        *args,\n        sample: torch.FloatTensor = None,\n        **kwargs,\n    ) -> torch.FloatTensor:\n        timestep = args[0] if len(args) > 0 else kwargs.pop(\"timestep\", None)\n        prev_timestep = args[1] if len(args) > 1 else kwargs.pop(\"prev_timestep\", None)\n        if sample is None:\n            if len(args) > 2:\n                sample = args[2]\n            else:\n                raise ValueError(\" missing `sample` as a required keyward argument\")\n        if timestep is not None:\n            deprecate(\n                \"timesteps\",\n                \"1.0.0\",\n                \"Passing `timesteps` is deprecated and has no effect as model output conversion is now handled via an internal counter `self.step_index`\",\n            )\n\n        if prev_timestep is not None:\n            deprecate(\n                \"prev_timestep\",\n                \"1.0.0\",\n                \"Passing `prev_timestep` is deprecated and has no effect as model output conversion is now handled via an internal counter `self.step_index`\",\n            )\n        sigma_t, sigma_s = self.sigmas_s[self.step_index + 1], self.sigmas[self.step_index]\n        alpha_t, sigma_t = self._sigma_to_alpha_sigma_t(sigma_t)\n        alpha_s, sigma_s = self._sigma_to_alpha_sigma_t(sigma_s)\n        lambda_t = torch.log(alpha_t) - torch.log(sigma_t)\n        lambda_s = torch.log(alpha_s) - torch.log(sigma_s)\n        h = lambda_t - lambda_s\n        if self.config.algorithm_type == \"dpmsolver++\":\n            x_t = (sigma_t / sigma_s) * sample - (alpha_t * (torch.exp(-h) - 1.0)) * model_output\n        elif self.config.algorithm_type == \"dpmsolver\":\n            x_t = (alpha_t / alpha_s) * sample - (sigma_t * (torch.exp(h) - 1.0)) * model_output\n        return x_t\n\n    def singlestep_dpm_solver_second_order_update(\n        self,\n        model_output_list: List[torch.FloatTensor],\n        *args,\n        sample: torch.FloatTensor = None,\n        **kwargs,\n    ) -> torch.FloatTensor:\n        timestep_list = args[0] if len(args) > 0 else kwargs.pop(\"timestep_list\", None)\n        prev_timestep = args[1] if len(args) > 1 else kwargs.pop(\"prev_timestep\", None)\n        if sample is None:\n            if len(args) > 2:\n                sample = args[2]\n            else:\n                raise ValueError(\" missing `sample` as a required keyward argument\")\n        if timestep_list is not None:\n            deprecate(\n                \"timestep_list\",\n                \"1.0.0\",\n                \"Passing `timestep_list` is deprecated and has no effect as model output conversion is now handled via an internal counter `self.step_index`\",\n            )\n\n        if prev_timestep is not None:\n            deprecate(\n                \"prev_timestep\",\n                \"1.0.0\",\n                \"Passing `prev_timestep` is deprecated and has no effect as model output conversion is now handled via an internal counter `self.step_index`\",\n            )\n        sigma_t, sigma_s0, sigma_s1 = (\n            self.sigmas_s[self.step_index + 1],\n            self.sigmas[self.step_index],\n            self.sigmas[self.step_index - 1],\n        )\n\n        alpha_t, sigma_t = self._sigma_to_alpha_sigma_t(sigma_t)\n        alpha_s0, sigma_s0 = self._sigma_to_alpha_sigma_t(sigma_s0)\n        alpha_s1, sigma_s1 = self._sigma_to_alpha_sigma_t(sigma_s1)\n\n        lambda_t = torch.log(alpha_t) - torch.log(sigma_t)\n        lambda_s0 = torch.log(alpha_s0) - torch.log(sigma_s0)\n        lambda_s1 = torch.log(alpha_s1) - torch.log(sigma_s1)\n\n        m0, m1 = model_output_list[-1], model_output_list[-2]\n\n        h, h_0 = lambda_t - lambda_s1, lambda_s0 - lambda_s1\n        r0 = h_0 / h\n        D0, D1 = m1, (1.0 / r0) * (m0 - m1)\n        if self.config.algorithm_type == \"dpmsolver++\":\n            # See https://arxiv.org/abs/2211.01095 for detailed derivations\n            if self.config.solver_type == \"midpoint\":\n                x_t = (\n                    (sigma_t / sigma_s1) * sample\n                    - (alpha_t * (torch.exp(-h) - 1.0)) * D0\n                    - 0.5 * (alpha_t * (torch.exp(-h) - 1.0)) * D1\n                )\n            elif self.config.solver_type == \"heun\":\n                x_t = (\n                    (sigma_t / sigma_s1) * sample\n                    - (alpha_t * (torch.exp(-h) - 1.0)) * D0\n                    + (alpha_t * ((torch.exp(-h) - 1.0) / h + 1.0)) * D1\n                )\n        elif self.config.algorithm_type == \"dpmsolver\":\n            # See https://arxiv.org/abs/2206.00927 for detailed derivations\n            if self.config.solver_type == \"midpoint\":\n                x_t = (\n                    (alpha_t / alpha_s1) * sample\n                    - (sigma_t * (torch.exp(h) - 1.0)) * D0\n                    - 0.5 * (sigma_t * (torch.exp(h) - 1.0)) * D1\n                )\n            elif self.config.solver_type == \"heun\":\n                x_t = (\n                    (alpha_t / alpha_s1) * sample\n                    - (sigma_t * (torch.exp(h) - 1.0)) * D0\n                    - (sigma_t * ((torch.exp(h) - 1.0) / h - 1.0)) * D1\n                )\n        return x_t\n\n    def singlestep_dpm_solver_update(\n        self,\n        model_output_list: List[torch.FloatTensor],\n        *args,\n        sample: torch.FloatTensor = None,\n        order: int = None,\n        **kwargs,\n    ) -> torch.FloatTensor:\n        timestep_list = args[0] if len(args) > 0 else kwargs.pop(\"timestep_list\", None)\n        prev_timestep = args[1] if len(args) > 1 else kwargs.pop(\"prev_timestep\", None)\n        if sample is None:\n            if len(args) > 2:\n                sample = args[2]\n            else:\n                raise ValueError(\" missing`sample` as a required keyward argument\")\n        if order is None:\n            if len(args) > 3:\n                order = args[3]\n            else:\n                raise ValueError(\" missing `order` as a required keyward argument\")\n        if timestep_list is not None:\n            deprecate(\n                \"timestep_list\",\n                \"1.0.0\",\n                \"Passing `timestep_list` is deprecated and has no effect as model output conversion is now handled via an internal counter `self.step_index`\",\n            )\n\n        if prev_timestep is not None:\n            deprecate(\n                \"prev_timestep\",\n                \"1.0.0\",\n                \"Passing `prev_timestep` is deprecated and has no effect as model output conversion is now handled via an internal counter `self.step_index`\",\n            )\n\n        if order == 1:\n            return self.dpm_solver_first_order_update(model_output_list[-1], sample=sample)\n        elif order == 2:\n            return self.singlestep_dpm_solver_second_order_update(model_output_list, sample=sample)\n        else:\n            raise ValueError(f\"Order must be 1, 2, got {order}\")\n\n    def convert_model_output(\n        self,\n        model_output: torch.FloatTensor,\n        *args,\n        sample: torch.FloatTensor = None,\n        **kwargs,\n    ) -> torch.FloatTensor:\n        \"\"\"\n        Convert the model output to the corresponding type the DPMSolver/DPMSolver++ algorithm needs. DPM-Solver is\n        designed to discretize an integral of the noise prediction model, and DPM-Solver++ is designed to discretize an\n        integral of the data prediction model.\n\n        <Tip>\n\n        The algorithm and model type are decoupled. You can use either DPMSolver or DPMSolver++ for both noise\n        prediction and data prediction models.\n\n        </Tip>\n\n        Args:\n            model_output (`torch.FloatTensor`):\n                The direct output from the learned diffusion model.\n            sample (`torch.FloatTensor`):\n                A current instance of a sample created by the diffusion process.\n\n        Returns:\n            `torch.FloatTensor`:\n                The converted model output.\n        \"\"\"\n        timestep = args[0] if len(args) > 0 else kwargs.pop(\"timestep\", None)\n        if sample is None:\n            if len(args) > 1:\n                sample = args[1]\n            else:\n                raise ValueError(\"missing `sample` as a required keyward argument\")\n        if timestep is not None:\n            deprecate(\n                \"timesteps\",\n                \"1.0.0\",\n                \"Passing `timesteps` is deprecated and has no effect as model output conversion is now handled via an internal counter `self.step_index`\",\n            )\n        # DPM-Solver++ needs to solve an integral of the data prediction model.\n        if self.config.algorithm_type == \"dpmsolver++\":\n            if self.config.prediction_type == \"epsilon\":\n                # DPM-Solver and DPM-Solver++ only need the \"mean\" output.\n                if self.config.variance_type in [\"learned_range\"]:\n                    model_output = model_output[:, :3]\n                sigma = self.sigmas[self.step_index]\n                alpha_t, sigma_t = self._sigma_to_alpha_sigma_t(sigma)\n                x0_pred = (sample - sigma_t * model_output) / alpha_t\n            elif self.config.prediction_type == \"sample\":\n                x0_pred = model_output\n            elif self.config.prediction_type == \"v_prediction\":\n                sigma = self.sigmas[self.step_index]\n                alpha_t, sigma_t = self._sigma_to_alpha_sigma_t(sigma)\n                x0_pred = alpha_t * sample - sigma_t * model_output\n            else:\n                raise ValueError(\n                    f\"prediction_type given as {self.config.prediction_type} must be one of `epsilon`, `sample`, or\"\n                    \" `v_prediction` for the DPMSolverSinglestepScheduler.\"\n                )\n\n            if self.step_index <= self.t_l:\n                if self.config.thresholding:\n                    x0_pred = self._threshold_sample(x0_pred)\n\n            return x0_pred\n        # DPM-Solver needs to solve an integral of the noise prediction model.\n        elif self.config.algorithm_type == \"dpmsolver\":\n            if self.config.prediction_type == \"epsilon\":\n                # DPM-Solver and DPM-Solver++ only need the \"mean\" output.\n                if self.config.variance_type in [\"learned_range\"]:\n                    model_output = model_output[:, :3]\n                return model_output\n            elif self.config.prediction_type == \"sample\":\n                sigma = self.sigmas[self.step_index]\n                alpha_t, sigma_t = self._sigma_to_alpha_sigma_t(sigma)\n                epsilon = (sample - alpha_t * model_output) / sigma_t\n                return epsilon\n            elif self.config.prediction_type == \"v_prediction\":\n                sigma = self.sigmas[self.step_index]\n                alpha_t, sigma_t = self._sigma_to_alpha_sigma_t(sigma)\n                epsilon = alpha_t * model_output + sigma_t * sample\n                return epsilon\n            else:\n                raise ValueError(\n                    f\"prediction_type given as {self.config.prediction_type} must be one of `epsilon`, `sample`, or\"\n                    \" `v_prediction` for the DPMSolverSinglestepScheduler.\"\n                )\n"
  },
  {
    "path": "modules/schedulers/scheduler_ufogen.py",
    "content": "# Copyright 2023 UC Berkeley Team and The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\n# DISCLAIMER: This file is strongly influenced by https://github.com/ermongroup/ddim and https://github.com/xuyanwu/SIDDMs-UFOGen\n\nimport math\nfrom dataclasses import dataclass\nfrom typing import List, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\n\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.utils import BaseOutput, logging\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom diffusers.schedulers.scheduling_utils import SchedulerMixin\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\n@dataclass\n# Copied from diffusers.schedulers.scheduling_ddpm.DDPMSchedulerOutput with DDPM->UFOGen\nclass UFOGenSchedulerOutput(BaseOutput):\n    \"\"\"\n    Output class for the scheduler's `step` function output.\n\n    Args:\n        prev_sample (`torch.FloatTensor` of shape `(batch_size, num_channels, height, width)` for images):\n            Computed sample `(x_{t-1})` of previous timestep. `prev_sample` should be used as next model input in the\n            denoising loop.\n        pred_original_sample (`torch.FloatTensor` of shape `(batch_size, num_channels, height, width)` for images):\n            The predicted denoised sample `(x_{0})` based on the model output from the current timestep.\n            `pred_original_sample` can be used to preview progress or for guidance.\n    \"\"\"\n\n    prev_sample: torch.FloatTensor\n    pred_original_sample: Optional[torch.FloatTensor] = None\n\n\n# Copied from diffusers.schedulers.scheduling_ddpm.betas_for_alpha_bar\ndef betas_for_alpha_bar(\n    num_diffusion_timesteps,\n    max_beta=0.999,\n    alpha_transform_type=\"cosine\",\n):\n    \"\"\"\n    Create a beta schedule that discretizes the given alpha_t_bar function, which defines the cumulative product of\n    (1-beta) over time from t = [0,1].\n\n    Contains a function alpha_bar that takes an argument t and transforms it to the cumulative product of (1-beta) up\n    to that part of the diffusion process.\n\n\n    Args:\n        num_diffusion_timesteps (`int`): the number of betas to produce.\n        max_beta (`float`): the maximum beta to use; use values lower than 1 to\n                     prevent singularities.\n        alpha_transform_type (`str`, *optional*, default to `cosine`): the type of noise schedule for alpha_bar.\n                     Choose from `cosine` or `exp`\n\n    Returns:\n        betas (`np.ndarray`): the betas used by the scheduler to step the model outputs\n    \"\"\"\n    if alpha_transform_type == \"cosine\":\n\n        def alpha_bar_fn(t):\n            return math.cos((t + 0.008) / 1.008 * math.pi / 2) ** 2\n\n    elif alpha_transform_type == \"exp\":\n\n        def alpha_bar_fn(t):\n            return math.exp(t * -12.0)\n\n    else:\n        raise ValueError(f\"Unsupported alpha_tranform_type: {alpha_transform_type}\")\n\n    betas = []\n    for i in range(num_diffusion_timesteps):\n        t1 = i / num_diffusion_timesteps\n        t2 = (i + 1) / num_diffusion_timesteps\n        betas.append(min(1 - alpha_bar_fn(t2) / alpha_bar_fn(t1), max_beta))\n    return torch.tensor(betas, dtype=torch.float32)\n\n\n# Copied from diffusers.schedulers.scheduling_ddim.rescale_zero_terminal_snr\ndef rescale_zero_terminal_snr(betas):\n    \"\"\"\n    Rescales betas to have zero terminal SNR Based on https://arxiv.org/pdf/2305.08891.pdf (Algorithm 1)\n\n\n    Args:\n        betas (`torch.FloatTensor`):\n            the betas that the scheduler is being initialized with.\n\n    Returns:\n        `torch.FloatTensor`: rescaled betas with zero terminal SNR\n    \"\"\"\n    # Convert betas to alphas_bar_sqrt\n    alphas = 1.0 - betas\n    alphas_cumprod = torch.cumprod(alphas, dim=0)\n    alphas_bar_sqrt = alphas_cumprod.sqrt()\n\n    # Store old values.\n    alphas_bar_sqrt_0 = alphas_bar_sqrt[0].clone()\n    alphas_bar_sqrt_T = alphas_bar_sqrt[-1].clone()\n\n    # Shift so the last timestep is zero.\n    alphas_bar_sqrt -= alphas_bar_sqrt_T\n\n    # Scale so the first timestep is back to the old value.\n    alphas_bar_sqrt *= alphas_bar_sqrt_0 / (alphas_bar_sqrt_0 - alphas_bar_sqrt_T)\n\n    # Convert alphas_bar_sqrt to betas\n    alphas_bar = alphas_bar_sqrt**2  # Revert sqrt\n    alphas = alphas_bar[1:] / alphas_bar[:-1]  # Revert cumprod\n    alphas = torch.cat([alphas_bar[0:1], alphas])\n    betas = 1 - alphas\n\n    return betas\n\n\nclass UFOGenScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    `UFOGenScheduler` implements multistep and onestep sampling for a UFOGen model, introduced in\n    [UFOGen: You Forward Once Large Scale Text-to-Image Generation via Diffusion GANs](https://arxiv.org/abs/2311.09257)\n    by Yanwu Xu, Yang Zhao, Zhisheng Xiao, and Tingbo Hou. UFOGen is a varianet of the denoising diffusion GAN (DDGAN)\n    model designed for one-step sampling.\n\n    This model inherits from [`SchedulerMixin`] and [`ConfigMixin`]. Check the superclass documentation for the generic\n    methods the library implements for all schedulers such as loading and saving.\n\n    Args:\n        num_train_timesteps (`int`, defaults to 1000):\n            The number of diffusion steps to train the model.\n        beta_start (`float`, defaults to 0.0001):\n            The starting `beta` value of inference.\n        beta_end (`float`, defaults to 0.02):\n            The final `beta` value.\n        beta_schedule (`str`, defaults to `\"linear\"`):\n            The beta schedule, a mapping from a beta range to a sequence of betas for stepping the model. Choose from\n            `linear`, `scaled_linear`, or `squaredcos_cap_v2`.\n        clip_sample (`bool`, defaults to `True`):\n            Clip the predicted sample for numerical stability.\n        clip_sample_range (`float`, defaults to 1.0):\n            The maximum magnitude for sample clipping. Valid only when `clip_sample=True`.\n        set_alpha_to_one (`bool`, defaults to `True`):\n            Each diffusion step uses the alphas product value at that step and at the previous one. For the final step\n            there is no previous alpha. When this option is `True` the previous alpha product is fixed to `1`,\n            otherwise it uses the alpha value at step 0.\n        prediction_type (`str`, defaults to `epsilon`, *optional*):\n            Prediction type of the scheduler function; can be `epsilon` (predicts the noise of the diffusion process),\n            `sample` (directly predicts the noisy sample`) or `v_prediction` (see section 2.4 of [Imagen\n            Video](https://imagen.research.google/video/paper.pdf) paper).\n        thresholding (`bool`, defaults to `False`):\n            Whether to use the \"dynamic thresholding\" method. This is unsuitable for latent-space diffusion models such\n            as Stable Diffusion.\n        dynamic_thresholding_ratio (`float`, defaults to 0.995):\n            The ratio for the dynamic thresholding method. Valid only when `thresholding=True`.\n        sample_max_value (`float`, defaults to 1.0):\n            The threshold value for dynamic thresholding. Valid only when `thresholding=True`.\n        timestep_spacing (`str`, defaults to `\"leading\"`):\n            The way the timesteps should be scaled. Refer to Table 2 of the [Common Diffusion Noise Schedules and\n            Sample Steps are Flawed](https://huggingface.co/papers/2305.08891) for more information.\n        steps_offset (`int`, defaults to 0):\n            An offset added to the inference steps. You can use a combination of `offset=1` and\n            `set_alpha_to_one=False` to make the last step use step 0 for the previous alpha product like in Stable\n            Diffusion.\n        rescale_betas_zero_snr (`bool`, defaults to `False`):\n            Whether to rescale the betas to have zero terminal SNR. This enables the model to generate very bright and\n            dark samples instead of limiting it to samples with medium brightness. Loosely related to\n            [`--offset_noise`](https://github.com/huggingface/diffusers/blob/74fd735eb073eb1d774b1ab4154a0876eb82f055/examples/dreambooth/train_dreambooth.py#L506).\n        denoising_step_size (`int`, defaults to 250):\n            The denoising step size parameter from the UFOGen paper. The number of steps used for training is roughly\n            `math.ceil(num_train_timesteps / denoising_step_size)`.\n    \"\"\"\n\n    order = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.0001,\n        beta_end: float = 0.02,\n        beta_schedule: str = \"linear\",\n        trained_betas: Optional[Union[np.ndarray, List[float]]] = None,\n        clip_sample: bool = True,\n        set_alpha_to_one: bool = True,\n        prediction_type: str = \"epsilon\",\n        thresholding: bool = False,\n        dynamic_thresholding_ratio: float = 0.995,\n        clip_sample_range: float = 1.0,\n        sample_max_value: float = 1.0,\n        timestep_spacing: str = \"leading\",\n        steps_offset: int = 0,\n        rescale_betas_zero_snr: bool = False,\n        denoising_step_size: int = 250,\n    ):\n        if trained_betas is not None:\n            self.betas = torch.tensor(trained_betas, dtype=torch.float32)\n        elif beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            # this schedule is very specific to the latent diffusion model.\n            self.betas = torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n        elif beta_schedule == \"squaredcos_cap_v2\":\n            # Glide cosine schedule\n            self.betas = betas_for_alpha_bar(num_train_timesteps)\n        elif beta_schedule == \"sigmoid\":\n            # GeoDiff sigmoid schedule\n            betas = torch.linspace(-6, 6, num_train_timesteps)\n            self.betas = torch.sigmoid(betas) * (beta_end - beta_start) + beta_start\n        else:\n            raise NotImplementedError(f\"{beta_schedule} does is not implemented for {self.__class__}\")\n\n        # Rescale for zero SNR\n        if rescale_betas_zero_snr:\n            self.betas = rescale_zero_terminal_snr(self.betas)\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n\n        # For the final step, there is no previous alphas_cumprod because we are already at 0\n        # `set_alpha_to_one` decides whether we set this parameter simply to one or\n        # whether we use the final alpha of the \"non-previous\" one.\n        self.final_alpha_cumprod = torch.tensor(1.0) if set_alpha_to_one else self.alphas_cumprod[0]\n\n        # standard deviation of the initial noise distribution\n        self.init_noise_sigma = 1.0\n\n        # setable values\n        self.custom_timesteps = False\n        self.num_inference_steps = None\n        self.timesteps = torch.from_numpy(np.arange(0, num_train_timesteps)[::-1].copy())\n\n    def scale_model_input(self, sample: torch.FloatTensor, timestep: Optional[int] = None) -> torch.FloatTensor:\n        \"\"\"\n        Ensures interchangeability with schedulers that need to scale the denoising model input depending on the\n        current timestep.\n\n        Args:\n            sample (`torch.FloatTensor`):\n                The input sample.\n            timestep (`int`, *optional*):\n                The current timestep in the diffusion chain.\n\n        Returns:\n            `torch.FloatTensor`:\n                A scaled input sample.\n        \"\"\"\n        return sample\n\n    def set_timesteps(\n        self,\n        num_inference_steps: Optional[int] = None,\n        device: Union[str, torch.device] = None,\n        timesteps: Optional[List[int]] = None,\n    ):\n        \"\"\"\n        Sets the discrete timesteps used for the diffusion chain (to be run before inference).\n\n        Args:\n            num_inference_steps (`int`):\n                The number of diffusion steps used when generating samples with a pre-trained model. If used,\n                `timesteps` must be `None`.\n            device (`str` or `torch.device`, *optional*):\n                The device to which the timesteps should be moved to. If `None`, the timesteps are not moved.\n            timesteps (`List[int]`, *optional*):\n                Custom timesteps used to support arbitrary spacing between timesteps. If `None`, then the default\n                timestep spacing strategy of equal spacing between timesteps is used. If `timesteps` is passed,\n                `num_inference_steps` must be `None`.\n\n        \"\"\"\n        if num_inference_steps is not None and timesteps is not None:\n            raise ValueError(\"Can only pass one of `num_inference_steps` or `custom_timesteps`.\")\n\n        if timesteps is not None:\n            for i in range(1, len(timesteps)):\n                if timesteps[i] >= timesteps[i - 1]:\n                    raise ValueError(\"`custom_timesteps` must be in descending order.\")\n\n            if timesteps[0] >= self.config.num_train_timesteps:\n                raise ValueError(\n                    f\"`timesteps` must start before `self.config.train_timesteps`:\"\n                    f\" {self.config.num_train_timesteps}.\"\n                )\n\n            timesteps = np.array(timesteps, dtype=np.int64)\n            self.custom_timesteps = True\n        else:\n            if num_inference_steps > self.config.num_train_timesteps:\n                raise ValueError(\n                    f\"`num_inference_steps`: {num_inference_steps} cannot be larger than `self.config.train_timesteps`:\"\n                    f\" {self.config.num_train_timesteps} as the unet model trained with this scheduler can only handle\"\n                    f\" maximal {self.config.num_train_timesteps} timesteps.\"\n                )\n\n            self.num_inference_steps = num_inference_steps\n            self.custom_timesteps = False\n\n            if num_inference_steps == 1:\n                # Set the timestep schedule to num_train_timesteps - 1 rather than 0\n                # (that is, the one-step timestep schedule is always trailing rather than leading or linspace)\n                timesteps = np.array([self.config.num_train_timesteps - 1], dtype=np.int64)\n            else:\n                if self.config.timestep_spacing == \"linspace\":\n                    timesteps = (\n                        np.linspace(0, self.config.num_train_timesteps - 1, num_inference_steps)\n                        .round()[::-1]\n                        .copy()\n                        .astype(np.int64)\n                    )\n                elif self.config.timestep_spacing == \"leading\":\n                    step_ratio = self.config.num_train_timesteps // self.num_inference_steps\n                    # creates integer timesteps by multiplying by ratio\n                    # casting to int to avoid issues when num_inference_step is power of 3\n                    timesteps = (np.arange(0, num_inference_steps) * step_ratio).round()[::-1].copy().astype(np.int64)\n                    timesteps += self.config.steps_offset\n                elif self.config.timestep_spacing == \"trailing\":\n                    step_ratio = self.config.num_train_timesteps / self.num_inference_steps\n                    # creates integer timesteps by multiplying by ratio\n                    # casting to int to avoid issues when num_inference_step is power of 3\n                    timesteps = np.round(np.arange(self.config.num_train_timesteps, 0, -step_ratio)).astype(np.int64)\n                    timesteps -= 1\n                else:\n                    raise ValueError(\n                        f\"{self.config.timestep_spacing} is not supported. Please make sure to choose one of 'linspace', 'leading' or 'trailing'.\"\n                    )\n\n        self.timesteps = torch.from_numpy(timesteps).to(device)\n\n    # Copied from diffusers.schedulers.scheduling_ddpm.DDPMScheduler._threshold_sample\n    def _threshold_sample(self, sample: torch.FloatTensor) -> torch.FloatTensor:\n        \"\"\"\n        \"Dynamic thresholding: At each sampling step we set s to a certain percentile absolute pixel value in xt0 (the\n        prediction of x_0 at timestep t), and if s > 1, then we threshold xt0 to the range [-s, s] and then divide by\n        s. Dynamic thresholding pushes saturated pixels (those near -1 and 1) inwards, thereby actively preventing\n        pixels from saturation at each step. We find that dynamic thresholding results in significantly better\n        photorealism as well as better image-text alignment, especially when using very large guidance weights.\"\n\n        https://arxiv.org/abs/2205.11487\n        \"\"\"\n        dtype = sample.dtype\n        batch_size, channels, *remaining_dims = sample.shape\n\n        if dtype not in (torch.float32, torch.float64):\n            sample = sample.float()  # upcast for quantile calculation, and clamp not implemented for cpu half\n\n        # Flatten sample for doing quantile calculation along each image\n        sample = sample.reshape(batch_size, channels * np.prod(remaining_dims))\n\n        abs_sample = sample.abs()  # \"a certain percentile absolute pixel value\"\n\n        s = torch.quantile(abs_sample, self.config.dynamic_thresholding_ratio, dim=1)\n        s = torch.clamp(\n            s, min=1, max=self.config.sample_max_value\n        )  # When clamped to min=1, equivalent to standard clipping to [-1, 1]\n        s = s.unsqueeze(1)  # (batch_size, 1) because clamp will broadcast along dim=0\n        sample = torch.clamp(sample, -s, s) / s  # \"we threshold xt0 to the range [-s, s] and then divide by s\"\n\n        sample = sample.reshape(batch_size, channels, *remaining_dims)\n        sample = sample.to(dtype)\n\n        return sample\n\n    def step(\n        self,\n        model_output: torch.FloatTensor,\n        timestep: int,\n        sample: torch.FloatTensor,\n        generator: Optional[torch.Generator] = None,\n        return_dict: bool = True,\n    ) -> Union[UFOGenSchedulerOutput, Tuple]:\n        \"\"\"\n        Predict the sample from the previous timestep by reversing the SDE. This function propagates the diffusion\n        process from the learned model outputs (most often the predicted noise).\n\n        Args:\n            model_output (`torch.FloatTensor`):\n                The direct output from learned diffusion model.\n            timestep (`float`):\n                The current discrete timestep in the diffusion chain.\n            sample (`torch.FloatTensor`):\n                A current instance of a sample created by the diffusion process.\n            generator (`torch.Generator`, *optional*):\n                A random number generator.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~schedulers.scheduling_ufogen.UFOGenSchedulerOutput`] or `tuple`.\n\n        Returns:\n            [`~schedulers.scheduling_ddpm.UFOGenSchedulerOutput`] or `tuple`:\n                If return_dict is `True`, [`~schedulers.scheduling_ufogen.UFOGenSchedulerOutput`] is returned, otherwise a\n                tuple is returned where the first element is the sample tensor.\n\n        \"\"\"\n        # 0. Resolve timesteps\n        t = timestep\n        prev_t = self.previous_timestep(t)\n\n        # 1. compute alphas, betas\n        alpha_prod_t = self.alphas_cumprod[t]\n        alpha_prod_t_prev = self.alphas_cumprod[prev_t] if prev_t >= 0 else self.final_alpha_cumprod\n        beta_prod_t = 1 - alpha_prod_t\n        # beta_prod_t_prev = 1 - alpha_prod_t_prev\n        # current_alpha_t = alpha_prod_t / alpha_prod_t_prev\n        # current_beta_t = 1 - current_alpha_t\n\n        # 2. compute predicted original sample from predicted noise also called\n        # \"predicted x_0\" of formula (15) from https://arxiv.org/pdf/2006.11239.pdf\n        if self.config.prediction_type == \"epsilon\":\n            pred_original_sample = (sample - beta_prod_t ** (0.5) * model_output) / alpha_prod_t ** (0.5)\n        elif self.config.prediction_type == \"sample\":\n            pred_original_sample = model_output\n        elif self.config.prediction_type == \"v_prediction\":\n            pred_original_sample = (alpha_prod_t**0.5) * sample - (beta_prod_t**0.5) * model_output\n        else:\n            raise ValueError(\n                f\"prediction_type given as {self.config.prediction_type} must be one of `epsilon`, `sample` or\"\n                \" `v_prediction`  for UFOGenScheduler.\"\n            )\n\n        # 3. Clip or threshold \"predicted x_0\"\n        if self.config.thresholding:\n            pred_original_sample = self._threshold_sample(pred_original_sample)\n        elif self.config.clip_sample:\n            pred_original_sample = pred_original_sample.clamp(\n                -self.config.clip_sample_range, self.config.clip_sample_range\n            )\n\n        # 4. Single-step or multi-step sampling\n        # Noise is not used on the final timestep of the timestep schedule.\n        # This also means that noise is not used for one-step sampling.\n        if t != self.timesteps[-1]:\n            device = model_output.device\n            noise = randn_tensor(model_output.shape, generator=generator, device=device, dtype=model_output.dtype)\n            sqrt_alpha_prod_t_prev = alpha_prod_t_prev**0.5\n            sqrt_one_minus_alpha_prod_t_prev = (1 - alpha_prod_t_prev) ** 0.5\n            pred_prev_sample = sqrt_alpha_prod_t_prev * pred_original_sample + sqrt_one_minus_alpha_prod_t_prev * noise\n        else:\n            # Simply return the pred_original_sample. If `prediction_type == \"sample\"`, this is equivalent to returning\n            # the output of the GAN generator U-Net on the initial noisy latents x_T ~ N(0, I).\n            pred_prev_sample = pred_original_sample\n\n        if not return_dict:\n            return (pred_prev_sample,)\n\n        return UFOGenSchedulerOutput(prev_sample=pred_prev_sample, pred_original_sample=pred_original_sample)\n\n    # Copied from diffusers.schedulers.scheduling_ddpm.DDPMScheduler.add_noise\n    def add_noise(\n        self,\n        original_samples: torch.FloatTensor,\n        noise: torch.FloatTensor,\n        timesteps: torch.IntTensor,\n    ) -> torch.FloatTensor:\n        # Make sure alphas_cumprod and timestep have same device and dtype as original_samples\n        alphas_cumprod = self.alphas_cumprod.to(device=original_samples.device, dtype=original_samples.dtype)\n        timesteps = timesteps.to(original_samples.device)\n\n        sqrt_alpha_prod = alphas_cumprod[timesteps] ** 0.5\n        sqrt_alpha_prod = sqrt_alpha_prod.flatten()\n        while len(sqrt_alpha_prod.shape) < len(original_samples.shape):\n            sqrt_alpha_prod = sqrt_alpha_prod.unsqueeze(-1)\n\n        sqrt_one_minus_alpha_prod = (1 - alphas_cumprod[timesteps]) ** 0.5\n        sqrt_one_minus_alpha_prod = sqrt_one_minus_alpha_prod.flatten()\n        while len(sqrt_one_minus_alpha_prod.shape) < len(original_samples.shape):\n            sqrt_one_minus_alpha_prod = sqrt_one_minus_alpha_prod.unsqueeze(-1)\n\n        noisy_samples = sqrt_alpha_prod * original_samples + sqrt_one_minus_alpha_prod * noise\n        return noisy_samples\n\n    # Copied from diffusers.schedulers.scheduling_ddpm.DDPMScheduler.get_velocity\n    def get_velocity(\n        self, sample: torch.FloatTensor, noise: torch.FloatTensor, timesteps: torch.IntTensor\n    ) -> torch.FloatTensor:\n        # Make sure alphas_cumprod and timestep have same device and dtype as sample\n        alphas_cumprod = self.alphas_cumprod.to(device=sample.device, dtype=sample.dtype)\n        timesteps = timesteps.to(sample.device)\n\n        sqrt_alpha_prod = alphas_cumprod[timesteps] ** 0.5\n        sqrt_alpha_prod = sqrt_alpha_prod.flatten()\n        while len(sqrt_alpha_prod.shape) < len(sample.shape):\n            sqrt_alpha_prod = sqrt_alpha_prod.unsqueeze(-1)\n\n        sqrt_one_minus_alpha_prod = (1 - alphas_cumprod[timesteps]) ** 0.5\n        sqrt_one_minus_alpha_prod = sqrt_one_minus_alpha_prod.flatten()\n        while len(sqrt_one_minus_alpha_prod.shape) < len(sample.shape):\n            sqrt_one_minus_alpha_prod = sqrt_one_minus_alpha_prod.unsqueeze(-1)\n\n        velocity = sqrt_alpha_prod * noise - sqrt_one_minus_alpha_prod * sample\n        return velocity\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n\n    # Copied from diffusers.schedulers.scheduling_ddpm.DDPMScheduler.previous_timestep\n    def previous_timestep(self, timestep):\n        if self.custom_timesteps:\n            index = (self.timesteps == timestep).nonzero(as_tuple=True)[0][0]\n            if index == self.timesteps.shape[0] - 1:\n                prev_t = torch.tensor(-1)\n            else:\n                prev_t = self.timesteps[index + 1]\n        else:\n            num_inference_steps = (\n                self.num_inference_steps if self.num_inference_steps else self.config.num_train_timesteps\n            )\n            prev_t = timestep - self.config.num_train_timesteps // num_inference_steps\n\n        return prev_t\n"
  },
  {
    "path": "modules/schedulers/scheduler_unipc_flowmatch.py",
    "content": "# Copied from https://github.com/huggingface/diffusers/blob/v0.31.0/src/diffusers/schedulers/scheduling_unipc_multistep.py\n# Convert unipc for flow matching\n# Copyright 2024-2025 The Alibaba Wan Team Authors. All rights reserved.\n\nimport math\nfrom typing import List, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.schedulers.scheduling_utils import (KarrasDiffusionSchedulers,\n                                                   SchedulerMixin,\n                                                   SchedulerOutput)\nfrom diffusers.utils import deprecate\n\n\nclass FlowUniPCMultistepScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    `UniPCMultistepScheduler` is a training-free framework designed for the fast sampling of diffusion models.\n\n    This model inherits from [`SchedulerMixin`] and [`ConfigMixin`]. Check the superclass documentation for the generic\n    methods the library implements for all schedulers such as loading and saving.\n\n    Args:\n        num_train_timesteps (`int`, defaults to 1000):\n            The number of diffusion steps to train the model.\n        solver_order (`int`, default `2`):\n            The UniPC order which can be any positive integer. The effective order of accuracy is `solver_order + 1`\n            due to the UniC. It is recommended to use `solver_order=2` for guided sampling, and `solver_order=3` for\n            unconditional sampling.\n        prediction_type (`str`, defaults to \"flow_prediction\"):\n            Prediction type of the scheduler function; must be `flow_prediction` for this scheduler, which predicts\n            the flow of the diffusion process.\n        thresholding (`bool`, defaults to `False`):\n            Whether to use the \"dynamic thresholding\" method. This is unsuitable for latent-space diffusion models such\n            as Stable Diffusion.\n        dynamic_thresholding_ratio (`float`, defaults to 0.995):\n            The ratio for the dynamic thresholding method. Valid only when `thresholding=True`.\n        sample_max_value (`float`, defaults to 1.0):\n            The threshold value for dynamic thresholding. Valid only when `thresholding=True` and `predict_x0=True`.\n        predict_x0 (`bool`, defaults to `True`):\n            Whether to use the updating algorithm on the predicted x0.\n        solver_type (`str`, default `bh2`):\n            Solver type for UniPC. It is recommended to use `bh1` for unconditional sampling when steps < 10, and `bh2`\n            otherwise.\n        lower_order_final (`bool`, default `True`):\n            Whether to use lower-order solvers in the final steps. Only valid for < 15 inference steps. This can\n            stabilize the sampling of DPMSolver for steps < 15, especially for steps <= 10.\n        disable_corrector (`list`, default `[]`):\n            Decides which step to disable the corrector to mitigate the misalignment between `epsilon_theta(x_t, c)`\n            and `epsilon_theta(x_t^c, c)` which can influence convergence for a large guidance scale. Corrector is\n            usually disabled during the first few steps.\n        solver_p (`SchedulerMixin`, default `None`):\n            Any other scheduler that if specified, the algorithm becomes `solver_p + UniC`.\n        use_karras_sigmas (`bool`, *optional*, defaults to `False`):\n            Whether to use Karras sigmas for step sizes in the noise schedule during the sampling process. If `True`,\n            the sigmas are determined according to a sequence of noise levels {σi}.\n        use_exponential_sigmas (`bool`, *optional*, defaults to `False`):\n            Whether to use exponential sigmas for step sizes in the noise schedule during the sampling process.\n        timestep_spacing (`str`, defaults to `\"linspace\"`):\n            The way the timesteps should be scaled. Refer to Table 2 of the [Common Diffusion Noise Schedules and\n            Sample Steps are Flawed](https://huggingface.co/papers/2305.08891) for more information.\n        steps_offset (`int`, defaults to 0):\n            An offset added to the inference steps, as required by some model families.\n        final_sigmas_type (`str`, defaults to `\"zero\"`):\n            The final `sigma` value for the noise schedule during the sampling process. If `\"sigma_min\"`, the final\n            sigma is the same as the last sigma in the training schedule. If `zero`, the final sigma is set to 0.\n    \"\"\"\n\n    _compatibles = [e.name for e in KarrasDiffusionSchedulers]\n    order = 1\n\n    @register_to_config\n    def __init__(\n            self,\n            num_train_timesteps: int = 1000,\n            solver_order: int = 2,\n            prediction_type: str = \"flow_prediction\",\n            shift: Optional[float] = 1.0,\n            use_dynamic_shifting=False,\n            thresholding: bool = False,\n            dynamic_thresholding_ratio: float = 0.995,\n            sample_max_value: float = 1.0,\n            predict_x0: bool = True,\n            solver_type: str = \"bh2\",\n            lower_order_final: bool = True,\n            disable_corrector: List[int] = [],\n            solver_p: SchedulerMixin = None,\n            use_flow_sigmas: bool = True,\n            timestep_spacing: str = \"linspace\",\n            steps_offset: int = 0,\n            final_sigmas_type: Optional[str] = \"zero\",  # \"zero\", \"sigma_min\"\n    ):\n\n        if solver_type not in [\"bh1\", \"bh2\"]:\n            if solver_type in [\"midpoint\", \"heun\", \"logrho\"]:\n                self.register_to_config(solver_type=\"bh2\")\n            else:\n                raise NotImplementedError(\n                    f\"{solver_type} is not implemented for {self.__class__}\")\n\n        self.predict_x0 = predict_x0\n        # setable values\n        self.num_inference_steps = None\n        alphas = np.linspace(1, 1 / num_train_timesteps,\n                             num_train_timesteps)[::-1].copy()\n        sigmas = 1.0 - alphas\n        sigmas = torch.from_numpy(sigmas).to(dtype=torch.float32)\n\n        if not use_dynamic_shifting:\n            # when use_dynamic_shifting is True, we apply the timestep shifting on the fly based on the image resolution\n            sigmas = shift * sigmas / (1 +\n                                       (shift - 1) * sigmas)  # pyright: ignore\n\n        self.sigmas = sigmas\n        self.timesteps = sigmas * num_train_timesteps\n\n        self.model_outputs = [None] * solver_order\n        self.timestep_list = [None] * solver_order\n        self.lower_order_nums = 0\n        self.disable_corrector = disable_corrector\n        self.solver_p = solver_p\n        self.last_sample = None\n        self._step_index = None\n        self._begin_index = None\n\n        self.sigmas = self.sigmas.to(\n            \"cpu\")  # to avoid too much CPU/GPU communication\n        self.sigma_min = self.sigmas[-1].item()\n        self.sigma_max = self.sigmas[0].item()\n\n    @property\n    def step_index(self):\n        \"\"\"\n        The index counter for current timestep. It will increase 1 after each scheduler step.\n        \"\"\"\n        return self._step_index\n\n    @property\n    def begin_index(self):\n        \"\"\"\n        The index for the first timestep. It should be set from pipeline with `set_begin_index` method.\n        \"\"\"\n        return self._begin_index\n\n    # Copied from diffusers.schedulers.scheduling_dpmsolver_multistep.DPMSolverMultistepScheduler.set_begin_index\n    def set_begin_index(self, begin_index: int = 0):\n        \"\"\"\n        Sets the begin index for the scheduler. This function should be run from pipeline before the inference.\n\n        Args:\n            begin_index (`int`):\n                The begin index for the scheduler.\n        \"\"\"\n        self._begin_index = begin_index\n\n    # Modified from diffusers.schedulers.scheduling_flow_match_euler_discrete.FlowMatchEulerDiscreteScheduler.set_timesteps\n    def set_timesteps(\n        self,\n        num_inference_steps: Union[int, None] = None,\n        device: Union[str, torch.device] = None,\n        sigmas: Optional[List[float]] = None,\n        mu: Optional[Union[float, None]] = None,\n        shift: Optional[Union[float, None]] = None,\n    ):\n        \"\"\"\n        Sets the discrete timesteps used for the diffusion chain (to be run before inference).\n        Args:\n            num_inference_steps (`int`):\n                Total number of the spacing of the time steps.\n            device (`str` or `torch.device`, *optional*):\n                The device to which the timesteps should be moved to. If `None`, the timesteps are not moved.\n        \"\"\"\n\n        if self.config.use_dynamic_shifting and mu is None:\n            raise ValueError(\n                \" you have to pass a value for `mu` when `use_dynamic_shifting` is set to be `True`\"\n            )\n\n        if sigmas is None:\n            sigmas = np.linspace(self.sigma_max, self.sigma_min,\n                                 num_inference_steps +\n                                 1).copy()[:-1]  # pyright: ignore\n\n        if self.config.use_dynamic_shifting:\n            sigmas = self.time_shift(mu, 1.0, sigmas)  # pyright: ignore\n        else:\n            if shift is None:\n                shift = self.config.shift\n            sigmas = shift * sigmas / (1 +\n                                       (shift - 1) * sigmas)  # pyright: ignore\n\n        if self.config.final_sigmas_type == \"sigma_min\":\n            sigma_last = ((1 - self.alphas_cumprod[0]) /\n                          self.alphas_cumprod[0])**0.5\n        elif self.config.final_sigmas_type == \"zero\":\n            sigma_last = 0\n        else:\n            raise ValueError(\n                f\"`final_sigmas_type` must be one of 'zero', or 'sigma_min', but got {self.config.final_sigmas_type}\"\n            )\n\n        timesteps = sigmas * self.config.num_train_timesteps\n        sigmas = np.concatenate([sigmas, [sigma_last]\n                                ]).astype(np.float32)  # pyright: ignore\n\n        self.sigmas = torch.from_numpy(sigmas)\n        self.timesteps = torch.from_numpy(timesteps).to(\n            device=device, dtype=torch.int64)\n\n        self.num_inference_steps = len(timesteps)\n\n        self.model_outputs = [\n            None,\n        ] * self.config.solver_order\n        self.lower_order_nums = 0\n        self.last_sample = None\n        if self.solver_p:\n            self.solver_p.set_timesteps(self.num_inference_steps, device=device)\n\n        # add an index counter for schedulers that allow duplicated timesteps\n        self._step_index = None\n        self._begin_index = None\n        self.sigmas = self.sigmas.to(\n            \"cpu\")  # to avoid too much CPU/GPU communication\n\n    # Copied from diffusers.schedulers.scheduling_ddpm.DDPMScheduler._threshold_sample\n    def _threshold_sample(self, sample: torch.Tensor) -> torch.Tensor:\n        \"\"\"\n        \"Dynamic thresholding: At each sampling step we set s to a certain percentile absolute pixel value in xt0 (the\n        prediction of x_0 at timestep t), and if s > 1, then we threshold xt0 to the range [-s, s] and then divide by\n        s. Dynamic thresholding pushes saturated pixels (those near -1 and 1) inwards, thereby actively preventing\n        pixels from saturation at each step. We find that dynamic thresholding results in significantly better\n        photorealism as well as better image-text alignment, especially when using very large guidance weights.\"\n\n        https://arxiv.org/abs/2205.11487\n        \"\"\"\n        dtype = sample.dtype\n        batch_size, channels, *remaining_dims = sample.shape\n\n        if dtype not in (torch.float32, torch.float64):\n            sample = sample.float(\n            )  # upcast for quantile calculation, and clamp not implemented for cpu half\n\n        # Flatten sample for doing quantile calculation along each image\n        sample = sample.reshape(batch_size, channels * np.prod(remaining_dims))\n\n        abs_sample = sample.abs()  # \"a certain percentile absolute pixel value\"\n\n        s = torch.quantile(\n            abs_sample, self.config.dynamic_thresholding_ratio, dim=1)\n        s = torch.clamp(\n            s, min=1, max=self.config.sample_max_value\n        )  # When clamped to min=1, equivalent to standard clipping to [-1, 1]\n        s = s.unsqueeze(\n            1)  # (batch_size, 1) because clamp will broadcast along dim=0\n        sample = torch.clamp(\n            sample, -s, s\n        ) / s  # \"we threshold xt0 to the range [-s, s] and then divide by s\"\n\n        sample = sample.reshape(batch_size, channels, *remaining_dims)\n        sample = sample.to(dtype)\n\n        return sample\n\n    # Copied from diffusers.schedulers.scheduling_flow_match_euler_discrete.FlowMatchEulerDiscreteScheduler._sigma_to_t\n    def _sigma_to_t(self, sigma):\n        return sigma * self.config.num_train_timesteps\n\n    def _sigma_to_alpha_sigma_t(self, sigma):\n        return 1 - sigma, sigma\n\n    # Copied from diffusers.schedulers.scheduling_flow_match_euler_discrete.set_timesteps\n    def time_shift(self, mu: float, sigma: float, t: torch.Tensor):\n        return math.exp(mu) / (math.exp(mu) + (1 / t - 1)**sigma)\n\n    def convert_model_output(\n        self,\n        model_output: torch.Tensor,\n        *args,\n        sample: torch.Tensor = None,\n        **kwargs,\n    ) -> torch.Tensor:\n        r\"\"\"\n        Convert the model output to the corresponding type the UniPC algorithm needs.\n\n        Args:\n            model_output (`torch.Tensor`):\n                The direct output from the learned diffusion model.\n            timestep (`int`):\n                The current discrete timestep in the diffusion chain.\n            sample (`torch.Tensor`):\n                A current instance of a sample created by the diffusion process.\n\n        Returns:\n            `torch.Tensor`:\n                The converted model output.\n        \"\"\"\n        timestep = args[0] if len(args) > 0 else kwargs.pop(\"timestep\", None)\n        if sample is None:\n            if len(args) > 1:\n                sample = args[1]\n            else:\n                raise ValueError(\n                    \"missing `sample` as a required keyward argument\")\n        if timestep is not None:\n            deprecate(\n                \"timesteps\",\n                \"1.0.0\",\n                \"Passing `timesteps` is deprecated and has no effect as model output conversion is now handled via an internal counter `self.step_index`\",\n            )\n\n        sigma = self.sigmas[self.step_index]\n        alpha_t, sigma_t = self._sigma_to_alpha_sigma_t(sigma)\n\n        if self.predict_x0:\n            if self.config.prediction_type == \"flow_prediction\":\n                sigma_t = self.sigmas[self.step_index]\n                x0_pred = sample - sigma_t * model_output\n            else:\n                raise ValueError(\n                    f\"prediction_type given as {self.config.prediction_type} must be one of `epsilon`, `sample`,\"\n                    \" `v_prediction` or `flow_prediction` for the UniPCMultistepScheduler.\"\n                )\n\n            if self.config.thresholding:\n                x0_pred = self._threshold_sample(x0_pred)\n\n            return x0_pred\n        else:\n            if self.config.prediction_type == \"flow_prediction\":\n                sigma_t = self.sigmas[self.step_index]\n                epsilon = sample - (1 - sigma_t) * model_output\n            else:\n                raise ValueError(\n                    f\"prediction_type given as {self.config.prediction_type} must be one of `epsilon`, `sample`,\"\n                    \" `v_prediction` or `flow_prediction` for the UniPCMultistepScheduler.\"\n                )\n\n            if self.config.thresholding:\n                sigma_t = self.sigmas[self.step_index]\n                x0_pred = sample - sigma_t * model_output\n                x0_pred = self._threshold_sample(x0_pred)\n                epsilon = model_output + x0_pred\n\n            return epsilon\n\n    def multistep_uni_p_bh_update(\n        self,\n        model_output: torch.Tensor,\n        *args,\n        sample: torch.Tensor = None,\n        order: int = None,  # pyright: ignore\n        **kwargs,\n    ) -> torch.Tensor:\n        \"\"\"\n        One step for the UniP (B(h) version). Alternatively, `self.solver_p` is used if is specified.\n\n        Args:\n            model_output (`torch.Tensor`):\n                The direct output from the learned diffusion model at the current timestep.\n            prev_timestep (`int`):\n                The previous discrete timestep in the diffusion chain.\n            sample (`torch.Tensor`):\n                A current instance of a sample created by the diffusion process.\n            order (`int`):\n                The order of UniP at this timestep (corresponds to the *p* in UniPC-p).\n\n        Returns:\n            `torch.Tensor`:\n                The sample tensor at the previous timestep.\n        \"\"\"\n        prev_timestep = args[0] if len(args) > 0 else kwargs.pop(\n            \"prev_timestep\", None)\n        if sample is None:\n            if len(args) > 1:\n                sample = args[1]\n            else:\n                raise ValueError(\n                    \" missing `sample` as a required keyward argument\")\n        if order is None:\n            if len(args) > 2:\n                order = args[2]\n            else:\n                raise ValueError(\n                    \" missing `order` as a required keyward argument\")\n        if prev_timestep is not None:\n            deprecate(\n                \"prev_timestep\",\n                \"1.0.0\",\n                \"Passing `prev_timestep` is deprecated and has no effect as model output conversion is now handled via an internal counter `self.step_index`\",\n            )\n        model_output_list = self.model_outputs\n\n        s0 = self.timestep_list[-1]\n        m0 = model_output_list[-1]\n        x = sample\n\n        if self.solver_p:\n            x_t = self.solver_p.step(model_output, s0, x).prev_sample\n            return x_t\n\n        sigma_t, sigma_s0 = self.sigmas[self.step_index + 1], self.sigmas[\n            self.step_index]  # pyright: ignore\n        alpha_t, sigma_t = self._sigma_to_alpha_sigma_t(sigma_t)\n        alpha_s0, sigma_s0 = self._sigma_to_alpha_sigma_t(sigma_s0)\n\n        lambda_t = torch.log(alpha_t) - torch.log(sigma_t)\n        lambda_s0 = torch.log(alpha_s0) - torch.log(sigma_s0)\n\n        h = lambda_t - lambda_s0\n        device = sample.device\n\n        rks = []\n        D1s = []\n        for i in range(1, order):\n            si = self.step_index - i  # pyright: ignore\n            mi = model_output_list[-(i + 1)]\n            alpha_si, sigma_si = self._sigma_to_alpha_sigma_t(self.sigmas[si])\n            lambda_si = torch.log(alpha_si) - torch.log(sigma_si)\n            rk = (lambda_si - lambda_s0) / h\n            rks.append(rk)\n            D1s.append((mi - m0) / rk)  # pyright: ignore\n\n        rks.append(1.0)\n        rks = torch.tensor(rks, device=device)\n\n        R = []\n        b = []\n\n        hh = -h if self.predict_x0 else h\n        h_phi_1 = torch.expm1(hh)  # h\\phi_1(h) = e^h - 1\n        h_phi_k = h_phi_1 / hh - 1\n\n        factorial_i = 1\n\n        if self.config.solver_type == \"bh1\":\n            B_h = hh\n        elif self.config.solver_type == \"bh2\":\n            B_h = torch.expm1(hh)\n        else:\n            raise NotImplementedError()\n\n        for i in range(1, order + 1):\n            R.append(torch.pow(rks, i - 1))\n            b.append(h_phi_k * factorial_i / B_h)\n            factorial_i *= i + 1\n            h_phi_k = h_phi_k / hh - 1 / factorial_i\n\n        R = torch.stack(R)\n        b = torch.tensor(b, device=device)\n\n        if len(D1s) > 0:\n            D1s = torch.stack(D1s, dim=1)  # (B, K)\n            # for order 2, we use a simplified version\n            if order == 2:\n                rhos_p = torch.tensor([0.5], dtype=x.dtype, device=device)\n            else:\n                rhos_p = torch.linalg.solve(R[:-1, :-1],\n                                            b[:-1]).to(device).to(x.dtype)\n        else:\n            D1s = None\n\n        if self.predict_x0:\n            x_t_ = sigma_t / sigma_s0 * x - alpha_t * h_phi_1 * m0\n            if D1s is not None:\n                pred_res = torch.einsum(\"k,bkc...->bc...\", rhos_p,\n                                        D1s)  # pyright: ignore\n            else:\n                pred_res = 0\n            x_t = x_t_ - alpha_t * B_h * pred_res\n        else:\n            x_t_ = alpha_t / alpha_s0 * x - sigma_t * h_phi_1 * m0\n            if D1s is not None:\n                pred_res = torch.einsum(\"k,bkc...->bc...\", rhos_p,\n                                        D1s)  # pyright: ignore\n            else:\n                pred_res = 0\n            x_t = x_t_ - sigma_t * B_h * pred_res\n\n        x_t = x_t.to(x.dtype)\n        return x_t\n\n    def multistep_uni_c_bh_update(\n        self,\n        this_model_output: torch.Tensor,\n        *args,\n        last_sample: torch.Tensor = None,\n        this_sample: torch.Tensor = None,\n        order: int = None,  # pyright: ignore\n        **kwargs,\n    ) -> torch.Tensor:\n        \"\"\"\n        One step for the UniC (B(h) version).\n\n        Args:\n            this_model_output (`torch.Tensor`):\n                The model outputs at `x_t`.\n            this_timestep (`int`):\n                The current timestep `t`.\n            last_sample (`torch.Tensor`):\n                The generated sample before the last predictor `x_{t-1}`.\n            this_sample (`torch.Tensor`):\n                The generated sample after the last predictor `x_{t}`.\n            order (`int`):\n                The `p` of UniC-p at this step. The effective order of accuracy should be `order + 1`.\n\n        Returns:\n            `torch.Tensor`:\n                The corrected sample tensor at the current timestep.\n        \"\"\"\n        this_timestep = args[0] if len(args) > 0 else kwargs.pop(\n            \"this_timestep\", None)\n        if last_sample is None:\n            if len(args) > 1:\n                last_sample = args[1]\n            else:\n                raise ValueError(\n                    \" missing`last_sample` as a required keyward argument\")\n        if this_sample is None:\n            if len(args) > 2:\n                this_sample = args[2]\n            else:\n                raise ValueError(\n                    \" missing`this_sample` as a required keyward argument\")\n        if order is None:\n            if len(args) > 3:\n                order = args[3]\n            else:\n                raise ValueError(\n                    \" missing`order` as a required keyward argument\")\n        if this_timestep is not None:\n            deprecate(\n                \"this_timestep\",\n                \"1.0.0\",\n                \"Passing `this_timestep` is deprecated and has no effect as model output conversion is now handled via an internal counter `self.step_index`\",\n            )\n\n        model_output_list = self.model_outputs\n\n        m0 = model_output_list[-1]\n        x = last_sample\n        x_t = this_sample\n        model_t = this_model_output\n\n        sigma_t, sigma_s0 = self.sigmas[self.step_index], self.sigmas[\n            self.step_index - 1]  # pyright: ignore\n        alpha_t, sigma_t = self._sigma_to_alpha_sigma_t(sigma_t)\n        alpha_s0, sigma_s0 = self._sigma_to_alpha_sigma_t(sigma_s0)\n\n        lambda_t = torch.log(alpha_t) - torch.log(sigma_t)\n        lambda_s0 = torch.log(alpha_s0) - torch.log(sigma_s0)\n\n        h = lambda_t - lambda_s0\n        device = this_sample.device\n\n        rks = []\n        D1s = []\n        for i in range(1, order):\n            si = self.step_index - (i + 1)  # pyright: ignore\n            mi = model_output_list[-(i + 1)]\n            alpha_si, sigma_si = self._sigma_to_alpha_sigma_t(self.sigmas[si])\n            lambda_si = torch.log(alpha_si) - torch.log(sigma_si)\n            rk = (lambda_si - lambda_s0) / h\n            rks.append(rk)\n            D1s.append((mi - m0) / rk)  # pyright: ignore\n\n        rks.append(1.0)\n        rks = torch.tensor(rks, device=device)\n\n        R = []\n        b = []\n\n        hh = -h if self.predict_x0 else h\n        h_phi_1 = torch.expm1(hh)  # h\\phi_1(h) = e^h - 1\n        h_phi_k = h_phi_1 / hh - 1\n\n        factorial_i = 1\n\n        if self.config.solver_type == \"bh1\":\n            B_h = hh\n        elif self.config.solver_type == \"bh2\":\n            B_h = torch.expm1(hh)\n        else:\n            raise NotImplementedError()\n\n        for i in range(1, order + 1):\n            R.append(torch.pow(rks, i - 1))\n            b.append(h_phi_k * factorial_i / B_h)\n            factorial_i *= i + 1\n            h_phi_k = h_phi_k / hh - 1 / factorial_i\n\n        R = torch.stack(R)\n        b = torch.tensor(b, device=device)\n\n        if len(D1s) > 0:\n            D1s = torch.stack(D1s, dim=1)\n        else:\n            D1s = None\n\n        # for order 1, we use a simplified version\n        if order == 1:\n            rhos_c = torch.tensor([0.5], dtype=x.dtype, device=device)\n        else:\n            rhos_c = torch.linalg.solve(R, b).to(device).to(x.dtype)\n\n        if self.predict_x0:\n            x_t_ = sigma_t / sigma_s0 * x - alpha_t * h_phi_1 * m0\n            if D1s is not None:\n                corr_res = torch.einsum(\"k,bkc...->bc...\", rhos_c[:-1], D1s)\n            else:\n                corr_res = 0\n            D1_t = model_t - m0\n            x_t = x_t_ - alpha_t * B_h * (corr_res + rhos_c[-1] * D1_t)\n        else:\n            x_t_ = alpha_t / alpha_s0 * x - sigma_t * h_phi_1 * m0\n            if D1s is not None:\n                corr_res = torch.einsum(\"k,bkc...->bc...\", rhos_c[:-1], D1s)\n            else:\n                corr_res = 0\n            D1_t = model_t - m0\n            x_t = x_t_ - sigma_t * B_h * (corr_res + rhos_c[-1] * D1_t)\n        x_t = x_t.to(x.dtype)\n        return x_t\n\n    def index_for_timestep(self, timestep, schedule_timesteps=None):\n        if schedule_timesteps is None:\n            schedule_timesteps = self.timesteps\n\n        indices = (schedule_timesteps == timestep).nonzero()\n\n        # The sigma index that is taken for the **very** first `step`\n        # is always the second index (or the last index if there is only 1)\n        # This way we can ensure we don't accidentally skip a sigma in\n        # case we start in the middle of the denoising schedule (e.g. for image-to-image)\n        pos = 1 if len(indices) > 1 else 0\n\n        return indices[pos].item()\n\n    # Copied from diffusers.schedulers.scheduling_dpmsolver_multistep.DPMSolverMultistepScheduler._init_step_index\n    def _init_step_index(self, timestep):\n        \"\"\"\n        Initialize the step_index counter for the scheduler.\n        \"\"\"\n\n        if self.begin_index is None:\n            if isinstance(timestep, torch.Tensor):\n                timestep = timestep.to(self.timesteps.device)\n            self._step_index = self.index_for_timestep(timestep)\n        else:\n            self._step_index = self._begin_index\n\n    def step(self,\n             model_output: torch.Tensor,\n             timestep: Union[int, torch.Tensor],\n             sample: torch.Tensor,\n             return_dict: bool = True,\n             generator=None) -> Union[SchedulerOutput, Tuple]:\n        \"\"\"\n        Predict the sample from the previous timestep by reversing the SDE. This function propagates the sample with\n        the multistep UniPC.\n\n        Args:\n            model_output (`torch.Tensor`):\n                The direct output from learned diffusion model.\n            timestep (`int`):\n                The current discrete timestep in the diffusion chain.\n            sample (`torch.Tensor`):\n                A current instance of a sample created by the diffusion process.\n            return_dict (`bool`):\n                Whether or not to return a [`~schedulers.scheduling_utils.SchedulerOutput`] or `tuple`.\n\n        Returns:\n            [`~schedulers.scheduling_utils.SchedulerOutput`] or `tuple`:\n                If return_dict is `True`, [`~schedulers.scheduling_utils.SchedulerOutput`] is returned, otherwise a\n                tuple is returned where the first element is the sample tensor.\n\n        \"\"\"\n        if self.num_inference_steps is None:\n            raise ValueError(\n                \"Number of inference steps is 'None', you need to run 'set_timesteps' after creating the scheduler\"\n            )\n\n        if self.step_index is None:\n            self._init_step_index(timestep)\n\n        use_corrector = (\n            self.step_index > 0 and\n            self.step_index - 1 not in self.disable_corrector and\n            self.last_sample is not None  # pyright: ignore\n        )\n\n        model_output_convert = self.convert_model_output(\n            model_output, sample=sample)\n        if use_corrector:\n            sample = self.multistep_uni_c_bh_update(\n                this_model_output=model_output_convert,\n                last_sample=self.last_sample,\n                this_sample=sample,\n                order=self.this_order,\n            )\n\n        for i in range(self.config.solver_order - 1):\n            self.model_outputs[i] = self.model_outputs[i + 1]\n            self.timestep_list[i] = self.timestep_list[i + 1]\n\n        self.model_outputs[-1] = model_output_convert\n        self.timestep_list[-1] = timestep  # pyright: ignore\n\n        if self.config.lower_order_final:\n            this_order = min(self.config.solver_order,\n                             len(self.timesteps) -\n                             self.step_index)  # pyright: ignore\n        else:\n            this_order = self.config.solver_order\n\n        self.this_order = min(this_order,\n                              self.lower_order_nums + 1)  # warmup for multistep\n        assert self.this_order > 0\n\n        self.last_sample = sample\n        prev_sample = self.multistep_uni_p_bh_update(\n            model_output=model_output,  # pass the original non-converted model output, in case solver-p is used\n            sample=sample,\n            order=self.this_order,\n        )\n\n        if self.lower_order_nums < self.config.solver_order:\n            self.lower_order_nums += 1\n\n        # upon completion increase step index by one\n        self._step_index += 1  # pyright: ignore\n\n        if not return_dict:\n            return (prev_sample,)\n\n        return SchedulerOutput(prev_sample=prev_sample)\n\n    def scale_model_input(self, sample: torch.Tensor, *args,\n                          **kwargs) -> torch.Tensor:\n        \"\"\"\n        Ensures interchangeability with schedulers that need to scale the denoising model input depending on the\n        current timestep.\n\n        Args:\n            sample (`torch.Tensor`):\n                The input sample.\n\n        Returns:\n            `torch.Tensor`:\n                A scaled input sample.\n        \"\"\"\n        return sample\n\n    # Copied from diffusers.schedulers.scheduling_dpmsolver_multistep.DPMSolverMultistepScheduler.add_noise\n    def add_noise(\n        self,\n        original_samples: torch.Tensor,\n        noise: torch.Tensor,\n        timesteps: torch.IntTensor,\n    ) -> torch.Tensor:\n        # Make sure sigmas and timesteps have the same device and dtype as original_samples\n        sigmas = self.sigmas.to(\n            device=original_samples.device, dtype=original_samples.dtype)\n        if original_samples.device.type == \"mps\" and torch.is_floating_point(\n                timesteps):\n            # mps does not support float64\n            schedule_timesteps = self.timesteps.to(\n                original_samples.device, dtype=torch.float32)\n            timesteps = timesteps.to(\n                original_samples.device, dtype=torch.float32)\n        else:\n            schedule_timesteps = self.timesteps.to(original_samples.device)\n            timesteps = timesteps.to(original_samples.device)\n\n        # begin_index is None when the scheduler is used for training or pipeline does not implement set_begin_index\n        if self.begin_index is None:\n            step_indices = [\n                self.index_for_timestep(t, schedule_timesteps)\n                for t in timesteps\n            ]\n        elif self.step_index is not None:\n            # add_noise is called after first denoising step (for inpainting)\n            step_indices = [self.step_index] * timesteps.shape[0]\n        else:\n            # add noise is called before first denoising step to create initial latent(img2img)\n            step_indices = [self.begin_index] * timesteps.shape[0]\n\n        sigma = sigmas[step_indices].flatten()\n        while len(sigma.shape) < len(original_samples.shape):\n            sigma = sigma.unsqueeze(-1)\n\n        alpha_t, sigma_t = self._sigma_to_alpha_sigma_t(sigma)\n        noisy_samples = alpha_t * original_samples + sigma_t * noise\n        return noisy_samples\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "modules/schedulers/scheduler_vdm.py",
    "content": "# Copyright 2024 Katherine Crowson and The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport math\nfrom dataclasses import dataclass\nfrom typing import Optional, Tuple, Union\n\nimport numpy as np\nimport torch\n\n# from ..configuration_utils import ConfigMixin, register_to_config\n# from ..utils import BaseOutput\n# from ..utils.torch_utils import randn_tensor\n# from .scheduling_utils import SchedulerMixin\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.schedulers.scheduling_utils import SchedulerMixin\nfrom diffusers.utils import BaseOutput\nfrom diffusers.utils.torch_utils import randn_tensor\n\n\ndef log_snr(t: torch.Tensor, beta_schedule: str) -> torch.Tensor:\n    \"\"\"\n    Calculates the logarithm of the signal-to-noise ratio (SNR) for given time steps `t` under a specified beta\n    schedule.\n\n    See appendix K of the [Variational Diffusion Models](https://arxiv.org/abs/2107.00630) paper for more details.\n\n    Args:\n        t (torch.Tensor): Tensor of time steps, normalized between [0, 1].\n        beta_schedule (str):\n            The beta schedule type. Supported types include 'linear', 'squaredcos_cap_v2', and 'sigmoid'.\n\n    Returns:\n        torch.Tensor: The log SNR values corresponding to the input time steps under the given beta schedule.\n\n    Raises:\n        ValueError: If `t` is outside the range [0, 1] or if the beta_schedule is unsupported.\n    \"\"\"\n    if t.min() < 0 or t.max() > 1:\n        raise ValueError(\"`t` must be in range [0, 1].\")\n\n    # From https://github.com/Zhengxinyang/LAS-Diffusion/blob/main/network/model_utils.py#L345\n    if beta_schedule == \"linear\":\n        return -torch.log(torch.special.expm1(1e-4 + 10 * t**2))\n    elif beta_schedule == \"squaredcos_cap_v2\":\n        return -torch.log(torch.clamp((torch.cos((t + 0.008) / (1 + 0.008) * math.pi * 0.5) ** -2) - 1, min=1e-5))\n    elif beta_schedule == \"sigmoid\":\n        # From https://colab.research.google.com/github/google-research/vdm/blob/main/colab/SimpleDiffusionColab.ipynb\n        gamma_min = -6  # -13.3 in VDM CIFAR10 experiments\n        gamma_max = 6  # 5.0 in VDM CIFAR10 experiments\n        return gamma_max + (gamma_min - gamma_max) * t\n\n    raise NotImplementedError(f\"{beta_schedule} does is not implemented for {VDMScheduler.__class__}\")\n\n\n@dataclass\nclass VDMSchedulerOutput(BaseOutput):\n    \"\"\"\n    Output class for the scheduler's `step` function output.\n\n    Args:\n        prev_sample (`torch.Tensor` of shape `(batch_size, num_channels, height, width)` for images):\n            Computed sample `(x_{t-1})` of previous timestep. `prev_sample` should be used as next model input in the\n            denoising loop.\n        pred_original_sample (`torch.Tensor` of shape `(batch_size, num_channels, height, width)` for images):\n            The predicted denoised sample `(x_{0})` based on the model output from the current timestep.\n            `pred_original_sample` can be used to preview progress or for guidance.\n    \"\"\"\n\n    prev_sample: torch.Tensor\n    pred_original_sample: Optional[torch.Tensor] = None\n\n\nclass VDMScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    Implements the discrete and continuous scheduler as presented in `Variational Diffusion Models` [1].\n\n    This model inherits from [`SchedulerMixin`] and [`ConfigMixin`]. Check the superclass documentation for the generic\n    methods the library implements for all schedulers such as loading and saving.\n\n    Args:\n        num_train_timesteps (`int`, defaults to None, *optional*):\n            The number of diffusion steps to train the model. If not provided, assumes continuous formulation.\n        beta_schedule (`str`, defaults to `\"linear\"`):\n            The beta schedule, a mapping from a beta range to a sequence of betas for stepping the model. Choose from\n            `linear`, `squaredcos_cap_v2` or `sigmoid`.\n        clip_sample (`bool`, defaults to `True`):\n            Clip the predicted sample for numerical stability.\n        clip_sample_range (`float`, defaults to 1.0):\n            The maximum magnitude for sample clipping. Valid only when `clip_sample=True`.\n        prediction_type (`str`, defaults to `epsilon`, *optional*):\n            Prediction type of the scheduler function; can be `epsilon` (predicts the noise of the diffusion process),\n            or `sample` (directly predicts the noisy sample`).\n        thresholding (`bool`, defaults to `False`):\n            Whether to use the \"dynamic thresholding\" method. This is unsuitable for latent-space diffusion models such\n            as Stable Diffusion.\n        dynamic_thresholding_ratio (`float`, defaults to 0.995):\n            The ratio for the dynamic thresholding method. Valid only when `thresholding=True`.\n        sample_max_value (`float`, defaults to 1.0):\n            The threshold value for dynamic thresholding. Valid only when `thresholding=True`.\n        timestep_spacing (`str`, defaults to `\"leading\"`):\n            The way the timesteps should be scaled. Refer to Table 2 of the [Common Diffusion Noise Schedules and\n            Sample Steps are Flawed](https://huggingface.co/papers/2305.08891) for more information.\n        steps_offset (`int`, defaults to 0):\n            An offset added to the inference steps, as required by some model families.\n\n    References:\n        [1] \"Variational Diffusion Models\" by Diederik P. Kingma, Tim Salimans, Ben Poole and Jonathan Ho, ArXiv, 2021.\n    \"\"\"\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: Optional[int] = None,\n        beta_schedule: str = \"linear\",\n        clip_sample: bool = True,\n        clip_sample_range: float = 2.0,\n        prediction_type: str = \"epsilon\",\n        thresholding: bool = True,\n        dynamic_thresholding_ratio: float = 0.995,\n        sample_max_value: float = 1.0,\n        timestep_spacing: str = \"leading\",\n        steps_offset: Union[int, float] = 0,\n        order: int = 1,\n    ):\n        # Hardcoded as continuous schedules in `log_snr` are fitted to these values\n        self.beta_start = 1e-4\n        self.beta_end = 0.02\n        self.init_noise_sigma = 1.0\n\n        # For linear beta schedule, equivalent to torch.exp(-1e-4 - 10 * t ** 2)\n        self.alphas_cumprod = lambda t: torch.sigmoid(self.log_snr(t))  # Equivalent to 1 - self.sigmas\n        self.sigmas = []\n\n        self.num_inference_steps = None\n        self.timesteps = torch.from_numpy(self.get_timesteps(len(self)))\n        if num_train_timesteps:\n            alphas_cumprod = self.alphas_cumprod(torch.flip(self.timesteps, dims=(0,)))\n            alphas = alphas_cumprod[1:] / alphas_cumprod[:-1]\n            self.alphas = torch.cat([alphas_cumprod[:1], alphas])\n            self.betas = 1 - self.alphas\n\n    def log_snr(self, timesteps: torch.Tensor) -> torch.Tensor:\n        \"\"\"\n        Computes the logarithm of the signal-to-noise ratio for given timesteps using the configured beta schedule.\n\n        Args:\n            timesteps (torch.Tensor): Tensor of timesteps, which can be either normalized to [0, 1] range or discrete.\n\n        Returns:\n            torch.Tensor: The computed log SNR values for the given timesteps.\n\n        Raises:\n            TypeError: If discrete timesteps are used without setting `num_train_timesteps` in the configuration.\n        \"\"\"\n        if not timesteps.is_floating_point():\n            if not self.config.num_train_timesteps:\n                raise TypeError(\"Discrete timesteps require `self.config.num_train_timesteps` to be set.\")\n            timesteps = timesteps / self.config.num_train_timesteps  # Normalize to [0, 1]\n\n        return log_snr(timesteps, beta_schedule=self.config.beta_schedule)\n\n    def get_timesteps(self, num_steps: Optional[int] = None) -> np.ndarray:\n        \"\"\"\n        Generates timesteps in the range [0, 1] for the continuous formulation.\n\n        Args:\n            num_steps (int, optional): The number of timesteps to generate. Defaults to `num_train_timesteps`.\n\n        Returns:\n            np.ndarray: An array of timesteps, distributed according to the `timestep_spacing` configuration.\n\n        Raises:\n            ValueError: If an unsupported `timestep_spacing` configuration is provided.\n        \"\"\"\n        if num_steps is None:\n            num_steps = len(self)\n        if self.config.timestep_spacing in [\"linspace\", \"leading\"]:\n            timesteps = np.linspace(0, 1, num_steps, endpoint=self.config.timestep_spacing == \"linspace\")[::-1]\n        elif self.config.timestep_spacing == \"trailing\":\n            timesteps = np.arange(1, 0, -1 / num_steps) - 1 / num_steps\n        else:\n            raise ValueError(\n                f\"`{self.config.timestep_spacing}` timestep spacing is not supported.\"\n                \"Choose one of 'linspace', 'leading' or 'trailing'.\"\n            )\n        return timesteps.astype(np.float32).copy()\n\n    def set_timesteps(self, num_inference_steps: int, device: Optional[Union[str, torch.device]] = None):\n        \"\"\"\n        Sets the discrete or continuous timesteps used for the diffusion chain (to be run before inference).\n\n        Args:\n            num_inference_steps (`int`):\n                The number of diffusion steps used when generating samples with a pre-trained model. If used,\n                `timesteps` must be `None`.\n            device (`str` or `torch.device`, *optional*):\n                The device to which the timesteps should be moved to. If `None`, the timesteps are not moved.\n\n        Raises:\n            ValueError: If an unsupported `timestep_spacing` configuration is provided.\n        \"\"\"\n        if not self.config.num_train_timesteps:\n            timesteps = self.get_timesteps(num_inference_steps)\n        else:\n            if self.config.timestep_spacing in [\"linspace\", \"leading\"]:\n                start = 0\n                stop = self.config.num_train_timesteps\n                timesteps = np.linspace(\n                    start,\n                    stop - 1 if self.config.timestep_spacing == \"linspace\" else stop,\n                    num_inference_steps,\n                    endpoint=self.config.timestep_spacing == \"linspace\",\n                )[::-1]\n            elif self.config.timestep_spacing == \"trailing\":\n                timesteps = (\n                    np.arange(\n                        self.config.num_train_timesteps, 0, -self.config.num_train_timesteps / num_inference_steps\n                    )\n                    - 1\n                )\n            else:\n                raise ValueError(\n                    f\"`{self.config.timestep_spacing}` timestep spacing is not supported.\"\n                    \"Choose one of 'linspace', 'leading' or 'trailing'.\"\n                )\n            timesteps = timesteps.round().astype(np.int64).copy()\n\n        self.num_inference_steps = num_inference_steps\n        timesteps += self.config.steps_offset\n        self.timesteps = torch.from_numpy(timesteps).to(device)\n        self.sigmas = [torch.sigmoid(-self.log_snr(t)) for t in self.timesteps]\n        self.sigmas = torch.stack(self.sigmas)\n\n    # Copied from diffusers.schedulers.scheduling_ddpm.DDPMScheduler._threshold_sample\n    def _threshold_sample(self, sample: torch.Tensor) -> torch.Tensor:\n        \"\"\"\n        \"Dynamic thresholding: At each sampling step we set s to a certain percentile absolute pixel value in xt0 (the\n        prediction of x_0 at timestep t), and if s > 1, then we threshold xt0 to the range [-s, s] and then divide by\n        s. Dynamic thresholding pushes saturated pixels (those near -1 and 1) inwards, thereby actively preventing\n        pixels from saturation at each step. We find that dynamic thresholding results in significantly better\n        photorealism as well as better image-text alignment, especially when using very large guidance weights.\"\n\n        https://arxiv.org/abs/2205.11487\n        \"\"\"\n        dtype = sample.dtype\n        batch_size, channels, *remaining_dims = sample.shape\n\n        if dtype not in (torch.float32, torch.float64):\n            sample = sample.float()  # upcast for quantile calculation, and clamp not implemented for cpu half\n\n        # Flatten sample for doing quantile calculation along each image\n        sample = sample.reshape(batch_size, channels * np.prod(remaining_dims))\n\n        abs_sample = sample.abs()  # \"a certain percentile absolute pixel value\"\n\n        s = torch.quantile(abs_sample, self.config.dynamic_thresholding_ratio, dim=1)\n        s = torch.clamp(\n            s, min=1, max=self.config.sample_max_value\n        )  # When clamped to min=1, equivalent to standard clipping to [-1, 1]\n        s = s.unsqueeze(1)  # (batch_size, 1) because clamp will broadcast along dim=0\n        sample = torch.clamp(sample, -s, s) / s  # \"we threshold xt0 to the range [-s, s] and then divide by s\"\n\n        sample = sample.reshape(batch_size, channels, *remaining_dims)\n        sample = sample.to(dtype)\n\n        return sample\n\n    # Copied from diffusers.schedulers.scheduling_ddpm.DDPMScheduler.scale_model_input\n    def scale_model_input(self, sample: torch.Tensor, timestep: Optional[int] = None) -> torch.Tensor:\n        \"\"\"\n        Ensures interchangeability with schedulers that need to scale the denoising model input depending on the\n        current timestep.\n\n        Args:\n            sample (`torch.Tensor`):\n                The input sample.\n            timestep (`int`, *optional*):\n                The current timestep in the diffusion chain.\n\n        Returns:\n            `torch.Tensor`:\n                A scaled input sample.\n        \"\"\"\n        return sample\n\n    def step(\n        self,\n        model_output: torch.Tensor,\n        timestep: Union[int, float, torch.Tensor],\n        sample: torch.Tensor,\n        generator: Optional[torch.Generator] = None,\n        return_dict: bool = True,\n    ) -> Union[VDMSchedulerOutput, Tuple]:\n        \"\"\"\n        Performs a single step of the diffusion process, computing the previous sample and optionally the predicted\n        original sample based on the model output and current timestep.\n\n        Args:\n            model_output (torch.Tensor): The output from the diffusion model, typically noise predictions.\n            timestep (int, float, torch.Tensor): Current timestep in the diffusion process.\n            sample (torch.Tensor): The current sample at timestep `t`.\n            generator (torch.Generator, *optional*): Generator for random numbers, used for adding noise.\n            return_dict (bool): If True, returns a `VDMSchedulerOutput` object; otherwise, returns a tuple.\n\n        Returns:\n            VDMSchedulerOutput or Tuple: Depending on `return_dict`, returns either a data class containing the\n            previous sample and predicted original sample, or just the previous sample as a tuple.\n        \"\"\"\n        # Based on https://github.com/addtt/variational-diffusion-models/blob/main/vdm.py#L29\n\n        if isinstance(timestep, (int, float)):\n            timestep = torch.tensor(\n                timestep, dtype=torch.float32 if isinstance(timestep, float) else torch.int64, device=sample.device\n            )\n\n        if not timestep.is_floating_point():\n            if not self.config.num_train_timesteps:\n                raise TypeError(\"Discrete timesteps require `self.config.num_train_timesteps` to be set.\")\n            timestep = timestep / self.config.num_train_timesteps  # Normalize to [0, 1]\n        prev_timestep = (timestep - 1 / len(self)).clamp(0, 1)\n\n        # 1. Compute current and previous alpha and sigma values\n        log_snr = self.log_snr(timestep)\n        prev_log_snr = self.log_snr(prev_timestep)\n\n        # Allow for batched inputs\n        if timestep.ndim > 0:\n            log_snr = log_snr.view(timestep.size(0), *((1,) * (sample.ndim - 1)))\n            prev_log_snr = prev_log_snr.view(timestep.size(0), *((1,) * (sample.ndim - 1)))\n\n        alpha, sigma = torch.sigmoid(log_snr), torch.sigmoid(-log_snr)\n        prev_alpha, prev_sigma = torch.sigmoid(prev_log_snr), torch.sigmoid(-prev_log_snr)\n\n        # 2. Compute predicted original sample x_0\n        if self.config.prediction_type == \"epsilon\":\n            pred_original_sample = (sample - torch.sqrt(sigma) * model_output) / torch.sqrt(alpha)  # Sec. 3.4, eq. 10\n        elif self.config.prediction_type == \"sample\":\n            pred_original_sample = model_output\n        elif self.config.prediction_type == \"v_prediction\":\n            pred_original_sample = torch.sqrt(alpha) * sample - torch.sqrt(sigma) * model_output\n        else:\n            raise ValueError(\n                f\"prediction_type given as {self.config.prediction_type} must be one of `epsilon`, `sample` or\"\n                f\" `v_prediction`  for the {self.__class__.__name__}.\"\n            )\n\n        # 3. Clip or threshold \"predicted x_0\"\n        if self.config.thresholding:\n            pred_original_sample = self._threshold_sample(pred_original_sample)\n        elif self.config.clip_sample:\n            pred_original_sample = pred_original_sample.clamp(\n                -self.config.clip_sample_range, self.config.clip_sample_range\n            )\n\n        # 4. Computed predicted previous sample x_{t-1}\n        c = -torch.expm1(log_snr - prev_log_snr)\n        if self.config.thresholding or self.config.clip_sample or self.config.prediction_type != \"epsilon\":\n            pred_prev_sample = torch.sqrt(prev_alpha) * (\n                sample * (1 - c) / torch.sqrt(alpha) + c * pred_original_sample\n            )\n        else:\n            pred_prev_sample = torch.sqrt(prev_alpha / alpha) * (sample - c * torch.sqrt(sigma) * model_output)\n\n        # 5. (Maybe) add noise\n        noise_scale = torch.sqrt(prev_sigma * c)  # Becomes 0 for prev_timestep = 0\n        if torch.any(noise_scale > 0):\n            noise = randn_tensor(\n                model_output.shape, generator=generator, device=model_output.device, dtype=model_output.dtype\n            )\n            pred_prev_sample += noise_scale * noise\n\n        if not return_dict:\n            return (pred_prev_sample,)\n\n        return VDMSchedulerOutput(prev_sample=pred_prev_sample, pred_original_sample=pred_original_sample)\n\n    def add_noise(self, original_samples: torch.Tensor, noise: torch.Tensor, timesteps: torch.Tensor) -> torch.Tensor:\n        \"\"\"\n        Adds noise to the original samples according to the noise schedule and the specified timesteps.\n\n        This method calculates the noisy samples by combining the original samples with Gaussian noise scaled according\n        to the time-dependent noise levels dictated by the signal-to-noise ratio.\n\n        Args:\n            original_samples (torch.Tensor): The original samples from the data distribution before noise is added.\n            noise (torch.Tensor): Gaussian noise to be added to the samples.\n            timesteps (torch.Tensor): Timesteps at which the samples are processed.\n\n        Returns:\n            torch.Tensor: The noisy samples after adding scaled Gaussian noise according to the SNR.\n        \"\"\"\n        gamma = self.log_snr(timesteps).to(original_samples.device)\n        gamma = gamma.view(timesteps.size(0), *((1,) * (original_samples.ndim - 1)))\n\n        sqrt_alpha_prod = torch.sqrt(torch.sigmoid(gamma))\n        sqrt_one_minus_alpha_prod = torch.sqrt(torch.sigmoid(-gamma))  # sqrt(sigma)\n\n        noisy_samples = original_samples * sqrt_alpha_prod + noise * sqrt_one_minus_alpha_prod\n        return noisy_samples.to(original_samples.dtype)\n\n    def get_velocity(self, sample: torch.Tensor, noise: torch.Tensor, timesteps: torch.Tensor) -> torch.Tensor:\n        gamma = self.log_snr(timesteps).to(sample.device)\n        gamma = gamma.view(timesteps.size(0), *((1,) * (sample.ndim - 1)))\n\n        sqrt_alpha_prod = torch.sqrt(torch.sigmoid(gamma))\n        sqrt_one_minus_alpha_prod = torch.sqrt(torch.sigmoid(-gamma))  # sqrt(sigma)\n\n        velocity = sqrt_alpha_prod * noise - sqrt_one_minus_alpha_prod * sample\n        return velocity\n\n    def __len__(self) -> int:\n        \"\"\"Returns the number of inference steps or the number of training timesteps or 1000, whichever is set.\"\"\"\n        return self.num_inference_steps or self.config.num_train_timesteps or 1000\n"
  },
  {
    "path": "modules/script_callbacks.py",
    "content": "import os\nimport sys\nimport time\nfrom collections import namedtuple\nfrom typing import Optional, Dict, Any\nfrom fastapi import FastAPI\nfrom gradio import Blocks\nimport modules.errors as errors\n\n\ndef report_exception(e, c, job):\n    errors.display(e, f'Executing callback: {c.script} {job}')\n\n\nclass ImageSaveParams:\n    def __init__(self, image, p, filename, pnginfo):\n        self.image = image\n        \"\"\"the PIL image itself\"\"\"\n\n        self.p = p\n        \"\"\"p object with processing parameters; either StableDiffusionProcessing or an object with same fields\"\"\"\n\n        self.filename = filename\n        \"\"\"name of file that the image would be saved to\"\"\"\n\n        self.pnginfo = pnginfo\n        \"\"\"dictionary with parameters for image's PNG info data; infotext will have the key 'parameters'\"\"\"\n\n\nclass ExtraNoiseParams:\n    def __init__(self, noise, x, xi):\n        self.noise = noise\n        \"\"\"Random noise generated by the seed\"\"\"\n\n        self.x = x\n        \"\"\"Latent representation of the image\"\"\"\n\n        self.xi = xi\n        \"\"\"Noisy latent representation of the image\"\"\"\n\n\nclass CFGDenoiserParams:\n    def __init__(self, x, image_cond, sigma, sampling_step, total_sampling_steps, text_cond, text_uncond):\n        self.x = x\n        \"\"\"Latent image representation in the process of being denoised\"\"\"\n\n        self.image_cond = image_cond\n        \"\"\"Conditioning image\"\"\"\n\n        self.sigma = sigma\n        \"\"\"Current sigma noise step value\"\"\"\n\n        self.sampling_step = sampling_step\n        \"\"\"Current Sampling step number\"\"\"\n\n        self.total_sampling_steps = total_sampling_steps\n        \"\"\"Total number of sampling steps planned\"\"\"\n\n        self.text_cond = text_cond\n        \"\"\" Encoder hidden states of text conditioning from prompt\"\"\"\n\n        self.text_uncond = text_uncond\n        \"\"\" Encoder hidden states of text conditioning from negative prompt\"\"\"\n\n\nclass CFGDenoisedParams:\n    def __init__(self, x, sampling_step, total_sampling_steps, inner_model):\n        self.x = x\n        \"\"\"Latent image representation in the process of being denoised\"\"\"\n\n        self.sampling_step = sampling_step\n        \"\"\"Current Sampling step number\"\"\"\n\n        self.total_sampling_steps = total_sampling_steps\n        \"\"\"Total number of sampling steps planned\"\"\"\n\n        self.inner_model = inner_model\n        \"\"\"Inner model reference used for denoising\"\"\"\n\n\nclass AfterCFGCallbackParams:\n    def __init__(self, x, sampling_step, total_sampling_steps):\n        self.x = x\n        \"\"\"Latent image representation in the process of being denoised\"\"\"\n\n        self.sampling_step = sampling_step\n        \"\"\"Current Sampling step number\"\"\"\n\n        self.total_sampling_steps = total_sampling_steps\n        \"\"\"Total number of sampling steps planned\"\"\"\n\n\nclass UiTrainTabParams:\n    def __init__(self, txt2img_preview_params):\n        self.txt2img_preview_params = txt2img_preview_params\n\n\nclass ImageGridLoopParams:\n    def __init__(self, imgs, cols, rows):\n        self.imgs = imgs\n        self.cols = cols\n        self.rows = rows\n\n\nScriptCallback = namedtuple(\"ScriptCallback\", [\"script\", \"callback\"])\ncallback_map = dict(\n    callbacks_app_started=[],\n    callbacks_before_process=[],\n    callbacks_after_process=[],\n    callbacks_model_loaded=[],\n    callbacks_ui_tabs=[],\n    callbacks_ui_settings=[],\n    callbacks_before_image_saved=[],\n    callbacks_image_saved=[],\n    callbacks_image_save_btn=[],\n    callbacks_cfg_denoiser=[],\n    callbacks_cfg_denoised=[],\n    callbacks_cfg_after_cfg=[],\n    callbacks_before_component=[],\n    callbacks_after_component=[],\n    callbacks_image_grid=[],\n    callbacks_infotext_pasted=[],\n    callbacks_script_unloaded=[],\n    callbacks_before_ui=[],\n    callbacks_after_ui=[],\n    callbacks_on_reload=[],\n)\n\ntimers = {}\ndef timer(t0: float, script, callback: str):\n    t1 = time.time()\n    k = f'{os.path.basename(script)}:{callback}'\n    if k not in timers:\n        timers[k] = 0\n    timers[k] += t1 - t0\n\n\ndef print_timers():\n    long_callbacks = []\n    for k, v in timers.items():\n        if v > 0.05:\n            long_callbacks.append(f'{k}={v:.2f}')\n    if len(long_callbacks) > 0:\n        errors.log.debug(f'Script init: {long_callbacks}')\n\n\ndef clear_callbacks():\n    for callback_list in callback_map.values():\n        callback_list.clear()\n\n\ndef app_started_callback(demo: Optional[Blocks], app: FastAPI):\n    for c in callback_map['callbacks_app_started']:\n        try:\n            t0 = time.time()\n            c.callback(demo, app)\n            timer(t0, c.script, 'app_started')\n        except Exception as e:\n            report_exception(e, c, 'app_started_callback')\n\n\ndef before_process_callback(p):\n    for c in callback_map['callbacks_before_process']:\n        try:\n            t0 = time.time()\n            c.callback(p)\n            timer(t0, c.script, 'before_process')\n        except Exception as e:\n            report_exception(e, c, 'before_process_callback')\n\n\ndef after_process_callback(p):\n    for c in callback_map['callbacks_after_process']:\n        try:\n            t0 = time.time()\n            c.callback(p)\n            timer(t0, c.script, 'after_process')\n        except Exception as e:\n            report_exception(e, c, 'after_process_callback')\n\n\ndef app_reload_callback():\n    for c in callback_map['callbacks_on_reload']:\n        try:\n            t0 = time.time()\n            c.callback()\n            timer(t0, c.script, 'on_reload')\n        except Exception as e:\n            report_exception(e, c, 'callbacks_on_reload')\n\n\ndef model_loaded_callback(sd_model):\n    for c in callback_map['callbacks_model_loaded']:\n        try:\n            t0 = time.time()\n            c.callback(sd_model)\n            timer(t0, c.script, 'model_loaded')\n        except Exception as e:\n            report_exception(e, c, 'model_loaded_callback')\n\n\ndef ui_tabs_callback():\n    res = []\n    for c in callback_map['callbacks_ui_tabs']:\n        try:\n            t0 = time.time()\n            res += c.callback() or []\n            timer(t0, c.script, 'ui_tabs')\n        except Exception as e:\n            report_exception(e, c, 'ui_tabs_callback')\n    return res\n\n\ndef ui_settings_callback():\n    for c in callback_map['callbacks_ui_settings']:\n        try:\n            t0 = time.time()\n            c.callback()\n            timer(t0, c.script, 'ui_settings')\n        except Exception as e:\n            report_exception(e, c, 'ui_settings_callback')\n\n\ndef before_image_saved_callback(params: ImageSaveParams):\n    for c in callback_map['callbacks_before_image_saved']:\n        try:\n            t0 = time.time()\n            c.callback(params)\n            timer(t0, c.script, 'before_image_saved')\n        except Exception as e:\n            report_exception(e, c, 'before_image_saved_callback')\n\n\ndef image_saved_callback(params: ImageSaveParams):\n    for c in callback_map['callbacks_image_saved']:\n        try:\n            t0 = time.time()\n            c.callback(params)\n            timer(t0, c.script, 'image_saved')\n        except Exception as e:\n            report_exception(e, c, 'image_saved_callback')\n\n\ndef image_save_btn_callback(filename: str):\n    for c in callback_map['callbacks_image_save_btn']:\n        try:\n            t0 = time.time()\n            c.callback(filename)\n            timer(t0, c.script, 'image_save_btn')\n        except Exception as e:\n            report_exception(e, c, 'image_save_btn_callback')\n\n\ndef extra_noise_callback(params: ExtraNoiseParams):\n    for c in callback_map['callbacks_extra_noise']:\n        try:\n            c.callback(params)\n        except Exception as e:\n            report_exception(e, c, 'callbacks_extra_noise')\n\n\ndef cfg_denoiser_callback(params: CFGDenoiserParams):\n    for c in callback_map['callbacks_cfg_denoiser']:\n        try:\n            t0 = time.time()\n            c.callback(params)\n            timer(t0, c.script, 'cfg_denoiser')\n        except Exception as e:\n            report_exception(e, c, 'cfg_denoiser_callback')\n\n\ndef cfg_denoised_callback(params: CFGDenoisedParams):\n    for c in callback_map['callbacks_cfg_denoised']:\n        try:\n            t0 = time.time()\n            c.callback(params)\n            timer(t0, c.script, 'cfg_denoised')\n        except Exception as e:\n            report_exception(e, c, 'cfg_denoised_callback')\n\n\ndef cfg_after_cfg_callback(params: AfterCFGCallbackParams):\n    for c in callback_map['callbacks_cfg_after_cfg']:\n        try:\n            t0 = time.time()\n            c.callback(params)\n            timer(t0, c.script, 'cfg_after_cfg')\n        except Exception as e:\n            report_exception(e, c, 'cfg_after_cfg_callback')\n\n\ndef before_component_callback(component, **kwargs):\n    for c in callback_map['callbacks_before_component']:\n        try:\n            t0 = time.time()\n            c.callback(component, **kwargs)\n            timer(t0, c.script, 'before_component')\n        except Exception as e:\n            report_exception(e, c, 'before_component_callback')\n\n\ndef after_component_callback(component, **kwargs):\n    for c in callback_map['callbacks_after_component']:\n        try:\n            t0 = time.time()\n            c.callback(component, **kwargs)\n            timer(t0, c.script, 'after_component')\n        except Exception as e:\n            report_exception(e, c, 'after_component_callback')\n\n\ndef image_grid_callback(params: ImageGridLoopParams):\n    for c in callback_map['callbacks_image_grid']:\n        try:\n            t0 = time.time()\n            c.callback(params)\n            timer(t0, c.script, 'image_grid')\n        except Exception as e:\n            report_exception(e, c, 'image_grid')\n\n\ndef infotext_pasted_callback(infotext: str, params: Dict[str, Any]):\n    for c in callback_map['callbacks_infotext_pasted']:\n        try:\n            t0 = time.time()\n            c.callback(infotext, params)\n            timer(t0, c.script, 'infotext_pasted')\n        except Exception as e:\n            report_exception(e, c, 'infotext_pasted')\n\n\ndef script_unloaded_callback():\n    for c in reversed(callback_map['callbacks_script_unloaded']):\n        try:\n            t0 = time.time()\n            c.callback()\n            timer(t0, c.script, 'script_unloaded')\n        except Exception as e:\n            report_exception(e, c, 'script_unloaded')\n\n\ndef before_ui_callback():\n    for c in reversed(callback_map['callbacks_before_ui']):\n        try:\n            t0 = time.time()\n            c.callback()\n            timer(t0, c.script, 'before_ui')\n        except Exception as e:\n            report_exception(e, c, 'before_ui')\n\n\ndef after_ui_callback():\n    for c in reversed(callback_map['callbacks_after_ui']):\n        try:\n            t0 = time.time()\n            c.callback()\n            timer(t0, c.script, 'after_ui')\n        except Exception as e:\n            report_exception(e, c, 'after_ui')\n\n\ndef add_callback(callbacks, fun):\n    # stack = [x for x in inspect.stack(0) if x.filename != __file__]\n    # filename = stack[0].filename if len(stack) > 0 else 'unknown file'\n    filename = sys._getframe().f_back.f_back.f_code.co_filename # pylint: disable=protected-access\n    callbacks.append(ScriptCallback(filename, fun))\n\n\ndef remove_current_script_callbacks():\n    # stack = [x for x in inspect.stack() if x.filename != __file__]\n    # filename = stack[0].filename if len(stack) > 0 else 'unknown file'\n    # if filename == 'unknown file':\n    #    return\n    filename = sys._getframe().f_back.f_back.f_code.co_filename # pylint: disable=protected-access\n    for callback_list in callback_map.values():\n        for callback_to_remove in [cb for cb in callback_list if cb.script == filename]:\n            callback_list.remove(callback_to_remove)\n\n\ndef remove_callbacks_for_function(callback_func):\n    for callback_list in callback_map.values():\n        for callback_to_remove in [cb for cb in callback_list if cb.callback == callback_func]:\n            callback_list.remove(callback_to_remove)\n\n\ndef on_app_started(callback):\n    \"\"\"register a function to be called when the webui started, the gradio `Block` component and\n    fastapi `FastAPI` object are passed as the arguments\"\"\"\n    add_callback(callback_map['callbacks_app_started'], callback)\n\n\ndef on_before_process(callback):\n    \"\"\"register a function to be called just before processing starts\"\"\"\n    add_callback(callback_map['callbacks_before_process'], callback)\n\n\ndef on_after_process(callback):\n    \"\"\"register a function to be called just after processing ends\"\"\"\n    add_callback(callback_map['callbacks_after_process'], callback)\n\n\ndef on_before_reload(callback):\n    \"\"\"register a function to be called just before the server reloads.\"\"\"\n    add_callback(callback_map['callbacks_on_reload'], callback)\n\n\ndef on_model_loaded(callback):\n    \"\"\"register a function to be called when the stable diffusion model is created; the model is\n    passed as an argument; this function is also called when the script is reloaded. \"\"\"\n    add_callback(callback_map['callbacks_model_loaded'], callback)\n\n\ndef on_ui_tabs(callback):\n    \"\"\"register a function to be called when the UI is creating new tabs.\n    The function must either return a None, which means no new tabs to be added, or a list, where\n    each element is a tuple:\n        (gradio_component, title, elem_id)\n\n    gradio_component is a gradio component to be used for contents of the tab (usually gr.Blocks)\n    title is tab text displayed to user in the UI\n    elem_id is HTML id for the tab\n    \"\"\"\n    add_callback(callback_map['callbacks_ui_tabs'], callback)\n\n\ndef on_ui_settings(callback):\n    \"\"\"register a function to be called before UI settings are populated; add your settings\n    by using shared.opts.add_option(shared.OptionInfo(...)) \"\"\"\n    add_callback(callback_map['callbacks_ui_settings'], callback)\n\n\ndef on_before_image_saved(callback):\n    \"\"\"register a function to be called before an image is saved to a file.\n    The callback is called with one argument:\n        - params: ImageSaveParams - parameters the image is to be saved with. You can change fields in this object.\n    \"\"\"\n    add_callback(callback_map['callbacks_before_image_saved'], callback)\n\n\ndef on_image_saved(callback):\n    \"\"\"register a function to be called after an image is saved to a file.\n    The callback is called with one argument:\n        - params: ImageSaveParams - parameters the image was saved with. Changing fields in this object does nothing.\n    \"\"\"\n    add_callback(callback_map['callbacks_image_saved'], callback)\n\n\ndef on_image_save_btn(callback):\n    \"\"\"register a function to be called after an image save button is pressed.\n    The callback is called with one argument:\n        - params: ImageSaveParams - parameters the image was saved with. Changing fields in this object does nothing.\n    \"\"\"\n    add_callback(callback_map['callbacks_image_save_btn'], callback)\n\n\ndef on_extra_noise(callback):\n    \"\"\"register a function to be called before adding extra noise in img2img or hires fix;\n    The callback is called with one argument:\n        - params: ExtraNoiseParams - contains noise determined by seed and latent representation of image\n    \"\"\"\n    add_callback(callback_map['callbacks_extra_noise'], callback)\n\n\ndef on_cfg_denoiser(callback):\n    \"\"\"register a function to be called in the kdiffussion cfg_denoiser method after building the inner model inputs.\n    The callback is called with one argument:\n        - params: CFGDenoiserParams - parameters to be passed to the inner model and sampling state details.\n    \"\"\"\n    add_callback(callback_map['callbacks_cfg_denoiser'], callback)\n\n\ndef on_cfg_denoised(callback):\n    \"\"\"register a function to be called in the kdiffussion cfg_denoiser method after building the inner model inputs.\n    The callback is called with one argument:\n        - params: CFGDenoisedParams - parameters to be passed to the inner model and sampling state details.\n    \"\"\"\n    add_callback(callback_map['callbacks_cfg_denoised'], callback)\n\n\ndef on_cfg_after_cfg(callback):\n    \"\"\"register a function to be called in the kdiffussion cfg_denoiser method after cfg calculations are completed.\n    The callback is called with one argument:\n        - params: AfterCFGCallbackParams - parameters to be passed to the script for post-processing after cfg calculation.\n    \"\"\"\n    add_callback(callback_map['callbacks_cfg_after_cfg'], callback)\n\n\ndef on_before_component(callback):\n    \"\"\"register a function to be called before a component is created.\n    The callback is called with arguments:\n        - component - gradio component that is about to be created.\n        - **kwargs - args to gradio.components.IOComponent.__init__ function\n\n    Use elem_id/label fields of kwargs to figure out which component it is.\n    This can be useful to inject your own components somewhere in the middle of vanilla UI.\n    \"\"\"\n    add_callback(callback_map['callbacks_before_component'], callback)\n\n\ndef on_after_component(callback):\n    \"\"\"register a function to be called after a component is created. See on_before_component for more.\"\"\"\n    add_callback(callback_map['callbacks_after_component'], callback)\n\n\ndef on_image_grid(callback):\n    \"\"\"register a function to be called before making an image grid.\n    The callback is called with one argument:\n       - params: ImageGridLoopParams - parameters to be used for grid creation. Can be modified.\n    \"\"\"\n    add_callback(callback_map['callbacks_image_grid'], callback)\n\n\ndef on_infotext_pasted(callback):\n    \"\"\"register a function to be called before applying an infotext.\n    The callback is called with two arguments:\n       - infotext: str - raw infotext.\n       - result: Dict[str, any] - parsed infotext parameters.\n    \"\"\"\n    add_callback(callback_map['callbacks_infotext_pasted'], callback)\n\n\ndef on_script_unloaded(callback):\n    \"\"\"register a function to be called before the script is unloaded. Any hooks/hijacks/monkeying about that\n    the script did should be reverted here\"\"\"\n\n    add_callback(callback_map['callbacks_script_unloaded'], callback)\n\n\ndef on_before_ui(callback):\n    \"\"\"register a function to be called before the UI is created.\"\"\"\n    add_callback(callback_map['callbacks_before_ui'], callback)\n\n\ndef on_after_ui(callback):\n    \"\"\"register a function to be called before the UI is created.\"\"\"\n    add_callback(callback_map['callbacks_after_ui'], callback)\n"
  },
  {
    "path": "modules/script_loading.py",
    "content": "import io\nimport os\nimport contextlib\nimport importlib.util\nimport modules.errors as errors\nfrom installer import setup_logging\n\n\npreloaded = []\ndebug = os.environ.get('SD_SCRIPT_DEBUG', None)\n\n\ndef load_module(path):\n    module_spec = importlib.util.spec_from_file_location(os.path.basename(path), path)\n    module = importlib.util.module_from_spec(module_spec)\n    try:\n        if 'sd-extension-' in path or 'Lora' in path: # safe extensions without stdout intercept\n            module_spec.loader.exec_module(module)\n        else:\n            if debug:\n                module_spec.loader.exec_module(module)\n                stdout = io.StringIO()\n            else:\n                with contextlib.redirect_stdout(io.StringIO()) as stdout:\n                    module_spec.loader.exec_module(module)\n            setup_logging() # reset since scripts can hijaack logging\n            for line in stdout.getvalue().splitlines():\n                if len(line) > 0:\n                    if '2;36m' in line: # color escape sequence\n                        print(line.strip())\n                    else:\n                        errors.log.info(f\"Extension: script='{os.path.relpath(path)}' {line.strip()}\")\n    except Exception as e:\n        errors.display(e, f'Module load: {path}')\n    return module\n\n\ndef preload_extensions(extensions_dir, parser):\n    if not os.path.isdir(extensions_dir):\n        return\n    for dirname in sorted(os.listdir(extensions_dir)):\n        if dirname in preloaded:\n            continue\n        preloaded.append(dirname)\n        preload_script = os.path.join(extensions_dir, dirname, \"preload.py\")\n        if not os.path.isfile(preload_script):\n            continue\n        try:\n            module = load_module(preload_script)\n            if hasattr(module, 'preload'):\n                module.preload(parser)\n        except Exception as e:\n            errors.display(e, f'Extension preload: {preload_script}')\n"
  },
  {
    "path": "modules/scripts.py",
    "content": "# compatibility with extensions that import scripts directly\nfrom modules import scripts_manager\nfrom modules.scripts_manager import * # noqa: F403 # pylint: disable=wildcard-import\n\n\nscripts_txt2img = None\nscripts_img2img = None\nscripts_control = None\nscripts_current = None\nscripts_postproc = None\n\n\ndef register_runners():\n    global scripts_txt2img, scripts_img2img, scripts_control, scripts_current, scripts_postproc # pylint: disable=global-statement\n    scripts_txt2img = scripts_manager.scripts_txt2img\n    scripts_img2img = scripts_manager.scripts_img2img\n    scripts_control = scripts_manager.scripts_control\n    scripts_current = scripts_manager.scripts_current\n    scripts_postproc = scripts_manager.scripts_postproc\n"
  },
  {
    "path": "modules/scripts_auto_postprocessing.py",
    "content": "from modules import scripts_manager, scripts_postprocessing, shared\n\n\nclass ScriptPostprocessingForMainUI(scripts_manager.Script):\n    def __init__(self, script_postproc):\n        self.script: scripts_postprocessing.ScriptPostprocessing = script_postproc\n        self.postprocessing_controls = None\n\n    def title(self):\n        return self.script.name\n\n    def show(self, is_img2img): # pylint: disable=unused-argument\n        return scripts_manager.AlwaysVisible\n\n    def ui(self, is_img2img): # pylint: disable=unused-argument\n        self.postprocessing_controls = self.script.ui()\n        return self.postprocessing_controls.values()\n\n    def postprocess_image(self, p, script_pp, *args): # pylint: disable=arguments-differ\n        args_dict = dict(zip(self.postprocessing_controls, args))\n        pp = scripts_postprocessing.PostprocessedImage(script_pp.image)\n        pp.info = {}\n        self.script.process(pp, **args_dict)\n        p.extra_generation_params.update(pp.info)\n        script_pp.image = pp.image\n\n\ndef create_auto_preprocessing_script_data():\n    res = []\n    for name in shared.opts.postprocessing_enable_in_main_ui:\n        script = next(iter([x for x in scripts_manager.postprocessing_scripts_data if x.script_class.name == name]), None)\n        if script is None:\n            continue\n        constructor = lambda s=script: ScriptPostprocessingForMainUI(s.script_class()) # pylint: disable=unnecessary-lambda-assignment\n        res.append(scripts_manager.ScriptClassData(script_class=constructor, path=script.path, basedir=script.basedir, module=script.module))\n    return res\n"
  },
  {
    "path": "modules/scripts_manager.py",
    "content": "import os\nimport re\nimport sys\nimport time\nfrom collections import namedtuple\nfrom dataclasses import dataclass\nimport gradio as gr\nfrom modules import paths, script_callbacks, extensions, script_loading, scripts_postprocessing, errors, timer\nfrom installer import control_extensions\n\n\nAlwaysVisible = object()\ntime_component = {}\ntime_setup = {}\ndebug = errors.log.trace if os.environ.get('SD_SCRIPT_DEBUG', None) is not None else lambda *args, **kwargs: None\n\n\nclass PostprocessImageArgs:\n    def __init__(self, image):\n        self.image = image\n\n\nclass PostprocessBatchListArgs:\n    def __init__(self, images):\n        self.images = images\n\n\n@dataclass\nclass OnComponent:\n    component: gr.blocks.Block\n\n\nclass Script:\n    parent = None\n    name = None\n    filename = None\n    args_from = 0\n    args_to = 0\n    alwayson = False\n    is_txt2img = False\n    is_img2img = False\n    api_info = None\n    group = None\n    infotext_fields = None\n    paste_field_names = None\n    section = None\n    standalone = False\n    on_before_component_elem_id = [] # list of callbacks to be called before a component with an elem_id is created\n    on_after_component_elem_id = [] # list of callbacks to be called after a component with an elem_id is created\n\n    def title(self):\n        \"\"\"this function should return the title of the script. This is what will be displayed in the dropdown menu.\"\"\"\n        raise NotImplementedError\n\n    def ui(self, is_img2img):\n        \"\"\"this function should create gradio UI elements. See https://gradio.app/docs/#components\n        The return value should be an array of all components that are used in processing.\n        Values of those returned components will be passed to run() and process() functions.\n        \"\"\"\n        pass # pylint: disable=unnecessary-pass\n\n    def show(self, is_img2img): # pylint: disable=unused-argument\n        \"\"\"\n        is_img2img is True if this function is called for the img2img interface, and False otherwise\n        This function should return:\n         - False if the script should not be shown in UI at all\n         - True if the script should be shown in UI if it's selected in the scripts dropdown\n         - script.AlwaysVisible if the script should be shown in UI at all times\n         \"\"\"\n        return True\n\n    def run(self, p, *args):\n        \"\"\"\n        This function is called if the script has been selected in the script dropdown.\n        It must do all processing and return the Processed object with results, same as\n        one returned by processing.process_images.\n        Usually the processing is done by calling the processing.process_images function.\n        args contains all values returned by components from ui()\n        \"\"\"\n        pass # pylint: disable=unnecessary-pass\n\n    def setup(self, p, *args):\n        \"\"\"For AlwaysVisible scripts, this function is called when the processing object is set up, before any processing starts.\n        args contains all values returned by components from ui().\n        \"\"\"\n        pass # pylint: disable=unnecessary-pass\n\n    def before_process(self, p, *args):\n        \"\"\"\n        This function is called very early during processing begins for AlwaysVisible scripts.\n        You can modify the processing object (p) here, inject hooks, etc.\n        args contains all values returned by components from ui()\n        \"\"\"\n        pass # pylint: disable=unnecessary-pass\n\n    def process(self, p, *args):\n        \"\"\"\n        This function is called before processing begins for AlwaysVisible scripts.\n        You can modify the processing object (p) here, inject hooks, etc.\n        args contains all values returned by components from ui()\n        \"\"\"\n        pass # pylint: disable=unnecessary-pass\n\n    def process_images(self, p, *args):\n        \"\"\"\n        This function is called instead of main processing for AlwaysVisible scripts.\n        You can modify the processing object (p) here, inject hooks, etc.\n        args contains all values returned by components from ui()\n        \"\"\"\n        pass # pylint: disable=unnecessary-pass\n\n    def before_process_batch(self, p, *args, **kwargs):\n        \"\"\"\n        Called before extra networks are parsed from the prompt, so you can add\n        new extra network keywords to the prompt with this callback.\n        **kwargs will have those items:\n          - batch_number - index of current batch, from 0 to number of batches-1\n          - prompts - list of prompts for current batch; you can change contents of this list but changing the number of entries will likely break things\n          - seeds - list of seeds for current batch\n          - subseeds - list of subseeds for current batch\n        \"\"\"\n        pass # pylint: disable=unnecessary-pass\n\n    def process_batch(self, p, *args, **kwargs):\n        \"\"\"\n        Same as process(), but called for every batch.\n        **kwargs will have those items:\n          - batch_number - index of current batch, from 0 to number of batches-1\n          - prompts - list of prompts for current batch; you can change contents of this list but changing the number of entries will likely break things\n          - seeds - list of seeds for current batch\n          - subseeds - list of subseeds for current batch\n        \"\"\"\n        pass # pylint: disable=unnecessary-pass\n\n    def postprocess_batch(self, p, *args, **kwargs):\n        \"\"\"\n        Same as process_batch(), but called for every batch after it has been generated.\n        **kwargs will have same items as process_batch, and also:\n          - batch_number - index of current batch, from 0 to number of batches-1\n          - images - torch tensor with all generated images, with values ranging from 0 to 1;\n        \"\"\"\n        pass # pylint: disable=unnecessary-pass\n\n    def postprocess_image(self, p, pp: PostprocessImageArgs, *args):\n        \"\"\"\n        Called for every image after it has been generated.\n        \"\"\"\n        pass # pylint: disable=unnecessary-pass\n\n    def postprocess_batch_list(self, p, pp: PostprocessBatchListArgs, *args, **kwargs):\n        \"\"\"\n        Same as postprocess_batch(), but receives batch images as a list of 3D tensors instead of a 4D tensor.\n        This is useful when you want to update the entire batch instead of individual images.\n        You can modify the postprocessing object (pp) to update the images in the batch, remove images, add images, etc.\n        If the number of images is different from the batch size when returning,\n        then the script has the responsibility to also update the following attributes in the processing object (p):\n          - p.prompts\n          - p.negative_prompts\n          - p.seeds\n          - p.subseeds\n        **kwargs will have same items as process_batch, and also:\n          - batch_number - index of current batch, from 0 to number of batches-1\n        \"\"\"\n        pass # pylint: disable=unnecessary-pass\n\n    def postprocess(self, p, processed, *args):\n        \"\"\"\n        This function is called after processing ends for AlwaysVisible scripts.\n        args contains all values returned by components from ui()\n        \"\"\"\n        pass # pylint: disable=unnecessary-pass\n\n    def before_component(self, component, **kwargs):\n        \"\"\"\n        Called before a component is created.\n        Use elem_id/label fields of kwargs to figure out which component it is.\n        This can be useful to inject your own components somewhere in the middle of vanilla UI.\n        You can return created components in the ui() function to add them to the list of arguments for your processing functions\n        \"\"\"\n        pass # pylint: disable=unnecessary-pass\n\n    def after_component(self, component, **kwargs):\n        \"\"\"\n        Called after a component is created. Same as above.\n        \"\"\"\n        pass # pylint: disable=unnecessary-pass\n\n    def describe(self):\n        \"\"\"unused\"\"\"\n        return \"\"\n\n    def elem_id(self, item_id):\n        \"\"\"helper function to generate id for a HTML element, constructs final id out of script name, tab and user-supplied item_id\"\"\"\n        title = re.sub(r'[^a-z_0-9]', '', re.sub(r'\\s', '_', self.title().lower()))\n        return f'script_{self.parent}_{title}_{item_id}'\n\n\ncurrent_basedir = paths.script_path\n\n\ndef basedir():\n    \"\"\"returns the base directory for the current script. For scripts in the main scripts directory,\n    this is the main directory (where webui.py resides), and for scripts in extensions directory\n    (ie extensions/aesthetic/script/aesthetic.py), this is extension's directory (extensions/aesthetic)\n    \"\"\"\n    return current_basedir\n\n\nScriptFile = namedtuple(\"ScriptFile\", [\"basedir\", \"filename\", \"path\", \"priority\"])\nscripts_data = []\npostprocessing_scripts_data = []\nScriptClassData = namedtuple(\"ScriptClassData\", [\"script_class\", \"path\", \"basedir\", \"module\"])\n\n\ndef list_scripts(scriptdirname, extension):\n    tmp_list = []\n    base = os.path.join(paths.script_path, scriptdirname)\n    if os.path.exists(base):\n        for filename in sorted(os.listdir(base)):\n            tmp_list.append(ScriptFile(paths.script_path, filename, os.path.join(base, filename), '50'))\n    for ext in extensions.active():\n        tmp_list += ext.list_files(scriptdirname, extension)\n    priority_list = []\n    for script in tmp_list:\n        if os.path.splitext(script.path)[1].lower() == extension and os.path.isfile(script.path):\n            if script.basedir == paths.script_path:\n                priority = '0'\n            elif script.basedir.startswith(os.path.join(paths.script_path, 'scripts')):\n                priority = '1'\n            elif script.basedir.startswith(os.path.join(paths.script_path, 'extensions-builtin')):\n                priority = '2'\n            elif script.basedir.startswith(os.path.join(paths.script_path, 'extensions')):\n                priority = '3'\n            else:\n                priority = '9'\n            if os.path.isfile(os.path.join(base, \"..\", \".priority\")):\n                with open(os.path.join(base, \"..\", \".priority\"), \"r\", encoding=\"utf-8\") as f:\n                    priority = priority + str(f.read().strip())\n                    errors.log.debug(f'Script priority override: ${script.name}:{priority}')\n            else:\n                priority = priority + script.priority\n            priority_list.append(ScriptFile(script.basedir, script.filename, script.path, priority))\n            debug(f'Adding script: folder=\"{script.basedir}\" file=\"{script.filename}\" full=\"{script.path}\" priority={priority}')\n    priority_sort = sorted(priority_list, key=lambda item: item.priority + item.path.lower(), reverse=False)\n    return priority_sort\n\n\ndef list_files_with_name(filename):\n    res = []\n    dirs = [paths.script_path] + [ext.path for ext in extensions.active()]\n    for dirpath in dirs:\n        if not os.path.isdir(dirpath):\n            continue\n        path = os.path.join(dirpath, filename)\n        if os.path.isfile(path):\n            res.append(path)\n    return res\n\n\ndef load_scripts():\n    t = timer.Timer()\n    t0 = time.time()\n    global current_basedir # pylint: disable=global-statement\n    scripts_data.clear()\n    postprocessing_scripts_data.clear()\n    script_callbacks.clear_callbacks()\n    scripts_list = list_scripts('scripts', '.py') + list_scripts(os.path.join('modules', 'face'), '.py')\n    scripts_list = sorted(scripts_list, key=lambda item: item.priority + item.path.lower(), reverse=False)\n    syspath = sys.path\n\n    def register_scripts_from_module(module, scriptfile):\n        for script_class in module.__dict__.values():\n            if type(script_class) != type:\n                continue\n            debug(f'Registering script: path=\"{scriptfile.path}\"')\n            if issubclass(script_class, Script):\n                scripts_data.append(ScriptClassData(script_class, scriptfile.path, scriptfile.basedir, module))\n            elif issubclass(script_class, scripts_postprocessing.ScriptPostprocessing):\n                postprocessing_scripts_data.append(ScriptClassData(script_class, scriptfile.path, scriptfile.basedir, module))\n\n    for scriptfile in scripts_list:\n        try:\n            if scriptfile.basedir != paths.script_path:\n                sys.path = [scriptfile.basedir] + sys.path\n            current_basedir = scriptfile.basedir\n            script_module = script_loading.load_module(scriptfile.path)\n            register_scripts_from_module(script_module, scriptfile)\n        except Exception as e:\n            errors.display(e, f'Load script: {scriptfile.filename}')\n        finally:\n            current_basedir = paths.script_path\n            t.record(os.path.basename(scriptfile.basedir) if scriptfile.basedir != paths.script_path else scriptfile.filename)\n            sys.path = syspath\n\n    global scripts_txt2img, scripts_img2img, scripts_control, scripts_postproc # pylint: disable=global-statement\n    scripts_txt2img = ScriptRunner('txt2img')\n    scripts_img2img = ScriptRunner('img2img')\n    scripts_control = ScriptRunner('control')\n    scripts_postproc = scripts_postprocessing.ScriptPostprocessingRunner()\n    return t, time.time()-t0\n\n\ndef wrap_call(func, filename, funcname, *args, default=None, **kwargs):\n    try:\n        res = func(*args, **kwargs)\n        return res\n    except Exception as e:\n        errors.display(e, f'Calling script: {filename}/{funcname}')\n    return default\n\n\nclass ScriptSummary:\n    def __init__(self, op):\n        self.start = time.time()\n        self.update = time.time()\n        self.op = op\n        self.time = {}\n\n    def record(self, script):\n        self.update = time.time()\n        self.time[script] = round(time.time() - self.update, 2)\n\n    def report(self):\n        total = sum(self.time.values())\n        if total == 0:\n            return\n        scripts = [f'{k}:{v}' for k, v in self.time.items() if v > 0]\n        errors.log.debug(f'Script: op={self.op} total={total} scripts={scripts}')\n\n\nclass ScriptRunner:\n    def __init__(self, name=''):\n        self.name = name\n        self.scripts = []\n        self.selectable_scripts = []\n        self.alwayson_scripts = []\n        self.auto_processing_scripts = []\n        self.titles = []\n        self.alwayson_titles = []\n        self.infotext_fields = []\n        self.paste_field_names = []\n        self.script_load_ctr = 0\n        self.is_img2img = False\n        self.inputs = [None]\n        self.time = 0\n\n    def add_script(self, script_class, path, is_img2img, is_control):\n        try:\n            script = script_class()\n            script.filename = path\n            script.is_txt2img = not is_img2img\n            script.is_img2img = is_img2img\n            if is_control: # this is messy but show is a legacy function that is not aware of control tab\n                v1 = script.show(script.is_txt2img)\n                v2 = script.show(script.is_img2img)\n                if v1 == AlwaysVisible or v2 == AlwaysVisible:\n                    visibility = AlwaysVisible\n                else:\n                    visibility = v1 or v2\n            else:\n                visibility = script.show(script.is_img2img)\n            if visibility == AlwaysVisible:\n                self.scripts.append(script)\n                self.alwayson_scripts.append(script)\n                script.alwayson = True\n            elif visibility:\n                self.scripts.append(script)\n                self.selectable_scripts.append(script)\n        except Exception as e:\n            errors.log.error(f'Script initialize: {path} {e}')\n            errors.display(e, 'script')\n\n    def initialize_scripts(self, is_img2img=False, is_control=False):\n        from modules import scripts_auto_postprocessing\n\n        self.scripts.clear()\n        self.selectable_scripts.clear()\n        self.alwayson_scripts.clear()\n        self.titles.clear()\n        self.alwayson_titles.clear()\n        self.infotext_fields.clear()\n        self.paste_field_names.clear()\n        self.script_load_ctr = 0\n        self.is_img2img = is_img2img\n        self.scripts.clear()\n        self.alwayson_scripts.clear()\n        self.selectable_scripts.clear()\n        self.auto_processing_scripts = scripts_auto_postprocessing.create_auto_preprocessing_script_data()\n\n        try:\n            sorted_scripts = sorted(scripts_data, key=lambda x: x.script_class().title().lower())\n        except Exception:\n            sorted_scripts = scripts_data\n        for script_class, path, _basedir, _script_module in sorted_scripts:\n            self.add_script(script_class, path, is_img2img, is_control)\n\n        try:\n            sorted_scripts = sorted(self.auto_processing_scripts, key=lambda x: x.script_class().title().lower())\n        except Exception:\n            sorted_scripts = self.auto_processing_scripts\n        for script_class, path, _basedir, _script_module in sorted_scripts:\n            self.add_script(script_class, path, is_img2img, is_control)\n\n    def prepare_ui(self):\n        self.inputs = [None]\n\n    def setup_ui(self, parent='unknown', accordion=True):\n        import modules.api.models as api_models\n        self.titles = [wrap_call(script.title, script.filename, \"title\") or f\"{script.filename} [error]\" for script in self.selectable_scripts]\n        self.alwayson_titles = [wrap_call(script.title, script.filename, \"title\") or f\"{script.filename} [error]\" for script in self.alwayson_scripts]\n\n        inputs = []\n        inputs_alwayson = [True]\n\n        def create_script_ui(script: Script, inputs, inputs_alwayson):\n            script.parent = parent\n            script.args_from = len(inputs)\n            script.args_to = len(inputs)\n            controls = wrap_call(script.ui, script.filename, \"ui\", script.is_img2img)\n            if controls is None:\n                return\n            script.name = wrap_call(script.title, script.filename, \"title\", default=script.filename).lower()\n            api_args = []\n            for control in controls:\n                debug(f'Script control: parent={script.parent} script=\"{script.name}\" label=\"{control.label}\" type={control} id={control.elem_id}')\n                if hasattr(gr.components, 'IOComponent'):\n                    if not isinstance(control, gr.components.IOComponent):\n                        errors.log.error(f'Invalid script control: \"{script.filename}\" control={control}')\n                        continue\n                else:\n                    if not isinstance(control, gr.components.Component):\n                        errors.log.error(f'Invalid script control: \"{script.filename}\" control={control}')\n                        continue\n                control.custom_script_source = os.path.basename(script.filename)\n                arg_info = api_models.ScriptArg(label=control.label or \"\")\n                for field in (\"value\", \"minimum\", \"maximum\", \"step\", \"choices\"):\n                    v = getattr(control, field, None)\n                    if v is not None:\n                        setattr(arg_info, field, v)\n                api_args.append(arg_info)\n\n            script.api_info = api_models.ItemScript(\n                name=script.name,\n                is_img2img=script.is_img2img,\n                is_alwayson=script.alwayson,\n                args=api_args,\n            )\n            if script.infotext_fields is not None:\n                self.infotext_fields += script.infotext_fields\n            if script.paste_field_names is not None:\n                self.paste_field_names += script.paste_field_names\n            inputs += controls\n            inputs_alwayson += [script.alwayson for _ in controls]\n            script.args_to = len(inputs)\n\n        with gr.Row():\n            dropdown = gr.Dropdown(label=\"Script\", elem_id=f'{parent}_script_list', choices=[\"None\"] + self.titles, value=\"None\", type=\"index\")\n            inputs.insert(0, dropdown)\n\n        with gr.Row():\n            for script in self.alwayson_scripts:\n                if not script.standalone:\n                    continue\n                if (self.name == 'control') and (script.name not in control_extensions) and (script.title() not in control_extensions):\n                    errors.log.debug(f'Script: fn=\"{script.filename}\" type={self.name} skip')\n                    continue\n                t0 = time.time()\n                with gr.Group(elem_id=f'{parent}_script_{script.title().lower().replace(\" \", \"_\")}', elem_classes=['group-extension']) as group:\n                    create_script_ui(script, inputs, inputs_alwayson)\n                script.group = group\n                time_setup[script.title()] = time_setup.get(script.title(), 0) + (time.time()-t0)\n\n        with gr.Row():\n            with gr.Accordion(label=\"Extensions\", elem_id=f'{parent}_script_alwayson') if accordion else gr.Group():\n                for script in self.alwayson_scripts:\n                    if script.standalone:\n                        continue\n                    if (self.name == 'control') and (paths.extensions_dir in script.filename) and (script.title() not in control_extensions):\n                        errors.log.debug(f'Script: fn=\"{script.filename}\" type={self.name} skip')\n                        continue\n                    t0 = time.time()\n                    with gr.Group(elem_id=f'{parent}_script_{script.title().lower().replace(\" \", \"_\")}', elem_classes=['group-extension']) as group:\n                        create_script_ui(script, inputs, inputs_alwayson)\n                    script.group = group\n                    time_setup[script.title()] = time_setup.get(script.title(), 0) + (time.time()-t0)\n\n        for script in self.selectable_scripts:\n            if (self.name == 'control') and (paths.extensions_dir in script.filename) and (script.title() not in control_extensions):\n                errors.log.debug(f'Script: fn=\"{script.filename}\" type={self.name} skip')\n                continue\n            with gr.Group(elem_id=f'{parent}_script_{script.title().lower().replace(\" \", \"_\")}', elem_classes=['group-scripts'], visible=False) as group:\n                t0 = time.time()\n                create_script_ui(script, inputs, inputs_alwayson)\n                time_setup[script.title()] = time_setup.get(script.title(), 0) + (time.time()-t0)\n                script.group = group\n\n        def select_script(script_index):\n            if script_index is None:\n                return [gr.update(visible=False) for script in self.selectable_scripts]\n            selected_script = self.selectable_scripts[script_index - 1] if script_index > 0 else None\n            return [gr.update(visible=selected_script == s) for s in self.selectable_scripts]\n\n        def init_field(title):\n            if title == 'None': # called when an initial value is set from ui-config.json to show script's UI components\n                return\n            if title not in self.titles:\n                errors.log.error(f'Script: title=\"{title}\" op=init not found')\n                return\n            script_index = self.titles.index(title)\n            self.selectable_scripts[script_index].group.visible = True\n\n        dropdown.init_field = init_field\n        dropdown.change(fn=select_script, inputs=[dropdown], outputs=[script.group for script in self.selectable_scripts if script.group is not None])\n\n        def onload_script_visibility(params):\n            title = params.get('Script', None)\n            if title and title in self.titles:\n                title_index = self.titles.index(title)\n                visibility = title_index == self.script_load_ctr\n                self.script_load_ctr = (self.script_load_ctr + 1) % len(self.titles)\n                return gr.update(visible=visibility)\n            elif title and title in self.alwayson_titles:\n                title_index = self.alwayson_titles.index(title)\n                visibility = title_index == self.script_load_ctr\n                self.script_load_ctr = (self.script_load_ctr + 1) % len(self.titles)\n                return gr.update(visible=visibility)\n            else:\n                errors.log.warning(f'Script: title=\"{title}\" op=visibility not found')\n                return gr.update(visible=False)\n\n        self.infotext_fields.append((dropdown, lambda x: gr.update(value=x.get('Script', 'None'))))\n        self.infotext_fields.extend([(script.group, onload_script_visibility) for script in self.selectable_scripts if script.group is not None])\n        return inputs\n\n    def run(self, p, *args):\n        s = ScriptSummary('run')\n        script_index = args[0] if len(args) > 0 else 0\n        if (script_index is None) or (script_index == 0):\n            return None\n        script = self.selectable_scripts[script_index - 1]\n        if script is None:\n            script = self.alwayson_scripts[script_index - 1]\n        if script is None:\n            return None\n        if 'upscale' in script.title():\n            if not hasattr(p, 'init_images') and p.task_args.get('image', None) is not None:\n                p.init_images = p.task_args['image']\n        parsed = []\n        if hasattr(script, 'args_to') and hasattr(script, 'args_from'):\n            parsed = p.per_script_args.get(script.title(), args[script.args_from:script.args_to])\n        if hasattr(script, 'run'):\n            processed = script.run(p, *parsed)\n        else:\n            processed = None\n            errors.log.error(f'Script: file=\"{script.filename}\" no run function defined')\n        s.record(script.title())\n        s.report()\n        return processed\n\n    def after(self, p, processed, *args):\n        s = ScriptSummary('after')\n        script_index = args[0] if len(args) > 0 else 0\n        if (script_index is None) or (script_index == 0):\n            return processed\n        script = self.selectable_scripts[script_index - 1]\n        if script is None or not hasattr(script, 'after'):\n            return processed\n        parsed = []\n        if hasattr(script, 'args_to') and hasattr(script, 'args_from'):\n            parsed = p.per_script_args.get(script.title(), args[script.args_from:script.args_to])\n        after_processed = script.after(p, processed, *parsed)\n        if after_processed is not None:\n            processed = after_processed\n        s.record(script.title())\n        s.report()\n        return processed\n\n    def before_process(self, p, **kwargs):\n        s = ScriptSummary('before-process')\n        for script in self.alwayson_scripts:\n            try:\n                if hasattr(script, 'args_to') and hasattr(script, 'args_from') and (script.args_to > 0) and (script.args_to >= script.args_from):\n                    args = p.per_script_args.get(script.title(), p.script_args[script.args_from:script.args_to])\n                    script.before_process(p, *args, **kwargs)\n            except Exception as e:\n                errors.display(e, f\"Error running before process: {script.filename}\")\n            s.record(script.title())\n        s.report()\n\n    def process(self, p, **kwargs):\n        s = ScriptSummary('process')\n        for script in self.alwayson_scripts:\n            try:\n                if hasattr(script, 'args_to') and hasattr(script, 'args_from') and (script.args_to > 0) and (script.args_to >= script.args_from):\n                    args = p.per_script_args.get(script.title(), p.script_args[script.args_from:script.args_to])\n                    script.process(p, *args, **kwargs)\n            except Exception as e:\n                errors.display(e, f'Running script process: {script.filename}')\n            s.record(script.title())\n        s.report()\n\n    def process_images(self, p, **kwargs):\n        s = ScriptSummary('process_images')\n        processed = None\n        for script in self.alwayson_scripts:\n            try:\n                if hasattr(script, 'args_to') and hasattr(script, 'args_from') and (script.args_to > 0) and (script.args_to >= script.args_from):\n                    args = p.per_script_args.get(script.title(), p.script_args[script.args_from:script.args_to])\n                    _processed = script.process_images(p, *args, **kwargs)\n                    if _processed is not None:\n                        processed = _processed\n            except Exception as e:\n                errors.display(e, f'Running script process images: {script.filename}')\n            s.record(script.title())\n        s.report()\n        return processed\n\n    def before_process_batch(self, p, **kwargs):\n        s = ScriptSummary('before-process-batch')\n        for script in self.alwayson_scripts:\n            try:\n                if hasattr(script, 'args_to') and hasattr(script, 'args_from') and (script.args_to > 0) and (script.args_to >= script.args_from):\n                    args = p.per_script_args.get(script.title(), p.script_args[script.args_from:script.args_to])\n                    script.before_process_batch(p, *args, **kwargs)\n            except Exception as e:\n                errors.display(e, f'Running script before process batch: {script.filename}')\n            s.record(script.title())\n        s.report()\n\n    def process_batch(self, p, **kwargs):\n        s = ScriptSummary('process-batch')\n        for script in self.alwayson_scripts:\n            try:\n                if hasattr(script, 'args_to') and hasattr(script, 'args_from') and (script.args_to > 0) and (script.args_to >= script.args_from):\n                    args = p.per_script_args.get(script.title(), p.script_args[script.args_from:script.args_to])\n                    script.process_batch(p, *args, **kwargs)\n            except Exception as e:\n                errors.display(e, f'Running script process batch: {script.filename}')\n            s.record(script.title())\n        s.report()\n\n    def postprocess(self, p, processed):\n        s = ScriptSummary('postprocess')\n        for script in self.alwayson_scripts:\n            try:\n                if hasattr(script, 'args_to') and hasattr(script, 'args_from') and (script.args_to > 0) and (script.args_to >= script.args_from):\n                    args = p.per_script_args.get(script.title(), p.script_args[script.args_from:script.args_to])\n                    script.postprocess(p, processed, *args)\n            except Exception as e:\n                errors.display(e, f'Running script postprocess: {script.filename}')\n            s.record(script.title())\n        s.report()\n\n    def postprocess_batch(self, p, images, **kwargs):\n        s = ScriptSummary('postprocess-batch')\n        for script in self.alwayson_scripts:\n            try:\n                if hasattr(script, 'args_to') and hasattr(script, 'args_from') and (script.args_to > 0) and (script.args_to >= script.args_from):\n                    args = p.per_script_args.get(script.title(), p.script_args[script.args_from:script.args_to])\n                    script.postprocess_batch(p, *args, images=images, **kwargs)\n            except Exception as e:\n                errors.display(e, f'Running script before postprocess batch: {script.filename}')\n            s.record(script.title())\n        s.report()\n\n    def postprocess_batch_list(self, p, pp: PostprocessBatchListArgs, **kwargs):\n        s = ScriptSummary('postprocess-batch-list')\n        for script in self.alwayson_scripts:\n            try:\n                if hasattr(script, 'args_to') and hasattr(script, 'args_from') and (script.args_to > 0) and (script.args_to >= script.args_from):\n                    args = p.per_script_args.get(script.title(), p.script_args[script.args_from:script.args_to])\n                    script.postprocess_batch_list(p, pp, *args, **kwargs)\n            except Exception as e:\n                errors.display(e, f'Running script before postprocess batch list: {script.filename}')\n            s.record(script.title())\n        s.report()\n\n    def postprocess_image(self, p, pp: PostprocessImageArgs):\n        s = ScriptSummary('postprocess-image')\n        for script in self.alwayson_scripts:\n            try:\n                if hasattr(script, 'args_to') and hasattr(script, 'args_from') and (script.args_to > 0) and (script.args_to >= script.args_from):\n                    args = p.per_script_args.get(script.title(), p.script_args[script.args_from:script.args_to])\n                    script.postprocess_image(p, pp, *args)\n            except Exception as e:\n                errors.display(e, f'Running script postprocess image: {script.filename}')\n            s.record(script.title())\n        s.report()\n\n    def before_component(self, component, **kwargs):\n        s = ScriptSummary('before-component')\n        for script in self.scripts:\n            try:\n                script.before_component(component, **kwargs)\n            except Exception as e:\n                errors.display(e, f'Running script before component: {script.filename}')\n            s.record(script.title())\n        s.report()\n\n    def after_component(self, component, **kwargs):\n        s = ScriptSummary('after-component')\n        for script in self.scripts:\n            for elem_id, callback in script.on_after_component_elem_id:\n                if elem_id == kwargs.get(\"elem_id\"):\n                    try:\n                        callback(OnComponent(component=component))\n                    except Exception as e:\n                        errors.display(e, f\"Running script before_component_elem_id: {script.filename}\")\n            try:\n                script.after_component(component, **kwargs)\n            except Exception as e:\n                errors.display(e, f'Running script after component: {script.filename}')\n            s.record(script.title())\n        s.report()\n\n    def reload_sources(self, cache):\n        s = ScriptSummary('reload-sources')\n        for si, script in list(enumerate(self.scripts)):\n            if hasattr(script, 'args_to') and hasattr(script, 'args_from'):\n                args_from = script.args_from\n                args_to = script.args_to\n                filename = script.filename\n                module = cache.get(filename, None)\n                if module is None:\n                    module = script_loading.load_module(script.filename)\n                    cache[filename] = module\n                for script_class in module.__dict__.values():\n                    if type(script_class) == type and issubclass(script_class, Script):\n                        self.scripts[si] = script_class()\n                        self.scripts[si].filename = filename\n                        self.scripts[si].args_from = args_from\n                        self.scripts[si].args_to = args_to\n                s.record(script.title())\n        s.report()\n\n\nscripts_txt2img: ScriptRunner = None\nscripts_img2img: ScriptRunner = None\nscripts_control: ScriptRunner = None\nscripts_current: ScriptRunner = None\nscripts_postproc: scripts_postprocessing.ScriptPostprocessingRunner = None\nreload_scripts = load_scripts  # compatibility alias\n\n\ndef reload_script_body_only():\n    cache = {}\n    scripts_txt2img.reload_sources(cache)\n    scripts_img2img.reload_sources(cache)\n    scripts_control.reload_sources(cache)\n"
  },
  {
    "path": "modules/scripts_postprocessing.py",
    "content": "import os\nimport gradio as gr\nfrom modules import errors, shared\n\n\nclass PostprocessedImage:\n    def __init__(self, image, info = {}):\n        self.image = image\n        self.info = info\n\n\nclass ScriptPostprocessing:\n    filename = None\n    controls = None\n    args_from = None\n    args_to = None\n    order = 1000 # scripts will be ordred by this value in postprocessing UI\n    name = None # this function should return the title of the script\n    group = None # A gr.Group component that has all script's UI inside it\n\n    def ui(self):\n        \"\"\"\n        This function should create gradio UI elements. See https://gradio.app/docs/#components\n        The return value should be a dictionary that maps parameter names to components used in processing.\n        Values of those components will be passed to process() function.\n        \"\"\"\n        pass # pylint: disable=unnecessary-pass\n\n    def process(self, pp: PostprocessedImage, **args):\n        \"\"\"\n        This function is called to postprocess the image.\n        args contains a dictionary with all values returned by components from ui()\n        \"\"\"\n        pass # pylint: disable=unnecessary-pass\n\n    def image_changed(self):\n        pass\n\n\ndef wrap_call(func, filename, funcname, *args, default=None, **kwargs):\n    try:\n        res = func(*args, **kwargs)\n        return res\n    except Exception as e:\n        errors.display(e, f\"calling {filename}/{funcname}\")\n\n    return default\n\n\nclass ScriptPostprocessingRunner:\n    def __init__(self):\n        self.scripts = []\n        self.ui_created = False\n\n    def initialize_scripts(self, scripts_data):\n        self.scripts = []\n        for script_class, path, _basedir, _script_module in scripts_data:\n            script: ScriptPostprocessing = script_class()\n            script.filename = path\n            if script.name == \"Simple Upscale\":\n                continue\n            self.scripts.append(script)\n\n    def create_script_ui(self, script, inputs):\n        script.args_from = len(inputs)\n        script.args_to = len(inputs)\n        script.controls = wrap_call(script.ui, script.filename, \"ui\")\n        for control in script.controls.values() if script.controls is not None else []:\n            control.custom_script_source = os.path.basename(script.filename)\n        inputs += list(script.controls.values())\n        script.args_to = len(inputs)\n\n    def scripts_in_preferred_order(self):\n        if self.scripts is None or len(self.scripts) == 0:\n            import modules.scripts_manager\n            self.initialize_scripts(modules.scripts_manager.postprocessing_scripts_data)\n        scripts_order = shared.opts.postprocessing_operation_order\n\n        def script_score(name):\n            for i, possible_match in enumerate(scripts_order):\n                if possible_match == name:\n                    return i\n            return len(self.scripts)\n\n        script_scores = {script.name: (script_score(script.name), script.order, script.name, original_index) for original_index, script in enumerate(self.scripts)}\n        return sorted(self.scripts, key=lambda x: script_scores[x.name])\n\n    def setup_ui(self):\n        inputs = []\n        for script in self.scripts_in_preferred_order():\n            with gr.Accordion(label=script.name, open=False, elem_classes=['postprocess']) as group:\n                self.create_script_ui(script, inputs)\n            script.group = group\n        self.ui_created = True\n        return inputs\n\n    def run(self, pp: PostprocessedImage, args):\n        for script in self.scripts_in_preferred_order():\n            jobid = shared.state.begin(script.name)\n            script_args = args[script.args_from:script.args_to]\n            process_args = {}\n            for (name, _component), value in zip(script.controls.items(), script_args):\n                process_args[name] = value\n            shared.log.debug(f'Process: script=\"{script.name}\" args={process_args}')\n            script.process(pp, **process_args)\n            shared.state.end(jobid)\n\n    def create_args_for_run(self, scripts_args):\n        if not self.ui_created:\n            with gr.Blocks(analytics_enabled=False):\n                self.setup_ui()\n        scripts = self.scripts_in_preferred_order()\n        args = [None] * max([x.args_to for x in scripts])\n        for script in scripts:\n            script_args_dict = scripts_args.get(script.name, None)\n            if script_args_dict is not None:\n                for i, name in enumerate(script.controls):\n                    args[script.args_from + i] = script_args_dict.get(name, None)\n        return args\n\n    def image_changed(self):\n        for script in self.scripts_in_preferred_order():\n            script.image_changed()\n\n    def postprocess(self, filenames, args):\n        for script in self.scripts_in_preferred_order():\n            if not hasattr(script, 'postprocess'):\n                continue\n            jobid = shared.state.begin(script.name)\n            script_args = args[script.args_from:script.args_to]\n            process_args = {}\n            for (name, _component), value in zip(script.controls.items(), script_args):\n                process_args[name] = value\n            shared.log.debug(f'Postprocess: script={script.name} args={process_args}')\n            script.postprocess(filenames, **process_args)\n            shared.state.end(jobid)\n"
  },
  {
    "path": "modules/sd_checkpoint.py",
    "content": "import io\nimport base64\nimport os\nimport re\nimport time\nimport json\nimport collections\nfrom PIL import Image\nfrom modules import shared, paths, modelloader, hashes, sd_hijack_accelerate\n\n\ncheckpoints_list = {}\ncheckpoint_aliases = {}\ncheckpoints_loaded = collections.OrderedDict()\nmodel_dir = \"Stable-diffusion\"\nmodel_path = os.path.abspath(os.path.join(paths.models_path, model_dir))\nsd_metadata_file = os.path.join(paths.data_path, \"data\", \"metadata.json\")\nsd_metadata = None\nsd_metadata_pending = 0\nsd_metadata_timer = 0\nwarn_once = False\n\n\nclass CheckpointInfo:\n    def __init__(self, filename, sha=None, subfolder=None):\n        self.name = None\n        self.hash = sha\n        self.filename = filename\n        self.type = ''\n        self.subfolder = subfolder\n        relname = filename\n        app_path = os.path.abspath(paths.script_path)\n\n        def rel(fn, path):\n            try:\n                return os.path.relpath(fn, path)\n            except Exception:\n                return fn\n\n        if relname.startswith('..'):\n            relname = os.path.abspath(relname)\n        if relname.startswith(shared.opts.ckpt_dir):\n            relname = rel(filename, shared.opts.ckpt_dir)\n        elif relname.startswith(shared.opts.diffusers_dir):\n            relname = rel(filename, shared.opts.diffusers_dir)\n        elif relname.startswith(model_path):\n            relname = rel(filename, model_path)\n        elif relname.startswith(paths.script_path):\n            relname = rel(filename, paths.script_path)\n        elif relname.startswith(app_path):\n            relname = rel(filename, app_path)\n        else:\n            relname = os.path.abspath(relname)\n        relname, ext = os.path.splitext(relname)\n        ext = ext.lower()[1:]\n\n        if filename.lower() == 'none':\n            self.name = 'none'\n            self.relname = 'none'\n            self.sha256 = None\n            self.type = 'unknown'\n        elif os.path.isfile(filename): # ckpt or safetensor\n            self.name = relname\n            self.filename = filename\n            self.sha256 = hashes.sha256_from_cache(self.filename, f\"checkpoint/{relname}\")\n            self.type = ext\n            if 'nf4' in filename:\n                self.type = 'transformer'\n        else: # maybe a diffuser\n            if self.hash is None:\n                repo = [r for r in modelloader.diffuser_repos if self.filename == r['name']]\n            else:\n                repo = [r for r in modelloader.diffuser_repos if self.hash == r['hash']]\n            if len(repo) == 0:\n                self.name = filename\n                self.filename = filename\n                self.sha256 = None\n                self.type = 'unknown'\n            else:\n                self.name = os.path.join(os.path.basename(shared.opts.diffusers_dir), repo[0]['name'])\n                self.filename = repo[0]['path']\n                self.sha256 = repo[0]['hash']\n                self.type = 'diffusers'\n\n        self.shorthash = self.sha256[0:10] if self.sha256 else None\n        self.title = self.name if self.shorthash is None else f'{self.name} [{self.shorthash}]'\n        self.path = self.filename\n        self.model_name = os.path.basename(self.name)\n        self.metadata = read_metadata_from_safetensors(filename)\n        # shared.log.debug(f'Checkpoint: type={self.type} name={self.name} filename={self.filename} hash={self.shorthash} title={self.title}')\n\n    def register(self):\n        checkpoints_list[self.title] = self\n        for i in [self.name, self.filename, self.shorthash, self.title]:\n            if i is not None:\n                checkpoint_aliases[i] = self\n\n    def calculate_shorthash(self):\n        self.sha256 = hashes.sha256(self.filename, f\"checkpoint/{self.name}\")\n        if self.sha256 is None:\n            return None\n        self.shorthash = self.sha256[0:10]\n        if self.title in checkpoints_list:\n            checkpoints_list.pop(self.title)\n        self.title = f'{self.name} [{self.shorthash}]'\n        self.register()\n        return self.shorthash\n\n    def __str__(self):\n        return f'CheckpointInfo(name=\"{self.name}\" filename=\"{self.filename}\" hash={self.shorthash} type={self.type} title=\"{self.title}\" path=\"{self.path}\" subfolder=\"{self.subfolder}\")'\n\n\ndef setup_model():\n    list_models()\n    sd_hijack_accelerate.hijack_hfhub()\n    # sd_hijack_accelerate.hijack_torch_conv()\n\n\ndef checkpoint_titles(use_short=False):\n    def convert(name):\n        return int(name) if name.isdigit() else name.lower()\n\n    def alphanumeric_key(key):\n        return [convert(c) for c in re.split(\"([0-9]+)\", key)]\n\n    if use_short:\n        return sorted([x.title.rsplit(\"\\\\\", 1)[-1].rsplit(\"/\", 1)[-1] for x in checkpoints_list.values()], key=alphanumeric_key)\n    return sorted([x.title for x in checkpoints_list.values()], key=alphanumeric_key)\n\n\ndef list_models():\n    t0 = time.time()\n    global checkpoints_list # pylint: disable=global-statement\n    checkpoints_list.clear()\n    checkpoint_aliases.clear()\n    ext_filter = [\".safetensors\"]\n    model_list = list(modelloader.load_models(model_path=model_path, model_url=None, command_path=shared.opts.ckpt_dir, ext_filter=ext_filter, download_name=None, ext_blacklist=[\".vae.ckpt\", \".vae.safetensors\"]))\n    safetensors_list = []\n    for filename in sorted(model_list, key=str.lower):\n        checkpoint_info = CheckpointInfo(filename)\n        safetensors_list.append(checkpoint_info)\n        if checkpoint_info.name is not None:\n            checkpoint_info.register()\n    diffusers_list = []\n    for repo in modelloader.load_diffusers_models(clear=True):\n        checkpoint_info = CheckpointInfo(repo['name'], sha=repo['hash'])\n        diffusers_list.append(checkpoint_info)\n        if checkpoint_info.name is not None:\n            checkpoint_info.register()\n    if shared.cmd_opts.ckpt is not None:\n        checkpoint_info = CheckpointInfo(shared.cmd_opts.ckpt)\n        if checkpoint_info.name is not None:\n            checkpoint_info.register()\n            shared.opts.data['sd_model_checkpoint'] = checkpoint_info.title\n    elif shared.cmd_opts.ckpt != shared.default_sd_model_file and shared.cmd_opts.ckpt is not None:\n        shared.log.warning(f'Load model: path=\"{shared.cmd_opts.ckpt}\" not found')\n    shared.log.info(f'Available Models: safetensors=\"{shared.opts.ckpt_dir}\":{len(safetensors_list)} diffusers=\"{shared.opts.diffusers_dir}\":{len(diffusers_list)} reference={len(list(shared.reference_models))} items={len(checkpoints_list)} time={time.time()-t0:.2f}')\n    checkpoints_list = dict(sorted(checkpoints_list.items(), key=lambda cp: cp[1].filename))\n\n\ndef update_model_hashes():\n    def update_model_hashes_table(rows):\n        html = \"\"\"\n            <table class=\"simple-table\">\n                <thead>\n                    <tr><th>Name</th><th>Type</th><th>Hash</th></tr>\n                </thead>\n                <tbody>\n                    {tbody}\n                </tbody>\n            </table>\n        \"\"\"\n        tbody = ''\n        for row in rows:\n            try:\n                tbody += f\"\"\"\n                    <tr>\n                        <td>{row.name}</td>\n                        <td>{row.type}</td>\n                        <td>{row.shorthash}</td>\n                    </tr>\n                \"\"\"\n            except Exception as e:\n                shared.log.error(f'Model list: row={row} {e}')\n        return html.format(tbody=tbody)\n\n    lst = [ckpt for ckpt in checkpoints_list.values() if ckpt.hash is None]\n    for ckpt in lst:\n        ckpt.hash = model_hash(ckpt.filename)\n    lst = [ckpt for ckpt in checkpoints_list.values() if ckpt.sha256 is None or ckpt.shorthash is None]\n    shared.log.info(f'Models list: hash missing={len(lst)} total={len(checkpoints_list)}')\n    updated = []\n    for ckpt in lst:\n        ckpt.sha256 = hashes.sha256(ckpt.filename, f\"checkpoint/{ckpt.name}\")\n        ckpt.shorthash = ckpt.sha256[0:10] if ckpt.sha256 is not None else None\n        updated.append(ckpt)\n        yield update_model_hashes_table(updated)\n\n\ndef remove_hash(s):\n    return re.sub(r'\\s*\\[.*?\\]', '', s)\n\n\ndef get_closest_checkpoint_match(s: str) -> CheckpointInfo:\n    # direct hf url\n    if s.startswith('https://huggingface.co/'):\n        model_name = s.replace('https://huggingface.co/', '')\n        checkpoint_info = CheckpointInfo(model_name) # create a virutal model info\n        checkpoint_info.type = 'huggingface'\n        shared.log.debug(f'Seach model: name=\"{s}\" matched=\"{checkpoint_info.path}\" type=huggingface')\n        return checkpoint_info\n    if s.startswith('huggingface/'):\n        model_name = s.replace('huggingface/', '')\n        checkpoint_info = CheckpointInfo(model_name) # create a virutal model info\n        checkpoint_info.type = 'huggingface'\n        return checkpoint_info\n\n    # alias search\n    checkpoint_info = checkpoint_aliases.get(s, None)\n    if checkpoint_info is not None:\n        shared.log.debug(f'Search model: name=\"{s}\" matched=\"{checkpoint_info.path}\" type=alias')\n        return checkpoint_info\n\n    # models search\n    found = sorted([info for info in checkpoints_list.values() if os.path.basename(info.title).lower() == s.lower()], key=lambda x: len(x.title))\n    if found and len(found) == 1:\n        checkpoint_info = found[0]\n        shared.log.debug(f'Search model: name=\"{s}\" matched=\"{checkpoint_info.path}\" type=hash')\n        return checkpoint_info\n\n    # nohash search\n    found = sorted([info for info in checkpoints_list.values() if remove_hash(info.title).lower() == remove_hash(s).lower()], key=lambda x: len(x.title))\n    if found and len(found) == 1:\n        checkpoint_info = found[0]\n        shared.log.debug(f'Search model: name=\"{s}\" matched=\"{checkpoint_info.path}\" type=model')\n        return checkpoint_info\n\n    # absolute path\n    if s.endswith('.safetensors') and os.path.isfile(s):\n        checkpoint_info = CheckpointInfo(s)\n        checkpoint_info.type = 'safetensors'\n        shared.log.debug(f'Search model: name=\"{s}\" matched=\"{checkpoint_info.path}\" type=safetensors')\n        return checkpoint_info\n\n    # reference search\n    ref = [(k, v) for k, v in shared.reference_models.items() if f\"{v.get('path', '')}+{v.get('subfolder', '')}\" == s]\n    if len(ref) == 0:\n        ref = [(k, v) for k, v in shared.reference_models.items() if v.get('path', '') == s]\n    if ref and len(ref) > 0:\n        _name, info = ref[0]\n        checkpoint_info = CheckpointInfo(s)\n        checkpoint_info.subfolder = info.get('subfolder', None)\n        checkpoint_info.type = 'reference'\n        shared.log.debug(f'Search model: name=\"{s}\" matched=\"{checkpoint_info.path}\" type=reference')\n        return checkpoint_info\n\n    # huggingface search\n    if shared.opts.sd_checkpoint_autodownload and (s.count('/') == 1 or s.count('/') == 2):\n        if s.count('/') == 2:\n            subfolder = '/'.join(s.split('/')[2:]) # subfolder\n            s = '/'.join(s.split('/')[:2]) # only user/model\n        else:\n            subfolder = None\n        modelloader.hf_login()\n        found = modelloader.find_diffuser(s, full=True)\n        if found is None:\n            return None\n        found = [f for f in found if f == s]\n        shared.log.info(f'HF search: model=\"{s}\" results={found}')\n        if found is not None and len(found) == 1:\n            checkpoint_info = CheckpointInfo(s)\n            checkpoint_info.type = 'huggingface'\n            if subfolder is not None and len(subfolder) > 0:\n                checkpoint_info.subfolder = subfolder\n            shared.log.debug(f'Search model: name=\"{s}\" matched=\"{checkpoint_info.path}\" type=huggingface')\n            return checkpoint_info\n\n    # civitai search\n    if shared.opts.sd_checkpoint_autodownload and s.startswith(\"https://civitai.com/api/download/models\"):\n        from modules.civitai.download_civitai import download_civit_model_thread\n        fn = download_civit_model_thread(model_name=None, model_url=s, model_path='', model_type='Model', token=None)\n        if fn is not None:\n            checkpoint_info = CheckpointInfo(fn)\n            shared.log.debug(f'Search model: name=\"{s}\" matched=\"{checkpoint_info.path}\" type=civitai')\n            return checkpoint_info\n\n    return None\n\n\ndef model_hash(filename):\n    \"\"\"old hash that only looks at a small part of the file and is prone to collisions\"\"\"\n    try:\n        with open(filename, \"rb\") as file:\n            import hashlib\n            m = hashlib.sha256()\n            file.seek(0x100000)\n            m.update(file.read(0x10000))\n            shorthash = m.hexdigest()[0:8]\n            return shorthash\n    except FileNotFoundError:\n        return 'NOFILE'\n    except Exception:\n        return 'NOHASH'\n\n\ndef select_checkpoint(op='model', sd_model_checkpoint=None):\n    model_checkpoint = sd_model_checkpoint or (shared.opts.data.get('sd_model_refiner', None) if op == 'refiner' else shared.opts.data.get('sd_model_checkpoint', None))\n    if model_checkpoint is None or model_checkpoint == 'None' or len(model_checkpoint) < 3:\n        return None\n    checkpoint_info = get_closest_checkpoint_match(model_checkpoint)\n    if checkpoint_info is not None:\n        shared.log.info(f'Load {op}: select=\"{checkpoint_info.title if checkpoint_info is not None else None}\"')\n        return checkpoint_info\n    if len(checkpoints_list) == 0:\n        shared.log.error(\"No models found\")\n        global warn_once # pylint: disable=global-statement\n        if not warn_once:\n            warn_once = True\n            shared.log.info(\"Set system paths to use existing folders\")\n            shared.log.info(\"  or use --models-dir <path-to-folder> to specify base folder with all models\")\n            shared.log.info(\"  or use --ckpt <path-to-checkpoint> to force using specific model\")\n        return None\n    if model_checkpoint is not None:\n        if model_checkpoint != 'model.safetensors' and model_checkpoint != 'stabilityai/stable-diffusion-xl-base-1.0':\n            shared.log.error(f'Load {op}: search=\"{model_checkpoint}\" not found')\n        else:\n            shared.log.info(\"Selecting first available checkpoint\")\n    else:\n        shared.log.info(f'Load {op}: select=\"{checkpoint_info.title if checkpoint_info is not None else None}\"')\n    return checkpoint_info\n\n\ndef init_metadata():\n    global sd_metadata # pylint: disable=global-statement\n    if sd_metadata is None:\n        sd_metadata = shared.readfile(sd_metadata_file, lock=True, as_type=\"dict\") if os.path.isfile(sd_metadata_file) else {}\n\n\ndef extract_thumbnail(filename, data):\n    try:\n        thumbnail = data.split(\",\")[1]\n        thumbnail = base64.b64decode(thumbnail)\n        thumbnail = io.BytesIO(thumbnail)\n        thumbnail = Image.open(thumbnail)\n        thumbnail = thumbnail.convert(\"RGB\")\n        thumbnail = thumbnail.resize((512, 512), Image.Resampling.HAMMING)\n        fn = os.path.splitext(filename)[0]\n        thumbnail = thumbnail.save(f\"{fn}.thumb.jpg\", quality=50)\n    except Exception as e:\n        shared.log.error(f\"Error extracting thumbnail: {filename} {e}\")\n\n\ndef read_metadata_from_safetensors(filename):\n    global sd_metadata # pylint: disable=global-statement\n    if sd_metadata is None:\n        sd_metadata = shared.readfile(sd_metadata_file, lock=True, as_type=\"dict\") if os.path.isfile(sd_metadata_file) else {}\n    res = sd_metadata.get(filename, None)\n    if res is not None:\n        return res\n    if not filename.endswith(\".safetensors\"):\n        return {}\n    if shared.cmd_opts.no_metadata:\n        return {}\n    res = {}\n    # try:\n    t0 = time.time()\n    with open(filename, mode=\"rb\") as file:\n        try:\n            metadata_len = file.read(8)\n            metadata_len = int.from_bytes(metadata_len, \"little\")\n            json_start = file.read(2)\n            if metadata_len <= 2 or json_start not in (b'{\"', b\"{'\"):\n                shared.log.error(f'Model metadata invalid: file=\"{filename}\" len={metadata_len} start={json_start}')\n                return res\n            json_data = json_start + file.read(metadata_len-2)\n            json_obj = json.loads(json_data)\n            for k, v in json_obj.get(\"__metadata__\", {}).items():\n                if k == 'modelspec.thumbnail' and v.startswith(\"data:\"):\n                    extract_thumbnail(filename, v)\n                if v.startswith(\"data:\"):\n                    v = 'data'\n                if k == 'format' and v == 'pt':\n                    continue\n                large = True if len(v) > 2048 else False\n                if large and k in ['ss_datasets', 'workflow', 'prompt', 'ss_bucket_info', 'sd_metadata_file']:\n                    continue\n                if v[0:1] == '{':\n                    try:\n                        v = json.loads(v)\n                        if large and k == 'ss_tag_frequency':\n                            v = { i: len(j) for i, j in v.items() }\n                        if large and k == 'sd_merge_models':\n                            scrub_dict(v, ['sd_merge_recipe'])\n                    except Exception:\n                        pass\n                res[k] = v\n        except Exception as e:\n            shared.log.error(f'Model metadata: file=\"{filename}\" {e}')\n            from modules import errors\n            errors.display(e, 'Model metadata')\n    sd_metadata[filename] = res\n    global sd_metadata_pending # pylint: disable=global-statement\n    sd_metadata_pending += 1\n    t1 = time.time()\n    global sd_metadata_timer # pylint: disable=global-statement\n    sd_metadata_timer += (t1 - t0)\n    return res\n\n\ndef scrub_dict(dict_obj, keys):\n    for key in list(dict_obj.keys()):\n        if not isinstance(dict_obj, dict):\n            continue\n        if key in keys:\n            dict_obj.pop(key, None)\n        elif isinstance(dict_obj[key], dict):\n            scrub_dict(dict_obj[key], keys)\n        elif isinstance(dict_obj[key], list):\n            for item in dict_obj[key]:\n                scrub_dict(item, keys)\n\n\ndef write_metadata():\n    global sd_metadata_pending # pylint: disable=global-statement\n    if sd_metadata_pending == 0:\n        shared.log.debug(f'Model metadata: file=\"{sd_metadata_file}\" no changes')\n        return\n    shared.writefile(sd_metadata, sd_metadata_file)\n    shared.log.info(f'Model metadata saved: file=\"{sd_metadata_file}\" items={sd_metadata_pending} time={sd_metadata_timer:.2f}')\n    sd_metadata_pending = 0\n"
  },
  {
    "path": "modules/sd_detect.py",
    "content": "import os\nimport time\nimport torch\nimport diffusers\nfrom modules import shared, shared_items, devices, errors, model_tools\n\n\ndebug_load = os.environ.get('SD_LOAD_DEBUG', None)\n\n\ndef guess_by_size(fn, current_guess):\n    new_guess = None\n    if os.path.isfile(fn) and fn.endswith('.safetensors'):\n        size = round(os.path.getsize(fn) / 1024 / 1024)\n        if (size > 0 and size < 128):\n            shared.log.warning(f'Model size smaller than expected: file=\"{fn}\" size={size} MB')\n        elif (size >= 316 and size <= 324) or (size >= 156 and size <= 164): # 320 or 160\n            shared.log.warning(f'Model detected as VAE model, but attempting to load as model: file=\"{fn}\" size={size} MB')\n            new_guess = 'VAE'\n        elif (size >= 2002 and size <= 2038): # 2032\n            new_guess = 'Stable Diffusion 1.5'\n        elif (size >= 3138 and size <= 3142): #3140\n            new_guess = 'Stable Diffusion XL'\n        elif (size >= 3361 and size <= 3369): # 3368\n            new_guess = 'Stable Diffusion Upscale'\n        elif (size >= 4891 and size <= 4899): # 4897\n            new_guess = 'Stable Diffusion XL Inpaint'\n        elif (size >= 4970 and size <= 4976): # 4973\n            new_guess = 'Stable Diffusion 2' # SD v2 but could be eps or v-prediction\n        elif (size >= 5791 and size <= 5799): # 5795\n            new_guess = 'Stable Diffusion XL Refiner'\n        elif (size > 5692 and size < 5698) or (size > 4134 and size < 4138) or (size > 10362 and size < 10366) or (size > 15028 and size < 15228):\n            new_guess = 'Stable Diffusion 3'\n        elif (size >= 6420 and size <= 7220): # 6420, IustriousRedux is 6541, monkrenRealisticINT_v10 is 7217\n            new_guess = 'Stable Diffusion XL'\n        elif (size >= 9791 and size <= 9799): # 9794\n            new_guess = 'Stable Diffusion XL Instruct'\n        elif (size >= 18414 and size <= 18420): # sd35-large aio\n            new_guess = 'Stable Diffusion 3'\n        elif (size >= 20000 and size <= 40000):\n            new_guess = 'FLUX'\n        if debug_load:\n            shared.log.trace(f'Autodetect: method=size file=\"{fn}\" size={size} previous=\"{current_guess}\" current=\"{new_guess}\"')\n    return new_guess or current_guess\n\n\ndef guess_by_name(fn, current_guess):\n    new_guess = None\n    if 'instaflow' in fn.lower():\n        new_guess = 'InstaFlow'\n    elif 'segmoe' in fn.lower():\n        new_guess = 'SegMoE'\n    elif 'hunyuandit' in fn.lower():\n        new_guess = 'HunyuanDiT'\n    elif 'hdm-xut' in fn.lower():\n        new_guess = 'hdm'\n    elif 'pixart-xl' in fn.lower():\n        new_guess = 'PixArt Alpha'\n    elif 'stable-diffusion-3' in fn.lower():\n        new_guess = 'Stable Diffusion 3'\n    elif 'stable-cascade' in fn.lower() or 'stablecascade' in fn.lower() or 'wuerstchen3' in fn.lower() or ('sotediffusion' in fn.lower() and \"v2\" in fn.lower()):\n        if devices.dtype == torch.float16:\n            shared.log.warning('Stable Cascade does not support Float16')\n        new_guess = 'Stable Cascade'\n    elif 'pixart-sigma' in fn.lower():\n        new_guess = 'PixArt Sigma'\n    elif 'sana' in fn.lower():\n        new_guess = 'Sana'\n    elif 'lumina-next' in fn.lower():\n        new_guess = 'Lumina-Next'\n    elif 'lumina-image-2' in fn.lower():\n        new_guess = 'Lumina 2'\n    elif 'kolors' in fn.lower():\n        new_guess = 'Kolors'\n    elif 'auraflow' in fn.lower() or 'pony-v7' in fn.lower():\n        new_guess = 'AuraFlow'\n    elif 'cogview3' in fn.lower():\n        new_guess = 'CogView 3'\n    elif 'cogview4' in fn.lower():\n        new_guess = 'CogView 4'\n    elif 'meissonic' in fn.lower():\n        new_guess = 'Meissonic'\n    elif 'monetico' in fn.lower():\n        new_guess = 'Monetico'\n    elif 'omnigen2' in fn.lower():\n        new_guess = 'OmniGen2'\n    elif 'omnigen' in fn.lower():\n        new_guess = 'OmniGen'\n    elif 'sd3' in fn.lower():\n        new_guess = 'Stable Diffusion 3'\n    elif 'hidream' in fn.lower():\n        new_guess = 'HiDream'\n    elif 'chroma' in fn.lower() and 'xl' not in fn.lower():\n        new_guess = 'Chroma'\n    elif 'flux.2' in fn.lower() and 'klein' in fn.lower():\n        new_guess = 'FLUX2 Klein'\n    elif 'flux.2' in fn.lower():\n        new_guess = 'FLUX2'\n    elif 'flux' in fn.lower() or 'flex.1' in fn.lower():\n        size = round(os.path.getsize(fn) / 1024 / 1024) if os.path.isfile(fn) else 0\n        if size > 11000 and size < 16000:\n            shared.log.warning(f'Model detected as FLUX UNET model, but attempting to load a base model: file=\"{fn}\" size={size} MB')\n        new_guess = 'FLUX'\n    elif 'flex.2' in fn.lower():\n        new_guess = 'FLEX'\n    elif fn.lower().endswith('anima') or 'anima-' in fn.lower():\n        new_guess = 'Anima'\n    elif 'cosmos-predict2' in fn.lower():\n        new_guess = 'Cosmos'\n    elif 'f-lite' in fn.lower():\n        new_guess = 'FLite'\n    elif 'wan' in fn.lower():\n        new_guess = 'WanAI'\n    if 'chronoedit' in fn.lower():\n        new_guess = 'ChronoEdit'\n    elif 'bria' in fn.lower():\n        new_guess = 'Bria'\n    elif 'qwen' in fn.lower():\n        new_guess = 'Qwen'\n    elif 'nextstep' in fn.lower():\n        new_guess = 'NextStep'\n    elif 'kandinsky-2-1' in fn.lower():\n        new_guess = 'Kandinsky 2.1'\n    elif 'kandinsky-2-2' in fn.lower():\n        new_guess = 'Kandinsky 2.2'\n    elif 'kandinsky-3' in fn.lower():\n        new_guess = 'Kandinsky 3.0'\n    elif 'kandinsky-5.0' in fn.lower():\n        new_guess = 'Kandinsky 5.0'\n    elif 'hunyuanimage3' in fn.lower() or 'hunyuanimage-3' in fn.lower():\n        new_guess = 'HunyuanImage3'\n    elif 'hunyuanimage' in fn.lower():\n        new_guess = 'HunyuanImage'\n    elif 'x-omni' in fn.lower():\n        new_guess = 'X-Omni'\n    elif 'sdxl-turbo' in fn.lower() or 'stable-diffusion-xl' in fn.lower():\n        new_guess = 'Stable Diffusion XL'\n    elif 'stable-video-diffusion' in fn.lower():\n        new_guess = 'StableVideoDiffusion'\n    elif 'prx-' in fn.lower():\n        new_guess = 'PRX'\n    elif 'gemini-' in fn.lower() and 'image' in fn.lower():\n        new_guess = 'NanoBanana'\n    elif 'z-image' in fn.lower() or 'z_image' in fn.lower():\n        new_guess = 'Z-Image'\n    elif 'longcat-image' in fn.lower():\n        new_guess = 'LongCat'\n    elif 'ovis-image' in fn.lower():\n        new_guess = 'Ovis-Image'\n    elif 'glm-image' in fn.lower():\n        new_guess = 'GLM-Image'\n    if debug_load:\n        shared.log.trace(f'Autodetect: method=name file=\"{fn}\" previous=\"{current_guess}\" current=\"{new_guess}\"')\n    return new_guess or current_guess\n\n\ndef guess_by_diffusers(fn, current_guess):\n    exclude_by_name = ['ostris/Flex.2-preview'] # pipeline may be misleading\n    if not os.path.isdir(fn):\n        return current_guess, None\n    index = os.path.join(fn, 'model_index.json')\n    if os.path.exists(index) and os.path.isfile(index):\n        index = shared.readfile(index, silent=True, as_type=\"dict\")\n        name = index.get('_name_or_path', None)\n        if name is not None and name in exclude_by_name:\n            return current_guess, None\n        cls = index.get('_class_name', None)\n        if cls is not None:\n            pipeline = getattr(diffusers, cls, None)\n            if pipeline is None:\n                pipeline = cls\n        if callable(pipeline):\n            is_quant = False\n            for folder in os.listdir(fn):\n                folder = os.path.join(fn, folder)\n                if is_quant:\n                    break\n                if folder.endswith('quantization_config.json'):\n                    is_quant = True\n                    break\n                if folder.endswith('config.json'):\n                    quantization_config = shared.readfile(folder, silent=True, as_type=\"dict\").get(\"quantization_config\", None)\n                    if quantization_config is not None:\n                        is_quant = True\n                        break\n                if os.path.isdir(folder):\n                    for f in os.listdir(folder):\n                        f = os.path.join(folder, f)\n                        if f.endswith('quantization_config.json'):\n                            is_quant = True\n                            break\n                        if f.endswith('config.json'):\n                            quantization_config = shared.readfile(f, silent=True, as_type=\"dict\").get(\"quantization_config\", None)\n                            if quantization_config is not None:\n                                is_quant = True\n                                break\n            pipelines = shared_items.get_pipelines()\n            for k, v in pipelines.items():\n                if v is not None and v.__name__ == pipeline.__name__:\n                    if is_quant:\n                        k = f'{k} SDNQ'\n                    if debug_load:\n                        shared.log.trace(f'Autodetect: method=diffusers file=\"{fn}\" previous=\"{current_guess}\" current=\"{k}\"')\n                    return k, v\n    return current_guess, None\n\n\ndef guess_variant(fn, current_guess):\n    new_guess = None\n    if 'inpaint' in fn.lower():\n        if current_guess == 'Stable Diffusion':\n            new_guess = 'Stable Diffusion Inpaint'\n        elif current_guess == 'Stable Diffusion XL':\n            new_guess = 'Stable Diffusion XL Inpaint'\n    elif 'instruct' in fn.lower():\n        if current_guess == 'Stable Diffusion':\n            new_guess = 'Stable Diffusion Instruct'\n        elif current_guess == 'Stable Diffusion XL':\n            new_guess = 'Stable Diffusion XL Instruct'\n    if debug_load:\n        shared.log.trace(f'Autodetect: method=variant file=\"{fn}\" previous=\"{current_guess}\" current=\"{new_guess}\"')\n    return new_guess or current_guess\n\n\ndef detect_pipeline(f: str, op: str = 'model'):\n    guess = shared.opts.diffusers_pipeline\n    pipeline = None\n    if guess == 'Autodetect':\n        try:\n            guess = 'Stable Diffusion XL' if ('XL' in f.upper() or 'SDNQ' in f.upper()) else 'Stable Diffusion' # set default guess\n            guess = guess_by_size(f, guess)\n            guess = guess_by_name(f, guess)\n            guess, pipeline = guess_by_diffusers(f, guess)\n            guess = guess_variant(f, guess)\n            pipeline = shared_items.get_pipelines().get(guess, None) if pipeline is None else pipeline\n            shared.log.info(f'Autodetect {op}: detect=\"{guess}\" class={getattr(pipeline, \"__name__\", None)} file=\"{f}\"')\n            if debug_load is not None:\n                t0 = time.time()\n                keys = model_tools.get_safetensor_keys(f)\n                if keys is not None and len(keys) > 0:\n                    modules = model_tools.list_to_dict(keys)\n                    modules = model_tools.remove_entries_after_depth(modules, 3)\n                    lst = model_tools.list_compact(keys)\n                    t1 = time.time()\n                    shared.log.debug(f'Autodetect: modules={modules} list={lst} time={t1-t0:.2f}')\n        except Exception as e:\n            shared.log.error(f'Autodetect {op}: file=\"{f}\" {e}')\n            if debug_load:\n                errors.display(e, f'Load {op}: {f}')\n            return None, None\n    else:\n        try:\n            pipeline = shared_items.get_pipelines().get(guess, None) if pipeline is None else pipeline\n            shared.log.info(f'Load {op}: detect=\"{guess}\" class={getattr(pipeline, \"__name__\", None)} file=\"{f}\"')\n        except Exception as e:\n            shared.log.error(f'Load {op}: detect=\"{guess}\" file=\"{f}\" {e}')\n\n    if pipeline is None:\n        pipeline = diffusers.DiffusionPipeline\n    return pipeline, guess\n\n\ndef get_load_config(model_file, model_type, config_type='yaml'):\n    model_type = model_type.removesuffix(' SDNQ')\n    if config_type == 'yaml':\n        yaml = os.path.splitext(model_file)[0] + '.yaml'\n        if os.path.exists(yaml):\n            return yaml\n        if model_type == 'Stable Diffusion':\n            return 'configs/v1-inference.yaml'\n        if model_type == 'Stable Diffusion XL':\n            return 'configs/sd_xl_base.yaml'\n        if model_type == 'Stable Diffusion XL Refiner':\n            return 'configs/sd_xl_refiner.yaml'\n        if model_type == 'Stable Diffusion 2':\n            return None # dont know if its eps or v so let diffusers sort it out\n            # return 'configs/v2-inference-512-base.yaml'\n            # return 'configs/v2-inference-768-v.yaml'\n    elif config_type == 'json':\n        if not shared.opts.diffuser_cache_config:\n            return None\n        if model_type == 'Stable Diffusion':\n            return 'configs/sd15'\n        if model_type == 'Stable Diffusion XL':\n            return 'configs/sdxl'\n        if model_type == 'Stable Diffusion XL Refiner':\n            return 'configs/sdxl-refiner'\n        if model_type == 'Stable Diffusion 3':\n            return 'configs/sd3'\n        if model_type == 'FLUX':\n            return 'configs/flux'\n    return None\n"
  },
  {
    "path": "modules/sd_hijack.py",
    "content": "from functools import wraps\nimport torch\nimport diffusers\nfrom modules import devices # pylint: disable=ungrouped-imports\n\n\ndef model_hijack(): # a111 compatibility item\n    pass\n\n\ndef register_buffer(self, name, attr):\n    \"\"\"\n    Fix register buffer bug for Mac OS.\n    \"\"\"\n\n    if type(attr) == torch.Tensor:\n        if attr.device != devices.device:\n            attr = attr.to(device=devices.device, dtype=(torch.float32 if devices.device.type == 'mps' else None))\n\n    setattr(self, name, attr)\n\n\n# Upcast BF16 to FP32\noriginal_fft_fftn = torch.fft.fftn\n@wraps(torch.fft.fftn)\ndef fft_fftn(input, s=None, dim=None, norm=None, *, out=None): # pylint: disable=redefined-builtin\n    return_dtype = input.dtype\n    if input.dtype == torch.bfloat16:\n        input = input.to(dtype=torch.float32)\n    return original_fft_fftn(input, s=s, dim=dim, norm=norm, out=out).to(dtype=return_dtype)\n\n\n# Upcast BF16 to FP32\noriginal_fft_ifftn = torch.fft.ifftn\n@wraps(torch.fft.ifftn)\ndef fft_ifftn(input, s=None, dim=None, norm=None, *, out=None): # pylint: disable=redefined-builtin\n    return_dtype = input.dtype\n    if input.dtype == torch.bfloat16:\n        input = input.to(dtype=torch.float32)\n    return original_fft_ifftn(input, s=s, dim=dim, norm=norm, out=out).to(dtype=return_dtype)\n\n\n# Diffusers FreeU\n# Diffusers is imported before sd_hijacks so fourier_filter needs hijacking too\noriginal_fourier_filter = diffusers.utils.torch_utils.fourier_filter\n@wraps(diffusers.utils.torch_utils.fourier_filter)\ndef fourier_filter(x_in, threshold, scale):\n    return_dtype = x_in.dtype\n    if x_in.dtype == torch.bfloat16:\n        x_in = x_in.to(dtype=torch.float32)\n    return original_fourier_filter(x_in, threshold, scale).to(dtype=return_dtype)\n\n\n# IPEX always upcasts\nif devices.backend != \"ipex\":\n    torch.fft.fftn = fft_fftn\n    torch.fft.ifftn = fft_ifftn\n    diffusers.utils.torch_utils.fourier_filter = fourier_filter\n\n\n# Fix \"torch is not defined\" error on img2img pipelines when torch.compile for vae.encode is enabled:\n# disable_compile for AutoencoderKLOutput is the only change\nif torch.__version__.startswith(\"2.6\"):\n    from dataclasses import dataclass\n    from torch.compiler import disable as disable_compile # pylint: disable=ungrouped-imports\n    import diffusers.models.autoencoders.autoencoder_kl # pylint: disable=ungrouped-imports\n\n    @dataclass\n    @disable_compile\n    class AutoencoderKLOutput(diffusers.utils.BaseOutput):\n        latent_dist: \"DiagonalGaussianDistribution\" # noqa: F821\n    diffusers.models.autoencoders.autoencoder_kl.AutoencoderKLOutput = AutoencoderKLOutput\n"
  },
  {
    "path": "modules/sd_hijack_accelerate.py",
    "content": "from typing import Optional, Union\nimport time\nimport torch\nimport torch.nn as nn\nimport torch.nn.functional as F\nfrom torch.nn.modules.utils import _pair\nimport accelerate.utils.modeling\nfrom modules import devices\n\n\ntensor_to_timer = 0\norig_set_module = accelerate.utils.set_module_tensor_to_device\norig_torch_conv = torch.nn.modules.conv.Conv2d._conv_forward # pylint: disable=protected-access\n\n\n# called for every item in state_dict by diffusers during model load\ndef hijack_set_module_tensor(\n    module: nn.Module,\n    tensor_name: str,\n    device: Union[int, str, torch.device],\n    value: Optional[torch.Tensor] = None,\n    dtype: Optional[Union[str, torch.dtype]] = None, # pylint: disable=unused-argument\n    fp16_statistics: Optional[torch.HalfTensor] = None, # pylint: disable=unused-argument\n):\n    global tensor_to_timer # pylint: disable=global-statement\n    if device == 'cpu': # override to load directly to gpu\n        device = devices.device\n    t0 = time.time()\n    if \".\" in tensor_name:\n        splits = tensor_name.split(\".\")\n        for split in splits[:-1]:\n            module = getattr(module, split)\n        tensor_name = splits[-1]\n    old_value = getattr(module, tensor_name)\n    with devices.inference_context():\n        # note: majority of time is spent on .to(old_value.dtype)\n        if tensor_name in module._buffers: # pylint: disable=protected-access\n            module._buffers[tensor_name] = value.to(device, old_value.dtype)  # pylint: disable=protected-access\n        elif value is not None or not devices.same_device(device, module._parameters[tensor_name].device):  # pylint: disable=protected-access\n            param_cls = type(module._parameters[tensor_name]) # pylint: disable=protected-access\n            module._parameters[tensor_name] = param_cls(value, requires_grad=old_value.requires_grad).to(device, old_value.dtype) # pylint: disable=protected-access\n    t1 = time.time()\n    tensor_to_timer += (t1 - t0)\n\n\ndef hijack_set_module_tensor_simple(\n    module: nn.Module,\n    tensor_name: str,\n    device: Union[int, str, torch.device],\n    value: Optional[torch.Tensor] = None,\n    dtype: Optional[Union[str, torch.dtype]] = None, # pylint: disable=unused-argument\n    fp16_statistics: Optional[torch.HalfTensor] = None, # pylint: disable=unused-argument\n):\n    global tensor_to_timer # pylint: disable=global-statement\n    if device == 'cpu': # override to load directly to gpu\n        device = devices.device\n    t0 = time.time()\n    if \".\" in tensor_name:\n        splits = tensor_name.split(\".\")\n        for split in splits[:-1]:\n            module = getattr(module, split)\n        tensor_name = splits[-1]\n    old_value = getattr(module, tensor_name)\n    with devices.inference_context():\n        if tensor_name in module._buffers: # pylint: disable=protected-access\n            module._buffers[tensor_name] = value.to(device, non_blocking=False)  # pylint: disable=protected-access\n        elif value is not None or not devices.same_device(device, module._parameters[tensor_name].device):  # pylint: disable=protected-access\n            param_cls = type(module._parameters[tensor_name]) # pylint: disable=protected-access\n            module._parameters[tensor_name] = param_cls(value, requires_grad=old_value.requires_grad).to(device, non_blocking=False) # pylint: disable=protected-access\n    t1 = time.time()\n    tensor_to_timer += (t1 - t0)\n\n\ndef hijack_accelerate():\n    accelerate.utils.set_module_tensor_to_device = hijack_set_module_tensor\n    global tensor_to_timer # pylint: disable=global-statement\n    tensor_to_timer = 0\n\n\ndef restore_accelerate():\n    accelerate.utils.set_module_tensor_to_device = orig_set_module\n\n\ndef hijack_hfhub():\n    import contextlib\n    import huggingface_hub.file_download\n    huggingface_hub.file_download.FileLock = contextlib.nullcontext\n\n\ndef torch_conv_forward(self, input, weight, bias): # pylint: disable=redefined-builtin\n    if self.padding_mode != 'zeros':\n        return F.conv2d(F.pad(input, self._reversed_padding_repeated_twice, mode=self.padding_mode), weight, bias, self.stride, _pair(0), self.dilation, self.groups) # pylint: disable=protected-access\n    if weight.dtype != bias.dtype:\n        bias.to(weight.dtype)\n    return F.conv2d(input, weight, bias, self.stride, self.padding, self.dilation, self.groups)\n\ndef hijack_torch_conv():\n    torch.nn.modules.conv.Conv2d._conv_forward = torch_conv_forward # pylint: disable=protected-access\n\ndef restore_torch_conv():\n    torch.nn.modules.conv.Conv2d._conv_forward = orig_torch_conv # pylint: disable=protected-access\n"
  },
  {
    "path": "modules/sd_hijack_dynamic_atten.py",
    "content": "from typing import Tuple, Optional\n\nfrom functools import cache, wraps\nimport torch\nfrom diffusers.utils import USE_PEFT_BACKEND # pylint: disable=unused-import\nfrom modules import shared, devices\n\n\n# Find something divisible with the input_tokens\n@cache\ndef find_split_size(original_size: int, slice_block_size: int, slice_rate: int = 2) -> int:\n    split_size = original_size\n    while True:\n        if (split_size * slice_block_size) <= slice_rate and original_size % split_size == 0:\n            return split_size\n        split_size = split_size - 1\n        if split_size <= 1:\n            return 1\n    return split_size\n\n\n# Find slice sizes for SDPA\n@cache\ndef find_sdpa_slice_sizes(query_shape: Tuple[int], key_shape: Tuple[int], query_element_size: int, slice_rate: int = 2, trigger_rate: int = 3) -> Tuple[bool, int]:\n    batch_size, attn_heads, query_len, _ = query_shape\n    _, _, key_len, _ = key_shape\n\n    slice_batch_size = attn_heads * (query_len * key_len) * query_element_size / 1024 / 1024 / 1024\n\n    split_batch_size = batch_size\n    split_head_size = attn_heads\n    split_query_size = query_len\n\n    do_batch_split = False\n    do_head_split = False\n    do_query_split = False\n\n    if batch_size * slice_batch_size >= trigger_rate:\n        do_batch_split = True\n        split_batch_size = find_split_size(batch_size, slice_batch_size, slice_rate=slice_rate)\n\n        if split_batch_size * slice_batch_size > slice_rate:\n            slice_head_size = split_batch_size * (query_len * key_len) * query_element_size / 1024 / 1024 / 1024\n            do_head_split = True\n            split_head_size = find_split_size(attn_heads, slice_head_size, slice_rate=slice_rate)\n\n            if split_head_size * slice_head_size > slice_rate:\n                slice_query_size = split_batch_size * split_head_size * (key_len) * query_element_size / 1024 / 1024 / 1024\n                do_query_split = True\n                split_query_size = find_split_size(query_len, slice_query_size, slice_rate=slice_rate)\n\n    return do_batch_split, do_head_split, do_query_split, split_batch_size, split_head_size, split_query_size\n\n\nif devices.sdpa_pre_dyanmic_atten is None:\n    devices.sdpa_pre_dyanmic_atten = torch.nn.functional.scaled_dot_product_attention\n@wraps(devices.sdpa_pre_dyanmic_atten)\ndef dynamic_scaled_dot_product_attention(query: torch.FloatTensor, key: torch.FloatTensor, value: torch.FloatTensor, attn_mask: Optional[torch.FloatTensor] = None, dropout_p: float = 0.0, is_causal: bool = False, scale: Optional[float] = None, enable_gqa: bool = False, **kwargs) -> torch.FloatTensor:\n    is_unsqueezed = False\n    if query.dim() == 3:\n        query = query.unsqueeze(0)\n        is_unsqueezed = True\n        if key.dim() == 3:\n            key = key.unsqueeze(0)\n        if value.dim() == 3:\n            value = value.unsqueeze(0)\n    if enable_gqa:\n        key = key.repeat_interleave(query.size(-3)//key.size(-3), -3)\n        value = value.repeat_interleave(query.size(-3)//value.size(-3), -3)\n    do_batch_split, do_head_split, do_query_split, split_batch_size, split_head_size, split_query_size = find_sdpa_slice_sizes(query.shape, key.shape, query.element_size(), slice_rate=shared.opts.dynamic_attention_slice_rate, trigger_rate=shared.opts.dynamic_attention_trigger_rate)\n\n    # Slice SDPA\n    if do_batch_split:\n        batch_size, attn_heads, query_len, _ = query.shape\n        _, _, _, head_dim = value.shape\n        hidden_states = torch.zeros((batch_size, attn_heads, query_len, head_dim), device=query.device, dtype=query.dtype)\n        if attn_mask is not None:\n            attn_mask = attn_mask.expand((query.shape[0], query.shape[1], query.shape[2], key.shape[-2]))\n        for ib in range(batch_size // split_batch_size):\n            start_idx = ib * split_batch_size\n            end_idx = (ib + 1) * split_batch_size\n            if do_head_split:\n                for ih in range(attn_heads // split_head_size): # pylint: disable=invalid-name\n                    start_idx_h = ih * split_head_size\n                    end_idx_h = (ih + 1) * split_head_size\n                    if do_query_split:\n                        for iq in range(query_len // split_query_size): # pylint: disable=invalid-name\n                            start_idx_q = iq * split_query_size\n                            end_idx_q = (iq + 1) * split_query_size\n                            hidden_states[start_idx:end_idx, start_idx_h:end_idx_h, start_idx_q:end_idx_q, :] = devices.sdpa_pre_dyanmic_atten(\n                                query[start_idx:end_idx, start_idx_h:end_idx_h, start_idx_q:end_idx_q, :],\n                                key[start_idx:end_idx, start_idx_h:end_idx_h, :, :],\n                                value[start_idx:end_idx, start_idx_h:end_idx_h, :, :],\n                                attn_mask=attn_mask[start_idx:end_idx, start_idx_h:end_idx_h, start_idx_q:end_idx_q, :] if attn_mask is not None else attn_mask,\n                                dropout_p=dropout_p, is_causal=is_causal, scale=scale, **kwargs\n                            )\n                    else:\n                        hidden_states[start_idx:end_idx, start_idx_h:end_idx_h, :, :] = devices.sdpa_pre_dyanmic_atten(\n                            query[start_idx:end_idx, start_idx_h:end_idx_h, :, :],\n                            key[start_idx:end_idx, start_idx_h:end_idx_h, :, :],\n                            value[start_idx:end_idx, start_idx_h:end_idx_h, :, :],\n                            attn_mask=attn_mask[start_idx:end_idx, start_idx_h:end_idx_h, :, :] if attn_mask is not None else attn_mask,\n                            dropout_p=dropout_p, is_causal=is_causal, scale=scale, **kwargs\n                        )\n            else:\n                hidden_states[start_idx:end_idx, :, :, :] = devices.sdpa_pre_dyanmic_atten(\n                    query[start_idx:end_idx, :, :, :],\n                    key[start_idx:end_idx, :, :, :],\n                    value[start_idx:end_idx, :, :, :],\n                    attn_mask=attn_mask[start_idx:end_idx, :, :, :] if attn_mask is not None else attn_mask,\n                    dropout_p=dropout_p, is_causal=is_causal, scale=scale, **kwargs\n                )\n        if devices.backend != \"directml\":\n            getattr(torch, query.device.type).synchronize()\n    else:\n        hidden_states = devices.sdpa_pre_dyanmic_atten(query, key, value, attn_mask=attn_mask, dropout_p=dropout_p, is_causal=is_causal, scale=scale, **kwargs)\n    if is_unsqueezed:\n        hidden_states = hidden_states.squeeze(0)\n    return hidden_states\n\n\n@cache\ndef find_bmm_slice_sizes(query_shape, query_element_size, slice_rate=2, trigger_rate=4):\n    if len(query_shape) == 3:\n        batch_size_attention, query_tokens, shape_three = query_shape\n        shape_four = 1\n    else:\n        batch_size_attention, query_tokens, shape_three, shape_four = query_shape\n\n    slice_block_size = query_tokens * shape_three * shape_four / 1024 / 1024 * query_element_size\n    block_size = batch_size_attention * slice_block_size\n\n    split_slice_size = batch_size_attention\n    split_2_slice_size = query_tokens\n    split_3_slice_size = shape_three\n\n    do_split = False\n    do_split_2 = False\n    do_split_3 = False\n\n    if block_size > trigger_rate:\n        do_split = True\n        split_slice_size = find_split_size(split_slice_size, slice_block_size, slice_rate=slice_rate)\n        if split_slice_size * slice_block_size > slice_rate:\n            slice_2_block_size = split_slice_size * shape_three * shape_four / 1024 / 1024 * query_element_size\n            do_split_2 = True\n            split_2_slice_size = find_split_size(split_2_slice_size, slice_2_block_size, slice_rate=slice_rate)\n            if split_2_slice_size * slice_2_block_size > slice_rate:\n                slice_3_block_size = split_slice_size * split_2_slice_size * shape_four / 1024 / 1024 * query_element_size\n                do_split_3 = True\n                split_3_slice_size = find_split_size(split_3_slice_size, slice_3_block_size, slice_rate=slice_rate)\n\n    return do_split, do_split_2, do_split_3, split_slice_size, split_2_slice_size, split_3_slice_size\n\n\nclass DynamicAttnProcessorBMM:\n    r\"\"\"\n    dynamically slices attention queries in order to keep them under the slice rate\n    slicing will not get triggered if the query size is smaller than the slice rate to gain performance\n\n    slice rate is in GB\n    based on AttnProcessor V1\n    \"\"\"\n\n    def __call__(self, attn, hidden_states: torch.Tensor, encoder_hidden_states=None, attention_mask=None, temb=None, *args, **kwargs) -> torch.Tensor: # pylint: disable=too-many-statements, too-many-locals, too-many-branches, keyword-arg-before-vararg\n\n        residual = hidden_states\n\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n\n        batch_size, sequence_length, _ = (\n            hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape\n        )\n        attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n\n        if attn.group_norm is not None:\n            hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2)\n\n        query = attn.to_q(hidden_states)\n\n        if encoder_hidden_states is None:\n            encoder_hidden_states = hidden_states\n        elif attn.norm_cross:\n            encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states)\n\n        key = attn.to_k(encoder_hidden_states)\n        value = attn.to_v(encoder_hidden_states)\n\n        query = attn.head_to_batch_dim(query)\n        key = attn.head_to_batch_dim(key)\n        value = attn.head_to_batch_dim(value)\n\n        ####################################################################\n        # Slicing parts:\n        batch_size_attention, query_tokens, shape_three = query.shape[0], query.shape[1], query.shape[2]\n        hidden_states = torch.zeros(query.shape, device=query.device, dtype=query.dtype)\n        do_split, do_split_2, do_split_3, split_slice_size, split_2_slice_size, split_3_slice_size = find_bmm_slice_sizes(query.shape, query.element_size(), slice_rate=shared.opts.dynamic_attention_slice_rate*4, trigger_rate=shared.opts.dynamic_attention_trigger_rate*4)\n\n        if do_split:\n            for i in range(batch_size_attention // split_slice_size):\n                start_idx = i * split_slice_size\n                end_idx = (i + 1) * split_slice_size\n                if do_split_2:\n                    for i2 in range(query_tokens // split_2_slice_size): # pylint: disable=invalid-name\n                        start_idx_2 = i2 * split_2_slice_size\n                        end_idx_2 = (i2 + 1) * split_2_slice_size\n                        if do_split_3:\n                            for i3 in range(shape_three // split_3_slice_size): # pylint: disable=invalid-name\n                                start_idx_3 = i3 * split_3_slice_size\n                                end_idx_3 = (i3 + 1) * split_3_slice_size\n\n                                query_slice = query[start_idx:end_idx, start_idx_2:end_idx_2, start_idx_3:end_idx_3]\n                                key_slice = key[start_idx:end_idx, start_idx_2:end_idx_2, start_idx_3:end_idx_3]\n                                attn_mask_slice = attention_mask[start_idx:end_idx, start_idx_2:end_idx_2, start_idx_3:end_idx_3] if attention_mask is not None else None\n\n                                attn_slice = attn.get_attention_scores(query_slice, key_slice, attn_mask_slice)\n                                del query_slice\n                                del key_slice\n                                del attn_mask_slice\n                                attn_slice = torch.bmm(attn_slice, value[start_idx:end_idx, start_idx_2:end_idx_2, start_idx_3:end_idx_3])\n\n                                hidden_states[start_idx:end_idx, start_idx_2:end_idx_2, start_idx_3:end_idx_3] = attn_slice\n                                del attn_slice\n                        else:\n                            query_slice = query[start_idx:end_idx, start_idx_2:end_idx_2]\n                            key_slice = key[start_idx:end_idx, start_idx_2:end_idx_2]\n                            attn_mask_slice = attention_mask[start_idx:end_idx, start_idx_2:end_idx_2] if attention_mask is not None else None\n\n                            attn_slice = attn.get_attention_scores(query_slice, key_slice, attn_mask_slice)\n                            del query_slice\n                            del key_slice\n                            del attn_mask_slice\n                            attn_slice = torch.bmm(attn_slice, value[start_idx:end_idx, start_idx_2:end_idx_2])\n\n                            hidden_states[start_idx:end_idx, start_idx_2:end_idx_2] = attn_slice\n                            del attn_slice\n                else:\n                    query_slice = query[start_idx:end_idx]\n                    key_slice = key[start_idx:end_idx]\n                    attn_mask_slice = attention_mask[start_idx:end_idx] if attention_mask is not None else None\n\n                    attn_slice = attn.get_attention_scores(query_slice, key_slice, attn_mask_slice)\n                    del query_slice\n                    del key_slice\n                    del attn_mask_slice\n                    attn_slice = torch.bmm(attn_slice, value[start_idx:end_idx])\n\n                    hidden_states[start_idx:end_idx] = attn_slice\n                    del attn_slice\n            if devices.backend != \"directml\":\n                getattr(torch, query.device.type).synchronize()\n        else:\n            attention_probs = attn.get_attention_scores(query, key, attention_mask)\n            hidden_states = torch.bmm(attention_probs, value)\n        ####################################################################\n        hidden_states = attn.batch_to_head_dim(hidden_states)\n\n        # linear proj\n        hidden_states = attn.to_out[0](hidden_states)\n        # dropout\n        hidden_states = attn.to_out[1](hidden_states)\n\n        if input_ndim == 4:\n            hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n"
  },
  {
    "path": "modules/sd_hijack_freeu.py",
    "content": "import math\nimport torch\nfrom modules import shared, devices\n\n# based on <https://github.com/ljleb/sd-webui-freeu/blob/main/lib_free_u/unet.py>\n# official params are b1,b2,s1,s2\n\n# extra params that can be made configurable if needed are:\nbackbone_width = 0.5\nbackbone_offset = 0.0\nskip_cutoff = 0.0\nskip_high_end_factor = 1.0\nstart_ratio = 0.0\nstop_ratio = 1.0\ntransition_smoothness = 0.0\n\n# internal state\nstate_enabled = False\n\n\ndef to_denoising_step(number, steps=None) -> int:\n    if steps is None:\n        steps = shared.state.sampling_steps\n    if isinstance(number, float):\n        return int(number * steps)\n    return number\n\n\ndef get_schedule_ratio():\n    start_step = to_denoising_step(start_ratio)\n    stop_step = to_denoising_step(stop_ratio)\n    if start_step == stop_step:\n        smooth_schedule_ratio = 0.0\n    elif shared.state.sampling_step < start_step:\n        smooth_schedule_ratio = min(1.0, max(0.0, shared.state.sampling_step / start_step))\n    else:\n        smooth_schedule_ratio = min(1.0, max(0.0, 1 + (shared.state.sampling_step - start_step) / (start_step - stop_step)))\n    flat_schedule_ratio = 1.0 if start_step <= shared.state.sampling_step < stop_step else 0.0\n    return lerp(flat_schedule_ratio, smooth_schedule_ratio, transition_smoothness)\n\n\ndef lerp(a, b, r):\n    return (1-r)*a + r*b\n\n\ndef free_u_cat_hijack(hs, *args, original_function, **kwargs):\n    if not shared.opts.freeu_enabled:\n        return original_function(hs, *args, **kwargs)\n    schedule_ratio = get_schedule_ratio()\n    if schedule_ratio == 0:\n        return original_function(hs, *args, **kwargs)\n    try:\n        h, h_skip = hs\n        if list(kwargs.keys()) != [\"dim\"] or kwargs.get(\"dim\", -1) != 1:\n            return original_function(hs, *args, **kwargs)\n    except ValueError:\n        return original_function(hs, *args, **kwargs)\n    dims = h.shape[1]\n    if dims not in [1280, 640, 320]:\n        return original_function(hs, *args, **kwargs)\n    index = [1280, 640, 320].index(dims)\n    if index > 1: # not 1st or 2nd stage\n        return original_function([h, h_skip], *args, **kwargs)\n    region_begin, region_end, region_inverted = ratio_to_region(backbone_width, backbone_offset, dims)\n    mask = torch.arange(dims)\n    mask = (region_begin <= mask) & (mask <= region_end)\n    if region_inverted:\n        mask = ~mask\n    backbone_factor = shared.opts.freeu_b1 if index == 0 else shared.opts.freeu_b2\n    skip_factor = shared.opts.freeu_s1 if index == 0 else shared.opts.freeu_s2\n    h[:, mask] *= lerp(1, backbone_factor, schedule_ratio)\n    h_skip = filter_skip(h_skip, threshold=skip_cutoff, scale=lerp(1, skip_factor, schedule_ratio), scale_high=lerp(1, skip_high_end_factor, schedule_ratio))\n    return original_function([h, h_skip], *args, **kwargs)\n\n\ntorch_fft_device = None\ndef get_fft_device():\n    global torch_fft_device # pylint: disable=global-statement\n    if torch_fft_device is None:\n        try:\n            tensor = torch.randn(4, 4)\n            tensor = tensor.to(device=devices.device, dtype=devices.dtype)\n            _fft_result = torch.fft.fftn(tensor)\n            _ifft_result = torch.fft.ifftn(_fft_result)\n            _shifted_tensor = torch.fft.fftshift(tensor)\n            _ishifted_tensor = torch.fft.ifftshift(_shifted_tensor)\n            torch_fft_device = devices.device\n        except Exception:\n            torch_fft_device = devices.cpu\n            shared.log.warning(f'FreeU: device={devices.device} dtype={devices.dtype} does not support FFT')\n    return torch_fft_device\n\n\ndef no_gpu_complex_support():\n    mps_available = hasattr(torch.backends, \"mps\") and torch.backends.mps.is_available()\n    try:\n        import torch_directml\n    except ImportError:\n        dml_available = False\n    else:\n        dml_available = torch_directml.is_available()\n    return mps_available or dml_available\n\n\ndef filter_skip(x, threshold, scale, scale_high):\n    if scale == 1 and scale_high == 1:\n        return x\n    fft_device = get_fft_device()\n    # if no_gpu_complex_support():\n    #    fft_device = \"cpu\"\n    # FFT\n    x_freq = torch.fft.fftn(x.to(fft_device).float(), dim=(-2, -1)) # pylint: disable=E1102\n    x_freq = torch.fft.fftshift(x_freq, dim=(-2, -1)) # pylint: disable=E1102\n    B, C, H, W = x_freq.shape\n    mask = torch.full((B, C, H, W), float(scale_high), device=fft_device)\n    crow, ccol = H // 2, W // 2\n    threshold_row = max(1, math.floor(crow * threshold))\n    threshold_col = max(1, math.floor(ccol * threshold))\n    mask[..., crow - threshold_row:crow + threshold_row, ccol - threshold_col:ccol + threshold_col] = scale\n    x_freq *= mask\n    # IFFT\n    x_freq = torch.fft.ifftshift(x_freq, dim=(-2, -1)) # pylint: disable=E1102\n    x_filtered = torch.fft.ifftn(x_freq, dim=(-2, -1)).real.to(device=x.device, dtype=x.dtype) # pylint: disable=E1102\n    return x_filtered\n\n\ndef ratio_to_region(width: float, offset: float, n: int):\n    if width < 0:\n        offset += width\n        width = -width\n    width = min(width, 1)\n    if offset < 0:\n        offset = 1 + offset - int(offset)\n    offset = math.fmod(offset, 1.0)\n    if width + offset <= 1:\n        inverted = False\n        start = offset * n\n        end = (width + offset) * n\n    else:\n        inverted = True\n        start = (width + offset - 1) * n\n        end = offset * n\n    return round(start), round(end), inverted\n\n\ndef apply_freeu(p):\n    global state_enabled # pylint: disable=global-statement\n    if hasattr(p.sd_model, 'enable_freeu'):\n        if shared.opts.freeu_enabled:\n            freeu_device = get_fft_device()\n            if freeu_device != devices.cpu:\n                p.extra_generation_params['FreeU'] = f'b1={shared.opts.freeu_b1} b2={shared.opts.freeu_b2} s1={shared.opts.freeu_s1} s2={shared.opts.freeu_s2}'\n                p.sd_model.enable_freeu(s1=shared.opts.freeu_s1, s2=shared.opts.freeu_s2, b1=shared.opts.freeu_b1, b2=shared.opts.freeu_b2)\n                state_enabled = True\n        elif state_enabled:\n            p.sd_model.disable_freeu()\n            state_enabled = False\n    if shared.opts.freeu_enabled and state_enabled:\n        shared.log.info(f'Applying Free-U: b1={shared.opts.freeu_b1} b2={shared.opts.freeu_b2} s1={shared.opts.freeu_s1} s2={shared.opts.freeu_s2}')\n"
  },
  {
    "path": "modules/sd_hijack_hypertile.py",
    "content": "# credits: @tfernd https://github.com/tfernd/HyperTile\n# based on: https://github.com/tfernd/HyperTile/tree/main/hyper_tile/utils.py + https://github.com/tfernd/HyperTile/tree/main/hyper_tile/hyper_tile.py\n\nfrom __future__ import annotations\nfrom typing import Callable\nfrom functools import wraps, cache\nfrom contextlib import contextmanager, nullcontext\nimport random\nimport math\nimport torch\nimport torch.nn as nn\nfrom einops import rearrange\nfrom installer import log\n\n\n# global variables to keep track of changing image size in multiple passes\nheight = None\nwidth = None\nmax_h = 0\nmax_w = 0\nerror_reported = False\nreset_needed = False\nskip_hypertile = False\n\n\ndef iterative_closest_divisors(hw:int, aspect_ratio:float) -> tuple[int, int]:\n    \"\"\"\n    Finds h and w such that h*w = hw and h/w = aspect_ratio\n    We check all possible divisors of hw and return the closest to the aspect ratio\n    \"\"\"\n    divisors = [i for i in range(2, hw + 1) if hw % i == 0] # all divisors of hw\n    pairs = [(i, hw // i) for i in divisors] # all pairs of divisors of hw\n    ratios = [w/h for h, w in pairs] # all ratios of pairs of divisors of hw\n    closest_ratio = min(ratios, key=lambda x: abs(x - aspect_ratio)) # closest ratio to aspect_ratio\n    closest_pair = pairs[ratios.index(closest_ratio)] # closest pair of divisors to aspect_ratio\n    return closest_pair\n\n\n@cache\ndef find_hw_candidates(hw:int, aspect_ratio:float) -> tuple[int, int]:\n    \"\"\"\n    Finds h and w such that h*w = hw and h/w = aspect_ratio\n    \"\"\"\n    h, w = round(math.sqrt(hw * aspect_ratio)), round(math.sqrt(hw / aspect_ratio))\n    # find h and w such that h*w = hw and h/w = aspect_ratio\n    if h * w != hw:\n        w_candidate = hw / h\n        # check if w is an integer\n        if not w_candidate.is_integer():\n            h_candidate = hw / w\n            # check if h is an integer\n            if not h_candidate.is_integer():\n                return iterative_closest_divisors(hw, aspect_ratio)\n            else:\n                h = int(h_candidate)\n        else:\n            w = int(w_candidate)\n    return h, w\n\n\ndef possible_tile_sizes(dimension: int, tile_size: int, min_tile_size: int, tile_options: int) -> list[int]:\n    assert tile_options >= 1\n    min_tile_size = min(min_tile_size, tile_size, dimension)\n    # all divisors that are themselves divisible by 8 and give tile-size above min\n    n = torch.arange(1, dimension + 1)\n    n = n[dimension // n // 8 * 8 * n == dimension]\n    n = n[dimension // n >= min_tile_size]\n    pos = (dimension // n).sub(tile_size).abs().argsort()\n    pos = pos[:tile_options]\n    return n[pos].tolist()\n\n\ndef parse_list(x: list[int], /) -> str:\n    if len(x) == 0:\n        return str(x[0])\n    return str(x)\n\n\n@contextmanager\ndef split_attention(layer: nn.Module, tile_size: int=256, min_tile_size: int=128, swap_size: int=1, depth: int=0):\n    # hijacks AttnBlock from ldm and attention from diffusers\n    global reset_needed # pylint: disable=global-statement\n    ar = height / width # Aspect ratio\n    reset_needed = True\n    nhs = possible_tile_sizes(height, tile_size, min_tile_size, swap_size) # possible sub-grids that fit into the image\n    nws = possible_tile_sizes(width, tile_size, min_tile_size, swap_size)\n\n    def reset_nhs():\n        nonlocal nhs, ar\n        ar = height / width # Aspect ratio\n        nhs = possible_tile_sizes(height, tile_size, min_tile_size, swap_size)\n\n    def reset_nws():\n        nonlocal nws, ar\n        ar = height / width # Aspect ratio\n        nws = possible_tile_sizes(width, tile_size, min_tile_size, swap_size)\n\n    def self_attn_forward(forward: Callable) -> Callable:\n        @wraps(forward)\n        def wrapper(*args, **kwargs):\n            global height, width, max_h, max_w, reset_needed, error_reported # pylint: disable=global-statement\n            if skip_hypertile:\n                return forward(*args, **kwargs)\n            x = args[0]\n            try:\n                nh = nhs[random.randint(0, len(nhs) - 1)]\n                nw = nws[random.randint(0, len(nws) - 1)]\n            except Exception as e:\n                if not error_reported:\n                    error_reported = True\n                    log.error(f'Hypertile calculate: width={width} height={height} {e}')\n                out = forward(x, *args[1:], **kwargs)\n                return out\n            if x.ndim == 4: # VAE\n                # TODO hypertile: vae breaks when using non-standard sizes\n                if nh * nw > 1:\n                    x = rearrange(x, \"b c (nh h) (nw w) -> (b nh nw) c h w\", nh=nh, nw=nw)\n                out = forward(x, *args[1:], **kwargs)\n                if nh * nw > 1:\n                    out = rearrange(out, \"(b nh nw) c h w -> b c (nh h) (nw w)\", nh=nh, nw=nw)\n            else: # Unet\n                hw = x.size(1)\n                h, w = round(math.sqrt(ar * hw)), round(math.sqrt(hw / ar))\n                # h, w = find_hw_candidates(hw, ar)\n                # dynamic height/width based on fact that first two forward calls contain actual height/width\n                # and reset if latest hw is larger since we're never downscaling in 2nd pass\n                if reset_needed:\n                    reset_nhs()\n                    reset_nws()\n                    max_h = height\n                    max_w = width\n                    reset_needed = False\n                else:\n                    if h > max_h:\n                        height = 8 * h\n                        max_h = max(max_h, h)\n                        reset_nhs()\n                    if w > max_w:\n                        width = 8 * w\n                        max_w = max(max_w, w)\n                        reset_nws()\n                down_ratio = max(height // 8 // h, 1)\n                curr_depth = round(math.log(down_ratio, 2))\n                # scale-up the tile-size the deeper we go\n                nh = max(1, nh // down_ratio)\n                nw = max(1, nw // down_ratio)\n                do_split = curr_depth <= depth and h % nh == 0 and w % nw == 0 and nh * nw > 1\n                try:\n                    if do_split:\n                        x = rearrange(x, \"b (nh h nw w) c -> (b nh nw) (h w) c\", h=h // nh, w=w // nw, nh=nh, nw=nw)\n                    out = forward(x, *args[1:], **kwargs)\n                    if do_split:\n                        out = rearrange(out, \"(b nh nw) hw c -> b nh nw hw c\", nh=nh, nw=nw)\n                        out = rearrange(out, \"b nh nw (h w) c -> b (nh h nw w) c\", h=h // nh, w=w // nw)\n                except Exception as e:\n                    if not error_reported:\n                        error_reported = True\n                        log.error(f'Hypertile apply: cls={layer.__class__} width={width} height={height} {e}')\n                    out = forward(x, *args[1:], **kwargs)\n            return out\n        return wrapper\n    try: # hijack forward method and restore\n        for name, module in layer.named_modules():\n            if module.__class__.__qualname__ in (\"Attention\", \"CrossAttention\", \"AttnBlock\"):\n                if name.endswith(\"attn2\") or name.endswith(\"attn_2\"): # skip cross-attention layers\n                    continue\n                setattr(module, \"_original_forward\", module.forward) # save original forward for recovery later # noqa: B010\n                setattr(module, \"forward\", self_attn_forward(module.forward)) # noqa: B010\n        yield\n    finally:\n        for _name, module in layer.named_modules():\n            if hasattr(module, \"_original_forward\"): # remove hijack\n                setattr(module, \"forward\", module._original_forward) # pylint: disable=protected-access # noqa: B010\n                del module._original_forward\n\n\ndef context_hypertile_vae(p):\n    from modules import shared\n    if p.sd_model is None or not shared.opts.hypertile_vae_enabled:\n        return nullcontext()\n    if shared.opts.cross_attention_optimization == 'Sub-quadratic':\n        shared.log.warning('Hypertile UNet is not compatible with Sub-quadratic cross-attention optimization')\n        return nullcontext()\n    global max_h, max_w, error_reported # pylint: disable=global-statement\n    error_reported = False\n    error_reported = False\n    set_resolution(p)\n    max_h, max_w = 0, 0\n    vae = getattr(p.sd_model, \"vae\", None)\n    if height == 0 or width == 0:\n        log.warning('Hypertile VAE disabled: resolution unknown')\n        return nullcontext()\n    if height % 8 != 0 or width % 8 != 0:\n        log.warning(f'Hypertile VAE disabled: width={width} height={height} are not divisible by 8')\n        return nullcontext()\n    if vae is None:\n        return nullcontext()\n    else:\n        tile_size = shared.opts.hypertile_vae_tile if shared.opts.hypertile_vae_tile > 0 else max(128, 64 * min(p.width // 128, p.height // 128))\n        min_tile_size = shared.opts.hypertile_unet_min_tile if shared.opts.hypertile_unet_min_tile > 0 else 128\n        shared.log.info(f'Applying HyperTile: vae={min_tile_size}/{tile_size}')\n        p.extra_generation_params['Hypertile VAE'] = tile_size\n        return split_attention(vae, tile_size=tile_size, min_tile_size=min_tile_size, swap_size=shared.opts.hypertile_vae_swap_size)\n\n\ndef context_hypertile_unet(p):\n    from modules import shared\n    if p.sd_model is None or not shared.opts.hypertile_unet_enabled:\n        return nullcontext()\n    if shared.opts.cross_attention_optimization == 'Sub-quadratic' and not shared.cmd_opts.experimental:\n        shared.log.warning('Hypertile UNet is not compatible with Sub-quadratic cross-attention optimization')\n        return nullcontext()\n    global max_h, max_w, error_reported # pylint: disable=global-statement\n    error_reported = False\n    set_resolution(p)\n    max_h, max_w = 0, 0\n    unet = getattr(p.sd_model, \"unet\", None)\n    if height == 0 or width == 0:\n        log.warning('Hypertile VAE disabled: resolution unknown')\n        return nullcontext()\n    if height % 8 != 0 or width % 8 != 0:\n        log.warning(f'Hypertile UNet disabled: width={width} height={height} are not divisible by 8')\n        return nullcontext()\n    if unet is None:\n        # shared.log.warning('Hypertile UNet is enabled but no Unet model was found')\n        return nullcontext()\n    else:\n        tile_size = shared.opts.hypertile_unet_tile if shared.opts.hypertile_unet_tile > 0 else max(128, 64 * min(p.width // 128, p.height // 128))\n        min_tile_size = shared.opts.hypertile_unet_min_tile if shared.opts.hypertile_unet_min_tile > 0 else 128\n        shared.log.info(f'Applying HyperTile: unet={min_tile_size}/{tile_size}')\n        p.extra_generation_params['Hypertile UNet'] = tile_size\n        return split_attention(unet, tile_size=tile_size, min_tile_size=min_tile_size, swap_size=shared.opts.hypertile_unet_swap_size, depth=shared.opts.hypertile_unet_depth)\n\n\ndef hypertile_set(p, hr=False):\n    from modules import shared\n    global error_reported, reset_needed, skip_hypertile # pylint: disable=global-statement\n    if not shared.opts.hypertile_unet_enabled:\n        return\n    error_reported = False\n    set_resolution(p, hr=hr)\n    skip_hypertile = shared.opts.hypertile_hires_only and not getattr(p, 'is_hr_pass', False)\n    reset_needed = True\n\n\ndef set_resolution(p, hr=False):\n    global height, width # pylint: disable=global-statement\n    if hr:\n        x = getattr(p, 'hr_upscale_to_x', 0)\n        y = getattr(p, 'hr_upscale_to_y', 0)\n        width = y if y > 0 else p.width\n        height = x if x > 0 else p.height\n    else:\n        width = p.width\n        height = p.height\n    if height == 0 or width == 0:\n        if hasattr(p, 'init_images') and isinstance(p.init_images, list) and len(p.init_images) > 0:\n            height, width = p.init_images[0].size\n"
  },
  {
    "path": "modules/sd_hijack_safetensors.py",
    "content": "import safetensors.torch\nimport transformers\nfrom installer import install, log\nfrom modules import errors\n\n\norig_load_file = safetensors.torch.load_file\norig_load_state_dict = transformers.modeling_utils.load_state_dict\n\n\ndef hijacked_load_file(checkpoint_file, device=\"cpu\"):\n    if not checkpoint_file.endswith('.safetensors'):\n        return orig_load_file(checkpoint_file, device=device)\n\n    install('runai_model_streamer>=0.15.1')\n    state_dict = {}\n    from runai_model_streamer import SafetensorsStreamer\n    try:\n        with SafetensorsStreamer() as streamer:\n            streamer.stream_file(checkpoint_file)\n            for key, tensor in streamer.get_tensors():\n                state_dict[key] = tensor.to(device)\n    except Exception as e:\n        log.error(f'Loader: {e}')\n        errors.display(e, 'runai')\n    return state_dict\n\n\ndef hijacked_load_state_dict(checkpoint_file, is_quantized: bool = False, map_location: str = \"cpu\", weights_only: bool = True):\n    if not checkpoint_file.endswith(\".safetensors\"):\n        return orig_load_state_dict(checkpoint_file=checkpoint_file, is_quantized=is_quantized, map_location=map_location, weights_only=weights_only)\n\n    install('runai_model_streamer>=0.15.1')\n    state_dict = {}\n    from runai_model_streamer import SafetensorsStreamer\n    try:\n        with SafetensorsStreamer() as streamer:\n            streamer.stream_file(checkpoint_file)\n            for key, tensor in streamer.get_tensors():\n                state_dict[key] = tensor.to(map_location) if map_location != \"meta\" else tensor\n    except Exception as e:\n        log.error(f'Loader: {e}')\n        errors.display(e, 'runai')\n    return state_dict\n\n\ndef hijack_safetensors(_diffusers: bool = True, _transformers: bool = True):\n    if _diffusers:\n        safetensors.torch.load_file = hijacked_load_file\n    if _transformers:\n        transformers.modeling_utils.load_state_dict = hijacked_load_state_dict\n\n\ndef restore_safetensors():\n    safetensors.torch.load_file = orig_load_file\n    transformers.modeling_utils.load_state_dict = orig_load_state_dict\n"
  },
  {
    "path": "modules/sd_hijack_te.py",
    "content": "import os\nimport time\nfrom modules import shared, errors, timer, sd_models\n\n\ndef hijack_encode_prompt(*args, **kwargs):\n    jobid = shared.state.begin('TE Encode')\n    t0 = time.time()\n    if 'max_sequence_length' in kwargs and kwargs['max_sequence_length'] is not None:\n        kwargs['max_sequence_length'] = max(kwargs['max_sequence_length'], os.environ.get('HIDREAM_MAX_SEQUENCE_LENGTH', 256))\n    try:\n        prompt = kwargs.get('prompt', None) or (args[0] if len(args) > 0 else None)\n        if prompt is not None:\n            shared.log.debug(f'Encode: prompt=\"{prompt}\" hijack=True')\n        res = shared.sd_model.orig_encode_prompt(*args, **kwargs)\n    except Exception as e:\n        shared.log.error(f'Encode prompt: {e}')\n        errors.display(e, 'Encode prompt')\n        res = None\n    t1 = time.time()\n    timer.process.add('te', t1-t0)\n    # if hasattr(shared.sd_model, \"maybe_free_model_hooks\"):\n    #     shared.sd_model.maybe_free_model_hooks()\n    shared.sd_model = sd_models.apply_balanced_offload(shared.sd_model)\n    shared.state.end(jobid)\n    return res\n\n\ndef init_hijack(pipe):\n    if pipe is not None and not hasattr(pipe, 'orig_encode_prompt') and hasattr(pipe, 'encode_prompt'):\n        pipe.orig_encode_prompt = pipe.encode_prompt\n        pipe.encode_prompt = hijack_encode_prompt\n"
  },
  {
    "path": "modules/sd_hijack_utils.py",
    "content": "import importlib\n\nclass CondFunc:\n    def __new__(cls, orig_func, sub_func, cond_func):\n        self = super(CondFunc, cls).__new__(cls)\n        if isinstance(orig_func, str):\n            func_path = orig_func.split('.')\n            for i in range(len(func_path)-1, -1, -1):\n                try:\n                    resolved_obj = importlib.import_module('.'.join(func_path[:i]))\n                    break\n                except ImportError:\n                    pass\n            for attr_name in func_path[i:-1]:\n                resolved_obj = getattr(resolved_obj, attr_name)\n            orig_func = getattr(resolved_obj, func_path[-1])\n            setattr(resolved_obj, func_path[-1], lambda *args, **kwargs: self(*args, **kwargs))\n        self.__init__(orig_func, sub_func, cond_func)\n        return lambda *args, **kwargs: self(*args, **kwargs)\n    def __init__(self, orig_func, sub_func, cond_func):\n        self.__orig_func = orig_func\n        self.__sub_func = sub_func\n        self.__cond_func = cond_func\n    def __call__(self, *args, **kwargs):\n        if not self.__cond_func or self.__cond_func(self.__orig_func, *args, **kwargs):\n            return self.__sub_func(self.__orig_func, *args, **kwargs)\n        else:\n            return self.__orig_func(*args, **kwargs)\n"
  },
  {
    "path": "modules/sd_hijack_vae.py",
    "content": "import os\nimport time\nimport torch\nfrom modules import shared, sd_models, devices, timer, errors\n\n\ndebug = shared.log.trace if os.environ.get('SD_VIDEO_DEBUG', None) is not None else lambda *args, **kwargs: None\n\n\ndef hijack_vae_upscale(*args, **kwargs):\n    import torch.nn.functional as F\n    tensor = shared.sd_model.vae.orig_decode(*args, **kwargs)[0]\n    tensor = F.pixel_shuffle(tensor.movedim(2, 1), upscale_factor=2).movedim(1, 2) # vae returns 16-dim latents, we need to pixel shuffle to 4-dim images\n    tensor = tensor.unsqueeze(0)  # add batch dimension\n    return tensor\n\n\ndef hijack_vae_decode(*args, **kwargs):\n    jobid = shared.state.begin('VAE Decode')\n    t0 = time.time()\n    res = None\n    shared.sd_model = sd_models.apply_balanced_offload(shared.sd_model, exclude=['vae'])\n    try:\n        sd_models.move_model(shared.sd_model.vae, devices.device)\n        if torch.is_tensor(args[0]):\n            latents = args[0].to(device=devices.device, dtype=shared.sd_model.vae.dtype) # upcast to vae dtype\n            if hasattr(shared.sd_model.vae, '_asymmetric_upscale_vae'):\n                res = hijack_vae_upscale(latents, *args[1:], **kwargs)\n            else:\n                res = shared.sd_model.vae.orig_decode(latents, *args[1:], **kwargs)\n            t1 = time.time()\n            try:\n                shared.log.debug(f'Decode: vae={shared.sd_model.vae.__class__.__name__} dtype={latents.dtype} latents={list(latents.shape)}:{latents.device} decoded={list(res[0].shape)} slicing={getattr(shared.sd_model.vae, \"use_slicing\", None)} tiling={getattr(shared.sd_model.vae, \"use_tiling\", None)} time={t1-t0:.3f}')\n            except Exception:\n                pass\n        else:\n            res = shared.sd_model.vae.orig_decode(*args, **kwargs)\n    except Exception as e:\n        shared.log.error(f'Decode: vae={shared.sd_model.vae.__class__.__name__} {e}')\n        errors.display(e, 'vae')\n        res = None\n    t1 = time.time()\n    timer.process.add('vae', t1-t0)\n    shared.state.end(jobid)\n    return res\n\n\ndef hijack_vae_encode(*args, **kwargs):\n    jobid = shared.state.begin('VAE Encode')\n    t0 = time.time()\n    res = None\n    shared.sd_model = sd_models.apply_balanced_offload(shared.sd_model, exclude=['vae'])\n    try:\n        sd_models.move_model(shared.sd_model.vae, devices.device)\n        if torch.is_tensor(args[0]):\n            latents = args[0].to(device=devices.device, dtype=shared.sd_model.vae.dtype) # upcast to vae dtype\n            res = shared.sd_model.vae.orig_encode(latents, *args[1:], **kwargs)\n            t1 = time.time()\n            shared.log.debug(f'Encode: vae={shared.sd_model.vae.__class__.__name__} slicing={getattr(shared.sd_model.vae, \"use_slicing\", None)} tiling={getattr(shared.sd_model.vae, \"use_tiling\", None)} latents={list(latents.shape)}:{latents.device}:{latents.dtype} time={t1-t0:.3f}')\n        else:\n            res = shared.sd_model.vae.orig_encode(*args, **kwargs)\n    except Exception as e:\n        shared.log.error(f'Encode: vae={shared.sd_model.vae.__class__.__name__} {e}')\n        errors.display(e, 'vae')\n        res = None\n    t1 = time.time()\n    timer.process.add('vae', t1-t0)\n    shared.state.end(jobid)\n    return res\n\n\ndef init_hijack(pipe):\n    if pipe is not None and hasattr(pipe, 'vae') and hasattr(pipe.vae, 'decode') and not hasattr(pipe.vae, 'orig_decode'):\n        pipe.vae.orig_decode = pipe.vae.decode\n        pipe.vae.decode = hijack_vae_decode\n    if pipe is not None and hasattr(pipe, 'vae') and hasattr(pipe.vae, 'encode') and not hasattr(pipe.vae, 'orig_encode'):\n        pipe.vae.orig_encode = pipe.vae.encode\n        pipe.vae.encode = hijack_vae_encode\n"
  },
  {
    "path": "modules/sd_models.py",
    "content": "from enum import Enum\nimport sys\nimport time\nimport copy\nimport inspect\nimport logging\nimport os\nimport os.path\nimport diffusers\nimport diffusers.loaders.single_file_utils\nimport torch\nimport huggingface_hub as hf\nfrom installer import log\nfrom modules import timer, paths, shared, shared_items, modelloader, devices, script_callbacks, sd_vae, sd_unet, errors, sd_models_compile, sd_detect, model_quant, sd_hijack_te, sd_hijack_accelerate, sd_hijack_safetensors, attention\nfrom modules.memstats import memory_stats\nfrom modules.modeldata import model_data\nfrom modules.sd_checkpoint import CheckpointInfo, select_checkpoint, list_models, sd_metadata_file, checkpoints_list, checkpoint_titles, get_closest_checkpoint_match, model_hash, update_model_hashes, setup_model, write_metadata, read_metadata_from_safetensors # pylint: disable=unused-import\nfrom modules.sd_offload import get_module_names, disable_offload, set_diffuser_offload, apply_balanced_offload, set_accelerate # pylint: disable=unused-import\nfrom modules.sd_models_utils import NoWatermark, get_signature, get_call, path_to_repo, patch_diffuser_config, convert_to_faketensors, read_state_dict, get_state_dict_from_checkpoint, apply_function_to_model # pylint: disable=unused-import\n\n\nmodel_dir = \"Stable-diffusion\"\nmodel_path = os.path.abspath(os.path.join(paths.models_path, model_dir))\nsd_metadata = None\nsd_metadata_pending = 0\nsd_metadata_timer = 0\ndebug_move = log.trace if os.environ.get('SD_MOVE_DEBUG', None) is not None else lambda *args, **kwargs: None\ndebug_load = os.environ.get('SD_LOAD_DEBUG', None)\ndebug_process = log.trace if os.environ.get('SD_PROCESS_DEBUG', None) is not None else lambda *args, **kwargs: None\ndiffusers_version = int(diffusers.__version__.split('.')[1])\nget_closet_checkpoint_match = get_closest_checkpoint_match # legacy compatibility\ncheckpoint_tiles = checkpoint_titles # legacy compatibility\nallow_post_quant = None\npipe_switch_task_exclude = [\n    'AnimateDiffPipeline', 'AnimateDiffSDXLPipeline',\n    'FluxControlPipeline',\n    'FluxFillPipeline',\n    'InstantIRPipeline',\n    'LTXConditionPipeline',\n    'OmniGenPipeline', 'OmniGen2Pipeline',\n    'PhotoMakerStableDiffusionXLPipeline',\n    'PixelSmithXLPipeline',\n    'StableDiffusion3ControlNetPipeline',\n    'StableDiffusionAdapterPipeline', 'StableDiffusionXLAdapterPipeline',\n    'StableDiffusionControlNetXSPipeline', 'StableDiffusionXLControlNetXSPipeline',\n    'StableDiffusionReferencePipeline',\n    'StableDiffusionXLInstantIDPipeline',\n    'XOmniPipeline',\n    'HunyuanImagePipeline',\n    'AuraFlowPipeline',\n    'ChronoEditPipeline',\n    'GoogleNanoBananaPipeline',\n]\ni2i_pipes = [\n    'LEditsPPPipelineStableDiffusion', 'LEditsPPPipelineStableDiffusionXL',\n    'OmniGenPipeline', 'OmniGen2Pipeline',\n    'StableDiffusionAdapterPipeline', 'StableDiffusionXLAdapterPipeline',\n    'StableDiffusionControlNetXSPipeline', 'StableDiffusionXLControlNetXSPipeline',\n]\n\n\ndef set_huggingface_options():\n    if shared.opts.diffusers_to_gpu: # and model_type.startswith('Stable Diffusion'):\n        sd_hijack_accelerate.hijack_accelerate()\n    else:\n        sd_hijack_accelerate.restore_accelerate()\n    if (shared.opts.runai_streamer_diffusers or shared.opts.runai_streamer_transformers) and (sys.platform == 'linux'):\n        log.debug(f'Loader: runai enabled chunk={os.environ[\"RUNAI_STREAMER_CHUNK_BYTESIZE\"]} limit={os.environ[\"RUNAI_STREAMER_MEMORY_LIMIT\"]}')\n        sd_hijack_safetensors.hijack_safetensors(shared.opts.runai_streamer_diffusers, shared.opts.runai_streamer_transformers)\n    else:\n        sd_hijack_safetensors.restore_safetensors()\n\n\ndef set_vae_options(sd_model, vae=None, op:str='model', quiet:bool=False):\n    ops = {}\n    if hasattr(sd_model, \"vae\"):\n        if vae is not None:\n            sd_model.vae = vae\n            ops['name'] = f\"{sd_vae.loaded_vae_file}\"\n        if shared.opts.diffusers_vae_upcast != 'default':\n            sd_model.vae.config.force_upcast = True if shared.opts.diffusers_vae_upcast == 'true' else False\n            ops['upcast'] = sd_model.vae.config.force_upcast\n        if shared.opts.no_half_vae and op not in {'decode', 'encode'}:\n            devices.dtype_vae = torch.float32\n            sd_model.vae.to(devices.dtype_vae)\n            ops['no-half'] = True\n    if hasattr(sd_model, 'vae') and hasattr(sd_model.vae, 'enable_slicing') and hasattr(sd_model.vae, 'disable_slicing'):\n        ops['slicing'] = shared.opts.diffusers_vae_slicing\n        try:\n            if shared.opts.diffusers_vae_slicing:\n                sd_model.vae.enable_slicing()\n            else:\n                sd_model.vae.disable_slicing()\n        except Exception:\n            pass\n    if hasattr(sd_model, 'vae') and hasattr(sd_model.vae, 'enable_tiling') and hasattr(sd_model.vae, 'disable_tiling'):\n        ops['tiling'] = shared.opts.diffusers_vae_tiling\n        try:\n            if shared.opts.diffusers_vae_tiling:\n                if hasattr(sd_model, 'vae') and hasattr(sd_model.vae, 'config') and hasattr(sd_model.vae.config, 'sample_size') and isinstance(sd_model.vae.config.sample_size, int):\n                    if getattr(sd_model.vae, \"tile_sample_min_size_backup\", None) is None:\n                        sd_model.vae.tile_sample_min_size_backup = sd_model.vae.tile_sample_min_size\n                        sd_model.vae.tile_latent_min_size_backup = sd_model.vae.tile_latent_min_size\n                        sd_model.vae.tile_overlap_factor_backup = sd_model.vae.tile_overlap_factor\n                    if shared.opts.diffusers_vae_tile_size > 0:\n                        sd_model.vae.tile_sample_min_size = int(shared.opts.diffusers_vae_tile_size)\n                        sd_model.vae.tile_latent_min_size = int(shared.opts.diffusers_vae_tile_size / (2 ** (len(sd_model.vae.config.block_out_channels) - 1)))\n                    else:\n                        sd_model.vae.tile_sample_min_size = getattr(sd_model.vae, \"tile_sample_min_size_backup\", sd_model.vae.tile_sample_min_size)\n                        sd_model.vae.tile_latent_min_size = getattr(sd_model.vae, \"tile_latent_min_size_backup\", sd_model.vae.tile_latent_min_size)\n                    if shared.opts.diffusers_vae_tile_overlap != 0.25:\n                        sd_model.vae.tile_overlap_factor = float(shared.opts.diffusers_vae_tile_overlap)\n                    else:\n                        sd_model.vae.tile_overlap_factor = getattr(sd_model.vae, \"tile_overlap_factor_backup\", sd_model.vae.tile_overlap_factor)\n                    ops['tile'] = sd_model.vae.tile_sample_min_size\n                    ops['overlap'] = sd_model.vae.tile_overlap_factor\n                sd_model.vae.enable_tiling()\n            else:\n                sd_model.vae.disable_tiling()\n        except Exception:\n            pass\n    if hasattr(sd_model, \"vqvae\"):\n        ops['upcast'] = True\n        sd_model.vqvae.to(torch.float32) # vqvae is producing nans in fp16\n    if not quiet and len(ops) > 0:\n        shared.log.quiet(quiet, f'Setting {op}: component=vae {ops}')\n\n\ndef set_diffuser_options(sd_model, vae=None, op:str='model', offload:bool=True, quiet:bool=False):\n    if sd_model is None:\n        shared.log.warning(f'{op} is not loaded')\n        return\n\n    if hasattr(sd_model, \"watermark\"):\n        sd_model.watermark = NoWatermark()\n    if not (hasattr(sd_model, \"has_accelerate\") and sd_model.has_accelerate):\n        sd_model.has_accelerate = False\n\n    clear_caches()\n    set_vae_options(sd_model, vae, op, quiet)\n    attention.set_diffusers_attention(sd_model, quiet)\n\n    if shared.opts.diffusers_fuse_projections and hasattr(sd_model, 'fuse_qkv_projections'):\n        try:\n            sd_model.fuse_qkv_projections()\n            shared.log.quiet(quiet, f'Setting {op}: fused-qkv=True')\n        except Exception as e:\n            shared.log.error(f'Setting {op}: fused-qkv=True {e}')\n    if shared.opts.diffusers_fuse_projections and hasattr(sd_model, 'transformer') and hasattr(sd_model.transformer, 'fuse_qkv_projections'):\n        try:\n            sd_model.transformer.fuse_qkv_projections()\n            shared.log.quiet(quiet, f'Setting {op}: fused-qkv=True')\n        except Exception as e:\n            shared.log.error(f'Setting {op}: fused-qkv=True {e}')\n    if shared.opts.diffusers_eval:\n        shared.log.debug(f'Setting {op}: eval=True')\n        def eval_model(model, op=None, sd_model=None): # pylint: disable=unused-argument\n            if hasattr(model, \"requires_grad_\"):\n                model.requires_grad_(False)\n                model.eval()\n            return model\n        sd_model = apply_function_to_model(sd_model, eval_model, [\"Model\", \"VAE\", \"TE\"], op=\"eval\")\n\n    if shared.opts.opt_channelslast and hasattr(sd_model, 'unet'):\n        shared.log.quiet(quiet, f'Setting {op}: channels-last=True')\n        sd_model.unet.to(memory_format=torch.channels_last)\n\n    for module_name in get_module_names(sd_model):\n        module = getattr(sd_model, module_name, None)\n        if hasattr(module, \"quantization_config\") and getattr(module.quantization_config, \"quant_method\", None) == \"sdnq\":\n            from modules.sdnq.common import use_torch_compile as sdnq_use_torch_compile\n            if shared.opts.sdnq_use_quantized_matmul and not sdnq_use_torch_compile:\n                shared.log.warning('SDNQ Quantized MatMul requires a working Triton install. Disabling Quantized MatMul.')\n                shared.opts.sdnq_use_quantized_matmul = False\n            if module.quantization_config.use_quantized_matmul != shared.opts.sdnq_use_quantized_matmul:\n                from modules.sdnq.loader import apply_sdnq_options_to_model\n                shared.log.debug(f'Setting {op} {module_name}: sdnq_use_quantized_matmul={shared.opts.sdnq_use_quantized_matmul}')\n                module = apply_sdnq_options_to_model(module, use_quantized_matmul=shared.opts.sdnq_use_quantized_matmul)\n                setattr(sd_model, module_name, module)\n\n    if offload:\n        set_diffuser_offload(sd_model, op, quiet)\n\n\ndef move_model(model, device=None, force=False):\n    def set_execution_device(module, device):\n        if device == torch.device('cpu'):\n            return\n        if hasattr(module, \"_hf_hook\") and hasattr(module._hf_hook, \"execution_device\"): # pylint: disable=protected-access\n            try:\n                \"\"\"\n                for k, v in module.named_parameters(recurse=True):\n                    if v.device == torch.device('meta'):\n                        from accelerate.utils import set_module_tensor_to_device\n                        set_module_tensor_to_device(module, k, device, tied_params_map=module._hf_hook.tied_params_map)\n                \"\"\"\n                module._hf_hook.execution_device = device # pylint: disable=protected-access\n                # module._hf_hook.offload = True\n            except Exception as e:\n                if os.environ.get('SD_MOVE_DEBUG', None):\n                    shared.log.error(f'Model move execution device: device={device} {e}')\n\n    if model is None or device is None:\n        return\n\n    if hasattr(model, 'pipe'):\n        move_model(model.pipe, device, force)\n\n    fn = f'{sys._getframe(2).f_code.co_name}:{sys._getframe(1).f_code.co_name}' # pylint: disable=protected-access\n    if getattr(model, 'vae', None) is not None and get_diffusers_task(model) != DiffusersTaskType.TEXT_2_IMAGE:\n        if device == devices.device and model.vae.device.type != \"meta\": # force vae back to gpu if not in txt2img mode\n            model.vae.to(device)\n            if hasattr(model.vae, '_hf_hook'):\n                debug_move(f'Model move: to={device} class={model.vae.__class__} fn={fn}') # pylint: disable=protected-access\n                model.vae._hf_hook.execution_device = device # pylint: disable=protected-access\n    if hasattr(model, \"components\"): # accelerate patch\n        for name, m in model.components.items():\n            if not hasattr(m, \"_hf_hook\"): # not accelerate hook\n                break\n            if not isinstance(m, torch.nn.Module) or name in model._exclude_from_cpu_offload: # pylint: disable=protected-access\n                continue\n            for module in m.modules():\n                set_execution_device(module, device)\n    # set_execution_device(model, device)\n\n    if getattr(model, 'has_accelerate', False) and not force:\n        return\n    if hasattr(model, \"device\") and devices.normalize_device(model.device) == devices.normalize_device(device) and not force:\n        return\n\n    try:\n        t0 = time.time()\n        try:\n            if model.device == torch.device('meta'):\n                set_execution_device(model, device)\n            elif hasattr(model, 'to'):\n                model.to(device)\n            if hasattr(model, \"prior_pipe\"):\n                model.prior_pipe.to(device)\n        except Exception as e0:\n            if 'Cannot copy out of meta tensor' in str(e0) or 'must be Tensor, not NoneType' in str(e0):\n                if hasattr(model, \"components\"):\n                    for _name, component in model.components.items():\n                        if hasattr(component, 'modules'):\n                            for module in component.modules():\n                                try:\n                                    if hasattr(module, 'to'):\n                                        module.to(device)\n                                except Exception as e2:\n                                    if 'Cannot copy out of meta tensor' in str(e2):\n                                        if os.environ.get('SD_MOVE_DEBUG', None):\n                                            shared.log.warning(f'Model move meta: module={module.__class__}')\n                                        module.to_empty(device=device)\n            elif 'enable_sequential_cpu_offload' in str(e0):\n                pass # ignore model move if sequential offload is enabled\n            elif 'Params4bit' in str(e0) or 'Params8bit' in str(e0):\n                pass # ignore model move if quantization is enabled\n            elif 'already been set to the correct devices' in str(e0):\n                pass # ignore errors on pre-quant models\n            elif 'Casting a quantized model to' in str(e0):\n                pass # ignore errors on quantized models\n            else:\n                raise e0\n        t1 = time.time()\n    except Exception as e1:\n        t1 = time.time()\n        shared.log.warning(f'Model move: device={device} {e1}')\n    if 'move' not in timer.process.records:\n        timer.process.records['move'] = 0\n    timer.process.records['move'] += t1 - t0\n    if os.environ.get('SD_MOVE_DEBUG', None) is not None or (t1-t0) > 2:\n        shared.log.debug(f'Model move: device={device} class={model.__class__.__name__} accelerate={getattr(model, \"has_accelerate\", False)} fn={fn} time={t1-t0:.2f}') # pylint: disable=protected-access\n    devices.torch_gc()\n\n\ndef move_base(model, device):\n    if hasattr(model, 'transformer'):\n        key = 'transformer'\n    elif hasattr(model, 'unet'):\n        key = 'unet'\n    else:\n        shared.log.warning(f'Model move: model={model.__class__} device={device} key=unknown')\n        return None\n    shared.log.debug(f'Model move: module={key} device={device}')\n    model = getattr(model, key)\n    R = model.device\n    move_model(model, device)\n    return R\n\n\ndef load_diffuser_initial(diffusers_load_config, op='model'):\n    sd_model = None\n    checkpoint_info = None\n    ckpt_basename = os.path.basename(shared.cmd_opts.ckpt)\n    model_name = modelloader.find_diffuser(ckpt_basename)\n    if model_name is not None:\n        shared.log.info(f'Load model {op}: path=\"{model_name}\"')\n        model_file = modelloader.download_diffusers_model(hub_id=model_name, variant=diffusers_load_config.get('variant', None))\n        try:\n            shared.log.debug(f'Load {op}: config={diffusers_load_config}')\n            sd_model = diffusers.DiffusionPipeline.from_pretrained(model_file, **diffusers_load_config)\n        except Exception as e:\n            shared.log.error(f'Failed loading model: {model_file} {e}')\n            errors.display(e, f'Load {op}: path=\"{model_file}\"')\n            return None, None\n        list_models() # rescan for downloaded model\n        checkpoint_info = CheckpointInfo(model_name)\n    return sd_model, checkpoint_info\n\n\ndef load_diffuser_force(detected_model_type, checkpoint_info, diffusers_load_config, op='model'):\n    sd_model = None\n    global allow_post_quant # pylint: disable=global-statement\n    unload_model_weights(op=op)\n    shared.sd_model = None\n    model_type = detected_model_type.removesuffix(' SDNQ')\n    try:\n        if model_type in ['Stable Cascade']:\n            from pipelines.model_stablecascade import load_cascade_combined\n            sd_model = load_cascade_combined(checkpoint_info, diffusers_load_config)\n            allow_post_quant = True\n        elif model_type in ['InstaFlow']:\n            pipeline = diffusers.utils.get_class_from_dynamic_module('instaflow_one_step', module_file='pipeline.py')\n            shared_items.pipelines['InstaFlow'] = pipeline\n            sd_model = pipeline.from_pretrained(checkpoint_info.path, cache_dir=shared.opts.diffusers_dir, **diffusers_load_config)\n            allow_post_quant = True\n        elif model_type in ['SegMoE']:\n            from pipelines.segmoe.segmoe_model import SegMoEPipeline\n            sd_model = SegMoEPipeline(checkpoint_info.path, cache_dir=shared.opts.diffusers_dir, **diffusers_load_config)\n            sd_model = sd_model.pipe # segmoe pipe does its stuff in __init__ and __call__ is the original pipeline\n            allow_post_quant = True\n            shared_items.pipelines['SegMoE'] = SegMoEPipeline\n        elif model_type in ['PixArt Sigma']:\n            from pipelines.model_pixart import load_pixart\n            sd_model = load_pixart(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['Sana']:\n            from pipelines.model_sana import load_sana\n            sd_model = load_sana(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['Lumina-Next']:\n            from pipelines.model_lumina import load_lumina\n            sd_model = load_lumina(checkpoint_info, diffusers_load_config)\n            allow_post_quant = True\n        elif model_type in ['Kolors']:\n            from pipelines.model_kolors import load_kolors\n            sd_model = load_kolors(checkpoint_info, diffusers_load_config)\n            allow_post_quant = True\n        elif model_type in ['AuraFlow']:\n            from pipelines.model_auraflow import load_auraflow\n            sd_model = load_auraflow(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['FLUX']:\n            from pipelines.model_flux import load_flux\n            sd_model = load_flux(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['FLUX2']:\n            from pipelines.model_flux2 import load_flux2\n            sd_model = load_flux2(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['FLUX2 Klein']:\n            from pipelines.model_flux2_klein import load_flux2_klein\n            sd_model = load_flux2_klein(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['FLEX']:\n            from pipelines.model_flex import load_flex\n            sd_model = load_flex(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['Chroma']:\n            from pipelines.model_chroma import load_chroma\n            sd_model = load_chroma(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['Lumina 2']:\n            from pipelines.model_lumina import load_lumina2\n            sd_model = load_lumina2(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['Stable Diffusion 3']:\n            from pipelines.model_sd3 import load_sd3\n            sd_model = load_sd3(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['CogView 3']:\n            from pipelines.model_cogview import load_cogview3\n            sd_model = load_cogview3(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['CogView 4']:\n            from pipelines.model_cogview import load_cogview4\n            sd_model = load_cogview4(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['Meissonic']:\n            from pipelines.model_meissonic import load_meissonic\n            sd_model = load_meissonic(checkpoint_info, diffusers_load_config)\n            allow_post_quant = True\n        elif model_type in ['OmniGen2']:\n            from pipelines.model_omnigen import load_omnigen2\n            sd_model = load_omnigen2(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['OmniGen']:\n            from pipelines.model_omnigen import load_omnigen\n            sd_model = load_omnigen(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['HiDream']:\n            from pipelines.model_hidream import load_hidream\n            sd_model = load_hidream(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['Cosmos']:\n            from pipelines.model_cosmos import load_cosmos_t2i\n            sd_model = load_cosmos_t2i(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['Anima']:\n            from pipelines.model_anima import load_anima\n            sd_model = load_anima(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['FLite']:\n            from pipelines.model_flite import load_flite\n            sd_model = load_flite(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['WanAI']:\n            from pipelines.model_wanai import load_wan\n            sd_model = load_wan(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['ChronoEdit']:\n            from pipelines.model_chrono import load_chrono\n            sd_model = load_chrono(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['Bria']:\n            from pipelines.model_bria import load_bria\n            sd_model = load_bria(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['Qwen']:\n            from pipelines.model_qwen import load_qwen\n            sd_model = load_qwen(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['HunyuanDiT']:\n            from pipelines.model_hunyuandit import load_hunyuandit\n            sd_model = load_hunyuandit(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['Kandinsky 2.1']:\n            from pipelines.model_kandinsky import load_kandinsky21\n            sd_model = load_kandinsky21(checkpoint_info, diffusers_load_config)\n            allow_post_quant = True\n        elif model_type in ['Kandinsky 2.2']:\n            from pipelines.model_kandinsky import load_kandinsky22\n            sd_model = load_kandinsky22(checkpoint_info, diffusers_load_config)\n            allow_post_quant = True\n        elif model_type in ['Kandinsky 3.0']:\n            from pipelines.model_kandinsky import load_kandinsky3\n            sd_model = load_kandinsky3(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['Kandinsky 5.0'] and '2I' in model_type:\n            from pipelines.model_kandinsky import load_kandinsky5\n            sd_model = load_kandinsky5(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['NextStep']:\n            from pipelines.model_nextstep import load_nextstep\n            sd_model = load_nextstep(checkpoint_info, diffusers_load_config) # pylint: disable=assignment-from-none\n            allow_post_quant = False\n        elif model_type in ['hdm']:\n            from pipelines.model_hdm import load_hdm\n            sd_model = load_hdm(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['HunyuanImage']:\n            from pipelines.model_hyimage import load_hyimage\n            sd_model = load_hyimage(checkpoint_info, diffusers_load_config) # pylint: disable=assignment-from-none\n            allow_post_quant = False\n        elif model_type in ['HunyuanImage3']:\n            from pipelines.model_hyimage import load_hyimage3\n            sd_model = load_hyimage3(checkpoint_info, diffusers_load_config) # pylint: disable=assignment-from-none\n            allow_post_quant = False\n        elif model_type in ['X-Omni']:\n            from pipelines.model_xomni import load_xomni\n            sd_model = load_xomni(checkpoint_info, diffusers_load_config) # pylint: disable=assignment-from-none\n            allow_post_quant = False\n        elif model_type in ['NanoBanana']:\n            from pipelines.model_google import load_nanobanana\n            sd_model = load_nanobanana(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['PRX']:\n            from pipelines.model_prx import load_prx\n            sd_model = load_prx(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['Z-Image']:\n            from pipelines.model_z_image import load_z_image\n            sd_model = load_z_image(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['LongCat']:\n            from pipelines.model_longcat import load_longcat\n            sd_model = load_longcat(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['Overfit']:\n            from pipelines.model_ovis import load_ovis\n            sd_model = load_ovis(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n        elif model_type in ['GLM-Image']:\n            from pipelines.model_glm import load_glm_image\n            sd_model = load_glm_image(checkpoint_info, diffusers_load_config)\n            allow_post_quant = False\n    except Exception as e:\n        shared.log.error(f'Load {op}: path=\"{checkpoint_info.path}\" {e}')\n        if debug_load:\n            errors.display(e, 'Load')\n        return None, True\n    if sd_model is not None:\n        return sd_model, True\n    else:\n        return sd_model, False\n\n\ndef load_diffuser_folder(model_type, pipeline, checkpoint_info, diffusers_load_config, op='model'):\n    sd_model = None\n    files = shared.walk_files(checkpoint_info.path, ['.safetensors', '.bin', '.ckpt'])\n    if 'variant' not in diffusers_load_config and any('diffusion_pytorch_model.fp16' in f for f in files): # deal with diffusers lack of variant fallback when loading\n        diffusers_load_config['variant'] = 'fp16'\n\n    err0, err1, err2, err3 = None, None, None, None\n    if os.path.exists(checkpoint_info.path) and os.path.isdir(checkpoint_info.path):\n        if os.path.exists(os.path.join(checkpoint_info.path, 'unet', 'diffusion_pytorch_model.bin')):\n            shared.log.debug(f'Load {op}: type=pickle')\n            diffusers_load_config['use_safetensors'] = False\n    if debug_load:\n        shared.log.debug(f'Load {op}: args={diffusers_load_config}')\n\n    try: #0 - using detected model type and pipeline\n        if (model_type is not None) and (pipeline is not None):\n            if ('sdnq' in model_type.lower()) or ('sdnq' in checkpoint_info.path.lower()):\n                global allow_post_quant # pylint: disable=global-statement\n                allow_post_quant = False\n            sd_model = pipeline.from_pretrained(checkpoint_info.path, cache_dir=shared.opts.diffusers_dir, **diffusers_load_config)\n            sd_model.model_type = sd_model.__class__.__name__\n    except Exception as e:\n        err0 = e\n        if debug_load:\n            errors.display(e, 'Load Detected')\n\n    try: # 1 - autopipeline, best choice but not all pipelines are available\n        try:\n            if err0 is not None:\n                sd_model = diffusers.AutoPipelineForText2Image.from_pretrained(checkpoint_info.path, cache_dir=shared.opts.diffusers_dir, **diffusers_load_config)\n                sd_model.model_type = sd_model.__class__.__name__\n        except ValueError as e:\n            if 'no variant default' in str(e):\n                shared.log.warning(f'Load {op}: variant={diffusers_load_config[\"variant\"]} model=\"{checkpoint_info.path}\" using default variant')\n                diffusers_load_config.pop('variant', None)\n                sd_model = diffusers.AutoPipelineForText2Image.from_pretrained(checkpoint_info.path, cache_dir=shared.opts.diffusers_dir, **diffusers_load_config)\n                sd_model.model_type = sd_model.__class__.__name__\n            elif 'safetensors found in directory' in str(err1):\n                shared.log.warning(f'Load {op}: type=pickle')\n                diffusers_load_config['use_safetensors'] = False\n                sd_model = diffusers.AutoPipelineForText2Image.from_pretrained(checkpoint_info.path, cache_dir=shared.opts.diffusers_dir, **diffusers_load_config)\n                sd_model.model_type = sd_model.__class__.__name__\n            else:\n                raise ValueError from e # reraise\n    except Exception as e:\n        err1 = e\n        if debug_load:\n            errors.display(e, 'Load AutoPipeline')\n\n    try: # 2 - diffusion pipeline, works for most non-linked pipelines\n        if err1 is not None:\n            sd_model = diffusers.DiffusionPipeline.from_pretrained(checkpoint_info.path, cache_dir=shared.opts.diffusers_dir, **diffusers_load_config)\n            sd_model.model_type = sd_model.__class__.__name__\n    except Exception as e:\n        err2 = e\n        if debug_load:\n            errors.display(e, \"Load DiffusionPipeline\")\n\n    try: # 3 - try basic pipeline just in case\n        if err2 is not None:\n            sd_model = diffusers.StableDiffusionXLPipeline.from_pretrained(checkpoint_info.path, cache_dir=shared.opts.diffusers_dir, **diffusers_load_config)\n            sd_model.model_type = sd_model.__class__.__name__\n    except Exception as e:\n        err3 = e  # ignore last error\n        shared.log.error(f\"StableDiffusionPipeline: {e}\")\n        if debug_load:\n            errors.display(e, \"Load StableDiffusionPipeline\")\n\n    if err3 is not None:\n        shared.log.error(f'Load {op}: {checkpoint_info.path} detected={err0} auto={err1} diffusion={err2} base={err3}')\n        return None\n\n    return sd_model\n\n\ndef load_diffuser_file(model_type, pipeline, checkpoint_info, diffusers_load_config, op='model'):\n    sd_model = None\n    diffusers_load_config[\"extract_ema\"] = shared.opts.diffusers_extract_ema\n    if pipeline is None:\n        shared.log.error(f'Load {op}: pipeline={shared.opts.diffusers_pipeline} not initialized')\n        return None\n    try:\n        if model_type.startswith('Stable Diffusion'):\n            if shared.opts.diffusers_force_zeros:\n                diffusers_load_config['force_zeros_for_empty_prompt '] = shared.opts.diffusers_force_zeros\n            else:\n                model_config = sd_detect.get_load_config(checkpoint_info.path, model_type, config_type='json')\n                if model_config is not None:\n                    if debug_load:\n                        shared.log.debug(f'Load {op}: config=\"{model_config}\"')\n                    diffusers_load_config['config'] = model_config\n        if model_type.startswith('Stable Diffusion 3'):\n            from pipelines.model_sd3 import load_sd3\n            sd_model = load_sd3(checkpoint_info, diffusers_load_config)\n        elif hasattr(pipeline, 'from_single_file'):\n            diffusers.loaders.single_file_utils.CHECKPOINT_KEY_NAMES[\"clip\"] = \"cond_stage_model.transformer.text_model.embeddings.position_embedding.weight\" # patch for diffusers==0.28.0\n            diffusers_load_config['use_safetensors'] = True\n            diffusers_load_config['cache_dir'] = shared.opts.hfcache_dir # use hfcache instead of diffusers dir as this is for config only in case of single-file\n            if shared.opts.stream_load:\n                diffusers_load_config['disable_mmap'] = True\n            if shared.opts.disable_accelerate:\n                from diffusers.utils import import_utils\n                import_utils._accelerate_available = False # pylint: disable=protected-access\n            sd_model = pipeline.from_single_file(checkpoint_info.path, **diffusers_load_config)\n            # sd_model = patch_diffuser_config(sd_model, checkpoint_info.path)\n        elif hasattr(pipeline, 'from_ckpt'):\n            diffusers_load_config['cache_dir'] = shared.opts.hfcache_dir\n            sd_model = pipeline.from_ckpt(checkpoint_info.path, **diffusers_load_config)\n        else:\n            shared.log.error(f'Load {op}: file=\"{checkpoint_info.path}\" {shared.opts.diffusers_pipeline} cannot load safetensor model')\n            return None\n        if shared.opts.diffusers_vae_upcast != 'default' and model_type in ['Stable Diffusion', 'Stable Diffusion XL']:\n            diffusers_load_config['force_upcast'] = True if shared.opts.diffusers_vae_upcast == 'true' else False\n        # if debug_load:\n        #    shared.log.debug(f'Model args: {diffusers_load_config}')\n        if sd_model is not None:\n            diffusers_load_config.pop('vae', None)\n            diffusers_load_config.pop('safety_checker', None)\n            diffusers_load_config.pop('requires_safety_checker', None)\n            diffusers_load_config.pop('config_files', None)\n            diffusers_load_config.pop('local_files_only', None)\n            shared.log.debug(f'Setting {op}: pipeline={sd_model.__class__.__name__} config={diffusers_load_config}') # pylint: disable=protected-access\n    except Exception as e:\n        shared.log.error(f'Load {op}: file=\"{checkpoint_info.path}\" pipeline={shared.opts.diffusers_pipeline} config={diffusers_load_config} {e}')\n        if 'Weights for this component appear to be missing in the checkpoint' in str(e):\n            shared.log.error(f'Load {op}: file=\"{checkpoint_info.path}\" is not a complete model')\n        else:\n            errors.display(e, 'Load')\n        return None\n    return sd_model\n\n\ndef load_sdnq_module(fn: str, module_name: str, load_method: str):\n    t0 = time.time()\n    quantization_config = None\n    quantization_config_path = os.path.join(fn, module_name, 'quantization_config.json')\n    model_config_path = os.path.join(fn, module_name, 'config.json')\n    if os.path.exists(quantization_config_path):\n        quantization_config = shared.readfile(quantization_config_path, silent=True, as_type=\"dict\")\n    elif os.path.exists(model_config_path):\n        quantization_config = shared.readfile(model_config_path, silent=True, as_type=\"dict\").get(\"quantization_config\", None)\n    if quantization_config is None:\n        return None, module_name, 0\n    model_name = os.path.join(fn, module_name)\n    try:\n        from modules import sdnq\n        module = sdnq.load_sdnq_model(\n            model_path=model_name,\n            quantization_config=quantization_config,\n            device=devices.device if shared.opts.diffusers_to_gpu else devices.cpu,\n            dtype=devices.dtype,\n            load_method=load_method,\n        )\n        t1 = time.time()\n        return module, module_name, t1 - t0\n    except Exception as e:\n        shared.log.error(f'Load sdnq: model=\"{fn}\" module=\"{module_name}\" {e}')\n        errors.display(e, 'Load')\n        return None, module_name, 0\n\n\ndef load_sdnq_model(checkpoint_info, pipeline, diffusers_load_config, op):\n    modules = {}\n    global allow_post_quant # pylint: disable=global-statement\n    allow_post_quant = False\n    t0 = time.time()\n\n    if shared.opts.runai_streamer_diffusers and (sys.platform == 'linux'):\n        load_method = 'streamer'\n        from installer import install\n        install('runai_model_streamer>=0.15.1')\n    elif shared.opts.sd_parallel_load:\n        load_method = 'threaded'\n    else:\n        load_method = 'safetensors'\n\n    for module_name in os.listdir(checkpoint_info.path):\n        module, name, t = load_sdnq_module(checkpoint_info.path, module_name, load_method=load_method)\n        if module is not None:\n            modules[name] = module\n            shared.log.debug(f'Load {op}: module=\"{checkpoint_info.name}\" module=\"{name}\" direct={shared.opts.diffusers_to_gpu} prequant=sdnq method={load_method} time={t:.2f}')\n\n    \"\"\"\n    futures = []\n    import concurrent.futures\n    with concurrent.futures.ThreadPoolExecutor(max_workers=4) as executor:\n        for module_name in os.listdir(checkpoint_info.path):\n            future = executor.submit(load_sdnq_module, checkpoint_info.path, module_name)\n            futures.append(future)\n        for future in futures:\n            loaded_module, name, t = future.result()\n            if loaded_module is not None:\n                shared.log.debug(f'Load module: model=\"{checkpoint_info.name}\" module=\"{name}\" direct={shared.opts.diffusers_to_gpu} prequant=sdnq time={t:.2f}')\n                modules[name] = loaded_module\n    \"\"\"\n    t1 = time.time()\n    shared.log.debug(f'Load {op}: model=\"{checkpoint_info.name}\" modules={list(modules.keys())} prequant=sdnq time={t1-t0:.2f}')\n    sd_model = pipeline.from_pretrained(\n        checkpoint_info.path,\n        cache_dir=shared.opts.diffusers_dir,\n        **modules,\n        **diffusers_load_config,\n    )\n    return sd_model\n\n\ndef set_overrides(sd_model, checkpoint_info, model_type):\n    checkpoint_info_name = checkpoint_info.name.lower()\n    if \"Kandinsky\" in sd_model.__class__.__name__:\n        sd_model.scheduler.name = 'DDIM'\n    elif (\n        checkpoint_info.path.lower().endswith('.safetensors')\n        and model_type.startswith(\"Stable Diffusion\") and model_type != \"Stable Diffusion 3\"\n    ): # SDXL and SD 1.5\n        scheduler_config = sd_model.scheduler.config\n        # scheduler_config['beta_schedule'] = 'scaled_linear'\n        # scheduler_config['timestep_spacing'] = 'trailing'\n        sd_model.scheduler = diffusers.EulerAncestralDiscreteScheduler.from_config(scheduler_config)\n        if 'bigaspv25' in checkpoint_info_name or 'noobai-rf' in checkpoint_info_name or ('flow' in checkpoint_info_name and 'flower' not in checkpoint_info_name):\n            scheduler_config = sd_model.scheduler.config\n            scheduler_config['prediction_type'] = 'flow_prediction'\n            scheduler_config['beta_schedule'] = 'linear'\n            scheduler_config['use_flow_sigmas'] = True\n            scheduler_config[\"flow_shift\"] = 2.5\n            sd_model.scheduler = diffusers.UniPCMultistepScheduler.from_config(scheduler_config)\n            shared.log.info(f'Setting override: model=\"{checkpoint_info.name}\" component=scheduler prediction=\"flow-prediction\"')\n        elif 'vpred' in checkpoint_info_name or 'v-pred' in checkpoint_info_name or 'v_pred' in checkpoint_info_name:\n            scheduler_config = sd_model.scheduler.config\n            scheduler_config['prediction_type'] = 'v_prediction'\n            scheduler_config['beta_schedule'] = 'scaled_linear'\n            scheduler_config['rescale_betas_zero_snr'] = True\n            sd_model.scheduler = diffusers.EulerAncestralDiscreteScheduler.from_config(scheduler_config)\n            shared.log.info(f'Setting override: model=\"{checkpoint_info.name}\" component=scheduler prediction=\"v-prediction\" rescale=True')\n        else:\n            try:\n                from safetensors import safe_open\n                with safe_open(checkpoint_info.path, framework='pt') as f:\n                    keys = f.keys()\n                if 'v_pred' in keys: # NoobAI VPred models added empty v_pred and ztsnr keys\n                    scheduler_config = sd_model.scheduler.config\n                    scheduler_config['prediction_type'] = 'v_prediction'\n                    scheduler_config['beta_schedule'] = 'scaled_linear'\n                    if 'ztsnr' in keys:\n                        scheduler_config['rescale_betas_zero_snr'] = True\n                    sd_model.scheduler = diffusers.EulerAncestralDiscreteScheduler.from_config(scheduler_config)\n                    shared.log.info(f'Setting override: model=\"{checkpoint_info.name}\" component=scheduler prediction=\"v-prediction\" rescale={scheduler_config.get(\"rescale_betas_zero_snr\", False)}')\n            except Exception as e:\n                shared.log.debug(f'Setting override from keys failed: {e}')\n\n\ndef set_defaults(sd_model, checkpoint_info):\n    sd_model.sd_model_hash = checkpoint_info.calculate_shorthash() # pylint: disable=attribute-defined-outside-init\n    sd_model.sd_checkpoint_info = checkpoint_info # pylint: disable=attribute-defined-outside-init\n    sd_model.sd_model_checkpoint = checkpoint_info.filename # pylint: disable=attribute-defined-outside-init\n    if hasattr(sd_model, \"prior_pipe\"):\n        sd_model.default_scheduler = copy.deepcopy(sd_model.prior_pipe.scheduler) if hasattr(sd_model.prior_pipe, \"scheduler\") else None\n    else:\n        sd_model.default_scheduler = copy.deepcopy(sd_model.scheduler) if hasattr(sd_model, \"scheduler\") else None\n    sd_model.is_sdxl = False # a1111 compatibility item\n    sd_model.is_sd2 = hasattr(sd_model, 'cond_stage_model') and hasattr(sd_model.cond_stage_model, 'model') # a1111 compatibility item\n    sd_model.is_sd1 = not sd_model.is_sd2 # a1111 compatibility item\n    sd_model.logvar = sd_model.logvar.to(devices.device) if hasattr(sd_model, 'logvar') else None # fix for training\n    shared.opts.data[\"sd_checkpoint_hash\"] = checkpoint_info.sha256\n    if hasattr(sd_model, \"set_progress_bar_config\"):\n        sd_model.set_progress_bar_config(bar_format='Progress {rate_fmt}{postfix} {bar} {percentage:3.0f}% {n_fmt}/{total_fmt} {elapsed} {remaining}', ncols=80, colour='#327fba')\n\n\ndef load_diffuser(checkpoint_info=None, op='model', revision=None): # pylint: disable=unused-argument\n    global allow_post_quant # pylint: disable=global-statement\n    allow_post_quant = True # assume default\n    logging.getLogger(\"diffusers\").setLevel(logging.ERROR)\n    timer.load.record(\"diffusers\")\n    diffusers_load_config = {\n        \"low_cpu_mem_usage\": True,\n        \"torch_dtype\": devices.dtype,\n        \"load_connected_pipeline\": True,\n        \"safety_checker\": None, # sd15 specific but we cant know ahead of time\n        \"requires_safety_checker\": False, # sd15 specific but we cant know ahead of time\n        # \"use_safetensors\": True,\n    }\n    if revision is not None:\n        diffusers_load_config['revision'] = revision\n    if shared.opts.diffusers_model_load_variant != 'default':\n        diffusers_load_config['variant'] = shared.opts.diffusers_model_load_variant\n    if shared.opts.diffusers_pipeline == 'Custom Diffusers Pipeline' and len(shared.opts.custom_diffusers_pipeline) > 0:\n        shared.log.debug(f'Model pipeline: pipeline=\"{shared.opts.custom_diffusers_pipeline}\"')\n        diffusers_load_config['custom_pipeline'] = shared.opts.custom_diffusers_pipeline\n    if shared.opts.data.get('sd_model_checkpoint', '') == 'model.safetensors' or shared.opts.data.get('sd_model_checkpoint', '') == '':\n        shared.opts.data['sd_model_checkpoint'] = \"stabilityai/stable-diffusion-xl-base-1.0\"\n\n    if (op == 'model' or op == 'dict'):\n        if (model_data.sd_model is not None) and (checkpoint_info is not None) and (getattr(model_data.sd_model, 'sd_checkpoint_info', None) is not None) and (checkpoint_info.hash == model_data.sd_model.sd_checkpoint_info.hash): # trying to load the same model\n            return\n    else:\n        if (model_data.sd_refiner is not None) and (checkpoint_info is not None) and (getattr(model_data.sd_refiner, 'sd_checkpoint_info', None) is not None) and (checkpoint_info.hash == model_data.sd_refiner.sd_checkpoint_info.hash): # trying to load the same model\n            return\n\n    sd_model = None\n    handled = False\n    try:\n        # initial load only\n        if sd_model is None:\n            if shared.cmd_opts.ckpt is not None and os.path.isdir(shared.cmd_opts.ckpt) and model_data.initial:\n                sd_model, checkpoint_info = load_diffuser_initial(diffusers_load_config, op)\n\n        # unload current model\n        checkpoint_info = checkpoint_info or select_checkpoint(op=op)\n        if checkpoint_info is None:\n            unload_model_weights(op=op)\n            return\n\n        # handle offline mode\n        if shared.opts.offline_mode:\n            shared.log.info(f'Load {op}: offline=True')\n            diffusers_load_config[\"local_files_only\"] = True\n            os.environ['HF_HUB_OFFLINE'] = '1'\n        else:\n            os.environ.pop('HF_HUB_OFFLINE', None)\n            os.unsetenv('HF_HUB_OFFLINE')\n\n        # detect pipeline\n        pipeline, model_type = sd_detect.detect_pipeline(checkpoint_info.path, op)\n        set_huggingface_options()\n\n        # preload vae so it can be used as param\n        vae = None\n        sd_vae.loaded_vae_file = None\n        if model_type is None:\n            shared.log.error(f'Load {op}: pipeline={shared.opts.diffusers_pipeline} not detected')\n            return\n        vae_file = None\n        if model_type.startswith('Stable Diffusion') and (op == 'model' or op == 'refiner'): # preload vae for sd models\n            vae_file, vae_source = sd_vae.resolve_vae(checkpoint_info.filename)\n            vae = sd_vae.load_vae_diffusers(checkpoint_info.path, vae_file, vae_source)\n            if vae is not None:\n                diffusers_load_config[\"vae\"] = vae\n                timer.load.record(\"vae\")\n\n        # load with custom loader\n        if sd_model is None and not handled:\n            sd_model, handled = load_diffuser_force(model_type, checkpoint_info, diffusers_load_config, op)\n            if sd_model is not None and not sd_model:\n                shared.log.error(f'Load {op}: type=\"{model_type}\" pipeline=\"{pipeline}\" not loaded')\n                return\n\n        # load sdnq-prequantized model\n        if sd_model is None and not handled:\n            if model_type.endswith('SDNQ'):\n                sd_model = load_sdnq_model(checkpoint_info, pipeline, diffusers_load_config, op)\n                model_type = model_type.replace(' SDNQ', '')\n\n        # load from single-file\n        if sd_model is None and not handled:\n            if os.path.isfile(checkpoint_info.path) and checkpoint_info.path.lower().endswith('.safetensors'):\n                sd_model = load_diffuser_file(model_type, pipeline, checkpoint_info, diffusers_load_config, op)\n\n        # load from hf folder-style\n        if sd_model is None and not handled:\n            if os.path.isdir(checkpoint_info.path) or (checkpoint_info.type == 'huggingface') or (checkpoint_info.type == 'transformer') or (checkpoint_info.type == 'reference'):\n                sd_model = load_diffuser_folder(model_type, pipeline, checkpoint_info, diffusers_load_config, op)\n\n        if sd_model is None:\n            shared.log.error(f'Load {op}: name=\"{checkpoint_info.name if checkpoint_info is not None else None}\" not loaded')\n            return\n\n        set_overrides(sd_model, checkpoint_info, model_type)\n        set_defaults(sd_model, checkpoint_info)\n\n        if hasattr(sd_model, \"unet\") and model_type not in ['Stable Cascade']: # others calls load_diffuser again\n            sd_unet.load_unet(sd_model, checkpoint_info.path)\n\n        add_noise_pred_to_diffusers_callback(sd_model)\n\n        timer.load.record(\"load\")\n\n        if op == 'refiner':\n            model_data.sd_refiner = sd_model\n        else:\n            model_data.sd_model = sd_model\n\n        reload_text_encoder(initial=True) # must be before embeddings\n        timer.load.record(\"te\")\n\n        if debug_load:\n            shared.log.trace(f'Model components: {list(get_signature(sd_model).values())}')\n\n        from modules import textual_inversion\n        sd_model.embedding_db = textual_inversion.EmbeddingDatabase()\n        sd_model.embedding_db.add_embedding_dir(shared.opts.embeddings_dir)\n        sd_model.embedding_db.load_textual_inversion_embeddings(force_reload=True)\n        timer.load.record(\"embeddings\")\n\n        from modules import prompt_parser_diffusers\n        prompt_parser_diffusers.insert_parser_highjack(sd_model.__class__.__name__)\n        prompt_parser_diffusers.cache.clear()\n\n        set_diffuser_options(sd_model, vae, op, offload=False)\n        sd_model = model_quant.do_post_load_quant(sd_model, allow=allow_post_quant) # run this before move model so it can be compressed in CPU\n        timer.load.record(\"options\")\n\n        set_diffuser_offload(sd_model, op)\n\n        if op == 'model' and not (os.path.isdir(checkpoint_info.path) or checkpoint_info.type == 'huggingface'):\n            if getattr(shared.sd_model, 'sd_checkpoint_info', None) is not None and vae_file is not None:\n                sd_vae.apply_vae_config(shared.sd_model.sd_checkpoint_info.filename, vae_file, sd_model)\n        if op == 'refiner' and shared.opts.diffusers_move_refiner:\n            shared.log.debug('Moving refiner model to CPU')\n            move_model(sd_model, devices.cpu)\n        else:\n            move_model(sd_model, devices.device)\n        timer.load.record(\"move\")\n\n        if shared.opts.ipex_optimize:\n            sd_model = sd_models_compile.ipex_optimize(sd_model)\n\n        if ('Model' in shared.opts.cuda_compile and shared.opts.cuda_compile_backend != 'none'):\n            sd_model = sd_models_compile.compile_diffusers(sd_model)\n        timer.load.record(\"compile\")\n\n    except Exception as e:\n        shared.log.error(f\"Load {op}: {e}\")\n        errors.display(e, \"Model\")\n\n    if shared.opts.diffusers_offload_mode != 'balanced':\n        devices.torch_gc(force=True, reason='load')\n    if sd_model is not None:\n        script_callbacks.model_loaded_callback(sd_model)\n\n    if debug_load:\n        from modules import modelstats\n        modelstats.analyze()\n\n    shared.log.info(f\"Load {op}: family={shared.sd_model_type} time={timer.load.dct()} native={get_native(sd_model)} memory={memory_stats()}\")\n    shared.opts.save(silent=True)\n\n\nclass DiffusersTaskType(Enum):\n    TEXT_2_IMAGE = 1\n    IMAGE_2_IMAGE = 2\n    INPAINTING = 3\n    INSTRUCT = 4\n    MODULAR = 5\n\n\ndef get_diffusers_task(pipe: diffusers.DiffusionPipeline) -> DiffusersTaskType:\n    cls = pipe.__class__.__name__\n    if cls in i2i_pipes: # special case\n        return DiffusersTaskType.IMAGE_2_IMAGE\n    elif 'ImageToVideo' in cls or cls in ['LTXConditionPipeline', 'StableVideoDiffusionPipeline']: # i2v pipelines\n        return DiffusersTaskType.IMAGE_2_IMAGE\n    elif 'Instruct' in cls:\n        return DiffusersTaskType.INSTRUCT\n    elif 'Modular' in cls:\n        return DiffusersTaskType.MODULAR\n    elif pipe.__class__ in diffusers.pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING.values():\n        return DiffusersTaskType.IMAGE_2_IMAGE\n    elif pipe.__class__ in diffusers.pipelines.auto_pipeline.AUTO_INPAINT_PIPELINES_MAPPING.values():\n        return DiffusersTaskType.INPAINTING\n    else:\n        return DiffusersTaskType.TEXT_2_IMAGE\n\n\ndef switch_pipe(cls: type[diffusers.DiffusionPipeline] | str, pipeline: diffusers.DiffusionPipeline | None = None, force = False, args: dict | None = None):\n    \"\"\"\n    args:\n    - cls: can be pipeline class or a string from custom pipelines\n      for example: diffusers.StableDiffusionPipeline or 'mixture_tiling'\n    - pipeline: source model to be used, if not provided currently loaded model is used\n    - args: any additional components to load into the pipeline\n      for example: { 'vae': None }\n    \"\"\"\n    try:\n        if args is None:\n            args = {}\n        if isinstance(cls, str):\n            shared.log.debug(f'Pipeline switch: custom={cls}')\n            cls_object = diffusers.utils.get_class_from_dynamic_module(cls, module_file='pipeline.py')\n            if not cls_object:\n                log.error(f\"Pipeline switch: Failed to get class for '{cls}'\")\n                if shared.sd_model is not None:\n                    return shared.sd_model\n                raise RuntimeError(\"Pipeline switch: No existing pipeline to fall back to\")\n        else:\n            cls_object = cls\n        if pipeline is None:\n            if shared.sd_model is None:\n                raise RuntimeError(\"Pipeline switch: No existing pipeline to use as default\")\n            pipeline = shared.sd_model\n        new_pipe = None\n        signature = get_signature(cls_object)\n        possible = signature.keys()\n        if not force and isinstance(pipeline, cls_object) and args == {}:\n            return pipeline\n        pipe_dict = {}\n        components_used = []\n        components_skipped = []\n        components_missing = []\n        switch_mode = 'none'\n        if hasattr(pipeline, '_internal_dict'):\n            for item in pipeline._internal_dict.keys(): # pylint: disable=protected-access\n                if item in possible:\n                    pipe_dict[item] = getattr(pipeline, item, None)\n                    components_used.append(item)\n                else:\n                    components_skipped.append(item)\n            for item in possible:\n                if item in ['self', 'args', 'kwargs']: # skip\n                    continue\n                if signature[item].default != inspect._empty: # has default value so we dont have to worry about it # pylint: disable=protected-access\n                    continue\n                if item not in components_used:\n                    shared.log.warning(f'Pipeling switch: missing component={item} type={signature[item].annotation}')\n                    pipe_dict[item] = None # try but not likely to work\n                    components_missing.append(item)\n            new_pipe = cls_object(**pipe_dict)\n            switch_mode = 'auto'\n        elif 'tokenizer_2' in possible and hasattr(pipeline, 'tokenizer_2'):\n            new_pipe = cls_object(\n                vae=pipeline.vae,\n                text_encoder=pipeline.text_encoder,\n                text_encoder_2=pipeline.text_encoder_2,\n                tokenizer=pipeline.tokenizer,\n                tokenizer_2=pipeline.tokenizer_2,\n                unet=pipeline.unet,\n                scheduler=pipeline.scheduler,\n                feature_extractor=getattr(pipeline, 'feature_extractor', None),\n            )\n            move_model(new_pipe, pipeline.device)\n            switch_mode = 'sdxl'\n        elif 'tokenizer' in possible and hasattr(pipeline, 'tokenizer'):\n            new_pipe = cls_object(\n                vae=pipeline.vae,\n                text_encoder=pipeline.text_encoder,\n                tokenizer=pipeline.tokenizer,\n                unet=pipeline.unet,\n                scheduler=pipeline.scheduler,\n                feature_extractor=getattr(pipeline, 'feature_extractor', None),\n                requires_safety_checker=False,\n                safety_checker=None,\n            )\n            move_model(new_pipe, pipeline.device)\n            switch_mode = 'sd'\n        else:\n            shared.log.error(f'Pipeline switch error: {pipeline.__class__.__name__} unrecognized')\n            return pipeline\n        if new_pipe is not None:\n            for k, v in args.items():\n                if k in possible:\n                    setattr(new_pipe, k, v)\n                    components_used.append(k)\n                else:\n                    shared.log.warning(f'Pipeline switch skipping unknown: component={k}')\n                    components_skipped.append(k)\n        if new_pipe is not None:\n            copy_diffuser_options(new_pipe, pipeline)\n            sd_hijack_te.init_hijack(new_pipe)\n            if hasattr(new_pipe, \"watermark\"):\n                new_pipe.watermark = NoWatermark()\n            if switch_mode == 'auto':\n                shared.log.debug(f'Pipeline switch: from={pipeline.__class__.__name__} to={new_pipe.__class__.__name__} components={components_used} skipped={components_skipped} missing={components_missing}')\n            else:\n                shared.log.debug(f'Pipeline switch: from={pipeline.__class__.__name__} to={new_pipe.__class__.__name__} mode={switch_mode}')\n            return new_pipe\n        else:\n            shared.log.error(f'Pipeline switch error: from={pipeline.__class__.__name__} to={cls_object.__name__} empty pipeline')\n    except Exception as e:\n        shared.log.error(f'Pipeline switch error: from={pipeline.__class__.__name__} to={cls if isinstance(cls, str) else cls.__name__} {e}')\n        errors.display(e, 'Pipeline switch')\n    return pipeline\n\n\ndef clean_diffuser_pipe(pipe):\n    if pipe is not None and shared.sd_model_type == 'sdxl' and hasattr(pipe, 'config') and 'requires_aesthetics_score' in pipe.config and hasattr(pipe, '_internal_dict'):\n        debug_process(f'Pipeline clean: {pipe.__class__.__name__}')\n        # diffusers adds requires_aesthetics_score with img2img and complains if requires_aesthetics_score exist in txt2img\n        internal_dict = dict(pipe._internal_dict) # pylint: disable=protected-access\n        internal_dict.pop('requires_aesthetics_score', None)\n        del pipe._internal_dict\n        pipe.register_to_config(**internal_dict)\n\n\ndef copy_diffuser_options(new_pipe, orig_pipe):\n    new_pipe.sd_checkpoint_info = getattr(orig_pipe, 'sd_checkpoint_info', None)\n    new_pipe.sd_model_checkpoint = getattr(orig_pipe, 'sd_model_checkpoint', None)\n    new_pipe.embedding_db = getattr(orig_pipe, 'embedding_db', None)\n    new_pipe.loaded_loras = getattr(orig_pipe, 'loaded_loras', {})\n    new_pipe.sd_model_hash = getattr(orig_pipe, 'sd_model_hash', None)\n    new_pipe.has_accelerate = getattr(orig_pipe, 'has_accelerate', False)\n    new_pipe.current_attn_name = getattr(orig_pipe, 'current_attn_name', None)\n    new_pipe.default_scheduler = getattr(orig_pipe, 'default_scheduler', None)\n    new_pipe.image_encoder = getattr(orig_pipe, 'image_encoder', None)\n    new_pipe.feature_extractor = getattr(orig_pipe, 'feature_extractor', None)\n    new_pipe.mask_processor = getattr(orig_pipe, 'mask_processor', None)\n    new_pipe.restore_pipeline = getattr(orig_pipe, 'restore_pipeline', None)\n    new_pipe.is_sdxl = getattr(orig_pipe, 'is_sdxl', False) # a1111 compatibility item\n    new_pipe.is_sd2 = getattr(orig_pipe, 'is_sd2', False)\n    new_pipe.is_sd1 = getattr(orig_pipe, 'is_sd1', True)\n    add_noise_pred_to_diffusers_callback(new_pipe)\n    if getattr(new_pipe, 'task_args', None) is None:\n        new_pipe.task_args = {}\n        new_pipe.task_args.update(getattr(orig_pipe, 'task_args', {}))\n    if new_pipe.has_accelerate:\n        set_accelerate(new_pipe)\n\n\ndef backup_pipe_components(pipe):\n    if pipe is None:\n        return {}\n    return {\n        'sd_checkpoint_info': getattr(pipe, \"sd_checkpoint_info\", None),\n        'sd_model_checkpoint': getattr(pipe, \"sd_model_checkpoint\", None),\n        'embedding_db': getattr(pipe, \"embedding_db\", None),\n        'loaded_loras': getattr(pipe, \"loaded_loras\", {}),\n        'sd_model_hash': getattr(pipe, \"sd_model_hash\", None),\n        'has_accelerate': getattr(pipe, \"has_accelerate\", None),\n        'current_attn_name': getattr(pipe, \"current_attn_name\", None),\n        'default_scheduler': getattr(pipe, \"default_scheduler\", None),\n        'image_encoder': getattr(pipe, \"image_encoder\", None),\n        'feature_extractor': getattr(pipe, \"feature_extractor\", None),\n        'mask_processor': getattr(pipe, \"mask_processor\", None),\n        'restore_pipeline': getattr(pipe, \"restore_pipeline\", None),\n        'task_args': getattr(pipe, \"task_args\", None),\n    }\n\n\ndef restore_pipe_components(pipe, components):\n    if pipe is None or components is None:\n        return\n    pipe.sd_checkpoint_info = components['sd_checkpoint_info']\n    pipe.sd_model_checkpoint = components['sd_model_checkpoint']\n    pipe.embedding_db = components['embedding_db']\n    pipe.loaded_loras = components['loaded_loras'] if components['loaded_loras'] is not None else {}\n    pipe.sd_model_hash = components['sd_model_hash']\n    pipe.has_accelerate = components['has_accelerate']\n    pipe.current_attn_name = components['current_attn_name']\n    pipe.default_scheduler = components['default_scheduler']\n\n    if components['image_encoder'] is not None:\n        pipe.image_encoder = components['image_encoder']\n    if components['feature_extractor'] is not None:\n        pipe.feature_extractor = components['feature_extractor']\n    if components['mask_processor'] is not None:\n        pipe.mask_processor = components['mask_processor']\n    if components['restore_pipeline'] is not None:\n        pipe.restore_pipeline = components['restore_pipeline']\n    if components['task_args'] is not None:\n        pipe.task_args = components['task_args']\n\n    if pipe.__class__.__name__ in ['FluxPipeline', 'StableDiffusion3Pipeline']:\n        pipe.register_modules(image_encoder = components['image_encoder'])\n        pipe.register_modules(feature_extractor = components['feature_extractor'])\n\n\ndef set_diffuser_pipe(pipe, new_pipe_type):\n    has_errors = False\n    if new_pipe_type == DiffusersTaskType.TEXT_2_IMAGE:\n        clean_diffuser_pipe(pipe)\n\n    if hasattr(pipe, 'no_task_switch'):\n        del pipe.no_task_switch\n        return pipe\n    if get_diffusers_task(pipe) == new_pipe_type:\n        return pipe\n\n    if get_diffusers_task(pipe) == DiffusersTaskType.MODULAR:\n        return pipe\n\n    # skip specific pipelines\n    cls = pipe.__class__.__name__\n    if cls in pipe_switch_task_exclude:\n        return pipe\n    if 'Video' in cls:\n        return pipe\n    if 'Onnx' in cls:\n        return pipe\n\n    # in some cases we want to reset the pipeline to parent as they dont have their own variants\n    if (new_pipe_type == DiffusersTaskType.IMAGE_2_IMAGE) or (new_pipe_type == DiffusersTaskType.INPAINTING):\n        if cls == 'StableDiffusionPAGPipeline':\n            pipe = switch_pipe(diffusers.StableDiffusionPipeline, pipe)\n        if cls == 'StableDiffusionXLPAGPipeline':\n            pipe = switch_pipe(diffusers.StableDiffusionXLPipeline, pipe)\n\n    new_pipe = None\n    components_backup = backup_pipe_components(pipe)\n\n    if hasattr(pipe, 'config'): # real pipeline which can be auto-switched\n        try:\n            if new_pipe_type == DiffusersTaskType.TEXT_2_IMAGE:\n                new_pipe = diffusers.AutoPipelineForText2Image.from_pipe(pipe)\n            elif new_pipe_type == DiffusersTaskType.IMAGE_2_IMAGE:\n                new_pipe = diffusers.AutoPipelineForImage2Image.from_pipe(pipe)\n            elif new_pipe_type == DiffusersTaskType.INPAINTING:\n                new_pipe = diffusers.AutoPipelineForInpainting.from_pipe(pipe)\n            else:\n                shared.log.warning(f'Pipeline class change failed: type={new_pipe_type} pipeline={cls}')\n                return pipe\n        except Exception as e: # pylint: disable=unused-variable\n            fn = f'{sys._getframe(2).f_code.co_name}:{sys._getframe(1).f_code.co_name}' # pylint: disable=protected-access\n            shared.log.trace(f\"Pipeline class change requested: target={new_pipe_type} fn={fn}\") # pylint: disable=protected-access\n            shared.log.warning(f'Pipeline class change failed: type={new_pipe_type} pipeline={cls} {e}')\n            has_errors = True\n    if not hasattr(pipe, 'config') or has_errors:\n        try: # maybe a wrapper pipeline so just change the class\n            if new_pipe_type == DiffusersTaskType.TEXT_2_IMAGE:\n                pipe.__class__ = diffusers.pipelines.auto_pipeline._get_task_class(diffusers.pipelines.auto_pipeline.AUTO_TEXT2IMAGE_PIPELINES_MAPPING, cls) # pylint: disable=protected-access\n                new_pipe = pipe\n            elif new_pipe_type == DiffusersTaskType.IMAGE_2_IMAGE:\n                pipe.__class__ = diffusers.pipelines.auto_pipeline._get_task_class(diffusers.pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING, cls) # pylint: disable=protected-access\n                new_pipe = pipe\n            elif new_pipe_type == DiffusersTaskType.INPAINTING:\n                pipe.__class__ = diffusers.pipelines.auto_pipeline._get_task_class(diffusers.pipelines.auto_pipeline.AUTO_INPAINT_PIPELINES_MAPPING, cls) # pylint: disable=protected-access\n                new_pipe = pipe\n            else:\n                shared.log.error(f'Pipeline class set failed: type={new_pipe_type} pipeline={cls}')\n                return pipe\n        except Exception as e: # pylint: disable=unused-variable\n            shared.log.warning(f'Pipeline class set failed: type={new_pipe_type} pipeline={cls} {e}')\n            has_errors = True\n            return pipe\n\n    if new_pipe is None:\n        return pipe\n\n    restore_pipe_components(new_pipe, components_backup)\n    components_backup = None # free memory\n\n    new_pipe.is_sdxl = getattr(pipe, 'is_sdxl', False) # a1111 compatibility item\n    new_pipe.is_sd2 = getattr(pipe, 'is_sd2', False)\n    new_pipe.is_sd1 = getattr(pipe, 'is_sd1', True)\n    if hasattr(new_pipe, 'watermark'):\n        new_pipe.watermark = NoWatermark()\n    add_noise_pred_to_diffusers_callback(new_pipe)\n\n    if hasattr(new_pipe, 'pipe'): # also handle nested pipelines\n        new_pipe.pipe = set_diffuser_pipe(new_pipe.pipe, new_pipe_type)\n        add_noise_pred_to_diffusers_callback(new_pipe.pipe)\n\n    fn = f'{sys._getframe(2).f_code.co_name}:{sys._getframe(1).f_code.co_name}' # pylint: disable=protected-access\n    shared.log.debug(f\"Pipeline class change: original={cls} target={new_pipe.__class__.__name__} device={pipe.device} fn={fn}\") # pylint: disable=protected-access\n\n    if shared.opts.diffusers_offload_mode == 'none':\n        move_model(new_pipe, pipe.device)\n    else:\n        set_diffuser_offload(new_pipe, op='model')\n\n    pipe = new_pipe\n    return pipe\n\n\ndef add_noise_pred_to_diffusers_callback(pipe):\n    if not hasattr(pipe, \"_callback_tensor_inputs\"):\n        return pipe\n    if pipe.__class__.__name__.startswith(\"Anima\"):\n        return pipe\n    if pipe.__class__.__name__.startswith(\"StableCascade\") and (\"predicted_image_embedding\" not in pipe._callback_tensor_inputs): # pylint: disable=protected-access\n        pipe.prior_pipe._callback_tensor_inputs.append(\"predicted_image_embedding\") # pylint: disable=protected-access\n    elif \"noise_pred\" not in pipe._callback_tensor_inputs: # pylint: disable=protected-access\n        if pipe.__class__.__name__.startswith(\"StableDiffusion\"):\n            pipe._callback_tensor_inputs.append(\"noise_pred\") # pylint: disable=protected-access\n        elif hasattr(pipe, \"scheduler\") and \"flow\" in pipe.scheduler.__class__.__name__.lower():\n            pipe._callback_tensor_inputs.append(\"noise_pred\") # pylint: disable=protected-access\n        elif hasattr(pipe, \"scheduler\") and hasattr(pipe.scheduler, \"config\") and (getattr(pipe.scheduler.config, \"prediction_type\", \"none\") == \"flow_prediction\"):\n            pipe._callback_tensor_inputs.append(\"noise_pred\") # pylint: disable=protected-access\n        elif hasattr(pipe, \"default_scheduler\") and (\"flow\" in pipe.default_scheduler.__class__.__name__.lower()):\n            pipe._callback_tensor_inputs.append(\"noise_pred\") # pylint: disable=protected-access\n        elif hasattr(pipe, \"default_scheduler\") and hasattr(pipe.default_scheduler, \"config\") and (getattr(pipe.default_scheduler.config, \"prediction_type\", \"none\") == \"flow_prediction\"):\n            pipe._callback_tensor_inputs.append(\"noise_pred\") # pylint: disable=protected-access\n    return pipe\n\n\ndef get_native(pipe: diffusers.DiffusionPipeline):\n    if hasattr(pipe, \"vae\") and hasattr(pipe.vae.config, \"sample_size\"):\n        size = pipe.vae.config.sample_size # Stable Diffusion\n    elif hasattr(pipe, \"movq\") and hasattr(pipe.movq.config, \"sample_size\"):\n        size = pipe.movq.config.sample_size # Kandinsky\n    elif hasattr(pipe, \"unet\") and hasattr(pipe.unet.config, \"sample_size\"):\n        size = pipe.unet.config.sample_size\n    else:\n        size = 0\n    return size\n\n\ndef reload_text_encoder(initial=False):\n    if initial and (shared.opts.sd_text_encoder is None or shared.opts.sd_text_encoder == 'Default'):\n        return # dont unload\n    signature = get_signature(shared.sd_model)\n    t5 = [k for k, v in signature.items() if 'T5EncoderModel' in str(v)]\n    if hasattr(shared.sd_model, 'text_encoder') and 'vit' in shared.opts.sd_text_encoder.lower():\n        from modules.model_te import set_clip\n        set_clip(pipe=shared.sd_model)\n    elif len(t5) > 0:\n        from modules.model_te import set_t5\n        shared.log.debug(f'Load module: type=t5 path=\"{shared.opts.sd_text_encoder}\" module=\"{t5[0]}\"')\n        set_t5(pipe=shared.sd_model, module=t5[0], t5=shared.opts.sd_text_encoder, cache_dir=shared.opts.diffusers_dir)\n    elif hasattr(shared.sd_model, 'text_encoder_3'):\n        from modules.model_te import set_t5\n        shared.log.debug(f'Load module: type=t5 path=\"{shared.opts.sd_text_encoder}\" module=\"text_encoder_3\"')\n        set_t5(pipe=shared.sd_model, module='text_encoder_3', t5=shared.opts.sd_text_encoder, cache_dir=shared.opts.diffusers_dir)\n    clear_caches(full=True)\n    apply_balanced_offload(shared.sd_model)\n\n\ndef reload_model_weights(sd_model=None, info=None, op='model', force=False, revision=None):\n    checkpoint_info = info or select_checkpoint(op=op) # are we selecting model or dictionary\n    if checkpoint_info is None:\n        unload_model_weights(op=op)\n        return None\n    jobid = shared.state.begin('Load model')\n    if sd_model is None:\n        sd_model = model_data.sd_model if op == 'model' or op == 'dict' else model_data.sd_refiner\n    if sd_model is None:  # previous model load failed\n        current_checkpoint_info = None\n    else:\n        current_checkpoint_info = getattr(sd_model, 'sd_checkpoint_info', None)\n        if current_checkpoint_info is not None and checkpoint_info is not None and current_checkpoint_info.filename == checkpoint_info.filename and not force:\n            shared.state.end(jobid)\n            return None\n        else:\n            move_model(sd_model, devices.cpu)\n        unload_model_weights(op=op)\n        sd_model = None\n    timer.load = timer.Timer()\n    # TODO model load: implement model in-memory caching\n    timer.load.record(\"config\")\n    if sd_model is None or force:\n        sd_model = None\n        load_diffuser(checkpoint_info, op=op, revision=revision)\n        shared.state.end(jobid)\n        if op == 'model':\n            shared.opts.data[\"sd_model_checkpoint\"] = checkpoint_info.title\n            return model_data.sd_model\n        else:\n            shared.opts.data[\"sd_model_refiner\"] = checkpoint_info.title\n            return model_data.sd_refiner\n    shared.state.end(jobid)\n    return None # should not be here\n\n\ndef clear_caches(full:bool=False):\n    from modules import prompt_parser_diffusers, memstats, sd_offload\n    from modules.lora import lora_common, lora_load\n    prompt_parser_diffusers.cache.clear()\n    memstats.reset_stats()\n    lora_common.loaded_networks.clear()\n    lora_common.previously_loaded_networks.clear()\n    lora_load.lora_cache.clear()\n    if full:\n        shared.log.debug('Cache clear')\n        sd_offload.offload_hook_instance = None\n\n\ndef unload_model_weights(op='model'):\n    fn = f'{sys._getframe(2).f_code.co_name}:{sys._getframe(1).f_code.co_name}' # pylint: disable=protected-access\n    clear_caches(full=True)\n    if shared.compiled_model_state is not None:\n        shared.compiled_model_state.compiled_cache.clear()\n        shared.compiled_model_state.req_cache.clear()\n        shared.compiled_model_state.partitioned_modules.clear()\n    if (op == 'model' or op == 'dict') and model_data.sd_model:\n        shared.log.debug(f'Current {op}: {memory_stats()}')\n        if not ('Model' in shared.opts.cuda_compile and shared.opts.cuda_compile_backend == \"openvino_fx\"):\n            disable_offload(model_data.sd_model)\n            move_model(model_data.sd_model, 'meta')\n        model_data.sd_model = None\n        devices.torch_gc(force=True, reason='unload')\n        shared.log.debug(f'Unload {op}: {memory_stats()} fn={fn}')\n    elif (op == 'refiner') and model_data.sd_refiner:\n        shared.log.debug(f'Current {op}: {memory_stats()}')\n        disable_offload(model_data.sd_refiner)\n        move_model(model_data.sd_refiner, 'meta')\n        model_data.sd_refiner = None\n        devices.torch_gc(force=True, reason='unload')\n        shared.log.debug(f'Unload {op}: {memory_stats()}  fn={fn}')\n\n\ndef hf_auth_check(checkpoint_info, force:bool=False):\n    if shared.opts.offline_mode:\n        shared.log.info('Offline mode: skipping auth check')\n        return False\n    login = None\n    if not force:\n        try:\n            if (checkpoint_info.path.endswith('.safetensors') and os.path.isfile(checkpoint_info.path)): # skip check for single-file safetensors models\n                return True\n            if (os.path.exists(checkpoint_info.path) and os.path.isdir(checkpoint_info.path) and os.path.isfile(os.path.join(checkpoint_info.path, 'model_index.json'))): # skip check for local diffusers folders\n                return True\n        except Exception:\n            pass\n    repo_id = path_to_repo(checkpoint_info)\n    try:\n        login = modelloader.hf_login()\n        return hf.auth_check(repo_id)\n    except Exception as e:\n        shared.log.error(f'Auth: repo=\"{repo_id}\" login={login} {e}')\n        return False\n\n\ndef save_model(name: str, path: str = None, shard: str = None, overwrite: bool = False):\n    if (name is None) or len(name.strip()) == 0:\n        shared.log.error('Save model: invalid model name')\n        return 'Invalid model name'\n    if not shared.sd_loaded:\n        shared.log.error('Save model: model not loaded')\n        return 'Model not loaded'\n    from modules.sdnq import save_sdnq_model\n    if path is None:\n        path = shared.opts.diffusers_dir\n    model_name = os.path.join(path.strip(), name.strip())\n    if os.path.exists(model_name) and not overwrite:\n        shared.log.error(f'Save model: path=\"{model_name}\" exists')\n        return f'Path exists: {model_name}'\n    try:\n        t0 = time.time()\n        save_sdnq_model(\n            model=shared.sd_model,\n            model_path=model_name,\n            max_shard_size=shard,\n            is_pipeline=True,\n        )\n        t1 = time.time()\n        shared.log.info(f'Save model: path=\"{model_name}\" cls={shared.sd_model.__class__.__name__} time={t1 - t0:.2f}')\n        return f'Saved: {model_name}'\n    except Exception as e:\n        shared.log.error(f'Save model: path=\"{model_name}\" {e}')\n        errors.display(e, 'Save model')\n        return f'Error: {e}'\n"
  },
  {
    "path": "modules/sd_models_compile.py",
    "content": "import time\nimport logging\nimport torch\nfrom modules import shared, devices, sd_models, errors\nfrom installer import setup_logging\n\n\n#Used by OpenVINO, can be used with TensorRT or Olive\nclass CompiledModelState:\n    def __init__(self):\n        self.is_compiled = False\n        self.model_hash_str = \"\"\n        self.first_pass = True\n        self.first_pass_refiner = True\n        self.first_pass_vae = True\n        self.height = 512\n        self.width = 512\n        self.batch_size = 1\n        self.partition_id = 0\n        self.cn_model = []\n        self.lora_model = []\n        self.compiled_cache = {}\n        self.req_cache = {}\n        self.partitioned_modules = {}\n\n\ndeepcache_worker = None\n\n\ndef ipex_optimize(sd_model, apply_to_components=True, op=\"Model\"):\n    try:\n        t0 = time.time()\n        import intel_extension_for_pytorch as ipex # pylint: disable=import-error, unused-import\n\n        def ipex_optimize_model(model, op=None, sd_model=None): # pylint: disable=unused-argument\n            model.eval()\n            model.training = False\n            if model.device.type != \"meta\":\n                return_device = model.device\n                model = ipex.optimize(model.to(devices.device),\n                    dtype=devices.dtype,\n                    inplace=True,\n                    weights_prepack=False\n                ).to(return_device) # pylint: disable=attribute-defined-outside-init\n            else:\n                model = ipex.optimize(model,\n                    dtype=devices.dtype,\n                    inplace=True,\n                    weights_prepack=False\n                ) # pylint: disable=attribute-defined-outside-init\n            devices.torch_gc()\n            return model\n\n        if apply_to_components:\n            sd_model = sd_models.apply_function_to_model(sd_model, ipex_optimize_model, shared.opts.ipex_optimize, op=\"ipex\")\n        else:\n            sd_model = ipex_optimize_model(sd_model, op=op)\n\n        t1 = time.time()\n        shared.log.info(f\"{op} IPEX Optimize: time={t1-t0:.2f}\")\n    except Exception as e:\n        shared.log.warning(f\"{op} IPEX Optimize: error: {e}\")\n    return sd_model\n\n\ndef optimize_openvino(sd_model, clear_cache=True):\n    try:\n        from modules.intel.openvino import openvino_fx # pylint: disable=unused-import\n        if clear_cache and shared.compiled_model_state is not None:\n            shared.compiled_model_state.compiled_cache.clear()\n            shared.compiled_model_state.req_cache.clear()\n            shared.compiled_model_state.partitioned_modules.clear()\n        if clear_cache or shared.compiled_model_state is None:\n            shared.compiled_model_state = CompiledModelState()\n            shared.compiled_model_state.is_compiled = True\n            shared.compiled_model_state.first_pass = 'precompile' not in shared.opts.cuda_compile_options\n            shared.compiled_model_state.first_pass_vae = 'precompile' not in shared.opts.cuda_compile_options\n            shared.compiled_model_state.first_pass_refiner = 'precompile' not in shared.opts.cuda_compile_options\n        sd_models.set_accelerate(sd_model)\n    except Exception as e:\n        shared.log.warning(f\"Model compile: task=OpenVINO: {e}\")\n    return sd_model\n\n\ndef compile_onediff(sd_model):\n    try:\n        from onediff.infer_compiler import oneflow_compile\n\n    except Exception as e:\n        shared.log.warning(f\"Model compile: task=onediff {e}\")\n        return sd_model\n\n    try:\n        t0 = time.time()\n        # For some reason compiling the text_encoder, when it is used by\n        # the 'compel' package which sdnext uses, it becomes 100 times\n        # slower as if it is recompiling every time.\n        #sd_model.text_encoder = oneflow_compile(sd_model.text_encoder)\n        #if hasattr(sd_model, 'text_endcoder_2'):\n        #    sd_model.text_encoder_2 = oneflow_compile(sd_model.text_encoder_2)\n        sd_model.unet = oneflow_compile(sd_model.unet)\n        sd_model.vae.encoder = oneflow_compile(sd_model.vae.encoder)\n        sd_model.vae.decoder = oneflow_compile(sd_model.vae.decoder)\n        # How are Loras, Adaptors, and other things compiled\n\n        # DW: I'm unclear whether this is also a problem with onediff\n        # as it was for sfast.\n        setup_logging() # compile messes with logging so reset is needed\n        if 'precompile' in shared.opts.cuda_compile_options:\n            shared.log.debug(\"Model compile: task=onediff precompile\")\n            sd_model(\"dummy prompt\")\n        t1 = time.time()\n        shared.log.info(f\"Model compile: task=onediff time={t1-t0:.2f}\")\n    except Exception as e:\n        shared.log.info(f\"Model compile: task=onediff {e}\")\n    return sd_model\n\n\ndef compile_stablefast(sd_model):\n    try:\n        import sfast.compilers.stable_diffusion_pipeline_compiler as sf\n    except Exception as e:\n        shared.log.warning(f'Model compile: task=stablefast: {e}')\n        return sd_model\n    config = sf.CompilationConfig.Default()\n    try:\n        import xformers # pylint: disable=unused-import\n        config.enable_xformers = True\n    except Exception:\n        pass\n    try:\n        import triton # pylint: disable=unused-import\n        config.enable_triton = True\n    except Exception:\n        pass\n    import warnings\n    warnings.filterwarnings(\"ignore\", category=torch.jit.TracerWarning)\n    config.enable_cuda_graph = 'fullgraph' in shared.opts.cuda_compile_options\n    config.enable_jit_freeze = shared.opts.diffusers_eval\n    config.memory_format = torch.channels_last if shared.opts.opt_channelslast else torch.contiguous_format\n    # config.trace_scheduler = False\n    # config.enable_cnn_optimization\n    # config.prefer_lowp_gemm\n    try:\n        t0 = time.time()\n        sd_model = sf.compile(sd_model, config)\n        sd_model.sfast = True\n        setup_logging() # compile messes with logging so reset is needed\n        if 'precompile' in shared.opts.cuda_compile_options:\n            shared.log.debug(\"Model compile: task=stablefast precompile\")\n            sd_model(\"dummy prompt\")\n        t1 = time.time()\n        shared.log.info(f\"Model compile: task=stablefast config={config.__dict__} time={t1-t0:.2f}\")\n    except Exception as e:\n        shared.log.info(f\"Model compile: task=stablefast {e}\")\n    return sd_model\n\n\ndef compile_torch(sd_model, apply_to_components=True, op=\"Model\"):\n    try:\n        t0 = time.time()\n        import torch._dynamo # pylint: disable=unused-import,redefined-outer-name\n        torch._dynamo.reset() # pylint: disable=protected-access\n        shared.log.debug(f\"{op} compile: task=torch backends={torch._dynamo.list_backends()}\") # pylint: disable=protected-access\n\n        def torch_compile_model(model, op=None, sd_model=None): # pylint: disable=unused-argument\n            if hasattr(model, 'compile_repeated_blocks') and 'repeated' in shared.opts.cuda_compile_options:\n                model.compile_repeated_blocks(\n                    mode=shared.opts.cuda_compile_mode,\n                    backend=shared.opts.cuda_compile_backend,\n                    fullgraph='fullgraph' in shared.opts.cuda_compile_options,\n                    dynamic='dynamic' in shared.opts.cuda_compile_options,\n                )\n            elif hasattr(model, 'device') and model.device.type != \"meta\":\n                return_device = model.device\n                model = torch.compile(model.to(devices.device),\n                    mode=shared.opts.cuda_compile_mode,\n                    backend=shared.opts.cuda_compile_backend,\n                    fullgraph='fullgraph' in shared.opts.cuda_compile_options,\n                    dynamic='dynamic' in shared.opts.cuda_compile_options,\n                ).to(return_device)\n            else:\n                model = torch.compile(model,\n                    mode=shared.opts.cuda_compile_mode,\n                    backend=shared.opts.cuda_compile_backend,\n                    fullgraph='fullgraph' in shared.opts.cuda_compile_options,\n                    dynamic='dynamic' in shared.opts.cuda_compile_options,\n                )\n            devices.torch_gc()\n            return model\n\n        if shared.opts.cuda_compile_backend == \"openvino_fx\":\n            sd_model = optimize_openvino(sd_model, clear_cache=apply_to_components)\n        elif shared.opts.cuda_compile_backend == \"olive-ai\":\n            if shared.compiled_model_state is None:\n                shared.compiled_model_state = CompiledModelState()\n            return sd_model\n        elif shared.opts.cuda_compile_backend ==  \"migraphx\":\n            import torch_migraphx # pylint: disable=unused-import\n        log_level = logging.WARNING if 'verbose' in shared.opts.cuda_compile_options else logging.CRITICAL # pylint: disable=protected-access\n        if hasattr(torch, '_logging'):\n            torch._logging.set_logs(dynamo=log_level, aot=log_level, inductor=log_level) # pylint: disable=protected-access\n        torch._dynamo.config.verbose = 'verbose' in shared.opts.cuda_compile_options # pylint: disable=protected-access\n        torch._dynamo.config.suppress_errors = 'verbose' not in shared.opts.cuda_compile_options # pylint: disable=protected-access\n\n        try:\n            torch._inductor.config.conv_1x1_as_mm = True # pylint: disable=protected-access\n            torch._inductor.config.coordinate_descent_tuning = True # pylint: disable=protected-access\n            torch._inductor.config.epilogue_fusion = False # pylint: disable=protected-access\n            torch._inductor.config.coordinate_descent_check_all_directions = True # pylint: disable=protected-access\n            torch._inductor.config.use_mixed_mm = True # pylint: disable=protected-access\n            # torch._inductor.config.force_fuse_int_mm_with_mul = True # pylint: disable=protected-access\n        except Exception as e:\n            shared.log.error(f\"{op} compile: torch inductor config error: {e}\")\n\n        if apply_to_components:\n            sd_model = sd_models.apply_function_to_model(sd_model, function=torch_compile_model, options=shared.opts.cuda_compile, op=\"compile\")\n        else:\n            sd_model = torch_compile_model(sd_model)\n\n        setup_logging() # compile messes with logging so reset is needed\n        if apply_to_components and 'precompile' in shared.opts.cuda_compile_options:\n            try:\n                shared.log.debug(f\"{op} compile: task=torch precompile\")\n                sd_model(\"dummy prompt\")\n            except Exception:\n                pass\n        t1 = time.time()\n        shared.log.info(f\"{op} compile: task=torch time={t1-t0:.2f}\")\n    except Exception as e:\n        shared.log.warning(f\"{op} compile: task=torch {e}\")\n        errors.display(e, 'Compile')\n    return sd_model\n\n\ndef check_deepcache(enable: bool):\n    if deepcache_worker is not None:\n        if enable:\n            deepcache_worker.enable()\n        else:\n            deepcache_worker.disable()\n\n\ndef compile_deepcache(sd_model):\n    global deepcache_worker # pylint: disable=global-statement\n    if not hasattr(sd_model, 'unet'):\n        shared.log.warning(f'Model compile: task=deepcache pipeline={sd_model.__class__} not supported')\n        return sd_model\n    try:\n        from DeepCache import DeepCacheSDHelper\n    except Exception as e:\n        shared.log.warning(f'Model compile: task=deepcache {e}')\n        return sd_model\n    t0 = time.time()\n    check_deepcache(False)\n    deepcache_worker = DeepCacheSDHelper(pipe=sd_model)\n    deepcache_worker.set_params(cache_interval=shared.opts.deep_cache_interval, cache_branch_id=0)\n    t1 = time.time()\n    shared.log.info(f\"Model compile: task=deepcache config={deepcache_worker.params} time={t1-t0:.2f}\")\n    # config={'cache_interval': 3, 'cache_layer_id': 0, 'cache_block_id': 0, 'skip_mode': 'uniform'} time=0.00\n    return sd_model\n\n\ndef compile_diffusers(sd_model, apply_to_components=True, op=\"Model\"):\n    if shared.opts.cuda_compile_backend == 'none':\n        shared.log.warning(f'{op} compile enabled but no backend specified')\n        return sd_model\n    shared.log.info(f\"{op} compile: pipeline={sd_model.__class__.__name__} mode={shared.opts.cuda_compile_mode} backend={shared.opts.cuda_compile_backend} options={shared.opts.cuda_compile_options} compile={shared.opts.cuda_compile}\")\n    if shared.opts.cuda_compile_backend == 'onediff':\n        sd_model = compile_onediff(sd_model)\n    elif shared.opts.cuda_compile_backend == 'stable-fast':\n        sd_model = compile_stablefast(sd_model)\n    elif shared.opts.cuda_compile_backend == 'deep-cache':\n        sd_model = compile_deepcache(sd_model)\n    else:\n        check_deepcache(False)\n        sd_model = compile_torch(sd_model, apply_to_components=apply_to_components, op=op)\n    return sd_model\n\n\ndef openvino_recompile_model(p, hires=False, refiner=False): # recompile if a parameter changes # pylint: disable=unused-argument\n    if shared.opts.cuda_compile_backend == \"openvino_fx\" and 'Model' in shared.opts.cuda_compile:\n        compile_height = p.height if not hires and hasattr(p, 'height') else p.hr_upscale_to_y\n        compile_width = p.width if not hires and hasattr(p, 'width') else p.hr_upscale_to_x\n        \"\"\"\n        if shared.compiled_model_state is None:\n            openvino_first_pass = True\n        else:\n            if refiner:\n                openvino_first_pass = shared.compiled_model_state.first_pass_refiner\n            else:\n                openvino_first_pass = shared.compiled_model_state.first_pass\n        if (shared.compiled_model_state is None or\n            (\n            not openvino_first_pass\n            and (\n                    shared.compiled_model_state.height != compile_height\n                    or shared.compiled_model_state.width != compile_width\n                    or shared.compiled_model_state.batch_size != p.batch_size\n                )\n            )):\n            if refiner:\n                shared.log.info(\"OpenVINO: Recompiling refiner\")\n                sd_models.unload_model_weights(op='refiner')\n                sd_models.reload_model_weights(op='refiner')\n            else:\n                shared.log.info(\"OpenVINO: Recompiling base model\")\n                sd_models.unload_model_weights(op='model')\n                sd_models.reload_model_weights(op='model')\n        \"\"\"\n        if shared.compiled_model_state is None:\n            shared.log.warning(\"OpenVINO: Compile Model State is not found, model is not compiled!\")\n        else:\n            shared.compiled_model_state.height = compile_height\n            shared.compiled_model_state.width = compile_width\n            shared.compiled_model_state.batch_size = p.batch_size\n\n\ndef openvino_post_compile(op=\"base\"): # delete unet after OpenVINO compile\n    if shared.opts.cuda_compile_backend == \"openvino_fx\" and 'Model' in shared.opts.cuda_compile:\n        if shared.compiled_model_state.first_pass and op == \"base\":\n            shared.compiled_model_state.first_pass = False\n            if not shared.opts.openvino_disable_memory_cleanup and hasattr(shared.sd_model, \"unet\"):\n                shared.sd_model.unet.apply(sd_models.convert_to_faketensors)\n                devices.torch_gc(force=True)\n        if shared.compiled_model_state.first_pass_refiner and op == \"refiner\":\n            shared.compiled_model_state.first_pass_refiner = False\n            if not shared.opts.openvino_disable_memory_cleanup and hasattr(shared.sd_refiner, \"unet\"):\n                shared.sd_refiner.unet.apply(sd_models.convert_to_faketensors)\n                devices.torch_gc(force=True)\n"
  },
  {
    "path": "modules/sd_models_utils.py",
    "content": "import io\nimport copy\nimport json\nimport inspect\nimport os.path\nfrom rich import progress # pylint: disable=redefined-builtin\nimport torch\nimport safetensors.torch\n\nfrom modules import paths, shared, errors\nfrom modules.sd_checkpoint import CheckpointInfo, select_checkpoint, list_models, checkpoints_list, checkpoint_titles, get_closest_checkpoint_match, model_hash, update_model_hashes, setup_model, write_metadata, read_metadata_from_safetensors # pylint: disable=unused-import\nfrom modules.sd_offload import disable_offload, set_diffuser_offload, apply_balanced_offload, set_accelerate # pylint: disable=unused-import\n\n\nclass NoWatermark:\n    def apply_watermark(self, img):\n        return img\n\n\ndef get_signature(cls):\n    if cls is None or not hasattr(cls, '__init__'):\n        return {}\n    signature = inspect.signature(cls.__init__, follow_wrapped=True)\n    return signature.parameters\n\n\ndef get_call(cls):\n    if cls is None or not hasattr(cls, '__call__'): # noqa: B004\n        return {}\n    signature = inspect.signature(cls.__call__, follow_wrapped=True)\n    return signature.parameters\n\n\ndef path_to_repo(checkpoint_info):\n    if isinstance(checkpoint_info, CheckpointInfo):\n        if os.path.exists(checkpoint_info.path) and 'models--' not in checkpoint_info.path:\n            return checkpoint_info.path # local models\n        repo_id = checkpoint_info.name\n    else:\n        repo_id = checkpoint_info # fallback if fn is used with str param\n    repo_id = repo_id.replace('\\\\', '/')\n    if repo_id.startswith('Diffusers/'):\n        repo_id = repo_id.split('Diffusers/')[-1]\n    if repo_id.startswith('models--'):\n        repo_id = repo_id.split('models--')[-1]\n    repo_id = repo_id.replace('--', '/')\n    if repo_id.count('/') != 1:\n        shared.log.warning(f'Model: repo=\"{repo_id}\" repository not recognized')\n    if '+' in repo_id:\n        repo_id = repo_id.split('+')[0]\n    return repo_id\n\n\ndef convert_to_faketensors(tensor):\n    try:\n        fake_module = torch._subclasses.fake_tensor.FakeTensorMode(allow_non_fake_inputs=True) # pylint: disable=protected-access\n        if hasattr(tensor, \"weight\"):\n            tensor.weight = torch.nn.Parameter(fake_module.from_tensor(tensor.weight))\n        return tensor\n    except Exception:\n        pass\n    return tensor\n\n\ndef read_state_dict(checkpoint_file, map_location=None, what:str='model'): # pylint: disable=unused-argument\n    if not os.path.isfile(checkpoint_file):\n        shared.log.error(f'Load dict: path=\"{checkpoint_file}\" not a file')\n        return None\n    try:\n        pl_sd = None\n        with progress.open(checkpoint_file, 'rb', description=f'[cyan]Load {what}: [yellow]{checkpoint_file}', auto_refresh=True, console=shared.console) as f:\n            _, extension = os.path.splitext(checkpoint_file)\n            if extension.lower() == \".ckpt\" and shared.opts.sd_disable_ckpt:\n                shared.log.warning(f\"Checkpoint loading disabled: {checkpoint_file}\")\n                return None\n            if shared.opts.stream_load:\n                if extension.lower() == \".safetensors\":\n                    buffer = f.read()\n                    pl_sd = safetensors.torch.load(buffer)\n                else:\n                    buffer = io.BytesIO(f.read())\n                    pl_sd = torch.load(buffer, map_location='cpu')\n            else:\n                if extension.lower() == \".safetensors\":\n                    pl_sd = safetensors.torch.load_file(checkpoint_file, device='cpu')\n                else:\n                    pl_sd = torch.load(f, map_location='cpu')\n            sd = get_state_dict_from_checkpoint(pl_sd)\n        del pl_sd\n    except Exception as e:\n        errors.display(e, f'Load model: {checkpoint_file}')\n        sd = None\n    return sd\n\n\ndef get_state_dict_from_checkpoint(pl_sd):\n    checkpoint_dict_replacements = {\n        'cond_stage_model.transformer.embeddings.': 'cond_stage_model.transformer.text_model.embeddings.',\n        'cond_stage_model.transformer.encoder.': 'cond_stage_model.transformer.text_model.encoder.',\n        'cond_stage_model.transformer.final_layer_norm.': 'cond_stage_model.transformer.text_model.final_layer_norm.',\n    }\n\n    def transform_checkpoint_dict_key(k):\n        for text, replacement in checkpoint_dict_replacements.items():\n            if k.startswith(text):\n                k = replacement + k[len(text):]\n        return k\n\n    pl_sd = pl_sd.pop(\"state_dict\", pl_sd)\n    pl_sd.pop(\"state_dict\", None)\n    sd = {}\n    for k, v in pl_sd.items():\n        new_key = transform_checkpoint_dict_key(k)\n        if new_key is not None:\n            sd[new_key] = v\n    pl_sd.clear()\n    pl_sd.update(sd)\n    return pl_sd\n\n\ndef patch_diffuser_config(sd_model, model_file):\n    def load_config(fn, k):\n        model_file = os.path.splitext(fn)[0]\n        cfg_file = f'{model_file}_{k}.json'\n        try:\n            if os.path.exists(cfg_file):\n                with open(cfg_file, 'r', encoding='utf-8') as f:\n                    return json.load(f)\n            cfg_file = f'{os.path.join(paths.sd_configs_path, os.path.basename(model_file))}_{k}.json'\n            if os.path.exists(cfg_file):\n                with open(cfg_file, 'r', encoding='utf-8') as f:\n                    return json.load(f)\n        except Exception:\n            pass\n        return {}\n\n    if sd_model is None:\n        return sd_model\n    if hasattr(sd_model, 'unet') and hasattr(sd_model.unet, 'config') and 'inpaint' in model_file.lower():\n        sd_model.unet.config.in_channels = 9\n    if not hasattr(sd_model, '_internal_dict'):\n        return sd_model\n    for c in sd_model._internal_dict.keys(): # pylint: disable=protected-access\n        component = getattr(sd_model, c, None)\n        if hasattr(component, 'config'):\n            override = load_config(model_file, c)\n            updated = {}\n            for k, v in override.items():\n                if k.startswith('_'):\n                    continue\n                if v != component.config.get(k, None):\n                    if hasattr(component.config, '__frozen'):\n                        component.config.__frozen = False # pylint: disable=protected-access\n                    component.config[k] = v\n                    updated[k] = v\n    return sd_model\n\n\ndef apply_function_to_model(sd_model, function, options, op=None):\n    if \"Model\" in options:\n        if hasattr(sd_model, 'model') and (hasattr(sd_model.model, 'config') or isinstance(sd_model.model, torch.nn.Module)):\n            sd_model.model = function(sd_model.model, op=\"model\", sd_model=sd_model)\n        if hasattr(sd_model, 'unet') and hasattr(sd_model.unet, 'config'):\n            sd_model.unet = function(sd_model.unet, op=\"unet\", sd_model=sd_model)\n        if hasattr(sd_model, 'transformer') and hasattr(sd_model.transformer, 'config'):\n            sd_model.transformer = function(sd_model.transformer, op=\"transformer\", sd_model=sd_model)\n        if hasattr(sd_model, 'dit') and hasattr(sd_model.dit, 'config'):\n            sd_model.dit = function(sd_model.dit, op=\"dit\", sd_model=sd_model)\n        if hasattr(sd_model, 'transformer_2') and hasattr(sd_model.transformer_2, 'config'):\n            sd_model.transformer_2 = function(sd_model.transformer_2, op=\"transformer_2\", sd_model=sd_model)\n        if hasattr(sd_model, 'transformer_3') and hasattr(sd_model.transformer_3, 'config'):\n            sd_model.transformer_3 = function(sd_model.transformer_3, op=\"transformer_3\", sd_model=sd_model)\n        if hasattr(sd_model, 'decoder_pipe') and hasattr(sd_model, 'decoder'):\n            sd_model.decoder = None\n            sd_model.decoder = sd_model.decoder_pipe.decoder = function(sd_model.decoder_pipe.decoder, op=\"decoder_pipe.decoder\", sd_model=sd_model)\n        if hasattr(sd_model, 'prior_pipe') and hasattr(sd_model.prior_pipe, 'prior'):\n            if op == \"sdnq\" and \"StableCascade\" in sd_model.__class__.__name__: # fixes dtype errors\n                backup_clip_txt_pooled_mapper = copy.deepcopy(sd_model.prior_pipe.prior.clip_txt_pooled_mapper)\n            sd_model.prior_pipe.prior = function(sd_model.prior_pipe.prior, op=\"prior_pipe.prior\", sd_model=sd_model)\n            if op == \"sdnq\" and \"StableCascade\" in sd_model.__class__.__name__:\n                sd_model.prior_pipe.prior.clip_txt_pooled_mapper = backup_clip_txt_pooled_mapper\n    if \"TE\" in options:\n        if hasattr(sd_model, 'text_encoder') and hasattr(sd_model.text_encoder, 'config'):\n            if hasattr(sd_model, 'decoder_pipe') and hasattr(sd_model.decoder_pipe, 'text_encoder') and hasattr(sd_model.decoder_pipe.text_encoder, 'config'):\n                sd_model.decoder_pipe.text_encoder = function(sd_model.decoder_pipe.text_encoder, op=\"decoder_pipe.text_encoder\", sd_model=sd_model)\n            else:\n                sd_model.text_encoder = function(sd_model.text_encoder, op=\"text_encoder\", sd_model=sd_model)\n        if hasattr(sd_model, 'text_encoder_2') and hasattr(sd_model.text_encoder_2, 'config'):\n            sd_model.text_encoder_2 = function(sd_model.text_encoder_2, op=\"text_encoder_2\", sd_model=sd_model)\n        if hasattr(sd_model, 'text_encoder_3') and hasattr(sd_model.text_encoder_3, 'config'):\n            sd_model.text_encoder_3 = function(sd_model.text_encoder_3, op=\"text_encoder_3\", sd_model=sd_model)\n        if hasattr(sd_model, 'text_encoder_4') and hasattr(sd_model.text_encoder_4, 'config'):\n            sd_model.text_encoder_4 = function(sd_model.text_encoder_4, op=\"text_encoder_4\", sd_model=sd_model)\n        if hasattr(sd_model, 'mllm') and hasattr(sd_model.mllm, 'config'):\n            sd_model.mllm = function(sd_model.mllm, op=\"text_encoder_mllm\", sd_model=sd_model)\n        if hasattr(sd_model, 'prior_pipe') and hasattr(sd_model.prior_pipe, 'text_encoder') and hasattr(sd_model.prior_pipe.text_encoder, 'config'):\n            sd_model.prior_pipe.text_encoder = function(sd_model.prior_pipe.text_encoder, op=\"prior_pipe.text_encoder\", sd_model=sd_model)\n    if \"VAE\" in options:\n        if hasattr(sd_model, 'vae') and hasattr(sd_model.vae, 'decode'):\n            if op == \"compile\":\n                sd_model.vae.decode = function(sd_model.vae.decode, op=\"vae_decode\", sd_model=sd_model)\n                sd_model.vae.encode = function(sd_model.vae.encode, op=\"vae_encode\", sd_model=sd_model)\n            else:\n                sd_model.vae = function(sd_model.vae, op=\"vae\", sd_model=sd_model)\n        if hasattr(sd_model, 'movq') and hasattr(sd_model.movq, 'decode'):\n            if op == \"compile\":\n                sd_model.movq.decode = function(sd_model.movq.decode, op=\"movq_decode\", sd_model=sd_model)\n                sd_model.movq.encode = function(sd_model.movq.encode, op=\"movq_encode\", sd_model=sd_model)\n            else:\n                sd_model.movq = function(sd_model.movq, op=\"movq\", sd_model=sd_model)\n        if hasattr(sd_model, 'vqgan') and hasattr(sd_model.vqgan, 'decode'):\n            if op == \"compile\":\n                sd_model.vqgan.decode = function(sd_model.vqgan.decode, op=\"vqgan_decode\", sd_model=sd_model)\n                sd_model.vqgan.encode = function(sd_model.vqgan.encode, op=\"vqgan_encode\", sd_model=sd_model)\n            else:\n                sd_model.vqgan = function(sd_model.vqgan, op=\"vqgan\", sd_model=sd_model)\n            if hasattr(sd_model, 'decoder_pipe') and hasattr(sd_model.decoder_pipe, 'vqgan'):\n                if op == \"compile\":\n                    sd_model.decoder_pipe.vqgan.decode = function(sd_model.decoder_pipe.vqgan.decode, op=\"vqgan_decode\", sd_model=sd_model)\n                    sd_model.decoder_pipe.vqgan.encode = function(sd_model.decoder_pipe.vqgan.encode, op=\"vqgan_encode\", sd_model=sd_model)\n                else:\n                    sd_model.decoder_pipe.vqgan = sd_model.vqgan\n        if hasattr(sd_model, 'image_encoder') and hasattr(sd_model.image_encoder, 'config'):\n            sd_model.image_encoder = function(sd_model.image_encoder, op=\"image_encoder\", sd_model=sd_model)\n\n    return sd_model\n"
  },
  {
    "path": "modules/sd_modules.py",
    "content": "from dataclasses import dataclass\nimport inspect\nimport torch\n\n\n@dataclass\nclass ModuleStats:\n    module: str\n    cls: str\n    params: float\n    size: float\n    quant: str\n    dtype: str\n\n    def __init__(self, module: str, cls: str, params: float, size: float, quant: str, dtype: str):\n        self.module = module\n        self.cls = cls\n        self.params = params\n        self.size = size\n        self.quant = quant\n        self.dtype = dtype\n\n    def __str__(self):\n        return f'module=\"{self.module}\" cls={self.cls} params={self.params:.3f} size={self.size:.3f} quant={self.quant} dtype={self.dtype}'\n\n\ndef get_signature(cls):\n    signature = inspect.signature(cls.__init__, follow_wrapped=True)\n    return signature.parameters\n\n\ndef get_module_stats(name, module):\n    if not isinstance(module, torch.nn.Module):\n        return None\n    try:\n        module_size = sum(p.numel() * p.element_size() for p in module.parameters(recurse=True)) / 1024 / 1024 / 1024\n        param_num = sum(p.numel() for p in module.parameters(recurse=True)) / 1024 / 1024 / 1024\n    except Exception:\n        module_size = 0\n        param_num = 0\n    cls = module.__class__.__name__\n    quant = getattr(module, \"quantization_method\", None)\n    module_stats = ModuleStats(name, cls, param_num, module_size, quant, module.dtype)\n    return module_stats\n\n\ndef get_model_stats(model, exclude=None):\n    # from transformers import Gemma3ForCausalLM\n    modules = []\n\n    if isinstance(model, torch.nn.Module):\n        module_stats = get_module_stats(model.__class__.__name__, model)\n        if module_stats is not None:\n            modules.append(module_stats)\n        return modules\n\n    if hasattr(model, \"_internal_dict\"):\n        modules_names = model._internal_dict.keys() # pylint: disable=protected-access\n    else:\n        modules_names = get_signature(model).keys()\n\n    if modules_names is None or not isinstance(modules_names, list) or len(modules_names) == 0:\n        return modules\n\n    modules_names = [m for m in modules_names if m is not None and m not in exclude and not m.startswith('_')]\n    for module_name in modules_names:\n        module = getattr(model, module_name, None)\n        if module is not None:\n            module_stats = get_module_stats(module_name, module)\n            if module_stats is not None:\n                modules.append(module_stats)\n\n    return modules\n"
  },
  {
    "path": "modules/sd_offload.py",
    "content": "import os\nimport re\nimport sys\nimport time\nimport inspect\nimport torch\nimport accelerate.hooks\nimport accelerate.utils.modeling\nfrom installer import log\nfrom modules import shared, devices, errors, model_quant, sd_models\nfrom modules.timer import process as process_timer\n\n\ndebug = os.environ.get('SD_MOVE_DEBUG', None) is not None\nverbose = os.environ.get('SD_MOVE_VERBOSE', None) is not None\ndebug_move = log.trace if debug else lambda *args, **kwargs: None\noffload_allow_none = ['sd', 'sdxl']\noffload_post = ['h1']\noffload_hook_instance = None\nbalanced_offload_exclude = ['CogView4Pipeline', 'MeissonicPipeline']\nno_split_module_classes = [\n    \"Linear\", \"Conv1d\", \"Conv2d\", \"Conv3d\", \"ConvTranspose1d\", \"ConvTranspose2d\", \"ConvTranspose3d\",\n    \"SDNQLinear\", \"SDNQConv1d\", \"SDNQConv2d\", \"SDNQConv3d\", \"SDNQConvTranspose1d\", \"SDNQConvTranspose2d\", \"SDNQConvTranspose3d\",\n    \"WanTransformerBlock\",\n]\naccelerate_dtype_byte_size = None\nmove_stream = None\n\n\ndef dtype_byte_size(dtype: torch.dtype):\n    try:\n        if dtype in [torch.float8_e4m3fn, torch.float8_e4m3fnuz, torch.float8_e5m2, torch.float8_e5m2fnuz]:\n            dtype = accelerate.utils.modeling.CustomDtype.FP8\n    except Exception: # catch since older torch many not have defined dtypes\n        pass\n    return accelerate_dtype_byte_size(dtype)\n\n\ndef get_signature(cls):\n    signature = inspect.signature(cls.__init__, follow_wrapped=True)\n    return signature.parameters\n\n\ndef disable_offload(sd_model):\n    if not getattr(sd_model, 'has_accelerate', False):\n        return\n    for module_name in get_module_names(sd_model):\n        module = getattr(sd_model, module_name, None)\n        if isinstance(module, torch.nn.Module):\n            network_layer_name = getattr(module, \"network_layer_name\", None)\n            try:\n                module = accelerate.hooks.remove_hook_from_module(module, recurse=True)\n            except Exception as e:\n                shared.log.warning(f'Offload remove hook: module={module_name} {e}')\n            if network_layer_name:\n                module.network_layer_name = network_layer_name\n    sd_model.has_accelerate = False\n\n\ndef set_accelerate(sd_model):\n    def set_accelerate_to_module(model):\n        if hasattr(model, \"pipe\"):\n            set_accelerate_to_module(model.pipe)\n        for module_name in get_module_names(model):\n            component = getattr(model, module_name, None)\n            if isinstance(component, torch.nn.Module):\n                component.has_accelerate = True\n\n    sd_model.has_accelerate = True\n    set_accelerate_to_module(sd_model)\n    if hasattr(sd_model, \"prior_pipe\"):\n        set_accelerate_to_module(sd_model.prior_pipe)\n    if hasattr(sd_model, \"decoder_pipe\"):\n        set_accelerate_to_module(sd_model.decoder_pipe)\n\n\ndef apply_group_offload(sd_model, op:str='model'):\n    offload_dct = {\n        'onload_device': devices.device,\n        'offload_device': devices.cpu,\n        'offload_type': shared.opts.group_offload_type,\n        'num_blocks_per_group': shared.opts.group_offload_blocks,\n        'non_blocking': shared.opts.diffusers_offload_nonblocking,\n        'use_stream': shared.opts.group_offload_stream,\n        'record_stream': shared.opts.group_offload_record,\n        'low_cpu_mem_usage': False,\n    }\n    if shared.opts.group_offload_type == 'block_level':\n        offload_dct['exclude_modules'] = ['vae']\n    shared.log.debug(f'Setting {op}: offload={shared.opts.diffusers_offload_mode} options={offload_dct}')\n    if hasattr(sd_model, \"enable_group_offload\"):\n        sd_model.enable_group_offload(**offload_dct)\n    else:\n        shared.log.warning(f'Setting {op}: offload={shared.opts.diffusers_offload_mode} not supported')\n    set_accelerate(sd_model)\n    return sd_model\n\n\ndef apply_model_offload(sd_model, op:str='model', quiet:bool=False):\n    try:\n        shared.log.quiet(quiet, f'Setting {op}: offload={shared.opts.diffusers_offload_mode} limit={shared.opts.cuda_mem_fraction}')\n        if shared.opts.diffusers_move_base or shared.opts.diffusers_move_unet or shared.opts.diffusers_move_refiner:\n            shared.opts.diffusers_move_base = False\n            shared.opts.diffusers_move_unet = False\n            shared.opts.diffusers_move_refiner = False\n            shared.log.warning(f'Disabling {op} \"Move model to CPU\" since \"Model CPU offload\" is enabled')\n        if not hasattr(sd_model, \"_all_hooks\") or len(sd_model._all_hooks) == 0: # pylint: disable=protected-access\n            sd_model.enable_model_cpu_offload(device=devices.device)\n        else:\n            sd_model.maybe_free_model_hooks()\n        set_accelerate(sd_model)\n    except Exception as e:\n        shared.log.error(f'Setting {op}: offload={shared.opts.diffusers_offload_mode} {e}')\n\n\ndef apply_sequential_offload(sd_model, op:str='model', quiet:bool=False):\n    try:\n        shared.log.quiet(quiet, f'Setting {op}: offload={shared.opts.diffusers_offload_mode} limit={shared.opts.cuda_mem_fraction}')\n        if shared.opts.diffusers_move_base or shared.opts.diffusers_move_unet or shared.opts.diffusers_move_refiner:\n            shared.opts.diffusers_move_base = False\n            shared.opts.diffusers_move_unet = False\n            shared.opts.diffusers_move_refiner = False\n            shared.log.warning(f'Disabling {op} \"Move model to CPU\" since \"Sequential CPU offload\" is enabled')\n        if sd_model.has_accelerate:\n            if op == \"vae\": # reapply sequential offload to vae\n                from accelerate import cpu_offload\n                sd_model.vae.to(devices.cpu)\n                cpu_offload(sd_model.vae, devices.device, offload_buffers=len(sd_model.vae._parameters) > 0) # pylint: disable=protected-access\n            else:\n                pass # do nothing if offload is already applied\n        else:\n            sd_model.enable_sequential_cpu_offload(device=devices.device)\n        set_accelerate(sd_model)\n    except Exception as e:\n        shared.log.error(f'Setting {op}: offload={shared.opts.diffusers_offload_mode} {e}')\n\n\ndef apply_none_offload(sd_model, op:str='model', quiet:bool=False):\n    if shared.sd_model_type not in offload_allow_none:\n        shared.log.warning(f'Setting {op}: offload={shared.opts.diffusers_offload_mode} type={shared.sd_model.__class__.__name__} large model')\n    else:\n        shared.log.quiet(quiet, f'Setting {op}: offload={shared.opts.diffusers_offload_mode} limit={shared.opts.cuda_mem_fraction}')\n    try:\n        sd_model.has_accelerate = False\n        if hasattr(sd_model, 'maybe_free_model_hooks'):\n            sd_model.maybe_free_model_hooks()\n        sd_model = accelerate.hooks.remove_hook_from_module(sd_model, recurse=True)\n    except Exception:\n        pass\n    sd_models.move_model(sd_model, devices.device)\n\n\ndef set_diffuser_offload(sd_model, op:str='model', quiet:bool=False, force:bool=False):\n    global accelerate_dtype_byte_size # pylint: disable=global-statement\n    t0 = time.time()\n    if sd_model is None:\n        shared.log.warning(f'{op} is not loaded')\n        return\n    if not (hasattr(sd_model, \"has_accelerate\") and sd_model.has_accelerate):\n        sd_model.has_accelerate = False\n    if accelerate_dtype_byte_size is None:\n        accelerate_dtype_byte_size = accelerate.utils.modeling.dtype_byte_size\n        accelerate.utils.modeling.dtype_byte_size = dtype_byte_size\n\n    if shared.opts.diffusers_offload_mode == \"none\":\n        apply_none_offload(sd_model, op=op, quiet=quiet)\n\n    if shared.opts.diffusers_offload_mode == \"model\" and hasattr(sd_model, \"enable_model_cpu_offload\"):\n        apply_model_offload(sd_model, op=op, quiet=quiet)\n\n    if shared.opts.diffusers_offload_mode == \"sequential\" and hasattr(sd_model, \"enable_sequential_cpu_offload\"):\n        apply_sequential_offload(sd_model, op=op, quiet=quiet)\n\n    if shared.opts.diffusers_offload_mode == \"group\":\n        sd_model = apply_group_offload(sd_model, op=op)\n\n    if shared.opts.diffusers_offload_mode == \"balanced\":\n        sd_model = apply_balanced_offload(sd_model, force=force)\n\n    process_timer.add('offload', time.time() - t0)\n\n\nclass OffloadHook(accelerate.hooks.ModelHook):\n    def __init__(self, checkpoint_name):\n        if shared.opts.diffusers_offload_max_gpu_memory > 1:\n            shared.opts.diffusers_offload_max_gpu_memory = 0.75\n        if shared.opts.diffusers_offload_max_cpu_memory > 1:\n            shared.opts.diffusers_offload_max_cpu_memory = 0.75\n        self.checkpoint_name = checkpoint_name\n        self.min_watermark = shared.opts.diffusers_offload_min_gpu_memory\n        self.max_watermark = shared.opts.diffusers_offload_max_gpu_memory\n        self.cpu_watermark = shared.opts.diffusers_offload_max_cpu_memory\n        self.offload_always = [m.strip() for m in re.split(';|,| ', shared.opts.diffusers_offload_always) if len(m.strip()) > 2]\n        self.offload_never = [m.strip() for m in re.split(';|,| ', shared.opts.diffusers_offload_never) if len(m.strip()) > 2]\n        self.gpu = int(shared.gpu_memory * shared.opts.diffusers_offload_max_gpu_memory * 1024*1024*1024)\n        self.cpu = int(shared.cpu_memory * shared.opts.diffusers_offload_max_cpu_memory * 1024*1024*1024)\n        self.offload_map = {}\n        self.param_map = {}\n        self.last_pre = None\n        self.last_post = None\n        self.last_cls = None\n        gpu = f'{(shared.gpu_memory * shared.opts.diffusers_offload_min_gpu_memory):.2f}-{(shared.gpu_memory * shared.opts.diffusers_offload_max_gpu_memory):.2f}:{shared.gpu_memory:.2f}'\n        shared.log.info(f'Offload: type=balanced op=init watermark={self.min_watermark}-{self.max_watermark} gpu={gpu} cpu={shared.cpu_memory:.3f} limit={shared.opts.cuda_mem_fraction:.2f} always={self.offload_always} never={self.offload_never} pre={shared.opts.diffusers_offload_pre} streams={shared.opts.diffusers_offload_streams}')\n        self.validate()\n        super().__init__()\n\n    def validate(self):\n        if shared.opts.diffusers_offload_mode != 'balanced':\n            return\n        if shared.opts.diffusers_offload_min_gpu_memory < 0 or shared.opts.diffusers_offload_min_gpu_memory > 1:\n            shared.opts.diffusers_offload_min_gpu_memory = 0.2\n            shared.log.warning(f'Offload: type=balanced op=validate: watermark low={shared.opts.diffusers_offload_min_gpu_memory} invalid value')\n        if shared.opts.diffusers_offload_max_gpu_memory < 0.1 or shared.opts.diffusers_offload_max_gpu_memory > 1:\n            shared.opts.diffusers_offload_max_gpu_memory = 0.7\n            shared.log.warning(f'Offload: type=balanced op=validate: watermark high={shared.opts.diffusers_offload_max_gpu_memory} invalid value')\n        if shared.opts.diffusers_offload_min_gpu_memory > shared.opts.diffusers_offload_max_gpu_memory:\n            shared.opts.diffusers_offload_min_gpu_memory = shared.opts.diffusers_offload_max_gpu_memory\n            shared.log.warning(f'Offload: type=balanced op=validate: watermark low={shared.opts.diffusers_offload_min_gpu_memory} reset')\n        if shared.opts.diffusers_offload_max_gpu_memory * shared.gpu_memory < 4:\n            shared.log.warning(f'Offload: type=balanced op=validate: watermark high={shared.opts.diffusers_offload_max_gpu_memory} low memory')\n\n    def model_size(self):\n        return sum(self.offload_map.values())\n\n    def init_hook(self, module):\n        return module\n\n    def offload_allowed(self, module):\n        if hasattr(module, \"offload_never\"):\n            return False\n        if hasattr(module, 'nets') and any(hasattr(n, \"offload_never\") for n in module.nets):\n            return False\n        if shared.sd_model_type.lower() in [m.lower().strip() for m in re.split(r'[ ,]+', shared.opts.models_not_to_offload)]:\n            return False\n        return True\n\n    @torch.compiler.disable\n    def pre_forward(self, module, *args, **kwargs):\n        _id = id(module)\n\n        do_offload = (self.last_pre != _id) or (module.__class__.__name__ != self.last_cls)\n\n        if do_offload and self.offload_allowed(module): # offload every other module first time when new module starts pre-forward\n            if shared.opts.diffusers_offload_pre:\n                t0 = time.time()\n                debug_move(f'Offload: type=balanced op=pre module={module.__class__.__name__}')\n                for pipe in get_pipe_variants():\n                    for module_name in get_module_names(pipe):\n                        module_instance = getattr(pipe, module_name, None)\n                        module_cls = module_instance.__class__.__name__\n                        if (module_instance is not None) and (_id != id(module_instance)) and (module_cls not in self.offload_never) and (not devices.same_device(module_instance.device, devices.cpu)):\n                            apply_balanced_offload_to_module(module_instance, op='pre')\n                self.last_cls = module.__class__.__name__\n                process_timer.add('offload', time.time() - t0)\n\n        if not devices.same_device(module.device, devices.device): # move-to-device\n            t0 = time.time()\n            device_index = torch.device(devices.device).index\n            if device_index is None:\n                device_index = 0\n            max_memory = { device_index: self.gpu, \"cpu\": self.cpu }\n            device_map = getattr(module, \"balanced_offload_device_map\", None)\n            if (device_map is None) or (max_memory != getattr(module, \"balanced_offload_max_memory\", None)):\n                device_map = accelerate.infer_auto_device_map(module,\n                                                              max_memory=max_memory,\n                                                              no_split_module_classes=no_split_module_classes,\n                                                              verbose=verbose,\n                                                              clean_result=False,\n                                                             )\n            offload_dir = getattr(module, \"offload_dir\", os.path.join(shared.opts.accelerate_offload_path, module.__class__.__name__))\n            if devices.backend == \"directml\":\n                for k, v in device_map.items():\n                    if isinstance(v, int):\n                        device_map[k] = f\"{devices.device.type}:{v}\" # int implies CUDA or XPU device, but it will break DirectML backend so we add type\n            if debug:\n                shared.log.trace(f'Offload: type=balanced op=dispatch map={device_map}')\n            if device_map is not None:\n                skip_keys = getattr(module, \"_skip_keys\", None)\n                module = accelerate.dispatch_model(module,\n                                                   main_device=torch.device(devices.device),\n                                                   device_map=device_map,\n                                                   offload_dir=offload_dir,\n                                                   skip_keys=skip_keys,\n                                                   force_hooks=True,\n                                                  )\n            module._hf_hook.execution_device = torch.device(devices.device) # pylint: disable=protected-access\n            module.balanced_offload_device_map = device_map\n            module.balanced_offload_max_memory = max_memory\n            process_timer.add('onload', time.time() - t0)\n\n        if debug:\n            for _i, pipe in enumerate(get_pipe_variants()):\n                for module_name in get_module_names(pipe):\n                    module_instance = getattr(pipe, module_name, None)\n                    shared.log.trace(f'Offload: type=balanced op=pre:status forward={module.__class__.__name__} module={module_name} class={module_instance.__class__.__name__} pipe={_i} device={module_instance.device} dtype={module_instance.dtype}')\n\n        self.last_pre = _id\n        return args, kwargs\n\n    @torch.compiler.disable\n    def post_forward(self, module, output):\n        if self.last_post != id(module):\n            self.last_post = id(module)\n        if getattr(module, \"offload_post\", False) and (module.device != devices.cpu):\n            apply_balanced_offload_to_module(module, op='post')\n        return output\n\n    def detach_hook(self, module):\n        return module\n\n\ndef get_pipe_variants(pipe=None):\n    if pipe is None:\n        if shared.sd_loaded:\n            pipe = shared.sd_model\n        else:\n            return [pipe]\n    variants = [pipe]\n    if hasattr(pipe, \"pipe\"):\n        variants.append(pipe.pipe)\n    if hasattr(pipe, \"prior_pipe\"):\n        variants.append(pipe.prior_pipe)\n    if hasattr(pipe, \"decoder_pipe\"):\n        variants.append(pipe.decoder_pipe)\n    return variants\n\n\ndef get_module_names(pipe=None, exclude=None):\n    def is_valid(module):\n        if isinstance(getattr(pipe, module, None), torch.nn.ModuleDict):\n            return True\n        if isinstance(getattr(pipe, module, None), torch.nn.ModuleList):\n            return True\n        if isinstance(getattr(pipe, module, None), torch.nn.Module):\n            return True\n        return False\n\n    if exclude is None:\n        exclude = []\n    if pipe is None:\n        if shared.sd_loaded:\n            pipe = shared.sd_model\n        else:\n            return []\n    modules_names = []\n    try:\n        dict_keys = pipe._internal_dict.keys() # pylint: disable=protected-access\n        modules_names.extend(dict_keys)\n    except Exception:\n        pass\n    try:\n        dict_keys = get_signature(pipe).keys()\n        modules_names.extend(dict_keys)\n    except Exception:\n        pass\n    modules_names = [m for m in modules_names if m not in exclude and not m.startswith('_')]\n    modules_names = [m for m in modules_names if is_valid(m)]\n    modules_names = sorted(set(modules_names))\n    return modules_names\n\n\ndef get_module_sizes(pipe=None, exclude=None):\n    if exclude is None:\n        exclude = []\n    modules = {}\n    for module_name in get_module_names(pipe, exclude):\n        module_size = offload_hook_instance.offload_map.get(module_name, None)\n        if module_size is None:\n            module = getattr(pipe, module_name, None)\n            if not isinstance(module, torch.nn.Module):\n                continue\n            try:\n                module_size = sum(p.numel() * p.element_size() for p in module.parameters(recurse=True)) / 1024 / 1024 / 1024\n                param_num = sum(p.numel() for p in module.parameters(recurse=True)) / 1024 / 1024 / 1024\n            except Exception as e:\n                shared.log.error(f'Offload: type=balanced op=calc module={module_name} {e}')\n                module_size = 0\n            offload_hook_instance.offload_map[module_name] = module_size\n            offload_hook_instance.param_map[module_name] = param_num\n        modules[module_name] = module_size\n    modules = sorted(modules.items(), key=lambda x: x[1], reverse=True)\n    return modules\n\n\ndef move_module_to_cpu(module, op='unk', force:bool=False):\n    def do_move(module):\n        if shared.opts.diffusers_offload_streams:\n            global move_stream # pylint: disable=global-statement\n            if move_stream is None:\n                move_stream = torch.cuda.Stream(device=devices.device)\n            with torch.cuda.stream(move_stream):\n                module = module.to(devices.cpu)\n        else:\n            module = module.to(devices.cpu)\n        return module\n\n    try:\n        module_name = getattr(module, \"module_name\", module.__class__.__name__)\n        module_size = offload_hook_instance.offload_map.get(module_name, offload_hook_instance.model_size())\n        used_gpu, used_ram = devices.torch_gc(fast=True)\n        perc_gpu = used_gpu / shared.gpu_memory\n        prev_gpu = used_gpu\n        module_cls = module.__class__.__name__\n        op = f'{op}:skip'\n        if force:\n            op = f'{op}:force'\n            module = do_move(module)\n            used_gpu -= module_size\n        elif module_cls in offload_hook_instance.offload_never:\n            op = f'{op}:never'\n        elif module_cls in offload_hook_instance.offload_always:\n            op = f'{op}:always'\n            module = do_move(module)\n            used_gpu -= module_size\n        elif perc_gpu > shared.opts.diffusers_offload_min_gpu_memory:\n            op = f'{op}:mem'\n            module = do_move(module)\n            used_gpu -= module_size\n        if debug:\n            quant = getattr(module, \"quantization_method\", None)\n            debug_move(f'Offload: type=balanced op={op} gpu={prev_gpu:.3f}:{used_gpu:.3f} perc={perc_gpu:.2f}:{shared.opts.diffusers_offload_min_gpu_memory} ram={used_ram:.3f} current={module.device} dtype={module.dtype} quant={quant} module={module_cls} size={module_size:.3f}')\n    except Exception as e:\n        if 'out of memory' in str(e):\n            devices.torch_gc(fast=True, force=True, reason='oom')\n        elif 'bitsandbytes' in str(e):\n            pass\n        else:\n            shared.log.error(f'Offload: type=balanced op=apply module={getattr(module, \"__name__\", None)} cls={module.__class__ if inspect.isclass(module) else None} {e}')\n        if os.environ.get('SD_MOVE_DEBUG', None):\n            errors.display(e, f'Offload: type=balanced op=apply module={getattr(module, \"__name__\", None)}')\n\n\ndef apply_balanced_offload_to_module(module, op=\"apply\", force:bool=False):\n    module_name = getattr(module, \"module_name\", module.__class__.__name__)\n    network_layer_name = getattr(module, \"network_layer_name\", None)\n    device_map = getattr(module, \"balanced_offload_device_map\", None)\n    max_memory = getattr(module, \"balanced_offload_max_memory\", None)\n    try:\n        module = accelerate.hooks.remove_hook_from_module(module, recurse=True)\n    except Exception as e:\n        shared.log.warning(f'Offload remove hook: module={module_name} {e}')\n    move_module_to_cpu(module, op=op, force=force)\n    try:\n        module = accelerate.hooks.add_hook_to_module(module, offload_hook_instance, append=True)\n    except Exception as e:\n        shared.log.warning(f'Offload add hook: module={module_name} {e}')\n    module._hf_hook.execution_device = torch.device(devices.device) # pylint: disable=protected-access\n    if network_layer_name:\n        module.network_layer_name = network_layer_name\n    if device_map and max_memory:\n        module.balanced_offload_device_map = device_map\n        module.balanced_offload_max_memory = max_memory\n    module.offload_post = shared.sd_model_type in offload_post and module_name.startswith(\"text_encoder\")\n    if shared.opts.layerwise_quantization or getattr(module, 'quantization_method', None) == 'LayerWise':\n        model_quant.apply_layerwise(module, quiet=True) # need to reapply since hooks were removed/readded\n    devices.torch_gc(fast=True, force=True, reason='offload')\n\n\ndef report_model_stats(module_name, module):\n    try:\n        size = offload_hook_instance.offload_map.get(module_name, 0)\n        quant = getattr(module, \"quantization_method\", None)\n        params = sum(p.numel() for p in module.parameters(recurse=True))\n        shared.log.debug(f'Module: name={module_name} cls={module.__class__.__name__} size={size:.3f} params={params} quant={quant}')\n    except Exception as e:\n        shared.log.error(f'Module stats: name={module_name} {e}')\n\n\ndef apply_balanced_offload(sd_model=None, exclude:list[str]=None, force:bool=False, silent:bool=False):\n    global offload_hook_instance # pylint: disable=global-statement\n    if shared.opts.diffusers_offload_mode != \"balanced\":\n        return sd_model\n    if sd_model is None:\n        if not shared.sd_loaded:\n            return sd_model\n        sd_model = shared.sd_model\n    if sd_model is None:\n        return sd_model\n    if exclude is None:\n        exclude = []\n    t0 = time.time()\n    if sd_model.__class__.__name__ in balanced_offload_exclude:\n        return sd_model\n    cached = True\n    checkpoint_name = sd_model.sd_checkpoint_info.name if getattr(sd_model, \"sd_checkpoint_info\", None) is not None else sd_model.__class__.__name__\n    if force or (offload_hook_instance is None) or (offload_hook_instance.min_watermark != shared.opts.diffusers_offload_min_gpu_memory) or (offload_hook_instance.max_watermark != shared.opts.diffusers_offload_max_gpu_memory) or (checkpoint_name != offload_hook_instance.checkpoint_name):\n        cached = False\n        offload_hook_instance = OffloadHook(checkpoint_name)\n\n    if cached and shared.opts.diffusers_offload_pre:\n        debug_move('Offload: type=balanced op=apply skip')\n        return sd_model\n\n    for pipe in get_pipe_variants(sd_model):\n        for module_name, _module_size in get_module_sizes(pipe, exclude):\n            module = getattr(pipe, module_name, None)\n            if module is None:\n                continue\n            module.module_name = module_name\n            module.offload_dir = os.path.join(shared.opts.accelerate_offload_path, checkpoint_name, module_name)\n            apply_balanced_offload_to_module(module, op='apply')\n            if not silent:\n                report_model_stats(module_name, module)\n\n    set_accelerate(sd_model)\n    t = time.time() - t0\n    process_timer.add('offload', t)\n    fn = f'{sys._getframe(2).f_code.co_name}:{sys._getframe(1).f_code.co_name}' # pylint: disable=protected-access\n    debug_move(f'Apply offload: time={t:.2f} type=balanced fn={fn}')\n    if not cached:\n        shared.log.info(f'Model class={sd_model.__class__.__name__} modules={len(offload_hook_instance.offload_map)} size={offload_hook_instance.model_size():.3f}')\n    return sd_model\n"
  },
  {
    "path": "modules/sd_samplers.py",
    "content": "import os\nimport copy\nfrom modules import shared\nfrom modules.sd_samplers_common import samples_to_image_grid, sample_to_image # pylint: disable=unused-import\n\n\ndebug = shared.log.trace if os.environ.get('SD_SAMPLER_DEBUG', None) is not None else lambda *args, **kwargs: None\ndebug('Trace: SAMPLER')\nall_samplers = []\nall_samplers_map = {}\nsamplers = all_samplers\nsamplers_for_img2img = all_samplers\nsamplers_map = {}\nloaded_config = None\n\n\ndef find_sampler(name:str):\n    if name is None or name == 'None':\n        return all_samplers_map.get(\"UniPC\", None)\n    for sampler in all_samplers:\n        if sampler.name.lower() == name.lower() or name in sampler.aliases:\n            debug(f'Find sampler: name=\"{name}\" found={sampler.name}')\n            return sampler\n    debug(f'Find sampler: name=\"{name}\" found=None')\n    return None\n\n\ndef list_samplers():\n    global all_samplers # pylint: disable=global-statement\n    global all_samplers_map # pylint: disable=global-statement\n    global samplers # pylint: disable=global-statement\n    global samplers_for_img2img # pylint: disable=global-statement\n    global samplers_map # pylint: disable=global-statement\n    from modules import sd_samplers_diffusers\n    all_samplers = [*sd_samplers_diffusers.samplers_data_diffusers]\n    all_samplers_map = {x.name: x for x in all_samplers}\n    samplers = all_samplers\n    samplers_for_img2img = all_samplers\n    samplers_map = {}\n    return all_samplers\n    # shared.log.debug(f'Available samplers: {[x.name for x in all_samplers]}')\n\n\ndef find_sampler_config(name):\n    if name is not None and name != 'None':\n        config = all_samplers_map.get(name, None)\n    else:\n        config = all_samplers[0]\n    return config\n\n\ndef restore_default(model):\n    if model is None:\n        return None\n    if getattr(model, \"default_scheduler\", None) is not None and getattr(model, \"scheduler\", None) is not None:\n        model.scheduler = copy.deepcopy(model.default_scheduler)\n        if hasattr(model, \"prior_pipe\") and hasattr(model.prior_pipe, \"scheduler\"):\n            model.prior_pipe.scheduler = copy.deepcopy(model.default_scheduler)\n            model.prior_pipe.scheduler.config.clip_sample = False\n    config = {k: v for k, v in model.scheduler.config.items() if not k.startswith('_')}\n    if \"flow\" in model.scheduler.__class__.__name__.lower():\n        shared.state.prediction_type = \"flow_prediction\"\n    elif hasattr(model.scheduler, \"config\") and hasattr(model.scheduler.config, \"prediction_type\"):\n        shared.state.prediction_type = model.scheduler.config.prediction_type\n    shared.log.debug(f'Sampler: \"Default\" cls={model.scheduler.__class__.__name__} config={config}')\n    return model.scheduler\n\n\ndef create_sampler(name, model):\n    if name is None or name == 'None':\n        return model.scheduler if model is not None else None\n\n    # create default scheduler if it doesnt exist\n    if model is not None:\n        if getattr(model, \"default_scheduler\", None) is None:\n            model.default_scheduler = copy.deepcopy(model.scheduler)\n        requires_flow = ('FlowMatch' in model.default_scheduler.__class__.__name__) or (getattr(model.default_scheduler.config, 'prediction_type', None) == 'flow_prediction')\n    else:\n        requires_flow = False\n\n    # sdxl allows both flow and discrete samplers\n    is_flexible = (model is not None) and ('XL' in model.__class__.__name__)\n\n    # restore default scheduler\n    if name == 'Default' and hasattr(model, 'scheduler'):\n        return restore_default(model)\n\n    # create sampler\n    config = find_sampler_config(name)\n    if config is None or config.constructor is None:\n        return restore_default(model)\n    sampler = config.constructor(model)\n    if sampler.sampler is None:\n        return restore_default(model)\n    is_flow = ('FlowMatch' in sampler.sampler.__class__.__name__) or (getattr(sampler.sampler.config, 'prediction_type', None) == 'flow_prediction')\n\n    # validate sampler prediction type\n    if (model is not None) and is_flexible:\n        pass\n    elif (model is not None) and (is_flow and not requires_flow):\n        shared.log.error(f'Sampler: \"{sampler.name}\" cls={sampler.sampler.__class__.__name__} pipe={model.__class__.__name__} model requires sampler with discrete prediction')\n        return restore_default(model)\n    elif (model is not None) and (not is_flow and requires_flow):\n        shared.log.error(f'Sampler: \"{sampler.name}\" cls={sampler.sampler.__class__.__name__} pipe={model.__class__.__name__} model requires sampler with flow prediction')\n        return restore_default(model)\n\n    # assign sampler\n    if model is not None:\n        if sampler is None or sampler.sampler is None:\n            model.scheduler = copy.deepcopy(model.default_scheduler)\n        else:\n            model.scheduler = sampler.sampler\n        if not hasattr(model, 'scheduler_config'):\n            model.scheduler_config = sampler.sampler.config.copy() if hasattr(sampler, 'sampler') and hasattr(sampler.sampler, 'config') else {}\n        if hasattr(model, \"prior_pipe\") and hasattr(model.prior_pipe, \"scheduler\"):\n            model.prior_pipe.scheduler = sampler.sampler\n            model.prior_pipe.scheduler.config.clip_sample = False\n        if \"flow\" in model.scheduler.__class__.__name__.lower():\n            shared.state.prediction_type = \"flow_prediction\"\n        elif hasattr(model.scheduler, \"config\") and hasattr(model.scheduler.config, \"prediction_type\"):\n            shared.state.prediction_type = model.scheduler.config.prediction_type\n        clean_config = {k: v for k, v in model.scheduler.config.items() if not k.startswith('_') and v is not None and v is not False}\n        cls = model.scheduler.__class__.__name__\n    else:\n        clean_config = {k: v for k, v in sampler.sampler.config.items() if not k.startswith('_') and v is not None and v is not False}\n        cls = sampler.sampler.__class__.__name__\n    name = sampler.name if sampler is not None and sampler.sampler is not None else 'Default'\n    shared.log.debug(f'Sampler: \"{name}\" class={cls} config={clean_config}')\n    return sampler.sampler\n\n\ndef set_samplers():\n    global samplers # pylint: disable=global-statement\n    global samplers_for_img2img # pylint: disable=global-statement\n    samplers = all_samplers\n    # samplers_for_img2img = [x for x in samplers if x.name != \"PLMS\"]\n    samplers_for_img2img = samplers\n    samplers_map.clear()\n    for sampler in all_samplers:\n        samplers_map[sampler.name.lower()] = sampler.name\n        for alias in sampler.aliases:\n            samplers_map[alias.lower()] = sampler.name\n"
  },
  {
    "path": "modules/sd_samplers_common.py",
    "content": "import time\nimport threading\nfrom collections import namedtuple\nimport torch\nimport torchvision.transforms.functional as TF\nfrom PIL import Image\nfrom modules import shared, devices, processing, images, sd_samplers, timer\nfrom modules.vae import sd_vae_approx, sd_vae_taesd, sd_vae_stablecascade\n\n\nSamplerData = namedtuple('SamplerData', ['name', 'constructor', 'aliases', 'options'])\napproximation_indexes = { \"Simple\": 0, \"Approximate\": 1, \"TAESD\": 2, \"Full VAE\": 3 }\nflow_models = ['f1', 'f2', 'sd3', 'lumina', 'auraflow', 'sana', 'zimage', 'lumina2', 'cogview4', 'h1', 'cosmos', 'chroma', 'omnigen', 'omnigen2', 'longcat']\nwarned = False\nqueue_lock = threading.Lock()\n\n\ndef warn_once(message):\n    global warned # pylint: disable=global-statement\n    if not warned:\n        shared.log.warning(f'VAE: {message}')\n        warned = True\n\n\ndef setup_img2img_steps(p, steps=None):\n    if shared.opts.img2img_fix_steps or steps is not None:\n        requested_steps = (steps or p.steps)\n        steps = int(requested_steps / min(p.denoising_strength, 0.999)) if p.denoising_strength > 0 else 0\n        t_enc = requested_steps - 1\n    else:\n        steps = p.steps\n        t_enc = int(min(p.denoising_strength, 0.999) * steps)\n\n    return steps, t_enc\n\n\ndef single_sample_to_image(sample, approximation=None):\n    with queue_lock:\n        t0 = time.time()\n        if approximation is None:\n            approximation = approximation_indexes.get(shared.opts.show_progress_type, None)\n            if approximation is None:\n                warn_once('Unknown decode type')\n                approximation = 0\n        try:\n            if sample.dtype == torch.bfloat16 and (approximation == 0 or approximation == 1):\n                sample = sample.to(torch.float16)\n        except Exception as e:\n            warn_once(f'Preview: {e}')\n\n        if len(sample.shape) > 4: # likely unknown video latent (e.g. svd)\n            return Image.new(mode=\"RGB\", size=(512, 512))\n        if len(sample.shape) == 4 and sample.shape[0]: # likely animatediff latent\n            sample = sample.permute(1, 0, 2, 3)[0]\n        if approximation == 2: # TAESD\n            if (len(sample.shape) == 3 or len(sample.shape) == 4) and shared.opts.live_preview_downscale and (sample.shape[-1]*sample.shape[-2] > 128*128):\n                try:\n                    scale = (128 * 128) / (sample.shape[-1] * sample.shape[-2])\n                    sample = torch.nn.functional.interpolate(sample.unsqueeze(0), scale_factor=[scale, scale], mode='bilinear', align_corners=False)[0]\n                except Exception:\n                    pass\n            x_sample = sd_vae_taesd.decode(sample)\n            # x_sample = (1.0 + x_sample) / 2.0 # preview requires smaller range\n        elif shared.sd_model_type == 'sc' and approximation != 3:\n            x_sample = sd_vae_stablecascade.decode(sample)\n        elif approximation == 0: # Simple\n            x_sample = sd_vae_approx.cheap_approximation(sample) * 0.5 + 0.5\n        elif approximation == 1: # Approximate\n            x_sample = sd_vae_approx.nn_approximation(sample) * 0.5 + 0.5\n            if shared.sd_model_type == \"sdxl\":\n                x_sample = x_sample[[2, 1, 0], :, :] # BGR to RGB\n        elif approximation == 3: # Full VAE\n            x_sample = processing.decode_first_stage(shared.sd_model, sample.unsqueeze(0))[0]\n        else:\n            warn_once(f\"Unknown latent decode type: {approximation}\")\n            return Image.new(mode=\"RGB\", size=(512, 512))\n        try:\n            if isinstance(x_sample, Image.Image):\n                image = x_sample\n            else:\n                if x_sample.shape[0] > 4 or x_sample.shape[0] == 4:\n                    return Image.new(mode=\"RGB\", size=(512, 512))\n                x_sample = torch.nan_to_num(x_sample, nan=0.0, posinf=1, neginf=0)\n                x_sample = (255.0 * x_sample).to(torch.uint8)\n                if len(x_sample.shape) == 4:\n                    x_sample = x_sample[0]\n                image = TF.to_pil_image(x_sample)\n        except Exception as e:\n            warn_once(f'Preview: {e}')\n            image = Image.new(mode=\"RGB\", size=(512, 512))\n        t1 = time.time()\n        timer.process.add('preview', t1 - t0)\n        return image\n\n\ndef sample_to_image(samples, index=0, approximation=None):\n    return single_sample_to_image(samples[index], approximation)\n\n\ndef samples_to_image_grid(samples, approximation=None):\n    return images.image_grid([single_sample_to_image(sample, approximation) for sample in samples])\n\n\ndef images_tensor_to_samples(image, approximation=None, model=None):\n    '''image[0, 1] -> latent'''\n    if approximation is None:\n        approximation = approximation_indexes.get(shared.opts.show_progress_type, 0)\n    if approximation == 2:\n        image = image.to(devices.device, devices.dtype)\n        x_latent = sd_vae_taesd.encode(image)\n    else:\n        if model is None:\n            model = shared.sd_model\n        model.first_stage_model.to(devices.dtype_vae)\n        image = image.to(shared.device, dtype=devices.dtype_vae)\n        image = image * 2 - 1\n        if len(image) > 1:\n            image_latents = [model.get_first_stage_encoding(model.encode_first_stage(torch.unsqueeze(img, 0)))[0] for img in image]\n            x_latent = torch.stack(image_latents)\n        else:\n            x_latent = model.get_first_stage_encoding(model.encode_first_stage(image))\n    return x_latent\n\n\ndef store_latent(decoded):\n    shared.state.current_latent = decoded\n    if shared.opts.show_progress_every_n_steps > 0 and shared.state.sampling_step % shared.opts.show_progress_every_n_steps == 0:\n        if not shared.parallel_processing_allowed:\n            image = sample_to_image(decoded)\n            shared.state.assign_current_image(image)\n\n\ndef is_sampler_using_eta_noise_seed_delta(p):\n    \"\"\"returns whether sampler from config will use eta noise seed delta for image creation\"\"\"\n    sampler_config = sd_samplers.find_sampler_config(p.sampler_name)\n    eta = 0\n    if hasattr(p, \"eta\"):\n        eta = p.eta\n    if not hasattr(p.sampler, \"eta\"):\n        return False\n    if eta is None and p.sampler is not None:\n        eta = p.sampler.eta\n    if eta is None and sampler_config is not None:\n        eta = 0 if sampler_config.options.get(\"default_eta_is_0\", False) else 1.0\n    if eta == 0:\n        return False\n    return True\n\n\nclass InterruptedException(BaseException):\n    pass\n"
  },
  {
    "path": "modules/sd_samplers_diffusers.py",
    "content": "import os\nimport re\nimport copy\nimport inspect\nimport diffusers\nfrom modules import shared, errors\nfrom modules.sd_samplers_common import SamplerData, flow_models\n\n\ndebug = os.environ.get('SD_SAMPLER_DEBUG', None) is not None\ndebug_log = shared.log.trace if debug else lambda *args, **kwargs: None\n\n# Diffusers schedulers\ntry:\n    from diffusers import (\n        CMStochasticIterativeScheduler,\n        CosineDPMSolverMultistepScheduler,\n        DDIMScheduler,\n        DDPMScheduler,\n        DEISMultistepScheduler,\n        DPMSolverMultistepInverseScheduler,\n        DPMSolverMultistepScheduler,\n        DPMSolverSDEScheduler,\n        DPMSolverSinglestepScheduler,\n        EDMDPMSolverMultistepScheduler,\n        EDMEulerScheduler,\n        EulerAncestralDiscreteScheduler,\n        EulerDiscreteScheduler,\n        FlowMatchEulerDiscreteScheduler,\n        FlowMatchHeunDiscreteScheduler,\n        FlowMatchLCMScheduler,\n        HeunDiscreteScheduler,\n        IPNDMScheduler,\n        KDPM2AncestralDiscreteScheduler,\n        KDPM2DiscreteScheduler,\n        LCMScheduler,\n        LMSDiscreteScheduler,\n        PNDMScheduler,\n        SASolverScheduler,\n        UniPCMultistepScheduler,\n        CogVideoXDDIMScheduler,\n        DDIMParallelScheduler,\n        DDPMParallelScheduler,\n        TCDScheduler,\n    )\nexcept Exception as e:\n    shared.log.error(f'Sampler import: version={diffusers.__version__} error: {e}')\n    if os.environ.get('SD_SAMPLER_DEBUG', None) is not None:\n        errors.display(e, 'Samplers')\n\n# SD.Next Schedulers\ntry:\n    # from modules.schedulers.scheduler_tcd import TCDScheduler # pylint: disable=ungrouped-imports\n    from modules.schedulers.scheduler_tdd import TDDScheduler # pylint: disable=ungrouped-imports\n    from modules.schedulers.scheduler_dc import DCSolverMultistepScheduler # pylint: disable=ungrouped-imports\n    from modules.schedulers.scheduler_vdm import VDMScheduler # pylint: disable=ungrouped-imports\n    from modules.schedulers.scheduler_dpm_flowmatch import FlowMatchDPMSolverMultistepScheduler # pylint: disable=ungrouped-imports\n    from modules.schedulers.scheduler_bdia import BDIA_DDIMScheduler # pylint: disable=ungrouped-imports\n    from modules.schedulers.scheduler_ufogen import UFOGenScheduler # pylint: disable=ungrouped-imports\n    from modules.schedulers.scheduler_unipc_flowmatch import FlowUniPCMultistepScheduler # pylint: disable=ungrouped-imports\n    from modules.schedulers.scheduler_flashflow import FlashFlowMatchEulerDiscreteScheduler # pylint: disable=ungrouped-imports\n    from modules.schedulers.perflow import PeRFlowScheduler # pylint: disable=ungrouped-imports\nexcept Exception as e:\n    shared.log.error(f'Sampler import: version={diffusers.__version__} error: {e}')\n    if os.environ.get('SD_SAMPLER_DEBUG', None) is not None:\n        errors.display(e, 'Samplers')\n\n# Res4Lyf Schedulers\ntry:\n    from modules.res4lyf import (\n        ABNorsettScheduler,\n        CommonSigmaScheduler,\n        ETDRKScheduler,\n        LangevinDynamicsScheduler,\n        LawsonScheduler,\n        PECScheduler,\n        RESUnifiedScheduler,\n        RESSinglestepScheduler,\n        RESMultistepScheduler,\n        RESSinglestepSDEScheduler,\n        RiemannianFlowScheduler,\n        RESDEISMultistepScheduler,\n        LinearRKScheduler,\n        LobattoScheduler,\n        RadauIIAScheduler,\n        GaussLegendreScheduler,\n        RungeKutta44Scheduler,\n        RungeKutta57Scheduler,\n        RungeKutta67Scheduler,\n        SpecializedRKScheduler,\n        # RESMultistepSDEScheduler,\n        # BongTangentScheduler,\n        # SimpleExponentialScheduler,\n    )\nexcept Exception as e:\n    shared.log.error(f'Sampler import: version={diffusers.__version__} error: {e}')\n    if os.environ.get('SD_SAMPLER_DEBUG', None) is not None:\n        errors.display(e, 'Samplers')\n\nconfig = {\n    # beta_start, beta_end are typically per-scheduler, but we don't want them as they should be taken from the model itself as those are values model was trained on\n    # prediction_type is ideally set in model as well, but it maybe needed that we do auto-detect of model type in the future\n    'All': { 'num_train_timesteps': 1000, 'beta_start': 0.0001, 'beta_end': 0.02, 'beta_schedule': 'linear', 'prediction_type': 'epsilon' },\n    'Res4Lyf': { 'timestep_spacing': 'linspace', \"steps_offset\": 0, \"rescale_betas_zero_snr\": False, \"use_karras_sigmas\": False, \"use_exponential_sigmas\": False, \"use_beta_sigmas\": False, \"use_flow_sigmas\": False, \"shift\": 1, \"base_shift\": 0.5, \"max_shift\": 1.15, \"use_dynamic_shifting\": False },\n}\n\nconfig.update({\n    'UniPC': { 'flow_shift': 1, 'predict_x0': True, 'sample_max_value': 1.0, 'solver_order': 2, 'solver_type': 'bh2', 'thresholding': False, 'use_beta_sigmas': False, 'use_exponential_sigmas': False, 'use_flow_sigmas': False, 'use_karras_sigmas': False, 'lower_order_final': True, 'timestep_spacing': 'linspace', 'final_sigmas_type': 'zero', 'rescale_betas_zero_snr': False },\n    'DDIM': { 'clip_sample': False, 'set_alpha_to_one': True, 'steps_offset': 0, 'clip_sample_range': 1.0, 'sample_max_value': 1.0, 'timestep_spacing': 'leading', 'rescale_betas_zero_snr': False, 'thresholding': False },\n\n    'Euler': { 'steps_offset': 0, 'interpolation_type': \"linear\", 'rescale_betas_zero_snr': False, 'final_sigmas_type': 'zero', 'timestep_spacing': 'linspace', 'use_beta_sigmas': False, 'use_exponential_sigmas': False, 'use_karras_sigmas': False },\n    'Euler a': { 'steps_offset': 0, 'rescale_betas_zero_snr': False, 'timestep_spacing': 'linspace' },\n    'Euler SGM': { 'steps_offset': 0, 'interpolation_type': \"linear\", 'rescale_betas_zero_snr': False, 'final_sigmas_type': 'zero', 'timestep_spacing': 'trailing', 'use_beta_sigmas': False, 'use_exponential_sigmas': False, 'use_karras_sigmas': False, 'prediction_type': \"sample\" },\n    'Euler EDM': { 'sigma_schedule': \"karras\" },\n    'Euler FlowMatch': { 'timestep_spacing': \"linspace\", 'shift': 1, 'use_dynamic_shifting': False, 'use_karras_sigmas': False, 'use_exponential_sigmas': False, 'use_beta_sigmas': False, 'base_shift': 0.5, 'max_shift': 1.15 },\n\n    'DPM++': { 'thresholding': False, 'sample_max_value': 1.0, 'algorithm_type': \"dpmsolver++\", 'solver_type': \"midpoint\", 'lower_order_final': True, 'use_karras_sigmas': False, 'use_exponential_sigmas': False, 'use_flow_sigmas': False, 'use_beta_sigmas': False, 'use_lu_lambdas': False, 'final_sigmas_type': 'zero', 'timestep_spacing': 'linspace', 'solver_order': 1 },\n    'DPM++ 2M': { 'thresholding': False, 'sample_max_value': 1.0, 'algorithm_type': \"dpmsolver++\", 'solver_type': \"midpoint\", 'lower_order_final': True, 'use_karras_sigmas': False, 'use_exponential_sigmas': False, 'use_flow_sigmas': False, 'use_beta_sigmas': False, 'use_lu_lambdas': False, 'final_sigmas_type': 'zero', 'timestep_spacing': 'linspace', 'solver_order': 2 },\n    'DPM++ 3M': { 'thresholding': False, 'sample_max_value': 1.0, 'algorithm_type': \"dpmsolver++\", 'solver_type': \"midpoint\", 'lower_order_final': True, 'use_karras_sigmas': False, 'use_exponential_sigmas': False, 'use_flow_sigmas': False, 'use_beta_sigmas': False, 'use_lu_lambdas': False, 'final_sigmas_type': 'zero', 'timestep_spacing': 'linspace', 'solver_order': 3 },\n    'DPM++ 1S': { 'solver_order': 2, 'thresholding': False, 'sample_max_value': 1.0, 'algorithm_type': \"dpmsolver++\", 'solver_type': \"midpoint\", 'lower_order_final': True, 'use_karras_sigmas': False, 'use_exponential_sigmas': False, 'use_flow_sigmas': False, 'use_beta_sigmas': False, 'final_sigmas_type': 'sigma_min' },\n    'DPM++ SDE': { 'thresholding': False, 'sample_max_value': 1.0, 'algorithm_type': \"sde-dpmsolver++\", 'solver_type': \"midpoint\", 'lower_order_final': True, 'use_karras_sigmas': False, 'use_exponential_sigmas': False, 'use_flow_sigmas': False, 'use_beta_sigmas': False, 'use_lu_lambdas': False, 'final_sigmas_type': 'zero', 'timestep_spacing': 'linspace', 'solver_order': 1 },\n    'DPM++ 2M SDE': { 'thresholding': False, 'sample_max_value': 1.0, 'algorithm_type': \"sde-dpmsolver++\", 'solver_type': \"midpoint\", 'lower_order_final': True, 'use_karras_sigmas': False, 'use_exponential_sigmas': False, 'use_flow_sigmas': False, 'use_beta_sigmas': False, 'use_lu_lambdas': False, 'final_sigmas_type': 'zero', 'timestep_spacing': 'linspace', 'solver_order': 2 },\n    'DPM++ 2M EDM': { 'solver_order': 2, 'solver_type': 'midpoint', 'final_sigmas_type': 'zero', 'algorithm_type': 'dpmsolver++' },\n    'DPM++ Cosine': { 'solver_order': 2, 'sigma_schedule': \"exponential\", 'prediction_type': \"v-prediction\" },\n    'DPM SDE': { 'use_karras_sigmas': False, 'use_exponential_sigmas': False, 'use_beta_sigmas': False, 'noise_sampler_seed': None, 'timestep_spacing': 'linspace', 'steps_offset': 0,  },\n\n    'DPM++ Inverse': { 'thresholding': False, 'sample_max_value': 1.0, 'algorithm_type': \"dpmsolver++\", 'solver_type': \"midpoint\", 'lower_order_final': True, 'use_karras_sigmas': False, 'use_exponential_sigmas': False, 'use_flow_sigmas': False, 'use_beta_sigmas': False, 'use_lu_lambdas': False, 'final_sigmas_type': 'zero', 'timestep_spacing': 'linspace', 'solver_order': 1 },\n    'DPM++ 2M Inverse': { 'thresholding': False, 'sample_max_value': 1.0, 'algorithm_type': \"dpmsolver++\", 'solver_type': \"midpoint\", 'lower_order_final': True, 'use_karras_sigmas': False, 'use_exponential_sigmas': False, 'use_flow_sigmas': False, 'use_beta_sigmas': False, 'use_lu_lambdas': False, 'final_sigmas_type': 'zero', 'timestep_spacing': 'linspace', 'solver_order': 2 },\n    'DPM++ 3M Inverse': { 'thresholding': False, 'sample_max_value': 1.0, 'algorithm_type': \"dpmsolver++\", 'solver_type': \"midpoint\", 'lower_order_final': True, 'use_karras_sigmas': False, 'use_exponential_sigmas': False, 'use_flow_sigmas': False, 'use_beta_sigmas': False, 'use_lu_lambdas': False, 'final_sigmas_type': 'zero', 'timestep_spacing': 'linspace', 'solver_order': 3 },\n\n    'UniPC FlowMatch': { 'predict_x0': True, 'sample_max_value': 1.0, 'solver_order': 2, 'solver_type': 'bh2', 'thresholding': False, 'use_beta_sigmas': False, 'use_exponential_sigmas': False, 'use_flow_sigmas': False, 'use_karras_sigmas': False, 'lower_order_final': True, 'timestep_spacing': 'linspace', 'final_sigmas_type': 'zero', 'rescale_betas_zero_snr': False },\n    'DPM2 FlowMatch': { 'shift': 1, 'use_dynamic_shifting': False, 'solver_order': 2, 'sigma_schedule': None, 'use_beta_sigmas': False, 'algorithm_type': 'dpmsolver2', 'use_noise_sampler': True, 'beta_start': 0.00085, 'beta_end': 0.012, 'base_shift': 0.5, 'max_shift': 1.15 },\n    'DPM2a FlowMatch': { 'shift': 1, 'use_dynamic_shifting': False, 'solver_order': 2, 'sigma_schedule': None, 'use_beta_sigmas': False, 'algorithm_type': 'dpmsolver2A', 'use_noise_sampler': True, 'beta_start': 0.00085, 'beta_end': 0.012, 'base_shift': 0.5, 'max_shift': 1.15 },\n    'DPM2++ 2M FlowMatch': { 'shift': 1, 'use_dynamic_shifting': False, 'solver_order': 2, 'sigma_schedule': None, 'use_beta_sigmas': False, 'algorithm_type': 'dpmsolver++2M', 'use_noise_sampler': True, 'beta_start': 0.00085, 'beta_end': 0.012, 'base_shift': 0.5, 'max_shift': 1.15 },\n    'DPM2++ 2S FlowMatch': { 'shift': 1, 'use_dynamic_shifting': False, 'solver_order': 2, 'sigma_schedule': None, 'use_beta_sigmas': False, 'algorithm_type': 'dpmsolver++2S', 'use_noise_sampler': True, 'beta_start': 0.00085, 'beta_end': 0.012, 'base_shift': 0.5, 'max_shift': 1.15 },\n    'DPM2++ SDE FlowMatch': { 'shift': 1, 'use_dynamic_shifting': False, 'solver_order': 2, 'sigma_schedule': None, 'use_beta_sigmas': False, 'algorithm_type': 'dpmsolver++sde', 'use_noise_sampler': True, 'beta_start': 0.00085, 'beta_end': 0.012, 'base_shift': 0.5, 'max_shift': 1.15 },\n    'DPM2++ 2M SDE FlowMatch': { 'shift': 1, 'use_dynamic_shifting': False, 'solver_order': 2, 'sigma_schedule': None, 'use_beta_sigmas': False, 'algorithm_type': 'dpmsolver++2Msde', 'use_noise_sampler': True, 'beta_start': 0.00085, 'beta_end': 0.012, 'base_shift': 0.5, 'max_shift': 1.15 },\n    'DPM2++ 3M SDE FlowMatch': { 'shift': 1, 'use_dynamic_shifting': False, 'solver_order': 3, 'sigma_schedule': None, 'use_beta_sigmas': False, 'algorithm_type': 'dpmsolver++3Msde', 'use_noise_sampler': True, 'beta_start': 0.00085, 'beta_end': 0.012, 'base_shift': 0.5, 'max_shift': 1.15 },\n\n    'Heun': { 'use_beta_sigmas': False, 'use_karras_sigmas': False, 'use_exponential_sigmas': False, 'timestep_spacing': 'linspace' },\n    'Heun FlowMatch': { 'timestep_spacing': \"linspace\", 'shift': 1 },\n    'LCM FlowMatch': { 'beta_start': 0.00085, 'beta_end': 0.012, 'beta_schedule': \"scaled_linear\", 'set_alpha_to_one': True, 'rescale_betas_zero_snr': False, 'thresholding': False, 'timestep_spacing': 'linspace', 'base_shift': 0.5, 'max_shift': 1.15 },\n\n    'DEIS': { 'solver_order': 2, 'thresholding': False, 'sample_max_value': 1.0, 'algorithm_type': \"deis\", 'solver_type': \"logrho\", 'lower_order_final': True, 'timestep_spacing': 'linspace', 'use_karras_sigmas': False, 'use_exponential_sigmas': False, 'use_flow_sigmas': False, 'use_beta_sigmas': False },\n    'SA Solver': {'predictor_order': 2, 'corrector_order': 2, 'thresholding': False, 'lower_order_final': True, 'use_karras_sigmas': False, 'use_flow_sigmas': False, 'use_exponential_sigmas': False, 'use_beta_sigmas': False, 'timestep_spacing': 'linspace'},\n    'DC Solver': { 'beta_start': 0.0001, 'beta_end': 0.02, 'solver_order': 2, 'prediction_type': \"epsilon\", 'thresholding': False, 'solver_type': 'bh2', 'lower_order_final': True, 'dc_order': 2, 'disable_corrector': [0] },\n    'VDM Solver': { 'clip_sample_range': 2.0, },\n    'TCD': { 'set_alpha_to_one': True, 'rescale_betas_zero_snr': False, 'beta_schedule': 'scaled_linear' },\n    'TDD': { },\n    'Flash FlowMatch': { 'shift': 1, 'use_dynamic_shifting': False, 'use_karras_sigmas': False, 'use_exponential_sigmas': False, 'use_beta_sigmas': False, 'base_shift': 0.5, 'max_shift': 1.15 },\n    'PeRFlow': { 'prediction_type': 'ddim_eps' },\n    'UFOGen': { },\n    'BDIA DDIM': { 'clip_sample': False, 'set_alpha_to_one': True, 'steps_offset': 0, 'clip_sample_range': 1.0, 'sample_max_value': 1.0, 'timestep_spacing': 'leading', 'rescale_betas_zero_snr': False, 'thresholding': False, 'gamma': 1.0 },\n\n    'PNDM': { 'skip_prk_steps': False, 'set_alpha_to_one': False, 'steps_offset': 0, 'timestep_spacing': 'linspace' },\n    'IPNDM': { },\n    'DDPM': { 'variance_type': \"fixed_small\", 'clip_sample': False, 'thresholding': False, 'clip_sample_range': 1.0, 'sample_max_value': 1.0, 'timestep_spacing': 'linspace', 'rescale_betas_zero_snr': False },\n    'LMSD': { 'use_karras_sigmas': False, 'use_exponential_sigmas': False, 'use_beta_sigmas': False, 'timestep_spacing': 'linspace', 'steps_offset': 0 },\n    'KDPM2': { 'use_karras_sigmas': False, 'use_exponential_sigmas': False, 'use_beta_sigmas': False, 'steps_offset': 0, 'timestep_spacing': 'linspace' },\n    'KDPM2 a': { 'use_karras_sigmas': False, 'use_exponential_sigmas': False, 'use_beta_sigmas': False, 'steps_offset': 0, 'timestep_spacing': 'linspace' },\n    'CMSI': { },\n    'CogX DDIM': { 'beta_schedule': \"scaled_linear\", 'beta_start': 0.00085, 'beta_end': 0.012, 'set_alpha_to_one': True, 'rescale_betas_zero_snr': False },\n    'DDIM Parallel': {},\n    'DDPM Parallel': {},\n\n    # res4lyf\n    'ABNorsett 2M': { 'variant': 'abnorsett_2m', **config['Res4Lyf'] },\n    'ABNorsett 3M': { 'variant': 'abnorsett_3m', **config['Res4Lyf'] },\n    'ABNorsett 4M': { 'variant': 'abnorsett_4m', **config['Res4Lyf'] },\n    'Lawson 2S A': { 'variant': 'lawson2a_2s', **config['Res4Lyf'] },\n    'Lawson 2S B': { 'variant': 'lawson2b_2s', **config['Res4Lyf'] },\n    'Lawson 4S': { 'variant': 'lawson4_4s', **config['Res4Lyf'] },\n    'ETD-RK 2S': { 'variant': 'etdrk2_2s', **config['Res4Lyf'] },\n    'ETD-RK 3S A': { 'variant': 'etdrk3_a_3s', **config['Res4Lyf'] },\n    'ETD-RK 3S B': { 'variant': 'etdrk3_b_3s', **config['Res4Lyf'] },\n    'ETD-RK 4S A': { 'variant': 'etdrk4_4s', **config['Res4Lyf'] },\n    'ETD-RK 4S B': { 'variant': 'etdrk4_4s_alt', **config['Res4Lyf'] },\n    'RES-Unified 2M': { 'rk_type': 'res_2m', **config['Res4Lyf'] },\n    'RES-Unified 3M': { 'rk_type': 'res_3m', **config['Res4Lyf'] },\n    'RES-Unified 2S': { 'rk_type': 'res_2s', **config['Res4Lyf'] },\n    'RES-Unified 3S': { 'rk_type': 'res_3s', **config['Res4Lyf'] },\n    'RES-Singlestep 2S': { 'variant': 'res_2s', **config['Res4Lyf'] },\n    'RES-Singlestep 3S': { 'variant': 'res_3s', **config['Res4Lyf'] },\n    'RES-Multistep 2M': { 'variant': 'res_2m', **config['Res4Lyf'] },\n    'RES-Multistep 3M': { 'variant': 'res_3m', **config['Res4Lyf'] },\n    'RES-SDE 2S': { 'variant': 'res_2s', **config['Res4Lyf'] },\n    'RES-SDE 3S': { 'variant': 'res_3s', **config['Res4Lyf'] },\n    'DEIS-Multistep': { 'order': 2, **config['Res4Lyf'] },\n    'DEIS-Unified 1S': { 'rk_type': 'deis_1s', **config['Res4Lyf'] },\n    'DEIS-Unified 2M': { 'rk_type': 'deis_2m', **config['Res4Lyf'] },\n    'PEC 423': { 'variant': 'pec423_2h2s', **config['Res4Lyf'] },\n    'PEC 433': { 'variant': 'pec433_2h3s', **config['Res4Lyf'] },\n    'Sigmoid Sigma': { 'profile': 'sigmoid', **config['Res4Lyf'] },\n    'Sine Sigma': { 'profile': 'sine', **config['Res4Lyf'] },\n    'Easing Sigma': { 'profile': 'easing', **config['Res4Lyf'] },\n    'Arcsine Sigma': { 'profile': 'arcsine', **config['Res4Lyf'] },\n    'Smoothstep Sigma': { 'profile': 'smoothstep', **config['Res4Lyf'] },\n    'Langevin Dynamics': { **config['Res4Lyf'] },\n    'Euclidean Flow': { 'metric_type': 'euclidean', **config['Res4Lyf'] },\n    'Hyperbolic Flow': { 'metric_type': 'hyperbolic', **config['Res4Lyf'] },\n    'Spherical Flow': { 'metric_type': 'spherical', **config['Res4Lyf'] },\n    'Lorentzian Flow': { 'metric_type': 'lorentzian', **config['Res4Lyf'] },\n    'Linear-RK 2': { 'variant': 'rk2', **config['Res4Lyf'] },\n    'Linear-RK 3': { 'variant': 'rk3', **config['Res4Lyf'] },\n    'Linear-RK 4': { 'variant': 'rk4', **config['Res4Lyf'] },\n    'Linear-RK Euler': { 'variant': 'euler', **config['Res4Lyf'] },\n    'Linear-RK Heun': { 'variant': 'heun', **config['Res4Lyf'] },\n    'Linear-RK Ralston': { 'variant': 'ralston', **config['Res4Lyf'] },\n    'Lobatto 2': { 'variant': 'lobatto_iiia_2s', **config['Res4Lyf'] },\n    'Lobatto 3': { 'variant': 'lobatto_iiia_3s', **config['Res4Lyf'] },\n    'Lobatto 4': { 'variant': 'lobatto_iiia_4s', **config['Res4Lyf'] },\n    'Radau IIA 2': { 'variant': 'radau_iia_2s', **config['Res4Lyf'] },\n    'Radau IIA 3': { 'variant': 'radau_iia_3s', **config['Res4Lyf'] },\n    'Gauss-Legendre 2S': { 'variant': 'gauss-legendre_2s', **config['Res4Lyf'] },\n    'Gauss-Legendre 3S': { 'variant': 'gauss-legendre_3s', **config['Res4Lyf'] },\n    'Gauss-Legendre 4S': { 'variant': 'gauss-legendre_4s', **config['Res4Lyf'] },\n    'Runge-Kutta 4/4': { **config['Res4Lyf'] },\n    'Runge-Kutta 5/7': { **config['Res4Lyf'] },\n    'Runge-Kutta 6/7': { **config['Res4Lyf'] },\n    'Specialized-RK 3S': { 'variant': 'ssprk3_3s', **config['Res4Lyf'] },\n    'Specialized-RK 4S': { 'variant': 'ssprk4_4s', **config['Res4Lyf'] },\n})\n\nsamplers_data_diffusers = [\n    SamplerData('Default', None, [], {}),\n\n    SamplerData('UniPC', lambda model: DiffusionSampler('UniPC', UniPCMultistepScheduler, model), [], {}),\n    SamplerData('DDIM', lambda model: DiffusionSampler('DDIM', DDIMScheduler, model), [], {}),\n    SamplerData('Euler', lambda model: DiffusionSampler('Euler', EulerDiscreteScheduler, model), [], {}),\n    SamplerData('Euler a', lambda model: DiffusionSampler('Euler a', EulerAncestralDiscreteScheduler, model), [], {}),\n    SamplerData('Euler SGM', lambda model: DiffusionSampler('Euler SGM', EulerDiscreteScheduler, model), [], {}),\n    SamplerData('Euler EDM', lambda model: DiffusionSampler('Euler EDM', EDMEulerScheduler, model), [], {}),\n    SamplerData('Euler FlowMatch', lambda model: DiffusionSampler('Euler FlowMatch', FlowMatchEulerDiscreteScheduler, model), [], {}),\n\n    SamplerData('DPM++', lambda model: DiffusionSampler('DPM++', DPMSolverMultistepScheduler, model), [], {}),\n    SamplerData('DPM++ 2M', lambda model: DiffusionSampler('DPM++ 2M', DPMSolverMultistepScheduler, model), [], {}),\n    SamplerData('DPM++ 3M', lambda model: DiffusionSampler('DPM++ 3M', DPMSolverMultistepScheduler, model), [], {}),\n    SamplerData('DPM++ 1S', lambda model: DiffusionSampler('DPM++ 1S', DPMSolverSinglestepScheduler, model), [], {}),\n    SamplerData('DPM++ SDE', lambda model: DiffusionSampler('DPM++ SDE', DPMSolverMultistepScheduler, model), [], {}),\n    SamplerData('DPM++ 2M SDE', lambda model: DiffusionSampler('DPM++ 2M SDE', DPMSolverMultistepScheduler, model), [], {}),\n    SamplerData('DPM++ 2M EDM', lambda model: DiffusionSampler('DPM++ 2M EDM', EDMDPMSolverMultistepScheduler, model), [], {}),\n    SamplerData('DPM++ Cosine', lambda model: DiffusionSampler('DPM++ 2M EDM', CosineDPMSolverMultistepScheduler, model), [], {}),\n    SamplerData('DPM SDE', lambda model: DiffusionSampler('DPM SDE', DPMSolverSDEScheduler, model), [], {}),\n\n    SamplerData('DPM++ Inverse', lambda model: DiffusionSampler('DPM++ Inverse', DPMSolverMultistepInverseScheduler, model), [], {}),\n    SamplerData('DPM++ 2M Inverse', lambda model: DiffusionSampler('DPM++ 2M Inverse', DPMSolverMultistepInverseScheduler, model), [], {}),\n    SamplerData('DPM++ 3M Inverse', lambda model: DiffusionSampler('DPM++ 3M Inverse', DPMSolverMultistepInverseScheduler, model), [], {}),\n\n    SamplerData('UniPC FlowMatch', lambda model: DiffusionSampler('UniPC FlowMatch', FlowUniPCMultistepScheduler, model), [], {}),\n    SamplerData('DPM2 FlowMatch', lambda model: DiffusionSampler('DPM2 FlowMatch', FlowMatchDPMSolverMultistepScheduler, model), [], {}),\n    SamplerData('DPM2a FlowMatch', lambda model: DiffusionSampler('DPM2a FlowMatch', FlowMatchDPMSolverMultistepScheduler, model), [], {}),\n    SamplerData('DPM2++ 2M FlowMatch', lambda model: DiffusionSampler('DPM2++ 2M FlowMatch', FlowMatchDPMSolverMultistepScheduler, model), [], {}),\n    SamplerData('DPM2++ 2S FlowMatch', lambda model: DiffusionSampler('DPM2++ 2S FlowMatch', FlowMatchDPMSolverMultistepScheduler, model), [], {}),\n    SamplerData('DPM2++ SDE FlowMatch', lambda model: DiffusionSampler('DPM2++ SDE FlowMatch', FlowMatchDPMSolverMultistepScheduler, model), [], {}),\n    SamplerData('DPM2++ 2M SDE FlowMatch', lambda model: DiffusionSampler('DPM2++ 2M SDE FlowMatch', FlowMatchDPMSolverMultistepScheduler, model), [], {}),\n    SamplerData('DPM2++ 3M SDE FlowMatch', lambda model: DiffusionSampler('DPM2++ 3M SDE FlowMatch', FlowMatchDPMSolverMultistepScheduler, model), [], {}),\n\n    SamplerData('Heun', lambda model: DiffusionSampler('Heun', HeunDiscreteScheduler, model), [], {}),\n    SamplerData('Heun FlowMatch', lambda model: DiffusionSampler('Heun FlowMatch', FlowMatchHeunDiscreteScheduler, model), [], {}),\n    SamplerData('Flash FlowMatch', lambda model: DiffusionSampler('Flash FlowMatch', FlashFlowMatchEulerDiscreteScheduler, model), [], {}),\n\n    SamplerData('DEIS', lambda model: DiffusionSampler('DEIS', DEISMultistepScheduler, model), [], {}),\n    SamplerData('SA Solver', lambda model: DiffusionSampler('SA Solver', SASolverScheduler, model), [], {}),\n    SamplerData('DC Solver', lambda model: DiffusionSampler('DC Solver', DCSolverMultistepScheduler, model), [], {}),\n\n    SamplerData('DDPM', lambda model: DiffusionSampler('DDPM', DDPMScheduler, model), [], {}),\n    SamplerData('DDPM Parallel', lambda model: DiffusionSampler('DDPM Parallel', DDPMParallelScheduler, model), [], {}),\n    SamplerData('DDIM Parallel', lambda model: DiffusionSampler('DDIM Parallel', DDIMParallelScheduler, model), [], {}),\n    SamplerData('PNDM', lambda model: DiffusionSampler('PNDM', PNDMScheduler, model), [], {}),\n    SamplerData('IPNDM', lambda model: DiffusionSampler('IPNDM', IPNDMScheduler, model), [], {}),\n    SamplerData('LMSD', lambda model: DiffusionSampler('LMSD', LMSDiscreteScheduler, model), [], {}),\n    SamplerData('KDPM2', lambda model: DiffusionSampler('KDPM2', KDPM2DiscreteScheduler, model), [], {}),\n    SamplerData('KDPM2 a', lambda model: DiffusionSampler('KDPM2 a', KDPM2AncestralDiscreteScheduler, model), [], {}),\n    SamplerData('CMSI', lambda model: DiffusionSampler('CMSI', CMStochasticIterativeScheduler, model), [], {}),\n\n    SamplerData('VDM Solver', lambda model: DiffusionSampler('VDM Solver', VDMScheduler, model), [], {}),\n    SamplerData('BDIA DDIM', lambda model: DiffusionSampler('BDIA DDIM g=0', BDIA_DDIMScheduler, model), [], {}),\n    SamplerData('LCM', lambda model: DiffusionSampler('LCM', LCMScheduler, model), [], {}),\n    SamplerData('LCM FlowMatch', lambda model: DiffusionSampler('LCM FlowMatch', FlowMatchLCMScheduler, model), [], {}),\n    SamplerData('TCD', lambda model: DiffusionSampler('TCD', TCDScheduler, model), [], {}),\n    SamplerData('TDD', lambda model: DiffusionSampler('TDD', TDDScheduler, model), [], {}),\n    SamplerData('PeRFlow', lambda model: DiffusionSampler('PeRFlow', PeRFlowScheduler, model), [], {}),\n    SamplerData('UFOGen', lambda model: DiffusionSampler('UFOGen', UFOGenScheduler, model), [], {}),\n    SamplerData('CogX DDIM', lambda model: DiffusionSampler('CogX DDIM', CogVideoXDDIMScheduler, model), [], {}),\n\n    SamplerData('ABNorsett 2M', lambda model: DiffusionSampler('ABNorsett 2M', ABNorsettScheduler, model), [], {}),\n    SamplerData('ABNorsett 3M', lambda model: DiffusionSampler('ABNorsett 3M', ABNorsettScheduler, model), [], {}),\n    SamplerData('ABNorsett 4M', lambda model: DiffusionSampler('ABNorsett 4M', ABNorsettScheduler, model), [], {}),\n    SamplerData('Lawson 2S A', lambda model: DiffusionSampler('Lawson 2S A', LawsonScheduler, model), [], {}),\n    SamplerData('Lawson 2S B', lambda model: DiffusionSampler('Lawson 2S B', LawsonScheduler, model), [], {}),\n    SamplerData('Lawson 4S', lambda model: DiffusionSampler('Lawson 4S', LawsonScheduler, model), [], {}),\n    SamplerData('ETD-RK 2S', lambda model: DiffusionSampler('ETD-RK 2S', ETDRKScheduler, model), [], {}),\n    SamplerData('ETD-RK 3S A', lambda model: DiffusionSampler('ETD-RK 3S A', ETDRKScheduler, model), [], {}),\n    SamplerData('ETD-RK 3S B', lambda model: DiffusionSampler('ETD-RK 3S B', ETDRKScheduler, model), [], {}),\n    SamplerData('ETD-RK 4S A', lambda model: DiffusionSampler('ETD-RK 4S A', ETDRKScheduler, model), [], {}),\n    SamplerData('ETD-RK 4S B', lambda model: DiffusionSampler('ETD-RK 4S B', ETDRKScheduler, model), [], {}),\n    SamplerData('PEC 423', lambda model: DiffusionSampler('PEC 423', PECScheduler, model), [], {}),\n    SamplerData('PEC 433', lambda model: DiffusionSampler('PEC 433', PECScheduler, model), [], {}),\n    SamplerData('RES-Unified 2S', lambda model: DiffusionSampler('RES-Unified 2S', RESUnifiedScheduler, model), [], {}),\n    SamplerData('RES-Unified 3S', lambda model: DiffusionSampler('RES-Unified 3S', RESUnifiedScheduler, model), [], {}),\n    SamplerData('RES-Unified 2M', lambda model: DiffusionSampler('RES-Unified 2M', RESUnifiedScheduler, model), [], {}),\n    SamplerData('RES-Unified 3M', lambda model: DiffusionSampler('RES-Unified 3M', RESUnifiedScheduler, model), [], {}),\n    SamplerData('RES-Singlestep 2S', lambda model: DiffusionSampler('RES-Singlestep 2S', RESSinglestepScheduler, model), [], {}),\n    SamplerData('RES-Singlestep 3S', lambda model: DiffusionSampler('RES-Singlestep 3S', RESSinglestepScheduler, model), [], {}),\n    SamplerData('RES-Multistep 2M', lambda model: DiffusionSampler('RES-Multistep 2M', RESMultistepScheduler, model), [], {}),\n    SamplerData('RES-Multistep 3M', lambda model: DiffusionSampler('RES-Multistep 3M', RESMultistepScheduler, model), [], {}),\n    SamplerData('RES-SDE 2S', lambda model: DiffusionSampler('RES-SDE 2S', RESSinglestepSDEScheduler, model), [], {}),\n    SamplerData('RES-SDE 3S', lambda model: DiffusionSampler('RES-SDE 3S', RESSinglestepSDEScheduler, model), [], {}),\n    SamplerData('DEIS-Multistep', lambda model: DiffusionSampler('DEIS Multistep', RESDEISMultistepScheduler, model), [], {}),\n    SamplerData('DEIS-Unified 1S', lambda model: DiffusionSampler('DEIS-Unified 1S', RESUnifiedScheduler, model), [], {}),\n    SamplerData('DEIS-Unified 2M', lambda model: DiffusionSampler('DEIS-Unified 2M', RESUnifiedScheduler, model), [], {}),\n    SamplerData('Sigmoid Sigma', lambda model: DiffusionSampler('Sigmoid Sigma', CommonSigmaScheduler, model), [], {}),\n    SamplerData('Sine Sigma', lambda model: DiffusionSampler('Sine Sigma', CommonSigmaScheduler, model), [], {}),\n    SamplerData('Easing Sigma', lambda model: DiffusionSampler('Easing Sigma', CommonSigmaScheduler, model), [], {}),\n    SamplerData('Arcsine Sigma', lambda model: DiffusionSampler('Arcsine Sigma', CommonSigmaScheduler, model), [], {}),\n    SamplerData('Smoothstep Sigma', lambda model: DiffusionSampler('Smoothstep Sigma', CommonSigmaScheduler, model), [], {}),\n    SamplerData('Langevin Dynamics', lambda model: DiffusionSampler('Langevin Dynamics', LangevinDynamicsScheduler, model), [], {}),\n    SamplerData('Euclidean Flow', lambda model: DiffusionSampler('Euclidean Flow', RiemannianFlowScheduler, model), [], {}),\n    SamplerData('Hyperbolic Flow', lambda model: DiffusionSampler('Hyperbolic Flow', RiemannianFlowScheduler, model), [], {}),\n    SamplerData('Spherical Flow', lambda model: DiffusionSampler('Spherical Flow', RiemannianFlowScheduler, model), [], {}),\n    SamplerData('Lorentzian Flow', lambda model: DiffusionSampler('Lorentzian Flow', RiemannianFlowScheduler, model), [], {}),\n    SamplerData('Linear-RK 2', lambda model: DiffusionSampler('Linear-RK 2', LinearRKScheduler, model), [], {}),\n    SamplerData('Linear-RK 3', lambda model: DiffusionSampler('Linear-RK 3', LinearRKScheduler, model), [], {}),\n    SamplerData('Linear-RK 4', lambda model: DiffusionSampler('Linear-RK 4', LinearRKScheduler, model), [], {}),\n    SamplerData('Linear-RK Euler', lambda model: DiffusionSampler('Linear-RK Euler', LinearRKScheduler, model), [], {}),\n    SamplerData('Linear-RK Heun', lambda model: DiffusionSampler('Linear-RK Heun', LinearRKScheduler, model), [], {}),\n    SamplerData('Linear-RK Ralston', lambda model: DiffusionSampler('Linear-RK Ralston', LinearRKScheduler, model), [], {}),\n    SamplerData('Lobatto 2', lambda model: DiffusionSampler('Lobatto 2', LobattoScheduler, model), [], {}),\n    SamplerData('Lobatto 3', lambda model: DiffusionSampler('Lobatto 3', LobattoScheduler, model), [], {}),\n    SamplerData('Lobatto 4', lambda model: DiffusionSampler('Lobatto 4', LobattoScheduler, model), [], {}),\n    SamplerData('Radau IIA 2', lambda model: DiffusionSampler('Radau IIA 2', RadauIIAScheduler, model), [], {}),\n    SamplerData('Radau IIA 3', lambda model: DiffusionSampler('Radau IIA 2', RadauIIAScheduler, model), [], {}),\n    SamplerData('Radau IIA 4', lambda model: DiffusionSampler('Radau IIA 2', RadauIIAScheduler, model), [], {}),\n    SamplerData('Gauss-Legendre 2S', lambda model: DiffusionSampler('Gauss-Legendre 2S', GaussLegendreScheduler, model), [], {}),\n    SamplerData('Gauss-Legendre 3S', lambda model: DiffusionSampler('Gauss-Legendre 3S', GaussLegendreScheduler, model), [], {}),\n    SamplerData('Gauss-Legendre 4S', lambda model: DiffusionSampler('Gauss-Legendre 4S', GaussLegendreScheduler, model), [], {}),\n    SamplerData('Specialized-RK 3S', lambda model: DiffusionSampler('Specialized-RK 3S', SpecializedRKScheduler, model), [], {}),\n    SamplerData('Specialized-RK 4S', lambda model: DiffusionSampler('Specialized-RK 4S', SpecializedRKScheduler, model), [], {}),\n    SamplerData('Runge-Kutta 4/4', lambda model: DiffusionSampler('Runge-Kutta 4/4', RungeKutta44Scheduler, model), [], {}),\n    SamplerData('Runge-Kutta 5/7', lambda model: DiffusionSampler('Runge-Kutta 5/7', RungeKutta57Scheduler, model), [], {}),\n    SamplerData('Runge-Kutta 6/7', lambda model: DiffusionSampler('Runge-Kutta 6/7', RungeKutta67Scheduler, model), [], {}),\n\n    SamplerData('Same as primary', None, [], {}),\n]\n\n\nclass DiffusionSampler:\n    def __init__(self, name, constructor, model, **kwargs):\n        if name == 'Default':\n            return\n        self.name = name\n        self.config = {}\n        self.sampler = None\n\n        if getattr(model, \"default_scheduler\", None) is None and (model is not None): # sanity check\n            model.default_scheduler = copy.deepcopy(model.scheduler)\n        for key, value in config.get('All', {}).items(): # apply global defaults\n            self.config[key] = value\n        debug_log(f'Sampler: all=\"{self.config}\"')\n        if model is None:\n            orig_config = {}\n        elif hasattr(model.default_scheduler, 'scheduler_config'): # find model defaults\n            orig_config = model.default_scheduler.scheduler_config\n        else:\n            orig_config = model.default_scheduler.config\n        debug_log(f'Sampler: diffusers=\"{self.config}\"')\n        debug_log(f'Sampler: original=\"{orig_config}\"')\n        for key, value in orig_config.items(): # apply model defaults\n            if key in self.config:\n                self.config[key] = value\n        debug_log(f'Sampler: default=\"{self.config}\"')\n        for key, value in config.get(name, {}).items(): # apply diffusers per-scheduler defaults\n            self.config[key] = value\n        for key, value in kwargs.items(): # apply user args, if any\n            if key in self.config:\n                self.config[key] = value\n\n        # finally apply user preferences\n        if shared.opts.schedulers_prediction_type != 'default':\n            self.config['prediction_type'] = shared.opts.schedulers_prediction_type\n        if shared.opts.schedulers_beta_schedule != 'default':\n            if shared.opts.schedulers_beta_schedule == 'linear':\n                self.config['beta_schedule'] = 'linear'\n            elif shared.opts.schedulers_beta_schedule == 'scaled':\n                self.config['beta_schedule'] = 'scaled_linear'\n            elif shared.opts.schedulers_beta_schedule == 'cosine':\n                self.config['beta_schedule'] = 'squaredcos_cap_v2'\n            elif shared.opts.schedulers_beta_schedule == 'sigmoid':\n                self.config['beta_schedule'] = 'sigmoid'\n\n        timesteps = re.split(',| ', shared.opts.schedulers_timesteps)\n        timesteps = [int(x) for x in timesteps if x.isdigit()]\n        if len(timesteps) == 0:\n            if 'sigma_schedule' in self.config:\n                self.config['sigma_schedule'] = shared.opts.schedulers_sigma if shared.opts.schedulers_sigma != 'default' else None\n            if shared.opts.schedulers_sigma == 'default' and shared.sd_model_type in flow_models and 'use_flow_sigmas' in self.config:\n                self.config['use_flow_sigmas'] = True\n            elif shared.opts.schedulers_sigma == 'betas' and 'use_beta_sigmas' in self.config:\n                self.config['use_beta_sigmas'] = True\n            elif shared.opts.schedulers_sigma == 'karras' and 'use_karras_sigmas' in self.config:\n                self.config['use_karras_sigmas'] = True\n            elif shared.opts.schedulers_sigma == 'flowmatch' and 'use_flow_sigmas' in self.config:\n                self.config['use_flow_sigmas'] = True\n            elif shared.opts.schedulers_sigma == 'exponential' and 'use_exponential_sigmas' in self.config:\n                self.config['use_exponential_sigmas'] = True\n            elif shared.opts.schedulers_sigma == 'lambdas' and 'use_lu_lambdas' in self.config:\n                self.config['use_lu_lambdas'] = True\n        else:\n            pass # timesteps are set using set_timesteps in set_pipeline_args\n\n        if 'thresholding' in self.config:\n            self.config['thresholding'] = shared.opts.schedulers_use_thresholding\n        if 'lower_order_final' in self.config:\n            self.config['lower_order_final'] = shared.opts.schedulers_use_loworder\n        if 'solver_order' in self.config and int(shared.opts.schedulers_solver_order) > 0:\n            self.config['solver_order'] = int(shared.opts.schedulers_solver_order)\n        if 'predict_x0' in self.config:\n            self.config['solver_type'] = shared.opts.uni_pc_variant\n        if 'beta_start' in self.config and shared.opts.schedulers_beta_start > 0:\n            self.config['beta_start'] = shared.opts.schedulers_beta_start\n        if 'beta_end' in self.config and shared.opts.schedulers_beta_end > 0:\n            self.config['beta_end'] = shared.opts.schedulers_beta_end\n        if 'shift' in self.config:\n            self.config['shift'] = shared.opts.schedulers_shift if shared.opts.schedulers_shift > 0 else 3\n        if 'flow_shift' in self.config:\n            self.config['flow_shift'] = shared.opts.schedulers_shift if shared.opts.schedulers_shift > 0 else 3\n        if 'use_dynamic_shifting' in self.config:\n            self.config['use_dynamic_shifting'] = True if shared.opts.schedulers_shift == 0 else shared.opts.schedulers_dynamic_shift\n        if 'base_shift' in self.config:\n            self.config['base_shift'] = shared.opts.schedulers_base_shift\n        if 'max_shift' in self.config:\n            self.config['max_shift'] = shared.opts.schedulers_max_shift\n        if 'use_beta_sigmas' in self.config and 'sigma_schedule' in self.config:\n            self.config['use_beta_sigmas'] = 'StableDiffusion3' in model.__class__.__name__\n        if 'rescale_betas_zero_snr' in self.config:\n            self.config['rescale_betas_zero_snr'] = shared.opts.schedulers_rescale_betas\n        if 'timestep_spacing' in self.config and shared.opts.schedulers_timestep_spacing != 'default' and shared.opts.schedulers_timestep_spacing is not None:\n            self.config['timestep_spacing'] = shared.opts.schedulers_timestep_spacing\n        if 'num_train_timesteps' in self.config:\n            self.config['num_train_timesteps'] = shared.opts.schedulers_timesteps_range\n        if 'EDM' in name:\n            del self.config['beta_start']\n            del self.config['beta_end']\n            del self.config['beta_schedule']\n        if name in {'IPNDM', 'CMSI', 'VDM Solver'}:\n            del self.config['beta_start']\n            del self.config['beta_end']\n            del self.config['beta_schedule']\n            del self.config['prediction_type']\n        if 'prediction_type' in self.config and 'Flow' in name:\n            self.config['prediction_type'] = 'flow_prediction'\n        if 'SGM' in name:\n            self.config['timestep_spacing'] = 'trailing'\n\n        # validate all config params\n        signature = inspect.signature(constructor, follow_wrapped=True)\n        possible = signature.parameters.keys()\n        for key in self.config.copy().keys():\n            if key not in possible:\n                del self.config[key]\n        debug_log(f'Sampler: name=\"{name}\"')\n        debug_log(f'Sampler: config={self.config}')\n        debug_log(f'Sampler: signature={possible}')\n\n        # finally create the new sampler\n        try:\n            sampler = constructor(**self.config)\n        except Exception as e:\n            shared.log.error(f'Sampler: \"{name}\" {e}')\n            if debug:\n                errors.display(e, 'Samplers')\n            self.sampler = None\n            return\n\n        if hasattr(sampler, 'set_timesteps'):\n            accept_sigmas = \"sigmas\" in set(inspect.signature(sampler.set_timesteps).parameters.keys())\n            accepts_timesteps = \"timesteps\" in set(inspect.signature(sampler.set_timesteps).parameters.keys())\n            accept_scale_noise = hasattr(sampler, \"scale_noise\")\n            debug_log(f'Sampler: \"{name}\" sigmas={accept_sigmas} timesteps={accepts_timesteps}')\n            if ('Flux' in model.__class__.__name__) and (not accept_sigmas):\n                shared.log.warning(f'Sampler: \"{name}\" does not accept sigmas')\n                self.sampler = None\n                return\n            if ('StableDiffusion3' in model.__class__.__name__) and (not accept_scale_noise):\n                shared.log.warning(f'Sampler: \"{name}\" does not implement scale noise')\n                self.sampler = None\n                return\n\n        # monkey-patch to allow sdxl pipeline to execute flowmatch samplers\n        if not hasattr(sampler, 'scale_model_input'):\n            sampler.scale_model_input = lambda x, _y: x\n        if not hasattr(sampler, 'init_noise_sigma'):\n            sampler.init_noise_sigma = 1.0\n\n        self.sampler = sampler\n\n        # shared.log.debug_log(f'Sampler: class=\"{self.sampler.__class__.__name__}\" config={self.sampler.config}')\n        self.sampler.name = name\n"
  },
  {
    "path": "modules/sd_te_remote.py",
    "content": "from typing import List, Optional, Union\nimport os\nimport time\nimport json\nimport torch\nimport requests\nfrom modules import devices, errors\n\n\ndef get_t5_prompt_embeds(\n    prompt: Union[str, List[str]] = None,\n    num_images_per_prompt: int = 1, # pylint: disable=unused-argument\n    max_sequence_length: int = 512, # pylint: disable=unused-argument\n    device: Optional[torch.device] = None,\n    dtype: Optional[torch.dtype] = None,\n):\n    device = device or devices.device\n    dtype = dtype or devices.dtype\n    url = os.environ.get('SD_REMOTE_T5', None)\n    if url is None:\n        errors.log.error('Remote-TE: url is not set')\n        return None\n    try:\n        t0 = time.time()\n        response = requests.post(\n            url=url,\n            headers={ \"Content-Type\": \"application/json\" },\n            json=prompt,\n            timeout=300,\n        )\n        t1 = time.time()\n        shape = json.loads(response.headers[\"shape\"])\n        buffer = bytearray(response.content)\n        tensor = torch.frombuffer(buffer, dtype=dtype).reshape(shape)\n        errors.log.debug(f'Remote-TE: url=\"{url}\" prompt=\"{prompt}\" shape={shape} time={t1-t0:.3f}')\n        return tensor.to(device=device, dtype=dtype)\n    except Exception as e:\n        errors.log.error(f'Remote-TE: {e}')\n        errors.display(e, 'remote-te')\n        return None\n"
  },
  {
    "path": "modules/sd_unet.py",
    "content": "import os\nfrom modules import shared, devices, files_cache, sd_models, model_quant\n\n\nunet_dict = {}\nloaded_unet = None\nfailed_unet = []\ndebug = os.environ.get('SD_LOAD_DEBUG', None) is not None\n\n\ndit_models = ['Flux', 'StableDiffusion3', 'HiDream', 'Lumina2', 'Chroma', 'Wan', 'Qwen']\n\n\ndef load_unet_sdxl_nunchaku(repo_id):\n    try:\n        from nunchaku.models.unets.unet_sdxl import NunchakuSDXLUNet2DConditionModel\n    except Exception:\n        shared.log.error(f'Load module: quant=Nunchaku module=unet repo=\"{repo_id}\" low nunchaku version')\n        return None\n    if 'turbo' in repo_id.lower():\n        nunchaku_repo = 'nunchaku-tech/nunchaku-sdxl-turbo/svdq-int4_r32-sdxl-turbo.safetensors'\n    else:\n        nunchaku_repo = 'nunchaku-tech/nunchaku-sdxl/svdq-int4_r32-sdxl.safetensors'\n\n    shared.log.debug(f'Load module: quant=Nunchaku module=unet repo=\"{nunchaku_repo}\" offload={shared.opts.nunchaku_offload}')\n    unet = NunchakuSDXLUNet2DConditionModel.from_pretrained(\n        nunchaku_repo,\n        offload=shared.opts.nunchaku_offload,\n        torch_dtype=devices.dtype,\n        cache_dir=shared.opts.hfcache_dir,\n    )\n    unet.quantization_method = 'SVDQuant'\n    return unet\n\n\ndef load_unet(model, repo_id:str=None):\n    global loaded_unet # pylint: disable=global-statement\n\n    if (\"StableDiffusionXLPipeline\" in model.__class__.__name__) and (('stable-diffusion-xl-base' in repo_id) or ('sdxl-turbo' in repo_id)):\n        if model_quant.check_nunchaku('Model'):\n            unet = load_unet_sdxl_nunchaku(repo_id)\n            if unet is not None:\n                model.unet = unet\n                return\n\n    if shared.opts.sd_unet == 'Default' or shared.opts.sd_unet == 'None':\n        return\n\n    if shared.opts.sd_unet not in list(unet_dict):\n        shared.log.error(f'Load module: type=UNet not found: {shared.opts.sd_unet}')\n        return\n\n    config_file = os.path.splitext(unet_dict[shared.opts.sd_unet])[0] + '.json'\n    if os.path.exists(config_file):\n        config = shared.readfile(config_file, as_type=\"dict\")\n    else:\n        config = None\n        config_file = 'default'\n\n    try:\n        if shared.opts.sd_unet == loaded_unet or shared.opts.sd_unet in failed_unet:\n            pass\n        elif \"StableCascade\" in model.__class__.__name__:\n            from pipelines.model_stablecascade import load_prior\n            prior_unet, prior_text_encoder = load_prior(unet_dict[shared.opts.sd_unet], config_file=config_file)\n            loaded_unet = shared.opts.sd_unet\n            if prior_unet is not None:\n                model.prior_pipe.prior = None # Prevent OOM\n                model.prior_pipe.prior = prior_unet.to(devices.device, dtype=devices.dtype_unet)\n            if prior_text_encoder is not None:\n                model.prior_pipe.text_encoder = None # Prevent OOM\n                model.prior_pipe.text_encoder = prior_text_encoder.to(devices.device, dtype=devices.dtype)\n        elif any([m in model.__class__.__name__ for m in dit_models]) or hasattr(model, 'transformer'): # noqa: C419 # pylint: disable=use-a-generator\n            loaded_unet = shared.opts.sd_unet\n            sd_models.load_diffuser() # TODO model load: force-reloading entire model as loading transformers only leads to massive memory usage\n        else:\n            if not hasattr(model, 'unet') or model.unet is None:\n                shared.log.error('Load module: type=UNET not found in current model')\n                return\n            shared.log.info(f'Load module: type=UNet name=\"{shared.opts.sd_unet}\" file=\"{unet_dict[shared.opts.sd_unet]}\" config=\"{config_file}\"')\n            from diffusers import UNet2DConditionModel\n            from safetensors.torch import load_file\n            unet = UNet2DConditionModel.from_config(model.unet.config if config is None else config).to(devices.device, devices.dtype)\n            state_dict = load_file(unet_dict[shared.opts.sd_unet])\n            unet.load_state_dict(state_dict)\n            model.unet = unet.to(devices.device, devices.dtype_unet)\n    except Exception as e:\n        shared.log.error(f'Failed to load UNet model: {e}')\n        if debug:\n            from modules import errors\n            errors.display(e, 'UNet load:')\n        return\n    devices.torch_gc()\n\n\ndef refresh_unet_list():\n    unet_dict.clear()\n    for file in files_cache.list_files(shared.opts.unet_dir, ext_filter=[\".safetensors\", \".gguf\", \".pth\"]):\n        basename = os.path.basename(file)\n        name = os.path.splitext(basename)[0] if \".safetensors\" in basename else basename\n        unet_dict[name] = file\n    shared.log.info(f'Available UNets: path=\"{shared.opts.unet_dir}\" items={len(unet_dict)}')\n"
  },
  {
    "path": "modules/sd_vae.py",
    "content": "import os\nimport glob\nimport torch\nfrom modules import shared, errors, paths, devices, sd_models, sd_detect\n\n\nvae_ignore_keys = {\"model_ema.decay\", \"model_ema.num_updates\"}\nvae_dict = {}\nbase_vae = None\nloaded_vae_file = None\ncheckpoint_info = None\nvae_path = os.path.abspath(os.path.join(paths.models_path, 'VAE'))\ndebug = os.environ.get('SD_VAE_DEBUG', None) is not None\nunspecified = object()\nvae_scale_override = {\n    'WanPipeline': 16,\n    'ChronoEditPipeline': 16,\n}\n\n\ndef get_vae_scale_factor(model=None):\n    if not shared.sd_loaded:\n        vae_scale_factor = 8\n        return vae_scale_factor\n    patch_size = 1\n    if model is None:\n        model = shared.sd_model\n    if model is None:\n        vae_scale_factor = 8\n    elif model.__class__.__name__ in vae_scale_override:\n        vae_scale_factor = vae_scale_override[model.__class__.__name__]\n    elif hasattr(model, 'vae_scale_factor_spatial'):\n        vae_scale_factor = model.vae_scale_factor_spatial\n    elif hasattr(model, 'vae_scale_factor'):\n        vae_scale_factor = model.vae_scale_factor\n    elif hasattr(model, 'pipe') and hasattr(model.pipe, 'vae_scale_factor'):\n        vae_scale_factor = model.pipe.vae_scale_factor\n    elif hasattr(model, 'config') and hasattr(model.config, 'vae_scale_factor'):\n        vae_scale_factor = model.config.vae_scale_factor\n    else:\n        # shared.log.warning(f'VAE: cls={model.__class__.__name__ if model else \"None\"} scale=unknown')\n        vae_scale_factor = 8\n    if hasattr(model, 'patch_size'):\n        patch_size = model.patch_size\n    if debug:\n        shared.log.trace(f'VAE: cls={model.__class__.__name__ if model else \"None\"} scale={vae_scale_factor} patch={patch_size}')\n    return vae_scale_factor * patch_size\n\n\ndef load_vae_dict(filename):\n    vae_ckpt = sd_models.read_state_dict(filename, what='vae')\n    vae_dict_1 = {k: v for k, v in vae_ckpt.items() if k[0:4] != \"loss\" and k not in vae_ignore_keys}\n    return vae_dict_1\n\n\ndef get_filename(filepath):\n    if filepath.endswith(\".json\"):\n        return os.path.basename(os.path.dirname(filepath))\n    else:\n        return os.path.basename(filepath)\n\n\ndef refresh_vae_list():\n    global vae_path # pylint: disable=global-statement\n    vae_path = shared.opts.vae_dir\n    vae_dict.clear()\n    vae_paths = []\n    if sd_models.model_path is not None and os.path.isdir(sd_models.model_path):\n        vae_paths += [os.path.join(sd_models.model_path, 'VAE', '**/*.vae.safetensors')]\n    if shared.opts.ckpt_dir is not None and os.path.isdir(shared.opts.ckpt_dir):\n        vae_paths += [os.path.join(shared.opts.ckpt_dir, '**/*.vae.safetensors')]\n    if shared.opts.vae_dir is not None and os.path.isdir(shared.opts.vae_dir):\n        vae_paths += [os.path.join(shared.opts.vae_dir, '**/*.safetensors')]\n    vae_paths += [\n        os.path.join(sd_models.model_path, 'VAE', '**/*.json'),\n        os.path.join(shared.opts.vae_dir, '**/*.json'),\n    ]\n    candidates = []\n    for path in vae_paths:\n        candidates += glob.iglob(path, recursive=True)\n    candidates = [os.path.abspath(path) for path in candidates]\n    for filepath in candidates:\n        name = get_filename(filepath)\n        if name == 'VAE':\n            continue\n        if filepath.endswith(\".json\"):\n            vae_dict[name] = os.path.dirname(filepath)\n        else:\n            vae_dict[name] = filepath\n    shared.log.info(f'Available VAEs: path=\"{vae_path}\" items={len(vae_dict)}')\n    return vae_dict\n\n\ndef find_vae_near_checkpoint(checkpoint_file):\n    checkpoint_path = os.path.splitext(checkpoint_file)[0]\n    for vae_location in [f\"{checkpoint_path}.vae.pt\", f\"{checkpoint_path}.vae.ckpt\", f\"{checkpoint_path}.vae.safetensors\"]:\n        if os.path.isfile(vae_location):\n            return vae_location\n    return None\n\n\ndef resolve_vae(checkpoint_file):\n    if shared.opts.sd_vae == 'TAESD':\n        return None, None\n    if shared.cmd_opts.vae is not None: # 1st\n        return shared.cmd_opts.vae, 'forced'\n    if shared.opts.sd_vae == \"Default\": # 2nd\n        return None, None\n    vae_near_checkpoint = find_vae_near_checkpoint(checkpoint_file)\n    if vae_near_checkpoint is not None: # 3rd\n        return vae_near_checkpoint, 'near-checkpoint'\n    if shared.opts.sd_vae == \"Automatic\": # 4th\n        basename = os.path.splitext(os.path.basename(checkpoint_file))[0]\n        if vae_dict.get(basename, None) is not None:\n            return vae_dict[basename], 'automatic'\n    else:\n        vae_from_options = vae_dict.get(shared.opts.sd_vae, None) # 5th\n        if vae_from_options is not None:\n            return vae_from_options, 'settings'\n        vae_from_options = vae_dict.get(shared.opts.sd_vae + '.safetensors', None) # 6th\n        if vae_from_options is not None:\n            return vae_from_options, 'settings'\n        shared.log.warning(f\"VAE not found: {shared.opts.sd_vae}\")\n    return None, None\n\n\ndef apply_vae_config(model_file, vae_file, sd_model):\n    def get_vae_config():\n        config_file = os.path.join(paths.sd_configs_path, os.path.splitext(os.path.basename(model_file))[0] + '_vae.json')\n        if config_file is not None and os.path.exists(config_file):\n            return shared.readfile(config_file, as_type=\"dict\")\n        config_file = os.path.join(paths.sd_configs_path, os.path.splitext(os.path.basename(vae_file))[0] + '.json') if vae_file else None\n        if config_file is not None and os.path.exists(config_file):\n            return shared.readfile(config_file, as_type=\"dict\")\n        config_file = os.path.join(paths.sd_configs_path, shared.sd_model_type, 'vae', 'config.json')\n        if config_file is not None and os.path.exists(config_file):\n            return shared.readfile(config_file, as_type=\"dict\")\n        return {}\n\n    if hasattr(sd_model, 'vae') and hasattr(sd_model.vae, 'config'):\n        config = get_vae_config()\n        for k, v in config.items():\n            if k in sd_model.vae.config and not k.startswith('_'):\n                sd_model.vae.config[k] = v\n\n\ndef load_vae_diffusers(model_file, vae_file=None, vae_source=\"unknown-source\"):\n    if vae_file is None:\n        return None\n    if not os.path.exists(vae_file):\n        shared.log.error(f'VAE not found: model{vae_file}')\n        return None\n    diffusers_load_config = {\n        \"low_cpu_mem_usage\": False,\n        \"torch_dtype\": devices.dtype_vae,\n        \"use_safetensors\": True,\n    }\n    if shared.opts.diffusers_vae_load_variant == 'default':\n        if devices.dtype_vae == torch.float16:\n            diffusers_load_config['variant'] = 'fp16'\n    elif shared.opts.diffusers_vae_load_variant == 'fp32':\n        pass\n    else:\n        diffusers_load_config['variant'] = shared.opts.diffusers_vae_load_variant\n    if shared.opts.diffusers_vae_upcast != 'default':\n        diffusers_load_config['force_upcast'] = True if shared.opts.diffusers_vae_upcast == 'true' else False\n    _pipeline, model_type = sd_detect.detect_pipeline(model_file, 'vae')\n    vae_config = sd_detect.get_load_config(model_file, model_type, config_type='json')\n    if vae_config is not None:\n        diffusers_load_config['config'] = os.path.join(vae_config, 'vae')\n    shared.log.info(f'Load module: type=VAE model=\"{vae_file}\" source={vae_source} config={diffusers_load_config}')\n    try:\n        import diffusers\n        if os.path.isfile(vae_file):\n            if os.path.getsize(vae_file) > 1310944880: # 1.3GB\n                vae = diffusers.ConsistencyDecoderVAE.from_pretrained('openai/consistency-decoder', **diffusers_load_config) # consistency decoder does not have from single file, so we'll just download it once more\n            elif os.path.getsize(vae_file) < 10000000: # 10MB\n                vae = diffusers.AutoencoderTiny.from_single_file(vae_file, **diffusers_load_config)\n            else:\n                vae = diffusers.AutoencoderKL.from_single_file(vae_file, **diffusers_load_config)\n                if getattr(vae.config, 'scaling_factor', 0) == 0.18125 and shared.sd_model_type == 'sdxl':\n                    vae.config.scaling_factor = 0.13025\n                    shared.log.debug('Setting model: component=VAE fix scaling factor')\n            vae = vae.to(devices.dtype_vae)\n        else:\n            if 'consistency-decoder' in vae_file:\n                vae = diffusers.ConsistencyDecoderVAE.from_pretrained(vae_file, **diffusers_load_config)\n            else:\n                vae = diffusers.AutoencoderKL.from_pretrained(vae_file, **diffusers_load_config)\n        global loaded_vae_file # pylint: disable=global-statement\n        loaded_vae_file = os.path.basename(vae_file)\n        # shared.log.debug(f'Diffusers VAE config: {vae.config}')\n        if shared.opts.diffusers_offload_mode == 'none':\n            sd_models.move_model(vae, devices.device)\n        return vae\n    except Exception as e:\n        shared.log.error(f\"Load VAE failed: model={vae_file} {e}\")\n        if debug:\n            errors.display(e, 'VAE')\n    return None\n\n\ndef reload_vae_weights(sd_model=None, vae_file=unspecified):\n    if not sd_model:\n        sd_model = shared.sd_model\n    if sd_model is None:\n        return None\n    global checkpoint_info # pylint: disable=global-statement\n    checkpoint_info = sd_model.sd_checkpoint_info\n    checkpoint_file = checkpoint_info.filename\n    if vae_file == unspecified:\n        vae_file, vae_source = resolve_vae(checkpoint_file)\n    else:\n        vae_source = \"function-argument\"\n    if vae_file is None or vae_file == 'None':\n        if hasattr(sd_model, 'original_vae'):\n            sd_models.set_diffuser_options(sd_model, vae=sd_model.original_vae, op='vae')\n            shared.log.info(\"VAE restored\")\n            return None\n    if loaded_vae_file == vae_file:\n        return None\n\n    if hasattr(sd_model, \"vae\") and getattr(sd_model, \"sd_checkpoint_info\", None) is not None:\n        vae = load_vae_diffusers(sd_model.sd_checkpoint_info.filename, vae_file, vae_source)\n        if vae is not None:\n            if not hasattr(sd_model, 'original_vae'):\n                sd_model.original_vae = sd_model.vae\n                sd_models.move_model(sd_model.original_vae, devices.cpu)\n            sd_models.set_diffuser_options(sd_model, vae=vae, op='vae')\n            apply_vae_config(sd_model.sd_checkpoint_info.filename, vae_file, sd_model)\n\n    if not shared.cmd_opts.lowvram and not shared.cmd_opts.medvram:\n        sd_models.move_model(sd_model, devices.device)\n    return sd_model\n"
  },
  {
    "path": "modules/sdnq/__init__.py",
    "content": "from .quantizer import QuantizationMethod, SDNQConfig, SDNQQuantizer, sdnq_post_load_quant, apply_sdnq_to_module, sdnq_quantize_layer\nfrom .loader import save_sdnq_model, load_sdnq_model\nfrom .common import sdnq_version\n\n__version__ = sdnq_version\n\n__all__ = [\n    \"QuantizationMethod\",\n    \"SDNQConfig\",\n    \"SDNQQuantizer\",\n    \"apply_sdnq_to_module\",\n    \"load_sdnq_model\",\n    \"save_sdnq_model\",\n    \"sdnq_post_load_quant\",\n    \"sdnq_quantize_layer\",\n]\n"
  },
  {
    "path": "modules/sdnq/common.py",
    "content": "# pylint: disable=redefined-builtin,no-member,protected-access\n\nimport os\nimport torch\n\nfrom modules import shared, devices\n\nsdnq_version = \"0.1.5\"\n\ndtype_dict = {\n    ### Integers\n    \"int32\": {\"min\": -2147483648, \"max\": 2147483647, \"num_bits\": 32, \"sign\": 1, \"exponent\": 0, \"mantissa\": 31, \"target_dtype\": torch.int32, \"torch_dtype\": torch.int32, \"storage_dtype\": torch.int32, \"is_unsigned\": False, \"is_integer\": True, \"is_packed\": False},\n    \"int16\": {\"min\": -32768, \"max\": 32767, \"num_bits\": 16, \"sign\": 1, \"exponent\": 0, \"mantissa\": 15, \"target_dtype\": torch.int16, \"torch_dtype\": torch.int16, \"storage_dtype\": torch.int16, \"is_unsigned\": False, \"is_integer\": True, \"is_packed\": False},\n    \"int8\": {\"min\": -128, \"max\": 127, \"num_bits\": 8, \"sign\": 1, \"exponent\": 0, \"mantissa\": 7, \"target_dtype\": torch.int8, \"torch_dtype\": torch.int8, \"storage_dtype\": torch.int8, \"is_unsigned\": False, \"is_integer\": True, \"is_packed\": False},\n    ### Custom Integers\n    \"int7\": {\"min\": -64, \"max\": 63, \"num_bits\": 7, \"sign\": 1, \"exponent\": 0, \"mantissa\": 6, \"target_dtype\": \"int7\", \"torch_dtype\": torch.int8, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": True, \"is_packed\": True},\n    \"int6\": {\"min\": -32, \"max\": 31, \"num_bits\": 6, \"sign\": 1, \"exponent\": 0, \"mantissa\": 5, \"target_dtype\": \"int6\", \"torch_dtype\": torch.int8, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": True, \"is_packed\": True},\n    \"int5\": {\"min\": -16, \"max\": 15, \"num_bits\": 5, \"sign\": 1, \"exponent\": 0, \"mantissa\": 4, \"target_dtype\": \"int5\", \"torch_dtype\": torch.int8, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": True, \"is_packed\": True},\n    \"int4\": {\"min\": -8, \"max\": 7, \"num_bits\": 4, \"sign\": 1, \"exponent\": 0, \"mantissa\": 3, \"target_dtype\": \"int4\", \"torch_dtype\": torch.int8, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": True, \"is_packed\": True},\n    \"int3\": {\"min\": -4, \"max\": 3, \"num_bits\": 3, \"sign\": 1, \"exponent\": 0, \"mantissa\": 2, \"target_dtype\": \"int3\", \"torch_dtype\": torch.int8, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": True, \"is_packed\": True},\n    \"int2\": {\"min\": -2, \"max\": 1, \"num_bits\": 2, \"sign\": 1, \"exponent\": 0, \"mantissa\": 1, \"target_dtype\": \"int2\", \"torch_dtype\": torch.int8, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": True, \"is_packed\": True},\n    ### Unsigned Integers\n    \"uint32\": {\"min\": 0, \"max\": 4294967295, \"num_bits\": 32, \"sign\": 0, \"exponent\": 0, \"mantissa\": 32, \"target_dtype\": torch.uint32, \"torch_dtype\": torch.uint32, \"storage_dtype\": torch.uint32, \"is_unsigned\": True, \"is_integer\": True, \"is_packed\": False},\n    \"uint16\": {\"min\": 0, \"max\": 65535, \"num_bits\": 16, \"sign\": 0, \"exponent\": 0, \"mantissa\": 16, \"target_dtype\": torch.uint16, \"torch_dtype\": torch.uint16, \"storage_dtype\": torch.uint16, \"is_unsigned\": True, \"is_integer\": True, \"is_packed\": False},\n    \"uint8\": {\"min\": 0, \"max\": 255, \"num_bits\": 8, \"sign\": 0, \"exponent\": 0, \"mantissa\": 8, \"target_dtype\": torch.uint8, \"torch_dtype\": torch.uint8, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": True, \"is_packed\": False},\n    ### Custom Unsigned Integers\n    \"uint7\": {\"min\": 0, \"max\": 127, \"num_bits\": 7, \"sign\": 0, \"exponent\": 0, \"mantissa\": 7, \"target_dtype\": \"uint7\", \"torch_dtype\": torch.uint8, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": True, \"is_packed\": True},\n    \"uint6\": {\"min\": 0, \"max\": 63, \"num_bits\": 6, \"sign\": 0, \"exponent\": 0, \"mantissa\": 6, \"target_dtype\": \"uint6\", \"torch_dtype\": torch.uint8, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": True, \"is_packed\": True},\n    \"uint5\": {\"min\": 0, \"max\": 31, \"num_bits\": 5, \"sign\": 0, \"exponent\": 0, \"mantissa\": 5, \"target_dtype\": \"uint5\", \"torch_dtype\": torch.uint8, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": True, \"is_packed\": True},\n    \"uint4\": {\"min\": 0, \"max\": 15, \"num_bits\": 4, \"sign\": 0, \"exponent\": 0, \"mantissa\": 4, \"target_dtype\": \"uint4\", \"torch_dtype\": torch.uint8, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": True, \"is_packed\": True},\n    \"uint3\": {\"min\": 0, \"max\": 7, \"num_bits\": 3, \"sign\": 0, \"exponent\": 0, \"mantissa\": 3, \"target_dtype\": \"uint3\", \"torch_dtype\": torch.uint8, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": True, \"is_packed\": True},\n    \"uint2\": {\"min\": 0, \"max\": 3, \"num_bits\": 2, \"sign\": 0, \"exponent\": 0, \"mantissa\": 2, \"target_dtype\": \"uint2\", \"torch_dtype\": torch.uint8, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": True, \"is_packed\": True},\n    \"uint1\": {\"min\": 0, \"max\": 1, \"num_bits\": 1, \"sign\": 0, \"exponent\": 0, \"mantissa\": 1, \"target_dtype\": torch.bool, \"torch_dtype\": torch.bool, \"storage_dtype\": torch.bool, \"is_unsigned\": True, \"is_integer\": True, \"is_packed\": True},\n    ### Floats\n    \"float32\": {\"min\": -3.40282e+38, \"max\": 3.40282e+38, \"num_bits\": 32, \"sign\": 1, \"exponent\": 8, \"mantissa\": 23, \"target_dtype\": torch.float32, \"torch_dtype\": torch.float32, \"storage_dtype\": torch.float32, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": False},\n    \"bfloat16\": {\"min\": -3.38953e+38, \"max\": 3.38953e+38, \"num_bits\": 16, \"sign\": 1, \"exponent\": 8, \"mantissa\": 7, \"target_dtype\": torch.bfloat16, \"torch_dtype\": torch.bfloat16, \"storage_dtype\": torch.bfloat16, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": False},\n    \"float16\": {\"min\": -65504.0, \"max\": 65504.0, \"num_bits\": 16, \"sign\": 1, \"exponent\": 5, \"mantissa\": 10, \"target_dtype\": torch.float16, \"torch_dtype\": torch.float16, \"storage_dtype\": torch.float16, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": False},\n    \"float8_e4m3fn\": {\"min\": -448.0, \"max\": 448.0, \"num_bits\": 8, \"sign\": 1, \"exponent\": 4, \"mantissa\": 3, \"target_dtype\": torch.float8_e4m3fn, \"torch_dtype\": torch.float8_e4m3fn, \"storage_dtype\": torch.float8_e4m3fn, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": False},\n    \"float8_e5m2\": {\"min\": -57344.0, \"max\": 57344.0, \"num_bits\": 8, \"sign\": 1, \"exponent\": 5, \"mantissa\": 2, \"target_dtype\": torch.float8_e5m2, \"torch_dtype\": torch.float8_e5m2, \"storage_dtype\": torch.float8_e5m2, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": False},\n    ### Custom Floats\n    \"float16_e1m14fn\": {\"min\": -3.9998779296875, \"max\": 3.9998779296875, \"num_bits\": 16, \"sign\": 1, \"exponent\": 1, \"mantissa\": 14, \"min_normal\": 1.00006103515625, \"target_dtype\": torch.float16, \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint16, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": True},\n    \"float16_e2m13fn\": {\"min\": -7.99951171875, \"max\": 7.99951171875, \"num_bits\": 16, \"sign\": 1, \"exponent\": 2, \"mantissa\": 13, \"min_normal\": 0.50006103515625, \"target_dtype\": torch.float16, \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint16, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": True},\n    \"float16_e3m12fn\": {\"min\": -31.99609375, \"max\": 31.99609375, \"num_bits\": 16, \"sign\": 1, \"exponent\": 3, \"mantissa\": 12, \"min_normal\": 0.125030517578125, \"target_dtype\": torch.float16, \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint16, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": True},\n    \"float16_e4m11fn\": {\"min\": -511.875, \"max\": 511.875, \"num_bits\": 16, \"sign\": 1, \"exponent\": 4, \"mantissa\": 11, \"min_normal\": 0.007816314697265625, \"target_dtype\": torch.float16, \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint16, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": True},\n    # float16_e5m10 is native in PyTorch\n    \"float8_e1m6fn\": {\"min\": -3.96875, \"max\": 3.96875, \"num_bits\": 8, \"sign\": 1, \"exponent\": 1, \"mantissa\": 6, \"min_normal\": 1.015625, \"target_dtype\": \"fp8\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": True},\n    \"float8_e2m5fn\": {\"min\": -7.875, \"max\": 7.875, \"num_bits\": 8, \"sign\": 1, \"exponent\": 2, \"mantissa\": 5, \"min_normal\": 0.515625, \"target_dtype\": \"fp8\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": True},\n    \"float8_e3m4fn\": {\"min\": -31.0, \"max\": 31.0, \"num_bits\": 8, \"sign\": 1, \"exponent\": 3, \"mantissa\": 4, \"min_normal\": 0.1328125, \"target_dtype\": \"fp8\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": True},\n    # float8_e4m3fn is native in PyTorch\n    # float8_e5m2fn is native in PyTorch\n    \"float7_e1m5fn\": {\"min\": -3.9375, \"max\": 3.9375, \"num_bits\": 7, \"sign\": 1, \"exponent\": 1, \"mantissa\": 5, \"min_normal\": 1.03125, \"target_dtype\": \"fp7\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": True},\n    \"float7_e2m4fn\": {\"min\": -7.75, \"max\": 7.75, \"num_bits\": 7, \"sign\": 1, \"exponent\": 2, \"mantissa\": 4, \"min_normal\": 0.53125, \"target_dtype\": \"fp7\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": True},\n    \"float7_e3m3fn\": {\"min\": -30.0, \"max\": 30.0, \"num_bits\": 7, \"sign\": 1, \"exponent\": 3, \"mantissa\": 3, \"min_normal\": 0.140625, \"target_dtype\": \"fp7\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": True},\n    \"float7_e4m2fn\": {\"min\": -448.0, \"max\": 448.0, \"num_bits\": 7, \"sign\": 1, \"exponent\": 4, \"mantissa\": 2, \"min_normal\": 0.009765625, \"target_dtype\": \"fp7\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": True},\n    \"float7_e5m1fn\": {\"min\": -98304.0, \"max\": 98304.0, \"num_bits\": 7, \"sign\": 1, \"exponent\": 5, \"mantissa\": 1, \"min_normal\": 4.57763671875e-05, \"target_dtype\": \"fp7\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": True},\n    #\n    \"float6_e1m4fn\": {\"min\": -3.875, \"max\": 3.875, \"num_bits\": 6, \"sign\": 1, \"exponent\": 1, \"mantissa\": 4, \"min_normal\": 1.0625, \"target_dtype\": \"fp6\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": True},\n    \"float6_e2m3fn\": {\"min\": -7.5, \"max\": 7.5, \"num_bits\": 6, \"sign\": 1, \"exponent\": 2, \"mantissa\": 3, \"min_normal\": 0.5625, \"target_dtype\": \"fp6\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": True},\n    \"float6_e3m2fn\": {\"min\": -28.0, \"max\": 28.0, \"num_bits\": 6, \"sign\": 1, \"exponent\": 3, \"mantissa\": 2, \"min_normal\": 0.15625, \"target_dtype\": \"fp6\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": True},\n    \"float6_e4m1fn\": {\"min\": -384.0, \"max\": 384.0, \"num_bits\": 6, \"sign\": 1, \"exponent\": 4, \"mantissa\": 1, \"min_normal\": 0.01171875, \"target_dtype\": \"fp6\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": True},\n    \"float6_e5m0fn\": {\"min\": -65536.0, \"max\": 65536.0, \"num_bits\": 6, \"sign\": 1, \"exponent\": 5, \"mantissa\": 0, \"min_normal\": 6.103515625e-05, \"target_dtype\": \"fp6\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": True},\n    #\n    \"float5_e1m3fn\": {\"min\": -3.75, \"max\": 3.75, \"num_bits\": 5, \"sign\": 1, \"exponent\": 1, \"mantissa\": 3, \"min_normal\": 1.125, \"target_dtype\": \"fp5\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": True},\n    \"float5_e2m2fn\": {\"min\": -7.0, \"max\": 7.0, \"num_bits\": 5, \"sign\": 1, \"exponent\": 2, \"mantissa\": 2, \"min_normal\": 0.625, \"target_dtype\": \"fp5\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": True},\n    \"float5_e3m1fn\": {\"min\": -24.0, \"max\": 24.0, \"num_bits\": 5, \"sign\": 1, \"exponent\": 3, \"mantissa\": 1, \"min_normal\": 0.1875, \"target_dtype\": \"fp5\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": True},\n    \"float5_e4m0fn\": {\"min\": -256.0, \"max\": 256.0, \"num_bits\": 5, \"sign\": 1, \"exponent\": 4, \"mantissa\": 0, \"min_normal\": 0.015625, \"target_dtype\": \"fp5\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": True},\n    #\n    \"float4_e1m2fn\": {\"min\": -3.5, \"max\": 3.5, \"num_bits\": 4, \"sign\": 1, \"exponent\": 1, \"mantissa\": 2, \"min_normal\": 1.25, \"target_dtype\": \"fp4\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": True},\n    \"float4_e2m1fn\": {\"min\": -6.0, \"max\": 6.0, \"num_bits\": 4, \"sign\": 1, \"exponent\": 2, \"mantissa\": 1, \"min_normal\": 0.75, \"target_dtype\": \"fp4\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": True},\n    \"float4_e3m0fn\": {\"min\": -16.0, \"max\": 16.0, \"num_bits\": 4, \"sign\": 1, \"exponent\": 3, \"mantissa\": 0, \"min_normal\": 0.25, \"target_dtype\": \"fp4\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": True},\n    #\n    \"float3_e1m1fn\": {\"min\": -3.0, \"max\": 3.0, \"num_bits\": 3, \"sign\": 1, \"exponent\": 1, \"mantissa\": 1, \"min_normal\": 1.5, \"target_dtype\": \"fp3\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": True},\n    \"float3_e2m0fn\": {\"min\": -4.0, \"max\": 4.0, \"num_bits\": 3, \"sign\": 1, \"exponent\": 2, \"mantissa\": 0, \"min_normal\": 1.0, \"target_dtype\": \"fp3\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": True},\n    #\n    \"float2_e1m0fn\": {\"min\": -2.0, \"max\": 2.0, \"num_bits\": 2, \"sign\": 1, \"exponent\": 1, \"mantissa\": 0, \"min_normal\": 2.0, \"target_dtype\": \"fp2\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": True},\n    ### Custom Usigned Floats\n    \"float16_e1m15fnu\": {\"min\": 0, \"max\": 3.99993896484375, \"num_bits\": 16, \"sign\": 0, \"exponent\": 1, \"mantissa\": 15, \"min_normal\": 1.000030517578125, \"target_dtype\": torch.float16, \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint16, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    \"float16_e2m14fnu\": {\"min\": 0, \"max\": 7.999755859375, \"num_bits\": 16, \"sign\": 0, \"exponent\": 2, \"mantissa\": 14, \"min_normal\": 0.500030517578125, \"target_dtype\": torch.float16, \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint16, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    \"float16_e3m13fnu\": {\"min\": 0, \"max\": 31.998046875, \"num_bits\": 16, \"sign\": 0, \"exponent\": 3, \"mantissa\": 13, \"min_normal\": 0.1250152587890625, \"target_dtype\": torch.float16, \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint16, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    \"float16_e4m12fnu\": {\"min\": 0, \"max\": 511.9375, \"num_bits\": 16, \"sign\": 0, \"exponent\": 4, \"mantissa\": 12, \"min_normal\": 0.007814407348632812, \"target_dtype\": torch.float16, \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint16, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    \"float16_e5m11fnu\": {\"min\": 0, \"max\": 131040.0, \"num_bits\": 16, \"sign\": 0, \"exponent\": 5, \"mantissa\": 11, \"min_normal\": 3.053247928619385e-05, \"target_dtype\": torch.float16, \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint16, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    #\n    \"float8_e1m7fnu\": {\"min\": 0, \"max\": 3.984375, \"num_bits\": 8, \"sign\": 0, \"exponent\": 1, \"mantissa\": 7, \"min_normal\": 1.0078125, \"target_dtype\": \"fp8\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    \"float8_e2m6fnu\": {\"min\": 0, \"max\": 7.9375, \"num_bits\": 8, \"sign\": 0, \"exponent\": 2, \"mantissa\": 6, \"min_normal\": 0.5078125, \"target_dtype\": \"fp8\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    \"float8_e3m5fnu\": {\"min\": 0, \"max\": 31.5, \"num_bits\": 8, \"sign\": 0, \"exponent\": 3, \"mantissa\": 5, \"min_normal\": 0.12890625, \"target_dtype\": \"fp8\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    \"float8_e4m4fnu\": {\"min\": 0, \"max\": 496.0, \"num_bits\": 8, \"sign\": 0, \"exponent\": 4, \"mantissa\": 4, \"min_normal\": 0.00830078125, \"target_dtype\": \"fp8\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    \"float8_e5m3fnu\": {\"min\": 0, \"max\": 122880.0, \"num_bits\": 8, \"sign\": 0, \"exponent\": 5, \"mantissa\": 3, \"min_normal\": 3.4332275390625e-05, \"target_dtype\": \"fp8\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    #\n    \"float7_e1m6fnu\": {\"min\": 0, \"max\": 3.96875, \"num_bits\": 7, \"sign\": 0, \"exponent\": 1, \"mantissa\": 6, \"min_normal\": 1.015625, \"target_dtype\": \"fp7\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    \"float7_e2m5fnu\": {\"min\": 0, \"max\": 7.875, \"num_bits\": 7, \"sign\": 0, \"exponent\": 2, \"mantissa\": 5, \"min_normal\": 0.515625, \"target_dtype\": \"fp7\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    \"float7_e3m4fnu\": {\"min\": 0, \"max\": 31.0, \"num_bits\": 7, \"sign\": 0, \"exponent\": 3, \"mantissa\": 4, \"min_normal\": 0.1328125, \"target_dtype\": \"fp7\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    \"float7_e4m3fnu\": {\"min\": 0, \"max\": 480.0, \"num_bits\": 7, \"sign\": 0, \"exponent\": 4, \"mantissa\": 3, \"min_normal\": 0.0087890625, \"target_dtype\": \"fp7\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    \"float7_e5m2fnu\": {\"min\": 0, \"max\": 114688.0, \"num_bits\": 7, \"sign\": 0, \"exponent\": 5, \"mantissa\": 2, \"min_normal\": 3.814697265625e-05, \"target_dtype\": \"fp7\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    #\n    \"float6_e1m5fnu\": {\"min\": 0, \"max\": 3.9375, \"num_bits\": 6, \"sign\": 0, \"exponent\": 1, \"mantissa\": 5, \"min_normal\": 1.03125, \"target_dtype\": \"fp6\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    \"float6_e2m4fnu\": {\"min\": 0, \"max\": 7.75, \"num_bits\": 6, \"sign\": 0, \"exponent\": 2, \"mantissa\": 4, \"min_normal\": 0.53125, \"target_dtype\": \"fp6\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    \"float6_e3m3fnu\": {\"min\": 0, \"max\": 30.0, \"num_bits\": 6, \"sign\": 0, \"exponent\": 3, \"mantissa\": 3, \"min_normal\": 0.140625, \"target_dtype\": \"fp6\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    \"float6_e4m2fnu\": {\"min\": 0, \"max\": 448.0, \"num_bits\": 6, \"sign\": 0, \"exponent\": 4, \"mantissa\": 2, \"min_normal\": 0.009765625, \"target_dtype\": \"fp6\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    \"float6_e5m1fnu\": {\"min\": 0, \"max\": 98304.0, \"num_bits\": 6, \"sign\": 0, \"exponent\": 5, \"mantissa\": 1, \"min_normal\": 4.57763671875e-05, \"target_dtype\": \"fp6\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    #\n    \"float5_e1m4fnu\": {\"min\": 0, \"max\": 3.875, \"num_bits\": 5, \"sign\": 0, \"exponent\": 1, \"mantissa\": 4, \"min_normal\": 1.0625, \"target_dtype\": \"fp5\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    \"float5_e2m3fnu\": {\"min\": 0, \"max\": 7.5, \"num_bits\": 5, \"sign\": 0, \"exponent\": 2, \"mantissa\": 3, \"min_normal\": 0.5625, \"target_dtype\": \"fp5\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    \"float5_e3m2fnu\": {\"min\": 0, \"max\": 28.0, \"num_bits\": 5, \"sign\": 0, \"exponent\": 3, \"mantissa\": 2, \"min_normal\": 0.15625, \"target_dtype\": \"fp5\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    \"float5_e4m1fnu\": {\"min\": 0, \"max\": 384.0, \"num_bits\": 5, \"sign\": 0, \"exponent\": 4, \"mantissa\": 1, \"min_normal\": 0.01171875, \"target_dtype\": \"fp5\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    \"float5_e5m0fnu\": {\"min\": 0, \"max\": 65536.0, \"num_bits\": 5, \"sign\": 0, \"exponent\": 5, \"mantissa\": 0, \"min_normal\": 6.103515625e-05, \"target_dtype\": \"fp5\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    #\n    \"float4_e1m3fnu\": {\"min\": 0, \"max\": 3.75, \"num_bits\": 4, \"sign\": 0, \"exponent\": 1, \"mantissa\": 3, \"min_normal\": 1.125, \"target_dtype\": \"fp4\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    \"float4_e2m2fnu\": {\"min\": 0, \"max\": 7.0, \"num_bits\": 4, \"sign\": 0, \"exponent\": 2, \"mantissa\": 2, \"min_normal\": 0.625, \"target_dtype\": \"fp4\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    \"float4_e3m1fnu\": {\"min\": 0, \"max\": 24.0, \"num_bits\": 4, \"sign\": 0, \"exponent\": 3, \"mantissa\": 1, \"min_normal\": 0.1875, \"target_dtype\": \"fp4\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    \"float4_e4m0fnu\": {\"min\": 0, \"max\": 256.0, \"num_bits\": 4, \"sign\": 0, \"exponent\": 4, \"mantissa\": 0, \"min_normal\": 0.015625, \"target_dtype\": \"fp4\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    #\n    \"float3_e1m2fnu\": {\"min\": 0, \"max\": 3.5, \"num_bits\": 3, \"sign\": 0, \"exponent\": 1, \"mantissa\": 2, \"min_normal\": 1.25, \"target_dtype\": \"fp3\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    \"float3_e2m1fnu\": {\"min\": 0, \"max\": 6.0, \"num_bits\": 3, \"sign\": 0, \"exponent\": 2, \"mantissa\": 1, \"min_normal\": 0.75, \"target_dtype\": \"fp3\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    \"float3_e3m0fnu\": {\"min\": 0, \"max\": 16.0, \"num_bits\": 3, \"sign\": 0, \"exponent\": 3, \"mantissa\": 0, \"min_normal\": 0.25, \"target_dtype\": \"fp3\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    #\n    \"float2_e1m1fnu\": {\"min\": 0, \"max\": 3.0, \"num_bits\": 2, \"sign\": 0, \"exponent\": 1, \"mantissa\": 1, \"min_normal\": 1.5, \"target_dtype\": \"fp2\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    \"float2_e2m0fnu\": {\"min\": 0, \"max\": 4.0, \"num_bits\": 2, \"sign\": 0, \"exponent\": 2, \"mantissa\": 0, \"min_normal\": 1.0, \"target_dtype\": \"fp2\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n    #\n    \"float1_e1m0fnu\": {\"min\": 0, \"max\": 2.0, \"num_bits\": 1, \"sign\": 0, \"exponent\": 1, \"mantissa\": 0, \"min_normal\": 2.0, \"target_dtype\": \"fp1\", \"torch_dtype\": torch.float32, \"storage_dtype\": torch.uint8, \"is_unsigned\": True, \"is_integer\": False, \"is_packed\": True},\n}\n\ndtype_dict[\"fp32\"] = dtype_dict[\"float32\"]\ndtype_dict[\"bf16\"] = dtype_dict[\"bfloat16\"]\ndtype_dict[\"fp16\"] = dtype_dict[\"float16\"]\ndtype_dict[\"fp8\"] = dtype_dict[\"float8_e4m3fn\"]\ndtype_dict[\"fp7\"] = dtype_dict[\"float7_e3m3fn\"]\ndtype_dict[\"fp6\"] = dtype_dict[\"float6_e3m2fn\"]\ndtype_dict[\"fp5\"] = dtype_dict[\"float5_e2m2fn\"]\ndtype_dict[\"fp4\"] = dtype_dict[\"float4_e2m1fn\"]\ndtype_dict[\"fp3\"] = dtype_dict[\"float3_e1m1fn\"]\ndtype_dict[\"fp2\"] = dtype_dict[\"float2_e1m0fn\"]\ndtype_dict[\"fp1\"] = dtype_dict[\"float1_e1m0fnu\"]\ndtype_dict[\"bool\"] = dtype_dict[\"uint1\"]\ndtype_dict[\"int1\"] = dtype_dict[\"uint1\"]\n\ntorch_dtype_dict = {\n    torch.int32: \"int32\",\n    torch.int16: \"int16\",\n    torch.int8: \"int8\",\n    torch.uint32: \"uint32\",\n    torch.uint16: \"uint16\",\n    torch.uint8: \"uint8\",\n    torch.float32: \"float32\",\n    torch.bfloat16: \"bfloat16\",\n    torch.float16: \"float16\",\n    torch.float8_e4m3fn: \"float8_e4m3fn\",\n    torch.float8_e5m2: \"float8_e5m2\",\n}\n\nif hasattr(torch, \"float8_e4m3fnuz\"):\n    dtype_dict[\"float8_e4m3fnuz\"] = {\"min\": -240.0, \"max\": 240.0, \"num_bits\": 8, \"sign\": 1, \"exponent\": 4, \"mantissa\": 3, \"target_dtype\": \"fp8\", \"torch_dtype\": torch.float8_e4m3fnuz, \"storage_dtype\": torch.float8_e4m3fnuz, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": False}\n    torch_dtype_dict[torch.float8_e4m3fnuz] = \"float8_e4m3fnuz\"\nif hasattr(torch, \"float8_e5m2fnuz\"):\n    dtype_dict[\"float8_e5m2fnuz\"] = {\"min\": -57344.0, \"max\": 57344.0, \"num_bits\": 8, \"sign\": 1, \"exponent\": 5, \"mantissa\": 2, \"target_dtype\": \"fp8\", \"torch_dtype\": torch.float8_e5m2fnuz, \"storage_dtype\": torch.float8_e5m2fnuz, \"is_unsigned\": False, \"is_integer\": False, \"is_packed\": False}\n    torch_dtype_dict[torch.float8_e5m2fnuz] = \"float8_e5m2fnuz\"\n\nlinear_types = {\"Linear\", \"SDNQLinear\"}\nconv_types = {\"Conv1d\", \"Conv2d\", \"Conv3d\", \"SDNQConv1d\", \"SDNQConv2d\", \"SDNQConv3d\"}\nconv_transpose_types = {\"ConvTranspose1d\", \"ConvTranspose2d\", \"ConvTranspose3d\", \"SDNQConvTranspose1d\", \"SDNQConvTranspose2d\", \"SDNQConvTranspose3d\"}\nallowed_types = set.union(linear_types, conv_types, conv_transpose_types)\n\naccepted_weight_dtypes = set(dtype_dict.keys())\naccepted_matmul_dtypes = {\"int8\", \"fp8\", \"fp16\", \"float8_e4m3fn\", \"float16\"}\n\nweights_dtype_order = [\n    \"uint1\", \"float1_e1m0fnu\",\n    \"int2\", \"float2_e1m0fn\",\n    \"uint2\", \"float2_e1m1fnu\", \"float2_e2m0fnu\",\n    \"int3\", \"float3_e1m1fn\", \"float3_e2m0fn\",\n    \"uint3\", \"float3_e1m2fnu\", \"float3_e2m1fnu\", \"float3_e3m0fnu\",\n    \"int4\", \"float4_e1m2fn\", \"float4_e2m1fn\", \"float4_e3m0fn\",\n    \"uint4\", \"float4_e1m3fnu\", \"float4_e2m2fnu\", \"float4_e3m1fnu\", \"float4_e4m0fnu\",\n    \"int5\", \"float5_e1m3fn\", \"float5_e2m2fn\", \"float5_e3m1fn\", \"float5_e4m0fn\",\n    \"uint5\", \"float5_e1m4fnu\", \"float5_e2m3fnu\", \"float5_e3m2fnu\", \"float5_e4m1fnu\", \"float5_e5m0fnu\",\n    \"int6\", \"float6_e1m4fn\", \"float6_e2m3fn\", \"float6_e3m2fn\", \"float6_e4m1fn\", \"float6_e5m0fn\",\n    \"uint6\", \"float6_e1m5fnu\", \"float6_e2m4fnu\", \"float6_e3m3fnu\", \"float6_e4m2fnu\", \"float6_e5m1fnu\",\n    \"int7\", \"float7_e1m5fn\", \"float7_e2m4fn\", \"float7_e3m3fn\", \"float7_e4m2fn\", \"float7_e5m1fn\",\n    \"uint7\", \"float7_e1m6fnu\", \"float7_e2m5fnu\", \"float7_e3m4fnu\", \"float7_e4m3fnu\", \"float7_e5m2fnu\",\n    \"int8\", \"float8_e4m3fn\", \"float8_e5m2\", \"float8_e1m6fn\", \"float8_e2m5fn\", \"float8_e3m4fn\",\n    \"uint8\", \"float8_e1m7fnu\", \"float8_e2m6fnu\", \"float8_e3m5fnu\", \"float8_e4m4fnu\", \"float8_e5m3fnu\",\n]\nweights_dtype_order_fp32 = weights_dtype_order + [\n    \"int16\", \"float16\", \"float16_e1m14fn\", \"float16_e2m13fn\", \"float16_e3m12fn\", \"float16_e4m11fn\",\n    \"uint16\", \"float16_e1m15fnu\", \"float16_e2m14fnu\", \"float16_e3m13fnu\", \"float16_e4m12fnu\", \"float16_e5m11fnu\",\n]\n\nis_rdna2 = bool(devices.backend == \"rocm\" and devices.get_hip_agent().gfx_version < 0x1100)\nuse_torch_compile = shared.opts.sdnq_dequantize_compile # this setting requires a full restart of the webui to apply\n\ndef check_torch_compile(): # dynamo can be disabled after startup\n    return use_torch_compile and not torch._dynamo.config.disable # pylint: disable=protected-access\n\n\nif os.environ.get(\"SDNQ_USE_TENSORWISE_FP8_MM\", None) is None:\n    # row-wise FP8 only exist on H100 hardware, sdnq will use software row-wise with tensorwise hardware with this setting\n    use_tensorwise_fp8_matmul = bool(devices.backend != \"cuda\" or (devices.backend == \"cuda\" and torch.cuda.get_device_capability(devices.device) < (9,0)))\nelse:\n    use_tensorwise_fp8_matmul = os.environ.get(\"SDNQ_USE_TENSORWISE_FP8_MM\", \"0\").lower() not in {\"0\", \"false\", \"no\"}\n\nif os.environ.get(\"SDNQ_USE_CONTIGUOUS_MM\", None) is None:\n    use_contiguous_mm = bool(is_rdna2 or devices.backend in {\"ipex\", \"mps\", \"cpu\", \"openvino\", \"zluda\"})\nelse:\n    use_contiguous_mm = bool(os.environ.get(\"SDNQ_USE_CONTIGUOUS_MM\", \"0\").lower() not in {\"0\", \"false\", \"no\"})\n\nif os.environ.get(\"SDNQ_USE_TRITON_MM\", None) is None:\n    use_triton_mm = bool(is_rdna2 or devices.backend == \"zluda\")\nelse:\n    use_triton_mm = bool(os.environ.get(\"SDNQ_USE_TRITON_MM\", \"0\").lower() not in {\"0\", \"false\", \"no\"})\n\n\nif use_triton_mm:\n    try:\n        from .triton_mm import int_mm\n        int_mm_func = int_mm\n    except Exception:\n        int_mm_func = torch._int_mm\nelse:\n    int_mm_func = torch._int_mm\n\n\ndef fp_mm_torch(x: torch.Tensor, y: torch.Tensor) -> torch.FloatTensor:\n    return torch.mm(x,y, out_dtype=torch.float32)\n\nfp_mm_func = None\nif os.environ.get(\"SDNQ_USE_TRITON_MM\", \"1\").lower() not in {\"0\", \"false\", \"no\"}:\n    try:\n        from .triton_mm import fp_mm\n        fp_mm_func = fp_mm\n    except Exception:\n        fp_mm_func = None\n\nif fp_mm_func is None:\n    fp_mm_func = fp_mm_torch\n\n\nif use_torch_compile:\n    torch._dynamo.config.cache_size_limit = max(8192, getattr(torch._dynamo.config, \"cache_size_limit\", 0))\n    torch._dynamo.config.accumulated_recompile_limit = max(8192, getattr(torch._dynamo.config, \"accumulated_recompile_limit\", 0))\n    def compile_func(fn, **kwargs):\n        if kwargs.get(\"fullgraph\", None) is None:\n            kwargs[\"fullgraph\"] = True\n        if kwargs.get(\"dynamic\", None) is None:\n            kwargs[\"dynamic\"] = False\n        return torch.compile(fn, **kwargs)\nelse:\n    def compile_func(fn, **kwargs): # pylint: disable=unused-argument\n        return fn\n\n\ncommon_skip_keys = (\n    \".time_embed\",\n    \".context_embedder\",\n    \".condition_embedder\",\n    \".x_embedder\",\n    \".t_embedder\",\n    \".y_embedder\",\n    \".emb_in\",\n    \".txt_in\",\n    \".img_in\",\n    \".vid_in\",\n    \".proj_out\",\n    \".norm_out\",\n    \".emb_out\",\n    \".txt_out\",\n    \".img_out\",\n    \".vid_out\",\n    \".final_layer\",\n    \"multi_modal_projector\",\n    \"time_text_embed\",\n    \"patch_embedding\",\n    \"patch_embed\",\n    \"patch_emb\",\n    \"lm_head\",\n    \"wte\",\n)\n\nmodule_skip_keys_dict = {\n    \"FluxTransformer2DModel\": [\n        [\"single_transformer_blocks.0.norm.linear.weight\", \"time_text_embed\", \"time_embed\", \"context_embedder\", \"x_embedder\", \".proj_out\", \"norm_out\"],\n        {}\n    ],\n    \"Flux2Transformer2DModel\": [\n        [\"double_stream_modulation_img\", \"double_stream_modulation_txt\", \"single_stream_modulation\", \"time_guidance_embed\", \"context_embedder\", \"x_embedder\", \".proj_out\", \"norm_out\"],\n        {}\n    ],\n    \"ChromaTransformer2DModel\": [\n        [\"distilled_guidance_layer\", \"time_text_embed\", \"context_embedder\", \"x_embedder\", \".proj_out\", \"norm_out\"],\n        {}\n    ],\n    \"QwenImageTransformer2DModel\": [\n        [\"transformer_blocks.0.img_mod.1.weight\", \"time_text_embed\", \"txt_in\", \"img_in\", \"proj_out\", \"norm_out\"],\n        {}\n    ],\n    \"WanTransformer3DModel\": [\n        [\"scale_shift_table\", \"patch_embedding\", \"condition_embedder\", \"proj_out\", \"norm_out\"],\n        {}\n    ],\n    \"LongCatVideoTransformer3DModel\": [\n        [\"blocks.0.adaLN_modulation.1.weight\", \"x_embedder\", \"t_embedder\", \"y_embedder\", \"final_layer\"],\n        {}\n    ],\n    \"LTX2VideoTransformer3DModel\": [\n        [\n            \"audio_time_embed\", \"time_embed\", \"audio_caption_projection\", \"caption_projection\", \"proj_in\", \"audio_proj_in\", \"proj_out\", \"audio_proj_out\",\n            \"av_cross_attn_audio_scale_shift\", \"av_cross_attn_audio_v2a_gate\", \"av_cross_attn_video_a2v_gate\", \"av_cross_attn_video_scale_shift\",\n        ],\n        {}\n    ],\n    \"Lumina2Transformer2DModel\": [\n        [\"layers.0.norm1.linear.weight\", \"time_caption_embed\", \"x_embedder\", \"norm_out\"],\n        {}\n    ],\n    \"ZImageTransformer2DModel\": [\n        [\"layers.0.adaLN_modulation.0.weight\", \"t_embedder\", \"cap_embedder\", \"siglip_embedder\", \"all_x_embedder\", \"all_final_layer\"],\n        {}\n    ],\n    \"CosmosTransformer3DModel\": [\n        [\"transformer_blocks.0.norm*\", \"patch_embed\", \"time_embed\", \"norm_out\", \"proj_out\", \"crossattn_proj\"],\n        {}\n    ],\n    \"GlmImageTransformer2DModel\": [\n        [\"transformer_blocks.0.norm1.linear.weight\", \"image_projector\", \"glyph_projector\", \"prior_projector\", \"time_condition_embed\", \"norm_out\", \"proj_out\"],\n        {}\n    ],\n    \"GlmImageForConditionalGeneration\": [\n        [\"lm_head\", \"patch_embed\", \"embeddings\", \"embed_tokens\", \"vqmodel\"],\n        {}\n    ],\n    \"HunyuanImage3ForCausalMM\": [\n        [\"lm_head\", \"patch_embed\", \"time_embed\", \"time_embed_2\", \"final_layer\", \"wte\", \"ln_f\", \"timestep_emb\", \"vae\", \"vision_aligner\", \"head\", \"post_layernorm\", \"embeddings\"],\n        {}\n    ],\n    \"Emu3ForCausalLM\": [\n        [\"lm_head\", \"vq_model\", \"tokenizer\"],\n        {}\n    ],\n    \"Gemma3nForCausalLM\": [\n        [\"lm_head\", \"correction_coefs\", \"prediction_coefs\", \"embedding_projection\"],\n        {}\n    ],\n    \"MoondreamModel\": [\n        [\"lm_head\", \"region\", \"wte\", \"post_ln\", \"proj_mlp\", \"patch_emb\", \"pos_emb\"],\n        {}\n    ],\n    \"NaDiT\": [\n        [\".emb_in\", \".txt_in\", \".vid_in\", \".emb_scale\", \".vid_out\", \".vid_out_norm\", \".vid_out_ada\"],\n        {}\n    ],\n}\n\nmodule_skip_keys_dict[\"LongCatImageTransformer2DModel\"] = module_skip_keys_dict[\"FluxTransformer2DModel\"]\nmodule_skip_keys_dict[\"ChronoEditTransformer3DModel\"] = module_skip_keys_dict[\"WanTransformer3DModel\"]\nmodule_skip_keys_dict[\"Gemma3nForConditionalGeneration\"] = module_skip_keys_dict[\"Gemma3nForCausalLM\"]\nmodule_skip_keys_dict[\"HfMoondream\"] = module_skip_keys_dict[\"MoondreamModel\"]\nmodule_skip_keys_dict[\"NaDiTUpscaler\"] = module_skip_keys_dict[\"NaDiT\"]\n"
  },
  {
    "path": "modules/sdnq/dequantizer.py",
    "content": "# pylint: disable=redefined-builtin,no-member,protected-access\n\nfrom typing import List, Tuple, Optional\nfrom dataclasses import dataclass\n\nimport torch\n\nfrom modules import devices\nfrom .common import dtype_dict, compile_func, use_contiguous_mm, use_tensorwise_fp8_matmul\nfrom .packed_int import unpack_int_symetric, unpack_int_asymetric\nfrom .packed_float import unpack_float\nfrom .layers import SDNQLayer\n\n\n@devices.inference_context()\ndef dequantize_asymmetric(weight: torch.ByteTensor, scale: torch.FloatTensor, zero_point: torch.FloatTensor, svd_up: Optional[torch.FloatTensor] = None, svd_down: Optional[torch.FloatTensor] = None, dtype: Optional[torch.dtype] = None, result_shape: Optional[torch.Size] = None, skip_quantized_matmul: bool = False) -> torch.FloatTensor:\n    result = torch.addcmul(zero_point, weight.to(dtype=scale.dtype), scale)\n    if result_shape is not None:\n        result = result.view(result_shape)\n    if svd_up is not None:\n        if skip_quantized_matmul:\n            svd_up = svd_up.t().contiguous()\n            if use_contiguous_mm:\n                svd_down = svd_down.t().contiguous()\n            else:\n                svd_down = svd_down.contiguous().t()\n        if result.ndim > 2 and weight.ndim > 2: # convs\n            result = result.add_(torch.mm(svd_up, svd_down).unflatten(-1, (*result.shape[1:],)))\n        else:\n            result = result.to(dtype=svd_up.dtype).addmm_(svd_up, svd_down)\n    if dtype is not None:\n        result = result.to(dtype=dtype)\n    return result\n\n\n@devices.inference_context()\ndef dequantize_symmetric(weight: torch.CharTensor, scale: torch.FloatTensor, svd_up: Optional[torch.FloatTensor] = None, svd_down: Optional[torch.FloatTensor] = None, dtype: Optional[torch.dtype] = None, result_shape: Optional[torch.Size] = None, skip_quantized_matmul: bool = False, re_quantize_for_matmul: bool = False) -> torch.FloatTensor:\n    result = weight.to(dtype=scale.dtype).mul_(scale)\n    if skip_quantized_matmul and not re_quantize_for_matmul:\n        result.t_()\n    if result_shape is not None:\n        result = result.view(result_shape)\n    if svd_up is not None:\n        if skip_quantized_matmul:\n            svd_up = svd_up.t().contiguous()\n            if use_contiguous_mm:\n                svd_down = svd_down.t().contiguous()\n            else:\n                svd_down = svd_down.contiguous().t()\n        if result.ndim > 2 and weight.ndim > 2: # convs\n            result = result.add_(torch.mm(svd_up, svd_down).unflatten(-1, (*result.shape[1:],)))\n        else:\n            result = result.to(dtype=svd_up.dtype).addmm_(svd_up, svd_down)\n    if dtype is not None:\n        result = result.to(dtype=dtype)\n    return result\n\n\n@devices.inference_context()\ndef dequantize_symmetric_with_bias(weight: torch.CharTensor, scale: torch.FloatTensor, bias: torch.FloatTensor, dtype: Optional[torch.dtype] = None, result_shape: Optional[torch.Size] = None) -> torch.FloatTensor:\n    result = torch.addcmul(bias, weight.to(dtype=scale.dtype), scale)\n    if result_shape is not None:\n        result = result.view(result_shape)\n    if dtype is not None:\n        result = result.to(dtype=dtype)\n    return result\n\n\n@devices.inference_context()\ndef dequantize_packed_int_asymmetric(weight: torch.ByteTensor, scale: torch.FloatTensor, zero_point: torch.FloatTensor, shape: torch.Size, weights_dtype: str, svd_up: Optional[torch.FloatTensor] = None, svd_down: Optional[torch.FloatTensor] = None, dtype: Optional[torch.dtype] = None, result_shape: Optional[torch.Size] = None, skip_quantized_matmul: bool = False) -> torch.FloatTensor:\n    return dequantize_asymmetric(unpack_int_asymetric(weight, shape, weights_dtype), scale, zero_point, svd_up=svd_up, svd_down=svd_down, dtype=dtype, result_shape=result_shape, skip_quantized_matmul=skip_quantized_matmul)\n\n\n@devices.inference_context()\ndef dequantize_packed_int_symmetric(weight: torch.ByteTensor, scale: torch.FloatTensor, shape: torch.Size, weights_dtype: str, svd_up: Optional[torch.FloatTensor] = None, svd_down: Optional[torch.FloatTensor] = None, dtype: Optional[torch.dtype] = None, result_shape: Optional[torch.Size] = None, skip_quantized_matmul: bool = False, re_quantize_for_matmul: bool = False) -> torch.FloatTensor:\n    return dequantize_symmetric(unpack_int_symetric(weight, shape, weights_dtype, dtype=scale.dtype), scale, svd_up=svd_up, svd_down=svd_down, dtype=dtype, result_shape=result_shape, skip_quantized_matmul=skip_quantized_matmul, re_quantize_for_matmul=re_quantize_for_matmul)\n\n\n@devices.inference_context()\ndef dequantize_packed_float_asymmetric(weight: torch.ByteTensor, scale: torch.FloatTensor, zero_point: torch.FloatTensor, shape: torch.Size, weights_dtype: str, svd_up: Optional[torch.FloatTensor] = None, svd_down: Optional[torch.FloatTensor] = None, dtype: Optional[torch.dtype] = None, result_shape: Optional[torch.Size] = None, skip_quantized_matmul: bool = False) -> torch.FloatTensor:\n    return dequantize_asymmetric(unpack_float(weight, shape, weights_dtype), scale, zero_point, svd_up=svd_up, svd_down=svd_down, dtype=dtype, result_shape=result_shape, skip_quantized_matmul=skip_quantized_matmul)\n\n\n@devices.inference_context()\ndef dequantize_packed_float_symmetric(weight: torch.ByteTensor, scale: torch.FloatTensor, shape: torch.Size, weights_dtype: str, svd_up: Optional[torch.FloatTensor] = None, svd_down: Optional[torch.FloatTensor] = None, dtype: Optional[torch.dtype] = None, result_shape: Optional[torch.Size] = None, skip_quantized_matmul: bool = False, re_quantize_for_matmul: bool = False) -> torch.FloatTensor:\n    return dequantize_symmetric(unpack_float(weight, shape, weights_dtype), scale, svd_up=svd_up, svd_down=svd_down, dtype=dtype, result_shape=result_shape, skip_quantized_matmul=skip_quantized_matmul, re_quantize_for_matmul=re_quantize_for_matmul)\n\n\n@devices.inference_context()\ndef quantize_int_mm(input: torch.FloatTensor, dim: int = -1, matmul_dtype: str = \"int8\") -> Tuple[torch.Tensor, torch.FloatTensor]:\n    scale = torch.amax(input.abs(), dim=dim, keepdims=True).div_(dtype_dict[matmul_dtype][\"max\"])\n    input = torch.div(input, scale).round_().clamp_(dtype_dict[matmul_dtype][\"min\"], dtype_dict[matmul_dtype][\"max\"]).to(dtype=dtype_dict[matmul_dtype][\"torch_dtype\"])\n    return input, scale\n\n\n@devices.inference_context()\ndef quantize_int_mm_sr(input: torch.FloatTensor, dim: int = -1, matmul_dtype: str = \"int8\") -> Tuple[torch.Tensor, torch.FloatTensor]:\n    scale = torch.amax(input.abs(), dim=dim, keepdims=True).div_(dtype_dict[matmul_dtype][\"max\"])\n    input = torch.div(input, scale).add_(torch.randn_like(input), alpha=0.1).round_().clamp_(dtype_dict[matmul_dtype][\"min\"], dtype_dict[matmul_dtype][\"max\"]).to(dtype=dtype_dict[matmul_dtype][\"torch_dtype\"])\n    return input, scale\n\n\n@devices.inference_context()\ndef quantize_fp_mm(input: torch.FloatTensor, dim: int = -1, matmul_dtype: str = \"float8_e4m3fn\") -> Tuple[torch.Tensor, torch.FloatTensor]:\n    scale = torch.amax(input.abs(), dim=dim, keepdims=True).div_(dtype_dict[matmul_dtype][\"max\"])\n    input = torch.div(input, scale).nan_to_num_().clamp_(dtype_dict[matmul_dtype][\"min\"], dtype_dict[matmul_dtype][\"max\"]).to(dtype=dtype_dict[matmul_dtype][\"torch_dtype\"])\n    return input, scale\n\n\n@devices.inference_context()\ndef quantize_fp_mm_sr(input: torch.FloatTensor, dim: int = -1, matmul_dtype: str = \"float8_e4m3fn\") -> Tuple[torch.Tensor, torch.FloatTensor]:\n    mantissa_difference = 1 << (23 - dtype_dict[matmul_dtype][\"mantissa\"])\n    scale = torch.amax(input.abs(), dim=dim, keepdims=True).div_(dtype_dict[matmul_dtype][\"max\"])\n    input = torch.div(input, scale).to(dtype=torch.float32).view(dtype=torch.int32)\n    input = input.add_(torch.randint_like(input, low=0, high=mantissa_difference, dtype=torch.int32)).bitwise_and_(-mantissa_difference).view(dtype=torch.float32)\n    input = input.nan_to_num_().clamp_(dtype_dict[matmul_dtype][\"min\"], dtype_dict[matmul_dtype][\"max\"]).to(dtype=dtype_dict[matmul_dtype][\"torch_dtype\"])\n    return input, scale\n\n\n@devices.inference_context()\ndef re_quantize_int_mm(weight: torch.FloatTensor) -> Tuple[torch.Tensor, torch.FloatTensor]:\n    if weight.ndim > 2: # convs\n        weight = weight.flatten(1,-1)\n    if use_contiguous_mm:\n        weight, scale = quantize_int_mm(weight.t().contiguous(), dim=0)\n    else:\n        weight, scale = quantize_int_mm(weight.contiguous(), dim=-1)\n        weight, scale = weight.t_(), scale.t_()\n    return weight, scale\n\n\n@devices.inference_context()\ndef re_quantize_fp_mm(weight: torch.FloatTensor, matmul_dtype: str = \"float8_e4m3fn\") -> Tuple[torch.Tensor, torch.FloatTensor]:\n    if weight.ndim > 2: # convs\n        weight = weight.flatten(1,-1)\n    weight, scale = quantize_fp_mm(weight.contiguous(), dim=-1, matmul_dtype=matmul_dtype)\n    weight, scale = weight.t_(), scale.t_()\n    if not use_tensorwise_fp8_matmul and dtype_dict[matmul_dtype][\"num_bits\"] == 8:\n        scale = scale.to(dtype=torch.float32)\n    return weight, scale\n\n\n@devices.inference_context()\ndef re_quantize_matmul_asymmetric(weight: torch.ByteTensor, scale: torch.FloatTensor, zero_point: torch.FloatTensor, matmul_dtype: str, result_shape: Optional[torch.Size] = None, svd_up: Optional[torch.FloatTensor] = None, svd_down: Optional[torch.FloatTensor] = None) -> Tuple[torch.Tensor, torch.FloatTensor]:\n    weight = dequantize_asymmetric(weight, scale, zero_point, svd_up=svd_up, svd_down=svd_down, dtype=scale.dtype, result_shape=result_shape)\n    if dtype_dict[matmul_dtype][\"is_integer\"]:\n        return re_quantize_int_mm(weight)\n    else:\n        return re_quantize_fp_mm(weight, matmul_dtype=matmul_dtype)\n\n\n@devices.inference_context()\ndef re_quantize_matmul_symmetric(weight: torch.CharTensor, scale: torch.FloatTensor, matmul_dtype: str, result_shape: Optional[torch.Size] = None, svd_up: Optional[torch.FloatTensor] = None, svd_down: Optional[torch.FloatTensor] = None) -> Tuple[torch.Tensor, torch.FloatTensor]:\n    weight = dequantize_symmetric(weight, scale, svd_up=svd_up, svd_down=svd_down, dtype=scale.dtype, result_shape=result_shape)\n    if dtype_dict[matmul_dtype][\"is_integer\"]:\n        return re_quantize_int_mm(weight)\n    else:\n        return re_quantize_fp_mm(weight, matmul_dtype=matmul_dtype)\n\n\n@devices.inference_context()\ndef re_quantize_matmul_packed_int_asymmetric(weight: torch.ByteTensor, scale: torch.FloatTensor, zero_point: torch.FloatTensor, shape: torch.Size, weights_dtype: str, matmul_dtype: str, result_shape: torch.Size, svd_up: Optional[torch.FloatTensor] = None, svd_down: Optional[torch.FloatTensor] = None) -> Tuple[torch.Tensor, torch.FloatTensor]:\n    return re_quantize_matmul_asymmetric(unpack_int_asymetric(weight, shape, weights_dtype), scale, zero_point, matmul_dtype, svd_up=svd_up, svd_down=svd_down, result_shape=result_shape)\n\n\n@devices.inference_context()\ndef re_quantize_matmul_packed_int_symmetric(weight: torch.ByteTensor, scale: torch.FloatTensor, shape: torch.Size, weights_dtype: str, matmul_dtype: str, result_shape: Optional[torch.Size] = None, svd_up: Optional[torch.FloatTensor] = None, svd_down: Optional[torch.FloatTensor] = None) -> Tuple[torch.Tensor, torch.FloatTensor]:\n    return re_quantize_matmul_symmetric(unpack_int_symetric(weight, shape, weights_dtype, dtype=scale.dtype), scale, matmul_dtype, svd_up=svd_up, svd_down=svd_down, result_shape=result_shape)\n\n\n@devices.inference_context()\ndef re_quantize_matmul_packed_float_asymmetric(weight: torch.ByteTensor, scale: torch.FloatTensor, zero_point: torch.FloatTensor, shape: torch.Size, weights_dtype: str, matmul_dtype: str, result_shape: torch.Size, svd_up: Optional[torch.FloatTensor] = None, svd_down: Optional[torch.FloatTensor] = None) -> Tuple[torch.Tensor, torch.FloatTensor]:\n    return re_quantize_matmul_asymmetric(unpack_float(weight, shape, weights_dtype), scale, zero_point, matmul_dtype, svd_up=svd_up, svd_down=svd_down, result_shape=result_shape)\n\n\n@devices.inference_context()\ndef re_quantize_matmul_packed_float_symmetric(weight: torch.ByteTensor, scale: torch.FloatTensor, shape: torch.Size, weights_dtype: str, matmul_dtype: str, result_shape: Optional[torch.Size] = None, svd_up: Optional[torch.FloatTensor] = None, svd_down: Optional[torch.FloatTensor] = None) -> Tuple[torch.Tensor, torch.FloatTensor]:\n    return re_quantize_matmul_symmetric(unpack_float(weight, shape, weights_dtype), scale, matmul_dtype, svd_up=svd_up, svd_down=svd_down, result_shape=result_shape)\n\n\n@devices.inference_context()\ndef dequantize_sdnq_module(model: torch.nn.Module):\n    if isinstance(model, SDNQLayer):\n        model = model.dequantize()\n    has_children = list(model.children())\n    if not has_children:\n        return model\n    for module_name, module in model.named_children():\n        if isinstance(module, SDNQLayer):\n            setattr(model, module_name, module.dequantize())\n        else:\n            setattr(model, module_name, dequantize_sdnq_model(module))\n    return model\n\n\n@devices.inference_context()\ndef dequantize_sdnq_model(model: torch.nn.Module):\n    model = dequantize_sdnq_module(model)\n    if hasattr(model, \"quantization_method\"):\n        del model.quantization_method\n    if hasattr(model, \"quantization_config\"):\n        del model.quantization_config\n    if hasattr(model, \"config\"):\n        try:\n            if hasattr(model.config, \"quantization_config\"):\n                del model.config.quantization_config\n        except Exception:\n            pass\n        try:\n            if hasattr(model.config, \"pop\"):\n                model.config.pop(\"quantization_config\", None)\n        except Exception:\n            pass\n    return model\n\n\n# SDNQDequantizer has to be a dataclass for torch.compile\n@dataclass\nclass SDNQDequantizer:\n    result_dtype: torch.dtype\n    result_shape: torch.Size\n    original_shape: torch.Size\n    original_stride: List[int]\n    quantized_weight_shape: torch.Size\n    weights_dtype: str\n    quantized_matmul_dtype: str\n    group_size: int\n    svd_rank: int\n    svd_steps: int\n    use_quantized_matmul: bool\n    re_quantize_for_matmul: bool\n    use_stochastic_rounding: bool\n    layer_class_name: str\n    is_packed: bool\n    is_unsigned: bool\n    is_integer: bool\n    is_integer_matmul: bool\n\n    def __init__(\n        self,\n        result_dtype: torch.dtype,\n        result_shape: torch.Size,\n        original_shape: torch.Size,\n        original_stride: List[int],\n        quantized_weight_shape: torch.Size,\n        weights_dtype: str,\n        quantized_matmul_dtype: str,\n        group_size: int,\n        svd_rank: int,\n        svd_steps: int,\n        use_quantized_matmul: bool,\n        re_quantize_for_matmul: bool,\n        use_stochastic_rounding: bool,\n        layer_class_name: str,\n    ):\n        self.result_dtype = result_dtype\n        self.result_shape = result_shape\n        self.original_shape = original_shape\n        self.original_stride = original_stride\n        self.quantized_weight_shape = quantized_weight_shape\n        self.weights_dtype = weights_dtype\n        self.quantized_matmul_dtype = quantized_matmul_dtype\n        self.group_size = group_size\n        self.svd_rank = svd_rank\n        self.svd_steps = svd_steps\n        self.use_quantized_matmul = use_quantized_matmul\n        self.re_quantize_for_matmul = re_quantize_for_matmul\n        self.use_stochastic_rounding = use_stochastic_rounding\n        self.layer_class_name = layer_class_name\n        self.is_packed = dtype_dict[weights_dtype][\"is_packed\"]\n        self.is_unsigned = dtype_dict[weights_dtype][\"is_unsigned\"]\n        self.is_integer = dtype_dict[weights_dtype][\"is_integer\"]\n        self.is_integer_matmul = dtype_dict[quantized_matmul_dtype][\"is_integer\"]\n\n    @devices.inference_context()\n    def re_quantize_matmul(self, weight, scale, zero_point, svd_up, svd_down): # pylint: disable=unused-argument\n        if self.is_packed:\n            if self.is_integer:\n                if self.is_unsigned:\n                    return re_quantize_matmul_packed_int_asymmetric_compiled(weight, scale, zero_point, self.quantized_weight_shape, self.weights_dtype, self.quantized_matmul_dtype, svd_up=svd_up, svd_down=svd_down, result_shape=self.result_shape)\n                else:\n                    return re_quantize_matmul_packed_int_symmetric_compiled(weight, scale, self.quantized_weight_shape, self.weights_dtype, self.quantized_matmul_dtype, svd_up=svd_up, svd_down=svd_down, result_shape=self.result_shape)\n            else:\n                if self.is_unsigned:\n                    return re_quantize_matmul_packed_float_asymmetric_compiled(weight, scale, zero_point, self.quantized_weight_shape, self.weights_dtype, self.quantized_matmul_dtype, svd_up=svd_up, svd_down=svd_down, result_shape=self.result_shape)\n                else:\n                    return re_quantize_matmul_packed_float_symmetric_compiled(weight, scale, self.quantized_weight_shape, self.weights_dtype, self.quantized_matmul_dtype, svd_up=svd_up, svd_down=svd_down, result_shape=self.result_shape)\n        else:\n            if self.is_unsigned:\n                return re_quantize_matmul_asymmetric_compiled(weight, scale, zero_point, self.quantized_matmul_dtype, svd_up=svd_up, svd_down=svd_down, result_shape=self.result_shape)\n            else:\n                return re_quantize_matmul_symmetric_compiled(weight, scale, self.quantized_matmul_dtype, svd_up=svd_up, svd_down=svd_down, result_shape=self.result_shape)\n\n    @devices.inference_context()\n    def __call__(self, weight, scale, zero_point, svd_up, svd_down, skip_quantized_matmul: bool = False, skip_compile: bool = False, dtype: torch.dtype = None): # pylint: disable=unused-argument\n        if dtype is None:\n            dtype = self.result_dtype\n        re_quantize_for_matmul = self.re_quantize_for_matmul or self.is_packed\n        if self.is_packed:\n            if self.is_integer:\n                if self.is_unsigned:\n                    if skip_compile: # compiled training needs to be traced with the original function\n                        return dequantize_packed_int_asymmetric(weight, scale, zero_point, self.quantized_weight_shape, self.weights_dtype, svd_up=svd_up, svd_down=svd_down, dtype=dtype, result_shape=self.result_shape, skip_quantized_matmul=skip_quantized_matmul)\n                    else:\n                        return dequantize_packed_int_asymmetric_compiled(weight, scale, zero_point, self.quantized_weight_shape, self.weights_dtype, svd_up=svd_up, svd_down=svd_down, dtype=dtype, result_shape=self.result_shape, skip_quantized_matmul=skip_quantized_matmul)\n                else:\n                    if skip_compile:\n                        return dequantize_packed_int_symmetric(weight, scale, self.quantized_weight_shape, self.weights_dtype, svd_up=svd_up, svd_down=svd_down, dtype=dtype, result_shape=self.result_shape, skip_quantized_matmul=skip_quantized_matmul, re_quantize_for_matmul=re_quantize_for_matmul)\n                    else:\n                        return dequantize_packed_int_symmetric_compiled(weight, scale, self.quantized_weight_shape, self.weights_dtype, svd_up=svd_up, svd_down=svd_down, dtype=dtype, result_shape=self.result_shape, skip_quantized_matmul=skip_quantized_matmul, re_quantize_for_matmul=re_quantize_for_matmul)\n            else:\n                if self.is_unsigned:\n                    if skip_compile: # compiled training needs to be traced with the original function\n                        return dequantize_packed_float_asymmetric(weight, scale, zero_point, self.quantized_weight_shape, self.weights_dtype, svd_up=svd_up, svd_down=svd_down, dtype=dtype, result_shape=self.result_shape, skip_quantized_matmul=skip_quantized_matmul)\n                    else:\n                        return dequantize_packed_float_asymmetric_compiled(weight, scale, zero_point, self.quantized_weight_shape, self.weights_dtype, svd_up=svd_up, svd_down=svd_down, dtype=dtype, result_shape=self.result_shape, skip_quantized_matmul=skip_quantized_matmul)\n                else:\n                    if skip_compile:\n                        return dequantize_packed_float_symmetric(weight, scale, self.quantized_weight_shape, self.weights_dtype, svd_up=svd_up, svd_down=svd_down, dtype=dtype, result_shape=self.result_shape, skip_quantized_matmul=skip_quantized_matmul, re_quantize_for_matmul=re_quantize_for_matmul)\n                    else:\n                        return dequantize_packed_float_symmetric_compiled(weight, scale, self.quantized_weight_shape, self.weights_dtype, svd_up=svd_up, svd_down=svd_down, dtype=dtype, result_shape=self.result_shape, skip_quantized_matmul=skip_quantized_matmul, re_quantize_for_matmul=re_quantize_for_matmul)\n        else:\n            if self.is_unsigned:\n                if skip_compile:\n                    return dequantize_asymmetric(weight, scale, zero_point, svd_up=svd_up, svd_down=svd_down, dtype=dtype, result_shape=self.result_shape, skip_quantized_matmul=skip_quantized_matmul)\n                else:\n                    return dequantize_asymmetric_compiled(weight, scale, zero_point, svd_up=svd_up, svd_down=svd_down, dtype=dtype, result_shape=self.result_shape, skip_quantized_matmul=skip_quantized_matmul)\n            else:\n                if skip_compile:\n                    return dequantize_symmetric(weight, scale, svd_up=svd_up, svd_down=svd_down, dtype=dtype, result_shape=self.result_shape, skip_quantized_matmul=skip_quantized_matmul, re_quantize_for_matmul=re_quantize_for_matmul)\n                else:\n                    return dequantize_symmetric_compiled(weight, scale, svd_up=svd_up, svd_down=svd_down, dtype=dtype, result_shape=self.result_shape, skip_quantized_matmul=skip_quantized_matmul, re_quantize_for_matmul=re_quantize_for_matmul)\n\n\ndequantize_asymmetric_compiled = compile_func(dequantize_asymmetric)\ndequantize_symmetric_compiled = compile_func(dequantize_symmetric)\ndequantize_packed_int_asymmetric_compiled = compile_func(dequantize_packed_int_asymmetric)\ndequantize_packed_int_symmetric_compiled = compile_func(dequantize_packed_int_symmetric)\ndequantize_packed_float_asymmetric_compiled = compile_func(dequantize_packed_float_asymmetric)\ndequantize_packed_float_symmetric_compiled = compile_func(dequantize_packed_float_symmetric)\nre_quantize_matmul_asymmetric_compiled = compile_func(re_quantize_matmul_asymmetric)\nre_quantize_matmul_symmetric_compiled = compile_func(re_quantize_matmul_symmetric)\nre_quantize_matmul_packed_int_asymmetric_compiled = compile_func(re_quantize_matmul_packed_int_asymmetric)\nre_quantize_matmul_packed_int_symmetric_compiled = compile_func(re_quantize_matmul_packed_int_symmetric)\nre_quantize_matmul_packed_float_asymmetric_compiled = compile_func(re_quantize_matmul_packed_float_asymmetric)\nre_quantize_matmul_packed_float_symmetric_compiled = compile_func(re_quantize_matmul_packed_float_symmetric)\n\ntorch.serialization.add_safe_globals([SDNQDequantizer])\n"
  },
  {
    "path": "modules/sdnq/file_loader.py",
    "content": "import re\nimport concurrent.futures\nimport torch\n\n\ndef map_keys(key: str, key_mapping: dict) -> str:\n    new_key = key\n    if key_mapping:\n        for pattern, replacement in key_mapping.items():\n            new_key, n_replace = re.subn(pattern, replacement, new_key)\n            if n_replace > 0:\n                break\n    return new_key\n\n\ndef load_safetensors(files: list[str], state_dict: dict = None, key_mapping: dict = None, device: torch.device = \"cpu\") -> dict:\n    from safetensors.torch import safe_open\n    if state_dict is None:\n        state_dict = {}\n    for fn in files:\n        with safe_open(fn, framework=\"pt\", device=str(device)) as f:\n            for key in f.keys():\n                state_dict[map_keys(key, key_mapping)] = f.get_tensor(key)\n\n\ndef load_threaded(files: list[str], state_dict: dict = None, key_mapping: dict = None, device: torch.device = \"cpu\") -> dict:\n    future_items = {}\n    if state_dict is None:\n        state_dict = {}\n    with concurrent.futures.ThreadPoolExecutor(max_workers=4) as executor:\n        for fn in files:\n            future_items[executor.submit(load_safetensors, [fn], key_mapping=key_mapping, device=device, state_dict=state_dict)] = fn\n        for future in concurrent.futures.as_completed(future_items):\n            future.result()\n\n\ndef load_streamer(files: list[str], state_dict: dict = None, key_mapping: dict = None, device: torch.device = \"cpu\") -> dict:\n    # requires pip install runai_model_streamer\n    from runai_model_streamer import SafetensorsStreamer\n    if state_dict is None:\n        state_dict = {}\n    with SafetensorsStreamer() as streamer:\n        streamer.stream_files(files)\n        for key, tensor in streamer.get_tensors():\n            state_dict[map_keys(key, key_mapping)] = tensor.to(device)\n\n\ndef load_files(files: list[str], state_dict: dict = None, key_mapping: dict = None, device: torch.device = \"cpu\", method: str = None) -> dict:\n    # note: files is list-of-files within a module for chunked loading, not accross model\n    if isinstance(files, str):\n        files = [files]\n    if method is None:\n        method = \"safetensors\"\n    if state_dict is None:\n        state_dict = {}\n    if method == \"safetensors\":\n        load_safetensors(files, state_dict=state_dict, key_mapping=key_mapping, device=device)\n    elif method == \"threaded\":\n        load_threaded(files, state_dict=state_dict, key_mapping=key_mapping, device=device)\n    elif method == \"streamer\":\n        load_streamer(files, state_dict=state_dict, key_mapping=key_mapping, device=device)\n    else:\n        raise ValueError(f\"Unsupported loading method: {method}\")\n    return state_dict\n"
  },
  {
    "path": "modules/sdnq/forward.py",
    "content": "# pylint: disable=protected-access\n\nfrom typing import Callable\n\nfrom .common import dtype_dict, conv_types, conv_transpose_types, use_tensorwise_fp8_matmul\n\n\ndef get_forward_func(layer_class_name: str, quantized_matmul_dtype: str, use_quantized_matmul: bool) -> Callable: # pylint: disable=inconsistent-return-statements\n    if layer_class_name in conv_types:\n        if use_quantized_matmul:\n            if dtype_dict[quantized_matmul_dtype][\"is_integer\"]:\n                from .layers.conv.conv_int8 import quantized_conv_forward_int8_matmul\n                return quantized_conv_forward_int8_matmul\n            else:\n                if dtype_dict[quantized_matmul_dtype][\"num_bits\"] == 8:\n                    if use_tensorwise_fp8_matmul:\n                        from .layers.conv.conv_fp8_tensorwise import quantized_conv_forward_fp8_matmul_tensorwise\n                        return quantized_conv_forward_fp8_matmul_tensorwise\n                    else:\n                        from .layers.conv.conv_fp8 import quantized_conv_forward_fp8_matmul\n                        return quantized_conv_forward_fp8_matmul\n                else:\n                    from .layers.conv.conv_fp16 import quantized_conv_forward_fp16_matmul\n                    return quantized_conv_forward_fp16_matmul\n        else:\n            from .layers.conv.forward import quantized_conv_forward\n            return quantized_conv_forward\n    elif layer_class_name in conv_transpose_types:\n        if layer_class_name.endswith(\"1d\"):\n            from .layers.conv.forward import quantized_conv_transpose_1d_forward\n            return quantized_conv_transpose_1d_forward\n        elif layer_class_name.endswith(\"2d\"):\n            from .layers.conv.forward import quantized_conv_transpose_2d_forward\n            return quantized_conv_transpose_2d_forward\n        elif layer_class_name.endswith(\"3d\"):\n            from .layers.conv.forward import quantized_conv_transpose_3d_forward\n            return quantized_conv_transpose_3d_forward\n    else:\n        if use_quantized_matmul:\n            if dtype_dict[quantized_matmul_dtype][\"is_integer\"]:\n                from .layers.linear.linear_int8 import quantized_linear_forward_int8_matmul\n                return quantized_linear_forward_int8_matmul\n            else:\n                if dtype_dict[quantized_matmul_dtype][\"num_bits\"] == 8:\n                    if use_tensorwise_fp8_matmul:\n                        from .layers.linear.linear_fp8_tensorwise import quantized_linear_forward_fp8_matmul_tensorwise\n                        return quantized_linear_forward_fp8_matmul_tensorwise\n                    else:\n                        from .layers.linear.linear_fp8 import quantized_linear_forward_fp8_matmul\n                        return quantized_linear_forward_fp8_matmul\n                else:\n                    from .layers.linear.linear_fp16 import quantized_linear_forward_fp16_matmul\n                    return quantized_linear_forward_fp16_matmul\n        else:\n            from .layers.linear.forward import quantized_linear_forward\n            return quantized_linear_forward\n"
  },
  {
    "path": "modules/sdnq/layers/__init__.py",
    "content": "import torch\n\n\nclass SDNQLayer(torch.nn.Module):\n    def __init__(self, original_layer, forward_func):\n        torch.nn.Module.__init__(self)\n        for key, value in original_layer.__dict__.items():\n            if key not in {\"forward\", \"forward_func\", \"original_class\", \"state_dict\", \"load_state_dict\"}:\n                setattr(self, key, value)\n        self.original_class = original_layer.__class__\n        self.forward_func = forward_func\n\n    def dequantize(self: torch.nn.Module):\n        if self.weight.__class__.__name__ == \"SDNQTensor\": # pylint: disable=access-member-before-definition\n            self.weight = torch.nn.Parameter(self.weight.dequantize(), requires_grad=True) # pylint: disable=attribute-defined-outside-init\n        elif hasattr(self, \"sdnq_dequantizer\"):\n            self.weight = torch.nn.Parameter(self.sdnq_dequantizer(self.weight, self.scale, self.zero_point, self.svd_up, self.svd_down, skip_quantized_matmul=self.sdnq_dequantizer.use_quantized_matmul), requires_grad=True) # pylint: disable=attribute-defined-outside-init\n            del self.sdnq_dequantizer, self.scale, self.zero_point, self.svd_up, self.svd_down\n        self.__class__ = self.original_class\n        del self.original_class, self.forward_func\n        return self\n\n    def forward(self, *args, **kwargs) -> torch.Tensor:\n        return self.forward_func(self, *args, **kwargs)\n\n    def __repr__(self):\n        return f\"{self.__class__.__name__}(original_class={self.original_class} forward_func={self.forward_func} sdnq_dequantizer={repr(getattr(self, 'sdnq_dequantizer', None))})\"\n\n\nclass SDNQLinear(SDNQLayer, torch.nn.Linear):\n    original_class: torch.nn.Linear\n\nclass SDNQConv1d(SDNQLayer, torch.nn.Conv1d):\n    original_class: torch.nn.Conv1d\n\nclass SDNQConv2d(SDNQLayer, torch.nn.Conv2d):\n    original_class: torch.nn.Conv2d\n\nclass SDNQConv3d(SDNQLayer, torch.nn.Conv3d):\n    original_class: torch.nn.Conv3d\n\nclass SDNQConvTranspose1d(SDNQLayer, torch.nn.ConvTranspose1d):\n    original_class: torch.nn.ConvTranspose1d\n\nclass SDNQConvTranspose2d(SDNQLayer, torch.nn.ConvTranspose2d):\n    original_class: torch.nn.ConvTranspose2d\n\nclass SDNQConvTranspose3d(SDNQLayer, torch.nn.ConvTranspose3d):\n    original_class: torch.nn.ConvTranspose3d\n\n\ntorch.serialization.add_safe_globals([SDNQLayer])\ntorch.serialization.add_safe_globals([SDNQLinear])\ntorch.serialization.add_safe_globals([SDNQConv1d])\ntorch.serialization.add_safe_globals([SDNQConv2d])\ntorch.serialization.add_safe_globals([SDNQConv3d])\ntorch.serialization.add_safe_globals([SDNQConvTranspose1d])\ntorch.serialization.add_safe_globals([SDNQConvTranspose2d])\ntorch.serialization.add_safe_globals([SDNQConvTranspose3d])\n\n\ndef get_sdnq_wrapper_class(original_layer, forward_func):\n    match original_layer.__class__.__name__:\n        case \"Linear\":\n            return SDNQLinear(original_layer, forward_func)\n        case \"Conv1d\":\n            return SDNQConv1d(original_layer, forward_func)\n        case \"Conv2d\":\n            return SDNQConv2d(original_layer, forward_func)\n        case \"Conv3d\":\n            return SDNQConv3d(original_layer, forward_func)\n        case \"ConvTranspose1d\":\n            return SDNQConvTranspose1d(original_layer, forward_func)\n        case \"ConvTranspose2d\":\n            return SDNQConvTranspose2d(original_layer, forward_func)\n        case \"ConvTranspose3d\":\n            return SDNQConvTranspose3d(original_layer, forward_func)\n        case _:\n            return SDNQLayer(original_layer, forward_func)\n"
  },
  {
    "path": "modules/sdnq/layers/conv/conv_fp16.py",
    "content": "# pylint: disable=relative-beyond-top-level,redefined-builtin,protected-access\n\nfrom typing import List\n\nimport torch\n\nfrom ...common import compile_func, fp_mm_func # noqa: TID252\nfrom ...packed_float import unpack_float # noqa: TID252\nfrom ...dequantizer import dequantize_symmetric, dequantize_symmetric_with_bias # noqa: TID252\n\nfrom .forward import get_conv_args, process_conv_input\nfrom ..linear.linear_fp8_tensorwise import quantize_fp_mm_input_tensorwise # noqa: TID252\nfrom ..linear.forward import check_mats # noqa: TID252\n\n\ndef conv_fp16_matmul(\n    input: torch.FloatTensor,\n    weight: torch.Tensor,\n    scale: torch.FloatTensor,\n    result_shape: torch.Size,\n    reversed_padding_repeated_twice: List[int],\n    padding_mode: str, conv_type: int,\n    groups: int, stride: List[int],\n    padding: List[int], dilation: List[int],\n    bias: torch.FloatTensor = None,\n    svd_up: torch.FloatTensor = None,\n    svd_down: torch.FloatTensor = None,\n    quantized_weight_shape: torch.Size = None,\n    weights_dtype: str = None,\n) -> torch.FloatTensor:\n    return_dtype = input.dtype\n    input, mm_output_shape = process_conv_input(conv_type, input, reversed_padding_repeated_twice, padding_mode, result_shape, stride, padding, dilation)\n    if svd_up is not None:\n        input = input.flatten(0,-2)\n        if bias is not None:\n            bias = torch.addmm(bias.to(dtype=svd_down.dtype), torch.mm(input.to(dtype=svd_down.dtype), svd_down), svd_up)\n        else:\n            bias = torch.mm(torch.mm(input.to(dtype=svd_down.dtype), svd_down), svd_up)\n\n    if quantized_weight_shape is not None:\n        weight = unpack_float(weight, quantized_weight_shape, weights_dtype).to(dtype=torch.float16).t_()\n        scale = scale.t()\n    elif weight.dtype != torch.float16:\n        weight = weight.to(dtype=torch.float16) # fp8 weights\n    input, scale = quantize_fp_mm_input_tensorwise(input, scale, matmul_dtype=\"float16\")\n    input, weight = check_mats(input, weight)\n\n    if groups == 1:\n        result = fp_mm_func(input, weight)\n    else:\n        weight = weight.view(weight.shape[0], groups, weight.shape[1] // groups)\n        input = input.view(input.shape[0], groups, input.shape[1] // groups)\n        result = []\n        for i in range(groups):\n            result.append(fp_mm_func(input[:, i], weight[:, i]))\n        result = torch.cat(result, dim=-1)\n    if bias is not None:\n        dequantize_symmetric_with_bias(result, scale, bias, dtype=return_dtype, result_shape=mm_output_shape)\n    else:\n        dequantize_symmetric(result, scale, dtype=return_dtype, result_shape=mm_output_shape)\n\n    if conv_type == 1:\n        result = result.transpose_(1,2)\n    elif conv_type == 2:\n        result = result.permute(0,3,1,2)\n    elif conv_type == 3:\n        result = result.permute(0,4,1,2,3)\n    return result\n\n\ndef quantized_conv_forward_fp16_matmul(self, input) -> torch.FloatTensor:\n    if self.sdnq_dequantizer.re_quantize_for_matmul:\n        weight, scale = self.sdnq_dequantizer.re_quantize_matmul(self.weight, self.scale, self.zero_point, None, None)\n        quantized_weight_shape = None\n    else:\n        weight, scale = self.weight, self.scale\n        quantized_weight_shape = self.sdnq_dequantizer.quantized_weight_shape if self.sdnq_dequantizer.is_packed else None\n    conv_type, stride, padding, dilation = get_conv_args(input.ndim, self.stride, self.padding, self.dilation)\n    return conv_fp16_matmul(\n        input, weight, scale,\n        self.sdnq_dequantizer.result_shape,\n        self._reversed_padding_repeated_twice,\n        self.padding_mode, conv_type,\n        self.groups, stride, padding, dilation,\n        bias=self.bias,\n        svd_up=self.svd_up,\n        svd_down=self.svd_down,\n        quantized_weight_shape=quantized_weight_shape,\n        weights_dtype=self.sdnq_dequantizer.weights_dtype,\n    )\n\n\nconv_fp16_matmul = compile_func(conv_fp16_matmul)\n"
  },
  {
    "path": "modules/sdnq/layers/conv/conv_fp8.py",
    "content": "# pylint: disable=relative-beyond-top-level,redefined-builtin,protected-access\n\nfrom typing import List\n\nimport torch\n\nfrom ...common import compile_func # noqa: TID252\nfrom ...packed_float import unpack_float # noqa: TID252\n\nfrom .forward import get_conv_args, process_conv_input\nfrom ..linear.linear_fp8 import quantize_fp_mm_input # noqa: TID252\nfrom ..linear.forward import check_mats # noqa: TID252\n\n\ndef conv_fp8_matmul(\n    input: torch.FloatTensor,\n    weight: torch.Tensor,\n    scale: torch.FloatTensor,\n    result_shape: torch.Size,\n    reversed_padding_repeated_twice: List[int],\n    padding_mode: str, conv_type: int,\n    groups: int, stride: List[int],\n    padding: List[int], dilation: List[int],\n    bias: torch.FloatTensor = None,\n    svd_up: torch.FloatTensor = None,\n    svd_down: torch.FloatTensor = None,\n    quantized_weight_shape: torch.Size = None,\n    weights_dtype: str = None,\n) -> torch.FloatTensor:\n    return_dtype = input.dtype\n    input, mm_output_shape = process_conv_input(conv_type, input, reversed_padding_repeated_twice, padding_mode, result_shape, stride, padding, dilation)\n    if svd_up is not None:\n        input = input.flatten(0,-2)\n        svd_bias = torch.mm(torch.mm(input.to(dtype=svd_down.dtype), svd_down), svd_up)\n\n    if quantized_weight_shape is not None:\n        weight = unpack_float(weight, quantized_weight_shape, weights_dtype).to(dtype=torch.float8_e4m3fn).t_()\n        scale = scale.t()\n    input, input_scale = quantize_fp_mm_input(input)\n    input, weight = check_mats(input, weight)\n\n    if groups == 1:\n        if bias is not None and bias.dtype != torch.bfloat16:\n            bias = bias.to(dtype=torch.bfloat16)\n        result = torch._scaled_mm(input, weight, scale_a=input_scale, scale_b=scale, bias=bias, out_dtype=torch.bfloat16)\n    else:\n        scale = scale.view(groups, 1, scale.shape[1] // groups)\n        input_scale = input_scale.view(groups, input_scale.shape[0] // groups, 1)\n        weight = weight.view(weight.shape[0], groups, weight.shape[1] // groups)\n        input = input.view(input.shape[0], groups, input.shape[1] // groups)\n        result = []\n        if bias is not None:\n            bias = bias.view(groups, bias.shape[0] // groups)\n            if bias.dtype != torch.bfloat16:\n                bias = bias.to(dtype=torch.bfloat16)\n            for i in range(groups):\n                result.append(torch._scaled_mm(input[:, i], weight[:, i], scale_a=input_scale[i], scale_b=scale[i], bias=bias[i], out_dtype=torch.bfloat16))\n        else:\n            for i in range(groups):\n                result.append(torch._scaled_mm(input[:, i], weight[:, i], scale_a=input_scale[i], scale_b=scale[i], bias=None, out_dtype=torch.bfloat16))\n        result = torch.cat(result, dim=-1)\n    if svd_up is not None:\n        result.add_(svd_bias)\n    result = result.view(mm_output_shape).to(return_dtype)\n\n    if conv_type == 1:\n        result = result.transpose_(1,2)\n    elif conv_type == 2:\n        result = result.permute(0,3,1,2)\n    elif conv_type == 3:\n        result = result.permute(0,4,1,2,3)\n    return result\n\n\ndef quantized_conv_forward_fp8_matmul(self, input) -> torch.FloatTensor:\n    if torch.numel(input) / input.shape[2] < 32:\n        return self._conv_forward(input, self.sdnq_dequantizer(self.weight, self.scale, self.zero_point, self.svd_up, self.svd_down, skip_quantized_matmul=True), self.bias)\n    if self.sdnq_dequantizer.re_quantize_for_matmul:\n        weight, scale = self.sdnq_dequantizer.re_quantize_matmul(self.weight, self.scale, self.zero_point, None, None)\n        quantized_weight_shape = None\n    else:\n        weight, scale = self.weight, self.scale\n        quantized_weight_shape = self.sdnq_dequantizer.quantized_weight_shape if self.sdnq_dequantizer.is_packed else None\n    conv_type, stride, padding, dilation = get_conv_args(input.ndim, self.stride, self.padding, self.dilation)\n    return conv_fp8_matmul(\n        input, weight, scale,\n        self.sdnq_dequantizer.result_shape,\n        self._reversed_padding_repeated_twice,\n        self.padding_mode, conv_type,\n        self.groups, stride, padding, dilation,\n        bias=self.bias,\n        svd_up=self.svd_up,\n        svd_down=self.svd_down,\n        quantized_weight_shape=quantized_weight_shape,\n        weights_dtype=self.sdnq_dequantizer.weights_dtype,\n    )\n\n\nconv_fp8_matmul = compile_func(conv_fp8_matmul)\n"
  },
  {
    "path": "modules/sdnq/layers/conv/conv_fp8_tensorwise.py",
    "content": "# pylint: disable=relative-beyond-top-level,redefined-builtin,protected-access\n\nfrom typing import List\n\nimport torch\n\nfrom ...common import compile_func # noqa: TID252\nfrom ...packed_float import unpack_float # noqa: TID252\nfrom ...dequantizer import dequantize_symmetric, dequantize_symmetric_with_bias # noqa: TID252\n\nfrom .forward import get_conv_args, process_conv_input\nfrom ..linear.linear_fp8_tensorwise import quantize_fp_mm_input_tensorwise # noqa: TID252\nfrom ..linear.forward import check_mats # noqa: TID252\n\n\ndef conv_fp8_matmul_tensorwise(\n    input: torch.FloatTensor,\n    weight: torch.Tensor,\n    scale: torch.FloatTensor,\n    result_shape: torch.Size,\n    reversed_padding_repeated_twice: List[int],\n    padding_mode: str, conv_type: int,\n    groups: int, stride: List[int],\n    padding: List[int], dilation: List[int],\n    bias: torch.FloatTensor = None,\n    svd_up: torch.FloatTensor = None,\n    svd_down: torch.FloatTensor = None,\n    quantized_weight_shape: torch.Size = None,\n    weights_dtype: str = None,\n) -> torch.FloatTensor:\n    return_dtype = input.dtype\n    input, mm_output_shape = process_conv_input(conv_type, input, reversed_padding_repeated_twice, padding_mode, result_shape, stride, padding, dilation)\n    if svd_up is not None:\n        input = input.flatten(0,-2)\n        if bias is not None:\n            bias = torch.addmm(bias.to(dtype=svd_down.dtype), torch.mm(input.to(dtype=svd_down.dtype), svd_down), svd_up)\n        else:\n            bias = torch.mm(torch.mm(input.to(dtype=svd_down.dtype), svd_down), svd_up)\n\n    if quantized_weight_shape is not None:\n        weight = unpack_float(weight, quantized_weight_shape, weights_dtype).to(dtype=torch.float8_e4m3fn).t_()\n        scale = scale.t()\n    input, scale = quantize_fp_mm_input_tensorwise(input, scale)\n    input, weight = check_mats(input, weight)\n    dummy_input_scale = torch.ones(1, device=input.device, dtype=torch.float32)\n\n    if groups == 1:\n        result = torch._scaled_mm(input, weight, scale_a=dummy_input_scale, scale_b=dummy_input_scale, bias=None, out_dtype=scale.dtype)\n    else:\n        weight = weight.view(weight.shape[0], groups, weight.shape[1] // groups)\n        input = input.view(input.shape[0], groups, input.shape[1] // groups)\n        result = []\n        for i in range(groups):\n            result.append(torch._scaled_mm(input[:, i], weight[:, i], scale_a=dummy_input_scale, scale_b=dummy_input_scale, bias=None, out_dtype=scale.dtype))\n        result = torch.cat(result, dim=-1)\n    if bias is not None:\n        dequantize_symmetric_with_bias(result, scale, bias, dtype=return_dtype, result_shape=mm_output_shape)\n    else:\n        dequantize_symmetric(result, scale, dtype=return_dtype, result_shape=mm_output_shape)\n\n    if conv_type == 1:\n        result = result.transpose_(1,2)\n    elif conv_type == 2:\n        result = result.permute(0,3,1,2)\n    elif conv_type == 3:\n        result = result.permute(0,4,1,2,3)\n    return result\n\n\ndef quantized_conv_forward_fp8_matmul_tensorwise(self, input) -> torch.FloatTensor:\n    if torch.numel(input) / input.shape[2] < 32:\n        return self._conv_forward(input, self.sdnq_dequantizer(self.weight, self.scale, self.zero_point, self.svd_up, self.svd_down, skip_quantized_matmul=True), self.bias)\n    if self.sdnq_dequantizer.re_quantize_for_matmul:\n        weight, scale = self.sdnq_dequantizer.re_quantize_matmul(self.weight, self.scale, self.zero_point, None, None)\n        quantized_weight_shape = None\n    else:\n        weight, scale = self.weight, self.scale\n        quantized_weight_shape = self.sdnq_dequantizer.quantized_weight_shape if self.sdnq_dequantizer.is_packed else None\n    conv_type, stride, padding, dilation = get_conv_args(input.ndim, self.stride, self.padding, self.dilation)\n    return conv_fp8_matmul_tensorwise(\n        input, weight, scale,\n        self.sdnq_dequantizer.result_shape,\n        self._reversed_padding_repeated_twice,\n        self.padding_mode, conv_type,\n        self.groups, stride, padding, dilation,\n        bias=self.bias,\n        svd_up=self.svd_up,\n        svd_down=self.svd_down,\n        quantized_weight_shape=quantized_weight_shape,\n        weights_dtype=self.sdnq_dequantizer.weights_dtype,\n    )\n\n\nconv_fp8_matmul_tensorwise = compile_func(conv_fp8_matmul_tensorwise)\n"
  },
  {
    "path": "modules/sdnq/layers/conv/conv_int8.py",
    "content": "# pylint: disable=relative-beyond-top-level,redefined-builtin,protected-access\n\nfrom typing import List\n\nimport torch\n\nfrom ...common import compile_func, int_mm_func # noqa: TID252\nfrom ...packed_int import unpack_int_symetric # noqa: TID252\nfrom ...dequantizer import dequantize_symmetric, dequantize_symmetric_with_bias # noqa: TID252\n\nfrom .forward import get_conv_args, process_conv_input\nfrom ..linear.linear_int8 import quantize_int_mm_input # noqa: TID252\nfrom ..linear.forward import check_mats # noqa: TID252\n\n\ndef conv_int8_matmul(\n    input: torch.FloatTensor,\n    weight: torch.Tensor,\n    scale: torch.FloatTensor,\n    result_shape: torch.Size,\n    reversed_padding_repeated_twice: List[int],\n    padding_mode: str, conv_type: int,\n    groups: int, stride: List[int],\n    padding: List[int], dilation: List[int],\n    bias: torch.FloatTensor = None,\n    svd_up: torch.FloatTensor = None,\n    svd_down: torch.FloatTensor = None,\n    quantized_weight_shape: torch.Size = None,\n    weights_dtype: str = None,\n) -> torch.FloatTensor:\n    return_dtype = input.dtype\n    input, mm_output_shape = process_conv_input(conv_type, input, reversed_padding_repeated_twice, padding_mode, result_shape, stride, padding, dilation)\n    if svd_up is not None:\n        input = input.flatten(0,-2)\n        if bias is not None:\n            bias = torch.addmm(bias.to(dtype=svd_down.dtype), torch.mm(input.to(dtype=svd_down.dtype), svd_down), svd_up)\n        else:\n            bias = torch.mm(torch.mm(input.to(dtype=svd_down.dtype), svd_down), svd_up)\n\n    if quantized_weight_shape is not None:\n        weight = unpack_int_symetric(weight, quantized_weight_shape, weights_dtype, dtype=torch.int8).t_()\n        scale = scale.t()\n    input, scale = quantize_int_mm_input(input, scale)\n    input, weight = check_mats(input, weight)\n\n    if groups == 1:\n        result = int_mm_func(input, weight)\n    else:\n        weight = weight.view(weight.shape[0], groups, weight.shape[1] // groups)\n        input = input.view(input.shape[0], groups, input.shape[1] // groups)\n        result = []\n        for i in range(groups):\n            result.append(int_mm_func(input[:, i], weight[:, i]))\n        result = torch.cat(result, dim=-1)\n    if bias is not None:\n        result = dequantize_symmetric_with_bias(result, scale, bias, dtype=return_dtype, result_shape=mm_output_shape)\n    else:\n        result = dequantize_symmetric(result, scale, dtype=return_dtype, result_shape=mm_output_shape)\n\n    if conv_type == 1:\n        result = result.transpose_(1,2)\n    elif conv_type == 2:\n        result = result.permute(0,3,1,2)\n    elif conv_type == 3:\n        result = result.permute(0,4,1,2,3)\n    return result\n\n\ndef quantized_conv_forward_int8_matmul(self, input) -> torch.FloatTensor:\n    if torch.numel(input) / input.shape[2] < 32:\n        return self._conv_forward(input, self.sdnq_dequantizer(self.weight, self.scale, self.zero_point, self.svd_up, self.svd_down, skip_quantized_matmul=True), self.bias)\n    conv_type, stride, padding, dilation = get_conv_args(input.ndim, self.stride, self.padding, self.dilation)\n    if self.sdnq_dequantizer.re_quantize_for_matmul:\n        weight, scale = self.sdnq_dequantizer.re_quantize_matmul(self.weight, self.scale, self.zero_point, None, None)\n        quantized_weight_shape = None\n    else:\n        weight, scale = self.weight, self.scale\n        quantized_weight_shape = self.sdnq_dequantizer.quantized_weight_shape if self.sdnq_dequantizer.is_packed else None\n    return conv_int8_matmul(\n        input, weight, scale,\n        self.sdnq_dequantizer.result_shape,\n        self._reversed_padding_repeated_twice,\n        self.padding_mode, conv_type,\n        self.groups, stride, padding, dilation,\n        bias=self.bias,\n        svd_up=self.svd_up,\n        svd_down=self.svd_down,\n        quantized_weight_shape=quantized_weight_shape,\n        weights_dtype=self.sdnq_dequantizer.weights_dtype,\n    )\n\n\nconv_int8_matmul = compile_func(conv_int8_matmul)\n"
  },
  {
    "path": "modules/sdnq/layers/conv/forward.py",
    "content": "# pylint: disable=relative-beyond-top-level,redefined-builtin,protected-access\n\nfrom typing import Optional\n\nimport torch\n\n\ndef get_conv_args(input_ndim: int, stride, padding, dilation):\n    if input_ndim == 3:\n        conv_type = 1\n    elif input_ndim == 4:\n        conv_type = 2\n    else:\n        conv_type = 3\n    if isinstance(stride, int):\n        stride = (stride,) * conv_type\n    if isinstance(padding, int):\n        padding = (padding,) * conv_type\n    if isinstance(dilation, int):\n        dilation = (dilation,) * conv_type\n    if conv_type == 1:\n        stride = (1, stride[0])\n        padding = (0, padding[0])\n        dilation = (1, dilation[0])\n    return conv_type, stride, padding, dilation\n\n\ndef process_conv_input(conv_type, input, reversed_padding_repeated_twice, padding_mode, result_shape, stride, padding, dilation):\n    if conv_type == 1:\n        batch_size, _, L_in = input.shape\n        C_out, _, K_l = result_shape\n        L_out = (L_in + 2 * padding[1] - dilation[1] * (K_l - 1) - 1) // stride[1] + 1\n        mm_output_shape = (batch_size, L_out, C_out)\n        kernel_size = (1, K_l)\n    if conv_type == 2:\n        batch_size, _, H_in, W_in = input.shape\n        C_out, _, K_h, K_w = result_shape\n        H_out = (H_in + 2 * padding[0] - dilation[0] * (K_h - 1) - 1) // stride[0] + 1\n        W_out = (W_in + 2 * padding[1] - dilation[1] * (K_w - 1) - 1) // stride[1] + 1\n        mm_output_shape = (batch_size, H_out, W_out, C_out)\n        kernel_size = (K_h, K_w)\n    else:\n        batch_size, _, D_in, H_in, W_in = input.shape\n        C_out, _, K_d, K_h, K_w = result_shape\n        D_out = (D_in + 2 * padding[0] - dilation[0] * (K_d - 1) - 1) // stride[0] + 1\n        H_out = (H_in + 2 * padding[1] - dilation[1] * (K_h - 1) - 1) // stride[1] + 1\n        W_out = (W_in + 2 * padding[2] - dilation[2] * (K_w - 1) - 1) // stride[2] + 1\n        mm_output_shape = (batch_size, D_out, H_out, W_out, C_out)\n        kernel_size = (K_d, K_h, K_w)\n\n    if padding_mode != \"zeros\":\n        input = torch.nn.functional.pad(input, reversed_padding_repeated_twice, mode=padding_mode)\n        padding = (0,) * (conv_type if conv_type != 1 else 2)\n    elif conv_type == 3:\n        input = torch.nn.functional.pad(input, reversed_padding_repeated_twice)\n\n    if conv_type == 1:\n        input = input.unsqueeze(2)\n\n    if conv_type == 3:\n        K_D_eff = K_d + (K_d - 1) * (dilation[0] - 1)\n        K_H_eff = K_h + (K_h - 1) * (dilation[0] - 1)\n        K_W_eff = K_w + (K_w - 1) * (dilation[0] - 1)\n        input = input.unfold(2, K_D_eff, stride[0]).unfold(3, K_H_eff, stride[1]).unfold(4, K_W_eff, stride[2])\n        if dilation[0] > 1:\n            input = input[..., ::dilation[0], :, :]\n        if dilation[1] > 1:\n            input = input[..., ::dilation[1], :]\n        if dilation[2] > 1:\n            input = input[..., ::dilation[2]]\n        input = input.permute(0, 2, 3, 4, 1, 5, 6, 7).reshape(batch_size, D_out * H_out * W_out, -1)\n    else:\n        input = torch.nn.functional.unfold(input, kernel_size=kernel_size, padding=padding, stride=stride, dilation=dilation).transpose(1,2)\n    return input, mm_output_shape\n\n\ndef quantized_conv_forward(self, input) -> torch.FloatTensor:\n    return self._conv_forward(input, self.sdnq_dequantizer(self.weight, self.scale, self.zero_point, self.svd_up, self.svd_down), self.bias)\n\n\ndef quantized_conv_transpose_1d_forward(self, input: torch.FloatTensor, output_size: Optional[list[int]] = None) -> torch.FloatTensor:\n    output_padding = self._output_padding(input, output_size, self.stride, self.padding, self.kernel_size, 1, self.dilation)\n    return torch.nn.functional.conv_transpose1d(input, self.sdnq_dequantizer(self.weight, self.scale, self.zero_point, self.svd_up, self.svd_down), self.bias, self.stride, self.padding, output_padding, self.groups, self.dilation)\n\n\ndef quantized_conv_transpose_2d_forward(self, input: torch.FloatTensor, output_size: Optional[list[int]] = None) -> torch.FloatTensor:\n    output_padding = self._output_padding(input, output_size, self.stride, self.padding, self.kernel_size, 2, self.dilation)\n    return torch.nn.functional.conv_transpose2d(input, self.sdnq_dequantizer(self.weight, self.scale, self.zero_point, self.svd_up, self.svd_down), self.bias, self.stride, self.padding, output_padding, self.groups, self.dilation)\n\n\ndef quantized_conv_transpose_3d_forward(self, input: torch.FloatTensor, output_size: Optional[list[int]] = None) -> torch.FloatTensor:\n    output_padding = self._output_padding(input, output_size, self.stride, self.padding, self.kernel_size, 3, self.dilation)\n    return torch.nn.functional.conv_transpose3d(input, self.sdnq_dequantizer(self.weight, self.scale, self.zero_point, self.svd_up, self.svd_down), self.bias, self.stride, self.padding, output_padding, self.groups, self.dilation)\n"
  },
  {
    "path": "modules/sdnq/layers/linear/forward.py",
    "content": "# pylint: disable=relative-beyond-top-level,redefined-builtin,protected-access\n\nfrom typing import Tuple\n\nimport torch\n\nfrom ...common import use_contiguous_mm # noqa: TID252\n\n\ndef check_mats(input: torch.Tensor, weight: torch.Tensor, allow_contiguous_mm: bool = True) -> Tuple[torch.Tensor, torch.Tensor]:\n    input = input.contiguous()\n    if allow_contiguous_mm and use_contiguous_mm:\n        weight = weight.contiguous()\n    elif weight.is_contiguous():\n        weight = weight.t().contiguous().t()\n    return input, weight\n\n\ndef quantized_linear_forward(self, input: torch.FloatTensor) -> torch.FloatTensor:\n    return torch.nn.functional.linear(input, self.sdnq_dequantizer(self.weight, self.scale, self.zero_point, self.svd_up, self.svd_down), self.bias)\n"
  },
  {
    "path": "modules/sdnq/layers/linear/linear_fp16.py",
    "content": "# pylint: disable=relative-beyond-top-level,redefined-builtin,protected-access\n\nimport torch\n\nfrom ...common import compile_func, fp_mm_func # noqa: TID252\nfrom ...packed_float import unpack_float # noqa: TID252\nfrom ...dequantizer import dequantize_symmetric, dequantize_symmetric_with_bias # noqa: TID252\n\nfrom .forward import check_mats\nfrom .linear_fp8_tensorwise import quantize_fp_mm_input_tensorwise\n\n\ndef fp16_matmul(\n    input: torch.FloatTensor,\n    weight: torch.Tensor,\n    scale: torch.FloatTensor,\n    bias: torch.FloatTensor = None,\n    svd_up: torch.FloatTensor = None,\n    svd_down: torch.FloatTensor = None,\n    quantized_weight_shape: torch.Size = None,\n    weights_dtype: str = None,\n) -> torch.FloatTensor:\n    if quantized_weight_shape is not None:\n        weight = unpack_float(weight, quantized_weight_shape, weights_dtype).to(dtype=torch.float16).t_()\n        scale = scale.t()\n    elif weight.dtype != torch.float16:\n        weight = weight.to(dtype=torch.float16) # fp8 weights\n    return_dtype = input.dtype\n    output_shape = (*input.shape[:-1], weight.shape[-1])\n    if svd_up is not None:\n        input = input.flatten(0,-2)\n        if bias is not None:\n            bias = torch.addmm(bias.to(dtype=svd_down.dtype), torch.mm(input.to(dtype=svd_down.dtype), svd_down), svd_up)\n        else:\n            bias = torch.mm(torch.mm(input.to(dtype=svd_down.dtype), svd_down), svd_up)\n    input, scale = quantize_fp_mm_input_tensorwise(input, scale, matmul_dtype=\"float16\")\n    input, weight = check_mats(input, weight)\n    if bias is not None:\n        return dequantize_symmetric_with_bias(fp_mm_func(input, weight), scale, bias, dtype=return_dtype, result_shape=output_shape)\n    else:\n        return dequantize_symmetric(fp_mm_func(input, weight), scale, dtype=return_dtype, result_shape=output_shape)\n\n\ndef quantized_linear_forward_fp16_matmul(self, input: torch.FloatTensor) -> torch.FloatTensor:\n    if self.sdnq_dequantizer.re_quantize_for_matmul:\n        weight, scale = self.sdnq_dequantizer.re_quantize_matmul(self.weight, self.scale, self.zero_point, None, None)\n        quantized_weight_shape = None\n    else:\n        weight, scale = self.weight, self.scale\n        quantized_weight_shape = self.sdnq_dequantizer.quantized_weight_shape if self.sdnq_dequantizer.is_packed else None\n    return fp16_matmul(\n        input, weight, scale,\n        bias=self.bias,\n        svd_up=self.svd_up,\n        svd_down=self.svd_down,\n        quantized_weight_shape=quantized_weight_shape,\n        weights_dtype=self.sdnq_dequantizer.weights_dtype,\n    )\n\n\nfp16_matmul = compile_func(fp16_matmul)\n"
  },
  {
    "path": "modules/sdnq/layers/linear/linear_fp8.py",
    "content": "# pylint: disable=relative-beyond-top-level,redefined-builtin,protected-access\n\nfrom typing import Tuple\n\nimport torch\n\nfrom ...common import compile_func # noqa: TID252\nfrom ...packed_float import unpack_float # noqa: TID252\nfrom ...dequantizer import quantize_fp_mm # noqa: TID252\n\nfrom .forward import check_mats\n\n\ndef quantize_fp_mm_input(input: torch.FloatTensor, matmul_dtype: str = \"float8_e4m3fn\") -> Tuple[torch.Tensor, torch.FloatTensor]:\n    input = input.flatten(0,-2).to(dtype=torch.float32)\n    input, input_scale = quantize_fp_mm(input, dim=-1, matmul_dtype=matmul_dtype)\n    return input, input_scale\n\n\ndef fp8_matmul(\n    input: torch.FloatTensor,\n    weight: torch.Tensor,\n    scale: torch.FloatTensor,\n    bias: torch.FloatTensor = None,\n    svd_up: torch.FloatTensor = None,\n    svd_down: torch.FloatTensor = None,\n    quantized_weight_shape: torch.Size = None,\n    weights_dtype: str = None,\n) -> torch.FloatTensor:\n    if quantized_weight_shape is not None:\n        weight = unpack_float(weight, quantized_weight_shape, weights_dtype).to(dtype=torch.float8_e4m3fn).t_()\n        scale = scale.t()\n    return_dtype = input.dtype\n    output_shape = (*input.shape[:-1], weight.shape[-1])\n    if svd_up is not None:\n        input = input.flatten(0,-2)\n        svd_bias = torch.mm(torch.mm(input.to(dtype=svd_down.dtype), svd_down), svd_up)\n    input, input_scale = quantize_fp_mm_input(input)\n    input, weight = check_mats(input, weight, allow_contiguous_mm=False)\n    if bias is not None and bias.dtype != torch.bfloat16:\n        bias = bias.to(dtype=torch.bfloat16)\n    result = torch._scaled_mm(input, weight, scale_a=input_scale, scale_b=scale, bias=bias, out_dtype=torch.bfloat16)\n    if svd_up is not None:\n        result.add_(svd_bias)\n    result = result.view(output_shape).to(return_dtype)\n    return result\n\n\ndef quantized_linear_forward_fp8_matmul(self, input: torch.FloatTensor) -> torch.FloatTensor:\n    if torch.numel(input) / input.shape[-1] < 32:\n        return torch.nn.functional.linear(input, self.sdnq_dequantizer(self.weight, self.scale, self.zero_point, self.svd_up, self.svd_down, skip_quantized_matmul=True), self.bias)\n    if self.sdnq_dequantizer.re_quantize_for_matmul:\n        weight, scale = self.sdnq_dequantizer.re_quantize_matmul(self.weight, self.scale, self.zero_point, None, None)\n        quantized_weight_shape = None\n    else:\n        weight, scale = self.weight, self.scale\n        quantized_weight_shape = self.sdnq_dequantizer.quantized_weight_shape if self.sdnq_dequantizer.is_packed else None\n    return fp8_matmul(\n        input, weight, scale,\n        bias=self.bias,\n        svd_up=self.svd_up,\n        svd_down=self.svd_down,\n        quantized_weight_shape=quantized_weight_shape,\n        weights_dtype=self.sdnq_dequantizer.weights_dtype,\n    )\n\n\nfp8_matmul = compile_func(fp8_matmul)\n"
  },
  {
    "path": "modules/sdnq/layers/linear/linear_fp8_tensorwise.py",
    "content": "# pylint: disable=relative-beyond-top-level,redefined-builtin,protected-access\n\nfrom typing import Tuple\n\nimport torch\n\nfrom ...common import compile_func # noqa: TID252\nfrom ...packed_float import unpack_float # noqa: TID252\nfrom ...dequantizer import quantize_fp_mm, dequantize_symmetric, dequantize_symmetric_with_bias # noqa: TID252\n\nfrom .forward import check_mats\n\n\ndef quantize_fp_mm_input_tensorwise(input: torch.FloatTensor, scale: torch.FloatTensor, matmul_dtype: str = \"float8_e4m3fn\") -> Tuple[torch.Tensor, torch.FloatTensor]:\n    input = input.flatten(0,-2).to(dtype=scale.dtype)\n    input, input_scale = quantize_fp_mm(input, dim=-1, matmul_dtype=matmul_dtype)\n    scale = torch.mul(input_scale, scale)\n    if scale.dtype == torch.float16: # fp16 will overflow\n        scale = scale.to(dtype=torch.float32)\n    return input, scale\n\n\ndef fp8_matmul_tensorwise(\n    input: torch.FloatTensor,\n    weight: torch.Tensor,\n    scale: torch.FloatTensor,\n    bias: torch.FloatTensor = None,\n    svd_up: torch.FloatTensor = None,\n    svd_down: torch.FloatTensor = None,\n    quantized_weight_shape: torch.Size = None,\n    weights_dtype: str = None,\n) -> torch.FloatTensor:\n    if quantized_weight_shape is not None:\n        weight = unpack_float(weight, quantized_weight_shape, weights_dtype).to(dtype=torch.float8_e4m3fn).t_()\n        scale = scale.t()\n    return_dtype = input.dtype\n    output_shape = (*input.shape[:-1], weight.shape[-1])\n    if svd_up is not None:\n        input = input.flatten(0,-2)\n        if bias is not None:\n            bias = torch.addmm(bias.to(dtype=svd_down.dtype), torch.mm(input.to(dtype=svd_down.dtype), svd_down), svd_up)\n        else:\n            bias = torch.mm(torch.mm(input.to(dtype=svd_down.dtype), svd_down), svd_up)\n    dummy_input_scale = torch.ones(1, device=input.device, dtype=torch.float32)\n    input, scale = quantize_fp_mm_input_tensorwise(input, scale)\n    input, weight = check_mats(input, weight, allow_contiguous_mm=False)\n    if bias is not None:\n        return dequantize_symmetric_with_bias(torch._scaled_mm(input, weight, scale_a=dummy_input_scale, scale_b=dummy_input_scale, bias=None, out_dtype=scale.dtype), scale, bias, dtype=return_dtype, result_shape=output_shape)\n    else:\n        return dequantize_symmetric(torch._scaled_mm(input, weight, scale_a=dummy_input_scale, scale_b=dummy_input_scale, bias=None, out_dtype=scale.dtype), scale, dtype=return_dtype, result_shape=output_shape)\n\n\ndef quantized_linear_forward_fp8_matmul_tensorwise(self, input: torch.FloatTensor) -> torch.FloatTensor:\n    if torch.numel(input) / input.shape[-1] < 32:\n        return torch.nn.functional.linear(input, self.sdnq_dequantizer(self.weight, self.scale, self.zero_point, self.svd_up, self.svd_down, skip_quantized_matmul=True), self.bias)\n    if self.sdnq_dequantizer.re_quantize_for_matmul:\n        weight, scale = self.sdnq_dequantizer.re_quantize_matmul(self.weight, self.scale, self.zero_point, None, None)\n        quantized_weight_shape = None\n    else:\n        weight, scale = self.weight, self.scale\n        quantized_weight_shape = self.sdnq_dequantizer.quantized_weight_shape if self.sdnq_dequantizer.is_packed else None\n    return fp8_matmul_tensorwise(\n        input, weight, scale,\n        bias=self.bias,\n        svd_up=self.svd_up,\n        svd_down=self.svd_down,\n        quantized_weight_shape=quantized_weight_shape,\n        weights_dtype=self.sdnq_dequantizer.weights_dtype,\n    )\n\n\nfp8_matmul_tensorwise = compile_func(fp8_matmul_tensorwise)\n"
  },
  {
    "path": "modules/sdnq/layers/linear/linear_int8.py",
    "content": "# pylint: disable=relative-beyond-top-level,redefined-builtin,protected-access\n\nfrom typing import Tuple\n\nimport torch\n\nfrom ...common import compile_func, int_mm_func # noqa: TID252\nfrom ...packed_int import unpack_int_symetric # noqa: TID252\nfrom ...dequantizer import quantize_int_mm, dequantize_symmetric, dequantize_symmetric_with_bias # noqa: TID252\n\nfrom .forward import check_mats\n\n\ndef quantize_int_mm_input(input: torch.FloatTensor, scale: torch.FloatTensor) -> Tuple[torch.CharTensor, torch.FloatTensor]:\n    input = input.flatten(0,-2).to(dtype=scale.dtype)\n    input, input_scale = quantize_int_mm(input, dim=-1)\n    scale = torch.mul(input_scale, scale)\n    if scale.dtype == torch.float16: # fp16 will overflow\n        scale = scale.to(dtype=torch.float32)\n    return input, scale\n\n\ndef int8_matmul(\n    input: torch.FloatTensor,\n    weight: torch.Tensor,\n    scale: torch.FloatTensor,\n    bias: torch.FloatTensor = None,\n    svd_up: torch.FloatTensor = None,\n    svd_down: torch.FloatTensor = None,\n    quantized_weight_shape: torch.Size = None,\n    weights_dtype: str = None,\n) -> torch.FloatTensor:\n    if quantized_weight_shape is not None:\n        weight = unpack_int_symetric(weight, quantized_weight_shape, weights_dtype, dtype=torch.int8).t_()\n        scale = scale.t()\n    return_dtype = input.dtype\n    output_shape = (*input.shape[:-1], weight.shape[-1])\n    if svd_up is not None:\n        input = input.flatten(0,-2)\n        if bias is not None:\n            bias = torch.addmm(bias.to(dtype=svd_down.dtype), torch.mm(input.to(dtype=svd_down.dtype), svd_down), svd_up)\n        else:\n            bias = torch.mm(torch.mm(input.to(dtype=svd_down.dtype), svd_down), svd_up)\n    input, scale = quantize_int_mm_input(input, scale)\n    input, weight = check_mats(input, weight)\n    if bias is not None:\n        return dequantize_symmetric_with_bias(int_mm_func(input, weight), scale, bias, dtype=return_dtype, result_shape=output_shape)\n    else:\n        return dequantize_symmetric(int_mm_func(input, weight), scale, dtype=return_dtype, result_shape=output_shape)\n\n\ndef quantized_linear_forward_int8_matmul(self, input: torch.FloatTensor) -> torch.FloatTensor:\n    if torch.numel(input) / input.shape[-1] < 32:\n        return torch.nn.functional.linear(input, self.sdnq_dequantizer(self.weight, self.scale, self.zero_point, self.svd_up, self.svd_down, skip_quantized_matmul=True), self.bias)\n    if self.sdnq_dequantizer.re_quantize_for_matmul:\n        weight, scale = self.sdnq_dequantizer.re_quantize_matmul(self.weight, self.scale, self.zero_point, None, None)\n        quantized_weight_shape = None\n    else:\n        weight, scale = self.weight, self.scale\n        quantized_weight_shape = self.sdnq_dequantizer.quantized_weight_shape if self.sdnq_dequantizer.is_packed else None\n    return int8_matmul(\n        input, weight, scale,\n        bias=self.bias,\n        svd_up=self.svd_up,\n        svd_down=self.svd_down,\n        quantized_weight_shape=quantized_weight_shape,\n        weights_dtype=self.sdnq_dequantizer.weights_dtype,\n    )\n\n\nint8_matmul = compile_func(int8_matmul)\n"
  },
  {
    "path": "modules/sdnq/loader.py",
    "content": "import os\nimport json\nimport torch\nfrom diffusers.models.modeling_utils import ModelMixin\n\nfrom .common import dtype_dict, use_tensorwise_fp8_matmul, check_torch_compile, conv_types, linear_types\nfrom .quantizer import SDNQConfig, sdnq_post_load_quant, prepare_weight_for_matmul, prepare_svd_for_matmul, get_quant_args_from_config\nfrom .forward import get_forward_func\nfrom .file_loader import load_files\n\n\ndef get_module_names(model: ModelMixin) -> list:\n    modules_names = model._internal_dict.keys() # pylint: disable=protected-access\n    modules_names = [m for m in modules_names if not m.startswith(\"_\")]\n    modules_names = [m for m in modules_names if isinstance(getattr(model, m, None), torch.nn.Module)]\n    modules_names = sorted(set(modules_names))\n    return modules_names\n\n\ndef unset_config_on_save(quantization_config: SDNQConfig) -> SDNQConfig:\n    quantization_config.quantization_device = None\n    quantization_config.return_device = None\n    quantization_config.non_blocking = False\n    quantization_config.add_skip_keys = False\n    return quantization_config\n\n\ndef save_sdnq_model(model: ModelMixin, model_path: str, max_shard_size: str = \"5GB\", is_pipeline: bool = False, sdnq_config: SDNQConfig = None) -> None:\n    if is_pipeline:\n        for module_name in get_module_names(model):\n            module = getattr(model, module_name, None)\n            if hasattr(module, \"config\") and hasattr(module.config, \"quantization_config\") and isinstance(module.config.quantization_config, SDNQConfig):\n                module.config.quantization_config = unset_config_on_save(module.config.quantization_config)\n            if hasattr(module, \"quantization_config\") and isinstance(module.quantization_config, SDNQConfig):\n                module.quantization_config = unset_config_on_save(module.quantization_config)\n    else:\n        if hasattr(model, \"config\") and hasattr(model.config, \"quantization_config\") and isinstance(model.config.quantization_config, SDNQConfig):\n            model.config.quantization_config = unset_config_on_save(model.config.quantization_config)\n        if hasattr(model, \"quantization_config\") and isinstance(model.quantization_config, SDNQConfig):\n            model.quantization_config = unset_config_on_save(model.quantization_config)\n\n    model.save_pretrained(model_path, max_shard_size=max_shard_size) # actual save\n\n    quantization_config_path = os.path.join(model_path, \"quantization_config.json\")\n    if sdnq_config is not None: # if provided, save global config\n        sdnq_config = unset_config_on_save(sdnq_config)\n        sdnq_config.to_json_file(quantization_config_path)\n\n    if is_pipeline:\n        for module_name in get_module_names(model): # save per-module config if available\n            module = getattr(model, module_name, None)\n            if module is None:\n                continue\n            module_quantization_config_path = os.path.join(model_path, module_name, \"quantization_config.json\")\n            if hasattr(module, \"quantization_config\") and isinstance(module.quantization_config, SDNQConfig):\n                module.quantization_config.to_json_file(module_quantization_config_path)\n            elif hasattr(module, \"config\") and hasattr(module.config, \"quantization_config\") and isinstance(module.config.quantization_config, SDNQConfig):\n                module.config.quantization_config.to_json_file(module_quantization_config_path)\n    elif sdnq_config is None:\n        if hasattr(model, \"quantization_config\") and isinstance(model.quantization_config, SDNQConfig):\n            model.quantization_config.to_json_file(quantization_config_path)\n        elif hasattr(model, \"config\") and hasattr(model.config, \"quantization_config\") and isinstance(model.config.quantization_config, SDNQConfig):\n            model.config.quantization_config.to_json_file(quantization_config_path)\n\n\ndef load_sdnq_model(model_path: str, model_cls: ModelMixin = None, file_name: str = None, dtype: torch.dtype = None, device: torch.device = \"cpu\", dequantize_fp32: bool = None, use_quantized_matmul: bool = None, model_config: dict = None, quantization_config: dict = None, load_method: str = \"safetensors\") -> ModelMixin:\n    from accelerate import init_empty_weights\n\n    with init_empty_weights():\n        model_config_path = os.path.join(model_path, \"config.json\")\n        quantization_config_path = os.path.join(model_path, \"quantization_config.json\")\n\n        if model_config is None:\n            if os.path.exists(model_config_path):\n                with open(model_config_path, \"r\", encoding=\"utf-8\") as f:\n                    model_config = json.load(f)\n            else:\n                model_config = {}\n\n        if quantization_config is None:\n            if os.path.exists(quantization_config_path):\n                with open(quantization_config_path, \"r\", encoding=\"utf-8\") as f:\n                    quantization_config = json.load(f)\n            else:\n                quantization_config = model_config.get(\"quantization_config\", None)\n                if quantization_config is None:\n                    raise ValueError(f\"Cannot determine quantization_config for {model_path}, please provide quantization_config argument\")\n\n        if model_cls is None:\n            import transformers\n            import diffusers\n            class_name = model_config.get(\"_class_name\", None) or model_config.get(\"architectures\", None)\n            if isinstance(class_name, list):\n                class_name = class_name[0]\n            if class_name is not None:\n                model_cls = getattr(diffusers, class_name, None) or getattr(transformers, class_name, None)\n        if model_cls is None:\n            raise ValueError(f\"Cannot determine model class for {model_path}, please provide model_cls argument\")\n\n        if hasattr(model_cls, \"load_config\") and hasattr(model_cls, \"from_config\"):\n            config = model_cls.load_config(model_path)\n            model = model_cls.from_config(config)\n        elif hasattr(model_cls, \"_from_config\"):\n            config = transformers.AutoConfig.from_pretrained(model_path)\n            model = model_cls(config)\n        else:\n            model = model_cls(**model_config)\n\n        model = sdnq_post_load_quant(model, torch_dtype=dtype, add_skip_keys=False, use_dynamic_quantization=False, **get_quant_args_from_config(quantization_config))\n\n    key_mapping = getattr(model, \"_checkpoint_conversion_mapping\", None)\n    files = []\n\n    if file_name:\n        files.append(os.path.join(model_path, file_name))\n    else:\n        all_files = os.listdir(model_path)\n        files = sorted([os.path.join(model_path, f) for f in all_files if f.endswith(\".safetensors\")])\n\n    state_dict = load_files(files, key_mapping=key_mapping, device=device, method=load_method)\n\n    if isinstance(getattr(model, \"_tied_weights_keys\", None), dict):\n        for key, value in model._tied_weights_keys.items(): # pylint: disable=protected-access\n            if value in state_dict.keys() and key not in state_dict.keys():\n                state_dict[key] = state_dict[value]\n    else:\n        # older transformers case, handle known models manually\n        if model.__class__.__name__ in {\"T5EncoderModel\", \"UMT5EncoderModel\"} and \"encoder.embed_tokens.weight\" not in state_dict.keys():\n            state_dict[\"encoder.embed_tokens.weight\"] = state_dict[\"shared.weight\"]\n        elif model.__class__.__name__ in {\"Qwen3ForCausalLM\"} and \"lm_head.weight\" not in state_dict.keys():\n            if \"model.embed_tokens.weight\" in state_dict.keys():\n                state_dict[\"lm_head.weight\"] = state_dict[\"model.embed_tokens.weight\"]\n\n    model.load_state_dict(state_dict, assign=True)\n    del state_dict\n\n    model = post_process_model(model)\n    if (dtype is not None) or (dequantize_fp32 is not None) or (use_quantized_matmul is not None):\n        model = apply_sdnq_options_to_model(model, dtype=dtype, dequantize_fp32=dequantize_fp32, use_quantized_matmul=use_quantized_matmul)\n    return model\n\n\ndef post_process_model(model):\n    has_children = list(model.children())\n    if not has_children:\n        return model\n    for module_name, module in model.named_children():\n        if hasattr(module, \"sdnq_dequantizer\"):\n            module.weight.requires_grad_(False)\n            module.scale.requires_grad_(False)\n            if module.zero_point is not None:\n                module.zero_point.requires_grad_(False)\n            if module.sdnq_dequantizer.use_quantized_matmul and not module.sdnq_dequantizer.re_quantize_for_matmul:\n                module.weight.data = prepare_weight_for_matmul(module.weight)\n            if module.svd_up is not None:\n                module.svd_up.requires_grad_(False)\n                module.svd_down.requires_grad_(False)\n                module.svd_up.data, module.svd_down.data = prepare_svd_for_matmul(module.svd_up, module.svd_down, module.sdnq_dequantizer.use_quantized_matmul)\n            setattr(model, module_name, module)\n        else:\n            setattr(model, module_name, post_process_model(module))\n    return model\n\n\ndef apply_sdnq_options_to_module(model, dtype: torch.dtype = None, dequantize_fp32: bool = None, use_quantized_matmul: bool = None):\n    has_children = list(model.children())\n    if not has_children:\n        if dtype is not None and getattr(model, \"dtype\", torch.float32) != torch.float32:\n            model = model.to(dtype=dtype)\n        return model\n    for module_name, module in model.named_children():\n        if hasattr(module, \"sdnq_dequantizer\"):\n            layer_class_name = module.original_class.__name__\n            current_use_quantized_matmul = use_quantized_matmul\n            if current_use_quantized_matmul:\n                if layer_class_name in conv_types:\n                    output_channel_size, channel_size = module.sdnq_dequantizer.original_shape[:2]\n                elif layer_class_name in linear_types:\n                    output_channel_size, channel_size = module.sdnq_dequantizer.original_shape\n                else:\n                    current_use_quantized_matmul = False\n                current_use_quantized_matmul = current_use_quantized_matmul and channel_size >= 32 and output_channel_size >= 32 # pylint: disable=possibly-used-before-assignment\n                current_use_quantized_matmul = current_use_quantized_matmul and output_channel_size % 16 == 0 and channel_size % 16 == 0 # pylint: disable=possibly-used-before-assignment\n\n            if dtype is not None and module.sdnq_dequantizer.result_dtype != torch.float32:\n                module.sdnq_dequantizer.result_dtype = dtype\n\n            upcast_scale = bool(\n                dequantize_fp32\n                or dtype_dict[module.sdnq_dequantizer.weights_dtype][\"num_bits\"] > 8\n                or (\n                    (current_use_quantized_matmul or (current_use_quantized_matmul is None and module.sdnq_dequantizer.use_quantized_matmul))\n                    and not dtype_dict[module.sdnq_dequantizer.quantized_matmul_dtype][\"is_integer\"]\n                    and (not use_tensorwise_fp8_matmul or dtype_dict[module.sdnq_dequantizer.quantized_matmul_dtype][\"num_bits\"] == 16)\n                )\n            )\n            scale_dtype = torch.float32 if upcast_scale or dequantize_fp32 or (dequantize_fp32 is None and module.scale.dtype == torch.float32) else module.sdnq_dequantizer.result_dtype\n\n            module.scale.data = module.scale.to(dtype=scale_dtype)\n            if module.zero_point is not None:\n                module.zero_point.data = module.zero_point.to(dtype=scale_dtype)\n            if module.svd_up is not None:\n                module.svd_up.data = module.svd_up.to(dtype=scale_dtype)\n                module.svd_down.data = module.svd_down.to(dtype=scale_dtype)\n\n            if current_use_quantized_matmul is not None and current_use_quantized_matmul != module.sdnq_dequantizer.use_quantized_matmul:\n                if not module.sdnq_dequantizer.re_quantize_for_matmul and not dtype_dict[module.sdnq_dequantizer.weights_dtype][\"is_packed\"]:\n                    module.scale.t_()\n                    module.weight.t_()\n                    if current_use_quantized_matmul:\n                        module.weight.data = prepare_weight_for_matmul(module.weight)\n                    else:\n                        module.scale.data = module.scale.contiguous()\n                        module.weight.data = module.weight.contiguous()\n                if module.svd_up is not None:\n                    module.svd_up.data, module.svd_down.data = prepare_svd_for_matmul(module.svd_up.t_(), module.svd_down.t_(), current_use_quantized_matmul)\n                module.sdnq_dequantizer.use_quantized_matmul = current_use_quantized_matmul\n                module.forward_func = get_forward_func(module.original_class.__name__, module.sdnq_dequantizer.quantized_matmul_dtype, current_use_quantized_matmul)\n            setattr(model, module_name, module)\n        else:\n            setattr(model, module_name, apply_sdnq_options_to_module(module, dtype=dtype, dequantize_fp32=dequantize_fp32, use_quantized_matmul=use_quantized_matmul))\n    return model\n\n\ndef apply_sdnq_options_to_model(model, dtype: torch.dtype = None, dequantize_fp32: bool = None, use_quantized_matmul: bool = None):\n    if use_quantized_matmul and not check_torch_compile():\n        raise RuntimeError(\"SDNQ Quantized MatMul requires a working Triton install.\")\n    model = apply_sdnq_options_to_module(model, dtype=dtype, dequantize_fp32=dequantize_fp32, use_quantized_matmul=use_quantized_matmul)\n    if hasattr(model, \"quantization_config\"):\n        if use_quantized_matmul is not None:\n            model.quantization_config.use_quantized_matmul = use_quantized_matmul\n        if dequantize_fp32 is not None:\n            model.quantization_config.dequantize_fp32 = dequantize_fp32\n    if hasattr(model, \"config\"):\n        try:\n            if hasattr(model.config, \"quantization_config\"):\n                if use_quantized_matmul is not None:\n                    model.config.quantization_config.use_quantized_matmul = use_quantized_matmul\n                if dequantize_fp32 is not None:\n                    model.config.quantization_config.dequantize_fp32 = dequantize_fp32\n        except Exception:\n            pass\n        try:\n            if hasattr(model.config, \"get\") and model.config.get(\"quantization_config\", None) is not None:\n                if use_quantized_matmul is not None:\n                    model.config[\"quantization_config\"].use_quantized_matmul = use_quantized_matmul\n                if dequantize_fp32 is not None:\n                    model.config[\"quantization_config\"].dequantize_fp32 = dequantize_fp32\n        except Exception:\n            pass\n    return model\n"
  },
  {
    "path": "modules/sdnq/packed_float.py",
    "content": "import torch\n\nfrom .common import dtype_dict\nfrom .packed_int import pack_int_asymetric, unpack_int_asymetric\n\n\nfloat_bits_to_uint_dict = {\n    1: \"uint1\",\n    2: \"uint2\",\n    3: \"uint3\",\n    4: \"uint4\",\n    5: \"uint5\",\n    6: \"uint6\",\n    7: \"uint7\",\n}\n\n\ndef pack_float(x: torch.FloatTensor, weights_dtype: str) -> torch.Tensor:\n    exponent_bits = dtype_dict[weights_dtype][\"exponent\"]\n    mantissa_bits = dtype_dict[weights_dtype][\"mantissa\"]\n    total_bits = dtype_dict[weights_dtype][\"num_bits\"]\n\n    if dtype_dict[weights_dtype][\"is_unsigned\"]:\n        sign_mask = (1 << (total_bits-1)) # pylint: disable=superfluous-parens\n    else:\n        sign_mask = (1 << (total_bits-1)) + (1 << (total_bits-2))\n\n    mantissa_difference = 23 - mantissa_bits\n    exponent_difference = 8 - exponent_bits\n    mantissa_mask = (1 << mantissa_difference) # pylint: disable=superfluous-parens\n\n    x = x.to(dtype=torch.float32).view(torch.int32)\n\n    x = torch.where(\n        torch.gt(\n            torch.bitwise_and(x, -(1 << (mantissa_difference-4)) & ~(-mantissa_mask)),\n            (1 << (mantissa_difference-1)),\n        ),\n        torch.add(x, mantissa_mask),\n        x,\n    )\n\n    x = torch.where(torch.lt(x.view(torch.float32).abs(), dtype_dict[weights_dtype][\"min_normal\"]), 0, x)\n\n    x = torch.bitwise_right_shift(x, mantissa_difference)\n    x = torch.bitwise_and(\n        torch.bitwise_or(\n            torch.bitwise_and(torch.bitwise_right_shift(x, exponent_difference), sign_mask),\n            torch.bitwise_and(x, ~sign_mask),\n        ),\n        ~(-(1 << total_bits)),\n    ).view(torch.uint32)\n\n    if total_bits < 8:\n        x = pack_int_asymetric(x, float_bits_to_uint_dict[total_bits])\n    else:\n        x = x.to(dtype=dtype_dict[weights_dtype][\"storage_dtype\"])\n\n    return x\n\n\ndef unpack_float(x: torch.Tensor, shape: torch.Size, weights_dtype: str) -> torch.FloatTensor:\n    exponent_bits = dtype_dict[weights_dtype][\"exponent\"]\n    mantissa_bits = dtype_dict[weights_dtype][\"mantissa\"]\n    total_bits = dtype_dict[weights_dtype][\"num_bits\"]\n\n    if dtype_dict[weights_dtype][\"is_unsigned\"]:\n        sign_mask = (1 << (total_bits-1)) # pylint: disable=superfluous-parens\n    else:\n        sign_mask = (1 << (total_bits-1)) + (1 << (total_bits-2))\n\n    mantissa_difference = 23 - mantissa_bits\n    exponent_difference = 8 - exponent_bits\n\n    if total_bits < 8:\n        x = unpack_int_asymetric(x, shape, float_bits_to_uint_dict[total_bits])\n\n    x = x.to(dtype=torch.uint32).view(torch.int32)\n    x = torch.bitwise_left_shift(\n        torch.bitwise_or(\n            torch.bitwise_left_shift(torch.bitwise_and(x, sign_mask), exponent_difference),\n            torch.bitwise_and(x, ~sign_mask),\n        ),\n        mantissa_difference,\n    )\n\n    x = torch.bitwise_or(\n        x,\n        torch.bitwise_and(\n            torch.bitwise_right_shift(\n                -torch.bitwise_and(torch.bitwise_not(x),  1073741824),\n                exponent_difference,\n            ),\n            1065353216,\n        ),\n    )\n\n    overflow_mask = (~(-(1 << (22 + exponent_bits))) | -1073741824)\n    x = torch.where(torch.bitwise_and(x, overflow_mask).to(dtype=torch.bool), x, 0)\n    x = x.view(torch.float32)\n\n    return x\n"
  },
  {
    "path": "modules/sdnq/packed_int.py",
    "content": "# pylint: disable=redefined-builtin,no-member,protected-access\n\nfrom typing import Optional\n\nimport torch\n\nfrom .common import dtype_dict\n\n\ndef pack_int_symetric(tensor: torch.CharTensor, weights_dtype: str) -> torch.ByteTensor:\n    return packed_int_function_dict[weights_dtype][\"pack\"](tensor.sub_(dtype_dict[weights_dtype][\"min\"]).to(dtype=dtype_dict[weights_dtype][\"storage_dtype\"]))\n\n\ndef pack_int_asymetric(tensor: torch.CharTensor, weights_dtype: str) -> torch.ByteTensor:\n    return packed_int_function_dict[weights_dtype][\"pack\"](tensor.to(dtype=dtype_dict[weights_dtype][\"storage_dtype\"]))\n\n\ndef unpack_int_symetric(packed_tensor: torch.ByteTensor, shape: torch.Size, weights_dtype: str, dtype: Optional[torch.dtype] = None) -> torch.CharTensor:\n    if dtype is None:\n        dtype = dtype_dict[weights_dtype][\"torch_dtype\"]\n    return packed_int_function_dict[weights_dtype][\"unpack\"](packed_tensor, shape).to(dtype=dtype).add_(dtype_dict[weights_dtype][\"min\"])\n\n\ndef unpack_int_asymetric(packed_tensor: torch.ByteTensor, shape: torch.Size, weights_dtype: str) -> torch.CharTensor:\n    return packed_int_function_dict[weights_dtype][\"unpack\"](packed_tensor, shape)\n\n\ndef pack_uint7(tensor: torch.ByteTensor) -> torch.ByteTensor:\n    packed_tensor = tensor.contiguous().view(-1, 8)\n    packed_tensor = torch.bitwise_or(\n        packed_tensor[:, :7],\n        torch.bitwise_and(\n            torch.stack(\n                (\n                    torch.bitwise_left_shift(packed_tensor[:, 7], 1),\n                    torch.bitwise_left_shift(packed_tensor[:, 7], 2),\n                    torch.bitwise_left_shift(packed_tensor[:, 7], 3),\n                    torch.bitwise_left_shift(packed_tensor[:, 7], 4),\n                    torch.bitwise_left_shift(packed_tensor[:, 7], 5),\n                    torch.bitwise_left_shift(packed_tensor[:, 7], 6),\n                    torch.bitwise_left_shift(packed_tensor[:, 7], 7),\n                ),\n                dim=-1\n            ),\n            128\n        ),\n    )\n    return packed_tensor\n\n\ndef pack_uint6(tensor: torch.ByteTensor) -> torch.ByteTensor:\n    packed_tensor = tensor.contiguous().view(-1, 4)\n    packed_tensor = torch.cat(\n        (\n            torch.bitwise_or(\n                packed_tensor[:, :2],\n                torch.bitwise_and(\n                    torch.stack(\n                        (\n                            torch.bitwise_left_shift(packed_tensor[:, 3], 2),\n                            torch.bitwise_left_shift(packed_tensor[:, 3], 4),\n                        ),\n                        dim=-1\n                    ),\n                    192\n                )\n            ),\n            torch.bitwise_or(packed_tensor[:, 2], torch.bitwise_left_shift(packed_tensor[:, 3], 6)).unsqueeze(-1),\n        ),\n        dim=-1\n    )\n    return packed_tensor\n\n\ndef pack_uint5(tensor: torch.ByteTensor) -> torch.ByteTensor:\n    packed_tensor = tensor.contiguous().view(-1, 8)\n    packed_tensor = torch.cat(\n        (\n            torch.bitwise_or(packed_tensor[:, :3], torch.bitwise_left_shift(packed_tensor[:, 5:8], 5)),\n            torch.bitwise_or(\n                packed_tensor[:, 3],\n                torch.bitwise_or(\n                    torch.bitwise_and(torch.bitwise_left_shift(packed_tensor[:, 5], 2), 96),\n                    torch.bitwise_and(torch.bitwise_left_shift(packed_tensor[:, 7], 3), 128),\n                ),\n            ).unsqueeze(-1),\n            torch.bitwise_or(\n                packed_tensor[:, 4],\n                torch.bitwise_or(\n                    torch.bitwise_and(torch.bitwise_left_shift(packed_tensor[:, 6], 2), 96),\n                    torch.bitwise_and(torch.bitwise_left_shift(packed_tensor[:, 7], 4), 128),\n                ),\n            ).unsqueeze(-1),\n        ),\n        dim=-1\n    )\n    return packed_tensor\n\n\ndef pack_uint4(tensor: torch.ByteTensor) -> torch.ByteTensor:\n    packed_tensor = tensor.contiguous().view(-1, 2)\n    packed_tensor = torch.bitwise_or(packed_tensor[:, 0], torch.bitwise_left_shift(packed_tensor[:, 1], 4))\n    return packed_tensor\n\n\ndef pack_uint3(tensor: torch.ByteTensor) -> torch.ByteTensor:\n    packed_tensor = tensor.contiguous().view(-1, 8)\n    packed_tensor = torch.bitwise_or(\n        torch.bitwise_or(packed_tensor[:, :3], torch.bitwise_left_shift(packed_tensor[:, 3:6], 3)),\n        torch.cat(\n            (\n                torch.bitwise_left_shift(packed_tensor[:, 6:8], 6),\n                torch.bitwise_or(\n                    torch.bitwise_and(torch.bitwise_left_shift(packed_tensor[:, 6], 4), 64),\n                    torch.bitwise_and(torch.bitwise_left_shift(packed_tensor[:, 7], 5), 128),\n                ).unsqueeze(-1),\n            ),\n            dim=-1\n        )\n    )\n    return packed_tensor\n\n\ndef pack_uint2(tensor: torch.ByteTensor) -> torch.ByteTensor:\n    packed_tensor = tensor.contiguous().view(-1, 4)\n    packed_tensor = torch.bitwise_or(\n        torch.bitwise_or(packed_tensor[:, 0], torch.bitwise_left_shift(packed_tensor[:, 1], 2)),\n        torch.bitwise_or(torch.bitwise_left_shift(packed_tensor[:, 2], 4), torch.bitwise_left_shift(packed_tensor[:, 3], 6)),\n    )\n    return packed_tensor\n\n\ndef pack_uint1(tensor: torch.Tensor) -> torch.Tensor:\n    packed_tensor = tensor.contiguous().view(-1, 8)\n    packed_tensor = torch.bitwise_or(\n        torch.bitwise_or(\n            torch.bitwise_or(packed_tensor[:, 0], torch.bitwise_left_shift(packed_tensor[:, 1], 1)),\n            torch.bitwise_or(torch.bitwise_left_shift(packed_tensor[:, 2], 2), torch.bitwise_left_shift(packed_tensor[:, 3], 3))\n        ),\n        torch.bitwise_or(\n            torch.bitwise_or(torch.bitwise_left_shift(packed_tensor[:, 4], 4), torch.bitwise_left_shift(packed_tensor[:, 5], 5)),\n            torch.bitwise_or(torch.bitwise_left_shift(packed_tensor[:, 6], 6), torch.bitwise_left_shift(packed_tensor[:, 7], 7))\n        ),\n    )\n    return packed_tensor\n\n\ndef unpack_uint7(packed_tensor: torch.ByteTensor, shape: torch.Size) -> torch.ByteTensor:\n    result = torch.cat(\n        (\n            torch.bitwise_and(packed_tensor[:, :7], 127),\n            torch.bitwise_or(\n                torch.bitwise_or(\n                    torch.bitwise_or(\n                        torch.bitwise_and(torch.bitwise_right_shift(packed_tensor[:, 0], 1), 64),\n                        torch.bitwise_and(torch.bitwise_right_shift(packed_tensor[:, 1], 2), 32),\n                    ),\n                    torch.bitwise_or(\n                        torch.bitwise_and(torch.bitwise_right_shift(packed_tensor[:, 2], 3), 16),\n                        torch.bitwise_and(torch.bitwise_right_shift(packed_tensor[:, 3], 4), 8),\n                    ),\n                ),\n                torch.bitwise_or(\n                    torch.bitwise_or(\n                        torch.bitwise_and(torch.bitwise_right_shift(packed_tensor[:, 4], 5), 4),\n                        torch.bitwise_and(torch.bitwise_right_shift(packed_tensor[:, 5], 6), 2),\n                    ),\n                    torch.bitwise_right_shift(packed_tensor[:, 6], 7),\n                ),\n            ).unsqueeze(-1)\n        ),\n        dim=-1\n    ).view(shape)\n    return result\n\n\ndef unpack_uint6(packed_tensor: torch.ByteTensor, shape: torch.Size) -> torch.ByteTensor:\n    result = torch.cat(\n        (\n            torch.bitwise_and(packed_tensor[:, 0:3], 63),\n            torch.bitwise_or(\n                torch.bitwise_or(\n                    torch.bitwise_and(torch.bitwise_right_shift(packed_tensor[:, 0], 2), 48),\n                    torch.bitwise_and(torch.bitwise_right_shift(packed_tensor[:, 1], 4), 12),\n                ),\n                torch.bitwise_right_shift(packed_tensor[:, 2], 6)\n            ).unsqueeze(-1)\n        ),\n        dim=-1\n    ).view(shape)\n    return result\n\n\ndef unpack_uint5(packed_tensor: torch.ByteTensor, shape: torch.Size) -> torch.ByteTensor:\n    result_bitwise_right_shift = torch.bitwise_right_shift(packed_tensor[:, :3], 5)\n    result = torch.cat(\n        (\n            torch.bitwise_and(packed_tensor[:, :5], 31),\n            torch.bitwise_or(\n                result_bitwise_right_shift[:, :2],\n                torch.bitwise_and(torch.bitwise_right_shift(packed_tensor[:, 3:5], 2), 24),\n            ),\n            torch.bitwise_or(\n                result_bitwise_right_shift[:, 2],\n                torch.bitwise_or(\n                    torch.bitwise_and(torch.bitwise_right_shift(packed_tensor[:, 3], 3), 16),\n                    torch.bitwise_and(torch.bitwise_right_shift(packed_tensor[:, 4], 4), 8),\n                ),\n            ).unsqueeze(-1),\n        ),\n        dim=-1\n    ).view(shape)\n    return result\n\n\ndef unpack_uint4(packed_tensor: torch.ByteTensor, shape: torch.Size) -> torch.ByteTensor:\n    result = torch.stack((torch.bitwise_and(packed_tensor, 15), torch.bitwise_right_shift(packed_tensor, 4)), dim=-1).view(shape)\n    return result\n\n\ndef unpack_uint3(packed_tensor: torch.ByteTensor, shape: torch.Size) -> torch.ByteTensor:\n    result = torch.bitwise_and(\n        torch.cat(\n            (\n                packed_tensor[:, :3],\n                torch.bitwise_right_shift(packed_tensor[:, :3], 3),\n                torch.bitwise_or(\n                    torch.bitwise_right_shift(packed_tensor[:, :2], 6),\n                    torch.bitwise_and(\n                        torch.stack(\n                            (\n                                torch.bitwise_right_shift(packed_tensor[:, 2], 4),\n                                torch.bitwise_right_shift(packed_tensor[:, 2], 5),\n                            ),\n                            dim=-1\n                        ),\n                        4\n                    ),\n                ),\n            ),\n            dim=-1\n        ),\n        7\n    ).view(shape)\n    return result\n\n\ndef unpack_uint2(packed_tensor: torch.ByteTensor, shape: torch.Size) -> torch.ByteTensor:\n    result = torch.bitwise_and(\n        torch.stack(\n            (\n                packed_tensor,\n                torch.bitwise_right_shift(packed_tensor, 2),\n                torch.bitwise_right_shift(packed_tensor, 4),\n                torch.bitwise_right_shift(packed_tensor, 6),\n            ),\n            dim=-1\n        ),\n        3\n    ).view(shape)\n    return result\n\n\ndef unpack_uint1(packed_tensor: torch.Tensor, shape: torch.Size) -> torch.Tensor:\n    result = torch.bitwise_and(\n        torch.stack(\n            (\n                packed_tensor,\n                torch.bitwise_right_shift(packed_tensor, 1),\n                torch.bitwise_right_shift(packed_tensor, 2),\n                torch.bitwise_right_shift(packed_tensor, 3),\n                torch.bitwise_right_shift(packed_tensor, 4),\n                torch.bitwise_right_shift(packed_tensor, 5),\n                torch.bitwise_right_shift(packed_tensor, 6),\n                torch.bitwise_right_shift(packed_tensor, 7),\n            ),\n            dim=-1\n        ),\n        1\n    ).view(shape)\n    return result\n\n\npacked_int_function_dict = {\n    \"int7\": {\"pack\": pack_uint7, \"unpack\": unpack_uint7},\n    \"int6\": {\"pack\": pack_uint6, \"unpack\": unpack_uint6},\n    \"int5\": {\"pack\": pack_uint5, \"unpack\": unpack_uint5},\n    \"int4\": {\"pack\": pack_uint4, \"unpack\": unpack_uint4},\n    \"int3\": {\"pack\": pack_uint3, \"unpack\": unpack_uint3},\n    \"int2\": {\"pack\": pack_uint2, \"unpack\": unpack_uint2},\n    \"uint7\": {\"pack\": pack_uint7, \"unpack\": unpack_uint7},\n    \"uint6\": {\"pack\": pack_uint6, \"unpack\": unpack_uint6},\n    \"uint5\": {\"pack\": pack_uint5, \"unpack\": unpack_uint5},\n    \"uint4\": {\"pack\": pack_uint4, \"unpack\": unpack_uint4},\n    \"uint3\": {\"pack\": pack_uint3, \"unpack\": unpack_uint3},\n    \"uint2\": {\"pack\": pack_uint2, \"unpack\": unpack_uint2},\n    \"uint1\": {\"pack\": pack_uint1, \"unpack\": unpack_uint1},\n    \"bool\": {\"pack\": pack_uint1, \"unpack\": unpack_uint1},\n}\n"
  },
  {
    "path": "modules/sdnq/quantizer.py",
    "content": "# pylint: disable=redefined-builtin,no-member,protected-access\n\nfrom typing import Dict, List, Tuple, Optional, Union\nfrom dataclasses import dataclass\nfrom enum import Enum\n\nimport re\nimport torch\n\nfrom transformers.quantizers import HfQuantizer\nfrom diffusers.quantizers.base import DiffusersQuantizer\nfrom diffusers.quantizers.quantization_config import QuantizationConfigMixin\n\nfrom diffusers.utils import get_module_from_name\nfrom accelerate import init_empty_weights\n\nfrom modules import devices, shared\nfrom .common import sdnq_version, dtype_dict, common_skip_keys, module_skip_keys_dict, accepted_weight_dtypes, accepted_matmul_dtypes, weights_dtype_order, weights_dtype_order_fp32, allowed_types, linear_types, conv_types, conv_transpose_types, compile_func, use_tensorwise_fp8_matmul, use_contiguous_mm, check_torch_compile\nfrom .dequantizer import SDNQDequantizer, dequantize_sdnq_model\nfrom .packed_int import pack_int_symetric, pack_int_asymetric\nfrom .packed_float import pack_float\nfrom .forward import get_forward_func\nfrom .layers import get_sdnq_wrapper_class\n\n\nclass QuantizationMethod(str, Enum):\n    SDNQ = \"sdnq\"\n    SDNQ_TRAINING = \"sdnq_training\"\n\n\n@devices.inference_context()\ndef get_scale_asymmetric(weight: torch.FloatTensor, reduction_axes: Union[int, List[int]], weights_dtype: str) -> Tuple[torch.FloatTensor, torch.FloatTensor]:\n    zero_point = torch.amin(weight, dim=reduction_axes, keepdims=True)\n    scale = torch.amax(weight, dim=reduction_axes, keepdims=True).sub_(zero_point).div_(dtype_dict[weights_dtype][\"max\"] - dtype_dict[weights_dtype][\"min\"])\n    if dtype_dict[weights_dtype][\"min\"] != 0:\n        zero_point.sub_(torch.mul(scale, dtype_dict[weights_dtype][\"min\"]))\n    return scale, zero_point\n\n\n@devices.inference_context()\ndef get_scale_symmetric(weight: torch.FloatTensor, reduction_axes: Union[int, List[int]], weights_dtype: str) -> torch.FloatTensor:\n    return torch.amax(weight.abs(), dim=reduction_axes, keepdims=True).div_(dtype_dict[weights_dtype][\"max\"])\n\n\n@devices.inference_context()\ndef quantize_weight(weight: torch.FloatTensor, reduction_axes: Union[int, List[int]], weights_dtype: str, dtype: torch.dtype = None, use_stochastic_rounding: bool = False) -> Tuple[torch.Tensor, torch.FloatTensor, torch.FloatTensor]:\n    weight = weight.to(dtype=torch.float32)\n\n    if dtype_dict[weights_dtype][\"is_unsigned\"]:\n        scale, zero_point = get_scale_asymmetric(weight, reduction_axes, weights_dtype)\n        if dtype is not None:\n            scale = scale.to(dtype=dtype)\n            zero_point = zero_point.to(dtype=dtype)\n        quantized_weight = torch.sub(weight, zero_point).div_(scale)\n    else:\n        scale = get_scale_symmetric(weight, reduction_axes, weights_dtype)\n        zero_point = None\n        if dtype is not None:\n            scale = scale.to(dtype=dtype)\n        quantized_weight = torch.div(weight, scale)\n\n    if dtype_dict[weights_dtype][\"is_integer\"]:\n        if use_stochastic_rounding:\n            quantized_weight.add_(torch.randn_like(quantized_weight), alpha=0.1)\n        quantized_weight.round_()\n    else:\n        if use_stochastic_rounding:\n            mantissa_difference = 1 << (23 - dtype_dict[weights_dtype][\"mantissa\"])\n            quantized_weight = quantized_weight.view(dtype=torch.int32).add_(torch.randint_like(quantized_weight, low=0, high=mantissa_difference, dtype=torch.int32)).bitwise_and_(-mantissa_difference).view(dtype=torch.float32)\n        quantized_weight.nan_to_num_()\n    quantized_weight = quantized_weight.clamp_(dtype_dict[weights_dtype][\"min\"], dtype_dict[weights_dtype][\"max\"]).to(dtype_dict[weights_dtype][\"torch_dtype\"])\n    return quantized_weight, scale, zero_point\n\n\n@devices.inference_context()\ndef apply_svdquant(weight: torch.FloatTensor, rank: int = 32, niter: int = 8, dtype: torch.dtype = None) -> Tuple[torch.FloatTensor, torch.FloatTensor, torch.FloatTensor]:\n    reshape_weight = False\n    if weight.ndim > 2: # convs\n        reshape_weight = True\n        weight_shape = weight.shape\n        weight = weight.flatten(1,-1)\n    weight = weight.to(dtype=torch.float32)\n    U, S, svd_down = torch.svd_lowrank(weight, q=rank, niter=niter)\n    svd_up = torch.mul(U, S.unsqueeze(0))\n    svd_down = svd_down.t_()\n    if dtype is not None:\n        svd_up = svd_up.to(dtype=dtype)\n        svd_down = svd_down.to(dtype=dtype)\n    weight = weight.sub(torch.mm(svd_up, svd_down))\n    if reshape_weight:\n        weight = weight.unflatten(-1, (*weight_shape[1:],)) # pylint: disable=possibly-used-before-assignment\n    return weight, svd_up, svd_down\n\n\n@devices.inference_context()\ndef prepare_weight_for_matmul(weight: torch.Tensor) -> torch.Tensor:\n    if use_contiguous_mm:\n        weight = weight.contiguous()\n    elif weight.is_contiguous():\n        weight = weight.t_().contiguous().t_()\n    return weight\n\n\n@devices.inference_context()\ndef prepare_svd_for_matmul(svd_up: torch.FloatTensor, svd_down: torch.FloatTensor, use_quantized_matmul: bool) -> Tuple[torch.FloatTensor, torch.FloatTensor]:\n    if svd_up is not None:\n        if use_quantized_matmul:\n            svd_up = prepare_weight_for_matmul(svd_up)\n        else:\n            svd_up = svd_up.contiguous()\n    if svd_down is not None:\n        svd_down = prepare_weight_for_matmul(svd_down)\n    return svd_up, svd_down\n\n\ndef check_param_name_in(param_name: str, param_list: List[str]) -> str:\n    split_param_name = param_name.split(\".\")\n    for param in param_list:\n        if param.startswith(\".\"):\n            if param_name.startswith(param[1:]):\n                return param\n            else:\n                continue\n        if (\n            param_name == param\n            or param in split_param_name\n            or (\"*\" in param and re.match(param.replace(\".*\", \"\\\\.*\").replace(\"*\", \".*\"), param_name))\n        ):\n            return param\n    return None\n\n\ndef get_quant_args_from_config(quantization_config: Union[\"SDNQConfig\", dict]) -> dict:\n    if isinstance(quantization_config, SDNQConfig):\n        quantization_config_dict = quantization_config.to_dict()\n    else:\n        quantization_config_dict = quantization_config.copy()\n    quantization_config_dict.pop(\"is_integer\", None)\n    quantization_config_dict.pop(\"quant_method\", None)\n    quantization_config_dict.pop(\"quantization_device\", None)\n    quantization_config_dict.pop(\"return_device\", None)\n    quantization_config_dict.pop(\"non_blocking\", None)\n    quantization_config_dict.pop(\"add_skip_keys\", None)\n    quantization_config_dict.pop(\"use_dynamic_quantization\", None)\n    quantization_config_dict.pop(\"use_static_quantization\", None)\n    quantization_config_dict.pop(\"use_stochastic_rounding\", None)\n    quantization_config_dict.pop(\"use_grad_ckpt\", None)\n    quantization_config_dict.pop(\"is_training\", None)\n    quantization_config_dict.pop(\"sdnq_version\", None)\n    if quantization_config_dict.get(\"modules_quant_config\", None) is not None:\n        for key in quantization_config_dict[\"modules_quant_config\"].keys():\n            quantization_config_dict[\"modules_quant_config\"][key] = get_quant_args_from_config(quantization_config_dict[\"modules_quant_config\"][key])\n    return quantization_config_dict\n\n\ndef get_minimum_dtype(weights_dtype: str, param_name: str, modules_dtype_dict: Dict[str, List[str]]):\n    if len(modules_dtype_dict.keys()) > 0:\n        for key, value in modules_dtype_dict.items():\n            if check_param_name_in(param_name, value) is not None:\n                key = key.lower()\n                if key in {\"8bit\", \"8bits\"}:\n                    if dtype_dict[weights_dtype][\"num_bits\"] != 8:\n                        return \"int8\"\n                elif key.startswith(\"minimum_\"):\n                    minimum_bits_str = key.removeprefix(\"minimum_\").removesuffix(\"bits\").removesuffix(\"bit\")\n                    if minimum_bits_str.startswith(\"uint\"):\n                        is_unsigned = True\n                        minimum_bits_str = minimum_bits_str.removeprefix(\"uint\")\n                    else:\n                        is_unsigned = False\n                        minimum_bits_str = minimum_bits_str.removeprefix(\"int\")\n                    minimum_bits = int(minimum_bits_str)\n                    if dtype_dict[weights_dtype][\"num_bits\"] < minimum_bits:\n                        if is_unsigned or minimum_bits <= 4:\n                            return \"uint\" + minimum_bits_str\n                        else:\n                            return \"int\" + minimum_bits_str\n                else:\n                    return key\n    return weights_dtype\n\n\ndef get_quant_kwargs(quant_kwargs: dict, modules_quant_config: Dict[str, dict]) -> dict:\n    param_key = check_param_name_in(quant_kwargs[\"param_name\"], modules_quant_config.keys())\n    if param_key is not None:\n        for key, value in modules_quant_config[param_key].items():\n            quant_kwargs[key] = value\n    quant_kwargs[\"weights_dtype\"] = get_minimum_dtype(quant_kwargs[\"weights_dtype\"], quant_kwargs[\"param_name\"], quant_kwargs[\"modules_dtype_dict\"])\n    return quant_kwargs\n\n\ndef add_module_skip_keys(model, modules_to_not_convert: List[str] = None, modules_dtype_dict: Dict[str, List[str]] = None):\n    if modules_to_not_convert is None:\n        modules_to_not_convert = []\n    if modules_dtype_dict is None:\n        modules_dtype_dict = {}\n    if getattr(model, \"_keep_in_fp32_modules\", None) is not None:\n        modules_to_not_convert.extend(model._keep_in_fp32_modules) # pylint: disable=protected-access\n    if getattr(model, \"_tied_weights_keys\", None) is not None:\n        if isinstance(model._tied_weights_keys, dict): # pylint: disable=protected-access\n            modules_to_not_convert.extend(model._tied_weights_keys.keys()) # pylint: disable=protected-access\n            modules_to_not_convert.extend(model._tied_weights_keys.values()) # pylint: disable=protected-access\n        else:\n            modules_to_not_convert.extend(model._tied_weights_keys) # pylint: disable=protected-access\n\n    skip_key_list = module_skip_keys_dict.get(model.__class__.__name__, None)\n    if skip_key_list is not None:\n        modules_to_not_convert.extend(skip_key_list[0])\n        for key, value in skip_key_list[1].items():\n            if key in modules_dtype_dict.keys():\n                modules_dtype_dict[key].extend(value)\n            else:\n                modules_dtype_dict[key] = value\n    else:\n        modules_to_not_convert.extend(common_skip_keys)\n        if getattr(model, \"_skip_layerwise_casting_patterns\", None) is not None:\n            modules_to_not_convert.extend(model._skip_layerwise_casting_patterns) # pylint: disable=protected-access\n\n    # dedupe\n    modules_to_not_convert = list(set(modules_to_not_convert))\n    for key, value in modules_dtype_dict.items():\n        modules_dtype_dict[key] = list(set(value))\n\n    return model, modules_to_not_convert, modules_dtype_dict\n\n\n@devices.inference_context()\ndef sdnq_quantize_layer_weight(weight, layer_class_name=None, weights_dtype=\"int8\", quantized_matmul_dtype=None, torch_dtype=None, group_size=0, svd_rank=32, svd_steps=8, use_svd=False, use_quantized_matmul=False, use_stochastic_rounding=False, dequantize_fp32=False, using_pre_calculated_svd=False, skip_sr=False, param_name=None): # pylint: disable=unused-argument\n    num_of_groups = 1\n    is_conv_type = False\n    is_conv_transpose_type = False\n    is_linear_type = False\n    result_shape = None\n    scale_dtype = None\n\n    original_shape = weight.shape\n    original_stride = weight.stride()\n    weight = weight.detach()\n\n    if torch_dtype is None:\n        torch_dtype = weight.dtype\n    if quantized_matmul_dtype is None:\n        if dtype_dict[weights_dtype][\"is_integer\"]:\n            quantized_matmul_dtype = \"int8\"\n        elif dtype_dict[weights_dtype][\"num_bits\"] == 8:\n            quantized_matmul_dtype = \"float8_e4m3fn\"\n        else:\n            quantized_matmul_dtype = \"float16\"\n\n    re_quantize_for_matmul = bool(\n        dtype_dict[weights_dtype][\"is_unsigned\"]\n        or dtype_dict[weights_dtype][\"is_integer\"] != dtype_dict[quantized_matmul_dtype][\"is_integer\"]\n        or dtype_dict[weights_dtype][\"num_bits\"] > dtype_dict[quantized_matmul_dtype][\"num_bits\"]\n        or (\n            dtype_dict[weights_dtype][\"is_packed\"]\n            and not dtype_dict[weights_dtype][\"is_integer\"]\n            and not dtype_dict[quantized_matmul_dtype][\"is_integer\"]\n            and (\n                    dtype_dict[weights_dtype][\"num_bits\"] >= dtype_dict[quantized_matmul_dtype][\"num_bits\"]\n                    or dtype_dict[weights_dtype][\"max\"] > dtype_dict[quantized_matmul_dtype][\"max\"]\n                )\n        )\n    )\n\n    if layer_class_name in conv_types:\n        is_conv_type = True\n        reduction_axes = 1\n        output_channel_size, channel_size = weight.shape[:2]\n        if use_quantized_matmul:\n            use_quantized_matmul = channel_size >= 32 and output_channel_size >= 32\n            use_quantized_matmul = use_quantized_matmul and output_channel_size % 16 == 0 and channel_size % 16 == 0\n        if use_quantized_matmul and not re_quantize_for_matmul and not dtype_dict[weights_dtype][\"is_packed\"]:\n            result_shape = weight.shape\n            weight = weight.flatten(1,-1)\n            reduction_axes = -1\n    elif layer_class_name in conv_transpose_types:\n        is_conv_transpose_type = True\n        reduction_axes = 0\n        channel_size, output_channel_size = weight.shape[:2]\n        use_quantized_matmul = False\n    elif layer_class_name in linear_types:\n        is_linear_type = True\n        reduction_axes = -1\n        try:\n            output_channel_size, channel_size = weight.shape\n        except Exception as e:\n            raise ValueError(f\"SDNQ: param_name={param_name} layer_class_name={layer_class_name} weight_shape={weight.shape} weights_dtype={weights_dtype} quantized_matmul_dtype={quantized_matmul_dtype} unsupported\") from e\n        if use_quantized_matmul:\n            use_quantized_matmul = channel_size >= 32 and output_channel_size >= 32\n            use_quantized_matmul = use_quantized_matmul and output_channel_size % 16 == 0 and channel_size % 16 == 0\n    else:\n        if weight.ndim > 1:\n            output_channel_size, channel_size = weight.shape[-2:]\n        else:\n            output_channel_size, channel_size = 1, weight.shape[-1]\n        reduction_axes = -1\n        use_quantized_matmul = False\n\n    if (\n        not dequantize_fp32\n        and dtype_dict[weights_dtype][\"num_bits\"] <= 8\n        and not (\n            use_quantized_matmul\n            and not dtype_dict[quantized_matmul_dtype][\"is_integer\"]\n            and (not use_tensorwise_fp8_matmul or dtype_dict[quantized_matmul_dtype][\"num_bits\"] == 16)\n        )\n    ):\n        scale_dtype = torch_dtype\n\n    if use_svd:\n        try:\n            weight, svd_up, svd_down = apply_svdquant(weight, rank=svd_rank, niter=svd_steps, dtype=scale_dtype)\n            if use_quantized_matmul:\n                svd_up = svd_up.t_()\n                svd_down = svd_down.t_()\n            svd_up, svd_down = prepare_svd_for_matmul(svd_up, svd_down, use_quantized_matmul)\n        except Exception:\n            svd_up, svd_down = None, None\n    else:\n        svd_up, svd_down = None, None\n\n    if group_size == 0:\n        if use_quantized_matmul and not re_quantize_for_matmul and dtype_dict[weights_dtype][\"num_bits\"] >= 6:\n            group_size = -1\n        elif is_linear_type:\n            group_size = 2 ** ((3 if (svd_up is not None or using_pre_calculated_svd) else 2) + dtype_dict[weights_dtype][\"num_bits\"])\n        else:\n            group_size = 2 ** ((2 if (svd_up is not None or using_pre_calculated_svd) else 1) + dtype_dict[weights_dtype][\"num_bits\"])\n\n    if group_size > 0:\n        if group_size >= channel_size:\n            group_size = channel_size\n            num_of_groups = 1\n        else:\n            num_of_groups = channel_size // group_size\n            while num_of_groups * group_size != channel_size: # find something divisible\n                num_of_groups -= 1\n                if num_of_groups <= 1:\n                    group_size = channel_size\n                    num_of_groups = 1\n                    break\n                group_size = channel_size // num_of_groups\n        group_size = int(group_size)\n        num_of_groups = int(num_of_groups)\n\n        if num_of_groups > 1:\n            if result_shape is None:\n                result_shape = weight.shape\n            new_shape = list(result_shape)\n            if is_conv_type:\n                # output_channel_size, channel_size, X, X\n                # output_channel_size, num_of_groups, group_size, X, X\n                new_shape[1] = group_size\n                new_shape.insert(1, num_of_groups)\n                reduction_axes = 2\n            elif is_conv_transpose_type:\n                #channel_size, output_channel_size, X, X\n                #num_of_groups, group_size, output_channel_size, X, X\n                new_shape[0] = group_size\n                new_shape.insert(0, num_of_groups)\n                reduction_axes = 1\n            else:\n                # output_channel_size, channel_size\n                # output_channel_size, num_of_groups, group_size\n                last_dim_index = weight.ndim\n                new_shape[last_dim_index - 1 : last_dim_index] = (num_of_groups, group_size)\n            weight = weight.reshape(new_shape)\n        else:\n            group_size = -1\n\n\n    cast_scale = True\n    transpose_weights = False\n    re_quantize_for_matmul = re_quantize_for_matmul or num_of_groups > 1\n    if use_quantized_matmul and not re_quantize_for_matmul and not dtype_dict[weights_dtype][\"is_packed\"]:\n        transpose_weights = True\n        if not use_tensorwise_fp8_matmul and not dtype_dict[quantized_matmul_dtype][\"is_integer\"]:\n            cast_scale = False\n\n    weight, scale, zero_point = quantize_weight(weight, reduction_axes, weights_dtype, dtype=(scale_dtype if cast_scale else None), use_stochastic_rounding=(use_stochastic_rounding and not skip_sr))\n\n    if transpose_weights:\n        scale.t_()\n        weight.t_()\n        weight = prepare_weight_for_matmul(weight)\n\n    sdnq_dequantizer = SDNQDequantizer(\n        result_dtype=torch_dtype,\n        result_shape=result_shape,\n        original_shape=original_shape,\n        original_stride=original_stride,\n        quantized_weight_shape=weight.shape,\n        weights_dtype=weights_dtype,\n        quantized_matmul_dtype=quantized_matmul_dtype,\n        group_size=group_size,\n        svd_rank=svd_rank,\n        svd_steps=svd_steps,\n        use_quantized_matmul=use_quantized_matmul,\n        re_quantize_for_matmul=re_quantize_for_matmul,\n        use_stochastic_rounding=use_stochastic_rounding,\n        layer_class_name=layer_class_name,\n    )\n\n    if dtype_dict[weights_dtype][\"is_packed\"]:\n        if dtype_dict[weights_dtype][\"is_integer\"]:\n            if dtype_dict[weights_dtype][\"is_unsigned\"]:\n                weight = pack_int_asymetric(weight, weights_dtype)\n            else:\n                weight = pack_int_symetric(weight, weights_dtype)\n        else:\n            weight = pack_float(weight, weights_dtype)\n    else:\n        weight = weight.to(dtype=dtype_dict[weights_dtype][\"torch_dtype\"])\n\n    return weight, scale, zero_point, svd_up, svd_down, sdnq_dequantizer\n\n\n@devices.inference_context()\ndef sdnq_quantize_layer_weight_dynamic(weight, layer_class_name=None, weights_dtype=\"int2\", quantized_matmul_dtype=None, torch_dtype=None, group_size=0, svd_rank=32, svd_steps=8, dynamic_loss_threshold=1e-2, use_svd=False, use_quantized_matmul=False, use_dynamic_quantization=False, use_stochastic_rounding=False, dequantize_fp32=False, param_name=None): # pylint: disable=unused-argument\n    if torch_dtype is None:\n        torch_dtype = weight.dtype\n    weights_dtype_order_to_use = weights_dtype_order_fp32 if torch_dtype in {torch.float32, torch.float64} else weights_dtype_order\n    weight = weight.to(dtype=torch.float32)\n    weight_std = weight.std().square_().clamp_(min=1e-8)\n\n    if use_svd:\n        try:\n            svd_weight, svd_up, svd_down = apply_svdquant(weight, rank=svd_rank, niter=svd_steps)\n            svd_up, svd_down = prepare_svd_for_matmul(svd_up, svd_down, use_quantized_matmul)\n            svd_up = svd_up.to(dtype=torch_dtype)\n            svd_down = svd_down.to(dtype=torch_dtype)\n        except Exception:\n            svd_up, svd_down = None, None\n            svd_weight = weight\n    else:\n        svd_up, svd_down = None, None\n        svd_weight = weight\n\n    quantization_loss = None\n    svd_is_transposed = False\n    for i in range(weights_dtype_order_to_use.index(weights_dtype), len(weights_dtype_order_to_use)):\n        quantized_weight, scale, zero_point, _, _, sdnq_dequantizer = sdnq_quantize_layer_weight(\n            svd_weight,\n            layer_class_name=layer_class_name,\n            weights_dtype=weights_dtype_order_to_use[i],\n            quantized_matmul_dtype=quantized_matmul_dtype,\n            torch_dtype=torch_dtype,\n            group_size=group_size,\n            svd_rank=svd_rank,\n            svd_steps=svd_steps,\n            use_svd=False,\n            using_pre_calculated_svd=use_svd,\n            use_quantized_matmul=use_quantized_matmul,\n            use_stochastic_rounding=use_stochastic_rounding,\n            dequantize_fp32=dequantize_fp32,\n            param_name=param_name,\n        )\n\n        if use_svd and not svd_is_transposed and sdnq_dequantizer.use_quantized_matmul:\n            svd_up = svd_up.t_()\n            svd_down = svd_down.t_()\n            svd_is_transposed = True\n\n        quantization_loss = torch.nn.functional.mse_loss(weight, sdnq_dequantizer(quantized_weight, scale, zero_point, svd_up, svd_down, skip_quantized_matmul=sdnq_dequantizer.use_quantized_matmul, dtype=torch.float32, skip_compile=True)).div_(weight_std)\n        if quantization_loss <= dynamic_loss_threshold:\n            return (quantized_weight, scale, zero_point, svd_up, svd_down, sdnq_dequantizer)\n    return None\n\n\n@devices.inference_context()\ndef sdnq_quantize_layer(layer, weights_dtype=\"int8\", quantized_matmul_dtype=None, torch_dtype=None, group_size=0, svd_rank=32, svd_steps=8, dynamic_loss_threshold=1e-2, use_svd=False, quant_conv=False, use_quantized_matmul=False, use_quantized_matmul_conv=False, use_dynamic_quantization=False, use_stochastic_rounding=False, dequantize_fp32=False, non_blocking=False, modules_to_not_convert=None, modules_dtype_dict=None, quantization_device=None, return_device=None, param_name=None): # pylint: disable=unused-argument\n    layer_class_name = layer.__class__.__name__\n    if layer_class_name in conv_transpose_types or layer_class_name in conv_types:\n        if not quant_conv:\n            return layer, modules_to_not_convert, modules_dtype_dict\n        use_quantized_matmul = use_quantized_matmul_conv\n\n    layer.weight.requires_grad_(False)\n    if return_device is None:\n        return_device = layer.weight.device\n    if quantization_device is not None:\n        layer.weight.data = layer.weight.to(quantization_device, non_blocking=non_blocking)\n\n    if use_dynamic_quantization:\n        weight_data = sdnq_quantize_layer_weight_dynamic(\n            layer.weight,\n            layer_class_name=layer_class_name,\n            weights_dtype=weights_dtype,\n            quantized_matmul_dtype=quantized_matmul_dtype,\n            torch_dtype=torch_dtype,\n            group_size=group_size,\n            svd_rank=svd_rank,\n            svd_steps=svd_steps,\n            dynamic_loss_threshold=dynamic_loss_threshold,\n            use_svd=use_svd,\n            use_quantized_matmul=use_quantized_matmul,\n            use_stochastic_rounding=use_stochastic_rounding,\n            dequantize_fp32=dequantize_fp32,\n            param_name=param_name,\n        )\n    else:\n        weight_data = sdnq_quantize_layer_weight(\n            layer.weight,\n            layer_class_name=layer_class_name,\n            weights_dtype=weights_dtype,\n            quantized_matmul_dtype=quantized_matmul_dtype,\n            torch_dtype=torch_dtype,\n            group_size=group_size,\n            svd_rank=svd_rank,\n            svd_steps=svd_steps,\n            use_svd=use_svd,\n            use_quantized_matmul=use_quantized_matmul,\n            use_stochastic_rounding=use_stochastic_rounding,\n            dequantize_fp32=dequantize_fp32,\n            param_name=param_name,\n        )\n\n    if weight_data is not None:\n        (\n            layer.weight.data,\n            layer.scale, layer.zero_point,\n            layer.svd_up, layer.svd_down,\n            layer.sdnq_dequantizer,\n        ) = weight_data\n        del weight_data\n\n        layer = get_sdnq_wrapper_class(layer, get_forward_func(layer_class_name, layer.sdnq_dequantizer.quantized_matmul_dtype, layer.sdnq_dequantizer.use_quantized_matmul))\n        layer.weight = torch.nn.Parameter(layer.weight.to(return_device, non_blocking=non_blocking), requires_grad=False)\n        layer.scale = torch.nn.Parameter(layer.scale.to(return_device, non_blocking=non_blocking), requires_grad=False)\n        if layer.zero_point is not None:\n            layer.zero_point = torch.nn.Parameter(layer.zero_point.to(return_device, non_blocking=non_blocking), requires_grad=False)\n        if layer.svd_up is not None:\n            layer.svd_up = torch.nn.Parameter(layer.svd_up.to(return_device, non_blocking=non_blocking), requires_grad=False)\n            layer.svd_down = torch.nn.Parameter(layer.svd_down.to(return_device, non_blocking=non_blocking), requires_grad=False)\n        layer = layer.to(return_device, non_blocking=non_blocking)\n\n        if use_dynamic_quantization:\n            if modules_dtype_dict is None:\n                modules_dtype_dict = {}\n            if layer.sdnq_dequantizer.weights_dtype not in modules_dtype_dict.keys():\n                modules_dtype_dict[layer.sdnq_dequantizer.weights_dtype] = [param_name]\n            else:\n                modules_dtype_dict[layer.sdnq_dequantizer.weights_dtype].append(param_name)\n    else:\n        layer = layer.to(return_device, dtype=torch_dtype, non_blocking=non_blocking)\n        if use_dynamic_quantization:\n            if modules_to_not_convert is None:\n                modules_to_not_convert = []\n            modules_to_not_convert.append(param_name)\n\n    return layer, modules_to_not_convert, modules_dtype_dict\n\n\n@devices.inference_context()\ndef apply_sdnq_to_module(model, weights_dtype=\"int8\", quantized_matmul_dtype=None, torch_dtype=None, group_size=0, svd_rank=32, svd_steps=8, dynamic_loss_threshold=1e-2, use_svd=False, quant_conv=False, use_quantized_matmul=False, use_quantized_matmul_conv=False, use_dynamic_quantization=False, use_stochastic_rounding=False, dequantize_fp32=False, non_blocking=False, modules_to_not_convert: List[str] = None, modules_dtype_dict: Dict[str, List[str]] = None, modules_quant_config: Dict[str, dict] = None, quantization_device=None, return_device=None, full_param_name=\"\"): # pylint: disable=unused-argument\n    has_children = list(model.children())\n    if not has_children:\n        return model, modules_to_not_convert, modules_dtype_dict\n    if modules_to_not_convert is None:\n        modules_to_not_convert = []\n    if modules_dtype_dict is None:\n        modules_dtype_dict = {}\n    if modules_quant_config is None:\n        modules_quant_config = {}\n    for module_name, module in model.named_children():\n        if full_param_name:\n            param_name = full_param_name + \".\" + module_name\n        else:\n            param_name = module_name\n        if hasattr(module, \"weight\") and module.weight is not None:\n            param_name = param_name + \".weight\"\n            if check_param_name_in(param_name, modules_to_not_convert) is not None:\n                continue\n            layer_class_name = module.__class__.__name__\n            if layer_class_name in allowed_types and module.weight.dtype in {torch.float32, torch.float16, torch.bfloat16}:\n                if (layer_class_name in conv_types or layer_class_name in conv_transpose_types) and not quant_conv:\n                    continue\n                quant_kwargs = {\n                    \"weights_dtype\": weights_dtype,\n                    \"quantized_matmul_dtype\": quantized_matmul_dtype,\n                    \"torch_dtype\": torch_dtype,\n                    \"group_size\": group_size,\n                    \"svd_rank\": svd_rank,\n                    \"svd_steps\": svd_steps,\n                    \"dynamic_loss_threshold\": dynamic_loss_threshold,\n                    \"use_svd\": use_svd,\n                    \"quant_conv\": quant_conv,\n                    \"use_quantized_matmul\": use_quantized_matmul,\n                    \"use_quantized_matmul_conv\": use_quantized_matmul_conv,\n                    \"use_dynamic_quantization\": use_dynamic_quantization,\n                    \"use_stochastic_rounding\": use_stochastic_rounding,\n                    \"dequantize_fp32\": dequantize_fp32,\n                    \"non_blocking\": non_blocking,\n                    \"quantization_device\": quantization_device,\n                    \"return_device\": return_device,\n                    \"modules_to_not_convert\": modules_to_not_convert,\n                    \"modules_dtype_dict\": modules_dtype_dict,\n                    \"param_name\": param_name,\n                }\n                quant_kwargs = get_quant_kwargs(quant_kwargs, modules_quant_config)\n                module, modules_to_not_convert, modules_dtype_dict = sdnq_quantize_layer(module, **quant_kwargs)\n                setattr(model, module_name, module)\n\n        module, modules_to_not_convert, modules_dtype_dict = apply_sdnq_to_module(\n            module,\n            dynamic_loss_threshold=dynamic_loss_threshold,\n            weights_dtype=weights_dtype,\n            quantized_matmul_dtype=quantized_matmul_dtype,\n            torch_dtype=torch_dtype,\n            group_size=group_size,\n            svd_rank=svd_rank,\n            svd_steps=svd_steps,\n            use_svd=use_svd,\n            quant_conv=quant_conv,\n            use_quantized_matmul=use_quantized_matmul,\n            use_quantized_matmul_conv=use_quantized_matmul_conv,\n            use_dynamic_quantization=use_dynamic_quantization,\n            use_stochastic_rounding=use_stochastic_rounding,\n            dequantize_fp32=dequantize_fp32,\n            non_blocking=non_blocking,\n            quantization_device=quantization_device,\n            return_device=return_device,\n            modules_to_not_convert=modules_to_not_convert,\n            modules_dtype_dict=modules_dtype_dict,\n            modules_quant_config=modules_quant_config,\n            full_param_name=param_name,\n        )\n        setattr(model, module_name, module)\n    return model, modules_to_not_convert, modules_dtype_dict\n\n\n@devices.inference_context()\ndef sdnq_post_load_quant(\n    model: torch.nn.Module,\n    weights_dtype: str = \"int8\",\n    quantized_matmul_dtype: str = None,\n    torch_dtype: torch.dtype = None,\n    group_size: int = 0,\n    svd_rank: int = 32,\n    svd_steps: int = 8,\n    dynamic_loss_threshold: float = 1e-2,\n    use_svd: bool = False,\n    quant_conv: bool = False,\n    use_quantized_matmul: bool = False,\n    use_quantized_matmul_conv: bool = False,\n    use_dynamic_quantization: bool = False,\n    use_stochastic_rounding: bool = False,\n    dequantize_fp32: bool = False,\n    non_blocking: bool = False,\n    add_skip_keys:bool = True,\n    quantization_device: Optional[torch.device] = None,\n    return_device: Optional[torch.device] = None,\n    modules_to_not_convert: Optional[List[str]] = None,\n    modules_dtype_dict: Optional[Dict[str, List[str]]] = None,\n    modules_quant_config: Optional[Dict[str, dict]] = None,\n):\n    if modules_to_not_convert is None:\n        modules_to_not_convert = []\n    if modules_dtype_dict is None:\n        modules_dtype_dict = {}\n    if modules_quant_config is None:\n        modules_quant_config = {}\n\n    modules_to_not_convert = modules_to_not_convert.copy()\n    modules_dtype_dict = modules_dtype_dict.copy()\n    modules_quant_config = modules_quant_config.copy()\n    if add_skip_keys:\n        model, modules_to_not_convert, modules_dtype_dict = add_module_skip_keys(model, modules_to_not_convert, modules_dtype_dict)\n\n    quantization_config = SDNQConfig(\n        weights_dtype=weights_dtype,\n        group_size=group_size,\n        svd_rank=svd_rank,\n        svd_steps=svd_steps,\n        dynamic_loss_threshold=dynamic_loss_threshold,\n        use_svd=use_svd,\n        quant_conv=quant_conv,\n        use_quantized_matmul=use_quantized_matmul,\n        use_quantized_matmul_conv=use_quantized_matmul_conv,\n        use_dynamic_quantization=use_dynamic_quantization,\n        use_stochastic_rounding=use_stochastic_rounding,\n        dequantize_fp32=dequantize_fp32,\n        non_blocking=non_blocking,\n        add_skip_keys=add_skip_keys,\n        modules_to_not_convert=modules_to_not_convert,\n        modules_dtype_dict=modules_dtype_dict,\n        modules_quant_config=modules_quant_config,\n        quantization_device=quantization_device,\n        return_device=return_device,\n    )\n\n    model.eval()\n    model, modules_to_not_convert, modules_dtype_dict = apply_sdnq_to_module(\n        model,\n        weights_dtype=weights_dtype,\n        quantized_matmul_dtype=quantized_matmul_dtype,\n        torch_dtype=torch_dtype,\n        group_size=group_size,\n        svd_rank=svd_rank,\n        svd_steps=svd_steps,\n        dynamic_loss_threshold=dynamic_loss_threshold,\n        use_svd=use_svd,\n        quant_conv=quant_conv,\n        use_quantized_matmul=use_quantized_matmul,\n        use_quantized_matmul_conv=use_quantized_matmul_conv,\n        use_dynamic_quantization=use_dynamic_quantization,\n        use_stochastic_rounding=use_stochastic_rounding,\n        dequantize_fp32=dequantize_fp32,\n        non_blocking=non_blocking,\n        modules_to_not_convert=modules_to_not_convert,\n        modules_dtype_dict=modules_dtype_dict,\n        modules_quant_config=modules_quant_config,\n        quantization_device=quantization_device,\n        return_device=return_device,\n    )\n\n    quantization_config.modules_to_not_convert = modules_to_not_convert\n    quantization_config.modules_dtype_dict = modules_dtype_dict\n    quantization_config.modules_quant_config = modules_quant_config\n\n    model.quantization_config = quantization_config\n    if hasattr(model, \"config\"):\n        try:\n            model.config.quantization_config = model.quantization_config\n        except Exception:\n            pass\n        try:\n            model.config[\"quantization_config\"] = model.quantization_config.to_dict()\n        except Exception:\n            pass\n    model.quantization_method = QuantizationMethod.SDNQ\n\n    return model\n\n\nclass SDNQQuantize():\n    def __init__(self, hf_quantizer):\n        self.hf_quantizer = hf_quantizer\n\n    def convert(\n        self,\n        input_dict: dict[str, list[torch.Tensor]],\n        model: torch.nn.Module = None,\n        full_layer_name: str = None,\n        missing_keys: list[str] = None, # pylint: disable=unused-argument\n        **kwargs, # pylint: disable=unused-argument\n    ) -> dict[str, torch.FloatTensor]:\n        _module_name, value = tuple(input_dict.items())[0]\n        value = value[0]\n        self.hf_quantizer.create_quantized_param(model, value, full_layer_name, value.device)\n        param, name = get_module_from_name(model, full_layer_name)\n        param = getattr(param, name)\n        return {full_layer_name: param}\n\n    @property\n    def reverse_op(self):\n        raise NotImplementedError\n\n\nclass SDNQQuantizer(DiffusersQuantizer, HfQuantizer):\n    r\"\"\"\n    Diffusers and Transformers Quantizer for SDNQ\n    \"\"\"\n\n    requires_parameters_quantization = True\n    use_keep_in_fp32_modules = True\n    requires_calibration = False\n    required_packages = None\n    torch_dtype = None\n\n    def check_if_quantized_param(\n        self,\n        model,\n        param_value: \"torch.Tensor\",\n        param_name: str,\n        *args, **kwargs, # pylint: disable=unused-argument,keyword-arg-before-vararg\n    ):\n        if self.pre_quantized:\n            layer, _tensor_name = get_module_from_name(model, param_name)\n            if hasattr(layer, \"sdnq_dequantizer\"):\n                return True\n        elif param_name.endswith(\".weight\"):\n            if not check_param_name_in(param_name, self.quantization_config.modules_to_not_convert) is not None:\n                layer_class_name = get_module_from_name(model, param_name)[0].__class__.__name__\n                if layer_class_name in allowed_types:\n                    if layer_class_name in conv_types or layer_class_name in conv_transpose_types:\n                        if self.quantization_config.quant_conv:\n                            return True\n                    else:\n                        return True\n        return False\n\n    def check_quantized_param(self, *args, **kwargs) -> bool:\n        \"\"\"\n        needed for transformers compatibilty, returns self.check_if_quantized_param\n        \"\"\"\n        return self.check_if_quantized_param(*args, **kwargs)\n\n    def param_needs_quantization(self, model, param_name: str, *args, **kwargs) -> bool:\n        \"\"\"\n        needed for transformers compatibilty, returns self.check_if_quantized_param\n        \"\"\"\n        return self.check_if_quantized_param(model, None, param_name, *args, **kwargs)\n\n    @devices.inference_context()\n    def create_quantized_param( # pylint: disable=arguments-differ\n        self,\n        model,\n        param_value: torch.FloatTensor,\n        param_name: str,\n        target_device: torch.device,\n        *args, **kwargs, # pylint: disable=unused-argument\n    ):\n        if self.pre_quantized:\n            layer, tensor_name = get_module_from_name(model, param_name)\n            if param_value is not None:\n                return_dtype = param_value.dtype if tensor_name == \"weight\" else torch.float32 if self.quantization_config.dequantize_fp32 else kwargs.get(\"dtype\", param_value.dtype if self.torch_dtype is None else self.torch_dtype)\n                if param_value.dtype == return_dtype and devices.same_device(param_value.device, target_device):\n                    param_value = param_value.clone()\n                else:\n                    param_value = param_value.to(target_device, dtype=return_dtype)\n\n                if tensor_name == \"weight\" and layer.sdnq_dequantizer.use_quantized_matmul and not layer.sdnq_dequantizer.re_quantize_for_matmul:\n                    param_value = prepare_weight_for_matmul(param_value)\n                elif tensor_name == \"svd_up\":\n                    param_value, _ = prepare_svd_for_matmul(param_value, None, layer.sdnq_dequantizer.use_quantized_matmul)\n                elif tensor_name == \"svd_down\":\n                    _, param_value = prepare_svd_for_matmul(None, param_value, layer.sdnq_dequantizer.use_quantized_matmul)\n\n                param_value = torch.nn.Parameter(param_value, requires_grad=False)\n                param_value._is_hf_initialized = True # pylint: disable=protected-access\n            setattr(layer, tensor_name, param_value)\n            return\n\n        torch_dtype = kwargs.get(\"dtype\", param_value.dtype if self.torch_dtype is None else self.torch_dtype)\n        if self.quantization_config.return_device is not None:\n            return_device = self.quantization_config.return_device\n        else:\n            return_device = target_device\n        if self.quantization_config.quantization_device is not None:\n            target_device = self.quantization_config.quantization_device\n\n        quant_kwargs = {\n            \"weights_dtype\": self.quantization_config.weights_dtype,\n            \"quantized_matmul_dtype\": self.quantization_config.quantized_matmul_dtype,\n            \"torch_dtype\": torch_dtype,\n            \"group_size\": self.quantization_config.group_size,\n            \"svd_rank\": self.quantization_config.svd_rank,\n            \"svd_steps\": self.quantization_config.svd_steps,\n            \"dynamic_loss_threshold\": self.quantization_config.dynamic_loss_threshold,\n            \"use_svd\": self.quantization_config.use_svd,\n            \"quant_conv\": self.quantization_config.quant_conv,\n            \"use_quantized_matmul\": self.quantization_config.use_quantized_matmul,\n            \"use_quantized_matmul_conv\": self.quantization_config.use_quantized_matmul_conv,\n            \"use_dynamic_quantization\": self.quantization_config.use_dynamic_quantization,\n            \"use_stochastic_rounding\": self.quantization_config.use_stochastic_rounding,\n            \"dequantize_fp32\": self.quantization_config.dequantize_fp32,\n            \"non_blocking\": self.quantization_config.non_blocking,\n            \"modules_to_not_convert\": self.quantization_config.modules_to_not_convert,\n            \"modules_dtype_dict\": self.quantization_config.modules_dtype_dict,\n            \"quantization_device\": None,\n            \"return_device\": return_device,\n            \"param_name\": param_name,\n        }\n        quant_kwargs = get_quant_kwargs(quant_kwargs, self.quantization_config.modules_quant_config)\n\n        if param_value.dtype == torch.float32 and devices.same_device(param_value.device, target_device):\n            param_value = param_value.clone()\n        else:\n            param_value = param_value.to(target_device, non_blocking=self.quantization_config.non_blocking).to(dtype=torch.float32)\n\n        layer, tensor_name = get_module_from_name(model, param_name)\n        layer.weight = torch.nn.Parameter(param_value, requires_grad=False)\n        layer, self.quantization_config.modules_to_not_convert, self.quantization_config.modules_dtype_dict = sdnq_quantize_layer(layer, **quant_kwargs)\n\n        layer.weight._is_hf_initialized = True # pylint: disable=protected-access\n        if hasattr(layer, \"scale\"):\n            layer.scale._is_hf_initialized = True # pylint: disable=protected-access\n            if layer.zero_point is not None:\n                layer.zero_point._is_hf_initialized = True # pylint: disable=protected-access\n            if layer.svd_up is not None:\n                layer.svd_up._is_hf_initialized = True # pylint: disable=protected-access\n                layer.svd_down._is_hf_initialized = True # pylint: disable=protected-access\n        parent_module, tensor_name = get_module_from_name(model, param_name.removesuffix(tensor_name).removesuffix(\".\"))\n        setattr(parent_module, tensor_name, layer)\n\n    def get_quantize_ops(self):\n        return SDNQQuantize(self)\n\n    def adjust_max_memory(self, max_memory: Dict[str, Union[int, str]]) -> Dict[str, Union[int, str]]:\n        max_memory = {key: val * 0.80 for key, val in max_memory.items()}\n        return max_memory\n\n    def adjust_target_dtype(self, target_dtype: torch.dtype) -> torch.dtype: # pylint: disable=unused-argument,arguments-renamed\n        return dtype_dict[self.quantization_config.weights_dtype][\"target_dtype\"]\n\n    def update_torch_dtype(self, torch_dtype: torch.dtype = None) -> torch.dtype:\n        self.torch_dtype = torch_dtype\n        return torch_dtype\n\n    def update_dtype(self, dtype: torch.dtype = None) -> torch.dtype:\n        \"\"\"\n        needed for transformers compatibilty, returns self.update_torch_dtype\n        \"\"\"\n        return self.update_torch_dtype(dtype)\n\n    def _process_model_before_weight_loading( # pylint: disable=arguments-differ\n        self,\n        model,\n        device_map, # pylint: disable=unused-argument\n        keep_in_fp32_modules: List[str] = None,\n        **kwargs, # pylint: disable=unused-argument\n    ):\n        if self.pre_quantized:\n            self.quantization_config.quantization_device = None\n            self.quantization_config.return_device = None\n            self.quantization_config.non_blocking = False\n            self.quantization_config.add_skip_keys = False\n\n            with init_empty_weights():\n                model = sdnq_post_load_quant(model, torch_dtype=self.torch_dtype, add_skip_keys=False, use_dynamic_quantization=False, **get_quant_args_from_config(self.quantization_config))\n\n        if self.quantization_config.add_skip_keys:\n            if keep_in_fp32_modules is not None:\n                self.quantization_config.modules_to_not_convert.extend(keep_in_fp32_modules)\n            if hasattr(self, \"get_modules_to_not_convert\") and hasattr(model, \"tie_weights\"):\n                self.quantization_config.modules_to_not_convert.extend(self.get_modules_to_not_convert(model, add_default_skips=True))\n            model, self.quantization_config.modules_to_not_convert, self.quantization_config.modules_dtype_dict = add_module_skip_keys(\n                model, self.quantization_config.modules_to_not_convert, self.quantization_config.modules_dtype_dict\n            )\n        if hasattr(model, \"config\"):\n            try:\n                model.config.quantization_config = self.quantization_config\n            except Exception:\n                pass\n            try:\n                model.config[\"quantization_config\"] = self.quantization_config.to_dict()\n            except Exception:\n                pass\n        model.quantization_config = self.quantization_config\n        model.quantization_method = QuantizationMethod.SDNQ\n\n    def _process_model_after_weight_loading(self, model, **kwargs): # pylint: disable=unused-argument\n        if self.pre_quantized:\n            from .loader import post_process_model\n            model = post_process_model(model)\n        if self.quantization_config.is_training:\n            from .training import convert_sdnq_model_to_training\n            model = convert_sdnq_model_to_training(\n                model,\n                dtype=self.torch_dtype,\n                quantized_matmul_dtype=self.quantization_config.quantized_matmul_dtype,\n                use_grad_ckpt=self.quantization_config.use_grad_ckpt,\n                use_quantized_matmul=self.quantization_config.use_quantized_matmul,\n                use_stochastic_rounding=self.quantization_config.use_stochastic_rounding,\n                dequantize_fp32=self.quantization_config.dequantize_fp32,\n            )\n        if shared.opts.diffusers_offload_mode != \"none\":\n            try:\n                model = model.to(device=devices.cpu)\n            except Exception:\n                model = model.to_empty(device=devices.cpu)\n        devices.torch_gc(force=True, reason=\"sdnq\")\n        return model\n\n    def get_accelerator_warm_up_factor(self):\n        return 32 // dtype_dict[self.quantization_config.weights_dtype][\"num_bits\"]\n\n    def get_cuda_warm_up_factor(self):\n        \"\"\"\n        needed for transformers compatibilty, returns self.get_accelerator_warm_up_factor\n        \"\"\"\n        return self.get_accelerator_warm_up_factor()\n\n    def _dequantize(self, model):\n        return dequantize_sdnq_model(model)\n\n    def is_serializable(self, *args, **kwargs) -> bool:  # pylint: disable=unused-argument, invalid-overridden-method\n        return not self.quantization_config.is_training\n\n    @property\n    def is_trainable(self):\n        return self.quantization_config.is_training\n\n    @property\n    def is_qat_trainable(self) -> bool:\n        return self.is_trainable()\n\n    @property\n    def is_compileable(self):\n        return True\n\n\n@dataclass\nclass SDNQConfig(QuantizationConfigMixin):\n    \"\"\"\n    This is a wrapper class about all possible attributes and features that you can play with a model that has been\n    loaded using `sdnq`.\n\n    Args:\n        weights_dtype (`str`, *optional*, defaults to `\"int8\"`):\n            The target dtype for the weights after quantization.\n            Check out `sdnq.common.accepted_weight_dtypes` for all the supported values.\n            These are some of the recommended values to use: (\"int8\", \"int7\", \"int6\", \"uint5\", \"uint4\", \"uint3\", \"uint2\", \"float8_e4m3fn\", \"float7_e3m3fn\", \"float6_e3m2fn\", \"float5_e2m2fn\", \"float4_e2m1fn\", \"float3_e1m1fn\", \"float2_e1m0fn\")\n        quantized_matmul_dtype (`str`, *optional*, defaults to `None`):\n            The target dtype for quantized matmul.\n            `None` will use \"int8\" with integer weight dtypes and \"float8_e4m3fn\" or \"float16\" with float weight dtypes.\n            Supported values are: (\"int8\", \"float8_e4m3fn\", \"float16\")\n        group_size (`int`, *optional*, defaults to `0`):\n            Used to decide how many elements of a tensor will share the same quantization group.\n            group_size = 0 will automatically select a group size based on weights_dtype.\n        svd_rank (`int`, *optional*, defaults to `32`):\n            The rank size used for the SVDQuant algorithm.\n        dynamic_loss_threshold (`float`, *optional*, defaults to `1e-2`):\n            The target quantization mse loss threshold to use for dynamic quantization.\n        svd_steps (`int`, *optional*, defaults to `8`):\n            The number of iterations to use in svd lowrank estimation.\n        use_svd (`bool`, *optional*, defaults to `False`):\n            Enabling this option will use SVDQuant algorithm on top of SDNQ quantization.\n        quant_conv (`bool`, *optional*, defaults to `False`):\n            Enabling this option will quantize the convolutional layers in UNet models too.\n        use_quantized_matmul (`bool`, *optional*, defaults to `False`):\n            Enabling this option will use quantized INT8 or FP8 MatMul instead of BF16 / FP16.\n        use_quantized_matmul_conv (`bool`, *optional*, defaults to `False`):\n            Same as use_quantized_matmul_conv but for the convolutional layers with UNets like SDXL.\n        use_stochastic_rounding (`bool`, *optional*, defaults to `False`):\n            Enabling this option will use stochastic rounding on the quantization step.\n        use_dynamic_quantization (`bool`, *optional*, defaults to `False`):\n            Enabling this option will dynamically select a per layer quantization type based on the dynamic_loss_threshold.\n            weights_dtype will be used as the minimum allowed quantization type when this option is enabled.\n        dequantize_fp32 (`bool`, *optional*, defaults to `False`):\n            Enabling this option will use FP32 on the dequantization step.\n        non_blocking (`bool`, *optional*, defaults to `False`):\n            Enabling this option will use non blocking ops when moving layers between the quantization device and the return device.\n        add_skip_keys (`bool`, *optional*, defaults to `True`):\n            Disabling this option won't add model specific modules_to_not_convert and modules_dtype_dict keys.\n        quantization_device (`torch.device`, *optional*, defaults to `None`):\n            Used to set which device will be used for the quantization calculation on model load.\n        return_device (`torch.device`, *optional*, defaults to `None`):\n            Used to set which device will the quantized weights be sent back to.\n        modules_to_not_convert (`list`, *optional*, default to `None`):\n            The list of modules to not quantize. Useful for quantizing models that explicitly require to have some\n            modules left in their original precision (e.g. Whisper encoder, Llava encoder, Mixtral gate layers).\n        modules_dtype_dict (`dict`, *optional*, default to `None`):\n            The dict of dtypes and list of modules. Useful for quantizing some modules with a different dtype.\n        modules_quant_config (`dict`, *optional*, default to `None`):\n            The dict of modules and a dict of quantization kwargs to use for that module.\n            Useful for quantizing some modules with a different quantization config.\n    \"\"\"\n\n    def __init__( # pylint: disable=super-init-not-called\n        self,\n        weights_dtype: str = \"int8\",\n        quantized_matmul_dtype: str = None,\n        group_size: int = 0,\n        svd_rank: int = 32,\n        svd_steps: int = 8,\n        dynamic_loss_threshold: float = 1e-2,\n        use_svd: bool = False,\n        use_grad_ckpt: bool = True,\n        quant_conv: bool = False,\n        use_quantized_matmul: bool = False,\n        use_quantized_matmul_conv: bool = False,\n        use_static_quantization: bool = True,\n        use_dynamic_quantization: bool = False,\n        use_stochastic_rounding: bool = False,\n        dequantize_fp32: bool = False,\n        non_blocking: bool = False,\n        add_skip_keys: bool = True,\n        quantization_device: Optional[torch.device] = None,\n        return_device: Optional[torch.device] = None,\n        modules_to_not_convert: Optional[List[str]] = None,\n        modules_dtype_dict: Optional[Dict[str, List[str]]] = None,\n        modules_quant_config: Optional[Dict[str, dict]] = None,\n        is_training: bool = False,\n        **kwargs, # pylint: disable=unused-argument\n    ):\n        self.weights_dtype = weights_dtype\n        self.quantized_matmul_dtype = quantized_matmul_dtype\n        self.is_training = is_training\n        if self.is_training:\n            self.quant_method = QuantizationMethod.SDNQ_TRAINING\n        else:\n            self.quant_method = QuantizationMethod.SDNQ\n        self.group_size = group_size\n        self.svd_rank = svd_rank\n        self.dynamic_loss_threshold = dynamic_loss_threshold\n        self.svd_steps = svd_steps\n        self.use_svd = use_svd\n        self.use_grad_ckpt = use_grad_ckpt\n        self.quant_conv = quant_conv\n        self.use_quantized_matmul = use_quantized_matmul\n        self.use_quantized_matmul_conv = use_quantized_matmul_conv\n        self.use_static_quantization = use_static_quantization\n        self.use_dynamic_quantization = use_dynamic_quantization\n        self.use_stochastic_rounding = use_stochastic_rounding\n        self.dequantize_fp32 = dequantize_fp32\n        self.non_blocking = non_blocking\n        self.add_skip_keys = add_skip_keys\n        self.quantization_device = quantization_device\n        self.return_device = return_device\n        self.modules_to_not_convert = modules_to_not_convert\n        self.modules_dtype_dict = modules_dtype_dict\n        self.modules_quant_config = modules_quant_config\n        self.is_integer = dtype_dict[self.weights_dtype][\"is_integer\"]\n        self.sdnq_version = sdnq_version\n        self.post_init()\n\n    def post_init(self):\n        r\"\"\"\n        Safety checker that arguments are correct\n        \"\"\"\n        if self.use_quantized_matmul and not check_torch_compile():\n            raise RuntimeError(\"SDNQ Quantized MatMul requires a working Triton install.\")\n        if self.weights_dtype not in accepted_weight_dtypes:\n            raise ValueError(f\"SDNQ only support weight dtypes in {accepted_weight_dtypes} but found {self.weights_dtype}\")\n        if self.quantized_matmul_dtype is not None and self.quantized_matmul_dtype not in accepted_matmul_dtypes:\n            raise ValueError(f\"SDNQ only support quantized matmul dtypes in {accepted_matmul_dtypes} but found {self.quantized_matmul_dtype}\")\n\n        if self.modules_to_not_convert is None:\n            self.modules_to_not_convert = []\n        elif isinstance(self.modules_to_not_convert, str):\n            self.modules_to_not_convert = [self.modules_to_not_convert]\n        elif isinstance(self.modules_to_not_convert, tuple):\n            self.modules_to_not_convert = list(self.modules_to_not_convert)\n        elif not isinstance(self.modules_to_not_convert, list):\n            raise ValueError(f\"modules_to_not_convert must be a list but got {type(self.modules_to_not_convert)}\")\n\n        if self.modules_dtype_dict is None:\n            self.modules_dtype_dict = {}\n        elif not isinstance(self.modules_dtype_dict, dict):\n            raise ValueError(f\"modules_dtype_dict must be a dict but got {type(self.modules_dtype_dict)}\")\n        elif len(self.modules_dtype_dict.keys()) > 0:\n            self.modules_dtype_dict = self.modules_dtype_dict.copy()\n            for key, value in self.modules_dtype_dict.items():\n                if isinstance(value, str):\n                    value = [value]\n                    self.modules_dtype_dict[key] = value\n                elif isinstance(value, tuple):\n                    value = list(value)\n                    self.modules_dtype_dict[key] = value\n                if not isinstance(key, str) or not isinstance(value, list):\n                    raise ValueError(f\"modules_dtype_dict must be a dictionary of strings and lists but got {type(key)} and {type(value)}\")\n\n        if self.modules_quant_config is None:\n            self.modules_quant_config = {}\n\n        self.modules_to_not_convert = self.modules_to_not_convert.copy()\n        self.modules_dtype_dict = self.modules_dtype_dict.copy()\n        self.modules_quant_config = self.modules_quant_config.copy()\n\n    def to_dict(self):\n        quantization_config_dict = self.__dict__.copy() # make serializable\n        quantization_config_dict[\"quantization_device\"] = str(quantization_config_dict[\"quantization_device\"]) if quantization_config_dict[\"quantization_device\"] is not None else None\n        quantization_config_dict[\"return_device\"] = str(quantization_config_dict[\"return_device\"]) if quantization_config_dict[\"return_device\"] is not None else None\n        return quantization_config_dict\n\n\nimport diffusers.quantizers.auto # noqa: E402,RUF100 # pylint: disable=wrong-import-order\ndiffusers.quantizers.auto.AUTO_QUANTIZER_MAPPING[\"sdnq\"] = SDNQQuantizer\ndiffusers.quantizers.auto.AUTO_QUANTIZATION_CONFIG_MAPPING[\"sdnq\"] = SDNQConfig\n\ndiffusers.quantizers.auto.AUTO_QUANTIZER_MAPPING[\"sdnq_training\"] = SDNQQuantizer\ndiffusers.quantizers.auto.AUTO_QUANTIZATION_CONFIG_MAPPING[\"sdnq_training\"] = SDNQConfig\n\nimport transformers.quantizers.auto # noqa: E402,RUF100 # pylint: disable=wrong-import-order\ntransformers.quantizers.auto.AUTO_QUANTIZER_MAPPING[\"sdnq\"] = SDNQQuantizer\ntransformers.quantizers.auto.AUTO_QUANTIZATION_CONFIG_MAPPING[\"sdnq\"] = SDNQConfig\n\ntransformers.quantizers.auto.AUTO_QUANTIZER_MAPPING[\"sdnq_training\"] = SDNQQuantizer\ntransformers.quantizers.auto.AUTO_QUANTIZATION_CONFIG_MAPPING[\"sdnq_training\"] = SDNQConfig\n\nsdnq_quantize_layer_weight_compiled = compile_func(sdnq_quantize_layer_weight)\n"
  },
  {
    "path": "modules/sdnq/triton_mm.py",
    "content": "\"\"\"\nModified from Triton MatMul example.\nPyTorch torch._int_mm is broken on backward pass with Nvidia.\nAMD RDNA2 doesn't support torch._int_mm, so we use int_mm via Triton.\nPyTorch doesn't support FP32 output type with FP16 MM so we use Triton for it too.\n\"\"\"\n\nimport torch\n\nimport triton\nimport triton.language as tl\n\n\ndef get_autotune_config():\n    if triton.runtime.driver.active.get_current_target().backend == \"cuda\":\n        return [\n            triton.Config({\"BLOCK_SIZE_M\": 128, \"BLOCK_SIZE_N\": 256, \"BLOCK_SIZE_K\":  64, \"GROUP_SIZE_M\": 8}, num_stages=3, num_warps=8),\n            triton.Config({\"BLOCK_SIZE_M\":  64, \"BLOCK_SIZE_N\": 256, \"BLOCK_SIZE_K\":  32, \"GROUP_SIZE_M\": 8}, num_stages=4, num_warps=4),\n            triton.Config({\"BLOCK_SIZE_M\": 128, \"BLOCK_SIZE_N\": 128, \"BLOCK_SIZE_K\":  32, \"GROUP_SIZE_M\": 8}, num_stages=4, num_warps=4),\n            triton.Config({\"BLOCK_SIZE_M\": 128, \"BLOCK_SIZE_N\":  64, \"BLOCK_SIZE_K\":  32, \"GROUP_SIZE_M\": 8}, num_stages=4, num_warps=4),\n            triton.Config({\"BLOCK_SIZE_M\":  64, \"BLOCK_SIZE_N\": 128, \"BLOCK_SIZE_K\":  32, \"GROUP_SIZE_M\": 8}, num_stages=4, num_warps=4),\n            triton.Config({\"BLOCK_SIZE_M\": 128, \"BLOCK_SIZE_N\":  32, \"BLOCK_SIZE_K\":  32, \"GROUP_SIZE_M\": 8}, num_stages=4, num_warps=4),\n            triton.Config({\"BLOCK_SIZE_M\":  64, \"BLOCK_SIZE_N\":  32, \"BLOCK_SIZE_K\":  32, \"GROUP_SIZE_M\": 8}, num_stages=5, num_warps=2),\n            triton.Config({\"BLOCK_SIZE_M\":  32, \"BLOCK_SIZE_N\":  64, \"BLOCK_SIZE_K\":  32, \"GROUP_SIZE_M\": 8}, num_stages=5, num_warps=2),\n            #\n            triton.Config({\"BLOCK_SIZE_M\": 128, \"BLOCK_SIZE_N\": 256, \"BLOCK_SIZE_K\": 128, \"GROUP_SIZE_M\": 8}, num_stages=3, num_warps=8),\n            triton.Config({\"BLOCK_SIZE_M\":  64, \"BLOCK_SIZE_N\": 256, \"BLOCK_SIZE_K\": 128, \"GROUP_SIZE_M\": 8}, num_stages=4, num_warps=4),\n            triton.Config({\"BLOCK_SIZE_M\": 128, \"BLOCK_SIZE_N\": 128, \"BLOCK_SIZE_K\": 128, \"GROUP_SIZE_M\": 8}, num_stages=4, num_warps=4),\n            triton.Config({\"BLOCK_SIZE_M\": 128, \"BLOCK_SIZE_N\":  64, \"BLOCK_SIZE_K\":  64, \"GROUP_SIZE_M\": 8}, num_stages=4, num_warps=4),\n            triton.Config({\"BLOCK_SIZE_M\":  64, \"BLOCK_SIZE_N\": 128, \"BLOCK_SIZE_K\":  64, \"GROUP_SIZE_M\": 8}, num_stages=4, num_warps=4),\n            triton.Config({\"BLOCK_SIZE_M\": 128, \"BLOCK_SIZE_N\":  32, \"BLOCK_SIZE_K\":  64, \"GROUP_SIZE_M\": 8}, num_stages=4, num_warps=4),\n            triton.Config({\"BLOCK_SIZE_M\": 256, \"BLOCK_SIZE_N\": 128, \"BLOCK_SIZE_K\": 128, \"GROUP_SIZE_M\": 8}, num_stages=3, num_warps=8),\n            triton.Config({\"BLOCK_SIZE_M\": 256, \"BLOCK_SIZE_N\":  64, \"BLOCK_SIZE_K\": 128, \"GROUP_SIZE_M\": 8}, num_stages=4, num_warps=4),\n        ]\n    else:\n        return [\n            triton.Config({\"BLOCK_SIZE_M\": 128, \"BLOCK_SIZE_N\": 256, \"BLOCK_SIZE_K\":  64, \"GROUP_SIZE_M\": 8}, num_stages=2, num_warps=8),\n            triton.Config({\"BLOCK_SIZE_M\":  64, \"BLOCK_SIZE_N\": 256, \"BLOCK_SIZE_K\":  32, \"GROUP_SIZE_M\": 8}, num_stages=2, num_warps=4),\n            triton.Config({\"BLOCK_SIZE_M\": 128, \"BLOCK_SIZE_N\": 128, \"BLOCK_SIZE_K\":  32, \"GROUP_SIZE_M\": 8}, num_stages=2, num_warps=4),\n            triton.Config({\"BLOCK_SIZE_M\": 128, \"BLOCK_SIZE_N\":  64, \"BLOCK_SIZE_K\":  32, \"GROUP_SIZE_M\": 8}, num_stages=2, num_warps=4),\n            triton.Config({\"BLOCK_SIZE_M\":  64, \"BLOCK_SIZE_N\": 128, \"BLOCK_SIZE_K\":  32, \"GROUP_SIZE_M\": 8}, num_stages=2, num_warps=4),\n            triton.Config({\"BLOCK_SIZE_M\": 128, \"BLOCK_SIZE_N\":  32, \"BLOCK_SIZE_K\":  32, \"GROUP_SIZE_M\": 8}, num_stages=2, num_warps=4),\n            triton.Config({\"BLOCK_SIZE_M\":  64, \"BLOCK_SIZE_N\":  32, \"BLOCK_SIZE_K\":  32, \"GROUP_SIZE_M\": 8}, num_stages=2, num_warps=2),\n            triton.Config({\"BLOCK_SIZE_M\":  32, \"BLOCK_SIZE_N\":  64, \"BLOCK_SIZE_K\":  32, \"GROUP_SIZE_M\": 8}, num_stages=2, num_warps=2),\n            #\n            triton.Config({\"BLOCK_SIZE_M\": 128, \"BLOCK_SIZE_N\": 256, \"BLOCK_SIZE_K\": 128, \"GROUP_SIZE_M\": 8}, num_stages=2, num_warps=8),\n            triton.Config({\"BLOCK_SIZE_M\":  64, \"BLOCK_SIZE_N\": 256, \"BLOCK_SIZE_K\": 128, \"GROUP_SIZE_M\": 8}, num_stages=2, num_warps=4),\n            triton.Config({\"BLOCK_SIZE_M\": 128, \"BLOCK_SIZE_N\": 128, \"BLOCK_SIZE_K\": 128, \"GROUP_SIZE_M\": 8}, num_stages=2, num_warps=4),\n            triton.Config({\"BLOCK_SIZE_M\": 128, \"BLOCK_SIZE_N\":  64, \"BLOCK_SIZE_K\":  64, \"GROUP_SIZE_M\": 8}, num_stages=2, num_warps=4),\n            triton.Config({\"BLOCK_SIZE_M\":  64, \"BLOCK_SIZE_N\": 128, \"BLOCK_SIZE_K\":  64, \"GROUP_SIZE_M\": 8}, num_stages=2, num_warps=4),\n            triton.Config({\"BLOCK_SIZE_M\": 128, \"BLOCK_SIZE_N\":  32, \"BLOCK_SIZE_K\":  64, \"GROUP_SIZE_M\": 8}, num_stages=2, num_warps=4),\n            triton.Config({\"BLOCK_SIZE_M\": 256, \"BLOCK_SIZE_N\": 128, \"BLOCK_SIZE_K\": 128, \"GROUP_SIZE_M\": 8}, num_stages=2, num_warps=8),\n            triton.Config({\"BLOCK_SIZE_M\": 256, \"BLOCK_SIZE_N\":  64, \"BLOCK_SIZE_K\": 128, \"GROUP_SIZE_M\": 8}, num_stages=2, num_warps=4),\n        ]\n\n\n@triton.autotune(configs=get_autotune_config(), key=[\"M\", \"N\", \"K\", \"stride_bk\"])\n@triton.jit\ndef int_mm_kernel(\n    a_ptr, b_ptr, c_ptr,\n    M, N, K,\n    stride_am, stride_ak,\n    stride_bk, stride_bn,\n    stride_cm, stride_cn,\n    BLOCK_SIZE_M: tl.constexpr, BLOCK_SIZE_N: tl.constexpr, BLOCK_SIZE_K: tl.constexpr,\n    GROUP_SIZE_M: tl.constexpr,\n):\n    pid = tl.program_id(axis=0)\n    num_pid_m = tl.cdiv(M, BLOCK_SIZE_M)\n    num_pid_n = tl.cdiv(N, BLOCK_SIZE_N)\n    num_pid_in_group = GROUP_SIZE_M * num_pid_n\n    group_id = pid // num_pid_in_group\n    first_pid_m = group_id * GROUP_SIZE_M\n    group_size_m = min(num_pid_m - first_pid_m, GROUP_SIZE_M)\n    pid_m = first_pid_m + ((pid % num_pid_in_group) % group_size_m)\n    pid_n = (pid % num_pid_in_group) // group_size_m\n\n    tl.assume(pid_m >= 0)\n    tl.assume(pid_n >= 0)\n    tl.assume(stride_am > 0)\n    tl.assume(stride_ak > 0)\n    tl.assume(stride_bn > 0)\n    tl.assume(stride_bk > 0)\n    tl.assume(stride_cm > 0)\n    tl.assume(stride_cn > 0)\n\n    offs_am = (pid_m * BLOCK_SIZE_M + tl.arange(0, BLOCK_SIZE_M)) % M\n    offs_bn = (pid_n * BLOCK_SIZE_N + tl.arange(0, BLOCK_SIZE_N)) % N\n    offs_k = tl.arange(0, BLOCK_SIZE_K)\n    a_ptrs = a_ptr + (offs_am[:, None] * stride_am + offs_k[None, :] * stride_ak)\n    b_ptrs = b_ptr + (offs_k[:, None] * stride_bk + offs_bn[None, :] * stride_bn)\n\n    accumulator = tl.zeros((BLOCK_SIZE_M, BLOCK_SIZE_N), dtype=tl.int32)\n    for k in range(0, tl.cdiv(K, BLOCK_SIZE_K)):\n        a = tl.load(a_ptrs, mask=offs_k[None, :] < K - k * BLOCK_SIZE_K, other=0.0)\n        b = tl.load(b_ptrs, mask=offs_k[:, None] < K - k * BLOCK_SIZE_K, other=0.0)\n        accumulator = tl.dot(a, b, accumulator, out_dtype=tl.int32)\n        a_ptrs += BLOCK_SIZE_K * stride_ak\n        b_ptrs += BLOCK_SIZE_K * stride_bk\n\n    offs_cm = pid_m * BLOCK_SIZE_M + tl.arange(0, BLOCK_SIZE_M)\n    offs_cn = pid_n * BLOCK_SIZE_N + tl.arange(0, BLOCK_SIZE_N)\n    c_ptrs = c_ptr + stride_cm * offs_cm[:, None] + stride_cn * offs_cn[None, :]\n    c_mask = (offs_cm[:, None] < M) & (offs_cn[None, :] < N)\n    tl.store(c_ptrs, accumulator, mask=c_mask)\n\n\ndef int_mm(a, b):\n    assert a.shape[1] == b.shape[0], \"Incompatible dimensions\"\n    assert a.is_contiguous(), \"Matrix A must be contiguous\"\n    M, K = a.shape\n    K, N = b.shape\n    c = torch.empty((M, N), device=a.device, dtype=torch.int32)\n    def grid(META):\n        return (triton.cdiv(M, META[\"BLOCK_SIZE_M\"]) * triton.cdiv(N, META[\"BLOCK_SIZE_N\"]), )\n    int_mm_kernel[grid](\n        a, b, c,\n        M, N, K,\n        a.stride(0), a.stride(1),\n        b.stride(0), b.stride(1),\n        c.stride(0), c.stride(1),\n    )\n    return c\n\n\n@triton.autotune(configs=get_autotune_config(), key=[\"M\", \"N\", \"K\", \"stride_bk\"])\n@triton.jit\ndef fp_mm_kernel(\n    a_ptr, b_ptr, c_ptr,\n    M, N, K,\n    stride_am, stride_ak,\n    stride_bk, stride_bn,\n    stride_cm, stride_cn,\n    BLOCK_SIZE_M: tl.constexpr, BLOCK_SIZE_N: tl.constexpr, BLOCK_SIZE_K: tl.constexpr,\n    GROUP_SIZE_M: tl.constexpr,\n):\n    pid = tl.program_id(axis=0)\n    num_pid_m = tl.cdiv(M, BLOCK_SIZE_M)\n    num_pid_n = tl.cdiv(N, BLOCK_SIZE_N)\n    num_pid_in_group = GROUP_SIZE_M * num_pid_n\n    group_id = pid // num_pid_in_group\n    first_pid_m = group_id * GROUP_SIZE_M\n    group_size_m = min(num_pid_m - first_pid_m, GROUP_SIZE_M)\n    pid_m = first_pid_m + ((pid % num_pid_in_group) % group_size_m)\n    pid_n = (pid % num_pid_in_group) // group_size_m\n\n    tl.assume(pid_m >= 0)\n    tl.assume(pid_n >= 0)\n    tl.assume(stride_am > 0)\n    tl.assume(stride_ak > 0)\n    tl.assume(stride_bn > 0)\n    tl.assume(stride_bk > 0)\n    tl.assume(stride_cm > 0)\n    tl.assume(stride_cn > 0)\n\n    offs_am = (pid_m * BLOCK_SIZE_M + tl.arange(0, BLOCK_SIZE_M)) % M\n    offs_bn = (pid_n * BLOCK_SIZE_N + tl.arange(0, BLOCK_SIZE_N)) % N\n    offs_k = tl.arange(0, BLOCK_SIZE_K)\n    a_ptrs = a_ptr + (offs_am[:, None] * stride_am + offs_k[None, :] * stride_ak)\n    b_ptrs = b_ptr + (offs_k[:, None] * stride_bk + offs_bn[None, :] * stride_bn)\n\n    accumulator = tl.zeros((BLOCK_SIZE_M, BLOCK_SIZE_N), dtype=tl.float32)\n    for k in range(0, tl.cdiv(K, BLOCK_SIZE_K)):\n        a = tl.load(a_ptrs, mask=offs_k[None, :] < K - k * BLOCK_SIZE_K, other=0.0)\n        b = tl.load(b_ptrs, mask=offs_k[:, None] < K - k * BLOCK_SIZE_K, other=0.0)\n        accumulator = tl.dot(a, b, accumulator, out_dtype=tl.float32)\n        a_ptrs += BLOCK_SIZE_K * stride_ak\n        b_ptrs += BLOCK_SIZE_K * stride_bk\n\n    offs_cm = pid_m * BLOCK_SIZE_M + tl.arange(0, BLOCK_SIZE_M)\n    offs_cn = pid_n * BLOCK_SIZE_N + tl.arange(0, BLOCK_SIZE_N)\n    c_ptrs = c_ptr + stride_cm * offs_cm[:, None] + stride_cn * offs_cn[None, :]\n    c_mask = (offs_cm[:, None] < M) & (offs_cn[None, :] < N)\n    tl.store(c_ptrs, accumulator, mask=c_mask)\n\n\ndef fp_mm(a, b):\n    assert a.shape[1] == b.shape[0], \"Incompatible dimensions\"\n    assert a.is_contiguous(), \"Matrix A must be contiguous\"\n    M, K = a.shape\n    K, N = b.shape\n    c = torch.empty((M, N), device=a.device, dtype=torch.float32)\n    def grid(META):\n        return (triton.cdiv(M, META[\"BLOCK_SIZE_M\"]) * triton.cdiv(N, META[\"BLOCK_SIZE_N\"]), )\n    fp_mm_kernel[grid](\n        a, b, c,\n        M, N, K,\n        a.stride(0), a.stride(1),\n        b.stride(0), b.stride(1),\n        c.stride(0), c.stride(1),\n    )\n    return c\n"
  },
  {
    "path": "modules/seedvr/__init__.py",
    "content": ""
  },
  {
    "path": "modules/seedvr/config_3b.yaml",
    "content": "__object__:\n  path: projects.video_diffusion_sr.train\n  name: VideoDiffusionTrainer\n\ndit:\n  model:\n    __object__:\n      path:\n        - \"SeedVR2_VideoUpscaler.src.models.dit_v2.nadit\"\n        - \"SeedVR2_VideoUpscaler.src.models.dit_v2.nadit\"\n        - \"modules.seedvr.src.models.dit_v2.nadit\"\n      name: \"NaDiT\"\n      args: \"as_params\"\n    vid_in_channels: 33\n    vid_out_channels: 16\n    vid_dim: 2560\n    vid_out_norm: fusedrms\n    txt_in_dim: 5120\n    txt_in_norm: fusedln\n    txt_dim: ${.vid_dim}\n    emb_dim: ${eval:'6 * ${.vid_dim}'}\n    heads: 20\n    head_dim: 128 # llm-like\n    expand_ratio: 4\n    norm: fusedrms\n    norm_eps: 1.0e-05\n    ada: single\n    qk_bias: False\n    qk_norm: fusedrms\n    patch_size: [1, 2, 2]\n    num_layers: 32 # llm-like\n    mm_layers: 10\n    mlp_type: swiglu\n    msa_type: None\n    block_type: ${eval:'${.num_layers} * [\"mmdit_sr\"]'} # space-full\n    window: ${eval:'${.num_layers} * [(4,3,3)]'} # space-full\n    window_method: ${eval:'${.num_layers} // 2 * [\"720pwin_by_size_bysize\",\"720pswin_by_size_bysize\"]'} # space-full\n    rope_type: mmrope3d\n    rope_dim: 128\n  compile: False\n  gradient_checkpoint: True\n  fsdp:\n    sharding_strategy: _HYBRID_SHARD_ZERO2\n\nema:\n  decay: 0.9998\n\nvae:\n  model:\n    __object__:\n      path:\n        - \"SeedVR2_VideoUpscaler.src.models.video_vae_v3.modules.attn_video_vae\"\n        - \"SeedVR2_VideoUpscaler.src.models.video_vae_v3.modules.attn_video_vae\"\n        - \"modules.seedvr.src.models.video_vae_v3.modules.attn_video_vae\"\n      name: \"VideoAutoencoderKLWrapper\"\n      args: \"as_params\"\n    freeze_encoder: False\n    gradient_checkpoint: True # Disabled to prevent VRAM leaks in inference\n  slicing:\n    split_size: 4\n    memory_device: same\n  memory_limit:\n    conv_max_mem: 0.5\n    norm_max_mem: 0.5\n  checkpoint: ema_vae_fp16.safetensors\n  scaling_factor: 0.9152\n  compile: False\n  grouping: False\n  dtype: float16\n\ndiffusion:\n  schedule:\n    type: lerp\n    T: 1000.0\n  sampler:\n    type: euler\n    prediction_type: v_lerp\n  timesteps:\n    training:\n      type: logitnormal\n      loc: 0.0\n      scale: 1.0\n    sampling:\n      type: uniform_trailing\n      steps: 50\n    transform: True\n  loss:\n    type: v_lerp\n  cfg:\n    scale: 7.5\n    rescale: 0\n\ncondition:\n  i2v: 0.0\n  v2v: 0.0\n  sr: 1.0\n  noise_scale: 0.25\n"
  },
  {
    "path": "modules/seedvr/config_7b.yaml",
    "content": "__object__:\n  path: projects.video_diffusion_sr.train\n  name: VideoDiffusionTrainer\n\ndit:\n  model:\n    __object__:\n      path:\n        - \"SeedVR2_VideoUpscaler.src.models.dit.nadit\"\n        - \"SeedVR2_VideoUpscaler.src.models.dit.nadit\"\n        - \"modules.seedvr.src.models.dit.nadit\"\n      name: \"NaDiT\"\n      args: \"as_params\"\n    vid_in_channels: 33\n    vid_out_channels: 16\n    vid_dim: 3072\n    txt_in_dim: 5120\n    txt_dim: ${.vid_dim}\n    emb_dim: ${eval:'6 * ${.vid_dim}'}\n    heads: 24\n    head_dim: 128 # llm-like\n    expand_ratio: 4\n    norm: fusedrms\n    norm_eps: 1e-5\n    ada: single\n    qk_bias: False\n    qk_rope: True\n    qk_norm: fusedrms\n    patch_size: [1, 2, 2]\n    num_layers: 36 # llm-like\n    shared_mlp: False\n    shared_qkv: False\n    mlp_type: normal\n    block_type: ${eval:'${.num_layers} * [\"mmdit_sr\"]'} # space-full\n    window: ${eval:'${.num_layers} * [(4,3,3)]'} # space-full\n    window_method: ${eval:'${.num_layers} // 2 * [\"720pwin_by_size_bysize\",\"720pswin_by_size_bysize\"]'} # space-full\n  compile: False\n  gradient_checkpoint: True\n  fsdp:\n    sharding_strategy: _HYBRID_SHARD_ZERO2\n\nema:\n  decay: 0.9998\n\nvae:\n  model:\n    __object__:\n      path:\n        - \"SeedVR2_VideoUpscaler.src.models.video_vae_v3.modules.attn_video_vae\"\n        - \"SeedVR2_VideoUpscaler.src.models.video_vae_v3.modules.attn_video_vae\"\n        - \"modules.seedvr.src.models.video_vae_v3.modules.attn_video_vae\"\n      name: \"VideoAutoencoderKLWrapper\"\n      args: \"as_params\"\n    freeze_encoder: False\n    # gradient_checkpoint: True\n  slicing:\n    split_size: 4\n    memory_device: same\n  memory_limit:\n    conv_max_mem: 0.5\n    norm_max_mem: 0.5\n  checkpoint: ema_vae_fp16.safetensors\n  scaling_factor: 0.9152\n  compile: False\n  grouping: False\n  dtype: float16\n\ndiffusion:\n  schedule:\n    type: lerp\n    T: 1000.0\n  sampler:\n    type: euler\n    prediction_type: v_lerp\n  timesteps:\n    training:\n      type: logitnormal\n      loc: 0.0\n      scale: 1.0\n    sampling:\n      type: uniform_trailing\n      steps: 50\n    transform: True\n  loss:\n    type: v_lerp\n  cfg:\n    scale: 7.5\n    rescale: 0\n\ncondition:\n  i2v: 0.0\n  v2v: 0.0\n  sr: 1.0\n  noise_scale: 0.25\n"
  },
  {
    "path": "modules/seedvr/rotary_embedding.py",
    "content": "from __future__ import annotations\nfrom typing import Literal\nfrom math import pi\nimport torch\nfrom torch.amp import autocast\nfrom torch.nn import Module\nfrom torch import nn, einsum, broadcast_tensors, is_tensor, Tensor\nfrom einops import rearrange, repeat\n\n# helper functions\n\ndef exists(val):\n    return val is not None\n\ndef default(val, d):\n    return val if exists(val) else d\n\n# broadcat, as tortoise-tts was using it\n\ndef broadcat(tensors, dim = -1):\n    broadcasted_tensors = broadcast_tensors(*tensors)\n    return torch.cat(broadcasted_tensors, dim = dim)\n\ndef slice_at_dim(t, dim_slice: slice, *, dim):\n    dim += (t.ndim if dim < 0 else 0)\n    colons = [slice(None)] * t.ndim\n    colons[dim] = dim_slice\n    return t[tuple(colons)]\n\n# rotary embedding helper functions\n\ndef rotate_half(x):\n    x = rearrange(x, '... (d r) -> ... d r', r = 2)\n    x1, x2 = x.unbind(dim = -1)\n    x = torch.stack((-x2, x1), dim = -1)\n    return rearrange(x, '... d r -> ... (d r)')\n\n@autocast('cuda', enabled = False)\ndef apply_rotary_emb(\n    freqs,\n    t,\n    start_index = 0,\n    scale = 1.,\n    seq_dim = -2,\n    freqs_seq_dim = None\n):\n    dtype = t.dtype\n\n    if not exists(freqs_seq_dim):\n        if freqs.ndim == 2 or t.ndim == 3:\n            freqs_seq_dim = 0\n\n    if t.ndim == 3 or exists(freqs_seq_dim):\n        seq_len = t.shape[seq_dim]\n        freqs = slice_at_dim(freqs, slice(-seq_len, None), dim = freqs_seq_dim)\n\n    rot_dim = freqs.shape[-1]\n    end_index = start_index + rot_dim\n\n    assert rot_dim <= t.shape[-1], f'feature dimension {t.shape[-1]} is not of sufficient size to rotate in all the positions {rot_dim}'\n\n    # Split t into three parts: left, middle (to be transformed), and right\n    t_left = t[..., :start_index]\n    t_middle = t[..., start_index:end_index]\n    t_right = t[..., end_index:]\n\n    # Apply rotary embeddings without modifying t in place\n    t_transformed = (t_middle * freqs.cos() * scale) + (rotate_half(t_middle) * freqs.sin() * scale)\n    out = torch.cat((t_left, t_transformed, t_right), dim=-1)\n\n    return out.type(dtype)\n\n# learned rotation helpers\n\ndef apply_learned_rotations(rotations, t, start_index = 0, freq_ranges = None):\n    if exists(freq_ranges):\n        rotations = einsum('..., f -> ... f', rotations, freq_ranges)\n        rotations = rearrange(rotations, '... r f -> ... (r f)')\n\n    rotations = repeat(rotations, '... n -> ... (n r)', r = 2)\n    return apply_rotary_emb(rotations, t, start_index = start_index)\n\n# classes\n\nclass RotaryEmbedding(Module):\n    def __init__(\n        self,\n        dim,\n        custom_freqs: Tensor | None = None,\n        freqs_for:  Literal['lang', 'pixel', 'constant'] = 'lang',\n        theta = 10000,\n        max_freq = 10,\n        num_freqs = 1,\n        learned_freq = False,\n        use_xpos = False,\n        xpos_scale_base = 512,\n        interpolate_factor = 1.,\n        theta_rescale_factor = 1.,\n        seq_before_head_dim = False,\n        cache_if_possible = True,\n        cache_max_seq_len = 8192\n    ):\n        super().__init__()\n        # proposed by reddit user bloc97, to rescale rotary embeddings to longer sequence length without fine-tuning\n        # has some connection to NTK literature\n        # https://www.reddit.com/r/LocalLLaMA/comments/14lz7j5/ntkaware_scaled_rope_allows_llama_models_to_have/\n\n        theta *= theta_rescale_factor ** (dim / (dim - 2))\n\n        self.freqs_for = freqs_for\n\n        if exists(custom_freqs):\n            freqs = custom_freqs\n        elif freqs_for == 'lang':\n            freqs = 1. / (theta ** (torch.arange(0, dim, 2)[:(dim // 2)].float() / dim))\n        elif freqs_for == 'pixel':\n            freqs = torch.linspace(1., max_freq / 2, dim // 2) * pi\n        elif freqs_for == 'constant':\n            freqs = torch.ones(num_freqs).float()\n\n        self.cache_if_possible = cache_if_possible\n        self.cache_max_seq_len = cache_max_seq_len\n\n        self.register_buffer('cached_freqs', torch.zeros(cache_max_seq_len, dim), persistent = False)\n        self.cached_freqs_seq_len = 0\n\n        self.freqs = nn.Parameter(freqs, requires_grad = learned_freq) # pylint: disable=possibly-used-before-assignment\n\n        self.learned_freq = learned_freq\n\n        # dummy for device\n\n        self.register_buffer('dummy', torch.tensor(0), persistent = False)\n\n        # default sequence dimension\n\n        self.seq_before_head_dim = seq_before_head_dim\n        self.default_seq_dim = -3 if seq_before_head_dim else -2\n\n        # interpolation factors\n\n        assert interpolate_factor >= 1.\n        self.interpolate_factor = interpolate_factor\n\n        # xpos\n\n        self.use_xpos = use_xpos\n\n        if not use_xpos:\n            return\n\n        scale = (torch.arange(0, dim, 2) + 0.4 * dim) / (1.4 * dim)\n        self.scale_base = xpos_scale_base\n\n        self.register_buffer('scale', scale, persistent = False)\n        self.register_buffer('cached_scales', torch.zeros(cache_max_seq_len, dim), persistent = False)\n        self.cached_scales_seq_len = 0\n\n        # add apply_rotary_emb as static method\n\n        self.apply_rotary_emb = staticmethod(apply_rotary_emb)\n\n    @property\n    def device(self):\n        return self.dummy.device\n\n    def get_seq_pos(self, seq_len, device = None, dtype = None, offset = 0):\n        device = default(device, self.device)\n        dtype = default(dtype, self.cached_freqs.dtype)\n\n        return (torch.arange(seq_len, device = device, dtype = dtype) + offset) / self.interpolate_factor\n\n    def rotate_queries_or_keys(self, t, seq_dim = None, offset = 0, scale = None):\n        seq_dim = default(seq_dim, self.default_seq_dim)\n\n        assert not self.use_xpos or exists(scale), 'you must use `.rotate_queries_and_keys` method instead and pass in both queries and keys, for length extrapolatable rotary embeddings'\n\n        device, dtype, seq_len = t.device, t.dtype, t.shape[seq_dim]\n\n        seq = self.get_seq_pos(seq_len, device = device, dtype = dtype, offset = offset)\n\n        freqs = self.forward(seq, seq_len = seq_len, offset = offset)\n\n        if seq_dim == -3:\n            freqs = rearrange(freqs, 'n d -> n 1 d')\n\n        return apply_rotary_emb(freqs, t, scale = default(scale, 1.), seq_dim = seq_dim)\n\n    def rotate_queries_with_cached_keys(self, q, k, seq_dim = None, offset = 0):\n        dtype, device, seq_dim = q.dtype, q.device, default(seq_dim, self.default_seq_dim)\n\n        q_len, k_len = q.shape[seq_dim], k.shape[seq_dim]\n        assert q_len <= k_len\n\n        q_scale = k_scale = 1.\n\n        if self.use_xpos:\n            seq = self.get_seq_pos(k_len, dtype = dtype, device = device)\n\n            q_scale = self.get_scale(seq[-q_len:]).type(dtype)\n            k_scale = self.get_scale(seq).type(dtype)\n\n        rotated_q = self.rotate_queries_or_keys(q, seq_dim = seq_dim, scale = q_scale, offset = k_len - q_len + offset)\n        rotated_k = self.rotate_queries_or_keys(k, seq_dim = seq_dim, scale = k_scale ** -1)\n\n        rotated_q = rotated_q.type(q.dtype)\n        rotated_k = rotated_k.type(k.dtype)\n\n        return rotated_q, rotated_k\n\n    def rotate_queries_and_keys(self, q, k, seq_dim = None):\n        seq_dim = default(seq_dim, self.default_seq_dim)\n\n        assert self.use_xpos\n        device, dtype, seq_len = q.device, q.dtype, q.shape[seq_dim]\n\n        seq = self.get_seq_pos(seq_len, dtype = dtype, device = device)\n\n        freqs = self.forward(seq, seq_len = seq_len)\n        scale = self.get_scale(seq, seq_len = seq_len).to(dtype)\n\n        if seq_dim == -3:\n            freqs = rearrange(freqs, 'n d -> n 1 d')\n            scale = rearrange(scale, 'n d -> n 1 d')\n\n        rotated_q = apply_rotary_emb(freqs, q, scale = scale, seq_dim = seq_dim)\n        rotated_k = apply_rotary_emb(freqs, k, scale = scale ** -1, seq_dim = seq_dim)\n\n        rotated_q = rotated_q.type(q.dtype)\n        rotated_k = rotated_k.type(k.dtype)\n\n        return rotated_q, rotated_k\n\n    def get_scale(\n        self,\n        t: Tensor,\n        seq_len: int | None = None,\n        offset = 0\n    ):\n        assert self.use_xpos\n\n        should_cache = (\n            self.cache_if_possible and\n            exists(seq_len) and\n            (offset + seq_len) <= self.cache_max_seq_len\n        )\n\n        if (\n            should_cache and \\\n            exists(self.cached_scales) and \\\n            (seq_len + offset) <= self.cached_scales_seq_len\n        ):\n            return self.cached_scales[offset:(offset + seq_len)]\n\n        scale = 1.\n        if self.use_xpos:\n            power = (t - len(t) // 2) / self.scale_base\n            scale = self.scale ** rearrange(power, 'n -> n 1')\n            scale = repeat(scale, 'n d -> n (d r)', r = 2)\n\n        if should_cache and offset == 0:\n            self.cached_scales[:seq_len] = scale.detach()\n            self.cached_scales_seq_len = seq_len\n\n        return scale\n\n    def get_axial_freqs(\n        self,\n        *dims,\n        offsets: (\n            tuple[int | float, ...] |\n            Tensor |\n            None\n        ) = None\n    ):\n        Colon = slice(None)\n        all_freqs = []\n\n        # handle offset\n\n        if exists(offsets):\n            if not is_tensor(offsets):\n                offsets = torch.tensor(offsets)\n\n            assert len(offsets) == len(dims)\n\n        # get frequencies for each axis\n\n        for ind, dim in enumerate(dims):\n\n            offset = 0\n            if exists(offsets):\n                offset = offsets[ind]\n\n            if self.freqs_for == 'pixel':\n                pos = torch.linspace(-1, 1, steps = dim, device = self.device)\n            else:\n                pos = torch.arange(dim, device = self.device)\n\n            pos = pos + offset\n\n            freqs = self.forward(pos, seq_len = dim)\n\n            all_axis = [None] * len(dims)\n            all_axis[ind] = Colon\n\n            new_axis_slice = (Ellipsis, *all_axis, Colon)\n            all_freqs.append(freqs[new_axis_slice])\n\n        # concat all freqs\n\n        all_freqs = broadcast_tensors(*all_freqs)\n        return torch.cat(all_freqs, dim = -1)\n\n    @autocast('cuda', enabled = False)\n    def forward(\n        self,\n        t: Tensor,\n        seq_len: int | None = None,\n        offset = 0\n    ):\n        should_cache = (\n            self.cache_if_possible and\n            not self.learned_freq and\n            exists(seq_len) and\n            self.freqs_for != 'pixel' and\n            (offset + seq_len) <= self.cache_max_seq_len\n        )\n\n        if (\n            should_cache and \\\n            exists(self.cached_freqs) and \\\n            (offset + seq_len) <= self.cached_freqs_seq_len\n        ):\n            return self.cached_freqs[offset:(offset + seq_len)].detach()\n\n        freqs = self.freqs\n\n        freqs = einsum('..., f -> ... f', t.type(freqs.dtype), freqs)\n        freqs = repeat(freqs, '... n -> ... (n r)', r = 2)\n\n        if should_cache and offset == 0:\n            self.cached_freqs[:seq_len] = freqs.detach()\n            self.cached_freqs_seq_len = seq_len\n\n        return freqs\n"
  },
  {
    "path": "modules/seedvr/src/__init__.py",
    "content": "\"\"\"\n# Core imports (always available)\nimport os\nimport sys\n\n# Add current directory to path for fallback imports\ncurrent_dir = os.path.dirname(os.path.abspath(__file__))\nparent_dir = os.path.dirname(current_dir)\nif parent_dir not in sys.path:\n    sys.path.insert(0, parent_dir)\n\"\"\"\n"
  },
  {
    "path": "modules/seedvr/src/common/__init__.py",
    "content": ""
  },
  {
    "path": "modules/seedvr/src/common/cache.py",
    "content": "from typing import Callable\n\n\nclass Cache:\n    \"\"\"Caching reusable args for faster inference\"\"\"\n\n    def __init__(self, disable=False, prefix=\"\", cache=None):\n        self.cache = cache if cache is not None else {}\n        self.disable = disable\n        self.prefix = prefix\n\n    def __call__(self, key: str, fn: Callable):\n        if self.disable:\n            return fn()\n\n        key = self.prefix + key\n        try:\n            result = self.cache[key]\n        except KeyError:\n            result = fn()\n            self.cache[key] = result\n        return result\n\n    def namespace(self, namespace: str):\n        return Cache(\n            disable=self.disable,\n            prefix=self.prefix + namespace + \".\",\n            cache=self.cache,\n        )\n\n    def get(self, key: str):\n        key = self.prefix + key\n        return self.cache[key]\n"
  },
  {
    "path": "modules/seedvr/src/common/config.py",
    "content": "import importlib\nfrom typing import Any, Callable, List, Union\nfrom omegaconf import DictConfig, ListConfig, OmegaConf\n\n\ntry:\n    OmegaConf.register_new_resolver(\"eval\", eval)\nexcept Exception as e:\n    if \"already registered\" not in str(e):\n        raise\n\n\ndef load_config(path: str, argv: List[str] = None) -> Union[DictConfig, ListConfig]:\n    \"\"\"\n    Load a configuration. Will resolve inheritance.\n    \"\"\"\n\n    config = OmegaConf.load(path)\n    if argv is not None:\n        config_argv = OmegaConf.from_dotlist(argv)\n        config = OmegaConf.merge(config, config_argv)\n    config = resolve_recursive(config, resolve_inheritance)\n    return config\n\n\ndef resolve_recursive(\n    config: Any,\n    resolver: Callable[[Union[DictConfig, ListConfig]], Union[DictConfig, ListConfig]],\n) -> Any:\n    config = resolver(config)\n    if isinstance(config, DictConfig):\n        for k in config.keys():\n            v = config.get(k)\n            if isinstance(v, (DictConfig, ListConfig)):\n                config[k] = resolve_recursive(v, resolver)\n    if isinstance(config, ListConfig):\n        for i in range(len(config)):\n            v = config.get(i)\n            if isinstance(v, (DictConfig, ListConfig)):\n                config[i] = resolve_recursive(v, resolver)\n    return config\n\n\ndef resolve_inheritance(config: Union[DictConfig, ListConfig]) -> Any:\n    \"\"\"\n    Recursively resolve inheritance if the config contains:\n    __inherit__: path/to/parent.yaml or a ListConfig of such paths.\n    \"\"\"\n    if isinstance(config, DictConfig):\n        inherit = config.pop(\"__inherit__\", None)\n\n        if inherit:\n            inherit_list = inherit if isinstance(inherit, ListConfig) else [inherit]\n\n            parent_config = None\n            for parent_path in inherit_list:\n                assert isinstance(parent_path, str)\n                parent_config = (\n                    load_config(parent_path)\n                    if parent_config is None\n                    else OmegaConf.merge(parent_config, load_config(parent_path))\n                )\n\n            if len(config.keys()) > 0:\n                config = OmegaConf.merge(parent_config, config)\n            else:\n                config = parent_config\n    return config\n\n\ndef import_item(path: Union[str, List[str]], name: str) -> Any:\n    \"\"\"\n    Import a python item with fallback support.\n\n    Args:\n        path: Single path string or list of paths to try (fallback order)\n        name: Class/function name to import\n\n    Returns:\n        Imported object\n\n    Example:\n        import_item(\"path.to.file\", \"MyClass\") -> MyClass\n        import_item([\"path1.to.file\", \"path2.to.file\"], \"MyClass\") -> MyClass (first working path)\n    \"\"\"\n    if isinstance(path, str):\n        # Single path - original behavior\n        return getattr(importlib.import_module(path), name)\n\n    elif isinstance(path, (list, ListConfig)):\n        # Multiple paths - try each until one works\n        last_error = None\n        for single_path in path:\n            try:\n                return getattr(importlib.import_module(single_path), name)\n            except ImportError as e:\n                last_error = e\n                continue\n\n        # If we get here, none of the paths worked\n        raise ImportError(f\"Could not import '{name}' from any of the paths: {path}. Last error: {last_error}\")\n\n    else:\n        raise ValueError(f\"Path must be string or list of strings, got: {type(path)}\")\n\n\ndef create_object(config: DictConfig) -> Any:\n    \"\"\"\n    Create an object from config.\n    The config is expected to contains the following:\n    __object__:\n      path: path.to.module\n      name: MyClass\n      args: as_config | as_params (default to as_config)\n    \"\"\"\n\n    item = import_item(\n        path=config.__object__.path,\n        name=config.__object__.name,\n    )\n    args = config.__object__.get(\"args\", \"as_config\")\n    if args == \"as_config\":\n        return item(config)\n    if args == \"as_params\":\n        config = OmegaConf.to_object(config)\n        config.pop(\"__object__\")\n        return item(**config)\n    raise NotImplementedError(f\"Unknown args type: {args}\")\n"
  },
  {
    "path": "modules/seedvr/src/common/decorators.py",
    "content": "import functools\nimport threading\nfrom typing import Callable\nimport torch\nfrom .distributed import barrier_if_distributed, get_global_rank, get_local_rank\nfrom .logger import get_logger\n\n\nlogger = get_logger(__name__)\n\n\ndef log_on_entry(func: Callable) -> Callable:\n    \"\"\"\n    Functions with this decorator will log the function name at entry.\n    When using multiple decorators, this must be applied innermost to properly capture the name.\n    \"\"\"\n\n    def log_on_entry_wrapper(*args, **kwargs):\n        logger.info(f\"Entering {func.__name__}\")\n        return func(*args, **kwargs)\n\n    return log_on_entry_wrapper\n\n\ndef barrier_on_entry(func: Callable) -> Callable:\n    \"\"\"\n    Functions with this decorator will start executing when all ranks are ready to enter.\n    \"\"\"\n\n    def barrier_on_entry_wrapper(*args, **kwargs):\n        barrier_if_distributed()\n        return func(*args, **kwargs)\n\n    return barrier_on_entry_wrapper\n\n\ndef _conditional_execute_wrapper_factory(execute: bool, func: Callable) -> Callable:\n    \"\"\"\n    Helper function for local_rank_zero_only and global_rank_zero_only.\n    \"\"\"\n\n    def conditional_execute_wrapper(*args, **kwargs):\n        # Only execute if needed.\n        result = func(*args, **kwargs) if execute else None\n        # All GPUs must wait.\n        barrier_if_distributed()\n        # Return results.\n        return result\n\n    return conditional_execute_wrapper\n\n\ndef _asserted_wrapper_factory(condition: bool, func: Callable, err_msg: str = \"\") -> Callable:\n    \"\"\"\n    Helper function for some functions with special constraints,\n    especially functions called by other global_rank_zero_only / local_rank_zero_only ones,\n    in case they are wrongly invoked in other scenarios.\n    \"\"\"\n\n    def asserted_execute_wrapper(*args, **kwargs):\n        assert condition, err_msg\n        result = func(*args, **kwargs)\n        return result\n\n    return asserted_execute_wrapper\n\n\ndef local_rank_zero_only(func: Callable) -> Callable:\n    \"\"\"\n    Functions with this decorator will only execute on local rank zero.\n    \"\"\"\n    return _conditional_execute_wrapper_factory(get_local_rank() == 0, func)\n\n\ndef global_rank_zero_only(func: Callable) -> Callable:\n    \"\"\"\n    Functions with this decorator will only execute on global rank zero.\n    \"\"\"\n    return _conditional_execute_wrapper_factory(get_global_rank() == 0, func)\n\n\ndef assert_only_global_rank_zero(func: Callable) -> Callable:\n    \"\"\"\n    Functions with this decorator are only accessible to processes with global rank zero.\n    \"\"\"\n    return _asserted_wrapper_factory(\n        get_global_rank() == 0, func, err_msg=\"Not accessible to processes with global_rank != 0\"\n    )\n\n\ndef assert_only_local_rank_zero(func: Callable) -> Callable:\n    \"\"\"\n    Functions with this decorator are only accessible to processes with local rank zero.\n    \"\"\"\n    return _asserted_wrapper_factory(\n        get_local_rank() == 0, func, err_msg=\"Not accessible to processes with local_rank != 0\"\n    )\n\n\ndef new_thread(func: Callable) -> Callable:\n    \"\"\"\n    Functions with this decorator will run in a new thread.\n    The function will return the thread, which can be joined to wait for completion.\n    \"\"\"\n\n    def new_thread_wrapper(*args, **kwargs):\n        thread = threading.Thread(target=func, args=args, kwargs=kwargs)\n        thread.start()\n        return thread\n\n    return new_thread_wrapper\n\n\ndef log_runtime(func: Callable) -> Callable:\n    \"\"\"\n    Functions with this decorator will logging the runtime.\n    \"\"\"\n\n    @functools.wraps(func)\n    def wrapped(*args, **kwargs):\n        torch.distributed.barrier()\n        result = func(*args, **kwargs)\n        torch.distributed.barrier()\n        return result\n\n    return wrapped\n"
  },
  {
    "path": "modules/seedvr/src/common/diffusion/__init__.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\n\"\"\"\nDiffusion package.\n\"\"\"\n\nfrom .config import (\n    create_sampler_from_config,\n    create_sampling_timesteps_from_config,\n    create_schedule_from_config,\n)\nfrom .samplers.base import Sampler\nfrom .samplers.euler import EulerSampler\nfrom .schedules.base import Schedule\nfrom .schedules.lerp import LinearInterpolationSchedule\nfrom .timesteps.base import SamplingTimesteps, Timesteps\nfrom .timesteps.sampling.trailing import UniformTrailingSamplingTimesteps\nfrom .types import PredictionType, SamplingDirection\nfrom .utils import classifier_free_guidance, classifier_free_guidance_dispatcher, expand_dims\n\n__all__ = [\n    # Configs\n    \"create_sampler_from_config\",\n    \"create_sampling_timesteps_from_config\",\n    \"create_schedule_from_config\",\n    # Schedules\n    \"Schedule\",\n    \"DiscreteVariancePreservingSchedule\",\n    \"LinearInterpolationSchedule\",\n    # Samplers\n    \"Sampler\",\n    \"EulerSampler\",\n    # Timesteps\n    \"Timesteps\",\n    \"SamplingTimesteps\",\n    # Types\n    \"PredictionType\",\n    \"SamplingDirection\",\n    \"UniformTrailingSamplingTimesteps\",\n    # Utils\n    \"classifier_free_guidance\",\n    \"classifier_free_guidance_dispatcher\",\n    \"expand_dims\",\n]\n"
  },
  {
    "path": "modules/seedvr/src/common/diffusion/config.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\n\"\"\"\nUtility functions for creating schedules and samplers from config.\n\"\"\"\n\nimport torch\nfrom omegaconf import DictConfig\n\nfrom .samplers.base import Sampler\nfrom .samplers.euler import EulerSampler\nfrom .schedules.base import Schedule\nfrom .schedules.lerp import LinearInterpolationSchedule\nfrom .timesteps.base import SamplingTimesteps\nfrom .timesteps.sampling.trailing import UniformTrailingSamplingTimesteps\n\n\ndef create_schedule_from_config(\n    config: DictConfig,\n) -> Schedule:\n    \"\"\"\n    Create a schedule from configuration.\n    \"\"\"\n    if config.type == \"lerp\":\n        return LinearInterpolationSchedule(T=config.get(\"T\", 1.0))\n\n    raise NotImplementedError\n\n\ndef create_sampler_from_config(\n    config: DictConfig,\n    schedule: Schedule,\n    timesteps: SamplingTimesteps,\n) -> Sampler:\n    \"\"\"\n    Create a sampler from configuration.\n    \"\"\"\n    if config.type == \"euler\":\n        return EulerSampler(\n            schedule=schedule,\n            timesteps=timesteps,\n            prediction_type=config.prediction_type,\n        )\n    raise NotImplementedError\n\n\ndef create_sampling_timesteps_from_config(\n    config: DictConfig,\n    schedule: Schedule,\n    device: torch.device,\n) -> SamplingTimesteps:\n    if config.type == \"uniform_trailing\":\n        return UniformTrailingSamplingTimesteps(\n            T=schedule.T,\n            steps=config.steps,\n            shift=config.get(\"shift\", 1.0),\n            device=device,\n        )\n    raise NotImplementedError\n"
  },
  {
    "path": "modules/seedvr/src/common/diffusion/samplers/base.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\n\"\"\"\nSampler base class.\n\"\"\"\n\nfrom abc import ABC, abstractmethod\nfrom dataclasses import dataclass\nfrom typing import Callable\nimport torch\nfrom tqdm import tqdm\n\nfrom ..schedules.base import Schedule\nfrom ..timesteps.base import SamplingTimesteps\nfrom ..types import PredictionType, SamplingDirection\nfrom ..utils import assert_schedule_timesteps_compatible\n\n\n@dataclass\nclass SamplerModelArgs:\n    x_t: torch.Tensor\n    t: torch.Tensor\n    i: int\n\n\nclass Sampler(ABC):\n    \"\"\"\n    Samplers are ODE/SDE solvers.\n    \"\"\"\n\n    def __init__(\n        self,\n        schedule: Schedule,\n        timesteps: SamplingTimesteps,\n        prediction_type: PredictionType,\n        return_endpoint: bool = True,\n    ):\n        assert_schedule_timesteps_compatible(\n            schedule=schedule,\n            timesteps=timesteps,\n        )\n        self.schedule = schedule\n        self.timesteps = timesteps\n        self.prediction_type = prediction_type\n        self.return_endpoint = return_endpoint\n\n    @abstractmethod\n    def sample(\n        self,\n        x: torch.Tensor,\n        f: Callable[[SamplerModelArgs], torch.Tensor],\n    ) -> torch.Tensor:\n        \"\"\"\n        Generate a new sample given the the intial sample x and score function f.\n        \"\"\"\n\n    def get_next_timestep(\n        self,\n        t: torch.Tensor,\n    ) -> torch.Tensor:\n        \"\"\"\n        Get the next sample timestep.\n        Support multiple different timesteps t in a batch.\n        If no more steps, return out of bound value -1 or T+1.\n        \"\"\"\n        T = self.timesteps.T\n        steps = len(self.timesteps)\n        curr_idx = self.timesteps.index(t)\n        next_idx = curr_idx + 1\n        bound = -1 if self.timesteps.direction == SamplingDirection.backward else T + 1\n\n        s = self.timesteps[next_idx.clamp_max(steps - 1)]\n        s = s.where(next_idx < steps, bound)\n        return s\n\n    def get_endpoint(\n        self,\n        pred: torch.Tensor,\n        x_t: torch.Tensor,\n        t: torch.Tensor,\n    ) -> torch.Tensor:\n        \"\"\"\n        Get to the endpoint of the probability flow.\n        \"\"\"\n        x_0, x_T = self.schedule.convert_from_pred(pred, self.prediction_type, x_t, t)\n        return x_0 if self.timesteps.direction == SamplingDirection.backward else x_T\n\n    def get_progress_bar(self):\n        \"\"\"\n        Get progress bar for sampling.\n        \"\"\"\n        return tqdm(\n            iterable=range(len(self.timesteps) - (0 if self.return_endpoint else 1)),\n            dynamic_ncols=True,\n            desc=self.__class__.__name__,\n        )\n"
  },
  {
    "path": "modules/seedvr/src/common/diffusion/samplers/euler.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\n\n\"\"\"\nEuler ODE solver.\n\"\"\"\n\nfrom typing import Callable\nimport torch\nfrom einops import rearrange\nfrom torch.nn import functional as F\n\n#from ....models.dit_v2 import na\n\nfrom ..types import PredictionType\nfrom ..utils import expand_dims\nfrom .base import Sampler, SamplerModelArgs\n\n\nclass EulerSampler(Sampler):\n    \"\"\"\n    The Euler method is the simplest ODE solver.\n    <https://en.wikipedia.org/wiki/Euler_method>\n    \"\"\"\n\n    def sample(\n        self,\n        x: torch.Tensor,\n        f: Callable[[SamplerModelArgs], torch.Tensor],\n    ) -> torch.Tensor:\n        timesteps = self.timesteps.timesteps\n        #progress = self.get_progress_bar()\n        i = 0\n\n        # Optimisations VRAM\n        original_dtype = x.dtype\n        device = x.device\n\n        for t, s in zip(timesteps[:-1], timesteps[1:]):\n            # Appel du modèle avec monitoring\n            pred = f(SamplerModelArgs(x, t, i))\n\n            # Étape suivante\n            x = self.step_to(pred, x, t, s)\n\n            # Nettoyer les tenseurs temporaires\n            del pred\n\n            i += 1\n            #progress.update()\n\n        if self.return_endpoint:\n            t = timesteps[-1]\n            pred = f(SamplerModelArgs(x, t, i))\n            x = self.get_endpoint(pred, x, t)\n            del pred\n            #progress.update()\n\n        # Restaurer le dtype original si nécessaire\n        if original_dtype != torch.float16:\n            x = x.to(original_dtype)\n\n        return x\n\n    def step(\n        self,\n        pred: torch.Tensor,\n        x_t: torch.Tensor,\n        t: torch.Tensor,\n    ) -> torch.Tensor:\n        \"\"\"\n        Step to the next timestep.\n        \"\"\"\n        return self.step_to(pred, x_t, t, self.get_next_timestep(t))\n\n    def step_to(\n        self,\n        pred: torch.Tensor,\n        x_t: torch.Tensor,\n        t: torch.Tensor,\n        s: torch.Tensor,\n    ) -> torch.Tensor:\n        \"\"\"\n        Steps from x_t at timestep t to x_s at timestep s. Returns x_s.\n        \"\"\"\n        t = expand_dims(t, x_t.ndim)\n        s = expand_dims(s, x_t.ndim)\n        T = self.schedule.T\n        # Step from x_t to x_s.\n        pred_x_0, pred_x_T = self.schedule.convert_from_pred(pred, self.prediction_type, x_t, t)\n        pred_x_s = self.schedule.forward(pred_x_0, pred_x_T, s.clamp(0, T))\n        # Clamp x_s to x_0 and x_T if s is out of bound.\n        pred_x_s = pred_x_s.where(s >= 0, pred_x_0)\n        pred_x_s = pred_x_s.where(s <= T, pred_x_T)\n        return pred_x_s\n"
  },
  {
    "path": "modules/seedvr/src/common/diffusion/schedules/base.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\n\"\"\"\nSchedule base class.\n\"\"\"\n\nfrom abc import ABC, abstractmethod, abstractproperty\nfrom typing import Tuple, Union\nimport torch\n\nfrom ..types import PredictionType\nfrom ..utils import expand_dims\n\n\nclass Schedule(ABC):\n    \"\"\"\n    Diffusion schedules are uniquely defined by T, A, B:\n\n        x_t = A(t) * x_0 + B(t) * x_T, where t in [0, T]\n\n    Schedules can be continuous or discrete.\n    \"\"\"\n\n    @abstractproperty\n    def T(self) -> Union[int, float]:\n        \"\"\"\n        Maximum timestep inclusive.\n        Schedule is continuous if float, discrete if int.\n        \"\"\"\n\n    @abstractmethod\n    def A(self, t: torch.Tensor) -> torch.Tensor:\n        \"\"\"\n        Interpolation coefficient A.\n        Returns tensor with the same shape as t.\n        \"\"\"\n\n    @abstractmethod\n    def B(self, t: torch.Tensor) -> torch.Tensor:\n        \"\"\"\n        Interpolation coefficient B.\n        Returns tensor with the same shape as t.\n        \"\"\"\n\n    # ----------------------------------------------------\n\n    def snr(self, t: torch.Tensor) -> torch.Tensor:\n        \"\"\"\n        Signal to noise ratio.\n        Returns tensor with the same shape as t.\n        \"\"\"\n        return (self.A(t) ** 2) / (self.B(t) ** 2)\n\n    def isnr(self, snr: torch.Tensor) -> torch.Tensor:\n        \"\"\"\n        Inverse signal to noise ratio.\n        Returns tensor with the same shape as snr.\n        Subclass may implement.\n        \"\"\"\n        raise NotImplementedError\n\n    # ----------------------------------------------------\n\n    def is_continuous(self) -> bool:\n        \"\"\"\n        Whether the schedule is continuous.\n        \"\"\"\n        return isinstance(self.T, float)\n\n    def forward(self, x_0: torch.Tensor, x_T: torch.Tensor, t: torch.Tensor) -> torch.Tensor:\n        \"\"\"\n        Diffusion forward function.\n        \"\"\"\n        t = expand_dims(t, x_0.ndim)\n        return self.A(t) * x_0 + self.B(t) * x_T\n\n    def convert_from_pred(\n        self, pred: torch.Tensor, pred_type: PredictionType, x_t: torch.Tensor, t: torch.Tensor\n    ) -> Tuple[torch.Tensor, torch.Tensor]:\n        \"\"\"\n        Convert from prediction. Return predicted x_0 and x_T.\n        \"\"\"\n        t = expand_dims(t, x_t.ndim)\n        A_t = self.A(t)\n        B_t = self.B(t)\n\n        if pred_type == PredictionType.x_T:\n            pred_x_T = pred\n            pred_x_0 = (x_t - B_t * pred_x_T) / A_t\n        elif pred_type == PredictionType.x_0:\n            pred_x_0 = pred\n            pred_x_T = (x_t - A_t * pred_x_0) / B_t\n        elif pred_type == PredictionType.v_cos:\n            pred_x_0 = A_t * x_t - B_t * pred\n            pred_x_T = A_t * pred + B_t * x_t\n        elif pred_type == PredictionType.v_lerp:\n            pred_x_0 = (x_t - B_t * pred) / (A_t + B_t)\n            pred_x_T = (x_t + A_t * pred) / (A_t + B_t)\n        else:\n            raise NotImplementedError\n\n        return pred_x_0, pred_x_T\n\n    def convert_to_pred(\n        self, x_0: torch.Tensor, x_T: torch.Tensor, t: torch.Tensor, pred_type: PredictionType\n    ) -> torch.FloatTensor:\n        \"\"\"\n        Convert to prediction target given x_0 and x_T.\n        \"\"\"\n        if pred_type == PredictionType.x_T:\n            return x_T\n        if pred_type == PredictionType.x_0:\n            return x_0\n        if pred_type == PredictionType.v_cos:\n            t = expand_dims(t, x_0.ndim)\n            return self.A(t) * x_T - self.B(t) * x_0\n        if pred_type == PredictionType.v_lerp:\n            return x_T - x_0\n        raise NotImplementedError\n"
  },
  {
    "path": "modules/seedvr/src/common/diffusion/schedules/lerp.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\n\"\"\"\nLinear interpolation schedule (lerp).\n\"\"\"\n\nfrom typing import Union\nimport torch\n\nfrom .base import Schedule\n\n\nclass LinearInterpolationSchedule(Schedule):\n    \"\"\"\n    Linear interpolation schedule (lerp) is proposed by flow matching and rectified flow.\n    It leads to straighter probability flow theoretically. It is also used by Stable Diffusion 3.\n    <https://arxiv.org/abs/2209.03003>\n    <https://arxiv.org/abs/2210.02747>\n\n        x_t = (1 - t) * x_0 + t * x_T\n\n    Can be either continuous or discrete.\n    \"\"\"\n\n    def __init__(self, T: Union[int, float] = 1.0):\n        self._T = T\n\n    @property\n    def T(self) -> Union[int, float]:\n        return self._T\n\n    def A(self, t: torch.Tensor) -> torch.Tensor:\n        return 1 - (t / self.T)\n\n    def B(self, t: torch.Tensor) -> torch.Tensor:\n        return t / self.T\n\n    # ----------------------------------------------------\n\n    def isnr(self, snr: torch.Tensor) -> torch.Tensor:\n        t = self.T / (1 + snr**0.5)\n        t = t if self.is_continuous() else t.round().int()\n        return t\n"
  },
  {
    "path": "modules/seedvr/src/common/diffusion/timesteps/base.py",
    "content": "from abc import ABC, abstractmethod\nfrom typing import Sequence, Union\nimport torch\n\nfrom ..types import SamplingDirection\n\n\nclass Timesteps(ABC):\n    \"\"\"\n    Timesteps base class.\n    \"\"\"\n\n    def __init__(self, T: Union[int, float]):\n        assert T > 0\n        self._T = T\n\n    @property\n    def T(self) -> Union[int, float]:\n        \"\"\"\n        Maximum timestep inclusive.\n        int if discrete, float if continuous.\n        \"\"\"\n        return self._T\n\n    def is_continuous(self) -> bool:\n        \"\"\"\n        Whether the schedule is continuous.\n        \"\"\"\n        return isinstance(self.T, float)\n\n\nclass SamplingTimesteps(Timesteps):\n    \"\"\"\n    Sampling timesteps.\n    It defines the discretization of sampling steps.\n    \"\"\"\n\n    def __init__(\n        self,\n        T: Union[int, float],\n        timesteps: torch.Tensor,\n        direction: SamplingDirection,\n    ):\n        assert timesteps.ndim == 1\n        super().__init__(T)\n        self.timesteps = timesteps\n        self.direction = direction\n\n    def __len__(self) -> int:\n        \"\"\"\n        Number of sampling steps.\n        \"\"\"\n        return len(self.timesteps)\n\n    def __getitem__(self, idx: Union[int, torch.IntTensor]) -> torch.Tensor:\n        \"\"\"\n        The timestep at the sampling step.\n        Returns a scalar tensor if idx is int,\n        or tensor of the same size if idx is a tensor.\n        \"\"\"\n        return self.timesteps[idx]\n\n    def index(self, t: torch.Tensor) -> torch.Tensor:\n        \"\"\"\n        Find index by t.\n        Return index of the same shape as t.\n        Index is -1 if t not found in timesteps.\n        \"\"\"\n        i, j = t.reshape(-1, 1).eq(self.timesteps).nonzero(as_tuple=True)\n        idx = torch.full_like(t, fill_value=-1, dtype=torch.int)\n        idx.view(-1)[i] = j.int()\n        return idx\n"
  },
  {
    "path": "modules/seedvr/src/common/diffusion/timesteps/sampling/trailing.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nimport torch\n\nfrom ...types import SamplingDirection\nfrom ..base import SamplingTimesteps\n\n\nclass UniformTrailingSamplingTimesteps(SamplingTimesteps):\n    \"\"\"\n    Uniform trailing sampling timesteps.\n    Defined in (https://arxiv.org/abs/2305.08891)\n\n    Shift is proposed in SD3 for RF schedule.\n    Defined in (https://arxiv.org/pdf/2403.03206) eq.23\n    \"\"\"\n\n    def __init__(\n        self,\n        T: int,\n        steps: int,\n        shift: float = 1.0,\n        device: torch.device = \"cpu\",\n    ):\n        # Create trailing timesteps.\n        timesteps = torch.arange(1.0, 0.0, -1.0 / steps, device=device)\n\n        # Shift timesteps.\n        timesteps = shift * timesteps / (1 + (shift - 1) * timesteps)\n\n        # Scale to T range.\n        if isinstance(T, float):\n            timesteps = timesteps * T\n        else:\n            timesteps = timesteps.mul(T + 1).sub(1).round().int()\n\n        super().__init__(T=T, timesteps=timesteps, direction=SamplingDirection.backward)\n"
  },
  {
    "path": "modules/seedvr/src/common/diffusion/types.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\n\"\"\"\nType definitions.\n\"\"\"\n\nfrom enum import Enum\n\n\nclass PredictionType(str, Enum):\n    \"\"\"\n    x_0:\n        Predict data sample.\n    x_T:\n        Predict noise sample.\n        Proposed by DDPM (https://arxiv.org/abs/2006.11239)\n        Proved problematic by zsnr paper (https://arxiv.org/abs/2305.08891)\n    v_cos:\n        Predict velocity dx/dt based on the cosine schedule (A_t * x_T - B_t * x_0).\n        Proposed by progressive distillation (https://arxiv.org/abs/2202.00512)\n    v_lerp:\n        Predict velocity dx/dt based on the lerp schedule (x_T - x_0).\n        Proposed by rectified flow (https://arxiv.org/abs/2209.03003)\n    \"\"\"\n\n    x_0 = \"x_0\"\n    x_T = \"x_T\"\n    v_cos = \"v_cos\"\n    v_lerp = \"v_lerp\"\n\n\nclass SamplingDirection(str, Enum):\n    \"\"\"\n    backward: Sample from x_T to x_0 for data generation.\n    forward:  Sample from x_0 to x_T for noise inversion.\n    \"\"\"\n\n    backward = \"backward\"\n    forward = \"forward\"\n\n    @staticmethod\n    def reverse(direction):\n        if direction == SamplingDirection.backward:\n            return SamplingDirection.forward\n        if direction == SamplingDirection.forward:\n            return SamplingDirection.backward\n        raise NotImplementedError\n"
  },
  {
    "path": "modules/seedvr/src/common/diffusion/utils.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\n\"\"\"\nUtility functions.\n\"\"\"\n\nfrom typing import Callable\nimport torch\n\n\ndef expand_dims(tensor: torch.Tensor, ndim: int):\n    \"\"\"\n    Expand tensor to target ndim. New dims are added to the right.\n    For example, if the tensor shape was (8,), target ndim is 4, return (8, 1, 1, 1).\n    \"\"\"\n    shape = tensor.shape + (1,) * (ndim - tensor.ndim)\n    return tensor.reshape(shape)\n\n\ndef assert_schedule_timesteps_compatible(schedule, timesteps):\n    \"\"\"\n    Check if schedule and timesteps are compatible.\n    \"\"\"\n    if schedule.T != timesteps.T:\n        raise ValueError(\"Schedule and timesteps must have the same T.\")\n    if schedule.is_continuous() != timesteps.is_continuous():\n        raise ValueError(\"Schedule and timesteps must have the same continuity.\")\n\n\ndef classifier_free_guidance(\n    pos: torch.Tensor,\n    neg: torch.Tensor,\n    scale: float,\n    rescale: float = 0.0,\n):\n    \"\"\"\n    Apply classifier-free guidance.\n    \"\"\"\n    # Classifier-free guidance (https://arxiv.org/abs/2207.12598)\n    cfg = neg + scale * (pos - neg)\n\n    # Classifier-free guidance rescale (https://arxiv.org/pdf/2305.08891.pdf)\n    if rescale != 0.0:\n        pos_std = pos.std(dim=list(range(1, pos.ndim)), keepdim=True)\n        cfg_std = cfg.std(dim=list(range(1, cfg.ndim)), keepdim=True)\n        factor = pos_std / cfg_std\n        factor = rescale * factor + (1 - rescale)\n        cfg *= factor\n\n    return cfg\n\n\ndef classifier_free_guidance_dispatcher(\n    pos: Callable,\n    neg: Callable,\n    scale: float,\n    rescale: float = 0.0,\n):\n    \"\"\"\n    Optionally execute models depending on classifer-free guidance scale.\n    \"\"\"\n    # If scale is 1, no need to execute neg model.\n    if scale == 1.0:\n        return pos()\n\n    # Otherwise, execute both pos nad neg models and apply cfg.\n    return classifier_free_guidance(\n        pos=pos(),\n        neg=neg(),\n        scale=scale,\n        rescale=rescale,\n    )\n"
  },
  {
    "path": "modules/seedvr/src/common/distributed/__init__.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\n\"\"\"\nDistributed package.\n\"\"\"\n\nfrom .basic import (\n    barrier_if_distributed,\n    convert_to_ddp,\n    get_device,\n    get_global_rank,\n    get_local_rank,\n    get_world_size,\n)\n\n__all__ = [\n    \"barrier_if_distributed\",\n    \"convert_to_ddp\",\n    \"get_device\",\n    \"get_global_rank\",\n    \"get_local_rank\",\n    \"get_world_size\",\n]\n"
  },
  {
    "path": "modules/seedvr/src/common/distributed/advanced.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\n\"\"\"\nAdvanced distributed functions for sequence parallel.\n\"\"\"\n\nfrom typing import Optional, List\nimport torch\nimport torch.distributed as dist\nfrom torch.distributed.device_mesh import DeviceMesh, init_device_mesh\nfrom torch.distributed.fsdp import ShardingStrategy\n\nfrom .basic import get_global_rank, get_world_size\n\n\n_DATA_PARALLEL_GROUP = None\n_SEQUENCE_PARALLEL_GROUP = None\n_SEQUENCE_PARALLEL_CPU_GROUP = None\n_MODEL_SHARD_CPU_INTER_GROUP = None\n_MODEL_SHARD_CPU_INTRA_GROUP = None\n_MODEL_SHARD_INTER_GROUP = None\n_MODEL_SHARD_INTRA_GROUP = None\n_SEQUENCE_PARALLEL_GLOBAL_RANKS = None\n\n\ndef get_data_parallel_group() -> Optional[dist.ProcessGroup]:\n    \"\"\"\n    Get data parallel process group.\n    \"\"\"\n    return _DATA_PARALLEL_GROUP\n\n\ndef get_sequence_parallel_group() -> Optional[dist.ProcessGroup]:\n    \"\"\"\n    Get sequence parallel process group.\n    \"\"\"\n    return _SEQUENCE_PARALLEL_GROUP\n\n\ndef get_sequence_parallel_cpu_group() -> Optional[dist.ProcessGroup]:\n    \"\"\"\n    Get sequence parallel CPU process group.\n    \"\"\"\n    return _SEQUENCE_PARALLEL_CPU_GROUP\n\n\ndef get_data_parallel_rank() -> int:\n    \"\"\"\n    Get data parallel rank.\n    \"\"\"\n    group = get_data_parallel_group()\n    return dist.get_rank(group) if group else get_global_rank()\n\n\ndef get_data_parallel_world_size() -> int:\n    \"\"\"\n    Get data parallel world size.\n    \"\"\"\n    group = get_data_parallel_group()\n    return dist.get_world_size(group) if group else get_world_size()\n\n\ndef get_sequence_parallel_rank() -> int:\n    \"\"\"\n    Get sequence parallel rank.\n    \"\"\"\n    group = get_sequence_parallel_group()\n    return dist.get_rank(group) if group else 0\n\n\ndef get_sequence_parallel_world_size() -> int:\n    \"\"\"\n    Get sequence parallel world size.\n    \"\"\"\n    group = get_sequence_parallel_group()\n    return dist.get_world_size(group) if group else 1\n\n\ndef get_model_shard_cpu_intra_group() -> Optional[dist.ProcessGroup]:\n    \"\"\"\n    Get the CPU intra process group of model sharding.\n    \"\"\"\n    return _MODEL_SHARD_CPU_INTRA_GROUP\n\n\ndef get_model_shard_cpu_inter_group() -> Optional[dist.ProcessGroup]:\n    \"\"\"\n    Get the CPU inter process group of model sharding.\n    \"\"\"\n    return _MODEL_SHARD_CPU_INTER_GROUP\n\n\ndef get_model_shard_intra_group() -> Optional[dist.ProcessGroup]:\n    \"\"\"\n    Get the GPU intra process group of model sharding.\n    \"\"\"\n    return _MODEL_SHARD_INTRA_GROUP\n\n\ndef get_model_shard_inter_group() -> Optional[dist.ProcessGroup]:\n    \"\"\"\n    Get the GPU inter process group of model sharding.\n    \"\"\"\n    return _MODEL_SHARD_INTER_GROUP\n\n\ndef init_sequence_parallel(sequence_parallel_size: int):\n    \"\"\"\n    Initialize sequence parallel.\n    \"\"\"\n    global _DATA_PARALLEL_GROUP\n    global _SEQUENCE_PARALLEL_GROUP\n    global _SEQUENCE_PARALLEL_CPU_GROUP\n    global _SEQUENCE_PARALLEL_GLOBAL_RANKS\n    assert dist.is_initialized()\n    world_size = dist.get_world_size()\n    rank = dist.get_rank()\n    data_parallel_size = world_size // sequence_parallel_size\n    for i in range(data_parallel_size):\n        start_rank = i * sequence_parallel_size\n        end_rank = (i + 1) * sequence_parallel_size\n        ranks = range(start_rank, end_rank)\n        group = dist.new_group(ranks)\n        cpu_group = dist.new_group(ranks, backend=\"gloo\")\n        if rank in ranks:\n            _SEQUENCE_PARALLEL_GROUP = group\n            _SEQUENCE_PARALLEL_CPU_GROUP = cpu_group\n            _SEQUENCE_PARALLEL_GLOBAL_RANKS = list(ranks)\n\n\ndef init_model_shard_group(\n    *,\n    sharding_strategy: ShardingStrategy,\n    device_mesh: Optional[DeviceMesh] = None,\n):\n    \"\"\"\n    Initialize process group of model sharding.\n    \"\"\"\n    global _MODEL_SHARD_INTER_GROUP\n    global _MODEL_SHARD_INTRA_GROUP\n    global _MODEL_SHARD_CPU_INTER_GROUP\n    global _MODEL_SHARD_CPU_INTRA_GROUP\n    assert dist.is_initialized()\n    world_size = dist.get_world_size()\n    if device_mesh is not None:\n        num_shards_per_group = device_mesh.shape[1]\n    elif sharding_strategy == ShardingStrategy.NO_SHARD:\n        num_shards_per_group = 1\n    elif sharding_strategy in [\n        ShardingStrategy.HYBRID_SHARD,\n        ShardingStrategy._HYBRID_SHARD_ZERO2,\n    ]:\n        num_shards_per_group = torch.cuda.device_count()\n    else:\n        num_shards_per_group = world_size\n    num_groups = world_size // num_shards_per_group\n    device_mesh = (num_groups, num_shards_per_group)\n\n    gpu_mesh_2d = init_device_mesh(\"cuda\", device_mesh, mesh_dim_names=(\"inter\", \"intra\"))\n    cpu_mesh_2d = init_device_mesh(\"cpu\", device_mesh, mesh_dim_names=(\"inter\", \"intra\"))\n\n    _MODEL_SHARD_INTER_GROUP = gpu_mesh_2d.get_group(\"inter\")\n    _MODEL_SHARD_INTRA_GROUP = gpu_mesh_2d.get_group(\"intra\")\n    _MODEL_SHARD_CPU_INTER_GROUP = cpu_mesh_2d.get_group(\"inter\")\n    _MODEL_SHARD_CPU_INTRA_GROUP = cpu_mesh_2d.get_group(\"intra\")\n\ndef get_sequence_parallel_global_ranks() -> List[int]:\n    \"\"\"\n    Get all global ranks of the sequence parallel process group\n    that the caller rank belongs to.\n    \"\"\"\n    if _SEQUENCE_PARALLEL_GLOBAL_RANKS is None:\n        return [dist.get_rank()]\n    return _SEQUENCE_PARALLEL_GLOBAL_RANKS\n\n\ndef get_next_sequence_parallel_rank() -> int:\n    \"\"\"\n    Get the next global rank of the sequence parallel process group\n    that the caller rank belongs to.\n    \"\"\"\n    sp_global_ranks = get_sequence_parallel_global_ranks()\n    sp_rank = get_sequence_parallel_rank()\n    sp_size = get_sequence_parallel_world_size()\n    return sp_global_ranks[(sp_rank + 1) % sp_size]\n\n\ndef get_prev_sequence_parallel_rank() -> int:\n    \"\"\"\n    Get the previous global rank of the sequence parallel process group\n    that the caller rank belongs to.\n    \"\"\"\n    sp_global_ranks = get_sequence_parallel_global_ranks()\n    sp_rank = get_sequence_parallel_rank()\n    sp_size = get_sequence_parallel_world_size()\n    return sp_global_ranks[(sp_rank + sp_size - 1) % sp_size]\n"
  },
  {
    "path": "modules/seedvr/src/common/distributed/basic.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\n\"\"\"\nDistributed basic functions.\n\"\"\"\n\nimport os\nimport torch\n\n\ndef get_global_rank() -> int:\n    \"\"\"\n    Get the global rank, the global index of the GPU.\n    \"\"\"\n    return int(os.environ.get(\"RANK\", \"0\"))\n\n\ndef get_local_rank() -> int:\n    \"\"\"\n    Get the local rank, the local index of the GPU.\n    \"\"\"\n    return int(os.environ.get(\"LOCAL_RANK\", \"0\"))\n\n\ndef get_world_size() -> int:\n    \"\"\"\n    Get the world size, the total amount of GPUs.\n    \"\"\"\n    return int(os.environ.get(\"WORLD_SIZE\", \"1\"))\n\n\ndef get_device() -> torch.device:\n    \"\"\"\n    Get current rank device.\n    \"\"\"\n    return torch.device(\"cuda\", get_local_rank())\n\n\ndef barrier_if_distributed(*args, **kwargs):\n    \"\"\"\n    Synchronizes all processes if under distributed context.\n    \"\"\"\n    import torch.distributed as dist\n    if dist.is_initialized():\n        return dist.barrier(*args, **kwargs)\n\n\ndef convert_to_ddp(module: torch.nn.Module, **kwargs):\n    from torch.nn.parallel import DistributedDataParallel\n    return DistributedDataParallel(\n        module=module,\n        device_ids=[get_local_rank()],\n        output_device=get_local_rank(),\n        **kwargs,\n    )\n"
  },
  {
    "path": "modules/seedvr/src/common/distributed/meta_init_utils.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nimport torch\nfrom torch import nn\nfrom ....rotary_embedding import RotaryEmbedding\n\n__all__ = [\"meta_non_persistent_buffer_init_fn\"]\n\n\ndef meta_non_persistent_buffer_init_fn(module: nn.Module) -> nn.Module:\n    \"\"\"\n    Used for materializing `non-persistent tensor buffers` while model resuming.\n\n    Since non-persistent tensor buffers are not saved in state_dict,\n    when initializing model with meta device, user should materialize those buffers manually.\n\n    Currently, only `rope.dummy` is this special case.\n    \"\"\"\n    with torch.no_grad():\n        for submodule in module.modules():\n            if not isinstance(submodule, RotaryEmbedding):\n                continue\n            for buffer_name, buffer in submodule.named_buffers(recurse=False):\n                if buffer.is_meta and \"dummy\" in buffer_name:\n                    materialized_buffer = torch.zeros_like(buffer, device=\"cpu\")\n                    setattr(submodule, buffer_name, materialized_buffer)\n    assert not any(b.is_meta for n, b in module.named_buffers())\n    return module\n"
  },
  {
    "path": "modules/seedvr/src/common/distributed/ops.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\n\"\"\"\nDistributed ops for supporting sequence parallel.\n\"\"\"\n\nfrom collections import defaultdict\nfrom typing import Any, Callable, Dict, List, Optional, Tuple, Union\nimport torch\nimport torch.distributed as dist\nfrom torch import Tensor\n\nfrom ..cache import Cache\nfrom .advanced import (\n    get_sequence_parallel_group,\n    get_sequence_parallel_rank,\n)\n\nfrom .basic import get_device\n\n_SEQ_DATA_BUF = defaultdict(lambda: [None, None, None])\n_SEQ_DATA_META_SHAPES = defaultdict()\n_SEQ_DATA_META_DTYPES = defaultdict()\n_SEQ_DATA_ASYNC_COMMS = defaultdict(list)\n_SYNC_BUFFER = defaultdict(dict)\n\n\ndef single_all_to_all(\n    local_input: Tensor,\n    scatter_dim: int,\n    gather_dim: int,\n    group: dist.ProcessGroup,\n    async_op: bool = False,\n):\n    \"\"\"\n    A function to do all-to-all on a tensor\n    \"\"\"\n    seq_world_size = 1\n    prev_scatter_dim = scatter_dim\n    if scatter_dim != 0:\n        local_input = local_input.transpose(0, scatter_dim)\n        if gather_dim == 0:\n            gather_dim = scatter_dim\n        scatter_dim = 0\n\n    inp_shape = list(local_input.shape)\n    inp_shape[scatter_dim] = inp_shape[scatter_dim] // seq_world_size\n    input_t = local_input.reshape(\n        [seq_world_size, inp_shape[scatter_dim]] + inp_shape[scatter_dim + 1 :]\n    ).contiguous()\n    output = torch.empty_like(input_t)\n    comm = dist.all_to_all_single(output, input_t, group=group, async_op=async_op)\n    if async_op:\n        # let user's code transpose & reshape\n        return output, comm, prev_scatter_dim\n\n    # first dim is seq_world_size, so we can split it directly\n    output = torch.cat(output.split(1), dim=gather_dim + 1).squeeze(0)\n    if prev_scatter_dim:\n        output = output.transpose(0, prev_scatter_dim).contiguous()\n    return output\n\n\ndef _all_to_all(\n    local_input: Tensor,\n    scatter_dim: int,\n    gather_dim: int,\n    group: dist.ProcessGroup,\n):\n    seq_world_size = 1\n    input_list = [\n        t.contiguous() for t in torch.tensor_split(local_input, seq_world_size, scatter_dim)\n    ]\n    output_list = [torch.empty_like(input_list[0]) for _ in range(seq_world_size)]\n    dist.all_to_all(output_list, input_list, group=group)\n    return torch.cat(output_list, dim=gather_dim).contiguous()\n\n\nclass SeqAllToAll(torch.autograd.Function):\n    @staticmethod\n    def forward(\n        ctx: Any,\n        group: dist.ProcessGroup,\n        local_input: Tensor,\n        scatter_dim: int,\n        gather_dim: int,\n        async_op: bool,\n    ) -> Tensor:\n        ctx.group = group\n        ctx.scatter_dim = scatter_dim\n        ctx.gather_dim = gather_dim\n        ctx.async_op = async_op\n        if async_op:\n            output, comm, prev_scatter_dim = single_all_to_all(\n                local_input, scatter_dim, gather_dim, group, async_op=async_op\n            )\n            ctx.prev_scatter_dim = prev_scatter_dim\n            return output, comm\n\n        return _all_to_all(local_input, scatter_dim, gather_dim, group)\n\n    @staticmethod\n    def backward(ctx: Any, *grad_output: Tensor) -> Tuple[None, Tensor, None, None]:\n        if ctx.async_op:\n            input_t = torch.cat(grad_output[0].split(1), dim=ctx.gather_dim + 1).squeeze(0)\n            if ctx.prev_scatter_dim:\n                input_t = input_t.transpose(0, ctx.prev_scatter_dim)\n        else:\n            input_t = grad_output[0]\n        return (\n            None,\n            _all_to_all(input_t, ctx.gather_dim, ctx.scatter_dim, ctx.group),\n            None,\n            None,\n            None,\n        )\n\n\nclass Slice(torch.autograd.Function):\n    @staticmethod\n    def forward(ctx: Any, group: dist.ProcessGroup, local_input: Tensor, dim: int) -> Tensor:\n        ctx.group = group\n        ctx.rank = dist.get_rank(group)\n        seq_world_size = 1\n        ctx.seq_world_size = seq_world_size\n        ctx.dim = dim\n        dim_size = local_input.shape[dim]\n        return local_input.split(dim_size // seq_world_size, dim=dim)[ctx.rank].contiguous()\n\n    @staticmethod\n    def backward(ctx: Any, grad_output: Tensor) -> Tuple[None, Tensor, None]:\n        dim_size = list(grad_output.size())\n        split_size = dim_size[0]\n        dim_size[0] = dim_size[0] * ctx.seq_world_size\n        output = torch.empty(dim_size, dtype=grad_output.dtype, device=torch.cuda.current_device())\n        dist._all_gather_base(output, grad_output, group=ctx.group)\n        return (None, torch.cat(output.split(split_size), dim=ctx.dim), None)\n\n\nclass Gather(torch.autograd.Function):\n    @staticmethod\n    def forward(\n        ctx: Any,\n        group: dist.ProcessGroup,\n        local_input: Tensor,\n        dim: int,\n        grad_scale: Optional[bool] = False,\n    ) -> Tensor:\n        ctx.group = group\n        ctx.rank = dist.get_rank(group)\n        ctx.dim = dim\n        ctx.grad_scale = grad_scale\n        seq_world_size = 1\n        ctx.seq_world_size = seq_world_size\n        dim_size = list(local_input.size())\n        split_size = dim_size[0]\n        ctx.part_size = dim_size[dim]\n        dim_size[0] = dim_size[0] * seq_world_size\n        output = torch.empty(dim_size, dtype=local_input.dtype, device=torch.cuda.current_device())\n        dist._all_gather_base(output, local_input.contiguous(), group=ctx.group)\n        return torch.cat(output.split(split_size), dim=dim)\n\n    @staticmethod\n    def backward(ctx: Any, grad_output: Tensor) -> Tuple[None, Tensor]:\n        if ctx.grad_scale:\n            grad_output = grad_output * ctx.seq_world_size\n        return (\n            None,\n            grad_output.split(ctx.part_size, dim=ctx.dim)[ctx.rank].contiguous(),\n            None,\n            None,\n        )\n\n\ndef gather_seq_scatter_heads_qkv(\n    qkv_tensor: Tensor,\n    *,\n    seq_dim: int,\n    qkv_shape: Optional[Tensor] = None,\n    cache: Cache = Cache(disable=True),\n    restore_shape: bool = True,\n):\n    \"\"\"\n    A func to sync splited qkv tensor\n    qkv_tensor: the tensor we want to do alltoall with. The last dim must\n        be the projection_idx, which we will split into 3 part. After\n        spliting, the gather idx will be projecttion_idx + 1\n    seq_dim: gather_dim for all2all comm\n    restore_shape: if True, output will has the same shape length as input\n    \"\"\"\n    group = get_sequence_parallel_group()\n    if not group:\n        return qkv_tensor\n    world = 1\n    orig_shape = qkv_tensor.shape\n    scatter_dim = qkv_tensor.dim()\n    bef_all2all_shape = list(orig_shape)\n    qkv_proj_dim = bef_all2all_shape[-1]\n    bef_all2all_shape = bef_all2all_shape[:-1] + [3, qkv_proj_dim // 3]\n    qkv_tensor = qkv_tensor.view(bef_all2all_shape)\n    qkv_tensor = SeqAllToAll.apply(group, qkv_tensor, scatter_dim, seq_dim, False)\n    if restore_shape:\n        out_shape = list(orig_shape)\n        out_shape[seq_dim] *= world\n        out_shape[-1] = qkv_proj_dim // world\n        qkv_tensor = qkv_tensor.view(out_shape)\n\n    # remove padding\n    if qkv_shape is not None:\n        unpad_dim_size = cache(\n            \"unpad_dim_size\", lambda: torch.sum(torch.prod(qkv_shape, dim=-1)).item()\n        )\n        if unpad_dim_size % world != 0:\n            padding_size = qkv_tensor.size(seq_dim) - unpad_dim_size\n            qkv_tensor = _unpad_tensor(qkv_tensor, seq_dim, padding_size)\n    return qkv_tensor\n\n\ndef slice_inputs(x: Tensor, dim: int, padding: bool = True):\n    \"\"\"\n    A func to slice the input sequence in sequence parallel\n    \"\"\"\n    group = get_sequence_parallel_group()\n    if group is None:\n        return x\n    sp_rank = get_sequence_parallel_rank()\n    sp_world = 1\n    dim_size = x.shape[dim]\n    unit = (dim_size + sp_world - 1) // sp_world\n    if padding and dim_size % sp_world:\n        padding_size = sp_world - (dim_size % sp_world)\n        x = _pad_tensor(x, dim, padding_size)\n    slc = [slice(None)] * len(x.shape)\n    slc[dim] = slice(unit * sp_rank, unit * (sp_rank + 1))\n    return x[slc]\n\n\ndef remove_seqeunce_parallel_padding(x: Tensor, dim: int, unpad_dim_size: int):\n    \"\"\"\n    A func to remove the padding part of the tensor based on its original shape\n    \"\"\"\n    group = get_sequence_parallel_group()\n    if group is None:\n        return x\n    sp_world = 1\n    if unpad_dim_size % sp_world == 0:\n        return x\n    padding_size = sp_world - (unpad_dim_size % sp_world)\n    assert (padding_size + unpad_dim_size) % sp_world == 0\n    return _unpad_tensor(x, dim=dim, padding_size=padding_size)\n\n\ndef gather_heads_scatter_seq(x: Tensor, head_dim: int, seq_dim: int) -> Tensor:\n    \"\"\"\n    A func to sync attention result with alltoall in sequence parallel\n    \"\"\"\n    group = get_sequence_parallel_group()\n    if not group:\n        return x\n    dim_size = x.size(seq_dim)\n    sp_world = 1\n    if dim_size % sp_world != 0:\n        padding_size = sp_world - (dim_size % sp_world)\n        x = _pad_tensor(x, seq_dim, padding_size)\n    return SeqAllToAll.apply(group, x, seq_dim, head_dim, False)\n\n\ndef gather_seq_scatter_heads(x: Tensor, seq_dim: int, head_dim: int) -> Tensor:\n    \"\"\"\n    A func to sync embedding input with alltoall in sequence parallel\n    \"\"\"\n    group = get_sequence_parallel_group()\n    if not group:\n        return x\n    return SeqAllToAll.apply(group, x, head_dim, seq_dim, False)\n\n\ndef scatter_heads(x: Tensor, dim: int) -> Tensor:\n    \"\"\"\n    A func to split heads before attention in sequence parallel\n    \"\"\"\n    group = get_sequence_parallel_group()\n    if not group:\n        return x\n    return Slice.apply(group, x, dim)\n\n\ndef gather_heads(x: Tensor, dim: int, grad_scale: Optional[bool] = False) -> Tensor:\n    \"\"\"\n    A func to gather heads for the attention result in sequence parallel\n    \"\"\"\n    group = get_sequence_parallel_group()\n    if not group:\n        return x\n    return Gather.apply(group, x, dim, grad_scale)\n\n\ndef gather_outputs(\n    x: Tensor,\n    *,\n    gather_dim: int,\n    padding_dim: Optional[int] = None,\n    unpad_shape: Optional[Tensor] = None,\n    cache: Cache = Cache(disable=True),\n    scale_grad=True,\n):\n    \"\"\"\n    A func to gather the outputs for the model result in sequence parallel\n    \"\"\"\n    group = get_sequence_parallel_group()\n    if not group:\n        return x\n    x = Gather.apply(group, x, gather_dim, scale_grad)\n    if padding_dim is not None:\n        unpad_dim_size = cache(\n            \"unpad_dim_size\", lambda: torch.sum(torch.prod(unpad_shape, dim=1)).item()\n        )\n        x = remove_seqeunce_parallel_padding(x, padding_dim, unpad_dim_size)\n    return x\n\n\ndef _pad_tensor(x: Tensor, dim: int, padding_size: int):\n    shape = list(x.shape)\n    shape[dim] = padding_size\n    pad = torch.zeros(shape, dtype=x.dtype, device=x.device)\n    return torch.cat([x, pad], dim=dim)\n\n\ndef _unpad_tensor(x: Tensor, dim: int, padding_size):\n    slc = [slice(None)] * len(x.shape)\n    slc[dim] = slice(0, -padding_size)\n    return x[slc]\n\n\ndef _broadcast_data(data, shape, dtype, src, group, async_op):\n    comms = []\n    if isinstance(data, (list, tuple)):\n        for i, sub_shape in enumerate(shape):\n            comms += _broadcast_data(data[i], sub_shape, dtype[i], src, group, async_op)\n    elif isinstance(data, dict):\n        for key, sub_data in data.items():\n            comms += _broadcast_data(sub_data, shape[key], dtype[key], src, group, async_op)\n    elif isinstance(data, Tensor):\n        comms.append(dist.broadcast(data, src=src, group=group, async_op=async_op))\n    return comms\n\n\ndef _traverse(data: Any, op: Callable) -> Union[None, List, Dict, Any]:\n    if isinstance(data, (list, tuple)):\n        return [_traverse(sub_data, op) for sub_data in data]\n    elif isinstance(data, dict):\n        return {key: _traverse(sub_data, op) for key, sub_data in data.items()}\n    elif isinstance(data, Tensor):\n        return op(data)\n    else:\n        return None\n\n\ndef _get_shapes(data):\n    return _traverse(data, op=lambda x: x.shape)\n\n\ndef _get_dtypes(data):\n    return _traverse(data, op=lambda x: x.dtype)\n\n\ndef _construct_broadcast_buffer(shapes, dtypes, device):\n    if isinstance(shapes, torch.Size):\n        return torch.empty(shapes, dtype=dtypes, device=device)\n\n    if isinstance(shapes, (list, tuple)):\n        buffer = []\n        for i, sub_shape in enumerate(shapes):\n            buffer.append(_construct_broadcast_buffer(sub_shape, dtypes[i], device))\n    elif isinstance(shapes, dict):\n        buffer = {}\n        for key, sub_shape in shapes.items():\n            buffer[key] = _construct_broadcast_buffer(sub_shape, dtypes[key], device)\n    else:\n        return None\n    return buffer\n\n\nclass SPDistForward:\n    \"\"\"A forward tool to sync different result across sp group\n\n    Args:\n        module: a function or module to process users input\n        sp_step: current training step to judge which rank to broadcast its result to all\n        name: a distinct str to save meta and async comm\n        comm_shape: if different ranks have different shape, mark this arg to True\n        device: the device for current rank, can be empty\n    \"\"\"\n\n    def __init__(\n        self,\n        name: str,\n        comm_shape: bool,\n        device: torch.device = None,\n    ):\n        self.name = name\n        self.comm_shape = comm_shape\n        if device:\n            self.device = device\n        else:\n            self.device = get_device()\n\n    def __call__(self, inputs) -> Any:\n        group = get_sequence_parallel_group()\n        if not group:\n            yield inputs\n        else:\n            device = self.device\n            sp_world = 1\n            sp_rank = get_sequence_parallel_rank()\n            for local_step in range(sp_world):\n                src_rank = dist.get_global_rank(group, local_step)\n                is_src = sp_rank == local_step\n                local_shapes = []\n                local_dtypes = []\n                if local_step == 0:\n                    local_result = inputs\n                    _SEQ_DATA_BUF[self.name][-1] = local_result\n                    local_shapes = _get_shapes(local_result)\n                    local_dtypes = _get_dtypes(local_result)\n                    if self.comm_shape:\n                        group_shapes_lists = [None] * sp_world\n                        dist.all_gather_object(group_shapes_lists, local_shapes, group=group)\n                        _SEQ_DATA_META_SHAPES[self.name] = group_shapes_lists\n                    else:\n                        _SEQ_DATA_META_SHAPES[self.name] = [local_shapes] * sp_world\n                    _SEQ_DATA_META_DTYPES[self.name] = local_dtypes\n                shapes = _SEQ_DATA_META_SHAPES[self.name][local_step]\n                dtypes = _SEQ_DATA_META_DTYPES[self.name]\n                buf_id = local_step % 2\n                if local_step == 0:\n                    sync_data = (\n                        local_result\n                        if is_src\n                        else _construct_broadcast_buffer(shapes, dtypes, device)\n                    )\n                    _broadcast_data(sync_data, shapes, dtypes, src_rank, group, False)\n                    _SEQ_DATA_BUF[self.name][buf_id] = sync_data\n\n                # wait for async comm ops\n                if _SEQ_DATA_ASYNC_COMMS[self.name]:\n                    for comm in _SEQ_DATA_ASYNC_COMMS[self.name]:\n                        comm.wait()\n                # before return the sync result, do async broadcast for next batch\n                if local_step < sp_world - 1:\n                    next_buf_id = 1 - buf_id\n                    shapes = _SEQ_DATA_META_SHAPES[self.name][local_step + 1]\n                    src_rank = dist.get_global_rank(group, local_step + 1)\n                    is_src = sp_rank == local_step + 1\n                    next_sync_data = (\n                        _SEQ_DATA_BUF[self.name][-1]\n                        if is_src\n                        else _construct_broadcast_buffer(shapes, dtypes, device)\n                    )\n                    _SEQ_DATA_ASYNC_COMMS[self.name] = _broadcast_data(\n                        next_sync_data, shapes, dtypes, src_rank, group, True\n                    )\n                    _SEQ_DATA_BUF[self.name][next_buf_id] = next_sync_data\n                yield _SEQ_DATA_BUF[self.name][buf_id]\n\n\nsync_inputs = SPDistForward(name=\"bef_fwd\", comm_shape=True)\n\n\ndef sync_data(data, sp_idx, name=\"tmp\"):\n    group = get_sequence_parallel_group()\n    if group is None:\n        return data\n    # if sp_idx in _SYNC_BUFFER[name]:\n    #     return _SYNC_BUFFER[name][sp_idx]\n    sp_rank = get_sequence_parallel_rank()\n    src_rank = dist.get_global_rank(group, sp_idx)\n    objects = [data] if sp_rank == sp_idx else [None]\n    dist.broadcast_object_list(objects, src=src_rank, group=group)\n    # _SYNC_BUFFER[name] = {sp_idx: objects[0]}\n    return objects[0]\n"
  },
  {
    "path": "modules/seedvr/src/common/half_precision_fixes.py",
    "content": "import torch.nn.functional as F\n\n\ndef safe_pad_operation(x, padding, mode='constant', value=0.0):\n    \"\"\"Safe padding operation that handles Half precision only for problematic modes\"\"\"\n    # Modes qui nécessitent le fix Half precision\n    problematic_modes = ['replicate', 'reflect', 'circular']\n\n    if mode in problematic_modes:\n        try:\n            return F.pad(x, padding, mode=mode, value=value)\n        except RuntimeError as e:\n            if \"not implemented for 'Half'\" in str(e):\n                original_dtype = x.dtype\n                return F.pad(x.float(), padding, mode=mode, value=value).to(original_dtype)\n            else:\n                raise e\n    else:\n        # Pour 'constant' et autres modes compatibles, pas de fix nécessaire\n        return F.pad(x, padding, mode=mode, value=value)\n\n\ndef safe_interpolate_operation(x, size=None, scale_factor=None, mode='nearest', align_corners=None, recompute_scale_factor=None):\n    \"\"\"Safe interpolate operation that handles Half precision for problematic modes\"\"\"\n    # Modes qui peuvent causer des problèmes avec Half precision\n    problematic_modes = ['bilinear', 'bicubic', 'trilinear']\n\n    if mode in problematic_modes:\n        try:\n            return F.interpolate(\n                x,\n                size=size,\n                scale_factor=scale_factor,\n                mode=mode,\n                align_corners=align_corners,\n                recompute_scale_factor=recompute_scale_factor\n            )\n        except RuntimeError as e:\n            if (\"not implemented for 'Half'\" in str(e) or\n                \"compute_indices_weights\" in str(e)):\n                original_dtype = x.dtype\n                return F.interpolate(\n                    x.float(),\n                    size=size,\n                    scale_factor=scale_factor,\n                    mode=mode,\n                    align_corners=align_corners,\n                    recompute_scale_factor=recompute_scale_factor\n                ).to(original_dtype)\n            else:\n                raise e\n    else:\n        # Pour 'nearest' et autres modes compatibles, pas de fix nécessaire\n        return F.interpolate(\n            x,\n            size=size,\n            scale_factor=scale_factor,\n            mode=mode,\n            align_corners=align_corners,\n            recompute_scale_factor=recompute_scale_factor\n        )\n"
  },
  {
    "path": "modules/seedvr/src/common/logger.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\n\"\"\"\nLogging utility functions.\n\"\"\"\n\nimport logging\nimport sys\nfrom typing import Optional\nfrom .distributed import get_global_rank, get_local_rank, get_world_size\n\n\n_default_handler = logging.StreamHandler(sys.stdout)\n_default_handler.setFormatter(\n    logging.Formatter(\n        \"%(asctime)s \"\n        + (f\"[Rank:{get_global_rank()}]\" if get_world_size() > 1 else \"\")\n        + (f\"[LocalRank:{get_local_rank()}]\" if get_world_size() > 1 else \"\")\n        + \"[%(threadName).12s][%(name)s][%(levelname).5s] \"\n        + \"%(message)s\"\n    )\n)\n\n\ndef get_logger(name: Optional[str] = None) -> logging.Logger:\n    \"\"\"\n    Get a logger.\n    \"\"\"\n    logger = logging.getLogger(name)\n    logger.addHandler(_default_handler)\n    logger.setLevel(logging.INFO)\n    return logger\n"
  },
  {
    "path": "modules/seedvr/src/common/partition.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\n\"\"\"\nPartition utility functions.\n\"\"\"\n\nfrom typing import Any, List\n\n\ndef partition_by_size(data: List[Any], size: int) -> List[List[Any]]:\n    \"\"\"\n    Partition a list by size.\n    When indivisible, the last group contains fewer items than the target size.\n\n    Examples:\n        - data: [1,2,3,4,5]\n        - size: 2\n        - return: [[1,2], [3,4], [5]]\n    \"\"\"\n    assert size > 0\n    return [data[i : (i + size)] for i in range(0, len(data), size)]\n\n\ndef partition_by_groups(data: List[Any], groups: int) -> List[List[Any]]:\n    \"\"\"\n    Partition a list by groups.\n    When indivisible, some groups may have more items than others.\n\n    Examples:\n        - data: [1,2,3,4,5]\n        - groups: 2\n        - return: [[1,3,5], [2,4]]\n    \"\"\"\n    assert groups > 0\n    return [data[i::groups] for i in range(groups)]\n\n\ndef shift_list(data: List[Any], n: int) -> List[Any]:\n    \"\"\"\n    Rotate a list by n elements.\n\n    Examples:\n        - data: [1,2,3,4,5]\n        - n: 3\n        - return: [4,5,1,2,3]\n    \"\"\"\n    return data[(n % len(data)) :] + data[: (n % len(data))]\n"
  },
  {
    "path": "modules/seedvr/src/common/seed.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nimport random\nfrom typing import Optional\nimport numpy as np\nimport torch\nfrom .distributed import get_global_rank\n\n\ndef set_seed(seed: Optional[int], same_across_ranks: bool = False):\n    \"\"\"Function that sets the seed for pseudo-random number generators.\"\"\"\n    if seed is not None:\n        seed += get_global_rank() if not same_across_ranks else 0\n        random.seed(seed)\n        np.random.seed(seed)\n        torch.manual_seed(seed)\n"
  },
  {
    "path": "modules/seedvr/src/core/__init__.py",
    "content": "\"\"\"\nCore Module for SeedVR2\n\nContains the main business logic and model management functionality:\n- Model configuration and loading\n- Architecture detection and memory estimation\n- Runner creation and management\n- Generation pipeline and logic\n\"\"\"\n'''\nfrom .model_manager import (\n    configure_runner,\n    load_quantized_state_dict,\n    configure_dit_model_inference,\n    configure_vae_model_inference,\n)\n\nfrom .generation import (\n    generation_step,\n    generation_loop,\n    cut_videos,\n    prepare_video_transforms,\n    load_text_embeddings,\n    calculate_optimal_batch_params\n)\n\nfrom .infer import VideoDiffusionInfer\n\n__all__ = [\n    # Model management\n    'configure_runner',\n    'load_quantized_state_dict',\n    'configure_dit_model_inference',\n    'configure_vae_model_inference',\n\n    # Generation logic\n    'generation_step',\n    'generation_loop',\n    'cut_videos',\n    'prepare_video_transforms',\n    'load_text_embeddings',\n    'calculate_optimal_batch_params',\n\n    # Infer\n    'VideoDiffusionInfer'\n]\n'''\n"
  },
  {
    "path": "modules/seedvr/src/core/generation.py",
    "content": "import torch\nfrom torchvision.transforms import Compose, Lambda, Normalize\nfrom ..optimization.performance import optimized_video_rearrange, optimized_single_video_rearrange, optimized_sample_to_image_format\nfrom ..common.seed import set_seed\nfrom ..data.image.transforms.divisible_crop import DivisibleCrop\nfrom ..data.image.transforms.na_resize import NaResize\nfrom ..utils.color_fix import wavelet_reconstruction\n\n\n\ndef generation_step(runner, text_embeds_dict, cond_latents, temporal_overlap, device):\n    \"\"\"\n    Execute a single generation step with adaptive dtype handling\n\n    Args:\n        runner: VideoDiffusionInfer instance\n        text_embeds_dict (dict): Text embeddings for positive and negative prompts\n        cond_latents (list): Conditional latents for generation\n        temporal_overlap (int): Number of frames for temporal overlap\n\n    Returns:\n        tuple: (samples, last_latents) for potential temporal continuation\n\n    Features:\n        - Adaptive dtype detection (FP8/FP16/BFloat16)\n        - Optimal autocast configuration for each model type\n        - Memory-efficient noise generation and reuse\n        - Automatic device placement with dtype preservation\n        - Advanced inference optimization\n    \"\"\"\n    # Adaptive dtype detection for optimal performance\n    model_dtype = next(runner.dit.parameters()).dtype\n\n    # Configure dtypes according to model architecture\n    if model_dtype in (torch.float8_e4m3fn, torch.float8_e5m2):\n        # FP8 native: use BFloat16 for intermediate calculations (optimal compatibility)\n        dtype = torch.bfloat16\n    elif model_dtype == torch.float16:\n        dtype = torch.float16\n    else:\n        dtype = torch.bfloat16\n\n    def _move_to_cuda(x):\n        \"\"\"Move tensors to CUDA with adaptive optimal dtype\"\"\"\n        return [i.to(device, dtype=dtype) for i in x]\n\n    # Memory optimization: Generate noise once and reuse to save VRAM\n    with torch.cuda.device(device):\n        base_noise = torch.randn_like(cond_latents[0], dtype=dtype)\n        noises = [base_noise]\n        aug_noises = [base_noise * 0.1 + torch.randn_like(base_noise) * 0.05]\n\n    # Move tensors with adaptive dtype (optimized for FP8/FP16/BFloat16)\n    noises, aug_noises, cond_latents = _move_to_cuda(noises), _move_to_cuda(aug_noises), _move_to_cuda(cond_latents)\n\n    cond_noise_scale = 0.0\n\n    def _add_noise(x, aug_noise):\n        # Use adaptive optimal dtype\n        t = (\n            torch.tensor([1000.0], device=device, dtype=dtype)\n            * cond_noise_scale\n        )\n        shape = torch.tensor(x.shape[1:], device=device)[None]\n        t = runner.timestep_transform(t, shape)\n        x = runner.schedule.forward(x, aug_noise, t)\n        return x\n\n    condition = runner.get_condition(\n        noises[0],\n        task=\"sr\",\n        latent_blur=_add_noise(cond_latents[0], aug_noises[0]),\n    )\n    conditions = [condition]\n\n    with torch.no_grad():\n        # Use adaptive autocast for optimal performance\n        video_tensors = runner.inference(\n            noises=noises,\n            conditions=conditions,\n            temporal_overlap=temporal_overlap,\n            **text_embeds_dict,\n        )\n\n    # Process samples with advanced optimization\n    samples = optimized_video_rearrange(video_tensors)\n    noises = noises[0].to(\"cpu\")\n    aug_noises = aug_noises[0].to(\"cpu\")\n    cond_latents = cond_latents[0].to(\"cpu\")\n    conditions = conditions[0].to(\"cpu\")\n    condition = condition.to(\"cpu\")\n    del noises, aug_noises, cond_latents, conditions, condition\n\n    return samples #, last_latents\n\n\ndef cut_videos(videos):\n    t = videos.size(1)\n\n    if t % 4 == 1:\n        return videos\n\n    padding_needed = (4 - (t % 4)) % 4 + 1\n    last_frame = videos[:, -1:].expand(-1, padding_needed, -1, -1).contiguous()\n    result = torch.cat([videos, last_frame], dim=1)\n    return result\n\n\ndef generation_loop(runner, images, cfg_scale=1.0, seed=666, res_w=720, batch_size=90, temporal_overlap=0, progress_callback=None, device:str='cpu'):\n    \"\"\"\n    Main generation loop with context-aware temporal processing\n\n    Args:\n        runner: VideoDiffusionInfer instance\n        images (torch.Tensor): Input images for upscaling\n        cfg_scale (float): Classifier-free guidance scale\n        seed (int): Random seed for reproducibility\n        res_w (int): Target resolution width\n        batch_size (int): Batch size for processing\n        temporal_overlap (int): Frames for temporal continuity\n        progress_callback (callable): Optional callback for progress reporting\n\n    Returns:\n        torch.Tensor: Generated video frames\n\n    Features:\n        - Context-aware generation with temporal overlap\n        - Adaptive dtype pipeline (FP8/FP16/BFloat16)\n        - Memory-optimized batch processing\n        - Advanced video transformation pipeline\n        - Intelligent VRAM management throughout process\n        - Real-time progress reporting\n    \"\"\"\n    model_dtype = None\n    model_dtype = next(runner.dit.parameters()).dtype\n    compute_dtype = model_dtype\n\n    # Configure classifier-free guidance\n    runner.config.diffusion.cfg.scale = cfg_scale\n    runner.config.diffusion.cfg.rescale = 0.0\n    # Configure sampling steps\n    runner.config.diffusion.timesteps.sampling.steps = 1\n    runner.configure_diffusion()\n\n    # Set random seed\n    set_seed(seed)\n\n    # Advanced video transformation pipeline\n    video_transform = Compose([\n        NaResize(\n            resolution=(res_w),\n            mode=\"side\",\n            downsample_only=False,\n        ),\n        Lambda(lambda x: torch.clamp(x, 0.0, 1.0)),\n        DivisibleCrop((16, 16)),\n        Normalize(0.5, 0.5),\n        Lambda(lambda x: x.permute(1, 0, 2, 3)),  # t c h w -> c t h w (faster than Rearrange)\n    ])\n\n    # Initialize generation state\n    batch_samples = []\n\n    # Load text embeddings with adaptive dtype\n    text_embeds = {\"texts_pos\": [runner.text_pos_embeds], \"texts_neg\": [runner.text_neg_embeds]}\n\n    # Calculate processing parameters\n    step = batch_size - temporal_overlap\n    if step <= 0:\n        step = batch_size\n        temporal_overlap = 0\n\n    # Calculate total batches for progress reporting\n    total_batches = len(range(0, len(images), step))\n\n    # Main processing loop with context awareness\n    for batch_count, batch_idx in enumerate(range(0, len(images), step)):\n        # Calculate batch indices with overlap\n        if batch_idx == 0:\n            # First batch: no overlap\n            start_idx = 0\n            end_idx = min(batch_size, len(images))\n            effective_batch_size = end_idx - start_idx\n        else:\n            # Subsequent batches: temporal overlap\n            start_idx = batch_idx\n            end_idx = min(start_idx + batch_size, len(images))\n            effective_batch_size = end_idx - start_idx\n            if effective_batch_size <= temporal_overlap:\n                break  # Not enough new frames, stop\n\n        current_frames = end_idx - start_idx\n\n        # Process current batch\n        video = images[start_idx:end_idx]\n        # Use adaptive computation dtype\n        video = video.permute(0, 3, 1, 2).to(device, dtype=compute_dtype)\n\n        # Apply video transformations with memory optimization\n        transformed_video = video_transform(video)\n        del video\n        #video = video.to(\"cpu\")\n        #del video\n        ori_lengths = [transformed_video.size(1)]\n\n        # Handle correct format: frames % 4 == 1\n        t = transformed_video.size(1)\n\n        if len(images) >= 5 and t % 4 != 1:\n            transformed_video = cut_videos(transformed_video)\n\n        # Context-aware temporal strategy\n        # First batch: standard complete diffusion\n        cond_latents = runner.vae_encode([transformed_video])\n\n        # Normal generation\n        samples = generation_step(runner, text_embeds, cond_latents=cond_latents, temporal_overlap=temporal_overlap, device=device)\n        #del cond_latents\n        del cond_latents\n\n        # Post-process samples\n        sample = samples[0]\n        del samples\n        #del samples\n        if ori_lengths[0] < sample.shape[0]:\n            sample = sample[:ori_lengths[0]]\n\n        # Apply color correction if available\n        transformed_video = transformed_video.to(device)\n        input_video = [optimized_single_video_rearrange(transformed_video)]\n        del transformed_video\n        sample = wavelet_reconstruction(sample, input_video[0][:sample.size(0)])\n        del input_video\n\n        # Convert to final image format\n        sample = optimized_sample_to_image_format(sample)\n        sample = sample.clip(-1, 1).mul_(0.5).add_(0.5)\n        sample_cpu = sample.to(torch.float16).to(\"cpu\")\n        del sample\n        batch_samples.append(sample_cpu)\n        #del sample\n\n        if progress_callback:\n            progress_callback(batch_count+1, total_batches, current_frames, \"Processing batch...\")\n\n\n    # 1. Calculer la taille totale finale\n    total_frames = sum(batch.shape[0] for batch in batch_samples)\n    if len(batch_samples) > 0:\n        sample_shape = batch_samples[0].shape\n        H, W, C = sample_shape[1], sample_shape[2], sample_shape[3]\n        final_video_images = torch.empty((total_frames, H, W, C), dtype=torch.float16)\n        block_size = 500\n        current_idx = 0\n\n        for block_start in range(0, len(batch_samples), block_size):\n            block_end = min(block_start + block_size, len(batch_samples))\n            current_block = []\n            for i in range(block_start, block_end):\n                current_block.append(batch_samples[i].to(device))\n            block_result = torch.cat(current_block, dim=0)\n            block_frames = block_result.shape[0]\n            final_video_images[current_idx:current_idx + block_frames] = block_result.to(\"cpu\")\n            current_idx += block_frames\n            del current_block, block_result\n    else:\n        print(\"SeedVR2: No batch_samples to process\")\n        final_video_images = torch.empty((0, 0, 0, 0), dtype=torch.float16)\n\n    return final_video_images\n\n\ndef prepare_video_transforms(res_w):\n    \"\"\"\n    Prepare optimized video transformation pipeline\n\n    Args:\n        res_w (int): Target resolution width\n\n    Returns:\n        Compose: Configured transformation pipeline\n\n    Features:\n        - Resolution-aware upscaling (no downsampling)\n        - Proper normalization for model compatibility\n        - Memory-efficient tensor operations\n    \"\"\"\n    return Compose([\n        NaResize(\n            resolution=(res_w),\n            mode=\"side\",\n            downsample_only=False,  # Model trained for high resolution\n        ),\n        Lambda(lambda x: torch.clamp(x, 0.0, 1.0)),\n        DivisibleCrop((16, 16)),\n        Normalize(0.5, 0.5),\n        Lambda(lambda x: x.permute(1, 0, 2, 3)),  # t c h w -> c t h w\n    ])\n\n\ndef calculate_optimal_batch_params(total_frames, batch_size, temporal_overlap):\n    \"\"\"\n    Calculate optimal batch processing parameters\n\n    Args:\n        total_frames (int): Total number of frames\n        batch_size (int): Desired batch size\n        temporal_overlap (int): Temporal overlap frames\n\n    Returns:\n        dict: Optimized parameters and recommendations\n\n    Features:\n        - 4n+1 constraint optimization\n        - Padding waste calculation\n        - Performance recommendations\n    \"\"\"\n    step = batch_size - temporal_overlap\n    if step <= 0:\n        step = batch_size\n        temporal_overlap = 0\n\n    # Find optimal batch sizes (4n+1 constraint)\n    optimal_batches = [x for x in [i for i in range(1, 200) if i % 4 == 1] if x <= total_frames]\n    best_batch = max(optimal_batches) if optimal_batches else 1\n\n    # Calculate potential padding waste\n    padding_waste = 0\n    if batch_size not in optimal_batches:\n        padding_waste = sum(((i // 4) + 1) * 4 + 1 - i for i in range(batch_size, total_frames, batch_size))\n\n    return {\n        'step': step,\n        'temporal_overlap': temporal_overlap,\n        'best_batch': best_batch,\n        'padding_waste': padding_waste,\n        'is_optimal': batch_size in optimal_batches\n    }\n"
  },
  {
    "path": "modules/seedvr/src/core/infer.py",
    "content": "from typing import List, Optional, Tuple, Union\nimport torch\nfrom einops import rearrange\nfrom omegaconf import DictConfig, ListConfig\nfrom ..common.diffusion import classifier_free_guidance_dispatcher, create_sampler_from_config, create_sampling_timesteps_from_config, create_schedule_from_config\nfrom ..models.dit_v2 import na\n\n\ndef optimized_channels_to_last(tensor: torch.Tensor) -> torch.Tensor:\n    \"\"\"🚀 Optimized replacement for rearrange(tensor, 'b c ... -> b ... c')\n    Moves channels from position 1 to last position using PyTorch native operations.\n    \"\"\"\n    if tensor.ndim == 3:  # [batch, channels, spatial]\n        return tensor.permute(0, 2, 1)\n    elif tensor.ndim == 4:  # [batch, channels, height, width]\n        return tensor.permute(0, 2, 3, 1)\n    elif tensor.ndim == 5:  # [batch, channels, depth, height, width]\n        return tensor.permute(0, 2, 3, 4, 1)\n    else:\n        # Fallback for other dimensions - move channel (dim=1) to last\n        dims = list(range(tensor.ndim))\n        dims = [dims[0]] + dims[2:] + [dims[1]]  # [0, 2, 3, ..., 1]\n        return tensor.permute(*dims)\n\ndef optimized_channels_to_second(tensor):\n    \"\"\"🚀 Optimized replacement for rearrange(tensor, 'b ... c -> b c ...')\n    Moves channels from last position to position 1 using PyTorch native operations.\n    \"\"\"\n    if tensor.ndim == 3:  # [batch, spatial, channels]\n        return tensor.permute(0, 2, 1)\n    elif tensor.ndim == 4:  # [batch, height, width, channels]\n        return tensor.permute(0, 3, 1, 2)\n    elif tensor.ndim == 5:  # [batch, depth, height, width, channels]\n        return tensor.permute(0, 4, 1, 2, 3)\n    else:\n        # Fallback for other dimensions - move last dim to position 1\n        dims = list(range(tensor.ndim))\n        dims = [dims[0], dims[-1]] + dims[1:-1]  # [0, -1, 1, 2, ..., -2]\n        return tensor.permute(*dims)\n\n\nclass VideoDiffusionInfer():\n    def __init__(self, config: DictConfig, device: str, dtype: torch.dtype):\n        self.config = config\n        self.device = device\n        self.dtype = dtype\n        self.vae = None\n        self.dit = None\n        self.sampler = None\n        self.schedule = None\n    def get_condition(self, latent: torch.Tensor, latent_blur: torch.Tensor, task: str) -> torch.Tensor:\n        t, h, w, c = latent.shape\n        cond = torch.zeros([t, h, w, c + 1], device=latent.device, dtype=latent.dtype)\n        if task == \"t2v\" or t == 1:\n            # t2i or t2v generation.\n            if task == \"sr\":\n                cond[:, ..., :-1] = latent_blur[:]\n                cond[:, ..., -1:] = 1.0\n            return cond\n        if task == \"i2v\":\n            # i2v generation.\n            cond[:1, ..., :-1] = latent[:1]\n            cond[:1, ..., -1:] = 1.0\n            return cond\n        if task == \"v2v\":\n            # v2v frame extension.\n            cond[:2, ..., :-1] = latent[:2]\n            cond[:2, ..., -1:] = 1.0\n            return cond\n        if task == \"sr\":\n            # sr generation.\n            cond[:, ..., :-1] = latent_blur[:]\n            cond[:, ..., -1:] = 1.0\n            return cond\n        raise NotImplementedError\n\n    def configure_diffusion(self):\n        self.schedule = create_schedule_from_config(\n            config=self.config.diffusion.schedule,\n        )\n        self.sampling_timesteps = create_sampling_timesteps_from_config( # pylint: disable=attribute-defined-outside-init\n            config=self.config.diffusion.timesteps.sampling,\n            schedule=self.schedule,\n            device=self.device,\n        )\n        self.sampler = create_sampler_from_config(\n            config=self.config.diffusion.sampler,\n            schedule=self.schedule,\n            timesteps=self.sampling_timesteps,\n        )\n\n    # -------------------------------- Helper ------------------------------- #\n\n    @torch.no_grad()\n    def vae_encode(self, samples: List[torch.Tensor]) -> List[torch.Tensor]:\n        use_sample = self.config.vae.get(\"use_sample\", True)\n        latents = []\n        if len(samples) > 0:\n            dtype = self.vae.dtype\n            scale = self.config.vae.scaling_factor\n            shift = self.config.vae.get(\"shifting_factor\", 0.0)\n\n            if isinstance(scale, ListConfig):\n                scale = torch.tensor(scale, device=self.device, dtype=dtype)\n            if isinstance(shift, ListConfig):\n                shift = torch.tensor(shift, device=self.device, dtype=dtype)\n\n            # Group samples of the same shape to batches if enabled.\n            if self.config.vae.grouping:\n                batches, indices = na.pack(samples)\n            else:\n                batches = [sample.unsqueeze(0) for sample in samples]\n\n            # Vae process by each group.\n            for sample in batches:\n                sample = sample.to(self.device, dtype)\n                if hasattr(self.vae, \"preprocess\"):\n                    sample = self.vae.preprocess(sample)\n                if use_sample:\n                    latent = self.vae.encode(sample).latent\n                else:\n                    # Deterministic vae encode, only used for i2v inference (optionally)\n                    latent = self.vae.encode(sample).posterior.mode().squeeze(2)\n                latent = latent.unsqueeze(2) if latent.ndim == 4 else latent\n                latent = rearrange(latent, \"b c ... -> b ... c\")\n                #latent = optimized_channels_to_last(latent)\n                latent = (latent - shift) * scale\n                latents.append(latent)\n\n            # Ungroup back to individual latent with the original order.\n            if self.config.vae.grouping:\n                latents = na.unpack(latents, indices)\n            else:\n                latents = [latent.squeeze(0) for latent in latents]\n        return latents\n\n\n    @torch.no_grad()\n    def vae_decode(self, latents: List[torch.Tensor], target_dtype: torch.dtype = None) -> List[torch.Tensor]:\n        \"\"\"🚀 VAE decode optimisé - décodage direct sans chunking, compatible avec autocast externe\"\"\"\n        samples = []\n        if len(latents) > 0:\n            device = self.device\n            dtype = self.vae.dtype\n            scale = self.config.vae.scaling_factor\n            shift = self.config.vae.get(\"shifting_factor\", 0.0)\n\n            if isinstance(scale, ListConfig):\n                scale = torch.tensor(scale, device=device, dtype=dtype)\n            if isinstance(shift, ListConfig):\n                shift = torch.tensor(shift, device=device, dtype=dtype)\n\n\n            # 🚀 OPTIMISATION 1: Group latents intelligemment pour batch processing\n            if self.config.vae.grouping:\n                latents, indices = na.pack(latents)\n            else:\n                latents = [latent.unsqueeze(0) for latent in latents]\n\n            # 🚀 OPTIMISATION 2: Traitement batch optimisé avec dtype adaptatif\n            for _i, latent in enumerate(latents):\n                # Préparation optimisée du latent\n                # Utiliser target_dtype si fourni (évite double autocast)\n                effective_dtype = target_dtype if target_dtype is not None else dtype\n                latent = latent.to(device, effective_dtype, non_blocking=True)\n                latent = latent / scale + shift\n                latent = rearrange(latent, \"b ... c -> b c ...\")\n                #latent = optimized_channels_to_second(latent)\n                latent = latent.squeeze(2)\n\n                # 🚀 OPTIMISATION 3: Décodage direct SANS autocast (utilise l'autocast externe)\n                sample = self.vae.decode(latent).sample\n                #sample = self.vae.decode(latent).sample\n                #sample = self.vae.decode(latent).sample\n\n                # 🚀 OPTIMISATION 4: Post-processing conditionnel\n                if hasattr(self.vae, \"postprocess\"):\n                    sample = self.vae.postprocess(sample)\n\n                samples.append(sample)\n\n            # Ungroup back to individual sample with the original order.\n            if self.config.vae.grouping:\n                samples = na.unpack(samples, indices)\n            else:\n                samples = [sample.squeeze(0) for sample in samples]\n        return samples\n\n    def timestep_transform(self, timesteps: torch.Tensor, latents_shapes: torch.Tensor):\n        # Skip if not needed.\n        if not self.config.diffusion.timesteps.get(\"transform\", False):\n            return timesteps\n\n        # Compute resolution.\n        vt = self.config.vae.model.get(\"temporal_downsample_factor\", 4)\n        vs = self.config.vae.model.get(\"spatial_downsample_factor\", 8)\n        frames = (latents_shapes[:, 0] - 1) * vt + 1\n        heights = latents_shapes[:, 1] * vs\n        widths = latents_shapes[:, 2] * vs\n\n        # Compute shift factor.\n        def get_lin_function(x1, y1, x2, y2):\n            m = (y2 - y1) / (x2 - x1)\n            b = y1 - m * x1\n            return lambda x: m * x + b\n\n        img_shift_fn = get_lin_function(x1=256 * 256, y1=1.0, x2=1024 * 1024, y2=3.2)\n        vid_shift_fn = get_lin_function(x1=256 * 256 * 37, y1=1.0, x2=1280 * 720 * 145, y2=5.0)\n        shift = torch.where(\n            frames > 1,\n            vid_shift_fn(heights * widths * frames),\n            img_shift_fn(heights * widths),\n        )\n\n        # Shift timesteps.\n        timesteps = timesteps / self.schedule.T\n        timesteps = shift * timesteps / (1 + (shift - 1) * timesteps)\n        timesteps = timesteps * self.schedule.T\n        return timesteps\n\n    @torch.no_grad()\n    def inference(\n        self,\n        noises: List[torch.Tensor],\n        conditions: List[torch.Tensor],\n        texts_pos: Union[List[str], List[torch.Tensor], List[Tuple[torch.Tensor]]],\n        texts_neg: Union[List[str], List[torch.Tensor], List[Tuple[torch.Tensor]]],\n        cfg_scale: Optional[float] = None,\n        temporal_overlap: int = 0, # pylint: disable=unused-argument\n    ) -> List[torch.Tensor]:\n        assert len(noises) == len(conditions) == len(texts_pos) == len(texts_neg)\n        batch_size = len(noises)\n\n        # Return if empty.\n        if batch_size == 0:\n            return []\n\n        # Set cfg scale\n        if cfg_scale is None:\n            cfg_scale = self.config.diffusion.cfg.scale\n\n        # 🚀 OPTIMISATION: Détecter le dtype du modèle pour performance optimale\n        model_dtype = next(self.dit.parameters()).dtype\n        # Adapter les dtypes selon le modèle\n        if model_dtype in (torch.float8_e4m3fn, torch.float8_e5m2):\n            target_dtype = torch.float16\n        elif model_dtype == torch.float16:\n            target_dtype = torch.float16\n        else:\n            target_dtype = torch.bfloat16\n        # Text embeddings.\n        assert type(texts_pos[0]) is type(texts_neg[0])\n        if isinstance(texts_pos[0], str):\n            text_pos_embeds, text_pos_shapes = self.text_encode(texts_pos) # pylint: disable=no-member\n            text_neg_embeds, text_neg_shapes = self.text_encode(texts_neg) # pylint: disable=no-member\n        elif isinstance(texts_pos[0], tuple):\n            text_pos_embeds, text_pos_shapes = [], []\n            text_neg_embeds, text_neg_shapes = [], []\n            for pos in zip(*texts_pos):\n                emb, shape = na.flatten(pos)\n                text_pos_embeds.append(emb)\n                text_pos_shapes.append(shape)\n            for neg in zip(*texts_neg):\n                emb, shape = na.flatten(neg)\n                text_neg_embeds.append(emb)\n                text_neg_shapes.append(shape)\n        else:\n            text_pos_embeds, text_pos_shapes = na.flatten(texts_pos)\n            text_neg_embeds, text_neg_shapes = na.flatten(texts_neg)\n\n        # Adapter les embeddings texte au dtype cible (compatible avec FP8)\n        if isinstance(text_pos_embeds, torch.Tensor):\n            text_pos_embeds = text_pos_embeds.to(target_dtype)\n        if isinstance(text_neg_embeds, torch.Tensor):\n            text_neg_embeds = text_neg_embeds.to(target_dtype)\n\n        # Flatten.\n        latents, latents_shapes = na.flatten(noises)\n        latents_cond, _ = na.flatten(conditions)\n\n        # Adapter les latents au dtype cible (compatible avec FP8)\n        latents = latents.to(target_dtype) if latents.dtype != target_dtype else latents\n        latents_cond = latents_cond.to(target_dtype) if latents_cond.dtype != target_dtype else latents_cond\n        self.dit = self.dit.to(device=self.device, dtype=target_dtype)\n\n        latents = self.sampler.sample(\n            x=latents,\n            f=lambda args: classifier_free_guidance_dispatcher(\n                pos=lambda: self.dit(\n                    vid=torch.cat([args.x_t, latents_cond], dim=-1),\n                    txt=text_pos_embeds,\n                    vid_shape=latents_shapes,\n                    txt_shape=text_pos_shapes,\n                    timestep=args.t.repeat(batch_size),\n                ).vid_sample,\n                neg=lambda: self.dit(\n                    vid=torch.cat([args.x_t, latents_cond], dim=-1),\n                    txt=text_neg_embeds,\n                    vid_shape=latents_shapes,\n                    txt_shape=text_neg_shapes,\n                    timestep=args.t.repeat(batch_size),\n                ).vid_sample,\n                scale=(\n                    cfg_scale\n                    if (args.i + 1) / len(self.sampler.timesteps)\n                    <= self.config.diffusion.cfg.get(\"partial\", 1)\n                    else 1.0\n                ),\n                rescale=self.config.diffusion.cfg.rescale,\n            ),\n        )\n\n        latents = na.unflatten(latents, latents_shapes)\n\n        # 🎯 Pré-calcul des dtypes (une seule fois)\n        vae_dtype = self.vae.dtype\n        decode_dtype = torch.float16 if (vae_dtype == torch.float16 or target_dtype == torch.float16) else vae_dtype\n        samples = self.vae_decode(latents, target_dtype=decode_dtype)\n\n        if samples and len(samples) > 0 and samples[0].dtype != torch.float16:\n            samples = [sample.to(torch.float16, non_blocking=True) for sample in samples]\n\n        return samples\n"
  },
  {
    "path": "modules/seedvr/src/core/model_manager.py",
    "content": "import os\nimport torch\nfrom omegaconf import OmegaConf\nfrom safetensors.torch import load_file as load_safetensors_file\nfrom huggingface_hub import hf_hub_download\nfrom ..optimization.memory_manager import preinitialize_rope_cache\nfrom ..common.config import load_config, create_object\nfrom ..core.infer import VideoDiffusionInfer\n\n\ndef configure_runner(model_name, cache_dir, device:str='cpu', dtype:torch.dtype=None):\n    repo_id = \"vladmandic/SeedVR2\"\n    script_directory = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))\n    config_path = os.path.join(script_directory, './config_7b.yaml') if \"7b\" in model_name else os.path.join(script_directory, './config_3b.yaml')\n    config = load_config(config_path)\n\n    runner = VideoDiffusionInfer(config, device=device, dtype=dtype)\n    OmegaConf.set_readonly(runner.config, False)\n\n    # load dit\n    with torch.device(\"meta\"):\n        runner.dit = create_object(config.dit.model)\n        runner.dit.requires_grad_(False).eval()\n        runner.dit.to_empty(device=\"cpu\")\n    model_file = hf_hub_download(repo_id=repo_id, filename=model_name, cache_dir=cache_dir)\n    state_dict = load_safetensors_file(model_file)\n    runner.dit.load_state_dict(state_dict, assign=True)\n    runner.dit = runner.dit.to(device=\"cpu\", dtype=dtype)\n    del state_dict\n\n    # load vae\n    vae_config_path = os.path.join(script_directory, 'src/models/video_vae_v3/s8_c16_t4_inflation_sd3.yaml')\n    vae_config = OmegaConf.load(vae_config_path)\n    config.vae.model = OmegaConf.merge(config.vae.model, vae_config)\n\n    vae_file = hf_hub_download(repo_id=repo_id, filename=config.vae.checkpoint, cache_dir=cache_dir)\n    with torch.device(\"meta\"):\n        runner.vae = create_object(config.vae.model)\n        runner.vae.requires_grad_(False).eval()\n        runner.vae.to_empty(device=\"cpu\")\n    state_dict = load_safetensors_file(vae_file)\n    runner.vae.load_state_dict(state_dict)\n    runner.vae = runner.vae.to(device=\"cpu\", dtype=dtype)\n    runner.config.vae.dtype = str(dtype)\n    runner.config.vae.slicing = {'split_size': 8, 'memory_device': 'same'}\n    runner.config.vae.memory_limit = {'conv_max_mem': 0.2, 'norm_max_mem': 0.2}\n    runner.vae.set_causal_slicing(**runner.config.vae.slicing)\n    runner.vae.set_memory_limit(**runner.config.vae.memory_limit)\n    del state_dict\n\n    # load embeds\n    pos_embeds_file = hf_hub_download(repo_id=repo_id, filename='pos_emb.pt', cache_dir=cache_dir)\n    neg_embeds_file = hf_hub_download(repo_id=repo_id, filename='neg_emb.pt', cache_dir=cache_dir)\n    runner.text_pos_embeds = torch.load(pos_embeds_file).to(device=device, dtype=dtype)\n    runner.text_neg_embeds = torch.load(neg_embeds_file).to(device=device, dtype=dtype)\n\n    return runner\n"
  },
  {
    "path": "modules/seedvr/src/data/image/transforms/area_resize.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nimport math\nimport random\nfrom typing import Union\nimport torch\nfrom PIL import Image\nfrom torchvision.transforms import functional as TVF\nfrom torchvision.transforms.functional import InterpolationMode\n\n\nclass AreaResize:\n    def __init__(\n        self,\n        max_area: float,\n        downsample_only: bool = False,\n        interpolation: InterpolationMode = InterpolationMode.BICUBIC,\n    ):\n        self.max_area = max_area\n        self.downsample_only = downsample_only\n        self.interpolation = interpolation\n\n    def __call__(self, image: Union[torch.Tensor, Image.Image]):\n\n        if isinstance(image, torch.Tensor):\n            height, width = image.shape[-2:]\n        elif isinstance(image, Image.Image):\n            width, height = image.size\n        else:\n            raise NotImplementedError\n\n        scale = math.sqrt(self.max_area / (height * width))\n\n        # keep original height and width for small pictures.\n        scale = 1 if scale >= 1 and self.downsample_only else scale\n\n        resized_height, resized_width = round(height * scale), round(width * scale)\n\n        return TVF.resize(\n            image,\n            size=(resized_height, resized_width),\n            interpolation=self.interpolation,\n        )\n\n\nclass AreaRandomCrop:\n    def __init__(\n        self,\n        max_area: float,\n    ):\n        self.max_area = max_area\n\n    def get_params(self, input_size, output_size):\n        \"\"\"Get parameters for ``crop`` for a random crop.\n\n        Args:\n            img (PIL Image): Image to be cropped.\n            output_size (tuple): Expected output size of the crop.\n\n        Returns:\n            tuple: params (i, j, h, w) to be passed to ``crop`` for random crop.\n        \"\"\"\n        # w, h = _get_image_size(img)\n        h, w = input_size\n        th, tw = output_size\n        if w <= tw and h <= th:\n            return 0, 0, h, w\n\n        i = random.randint(0, h - th)\n        j = random.randint(0, w - tw)\n        return i, j, th, tw\n\n    def __call__(self, image: Union[torch.Tensor, Image.Image]):\n        if isinstance(image, torch.Tensor):\n            height, width = image.shape[-2:]\n        elif isinstance(image, Image.Image):\n            width, height = image.size\n        else:\n            raise NotImplementedError\n\n        resized_height = math.sqrt(self.max_area / (width / height))\n        resized_width = (width / height) * resized_height\n\n        resized_height, resized_width = round(resized_height), round(resized_width)\n        i, j, h, w = self.get_params((height, width), (resized_height, resized_width))\n        image = TVF.crop(image, i, j, h, w)\n        return image\n\nclass ScaleResize:\n    def __init__(\n        self,\n        scale: float,\n    ):\n        self.scale = scale\n\n    def __call__(self, image: Union[torch.Tensor, Image.Image]):\n        if isinstance(image, torch.Tensor):\n            height, width = image.shape[-2:]\n            interpolation_mode = InterpolationMode.BILINEAR\n            antialias = True if image.ndim == 4 else \"warn\"\n        elif isinstance(image, Image.Image):\n            width, height = image.size\n            interpolation_mode = InterpolationMode.LANCZOS\n            antialias = \"warn\"\n        else:\n            raise NotImplementedError\n\n        scale = self.scale\n\n        # keep original height and width for small pictures\n\n        resized_height, resized_width = round(height * scale), round(width * scale)\n        image = TVF.resize(\n            image,\n            size=(resized_height, resized_width),\n            interpolation=interpolation_mode,\n            antialias=antialias,\n        )\n        return image\n"
  },
  {
    "path": "modules/seedvr/src/data/image/transforms/divisible_crop.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom typing import Union\nimport torch\nfrom PIL import Image\nfrom torchvision.transforms import functional as TVF\n\n\nclass DivisibleCrop:\n    def __init__(self, factor):\n        if not isinstance(factor, tuple):\n            factor = (factor, factor)\n\n        self.height_factor, self.width_factor = factor[0], factor[1]\n\n    def __call__(self, image: Union[torch.Tensor, Image.Image]):\n        if isinstance(image, torch.Tensor):\n            height, width = image.shape[-2:]\n        elif isinstance(image, Image.Image):\n            width, height = image.size\n        else:\n            raise NotImplementedError\n\n        cropped_height = height - (height % self.height_factor)\n        cropped_width = width - (width % self.width_factor)\n\n        image = TVF.center_crop(img=image, output_size=(cropped_height, cropped_width))\n        return image\n"
  },
  {
    "path": "modules/seedvr/src/data/image/transforms/na_resize.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom typing import Literal\nfrom torchvision.transforms import CenterCrop, Compose, InterpolationMode, Resize\n\nfrom .area_resize import AreaResize\nfrom .side_resize import SideResize\n\n\ndef NaResize(\n    resolution: int,\n    mode: Literal[\"area\", \"side\"],\n    downsample_only: bool,\n    interpolation: InterpolationMode = InterpolationMode.BICUBIC,\n):\n    if mode == \"area\":\n        return AreaResize(\n            max_area=resolution**2,\n            downsample_only=downsample_only,\n            interpolation=interpolation,\n        )\n    if mode == \"side\":\n        return SideResize(\n            size=resolution,\n            downsample_only=downsample_only,\n            interpolation=interpolation,\n        )\n    if mode == \"square\":\n        return Compose(\n            [\n                Resize(\n                    size=resolution,\n                    interpolation=interpolation,\n                ),\n                CenterCrop(resolution),\n            ]\n        )\n    raise ValueError(f\"Unknown resize mode: {mode}\")\n"
  },
  {
    "path": "modules/seedvr/src/data/image/transforms/side_resize.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom typing import Union\nimport torch\nfrom PIL import Image\nfrom torchvision.transforms import InterpolationMode\nfrom torchvision.transforms import functional as TVF\n\n\nclass SideResize:\n    def __init__(\n        self,\n        size: int,\n        downsample_only: bool = False,\n        interpolation: InterpolationMode = InterpolationMode.BICUBIC,\n    ):\n        self.size = size\n        self.downsample_only = downsample_only\n        self.interpolation = interpolation\n\n    def __call__(self, image: Union[torch.Tensor, Image.Image]):\n        \"\"\"\n        Args:\n            image (PIL Image or Tensor): Image to be scaled.\n\n        Returns:\n            PIL Image or Tensor: Rescaled image.\n        \"\"\"\n        if isinstance(image, torch.Tensor):\n            height, width = image.shape[-2:]\n        elif isinstance(image, Image.Image):\n            width, height = image.size\n        else:\n            raise NotImplementedError\n\n        if self.downsample_only and min(width, height) < self.size:\n            # keep original height and width for small pictures.\n            size = min(width, height)\n        else:\n            size = self.size\n\n        return TVF.resize(image, size, self.interpolation)\n"
  },
  {
    "path": "modules/seedvr/src/models/dit/attention.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nimport torch\nimport torch.nn.functional as F\n\n#from flash_attn import flash_attn_varlen_func\n\nfrom torch import nn\n\n\ndef pytorch_varlen_attention(q, k, v, cu_seqlens_q, cu_seqlens_k, max_seqlen_q, max_seqlen_k, dropout_p=0.0, softmax_scale=None, causal=False, deterministic=False):\n    \"\"\"\n    A PyTorch-based implementation of variable-length attention to replace flash_attn_varlen_func.\n    It processes each sequence in the batch individually.\n    \"\"\"\n    # Create an empty tensor to store the output.\n    output = torch.empty_like(q)\n\n    # Iterate over each sequence in the batch. The batch size is the number of sequences.\n    for i in range(len(cu_seqlens_q) - 1):\n        # Determine the start and end indices for the current sequence.\n        start_q, end_q = cu_seqlens_q[i], cu_seqlens_q[i+1]\n        start_k, end_k = cu_seqlens_k[i], cu_seqlens_k[i+1]\n\n        # Slice the q, k, and v tensors to get the data for the current sequence.\n        # The shape is (seq_len, heads, head_dim).\n        q_i = q[start_q:end_q]\n        k_i = k[start_k:end_k]\n        v_i = v[start_k:end_k]\n\n        # Reshape for torch's scaled_dot_product_attention which expects (batch, heads, seq, dim).\n        # Here, we treat each sequence as a batch of 1.\n        q_i = q_i.permute(1, 0, 2).unsqueeze(0) # (1, heads, seq_len_q, head_dim)\n        k_i = k_i.permute(1, 0, 2).unsqueeze(0) # (1, heads, seq_len_k, head_dim)\n        v_i = v_i.permute(1, 0, 2).unsqueeze(0) # (1, heads, seq_len_k, head_dim)\n\n        # Use PyTorch's built-in scaled dot-product attention.\n        output_i = F.scaled_dot_product_attention(\n            q_i, k_i, v_i,\n            dropout_p=dropout_p if not deterministic else 0.0,\n            is_causal=causal\n        )\n\n        # Reshape the output back to the original format (seq_len, heads, head_dim)\n        output_i = output_i.squeeze(0).permute(1, 0, 2)\n\n        # Place the result for the current sequence into the main output tensor.\n        output[start_q:end_q] = output_i\n\n    return output\n\n\nclass TorchAttention(nn.Module):\n    def tflops(self, args, kwargs, output) -> float:\n        assert len(args) == 0 or len(args) > 2, \"query, key should both provided by args / kwargs\"\n        q = kwargs.get(\"query\") or args[0]\n        k = kwargs.get(\"key\") or args[1]\n        b, h, sq, d = q.shape\n        b, h, sk, d = k.shape\n        return b * h * (4 * d * (sq / 1e6) * (sk / 1e6))\n\n    def forward(self, *args, **kwargs):\n        #return pytorch_varlen_attention(*args, **kwargs)\n        return F.scaled_dot_product_attention(*args, **kwargs)\n\n\nclass FlashAttentionVarlen(nn.Module):\n    def tflops(self, args, kwargs, output) -> float:\n        cu_seqlens_q = kwargs[\"cu_seqlens_q\"]\n        cu_seqlens_k = kwargs[\"cu_seqlens_k\"]\n        _, h, d = output.shape\n        seqlens_q = (cu_seqlens_q[1:] - cu_seqlens_q[:-1]) / 1e6\n        seqlens_k = (cu_seqlens_k[1:] - cu_seqlens_k[:-1]) / 1e6\n        return h * (4 * d * (seqlens_q * seqlens_k).sum())\n\n    def forward(self, *args, **kwargs):\n        kwargs[\"deterministic\"] = torch.are_deterministic_algorithms_enabled()\n        try:\n            from flash_attn import flash_attn_varlen_func\n            return flash_attn_varlen_func(*args, **kwargs)\n        except ImportError:\n            return pytorch_varlen_attention(*args, **kwargs)\n"
  },
  {
    "path": "modules/seedvr/src/models/dit/blocks/__init__.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom .mmdit_window_block import MMWindowTransformerBlock\n\ndit_blocks = {\n    \"mmdit_window\": MMWindowTransformerBlock,\n}\n\n\ndef get_block(block_type: str):\n    if block_type in dit_blocks:\n        return dit_blocks[block_type]\n    raise NotImplementedError(f\"{block_type} is not supported\")\n"
  },
  {
    "path": "modules/seedvr/src/models/dit/blocks/mmdit_window_block.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom typing import Tuple, Union\nimport torch\nfrom einops import rearrange\nfrom torch import nn\nfrom torch.nn import functional as F\nfrom torch.nn.modules.utils import _triple\nfrom ....common.half_precision_fixes import safe_pad_operation\nfrom ....common.distributed.ops import gather_heads, gather_heads_scatter_seq, gather_seq_scatter_heads_qkv, scatter_heads\nfrom ..attention import TorchAttention\nfrom ..mlp import get_mlp\nfrom ..mm import MMArg, MMModule\nfrom ..modulation import ada_layer_type\nfrom ..normalization import norm_layer_type\nfrom ..rope import RotaryEmbedding3d\n\n\nclass MMWindowAttention(nn.Module):\n    def __init__(\n        self,\n        vid_dim: int,\n        txt_dim: int,\n        heads: int,\n        head_dim: int,\n        qk_bias: bool,\n        qk_rope: bool,\n        qk_norm: norm_layer_type,\n        qk_norm_eps: float,\n        window: Union[int, Tuple[int, int, int]],\n        window_method: str,\n        shared_qkv: bool,\n    ):\n        super().__init__()\n        dim = MMArg(vid_dim, txt_dim)\n        inner_dim = heads * head_dim\n        qkv_dim = inner_dim * 3\n\n        self.window = _triple(window)\n        self.window_method = window_method\n        assert all(map(lambda v: isinstance(v, int) and v >= 0, self.window))\n\n        self.head_dim = head_dim\n        self.proj_qkv = MMModule(nn.Linear, dim, qkv_dim, bias=qk_bias, shared_weights=shared_qkv)\n        self.proj_out = MMModule(nn.Linear, inner_dim, dim, shared_weights=shared_qkv)\n        self.norm_q = MMModule(qk_norm, dim=head_dim, eps=qk_norm_eps, elementwise_affine=True)\n        self.norm_k = MMModule(qk_norm, dim=head_dim, eps=qk_norm_eps, elementwise_affine=True)\n        self.rope = RotaryEmbedding3d(dim=head_dim // 2) if qk_rope else None\n        self.attn = TorchAttention()\n\n    def forward(\n        self,\n        vid: torch.FloatTensor,  # b T H W c\n        txt: torch.FloatTensor,  # b L c\n        txt_mask: torch.BoolTensor,  # b L\n    ) -> Tuple[\n        torch.FloatTensor,\n        torch.FloatTensor,\n    ]:\n        # Project q, k, v.\n        vid_qkv, txt_qkv = self.proj_qkv(vid, txt)\n        vid_qkv = gather_seq_scatter_heads_qkv(vid_qkv, seq_dim=2)\n        _, T, H, W, _ = vid_qkv.shape\n        _, L, _ = txt.shape\n\n        if self.window_method == \"win\":\n            nt, nh, nw = self.window\n            tt, hh, ww = T // nt, H // nh, W // nw\n        elif self.window_method == \"win_by_size\":\n            tt, hh, ww = self.window\n            tt, hh, ww = (\n                tt if tt > 0 else T,\n                hh if hh > 0 else H,\n                ww if ww > 0 else W,\n            )\n            nt, nh, nw = T // tt, H // hh, W // ww\n        else:\n            raise NotImplementedError\n\n        vid_qkv = rearrange(vid_qkv, \"b T H W (o h d) -> o b h (T H W) d\", o=3, d=self.head_dim)\n        txt_qkv = rearrange(txt_qkv, \"b L (o h d) -> o b h L d\", o=3, d=self.head_dim)\n        txt_qkv = scatter_heads(txt_qkv, dim=2)\n\n        vid_q, vid_k, vid_v = vid_qkv.unbind()\n        txt_q, txt_k, txt_v = txt_qkv.unbind()\n\n        vid_q, txt_q = self.norm_q(vid_q, txt_q)\n        vid_k, txt_k = self.norm_k(vid_k, txt_k)\n\n        if self.rope:\n            vid_q, vid_k = self.rope(vid_q, vid_k, (T, H, W))\n\n        def vid_window(v):\n            return rearrange(\n                v,\n                \"b h (nt tt nh hh nw ww) d -> b h (nt nh nw) (tt hh ww) d\",\n                hh=hh,\n                ww=ww,\n                tt=tt,\n                nh=nh,\n                nw=nw,\n                nt=nt,\n            )\n\n        def txt_window(t):\n            return rearrange(t, \"b h L d -> b h 1 L d\").expand(-1, -1, nt * nh * nw, -1, -1)\n\n        # Process video attention.\n        vid_msk = safe_pad_operation(txt_mask, (tt * hh * ww, 0), value=True)\n        vid_msk = rearrange(vid_msk, \"b l -> b 1 1 1 l\").expand(-1, 1, 1, tt * hh * ww, -1)\n        vid_out = self.attn(\n            vid_window(vid_q),\n            torch.cat([vid_window(vid_k), txt_window(txt_k)], dim=-2),\n            torch.cat([vid_window(vid_v), txt_window(txt_v)], dim=-2),\n            vid_msk,\n        )\n        vid_out = rearrange(\n            vid_out,\n            \"b h (nt nh nw) (tt hh ww) d -> b (nt tt) (nh hh) (nw ww) (h d)\",\n            hh=hh,\n            ww=ww,\n            tt=tt,\n            nh=nh,\n            nw=nw,\n        )\n        vid_out = gather_heads_scatter_seq(vid_out, head_dim=4, seq_dim=2)\n\n        # Process text attention.\n        txt_msk = safe_pad_operation(txt_mask, (T * H * W, 0), value=True)\n        txt_msk = rearrange(txt_msk, \"b l -> b 1 1 l\").expand(-1, 1, L, -1)\n        txt_out = self.attn(\n            txt_q,\n            torch.cat([vid_k, txt_k], dim=-2),\n            torch.cat([vid_v, txt_v], dim=-2),\n            txt_msk,\n        )\n        txt_out = rearrange(txt_out, \"b h L d -> b L (h d)\")\n        txt_out = gather_heads(txt_out, dim=2)\n\n        # Project output.\n        vid_out, txt_out = self.proj_out(vid_out, txt_out)\n        return vid_out, txt_out\n\n\nclass MMWindowTransformerBlock(nn.Module):\n    def __init__(\n        self,\n        *,\n        vid_dim: int,\n        txt_dim: int,\n        emb_dim: int,\n        heads: int,\n        head_dim: int,\n        expand_ratio: int,\n        norm: norm_layer_type,\n        norm_eps: float,\n        ada: ada_layer_type,\n        qk_bias: bool,\n        qk_rope: bool,\n        qk_norm: norm_layer_type,\n        window: Union[int, Tuple[int, int, int]],\n        window_method: str,\n        shared_qkv: bool,\n        shared_mlp: bool,\n        mlp_type: str,\n        **kwargs,\n    ):\n        super().__init__()\n        dim = MMArg(vid_dim, txt_dim)\n        self.attn_norm = MMModule(norm, dim=dim, eps=norm_eps, elementwise_affine=False)\n        self.attn = MMWindowAttention(\n            vid_dim=vid_dim,\n            txt_dim=txt_dim,\n            heads=heads,\n            head_dim=head_dim,\n            qk_bias=qk_bias,\n            qk_rope=qk_rope,\n            qk_norm=qk_norm,\n            qk_norm_eps=norm_eps,\n            window=window,\n            window_method=window_method,\n            shared_qkv=shared_qkv,\n        )\n        self.mlp_norm = MMModule(norm, dim=dim, eps=norm_eps, elementwise_affine=False)\n        self.mlp = MMModule(\n            get_mlp(mlp_type),\n            dim=dim,\n            expand_ratio=expand_ratio,\n            shared_weights=shared_mlp,\n        )\n        self.ada = MMModule(ada, dim=dim, emb_dim=emb_dim, layers=[\"attn\", \"mlp\"])\n\n    def forward(\n        self,\n        vid: torch.FloatTensor,\n        txt: torch.FloatTensor,\n        txt_mask: torch.BoolTensor,\n        emb: torch.FloatTensor,\n    ) -> Tuple[\n        torch.FloatTensor,\n        torch.FloatTensor,\n    ]:\n        vid_attn, txt_attn = self.attn_norm(vid, txt)\n        vid_attn, txt_attn = self.ada(vid_attn, txt_attn, emb=emb, layer=\"attn\", mode=\"in\")\n        vid_attn, txt_attn = self.attn(vid_attn, txt_attn, txt_mask=txt_mask)\n        vid_attn, txt_attn = self.ada(vid_attn, txt_attn, emb=emb, layer=\"attn\", mode=\"out\")\n        vid_attn, txt_attn = (vid_attn + vid), (txt_attn + txt)\n\n        vid_mlp, txt_mlp = self.mlp_norm(vid_attn, txt_attn)\n        vid_mlp, txt_mlp = self.ada(vid_mlp, txt_mlp, emb=emb, layer=\"mlp\", mode=\"in\")\n        vid_mlp, txt_mlp = self.mlp(vid_mlp, txt_mlp)\n        vid_mlp, txt_mlp = self.ada(vid_mlp, txt_mlp, emb=emb, layer=\"mlp\", mode=\"out\")\n        vid_mlp, txt_mlp = (vid_mlp + vid_attn), (txt_mlp + txt_attn)\n\n        return vid_mlp, txt_mlp\n"
  },
  {
    "path": "modules/seedvr/src/models/dit/embedding.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom typing import Optional, Union\nimport torch\nfrom diffusers.models.embeddings import get_timestep_embedding\nfrom torch import nn\n\n\ndef emb_add(emb1: torch.Tensor, emb2: Optional[torch.Tensor]):\n    return emb1 if emb2 is None else emb1 + emb2\n\n\nclass TimeEmbedding(nn.Module):\n    def __init__(\n        self,\n        sinusoidal_dim: int,\n        hidden_dim: int,\n        output_dim: int,\n    ):\n        super().__init__()\n        self.sinusoidal_dim = sinusoidal_dim\n        self.proj_in = nn.Linear(sinusoidal_dim, hidden_dim)\n        self.proj_hid = nn.Linear(hidden_dim, hidden_dim)\n        self.proj_out = nn.Linear(hidden_dim, output_dim)\n        self.act = nn.SiLU()\n\n    def forward(\n        self,\n        timestep: Union[int, float, torch.IntTensor, torch.FloatTensor],\n        device: torch.device,\n        dtype: torch.dtype,\n    ) -> torch.FloatTensor:\n        if not torch.is_tensor(timestep):\n            timestep = torch.tensor([timestep], device=device, dtype=dtype)\n        if timestep.ndim == 0:\n            timestep = timestep[None]\n\n        emb = get_timestep_embedding(\n            timesteps=timestep,\n            embedding_dim=self.sinusoidal_dim,\n            flip_sin_to_cos=False,\n            downscale_freq_shift=0,\n        )\n        emb = emb.to(dtype)\n        emb = self.proj_in(emb)\n        emb = self.act(emb)\n        emb = self.proj_hid(emb)\n        emb = self.act(emb)\n        emb = self.proj_out(emb)\n        return emb\n"
  },
  {
    "path": "modules/seedvr/src/models/dit/mlp.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom typing import Optional\nimport torch\nimport torch.nn.functional as F\nfrom torch import nn\n\n\ndef get_mlp(mlp_type: Optional[str] = \"normal\"):\n    if mlp_type == \"normal\":\n        return MLP\n    elif mlp_type == \"swiglu\":\n        return SwiGLUMLP\n\n\nclass MLP(nn.Module):\n    def __init__(\n        self,\n        dim: int,\n        expand_ratio: int,\n    ):\n        super().__init__()\n        self.proj_in = nn.Linear(dim, dim * expand_ratio)\n        self.act = nn.GELU(\"tanh\")\n        self.proj_out = nn.Linear(dim * expand_ratio, dim)\n\n    def forward(self, x: torch.FloatTensor) -> torch.FloatTensor:\n        x = self.proj_in(x)\n        x = self.act(x)\n        x = self.proj_out(x)\n        return x\n\n\nclass SwiGLUMLP(nn.Module):\n    def __init__(\n        self,\n        dim: int,\n        expand_ratio: int,\n        multiple_of: int = 256,\n    ):\n        super().__init__()\n        hidden_dim = int(2 * dim * expand_ratio / 3)\n        hidden_dim = multiple_of * ((hidden_dim + multiple_of - 1) // multiple_of)\n        self.proj_in_gate = nn.Linear(dim, hidden_dim, bias=False)\n        self.proj_out = nn.Linear(hidden_dim, dim, bias=False)\n        self.proj_in = nn.Linear(dim, hidden_dim, bias=False)\n\n    def forward(self, x: torch.FloatTensor) -> torch.FloatTensor:\n        x = self.proj_out(F.silu(self.proj_in_gate(x)) * self.proj_in(x))\n        return x\n"
  },
  {
    "path": "modules/seedvr/src/models/dit/mm.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom dataclasses import dataclass\nfrom typing import Any, Callable, Dict, List, Tuple\nimport torch\nfrom torch import nn\n\n\n@dataclass\nclass MMArg:\n    vid: Any\n    txt: Any\n\n\ndef get_args(key: str, args: List[Any]) -> List[Any]:\n    return [getattr(v, key) if isinstance(v, MMArg) else v for v in args]\n\n\ndef get_kwargs(key: str, kwargs: Dict[str, Any]) -> Dict[str, Any]:\n    return {k: getattr(v, key) if isinstance(v, MMArg) else v for k, v in kwargs.items()}\n\n\nclass MMModule(nn.Module):\n    def __init__(\n        self,\n        module: Callable[..., nn.Module],\n        *args,\n        shared_weights: bool = False,\n        **kwargs,\n    ):\n        super().__init__()\n        self.shared_weights = shared_weights\n        if self.shared_weights:\n            assert get_args(\"vid\", args) == get_args(\"txt\", args)\n            assert get_kwargs(\"vid\", kwargs) == get_kwargs(\"txt\", kwargs)\n            self.all = module(*get_args(\"vid\", args), **get_kwargs(\"vid\", kwargs))\n        else:\n            self.vid = module(*get_args(\"vid\", args), **get_kwargs(\"vid\", kwargs))\n            self.txt = module(*get_args(\"txt\", args), **get_kwargs(\"txt\", kwargs))\n\n    def forward(\n        self,\n        vid: torch.FloatTensor,\n        txt: torch.FloatTensor,\n        *args,\n        **kwargs,\n    ) -> Tuple[\n        torch.FloatTensor,\n        torch.FloatTensor,\n    ]:\n        vid_module = self.vid if not self.shared_weights else self.all\n        txt_module = self.txt if not self.shared_weights else self.all\n        vid = vid_module(vid, *get_args(\"vid\", args), **get_kwargs(\"vid\", kwargs))\n        txt = txt_module(txt, *get_args(\"txt\", args), **get_kwargs(\"txt\", kwargs))\n        return vid, txt\n"
  },
  {
    "path": "modules/seedvr/src/models/dit/modulation.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom typing import Callable, List, Optional\nimport torch\nfrom einops import rearrange\nfrom torch import nn\n\nfrom ...common.cache import Cache\nfrom ...common.distributed.ops import slice_inputs\n\n# (dim: int, emb_dim: int)\nada_layer_type = Callable[[int, int], nn.Module]\n\n\ndef get_ada_layer(ada_layer: str) -> ada_layer_type:\n    if ada_layer == \"single\":\n        return AdaSingle\n    raise NotImplementedError(f\"{ada_layer} is not supported\")\n\n\ndef expand_dims(x: torch.Tensor, dim: int, ndim: int):\n    \"\"\"\n    Expand tensor \"x\" to \"ndim\" by adding empty dims at \"dim\".\n    Example: x is (b d), target ndim is 5, add dim at 1, return (b 1 1 1 d).\n    \"\"\"\n    shape = x.shape\n    shape = shape[:dim] + (1,) * (ndim - len(shape)) + shape[dim:]\n    return x.reshape(shape)\n\n\nclass AdaSingle(nn.Module):\n    def __init__(\n        self,\n        dim: int,\n        emb_dim: int,\n        layers: List[str],\n    ):\n        assert emb_dim == 6 * dim, \"AdaSingle requires emb_dim == 6 * dim\"\n        super().__init__()\n        self.dim = dim\n        self.emb_dim = emb_dim\n        self.layers = layers\n        for l in layers:\n            self.register_parameter(f\"{l}_shift\", nn.Parameter(torch.randn(dim) / dim**0.5))\n            self.register_parameter(f\"{l}_scale\", nn.Parameter(torch.randn(dim) / dim**0.5 + 1))\n            self.register_parameter(f\"{l}_gate\", nn.Parameter(torch.randn(dim) / dim**0.5))\n\n    def forward(\n        self,\n        hid: torch.FloatTensor,  # b ... c\n        emb: torch.FloatTensor,  # b d\n        layer: str,\n        mode: str,\n        cache: Cache = Cache(disable=True),\n        branch_tag: str = \"\",\n        hid_len: Optional[torch.LongTensor] = None,  # b\n    ) -> torch.FloatTensor:\n        idx = self.layers.index(layer)\n        emb = rearrange(emb, \"b (d l g) -> b d l g\", l=len(self.layers), g=3)[..., idx, :]\n        emb = expand_dims(emb, 1, hid.ndim + 1)\n\n        if hid_len is not None:\n            emb = cache(\n                f\"emb_repeat_{idx}_{branch_tag}\",\n                lambda: slice_inputs(\n                    torch.cat([e.repeat(l, *([1] * e.ndim)) for e, l in zip(emb, hid_len)]),\n                    dim=0,\n                ),\n            )\n\n        shiftA, scaleA, gateA = emb.unbind(-1)\n        shiftB, scaleB, gateB = (\n            getattr(self, f\"{layer}_shift\"),\n            getattr(self, f\"{layer}_scale\"),\n            getattr(self, f\"{layer}_gate\"),\n        )\n\n        if mode == \"in\":\n            return hid.mul_(scaleA + scaleB).add_(shiftA + shiftB)\n        if mode == \"out\":\n            return hid.mul_(gateA + gateB)\n        raise NotImplementedError\n\n    def extra_repr(self) -> str:\n        return f\"dim={self.dim}, emb_dim={self.emb_dim}, layers={self.layers}\"\n"
  },
  {
    "path": "modules/seedvr/src/models/dit/na.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom itertools import chain\nfrom typing import Callable, Dict, List, Tuple\nimport einops\nimport torch\n\n\ndef flatten(\n    hid: List[torch.FloatTensor],  # List of (*** c)\n) -> Tuple[\n    torch.FloatTensor,  # (L c)\n    torch.LongTensor,  # (b n)\n]:\n    assert len(hid) > 0\n    shape = torch.stack([torch.tensor(x.shape[:-1], device=hid[0].device) for x in hid])\n    hid = torch.cat([x.flatten(0, -2) for x in hid])\n    return hid, shape\n\n\ndef unflatten(\n    hid: torch.FloatTensor,  # (L c) or (L ... c)\n    hid_shape: torch.LongTensor,  # (b n)\n) -> List[torch.Tensor]:  # List of (*** c) or (*** ... c)\n    hid_len = hid_shape.prod(-1)\n    hid = hid.split(hid_len.tolist())\n    hid = [x.unflatten(0, s.tolist()) for x, s in zip(hid, hid_shape)]\n    return hid\n\n\ndef concat(\n    vid: torch.FloatTensor,  # (VL ... c)\n    txt: torch.FloatTensor,  # (TL ... c)\n    vid_len: torch.LongTensor,  # (b)\n    txt_len: torch.LongTensor,  # (b)\n) -> torch.FloatTensor:  # (L ... c)\n    vid = torch.split(vid, vid_len.tolist())\n    txt = torch.split(txt, txt_len.tolist())\n    return torch.cat(list(chain(*zip(vid, txt))))\n\n\ndef concat_idx(\n    vid_len: torch.LongTensor,  # (b)\n    txt_len: torch.LongTensor,  # (b)\n) -> Tuple[\n    Callable,\n    Callable,\n]:\n    device = vid_len.device\n    vid_idx = torch.arange(vid_len.sum(), device=device)\n    txt_idx = torch.arange(len(vid_idx), len(vid_idx) + txt_len.sum(), device=device)\n    tgt_idx = concat(vid_idx, txt_idx, vid_len, txt_len)\n    src_idx = torch.argsort(tgt_idx)\n    return (\n        lambda vid, txt: torch.index_select(torch.cat([vid, txt]), 0, tgt_idx),\n        lambda all: torch.index_select(all, 0, src_idx).split([len(vid_idx), len(txt_idx)]),\n    )\n\n\ndef unconcat(\n    all: torch.FloatTensor,  # (L ... c)\n    vid_len: torch.LongTensor,  # (b)\n    txt_len: torch.LongTensor,  # (b)\n) -> Tuple[\n    torch.FloatTensor,  # (VL ... c)\n    torch.FloatTensor,  # (TL ... c)\n]:\n    interleave_len = list(chain(*zip(vid_len.tolist(), txt_len.tolist())))\n    all = all.split(interleave_len)\n    vid = torch.cat(all[0::2])\n    txt = torch.cat(all[1::2])\n    return vid, txt\n\n\ndef repeat_concat(\n    vid: torch.FloatTensor,  # (VL ... c)\n    txt: torch.FloatTensor,  # (TL ... c)\n    vid_len: torch.LongTensor,  # (n*b)\n    txt_len: torch.LongTensor,  # (b)\n    txt_repeat: List,  # (n)\n) -> torch.FloatTensor:  # (L ... c)\n    vid = torch.split(vid, vid_len.tolist())\n    txt = torch.split(txt, txt_len.tolist())\n    txt = [[x] * n for x, n in zip(txt, txt_repeat)]\n    txt = list(chain(*txt))\n    return torch.cat(list(chain(*zip(vid, txt))))\n\n\ndef repeat_concat_idx(\n    vid_len: torch.LongTensor,  # (n*b)\n    txt_len: torch.LongTensor,  # (b)\n    txt_repeat: torch.LongTensor,  # (n)\n) -> Tuple[\n    Callable,\n    Callable,\n]:\n    device = vid_len.device\n    vid_idx = torch.arange(vid_len.sum(), device=device)\n    txt_idx = torch.arange(len(vid_idx), len(vid_idx) + txt_len.sum(), device=device)\n    txt_repeat_list = txt_repeat.tolist()\n    tgt_idx = repeat_concat(vid_idx, txt_idx, vid_len, txt_len, txt_repeat)\n    src_idx = torch.argsort(tgt_idx)\n    txt_idx_len = len(tgt_idx) - len(vid_idx)\n    repeat_txt_len = (txt_len * txt_repeat).tolist()\n\n    def unconcat_coalesce(all):\n        \"\"\"\n        Un-concat vid & txt, and coalesce the repeated txt.\n        e.g. vid [0 1 2 3 4 5 6 7 8] -> 3 splits -> [0 1 2] [3 4 5] [6 7 8]\n             txt [9 10]\n             repeat_concat ==> [0 1 2 9 10 3 4 5 9 10 6 7 8 9 10]\n             1. argsort re-index ==> [0 1 2 3 4 5 6 7 8 9 9 9 10 10 10]\n                           split ==> vid_out [0 1 2 3 4 5 6 7 8] txt_out [9 9 9 10 10 10]\n             2. reshape & mean for each sample to coalesce the repeated txt.\n        \"\"\"\n        vid_out, txt_out = all[src_idx].split([len(vid_idx), txt_idx_len])\n        txt_out_coalesced = []\n        for txt, repeat_time in zip(txt_out.split(repeat_txt_len), txt_repeat_list):\n            txt = txt.reshape(-1, repeat_time, *txt.shape[1:]).mean(1)\n            txt_out_coalesced.append(txt)\n        return vid_out, torch.cat(txt_out_coalesced)\n\n    # Note: Backward of torch.index_select is non-deterministic when existing repeated index,\n    # the difference may cumulative like torch.repeat_interleave, so we use vanilla index here.\n    return (\n        lambda vid, txt: torch.cat([vid, txt])[tgt_idx],\n        lambda all: unconcat_coalesce(all),\n    )\n\n\ndef rearrange(\n    hid: torch.FloatTensor,  # (L c)\n    hid_shape: torch.LongTensor,  # (b n)\n    pattern: str,\n    **kwargs: Dict[str, int],\n) -> Tuple[\n    torch.FloatTensor,\n    torch.LongTensor,\n]:\n    return flatten([einops.rearrange(h, pattern, **kwargs) for h in unflatten(hid, hid_shape)])\n\n\ndef rearrange_idx(\n    hid_shape: torch.LongTensor,  # (b n)\n    pattern: str,\n    **kwargs: Dict[str, int],\n) -> Tuple[Callable, Callable, torch.LongTensor]:\n    hid_idx = torch.arange(hid_shape.prod(-1).sum(), device=hid_shape.device).unsqueeze(-1)\n    tgt_idx, tgt_shape = rearrange(hid_idx, hid_shape, pattern, **kwargs)\n    tgt_idx = tgt_idx.squeeze(-1)\n    src_idx = torch.argsort(tgt_idx)\n    return (\n        lambda hid: torch.index_select(hid, 0, tgt_idx),\n        lambda hid: torch.index_select(hid, 0, src_idx),\n        tgt_shape,\n    )\n\n\ndef repeat(\n    hid: torch.FloatTensor,  # (L c)\n    hid_shape: torch.LongTensor,  # (b n)\n    pattern: str,\n    **kwargs: Dict[str, torch.LongTensor],  # (b)\n) -> Tuple[\n    torch.FloatTensor,\n    torch.LongTensor,\n]:\n    hid = unflatten(hid, hid_shape)\n    kwargs = [{k: v[i].item() for k, v in kwargs.items()} for i in range(len(hid))]\n    return flatten([einops.repeat(h, pattern, **a) for h, a in zip(hid, kwargs)])\n\n\ndef pack(\n    samples: List[torch.Tensor],  # List of (h w c).\n) -> Tuple[\n    List[torch.Tensor],  # groups [(b1 h1 w1 c1), (b2 h2 w2 c2)]\n    List[List[int]],  # reversal indices.\n]:\n    batches = {}\n    indices = {}\n    for i, sample in enumerate(samples):\n        shape = sample.shape\n        batches[shape] = batches.get(shape, [])\n        indices[shape] = indices.get(shape, [])\n        batches[shape].append(sample)\n        indices[shape].append(i)\n\n    batches = list(map(torch.stack, batches.values()))\n    indices = list(indices.values())\n    return batches, indices\n\n\ndef unpack(\n    batches: List[torch.Tensor],\n    indices: List[List[int]],\n) -> List[torch.Tensor]:\n    samples = [None] * (max(chain(*indices)) + 1)\n    for batch, index in zip(batches, indices):\n        for sample, i in zip(batch.unbind(), index):\n            samples[i] = sample\n    return samples\n\n\ndef window(\n    hid: torch.FloatTensor,  # (L c)\n    hid_shape: torch.LongTensor,  # (b n)\n    window_fn: Callable[[torch.Tensor], List[torch.Tensor]],\n):\n    hid = unflatten(hid, hid_shape)\n    hid = list(map(window_fn, hid))\n    hid_windows = torch.tensor(list(map(len, hid)), device=hid_shape.device)\n    hid, hid_shape = flatten(list(chain(*hid)))\n    return hid, hid_shape, hid_windows\n\n\ndef window_idx(\n    hid_shape: torch.LongTensor,  # (b n)\n    window_fn: Callable[[torch.Tensor], List[torch.Tensor]],\n):\n    hid_idx = torch.arange(hid_shape.prod(-1).sum(), device=hid_shape.device).unsqueeze(-1)\n    tgt_idx, tgt_shape, tgt_windows = window(hid_idx, hid_shape, window_fn)\n    tgt_idx = tgt_idx.squeeze(-1)\n    src_idx = torch.argsort(tgt_idx)\n    return (\n        lambda hid: torch.index_select(hid, 0, tgt_idx),\n        lambda hid: torch.index_select(hid, 0, src_idx),\n        tgt_shape,\n        tgt_windows,\n    )\n"
  },
  {
    "path": "modules/seedvr/src/models/dit/nablocks/__init__.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom .mmsr_block import NaMMSRTransformerBlock\n\nnadit_blocks = {\n    \"mmdit_sr\": NaMMSRTransformerBlock,\n}\n\n\ndef get_nablock(block_type: str):\n    if block_type in nadit_blocks:\n        return nadit_blocks[block_type]\n    raise NotImplementedError(f\"{block_type} is not supported\")\n"
  },
  {
    "path": "modules/seedvr/src/models/dit/nablocks/mmsr_block.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom typing import Tuple, Union\nimport torch\nfrom einops import rearrange\nfrom torch.nn import functional as F\n\n# from ..cache import Cache\nfrom ....common.cache import Cache\nfrom ....common.distributed.ops import gather_heads_scatter_seq, gather_seq_scatter_heads_qkv\n\nfrom .. import na\nfrom ..attention import FlashAttentionVarlen\nfrom ..blocks.mmdit_window_block import MMWindowAttention, MMWindowTransformerBlock\nfrom ..mm import MMArg\nfrom ..modulation import ada_layer_type\nfrom ..normalization import norm_layer_type\nfrom ..rope import NaRotaryEmbedding3d\nfrom ..window import get_window_op\nfrom ....common.half_precision_fixes import safe_pad_operation\n\nclass NaSwinAttention(MMWindowAttention):\n    def __init__(\n        self,\n        vid_dim: int,\n        txt_dim: int,\n        heads: int,\n        head_dim: int,\n        qk_bias: bool,\n        qk_rope: bool,\n        qk_norm: norm_layer_type,\n        qk_norm_eps: float,\n        window: Union[int, Tuple[int, int, int]],\n        window_method: str,\n        shared_qkv: bool,\n        **kwargs,\n    ):\n        super().__init__(\n            vid_dim=vid_dim,\n            txt_dim=txt_dim,\n            heads=heads,\n            head_dim=head_dim,\n            qk_bias=qk_bias,\n            qk_rope=qk_rope,\n            qk_norm=qk_norm,\n            qk_norm_eps=qk_norm_eps,\n            window=window,\n            window_method=window_method,\n            shared_qkv=shared_qkv,\n        )\n        self.rope = NaRotaryEmbedding3d(dim=head_dim // 2) if qk_rope else None\n        self.attn = FlashAttentionVarlen()\n        self.window_op = get_window_op(window_method)\n\n    def forward(\n        self,\n        vid: torch.FloatTensor,  # l c\n        txt: torch.FloatTensor,  # l c\n        vid_shape: torch.LongTensor,  # b 3\n        txt_shape: torch.LongTensor,  # b 1\n        cache: Cache,\n    ) -> Tuple[\n        torch.FloatTensor,\n        torch.FloatTensor,\n    ]:\n\n        vid_qkv, txt_qkv = self.proj_qkv(vid, txt)\n        vid_qkv = gather_seq_scatter_heads_qkv(\n            vid_qkv,\n            seq_dim=0,\n            qkv_shape=vid_shape,\n            cache=cache.namespace(\"vid\"),\n        )\n        txt_qkv = gather_seq_scatter_heads_qkv(\n            txt_qkv,\n            seq_dim=0,\n            qkv_shape=txt_shape,\n            cache=cache.namespace(\"txt\"),\n        )\n\n        # re-org the input seq for window attn\n        cache_win = cache.namespace(f\"{self.window_method}_{self.window}_sd3\")\n\n        def make_window(x: torch.Tensor):\n            t, h, w, _ = x.shape\n            window_slices = self.window_op((t, h, w), self.window)\n            return [x[st, sh, sw] for (st, sh, sw) in window_slices]\n\n        window_partition, window_reverse, window_shape, window_count = cache_win(\n            \"win_transform\",\n            lambda: na.window_idx(vid_shape, make_window),\n        )\n        vid_qkv_win = window_partition(vid_qkv)\n\n        vid_qkv_win = rearrange(vid_qkv_win, \"l (o h d) -> l o h d\", o=3, d=self.head_dim)\n        txt_qkv = rearrange(txt_qkv, \"l (o h d) -> l o h d\", o=3, d=self.head_dim)\n\n        vid_q, vid_k, vid_v = vid_qkv_win.unbind(1)\n        txt_q, txt_k, txt_v = txt_qkv.unbind(1)\n\n        vid_q, txt_q = self.norm_q(vid_q, txt_q)\n        vid_k, txt_k = self.norm_k(vid_k, txt_k)\n\n        txt_len = cache(\"txt_len\", lambda: txt_shape.prod(-1))\n\n        vid_len_win = cache_win(\"vid_len\", lambda: window_shape.prod(-1))\n        txt_len_win = cache_win(\"txt_len\", lambda: txt_len.repeat_interleave(window_count))\n        all_len_win = cache_win(\"all_len\", lambda: vid_len_win + txt_len_win)\n        concat_win, unconcat_win = cache_win(\n            \"mm_pnp\", lambda: na.repeat_concat_idx(vid_len_win, txt_len, window_count)\n        )\n\n        # window rope\n        if self.rope:\n            vid_q, vid_k = self.rope(vid_q, vid_k, window_shape, cache_win)\n\n        out = self.attn(\n            q=concat_win(vid_q, txt_q).bfloat16(),\n            k=concat_win(vid_k, txt_k).bfloat16(),\n            v=concat_win(vid_v, txt_v).bfloat16(),\n            cu_seqlens_q=cache_win(\n                \"vid_seqlens_q\", lambda: safe_pad_operation(all_len_win.cumsum(0), (1, 0)).int()\n            ),\n            cu_seqlens_k=cache_win(\n                \"vid_seqlens_k\", lambda: safe_pad_operation(all_len_win.cumsum(0), (1, 0)).int()\n            ),\n            max_seqlen_q=cache_win(\"vid_max_seqlen_q\", lambda: all_len_win.max().item()),\n            max_seqlen_k=cache_win(\"vid_max_seqlen_k\", lambda: all_len_win.max().item()),\n        ).type_as(vid_q)\n\n        # text pooling\n        vid_out, txt_out = unconcat_win(out)\n\n        vid_out = rearrange(vid_out, \"l h d -> l (h d)\")\n        txt_out = rearrange(txt_out, \"l h d -> l (h d)\")\n        vid_out = window_reverse(vid_out)\n\n        vid_out = gather_heads_scatter_seq(vid_out, head_dim=1, seq_dim=0)\n        txt_out = gather_heads_scatter_seq(txt_out, head_dim=1, seq_dim=0)\n\n        vid_out, txt_out = self.proj_out(vid_out, txt_out)\n\n        return vid_out, txt_out\n\n\nclass NaMMSRTransformerBlock(MMWindowTransformerBlock):\n    def __init__(\n        self,\n        *,\n        vid_dim: int,\n        txt_dim: int,\n        emb_dim: int,\n        heads: int,\n        head_dim: int,\n        expand_ratio: int,\n        norm: norm_layer_type,\n        norm_eps: float,\n        ada: ada_layer_type,\n        qk_bias: bool,\n        qk_rope: bool,\n        qk_norm: norm_layer_type,\n        shared_qkv: bool,\n        shared_mlp: bool,\n        mlp_type: str,\n        **kwargs,\n    ):\n        super().__init__(\n            vid_dim=vid_dim,\n            txt_dim=txt_dim,\n            emb_dim=emb_dim,\n            heads=heads,\n            head_dim=head_dim,\n            expand_ratio=expand_ratio,\n            norm=norm,\n            norm_eps=norm_eps,\n            ada=ada,\n            qk_bias=qk_bias,\n            qk_rope=qk_rope,\n            qk_norm=qk_norm,\n            shared_qkv=shared_qkv,\n            shared_mlp=shared_mlp,\n            mlp_type=mlp_type,\n            **kwargs,\n        )\n\n        self.attn = NaSwinAttention(\n            vid_dim=vid_dim,\n            txt_dim=txt_dim,\n            heads=heads,\n            head_dim=head_dim,\n            qk_bias=qk_bias,\n            qk_rope=qk_rope,\n            qk_norm=qk_norm,\n            qk_norm_eps=norm_eps,\n            shared_qkv=shared_qkv,\n            **kwargs,\n        )\n\n    def forward(\n        self,\n        vid: torch.FloatTensor,  # l c\n        txt: torch.FloatTensor,  # l c\n        vid_shape: torch.LongTensor,  # b 3\n        txt_shape: torch.LongTensor,  # b 1\n        emb: torch.FloatTensor,\n        cache: Cache,\n    ) -> Tuple[\n        torch.FloatTensor,\n        torch.FloatTensor,\n        torch.LongTensor,\n        torch.LongTensor,\n    ]:\n        hid_len = MMArg(\n            cache(\"vid_len\", lambda: vid_shape.prod(-1)),\n            cache(\"txt_len\", lambda: txt_shape.prod(-1)),\n        )\n        ada_kwargs = {\n            \"emb\": emb,\n            \"hid_len\": hid_len,\n            \"cache\": cache,\n            \"branch_tag\": MMArg(\"vid\", \"txt\"),\n        }\n\n        vid_attn, txt_attn = self.attn_norm(vid, txt)\n        vid_attn, txt_attn = self.ada(vid_attn, txt_attn, layer=\"attn\", mode=\"in\", **ada_kwargs)\n        vid_attn, txt_attn = self.attn(vid_attn, txt_attn, vid_shape, txt_shape, cache)\n        vid_attn, txt_attn = self.ada(vid_attn, txt_attn, layer=\"attn\", mode=\"out\", **ada_kwargs)\n        vid_attn, txt_attn = (vid_attn + vid), (txt_attn + txt)\n\n        vid_mlp, txt_mlp = self.mlp_norm(vid_attn, txt_attn)\n        vid_mlp, txt_mlp = self.ada(vid_mlp, txt_mlp, layer=\"mlp\", mode=\"in\", **ada_kwargs)\n        vid_mlp, txt_mlp = self.mlp(vid_mlp, txt_mlp)\n        vid_mlp, txt_mlp = self.ada(vid_mlp, txt_mlp, layer=\"mlp\", mode=\"out\", **ada_kwargs)\n        vid_mlp, txt_mlp = (vid_mlp + vid_attn), (txt_mlp + txt_attn)\n\n        return vid_mlp, txt_mlp, vid_shape, txt_shape\n"
  },
  {
    "path": "modules/seedvr/src/models/dit/nadit.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom dataclasses import dataclass\nfrom typing import Optional, Tuple, Union, Callable\nimport torch\nfrom torch import nn\n\nfrom ...common.cache import Cache\nfrom ...common.distributed.ops import slice_inputs\n\nfrom . import na\nfrom .embedding import TimeEmbedding\nfrom .modulation import get_ada_layer\nfrom .nablocks import get_nablock\nfrom .normalization import get_norm_layer\nfrom .patch import NaPatchIn, NaPatchOut\n\n# Fake func, no checkpointing is required for inference\ndef gradient_checkpointing(module: Union[Callable, nn.Module], *args, enabled: bool, **kwargs):\n    return module(*args, **kwargs)\n\n@dataclass\nclass NaDiTOutput:\n    vid_sample: torch.Tensor\n\n\nclass NaDiT(nn.Module):\n    \"\"\"\n    Native Resolution Diffusion Transformer (NaDiT)\n    \"\"\"\n\n    gradient_checkpointing = False\n\n    def __init__(\n        self,\n        vid_in_channels: int,\n        vid_out_channels: int,\n        vid_dim: int,\n        txt_in_dim: Optional[int],\n        txt_dim: Optional[int],\n        emb_dim: int,\n        heads: int,\n        head_dim: int,\n        expand_ratio: int,\n        norm: Optional[str],\n        norm_eps: float,\n        ada: str,\n        qk_bias: bool,\n        qk_rope: bool,\n        qk_norm: Optional[str],\n        patch_size: Union[int, Tuple[int, int, int]],\n        num_layers: int,\n        block_type: Union[str, Tuple[str]],\n        shared_qkv: bool = False,\n        shared_mlp: bool = False,\n        mlp_type: str = \"normal\",\n        window: Optional[Tuple] = None,\n        window_method: Optional[Tuple[str]] = None,\n        temporal_window_size: int = None,\n        temporal_shifted: bool = False,\n        **kwargs,\n    ):\n        ada = get_ada_layer(ada)\n        norm = get_norm_layer(norm)\n        qk_norm = get_norm_layer(qk_norm)\n        if isinstance(block_type, str):\n            block_type = [block_type] * num_layers\n        elif len(block_type) != num_layers:\n            raise ValueError(\"The ``block_type`` list should equal to ``num_layers``.\")\n        super().__init__()\n        self.vid_in = NaPatchIn(\n            in_channels=vid_in_channels,\n            patch_size=patch_size,\n            dim=vid_dim,\n        )\n        self.txt_in = (\n            nn.Linear(txt_in_dim, txt_dim)\n            if txt_in_dim and txt_in_dim != txt_dim\n            else nn.Identity()\n        )\n        self.emb_in = TimeEmbedding(\n            sinusoidal_dim=256,\n            hidden_dim=max(vid_dim, txt_dim),\n            output_dim=emb_dim,\n        )\n\n        if window is None or isinstance(window[0], int):\n            window = [window] * num_layers\n        if window_method is None or isinstance(window_method, str):\n            window_method = [window_method] * num_layers\n        if temporal_window_size is None or isinstance(temporal_window_size, int):\n            temporal_window_size = [temporal_window_size] * num_layers\n        if temporal_shifted is None or isinstance(temporal_shifted, bool):\n            temporal_shifted = [temporal_shifted] * num_layers\n\n        self.blocks = nn.ModuleList(\n            [\n                get_nablock(block_type[i])(\n                    vid_dim=vid_dim,\n                    txt_dim=txt_dim,\n                    emb_dim=emb_dim,\n                    heads=heads,\n                    head_dim=head_dim,\n                    expand_ratio=expand_ratio,\n                    norm=norm,\n                    norm_eps=norm_eps,\n                    ada=ada,\n                    qk_bias=qk_bias,\n                    qk_rope=qk_rope,\n                    qk_norm=qk_norm,\n                    shared_qkv=shared_qkv,\n                    shared_mlp=shared_mlp,\n                    mlp_type=mlp_type,\n                    window=window[i],\n                    window_method=window_method[i],\n                    temporal_window_size=temporal_window_size[i],\n                    temporal_shifted=temporal_shifted[i],\n                    **kwargs,\n                )\n                for i in range(num_layers)\n            ]\n        )\n        self.vid_out = NaPatchOut(\n            out_channels=vid_out_channels,\n            patch_size=patch_size,\n            dim=vid_dim,\n        )\n\n        self.need_txt_repeat = block_type[0] in [\n            \"mmdit_stwin\",\n            \"mmdit_stwin_spatial\",\n            \"mmdit_stwin_3d_spatial\",\n        ]\n\n    def set_gradient_checkpointing(self, enable: bool):\n        self.gradient_checkpointing = enable\n\n    def forward(\n        self,\n        vid: torch.FloatTensor,  # l c\n        txt: torch.FloatTensor,  # l c\n        vid_shape: torch.LongTensor,  # b 3\n        txt_shape: torch.LongTensor,  # b 1\n        timestep: Union[int, float, torch.IntTensor, torch.FloatTensor],  # b\n        disable_cache: bool = True,  # for test\n    ):\n        # Text input.\n        if txt_shape.size(-1) == 1 and self.need_txt_repeat:\n            txt, txt_shape = na.repeat(txt, txt_shape, \"l c -> t l c\", t=vid_shape[:, 0])\n        # slice vid after patching in when using sequence parallelism\n        txt = slice_inputs(txt, dim=0)\n        txt = self.txt_in(txt)\n\n        # Video input.\n        # Sequence parallel slicing is done inside patching class.\n        vid, vid_shape = self.vid_in(vid, vid_shape)\n\n        # Embedding input.\n        emb = self.emb_in(timestep, device=vid.device, dtype=vid.dtype)\n\n        # Body\n        cache = Cache(disable=disable_cache)\n        for i, block in enumerate(self.blocks):\n            vid, txt, vid_shape, txt_shape = gradient_checkpointing(\n                enabled=(self.gradient_checkpointing and self.training),\n                module=block,\n                vid=vid,\n                txt=txt,\n                vid_shape=vid_shape,\n                txt_shape=txt_shape,\n                emb=emb,\n                cache=cache,\n            )\n\n        vid, vid_shape = self.vid_out(vid, vid_shape, cache)\n        return NaDiTOutput(vid_sample=vid)\n\n\nclass NaDiTUpscaler(nn.Module):\n    \"\"\"\n    Native Resolution Diffusion Transformer (NaDiT)\n    \"\"\"\n\n    gradient_checkpointing = False\n\n    def __init__(\n        self,\n        vid_in_channels: int,\n        vid_out_channels: int,\n        vid_dim: int,\n        txt_in_dim: Optional[int],\n        txt_dim: Optional[int],\n        emb_dim: int,\n        heads: int,\n        head_dim: int,\n        expand_ratio: int,\n        norm: Optional[str],\n        norm_eps: float,\n        ada: str,\n        qk_bias: bool,\n        qk_rope: bool,\n        qk_norm: Optional[str],\n        patch_size: Union[int, Tuple[int, int, int]],\n        num_layers: int,\n        block_type: Union[str, Tuple[str]],\n        shared_qkv: bool = False,\n        shared_mlp: bool = False,\n        mlp_type: str = \"normal\",\n        window: Optional[Tuple] = None,\n        window_method: Optional[Tuple[str]] = None,\n        temporal_window_size: int = None,\n        temporal_shifted: bool = False,\n        **kwargs,\n    ):\n        ada = get_ada_layer(ada)\n        norm = get_norm_layer(norm)\n        qk_norm = get_norm_layer(qk_norm)\n        if isinstance(block_type, str):\n            block_type = [block_type] * num_layers\n        elif len(block_type) != num_layers:\n            raise ValueError(\"The ``block_type`` list should equal to ``num_layers``.\")\n        super().__init__()\n        self.vid_in = NaPatchIn(\n            in_channels=vid_in_channels,\n            patch_size=patch_size,\n            dim=vid_dim,\n        )\n        self.txt_in = (\n            nn.Linear(txt_in_dim, txt_dim)\n            if txt_in_dim and txt_in_dim != txt_dim\n            else nn.Identity()\n        )\n        self.emb_in = TimeEmbedding(\n            sinusoidal_dim=256,\n            hidden_dim=max(vid_dim, txt_dim),\n            output_dim=emb_dim,\n        )\n\n        self.emb_scale = TimeEmbedding(\n            sinusoidal_dim=256,\n            hidden_dim=max(vid_dim, txt_dim),\n            output_dim=emb_dim,\n        )\n\n        if window is None or isinstance(window[0], int):\n            window = [window] * num_layers\n        if window_method is None or isinstance(window_method, str):\n            window_method = [window_method] * num_layers\n        if temporal_window_size is None or isinstance(temporal_window_size, int):\n            temporal_window_size = [temporal_window_size] * num_layers\n        if temporal_shifted is None or isinstance(temporal_shifted, bool):\n            temporal_shifted = [temporal_shifted] * num_layers\n\n        self.blocks = nn.ModuleList(\n            [\n                get_nablock(block_type[i])(\n                    vid_dim=vid_dim,\n                    txt_dim=txt_dim,\n                    emb_dim=emb_dim,\n                    heads=heads,\n                    head_dim=head_dim,\n                    expand_ratio=expand_ratio,\n                    norm=norm,\n                    norm_eps=norm_eps,\n                    ada=ada,\n                    qk_bias=qk_bias,\n                    qk_rope=qk_rope,\n                    qk_norm=qk_norm,\n                    shared_qkv=shared_qkv,\n                    shared_mlp=shared_mlp,\n                    mlp_type=mlp_type,\n                    window=window[i],\n                    window_method=window_method[i],\n                    temporal_window_size=temporal_window_size[i],\n                    temporal_shifted=temporal_shifted[i],\n                    **kwargs,\n                )\n                for i in range(num_layers)\n            ]\n        )\n        self.vid_out = NaPatchOut(\n            out_channels=vid_out_channels,\n            patch_size=patch_size,\n            dim=vid_dim,\n        )\n\n        self.need_txt_repeat = block_type[0] in [\n            \"mmdit_stwin\",\n            \"mmdit_stwin_spatial\",\n            \"mmdit_stwin_3d_spatial\",\n        ]\n\n    def set_gradient_checkpointing(self, enable: bool):\n        self.gradient_checkpointing = enable\n\n    def forward(\n        self,\n        vid: torch.FloatTensor,  # l c\n        txt: torch.FloatTensor,  # l c\n        vid_shape: torch.LongTensor,  # b 3\n        txt_shape: torch.LongTensor,  # b 1\n        timestep: Union[int, float, torch.IntTensor, torch.FloatTensor],  # b\n        downscale: Union[int, float, torch.IntTensor, torch.FloatTensor],  # b\n        disable_cache: bool = False,  # for test\n    ):\n\n        # Text input.\n        if txt_shape.size(-1) == 1 and self.need_txt_repeat:\n            txt, txt_shape = na.repeat(txt, txt_shape, \"l c -> t l c\", t=vid_shape[:, 0])\n        # slice vid after patching in when using sequence parallelism\n        txt = slice_inputs(txt, dim=0)\n        txt = self.txt_in(txt)\n\n        # Video input.\n        # Sequence parallel slicing is done inside patching class.\n        vid, vid_shape = self.vid_in(vid, vid_shape)\n\n        # Embedding input.\n        emb = self.emb_in(timestep, device=vid.device, dtype=vid.dtype)\n        emb_scale = self.emb_scale(downscale, device=vid.device, dtype=vid.dtype)\n        emb = emb + emb_scale\n\n        # Body\n        cache = Cache(disable=disable_cache)\n        for i, block in enumerate(self.blocks):\n            vid, txt, vid_shape, txt_shape = gradient_checkpointing(\n                enabled=(self.gradient_checkpointing and self.training),\n                module=block,\n                vid=vid,\n                txt=txt,\n                vid_shape=vid_shape,\n                txt_shape=txt_shape,\n                emb=emb,\n                cache=cache,\n            )\n\n        vid, vid_shape = self.vid_out(vid, vid_shape, cache)\n        return NaDiTOutput(vid_sample=vid)\n"
  },
  {
    "path": "modules/seedvr/src/models/dit/normalization.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom typing import Callable, Optional\nfrom diffusers.models.normalization import RMSNorm\nfrom torch import nn\nimport torch\nimport torch.nn.functional as F\nimport numbers\nfrom torch.nn.parameter import Parameter\nfrom torch.nn import init\n\n# (dim: int, eps: float, elementwise_affine: bool)\nnorm_layer_type = Callable[[int, float, bool], nn.Module]\n\n\nclass CustomLayerNorm(nn.Module):\n    \"\"\"\n    Custom LayerNorm implementation to replace Apex FusedLayerNorm\n    \"\"\"\n    def __init__(self, normalized_shape, eps=1e-5, elementwise_affine=True):\n        super(CustomLayerNorm, self).__init__()\n\n        if isinstance(normalized_shape, numbers.Integral):\n            normalized_shape = (normalized_shape,)\n        self.normalized_shape = torch.Size(normalized_shape)\n        self.eps = eps\n        self.elementwise_affine = elementwise_affine\n\n        if self.elementwise_affine:\n            self.weight = Parameter(torch.Tensor(*normalized_shape))\n            self.bias = Parameter(torch.Tensor(*normalized_shape))\n        else:\n            self.register_parameter('weight', None)\n            self.register_parameter('bias', None)\n        self.reset_parameters()\n\n    def reset_parameters(self):\n        if self.elementwise_affine:\n            init.ones_(self.weight)\n            init.zeros_(self.bias)\n\n    def forward(self, input):\n        return F.layer_norm(\n            input, self.normalized_shape, self.weight, self.bias, self.eps)\n\n\nclass CustomRMSNorm(nn.Module):\n    \"\"\"\n    Custom RMSNorm implementation to replace Apex FusedRMSNorm\n    \"\"\"\n    def __init__(self, normalized_shape, eps=1e-5, elementwise_affine=True):\n        super(CustomRMSNorm, self).__init__()\n\n        if isinstance(normalized_shape, numbers.Integral):\n            normalized_shape = (normalized_shape,)\n        self.normalized_shape = torch.Size(normalized_shape)\n        self.eps = eps\n        self.elementwise_affine = elementwise_affine\n\n        if self.elementwise_affine:\n            self.weight = Parameter(torch.ones(*normalized_shape))\n        else:\n            self.register_parameter('weight', None)\n\n    def forward(self, input):\n        # RMS normalization: x / sqrt(mean(x^2) + eps) * weight\n        dims = tuple(range(-len(self.normalized_shape), 0))\n\n        # Calculate RMS: sqrt(mean(x^2))\n        variance = input.pow(2).mean(dim=dims, keepdim=True)\n        rms = torch.sqrt(variance + self.eps)\n\n        # Normalize\n        normalized = input / rms\n\n        if self.elementwise_affine:\n            return normalized * self.weight\n        return normalized\n\n\ndef get_norm_layer(norm_type: Optional[str]) -> norm_layer_type:\n\n    def _norm_layer(dim: int, eps: float, elementwise_affine: bool):\n        if norm_type is None:\n            return nn.Identity()\n\n        if norm_type == \"layer\":\n            return nn.LayerNorm(\n                normalized_shape=dim,\n                eps=eps,\n                elementwise_affine=elementwise_affine,\n            )\n\n        if norm_type == \"rms\":\n            return RMSNorm(\n                dim=dim,\n                eps=eps,\n                elementwise_affine=elementwise_affine,\n            )\n\n        if norm_type == \"fusedln\":\n            # Use custom LayerNorm instead of Apex FusedLayerNorm\n            return CustomLayerNorm(\n                normalized_shape=dim,\n                elementwise_affine=elementwise_affine,\n                eps=eps,\n            )\n\n        if norm_type == \"fusedrms\":\n            # Use custom RMSNorm instead of Apex FusedRMSNorm\n            return CustomRMSNorm(\n                normalized_shape=dim,\n                elementwise_affine=elementwise_affine,\n                eps=eps,\n            )\n\n        raise NotImplementedError(f\"{norm_type} is not supported\")\n\n    return _norm_layer\n"
  },
  {
    "path": "modules/seedvr/src/models/dit/patch.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom typing import Tuple, Union\nimport torch\nfrom einops import rearrange\nfrom torch import nn\nfrom torch.nn.modules.utils import _triple\n\nfrom ...common.cache import Cache\nfrom ...common.distributed.ops import gather_outputs, slice_inputs\n\nfrom . import na\n\n\nclass PatchIn(nn.Module):\n    def __init__(\n        self,\n        in_channels: int,\n        patch_size: Union[int, Tuple[int, int, int]],\n        dim: int,\n    ):\n        super().__init__()\n        t, h, w = _triple(patch_size)\n        self.patch_size = t, h, w\n        self.proj = nn.Linear(in_channels * t * h * w, dim)\n\n    def forward(\n        self,\n        vid: torch.Tensor,\n    ) -> torch.Tensor:\n        t, h, w = self.patch_size\n        vid = rearrange(vid, \"b c (T t) (H h) (W w) -> b T H W (t h w c)\", t=t, h=h, w=w)\n        vid = self.proj(vid)\n        return vid\n\n\nclass PatchOut(nn.Module):\n    def __init__(\n        self,\n        out_channels: int,\n        patch_size: Union[int, Tuple[int, int, int]],\n        dim: int,\n    ):\n        super().__init__()\n        t, h, w = _triple(patch_size)\n        self.patch_size = t, h, w\n        self.proj = nn.Linear(dim, out_channels * t * h * w)\n\n    def forward(\n        self,\n        vid: torch.Tensor,\n    ) -> torch.Tensor:\n        t, h, w = self.patch_size\n        vid = self.proj(vid)\n        vid = rearrange(vid, \"b T H W (t h w c) -> b c (T t) (H h) (W w)\", t=t, h=h, w=w)\n        return vid\n\n\nclass NaPatchIn(PatchIn):\n    def forward(\n        self,\n        vid: torch.Tensor,  # l c\n        vid_shape: torch.LongTensor,\n    ) -> torch.Tensor:\n        t, h, w = self.patch_size\n        if not (t == h == w == 1):\n            vid, vid_shape = na.rearrange(\n                vid, vid_shape, \"(T t) (H h) (W w) c -> T H W (t h w c)\", t=t, h=h, w=w\n            )\n        # slice vid after patching in when using sequence parallelism\n        vid = slice_inputs(vid, dim=0)\n        vid = self.proj(vid)\n        return vid, vid_shape\n\n\nclass NaPatchOut(PatchOut):\n    def forward(\n        self,\n        vid: torch.FloatTensor,  # l c\n        vid_shape: torch.LongTensor,\n        cache: Cache = Cache(disable=True),\n    ) -> Tuple[\n        torch.FloatTensor,\n        torch.LongTensor,\n    ]:\n        t, h, w = self.patch_size\n        vid = self.proj(vid)\n        # gather vid before patching out when enabling sequence parallelism\n        vid = gather_outputs(\n            vid,\n            gather_dim=0,\n            padding_dim=0,\n            unpad_shape=vid_shape,\n            cache=cache.namespace(\"vid\"),\n        )\n        if not (t == h == w == 1):\n            vid, vid_shape = na.rearrange(\n                vid, vid_shape, \"T H W (t h w c) -> (T t) (H h) (W w) c\", t=t, h=h, w=w\n            )\n        return vid, vid_shape\n"
  },
  {
    "path": "modules/seedvr/src/models/dit/rope.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom functools import lru_cache\nfrom typing import Tuple\nimport torch\nfrom einops import rearrange\nfrom torch import nn\nfrom ...common.cache import Cache\nfrom ....rotary_embedding import RotaryEmbedding\n\n\nclass RotaryEmbeddingBase(nn.Module):\n    def __init__(self, dim: int, rope_dim: int):\n        super().__init__()\n        self.rope = RotaryEmbedding(\n            dim=dim // rope_dim,\n            freqs_for=\"pixel\",\n            max_freq=256,\n        )\n        # 1. Set model.requires_grad_(True) after model creation will make\n        #    the `requires_grad=False` for rope freqs no longer hold.\n        # 2. Even if we don't set requires_grad_(True) explicitly,\n        #    FSDP is not memory efficient when handling fsdp_wrap\n        #    with mixed requires_grad=True/False.\n        # With above consideration, it is easier just remove the freqs\n        # out of nn.Parameters when `learned_freq=False`\n        freqs = self.rope.freqs\n        del self.rope.freqs\n        self.rope.register_buffer(\"freqs\", freqs.data)\n\n    @lru_cache(maxsize=128)\n    def get_axial_freqs(self, *dims):\n        return self.rope.get_axial_freqs(*dims)\n\n\nclass RotaryEmbedding3d(RotaryEmbeddingBase):\n    def __init__(self, dim: int):\n        super().__init__(dim, rope_dim=3)\n\n    def forward(\n        self,\n        q: torch.FloatTensor,  # b h l d\n        k: torch.FloatTensor,  # b h l d\n        size: Tuple[int, int, int],\n    ) -> Tuple[\n        torch.FloatTensor,\n        torch.FloatTensor,\n    ]:\n        T, H, W = size\n        freqs = self.get_axial_freqs(T, H, W)\n        q = rearrange(q, \"b h (T H W) d -> b h T H W d\", T=T, H=H, W=W)\n        k = rearrange(k, \"b h (T H W) d -> b h T H W d\", T=T, H=H, W=W)\n        q = apply_rotary_emb(freqs, q)\n        k = apply_rotary_emb(freqs, k)\n        q = rearrange(q, \"b h T H W d -> b h (T H W) d\")\n        k = rearrange(k, \"b h T H W d -> b h (T H W) d\")\n        return q, k\n\n\nclass NaRotaryEmbedding3d(RotaryEmbedding3d):\n    def forward(\n        self,\n        q: torch.FloatTensor,  # L h d\n        k: torch.FloatTensor,  # L h d\n        shape: torch.LongTensor,\n        cache: Cache,\n    ) -> Tuple[\n        torch.FloatTensor,\n        torch.FloatTensor,\n    ]:\n        freqs = cache(\"rope_freqs_3d\", lambda: self.get_freqs(shape))\n        freqs = freqs.to(device=q.device, dtype=q.dtype)\n        q = rearrange(q, \"L h d -> h L d\")\n        k = rearrange(k, \"L h d -> h L d\")\n        q = apply_rotary_emb(freqs, q.float()).to(q.dtype)\n        k = apply_rotary_emb(freqs, k.float()).to(k.dtype)\n        q = rearrange(q, \"h L d -> L h d\")\n        k = rearrange(k, \"h L d -> L h d\")\n        return q, k\n\n    def get_freqs(\n        self,\n        shape: torch.LongTensor,\n    ) -> torch.Tensor:\n        freq_list = []\n        for f, h, w in shape.tolist():\n            freqs = self.get_axial_freqs(f, h, w)\n            freq_list.append(freqs.view(-1, freqs.size(-1)))\n        return torch.cat(freq_list, dim=0)\n"
  },
  {
    "path": "modules/seedvr/src/models/dit/window.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom math import ceil\nfrom typing import Tuple\nimport math\n\ndef get_window_op(name: str):\n    if name == \"720pwin_by_size_bysize\":\n        return make_720Pwindows_bysize\n    if name == \"720pswin_by_size_bysize\":\n        return make_shifted_720Pwindows_bysize\n    raise ValueError(f\"Unknown windowing method: {name}\")\n\n\n# -------------------------------- Windowing -------------------------------- #\ndef make_720Pwindows_bysize(size: Tuple[int, int, int], num_windows: Tuple[int, int, int]):\n    t, h, w = size\n    resized_nt, resized_nh, resized_nw = num_windows\n    #cal windows under 720p\n    scale = math.sqrt((45 * 80) / (h * w))\n    resized_h, resized_w = round(h * scale), round(w * scale)\n    wh, ww = ceil(resized_h / resized_nh), ceil(resized_w / resized_nw)  # window size.\n    wt = ceil(min(t, 30) / resized_nt)  # window size.\n    nt, nh, nw = ceil(t / wt), ceil(h / wh), ceil(w / ww)  # window size.\n    return [\n        (\n            slice(it * wt, min((it + 1) * wt, t)),\n            slice(ih * wh, min((ih + 1) * wh, h)),\n            slice(iw * ww, min((iw + 1) * ww, w)),\n        )\n        for iw in range(nw)\n        if min((iw + 1) * ww, w) > iw * ww\n        for ih in range(nh)\n        if min((ih + 1) * wh, h) > ih * wh\n        for it in range(nt)\n        if min((it + 1) * wt, t) > it * wt\n    ]\n\ndef make_shifted_720Pwindows_bysize(size: Tuple[int, int, int], num_windows: Tuple[int, int, int]):\n    t, h, w = size\n    resized_nt, resized_nh, resized_nw = num_windows\n    #cal windows under 720p\n    scale = math.sqrt((45 * 80) / (h * w))\n    resized_h, resized_w = round(h * scale), round(w * scale)\n    wh, ww = ceil(resized_h / resized_nh), ceil(resized_w / resized_nw)  # window size.\n    wt = ceil(min(t, 30) / resized_nt)  # window size.\n\n    st, sh, sw = (  # shift size.\n        0.5 if wt < t else 0,\n        0.5 if wh < h else 0,\n        0.5 if ww < w else 0,\n    )\n    nt, nh, nw = ceil((t - st) / wt), ceil((h - sh) / wh), ceil((w - sw) / ww)  # window size.\n    nt, nh, nw = (  # number of window.\n        nt + 1 if st > 0 else 1,\n        nh + 1 if sh > 0 else 1,\n        nw + 1 if sw > 0 else 1,\n    )\n    return [\n        (\n            slice(max(int((it - st) * wt), 0), min(int((it - st + 1) * wt), t)),\n            slice(max(int((ih - sh) * wh), 0), min(int((ih - sh + 1) * wh), h)),\n            slice(max(int((iw - sw) * ww), 0), min(int((iw - sw + 1) * ww), w)),\n        )\n        for iw in range(nw)\n        if min(int((iw - sw + 1) * ww), w) > max(int((iw - sw) * ww), 0)\n        for ih in range(nh)\n        if min(int((ih - sh + 1) * wh), h) > max(int((ih - sh) * wh), 0)\n        for it in range(nt)\n        if min(int((it - st + 1) * wt), t) > max(int((it - st) * wt), 0)\n    ]\n"
  },
  {
    "path": "modules/seedvr/src/models/dit_v2/attention.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nimport torch\nimport torch.nn.functional as F\n\n#from flash_attn import flash_attn_varlen_func\n\nfrom torch import nn\n\n\ndef pytorch_varlen_attention(q, k, v, cu_seqlens_q, cu_seqlens_k, max_seqlen_q, max_seqlen_k, dropout_p=0.0, softmax_scale=None, causal=False, deterministic=False):\n    \"\"\"\n    A PyTorch-based implementation of variable-length attention to replace flash_attn_varlen_func.\n    It processes each sequence in the batch individually.\n    \"\"\"\n    # Create an empty tensor to store the output.\n    output = torch.empty_like(q)\n\n    # Iterate over each sequence in the batch. The batch size is the number of sequences.\n    for i in range(len(cu_seqlens_q) - 1):\n        # Determine the start and end indices for the current sequence.\n        start_q, end_q = cu_seqlens_q[i], cu_seqlens_q[i+1]\n        start_k, end_k = cu_seqlens_k[i], cu_seqlens_k[i+1]\n\n        # Slice the q, k, and v tensors to get the data for the current sequence.\n        # The shape is (seq_len, heads, head_dim).\n        q_i = q[start_q:end_q]\n        k_i = k[start_k:end_k]\n        v_i = v[start_k:end_k]\n\n        # Reshape for torch's scaled_dot_product_attention which expects (batch, heads, seq, dim).\n        # Here, we treat each sequence as a batch of 1.\n        q_i = q_i.permute(1, 0, 2).unsqueeze(0) # (1, heads, seq_len_q, head_dim)\n        k_i = k_i.permute(1, 0, 2).unsqueeze(0) # (1, heads, seq_len_k, head_dim)\n        v_i = v_i.permute(1, 0, 2).unsqueeze(0) # (1, heads, seq_len_k, head_dim)\n\n        # Use PyTorch's built-in scaled dot-product attention.\n        output_i = F.scaled_dot_product_attention(\n            q_i, k_i, v_i,\n            dropout_p=dropout_p if not deterministic else 0.0,\n            is_causal=causal\n        )\n\n        # Reshape the output back to the original format (seq_len, heads, head_dim)\n        output_i = output_i.squeeze(0).permute(1, 0, 2)\n\n        # Place the result for the current sequence into the main output tensor.\n        output[start_q:end_q] = output_i\n\n    return output\n\nclass TorchAttention(nn.Module):\n    def tflops(self, args, kwargs, output) -> float:\n        assert len(args) == 0 or len(args) > 2, \"query, key should both provided by args / kwargs\"\n        q = kwargs.get(\"query\") or args[0]\n        k = kwargs.get(\"key\") or args[1]\n        b, h, sq, d = q.shape\n        b, h, sk, d = k.shape\n        return b * h * (4 * d * (sq / 1e6) * (sk / 1e6))\n\n    def forward(self, *args, **kwargs):\n        return F.scaled_dot_product_attention(*args, **kwargs)\n\n\nclass FlashAttentionVarlen(nn.Module):\n    def tflops(self, args, kwargs, output) -> float:\n        cu_seqlens_q = kwargs[\"cu_seqlens_q\"]\n        cu_seqlens_k = kwargs[\"cu_seqlens_k\"]\n        _, h, d = output.shape\n        seqlens_q = (cu_seqlens_q[1:] - cu_seqlens_q[:-1]) / 1e6\n        seqlens_k = (cu_seqlens_k[1:] - cu_seqlens_k[:-1]) / 1e6\n        return h * (4 * d * (seqlens_q * seqlens_k).sum())\n\n    def forward(self, *args, **kwargs):\n        kwargs[\"deterministic\"] = torch.are_deterministic_algorithms_enabled()\n        try:\n            from flash_attn import flash_attn_varlen_func\n            return flash_attn_varlen_func(*args, **kwargs)\n        except ImportError:\n            return pytorch_varlen_attention(*args, **kwargs)\n"
  },
  {
    "path": "modules/seedvr/src/models/dit_v2/embedding.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom typing import Optional, Union\nimport torch\nfrom diffusers.models.embeddings import get_timestep_embedding\nfrom torch import nn\n\n\ndef emb_add(emb1: torch.Tensor, emb2: Optional[torch.Tensor]):\n    return emb1 if emb2 is None else emb1 + emb2\n\n\nclass TimeEmbedding(nn.Module):\n    def __init__(\n        self,\n        sinusoidal_dim: int,\n        hidden_dim: int,\n        output_dim: int,\n    ):\n        super().__init__()\n        self.sinusoidal_dim = sinusoidal_dim\n        self.proj_in = nn.Linear(sinusoidal_dim, hidden_dim)\n        self.proj_hid = nn.Linear(hidden_dim, hidden_dim)\n        self.proj_out = nn.Linear(hidden_dim, output_dim)\n        self.act = nn.SiLU()\n\n    def forward(\n        self,\n        timestep: Union[int, float, torch.IntTensor, torch.FloatTensor],\n        device: torch.device,\n        dtype: torch.dtype,\n    ) -> torch.FloatTensor:\n        if not torch.is_tensor(timestep):\n            timestep = torch.tensor([timestep], device=device, dtype=dtype)\n        if timestep.ndim == 0:\n            timestep = timestep[None]\n\n        emb = get_timestep_embedding(\n            timesteps=timestep,\n            embedding_dim=self.sinusoidal_dim,\n            flip_sin_to_cos=False,\n            downscale_freq_shift=0,\n        )\n        emb = emb.to(dtype)\n        emb = self.proj_in(emb)\n        emb = self.act(emb)\n        emb = self.proj_hid(emb)\n        emb = self.act(emb)\n        emb = self.proj_out(emb)\n        return emb\n"
  },
  {
    "path": "modules/seedvr/src/models/dit_v2/mlp.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom typing import Optional\nimport torch\nimport torch.nn.functional as F\nfrom torch import nn\n\n\ndef get_mlp(mlp_type: Optional[str] = \"normal\"):\n    if mlp_type == \"normal\":\n        return MLP\n    elif mlp_type == \"swiglu\":\n        return SwiGLUMLP\n\n\nclass MLP(nn.Module):\n    def __init__(\n        self,\n        dim: int,\n        expand_ratio: int,\n    ):\n        super().__init__()\n        self.proj_in = nn.Linear(dim, dim * expand_ratio)\n        self.act = nn.GELU(\"tanh\")\n        self.proj_out = nn.Linear(dim * expand_ratio, dim)\n\n    def forward(self, x: torch.FloatTensor) -> torch.FloatTensor:\n        x = self.proj_in(x)\n        x = self.act(x)\n        x = self.proj_out(x)\n        return x\n\n\nclass SwiGLUMLP(nn.Module):\n    def __init__(\n        self,\n        dim: int,\n        expand_ratio: int,\n        multiple_of: int = 256,\n    ):\n        super().__init__()\n        hidden_dim = int(2 * dim * expand_ratio / 3)\n        hidden_dim = multiple_of * ((hidden_dim + multiple_of - 1) // multiple_of)\n        self.proj_in_gate = nn.Linear(dim, hidden_dim, bias=False)\n        self.proj_out = nn.Linear(hidden_dim, dim, bias=False)\n        self.proj_in = nn.Linear(dim, hidden_dim, bias=False)\n\n    def forward(self, x: torch.FloatTensor) -> torch.FloatTensor:\n        x = self.proj_out(F.silu(self.proj_in_gate(x)) * self.proj_in(x))\n        return x\n"
  },
  {
    "path": "modules/seedvr/src/models/dit_v2/mm.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom dataclasses import dataclass\nfrom typing import Any, Callable, Dict, List, Tuple\nimport torch\nfrom torch import nn\n\n\n@dataclass\nclass MMArg:\n    vid: Any\n    txt: Any\n\n\ndef get_args(key: str, args: List[Any]) -> List[Any]:\n    return [getattr(v, key) if isinstance(v, MMArg) else v for v in args]\n\n\ndef get_kwargs(key: str, kwargs: Dict[str, Any]) -> Dict[str, Any]:\n    return {k: getattr(v, key) if isinstance(v, MMArg) else v for k, v in kwargs.items()}\n\n\nclass MMModule(nn.Module):\n    def __init__(\n        self,\n        module: Callable[..., nn.Module],\n        *args,\n        shared_weights: bool = False,\n        vid_only: bool = False,\n        **kwargs,\n    ):\n        super().__init__()\n        self.shared_weights = shared_weights\n        self.vid_only = vid_only\n        if self.shared_weights:\n            assert get_args(\"vid\", args) == get_args(\"txt\", args)\n            assert get_kwargs(\"vid\", kwargs) == get_kwargs(\"txt\", kwargs)\n            self.all = module(*get_args(\"vid\", args), **get_kwargs(\"vid\", kwargs))\n        else:\n            self.vid = module(*get_args(\"vid\", args), **get_kwargs(\"vid\", kwargs))\n            self.txt = (\n                module(*get_args(\"txt\", args), **get_kwargs(\"txt\", kwargs))\n                if not vid_only\n                else None\n            )\n\n    def forward(\n        self,\n        vid: torch.FloatTensor,\n        txt: torch.FloatTensor,\n        *args,\n        **kwargs,\n    ) -> Tuple[\n        torch.FloatTensor,\n        torch.FloatTensor,\n    ]:\n        vid_module = self.vid if not self.shared_weights else self.all\n        vid = vid_module(vid, *get_args(\"vid\", args), **get_kwargs(\"vid\", kwargs))\n        if not self.vid_only:\n            txt_module = self.txt if not self.shared_weights else self.all\n            txt = txt_module(txt, *get_args(\"txt\", args), **get_kwargs(\"txt\", kwargs))\n        return vid, txt\n"
  },
  {
    "path": "modules/seedvr/src/models/dit_v2/modulation.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom typing import Callable, List, Optional\nimport torch\nfrom einops import rearrange\nfrom torch import nn\n\nfrom ...common.cache import Cache\nfrom ...common.distributed.ops import slice_inputs\n\n# (dim: int, emb_dim: int)\nada_layer_type = Callable[[int, int], nn.Module]\n\n\ndef get_ada_layer(ada_layer: str) -> ada_layer_type:\n    if ada_layer == \"single\":\n        return AdaSingle\n    raise NotImplementedError(f\"{ada_layer} is not supported\")\n\n\ndef expand_dims(x: torch.Tensor, dim: int, ndim: int):\n    \"\"\"\n    Expand tensor \"x\" to \"ndim\" by adding empty dims at \"dim\".\n    Example: x is (b d), target ndim is 5, add dim at 1, return (b 1 1 1 d).\n    \"\"\"\n    shape = x.shape\n    shape = shape[:dim] + (1,) * (ndim - len(shape)) + shape[dim:]\n    return x.reshape(shape)\n\n\nclass AdaSingle(nn.Module):\n    def __init__(\n        self,\n        dim: int,\n        emb_dim: int,\n        layers: List[str],\n        modes: List[str] = [\"in\", \"out\"],\n    ):\n        assert emb_dim == 6 * dim, \"AdaSingle requires emb_dim == 6 * dim\"\n        super().__init__()\n        self.dim = dim\n        self.emb_dim = emb_dim\n        self.layers = layers\n        for l in layers:\n            if \"in\" in modes:\n                self.register_parameter(f\"{l}_shift\", nn.Parameter(torch.randn(dim) / dim**0.5))\n                self.register_parameter(\n                    f\"{l}_scale\", nn.Parameter(torch.randn(dim) / dim**0.5 + 1)\n                )\n            if \"out\" in modes:\n                self.register_parameter(f\"{l}_gate\", nn.Parameter(torch.randn(dim) / dim**0.5))\n\n    def forward(\n        self,\n        hid: torch.FloatTensor,  # b ... c\n        emb: torch.FloatTensor,  # b d\n        layer: str,\n        mode: str,\n        cache: Cache = Cache(disable=True),\n        branch_tag: str = \"\",\n        hid_len: Optional[torch.LongTensor] = None,  # b\n    ) -> torch.FloatTensor:\n        idx = self.layers.index(layer)\n        emb = rearrange(emb, \"b (d l g) -> b d l g\", l=len(self.layers), g=3)[..., idx, :]\n        emb = expand_dims(emb, 1, hid.ndim + 1)\n\n        if hid_len is not None:\n            emb = cache(\n                f\"emb_repeat_{idx}_{branch_tag}\",\n                lambda: slice_inputs(\n                    torch.cat([e.repeat(l, *([1] * e.ndim)) for e, l in zip(emb, hid_len)]),\n                    dim=0,\n                ),\n            )\n\n        shiftA, scaleA, gateA = emb.unbind(-1)\n        shiftB, scaleB, gateB = (\n            getattr(self, f\"{layer}_shift\", None),\n            getattr(self, f\"{layer}_scale\", None),\n            getattr(self, f\"{layer}_gate\", None),\n        )\n\n        # 🚀 FP8 COMPATIBILITY: Convert parameters to match embedding dtype\n        # This prevents \"Promotion for Float8 Types is not supported\" errors\n        target_dtype = shiftA.dtype\n\n        if mode == \"in\":\n            # Convert parameters to match embedding dtype for FP8 compatibility\n            if scaleB is not None and scaleB.dtype != target_dtype:\n                scaleB = scaleB.to(target_dtype)\n            if shiftB is not None and shiftB.dtype != target_dtype:\n                shiftB = shiftB.to(target_dtype)\n\n            return hid.mul_(scaleA + scaleB).add_(shiftA + shiftB)\n\n        if mode == \"out\":\n            # Convert gate parameter to match embedding dtype for FP8 compatibility\n            if gateB is not None and gateB.dtype != target_dtype:\n                gateB = gateB.to(target_dtype)\n\n            return hid.mul_(gateA + gateB)\n\n        raise NotImplementedError\n\n    def extra_repr(self) -> str:\n        return f\"dim={self.dim}, emb_dim={self.emb_dim}, layers={self.layers}\"\n"
  },
  {
    "path": "modules/seedvr/src/models/dit_v2/na.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom itertools import chain\nfrom typing import Callable, Dict, List, Tuple\nimport einops\nimport torch\n\n\ndef flatten(\n    hid: List[torch.FloatTensor],  # List of (*** c)\n) -> Tuple[\n    torch.FloatTensor,  # (L c)\n    torch.LongTensor,  # (b n)\n]:\n    assert len(hid) > 0\n    shape = torch.stack([torch.tensor(x.shape[:-1], device=hid[0].device) for x in hid])\n    hid = torch.cat([x.flatten(0, -2) for x in hid])\n    return hid, shape\n\n\ndef unflatten(\n    hid: torch.FloatTensor,  # (L c) or (L ... c)\n    hid_shape: torch.LongTensor,  # (b n)\n) -> List[torch.Tensor]:  # List of (*** c) or (*** ... c)\n    hid_len = hid_shape.prod(-1)\n    hid = hid.split(hid_len.tolist())\n    hid = [x.unflatten(0, s.tolist()) for x, s in zip(hid, hid_shape)]\n    return hid\n\n\ndef concat(\n    vid: torch.FloatTensor,  # (VL ... c)\n    txt: torch.FloatTensor,  # (TL ... c)\n    vid_len: torch.LongTensor,  # (b)\n    txt_len: torch.LongTensor,  # (b)\n) -> torch.FloatTensor:  # (L ... c)\n    vid = torch.split(vid, vid_len.tolist())\n    txt = torch.split(txt, txt_len.tolist())\n    return torch.cat(list(chain(*zip(vid, txt))))\n\n\ndef concat_idx(\n    vid_len: torch.LongTensor,  # (b)\n    txt_len: torch.LongTensor,  # (b)\n) -> Tuple[\n    Callable,\n    Callable,\n]:\n    device = vid_len.device\n    vid_idx = torch.arange(vid_len.sum(), device=device)\n    txt_idx = torch.arange(len(vid_idx), len(vid_idx) + txt_len.sum(), device=device)\n    tgt_idx = concat(vid_idx, txt_idx, vid_len, txt_len)\n    src_idx = torch.argsort(tgt_idx)\n    return (\n        lambda vid, txt: torch.index_select(torch.cat([vid, txt]), 0, tgt_idx),\n        lambda all: torch.index_select(all, 0, src_idx).split([len(vid_idx), len(txt_idx)]),\n    )\n\n\ndef unconcat(\n    all: torch.FloatTensor,  # (L ... c)\n    vid_len: torch.LongTensor,  # (b)\n    txt_len: torch.LongTensor,  # (b)\n) -> Tuple[\n    torch.FloatTensor,  # (VL ... c)\n    torch.FloatTensor,  # (TL ... c)\n]:\n    interleave_len = list(chain(*zip(vid_len.tolist(), txt_len.tolist())))\n    all = all.split(interleave_len)\n    vid = torch.cat(all[0::2])\n    txt = torch.cat(all[1::2])\n    return vid, txt\n\n\ndef repeat_concat(\n    vid: torch.FloatTensor,  # (VL ... c)\n    txt: torch.FloatTensor,  # (TL ... c)\n    vid_len: torch.LongTensor,  # (n*b)\n    txt_len: torch.LongTensor,  # (b)\n    txt_repeat: List,  # (n)\n) -> torch.FloatTensor:  # (L ... c)\n    vid = torch.split(vid, vid_len.tolist())\n    txt = torch.split(txt, txt_len.tolist())\n    txt = [[x] * n for x, n in zip(txt, txt_repeat)]\n    txt = list(chain(*txt))\n    return torch.cat(list(chain(*zip(vid, txt))))\n\n\ndef repeat_concat_idx(\n    vid_len: torch.LongTensor,  # (n*b)\n    txt_len: torch.LongTensor,  # (b)\n    txt_repeat: torch.LongTensor,  # (n)\n) -> Tuple[\n    Callable,\n    Callable,\n]:\n    device = vid_len.device\n    vid_idx = torch.arange(vid_len.sum(), device=device)\n    txt_idx = torch.arange(len(vid_idx), len(vid_idx) + txt_len.sum(), device=device)\n    txt_repeat_list = txt_repeat.tolist()\n    tgt_idx = repeat_concat(vid_idx, txt_idx, vid_len, txt_len, txt_repeat)\n    src_idx = torch.argsort(tgt_idx)\n    txt_idx_len = len(tgt_idx) - len(vid_idx)\n    repeat_txt_len = (txt_len * txt_repeat).tolist()\n\n    def unconcat_coalesce(all):\n        \"\"\"\n        Un-concat vid & txt, and coalesce the repeated txt.\n        e.g. vid [0 1 2 3 4 5 6 7 8] -> 3 splits -> [0 1 2] [3 4 5] [6 7 8]\n             txt [9 10]\n             repeat_concat ==> [0 1 2 9 10 3 4 5 9 10 6 7 8 9 10]\n             1. argsort re-index ==> [0 1 2 3 4 5 6 7 8 9 9 9 10 10 10]\n                           split ==> vid_out [0 1 2 3 4 5 6 7 8] txt_out [9 9 9 10 10 10]\n             2. reshape & mean for each sample to coalesce the repeated txt.\n        \"\"\"\n        vid_out, txt_out = all[src_idx].split([len(vid_idx), txt_idx_len])\n        txt_out_coalesced = []\n        for txt, repeat_time in zip(txt_out.split(repeat_txt_len), txt_repeat_list):\n            txt = txt.reshape(-1, repeat_time, *txt.shape[1:]).mean(1)\n            txt_out_coalesced.append(txt)\n        return vid_out, torch.cat(txt_out_coalesced)\n\n    # Note: Backward of torch.index_select is non-deterministic when existing repeated index,\n    # the difference may cumulative like torch.repeat_interleave, so we use vanilla index here.\n    return (\n        lambda vid, txt: torch.cat([vid, txt])[tgt_idx],\n        lambda all: unconcat_coalesce(all),\n    )\n\n\ndef rearrange(\n    hid: torch.FloatTensor,  # (L c)\n    hid_shape: torch.LongTensor,  # (b n)\n    pattern: str,\n    **kwargs: Dict[str, int],\n) -> Tuple[\n    torch.FloatTensor,\n    torch.LongTensor,\n]:\n    return flatten([einops.rearrange(h, pattern, **kwargs) for h in unflatten(hid, hid_shape)])\n\n\ndef rearrange_idx(\n    hid_shape: torch.LongTensor,  # (b n)\n    pattern: str,\n    **kwargs: Dict[str, int],\n) -> Tuple[Callable, Callable, torch.LongTensor]:\n    hid_idx = torch.arange(hid_shape.prod(-1).sum(), device=hid_shape.device).unsqueeze(-1)\n    tgt_idx, tgt_shape = rearrange(hid_idx, hid_shape, pattern, **kwargs)\n    tgt_idx = tgt_idx.squeeze(-1)\n    src_idx = torch.argsort(tgt_idx)\n    return (\n        lambda hid: torch.index_select(hid, 0, tgt_idx),\n        lambda hid: torch.index_select(hid, 0, src_idx),\n        tgt_shape,\n    )\n\n\ndef repeat(\n    hid: torch.FloatTensor,  # (L c)\n    hid_shape: torch.LongTensor,  # (b n)\n    pattern: str,\n    **kwargs: Dict[str, torch.LongTensor],  # (b)\n) -> Tuple[\n    torch.FloatTensor,\n    torch.LongTensor,\n]:\n    hid = unflatten(hid, hid_shape)\n    kwargs = [{k: v[i].item() for k, v in kwargs.items()} for i in range(len(hid))]\n    return flatten([einops.repeat(h, pattern, **a) for h, a in zip(hid, kwargs)])\n\n\ndef pack(\n    samples: List[torch.Tensor],  # List of (h w c).\n) -> Tuple[\n    List[torch.Tensor],  # groups [(b1 h1 w1 c1), (b2 h2 w2 c2)]\n    List[List[int]],  # reversal indices.\n]:\n    batches = {}\n    indices = {}\n    for i, sample in enumerate(samples):\n        shape = sample.shape\n        batches[shape] = batches.get(shape, [])\n        indices[shape] = indices.get(shape, [])\n        batches[shape].append(sample)\n        indices[shape].append(i)\n\n    batches = list(map(torch.stack, batches.values()))\n    indices = list(indices.values())\n    return batches, indices\n\n\ndef unpack(\n    batches: List[torch.Tensor],\n    indices: List[List[int]],\n) -> List[torch.Tensor]:\n    samples = [None] * (max(chain(*indices)) + 1)\n    for batch, index in zip(batches, indices):\n        for sample, i in zip(batch.unbind(), index):\n            samples[i] = sample\n    return samples\n\n\ndef window(\n    hid: torch.FloatTensor,  # (L c)\n    hid_shape: torch.LongTensor,  # (b n)\n    window_fn: Callable[[torch.Tensor], List[torch.Tensor]],\n):\n    hid = unflatten(hid, hid_shape)\n    hid = list(map(window_fn, hid))\n    hid_windows = torch.tensor(list(map(len, hid)), device=hid_shape.device)\n    hid, hid_shape = flatten(list(chain(*hid)))\n    return hid, hid_shape, hid_windows\n\n\ndef window_idx(\n    hid_shape: torch.LongTensor,  # (b n)\n    window_fn: Callable[[torch.Tensor], List[torch.Tensor]],\n):\n    hid_idx = torch.arange(hid_shape.prod(-1).sum(), device=hid_shape.device).unsqueeze(-1)\n    tgt_idx, tgt_shape, tgt_windows = window(hid_idx, hid_shape, window_fn)\n    tgt_idx = tgt_idx.squeeze(-1)\n    src_idx = torch.argsort(tgt_idx)\n    return (\n        lambda hid: torch.index_select(hid, 0, tgt_idx),\n        lambda hid: torch.index_select(hid, 0, src_idx),\n        tgt_shape,\n        tgt_windows,\n    )\n"
  },
  {
    "path": "modules/seedvr/src/models/dit_v2/nablocks/__init__.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom .mmsr_block import NaMMSRTransformerBlock\n\n\nnadit_blocks = {\n    \"mmdit_sr\": NaMMSRTransformerBlock,\n}\n\n\ndef get_nablock(block_type: str):\n    if block_type in nadit_blocks:\n        return nadit_blocks[block_type]\n    raise NotImplementedError(f\"{block_type} is not supported\")\n"
  },
  {
    "path": "modules/seedvr/src/models/dit_v2/nablocks/attention/__init__.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom .mmattn import NaMMAttention\n\nattns = {\n    \"mm_full\": NaMMAttention,\n}\n\n\ndef get_attn(attn_type: str):\n    if attn_type in attns:\n        return attns[attn_type]\n    raise NotImplementedError(f\"{attn_type} is not supported\")\n"
  },
  {
    "path": "modules/seedvr/src/models/dit_v2/nablocks/attention/mmattn.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom typing import Optional, Tuple, Union\nimport torch\nfrom einops import rearrange\nfrom torch import nn\nfrom torch.nn import functional as F\nfrom torch.nn.modules.utils import _triple\n\nfrom .....common.cache import Cache\nfrom .....common.distributed.ops import gather_heads_scatter_seq, gather_seq_scatter_heads_qkv\nfrom .....common.half_precision_fixes import safe_pad_operation\n\nfrom ... import na\nfrom ...attention import FlashAttentionVarlen\nfrom ...mm import MMArg, MMModule\nfrom ...normalization import norm_layer_type\nfrom ...rope import get_na_rope\nfrom ...window import get_window_op\nfrom itertools import chain\n\n\nclass NaMMAttention(nn.Module):\n    def __init__(\n        self,\n        vid_dim: int,\n        txt_dim: int,\n        heads: int,\n        head_dim: int,\n        qk_bias: bool,\n        qk_norm: norm_layer_type,\n        qk_norm_eps: float,\n        rope_type: Optional[str],\n        rope_dim: int,\n        shared_weights: bool,\n        **kwargs,\n    ):\n        super().__init__()\n        dim = MMArg(vid_dim, txt_dim)\n        inner_dim = heads * head_dim\n        qkv_dim = inner_dim * 3\n        self.head_dim = head_dim\n        self.proj_qkv = MMModule(\n            nn.Linear, dim, qkv_dim, bias=qk_bias, shared_weights=shared_weights\n        )\n        self.proj_out = MMModule(nn.Linear, inner_dim, dim, shared_weights=shared_weights)\n        self.norm_q = MMModule(\n            qk_norm,\n            dim=head_dim,\n            eps=qk_norm_eps,\n            elementwise_affine=True,\n            shared_weights=shared_weights,\n        )\n        self.norm_k = MMModule(\n            qk_norm,\n            dim=head_dim,\n            eps=qk_norm_eps,\n            elementwise_affine=True,\n            shared_weights=shared_weights,\n        )\n\n        self.rope = get_na_rope(rope_type=rope_type, dim=rope_dim)\n        self.attn = FlashAttentionVarlen()\n\n    def forward(\n        self,\n        vid: torch.FloatTensor,  # l c\n        txt: torch.FloatTensor,  # l c\n        vid_shape: torch.LongTensor,  # b 3\n        txt_shape: torch.LongTensor,  # b 1\n        cache: Cache,\n    ) -> Tuple[\n        torch.FloatTensor,\n        torch.FloatTensor,\n    ]:\n        vid_qkv, txt_qkv = self.proj_qkv(vid, txt)\n        vid_qkv = gather_seq_scatter_heads_qkv(\n            vid_qkv,\n            seq_dim=0,\n            qkv_shape=vid_shape,\n            cache=cache.namespace(\"vid\"),\n        )\n        txt_qkv = gather_seq_scatter_heads_qkv(\n            txt_qkv,\n            seq_dim=0,\n            qkv_shape=txt_shape,\n            cache=cache.namespace(\"txt\"),\n        )\n        vid_qkv = rearrange(vid_qkv, \"l (o h d) -> l o h d\", o=3, d=self.head_dim)\n        txt_qkv = rearrange(txt_qkv, \"l (o h d) -> l o h d\", o=3, d=self.head_dim)\n\n        vid_q, vid_k, vid_v = vid_qkv.unbind(1)\n        txt_q, txt_k, txt_v = txt_qkv.unbind(1)\n\n        vid_q, txt_q = self.norm_q(vid_q, txt_q)\n        vid_k, txt_k = self.norm_k(vid_k, txt_k)\n\n        if self.rope:\n            if self.rope.mm:\n                vid_q, vid_k, txt_q, txt_k = self.rope(\n                    vid_q, vid_k, vid_shape, txt_q, txt_k, txt_shape, cache\n                )\n            else:\n                vid_q, vid_k = self.rope(vid_q, vid_k, vid_shape, cache)\n\n        vid_len = cache(\"vid_len\", lambda: vid_shape.prod(-1))\n        txt_len = cache(\"txt_len\", lambda: txt_shape.prod(-1))\n        all_len = cache(\"all_len\", lambda: vid_len + txt_len)\n\n        concat, unconcat = cache(\"mm_pnp\", lambda: na.concat_idx(vid_len, txt_len))\n\n        attn = self.attn(\n            q=concat(vid_q, txt_q).bfloat16(),\n            k=concat(vid_k, txt_k).bfloat16(),\n            v=concat(vid_v, txt_v).bfloat16(),\n            cu_seqlens_q=cache(\"mm_seqlens\", lambda: safe_pad_operation(all_len.cumsum(0), (1, 0)).int()),\n            cu_seqlens_k=cache(\"mm_seqlens\", lambda: safe_pad_operation(all_len.cumsum(0), (1, 0)).int()),\n            max_seqlen_q=cache(\"mm_maxlen\", lambda: all_len.max().item()),\n            max_seqlen_k=cache(\"mm_maxlen\", lambda: all_len.max().item()),\n        ).type_as(vid_q)\n\n        attn = rearrange(attn, \"l h d -> l (h d)\")\n        vid_out, txt_out = unconcat(attn)\n        vid_out = gather_heads_scatter_seq(vid_out, head_dim=1, seq_dim=0)\n        txt_out = gather_heads_scatter_seq(txt_out, head_dim=1, seq_dim=0)\n\n        vid_out, txt_out = self.proj_out(vid_out, txt_out)\n        return vid_out, txt_out\n\n\nclass NaSwinAttention(NaMMAttention):\n    def __init__(\n        self,\n        *args,\n        window: Union[int, Tuple[int, int, int]],\n        window_method: str,\n        **kwargs,\n    ):\n        super().__init__(*args, **kwargs)\n        self.window = _triple(window)\n        self.window_method = window_method\n        assert all(map(lambda v: isinstance(v, int) and v >= 0, self.window))\n\n        self.window_op = get_window_op(window_method)\n\n    def forward(\n        self,\n        vid: torch.FloatTensor,  # l c\n        txt: torch.FloatTensor,  # l c\n        vid_shape: torch.LongTensor,  # b 3\n        txt_shape: torch.LongTensor,  # b 1\n        cache: Cache,\n    ) -> Tuple[\n        torch.FloatTensor,\n        torch.FloatTensor,\n    ]:\n\n        vid_qkv, txt_qkv = self.proj_qkv(vid, txt)\n        vid_qkv = gather_seq_scatter_heads_qkv(\n            vid_qkv,\n            seq_dim=0,\n            qkv_shape=vid_shape,\n            cache=cache.namespace(\"vid\"),\n        )\n        txt_qkv = gather_seq_scatter_heads_qkv(\n            txt_qkv,\n            seq_dim=0,\n            qkv_shape=txt_shape,\n            cache=cache.namespace(\"txt\"),\n        )\n\n        # re-org the input seq for window attn\n        cache_win = cache.namespace(f\"{self.window_method}_{self.window}_sd3\")\n\n        def make_window(x: torch.Tensor):\n            t, h, w, _ = x.shape\n            window_slices = self.window_op((t, h, w), self.window)\n            return [x[st, sh, sw] for (st, sh, sw) in window_slices]\n\n        window_partition, window_reverse, window_shape, window_count = cache_win(\n            \"win_transform\",\n            lambda: na.window_idx(vid_shape, make_window),\n        )\n        vid_qkv_win = window_partition(vid_qkv)\n\n        vid_qkv_win = rearrange(vid_qkv_win, \"l (o h d) -> l o h d\", o=3, d=self.head_dim)\n        txt_qkv = rearrange(txt_qkv, \"l (o h d) -> l o h d\", o=3, d=self.head_dim)\n\n        vid_q, vid_k, vid_v = vid_qkv_win.unbind(1)\n        txt_q, txt_k, txt_v = txt_qkv.unbind(1)\n\n        vid_q, txt_q = self.norm_q(vid_q, txt_q)\n        vid_k, txt_k = self.norm_k(vid_k, txt_k)\n\n        txt_len = cache(\"txt_len\", lambda: txt_shape.prod(-1))\n\n        vid_len_win = cache_win(\"vid_len\", lambda: window_shape.prod(-1))\n        txt_len_win = cache_win(\"txt_len\", lambda: txt_len.repeat_interleave(window_count))\n        all_len_win = cache_win(\"all_len\", lambda: vid_len_win + txt_len_win)\n        concat_win, unconcat_win = cache_win(\n            \"mm_pnp\", lambda: na.repeat_concat_idx(vid_len_win, txt_len, window_count)\n        )\n\n        # window rope\n        if self.rope:\n            if self.rope.mm:\n                # repeat text q and k for window mmrope\n                _, num_h, _ = txt_q.shape\n                txt_q_repeat = rearrange(txt_q, \"l h d -> l (h d)\")\n                txt_q_repeat = na.unflatten(txt_q_repeat, txt_shape)\n                txt_q_repeat = [[x] * n for x, n in zip(txt_q_repeat, window_count)]\n                txt_q_repeat = list(chain(*txt_q_repeat))\n                txt_q_repeat, txt_shape_repeat = na.flatten(txt_q_repeat)\n                txt_q_repeat = rearrange(txt_q_repeat, \"l (h d) -> l h d\", h=num_h)\n\n                txt_k_repeat = rearrange(txt_k, \"l h d -> l (h d)\")\n                txt_k_repeat = na.unflatten(txt_k_repeat, txt_shape)\n                txt_k_repeat = [[x] * n for x, n in zip(txt_k_repeat, window_count)]\n                txt_k_repeat = list(chain(*txt_k_repeat))\n                txt_k_repeat, _ = na.flatten(txt_k_repeat)\n                txt_k_repeat = rearrange(txt_k_repeat, \"l (h d) -> l h d\", h=num_h)\n\n                vid_q, vid_k, txt_q, txt_k = self.rope(\n                    vid_q, vid_k, window_shape, txt_q_repeat, txt_k_repeat, txt_shape_repeat, cache_win\n                )\n            else:\n                vid_q, vid_k = self.rope(vid_q, vid_k, window_shape, cache_win)\n\n        out = self.attn(\n            q=concat_win(vid_q, txt_q).bfloat16(),\n            k=concat_win(vid_k, txt_k).bfloat16(),\n            v=concat_win(vid_v, txt_v).bfloat16(),\n            cu_seqlens_q=cache_win(\n                \"vid_seqlens_q\", lambda: safe_pad_operation(all_len_win.cumsum(0), (1, 0)).int()\n            ),\n            cu_seqlens_k=cache_win(\n                \"vid_seqlens_k\", lambda: safe_pad_operation(all_len_win.cumsum(0), (1, 0)).int()\n            ),\n            max_seqlen_q=cache_win(\"vid_max_seqlen_q\", lambda: all_len_win.max().item()),\n            max_seqlen_k=cache_win(\"vid_max_seqlen_k\", lambda: all_len_win.max().item()),\n        ).type_as(vid_q)\n\n        # text pooling\n        vid_out, txt_out = unconcat_win(out)\n\n        vid_out = rearrange(vid_out, \"l h d -> l (h d)\")\n        txt_out = rearrange(txt_out, \"l h d -> l (h d)\")\n        vid_out = window_reverse(vid_out)\n\n        vid_out = gather_heads_scatter_seq(vid_out, head_dim=1, seq_dim=0)\n        txt_out = gather_heads_scatter_seq(txt_out, head_dim=1, seq_dim=0)\n\n        vid_out, txt_out = self.proj_out(vid_out, txt_out)\n\n        return vid_out, txt_out\n"
  },
  {
    "path": "modules/seedvr/src/models/dit_v2/nablocks/mmsr_block.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom typing import Tuple\nimport torch\nimport torch.nn as nn\n\n# from ..cache import Cache\nfrom ....common.cache import Cache\n\nfrom .attention.mmattn import NaSwinAttention\nfrom ..mm import MMArg\nfrom ..modulation import ada_layer_type\nfrom ..normalization import norm_layer_type\nfrom ..mm import MMModule\nfrom ..mlp import get_mlp\n\n\nclass NaMMSRTransformerBlock(nn.Module):\n    def __init__(\n        self,\n        *,\n        vid_dim: int,\n        txt_dim: int,\n        emb_dim: int,\n        heads: int,\n        head_dim: int,\n        expand_ratio: int,\n        norm: norm_layer_type,\n        norm_eps: float,\n        ada: ada_layer_type,\n        qk_bias: bool,\n        qk_norm: norm_layer_type,\n        mlp_type: str,\n        shared_weights: bool,\n        rope_type: str,\n        rope_dim: int,\n        is_last_layer: bool,\n        **kwargs,\n    ):\n        super().__init__()\n        dim = MMArg(vid_dim, txt_dim)\n        self.attn_norm = MMModule(norm, dim=dim, eps=norm_eps, elementwise_affine=False, shared_weights=shared_weights,)\n\n        self.attn = NaSwinAttention(\n            vid_dim=vid_dim,\n            txt_dim=txt_dim,\n            heads=heads,\n            head_dim=head_dim,\n            qk_bias=qk_bias,\n            qk_norm=qk_norm,\n            qk_norm_eps=norm_eps,\n            rope_type=rope_type,\n            rope_dim=rope_dim,\n            shared_weights=shared_weights,\n            window=kwargs.pop(\"window\", None),\n            window_method=kwargs.pop(\"window_method\", None),\n        )\n\n        self.mlp_norm = MMModule(norm, dim=dim, eps=norm_eps, elementwise_affine=False, shared_weights=shared_weights, vid_only=is_last_layer)\n        self.mlp = MMModule(\n            get_mlp(mlp_type),\n            dim=dim,\n            expand_ratio=expand_ratio,\n            shared_weights=shared_weights,\n            vid_only=is_last_layer\n        )\n        self.ada = MMModule(ada, dim=dim, emb_dim=emb_dim, layers=[\"attn\", \"mlp\"], shared_weights=shared_weights, vid_only=is_last_layer)\n        self.is_last_layer = is_last_layer\n\n    def forward(\n        self,\n        vid: torch.FloatTensor,  # l c\n        txt: torch.FloatTensor,  # l c\n        vid_shape: torch.LongTensor,  # b 3\n        txt_shape: torch.LongTensor,  # b 1\n        emb: torch.FloatTensor,\n        cache: Cache,\n    ) -> Tuple[\n        torch.FloatTensor,\n        torch.FloatTensor,\n        torch.LongTensor,\n        torch.LongTensor,\n    ]:\n        hid_len = MMArg(\n            cache(\"vid_len\", lambda: vid_shape.prod(-1)),\n            cache(\"txt_len\", lambda: txt_shape.prod(-1)),\n        )\n        ada_kwargs = {\n            \"emb\": emb,\n            \"hid_len\": hid_len,\n            \"cache\": cache,\n            \"branch_tag\": MMArg(\"vid\", \"txt\"),\n        }\n\n        vid_attn, txt_attn = self.attn_norm(vid, txt)\n\n        vid_attn, txt_attn = self.ada(vid_attn, txt_attn, layer=\"attn\", mode=\"in\", **ada_kwargs)\n        vid_attn, txt_attn = self.attn(vid_attn, txt_attn, vid_shape, txt_shape, cache)\n        vid_attn, txt_attn = self.ada(vid_attn, txt_attn, layer=\"attn\", mode=\"out\", **ada_kwargs)\n        vid_attn, txt_attn = (vid_attn + vid), (txt_attn + txt)\n\n        vid_mlp, txt_mlp = self.mlp_norm(vid_attn, txt_attn)\n        # ADD BY NUMZ\n        if vid_mlp.dtype != vid_attn.dtype:\n            vid_mlp = vid_mlp.to(vid_attn.dtype)\n        if txt_mlp.dtype != txt_attn.dtype:\n            txt_mlp = txt_mlp.to(txt_attn.dtype)\n        # END BY NUMZ\n        vid_mlp, txt_mlp = self.ada(vid_mlp, txt_mlp, layer=\"mlp\", mode=\"in\", **ada_kwargs)\n        vid_mlp, txt_mlp = self.mlp(vid_mlp, txt_mlp)\n        vid_mlp, txt_mlp = self.ada(vid_mlp, txt_mlp, layer=\"mlp\", mode=\"out\", **ada_kwargs)\n        vid_mlp, txt_mlp = (vid_mlp + vid_attn), (txt_mlp + txt_attn)\n\n        return vid_mlp, txt_mlp, vid_shape, txt_shape\n"
  },
  {
    "path": "modules/seedvr/src/models/dit_v2/nadit.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom dataclasses import dataclass\nfrom typing import List, Optional, Tuple, Union, Callable\nimport torch\nfrom torch import nn\n\nfrom ...common.cache import Cache\nfrom ...common.distributed.ops import slice_inputs\n\nfrom . import na\nfrom .embedding import TimeEmbedding\nfrom .modulation import get_ada_layer\nfrom .nablocks import get_nablock\nfrom .normalization import get_norm_layer\nfrom .patch import get_na_patch_layers\n\n# Fake func, no checkpointing is required for inference\ndef gradient_checkpointing(module: Union[Callable, nn.Module], *args, enabled: bool, **kwargs):\n    return module(*args, **kwargs)\n\n@dataclass\nclass NaDiTOutput:\n    vid_sample: torch.Tensor\n\n\nclass NaDiT(nn.Module):\n    \"\"\"\n    Native Resolution Diffusion Transformer (NaDiT)\n    \"\"\"\n\n    gradient_checkpointing = False\n\n    def __init__(\n        self,\n        vid_in_channels: int,\n        vid_out_channels: int,\n        vid_dim: int,\n        txt_in_dim: Union[int, List[int]],\n        txt_dim: Optional[int],\n        emb_dim: int,\n        heads: int,\n        head_dim: int,\n        expand_ratio: int,\n        norm: Optional[str],\n        norm_eps: float,\n        ada: str,\n        qk_bias: bool,\n        qk_norm: Optional[str],\n        patch_size: Union[int, Tuple[int, int, int]],\n        num_layers: int,\n        block_type: Union[str, Tuple[str]],\n        mm_layers: Union[int, Tuple[bool]],\n        mlp_type: str = \"normal\",\n        patch_type: str = \"v1\",\n        rope_type: Optional[str] = \"rope3d\",\n        rope_dim: Optional[int] = None,\n        window: Optional[Tuple] = None,\n        window_method: Optional[Tuple[str]] = None,\n        msa_type: Optional[Tuple[str]] = None,\n        mca_type: Optional[Tuple[str]] = None,\n        txt_in_norm: Optional[str] = None,\n        txt_in_norm_scale_factor: int = 0.01,\n        txt_proj_type: Optional[str] = \"linear\",\n        vid_out_norm: Optional[str] = None,\n        **kwargs,\n    ):\n        ada = get_ada_layer(ada)\n        norm = get_norm_layer(norm)\n        qk_norm = get_norm_layer(qk_norm)\n        rope_dim = rope_dim if rope_dim is not None else head_dim // 2\n        if isinstance(block_type, str):\n            block_type = [block_type] * num_layers\n        elif len(block_type) != num_layers:\n            raise ValueError(\"The ``block_type`` list should equal to ``num_layers``.\")\n        super().__init__()\n        NaPatchIn, NaPatchOut = get_na_patch_layers(patch_type)\n        self.vid_in = NaPatchIn(\n            in_channels=vid_in_channels,\n            patch_size=patch_size,\n            dim=vid_dim,\n        )\n        if not isinstance(txt_in_dim, int):\n            self.txt_in = nn.ModuleList([])\n            for in_dim in txt_in_dim:\n                txt_norm_layer = get_norm_layer(txt_in_norm)(txt_dim, norm_eps, True)\n                if txt_proj_type == \"linear\":\n                    txt_proj_layer = nn.Linear(in_dim, txt_dim)\n                else:\n                    txt_proj_layer = nn.Sequential(\n                        nn.Linear(in_dim, in_dim), nn.GELU(\"tanh\"), nn.Linear(in_dim, txt_dim)\n                    )\n                torch.nn.init.constant_(txt_norm_layer.weight, txt_in_norm_scale_factor)\n                self.txt_in.append(\n                    nn.Sequential(\n                        txt_proj_layer,\n                        txt_norm_layer,\n                    )\n                )\n        else:\n            self.txt_in = (\n                nn.Linear(txt_in_dim, txt_dim)\n                if txt_in_dim and txt_in_dim != txt_dim\n                else nn.Identity()\n            )\n        self.emb_in = TimeEmbedding(\n            sinusoidal_dim=256,\n            hidden_dim=max(vid_dim, txt_dim),\n            output_dim=emb_dim,\n        )\n\n        if window is None or isinstance(window[0], int):\n            window = [window] * num_layers\n        if window_method is None or isinstance(window_method, str):\n            window_method = [window_method] * num_layers\n\n        if msa_type is None or isinstance(msa_type, str):\n            msa_type = [msa_type] * num_layers\n        if mca_type is None or isinstance(mca_type, str):\n            mca_type = [mca_type] * num_layers\n\n        self.blocks = nn.ModuleList(\n            [\n                get_nablock(block_type[i])(\n                    vid_dim=vid_dim,\n                    txt_dim=txt_dim,\n                    emb_dim=emb_dim,\n                    heads=heads,\n                    head_dim=head_dim,\n                    expand_ratio=expand_ratio,\n                    norm=norm,\n                    norm_eps=norm_eps,\n                    ada=ada,\n                    qk_bias=qk_bias,\n                    qk_norm=qk_norm,\n                    shared_weights=not (\n                        (i < mm_layers) if isinstance(mm_layers, int) else mm_layers[i]\n                    ),\n                    mlp_type=mlp_type,\n                    window=window[i],\n                    window_method=window_method[i],\n                    msa_type=msa_type[i],\n                    mca_type=mca_type[i],\n                    rope_type=rope_type,\n                    rope_dim=rope_dim,\n                    is_last_layer=(i == num_layers - 1),\n                    **kwargs,\n                )\n                for i in range(num_layers)\n            ]\n        )\n\n        self.vid_out_norm = None\n        if vid_out_norm is not None:\n            self.vid_out_norm = get_norm_layer(vid_out_norm)(\n                dim=vid_dim,\n                eps=norm_eps,\n                elementwise_affine=True,\n            )\n            self.vid_out_ada = ada(\n                dim=vid_dim,\n                emb_dim=emb_dim,\n                layers=[\"out\"],\n                modes=[\"in\"],\n            )\n\n        self.vid_out = NaPatchOut(\n            out_channels=vid_out_channels,\n            patch_size=patch_size,\n            dim=vid_dim,\n        )\n\n    def set_gradient_checkpointing(self, enable: bool):\n        self.gradient_checkpointing = enable\n\n    def forward(\n        self,\n        vid: torch.FloatTensor,  # l c\n        txt: Union[torch.FloatTensor, List[torch.FloatTensor]],  # l c\n        vid_shape: torch.LongTensor,  # b 3\n        txt_shape: Union[torch.LongTensor, List[torch.LongTensor]],  # b 1\n        timestep: Union[int, float, torch.IntTensor, torch.FloatTensor],  # b\n        disable_cache: bool = False,  # for test\n    ):\n        cache = Cache(disable=disable_cache)\n\n        # slice vid after patching in when using sequence parallelism\n        if isinstance(txt, list):\n            assert isinstance(self.txt_in, nn.ModuleList)\n            txt = [\n                na.unflatten(fc(i), s) for fc, i, s in zip(self.txt_in, txt, txt_shape)\n            ]  # B L D\n            txt, txt_shape = na.flatten([torch.cat(t, dim=0) for t in zip(*txt)])\n            txt = slice_inputs(txt, dim=0)\n        else:\n            txt = slice_inputs(txt, dim=0)\n            txt = self.txt_in(txt)\n\n        # Video input.\n        # Sequence parallel slicing is done inside patching class.\n        vid, vid_shape = self.vid_in(vid, vid_shape, cache)\n\n        # Embedding input.\n        emb = self.emb_in(timestep, device=vid.device, dtype=vid.dtype)\n\n        # Body\n        for i, block in enumerate(self.blocks):\n            vid, txt, vid_shape, txt_shape = gradient_checkpointing(\n                enabled=(self.gradient_checkpointing and self.training),\n                module=block,\n                vid=vid,\n                txt=txt,\n                vid_shape=vid_shape,\n                txt_shape=txt_shape,\n                emb=emb,\n                cache=cache,\n            )\n\n        # Video output norm.\n        if self.vid_out_norm:\n            vid = self.vid_out_norm(vid)\n            vid = self.vid_out_ada(\n                vid,\n                emb=emb,\n                layer=\"out\",\n                mode=\"in\",\n                hid_len=cache(\"vid_len\", lambda: vid_shape.prod(-1)),\n                cache=cache,\n                branch_tag=\"vid\",\n            )\n\n        # Video output.\n        vid, vid_shape = self.vid_out(vid, vid_shape, cache)\n        return NaDiTOutput(vid_sample=vid)\n"
  },
  {
    "path": "modules/seedvr/src/models/dit_v2/normalization.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom typing import Callable, Optional\nfrom diffusers.models.normalization import RMSNorm\nfrom torch import nn\nimport torch\nimport torch.nn.functional as F\nimport numbers\nfrom torch.nn.parameter import Parameter\nfrom torch.nn import init\n\n# (dim: int, eps: float, elementwise_affine: bool)\nnorm_layer_type = Callable[[int, float, bool], nn.Module]\n\n\nclass CustomLayerNorm(nn.Module):\n    \"\"\"\n    Custom LayerNorm implementation to replace Apex FusedLayerNorm\n    \"\"\"\n    def __init__(self, normalized_shape, eps=1e-5, elementwise_affine=True):\n        super(CustomLayerNorm, self).__init__()\n\n        if isinstance(normalized_shape, numbers.Integral):\n            normalized_shape = (normalized_shape,)\n        self.normalized_shape = torch.Size(normalized_shape)\n        self.eps = eps\n        self.elementwise_affine = elementwise_affine\n\n        if self.elementwise_affine:\n            self.weight = Parameter(torch.Tensor(*normalized_shape))\n            self.bias = Parameter(torch.Tensor(*normalized_shape))\n        else:\n            self.register_parameter('weight', None)\n            self.register_parameter('bias', None)\n        self.reset_parameters()\n\n    def reset_parameters(self):\n        if self.elementwise_affine:\n            init.ones_(self.weight)\n            init.zeros_(self.bias)\n\n    def forward(self, input):\n        # 🚀 FP8 COMPATIBILITY: Convert parameters to match input dtype\n        # This prevents \"Promotion for Float8 Types is not supported\" errors\n        weight = self.weight\n        bias = self.bias\n\n        if self.elementwise_affine and weight is not None:\n            if weight.dtype != input.dtype:\n                weight = weight.to(input.dtype)\n            if bias is not None and bias.dtype != input.dtype:\n                bias = bias.to(input.dtype)\n\n        return F.layer_norm(\n            input, self.normalized_shape, weight, bias, self.eps)\n\n\nclass CustomRMSNorm(nn.Module):\n    \"\"\"\n    Custom RMSNorm implementation to replace Apex FusedRMSNorm\n    \"\"\"\n    def __init__(self, normalized_shape, eps=1e-5, elementwise_affine=True):\n        super(CustomRMSNorm, self).__init__()\n\n        if isinstance(normalized_shape, numbers.Integral):\n            normalized_shape = (normalized_shape,)\n        self.normalized_shape = torch.Size(normalized_shape)\n        self.eps = eps\n        self.elementwise_affine = elementwise_affine\n\n        if self.elementwise_affine:\n            self.weight = Parameter(torch.ones(*normalized_shape))\n        else:\n            self.register_parameter('weight', None)\n\n    def forward(self, input):\n        # RMS normalization: x / sqrt(mean(x^2) + eps) * weight\n        dims = tuple(range(-len(self.normalized_shape), 0))\n\n        # Calculate RMS: sqrt(mean(x^2))\n        variance = input.pow(2).mean(dim=dims, keepdim=True)\n        rms = torch.sqrt(variance + self.eps)\n\n        # Normalize\n        normalized = input / rms\n\n        if self.elementwise_affine:\n            # 🚀 FP8 COMPATIBILITY: Convert weight to match normalized dtype\n            # This prevents \"Promotion for Float8 Types is not supported\" errors\n            weight = self.weight\n            if weight.dtype != normalized.dtype:\n                weight = weight.to(normalized.dtype)\n            return normalized * weight\n        return normalized\n\n\ndef get_norm_layer(norm_type: Optional[str]) -> norm_layer_type:\n\n    def _norm_layer(dim: int, eps: float, elementwise_affine: bool):\n        if norm_type is None:\n            return nn.Identity()\n\n        if norm_type == \"layer\":\n            return nn.LayerNorm(\n                normalized_shape=dim,\n                eps=eps,\n                elementwise_affine=elementwise_affine,\n            )\n\n        if norm_type == \"rms\":\n            return RMSNorm(\n                dim=dim,\n                eps=eps,\n                elementwise_affine=elementwise_affine,\n            )\n\n        if norm_type == \"fusedln\":\n            # Use custom LayerNorm instead of Apex FusedLayerNorm\n            return CustomLayerNorm(\n                normalized_shape=dim,\n                elementwise_affine=elementwise_affine,\n                eps=eps,\n            )\n\n        if norm_type == \"fusedrms\":\n            # Use custom RMSNorm instead of Apex FusedRMSNorm\n            return CustomRMSNorm(\n                normalized_shape=dim,\n                elementwise_affine=elementwise_affine,\n                eps=eps,\n            )\n\n        raise NotImplementedError(f\"{norm_type} is not supported\")\n\n    return _norm_layer\n"
  },
  {
    "path": "modules/seedvr/src/models/dit_v2/patch/__init__.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\ndef get_na_patch_layers(patch_type=\"v1\"):\n    assert patch_type in [\"v1\"]\n    if patch_type == \"v1\":\n        from .patch_v1 import NaPatchIn, NaPatchOut\n    return NaPatchIn, NaPatchOut\n"
  },
  {
    "path": "modules/seedvr/src/models/dit_v2/patch/patch_v1.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom typing import Tuple, Union\nimport torch\nfrom einops import rearrange\nfrom torch import nn\nfrom torch.nn.modules.utils import _triple\n\nfrom ....common.cache import Cache\nfrom ....common.distributed.ops import gather_outputs, slice_inputs\n\nfrom .. import na\n\n\nclass PatchIn(nn.Module):\n    def __init__(\n        self,\n        in_channels: int,\n        patch_size: Union[int, Tuple[int, int, int]],\n        dim: int,\n    ):\n        super().__init__()\n        t, h, w = _triple(patch_size)\n        self.patch_size = t, h, w\n        self.proj = nn.Linear(in_channels * t * h * w, dim)\n\n    def forward(\n        self,\n        vid: torch.Tensor,\n    ) -> torch.Tensor:\n        t, h, w = self.patch_size\n        if t > 1:\n            assert vid.size(2) % t == 1\n            vid = torch.cat([vid[:, :, :1]] * (t - 1) + [vid], dim=2)\n        vid = rearrange(vid, \"b c (T t) (H h) (W w) -> b T H W (t h w c)\", t=t, h=h, w=w)\n        vid = self.proj(vid)\n        return vid\n\n\nclass PatchOut(nn.Module):\n    def __init__(\n        self,\n        out_channels: int,\n        patch_size: Union[int, Tuple[int, int, int]],\n        dim: int,\n    ):\n        super().__init__()\n        t, h, w = _triple(patch_size)\n        self.patch_size = t, h, w\n        self.proj = nn.Linear(dim, out_channels * t * h * w)\n\n    def forward(\n        self,\n        vid: torch.Tensor,\n    ) -> torch.Tensor:\n        t, h, w = self.patch_size\n        vid = self.proj(vid)\n        vid = rearrange(vid, \"b T H W (t h w c) -> b c (T t) (H h) (W w)\", t=t, h=h, w=w)\n        if t > 1:\n            vid = vid[:, :, (t - 1) :]\n        return vid\n\n\nclass NaPatchIn(PatchIn):\n    def forward(\n        self,\n        vid: torch.Tensor,  # l c\n        vid_shape: torch.LongTensor,\n        cache: Cache = Cache(disable=True),  # for test\n    ) -> torch.Tensor:\n        cache = cache.namespace(\"patch\")\n        vid_shape_before_patchify = cache(\"vid_shape_before_patchify\", lambda: vid_shape)\n        t, h, w = self.patch_size\n        if not (t == h == w == 1):\n            vid = na.unflatten(vid, vid_shape)\n            for i in range(len(vid)):\n                if t > 1 and vid_shape_before_patchify[i, 0] % t != 0:\n                    vid[i] = torch.cat([vid[i][:1]] * (t - vid[i].size(0) % t) + [vid[i]], dim=0)\n                vid[i] = rearrange(vid[i], \"(T t) (H h) (W w) c -> T H W (t h w c)\", t=t, h=h, w=w)\n            vid, vid_shape = na.flatten(vid)\n\n        # slice vid after patching in when using sequence parallelism\n        vid = slice_inputs(vid, dim=0)\n        vid = self.proj(vid)\n        return vid, vid_shape\n\n\nclass NaPatchOut(PatchOut):\n    def forward(\n        self,\n        vid: torch.FloatTensor,  # l c\n        vid_shape: torch.LongTensor,\n        cache: Cache = Cache(disable=True),  # for test\n    ) -> Tuple[\n        torch.FloatTensor,\n        torch.LongTensor,\n    ]:\n        cache = cache.namespace(\"patch\")\n        vid_shape_before_patchify = cache.get(\"vid_shape_before_patchify\")\n\n        t, h, w = self.patch_size\n        vid = self.proj(vid)\n        # gather vid before patching out when enabling sequence parallelism\n        vid = gather_outputs(\n            vid, gather_dim=0, padding_dim=0, unpad_shape=vid_shape, cache=cache.namespace(\"vid\")\n        )\n        if not (t == h == w == 1):\n            vid = na.unflatten(vid, vid_shape)\n            for i in range(len(vid)):\n                vid[i] = rearrange(vid[i], \"T H W (t h w c) -> (T t) (H h) (W w) c\", t=t, h=h, w=w)\n                if t > 1 and vid_shape_before_patchify[i, 0] % t != 0:\n                    vid[i] = vid[i][(t - vid_shape_before_patchify[i, 0] % t) :]\n            vid, vid_shape = na.flatten(vid)\n\n        return vid, vid_shape\n"
  },
  {
    "path": "modules/seedvr/src/models/dit_v2/rope.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom functools import lru_cache\nfrom typing import Optional, Tuple\nimport torch\nfrom einops import rearrange\nfrom torch import nn\nfrom ...common.cache import Cache\nfrom ....rotary_embedding import RotaryEmbedding, apply_rotary_emb\n\n\nclass RotaryEmbeddingBase(nn.Module):\n    def __init__(self, dim: int, rope_dim: int):\n        super().__init__()\n        self.rope = RotaryEmbedding(\n            dim=dim // rope_dim,\n            freqs_for=\"pixel\",\n            max_freq=256,\n        )\n        # 1. Set model.requires_grad_(True) after model creation will make\n        #    the `requires_grad=False` for rope freqs no longer hold.\n        # 2. Even if we don't set requires_grad_(True) explicitly,\n        #    FSDP is not memory efficient when handling fsdp_wrap\n        #    with mixed requires_grad=True/False.\n        # With above consideration, it is easier just remove the freqs\n        # out of nn.Parameters when `learned_freq=False`\n        freqs = self.rope.freqs\n        del self.rope.freqs\n        self.rope.register_buffer(\"freqs\", freqs.data)\n\n    @lru_cache(maxsize=128)\n    def get_axial_freqs(self, *dims):\n        return self.rope.get_axial_freqs(*dims)\n\n\nclass RotaryEmbedding3d(RotaryEmbeddingBase):\n    def __init__(self, dim: int):\n        super().__init__(dim, rope_dim=3)\n        self.mm = False\n\n    def forward(\n        self,\n        q: torch.FloatTensor,  # b h l d\n        k: torch.FloatTensor,  # b h l d\n        size: Tuple[int, int, int],\n    ) -> Tuple[\n        torch.FloatTensor,\n        torch.FloatTensor,\n    ]:\n        T, H, W = size\n        freqs = self.get_axial_freqs(T, H, W)\n        q = rearrange(q, \"b h (T H W) d -> b h T H W d\", T=T, H=H, W=W)\n        k = rearrange(k, \"b h (T H W) d -> b h T H W d\", T=T, H=H, W=W)\n        q = apply_rotary_emb(freqs, q.float()).to(q.dtype)\n        k = apply_rotary_emb(freqs, k.float()).to(k.dtype)\n        q = rearrange(q, \"b h T H W d -> b h (T H W) d\")\n        k = rearrange(k, \"b h T H W d -> b h (T H W) d\")\n        return q, k\n\n\nclass MMRotaryEmbeddingBase(RotaryEmbeddingBase):\n    def __init__(self, dim: int, rope_dim: int):\n        super().__init__(dim, rope_dim)\n        self.rope = RotaryEmbedding(\n            dim=dim // rope_dim,\n            freqs_for=\"lang\",\n            theta=10000,\n        )\n        freqs = self.rope.freqs\n        del self.rope.freqs\n        self.rope.register_buffer(\"freqs\", freqs.data)\n        self.mm = True\n\n\nclass NaMMRotaryEmbedding3d(MMRotaryEmbeddingBase):\n    def __init__(self, dim: int):\n        super().__init__(dim, rope_dim=3)\n\n    def forward(\n        self,\n        vid_q: torch.FloatTensor,  # L h d\n        vid_k: torch.FloatTensor,  # L h d\n        vid_shape: torch.LongTensor,  # B 3\n        txt_q: torch.FloatTensor,  # L h d\n        txt_k: torch.FloatTensor,  # L h d\n        txt_shape: torch.LongTensor,  # B 1\n        cache: Cache,\n    ) -> Tuple[\n        torch.FloatTensor,\n        torch.FloatTensor,\n        torch.FloatTensor,\n        torch.FloatTensor,\n    ]:\n        vid_freqs, txt_freqs = cache(\n            \"mmrope_freqs_3d\",\n            lambda: self.get_freqs(vid_shape, txt_shape),\n        )\n        target_device = vid_q.device\n        if vid_freqs.device != target_device:\n            vid_freqs = vid_freqs.to(target_device)\n        if txt_freqs.device != target_device:\n            txt_freqs = txt_freqs.to(target_device)\n        vid_q = rearrange(vid_q, \"L h d -> h L d\")\n        vid_k = rearrange(vid_k, \"L h d -> h L d\")\n        vid_q = apply_rotary_emb(vid_freqs, vid_q.float()).to(vid_q.dtype)\n        vid_k = apply_rotary_emb(vid_freqs, vid_k.float()).to(vid_k.dtype)\n        vid_q = rearrange(vid_q, \"h L d -> L h d\")\n        vid_k = rearrange(vid_k, \"h L d -> L h d\")\n\n        txt_q = rearrange(txt_q, \"L h d -> h L d\")\n        txt_k = rearrange(txt_k, \"L h d -> h L d\")\n        txt_q = apply_rotary_emb(txt_freqs, txt_q.float()).to(txt_q.dtype)\n        txt_k = apply_rotary_emb(txt_freqs, txt_k.float()).to(txt_k.dtype)\n        txt_q = rearrange(txt_q, \"h L d -> L h d\")\n        txt_k = rearrange(txt_k, \"h L d -> L h d\")\n        return vid_q, vid_k, txt_q, txt_k\n\n    def get_freqs(\n        self,\n        vid_shape: torch.LongTensor,\n        txt_shape: torch.LongTensor,\n    ) -> Tuple[\n        torch.Tensor,\n        torch.Tensor,\n    ]:\n        vid_freqs = self.get_axial_freqs(1024, 128, 128)\n        txt_freqs = self.get_axial_freqs(1024)\n        vid_freq_list, txt_freq_list = [], []\n        for (f, h, w), l in zip(vid_shape.tolist(), txt_shape[:, 0].tolist()):\n            vid_freq = vid_freqs[l : l + f, :h, :w].reshape(-1, vid_freqs.size(-1))\n            txt_freq = txt_freqs[:l].repeat(1, 3).reshape(-1, vid_freqs.size(-1))\n            vid_freq_list.append(vid_freq)\n            txt_freq_list.append(txt_freq)\n        return torch.cat(vid_freq_list, dim=0), torch.cat(txt_freq_list, dim=0)\n\n\ndef get_na_rope(rope_type: Optional[str], dim: int):\n    if rope_type is None:\n        return None\n    if rope_type == \"mmrope3d\":\n        return NaMMRotaryEmbedding3d(dim=dim)\n    raise NotImplementedError(f\"{rope_type} is not supported.\")\n"
  },
  {
    "path": "modules/seedvr/src/models/dit_v2/window.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom math import ceil\nfrom typing import Tuple\nimport math\n\ndef get_window_op(name: str):\n    if name == \"720pwin_by_size_bysize\":\n        return make_720Pwindows_bysize\n    if name == \"720pswin_by_size_bysize\":\n        return make_shifted_720Pwindows_bysize\n    raise ValueError(f\"Unknown windowing method: {name}\")\n\n\n# -------------------------------- Windowing -------------------------------- #\ndef make_720Pwindows_bysize(size: Tuple[int, int, int], num_windows: Tuple[int, int, int]):\n    t, h, w = size\n    resized_nt, resized_nh, resized_nw = num_windows\n    #cal windows under 720p\n    scale = math.sqrt((45 * 80) / (h * w))\n    resized_h, resized_w = round(h * scale), round(w * scale)\n    wh, ww = ceil(resized_h / resized_nh), ceil(resized_w / resized_nw)  # window size.\n    wt = ceil(min(t, 30) / resized_nt)  # window size.\n    nt, nh, nw = ceil(t / wt), ceil(h / wh), ceil(w / ww)  # window size.\n    return [\n        (\n            slice(it * wt, min((it + 1) * wt, t)),\n            slice(ih * wh, min((ih + 1) * wh, h)),\n            slice(iw * ww, min((iw + 1) * ww, w)),\n        )\n        for iw in range(nw)\n        if min((iw + 1) * ww, w) > iw * ww\n        for ih in range(nh)\n        if min((ih + 1) * wh, h) > ih * wh\n        for it in range(nt)\n        if min((it + 1) * wt, t) > it * wt\n    ]\n\ndef make_shifted_720Pwindows_bysize(size: Tuple[int, int, int], num_windows: Tuple[int, int, int]):\n    t, h, w = size\n    resized_nt, resized_nh, resized_nw = num_windows\n    #cal windows under 720p\n    scale = math.sqrt((45 * 80) / (h * w))\n    resized_h, resized_w = round(h * scale), round(w * scale)\n    wh, ww = ceil(resized_h / resized_nh), ceil(resized_w / resized_nw)  # window size.\n    wt = ceil(min(t, 30) / resized_nt)  # window size.\n\n    st, sh, sw = (  # shift size.\n        0.5 if wt < t else 0,\n        0.5 if wh < h else 0,\n        0.5 if ww < w else 0,\n    )\n    nt, nh, nw = ceil((t - st) / wt), ceil((h - sh) / wh), ceil((w - sw) / ww)  # window size.\n    nt, nh, nw = (  # number of window.\n        nt + 1 if st > 0 else 1,\n        nh + 1 if sh > 0 else 1,\n        nw + 1 if sw > 0 else 1,\n    )\n    return [\n        (\n            slice(max(int((it - st) * wt), 0), min(int((it - st + 1) * wt), t)),\n            slice(max(int((ih - sh) * wh), 0), min(int((ih - sh + 1) * wh), h)),\n            slice(max(int((iw - sw) * ww), 0), min(int((iw - sw + 1) * ww), w)),\n        )\n        for iw in range(nw)\n        if min(int((iw - sw + 1) * ww), w) > max(int((iw - sw) * ww), 0)\n        for ih in range(nh)\n        if min(int((ih - sh + 1) * wh), h) > max(int((ih - sh) * wh), 0)\n        for it in range(nt)\n        if min(int((it - st + 1) * wt), t) > max(int((it - st) * wt), 0)\n    ]\n"
  },
  {
    "path": "modules/seedvr/src/models/video_vae_v3/modules/attn_video_vae.py",
    "content": "# Copyright (c) 2023 HuggingFace Team\n# Copyright (c) 2025 ByteDance Ltd. and/or its affiliates.\n# SPDX-License-Identifier: Apache License, Version 2.0 (the \"License\")\n#\n# This file has been modified by ByteDance Ltd. and/or its affiliates. on 1st June 2025\n#\n# Original file was released under Apache License, Version 2.0 (the \"License\"), with the full license text\n# available at http://www.apache.org/licenses/LICENSE-2.0.\n#\n# This modified file is released under the same license.\n\n\nfrom contextlib import nullcontext\nfrom typing import Literal, Optional, Tuple, Union\nimport diffusers\nimport torch\nimport torch.nn as nn\nfrom diffusers.models.attention_processor import Attention, SpatialNorm\nfrom diffusers.models.autoencoders.vae import DecoderOutput, DiagonalGaussianDistribution\nfrom diffusers.models.downsampling import Downsample2D\nfrom diffusers.models.lora import LoRACompatibleConv\nfrom diffusers.models.modeling_outputs import AutoencoderKLOutput\nfrom diffusers.models.resnet import ResnetBlock2D\nfrom diffusers.models.unets.unet_2d_blocks import DownEncoderBlock2D, UpDecoderBlock2D\nfrom diffusers.models.upsampling import Upsample2D\nfrom diffusers.utils import is_torch_version\nfrom diffusers.utils.accelerate_utils import apply_forward_hook\nfrom einops import rearrange\nfrom ....common.half_precision_fixes import safe_pad_operation, safe_interpolate_operation\nfrom ....common.logger import get_logger\nfrom .causal_inflation_lib import InflatedCausalConv3d, causal_norm_wrapper, init_causal_conv3d, remove_head\nfrom .context_parallel_lib import causal_conv_gather_outputs, causal_conv_slice_inputs\nfrom .global_config import set_norm_limit\nfrom .types import CausalAutoencoderOutput, CausalDecoderOutput, CausalEncoderOutput, MemoryState, _inflation_mode_t, _memory_device_t,  _receptive_field_t\n\n\nlogger = get_logger(__name__)  # pylint: disable=invalid-name\n\n\nclass Upsample3D(Upsample2D):\n    \"\"\"A 3D upsampling layer with an optional convolution.\"\"\"\n\n    def __init__(\n        self,\n        *args,\n        inflation_mode: _inflation_mode_t = \"tail\",\n        temporal_up: bool = False,\n        spatial_up: bool = True,\n        slicing: bool = False,\n        **kwargs,\n    ):\n        super().__init__(*args, **kwargs)\n        conv = self.conv if self.name == \"conv\" else self.Conv2d_0\n\n        assert type(conv) is not nn.ConvTranspose2d\n        # Note: lora_layer is not passed into constructor in the original implementation.\n        # So we make a simplification.\n        conv = init_causal_conv3d(\n            self.channels,\n            self.out_channels,\n            3,\n            padding=1,\n            inflation_mode=inflation_mode,\n        )\n\n        self.temporal_up = temporal_up\n        self.spatial_up = spatial_up\n        self.temporal_ratio = 2 if temporal_up else 1\n        self.spatial_ratio = 2 if spatial_up else 1\n        self.slicing = slicing\n\n        assert not self.interpolate\n        # [Override] MAGViT v2 implementation\n        if not self.interpolate:\n            upscale_ratio = (self.spatial_ratio**2) * self.temporal_ratio\n            self.upscale_conv = nn.Conv3d(\n                self.channels, self.channels * upscale_ratio, kernel_size=1, padding=0\n            )\n            identity = (\n                torch.eye(self.channels)\n                .repeat(upscale_ratio, 1)\n                .reshape_as(self.upscale_conv.weight)\n            )\n            self.upscale_conv.weight.data.copy_(identity)\n            nn.init.zeros_(self.upscale_conv.bias)\n\n        if self.name == \"conv\":\n            self.conv = conv\n        else:\n            self.Conv2d_0 = conv\n\n    def forward(\n        self,\n        hidden_states: torch.FloatTensor,\n        output_size: Optional[int] = None,\n        memory_state: MemoryState = MemoryState.DISABLED,\n        **kwargs,\n    ) -> torch.FloatTensor:\n        assert hidden_states.shape[1] == self.channels\n\n        if hasattr(self, \"norm\") and self.norm is not None:\n            # [Overridden] change to causal norm.\n            hidden_states = causal_norm_wrapper(self.norm, hidden_states)\n\n        if self.use_conv_transpose:\n            return self.conv(hidden_states)\n\n        if self.slicing:\n            split_size = hidden_states.size(2) // 2\n            hidden_states = list(\n                hidden_states.split([split_size, hidden_states.size(2) - split_size], dim=2)\n            )\n        else:\n            hidden_states = [hidden_states]\n        # ADD BY NUMZ\n        for i in range(len(hidden_states)):\n            hidden_states[i] = self.upscale_conv(hidden_states[i])\n            hidden_states[i] = rearrange(\n                hidden_states[i],\n                \"b (x y z c) f h w -> b c (f z) (h x) (w y)\",\n                x=self.spatial_ratio,\n                y=self.spatial_ratio,\n                z=self.temporal_ratio,\n            )\n\n        # [Overridden] For causal temporal conv\n        if self.temporal_up and memory_state != MemoryState.ACTIVE:\n            hidden_states[0] = remove_head(hidden_states[0])\n\n        if not self.slicing:\n            hidden_states = hidden_states[0]\n        # ADD BY NUMZ\n        if self.use_conv:\n            if self.name == \"conv\":\n                hidden_states = self.conv(hidden_states, memory_state=memory_state)\n            else:\n                hidden_states = self.Conv2d_0(hidden_states, memory_state=memory_state)\n\n        if not self.slicing:\n            return hidden_states\n        else:\n            return torch.cat(hidden_states, dim=2)\n\n\nclass Downsample3D(Downsample2D):\n    \"\"\"A 3D downsampling layer with an optional convolution.\"\"\"\n\n    def __init__(\n        self,\n        *args,\n        inflation_mode: _inflation_mode_t = \"tail\",\n        spatial_down: bool = False,\n        temporal_down: bool = False,\n        **kwargs,\n    ):\n        super().__init__(*args, **kwargs)\n        conv = self.conv\n        self.temporal_down = temporal_down\n        self.spatial_down = spatial_down\n\n        self.temporal_ratio = 2 if temporal_down else 1\n        self.spatial_ratio = 2 if spatial_down else 1\n\n        self.temporal_kernel = 3 if temporal_down else 1\n        self.spatial_kernel = 3 if spatial_down else 1\n\n        if type(conv) in [nn.Conv2d, LoRACompatibleConv]:\n            # Note: lora_layer is not passed into constructor in the original implementation.\n            # So we make a simplification.\n            conv = init_causal_conv3d(\n                self.channels,\n                self.out_channels,\n                kernel_size=(self.temporal_kernel, self.spatial_kernel, self.spatial_kernel),\n                stride=(self.temporal_ratio, self.spatial_ratio, self.spatial_ratio),\n                padding=(\n                    1 if self.temporal_down else 0,\n                    self.padding if self.spatial_down else 0,\n                    self.padding if self.spatial_down else 0,\n                ),\n                inflation_mode=inflation_mode,\n            )\n        elif type(conv) is nn.AvgPool2d:\n            assert self.channels == self.out_channels\n            conv = nn.AvgPool3d(\n                kernel_size=(self.temporal_ratio, self.spatial_ratio, self.spatial_ratio),\n                stride=(self.temporal_ratio, self.spatial_ratio, self.spatial_ratio),\n            )\n        else:\n            raise NotImplementedError\n\n        if self.name == \"conv\":\n            self.Conv2d_0 = conv\n            self.conv = conv\n        else:\n            self.conv = conv\n\n    def forward(\n        self,\n        hidden_states: torch.FloatTensor,\n        memory_state: MemoryState = MemoryState.DISABLED,\n        **kwargs,\n    ) -> torch.FloatTensor:\n\n        assert hidden_states.shape[1] == self.channels\n\n        if hasattr(self, \"norm\") and self.norm is not None:\n            # [Overridden] change to causal norm.\n            hidden_states = causal_norm_wrapper(self.norm, hidden_states)\n\n        if self.use_conv and self.padding == 0 and self.spatial_down:\n            pad = (0, 1, 0, 1)\n            hidden_states = safe_pad_operation(hidden_states, pad, mode=\"constant\", value=0)\n\n        assert hidden_states.shape[1] == self.channels\n\n        hidden_states = self.conv(hidden_states, memory_state=memory_state)\n\n        return hidden_states\n\n\nclass ResnetBlock3D(ResnetBlock2D):\n    def __init__(\n        self,\n        *args,\n        inflation_mode: _inflation_mode_t = \"tail\",\n        time_receptive_field: _receptive_field_t = \"half\",\n        slicing: bool = False,\n        **kwargs,\n    ):\n        super().__init__(*args, **kwargs)\n        self.conv1 = init_causal_conv3d(\n            self.in_channels,\n            self.out_channels,\n            kernel_size=(1, 3, 3) if time_receptive_field == \"half\" else (3, 3, 3),\n            stride=1,\n            padding=(0, 1, 1) if time_receptive_field == \"half\" else (1, 1, 1),\n            inflation_mode=inflation_mode,\n        )\n\n        self.conv2 = init_causal_conv3d(\n            self.out_channels,\n            self.conv2.out_channels,\n            kernel_size=3,\n            stride=1,\n            padding=1,\n            inflation_mode=inflation_mode,\n        )\n\n        if self.up:\n            assert type(self.upsample) is Upsample2D\n            self.upsample = Upsample3D(\n                self.in_channels,\n                use_conv=False,\n                inflation_mode=inflation_mode,\n                slicing=slicing,\n            )\n        elif self.down:\n            assert type(self.downsample) is Downsample2D\n            self.downsample = Downsample3D(\n                self.in_channels,\n                use_conv=False,\n                padding=1,\n                name=\"op\",\n                inflation_mode=inflation_mode,\n            )\n\n        if self.use_in_shortcut:\n            self.conv_shortcut = init_causal_conv3d(\n                self.in_channels,\n                self.conv_shortcut.out_channels,\n                kernel_size=1,\n                stride=1,\n                padding=0,\n                bias=(self.conv_shortcut.bias is not None),\n                inflation_mode=inflation_mode,\n            )\n\n    def forward(\n        self, input_tensor, temb, memory_state: MemoryState = MemoryState.DISABLED, **kwargs\n    ):\n        hidden_states = input_tensor\n\n        hidden_states = causal_norm_wrapper(self.norm1, hidden_states)\n        hidden_states = self.nonlinearity(hidden_states)\n\n        if self.upsample is not None:\n            # upsample_nearest_nhwc fails with large batch sizes.\n            # see https://github.com/huggingface/diffusers/issues/984\n            if hidden_states.shape[0] >= 64:\n                input_tensor = input_tensor.contiguous()\n                hidden_states = hidden_states.contiguous()\n            input_tensor = self.upsample(input_tensor, memory_state=memory_state)\n            hidden_states = self.upsample(hidden_states, memory_state=memory_state)\n        elif self.downsample is not None:\n            input_tensor = self.downsample(input_tensor, memory_state=memory_state)\n            hidden_states = self.downsample(hidden_states, memory_state=memory_state)\n\n        hidden_states = self.conv1(hidden_states, memory_state=memory_state)\n\n        if self.time_emb_proj is not None:\n            if not self.skip_time_act:\n                temb = self.nonlinearity(temb)\n            temb = self.time_emb_proj(temb)[:, :, None, None]\n\n        if temb is not None and self.time_embedding_norm == \"default\":\n            hidden_states = hidden_states + temb\n\n        hidden_states = causal_norm_wrapper(self.norm2, hidden_states)\n\n        if temb is not None and self.time_embedding_norm == \"scale_shift\":\n            scale, shift = torch.chunk(temb, 2, dim=1)\n            hidden_states = hidden_states * (1 + scale) + shift\n\n        hidden_states = self.nonlinearity(hidden_states)\n\n        hidden_states = self.dropout(hidden_states)\n        hidden_states = self.conv2(hidden_states, memory_state=memory_state)\n\n        if self.conv_shortcut is not None:\n            input_tensor = self.conv_shortcut(input_tensor, memory_state=memory_state)\n\n        output_tensor = (input_tensor + hidden_states) / self.output_scale_factor\n\n        return output_tensor\n\n\nclass DownEncoderBlock3D(DownEncoderBlock2D):\n    def __init__(\n        self,\n        in_channels: int,\n        out_channels: int,\n        dropout: float = 0.0,\n        num_layers: int = 1,\n        resnet_eps: float = 1e-6,\n        resnet_time_scale_shift: str = \"default\",\n        resnet_act_fn: str = \"swish\",\n        resnet_groups: int = 32,\n        resnet_pre_norm: bool = True,\n        output_scale_factor: float = 1.0,\n        add_downsample: bool = True,\n        downsample_padding: int = 1,\n        inflation_mode: _inflation_mode_t = \"tail\",\n        time_receptive_field: _receptive_field_t = \"half\",\n        temporal_down: bool = True,\n        spatial_down: bool = True,\n    ):\n        super().__init__(\n            in_channels=in_channels,\n            out_channels=out_channels,\n            dropout=dropout,\n            num_layers=num_layers,\n            resnet_eps=resnet_eps,\n            resnet_time_scale_shift=resnet_time_scale_shift,\n            resnet_act_fn=resnet_act_fn,\n            resnet_groups=resnet_groups,\n            resnet_pre_norm=resnet_pre_norm,\n            output_scale_factor=output_scale_factor,\n            add_downsample=add_downsample,\n            downsample_padding=downsample_padding,\n        )\n        resnets = []\n        temporal_modules = []\n\n        for i in range(num_layers):\n            in_channels = in_channels if i == 0 else out_channels\n            resnets.append(\n                # [Override] Replace module.\n                ResnetBlock3D(\n                    in_channels=in_channels,\n                    out_channels=out_channels,\n                    temb_channels=None,\n                    eps=resnet_eps,\n                    groups=resnet_groups,\n                    dropout=dropout,\n                    time_embedding_norm=resnet_time_scale_shift,\n                    non_linearity=resnet_act_fn,\n                    output_scale_factor=output_scale_factor,\n                    pre_norm=resnet_pre_norm,\n                    inflation_mode=inflation_mode,\n                    time_receptive_field=time_receptive_field,\n                )\n            )\n            temporal_modules.append(nn.Identity())\n\n        self.resnets = nn.ModuleList(resnets)\n        self.temporal_modules = nn.ModuleList(temporal_modules)\n\n        if add_downsample:\n            self.downsamplers = nn.ModuleList(\n                [\n                    # [Override] Replace module.\n                    Downsample3D(\n                        out_channels,\n                        use_conv=True,\n                        out_channels=out_channels,\n                        padding=downsample_padding,\n                        name=\"op\",\n                        temporal_down=temporal_down,\n                        spatial_down=spatial_down,\n                        inflation_mode=inflation_mode,\n                    )\n                ]\n            )\n        else:\n            self.downsamplers = None\n\n    def forward(\n        self,\n        hidden_states: torch.FloatTensor,\n        memory_state: MemoryState = MemoryState.DISABLED,\n        **kwargs,\n    ) -> torch.FloatTensor:\n        for resnet, temporal in zip(self.resnets, self.temporal_modules):\n            hidden_states = resnet(hidden_states, temb=None, memory_state=memory_state)\n            hidden_states = temporal(hidden_states)\n\n        if self.downsamplers is not None:\n            for downsampler in self.downsamplers:\n                hidden_states = downsampler(hidden_states, memory_state=memory_state)\n\n        return hidden_states\n\n\nclass UpDecoderBlock3D(UpDecoderBlock2D):\n    def __init__(\n        self,\n        in_channels: int,\n        out_channels: int,\n        dropout: float = 0.0,\n        num_layers: int = 1,\n        resnet_eps: float = 1e-6,\n        resnet_time_scale_shift: str = \"default\",  # default, spatial\n        resnet_act_fn: str = \"swish\",\n        resnet_groups: int = 32,\n        resnet_pre_norm: bool = True,\n        output_scale_factor: float = 1.0,\n        add_upsample: bool = True,\n        temb_channels: Optional[int] = None,\n        inflation_mode: _inflation_mode_t = \"tail\",\n        time_receptive_field: _receptive_field_t = \"half\",\n        temporal_up: bool = True,\n        spatial_up: bool = True,\n        slicing: bool = False,\n    ):\n        super().__init__(\n            in_channels=in_channels,\n            out_channels=out_channels,\n            dropout=dropout,\n            num_layers=num_layers,\n            resnet_eps=resnet_eps,\n            resnet_time_scale_shift=resnet_time_scale_shift,\n            resnet_act_fn=resnet_act_fn,\n            resnet_groups=resnet_groups,\n            resnet_pre_norm=resnet_pre_norm,\n            output_scale_factor=output_scale_factor,\n            add_upsample=add_upsample,\n            temb_channels=temb_channels,\n        )\n        resnets = []\n        temporal_modules = []\n\n        for i in range(num_layers):\n            input_channels = in_channels if i == 0 else out_channels\n\n            resnets.append(\n                # [Override] Replace module.\n                ResnetBlock3D(\n                    in_channels=input_channels,\n                    out_channels=out_channels,\n                    temb_channels=temb_channels,\n                    eps=resnet_eps,\n                    groups=resnet_groups,\n                    dropout=dropout,\n                    time_embedding_norm=resnet_time_scale_shift,\n                    non_linearity=resnet_act_fn,\n                    output_scale_factor=output_scale_factor,\n                    pre_norm=resnet_pre_norm,\n                    inflation_mode=inflation_mode,\n                    time_receptive_field=time_receptive_field,\n                    slicing=slicing,\n                )\n            )\n\n            temporal_modules.append(nn.Identity())\n\n        self.resnets = nn.ModuleList(resnets)\n        self.temporal_modules = nn.ModuleList(temporal_modules)\n\n        if add_upsample:\n            # [Override] Replace module & use learnable upsample\n            self.upsamplers = nn.ModuleList(\n                [\n                    Upsample3D(\n                        out_channels,\n                        use_conv=True,\n                        out_channels=out_channels,\n                        temporal_up=temporal_up,\n                        spatial_up=spatial_up,\n                        interpolate=False,\n                        inflation_mode=inflation_mode,\n                        slicing=slicing,\n                    )\n                ]\n            )\n        else:\n            self.upsamplers = None\n\n    def forward(\n        self,\n        hidden_states: torch.FloatTensor,\n        temb: Optional[torch.FloatTensor] = None,\n        memory_state: MemoryState = MemoryState.DISABLED,\n    ) -> torch.FloatTensor:\n        for resnet, temporal in zip(self.resnets, self.temporal_modules):\n            hidden_states = resnet(hidden_states, temb=None, memory_state=memory_state)\n            hidden_states = temporal(hidden_states)\n\n        if self.upsamplers is not None:\n            for upsampler in self.upsamplers:\n                hidden_states = upsampler(hidden_states, memory_state=memory_state)\n\n        return hidden_states\n\n\nclass UNetMidBlock3D(nn.Module):\n    def __init__(\n        self,\n        in_channels: int,\n        temb_channels: int,\n        dropout: float = 0.0,\n        num_layers: int = 1,\n        resnet_eps: float = 1e-6,\n        resnet_time_scale_shift: str = \"default\",  # default, spatial\n        resnet_act_fn: str = \"swish\",\n        resnet_groups: int = 32,\n        resnet_pre_norm: bool = True,\n        add_attention: bool = True,\n        attention_head_dim: int = 1,\n        output_scale_factor: float = 1.0,\n        inflation_mode: _inflation_mode_t = \"tail\",\n        time_receptive_field: _receptive_field_t = \"half\",\n    ):\n        super().__init__()\n        resnet_groups = resnet_groups if resnet_groups is not None else min(in_channels // 4, 32)\n        self.add_attention = add_attention\n\n        # there is always at least one resnet\n        resnets = [\n            # [Override] Replace module.\n            ResnetBlock3D(\n                in_channels=in_channels,\n                out_channels=in_channels,\n                temb_channels=temb_channels,\n                eps=resnet_eps,\n                groups=resnet_groups,\n                dropout=dropout,\n                time_embedding_norm=resnet_time_scale_shift,\n                non_linearity=resnet_act_fn,\n                output_scale_factor=output_scale_factor,\n                pre_norm=resnet_pre_norm,\n                inflation_mode=inflation_mode,\n                time_receptive_field=time_receptive_field,\n            )\n        ]\n        attentions = []\n\n        if attention_head_dim is None:\n            logger.warn(\n                f\"It is not recommend to pass `attention_head_dim=None`. \"\n                f\"Defaulting `attention_head_dim` to `in_channels`: {in_channels}.\"\n            )\n            attention_head_dim = in_channels\n\n        for _ in range(num_layers):\n            if self.add_attention:\n                attentions.append(\n                    Attention(\n                        in_channels,\n                        heads=in_channels // attention_head_dim,\n                        dim_head=attention_head_dim,\n                        rescale_output_factor=output_scale_factor,\n                        eps=resnet_eps,\n                        norm_num_groups=(\n                            resnet_groups if resnet_time_scale_shift == \"default\" else None\n                        ),\n                        spatial_norm_dim=(\n                            temb_channels if resnet_time_scale_shift == \"spatial\" else None\n                        ),\n                        residual_connection=True,\n                        bias=True,\n                        upcast_softmax=True,\n                        _from_deprecated_attn_block=True,\n                    )\n                )\n            else:\n                attentions.append(None)\n\n            resnets.append(\n                ResnetBlock3D(\n                    in_channels=in_channels,\n                    out_channels=in_channels,\n                    temb_channels=temb_channels,\n                    eps=resnet_eps,\n                    groups=resnet_groups,\n                    dropout=dropout,\n                    time_embedding_norm=resnet_time_scale_shift,\n                    non_linearity=resnet_act_fn,\n                    output_scale_factor=output_scale_factor,\n                    pre_norm=resnet_pre_norm,\n                    inflation_mode=inflation_mode,\n                    time_receptive_field=time_receptive_field,\n                )\n            )\n\n        self.attentions = nn.ModuleList(attentions)\n        self.resnets = nn.ModuleList(resnets)\n\n    def forward(self, hidden_states, temb=None, memory_state: MemoryState = MemoryState.DISABLED):\n        video_length, frame_height, frame_width = hidden_states.size()[-3:]\n        hidden_states = self.resnets[0](hidden_states, temb, memory_state=memory_state)\n        for attn, resnet in zip(self.attentions, self.resnets[1:]):\n            if attn is not None:\n                hidden_states = rearrange(hidden_states, \"b c f h w -> (b f) c h w\")\n                hidden_states = attn(hidden_states, temb=temb)\n                hidden_states = rearrange(\n                    hidden_states, \"(b f) c h w -> b c f h w\", f=video_length\n                )\n            hidden_states = resnet(hidden_states, temb, memory_state=memory_state)\n\n        return hidden_states\n\n\nclass Encoder3D(nn.Module):\n    r\"\"\"\n    [Override] override most logics to support extra condition input and causal conv\n\n    The `Encoder` layer of a variational autoencoder that encodes\n    its input into a latent representation.\n\n    Args:\n        in_channels (`int`, *optional*, defaults to 3):\n            The number of input channels.\n        out_channels (`int`, *optional*, defaults to 3):\n            The number of output channels.\n        down_block_types (`Tuple[str, ...]`, *optional*, defaults to `(\"DownEncoderBlock2D\",)`):\n            The types of down blocks to use.\n            See `~diffusers.models.unet_2d_blocks.get_down_block`\n            for available options.\n        block_out_channels (`Tuple[int, ...]`, *optional*, defaults to `(64,)`):\n            The number of output channels for each block.\n        layers_per_block (`int`, *optional*, defaults to 2):\n            The number of layers per block.\n        norm_num_groups (`int`, *optional*, defaults to 32):\n            The number of groups for normalization.\n        act_fn (`str`, *optional*, defaults to `\"silu\"`):\n            The activation function to use.\n            See `~diffusers.models.activations.get_activation` for available options.\n        double_z (`bool`, *optional*, defaults to `True`):\n            Whether to double the number of output channels for the last block.\n    \"\"\"\n\n    def __init__(\n        self,\n        in_channels: int = 3,\n        out_channels: int = 3,\n        down_block_types: Tuple[str, ...] = (\"DownEncoderBlock3D\",),\n        block_out_channels: Tuple[int, ...] = (64,),\n        layers_per_block: int = 2,\n        norm_num_groups: int = 32,\n        act_fn: str = \"silu\",\n        double_z: bool = True,\n        mid_block_add_attention=True,\n        # [Override] add extra_cond_dim, temporal down num\n        temporal_down_num: int = 2,\n        extra_cond_dim: int = None,\n        gradient_checkpoint: bool = False,\n        inflation_mode: _inflation_mode_t = \"tail\",\n        time_receptive_field: _receptive_field_t = \"half\",\n    ):\n        super().__init__()\n        self.layers_per_block = layers_per_block\n        self.temporal_down_num = temporal_down_num\n\n        self.conv_in = init_causal_conv3d(\n            in_channels,\n            block_out_channels[0],\n            kernel_size=3,\n            stride=1,\n            padding=1,\n            inflation_mode=inflation_mode,\n        )\n\n        self.mid_block = None\n        self.down_blocks = nn.ModuleList([])\n        self.extra_cond_dim = extra_cond_dim\n\n        self.conv_extra_cond = nn.ModuleList([])\n\n        # down\n        output_channel = block_out_channels[0]\n        for i, down_block_type in enumerate(down_block_types):\n            input_channel = output_channel\n            output_channel = block_out_channels[i]\n            is_final_block = i == len(block_out_channels) - 1\n            # [Override] to support temporal down block design\n            is_temporal_down_block = i >= len(block_out_channels) - self.temporal_down_num - 1\n            # Note: take the last ones\n\n            assert down_block_type == \"DownEncoderBlock3D\"\n\n            down_block = DownEncoderBlock3D(\n                num_layers=self.layers_per_block,\n                in_channels=input_channel,\n                out_channels=output_channel,\n                add_downsample=not is_final_block,\n                resnet_eps=1e-6,\n                downsample_padding=0,\n                # Note: Don't know why set it as 0\n                resnet_act_fn=act_fn,\n                resnet_groups=norm_num_groups,\n                temporal_down=is_temporal_down_block,\n                spatial_down=True,\n                inflation_mode=inflation_mode,\n                time_receptive_field=time_receptive_field,\n            )\n            self.down_blocks.append(down_block)\n\n            def zero_module(module):\n                # Zero out the parameters of a module and return it.\n                for p in module.parameters():\n                    p.detach().zero_()\n                return module\n\n            self.conv_extra_cond.append(\n                zero_module(\n                    nn.Conv3d(extra_cond_dim, output_channel, kernel_size=1, stride=1, padding=0)\n                )\n                if self.extra_cond_dim is not None and self.extra_cond_dim > 0\n                else None\n            )\n\n        # mid\n        self.mid_block = UNetMidBlock3D(\n            in_channels=block_out_channels[-1],\n            resnet_eps=1e-6,\n            resnet_act_fn=act_fn,\n            output_scale_factor=1,\n            resnet_time_scale_shift=\"default\",\n            attention_head_dim=block_out_channels[-1],\n            resnet_groups=norm_num_groups,\n            temb_channels=None,\n            add_attention=mid_block_add_attention,\n            inflation_mode=inflation_mode,\n            time_receptive_field=time_receptive_field,\n        )\n\n        # out\n        self.conv_norm_out = nn.GroupNorm(\n            num_channels=block_out_channels[-1], num_groups=norm_num_groups, eps=1e-6\n        )\n        self.conv_act = nn.SiLU()\n\n        conv_out_channels = 2 * out_channels if double_z else out_channels\n        self.conv_out = init_causal_conv3d(\n            block_out_channels[-1], conv_out_channels, 3, padding=1, inflation_mode=inflation_mode\n        )\n\n        self.gradient_checkpointing = gradient_checkpoint\n\n    def forward(\n        self,\n        sample: torch.FloatTensor,\n        extra_cond=None,\n        memory_state: MemoryState = MemoryState.DISABLED,\n    ) -> torch.FloatTensor:\n        r\"\"\"The forward method of the `Encoder` class.\"\"\"\n        sample = self.conv_in(sample, memory_state=memory_state)\n        if self.training and self.gradient_checkpointing:\n\n            def create_custom_forward(module):\n                def custom_forward(*inputs):\n                    return module(*inputs)\n\n                return custom_forward\n\n            # down\n            # [Override] add extra block and extra cond\n            for down_block, extra_block in zip(self.down_blocks, self.conv_extra_cond):\n                sample = torch.utils.checkpoint.checkpoint(\n                    create_custom_forward(down_block), sample, memory_state, use_reentrant=False\n                )\n                if extra_block is not None:\n                    sample = sample + safe_interpolate_operation(extra_block(extra_cond), size=sample.shape[2:])\n\n            # middle\n            sample = self.mid_block(sample, memory_state=memory_state)\n\n            # sample = torch.utils.checkpoint.checkpoint(\n            #     create_custom_forward(self.mid_block), sample, use_reentrant=False\n            # )\n\n        else:\n            # down\n            # [Override] add extra block and extra cond\n            for down_block, extra_block in zip(self.down_blocks, self.conv_extra_cond):\n                sample = down_block(sample, memory_state=memory_state)\n                if extra_block is not None:\n                    sample = sample + safe_interpolate_operation(extra_block(extra_cond), size=sample.shape[2:])\n\n            # middle\n            sample = self.mid_block(sample, memory_state=memory_state)\n\n        # post-process\n        sample = causal_norm_wrapper(self.conv_norm_out, sample)\n        sample = self.conv_act(sample)\n        sample = self.conv_out(sample, memory_state=memory_state)\n\n        return sample\n\n\nclass Decoder3D(nn.Module):\n    r\"\"\"\n    The `Decoder` layer of a variational autoencoder that\n    decodes its latent representation into an output sample.\n\n    Args:\n        in_channels (`int`, *optional*, defaults to 3):\n            The number of input channels.\n        out_channels (`int`, *optional*, defaults to 3):\n            The number of output channels.\n        up_block_types (`Tuple[str, ...]`, *optional*, defaults to `(\"UpDecoderBlock2D\",)`):\n            The types of up blocks to use.\n            See `~diffusers.models.unet_2d_blocks.get_up_block` for available options.\n        block_out_channels (`Tuple[int, ...]`, *optional*, defaults to `(64,)`):\n            The number of output channels for each block.\n        layers_per_block (`int`, *optional*, defaults to 2):\n            The number of layers per block.\n        norm_num_groups (`int`, *optional*, defaults to 32):\n            The number of groups for normalization.\n        act_fn (`str`, *optional*, defaults to `\"silu\"`):\n            The activation function to use.\n            See `~diffusers.models.activations.get_activation` for available options.\n        norm_type (`str`, *optional*, defaults to `\"group\"`):\n            The normalization type to use. Can be either `\"group\"` or `\"spatial\"`.\n    \"\"\"\n\n    def __init__(\n        self,\n        in_channels: int = 3,\n        out_channels: int = 3,\n        up_block_types: Tuple[str, ...] = (\"UpDecoderBlock3D\",),\n        block_out_channels: Tuple[int, ...] = (64,),\n        layers_per_block: int = 2,\n        norm_num_groups: int = 32,\n        act_fn: str = \"silu\",\n        norm_type: str = \"group\",  # group, spatial\n        mid_block_add_attention=True,\n        # [Override] add temporal up block\n        inflation_mode: _inflation_mode_t = \"tail\",\n        time_receptive_field: _receptive_field_t = \"half\",\n        temporal_up_num: int = 2,\n        slicing_up_num: int = 0,\n        gradient_checkpoint: bool = False,\n    ):\n        super().__init__()\n        self.layers_per_block = layers_per_block\n        self.temporal_up_num = temporal_up_num\n\n        self.conv_in = init_causal_conv3d(\n            in_channels,\n            block_out_channels[-1],\n            kernel_size=3,\n            stride=1,\n            padding=1,\n            inflation_mode=inflation_mode,\n        )\n\n        self.mid_block = None\n        self.up_blocks = nn.ModuleList([])\n\n        temb_channels = in_channels if norm_type == \"spatial\" else None\n\n        # mid\n        self.mid_block = UNetMidBlock3D(\n            in_channels=block_out_channels[-1],\n            resnet_eps=1e-6,\n            resnet_act_fn=act_fn,\n            output_scale_factor=1,\n            resnet_time_scale_shift=\"default\" if norm_type == \"group\" else norm_type,\n            attention_head_dim=block_out_channels[-1],\n            resnet_groups=norm_num_groups,\n            temb_channels=temb_channels,\n            add_attention=mid_block_add_attention,\n            inflation_mode=inflation_mode,\n            time_receptive_field=time_receptive_field,\n        )\n\n        # up\n        reversed_block_out_channels = list(reversed(block_out_channels))\n        output_channel = reversed_block_out_channels[0]\n        for i, up_block_type in enumerate(up_block_types):\n            prev_output_channel = output_channel\n            output_channel = reversed_block_out_channels[i]\n\n            is_final_block = i == len(block_out_channels) - 1\n            is_temporal_up_block = i < self.temporal_up_num\n            is_slicing_up_block = i >= len(block_out_channels) - slicing_up_num\n            # Note: Keep symmetric\n\n            assert up_block_type == \"UpDecoderBlock3D\"\n            up_block = UpDecoderBlock3D(\n                num_layers=self.layers_per_block + 1,\n                in_channels=prev_output_channel,\n                out_channels=output_channel,\n                add_upsample=not is_final_block,\n                resnet_eps=1e-6,\n                resnet_act_fn=act_fn,\n                resnet_groups=norm_num_groups,\n                resnet_time_scale_shift=norm_type,\n                temb_channels=temb_channels,\n                temporal_up=is_temporal_up_block,\n                slicing=is_slicing_up_block,\n                inflation_mode=inflation_mode,\n                time_receptive_field=time_receptive_field,\n            )\n            self.up_blocks.append(up_block)\n            prev_output_channel = output_channel\n\n        # out\n        if norm_type == \"spatial\":\n            self.conv_norm_out = SpatialNorm(block_out_channels[0], temb_channels)\n        else:\n            self.conv_norm_out = nn.GroupNorm(\n                num_channels=block_out_channels[0], num_groups=norm_num_groups, eps=1e-6\n            )\n        self.conv_act = nn.SiLU()\n        self.conv_out = init_causal_conv3d(\n            block_out_channels[0], out_channels, 3, padding=1, inflation_mode=inflation_mode\n        )\n\n        self.gradient_checkpointing = gradient_checkpoint\n\n    # Note: Just copy from Decoder.\n    def forward(\n        self,\n        sample: torch.FloatTensor,\n        latent_embeds: Optional[torch.FloatTensor] = None,\n        memory_state: MemoryState = MemoryState.DISABLED,\n    ) -> torch.FloatTensor:\n        r\"\"\"The forward method of the `Decoder` class.\"\"\"\n\n        sample = self.conv_in(sample, memory_state=memory_state)\n\n        #upscale_dtype = next(iter(self.up_blocks.parameters())).dtype\n        upscale_dtype = sample.dtype\n        if self.training and self.gradient_checkpointing:\n\n            def create_custom_forward(module):\n                def custom_forward(*inputs):\n                    return module(*inputs)\n\n                return custom_forward\n\n            if is_torch_version(\">=\", \"1.11.0\"):\n                sample = self.mid_block(sample, latent_embeds, memory_state=memory_state)\n                sample = sample.to(upscale_dtype)\n\n                # up\n                for up_block in self.up_blocks:\n                    sample = torch.utils.checkpoint.checkpoint(\n                        create_custom_forward(up_block),\n                        sample,\n                        latent_embeds,\n                        memory_state,\n                        use_reentrant=False,\n                    )\n            else:\n                # middle\n                sample = self.mid_block(sample, latent_embeds, memory_state=memory_state)\n                sample = sample.to(upscale_dtype)\n\n                # up\n                for up_block in self.up_blocks:\n                    sample = torch.utils.checkpoint.checkpoint(\n                        create_custom_forward(up_block), sample, latent_embeds, memory_state\n                    )\n        else:\n            # middle\n            sample = self.mid_block(sample, latent_embeds, memory_state=memory_state)\n            sample = sample.to(upscale_dtype)\n\n            # up\n            for up_block in self.up_blocks:\n                sample = up_block(sample, latent_embeds, memory_state=memory_state)\n\n        # post-process\n        sample = causal_norm_wrapper(self.conv_norm_out, sample)\n        sample = self.conv_act(sample)\n        sample = self.conv_out(sample, memory_state=memory_state)\n\n        return sample\n\n\nclass AutoencoderKL(diffusers.AutoencoderKL):\n    \"\"\"\n    We simply inherit the model code from diffusers\n    \"\"\"\n\n    def __init__(self, attention: bool = True, *args, **kwargs):\n        super().__init__(*args, **kwargs)\n\n        # A hacky way to remove attention.\n        if not attention:\n            self.encoder.mid_block.attentions = torch.nn.ModuleList([None])\n            self.decoder.mid_block.attentions = torch.nn.ModuleList([None])\n\n    def load_state_dict(self, state_dict, strict=True):\n        # Newer version of diffusers changed the model keys,\n        # causing incompatibility with old checkpoints.\n        # They provided a method for conversion. We call conversion before loading state_dict.\n        convert_deprecated_attention_blocks = getattr(\n            self, \"_convert_deprecated_attention_blocks\", None\n        )\n        if callable(convert_deprecated_attention_blocks):\n            convert_deprecated_attention_blocks(state_dict)\n        return super().load_state_dict(state_dict, strict)\n\n\nclass VideoAutoencoderKL(diffusers.AutoencoderKL):\n    \"\"\"\n    We simply inherit the model code from diffusers\n    \"\"\"\n\n    def __init__(\n        self,\n        in_channels: int = 3,\n        out_channels: int = 3,\n        down_block_types: Tuple[str] = (\"DownEncoderBlock3D\",),\n        up_block_types: Tuple[str] = (\"UpDecoderBlock3D\",),\n        block_out_channels: Tuple[int] = (64,),\n        layers_per_block: int = 1,\n        act_fn: str = \"silu\",\n        latent_channels: int = 4,\n        norm_num_groups: int = 32,\n        sample_size: int = 32,\n        scaling_factor: float = 0.18215,\n        force_upcast: float = True,\n        attention: bool = True,\n        temporal_scale_num: int = 0,\n        slicing_up_num: int = 0,\n        gradient_checkpoint: bool = False,\n        inflation_mode: _inflation_mode_t = \"tail\",\n        time_receptive_field: _receptive_field_t = \"full\",\n        slicing_sample_min_size: int = 32,\n        use_quant_conv: bool = True,\n        use_post_quant_conv: bool = True,\n        *args,\n        **kwargs,\n    ):\n        extra_cond_dim = kwargs.pop(\"extra_cond_dim\") if \"extra_cond_dim\" in kwargs else None\n        self.slicing_sample_min_size = slicing_sample_min_size\n        self.slicing_latent_min_size = slicing_sample_min_size // (2**temporal_scale_num)\n\n        super().__init__(\n            in_channels=in_channels,\n            out_channels=out_channels,\n            # [Override] make sure it can be normally initialized\n            down_block_types=tuple(\n                [down_block_type.replace(\"3D\", \"2D\") for down_block_type in down_block_types]\n            ),\n            up_block_types=tuple(\n                [up_block_type.replace(\"3D\", \"2D\") for up_block_type in up_block_types]\n            ),\n            block_out_channels=block_out_channels,\n            layers_per_block=layers_per_block,\n            act_fn=act_fn,\n            latent_channels=latent_channels,\n            norm_num_groups=norm_num_groups,\n            sample_size=sample_size,\n            scaling_factor=scaling_factor,\n            force_upcast=force_upcast,\n            *args,\n            **kwargs,\n        )\n\n        # pass init params to Encoder\n        self.encoder = Encoder3D(\n            in_channels=in_channels,\n            out_channels=latent_channels,\n            down_block_types=down_block_types,\n            block_out_channels=block_out_channels,\n            layers_per_block=layers_per_block,\n            act_fn=act_fn,\n            norm_num_groups=norm_num_groups,\n            double_z=True,\n            extra_cond_dim=extra_cond_dim,\n            # [Override] add temporal_down_num parameter\n            temporal_down_num=temporal_scale_num,\n            gradient_checkpoint=gradient_checkpoint,\n            inflation_mode=inflation_mode,\n            time_receptive_field=time_receptive_field,\n        )\n\n        # pass init params to Decoder\n        self.decoder = Decoder3D(\n            in_channels=latent_channels,\n            out_channels=out_channels,\n            up_block_types=up_block_types,\n            block_out_channels=block_out_channels,\n            layers_per_block=layers_per_block,\n            norm_num_groups=norm_num_groups,\n            act_fn=act_fn,\n            # [Override] add temporal_up_num parameter\n            temporal_up_num=temporal_scale_num,\n            slicing_up_num=slicing_up_num,\n            gradient_checkpoint=gradient_checkpoint,\n            inflation_mode=inflation_mode,\n            time_receptive_field=time_receptive_field,\n        )\n\n        self.quant_conv = (\n            init_causal_conv3d(\n                in_channels=2 * latent_channels,\n                out_channels=2 * latent_channels,\n                kernel_size=1,\n                inflation_mode=inflation_mode,\n            )\n            if use_quant_conv\n            else None\n        )\n        self.post_quant_conv = (\n            init_causal_conv3d(\n                in_channels=latent_channels,\n                out_channels=latent_channels,\n                kernel_size=1,\n                inflation_mode=inflation_mode,\n            )\n            if use_post_quant_conv\n            else None\n        )\n\n        # A hacky way to remove attention.\n        if not attention:\n            self.encoder.mid_block.attentions = torch.nn.ModuleList([None])\n            self.decoder.mid_block.attentions = torch.nn.ModuleList([None])\n\n    @apply_forward_hook\n    def encode(self, x: torch.FloatTensor, return_dict: bool = True) -> AutoencoderKLOutput:\n        # h = self.slicing_encode(x)\n        h = self.tiled_encode(x)\n        posterior = DiagonalGaussianDistribution(h)\n\n        if not return_dict:\n            return (posterior,)\n\n        return AutoencoderKLOutput(latent_dist=posterior)\n\n    @apply_forward_hook\n    def decode(\n        self, z: torch.Tensor, return_dict: bool = True\n    ) -> Union[DecoderOutput, torch.Tensor]:\n        # decoded = self.slicing_decode(z)\n        decoded = self.tiled_decode(z)\n\n        if not return_dict:\n            return (decoded,)\n\n        return DecoderOutput(sample=decoded)\n\n    def _encode(\n        self, x: torch.Tensor, memory_state: MemoryState = MemoryState.DISABLED\n    ) -> torch.Tensor:\n        _x = x.to(self.device)\n        _x = causal_conv_slice_inputs(_x, self.slicing_sample_min_size, memory_state=memory_state)\n        h = self.encoder(_x, memory_state=memory_state)\n        if self.quant_conv is not None:\n            output = self.quant_conv(h, memory_state=memory_state)\n        else:\n            output = h\n        output = causal_conv_gather_outputs(output)\n        return output.to(x.device)\n\n    def _decode(\n        self, z: torch.Tensor, memory_state: MemoryState = MemoryState.DISABLED\n    ) -> torch.Tensor:\n        _z = z.to(self.device)\n        _z = causal_conv_slice_inputs(_z, self.slicing_latent_min_size, memory_state=memory_state)\n        if self.post_quant_conv is not None:\n            _z = self.post_quant_conv(_z, memory_state=memory_state)\n        output = self.decoder(_z, memory_state=memory_state)\n        output = causal_conv_gather_outputs(output)\n        return output.to(z.device)\n\n    def slicing_encode(self, x: torch.Tensor) -> torch.Tensor:\n        sp_size = 1\n        if self.use_slicing and (x.shape[2] - 1) > self.slicing_sample_min_size * sp_size:\n            x_slices = x[:, :, 1:].split(split_size=self.slicing_sample_min_size * sp_size, dim=2)\n            encoded_slices = [\n                self._encode(\n                    torch.cat((x[:, :, :1], x_slices[0]), dim=2),\n                    memory_state=MemoryState.INITIALIZING,\n                )\n            ]\n            for x_idx in range(1, len(x_slices)):\n                encoded_slices.append(\n                    self._encode(x_slices[x_idx], memory_state=MemoryState.ACTIVE)\n                )\n            return torch.cat(encoded_slices, dim=2)\n        else:\n            return self._encode(x)\n\n    def slicing_decode(self, z: torch.Tensor) -> torch.Tensor:\n        sp_size = 1\n        if self.use_slicing and (z.shape[2] - 1) > self.slicing_latent_min_size * sp_size:\n            z_slices = z[:, :, 1:].split(split_size=self.slicing_latent_min_size * sp_size, dim=2)\n            decoded_slices = [\n                self._decode(\n                    torch.cat((z[:, :, :1], z_slices[0]), dim=2),\n                    memory_state=MemoryState.INITIALIZING,\n                )\n            ]\n            for z_idx in range(1, len(z_slices)):\n                decoded_slices.append(\n                    self._decode(z_slices[z_idx], memory_state=MemoryState.ACTIVE)\n                )\n            return torch.cat(decoded_slices, dim=2)\n        else:\n            return self._decode(z)\n\n    def blend_v(self, a: torch.Tensor, b: torch.Tensor, blend_extent: int) -> torch.Tensor:\n        blend_extent = min(a.shape[3], b.shape[3], blend_extent)\n        for y in range(blend_extent):\n            b[:, :, :, y, :] = a[:, :, :, -blend_extent + y, :] * (1 - y / blend_extent) + b[:, :, :, y, :] * (y / blend_extent)\n        return b\n\n    def blend_h(self, a: torch.Tensor, b: torch.Tensor, blend_extent: int) -> torch.Tensor:\n        blend_extent = min(a.shape[4], b.shape[4], blend_extent)\n        for x in range(blend_extent):\n            b[:, :, :, :, x] = a[:, :, :, :, -blend_extent + x] * (1 - x / blend_extent) + b[:, :, :, :, x] * (x / blend_extent)\n        return b\n\n    def tiled_encode(self, x: torch.Tensor) -> torch.Tensor:\n        overlap_size = int(self.tile_sample_min_size * (1 - self.tile_overlap_factor))\n        blend_extent = int(self.tile_latent_min_size * self.tile_overlap_factor)\n        row_limit = self.tile_latent_min_size - blend_extent\n        rows = []\n        for i in range(0, x.shape[3], overlap_size):\n            row = []\n            for j in range(0, x.shape[4], overlap_size):\n                tile = x[:, :, :, i : i + self.tile_sample_min_size, j : j + self.tile_sample_min_size]\n                tile = self._encode(tile)\n                row.append(tile)\n            rows.append(row)\n        result_rows = []\n        for i, row in enumerate(rows):\n            result_row = []\n            for j, tile in enumerate(row):\n                if i > 0:\n                    tile = self.blend_v(rows[i - 1][j], tile, blend_extent)\n                if j > 0:\n                    tile = self.blend_h(row[j - 1], tile, blend_extent)\n                result_row.append(tile[:, :, :, :row_limit, :row_limit])\n            result_rows.append(torch.cat(result_row, dim=4))\n        enc = torch.cat(result_rows, dim=3)\n        return enc\n\n    def tiled_decode(self, z: torch.Tensor) -> torch.Tensor:\n        overlap_size = int(self.tile_latent_min_size * (1 - self.tile_overlap_factor))\n        blend_extent = int(self.tile_sample_min_size * self.tile_overlap_factor)\n        row_limit = self.tile_sample_min_size - blend_extent\n        rows = []\n        for i in range(0, z.shape[3], overlap_size):\n            row = []\n            for j in range(0, z.shape[4], overlap_size):\n                tile = z[:, :, :, i : i + self.tile_latent_min_size, j : j + self.tile_latent_min_size]\n                decoded = self.decoder(tile)\n                row.append(decoded)\n            rows.append(row)\n        result_rows = []\n        for i, row in enumerate(rows):\n            result_row = []\n            for j, tile in enumerate(row):\n                if i > 0:\n                    tile = self.blend_v(rows[i - 1][j], tile, blend_extent)\n                if j > 0:\n                    tile = self.blend_h(row[j - 1], tile, blend_extent)\n                result_row.append(tile[:, :, :, :row_limit, :row_limit])\n            result_rows.append(torch.cat(result_row, dim=4))\n        dec = torch.cat(result_rows, dim=3)\n        return dec\n\n    def forward(\n        self, x: torch.FloatTensor, mode: Literal[\"encode\", \"decode\", \"all\"] = \"all\", **kwargs\n    ):\n        # x: [b c t h w]\n        if mode == \"encode\":\n            h = self.encode(x)\n            return h.latent_dist\n        elif mode == \"decode\":\n            h = self.decode(x)\n            return h.sample\n        else:\n            h = self.encode(x)\n            h = self.decode(h.latent_dist.mode())\n            return h.sample\n\n    def load_state_dict(self, state_dict, strict=False):\n        # Newer version of diffusers changed the model keys,\n        # causing incompatibility with old checkpoints.\n        # They provided a method for conversion.\n        # We call conversion before loading state_dict.\n        convert_deprecated_attention_blocks = getattr(\n            self, \"_convert_deprecated_attention_blocks\", None\n        )\n        if callable(convert_deprecated_attention_blocks):\n            convert_deprecated_attention_blocks(state_dict)\n        return super().load_state_dict(state_dict, strict)\n\n\nclass VideoAutoencoderKLWrapper(VideoAutoencoderKL):\n    def __init__(\n        self,\n        *args,\n        spatial_downsample_factor: int,\n        temporal_downsample_factor: int,\n        freeze_encoder: bool,\n        **kwargs,\n    ):\n        self.spatial_downsample_factor = spatial_downsample_factor\n        self.temporal_downsample_factor = temporal_downsample_factor\n        self.freeze_encoder = freeze_encoder\n        super().__init__(*args, **kwargs)\n\n    def forward(self, x: torch.FloatTensor) -> CausalAutoencoderOutput:\n        with torch.no_grad() if self.freeze_encoder else nullcontext():\n            z, p = self.encode(x)\n        x = self.decode(z).sample\n        return CausalAutoencoderOutput(x, z, p)\n\n    def encode(self, x: torch.FloatTensor) -> CausalEncoderOutput:\n        if x.ndim == 4:\n            x = x.unsqueeze(2)\n        p = super().encode(x).latent_dist\n        z = p.sample().squeeze(2)\n        return CausalEncoderOutput(z, p)\n\n    def decode(self, z: torch.FloatTensor) -> CausalDecoderOutput:\n        if z.ndim == 4:\n            z = z.unsqueeze(2)\n        x = super().decode(z).sample.squeeze(2)\n        return CausalDecoderOutput(x)\n\n    def preprocess(self, x: torch.Tensor):\n        # x should in [B, C, T, H, W], [B, C, H, W]\n        assert x.ndim == 4 or x.size(2) % 4 == 1\n        return x\n\n    def postprocess(self, x: torch.Tensor):\n        # x should in [B, C, T, H, W], [B, C, H, W]\n        return x\n\n    def set_causal_slicing(\n        self,\n        *,\n        split_size: Optional[int],\n        memory_device: _memory_device_t,\n    ):\n        assert (\n            split_size is None or memory_device is not None\n        ), \"if split_size is set, memory_device must not be None.\"\n        if split_size is not None:\n            self.enable_slicing()\n            self.slicing_sample_min_size = split_size\n            self.slicing_latent_min_size = split_size // self.temporal_downsample_factor\n        else:\n            self.disable_slicing()\n        for module in self.modules():\n            if isinstance(module, InflatedCausalConv3d):\n                module.set_memory_device(memory_device)\n\n    def set_memory_limit(self, conv_max_mem: Optional[float], norm_max_mem: Optional[float]):\n        set_norm_limit(norm_max_mem)\n        for m in self.modules():\n            if isinstance(m, InflatedCausalConv3d):\n                m.set_memory_limit(conv_max_mem if conv_max_mem is not None else float(\"inf\"))\n"
  },
  {
    "path": "modules/seedvr/src/models/video_vae_v3/modules/causal_inflation_lib.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nimport math\nfrom contextlib import contextmanager\nfrom typing import List, Optional, Union\nimport torch\nimport torch.nn.functional as F\nfrom diffusers.models.normalization import RMSNorm\nfrom einops import rearrange\nfrom torch import Tensor, nn\nfrom torch.nn import Conv3d\nfrom .context_parallel_lib import cache_send_recv, get_cache_size\nfrom .global_config import get_norm_limit\nfrom .types import MemoryState, _inflation_mode_t, _memory_device_t\nfrom ....common.half_precision_fixes import safe_pad_operation\n\n\n@contextmanager\ndef ignore_padding(model):\n    orig_padding = model.padding\n    model.padding = (0, 0, 0)\n    try:\n        yield\n    finally:\n        model.padding = orig_padding\n\n\nclass InflatedCausalConv3d(Conv3d):\n    def __init__(\n        self,\n        *args,\n        inflation_mode: _inflation_mode_t,\n        memory_device: _memory_device_t = \"same\",\n        **kwargs,\n    ):\n        self.inflation_mode = inflation_mode\n        self.memory = None\n        super().__init__(*args, **kwargs)\n        self.temporal_padding = self.padding[0]\n        self.memory_device = memory_device\n        self.padding = (0, *self.padding[1:])  # Remove temporal pad to keep causal.\n        self.memory_limit = float(\"inf\")\n\n    def set_memory_limit(self, value: float):\n        self.memory_limit = value\n\n    def set_memory_device(self, memory_device: _memory_device_t):\n        self.memory_device = memory_device\n\n    def memory_limit_conv(\n        self,\n        x,\n        *,\n        split_dim=3,\n        padding=(0, 0, 0, 0, 0, 0),\n        prev_cache=None,\n    ):\n        # Compatible with no limit.\n        if math.isinf(self.memory_limit):\n            if prev_cache is not None:\n                x = torch.cat([prev_cache, x], dim=split_dim - 1)\n            return super().forward(x)\n\n        # Compute tensor shape after concat & padding.\n        shape = torch.tensor(x.size())\n        if prev_cache is not None:\n            shape[split_dim - 1] += prev_cache.size(split_dim - 1)\n        shape[-3:] += torch.tensor(padding).view(3, 2).sum(-1).flip(0)\n        memory_occupy = shape.prod() * x.element_size() / 1024**3  # GiB\n        if memory_occupy < self.memory_limit or split_dim == x.ndim:\n            if prev_cache is not None:\n                x = torch.cat([prev_cache, x], dim=split_dim - 1)\n            x = safe_pad_operation(x, padding, mode='constant', value=0.0)\n            with ignore_padding(self):\n                return super().forward(x)\n\n        # Exceed memory limit, splitting tensor\n\n        # Split input (& prev_cache).\n        num_splits = math.ceil(memory_occupy / self.memory_limit)\n        size_per_split = x.size(split_dim) // num_splits\n        split_sizes = [size_per_split] * (num_splits - 1)\n        split_sizes += [x.size(split_dim) - sum(split_sizes)]\n\n        x = list(x.split(split_sizes, dim=split_dim))\n        if prev_cache is not None:\n            prev_cache = list(prev_cache.split(split_sizes, dim=split_dim))\n        # Loop Fwd.\n        cache = None\n        for idx in range(len(x)):\n            # Concat prev cache from last dim\n            if prev_cache is not None:\n                x[idx] = torch.cat([prev_cache[idx], x[idx]], dim=split_dim - 1)\n\n            # Get padding pattern.\n            lpad_dim = (x[idx].ndim - split_dim - 1) * 2\n            rpad_dim = lpad_dim + 1\n            padding = list(padding)\n            padding[lpad_dim] = self.padding[split_dim - 2] if idx == 0 else 0\n            padding[rpad_dim] = self.padding[split_dim - 2] if idx == len(x) - 1 else 0\n            pad_len = padding[lpad_dim] + padding[rpad_dim]\n            padding = tuple(padding)\n\n            # Prepare cache for next slice (this dim).\n            next_cache = None\n            cache_len = cache.size(split_dim) if cache is not None else 0\n            next_catch_size = get_cache_size(\n                conv_module=self,\n                input_len=x[idx].size(split_dim) + cache_len,\n                pad_len=pad_len,\n                dim=split_dim - 2,\n            )\n            if next_catch_size != 0:\n                assert next_catch_size <= x[idx].size(split_dim)\n                next_cache = (\n                    x[idx].transpose(0, split_dim)[-next_catch_size:].transpose(0, split_dim)\n                )\n\n            # Recursive.\n            x[idx] = self.memory_limit_conv(\n                x[idx],\n                split_dim=split_dim + 1,\n                padding=padding,\n                prev_cache=cache,\n            )\n\n            # Update cache.\n            cache = next_cache\n\n        output = torch.cat(x, split_dim)\n        return output\n\n    def forward(\n        self,\n        input: Union[Tensor, List[Tensor]],\n        memory_state: MemoryState = MemoryState.UNSET,\n    ) -> Tensor:\n        assert memory_state != MemoryState.UNSET\n        if memory_state != MemoryState.ACTIVE:\n            self.memory = None\n        if (\n            math.isinf(self.memory_limit)\n            and torch.is_tensor(input)\n        ):\n            return self.basic_forward(input, memory_state)\n        return self.slicing_forward(input, memory_state)\n\n    def basic_forward(self, input: Tensor, memory_state: MemoryState = MemoryState.UNSET):\n        mem_size = self.stride[0] - self.kernel_size[0]\n        if (self.memory is not None) and (memory_state == MemoryState.ACTIVE):\n            input = extend_head(input, memory=self.memory, times=-1)\n        else:\n            input = extend_head(input, times=self.temporal_padding * 2)\n        memory = (\n            input[:, :, mem_size:].detach()\n            if (mem_size != 0 and memory_state != MemoryState.DISABLED)\n            else None\n        )\n        if (\n            memory_state != MemoryState.DISABLED\n            and not self.training\n            and (self.memory_device is not None)\n        ):\n            self.memory = memory\n            if self.memory_device == \"cpu\" and self.memory is not None:\n                self.memory = self.memory.to(\"cpu\")\n        return super().forward(input)\n\n    def slicing_forward(\n        self,\n        input: Union[Tensor, List[Tensor]],\n        memory_state: MemoryState = MemoryState.UNSET,\n    ) -> Tensor:\n        squeeze_out = False\n        if torch.is_tensor(input):\n            input = [input]\n            squeeze_out = True\n\n        cache_size = self.kernel_size[0] - self.stride[0]\n        cache = cache_send_recv(\n            input, cache_size=cache_size, memory=self.memory, times=self.temporal_padding * 2\n        )\n\n        # Single GPU inference - simplified memory management\n        if (\n            memory_state in [MemoryState.INITIALIZING, MemoryState.ACTIVE]  # use_slicing\n            and not self.training\n            and (self.memory_device is not None)\n            and cache_size != 0\n        ):\n            if cache_size > input[-1].size(2) and cache is not None and len(input) == 1:\n                input[0] = torch.cat([cache, input[0]], dim=2)\n                cache = None\n            if cache_size <= input[-1].size(2):\n                self.memory = input[-1][:, :, -cache_size:].detach().contiguous()\n                if self.memory_device == \"cpu\" and self.memory is not None:\n                    self.memory = self.memory.to(\"cpu\")\n\n        padding = tuple(x for x in reversed(self.padding) for _ in range(2))\n        for i in range(len(input)):\n            # Prepare cache for next input slice.\n            next_cache = None\n            cache_size = 0\n            if i < len(input) - 1:\n                cache_len = cache.size(2) if cache is not None else 0\n                cache_size = get_cache_size(self, input[i].size(2) + cache_len, pad_len=0)\n            if cache_size != 0:\n                if cache_size > input[i].size(2) and cache is not None:\n                    input[i] = torch.cat([cache, input[i]], dim=2)\n                    cache = None\n                assert cache_size <= input[i].size(2), f\"{cache_size} > {input[i].size(2)}\"\n                next_cache = input[i][:, :, -cache_size:]\n\n            # Conv forward for this input slice.\n            input[i] = self.memory_limit_conv(\n                input[i],\n                padding=padding,\n                prev_cache=cache,\n            )\n\n            # Update cache.\n            cache = next_cache\n\n        return input[0] if squeeze_out else input\n\n    def tflops(self, args, kwargs, output) -> float:\n        if torch.is_tensor(output):\n            output_numel = output.numel()\n        elif isinstance(output, list):\n            output_numel = sum(o.numel() for o in output)\n        else:\n            raise NotImplementedError\n        return (2 * math.prod(self.kernel_size) * self.in_channels * (output_numel / 1e6)) / 1e6\n\n    def _load_from_state_dict(\n        self, state_dict, prefix, local_metadata, strict, missing_keys, unexpected_keys, error_msgs\n    ):\n        if self.inflation_mode != \"none\":\n            state_dict = modify_state_dict(\n                self,\n                state_dict,\n                prefix,\n                inflate_weight_fn=inflate_weight,\n                inflate_bias_fn=inflate_bias,\n            )\n        super()._load_from_state_dict(\n            state_dict,\n            prefix,\n            local_metadata,\n            (strict and self.inflation_mode == \"none\"),\n            missing_keys,\n            unexpected_keys,\n            error_msgs,\n        )\n\n\ndef init_causal_conv3d(\n    *args,\n    inflation_mode: _inflation_mode_t,\n    **kwargs,\n):\n    \"\"\"\n    Initialize a Causal-3D convolution layer.\n    Parameters:\n        inflation_mode: Listed as below. It's compatible with all the 3D-VAE checkpoints we have.\n            - none: No inflation will be conducted.\n                    The loading logic of state dict will fall back to default.\n            - tail / replicate: Refer to the definition of `InflatedCausalConv3d`.\n    \"\"\"\n    return InflatedCausalConv3d(*args, inflation_mode=inflation_mode, **kwargs)\n\n\ndef causal_norm_wrapper(norm_layer: nn.Module, x: torch.Tensor) -> torch.Tensor:\n    input_dtype = x.dtype\n    if isinstance(norm_layer, (nn.LayerNorm, RMSNorm)):\n        if x.ndim == 4:\n            x = rearrange(x, \"b c h w -> b h w c\")\n            x = norm_layer(x)\n            x = rearrange(x, \"b h w c -> b c h w\")\n            return x.to(input_dtype)\n        if x.ndim == 5:\n            x = rearrange(x, \"b c t h w -> b t h w c\")\n            x = norm_layer(x)\n            x = rearrange(x, \"b t h w c -> b c t h w\")\n            return x.to(input_dtype)\n    if isinstance(norm_layer, (nn.GroupNorm, nn.BatchNorm2d, nn.SyncBatchNorm)):\n        if x.ndim <= 4:\n            return norm_layer(x).to(input_dtype)\n        if x.ndim == 5:\n            t = x.size(2)\n            x = rearrange(x, \"b c t h w -> (b t) c h w\")\n            memory_occupy = x.numel() * x.element_size() / 1024**3\n            if isinstance(norm_layer, nn.GroupNorm) and memory_occupy > get_norm_limit():\n                num_chunks = min(4 if x.element_size() == 2 else 2, norm_layer.num_groups)\n                assert norm_layer.num_groups % num_chunks == 0\n                num_groups_per_chunk = norm_layer.num_groups // num_chunks\n\n                x = list(x.chunk(num_chunks, dim=1))\n                weights = norm_layer.weight.chunk(num_chunks, dim=0)\n                biases = norm_layer.bias.chunk(num_chunks, dim=0)\n                for i, (w, b) in enumerate(zip(weights, biases)):\n                    x[i] = F.group_norm(x[i], num_groups_per_chunk, w, b, norm_layer.eps)\n                    x[i] = x[i].to(input_dtype)\n                # ADD BY NUMZ\n                # ADD BY NUMZ\n                x = torch.cat(x, dim=1)\n            else:\n                x = norm_layer(x)\n            x = rearrange(x, \"(b t) c h w -> b c t h w\", t=t)\n            return x.to(input_dtype)\n    raise NotImplementedError\n\n\ndef remove_head(tensor: Tensor, times: int = 1) -> Tensor:\n    \"\"\"\n    Remove duplicated first frame features in the up-sampling process.\n    \"\"\"\n    # Single GPU inference - always process\n    if times == 0:\n        return tensor\n    return torch.cat(tensors=(tensor[:, :, :1], tensor[:, :, times + 1 :]), dim=2)\n\n\ndef extend_head(tensor: Tensor, times: int = 2, memory: Optional[Tensor] = None) -> Tensor:\n    \"\"\"\n    When memory is None:\n        - Duplicate first frame features in the down-sampling process.\n    When memory is not None:\n        - Concatenate memory features with the input features to keep temporal consistency.\n    \"\"\"\n    if memory is not None:\n        return torch.cat((memory.to(tensor), tensor), dim=2)\n    assert times >= 0, \"Invalid input for function 'extend_head'!\"\n    if times == 0:\n        return tensor\n    else:\n        tile_repeat = [1] * tensor.ndim\n        tile_repeat[2] = times\n        return torch.cat(tensors=(torch.tile(tensor[:, :, :1], tile_repeat), tensor), dim=2)\n\n\ndef inflate_weight(weight_2d: torch.Tensor, weight_3d: torch.Tensor, inflation_mode: str):\n    \"\"\"\n    Inflate a 2D convolution weight matrix to a 3D one.\n    Parameters:\n        weight_2d:      The weight matrix of 2D conv to be inflated.\n        weight_3d:      The weight matrix of 3D conv to be initialized.\n        inflation_mode: the mode of inflation\n    \"\"\"\n    assert inflation_mode in [\"tail\", \"replicate\"]\n    assert weight_3d.shape[:2] == weight_2d.shape[:2]\n    with torch.no_grad():\n        if inflation_mode == \"replicate\":\n            depth = weight_3d.size(2)\n            weight_3d.copy_(weight_2d.unsqueeze(2).repeat(1, 1, depth, 1, 1) / depth)\n        else:\n            weight_3d.fill_(0.0)\n            weight_3d[:, :, -1].copy_(weight_2d)\n    return weight_3d\n\n\ndef inflate_bias(bias_2d: torch.Tensor, bias_3d: torch.Tensor, inflation_mode: str):\n    \"\"\"\n    Inflate a 2D convolution bias tensor to a 3D one\n    Parameters:\n        bias_2d:        The bias tensor of 2D conv to be inflated.\n        bias_3d:        The bias tensor of 3D conv to be initialized.\n        inflation_mode: Placeholder to align `inflate_weight`.\n    \"\"\"\n    assert bias_3d.shape == bias_2d.shape\n    with torch.no_grad():\n        bias_3d.copy_(bias_2d)\n    return bias_3d\n\n\ndef modify_state_dict(layer, state_dict, prefix, inflate_weight_fn, inflate_bias_fn):\n    \"\"\"\n    the main function to inflated 2D parameters to 3D.\n    \"\"\"\n    weight_name = prefix + \"weight\"\n    bias_name = prefix + \"bias\"\n    if weight_name in state_dict:\n        weight_2d = state_dict[weight_name]\n        if weight_2d.dim() == 4:\n            # Assuming the 2D weights are 4D tensors (out_channels, in_channels, h, w)\n            weight_3d = inflate_weight_fn(\n                weight_2d=weight_2d,\n                weight_3d=layer.weight,\n                inflation_mode=layer.inflation_mode,\n            )\n            state_dict[weight_name] = weight_3d\n        else:\n            return state_dict\n            # It's a 3d state dict, should not do inflation on both bias and weight.\n    if bias_name in state_dict:\n        bias_2d = state_dict[bias_name]\n        if bias_2d.dim() == 1:\n            # Assuming the 2D biases are 1D tensors (out_channels,)\n            bias_3d = inflate_bias_fn(\n                bias_2d=bias_2d,\n                bias_3d=layer.bias,\n                inflation_mode=layer.inflation_mode,\n            )\n            state_dict[bias_name] = bias_3d\n    return state_dict\n"
  },
  {
    "path": "modules/seedvr/src/models/video_vae_v3/modules/context_parallel_lib.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom typing import List\nimport torch\nfrom torch import Tensor\n\n# Single GPU inference - no distributed processing needed\n\n\ndef causal_conv_slice_inputs(x, split_size, memory_state):\n    # Single GPU inference - no slicing needed, return full tensor\n    return x\n\n\ndef causal_conv_gather_outputs(x):\n    # Single GPU inference - no gathering needed, return tensor as is\n    return x\n\n\ndef get_output_len(conv_module, input_len, pad_len, dim=0):\n    dilated_kernerl_size = conv_module.dilation[dim] * (conv_module.kernel_size[dim] - 1) + 1\n    output_len = (input_len + pad_len - dilated_kernerl_size) // conv_module.stride[dim] + 1\n    return output_len\n\n\ndef get_cache_size(conv_module, input_len, pad_len, dim=0):\n    dilated_kernerl_size = conv_module.dilation[dim] * (conv_module.kernel_size[dim] - 1) + 1\n    output_len = (input_len + pad_len - dilated_kernerl_size) // conv_module.stride[dim] + 1\n    remain_len = (\n        input_len + pad_len - ((output_len - 1) * conv_module.stride[dim] + dilated_kernerl_size)\n    )\n    overlap_len = dilated_kernerl_size - conv_module.stride[dim]\n    cache_len = overlap_len + remain_len  # >= 0\n\n    assert output_len > 0\n    return cache_len\n\n\ndef cache_send_recv(tensor: List[Tensor], cache_size, times, memory=None):\n    # Single GPU inference - simplified cache handling\n    recv_buffer = None\n\n    # Handle memory buffer for single GPU case\n    if memory is not None:\n        recv_buffer = memory.to(tensor[0])\n    elif times > 0:\n        tile_repeat = [1] * tensor[0].ndim\n        tile_repeat[2] = times\n        recv_buffer = torch.tile(tensor[0][:, :, :1], tile_repeat)\n\n    return recv_buffer\n"
  },
  {
    "path": "modules/seedvr/src/models/video_vae_v3/modules/global_config.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom typing import Optional\n\n_NORM_LIMIT = float(\"inf\")\n\n\ndef get_norm_limit():\n    return _NORM_LIMIT\n\n\ndef set_norm_limit(value: Optional[float] = None):\n    global _NORM_LIMIT\n    if value is None:\n        value = float(\"inf\")\n    _NORM_LIMIT = value\n"
  },
  {
    "path": "modules/seedvr/src/models/video_vae_v3/modules/inflated_layers.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom functools import partial\nfrom typing import Literal, Optional\nfrom torch import Tensor\nfrom torch.nn import Conv3d\nfrom .inflated_lib import MemoryState, extend_head, inflate_bias, inflate_weight, modify_state_dict\n\n\n_inflation_mode_t = Literal[\"none\", \"tail\", \"replicate\"]\n_memory_device_t = Optional[Literal[\"cpu\", \"same\"]]\n\n\nclass InflatedCausalConv3d(Conv3d):\n    def __init__(\n        self,\n        *args,\n        inflation_mode: _inflation_mode_t,\n        memory_device: _memory_device_t = \"same\",\n        **kwargs,\n    ):\n        self.inflation_mode = inflation_mode\n        self.memory = None\n        super().__init__(*args, **kwargs)\n        self.temporal_padding = self.padding[0]\n        self.memory_device = memory_device\n        self.padding = (0, *self.padding[1:])  # Remove temporal pad to keep causal.\n\n    def set_memory_device(self, memory_device: _memory_device_t):\n        self.memory_device = memory_device\n\n    def forward(self, input: Tensor, memory_state: MemoryState = MemoryState.DISABLED) -> Tensor:\n        mem_size = self.stride[0] - self.kernel_size[0]\n        if (self.memory is not None) and (memory_state == MemoryState.ACTIVE):\n            input = extend_head(input, memory=self.memory)\n        else:\n            input = extend_head(input, times=self.temporal_padding * 2)\n        memory = (\n            input[:, :, mem_size:].detach()\n            if (mem_size != 0 and memory_state != MemoryState.DISABLED)\n            else None\n        )\n        if (\n            memory_state != MemoryState.DISABLED\n            and not self.training\n            and (self.memory_device is not None)\n        ):\n            self.memory = memory\n            if self.memory_device == \"cpu\" and self.memory is not None:\n                self.memory = self.memory.to(\"cpu\")\n        return super().forward(input)\n\n    def _load_from_state_dict(\n        self, state_dict, prefix, local_metadata, strict, missing_keys, unexpected_keys, error_msgs\n    ):\n        if self.inflation_mode != \"none\":\n            state_dict = modify_state_dict(\n                self,\n                state_dict,\n                prefix,\n                inflate_weight_fn=partial(inflate_weight, position=\"tail\"),\n                inflate_bias_fn=partial(inflate_bias, position=\"tail\"),\n            )\n        super()._load_from_state_dict(\n            state_dict,\n            prefix,\n            local_metadata,\n            (strict and self.inflation_mode == \"none\"),\n            missing_keys,\n            unexpected_keys,\n            error_msgs,\n        )\n\n\ndef init_causal_conv3d(\n    *args,\n    inflation_mode: _inflation_mode_t,\n    **kwargs,\n):\n    \"\"\"\n    Initialize a Causal-3D convolution layer.\n    Parameters:\n        inflation_mode: Listed as below. It's compatible with all the 3D-VAE checkpoints we have.\n            - none: No inflation will be conducted.\n                    The loading logic of state dict will fall back to default.\n            - tail / replicate: Refer to the definition of `InflatedCausalConv3d`.\n    \"\"\"\n    return InflatedCausalConv3d(*args, inflation_mode=inflation_mode, **kwargs)\n"
  },
  {
    "path": "modules/seedvr/src/models/video_vae_v3/modules/inflated_lib.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom enum import Enum\nfrom typing import Optional\nimport numpy as np\nimport torch\nfrom diffusers.models.normalization import RMSNorm\nfrom einops import rearrange\nfrom torch import Tensor, nn\nfrom ....common.logger import get_logger\n\n\nlogger = get_logger(__name__)\n\n\nclass MemoryState(Enum):\n    \"\"\"\n    State[Disabled]:        No memory bank will be enabled.\n    State[Initializing]:    The model is handling the first clip,\n                            need to reset / initialize the memory bank.\n    State[Active]:          There has been some data in the memory bank.\n    \"\"\"\n\n    DISABLED = 0\n    INITIALIZING = 1\n    ACTIVE = 2\n\n\ndef causal_norm_wrapper(norm_layer: nn.Module, x: torch.Tensor) -> torch.Tensor:\n    if isinstance(norm_layer, (nn.LayerNorm, RMSNorm)):\n        if x.ndim == 4:\n            x = rearrange(x, \"b c h w -> b h w c\")\n            x = norm_layer(x)\n            x = rearrange(x, \"b h w c -> b c h w\")\n            return x\n        if x.ndim == 5:\n            x = rearrange(x, \"b c t h w -> b t h w c\")\n            x = norm_layer(x)\n            x = rearrange(x, \"b t h w c -> b c t h w\")\n            return x\n    if isinstance(norm_layer, (nn.GroupNorm, nn.BatchNorm2d, nn.SyncBatchNorm)):\n        if x.ndim <= 4:\n            return norm_layer(x)\n        if x.ndim == 5:\n            t = x.size(2)\n            x = rearrange(x, \"b c t h w -> (b t) c h w\")\n            x = norm_layer(x)\n            x = rearrange(x, \"(b t) c h w -> b c t h w\", t=t)\n            return x\n    raise NotImplementedError\n\n\ndef remove_head(tensor: Tensor, times: int = 1) -> Tensor:\n    \"\"\"\n    Remove duplicated first frame features in the up-sampling process.\n    \"\"\"\n    if times == 0:\n        return tensor\n    return torch.cat(tensors=(tensor[:, :, :1], tensor[:, :, times + 1 :]), dim=2)\n\n\ndef extend_head(\n    tensor: Tensor, times: Optional[int] = 2, memory: Optional[Tensor] = None\n) -> Tensor:\n    \"\"\"\n    When memory is None:\n        - Duplicate first frame features in the down-sampling process.\n    When memory is not None:\n        - Concatenate memory features with the input features to keep temporal consistency.\n    \"\"\"\n    if times == 0:\n        return tensor\n    if memory is not None:\n        return torch.cat((memory.to(tensor), tensor), dim=2)\n    else:\n        tile_repeat = np.ones(tensor.ndim).astype(int)\n        tile_repeat[2] = times\n        return torch.cat(tensors=(torch.tile(tensor[:, :, :1], list(tile_repeat)), tensor), dim=2)\n\n\ndef inflate_weight(weight_2d: torch.Tensor, weight_3d: torch.Tensor, inflation_mode: str):\n    \"\"\"\n    Inflate a 2D convolution weight matrix to a 3D one.\n    Parameters:\n        weight_2d:      The weight matrix of 2D conv to be inflated.\n        weight_3d:      The weight matrix of 3D conv to be initialized.\n        inflation_mode: the mode of inflation\n    \"\"\"\n    assert inflation_mode in [\"constant\", \"replicate\"]\n    assert weight_3d.shape[:2] == weight_2d.shape[:2]\n    with torch.no_grad():\n        if inflation_mode == \"replicate\":\n            depth = weight_3d.size(2)\n            weight_3d.copy_(weight_2d.unsqueeze(2).repeat(1, 1, depth, 1, 1) / depth)\n        else:\n            weight_3d.fill_(0.0)\n            weight_3d[:, :, -1].copy_(weight_2d)\n    return weight_3d\n\n\ndef inflate_bias(bias_2d: torch.Tensor, bias_3d: torch.Tensor, inflation_mode: str):\n    \"\"\"\n    Inflate a 2D convolution bias tensor to a 3D one\n    Parameters:\n        bias_2d:        The bias tensor of 2D conv to be inflated.\n        bias_3d:        The bias tensor of 3D conv to be initialized.\n        inflation_mode: Placeholder to align `inflate_weight`.\n    \"\"\"\n    assert bias_3d.shape == bias_2d.shape\n    with torch.no_grad():\n        bias_3d.copy_(bias_2d)\n    return bias_3d\n\n\ndef modify_state_dict(layer, state_dict, prefix, inflate_weight_fn, inflate_bias_fn):\n    \"\"\"\n    the main function to inflated 2D parameters to 3D.\n    \"\"\"\n    weight_name = prefix + \"weight\"\n    bias_name = prefix + \"bias\"\n    if weight_name in state_dict:\n        weight_2d = state_dict[weight_name]\n        if weight_2d.dim() == 4:\n            # Assuming the 2D weights are 4D tensors (out_channels, in_channels, h, w)\n            weight_3d = inflate_weight_fn(\n                weight_2d=weight_2d,\n                weight_3d=layer.weight,\n                inflation_mode=layer.inflation_mode,\n            )\n            state_dict[weight_name] = weight_3d\n        else:\n            return state_dict\n            # It's a 3d state dict, should not do inflation on both bias and weight.\n    if bias_name in state_dict:\n        bias_2d = state_dict[bias_name]\n        if bias_2d.dim() == 1:\n            # Assuming the 2D biases are 1D tensors (out_channels,)\n            bias_3d = inflate_bias_fn(\n                bias_2d=bias_2d,\n                bias_3d=layer.bias,\n                inflation_mode=layer.inflation_mode,\n            )\n            state_dict[bias_name] = bias_3d\n    return state_dict\n"
  },
  {
    "path": "modules/seedvr/src/models/video_vae_v3/modules/types.py",
    "content": "# // Copyright (c) 2025 Bytedance Ltd. and/or its affiliates\n# //\n# // Licensed under the Apache License, Version 2.0 (the \"License\");\n# // you may not use this file except in compliance with the License.\n# // You may obtain a copy of the License at\n# //\n# //     http://www.apache.org/licenses/LICENSE-2.0\n# //\n# // Unless required by applicable law or agreed to in writing, software\n# // distributed under the License is distributed on an \"AS IS\" BASIS,\n# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# // See the License for the specific language governing permissions and\n# // limitations under the License.\n\nfrom enum import Enum\nfrom typing import Dict, Literal, NamedTuple, Optional\nimport torch\n\n_receptive_field_t = Literal[\"half\", \"full\"]\n_inflation_mode_t = Literal[\"none\", \"tail\", \"replicate\"]\n_memory_device_t = Optional[Literal[\"cpu\", \"same\"]]\n_gradient_checkpointing_t = Optional[Literal[\"half\", \"full\"]]\n_selective_checkpointing_t = Optional[Literal[\"coarse\", \"fine\"]]\n\nclass DiagonalGaussianDistribution:\n    def __init__(self, mean: torch.Tensor, logvar: torch.Tensor):\n        self.mean = mean\n        self.logvar = torch.clamp(logvar, -30.0, 20.0)\n        self.std = torch.exp(0.5 * self.logvar)\n        self.var = torch.exp(self.logvar)\n\n    def mode(self) -> torch.Tensor:\n        return self.mean\n\n    def sample(self) -> torch.FloatTensor:\n        return self.mean + self.std * torch.randn_like(self.mean)\n\n    def kl(self) -> torch.Tensor:\n        return 0.5 * torch.sum(\n            self.mean**2 + self.var - 1.0 - self.logvar,\n            dim=list(range(1, self.mean.ndim)),\n        )\n\nclass MemoryState(Enum):\n    \"\"\"\n    State[Disabled]:        No memory bank will be enabled.\n    State[Initializing]:    The model is handling the first clip, need to reset the memory bank.\n    State[Active]:          There has been some data in the memory bank.\n    State[Unset]:           Error state, indicating users didn't pass correct memory state in.\n    \"\"\"\n\n    DISABLED = 0\n    INITIALIZING = 1\n    ACTIVE = 2\n    UNSET = 3\n\n\nclass QuantizerOutput(NamedTuple):\n    latent: torch.Tensor\n    extra_loss: torch.Tensor\n    statistics: Dict[str, torch.Tensor]\n\n\nclass CausalAutoencoderOutput(NamedTuple):\n    sample: torch.Tensor\n    latent: torch.Tensor\n    posterior: Optional[DiagonalGaussianDistribution]\n\n\nclass CausalEncoderOutput(NamedTuple):\n    latent: torch.Tensor\n    posterior: Optional[DiagonalGaussianDistribution]\n\n\nclass CausalDecoderOutput(NamedTuple):\n    sample: torch.Tensor\n"
  },
  {
    "path": "modules/seedvr/src/models/video_vae_v3/modules/video_vae.py.old",
    "content": "# Copyright (c) 2023 HuggingFace Team\n# Copyright (c) 2025 ByteDance Ltd. and/or its affiliates.\n# SPDX-License-Identifier: Apache License, Version 2.0 (the \"License\")\n#\n# This file has been modified by ByteDance Ltd. and/or its affiliates. on 1st June 2025\n#\n# Original file was released under Apache License, Version 2.0 (the \"License\"), with the full license text\n# available at http://www.apache.org/licenses/LICENSE-2.0.\n#\n# This modified file is released under the same license.\n\nfrom contextlib import nullcontext\nfrom typing import Optional, Tuple, Literal, Callable, Union\nimport torch\nimport torch.nn as nn\nfrom diffusers.models.autoencoders.vae import DiagonalGaussianDistribution\nfrom einops import rearrange\nfrom ....common.half_precision_fixes import safe_pad_operation\nfrom ....common.logger import get_logger\nfrom .causal_inflation_lib import InflatedCausalConv3d, causal_norm_wrapper, init_causal_conv3d, remove_head\nfrom .context_parallel_lib import causal_conv_gather_outputs, causal_conv_slice_inputs\nfrom .global_config import set_norm_limit\nfrom .types import CausalAutoencoderOutput, CausalDecoderOutput, CausalEncoderOutput, MemoryState, _inflation_mode_t, _memory_device_t, _receptive_field_t, _selective_checkpointing_t\n\n\nlogger = get_logger(__name__)  # pylint: disable=invalid-name\n\n# Fake func, no checkpointing is required for inference\ndef gradient_checkpointing(module: Union[Callable, nn.Module], *args, enabled: bool, **kwargs):\n    return module(*args, **kwargs)\n\nclass ResnetBlock2D(nn.Module):\n    r\"\"\"\n    A Resnet block.\n\n    Parameters:\n        in_channels (`int`): The number of channels in the input.\n        out_channels (`int`, *optional*, default to be `None`):\n            The number of output channels for the first conv2d layer.\n            If None, same as `in_channels`.\n        dropout (`float`, *optional*, defaults to `0.0`): The dropout probability to use.\n    \"\"\"\n\n    def __init__(\n        self, *, in_channels: int, out_channels: Optional[int] = None, dropout: float = 0.0\n    ):\n        super().__init__()\n        self.in_channels = in_channels\n        out_channels = in_channels if out_channels is None else out_channels\n        self.out_channels = out_channels\n\n        self.nonlinearity = nn.SiLU()\n\n        self.norm1 = torch.nn.GroupNorm(\n            num_groups=32, num_channels=in_channels, eps=1e-6, affine=True\n        )\n\n        self.conv1 = nn.Conv2d(in_channels, out_channels, kernel_size=3, stride=1, padding=1)\n\n        self.norm2 = torch.nn.GroupNorm(\n            num_groups=32, num_channels=out_channels, eps=1e-6, affine=True\n        )\n\n        self.dropout = torch.nn.Dropout(dropout)\n        self.conv2 = nn.Conv2d(out_channels, out_channels, kernel_size=3, stride=1, padding=1)\n\n        self.use_in_shortcut = self.in_channels != out_channels\n\n        self.conv_shortcut = None\n        if self.use_in_shortcut:\n            self.conv_shortcut = nn.Conv2d(\n                in_channels, out_channels, kernel_size=1, stride=1, padding=0\n            )\n\n    def forward(self, input_tensor: torch.Tensor) -> torch.Tensor:\n        hidden = input_tensor\n\n        hidden = self.norm1(hidden)\n        hidden = self.nonlinearity(hidden)\n        hidden = self.conv1(hidden)\n\n        hidden = self.norm2(hidden)\n        hidden = self.nonlinearity(hidden)\n        hidden = self.dropout(hidden)\n        hidden = self.conv2(hidden)\n\n        if self.conv_shortcut is not None:\n            input_tensor = self.conv_shortcut(input_tensor)\n\n        output_tensor = input_tensor + hidden\n\n        return output_tensor\n\nclass Upsample3D(nn.Module):\n    \"\"\"A 3D upsampling layer.\"\"\"\n\n    def __init__(\n        self,\n        channels: int,\n        inflation_mode: _inflation_mode_t = \"tail\",\n        temporal_up: bool = False,\n        spatial_up: bool = True,\n        slicing: bool = False,\n    ):\n        super().__init__()\n        self.channels = channels\n        self.conv = init_causal_conv3d(\n            self.channels, self.channels, kernel_size=3, padding=1, inflation_mode=inflation_mode\n        )\n\n        self.temporal_up = temporal_up\n        self.spatial_up = spatial_up\n        self.temporal_ratio = 2 if temporal_up else 1\n        self.spatial_ratio = 2 if spatial_up else 1\n        self.slicing = slicing\n\n        upscale_ratio = (self.spatial_ratio**2) * self.temporal_ratio\n        self.upscale_conv = nn.Conv3d(\n            self.channels, self.channels * upscale_ratio, kernel_size=1, padding=0\n        )\n        identity = (\n            torch.eye(self.channels).repeat(upscale_ratio, 1).reshape_as(self.upscale_conv.weight)\n        )\n\n        self.upscale_conv.weight.data.copy_(identity)\n        nn.init.zeros_(self.upscale_conv.bias)\n        self.gradient_checkpointing = False\n\n    def forward(\n        self,\n        hidden_states: torch.FloatTensor,\n        memory_state: MemoryState,\n    ) -> torch.FloatTensor:\n        return gradient_checkpointing(\n            self.custom_forward,\n            hidden_states,\n            memory_state,\n            enabled=self.training and self.gradient_checkpointing,\n        )\n\n    def custom_forward(\n        self,\n        hidden_states: torch.FloatTensor,\n        memory_state: MemoryState,\n    ) -> torch.FloatTensor:\n        assert hidden_states.shape[1] == self.channels\n\n        if self.slicing:\n            split_size = hidden_states.size(2) // 2\n            hidden_states = list(\n                hidden_states.split([split_size, hidden_states.size(2) - split_size], dim=2)\n            )\n        else:\n            hidden_states = [hidden_states]\n\n        for i in range(len(hidden_states)):\n            hidden_states[i] = self.upscale_conv(hidden_states[i])\n            hidden_states[i] = rearrange(\n                hidden_states[i],\n                \"b (x y z c) f h w -> b c (f z) (h x) (w y)\",\n                x=self.spatial_ratio,\n                y=self.spatial_ratio,\n                z=self.temporal_ratio,\n            )\n\n        # [Overridden] For causal temporal conv\n        if self.temporal_up and memory_state != MemoryState.ACTIVE:\n            hidden_states[0] = remove_head(hidden_states[0])\n\n        if self.slicing:\n            hidden_states = self.conv(hidden_states, memory_state=memory_state)\n            return torch.cat(hidden_states, dim=2)\n        else:\n            return self.conv(hidden_states[0], memory_state=memory_state)\n\n\nclass Downsample3D(nn.Module):\n    \"\"\"A 3D downsampling layer.\"\"\"\n\n    def __init__(\n        self,\n        channels: int,\n        inflation_mode: _inflation_mode_t = \"tail\",\n        temporal_down: bool = False,\n        spatial_down: bool = True,\n    ):\n        super().__init__()\n        self.channels = channels\n        self.temporal_down = temporal_down\n        self.spatial_down = spatial_down\n\n        self.temporal_ratio = 2 if temporal_down else 1\n        self.spatial_ratio = 2 if spatial_down else 1\n\n        self.temporal_kernel = 3 if temporal_down else 1\n        self.spatial_kernel = 3 if spatial_down else 1\n\n        self.conv = init_causal_conv3d(\n            self.channels,\n            self.channels,\n            kernel_size=(self.temporal_kernel, self.spatial_kernel, self.spatial_kernel),\n            stride=(self.temporal_ratio, self.spatial_ratio, self.spatial_ratio),\n            padding=((1 if self.temporal_down else 0), 0, 0),\n            inflation_mode=inflation_mode,\n        )\n        self.gradient_checkpointing = False\n\n    def forward(\n        self,\n        hidden_states: torch.FloatTensor,\n        memory_state: MemoryState,\n    ) -> torch.FloatTensor:\n        return gradient_checkpointing(\n            self.custom_forward,\n            hidden_states,\n            memory_state,\n            enabled=self.training and self.gradient_checkpointing,\n        )\n\n    def custom_forward(\n        self,\n        hidden_states: torch.FloatTensor,\n        memory_state: MemoryState,\n    ) -> torch.FloatTensor:\n\n        assert hidden_states.shape[1] == self.channels\n\n        if self.spatial_down:\n            hidden_states = safe_pad_operation(hidden_states, (0, 1, 0, 1), mode=\"constant\", value=0)\n\n        hidden_states = self.conv(hidden_states, memory_state=memory_state)\n        return hidden_states\n\n\nclass ResnetBlock3D(ResnetBlock2D):\n    def __init__(\n        self,\n        *args,\n        inflation_mode: _inflation_mode_t = \"tail\",\n        time_receptive_field: _receptive_field_t = \"half\",\n        **kwargs,\n    ):\n        super().__init__(*args, **kwargs)\n        self.conv1 = init_causal_conv3d(\n            self.in_channels,\n            self.out_channels,\n            kernel_size=3,\n            stride=1,\n            padding=1,\n            inflation_mode=inflation_mode,\n        )\n\n        self.conv2 = init_causal_conv3d(\n            self.out_channels,\n            self.out_channels,\n            kernel_size=(1, 3, 3) if time_receptive_field == \"half\" else (3, 3, 3),\n            stride=1,\n            padding=(0, 1, 1) if time_receptive_field == \"half\" else (1, 1, 1),\n            inflation_mode=inflation_mode,\n        )\n\n        if self.use_in_shortcut:\n            self.conv_shortcut = init_causal_conv3d(\n                self.in_channels,\n                self.out_channels,\n                kernel_size=1,\n                stride=1,\n                padding=0,\n                bias=(self.conv_shortcut.bias is not None),\n                inflation_mode=inflation_mode,\n            )\n        self.gradient_checkpointing = False\n\n    def forward(self, input_tensor: torch.Tensor, memory_state: MemoryState = MemoryState.UNSET):\n        return gradient_checkpointing(\n            self.custom_forward,\n            input_tensor,\n            memory_state,\n            enabled=self.training and self.gradient_checkpointing,\n        )\n\n    def custom_forward(\n        self, input_tensor: torch.Tensor, memory_state: MemoryState = MemoryState.UNSET\n    ):\n        assert memory_state != MemoryState.UNSET\n        hidden_states = input_tensor\n\n        hidden_states = causal_norm_wrapper(self.norm1, hidden_states)\n        hidden_states = self.nonlinearity(hidden_states)\n        hidden_states = self.conv1(hidden_states, memory_state=memory_state)\n\n        hidden_states = causal_norm_wrapper(self.norm2, hidden_states)\n        hidden_states = self.nonlinearity(hidden_states)\n        hidden_states = self.dropout(hidden_states)\n        hidden_states = self.conv2(hidden_states, memory_state=memory_state)\n\n        if self.conv_shortcut is not None:\n            input_tensor = self.conv_shortcut(input_tensor, memory_state=memory_state)\n\n        output_tensor = input_tensor + hidden_states\n\n        return output_tensor\n\n\nclass DownEncoderBlock3D(nn.Module):\n    def __init__(\n        self,\n        in_channels: int,\n        out_channels: int,\n        dropout: float = 0.0,\n        num_layers: int = 1,\n        add_downsample: bool = True,\n        inflation_mode: _inflation_mode_t = \"tail\",\n        time_receptive_field: _receptive_field_t = \"half\",\n        temporal_down: bool = True,\n        spatial_down: bool = True,\n    ):\n        super().__init__()\n        resnets = []\n\n        for i in range(num_layers):\n            in_channels = in_channels if i == 0 else out_channels\n            resnets.append(\n                ResnetBlock3D(\n                    in_channels=in_channels,\n                    out_channels=out_channels,\n                    dropout=dropout,\n                    inflation_mode=inflation_mode,\n                    time_receptive_field=time_receptive_field,\n                )\n            )\n\n        self.resnets = nn.ModuleList(resnets)\n\n        self.downsamplers = None\n        if add_downsample:\n            # Todo: Refactor this line before V5 Image VAE Training.\n            self.downsamplers = nn.ModuleList(\n                [\n                    Downsample3D(\n                        channels=out_channels,\n                        inflation_mode=inflation_mode,\n                        temporal_down=temporal_down,\n                        spatial_down=spatial_down,\n                    )\n                ]\n            )\n\n    def forward(\n        self, hidden_states: torch.FloatTensor, memory_state: MemoryState\n    ) -> torch.FloatTensor:\n        for resnet in self.resnets:\n            hidden_states = resnet(hidden_states, memory_state=memory_state)\n\n        if self.downsamplers is not None:\n            for downsampler in self.downsamplers:\n                hidden_states = downsampler(hidden_states, memory_state=memory_state)\n\n        return hidden_states\n\n\nclass UpDecoderBlock3D(nn.Module):\n    def __init__(\n        self,\n        in_channels: int,\n        out_channels: int,\n        dropout: float = 0.0,\n        num_layers: int = 1,\n        add_upsample: bool = True,\n        inflation_mode: _inflation_mode_t = \"tail\",\n        time_receptive_field: _receptive_field_t = \"half\",\n        temporal_up: bool = True,\n        spatial_up: bool = True,\n        slicing: bool = False,\n    ):\n        super().__init__()\n        resnets = []\n\n        for i in range(num_layers):\n            input_channels = in_channels if i == 0 else out_channels\n\n            resnets.append(\n                ResnetBlock3D(\n                    in_channels=input_channels,\n                    out_channels=out_channels,\n                    dropout=dropout,\n                    inflation_mode=inflation_mode,\n                    time_receptive_field=time_receptive_field,\n                )\n            )\n\n        self.resnets = nn.ModuleList(resnets)\n\n        self.upsamplers = None\n        # Todo: Refactor this line before V5 Image VAE Training.\n        if add_upsample:\n            self.upsamplers = nn.ModuleList(\n                [\n                    Upsample3D(\n                        channels=out_channels,\n                        inflation_mode=inflation_mode,\n                        temporal_up=temporal_up,\n                        spatial_up=spatial_up,\n                        slicing=slicing,\n                    )\n                ]\n            )\n\n    def forward(\n        self, hidden_states: torch.FloatTensor, memory_state: MemoryState\n    ) -> torch.FloatTensor:\n        for resnet in self.resnets:\n            hidden_states = resnet(hidden_states, memory_state=memory_state)\n\n        if self.upsamplers is not None:\n            for upsampler in self.upsamplers:\n                hidden_states = upsampler(hidden_states, memory_state=memory_state)\n\n        return hidden_states\n\n\nclass UNetMidBlock3D(nn.Module):\n    def __init__(\n        self,\n        channels: int,\n        dropout: float = 0.0,\n        inflation_mode: _inflation_mode_t = \"tail\",\n        time_receptive_field: _receptive_field_t = \"half\",\n    ):\n        super().__init__()\n        self.resnets = nn.ModuleList(\n            [\n                ResnetBlock3D(\n                    in_channels=channels,\n                    out_channels=channels,\n                    dropout=dropout,\n                    inflation_mode=inflation_mode,\n                    time_receptive_field=time_receptive_field,\n                ),\n                ResnetBlock3D(\n                    in_channels=channels,\n                    out_channels=channels,\n                    dropout=dropout,\n                    inflation_mode=inflation_mode,\n                    time_receptive_field=time_receptive_field,\n                ),\n            ]\n        )\n\n    def forward(self, hidden_states: torch.Tensor, memory_state: MemoryState):\n        for resnet in self.resnets:\n            hidden_states = resnet(hidden_states, memory_state)\n        return hidden_states\n\n\nclass Encoder3D(nn.Module):\n    r\"\"\"\n    The `Encoder` layer of a variational autoencoder that encodes\n    its input into a latent representation.\n    \"\"\"\n\n    def __init__(\n        self,\n        in_channels: int = 3,\n        out_channels: int = 3,\n        block_out_channels: Tuple[int, ...] = (64,),\n        layers_per_block: int = 2,\n        double_z: bool = True,\n        temporal_down_num: int = 2,\n        inflation_mode: _inflation_mode_t = \"tail\",\n        time_receptive_field: _receptive_field_t = \"half\",\n        selective_checkpointing: Tuple[_selective_checkpointing_t] = (\"none\",),\n    ):\n        super().__init__()\n        self.layers_per_block = layers_per_block\n\n        self.temporal_down_num = temporal_down_num\n\n        self.conv_in = init_causal_conv3d(\n            in_channels,\n            block_out_channels[0],\n            kernel_size=3,\n            stride=1,\n            padding=1,\n            inflation_mode=inflation_mode,\n        )\n\n        self.down_blocks = nn.ModuleList([])\n\n        # down\n        output_channel = block_out_channels[0]\n        for i in range(len(block_out_channels)):\n            input_channel = output_channel\n            output_channel = block_out_channels[i]\n            is_final_block = i == len(block_out_channels) - 1\n            is_temporal_down_block = i >= len(block_out_channels) - self.temporal_down_num - 1\n            # Note: take the last one\n\n            down_block = DownEncoderBlock3D(\n                num_layers=self.layers_per_block,\n                in_channels=input_channel,\n                out_channels=output_channel,\n                add_downsample=not is_final_block,\n                temporal_down=is_temporal_down_block,\n                spatial_down=True,\n                inflation_mode=inflation_mode,\n                time_receptive_field=time_receptive_field,\n            )\n            self.down_blocks.append(down_block)\n\n        # mid\n        self.mid_block = UNetMidBlock3D(\n            channels=block_out_channels[-1],\n            inflation_mode=inflation_mode,\n            time_receptive_field=time_receptive_field,\n        )\n\n        # out\n        self.conv_norm_out = nn.GroupNorm(\n            num_channels=block_out_channels[-1], num_groups=32, eps=1e-6\n        )\n        self.conv_act = nn.SiLU()\n\n        conv_out_channels = 2 * out_channels if double_z else out_channels\n        self.conv_out = init_causal_conv3d(\n            block_out_channels[-1], conv_out_channels, 3, padding=1, inflation_mode=inflation_mode\n        )\n\n        assert len(selective_checkpointing) == len(self.down_blocks)\n        self.set_gradient_checkpointing(selective_checkpointing)\n\n    def set_gradient_checkpointing(self, checkpointing_types):\n        gradient_checkpointing = []\n        for down_block, sac_type in zip(self.down_blocks, checkpointing_types):\n            if sac_type == \"coarse\":\n                gradient_checkpointing.append(True)\n            elif sac_type == \"fine\":\n                for n, m in down_block.named_modules():\n                    if hasattr(m, \"gradient_checkpointing\"):\n                        m.gradient_checkpointing = True\n                        logger.debug(f\"set gradient_checkpointing: {n}\")\n                gradient_checkpointing.append(False)\n            else:\n                gradient_checkpointing.append(False)\n        self.gradient_checkpointing = gradient_checkpointing\n        logger.info(f\"[Encoder3D] gradient_checkpointing: {checkpointing_types}\")\n\n    def forward(self, sample: torch.FloatTensor, memory_state: MemoryState) -> torch.FloatTensor:\n        r\"\"\"The forward method of the `Encoder` class.\"\"\"\n        sample = self.conv_in(sample, memory_state=memory_state)\n        # down\n        for down_block, sac in zip(self.down_blocks, self.gradient_checkpointing):\n            sample = gradient_checkpointing(\n                down_block,\n                sample,\n                memory_state=memory_state,\n                enabled=self.training and sac,\n            )\n\n        # middle\n        sample = self.mid_block(sample, memory_state=memory_state)\n\n        # post-process\n        sample = causal_norm_wrapper(self.conv_norm_out, sample)\n        sample = self.conv_act(sample)\n        sample = self.conv_out(sample, memory_state=memory_state)\n\n        return sample\n\n\nclass Decoder3D(nn.Module):\n    r\"\"\"\n    The `Decoder` layer of a variational autoencoder that\n    decodes its latent representation into an output sample.\n    \"\"\"\n\n    def __init__(\n        self,\n        in_channels: int = 3,\n        out_channels: int = 3,\n        block_out_channels: Tuple[int, ...] = (64,),\n        layers_per_block: int = 2,\n        inflation_mode: _inflation_mode_t = \"tail\",\n        time_receptive_field: _receptive_field_t = \"half\",\n        temporal_up_num: int = 2,\n        slicing_up_num: int = 0,\n        selective_checkpointing: Tuple[_selective_checkpointing_t] = (\"none\",),\n    ):\n        super().__init__()\n        self.layers_per_block = layers_per_block\n        self.temporal_up_num = temporal_up_num\n\n        self.conv_in = init_causal_conv3d(\n            in_channels,\n            block_out_channels[-1],\n            kernel_size=3,\n            stride=1,\n            padding=1,\n            inflation_mode=inflation_mode,\n        )\n\n        self.up_blocks = nn.ModuleList([])\n\n        # mid\n        self.mid_block = UNetMidBlock3D(\n            channels=block_out_channels[-1],\n            inflation_mode=inflation_mode,\n            time_receptive_field=time_receptive_field,\n        )\n\n        # up\n        reversed_block_out_channels = list(reversed(block_out_channels))\n        output_channel = reversed_block_out_channels[0]\n        for i in range(len(reversed_block_out_channels)):\n            prev_output_channel = output_channel\n            output_channel = reversed_block_out_channels[i]\n\n            is_final_block = i == len(block_out_channels) - 1\n            is_temporal_up_block = i < self.temporal_up_num\n            is_slicing_up_block = i >= len(block_out_channels) - slicing_up_num\n            # Note: Keep symmetric\n\n            up_block = UpDecoderBlock3D(\n                num_layers=self.layers_per_block + 1,\n                in_channels=prev_output_channel,\n                out_channels=output_channel,\n                add_upsample=not is_final_block,\n                temporal_up=is_temporal_up_block,\n                slicing=is_slicing_up_block,\n                inflation_mode=inflation_mode,\n                time_receptive_field=time_receptive_field,\n            )\n            self.up_blocks.append(up_block)\n\n        # out\n        self.conv_norm_out = nn.GroupNorm(\n            num_channels=block_out_channels[0], num_groups=32, eps=1e-6\n        )\n        self.conv_act = nn.SiLU()\n        self.conv_out = init_causal_conv3d(\n            block_out_channels[0], out_channels, 3, padding=1, inflation_mode=inflation_mode\n        )\n\n        assert len(selective_checkpointing) == len(self.up_blocks)\n        self.set_gradient_checkpointing(selective_checkpointing)\n\n    def set_gradient_checkpointing(self, checkpointing_types):\n        gradient_checkpointing = []\n        for up_block, sac_type in zip(self.up_blocks, checkpointing_types):\n            if sac_type == \"coarse\":\n                gradient_checkpointing.append(True)\n            elif sac_type == \"fine\":\n                for n, m in up_block.named_modules():\n                    if hasattr(m, \"gradient_checkpointing\"):\n                        m.gradient_checkpointing = True\n                        logger.debug(f\"set gradient_checkpointing: {n}\")\n                gradient_checkpointing.append(False)\n            else:\n                gradient_checkpointing.append(False)\n        self.gradient_checkpointing = gradient_checkpointing\n        logger.info(f\"[Decoder3D] gradient_checkpointing: {checkpointing_types}\")\n\n    def forward(self, sample: torch.FloatTensor, memory_state: MemoryState) -> torch.FloatTensor:\n        r\"\"\"The forward method of the `Decoder` class.\"\"\"\n\n        sample = self.conv_in(sample, memory_state=memory_state)\n\n        # middle\n        sample = self.mid_block(sample, memory_state=memory_state)\n\n        # up\n        for up_block, sac in zip(self.up_blocks, self.gradient_checkpointing):\n            sample = gradient_checkpointing(\n                up_block,\n                sample,\n                memory_state=memory_state,\n                enabled=self.training and sac,\n            )\n\n        # post-process\n        sample = causal_norm_wrapper(self.conv_norm_out, sample)\n        sample = self.conv_act(sample)\n        sample = self.conv_out(sample, memory_state=memory_state)\n\n        return sample\n\n\nclass VideoAutoencoderKL(nn.Module):\n    def __init__(\n        self,\n        in_channels: int = 3,\n        out_channels: int = 3,\n        block_out_channels: Tuple[int] = (64,),\n        layers_per_block: int = 1,\n        latent_channels: int = 4,\n        use_quant_conv: bool = True,\n        use_post_quant_conv: bool = True,\n        enc_selective_checkpointing: Tuple[_selective_checkpointing_t] = (\"none\",),\n        dec_selective_checkpointing: Tuple[_selective_checkpointing_t] = (\"none\",),\n        temporal_scale_num: int = 0,\n        slicing_up_num: int = 0,\n        inflation_mode: _inflation_mode_t = \"tail\",\n        time_receptive_field: _receptive_field_t = \"half\",\n        slicing_sample_min_size: int = None,\n        spatial_downsample_factor: int = 16,\n        temporal_downsample_factor: int = 8,\n        freeze_encoder: bool = False,\n    ):\n        super().__init__()\n        self.spatial_downsample_factor = spatial_downsample_factor\n        self.temporal_downsample_factor = temporal_downsample_factor\n        self.freeze_encoder = freeze_encoder\n        if slicing_sample_min_size is None:\n            slicing_sample_min_size = temporal_downsample_factor\n        self.slicing_sample_min_size = slicing_sample_min_size\n        self.slicing_latent_min_size = slicing_sample_min_size // (2**temporal_scale_num)\n\n        # pass init params to Encoder\n        self.encoder = Encoder3D(\n            in_channels=in_channels,\n            out_channels=latent_channels,\n            block_out_channels=block_out_channels,\n            layers_per_block=layers_per_block,\n            double_z=True,\n            temporal_down_num=temporal_scale_num,\n            selective_checkpointing=enc_selective_checkpointing,\n            inflation_mode=inflation_mode,\n            time_receptive_field=time_receptive_field,\n        )\n\n        # pass init params to Decoder\n        self.decoder = Decoder3D(\n            in_channels=latent_channels,\n            out_channels=out_channels,\n            block_out_channels=block_out_channels,\n            layers_per_block=layers_per_block,\n            # [Override] add temporal_up_num parameter\n            temporal_up_num=temporal_scale_num,\n            slicing_up_num=slicing_up_num,\n            selective_checkpointing=dec_selective_checkpointing,\n            inflation_mode=inflation_mode,\n            time_receptive_field=time_receptive_field,\n        )\n\n        self.quant_conv = (\n            init_causal_conv3d(\n                in_channels=2 * latent_channels,\n                out_channels=2 * latent_channels,\n                kernel_size=1,\n                inflation_mode=inflation_mode,\n            )\n            if use_quant_conv\n            else None\n        )\n        self.post_quant_conv = (\n            init_causal_conv3d(\n                in_channels=latent_channels,\n                out_channels=latent_channels,\n                kernel_size=1,\n                inflation_mode=inflation_mode,\n            )\n            if use_post_quant_conv\n            else None\n        )\n\n        self.use_slicing = False\n\n    def enable_slicing(self):\n        self.use_slicing = True\n\n    def disable_slicing(self):\n        self.use_slicing = False\n\n    def encode(self, x: torch.FloatTensor) -> CausalEncoderOutput:\n        if x.ndim == 4:\n            x = x.unsqueeze(2)\n        h = self.slicing_encode(x)\n        p = DiagonalGaussianDistribution(h)\n        z = p.sample()\n        return CausalEncoderOutput(z, p)\n\n    def decode(self, z: torch.FloatTensor) -> CausalDecoderOutput:\n        if z.ndim == 4:\n            z = z.unsqueeze(2)\n        x = self.slicing_decode(z)\n        return CausalDecoderOutput(x)\n\n    def _encode(self, x: torch.Tensor, memory_state: MemoryState) -> torch.Tensor:\n        x = causal_conv_slice_inputs(x, self.slicing_sample_min_size, memory_state=memory_state)\n        h = self.encoder(x, memory_state=memory_state)\n        h = self.quant_conv(h, memory_state=memory_state) if self.quant_conv is not None else h\n        h = causal_conv_gather_outputs(h)\n        return h\n\n    def _decode(self, z: torch.Tensor, memory_state: MemoryState) -> torch.Tensor:\n        z = causal_conv_slice_inputs(z, self.slicing_latent_min_size, memory_state=memory_state)\n        z = (\n            self.post_quant_conv(z, memory_state=memory_state)\n            if self.post_quant_conv is not None\n            else z\n        )\n        x = self.decoder(z, memory_state=memory_state)\n        x = causal_conv_gather_outputs(x)\n        return x\n\n    def slicing_encode(self, x: torch.Tensor) -> torch.Tensor:\n        sp_size = 1\n        if self.use_slicing and (x.shape[2] - 1) > self.slicing_sample_min_size * sp_size:\n            x_slices = x[:, :, 1:].split(split_size=self.slicing_sample_min_size * sp_size, dim=2)\n            encoded_slices = [\n                self._encode(\n                    torch.cat((x[:, :, :1], x_slices[0]), dim=2),\n                    memory_state=MemoryState.INITIALIZING,\n                )\n            ]\n            for x_idx in range(1, len(x_slices)):\n                encoded_slices.append(\n                    self._encode(x_slices[x_idx], memory_state=MemoryState.ACTIVE)\n                )\n            return torch.cat(encoded_slices, dim=2)\n        else:\n            return self._encode(x, memory_state=MemoryState.DISABLED)\n\n    def slicing_decode(self, z: torch.Tensor) -> torch.Tensor:\n        sp_size = 1\n        if self.use_slicing and (z.shape[2] - 1) > self.slicing_latent_min_size * sp_size:\n            z_slices = z[:, :, 1:].split(split_size=self.slicing_latent_min_size * sp_size, dim=2)\n            decoded_slices = [\n                self._decode(\n                    torch.cat((z[:, :, :1], z_slices[0]), dim=2),\n                    memory_state=MemoryState.INITIALIZING,\n                )\n            ]\n            for z_idx in range(1, len(z_slices)):\n                decoded_slices.append(\n                    self._decode(z_slices[z_idx], memory_state=MemoryState.ACTIVE)\n                )\n            return torch.cat(decoded_slices, dim=2)\n        else:\n            return self._decode(z, memory_state=MemoryState.DISABLED)\n\n    def forward(self, x: torch.FloatTensor) -> CausalAutoencoderOutput:\n        with torch.no_grad() if self.freeze_encoder else nullcontext():\n            z, p = self.encode(x)\n        x = self.decode(z).sample\n        return CausalAutoencoderOutput(x, z, p)\n\n    def preprocess(self, x: torch.Tensor):\n        # x should in [B, C, T, H, W], [B, C, H, W]\n        assert x.ndim == 4 or x.size(2) % self.temporal_downsample_factor == 1\n        return x\n\n    def postprocess(self, x: torch.Tensor):\n        # x should in [B, C, T, H, W], [B, C, H, W]\n        return x\n\n    def set_causal_slicing(\n        self,\n        *,\n        split_size: Optional[int],\n        memory_device: _memory_device_t,\n    ):\n        assert (\n            split_size is None or memory_device is not None\n        ), \"if split_size is set, memory_device must not be None.\"\n        if split_size is not None:\n            self.enable_slicing()\n            self.slicing_sample_min_size = split_size\n            self.slicing_latent_min_size = split_size // self.temporal_downsample_factor\n        else:\n            self.disable_slicing()\n        for module in self.modules():\n            if isinstance(module, InflatedCausalConv3d):\n                module.set_memory_device(memory_device)\n\n    def set_memory_limit(self, conv_max_mem: Optional[float], norm_max_mem: Optional[float]):\n        set_norm_limit(norm_max_mem)\n        for m in self.modules():\n            if isinstance(m, InflatedCausalConv3d):\n                m.set_memory_limit(conv_max_mem if conv_max_mem is not None else float(\"inf\"))\n\n\nclass VideoAutoencoderKLWrapper(VideoAutoencoderKL):\n    def __init__(\n        self, *args, spatial_downsample_factor: int, temporal_downsample_factor: int, **kwargs\n    ):\n        self.spatial_downsample_factor = spatial_downsample_factor\n        self.temporal_downsample_factor = temporal_downsample_factor\n        super().__init__(*args, **kwargs)\n\n    def forward(self, x) -> CausalAutoencoderOutput:\n        z, _, p = self.encode(x)\n        x, _ = self.decode(z)\n        return CausalAutoencoderOutput(x, z, None, p)\n\n    def encode(self, x) -> CausalEncoderOutput:\n        if x.ndim == 4:\n            x = x.unsqueeze(2)\n        p = super().encode(x).latent_dist\n        z = p.sample().squeeze(2)\n        return CausalEncoderOutput(z, None, p)\n\n    def decode(self, z) -> CausalDecoderOutput:\n        if z.ndim == 4:\n            z = z.unsqueeze(2)\n        x = super().decode(z).sample.squeeze(2)\n        return CausalDecoderOutput(x, None)\n\n    def preprocess(self, x):\n        # x should in [B, C, T, H, W], [B, C, H, W]\n        assert x.ndim == 4 or x.size(2) % 4 == 1\n        return x\n\n    def postprocess(self, x):\n        # x should in [B, C, T, H, W], [B, C, H, W]\n        return x\n\n    def set_causal_slicing(\n        self,\n        *,\n        split_size: Optional[int],\n        memory_device: Optional[Literal[\"cpu\", \"same\"]],\n    ):\n        assert (\n            split_size is None or memory_device is not None\n        ), \"if split_size is set, memory_device must not be None.\"\n        if split_size is not None:\n            self.enable_slicing()\n        else:\n            self.disable_slicing()\n        self.slicing_sample_min_size = split_size\n        if split_size is not None:\n            self.slicing_latent_min_size = split_size // self.temporal_downsample_factor\n        for module in self.modules():\n            if isinstance(module, InflatedCausalConv3d):\n                module.set_memory_device(memory_device)\n"
  },
  {
    "path": "modules/seedvr/src/models/video_vae_v3/s8_c16_t4_inflation_sd3.yaml",
    "content": "act_fn: silu\nblock_out_channels:\n  - 128\n  - 256\n  - 512\n  - 512\ndown_block_types:\n  - DownEncoderBlock3D\n  - DownEncoderBlock3D\n  - DownEncoderBlock3D\n  - DownEncoderBlock3D\nin_channels: 3\nlatent_channels: 16\nlayers_per_block: 2\nnorm_num_groups: 32\nout_channels: 3\nslicing_sample_min_size: 4\ntemporal_scale_num: 2\ninflation_mode: pad\nup_block_types:\n  - UpDecoderBlock3D\n  - UpDecoderBlock3D\n  - UpDecoderBlock3D\n  - UpDecoderBlock3D\nspatial_downsample_factor: 8\ntemporal_downsample_factor: 4\nuse_quant_conv: False\nuse_post_quant_conv: False\n"
  },
  {
    "path": "modules/seedvr/src/optimization/__init__.py",
    "content": ""
  },
  {
    "path": "modules/seedvr/src/optimization/memory_manager.py",
    "content": "\"\"\"\nMemory management module for SeedVR2\nHandles VRAM usage, cache management, and memory optimization\n\nExtracted from: seedvr2.py (lines 373-405, 607-626, 1016-1044)\n\"\"\"\n\nimport torch\nfrom ..common.cache import Cache\nfrom ..models.dit_v2.rope import RotaryEmbeddingBase\n\n\ndef preinitialize_rope_cache(runner) -> None:\n    \"\"\"\n    🚀 Pre-initialize RoPE cache to avoid OOM at first launch\n\n    Args:\n        runner: The model runner containing DiT and VAE models\n    \"\"\"\n\n    # Create dummy tensors to simulate common shapes\n    # Format: [batch, channels, frames, height, width] for vid_shape\n    # Format: [batch, seq_len] for txt_shape\n    common_shapes = [\n        # Common video resolutions\n        (torch.tensor([[1, 3, 3]], dtype=torch.long), torch.tensor([[77]], dtype=torch.long)),    # 1 frame, 77 tokens\n        (torch.tensor([[4, 3, 3]], dtype=torch.long), torch.tensor([[77]], dtype=torch.long)),    # 4 frames\n        (torch.tensor([[5, 3, 3]], dtype=torch.long), torch.tensor([[77]], dtype=torch.long)),    # 5 frames (4n+1 format)\n        (torch.tensor([[1, 4, 4]], dtype=torch.long), torch.tensor([[77]], dtype=torch.long)),    # Higher resolution\n    ]\n\n    # Create mock cache for pre-initialization\n\n    temp_cache = Cache()\n\n    # Access RoPE modules in DiT (recursive search)\n    def find_rope_modules(module):\n        rope_modules = []\n        for name, child in module.named_modules():\n            if hasattr(child, 'get_freqs') and callable(child.get_freqs):\n                rope_modules.append((name, child))\n        return rope_modules\n\n    rope_modules = find_rope_modules(runner.dit)\n\n    # Pre-calculate for each RoPE module found\n    for _name, rope_module in rope_modules:\n        # Temporarily move module to CPU if necessary\n        original_device = next(rope_module.parameters()).device if list(rope_module.parameters()) else torch.device('cpu')\n        rope_module.to('cpu')\n\n        for vid_shape, txt_shape in common_shapes:\n            cache_key = f\"720pswin_by_size_bysize_{tuple(vid_shape[0].tolist())}_sd3.mmrope_freqs_3d\"\n\n            def compute_freqs():\n                # Calculate with reduced dimensions to avoid OOM\n                with torch.no_grad():\n                    # Detect RoPE module type\n                    module_type = type(rope_module).__name__\n\n                    if module_type == 'NaRotaryEmbedding3d':\n                        # NaRotaryEmbedding3d: only takes shape (vid_shape)\n                        return rope_module.get_freqs(vid_shape.cpu())\n                    else:\n                        # Standard RoPE: takes vid_shape and txt_shape\n                        return rope_module.get_freqs(vid_shape.cpu(), txt_shape.cpu())\n\n            # Store in cache\n            temp_cache(cache_key, compute_freqs)\n\n        rope_module.to(original_device)\n\n    # Copy temporary cache to runner cache\n    if hasattr(runner, 'cache'):\n        runner.cache.cache.update(temp_cache.cache)\n    else:\n        runner.cache = temp_cache\n\n\ndef clear_rope_cache(runner) -> None:\n    \"\"\"\n    🧹 Clear RoPE cache to free VRAM\n\n    Args:\n        runner: The model runner containing the cache\n    \"\"\"\n    if hasattr(runner, 'cache') and hasattr(runner.cache, 'cache'):\n        # Count entries before cleanup\n        cache_size = len(runner.cache.cache)\n\n        # Free all tensors from cache\n        for key, value in runner.cache.cache.items():\n            if isinstance(value, (tuple, list)):\n                for item in value:\n                    if hasattr(item, 'cpu'):\n                        item.cpu()\n                        del item\n            elif hasattr(value, 'cpu'):\n                value.cpu()\n                del value\n\n        # Clear the cache\n        runner.cache.cache.clear()\n\n    if hasattr(runner, 'dit'):\n        cleared_lru_count = 0\n        for module in runner.dit.modules():\n            if isinstance(module, RotaryEmbeddingBase):\n                if hasattr(module.get_axial_freqs, 'cache_clear'):\n                    module.get_axial_freqs.cache_clear()\n                    cleared_lru_count += 1\n"
  },
  {
    "path": "modules/seedvr/src/optimization/performance.py",
    "content": "\"\"\"\nPerformance optimization module for SeedVR2\nContains optimized tensor operations and video processing functions\n\nExtracted from: seedvr2.py (lines 1633-1730)\n\"\"\"\n\nimport torch\nfrom typing import List, Union\n\n\ndef optimized_video_rearrange(video_tensors: List[torch.Tensor]) -> List[torch.Tensor]:\n    \"\"\"\n    🚀 OPTIMIZED version of video rearrangement\n    Replaces slow loops with vectorized operations\n\n    Transforms:\n    - 3D: c h w -> t c h w (with t=1)\n    - 4D: c t h w -> t c h w\n\n    Expected gains: 5-10x faster than naive loops\n\n    Args:\n        video_tensors: List of video tensors to rearrange\n\n    Returns:\n        List of rearranged tensors in t c h w format\n    \"\"\"\n    if not video_tensors:\n        return []\n\n    # 🔍 Analyze dimensions to optimize processing\n    videos_3d = []\n    videos_4d = []\n    indices_3d = []\n    indices_4d = []\n\n    for i, video in enumerate(video_tensors):\n        if video.ndim == 3:\n            videos_3d.append(video)\n            indices_3d.append(i)\n        else:  # ndim == 4\n            videos_4d.append(video)\n            indices_4d.append(i)\n\n    # 🎯 Prepare final result\n    samples = [None] * len(video_tensors)\n\n    # 🚀 BATCH PROCESSING for 3D videos (c h w -> 1 c h w)\n    if videos_3d:\n        # Method 1: Stack + permute (faster than rearrange)\n        # c h w -> c 1 h w -> 1 c h w\n        batch_3d = torch.stack([v.unsqueeze(1) for v in videos_3d])  # [batch, c, 1, h, w]\n        batch_3d = batch_3d.permute(0, 2, 1, 3, 4)  # [batch, 1, c, h, w]\n\n        for i, idx in enumerate(indices_3d):\n            samples[idx] = batch_3d[i]  # [1, c, h, w]\n\n    # 🚀 BATCH PROCESSING for 4D videos (c t h w -> t c h w)\n    if videos_4d:\n        # Check if all 4D videos have the same shape for maximum optimization\n        shapes = [v.shape for v in videos_4d]\n        if len(set(shapes)) == 1:\n            # 🎯 MAXIMUM OPTIMIZATION: All shapes identical\n            # Stack + permute in single operation\n            batch_4d = torch.stack(videos_4d)  # [batch, c, t, h, w]\n            batch_4d = batch_4d.permute(0, 2, 1, 3, 4)  # [batch, t, c, h, w]\n\n            for i, idx in enumerate(indices_4d):\n                samples[idx] = batch_4d[i]  # [t, c, h, w]\n        else:\n            # 🔄 FALLBACK: Different shapes, optimized individual processing\n            for i, idx in enumerate(indices_4d):\n                # Use permute instead of rearrange (faster)\n                samples[idx] = videos_4d[i].permute(1, 0, 2, 3)  # c t h w -> t c h w\n\n    return samples\n\n\ndef optimized_single_video_rearrange(video: torch.Tensor) -> torch.Tensor:\n    \"\"\"\n    🚀 OPTIMIZED version for single video tensor\n    Replaces rearrange() with native PyTorch operations\n\n    Transforms:\n    - 3D: c h w -> 1 c h w (add temporal dimension)\n    - 4D: c t h w -> t c h w (permute dimensions)\n\n    Expected gains: 2-5x faster than rearrange()\n\n    Args:\n        video: Input video tensor\n\n    Returns:\n        Rearranged tensor with temporal dimension first\n    \"\"\"\n    if video.ndim == 3:\n        # c h w -> 1 c h w (add temporal dimension t=1)\n        return video.unsqueeze(0)\n    else:  # ndim == 4\n        # c t h w -> t c h w (permute channels and temporal)\n        return video.permute(1, 0, 2, 3)\n\n\ndef optimized_sample_to_image_format(sample: torch.Tensor) -> torch.Tensor:\n    \"\"\"\n    🚀 OPTIMIZED version to convert sample to image format\n    Replaces rearrange() with native PyTorch operations\n\n    Transforms:\n    - 3D: c h w -> 1 h w c (add temporal dimension + permute to image format)\n    - 4D: t c h w -> t h w c (permute to image format)\n\n    Expected gains: 2-5x faster than rearrange()\n\n    Args:\n        sample: Input sample tensor\n\n    Returns:\n        Tensor in image format (channels last)\n    \"\"\"\n    if sample.ndim == 3:\n        # c h w -> 1 h w c (add temporal dimension then permute)\n        return sample.unsqueeze(0).permute(0, 2, 3, 1)\n    else:  # ndim == 4\n        # t c h w -> t h w c (permute channels to last)\n        return sample.permute(0, 2, 3, 1)\n\n\ndef temporal_latent_blending(latents1: torch.Tensor, latents2: torch.Tensor, blend_frames: int) -> torch.Tensor:\n    \"\"\"\n    🎨 Temporal blending in latent space to avoid discontinuities\n\n    Args:\n        latents1: Latents from previous batch (end frames)\n        latents2: Latents from current batch (start frames)\n        blend_frames: Number of frames to blend\n\n    Returns:\n        Blended latents for smooth transition\n    \"\"\"\n    if latents1.shape[0] != latents2.shape[0]:\n        # Adjust dimensions if necessary\n        min_frames = min(latents1.shape[0], latents2.shape[0])\n        latents1 = latents1[:min_frames]\n        latents2 = latents2[:min_frames]\n\n    # Create linear blending weights\n    # Frame 0: 100% latents1, 0% latents2\n    # Frame n: 0% latents1, 100% latents2\n    weights1 = torch.linspace(1.0, 0.0, blend_frames).view(-1, 1, 1, 1).to(latents1.device)\n    weights2 = torch.linspace(0.0, 1.0, blend_frames).view(-1, 1, 1, 1).to(latents2.device)\n\n    # Apply blending\n    blended_latents = weights1 * latents1 + weights2 * latents2\n\n    return blended_latents\n"
  },
  {
    "path": "modules/seedvr/src/utils/__init__.py",
    "content": ""
  },
  {
    "path": "modules/seedvr/src/utils/color_fix.py",
    "content": "import torch\nfrom PIL import Image\nfrom torch import Tensor\nfrom torch.nn import functional as F\nfrom ..common.half_precision_fixes import safe_pad_operation, safe_interpolate_operation\nfrom torchvision.transforms import ToTensor, ToPILImage\n\ndef adain_color_fix(target: Image, source: Image):\n    # Convert images to tensors\n    to_tensor = ToTensor()\n    target_tensor = to_tensor(target).unsqueeze(0)\n    source_tensor = to_tensor(source).unsqueeze(0)\n\n    # Apply adaptive instance normalization\n    result_tensor = adaptive_instance_normalization(target_tensor, source_tensor)\n\n    # Convert tensor back to image\n    to_image = ToPILImage()\n    result_image = to_image(result_tensor.squeeze(0).clamp_(0.0, 1.0))\n\n    return result_image\n\ndef wavelet_color_fix(target: Image, source: Image):\n    # Convert images to tensors\n    to_tensor = ToTensor()\n    target_tensor = to_tensor(target).unsqueeze(0)\n    source_tensor = to_tensor(source).unsqueeze(0)\n\n    # Apply wavelet reconstruction\n    result_tensor = wavelet_reconstruction(target_tensor, source_tensor)\n\n    # Convert tensor back to image\n    to_image = ToPILImage()\n    result_image = to_image(result_tensor.squeeze(0).clamp_(0.0, 1.0))\n\n    return result_image\n\ndef calc_mean_std(feat: Tensor, eps=1e-5):\n    \"\"\"Calculate mean and std for adaptive_instance_normalization.\n    Args:\n        feat (Tensor): 4D tensor.\n        eps (float): A small value added to the variance to avoid\n            divide-by-zero. Default: 1e-5.\n    \"\"\"\n    size = feat.size()\n    assert len(size) == 4, 'The input feature should be 4D tensor.'\n    b, c = size[:2]\n    feat_var = feat.view(b, c, -1).var(dim=2) + eps\n    feat_std = feat_var.sqrt().view(b, c, 1, 1)\n    feat_mean = feat.view(b, c, -1).mean(dim=2).view(b, c, 1, 1)\n    return feat_mean, feat_std\n\ndef adaptive_instance_normalization(content_feat:Tensor, style_feat:Tensor):\n    \"\"\"Adaptive instance normalization.\n    Adjust the reference features to have the similar color and illuminations\n    as those in the degradate features.\n    Args:\n        content_feat (Tensor): The reference feature.\n        style_feat (Tensor): The degradate features.\n    \"\"\"\n    size = content_feat.size()\n    style_mean, style_std = calc_mean_std(style_feat)\n    content_mean, content_std = calc_mean_std(content_feat)\n    normalized_feat = (content_feat - content_mean.expand(size)) / content_std.expand(size)\n    return normalized_feat * style_std.expand(size) + style_mean.expand(size)\n\ndef wavelet_blur(image: Tensor, radius: int):\n    \"\"\"\n    Apply wavelet blur to the input tensor.\n    \"\"\"\n    # input shape: (1, 3, H, W)\n    # convolution kernel\n    kernel_vals = [\n        [0.0625, 0.125, 0.0625],\n        [0.125, 0.25, 0.125],\n        [0.0625, 0.125, 0.0625],\n    ]\n    kernel = torch.tensor(kernel_vals, dtype=image.dtype, device=image.device)\n    # add channel dimensions to the kernel to make it a 4D tensor\n    kernel = kernel[None, None]\n    # repeat the kernel across all input channels\n    kernel = kernel.repeat(3, 1, 1, 1)\n    image = safe_pad_operation(image, (radius, radius, radius, radius), mode='replicate')\n    # apply convolution\n    output = F.conv2d(image, kernel, groups=3, dilation=radius)\n    return output\n\ndef wavelet_decomposition(image: Tensor, levels=5):\n    \"\"\"\n    Apply wavelet decomposition to the input tensor.\n    This function only returns the low frequency & the high frequency.\n    \"\"\"\n    high_freq = torch.zeros_like(image)\n    for i in range(levels):\n        radius = 2 ** i\n        low_freq = wavelet_blur(image, radius)\n        high_freq += (image - low_freq)\n        image = low_freq\n\n    return high_freq, low_freq\n\n\n\ndef wavelet_reconstruction(content_feat:Tensor, style_feat:Tensor):\n    \"\"\"\n    Apply wavelet decomposition, so that the content will have the same color as the style.\n    \"\"\"\n    # Vérifier et ajuster les dimensions si nécessaire\n    if content_feat.shape != style_feat.shape:\n        # Redimensionner style_feat pour correspondre à content_feat\n        target_shape = content_feat.shape\n        if len(target_shape) >= 3:  # Au moins 3 dimensions\n            # Utiliser interpolation pour ajuster les dimensions spatiales\n            style_feat = safe_interpolate_operation(\n                style_feat,\n                size=target_shape[-2:],  # Dernières 2 dimensions (H, W)\n                mode='bilinear',\n                align_corners=False\n            )\n\n    # calculate the wavelet decomposition of the content feature\n    content_high_freq, content_low_freq = wavelet_decomposition(content_feat)\n    del content_low_freq\n    # calculate the wavelet decomposition of the style feature\n    style_high_freq, style_low_freq = wavelet_decomposition(style_feat)\n    del style_high_freq\n\n    # Vérification finale avant addition\n    if content_high_freq.shape != style_low_freq.shape:\n        style_low_freq = safe_interpolate_operation(\n            style_low_freq,\n            size=content_high_freq.shape[-2:],\n            mode='bilinear',\n            align_corners=False\n        )\n\n    # reconstruct the content feature with the style's high frequency\n    return content_high_freq + style_low_freq\n"
  },
  {
    "path": "modules/seedvr/test.py",
    "content": "import os\nimport numpy as np\nimport torch\nfrom PIL import Image\nfrom torchvision.transforms import ToPILImage\nfrom .src.core.generation import generation_loop\nfrom .src.core.model_manager import configure_runner\n\n\n\ndevice = 'cuda'\ndtype = torch.bfloat16\nmodel_dir = 'seedvr2_models'\nmodel = 'seedvr2_ema_3b_fp16.safetensors'\nresolution = 1024\nseed = 100\ncfg = 1.0\ninput_image = '/home/vlado/generative/Samples/cutie-512.png'\n\nto_pil = ToPILImage()\nrunner = None\nloaded_model = None\n\n\ndef upscale_image(model_name:str, image_path:str):\n    global runner, loaded_model\n    if (runner is None) or (loaded_model != model_name):\n        runner = configure_runner(model_name, model_dir, device=device, dtype=dtype)\n        loaded_model = model_name\n\n    image = Image.open(image_path).convert(\"RGB\")\n    image_tensor = np.array(image)\n    image_tensor = torch.from_numpy(image_tensor).to(device=device, dtype=dtype).unsqueeze(0) / 255.0\n\n    result_tensor = generation_loop(\n        runner=runner,\n        images=image_tensor,\n        cfg_scale=cfg,\n        seed=seed,\n        res_w=resolution,\n        batch_size=1,\n        temporal_overlap=0,\n        device=device,\n    )\n    image = to_pil(result_tensor.squeeze().permute((2, 0, 1)))\n\n    output_path = os.path.join('/tmp', os.path.basename(image_path))\n\n    image.save(output_path, quality=95)\n    return image\n\n\nif __name__ == \"__main__\":\n    output_image = upscale_image(model, input_image)\n    print('input:', input_image)\n    print('output:', output_image)\n"
  },
  {
    "path": "modules/server.py",
    "content": "import threading\nimport logging\nimport uvicorn\nimport fastapi\n\n\nclass UvicornServer(uvicorn.Server):\n    def __init__(self, app: fastapi.FastAPI, listen = None, port = None, keyfile = None, certfile = None, loop = \"auto\", http = \"auto\"):\n        self.app: fastapi.FastAPI = app\n        self.thread: threading.Thread = None\n        self.wants_restart = False\n        self.config = uvicorn.Config(\n            app=self.app,\n            host = \"0.0.0.0\" if listen else \"127.0.0.1\",\n            port = port or 7861,\n            loop = loop, # auto, asyncio, uvloop\n            http = http, # auto, h11, httptools\n            interface = \"auto\", # auto, asgi3, asgi2, wsgi\n            ws = \"auto\", # auto, websockets, wsproto\n            log_level = logging.WARNING,\n            backlog = 4096, # default=2048\n            timeout_keep_alive = 60, # default=5\n            ssl_keyfile = keyfile,\n            ssl_certfile = certfile,\n            ws_max_size = 1024 * 1024 * 1024,  # default 16MB\n        )\n        super().__init__(config=self.config)\n\n    def start(self):\n        self.thread = threading.Thread(target=self.run, daemon=True)\n        self.wants_restart = False\n        self.thread.start()\n\n    def stop(self):\n        self.should_exit = True\n        self.thread.join()\n\n    def restart(self):\n        self.wants_restart = True\n        self.stop()\n        self.start()\n\n\nclass HypercornServer():\n    def __init__(self, app: fastapi.FastAPI, listen = None, port = None, keyfile = None, certfile = None, loop = \"auto\", http = None):\n        import asyncio\n        import hypercorn\n        self.app: fastapi.FastAPI = app\n        self.server: HypercornServer = None\n        self.thread = None\n        self.task = None\n        self.wants_restart = False\n        self.loop = 'trio' if loop == 'auto' else loop # asyncio, uvloop, trio\n        self.config = hypercorn.config.Config()\n        self.config.bind = [f'{\"0.0.0.0\" if listen else \"127.0.0.1\"}:{port or 7861}']\n        self.config.keyfile = keyfile\n        self.config.certfile = certfile\n        self.config.keep_alive_timeout = 60 # default=5\n        self.config.backlog = 4096 # default=100\n        self.config.loglevel = \"WARNING\"\n        self.config.max_app_queue_size = 64 # default=10\n        self.http = http # unused\n        self.main_loop = asyncio.get_event_loop()\n\n    def run(self):\n        import trio\n        from hypercorn.trio import serve\n        self.server = trio.run(serve, self.app, self.config)\n\n    def start(self):\n        if self.loop == 'trio':\n            self.thread = threading.Thread(target=self.run, daemon=True)\n            self.thread.start()\n        elif self.loop == 'asyncio': # does not run in thread\n            import asyncio\n            from hypercorn.asyncio import serve\n            self.server = serve(self.app, self.config)\n            asyncio.run(self.server)\n        elif self.loop == 'uvloop': # does not run in thread\n            import uvloop\n            from hypercorn.asyncio import serve\n            uvloop.install()\n            from hypercorn.asyncio import serve\n            self.server = serve(self.app, self.config)\n            asyncio.run(self.server)\n"
  },
  {
    "path": "modules/shared.py",
    "content": "from __future__ import annotations\nimport io\nimport os\nimport sys\nimport time\nimport contextlib\nfrom enum import Enum\nfrom typing import TYPE_CHECKING\n\nimport gradio as gr\n\nfrom installer import (\n    log as log,\n    print_dict,\n    console as console,\n    get_version as get_version,\n)\n\nlog.debug(\"Initializing: shared module\")\n\nimport modules.memmon\nimport modules.paths as paths\nfrom modules.json_helpers import (\n    readfile as readfile,\n    writefile as writefile,\n)\nfrom modules.shared_helpers import (\n    listdir as listdir,\n    walk_files as walk_files,\n    html_path as html_path,\n    html as html,\n    req as req,\n    total_tqdm as total_tqdm,\n)\nfrom modules import errors, devices, shared_state, cmd_args, theme, history, files_cache\nfrom modules.shared_defaults import get_default_modes\nfrom modules.paths import (\n    models_path as models_path, # For compatibility, do not modify from here...\n    script_path as script_path,\n    data_path as data_path,\n    sd_configs_path as sd_configs_path,\n    sd_default_config as sd_default_config,\n    sd_model_file as sd_model_file,\n    default_sd_model_file as default_sd_model_file,\n    extensions_dir as extensions_dir,\n    extensions_builtin_dir as extensions_builtin_dir, # ... to here.\n)\nfrom modules.memstats import (\n    memory_stats,\n    ram_stats as ram_stats,\n)\n\nlog.debug(\"Initializing: pipelines\")\nfrom modules import shared_items\nfrom modules.interrogate.openclip import caption_models, caption_types, get_clip_models, refresh_clip_models\nfrom modules.interrogate.vqa import vlm_models, vlm_prompts, vlm_system, vlm_default\n\n\nif TYPE_CHECKING:\n    # Behavior modified by __future__.annotations\n    from diffusers import DiffusionPipeline\n    from modules.shared_legacy import LegacyOption\n    from modules.ui_extra_networks import ExtraNetworksPage\n\n\nclass Backend(Enum):\n    ORIGINAL = 1\n    DIFFUSERS = 2\n\n\nerrors.install([gr])\ndemo: gr.Blocks | None = None\napi = None\nurl = 'https://github.com/vladmandic/sdnext'\ncmd_opts = cmd_args.parse_args()\nparser = cmd_args.parser\nhide_dirs = {\"visible\": not cmd_opts.hide_ui_dir_config}\nlistfiles = listdir\nxformers_available = False\ncompiled_model_state = None\nsd_upscalers = []\ndetailers = []\nface_restorers = []\nyolo = None\ntab_names = []\nextra_networks: list[ExtraNetworksPage] = []\nhypernetworks = {}\nsettings_components = {}\nrestricted_opts = {\n    \"samples_filename_pattern\",\n    \"directories_filename_pattern\",\n    \"outdir_samples\",\n    \"outdir_txt2img_samples\",\n    \"outdir_img2img_samples\",\n    \"outdir_extras_samples\",\n    \"outdir_control_samples\",\n    \"outdir_grids\",\n    \"outdir_txt2img_grids\",\n    \"outdir_save\",\n    \"outdir_init_images\"\n}\nresize_modes = [\"None\", \"Fixed\", \"Crop\", \"Fill\", \"Outpaint\", \"Context aware\"]\nmax_workers = 12\nsdnq_quant_modes = [\"int8\", \"int7\", \"int6\", \"uint5\", \"uint4\", \"uint3\", \"uint2\", \"float8_e4m3fn\", \"float7_e3m3fn\", \"float6_e3m2fn\", \"float5_e2m2fn\", \"float4_e2m1fn\", \"float3_e1m1fn\", \"float2_e1m0fn\"]\nsdnq_matmul_modes = [\"auto\", \"int8\", \"float8_e4m3fn\", \"float16\"]\ndefault_hfcache_dir = os.environ.get(\"SD_HFCACHEDIR\", None) or os.path.join(paths.models_path, 'huggingface')\nstate = shared_state.State()\n\n\n# early select backend\nbackend = Backend.DIFFUSERS\nif cmd_opts.use_openvino: # override for openvino\n    os.environ.setdefault('PYTORCH_TRACING_MODE', 'TORCHFX')\n    from modules.intel.openvino import get_device_list as get_openvino_device_list # pylint: disable=ungrouped-imports\nelif cmd_opts.use_ipex or devices.has_xpu():\n    from modules.intel.ipex import ipex_init\n    ok, e = ipex_init()\n    if not ok:\n        log.error(f'IPEX initialization failed: {e}')\n        if os.environ.get('SD_DEVICE_DEBUG', None) is not None:\n            errors.display(e, 'IPEX')\nelif cmd_opts.use_directml:\n    from modules.dml import directml_init\n    ok, e = directml_init()\n    if not ok:\n        log.error(f'DirectML initialization failed: {e}')\n        if os.environ.get('SD_DEVICE_DEBUG', None) is not None:\n            errors.display(e, 'DirectML')\nelif cmd_opts.use_rocm or devices.has_rocm():\n    from modules.rocm import rocm_init\n    ok, e = rocm_init()\n    if not ok:\n        log.error(f'ROCm initialization failed: {e}')\n        if os.environ.get('SD_DEVICE_DEBUG', None) is not None:\n            errors.display(e, 'ROCm')\ndevices.backend = devices.get_backend(cmd_opts)\ndevices.device = devices.get_optimal_device()\nmem_stat = memory_stats()\ncpu_memory = round(mem_stat['ram']['total'] if \"ram\" in mem_stat else 0)\ngpu_memory = round(mem_stat['gpu']['total'] if \"gpu\" in mem_stat else 0)\nif gpu_memory == 0:\n    gpu_memory = cpu_memory\nnative = backend == Backend.DIFFUSERS\nif not files_cache.do_cache_folders:\n    log.warning('File cache disabled: ')\n\n\ndef list_checkpoint_titles():\n    import modules.sd_models # pylint: disable=W0621\n    return modules.sd_models.checkpoint_titles()\n\n\nlist_checkpoint_tiles = list_checkpoint_titles # alias for legacy typo\ndefault_checkpoint = list_checkpoint_titles()[0] if len(list_checkpoint_titles()) > 0 else \"model.safetensors\"\n\n\ndef is_url(string):\n    from urllib.parse import urlparse\n    parsed_url = urlparse(string)\n    return all([parsed_url.scheme, parsed_url.netloc])\n\n\ndef refresh_checkpoints():\n    import modules.sd_models # pylint: disable=W0621\n    return modules.sd_models.list_models()\n\n\ndef refresh_vaes():\n    import modules.sd_vae # pylint: disable=W0621\n    modules.sd_vae.refresh_vae_list()\n\n\ndef refresh_upscalers():\n    import modules.modelloader # pylint: disable=W0621\n    modules.modelloader.load_upscalers()\n\n\ndef list_samplers():\n    import modules.sd_samplers # pylint: disable=W0621\n    modules.sd_samplers.set_samplers()\n    return modules.sd_samplers.all_samplers\n\nlog.debug('Initializing: default modes')\nstartup_offload_mode, startup_offload_min_gpu, startup_offload_max_gpu, startup_cross_attention, startup_sdp_options, startup_sdp_choices, startup_sdp_override_options, startup_sdp_override_choices, startup_offload_always, startup_offload_never = get_default_modes(cmd_opts=cmd_opts, mem_stat=mem_stat)\nfrom modules.dml import memory_providers, default_memory_provider, directml_do_hijack\nfrom modules.onnx_impl import execution_providers\n\nlog.debug('Initializing: settings')\nfrom modules.ui_components import DropdownEditable\nfrom modules.options import OptionInfo, options_section\noptions_templates: dict[str, OptionInfo | LegacyOption] = {}\n\noptions_templates.update(options_section(('sd', \"Model Loading\"), {\n    \"sd_backend\": OptionInfo('diffusers', \"Execution backend\", gr.Radio, {\"choices\": ['diffusers', 'original'], \"visible\": False }),\n    \"diffusers_pipeline\": OptionInfo('Autodetect', 'Model pipeline', gr.Dropdown, lambda: {\"choices\": list(shared_items.get_pipelines())}),\n    \"sd_model_checkpoint\": OptionInfo(default_checkpoint, \"Base model\", DropdownEditable, lambda: {\"choices\": list_checkpoint_titles()}, refresh=refresh_checkpoints),\n    \"sd_model_refiner\": OptionInfo('None', \"Refiner model\", gr.Dropdown, lambda: {\"choices\": ['None'] + list_checkpoint_titles()}, refresh=refresh_checkpoints),\n    \"sd_unet\": OptionInfo(\"Default\", \"UNET model\", gr.Dropdown, lambda: {\"choices\": shared_items.sd_unet_items()}, refresh=shared_items.refresh_unet_list),\n    \"latent_history\": OptionInfo(16, \"Latent history size\", gr.Slider, {\"minimum\": 0, \"maximum\": 100, \"step\": 1}),\n\n    \"advanced_sep\": OptionInfo(\"<h2>Advanced Options</h2>\", \"\", gr.HTML),\n    \"sd_checkpoint_autoload\": OptionInfo(True, \"Model auto-load on start\"),\n    \"sd_parallel_load\": OptionInfo(True, \"Model load using multiple threads\"),\n    \"sd_checkpoint_autodownload\": OptionInfo(True, \"Model auto-download on demand\"),\n    \"stream_load\": OptionInfo(False, \"Model load using streams\", gr.Checkbox),\n    \"diffusers_to_gpu\": OptionInfo(False, \"Model load model direct to GPU\"),\n    \"runai_streamer_diffusers\": OptionInfo(False, \"Diffusers load using Run:ai streamer\", gr.Checkbox),\n    \"runai_streamer_transformers\": OptionInfo(False, \"Transformers load using Run:ai streamer\", gr.Checkbox),\n    \"diffusers_eval\": OptionInfo(False, \"Force model eval\", gr.Checkbox, {\"visible\": True }),\n    \"device_map\": OptionInfo('default', \"Model load device map\", gr.Radio, {\"choices\": ['default', 'gpu', 'cpu'] }),\n    \"disable_accelerate\": OptionInfo(False, \"Disable accelerate\", gr.Checkbox, {\"visible\": False }),\n    \"sd_checkpoint_cache\": OptionInfo(0, \"Cached models\", gr.Slider, {\"minimum\": 0, \"maximum\": 10, \"step\": 1, \"visible\": False }),\n}))\n\noptions_templates.update(options_section(('model_options', \"Model Options\"), {\n    \"model_modular_sep\": OptionInfo(\"<h2>Modular Pipelines</h2>\", \"\", gr.HTML),\n    \"model_modular_enable\": OptionInfo(False, \"Enable modular pipelines (experimental)\"),\n    \"model_google_sep\": OptionInfo(\"<h2>Google GenAI</h2>\", \"\", gr.HTML),\n    \"google_use_vertexai\": OptionInfo(False, \"Google cloud use VertexAI endpoints\"),\n    \"google_api_key\": OptionInfo(\"\", \"Google cloud API key\", gr.Textbox),\n    \"google_project_id\": OptionInfo(\"\", \"Google Cloud project ID\", gr.Textbox),\n    \"google_location_id\": OptionInfo(\"\", \"Google Cloud location ID\", gr.Textbox),\n    \"model_sd3_sep\": OptionInfo(\"<h2>Stable Diffusion 3.x</h2>\", \"\", gr.HTML),\n    \"model_sd3_disable_te5\": OptionInfo(False, \"Disable T5 text encoder\"),\n    \"model_h1_sep\": OptionInfo(\"<h2>HiDream</h2>\", \"\", gr.HTML),\n    \"model_h1_llama_repo\": OptionInfo(\"Default\", \"LLama repo\", gr.Textbox),\n    \"model_wan_sep\": OptionInfo(\"<h2>WanAI</h2>\", \"\", gr.HTML),\n    \"model_wan_stage\": OptionInfo(\"low noise\", \"Processing stage\", gr.Radio, {\"choices\": ['high noise', 'low noise', 'combined'] }),\n    \"model_wan_boundary\": OptionInfo(0.85, \"Stage boundary ratio\", gr.Slider, {\"minimum\": 0, \"maximum\": 1.0, \"step\": 0.05 }),\n    \"model_chrono_sep\": OptionInfo(\"<h2>ChronoEdit</h2>\", \"\", gr.HTML),\n    \"model_chrono_temporal_steps\": OptionInfo(0, \"Temporal steps\", gr.Slider, {\"minimum\": 0, \"maximum\": 50, \"step\": 1 }),\n    \"model_qwen_layer_sep\": OptionInfo(\"<h2>Qwen layered</h2>\", \"\", gr.HTML),\n    \"model_qwen_layers\": OptionInfo(2, \"Qwen layered number of layers\", gr.Slider, {\"minimum\": 2, \"maximum\": 9, \"step\": 1 }),\n}))\n\noptions_templates.update(options_section(('offload', \"Model Offloading\"), {\n    \"offload_sep\": OptionInfo(\"<h2>Model Offloading</h2>\", \"\", gr.HTML),\n    \"diffusers_offload_mode\": OptionInfo(startup_offload_mode, \"Model offload mode\", gr.Radio, {\"choices\": ['none', 'balanced', 'group', 'model', 'sequential']}),\n    \"diffusers_offload_nonblocking\": OptionInfo(False, \"Non-blocking move operations\"),\n    \"interrogate_offload\": OptionInfo(True, \"Offload caption models\"),\n    \"offload_balanced_sep\": OptionInfo(\"<h2>Balanced Offload</h2>\", \"\", gr.HTML),\n    \"diffusers_offload_pre\": OptionInfo(True, \"Offload during pre-forward\"),\n    \"diffusers_offload_streams\": OptionInfo(False, \"Offload using streams\"),\n    \"diffusers_offload_min_gpu_memory\": OptionInfo(startup_offload_min_gpu, \"Offload low watermark\", gr.Slider, {\"minimum\": 0, \"maximum\": 1, \"step\": 0.01 }),\n    \"diffusers_offload_max_gpu_memory\": OptionInfo(startup_offload_max_gpu, \"Offload GPU high watermark\", gr.Slider, {\"minimum\": 0.1, \"maximum\": 1, \"step\": 0.01 }),\n    \"diffusers_offload_max_cpu_memory\": OptionInfo(0.90, \"Offload CPU high watermark\", gr.Slider, {\"minimum\": 0, \"maximum\": 1, \"step\": 0.01, \"visible\": False }),\n    \"models_not_to_offload\": OptionInfo(\"\", \"Model types not to offload\"),\n    \"diffusers_offload_always\": OptionInfo(startup_offload_always, \"Modules to always offload\"),\n    \"diffusers_offload_never\": OptionInfo(startup_offload_never, \"Modules to never offload\"),\n    \"offload_group_sep\": OptionInfo(\"<h2>Group Offload</h2>\", \"\", gr.HTML),\n    \"group_offload_type\": OptionInfo(\"leaf_level\", \"Group offload type\", gr.Radio, {\"choices\": ['leaf_level', 'block_level']}),\n    \"group_offload_stream\": OptionInfo(False, \"Use torch streams\", gr.Checkbox),\n    'group_offload_record': OptionInfo(False, \"Record torch streams\", gr.Checkbox),\n    'group_offload_blocks': OptionInfo(1, \"Offload blocks\", gr.Number),\n}))\n\noptions_templates.update(options_section((\"quantization\", \"Model Quantization\"), {\n    \"models_not_to_quant\": OptionInfo(\"\", \"Model types not to quantize\"),\n\n    \"sdnq_quantize_sep\": OptionInfo(\"<h2>SDNQ: SD.Next Quantization</h2>\", \"\", gr.HTML),\n    \"sdnq_quantize_weights\": OptionInfo([], \"Quantization enabled\", gr.CheckboxGroup, {\"choices\": [\"Model\", \"TE\", \"LLM\", \"Control\", \"VAE\"]}),\n    \"sdnq_quantize_mode\": OptionInfo(\"auto\", \"Quantization mode\", gr.Dropdown, {\"choices\": [\"auto\", \"pre\", \"post\"]}),\n    \"sdnq_quantize_weights_mode\": OptionInfo(\"int8\", \"Quantization type\", gr.Dropdown, {\"choices\": sdnq_quant_modes}),\n    \"sdnq_quantize_matmul_mode\": OptionInfo(\"auto\", \"Quantized MatMul type\", gr.Dropdown, {\"choices\": sdnq_matmul_modes}),\n    \"sdnq_quantize_weights_mode_te\": OptionInfo(\"Same as model\", \"Quantization type for Text Encoders\", gr.Dropdown, {\"choices\": ['Same as model'] + sdnq_quant_modes}),\n    \"sdnq_quantize_matmul_mode_te\": OptionInfo(\"Same as model\", \"Quantized MatMul type for Text Encoders\", gr.Dropdown, {\"choices\": ['Same as model'] + sdnq_matmul_modes}),\n    \"sdnq_modules_to_not_convert\": OptionInfo(\"\", \"Modules to not convert\"),\n    \"sdnq_modules_dtype_dict\": OptionInfo(\"{}\", \"Modules dtype dict\"),\n    \"sdnq_quantize_weights_group_size\": OptionInfo(0, \"Group size\", gr.Slider, {\"minimum\": -1, \"maximum\": 4096, \"step\": 1}),\n    \"sdnq_svd_rank\": OptionInfo(32, \"SVD rank size\", gr.Slider, {\"minimum\": 1, \"maximum\": 512, \"step\": 1}),\n    \"sdnq_svd_steps\": OptionInfo(8, \"SVD steps\", gr.Slider, {\"minimum\": 1, \"maximum\": 128, \"step\": 1}),\n    \"sdnq_dynamic_loss_threshold\": OptionInfo(1e-2, \"Dynamic loss threshold\", gr.Slider, {\"minimum\": 1e-4, \"maximum\": 1e-1, \"step\": 1e-4}),\n    \"sdnq_use_svd\": OptionInfo(False, \"Use SVD quantization\", gr.Checkbox),\n    \"sdnq_use_dynamic_quantization\": OptionInfo(False, \"Use Dynamic quantization\", gr.Checkbox),\n    \"sdnq_quantize_conv_layers\": OptionInfo(False, \"Quantize convolutional layers\", gr.Checkbox),\n    \"sdnq_dequantize_compile\": OptionInfo(devices.has_triton(early=True), \"Dequantize using torch.compile\", gr.Checkbox),\n    \"sdnq_use_quantized_matmul\": OptionInfo(False, \"Use quantized MatMul\", gr.Checkbox),\n    \"sdnq_use_quantized_matmul_conv\": OptionInfo(False, \"Use quantized MatMul with conv\", gr.Checkbox),\n    \"sdnq_quantize_with_gpu\": OptionInfo(True, \"Quantize using GPU\", gr.Checkbox),\n    \"sdnq_dequantize_fp32\": OptionInfo(False, \"Dequantize using full precision\", gr.Checkbox),\n    \"sdnq_quantize_shuffle_weights\": OptionInfo(False, \"Shuffle weights in post mode\", gr.Checkbox),\n\n    \"nunchaku_sep\": OptionInfo(\"<h2>Nunchaku Engine</h2>\", \"\", gr.HTML),\n    \"nunchaku_quantization\": OptionInfo([], \"SVDQuant enabled\", gr.CheckboxGroup, {\"choices\": [\"Model\", \"TE\"]}),\n    \"nunchaku_attention\": OptionInfo(False, \"Nunchaku attention\", gr.Checkbox),\n    \"nunchaku_offload\": OptionInfo(False, \"Nunchaku offloading\", gr.Checkbox),\n\n    \"bnb_quantization_sep\": OptionInfo(\"<h2>BitsAndBytes</h2>\", \"\", gr.HTML),\n    \"bnb_quantization\": OptionInfo([], \"Quantization enabled\", gr.CheckboxGroup, {\"choices\": [\"Model\", \"TE\", \"LLM\", \"VAE\"]}),\n    \"bnb_quantization_type\": OptionInfo(\"nf4\", \"Quantization type\", gr.Dropdown, {\"choices\": [\"nf4\", \"fp8\", \"fp4\"]}),\n    \"bnb_quantization_storage\": OptionInfo(\"uint8\", \"Backend storage\", gr.Dropdown, {\"choices\": [\"float16\", \"float32\", \"int8\", \"uint8\", \"float64\", \"bfloat16\"]}),\n\n    \"quanto_quantization_sep\": OptionInfo(\"<h2>Optimum Quanto</h2>\", \"\", gr.HTML),\n    \"quanto_quantization\": OptionInfo([], \"Quantization enabled\", gr.CheckboxGroup, {\"choices\": [\"Model\", \"TE\", \"LLM\"]}),\n    \"quanto_quantization_type\": OptionInfo(\"int8\", \"Quantization weights type\", gr.Dropdown, {\"choices\": [\"float8\", \"int8\", \"int4\", \"int2\"]}),\n\n    \"optimum_quanto_sep\": OptionInfo(\"<h2>Optimum Quanto: post-load</h2>\", \"\", gr.HTML),\n    \"optimum_quanto_weights\": OptionInfo([], \"Quantization enabled\", gr.CheckboxGroup, {\"choices\": [\"Model\", \"TE\", \"Control\", \"VAE\"]}),\n    \"optimum_quanto_weights_type\": OptionInfo(\"qint8\", \"Quantization weights type\", gr.Dropdown, {\"choices\": [\"qint8\", \"qfloat8_e4m3fn\", \"qfloat8_e5m2\", \"qint4\", \"qint2\"]}),\n    \"optimum_quanto_activations_type\": OptionInfo(\"none\", \"Quantization activations type \", gr.Dropdown, {\"choices\": [\"none\", \"qint8\", \"qfloat8_e4m3fn\", \"qfloat8_e5m2\"]}),\n    \"optimum_quanto_shuffle_weights\": OptionInfo(False, \"Shuffle weights in post mode\", gr.Checkbox),\n\n    \"torchao_sep\": OptionInfo(\"<h2>TorchAO</h2>\", \"\", gr.HTML),\n    \"torchao_quantization\": OptionInfo([], \"Quantization enabled\", gr.CheckboxGroup, {\"choices\": [\"Model\", \"TE\", \"LLM\", \"Control\", \"VAE\"]}),\n    \"torchao_quantization_mode\": OptionInfo(\"auto\", \"Quantization mode\", gr.Dropdown, {\"choices\": [\"auto\", \"pre\", \"post\"]}),\n    \"torchao_quantization_type\": OptionInfo(\"int8_weight_only\", \"Quantization type\", gr.Dropdown, {\"choices\": [\"int4_weight_only\", \"int8_dynamic_activation_int4_weight\", \"int8_weight_only\", \"int8_dynamic_activation_int8_weight\", \"float8_weight_only\", \"float8_dynamic_activation_float8_weight\", \"float8_static_activation_float8_weight\"]}),\n\n    \"layerwise_quantization_sep\": OptionInfo(\"<h2>Layerwise Casting</h2>\", \"\", gr.HTML),\n    \"layerwise_quantization\": OptionInfo([], \"Layerwise casting enabled\", gr.CheckboxGroup, {\"choices\": [\"Model\", \"TE\"]}),\n    \"layerwise_quantization_storage\": OptionInfo(\"float8_e4m3fn\", \"Layerwise casting storage\", gr.Dropdown, {\"choices\": [\"float8_e4m3fn\", \"float8_e5m2\"]}),\n    \"layerwise_quantization_nonblocking\": OptionInfo(False, \"Layerwise non-blocking operations\", gr.Checkbox),\n\n    \"trt_quantization_sep\": OptionInfo(\"<h2>TensorRT</h2>\", \"\", gr.HTML),\n    \"trt_quantization\": OptionInfo([], \"Quantization enabled\", gr.CheckboxGroup, {\"choices\": [\"Model\"]}),\n    \"trt_quantization_type\": OptionInfo(\"int8\", \"Quantization type\", gr.Dropdown, {\"choices\": [\"int8\", \"int4\", \"fp8\", \"nf4\", \"nvfp4\"]}),\n\n    \"nncf_compress_sep\": OptionInfo(\"<h2>NNCF: Neural Network Compression Framework</h2>\", \"\", gr.HTML, {\"visible\": cmd_opts.use_openvino}),\n    \"nncf_compress_weights\": OptionInfo([], \"Quantization enabled\", gr.CheckboxGroup, {\"choices\": [\"Model\", \"TE\", \"VAE\"], \"visible\": cmd_opts.use_openvino}),\n    \"nncf_compress_weights_mode\": OptionInfo(\"INT8_SYM\", \"Quantization type\", gr.Dropdown, {\"choices\": [\"INT8\", \"INT8_SYM\", \"FP8\", \"MXFP8\", \"INT4_ASYM\", \"INT4_SYM\", \"FP4\", \"MXFP4\", \"NF4\"], \"visible\": cmd_opts.use_openvino}),\n    \"nncf_compress_weights_raito\": OptionInfo(0, \"Compress ratio\", gr.Slider, {\"minimum\": 0, \"maximum\": 1, \"step\": 0.01, \"visible\": cmd_opts.use_openvino}),\n    \"nncf_compress_weights_group_size\": OptionInfo(0, \"Group size\", gr.Slider, {\"minimum\": -1, \"maximum\": 4096, \"step\": 1, \"visible\": cmd_opts.use_openvino}),\n    \"nncf_quantize\": OptionInfo([], \"Static Quantization enabled\", gr.CheckboxGroup, {\"choices\": [\"Model\", \"TE\", \"VAE\"], \"visible\": cmd_opts.use_openvino}),\n    \"nncf_quantize_mode\": OptionInfo(\"INT8\", \"OpenVINO activations mode\", gr.Dropdown, {\"choices\": [\"INT8\", \"FP8_E4M3\", \"FP8_E5M2\"], \"visible\": cmd_opts.use_openvino}),\n}))\n\noptions_templates.update(options_section(('vae_encoder', \"Variational Auto Encoder\"), {\n    \"sd_vae\": OptionInfo(\"Automatic\", \"VAE model\", gr.Dropdown, lambda: {\"choices\": shared_items.sd_vae_items()}, refresh=shared_items.refresh_vae_list),\n    \"diffusers_vae_upcast\": OptionInfo(\"default\", \"VAE upcasting\", gr.Radio, {\"choices\": ['default', 'true', 'false']}),\n    \"no_half_vae\": OptionInfo(False if not cmd_opts.use_openvino else True, \"Full precision (--no-half-vae)\"),\n    \"diffusers_vae_slicing\": OptionInfo(True, \"VAE slicing\", gr.Checkbox),\n    \"diffusers_vae_tiling\": OptionInfo(cmd_opts.lowvram, \"VAE tiling\", gr.Checkbox),\n    \"diffusers_vae_tile_size\": OptionInfo(0, \"VAE tile size\", gr.Slider, {\"minimum\": 0, \"maximum\": 4096, \"step\": 8 }),\n    \"diffusers_vae_tile_overlap\": OptionInfo(0.25, \"VAE tile overlap\", gr.Slider, {\"minimum\": 0, \"maximum\": 0.95, \"step\": 0.05 }),\n    \"remote_vae_type\": OptionInfo('raw', \"Remote VAE image type\", gr.Dropdown, {\"choices\": ['raw', 'jpg', 'png']}),\n    \"remote_vae_encode\": OptionInfo(False, \"Remote VAE for encode\"),\n}))\n\noptions_templates.update(options_section(('text_encoder', \"Text Encoder\"), {\n    \"sd_text_encoder\": OptionInfo('Default', \"Text encoder model\", DropdownEditable, lambda: {\"choices\": shared_items.sd_te_items()}, refresh=shared_items.refresh_te_list),\n    \"prompt_attention\": OptionInfo(\"native\", \"Prompt attention parser\", gr.Radio, {\"choices\": [\"native\", \"compel\", \"xhinker\", \"a1111\", \"fixed\"] }),\n    \"prompt_mean_norm\": OptionInfo(False, \"Prompt attention normalization\", gr.Checkbox),\n    \"sd_textencoder_cache_size\": OptionInfo(4, \"Text encoder cache size\", gr.Slider, {\"minimum\": 0, \"maximum\": 16, \"step\": 1}),\n    \"sd_textencder_linebreak\": OptionInfo(True, \"Use line break as prompt segment marker\", gr.Checkbox),\n    \"diffusers_zeros_prompt_pad\": OptionInfo(False, \"Use zeros for prompt padding\", gr.Checkbox),\n    \"te_optional_sep\": OptionInfo(\"<h2>Optional</h2>\", \"\", gr.HTML),\n    \"te_shared_t5\": OptionInfo(True, \"T5: Use shared instance of text encoder\"),\n    \"te_pooled_embeds\": OptionInfo(False, \"SDXL: Use weighted pooled embeds\"),\n    \"te_complex_human_instruction\": OptionInfo(True, \"Sana: Use complex human instructions\"),\n    \"te_use_mask\": OptionInfo(True, \"Lumina: Use mask in transformers\"),\n}))\n\noptions_templates.update(options_section(('cuda', \"Compute Settings\"), {\n    \"math_sep\": OptionInfo(\"<h2>Execution Precision</h2>\", \"\", gr.HTML),\n    \"precision\": OptionInfo(\"Autocast\", \"Precision type\", gr.Radio, {\"choices\": [\"Autocast\", \"Full\"], \"visible\": False}),\n    \"cuda_dtype\": OptionInfo(\"Auto\", \"Device precision type\", gr.Radio, {\"choices\": [\"Auto\", \"FP32\", \"FP16\", \"BF16\"]}),\n    \"no_half\": OptionInfo(False if not cmd_opts.use_openvino else True, \"Force full precision (--no-half)\", None, None, None),\n    \"upcast_sampling\": OptionInfo(False if sys.platform != \"darwin\" else True, \"Upcast sampling\", gr.Checkbox, {\"visible\": False}),\n\n    \"generator_sep\": OptionInfo(\"<h2>Noise Options</h2>\", \"\", gr.HTML),\n    \"diffusers_generator_device\": OptionInfo(\"GPU\", \"Generator device\", gr.Radio, {\"choices\": [\"GPU\", \"CPU\", \"Unset\"]}),\n\n    \"cross_attention_sep\": OptionInfo(\"<h2>Cross Attention</h2>\", \"\", gr.HTML),\n    \"cross_attention_optimization\": OptionInfo(startup_cross_attention, \"Attention method\", gr.Radio, lambda: {\"choices\": shared_items.list_crossattention()}),\n    \"sdp_options\": OptionInfo(startup_sdp_options, \"SDP kernels\", gr.CheckboxGroup, {\"choices\": startup_sdp_choices}),\n    \"sdp_overrides\": OptionInfo(startup_sdp_override_options, \"SDP overrides\", gr.CheckboxGroup, {\"choices\": startup_sdp_override_choices}),\n    \"attention_slicing\": OptionInfo('Default', \"Attention slicing\", gr.Radio, {\"choices\": ['Default', 'Enabled', 'Disabled']}),\n    \"xformers_options\": OptionInfo(['Flash attention'], \"xFormers options\", gr.CheckboxGroup, {\"choices\": ['Flash attention'] }),\n    \"dynamic_attention_slice_rate\": OptionInfo(0.5, \"Dynamic Attention slicing rate\", gr.Slider, {\"minimum\": 0.01, \"maximum\": max(gpu_memory,4), \"step\": 0.01}),\n    \"dynamic_attention_trigger_rate\": OptionInfo(1, \"Dynamic Attention trigger rate\", gr.Slider, {\"minimum\": 0.01, \"maximum\": max(gpu_memory,4)*2, \"step\": 0.01}),\n}))\n\noptions_templates.update(options_section(('backends', \"Backend Settings\"), {\n    \"other_sep\": OptionInfo(\"<h2>Torch Options</h2>\", \"\", gr.HTML),\n    \"opt_channelslast\": OptionInfo(False, \"Channels last \"),\n    \"cudnn_deterministic\": OptionInfo(False, \"Deterministic mode\"),\n    \"diffusers_fuse_projections\": OptionInfo(False, \"Fused projections\"),\n    \"torch_expandable_segments\": OptionInfo(False, \"Expandable segments\"),\n    \"cudnn_enabled\": OptionInfo(\"default\", \"cuDNN enabled\", gr.Radio, {\"choices\": [\"default\", \"true\", \"false\"]}),\n    \"cudnn_benchmark\": OptionInfo(devices.backend != \"rocm\", \"cuDNN full-depth benchmark\"),\n    \"cudnn_benchmark_limit\": OptionInfo(10, \"cuDNN benchmark limit\", gr.Slider, {\"minimum\": 0, \"maximum\": 100, \"step\": 1}),\n    \"torch_tunable_ops\": OptionInfo(\"default\", \"Tunable ops\", gr.Radio, {\"choices\": [\"default\", \"true\", \"false\"]}),\n    \"torch_tunable_limit\": OptionInfo(30, \"Tunable ops limit\", gr.Slider, {\"minimum\": 1, \"maximum\": 100, \"step\": 1}),\n    \"cuda_mem_fraction\": OptionInfo(0.0, \"Memory limit\", gr.Slider, {\"minimum\": 0, \"maximum\": 1.0, \"step\": 0.05}),\n    \"torch_gc_threshold\": OptionInfo(70, \"GC threshold\", gr.Slider, {\"minimum\": 1, \"maximum\": 100, \"step\": 1}),\n    \"inference_mode\": OptionInfo(\"no-grad\", \"Inference mode\", gr.Radio, {\"choices\": [\"no-grad\", \"inference-mode\", \"none\"]}),\n    \"torch_malloc\": OptionInfo(\"native\", \"Memory allocator\", gr.Radio, {\"choices\": ['native', 'cudaMallocAsync'] }),\n\n    \"onnx_sep\": OptionInfo(\"<h2>ONNX</h2>\", \"\", gr.HTML),\n    \"onnx_execution_provider\": OptionInfo(execution_providers.get_default_execution_provider().value, 'ONNX Execution Provider', gr.Dropdown, lambda: {\"choices\": execution_providers.available_execution_providers }),\n    \"onnx_cpu_fallback\": OptionInfo(True, 'ONNX allow fallback to CPU'),\n    \"onnx_cache_converted\": OptionInfo(True, 'ONNX cache converted models'),\n    \"onnx_unload_base\": OptionInfo(False, 'ONNX unload base model when processing refiner'),\n\n    \"olive_sep\": OptionInfo(\"<h2>Olive</h2>\", \"\", gr.HTML),\n    \"olive_float16\": OptionInfo(True, 'Olive use FP16 on optimization'),\n    \"olive_vae_encoder_float32\": OptionInfo(False, 'Olive force FP32 for VAE Encoder'),\n    \"olive_static_dims\": OptionInfo(True, 'Olive use static dimensions'),\n    \"olive_cache_optimized\": OptionInfo(True, 'Olive cache optimized models'),\n\n    \"ipex_sep\": OptionInfo(\"<h2>IPEX</h2>\", \"\", gr.HTML, {\"visible\": devices.backend == \"ipex\"}),\n    \"ipex_optimize\": OptionInfo([], \"IPEX Optimize\", gr.CheckboxGroup, {\"choices\": [\"Model\", \"TE\", \"VAE\", \"Upscaler\"], \"visible\": devices.backend == \"ipex\"}),\n\n    \"openvino_sep\": OptionInfo(\"<h2>OpenVINO</h2>\", \"\", gr.HTML, {\"visible\": cmd_opts.use_openvino}),\n    \"openvino_devices\": OptionInfo([], \"OpenVINO devices to use\", gr.CheckboxGroup, {\"choices\": get_openvino_device_list() if cmd_opts.use_openvino else [], \"visible\": cmd_opts.use_openvino}), # pylint: disable=E0606\n    \"openvino_accuracy\": OptionInfo(\"performance\", \"OpenVINO accuracy mode\", gr.Radio, {\"choices\": [\"performance\", \"accuracy\"], \"visible\": cmd_opts.use_openvino}),\n    \"openvino_disable_model_caching\": OptionInfo(True, \"OpenVINO disable model caching\", gr.Checkbox, {\"visible\": cmd_opts.use_openvino}),\n    \"openvino_disable_memory_cleanup\": OptionInfo(True, \"OpenVINO disable memory cleanup after compile\", gr.Checkbox, {\"visible\": cmd_opts.use_openvino}),\n\n    \"directml_sep\": OptionInfo(\"<h2>DirectML</h2>\", \"\", gr.HTML, {\"visible\": devices.backend == \"directml\"}),\n    \"directml_memory_provider\": OptionInfo(default_memory_provider, \"DirectML memory stats provider\", gr.Radio, {\"choices\": memory_providers, \"visible\": devices.backend == \"directml\"}),\n    \"directml_catch_nan\": OptionInfo(False, \"DirectML retry ops for NaN\", gr.Checkbox, {\"visible\": devices.backend == \"directml\"}),\n}))\n\noptions_templates.update(options_section(('advanced', \"Pipeline Modifiers\"), {\n    \"clip_skip_sep\": OptionInfo(\"<h2>CLiP Skip</h2>\", \"\", gr.HTML),\n    \"clip_skip_enabled\": OptionInfo(False, \"CLiP skip enabled\"),\n\n    \"token_merging_sep\": OptionInfo(\"<h2>Token Merging</h2>\", \"\", gr.HTML),\n    \"token_merging_method\": OptionInfo(\"None\", \"Token merging enabled\", gr.Radio, {\"choices\": ['None', 'ToMe', 'ToDo']}),\n    \"tome_ratio\": OptionInfo(0.0, \"ToMe token merging ratio\", gr.Slider, {\"minimum\": 0.0, \"maximum\": 1.0, \"step\": 0.05}),\n    \"todo_ratio\": OptionInfo(0.0, \"ToDo token merging ratio\", gr.Slider, {\"minimum\": 0.0, \"maximum\": 1.0, \"step\": 0.05}),\n\n    \"freeu_sep\": OptionInfo(\"<h2>FreeU</h2>\", \"\", gr.HTML),\n    \"freeu_enabled\": OptionInfo(False, \"FreeU enabled\"),\n    \"freeu_b1\": OptionInfo(1.2, \"FreeU 1st stage backbone\", gr.Slider, {\"minimum\": 1.0, \"maximum\": 2.0, \"step\": 0.01}),\n    \"freeu_b2\": OptionInfo(1.4, \"FreeU 2nd stage backbone\", gr.Slider, {\"minimum\": 1.0, \"maximum\": 2.0, \"step\": 0.01}),\n    \"freeu_s1\": OptionInfo(0.9, \"FreeU 1st stage skip\", gr.Slider, {\"minimum\": 0.0, \"maximum\": 1.0, \"step\": 0.01}),\n    \"freeu_s2\": OptionInfo(0.2, \"FreeU 2nd stage skip\", gr.Slider, {\"minimum\": 0.0, \"maximum\": 1.0, \"step\": 0.01}),\n\n    \"pag_sep\": OptionInfo(\"<h2>PAG: Perturbed attention guidance</h2>\", \"\", gr.HTML),\n    \"pag_apply_layers\": OptionInfo(\"m0\", \"PAG layer names\"),\n\n    \"pab_sep\": OptionInfo(\"<h2>PAB: Pyramid attention broadcast </h2>\", \"\", gr.HTML),\n    \"pab_enabled\": OptionInfo(False, \"PAB cache enabled\"),\n    \"pab_spacial_skip_range\": OptionInfo(2, \"PAB spacial skip range\", gr.Slider, {\"minimum\": 1, \"maximum\": 4, \"step\": 1}),\n    \"pab_spacial_skip_start\": OptionInfo(100, \"PAB spacial skip start\", gr.Slider, {\"minimum\": 0, \"maximum\": 1000, \"step\": 1}),\n    \"pab_spacial_skip_end\": OptionInfo(800, \"PAB spacial skip end\", gr.Slider, {\"minimum\": 0, \"maximum\": 1000, \"step\": 1}),\n\n    \"cache_dit_sep\": OptionInfo(\"<h2>Cache-DiT</h2>\", \"\", gr.HTML),\n    \"cache_dit_enabled\": OptionInfo(False, \"Cache-DiT enabled\"),\n    \"cache_dit_calibrator\": OptionInfo(\"None\", \"Cache-DiT calibrator\", gr.Radio, {\"choices\": [\"None\", \"TaylorSeer\", \"FoCa\"]}),\n    \"cache_dit_fcompute\": OptionInfo(-1, \"Cache-DiT F-compute blocks\", gr.Slider, {\"minimum\": -1, \"maximum\": 32, \"step\": 1}),\n    \"cache_dit_bcompute\": OptionInfo(-1, \"Cache-DiT B-compute blocks\", gr.Slider, {\"minimum\": -1, \"maximum\": 32, \"step\": 1}),\n    \"cache_dit_threshold\": OptionInfo(-1, \"Cache-DiT residual diff threshold\", gr.Slider, {\"minimum\": -1.0, \"maximum\": 1.0, \"step\": 0.01}),\n    \"cache_dit_warmup\": OptionInfo(-1, \"Cache-DiT warmup steps\", gr.Slider, {\"minimum\": -1, \"maximum\": 50, \"step\": 1}),\n\n    \"faster_cache__sep\": OptionInfo(\"<h2>Faster Cache</h2>\", \"\", gr.HTML),\n    \"faster_cache_enabled\": OptionInfo(False, \"FasterCache cache enabled\"),\n    \"fc_spacial_skip_range\": OptionInfo(2, \"FasterCache spacial skip range\", gr.Slider, {\"minimum\": 1, \"maximum\": 4, \"step\": 1}),\n    \"fc_spacial_skip_start\": OptionInfo(0, \"FasterCache spacial skip start\", gr.Slider, {\"minimum\": 0, \"maximum\": 1000, \"step\": 1}),\n    \"fc_spacial_skip_end\": OptionInfo(681, \"FasterCache spacial skip end\", gr.Slider, {\"minimum\": 0, \"maximum\": 1.0, \"step\": 0.01}),\n    \"fc_uncond_skip_range\": OptionInfo(5, \"FasterCache uncond skip range\", gr.Slider, {\"minimum\": 1, \"maximum\": 4, \"step\": 1}),\n    \"fc_uncond_skip_start\": OptionInfo(0, \"FasterCache uncond skip start\", gr.Slider, {\"minimum\": 0.0, \"maximum\": 1.0, \"step\": 0.01}),\n    \"fc_uncond_skip_end\": OptionInfo(781, \"FasterCache uncond skip end\", gr.Slider, {\"minimum\": 0, \"maximum\": 1, \"step\": 1}),\n    \"fc_attention_weight\": OptionInfo(0.5, \"FasterCache spacial skip range\", gr.Slider, {\"minimum\": 0.0, \"maximum\": 1.0, \"step\": 0.05}),\n    \"fc_tensor_format\": OptionInfo(\"BCFHW\", \"FasterCache tensor format\", gr.Radio, {\"choices\": [\"BCFHW\", \"BFCHW\", \"BCHW\"]}),\n    \"fc_guidance_distilled\": OptionInfo(False, \"FasterCache guidance distilled\", gr.Checkbox),\n\n    \"para_sep\": OptionInfo(\"<h2>Para-attention</h2>\", \"\", gr.HTML),\n    \"para_cache_enabled\": OptionInfo(False, \"ParaAttention first-block cache enabled\"),\n    \"para_diff_threshold\": OptionInfo(0.1, \"ParaAttention residual diff threshold\", gr.Slider, {\"minimum\": 0.0, \"maximum\": 1.0, \"step\": 0.01}),\n\n    \"teacache_sep\": OptionInfo(\"<h2>TeaCache</h2>\", \"\", gr.HTML),\n    \"teacache_enabled\": OptionInfo(False, \"TeaCache cache enabled\"),\n    \"teacache_thresh\": OptionInfo(0.15, \"TeaCache L1 threshold\", gr.Slider, {\"minimum\": 0.0, \"maximum\": 1.0, \"step\": 0.01}),\n\n    \"hypertile_sep\": OptionInfo(\"<h2>HyperTile</h2>\", \"\", gr.HTML),\n    \"hypertile_unet_enabled\": OptionInfo(False, \"Hypertile UNet Enabled\"),\n    \"hypertile_hires_only\": OptionInfo(False, \"Hypertile HiRes pass only\"),\n    \"hypertile_unet_tile\": OptionInfo(0, \"Hypertile UNet max tile size\", gr.Slider, {\"minimum\": 0, \"maximum\": 1024, \"step\": 8}),\n    \"hypertile_unet_min_tile\": OptionInfo(0, \"Hypertile UNet min tile size\", gr.Slider, {\"minimum\": 0, \"maximum\": 1024, \"step\": 8}),\n    \"hypertile_unet_swap_size\": OptionInfo(1, \"Hypertile UNet swap size\", gr.Slider, {\"minimum\": 1, \"maximum\": 10, \"step\": 1}),\n    \"hypertile_unet_depth\": OptionInfo(0, \"Hypertile UNet depth\", gr.Slider, {\"minimum\": 0, \"maximum\": 4, \"step\": 1}),\n    \"hypertile_vae_enabled\": OptionInfo(False, \"Hypertile VAE Enabled\", gr.Checkbox),\n    \"hypertile_vae_tile\": OptionInfo(128, \"Hypertile VAE tile size\", gr.Slider, {\"minimum\": 0, \"maximum\": 1024, \"step\": 8}),\n    \"hypertile_vae_swap_size\": OptionInfo(1, \"Hypertile VAE swap size\", gr.Slider, {\"minimum\": 1, \"maximum\": 10, \"step\": 1}),\n\n    \"hidiffusion_sep\": OptionInfo(\"<h2>HiDiffusion</h2>\", \"\", gr.HTML),\n    \"hidiffusion_raunet\": OptionInfo(True, \"HiDiffusion apply RAU-Net\"),\n    \"hidiffusion_attn\": OptionInfo(True, \"HiDiffusion apply MSW-MSA\"),\n    \"hidiffusion_steps\": OptionInfo(8, \"HiDiffusion aggressive at step\", gr.Slider, {\"minimum\": 1, \"maximum\": 10, \"step\": 1}),\n    \"hidiffusion_t1\": OptionInfo(-1, \"HiDiffusion override T1 ratio\", gr.Slider, {\"minimum\": -1, \"maximum\": 1.0, \"step\": 0.05}),\n    \"hidiffusion_t2\": OptionInfo(-1, \"HiDiffusion override T2 ratio\", gr.Slider, {\"minimum\": -1, \"maximum\": 1.0, \"step\": 0.05}),\n\n    \"linfusion_sep\": OptionInfo(\"<h2>LinFusion</h2>\", \"\", gr.HTML),\n    \"enable_linfusion\": OptionInfo(False, \"LinFusion apply distillation on load\"),\n\n    \"ras_sep\": OptionInfo(\"<h2>RAS: Region-Adaptive Sampling</h2>\", \"\", gr.HTML),\n    \"ras_enable\": OptionInfo(False, \"RAS enabled\"),\n\n    \"cfgzero_sep\": OptionInfo(\"<h2>CFG-Zero</h2>\", \"\", gr.HTML),\n    \"cfgzero_enabled\": OptionInfo(False, \"CFG-Zero enabled\"),\n    \"cfgzero_star\": OptionInfo(False, \"CFG-Zero star\"),\n    \"cfgzero_steps\": OptionInfo(0, \"CFG-Zero steps\", gr.Slider, {\"minimum\": 0, \"maximum\": 3, \"step\": 1}),\n\n    \"inference_batch_sep\": OptionInfo(\"<h2>Batch</h2>\", \"\", gr.HTML),\n    \"sequential_seed\": OptionInfo(True, \"Batch mode uses sequential seeds\"),\n    \"batch_frame_mode\": OptionInfo(False, \"Parallel process images in batch\"),\n}))\n\noptions_templates.update(options_section(('compile', \"Model Compile\"), {\n    \"cuda_compile_sep\": OptionInfo(\"<h2>Model Compile</h2>\", \"\", gr.HTML),\n    \"cuda_compile\": OptionInfo([] if not cmd_opts.use_openvino else [\"Model\", \"VAE\", \"Upscaler\", \"Control\"], \"Compile Model\", gr.CheckboxGroup, {\"choices\": [\"Model\", \"TE\", \"VAE\", \"LLM\", \"Control\", \"Upscaler\"]}),\n    \"cuda_compile_backend\": OptionInfo(\"inductor\" if not cmd_opts.use_openvino else \"openvino_fx\", \"Model compile backend\", gr.Radio, {\"choices\": ['none', 'inductor', 'cudagraphs', 'aot_ts_nvfuser', 'hidet', 'migraphx', 'ipex', 'onediff', 'stable-fast', 'deep-cache', 'olive-ai', 'openvino_fx']}),\n    \"cuda_compile_mode\": OptionInfo(\"default\", \"Model compile mode\", gr.Radio, {\"choices\": ['default', 'reduce-overhead', 'max-autotune', 'max-autotune-no-cudagraphs']}),\n    \"cuda_compile_options\": OptionInfo([\"repeated\", \"fullgraph\", \"dynamic\"] if not cmd_opts.use_openvino else [], \"Model compile options\", gr.CheckboxGroup, {\"choices\": [\"precompile\", \"repeated\", \"fullgraph\", \"dynamic\", \"verbose\"]}),\n    \"deep_cache_interval\": OptionInfo(3, \"DeepCache cache interval\", gr.Slider, {\"minimum\": 1, \"maximum\": 10, \"step\": 1}),\n}))\n\noptions_templates.update(options_section(('system-paths', \"System Paths\"), {\n    \"models_paths_sep_options\": OptionInfo(\"<h2>Models Paths</h2>\", \"\", gr.HTML),\n    \"models_dir\": OptionInfo('models', \"Root model folder\", folder=True),\n    \"model_paths_sep_options\": OptionInfo(\"<h2>Paths for specific models</h2>\", \"\", gr.HTML),\n    \"ckpt_dir\": OptionInfo(os.path.join(paths.models_path, 'Stable-diffusion'), \"Folder with stable diffusion models\", folder=True),\n    \"diffusers_dir\": OptionInfo(os.path.join(paths.models_path, 'Diffusers'), \"Folder with Huggingface models\", folder=True),\n    \"hfcache_dir\": OptionInfo(default_hfcache_dir, \"Folder for Huggingface cache\", folder=True),\n    \"tunable_dir\": OptionInfo(os.path.join(paths.models_path, 'tunable'), \"Folder for Tunable ops cache\", folder=True),\n    \"vae_dir\": OptionInfo(os.path.join(paths.models_path, 'VAE'), \"Folder with VAE files\", folder=True),\n    \"unet_dir\": OptionInfo(os.path.join(paths.models_path, 'UNET'), \"Folder with UNET files\", folder=True),\n    \"te_dir\": OptionInfo(os.path.join(paths.models_path, 'Text-encoder'), \"Folder with Text encoder files\", folder=True),\n    \"lora_dir\": OptionInfo(os.path.join(paths.models_path, 'Lora'), \"Folder with LoRA network(s)\", folder=True),\n    \"styles_dir\": OptionInfo(os.path.join(paths.models_path, 'styles'), \"File or Folder with user-defined styles\", folder=True),\n    \"wildcards_dir\": OptionInfo(os.path.join(paths.models_path, 'wildcards'), \"Folder with user-defined wildcards\", folder=True),\n    \"embeddings_dir\": OptionInfo(os.path.join(paths.models_path, 'embeddings'), \"Folder with textual inversion embeddings\", folder=True),\n    \"control_dir\": OptionInfo(os.path.join(paths.models_path, 'control'), \"Folder with Control models\", folder=True),\n    \"yolo_dir\": OptionInfo(os.path.join(paths.models_path, 'yolo'), \"Folder with Yolo models\", folder=True),\n    \"codeformer_models_path\": OptionInfo(os.path.join(paths.models_path, 'Codeformer'), \"Folder with codeformer models\", folder=True),\n    \"gfpgan_models_path\": OptionInfo(os.path.join(paths.models_path, 'GFPGAN'), \"Folder with GFPGAN models\", folder=True),\n    \"esrgan_models_path\": OptionInfo(os.path.join(paths.models_path, 'ESRGAN'), \"Folder with ESRGAN models\", folder=True),\n    \"bsrgan_models_path\": OptionInfo(os.path.join(paths.models_path, 'BSRGAN'), \"Folder with BSRGAN models\", folder=True),\n    \"realesrgan_models_path\": OptionInfo(os.path.join(paths.models_path, 'RealESRGAN'), \"Folder with RealESRGAN models\", folder=True),\n    \"scunet_models_path\": OptionInfo(os.path.join(paths.models_path, 'SCUNet'), \"Folder with SCUNet models\", folder=True),\n    \"swinir_models_path\": OptionInfo(os.path.join(paths.models_path, 'SwinIR'), \"Folder with SwinIR models\", folder=True),\n    \"clip_models_path\": OptionInfo(os.path.join(paths.models_path, 'CLIP'), \"Folder with CLIP models\", folder=True),\n    \"other_paths_sep_options\": OptionInfo(\"<h2>Cache folders</h2>\", \"\", gr.HTML),\n    \"clean_temp_dir_at_start\": OptionInfo(True, \"Cleanup temporary folder on startup\"),\n    \"temp_dir\": OptionInfo(\"\", \"Directory for temporary images; leave empty for default\", folder=True),\n    \"accelerate_offload_path\": OptionInfo('cache/accelerate', \"Folder for disk offload\", folder=True),\n    \"openvino_cache_path\": OptionInfo('cache', \"Folder for OpenVINO cache\", folder=True),\n    \"onnx_cached_models_path\": OptionInfo(os.path.join(paths.models_path, 'ONNX', 'cache'), \"Folder for ONNX cached models\", folder=True),\n    \"onnx_temp_dir\": OptionInfo(os.path.join(paths.models_path, 'ONNX', 'temp'), \"Folder for ONNX conversion\", folder=True),\n}))\n\noptions_templates.update(options_section(('saving-images', \"Image Options\"), {\n    \"samples_save\": OptionInfo(True, \"Save all generated images\"),\n    \"keep_incomplete\": OptionInfo(True, \"Save interrupted images\"),\n    \"samples_format\": OptionInfo('jpg', 'File format', gr.Dropdown, {\"choices\": [\"jpg\", \"png\", \"webp\", \"tiff\", \"jp2\", \"jxl\"]}),\n    \"jpeg_quality\": OptionInfo(90, \"Image quality\", gr.Slider, {\"minimum\": 1, \"maximum\": 100, \"step\": 1}),\n    \"img_max_size_mp\": OptionInfo(1000, \"Maximum image size (MP)\", gr.Slider, {\"minimum\": 100, \"maximum\": 2000, \"step\": 1}),\n    \"webp_lossless\": OptionInfo(False, \"WebP lossless compression\"),\n    \"save_selected_only\": OptionInfo(True, \"UI save only saves selected image\"),\n    \"include_mask\": OptionInfo(False, \"Include mask in outputs\"),\n    \"samples_save_zip\": OptionInfo(False, \"Create ZIP archive for multiple images\"),\n    \"image_background\": OptionInfo(\"#000000\", \"Resize background color\", gr.ColorPicker, {}),\n\n    \"image_sep_grid\": OptionInfo(\"<h2>Grid Options</h2>\", \"\", gr.HTML),\n    \"grid_save\": OptionInfo(True, \"Save all generated image grids\"),\n    \"grid_format\": OptionInfo('jpg', 'File format', gr.Dropdown, {\"choices\": [\"jpg\", \"png\", \"webp\", \"tiff\", \"jp2\", \"jxl\"]}),\n    \"n_rows\": OptionInfo(-1, \"Grid max rows count\", gr.Slider, {\"minimum\": -1, \"maximum\": 16, \"step\": 1}),\n    \"n_cols\": OptionInfo(-1, \"Grid max columns count\", gr.Slider, {\"minimum\": -1, \"maximum\": 16, \"step\": 1}),\n    \"grid_background\": OptionInfo(\"#000000\", \"Grid background color\", gr.ColorPicker, {}),\n    \"font\": OptionInfo(\"\", \"Font file\"),\n    \"font_color\": OptionInfo(\"#FFFFFF\", \"Font color\", gr.ColorPicker, {}),\n\n    \"image_sep_browser\": OptionInfo(\"<h2>Image Gallery</h2>\", \"\", gr.HTML),\n    \"browser_cache\": OptionInfo(True, \"Use image gallery cache\"),\n    \"browser_folders\": OptionInfo(\"\", \"Additional image browser folders\"),\n    \"browser_gallery_autoupdate\": OptionInfo(False, \"Automatically update when switching to the gallery\"),\n    \"browser_fixed_width\": OptionInfo(False, \"Use fixed width thumbnails\"),\n    \"viewer_show_metadata\": OptionInfo(True, \"Show metadata in full screen image browser\"),\n\n    \"save_sep_options\": OptionInfo(\"<h2>Intermediate Image Saving</h2>\", \"\", gr.HTML),\n    \"save_init_img\": OptionInfo(False, \"Save init images\"),\n    \"save_images_before_highres_fix\": OptionInfo(False, \"Save image before hires\"),\n    \"save_images_before_refiner\": OptionInfo(False, \"Save image before refiner\"),\n    \"save_images_before_detailer\": OptionInfo(False, \"Save image before detailer\"),\n    \"save_images_before_color_correction\": OptionInfo(False, \"Save image before color correction\"),\n    \"save_mask\": OptionInfo(False, \"Save inpainting mask\"),\n    \"save_mask_composite\": OptionInfo(False, \"Save inpainting masked composite\"),\n    \"gradio_skip_video\": OptionInfo(False, \"Do not display video output in UI\"),\n\n    \"image_sep_watermark\": OptionInfo(\"<h2>Watermarking</h2>\", \"\", gr.HTML),\n    \"image_watermark_enabled\": OptionInfo(False, \"Include invisible watermark\"),\n    \"image_watermark\": OptionInfo('', \"Invisible watermark string\"),\n    \"image_watermark_position\": OptionInfo('none', 'Image watermark position', gr.Dropdown, {\"choices\": [\"none\", \"top/left\", \"top/right\", \"bottom/left\", \"bottom/right\", \"center\", \"random\"]}),\n    \"image_watermark_image\": OptionInfo('', \"Image watermark file\"),\n}))\n\noptions_templates.update(options_section(('saving-paths', \"Image Paths\"), {\n    \"saving_sep_images\": OptionInfo(\"<h2>Save Options</h2>\", \"\", gr.HTML),\n    \"save_images_add_number\": OptionInfo(True, \"Numbered filenames\", component_args=hide_dirs),\n    \"use_original_name_batch\": OptionInfo(True, \"Batch uses original name\"),\n    \"save_to_dirs\": OptionInfo(False, \"Save images to a subdirectory\"),\n    \"directories_filename_pattern\": OptionInfo(\"[date]\", \"Directory name pattern\", component_args=hide_dirs),\n    \"samples_filename_pattern\": OptionInfo(\"[seq]-[date]-[model_name]\", \"Images filename pattern\", component_args=hide_dirs),\n    \"directories_max_prompt_words\": OptionInfo(8, \"Max words\", gr.Slider, {\"minimum\": 1, \"maximum\": 99, \"step\": 1, **hide_dirs}),\n\n    \"outdir_sep_dirs\": OptionInfo(\"<h2>Folders</h2>\", \"\", gr.HTML),\n    \"outdir_samples\": OptionInfo(\"\", \"Base images folder\", component_args=hide_dirs, folder=True),\n    \"outdir_txt2img_samples\": OptionInfo(\"outputs/text\", 'Folder for text generate', component_args=hide_dirs, folder=True),\n    \"outdir_img2img_samples\": OptionInfo(\"outputs/image\", 'Folder for image generate', component_args=hide_dirs, folder=True),\n    \"outdir_control_samples\": OptionInfo(\"outputs/control\", 'Folder for control generate', component_args=hide_dirs, folder=True),\n    \"outdir_extras_samples\": OptionInfo(\"outputs/extras\", 'Folder for processed images', component_args=hide_dirs, folder=True),\n    \"outdir_save\": OptionInfo(\"outputs/save\", \"Folder for manually saved images\", component_args=hide_dirs, folder=True),\n    \"outdir_video\": OptionInfo(\"outputs/video\", \"Folder for videos\", component_args=hide_dirs, folder=True),\n    \"outdir_init_images\": OptionInfo(\"outputs/inputs\", \"Folder for init images\", component_args=hide_dirs, folder=True),\n\n    \"outdir_sep_grids\": OptionInfo(\"<h2>Grids</h2>\", \"\", gr.HTML),\n    \"outdir_grids\": OptionInfo(\"\", \"Base grids folder\", component_args=hide_dirs, folder=True),\n    \"outdir_txt2img_grids\": OptionInfo(\"outputs/grids\", 'Folder for txt2img grids', component_args=hide_dirs, folder=True),\n    \"outdir_img2img_grids\": OptionInfo(\"outputs/grids\", 'Folder for img2img grids', component_args=hide_dirs, folder=True),\n    \"outdir_control_grids\": OptionInfo(\"outputs/grids\", 'Folder for control grids', component_args=hide_dirs, folder=True),\n}))\n\noptions_templates.update(options_section(('image-metadata', \"Image Metadata\"), {\n    \"image_metadata\": OptionInfo(True, \"Save metadata in image\"),\n    \"save_txt\": OptionInfo(False, \"Save metadata to text file\"),\n    \"save_log_fn\": OptionInfo(\"\", \"Save metadata to JSON file\", component_args=hide_dirs),\n    \"disable_apply_params\": OptionInfo('', \"Restore from metadata: skip params\", gr.Textbox),\n    \"disable_apply_metadata\": OptionInfo(['sd_model_checkpoint', 'sd_vae', 'sd_unet', 'sd_text_encoder'], \"Restore from metadata: skip settings\", gr.Dropdown, lambda: {\"multiselect\":True, \"choices\": opts.list()}),\n}))\n\noptions_templates.update(options_section(('ui', \"User Interface\"), {\n    \"themes_sep_ui\": OptionInfo(\"<h2>Theme options</h2>\", \"\", gr.HTML),\n    \"theme_type\": OptionInfo(\"Modern\", \"Theme type\", gr.Radio, {\"choices\": [\"Modern\", \"Standard\", \"None\"]}),\n    \"theme_style\": OptionInfo(\"Auto\", \"Theme mode\", gr.Radio, {\"choices\": [\"Auto\", \"Dark\", \"Light\"]}),\n    \"gradio_theme\": OptionInfo(\"black-teal\", \"UI theme\", gr.Dropdown, lambda: {\"choices\": theme.list_themes()}, refresh=theme.refresh_themes),\n\n    \"quicksetting_sep_images\": OptionInfo(\"<h2>Quicksettings</h2>\", \"\", gr.HTML),\n    \"quicksettings_list\": OptionInfo([\"sd_model_checkpoint\"], \"Quicksettings list\", gr.Dropdown, lambda: {\"multiselect\":True, \"choices\": opts.list()}),\n\n    \"server_sep_ui\": OptionInfo(\"<h2>Startup & Server Options</h2>\", \"\", gr.HTML),\n    \"autolaunch\": OptionInfo(False, \"Autolaunch browser upon startup\"),\n    \"motd\": OptionInfo(False, \"Show MOTD\"),\n    \"subpath\": OptionInfo(\"\", \"Mount URL subpath\"),\n    \"ui_request_timeout\": OptionInfo(120000, \"UI request timeout\", gr.Slider, {\"minimum\": 1000, \"maximum\": 300000, \"step\": 10}),\n\n    \"ui_tabs\": OptionInfo(\"<h2>UI Tabs</h2>\", \"\", gr.HTML),\n    \"ui_disabled\": OptionInfo([], \"Disabled UI tabs\", gr.Dropdown, { 'visible': False }),\n\n    \"cards_sep_ui\": OptionInfo(\"<h2>Networks panel</h2>\", \"\", gr.HTML),\n    \"extra_networks_card_size\": OptionInfo(140, \"Network card size (px)\", gr.Slider, {\"minimum\": 20, \"maximum\": 2000, \"step\": 1}),\n    \"extra_networks_card_cover\": OptionInfo(\"sidebar\", \"Network panel position\", gr.Radio, {\"choices\": [\"cover\", \"inline\", \"sidebar\"]}),\n    \"extra_networks_card_square\": OptionInfo(True, \"Disable variable aspect ratio\"),\n\n    \"other_sep_ui\": OptionInfo(\"<h2>Other...</h2>\", \"\", gr.HTML),\n    \"ui_locale\": OptionInfo(\"Auto\", \"UI locale\", gr.Dropdown, lambda: {\"choices\": theme.list_locales()}),\n    \"font_size\": OptionInfo(14, \"Font size\", gr.Slider, {\"minimum\": 8, \"maximum\": 32, \"step\": 1}),\n    \"gpu_monitor\": OptionInfo(3000, \"GPU monitor interval\", gr.Slider, {\"minimum\": 100, \"maximum\": 60000, \"step\": 100}),\n    \"aspect_ratios\": OptionInfo(\"1:1, 4:3, 3:2, 16:9, 16:10, 21:9, 2:3, 3:4, 9:16, 10:16, 9:21\", \"Allowed aspect ratios\"),\n    \"compact_view\": OptionInfo(False, \"Compact view\"),\n    \"ui_columns\": OptionInfo(4, \"Gallery view columns\", gr.Slider, {\"minimum\": 1, \"maximum\": 8, \"step\": 1}),\n\n    \"images_sep_log\": OptionInfo(\"<h2>Log Display</h2>\", \"\", gr.HTML),\n    \"logmonitor_show\": OptionInfo(True, \"Show log view\"),\n    \"logmonitor_refresh_period\": OptionInfo(5000, \"Log view update period\", gr.Slider, {\"minimum\": 0, \"maximum\": 30000, \"step\": 25}),\n\n    \"images_sep_ui\": OptionInfo(\"<h2>Outputs & Images</h2>\", \"\", gr.HTML),\n    \"return_grid\": OptionInfo(True, \"Show grid in results\"),\n    \"return_mask\": OptionInfo(False, \"Inpainting include greyscale mask in results\"),\n    \"return_mask_composite\": OptionInfo(False, \"Inpainting include masked composite in results\"),\n    \"send_seed\": OptionInfo(True, \"Send seed when sending prompt or image to other interface\", gr.Checkbox, {\"visible\": False}),\n    \"send_size\": OptionInfo(False, \"Send size when sending prompt or image to another interface\", gr.Checkbox, {\"visible\": False}),\n}))\n\noptions_templates.update(options_section(('live-preview', \"Live Previews\"), {\n    \"show_progress_every_n_steps\": OptionInfo(1, \"Live preview display period\", gr.Slider, {\"minimum\": 0, \"maximum\": 20, \"step\": 1}),\n    \"show_progress_type\": OptionInfo(\"TAESD\", \"Live preview method\", gr.Radio, {\"choices\": [\"Simple\", \"Approximate\", \"TAESD\", \"Full VAE\"]}),\n    \"live_preview_refresh_period\": OptionInfo(500, \"Progress update period\", gr.Slider, {\"minimum\": 0, \"maximum\": 5000, \"step\": 25}),\n    \"taesd_variant\": OptionInfo(shared_items.sd_taesd_items()[0], \"TAESD variant\", gr.Dropdown, {\"choices\": shared_items.sd_taesd_items()}),\n    \"taesd_layers\": OptionInfo(3, \"TAESD decode layers\", gr.Slider, {\"minimum\": 1, \"maximum\": 3, \"step\": 1}),\n    \"live_preview_downscale\": OptionInfo(True, \"Downscale high resolution live previews\"),\n\n    \"notification_audio_enable\": OptionInfo(False, \"Play a notification upon completion\"),\n    \"notification_audio_path\": OptionInfo(\"html/notification.mp3\",\"Path to notification sound\", component_args=hide_dirs, folder=True),\n}))\n\noptions_templates.update(options_section(('postprocessing', \"Postprocessing\"), {\n    'postprocessing_enable_in_main_ui': OptionInfo([], \"Additional postprocessing operations\", gr.Dropdown, lambda: {\"multiselect\":True, \"choices\": [x.name for x in shared_items.postprocessing_scripts()]}),\n    'postprocessing_operation_order': OptionInfo([], \"Postprocessing operation order\", gr.Dropdown, lambda: {\"multiselect\":True, \"choices\": [x.name for x in shared_items.postprocessing_scripts()], \"visible\": False }),\n\n    \"postprocessing_sep_img2img\": OptionInfo(\"<h2>Inpaint</h2>\", \"\", gr.HTML),\n    \"img2img_color_correction\": OptionInfo(False, \"Apply color correction\"),\n    \"mask_apply_overlay\": OptionInfo(True, \"Apply mask as overlay\"),\n    \"img2img_background_color\": OptionInfo(\"#ffffff\", \"Image transparent color fill\", gr.ColorPicker, {}),\n    \"inpainting_mask_weight\": OptionInfo(1.0, \"Inpainting conditioning mask strength\", gr.Slider, {\"minimum\": 0.0, \"maximum\": 1.0, \"step\": 0.01}),\n    \"initial_noise_multiplier\": OptionInfo(1.0, \"Noise multiplier for image processing\", gr.Slider, {\"minimum\": 0.1, \"maximum\": 1.5, \"step\": 0.01, \"visible\": False}),\n\n    \"postprocessing_sep_detailer\": OptionInfo(\"<h2>Detailer</h2>\", \"\", gr.HTML),\n    \"detailer_unload\": OptionInfo(False, \"Move detailer model to CPU when complete\"),\n    \"detailer_augment\": OptionInfo(False, \"Detailer use model augment\"),\n\n    \"postprocessing_sep_seedvt\": OptionInfo(\"<h2>SeedVT</h2>\", \"\", gr.HTML),\n    \"seedvt_cfg_scale\": OptionInfo(3.5, \"SeedVR CFG Scale\", gr.Slider, {\"minimum\": 1, \"maximum\": 15, \"step\": 1}),\n\n    \"postprocessing_sep_face_restore\": OptionInfo(\"<h2>Face Restore</h2>\", \"\", gr.HTML),\n    \"face_restoration_model\": OptionInfo(\"None\", \"Face restoration\", gr.Radio, lambda: {\"choices\": ['None'] + [x.name() for x in face_restorers]}),\n    \"code_former_weight\": OptionInfo(0.2, \"CodeFormer weight parameter\", gr.Slider, {\"minimum\": 0, \"maximum\": 1, \"step\": 0.01}),\n\n    \"postprocessing_sep_upscalers\": OptionInfo(\"<h2>Upscaling</h2>\", \"\", gr.HTML),\n    \"upscaler_unload\": OptionInfo(False, \"Unload upscaler after processing\"),\n    \"upscaler_latent_steps\": OptionInfo(20, \"Upscaler latent steps\", gr.Slider, {\"minimum\": 4, \"maximum\": 100, \"step\": 1}),\n    \"upscaler_tile_size\": OptionInfo(192, \"Upscaler tile size\", gr.Slider, {\"minimum\": 0, \"maximum\": 512, \"step\": 16}),\n    \"upscaler_tile_overlap\": OptionInfo(8, \"Upscaler tile overlap\", gr.Slider, {\"minimum\": 0, \"maximum\": 64, \"step\": 1}),\n}))\n\n\noptions_templates.update(options_section(('huggingface', \"Huggingface\"), {\n    \"huggingface_sep\": OptionInfo(\"<h2>Huggingface</h2>\", \"\", gr.HTML),\n    \"diffuser_cache_config\": OptionInfo(True, \"Use cached model config when available\"),\n    \"huggingface_token\": OptionInfo('', 'HuggingFace token', gr.Textbox, {\"lines\": 2}),\n    \"hf_transfer_mode\": OptionInfo(\"rust\", \"HuggingFace download method\", gr.Radio, {\"choices\": ['requests', 'rust', 'xet']}),\n    \"huggingface_mirror\": OptionInfo('', 'HuggingFace mirror', gr.Textbox),\n    \"offline_mode\": OptionInfo(False, 'Force offline mode', gr.Checkbox),\n\n    \"diffusers_model_load_variant\": OptionInfo(\"default\", \"Preferred Model variant\", gr.Radio, {\"choices\": ['default', 'fp32', 'fp16']}),\n    \"diffusers_vae_load_variant\": OptionInfo(\"default\", \"Preferred VAE variant\", gr.Radio, {\"choices\": ['default', 'fp32', 'fp16']}),\n    \"custom_diffusers_pipeline\": OptionInfo('', 'Load custom Diffusers pipeline'),\n    \"civitai_token\": OptionInfo('', 'HuggingFace token', gr.Textbox, {\"lines\": 2, \"visible\": False}),\n}))\n\noptions_templates.update(options_section(('extra_networks', \"Networks\"), {\n    \"extra_networks_sep1\": OptionInfo(\"<h2>Networks UI</h2>\", \"\", gr.HTML),\n    \"extra_networks_show\": OptionInfo(True, \"UI show on startup\"),\n    \"extra_networks\": OptionInfo([\"All\"], \"Available networks\", gr.Dropdown, lambda: {\"multiselect\":True, \"choices\": ['All'] + [en.title for en in extra_networks]}),\n    \"extra_networks_sort\": OptionInfo(\"Default\", \"Sort order\", gr.Dropdown, {\"choices\": ['Default', 'Name [A-Z]', 'Name [Z-A]', 'Date [Newest]', 'Date [Oldest]', 'Size [Largest]', 'Size [Smallest]']}),\n    \"extra_networks_view\": OptionInfo(\"gallery\", \"UI view\", gr.Radio, {\"choices\": [\"gallery\", \"list\"]}),\n    \"extra_networks_sidebar_width\": OptionInfo(35, \"UI sidebar width (%)\", gr.Slider, {\"minimum\": 10, \"maximum\": 80, \"step\": 1}),\n    \"extra_networks_height\": OptionInfo(0, \"UI height (%)\", gr.Slider, {\"minimum\": 0, \"maximum\": 100, \"step\": 1}), # set in ui_javascript\n    \"extra_networks_fetch\": OptionInfo(True, \"UI fetch network info on mouse-over\"),\n    \"extra_network_skip_indexing\": OptionInfo(False, \"Build info on first access\", gr.Checkbox),\n\n    \"extra_networks_scan_sep\": OptionInfo(\"<h2>Networks Scan</h2>\", \"\", gr.HTML),\n    \"extra_networks_scan_skip\": OptionInfo(\"\", \"Skip CivitAI scan for regex pattern(s)\", gr.Textbox),\n\n    \"extra_networks_model_sep\": OptionInfo(\"<h2>Rerefence models</h2>\", \"\", gr.HTML),\n    \"extra_network_reference_enable\": OptionInfo(True, \"Enable use of reference models\", gr.Checkbox),\n    \"extra_network_reference_values\": OptionInfo(False, \"Use reference values when available\", gr.Checkbox),\n\n    \"extra_networks_lora_sep\": OptionInfo(\"<h2>LoRA</h2>\", \"\", gr.HTML),\n    \"extra_networks_default_multiplier\": OptionInfo(1.0, \"Default strength\", gr.Slider, {\"minimum\": 0.0, \"maximum\": 2.0, \"step\": 0.01}),\n    \"lora_force_reload\": OptionInfo(False, \"LoRA force reload always\"),\n    \"lora_force_diffusers\": OptionInfo(False if not cmd_opts.use_openvino else True, \"LoRA load using Diffusers method\"),\n\n    \"lora_apply_te\": OptionInfo(False, \"LoRA native apply to text encoder\"),\n    \"lora_fuse_native\": OptionInfo(True, \"LoRA native fuse with model\"),\n    \"lora_fuse_diffusers\": OptionInfo(False, \"LoRA diffusers fuse with model\"),\n    \"lora_apply_tags\": OptionInfo(0, \"LoRA auto-apply tags\", gr.Slider, {\"minimum\": -1, \"maximum\": 32, \"step\": 1}),\n    \"lora_in_memory_limit\": OptionInfo(1, \"LoRA memory cache\", gr.Slider, {\"minimum\": 0, \"maximum\": 32, \"step\": 1}),\n    \"lora_add_hashes_to_infotext\": OptionInfo(False, \"LoRA add hash info to metadata\"),\n\n    \"extra_networks_styles_sep\": OptionInfo(\"<h2>Styles</h2>\", \"\", gr.HTML),\n    \"extra_networks_styles\": OptionInfo(True, \"Show reference styles\"),\n    \"extra_networks_apply_unparsed\": OptionInfo(True, \"Restore unparsed prompt\"),\n\n    \"extra_networks_embed_sep\": OptionInfo(\"<h2>Embeddings</h2>\", \"\", gr.HTML),\n    \"diffusers_enable_embed\": OptionInfo(True, \"Enable embeddings support\", gr.Checkbox),\n    \"diffusers_convert_embed\": OptionInfo(False, \"Auto-convert SD15 embeddings to SDXL\", gr.Checkbox),\n\n    \"extra_networks_wildcard_sep\": OptionInfo(\"<h2>Wildcards</h2>\", \"\", gr.HTML),\n    \"wildcards_enabled\": OptionInfo(True, \"Enable file wildcards support\"),\n}))\n\noptions_templates.update(options_section(('extensions', \"Extensions\"), {\n    \"disable_all_extensions\": OptionInfo(\"none\", \"Disable all extensions\", gr.Radio, {\"choices\": [\"none\", \"user\", \"all\"]}),\n}))\n\n\noptions_templates.update(options_section(('hidden_options', \"Hidden options\"), {\n    # internal options\n    \"diffusers_version\": OptionInfo(\"\", \"Diffusers version\", gr.Textbox, {\"visible\": False}),\n    \"disabled_extensions\": OptionInfo([], \"Disable these extensions\", gr.Textbox, {\"visible\": False}),\n    \"sd_checkpoint_hash\": OptionInfo(\"\", \"SHA256 hash of the current checkpoint\", gr.Textbox, {\"visible\": False}),\n    \"tooltips\": OptionInfo(\"UI Tooltips\", \"UI tooltips\", gr.Radio, {\"choices\": [\"None\", \"Browser default\", \"UI tooltips\"], \"visible\": False}),\n\n    # Caption/Interrogate settings (controlled via Caption Tab UI)\n    \"interrogate_default_type\": OptionInfo(\"VLM\", \"Default caption type\", gr.Radio, {\"choices\": [\"VLM\", \"OpenCLiP\", \"Tagger\"], \"visible\": False}),\n    \"tagger_show_scores\": OptionInfo(False, \"Tagger: show confidence scores in results\", gr.Checkbox, {\"visible\": False}),\n    \"interrogate_clip_model\": OptionInfo(\"ViT-L-14/openai\", \"OpenCLiP: default model\", gr.Dropdown, lambda: {\"choices\": get_clip_models(), \"visible\": False}, refresh=refresh_clip_models),\n    \"interrogate_clip_mode\": OptionInfo(caption_types[0], \"OpenCLiP: default mode\", gr.Dropdown, {\"choices\": caption_types, \"visible\": False}),\n    \"interrogate_blip_model\": OptionInfo(list(caption_models)[0], \"OpenCLiP: default captioner\", gr.Dropdown, {\"choices\": list(caption_models), \"visible\": False}),\n    \"interrogate_clip_num_beams\": OptionInfo(1, \"OpenCLiP: num beams\", gr.Slider, {\"minimum\": 1, \"maximum\": 16, \"step\": 1, \"visible\": False}),\n    \"interrogate_clip_min_length\": OptionInfo(32, \"OpenCLiP: min length\", gr.Slider, {\"minimum\": 1, \"maximum\": 128, \"step\": 1, \"visible\": False}),\n    \"interrogate_clip_max_length\": OptionInfo(74, \"OpenCLiP: max length\", gr.Slider, {\"minimum\": 1, \"maximum\": 512, \"step\": 1, \"visible\": False}),\n    \"interrogate_clip_min_flavors\": OptionInfo(2, \"OpenCLiP: min flavors\", gr.Slider, {\"minimum\": 0, \"maximum\": 32, \"step\": 1, \"visible\": False}),\n    \"interrogate_clip_max_flavors\": OptionInfo(16, \"OpenCLiP: max flavors\", gr.Slider, {\"minimum\": 0, \"maximum\": 32, \"step\": 1, \"visible\": False}),\n    \"interrogate_clip_flavor_count\": OptionInfo(1024, \"OpenCLiP: intermediate flavors\", gr.Slider, {\"minimum\": 256, \"maximum\": 4096, \"step\": 64, \"visible\": False}),\n    \"interrogate_clip_chunk_size\": OptionInfo(1024, \"OpenCLiP: chunk size\", gr.Slider, {\"minimum\": 256, \"maximum\": 4096, \"step\": 64, \"visible\": False}),\n    \"interrogate_vlm_model\": OptionInfo(vlm_default, \"VLM: default model\", gr.Dropdown, {\"choices\": list(vlm_models), \"visible\": False}),\n    \"interrogate_vlm_prompt\": OptionInfo(vlm_prompts[2], \"VLM: default prompt\", DropdownEditable, {\"choices\": vlm_prompts, \"visible\": False}),\n    \"interrogate_vlm_system\": OptionInfo(vlm_system, \"VLM: system prompt\", gr.Textbox, {\"visible\": False}),\n    \"interrogate_vlm_num_beams\": OptionInfo(1, \"VLM: num beams\", gr.Slider, {\"minimum\": 1, \"maximum\": 16, \"step\": 1, \"visible\": False}),\n    \"interrogate_vlm_max_length\": OptionInfo(512, \"VLM: max length\", gr.Slider, {\"minimum\": 1, \"maximum\": 4096, \"step\": 1, \"visible\": False}),\n    \"interrogate_vlm_do_sample\": OptionInfo(True, \"VLM: use sample method\", gr.Checkbox, {\"visible\": False}),\n    \"interrogate_vlm_temperature\": OptionInfo(0.8, \"VLM: temperature\", gr.Slider, {\"minimum\": 0, \"maximum\": 1.0, \"step\": 0.01, \"visible\": False}),\n    \"interrogate_vlm_top_k\": OptionInfo(0, \"VLM: top-k\", gr.Slider, {\"minimum\": 0, \"maximum\": 99, \"step\": 1, \"visible\": False}),\n    \"interrogate_vlm_top_p\": OptionInfo(0, \"VLM: top-p\", gr.Slider, {\"minimum\": 0, \"maximum\": 1.0, \"step\": 0.01, \"visible\": False}),\n    \"interrogate_vlm_keep_prefill\": OptionInfo(False, \"VLM: keep prefill text in output\", gr.Checkbox, {\"visible\": False}),\n    \"interrogate_vlm_keep_thinking\": OptionInfo(False, \"VLM: keep reasoning trace in output\", gr.Checkbox, {\"visible\": False}),\n    \"interrogate_vlm_thinking_mode\": OptionInfo(False, \"VLM: enable thinking/reasoning mode\", gr.Checkbox, {\"visible\": False}),\n    \"tagger_threshold\": OptionInfo(0.50, \"Tagger: general tag threshold\", gr.Slider, {\"minimum\": 0, \"maximum\": 1, \"step\": 0.01, \"visible\": False}),\n    \"tagger_include_rating\": OptionInfo(False, \"Tagger: include rating tags\", gr.Checkbox, {\"visible\": False}),\n    \"tagger_max_tags\": OptionInfo(74, \"Tagger: max tags\", gr.Slider, {\"minimum\": 1, \"maximum\": 512, \"step\": 1, \"visible\": False}),\n    \"tagger_sort_alpha\": OptionInfo(False, \"Tagger: sort alphabetically\", gr.Checkbox, {\"visible\": False}),\n    \"tagger_use_spaces\": OptionInfo(False, \"Tagger: use spaces for tags\", gr.Checkbox, {\"visible\": False}),\n    \"tagger_escape_brackets\": OptionInfo(True, \"Tagger: escape brackets\", gr.Checkbox, {\"visible\": False}),\n    \"tagger_exclude_tags\": OptionInfo(\"\", \"Tagger: exclude tags\", gr.Textbox, {\"visible\": False}),\n    \"waifudiffusion_model\": OptionInfo(\"wd-eva02-large-tagger-v3\", \"WaifuDiffusion: default model\", gr.Dropdown, {\"choices\": [], \"visible\": False}),\n    \"waifudiffusion_character_threshold\": OptionInfo(0.85, \"WaifuDiffusion: character tag threshold\", gr.Slider, {\"minimum\": 0, \"maximum\": 1, \"step\": 0.01, \"visible\": False}),\n\n    # control settings are handled separately\n    \"control_hires\": OptionInfo(False, \"Hires use Control\", gr.Checkbox, {\"visible\": False}),\n    \"control_aspect_ratio\": OptionInfo(False, \"Aspect ratio resize\", gr.Checkbox, {\"visible\": False}),\n    \"control_max_units\": OptionInfo(4, \"Maximum number of units\", gr.Slider, {\"minimum\": 1, \"maximum\": 10, \"step\": 1, \"visible\": False}),\n    \"control_tiles\": OptionInfo(\"1x1, 1x2, 1x3, 1x4, 2x1, 2x1, 2x2, 2x3, 2x4, 3x1, 3x2, 3x3, 3x4, 4x1, 4x2, 4x3, 4x4\", \"Tiling options\", gr.Textbox, {\"visible\": False}),\n    \"control_move_processor\": OptionInfo(False, \"Processor move to CPU after use\", gr.Checkbox, {\"visible\": False}),\n    \"control_unload_processor\": OptionInfo(False, \"Processor unload after use\", gr.Checkbox, {\"visible\": False}),\n\n    # sampler settings are handled separately\n    \"show_samplers\": OptionInfo([], \"Show samplers in user interface\", gr.CheckboxGroup, lambda: {\"choices\": [x.name for x in list_samplers()], \"visible\": False}),\n    'eta_noise_seed_delta': OptionInfo(0, \"Noise seed delta (eta)\", gr.Number, {\"precision\": 0, \"visible\": False}),\n    \"scheduler_eta\": OptionInfo(1.0, \"Noise multiplier (eta)\", gr.Slider, {\"minimum\": 0.0, \"maximum\": 1.0, \"step\": 0.01, \"visible\": False}),\n    \"schedulers_solver_order\": OptionInfo(0, \"Solver order (where\", gr.Slider, {\"minimum\": 0, \"maximum\": 5, \"step\": 1, \"visible\": False}),\n    \"schedulers_use_loworder\": OptionInfo(True, \"Use simplified solvers in final steps\", gr.Checkbox, {\"visible\": False}),\n    \"schedulers_prediction_type\": OptionInfo(\"default\", \"Override model prediction type\", gr.Radio, {\"choices\": ['default', 'epsilon', 'sample', 'v_prediction', 'flow_prediction'], \"visible\": False}),\n    \"schedulers_sigma\": OptionInfo(\"default\", \"Sigma algorithm\", gr.Radio, {\"choices\": ['default', 'karras', 'exponential', 'polyexponential'], \"visible\": False}),\n    \"schedulers_beta_schedule\": OptionInfo(\"default\", \"Beta schedule\", gr.Dropdown, {\"choices\": ['default', 'linear', 'scaled_linear', 'squaredcos_cap_v2', 'sigmoid'], \"visible\": False}),\n    \"schedulers_use_thresholding\": OptionInfo(False, \"Use dynamic thresholding\", gr.Checkbox, {\"visible\": False}),\n    \"schedulers_timestep_spacing\": OptionInfo(\"default\", \"Timestep spacing\", gr.Dropdown, {\"choices\": ['default', 'linspace', 'leading', 'trailing'], \"visible\": False}),\n    'schedulers_timesteps': OptionInfo('', \"Timesteps\", gr.Textbox, {\"visible\": False}),\n    \"schedulers_rescale_betas\": OptionInfo(False, \"Rescale betas with zero terminal SNR\", gr.Checkbox, {\"visible\": False}),\n    'schedulers_beta_start': OptionInfo(0, \"Beta start\", gr.Slider, {\"minimum\": 0, \"maximum\": 1, \"step\": 0.00001}),\n    'schedulers_beta_end': OptionInfo(0, \"Beta end\", gr.Slider, {\"minimum\": 0, \"maximum\": 1, \"step\": 0.00001}),\n    'schedulers_timesteps_range': OptionInfo(1000, \"Timesteps range\", gr.Slider, {\"minimum\": 250, \"maximum\": 4000, \"step\": 1}),\n    'schedulers_shift': OptionInfo(3, \"Sampler shift\", gr.Slider, {\"minimum\": 0.1, \"maximum\": 10, \"step\": 0.1, \"visible\": False}),\n    'schedulers_dynamic_shift': OptionInfo(False, \"Sampler dynamic shift\", gr.Checkbox, {\"visible\": False}),\n    'schedulers_sigma_adjust': OptionInfo(1.0, \"Sigma adjust\", gr.Slider, {\"minimum\": 0.5, \"maximum\": 1.5, \"step\": 0.01, \"visible\": False}),\n    'schedulers_sigma_adjust_min': OptionInfo(0.2, \"Sigma adjust start\", gr.Slider, {\"minimum\": 0.0, \"maximum\": 1.0, \"step\": 0.01, \"visible\": False}),\n    'schedulers_sigma_adjust_max': OptionInfo(0.8, \"Sigma adjust end\", gr.Slider, {\"minimum\": 0.0, \"maximum\": 1.0, \"step\": 0.01, \"visible\": False}),\n    'schedulers_base_shift': OptionInfo(0.5, \"Sampler base shift\", gr.Slider, {\"minimum\": 0.0, \"maximum\": 1.0, \"step\": 0.01, \"visible\": False}),\n    'schedulers_max_shift': OptionInfo(1.15, \"Sampler max shift\", gr.Slider, {\"minimum\": 0.0, \"maximum\": 4.0, \"step\": 0.01, \"visible\": False}),\n    'uni_pc_variant': OptionInfo(\"bh2\", \"UniPC variant\", gr.Radio, {\"choices\": [\"bh1\", \"bh2\", \"vary_coeff\"], \"visible\": False}),\n    'uni_pc_skip_type': OptionInfo(\"time_uniform\", \"UniPC skip type\", gr.Radio, {\"choices\": [\"time_uniform\", \"time_quadratic\", \"logSNR\"], \"visible\": False}),\n\n    # detailer settings are handled separately\n    \"detailer_model\": OptionInfo(\"Detailer\", \"Detailer model\", gr.Radio, lambda: {\"choices\": [x.name() for x in detailers], \"visible\": False}),\n    \"detailer_classes\": OptionInfo(\"\", \"Detailer classes\", gr.Textbox, { \"visible\": False}),\n    \"detailer_conf\": OptionInfo(0.6, \"Min confidence\", gr.Slider, {\"minimum\": 0.0, \"maximum\": 1.0, \"step\": 0.05, \"visible\": False}),\n    \"detailer_max\": OptionInfo(2, \"Max detected\", gr.Slider, {\"minimum\": 1, \"maximum\": 10, \"step\": 1, \"visible\": False}),\n    \"detailer_iou\": OptionInfo(0.5, \"Max overlap\", gr.Slider, {\"minimum\": 0, \"maximum\": 1.0, \"step\": 0.05, \"visible\": False}),\n    \"detailer_sigma_adjust\": OptionInfo(1.0, \"Detailer sigma adjust\", gr.Slider, {\"minimum\": 0, \"maximum\": 1.0, \"step\": 0.05, \"visible\": False}),\n    \"detailer_sigma_adjust_max\": OptionInfo(1.0, \"Detailer sigma end\", gr.Slider, {\"minimum\": 0, \"maximum\": 1.0, \"step\": 0.05, \"visible\": False}),\n    \"detailer_min_size\": OptionInfo(0.0, \"Min object size\", gr.Slider, {\"minimum\": 0.0, \"maximum\": 1.0, \"step\": 0.05, \"visible\": False}),\n    \"detailer_max_size\": OptionInfo(1.0, \"Max object size\", gr.Slider, {\"minimum\": 0.0, \"maximum\": 1.0, \"step\": 0.05, \"visible\": False}),\n    \"detailer_padding\": OptionInfo(20, \"Item padding\", gr.Slider, {\"minimum\": 0, \"maximum\": 100, \"step\": 1, \"visible\": False}),\n    \"detailer_blur\": OptionInfo(10, \"Item edge blur\", gr.Slider, {\"minimum\": 0, \"maximum\": 100, \"step\": 1, \"visible\": False}),\n    \"detailer_models\": OptionInfo(['face-yolo8n'], \"Detailer models\", gr.Dropdown, lambda: {\"multiselect\":True, \"choices\": list(yolo.list), \"visible\": False}),\n    \"detailer_args\": OptionInfo(\"\", \"Detailer args\", gr.Textbox, { \"visible\": False}),\n    \"detailer_merge\": OptionInfo(False, \"Merge multiple results from each detailer model\", gr.Checkbox, {\"visible\": False}),\n    \"detailer_sort\": OptionInfo(False, \"Sort detailer output by location\", gr.Checkbox, {\"visible\": False}),\n    \"detailer_save\": OptionInfo(False, \"Include detection results\", gr.Checkbox, {\"visible\": False}),\n    \"detailer_seg\": OptionInfo(False, \"Use segmentation\", gr.Checkbox, {\"visible\": False}),\n}))\n\n\nfrom modules.shared_legacy import get_legacy_options\noptions_templates.update(get_legacy_options())\nfrom modules.options_handler import Options\nconfig_filename = cmd_opts.config\nopts = Options(options_templates, restricted_opts, filename=config_filename)\ncmd_opts = cmd_args.settings_args(opts, cmd_opts)\nif cmd_opts.locale is not None:\n    opts.data['ui_locale'] = cmd_opts.locale\nif cmd_opts.use_xformers:\n    opts.data['cross_attention_optimization'] = 'xFormers'\nopts.data['uni_pc_lower_order_final'] = opts.schedulers_use_loworder # compatibility\nopts.data['uni_pc_order'] = max(2, opts.schedulers_solver_order) # compatibility\nlog.info(f'Engine: backend={backend} compute={devices.backend} device={devices.get_optimal_device_name()} attention=\"{opts.cross_attention_optimization}\" mode={devices.inference_context.__name__}')\n\nprofiler = None\nimport modules.styles\nprompt_styles = modules.styles.StyleDatabase(opts)\nreference_models = readfile(os.path.join('data', 'reference.json'), as_type=\"dict\") if opts.extra_network_reference_enable else {}\ncmd_opts.disable_extension_access = (cmd_opts.share or cmd_opts.listen or (cmd_opts.server_name or False)) and not cmd_opts.insecure\n\nlog.debug('Initializing: devices')\ndevices.args = cmd_opts\ndevices.opts = opts\ndevices.onnx = [opts.onnx_execution_provider]\ndevices.set_cuda_params()\nif opts.onnx_cpu_fallback and 'CPUExecutionProvider' not in devices.onnx:\n    devices.onnx.append('CPUExecutionProvider')\ndevice = devices.device\nparallel_processing_allowed = not cmd_opts.lowvram\nmem_mon = modules.memmon.MemUsageMonitor(\"MemMon\", devices.device)\nhistory = history.History()\nif devices.backend == \"directml\":\n    directml_do_hijack()\nfrom modules import sdnq # pylint: disable=unused-import # register to diffusers and transformers\nlog.debug('Quantization: registered=SDNQ')\n\ntry:\n    log.info(f'Device: {print_dict(devices.get_gpu_info())}')\nexcept Exception as ex:\n    log.error(f'Device: {ex}')\n\n\ndef restart_server(restart=True):\n    if demo is None:\n        return\n    log.critical('Server shutdown requested')\n    try:\n        sys.tracebacklimit = 0\n        stdout = io.StringIO()\n        stderr = io.StringIO()\n        with contextlib.redirect_stdout(stdout), contextlib.redirect_stdout(stderr):\n            demo.server.wants_restart = restart\n            demo.server.should_exit = True\n            demo.server.force_exit = True\n            demo.close(verbose=False)\n            demo.server.close()\n            demo.fns = []\n        time.sleep(1)\n        sys.tracebacklimit = 100\n        # os._exit(0)\n    except (Exception, BaseException) as err:\n        log.error(f'Server shutdown error: {err}')\n    if restart:\n        log.info('Server will restart')\n\n\ndef restore_defaults(restart=True):\n    if os.path.exists(cmd_opts.config):\n        log.info('Restoring server defaults')\n        os.remove(cmd_opts.config)\n    restart_server(restart)\n\n\n# startup def of shared.sd_model before its redefined in modeldata\nsd_model: DiffusionPipeline | None = None # dummy and overwritten by class\nsd_refiner: DiffusionPipeline | None = None # dummy and overwritten by class\nsd_model_type: str = '' # dummy and overwritten by class\nsd_refiner_type: str = '' # dummy and overwritten by class\nsd_loaded: bool = False # dummy and overwritten by class\n\nfrom modules.modeldata import Shared # pylint: disable=ungrouped-imports\nsys.modules[__name__].__class__ = Shared\n"
  },
  {
    "path": "modules/shared_defaults.py",
    "content": "from installer import log\nfrom modules import devices\n\n\ndef get_default_modes(cmd_opts, mem_stat):\n    default_offload_mode = \"none\"\n    default_diffusers_offload_min_gpu_memory = 0.2\n    default_diffusers_offload_max_gpu_memory = 0.6\n    default_diffusers_offload_always = ''\n    default_diffusers_offload_never = ''\n    gpu_memory = round(mem_stat['gpu']['total'] if \"gpu\" in mem_stat else 0)\n    if not (cmd_opts.lowvram or cmd_opts.medvram):\n        if \"gpu\" in mem_stat and gpu_memory != 0:\n            if gpu_memory <= 4:\n                cmd_opts.lowvram = True\n                default_offload_mode = \"balanced\"\n                default_diffusers_offload_min_gpu_memory = 0\n                log.info(f\"Device detect: memory={gpu_memory:.1f} default=balanced optimization=lowvram\")\n            elif gpu_memory <= 12:\n                cmd_opts.medvram = True # VAE Tiling and other stuff\n                default_offload_mode = \"balanced\"\n                default_diffusers_offload_min_gpu_memory = 0\n                default_diffusers_offload_always = ', '.join(['T5EncoderModel', 'UMT5EncoderModel'])\n                log.info(f\"Device detect: memory={gpu_memory:.1f} default=balanced optimization=medvram\")\n            elif gpu_memory >= 24:\n                default_offload_mode = \"balanced\"\n                default_diffusers_offload_max_gpu_memory = 0.8\n                default_diffusers_offload_always = ', '.join(['T5EncoderModel', 'UMT5EncoderModel'])\n                default_diffusers_offload_never = ', '.join(['CLIPTextModel', 'CLIPTextModelWithProjection', 'AutoencoderKL'])\n                log.info(f\"Device detect: memory={gpu_memory:.1f} default=balanced optimization=highvram\")\n            else:\n                default_offload_mode = \"balanced\"\n                log.info(f\"Device detect: memory={gpu_memory:.1f} default=balanced\")\n    elif cmd_opts.medvram:\n        default_offload_mode = \"balanced\"\n        default_diffusers_offload_min_gpu_memory = 0\n    elif cmd_opts.lowvram:\n        default_offload_mode = \"sequential\"\n        default_diffusers_offload_min_gpu_memory = 0\n\n    default_cross_attention = \"Scaled-Dot-Product\"\n\n    default_sdp_choices = ['Flash', 'Memory', 'Math']\n    default_sdp_options = ['Flash', 'Memory', 'Math']\n\n    default_sdp_override_choices = ['Dynamic attention', 'Flex attention', 'Flash attention', 'Sage attention']\n    default_sdp_override_options = []\n\n    if devices.backend == \"zluda\":\n        default_sdp_options = ['Math']\n        default_sdp_override_options = ['Dynamic attention']\n        default_sdp_override_choices.append('Triton Flash attention')\n    elif devices.backend == \"rocm\":\n        default_sdp_override_choices.append('Triton Flash attention')\n        agent = devices.get_hip_agent()\n        if agent.gfx_version < 0x1100:\n            default_sdp_override_options = ['Dynamic attention'] # only RDNA2 and older GPUs needs this\n    elif devices.backend in {\"directml\", \"cpu\", \"mps\"}:\n        default_sdp_override_options = ['Dynamic attention']\n\n    return (\n        default_offload_mode,\n        default_diffusers_offload_min_gpu_memory,\n        default_diffusers_offload_max_gpu_memory,\n        default_cross_attention,\n        default_sdp_options,\n        default_sdp_choices,\n        default_sdp_override_options,\n        default_sdp_override_choices,\n        default_diffusers_offload_always,\n        default_diffusers_offload_never,\n    )\n"
  },
  {
    "path": "modules/shared_helpers.py",
    "content": "import os\nfrom types import SimpleNamespace\nfrom modules import paths\nfrom installer import log\n\n\ndir_timestamps = {}\ndir_cache = {}\n\n\ndef listdir(path):\n    if not os.path.exists(path):\n        return []\n    mtime = os.path.getmtime(path)\n    if path in dir_timestamps and mtime == dir_timestamps[path]:\n        return dir_cache[path]\n    else:\n        dir_cache[path] = [os.path.join(path, f) for f in os.listdir(path)]\n        dir_timestamps[path] = mtime\n        return dir_cache[path]\n\n\ndef walk_files(path, allowed_extensions=None):\n    if not os.path.exists(path):\n        return\n    if allowed_extensions is not None:\n        allowed_extensions = set(allowed_extensions)\n    for root, _dirs, files in os.walk(path, followlinks=True):\n        for filename in files:\n            if allowed_extensions is not None:\n                _, ext = os.path.splitext(filename)\n                if ext not in allowed_extensions:\n                    continue\n            yield os.path.join(root, filename)\n\n\ndef html_path(filename):\n    return os.path.join(paths.script_path, \"html\", filename)\n\n\ndef html(filename):\n    path = html_path(filename)\n    if os.path.exists(path):\n        with open(path, encoding=\"utf8\") as file:\n            return file.read()\n    return \"\"\n\n\ndef req(url_addr, headers = None, **kwargs):\n    import requests\n    if headers is None:\n        headers = { 'Content-type': 'application/json' }\n    try:\n        res = requests.get(url_addr, timeout=30, headers=headers, verify=False, allow_redirects=True, **kwargs)\n    except Exception as err:\n        log.error(f'HTTP request error: url={url_addr} {err}')\n        res = { 'status_code': 500, 'text': f'HTTP request error: url={url_addr} {err}' }\n        res = SimpleNamespace(**res)\n    return res\n\n\nclass TotalTQDM: # compatibility with previous global-tqdm\n    # import tqdm\n    def __init__(self):\n        pass\n    def reset(self):\n        pass\n    def update(self):\n        pass\n    def updateTotal(self, new_total):\n        pass\n    def clear(self):\n        pass\ntotal_tqdm = TotalTQDM()\n"
  },
  {
    "path": "modules/shared_items.py",
    "content": "import diffusers\n\n\npipelines = {\n    # note: not all pipelines can be used manually as they require prior pipeline next to decoder pipeline\n    'Autodetect': None,\n    'Custom Diffusers Pipeline': getattr(diffusers, 'DiffusionPipeline', None),\n\n    # standard pipelines\n    'Diffusion': getattr(diffusers, 'DiffusionPipeline', None),\n    'Stable Diffusion': getattr(diffusers, 'StableDiffusionPipeline', None),\n    'Stable Diffusion Inpaint': getattr(diffusers, 'StableDiffusionInpaintPipeline', None),\n    'Stable Diffusion Instruct': getattr(diffusers, 'StableDiffusionInstructPix2PixPipeline', None),\n    'Stable Diffusion 1.5': getattr(diffusers, 'StableDiffusionPipeline', None),\n    'Stable Diffusion 2.x': getattr(diffusers, 'StableDiffusionPipeline', None),\n    'Stable Diffusion Upscale': getattr(diffusers, 'StableDiffusionUpscalePipeline', None),\n    'Stable Diffusion XL': getattr(diffusers, 'StableDiffusionXLPipeline', None),\n    'Stable Diffusion XL Inpaint': getattr(diffusers, 'StableDiffusionXLInpaintPipeline', None),\n    'Stable Diffusion XL Instruct': getattr(diffusers, 'StableDiffusionXLInstructPix2PixPipeline', None),\n    'Stable Diffusion XL Refiner': getattr(diffusers, 'StableDiffusionXLImg2ImgPipeline', None),\n    'Stable Cascade': getattr(diffusers, 'StableCascadeCombinedPipeline', None),\n    'Stable Diffusion 3': getattr(diffusers, 'StableDiffusion3Pipeline', None),\n    'Latent Consistency Model': getattr(diffusers, 'LatentConsistencyModelPipeline', None),\n    'PixArt Alpha': getattr(diffusers, 'PixArtAlphaPipeline', None),\n    'PixArt Sigma': getattr(diffusers, 'PixArtSigmaPipeline', None),\n    'HunyuanDiT': getattr(diffusers, 'HunyuanDiTPipeline', None),\n    'DeepFloyd IF': getattr(diffusers, 'IFPipeline', None),\n    'FLUX': getattr(diffusers, 'FluxPipeline', None),\n    'FLEX': getattr(diffusers, 'AutoPipelineForText2Image', None),\n    'Chroma': getattr(diffusers, 'ChromaPipeline', None),\n    'Sana': getattr(diffusers, 'SanaPipeline', None),\n    'Lumina-Next': getattr(diffusers, 'LuminaText2ImgPipeline', None),\n    'Lumina 2': getattr(diffusers, 'Lumina2Pipeline', None),\n    'AuraFlow': getattr(diffusers, 'AuraFlowPipeline', None),\n    'Kandinsky 2.1': getattr(diffusers, 'KandinskyCombinedPipeline', None),\n    'Kandinsky 2.2': getattr(diffusers, 'KandinskyV22CombinedPipeline', None),\n    'Kandinsky 3.0': getattr(diffusers, 'Kandinsky3Pipeline', None),\n    'Wuerstchen': getattr(diffusers, 'WuerstchenCombinedPipeline', None),\n    'Kolors': getattr(diffusers, 'KolorsPipeline', None),\n    'CogView 3': getattr(diffusers, 'CogView3PlusPipeline', None),\n    'CogView 4': getattr(diffusers, 'CogView4Pipeline', None),\n    'UniDiffuser': getattr(diffusers, 'UniDiffuserPipeline', None),\n    'Amused': getattr(diffusers, 'AmusedPipeline', None),\n    'HiDream': getattr(diffusers, 'HiDreamImagePipeline', None),\n    'OmniGen': getattr(diffusers, 'OmniGenPipeline', None),\n    'Cosmos': getattr(diffusers, 'Cosmos2TextToImagePipeline', None),\n    'WanAI': getattr(diffusers, 'WanPipeline', None),\n    'Qwen': getattr(diffusers, 'QwenImagePipeline', None),\n    'HunyuanImage': getattr(diffusers, 'HunyuanImagePipeline', None),\n    'Z-Image': getattr(diffusers, 'ZImagePipeline', None),\n    'FLUX2': getattr(diffusers, 'Flux2Pipeline', None),\n    'FLUX2 Klein': getattr(diffusers, 'Flux2KleinPipeline', None),\n    'LongCat': getattr(diffusers, 'LongCatImagePipeline', None),\n    'GLM-Image': getattr(diffusers, 'GlmImagePipeline', None),\n    # dynamically imported and redefined later\n    'Meissonic': getattr(diffusers, 'DiffusionPipeline', None),\n    'Monetico': getattr(diffusers, 'DiffusionPipeline', None),\n    'OmniGen2': getattr(diffusers, 'DiffusionPipeline', None),\n    'InstaFlow': getattr(diffusers, 'DiffusionPipeline', None),\n    'SegMoE': getattr(diffusers, 'DiffusionPipeline', None),\n    'FLite': getattr(diffusers, 'DiffusionPipeline', None),\n    'Bria': getattr(diffusers, 'DiffusionPipeline', None),\n    'hdm': getattr(diffusers, 'DiffusionPipeline', None),\n    'X-Omni': getattr(diffusers, 'DiffusionPipeline', None),\n    'HunyuanImage3': getattr(diffusers, 'DiffusionPipeline', None),\n    'ChronoEdit': getattr(diffusers, 'DiffusionPipeline', None),\n    'Anima': getattr(diffusers, 'DiffusionPipeline', None),\n}\n\n\ntry:\n    from modules.onnx_impl import initialize_onnx\n    initialize_onnx()\n    onnx_pipelines = {\n        'ONNX Stable Diffusion': getattr(diffusers, 'OnnxStableDiffusionPipeline', None),\n        'ONNX Stable Diffusion Img2Img': getattr(diffusers, 'OnnxStableDiffusionImg2ImgPipeline', None),\n        'ONNX Stable Diffusion Inpaint': getattr(diffusers, 'OnnxStableDiffusionInpaintPipeline', None),\n        'ONNX Stable Diffusion Upscale': getattr(diffusers, 'OnnxStableDiffusionUpscalePipeline', None),\n    }\nexcept Exception as e:\n    from installer import log\n    log.error(f'ONNX initialization error: {e}')\n    onnx_pipelines = {}\n\n\ndef postprocessing_scripts():\n    import modules.scripts_manager\n    return modules.scripts_manager.scripts_postproc.scripts\n\n\ndef sd_vae_items():\n    import modules.sd_vae\n    return [\"Automatic\", \"Default\"] + list(modules.sd_vae.vae_dict)\n\n\ndef sd_taesd_items():\n    import modules.vae.sd_vae_taesd\n    return list(modules.vae.sd_vae_taesd.TAESD_MODELS.keys()) + list(modules.vae.sd_vae_taesd.CQYAN_MODELS.keys())\n\ndef refresh_vae_list():\n    import modules.sd_vae\n    modules.sd_vae.refresh_vae_list()\n\n\ndef sd_unet_items():\n    import modules.sd_unet\n    return ['Default'] + list(modules.sd_unet.unet_dict)\n\n\ndef refresh_unet_list():\n    import modules.sd_unet\n    modules.sd_unet.refresh_unet_list()\n\n\ndef sd_te_items():\n    import modules.model_te\n    predefined = ['Default']\n    return predefined + list(modules.model_te.te_dict)\n\n\ndef refresh_te_list():\n    import modules.model_te\n    modules.model_te.refresh_te_list()\n\n\ndef list_crossattention():\n    return [\n        \"Disabled\",\n        \"Scaled-Dot-Product\",\n        \"xFormers\",\n        \"Batch matrix-matrix\",\n        \"Dynamic Attention BMM\"\n    ]\n\ndef get_pipelines():\n    if hasattr(diffusers, 'OnnxStableDiffusionPipeline') and 'ONNX Stable Diffusion' not in list(pipelines):\n        pipelines.update(onnx_pipelines)\n    for k, v in pipelines.items():\n        if k != 'Autodetect' and v is None:\n            from installer import log # pylint: disable=redefined-outer-name\n            log.error(f'Model=\"{k}\" diffusers={diffusers.__version__} path={diffusers.__file__} pipeline not available')\n    return pipelines\n\n\ndef get_repo(model):\n    if model == 'StableDiffusionPipeline' or model == 'Stable Diffusion 1.5':\n        return 'stable-diffusion-v1-5/stable-diffusion-v1-5'\n    elif model == 'StableDiffusionXLPipeline' or model == 'Stable Diffusion XL':\n        return 'stabilityai/stable-diffusion-xl-base-1.0'\n    elif model == 'StableDiffusion3Pipeline' or model == 'Stable Diffusion 3':\n        return 'stabilityai/stable-diffusion-3.5-medium'\n    elif model == 'FluxPipeline' or model == 'FLUX':\n        return 'black-forest-labs/FLUX.1-dev'\n    else:\n        return None\n"
  },
  {
    "path": "modules/shared_legacy.py",
    "content": "import os\nimport gradio as gr\nfrom modules import paths\nfrom modules.options import OptionInfo, options_section\n\n\nclass LegacyOption(OptionInfo):\n    def __init__(self, *args, **kwargs):\n        super().__init__(*args, **kwargs)\n\n\nlegacy_options = options_section(('legacy_options', \"Legacy options\"), {\n    \"ldsr_models_path\": LegacyOption(os.path.join(paths.models_path, 'LDSR'), \"LDSR Path\", gr.Textbox, { \"visible\": False}),\n    \"interrogate_clip_skip_categories\": LegacyOption([\"artists\", \"movements\", \"flavors\"], \"CLiP: skip categories\", gr.CheckboxGroup, {\"choices\": [], \"visible\":False}),\n    \"lora_legacy\": LegacyOption(False, \"LoRA load using legacy method\", gr.Checkbox, {\"visible\": False}),\n    \"lora_preferred_name\": LegacyOption(\"filename\", \"LoRA preferred name\", gr.Radio, {\"choices\": [\"filename\", \"alias\"], \"visible\": False}),\n    \"img2img_extra_noise\": LegacyOption(0.0, \"Extra noise multiplier for img2img\", gr.Slider, {\"minimum\": 0.0, \"maximum\": 1.0, \"step\": 0.01, \"visible\": False}),\n    \"disable_weights_auto_swap\": LegacyOption(True, \"Do not change selected model when reading generation parameters\", gr.Checkbox, {\"visible\": False}),\n    \"sub_quad_q_chunk_size\": LegacyOption(512, \"Attention query chunk size\", gr.Slider, {\"minimum\": 16, \"maximum\": 8192, \"step\": 8, \"visible\": False}),\n    \"sub_quad_kv_chunk_size\": LegacyOption(512, \"Attention kv chunk size\", gr.Slider, {\"minimum\": 0, \"maximum\": 8192, \"step\": 8, \"visible\": False}),\n    \"sub_quad_chunk_threshold\": LegacyOption(80, \"Attention chunking threshold\", gr.Slider, {\"minimum\": 0, \"maximum\": 100, \"step\": 1, \"visible\": False}),\n    \"upcast_attn\": LegacyOption(False, \"Upcast attention layer\", gr.Checkbox, {\"visible\": False}),\n    \"cuda_cast_unet\": LegacyOption(False, \"Fixed UNet precision\", gr.Checkbox, {\"visible\": False}),\n    \"comma_padding_backtrack\": LegacyOption(20, \"Prompt padding\", gr.Slider, {\"minimum\": 0, \"maximum\": 74, \"step\": 1, \"visible\": False}),\n    \"sd_textencoder_cache\": LegacyOption(True, \"Cache text encoder results\", gr.Checkbox, {\"visible\": False}),\n    \"rollback_vae\": LegacyOption(False, \"Attempt VAE roll back for NaN values\", gr.Checkbox, {\"visible\": False}),\n    \"sd_vae_sliced_encode\": LegacyOption(False, \"VAE sliced encode\", gr.Checkbox, {\"visible\": False}),\n    \"nan_skip\": LegacyOption(False, \"Skip Generation if NaN found in latents\", gr.Checkbox, {\"visible\": False}),\n    \"sd_model_dict\": LegacyOption('None', \"Use separate base dict\", gr.Dropdown, lambda: {\"choices\": ['None'], \"visible\": False}),\n    \"diffusers_move_base\": LegacyOption(False, \"Move base model to CPU when using refiner\", gr.Checkbox, {\"visible\": False }),\n    \"diffusers_move_unet\": LegacyOption(False, \"Move base model to CPU when using VAE\", gr.Checkbox, {\"visible\": False }),\n    \"diffusers_move_refiner\": LegacyOption(False, \"Move refiner model to CPU when not in use\", gr.Checkbox, {\"visible\": False }),\n    \"diffusers_extract_ema\": LegacyOption(False, \"Use model EMA weights when possible\", gr.Checkbox, {\"visible\": False }),\n    \"batch_cond_uncond\": LegacyOption(True, \"Do conditional and unconditional denoising in one batch\", gr.Checkbox, {\"visible\": False}),\n    \"CLIP_stop_at_last_layers\": LegacyOption(1, \"Clip skip\", gr.Slider, {\"minimum\": 1, \"maximum\": 8, \"step\": 1, \"visible\": False}),\n    \"dataset_filename_join_string\": LegacyOption(\" \", \"Filename join string\", gr.Textbox, { \"visible\": False }),\n    \"dataset_filename_word_regex\": LegacyOption(\"\", \"Filename word regex\", gr.Textbox, { \"visible\": False }),\n    \"diffusers_force_zeros\": LegacyOption(False, \"Force zeros for prompts when empty\", gr.Checkbox, {\"visible\": False}),\n    \"disable_nan_check\": LegacyOption(True, \"Disable NaN check\", gr.Checkbox, {\"visible\": False}),\n    \"embeddings_templates_dir\": LegacyOption(\"\", \"Embeddings train templates directory\", gr.Textbox, { \"visible\": False }),\n    \"extra_networks_card_fit\": LegacyOption(\"cover\", \"UI image contain method\", gr.Radio, {\"choices\": [\"contain\", \"cover\", \"fill\"], \"visible\": False}),\n    \"grid_extended_filename\": LegacyOption(True, \"Add extended info to filename when saving grid\", gr.Checkbox, {\"visible\": False}),\n    \"grid_save_to_dirs\": LegacyOption(False, \"Save grids to a subdirectory\", gr.Checkbox, {\"visible\": False}),\n    \"hypernetwork_enabled\": LegacyOption(False, \"Enable Hypernetwork support\", gr.Checkbox, {\"visible\": False}),\n    \"img2img_fix_steps\": LegacyOption(False, \"For image processing do exact number of steps as specified\", gr.Checkbox, { \"visible\": False }),\n    \"interrogate_clip_dict_limit\": LegacyOption(2048, \"CLIP: maximum number of lines in text file\", gr.Slider, { \"visible\": False }),\n    \"keyedit_delimiters\": LegacyOption(r\".,\\/!?%^*;:{}=`~()\", \"Ctrl+up/down word delimiters\", gr.Textbox, { \"visible\": False }),\n    \"keyedit_precision_attention\": LegacyOption(0.1, \"Ctrl+up/down precision when editing (attention:1.1)\", gr.Slider, {\"minimum\": 0.01, \"maximum\": 0.2, \"step\": 0.001, \"visible\": False}),\n    \"keyedit_precision_extra\": LegacyOption(0.05, \"Ctrl+up/down precision when editing <extra networks:0.9>\", gr.Slider, {\"minimum\": 0.01, \"maximum\": 0.2, \"step\": 0.001, \"visible\": False}),\n    \"live_preview_content\": LegacyOption(\"Combined\", \"Live preview subject\", gr.Radio, {\"choices\": [\"Combined\", \"Prompt\", \"Negative prompt\"], \"visible\": False}),\n    \"live_previews_enable\": LegacyOption(True, \"Show live previews\", gr.Checkbox, {\"visible\": False}),\n    \"lora_functional\": LegacyOption(False, \"Use Kohya method for handling multiple LoRA\", gr.Checkbox, { \"visible\": False }),\n    \"lyco_dir\": LegacyOption(os.path.join(paths.models_path, 'LyCORIS'), \"Folder with LyCORIS network(s)\", gr.Text, {\"visible\": False}),\n    \"model_reuse_dict\": LegacyOption(False, \"Reuse loaded model dictionary\", gr.Checkbox, {\"visible\": False}),\n    \"pad_cond_uncond\": LegacyOption(True, \"Pad prompt and negative prompt to be same length\", gr.Checkbox, {\"visible\": False}),\n    \"pin_memory\": LegacyOption(True, \"Pin training dataset to memory\", gr.Checkbox, { \"visible\": False }),\n    \"save_optimizer_state\": LegacyOption(False, \"Save resumable optimizer state when training\", gr.Checkbox, { \"visible\": False }),\n    \"save_training_settings_to_txt\": LegacyOption(True, \"Save training settings to a text file\", gr.Checkbox, { \"visible\": False }),\n    \"sd_disable_ckpt\": LegacyOption(False, \"Disallow models in ckpt format\", gr.Checkbox, {\"visible\": False}),\n    \"sd_lora\": LegacyOption(\"\", \"Add LoRA to prompt\", gr.Textbox, {\"visible\": False}),\n    \"sd_vae_checkpoint_cache\": LegacyOption(0, \"Cached VAEs\", gr.Slider, {\"minimum\": 0, \"maximum\": 10, \"step\": 1, \"visible\": False}),\n    \"show_progress_grid\": LegacyOption(True, \"Show previews as a grid\", gr.Checkbox, {\"visible\": False}),\n    \"show_progressbar\": LegacyOption(True, \"Show progressbar\", gr.Checkbox, {\"visible\": False}),\n    \"training_enable_tensorboard\": LegacyOption(False, \"Enable tensorboard logging\", gr.Checkbox, { \"visible\": False }),\n    \"training_image_repeats_per_epoch\": LegacyOption(1, \"Image repeats per epoch\", gr.Slider, {\"minimum\": 1, \"maximum\": 100, \"step\": 1, \"visible\": False }),\n    \"training_tensorboard_flush_every\": LegacyOption(120, \"Tensorboard flush period\", gr.Number, { \"visible\": False }),\n    \"training_tensorboard_save_images\": LegacyOption(False, \"Save generated images within tensorboard\", gr.Checkbox, { \"visible\": False }),\n    \"training_write_csv_every\": LegacyOption(0, \"Save loss CSV file every n steps\", gr.Number, { \"visible\": False }),\n    \"ui_scripts_reorder\": LegacyOption(\"\", \"UI scripts order\", gr.Textbox, { \"visible\": False }),\n    \"unload_models_when_training\": LegacyOption(False, \"Move VAE and CLIP to RAM when training\", gr.Checkbox, { \"visible\": False }),\n    \"upscaler_for_img2img\": LegacyOption(\"None\", \"Default upscaler for image resize operations\", gr.Dropdown, lambda: {\"choices\": [], \"visible\": False}),\n    \"use_save_to_dirs_for_ui\": LegacyOption(False, \"Save images to a subdirectory when using Save button\", gr.Checkbox, {\"visible\": False}),\n    \"use_upscaler_name_as_suffix\": LegacyOption(True, \"Use upscaler as suffix\", gr.Checkbox, {\"visible\": False}),\n})\n\n\ndef get_legacy_options():\n    return legacy_options\n"
  },
  {
    "path": "modules/shared_state.py",
    "content": "import os\nimport re\nimport sys\nimport uuid\nimport time\nimport datetime\nfrom modules.errors import log, display\n\n\ndebug_output = os.environ.get('SD_STATE_DEBUG', None)\ndebug_history = debug_output or os.environ.get('SD_STATE_HISTORY', None)\n\n\nclass State:\n    state_history = []\n    job_history = 0\n    task_history = 0\n    image_history = 0\n    latent_history = 0\n    id = 0\n    results = []\n    skipped = False\n    interrupted = False\n    paused = False\n    job = \"\"\n    job_no = 0\n    job_count = 0\n    batch_no = 0\n    batch_count = 0\n    frame_count = 0\n    total_jobs = 0\n    job_timestamp = '0'\n    _sampling_step = 0\n    sampling_steps = 0\n    current_latent = None\n    current_noise_pred = None\n    current_sigma = None\n    current_sigma_next = None\n    current_image = None\n    current_image_sampling_step = 0\n    id_live_preview = 0\n    textinfo = None\n    prediction_type = \"epsilon\"\n    api = False\n    disable_preview = False\n    preview_job = -1\n    time_start = None\n    duration = None\n    need_restart = False\n    server_start = time.time()\n    oom = False\n\n    def __init__(self):\n        log.debug(f'State initialized: id={id(self)}')\n\n    def __str__(self) -> str:\n        status = ' '\n        status += 'skipped ' if self.skipped else ''\n        status += 'interrupted ' if self.interrupted else ''\n        status += 'paused ' if self.paused else ''\n        status += 'restart ' if self.need_restart else ''\n        status += 'oom ' if self.oom else ''\n        status += 'api ' if self.api else ''\n        fn = f'{sys._getframe(3).f_code.co_name}:{sys._getframe(2).f_code.co_name}' # pylint: disable=protected-access\n        return f'State: ts={self.job_timestamp} job={self.job} jobs={self.job_no+1}/{self.job_count}/{self.total_jobs} step={self.sampling_step}/{self.sampling_steps} preview={self.preview_job}/{self.id_live_preview}/{self.current_image_sampling_step} status=\"{status.strip()}\" fn={fn}'\n\n    @property\n    def sampling_step(self):\n        return self._sampling_step\n\n    @sampling_step.setter\n    def sampling_step(self, value):\n        self._sampling_step = value\n        if debug_output:\n            log.trace(f'State step: {self}')\n\n    def skip(self):\n        log.debug('State: skip requested')\n        self.skipped = True\n\n    def interrupt(self):\n        log.debug('State: interrupt requested')\n        self.interrupted = True\n\n    def pause(self):\n        self.paused = not self.paused\n        log.debug(f'State: {\"pause\" if self.paused else \"continue\"} requested')\n\n    def nextjob(self):\n        import modules.devices\n        self.do_set_current_image()\n        self.job_no += 1\n        # self.sampling_step = 0\n        self.current_image_sampling_step = 0\n        if debug_output:\n            log.trace(f'State next: {self}')\n        modules.devices.torch_gc()\n\n    def dict(self):\n        obj = {\n            \"skipped\": self.skipped,\n            \"interrupted\": self.interrupted,\n            \"job\": self.job,\n            \"job_count\": self.job_count,\n            \"job_timestamp\": self.job_timestamp,\n            \"job_no\": self.job_no,\n            \"sampling_step\": self.sampling_step,\n            \"sampling_steps\": self.sampling_steps,\n        }\n        return obj\n\n    def status(self):\n        from modules import progress\n        from modules.api import models\n        res = models.ResStatus(\n            task=self.job,\n            current=progress.current_task or '',\n            id=self.id,\n            job=max(self.job_no, 0),\n            jobs=max(self.frame_count, self.job_count, self.job_no),\n            total=self.total_jobs,\n            timestamp=self.job_timestamp if self.job != '' else None,\n            step=self.sampling_step,\n            steps=self.sampling_steps,\n            queued=len(progress.pending_tasks),\n            status='unknown',\n            uptime = round(time.time() - self.server_start)\n        )\n        res.step = res.steps * res.job + res.step\n        res.steps = res.steps * res.jobs\n        res.progress = round(min(1, abs(res.step / res.steps) if res.steps > 0 else 0), 2)\n        res.elapsed = round(time.time() - self.time_start, 2) if self.time_start is not None else None\n        predicted = round(res.elapsed / res.progress, 2) if res.progress > 0 and res.elapsed is not None else None\n        res.eta = round(predicted - res.elapsed, 2) if predicted is not None else None\n        if self.paused:\n            res.status = 'paused'\n        elif self.interrupted:\n            res.status = 'interrupted'\n        elif self.skipped:\n            res.status = 'skipped'\n        else:\n            res.status = 'running' if self.job != '' else 'idle'\n        return res\n\n    def find(self, task_id:str):\n        for job in reversed(self.state_history):\n            if job['id'] == task_id:\n                return job\n        return None\n\n    def history(self, op:str, task_id:str=None, results:list=[]):\n        job = {\n            'id': task_id or self.id,\n            'job': self.job.lower(),\n            'op': op.lower(),\n            'timestamp': self.time_start,\n            'duration': self.duration,\n            'outputs': results,\n         }\n        self.state_history.append(job)\n        l = len(self.state_history)\n        if l > 10000:\n            del self.state_history[0]\n        if debug_history:\n            log.trace(f'State history: jobs={l} {job}')\n\n    def outputs(self, results):\n        if isinstance(results, list):\n            self.results += results\n        else:\n            self.results.append(results)\n        if len(self.results) > 0:\n            self.history('output', self.id, results=self.results)\n\n    def get_id(self, task_id:str=None):\n        if task_id is None or task_id == 0:\n            task_id = uuid.uuid4().hex[:15]\n        if not isinstance(task_id, str):\n            task_id = str(task_id)\n        match = re.search(r'\\((.*?)\\)', task_id)\n        return match.group(1) if match else task_id\n\n    def clear(self):\n        self.id = ''\n        self.job = ''\n        self.job_count = 0\n        self.job_no = 0\n        self.frame_count = 0\n        self.preview_job = -1\n        self.duration = None\n        self.paused = False\n        self.results = []\n\n    def begin(self, title=\"\", task_id=0, api=None):\n        import modules.devices\n        self.clear()\n        self.interrupted = self.interrupted if title.startswith('Save') else False\n        self.skipped = False\n        self.job_history += 1\n        self.total_jobs += 1\n        self.current_image = None\n        self.current_image_sampling_step = 0\n        self.current_latent = None\n        self.current_noise_pred = None\n        self.current_sigma = None\n        self.current_sigma_next = None\n        self.id_live_preview = 0\n        self.id = self.get_id(task_id)\n        self.job = title\n        self.job_count = 1 # cannot be less than 1 on new job\n        self.batch_no = 0\n        self.batch_count = 0\n        self.job_timestamp = datetime.datetime.now().strftime(\"%Y%m%d%H%M%S\")\n        self._sampling_step = 0\n        self.sampling_steps = 0\n        self.textinfo = None\n        self.prediction_type = \"epsilon\"\n        self.api = api or self.api\n        self.time_start = time.time()\n        self.history('begin', self.id)\n        if debug_output:\n            log.trace(f'State begin: {self}')\n        modules.devices.torch_gc()\n        return self.id\n\n    def end(self, task_id=None):\n        import modules.devices\n        if debug_output:\n            log.trace(f'State end: {self}')\n        if task_id is not None:\n            prev_job = self.find(task_id)\n            if prev_job is not None:\n                self.id = prev_job['id']\n                self.job = prev_job['job']\n                self.duration = round(time.time() - prev_job['timestamp'], 3) if prev_job['timestamp'] is not None else None\n        self.time_start = time.time()\n        self.history('end', task_id or self.id)\n        self.clear()\n        modules.devices.torch_gc()\n\n    def step(self, step:int=1):\n        self.sampling_step += step\n\n    def update(self, job:str, steps:int=0, jobs:int=0):\n        self.task_history += 1\n        # self._sampling_step = 0\n        if job == 'Ignore':\n            return\n        elif job == 'Grid':\n            self.sampling_steps = steps\n            self.job_count = jobs\n        else:\n            self.sampling_steps += (steps * jobs)\n            self.job_count += jobs\n        # self.job = job\n        if debug_output:\n            log.trace(f'State update: {self} steps={steps} jobs={jobs}')\n\n    def set_current_image(self):\n        if self.job == 'VAE' or self.job == 'Upscale': # avoid generating preview while vae is running\n            return False\n        from modules.shared import opts, cmd_opts\n        if cmd_opts.lowvram or self.api or (opts.show_progress_every_n_steps <= 0):\n            return False\n        if (not self.disable_preview) and (abs(self.sampling_step - self.current_image_sampling_step) >= opts.show_progress_every_n_steps):\n            return self.do_set_current_image()\n        return False\n\n    def do_set_current_image(self):\n        if (self.current_latent is None) or self.disable_preview or (self.preview_job == self.job_no):\n            return False\n        from modules import shared, sd_samplers\n        self.preview_job = self.job_no\n        try:\n            sample = self.current_latent\n            self.current_image_sampling_step = self.sampling_step\n            try:\n                if self.current_noise_pred is not None and self.current_sigma is not None and self.current_sigma_next is not None:\n                    original_sample = sample - (self.current_noise_pred * (self.current_sigma_next-self.current_sigma))\n                    if self.prediction_type in {\"epsilon\", \"flow_prediction\"}:\n                        sample = original_sample - (self.current_noise_pred * self.current_sigma)\n                    elif self.prediction_type == \"v_prediction\":\n                        sample = self.current_noise_pred * (-self.current_sigma / (self.current_sigma**2 + 1) ** 0.5) + (original_sample / (self.current_sigma**2 + 1)) # pylint: disable=invalid-unary-operand-type\n            except Exception:\n                pass # ignore sigma errors\n            image = sd_samplers.samples_to_image_grid(sample) if shared.opts.show_progress_grid else sd_samplers.sample_to_image(sample)\n            self.assign_current_image(image)\n            self.preview_job = -1\n            return True\n        except Exception as e:\n            self.preview_job = -1\n            log.error(f'State image: last={self.id_live_preview} step={self.sampling_step} {e}')\n            display(e, 'State image')\n            return False\n\n    def assign_current_image(self, image):\n        self.current_image = image\n        self.id_live_preview += 1\n"
  },
  {
    "path": "modules/styles.py",
    "content": "from __future__ import annotations\nimport re\nimport os\nimport csv\nimport json\nimport time\nimport random\nfrom typing import Dict\nfrom modules import files_cache, shared, infotext, sd_models, sd_vae\n\n\ndebug_enabled = os.environ.get('SD_STYLES_DEBUG', None) is not None\n\n\nclass Style():\n    def __init__(self, name: str, desc: str = \"\", prompt: str = \"\", negative_prompt: str = \"\", extra: str = \"\", wildcards: str = \"\", filename: str = \"\", preview: str = \"\", mtime: float = 0):\n        self.name = name\n        self.description = desc\n        self.prompt = prompt\n        self.negative_prompt = negative_prompt\n        self.extra = extra\n        self.wildcards = wildcards\n        self.filename = filename\n        self.preview = preview\n        self.mtime = mtime\n\n\ndef merge_prompts(style_prompt: str, prompt: str) -> str:\n    if \"{prompt}\" in style_prompt:\n        res = style_prompt.replace(\"{prompt}\", prompt)\n    else:\n        original_prompt = prompt.strip()\n        style_prompt = style_prompt.strip()\n        parts = filter(None, (original_prompt, style_prompt))\n        if original_prompt.endswith(\",\"):\n            res = \" \".join(parts)\n        else:\n            res = \", \".join(parts)\n    return res\n\n\ndef apply_styles_to_prompt(prompt, styles):\n    for style in styles:\n        prompt = merge_prompts(style, prompt)\n    return prompt\n\n\ndef select_from_weighted_list(inner: str) -> str:\n    if not inner:\n        return ''\n\n    parts = [p.strip() for p in inner.split('|') if p.strip()]\n    weighted: Dict[str, float] = {}\n    unweighted = []\n\n    for p in parts:\n        is_list = (p.startswith('(') and p.endswith(')')) or \\\n                  (p.startswith('[') and p.endswith(']')) or \\\n                  (p.startswith('{') and p.endswith('}')) or \\\n                  (p.startswith('<') and p.endswith('>'))\n        if (':' in p) and not is_list:\n            name, wstr = p.split(':', 1)\n            name = name.strip()\n            try:\n                w = float(wstr.strip())\n            except Exception:\n                w = 0.0\n            w = max(0.0, w)\n            weighted[name] = weighted.get(name, 0.0) + w\n        else:\n            unweighted.append(p)\n\n    W = sum(weighted.values())\n    U = len(unweighted)\n\n    if U == 0: # only weighted options\n        keys = list(weighted.keys())\n        if not keys:\n            return ''\n        if W == 0.0:\n            return ''\n        if abs(W - 1.0) > 1e-12:\n            weighted = {k: v / W for k, v in weighted.items()}\n    else: # mix of weighted and unweighted\n        if W > 1.0: # weighted probabilities consume whole mass -> normalize them, unweighted get 0\n            for name in unweighted:\n                weighted[name] = weighted.get(name, 0.0) + 1.0\n            total_before = sum(weighted.values())\n            if total_before > 0.0:\n                weighted = {k: v / total_before for k, v in weighted.items()}\n        else:\n            remaining = 1.0 - W\n            per = remaining / U if U > 0 else 0.0\n            for name in unweighted:\n                weighted[name] = weighted.get(name, 0.0) + per\n\n    items = list(weighted.items())\n    if not items:\n        return ''\n\n    total = sum(v for _, v in items)\n    if total <= 0.0:\n        return items[0][0]\n\n    names, weights = zip(*items)\n    return random.choices(names, weights=weights, k=1)[0]\n\n\ndef apply_curly_braces_to_prompt(prompt, seed=-1):\n    # unweighted: woman with {white|green|{purple|yellow}} highlights and {red|blue} dress\n    # weighted: woman with {white:0.6|green:0.2|{purple|yellow}} highlights and {red:.6|blue:.4} dress\n    if not isinstance(prompt, str) or len(prompt) == 0:\n        return prompt\n    old_state = None\n    if seed > 0:\n        old_state = random.getstate()\n        random.seed(seed)\n    try:\n        pattern = re.compile(r'\\{([^{}]*)\\}', re.DOTALL) # innermost braces\n        while True:\n            m = pattern.search(prompt)\n            if not m:\n                break\n            inner = m.group(1)\n            choice = select_from_weighted_list(inner)\n            prompt = prompt[:m.start()] + choice + prompt[m.end():] # replace this specific span (slice-based) to avoid accidental other replacements\n    finally:\n        if old_state is not None:\n            random.setstate(old_state)\n    return prompt\n\n\ndef apply_file_wildcards(prompt, replaced = [], not_found = [], recursion=0, seed=-1):\n    def check_wildcard_files(prompt, wildcard, files, file_only=True):\n        trimmed = wildcard.replace('\\\\', os.path.sep).replace('/', os.path.sep).strip().lower()\n        for file in files:\n            if file_only:\n                paths = [os.path.splitext(file)[0].lower(), os.path.splitext(os.path.basename(file).lower())[0]] # fullname and basename\n            else:\n                paths = [os.path.splitext(p.lower())[0] for p in os.path.normpath(file).split(os.path.sep)] # every path component\n            paths.insert(0, os.path.splitext(file)[0].lower())\n            if (trimmed in paths) or (os.path.sep in trimmed and trimmed in paths[0]):\n                try:\n                    with open(file, 'r', encoding='utf-8') as f:\n                        lines = f.readlines()\n                        lines = [line.split('#')[0].strip('\\n').strip() for line in lines]\n                        lines = [line for line in lines if len(line) > 0]\n                        if len(lines) > 0:\n                            choice = random.choice(lines)\n                            if '|' in choice:\n                                choice = random.choice(choice.split('|')).strip(' []{}\\n')\n                            prompt = prompt.replace(f\"__{wildcard}__\", choice, 1)\n                            shared.log.debug(f'Apply wildcard: select=\"{wildcard}\" choice=\"{choice}\" file=\"{file}\" choices={len(lines)}')\n                            replaced.append(wildcard)\n                            return prompt, True\n                except Exception as e:\n                    shared.log.error(f'Wildcards: wildcard={wildcard} file={file} {e}')\n        if not file_only:\n            return prompt, False\n        return check_wildcard_files(prompt, wildcard, files, file_only=False)\n\n    def get_wildcards(prompt):\n        matches = re.findall(r'__(.*?)__', prompt, re.DOTALL)\n        matches = [m for m in matches if m not in not_found]\n        # matches = [m for m in matches if m not in replaced]\n        return matches\n\n    recursion += 1\n    if not shared.opts.wildcards_enabled or recursion >= 10 or not isinstance(prompt, str) or len(prompt) == 0:\n        return prompt, replaced, not_found\n    wildcards = get_wildcards(prompt)\n    if len(wildcards) == 0:\n        return prompt, replaced, not_found\n    files = list(files_cache.list_files(shared.opts.wildcards_dir, ext_filter=[\".txt\"], recursive=True))\n    if len(files) == 0:\n        return prompt, replaced, not_found\n    for wildcard in wildcards:\n        prompt, found = check_wildcard_files(prompt, wildcard, files)\n        if found and wildcard in not_found:\n            not_found.remove(wildcard)\n        elif not found and wildcard not in not_found:\n            not_found.append(wildcard)\n    prompt, replaced, not_found = apply_file_wildcards(prompt, replaced, not_found, recursion, seed) # recursive until we get early return\n    return prompt, replaced, not_found\n\n\ndef apply_wildcards_to_prompt(prompt, all_wildcards, seed=-1, silent=False):\n    if prompt is None or len(prompt) == 0:\n        return prompt\n    old_state = None\n    if seed > 0 and len(all_wildcards) > 0:\n        old_state = random.getstate()\n        random.seed(seed)\n    replaced = {}\n    t0 = time.time()\n    for style_wildcards in all_wildcards:\n        wildcards = [x.strip() for x in style_wildcards.replace('\\n', ' ').split(\";\") if len(x.strip()) > 0]\n        for wildcard in wildcards:\n            try:\n                what, words = wildcard.split(\"=\", 1)\n                if what in prompt:\n                    words = [x.strip() for x in words.split(\",\") if len(x.strip()) > 0]\n                    word = random.choice(words)\n                    prompt = prompt.replace(what, word)\n                    replaced[what] = word\n            except Exception as e:\n                shared.log.error(f'Wildcards: wildcard=\"{wildcard}\" error={e}')\n    t1 = time.time()\n    prompt, replaced_file, not_found = apply_file_wildcards(prompt, [], [], recursion=0, seed=seed)\n    t2 = time.time()\n    if replaced and not silent:\n        shared.log.debug(f'Apply wildcards: {replaced} path=\"{shared.opts.wildcards_dir}\" type=style time={t1-t0:.2f}')\n    if (len(replaced_file) > 0 or len(not_found) > 0) and not silent:\n        shared.log.debug(f'Apply wildcards: found={replaced_file} missing={not_found} path=\"{shared.opts.wildcards_dir}\" type=file seed={seed} time={t2-t2:.2f}')\n    if old_state is not None:\n        random.setstate(old_state)\n    return prompt\n\n\ndef get_reference_style():\n    if getattr(shared.sd_model, 'sd_checkpoint_info', None) is None:\n        return None\n    name = shared.sd_model.sd_checkpoint_info.name\n    name = name.replace('\\\\', '/').replace('Diffusers/', '')\n    for k, v in shared.reference_models.items():\n        model_file = os.path.splitext(v.get('path', '').split('@')[0])[0].replace('huggingface/', '')\n        if k == name or model_file == name:\n            return v.get('extras', None)\n    return None\n\n\ndef apply_styles_to_extra(p, style: Style):\n    if style is None:\n        return\n    name_map = {\n        'sampler': 'sampler_name',\n        'size-1': 'width',\n        'size-2': 'height',\n        'model': 'sd_model_checkpoint',\n        'vae': 'sd_vae',\n        'unet': 'sd_unet',\n        'te': 'sd_text_encoder',\n        'refine': 'enable_hr',\n        'hires': 'hr_force',\n    }\n    name_exclude = [\n        'size',\n    ]\n    reference_style = get_reference_style()\n    extra = infotext.parse(reference_style) if shared.opts.extra_network_reference_values else {}\n    style_extra = apply_wildcards_to_prompt(style.extra, [style.wildcards], silent=True)\n    style_extra = ' ' + style_extra.lower()\n    extra.update(infotext.parse(style_extra))\n    extra.pop('Prompt', None)\n    extra.pop('Negative prompt', None)\n    params = []\n    settings = []\n    skipped = []\n\n    for k, v in extra.items():\n        k = k.lower().replace(' ', '_')\n        if k in name_map: # rename some fields\n            k = name_map[k]\n        if k in name_exclude: # exclude some fields\n            continue\n        if hasattr(p, k):\n            orig = getattr(p, k)\n            if (type(orig) != type(v)) and (orig is not None):\n                if not (type(orig) == int and type(v) == float): # dont convert float to int\n                    v = type(orig)(v)\n            setattr(p, k, v)\n            if debug_enabled:\n                shared.log.trace(f'Apply style param: {k}={v}')\n            params.append(f'{k}={v}')\n        elif shared.opts.data_labels.get(k, None) is not None:\n            if debug_enabled:\n                shared.log.trace(f'Apply style setting: {k}={v}')\n            shared.opts.data[k] = v\n            if k == 'sd_model_checkpoint':\n                sd_models.reload_model_weights()\n            if k == 'sd_vae':\n                sd_vae.reload_vae_weights()\n            settings.append(f'{k}={v}')\n        else:\n            if debug_enabled:\n                shared.log.trace(f'Apply style skip: {k}={v}')\n            skipped.append(f'{k}={v}')\n    shared.log.debug(f'Apply style: name=\"{style.name}\" params={params} settings={settings} unknown={skipped} reference={True if reference_style else False}')\n\n\nclass StyleDatabase:\n    def __init__(self, opts):\n        from modules import paths\n\n        self.no_style = Style(\"None\")\n        self.styles = {}\n        self.path = opts.styles_dir\n        self.built_in = opts.extra_networks_styles\n        if os.path.isfile(opts.styles_dir) or opts.styles_dir.endswith(\".csv\"):\n            legacy_file = opts.styles_dir\n            self.load_csv(legacy_file)\n            opts.styles_dir = os.path.join(paths.models_path, \"styles\")\n            self.path = opts.styles_dir\n            try:\n                os.makedirs(opts.styles_dir, exist_ok=True)\n                self.save_styles(opts.styles_dir, verbose=True)\n                shared.log.debug(f'Migrated styles: file=\"{legacy_file}\" folder=\"{opts.styles_dir}\"')\n                self.reload()\n            except Exception as e:\n                shared.log.error(f'styles failed to migrate: file=\"{legacy_file}\" error={e}')\n        if not os.path.isdir(opts.styles_dir):\n            opts.styles_dir = os.path.join(paths.models_path, \"styles\")\n            self.path = opts.styles_dir\n            try:\n                os.makedirs(opts.styles_dir, exist_ok=True)\n            except Exception:\n                pass\n\n    def load_style(self, fn, prefix=None):\n        with open(fn, 'r', encoding='utf-8') as f:\n            new_style = None\n            try:\n                all_styles = json.load(f)\n                if type(all_styles) is dict:\n                    all_styles = [all_styles]\n                for style in all_styles:\n                    if type(style) is not dict or \"name\" not in style:\n                        raise ValueError('cannot parse style')\n                    basename = os.path.splitext(os.path.basename(fn))[0]\n                    name = re.sub(r'[\\t\\r\\n]', '', style.get(\"name\", basename)).strip()\n                    if prefix is not None:\n                        name = os.path.join(prefix, name)\n                    else:\n                        name = os.path.join(os.path.dirname(os.path.relpath(fn, self.path)), name)\n                    new_style = Style(\n                        name=name,\n                        desc=style.get('description', name),\n                        prompt=style.get(\"prompt\", \"\"),\n                        negative_prompt=style.get(\"negative\", \"\"),\n                        extra=style.get(\"extra\", \"\"),\n                        wildcards=style.get(\"wildcards\", \"\"),\n                        preview=style.get(\"preview\", None),\n                        filename=fn,\n                        mtime=os.path.getmtime(fn),\n                    )\n                    self.styles[style[\"name\"]] = new_style\n            except Exception as e:\n                shared.log.error(f'Failed to load style: file=\"{fn}\" error={e}')\n            return new_style\n\n    def reload(self):\n        t0 = time.time()\n        self.styles.clear()\n\n        def list_folder(folder):\n            import concurrent\n            future_items = {}\n            candidates = list(files_cache.list_files(folder, ext_filter=['.json'], recursive=files_cache.not_hidden))\n            with concurrent.futures.ThreadPoolExecutor(max_workers=shared.max_workers) as executor:\n                for fn in candidates:\n                    if os.path.isfile(fn) and fn.lower().endswith(\".json\"):\n                        future_items[executor.submit(self.load_style, fn, None)] = fn\n                        # self.load_style(fn)\n                    elif os.path.isdir(fn) and not fn.startswith('.'):\n                        list_folder(fn)\n                self.styles = dict(sorted(self.styles.items(), key=lambda style: style[1].filename))\n                if self.built_in:\n                    fn = os.path.join('html', 'art-styles.json')\n                    future_items[executor.submit(self.load_style, fn, 'Reference')] = fn\n                for future in concurrent.futures.as_completed(future_items):\n                    future.result()\n\n        self.built_in = shared.opts.extra_networks_styles\n        list_folder(self.path)\n        t1 = time.time()\n        shared.log.info(f'Available Styles: path=\"{self.path}\" items={len(self.styles.keys())} time={t1-t0:.2f}')\n\n    def find_style(self, name):\n        found = [style for style in self.styles.values() if style.name == name]\n        return found[0] if len(found) > 0 else self.no_style\n\n    def get_style_prompts(self, styles):\n        if styles is None:\n            return []\n        if not isinstance(styles, list):\n            shared.log.error(f'Styles invalid: {styles}')\n            return []\n        return [self.find_style(x).prompt for x in styles]\n\n    def get_negative_style_prompts(self, styles):\n        if styles is None:\n            return []\n        if not isinstance(styles, list):\n            shared.log.error(f'Styles invalid: {styles}')\n            return []\n        return [self.find_style(x).negative_prompt for x in styles]\n\n    def apply_styles_to_prompts(self, prompts, negatives, styles, seeds):\n        if styles is None:\n            return prompts, negatives\n        if not isinstance(styles, list):\n            shared.log.error(f'Styles invalid styles: {styles}')\n            return prompts, negatives\n        if prompts is None or not isinstance(prompts, list):\n            shared.log.error(f'Styles invalid prompts: {prompts}')\n            return prompts, negatives\n        if seeds is None or not isinstance(prompts, list):\n            shared.log.error(f'Styles invalid seeds: {seeds}')\n            return prompts, negatives\n        jobid = shared.state.begin('Styles')\n        parsed_positive = []\n        parsed_negative = []\n        random_state = random.getstate()\n\n        for i in range(len(prompts)):\n            if seeds[i]> 0:\n                random.seed(seeds[i])\n            prompt = prompts[i]\n            prompt = apply_curly_braces_to_prompt(prompt, seeds[i])\n            prompt = apply_styles_to_prompt(prompt, [self.find_style(x).prompt for x in styles])\n            prompt = apply_wildcards_to_prompt(prompt, [self.find_style(x).wildcards for x in styles], seeds[i])\n            parsed_positive.append(prompt)\n        for i in range(len(negatives)):\n            if seeds[i]> 0:\n                random.seed(seeds[i])\n            prompt = negatives[i]\n            prompt = apply_curly_braces_to_prompt(prompt, seeds[i])\n            prompt = apply_styles_to_prompt(prompt, [self.find_style(x).negative_prompt for x in styles])\n            prompt = apply_wildcards_to_prompt(prompt, [self.find_style(x).wildcards for x in styles], seeds[i])\n            parsed_negative.append(prompt)\n\n        random.setstate(random_state)\n        shared.state.end(jobid)\n        return parsed_positive, parsed_negative\n\n    def apply_styles_to_prompt(self, prompt, styles, wildcards:bool=True):\n        if styles is None:\n            return prompt\n        if not isinstance(styles, list):\n            shared.log.error(f'Styles invalid: {styles}')\n            return prompt\n        prompt = apply_styles_to_prompt(prompt, [self.find_style(x).prompt for x in styles])\n        if wildcards:\n            prompt = apply_wildcards_to_prompt(prompt, [self.find_style(x).wildcards for x in styles])\n        return prompt\n\n    def apply_negative_styles_to_prompt(self, prompt, styles, wildcards:bool=True):\n        if styles is None:\n            return prompt\n        if not isinstance(styles, list):\n            shared.log.error(f'Styles invalid: {styles}')\n            return prompt\n        prompt = apply_styles_to_prompt(prompt, [self.find_style(x).negative_prompt for x in styles])\n        if wildcards:\n            prompt = apply_wildcards_to_prompt(prompt, [self.find_style(x).wildcards for x in styles])\n        return prompt\n\n    def apply_styles_to_extra(self, p):\n        if len(getattr(p, 'original_prompt', '')) == 0:\n            p.original_prompt = p.prompt\n        if len(getattr(p, 'original_negative', '')) == 0:\n            p.original_negative = p.negative_prompt\n\n        if p.styles is None:\n            return\n        if p.styles is None or not isinstance(p.styles, list):\n            shared.log.error(f'Styles invalid: {p.styles}')\n            return\n        for style in p.styles:\n            s = self.find_style(style)\n            if s == self.no_style:\n                shared.log.warning(f'Apply style: name=\"{style}\" not found')\n                continue\n            apply_styles_to_extra(p, s)\n\n    def extract_comments(self, p):\n        if not isinstance(p.prompt, str):\n            return\n        match = re.search(r'/\\*.*?\\*/', p.prompt, flags=re.DOTALL)\n        if match:\n            comment = match.group()\n            p.prompt = p.prompt.replace(comment, '')\n            p.extra_generation_params['Comment'] = comment.replace('/*', '').replace('*/', '')\n\n    def save_styles(self, path, verbose=False):\n        for name in list(self.styles):\n            style = {\n                \"name\": name,\n                \"prompt\": self.styles[name].prompt,\n                \"negative\": self.styles[name].negative_prompt,\n                \"extra\": \"\",\n                \"preview\": \"\",\n            }\n            keepcharacters = (' ','.','_')\n            fn = \"\".join(c for c in name if c.isalnum() or c in keepcharacters).strip()\n            fn = os.path.join(path, fn + \".json\")\n            try:\n                with open(fn, 'w', encoding='utf-8') as f:\n                    json.dump(style, f, indent=2)\n                    if verbose:\n                        shared.log.debug(f'Saved style: name={name} file=\"{fn}\"')\n            except Exception as e:\n                shared.log.error(f'Failed to save style: name={name} file=\"{path}\" error={e}')\n        count = len(list(self.styles))\n        if count > 0:\n            shared.log.debug(f'Saved styles: folder=\"{path}\" items={count}')\n\n    def load_csv(self, legacy_file):\n        if not os.path.isfile(legacy_file):\n            return\n        with open(legacy_file, \"r\", encoding=\"utf-8-sig\", newline='') as file:\n            reader = csv.DictReader(file, skipinitialspace=True)\n            num = 0\n            for row in reader:\n                try:\n                    name = row[\"name\"]\n                    prompt = row[\"prompt\"] if \"prompt\" in row else row[\"text\"]\n                    negative = row.get(\"negative_prompt\", \"\") if \"negative_prompt\" in row else row.get(\"negative\", \"\")\n                    self.styles[name] = Style(name, desc=name, prompt=prompt, negative_prompt=negative)\n                    shared.log.debug(f'Migrated style: {self.styles[name].__dict__}')\n                    num += 1\n                except Exception:\n                    shared.log.error(f'Styles error: file=\"{legacy_file}\" row={row}')\n            shared.log.info(f'Load legacy styles: file=\"{legacy_file}\" loaded={num} created={len(list(self.styles))}')\n"
  },
  {
    "path": "modules/sub_quadratic_attention.py",
    "content": "# original source:\n#   https://github.com/AminRezaei0x443/memory-efficient-attention/blob/1bc0d9e6ac5f82ea43a375135c4e1d3896ee1694/memory_efficient_attention/attention_torch.py\n# license:\n#   MIT License (see Memory Efficient Attention under the Licenses section in the web UI interface for the full license)\n# credit:\n#   Amin Rezaei (original author)\n#   Alex Birch (optimized algorithm for 3D tensors, at the expense of removing bias, masking and callbacks)\n#   brkirch (modified to use torch.narrow instead of dynamic_slice implementation)\n# implementation of:\n#   Self-attention Does Not Need O(n2) Memory\":\n#   https://arxiv.org/abs/2112.05682v2\n\nfrom functools import partial\nimport math\nfrom typing import Optional, NamedTuple, List\nimport torch\nfrom torch import Tensor\nfrom torch.utils.checkpoint import checkpoint\n\n\ndef narrow_trunc(\n    tensor: Tensor,\n    dim: int,\n    start: int,\n    length: int\n) -> Tensor:\n    return torch.narrow(tensor, dim, start, length if tensor.shape[dim] >= start + length else tensor.shape[dim] - start)\n\n\nclass AttnChunk(NamedTuple):\n    exp_values: Tensor\n    exp_weights_sum: Tensor\n    max_score: Tensor\n\n\nclass SummarizeChunk:\n    @staticmethod\n    def __call__(\n        query: Tensor,\n        key: Tensor,\n        value: Tensor,\n    ) -> AttnChunk: ...\n\n\nclass ComputeQueryChunkAttn:\n    @staticmethod\n    def __call__(\n        query: Tensor,\n        key: Tensor,\n        value: Tensor,\n    ) -> Tensor: ...\n\n\ndef _summarize_chunk(\n    query: Tensor,\n    key: Tensor,\n    value: Tensor,\n    scale: float,\n) -> AttnChunk:\n    attn_weights = torch.baddbmm(\n        torch.empty(1, 1, 1, device=query.device, dtype=query.dtype),\n        query,\n        key.transpose(1,2),\n        alpha=scale,\n        beta=0,\n    )\n    max_score, _ = torch.max(attn_weights, -1, keepdim=True)\n    max_score = max_score.detach()\n    exp_weights = torch.exp(attn_weights - max_score)\n    exp_values = torch.bmm(exp_weights, value) if query.device.type == 'mps' else torch.bmm(exp_weights, value.to(exp_weights.dtype)).to(value.dtype)\n    max_score = max_score.squeeze(-1)\n    return AttnChunk(exp_values, exp_weights.sum(dim=-1), max_score)\n\n\ndef _query_chunk_attention(\n    query: Tensor,\n    key: Tensor,\n    value: Tensor,\n    summarize_chunk: SummarizeChunk,\n    kv_chunk_size: int,\n) -> Tensor:\n    _batch_x_heads, k_tokens, _k_channels_per_head = key.shape\n    # _, _, v_channels_per_head = value.shape\n\n    def chunk_scanner(chunk_idx: int) -> AttnChunk:\n        key_chunk = narrow_trunc(\n            key,\n            1,\n            chunk_idx,\n            kv_chunk_size\n        )\n        value_chunk = narrow_trunc(\n            value,\n            1,\n            chunk_idx,\n            kv_chunk_size\n        )\n        return summarize_chunk(query, key_chunk, value_chunk)\n\n    chunks: List[AttnChunk] = [\n        chunk_scanner(chunk) for chunk in torch.arange(0, k_tokens, kv_chunk_size)\n    ]\n    acc_chunk = AttnChunk(*map(torch.stack, zip(*chunks)))\n    chunk_values, chunk_weights, chunk_max = acc_chunk\n\n    global_max, _ = torch.max(chunk_max, 0, keepdim=True)\n    max_diffs = torch.exp(chunk_max - global_max)\n    chunk_values *= torch.unsqueeze(max_diffs, -1)\n    chunk_weights *= max_diffs\n\n    all_values = chunk_values.sum(dim=0)\n    all_weights = torch.unsqueeze(chunk_weights, -1).sum(dim=0)\n    return all_values / all_weights\n\n\ndef _get_attention_scores_no_kv_chunking(\n    query: Tensor,\n    key: Tensor,\n    value: Tensor,\n    scale: float,\n) -> Tensor:\n    attn_scores = torch.baddbmm(\n        torch.empty(1, 1, 1, device=query.device, dtype=query.dtype),\n        query,\n        key.transpose(1,2),\n        alpha=scale,\n        beta=0,\n    )\n    attn_probs = attn_scores.softmax(dim=-1)\n    del attn_scores\n    hidden_states_slice = torch.bmm(attn_probs, value) if query.device.type == 'mps' else torch.bmm(attn_probs, value.to(attn_probs.dtype)).to(value.dtype)\n    return hidden_states_slice\n\n\nclass ScannedChunk(NamedTuple):\n    chunk_idx: int\n    attn_chunk: AttnChunk\n\n\ndef efficient_dot_product_attention(\n    query: Tensor,\n    key: Tensor,\n    value: Tensor,\n    query_chunk_size=1024,\n    kv_chunk_size: Optional[int] = None,\n    kv_chunk_size_min: Optional[int] = None,\n    use_checkpoint=True,\n):\n    \"\"\"Computes efficient dot-product attention given query, key, and value.\n      This is efficient version of attention presented in\n      https://arxiv.org/abs/2112.05682v2 which comes with O(sqrt(n)) memory requirements.\n      Args:\n        query: queries for calculating attention with shape of\n          `[batch * num_heads, tokens, channels_per_head]`.\n        key: keys for calculating attention with shape of\n          `[batch * num_heads, tokens, channels_per_head]`.\n        value: values to be used in attention with shape of\n          `[batch * num_heads, tokens, channels_per_head]`.\n        query_chunk_size: int: query chunks size\n        kv_chunk_size: Optional[int]: key/value chunks size. if None: defaults to sqrt(key_tokens)\n        kv_chunk_size_min: Optional[int]: key/value minimum chunk size. only considered when kv_chunk_size is None. changes `sqrt(key_tokens)` into `max(sqrt(key_tokens), kv_chunk_size_min)`, to ensure our chunk sizes don't get too small (smaller chunks = more chunks = less concurrent work done).\n        use_checkpoint: bool: whether to use checkpointing (recommended True for training, False for inference)\n      Returns:\n        Output of shape `[batch * num_heads, query_tokens, channels_per_head]`.\n      \"\"\"\n    _batch_x_heads, q_tokens, q_channels_per_head = query.shape\n    _, k_tokens, _ = key.shape\n    scale = q_channels_per_head ** -0.5\n\n    kv_chunk_size = min(kv_chunk_size or int(math.sqrt(k_tokens)), k_tokens)\n    if kv_chunk_size_min is not None:\n        kv_chunk_size = max(kv_chunk_size, kv_chunk_size_min)\n\n    def get_query_chunk(chunk_idx: int) -> Tensor:\n        return narrow_trunc(\n            query,\n            1,\n            chunk_idx,\n            min(query_chunk_size, q_tokens)\n        )\n\n    summarize_chunk: SummarizeChunk = partial(_summarize_chunk, scale=scale)\n    summarize_chunk: SummarizeChunk = partial(checkpoint, summarize_chunk) if use_checkpoint else summarize_chunk\n    compute_query_chunk_attn: ComputeQueryChunkAttn = partial(\n        _get_attention_scores_no_kv_chunking,\n        scale=scale\n    ) if k_tokens <= kv_chunk_size else (\n        # fast-path for when there's just 1 key-value chunk per query chunk (this is just sliced attention btw)\n        partial(\n            _query_chunk_attention,\n            kv_chunk_size=kv_chunk_size,\n            summarize_chunk=summarize_chunk,\n        )\n    )\n\n    if q_tokens <= query_chunk_size:\n        # fast-path for when there's just 1 query chunk\n        return compute_query_chunk_attn(\n            query=query,\n            key=key,\n            value=value,\n        )\n\n    res = torch.cat([\n        compute_query_chunk_attn(\n            query=get_query_chunk(i * query_chunk_size),\n            key=key,\n            value=value,\n        ) for i in range(math.ceil(q_tokens / query_chunk_size))\n    ], dim=1)\n    return res\n"
  },
  {
    "path": "modules/taesd/hybrid_small.py",
    "content": "# pylint: disable=no-member,unused-argument,attribute-defined-outside-init\n\n# Copyright (c) 2024 Bytedance Ltd. and/or its affiliates\n# Copyright 2024 The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\nfrom typing import Dict, Optional, Tuple, Union\n\nimport torch\nimport torch.nn as nn\n\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.loaders.single_file_model import FromOriginalModelMixin\nfrom diffusers.utils.accelerate_utils import apply_forward_hook\nfrom diffusers.models.attention_processor import (\n    ADDED_KV_ATTENTION_PROCESSORS,\n    CROSS_ATTENTION_PROCESSORS,\n    Attention,\n    AttentionProcessor,\n    AttnAddedKVProcessor,\n    AttnProcessor,\n)\nfrom diffusers.models.modeling_outputs import AutoencoderKLOutput\nfrom diffusers.models.modeling_utils import ModelMixin\nfrom diffusers.models.autoencoders.vae import Decoder, DecoderOutput, DiagonalGaussianDistribution, Encoder\n\n\nclass AutoencoderSmall(ModelMixin, ConfigMixin, FromOriginalModelMixin):\n    r\"\"\"\n    A VAE model with KL loss for encoding images into latents and decoding latent representations into images.\n\n    This model inherits from [`ModelMixin`]. Check the superclass documentation for it's generic methods implemented\n    for all models (such as downloading or saving).\n\n    Parameters:\n        in_channels (int, *optional*, defaults to 3): Number of channels in the input image.\n        out_channels (int,  *optional*, defaults to 3): Number of channels in the output.\n        down_block_types (`Tuple[str]`, *optional*, defaults to `(\"DownEncoderBlock2D\",)`):\n            Tuple of downsample block types.\n        up_block_types (`Tuple[str]`, *optional*, defaults to `(\"UpDecoderBlock2D\",)`):\n            Tuple of upsample block types.\n        block_out_channels (`Tuple[int]`, *optional*, defaults to `(64,)`):\n            Tuple of block output channels.\n        act_fn (`str`, *optional*, defaults to `\"silu\"`): The activation function to use.\n        latent_channels (`int`, *optional*, defaults to 4): Number of channels in the latent space.\n        sample_size (`int`, *optional*, defaults to `32`): Sample input size.\n        scaling_factor (`float`, *optional*, defaults to 0.18215):\n            The component-wise standard deviation of the trained latent space computed using the first batch of the\n            training set. This is used to scale the latent space to have unit variance when training the diffusion\n            model. The latents are scaled with the formula `z = z * scaling_factor` before being passed to the\n            diffusion model. When decoding, the latents are scaled back to the original scale with the formula: `z = 1\n            / scaling_factor * z`. For more details, refer to sections 4.3.2 and D.1 of the [High-Resolution Image\n            Synthesis with Latent Diffusion Models](https://arxiv.org/abs/2112.10752) paper.\n        force_upcast (`bool`, *optional*, default to `True`):\n            If enabled it will force the VAE to run in float32 for high image resolution pipelines, such as SD-XL. VAE\n            can be fine-tuned / trained to a lower range without loosing too much precision in which case\n            `force_upcast` can be set to `False` - see: https://huggingface.co/madebyollin/sdxl-vae-fp16-fix\n    \"\"\"\n\n    _supports_gradient_checkpointing = True\n\n    @register_to_config\n    def __init__(\n        self,\n        in_channels: int = 3,\n        out_channels: int = 3,\n        down_block_types: Tuple[str] = (\"DownEncoderBlock2D\",),\n        up_block_types: Tuple[str] = (\"UpDecoderBlock2D\",),\n        block_out_channels: Tuple[int] = (64,),\n        encoder_block_out_channels: Tuple[int] = None,\n        decoder_block_out_channels: Tuple[int] = None,\n        layers_per_block: int = 1,\n        act_fn: str = \"silu\",\n        latent_channels: int = 4,\n        norm_num_groups: int = 32,\n        sample_size: int = 32,\n        scaling_factor: float = 0.18215,\n        latents_mean: Optional[Tuple[float]] = None,\n        latents_std: Optional[Tuple[float]] = None,\n        force_upcast: float = True,\n    ):\n        super().__init__()\n\n        if encoder_block_out_channels is not None or decoder_block_out_channels is not None:\n            if encoder_block_out_channels is None:\n                raise NotImplementedError\n            if decoder_block_out_channels is None:\n                raise NotImplementedError\n\n        else:\n            encoder_block_out_channels = block_out_channels\n            decoder_block_out_channels = block_out_channels\n            self.config.encoder_block_out_channels = self.config.decoder_block_out_channels = block_out_channels\n\n\n        # pass init params to Encoder\n        self.encoder = Encoder(\n            in_channels=in_channels,\n            out_channels=latent_channels,\n            down_block_types=down_block_types,\n            block_out_channels=encoder_block_out_channels,\n            layers_per_block=layers_per_block,\n            act_fn=act_fn,\n            norm_num_groups=norm_num_groups,\n            double_z=True,\n        )\n\n        # pass init params to Decoder\n        self.decoder = Decoder(\n            in_channels=latent_channels,\n            out_channels=out_channels,\n            up_block_types=up_block_types,\n            block_out_channels=decoder_block_out_channels,\n            layers_per_block=layers_per_block,\n            norm_num_groups=norm_num_groups,\n            act_fn=act_fn,\n        )\n\n        self.quant_conv = nn.Conv2d(2 * latent_channels, 2 * latent_channels, 1)\n        self.post_quant_conv = nn.Conv2d(latent_channels, latent_channels, 1)\n\n        self.use_slicing = False\n        self.use_tiling = False\n\n        # only relevant if vae tiling is enabled\n        self.tile_sample_min_size = self.config.sample_size\n        sample_size = (\n            self.config.sample_size[0]\n            if isinstance(self.config.sample_size, (list, tuple))\n            else self.config.sample_size\n        )\n        self.tile_latent_min_size = int(sample_size / (2 ** (len(self.config.encoder_block_out_channels) - 1)))\n        self.tile_overlap_factor = 0.25\n\n    def _set_gradient_checkpointing(self, module, value=False):\n        if isinstance(module, (Encoder, Decoder)):\n            module.gradient_checkpointing = value\n\n    def enable_tiling(self, use_tiling: bool = True):\n        r\"\"\"\n        Enable tiled VAE decoding. When this option is enabled, the VAE will split the input tensor into tiles to\n        compute decoding and encoding in several steps. This is useful for saving a large amount of memory and to allow\n        processing larger images.\n        \"\"\"\n        self.use_tiling = use_tiling\n\n    def disable_tiling(self):\n        r\"\"\"\n        Disable tiled VAE decoding. If `enable_tiling` was previously enabled, this method will go back to computing\n        decoding in one step.\n        \"\"\"\n        self.enable_tiling(False)\n\n    def enable_slicing(self):\n        r\"\"\"\n        Enable sliced VAE decoding. When this option is enabled, the VAE will split the input tensor in slices to\n        compute decoding in several steps. This is useful to save some memory and allow larger batch sizes.\n        \"\"\"\n        self.use_slicing = True\n\n    def disable_slicing(self):\n        r\"\"\"\n        Disable sliced VAE decoding. If `enable_slicing` was previously enabled, this method will go back to computing\n        decoding in one step.\n        \"\"\"\n        self.use_slicing = False\n\n    @property\n    # Copied from diffusers.models.unets.unet_2d_condition.UNet2DConditionModel.attn_processors\n    def attn_processors(self) -> Dict[str, AttentionProcessor]:\n        r\"\"\"\n        Returns:\n            `dict` of attention processors: A dictionary containing all attention processors used in the model with\n            indexed by its weight name.\n        \"\"\"\n        # set recursively\n        processors = {}\n\n        def fn_recursive_add_processors(name: str, module: torch.nn.Module, processors: Dict[str, AttentionProcessor]):\n            if hasattr(module, \"get_processor\"):\n                processors[f\"{name}.processor\"] = module.get_processor(return_deprecated_lora=True)\n\n            for sub_name, child in module.named_children():\n                fn_recursive_add_processors(f\"{name}.{sub_name}\", child, processors)\n\n            return processors\n\n        for name, module in self.named_children():\n            fn_recursive_add_processors(name, module, processors)\n\n        return processors\n\n    # Copied from diffusers.models.unets.unet_2d_condition.UNet2DConditionModel.set_attn_processor\n    def set_attn_processor(self, processor: Union[AttentionProcessor, Dict[str, AttentionProcessor]]):\n        r\"\"\"\n        Sets the attention processor to use to compute attention.\n\n        Parameters:\n            processor (`dict` of `AttentionProcessor` or only `AttentionProcessor`):\n                The instantiated processor class or a dictionary of processor classes that will be set as the processor\n                for **all** `Attention` layers.\n\n                If `processor` is a dict, the key needs to define the path to the corresponding cross attention\n                processor. This is strongly recommended when setting trainable attention processors.\n\n        \"\"\"\n        count = len(self.attn_processors.keys())\n\n        if isinstance(processor, dict) and len(processor) != count:\n            raise ValueError(\n                f\"A dict of processors was passed, but the number of processors {len(processor)} does not match the\"\n                f\" number of attention layers: {count}. Please make sure to pass {count} processor classes.\"\n            )\n\n        def fn_recursive_attn_processor(name: str, module: torch.nn.Module, processor):\n            if hasattr(module, \"set_processor\"):\n                if not isinstance(processor, dict):\n                    module.set_processor(processor)\n                else:\n                    module.set_processor(processor.pop(f\"{name}.processor\"))\n\n            for sub_name, child in module.named_children():\n                fn_recursive_attn_processor(f\"{name}.{sub_name}\", child, processor)\n\n        for name, module in self.named_children():\n            fn_recursive_attn_processor(name, module, processor)\n\n    # Copied from diffusers.models.unets.unet_2d_condition.UNet2DConditionModel.set_default_attn_processor\n    def set_default_attn_processor(self):\n        \"\"\"\n        Disables custom attention processors and sets the default attention implementation.\n        \"\"\"\n        if all(proc.__class__ in ADDED_KV_ATTENTION_PROCESSORS for proc in self.attn_processors.values()):\n            processor = AttnAddedKVProcessor()\n        elif all(proc.__class__ in CROSS_ATTENTION_PROCESSORS for proc in self.attn_processors.values()):\n            processor = AttnProcessor()\n        else:\n            raise ValueError(\n                f\"Cannot call `set_default_attn_processor` when attention processors are of type {next(iter(self.attn_processors.values()))}\"\n            )\n\n        self.set_attn_processor(processor)\n\n    @apply_forward_hook\n    def encode(\n        self, x: torch.FloatTensor, return_dict: bool = True\n    ) -> Union[AutoencoderKLOutput, Tuple[DiagonalGaussianDistribution]]:\n        \"\"\"\n        Encode a batch of images into latents.\n\n        Args:\n            x (`torch.FloatTensor`): Input batch of images.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether to return a [`~models.autoencoder_kl.AutoencoderKLOutput`] instead of a plain tuple.\n\n        Returns:\n                The latent representations of the encoded images. If `return_dict` is True, a\n                [`~models.autoencoder_kl.AutoencoderKLOutput`] is returned, otherwise a plain `tuple` is returned.\n        \"\"\"\n        if self.use_tiling and (x.shape[-1] > self.tile_sample_min_size or x.shape[-2] > self.tile_sample_min_size):\n            return self.tiled_encode(x, return_dict=return_dict)\n\n        if self.use_slicing and x.shape[0] > 1:\n            encoded_slices = [self.encoder(x_slice) for x_slice in x.split(1)]\n            h = torch.cat(encoded_slices)\n        else:\n            h = self.encoder(x)\n\n        moments = self.quant_conv(h)\n        posterior = DiagonalGaussianDistribution(moments)\n\n        if not return_dict:\n            return (posterior,)\n\n        return AutoencoderKLOutput(latent_dist=posterior)\n\n    def _decode(self, z: torch.FloatTensor, return_dict: bool = True) -> Union[DecoderOutput, torch.FloatTensor]:\n        if self.use_tiling and (z.shape[-1] > self.tile_latent_min_size or z.shape[-2] > self.tile_latent_min_size):\n            return self.tiled_decode(z, return_dict=return_dict)\n\n        z = self.post_quant_conv(z)\n        dec = self.decoder(z)\n\n        if not return_dict:\n            return (dec,)\n\n        return DecoderOutput(sample=dec)\n\n    @apply_forward_hook\n    def decode(\n        self, z: torch.FloatTensor, return_dict: bool = True, generator=None\n    ) -> Union[DecoderOutput, torch.FloatTensor]:\n        \"\"\"\n        Decode a batch of images.\n\n        Args:\n            z (`torch.FloatTensor`): Input batch of latent vectors.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether to return a [`~models.vae.DecoderOutput`] instead of a plain tuple.\n\n        Returns:\n            [`~models.vae.DecoderOutput`] or `tuple`:\n                If return_dict is True, a [`~models.vae.DecoderOutput`] is returned, otherwise a plain `tuple` is\n                returned.\n\n        \"\"\"\n        if self.use_slicing and z.shape[0] > 1:\n            decoded_slices = [self._decode(z_slice).sample for z_slice in z.split(1)]\n            decoded = torch.cat(decoded_slices)\n        else:\n            decoded = self._decode(z).sample\n\n        if not return_dict:\n            return (decoded,)\n\n        return DecoderOutput(sample=decoded)\n\n    def blend_v(self, a: torch.Tensor, b: torch.Tensor, blend_extent: int) -> torch.Tensor:\n        blend_extent = min(a.shape[2], b.shape[2], blend_extent)\n        for y in range(blend_extent):\n            b[:, :, y, :] = a[:, :, -blend_extent + y, :] * (1 - y / blend_extent) + b[:, :, y, :] * (y / blend_extent)\n        return b\n\n    def blend_h(self, a: torch.Tensor, b: torch.Tensor, blend_extent: int) -> torch.Tensor:\n        blend_extent = min(a.shape[3], b.shape[3], blend_extent)\n        for x in range(blend_extent):\n            b[:, :, :, x] = a[:, :, :, -blend_extent + x] * (1 - x / blend_extent) + b[:, :, :, x] * (x / blend_extent)\n        return b\n\n    def tiled_encode(self, x: torch.FloatTensor, return_dict: bool = True) -> AutoencoderKLOutput:\n        r\"\"\"Encode a batch of images using a tiled encoder.\n\n        When this option is enabled, the VAE will split the input tensor into tiles to compute encoding in several\n        steps. This is useful to keep memory use constant regardless of image size. The end result of tiled encoding is\n        different from non-tiled encoding because each tile uses a different encoder. To avoid tiling artifacts, the\n        tiles overlap and are blended together to form a smooth output. You may still see tile-sized changes in the\n        output, but they should be much less noticeable.\n\n        Args:\n            x (`torch.FloatTensor`): Input batch of images.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~models.autoencoder_kl.AutoencoderKLOutput`] instead of a plain tuple.\n\n        Returns:\n            [`~models.autoencoder_kl.AutoencoderKLOutput`] or `tuple`:\n                If return_dict is True, a [`~models.autoencoder_kl.AutoencoderKLOutput`] is returned, otherwise a plain\n                `tuple` is returned.\n        \"\"\"\n        overlap_size = int(self.tile_sample_min_size * (1 - self.tile_overlap_factor))\n        blend_extent = int(self.tile_latent_min_size * self.tile_overlap_factor)\n        row_limit = self.tile_latent_min_size - blend_extent\n\n        # Split the image into 512x512 tiles and encode them separately.\n        rows = []\n        for i in range(0, x.shape[2], overlap_size):\n            row = []\n            for j in range(0, x.shape[3], overlap_size):\n                tile = x[:, :, i : i + self.tile_sample_min_size, j : j + self.tile_sample_min_size]\n                tile = self.encoder(tile)\n                tile = self.quant_conv(tile)\n                row.append(tile)\n            rows.append(row)\n        result_rows = []\n        for i, row in enumerate(rows):\n            result_row = []\n            for j, tile in enumerate(row):\n                # blend the above tile and the left tile\n                # to the current tile and add the current tile to the result row\n                if i > 0:\n                    tile = self.blend_v(rows[i - 1][j], tile, blend_extent)\n                if j > 0:\n                    tile = self.blend_h(row[j - 1], tile, blend_extent)\n                result_row.append(tile[:, :, :row_limit, :row_limit])\n            result_rows.append(torch.cat(result_row, dim=3))\n\n        moments = torch.cat(result_rows, dim=2)\n        posterior = DiagonalGaussianDistribution(moments)\n\n        if not return_dict:\n            return (posterior,)\n\n        return AutoencoderKLOutput(latent_dist=posterior)\n\n    def tiled_decode(self, z: torch.FloatTensor, return_dict: bool = True) -> Union[DecoderOutput, torch.FloatTensor]:\n        r\"\"\"\n        Decode a batch of images using a tiled decoder.\n\n        Args:\n            z (`torch.FloatTensor`): Input batch of latent vectors.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~models.vae.DecoderOutput`] instead of a plain tuple.\n\n        Returns:\n            [`~models.vae.DecoderOutput`] or `tuple`:\n                If return_dict is True, a [`~models.vae.DecoderOutput`] is returned, otherwise a plain `tuple` is\n                returned.\n        \"\"\"\n        overlap_size = int(self.tile_latent_min_size * (1 - self.tile_overlap_factor))\n        blend_extent = int(self.tile_sample_min_size * self.tile_overlap_factor)\n        row_limit = self.tile_sample_min_size - blend_extent\n\n        # Split z into overlapping 64x64 tiles and decode them separately.\n        # The tiles have an overlap to avoid seams between tiles.\n        rows = []\n        for i in range(0, z.shape[2], overlap_size):\n            row = []\n            for j in range(0, z.shape[3], overlap_size):\n                tile = z[:, :, i : i + self.tile_latent_min_size, j : j + self.tile_latent_min_size]\n                tile = self.post_quant_conv(tile)\n                decoded = self.decoder(tile)\n                row.append(decoded)\n            rows.append(row)\n        result_rows = []\n        for i, row in enumerate(rows):\n            result_row = []\n            for j, tile in enumerate(row):\n                # blend the above tile and the left tile\n                # to the current tile and add the current tile to the result row\n                if i > 0:\n                    tile = self.blend_v(rows[i - 1][j], tile, blend_extent)\n                if j > 0:\n                    tile = self.blend_h(row[j - 1], tile, blend_extent)\n                result_row.append(tile[:, :, :row_limit, :row_limit])\n            result_rows.append(torch.cat(result_row, dim=3))\n\n        dec = torch.cat(result_rows, dim=2)\n        if not return_dict:\n            return (dec,)\n\n        return DecoderOutput(sample=dec)\n\n    def forward(\n        self,\n        sample: torch.FloatTensor,\n        sample_posterior: bool = False,\n        return_dict: bool = True,\n        generator: Optional[torch.Generator] = None,\n    ) -> Union[DecoderOutput, torch.FloatTensor]:\n        r\"\"\"\n        Args:\n            sample (`torch.FloatTensor`): Input sample.\n            sample_posterior (`bool`, *optional*, defaults to `False`):\n                Whether to sample from the posterior.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`DecoderOutput`] instead of a plain tuple.\n        \"\"\"\n        x = sample\n        posterior = self.encode(x).latent_dist\n        if sample_posterior:\n            z = posterior.sample(generator=generator)\n        else:\n            z = posterior.mode()\n        dec = self.decode(z).sample\n\n        if not return_dict:\n            return (dec,)\n\n        return DecoderOutput(sample=dec)\n\n    # Copied from diffusers.models.unets.unet_2d_condition.UNet2DConditionModel.fuse_qkv_projections\n    def fuse_qkv_projections(self):\n        \"\"\"\n        Enables fused QKV projections. For self-attention modules, all projection matrices (i.e., query,\n        key, value) are fused. For cross-attention modules, key and value projection matrices are fused.\n\n        <Tip warning={true}>\n\n        This API is 🧪 experimental.\n\n        </Tip>\n        \"\"\"\n        self.original_attn_processors = None\n\n        for _, attn_processor in self.attn_processors.items():\n            if \"Added\" in str(attn_processor.__class__.__name__):\n                raise ValueError(\"`fuse_qkv_projections()` is not supported for models having added KV projections.\")\n\n        self.original_attn_processors = self.attn_processors\n\n        for module in self.modules():\n            if isinstance(module, Attention):\n                module.fuse_projections(fuse=True)\n\n    # Copied from diffusers.models.unets.unet_2d_condition.UNet2DConditionModel.unfuse_qkv_projections\n    def unfuse_qkv_projections(self):\n        \"\"\"Disables the fused QKV projection if enabled.\n\n        <Tip warning={true}>\n\n        This API is 🧪 experimental.\n\n        </Tip>\n\n        \"\"\"\n        if self.original_attn_processors is not None:\n            self.set_attn_processor(self.original_attn_processors)\n"
  },
  {
    "path": "modules/taesd/taehv.py",
    "content": "#!/usr/bin/env python3\n\"\"\"\nTiny AutoEncoder for Hunyuan Video\n(DNN for encoding / decoding videos to Hunyuan Video's latent space)\n\"\"\"\nfrom collections import namedtuple\nimport torch\nimport torch.nn as nn\nimport torch.nn.functional as F\nfrom tqdm.auto import tqdm\n\nDecoderResult = namedtuple(\"DecoderResult\", (\"frame\", \"memory\"))\nTWorkItem = namedtuple(\"TWorkItem\", (\"input_tensor\", \"block_index\"))\n\ndef conv(n_in, n_out, **kwargs):\n    return nn.Conv2d(n_in, n_out, 3, padding=1, **kwargs)\n\nclass Clamp(nn.Module):\n    def forward(self, x):\n        return torch.tanh(x / 3) * 3\n\nclass MemBlock(nn.Module):\n    def __init__(self, n_in, n_out):\n        super().__init__()\n        self.conv = nn.Sequential(conv(n_in * 2, n_out), nn.ReLU(inplace=True), conv(n_out, n_out), nn.ReLU(inplace=True), conv(n_out, n_out))\n        self.skip = nn.Conv2d(n_in, n_out, 1, bias=False) if n_in != n_out else nn.Identity()\n        self.act = nn.ReLU(inplace=True)\n    def forward(self, x, past):\n        return self.act(self.conv(torch.cat([x, past], 1)) + self.skip(x))\n\nclass TPool(nn.Module):\n    def __init__(self, n_f, stride):\n        super().__init__()\n        self.stride = stride\n        self.conv = nn.Conv2d(n_f*stride,n_f, 1, bias=False)\n    def forward(self, x):\n        _NT, C, H, W = x.shape\n        return self.conv(x.reshape(-1, self.stride * C, H, W))\n\nclass TGrow(nn.Module):\n    def __init__(self, n_f, stride):\n        super().__init__()\n        self.stride = stride\n        self.conv = nn.Conv2d(n_f, n_f*stride, 1, bias=False)\n    def forward(self, x):\n        _NT, C, H, W = x.shape\n        x = self.conv(x)\n        return x.reshape(-1, C, H, W)\n\ndef apply_model_with_memblocks(model, x, parallel, show_progress_bar):\n    \"\"\"\n    Apply a sequential model with memblocks to the given input.\n    Args:\n    - model: nn.Sequential of blocks to apply\n    - x: input data, of dimensions NTCHW\n    - parallel: if True, parallelize over timesteps (fast but uses O(T) memory)\n        if False, each timestep will be processed sequentially (slow but uses O(1) memory)\n    - show_progress_bar: if True, enables tqdm progressbar display\n\n    Returns NTCHW tensor of output data.\n    \"\"\"\n    if x.ndim == 4:\n        x = x.unsqueeze(0)\n    assert x.ndim == 5, f\"TAEHV operates on NTCHW tensors, but got {x.ndim}-dim tensor\"\n    if x.shape[1] == 16 and x.shape[2] != 16:\n        x = x.transpose(1,2) # NCTHW to NTCHW\n    N, T, C, H, W = x.shape\n    if parallel:\n        x = x.reshape(N*T, C, H, W)\n        # parallel over input timesteps, iterate over blocks\n        for b in tqdm(model, disable=not show_progress_bar):\n            if isinstance(b, MemBlock):\n                NT, C, H, W = x.shape\n                T = NT // N\n                _x = x.reshape(N, T, C, H, W)\n                mem = F.pad(_x, (0,0,0,0,0,0,1,0), value=0)[:,:T].reshape(x.shape)\n                x = b(x, mem)\n            else:\n                x = b(x)\n        NT, C, H, W = x.shape\n        T = NT // N\n        x = x.view(N, T, C, H, W)\n    else:\n        out = []\n        # iterate over input timesteps and also iterate over blocks.\n        # because of the cursed TPool/TGrow blocks, this is not a nested loop,\n        # it's actually a ***graph traversal*** problem! so let's make a queue\n        work_queue = [TWorkItem(xt, 0) for t, xt in enumerate(x.reshape(N, T * C, H, W).chunk(T, dim=1))]\n        # in addition to manually managing our queue, we also need to manually manage our progressbar.\n        # we'll update it for every source node that we consume.\n        progress_bar = tqdm(range(T), disable=not show_progress_bar)\n        # we'll also need a separate addressable memory per node as well\n        mem = [None] * len(model)\n        while work_queue:\n            xt, i = work_queue.pop(0)\n            if i == 0:\n                # new source node consumed\n                progress_bar.update(1)\n            if i == len(model):\n                # reached end of the graph, append result to output list\n                out.append(xt)\n            else:\n                # fetch the block to process\n                b = model[i]\n                if isinstance(b, MemBlock):\n                    # mem blocks are simple since we're visiting the graph in causal order\n                    if mem[i] is None:\n                        xt_new = b(xt, xt * 0)\n                        mem[i] = xt\n                    else:\n                        xt_new = b(xt, mem[i])\n                        mem[i].copy_(xt) # inplace might reduce mysterious pytorch memory allocations? doesn't help though\n                    # add successor to work queue\n                    work_queue.insert(0, TWorkItem(xt_new, i+1))\n                elif isinstance(b, TPool):\n                    # pool blocks are miserable\n                    if mem[i] is None:\n                        mem[i] = [] # pool memory is itself a queue of inputs to pool\n                    mem[i].append(xt)\n                    if len(mem[i]) > b.stride:\n                        # pool mem is in invalid state, we should have pooled before this\n                        raise ValueError(\"???\")\n                    elif len(mem[i]) < b.stride:\n                        # pool mem is not yet full, go back to processing the work queue\n                        pass\n                    else:\n                        # pool mem is ready, run the pool block\n                        N, C, H, W = xt.shape\n                        xt = b(torch.cat(mem[i], 1).view(N*b.stride, C, H, W))\n                        # reset the pool mem\n                        mem[i] = []\n                        # add successor to work queue\n                        work_queue.insert(0, TWorkItem(xt, i+1))\n                elif isinstance(b, TGrow):\n                    xt = b(xt)\n                    NT, C, H, W = xt.shape\n                    # each tgrow has multiple successor nodes\n                    for xt_next in reversed(xt.view(N, b.stride*C, H, W).chunk(b.stride, 1)):\n                        # add successor to work queue\n                        work_queue.insert(0, TWorkItem(xt_next, i+1))\n                else:\n                    # normal block with no funny business\n                    xt = b(xt)\n                    # add successor to work queue\n                    work_queue.insert(0, TWorkItem(xt, i+1))\n        progress_bar.close()\n        x = torch.stack(out, 1)\n    return x\n\nclass TAEHV(nn.Module):\n    latent_channels = 16\n    image_channels = 3\n    def __init__(self, checkpoint_path=\"taehv.pth\", decoder_time_upscale=(True, True), decoder_space_upscale=(True, True, True)):\n        \"\"\"Initialize pretrained TAEHV from the given checkpoint.\n\n        Arg:\n            checkpoint_path: path to weight file to load. taehv.pth for Hunyuan, taew2_1.pth for Wan 2.1.\n            decoder_time_upscale: whether temporal upsampling is enabled for each block. upsampling can be disabled for a cheaper preview.\n            decoder_space_upscale: whether spatial upsampling is enabled for each block. upsampling can be disabled for a cheaper preview.\n        \"\"\"\n        super().__init__()\n        from modules import shared\n        self.encoder = nn.Sequential(\n            conv(TAEHV.image_channels, 64), nn.ReLU(inplace=True),\n            TPool(64, 2), conv(64, 64, stride=2, bias=False), MemBlock(64, 64), MemBlock(64, 64), MemBlock(64, 64),\n            TPool(64, 2), conv(64, 64, stride=2, bias=False), MemBlock(64, 64), MemBlock(64, 64), MemBlock(64, 64),\n            TPool(64, 1), conv(64, 64, stride=2, bias=False), MemBlock(64, 64), MemBlock(64, 64), MemBlock(64, 64),\n            conv(64, TAEHV.latent_channels),\n        )\n        n_f = [256, 128, 64, 64]\n        self.frames_to_trim = 2**sum(decoder_time_upscale) - 1\n\n        if shared.opts.taesd_layers == 1:\n            self.decoder = nn.Sequential(\n                Clamp(), conv(TAEHV.latent_channels, n_f[0]), nn.ReLU(inplace=True),\n                MemBlock(n_f[0], n_f[0]), MemBlock(n_f[0], n_f[0]), MemBlock(n_f[0], n_f[0]), nn.Upsample(scale_factor=2 if decoder_space_upscale[0] else 1), TGrow(n_f[0], 1), conv(n_f[0], n_f[1], bias=False),\n                MemBlock(n_f[1], n_f[1]), MemBlock(n_f[1], n_f[1]), MemBlock(n_f[1], n_f[1]), nn.Identity(), TGrow(n_f[1], 2 if decoder_time_upscale[0] else 1), conv(n_f[1], n_f[2], bias=False),\n                MemBlock(n_f[2], n_f[2]), MemBlock(n_f[2], n_f[2]), MemBlock(n_f[2], n_f[2]), nn.Identity(), TGrow(n_f[2], 2 if decoder_time_upscale[1] else 1), conv(n_f[2], n_f[3], bias=False),\n                nn.ReLU(inplace=True), conv(n_f[3], TAEHV.image_channels),\n            )\n        elif shared.opts.taesd_layers == 2:\n            self.decoder = nn.Sequential(\n                Clamp(), conv(TAEHV.latent_channels, n_f[0]), nn.ReLU(inplace=True),\n                MemBlock(n_f[0], n_f[0]), MemBlock(n_f[0], n_f[0]), MemBlock(n_f[0], n_f[0]), nn.Upsample(scale_factor=2 if decoder_space_upscale[0] else 1), TGrow(n_f[0], 1), conv(n_f[0], n_f[1], bias=False),\n                MemBlock(n_f[1], n_f[1]), MemBlock(n_f[1], n_f[1]), MemBlock(n_f[1], n_f[1]), nn.Upsample(scale_factor=2 if decoder_space_upscale[1] else 1), TGrow(n_f[1], 2 if decoder_time_upscale[0] else 1), conv(n_f[1], n_f[2], bias=False),\n                MemBlock(n_f[2], n_f[2]), MemBlock(n_f[2], n_f[2]), MemBlock(n_f[2], n_f[2]), nn.Identity(), TGrow(n_f[2], 2 if decoder_time_upscale[1] else 1), conv(n_f[2], n_f[3], bias=False),\n                nn.ReLU(inplace=True), conv(n_f[3], TAEHV.image_channels),\n            )\n        else:\n            self.decoder = nn.Sequential(\n                Clamp(), conv(TAEHV.latent_channels, n_f[0]), nn.ReLU(inplace=True),\n                MemBlock(n_f[0], n_f[0]), MemBlock(n_f[0], n_f[0]), MemBlock(n_f[0], n_f[0]), nn.Upsample(scale_factor=2 if decoder_space_upscale[0] else 1), TGrow(n_f[0], 1), conv(n_f[0], n_f[1], bias=False),\n                MemBlock(n_f[1], n_f[1]), MemBlock(n_f[1], n_f[1]), MemBlock(n_f[1], n_f[1]), nn.Upsample(scale_factor=2 if decoder_space_upscale[1] else 1), TGrow(n_f[1], 2 if decoder_time_upscale[0] else 1), conv(n_f[1], n_f[2], bias=False),\n                MemBlock(n_f[2], n_f[2]), MemBlock(n_f[2], n_f[2]), MemBlock(n_f[2], n_f[2]), nn.Upsample(scale_factor=2 if decoder_space_upscale[2] else 1), TGrow(n_f[2], 2 if decoder_time_upscale[1] else 1), conv(n_f[2], n_f[3], bias=False),\n                nn.ReLU(inplace=True), conv(n_f[3], TAEHV.image_channels),\n            )\n\n        if checkpoint_path is not None:\n            self.load_state_dict(self.patch_tgrow_layers(torch.load(checkpoint_path, map_location=\"cpu\", weights_only=True)))\n\n    def patch_tgrow_layers(self, sd):\n        \"\"\"Patch TGrow layers to use a smaller kernel if needed.\n\n        Args:\n            sd: state dict to patch\n        \"\"\"\n        new_sd = self.state_dict()\n        for i, layer in enumerate(self.decoder):\n            if isinstance(layer, TGrow):\n                key = f\"decoder.{i}.conv.weight\"\n                if sd[key].shape[0] > new_sd[key].shape[0]:\n                    # take the last-timestep output channels\n                    sd[key] = sd[key][-new_sd[key].shape[0]:]\n        return sd\n\n    def encode_video(self, x, parallel=True, show_progress_bar=True):\n        \"\"\"Encode a sequence of frames.\n\n        Args:\n            x: input NTCHW RGB (C=3) tensor with values in [0, 1].\n            parallel: if True, all frames will be processed at once.\n              (this is faster but may require more memory).\n              if False, frames will be processed sequentially.\n        Returns NTCHW latent tensor with ~Gaussian values.\n        \"\"\"\n        return apply_model_with_memblocks(self.encoder, x, parallel, show_progress_bar)\n\n    def decode_video(self, x, parallel=True, show_progress_bar=True):\n        \"\"\"Decode a sequence of frames.\n\n        Args:\n            x: input NTCHW latent (C=12) tensor with ~Gaussian values.\n            parallel: if True, all frames will be processed at once.\n              (this is faster but may require more memory).\n              if False, frames will be processed sequentially.\n        Returns NTCHW RGB tensor with ~[0, 1] values.\n        \"\"\"\n        x = apply_model_with_memblocks(self.decoder, x, parallel, show_progress_bar)\n        return x[:, self.frames_to_trim:] * 2.0 - 1.0\n\n    def forward(self, x):\n        return self.c(x)\n\n    def decode(self, x, parallel=True, show_progress_bar=False, return_dict=False): # pylint: disable=unused-argument\n        \"\"\"Decode a sequence of frames.\"\"\"\n        return self.decode_video(x, parallel=False, show_progress_bar=False)\n\n    def encode(self, x, parallel=True, show_progress_bar=False, return_dict=False): # pylint: disable=unused-argument\n        \"\"\"Encode a sequence of frames.\"\"\"\n        return self.encode_video(x, parallel=False, show_progress_bar=False)\n"
  },
  {
    "path": "modules/taesd/taem1.py",
    "content": "#!/usr/bin/env python3\n\"\"\"\nTiny AutoEncoder for Mochi 1\n(DNN for encoding / decoding videos to Mochi 1's latent space)\n\"\"\"\nfrom collections import namedtuple\nimport torch\nimport torch.nn as nn\nimport torch.nn.functional as F\nfrom tqdm.auto import tqdm\n\nDecoderResult = namedtuple(\"DecoderResult\", (\"frame\", \"memory\"))\nTWorkItem = namedtuple(\"TWorkItem\", (\"input_tensor\", \"block_index\"))\n\ndef conv(n_in, n_out, **kwargs):\n    return nn.Conv2d(n_in, n_out, 3, padding=1, **kwargs)\n\nclass Clamp(nn.Module):\n    def forward(self, x):\n        return torch.tanh(x / 3) * 3\n\nclass MemBlock(nn.Module):\n    def __init__(self, n_in, n_out):\n        super().__init__()\n        self.conv = nn.Sequential(conv(n_in * 2, n_out), nn.ReLU(inplace=True), conv(n_out, n_out), nn.ReLU(inplace=True), conv(n_out, n_out))\n        self.skip = nn.Conv2d(n_in, n_out, 1, bias=False) if n_in != n_out else nn.Identity()\n        self.act = nn.ReLU(inplace=True)\n    def forward(self, x, past):\n        return self.act(self.conv(torch.cat([x, past], 1)) + self.skip(x))\n\nclass TPool(nn.Module):\n    def __init__(self, n_f, stride):\n        super().__init__()\n        self.stride = stride\n        self.conv = nn.Conv2d(n_f*stride,n_f, 1, bias=False)\n    def forward(self, x):\n        _NT, C, H, W = x.shape\n        return self.conv(x.reshape(-1, self.stride * C, H, W))\n\nclass TGrow(nn.Module):\n    def __init__(self, n_f, stride):\n        super().__init__()\n        self.stride = stride\n        self.conv = nn.Conv2d(n_f, n_f*stride, 1, bias=False)\n    def forward(self, x):\n        _NT, C, H, W = x.shape\n        x = self.conv(x)\n        return x.reshape(-1, C, H, W)\n\ndef apply_model_with_memblocks(model, x, parallel, show_progress_bar):\n    \"\"\"\n    Apply a sequential model with memblocks to the given input.\n    Args:\n    - model: nn.Sequential of blocks to apply\n    - x: input data, of dimensions NTCHW\n    - parallel: if True, parallelize over timesteps (fast but uses O(T) memory)\n        if False, each timestep will be processed sequentially (slow but uses O(1) memory)\n    - show_progress_bar: if True, enables tqdm progressbar display\n\n    Returns NTCHW tensor of output data.\n    \"\"\"\n    assert x.ndim == 5, f\"TAEM1 operates on NTCHW tensors, but got {x.ndim}-dim tensor\"\n    N, T, C, H, W = x.shape\n    if parallel:\n        x = x.reshape(N*T, C, H, W)\n        # parallel over input timesteps, iterate over blocks\n        for b in tqdm(model, disable=not show_progress_bar):\n            if isinstance(b, MemBlock):\n                NT, C, H, W = x.shape\n                T = NT // N\n                _x = x.reshape(N, T, C, H, W)\n                mem = F.pad(_x, (0,0,0,0,0,0,1,0), value=0)[:,:T].reshape(x.shape)\n                x = b(x, mem)\n            else:\n                x = b(x)\n        NT, C, H, W = x.shape\n        T = NT // N\n        x = x.view(N, T, C, H, W)\n    else:\n        out = []\n        # iterate over input timesteps and also iterate over blocks.\n        # because of the cursed TPool/TGrow blocks, this is not a nested loop,\n        # it's actually a ***graph traversal*** problem! so let's make a queue\n        work_queue = [TWorkItem(xt, 0) for t, xt in enumerate(x.reshape(N, T * C, H, W).chunk(T, dim=1))]\n        # in addition to manually managing our queue, we also need to manually manage our progressbar.\n        # we'll update it for every source node that we consume.\n        progress_bar = tqdm(range(T), disable=not show_progress_bar)\n        # we'll also need a separate addressable memory per node as well\n        mem = [None] * len(model)\n        while work_queue:\n            xt, i = work_queue.pop(0)\n            if i == 0:\n                # new source node consumed\n                progress_bar.update(1)\n            if i == len(model):\n                # reached end of the graph, append result to output list\n                out.append(xt)\n            else:\n                # fetch the block to process\n                b = model[i]\n                if isinstance(b, MemBlock):\n                    # mem blocks are simple since we're visiting the graph in causal order\n                    if mem[i] is None:\n                        xt_new = b(xt, xt * 0)\n                        mem[i] = xt\n                    else:\n                        xt_new = b(xt, mem[i])\n                        mem[i].copy_(xt) # inplace might reduce mysterious pytorch memory allocations? doesn't help though\n                    # add successor to work queue\n                    work_queue.insert(0, TWorkItem(xt_new, i+1))\n                elif isinstance(b, TPool):\n                    # pool blocks are miserable\n                    if mem[i] is None:\n                        mem[i] = [] # pool memory is itself a queue of inputs to pool\n                    mem[i].append(xt)\n                    if len(mem[i]) > b.stride:\n                        # pool mem is in invalid state, we should have pooled before this\n                        raise ValueError(\"???\")\n                    elif len(mem[i]) < b.stride:\n                        # pool mem is not yet full, go back to processing the work queue\n                        pass\n                    else:\n                        # pool mem is ready, run the pool block\n                        N, C, H, W = xt.shape\n                        xt = b(torch.cat(mem[i], 1).view(N*b.stride, C, H, W))\n                        # reset the pool mem\n                        mem[i] = []\n                        # add successor to work queue\n                        work_queue.insert(0, TWorkItem(xt, i+1))\n                elif isinstance(b, TGrow):\n                    xt = b(xt)\n                    NT, C, H, W = xt.shape\n                    # each tgrow has multiple successor nodes\n                    for xt_next in reversed(xt.view(N, b.stride*C, H, W).chunk(b.stride, 1)):\n                        # add successor to work queue\n                        work_queue.insert(0, TWorkItem(xt_next, i+1))\n                else:\n                    # normal block with no funny business\n                    xt = b(xt)\n                    # add successor to work queue\n                    work_queue.insert(0, TWorkItem(xt, i+1))\n        progress_bar.close()\n        x = torch.stack(out, 1)\n    return x\n\nclass TAEM1(nn.Module):\n    latent_channels = 12\n    image_channels = 3\n    def __init__(self, checkpoint_path=\"taem1.pth\"):\n        \"\"\"Initialize pretrained TAEM1 from the given checkpoints.\"\"\"\n        super().__init__()\n        self.encoder = nn.Sequential(\n            conv(TAEM1.image_channels, 64), nn.ReLU(inplace=True),\n            TPool(64, 3), conv(64, 64, stride=2, bias=False), MemBlock(64, 64), MemBlock(64, 64), MemBlock(64, 64),\n            TPool(64, 2), conv(64, 64, stride=2, bias=False), MemBlock(64, 64), MemBlock(64, 64), MemBlock(64, 64),\n            TPool(64, 1), conv(64, 64, stride=2, bias=False), MemBlock(64, 64), MemBlock(64, 64), MemBlock(64, 64),\n            conv(64, TAEM1.latent_channels),\n        )\n        n_f = [256, 128, 64, 64]\n        self.decoder = nn.Sequential(\n            Clamp(), conv(TAEM1.latent_channels, n_f[0]), nn.ReLU(inplace=True),\n            MemBlock(n_f[0], n_f[0]), MemBlock(n_f[0], n_f[0]), MemBlock(n_f[0], n_f[0]), nn.Upsample(scale_factor=2), TGrow(n_f[0], 1), conv(n_f[0], n_f[1], bias=False),\n            MemBlock(n_f[1], n_f[1]), MemBlock(n_f[1], n_f[1]), MemBlock(n_f[1], n_f[1]), nn.Upsample(scale_factor=2), TGrow(n_f[1], 2), conv(n_f[1], n_f[2], bias=False),\n            MemBlock(n_f[2], n_f[2]), MemBlock(n_f[2], n_f[2]), MemBlock(n_f[2], n_f[2]), nn.Upsample(scale_factor=2), TGrow(n_f[2], 3), conv(n_f[2], n_f[3], bias=False),\n            nn.ReLU(inplace=True), conv(n_f[3], TAEM1.image_channels),\n        )\n        if checkpoint_path is not None:\n            self.load_state_dict(torch.load(checkpoint_path, map_location=\"cpu\", weights_only=True))\n\n    def encode_video(self, x, parallel=True, show_progress_bar=True):\n        \"\"\"Encode a sequence of frames.\n\n        Args:\n            x: input NTCHW RGB (C=3) tensor with values in [0, 1].\n            parallel: if True, all frames will be processed at once.\n              (this is faster but may require more memory).\n              if False, frames will be processed sequentially.\n        Returns NTCHW latent tensor with ~Gaussian values.\n        \"\"\"\n        return apply_model_with_memblocks(self.encoder, x, parallel, show_progress_bar)\n\n    def decode_video(self, x, parallel=True, show_progress_bar=True):\n        \"\"\"Decode a sequence of frames.\n\n        Args:\n            x: input NTCHW latent (C=12) tensor with ~Gaussian values.\n            parallel: if True, all frames will be processed at once.\n              (this is faster but may require more memory).\n              if False, frames will be processed sequentially.\n        Returns NTCHW RGB tensor with ~[0, 1] values.\n        \"\"\"\n        x = apply_model_with_memblocks(self.decoder, x, parallel, show_progress_bar)\n        # NOTE:\n        # the Mochi VAE does not preserve shape along the time axis;\n        # videos are encoded to floor((n_in - 1)/6)+1 latent frames\n        # (which makes sense, it's stride 6, so 12 -> 2 and 13->3)\n        # but then they're decoded to only the *minimal* number\n        # of input frames (3 latents get decoded to 13 frames, not 18)\n        # in order to achieve the intended causal structure...\n        # anyway, that's why we have to remove some frames here.\n        # mochi-VAE does the slicing at each TGrow (save compute/mem?)\n        # but I think it's basically the same\n        return x[:, 5:]\n\n    def forward(self, x):\n        return self.c(x)\n"
  },
  {
    "path": "modules/taesd/taesd.py",
    "content": "import torch\nimport torch.nn as nn\nfrom modules import devices\n\n\ndef conv(n_in, n_out, **kwargs):\n    return nn.Conv2d(n_in, n_out, 3, padding=1, **kwargs)\n\nclass Clamp(nn.Module):\n    def forward(self, x):\n        return torch.tanh(x / 3) * 3\n\nclass Block(nn.Module):\n    def __init__(self, n_in, n_out):\n        super().__init__()\n        self.conv = nn.Sequential(conv(n_in, n_out), nn.ReLU(), conv(n_out, n_out), nn.ReLU(), conv(n_out, n_out))\n        self.skip = nn.Conv2d(n_in, n_out, 1, bias=False) if n_in != n_out else nn.Identity()\n        self.fuse = nn.ReLU()\n    def forward(self, x):\n        return self.fuse(self.conv(x) + self.skip(x))\n\ndef Encoder(latent_channels=4):\n    return nn.Sequential(\n        conv(3, 64), Block(64, 64),\n        conv(64, 64, stride=2, bias=False), Block(64, 64), Block(64, 64), Block(64, 64),\n        conv(64, 64, stride=2, bias=False), Block(64, 64), Block(64, 64), Block(64, 64),\n        conv(64, 64, stride=2, bias=False), Block(64, 64), Block(64, 64), Block(64, 64),\n        conv(64, latent_channels),\n    )\n\ndef Decoder(latent_channels=4):\n    from modules import shared\n    if shared.opts.taesd_layers == 1:\n        return nn.Sequential(\n            Clamp(), conv(latent_channels, 64), nn.ReLU(),\n            Block(64, 64), Block(64, 64), Block(64, 64), nn.Upsample(scale_factor=2), conv(64, 64, bias=False),\n            Block(64, 64), Block(64, 64), Block(64, 64), nn.Identity(), conv(64, 64, bias=False),\n            Block(64, 64), Block(64, 64), Block(64, 64), nn.Identity(), conv(64, 64, bias=False),\n            Block(64, 64), conv(64, 3),\n        )\n    elif shared.opts.taesd_layers == 2:\n        return nn.Sequential(\n            Clamp(), conv(latent_channels, 64), nn.ReLU(),\n            Block(64, 64), Block(64, 64), Block(64, 64), nn.Upsample(scale_factor=2), conv(64, 64, bias=False),\n            Block(64, 64), Block(64, 64), Block(64, 64), nn.Upsample(scale_factor=2), conv(64, 64, bias=False),\n            Block(64, 64), Block(64, 64), Block(64, 64), nn.Identity(), conv(64, 64, bias=False),\n            Block(64, 64), conv(64, 3),\n        )\n    else:\n        return nn.Sequential(\n            Clamp(), conv(latent_channels, 64), nn.ReLU(),\n            Block(64, 64), Block(64, 64), Block(64, 64), nn.Upsample(scale_factor=2), conv(64, 64, bias=False),\n            Block(64, 64), Block(64, 64), Block(64, 64), nn.Upsample(scale_factor=2), conv(64, 64, bias=False),\n            Block(64, 64), Block(64, 64), Block(64, 64), nn.Upsample(scale_factor=2), conv(64, 64, bias=False),\n            Block(64, 64), conv(64, 3),\n        )\n\n\nclass TAESD(nn.Module): # pylint: disable=abstract-method\n    latent_magnitude = 3\n    latent_shift = 0.5\n\n    def __init__(self, encoder_path=None, decoder_path=None, latent_channels=None):\n        super().__init__()\n        self.dtype = devices.dtype_vae if devices.dtype_vae != torch.bfloat16 else torch.float16 # taesd does not support bf16\n        if latent_channels is None:\n            latent_channels = self.guess_latent_channels(str(decoder_path), str(encoder_path))\n        self.encoder = Encoder(latent_channels)\n        self.decoder = Decoder(latent_channels)\n        if encoder_path is not None:\n            self.encoder.load_state_dict(torch.load(encoder_path, map_location=\"cpu\"), strict=False)\n            self.encoder.eval()\n            self.encoder = self.encoder.to(devices.device, dtype=self.dtype)\n        if decoder_path is not None:\n            self.decoder.load_state_dict(torch.load(decoder_path, map_location=\"cpu\"), strict=False)\n            self.decoder.eval()\n            self.decoder = self.decoder.to(devices.device, dtype=self.dtype)\n\n    def guess_latent_channels(self, decoder_path, encoder_path):\n        if \"f2\" in encoder_path or \"f2\" in decoder_path:\n            return 32  # FLUX.2 uses 32 latent channels\n        if (\"f1\" in encoder_path or \"f1\" in decoder_path) or (\"sd3\" in encoder_path or \"sd3\" in decoder_path):\n            return 16\n        return 4\n\n    @staticmethod\n    def scale_latents(x):\n        return x.div(2 * TAESD.latent_magnitude).add(TAESD.latent_shift).clamp(0, 1) # raw latents -> [0, 1]\n\n    @staticmethod\n    def unscale_latents(x):\n        return x.sub(TAESD.latent_shift).mul(2 * TAESD.latent_magnitude) # [0, 1] -> raw latents\n"
  },
  {
    "path": "modules/teacache/__init__.py",
    "content": "from .teacache_flux import teacache_flux_forward\nfrom .teacache_hidream import teacache_hidream_forward\nfrom .teacache_lumina2 import teacache_lumina2_forward\nfrom .teacache_ltx import teacache_ltx_forward\nfrom .teacache_mochi import teacache_mochi_forward\nfrom .teacache_cogvideox import teacache_cog_forward\nfrom .teacache_chroma import teacache_chroma_forward\n\n\nsupported_models = ['Flux', 'Chroma', 'CogVideoX', 'Mochi', 'LTX', 'HiDream', 'Lumina2']\n\n\ndef apply_teacache(p):\n    from modules import shared\n    if not shared.opts.teacache_enabled:\n        return\n    if not any(shared.sd_model.__class__.__name__.startswith(x) for x in supported_models):\n        return\n    if not hasattr(shared.sd_model, 'transformer'):\n        return\n    shared.sd_model.transformer.__class__.enable_teacache = shared.opts.teacache_thresh > 0\n    shared.sd_model.transformer.__class__.cnt = 0\n    shared.sd_model.transformer.__class__.num_steps = p.steps\n    shared.sd_model.transformer.__class__.rel_l1_thresh = shared.opts.teacache_thresh # 0.25 for 1.5x speedup, 0.4 for 1.8x speedup, 0.6 for 2.0x speedup, 0.8 for 2.25x speedup\n    shared.sd_model.transformer.__class__.accumulated_rel_l1_distance = 0\n    shared.sd_model.transformer.__class__.previous_modulated_input = None\n    shared.sd_model.transformer.__class__.previous_residual = None\n    if shared.sd_model.__class__.__name__.startswith('HiDream'):\n        shared.sd_model.transformer.__class__.ret_steps = p.steps * 0.1\n    if shared.sd_model.__class__.__name__.startswith('Lumina2'):\n        shared.sd_model.transformer.__class__.cache = {}\n        shared.sd_model.transformer.__class__.uncond_seq_len = None\n    shared.log.info(f'Transformers cache: type=teacache cls={shared.sd_model.__class__.__name__} thresh={shared.opts.teacache_thresh}')\n"
  },
  {
    "path": "modules/teacache/teacache_chroma.py",
    "content": "from typing import Any, Dict, Optional, Union\nimport torch\nimport numpy as np\nfrom diffusers.models.modeling_outputs import Transformer2DModelOutput\nfrom diffusers.utils import USE_PEFT_BACKEND, is_torch_version, logging, scale_lora_layers, unscale_lora_layers\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\ndef teacache_chroma_forward(\n        self,\n        hidden_states: torch.Tensor,\n        encoder_hidden_states: torch.Tensor = None,\n        timestep: torch.LongTensor = None,\n        img_ids: torch.Tensor = None,\n        txt_ids: torch.Tensor = None,\n        attention_mask: torch.Tensor = None,\n        joint_attention_kwargs: Optional[Dict[str, Any]] = None,\n        controlnet_block_samples=None,\n        controlnet_single_block_samples=None,\n        return_dict: bool = True,\n        controlnet_blocks_repeat: bool = False,\n    ) -> Union[torch.Tensor, Transformer2DModelOutput]:\n    \"\"\"\n    The [`ChromaTransformer2DModel`] forward method.\n    Args:\n        hidden_states (`torch.Tensor` of shape `(batch_size, image_sequence_length, in_channels)`):\n            Input `hidden_states`.\n        encoder_hidden_states (`torch.Tensor` of shape `(batch_size, text_sequence_length, joint_attention_dim)`):\n            Conditional embeddings (embeddings computed from the input conditions such as prompts) to use.\n        timestep ( `torch.LongTensor`):\n            Used to indicate denoising step.\n        block_controlnet_hidden_states: (`list` of `torch.Tensor`):\n            A list of tensors that if specified are added to the residuals of transformer blocks.\n        joint_attention_kwargs (`dict`, *optional*):\n            A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n            `self.processor` in\n            [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n        return_dict (`bool`, *optional*, defaults to `True`):\n            Whether or not to return a [`~models.transformer_2d.Transformer2DModelOutput`] instead of a plain\n            tuple.\n    Returns:\n        If `return_dict` is True, an [`~models.transformer_2d.Transformer2DModelOutput`] is returned, otherwise a\n        `tuple` where the first element is the sample tensor.\n    \"\"\"\n    if joint_attention_kwargs is not None:\n        joint_attention_kwargs = joint_attention_kwargs.copy()\n        lora_scale = joint_attention_kwargs.pop(\"scale\", 1.0)\n    else:\n        lora_scale = 1.0\n\n    if USE_PEFT_BACKEND:\n        # weight the lora layers by setting `lora_scale` for each PEFT layer\n        scale_lora_layers(self, lora_scale)\n    else:\n        if joint_attention_kwargs is not None and joint_attention_kwargs.get(\"scale\", None) is not None:\n            logger.warning(\n                \"Passing `scale` via `joint_attention_kwargs` when not using the PEFT backend is ineffective.\"\n            )\n\n    hidden_states = self.x_embedder(hidden_states)\n\n    timestep = timestep.to(hidden_states.dtype) * 1000\n\n    input_vec = self.time_text_embed(timestep)\n    pooled_temb = self.distilled_guidance_layer(input_vec)\n\n    encoder_hidden_states = self.context_embedder(encoder_hidden_states)\n\n    if txt_ids.ndim == 3:\n        logger.warning(\n            \"Passing `txt_ids` 3d torch.Tensor is deprecated.\"\n            \"Please remove the batch dimension and pass it as a 2d torch Tensor\"\n        )\n        txt_ids = txt_ids[0]\n    if img_ids.ndim == 3:\n        logger.warning(\n            \"Passing `img_ids` 3d torch.Tensor is deprecated.\"\n            \"Please remove the batch dimension and pass it as a 2d torch Tensor\"\n        )\n        img_ids = img_ids[0]\n\n    ids = torch.cat((txt_ids, img_ids), dim=0)\n    image_rotary_emb = self.pos_embed(ids)\n\n    if joint_attention_kwargs is not None and \"ip_adapter_image_embeds\" in joint_attention_kwargs:\n        ip_adapter_image_embeds = joint_attention_kwargs.pop(\"ip_adapter_image_embeds\")\n        ip_hidden_states = self.encoder_hid_proj(ip_adapter_image_embeds)\n        joint_attention_kwargs.update({\"ip_hidden_states\": ip_hidden_states})\n\n    if self.enable_teacache:\n        inp = hidden_states.clone()\n        input_vec_ = input_vec.clone()\n        modulated_inp, _gate_msa, _shift_mlp, _scale_mlp, _gate_mlp = self.transformer_blocks[0].norm1(inp, emb=input_vec_)\n        if self.cnt == 0 or self.cnt == self.num_steps-1:\n            should_calc = True\n            self.accumulated_rel_l1_distance = 0\n        else:\n            coefficients = [4.98651651e+02, -2.83781631e+02,  5.58554382e+01, -3.82021401e+00, 2.64230861e-01]\n            rescale_func = np.poly1d(coefficients)\n            self.accumulated_rel_l1_distance += rescale_func(((modulated_inp-self.previous_modulated_input).abs().mean() / self.previous_modulated_input.abs().mean()).cpu().item())\n            if self.accumulated_rel_l1_distance < self.rel_l1_thresh:\n                should_calc = False\n            else:\n                should_calc = True\n                self.accumulated_rel_l1_distance = 0\n        self.previous_modulated_input = modulated_inp\n        self.cnt += 1\n        if self.cnt == self.num_steps:\n            self.cnt = 0\n\n    if self.enable_teacache:\n        if not should_calc:\n            hidden_states += self.previous_residual\n        else:\n            ori_hidden_states = hidden_states.clone()\n            for index_block, block in enumerate(self.transformer_blocks):\n                img_offset = 3 * len(self.single_transformer_blocks)\n                txt_offset = img_offset + 6 * len(self.transformer_blocks)\n                img_modulation = img_offset + 6 * index_block\n                text_modulation = txt_offset + 6 * index_block\n                temb = torch.cat(\n                    (\n                        pooled_temb[:, img_modulation : img_modulation + 6],\n                        pooled_temb[:, text_modulation : text_modulation + 6],\n                    ),\n                    dim=1,\n                )\n                if torch.is_grad_enabled() and self.gradient_checkpointing:\n\n                    def create_custom_forward4(module, return_dict=None):\n                        def custom_forward(*inputs):\n                            if return_dict is not None:\n                                return module(*inputs, return_dict=return_dict)\n                            else:\n                                return module(*inputs)\n\n                        return custom_forward\n\n                    ckpt_kwargs: Dict[str, Any] = {\"use_reentrant\": False} if is_torch_version(\">=\", \"1.11.0\") else {}\n                    encoder_hidden_states, hidden_states = torch.utils.checkpoint.checkpoint(\n                        create_custom_forward4(block),\n                        hidden_states,\n                        encoder_hidden_states,\n                        temb,\n                        image_rotary_emb,\n                        attention_mask,\n                        **ckpt_kwargs,\n                    )\n\n                else:\n                    encoder_hidden_states, hidden_states = block(\n                        hidden_states=hidden_states,\n                        encoder_hidden_states=encoder_hidden_states,\n                        temb=temb,\n                        image_rotary_emb=image_rotary_emb,\n                        attention_mask=attention_mask,\n                        joint_attention_kwargs=joint_attention_kwargs,\n                    )\n\n                # controlnet residual\n                if controlnet_block_samples is not None:\n                    interval_control = len(self.transformer_blocks) / len(controlnet_block_samples)\n                    interval_control = int(np.ceil(interval_control))\n                    # For Xlabs ControlNet.\n                    if controlnet_blocks_repeat:\n                        hidden_states = (\n                            hidden_states + controlnet_block_samples[index_block % len(controlnet_block_samples)]\n                        )\n                    else:\n                        hidden_states = hidden_states + controlnet_block_samples[index_block // interval_control]\n            hidden_states = torch.cat([encoder_hidden_states, hidden_states], dim=1)\n\n            for index_block, block in enumerate(self.single_transformer_blocks):\n                start_idx = 3 * index_block\n                temb = pooled_temb[:, start_idx : start_idx + 3]\n\n                if torch.is_grad_enabled() and self.gradient_checkpointing:\n\n                    def create_custom_forward2(module, return_dict=None):\n                        def custom_forward(*inputs):\n                            if return_dict is not None:\n                                return module(*inputs, return_dict=return_dict)\n                            else:\n                                return module(*inputs)\n\n                        return custom_forward\n\n                    ckpt_kwargs: Dict[str, Any] = {\"use_reentrant\": False} if is_torch_version(\">=\", \"1.11.0\") else {}\n                    hidden_states = torch.utils.checkpoint.checkpoint(\n                        create_custom_forward2(block),\n                        hidden_states,\n                        temb,\n                        image_rotary_emb,\n                        **ckpt_kwargs,\n                    )\n\n                else:\n                    hidden_states = block(\n                        hidden_states=hidden_states,\n                        temb=temb,\n                        image_rotary_emb=image_rotary_emb,\n                        joint_attention_kwargs=joint_attention_kwargs,\n                    )\n\n                # controlnet residual\n                if controlnet_single_block_samples is not None:\n                    interval_control = len(self.single_transformer_blocks) / len(controlnet_single_block_samples)\n                    interval_control = int(np.ceil(interval_control))\n                    hidden_states[:, encoder_hidden_states.shape[1] :, ...] = (\n                        hidden_states[:, encoder_hidden_states.shape[1] :, ...]\n                        + controlnet_single_block_samples[index_block // interval_control]\n                    )\n\n            hidden_states = hidden_states[:, encoder_hidden_states.shape[1] :, ...]\n            self.previous_residual = hidden_states - ori_hidden_states\n    else:\n        for index_block, block in enumerate(self.transformer_blocks):\n            img_offset = 3 * len(self.single_transformer_blocks)\n            txt_offset = img_offset + 6 * len(self.transformer_blocks)\n            img_modulation = img_offset + 6 * index_block\n            text_modulation = txt_offset + 6 * index_block\n            temb = torch.cat(\n                (\n                    pooled_temb[:, img_modulation : img_modulation + 6],\n                    pooled_temb[:, text_modulation : text_modulation + 6],\n                ),\n                dim=1,\n            )\n\n            if torch.is_grad_enabled() and self.gradient_checkpointing:\n\n                def create_custom_forward1(module, return_dict=None):\n                    def custom_forward(*inputs):\n                        if return_dict is not None:\n                            return module(*inputs, return_dict=return_dict)\n                        else:\n                            return module(*inputs)\n\n                    return custom_forward\n\n                ckpt_kwargs: Dict[str, Any] = {\"use_reentrant\": False} if is_torch_version(\">=\", \"1.11.0\") else {}\n                encoder_hidden_states, hidden_states = torch.utils.checkpoint.checkpoint(\n                    create_custom_forward1(block),\n                    hidden_states,\n                    encoder_hidden_states,\n                    temb,\n                    image_rotary_emb,\n                    attention_mask=attention_mask,\n                    **ckpt_kwargs,\n                )\n\n            else:\n                encoder_hidden_states, hidden_states = block(\n                    hidden_states=hidden_states,\n                    encoder_hidden_states=encoder_hidden_states,\n                    temb=temb,\n                    image_rotary_emb=image_rotary_emb,\n                    attention_mask=attention_mask,\n                    joint_attention_kwargs=joint_attention_kwargs,\n                )\n\n            # controlnet residual\n            if controlnet_block_samples is not None:\n                interval_control = len(self.transformer_blocks) / len(controlnet_block_samples)\n                interval_control = int(np.ceil(interval_control))\n                # For Xlabs ControlNet.\n                if controlnet_blocks_repeat:\n                    hidden_states = (\n                        hidden_states + controlnet_block_samples[index_block % len(controlnet_block_samples)]\n                    )\n                else:\n                    hidden_states = hidden_states + controlnet_block_samples[index_block // interval_control]\n        hidden_states = torch.cat([encoder_hidden_states, hidden_states], dim=1)\n\n        for index_block, block in enumerate(self.single_transformer_blocks):\n            start_idx = 3 * index_block\n            temb = pooled_temb[:, start_idx : start_idx + 3]\n\n            if torch.is_grad_enabled() and self.gradient_checkpointing:\n\n                def create_custom_forward3(module, return_dict=None):\n                    def custom_forward(*inputs):\n                        if return_dict is not None:\n                            return module(*inputs, return_dict=return_dict)\n                        else:\n                            return module(*inputs)\n\n                    return custom_forward\n\n                ckpt_kwargs: Dict[str, Any] = {\"use_reentrant\": False} if is_torch_version(\">=\", \"1.11.0\") else {}\n                hidden_states = torch.utils.checkpoint.checkpoint(\n                    create_custom_forward3(block),\n                    hidden_states,\n                    temb,\n                    image_rotary_emb,\n                    attention_mask=attention_mask,\n                    **ckpt_kwargs,\n                )\n\n            else:\n                hidden_states = block(\n                    hidden_states=hidden_states,\n                    temb=temb,\n                    image_rotary_emb=image_rotary_emb,\n                    attention_mask=attention_mask,\n                    joint_attention_kwargs=joint_attention_kwargs,\n                )\n\n            # controlnet residual\n            if controlnet_single_block_samples is not None:\n                interval_control = len(self.single_transformer_blocks) / len(controlnet_single_block_samples)\n                interval_control = int(np.ceil(interval_control))\n                hidden_states[:, encoder_hidden_states.shape[1] :, ...] = (\n                    hidden_states[:, encoder_hidden_states.shape[1] :, ...]\n                    + controlnet_single_block_samples[index_block // interval_control]\n                )\n        hidden_states = hidden_states[:, encoder_hidden_states.shape[1] :, ...]\n\n    temb = pooled_temb[:, -2:]\n    hidden_states = self.norm_out(hidden_states, temb)\n    output = self.proj_out(hidden_states)\n\n    if USE_PEFT_BACKEND:\n        # remove `lora_scale` from each PEFT layer\n        unscale_lora_layers(self, lora_scale)\n\n    if not return_dict:\n        return (output,)\n\n    return Transformer2DModelOutput(sample=output)\n"
  },
  {
    "path": "modules/teacache/teacache_cogvideox.py",
    "content": "from typing import Any, Dict, Optional, Union, Tuple\nimport torch\nimport numpy as np\nfrom diffusers.utils import USE_PEFT_BACKEND, is_torch_version, scale_lora_layers, unscale_lora_layers, logging\nfrom diffusers.models.modeling_outputs import Transformer2DModelOutput\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\ndef teacache_cog_forward(\n        self,\n        hidden_states: torch.Tensor,\n        encoder_hidden_states: torch.Tensor,\n        timestep: Union[int, float, torch.LongTensor],\n        timestep_cond: Optional[torch.Tensor] = None,\n        ofs: Optional[Union[int, float, torch.LongTensor]] = None,\n        image_rotary_emb: Optional[Tuple[torch.Tensor, torch.Tensor]] = None,\n        attention_kwargs: Optional[Dict[str, Any]] = None,\n        return_dict: bool = True,\n    ):\n    if attention_kwargs is not None:\n        attention_kwargs = attention_kwargs.copy()\n        lora_scale = attention_kwargs.pop(\"scale\", 1.0)\n    else:\n        lora_scale = 1.0\n\n    if USE_PEFT_BACKEND:\n        # weight the lora layers by setting `lora_scale` for each PEFT layer\n        scale_lora_layers(self, lora_scale)\n    else:\n        if attention_kwargs is not None and attention_kwargs.get(\"scale\", None) is not None:\n            logger.warning(\n                \"Passing `scale` via `attention_kwargs` when not using the PEFT backend is ineffective.\"\n            )\n\n    batch_size, num_frames, channels, height, width = hidden_states.shape\n\n    # 1. Time embedding\n    timesteps = timestep\n    t_emb = self.time_proj(timesteps)\n\n    # timesteps does not contain any weights and will always return f32 tensors\n    # but time_embedding might actually be running in fp16. so we need to cast here.\n    # there might be better ways to encapsulate this.\n    t_emb = t_emb.to(dtype=hidden_states.dtype)\n    emb = self.time_embedding(t_emb, timestep_cond)\n\n    if self.ofs_embedding is not None:\n        ofs_emb = self.ofs_proj(ofs)\n        ofs_emb = ofs_emb.to(dtype=hidden_states.dtype)\n        ofs_emb = self.ofs_embedding(ofs_emb)\n        emb = emb + ofs_emb\n\n    # 2. Patch embedding\n    hidden_states = self.patch_embed(encoder_hidden_states, hidden_states)\n    hidden_states = self.embedding_dropout(hidden_states)\n\n    text_seq_length = encoder_hidden_states.shape[1]\n    encoder_hidden_states = hidden_states[:, :text_seq_length]\n    hidden_states = hidden_states[:, text_seq_length:]\n\n    if self.enable_teacache:\n        if self.cnt == 0 or self.cnt == self.num_steps-1:\n            should_calc = True\n            self.accumulated_rel_l1_distance = 0\n        else:\n            if not self.config.use_rotary_positional_embeddings:\n                # CogVideoX-2B\n                coefficients = [-3.10658903e+01,  2.54732368e+01, -5.92380459e+00,  1.75769064e+00, -3.61568434e-03]\n            else:\n                # CogVideoX-5B and CogvideoX1.5-5B\n                coefficients = [-1.53880483e+03,  8.43202495e+02, -1.34363087e+02,  7.97131516e+00, -5.23162339e-02]\n            rescale_func = np.poly1d(coefficients)\n            self.accumulated_rel_l1_distance += rescale_func(((emb-self.previous_modulated_input).abs().mean() / self.previous_modulated_input.abs().mean()).cpu().item())\n            if self.accumulated_rel_l1_distance < self.rel_l1_thresh:\n                should_calc = False\n            else:\n                should_calc = True\n                self.accumulated_rel_l1_distance = 0\n        self.previous_modulated_input = emb\n        self.cnt += 1\n        if self.cnt == self.num_steps:\n            self.cnt = 0\n\n    if self.enable_teacache:\n        if not should_calc:\n            hidden_states += self.previous_residual\n            encoder_hidden_states += self.previous_residual_encoder\n        else:\n            ori_hidden_states = hidden_states.clone()\n            ori_encoder_hidden_states = encoder_hidden_states.clone()\n            # 4. Transformer blocks\n            for i, block in enumerate(self.transformer_blocks):\n                if torch.is_grad_enabled() and self.gradient_checkpointing:\n\n                    def create_custom_forward(module):\n                        def custom_forward(*inputs):\n                            return module(*inputs)\n\n                        return custom_forward\n\n                    ckpt_kwargs: Dict[str, Any] = {\"use_reentrant\": False} if is_torch_version(\">=\", \"1.11.0\") else {}\n                    hidden_states, encoder_hidden_states = torch.utils.checkpoint.checkpoint(\n                        create_custom_forward(block),\n                        hidden_states,\n                        encoder_hidden_states,\n                        emb,\n                        image_rotary_emb,\n                        **ckpt_kwargs,\n                    )\n                else:\n                    hidden_states, encoder_hidden_states = block(\n                        hidden_states=hidden_states,\n                        encoder_hidden_states=encoder_hidden_states,\n                        temb=emb,\n                        image_rotary_emb=image_rotary_emb,\n                    )\n\n            self.previous_residual = hidden_states - ori_hidden_states\n            self.previous_residual_encoder = encoder_hidden_states - ori_encoder_hidden_states\n    else:\n        # 4. Transformer blocks\n        for i, block in enumerate(self.transformer_blocks):\n            if torch.is_grad_enabled() and self.gradient_checkpointing:\n\n                def create_custom_forward(module):\n                    def custom_forward(*inputs):\n                        return module(*inputs)\n\n                    return custom_forward\n\n                ckpt_kwargs: Dict[str, Any] = {\"use_reentrant\": False} if is_torch_version(\">=\", \"1.11.0\") else {}\n                hidden_states, encoder_hidden_states = torch.utils.checkpoint.checkpoint(\n                    create_custom_forward(block),\n                    hidden_states,\n                    encoder_hidden_states,\n                    emb,\n                    image_rotary_emb,\n                    **ckpt_kwargs,\n                )\n            else:\n                hidden_states, encoder_hidden_states = block(\n                    hidden_states=hidden_states,\n                    encoder_hidden_states=encoder_hidden_states,\n                    temb=emb,\n                    image_rotary_emb=image_rotary_emb,\n                )\n\n    if not self.config.use_rotary_positional_embeddings:\n        # CogVideoX-2B\n        hidden_states = self.norm_final(hidden_states)\n    else:\n        # CogVideoX-5B and CogvideoX1.5-5B\n        hidden_states = torch.cat([encoder_hidden_states, hidden_states], dim=1)\n        hidden_states = self.norm_final(hidden_states)\n        hidden_states = hidden_states[:, text_seq_length:]\n\n    # 5. Final block\n    hidden_states = self.norm_out(hidden_states, temb=emb)\n    hidden_states = self.proj_out(hidden_states)\n\n    # 6. Unpatchify\n    p = self.config.patch_size\n    p_t = self.config.patch_size_t\n\n    if p_t is None:\n        output = hidden_states.reshape(batch_size, num_frames, height // p, width // p, -1, p, p)\n        output = output.permute(0, 1, 4, 2, 5, 3, 6).flatten(5, 6).flatten(3, 4)\n    else:\n        output = hidden_states.reshape(\n            batch_size, (num_frames + p_t - 1) // p_t, height // p, width // p, -1, p_t, p, p\n        )\n        output = output.permute(0, 1, 5, 4, 2, 6, 3, 7).flatten(6, 7).flatten(4, 5).flatten(1, 2)\n\n    if USE_PEFT_BACKEND:\n        # remove `lora_scale` from each PEFT layer\n        unscale_lora_layers(self, lora_scale)\n\n    if not return_dict:\n        return (output,)\n    return Transformer2DModelOutput(sample=output)\n"
  },
  {
    "path": "modules/teacache/teacache_flux.py",
    "content": "from typing import Any, Dict, Optional, Union\nimport torch\nimport numpy as np\nfrom diffusers.models.modeling_outputs import Transformer2DModelOutput\nfrom diffusers.utils import USE_PEFT_BACKEND, is_torch_version, logging, scale_lora_layers, unscale_lora_layers\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\ndef teacache_flux_forward(\n        self,\n        hidden_states: torch.Tensor,\n        encoder_hidden_states: torch.Tensor = None,\n        pooled_projections: torch.Tensor = None,\n        timestep: torch.LongTensor = None,\n        img_ids: torch.Tensor = None,\n        txt_ids: torch.Tensor = None,\n        guidance: torch.Tensor = None,\n        joint_attention_kwargs: Optional[Dict[str, Any]] = None,\n        controlnet_block_samples=None,\n        controlnet_single_block_samples=None,\n        return_dict: bool = True,\n        controlnet_blocks_repeat: bool = False,\n    ) -> Union[torch.FloatTensor, Transformer2DModelOutput]:\n    \"\"\"\n    The [`FluxTransformer2DModel`] forward method.\n\n    Args:\n        hidden_states (`torch.FloatTensor` of shape `(batch size, channel, height, width)`):\n            Input `hidden_states`.\n        encoder_hidden_states (`torch.FloatTensor` of shape `(batch size, sequence_len, embed_dims)`):\n            Conditional embeddings (embeddings computed from the input conditions such as prompts) to use.\n        pooled_projections (`torch.FloatTensor` of shape `(batch_size, projection_dim)`): Embeddings projected\n            from the embeddings of input conditions.\n        timestep ( `torch.LongTensor`):\n            Used to indicate denoising step.\n        block_controlnet_hidden_states: (`list` of `torch.Tensor`):\n            A list of tensors that if specified are added to the residuals of transformer blocks.\n        joint_attention_kwargs (`dict`, *optional*):\n            A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n            `self.processor` in\n            [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n        return_dict (`bool`, *optional*, defaults to `True`):\n            Whether or not to return a [`~models.transformer_2d.Transformer2DModelOutput`] instead of a plain\n            tuple.\n\n    Returns:\n        If `return_dict` is True, an [`~models.transformer_2d.Transformer2DModelOutput`] is returned, otherwise a\n        `tuple` where the first element is the sample tensor.\n    \"\"\"\n    if joint_attention_kwargs is not None:\n        joint_attention_kwargs = joint_attention_kwargs.copy()\n        lora_scale = joint_attention_kwargs.pop(\"scale\", 1.0)\n    else:\n        lora_scale = 1.0\n\n    if USE_PEFT_BACKEND:\n        # weight the lora layers by setting `lora_scale` for each PEFT layer\n        scale_lora_layers(self, lora_scale)\n    else:\n        if joint_attention_kwargs is not None and joint_attention_kwargs.get(\"scale\", None) is not None:\n            logger.warning(\n                \"Passing `scale` via `joint_attention_kwargs` when not using the PEFT backend is ineffective.\"\n            )\n\n    hidden_states = self.x_embedder(hidden_states)\n\n    timestep = timestep.to(hidden_states.dtype) * 1000\n    if guidance is not None:\n        guidance = guidance.to(hidden_states.dtype) * 1000\n    else:\n        guidance = None\n\n    temb = (\n        self.time_text_embed(timestep, pooled_projections)\n        if guidance is None\n        else self.time_text_embed(timestep, guidance, pooled_projections)\n    )\n    encoder_hidden_states = self.context_embedder(encoder_hidden_states)\n\n    if txt_ids.ndim == 3:\n        logger.warning(\n            \"Passing `txt_ids` 3d torch.Tensor is deprecated.\"\n            \"Please remove the batch dimension and pass it as a 2d torch Tensor\"\n        )\n        txt_ids = txt_ids[0]\n    if img_ids.ndim == 3:\n        logger.warning(\n            \"Passing `img_ids` 3d torch.Tensor is deprecated.\"\n            \"Please remove the batch dimension and pass it as a 2d torch Tensor\"\n        )\n        img_ids = img_ids[0]\n\n    ids = torch.cat((txt_ids, img_ids), dim=0)\n    image_rotary_emb = self.pos_embed(ids)\n\n    if joint_attention_kwargs is not None and \"ip_adapter_image_embeds\" in joint_attention_kwargs:\n        ip_adapter_image_embeds = joint_attention_kwargs.pop(\"ip_adapter_image_embeds\")\n        ip_hidden_states = self.encoder_hid_proj(ip_adapter_image_embeds)\n        joint_attention_kwargs.update({\"ip_hidden_states\": ip_hidden_states})\n\n    if self.enable_teacache:\n        inp = hidden_states.clone()\n        temb_ = temb.clone()\n        modulated_inp, _gate_msa, _shift_mlp, _scale_mlp, _gate_mlp = self.transformer_blocks[0].norm1(inp, emb=temb_)\n        if self.cnt == 0 or self.cnt == self.num_steps-1:\n            should_calc = True\n            self.accumulated_rel_l1_distance = 0\n        else:\n            coefficients = [4.98651651e+02, -2.83781631e+02,  5.58554382e+01, -3.82021401e+00, 2.64230861e-01]\n            rescale_func = np.poly1d(coefficients)\n            self.accumulated_rel_l1_distance += rescale_func(((modulated_inp-self.previous_modulated_input).abs().mean() / self.previous_modulated_input.abs().mean()).cpu().item())\n            if self.accumulated_rel_l1_distance < self.rel_l1_thresh:\n                should_calc = False\n            else:\n                should_calc = True\n                self.accumulated_rel_l1_distance = 0\n        self.previous_modulated_input = modulated_inp\n        self.cnt += 1\n        if self.cnt == self.num_steps:\n            self.cnt = 0\n\n    if self.enable_teacache:\n        if not should_calc:\n            hidden_states += self.previous_residual\n        else:\n            ori_hidden_states = hidden_states.clone()\n            for index_block, block in enumerate(self.transformer_blocks):\n                if torch.is_grad_enabled() and self.gradient_checkpointing:\n\n                    def create_custom_forward4(module, return_dict=None):\n                        def custom_forward(*inputs):\n                            if return_dict is not None:\n                                return module(*inputs, return_dict=return_dict)\n                            else:\n                                return module(*inputs)\n\n                        return custom_forward\n\n                    ckpt_kwargs: Dict[str, Any] = {\"use_reentrant\": False} if is_torch_version(\">=\", \"1.11.0\") else {}\n                    encoder_hidden_states, hidden_states = torch.utils.checkpoint.checkpoint(\n                        create_custom_forward4(block),\n                        hidden_states,\n                        encoder_hidden_states,\n                        temb,\n                        image_rotary_emb,\n                        **ckpt_kwargs,\n                    )\n\n                else:\n                    encoder_hidden_states, hidden_states = block(\n                        hidden_states=hidden_states,\n                        encoder_hidden_states=encoder_hidden_states,\n                        temb=temb,\n                        image_rotary_emb=image_rotary_emb,\n                        joint_attention_kwargs=joint_attention_kwargs,\n                    )\n\n                # controlnet residual\n                if controlnet_block_samples is not None:\n                    interval_control = len(self.transformer_blocks) / len(controlnet_block_samples)\n                    interval_control = int(np.ceil(interval_control))\n                    # For Xlabs ControlNet.\n                    if controlnet_blocks_repeat:\n                        hidden_states = (\n                            hidden_states + controlnet_block_samples[index_block % len(controlnet_block_samples)]\n                        )\n                    else:\n                        hidden_states = hidden_states + controlnet_block_samples[index_block // interval_control]\n            hidden_states = torch.cat([encoder_hidden_states, hidden_states], dim=1)\n\n            for index_block, block in enumerate(self.single_transformer_blocks):\n                if torch.is_grad_enabled() and self.gradient_checkpointing:\n\n                    def create_custom_forward2(module, return_dict=None):\n                        def custom_forward(*inputs):\n                            if return_dict is not None:\n                                return module(*inputs, return_dict=return_dict)\n                            else:\n                                return module(*inputs)\n\n                        return custom_forward\n\n                    ckpt_kwargs: Dict[str, Any] = {\"use_reentrant\": False} if is_torch_version(\">=\", \"1.11.0\") else {}\n                    hidden_states = torch.utils.checkpoint.checkpoint(\n                        create_custom_forward2(block),\n                        hidden_states,\n                        temb,\n                        image_rotary_emb,\n                        **ckpt_kwargs,\n                    )\n\n                else:\n                    hidden_states = block(\n                        hidden_states=hidden_states,\n                        temb=temb,\n                        image_rotary_emb=image_rotary_emb,\n                        joint_attention_kwargs=joint_attention_kwargs,\n                    )\n\n                # controlnet residual\n                if controlnet_single_block_samples is not None:\n                    interval_control = len(self.single_transformer_blocks) / len(controlnet_single_block_samples)\n                    interval_control = int(np.ceil(interval_control))\n                    hidden_states[:, encoder_hidden_states.shape[1] :, ...] = (\n                        hidden_states[:, encoder_hidden_states.shape[1] :, ...]\n                        + controlnet_single_block_samples[index_block // interval_control]\n                    )\n\n            hidden_states = hidden_states[:, encoder_hidden_states.shape[1] :, ...]\n            self.previous_residual = hidden_states - ori_hidden_states\n    else:\n        for index_block, block in enumerate(self.transformer_blocks):\n            if torch.is_grad_enabled() and self.gradient_checkpointing:\n\n                def create_custom_forward1(module, return_dict=None):\n                    def custom_forward(*inputs):\n                        if return_dict is not None:\n                            return module(*inputs, return_dict=return_dict)\n                        else:\n                            return module(*inputs)\n\n                    return custom_forward\n\n                ckpt_kwargs: Dict[str, Any] = {\"use_reentrant\": False} if is_torch_version(\">=\", \"1.11.0\") else {}\n                encoder_hidden_states, hidden_states = torch.utils.checkpoint.checkpoint(\n                    create_custom_forward1(block),\n                    hidden_states,\n                    encoder_hidden_states,\n                    temb,\n                    image_rotary_emb,\n                    **ckpt_kwargs,\n                )\n\n            else:\n                encoder_hidden_states, hidden_states = block(\n                    hidden_states=hidden_states,\n                    encoder_hidden_states=encoder_hidden_states,\n                    temb=temb,\n                    image_rotary_emb=image_rotary_emb,\n                    joint_attention_kwargs=joint_attention_kwargs,\n                )\n\n            # controlnet residual\n            if controlnet_block_samples is not None:\n                interval_control = len(self.transformer_blocks) / len(controlnet_block_samples)\n                interval_control = int(np.ceil(interval_control))\n                # For Xlabs ControlNet.\n                if controlnet_blocks_repeat:\n                    hidden_states = (\n                        hidden_states + controlnet_block_samples[index_block % len(controlnet_block_samples)]\n                    )\n                else:\n                    hidden_states = hidden_states + controlnet_block_samples[index_block // interval_control]\n        hidden_states = torch.cat([encoder_hidden_states, hidden_states], dim=1)\n\n        for index_block, block in enumerate(self.single_transformer_blocks):\n            if torch.is_grad_enabled() and self.gradient_checkpointing:\n\n                def create_custom_forward3(module, return_dict=None):\n                    def custom_forward(*inputs):\n                        if return_dict is not None:\n                            return module(*inputs, return_dict=return_dict)\n                        else:\n                            return module(*inputs)\n\n                    return custom_forward\n\n                ckpt_kwargs: Dict[str, Any] = {\"use_reentrant\": False} if is_torch_version(\">=\", \"1.11.0\") else {}\n                hidden_states = torch.utils.checkpoint.checkpoint(\n                    create_custom_forward3(block),\n                    hidden_states,\n                    temb,\n                    image_rotary_emb,\n                    **ckpt_kwargs,\n                )\n\n            else:\n                hidden_states = block(\n                    hidden_states=hidden_states,\n                    temb=temb,\n                    image_rotary_emb=image_rotary_emb,\n                    joint_attention_kwargs=joint_attention_kwargs,\n                )\n\n            # controlnet residual\n            if controlnet_single_block_samples is not None:\n                interval_control = len(self.single_transformer_blocks) / len(controlnet_single_block_samples)\n                interval_control = int(np.ceil(interval_control))\n                hidden_states[:, encoder_hidden_states.shape[1] :, ...] = (\n                    hidden_states[:, encoder_hidden_states.shape[1] :, ...]\n                    + controlnet_single_block_samples[index_block // interval_control]\n                )\n\n        hidden_states = hidden_states[:, encoder_hidden_states.shape[1] :, ...]\n\n    hidden_states = self.norm_out(hidden_states, temb)\n    output = self.proj_out(hidden_states)\n\n    if USE_PEFT_BACKEND:\n        # remove `lora_scale` from each PEFT layer\n        unscale_lora_layers(self, lora_scale)\n\n    if not return_dict:\n        return (output,)\n\n    return Transformer2DModelOutput(sample=output)\n"
  },
  {
    "path": "modules/teacache/teacache_hidream.py",
    "content": "from typing import Any, Dict, List, Optional, Tuple\nfrom diffusers.models.modeling_outputs import Transformer2DModelOutput\nfrom diffusers.utils import logging, deprecate, USE_PEFT_BACKEND, logging, scale_lora_layers, unscale_lora_layers\n\nimport torch\nimport numpy as np\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\ndef teacache_hidream_forward(\n    self,\n    hidden_states: torch.Tensor,\n    timesteps: torch.LongTensor = None,\n    encoder_hidden_states_t5: torch.Tensor = None,\n    encoder_hidden_states_llama3: torch.Tensor = None,\n    pooled_embeds: torch.Tensor = None,\n    img_ids: Optional[torch.Tensor] = None,\n    img_sizes: Optional[List[Tuple[int, int]]] = None,\n    hidden_states_masks: Optional[torch.Tensor] = None,\n    attention_kwargs: Optional[Dict[str, Any]] = None,\n    return_dict: bool = True,\n    **kwargs,\n):\n    encoder_hidden_states = kwargs.get(\"encoder_hidden_states\", None)\n\n    if encoder_hidden_states is not None:\n        deprecation_message = \"The `encoder_hidden_states` argument is deprecated. Please use `encoder_hidden_states_t5` and `encoder_hidden_states_llama3` instead.\"\n        deprecate(\"encoder_hidden_states\", \"0.35.0\", deprecation_message)\n        encoder_hidden_states_t5 = encoder_hidden_states[0]\n        encoder_hidden_states_llama3 = encoder_hidden_states[1]\n\n    if img_ids is not None and img_sizes is not None and hidden_states_masks is None:\n        deprecation_message = (\n            \"Passing `img_ids` and `img_sizes` with unpachified `hidden_states` is deprecated and will be ignored.\"\n        )\n        deprecate(\"img_ids\", \"0.35.0\", deprecation_message)\n\n    if hidden_states_masks is not None and (img_ids is None or img_sizes is None):\n        raise ValueError(\"if `hidden_states_masks` is passed, `img_ids` and `img_sizes` must also be passed.\")\n    elif hidden_states_masks is not None and hidden_states.ndim != 3:\n        raise ValueError(\n            \"if `hidden_states_masks` is passed, `hidden_states` must be a 3D tensors with shape (batch_size, patch_height * patch_width, patch_size * patch_size * channels)\"\n        )\n\n    if attention_kwargs is not None:\n        attention_kwargs = attention_kwargs.copy()\n        lora_scale = attention_kwargs.pop(\"scale\", 1.0)\n    else:\n        lora_scale = 1.0\n\n    if USE_PEFT_BACKEND:\n        # weight the lora layers by setting `lora_scale` for each PEFT layer\n        scale_lora_layers(self, lora_scale)\n    else:\n        if attention_kwargs is not None and attention_kwargs.get(\"scale\", None) is not None:\n            logger.warning(\n                \"Passing `scale` via `attention_kwargs` when not using the PEFT backend is ineffective.\"\n            )\n\n    # spatial forward\n    batch_size = hidden_states.shape[0]\n    hidden_states_type = hidden_states.dtype\n\n    # Patchify the input\n    if hidden_states_masks is None:\n        hidden_states, hidden_states_masks, img_sizes, img_ids = self.patchify(hidden_states)\n\n    # Embed the hidden states\n    hidden_states = self.x_embedder(hidden_states)\n\n    # 0. time\n    timesteps = self.t_embedder(timesteps, hidden_states_type)\n    p_embedder = self.p_embedder(pooled_embeds)\n    temb = timesteps + p_embedder\n\n    encoder_hidden_states = [encoder_hidden_states_llama3[k] for k in self.config.llama_layers]\n\n    if self.caption_projection is not None:\n        new_encoder_hidden_states = []\n        for i, enc_hidden_state in enumerate(encoder_hidden_states):\n            enc_hidden_state = self.caption_projection[i](enc_hidden_state)\n            enc_hidden_state = enc_hidden_state.view(batch_size, -1, hidden_states.shape[-1])\n            new_encoder_hidden_states.append(enc_hidden_state)\n        encoder_hidden_states = new_encoder_hidden_states\n        encoder_hidden_states_t5 = self.caption_projection[-1](encoder_hidden_states_t5)\n        encoder_hidden_states_t5 = encoder_hidden_states_t5.view(batch_size, -1, hidden_states.shape[-1])\n        encoder_hidden_states.append(encoder_hidden_states_t5)\n\n    txt_ids = torch.zeros(\n        batch_size,\n        encoder_hidden_states[-1].shape[1]\n        + encoder_hidden_states[-2].shape[1]\n        + encoder_hidden_states[0].shape[1],\n        3,\n        device=img_ids.device,\n        dtype=img_ids.dtype,\n    )\n    ids = torch.cat((img_ids, txt_ids), dim=1)\n    image_rotary_emb = self.pe_embedder(ids)\n\n    # 2. Blocks\n    block_id = 0\n    initial_encoder_hidden_states = torch.cat([encoder_hidden_states[-1], encoder_hidden_states[-2]], dim=1)\n    initial_encoder_hidden_states_seq_len = initial_encoder_hidden_states.shape[1]\n\n    if self.enable_teacache:\n        modulated_inp = timesteps.clone()\n        if self.cnt < self.ret_steps:\n            should_calc = True\n            self.accumulated_rel_l1_distance = 0\n        else:\n            coefficients = [-3.13605009e+04, -7.12425503e+02, 4.91363285e+01, 8.26515490e+00, 1.08053901e-01]\n            rescale_func = np.poly1d(coefficients)\n            self.accumulated_rel_l1_distance += rescale_func(((modulated_inp-self.previous_modulated_input).abs().mean() / self.previous_modulated_input.abs().mean()).cpu().item())\n            if self.accumulated_rel_l1_distance < self.rel_l1_thresh:\n                should_calc = False\n            else:\n                should_calc = True\n                self.accumulated_rel_l1_distance = 0\n        self.previous_modulated_input = modulated_inp\n        self.cnt += 1\n        if self.cnt == self.num_steps:\n            self.cnt = 0\n\n    if self.enable_teacache:\n        if not should_calc:\n            hidden_states += self.previous_residual\n        else:\n            # 2. Blocks\n            ori_hidden_states = hidden_states.clone()\n            for bid, block in enumerate(self.double_stream_blocks):\n                cur_llama31_encoder_hidden_states = encoder_hidden_states[block_id]\n                cur_encoder_hidden_states = torch.cat(\n                    [initial_encoder_hidden_states, cur_llama31_encoder_hidden_states], dim=1\n                )\n                if torch.is_grad_enabled() and self.gradient_checkpointing:\n                    hidden_states, initial_encoder_hidden_states = self._gradient_checkpointing_func(\n                        block,\n                        hidden_states,\n                        hidden_states_masks,\n                        cur_encoder_hidden_states,\n                        temb,\n                        image_rotary_emb,\n                    )\n                else:\n                    hidden_states, initial_encoder_hidden_states = block(\n                        hidden_states=hidden_states,\n                        hidden_states_masks=hidden_states_masks,\n                        encoder_hidden_states=cur_encoder_hidden_states,\n                        temb=temb,\n                        image_rotary_emb=image_rotary_emb,\n                    )\n                initial_encoder_hidden_states = initial_encoder_hidden_states[:, :initial_encoder_hidden_states_seq_len]\n                block_id += 1\n\n            image_tokens_seq_len = hidden_states.shape[1]\n            hidden_states = torch.cat([hidden_states, initial_encoder_hidden_states], dim=1)\n            hidden_states_seq_len = hidden_states.shape[1]\n            if hidden_states_masks is not None:\n                encoder_attention_mask_ones = torch.ones(\n                    (batch_size, initial_encoder_hidden_states.shape[1] + cur_llama31_encoder_hidden_states.shape[1]),\n                    device=hidden_states_masks.device,\n                    dtype=hidden_states_masks.dtype,\n                )\n                hidden_states_masks = torch.cat([hidden_states_masks, encoder_attention_mask_ones], dim=1)\n\n            for bid, block in enumerate(self.single_stream_blocks):\n                cur_llama31_encoder_hidden_states = encoder_hidden_states[block_id]\n                hidden_states = torch.cat([hidden_states, cur_llama31_encoder_hidden_states], dim=1)\n                if torch.is_grad_enabled() and self.gradient_checkpointing:\n                    hidden_states = self._gradient_checkpointing_func(\n                        block,\n                        hidden_states,\n                        hidden_states_masks,\n                        None,\n                        temb,\n                        image_rotary_emb,\n                    )\n                else:\n                    hidden_states = block(\n                        hidden_states=hidden_states,\n                        hidden_states_masks=hidden_states_masks,\n                        encoder_hidden_states=None,\n                        temb=temb,\n                        image_rotary_emb=image_rotary_emb,\n                    )\n                hidden_states = hidden_states[:, :hidden_states_seq_len]\n                block_id += 1\n\n            hidden_states = hidden_states[:, :image_tokens_seq_len, ...]\n            self.previous_residual = hidden_states - ori_hidden_states\n    else:\n        for bid, block in enumerate(self.double_stream_blocks):\n            cur_llama31_encoder_hidden_states = encoder_hidden_states[block_id]\n            cur_encoder_hidden_states = torch.cat(\n                [initial_encoder_hidden_states, cur_llama31_encoder_hidden_states], dim=1\n            )\n            if torch.is_grad_enabled() and self.gradient_checkpointing:\n                hidden_states, initial_encoder_hidden_states = self._gradient_checkpointing_func(\n                    block,\n                    hidden_states,\n                    hidden_states_masks,\n                    cur_encoder_hidden_states,\n                    temb,\n                    image_rotary_emb,\n                )\n            else:\n                hidden_states, initial_encoder_hidden_states = block(\n                    hidden_states=hidden_states,\n                    hidden_states_masks=hidden_states_masks,\n                    encoder_hidden_states=cur_encoder_hidden_states,\n                    temb=temb,\n                    image_rotary_emb=image_rotary_emb,\n                )\n            initial_encoder_hidden_states = initial_encoder_hidden_states[:, :initial_encoder_hidden_states_seq_len]\n            block_id += 1\n\n        image_tokens_seq_len = hidden_states.shape[1]\n        hidden_states = torch.cat([hidden_states, initial_encoder_hidden_states], dim=1)\n        hidden_states_seq_len = hidden_states.shape[1]\n        if hidden_states_masks is not None:\n            encoder_attention_mask_ones = torch.ones(\n                (batch_size, initial_encoder_hidden_states.shape[1] + cur_llama31_encoder_hidden_states.shape[1]),\n                device=hidden_states_masks.device,\n                dtype=hidden_states_masks.dtype,\n            )\n            hidden_states_masks = torch.cat([hidden_states_masks, encoder_attention_mask_ones], dim=1)\n\n        for bid, block in enumerate(self.single_stream_blocks):\n            cur_llama31_encoder_hidden_states = encoder_hidden_states[block_id]\n            hidden_states = torch.cat([hidden_states, cur_llama31_encoder_hidden_states], dim=1)\n            if torch.is_grad_enabled() and self.gradient_checkpointing:\n                hidden_states = self._gradient_checkpointing_func(\n                    block,\n                    hidden_states,\n                    hidden_states_masks,\n                    None,\n                    temb,\n                    image_rotary_emb,\n                )\n            else:\n                hidden_states = block(\n                    hidden_states=hidden_states,\n                    hidden_states_masks=hidden_states_masks,\n                    encoder_hidden_states=None,\n                    temb=temb,\n                    image_rotary_emb=image_rotary_emb,\n                )\n            hidden_states = hidden_states[:, :hidden_states_seq_len]\n            block_id += 1\n\n        hidden_states = hidden_states[:, :image_tokens_seq_len, ...]\n\n    output = self.final_layer(hidden_states, temb)\n    output = self.unpatchify(output, img_sizes, self.training)\n\n    if USE_PEFT_BACKEND:\n        # remove `lora_scale` from each PEFT layer\n        unscale_lora_layers(self, lora_scale)\n\n    if not return_dict:\n        return (output,)\n    return Transformer2DModelOutput(sample=output)\n"
  },
  {
    "path": "modules/teacache/teacache_ltx.py",
    "content": "from typing import Any, Dict, Optional, Tuple\nimport torch\nfrom diffusers.utils import USE_PEFT_BACKEND, is_torch_version, scale_lora_layers, unscale_lora_layers, logging\nfrom diffusers.models.modeling_outputs import Transformer2DModelOutput\nimport numpy as np\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\ndef teacache_ltx_forward(\n        self,\n        hidden_states: torch.Tensor,\n        encoder_hidden_states: torch.Tensor,\n        timestep: torch.LongTensor,\n        encoder_attention_mask: torch.Tensor,\n        num_frames: int,\n        height: int,\n        width: int,\n        rope_interpolation_scale: Optional[Tuple[float, float, float]] = None,\n        attention_kwargs: Optional[Dict[str, Any]] = None,\n        return_dict: bool = True,\n    ) -> torch.Tensor:\n    if attention_kwargs is not None:\n        attention_kwargs = attention_kwargs.copy()\n        lora_scale = attention_kwargs.pop(\"scale\", 1.0)\n    else:\n        lora_scale = 1.0\n\n    if USE_PEFT_BACKEND:\n        # weight the lora layers by setting `lora_scale` for each PEFT layer\n        scale_lora_layers(self, lora_scale)\n    else:\n        if attention_kwargs is not None and attention_kwargs.get(\"scale\", None) is not None:\n            logger.warning(\n                \"Passing `scale` via `attention_kwargs` when not using the PEFT backend is ineffective.\"\n            )\n\n    image_rotary_emb = self.rope(hidden_states, num_frames, height, width, rope_interpolation_scale)\n\n    # convert encoder_attention_mask to a bias the same way we do for attention_mask\n    if encoder_attention_mask is not None and encoder_attention_mask.ndim == 2:\n        encoder_attention_mask = (1 - encoder_attention_mask.to(hidden_states.dtype)) * -10000.0\n        encoder_attention_mask = encoder_attention_mask.unsqueeze(1)\n\n    batch_size = hidden_states.size(0)\n    hidden_states = self.proj_in(hidden_states)\n\n    temb, embedded_timestep = self.time_embed(\n        timestep.flatten(),\n        batch_size=batch_size,\n        hidden_dtype=hidden_states.dtype,\n    )\n\n    temb = temb.view(batch_size, -1, temb.size(-1))\n    embedded_timestep = embedded_timestep.view(batch_size, -1, embedded_timestep.size(-1))\n\n    encoder_hidden_states = self.caption_projection(encoder_hidden_states)\n    encoder_hidden_states = encoder_hidden_states.view(batch_size, -1, hidden_states.size(-1))\n\n    if self.enable_teacache:\n        inp = hidden_states.clone()\n        temb_ = temb.clone()\n        inp = self.transformer_blocks[0].norm1(inp)\n        num_ada_params = self.transformer_blocks[0].scale_shift_table.shape[0]\n        ada_values = self.transformer_blocks[0].scale_shift_table[None, None] + temb_.reshape(batch_size, temb_.size(1), num_ada_params, -1)\n        shift_msa, scale_msa, gate_msa, shift_mlp, scale_mlp, gate_mlp = ada_values.unbind(dim=2)\n        modulated_inp = inp * (1 + scale_msa) + shift_msa\n        if self.cnt == 0 or self.cnt == self.num_steps-1:\n            should_calc = True\n            self.accumulated_rel_l1_distance = 0\n        else:\n            coefficients = [2.14700694e+01, -1.28016453e+01,  2.31279151e+00,  7.92487521e-01, 9.69274326e-03]\n            rescale_func = np.poly1d(coefficients)\n            self.accumulated_rel_l1_distance += rescale_func(((modulated_inp-self.previous_modulated_input).abs().mean() / self.previous_modulated_input.abs().mean()).cpu().item())\n            if self.accumulated_rel_l1_distance < self.rel_l1_thresh:\n                should_calc = False\n            else:\n                should_calc = True\n                self.accumulated_rel_l1_distance = 0\n        self.previous_modulated_input = modulated_inp\n        self.cnt += 1\n        if self.cnt == self.num_steps:\n            self.cnt = 0\n\n    if self.enable_teacache:\n        if not should_calc:\n            hidden_states += self.previous_residual\n        else:\n            ori_hidden_states = hidden_states.clone()\n            for block in self.transformer_blocks:\n                if torch.is_grad_enabled() and self.gradient_checkpointing:\n\n                    def create_custom_forward(module, return_dict=None):\n                        def custom_forward(*inputs):\n                            if return_dict is not None:\n                                return module(*inputs, return_dict=return_dict)\n                            else:\n                                return module(*inputs)\n\n                        return custom_forward\n\n                    ckpt_kwargs: Dict[str, Any] = {\"use_reentrant\": False} if is_torch_version(\">=\", \"1.11.0\") else {}\n                    hidden_states = torch.utils.checkpoint.checkpoint(\n                        create_custom_forward(block),\n                        hidden_states,\n                        encoder_hidden_states,\n                        temb,\n                        image_rotary_emb,\n                        encoder_attention_mask,\n                        **ckpt_kwargs,\n                    )\n                else:\n                    hidden_states = block(\n                        hidden_states=hidden_states,\n                        encoder_hidden_states=encoder_hidden_states,\n                        temb=temb,\n                        image_rotary_emb=image_rotary_emb,\n                        encoder_attention_mask=encoder_attention_mask,\n                    )\n\n            scale_shift_values = self.scale_shift_table[None, None] + embedded_timestep[:, :, None]\n            shift, scale = scale_shift_values[:, :, 0], scale_shift_values[:, :, 1]\n\n            hidden_states = self.norm_out(hidden_states)\n            hidden_states = hidden_states * (1 + scale) + shift\n            self.previous_residual = hidden_states - ori_hidden_states\n    else:\n        for block in self.transformer_blocks:\n            if torch.is_grad_enabled() and self.gradient_checkpointing:\n\n                def create_custom_forward(module, return_dict=None):\n                    def custom_forward(*inputs):\n                        if return_dict is not None:\n                            return module(*inputs, return_dict=return_dict)\n                        else:\n                            return module(*inputs)\n\n                    return custom_forward\n\n                ckpt_kwargs: Dict[str, Any] = {\"use_reentrant\": False} if is_torch_version(\">=\", \"1.11.0\") else {}\n                hidden_states = torch.utils.checkpoint.checkpoint(\n                    create_custom_forward(block),\n                    hidden_states,\n                    encoder_hidden_states,\n                    temb,\n                    image_rotary_emb,\n                    encoder_attention_mask,\n                    **ckpt_kwargs,\n                )\n            else:\n                hidden_states = block(\n                    hidden_states=hidden_states,\n                    encoder_hidden_states=encoder_hidden_states,\n                    temb=temb,\n                    image_rotary_emb=image_rotary_emb,\n                    encoder_attention_mask=encoder_attention_mask,\n                )\n\n        scale_shift_values = self.scale_shift_table[None, None] + embedded_timestep[:, :, None]\n        shift, scale = scale_shift_values[:, :, 0], scale_shift_values[:, :, 1]\n\n        hidden_states = self.norm_out(hidden_states)\n        hidden_states = hidden_states * (1 + scale) + shift\n\n\n    output = self.proj_out(hidden_states)\n\n    if USE_PEFT_BACKEND:\n        # remove `lora_scale` from each PEFT layer\n        unscale_lora_layers(self, lora_scale)\n\n    if not return_dict:\n        return (output,)\n    return Transformer2DModelOutput(sample=output)\n"
  },
  {
    "path": "modules/teacache/teacache_lumina2.py",
    "content": "import torch\nimport torch.nn as nn\nimport numpy as np\nfrom typing import Any, Dict, Optional, Union, List\n\nfrom diffusers.models.modeling_outputs import Transformer2DModelOutput\nfrom diffusers.utils import USE_PEFT_BACKEND, logging, scale_lora_layers, unscale_lora_layers\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\ndef teacache_lumina2_forward(\n    self,\n    hidden_states: torch.Tensor,\n    timestep: torch.Tensor,\n    encoder_hidden_states: torch.Tensor,\n    encoder_attention_mask: torch.Tensor,\n    attention_kwargs: Optional[Dict[str, Any]] = None,\n    return_dict: bool = True,\n) -> Union[torch.Tensor, Transformer2DModelOutput]:\n    if attention_kwargs is not None:\n        attention_kwargs = attention_kwargs.copy()\n        lora_scale = attention_kwargs.pop(\"scale\", 1.0)\n    else:\n        lora_scale = 1.0\n    if USE_PEFT_BACKEND:\n        scale_lora_layers(self, lora_scale)\n\n    batch_size, _, height, width = hidden_states.shape\n    temb, encoder_hidden_states_processed = self.time_caption_embed(hidden_states, timestep, encoder_hidden_states)\n    (image_patch_embeddings, context_rotary_emb, noise_rotary_emb, joint_rotary_emb,\n     encoder_seq_lengths, seq_lengths) = self.rope_embedder(hidden_states, encoder_attention_mask)\n    image_patch_embeddings = self.x_embedder(image_patch_embeddings)\n    for layer in self.context_refiner:\n        encoder_hidden_states_processed = layer(encoder_hidden_states_processed, encoder_attention_mask, context_rotary_emb)\n    for layer in self.noise_refiner:\n        image_patch_embeddings = layer(image_patch_embeddings, None, noise_rotary_emb, temb)\n\n    max_seq_len = max(seq_lengths)\n    input_to_main_loop = image_patch_embeddings.new_zeros(batch_size, max_seq_len, self.config.hidden_size)\n    for i, (enc_len, seq_len_val) in enumerate(zip(encoder_seq_lengths, seq_lengths)):\n        input_to_main_loop[i, :enc_len] = encoder_hidden_states_processed[i, :enc_len]\n        input_to_main_loop[i, enc_len:seq_len_val] = image_patch_embeddings[i]\n\n    use_mask = len(set(seq_lengths)) > 1\n    attention_mask_for_main_loop_arg = None\n    if use_mask:\n        mask = input_to_main_loop.new_zeros(batch_size, max_seq_len, dtype=torch.bool)\n        for i, (enc_len, seq_len_val) in enumerate(zip(encoder_seq_lengths, seq_lengths)):\n            mask[i, :seq_len_val] = True\n        attention_mask_for_main_loop_arg = mask\n\n    should_calc = True\n    if self.enable_teacache:\n        cache_key = max_seq_len\n        if cache_key not in self.cache:\n            self.cache[cache_key] = {\n                \"accumulated_rel_l1_distance\": 0.0,\n                \"previous_modulated_input\": None,\n                \"previous_residual\": None,\n            }\n\n        current_cache = self.cache[cache_key]\n        modulated_inp, _, _, _ = self.layers[0].norm1(input_to_main_loop, temb)\n\n        if self.cnt == 0 or self.cnt == self.num_steps - 1:\n            should_calc = True\n            current_cache[\"accumulated_rel_l1_distance\"] = 0.0\n        else:\n            if current_cache[\"previous_modulated_input\"] is not None:\n                # teacache v1 coefficients:\n                coefficients = [393.76566581, -603.50993606, 209.10239044, -23.00726601, 0.86377344]\n                # teacache v2 coefficients:\n                #coefficients = [225.7042019806413, -608.8453716535591, 304.1869942338369, 124.21267720116742, -1.4089066892956552]\n                rescale_func = np.poly1d(coefficients)\n                prev_mod_input = current_cache[\"previous_modulated_input\"]\n                prev_mean = prev_mod_input.abs().mean()\n\n                if prev_mean.item() > 1e-9:\n                    rel_l1_change = ((modulated_inp - prev_mod_input).abs().mean() / prev_mean).cpu().item()\n                else:\n                    rel_l1_change = 0.0 if modulated_inp.abs().mean().item() < 1e-9 else float('inf')\n\n                current_cache[\"accumulated_rel_l1_distance\"] += rescale_func(rel_l1_change)\n\n                if current_cache[\"accumulated_rel_l1_distance\"] < self.rel_l1_thresh:\n                    should_calc = False\n                else:\n                    should_calc = True\n                    current_cache[\"accumulated_rel_l1_distance\"] = 0.0\n            else:\n                should_calc = True\n                current_cache[\"accumulated_rel_l1_distance\"] = 0.0\n\n        current_cache[\"previous_modulated_input\"] = modulated_inp.clone()\n\n        if self.uncond_seq_len is None:\n            self.uncond_seq_len = cache_key\n        if cache_key != self.uncond_seq_len:\n            self.cnt += 1\n            if self.cnt >= self.num_steps:\n                self.cnt = 0\n\n    if self.enable_teacache and not should_calc:\n        if max_seq_len in self.cache and \"previous_residual\" in self.cache[max_seq_len] and self.cache[max_seq_len][\"previous_residual\"] is not None:\n             processed_hidden_states = input_to_main_loop + self.cache[max_seq_len][\"previous_residual\"]\n        else:\n             should_calc = True\n             current_processing_states = input_to_main_loop\n             for layer in self.layers:\n                current_processing_states = layer(current_processing_states, attention_mask_for_main_loop_arg, joint_rotary_emb, temb)\n             processed_hidden_states = current_processing_states\n\n\n    if not (self.enable_teacache and not should_calc) :\n        current_processing_states = input_to_main_loop\n        for layer in self.layers:\n            current_processing_states = layer(current_processing_states, attention_mask_for_main_loop_arg, joint_rotary_emb, temb)\n\n        if self.enable_teacache:\n            if max_seq_len in self.cache:\n                 self.cache[max_seq_len][\"previous_residual\"] = current_processing_states - input_to_main_loop\n            else:\n                 logger.warning(f\"TeaCache: Cache key {max_seq_len} not found when trying to save residual.\")\n\n        processed_hidden_states = current_processing_states\n\n    output_after_norm = self.norm_out(processed_hidden_states, temb)\n    p = self.config.patch_size\n    final_output_list = []\n    for i, (enc_len, seq_len_val) in enumerate(zip(encoder_seq_lengths, seq_lengths)):\n        image_part = output_after_norm[i][enc_len:seq_len_val]\n        h_p, w_p = height // p, width // p\n        reconstructed_image = image_part.view(h_p, w_p, p, p, self.out_channels) \\\n                                        .permute(4, 0, 2, 1, 3) \\\n                                        .flatten(3, 4) \\\n                                        .flatten(1, 2)\n        final_output_list.append(reconstructed_image)\n\n    final_output_tensor = torch.stack(final_output_list, dim=0)\n\n    if USE_PEFT_BACKEND:\n        unscale_lora_layers(self, lora_scale)\n\n    if not return_dict:\n        return (final_output_tensor,)\n\n    return Transformer2DModelOutput(sample=final_output_tensor)\n"
  },
  {
    "path": "modules/teacache/teacache_mochi.py",
    "content": "from typing import Any, Dict, Optional\nimport torch\nimport numpy as np\nfrom diffusers.utils import USE_PEFT_BACKEND, is_torch_version, scale_lora_layers, unscale_lora_layers, logging\nfrom diffusers.models.modeling_outputs import Transformer2DModelOutput\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\ndef teacache_mochi_forward(\n        self,\n        hidden_states: torch.Tensor,\n        encoder_hidden_states: torch.Tensor,\n        timestep: torch.LongTensor,\n        encoder_attention_mask: torch.Tensor,\n        attention_kwargs: Optional[Dict[str, Any]] = None,\n        return_dict: bool = True,\n    ) -> torch.Tensor:\n    if attention_kwargs is not None:\n        attention_kwargs = attention_kwargs.copy()\n        lora_scale = attention_kwargs.pop(\"scale\", 1.0)\n    else:\n        lora_scale = 1.0\n\n    if USE_PEFT_BACKEND:\n        # weight the lora layers by setting `lora_scale` for each PEFT layer\n        scale_lora_layers(self, lora_scale)\n    else:\n        if attention_kwargs is not None and attention_kwargs.get(\"scale\", None) is not None:\n            logger.warning(\n                \"Passing `scale` via `attention_kwargs` when not using the PEFT backend is ineffective.\"\n            )\n\n    batch_size, num_channels, num_frames, height, width = hidden_states.shape\n    p = self.config.patch_size\n\n    post_patch_height = height // p\n    post_patch_width = width // p\n\n    temb, encoder_hidden_states = self.time_embed(\n        timestep,\n        encoder_hidden_states,\n        encoder_attention_mask,\n        hidden_dtype=hidden_states.dtype,\n    )\n\n    hidden_states = hidden_states.permute(0, 2, 1, 3, 4).flatten(0, 1)\n    hidden_states = self.patch_embed(hidden_states)\n    hidden_states = hidden_states.unflatten(0, (batch_size, -1)).flatten(1, 2)\n\n    image_rotary_emb = self.rope(\n        self.pos_frequencies,\n        num_frames,\n        post_patch_height,\n        post_patch_width,\n        device=hidden_states.device,\n        dtype=torch.float32,\n    )\n\n    if self.enable_teacache:\n        inp = hidden_states.clone()\n        temb_ = temb.clone()\n        modulated_inp, gate_msa, scale_mlp, gate_mlp = self.transformer_blocks[0].norm1(inp, temb_)\n        if self.cnt == 0 or self.cnt == self.num_steps-1:\n            should_calc = True\n            self.accumulated_rel_l1_distance = 0\n        else:\n            coefficients = [-3.51241319e+03,  8.11675948e+02, -6.09400215e+01,  2.42429681e+00, 3.05291719e-03]\n            rescale_func = np.poly1d(coefficients)\n            self.accumulated_rel_l1_distance += rescale_func(((modulated_inp-self.previous_modulated_input).abs().mean() / self.previous_modulated_input.abs().mean()).cpu().item())\n            if self.accumulated_rel_l1_distance < self.rel_l1_thresh:\n                should_calc = False\n            else:\n                should_calc = True\n                self.accumulated_rel_l1_distance = 0\n        self.previous_modulated_input = modulated_inp\n        self.cnt += 1\n        if self.cnt == self.num_steps:\n            self.cnt = 0\n\n    if self.enable_teacache:\n        if not should_calc:\n            hidden_states += self.previous_residual\n        else:\n            ori_hidden_states = hidden_states.clone()\n            for i, block in enumerate(self.transformer_blocks):\n                if torch.is_grad_enabled() and self.gradient_checkpointing:\n\n                    def create_custom_forward(module):\n                            def custom_forward(*inputs):\n                                return module(*inputs)\n\n                            return custom_forward\n\n                    ckpt_kwargs: Dict[str, Any] = {\"use_reentrant\": False} if is_torch_version(\">=\", \"1.11.0\") else {}\n                    hidden_states, encoder_hidden_states = torch.utils.checkpoint.checkpoint(\n                            create_custom_forward(block),\n                            hidden_states,\n                            encoder_hidden_states,\n                            temb,\n                            encoder_attention_mask,\n                            image_rotary_emb,\n                            **ckpt_kwargs,\n                    )\n                else:\n                    hidden_states, encoder_hidden_states = block(\n                            hidden_states=hidden_states,\n                            encoder_hidden_states=encoder_hidden_states,\n                            temb=temb,\n                            encoder_attention_mask=encoder_attention_mask,\n                            image_rotary_emb=image_rotary_emb,\n                    )\n            hidden_states = self.norm_out(hidden_states, temb)\n            self.previous_residual = hidden_states - ori_hidden_states\n    else:\n        for i, block in enumerate(self.transformer_blocks):\n                if torch.is_grad_enabled() and self.gradient_checkpointing:\n                    def create_custom_forward(module):\n                            def custom_forward(*inputs):\n                                return module(*inputs)\n\n                            return custom_forward\n\n                    ckpt_kwargs: Dict[str, Any] = {\"use_reentrant\": False} if is_torch_version(\">=\", \"1.11.0\") else {}\n                    hidden_states, encoder_hidden_states = torch.utils.checkpoint.checkpoint(\n                            create_custom_forward(block),\n                            hidden_states,\n                            encoder_hidden_states,\n                            temb,\n                            encoder_attention_mask,\n                            image_rotary_emb,\n                            **ckpt_kwargs,\n                    )\n                else:\n                    hidden_states, encoder_hidden_states = block(\n                            hidden_states=hidden_states,\n                            encoder_hidden_states=encoder_hidden_states,\n                            temb=temb,\n                            encoder_attention_mask=encoder_attention_mask,\n                            image_rotary_emb=image_rotary_emb,\n                    )\n        hidden_states = self.norm_out(hidden_states, temb)\n\n    hidden_states = self.proj_out(hidden_states)\n\n    hidden_states = hidden_states.reshape(batch_size, num_frames, post_patch_height, post_patch_width, p, p, -1)\n    hidden_states = hidden_states.permute(0, 6, 1, 2, 4, 3, 5)\n    output = hidden_states.reshape(batch_size, -1, num_frames, height, width)\n\n    if USE_PEFT_BACKEND:\n        # remove `lora_scale` from each PEFT layer\n        unscale_lora_layers(self, lora_scale)\n\n    if not return_dict:\n        return (output,)\n    return Transformer2DModelOutput(sample=output)\n"
  },
  {
    "path": "modules/textual_inversion.py",
    "content": "from typing import List, Union\nimport os\nimport time\nimport torch\nimport safetensors.torch\nfrom modules.errorlimiter import limit_errors\nfrom modules import shared, devices, errors\nfrom modules.files_cache import directory_files, directory_mtime, extension_filter\n\n\ndebug = shared.log.trace if os.environ.get('SD_TI_DEBUG', None) is not None else lambda *args, **kwargs: None\ndebug('Trace: TEXTUAL INVERSION')\nsupported_models = ['ldm', 'sd', 'sdxl']\n\n\ndef list_embeddings(*dirs):\n    is_ext = extension_filter(['.SAFETENSORS', '.PT' ])\n    is_not_preview = lambda fp: not next(iter(os.path.splitext(fp))).upper().endswith('.PREVIEW') # pylint: disable=unnecessary-lambda-assignment\n    return list(filter(lambda fp: is_ext(fp) and is_not_preview(fp) and os.stat(fp).st_size > 0, directory_files(*dirs)))\n\n\ndef open_embeddings(filename):\n    \"\"\"\n    Load Embedding files from drive. Image embeddings not currently supported.\n    \"\"\"\n    embeddings = []\n    skipped = []\n    if filename is None:\n        return None\n    filenames = list(filename)\n    exts = [\".SAFETENSORS\", '.BIN', '.PT']\n    for _filename in filenames:\n        # debug(f'Embedding check: {filename}')\n        fullname = _filename\n        _filename = os.path.basename(fullname)\n        fn, ext = os.path.splitext(_filename)\n        name = os.path.basename(fn)\n        embedding = Embedding(vec=[], name=name, filename=fullname)\n        try:\n            if ext.upper() not in exts:\n                debug(f'extension `{ext}` is invalid, expected one of: {exts}')\n                skipped.append(name)\n                continue\n            if ext.upper() in ['.SAFETENSORS']:\n                with safetensors.torch.safe_open(embedding.filename, framework=\"pt\") as f:  # type: ignore\n                    for k in f.keys():\n                        embedding.vec.append(f.get_tensor(k))\n            else:  # fallback for sd1.5 pt embeddings\n                vectors = torch.load(fullname, map_location=devices.device)[\"string_to_param\"][\"*\"]\n                embedding.vec.append(vectors)\n            embedding.tokens = [embedding.name if i == 0 else f\"{embedding.name}_{i}\" for i in range(len(embedding.vec[0]))]\n        except Exception as e:\n            debug(f\"Could not load embedding file {fullname} {e}\")\n        if embedding.vec:\n            embeddings.append(embedding)\n        else:\n            skipped.append(embedding)\n    return embeddings, skipped\n\n\ndef convert_bundled(data):\n    \"\"\"\n    Bundled embeddings are passed as a dict from lora loading, convert to Embedding objects and pass back as list.\n    \"\"\"\n    embeddings = []\n    for key in data.keys():\n        embedding = Embedding(vec=[], name=key, filename=None)\n        for vector in data[key].values():\n            embedding.vec.append(vector)\n        embedding.tokens = [embedding.name if i == 0 else f\"{embedding.name}_{i}\" for i in range(len(embedding.vec[0]))]\n        embeddings.append(embedding)\n    return embeddings, []\n\n\ndef get_text_encoders():\n    \"\"\"\n    Select all text encoder and tokenizer pairs from known pipelines, and index them based on the dimensionality of\n    their embedding layers.\n    \"\"\"\n    pipe = shared.sd_model\n    te_names = [\"text_encoder\", \"text_encoder_2\", \"text_encoder_3\"]\n    tokenizers_names = [\"tokenizer\", \"tokenizer_2\", \"tokenizer_3\"]\n    text_encoders = []\n    tokenizers = []\n    hidden_sizes = []\n    for te, tok in zip(te_names, tokenizers_names):\n        text_encoder = getattr(pipe, te, None)\n        if text_encoder is None:\n            continue\n        tokenizer = getattr(pipe, tok, None)\n        hidden_size = text_encoder.get_input_embeddings().weight.data.shape[-1] or None\n        if all([text_encoder, tokenizer, hidden_size]):\n            text_encoders.append(text_encoder)\n            tokenizers.append(tokenizer)\n            hidden_sizes.append(hidden_size)\n    return text_encoders, tokenizers, hidden_sizes\n\n\ndef deref_tokenizers(tokens, tokenizers):\n    \"\"\"\n    Bundled embeddings may have the same name as a seperately loaded embedding, or there may be multiple LoRA with\n    differing numbers of vectors. By editing the AddedToken objects, and deleting the dict keys pointing to them,\n    we can ensure that a smaller embedding will not get tokenized as itself, plus the remaining vectors of the previous.\n    \"\"\"\n    for tokenizer in tokenizers:\n        if len(tokens) > 1:\n            last_token = tokens[-1]\n            suffix = int(last_token.split(\"_\")[-1])\n            newsuffix = suffix + 1\n            while last_token.replace(str(suffix), str(newsuffix)) in tokenizer.get_vocab():\n                idx = tokenizer.convert_tokens_to_ids(last_token.replace(str(suffix), str(newsuffix)))\n                debug(f\"Textual inversion: deref idx={idx}\")\n                del tokenizer._added_tokens_encoder[last_token.replace(str(suffix), str(newsuffix))] # pylint: disable=protected-access\n                tokenizer._added_tokens_decoder[idx].content = str(time.time()) # pylint: disable=protected-access\n                newsuffix += 1\n\n\ndef insert_tokens(embeddings: list, tokenizers: list):\n    \"\"\"\n    Add all tokens to each tokenizer in the list, with one call to each.\n    \"\"\"\n    tokens = []\n    for embedding in embeddings:\n        if embedding is not None:\n            tokens += embedding.tokens\n    for tokenizer in tokenizers:\n        tokenizer.add_tokens(tokens)\n\n\ndef insert_vectors(embedding, tokenizers, text_encoders, hiddensizes):\n    \"\"\"\n    Insert embeddings into the input embedding layer of a list of text encoders, matched based on embedding size,\n    not by name.\n    Future warning, if another text encoder becomes available with embedding dimensions in [768,1280,4096]\n    this may cause collisions.\n    \"\"\"\n    with devices.inference_context():\n        for vector, size in zip(embedding.vec, embedding.vector_sizes):\n            if size not in hiddensizes:\n                continue\n            idx = hiddensizes.index(size)\n            unk_token_id = tokenizers[idx].convert_tokens_to_ids(tokenizers[idx].unk_token)\n            if text_encoders[idx].get_input_embeddings().weight.data.shape[0] != len(tokenizers[idx]):\n                text_encoders[idx].resize_token_embeddings(len(tokenizers[idx]))\n            for token, v in zip(embedding.tokens, vector.unbind()):\n                token_id = tokenizers[idx].convert_tokens_to_ids(token)\n                if token_id > unk_token_id:\n                    text_encoders[idx].get_input_embeddings().weight.data[token_id] = v\n\n\nclass Embedding:\n    def __init__(self, vec, name, filename=None, step=None):\n        self.vec = vec\n        self.name = name\n        self.tag = name\n        self.step = step\n        self.filename = filename\n        self.basename = os.path.relpath(filename, shared.opts.embeddings_dir) if filename is not None else None\n        self.shape = None\n        self.vectors = 0\n        self.cached_checksum = None\n        self.sd_checkpoint = None\n        self.sd_checkpoint_name = None\n        self.optimizer_state_dict = None\n        self.tokens = None\n\n    def save(self, filename):\n        embedding_data = {\n            \"string_to_token\": {\"*\": 265},\n            \"string_to_param\": {\"*\": self.vec},\n            \"name\": self.name,\n            \"step\": self.step,\n            \"sd_checkpoint\": self.sd_checkpoint,\n            \"sd_checkpoint_name\": self.sd_checkpoint_name,\n        }\n        torch.save(embedding_data, filename)\n        if shared.opts.save_optimizer_state and self.optimizer_state_dict is not None:\n            optimizer_saved_dict = {\n                'hash': self.checksum(),\n                'optimizer_state_dict': self.optimizer_state_dict,\n            }\n            torch.save(optimizer_saved_dict, f\"{filename}.optim\")\n\n    def checksum(self):\n        if self.cached_checksum is not None:\n            return self.cached_checksum\n        def const_hash(a):\n            r = 0\n            for v in a:\n                r = (r * 281 ^ int(v) * 997) & 0xFFFFFFFF\n            return r\n        self.cached_checksum = f'{const_hash(self.vec.reshape(-1) * 100) & 0xffff:04x}'\n        return self.cached_checksum\n\n\nclass DirWithTextualInversionEmbeddings:\n    def __init__(self, path):\n        self.path = path\n        self.mtime = None\n\n    def has_changed(self):\n        if not os.path.isdir(self.path):\n            return False\n        return directory_mtime(self.path) != self.mtime\n\n    def update(self):\n        if not os.path.isdir(self.path):\n            return\n        self.mtime = directory_mtime(self.path)\n\n\ndef convert_embedding(tensor, text_encoder, text_encoder_2):\n    \"\"\"\n    Given a tensor of shape (b, embed_dim) and two text encoders whose tokenizers match, return a tensor with\n    approximately mathcing meaning, or padding if the input tensor is dissimilar to any frozen text embed\n    \"\"\"\n    with torch.no_grad():\n        vectors = []\n        clip_l_embeds = text_encoder.get_input_embeddings().weight.data.clone().to(device=devices.device)\n        tensor = tensor.to(device=devices.device)\n        for vec in tensor:\n            values, indices = torch.max(torch.nan_to_num(torch.cosine_similarity(vec.unsqueeze(0), clip_l_embeds)), 0)\n            if values < 0.707:  # Arbitrary similarity to cutoff, here 45 degrees\n                indices *= 0  # Use SDXL padding vector 0\n            vectors.append(indices)\n        vectors = torch.stack(vectors).to(text_encoder_2.device)\n        output = text_encoder_2.get_input_embeddings().weight.data[vectors]\n    return output\n\n\nclass EmbeddingDatabase:\n    def __init__(self):\n        self.ids_lookup = {}\n        self.word_embeddings = {}\n        self.skipped_embeddings = {}\n        self.embedding_dirs = {}\n        self.previously_displayed_embeddings = ()\n        self.embeddings_used = []\n\n    def add_embedding_dir(self, path):\n        self.embedding_dirs[path] = DirWithTextualInversionEmbeddings(path)\n\n    def register_embedding(self, embedding, model):\n        self.word_embeddings[embedding.name] = embedding\n        if hasattr(model, 'cond_stage_model'):\n            ids = model.cond_stage_model.tokenize([embedding.name])[0]\n        elif hasattr(model, 'tokenizer'):\n            ids = model.tokenizer.convert_tokens_to_ids(embedding.name)\n        if type(ids) != list:\n            ids = [ids]\n        first_id = ids[0]\n        if first_id not in self.ids_lookup:\n            self.ids_lookup[first_id] = []\n        self.ids_lookup[first_id] = sorted(self.ids_lookup[first_id] + [(ids, embedding)], key=lambda x: len(x[0]), reverse=True)\n        return embedding\n\n    def load_diffusers_embedding(self, filename: Union[str, List[str]] = None, data: dict = None):\n        \"\"\"\n        File names take precidence over bundled embeddings passed as a dict.\n        Bundled embeddings are automatically set to overwrite previous embeddings.\n        \"\"\"\n        with limit_errors(\"load_diffusers_embedding\") as elimit:\n            overwrite = bool(data)\n            if not shared.sd_loaded:\n                return\n            if not shared.opts.diffusers_enable_embed:\n                return\n            embeddings, skipped = open_embeddings(filename) or convert_bundled(data)\n            for skip in skipped:\n                self.skipped_embeddings[skip.name] = skipped\n            if not embeddings:\n                return\n            text_encoders, tokenizers, hiddensizes = get_text_encoders()\n            if not all([text_encoders, tokenizers, hiddensizes]):\n                return\n            for embedding in embeddings:\n                try:\n                    embedding.vector_sizes = [v.shape[-1] for v in embedding.vec]\n                    if shared.opts.diffusers_convert_embed and 768 in hiddensizes and 1280 in hiddensizes and 1280 not in embedding.vector_sizes and 768 in embedding.vector_sizes:\n                        embedding.vec.append(convert_embedding(embedding.vec[embedding.vector_sizes.index(768)], text_encoders[hiddensizes.index(768)], text_encoders[hiddensizes.index(1280)]))\n                        embedding.vector_sizes.append(1280)\n                    if (not all(vs in hiddensizes for vs in embedding.vector_sizes) or  # Skip SD2.1 in SD1.5/SDXL/SD3 vis versa\n                            len(embedding.vector_sizes) > len(hiddensizes) or  # Skip SDXL/SD3 in SD1.5\n                            (len(embedding.vector_sizes) < len(hiddensizes) and len(embedding.vector_sizes) != 2)):  # SD3 no T5\n                        embedding.tokens = []\n                        self.skipped_embeddings[embedding.name] = embedding\n                except Exception as e:\n                    shared.log.error(f'Load embedding invalid: name=\"{embedding.name}\" fn=\"{filename}\" {e}')\n                    self.skipped_embeddings[embedding.name] = embedding\n                    elimit()\n            if overwrite:\n                shared.log.info(f\"Load bundled embeddings: {list(data.keys())}\")\n                for embedding in embeddings:\n                    if embedding.name not in self.skipped_embeddings:\n                        deref_tokenizers(embedding.tokens, tokenizers)\n            insert_tokens(embeddings, tokenizers)\n            for embedding in embeddings:\n                if embedding.name not in self.skipped_embeddings:\n                    try:\n                        insert_vectors(embedding, tokenizers, text_encoders, hiddensizes)\n                        self.register_embedding(embedding, shared.sd_model)\n                    except Exception as e:\n                        shared.log.error(f'Load embedding: name=\"{embedding.name}\" file=\"{embedding.filename}\" {e}')\n                        errors.display(e, f'Load embedding: name=\"{embedding.name}\" file=\"{embedding.filename}\"')\n                        elimit()\n        return\n\n    def load_from_dir(self, embdir):\n        if not shared.sd_loaded:\n            shared.log.info('Skipping embeddings load: model not loaded')\n            return\n        if not os.path.isdir(embdir.path):\n            return\n        file_paths = list_embeddings(embdir.path)\n        self.load_diffusers_embedding(file_paths)\n\n    def load_textual_inversion_embeddings(self, force_reload=False):\n        if not shared.sd_loaded:\n            return\n        if shared.sd_model_type not in supported_models:\n            return\n        t0 = time.time()\n        if not force_reload:\n            need_reload = False\n            for embdir in self.embedding_dirs.values():\n                if embdir.has_changed():\n                    need_reload = True\n                    break\n            if not need_reload:\n                return\n        self.ids_lookup.clear()\n        self.word_embeddings.clear()\n        self.skipped_embeddings.clear()\n        self.embeddings_used.clear()\n        for embdir in self.embedding_dirs.values():\n            self.load_from_dir(embdir)\n            embdir.update()\n\n        # re-sort word_embeddings because load_from_dir may not load in alphabetic order.\n        # using a temporary copy so we don't reinitialize self.word_embeddings in case other objects have a reference to it.\n        sorted_word_embeddings = {e.name: e for e in sorted(self.word_embeddings.values(), key=lambda e: e.name.lower())}\n        self.word_embeddings.clear()\n        self.word_embeddings.update(sorted_word_embeddings)\n\n        displayed_embeddings = (tuple(self.word_embeddings.keys()), tuple(self.skipped_embeddings.keys()))\n        if self.previously_displayed_embeddings != displayed_embeddings and shared.opts.diffusers_enable_embed:\n            self.previously_displayed_embeddings = displayed_embeddings\n            t1 = time.time()\n            shared.log.info(f\"Network load: type=embeddings loaded={len(self.word_embeddings)} skipped={len(self.skipped_embeddings)} time={t1-t0:.2f}\")\n"
  },
  {
    "path": "modules/theme.py",
    "content": "import os\nimport json\nimport gradio as gr\nimport modules.shared\nimport modules.extensions\n\n\ngradio_theme = gr.themes.Base()\n\n\ndef list_builtin_themes():\n    files = [os.path.splitext(f)[0] for f in os.listdir('javascript') if f.endswith('.css') and f not in ['base.css', 'sdnext.css', 'style.css']]\n    return files\n\n\ndef refresh_themes(no_update=False):\n    themes_file = os.path.join('data', 'themes.json')\n    res = []\n    if os.path.exists(themes_file):\n        try:\n            with open(themes_file, 'r', encoding='utf8') as f:\n                res = json.load(f)\n        except Exception:\n            modules.shared.log.error('Exception loading UI themes')\n    if not no_update:\n        try:\n            modules.shared.log.info('Refreshing UI themes')\n            r = modules.shared.req('https://huggingface.co/datasets/freddyaboulton/gradio-theme-subdomains/resolve/main/subdomains.json')\n            if r.status_code == 200:\n                res = r.json()\n                modules.shared.writefile(res, themes_file)\n            else:\n                modules.shared.log.error('Error refreshing UI themes')\n        except Exception:\n            modules.shared.log.error('Exception refreshing UI themes')\n    return res\n\n\ndef list_locales():\n    return ['Auto', 'en: English', 'hr: Croatian', 'de: German', 'es: Spanish', 'fr: French', 'it: Italian', 'pt: Portuguese', 'zh: Chinese', 'ja: Japanese', 'ko: Korean', 'ru: Russian']\n\n\ndef list_themes():\n    extensions = [e.name for e in modules.extensions.extensions if e.enabled]\n    if 'sd-webui-lobe-theme' in extensions and modules.shared.opts.gradio_theme == 'lobe':\n        themes = ['lobe']\n        modules.shared.opts.data['gradio_theme'] = themes[0]\n        modules.shared.opts.data['theme_type'] = 'None'\n        modules.shared.log.info('UI theme: extension=\"lobe\"')\n    elif 'Cozy-Nest' in extensions and modules.shared.opts.gradio_theme == 'cozy-nest':\n        themes = ['cozy-nest']\n        modules.shared.opts.data['gradio_theme'] = themes[0]\n        modules.shared.opts.data['theme_type'] = 'None'\n        modules.shared.log.info('UI theme: extension=\"cozy-nest\"')\n    elif modules.shared.opts.theme_type == 'None':\n        gradio = [\"gradio/default\", \"gradio/base\", \"gradio/glass\", \"gradio/monochrome\", \"gradio/soft\"]\n        huggingface = refresh_themes(no_update=True)\n        huggingface = {x['id'] for x in huggingface if x['status'] == 'RUNNING' and 'test' not in x['id'].lower()}\n        huggingface = [f'huggingface/{x}' for x in huggingface]\n        themes = sorted(gradio) + sorted(huggingface, key=str.casefold)\n    elif modules.shared.opts.theme_type == 'Standard':\n        builtin = list_builtin_themes()\n        themes = sorted(builtin)\n    elif modules.shared.opts.theme_type == 'Modern':\n        ext = next((e for e in modules.extensions.extensions if e.name == 'sdnext-modernui'), None)\n        if ext is None:\n            modules.shared.log.error('UI themes: ModernUI not found')\n            builtin = list_builtin_themes()\n            themes = sorted(builtin)\n            modules.shared.opts.theme_type = 'Standard'\n            return themes\n        folder = os.path.join(ext.path, 'themes')\n        themes = []\n        if os.path.exists(folder):\n            for f in os.listdir(folder):\n                if f.endswith('.css'):\n                    themes.append(os.path.splitext(f)[0])\n        if len(themes) == 0:\n            themes.append('modern/Default')\n        themes = sorted(themes)\n    else:\n        modules.shared.log.error(f'UI themes: type={modules.shared.opts.theme_type} unknown')\n        themes = []\n    return themes\n\n\ndef reload_gradio_theme():\n    global gradio_theme # pylint: disable=global-statement\n    theme_name = modules.shared.opts.gradio_theme\n    default_font_params = {\n        'font':['Helvetica', 'ui-sans-serif', 'system-ui', 'sans-serif'],\n        'font_mono':['IBM Plex Mono', 'ui-monospace', 'Consolas', 'monospace']\n    }\n    gradio_theme = gr.themes.Base(**default_font_params)\n    available_themes = list_themes()\n    if theme_name not in available_themes:\n        # modules.shared.log.error(f'UI theme invalid: type={modules.shared.opts.theme_type} theme=\"{theme_name}\"')\n        if modules.shared.opts.theme_type == 'Standard':\n            theme_name = 'black-teal'\n        elif modules.shared.opts.theme_type == 'Modern':\n            theme_name = 'Default'\n        elif modules.shared.opts.theme_type == 'None':\n            theme_name = 'gradio/default'\n        else:\n            modules.shared.opts.theme_type = 'Standard'\n            theme_name = 'black-teal'\n\n    modules.shared.opts.data['gradio_theme'] = theme_name\n    modules.shared.log.info(f'UI locale: name=\"{modules.shared.opts.ui_locale}\"')\n\n    if theme_name.lower() in ['lobe', 'cozy-nest']:\n        modules.shared.log.info(f'UI theme extension: name=\"{theme_name}\"')\n        return None\n    elif modules.shared.opts.theme_type == 'Standard':\n        gradio_theme = gr.themes.Base(**default_font_params)\n        modules.shared.log.info(f'UI theme: type={modules.shared.opts.theme_type} name=\"{theme_name}\" available={len(available_themes)}')\n        return 'sdnext.css'\n    elif modules.shared.opts.theme_type == 'Modern':\n        gradio_theme = gr.themes.Base(**default_font_params)\n        modules.shared.log.info(f'UI theme: type={modules.shared.opts.theme_type} name=\"{theme_name}\" available={len(available_themes)}')\n        return 'base.css'\n    elif modules.shared.opts.theme_type == 'None':\n        if theme_name.startswith('gradio/'):\n            modules.shared.log.warning('UI theme: using Gradio default theme which is not optimized for SD.Next')\n            if theme_name == \"gradio/default\":\n                gradio_theme = gr.themes.Default(**default_font_params)\n            elif theme_name == \"gradio/base\":\n                gradio_theme = gr.themes.Base(**default_font_params)\n            elif theme_name == \"gradio/glass\":\n                gradio_theme = gr.themes.Glass(**default_font_params)\n            elif theme_name == \"gradio/monochrome\":\n                gradio_theme = gr.themes.Monochrome(**default_font_params)\n            elif theme_name == \"gradio/soft\":\n                gradio_theme = gr.themes.Soft(**default_font_params)\n            else:\n                modules.shared.log.warning('UI theme: unknown Gradio theme')\n                theme_name = \"gradio/default\"\n                gradio_theme = gr.themes.Default(**default_font_params)\n        elif theme_name.startswith('huggingface/'):\n            modules.shared.log.warning('UI theme: using 3rd party theme which is not optimized for SD.Next')\n            try:\n                hf_theme_name = theme_name.replace('huggingface/', '')\n                gradio_theme = gr.themes.ThemeClass.from_hub(hf_theme_name)\n            except Exception as e:\n                modules.shared.log.error(f\"UI theme: download error accessing HuggingFace {e}\")\n                gradio_theme = gr.themes.Default(**default_font_params)\n        modules.shared.log.info(f'UI theme: type={modules.shared.opts.theme_type} name=\"{theme_name}\" style={modules.shared.opts.theme_style}')\n        return 'base.css'\n    modules.shared.log.error(f'UI theme: type={modules.shared.opts.theme_type} unknown')\n    return None\n"
  },
  {
    "path": "modules/timer.py",
    "content": "import os\nimport time\nimport sys\n\n\ntry:\n    default_min_time = float(os.environ.get('SD_MIN_TIMER', '0.1'))\nexcept Exception:\n    default_min_time = 0.1\n\n\nclass Timer:\n    def __init__(self):\n        self.start = time.time()\n        self.records = {}\n        self.total = 0\n        self.profile = False\n\n    def elapsed(self, reset=True):\n        end = time.time()\n        res = end - self.start\n        if reset:\n            self.start = end\n        return res\n\n    def add(self, name, t):\n        if name not in self.records:\n            self.records[name] = 0\n        self.records[name] += t\n\n    def ts(self, name, t):\n        elapsed = time.time() - t\n        self.add(name, elapsed)\n\n    def record(self, category=None, extra_time=0, reset=True):\n        e = self.elapsed(reset)\n        if category is None:\n            category = sys._getframe(1).f_code.co_name # pylint: disable=protected-access\n        if category not in self.records:\n            self.records[category] = 0\n        self.records[category] += e + extra_time\n        self.total += e + extra_time\n\n    def summary(self, min_time=default_min_time, total=True):\n        if self.profile:\n            min_time = -1\n        self.total = sum(self.records.values())\n        res = f\"total={self.total:.2f} \" if total else ''\n        additions = [x for x in self.records.items() if x[1] >= min_time]\n        additions = sorted(additions, key=lambda x: x[1], reverse=True)\n        if not additions:\n            return res\n        res += \" \".join([f\"{category}={time_taken:.2f}\" for category, time_taken in additions])\n        return res\n\n    def get_total(self):\n        return sum(self.records.values())\n\n    def dct(self, min_time=default_min_time):\n        if self.profile:\n            res = {k: round(v, 4) for k, v in self.records.items()}\n        self.total = sum(self.records.values())\n        self.records['total'] = self.total\n        res = {k: round(v, 2) for k, v in self.records.items() if v >= min_time}\n        res = {k: v for k, v in sorted(res.items(), key=lambda x: x[1], reverse=True)} # noqa: C416 # pylint: disable=unnecessary-comprehension\n        return res\n\n    def reset(self):\n        self.__init__()\n\nstartup = Timer()\nprocess = Timer()\nlaunch = Timer()\ninit = Timer()\nload = Timer()\n"
  },
  {
    "path": "modules/todo/__init__.py",
    "content": "from modules.todo.todo_utils import patch_attention_proc\n\n\ndef apply_todo(model, p, method='todo'):\n    mp = p.height * p.width / 1024 / 1024\n\n    if mp < 1.0: # 512px\n        downsample_factor = 2\n        ratio = 0.38\n        downsample_factor_level_2 = 1\n        ratio_level_2 = 0.0\n    elif mp < 1.1: # 1024+\n        downsample_factor = 2\n        ratio = 0.75\n        downsample_factor_level_2 = 1\n        ratio_level_2 = 0.0\n    elif mp < 2.3:\n        downsample_factor = 3\n        ratio = 0.89\n        downsample_factor_level_2 = 1\n        ratio_level_2 = 0.0\n    elif mp < 8:\n        downsample_factor = 4\n        ratio = 0.9375\n        downsample_factor_level_2 = 1\n        ratio_level_2 = 0.0\n    else:\n        return\n    merge_method = \"downsample\" if method == \"todo\" else \"similarity\"\n    merge_tokens = \"keys/values\" if method == \"todo\" else \"all\"\n    token_merge_args = {\n                \"ratio\": ratio,\n                \"merge_tokens\": merge_tokens,\n                \"merge_method\": merge_method,\n                \"downsample_method\": \"nearest\",\n                \"downsample_factor\": downsample_factor,\n                \"timestep_threshold_switch\": 0.0,\n                \"timestep_threshold_stop\": 0.0,\n                \"downsample_factor_level_2\": downsample_factor_level_2,\n                \"ratio_level_2\": ratio_level_2\n                }\n    patch_attention_proc(model.unet, token_merge_args=token_merge_args)\n"
  },
  {
    "path": "modules/todo/todo_merge.py",
    "content": "from typing import Optional, Tuple, Callable\nimport math\nimport torch\nimport torch.nn.functional as F\nfrom diffusers.models.attention_processor import Attention\nfrom diffusers.utils import USE_PEFT_BACKEND\nfrom diffusers.utils.import_utils import is_xformers_available\n\n\nif is_xformers_available():\n    import xformers\n    import xformers.ops\n    xformers_is_available = True\nelse:\n    xformers_is_available = False\n\n\nif hasattr(F, \"scaled_dot_product_attention\"):\n    torch2_is_available = True\nelse:\n    torch2_is_available = False\n\n\ndef init_generator(device: torch.device, fallback: torch.Generator = None):\n    \"\"\"\n    Forks the current default random generator given device.\n    \"\"\"\n    if device.type == \"cpu\":\n        return torch.Generator(device=\"cpu\").set_state(torch.get_rng_state())\n    elif device.type == \"cuda\":\n        return torch.Generator(device=device).set_state(torch.cuda.get_rng_state())\n    elif device.type == \"cuda\":\n        return torch.Generator(device=device).set_state(torch.mps.get_rng_state())\n    else:\n        if fallback is None:\n            return init_generator(torch.device(\"cpu\"))\n        else:\n            return fallback\n\n\ndef do_nothing(x: torch.Tensor, mode: str = None): # pylint: disable=unused-argument\n    return x\n\n\ndef mps_gather_workaround(input, dim, index): # pylint: disable=redefined-builtin\n    if input.shape[-1] == 1:\n        return torch.gather(\n            input.unsqueeze(-1),\n            dim - 1 if dim < 0 else dim,\n            index.unsqueeze(-1)\n        ).squeeze(-1)\n    else:\n        return torch.gather(input, dim, index)\n\n\ndef up_or_downsample(item, cur_w, cur_h, new_w, new_h, method):\n    batch_size = item.shape[0]\n\n    item = item.reshape(batch_size, cur_h, cur_w, -1)\n    item = item.permute(0, 3, 1, 2)\n    df = cur_h // new_h\n    if method in \"max_pool\":\n        item = F.max_pool2d(item, kernel_size=df, stride=df, padding=0)\n    elif method in \"avg_pool\":\n        item = F.avg_pool2d(item, kernel_size=df, stride=df, padding=0)\n    else:\n        item = F.interpolate(item, size=(new_h, new_w), mode=method)\n    item = item.permute(0, 2, 3, 1)\n    item = item.reshape(batch_size, new_h * new_w, -1)\n\n    return item\n\n\ndef compute_merge(x: torch.Tensor, tome_info):\n    original_h, original_w = tome_info[\"size\"]\n    original_tokens = original_h * original_w\n    downsample = int(math.ceil(math.sqrt(original_tokens // x.shape[1])))\n    dim = x.shape[-1]\n    if dim == 320:\n        cur_level = \"level_1\"\n        downsample_factor = tome_info['args']['downsample_factor']\n        ratio = tome_info['args']['ratio']\n    elif dim == 640:\n        cur_level = \"level_2\"\n        downsample_factor = tome_info['args']['downsample_factor_level_2']\n        ratio = tome_info['args']['ratio_level_2']\n    else:\n        cur_level = \"other\"\n        downsample_factor = 1\n        ratio = 0.0\n\n    args = tome_info[\"args\"]\n\n    cur_h, cur_w = original_h // downsample, original_w // downsample\n    new_h, new_w = cur_h // downsample_factor, cur_w // downsample_factor\n\n    if tome_info['timestep'] / 1000 > tome_info['args']['timestep_threshold_switch']:\n        merge_method = args[\"merge_method\"]\n    else:\n        merge_method = args[\"secondary_merge_method\"]\n\n    if cur_level != \"other\" and tome_info['timestep'] / 1000 > tome_info['args']['timestep_threshold_stop']:\n        if merge_method == \"downsample\" and downsample_factor > 1:\n            m = lambda x: up_or_downsample(x, cur_w, cur_h, new_w, new_h, args[\"downsample_method\"]) # pylint: disable=unnecessary-lambda-assignment\n            u = lambda x: up_or_downsample(x, new_w, new_h, cur_w, cur_h, args[\"downsample_method\"]) # pylint: disable=unnecessary-lambda-assignment\n        elif merge_method == \"similarity\" and ratio > 0.0:\n            w = int(math.ceil(original_w / downsample))\n            h = int(math.ceil(original_h / downsample))\n            r = int(x.shape[1] * ratio)\n\n            # Re-init the generator if it hasn't already been initialized or device has changed.\n            if args[\"generator\"] is None:\n                args[\"generator\"] = init_generator(x.device)\n            elif args[\"generator\"].device != x.device:\n                args[\"generator\"] = init_generator(x.device, fallback=args[\"generator\"])\n\n            # If the batch size is odd, then it's not possible for prompted and unprompted images to be in the same\n            # batch, which causes artifacts with use_rand, so force it to be off.\n            use_rand = False if x.shape[0] % 2 == 1 else args[\"use_rand\"]\n            m, u = bipartite_soft_matching_random2d(x, w, h, args[\"sx\"], args[\"sy\"], r,\n                                                    no_rand=not use_rand, generator=args[\"generator\"])\n        else:\n            m, u = (do_nothing, do_nothing)\n    else:\n        m, u = (do_nothing, do_nothing)\n\n    merge_fn, unmerge_fn = (m, u)\n\n    return merge_fn, unmerge_fn\n\n\ndef bipartite_soft_matching_random2d(metric: torch.Tensor,\n                                     w: int,\n                                     h: int,\n                                     sx: int,\n                                     sy: int,\n                                     r: int,\n                                     no_rand: bool = False,\n                                     generator: torch.Generator = None) -> Tuple[Callable, Callable]:\n    \"\"\"\n    Partitions the tokens into src and dst and merges r tokens from src to dst.\n    Dst tokens are partitioned by choosing one randomy in each (sx, sy) region.\n\n    Args:\n     - metric [B, N, C]: metric to use for similarity\n     - w: image width in tokens\n     - h: image height in tokens\n     - sx: stride in the x dimension for dst, must divide w\n     - sy: stride in the y dimension for dst, must divide h\n     - r: number of tokens to remove (by merging)\n     - no_rand: if true, disable randomness (use top left corner only)\n     - rand_seed: if no_rand is false, and if not None, sets random seed.\n    \"\"\"\n    B, N, _ = metric.shape\n\n    if r <= 0:\n        return do_nothing, do_nothing\n\n    with torch.no_grad():\n        hsy, wsx = h // sy, w // sx\n\n        # For each sy by sx kernel, randomly assign one token to be dst and the rest src\n        if no_rand:\n            rand_idx = torch.zeros(hsy, wsx, 1, device=metric.device, dtype=torch.int64)\n        else:\n            rand_idx = torch.randint(sy * sx, size=(hsy, wsx, 1), device=generator.device, generator=generator).to(\n                metric.device)\n\n        # The image might not divide sx and sy, so we need to work on a view of the top left if the idx buffer instead\n        idx_buffer_view = torch.zeros(hsy, wsx, sy * sx, device=metric.device, dtype=torch.int64)\n        idx_buffer_view.scatter_(dim=2, index=rand_idx, src=-torch.ones_like(rand_idx, dtype=rand_idx.dtype))\n        idx_buffer_view = idx_buffer_view.view(hsy, wsx, sy, sx).transpose(1, 2).reshape(hsy * sy, wsx * sx)\n\n        # Image is not divisible by sx or sy so we need to move it into a new buffer\n        if (hsy * sy) < h or (wsx * sx) < w:\n            idx_buffer = torch.zeros(h, w, device=metric.device, dtype=torch.int64)\n            idx_buffer[:(hsy * sy), :(wsx * sx)] = idx_buffer_view\n        else:\n            idx_buffer = idx_buffer_view\n\n        # We set dst tokens to be -1 and src to be 0, so an argsort gives us dst|src indices\n        rand_idx = idx_buffer.reshape(1, -1, 1).argsort(dim=1)\n\n        # We're finished with these\n        del idx_buffer, idx_buffer_view\n\n        # rand_idx is currently dst|src, so split them\n        num_dst = hsy * wsx\n        a_idx = rand_idx[:, num_dst:, :]  # src\n        b_idx = rand_idx[:, :num_dst, :]  # dst\n\n        def split(x):\n            C = x.shape[-1]\n            src = torch.gather(x, dim=1, index=a_idx.expand(B, N - num_dst, C))\n            dst = torch.gather(x, dim=1, index=b_idx.expand(B, num_dst, C))\n            return src, dst\n\n        # Cosine similarity between A and B\n        metric = metric / metric.norm(dim=-1, keepdim=True)\n        a, b = split(metric)\n        scores = a @ b.transpose(-1, -2)\n\n        # Can't reduce more than the # tokens in src\n        r = min(a.shape[1], r)\n\n        # Find the most similar greedily\n        node_max, node_idx = scores.max(dim=-1)\n        edge_idx = node_max.argsort(dim=-1, descending=True)[..., None]\n\n        unm_idx = edge_idx[..., r:, :]  # Unmerged Tokens\n        src_idx = edge_idx[..., :r, :]  # Merged Tokens\n        dst_idx = torch.gather(node_idx[..., None], dim=-2, index=src_idx)\n\n    def merge(x: torch.Tensor, mode=\"mean\") -> torch.Tensor:\n        src, dst = split(x)\n        n, t1, c = src.shape\n\n        unm = torch.gather(src, dim=-2, index=unm_idx.expand(n, t1 - r, c))\n        src = torch.gather(src, dim=-2, index=src_idx.expand(n, r, c))\n        dst = dst.scatter_reduce(-2, dst_idx.expand(n, r, c), src, reduce=mode)\n\n        return torch.cat([unm, dst], dim=1)\n\n    def unmerge(x: torch.Tensor) -> torch.Tensor:\n        unm_len = unm_idx.shape[1]\n        unm, dst = x[..., :unm_len, :], x[..., unm_len:, :]\n        _, _, c = unm.shape\n\n        src = torch.gather(dst, dim=-2, index=dst_idx.expand(B, r, c))\n\n        # Combine back to the original shape\n        out = torch.zeros(B, N, c, device=x.device, dtype=x.dtype)\n        out.scatter_(dim=-2, index=b_idx.expand(B, num_dst, c), src=dst)\n        out.scatter_(dim=-2,\n                     index=torch.gather(a_idx.expand(B, a_idx.shape[1], 1), dim=1, index=unm_idx).expand(B, unm_len, c),\n                     src=unm)\n        out.scatter_(dim=-2,\n                     index=torch.gather(a_idx.expand(B, a_idx.shape[1], 1), dim=1, index=src_idx).expand(B, r, c),\n                     src=src)\n\n        return out\n\n    return merge, unmerge\n\n\nclass TokenMergeAttentionProcessor:\n    def __init__(self):\n        # priortize torch2's flash attention, if not fall back to xformers then regular attention\n        if torch2_is_available:\n            self.attn_method = \"torch2\"\n        elif xformers_is_available:\n            self.attn_method = \"xformers\"\n        else:\n            self.attn_method = \"regular\"\n\n    def torch2_attention(self, attn, query, key, value, attention_mask, batch_size):\n        inner_dim=key.shape[-1]\n        head_dim = inner_dim // attn.heads\n\n        query = query.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        key = key.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        value = value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        hidden_states = F.scaled_dot_product_attention(\n            query, key, value, attn_mask=attention_mask, dropout_p=0.0, is_causal=False\n        )\n\n        hidden_states = hidden_states.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n\n        return hidden_states\n\n    def xformers_attention(self, attn, query, key, value, attention_mask, batch_size):\n        query = attn.head_to_batch_dim(query).contiguous()\n        key = attn.head_to_batch_dim(key).contiguous()\n        value = attn.head_to_batch_dim(value).contiguous()\n\n        if attention_mask is not None:\n            attention_mask = attention_mask.reshape(batch_size * attn.heads, -1, attention_mask.shape[-1])\n\n        hidden_states = xformers.ops.memory_efficient_attention(\n            query, key, value, attn_bias=attention_mask, scale=attn.scale\n        )\n\n        hidden_states = attn.batch_to_head_dim(hidden_states)\n\n        return hidden_states\n\n\n    def regular_attention(self, attn, query, key, value, attention_mask, batch_size):\n        query = attn.head_to_batch_dim(query)\n        key = attn.head_to_batch_dim(key)\n        value = attn.head_to_batch_dim(value)\n\n        if attention_mask is not None:\n            attention_mask = attention_mask.reshape(batch_size * attn.heads, -1, attention_mask.shape[-1])\n\n        attention_probs = attn.get_attention_scores(query, key, attention_mask)\n        hidden_states = torch.bmm(attention_probs, value)\n        hidden_states = attn.batch_to_head_dim(hidden_states)\n\n        return hidden_states\n\n\n    def __call__(\n        self,\n        attn: Attention,\n        hidden_states: torch.FloatTensor,\n        encoder_hidden_states: Optional[torch.FloatTensor] = None,\n        attention_mask: Optional[torch.FloatTensor] = None,\n        temb: Optional[torch.FloatTensor] = None,\n        scale: float = 1.0,\n    ) -> torch.FloatTensor:\n        residual = hidden_states\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n\n        batch_size, sequence_length, _ = (\n            hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape\n        )\n\n        if attention_mask is not None:\n            attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n            # scaled_dot_product_attention expects attention_mask shape to be\n            # (batch, heads, source_length, target_length)\n            attention_mask = attention_mask.view(batch_size, attn.heads, -1, attention_mask.shape[-1])\n\n        if attn.group_norm is not None:\n            hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2)\n\n        args = () if USE_PEFT_BACKEND else (scale,)\n\n        if self._tome_info['args']['merge_tokens'] == \"all\": # pylint: disable=no-member\n            merge_fn, unmerge_fn = compute_merge(hidden_states, self._tome_info) # pylint: disable=no-member\n            hidden_states = merge_fn(hidden_states)\n\n        query = attn.to_q(hidden_states, *args)\n\n        if encoder_hidden_states is None:\n            encoder_hidden_states = hidden_states\n        elif attn.norm_cross:\n            encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states)\n\n        if self._tome_info['args']['merge_tokens'] == \"keys/values\": # pylint: disable=no-member\n            merge_fn, _ = compute_merge(encoder_hidden_states, self._tome_info) # pylint: disable=no-member\n            encoder_hidden_states = merge_fn(encoder_hidden_states)\n\n        key = attn.to_k(encoder_hidden_states, *args)\n        value = attn.to_v(encoder_hidden_states, *args)\n\n        if self.attn_method == \"torch2\":\n            hidden_states = self.torch2_attention(attn, query, key, value, attention_mask, batch_size)\n        elif self.attn_method == \"xformers\":\n            hidden_states = self.xformers_attention(attn, query, key, value, attention_mask, batch_size)\n        else:\n            hidden_states = self.regular_attention(attn, query, key, value, attention_mask, batch_size)\n\n        hidden_states = hidden_states.to(query.dtype)\n\n        # linear proj\n        hidden_states = attn.to_out[0](hidden_states, *args)\n        # dropout\n        hidden_states = attn.to_out[1](hidden_states)\n\n        if self._tome_info['args']['merge_tokens'] == \"all\": # pylint: disable=no-member\n            hidden_states = unmerge_fn(hidden_states)\n\n        if input_ndim == 4:\n            hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n"
  },
  {
    "path": "modules/todo/todo_utils.py",
    "content": "import torch\nimport torch.nn.functional as F\nfrom diffusers.utils.import_utils import is_xformers_available\nfrom diffusers.models.attention_processor import AttnProcessor2_0, AttnProcessor\nfrom modules.todo.todo_merge import TokenMergeAttentionProcessor\n\n\nxformers_is_available = is_xformers_available()\ntorch2_is_available = hasattr(F, \"scaled_dot_product_attention\")\n\n\ndef hook_tome_model(model: torch.nn.Module):\n    \"\"\" Adds a forward pre hook to get the image size. This hook can be removed with remove_patch. \"\"\"\n\n    def hook(module, args):\n        module._tome_info[\"size\"] = (args[0].shape[2], args[0].shape[3]) # pylint: disable=protected-access\n        module._tome_info[\"timestep\"] = args[1].item() # pylint: disable=protected-access\n        return None\n\n    model._tome_info[\"hooks\"].append(model.register_forward_pre_hook(hook)) # pylint: disable=protected-access\n\ndef remove_tome_patch(pipe: torch.nn.Module):\n    \"\"\" Removes a patch from a ToMe Diffusion module if it was already patched. \"\"\"\n\n    if hasattr(pipe.unet, \"_tome_info\"):\n        del pipe.unet._tome_info\n\n    for _n, m in pipe.unet.named_modules():\n        if hasattr(m, \"processor\"):\n            m.processor = AttnProcessor2_0()\n\ndef patch_attention_proc(unet, token_merge_args={}):\n    unet._tome_info = { # pylint: disable=protected-access\n        \"size\": None,\n        \"timestep\": None,\n        \"hooks\": [],\n        \"args\": {\n            \"ratio\": token_merge_args.get(\"ratio\", 0.5),  # ratio of tokens to merge\n            \"sx\": token_merge_args.get(\"sx\", 2),  # stride x for sim calculation\n            \"sy\": token_merge_args.get(\"sy\", 2),  # stride y for sim calculation\n            \"use_rand\": token_merge_args.get(\"use_rand\", True),\n            \"generator\": None,\n            \"merge_tokens\": token_merge_args.get(\"merge_tokens\", \"keys/values\"),  # [\"all\", \"keys/values\"]\n            \"merge_method\": token_merge_args.get(\"merge_method\", \"downsample\"),  # [\"none\",\"similarity\", \"downsample\"]\n            \"downsample_method\": token_merge_args.get(\"downsample_method\", \"nearest-exact\"), # native torch interpolation methods [\"nearest\", \"linear\", \"bilinear\", \"bicubic\", \"nearest-exact\"]\n            \"downsample_factor\": token_merge_args.get(\"downsample_factor\", 2),  # amount to downsample by\n            \"timestep_threshold_switch\": token_merge_args.get(\"timestep_threshold_switch\", 0.2), # timestep to switch to secondary method, 0.2 means 20% steps remaining\n            \"timestep_threshold_stop\": token_merge_args.get(\"timestep_threshold_stop\", 0.0), # timestep to stop merging, 0.0 means stop at 0 steps remaining\n            \"secondary_merge_method\": token_merge_args.get(\"secondary_merge_method\", \"similarity\"), # [\"none\", \"similarity\", \"downsample\"]\n            \"downsample_factor_level_2\": token_merge_args.get(\"downsample_factor_level_2\", 1), # amount to downsample by at the 2nd down block of unet\n            \"ratio_level_2\": token_merge_args.get(\"ratio_level_2\", 0.5), # ratio of tokens to merge at the 2nd down block of unet\n        }\n    }\n    hook_tome_model(unet)\n    attn_modules = [module for name, module in unet.named_modules() if module.__class__.__name__ == 'BasicTransformerBlock']\n\n    for _i, module in enumerate(attn_modules):\n        module.attn1.processor = TokenMergeAttentionProcessor()\n        module.attn1.processor._tome_info = unet._tome_info # pylint: disable=protected-access\n\n\ndef remove_patch(pipe: torch.nn.Module):\n    \"\"\" Removes a patch from a ToMe Diffusion module if it was already patched. \"\"\"\n\n    # this will remove our custom class\n    if torch2_is_available:\n        for _n, m in pipe.unet.named_modules():\n            if hasattr(m, \"processor\"):\n                m.processor = AttnProcessor2_0()\n\n    elif xformers_is_available:\n        pipe.enable_xformers_memory_efficient_attention()\n\n    else:\n        for _n, m in pipe.unet.named_modules():\n            if hasattr(m, \"processor\"):\n                m.processor = AttnProcessor()\n"
  },
  {
    "path": "modules/token_merge.py",
    "content": "from modules import shared\n\n\ndef apply_token_merging(sd_model):\n    current_tome = getattr(sd_model, 'applied_tome', 0)\n    current_todo = getattr(sd_model, 'applied_todo', 0)\n\n    if shared.opts.token_merging_method == 'ToMe' and shared.opts.tome_ratio > 0:\n        if current_tome == shared.opts.tome_ratio:\n            return\n        if shared.opts.hypertile_unet_enabled and not shared.cmd_opts.experimental:\n            shared.log.warning('Token merging not supported with HyperTile for UNet')\n            return\n        try:\n            import installer\n            installer.install('tomesd', 'tomesd', ignore=False)\n            import tomesd\n            tomesd.apply_patch(\n                sd_model,\n                ratio=shared.opts.tome_ratio,\n                use_rand=False, # can cause issues with some samplers\n                merge_attn=True,\n                merge_crossattn=False,\n                merge_mlp=False\n            )\n            shared.log.info(f'Applying ToMe: ratio={shared.opts.tome_ratio}')\n            sd_model.applied_tome = shared.opts.tome_ratio\n        except Exception:\n            shared.log.warning(f'Token merging not supported: pipeline={sd_model.__class__.__name__}')\n    else:\n        sd_model.applied_tome = 0\n\n    if shared.opts.token_merging_method == 'ToDo' and shared.opts.todo_ratio > 0:\n        if current_todo == shared.opts.todo_ratio:\n            return\n        if shared.opts.hypertile_unet_enabled and not shared.cmd_opts.experimental:\n            shared.log.warning('Token merging not supported with HyperTile for UNet')\n            return\n        try:\n            from modules.todo.todo_utils import patch_attention_proc\n            token_merge_args = {\n                        \"ratio\": shared.opts.todo_ratio,\n                        \"merge_tokens\": \"keys/values\",\n                        \"merge_method\": \"downsample\",\n                        \"downsample_method\": \"nearest\",\n                        \"downsample_factor\": 2,\n                        \"timestep_threshold_switch\": 0.0,\n                        \"timestep_threshold_stop\": 0.0,\n                        \"downsample_factor_level_2\": 1,\n                        \"ratio_level_2\": 0.0,\n                        }\n            patch_attention_proc(sd_model.unet, token_merge_args=token_merge_args)\n            shared.log.info(f'Applying ToDo: ratio={shared.opts.todo_ratio}')\n            sd_model.applied_todo = shared.opts.todo_ratio\n        except Exception:\n            shared.log.warning(f'Token merging not supported: pipeline={sd_model.__class__.__name__}')\n    else:\n        sd_model.applied_todo = 0\n\n\ndef remove_token_merging(sd_model):\n    current_tome = getattr(sd_model, 'applied_tome', 0)\n    current_todo = getattr(sd_model, 'applied_todo', 0)\n    try:\n        if current_tome > 0:\n            import tomesd\n            tomesd.remove_patch(sd_model)\n            sd_model.applied_tome = 0\n    except Exception:\n        pass\n    try:\n        if current_todo > 0:\n            from modules.todo.todo_utils import remove_patch\n            remove_patch(sd_model)\n            sd_model.applied_todo = 0\n    except Exception:\n        pass\n"
  },
  {
    "path": "modules/transformer_cache.py",
    "content": "import os\nimport diffusers\nfrom modules import shared, errors\n\n\ndebug = shared.log.trace if os.environ.get('SD_PROCESS_DEBUG', None) is not None else lambda *args, **kwargs: None\n\n\ndef set_cache(faster_cache=None, pyramid_attention_broadcast=None):\n    if not shared.sd_loaded or not hasattr(shared.sd_model, 'transformer'):\n        return\n    faster_cache = faster_cache if faster_cache is not None else shared.opts.faster_cache_enabled\n    pyramid_attention_broadcast = pyramid_attention_broadcast if pyramid_attention_broadcast is not None else shared.opts.pab_enabled\n    if (not faster_cache) and (not pyramid_attention_broadcast):\n        return\n    if (not hasattr(shared.sd_model.transformer, 'enable_cache')) or (not hasattr(shared.sd_model.transformer, 'disable_cache')):\n        shared.log.debug(f'Transformer cache: cls={shared.sd_model.transformer.__class__.__name__} fc={faster_cache} pab={pyramid_attention_broadcast} not supported')\n        return\n    try:\n        if faster_cache: # https://github.com/huggingface/diffusers/pull/10163\n            distilled = shared.opts.fc_guidance_distilled or shared.sd_model_type == 'f1'\n            config = diffusers.FasterCacheConfig(\n                spatial_attention_block_skip_range=shared.opts.fc_spacial_skip_range,\n                spatial_attention_timestep_skip_range=(int(shared.opts.fc_spacial_skip_start), int(shared.opts.fc_spacial_skip_end)),\n                unconditional_batch_skip_range=shared.opts.fc_uncond_skip_range,\n                unconditional_batch_timestep_skip_range=(int(shared.opts.fc_uncond_skip_start), int(shared.opts.fc_uncond_skip_end)),\n                attention_weight_callback=lambda _: shared.opts.fc_attention_weight,\n                tensor_format=shared.opts.fc_tensor_format, # TODO fc: autodetect tensor format based on model\n                is_guidance_distilled=distilled, # TODO fc: autodetect distilled based on model\n                current_timestep_callback=lambda: shared.sd_model.current_timestep,\n            )\n            shared.sd_model.transformer.disable_cache()\n            shared.sd_model.transformer.enable_cache(config)\n            shared.log.debug(f'Transformer cache: type={config.__class__.__name__}')\n            debug(f'Transformer cache: {vars(config)}')\n        elif pyramid_attention_broadcast: # https://github.com/huggingface/diffusers/pull/9562\n            config = diffusers.PyramidAttentionBroadcastConfig(\n                spatial_attention_block_skip_range=shared.opts.pab_spacial_skip_range,\n                spatial_attention_timestep_skip_range=(int(shared.opts.pab_spacial_skip_start), int(shared.opts.pab_spacial_skip_end)),\n                current_timestep_callback=lambda: shared.sd_model.current_timestep,\n            )\n            shared.sd_model.transformer.disable_cache()\n            shared.sd_model.transformer.enable_cache(config)\n            shared.log.debug(f'Transformer cache: type={config.__class__.__name__}')\n            debug(f'Transformer cache: {vars(config)}')\n        else:\n            debug('Transformer cache: not enabled')\n            shared.sd_model.transformer.disable_cache()\n    except Exception as e:\n        shared.log.error(f'Transformer cache: {e}')\n        errors.display(e, 'Transformer cache')\n"
  },
  {
    "path": "modules/txt2img.py",
    "content": "import os\nfrom modules import shared, processing, scripts_manager\nfrom modules.generation_parameters_copypaste import create_override_settings_dict\nfrom modules.ui_common import plaintext_to_html\nfrom modules.paths import resolve_output_path\n\n\ndebug = shared.log.trace if os.environ.get('SD_PROCESS_DEBUG', None) is not None else lambda *args, **kwargs: None\ndebug('Trace: PROCESS')\n\n\ndef txt2img(id_task, state,\n            prompt, negative_prompt, prompt_styles,\n            steps, sampler_index, hr_sampler_index,\n            vae_type, tiling, hidiffusion,\n            detailer_enabled, detailer_prompt, detailer_negative, detailer_steps, detailer_strength, detailer_resolution,\n            n_iter, batch_size,\n            guidance_name, guidance_scale, guidance_rescale, guidance_start, guidance_stop,\n            cfg_scale, image_cfg_scale, diffusers_guidance_rescale, pag_scale, pag_adaptive, cfg_end,\n            clip_skip,\n            seed, subseed, subseed_strength, seed_resize_from_h, seed_resize_from_w,\n            height, width,\n            enable_hr, denoising_strength,\n            hr_scale, hr_resize_mode, hr_resize_context, hr_upscaler, hr_force, hr_second_pass_steps, hr_resize_x, hr_resize_y,\n            refiner_steps, refiner_start, refiner_prompt, refiner_negative,\n            hdr_mode, hdr_brightness, hdr_color, hdr_sharpen, hdr_clamp, hdr_boundary, hdr_threshold, hdr_maximize, hdr_max_center, hdr_max_boundary, hdr_color_picker, hdr_tint_ratio,\n            override_settings_texts,\n            *args):\n\n    debug(f'txt2img: {id_task}')\n\n    if shared.sd_model is None:\n        shared.log.warning('Aborted: op=txt model not loaded')\n        return [], '', '', 'Error: model not loaded'\n\n    override_settings = create_override_settings_dict(override_settings_texts)\n    if sampler_index is None:\n        shared.log.warning('Sampler: invalid')\n        sampler_index = 0\n    if hr_sampler_index is None:\n        hr_sampler_index = sampler_index\n\n    p = processing.StableDiffusionProcessingTxt2Img(\n        sd_model=shared.sd_model,\n        outpath_samples=resolve_output_path(shared.opts.outdir_samples, shared.opts.outdir_txt2img_samples),\n        outpath_grids=resolve_output_path(shared.opts.outdir_grids, shared.opts.outdir_txt2img_grids),\n        prompt=prompt,\n        styles=prompt_styles,\n        negative_prompt=negative_prompt,\n        seed=seed,\n        subseed=subseed,\n        subseed_strength=subseed_strength,\n        seed_resize_from_h=seed_resize_from_h,\n        seed_resize_from_w=seed_resize_from_w,\n        sampler_name = processing.get_sampler_name(sampler_index),\n        hr_sampler_name = processing.get_sampler_name(hr_sampler_index),\n        batch_size=batch_size,\n        n_iter=n_iter,\n        steps=steps,\n        guidance_name=guidance_name,\n        guidance_scale=guidance_scale,\n        guidance_rescale=guidance_rescale,\n        guidance_start=guidance_start,\n        guidance_stop=guidance_stop,\n        cfg_scale=cfg_scale,\n        image_cfg_scale=image_cfg_scale,\n        diffusers_guidance_rescale=diffusers_guidance_rescale,\n        pag_scale=pag_scale,\n        pag_adaptive=pag_adaptive,\n        cfg_end=cfg_end,\n        clip_skip=clip_skip,\n        width=width,\n        height=height,\n        vae_type=vae_type,\n        detailer_enabled=detailer_enabled,\n        detailer_prompt=detailer_prompt,\n        detailer_negative=detailer_negative,\n        detailer_steps=detailer_steps,\n        detailer_strength=detailer_strength,\n        detailer_resolution=detailer_resolution,\n        tiling=tiling,\n        hidiffusion=hidiffusion,\n        enable_hr=enable_hr,\n        denoising_strength=denoising_strength,\n        hr_scale=hr_scale,\n        hr_resize_mode=hr_resize_mode,\n        hr_resize_context=hr_resize_context,\n        hr_upscaler=hr_upscaler,\n        hr_force=hr_force,\n        hr_second_pass_steps=hr_second_pass_steps,\n        hr_resize_x=hr_resize_x,\n        hr_resize_y=hr_resize_y,\n        refiner_steps=refiner_steps,\n        refiner_start=refiner_start,\n        refiner_prompt=refiner_prompt,\n        refiner_negative=refiner_negative,\n        hdr_mode=hdr_mode, hdr_brightness=hdr_brightness, hdr_color=hdr_color, hdr_sharpen=hdr_sharpen, hdr_clamp=hdr_clamp,\n        hdr_boundary=hdr_boundary, hdr_threshold=hdr_threshold, hdr_maximize=hdr_maximize, hdr_max_center=hdr_max_center, hdr_max_boundary=hdr_max_boundary, hdr_color_picker=hdr_color_picker, hdr_tint_ratio=hdr_tint_ratio,\n        override_settings=override_settings,\n    )\n    p.scripts = scripts_manager.scripts_txt2img\n    p.script_args = args\n    p.state = state\n    processed: processing.Processed = scripts_manager.scripts_txt2img.run(p, *args)\n    if processed is None:\n        processed = processing.process_images(p)\n    processed = scripts_manager.scripts_txt2img.after(p, processed, *args)\n    p.close()\n    if processed is None:\n        return [], '', '', 'Error: processing failed'\n    generation_info_js = processed.js() if processed is not None else ''\n    if processed is None:\n        return [], generation_info_js, '', 'Error: no images'\n    return processed.images, generation_info_js, processed.info, plaintext_to_html(processed.comments)\n"
  },
  {
    "path": "modules/ui.py",
    "content": "import gradio as gr\nimport gradio.routes\nimport gradio.utils\nfrom modules import errors, timer, gr_hijack, shared, script_callbacks, ui_common, ui_symbols, ui_javascript, ui_sections, generation_parameters_copypaste, call_queue, scripts_manager\nfrom modules.paths import script_path, data_path # pylint: disable=unused-import\nfrom modules.api import mime\n\n\nerrors.install()\nmime.register()\ngr_hijack.init()\nswitch_values_symbol = ui_symbols.switch\ndetect_image_size_symbol = ui_symbols.detect\npaste_symbol = ui_symbols.paste\nclear_prompt_symbol = ui_symbols.clear\nrestore_progress_symbol = ui_symbols.apply\nfolder_symbol = ui_symbols.folder\nextra_networks_symbol = ui_symbols.networks\napply_style_symbol = ui_symbols.apply\nsave_style_symbol = ui_symbols.save\nwrap_queued_call = call_queue.wrap_queued_call # compatibility item\nwrap_gradio_call = call_queue.wrap_gradio_call # compatibility item\nwrap_gradio_gpu_call = call_queue.wrap_gradio_gpu_call # compatibility item\nplaintext_to_html = ui_common.plaintext_to_html # compatibility item\ninfotext_to_html = ui_common.infotext_to_html # compatibility item\ncreate_sampler_and_steps_selection = ui_sections.create_sampler_and_steps_selection # compatibility item\nui_system_tabs = None # required for system-info\ninterfaces = []\n\n\nif not shared.cmd_opts.share and not shared.cmd_opts.listen:\n    # fix gradio phoning home\n    gradio.utils.version_check = lambda: None\n    gradio.utils.get_local_ip_address = lambda: '127.0.0.1'\n\n\ndef create_override_settings_dropdown(a, _b):\n    return ui_common.create_override_inputs(a) # compatibility item\n\n\ndef gr_show(visible=True):\n    return {\"visible\": visible, \"__type__\": \"update\"}\n\n\ndef create_output_panel(tabname, outdir): # pylint: disable=unused-argument # outdir is used by extensions\n    a, b, c, _d, e = ui_common.create_output_panel(tabname)\n    return a, b, c, e\n\n\ndef send_gradio_gallery_to_image(x):\n    if len(x) == 0:\n        return None\n    return generation_parameters_copypaste.image_from_url_text(x[0])\n\n\ndef create_refresh_button(refresh_component, refresh_method, refreshed_args, elem_id):\n    return ui_common.create_refresh_button(refresh_component, refresh_method, refreshed_args, elem_id)\n\n\ndef connect_clear_prompt(button): # pylint: disable=unused-argument\n    pass\n\n\ndef setup_progressbar(*args, **kwargs): # pylint: disable=unused-argument\n    pass\n\n\ndef create_ui(startup_timer = None):\n    global interfaces # pylint: disable=global-statement\n    if startup_timer is None:\n        timer.startup = timer.Timer()\n    ui_javascript.reload_javascript()\n    generation_parameters_copypaste.reset()\n    scripts_manager.scripts_current = None\n    if hasattr(shared.cmd_opts, 'disable'):\n        ui_disabled = [x.strip().lower() for x in shared.cmd_opts.disable.split(',') if x.strip()]\n    else:\n        ui_disabled = []\n    interfaces.clear()\n    shared.opts.ui_disabled = ui_disabled\n    if len(ui_disabled) > 0:\n        shared.log.warning(f'UI disabled: {ui_disabled}')\n\n    if 'txt2img' not in ui_disabled:\n        with gr.Blocks(analytics_enabled=False) as txt2img_interface:\n            from modules import ui_txt2img\n            ui_txt2img.create_ui()\n            timer.startup.record(\"ui-txt2img\")\n            interfaces += [(txt2img_interface, \"Text\", \"txt2img\")]\n\n    if 'img2img' not in ui_disabled:\n        with gr.Blocks(analytics_enabled=False) as img2img_interface:\n            from modules import ui_img2img\n            ui_img2img.create_ui()\n            timer.startup.record(\"ui-img2img\")\n            interfaces += [(img2img_interface, \"Image\", \"img2img\")]\n\n    if 'control' not in ui_disabled:\n        with gr.Blocks(analytics_enabled=False) as control_interface:\n            from modules import ui_control\n            ui_control.create_ui()\n            timer.startup.record(\"ui-control\")\n            interfaces += [(control_interface, \"Control\", \"control\")]\n\n    if 'video' not in ui_disabled:\n        with gr.Blocks(analytics_enabled=False) as video_interface:\n            from modules import ui_video\n            ui_video.create_ui()\n            timer.startup.record(\"ui-video\")\n            interfaces += [(video_interface, \"Video\", \"video\")]\n\n    if 'extras' not in ui_disabled:\n        with gr.Blocks(analytics_enabled=False) as extras_interface:\n            from modules import ui_postprocessing\n            ui_postprocessing.create_ui()\n            timer.startup.record(\"ui-extras\")\n            interfaces += [(extras_interface, \"Process\", \"process\")]\n\n    if 'caption' not in ui_disabled:\n        with gr.Blocks(analytics_enabled=False) as caption_interface:\n            from modules import ui_caption\n            ui_caption.create_ui()\n            timer.startup.record(\"ui-caption\")\n            interfaces += [(caption_interface, \"Caption\", \"caption\")]\n\n    if 'models' not in ui_disabled:\n        with gr.Blocks(analytics_enabled=False) as models_interface:\n            from modules import ui_models\n            ui_models.create_ui()\n            timer.startup.record(\"ui-models\")\n            interfaces += [(models_interface, \"Models\", \"models\")]\n\n    if 'gallery' not in ui_disabled:\n        with gr.Blocks(analytics_enabled=False) as gallery_interface:\n            from modules import ui_gallery\n            ui_gallery.create_ui()\n            timer.startup.record(\"ui-gallery\")\n            interfaces += [(gallery_interface, \"Gallery\", \"gallery\")]\n\n    interfaces += script_callbacks.ui_tabs_callback()\n\n    with gr.Blocks(analytics_enabled=False) as settings_interface:\n        from modules import ui_settings\n        ui_settings.create_ui(ui_disabled)\n        global ui_system_tabs # pylint: disable=global-statement\n        ui_system_tabs = ui_settings.ui_system_tabs\n        shared.opts.reorder()\n        timer.startup.record(\"ui-extensions\")\n        interfaces += [(settings_interface, \"System\", \"system\")]\n\n    if 'info' not in ui_disabled:\n        with gr.Blocks(analytics_enabled=False) as info_interface:\n            from modules import ui_docs\n            ui_docs.create_ui()\n            timer.startup.record(\"ui-info\")\n            interfaces += [(info_interface, \"Info\", \"info\")]\n\n    if 'extensions' not in ui_disabled:\n        with gr.Blocks(analytics_enabled=False) as extensions_interface:\n            from modules import ui_extensions\n            ui_extensions.create_ui()\n            timer.startup.record(\"ui-extensions\")\n            interfaces += [(extensions_interface, \"Extensions\", \"extensions\")]\n\n    ui_app = ui_settings.create_quicksettings(interfaces)\n\n    shared.tab_names = []\n    for _interface, label, _ifid in interfaces:\n        shared.tab_names.append(label)\n\n    return ui_app\n"
  },
  {
    "path": "modules/ui_caption.py",
    "content": "import gradio as gr\nfrom modules import shared, ui_common, generation_parameters_copypaste\nfrom modules.interrogate import openclip\n\n\ndefault_task = \"Short Caption\"\n\ndef vlm_caption_wrapper(question, system_prompt, prompt, image, model_name, prefill, thinking_mode):\n    \"\"\"Wrapper for vqa.interrogate that handles annotated image display.\"\"\"\n    from modules.interrogate import vqa\n    answer = vqa.interrogate(question, system_prompt, prompt, image, model_name, prefill, thinking_mode)\n    annotated_image = vqa.get_last_annotated_image()\n    if annotated_image is not None:\n        return answer, gr.update(value=annotated_image, visible=True)\n    return answer, gr.update(visible=False)\n\n\ndef update_vlm_prompts_for_model(model_name):\n    \"\"\"Update the task dropdown choices based on selected model.\"\"\"\n    from modules.interrogate import vqa\n    prompts = vqa.get_prompts_for_model(model_name)\n    return gr.update(choices=prompts, value=prompts[0] if prompts else default_task)\n\n\ndef update_vlm_prompt_placeholder(question):\n    \"\"\"Update the prompt field placeholder based on selected task.\"\"\"\n    from modules.interrogate import vqa\n    placeholder = vqa.get_prompt_placeholder(question)\n    return gr.update(placeholder=placeholder)\n\n\ndef update_vlm_params(*args):\n    vlm_max_tokens, vlm_num_beams, vlm_temperature, vlm_do_sample, vlm_top_k, vlm_top_p, vlm_keep_prefill, vlm_keep_thinking, vlm_thinking_mode = args\n    shared.opts.interrogate_vlm_max_length = int(vlm_max_tokens)\n    shared.opts.interrogate_vlm_num_beams = int(vlm_num_beams)\n    shared.opts.interrogate_vlm_temperature = float(vlm_temperature)\n    shared.opts.interrogate_vlm_do_sample = bool(vlm_do_sample)\n    shared.opts.interrogate_vlm_top_k = int(vlm_top_k)\n    shared.opts.interrogate_vlm_top_p = float(vlm_top_p)\n    shared.opts.interrogate_vlm_keep_prefill = bool(vlm_keep_prefill)\n    shared.opts.interrogate_vlm_keep_thinking = bool(vlm_keep_thinking)\n    shared.opts.interrogate_vlm_thinking_mode = bool(vlm_thinking_mode)\n    shared.opts.save()\n\n\ndef tagger_tag_wrapper(image, model_name, general_threshold, character_threshold, include_rating, exclude_tags, max_tags, sort_alpha, use_spaces, escape_brackets):\n    \"\"\"Wrapper for tagger.tag that maps UI inputs to function parameters.\"\"\"\n    from modules.interrogate import tagger\n    return tagger.tag(\n        image=image,\n        model_name=model_name,\n        general_threshold=general_threshold,\n        character_threshold=character_threshold,\n        include_rating=include_rating,\n        exclude_tags=exclude_tags,\n        max_tags=int(max_tags),\n        sort_alpha=sort_alpha,\n        use_spaces=use_spaces,\n        escape_brackets=escape_brackets,\n    )\n\n\ndef tagger_batch_wrapper(model_name, batch_files, batch_folder, batch_str, save_output, save_append, recursive, general_threshold, character_threshold, include_rating, exclude_tags, max_tags, sort_alpha, use_spaces, escape_brackets):\n    \"\"\"Wrapper for tagger.batch that maps UI inputs to function parameters.\"\"\"\n    from modules.interrogate import tagger\n    return tagger.batch(\n        model_name=model_name,\n        batch_files=batch_files,\n        batch_folder=batch_folder,\n        batch_str=batch_str,\n        save_output=save_output,\n        save_append=save_append,\n        recursive=recursive,\n        general_threshold=general_threshold,\n        character_threshold=character_threshold,\n        include_rating=include_rating,\n        exclude_tags=exclude_tags,\n        max_tags=int(max_tags),\n        sort_alpha=sort_alpha,\n        use_spaces=use_spaces,\n        escape_brackets=escape_brackets,\n    )\n\n\ndef update_tagger_ui(model_name):\n    \"\"\"Update UI controls based on selected tagger model.\n\n    When DeepBooru is selected, character_threshold is disabled since DeepBooru\n    doesn't support separate character threshold.\n    \"\"\"\n    from modules.interrogate import tagger\n    is_db = tagger.is_deepbooru(model_name)\n    return [\n        gr.update(interactive=not is_db),  # character_threshold\n        gr.update(),  # include_rating - now supported by both taggers\n    ]\n\n\ndef update_tagger_params(model_name, general_threshold, character_threshold, include_rating, max_tags, sort_alpha, use_spaces, escape_brackets, exclude_tags, show_scores):\n    \"\"\"Save all tagger parameters to shared.opts when UI controls change.\"\"\"\n    shared.opts.waifudiffusion_model = model_name\n    shared.opts.tagger_threshold = float(general_threshold)\n    shared.opts.waifudiffusion_character_threshold = float(character_threshold)\n    shared.opts.tagger_include_rating = bool(include_rating)\n    shared.opts.tagger_max_tags = int(max_tags)\n    shared.opts.tagger_sort_alpha = bool(sort_alpha)\n    shared.opts.tagger_use_spaces = bool(use_spaces)\n    shared.opts.tagger_escape_brackets = bool(escape_brackets)\n    shared.opts.tagger_exclude_tags = str(exclude_tags)\n    shared.opts.tagger_show_scores = bool(show_scores)\n    shared.opts.save()\n\n\ndef update_clip_params(*args):\n    clip_min_length, clip_max_length, clip_chunk_size, clip_min_flavors, clip_max_flavors, clip_flavor_count, clip_num_beams = args\n    shared.opts.interrogate_clip_min_length = int(clip_min_length)\n    shared.opts.interrogate_clip_max_length = int(clip_max_length)\n    shared.opts.interrogate_clip_min_flavors = int(clip_min_flavors)\n    shared.opts.interrogate_clip_max_flavors = int(clip_max_flavors)\n    shared.opts.interrogate_clip_num_beams = int(clip_num_beams)\n    shared.opts.interrogate_clip_flavor_count = int(clip_flavor_count)\n    shared.opts.interrogate_clip_chunk_size = int(clip_chunk_size)\n    shared.opts.save()\n    openclip.update_interrogate_params()\n\n\ndef update_clip_model_params(clip_model, blip_model, clip_mode):\n    \"\"\"Save CLiP model settings to shared.opts when UI controls change.\"\"\"\n    shared.opts.interrogate_clip_model = str(clip_model)\n    shared.opts.interrogate_blip_model = str(blip_model)\n    shared.opts.interrogate_clip_mode = str(clip_mode)\n    shared.opts.save()\n\n\ndef update_vlm_model_params(vlm_model, vlm_system):\n    \"\"\"Save VLM model settings to shared.opts when UI controls change.\"\"\"\n    shared.opts.interrogate_vlm_model = str(vlm_model)\n    shared.opts.interrogate_vlm_system = str(vlm_system)\n    shared.opts.save()\n\n\ndef update_default_caption_type(caption_type):\n    \"\"\"Save the default caption type to shared.opts.\"\"\"\n    shared.opts.interrogate_default_type = str(caption_type)\n    shared.opts.save()\n\n\ndef create_ui():\n    shared.log.debug('UI initialize: tab=caption')\n    with gr.Row(equal_height=False, variant='compact', elem_classes=\"caption\", elem_id=\"caption_tab\"):\n        with gr.Column(variant='compact', elem_id='interrogate_input'):\n            with gr.Row():\n                image = gr.Image(type='pil', label=\"Image\", height=512, visible=True, image_mode='RGB', elem_id='interrogate_image')\n            with gr.Tabs(elem_id=\"mode_caption\"):\n                with gr.Tab(\"VLM Caption\", elem_id=\"tab_vlm_caption\"):\n                    from modules.interrogate import vqa\n                    current_vlm_model = shared.opts.interrogate_vlm_model or vqa.vlm_default\n                    initial_prompts = vqa.get_prompts_for_model(current_vlm_model)\n                    with gr.Row():\n                        vlm_system = gr.Textbox(label=\"System Prompt\", value=vqa.vlm_system, lines=1, elem_id='vlm_system')\n                    with gr.Row():\n                        vlm_question = gr.Dropdown(label=\"Task\", allow_custom_value=False, choices=initial_prompts, value=default_task, elem_id='vlm_question')\n                    with gr.Row():\n                        vlm_prompt = gr.Textbox(label=\"Prompt\", placeholder=vqa.get_prompt_placeholder(initial_prompts[0]), lines=2, elem_id='vlm_prompt')\n                    with gr.Row(elem_id='interrogate_buttons_query'):\n                        vlm_model = gr.Dropdown(list(vqa.vlm_models), value=current_vlm_model, label='VLM Model', elem_id='vlm_model')\n                    with gr.Row():\n                        vlm_load_btn = gr.Button(value='Load', elem_id='vlm_load', variant='secondary')\n                        vlm_unload_btn = gr.Button(value='Unload', elem_id='vlm_unload', variant='secondary')\n                    with gr.Accordion(label='VLM: Advanced Options', open=False, visible=True):\n                        with gr.Row():\n                            vlm_max_tokens = gr.Slider(label='VLM Max Tokens', value=shared.opts.interrogate_vlm_max_length, minimum=16, maximum=4096, step=1, elem_id='vlm_max_tokens')\n                            vlm_num_beams = gr.Slider(label='VLM Num Beams', value=shared.opts.interrogate_vlm_num_beams, minimum=1, maximum=16, step=1, elem_id='vlm_num_beams')\n                            vlm_temperature = gr.Slider(label='VLM Temperature', value=shared.opts.interrogate_vlm_temperature, minimum=0.0, maximum=1.0, step=0.01, elem_id='vlm_temperature')\n                        with gr.Row():\n                            vlm_top_k = gr.Slider(label='Top-K', value=shared.opts.interrogate_vlm_top_k, minimum=0, maximum=99, step=1, elem_id='vlm_top_k')\n                            vlm_top_p = gr.Slider(label='Top-P', value=shared.opts.interrogate_vlm_top_p, minimum=0.0, maximum=1.0, step=0.01, elem_id='vlm_top_p')\n                        with gr.Row():\n                            vlm_do_sample = gr.Checkbox(label='Use Samplers', value=shared.opts.interrogate_vlm_do_sample, elem_id='vlm_do_sample')\n                            vlm_thinking_mode = gr.Checkbox(label='Thinking Mode', value=shared.opts.interrogate_vlm_thinking_mode, elem_id='vlm_thinking_mode')\n                        with gr.Row():\n                            vlm_keep_thinking = gr.Checkbox(label='Keep Thinking Trace', value=shared.opts.interrogate_vlm_keep_thinking, elem_id='vlm_keep_thinking')\n                            vlm_keep_prefill = gr.Checkbox(label='Keep Prefill', value=shared.opts.interrogate_vlm_keep_prefill, elem_id='vlm_keep_prefill')\n                        with gr.Row():\n                            vlm_prefill = gr.Textbox(label='Prefill Text', value='', lines=1, elem_id='vlm_prefill', placeholder='Optional prefill text for model to continue from')\n                        vlm_max_tokens.change(fn=update_vlm_params, inputs=[vlm_max_tokens, vlm_num_beams, vlm_temperature, vlm_do_sample, vlm_top_k, vlm_top_p, vlm_keep_prefill, vlm_keep_thinking, vlm_thinking_mode], outputs=[])\n                        vlm_num_beams.change(fn=update_vlm_params, inputs=[vlm_max_tokens, vlm_num_beams, vlm_temperature, vlm_do_sample, vlm_top_k, vlm_top_p, vlm_keep_prefill, vlm_keep_thinking, vlm_thinking_mode], outputs=[])\n                        vlm_temperature.change(fn=update_vlm_params, inputs=[vlm_max_tokens, vlm_num_beams, vlm_temperature, vlm_do_sample, vlm_top_k, vlm_top_p, vlm_keep_prefill, vlm_keep_thinking, vlm_thinking_mode], outputs=[])\n                        vlm_do_sample.change(fn=update_vlm_params, inputs=[vlm_max_tokens, vlm_num_beams, vlm_temperature, vlm_do_sample, vlm_top_k, vlm_top_p, vlm_keep_prefill, vlm_keep_thinking, vlm_thinking_mode], outputs=[])\n                        vlm_top_k.change(fn=update_vlm_params, inputs=[vlm_max_tokens, vlm_num_beams, vlm_temperature, vlm_do_sample, vlm_top_k, vlm_top_p, vlm_keep_prefill, vlm_keep_thinking, vlm_thinking_mode], outputs=[])\n                        vlm_top_p.change(fn=update_vlm_params, inputs=[vlm_max_tokens, vlm_num_beams, vlm_temperature, vlm_do_sample, vlm_top_k, vlm_top_p, vlm_keep_prefill, vlm_keep_thinking, vlm_thinking_mode], outputs=[])\n                        vlm_keep_prefill.change(fn=update_vlm_params, inputs=[vlm_max_tokens, vlm_num_beams, vlm_temperature, vlm_do_sample, vlm_top_k, vlm_top_p, vlm_keep_prefill, vlm_keep_thinking, vlm_thinking_mode], outputs=[])\n                        vlm_keep_thinking.change(fn=update_vlm_params, inputs=[vlm_max_tokens, vlm_num_beams, vlm_temperature, vlm_do_sample, vlm_top_k, vlm_top_p, vlm_keep_prefill, vlm_keep_thinking, vlm_thinking_mode], outputs=[])\n                        vlm_thinking_mode.change(fn=update_vlm_params, inputs=[vlm_max_tokens, vlm_num_beams, vlm_temperature, vlm_do_sample, vlm_top_k, vlm_top_p, vlm_keep_prefill, vlm_keep_thinking, vlm_thinking_mode], outputs=[])\n                    with gr.Accordion(label='VLM: Batch Caption', open=False, visible=True):\n                        with gr.Row():\n                            vlm_batch_files = gr.File(label=\"Files\", show_label=True, file_count='multiple', file_types=['image'], interactive=True, height=100, elem_id='vlm_batch_files')\n                        with gr.Row():\n                            vlm_batch_folder = gr.File(label=\"Folder\", show_label=True, file_count='directory', file_types=['image'], interactive=True, height=100, elem_id='vlm_batch_folder')\n                        with gr.Row():\n                            vlm_batch_str = gr.Textbox(label=\"Folder\", value=\"\", interactive=True, elem_id='vlm_batch_str')\n                        with gr.Row():\n                            vlm_save_output = gr.Checkbox(label='Save Caption Files', value=True, elem_id=\"vlm_save_output\")\n                            vlm_save_append = gr.Checkbox(label='Append Caption Files', value=False, elem_id=\"vlm_save_append\")\n                            vlm_folder_recursive = gr.Checkbox(label='Recursive', value=False, elem_id=\"vlm_folder_recursive\")\n                        with gr.Row(elem_id='interrogate_buttons_batch'):\n                            btn_vlm_caption_batch = gr.Button(\"Batch Caption\", variant='primary', elem_id=\"btn_vlm_caption_batch\")\n                    with gr.Row():\n                        btn_vlm_caption = gr.Button(\"Caption\", variant='primary', elem_id=\"btn_vlm_caption\")\n                with gr.Tab(\"OpenCLiP\", elem_id='tab_clip_interrogate'):\n                    with gr.Row():\n                        clip_model = gr.Dropdown([], value=shared.opts.interrogate_clip_model, label='CLiP Model', elem_id='clip_clip_model')\n                        ui_common.create_refresh_button(clip_model, openclip.refresh_clip_models, lambda: {\"choices\": openclip.refresh_clip_models()}, 'clip_models_refresh')\n                        blip_model = gr.Dropdown(list(openclip.caption_models), value=shared.opts.interrogate_blip_model, label='Caption Model', elem_id='btN_clip_blip_model')\n                        clip_mode = gr.Dropdown(openclip.caption_types, label='Mode', value='fast', elem_id='clip_clip_mode')\n                    with gr.Accordion(label='CLiP: Advanced Options', open=False, visible=True):\n                        with gr.Row():\n                            clip_min_length = gr.Slider(label='clip: min length', value=shared.opts.interrogate_clip_min_length, minimum=8, maximum=75, step=1, elem_id='clip_caption_min_length')\n                            clip_max_length = gr.Slider(label='clip: max length', value=shared.opts.interrogate_clip_max_length, minimum=16, maximum=1024, step=1, elem_id='clip_caption_max_length')\n                            clip_chunk_size = gr.Slider(label='clip: chunk size', value=shared.opts.interrogate_clip_chunk_size, minimum=256, maximum=4096, step=8, elem_id='clip_chunk_size')\n                        with gr.Row():\n                            clip_min_flavors = gr.Slider(label='clip: min flavors', value=shared.opts.interrogate_clip_min_flavors, minimum=1, maximum=16, step=1, elem_id='clip_min_flavors')\n                            clip_max_flavors = gr.Slider(label='clip: max flavors', value=shared.opts.interrogate_clip_max_flavors, minimum=1, maximum=64, step=1, elem_id='clip_max_flavors')\n                            clip_flavor_count = gr.Slider(label='clip: intermediates', value=shared.opts.interrogate_clip_flavor_count, minimum=256, maximum=4096, step=8, elem_id='clip_flavor_intermediate_count')\n                        with gr.Row():\n                            clip_num_beams = gr.Slider(label='clip: num beams', value=shared.opts.interrogate_clip_num_beams, minimum=1, maximum=16, step=1, elem_id='clip_num_beams')\n                        clip_min_length.change(fn=update_clip_params, inputs=[clip_min_length, clip_max_length, clip_chunk_size, clip_min_flavors, clip_max_flavors, clip_flavor_count, clip_num_beams], outputs=[])\n                        clip_max_length.change(fn=update_clip_params, inputs=[clip_min_length, clip_max_length, clip_chunk_size, clip_min_flavors, clip_max_flavors, clip_flavor_count, clip_num_beams], outputs=[])\n                        clip_chunk_size.change(fn=update_clip_params, inputs=[clip_min_length, clip_max_length, clip_chunk_size, clip_min_flavors, clip_max_flavors, clip_flavor_count, clip_num_beams], outputs=[])\n                        clip_min_flavors.change(fn=update_clip_params, inputs=[clip_min_length, clip_max_length, clip_chunk_size, clip_min_flavors, clip_max_flavors, clip_flavor_count, clip_num_beams], outputs=[])\n                        clip_max_flavors.change(fn=update_clip_params, inputs=[clip_min_length, clip_max_length, clip_chunk_size, clip_min_flavors, clip_max_flavors, clip_flavor_count, clip_num_beams], outputs=[])\n                        clip_flavor_count.change(fn=update_clip_params, inputs=[clip_min_length, clip_max_length, clip_chunk_size, clip_min_flavors, clip_max_flavors, clip_flavor_count, clip_num_beams], outputs=[])\n                        clip_num_beams.change(fn=update_clip_params, inputs=[clip_min_length, clip_max_length, clip_chunk_size, clip_min_flavors, clip_max_flavors, clip_flavor_count, clip_num_beams], outputs=[])\n                    with gr.Accordion(label='CLiP: Batch Interrogate', open=False, visible=True):\n                        with gr.Row():\n                            clip_batch_files = gr.File(label=\"Files\", show_label=True, file_count='multiple', file_types=['image'], interactive=True, height=100, elem_id='clip_batch_files')\n                        with gr.Row():\n                            clip_batch_folder = gr.File(label=\"Folder\", show_label=True, file_count='directory', file_types=['image'], interactive=True, height=100, elem_id='clip_batch_folder')\n                        with gr.Row():\n                            clip_batch_str = gr.Textbox(label=\"Folder\", value=\"\", interactive=True, elem_id='clip_batch_str')\n                        with gr.Row():\n                            clip_save_output = gr.Checkbox(label='Save Caption Files', value=True, elem_id=\"clip_save_output\")\n                            clip_save_append = gr.Checkbox(label='Append Caption Files', value=False, elem_id=\"clip_save_append\")\n                            clip_folder_recursive = gr.Checkbox(label='Recursive', value=False, elem_id=\"clip_folder_recursive\")\n                        with gr.Row():\n                            btn_clip_interrogate_batch = gr.Button(\"Batch Interrogate\", variant='primary', elem_id=\"btn_clip_interrogate_batch\")\n                    with gr.Row():\n                        btn_clip_interrogate_img = gr.Button(\"Interrogate\", variant='primary', elem_id=\"btn_clip_interrogate_img\")\n                        btn_clip_analyze_img = gr.Button(\"Analyze\", variant='primary', elem_id=\"btn_clip_analyze_img\")\n                with gr.Tab(\"Tagger\", elem_id='tab_tagger'):\n                    from modules.interrogate import tagger\n                    with gr.Row():\n                        wd_model = gr.Dropdown(tagger.get_models(), value=shared.opts.waifudiffusion_model, label='Tagger Model', elem_id='wd_model')\n                        ui_common.create_refresh_button(wd_model, tagger.refresh_models, lambda: {\"choices\": tagger.get_models()}, 'wd_models_refresh')\n                    with gr.Row():\n                        wd_load_btn = gr.Button(value='Load', elem_id='wd_load', variant='secondary')\n                        wd_unload_btn = gr.Button(value='Unload', elem_id='wd_unload', variant='secondary')\n                    with gr.Accordion(label='Tagger: Advanced Options', open=True, visible=True):\n                        with gr.Row():\n                            wd_general_threshold = gr.Slider(label='General threshold', value=shared.opts.tagger_threshold, minimum=0.0, maximum=1.0, step=0.01, elem_id='wd_general_threshold')\n                            wd_character_threshold = gr.Slider(label='Character threshold', value=shared.opts.waifudiffusion_character_threshold, minimum=0.0, maximum=1.0, step=0.01, elem_id='wd_character_threshold')\n                        with gr.Row():\n                            wd_max_tags = gr.Slider(label='Max tags', value=shared.opts.tagger_max_tags, minimum=1, maximum=512, step=1, elem_id='wd_max_tags')\n                            wd_include_rating = gr.Checkbox(label='Include rating', value=shared.opts.tagger_include_rating, elem_id='wd_include_rating')\n                        with gr.Row():\n                            wd_sort_alpha = gr.Checkbox(label='Sort alphabetically', value=shared.opts.tagger_sort_alpha, elem_id='wd_sort_alpha')\n                            wd_use_spaces = gr.Checkbox(label='Use spaces', value=shared.opts.tagger_use_spaces, elem_id='wd_use_spaces')\n                            wd_escape = gr.Checkbox(label='Escape brackets', value=shared.opts.tagger_escape_brackets, elem_id='wd_escape')\n                        with gr.Row():\n                            wd_exclude_tags = gr.Textbox(label='Exclude tags', value=shared.opts.tagger_exclude_tags, placeholder='Comma-separated tags to exclude', elem_id='wd_exclude_tags')\n                        with gr.Row():\n                            wd_show_scores = gr.Checkbox(label='Show confidence scores', value=shared.opts.tagger_show_scores, elem_id='wd_show_scores')\n                    gr.HTML('<style>#wd_character_threshold:has(input:disabled), #wd_include_rating:has(input:disabled) { opacity: 0.5; }</style>')\n                    with gr.Accordion(label='Tagger: Batch', open=False, visible=True):\n                        with gr.Row():\n                            wd_batch_files = gr.File(label=\"Files\", show_label=True, file_count='multiple', file_types=['image'], interactive=True, height=100, elem_id='wd_batch_files')\n                        with gr.Row():\n                            wd_batch_folder = gr.File(label=\"Folder\", show_label=True, file_count='directory', file_types=['image'], interactive=True, height=100, elem_id='wd_batch_folder')\n                        with gr.Row():\n                            wd_batch_str = gr.Textbox(label=\"Folder\", value=\"\", interactive=True, elem_id='wd_batch_str')\n                        with gr.Row():\n                            wd_save_output = gr.Checkbox(label='Save Caption Files', value=True, elem_id=\"wd_save_output\")\n                            wd_save_append = gr.Checkbox(label='Append Caption Files', value=False, elem_id=\"wd_save_append\")\n                            wd_folder_recursive = gr.Checkbox(label='Recursive', value=False, elem_id=\"wd_folder_recursive\")\n                        with gr.Row():\n                            btn_wd_tag_batch = gr.Button(\"Batch Tag\", variant='primary', elem_id=\"btn_wd_tag_batch\")\n                    with gr.Row():\n                        btn_wd_tag = gr.Button(\"Tag\", variant='primary', elem_id=\"btn_wd_tag\")\n                with gr.Tab(\"Interrogate\", elem_id='tab_interrogate'):\n                    with gr.Row():\n                        default_caption_type = gr.Radio(\n                            choices=[\"VLM\", \"OpenCLiP\", \"Tagger\"],\n                            value=shared.opts.interrogate_default_type,\n                            label=\"Default Caption Type\",\n                            elem_id=\"default_caption_type\"\n                        )\n        with gr.Column(variant='compact', elem_id='interrogate_output'):\n            with gr.Row(elem_id='interrogate_output_prompt'):\n                prompt = gr.Textbox(label=\"Answer\", lines=12, placeholder=\"ai generated image description\")\n            with gr.Row(elem_id='interrogate_output_image'):\n                output_image = gr.Image(type='pil', label=\"Annotated Image\", interactive=False, visible=False, elem_id='interrogate_output_image_display')\n            with gr.Row(elem_id='interrogate_output_classes'):\n                medium = gr.Label(elem_id=\"interrogate_label_medium\", label=\"Medium\", num_top_classes=5, visible=False)\n                artist = gr.Label(elem_id=\"interrogate_label_artist\", label=\"Artist\", num_top_classes=5, visible=False)\n                movement = gr.Label(elem_id=\"interrogate_label_movement\", label=\"Movement\", num_top_classes=5, visible=False)\n                trending = gr.Label(elem_id=\"interrogate_label_trending\", label=\"Trending\", num_top_classes=5, visible=False)\n                flavor = gr.Label(elem_id=\"interrogate_label_flavor\", label=\"Flavor\", num_top_classes=5, visible=False)\n                clip_labels_text = gr.Textbox(elem_id=\"interrogate_clip_labels_text\", label=\"CLIP Analysis\", lines=15, interactive=False, visible=False, show_label=False)\n            with gr.Row(elem_id='copy_buttons_interrogate'):\n                copy_interrogate_buttons = generation_parameters_copypaste.create_buttons([\"txt2img\", \"img2img\", \"control\", \"extras\"])\n\n    btn_clip_interrogate_img.click(openclip.interrogate_image, inputs=[image, clip_model, blip_model, clip_mode], outputs=[prompt]).then(fn=lambda: gr.update(visible=False), inputs=[], outputs=[output_image])\n    btn_clip_analyze_img.click(openclip.analyze_image, inputs=[image, clip_model, blip_model], outputs=[medium, artist, movement, trending, flavor, clip_labels_text]).then(fn=lambda: gr.update(visible=False), inputs=[], outputs=[output_image])\n    btn_clip_interrogate_batch.click(fn=openclip.interrogate_batch, inputs=[clip_batch_files, clip_batch_folder, clip_batch_str, clip_model, blip_model, clip_mode, clip_save_output, clip_save_append, clip_folder_recursive], outputs=[prompt]).then(fn=lambda: gr.update(visible=False), inputs=[], outputs=[output_image])\n    btn_vlm_caption.click(fn=vlm_caption_wrapper, inputs=[vlm_question, vlm_system, vlm_prompt, image, vlm_model, vlm_prefill, vlm_thinking_mode], outputs=[prompt, output_image])\n    btn_vlm_caption_batch.click(fn=vqa.batch, inputs=[vlm_model, vlm_system, vlm_batch_files, vlm_batch_folder, vlm_batch_str, vlm_question, vlm_prompt, vlm_save_output, vlm_save_append, vlm_folder_recursive, vlm_prefill, vlm_thinking_mode], outputs=[prompt]).then(fn=lambda: gr.update(visible=False), inputs=[], outputs=[output_image])\n    btn_wd_tag.click(fn=tagger_tag_wrapper, inputs=[image, wd_model, wd_general_threshold, wd_character_threshold, wd_include_rating, wd_exclude_tags, wd_max_tags, wd_sort_alpha, wd_use_spaces, wd_escape], outputs=[prompt]).then(fn=lambda: gr.update(visible=False), inputs=[], outputs=[output_image])\n    btn_wd_tag_batch.click(fn=tagger_batch_wrapper, inputs=[wd_model, wd_batch_files, wd_batch_folder, wd_batch_str, wd_save_output, wd_save_append, wd_folder_recursive, wd_general_threshold, wd_character_threshold, wd_include_rating, wd_exclude_tags, wd_max_tags, wd_sort_alpha, wd_use_spaces, wd_escape], outputs=[prompt]).then(fn=lambda: gr.update(visible=False), inputs=[], outputs=[output_image])\n\n    # Dynamic UI updates based on selected model and task\n    vlm_model.change(fn=update_vlm_prompts_for_model, inputs=[vlm_model], outputs=[vlm_question])\n    vlm_question.change(fn=update_vlm_prompt_placeholder, inputs=[vlm_question], outputs=[vlm_prompt])\n\n    # Load/Unload model buttons\n    vlm_load_btn.click(fn=vqa.load_model, inputs=[vlm_model], outputs=[])\n    vlm_unload_btn.click(fn=vqa.unload_model, inputs=[], outputs=[])\n    def tagger_load_wrapper(model_name):\n        from modules.interrogate import tagger\n        return tagger.load_model(model_name)\n    def tagger_unload_wrapper():\n        from modules.interrogate import tagger\n        return tagger.unload_model()\n    wd_load_btn.click(fn=tagger_load_wrapper, inputs=[wd_model], outputs=[])\n    wd_unload_btn.click(fn=tagger_unload_wrapper, inputs=[], outputs=[])\n\n    # Dynamic UI update when tagger model changes (disable controls for DeepBooru)\n    wd_model.change(fn=update_tagger_ui, inputs=[wd_model], outputs=[wd_character_threshold, wd_include_rating], show_progress=False)\n\n    # Save tagger parameters to shared.opts when UI controls change\n    tagger_inputs = [wd_model, wd_general_threshold, wd_character_threshold, wd_include_rating, wd_max_tags, wd_sort_alpha, wd_use_spaces, wd_escape, wd_exclude_tags, wd_show_scores]\n    wd_model.change(fn=update_tagger_params, inputs=tagger_inputs, outputs=[], show_progress=False)\n    wd_general_threshold.change(fn=update_tagger_params, inputs=tagger_inputs, outputs=[], show_progress=False)\n    wd_character_threshold.change(fn=update_tagger_params, inputs=tagger_inputs, outputs=[], show_progress=False)\n    wd_include_rating.change(fn=update_tagger_params, inputs=tagger_inputs, outputs=[], show_progress=False)\n    wd_max_tags.change(fn=update_tagger_params, inputs=tagger_inputs, outputs=[], show_progress=False)\n    wd_sort_alpha.change(fn=update_tagger_params, inputs=tagger_inputs, outputs=[], show_progress=False)\n    wd_use_spaces.change(fn=update_tagger_params, inputs=tagger_inputs, outputs=[], show_progress=False)\n    wd_escape.change(fn=update_tagger_params, inputs=tagger_inputs, outputs=[], show_progress=False)\n    wd_exclude_tags.change(fn=update_tagger_params, inputs=tagger_inputs, outputs=[], show_progress=False)\n    wd_show_scores.change(fn=update_tagger_params, inputs=tagger_inputs, outputs=[], show_progress=False)\n\n    # Save CLiP model parameters to shared.opts when UI controls change\n    clip_model_inputs = [clip_model, blip_model, clip_mode]\n    clip_model.change(fn=update_clip_model_params, inputs=clip_model_inputs, outputs=[], show_progress=False)\n    blip_model.change(fn=update_clip_model_params, inputs=clip_model_inputs, outputs=[], show_progress=False)\n    clip_mode.change(fn=update_clip_model_params, inputs=clip_model_inputs, outputs=[], show_progress=False)\n\n    # Save VLM model parameters to shared.opts when UI controls change\n    vlm_model_inputs = [vlm_model, vlm_system]\n    vlm_model.change(fn=update_vlm_model_params, inputs=vlm_model_inputs, outputs=[], show_progress=False)\n    vlm_system.change(fn=update_vlm_model_params, inputs=vlm_model_inputs, outputs=[], show_progress=False)\n\n    # Save default caption type to shared.opts when UI control changes\n    default_caption_type.change(fn=update_default_caption_type, inputs=[default_caption_type], outputs=[], show_progress=False)\n\n    for tabname, button in copy_interrogate_buttons.items():\n        generation_parameters_copypaste.register_paste_params_button(generation_parameters_copypaste.ParamBinding(paste_button=button, tabname=tabname, source_text_component=prompt, source_image_component=image,))\n    generation_parameters_copypaste.add_paste_fields(\"caption\", image, None)\n"
  },
  {
    "path": "modules/ui_common.py",
    "content": "import json\nimport html\nimport os\nimport shutil\nimport platform\nimport subprocess\nimport gradio as gr\nfrom modules import paths, call_queue, shared, errors, ui_sections, ui_symbols, ui_components, generation_parameters_copypaste, images, scripts_manager, script_callbacks, infotext, processing\n\n\nfolder_symbol = ui_symbols.folder\ndebug = shared.log.trace if os.environ.get('SD_PASTE_DEBUG', None) is not None else lambda *args, **kwargs: None\ndebug('Trace: PASTE')\n\n\ndef gr_show(visible=True):\n    return {\"visible\": visible, \"__type__\": \"update\"}\n\n\ndef update_generation_info(generation_info, html_info, img_index):\n    try:\n        if len(generation_info) == 0 and processing.processed is not None:\n            generation_info = processing.processed.js() or {}\n        if len(generation_info) == 0:\n            return html_info, html_info\n        generation_json = json.loads(generation_info)\n        if len(generation_json.get(\"infotexts\", [])) == 0:\n            return html_info, 'no infotexts found'\n        if img_index == -1:\n            img_index = 0\n        if img_index >= len(generation_json[\"infotexts\"]):\n            return html_info, 'error fetching infotext'\n        info = generation_json[\"infotexts\"][img_index]\n        html_info_formatted = infotext_to_html(info)\n        return html_info, html_info_formatted\n    except Exception as e:\n        shared.log.trace(f'Update info: info=\"{generation_info}\" {e}')\n    return html_info, html_info\n\n\ndef plaintext_to_html(text, elem_classes=[]):\n    res = f'<p class=\"plaintext {\" \".join(elem_classes)}\">' + '<br>\\n'.join([f\"{html.escape(x)}\" for x in text.split('\\n')]) + '</p>'\n    return res\n\n\ndef infotext_to_html(text):\n    res = infotext.parse(text)\n    prompt = res.get('Prompt', '')\n    negative = res.get('Negative prompt', '')\n    res.pop('Prompt', None)\n    res.pop('Negative prompt', None)\n    params = [f'{k}: {v}' for k, v in res.items() if v is not None and not k.endswith('-1') and not k.endswith('-2')]\n    params = '| '.join(params) if len(params) > 0 else ''\n    code = ''\n    if len(prompt) > 0:\n        code += f'<p><b>Prompt:</b> {html.escape(prompt)}</p>'\n    if len(negative) > 0:\n        code += f'<p><b>Negative:</b> {html.escape(negative)}</p>'\n    if len(params) > 0:\n        code += f'<p><b>Parameters:</b> {html.escape(params)}</p>'\n    return code\n\n\ndef delete_files(js_data, files, all_files, index):\n    try:\n        data = json.loads(js_data)\n    except Exception:\n        data = { 'index_of_first_image': 0 }\n    start_index = 0\n    first_index = data['index_of_first_image']\n    if (index > -1) and shared.opts.save_selected_only and (index >= first_index):  # ensures we are looking at a specific non-grid picture, and we have save_selected_only # pylint: disable=no-member\n        if index < len(files):\n            files = [files[index]]\n            start_index = index\n        else:\n            shared.log.error(f'Delete: index={index} first={first_index} files={len(files)} out of range')\n            files = []\n    deleted = []\n    all_files = [f.split('/file=')[1] if 'file=' in f else f for f in all_files] if isinstance(all_files, list) else []\n    all_files = [os.path.normpath(f) for f in all_files]\n    reference_dir = os.path.join('models', 'Reference')\n    for _image_index, filedata in enumerate(files, start_index):\n        try:\n            fn = os.path.normpath(filedata['name'])\n            if reference_dir in fn:\n                shared.log.warning(f'Delete: file=\"{fn}\" not allowed')\n                continue\n            if os.path.exists(fn) and os.path.isfile(fn):\n                deleted.append(fn)\n                os.remove(fn)\n                if fn in all_files:\n                    all_files.remove(fn)\n                    shared.log.info(f'Delete: image=\"{fn}\"')\n                else:\n                    shared.log.warning(f'Delete: image=\"{fn}\" ui mismatch')\n            base, _ext = os.path.splitext(fn)\n            desc = f'{base}.txt'\n            if os.path.exists(desc) and os.path.isfile(desc):\n                os.remove(desc)\n                shared.log.info(f'Delete: text=\"{fn}\"')\n        except Exception as e:\n            shared.log.error(f'Delete: file=\"{fn}\" {e}')\n    deleted = ', '.join(deleted) if len(deleted) > 0 else 'none'\n    return all_files, plaintext_to_html(f\"Deleted: {deleted}\", ['performance'])\n\n\ndef save_files(js_data, files, html_info, index):\n    os.makedirs(paths.resolve_output_path(shared.opts.outdir_samples, shared.opts.outdir_save), exist_ok=True)\n\n    class PObject: # pylint: disable=too-few-public-methods\n        def __init__(self, d=None):\n            if d is not None:\n                for k, v in d.items():\n                    setattr(self, k, v)\n            self.prompt = getattr(self, 'prompt', None) or getattr(self, 'Prompt', None) or ''\n            self.negative_prompt = getattr(self, 'negative_prompt', None) or getattr(self, 'Negative_prompt', None) or ''\n            self.sampler = getattr(self, 'sampler', None) or getattr(self, 'Sampler', None) or ''\n            self.sampler_name = self.sampler\n            self.seed = getattr(self, 'seed', None) or getattr(self, 'Seed', None) or 0\n            self.steps = getattr(self, 'steps', None) or getattr(self, 'Steps', None) or 0\n            self.width = getattr(self, 'width', None) or getattr(self, 'Width', None) or getattr(self, 'Size-1', None) or 0\n            self.height = getattr(self, 'height', None) or getattr(self, 'Height', None) or getattr(self, 'Size-2', None) or 0\n            self.cfg_scale = getattr(self, 'cfg_scale', None) or getattr(self, 'CFG scale', None) or 0\n            self.clip_skip = getattr(self, 'clip_skip', None) or getattr(self, 'Clip skip', None) or 1\n            self.denoising_strength = getattr(self, 'denoising_strength', None) or getattr(self, 'Denoising', None) or 0\n            self.index_of_first_image = getattr(self, 'index_of_first_image', 0)\n            self.subseed = getattr(self, 'subseed', None) or getattr(self, 'Subseed', None)\n            self.styles = getattr(self, 'styles', None) or getattr(self, 'Styles', None) or []\n            self.styles = [s.strip() for s in self.styles.split(',')] if isinstance(self.styles, str) else self.styles\n\n            self.outpath_grids = paths.resolve_output_path(shared.opts.outdir_grids, shared.opts.outdir_txt2img_grids)\n            self.infotexts = getattr(self, 'infotexts', [html_info])\n            self.infotext = self.infotexts[0] if len(self.infotexts) > 0 else html_info\n            self.all_negative_prompt = getattr(self, 'all_negative_prompts', [self.negative_prompt])\n            self.all_prompts = getattr(self, 'all_prompts', [self.prompt])\n            self.all_seeds = getattr(self, 'all_seeds', [self.seed])\n            self.all_subseeds = getattr(self, 'all_subseeds', [self.subseed])\n\n            self.n_iter = 1\n            self.batch_size = 1\n    try:\n        data = json.loads(js_data)\n    except Exception:\n        data = {}\n    p = PObject(data)\n    start_index = 0\n    if (index > -1) and shared.opts.save_selected_only and (index >= p.index_of_first_image):  # ensures we are looking at a specific non-grid picture, and we have save_selected_only # pylint: disable=no-member\n        if index < len(files):\n            files = [files[index]]\n            start_index = index\n        else:\n            shared.log.error(f'Save: index={index} first={p.index_of_first_image} files={len(files)} out of range')\n            files = []\n    filenames = []\n    fullfns = []\n    for image_index, filedata in enumerate(files, start_index):\n        is_grid = image_index < p.index_of_first_image # pylint: disable=no-member\n        i = 0 if is_grid else (image_index - p.index_of_first_image) # pylint: disable=no-member\n        while len(p.all_seeds) <= i:\n            p.all_seeds.append(p.seed)\n        while len(p.all_prompts) <= i:\n            p.all_prompts.append(p.prompt)\n        while len(p.infotexts) <= i:\n            p.infotexts.append(p.infotext)\n        if 'name' in filedata and (paths.temp_dir not in filedata['name']) and os.path.isfile(filedata['name']):\n            fullfn = filedata['name']\n            fullfns.append(fullfn)\n            destination = paths.resolve_output_path(shared.opts.outdir_samples, shared.opts.outdir_save)\n            namegen = images.FilenameGenerator(p, seed=p.all_seeds[i], prompt=p.all_prompts[i], image=None)  # pylint: disable=no-member\n            dirname = namegen.apply(shared.opts.directories_filename_pattern or \"[prompt_words]\").lstrip(' ').rstrip('\\\\ /')\n            destination = os.path.join(destination, dirname)\n            destination = namegen.sanitize(destination)\n            os.makedirs(destination, exist_ok = True)\n            tgt_filename = os.path.join(destination, os.path.basename(fullfn))\n            relfn = os.path.relpath(tgt_filename, paths.resolve_output_path(shared.opts.outdir_samples, shared.opts.outdir_save))\n            filenames.append(relfn)\n            if not os.path.exists(tgt_filename):\n                try:\n                    shutil.copy(fullfn, destination)\n                    shared.log.info(f'Copying image: file=\"{fullfn}\" folder=\"{destination}\"')\n                except Exception as e:\n                    shared.log.error(f'Copying image: {fullfn} {e}')\n            if shared.opts.save_txt:\n                try:\n                    from PIL import Image\n                    image = Image.open(fullfn)\n                    info, _ = images.read_info_from_image(image)\n                    filename_txt = f\"{os.path.splitext(tgt_filename)[0]}.txt\"\n                    with open(filename_txt, \"w\", encoding=\"utf8\") as file:\n                        file.write(f\"{info}\\n\")\n                    shared.log.debug(f'Save: text=\"{filename_txt}\"')\n                except Exception as e:\n                    shared.log.warning(f'Image description save failed: {filename_txt} {e}')\n            script_callbacks.image_save_btn_callback(tgt_filename)\n        else:\n            image = generation_parameters_copypaste.image_from_url_text(filedata)\n            info = p.infotexts[i + 1] if len(p.infotexts) > len(p.all_seeds) else p.infotexts[i] # infotexts may be offset by 1 because the first image is the grid\n            if len(info) == 0:\n                info = None\n            if (js_data is None or len(js_data) == 0) and image is not None and image.info is not None:\n                info, _items = images.read_info_from_image(image)\n                items = infotext.parse(info)\n                p = PObject(items)\n            try:\n                seed = p.all_seeds[i] if i < len(p.all_seeds) else p.seed\n                prompt = p.all_prompts[i] if i < len(p.all_prompts) else p.prompt\n                fullfn, txt_fullfn, _exif = images.save_image(image, paths.resolve_output_path(shared.opts.outdir_samples, shared.opts.outdir_save), \"\", seed=seed, prompt=prompt, info=info, extension=shared.opts.samples_format, grid=is_grid, p=p)\n            except Exception as e:\n                fullfn, txt_fullfn = None, None\n                shared.log.error(f'Save: image={image} i={i} seeds={p.all_seeds} prompts={p.all_prompts}')\n                errors.display(e, 'save')\n            if fullfn is None:\n                continue\n            filename = os.path.relpath(fullfn, paths.resolve_output_path(shared.opts.outdir_samples, shared.opts.outdir_save))\n            filenames.append(filename)\n            fullfns.append(fullfn)\n            if txt_fullfn:\n                filenames.append(os.path.basename(txt_fullfn))\n                # fullfns.append(txt_fullfn)\n            script_callbacks.image_save_btn_callback(filename)\n    if shared.opts.samples_save_zip and len(fullfns) > 1:\n        zip_filepath = os.path.join(paths.resolve_output_path(shared.opts.outdir_samples, shared.opts.outdir_save), \"images.zip\")\n        from zipfile import ZipFile\n        with ZipFile(zip_filepath, \"w\") as zip_file:\n            for i in range(len(fullfns)):\n                if os.path.isfile(fullfns[i]):\n                    with open(fullfns[i], mode=\"rb\") as f:\n                        zip_file.writestr(filenames[i], f.read())\n        fullfns.insert(0, zip_filepath)\n    return gr.File.update(value=fullfns, visible=True), plaintext_to_html(f\"Saved: {filenames[0] if len(filenames) > 0 else 'none'}\", ['performance'])\n\n\ndef open_folder(result_gallery, gallery_index = 0):\n    try:\n        folder = os.path.dirname(result_gallery[gallery_index]['name'])\n    except Exception:\n        folder = shared.opts.outdir_samples\n    if not os.path.exists(folder):\n        shared.log.warning(f'Folder open: folder=\"{folder}\" does not exist')\n        return\n    elif not os.path.isdir(folder):\n        shared.log.warning(f'Folder open: folder=\"{folder}\" not a folder')\n        return\n\n    if not shared.cmd_opts.hide_ui_dir_config:\n        path = os.path.normpath(folder)\n        if platform.system() == \"Windows\":\n            os.startfile(path) # pylint: disable=no-member\n        elif platform.system() == \"Darwin\":\n            subprocess.Popen([\"open\", path]) # pylint: disable=consider-using-with\n        elif \"microsoft-standard-WSL2\" in platform.uname().release:\n            subprocess.Popen([\"wsl-open\", path]) # pylint: disable=consider-using-with\n        else:\n            subprocess.Popen([\"xdg-open\", path]) # pylint: disable=consider-using-with\n\n\ndef create_output_panel(tabname, preview=True, prompt=None, height=None, transfer=True, scale=1, result_info=None):\n    with gr.Column(variant='panel', elem_id=f\"{tabname}_results\", scale=scale):\n        with gr.Group(elem_id=f\"{tabname}_gallery_container\"):\n            if tabname == \"txt2img\":\n                gr.HTML(value=\"\", elem_id=\"main_info\", visible=False, elem_classes=[\"main-info\"])\n            result_gallery = gr.Gallery(value=[],\n                                        label='Output',\n                                        show_label=False,\n                                        show_download_button=True,\n                                        allow_preview=True,\n                                        container=False,\n                                        preview=preview,\n                                        columns=shared.opts.ui_columns,\n                                        object_fit='scale-down',\n                                        height=height,\n                                        elem_id=f\"{tabname}_gallery\",\n                                        elem_classes=[\"gallery_main\"],\n                                       )\n            if prompt is not None:\n                ui_sections.create_interrogate_button(tab=tabname, inputs=result_gallery, outputs=prompt, what='output')\n            button_image_fit = gr.Button(ui_symbols.resize, elem_id=f\"{tabname}_image_fit\", elem_classes=['image-fit'])\n            button_image_fit.click(fn=None, _js=\"cycleImageFit\", inputs=[], outputs=[])\n\n        with gr.Column(elem_id=f\"{tabname}_footer\", elem_classes=\"gallery_footer\"):\n            dummy_component = gr.Label(visible=False)\n            with gr.Row(elem_id=f\"image_buttons_{tabname}\", elem_classes=\"image-buttons\"):\n                if not shared.cmd_opts.listen:\n                    open_folder_button = gr.Button('Show', visible=not shared.cmd_opts.hide_ui_dir_config, elem_id=f'open_folder_{tabname}')\n                    open_folder_button.click(open_folder, _js=\"(gallery, dummy) => [gallery, selected_gallery_index()]\", inputs=[result_gallery, dummy_component], outputs=[])\n                else:\n                    clip_files = gr.Button('Copy', elem_id=f'open_folder_{tabname}')\n                    clip_files.click(fn=None, _js='clip_gallery_urls', inputs=[result_gallery], outputs=[])\n                save = gr.Button('Save', elem_id=f'save_{tabname}')\n                delete = gr.Button('Delete', elem_id=f'delete_{tabname}')\n                if transfer:\n                    buttons = generation_parameters_copypaste.create_buttons([\"control\", \"txt2img\", \"img2img\", \"extras\", \"caption\"])\n                else:\n                    buttons = None\n\n            download_files = gr.File(None, file_count=\"multiple\", interactive=False, show_label=False, visible=False, elem_id=f'download_files_{tabname}')\n            with gr.Group():\n                html_info = gr.HTML(elem_id=f'html_info_{tabname}', elem_classes=\"infotext\", visible=False) # contains raw infotext as returned by wrapped call\n                html_info_formatted = gr.HTML(elem_id=f'html_info_formatted_{tabname}', elem_classes=\"infotext\", visible=True) # contains html formatted infotext\n                html_info.change(fn=infotext_to_html, inputs=[html_info], outputs=[html_info_formatted], show_progress='hidden')\n                html_log = gr.HTML(elem_id=f'html_log_{tabname}')\n                generation_info = gr.Textbox(visible=False, elem_id=f'generation_info_{tabname}')\n                generation_info_button = gr.Button(visible=False, elem_id=f\"{tabname}_generation_info_button\")\n\n                result_field = result_info or html_info_formatted\n                generation_info_button.click(fn=update_generation_info, show_progress='hidden',\n                    _js=\"(x, y, z) => [x, y, selected_gallery_index()]\", # triggered on gallery change from js\n                    inputs=[generation_info, html_info, html_info],\n                    outputs=[html_info, result_field],\n                )\n                save.click(fn=call_queue.wrap_gradio_call(save_files), show_progress='hidden',\n                    _js=\"(x, y, z, i) => [x, y, z, selected_gallery_index()]\",\n                    inputs=[generation_info, result_gallery, html_info, html_info],\n                    outputs=[download_files, html_log],\n                )\n                delete.click(fn=call_queue.wrap_gradio_call(delete_files), show_progress='hidden',\n                    _js=f'(x, y, i, j) => [x, y, ...selected_gallery_files(\"{tabname}\")]',\n                    inputs=[generation_info, result_gallery, html_info, html_info],\n                    outputs=[result_gallery, html_log],\n                )\n\n            if tabname == \"txt2img\":\n                paste_field_names = scripts_manager.scripts_txt2img.paste_field_names\n            elif tabname == \"img2img\":\n                paste_field_names = scripts_manager.scripts_img2img.paste_field_names\n            elif tabname == \"control\":\n                paste_field_names = scripts_manager.scripts_control.paste_field_names\n            else:\n                paste_field_names = []\n            debug(f'Paste field: tab={tabname} fields={paste_field_names}')\n            if buttons is not None:\n                for paste_tabname, paste_button in buttons.items():\n                    debug(f'Create output panel: source={tabname} target={paste_tabname} button={paste_button}')\n                    bindings = generation_parameters_copypaste.ParamBinding(\n                        paste_button=paste_button,\n                        tabname=paste_tabname,\n                        source_tabname=tabname,\n                        source_image_component=result_gallery,\n                        paste_field_names=paste_field_names,\n                        source_text_component=prompt or generation_info\n                    )\n                    generation_parameters_copypaste.register_paste_params_button(bindings)\n            return result_gallery, generation_info, html_info, html_info_formatted, html_log\n\n\ndef create_refresh_button(refresh_component, refresh_method, refreshed_args = None, elem_id = None, visible: bool = True):\n    def refresh():\n        refresh_method()\n        if refreshed_args is None:\n            args = {\"choices\": refresh_method()} # pylint: disable=unnecessary-lambda-assignment\n        elif callable(refreshed_args):\n            args = refreshed_args()\n        else:\n            args = refreshed_args\n        for k, v in args.items():\n            setattr(refresh_component, k, v)\n        return gr.update(**args)\n\n    refresh_button = ui_components.ToolButton(value=ui_symbols.refresh, elem_id=elem_id, visible=visible)\n    refresh_button.click(fn=refresh, inputs=[], outputs=[refresh_component], show_progress='hidden')\n    return refresh_button\n\n\ndef create_override_inputs(tab): # pylint: disable=unused-argument\n    with gr.Row(elem_id=f\"{tab}_override_settings_row\"):\n        visible = tab == 'control'\n        override_settings = gr.Dropdown([], value=None, label=\"Override settings\", visible=visible, elem_id=f\"{tab}_override_settings\", multiselect=True)\n        override_settings.change(fn=lambda x: gr.Dropdown.update(visible=len(x) > 0), inputs=[override_settings], outputs=[override_settings])\n    return override_settings\n\n\ndef reuse_seed(seed_component: gr.Number, reuse_button: gr.Button, subseed:bool=False):\n    def reuse_click(selected_gallery_index):\n        selected_gallery_index = int(selected_gallery_index)\n        if processing.processed is None:\n            seed = -1\n        elif len(processing.processed.images) > len(processing.processed.all_seeds): # if we have more images than seeds it is likely the grid image\n            selected_gallery_index -= (len(processing.processed.images) - len(processing.processed.all_seeds))\n            seed = processing.processed.all_seeds[selected_gallery_index] if not subseed else processing.processed.all_subseeds[selected_gallery_index]\n        elif selected_gallery_index <= len(processing.processed.all_seeds):\n            seed = processing.processed.all_seeds[selected_gallery_index] if not subseed else processing.processed.all_subseeds[selected_gallery_index]\n        elif len(processing.processed.all_seeds) > 0:\n            seed = processing.processed.all_seeds[0] if not subseed else processing.processed.all_subseeds[0]\n        else:\n            seed = -1\n        shared.log.debug(f'Reuse seed: index={selected_gallery_index} seed={seed} subseed={subseed}')\n        return seed\n\n    reuse_button.click(fn=reuse_click, _js=\"selected_gallery_index\", inputs=[seed_component], outputs=[seed_component], show_progress='hidden')\n\n\ndef connect_reuse_seed(seed: gr.Number, reuse_seed_btn: gr.Button, generation_info: gr.Textbox, is_subseed, subseed_strength=None):\n    \"\"\" Connects a 'reuse (sub)seed' button's click event so that it copies last used\n        (sub)seed value from generation info the to the seed field. If copying subseed and subseed strength\n        was 0, i.e. no variation seed was used, it copies the normal seed value instead.\"\"\"\n    def copy_seed(gen_info_string: str, index: int):\n        restore_seed = -1\n        restore_strength = -1\n        try:\n            gen_info = json.loads(gen_info_string)\n            shared.log.debug(f'Reuse: info={gen_info}')\n            index -= gen_info.get('index_of_first_image', 0)\n            index = int(index)\n            if is_subseed:\n                all_subseeds = gen_info.get('all_subseeds', [-1])\n                restore_seed = all_subseeds[index if 0 <= index < len(all_subseeds) else 0]\n                restore_strength = gen_info.get('subseed_strength', 0)\n            else:\n                all_seeds = gen_info.get('all_seeds', [-1])\n                restore_seed = all_seeds[index if 0 <= index < len(all_seeds) else 0]\n        except json.decoder.JSONDecodeError:\n            if gen_info_string != '':\n                shared.log.error(f\"Error parsing JSON generation info: {gen_info_string}\")\n        if is_subseed is not None:\n            return [restore_seed, gr_show(False), restore_strength]\n        else:\n            return [restore_seed, gr_show(False)]\n    dummy_component = gr.Number(visible=False, value=0)\n    if subseed_strength is None:\n        reuse_seed_btn.click(fn=copy_seed, _js=\"(x, y) => [x, selected_gallery_index()]\", show_progress='hidden', inputs=[generation_info, dummy_component], outputs=[seed, dummy_component])\n    else:\n        reuse_seed_btn.click(fn=copy_seed, _js=\"(x, y) => [x, selected_gallery_index()]\", show_progress='hidden', inputs=[generation_info, dummy_component], outputs=[seed, dummy_component, subseed_strength])\n\n\ndef update_token_counter(text):\n    token_count = 0\n    max_length = 75\n    if shared.state.job_count > 0:\n        shared.log.debug('Tokenizer busy')\n        return f\"<span class='gr-box gr-text-input'>{token_count}/{max_length}</span>\"\n    from modules import extra_networks\n    if isinstance(text, list):\n        prompt, _ = extra_networks.parse_prompts(text)\n    else:\n        prompt, _ = extra_networks.parse_prompt(text)\n    if shared.sd_loaded and hasattr(shared.sd_model, 'tokenizer') and shared.sd_model.tokenizer is not None:\n        tokenizer = shared.sd_model.tokenizer\n        # For multi-modal processors (e.g., PixtralProcessor), use the underlying text tokenizer\n        if hasattr(tokenizer, 'tokenizer') and tokenizer.tokenizer is not None:\n            tokenizer = tokenizer.tokenizer\n        has_bos_token = hasattr(tokenizer, 'bos_token_id') and tokenizer.bos_token_id is not None\n        has_eos_token = hasattr(tokenizer, 'eos_token_id') and tokenizer.eos_token_id is not None\n        try:\n            ids = tokenizer(prompt)\n            ids = getattr(ids, 'input_ids', [])\n        except Exception:\n            ids = []\n        token_count = len(ids) - int(has_bos_token) - int(has_eos_token)\n        model_max_length = getattr(tokenizer, 'model_max_length', 0)\n        max_length = model_max_length - int(has_bos_token) - int(has_eos_token)\n        if max_length is None or max_length < 0 or max_length > 10000:\n            max_length = 0\n    return gr.update(value=f\"<span class='gr-box gr-text-input'>{token_count}/{max_length}</span>\", visible=token_count > 0)\n"
  },
  {
    "path": "modules/ui_components.py",
    "content": "import gradio as gr\n\n\nclass FormComponent:\n    def get_expected_parent(self):\n        return gr.components.Form\n\n\ngr.Dropdown.get_expected_parent = FormComponent.get_expected_parent\n\n\nclass ToolButton(FormComponent, gr.Button): # small button with single emoji as text\n    def __init__(self, *args, **kwargs):\n        classes = kwargs.pop(\"elem_classes\", [])\n        super().__init__(*args, elem_classes=[\"tool\", *classes], **kwargs)\n\n    def get_block_name(self):\n        return \"button\"\n\n### unused components below for compatibility with extensions ###\n\nclass FormRow(FormComponent, gr.Row): # unused\n    def get_block_name(self):\n        return \"row\"\n\n\nclass FormColumn(FormComponent, gr.Column): # unused\n    def get_block_name(self):\n        return \"column\"\n\n\nclass FormGroup(FormComponent, gr.Group): # unused\n    def get_block_name(self):\n        return \"group\"\n\n\nclass FormHTML(FormComponent, gr.HTML): # unused\n    def get_block_name(self):\n        return \"html\"\n\n\nclass FormColorPicker(FormComponent, gr.ColorPicker): # unused\n    def get_block_name(self):\n        return \"colorpicker\"\n\n\nclass DropdownMulti(FormComponent, gr.Dropdown): # unused\n    def __init__(self, **kwargs):\n        super().__init__(multiselect=True, **kwargs)\n    def get_block_name(self):\n        return \"dropdown\"\n\n\nclass DropdownEditable(FormComponent, gr.Dropdown): # unused\n    def __init__(self, **kwargs):\n        super().__init__(allow_custom_value=True, **kwargs)\n    def get_block_name(self):\n        return \"dropdown\"\n\n\nclass InputAccordion(gr.Checkbox): # unused\n    global_index = 0\n    def __init__(self, value, **kwargs):\n        self.accordion_id = kwargs.get('elem_id')\n        if self.accordion_id is None:\n            self.accordion_id = f\"input-accordion-{InputAccordion.global_index}\"\n            InputAccordion.global_index += 1\n        kwargs_checkbox = {**kwargs, \"elem_id\": f\"{self.accordion_id}-checkbox\", \"visible\": False}\n        super().__init__(value, **kwargs_checkbox)\n        self.change(fn=None, _js='function(checked){ inputAccordionChecked(\"' + self.accordion_id + '\", checked); }', inputs=[self])\n        kwargs_accordion = {\n            **kwargs,\n            \"elem_id\": self.accordion_id,\n            \"label\": kwargs.get('label', 'Accordion'),\n            \"elem_classes\": ['input-accordion'],\n            \"open\": value,\n        }\n        self.accordion = gr.Accordion(**kwargs_accordion)\n\n    def extra(self):\n        return gr.Column(elem_id=self.accordion_id + '-extra', elem_classes='input-accordion-extra', min_width=0)\n\n    def __enter__(self):\n        self.accordion.__enter__()\n        return self\n\n    def __exit__(self, exc_type, exc_val, exc_tb):\n        self.accordion.__exit__(exc_type, exc_val, exc_tb)\n\n    def get_block_name(self):\n        return \"checkbox\"\n\n\nclass ResizeHandleRow(gr.Row): # unusued\n    def __init__(self, **kwargs):\n        super().__init__(**kwargs)\n        self.elem_classes.append(\"resize-handle-row\")\n    def get_block_name(self):\n        return \"row\"\n"
  },
  {
    "path": "modules/ui_control.py",
    "content": "import os\nimport time\nimport gradio as gr\nfrom modules.control import unit\nfrom modules import errors, shared, progress, generation_parameters_copypaste, call_queue, scripts_manager, masking, images, processing_vae, timer # pylint: disable=ungrouped-imports\nfrom modules import ui_common, ui_sections, ui_guidance\nfrom modules import ui_control_helpers as helpers\nimport installer\n\n\ngr_height = 512\nmax_units = shared.opts.control_max_units\nunits: list[unit.Unit] = [] # main state variable\ncontrols: list[gr.components.Component] = [] # list of gr controls\ndebug = shared.log.trace if os.environ.get('SD_CONTROL_DEBUG', None) is not None else lambda *args, **kwargs: None\ndebug('Trace: CONTROL')\n\n\ndef return_stats(t: float = None):\n    if t is None:\n        elapsed_text = ''\n    else:\n        elapsed = time.perf_counter() - t\n        elapsed_m = int(elapsed // 60)\n        elapsed_s = elapsed % 60\n        elapsed_text = f\"Time: {elapsed_m}m {elapsed_s:.2f}s |\" if elapsed_m > 0 else f\"Time: {elapsed_s:.2f}s |\"\n    summary = timer.process.summary(total=False).replace('=', ' ')\n    gpu = ''\n    cpu = ''\n    if not shared.mem_mon.disabled:\n        mem_mon_read = shared.mem_mon.read()\n        ooms = mem_mon_read.pop(\"oom\")\n        retries = mem_mon_read.pop(\"retries\")\n        vram = {k: v//1048576 for k, v in mem_mon_read.items()}\n        peak = max(vram['active_peak'], vram['reserved_peak'], vram['used'])\n        used = round(100.0 * peak / vram['total']) if vram['total'] > 0 else 0\n        if peak > 0:\n            gpu += f\"| GPU {peak} MB\"\n            gpu += f\" {used}%\" if used > 0 else ''\n            gpu += f\" | retries {retries} oom {ooms}\" if retries > 0 or ooms > 0 else ''\n    ram = shared.ram_stats()\n    if ram['used'] > 0:\n        cpu += f\"| RAM {ram['used']} GB\"\n        cpu += f\" {round(100.0 * ram['used'] / ram['total'])}%\" if ram['total'] > 0 else ''\n    return f\"<div class='performance'><p>{elapsed_text} {summary} {gpu} {cpu}</p></div>\"\n\n\ndef return_controls(res, t: float = None):\n    # return preview, image, video, gallery, text\n    debug(f'Control received: type={type(res)} {res}')\n    if t is None:\n        perf = ''\n    else:\n        perf = return_stats(t)\n    if res is None: # no response\n        return [None, None, None, None, '', perf]\n    elif isinstance(res, str): # error response\n        return [None, None, None, None, res, perf]\n    elif isinstance(res, tuple): # standard response received as tuple via control_run->yield(output_images, process_image, result_txt)\n        preview_image = res[1] # may be None\n        output_image = res[0][0] if isinstance(res[0], list) else res[0] # may be image or list of images\n        if isinstance(res[0], list):\n            output_gallery = res[0] if res[0][0] is not None else []\n        else:\n            output_gallery = [res[0]] if res[0] is not None else [] # must return list, but can receive single image\n        result_txt = res[2] if len(res) > 2 else '' # do we have a message\n        output_video = res[3] if len(res) > 3 else None # do we have a video filename\n        return [preview_image, output_image, output_video, output_gallery, result_txt, perf]\n    else: # unexpected\n        return [None, None, None, None, f'Control: Unexpected response: {type(res)}', perf]\n\n\ndef get_units(*values):\n    update = []\n    what = None\n    for c, v in zip(controls, values):\n        if isinstance(c, gr.Label): # unit type indicator\n            what = c.value['label']\n        c.value = v\n        if c.elem_id is not None and c.elem_id.startswith('control_unit'):\n            _prefix, i, name = c.elem_id.split('-')\n            update.append({ 'type': what, 'index': int(i), 'name': name, 'value': v })\n    for u in update:\n        for i in range(len(units)):\n            if units[i].type == u['type'] and units[i].index == u['index']:\n                setattr(units[i], u['name'], u['value'])\n                break\n\n\ndef generate_click(job_id: str, state: str, active_tab: str, *args):\n    while helpers.busy:\n        debug(f'Control: tab=\"{active_tab}\" job={job_id} busy')\n        time.sleep(0.1)\n    from modules.control.run import control_run\n    debug(f'Control: tab=\"{active_tab}\" job={job_id} args={args}')\n    progress.add_task_to_queue(job_id)\n    with call_queue.get_lock():\n        yield [None, None, None, None, 'Control: starting', '']\n        shared.mem_mon.reset()\n        jobid = shared.state.begin('Control')\n        progress.start_task(job_id)\n        try:\n            t = time.perf_counter()\n            for results in control_run(state, units, helpers.input_source, helpers.input_init, helpers.input_mask, active_tab, True, *args):\n                progress.record_results(job_id, results)\n                yield return_controls(results, t)\n        except GeneratorExit:\n            shared.log.error(\"Control: generator exit\")\n        except Exception as e:\n            shared.log.error(f\"Control exception: {e}\")\n            errors.display(e, 'Control')\n            yield [None, None, None, None, f'Control: Exception: {e}', '']\n        finally:\n            progress.finish_task(job_id)\n            shared.state.end(jobid)\n\n\ndef generate_click_alt(job_id: str, state: str, active_tab: str, *args):\n    while helpers.busy:\n        debug(f'Control: tab=\"{active_tab}\" job={job_id} busy')\n        time.sleep(0.1)\n    from modules.control.run import control_run\n    debug(f'Control: tab=\"{active_tab}\" job={job_id} args={args}')\n    progress.add_task_to_queue(job_id)\n    with call_queue.get_lock():\n        results = None\n        shared.mem_mon.reset()\n        jobid = shared.state.begin('Control')\n        progress.start_task(job_id)\n        try:\n            t = time.perf_counter()\n            for results in control_run(state, units, helpers.input_source, helpers.input_init, helpers.input_mask, active_tab, True, *args):\n                progress.record_results(job_id, results)\n        except GeneratorExit:\n            shared.log.error(\"Control: generator exit\")\n        except Exception as e:\n            shared.log.error(f\"Control exception: {e}\")\n            errors.display(e, 'Control')\n            return [None, None, None, None, f'Control: Exception: {e}', '']\n        finally:\n            progress.finish_task(job_id)\n            shared.state.end(jobid)\n        return return_controls(results, t)\n\n\ndef create_ui(_blocks: gr.Blocks=None):\n    helpers.initialize()\n\n    with gr.Blocks(analytics_enabled = False) as control_ui:\n        prompt, styles, negative, btn_generate, btn_reprocess, btn_paste, btn_extra, prompt_counter, btn_prompt_counter, negative_counter, btn_negative_counter  = ui_sections.create_toprow(is_img2img=False, id_part='control')\n        prompt_img = gr.File(label=\"\", elem_id=\"control_prompt_image\", file_count=\"single\", type=\"binary\", visible=False)\n        prompt_img.change(fn=images.image_data, inputs=[prompt_img], outputs=[prompt, prompt_img])\n\n        with gr.Group(elem_id=\"control_interface\"):\n\n            with gr.Row(elem_id='control_status'):\n                result_txt = gr.HTML(elem_classes=['control-result'], elem_id='control-result')\n\n            with gr.Row(elem_id='control_settings', elem_classes=['settings-column']):\n\n                state = gr.Textbox(value='', visible=False)\n\n                with gr.Accordion(open=False, label=\"Input\", elem_id=\"control_input\", elem_classes=[\"small-accordion\"]):\n                    with gr.Row():\n                        show_input = gr.Checkbox(label=\"Show input\", value=True, elem_id=\"control_show_input\")\n                        show_preview = gr.Checkbox(label=\"Show preview\", value=False, elem_id=\"control_show_preview\")\n                    with gr.Row():\n                        input_type = gr.Radio(label=\"Control input type\", choices=['Control only', 'Init image same as control', 'Separate init image'], value='Control only', type='index', elem_id='control_input_type')\n                    with gr.Row():\n                        denoising_strength = gr.Slider(minimum=0.00, maximum=0.99, step=0.01, label='Denoising strength', value=0.30, elem_id=\"control_input_denoising_strength\")\n\n                with gr.Accordion(open=False, label=\"Size\", elem_id=\"control_size\", elem_classes=[\"small-accordion\"]):\n                    with gr.Tabs():\n                        with gr.Tab('Initial'):\n                            resize_mode_before, resize_name_before, resize_context_before, width_before, height_before, scale_by_before, selected_scale_tab_before = ui_sections.create_resize_inputs('control_before', [], accordion=False, latent=True, prefix='before')\n                        with gr.Tab('Post'):\n                            resize_mode_after, resize_name_after, resize_context_after, width_after, height_after, scale_by_after, selected_scale_tab_after = ui_sections.create_resize_inputs('control_after', [], accordion=False, latent=False, prefix='after')\n                        with gr.Tab('Mask'):\n                            resize_mode_mask, resize_name_mask, resize_context_mask, width_mask, height_mask, scale_by_mask, selected_scale_tab_mask = ui_sections.create_resize_inputs('control_mask', [], accordion=False, latent=False, prefix='mask')\n\n                with gr.Accordion(open=False, label=\"Sampler\", elem_id=\"control_sampler\", elem_classes=[\"small-accordion\"]):\n                    steps, sampler_index = ui_sections.create_sampler_and_steps_selection(None, \"control\")\n                    ui_sections.create_sampler_options('control')\n\n                batch_count, batch_size = ui_sections.create_batch_inputs('control', accordion=True)\n\n                seed, reuse_seed, subseed, reuse_subseed, subseed_strength, seed_resize_from_h, seed_resize_from_w = ui_sections.create_seed_inputs('control')\n                ui_common.reuse_seed(seed, reuse_seed, subseed=False)\n                ui_common.reuse_seed(subseed, reuse_subseed, subseed=True)\n\n                mask_controls = masking.create_segment_ui()\n\n                guidance_name, guidance_scale, guidance_rescale, guidance_start, guidance_stop, cfg_scale, image_cfg_scale, diffusers_guidance_rescale, pag_scale, pag_adaptive, cfg_end = ui_guidance.create_guidance_inputs('control')\n                vae_type, tiling, hidiffusion, clip_skip = ui_sections.create_advanced_inputs('control')\n                hdr_mode, hdr_brightness, hdr_color, hdr_sharpen, hdr_clamp, hdr_boundary, hdr_threshold, hdr_maximize, hdr_max_center, hdr_max_boundary, hdr_color_picker, hdr_tint_ratio = ui_sections.create_correction_inputs('control')\n\n                with gr.Accordion(open=False, label=\"Video\", elem_id=\"control_video\", elem_classes=[\"small-accordion\"]):\n                    with gr.Row():\n                        video_skip_frames = gr.Slider(minimum=0, maximum=100, step=1, label='Skip input frames', value=0, elem_id=\"control_video_skip_frames\")\n                    with gr.Row():\n                        from modules.ui_sections import create_video_inputs\n                        video_type, video_duration, video_loop, video_pad, video_interpolate = create_video_inputs(tab='control')\n\n                enable_hr, hr_sampler_index, hr_denoising_strength, hr_resize_mode, hr_resize_context, hr_upscaler, hr_force, hr_second_pass_steps, hr_scale, hr_resize_x, hr_resize_y, refiner_steps, refiner_start, refiner_prompt, refiner_negative = ui_sections.create_hires_inputs('control')\n                detailer_enabled, detailer_prompt, detailer_negative, detailer_steps, detailer_strength, detailer_resolution = shared.yolo.ui('control')\n\n            with gr.Row():\n                override_script_name = gr.State(value='', visible=False, elem_id='control_override_script_name')\n                override_script_args = gr.State(value='', visible=False, elem_id='control_override_script_args')\n                override_settings = ui_common.create_override_inputs('control')\n\n            with gr.Row(variant='compact', elem_id=\"control_extra_networks\", elem_classes=[\"extra_networks_root\"], visible=False) as extra_networks_ui:\n                from modules import ui_extra_networks\n                extra_networks_ui = ui_extra_networks.create_ui(extra_networks_ui, btn_extra, 'control', skip_indexing=shared.opts.extra_network_skip_indexing)\n                timer.startup.record('ui-networks')\n\n            with gr.Row(elem_id='control-inputs'):\n                with gr.Column(scale=9, elem_id='control-input-column', visible=True) as column_input:\n                    gr.HTML('<span id=\"control-input-button\">Input</p>')\n                    with gr.Tabs(elem_classes=['control-tabs'], elem_id='control-tab-input'):\n                        input_mode = gr.Label(value='select', visible=False)\n                        with gr.Tab('Image', id='in-image') as tab_image:\n                            if (installer.version['kanvas'] == 'disabled') or (installer.version['kanvas'] == 'unavailable'):\n                                shared.log.warning(f'Kanvas: status={installer.version[\"kanvas\"]}')\n                                input_image = gr.Image(label=\"Input\", show_label=False, type=\"pil\", interactive=True, tool=\"editor\", height=gr_height, image_mode='RGB', elem_id='control_input_select', elem_classes=['control-image'])\n                            else:\n                                input_image = gr.HTML(value='<h1 style=\"text-align:center;color:var(--color-error);margin:1em;\">Kanvas not initialized</h1>', elem_id='kanvas-container')\n                            input_changed = gr.Button('Kanvas change', elem_id='kanvas-change-button', visible=False)\n                            btn_interrogate = ui_sections.create_interrogate_button('control', what='input')\n                        with gr.Tab('Video', id='in-video') as tab_video:\n                            input_video = gr.Video(label=\"Input\", show_label=False, interactive=True, height=gr_height, elem_classes=['control-image'])\n                        with gr.Tab('Batch', id='in-batch') as tab_batch:\n                            input_batch = gr.File(label=\"Input\", show_label=False, file_count='multiple', file_types=['image'], interactive=True, height=gr_height)\n                        with gr.Tab('Folder', id='in-folder') as tab_folder:\n                            input_folder = gr.File(label=\"Input\", show_label=False, file_count='directory', file_types=['image'], interactive=True, height=gr_height)\n                with gr.Column(scale=9, elem_id='control-init-column', visible=False) as column_init:\n                    gr.HTML('<span id=\"control-init-button\">Init input</p>')\n                    with gr.Tabs(elem_classes=['control-tabs'], elem_id='control-tab-init'):\n                        with gr.Tab('Image', id='init-image') as tab_image_init:\n                            init_image = gr.Image(label=\"Input\", show_label=False, type=\"pil\", interactive=True, tool=\"editor\", height=gr_height, elem_classes=['control-image'])\n                        with gr.Tab('Video', id='init-video') as tab_video_init:\n                            init_video = gr.Video(label=\"Input\", show_label=False, interactive=True, height=gr_height, elem_classes=['control-image'])\n                        with gr.Tab('Batch', id='init-batch') as tab_batch_init:\n                            init_batch = gr.File(label=\"Input\", show_label=False, file_count='multiple', file_types=['image'], interactive=True, height=gr_height, elem_classes=['control-image'])\n                        with gr.Tab('Folder', id='init-folder') as tab_folder_init:\n                            init_folder = gr.File(label=\"Input\", show_label=False, file_count='directory', file_types=['image'], interactive=True, height=gr_height, elem_classes=['control-image'])\n                with gr.Column(scale=9, elem_id='control-output-column', visible=True) as _column_output:\n                    gr.HTML('<span id=\"control-output-button\">Output</p>')\n                    with gr.Tabs(elem_classes=['control-tabs'], elem_id='control-tab-output') as output_tabs:\n                        with gr.Tab('Gallery', id='out-gallery'):\n                            output_gallery, _output_gen_info, _output_html_info, _output_html_info_formatted, output_html_log = ui_common.create_output_panel(\"control\", preview=False, prompt=prompt, height=gr_height, result_info=result_txt)\n                        with gr.Tab('Image', id='out-image'):\n                            output_image = gr.Image(label=\"Output\", show_label=False, type=\"pil\", interactive=False, tool=\"editor\", height=gr_height, elem_id='control_output_image', elem_classes=['control-image'])\n                        with gr.Tab('Video', id='out-video'):\n                            output_video = gr.Video(label=\"Output\", show_label=False, height=gr_height, elem_id='control_output_video', elem_classes=['control-image'])\n                with gr.Column(scale=9, elem_id='control-preview-column', visible=False) as column_preview:\n                    gr.HTML('<span id=\"control-preview-button\">Preview</p>')\n                    with gr.Tabs(elem_classes=['control-tabs'], elem_id='control-tab-preview'):\n                        with gr.Tab('Preview', id='preview-image') as _tab_preview:\n                            preview_process = gr.Image(label=\"Preview\", show_label=False, type=\"pil\", interactive=False, height=gr_height, visible=True, elem_id='control_preview', elem_classes=['control-image'])\n\n\n            from modules.ui_control_elements import create_ui_elements\n            create_ui_elements(units, result_txt, preview_process)\n\n            with gr.Row(elem_id=\"control_script_container\"):\n                input_script_args = scripts_manager.scripts_current.setup_ui(parent='control', accordion=True)\n\n            # handlers\n            # for btn in input_buttons:\n            #     btn.click(fn=helpers.copy_input, inputs=[input_mode, btn, input_image, input_resize, input_inpaint], outputs=[input_image, input_resize, input_inpaint], _js='controlInputMode')\n            #     btn.click(fn=helpers.transfer_input, inputs=[btn], outputs=[input_image, input_resize, input_inpaint] + input_buttons)\n\n            # hidden button to update gradio control values\n            for u in units:\n                controls.extend(u.controls)\n            btn_update = gr.Button('Update', interactive=True, visible=False, elem_id='control_update')\n            btn_update.click(fn=get_units, inputs=controls, outputs=[], show_progress='hidden', queue=False)\n\n            show_input.change(fn=lambda x: gr.update(visible=x), inputs=[show_input], outputs=[column_input])\n            show_preview.change(fn=lambda x: gr.update(visible=x), inputs=[show_preview], outputs=[column_preview])\n            input_type.change(fn=lambda x: gr.update(visible=x == 2), inputs=[input_type], outputs=[column_init])\n            btn_prompt_counter.click(\n                fn=call_queue.wrap_queued_call(ui_common.update_token_counter),\n                inputs=[prompt],\n                outputs=[prompt_counter],\n                show_progress = 'hidden',\n            )\n            btn_negative_counter.click(\n                fn=call_queue.wrap_queued_call(ui_common.update_token_counter),\n                inputs=[negative],\n                outputs=[negative_counter],\n                show_progress = 'hidden',\n            )\n\n            select_dict = dict(\n                fn=helpers.select_input,\n                _js=\"controlInputMode\",\n                inputs=[input_mode, input_image, init_image, input_type, input_video, input_batch, input_folder],\n                outputs=[output_tabs, preview_process, result_txt, width_before, height_before],\n                show_progress='hidden',\n                queue=False,\n            )\n\n            input_changed.click(**select_dict)\n            btn_interrogate.click(**select_dict) # need to fetch input first\n            btn_interrogate.click(fn=helpers.interrogate, inputs=[], outputs=[prompt])\n\n            prompt.submit(**select_dict)\n            negative.submit(**select_dict)\n            btn_generate.click(**select_dict)\n            for ctrl in [input_image, input_video, input_batch, input_folder, init_image, init_video, init_batch, init_folder, tab_image, tab_video, tab_batch, tab_folder, tab_image_init, tab_video_init, tab_batch_init, tab_folder_init]:\n                if hasattr(ctrl, 'change'):\n                    ctrl.change(**select_dict)\n                if hasattr(ctrl, 'clear'):\n                    ctrl.clear(**select_dict)\n\n            tabs_state = gr.Textbox(value='none', visible=False)\n            input_fields = [\n                input_type,\n                prompt, negative, styles,\n                steps, sampler_index,\n                seed, subseed, subseed_strength, seed_resize_from_h, seed_resize_from_w,\n                guidance_name, guidance_scale, guidance_rescale, guidance_start, guidance_stop,\n                cfg_scale, clip_skip, image_cfg_scale, diffusers_guidance_rescale, pag_scale, pag_adaptive, cfg_end, vae_type, tiling, hidiffusion,\n                detailer_enabled, detailer_prompt, detailer_negative, detailer_steps, detailer_strength, detailer_resolution,\n                hdr_mode, hdr_brightness, hdr_color, hdr_sharpen, hdr_clamp, hdr_boundary, hdr_threshold, hdr_maximize, hdr_max_center, hdr_max_boundary, hdr_color_picker, hdr_tint_ratio,\n                resize_mode_before, resize_name_before, resize_context_before, width_before, height_before, scale_by_before, selected_scale_tab_before,\n                resize_mode_after, resize_name_after, resize_context_after, width_after, height_after, scale_by_after, selected_scale_tab_after,\n                resize_mode_mask, resize_name_mask, resize_context_mask, width_mask, height_mask, scale_by_mask, selected_scale_tab_mask,\n                denoising_strength, batch_count, batch_size,\n                enable_hr, hr_sampler_index, hr_denoising_strength, hr_resize_mode, hr_resize_context, hr_upscaler, hr_force, hr_second_pass_steps, hr_scale, hr_resize_x, hr_resize_y, refiner_steps,\n                refiner_start, refiner_prompt, refiner_negative,\n                video_skip_frames, video_type, video_duration, video_loop, video_pad, video_interpolate,\n                override_script_name, override_script_args, override_settings,\n            ]\n            output_fields = [\n                preview_process,\n                output_image,\n                output_video,\n                output_gallery,\n                result_txt,\n                output_html_log,\n            ]\n            generate_fn = generate_click_alt if shared.cmd_opts.remote else generate_click\n            control_dict = dict(\n                fn=generate_fn,\n                _js=\"submit_control\",\n                inputs=[tabs_state, state, tabs_state] + input_fields + input_script_args,\n                outputs=output_fields,\n                show_progress='hidden',\n                # queue=not shared.cmd_opts.listen,\n            )\n            prompt.submit(**control_dict)\n            negative.submit(**control_dict)\n            btn_generate.click(**control_dict)\n\n            btn_reprocess[1].click(fn=processing_vae.reprocess, inputs=[output_gallery], outputs=[output_gallery]) # full-decode\n            btn_reprocess[2].click(**control_dict) # hires-refine\n            btn_reprocess[3].click(**control_dict) # face-restore\n\n            paste_fields = [\n                # prompt\n                (prompt, \"Prompt\"),\n                (negative, \"Negative prompt\"),\n                (styles, \"Styles\"),\n                # input\n                (denoising_strength, \"Denoising strength\"),\n                # size basic\n                (width_before, \"Size-1\"),\n                (height_before, \"Size-2\"),\n                (resize_mode_before, \"Resize mode\"),\n                (scale_by_before, \"Resize scale\"),\n                # size control\n                (width_before, \"Size before-1\"),\n                (height_before, \"Size before-2\"),\n                (resize_mode_before, \"Size mode before\"),\n                (scale_by_before, \"Size scale before\"),\n                (resize_name_before, \"Size name before\"),\n                (width_after, \"Size after-1\"),\n                (height_after, \"Size after-2\"),\n                (resize_mode_after, \"Size mode after\"),\n                (scale_by_after, \"Size scale after\"),\n                (resize_name_after, \"Size name after\"),\n                (width_mask, \"Size mask-1\"),\n                (height_mask, \"Size mask-2\"),\n                (resize_mode_mask, \"Size mode mask\"),\n                (scale_by_mask, \"Size scale mask\"),\n                (resize_name_mask, \"Size name mask\"),\n                # sampler\n                (sampler_index, \"Sampler\"),\n                (steps, \"Steps\"),\n                # batch\n                (batch_count, \"Batch-1\"),\n                (batch_size, \"Batch-2\"),\n                # seed\n                (seed, \"Seed\"),\n                (subseed, \"Variation seed\"),\n                (subseed_strength, \"Variation strength\"),\n                # mask\n                (mask_controls[1], \"Mask only\"),\n                (mask_controls[2], \"Mask invert\"),\n                (mask_controls[3], \"Mask blur\"),\n                (mask_controls[4], \"Mask erode\"),\n                (mask_controls[5], \"Mask dilate\"),\n                (mask_controls[6], \"Mask auto\"),\n                # guidance\n                (guidance_name, \"Guidance\"),\n                (guidance_scale, \"Guidance scale\"),\n                (guidance_rescale, \"Guidance rescale\"),\n                (guidance_start, \"Guidance start\"),\n                (guidance_stop, \"Guidance stop\"),\n                # advanced\n                (cfg_scale, \"CFG scale\"),\n                (cfg_end, \"CFG end\"),\n                (clip_skip, \"Clip skip\"),\n                (image_cfg_scale, \"Image CFG scale\"),\n                (image_cfg_scale, \"Hires CFG scale\"),\n                (diffusers_guidance_rescale, \"CFG rescale\"),\n                (vae_type, \"VAE type\"),\n                (tiling, \"Tiling\"),\n                (hidiffusion, \"HiDiffusion\"),\n                # detailer\n                (detailer_enabled, \"Detailer\"),\n                (detailer_prompt, \"Detailer prompt\"),\n                (detailer_negative, \"Detailer negative\"),\n                (detailer_steps, \"Detailer steps\"),\n                (detailer_strength, \"Detailer strength\"),\n                (detailer_resolution, \"Detailer resolution\"),\n                # second pass\n                (enable_hr, \"Second pass\"),\n                (enable_hr, \"Refine\"),\n                (hr_denoising_strength, \"Hires strength\"),\n                (hr_sampler_index, \"Hires sampler\"),\n                (hr_resize_mode, \"Hires mode\"),\n                (hr_resize_context, \"Hires context\"),\n                (hr_upscaler, \"Hires upscaler\"),\n                (hr_force, \"Hires force\"),\n                (hr_second_pass_steps, \"Hires steps\"),\n                (hr_scale, \"Hires upscale\"),\n                (hr_scale, \"Hires scale\"),\n                (hr_resize_x, \"Hires fixed-1\"),\n                (hr_resize_y, \"Hires fixed-2\"),\n                # refiner\n                (refiner_start, \"Refiner start\"),\n                (refiner_steps, \"Refiner steps\"),\n                (refiner_prompt, \"Refiner prompt\"),\n                (refiner_negative, \"Refiner negative\"),\n                # pag\n                (pag_scale, \"CFG true\"),\n                (pag_adaptive, \"CFG adaptive\"),\n                # hidden\n                (seed_resize_from_w, \"Seed resize from-1\"),\n                (seed_resize_from_h, \"Seed resize from-2\"),\n                *scripts_manager.scripts_control.infotext_fields\n            ]\n            generation_parameters_copypaste.add_paste_fields(\"control\", input_image, paste_fields, override_settings)\n            bindings = generation_parameters_copypaste.ParamBinding(paste_button=btn_paste, tabname=\"control\", source_text_component=prompt, source_image_component=output_gallery)\n            generation_parameters_copypaste.register_paste_params_button(bindings)\n\n            if (installer.version['kanvas'] == 'disabled') or (installer.version['kanvas'] == 'unavailable'):\n                masking.bind_controls([input_image], preview_process, output_image)\n            else:\n                masking.bind_kanvas(input_image, preview_process)\n\n            if os.environ.get('SD_CONTROL_DEBUG', None) is not None: # debug only\n                from modules.control.test import test_processors, test_controlnets, test_adapters, test_xs, test_lite\n                gr.HTML('<br><h1>Debug</h1><br>')\n                with gr.Row():\n                    run_test_processors_btn = gr.Button(value=\"Test:Processors\", variant='primary', elem_classes=['control-button'])\n                    run_test_controlnets_btn = gr.Button(value=\"Test:ControlNets\", variant='primary', elem_classes=['control-button'])\n                    run_test_xs_btn = gr.Button(value=\"Test:ControlNets-XS\", variant='primary', elem_classes=['control-button'])\n                    run_test_adapters_btn = gr.Button(value=\"Test:Adapters\", variant='primary', elem_classes=['control-button'])\n                    run_test_lite_btn = gr.Button(value=\"Test:Control-LLLite\", variant='primary', elem_classes=['control-button'])\n\n                    run_test_processors_btn.click(fn=test_processors, inputs=[input_image], outputs=[preview_process, output_image, output_video, output_gallery])\n                    run_test_controlnets_btn.click(fn=test_controlnets, inputs=[prompt, negative, input_image], outputs=[preview_process, output_image, output_video, output_gallery])\n                    run_test_xs_btn.click(fn=test_xs, inputs=[prompt, negative, input_image], outputs=[preview_process, output_image, output_video, output_gallery])\n                    run_test_adapters_btn.click(fn=test_adapters, inputs=[prompt, negative, input_image], outputs=[preview_process, output_image, output_video, output_gallery])\n                    run_test_lite_btn.click(fn=test_lite, inputs=[prompt, negative, input_image], outputs=[preview_process, output_image, output_video, output_gallery])\n\n    ui_extra_networks.setup_ui(extra_networks_ui, output_gallery)\n    return [(control_ui, 'Control', 'control')]\n"
  },
  {
    "path": "modules/ui_control_elements.py",
    "content": "import gradio as gr\nimport matplotlib.pyplot as plt\nfrom modules.control import unit\nfrom modules.control import processors # patrickvonplaten controlnet_aux\nfrom modules.control.units import controlnet # lllyasviel ControlNet\nfrom modules.control.units import xs # vislearn ControlNet-XS\nfrom modules.control.units import lite # vislearn ControlNet-XS\nfrom modules.control.units import t2iadapter # TencentARC T2I-Adapter\nfrom modules.control.units import reference # reference pipeline\nfrom modules import shared, ui_components, ui_symbols, ui_common, masking # pylint: disable=ungrouped-imports\nfrom modules import ui_control_helpers as helpers\n\n\ndef create_ui_elements(units, result_txt, preview_process):\n    max_units = shared.opts.control_max_units\n    with gr.Accordion('Control elements', open=False, elem_id=\"control_elements\"):\n        with gr.Tabs(elem_id='control-tabs') as _tabs_control_type:\n\n            with gr.Tab('ControlNet') as _tab_controlnet:\n                gr.HTML('<a href=\"https://github.com/lllyasviel/ControlNet\">ControlNet</a>')\n                with gr.Row():\n                    extra_controls = [\n                        gr.Checkbox(label=\"Guess mode\", value=False, scale=3),\n                    ]\n                    num_controlnet_units = gr.Slider(label=\"Units\", minimum=1, maximum=max_units, step=1, value=1, scale=1)\n                controlnet_ui_units = [] # list of hidable accordions\n                for i in range(max_units):\n                    enabled = True if i==0 else False\n                    with gr.Accordion(f'ControlNet unit {i+1}', visible= i < num_controlnet_units.value, elem_classes='control-unit') as unit_ui:\n                        with gr.Row():\n                            with gr.Group(elem_id=f'controlnet_unit-{i}-controls', elem_classes='controlnet-controls'):\n                                enabled_cb = gr.Checkbox(enabled, label='Active', container=False, show_label=True, elem_id=f'control_unit-{i}-enabled')\n                                image_upload = gr.UploadButton(label=ui_symbols.upload, file_types=['image'], elem_classes=['form', 'gradio-button', 'tool'], elem_id=f'controlnet_unit-{i}-upload')\n                                image_reuse= ui_components.ToolButton(value=ui_symbols.reuse, elem_id=f'controlnet_unit-{i}-reuse')\n                                reset_btn = ui_components.ToolButton(value=ui_symbols.reset, elem_id=f'controlnet_unit-{i}-reset')\n                                preview_btn = ui_components.ToolButton(value=ui_symbols.preview, elem_id=f'controlnet_unit-{i}-preview')\n                            process_id = gr.Dropdown(label=\"Processor\", choices=processors.list_models(), value='None', elem_id=f'control_unit-{i}-process_name')\n                            model_id = gr.Dropdown(label=\"ControlNet\", choices=controlnet.list_models(), value='None', elem_id=f'control_unit-{i}-model_name')\n                            ui_common.create_refresh_button(model_id, controlnet.list_models, lambda: {\"choices\": controlnet.list_models(refresh=True)}, f'controlnet_models_{i}_refresh')\n                            control_mode = gr.Dropdown(label=\"CN Mode\", choices=['default'], value='default', visible=False, elem_id=f'control_unit-{i}-mode')\n                            model_strength = gr.Slider(label=\"CN Strength\", minimum=0.01, maximum=2.0, step=0.01, value=1.0, elem_id=f'control_unit-{i}-strength')\n                            control_start = gr.Slider(label=\"CN Start\", minimum=0.0, maximum=1.0, step=0.05, value=0, elem_id=f'control_unit-{i}-start')\n                            control_end = gr.Slider(label=\"CN End\", minimum=0.0, maximum=1.0, step=0.05, value=1.0, elem_id=f'control_unit-{i}-end')\n                            control_tile = gr.Dropdown(label=\"CN Tiles\", choices=[x.strip() for x in shared.opts.control_tiles.split(',') if 'x' in x], value='1x1', visible=False, elem_id=f'control_unit-{i}-tile')\n                            image_preview = gr.Image(label=\"Input\", type=\"pil\", height=128, width=128, visible=False, interactive=True, show_label=False, show_download_button=False, container=False, elem_id=f'controlnet_unit-{i}-override')\n                    controlnet_ui_units.append(unit_ui)\n                    units.append(unit.Unit(\n                        unit_type = 'controlnet',\n                        index = i,\n                        enabled = enabled,\n                        result_txt = result_txt,\n                        enabled_cb = enabled_cb,\n                        reset_btn = reset_btn,\n                        process_id = process_id,\n                        model_id = model_id,\n                        model_strength = model_strength,\n                        preview_process = preview_process,\n                        preview_btn = preview_btn,\n                        image_upload = image_upload,\n                        image_reuse = image_reuse,\n                        image_preview = image_preview,\n                        control_start = control_start,\n                        control_end = control_end,\n                        control_mode = control_mode,\n                        control_tile = control_tile,\n                        extra_controls = extra_controls,\n                        )\n                    )\n                    if i == 0:\n                        units[-1].enabled = True # enable first unit in group\n                num_controlnet_units.change(fn=helpers.display_units, inputs=[num_controlnet_units], outputs=controlnet_ui_units)\n\n            with gr.Tab('T2I Adapter') as _tab_t2iadapter:\n                gr.HTML('<a href=\"https://github.com/TencentARC/T2I-Adapter\">T2I-Adapter</a>')\n                with gr.Row():\n                    extra_controls = [\n                        gr.Slider(label=\"Control factor\", minimum=0.0, maximum=1.0, step=0.05, value=1.0, scale=3),\n                    ]\n                    num_adapter_units = gr.Slider(label=\"Units\", minimum=1, maximum=max_units, step=1, value=1, scale=1)\n                adapter_ui_units = [] # list of hidable accordions\n                for i in range(max_units):\n                    enabled = True if i==0 else False\n                    with gr.Accordion(f'T2I-Adapter unit {i+1}', visible= i < num_adapter_units.value, elem_classes='control-unit') as unit_ui:\n                        with gr.Row():\n                            enabled_cb = gr.Checkbox(enabled, label='Active', container=False, show_label=True, elem_id=f'control_unit-{i}-enabled')\n                            process_id = gr.Dropdown(label=\"Processor\", choices=processors.list_models(), value='None', elem_id=f'control_unit-{i}-process_name')\n                            model_id = gr.Dropdown(label=\"Adapter\", choices=t2iadapter.list_models(), value='None', elem_id=f'control_unit-{i}-model_name')\n                            ui_common.create_refresh_button(model_id, t2iadapter.list_models, lambda: {\"choices\": t2iadapter.list_models(refresh=True)}, f'adapter_models_{i}_refresh')\n                            model_strength = gr.Slider(label=\"T2I Strength\", minimum=0.01, maximum=1.0, step=0.01, value=1.0, elem_id=f'control_unit-{i}-strength')\n                            reset_btn = ui_components.ToolButton(value=ui_symbols.reset, elem_id=f'adapter_unit-{i}-reset')\n                            image_upload = gr.UploadButton(label=ui_symbols.upload, file_types=['image'], elem_classes=['form', 'gradio-button', 'tool'], elem_id=f'adapter_unit-{i}-upload')\n                            image_reuse= ui_components.ToolButton(value=ui_symbols.reuse, elem_id=f'adapter_unit-{i}-reuse')\n                            btn_preview= ui_components.ToolButton(value=ui_symbols.preview, elem_id=f'adapter_unit-{i}-preview')\n                            image_preview = gr.Image(label=\"Input\", show_label=False, type=\"pil\", interactive=False, height=128, width=128, visible=False, elem_id=f'adapter_unit-{i}-override')\n                    adapter_ui_units.append(unit_ui)\n                    units.append(unit.Unit(\n                        unit_type = 't2i adapter',\n                        index = i,\n                        enabled = enabled,\n                        result_txt = result_txt,\n                        enabled_cb = enabled_cb,\n                        reset_btn = reset_btn,\n                        process_id = process_id,\n                        model_id = model_id,\n                        model_strength = model_strength,\n                        preview_process = preview_process,\n                        preview_btn = btn_preview,\n                        image_upload = image_upload,\n                        image_reuse = image_reuse,\n                        image_preview = image_preview,\n                        extra_controls = extra_controls,\n                        )\n                    )\n                    if i == 0:\n                        units[-1].enabled = True # enable first unit in group\n                num_adapter_units.change(fn=helpers.display_units, inputs=[num_adapter_units], outputs=adapter_ui_units)\n\n            with gr.Tab('XS') as _tab_controlnetxs:\n                gr.HTML('<a href=\"https://vislearn.github.io/ControlNet-XS/\">ControlNet XS</a>')\n                with gr.Row():\n                    extra_controls = [\n                        gr.Slider(label=\"Time embedding mix\", minimum=0.0, maximum=1.0, step=0.05, value=0.0, scale=3)\n                    ]\n                    num_controlnet_units = gr.Slider(label=\"Units\", minimum=1, maximum=max_units, step=1, value=1, scale=1)\n                controlnetxs_ui_units = [] # list of hidable accordions\n                for i in range(max_units):\n                    enabled = True if i==0 else False\n                    with gr.Accordion(f'ControlNet-XS unit {i+1}', visible= i < num_controlnet_units.value, elem_classes='control-unit') as unit_ui:\n                        with gr.Row():\n                            enabled_cb = gr.Checkbox(enabled, label='Active', container=False, show_label=True, elem_id=f'control_unit-{i}-enabled')\n                            process_id = gr.Dropdown(label=\"Processor\", choices=processors.list_models(), value='None', elem_id=f'control_unit-{i}-process_name')\n                            model_id = gr.Dropdown(label=\"ControlNet-XS\", choices=xs.list_models(), value='None', elem_id=f'control_unit-{i}-model_name')\n                            ui_common.create_refresh_button(model_id, xs.list_models, lambda: {\"choices\": xs.list_models(refresh=True)}, f'xs_models_{i}_refresh')\n                            model_strength = gr.Slider(label=\"CN Strength\", minimum=0.01, maximum=1.0, step=0.01, value=1.0, elem_id=f'control_unit-{i}-strength')\n                            control_start = gr.Slider(label=\"Start\", minimum=0.0, maximum=1.0, step=0.05, value=0, elem_id=f'control_unit-{i}-start')\n                            control_end = gr.Slider(label=\"End\", minimum=0.0, maximum=1.0, step=0.05, value=1.0, elem_id=f'control_unit-{i}-end')\n                            reset_btn = ui_components.ToolButton(value=ui_symbols.reset, elem_id=f'controlnetxs_unit-{i}-reset')\n                            image_upload = gr.UploadButton(label=ui_symbols.upload, file_types=['image'], elem_classes=['form', 'gradio-button', 'tool'], elem_id=f'controlnetxs_unit-{i}-upload')\n                            image_reuse= ui_components.ToolButton(value=ui_symbols.reuse, elem_id=f'controlnetxs_unit-{i}-reuse')\n                            btn_preview= ui_components.ToolButton(value=ui_symbols.preview, elem_id=f'controlnetxs_unit-{i}-preview')\n                            image_preview = gr.Image(label=\"Input\", show_label=False, type=\"pil\", interactive=False, height=128, width=128, visible=False, elem_id=f'controlnetxs_unit-{i}-override')\n                    controlnetxs_ui_units.append(unit_ui)\n                    units.append(unit.Unit(\n                        unit_type = 'xs',\n                        index = i,\n                        enabled = enabled,\n                        result_txt = result_txt,\n                        enabled_cb = enabled_cb,\n                        reset_btn = reset_btn,\n                        process_id = process_id,\n                        model_id = model_id,\n                        model_strength = model_strength,\n                        preview_process = preview_process,\n                        preview_btn = btn_preview,\n                        image_upload = image_upload,\n                        image_reuse = image_reuse,\n                        image_preview = image_preview,\n                        control_start = control_start,\n                        control_end = control_end,\n                        extra_controls = extra_controls,\n                        )\n                    )\n                    if i == 0:\n                        units[-1].enabled = True # enable first unit in group\n                num_controlnet_units.change(fn=helpers.display_units, inputs=[num_controlnet_units], outputs=controlnetxs_ui_units)\n\n            with gr.Tab('Lite') as _tab_lite:\n                gr.HTML('<a href=\"https://huggingface.co/kohya-ss/controlnet-lllite\">Control LLLite</a>')\n                with gr.Row():\n                    extra_controls = [\n                    ]\n                    num_lite_units = gr.Slider(label=\"Units\", minimum=1, maximum=max_units, step=1, value=1, scale=1)\n                lite_ui_units = [] # list of hidable accordions\n                for i in range(max_units):\n                    enabled = True if i==0 else False\n                    with gr.Accordion(f'Control-LLLite unit {i+1}', visible= i < num_lite_units.value, elem_classes='control-unit') as unit_ui:\n                        with gr.Row():\n                            enabled_cb = gr.Checkbox(enabled, label='Active', container=False, show_label=True, elem_id=f'control_unit-{i}-enabled')\n                            process_id = gr.Dropdown(label=\"Processor\", choices=processors.list_models(), value='None', elem_id=f'control_unit-{i}-process_name')\n                            model_id = gr.Dropdown(label=\"Model\", choices=lite.list_models(), value='None', elem_id=f'control_unit-{i}-model_name')\n                            ui_common.create_refresh_button(model_id, lite.list_models, lambda: {\"choices\": lite.list_models(refresh=True)}, f'lite_models_{i}_refresh')\n                            model_strength = gr.Slider(label=\"CN Strength\", minimum=0.01, maximum=1.0, step=0.01, value=1.0, elem_id=f'control_unit-{i}-strength')\n                            reset_btn = ui_components.ToolButton(value=ui_symbols.reset, elem_id=f'lite_unit-{i}-reset')\n                            image_upload = gr.UploadButton(label=ui_symbols.upload, file_types=['image'], elem_classes=['form', 'gradio-button', 'tool'], elem_id=f'lite_unit-{i}-upload')\n                            image_reuse= ui_components.ToolButton(value=ui_symbols.reuse, elem_id=f'lite_unit-{i}-reuse')\n                            image_preview = gr.Image(label=\"Input\", show_label=False, type=\"pil\", interactive=False, height=128, width=128, visible=False, elem_id=f'lite_unit-{i}-override')\n                            btn_preview= ui_components.ToolButton(value=ui_symbols.preview, elem_id=f'lite_unit-{i}-preview')\n                    lite_ui_units.append(unit_ui)\n                    units.append(unit.Unit(\n                        unit_type = 'lite',\n                        index = i,\n                        enabled = enabled,\n                        result_txt = result_txt,\n                        enabled_cb = enabled_cb,\n                        reset_btn = reset_btn,\n                        process_id = process_id,\n                        model_id = model_id,\n                        model_strength = model_strength,\n                        preview_process = preview_process,\n                        preview_btn = btn_preview,\n                        image_upload = image_upload,\n                        image_reuse = image_reuse,\n                        image_preview = image_preview,\n                        extra_controls = extra_controls,\n                        )\n                    )\n                    if i == 0:\n                        units[-1].enabled = True # enable first unit in group\n                num_lite_units.change(fn=helpers.display_units, inputs=[num_lite_units], outputs=lite_ui_units)\n\n            with gr.Tab('Reference') as _tab_reference:\n                gr.HTML('<a href=\"https://github.com/Mikubill/sd-webui-controlnet/discussions/1236\">ControlNet reference-only control</a>')\n                with gr.Row():\n                    extra_controls = [\n                        gr.Radio(label=\"Reference context\", choices=['Attention', 'Adain', 'Attention Adain'], value='Attention', interactive=True),\n                        gr.Slider(label=\"Style fidelity\", minimum=0.0, maximum=1.0, step=0.05, value=0.5, interactive=True), # prompt vs control importance\n                        gr.Slider(label=\"Reference query weight\", minimum=0.0, maximum=1.0, step=0.05, value=1.0, interactive=True),\n                        gr.Slider(label=\"Reference adain weight\", minimum=0.0, maximum=2.0, step=0.05, value=1.0, interactive=True),\n                    ]\n                for i in range(1): # can only have one reference unit\n                    enabled = True if i==0 else False\n                    with gr.Accordion(f'Reference unit {i+1}', visible=True, elem_classes='control-unit') as unit_ui:\n                        with gr.Row():\n                            enabled_cb = gr.Checkbox(enabled, label='Active', container=False, show_label=True, elem_id=f'control_unit-{i}-enabled')\n                            model_id = gr.Dropdown(label=\"Reference\", choices=reference.list_models(), value='Reference', visible=False, elem_id=f'control_unit-{i}-model_name')\n                            model_strength = gr.Slider(label=\"CN Strength\", minimum=0.01, maximum=1.0, step=0.01, value=1.0, visible=False, elem_id=f'control_unit-{i}-strength')\n                            reset_btn = ui_components.ToolButton(value=ui_symbols.reset, elem_id=f'reference_unit-{i}-reset')\n                            image_upload = gr.UploadButton(label=ui_symbols.upload, file_types=['image'], elem_classes=['form', 'gradio-button', 'tool'], elem_id=f'reference_unit-{i}-upload')\n                            image_reuse= ui_components.ToolButton(value=ui_symbols.reuse, elem_id=f'reference_unit-{i}-reuse')\n                            image_preview = gr.Image(label=\"Input\", show_label=False, type=\"pil\", interactive=False, height=128, width=128, visible=False, elem_id=f'reference_unit-{i}-override')\n                            btn_preview= ui_components.ToolButton(value=ui_symbols.preview, elem_id=f'reference_unit-{i}-preview')\n                    units.append(unit.Unit(\n                        unit_type = 'reference',\n                        index = i,\n                        enabled = enabled,\n                        result_txt = result_txt,\n                        enabled_cb = enabled_cb,\n                        reset_btn = reset_btn,\n                        process_id = process_id,\n                        model_id = model_id,\n                        model_strength = model_strength,\n                        preview_process = preview_process,\n                        preview_btn = btn_preview,\n                        image_upload = image_upload,\n                        image_reuse = image_reuse,\n                        image_preview = image_preview,\n                        extra_controls = extra_controls,\n                        )\n                    )\n                    if i == 0:\n                        units[-1].enabled = True # enable first unit in group\n\n        with gr.Accordion('Control settings', open=False, elem_classes=['control-settings']) as _tab_settings:\n            with gr.Group(elem_classes=['processor-group']):\n                settings = []\n                with gr.Accordion('Global', open=True, elem_classes=['processor-settings']):\n                    control_max_units = gr.Slider(label=\"Maximum units\", minimum=1, maximum=10, step=1, value=shared.opts.control_max_units, elem_id='control_max_units')\n                    def set_control_max_units(value):\n                        shared.opts.control_max_units = value\n                    control_max_units.change(fn=set_control_max_units, inputs=[control_max_units], outputs=[])\n                    control_tiles = gr.Textbox(label=\"Tiling options\", value=shared.opts.control_tiles, elem_id='control_tiles')\n                    def set_control_tiles(value):\n                        shared.opts.control_tiles = value\n                    control_tiles.change(fn=set_control_tiles, inputs=[control_tiles], outputs=[])\n                    control_hires = gr.Checkbox(label=\"Hires use control\", value=shared.opts.control_hires, elem_id='control_hires')\n                    def set_control_hires(value):\n                        shared.opts.control_hires = value\n                    control_hires.change(fn=set_control_hires, inputs=[control_hires], outputs=[])\n                    control_aspect_ratio = gr.Checkbox(label=\"Keep aspect ratio\", value=shared.opts.control_aspect_ratio, elem_id='control_aspect_ratio')\n                    def set_control_aspect_ratio(value):\n                        shared.opts.control_aspect_ratio = value\n                    control_aspect_ratio.change(fn=set_control_aspect_ratio, inputs=[control_aspect_ratio], outputs=[])\n                    control_move_processor = gr.Checkbox(label=\"Offload processor\", value=shared.opts.control_move_processor, elem_id='control_move_processor')\n                    def set_control_move_processor(value):\n                        shared.opts.control_move_processor = value\n                    control_move_processor.change(fn=set_control_move_processor, inputs=[control_move_processor], outputs=[])\n                    control_unload_processor = gr.Checkbox(label=\"Unload processor\", value=shared.opts.control_unload_processor, elem_id='control_unload_processor')\n                    def set_control_unload_processor(value):\n                        shared.opts.control_unload_processor = value\n                    control_unload_processor.change(fn=set_control_unload_processor, inputs=[control_unload_processor], outputs=[])\n\n                with gr.Accordion('HED', open=True, elem_classes=['processor-settings']):\n                    settings.append(gr.Checkbox(label=\"Scribble\", value=False))\n                with gr.Accordion('Midas depth', open=True, elem_classes=['processor-settings']):\n                    settings.append(gr.Slider(label=\"Background threshold\", minimum=0.0, maximum=1.0, step=0.01, value=0.1))\n                    settings.append(gr.Checkbox(label=\"Depth and normal\", value=False))\n                with gr.Accordion('MLSD', open=True, elem_classes=['processor-settings']):\n                    settings.append(gr.Slider(label=\"Score threshold\", minimum=0.0, maximum=1.0, step=0.01, value=0.1))\n                    settings.append(gr.Slider(label=\"Distance threshold\", minimum=0.0, maximum=1.0, step=0.01, value=0.1))\n                with gr.Accordion('OpenBody', open=True, elem_classes=['processor-settings']):\n                    settings.append(gr.Checkbox(label=\"Body\", value=True))\n                    settings.append(gr.Checkbox(label=\"Hands\", value=False))\n                    settings.append(gr.Checkbox(label=\"Face\", value=False))\n                with gr.Accordion('PidiNet', open=True, elem_classes=['processor-settings']):\n                    settings.append(gr.Checkbox(label=\"Scribble\", value=False))\n                    settings.append(gr.Checkbox(label=\"Apply filter\", value=False))\n                with gr.Accordion('LineArt', open=True, elem_classes=['processor-settings']):\n                    settings.append(gr.Checkbox(label=\"Coarse\", value=False))\n                with gr.Accordion('Leres Depth', open=True, elem_classes=['processor-settings']):\n                    settings.append(gr.Checkbox(label=\"Boost\", value=False))\n                    settings.append(gr.Slider(label=\"Near threshold\", minimum=0.0, maximum=1.0, step=0.01, value=0.0))\n                    settings.append(gr.Slider(label=\"Depth threshold\", minimum=0.0, maximum=1.0, step=0.01, value=0.0))\n                with gr.Accordion('MediaPipe Face', open=True, elem_classes=['processor-settings']):\n                    settings.append(gr.Slider(label=\"Max faces\", minimum=1, maximum=10, step=1, value=1))\n                    settings.append(gr.Slider(label=\"Face confidence\", minimum=0.0, maximum=1.0, step=0.01, value=0.5))\n                with gr.Accordion('Canny', open=True, elem_classes=['processor-settings']):\n                    settings.append(gr.Slider(label=\"Low threshold\", minimum=0, maximum=1000, step=1, value=100))\n                    settings.append(gr.Slider(label=\"High threshold\", minimum=0, maximum=1000, step=1, value=200))\n                with gr.Accordion('DWPose', open=True, elem_classes=['processor-settings']):\n                    settings.append(gr.Radio(label=\"Pose Model\", choices=['Tiny', 'Medium', 'Large'], value='Tiny'))\n                    settings.append(gr.Slider(label=\"Pose confidence\", minimum=0.0, maximum=1.0, step=0.01, value=0.3))\n                with gr.Accordion('SegmentAnything', open=True, elem_classes=['processor-settings']):\n                    settings.append(gr.Radio(label=\"Segment Model\", choices=['Base', 'Large'], value='Base'))\n                with gr.Accordion('Edge', open=True, elem_classes=['processor-settings']):\n                    settings.append(gr.Checkbox(label=\"Parameter free\", value=True))\n                    settings.append(gr.Radio(label=\"Edge mode\", choices=['edge', 'gradient'], value='edge'))\n                with gr.Accordion('Zoe Depth', open=True, elem_classes=['processor-settings']):\n                    settings.append(gr.Checkbox(label=\"Gamma corrected\", value=False))\n                with gr.Accordion('Marigold Depth', open=True, elem_classes=['processor-settings']):\n                    settings.append(gr.Dropdown(label=\"Color map\", choices=['None'] + plt.colormaps(), value='None'))\n                    settings.append(gr.Slider(label=\"Denoising steps\", minimum=1, maximum=99, step=1, value=10))\n                    settings.append(gr.Slider(label=\"Ensemble size\", minimum=1, maximum=99, step=1, value=10))\n                with gr.Accordion('Depth Anything', open=True, elem_classes=['processor-settings']):\n                    settings.append(gr.Dropdown(label=\"Depth map\", choices=['none'] + masking.COLORMAP, value='inferno'))\n                with gr.Accordion('Depth Pro', open=True, elem_classes=['processor-settings']):\n                    settings.append(gr.Dropdown(label=\"Depth map\", choices=['none'] + masking.COLORMAP, value='inferno'))\n                for setting in settings:\n                    setting.change(fn=processors.update_settings, inputs=settings, outputs=[])\n"
  },
  {
    "path": "modules/ui_control_helpers.py",
    "content": "import os\nimport time\nimport gradio as gr\nfrom PIL import Image\nfrom modules import shared, scripts_manager, masking, video # pylint: disable=ungrouped-imports\n\n\ngr_height = None\nmax_units = shared.opts.control_max_units\ndebug = os.environ.get('SD_CONTROL_DEBUG', None) is not None\ndebug_log = shared.log.trace if debug else lambda *args, **kwargs: None\n\n# state variables\nbusy = False # used to synchronize select_input and generate_click\ninput_source = None\ninput_init = None\ninput_mask = None\n\n\ndef initialize():\n    from modules import devices\n    from modules.control import unit\n    from modules.control import processors # patrickvonplaten controlnet_aux\n    from modules.control.units import controlnet # lllyasviel ControlNet\n    from modules.control.units import xs # vislearn ControlNet-XS\n    from modules.control.units import lite # vislearn ControlNet-XS\n    from modules.control.units import t2iadapter # TencentARC T2I-Adapter\n    shared.log.debug(f'UI initialize: tab=control models=\"{shared.opts.control_dir}\"')\n    controlnet.cache_dir = os.path.join(shared.opts.control_dir, 'controlnet')\n    xs.cache_dir = os.path.join(shared.opts.control_dir, 'xs')\n    lite.cache_dir = os.path.join(shared.opts.control_dir, 'lite')\n    t2iadapter.cache_dir = os.path.join(shared.opts.control_dir, 'adapter')\n    processors.cache_dir = os.path.join(shared.opts.control_dir, 'processor')\n    masking.cache_dir = os.path.join(shared.opts.control_dir, 'segment')\n    unit.default_device = devices.device\n    unit.default_dtype = devices.dtype\n    try:\n        os.makedirs(shared.opts.control_dir, exist_ok=True)\n        os.makedirs(controlnet.cache_dir, exist_ok=True)\n        os.makedirs(xs.cache_dir, exist_ok=True)\n        os.makedirs(lite.cache_dir, exist_ok=True)\n        os.makedirs(t2iadapter.cache_dir, exist_ok=True)\n        os.makedirs(processors.cache_dir, exist_ok=True)\n        os.makedirs(masking.cache_dir, exist_ok=True)\n    except Exception:\n        pass\n    scripts_manager.scripts_current = scripts_manager.scripts_control\n    scripts_manager.scripts_control.initialize_scripts(is_img2img=False, is_control=True)\n\n\ndef interrogate():\n    prompt = None\n    if input_source is None or len(input_source) == 0:\n        shared.log.warning('Interrogate: no input source')\n        return prompt\n    try:\n        from modules.interrogate.interrogate import interrogate as interrogate_fn\n        prompt = interrogate_fn(input_source[0])\n    except Exception as e:\n        shared.log.error(f'Interrogate: {e}')\n    return prompt\n\n\ndef display_units(num_units):\n    num_units = num_units or 1\n    return (num_units * [gr.update(visible=True)]) + ((max_units - num_units) * [gr.update(visible=False)])\n\n\ndef get_video(filepath: str):\n    if not os.path.exists(filepath):\n        return ''\n    try:\n        frames, fps, duration, w, h, codec, _cap = video.get_video_params(filepath)\n        shared.log.debug(f'Control: input video: path={filepath} frames={frames} fps={fps} size={w}x{h} codec={codec}')\n        msg = f'Control input | Video | Size {w}x{h} | Frames {frames} | FPS {fps:.2f} | Duration {duration:.2f} | Codec {codec}'\n        return msg\n    except Exception as e:\n        msg = f'Control: video open failed: path={filepath} {e}'\n        shared.log.error(msg)\n        return msg\n\n\ndef process_kanvas(x): # only used when kanvas overrides gr.Image object\n    image = None\n    mask = None\n    try: # try base64 decode\n        t0 = time.time()\n        image_data = x.get('image', '')\n        image_bytes = len(image_data)\n        if image_bytes > 0:\n            from modules.api import helpers\n            image = helpers.decode_base64_to_image(image_data)\n            image = image.convert('RGB')\n        mask_data = x.get('mask', '')\n        mask_bytes = len(mask_data)\n        if mask_bytes > 0:\n            from modules.api import helpers\n            mask = helpers.decode_base64_to_image(mask_data)\n            mask = mask.convert('L')\n        t1 = time.time()\n        shared.log.debug(f'Kanvas: image={image}:{image_bytes} mask={mask}:{mask_bytes} time={t1-t0:.2f}')\n        return image, mask\n    except Exception:\n        pass\n    try: # try raw pixel data\n        import numpy as np\n        t0 = time.time()\n        image_data = list(x.get('image', {}).values())\n        if image_data:\n            width = x['imageWidth']\n            height = x['imageHeight']\n            array = np.array(image_data, dtype=np.uint8).reshape((height, width, 4))\n            image = Image.fromarray(array, 'RGBA')\n            image = image.convert('RGB')\n        mask_data = list(x.get('mask', {}).values())\n        if mask_data:\n            width = x['maskWidth']\n            height = x['maskHeight']\n            array = np.array(mask_data, dtype=np.uint8).reshape((height, width, 4))\n            mask = Image.fromarray(array, 'RGBA')\n            # alpha = mask.getchannel(\"A\").convert(\"L\")\n            # mask = Image.merge(\"RGB\", [alpha, alpha, alpha])\n            mask = mask.convert('L')\n        t1 = time.time()\n        shared.log.debug(f'Kanvas: image={image} mask={mask} time={t1-t0:.2f}')\n    except Exception:\n        pass\n    return image, mask\n\n\ndef select_input(input_mode, input_image, init_image, init_type, input_video, input_batch, input_folder):\n    global busy, input_source, input_init, input_mask # pylint: disable=global-statement\n    t0 = time.time()\n    busy = False\n    selected_input = input_image # default: Image or Kanvas\n    if input_mode == 'Video':\n        selected_input = input_video\n    elif input_mode == 'Batch':\n        selected_input = input_batch\n    elif input_mode == 'Folder':\n        selected_input = input_folder\n    size = [gr.update(), gr.update()]\n    if selected_input is None:\n        input_source = None\n        return [gr.Tabs.update(), None, ''] + size\n\n    busy = True\n    input_type = type(selected_input)\n    input_mask = None\n    status = 'Control input | Unknown'\n    res = [gr.Tabs.update(selected='out-gallery'), input_mask, status]\n    # control inputs\n    if isinstance(selected_input, Image.Image): # image via upload -> image\n        if input_mode == 'Outpaint':\n            masking.opts.invert = True\n            selected_input, input_mask = masking.outpaint(input_image=selected_input)\n        input_source = [selected_input]\n        input_type = 'PIL.Image'\n        status = f'Control input | Image | Size {selected_input.width if selected_input else 0}x{selected_input.height if selected_input else 0} | Mode {selected_input.mode if selected_input else \"Unknown\"}'\n        size = [gr.update(value=selected_input.width), gr.update(value=selected_input.height)]\n        res = [gr.Tabs.update(selected='out-gallery'), input_mask, status]\n    elif isinstance(selected_input, dict) and 'kanvas' in selected_input: # kanvas via js -> kanvas dict\n        selected_input, input_mask = process_kanvas(selected_input)\n        input_source = [selected_input]\n        input_type = 'Kanvas'\n        status = f'Control input | Kanvas | Size {selected_input.width if selected_input else 0}x{selected_input.height if selected_input else 0} | Mode {selected_input.mode if selected_input else \"Unknown\"}'\n        if selected_input:\n            size = [gr.update(value=selected_input.width), gr.update(value=selected_input.height)]\n        res = [gr.Tabs.update(selected='out-gallery'), input_mask, status]\n    elif isinstance(selected_input, dict) and 'mask' in selected_input: # inpaint -> dict image+mask\n        input_mask = selected_input['mask']\n        selected_input = selected_input['image']\n        input_source = [selected_input]\n        input_type = 'PIL.Image'\n        status = f'Control input | Image | Size {selected_input.width if selected_input else 0}x{selected_input.height if selected_input else 0} | Mode {selected_input.mode if selected_input else \"Unknown\"}'\n        res = [gr.Tabs.update(selected='out-gallery'), input_mask, status]\n    elif isinstance(selected_input, gr.components.image.Image): # not likely\n        input_source = [selected_input.value]\n        input_type = 'gr.Image'\n        res = [gr.Tabs.update(selected='out-gallery'), input_mask, status]\n    elif isinstance(selected_input, str) and os.path.exists(selected_input): # video via upload > tmp filepath to video\n        input_source = selected_input\n        input_type = 'gr.Video'\n        status = get_video(input_source)\n        res = [gr.Tabs.update(selected='out-video'), input_mask, status]\n    elif isinstance(selected_input, list): # batch or folder via upload -> list of tmp filepaths\n        if hasattr(selected_input[0], 'name'):\n            input_type = 'tempfiles'\n            input_source = [f.name for f in selected_input] # tempfile\n        else:\n            input_type = 'files'\n            input_source = selected_input\n        status = f'Control input | Images | Files {len(input_source)}'\n        res = [gr.Tabs.update(selected='out-gallery'), input_mask, status]\n    else: # unknown\n        input_source = None\n    if init_type == 0: # Control only\n        input_init = None\n    elif init_type == 1: # Init image same as control assigned during runtime\n        input_init = None\n    elif init_type == 2: # Separate init image\n        input_init = [init_image]\n    t1 = time.time()\n    shared.log.debug(f'Select input: type={input_type} source={input_source} init={input_init} mask={input_mask} mode={input_mode} time={t1-t0:.2f}')\n    busy = False\n    return res + size\n\n\ndef copy_input(mode_from, mode_to, input_image, input_resize, input_inpaint):\n    debug_log(f'Control transfter input: from={mode_from} to={mode_to} image={input_image} resize={input_resize} inpaint={input_inpaint}')\n    def getimg(ctrl):\n        if ctrl is None:\n            return None\n        return ctrl.get('image', None) if isinstance(ctrl, dict) else ctrl\n\n    if mode_from == mode_to:\n        return [gr.update(), gr.update(), gr.update()]\n    elif mode_to == 'Image':\n        return [getimg(input_resize) if mode_from == 'Outpaint' else getimg(input_inpaint), None, None]\n    elif mode_to == 'Inpaint':\n        return [None, None, getimg(input_image) if mode_from == 'Image' else getimg(input_resize)]\n    elif mode_to == 'Outpaint':\n        return [None, getimg(input_image) if mode_from == 'Image' else getimg(input_inpaint), None]\n    else:\n        shared.log.error(f'Control transfer unknown input: from={mode_from} to={mode_to}')\n        return [gr.update(), gr.update(), gr.update()]\n\n\ndef transfer_input(dst):\n    return [gr.update(visible=dst=='Image'), gr.update(visible=dst=='Outpaint'), gr.update(visible=dst=='Inpaint'), gr.update(interactive=dst!='Image'), gr.update(interactive=dst!='Inpaint'), gr.update(interactive=dst!='Outpaint')]\n"
  },
  {
    "path": "modules/ui_docs.py",
    "content": "import os\nimport time\nimport gradio as gr\nfrom modules import ui_symbols, ui_components\nfrom installer import install, log\n\n\nclass Page():\n    def __init__(self, fn, full: bool = True):\n        self.fn = fn\n        self.title = ''\n        self.size = 0\n        self.mtime = 0\n        self.h1 = []\n        self.h2 = []\n        self.h3 = []\n        self.lines = []\n        self.read(full=full)\n\n    def read(self, full: bool = True):\n        try:\n            self.title = ' ' + os.path.basename(self.fn).replace('.md', '').replace('-', ' ') + ' '\n            self.mtime = time.localtime(os.path.getmtime(self.fn))\n            with open(self.fn, 'r', encoding='utf-8') as f:\n                content = f.read()\n            self.size = len(content)\n            self.lines = [line.strip().lower() + ' ' for line in content.splitlines() if len(line)>1]\n            self.h1 = [line[1:] for line in self.lines if line.startswith('# ')]\n            self.h2 = [line[2:] for line in self.lines if line.startswith('## ')]\n            self.h3 = [line[3:] for line in self.lines if line.startswith('### ')]\n            if not full:\n                self.lines.clear()\n        except Exception as e:\n            log.error(f'Search docs: page=\"{self.fn}\" {e}')\n\n    def search(self, text):\n        if not text or len(text) < 2:\n            return []\n        text = text.lower()\n        if text.strip() == self.title.lower().strip():\n            return 1.0\n        if self.title.lower().startswith(f'{text} '):\n            return 0.99\n        if f' {text} ' in self.title.lower():\n            return 0.98\n        if f' {text}' in self.title.lower():\n            return 0.97\n\n        if any(f' {text} ' in h for h in self.h1):\n            return 0.89\n        if any(f' {text}' in h for h in self.h1):\n            return 0.88\n\n        if any(f' {text} ' in h for h in self.h2):\n            return 0.79\n        if any(f' {text}' in h for h in self.h2):\n            return 0.78\n\n        if any(f' {text} ' in h for h in self.h3):\n            return 0.69\n        if any(f' {text}' in h for h in self.h3):\n            return 0.68\n\n        if f'{text}' in self.title.lower():\n            return 0.59\n        if any(f'{text}' in h for h in self.h1):\n            return 0.58\n        if any(f'{text}' in h for h in self.h2):\n            return 0.57\n        if any(f'{text}' in h for h in self.h3):\n            return 0.56\n\n        if any(text in line for line in self.lines):\n            return 0.50\n\n        return 0.0\n\n    def get(self):\n        if self.fn is None or not os.path.exists(self.fn):\n            log.error(f'Search docs: page=\"{self.fn}\" does not exist')\n            return f'page=\"{self.fn}\" does not exist'\n        try:\n            with open(self.fn, 'r', encoding='utf-8') as f:\n                content = f.read()\n                return content\n        except Exception as e:\n            log.error(f'Search docs: page=\"{self.fn}\" {e}')\n        return ''\n\n    def __str__(self):\n        return f'Page(title=\"{self.title.strip()}\" fn=\"{self.fn}\" mtime={self.mtime} h1={[h.strip() for h in self.h1]} h2={len(self.h2)} h3={len(self.h3)} lines={len(self.lines)} size={self.size})'\n\n\nclass Pages():\n    def __init__(self):\n        self.time = time.time()\n        self.size = 0\n        self.full = None\n        self.pages: list[Page] = []\n\n    def build(self, full: bool = True):\n        self.pages.clear()\n        self.full = full\n        with os.scandir('wiki') as entries:\n            for entry in entries:\n                if entry.is_file() and entry.name.endswith('.md'):\n                    page = Page(entry.path, full=full)\n                    self.pages.append(page)\n        self.size = sum(page.size for page in self.pages)\n\n    def search(self, text: str, topk: int = 10, full: bool = True) -> list[Page]:\n        if not text or len(text) < 2:\n            return []\n        if len(self.pages) == 0:\n            self.build(full=full)\n        try:\n            text = text.lower()\n            scores = [page.search(text) for page in self.pages]\n            mtimes = [page.mtime for page in self.pages]\n            found = sorted(zip(scores, mtimes, self.pages), key=lambda x: (x[0], x[1]), reverse=True)\n            found = [item for item in found if item[0] > 0]\n            return [(item[0], item[2]) for item in found][:topk]\n        except Exception as e:\n            log.error(f'Search docs: text=\"{text}\" {e}')\n            return []\n\n    def get(self, title: str) -> Page:\n        if len(self.pages) == 0:\n            self.build(full=self.full)\n        for page in self.pages:\n            if page.title.lower().strip() == title.lower().strip():\n                return page\n        return Page('')\n\n\nindex = Pages()\n\n\ndef get_docs_page(page_title: str) -> str:\n    if len(index.pages) == 0:\n        index.build(full=True)\n    page = index.get(page_title)\n    log.debug(f'Search docs: title=\"{page_title}\" {page}')\n    content = page.get()\n    return content\n\n\ndef search_html(pages: list[Page]) -> str:\n    html = ''\n    for score, page in pages:\n        if score > 0.0:\n            html += f'''\n                <div class=\"docs-card\" onclick=\"clickDocsPage('{page.title}')\">\n                    <div class=\"docs-card-title\">{page.title.strip()}</div>\n                    <div class=\"docs-card-h1\">Heading | {' | '.join([h.strip() for h in page.h1])}</div>\n                    <div class=\"docs-card-h2\"><b>Topics</b> | {' | '.join([h.strip() for h in page.h2])}</div>\n                    <div class=\"docs-card-footer\">\n                        <span class=\"docs-card-score\">Score | {score}</span>\n                        <span class=\"docs-card-mtime\">Last modified | {time.strftime('%c', page.mtime)}</span>\n                    </div>\n                </div>'''\n    return html\n\n\ndef search_docs(search_term):\n    topk = 10\n    full = True\n    t0 = time.time()\n    results = index.search(search_term, topk=topk, full=full)\n    t1 = time.time()\n    log.debug(f'Search results: search=\"{search_term}\" topk={topk}, full={full} pages={len(results)} size={index.size} time={t1-t0:.3f}')\n    for score, page in results:\n        log.trace(f'Search results: score={score:.2f} {page}')\n    html = search_html(results)\n    return html\n\n\ndef get_github_page(page):\n    try:\n        with open(os.path.join('wiki', f'{page}.md'), 'r', encoding='utf-8') as f:\n            content = f.read()\n            log.debug(f'Search wiki: page=\"{page}\" size={len(content)}')\n    except Exception as e:\n        log.error(f'Search wiki: page=\"{page}\" {e}')\n        content = f'Error: {e}'\n    return content\n\n\ndef search_github(search_term):\n    import requests\n    from urllib.parse import quote\n    install('beautifulsoup4')\n    from bs4 import BeautifulSoup\n\n    url = f'https://github.com/search?q=repo%3Avladmandic%2Fsdnext+{quote(search_term)}&type=wikis'\n    res = requests.get(url, timeout=10)\n    pages = []\n    if res.status_code == 200:\n        html = res.content\n        soup = BeautifulSoup(html, 'html.parser')\n\n        # remove header links\n        tags = soup.find_all(attrs={\"data-hovercard-url\": \"/vladmandic/sdnext/hovercard\"})\n        for tag in tags:\n            tag.extract()\n\n        # replace relative links with full links\n        tags = soup.find_all('a')\n        for tag in tags:\n            if tag.has_attr('href'):\n                if tag['href'].startswith('/vladmandic/sdnext/wiki/'):\n                    page = tag['href'].replace('/vladmandic/sdnext/wiki/', '')\n                    tag.name = 'div'\n                    tag['class'] = 'github-page'\n                    tag['onclick'] = f'clickGitHubWikiPage(\"{page}\")'\n                    pages.append(page)\n                elif tag['href'].startswith('/'):\n                    tag['href'] = 'https://github.com' + tag['href']\n\n        # find result only\n        result = soup.find(attrs={\"data-testid\": \"results-list\"})\n        if result is None:\n            return 'No results found'\n        html = str(result)\n    else:\n        html = f'Error: {res.status_code}'\n    log.debug(f'Search wiki: code={res.status_code} text=\"{search_term}\" pages={pages}')\n    return html\n\n\ndef create_ui_logs():\n    def get_changelog():\n        with open('CHANGELOG.md', 'r', encoding='utf-8') as f:\n            content = f.read()\n            content = content.replace('# Change Log for SD.Next', '  ')\n        return content\n\n    with gr.Column():\n        get_changelog_btn = gr.Button(value='Get Changelog', elem_id=\"get_changelog\")\n    with gr.Column():\n        _changelog_search = gr.Textbox(label=\"Search Changelog\", elem_id=\"changelog_search\", elem_classes=\"docs-search\")\n        _changelog_result = gr.HTML(elem_id=\"changelog_result\")\n\n    changelog_markdown = gr.Markdown('', elem_id=\"changelog_markdown\")\n    get_changelog_btn.click(fn=get_changelog, outputs=[changelog_markdown], show_progress='full')\n\n\ndef create_ui_github():\n    with gr.Row():\n        github_search = gr.Textbox(label=\"Search GitHub Wiki Pages\", elem_id=\"github_search\", elem_classes=\"docs-search\")\n        github_search_btn = ui_components.ToolButton(value=ui_symbols.search, elem_id=\"github_btn_search\")\n    with gr.Row():\n        github_result = gr.HTML(elem_id=\"github_result\", value='', elem_classes=\"github-result\")\n    with gr.Row():\n        github_md_btn = gr.Button(value='html2md', elem_id=\"github_md_btn\", visible=False)\n        github_md = gr.Markdown(elem_id=\"github_md\", value='', elem_classes=\"github-md\")\n    github_search.submit(fn=search_github, inputs=[github_search], outputs=[github_result], show_progress='full')\n    github_search_btn.click(fn=search_github, inputs=[github_search], outputs=[github_result], show_progress='full')\n    github_md_btn.click(fn=get_github_page, _js='getGitHubWikiPage', inputs=[github_search], outputs=[github_md], show_progress='full')\n\n\ndef create_ui_docs():\n    with gr.Row():\n        docs_search = gr.Textbox(label=\"Search Docs\", elem_id=\"github_search\", elem_classes=\"docs-search\")\n        docs_search_btn = ui_components.ToolButton(value=ui_symbols.search, elem_id=\"docs_btn_search\")\n    with gr.Row():\n        docs_result = gr.HTML(elem_id=\"docs_result\", value='', elem_classes=\"docs-result\")\n    with gr.Row():\n        docs_md_btn = gr.Button(value='html2md', elem_id=\"docs_md_btn\", visible=False)\n        docs_md = gr.Markdown(elem_id=\"docs_md\", value='', elem_classes=\"docs-md\")\n    docs_search.submit(fn=search_docs, inputs=[docs_search], outputs=[docs_result], show_progress='hidden')\n    docs_search.change(fn=search_docs, inputs=[docs_search], outputs=[docs_result], show_progress='hidden')\n    docs_search_btn.click(fn=search_docs, inputs=[docs_search], outputs=[docs_result], show_progress='hidden')\n    docs_md_btn.click(fn=get_docs_page, _js='getDocsPage', inputs=[docs_search], outputs=[docs_md], show_progress='hidden')\n\n\ndef create_ui():\n    log.debug('UI initialize: tab=info')\n    with gr.Tabs(elem_id=\"tabs_info\"):\n        with gr.TabItem(\"Docs\", id=\"docs\", elem_id=\"system_tab_docs\"):\n            create_ui_docs()\n        with gr.TabItem(\"Wiki\", id=\"wiki\", elem_id=\"system_tab_wiki\"):\n            create_ui_github()\n        with gr.TabItem(\"Change log\", id=\"change_log\", elem_id=\"system_tab_changelog\"):\n            create_ui_logs()\n"
  },
  {
    "path": "modules/ui_extensions.py",
    "content": "import os\nimport json\nimport shutil\nimport errno\nimport html\nimport re\nfrom datetime import datetime, timezone, timedelta\nimport gradio as gr\nfrom modules import extensions, shared, paths, errors, ui_symbols, call_queue\n\n\ndebug = shared.log.debug if os.environ.get('SD_EXT_DEBUG', None) is not None else lambda *args, **kwargs: None\nextensions_index = \"https://vladmandic.github.io/sd-data/pages/extensions.json\"\nhide_tags = [\"localization\"]\nexclude_extensions = ['sdnext-modernui', 'sdnext-kanvas']\nextensions_list = []\nsort_ordering = {\n    \"default\": (True, lambda x: x.get('sort_default', '')),\n    \"user extensions\": (True, lambda x: x.get('sort_user', '')),\n    \"trending\": (True, lambda x: x.get('sort_trending', -1)),\n    \"update available\": (True, lambda x: x.get('sort_update', '')),\n    \"updated date\": (True, lambda x: x.get('updated', '2000-01-01T00:00')),\n    \"created date\": (True, lambda x: x.get('created', '2000-01-01T00:00')),\n    \"name\": (False, lambda x: x.get('name', '').lower()),\n    \"enabled\": (False, lambda x: x.get('sort_enabled', '').lower()),\n    \"size\": (True, lambda x: x.get('size', 0)),\n    \"stars\": (True, lambda x: x.get('stars', 0)),\n    \"commits\": (True, lambda x: x.get('commits', 0)),\n    \"issues\": (True, lambda x: x.get('issues', 0)),\n}\nextensions_data_file = os.path.join(\"data\", \"extensions.json\")\n\nre_snake_case = re.compile(r'_(?=[a-zA-z0-9])')\nre_camelCase = re.compile(r'(?<=[a-z])([A-Z])')\n\n\ndef get_installed(ext):\n    installed = [e for e in extensions.extensions if (e.remote or '').startswith(ext['url'].replace('.git', ''))]\n    return installed[0] if len(installed) > 0 else None\n\n\ndef list_extensions():\n    global extensions_list # pylint: disable=global-statement\n    extensions_list = shared.readfile(extensions_data_file, silent=True, as_type=\"list\")\n    if len(extensions_list) == 0:\n        shared.log.info(\"Extension list: No information found. Refresh required.\")\n    found = []\n    for ext in extensions.extensions:\n        ext.read_info()\n    for ext in extensions_list:\n        installed = get_installed(ext)\n        if installed:\n            found.append(installed)\n            debug(f'Extension installed from index: {ext}')\n    for ext in [e for e in extensions.extensions if e not in found]: # installed but not in index\n        entry = {\n            \"name\": ext.name or \"\",\n            \"description\": ext.description or \"\",\n            \"url\": ext.remote or \"\",\n            \"tags\": [],\n            \"stars\": 0,\n            \"issues\": 0,\n            \"commits\": 0,\n            \"size\": 0,\n            \"long\": ext.git_name or ext.name or \"\",\n            \"added\": ext.ctime,\n            \"created\": ext.ctime,\n            \"updated\": ext.mtime,\n        }\n        if ext.name not in exclude_extensions:\n            extensions_list.append(entry)\n        debug(f'Extension installed without index: {entry}')\n\n\ndef apply_changes(disable_list, update_list, disable_all):\n    if shared.cmd_opts.disable_extension_access:\n        shared.log.error('Extension: apply changes disallowed because public access is enabled and insecure is not specified')\n        return\n    shared.log.debug(f'Extensions apply: disable={disable_list} update={update_list}')\n    disabled = json.loads(disable_list)\n    assert type(disabled) == list, f\"wrong disable_list data for apply_changes: {disable_list}\"\n    update = json.loads(update_list)\n    assert type(update) == list, f\"wrong update_list data for apply_changes: {update_list}\"\n    update = set(update)\n    for ext in extensions.extensions:\n        if ext.name not in update:\n            continue\n        try:\n            ext.git_fetch()\n        except Exception as e:\n            errors.display(e, f'extensions apply update: {ext.name}')\n    shared.opts.disabled_extensions = disabled\n    shared.opts.disable_all_extensions = disable_all\n    shared.opts.save()\n    shared.restart_server(restart=True)\n\n\ndef check_updates(_id_task, disable_list, search_text, sort_column):\n    if shared.cmd_opts.disable_extension_access:\n        shared.log.error('Extension: apply changes disallowed because public access is enabled and insecure is not specified')\n        return create_html(search_text, sort_column)\n    disabled = json.loads(disable_list)\n    assert type(disabled) == list, f\"wrong disable_list data for apply_and_restart: {disable_list}\"\n    exts = [ext for ext in extensions.extensions if ext.remote is not None and ext.name not in disabled]\n    shared.log.info(f'Extensions update check: update={len(exts)} disabled={len(disable_list)}')\n    shared.state.job_count = len(exts)\n    for ext in exts:\n        shared.state.textinfo = ext.name\n        try:\n            ext.check_updates()\n            if ext.can_update:\n                ext.git_fetch()\n                ext.read_info()\n                commit_date = ext.commit_date or 1577836800\n                shared.log.info(f'Extensions updated: {ext.name} {ext.commit_hash[:8]} {extensions.format_dt(extensions.ts2utc(commit_date), seconds=True)}')\n            else:\n                commit_date = ext.commit_date or 1577836800\n                shared.log.debug(f'Extensions no update available: {ext.name} {ext.commit_hash[:8]} {extensions.format_dt(extensions.ts2utc(commit_date), seconds=True)}')\n        except FileNotFoundError as e:\n            if 'FETCH_HEAD' not in str(e):\n                raise\n        except Exception as e:\n            errors.display(e, f'extensions check update: {ext.name}')\n        shared.state.nextjob()\n    return create_html(search_text, sort_column), \"Extension update complete | Restart required\"\n\n\ndef normalize_git_url(url: str | None) -> str:\n    return '' if url is None else url.strip().removesuffix('.git')\n\n\ndef install_extension_from_url(dirname, url, branch_name, search_text, sort_column):\n    if shared.cmd_opts.disable_extension_access:\n        shared.log.error('Extension: apply changes disallowed because public access is enabled and insecure is not specified')\n        return ['', '']\n    url = normalize_git_url(url)\n    if not url:\n        shared.log.error('Extension: url is not specified')\n        return ['', '']\n    if not dirname:\n        dirname = url.split('/')[-1]\n    target_dir = os.path.join(extensions.extensions_dir, dirname)\n    shared.log.info(f'Installing extension: {url} into {target_dir}')\n    if os.path.exists(target_dir):\n        shared.log.error(f'Extension: path=\"{target_dir}\" directory already exists')\n        return ['', '']\n    if any(normalize_git_url(x.remote) == url for x in extensions.extensions):\n        return ['', \"Extension with this URL is already installed\"]\n    tmpdir = os.path.join(paths.data_path, \"tmp\", dirname)\n    try:\n        import git\n        shutil.rmtree(tmpdir, True)\n        args = {\n            'url': url,\n            'to_path': tmpdir,\n            'allow_unsafe_protocols': True,\n            'allow_unsafe_options': True,\n            'filter': ['blob:none'],\n        }\n        if branch_name:\n            args['branch'] = branch_name\n        ssh = os.environ.get('GIT_SSH_COMMAND', None)\n        if ssh:\n            args['env'] = {'GIT_SSH_COMMAND':ssh}\n        shared.log.debug(f'GIT: {args}')\n        with git.Repo.clone_from(**args) as repo:\n            repo.remote().fetch(verbose=True)\n            for submodule in repo.submodules:\n                submodule.update()\n        try:\n            os.rename(tmpdir, target_dir)\n        except OSError as err:\n            if err.errno == errno.EXDEV:\n                shutil.move(tmpdir, target_dir)\n            else:\n                raise err\n        from launch import run_extension_installer\n        run_extension_installer(target_dir)\n        shutil.rmtree(tmpdir, True)\n        extensions.list_extensions()\n        return [create_html(search_text, sort_column), html.escape(f\"Extension installed: {target_dir} | Restart required\")]\n    except Exception as e:\n        # errors.display(e, 'GIT')\n        shutil.rmtree(tmpdir, True)\n        shared.log.error(f'Error installing extension: {url} {e}')\n        return ['', str(e).replace('\\n', '<br>')]\n\n\ndef install_extension(extension_to_install, search_text, sort_column):\n    shared.log.info(f'Extension install: {extension_to_install}')\n    code, message = install_extension_from_url(None, extension_to_install, None, search_text, sort_column)\n    return code, message\n\n\ndef uninstall_extension(extension_path, search_text, sort_column):\n    def errorRemoveReadonly(func, path, exc):\n        import stat\n        excvalue = exc[1]\n        shared.log.debug(f'Exception during cleanup: {func} {path} {excvalue.strerror}')\n        if func in (os.rmdir, os.remove, os.unlink) and excvalue.errno == errno.EACCES:\n            shared.log.debug(f'Retrying cleanup: {path}')\n            os.chmod(path, stat.S_IRWXU | stat.S_IRWXG | stat.S_IRWXO)\n            func(path)\n\n    found = [extension for extension in extensions.extensions if os.path.abspath(extension.path) == os.path.abspath(extension_path)]\n    if len(found) > 0 and os.path.isdir(extension_path):\n        found = found[0]\n        try:\n            shutil.rmtree(found.path, ignore_errors=False, onerror=errorRemoveReadonly) # pylint: disable=deprecated-argument\n            # extensions.extensions = [extension for extension in extensions.extensions if os.path.abspath(found.path) != os.path.abspath(extension_path)]\n        except Exception as e:\n            shared.log.warning(f'Extension uninstall failed: {found.path} {e}')\n        list_extensions()\n        global extensions_list # pylint: disable=global-statement\n        extensions_list = [ext for ext in extensions_list if ext['name'] != found.name]\n        shared.log.info(f'Extension uninstalled: {found.path}')\n        code = create_html(search_text, sort_column)\n        return code, f\"Extension uninstalled: {found.path} | Restart required\"\n    else:\n        shared.log.warning(f'Extension uninstall cannot find extension: {extension_path}')\n        code = create_html(search_text, sort_column)\n        return code, f\"Extension uninstalled failed: {extension_path}\"\n\n\ndef update_extension(extension_path, search_text, sort_column):\n    exts = [extension for extension in extensions.extensions if os.path.abspath(extension.path) == os.path.abspath(extension_path)]\n    shared.state.job_count = len(exts)\n    for ext in exts:\n        shared.log.debug(f'Extensions update start: {ext.name} {ext.commit_hash} {ext.commit_date}')\n        shared.state.textinfo = ext.name\n        try:\n            ext.check_updates()\n            if ext.can_update:\n                ext.git_fetch()\n                ext.read_info()\n                commit_date = ext.commit_date or 1577836800\n                shared.log.info(f'Extensions updated: {ext.name} {ext.commit_hash[:8]} {extensions.format_dt(extensions.ts2utc(commit_date), seconds=True)}')\n            else:\n                commit_date = ext.commit_date or 1577836800\n                shared.log.info(f'Extensions no update available: {ext.name} {ext.commit_hash[:8]} {extensions.format_dt(extensions.ts2utc(commit_date), seconds=True)}')\n        except FileNotFoundError as e:\n            if 'FETCH_HEAD' not in str(e):\n                raise\n        except Exception as e:\n            shared.log.error(f'Extensions update failed: {ext.name}')\n            errors.display(e, f'extensions check update: {ext.name}')\n        shared.log.debug(f'Extensions update finish: {ext.name} {ext.commit_hash} {ext.commit_date}')\n        shared.state.nextjob()\n    return create_html(search_text, sort_column), f\"Extension updated | {extension_path} | Restart required\"\n\n\ndef refresh_extensions_list(search_text, sort_column):\n    global extensions_list # pylint: disable=global-statement\n    import ssl\n    import urllib.request\n    try:\n        shared.log.debug(f'Updating extensions list: url={extensions_index}')\n        context = ssl._create_unverified_context() # pylint: disable=protected-access\n        with urllib.request.urlopen(extensions_index, timeout=3.0, context=context) as response:\n            text = response.read()\n        extensions_list = json.loads(text)\n        with open(extensions_data_file, \"w\", encoding=\"utf-8\") as outfile:\n            json_object = json.dumps(extensions_list, indent=2)\n            outfile.write(json_object)\n            shared.log.info(f'Updated extensions list: items={len(extensions_list)} url={extensions_index}')\n    except Exception as e:\n        shared.log.warning(f'Updated extensions list failed: {extensions_index} {e}')\n    list_extensions()\n    code = create_html(search_text, sort_column)\n    return code, f'Extensions | {len(extensions.extensions)} registered | {len(extensions_list)} available'\n\n\ndef search_extensions(search_text, sort_column):\n    code = create_html(search_text, sort_column)\n    return code, f'Search | {search_text} | {sort_column}'\n\n\ndef make_wrappable_html(text: str) -> str:\n    text = html.escape(text)\n    text = re_snake_case.sub(\"<wbr />_\", text)\n    return re_camelCase.sub(r\"<wbr />\\1\", text)\n\n\ndef create_html(search_text, sort_column):\n    # shared.log.debug(f'Extensions manager: refresh list search=\"{search_text}\" sort=\"{sort_column}\"')\n    code = \"\"\"\n        <div id=\"extensions-div\">\n        <table id=\"extensions\">\n            <colgroup>\n                <col style=\"width: 1%; background: var(--table-border-color)\">\n                <col style=\"width: 1%; background: var(--table-border-color)\">\n                <col style=\"width: 20%; background: var(--table-border-color)\">\n                <col style=\"width: 59%;\">\n                <col style=\"width: 5%; background: var(--panel-background-fill)\">\n                <col style=\"width: 10%; background: var(--panel-background-fill)\">\n                <col style=\"width: 5%; background: var(--table-border-color)\">\n            </colgroup>\n            <thead style=\"font-size: 110%; border-style: solid; border-bottom: 1px var(--button-primary-border-color) solid\">\n            <tr>\n                <th></th>\n                <th></th>\n                <th>Extension</th>\n                <th>Description</th>\n                <th>Type</th>\n                <th>Current version</th>\n                <th></th>\n            </tr>\n            </thead>\n        <tbody>\"\"\"\n    if len(extensions_list) == 0:\n        list_extensions()\n    for ext in extensions_list:\n        installed = get_installed(ext)\n        ext['installed'] = installed is not None\n        ext['commit_date'] = installed.commit_date if installed is not None else 1577836800\n        ext['is_builtin'] = installed.is_builtin if installed is not None else False\n        ext['version'] = installed.version if installed is not None else ''\n        ext['enabled'] = installed.enabled if installed is not None else ''\n        ext['remote'] = installed.remote if installed is not None else None\n        ext['path'] = installed.path if installed is not None else ''\n        ext['sort_default'] = f\"{'1' if ext['is_builtin'] else '0'}{'1' if ext['installed'] else '0'}{ext.get('updated', '2000-01-01T00:00Z')}\"\n    sort_reverse, sort_function = sort_ordering[sort_column]\n\n    def dt(x: str):\n        val = ext.get(x, None)\n        try:\n            return extensions.format_dt(extensions.parse_isotime(val)) if val is not None else \"N/A\"\n        except Exception:\n            return 'N/A'\n\n    stats = { 'processed': 0, 'enabled': 0, 'hidden': 0, 'installed': 0 }\n    for ext in sorted(extensions_list, key=sort_function, reverse=sort_reverse):\n        installed = get_installed(ext)\n        author = ''\n        updated = datetime.now(timezone.utc) # TZ-aware\n        try:\n            if 'github' in ext['url']:\n                author = 'Author: ' + ext['url'].split('/')[-2].split(':')[-1] if '/' in ext['url'] else ext['url'].split(':')[1].split('/')[0]\n                updated = extensions.parse_isotime(ext.get('updated', '2000-01-01T00:00:00Z')) # TZ-aware\n            else:\n                debug(f'Extension not from github: name={ext[\"name\"]} url={ext[\"url\"]}')\n        except Exception as e:\n            debug(f'Extension get updated error: name={ext[\"name\"]} url={ext[\"url\"]} {e}')\n        local_ver_date = extensions.ts2utc(ext['commit_date']) # TZ-aware\n        update_available = (installed is not None) and (not ext['is_builtin']) and (ext['remote'] is not None) and (updated > local_ver_date) # TZ-aware\n        if update_available:\n            debug(f'Extension update available: name={ext[\"name\"]} updated={extensions.format_dt(updated, seconds=True)} commit={extensions.format_dt(local_ver_date, seconds=True)}') # TZ-aware\n        ext['sort_user'] = f\"{'0' if ext['is_builtin'] else '1'}{'1' if ext['installed'] else '0'}{ext.get('name', '')}\"\n        ext['sort_enabled'] = f\"{'0' if ext['enabled'] else '1'}{'1' if ext['is_builtin'] else '0'}{'1' if ext['installed'] else '0'}{ext.get('updated', '2000-01-01T00:00Z')}\"\n        ext['sort_update'] = f\"{'1' if update_available else '0'}{'1' if ext['installed'] else '0'}{ext.get('updated', '2000-01-01T00:00Z')}\"\n        delta = datetime.now(timezone.utc) - extensions.parse_isotime(ext.get('created', '2000-01-01T00:00Z')) # TZ-aware to prep for 3.11+ datetime.fromisoformat() behavior\n        ext['sort_trending'] = round(ext.get('stars', 0) / max(delta.days, 5), 1)\n        tags = ext.get(\"tags\", [])\n        if not isinstance(tags, list):\n            tags = tags.split(' ')\n        tags_string = ' '.join(tags)\n        tags = tags + [\"installed\"] if installed else tags\n        tags = [t for t in tags if t.strip() != '']\n        if len([x for x in tags if x in hide_tags]) > 0:\n            continue\n        visible = 'table-row'\n        if search_text:\n            s = search_text.strip().lower()\n            if (\n                s not in html.escape(ext.get(\"name\", \"unknown\")).lower()\n                and s not in html.escape(ext.get(\"description\", \"\")).lower()\n                and s not in html.escape(ext.get(\"url\", \"\")).lower()\n                and s not in html.escape(tags_string).lower()\n                and s not in author.lower()\n               ):\n                stats['hidden'] += 1\n                visible = 'none'\n        stats['processed'] += 1\n        version_code = ''\n        type_code = ''\n        install_code = ''\n        enabled_code = ''\n        if installed:\n            stats['installed'] += 1\n            if ext.get(\"enabled\", False):\n                stats['enabled'] += 1\n            type_code = f\"\"\"<div class=\"type\">{\"SYSTEM\" if ext['is_builtin'] else 'USER'}</div>\"\"\"\n            version_code = f\"\"\"<div class=\"version\" style=\"background: {\"--input-border-color-focus\" if update_available else \"inherit\"}\">{ext['version']}</div>\"\"\"\n            enabled_code = f\"\"\"<input class=\"gr-check-radio gr-checkbox\" style=\"display:block;margin:auto;width:fit-content;\" name=\"enable_{html.escape(ext.get(\"name\", \"unknown\"))}\" type=\"checkbox\" {'checked=\"checked\"' if ext.get(\"enabled\", False) else ''}>\"\"\"\n            masked_path = html.escape(ext.get(\"path\", \"\").replace('\\\\', '/'))\n            if not ext['is_builtin']:\n                install_code = f\"\"\"<button onclick=\"uninstall_extension(this, '{masked_path}')\" class=\"lg secondary gradio-button custom-button extension-button\">uninstall</button>\"\"\"\n            if update_available:\n                install_code += f\"\"\"<button onclick=\"update_extension(this, '{masked_path}')\" class=\"lg secondary gradio-button custom-button extension-button\">update</button>\"\"\"\n        else:\n            install_code = f\"\"\"<button onclick=\"install_extension(this, '{html.escape(ext.get('url', ''))}')\" class=\"lg secondary gradio-button custom-button extension-button\">install</button>\"\"\"\n        tags_text = \", \".join([f\"<span class='extension-tag'>{x}</span>\" for x in tags])\n        if ext.get('status', None) is None or type(ext['status']) == str: # old format\n            ext['status'] = 0\n        if ext['url'] is None or ext['url'] == '':\n            status = f\"<div style='cursor:help;width:1rem;margin:auto;' title='Local'>{ui_symbols.svg_bullet.style('#00C0FD')}</div>\"\n        elif ext['status'] > 0:\n            if ext['status'] == 1:\n                status = f\"<div style='cursor:help;width:1rem;margin:auto;' title='Verified'>{ui_symbols.svg_bullet.style('#00FD9C')}</div>\"\n            elif ext['status'] == 2:\n                status = f\"<div style='cursor:help;width:1rem;margin:auto;' title='Supported only with backend: Original'>{ui_symbols.svg_bullet.style('#FFC300')}</div>\"\n            elif ext['status'] == 3:\n                status = f\"<div style='cursor:help;width:1rem;margin:auto;' title='Supported only with backend: Diffusers'>{ui_symbols.svg_bullet.style('#FFC300')}</div>\"\n            elif ext['status'] == 4:\n                status = f\"<div style='cursor:help;width:1rem;margin:auto;' title=\\\"{html.escape(ext.get('note', 'custom value'))}\\\">{ui_symbols.svg_bullet.style('#4E22FF')}</div>\"\n            elif ext['status'] == 5:\n                status = f\"<div style='cursor:help;width:1rem;margin:auto;' title='Not supported'>{ui_symbols.svg_bullet.style('#CE0000')}</div>\"\n            elif ext['status'] == 6:\n                status = f\"<div style='cursor:help;width:1rem;margin:auto;' title='Just discovered'>{ui_symbols.svg_bullet.style('#AEAEAE')}</div>\"\n            else:\n                status = f\"<div style='cursor:help;width:1rem;margin:auto;' title='Unknown status'>{ui_symbols.svg_bullet.style('#008EBC')}</div>\"\n        else:\n            if updated < datetime.now(timezone.utc) - timedelta(6*30): # TZ-aware\n                status = f\"<div style='cursor:help;width:1rem;margin:auto;' title='Unmaintained'>{ui_symbols.svg_bullet.style('#C000CF')}</div>\"\n            else:\n                status = f\"<div style='cursor:help;width:1rem;margin:auto;' title='No info'>{ui_symbols.svg_bullet.style('#7C7C7C')}</div>\"\n\n        code += f\"\"\"\n            <tr style=\"display: {visible}\">\n                <td{' class=\"extension_status\"' if ext['installed'] else ''}>{enabled_code}</td>\n                <td>{status}</td>\n                <td><a href=\"{html.escape(ext.get('url', ''))}\" title={html.escape(ext.get('url', ''))} target=\"_blank\" class=\"name\">{make_wrappable_html(ext.get(\"name\", \"unknown\"))}</a><br>{tags_text}</td>\n                <td>{html.escape(ext.get(\"description\", \"\"))}\n                    <p class=\"info\"><span class=\"date\">Created: {html.escape(dt('created'))} | Added: {html.escape(dt('added'))} | Pushed: {html.escape(dt('pushed'))} | Updated: {html.escape(dt('updated'))}</span></p>\n                    <p class=\"info\"><span class=\"date\">{author} | Stars: {html.escape(str(ext.get('stars', 0)))} | Size: {html.escape(str(ext.get('size', 0)))} | Commits: {html.escape(str(ext.get('commits', 0)))} | Issues: {html.escape(str(ext.get('issues', 0)))} | Trending: {html.escape(str(ext['sort_trending']))}</span></p>\n                </td>\n                <td>{type_code}</td>\n                <td>{version_code}</td>\n                <td>{install_code}</td>\n            </tr>\"\"\"\n    code += \"</tbody></table></div>\"\n    shared.log.debug(f'Extension list: processed={stats[\"processed\"]} installed={stats[\"installed\"]} enabled={stats[\"enabled\"]} disabled={stats[\"installed\"] - stats[\"enabled\"]} visible={stats[\"processed\"] - stats[\"hidden\"]} hidden={stats[\"hidden\"]}')\n    return code\n\n\ndef create_ui():\n    shared.log.debug('UI initialize: tab=extensions')\n    extensions_disable_all = gr.Radio(label=\"Disable all extensions\", choices=[\"none\", \"user\", \"all\"], value=shared.opts.disable_all_extensions, elem_id=\"extensions_disable_all\", visible=False)\n    extensions_disabled_list = gr.Textbox(elem_id=\"extensions_disabled_list\", visible=False, container=False)\n    extensions_update_list = gr.Textbox(elem_id=\"extensions_update_list\", visible=False, container=False)\n    with gr.Tabs(elem_id=\"tabs_extensions\"):\n        with gr.TabItem(\"Manage extensions\", id=\"manage\"):\n            with gr.Row(elem_id=\"extensions_installed_top\"):\n                extension_to_install = gr.Textbox(elem_id=\"extension_to_install\", visible=False)\n                install_extension_button = gr.Button(elem_id=\"install_extension_button\", visible=False)\n                uninstall_extension_button = gr.Button(elem_id=\"uninstall_extension_button\", visible=False)\n                update_extension_button = gr.Button(elem_id=\"update_extension_button\", visible=False)\n                with gr.Column(scale=4):\n                    with gr.Row():\n                        search_text = gr.Textbox(label=\"Search\")\n                    with gr.Row():\n                        sort_column = gr.Dropdown(value=\"default\", label=\"Sort by\", choices=list(sort_ordering.keys()), multiselect=False)\n                with gr.Column(scale=1):\n                    refresh_extensions_button = gr.Button(value=\"Refresh extension list\", variant=\"primary\")\n                    check = gr.Button(value=\"Update all installed\", variant=\"primary\")\n                    apply = gr.Button(value=\"Apply changes\", variant=\"primary\")\n            list_extensions()\n            gr.HTML('''<span style=\"color: var(--body-text-color)\">\n                        <h2>Extension list</h2>\n                        - Refesh extension list to download latest list with status<br>\n                        - Check status of an extension by looking at status icon before installing it<br>\n                        - After any operation such as install/uninstall or enable/disable, please restart the server<br>\n                    </span>''')\n            gr.HTML('')\n            info = gr.HTML('')\n            extensions_table = gr.HTML(create_html(search_text.value, sort_column.value))\n            check.click(\n                fn=call_queue.wrap_gradio_call(check_updates, extra_outputs=[gr.update()]),\n                _js=\"extensions_check\",\n                inputs=[info, extensions_disabled_list, search_text, sort_column],\n                outputs=[extensions_table, info],\n            )\n            apply.click(\n                fn=apply_changes,\n                _js=\"extensions_apply\",\n                inputs=[extensions_disabled_list, extensions_update_list, extensions_disable_all],\n                outputs=[],\n            )\n            refresh_extensions_button.click(\n                fn=call_queue.wrap_gradio_call(refresh_extensions_list, extra_outputs=[gr.update(), gr.update()]),\n                inputs=[search_text, sort_column],\n                outputs=[extensions_table, info],\n            )\n            install_extension_button.click(\n                fn=call_queue.wrap_gradio_call(install_extension, extra_outputs=[gr.update(), gr.update(), gr.update()]),\n                inputs=[extension_to_install, search_text, sort_column],\n                outputs=[extensions_table, info],\n            )\n            uninstall_extension_button.click(\n                fn=call_queue.wrap_gradio_call(uninstall_extension, extra_outputs=[gr.update(), gr.update(), gr.update()]),\n                inputs=[extension_to_install, search_text, sort_column],\n                outputs=[extensions_table, info],\n            )\n            update_extension_button.click(\n                fn=call_queue.wrap_gradio_call(update_extension, extra_outputs=[gr.update(), gr.update(), gr.update()]),\n                inputs=[extension_to_install, search_text, sort_column],\n                outputs=[extensions_table, info],\n            )\n            search_text.change(\n                fn=call_queue.wrap_gradio_call(search_extensions, extra_outputs=[gr.update(), gr.update()]),\n                inputs=[search_text, sort_column],\n                outputs=[extensions_table, info],\n            )\n            sort_column.change(\n                fn=call_queue.wrap_gradio_call(search_extensions, extra_outputs=[gr.update(), gr.update()]),\n                inputs=[search_text, sort_column],\n                outputs=[extensions_table, info],\n            )\n        with gr.TabItem(\"Manual install\", id=\"install_from_url\"):\n            install_url = gr.Textbox(label=\"Extension GIT repository URL\")\n            install_branch = gr.Textbox(label=\"Specific branch name\", placeholder=\"Leave empty for default main branch\")\n            install_dirname = gr.Textbox(label=\"Local directory name\", placeholder=\"Leave empty for auto\")\n            install_button = gr.Button(value=\"Install\", variant=\"primary\")\n            info = gr.HTML(elem_id=\"extension_info\")\n            install_button.click(\n                fn=call_queue.wrap_gradio_call(install_extension_from_url, extra_outputs=[gr.update()]),\n                inputs=[install_dirname, install_url, install_branch, search_text, sort_column],\n                outputs=[extensions_table, info],\n            )\n"
  },
  {
    "path": "modules/ui_extra_networks.py",
    "content": "import os\nimport io\nimport random\nimport re\nimport time\nimport json\nimport html\nimport base64\nimport urllib.parse\nimport threading\nfrom typing import TYPE_CHECKING\nfrom types import SimpleNamespace\nfrom pathlib import Path\nfrom html.parser import HTMLParser\nfrom collections import OrderedDict\nimport gradio as gr\nfrom PIL import Image\nfrom starlette.responses import FileResponse, JSONResponse\nfrom modules import paths, shared, files_cache, errors, infotext, ui_symbols, ui_components, modelstats\n\n\nallowed_dirs = []\nrefresh_time = 0\nextra_pages = shared.extra_networks\ndebug = shared.log.trace if os.environ.get('SD_EN_DEBUG', None) is not None else lambda *args, **kwargs: None\ndebug('Trace: EN')\ncard_full = '''\n    <div class='card' onclick={card_click} title='{name}' data-page='{page}' data-name='{name}' data-filename='{filename}' data-short='{short}' data-tags='{tags}' data-mtime='{mtime}' data-size='{size}' data-search='{search}' data-version='{version}' style='--data-color: {color}'>\n        <div class='overlay'>\n            <div class='name {reference}'>{title}</div>\n        </div>\n        <div class='tags'></div>\n        <div class='version'>{version}</div>\n        <div class='actions'>\n            <span class='details' title=\"Get details\" onclick=\"showCardDetails(event)\">&#x1f6c8;</span>\n            <div class='additional'><ul></ul></div>\n        </div>\n        <img class='preview' src='{preview}' style='width: {width}; height: {height}; object-fit: {fit}' loading='lazy'></img>\n    </div>\n'''\ncard_list = '''\n    <div class='card card-list' onclick={card_click} title='{name}' data-page='{page}' data-name='{name}' data-filename='{filename}' data-short='{short}' data-tags='{tags}' data-mtime='{mtime}' data-version='{version}' data-size='{size}' data-search='{search}'>\n        <div style='display: flex'>\n            <span class='details' title=\"Get details\" onclick=\"showCardDetails(event)\">&#x1f6c8;</span>&nbsp;\n            <div class='name {reference}' style='flex-flow: column'>{title}&nbsp;\n                <div class='tags tags-list'></div>\n            </div>\n        </div>\n    </div>\n'''\npreview_map = None\n\n\ndef init_api():\n\n    def fetch_file(filename: str = \"\"):\n        global allowed_dirs # pylint: disable=global-statement\n        if len(allowed_dirs) == 0:\n            allowed_dirs = shared.demo.allowed_paths\n        if filename is None or len(filename) == 0:\n            return JSONResponse({ \"error\": \"no filename\" }, status_code=400)\n        if not os.path.exists(filename) or not os.path.isfile(filename):\n            return JSONResponse({ \"error\": f\"file {filename}: not found\" }, status_code=404)\n        if filename.startswith('html/') or filename.startswith('models/'):\n            return FileResponse(filename, headers={\"Accept-Ranges\": \"bytes\"})\n        if not any(Path(folder).absolute() in Path(filename).absolute().parents for folder in allowed_dirs):\n            return JSONResponse({ \"error\": f\"file {filename}: must be in one of allowed directories\" }, status_code=403)\n        if os.path.splitext(filename)[1].lower() not in (\".png\", \".jpg\", \".jpeg\", \".webp\"):\n            return JSONResponse({\"error\": f\"file {filename}: not an image file\"}, status_code=403)\n        return FileResponse(filename, headers={\"Accept-Ranges\": \"bytes\"})\n\n    def get_metadata(page: str = \"\", item: str = \"\"):\n        page_dict = next(iter([x for x in shared.extra_networks if x.name.lower() == page.lower()]), None)\n        if page_dict is None:\n            return JSONResponse({ 'metadata': 'none' })\n        metadata = page_dict.metadata.get(item, 'none')\n        if metadata is None:\n            metadata = ''\n        # shared.log.debug(f\"Networks metadata: page='{page}' item={item} len={len(metadata)}\")\n        return JSONResponse({\"metadata\": metadata})\n\n    def get_info(page: str = \"\", item: str = \"\"):\n        page_dict = next(iter([x for x in get_pages() if x.name.lower() == page.lower()]), None)\n        if page_dict is None:\n            return JSONResponse({ 'info': 'none' })\n        item_dict = next(iter([x for x in page_dict.items if x['name'].lower() == item.lower()]), None)\n        if item_dict is None:\n            return JSONResponse({ 'info': 'none' })\n        info = page_dict.find_info(item_dict.get('filename', None) or item_dict.get('name', None))\n        if info is None:\n            info = {}\n        # shared.log.debug(f\"Networks info: page='{page.name}' item={item['name']} len={len(info)}\")\n        return JSONResponse({\"info\": info})\n\n    def get_desc(page: str = \"\", item: str = \"\"):\n        page_dict = next(iter([x for x in get_pages() if x.name.lower() == page.lower()]), None)\n        if page_dict is None:\n            return JSONResponse({ 'description': 'none' })\n        item_dict = next(iter([x for x in page_dict.items if x['name'].lower() == item.lower()]), None)\n        if item_dict is None:\n            return JSONResponse({ 'description': 'none' })\n        desc = page_dict.find_description(item_dict.get('filename', None) or item_dict.get('name', None))\n        if desc is None:\n            desc = ''\n        # shared.log.debug(f\"Networks desc: page='{page.name}' item={item['name']} len={len(desc)}\")\n        return JSONResponse({\"description\": desc})\n\n    def get_network(page: str = \"\", item: str = \"\"):\n        page_dict = next(iter([x for x in get_pages() if x.name.lower() == page.lower()]), None)\n        if page_dict is None:\n            return JSONResponse({ 'page': 'none' })\n        item_dict = next(iter([x for x in page_dict.items if (x['alias'].lower() == item.lower() or x['name'].lower() == item.lower())]), None)\n        if item_dict is None:\n            return JSONResponse({ 'item': 'none' })\n        obj = json.dumps(item_dict, cls=DateTimeEncoder)\n        return JSONResponse(obj)\n\n    shared.api.add_api_route(\"/sdapi/v1/network\", get_network, methods=[\"GET\"])\n    shared.api.add_api_route(\"/sdapi/v1/network/thumb\", fetch_file, methods=[\"GET\"], auth=False)\n    shared.api.add_api_route(\"/sdapi/v1/network/metadata\", get_metadata, methods=[\"GET\"], auth=False)\n    shared.api.add_api_route(\"/sdapi/v1/network/info\", get_info, methods=[\"GET\"], auth=False)\n    shared.api.add_api_route(\"/sdapi/v1/network/desc\", get_desc, methods=[\"GET\"], auth=False)\n\n\nclass DateTimeEncoder(json.JSONEncoder):\n    def default(self, o):\n        from datetime import datetime\n        if isinstance(o, datetime):\n            return o.isoformat()\n        return super().default(o)\n\n\nclass ExtraNetworksPage:\n    def __init__(self, title):\n        self.title = title\n        self.name = title.lower()\n        self.allow_negative_prompt = False\n        self.metadata = {}\n        self.info = {}\n        self.html = ''\n        self.items = []\n        self.missing_thumbs = []\n        self.refresh_time = 0\n        self.page_time = 0\n        self.list_time = 0\n        self.info_time = 0\n        self.desc_time = 0\n        self.preview_time = 0\n        self.dirs = {}\n        self.view = shared.opts.extra_networks_view\n        self.card = card_full if shared.opts.extra_networks_view == 'gallery' else card_list\n\n    def __str__(self):\n        return f'Page(title=\"{self.title}\" name=\"{self.name}\" items={len(self.items)})'\n\n    def switch_view(self, tabname: str):\n        new_view = 'gallery' if self.view == 'list' else 'list'\n        self.view = new_view\n        self.card = card_full if new_view == 'gallery' else card_list\n        self.html = ''\n        self.create_page(tabname)\n        if shared.opts.extra_networks_view != new_view:\n            shared.opts.extra_networks_view = new_view\n            shared.opts.save()\n\n    def refresh(self):\n        pass\n\n    def patch(self, text: str, tabname: str):\n        return text.replace('~tabname', tabname).replace('txt2img', tabname)\n\n    def create_xyz_grid(self):\n        pass\n\n    def find_version(self, item, info):\n        all_versions = info.get('modelVersions', [])\n        if len(all_versions) == 0:\n            return {}\n        try:\n            if item is None:\n                return all_versions[0]\n            elif hasattr(item, 'hash') and item.hash is not None:\n                current_hash = item.hash[:8].upper()\n            elif hasattr(item, 'shorthash') and item.shorthash is not None:\n                current_hash = item.shorthash[:8].upper()\n            elif hasattr(item, 'sha256') and item.sha256 is not None:\n                current_hash = item.sha256[:8].upper()\n            else:\n                return all_versions[0]\n            for v in info.get('modelVersions', []):\n                for f in v.get('files', []):\n                    if any(h.startswith(current_hash) for h in f.get('hashes', {}).values()):\n                        return v\n        except Exception as e:\n            errors.display(e, 'Network version')\n        return all_versions[0]\n\n    def link_preview(self, filename):\n        quoted_filename = urllib.parse.quote(filename.replace('\\\\', '/'))\n        mtime = os.path.getmtime(filename) if os.path.exists(filename) else 0\n        preview = f\"{shared.opts.subpath}/sdapi/v1/network/thumb?filename={quoted_filename}&mtime={mtime}\"\n        return preview\n\n    def get_exif(self, image: Image.Image):\n        import piexif\n        import piexif.helper\n        try:\n            exifinfo = image.getexif()\n            if exifinfo is not None and len(exifinfo) > 0:\n                return piexif.dump({ \"Exif\": { piexif.ExifIFD.UserComment: piexif.helper.UserComment.dump(exifinfo, encoding=\"unicode\") } })\n        except Exception:\n            pass\n        try:\n            exifinfo = image.info.get('parameters', None)\n            if exifinfo is not None and len(exifinfo) > 0:\n                return piexif.dump({ \"Exif\": { piexif.ExifIFD.UserComment: piexif.helper.UserComment.dump(exifinfo, encoding=\"unicode\") } })\n        except Exception:\n            pass\n        return piexif.dump({ \"Exif\": { piexif.ExifIFD.UserComment: piexif.helper.UserComment.dump('', encoding=\"unicode\") } })\n\n    def create_thumb(self):\n        debug(f'EN create-thumb: {self.name}')\n        created = 0\n        for f in self.missing_thumbs:\n            if os.path.join('models', 'Reference') in f or not os.path.exists(f):\n                continue\n            fn = os.path.splitext(f)[0].replace('.preview', '')\n            fn = f'{fn}.thumb.jpg'\n            if os.path.exists(fn): # thumbnail already exists\n                continue\n            img = None\n            try:\n                img = Image.open(f)\n                img.load()\n            except Exception as e:\n                img = None\n                shared.log.warning(f'Network removing invalid: image={f} {e}')\n            try:\n                if img is None:\n                    img = None\n                    os.remove(f)\n                elif (img.width > 1024) or (img.height > 1024) or (os.path.getsize(f) > 65536):\n                    exif = self.get_exif(img)\n                    img = img.convert('RGB')\n                    img.thumbnail((512, 512), Image.Resampling.HAMMING)\n                    img.save(fn, quality=50, exif=exif)\n                    img.close()\n                    created += 1\n            except Exception as e:\n                shared.log.warning(f'Network create thumbnail={f} {e}')\n                errors.display(e, 'thumbnail')\n        if created > 0:\n            shared.log.info(f'Network thumbnails: type={self.name} created={created}')\n            self.missing_thumbs.clear()\n\n    def create_items(self, tabname):\n        if self.refresh_time is not None and self.refresh_time > refresh_time: # cached results\n            return\n        t0 = time.time()\n        try:\n            self.items = list(self.list_items())\n            self.refresh_time = time.time()\n        except Exception as e:\n            self.items = []\n            shared.log.error(f'Networks: listing items class={self.__class__.__name__} tab={tabname} {e}')\n            if os.environ.get('SD_EN_DEBUG', None):\n                errors.display(e, f'Networks: listing items: class={self.__class__.__name__} tab={tabname}')\n        for item in self.items:\n            if item is None:\n                continue\n            self.metadata[item[\"name\"]] = item.get(\"metadata\", {})\n        t1 = time.time()\n        debug(f'EN create-items: page={self.name} items={len(self.items)} time={t1-t0:.2f}')\n        self.list_time += t1-t0\n\n    def create_page(self, tabname, skip = False):\n        debug(f'EN create-page: {self.name}')\n        if self.page_time > refresh_time and len(self.html) > 0: # cached page\n            return self.patch(self.html, tabname)\n        self_name_id = self.name.replace(\" \", \"_\")\n        if skip:\n            return f\"<div id='{tabname}_{self_name_id}_subdirs' class='extra-network-subdirs'></div><div id='{tabname}_{self_name_id}_cards' class='extra-network-cards'>Network page not ready<br>Click refresh to try again</div>\"\n        subdirs = {}\n        allowed_folders = [os.path.abspath(x) for x in self.allowed_directories_for_previews() if os.path.exists(x)]\n        diffusers_base = os.path.basename(shared.opts.diffusers_dir)\n        for parentdir, dirs in {d: files_cache.walk(d, cached=True, recurse=files_cache.not_hidden) for d in allowed_folders}.items():\n            for tgt in dirs:\n                tgt = tgt.path\n                if os.path.join(paths.models_path, 'Reference') in tgt:\n                    continue\n                if shared.opts.diffusers_dir in tgt:\n                    continue\n                if 'models--' in tgt:\n                    continue\n                subdir = tgt[len(parentdir):].replace(\"\\\\\", \"/\")\n                while subdir.startswith(\"/\"):\n                    subdir = subdir[1:]\n                if not subdir:\n                    continue\n                subdirs[subdir] = 1\n        debug(f'Networks: page=\"{self.name}\" subfolders={list(subdirs)}')\n        subdirs = OrderedDict(sorted(subdirs.items()))\n        if self.name == 'model' and shared.opts.extra_network_reference_enable:\n            subdirs['Local'] = 1\n            subdirs['Reference'] = 1\n            subdirs['Distilled'] = 1\n            subdirs['Quantized'] = 1\n            subdirs['Community'] = 1\n            subdirs['Cloud'] = 1\n            subdirs[diffusers_base] = 1\n        if self.name == 'style' and shared.opts.extra_networks_styles:\n            subdirs['Local'] = 1\n            subdirs['Reference'] = 1\n        subdirs['All'] = 1\n        if 'All' in subdirs:\n            subdirs.move_to_end('All', last=False)\n        if 'Local' in subdirs:\n            subdirs.move_to_end('Local', last=True)\n        if os.path.basename(shared.opts.diffusers_dir) in subdirs:\n            subdirs.move_to_end(os.path.basename(shared.opts.diffusers_dir), last=True)\n        if 'Reference' in subdirs:\n            subdirs.move_to_end('Reference', last=True)\n        if 'Distilled' in subdirs:\n            subdirs.move_to_end('Distilled', last=True)\n        if 'Quantized' in subdirs:\n            subdirs.move_to_end('Quantized', last=True)\n        if 'Community' in subdirs:\n            subdirs.move_to_end('Community', last=True)\n        if 'Cloud' in subdirs:\n            subdirs.move_to_end('Cloud', last=True)\n        subdirs_html = ''\n        for subdir in subdirs:\n            if len(subdir) == 0:\n                continue\n            if subdir in ['All', 'Local', 'Diffusers', 'Reference', 'Distilled', 'Quantized', 'Community', 'Cloud']:\n                style = 'network-reference'\n            else:\n                style = 'network-folder'\n            subdirs_html += f'<button class=\"lg secondary gradio-button custom-button {style}\" onclick=\"extraNetworksSearchButton(event)\">{html.escape(subdir)}</button><br>'\n\n        self.html = ''\n        self.create_items(tabname)\n        versions = sorted({item.get(\"version\", \"\") for item in self.items if item.get(\"version\")})\n        for v in ['ref', 'reference', 'ready', 'download']:\n            if v in versions:\n                versions.remove(v)\n        versions_html = ''\n        for ver in versions:\n            versions_html += f'<button class=\"lg secondary gradio-button custom-button network-model\" onclick=\"extraNetworksFilterVersion(event)\">{html.escape(ver)}</button><br>'\n        self.create_xyz_grid()\n        htmls = []\n\n        if len(self.items) > 0 and self.items[0].get('mtime', None) is not None:\n            if shared.opts.extra_networks_sort == 'Default':\n                pass\n            elif shared.opts.extra_networks_sort == 'Name [A-Z]':\n                self.items.sort(key=lambda x: x[\"name\"])\n            elif shared.opts.extra_networks_sort == 'Name [Z-A]':\n                self.items.sort(key=lambda x: x[\"name\"], reverse=True)\n            elif shared.opts.extra_networks_sort == 'Date [Newest]':\n                self.items.sort(key=lambda x: x[\"mtime\"], reverse=True)\n            elif shared.opts.extra_networks_sort == 'Date [Oldest]':\n                self.items.sort(key=lambda x: x[\"mtime\"])\n            elif shared.opts.extra_networks_sort == 'Size [Largest]':\n                self.items.sort(key=lambda x: x[\"size\"], reverse=True)\n            elif shared.opts.extra_networks_sort == 'Size [Smallest]':\n                self.items.sort(key=lambda x: x[\"size\"])\n\n        for item in self.items:\n            htmls.append(self.create_html(item, tabname))\n        self.html += ''.join(htmls)\n        self.page_time = time.time()\n        self.html = f\"\"\"<div id='{tabname}_{self_name_id}_subdirs' class='extra-network-subdirs'>{subdirs_html}{versions_html}</div><div id='{tabname}_{self_name_id}_cards' class='extra-network-cards'>{self.html}</div>\"\"\"\n        shared.log.debug(f'Networks: type=\"{self.name}\" items={len(self.items)} subfolders={len(subdirs)} tab={tabname} folders={self.allowed_directories_for_previews()} list={self.list_time:.2f} thumb={self.preview_time:.2f} desc={self.desc_time:.2f} info={self.info_time:.2f} workers={shared.max_workers}')\n        if len(self.missing_thumbs) > 0:\n            threading.Thread(target=self.create_thumb).start()\n        return self.patch(self.html, tabname)\n\n    def list_items(self):\n        raise NotImplementedError\n\n    def allowed_directories_for_previews(self):\n        return []\n\n    def create_html(self, item, tabname):\n        def random_bright_color():\n            r = random.randint(100, 255)\n            g = random.randint(100, 255)\n            b = random.randint(100, 255)\n            return '#{:02x}{:02x}{:02x}'.format(r, g, b) # pylint: disable=consider-using-f-string\n\n        try:\n            onclick = f'cardClicked({item.get(\"prompt\", None)})'\n            args = {\n                # \"tabname\": tabname,\n                \"page\": self.name,\n                \"name\": html.escape(item.get('name', ''), quote=True),\n                \"title\": os.path.basename(item[\"name\"].replace('_', ' ')),\n                \"filename\": html.escape(item.get('filename', ''), quote=True),\n                \"short\": os.path.splitext(os.path.basename(item.get('filename', '')))[0],\n                \"tags\": '|'.join([item.get('tags')] if isinstance(item.get('tags', {}), str) else list(item.get('tags', {}).keys())),\n                \"preview\": html.escape(item.get('preview', None) or self.link_preview('html/missing.png')),\n                \"width\": 'var(--card-size)',\n                \"height\": 'var(--card-size)' if shared.opts.extra_networks_card_square else 'auto',\n                \"fit\": shared.opts.extra_networks_card_fit,\n                \"prompt\": item.get(\"prompt\", None),\n                \"search\": item.get(\"search_term\", \"\"),\n                \"description\": item.get(\"description\") or \"\",\n                \"card_click\": item.get(\"onclick\", '\"' + html.escape(onclick) + '\"'),\n                \"mtime\": item.get(\"mtime\", 0),\n                \"size\": item.get(\"size\", 0),\n                \"version\": item.get(\"version\", ''),\n                \"color\": random_bright_color(),\n                \"reference\": \"reference\" if 'Reference' in item.get('name', '') else \"\",\n            }\n            # alias = item.get(\"alias\", None)\n            # if alias is not None:\n            #     args['title'] += f'\\nAlias: {alias}'\n            return self.card.format(**args)\n        except Exception as e:\n            shared.log.error(f'Networks: item error: page={tabname} item={item[\"name\"]} {e}')\n            if os.environ.get('SD_EN_DEBUG', None) is not None:\n                errors.display(e, 'Networks')\n            return \"\"\n\n    def find_preview_file(self, path):\n        if path is None:\n            return 'html/missing.png'\n        if os.path.join('models', 'Reference') in path:\n            return path\n        exts = [\"jpg\", \"jpeg\", \"png\", \"webp\", \"tiff\", \"jp2\", \"jxl\"]\n        reference_path = os.path.abspath(os.path.join('models', 'Reference'))\n        files = list(files_cache.list_files(reference_path, ext_filter=exts, recursive=False))\n        if shared.opts.diffusers_dir in path:\n            path = os.path.relpath(path, shared.opts.diffusers_dir)\n            fn = os.path.join(reference_path, path.replace('models--', '').replace('\\\\', '/').split('/')[0])\n        else:\n            fn = os.path.splitext(path)[0]\n            files += list(files_cache.list_files(os.path.dirname(path), ext_filter=exts, recursive=False))\n        for file in [f'{fn}{mid}{ext}' for ext in exts for mid in ['.thumb.', '.', '.preview.']]:\n            if file in files:\n                if '.thumb.' not in file:\n                    self.missing_thumbs.append(file)\n                return file\n        return 'html/missing.png'\n\n    def find_preview(self, filename):\n        t0 = time.time()\n        preview_file = self.find_preview_file(filename)\n        self.preview_time += time.time() - t0\n        return self.link_preview(preview_file)\n\n    def update_all_previews(self, items):\n        global preview_map # pylint: disable=global-statement\n        if preview_map is None:\n            preview_file = os.path.join('data', 'previews.json')\n            preview_map = shared.readfile(preview_file, silent=True, as_type=\"dict\")\n        t0 = time.time()\n        reference_path = os.path.abspath(os.path.join('models', 'Reference'))\n        possible_paths = list(set([os.path.dirname(item['filename']) for item in items] + [reference_path]))\n        exts = [\"jpg\", \"jpeg\", \"png\", \"webp\", \"tiff\", \"jp2\", \"jxl\"]\n        all_previews = list(files_cache.list_files(*possible_paths, ext_filter=exts, recursive=False))\n        all_previews_fn = [os.path.basename(x) for x in all_previews]\n        for item in items:\n            if item.get('preview', None) is not None:\n                continue\n            base = os.path.splitext(item['filename'])[0]\n            if item.get('local_preview', None) is None:\n                item['local_preview'] = f'{base}.{shared.opts.samples_format}'\n            if shared.opts.diffusers_dir in base:\n                if 'models--' in base:\n                    match = re.search(r\"models--([^/^\\\\]+)[/\\\\]\", base)\n                    if match is None:\n                        match = re.search(r\"models--(.*)\", base)\n                    base = os.path.join(reference_path, match[1])\n                    model_path = os.path.join(shared.opts.diffusers_dir, match[0])\n                    item['local_preview'] = f'{os.path.join(model_path, match[1])}.{shared.opts.samples_format}'\n                    all_previews += list(files_cache.list_files(model_path, ext_filter=exts, recursive=False))\n                else:\n                    if os.path.isdir(base):\n                        item['local_preview'] = os.path.join(base, f'{os.path.basename(base)}.{shared.opts.samples_format}')\n            base = os.path.basename(base)\n            for file in [f'{base}{mid}{ext}' for ext in exts for mid in ['.thumb.', '.', '.preview.']]:\n                if file in all_previews_fn:\n                    file_idx = all_previews_fn.index(os.path.basename(file))\n                    if '.thumb.' not in file:\n                        self.missing_thumbs.append(all_previews[file_idx])\n                    item['preview'] = self.link_preview(all_previews[file_idx])\n                    break\n            if item.get('preview', None) is None:\n                found = preview_map.get(base, None)\n                if found is not None:\n                    item['preview'] = self.link_preview(found)\n                    debug(f'EN mapped-preview: {item[\"name\"]}={found}')\n            if item.get('preview', None) is None:\n                item['preview'] = self.link_preview('html/missing.png')\n                debug(f'EN missing-preview: {item[\"name\"]}')\n        self.preview_time += time.time() - t0\n\n    def find_description(self, path, info=None):\n        t0 = time.time()\n        class HTMLFilter(HTMLParser):\n            text = \"\"\n            def handle_data(self, data):\n                self.text += data\n            def handle_endtag(self, tag):\n                if tag == 'p':\n                    self.text += '\\n'\n\n        if path is not None:\n            fn = os.path.splitext(path)[0] + '.txt'\n            if os.path.exists(fn):\n                try:\n                    with open(fn, \"r\", encoding=\"utf-8\", errors=\"replace\") as f:\n                        txt = f.read()\n                        txt = re.sub('[<>]', '', txt)\n                        return txt\n                except OSError:\n                    pass\n            if info is None:\n                info = self.find_info(path)\n        if not isinstance(info, dict):\n            self.desc_time += time.time() - t0\n            return ''\n        desc = info.get('description', '') or ''\n        f = HTMLFilter()\n        f.feed(desc)\n        t1 = time.time()\n        self.desc_time += t1-t0\n        return f.text\n\n    def find_info(self, path):\n        data = {}\n        if shared.cmd_opts.no_metadata:\n            return data\n        if path is not None:\n            t0 = time.time()\n            fn = os.path.splitext(path)[0] + '.json'\n            if not data and os.path.exists(fn):\n                data = shared.readfile(fn, silent=True, as_type=\"dict\")\n            fn = os.path.join(path, 'model_index.json')\n            if not data and os.path.exists(fn):\n                data = shared.readfile(fn, silent=True, as_type=\"dict\")\n            t1 = time.time()\n            self.info_time += t1-t0\n        return data\n\n\ndef initialize():\n    shared.extra_networks.clear()\n\n\ndef register_page(page: ExtraNetworksPage):\n    # registers extra networks page for the UI; recommend doing it in on_before_ui() callback for extensions\n    debug(f'EN register-page: {page}')\n    if page in shared.extra_networks:\n        debug(f'EN register-page: {page} already registered')\n        return\n    shared.extra_networks.append(page)\n    # allowed_dirs.clear()\n    # for pg in shared.extra_networks:\n    for folder in page.allowed_directories_for_previews():\n        if folder not in allowed_dirs:\n            allowed_dirs.append(os.path.abspath(folder))\n\n\ndef register_pages():\n    debug('EN register-pages')\n    shared.extra_networks.clear()\n    allowed_dirs.clear()\n    from modules.ui_extra_networks_checkpoints import ExtraNetworksPageCheckpoints\n    register_page(ExtraNetworksPageCheckpoints())\n    from modules.ui_extra_networks_vae import ExtraNetworksPageVAEs\n    register_page(ExtraNetworksPageVAEs())\n    from modules.ui_extra_networks_styles import ExtraNetworksPageStyles\n    register_page(ExtraNetworksPageStyles())\n    from modules.ui_extra_networks_lora import ExtraNetworksPageLora\n    register_page(ExtraNetworksPageLora())\n    from modules.ui_extra_networks_wildcards import ExtraNetworksPageWildcards\n    register_page(ExtraNetworksPageWildcards())\n    if shared.opts.latent_history > 0:\n        from modules.ui_extra_networks_history import ExtraNetworksPageHistory\n        register_page(ExtraNetworksPageHistory())\n    if shared.opts.diffusers_enable_embed:\n        from modules.ui_extra_networks_textual_inversion import ExtraNetworksPageTextualInversion\n        register_page(ExtraNetworksPageTextualInversion())\n    from modules.video_models.models_def import models # pylint: disable=unused-import\n\n\ndef get_pages(title=None):\n    visible = shared.opts.extra_networks\n    pages: list[ExtraNetworksPage] = []\n    if 'All' in visible or visible == []: # default en sort order\n        visible = ['Model', 'Lora', 'Style', 'Wildcards', 'Embedding', 'VAE', 'History', 'Hypernetwork']\n\n    titles = [page.title for page in shared.extra_networks]\n    if title is None:\n        for page in visible:\n            try:\n                idx = titles.index(page)\n                pages.append(shared.extra_networks[idx])\n            except ValueError:\n                continue\n    else:\n        try:\n            idx = titles.index(title)\n            pages.append(shared.extra_networks[idx])\n        except ValueError:\n            pass\n    return pages\n\n\nclass ExtraNetworksUi:\n    def __init__(self):\n        self.tabname: str = None\n        self.pages: list[str] = None\n        self.visible: gr.State = None\n        self.state: gr.Textbox = None\n        self.details: gr.Group = None\n        self.details_tabs: gr.Group = None\n        self.details_text: gr.Group = None\n        self.tabs: gr.Tabs = None\n        self.gallery: gr.Gallery = None\n        self.description: gr.Textbox = None\n        self.search: gr.Textbox = None\n        self.button_details: gr.Button = None\n        self.button_refresh: gr.Button = None\n        self.button_scan: gr.Button = None\n        self.button_view: gr.Button = None\n        self.button_quicksave: gr.Button = None\n        self.button_save: gr.Button = None\n        self.button_sort: gr.Button = None\n        self.button_apply: gr.Button = None\n        self.button_close: gr.Button = None\n        self.button_model: gr.Checkbox = None\n        self.details_components: list = []\n        self.last_item: dict = None\n        self.last_page: ExtraNetworksPage = None\n        self.state: gr.State = None\n\n\ndef create_ui(container, button_parent, tabname, skip_indexing = False):\n    if 'networks' in shared.opts.ui_disabled:\n        return None\n    debug(f'EN create-ui: {tabname}')\n    ui = ExtraNetworksUi()\n    ui.tabname = tabname\n    ui.pages = []\n    ui.state = gr.Textbox('{}', elem_id=f\"{tabname}_extra_state\", visible=False)\n    ui.visible = gr.State(value=False) # pylint: disable=abstract-class-instantiated\n    ui.details = gr.Group(elem_id=f\"{tabname}_extra_details\", elem_classes=[\"extra-details\"], visible=False)\n    ui.tabs = gr.Tabs(elem_id=f\"{tabname}_extra_tabs\")\n    ui.button_details = gr.Button('Details', elem_id=f\"{tabname}_extra_details_btn\", visible=False)\n    state = {}\n\n    def get_item(state, params = None):\n        if params is not None and type(params) == dict:\n            page = next(iter([x for x in get_pages() if x.title == 'Style']), None)\n            item = page.create_style(params)\n        else:\n            if state is None or not hasattr(state, 'page') or not hasattr(state, 'item'):\n                return None, None\n            page = next(iter([x for x in get_pages() if x.title == state.page]), None)\n            if page is None:\n                return None, None\n            item = next(iter([x for x in page.items if x[\"name\"] == state.item]), None)\n            if item is None:\n                return page, None\n        item = SimpleNamespace(**item)\n        ui.last_item = item\n        ui.last_page = page\n        return page, item\n\n    # main event that is triggered when js updates state text field with json values, used to communicate js -> python\n    def state_change(state_text):\n        try:\n            nonlocal state\n            state = SimpleNamespace(**json.loads(state_text))\n        except Exception as e:\n            shared.log.error(f'Networks: state error: {e}')\n            return\n        _page, _item = get_item(state)\n        # shared.log.debug(f'Extra network: op={state.op} page={page.title if page is not None else None} item={item.filename if item is not None else None}')\n\n    def toggle_visibility(is_visible):\n        is_visible = not is_visible\n        return is_visible, gr.update(visible=is_visible), gr.update(variant=(\"secondary-down\" if is_visible else \"secondary\"))\n\n    with ui.details:\n        details_close = ui_components.ToolButton(ui_symbols.close, elem_id=f\"{tabname}_extra_details_close\", elem_classes=['extra-details-close'])\n        details_close.click(fn=lambda: gr.update(visible=False), inputs=[], outputs=[ui.details])\n        with gr.Row():\n            with gr.Column(scale=1):\n                text = gr.HTML('<div>title</div>')\n                ui.details_components.append(text)\n            with gr.Column(scale=1):\n                img = gr.Image(value=None, show_label=False, interactive=False, container=False, show_download_button=False, elem_id=f\"{tabname}_extra_details_img\", elem_classes=['extra-details-img'])\n                ui.details_components.append(img)\n                with gr.Row():\n                    btn_save_img = gr.Button('Replace', elem_classes=['small-button'])\n                    btn_delete_img = gr.Button('Delete', elem_classes=['small-button'])\n        with gr.Group(elem_id=f\"{tabname}_extra_details_tabs\", visible=False) as ui.details_tabs:\n            with gr.Tabs():\n                with gr.Tab('Description', elem_classes=['extra-details-tabs']):\n                    desc = gr.Textbox('', show_label=False, lines=8, placeholder=\"Network description...\")\n                    ui.details_components.append(desc)\n                    with gr.Row():\n                        btn_save_desc = gr.Button('Save', elem_classes=['small-button'], elem_id=f'{tabname}_extra_details_save_desc')\n                        btn_delete_desc = gr.Button('Delete', elem_classes=['small-button'], elem_id=f'{tabname}_extra_details_delete_desc')\n                        btn_close_desc = gr.Button('Close', elem_classes=['small-button'], elem_id=f'{tabname}_extra_details_close_desc')\n                        btn_close_desc.click(fn=lambda: gr.update(visible=False), _js='refeshDetailsEN', inputs=[], outputs=[ui.details])\n                with gr.Tab('Model metadata', elem_classes=['extra-details-tabs']):\n                    info = gr.JSON({}, show_label=False)\n                    ui.details_components.append(info)\n                    with gr.Row():\n                        btn_save_info = gr.Button('Save', elem_classes=['small-button'], elem_id=f'{tabname}_extra_details_save_info')\n                        btn_delete_info = gr.Button('Delete', elem_classes=['small-button'], elem_id=f'{tabname}_extra_details_delete_info')\n                        btn_close_info = gr.Button('Close', elem_classes=['small-button'], elem_id=f'{tabname}_extra_details_close_info')\n                        btn_close_info.click(fn=lambda: gr.update(visible=False), _js='refeshDetailsEN', inputs=[], outputs=[ui.details])\n                with gr.Tab('Embedded metadata', elem_classes=['extra-details-tabs']):\n                    meta = gr.JSON({}, show_label=False)\n                    ui.details_components.append(meta)\n                with gr.Tab('Preview metadata', elem_classes=['extra-details-tabs']):\n                    thumb = gr.JSON({}, show_label=False)\n                    ui.details_components.append(thumb)\n        with gr.Group(elem_id=f\"{tabname}_extra_details_text\", elem_classes=[\"extra-details-text\"], visible=False) as ui.details_text:\n            description = gr.Textbox(label='Description', lines=1, placeholder=\"Style description...\")\n            prompt = gr.Textbox(label='Network prompt', lines=2, placeholder=\"Prompt...\")\n            negative = gr.Textbox(label='Network negative prompt', lines=2, placeholder=\"Negative prompt...\")\n            extra = gr.Textbox(label='Network parameters', lines=2, placeholder=\"Generation parameters overrides...\")\n            wildcards = gr.Textbox(label='Wildcards', lines=2, placeholder=\"Wildcard prompt replacements...\")\n            ui.details_components += [description, prompt, negative, extra, wildcards]\n            with gr.Row():\n                btn_save_style = gr.Button('Save', elem_classes=['small-button'], elem_id=f'{tabname}_extra_details_save_style')\n                btn_delete_style = gr.Button('Delete', elem_classes=['small-button'], elem_id=f'{tabname}_extra_details_delete_style')\n                btn_close_style = gr.Button('Close', elem_classes=['small-button'], elem_id=f'{tabname}_extra_details_close_style')\n                btn_close_style.click(fn=lambda: gr.update(visible=False), _js='refeshDetailsEN', inputs=[], outputs=[ui.details])\n\n    with ui.tabs:\n        def ui_tab_change(page):\n            scan_visible = page in ['Model', 'Lora', 'VAE', 'Hypernetwork', 'Embedding']\n            save_visible = page in ['Style']\n            model_visible = page in ['Model']\n            return [gr.update(visible=scan_visible), gr.update(visible=save_visible), gr.update(visible=model_visible)]\n\n        ui.button_refresh = ui_components.ToolButton(ui_symbols.refresh, elem_id=f\"{tabname}_extra_refresh\")\n        ui.button_scan = ui_components.ToolButton(ui_symbols.scan, elem_id=f\"{tabname}_extra_scan\", visible=True)\n        ui.button_quicksave = ui_components.ToolButton(ui_symbols.book, elem_id=f\"{tabname}_extra_quicksave\", visible=False)\n        ui.button_save = ui_components.ToolButton(ui_symbols.book, elem_id=f\"{tabname}_extra_save\", visible=False)\n        ui.button_sort = ui_components.ToolButton(ui_symbols.sort, elem_id=f\"{tabname}_extra_sort\", visible=True)\n        ui.button_view = ui_components.ToolButton(ui_symbols.view, elem_id=f\"{tabname}_extra_view\", visible=True)\n        ui.button_close = ui_components.ToolButton(ui_symbols.close, elem_id=f\"{tabname}_extra_close\", visible=True)\n        ui.button_model = ui_components.ToolButton(ui_symbols.refine, elem_id=f\"{tabname}_extra_model\", visible=True)\n        ui.search = gr.Textbox('', show_label=False, elem_id=f\"{tabname}_extra_search\", placeholder=\"Search...\", elem_classes=\"textbox\", lines=2, container=False)\n        ui.description = gr.Textbox('', show_label=False, elem_id=f\"{tabname}_description\", elem_classes=[\"textbox\", \"extra-description\"], lines=2, interactive=False, container=False)\n\n        if ui.tabname == 'txt2img': # refresh only once\n            global refresh_time # pylint: disable=global-statement\n            refresh_time = time.time()\n        if not skip_indexing:\n            import concurrent\n            with concurrent.futures.ThreadPoolExecutor(max_workers=shared.max_workers) as executor:\n                for page in get_pages():\n                    executor.submit(page.create_items, ui.tabname)\n        for page in get_pages():\n            page.create_page(ui.tabname, skip_indexing)\n            with gr.Tab(page.title, id=page.title.lower().replace(\" \", \"_\"), elem_classes=\"extra-networks-tab\") as tab:\n                page_html = gr.HTML(page.patch(page.html, tabname), elem_id=f'{tabname}{page.name}_extra_page', elem_classes=\"extra-networks-page\")\n                ui.pages.append(page_html)\n                tab.select(ui_tab_change, _js=\"getENActivePage\", inputs=[ui.button_details], outputs=[ui.button_scan, ui.button_save, ui.button_model])\n\n    def fn_save_img(image):\n        if ui.last_item is None or ui.last_item.local_preview is None:\n            return 'html/missing.png'\n        images = []\n        if ui.gallery is not None:\n            images = list(ui.gallery.temp_files) # gallery cannot be used as input component so looking at most recently registered temp files\n        if len(images) < 1:\n            shared.log.warning(f'Network no image: item=\"{ui.last_item.name}\"')\n            return 'html/missing.png'\n        try:\n            images.sort(key=lambda f: os.path.getmtime(f), reverse=True)\n            image = Image.open(images[0])\n        except Exception as e:\n            shared.log.error(f'Network error opening image: item=\"{ui.last_item.name}\" {e}')\n            return 'html/missing.png'\n        fn_delete_img(image)\n        if image.width > 512 or image.height > 512:\n            image = image.convert('RGB')\n            image.thumbnail((512, 512), Image.Resampling.HAMMING)\n        try:\n            image.save(ui.last_item.local_preview, quality=50)\n            shared.log.debug(f'Networks save image: item=\"{ui.last_item.name}\" filename=\"{ui.last_item.local_preview}\"')\n        except Exception as e:\n            shared.log.error(f'Network save image: item=\"{ui.last_item.name}\" filename=\"{ui.last_item.local_preview}\" {e}')\n        return image\n\n    def fn_delete_img(_image):\n        preview_extensions = [\"jpg\", \"jpeg\", \"png\", \"webp\", \"tiff\", \"jp2\", \"jxl\"]\n        fn = os.path.splitext(ui.last_item.filename)[0]\n        for file in [f'{fn}{mid}{ext}' for ext in preview_extensions for mid in ['.thumb.', '.preview.', '.']]:\n            if os.path.exists(file):\n                os.remove(file)\n                shared.log.debug(f'Network delete image: item=\"{ui.last_item.name}\" filename=\"{file}\"')\n        return 'html/missing.png'\n\n    def fn_save_desc(desc):\n        if hasattr(ui.last_item, 'type') and ui.last_item.type == 'Style':\n            params = ui.last_page.parse_desc(desc)\n            if params is not None:\n                fn_save_info(params)\n        else:\n            fn = os.path.splitext(ui.last_item.filename)[0] + '.txt'\n            with open(fn, 'w', encoding='utf-8') as f:\n                f.write(desc)\n            shared.log.debug(f'Network save desc: item=\"{ui.last_item.name}\" filename=\"{fn}\"')\n        return desc\n\n    def fn_delete_network(desc):\n        if ui.last_item is None:\n            return desc\n        basename = os.path.splitext(ui.last_item.filename)[0]\n        extensions = ['.safetensors', '.ckpt', '.txt', '.json', '.thumb.jpg', '.jpg', '.jpeg', '.png', '.webp', '.tiff', '.jp2', '.jxl']\n        candidates = []\n        for ext in extensions:\n            fn = basename + ext\n            if os.path.exists(fn) and os.path.isfile(fn):\n                candidates.append(fn)\n        msg = f'Network delete: item=\"{ui.last_item.name}\" files={candidates}'\n        shared.log.debug(msg)\n        for fn in candidates:\n            os.remove(fn)\n        return msg\n\n    def fn_save_info(info):\n        fn = os.path.splitext(ui.last_item.filename)[0] + '.json'\n        shared.writefile(info, fn, silent=True)\n        shared.log.debug(f'Network save info: item=\"{ui.last_item.name}\" filename=\"{fn}\"')\n        return info\n\n    def fn_save_style(info, description, prompt, negative, extra, wildcards):\n        if not isinstance(info, dict) or isinstance(info, list):\n            shared.log.warning(f'Network save style skip: item=\"{ui.last_item.name}\" not a dict: {type(info)}')\n            return info\n        if ui.last_item is None:\n            return info\n        fn = os.path.splitext(ui.last_item.filename)[0] + '.json'\n        if hasattr(ui.last_item, 'type') and ui.last_item.type == 'Style':\n            info.update(**{ 'description': description, 'prompt': prompt, 'negative': negative, 'extra': extra, 'wildcards': wildcards })\n            shared.writefile(info, fn, silent=True)\n            shared.log.debug(f'Network save style: item=\"{ui.last_item.name}\" filename=\"{fn}\"')\n        return info\n\n    def fn_delete_style(info):\n        if ui.last_item is None:\n            return info\n        fn = os.path.splitext(ui.last_item.filename)[0] + '.json'\n        if os.path.exists(fn):\n            shared.log.debug(f'Network delete style: item=\"{ui.last_item.name}\" filename=\"{fn}\"')\n            os.remove(fn)\n            return {}\n        return info\n\n    btn_save_img.click(fn=fn_save_img, _js='closeDetailsEN', inputs=[img], outputs=[img])\n    btn_delete_img.click(fn=fn_delete_img, _js='closeDetailsEN', inputs=[img], outputs=[img])\n    btn_save_desc.click(fn=fn_save_desc, _js='closeDetailsEN', inputs=[desc], outputs=[desc])\n    btn_delete_desc.click(fn=fn_delete_network, _js='closeDetailsEN', inputs=[desc], outputs=[desc])\n    btn_save_info.click(fn=fn_save_info, _js='closeDetailsEN', inputs=[info], outputs=[info])\n    btn_delete_info.click(fn=fn_delete_network, _js='closeDetailsEN', inputs=[info], outputs=[desc])\n    btn_save_style.click(fn=fn_save_style, _js='closeDetailsEN', inputs=[info, description, prompt, negative, extra, wildcards], outputs=[info])\n    btn_delete_style.click(fn=fn_delete_style, _js='closeDetailsEN', inputs=[info], outputs=[info])\n\n    def show_details(text, img, desc, info, meta, thumb, description, prompt, negative, parameters, wildcards, params, _dummy1=None, _dummy2=None):\n        from modules import images\n        page, item = get_item(state, params)\n        is_style = (page is not None) and (page.title == 'Style')\n        is_valid = (item is not None) and hasattr(item, 'name') and hasattr(item, 'filename')\n\n        if is_valid:\n            if TYPE_CHECKING:\n                assert item is not None # Part of the definition of \"is_valid\"\n            stat_size, stat_mtime = modelstats.stat(item.filename)\n            if hasattr(item, 'size') and item.size > 0:\n                stat_size = item.size\n            if hasattr(item, 'mtime') and item.mtime is not None:\n                stat_mtime = item.mtime\n            desc = item.description\n            fullinfo = shared.readfile(os.path.splitext(item.filename)[0] + '.json', silent=True, as_type=\"dict\")\n            if 'modelVersions' in fullinfo: # sanitize massive objects\n                fullinfo['modelVersions'] = []\n            info = fullinfo\n            if isinstance(info, list):\n                item.filename = None\n                shared.log.warning('Network: show details not supported for compound item')\n                info = None\n            if prompt is not None and len(prompt) > 0:\n                item.prompt = prompt\n            if negative is not None and len(negative) > 0:\n                item.negative = negative\n            if description is not None and len(description) > 0:\n                item.description = description\n            if wildcards is not None and len(wildcards) > 0:\n                item.wildcards = wildcards\n\n            meta = page.metadata.get(item.name, {}) or {}\n            if type(meta) is str:\n                try:\n                    meta = json.loads(meta)\n                except Exception:\n                    meta = {}\n\n            if ui.last_item.preview.startswith('data:'):\n                b64str = ui.last_item.preview.split(',',1)[1]\n                img = Image.open(io.BytesIO(base64.b64decode(b64str)))\n            elif hasattr(item, 'local_preview') and os.path.exists(item.local_preview):\n                img = item.local_preview\n            else:\n                img = page.find_preview_file(item.filename)\n\n            _geninfo, thumb = images.read_info_from_image(img)\n\n            lora = ''\n            model = ''\n            style = ''\n            note = ''\n            if item.filename is not None and not os.path.exists(item.filename):\n                note = f'<br>Target filename: {item.filename}'\n            if page.title == 'Model':\n                merge = len(list(meta.get('sd_merge_models', {})))\n                if merge > 0:\n                    model += f'<tr><td>Merge models</td><td>{merge} recipes</td></tr>'\n                if meta.get('modelspec.architecture', None) is not None:\n                    model += f'''\n                        <tr><td>Architecture</td><td>{meta.get('modelspec.architecture', 'N/A')}</td></tr>\n                        <tr><td>Title</td><td>{meta.get('modelspec.title', 'N/A')}</td></tr>\n                        <tr><td>Resolution</td><td>{meta.get('modelspec.resolution', 'N/A')}</td></tr>\n                    '''\n            if page.title == 'Lora':\n                try:\n                    tags = getattr(item, 'tags', {})\n                    tags = [f'{name}:{tags[name]}' for i, name in enumerate(tags)]\n                    tags = ' '.join(tags)\n                except Exception:\n                    tags = ''\n                try:\n                    triggers = ' '.join(info.get('tags', []))\n                except Exception:\n                    triggers = ''\n                lora = f'''\n                    <tr><td>Model tags</td><td>{tags}</td></tr>\n                    <tr><td>User tags</td><td>{triggers}</td></tr>\n                    <tr><td>Base model</td><td>{meta.get('ss_sd_model_name', 'N/A')}</td></tr>\n                    <tr><td>Resolution</td><td>{meta.get('ss_resolution', 'N/A')}</td></tr>\n                    <tr><td>Training images</td><td>{meta.get('ss_num_train_images', 'N/A')}</td></tr>\n                    <tr><td>Comment</td><td>{meta.get('ss_training_comment', 'N/A')}</td></tr>\n                '''\n            if page.title == 'Style':\n                description = item.description\n                prompt = item.prompt\n                negative = item.negative\n                parameters = item.extra\n                wildcards = item.wildcards\n                style = f'''\n                    <tr><td>Name</td><td>{item.name}</td></tr>\n                    <tr><td>Description</td><td>{item.description}</td></tr>\n                    <tr><td>Preview Embedded</td><td>{item.preview.startswith('data:')}</td></tr>\n                '''\n            if item.name.startswith('Diffusers'):\n                url = item.name.replace('Diffusers/', '')\n                url = f'<a href=\"https://huggingface.co/{url}\" target=\"_blank\">https://huggingface.co/models/{url}</a>' if url is not None else 'N/A'\n            else:\n                url = info.get('id', None) if info is not None else None\n                url = f'<a href=\"https://civitai.com/models/{url}\" target=\"_blank\">civitai.com/models/{url}</a>' if url is not None else 'N/A'\n            text = f'''\n                <h2 style=\"border-bottom: 1px solid var(--button-primary-border-color); margin: 0em 0px 1em 0 !important\">{item.name}</h2>\n                <table style=\"width: 100%; line-height: 1.5em;\"><tbody>\n                    <tr><td>Type</td><td>{page.title}</td></tr>\n                    <tr><td>Alias</td><td>{getattr(item, 'alias', 'N/A')}</td></tr>\n                    <tr><td>Filename</td><td>{item.filename}</td></tr>\n                    <tr><td>Hash</td><td>{getattr(item, 'hash', 'N/A')}</td></tr>\n                    <tr><td>Size</td><td>{round(stat_size/1024/1024, 2)} MB</td></tr>\n                    <tr><td>Last modified</td><td>{stat_mtime}</td></tr>\n                    <tr><td>Source URL</td><td>{url}</td></tr>\n                    <tr><td style=\"border-top: 1px solid var(--button-primary-border-color);\"></td><td></td></tr>\n                    {lora}\n                    {model}\n                    {style}\n                </tbody></table>\n                {note}\n            '''\n        return [\n            text, # gr.html\n            img, # gr.image\n            desc, # gr.textbox\n            info, # gr.json\n            meta, # gr.json\n            thumb, # gr.json\n            description, # gr.textbox\n            gr.update(value=prompt, visible=is_style), # gr.textbox\n            gr.update(value=negative, visible=is_style), # gr.textbox\n            gr.update(value=parameters, visible=is_style), # gr.textbox\n            gr.update(value=wildcards, visible=is_style), # gr.textbox\n            gr.update(visible=is_valid), # details ui visible\n            gr.update(visible=not is_style), # details ui tabs visible\n            gr.update(visible=is_style), # details ui text visible\n        ]\n\n    def ui_refresh_click(title):\n        pages = []\n        for page in get_pages():\n            if page.title != title:\n                pages.append(page.html)\n                continue\n            page.page_time = 0\n            page.refresh_time = 0\n            page.refresh()\n            page.create_page(ui.tabname)\n            shared.log.debug(f'Networks: refresh page=\"{page.title}\" items={len(page.items)} tab={ui.tabname}')\n            pages.append(page.html)\n        ui.search.update(title)\n        return pages\n\n    def ui_view_cards(title):\n        pages = []\n        for page in get_pages():\n            page.switch_view(ui.tabname)\n            shared.log.debug(f'Networks: refresh page=\"{page.title}\" items={len(page.items)} tab={ui.tabname} view={page.view}')\n            pages.append(page.html)\n        ui.search.update(title)\n        return pages\n\n    def ui_scan_click(title):\n        from modules.civitai.metadata_civitai import civit_search_metadata\n        for _generator in civit_search_metadata(title): # need to read generator output so python does not optimize function away\n            pass\n        return ui_refresh_click(title)\n\n    def ui_save_click():\n        from modules.processing_info import get_last_args\n        params, text = get_last_args()\n        if (not params) or (not text) or (len(text) == 0):\n            if os.path.exists(paths.params_path):\n                with open(paths.params_path, \"r\", encoding=\"utf8\") as file:\n                    text = file.read()\n            else:\n                text = ''\n            params = infotext.parse(text)\n        prompt = params.get('Original prompt', None) or params.get('Prompt', '')\n        negative = params.get('Original negative', None) or params.get('Negative prompt', '')\n        res = show_details(text=None, img=None, desc=None, info=None, meta=None, thumb=None, parameters=None, description=None, prompt=prompt, negative=negative, wildcards=None, params=params)\n        return res\n\n    def ui_quicksave_click(name):\n        if name is None or len(name) < 1:\n            shared.log.warning(\"Network quick save style: no name provided\")\n            return\n        from modules.processing_info import get_last_args\n        params, text = get_last_args()\n        if (not params) or (not text) or (len(text) == 0):\n            if os.path.exists(paths.params_path):\n                with open(paths.params_path, \"r\", encoding=\"utf8\") as file:\n                    text = file.read()\n            else:\n                text = ''\n            params = infotext.parse(text)\n        fn = os.path.join(shared.opts.styles_dir, os.path.splitext(name)[0] + '.json')\n        prompt = params.get('Original prompt', None) or params.get('Prompt', '')\n        negative = params.get('Original negative', None) or params.get('Negative prompt', '')\n        item = {\n            \"name\": name,\n            \"description\": '',\n            \"prompt\": prompt,\n            \"negative\": negative,\n            \"extra\": '',\n        }\n        shared.writefile(item, fn, silent=True)\n        if len(prompt) > 0:\n            shared.log.debug(f'Networks type=style quicksave style: item=\"{name}\" filename=\"{fn}\" prompt=\"{prompt}\"')\n        else:\n            shared.log.warning(f'Networks type=style quicksave model: item=\"{name}\" filename=\"{fn}\" prompt is empty')\n\n    def ui_sort_cards(sort_order):\n        if shared.opts.extra_networks_sort != sort_order:\n            shared.opts.extra_networks_sort = sort_order\n            shared.opts.save()\n        return f'Networks: sort={sort_order}'\n\n    dummy = gr.State(value=False) # pylint: disable=abstract-class-instantiated\n    button_parent.click(fn=toggle_visibility, inputs=[ui.visible], outputs=[ui.visible, container, button_parent])\n    ui.button_close.click(fn=toggle_visibility, inputs=[ui.visible], outputs=[ui.visible, container])\n    ui.button_sort.click(fn=ui_sort_cards, _js='sortExtraNetworks', inputs=[ui.search], outputs=[ui.description])\n    ui.button_view.click(fn=ui_view_cards, inputs=[ui.search], outputs=ui.pages)\n    ui.button_refresh.click(fn=ui_refresh_click, _js='getENActivePage', inputs=[ui.search], outputs=ui.pages)\n    ui.button_scan.click(fn=ui_scan_click, _js='getENActivePage', inputs=[ui.search], outputs=ui.pages)\n    ui.button_save.click(fn=ui_save_click, inputs=[], outputs=ui.details_components + [ui.details])\n    ui.button_quicksave.click(fn=ui_quicksave_click, _js=\"() => prompt('Prompt name', '')\", inputs=[ui.search], outputs=[])\n    ui.button_details.click(show_details, _js=\"getCardDetails\", inputs=ui.details_components + [dummy, dummy, dummy], outputs=ui.details_components + [ui.details, ui.details_tabs, ui.details_text])\n    ui.state.change(state_change, inputs=[ui.state], outputs=[])\n    return ui\n\n\ndef setup_ui(ui, gallery: gr.Gallery = None):\n    if ui is None:\n        return\n    ui.gallery = gallery\n"
  },
  {
    "path": "modules/ui_extra_networks_checkpoints.py",
    "content": "import os\nimport html\nimport json\nimport concurrent\nfrom datetime import datetime\nfrom modules import shared, ui_extra_networks, sd_models, modelstats, paths\nfrom modules.json_helpers import readfile\n\n\nversion_map = {\n    \"QwenEdit\": \"Qwen\",\n    \"QwenEditPlus\": \"Qwen\",\n    \"Flux.1 D\": \"Flux\",\n    \"Flux.1 S\": \"Flux\",\n    \"FluxKontext\": \"Flux\",\n    \"SDXL 1.0\": \"SD XL\",\n    \"SDXL Hyper\": \"SD XL\",\n    \"StableDiffusion3\": \"SD 3\",\n    \"StableDiffusionXL\": \"SD XL\",\n    \"WanToVideo\": \"Wan\",\n    \"WanVACE\": \"Wan\",\n    \"Z\": \"Z-Image\",\n    \"Glm\": \"GLM-Image\",\n}\n\nclass ExtraNetworksPageCheckpoints(ui_extra_networks.ExtraNetworksPage):\n    def __init__(self):\n        super().__init__('Model')\n\n    def refresh(self):\n        shared.refresh_checkpoints()\n\n    def list_reference(self): # pylint: disable=inconsistent-return-statements\n        existing = [model.filename if model.type == 'safetensors' else model.name for model in sd_models.checkpoints_list.values()]\n\n        def reference_downloaded(url):\n            url = url.split('@')[0] if '@' in url else 'Diffusers/' + url\n            url = url.split('+')[0] if '+' in url else url\n            return any(model.endswith(url) for model in existing)\n\n        if not shared.opts.sd_checkpoint_autodownload or not shared.opts.extra_network_reference_enable:\n            shared.log.debug(f'Networks: type=\"reference\" autodownload={shared.opts.sd_checkpoint_autodownload} enable={shared.opts.extra_network_reference_enable}')\n            return []\n        count = { 'total': 0, 'ready': 0, 'hidden': 0, 'experimental': 0, 'base': 0 }\n\n        reference_base = readfile(os.path.join('data', 'reference.json'), as_type=\"dict\")\n        reference_quant = readfile(os.path.join('data', 'reference-quant.json'), as_type=\"dict\")\n        reference_distilled = readfile(os.path.join('data', 'reference-distilled.json'), as_type=\"dict\")\n        reference_community = readfile(os.path.join('data', 'reference-community.json'), as_type=\"dict\")\n        reference_cloud = readfile(os.path.join('data', 'reference-cloud.json'), as_type=\"dict\")\n        shared.reference_models = {}\n        shared.reference_models.update(reference_base)\n        shared.reference_models.update(reference_quant)\n        shared.reference_models.update(reference_community)\n        shared.reference_models.update(reference_distilled)\n        shared.reference_models.update(reference_cloud)\n\n        for k, v in shared.reference_models.items():\n            count['total'] += 1\n            url = v['path']\n            experimental = v.get('experimental', False)\n            if experimental:\n                if shared.cmd_opts.experimental:\n                    shared.log.debug(f'Networks: experimental model=\"{k}\"')\n                    count['experimental'] += 1\n                else:\n                    continue\n            preview = v.get('preview', v['path'])\n            preview_file = self.find_preview_file(os.path.join(paths.reference_path, preview))\n            name = os.path.normpath(os.path.join(paths.reference_path, k)).replace('\\\\', '/')\n            size = int(float(v.get('size', 0)) * 1024 * 1024 * 1024)\n            mtime = v.get('date', None)\n            if mtime is None:\n                _size, mtime = modelstats.stat(preview_file)\n            else:\n                try:\n                    mtime = datetime.strptime(mtime, '%Y %B') # 2025 January\n                except Exception:\n                    _size, mtime = modelstats.stat(preview_file)\n            if len(v.get(\"subfolder\", \"\")) > 0:\n                path = f'{v.get(\"path\", \"\")}+{v.get(\"subfolder\", \"\")}'\n            else:\n                path = f'{v.get(\"path\", \"\")}'\n\n            tag = v.get('tags', '')\n            if tag in count:\n                count[tag] += 1\n            elif tag != '':\n                count[tag] = 1\n            else:\n                count['base'] += 1\n\n            ready = reference_downloaded(url)\n            version = \"ready\" if ready else \"download\"\n            if tag == 'cloud':\n                version = 'Cloud'\n            if not ready and shared.opts.offline_mode:\n                count['hidden'] += 1\n                continue\n            if ready:\n                count['ready'] += 1\n\n            yield {\n                \"type\": 'Model',\n                \"name\": name,\n                \"title\": name,\n                \"filename\": url,\n                \"preview\": self.find_preview(os.path.join(paths.reference_path, preview)),\n                \"local_preview\": preview_file,\n                \"onclick\": '\"' + html.escape(f\"selectReference({json.dumps(path)})\") + '\"',\n                \"hash\": None,\n                \"mtime\": mtime,\n                \"size\": size,\n                \"info\": {},\n                \"metadata\": {},\n                \"description\": v.get('desc', ''),\n                \"version\": version,\n                \"tags\": tag,\n            }\n        shared.log.debug(f'Networks: type=\"reference\" {count}')\n\n    def create_item(self, name):\n        record = None\n        try:\n            checkpoint: sd_models.CheckpointInfo = sd_models.checkpoints_list.get(name)\n            size, mtime = modelstats.stat(checkpoint.filename)\n            record = {\n                \"type\": 'Model',\n                \"name\": checkpoint.name,\n                \"title\": checkpoint.title,\n                \"filename\": checkpoint.filename,\n                \"hash\": checkpoint.shorthash,\n                \"metadata\": checkpoint.metadata,\n                \"onclick\": '\"' + html.escape(f\"selectCheckpoint({json.dumps(name)})\") + '\"',\n                \"mtime\": mtime,\n                \"size\": size,\n            }\n            record['info'] = self.find_info(checkpoint.filename)\n            record['description'] = self.find_description(checkpoint.filename, record['info'])\n            version = self.find_version(checkpoint, record['info'])\n            if 'baseModel' in version:\n                record['version'] = version.get(\"baseModel\", \"\")\n            elif '_class_name' in record['info']:\n                record['version'] = record['info'].get('_class_name', '').replace('Pipeline', '').replace('Image', '')\n            else:\n                record['version'] = ''\n            record['version'] = version_map.get(record['version'], record['version'])\n\n        except Exception as e:\n            shared.log.debug(f'Networks error: type=model file=\"{name}\" {e}')\n        return record\n\n    def list_items(self):\n        items = []\n        with concurrent.futures.ThreadPoolExecutor(max_workers=shared.max_workers) as executor:\n            future_items = {executor.submit(self.create_item, cp): cp for cp in list(sd_models.checkpoints_list.copy())}\n            for future in concurrent.futures.as_completed(future_items):\n                item = future.result()\n                if item is not None:\n                    items.append(item)\n        for record in self.list_reference():\n            items.append(record)\n        self.update_all_previews(items)\n        return items\n\n    def allowed_directories_for_previews(self):\n        return [v for v in [shared.opts.ckpt_dir, paths.reference_path, sd_models.model_path] if v is not None]\n"
  },
  {
    "path": "modules/ui_extra_networks_history.py",
    "content": "import time\nimport json\nimport html\nfrom modules import shared, ui_extra_networks\n\n\nclass ExtraNetworksPageHistory(ui_extra_networks.ExtraNetworksPage):\n    def __init__(self):\n        # shared.log.trace('History init')\n        super().__init__('History')\n        self.last_refresh = 0\n\n    def refresh(self):\n        # shared.log.trace('History refresh')\n        self.last_refresh = time.time()\n        self.html = '<h1>buttons</h1>'\n        for ts in shared.history.list:\n            self.html += '<p>' + str(ts) + '</p>'\n\n    def list_items(self):\n        # shared.log.trace('History list')\n        for item in shared.history.latents:\n            title = ', '.join(list(set(item.ops))) + '<br>' + item.name\n            yield {\n                \"type\": 'History',\n                \"name\": title,\n                \"preview\": item.preview,\n                \"mtime\": item.ts,\n                \"size\": item.size,\n                # \"info\": item.info,\n                # \"description\": item.info,\n                \"onclick\": '\"' + html.escape(f\"\"\"return selectHistory({json.dumps(item.name)})\"\"\") + '\"',\n            }\n\n    def find_description(self, path, info=None):\n        name = path.split('<br>')[-1]\n        items = [l for l in shared.history.latents if l.name == name]\n        if len(items) > 0:\n            return items[0].info\n        return ''\n"
  },
  {
    "path": "modules/ui_extra_networks_lora.py",
    "content": "import os\nimport json\nimport concurrent\nfrom modules import shared, ui_extra_networks, modelstats\nfrom modules.lora import lora_load\n\n\ndebug = os.environ.get('SD_LORA_DEBUG', None) is not None\n\n\nclass ExtraNetworksPageLora(ui_extra_networks.ExtraNetworksPage):\n    def __init__(self):\n        super().__init__('Lora')\n        self.list_time = 0\n\n    def refresh(self):\n        lora_load.list_available_networks()\n\n    @staticmethod\n    def get_tags(l, info, version):\n        tags = {}\n        try:\n            if l.metadata is not None:\n                modelspec_tags = l.metadata.get('modelspec.tags', {})\n                possible_tags = l.metadata.get('ss_tag_frequency', {}) # tags from model metedata\n                if isinstance(possible_tags, str):\n                    possible_tags = {}\n                if isinstance(modelspec_tags, str):\n                    modelspec_tags = {}\n                if len(list(modelspec_tags)) > 0:\n                    possible_tags.update(modelspec_tags)\n                for k, v in possible_tags.items():\n                    words = k.split('_', 1) if '_' in k else [v, k]\n                    words = [str(w).replace('.json', '') for w in words]\n                    if words[0] == '{}':\n                        words[0] = 0\n                    tag = ' '.join(words[1:]).lower()\n                    tags[tag] = words[0]\n\n            possible_tags = version.get('trainedWords', [])\n            if isinstance(possible_tags, list):\n                for tag_str in possible_tags:\n                    for tag in tag_str.split(','):\n                        tag = tag.strip().lower()\n                        if tag not in tags:\n                            tags[tag] = 0\n\n            possible_tags = info.get('tags', []) # tags from info json\n            if not isinstance(possible_tags, list):\n                possible_tags = list(possible_tags.values())\n            for tag in possible_tags:\n                tag = tag.strip().lower()\n                if tag not in tags:\n                    tags[tag] = 0\n        except Exception:\n            pass\n        bad_chars = [';', ':', '<', \">\", \"*\", '?', '\\'', '\\\"', '(', ')', '[', ']', '{', '}', '\\\\', '/']\n        clean_tags = {}\n        for k, v in tags.items():\n            tag = ''.join(i for i in k if i not in bad_chars).strip()\n            clean_tags[tag] = v\n\n        clean_tags.pop('img', None)\n        clean_tags.pop('dataset', None)\n        return clean_tags\n\n    def cleanup_version(self, dct, lora):\n        ver = dct.get(\"baseModel\", lora.sd_version)\n        ver = ver.replace(' 0.9', '').replace(' 1.0', '').replace(' ', '')\n        return ver\n\n    def create_item(self, name):\n        l = lora_load.available_networks.get(name)\n        if l is None:\n            shared.log.warning(f'Networks: type=lora registered={len(list(lora_load.available_networks))} file=\"{name}\" not registered')\n            return None\n        try:\n            # path, _ext = os.path.splitext(l.filename)\n            name = os.path.splitext(os.path.relpath(l.filename, shared.cmd_opts.lora_dir))[0]\n            size, mtime = modelstats.stat(l.filename)\n            info = self.find_info(l.filename)\n            ver_dct = self.find_version(l, info)\n            item = {\n                \"type\": 'Lora',\n                \"name\": name,\n                \"alias\": os.path.splitext(os.path.basename(l.filename))[0],\n                \"filename\": l.filename,\n                \"hash\": l.shorthash,\n                \"prompt\": json.dumps(f\" <lora:{l.get_alias()}:{shared.opts.extra_networks_default_multiplier}>\"),\n                \"metadata\": json.dumps(l.metadata, indent=4) if l.metadata else None,\n                \"mtime\": mtime,\n                \"size\": size,\n                \"version\": self.cleanup_version(ver_dct, l),\n                \"info\": info,\n                \"description\": self.find_description(l.filename, info),\n                \"tags\": self.get_tags(l, info, ver_dct),\n            }\n            return item\n        except Exception as e:\n            shared.log.error(f'Networks: type=lora file=\"{name}\" {e}')\n            if debug:\n                from modules import errors\n                errors.display(e, 'Lora')\n            return None\n\n    def list_items(self):\n        items = []\n        with concurrent.futures.ThreadPoolExecutor(max_workers=shared.max_workers) as executor:\n            future_items = {executor.submit(self.create_item, net): net for net in lora_load.available_networks}\n            for future in concurrent.futures.as_completed(future_items):\n                item = future.result()\n                if item is not None:\n                    items.append(item)\n        self.update_all_previews(items)\n        return items\n\n    def allowed_directories_for_previews(self):\n        return [shared.cmd_opts.lora_dir]\n"
  },
  {
    "path": "modules/ui_extra_networks_styles.py",
    "content": "import os\nimport html\nimport json\nfrom datetime import datetime\nfrom modules import shared, extra_networks, ui_extra_networks, styles\n\n\nclass ExtraNetworksPageStyles(ui_extra_networks.ExtraNetworksPage):\n    def __init__(self):\n        super().__init__('Style')\n\n    def refresh(self):\n        shared.prompt_styles.reload()\n\n    def parse_desc(self, desc):\n        lines = desc.strip().split(\"\\n\")\n        params = { 'name': '', 'description': '', 'prompt': '', 'negative': '', 'extra': '', 'wildcards': ''}\n        found = ''\n        for line in lines:\n            line = line.strip()\n            if line.lower().startswith('name:'):\n                found = 'name'\n                params['name'] = line[5:].strip()\n            elif line.lower().startswith('description:'):\n                found = 'description'\n                params['description'] = line[12:].strip()\n            elif line.lower().startswith('prompt:'):\n                found = 'prompt'\n                params['prompt'] = line[7:].strip()\n            elif line.lower().startswith('negative:'):\n                found = 'negative'\n                params['negative'] = line[9:].strip()\n            elif line.lower().startswith('extra:'):\n                found = 'extra'\n                params['extra'] = line[6:].strip()\n            elif line.lower().startswith('wildcards:'):\n                found = 'wildcards'\n                params['wildcards'] = line[10:].strip()\n            elif found != '':\n                params[found] += '\\n' + line\n        if params['name'] == '':\n            return None\n        if params['description'] == '':\n            params['description'] = params['name']\n        return params\n\n    def create_style(self, params):\n        from modules.images import FilenameGenerator\n        from hashlib import sha256\n        namegen = FilenameGenerator(p=None, seed=None, prompt=params.get('Prompt', ''), image=None, grid=False)\n        name = namegen.prompt_words()\n        sha = sha256(json.dumps(name).encode()).hexdigest()[0:8]\n        fn = os.path.join(shared.opts.styles_dir, sha + '.json')\n        item = {\n            \"type\": 'Style',\n            \"name\": name,\n            \"title\": name,\n            \"filename\": fn,\n            \"preview\": self.find_preview(name),\n            \"description\": params.get('Description', ''),\n            \"prompt\": params.get('Prompt', ''),\n            \"negative\": params.get('Negative prompt', ''),\n            \"extra\": params.get('Extra', ''),\n            \"wildcards\": params.get('Wildcards', ''),\n            \"local_preview\": f\"{name}.{shared.opts.samples_format}\",\n        }\n        return item\n\n    def create_item(self, k):\n        item = None\n        try:\n            style = shared.prompt_styles.styles.get(k)\n            fn = os.path.splitext(getattr(style, 'filename', ''))[0]\n            name = getattr(style, 'name', '')\n            if name == '':\n                return item\n            txt = f'Prompt: {getattr(style, \"prompt\", \"\")}'\n            if len(getattr(style, 'negative_prompt', '')) > 0:\n                txt += f'\\nNegative: {style.negative_prompt}'\n            item = {\n                \"type\": 'Style',\n                \"name\": name,\n                \"title\": k,\n                \"alias\": os.path.splitext(os.path.basename(style.filename))[0],\n                \"filename\": style.filename,\n                \"preview\": style.preview if getattr(style, 'preview', None) is not None and style.preview.startswith('data:') else None,\n                \"description\": style.description if getattr(style, 'description', None) is not None and len(style.description) > 0 else txt,\n                \"prompt\": getattr(style, 'prompt', ''),\n                \"negative\": getattr(style, 'negative_prompt', ''),\n                \"extra\": getattr(style, 'extra', ''),\n                \"wildcards\": getattr(style, 'wildcards', ''),\n                \"local_preview\": f\"{fn}.{shared.opts.samples_format}\",\n                \"onclick\": '\"' + html.escape(f\"\"\"return selectStyle({json.dumps(name)})\"\"\") + '\"',\n                \"mtime\": getattr(style, 'mtime', datetime.fromtimestamp(0)),\n                \"size\": os.path.getsize(style.filename),\n            }\n        except Exception as e:\n            shared.log.debug(f'Networks error: type=style file=\"{k}\" {e}')\n        return item\n\n    def list_items(self):\n        items = [self.create_item(k) for k in list(shared.prompt_styles.styles)]\n        items = [item for item in items if item is not None]\n        self.update_all_previews(items)\n        return items\n\n    def allowed_directories_for_previews(self):\n        return [v for v in [shared.opts.styles_dir] if v is not None] + ['html']\n\n\nclass ExtraNetworkStyles(extra_networks.ExtraNetwork):\n    def __init__(self):\n        super().__init__('style')\n        self.indexes = {}\n\n    def activate(self, p, params_list):\n        for param in params_list:\n            if len(param.items) > 0:\n                style = None\n                search = param.items[0]\n                # style = shared.prompt_styles.find_style(param.items[0])\n                match = [s for s in shared.prompt_styles.styles.values() if s.name == search]\n                if len(match) > 0:\n                    style = match[0]\n                else:\n                    match = [s for s in shared.prompt_styles.styles.values() if s.name.startswith(search)]\n                    if len(match) > 0:\n                        i = self.indexes.get(search, 0)\n                        self.indexes[search] = (i + 1) % len(match)\n                        style = match[self.indexes[search]]\n                if style is not None:\n                    p.styles.append(style.name)\n                    p.prompts = [styles.merge_prompts(style.prompt, prompt) for prompt in p.prompts]\n                    p.negative_prompts = [styles.merge_prompts(style.negative_prompt, prompt) for prompt in p.negative_prompts]\n                    styles.apply_styles_to_extra(p, style)\n\n\n    def deactivate(self, p, force=False):\n        pass\n"
  },
  {
    "path": "modules/ui_extra_networks_textual_inversion.py",
    "content": "import json\nimport os\nfrom modules import shared, sd_models, ui_extra_networks, files_cache, modelstats\nfrom modules.textual_inversion import Embedding\n\n\nclass ExtraNetworksPageTextualInversion(ui_extra_networks.ExtraNetworksPage):\n    def __init__(self):\n        super().__init__('Embedding')\n        self.allow_negative_prompt = True\n        self.embeddings = []\n\n    def refresh(self):\n        if sd_models.model_data.sd_model is None:\n            return\n        if hasattr(sd_models.model_data.sd_model, 'embedding_db'):\n            sd_models.model_data.sd_model.embedding_db.load_textual_inversion_embeddings(force_reload=True)\n\n    def create_item(self, embedding: Embedding):\n        record = None\n        try:\n            tags = {}\n            if embedding.tag is not None:\n                tags[embedding.tag]=1\n            name = os.path.splitext(embedding.basename)[0]\n            size, mtime = modelstats.stat(embedding.filename)\n            info = self.find_info(embedding.filename)\n            record = {\n                \"type\": 'Embedding',\n                \"name\": name,\n                \"filename\": embedding.filename,\n                \"alias\": os.path.splitext(os.path.basename(embedding.filename))[0],\n                \"prompt\": json.dumps(f\" {os.path.splitext(embedding.name)[0]}\"),\n                \"tags\": tags,\n                \"mtime\": mtime,\n                \"size\": size,\n                \"info\": info,\n                \"description\": self.find_description(embedding.filename, info),\n            }\n        except Exception as e:\n            shared.log.debug(f'Networks error: type=embedding file=\"{embedding.filename}\" {e}')\n        return record\n\n    def list_items(self):\n        if sd_models.model_data.sd_model is None:\n            candidates = list(files_cache.list_files(shared.opts.embeddings_dir, ext_filter=['.pt', '.safetensors'], recursive=files_cache.not_hidden))\n            self.embeddings = [\n                Embedding(vec=0, name=os.path.basename(embedding_path), filename=embedding_path)\n                for embedding_path\n                in candidates\n            ]\n        elif hasattr(sd_models.model_data.sd_model, 'embedding_db'):\n            self.embeddings = list(sd_models.model_data.sd_model.embedding_db.word_embeddings.values())\n        else:\n            self.embeddings = []\n        self.embeddings = sorted(self.embeddings, key=lambda emb: emb.filename)\n\n        items = [self.create_item(embedding) for embedding in self.embeddings]\n        self.update_all_previews(items)\n        return items\n\n    def allowed_directories_for_previews(self):\n        return [shared.opts.embeddings_dir]\n"
  },
  {
    "path": "modules/ui_extra_networks_vae.py",
    "content": "import html\nimport json\nimport os\nfrom modules import shared, ui_extra_networks, sd_vae, hashes, modelstats\n\n\nclass ExtraNetworksPageVAEs(ui_extra_networks.ExtraNetworksPage):\n    def __init__(self):\n        super().__init__('VAE')\n\n    def refresh(self):\n        shared.refresh_vaes()\n\n    def list_items(self):\n        for name, filename in sd_vae.vae_dict.items():\n            try:\n                size, mtime = modelstats.stat(filename)\n                info = self.find_info(filename)\n                version = self.find_version(None, info)\n                record = {\n                    \"type\": 'VAE',\n                    \"name\": name,\n                    \"alias\": os.path.splitext(os.path.basename(filename))[0],\n                    \"title\": name,\n                    \"filename\": filename,\n                    \"hash\": hashes.sha256_from_cache(filename, f\"vae/{filename}\"),\n                    \"preview\": self.find_preview(filename),\n                    \"local_preview\": f\"{os.path.splitext(filename)[0]}.{shared.opts.samples_format}\",\n                    \"metadata\": {},\n                    \"onclick\": '\"' + html.escape(f\"\"\"return selectVAE({json.dumps(name)})\"\"\") + '\"',\n                    \"mtime\": mtime,\n                    \"size\": size,\n                    \"info\": info,\n                    \"description\": self.find_description(filename, info),\n                    \"version\": version.get(\"baseModel\", \"N/A\") if info else \"N/A\",\n                }\n                yield record\n            except Exception as e:\n                shared.log.debug(f'Networks error: type=vae file=\"{filename}\" {e}')\n\n    def allowed_directories_for_previews(self):\n        return [v for v in [shared.opts.vae_dir] if v is not None]\n"
  },
  {
    "path": "modules/ui_extra_networks_wildcards.py",
    "content": "import os\nimport json\nfrom modules import shared, ui_extra_networks, modelstats, files_cache\n\n\nwildcards_list = []\n\n\nclass ExtraNetworksPageWildcards(ui_extra_networks.ExtraNetworksPage):\n    def __init__(self):\n        super().__init__('Wildcards')\n\n    def parents(self, file):\n        folder = os.path.dirname(file)\n        if folder != os.path.abspath(shared.opts.wildcards_dir) and folder not in wildcards_list:\n            wildcards_list.append(folder)\n            self.parents(folder)\n\n    def refresh(self):\n        wildcards_list.clear()\n        files = files_cache.list_files(shared.opts.wildcards_dir, ext_filter=[\".txt\"], recursive=True)\n        for file in files:\n            wildcards_list.append(file)\n            self.parents(file)\n\n    def list_items(self):\n        self.refresh()\n        for filename in wildcards_list:\n            relname = os.path.relpath(filename, shared.opts.wildcards_dir)\n            name = os.path.splitext(relname)[0]\n            size, mtime = modelstats.stat(filename)\n            try:\n                record = {\n                    \"type\": 'Wildcard',\n                    \"name\": name,\n                    \"filename\": filename,\n                    \"preview\": self.find_preview(filename),\n                    \"local_preview\": f\"{os.path.splitext(filename)[0]}.{shared.opts.samples_format}\",\n                    \"prompt\": json.dumps(f\" __{name}__\"),\n                    \"mtime\": mtime,\n                    \"size\": size,\n                    \"description\": '',\n                    \"info\": {},\n                }\n                yield record\n            except Exception as e:\n                shared.log.debug(f'Networks error: type=wildcard file=\"{filename}\" {e}')\n\n    def allowed_directories_for_previews(self):\n        return [v for v in [shared.opts.wildcards_dir] if v is not None]\n"
  },
  {
    "path": "modules/ui_gallery.py",
    "content": "import os\nfrom urllib.parse import unquote\nimport gradio as gr\nfrom PIL import Image\nfrom modules import shared, ui_symbols, ui_common, images, video, modelstats\nfrom modules.ui_components import ToolButton\n\n\ndef read_media(fn):\n    fn = unquote(fn).replace('%3A', ':')\n    if not os.path.isfile(fn):\n        shared.log.error(f'Gallery not found: file=\"{fn}\"')\n        return [[], None, '', '', f'Media not found: {fn}']\n    stat_size, stat_mtime = modelstats.stat(fn)\n    # Treat common containers as video for preview; Gradio/HTML5 will handle codec support.\n    video_exts = ('.mp4', '.webm', '.mkv', '.avi', '.mov', '.mpg', '.mpeg', '.mjpeg')\n    if fn.lower().endswith(video_exts):\n        geninfo = ''\n        try:\n            frames, fps, duration, w, h, codec, _frame = video.get_video_params(fn)\n            log = f'''\n                <p>Video <b>{w} x {h}</b>\n                | Codec <b>{codec}</b>\n                | Frames <b>{frames:,}</b>\n                | FPS <b>{fps:.2f}</b>\n                | Duration <b>{duration:.2f}</b>\n                | Size <b>{stat_size:,}</b>\n                | Modified <b>{stat_mtime}</b></p><br>\n                '''\n        except Exception as e:  # keep preview even if probing fails\n            shared.log.warning(f'Video probe failed: file=\"{fn}\" {e}')\n            log = f'''\n                <p>Video\n                | Size <b>{stat_size:,}</b>\n                | Modified <b>{stat_mtime}</b></p><br>\n                '''\n        return [\n            gr.update(visible=False, value=[]),          # hide image gallery preview\n            gr.update(visible=True, value=fn),           # show video player\n            geninfo, geninfo, log\n        ]\n    else:  # image\n        image = Image.open(fn)\n        image.already_saved_as = fn\n        geninfo, _items = images.read_info_from_image(image)\n        log = f'''\n            <p>Image <b>{image.width} x {image.height}</b>\n            | Format <b>{image.format}</b>\n            | Mode <b>{image.mode}</b>\n            | Size <b>{stat_size:,}</b>\n            | Modified <b>{stat_mtime}</b></p><br>\n            '''\n        return [gr.update(visible=True, value=[image]), gr.update(visible=False), geninfo, geninfo, log]\n\n\ndef create_ui():\n    shared.log.debug('UI initialize: tab=gallery')\n    with gr.Blocks() as tab:\n        with gr.Row(elem_id='tab-gallery-sort-buttons'):\n            sort_buttons = []\n            sort_buttons.append(ToolButton(value=ui_symbols.sort_alpha_asc, elem_classes=['gallery-sort']))\n            sort_buttons.append(ToolButton(value=ui_symbols.sort_alpha_dsc, elem_classes=['gallery-sort']))\n            sort_buttons.append(ToolButton(value=ui_symbols.sort_size_asc, elem_classes=['gallery-sort']))\n            sort_buttons.append(ToolButton(value=ui_symbols.sort_size_dsc, elem_classes=['gallery-sort']))\n            sort_buttons.append(ToolButton(value=ui_symbols.sort_num_asc, elem_classes=['gallery-sort']))\n            sort_buttons.append(ToolButton(value=ui_symbols.sort_num_dsc, elem_classes=['gallery-sort']))\n            sort_buttons.append(ToolButton(value=ui_symbols.sort_time_asc, elem_classes=['gallery-sort']))\n            sort_buttons.append(ToolButton(value=ui_symbols.sort_time_dsc, elem_classes=['gallery-sort']))\n            gr.Textbox(show_label=False, placeholder='Search', elem_id='tab-gallery-search')\n            gr.HTML('', elem_id='tab-gallery-status')\n            gr.HTML('', elem_id='tab-gallery-progress')\n            for btn in sort_buttons:\n                btn.click(fn=None, _js='gallerySort', inputs=[btn], outputs=[])\n        with gr.Row():\n            with gr.Column():\n                gr.HTML('', elem_id='tab-gallery-folders')\n            with gr.Column():\n                gr.HTML('', elem_id='tab-gallery-files')\n            with gr.Column():\n                btn_gallery_image = gr.Button('', elem_id='tab-gallery-send-image', visible=False, interactive=True)\n                gallery_video = gr.Video(None, elem_id='tab-gallery-video', show_label=False, visible=False)\n                gallery_images, gen_info, html_info, _html_info_formatted, html_log = ui_common.create_output_panel(\"gallery\")\n                btn_gallery_image.click(fn=read_media, _js='gallerySendImage', inputs=[html_info], outputs=[gallery_images, gallery_video, html_info, gen_info, html_log])\n    return [(tab, 'Gallery', 'tab-gallery')]\n"
  },
  {
    "path": "modules/ui_guidance.py",
    "content": "import gradio as gr\nfrom modules import shared\nfrom modules import ui_symbols, ui_components\n\n\nguiders = ['Default', 'CFG', 'Zero', 'PAG', 'APG', 'SLG', 'SEG', 'TCFG', 'FDG']\n\n\ndef create_guidance_inputs(tab):\n    with gr.Accordion(open=False, label='Guidance', elem_id=f\"{tab}_guidance\", elem_classes=[\"small-accordion\"]):\n        with gr.Group():\n\n            with gr.Row(elem_id=f\"{tab}_guider_row\", elem_classes=['flexbox'], visible=shared.opts.model_modular_enable):\n                guidance_name = gr.Dropdown(choices=guiders, value='Default', label='Guider', elem_id=f\"{tab}_guider\")\n                guidance_btn = ui_components.ToolButton(value=ui_symbols.book, elem_id=f\"{tab}_guider_docs\")\n                guidance_btn.click(fn=None, _js='getGuidanceDocs', inputs=[guidance_name], outputs=[])\n            with gr.Row(visible=shared.opts.model_modular_enable):\n                guidance_scale = gr.Slider(minimum=1.0, maximum=30.0, step=0.1, label='_Guidance scale', value=4.0, elem_id=f\"{tab}_guidance_scale\")\n                guidance_rescale = gr.Slider(minimum=0.0, maximum=1.0, step=0.05, label='_Guidance rescale', value=0.0, elem_id=f\"{tab}_guidance_rescale\")\n            with gr.Row(visible=shared.opts.model_modular_enable):\n                guidance_start = gr.Slider(minimum=0.0, maximum=1.0, step=0.05, label='_Guidance start', value=0.0, elem_id=f\"{tab}_guidance_start\")\n                guidance_stop = gr.Slider(minimum=0.0, maximum=1.0, step=0.1, label='_Guidance stop', value=1.0, elem_id=f\"{tab}_guidance_stop\")\n            guidance_args = [guidance_name, guidance_scale, guidance_rescale, guidance_start, guidance_stop]\n\n            lsc_group = gr.Accordion(open=False, label='Layer skip guidance', elem_classes=[\"small-accordion\"], visible=shared.opts.model_modular_enable)\n            with lsc_group:\n                with gr.Row():\n                    guidance_lsc_enabled = gr.Checkbox(label='Enable LayerSkipConfig', value=False)\n                    guidance_lsc_label = gr.Label(value='LSC: LayerSkipConfig', elem_id=f\"{tab}_lsc_label\", visible=False)\n                    guidance_lsc_btn = ui_components.ToolButton(value=ui_symbols.book, elem_id=f\"{tab}_lsc_docs\", elem_classes=[\"guidance-docs\"])\n                    guidance_lsc_btn.click(fn=None, _js='getGuidanceDocs', inputs=[guidance_lsc_label], outputs=[])\n                with gr.Row():\n                    guidance_lsc_indices = gr.Textbox(label='LSC layer indices', value='1, 2, 3', placeholder='Comma-separated layer indices to skip')\n                with gr.Row():\n                    guidance_lsc_fqn = gr.Textbox(label='LSC fully qualified name', value='transformer_blocks', placeholder='Fully qualified name of the layer stack')\n                with gr.Row():\n                    guidance_lsc_skip_attention = gr.Checkbox(label='LSC skip attention blocks', value=True)\n                    guidance_lsc_skip_ff = gr.Checkbox(label='LSC skip feed-forward blocks', value=True)\n                    guidance_lsc_skip_attention_scores = gr.Checkbox(label='LSC skip attention scores', value=False)\n                with gr.Row():\n                    guidance_lsc_dropout = gr.Slider(minimum=0.0, maximum=1.0, step=0.05, label='LSC dropout rate', value=1.0)\n                lsc_args = [guidance_lsc_enabled, guidance_lsc_indices, guidance_lsc_fqn, guidance_lsc_skip_attention, guidance_lsc_skip_ff, guidance_lsc_skip_attention_scores, guidance_lsc_dropout]\n\n            auto_group = gr.Accordion(open=True, label='Advanced guidance params', elem_classes=[\"small-accordion\"], visible=False)\n            with auto_group:\n                guidance_auto_dropout = gr.Slider(minimum=0.0, maximum=1.0, step=0.05, label='AutoGuidance dropout', value=0.1)\n                guidance_auto_layers = gr.Textbox(label='AutoGuidance layers', value='7, 8, 9', placeholder='Comma-separated layer indices, e.g. 7,8,9')\n                guidance_auto_config = gr.Dropdown(choices=[None, 'config1', 'config2'], value=None, label='AutoGuidance config')\n                guidance_auto_args = [guidance_auto_dropout, guidance_auto_layers, guidance_auto_config]\n\n            zero_group = gr.Accordion(open=True, label='Advanced guidance params', elem_classes=[\"small-accordion\"], visible=False)\n            with zero_group:\n                guidance_zero_init_steps = gr.Slider(minimum=0, maximum=10, step=1, label='ZeroStar init steps', value=1)\n                guidance_zero_args = [guidance_zero_init_steps]\n\n            pag_group = gr.Accordion(open=True, label='Advanced guidance params', elem_classes=[\"small-accordion\"], visible=False)\n            with pag_group:\n                guidance_pag_scale = gr.Slider(minimum=0.0, maximum=30.0, step=0.05, label='PAG scale', value=2.8)\n                guidance_pag_start = gr.Slider(minimum=0.0, maximum=1.0, step=0.01, label='PAG start', value=0.01)\n                guidance_pag_stop = gr.Slider(minimum=0.0, maximum=1.0, step=0.01, label='PAG stop', value=0.2)\n                guidance_pag_layers = gr.Textbox(label='PAG layers', value='7, 8, 9', placeholder='Comma-separated layer indices, e.g. 7,8,9')\n                guidance_pag_config = gr.Dropdown(choices=[None, 'config1', 'config2'], value=None, label='PAG config')\n                guidance_pag_args = [guidance_pag_scale, guidance_pag_start, guidance_pag_stop, guidance_pag_layers, guidance_pag_config]\n\n            apg_group = gr.Accordion(open=True, label='Advanced guidance params', elem_classes=[\"small-accordion\"], visible=False)\n            with apg_group:\n                guidance_apg_momentum = gr.Slider(minimum=-1.0, maximum=1.0, step=0.05, label='APG momentum', value=-1.0)\n                guidance_apg_rescale = gr.Slider(minimum=0.0, maximum=30.0, step=0.1, label='APG rescale', value=15.0)\n                guidance_apg_args = [guidance_apg_momentum, guidance_apg_rescale]\n\n            slg_group = gr.Accordion(open=True, label='Advanced guidance params', elem_classes=[\"small-accordion\"], visible=False)\n            with slg_group:\n                guidance_slg_scale = gr.Slider(minimum=0.0, maximum=30.0, step=0.1, label='SLG scale', value=2.8)\n                guidance_slg_start = gr.Slider(minimum=0.0, maximum=1.0, step=0.1, label='SLG start', value=0.01)\n                guidance_slg_stop = gr.Slider(minimum=0.0, maximum=1.0, step=0.1, label='SLG stop', value=0.2)\n                guidance_slg_layers = gr.Textbox(label='SLG layers', value='7, 8, 9', placeholder='Comma-separated layer indices, e.g. 7,8,9')\n                guidance_slg_config = gr.Dropdown(choices=[None, 'config1', 'config2'], value=None, label='SLG config')\n                guidance_slg_args = [guidance_slg_scale, guidance_slg_start, guidance_slg_stop, guidance_slg_layers, guidance_slg_config]\n\n            seg_group = gr.Accordion(open=True, label='Advanced guidance params', elem_classes=[\"small-accordion\"], visible=False)\n            with seg_group:\n                guidance_seg_scale = gr.Slider(minimum=0.0, maximum=30.0, step=0.1, label='SEG scale', value=3.0)\n                guidance_seg_blur_sigma = gr.Number(label='SEG blur sigma', value=9999999.0)\n                guidance_seg_blur_threshold_inf = gr.Number(label='SEG blur threshold inf', value=9999.0)\n                guidance_seg_start = gr.Slider(minimum=0.0, maximum=1.0, step=0.1, label='SEG start', value=0.0)\n                guidance_seg_stop = gr.Slider(minimum=0.0, maximum=1.0, step=0.1, label='SEG stop', value=1.0)\n                guidance_seg_layers = gr.Textbox(label='SEG layers', value='7, 8, 9', placeholder='Comma-separated layer indices, e.g. 7,8,9')\n                guidance_seg_config = gr.Dropdown(choices=[None, 'config1', 'config2'], value=None, label='SEG config')\n                guidance_seg_args = [guidance_seg_scale, guidance_seg_blur_sigma, guidance_seg_blur_threshold_inf, guidance_seg_start, guidance_seg_stop, guidance_seg_layers, guidance_seg_config]\n\n            tcfg_group = gr.Accordion(open=True, label='Advanced guidance params', elem_classes=[\"small-accordion\"], visible=False)\n            with tcfg_group:\n                pass\n\n            fdg_group = gr.Accordion(open=True, label='Advanced guidance params', elem_classes=[\"small-accordion\"], visible=False)\n            with fdg_group:\n                guidance_fdg_scales = gr.Textbox(label='FDG scales', value='10.0, 5.0', placeholder='Comma-separated scales, e.g. 10.0,5.0')\n                guidance_fdg_weights = gr.Textbox(label='FDG weights', value='1.0', placeholder='Single float or comma-separated weights, e.g. 1.0 or 1.0,0.5')\n                guidance_fdg_rescale_space = gr.Dropdown(choices=['data', 'freq'], value='data', label='FDG rescale space')\n                guidance_fdg_args = [guidance_fdg_scales, guidance_fdg_weights, guidance_fdg_rescale_space]\n\n            def adv_visibility(guidance_name):\n                return [\n                    gr.update(visible=guidance_name.startswith('Auto')),\n                    gr.update(visible=guidance_name.startswith('Zero')),\n                    gr.update(visible=guidance_name.startswith('PAG')),\n                    gr.update(visible=guidance_name.startswith('APG')),\n                    gr.update(visible=guidance_name.startswith('SLG')),\n                    gr.update(visible=guidance_name.startswith('SEG')),\n                    gr.update(visible=guidance_name.startswith('TCFG')),\n                    gr.update(visible=guidance_name.startswith('FDG')),\n                ]\n            guidance_name.change(fn=adv_visibility, inputs=[guidance_name], outputs=[auto_group, zero_group, pag_group, apg_group, slg_group, seg_group, tcfg_group, fdg_group])\n\n            gr.HTML(value='<br><h2>Fallback guidance</h2>', visible=shared.opts.model_modular_enable, elem_id=f\"{tab}_guidance_note\")\n            with gr.Row(elem_id=f\"{tab}_cfg_row\", elem_classes=['flexbox']):\n                cfg_scale = gr.Slider(minimum=1.0, maximum=30.0, step=0.1, label='Guidance scale', value=6.0, elem_id=f\"{tab}_cfg_scale\")\n                cfg_end = gr.Slider(minimum=0.0, maximum=1.0, step=0.1, label='Guidance end', value=1.0, elem_id=f\"{tab}_cfg_end\")\n            with gr.Row():\n                diffusers_guidance_rescale = gr.Slider(minimum=0.0, maximum=1.0, step=0.05, label='Guidance rescale', value=0.0, elem_id=f\"{tab}_image_cfg_rescale\")\n                image_cfg_scale = gr.Slider(minimum=0.0, maximum=30.0, step=0.1, label='Refine guidance', value=6.0, elem_id=f\"{tab}_image_cfg_scale\")\n            with gr.Row():\n                diffusers_pag_scale = gr.Slider(minimum=0.0, maximum=30.0, step=0.05, label='Attention guidance', value=0.0, elem_id=f\"{tab}_pag_scale\")\n                diffusers_pag_adaptive = gr.Slider(minimum=0.0, maximum=1.0, step=0.05, label='Adaptive scaling', value=0.5, elem_id=f\"{tab}_pag_adaptive\")\n\n    _modular_args = guidance_args + lsc_args + guidance_auto_args + guidance_zero_args + guidance_pag_args + guidance_apg_args + guidance_slg_args + guidance_seg_args + guidance_fdg_args\n    standard_args = [cfg_scale, image_cfg_scale, diffusers_guidance_rescale, diffusers_pag_scale, diffusers_pag_adaptive, cfg_end]\n    return guidance_args + standard_args\n"
  },
  {
    "path": "modules/ui_history.py",
    "content": "import gradio as gr\n\n\ndef create_ui():\n    with gr.Row():\n        btn_refresh = gr.Button(\"Refresh\", elem_id='btn_history_refresh')\n    with gr.Row():\n        _history_table = gr.HTML('', elem_id='history_table')\n    with gr.Row():\n        _history_timeline = gr.HTML('', elem_id='history_timeline')\n    btn_refresh.click(_js='refreshHistory', fn=None, inputs=[], outputs=[], show_progress='hidden')\n"
  },
  {
    "path": "modules/ui_img2img.py",
    "content": "import gradio as gr\nfrom modules import timer, shared, call_queue, generation_parameters_copypaste, processing_vae\nfrom modules import ui_common, ui_sections, ui_guidance\n\n\ndef process_interrogate(mode, ii_input_files, ii_input_dir, ii_output_dir, *ii_singles):\n    import os\n    from PIL import Image\n    from modules.interrogate.interrogate import interrogate\n    mode = int(mode)\n    if mode in {0, 1, 3, 4}:\n        return [interrogate(ii_singles[mode]), None]\n    if mode == 2:\n        return [interrogate(ii_singles[mode][\"image\"]), None]\n    if mode == 5:\n        if len(ii_input_files) > 0:\n            images = [f.name for f in ii_input_files]\n        else:\n            if not os.path.isdir(ii_input_dir):\n                shared.log.error(f\"Interrogate: Input directory not found: {ii_input_dir}\")\n                return [gr.update(), None]\n            images = os.listdir(ii_input_dir)\n        if ii_output_dir != \"\":\n            os.makedirs(ii_output_dir, exist_ok=True)\n        else:\n            ii_output_dir = ii_input_dir\n        for image in images:\n            img = Image.open(image)\n            filename = os.path.basename(image)\n            left, _ = os.path.splitext(filename)\n            print(interrogate(img), file=open(os.path.join(ii_output_dir, f\"{left}.txt\"), 'a', encoding='utf-8')) # pylint: disable=consider-using-with\n    return [gr.update(), None]\n\n\ndef create_ui():\n    shared.log.debug('UI initialize: tab=img2img')\n    import modules.img2img # pylint: disable=redefined-outer-name\n    modules.scripts_manager.scripts_current = modules.scripts_manager.scripts_img2img\n    modules.scripts_manager.scripts_img2img.initialize_scripts(is_img2img=True, is_control=False)\n    with gr.Blocks(analytics_enabled=False) as _img2img_interface:\n        img2img_prompt, img2img_prompt_styles, img2img_negative_prompt, img2img_submit, img2img_reprocess, img2img_paste, img2img_extra_networks_button, img2img_token_counter, img2img_token_button, img2img_negative_token_counter, img2img_negative_token_button = ui_sections.create_toprow(is_img2img=True, id_part=\"img2img\")\n        img2img_prompt_img = gr.File(label=\"\", elem_id=\"img2img_prompt_image\", file_count=\"single\", type=\"binary\", visible=False)\n        img2img_prompt_img.change(fn=modules.images.image_data, inputs=[img2img_prompt_img], outputs=[img2img_prompt, img2img_prompt_img])\n\n        with gr.Row(variant='compact', elem_id=\"img2img_extra_networks\", elem_classes=[\"extra_networks_root\"], visible=False) as extra_networks_ui:\n            from modules import ui_extra_networks\n            extra_networks_ui_img2img = ui_extra_networks.create_ui(extra_networks_ui, img2img_extra_networks_button, 'img2img', skip_indexing=shared.opts.extra_network_skip_indexing)\n            timer.startup.record('ui-networks')\n\n        with gr.Row(elem_id=\"img2img_interface\", equal_height=False):\n            with gr.Column(variant='compact', elem_id=\"img2img_settings\", elem_classes=['settings-column']):\n                copy_image_buttons = []\n                copy_image_destinations = {}\n\n                def copy_image(img):\n                    return img['image'] if isinstance(img, dict) and 'image' in img else img\n\n                def add_copy_image_controls(tab_name, elem):\n                    with gr.Row(variant=\"compact\", elem_id=f\"img2img_copy_{tab_name}_row\"):\n                        for title, name in zip(['➠ Image', '➠ Inpaint', '➠ Sketch', '➠ Composite'], ['img2img', 'inpaint', 'sketch', 'composite']):\n                            if name == tab_name:\n                                gr.Button(title, elem_id=f'{tab_name}_copy_to_{name}', interactive=False)\n                                copy_image_destinations[name] = elem\n                                continue\n                            button = gr.Button(title, elem_id=f'{tab_name}_copy_to_{name}')\n                            copy_image_buttons.append((button, name, elem))\n\n                with gr.Tabs(elem_id=\"mode_img2img\"):\n                    img2img_selected_tab = gr.State(0) # pylint: disable=abstract-class-instantiated\n                    state = gr.Textbox(value='', visible=False)\n                    with gr.TabItem('Image', id='img2img_image', elem_id=\"img2img_image_tab\") as tab_img2img:\n                        img_init = gr.Image(label=\"\", elem_id=\"img2img_image\", show_label=False, interactive=True, type=\"pil\", tool=\"editor\", image_mode=\"RGBA\", height=512)\n                        interrogate_btn = ui_sections.create_interrogate_button(tab='img2img', what='input')\n                        add_copy_image_controls('img2img', img_init)\n\n                    with gr.TabItem('Inpaint', id='img2img_inpaint', elem_id=\"img2img_inpaint_tab\") as tab_inpaint:\n                        img_inpaint = gr.Image(label=\"\", elem_id=\"img2img_inpaint\", show_label=False, interactive=True, type=\"pil\", tool=\"sketch\", image_mode=\"RGBA\", height=512)\n                        add_copy_image_controls('inpaint', img_inpaint)\n\n                    with gr.TabItem('Sketch', id='img2img_sketch', elem_id=\"img2img_sketch_tab\") as tab_sketch:\n                        img_sketch = gr.Image(label=\"\", elem_id=\"img2img_sketch\", show_label=False, interactive=True, type=\"pil\", tool=\"color-sketch\", image_mode=\"RGBA\", height=512)\n                        add_copy_image_controls('sketch', img_sketch)\n\n                    with gr.TabItem('Composite', id='img2img_composite', elem_id=\"img2img_composite_tab\") as tab_inpaint_color:\n                        img_composite = gr.Image(label=\"\", show_label=False, elem_id=\"img2img_composite\", interactive=True, type=\"pil\", tool=\"color-sketch\", image_mode=\"RGBA\", height=512)\n                        img_composite_orig = gr.State(None) # pylint: disable=abstract-class-instantiated\n                        img_composite_orig_update = False\n\n                        def fn_img_composite_upload():\n                            nonlocal img_composite_orig_update\n                            img_composite_orig_update = True\n                        def fn_img_composite_change(img, img_composite):\n                            nonlocal img_composite_orig_update\n                            res = img if img_composite_orig_update else img_composite\n                            img_composite_orig_update = False\n                            return res\n\n                        img_composite.upload(fn=fn_img_composite_upload, inputs=[], outputs=[])\n                        img_composite.change(fn=fn_img_composite_change, inputs=[img_composite, img_composite_orig], outputs=[img_composite_orig])\n                        add_copy_image_controls('composite', img_composite)\n\n                    with gr.TabItem('Upload', id='inpaint_upload', elem_id=\"img2img_inpaint_upload_tab\") as tab_inpaint_upload:\n                        init_img_inpaint = gr.Image(label=\"Image for img2img\", show_label=False, interactive=True, type=\"pil\", elem_id=\"img_inpaint_base\")\n                        init_mask_inpaint = gr.Image(label=\"Mask\", interactive=True, type=\"pil\", elem_id=\"img_inpaint_mask\")\n\n                    with gr.TabItem('Batch', id='batch', elem_id=\"img2img_batch_tab\") as tab_batch:\n                        gr.HTML(\"<p style='padding-bottom: 1em;' class=\\\"text-gray-500\\\">Run image processing on upload images or files in a folder<br>If masks are provided will run inpaint</p>\")\n                        img2img_batch_files = gr.Files(label=\"Batch Process\", interactive=True, elem_id=\"img2img_image_batch\")\n                        img2img_batch_input_dir = gr.Textbox(label=\"Batch input directory\", **shared.hide_dirs, elem_id=\"img2img_batch_input_dir\")\n                        img2img_batch_output_dir = gr.Textbox(label=\"Batch output directory\", **shared.hide_dirs, elem_id=\"img2img_batch_output_dir\")\n                        img2img_batch_inpaint_mask_dir = gr.Textbox(label=\"Batch mask directory\", **shared.hide_dirs, elem_id=\"img2img_batch_inpaint_mask_dir\")\n\n                    img2img_tabs = [tab_img2img, tab_sketch, tab_inpaint, tab_inpaint_color, tab_inpaint_upload, tab_batch]\n                    for i, tab in enumerate(img2img_tabs):\n                        tab.select(fn=lambda tabnum=i: tabnum, inputs=[], outputs=[img2img_selected_tab])\n\n                for button, name, elem in copy_image_buttons:\n                    button.click(fn=copy_image, inputs=[elem], outputs=[copy_image_destinations[name]])\n                    button.click(fn=lambda: None, _js=f\"switch_to_{name.replace(' ', '_')}\", inputs=[], outputs=[])\n\n                with gr.Group(elem_classes=\"settings-accordion\"):\n\n                    with gr.Accordion(open=False, label=\"Sampler\", elem_classes=[\"small-accordion\"], elem_id=\"img2img_sampler_group\"):\n                        steps, sampler_index = ui_sections.create_sampler_and_steps_selection(None, \"img2img\")\n                        ui_sections.create_sampler_options('img2img')\n                    resize_mode, resize_name, resize_context, width, height, scale_by, selected_scale_tab = ui_sections.create_resize_inputs('img2img', [img_init, img_sketch], latent=True, non_zero=False)\n                    batch_count, batch_size = ui_sections.create_batch_inputs('img2img', accordion=True)\n                    seed, reuse_seed, subseed, reuse_subseed, subseed_strength, seed_resize_from_h, seed_resize_from_w = ui_sections.create_seed_inputs('img2img')\n\n                    with gr.Accordion(open=False, label=\"Denoise\", elem_classes=[\"small-accordion\"], elem_id=\"img2img_denoise_group\"):\n                        with gr.Row():\n                            denoising_strength = gr.Slider(minimum=0.00, maximum=0.99, step=0.01, label='Denoising strength', value=0.30, elem_id=\"img2img_denoising_strength\")\n                            refiner_start = gr.Slider(minimum=0.0, maximum=1.0, step=0.05, label='Denoise start', value=0.0, elem_id=\"img2img_refiner_start\")\n\n                    guidance_name, guidance_scale, guidance_rescale, guidance_start, guidance_stop, cfg_scale, image_cfg_scale, diffusers_guidance_rescale, pag_scale, pag_adaptive, cfg_end = ui_guidance.create_guidance_inputs('img2img')\n                    vae_type, tiling, hidiffusion, clip_skip = ui_sections.create_advanced_inputs('img2img')\n                    hdr_mode, hdr_brightness, hdr_color, hdr_sharpen, hdr_clamp, hdr_boundary, hdr_threshold, hdr_maximize, hdr_max_center, hdr_max_boundary, hdr_color_picker, hdr_tint_ratio = ui_sections.create_correction_inputs('img2img')\n                    enable_hr, hr_sampler_index, hr_denoising_strength, hr_resize_mode, hr_resize_context, hr_upscaler, hr_force, hr_second_pass_steps, hr_scale, hr_resize_x, hr_resize_y, refiner_steps, hr_refiner_start, refiner_prompt, refiner_negative = ui_sections.create_hires_inputs('img2img')\n                    detailer_enabled, detailer_prompt, detailer_negative, detailer_steps, detailer_strength, detailer_resolution = shared.yolo.ui('img2img')\n\n                    # with gr.Group(elem_id=\"inpaint_controls\", visible=False) as inpaint_controls:\n                    with gr.Accordion(open=False, label=\"Mask\", elem_classes=[\"small-accordion\"], elem_id=\"img2img_mask_group\") as inpaint_controls:\n                        with gr.Row():\n                            mask_blur = gr.Slider(label='Blur', minimum=0, maximum=64, step=1, value=4, elem_id=\"img2img_mask_blur\")\n                            inpaint_full_res_padding = gr.Slider(label='Padding', minimum=0, maximum=256, step=4, value=32, elem_id=\"img2img_inpaint_full_res_padding\")\n                            mask_alpha = gr.Slider(label=\"Alpha\", minimum=0.0, maximum=1.0, step=0.05, value=1.0, elem_id=\"img2img_mask_alpha\")\n                        with gr.Row():\n                            inpainting_mask_invert = gr.Radio(label='Inpaint Mode', choices=['masked', 'invert'], value='masked', type=\"index\", elem_id=\"img2img_mask_mode\")\n                            inpaint_full_res = gr.Radio(label=\"Inpaint area\", choices=[\"full\", \"masked\"], value=\"full\", type=\"index\", elem_id=\"img2img_inpaint_full_res\")\n\n                        def select_img2img_tab(tab):\n                            return gr.update(visible=tab in [2, 3, 4]), gr.update(visible=tab == 3)\n\n                        for i, elem in enumerate(img2img_tabs):\n                            elem.select(fn=lambda tab=i: select_img2img_tab(tab), inputs=[], outputs=[inpaint_controls, mask_alpha]) # pylint: disable=cell-var-from-loop\n\n                    override_settings = ui_common.create_override_inputs('img2img')\n\n                with gr.Group(elem_id=\"img2img_script_container\"):\n                    img2img_script_inputs = modules.scripts_manager.scripts_img2img.setup_ui(parent='img2img', accordion=True)\n\n            img2img_gallery, img2img_generation_info, img2img_html_info, _img2img_html_info_formatted, img2img_html_log = ui_common.create_output_panel(\"img2img\", prompt=img2img_prompt)\n\n            ui_common.reuse_seed(seed, reuse_seed, subseed=False)\n            ui_common.reuse_seed(subseed, reuse_subseed, subseed=True)\n\n            dummy_component1 = gr.Textbox(visible=False, value='dummy')\n            dummy_component2 = gr.Number(visible=False, value=0)\n            img2img_args = [\n                dummy_component1, state, dummy_component2,\n                img2img_prompt, img2img_negative_prompt, img2img_prompt_styles,\n                img_init, img_sketch, img_inpaint, img_composite, img_composite_orig,\n                init_img_inpaint, init_mask_inpaint,\n                steps,\n                sampler_index,\n                mask_blur, mask_alpha,\n                vae_type, tiling, hidiffusion,\n                detailer_enabled, detailer_prompt, detailer_negative, detailer_steps, detailer_strength, detailer_resolution,\n                batch_count, batch_size,\n                guidance_name, guidance_scale, guidance_rescale, guidance_start, guidance_stop,\n                cfg_scale, image_cfg_scale, diffusers_guidance_rescale, pag_scale, pag_adaptive, cfg_end,\n                refiner_start,\n                clip_skip,\n                denoising_strength,\n                seed, subseed, subseed_strength, seed_resize_from_h, seed_resize_from_w,\n                selected_scale_tab,\n                height, width,\n                scale_by,\n                resize_mode, resize_name, resize_context,\n                inpaint_full_res, inpaint_full_res_padding, inpainting_mask_invert,\n                img2img_batch_files, img2img_batch_input_dir, img2img_batch_output_dir, img2img_batch_inpaint_mask_dir,\n                hdr_mode, hdr_brightness, hdr_color, hdr_sharpen, hdr_clamp, hdr_boundary, hdr_threshold, hdr_maximize, hdr_max_center, hdr_max_boundary, hdr_color_picker, hdr_tint_ratio,\n                enable_hr, hr_sampler_index, hr_denoising_strength, hr_resize_mode, hr_resize_context, hr_upscaler, hr_force, hr_second_pass_steps, hr_scale, hr_resize_x, hr_resize_y, refiner_steps, hr_refiner_start, refiner_prompt, refiner_negative,\n                override_settings,\n            ]\n            img2img_dict = dict(\n                fn=call_queue.wrap_gradio_gpu_call(modules.img2img.img2img, extra_outputs=[None, '', ''], name='Image'),\n                _js=\"submit_img2img\",\n                inputs= img2img_args + img2img_script_inputs,\n                outputs=[\n                    img2img_gallery,\n                    img2img_generation_info,\n                    img2img_html_info,\n                    img2img_html_log,\n                ],\n                show_progress='hidden',\n            )\n            img2img_prompt.submit(**img2img_dict)\n            img2img_negative_prompt.submit(**img2img_dict)\n            img2img_submit.click(**img2img_dict)\n\n            dummy_component = gr.Textbox(visible=False, value='dummy')\n\n            img2img_reprocess[1].click(fn=processing_vae.reprocess, inputs=[img2img_gallery], outputs=[img2img_gallery]) # full-decode\n            img2img_reprocess[2].click(**img2img_dict) # hires-refine\n            img2img_reprocess[3].click(**img2img_dict) # face-restore\n\n            interrogate_args = dict(\n                _js=\"get_img2img_tab_index\",\n                inputs=[\n                    dummy_component,\n                    img2img_batch_files,\n                    img2img_batch_input_dir,\n                    img2img_batch_output_dir,\n                    img_init, img_sketch, img_inpaint, img_composite,\n                    init_img_inpaint,\n                ],\n                outputs=[img2img_prompt, dummy_component],\n            )\n            interrogate_btn.click(fn=lambda *args: process_interrogate(*args), **interrogate_args)\n\n            img2img_token_button.click(fn=call_queue.wrap_queued_call(ui_common.update_token_counter), inputs=[img2img_prompt], outputs=[img2img_token_counter], show_progress = 'hidden')\n            img2img_negative_token_button.click(fn=call_queue.wrap_queued_call(ui_common.update_token_counter), inputs=[img2img_negative_prompt], outputs=[img2img_negative_token_counter], show_progress = 'hidden')\n\n            ui_extra_networks.setup_ui(extra_networks_ui_img2img, img2img_gallery)\n            img2img_paste_fields = [\n                # prompt\n                (img2img_prompt, \"Prompt\"),\n                (img2img_negative_prompt, \"Negative prompt\"),\n                (img2img_prompt_styles, \"Styles\"),\n                # sampler\n                (sampler_index, \"Sampler\"),\n                (steps, \"Steps\"),\n                # resize\n                (resize_mode, \"Resize mode\"),\n                (resize_name, \"Resize name\"),\n                (width, \"Size-1\"),\n                (height, \"Size-2\"),\n                (scale_by, \"Resize scale\"),\n                # batch\n                (batch_count, \"Batch-1\"),\n                (batch_size, \"Batch-2\"),\n                # seed\n                (seed, \"Seed\"),\n                (subseed, \"Variation seed\"),\n                (subseed_strength, \"Variation strength\"),\n                # guidance\n                (guidance_name, \"Guidance\"),\n                (guidance_scale, \"Guidance scale\"),\n                (guidance_rescale, \"Guidance rescale\"),\n                (guidance_start, \"Guidance start\"),\n                (guidance_stop, \"Guidance stop\"),\n                # advanced\n                (cfg_scale, \"CFG scale\"),\n                (cfg_end, \"CFG end\"),\n                (image_cfg_scale, \"Image CFG scale\"),\n                (image_cfg_scale, \"Hires CFG scale\"),\n                (clip_skip, \"Clip skip\"),\n                (diffusers_guidance_rescale, \"CFG rescale\"),\n                (vae_type, \"VAE type\"),\n                (tiling, \"Tiling\"),\n                (hidiffusion, \"HiDiffusion\"),\n                # detailer\n                (detailer_enabled, \"Detailer\"),\n                (detailer_prompt, \"Detailer prompt\"),\n                (detailer_negative, \"Detailer negative\"),\n                (detailer_steps, \"Detailer steps\"),\n                (detailer_strength, \"Detailer strength\"),\n                (detailer_resolution, \"Detailer resolution\"),\n                # second pass\n                (enable_hr, \"Second pass\"),\n                (enable_hr, \"Refine\"),\n                (denoising_strength, \"Denoising strength\"),\n                (hr_denoising_strength, \"Hires strength\"),\n                (hr_sampler_index, \"Hires sampler\"),\n                (hr_resize_mode, \"Hires mode\"),\n                (hr_resize_context, \"Hires context\"),\n                (hr_upscaler, \"Hires upscaler\"),\n                (hr_force, \"Hires force\"),\n                (hr_second_pass_steps, \"Hires steps\"),\n                (hr_scale, \"Hires upscale\"),\n                (hr_scale, \"Hires scale\"),\n                (hr_resize_x, \"Hires fixed-1\"),\n                (hr_resize_y, \"Hires fixed-2\"),\n                # refiner\n                (refiner_start, \"Refiner start\"),\n                (refiner_steps, \"Refiner steps\"),\n                (refiner_prompt, \"refiner prompt\"),\n                (refiner_negative, \"Refiner negative\"),\n                # pag\n                (pag_scale, \"CFG true\"),\n                (pag_adaptive, \"CFG adaptive\"),\n                # inpaint\n                (mask_blur, \"Mask blur\"),\n                (mask_alpha, \"Mask alpha\"),\n                (inpaint_full_res_padding, \"Mask padding\"),\n                (inpainting_mask_invert, \"Mask invert\"),\n                (inpaint_full_res, \"Mask area\"),\n                # hidden\n                (seed_resize_from_w, \"Seed resize from-1\"),\n                (seed_resize_from_h, \"Seed resize from-2\"),\n                *modules.scripts_manager.scripts_img2img.infotext_fields\n            ]\n            generation_parameters_copypaste.add_paste_fields(\"img2img\", img_init, img2img_paste_fields, override_settings)\n            generation_parameters_copypaste.add_paste_fields(\"sketch\", img_sketch, img2img_paste_fields, override_settings)\n            generation_parameters_copypaste.add_paste_fields(\"inpaint\", img_inpaint, img2img_paste_fields, override_settings)\n            img2img_bindings = generation_parameters_copypaste.ParamBinding(paste_button=img2img_paste, tabname=\"img2img\", source_text_component=img2img_prompt, source_image_component=None)\n            generation_parameters_copypaste.register_paste_params_button(img2img_bindings)\n"
  },
  {
    "path": "modules/ui_javascript.py",
    "content": "import os\nimport gradio.routes\nimport gradio.utils\nfrom modules import shared, theme\nfrom modules.paths import script_path, data_path\nimport modules.scripts_manager\n\n\ndef webpath(fn):\n    if fn.startswith(script_path):\n        uri = os.path.relpath(fn, script_path)\n    else:\n        uri = fn\n    uri = uri.replace('\\\\', '/')\n    uri = f'file={uri}?{os.path.getmtime(fn)}'\n    # uri = f'js?file={uri}&{os.path.getmtime(fn)}'\n    return uri\n\n\ndef html_head():\n    head = ''\n    main = ['script.js']\n    skip = ['login.js']\n    for js in main:\n        script_js = os.path.join(script_path, \"javascript\", js)\n        if '.esm' in js or '.mjs' in js:\n            head += f'<script type=\"module\" src=\"{webpath(script_js)}\"></script>\\n'\n        else:\n            head += f'<script type=\"text/javascript\" src=\"{webpath(script_js)}\"></script>\\n'\n    added = []\n    for script in modules.scripts_manager.list_scripts(\"javascript\", \".js\"):\n        if script.filename in main or script.filename in skip:\n            continue\n        if '.esm' in script.filename or '.mjs' in script.filename:\n            head += f'<script type=\"module\" src=\"{webpath(script.path)}\"></script>\\n'\n        else:\n            head += f'<script type=\"text/javascript\" src=\"{webpath(script.path)}\"></script>\\n'\n        added.append(script.path)\n    for script in modules.scripts_manager.list_scripts(\"javascript\", \".mjs\"):\n        head += f'<script type=\"module\" src=\"{webpath(script.path)}\"></script>\\n'\n        added.append(script.path)\n    added = [a.replace(script_path, '').replace('\\\\', '/') for a in added]\n    # log.debug(f'Adding JS scripts: {added}')\n    return head\n\n\ndef html_body():\n    body = ''\n    inline = ''\n    if shared.opts.theme_style != 'Auto':\n        inline += f\"set_theme('{shared.opts.theme_style.lower()}');\"\n    body += f'<script type=\"text/javascript\">{inline}</script>\\n'\n    return body\n\n\ndef html_login():\n    fn = os.path.join(script_path, \"javascript\", \"login.js\")\n    with open(fn, 'r', encoding='utf8') as f:\n        inline = f.read()\n    js = f'<script type=\"text/javascript\">{inline}</script>\\n'\n    return js\n\n\ndef html_css(css: list[str]):\n    def stylesheet(fn):\n        return f'<link rel=\"stylesheet\" property=\"stylesheet\" href=\"{webpath(fn)}\">'\n\n    head = ''\n    if css is not None:\n        for cssfile in css:\n            f = os.path.join(script_path, 'javascript', cssfile)\n            if os.path.isfile(f):\n                head += stylesheet(f)\n    for cssfile in modules.scripts_manager.list_files_with_name(\"style.css\"):\n        if not os.path.isfile(cssfile):\n            continue\n        head += stylesheet(cssfile)\n\n    usercss = os.path.join(data_path, \"user.css\") if os.path.exists(os.path.join(data_path, \"user.css\")) else None\n    if modules.shared.opts.theme_type == 'Standard':\n        themecss = os.path.join(script_path, \"javascript\", f\"{modules.shared.opts.gradio_theme}.css\")\n        if os.path.exists(themecss):\n            head += stylesheet(themecss)\n            modules.shared.log.debug(f'UI theme: css=\"{themecss}\" base=\"{css}\" user=\"{usercss}\"')\n        else:\n            modules.shared.log.error(f'UI theme: css=\"{themecss}\" not found')\n    elif modules.shared.opts.theme_type == 'Modern':\n        theme_folder = next((e.path for e in modules.extensions.extensions if e.name == 'sdnext-modernui'), None)\n        themecss = os.path.join(theme_folder or '', 'themes', f'{modules.shared.opts.gradio_theme}.css')\n        if os.path.exists(themecss):\n            head += stylesheet(themecss)\n            modules.shared.log.debug(f'UI theme: css=\"{themecss}\" base=\"{css}\" user=\"{usercss}\"')\n        else:\n            modules.shared.log.error(f'UI theme: css=\"{themecss}\" not found')\n    if usercss is not None:\n        head += stylesheet(usercss)\n    return head\n\n\ndef reload_javascript():\n    title = '<title>SD.Next</title>'\n    manifest = f'<link rel=\"manifest\" href=\"{webpath(os.path.join(script_path, \"html\", \"manifest.json\"))}\">'\n    login = html_login()\n    js = html_head()\n\n    css_base = theme.reload_gradio_theme()\n    css_timesheet = \"timesheet.css\"\n    css = html_css([css_base, css_timesheet])\n    body = html_body()\n\n    def template_response(*args, **kwargs):\n        res = shared.GradioTemplateResponseOriginal(*args, **kwargs)\n        res.body = res.body.replace(b'<head>', f'<head>{title}'.encode(\"utf8\"))\n        res.body = res.body.replace(b'</head>', f'{manifest}</head>'.encode(\"utf8\"))\n        res.body = res.body.replace(b'</head>', f'{login}</head>'.encode(\"utf8\"))\n        res.body = res.body.replace(b'</head>', f'{js}</head>'.encode(\"utf8\"))\n        res.body = res.body.replace(b'</body>', f'{css}{body}</body>'.encode(\"utf8\"))\n        lines = res.body.decode(\"utf8\").split('\\n')\n        for line in lines:\n            if 'meta name=\"twitter:' in line:\n                res.body = res.body.replace(line.encode(\"utf8\"), b'')\n            if 'iframeResizer.contentWindow.min.js' in line:\n                res.body = res.body.replace(line.encode(\"utf8\"), b'src=\"file=javascript/iframeResizer.min.js\"')\n        res.init_headers()\n        return res\n\n    gradio.routes.templates.TemplateResponse = template_response\n\n\nif not hasattr(shared, 'GradioTemplateResponseOriginal'):\n    shared.GradioTemplateResponseOriginal = gradio.routes.templates.TemplateResponse\n"
  },
  {
    "path": "modules/ui_loadsave.py",
    "content": "from typing import TYPE_CHECKING, cast\nimport os\nimport gradio as gr\nfrom modules import errors\nfrom modules.ui_components import ToolButton\n\n\ndebug_ui = os.environ.get('SD_UI_DEBUG', None)\n\n\nclass UiLoadsave:\n    \"\"\"allows saving and restorig default values for gradio components\"\"\"\n\n    def __init__(self, filename):\n        self.filename = filename\n        self.component_mapping = {}\n        self.ui_defaults_view = None # button\n        self.ui_defaults_apply = None # button\n        self.ui_defaults_review = None # button\n        self.ui_defaults_restore = None # button\n        self.ui_defaults_submenu = None # button\n        self.component_open = {}\n        self.ui_defaults = {}\n        self.ui_settings = self.read_from_file()\n\n    def add_component(self, path, x):\n\n        def apply_field(obj, field, condition=None, init_field=None):\n            key = f\"{path}/{field}\"\n            if hasattr(obj, 'use_original'):\n                pass\n            elif getattr(obj, 'custom_script_source', None) is not None:\n                key = f\"customscript/{obj.custom_script_source}/{key}\"\n            if getattr(obj, 'do_not_save_to_config', False):\n                return\n            saved_value = self.ui_settings.get(key, None)\n            self.ui_defaults[key] = getattr(obj, field)\n            if saved_value is None:\n                pass\n            elif condition and not condition(saved_value):\n                pass\n            # elif getattr(obj, 'type', '') == 'index':\n            #     pass # may need special handling\n            else:\n                setattr(obj, field, saved_value)\n                if init_field is not None:\n                    init_field(saved_value)\n            if debug_ui and key in self.component_mapping and not key.startswith('customscript'):\n                errors.log.warning(f'UI duplicate: key=\"{key}\" id={getattr(obj, \"elem_id\", None)} class={getattr(obj, \"elem_classes\", None)}')\n            if hasattr(obj, 'skip'):\n                pass\n            if (field == 'value') and (key not in self.component_mapping):\n                self.component_mapping[key] = x\n            if field == 'open' and key not in self.component_mapping:\n                self.component_open[key] = x\n\n        if type(x) in [gr.Slider, gr.Radio, gr.Checkbox, gr.Textbox, gr.Number, gr.Dropdown, ToolButton, gr.Button] and x.visible:\n            apply_field(x, 'visible')\n        if type(x) == gr.Accordion:\n            apply_field(x, 'open')\n        if type(x) == gr.Slider:\n            apply_field(x, 'value')\n            apply_field(x, 'minimum')\n            apply_field(x, 'maximum')\n            apply_field(x, 'step')\n        if type(x) == gr.Radio:\n            def check_choices(val):\n                for choice in x.choices:\n                    if type(choice) == tuple:\n                        choice = choice[0]\n                    if choice == val:\n                        return True\n                return False\n            apply_field(x, 'value', check_choices)\n        if type(x) == gr.Checkbox:\n            apply_field(x, 'value')\n        if type(x) == gr.Textbox:\n            apply_field(x, 'value')\n        if type(x) == gr.Number:\n            apply_field(x, 'value')\n        if type(x) == gr.Dropdown:\n            def check_dropdown(val):\n                if x.choices is None:\n                    errors.log.warning(f'UI: path={path} value={getattr(x, \"value\", None)}, choices={getattr(x, \"choices\", None)}')\n                    return False\n                choices = [c[0] for c in x.choices] if type(x.choices) == list and len(x.choices) > 0 and type(x.choices[0]) == tuple else x.choices\n                if getattr(x, 'multiselect', False):\n                    return all(value in choices for value in val)\n                else:\n                    return val in choices\n            apply_field(x, 'value', check_dropdown, getattr(x, 'init_field', None))\n\n        def check_tab_id(tab_id):\n            if TYPE_CHECKING:\n                assert isinstance(x, gr.Tabs)\n            tab_items = cast('list[gr.TabItem]', list(filter(lambda e: isinstance(e, gr.TabItem), x.children))) # Force static type checker to get correct type\n            if type(tab_id) == str:\n                return tab_id in [t.id for t in tab_items]\n            elif type(tab_id) == int:\n                return 0 <= tab_id < len(tab_items)\n            else:\n                return False\n\n        if type(x) == gr.Tabs:\n            apply_field(x, 'selected', check_tab_id)\n\n    def add_block(self, x, path=\"\"):\n        \"\"\"adds all components inside a gradio block x to the registry of tracked components\"\"\"\n        if hasattr(x, 'children'):\n            if isinstance(x, gr.Accordion):\n                self.add_component(f\"{path}/{x.label}\", x)\n            if isinstance(x, gr.Tabs) and x.elem_id is not None:\n                self.add_component(f\"{path}/Tabs@{x.elem_id}\", x) # Tabs element dont have a label, have to use elem_id instead\n            for c in x.children:\n                self.add_block(c, path)\n        elif x.label is not None:\n            self.add_component(f\"{path}/{x.label}\", x)\n        elif isinstance(x, gr.Button) and x.value is not None:\n            self.add_component(f\"{path}/{x.value}\", x)\n\n    def read_from_file(self):\n        from modules.shared import readfile\n        return readfile(self.filename, as_type=\"dict\")\n\n    def write_to_file(self, current_ui_settings):\n        from modules.shared import writefile\n        writefile(current_ui_settings, self.filename)\n\n    def dump_defaults(self):\n        if os.path.exists(self.filename):\n            return\n        self.write_to_file(self.ui_settings)\n\n    def iter_all(self, values):\n        updates = []\n        for i, name in enumerate(self.component_mapping):\n            component = self.component_mapping[name]\n            choices = getattr(component, 'choices', None)\n            if type(choices) is list and len(choices) > 0: # fix gradio radio button choices being tuples\n                if type(choices[0]) is tuple:\n                    choices = [c[0] for c in choices]\n            new_value = values[i]\n            if isinstance(new_value, int) and choices:\n                if new_value >= len(choices):\n                    updates.append(None)\n                new_value = choices[new_value]\n            old_value = self.ui_settings.get(name, None)\n            default_value = self.ui_defaults.get(name, '')\n            if old_value == new_value:\n                updates.append(None)\n            elif old_value is None and (new_value == '' or new_value == []):\n                updates.append(None)\n            elif (new_value == default_value) and (old_value is None):\n                updates.append(None)\n            else:\n                updates.append((name, old_value, new_value, default_value))\n        return updates\n\n    def iter_changes(self, values):\n        for i, name in enumerate(self.component_mapping):\n            component = self.component_mapping[name]\n            choices = getattr(component, 'choices', None)\n            if type(choices) is list and len(choices) > 0: # fix gradio radio button choices being tuples\n                if type(choices[0]) is tuple:\n                    choices = [c[0] for c in choices]\n            new_value = values[i]\n            if isinstance(new_value, int) and choices:\n                if new_value >= len(choices):\n                    continue\n                new_value = choices[new_value]\n            old_value = self.ui_settings.get(name, None)\n            default_value = self.ui_defaults.get(name, '')\n            if old_value == new_value:\n                continue\n            if old_value is None and (new_value == '' or new_value == []):\n                continue\n            if (new_value == default_value) and (old_value is None):\n                continue\n            yield name, old_value, new_value, default_value\n        return []\n\n    def iter_menus(self):\n        for _i, name in enumerate(self.component_open):\n            old_value = self.ui_settings.get(name, None)\n            new_value = self.component_open[name].open\n            default_value = self.ui_defaults.get(name, '')\n            if old_value == new_value:\n                continue\n            if (new_value == default_value) and (old_value is None):\n                continue\n            yield name, old_value, new_value, default_value\n        return []\n\n    def ui_view(self, *values):\n        text = \"\"\"\n            <table id=\"ui-defauls\">\n                <colgroup>\n                    <col style=\"width: 20%; background: var(--table-border-color)\">\n                    <col style=\"width: 10%; background: var(--panel-background-fill)\">\n                    <col style=\"width: 10%; background: var(--panel-background-fill)\">\n                    <col style=\"width: 10%; background: var(--panel-background-fill)\">\n                </colgroup>\n                <thead style=\"font-size: 110%; border-style: solid; border-bottom: 1px var(--button-primary-border-color) solid\">\n                <tr>\n                    <th>Name</th>\n                    <th>Saved value</th>\n                    <th>New value</th>\n                    <th>Default value</th>\n                </tr>\n                </thead>\n            <tbody>\"\"\"\n        changed = 0\n        for name, old_value, new_value, default_value in self.iter_changes(values):\n            changed += 1\n            if old_value is None:\n                old_value = \"None\"\n            text += f\"<tr><td>{name}</td><td>{old_value}</td><td>{new_value}</td><td>{default_value}</td></tr>\"\n        text += \"</tbody></table>\"\n        if changed == 0:\n            text = '<h2>No changes</h2>'\n        else:\n            text = f'<h2>Changed values: {changed}</h2>' + text\n        return text\n\n    def ui_apply(self, *values):\n        num_changed = 0\n        num_unchanged = 0\n        current_ui_settings = self.read_from_file()\n        for x in self.iter_all(values):\n            if x is None:\n                num_unchanged += 1\n            else:\n                name, old_value, new_value, default_value = x\n                component = self.component_mapping[name]\n                errors.log.debug(f'Settings: name={name} component={component} old={old_value} default={default_value} new={new_value}')\n                num_changed += 1\n                current_ui_settings[name] = new_value\n                # what = name.split('/')[-1]\n                # setattr(component, what, new_value)\n        if num_changed == 0:\n            return \"No changes\"\n        self.write_to_file(current_ui_settings)\n        errors.log.info(f'UI defaults saved: {self.filename} changes={num_changed} unchanged={num_unchanged}')\n        return f\"Wrote {num_changed} changes\"\n\n    def ui_submenu_apply(self, items):\n        text = \"\"\"\n            <table id=\"ui-defauls\">\n                <colgroup>\n                    <col style=\"width: 20%; background: var(--table-border-color)\">\n                    <col style=\"width: 10%; background: var(--panel-background-fill)\">\n                </colgroup>\n                <thead style=\"font-size: 110%; border-style: solid; border-bottom: 1px var(--button-primary-border-color) solid\">\n                <tr>\n                    <th>Menu</th>\n                    <th>State</th>\n                </tr>\n                </thead>\n            <tbody>\"\"\"\n        for k in self.component_open.keys():\n            opened = len([i for i, j in items.items() if j is True and i in k]) > 0\n            self.component_open[k].open = opened\n            text += f\"<tr><td>{k}</td><td>{'open' if opened else 'closed'}</td></tr>\"\n        text += \"</tbody></table>\"\n\n        num_changed = 0\n        current_ui_settings = self.read_from_file()\n        for name, _old_value, new_value, default_value in self.iter_menus():\n            errors.log.debug(f'Settings: name={name} default={default_value} new={new_value}')\n            num_changed += 1\n            current_ui_settings[name] = new_value\n        if num_changed == 0:\n            text += '<br>No changes'\n        else:\n            self.write_to_file(current_ui_settings)\n            errors.log.info(f'UI defaults saved: {self.filename}')\n            text += f'<br>Changes: {num_changed}'\n        return text\n\n    def ui_restore(self):\n        if os.path.exists(self.filename):\n            os.remove(self.filename)\n        errors.log.info(f'UI defaults reset: {self.filename}')\n        return \"Restored system defaults for user interface\"\n\n    def create_ui(self):\n        with gr.Row(elem_id=\"config_row\"):\n            self.ui_defaults_apply = gr.Button(value='Set UI defaults', elem_id=\"ui_defaults_apply\", variant=\"primary\")\n            self.ui_defaults_submenu = gr.Button(value='Set UI menu states', elem_id=\"ui_submenu_apply\", variant=\"primary\")\n            self.ui_defaults_restore = gr.Button(value='Restore UI defaults', elem_id=\"ui_defaults_restore\", variant=\"primary\")\n            self.ui_defaults_view = gr.Button(value='Refresh UI values', elem_id=\"ui_defaults_view\", variant=\"secondary\")\n        self.ui_defaults_review = gr.HTML(\"\", elem_id=\"ui_defaults_review\")\n\n    def setup_ui(self):\n        review = [self.ui_defaults_review] if self.ui_defaults_review is not None else None\n        if self.ui_defaults_view:\n            self.ui_defaults_view.click(fn=self.ui_view, inputs=list(self.component_mapping.values()), outputs=review)\n        if self.ui_defaults_apply:\n            self.ui_defaults_apply.click(fn=self.ui_apply, inputs=list(self.component_mapping.values()), outputs=review)\n        if self.ui_defaults_restore:\n            self.ui_defaults_restore.click(fn=self.ui_restore, inputs=[], outputs=review)\n        if self.ui_defaults_submenu:\n            self.ui_defaults_submenu.click(fn=self.ui_submenu_apply, _js='uiOpenSubmenus', inputs=review, outputs=review)\n"
  },
  {
    "path": "modules/ui_models.py",
    "content": "import os\nimport inspect\nfrom typing import cast\nimport gradio as gr\nfrom modules import errors, sd_models, sd_vae, extras, sd_samplers, ui_symbols, modelstats\nfrom modules.ui_components import ToolButton\nfrom modules.ui_common import create_refresh_button\nfrom modules.call_queue import wrap_gradio_gpu_call\nfrom modules.shared import opts, log\n\n\nextra_ui = []\n\n\ndef create_ui():\n    log.debug('UI initialize: tab=models')\n    dummy_component = gr.Label(visible=False)\n    with gr.Row(elem_id=\"models_tab\"):\n        with gr.Column(elem_id='models_output_container', scale=1):\n            models_outcome = gr.HTML(elem_id=\"models_outcome\", value=\"\")\n            models_file = gr.File(label='', visible=False)\n\n        with gr.Column(elem_id='models_input_container', scale=3):\n\n            with gr.Tab(label=\"Current\", elem_id=\"models_current_tab\"):\n                def create_modules_table(rows: list):\n                    html = \"\"\"\n                        <table class=\"simple-table\">\n                            <thead>\n                                <tr><th>Module</th><th>Class</th><th>Device</th><th>Dtype</th><th>Quant</th><th>Params</th><th>Modules</th><th>Config</th></tr>\n                            </thead>\n                            <tbody>\n                                {tbody}\n                            </tbody>\n                        </table>\n                    \"\"\"\n                    tbody = ''\n                    for row in rows:\n                        try:\n                            config = str(row.config)\n                        except Exception:\n                            config = '{}'\n                        try:\n                            tbody += f\"\"\"\n                                <tr>\n                                    <td>{row.name}</td>\n                                    <td>{row.cls}</td>\n                                    <td>{row.device}</td>\n                                    <td>{row.dtype}</td>\n                                    <td>{row.quant}</td>\n                                    <td>{row.params}</td>\n                                    <td>{row.modules}</td>\n                                    <td><div class='model-config'>{config}</div></td>\n                                </tr>\n                            \"\"\"\n                        except Exception as e:\n                            log.error(f'Model list: row={vars(row)} {e}')\n                    return html.format(tbody=tbody)\n\n                def analyze():\n                    model = modelstats.analyze()\n                    if model is None:\n                        return [\"Model not loaded\", {}]\n                    meta = model.meta\n                    html = create_modules_table(model.modules)\n                    return [html, meta]\n\n                with gr.Row():\n                    model_analyze = gr.Button(value=\"Analyze model\", variant='primary')\n                with gr.Row():\n                    model_desc = gr.HTML(value=\"\", elem_id=\"model_desc\")\n                with gr.Accordion(label=\"Save model\", open=False):\n                    with gr.Row():\n                        save_name = gr.Textbox(label=\"Model name\", placeholder=\"Model name to save as\")\n                    with gr.Row():\n                        save_path = gr.Textbox(label=\"Model base path\", placeholder=\"Path to save model to\", value=opts.diffusers_dir)\n                    with gr.Row():\n                        save_shard = gr.Textbox(label=\"Max shard size\", placeholder=\"Maximum shard size\", value=\"10GB\")\n                        save_overwrite = gr.Checkbox(label=\"Overwrite existing\", value=False)\n                    with gr.Row():\n                        save_result = gr.HTML(value=\"\", elem_id=\"model_save_outcome\")\n                    with gr.Row():\n                        model_save = gr.Button(value=\"Save model\", variant='primary')\n                        model_save.click(fn=sd_models.save_model, inputs=[save_name, save_path, save_shard, save_overwrite], outputs=[save_result])\n                with gr.Accordion(label=\"Metadata\", open=False):\n                    model_meta = gr.JSON(label=\"Metadata\", value={}, elem_id=\"model_meta\")\n\n                model_analyze.click(fn=analyze, inputs=[], outputs=[model_desc, model_meta])\n\n            with gr.Tab(label=\"List\", elem_id=\"models_list_tab\"):\n                def create_models_table(rows: list):\n                    from modules import sd_detect\n                    html = \"\"\"\n                        <table class=\"simple-table\">\n                            <thead>\n                                <tr><th>Name</th><th>Type</th><th>Detect</th><th>Pipeline</th><th>Hash</th><th>Size</th><th>MTime</th></tr>\n                            </thead>\n                            <tbody>\n                                {tbody}\n                            </tbody>\n                        </table>\n                    \"\"\"\n                    tbody = ''\n                    for row in rows:\n                        try:\n                            f = row.filename\n                            stat_size, stat_mtime = modelstats.stat(f)\n                            if os.path.isfile(f):\n                                typ = os.path.splitext(f)[1][1:]\n                                size = f\"{round(stat_size / 1024 / 1024 / 1024, 3)} gb\"\n                            elif os.path.isdir(f):\n                                typ = 'diffusers'\n                                size = 'folder'\n                            else:\n                                typ = 'unknown'\n                                size = 'unknown'\n                            guess = 'Diffusion' # set default guess\n                            guess = sd_detect.guess_by_size(f, guess)\n                            guess = sd_detect.guess_by_name(f, guess)\n                            guess, pipeline = sd_detect.guess_by_diffusers(f, guess)\n                            guess = sd_detect.guess_variant(f, guess)\n                            pipeline = sd_detect.shared_items.get_pipelines().get(guess, None) if pipeline is None else pipeline\n                            tbody += f\"\"\"\n                                <tr>\n                                    <td>{row.model_name}</td>\n                                    <td>{typ}</td>\n                                    <td>{guess}</td>\n                                    <td>{pipeline.__name__ if pipeline else '(unknown)'}</td>\n                                    <td>{row.shorthash}</td>\n                                    <td>{size}</td>\n                                    <td>{stat_mtime}</td>\n                                </tr>\n                            \"\"\"\n                        except Exception as e:\n                            log.error(f'Model list: row={vars(row)} {e}')\n                    return html.format(tbody=tbody)\n\n                with gr.Row():\n                    gr.HTML('<h2>List all locally available models</h2><br>')\n                with gr.Row():\n                    model_list_btn = gr.Button(value=\"List models\", variant='primary')\n                    model_checkhash_btn = gr.Button(value=\"Calculate missing hashes\", variant='secondary')\n                with gr.Row():\n                    model_table = gr.HTML(value='', elem_id=\"model_list_table\")\n\n                model_checkhash_btn.click(fn=sd_models.update_model_hashes, inputs=[], outputs=[model_table])\n                model_list_btn.click(fn=lambda: create_models_table(list(sd_models.checkpoints_list.values())), inputs=[], outputs=[model_table])\n\n            with gr.Tab(label=\"Metadata\", elem_id=\"models_metadata_tab\"):\n                from modules.civitai.metadata_civitai import civit_search_metadata, civit_update_metadata\n                with gr.Row():\n                    gr.HTML('<h2>Fetch model preview metadata</h2><br>')\n                with gr.Row():\n                    civit_previews_btn = gr.Button(value=\"Scan missing\", variant='primary')\n                    civit_update_btn = gr.Button(value=\"Update all\", variant='primary')\n                with gr.Row():\n                    civit_metadata = gr.HTML(value='', elem_id=\"civit_metadata\")\n                civit_previews_btn.click(fn=civit_search_metadata, inputs=[], outputs=[civit_metadata])\n                civit_update_btn.click(fn=civit_update_metadata, inputs=[], outputs=[civit_metadata])\n\n\n            with gr.Tab(label=\"Loader\", elem_id=\"models_loader_tab\"):\n                from modules import ui_models_load\n                ui_models_load.create_ui(models_outcome, models_file)\n\n            with gr.Tab(label=\"Merge\", elem_id=\"models_merge_tab\"):\n                from modules.merging import merge_methods\n                from modules.merging.merge_utils import BETA_METHODS, TRIPLE_METHODS, interpolate\n                from modules.merging.merge_presets import BLOCK_WEIGHTS_PRESETS, SDXL_BLOCK_WEIGHTS_PRESETS\n\n                def sd_model_choices():\n                    return ['None'] + sd_models.checkpoint_titles()\n\n                with gr.Row():\n                    gr.HTML('<h2>&nbspMerge multiple models<br></h2>')\n                with gr.Row(equal_height=False):\n                    with gr.Column(variant='compact'):\n                        with gr.Row():\n                            custom_name = gr.Textbox(label=\"New model name\")\n                        with gr.Row():\n                            merge_mode = gr.Dropdown(choices=merge_methods.__all__, value=\"weighted_sum\", label=\"Interpolation Method\")\n                            merge_mode_docs = gr.HTML(value=merge_methods.weighted_sum.__doc__.strip().replace(\"\\n\", \"<br>\")) # pylint: disable=no-member # pyright: ignore[reportOptionalMemberAccess]\n                        with gr.Row():\n                            primary_model_name = gr.Dropdown(sd_model_choices(), label=\"Primary model\", value=\"None\")\n                            create_refresh_button(primary_model_name, sd_models.list_models, lambda: {\"choices\": sd_model_choices()}, \"checkpoint_A_refresh\")\n                            secondary_model_name = gr.Dropdown(sd_model_choices(), label=\"Secondary model\", value=\"None\")\n                            create_refresh_button(secondary_model_name, sd_models.list_models, lambda: {\"choices\": sd_model_choices()}, \"checkpoint_B_refresh\")\n                            tertiary_model_name = gr.Dropdown(sd_model_choices(), label=\"Tertiary model\", value=\"None\", visible=False)\n                            tertiary_refresh = create_refresh_button(tertiary_model_name, sd_models.list_models, lambda: {\"choices\": sd_model_choices()}, \"checkpoint_C_refresh\", visible=False)\n                        with gr.Row():\n                            with gr.Tabs() as tabs:\n                                with gr.TabItem(label=\"Simple Merge\", id=0):\n                                    with gr.Row():\n                                        alpha = gr.Slider(minimum=0.0, maximum=1.0, step=0.05, label='Alpha Ratio', value=0.5)\n                                        beta = gr.Slider(minimum=0.0, maximum=1.0, step=0.05, label='Beta Ratio', value=None, visible=False)\n                                with gr.TabItem(label=\"Preset Block Merge\", id=1):\n                                    with gr.Row():\n                                        sdxl = gr.Checkbox(label=\"SDXL\")\n                                    with gr.Row():\n                                        alpha_preset = gr.Dropdown(\n                                            choices=[\"None\"] + list(BLOCK_WEIGHTS_PRESETS.keys()), value=None,\n                                            label=\"ALPHA Block Weight Preset\", multiselect=True, max_choices=2)\n                                        alpha_preset_lambda = gr.Slider(minimum=0.0, maximum=1.0, step=0.05, label='Preset Interpolation Ratio', value=None, visible=False)\n                                        apply_preset = ToolButton('⇨', visible=True)\n                                    with gr.Row():\n                                        beta_preset = gr.Dropdown(choices=[\"None\"] + list(BLOCK_WEIGHTS_PRESETS.keys()), value=None, label=\"BETA Block Weight Preset\", multiselect=True, max_choices=2, interactive=True, visible=False)\n                                        beta_preset_lambda = gr.Slider(minimum=0.0, maximum=1.0, step=0.05, label='Preset Interpolation Ratio', value=None, interactive=True, visible=False)\n                                        beta_apply_preset = ToolButton('⇨', interactive=True, visible=False)\n                                with gr.TabItem(label=\"Manual Block Merge\", id=2):\n                                    with gr.Row():\n                                        alpha_label = gr.Markdown(\"# Alpha\")\n                                    with gr.Row():\n                                        alpha_base = gr.Textbox(value=None, label=\"Base\", min_width=70, scale=1)\n                                        alpha_in_blocks = gr.Textbox(value=None, label=\"In Blocks\", scale=15)\n                                        alpha_mid_block = gr.Textbox(value=None, label=\"Mid Block\", min_width=80, scale=1)\n                                        alpha_out_blocks = gr.Textbox(value=None, label=\"Out Block\", scale=15)\n                                    with gr.Row():\n                                        beta_label = gr.Markdown(\"# Beta\", visible=False)\n                                    with gr.Row():\n                                        beta_base = gr.Textbox(value=None, label=\"Base\", min_width=70, scale=1, interactive=True, visible=False)\n                                        beta_in_blocks = gr.Textbox(value=None, label=\"In Blocks\", interactive=True, scale=15, visible=False)\n                                        beta_mid_block = gr.Textbox(value=None, label=\"Mid Block\", min_width=80, interactive=True, scale=1, visible=False)\n                                        beta_out_blocks = gr.Textbox(value=None, label=\"Out Block\", interactive=True, scale=15, visible=False)\n                        with gr.Row():\n                            overwrite = gr.Checkbox(label=\"Overwrite model\")\n                        with gr.Row():\n                            save_metadata = gr.Checkbox(value=True, label=\"Save metadata\")\n                        with gr.Row():\n                            weights_clip = gr.Checkbox(label=\"Weights clip\")\n                            prune = gr.Checkbox(label=\"Prune\", value=True, visible=False)\n                        with gr.Row():\n                            re_basin = gr.Checkbox(label=\"ReBasin\")\n                            re_basin_iterations = gr.Slider(minimum=0, maximum=25, step=1, label='Number of ReBasin Iterations', value=None, visible=False)\n                        with gr.Row():\n                            checkpoint_format = gr.Radio(choices=[\"ckpt\", \"safetensors\"], value=\"safetensors\", visible=False, label=\"Model format\")\n                        with gr.Row():\n                            precision = gr.Radio(choices=[\"fp16\", \"fp32\"], value=\"fp16\", label=\"Model precision\")\n                        with gr.Row():\n                            device = gr.Radio(choices=[\"cpu\", \"shuffle\", \"gpu\"], value=\"cpu\", label=\"Merge Device\")\n                            unload = gr.Checkbox(label=\"Unload Current Model from VRAM\", value=False, visible=False)\n                        with gr.Row():\n                            bake_in_vae = gr.Dropdown(choices=[\"None\"] + list(sd_vae.vae_dict), value=\"None\", interactive=True, label=\"Replace VAE\")\n                            create_refresh_button(bake_in_vae, sd_vae.refresh_vae_list,\n                                                  lambda: {\"choices\": [\"None\"] + list(sd_vae.vae_dict)},\n                                                  \"modelmerger_bake_in_vae_refresh\")\n                        with gr.Row():\n                            modelmerger_merge = gr.Button(value=\"Merge\", variant='primary')\n\n                def modelmerger(dummy_component, # dummy function just to get argspec later\n                                overwrite, # pylint: disable=unused-argument\n                                primary_model_name, # pylint: disable=unused-argument\n                                secondary_model_name, # pylint: disable=unused-argument\n                                tertiary_model_name, # pylint: disable=unused-argument\n                                merge_mode, # pylint: disable=unused-argument\n                                alpha, # pylint: disable=unused-argument\n                                beta, # pylint: disable=unused-argument\n                                alpha_preset, # pylint: disable=unused-argument\n                                alpha_preset_lambda, # pylint: disable=unused-argument\n                                alpha_base, # pylint: disable=unused-argument\n                                alpha_in_blocks, # pylint: disable=unused-argument\n                                alpha_mid_block, # pylint: disable=unused-argument\n                                alpha_out_blocks, # pylint: disable=unused-argument\n                                beta_preset, # pylint: disable=unused-argument\n                                beta_preset_lambda, # pylint: disable=unused-argument\n                                beta_base, # pylint: disable=unused-argument\n                                beta_in_blocks, # pylint: disable=unused-argument\n                                beta_mid_block, # pylint: disable=unused-argument\n                                beta_out_blocks, # pylint: disable=unused-argument\n                                precision, # pylint: disable=unused-argument\n                                custom_name, # pylint: disable=unused-argument\n                                checkpoint_format, # pylint: disable=unused-argument\n                                save_metadata, # pylint: disable=unused-argument\n                                weights_clip, # pylint: disable=unused-argument\n                                prune, # pylint: disable=unused-argument\n                                re_basin, # pylint: disable=unused-argument\n                                re_basin_iterations, # pylint: disable=unused-argument\n                                device, # pylint: disable=unused-argument\n                                unload, # pylint: disable=unused-argument\n                                bake_in_vae): # pylint: disable=unused-argument\n                    kwargs = {}\n                    for x in inspect.getfullargspec(modelmerger)[0]:\n                        kwargs[x] = locals()[x]\n                    for key in list(kwargs.keys()):\n                        if kwargs[key] in [None, \"None\", \"\", 0, []]:\n                            del kwargs[key]\n                    del kwargs['dummy_component']\n                    if kwargs.get(\"custom_name\", None) is None:\n                        log.error('Merge: no output model specified')\n                        return [*[gr.Dropdown.update(choices=sd_models.checkpoint_titles()) for _ in range(4)], \"No output model specified\"]\n                    elif kwargs.get(\"primary_model_name\", None) is None or kwargs.get(\"secondary_model_name\", None) is None:\n                        log.error('Merge: no models selected')\n                        return [*[gr.Dropdown.update(choices=sd_models.checkpoint_titles()) for _ in range(4)], \"No models selected\"]\n                    else:\n                        log.debug(f'Merge start: {kwargs}')\n                        try:\n                            results = extras.run_modelmerger(dummy_component, **kwargs)\n                        except Exception as e:\n                            errors.display(e, 'Merge')\n                            sd_models.list_models()  # to remove the potentially missing models from the list\n                            return [*[gr.Dropdown.update(choices=sd_models.checkpoint_titles()) for _ in range(4)], f\"Error merging checkpoints: {e}\"]\n                        return results\n\n                def tertiary(mode):\n                    if mode in TRIPLE_METHODS:\n                        return [gr.update(visible=True) for _ in range(2)]\n                    else:\n                        return [gr.update(visible=False) for _ in range(2)]\n\n                def beta_visibility(mode):\n                    if mode in BETA_METHODS:\n                        return [gr.update(visible=True) for _ in range(9)]\n                    else:\n                        return [gr.update(visible=False) for _ in range(9)]\n\n                def show_iters(show):\n                    if show:\n                        return gr.Slider.update(value=5, visible=True)\n                    else:\n                        return gr.Slider.update(value=None, visible=False)\n\n                def show_help(mode):\n                    try:\n                        doc = getattr(merge_methods, mode).__doc__.strip().replace(\"\\n\", \"<br>\")\n                    except AttributeError:\n                        log.warning(f'Merge mode \"{mode}\" is missing documentation')\n                        doc = \"Error: Documentation missing\"\n                    return gr.update(value=doc, visible=True)\n\n                def show_unload(device):\n                    if device == \"gpu\":\n                        return gr.update(visible=True)\n                    else:\n                        return gr.update(visible=False)\n\n\n                def preset_visiblility(x):\n                    if len(x) == 2:\n                        return gr.Slider.update(value=0.5, visible=True)\n                    else:\n                        return gr.Slider.update(value=None, visible=False)\n\n                def load_presets(presets, ratio):\n                    for i, p in enumerate(presets):\n                        presets[i] = BLOCK_WEIGHTS_PRESETS[p]\n                    if len(presets) == 2:\n                        preset = interpolate(presets, ratio)\n                    else:\n                        preset = presets[0]\n                    preset = ['%.3f' % x if int(x) != x else str(x) for x in preset] # pylint: disable=consider-using-f-string\n                    preset = [preset[0], \",\".join(preset[1:13]), preset[13], \",\".join(preset[14:])]\n                    return [gr.update(value=x) for x in preset] + [gr.update(selected=2)]\n\n                def preset_choices(sdxl):\n                    if sdxl:\n                        return [gr.update(choices=[\"None\"] + list(SDXL_BLOCK_WEIGHTS_PRESETS.keys())) for _ in range(2)]\n                    else:\n                        return [gr.update(choices=[\"None\"] + list(BLOCK_WEIGHTS_PRESETS.keys())) for _ in range(2)]\n                device.change(fn=show_unload, inputs=device, outputs=unload)\n                merge_mode.change(fn=show_help, inputs=merge_mode, outputs=merge_mode_docs)\n                sdxl.change(fn=preset_choices, inputs=sdxl, outputs=[alpha_preset, beta_preset])\n                alpha_preset.change(fn=preset_visiblility, inputs=alpha_preset, outputs=alpha_preset_lambda)\n                beta_preset.change(fn=preset_visiblility, inputs=alpha_preset, outputs=beta_preset_lambda)\n                merge_mode.input(fn=tertiary, inputs=merge_mode, outputs=[tertiary_model_name, tertiary_refresh])\n                merge_mode.input(fn=beta_visibility, inputs=merge_mode, outputs=[beta, alpha_label, beta_label, beta_apply_preset, beta_preset, beta_base, beta_in_blocks, beta_mid_block, beta_out_blocks])\n                re_basin.change(fn=show_iters, inputs=re_basin, outputs=re_basin_iterations)\n                apply_preset.click(fn=load_presets, inputs=[alpha_preset, alpha_preset_lambda], outputs=[alpha_base, alpha_in_blocks, alpha_mid_block, alpha_out_blocks, cast(\"gr.components.Component\", tabs)]) # Casting because Tabs has an update method.\n                beta_apply_preset.click(fn=load_presets, inputs=[beta_preset, beta_preset_lambda], outputs=[beta_base, beta_in_blocks, beta_mid_block, beta_out_blocks, cast(\"gr.components.Component\", tabs)]) # Casting because Tabs has an update method.\n\n                modelmerger_merge.click(\n                    fn=wrap_gradio_gpu_call(modelmerger, extra_outputs=lambda: [gr.update() for _ in range(4)], name='Models'),\n                    _js='modelmerger',\n                    inputs=[\n                        dummy_component,\n                        overwrite,\n                        primary_model_name,\n                        secondary_model_name,\n                        tertiary_model_name,\n                        merge_mode,\n                        alpha,\n                        beta,\n                        alpha_preset,\n                        alpha_preset_lambda,\n                        alpha_base,\n                        alpha_in_blocks,\n                        alpha_mid_block,\n                        alpha_out_blocks,\n                        beta_preset,\n                        beta_preset_lambda,\n                        beta_base,\n                        beta_in_blocks,\n                        beta_mid_block,\n                        beta_out_blocks,\n                        precision,\n                        custom_name,\n                        checkpoint_format,\n                        save_metadata,\n                        weights_clip,\n                        prune,\n                        re_basin,\n                        re_basin_iterations,\n                        device,\n                        unload,\n                        bake_in_vae,\n                    ],\n                    outputs=[\n                        primary_model_name,\n                        secondary_model_name,\n                        tertiary_model_name,\n                        dummy_component,\n                        models_outcome,\n                    ]\n                )\n\n            with gr.Tab(label=\"Replace\", elem_id=\"models_replace_tab\"):\n                with gr.Row():\n                    gr.HTML('<h2>&nbspReplace model components<br></h2>')\n                with gr.Row():\n                    with gr.Column(scale=3):\n                        model_type = gr.Dropdown(label=\"Base model type\", choices=['sd15', 'sdxl', 'sd21', 'sd35', 'flux.1'], value='sdxl', interactive=False)\n                    with gr.Column(scale=5):\n                        with gr.Row():\n                            model_name = gr.Dropdown(sd_models.checkpoint_titles(), label=\"Input model\")\n                            create_refresh_button(model_name, sd_models.list_models, lambda: {\"choices\": sd_models.checkpoint_titles()}, \"checkpoint_Z_refresh\")\n                    with gr.Column(scale=5):\n                        custom_name = gr.Textbox(label=\"Output model\", placeholder=\"Output model path\")\n                with gr.Row():\n                    with gr.Column(scale=3):\n                        gr.HTML('Model components<br><span style=\"color: var(--body-text-color-subdued)\">Specify the components to include<br>Paths can be relative or absolute</span><br>')\n                    with gr.Column(scale=5):\n                        comp_unet = gr.Textbox(placeholder=\"UNet model\", show_label=False)\n                        comp_vae = gr.Textbox(placeholder=\"VAE model\", show_label=False)\n                    with gr.Column(scale=5):\n                        comp_te1 = gr.Textbox(placeholder=\"Text encoder 1\", show_label=False)\n                        comp_te2 = gr.Textbox(placeholder=\"Text encoder 2\", show_label=False)\n                with gr.Row():\n                    with gr.Column(scale=3):\n                        gr.HTML('Model settings<br>')\n                    with gr.Column(scale=10):\n                        with gr.Row():\n                            precision = gr.Dropdown(label=\"Model precision\", choices=[\"fp32\", \"fp16\", \"bf16\"], value=\"fp16\")\n                            comp_scheduler = gr.Dropdown(label=\"Sampler\", choices=[s.name for s in sd_samplers.samplers if s.constructor is not None])\n                            comp_prediction = gr.Dropdown(label=\"Prediction type\", choices=[\"epsilon\", \"v\"], value=\"epsilon\")\n                with gr.Row():\n                    with gr.Column(scale=3):\n                        gr.HTML('Merge LoRA<br>')\n                    with gr.Column(scale=9):\n                        comp_lora = gr.Textbox(label=\"Comma separated list with optional strength per LoRA\", placeholder=\"LoRA models\")\n                    with gr.Column(scale=1):\n                        comp_fuse = gr.Number(label=\"Fuse strength\", value=1.0)\n\n                with gr.Row():\n                    gr.HTML('<br>')\n                with gr.Row():\n                    with gr.Column(scale=2):\n                        gr.HTML('Model metadata<br>')\n                    with gr.Column(scale=5):\n                        meta_author = gr.Textbox(placeholder=\"Author name\", show_label=False)\n                        meta_version = gr.Textbox(placeholder=\"Model version\", show_label=False)\n                        meta_license = gr.Textbox(placeholder=\"Model license\", show_label=False)\n                    with gr.Column(scale=5):\n                        meta_desc = gr.Textbox(placeholder=\"Model description\", lines=3, show_label=False)\n                        meta_hint = gr.Textbox(placeholder=\"Model hint\", lines=3, show_label=False)\n                    with gr.Column(scale=3):\n                        meta_thumbnail = gr.Image(label=\"Thumbnail\", type='pil')\n                with gr.Row():\n                    gr.HTML('Note: Save is optional as you can merge in-memory and use newly created model immediately')\n                with gr.Row():\n                    create_diffusers = gr.Checkbox(label=\"Save diffusers\", value=True)\n                    create_safetensors = gr.Checkbox(label=\"Save safetensors\", value=True)\n                    debug = gr.Checkbox(label=\"Debug info\", value=False)\n\n                model_modules_btn = gr.Button(value=\"Merge Modules\", variant='primary')\n                model_modules_btn.click(\n                    fn=extras.run_model_modules,\n                    inputs=[\n                        model_type, model_name, custom_name,\n                        comp_unet, comp_vae, comp_te1, comp_te2,\n                        precision, comp_scheduler, comp_prediction,\n                        comp_lora, comp_fuse,\n                        meta_author, meta_version, meta_license, meta_desc, meta_hint, meta_thumbnail,\n                        create_diffusers, create_safetensors, debug,\n                    ],\n                    outputs=[models_outcome]\n                )\n\n            with gr.Tab(label=\"CivitAI\", elem_id=\"models_civitai_tab\"):\n                from modules.civitai.search_civitai import search_civitai, create_model_cards, base_models\n\n                def civitai_search(civit_search_text, civit_search_tag, civit_nsfw, civit_type, civit_base, civit_token):\n                    results = search_civitai(query=civit_search_text, tag=civit_search_tag, nsfw=civit_nsfw, types=civit_type, base=civit_base, token=civit_token)\n                    html = create_model_cards(results)\n                    return html\n\n                def civitai_update_token(token):\n                    log.debug('CivitAI update token')\n                    opts.civitai_token = token\n                    opts.save()\n\n                def civitai_download(model_urls, model_names, model_types, model_path, civit_token, model_output):\n                    from modules.civitai.download_civitai import download_civit_model\n                    for model_url, model_name, model_type in zip(model_urls, model_names, model_types):\n                        msg = f\"<h4>Initiating download</h4><div>{model_name} | {model_type} | <a href='{model_url}'>{model_url}</a></div><br>\"\n                        yield msg + model_output\n                        download_civit_model(model_url, model_name, model_path, model_type, civit_token)\n                        yield model_output\n\n                with gr.Row():\n                    gr.HTML('<h2>Search & Download</h2>')\n                with gr.Row(elem_id='civitai_search_row'):\n                    civit_search_text = gr.Textbox(label='', placeholder='keyword', elem_id=\"civit_search_text\")\n                    civit_search_tag = gr.Textbox(label='', placeholder='tag', elem_id=\"civit_search_text\")\n                    civit_search_text_btn = ToolButton(value=ui_symbols.search, interactive=True, elem_id=\"civit_text_search\")\n                with gr.Accordion(label='Advanced', open=False, elem_id=\"civitai_search_options\"):\n                    civit_download_btn = gr.Button(value=\"Download model\", variant='primary', elem_id=\"civitai_download_btn\", visible=False)\n                    with gr.Row():\n                        civit_token = gr.Textbox(opts.civitai_token, label='CivitAI token', placeholder='optional access token for private or gated models', elem_id=\"civitai_token\")\n                    with gr.Row():\n                        civit_nsfw = gr.Checkbox(label='NSFW allowed', value=True)\n                    with gr.Row():\n                        civit_type = gr.Textbox(label='Target model type', placeholder='Checkpoint, LORA, ...', value='')\n                    with gr.Row():\n                        # civit_base = gr.Textbox(label='Base model', placeholder='SDXL, ...')\n                        civit_base = gr.Dropdown(choices=base_models, label='Base model', value='')\n                    with gr.Row():\n                        civit_folder = gr.Textbox(label='Download folder', placeholder='optional folder for downloads')\n                with gr.Row():\n                    civitai_models_output = gr.HTML('', elem_id=\"civitai_models_output\")\n                # sort, period, limit\n                _dummy = gr.Label(visible=False)  # dummy component to get argspec later\n                civit_inputs = [civit_search_text, civit_search_tag, civit_nsfw, civit_type, civit_base, civit_token]\n                civit_search_text_btn.click(fn=civitai_search, inputs=civit_inputs, outputs=[civitai_models_output])\n                civit_search_text.submit(fn=civitai_search, inputs=civit_inputs, outputs=[civitai_models_output])\n                civit_search_tag.submit(fn=civitai_search, inputs=civit_inputs, outputs=[civitai_models_output])\n                civit_token.change(fn=civitai_update_token, inputs=[civit_token], outputs=[])\n                civit_download_btn.click(\n                    fn=civitai_download,\n                    _js=\"downloadCivitModel\",\n                    inputs=[_dummy, _dummy, _dummy, civit_folder, civit_token, civitai_models_output],\n                    outputs=[civitai_models_output],\n                    show_progress='full',\n                )\n\n            with gr.Tab(label=\"Huggingface\", elem_id=\"models_huggingface_tab\"):\n                from modules.models_hf import hf_search, hf_select, hf_download_model, hf_update_token\n                with gr.Column(scale=6):\n                    with gr.Row():\n                        gr.HTML('<h2>&nbspDownload model from huggingface<br></h2>')\n                    with gr.Row():\n                        hf_search_text = gr.Textbox('', label='Search models', placeholder='search huggingface models')\n                        hf_search_btn = ToolButton(value=ui_symbols.search, interactive=True, elem_id=\"hf_text_search\")\n                    with gr.Row():\n                        hf_selected = gr.Textbox('', label='Select model', placeholder='select model from search results or enter model name manually')\n                    with gr.Accordion(label='Advanced', open=False, elem_id=\"hf_search_options\"):\n                        with gr.Row():\n                            hf_token = gr.Textbox(opts.huggingface_token, label='Huggingface token', placeholder='optional access token for private or gated models', elem_id=\"hf_token\")\n                        with gr.Row():\n                            hf_variant = gr.Textbox('', label='Specify model variant', placeholder='')\n                            hf_revision = gr.Textbox('', label='Specify model revision', placeholder='')\n                        with gr.Row():\n                            hf_mirror = gr.Textbox('', label='Huggingface mirror', placeholder='optional mirror site for downloads')\n                            hf_custom_pipeline = gr.Textbox('', label='Custom pipeline', placeholder='optional pipeline for downloads')\n                with gr.Column(scale=1):\n                    gr.HTML('<br>')\n                    hf_download_model_btn = gr.Button(value=\"Download model\", variant='primary')\n\n                with gr.Row():\n                    hf_headers = ['Name', 'Pipeline', 'Tags', 'Downloads', 'Updated', 'URL']\n                    hf_types = ['str', 'str', 'str', 'number', 'date', 'markdown']\n                    hf_results = gr.DataFrame(None, label='Search results', show_label=True, interactive=False, wrap=True, headers=hf_headers, datatype=hf_types)\n\n                hf_search_text.submit(fn=hf_search, inputs=[hf_search_text], outputs=[hf_results])\n                hf_search_btn.click(fn=hf_search, inputs=[hf_search_text], outputs=[hf_results])\n                hf_results.select(fn=hf_select, inputs=[hf_results], outputs=[hf_selected])\n                hf_download_model_btn.click(fn=hf_download_model, inputs=[hf_selected, hf_token, hf_variant, hf_revision, hf_mirror, hf_custom_pipeline], outputs=[models_outcome])\n                hf_token.change(fn=hf_update_token, inputs=[hf_token], outputs=[])\n\n            from modules.lora.lora_extract import create_ui as lora_extract_ui\n            lora_extract_ui()\n\n            for ui in extra_ui:\n                if callable(ui):\n                    ui()\n"
  },
  {
    "path": "modules/ui_models_load.py",
    "content": "import os\nimport re\nimport json # pylint: disable=unused-import\nimport inspect\nimport gradio as gr\nimport torch\nimport diffusers\nfrom huggingface_hub import hf_hub_download\nfrom modules import shared, errors, shared_items, sd_models, sd_checkpoint, devices, model_quant, modelloader\n\n\ndebug_enabled = os.environ.get('SD_LOAD_DEBUG', None)\ndebug_log = shared.log.trace if debug_enabled else lambda *args, **kwargs: None\ncomponents = []\n\n\ndef load_model(model: str, cls: str, repo: str, dataframes: list):\n    if cls is None:\n        shared.log.error('Model load: class is None')\n        return 'Model load: class is None'\n    if repo is None:\n        shared.log.error('Model load: repo is None')\n        return 'Model load: repo is None'\n    cls = getattr(diffusers, cls, None)\n    if cls is None:\n        cls = diffusers.AutoPipelineForText2Image\n    shared.log.info(f'Model load: name=\"{model}\" cls={cls.__name__} repo=\"{repo}\"')\n    kwargs = {}\n    for df in dataframes:\n        c = [x for x in components if x.id == df[0]]\n        if len(c) != 1:\n            debug_log(f'Model load component: id={df[0]} not found')\n            continue\n        c = c[0]\n        if not c.loadable: # not loadable\n            debug_log(f'Model load component: name={c.name} not loadable')\n            continue\n        if c.type != 'class':\n            debug_log(f'Model load component: name={c.name} not class')\n            continue\n        if len(c.local or '') == 0 and len(c.remote or '') == 0:\n            debug_log(f'Model load component: name={c.name} no local or remote')\n            continue\n        instance = c.load()\n        if instance is not None:\n            kwargs[c.name] = instance\n            shared.log.info(f'Model component: instance={instance.__class__.__name__}')\n    shared.log.info(f'Model load: name=\"{model}\" cls={cls.__name__} repo=\"{repo}\" preload={kwargs.keys()}')\n    pipe = None\n    if model == 'Current':\n        for k, v in kwargs.items():\n            debug_log(f'Model replace component={k}')\n            setattr(shared.sd_model, k, v)\n        sd_models.set_diffuser_options(shared.sd_model)\n        return f'Model load: name=\"{model}\" cls={cls.__name__} repo=\"{repo}\" preload={kwargs.keys()}'\n    else:\n        try:\n            pipe = cls.from_pretrained(\n                repo,\n                dtype=devices.dtype,\n                cache_dir=shared.opts.diffusers_dir,\n                **kwargs,\n            )\n        except Exception as e:\n            shared.log.error(f'Model load: name=\"{model}\" {e}')\n            errors.display(e, 'Model load')\n            return f'Model load failed: {e}'\n        if pipe is not None:\n            shared.log.info(f'Model load: name=\"{model}\" cls={cls.__name__} repo=\"{repo}\" instance={pipe.__class__.__name__}')\n            shared.sd_model = pipe\n            shared.sd_model.sd_checkpoint_info = sd_checkpoint.CheckpointInfo(repo)\n            shared.sd_model.sd_model_hash = None\n            sd_models.set_diffuser_options(shared.sd_model)\n            return f'Model load: name=\"{model}\" cls={cls.__name__} repo=\"{repo}\" preload={kwargs.keys()}'\n    return 'Model load: no model'\n\n\ndef unload_model():\n    sd_models.unload_model_weights(op='model')\n    return 'Model unloaded'\n\n\ndef process_huggingface_url(url):\n    if url is None or len(url) == 0:\n        return None, None, None, False\n    url = url.replace('https://huggingface.co/', '').strip() # remove absolute url\n    url = re.sub(r'/blob/[^/]+/', '/', url) # remove /blob/<branch_id>/\n    parts = url.split('/')\n    repo = f\"{parts[0]}/{parts[1]}\" if len(parts) >= 2 else url # get repo\n    subfolder = None\n    fn = None\n    if len(parts) == 3: # can be subfolder or filename\n        if '.' in parts[-1]:\n            fn = parts[-1]\n        else:\n            subfolder = parts[-1]\n    elif len(parts) > 3: # There's at least one subfolder\n        subfolder = '/'.join(parts[2:-1])\n        fn = parts[-1]\n    download = fn is not None\n    return repo, subfolder, fn, download\n\n\nclass Component():\n    def __init__(self, signature, name=None, cls=None, val=None, local=None, remote=None, typ=None, dtype=None, quant=False, loadable=None):\n        self.id = len(components) + 1\n        self.name = signature.name if signature else name\n        self.cls = signature.annotation if signature else cls\n        self.str = str(signature.annotation) if signature else str(cls)\n        self.val = signature.default if signature and signature.default is not inspect.Parameter.empty else val\n        self.remote = remote\n        self.repo, self.subfolder, self.local, self.download = process_huggingface_url(self.remote)\n        self.local = local or self.local\n        self.dtype = str(dtype or devices.dtype).rsplit('.', maxsplit=1)[-1]\n        self.quant = quant\n        self.revision = None\n        self.enum = None\n        if typ is not None:\n            self.type = typ\n        else:\n            if self.cls in [str, int, float, bool]:\n                self.type = 'variable'\n            elif 'enum' in self.str:\n                self.type = 'enum'\n                self.enum = [v.name for v in self.cls]\n            elif inspect.isclass(signature.annotation):\n                self.type = 'class'\n            elif inspect.ismodule(signature.annotation):\n                self.type = 'module'\n            elif inspect.isfunction(signature.annotation):\n                self.type = 'function'\n            elif 'typing.Optional' in self.str:\n                self.type = 'optional'\n                self.cls = signature.annotation.__args__[0]\n                self.str = str(self.cls)\n                self.val = None\n            else:\n                self.type = 'unknown'\n        self.str = re.search(r\"'(.*?)'\", self.str).group(1) if re.search(r\"'(.*?)'\", self.str) else self.str\n        if '.' in self.str:\n            self.str = self.str.split('.')\n            self.str = self.str[0] + '.' + self.str[-1]\n        self.loadable = loadable if loadable is not None else (self.type == 'class' and hasattr(self.cls, 'from_pretrained'))\n        if not self.loadable:\n            self.dtype = None\n            self.quant = None\n\n    def __str__(self):\n        return f'id={self.id} name=\"{self.name}\" cls={self.cls} type={self.type} loadable={self.loadable} val=\"{self.val}\" str=\"{self.str}\" enum=\"{self.enum}\" local=\"{self.local}\" remote=\"{self.remote}\" repo=\"{self.repo}\" subfolder=\"{self.subfolder}\" dtype={self.dtype} quant={self.quant} revision={self.revision}'\n\n    def save(self):\n        return [self.name, self.local, self.remote, self.dtype, self.quant]\n\n    def dataframe(self):\n        return [self.id, self.name, self.loadable, self.val, self.str, self.local, self.remote, self.dtype, self.quant]\n\n    def load(self):\n        if not self.loadable:\n            return None\n        modelloader.hf_login()\n\n        load_args = {}\n        if self.subfolder is not None:\n            load_args['subfolder'] = self.subfolder\n        if self.revision is not None:\n            load_args['revision'] = self.revision\n        if self.dtype is not None:\n            load_args['torch_dtype'] = getattr(torch, self.dtype)\n        if not hasattr(self.cls, 'from_pretrained'):\n            debug_log(f'Model load component: name=\"{self.name}\" cls={self.cls} not loadable')\n            return None\n        quant_args = model_quant.create_config(module='any', allow=self.quant)\n        quant_type = model_quant.get_quant_type(quant_args)\n\n        try:\n            if self.download:\n                debug_log(f'Model load component: url=\"{self.remote}\" args={load_args} quant={quant_type}')\n                self.local = hf_hub_download(\n                    repo_id=self.repo,\n                    subfolder=self.subfolder,\n                    filename=self.local,\n                    revision=self.revision,\n                    cache_dir=shared.opts.hfcache_dir,\n                )\n                if os.path.exists(self.local):\n                    self.download = False\n            if self.local is not None and len(self.local) > 0:\n                if not os.path.exists(self.local):\n                    debug_log(f'Model load component: local=\"{self.local}\" file not found')\n                elif hasattr(self.cls, 'from_single_file') and os.path.isfile(self.local) and self.local.endswith('.safetensors'):\n                    debug_log(f'Model load component: local=\"{self.local}\" type=file args={load_args} quant={quant_type}')\n                    return self.cls.from_single_file(self.local, **load_args, **quant_args, cache_dir=shared.opts.hfcache_dir)\n                elif os.path.isfile(self.local) and self.local.endswith('.gguf'):\n                    debug_log(f'Model load component: local=\"{self.local}\" type=gguf args={load_args} quant={quant_type}')\n                    from modules import ggml\n                    return ggml.load_gguf(self.local, cls=self.cls, compute_dtype=self.dtype)\n                else:\n                    debug_log(f'Model load component: local=\"{self.local}\" type=folder args={load_args} quant={quant_type}')\n                    return self.cls.from_pretrained(self.local, **load_args, **quant_args, cache_dir=shared.opts.hfcache_dir)\n            elif self.repo is not None and len(self.repo) > 0:\n                debug_log(f'Model load component: repo=\"{self.repo}\" args={load_args} quant={quant_type}')\n                return self.cls.from_pretrained(self.repo, **load_args, **quant_args, cache_dir=shared.opts.hfcache_dir)\n            elif self.val is not None and len(self.val) > 0:\n                debug_log(f'Model load component: default=\"{self.val}\" args={load_args} quant={quant_type}')\n                return self.cls.from_pretrained(self.val, **load_args, **quant_args, cache_dir=shared.opts.hfcache_dir)\n            else:\n                debug_log(f'Model load component: name=\"{self.name}\" cls={self.cls} no handler')\n                return None\n        except Exception as e:\n            shared.log.error(f'Model load component: name=\"{self.name}\" {e}')\n            errors.display(e, 'Model load component')\n        return None\n\n\ndef create_ui(gr_status, gr_file):\n    def get_components(cls):\n        if cls is None:\n            return []\n        signature = inspect.signature(cls.__init__, follow_wrapped=True)\n        components.clear()\n        for param in signature.parameters.values():\n            if param.name == 'self' or param.name == 'args' or param.name == 'kwargs':\n                continue\n            component = Component(param)\n            debug_log(f'Model component: {str(component)}')\n            components.append(component)\n        return components\n\n    def get_model(model):\n        if model == 'Current':\n            cls = shared.sd_model.__class__\n        else:\n            cls = shared_items.pipelines.get(model, None)\n        if cls is None:\n            cls = diffusers.AutoPipelineForText2Image\n        name = cls.__name__\n        repo = shared_items.get_repo(name) or shared_items.get_repo(model)\n        link = f'Link<br><br><a href=\"https://huggingface.co/{repo}\" target=\"_blank\">{repo}</a>' if repo else ''\n        get_components(cls)\n        dataframes = [c.dataframe() for c in components]\n        shared.log.debug(f'Model select: name=\"{model}\" cls={name} repo=\"{repo}\" link={link} components={len(components)}')\n        return [name, repo, link, dataframes]\n\n    def update_component(dataframes):\n        for df in dataframes:\n            c = [x for x in components if x.id == df[0]]\n            if len(c) != 1:\n                continue\n            c = c[0]\n            c.local = df[5].strip()\n            c.remote = df[6].strip()\n            c.dtype = df[7]\n            c.quant = df[8]\n            if c.remote and len(c.remote) > 0:\n                c.repo, c.subfolder, c.local, c.download = process_huggingface_url(c.remote)\n\n    # TODO loader: load receipe\n    def load_receipe(file_select):\n        if file_select is not None and 'name' in file_select:\n            fn = file_select['name']\n            shared.log.debug(f'Load receipe: fn={fn}')\n        return ['Load receipe not implemented yet', gr.update(label='Receipe .json file', file_types=['json'], visible=True)]\n\n    # TODO loader: save receipe\n    def save_receipe(model: str, repo: str):\n        receipe = {\n            'model': model,\n            'repo': repo,\n            'components': []\n        }\n        for c in components:\n            if c.loadable:\n                receipe['components'].append(c.save())\n        # with open('/tmp/receipe.json', 'w', encoding='utf8') as f:\n        #    json.dump(receipe, f, indent=2)\n        return 'Save receipe not implemented yet'\n\n    with gr.Row():\n        gr.HTML('<h2>&nbsp<a href=\"https://vladmandic.github.io/sdnext-docs/Loader\" target=\"_blank\">Custom model loader</a><br></h2>')\n    with gr.Row():\n        choices = list(shared_items.pipelines)\n        choices = ['Current' if x.startswith('Custom') else x for x in choices]\n        model = gr.Dropdown(label=\"Model type\", choices=choices, value='Autodetect')\n        cls = gr.Textbox(label=\"Model class\", placeholder=\"Class name\", interactive=False)\n    with gr.Row():\n        repo = gr.Textbox(label=\"Model repo\", placeholder=\"Repo name\", interactive=True)\n        link = gr.HTML(value=\"\")\n    with gr.Row():\n        headers =  ['ID', 'Name', 'Loadable', 'Default', 'Class', 'Local', 'Remote', 'Dtype', 'Quant']\n        datatype = ['number', 'str', 'bool', 'str', 'str', 'str', 'str', 'str', 'bool']\n        dataframes = gr.DataFrame(\n            value=None,\n            label=None,\n            show_label=False,\n            interactive=True,\n            wrap=True,\n            headers=headers,\n            datatype=datatype,\n            type='array',\n            elem_id=\"model_loader_df\",\n        )\n        dataframes.change(fn=update_component, inputs=[dataframes], outputs=[])\n\n    model.change(get_model, inputs=[model], outputs=[cls, repo, link, dataframes])\n\n    with gr.Row():\n        btn_load_receipe = gr.Button(value=\"Load receipe\")\n        btn_save_receipe = gr.Button(value=\"Save receipe\")\n    with gr.Row():\n        btn_load_model = gr.Button(value=\"Load model\")\n        btn_unload_model = gr.Button(value=\"Unload model\")\n\n    btn_load_receipe.click(fn=load_receipe, inputs=[gr_file], outputs=[gr_status, gr_file])\n    btn_save_receipe.click(fn=save_receipe, inputs=[model, repo], outputs=[gr_status])\n    btn_load_model.click(fn=load_model, inputs=[model, cls, repo, dataframes], outputs=[gr_status])\n    btn_unload_model.click(fn=unload_model, inputs=[], outputs=[gr_status])\n"
  },
  {
    "path": "modules/ui_postprocessing.py",
    "content": "import gradio as gr\nfrom modules import scripts_manager, shared, ui_common, postprocessing, call_queue, generation_parameters_copypaste\n\n\ndef submit_info(image):\n    from modules.extras import run_pnginfo\n    from modules.ui_common import infotext_to_html\n    _, geninfo, info = run_pnginfo(image)\n    if hasattr(scripts_manager, 'scripts_postproc'):\n        scripts_manager.scripts_postproc.image_changed()\n    return infotext_to_html(geninfo), info, geninfo\n\n\ndef submit_process(tab_index, extras_image, image_batch, extras_batch_input_dir, extras_batch_output_dir, show_extras_results, save_output, *script_inputs):\n    from modules.ui_common import infotext_to_html\n    result_images, geninfo, _js_info = postprocessing.run_postprocessing(tab_index, extras_image, image_batch, extras_batch_input_dir, extras_batch_output_dir, show_extras_results, *script_inputs, save_output=save_output)\n    return result_images, geninfo, infotext_to_html(geninfo)\n\n\ndef create_ui():\n    shared.log.debug('UI initialize: tab=process')\n    tab_index = gr.State(value=0) # pylint: disable=abstract-class-instantiated\n    with gr.Row(equal_height=False, variant='compact', elem_classes=\"extras\", elem_id=\"extras_tab\"):\n        with gr.Column(variant='compact'):\n            with gr.Tabs(elem_id=\"mode_extras\"):\n                with gr.Tab('Process Image', id=\"single_image\", elem_id=\"extras_single_tab\") as tab_single:\n                    with gr.Row():\n                        extras_image = gr.Image(label=\"Source\", interactive=True, type=\"pil\", elem_id=\"extras_image\")\n                with gr.Tab('Process Batch', id=\"batch_process\", elem_id=\"extras_batch_process_tab\") as tab_batch:\n                    image_batch = gr.Files(label=\"Batch process\", interactive=True, elem_id=\"extras_image_batch\")\n                with gr.Tab('Process Folder', id=\"batch_from_directory\", elem_id=\"extras_batch_directory_tab\") as tab_batch_dir:\n                    extras_batch_input_dir = gr.Textbox(label=\"Input directory\", **shared.hide_dirs, placeholder=\"A directory on the same machine where the server is running.\", elem_id=\"extras_batch_input_dir\")\n                    extras_batch_output_dir = gr.Textbox(label=\"Output directory\", **shared.hide_dirs, placeholder=\"Leave blank to save images to the default path.\", elem_id=\"extras_batch_output_dir\")\n                    show_extras_results = gr.Checkbox(label='Show result images', value=True, elem_id=\"extras_show_extras_results\")\n            with gr.Row():\n                save_output = gr.Checkbox(label='Save output', value=True, elem_id=\"extras_save_output\")\n\n            script_inputs = scripts_manager.scripts_postproc.setup_ui()\n        with gr.Column():\n            id_part = 'extras'\n            with gr.Row(elem_id=f\"{id_part}_generate_box\", elem_classes=\"generate-box\"):\n                submit = gr.Button('Generate', elem_id=f\"{id_part}_generate\", variant='primary')\n                interrupt = gr.Button('Stop', elem_id=f\"{id_part}_interrupt\", variant='secondary')\n                interrupt.click(fn=shared.state.interrupt, inputs=[], outputs=[])\n                skip = gr.Button('Skip', elem_id=f\"{id_part}_skip\", variant='secondary')\n                skip.click(fn=shared.state.skip, inputs=[], outputs=[])\n                pause = gr.Button('Pause', elem_id=f\"{id_part}_pause\")\n                pause.click(fn=shared.state.pause, _js='checkPaused', inputs=[], outputs=[])\n            result_images, generation_info, _html_info, html_info_formatted, _html_log = ui_common.create_output_panel(\"extras\")\n            gr.HTML('File metadata')\n            exif_info = gr.HTML(elem_id=\"pnginfo_html_info\")\n            with gr.Row(elem_id='copy_buttons_process'):\n                copy_process_buttons = generation_parameters_copypaste.create_buttons([\"txt2img\", \"img2img\", \"control\", \"caption\"])\n\n        for tabname, button in copy_process_buttons.items():\n            generation_parameters_copypaste.register_paste_params_button(generation_parameters_copypaste.ParamBinding(paste_button=button, tabname=tabname, source_text_component=generation_info, source_image_component=extras_image))\n        generation_parameters_copypaste.add_paste_fields(\"extras\", extras_image, None)\n\n    tab_single.select(fn=lambda: 0, inputs=[], outputs=[tab_index])\n    tab_batch.select(fn=lambda: 1, inputs=[], outputs=[tab_index])\n    tab_batch_dir.select(fn=lambda: 2, inputs=[], outputs=[tab_index])\n    extras_image.change(fn=submit_info, inputs=[extras_image], outputs=[html_info_formatted, exif_info, generation_info])\n    submit.click(\n        _js=\"submit_postprocessing\",\n        fn=call_queue.wrap_gradio_gpu_call(submit_process, extra_outputs=[None, ''], name='Postprocess'),\n        inputs=[\n            tab_index,\n            extras_image,\n            image_batch,\n            extras_batch_input_dir,\n            extras_batch_output_dir,\n            show_extras_results,\n            save_output,\n            *script_inputs,\n        ],\n        outputs=[\n            result_images,\n            generation_info,\n            html_info_formatted,\n        ]\n    )\n"
  },
  {
    "path": "modules/ui_prompt_styles.py",
    "content": "# a1111 compatibility item, not used\n\nimport gradio as gr\nfrom modules import shared, styles\n\nstyles_edit_symbol = '\\U0001f58c\\uFE0F'  # 🖌️\nstyles_materialize_symbol = '\\U0001f4cb'  # 📋\n\n\ndef select_style(name):\n    style = shared.prompt_styles.styles.get(name)\n    existing = style is not None\n    empty = not name\n    prompt = style.prompt if style else gr.update()\n    negative_prompt = style.negative_prompt if style else gr.update()\n    return prompt, negative_prompt, gr.update(visible=existing), gr.update(visible=not empty)\n\n\ndef save_style(name, prompt, negative_prompt):\n    if not name:\n        return gr.update(visible=False)\n    style = styles.Style(name, prompt, negative_prompt)\n    shared.prompt_styles.styles[style.name] = style\n    shared.prompt_styles.save_styles('')\n    return gr.update(visible=True)\n\n\ndef delete_style(name):\n    if name == \"\":\n        return '', '', ''\n    shared.prompt_styles.styles.pop(name, None)\n    shared.prompt_styles.save_styles('')\n    return '', '', ''\n\n\ndef materialize_styles(prompt, negative_prompt, styles): # pylint: disable=redefined-outer-name\n    prompt = shared.prompt_styles.apply_styles_to_prompt(prompt, styles)\n    negative_prompt = shared.prompt_styles.apply_negative_styles_to_prompt(negative_prompt, styles)\n    return [gr.Textbox.update(value=prompt), gr.Textbox.update(value=negative_prompt), gr.Dropdown.update(value=[])]\n\n\ndef refresh_styles():\n    return gr.update(choices=list(shared.prompt_styles.styles)), gr.update(choices=list(shared.prompt_styles.styles))\n\n\nclass UiPromptStyles:\n    def __init__(self, tabname, main_ui_prompt, main_ui_negative_prompt): # pylint: disable=unused-argument\n        self.dropdown = gr.Dropdown(label=\"Styles\", elem_id=f\"{tabname}_styles\", choices=[style.name for style in shared.prompt_styles.styles.values()], value=[], multiselect=True)\n"
  },
  {
    "path": "modules/ui_sections.py",
    "content": "import gradio as gr\nfrom modules import shared, modelloader, ui_symbols, ui_common, sd_samplers\nfrom modules.ui_components import ToolButton\nfrom modules.interrogate import interrogate\n\n\ndef create_toprow(is_img2img: bool = False, id_part: str = None, generate_visible: bool = True, negative_visible: bool = True, reprocess_visible: bool = True):\n    def apply_styles(prompt, prompt_neg, styles):\n        prompt = shared.prompt_styles.apply_styles_to_prompt(prompt, styles, wildcards=not shared.opts.extra_networks_apply_unparsed)\n        prompt_neg = shared.prompt_styles.apply_negative_styles_to_prompt(prompt_neg, styles, wildcards=not shared.opts.extra_networks_apply_unparsed)\n        return [gr.Textbox.update(value=prompt), gr.Textbox.update(value=prompt_neg), gr.Dropdown.update(value=[])]\n\n    def parse_style(styles):\n        return styles.split('|') if styles is not None else None\n\n    if id_part is None:\n        id_part = \"img2img\" if is_img2img else \"txt2img\"\n    with gr.Row(elem_id=f\"{id_part}_toprow\", variant=\"compact\"):\n        with gr.Column(elem_id=f\"{id_part}_prompt_container\", scale=4):\n            with gr.Row():\n                with gr.Column(scale=80):\n                    with gr.Row(elem_id=f\"{id_part}_prompt_row\"):\n                        prompt = gr.Textbox(elem_id=f\"{id_part}_prompt\", label=\"Prompt\", show_label=False, lines=3 if negative_visible else 5, placeholder=\"Prompt\", elem_classes=[\"prompt\", \"main-prompts\"])\n            with gr.Row():\n                with gr.Column(scale=80):\n                    with gr.Row(elem_id=f\"{id_part}_negative_row\"):\n                        negative_prompt = gr.Textbox(elem_id=f\"{id_part}_neg_prompt\", label=\"Negative prompt\", show_label=False, lines=3, placeholder=\"Negative prompt\", elem_classes=[\"prompt\", \"main-prompts\"], visible=negative_visible)\n        with gr.Column(scale=1, elem_id=f\"{id_part}_actions_column\"):\n            with gr.Row(elem_id=f\"{id_part}_generate_box\"):\n                reprocess = []\n                submit = gr.Button('Generate', elem_id=f\"{id_part}_generate\", variant='primary', visible=generate_visible)\n                if reprocess_visible:\n                    reprocess.append(gr.Button('Reprocess', elem_id=f\"{id_part}_reprocess\", variant='primary', visible=True))\n                    reprocess.append(gr.Button('Reprocess decode', elem_id=f\"{id_part}_reprocess_decode\", variant='primary', visible=False))\n                    reprocess.append(gr.Button('Reprocess refine', elem_id=f\"{id_part}_reprocess_refine\", variant='primary', visible=False))\n                    reprocess.append(gr.Button('Reprocess face', elem_id=f\"{id_part}_reprocess_detail\", variant='primary', visible=False))\n            with gr.Row(elem_id=f\"{id_part}_generate_line2\"):\n                interrupt = gr.Button('Stop', elem_id=f\"{id_part}_interrupt\")\n                interrupt.click(fn=lambda: shared.state.interrupt(), _js=\"requestInterrupt\", inputs=[], outputs=[])\n                skip = gr.Button('Skip', elem_id=f\"{id_part}_skip\")\n                skip.click(fn=lambda: shared.state.skip(), inputs=[], outputs=[])\n                pause = gr.Button('Pause', elem_id=f\"{id_part}_pause\")\n                pause.click(fn=lambda: shared.state.pause(), _js='checkPaused', inputs=[], outputs=[])\n            with gr.Row(elem_id=f\"{id_part}_tools\"):\n                button_paste = gr.Button(value='Restore', variant='secondary', elem_id=f\"{id_part}_paste\") # symbols.paste\n                button_clear = gr.Button(value='Clear', variant='secondary', elem_id=f\"{id_part}_clear_prompt_btn\") # symbols.clear\n                button_extra = gr.Button(value='Networks', variant='secondary', elem_id=f\"{id_part}_extra_networks_btn\") # symbols.networks\n                button_clear.click(fn=lambda *x: ['', ''], inputs=[prompt, negative_prompt], outputs=[prompt, negative_prompt], show_progress='hidden')\n            with gr.Row(elem_id=f\"{id_part}_counters\"):\n                token_counter = gr.HTML(value=\"<span>0/75</span>\", elem_id=f\"{id_part}_token_counter\", elem_classes=[\"token-counter\"], visible=False)\n                token_button = gr.Button(visible=False, elem_id=f\"{id_part}_token_button\")\n                negative_token_counter = gr.HTML(value=\"<span>0/75</span>\", elem_id=f\"{id_part}_negative_token_counter\", elem_classes=[\"token-counter\"], visible=False)\n                negative_token_button = gr.Button(visible=False, elem_id=f\"{id_part}_negative_token_button\")\n            with gr.Row(elem_id=f\"{id_part}_styles_row\"):\n                styles = gr.Dropdown(label=\"Styles\", elem_id=f\"{id_part}_styles\", choices=[style.name for style in shared.prompt_styles.styles.values()], value=[], multiselect=True)\n                _styles_btn_refresh = ui_common.create_refresh_button(styles, shared.prompt_styles.reload, lambda: {\"choices\": [style.name for style in shared.prompt_styles.styles.values()]}, f\"{id_part}_styles_refresh\")\n                styles_btn_select = ToolButton('Select', elem_id=f\"{id_part}_styles_select\", visible=False)\n                styles_btn_apply = ToolButton(ui_symbols.style_apply, elem_id=f\"{id_part}_styles_apply\", visible=True)\n                styles_btn_save = ToolButton(ui_symbols.style_save, elem_id=f\"{id_part}_styles_save\", visible=True)\n                styles_btn_select.click(_js=\"applyStyles\", fn=parse_style, inputs=[styles], outputs=[styles], show_progress='hidden')\n                styles_btn_apply.click(fn=apply_styles, inputs=[prompt, negative_prompt, styles], outputs=[prompt, negative_prompt, styles], show_progress='hidden')\n                styles_btn_save.click(fn=lambda: None, _js='() => quickSaveStyle()', inputs=[], outputs=[], show_progress='hidden')\n    return prompt, styles, negative_prompt, submit, reprocess, button_paste, button_extra, token_counter, token_button, negative_token_counter, negative_token_button\n\n\ndef ar_change(ar, width, height):\n    if ar == 'AR':\n        return gr.update(), gr.update()\n    try:\n        (w, h) = [float(x) for x in ar.split(':')]\n    except Exception as e:\n        shared.log.warning(f\"Invalid aspect ratio: {ar} {e}\")\n        return gr.update(), gr.update()\n    if w > h:\n        return gr.update(), gr.update(value=int(width * h / w))\n    elif w < h:\n        return gr.update(value=int(height * w / h)), gr.update()\n    else:\n        return gr.update(), gr.update()\n\n\ndef create_resolution_inputs(tab, default_width=1024, default_height=1024):\n    width = gr.Slider(minimum=64, maximum=4096, step=8, label=\"Width\", value=default_width, elem_id=f\"{tab}_width\")\n    height = gr.Slider(minimum=64, maximum=4096, step=8, label=\"Height\", value=default_height, elem_id=f\"{tab}_height\")\n    ar_list = ['AR'] + [x.strip() for x in shared.opts.aspect_ratios.split(',') if x.strip() != '']\n    ar_dropdown = gr.Dropdown(show_label=False, interactive=True, choices=ar_list, value=ar_list[0], elem_id=f\"{tab}_ar\", elem_classes=[\"ar-dropdown\"])\n    for c in [ar_dropdown, width, height]:\n        c.change(fn=ar_change, inputs=[ar_dropdown, width, height], outputs=[width, height], show_progress='hidden')\n    res_switch_btn = ToolButton(value=ui_symbols.switch, elem_id=f\"{tab}_res_btn_swap\")\n    res_switch_btn.click(lambda w, h: (h, w), inputs=[width, height], outputs=[width, height], show_progress='hidden')\n    return width, height\n\n\ndef create_interrogate_button(tab: str, inputs: list = None, outputs: str = None, what: str = ''):\n    button_interrogate = gr.Button(ui_symbols.interrogate, elem_id=f\"{tab}_interrogate_{what}\", elem_classes=['interrogate'])\n    if inputs is not None and outputs is not None:\n        button_interrogate.click(fn=interrogate.interrogate, inputs=inputs, outputs=[outputs])\n    return button_interrogate\n\n\ndef create_batch_inputs(tab, accordion=True):\n    with gr.Accordion(open=False, label=\"Batch\", elem_id=f\"{tab}_batch\", elem_classes=[\"small-accordion\"]) if accordion else gr.Group():\n        with gr.Row(elem_id=f\"{tab}_row_batch\"):\n            batch_count = gr.Slider(minimum=1, step=1, label='Batch count', value=1, elem_id=f\"{tab}_batch_count\", scale=5)\n            batch_size = gr.Slider(minimum=1, maximum=32, step=1, label='Batch size', value=1, elem_id=f\"{tab}_batch_size\", scale=5)\n    return batch_count, batch_size\n\n\ndef create_seed_inputs(tab, reuse_visible=True, accordion=True, subseed_visible=True, seed_resize_visible=False):\n    with gr.Accordion(open=False, label=\"Seed\", elem_id=f\"{tab}_seed_group\", elem_classes=[\"small-accordion\"]) if accordion else gr.Group():\n        with gr.Row(elem_id=f\"{tab}_seed_row\", variant=\"compact\"):\n            seed = gr.Number(label='Initial seed', value=-1, elem_id=f\"{tab}_seed\", container=True)\n            random_seed = ToolButton(ui_symbols.random, elem_id=f\"{tab}_seed_random\")\n            reuse_seed = ToolButton(ui_symbols.reuse, elem_id=f\"{tab}_seed_reuse\", visible=reuse_visible)\n        with gr.Row(elem_id=f\"{tab}_subseed_row\", variant=\"compact\", visible=subseed_visible):\n            subseed = gr.Number(label='Variation', value=-1, elem_id=f\"{tab}_subseed\", container=True)\n            random_subseed = ToolButton(ui_symbols.random, elem_id=f\"{tab}_subseed_random\")\n            reuse_subseed = ToolButton(ui_symbols.reuse, elem_id=f\"{tab}_subseed_reuse\", visible=reuse_visible)\n            subseed_strength = gr.Slider(label='Variation strength', value=0.0, minimum=0, maximum=1, step=0.01, elem_id=f\"{tab}_subseed_strength\", elem_classes=[\"subseed-strength\"])\n        with gr.Row(visible=seed_resize_visible):\n            seed_resize_from_w = gr.Slider(minimum=0, maximum=4096, step=8, label=\"Resize seed from width\", value=0, elem_id=f\"{tab}_seed_resize_from_w\")\n            seed_resize_from_h = gr.Slider(minimum=0, maximum=4096, step=8, label=\"Resize seed from height\", value=0, elem_id=f\"{tab}_seed_resize_from_h\")\n        random_seed.click(fn=lambda: -1, show_progress='hidden', inputs=[], outputs=[seed])\n        random_subseed.click(fn=lambda: -1, show_progress='hidden', inputs=[], outputs=[subseed])\n    return seed, reuse_seed, subseed, reuse_subseed, subseed_strength, seed_resize_from_h, seed_resize_from_w\n\n\ndef create_video_inputs(tab:str, show_always:bool=False):\n    def video_type_change(video_type):\n        return [\n            gr.update(visible=video_type != 'None' or show_always),\n            gr.update(visible=video_type in ['GIF', 'PNG'] or show_always),\n            gr.update(visible=video_type not in ['None', 'GIF', 'PNG'] or show_always),\n            gr.update(visible=video_type not in ['None', 'GIF', 'PNG'] or show_always),\n        ]\n    with gr.Row():\n        video_codecs = ['None', 'GIF', 'PNG', 'MP4/MP4V', 'MP4/AVC1', 'MP4/JVT3', 'MKV/H264', 'AVI/DIVX', 'AVI/RGBA', 'MJPEG/MJPG', 'MPG/MPG1', 'AVR/AVR1']\n        video_type = gr.Dropdown(label='Video format', choices=video_codecs, value='MP4/MP4V', elem_id=f\"{tab}_video_type\")\n    with gr.Row():\n        video_duration = gr.Slider(label='Video duration', minimum=0.25, maximum=300, step=0.25, value=2, visible=show_always, elem_id=f\"{tab}_video_duration\")\n        video_loop = gr.Checkbox(label='Loop video', value=True, visible=show_always, elem_id=f\"{tab}_video_loop\")\n    with gr.Row():\n        video_pad = gr.Slider(label='Pad frames', minimum=0, maximum=24, step=1, value=1, visible=show_always, elem_id=f\"{tab}_video_pad\")\n        video_interpolate = gr.Slider(label='Interpolate frames', minimum=0, maximum=24, step=1, value=0, visible=show_always, elem_id=f\"{tab}_video_interpolate\")\n    video_type.change(fn=video_type_change, inputs=[video_type], outputs=[video_duration, video_loop, video_pad, video_interpolate])\n    return video_type, video_duration, video_loop, video_pad, video_interpolate\n\n\ndef create_advanced_inputs(tab):\n    with gr.Accordion(open=False, label=\"Advanced\", elem_id=f\"{tab}_advanced\", elem_classes=[\"small-accordion\"]):\n        with gr.Group():\n            with gr.Row():\n                clip_skip = gr.Slider(label='CLiP skip', value=1, minimum=0, maximum=12, step=0.1, elem_id=f\"{tab}_clip_skip\", interactive=shared.opts.clip_skip_enabled)\n            with gr.Row(elem_id=f\"{tab}_vae_options\"):\n                vae_type = gr.Dropdown(label='VAE type', choices=['Full', 'Tiny', 'Remote'], value='Full', elem_id=f\"{tab}_vae_type\")\n            with gr.Row(elem_id=f\"{tab}_advanced_options\"):\n                tiling = gr.Checkbox(label='Texture tiling', value=False, elem_id=f\"{tab}_tiling\")\n                hidiffusion = gr.Checkbox(label='HiDiffusion', value=False, elem_id=f\"{tab}_hidiffusion\")\n    return vae_type, tiling, hidiffusion, clip_skip\n\n\ndef create_correction_inputs(tab):\n    with gr.Accordion(open=False, label=\"Corrections\", elem_id=f\"{tab}_corrections\", elem_classes=[\"small-accordion\"]):\n        with gr.Group():\n            with gr.Row(elem_id=f\"{tab}_hdr_mode_row\"):\n                hdr_mode = gr.Dropdown(label=\"Correction mode\", choices=[\"Relative values\", \"Absolute values\"], type=\"index\", value=\"Relative values\", elem_id=f\"{tab}_hdr_mode\", show_label=False)\n                gr.HTML('<br>')\n            with gr.Row(elem_id=f\"{tab}_correction_row\"):\n                hdr_brightness = gr.Slider(minimum=-1.0, maximum=1.0, step=0.1, value=0,  label='Brightness', elem_id=f\"{tab}_hdr_brightness\")\n                hdr_sharpen = gr.Slider(minimum=-1.0, maximum=1.0, step=0.1, value=0,  label='Sharpen', elem_id=f\"{tab}_hdr_sharpen\")\n                hdr_color = gr.Slider(minimum=0.0, maximum=4.0, step=0.1, value=0.0,  label='Color', elem_id=f\"{tab}_hdr_color\")\n            with gr.Row(elem_id=f\"{tab}_hdr_clamp_row\"):\n                hdr_clamp = gr.Checkbox(label='HDR clamp', value=False, elem_id=f\"{tab}_hdr_clamp\")\n                hdr_boundary = gr.Slider(minimum=0.0, maximum=10.0, step=0.1, value=4.0,  label='Range', elem_id=f\"{tab}_hdr_boundary\")\n                hdr_threshold = gr.Slider(minimum=0.0, maximum=1.0, step=0.01, value=0.95,  label='Threshold', elem_id=f\"{tab}_hdr_threshold\")\n            with gr.Row(elem_id=f\"{tab}_hdr_max_row\"):\n                hdr_maximize = gr.Checkbox(label='HDR maximize', value=False, elem_id=f\"{tab}_hdr_maximize\")\n                hdr_max_center = gr.Slider(minimum=0.0, maximum=2.0, step=0.1, value=0.6,  label='Center', elem_id=f\"{tab}_hdr_max_center\")\n                hdr_max_boundary = gr.Slider(minimum=0.5, maximum=2.0, step=0.1, value=1.0,  label='Max Range', elem_id=f\"{tab}_hdr_max_boundary\")\n            with gr.Row(elem_id=f\"{tab}_hdr_color_row\"):\n                hdr_color_picker = gr.ColorPicker(label=\"Color\", show_label=True, container=False, value=None, elem_id=f\"{tab}_hdr_color_picker\")\n                hdr_tint_ratio = gr.Slider(label='Color grading', minimum=-1.0, maximum=1.0, step=0.05, value=0.0, elem_id=f\"{tab}_hdr_tint_ratio\")\n        return hdr_mode, hdr_brightness, hdr_color, hdr_sharpen, hdr_clamp, hdr_boundary, hdr_threshold, hdr_maximize, hdr_max_center, hdr_max_boundary, hdr_color_picker, hdr_tint_ratio\n\n\ndef create_sampler_and_steps_selection(choices, tabname, default_steps:int=20):\n    if choices is None:\n        sd_samplers.set_samplers()\n        choices = [x for x in sd_samplers.samplers if not x.name == 'Same as primary']\n    with gr.Row(elem_id=f\"{tabname}_sampler_row\", elem_classes=['flex-break', 'flexbox']):\n        steps = gr.Slider(minimum=1, maximum=100, step=1, label=\"Steps\", elem_id=f\"{tabname}_steps\", value=default_steps)\n        sampler_index = gr.Dropdown(label='Sampling method', elem_id=f\"{tabname}_sampling\", choices=[x.name for x in choices], value='Default', type=\"index\")\n    return steps, sampler_index\n\n\ndef create_sampler_options(tabname):\n    def set_sampler_options(sampler_options):\n        shared.opts.data['schedulers_dynamic_shift'] = 'dynamic' in sampler_options\n        shared.opts.data['schedulers_use_thresholding'] = 'thresholding' in sampler_options\n        shared.opts.data['schedulers_use_loworder'] = 'low order' in sampler_options\n        shared.opts.data['schedulers_rescale_betas'] = 'rescale' in sampler_options\n        shared.log.debug(f'Sampler set options: {sampler_options}')\n        shared.opts.save(silent=True)\n\n    def set_sampler_timesteps(timesteps):\n        shared.log.debug(f'Sampler set options: timesteps={timesteps}')\n        shared.opts.schedulers_timesteps = timesteps\n        shared.opts.save(silent=True)\n\n    def set_sampler_spacing(spacing):\n        shared.log.debug(f'Sampler set options: spacing={spacing}')\n        shared.opts.schedulers_timestep_spacing = spacing\n        shared.opts.save(silent=True)\n\n    def set_sampler_sigma(sampler_sigma):\n        shared.log.debug(f'Sampler set options: sigma={sampler_sigma}')\n        shared.opts.schedulers_sigma = sampler_sigma\n        shared.opts.save(silent=True)\n\n    def set_sampler_order(sampler_order):\n        shared.log.debug(f'Sampler set options: order={sampler_order}')\n        shared.opts.schedulers_solver_order = sampler_order\n        shared.opts.save(silent=True)\n\n    def set_sampler_prediction(sampler_prediction):\n        shared.log.debug(f'Sampler set options: prediction={sampler_prediction}')\n        shared.opts.schedulers_prediction_type = sampler_prediction\n        shared.opts.save(silent=True)\n\n    def set_sampler_beta(sampler_beta):\n        shared.log.debug(f'Sampler set options: beta={sampler_beta}')\n        shared.opts.schedulers_beta_schedule = sampler_beta\n        shared.opts.save(silent=True)\n\n    def set_sampler_shift(sampler_shift, sampler_base_shift, sampler_max_shift):\n        shared.log.debug(f'Sampler set options: shift={sampler_shift} base={sampler_base_shift} max={sampler_max_shift}')\n        shared.opts.schedulers_shift = sampler_shift\n        shared.opts.schedulers_base_shift = sampler_base_shift\n        shared.opts.schedulers_max_shift = sampler_max_shift\n        shared.opts.save(silent=True)\n\n    def set_sigma_adjust(val, start, end):\n        shared.log.debug(f'Sampler set options: sigma={val} min={start} max={end}')\n        shared.opts.schedulers_sigma_adjust = val\n        shared.opts.schedulers_sigma_adjust_min = start\n        shared.opts.schedulers_sigma_adjust_max = end\n        shared.opts.save(silent=True)\n\n    # 'linear', 'scaled_linear', 'squaredcos_cap_v2'\n    def set_sampler_preset(preset):\n        if preset == 'AYS SD15':\n            return '999,850,736,645,545,455,343,233,124,24'\n        if preset == 'AYS SDXL':\n            return '999,845,730,587,443,310,193,116,53,13'\n        return ''\n\n    with gr.Row(elem_classes=['flex-break']):\n        sampler_sigma = gr.Dropdown(label='Sigma method', elem_id=f\"{tabname}_sampler_sigma\", choices=['default', 'karras', 'betas', 'exponential', 'lambdas', 'flowmatch'], value=shared.opts.schedulers_sigma, type='value')\n        sampler_spacing = gr.Dropdown(label='Timestep spacing', elem_id=f\"{tabname}_sampler_spacing\", choices=['default', 'linspace', 'leading', 'trailing'], value=shared.opts.schedulers_timestep_spacing, type='value')\n    with gr.Row(elem_classes=['flex-break']):\n        sampler_beta = gr.Dropdown(label='Beta schedule', elem_id=f\"{tabname}_sampler_beta\", choices=['default', 'linear', 'scaled', 'cosine', 'sigmoid', 'laplace'], value=shared.opts.schedulers_beta_schedule, type='value')\n        sampler_prediction = gr.Dropdown(label='Prediction method', elem_id=f\"{tabname}_sampler_prediction\", choices=['default', 'epsilon', 'sample', 'v_prediction', 'flow_prediction'], value=shared.opts.schedulers_prediction_type, type='value')\n    with gr.Row(elem_classes=['flex-break']):\n        sampler_presets = gr.Dropdown(label='Timesteps presets', elem_id=f\"{tabname}_sampler_presets\", choices=['None', 'AYS SD15', 'AYS SDXL'], value='None', type='value')\n        sampler_timesteps = gr.Textbox(label='Timesteps override', elem_id=f\"{tabname}_sampler_timesteps\", value=shared.opts.schedulers_timesteps)\n    with gr.Row(elem_classes=['flex-break']):\n        sampler_sigma_adjust_val = gr.Slider(minimum=0.5, maximum=1.5, step=0.01, label='Sigma adjust', value=shared.opts.schedulers_sigma_adjust, elem_id=f\"{tabname}_sampler_sigma_adjust\")\n        sampler_sigma_adjust_min = gr.Slider(minimum=0.0, maximum=1.0, step=0.01, label='Adjust start', value=shared.opts.schedulers_sigma_adjust_min, elem_id=f\"{tabname}_sampler_sigma_adjust_min\")\n        sampler_sigma_adjust_max = gr.Slider(minimum=0.0, maximum=1.0, step=0.01, label='Adjust end', value=shared.opts.schedulers_sigma_adjust_max, elem_id=f\"{tabname}_sampler_sigma_adjust_max\")\n    with gr.Row(elem_classes=['flex-break']):\n        sampler_order = gr.Slider(minimum=0, maximum=5, step=1, label=\"Sampler order\", value=shared.opts.schedulers_solver_order, elem_id=f\"{tabname}_sampler_order\")\n    with gr.Row(elem_classes=['flex-break']):\n        sampler_shift = gr.Slider(minimum=0, maximum=10, step=0.1, label=\"Flow shift\", value=shared.opts.schedulers_shift, elem_id=f\"{tabname}_sampler_shift\")\n        sampler_base_shift = gr.Slider(minimum=0, maximum=10, step=0.01, label=\"Base shift\", value=shared.opts.schedulers_base_shift, elem_id=f\"{tabname}_sampler_base_shift\")\n        sampler_max_shift = gr.Slider(minimum=0, maximum=10, step=0.01, label=\"Max shift\", value=shared.opts.schedulers_max_shift, elem_id=f\"{tabname}_sampler_max_shift\")\n    with gr.Row(elem_classes=['flex-break']):\n        options = ['low order', 'thresholding', 'dynamic', 'rescale']\n        values = []\n        values += ['low order'] if shared.opts.data.get('schedulers_use_loworder', True) else []\n        values += ['thresholding'] if shared.opts.data.get('schedulers_use_thresholding', False) else []\n        values += ['dynamic'] if shared.opts.data.get('schedulers_dynamic_shift', False) else []\n        values += ['rescale'] if shared.opts.data.get('schedulers_rescale_betas', False) else []\n        sampler_options = gr.CheckboxGroup(label='Options', elem_id=f\"{tabname}_sampler_options\", choices=options, value=values, type='value')\n\n    sampler_sigma.change(fn=set_sampler_sigma, inputs=[sampler_sigma], outputs=[])\n    sampler_spacing.change(fn=set_sampler_spacing, inputs=[sampler_spacing], outputs=[])\n    sampler_presets.change(fn=set_sampler_preset, inputs=[sampler_presets], outputs=[sampler_timesteps])\n    sampler_timesteps.change(fn=set_sampler_timesteps, inputs=[sampler_timesteps], outputs=[])\n    sampler_beta.change(fn=set_sampler_beta, inputs=[sampler_beta], outputs=[])\n    sampler_prediction.change(fn=set_sampler_prediction, inputs=[sampler_prediction], outputs=[])\n    sampler_order.change(fn=set_sampler_order, inputs=[sampler_order], outputs=[])\n    sampler_shift.change(fn=set_sampler_shift, inputs=[sampler_shift, sampler_base_shift, sampler_max_shift], outputs=[])\n    sampler_options.change(fn=set_sampler_options, inputs=[sampler_options], outputs=[])\n    sampler_sigma_adjust_val.change(fn=set_sigma_adjust, inputs=[sampler_sigma_adjust_val, sampler_sigma_adjust_min, sampler_sigma_adjust_max], outputs=[])\n    sampler_sigma_adjust_min.change(fn=set_sigma_adjust, inputs=[sampler_sigma_adjust_val, sampler_sigma_adjust_min, sampler_sigma_adjust_max], outputs=[])\n    sampler_sigma_adjust_max.change(fn=set_sigma_adjust, inputs=[sampler_sigma_adjust_val, sampler_sigma_adjust_min, sampler_sigma_adjust_max], outputs=[])\n\n\ndef create_hires_inputs(tab):\n    with gr.Accordion(open=False, label=\"Refine\", elem_id=f\"{tab}_refine_accordion\", elem_classes=[\"small-accordion\"]):\n        with gr.Row(elem_id=f\"{tab}_hires_row1\"):\n            enable_hr = gr.Checkbox(label='Enable refine pass', value=False, elem_id=f\"{tab}_enable_hr\")\n        hr_resize_mode, hr_upscaler, hr_resize_context, hr_resize_x, hr_resize_y, hr_scale, _selected_scale_tab = create_resize_inputs(tab, None, accordion=False, latent=True, non_zero=False)\n        with gr.Row(elem_id=f\"{tab}_hires_fix_row2\"):\n            hr_force = gr.Checkbox(label='Force HiRes', value=False, elem_id=f\"{tab}_hr_force\")\n        with gr.Row(elem_id=f\"{tab}_hires_fix_row2\"):\n            hr_sampler_index = gr.Dropdown(label='Refine sampler', elem_id=f\"{tab}_sampling_alt\", choices=[x.name for x in sd_samplers.samplers], value='Same as primary', type=\"index\")\n        with gr.Row(elem_id=f\"{tab}_hires_row2\"):\n            hr_second_pass_steps = gr.Slider(minimum=0, maximum=99, step=1, label='HiRes steps', elem_id=f\"{tab}_steps_alt\", value=20)\n            denoising_strength = gr.Slider(minimum=0.0, maximum=0.99, step=0.01, label='Strength', value=0.3, elem_id=f\"{tab}_denoising_strength\")\n        with gr.Row(elem_id=f\"{tab}_refiner_row1\"):\n            refiner_start = gr.Slider(minimum=0.0, maximum=1.0, step=0.05, label='Refiner start', value=0.0, elem_id=f\"{tab}_refiner_start\")\n            refiner_steps = gr.Slider(minimum=0, maximum=99, step=1, label=\"Refiner steps\", elem_id=f\"{tab}_refiner_steps\", value=20)\n        refiner_prompt = gr.Textbox(value='', lines=2, label='Refine prompt', elem_id=f\"{tab}_refiner_prompt\", elem_classes=[\"prompt\"], placeholder=\"refine prompt or leave empty to use main prompt\")\n        refiner_negative = gr.Textbox(value='', lines=2, label='Refine negative prompt', elem_id=f\"{tab}_refiner_neg_prompt\", elem_classes=[\"prompt\"], placeholder=\"refine negative prompt or leave empty to use main prompt\")\n    return enable_hr, hr_sampler_index, denoising_strength, hr_resize_mode, hr_resize_context, hr_upscaler, hr_force, hr_second_pass_steps, hr_scale, hr_resize_x, hr_resize_y, refiner_steps, refiner_start, refiner_prompt, refiner_negative\n\n\ndef create_resize_inputs(tab, images, accordion=True, latent=False, non_zero=True, prefix=''):\n    dummy_component = gr.Number(visible=False, value=0)\n    if len(prefix) > 0 and not prefix.startswith(' '):\n        prefix = f' {prefix}' if prefix != 'before' else ''\n    with gr.Accordion(open=False, label=\"Resize\", elem_classes=[\"small-accordion\"], elem_id=f\"{tab}_resize_group\") if accordion else gr.Group():\n        with gr.Row():\n            available_upscalers = [x.name for x in shared.sd_upscalers]\n            if not latent:\n                available_upscalers = [x for x in available_upscalers if not x.lower().startswith('latent')]\n            resize_mode = gr.Dropdown(label=f\"Mode{prefix}\" if non_zero else \"Resize mode\", elem_id=f\"{tab}_resize_mode\", choices=shared.resize_modes, type=\"index\", value='Fixed')\n            resize_name = gr.Dropdown(label=f\"Method{prefix}\" if non_zero else \"Resize method\", elem_id=f\"{tab}_resize_name\", choices=available_upscalers, value=available_upscalers[0], visible=True)\n            resize_context_choices = [\"Add with forward\", \"Remove with forward\", \"Add with backward\", \"Remove with backward\"]\n            resize_context = gr.Dropdown(label=f\"Context{prefix}\", elem_id=f\"{tab}_resize_context\", choices=resize_context_choices, value=resize_context_choices[0], visible=False)\n            resize_refresh_btn = ui_common.create_refresh_button(resize_name, modelloader.load_upscalers, lambda: {\"choices\": modelloader.load_upscalers()}, f'{tab}_upscalers_refresh')\n\n            def resize_mode_change(mode):\n                if mode is None or mode == 0:\n                    return gr.update(visible=False), gr.update(visible=False), gr.update(visible=False)\n                return gr.update(visible=mode != 5), gr.update(visible=mode == 5), gr.update(visible=mode != 5)\n            resize_mode.change(fn=resize_mode_change, inputs=[resize_mode], outputs=[resize_name, resize_context, resize_refresh_btn])\n\n        with gr.Row(visible=True) as _resize_group:\n            with gr.Column(elem_id=f\"{tab}_column_size\"):\n                selected_scale_tab = gr.State(value=0 if tab != 'img2img' else 1) # pylint: disable=abstract-class-instantiated\n                with gr.Tabs(elem_id=f\"{tab}_scale_tabs\", selected=0 if non_zero else 1):\n                    with gr.Tab(label=\"Fixed\", id=0, elem_id=f\"{tab}_scale_tab_fixed\") as tab_scale_to:\n                        with gr.Row(elem_id=f\"{tab}_resize_row_fixed\"):\n                            with gr.Column(elem_id=f\"{tab}_column_fixed1\", scale=6):\n                                suffix = '_resize' if tab != 'img2img' else ''\n                                width = gr.Slider(minimum=64 if non_zero else 0, maximum=8192, step=8, label=f\"Width{prefix}\" if non_zero else \"Resize width\", value=1024 if non_zero else 0, elem_id=f\"{tab}{suffix}_width\")\n                                height = gr.Slider(minimum=64 if non_zero else 0, maximum=8192, step=8, label=f\"Height{prefix}\" if non_zero else \"Resize height\", value=1024 if non_zero else 0, elem_id=f\"{tab}{suffix}_height\")\n                            with gr.Column(elem_id=f\"{tab}_column_fixed2\", scale=1):\n                                ar_list = ['AR'] + [x.strip() for x in shared.opts.aspect_ratios.split(',') if x.strip() != '']\n                                ar_dropdown = gr.Dropdown(show_label=False, interactive=True, choices=ar_list, value=ar_list[0], elem_id=f\"{tab}_resize_ar\", elem_classes=[\"ar-dropdown\"])\n                                for c in [ar_dropdown, width, height]:\n                                    c.change(fn=ar_change, inputs=[ar_dropdown, width, height], outputs=[width, height], show_progress='hidden')\n                                res_switch_btn = ToolButton(value=ui_symbols.switch, elem_id=f\"{tab}_resize_size_swap\")\n                                res_switch_btn.click(lambda w, h: (h, w), inputs=[width, height], outputs=[width, height], show_progress='hidden')\n                                detect_image_size_btn = ToolButton(value=ui_symbols.detect, elem_id=f\"{tab}_resize_detect_size\")\n                                el = tab.split('_')[0]\n                                detect_image_size_btn.click(fn=lambda w, h, _: (w or gr.update(), h or gr.update()), _js=f'currentImageResolution{el}', inputs=[dummy_component, dummy_component, dummy_component], outputs=[width, height], show_progress='hidden')\n                    with gr.Tab(label=\"Scale\", id=1, elem_id=f\"{tab}_scale_tab_scale\") as tab_scale_by:\n                        scale_by = gr.Slider(minimum=0.05, maximum=8.0, step=0.05, label=f\"Scale{prefix}\" if non_zero else \"Resize scale\", value=1.0, elem_id=f\"{tab}_scale\")\n                    if images is not None:\n                        for component in images:\n                            component.change(fn=lambda: None, _js=\"updateImg2imgResizeToTextAfterChangingImage\", inputs=[], outputs=[], show_progress='hidden')\n            tab_scale_to.select(fn=lambda: 0, inputs=[], outputs=[selected_scale_tab])\n            tab_scale_by.select(fn=lambda: 1, inputs=[], outputs=[selected_scale_tab])\n            # resize_mode.change(fn=lambda x: gr.update(visible=x != 0), inputs=[resize_mode], outputs=[_resize_group])\n    return resize_mode, resize_name, resize_context, width, height, scale_by, selected_scale_tab\n"
  },
  {
    "path": "modules/ui_settings.py",
    "content": "import os\nimport gradio as gr\nfrom modules import timer, shared, paths, theme, sd_models, modelloader, generation_parameters_copypaste, call_queue, script_callbacks\nfrom modules import ui_common, ui_loadsave, ui_history, ui_components, ui_symbols\n\n\ntext_settings = None # holds json of entire shared.opts\nui_system_tabs = None # required for system-info\ndummy_component = gr.Textbox(visible=False, value='dummy')\nloadsave = ui_loadsave.UiLoadsave(shared.cmd_opts.ui_config)\nquicksettings_names = {x: i for i, x in enumerate(shared.opts.quicksettings_list) if x != 'quicksettings'}\nquicksettings_list = []\nhidden_list = []\ncomponents = []\n\n\ndef apply_setting(key, value):\n    if value is None:\n        return gr.update()\n    if shared.cmd_opts.freeze:\n        return gr.update()\n    if key == 'sd_backend':\n        return gr.update()\n    if key in shared.opts.disable_apply_metadata:\n        gr.update()\n    if key == \"sd_model_checkpoint\":\n        ckpt_info = sd_models.get_closest_checkpoint_match(value)\n        if ckpt_info is not None:\n            value = ckpt_info.title\n        else:\n            return gr.update()\n    comp_args = shared.opts.data_labels[key].component_args\n    if comp_args and isinstance(comp_args, dict) and comp_args.get('visible') is False:\n        return gr.update()\n    valtype = type(shared.opts.data_labels[key].default)\n    oldval = shared.opts.data.get(key, None)\n    shared.opts.data[key] = valtype(value) if valtype != type(None) else value\n    if oldval != value and shared.opts.data_labels[key].onchange is not None:\n        shared.opts.data_labels[key].onchange()\n    shared.opts.save()\n    return getattr(shared.opts, key)\n\n\ndef get_value_for_setting(key):\n    value = getattr(shared.opts, key)\n    info = shared.opts.data_labels[key]\n    args = info.component_args() if callable(info.component_args) else info.component_args or {}\n    args = {k: v for k, v in args.items() if k not in {'precision', 'multiselect', 'visible'}}\n    return gr.update(value=value, **args)\n\n\ndef create_setting_component(key, is_quicksettings=False):\n    def fun():\n        return shared.opts.data[key] if key in shared.opts.data else shared.opts.data_labels[key].default\n\n    info = shared.opts.data_labels[key]\n    t = type(info.default)\n    args = (info.component_args() if callable(info.component_args) else info.component_args) or {}\n    if 'settings' in shared.opts.ui_disabled:\n        args['visible'] = False\n    if info.component is not None:\n        comp = info.component\n    elif t == str:\n        comp = gr.Textbox\n    elif t == int:\n        comp = gr.Number\n    elif t == bool:\n        comp = gr.Checkbox\n    else:\n        raise ValueError(f'bad options item type: {t} for key {key}')\n    elem_id = f\"setting_{key}\"\n    dirty_indicator = None\n\n    if not is_quicksettings:\n        dirtyable_setting = gr.Group(elem_classes=\"dirtyable\", visible=args.get(\"visible\", True))\n        dirtyable_setting.__enter__()\n        dirty_indicator = gr.Button(\"\", elem_classes=\"modification-indicator\", elem_id=f\"modification_indicator_{key}\")\n\n    if info.refresh is not None:\n        if is_quicksettings:\n            res = comp(label=info.label, value=fun(), elem_id=elem_id, **args)\n            ui_common.create_refresh_button(res, info.refresh, info.component_args, f\"settings_{key}_refresh\")\n        else:\n            with gr.Row():\n                res = comp(label=info.label, value=fun(), elem_id=elem_id, **args)\n                ui_common.create_refresh_button(res, info.refresh, info.component_args, f\"settings_{key}_refresh\")\n    elif info.folder:\n        with gr.Row():\n            res = comp(label=info.label, value=fun(), elem_id=elem_id, elem_classes=\"folder-selector\", **args)\n    else:\n        try:\n            res = comp(label=info.label, value=fun(), elem_id=elem_id, **args)\n        except Exception as e:\n            shared.log.error(f'Error creating setting: {key} {e}')\n            res = None\n\n    if res is not None and not is_quicksettings:\n        try:\n            res.change(fn=None, inputs=res, _js=f'(val) => markIfModified(\"{key}\", val)')\n        except Exception as e:\n            shared.log.error(f'Quicksetting: component={res} {e}')\n        if dirty_indicator is not None:\n            dirty_indicator.click(fn=lambda: shared.opts.get_default(key), outputs=[res], show_progress='hidden')\n        dirtyable_setting.__exit__()\n\n    return res\n\ndef create_dirty_indicator(key, keys_to_reset, **kwargs):\n    def get_default_values():\n        values = [shared.opts.get_default(key) for key in keys_to_reset]\n        shared.log.debug(f'Settings restore: section={key} keys={keys_to_reset} values={values}')\n        return values\n\n    elements_to_reset = [shared.settings_components[_key] for _key in keys_to_reset if shared.settings_components[_key] is not None]\n    indicator = gr.Button('', elem_classes=\"modification-indicator\", elem_id=f\"modification_indicator_{key}\", **kwargs)\n    indicator.click(fn=get_default_values, outputs=elements_to_reset, show_progress='full')\n    return indicator\n\n\ndef run_settings(*args):\n    changed = []\n    for key, value, comp in zip(shared.opts.data_labels.keys(), args, components):\n        if comp == dummy_component or value=='dummy': # or getattr(comp, 'visible', True) is False or key in hidden_list:\n            # actual = shared.opts.data.get(key, None)  # ensure the key is in data\n            # default = shared.opts.data_labels[key].default\n            # shared.log.warning(f'Setting skip: key={key} value={value} actual={actual} default={default} comp={comp}')\n            continue\n        if not shared.opts.same_type(value, shared.opts.data_labels[key].default):\n            shared.log.error(f'Setting bad value: {key}={value} expecting={type(shared.opts.data_labels[key].default).__name__}')\n            continue\n        if shared.opts.set(key, value):\n            changed.append(key)\n    if shared.opts.cuda_compile_backend == \"olive-ai\":\n        from modules.onnx_impl import install_olive, initialize_onnx_pipelines\n        install_olive()\n        initialize_onnx_pipelines()\n    if shared.cmd_opts.use_directml:\n        from modules.dml import directml_override_opts\n        directml_override_opts()\n    if shared.cmd_opts.use_openvino:\n        if \"Model\" not in shared.opts.cuda_compile:\n            shared.log.warning(\"OpenVINO: Enabling Torch Compile Model\")\n            shared.opts.cuda_compile.append(\"Model\")\n        if shared.opts.cuda_compile_backend != \"openvino_fx\":\n            shared.log.warning(\"OpenVINO: Setting Torch Compiler backend to OpenVINO FX\")\n            shared.opts.cuda_compile_backend = \"openvino_fx\"\n    if shared.opts.sd_backend != \"diffusers\":\n        shared.log.error('Legacy option: backend=original is no longer supported')\n        shared.opts.sd_backend = \"diffusers\"\n    try:\n        if len(changed) > 0:\n            shared.opts.save()\n            shared.log.info(f'Settings: changed={len(changed)} {changed}')\n    except RuntimeError:\n        shared.log.error(f'Settings failed: change={len(changed)} {changed}')\n        return shared.opts.dumpjson(), f'{len(changed)} Settings changed without save: {\", \".join(changed)}'\n    return shared.opts.dumpjson(), f'{len(changed)} Settings changed{\": \" if len(changed) > 0 else \"\"}{\", \".join(changed)}'\n\ndef run_settings_single(value, key, progress=False):\n    if not shared.opts.same_type(value, shared.opts.data_labels[key].default):\n        return gr.update(visible=True), shared.opts.dumpjson()\n    if not shared.opts.set(key, value):\n        return gr.update(value=getattr(shared.opts, key)), shared.opts.dumpjson()\n    if key == \"cuda_compile_backend\" and value == \"olive-ai\":\n        from modules.onnx_impl import install_olive\n        install_olive()\n    if shared.cmd_opts.use_directml:\n        from modules.dml import directml_override_opts\n        directml_override_opts()\n    shared.opts.save()\n    if key not in ['sd_model_checkpoint', 'sd_model_refiner', 'sd_vae', 'sd_te', 'sd_unet']:\n        shared.log.debug(f'Setting changed: {key}={value} progress={progress}')\n    return get_value_for_setting(key), shared.opts.dumpjson()\n\n\ndef create_ui(disabled_tabs=[]):\n    shared.log.debug('UI initialize: tab=settings')\n    global text_settings # pylint: disable=global-statement\n    text_settings = gr.Textbox(elem_id=\"settings_json\", elem_classes=[\"settings_json\"], value=lambda: shared.opts.dumpjson(), visible=False)\n\n    def unload_sd_weights():\n        sd_models.unload_model_weights(op='model')\n        sd_models.unload_model_weights(op='refiner')\n\n    def reload_sd_weights():\n        sd_models.reload_model_weights(force=True)\n\n    def switch_profiling():\n        shared.cmd_opts.profile = not shared.cmd_opts.profile\n        shared.log.warning(f'Profiling: {shared.cmd_opts.profile}')\n        return 'Stop profiling' if shared.cmd_opts.profile else 'Start profiling'\n\n    if 'system' not in disabled_tabs:\n        with gr.Row(elem_id=\"system_row\"):\n            unload_sd_model = gr.Button(value='Unload model', variant='primary', elem_id=\"sett_unload_sd_model\")\n            reload_sd_model = gr.Button(value='Reload model', variant='primary', elem_id=\"sett_reload_sd_model\")\n            restart_submit = gr.Button(value=\"Restart server\", variant='primary', elem_id=\"restart_submit\")\n            shutdown_submit = gr.Button(value=\"Shutdown server\", variant='primary', elem_id=\"shutdown_submit\")\n            enable_profiling = gr.Button(value='Start profiling', variant='primary', elem_id=\"enable_profiling\")\n            unload_sd_model.click(fn=unload_sd_weights, inputs=[], outputs=[])\n            reload_sd_model.click(fn=reload_sd_weights, inputs=[], outputs=[])\n            enable_profiling.click(fn=switch_profiling, inputs=[], outputs=[enable_profiling])\n            restart_submit.click(fn=lambda: shared.restart_server(restart=True), _js=\"restartReload\")\n            shutdown_submit.click(fn=lambda: shared.restart_server(restart=False), _js=\"restartReload\")\n\n    with gr.Tabs(elem_id=\"system\") as system_tabs:\n        global ui_system_tabs # pylint: disable=global-statement\n        ui_system_tabs = system_tabs\n        with gr.TabItem(\"Settings\", id=\"system_settings\", elem_id=\"tab_settings\"):\n            with gr.Row(elem_id=\"settings_row\"):\n                settings_submit = gr.Button(value=\"Apply settings\", variant='primary', elem_id=\"settings_submit\")\n                defaults_submit = gr.Button(value=\"Restore defaults\", variant='primary', elem_id=\"defaults_submit\")\n            with gr.Row():\n                _settings_search = gr.Textbox(label=\"Search\", elem_id=\"settings_search\")\n\n            result = gr.HTML(elem_id=\"settings_result\")\n            script_callbacks.ui_settings_callback() # let extensions create settings\n            sections = []\n            options_count = len(shared.opts.data_labels)\n            for item in shared.opts.data_labels.values(): # get unique sections from all items\n                if len(item.section) == 2:\n                    section_id, section_text = item.section\n                elif len(item.section) == 3: # compatibility item with a1111 extensions\n                    _category, section_id, section_text = item.section\n                    item.section = section_id, section_text\n                else:\n                    section_id = None\n                    item.section = None, 'Hidden'\n                if (section_id, section_text) not in sections:\n                    sections.append((section_id, section_text))\n\n            with gr.Tabs(elem_id=\"settings\"):\n                quicksettings_list.clear()\n                for (section_id, section_text) in sections:\n                    items = [item for item in shared.opts.data_labels.items() if item[1].section[0] == section_id] # find all items in this section\n                    hidden = section_id is None or 'hidden' in section_id.lower() or 'hidden' in section_text.lower()\n                    # shared.log.trace(f'Settings: section=\"{section_id}\" title=\"{section_text}\" items={len(items)} hidden={hidden}')\n                    if hidden:\n                        for (key, _item) in items:\n                            hidden_list.append(key)\n                            components.append(dummy_component)\n                    else:\n                        with gr.TabItem(elem_id=f\"settings_section_tab_{section_id}\", label=section_text):\n                            current_items = []\n                            for (key, item) in items:\n                                if key in quicksettings_names:\n                                    quicksettings_list.append((key, item))\n                                    components.append(dummy_component)\n                                else:\n                                    with gr.Row(elem_id=f\"settings_section_row_{section_id}\", elem_classes=[\"settings_section\"]): # only so we can add dirty indicator at the start of the row\n                                        component = create_setting_component(key)\n                                        shared.settings_components[key] = component\n                                        current_items.append(key)\n                                        components.append(component)\n                        create_dirty_indicator(section_id, current_items)\n                components_count = len(components)\n                if components_count != options_count:\n                    shared.log.error(f'Settings: count mismatch: options={options_count} components={components_count}')\n\n                with gr.TabItem(\"Show all pages\", elem_id=\"settings_show_all_pages\"):\n                    create_dirty_indicator(\"show_all_pages\", [])\n                request_notifications = gr.Button(value='Request browser notifications', elem_id=\"request_notifications\", visible=False)\n\n            shared.log.debug(f'Settings: sections={len(sections)} settings={len(shared.opts.list())}/{len(list(shared.opts.data_labels))} quicksettings={len(quicksettings_list)}')\n\n        if 'update' not in disabled_tabs:\n            with gr.TabItem(\"Update\", id=\"system_update\", elem_id=\"tab_update\"):\n                from modules import update\n                update.create_ui()\n\n        if 'config' not in disabled_tabs:\n            with gr.TabItem(\"User interface\", id=\"system_config\", elem_id=\"tab_config\"):\n                loadsave.create_ui()\n                create_dirty_indicator(\"tab_defaults\", [], interactive=False)\n\n        if 'history' not in disabled_tabs:\n            with gr.TabItem(\"History\", id=\"system_history\", elem_id=\"tab_history\"):\n                ui_history.create_ui()\n\n        if 'monitor' not in disabled_tabs:\n            with gr.TabItem(\"GPU Monitor\", id=\"system_gpu\", elem_id=\"tab_gpu\"):\n                with gr.Row(elem_id='gpu-controls'):\n                    gpu_start = gr.Button(value=\"Start\", elem_id=\"gpu_start\", variant=\"primary\")\n                    gpu_stop = gr.Button(value=\"Stop\", elem_id=\"gpu_stop\", variant=\"primary\")\n                    gpu_start.click(fn=lambda: None, _js='startGPU', inputs=[], outputs=[])\n                    gpu_stop.click(fn=lambda: None, _js='disableGPU', inputs=[], outputs=[])\n                gr.HTML('''\n                    <div class=\"gpu\" id=\"gpu\">\n                        <table class=\"gpu-table\" id=\"gpu-table\">\n                            <thead><tr><th></th><th></th></tr></thead>\n                            <tbody></tbody>\n                        </table>\n                        <div id=\"gpuChart\"></div>\n                    </div>\n                ''', elem_id='gpu-container', visible=True)\n\n        if 'onnx' not in disabled_tabs:\n            with gr.TabItem(\"ONNX\", id=\"onnx_config\", elem_id=\"tab_onnx\"):\n                from modules.onnx_impl import ui as ui_onnx\n                ui_onnx.create_ui()\n\n    if request_notifications:\n        request_notifications.click(fn=lambda: None, inputs=[], outputs=[], _js='function(){}')\n    settings_submit.click(\n        fn=call_queue.wrap_gradio_call(run_settings, extra_outputs=[gr.update()]),\n        inputs=components,\n        outputs=[text_settings, result],\n    )\n    if defaults_submit:\n        defaults_submit.click(fn=lambda: shared.restore_defaults(restart=True), _js=\"restartReload\")\n\n\ndef reset_quicksettings(quick_components):\n    quick_components = quick_components.split(',')\n    updates = []\n    for key in quick_components:\n        shared.log.warning(f'Reset: setting={key}')\n        updates.append(gr.update(value=shared.opts.get_default(key)))\n    return updates\n\n\ndef create_quicksettings(interfaces):\n    shared.tab_names = []\n    for _interface, label, _ifid in interfaces:\n        shared.tab_names.append(label)\n\n    with gr.Blocks(theme=theme.gradio_theme, analytics_enabled=False, title=\"SD.Next\") as ui_app:\n        with gr.Row(elem_id=\"quicksettings\", variant=\"compact\"):\n            quicksetting_components = []\n            quicksetting_keys = []\n            for k, _item in sorted(quicksettings_list, key=lambda x: quicksettings_names.get(x[1], x[0])):\n                component = create_setting_component(k, is_quicksettings=True)\n                quicksetting_components.append(component)\n                quicksetting_keys.append(k)\n                shared.settings_components[k] = component\n            quicksetting_keys = gr.State(value=','.join(quicksetting_keys), elem_id=\"quicksettings_keys\")\n            btn_reset = ui_components.ToolButton(value=ui_symbols.clear, visible=True, elem_id=\"quicksettings_clear\")\n            btn_reset.click(fn=reset_quicksettings, inputs=[quicksetting_keys], outputs=quicksetting_components)\n\n        generation_parameters_copypaste.connect_paste_params_buttons()\n\n        with gr.Tabs(elem_id=\"tabs\") as tabs:\n            for interface, label, ifid in interfaces:\n                if interface is None:\n                    continue\n                with gr.TabItem(label, id=ifid, elem_id=f\"tab_{ifid}\"):\n                    interface.render()\n            for interface, _label, ifid in interfaces:\n                if interface is None:\n                    continue\n                if ifid in [\"extensions\", \"system\"]:\n                    continue\n                loadsave.add_block(interface, ifid)\n            loadsave.add_component(f\"webui/Tabs@{tabs.elem_id}\", tabs)\n            loadsave.setup_ui()\n\n        if shared.opts.notification_audio_enable and os.path.exists(os.path.join(paths.script_path, shared.opts.notification_audio_path)):\n            gr.Audio(interactive=False, value=os.path.join(paths.script_path, shared.opts.notification_audio_path), elem_id=\"audio_notification\", visible=False)\n\n        for k, _item in quicksettings_list:\n            component = shared.settings_components[k]\n            info = shared.opts.data_labels[k]\n            if isinstance(component, gr.components.Textbox):\n                change_handlers = [component.blur, component.submit]\n            else:\n                change_handlers = [component.release if hasattr(component, 'release') else component.change]\n            for change_handler in change_handlers:\n                change_handler(\n                    fn=lambda value, k=k, progress=info.refresh is not None: run_settings_single(value, key=k, progress=progress),\n                    inputs=[component],\n                    outputs=[component, text_settings],\n                    show_progress='full' if info.refresh is not None else 'hidden',\n                )\n\n        button_set_checkpoint = gr.Button('Change model', elem_id='change_checkpoint', visible=False)\n        button_set_checkpoint.click(\n            fn=lambda value, _: run_settings_single(value, key='sd_model_checkpoint'),\n            _js=\"function(v){ var res = desiredCheckpointName; desiredCheckpointName = ''; return [res || v, null]; }\",\n            inputs=[shared.settings_components['sd_model_checkpoint'], dummy_component],\n            outputs=[shared.settings_components['sd_model_checkpoint'], text_settings],\n        )\n        button_set_refiner = gr.Button('Change refiner', elem_id='change_refiner', visible=False)\n        button_set_refiner.click(\n            fn=lambda value, _: run_settings_single(value, key='sd_model_checkpoint'),\n            _js=\"function(v){ var res = desiredCheckpointName; desiredCheckpointName = ''; return [res || v, null]; }\",\n            inputs=[shared.settings_components['sd_model_refiner'], dummy_component],\n            outputs=[shared.settings_components['sd_model_refiner'], text_settings],\n        )\n        button_set_vae = gr.Button('Change VAE', elem_id='change_vae', visible=False)\n        button_set_vae.click(\n            fn=lambda value, _: run_settings_single(value, key='sd_vae'),\n            _js=\"function(v){ var res = desiredVAEName; desiredVAEName = ''; return [res || v, null]; }\",\n            inputs=[shared.settings_components['sd_vae'], dummy_component],\n            outputs=[shared.settings_components['sd_vae'], text_settings],\n        )\n\n        def reference_submit(model):\n            if '@' not in model: # diffusers\n                loaded = modelloader.load_reference(model)\n                if loaded:\n                    shared.opts.sd_model_checkpoint = model\n                    sd_models.reload_model_weights(force=True)\n                    return model\n                return shared.opts.sd_model_checkpoint\n            else: # civitai\n                model, url = model.split('@')\n                loaded = modelloader.load_civitai(model, url)\n                if loaded is not None:\n                    shared.opts.sd_model_checkpoint = loaded\n                    sd_models.reload_model_weights(force=True)\n                    return loaded\n                return shared.opts.sd_model_checkpoint\n\n        button_set_reference = gr.Button('Change reference', elem_id='change_reference', visible=False)\n        button_set_reference.click(\n            fn=reference_submit,\n            _js=\"function(v){ return desiredCheckpointName; }\",\n            inputs=[shared.settings_components['sd_model_checkpoint']],\n            outputs=[shared.settings_components['sd_model_checkpoint']],\n        )\n        component_keys = [k for k in shared.opts.data_labels.keys() if k in shared.settings_components]\n\n        def get_settings_values():\n            return [get_value_for_setting(key) for key in component_keys]\n\n        ui_app.load(\n            fn=get_settings_values,\n            inputs=[],\n            outputs=[shared.settings_components[k] for k in component_keys if shared.settings_components[k] is not None],\n            queue=False,\n        )\n\n    timer.startup.record(\"ui-defaults\")\n    loadsave.dump_defaults()\n    ui_app.ui_loadsave = loadsave\n    return ui_app\n"
  },
  {
    "path": "modules/ui_symbols.py",
    "content": "import re\nfrom functools import lru_cache\nfrom typing import final\n\n\n# Basic symbols\n\nrefresh = '⟲'\nclose = '✕'\nload = '⇧'\nsave = '⇩'\nbook = '🕮'\napply = '⇰'\nclear = '⊗'\nfill = '⊜'\nscan = '🔎︎'\nview = '☲'\nnetworks = '🌐'\npaste = '⇦'\nrefine = '※'\nswitch = '⇅'\nsort = '⇕'\ndetect = '📐'\nfolder = '📂'\nrandom = '🎲️'\nreuse = '♻️'\ninfo = 'ℹ' # noqa\nreset = '🔄'\nupload = '⬆️'\nloading = '↺'\nreuse = '⬅️'\nsearch = '🔍'\npreview = '🖼️'\nimage = '🖌️'\nresize = '⁜'\ninterrogate = '\\uf46b' # Telescope icon in Noto Sans. Previously '♻'\nbullet = '⃝'\nvision = '\\uf06e'  # Font Awesome eye icon (more minimalistic)\nreasoning = '\\uf0eb'  # Font Awesome lightbulb icon (represents thinking/reasoning)\nsort_alpha_asc = '\\uf15d'\nsort_alpha_dsc = '\\uf15e'\nsort_size_asc = '\\uf160'\nsort_size_dsc = '\\uf161'\nsort_num_asc = '\\uf162'\nsort_num_dsc = '\\uf163'\nsort_time_asc = '\\uf0de'\nsort_time_dsc = '\\uf0dd'\nstyle_apply = '↶'\nstyle_save = '↷'\n\n# Configurable symbols\n\n@final\nclass SVGSymbol:\n    __created = []\n    __re_display = re.compile(r\"(?<=display:)\\s*([\\w\\-]+)(?=;)\")\n\n    @classmethod\n    @lru_cache  # Class method due to B019, but also mostly so the `style` method shows params in IDE\n    def __stylize(cls, svg: str, color: str | None = None, display: str | None = None):\n        if color:\n            svg = re.sub(\"currentColor\", color, svg)\n        if display:\n            svg = cls.__re_display.sub(display, svg, count=1)\n        return svg\n\n    def __init__(self, svg: str):\n        svg = re.sub(r\"\\s{2,}\", \" \", svg.replace(\"\\n\", \"\")).replace(\"> <\", \"><\").strip()\n        if svg in self.__created:\n            raise RuntimeError(\"SVGSymbol class was created with an existing value. There should only be one instance per symbol.\", svg)\n        else:\n            self.__created.append(svg)\n        self.svg = svg\n        self.supports_color = False\n        self.supports_display = False\n        if \"currentColor\" in self.svg:\n            self.supports_color = True\n        if self.__re_display.search(self.svg):\n            self.supports_display = True\n\n    def style(self, color: str | None = None, display: str | None = None) -> str:\n        style_args = {\n            \"color\": color if color and self.supports_color else None,\n            \"display\": display if display and self.supports_display else None\n        }\n        return self.__stylize(self.svg, **style_args)\n\n    def __str__(self):\n        return self.svg\n\n\nsvg_bullet = SVGSymbol(\"<svg style='stroke:currentColor;fill:none;stroke-width:2;display:block;' viewBox='0 0 16 16'><circle cx='8' cy='8' r='7'/></svg>\")\n"
  },
  {
    "path": "modules/ui_txt2img.py",
    "content": "import gradio as gr\nfrom modules import timer, shared, call_queue, generation_parameters_copypaste, processing_vae, images\nfrom modules import ui_common, ui_sections, ui_guidance\n\n\ndef create_ui():\n    shared.log.debug('UI initialize: tab=txt2img')\n    import modules.txt2img # pylint: disable=redefined-outer-name\n    modules.scripts_manager.scripts_current = modules.scripts_manager.scripts_txt2img\n    modules.scripts_manager.scripts_txt2img.initialize_scripts(is_img2img=False, is_control=False)\n    with gr.Blocks(analytics_enabled=False) as _txt2img_interface:\n        txt2img_prompt, txt2img_prompt_styles, txt2img_negative_prompt, txt2img_submit, txt2img_reprocess, txt2img_paste, txt2img_extra_networks_button, txt2img_token_counter, txt2img_token_button, txt2img_negative_token_counter, txt2img_negative_token_button = ui_sections.create_toprow(is_img2img=False, id_part=\"txt2img\")\n\n        txt2img_prompt_img = gr.File(label=\"\", elem_id=\"txt2img_prompt_image\", file_count=\"single\", type=\"binary\", visible=False)\n        txt2img_prompt_img.change(fn=images.image_data, inputs=[txt2img_prompt_img], outputs=[txt2img_prompt, txt2img_prompt_img])\n\n        with gr.Row(variant='compact', elem_id=\"txt2img_extra_networks\", elem_classes=[\"extra_networks_root\"], visible=False) as extra_networks_ui:\n            from modules import ui_extra_networks\n            extra_networks_ui = ui_extra_networks.create_ui(extra_networks_ui, txt2img_extra_networks_button, 'txt2img', skip_indexing=shared.opts.extra_network_skip_indexing)\n            timer.startup.record('ui-networks')\n\n        with gr.Row(elem_id=\"txt2img_interface\", equal_height=False):\n            with gr.Column(variant='compact', elem_id=\"txt2img_settings\", elem_classes=['settings-column']):\n\n                with gr.Row():\n                    width, height = ui_sections.create_resolution_inputs('txt2img')\n\n                batch_count, batch_size = ui_sections.create_batch_inputs('txt2img', accordion=False)\n                steps, sampler_index = ui_sections.create_sampler_and_steps_selection(None, \"txt2img\")\n\n                with gr.Group(elem_classes=\"settings-accordion\"):\n                    with gr.Accordion(open=False, label=\"Samplers\", elem_classes=[\"small-accordion\"], elem_id=\"txt2img_sampler_group\"):\n                        ui_sections.create_sampler_options('txt2img')\n                    seed, reuse_seed, subseed, reuse_subseed, subseed_strength, seed_resize_from_h, seed_resize_from_w = ui_sections.create_seed_inputs('txt2img')\n                    guidance_name, guidance_scale, guidance_rescale, guidance_start, guidance_stop, cfg_scale, image_cfg_scale, diffusers_guidance_rescale, pag_scale, pag_adaptive, cfg_end = ui_guidance.create_guidance_inputs('txt2img')\n                    vae_type, tiling, hidiffusion, clip_skip = ui_sections.create_advanced_inputs('txt2img')\n                    hdr_mode, hdr_brightness, hdr_color, hdr_sharpen, hdr_clamp, hdr_boundary, hdr_threshold, hdr_maximize, hdr_max_center, hdr_max_boundary, hdr_color_picker, hdr_tint_ratio = ui_sections.create_correction_inputs('txt2img')\n                    enable_hr, hr_sampler_index, hr_denoising_strength, hr_resize_mode, hr_resize_context, hr_upscaler, hr_force, hr_second_pass_steps, hr_scale, hr_resize_x, hr_resize_y, refiner_steps, refiner_start, refiner_prompt, refiner_negative = ui_sections.create_hires_inputs('txt2img')\n                    detailer_enabled, detailer_prompt, detailer_negative, detailer_steps, detailer_strength, detailer_resolution  = shared.yolo.ui('txt2img')\n                    override_settings = ui_common.create_override_inputs('txt2img')\n                    state = gr.Textbox(value='', visible=False)\n\n                with gr.Group(elem_id=\"txt2img_script_container\"):\n                    txt2img_script_inputs = modules.scripts_manager.scripts_txt2img.setup_ui(parent='txt2img', accordion=True)\n\n            txt2img_gallery, txt2img_generation_info, txt2img_html_info, _txt2img_html_info_formatted, txt2img_html_log = ui_common.create_output_panel(\"txt2img\", preview=True, prompt=txt2img_prompt)\n            ui_common.reuse_seed(seed, reuse_seed, subseed=False)\n            ui_common.reuse_seed(subseed, reuse_subseed, subseed=True)\n\n            dummy_component = gr.Textbox(visible=False, value='dummy')\n\n            txt2img_args = [\n                dummy_component, state,\n                txt2img_prompt, txt2img_negative_prompt, txt2img_prompt_styles,\n                steps, sampler_index, hr_sampler_index,\n                vae_type, tiling, hidiffusion,\n                detailer_enabled, detailer_prompt, detailer_negative, detailer_steps, detailer_strength, detailer_resolution,\n                batch_count, batch_size,\n                guidance_name, guidance_scale, guidance_rescale, guidance_start, guidance_stop,\n                cfg_scale, image_cfg_scale, diffusers_guidance_rescale, pag_scale, pag_adaptive, cfg_end,\n                clip_skip,\n                seed, subseed, subseed_strength, seed_resize_from_h, seed_resize_from_w,\n                height, width,\n                enable_hr, hr_denoising_strength,\n                hr_scale, hr_resize_mode, hr_resize_context, hr_upscaler, hr_force, hr_second_pass_steps, hr_resize_x, hr_resize_y,\n                refiner_steps, refiner_start, refiner_prompt, refiner_negative,\n                hdr_mode, hdr_brightness, hdr_color, hdr_sharpen, hdr_clamp, hdr_boundary, hdr_threshold, hdr_maximize, hdr_max_center, hdr_max_boundary, hdr_color_picker, hdr_tint_ratio,\n                override_settings,\n            ]\n            txt2img_dict = dict(\n                fn=call_queue.wrap_gradio_gpu_call(modules.txt2img.txt2img, extra_outputs=[None, '', ''], name='Text'),\n                _js=\"submit_txt2img\",\n                inputs=txt2img_args + txt2img_script_inputs,\n                outputs=[\n                    txt2img_gallery,\n                    txt2img_generation_info,\n                    txt2img_html_info,\n                    txt2img_html_log,\n                ],\n                show_progress='hidden',\n            )\n\n            txt2img_prompt.submit(**txt2img_dict)\n            txt2img_negative_prompt.submit(**txt2img_dict)\n            txt2img_submit.click(**txt2img_dict)\n\n            txt2img_reprocess[1].click(fn=processing_vae.reprocess, inputs=[txt2img_gallery], outputs=[txt2img_gallery]) # full-decode\n            txt2img_reprocess[2].click(**txt2img_dict) # hires-refine\n            txt2img_reprocess[3].click(**txt2img_dict) # face-restore\n\n            txt2img_paste_fields = [\n                # prompt\n                (txt2img_prompt, \"Prompt\"),\n                (txt2img_negative_prompt, \"Negative prompt\"),\n                (txt2img_prompt_styles, \"Styles\"),\n                # main\n                (width, \"Size-1\"),\n                (height, \"Size-2\"),\n                # sampler\n                (sampler_index, \"Sampler\"),\n                (steps, \"Steps\"),\n                # batch\n                (batch_count, \"Batch-1\"),\n                (batch_size, \"Batch-2\"),\n                # seed\n                (seed, \"Seed\"),\n                (subseed, \"Variation seed\"),\n                (subseed_strength, \"Variation strength\"),\n                # guidance\n                (guidance_name, \"Guidance\"),\n                (guidance_scale, \"Guidance scale\"),\n                (guidance_rescale, \"Guidance rescale\"),\n                (guidance_start, \"Guidance start\"),\n                (guidance_stop, \"Guidance stop\"),\n                # advanced\n                (cfg_scale, \"CFG scale\"),\n                (cfg_end, \"CFG end\"),\n                (clip_skip, \"Clip skip\"),\n                (image_cfg_scale, \"Image CFG scale\"),\n                (image_cfg_scale, \"Hires CFG scale\"),\n                (diffusers_guidance_rescale, \"CFG rescale\"),\n                (vae_type, \"VAE type\"),\n                (tiling, \"Tiling\"),\n                (hidiffusion, \"HiDiffusion\"),\n                # detailer\n                (detailer_enabled, \"Detailer\"),\n                (detailer_prompt, \"Detailer prompt\"),\n                (detailer_negative, \"Detailer negative\"),\n                (detailer_steps, \"Detailer steps\"),\n                (detailer_strength, \"Detailer strength\"),\n                (detailer_resolution, \"Detailer resolution\"),\n                # second pass\n                (enable_hr, \"Second pass\"),\n                (enable_hr, \"Refine\"),\n                (hr_denoising_strength, \"Hires strength\"),\n                (hr_sampler_index, \"Hires sampler\"),\n                (hr_resize_mode, \"Hires mode\"),\n                (hr_resize_context, \"Hires context\"),\n                (hr_upscaler, \"Hires upscaler\"),\n                (hr_force, \"Hires force\"),\n                (hr_second_pass_steps, \"Hires steps\"),\n                (hr_scale, \"Hires upscale\"),\n                (hr_scale, \"Hires scale\"),\n                (hr_resize_x, \"Hires fixed-1\"),\n                (hr_resize_y, \"Hires fixed-2\"),\n                # refiner\n                (refiner_start, \"Refiner start\"),\n                (refiner_steps, \"Refiner steps\"),\n                (refiner_prompt, \"refiner prompt\"),\n                (refiner_negative, \"Refiner negative\"),\n                # pag\n                (pag_scale, \"CFG true\"),\n                (pag_adaptive, \"CFG adaptive\"),\n                # hidden\n                (seed_resize_from_w, \"Seed resize from-1\"),\n                (seed_resize_from_h, \"Seed resize from-2\"),\n                *modules.scripts_manager.scripts_txt2img.infotext_fields\n            ]\n            generation_parameters_copypaste.add_paste_fields(\"txt2img\", None, txt2img_paste_fields, override_settings)\n            txt2img_bindings = generation_parameters_copypaste.ParamBinding(paste_button=txt2img_paste, tabname=\"txt2img\", source_text_component=txt2img_prompt, source_image_component=None)\n            generation_parameters_copypaste.register_paste_params_button(txt2img_bindings)\n\n            txt2img_token_button.click(fn=call_queue.wrap_queued_call(ui_common.update_token_counter), inputs=[txt2img_prompt], outputs=[txt2img_token_counter], show_progress = 'hidden')\n            txt2img_negative_token_button.click(fn=call_queue.wrap_queued_call(ui_common.update_token_counter), inputs=[txt2img_negative_prompt], outputs=[txt2img_negative_token_counter], show_progress = 'hidden')\n\n            ui_extra_networks.setup_ui(extra_networks_ui, txt2img_gallery)\n"
  },
  {
    "path": "modules/ui_video.py",
    "content": "import os\nimport gradio as gr\nfrom modules import shared, timer, images, ui_common, ui_sections, generation_parameters_copypaste\n\n\ndebug = shared.log.trace if os.environ.get('SD_VIDEO_DEBUG', None) is not None else lambda *args, **kwargs: None\n\n\ndef create_ui():\n    shared.log.debug('UI initialize: tab=video')\n    with gr.Blocks(analytics_enabled=False) as _video_interface:\n        prompt, styles, negative, generate_btn, _reprocess, paste, networks_button, _token_counter, _token_button, _token_counter_negative, _token_button_negative = ui_sections.create_toprow(\n            is_img2img=False,\n            id_part=\"video\",\n            negative_visible=True,\n            reprocess_visible=False,\n        )\n        prompt_image = gr.File(label=\"\", elem_id=\"video_prompt_image\", file_count=\"single\", type=\"binary\", visible=False)\n        prompt_image.change(fn=images.image_data, inputs=[prompt_image], outputs=[prompt, prompt_image])\n\n        with gr.Row(variant='compact', elem_id=\"video_extra_networks\", elem_classes=[\"extra_networks_root\"], visible=False) as extra_networks_ui:\n            from modules import ui_extra_networks\n            extra_networks_ui = ui_extra_networks.create_ui(extra_networks_ui, networks_button, 'video', skip_indexing=shared.opts.extra_network_skip_indexing)\n            ui_extra_networks.setup_ui(extra_networks_ui)\n            timer.startup.record('ui-networks')\n\n        with gr.Row(elem_id=\"video_interface\", equal_height=False):\n            with gr.Tabs(elem_classes=['video-tabs'], elem_id='video-tabs'):\n                overrides = ui_common.create_override_inputs('video')\n                with gr.Tab('Size', id='video-size-tab') as _video_size_tab:\n                    from modules.video_models import video_ui\n                    width, height, frames, seed, reuse_seed = video_ui.create_ui_size()\n                with gr.Tab('Inputs', id='video-inputs-tab') as _video_inputs_tab:\n                    from modules.video_models import video_ui\n                    init_image, init_strength, last_image = video_ui.create_ui_inputs()\n                with gr.Tab('Video Output', id='video-outputs-tab') as _video_outputs_tab:\n                    from modules.video_models import video_ui\n                    mp4_fps, mp4_interpolate, mp4_codec, mp4_ext, mp4_opt, mp4_video, mp4_frames, mp4_sf = video_ui.create_ui_outputs()\n                with gr.Tab('Models', id='video-core-tab') as video_core_tab:\n                    from modules.video_models import video_ui\n                    engine, model, steps, sampler_index = video_ui.create_ui(prompt, negative, styles, overrides, init_image, init_strength, last_image, mp4_fps, mp4_interpolate, mp4_codec, mp4_ext, mp4_opt, mp4_video, mp4_frames, mp4_sf, width, height, frames, seed, reuse_seed)\n                with gr.Tab('FramePack', id='framepack-tab') as framepack_tab:\n                    from modules.framepack import framepack_ui\n                    framepack_ui.create_ui(prompt, negative, styles, overrides, init_image, last_image, mp4_fps, mp4_interpolate, mp4_codec, mp4_ext, mp4_opt, mp4_video, mp4_frames, mp4_sf)\n                with gr.Tab('LTX', id='ltx-tab') as ltx_tab:\n                    from modules.ltx import ltx_ui\n                    ltx_ui.create_ui(prompt, negative, styles, overrides, init_image, init_strength, last_image, mp4_fps, mp4_interpolate, mp4_codec, mp4_ext, mp4_opt, mp4_video, mp4_frames, mp4_sf, width, height, frames, seed)\n\n        paste_fields = [\n            (prompt, \"Prompt\"), # cannot add more fields as they are not defined yet\n            (negative, \"Negative prompt\"),\n            (width, \"Width\"),\n            (height, \"Height\"),\n            (frames, \"Frames\"),\n            (seed, \"Seed\"),\n            (styles, \"Styles\"),\n            (steps, \"Steps\"),\n            (sampler_index, \"Sampler\"),\n            (engine, \"Engine\"),\n            (model, \"Model\"),\n        ]\n        generation_parameters_copypaste.add_paste_fields(\"video\", None, paste_fields)\n        bindings = generation_parameters_copypaste.ParamBinding(paste_button=paste, tabname=\"video\", source_text_component=prompt, source_image_component=None)\n        generation_parameters_copypaste.register_paste_params_button(bindings)\n\n        current_tab = gr.Textbox(visible=False, value='video')\n        video_core_tab.select(fn=lambda: 'video', inputs=[], outputs=[current_tab])\n        framepack_tab.select(fn=lambda: 'framepack', inputs=[], outputs=[current_tab])\n        ltx_tab.select(fn=lambda: 'ltx', inputs=[], outputs=[current_tab])\n\n        generate_btn.click(fn=None, _js='submit_video_wrapper', inputs=[current_tab], outputs=[])\n\n        # from framepack_api import create_api # pylint: disable=wrong-import-order\n"
  },
  {
    "path": "modules/ui_video_vlm.py",
    "content": "import gradio as gr\nfrom PIL import Image\nfrom modules import shared\n\n\nmodels = [\n    'Google Gemma 3 4B',\n]\nsystem_prompts = {\n    'prefix': 'You are a video director.',\n    'desc': 'You will provide a prompt that can be used to create short, creative and dynamic video. Describe the subject of the video, add movement that fits the overall tone of the video, add camera movement.',\n    'nsfw_ok': 'NSFW content and nudity are allowed and must be fully described if present. ',\n    'nsfw_no': 'NSFW content and nudity are not allowed. ',\n    'suffix': 'Movement should be dynamic and creative. Do not specify duration and assume video is short. Avoid slow-motion and prefer faster movements. Output should be a single short paragraph without explanations',\n    'example': 'Example: \"Short video of beautiful blonde woman in her 20ies wearing a long flowing red dress. She is briskly walking on the beach during sunset and performing a pirouette ending with her hand pointing at the camera as she smiles. Camera is moving around her and zooming to her face. Sun is setting in the background causing changes in colors and shadows to move dynamically.\"',\n\n    't2v-prompt': 'You are a given short prompt with basic instructions.',\n    't2v-noprompt': '',\n    'i2v-prompt': 'You are given an image as a starting point and a short prompt with basic instructions.',\n    'i2v-noprompt': 'You are given an image as a starting point.',\n}\n\n\ndef enhance_prompt(enable:bool, model:str=None, image=None, prompt:str='', system_prompt:str='', nsfw:bool=True):\n    from modules.interrogate import vqa\n    if not enable:\n        return prompt\n    if model is None or len(model) < 4:\n        model = models[0]\n    if image is not None and not isinstance(image, Image.Image):\n        image = Image.fromarray(image)\n    if prompt is None or len(prompt) < 4:\n        prompt = '  '\n    if system_prompt is None or len(system_prompt) < 4:\n        if image is not None:\n            if prompt is not None and len(prompt) > 4:\n                core_prompt = system_prompts['i2v-prompt']\n            else:\n                core_prompt = system_prompts['i2v-noprompt']\n        else:\n            if prompt is not None and len(prompt) > 4:\n                core_prompt = system_prompts['t2v-prompt']\n            else:\n                core_prompt = system_prompts['t2v-noprompt']\n        system_prompt = f\"{system_prompts['prefix']} {core_prompt} {system_prompts['desc']}' \"\n        system_prompt += system_prompts['nsfw_ok'] if nsfw else system_prompts['nsfw_no']\n        system_prompt += f\" {system_prompts['suffix']} {system_prompts['example']}\"\n    shared.log.debug(f'Video prompt enhance: model=\"{model}\" image={image} nsfw={nsfw} prompt=\"{prompt}\"')\n    answer = vqa.interrogate(question='', prompt=prompt, system_prompt=system_prompt, image=image, model_name=model, quiet=False)\n    shared.log.debug(f'Video prompt enhance: answer=\"{answer}\"')\n    return answer\n\n\ndef create_ui(prompt_element:gr.Textbox, image_element:gr.Image):\n    with gr.Accordion('Prompt enhance', open=False):\n        with gr.Row():\n            enable = gr.Checkbox(label='Enable', value=False)\n            nsfw = gr.Checkbox(label='NSFW allowed', value=True)\n            btn_enhance = gr.Button(value='Enhance now', elem_id='btn_enhance')\n        with gr.Row():\n            model = gr.Dropdown(label='LLM Model', choices=models, value=models[0])\n        with gr.Row():\n            system_prompt = gr.Textbox(label='System prompt', placeholder='override system prompt with user-provided prompt', lines=3)\n        btn_enhance.click(\n            fn=enhance_prompt,\n            inputs=[enable, model, image_element, prompt_element, system_prompt, nsfw],\n            outputs=prompt_element,\n            show_progress='full',\n        )\n    return enable, model, system_prompt\n"
  },
  {
    "path": "modules/update.py",
    "content": "from types import SimpleNamespace\nimport gradio as gr\nimport installer as i\n\n\nversion = SimpleNamespace(**{\n    'url': '',\n    'branch': '',\n    'current': '0000-00-00',\n    'chash': '0000000',\n    'latest': '0000-00-00',\n    'lhash': '0000000',\n})\n\n\ndef get_version():\n    # try:\n    origin = i.git('remote get-url origin')\n    origin = origin.splitlines()[0]\n    version.branch = i.git('rev-parse --abbrev-ref HEAD')\n    version.branch = version.branch.splitlines()[0]\n    version.url = origin.removesuffix('.git') + '/tree/' + version.branch\n\n    ver = i.git('log --pretty=format:\"%h %ad\" -1 --date=short')\n    ver = ver.splitlines()[0]\n    version.chash, version.current = ver.split(' ')\n\n    i.git('fetch')\n    ver = i.git(f'log origin/{version.branch} --pretty=format:\"%h %ad\" -1 --date=short')\n    ver = ver.splitlines()[0]\n    version.lhash, version.latest = ver.split(' ')\n\n    # except Exception as e:\n    #    i.log.error(f'Version check failed: {e}')\n    i.log.info(f'Version: {vars(version)}')\n    latest = '<div style=\"color: var(--secondary-500)\">You\\'re up to date!</div>' if version.chash == version.lhash else '<div style=\"color: var(--secondary-500)\">Update available!</div>'\n    html = f'''\n        <div>URL: <a href=\"{version.url}\" target=\"_blank\">{version.url}</a></div>\n        <div>Current branch: <span style=\"color: var(--highlight-color)\">{version.branch}</span></div>\n        <div>Current version: <span style=\"color: var(--highlight-color)\">{version.current}</span> hash <span style=\"color: var(--highlight-color)\">{version.chash}</span></div>\n        <div>Latest version: <span style=\"color: var(--highlight-color)\">{version.latest}</span> hash <span style=\"color: var(--highlight-color)\">{version.lhash}</span></div>\n        {latest}\n    '''\n    return html\n\n\ndef apply_update(update_rebase, update_submodules, update_extensions):\n    html = [\n        'Updating...',\n        f'Core rebase: {update_rebase} | Submodules: {update_submodules} | Extensions: {update_extensions}',\n        f'<div>Current version: <span style=\"color: var(--highlight-color)\">{version.current}</span> hash <span style=\"color: var(--highlight-color)\">{version.chash}</span></div>',\n    ]\n    get_version()\n    phash = version.chash\n    try:\n        if update_rebase:\n            i.git('add .')\n            i.git('stash')\n        res = i.update('.', keep_branch=True, rebase=update_rebase)\n        html.append(res.replace('\\n', '<br>'))\n    except Exception as e:\n        html.append(f'Error during repository upgrade: {e}')\n        i.log.error(f'Error during repository upgrade: {e}')\n    if update_submodules:\n        try:\n            res = i.install_submodules(force=True)\n            html.append(res.replace('\\n', '<br>'))\n        except Exception as e:\n            html.append(f'Error during submodule upgrade: {e}')\n            i.log.error(f'Error during submodule upgrade: {e}')\n    if update_extensions:\n        try:\n            res = i.install_extensions(force=True)\n            html.append(res.replace('\\n', '<br>'))\n        except Exception as e:\n            html.append(f'Error during extension upgrade: {e}')\n            i.log.error(f'Error during extension upgrade: {e}')\n    res = get_version()\n    html.append('')\n    html.append(res)\n    if phash != version.chash:\n        html.append('<span style=\"color: var(--highlight-color)\">Update successful!<br>Perform full server restart to apply changes</span>')\n    else:\n        html.append('<span style=\"color: var(--highlight-color)\">No changes</span>')\n    return '<br>'.join(html)\n\ndef create_ui():\n    with gr.Row():\n        update_check = gr.Button(value='Check for updates', elem_id=\"ui_update_check\", variant=\"primary\")\n        update_apply = gr.Button(value='Download updates', elem_id=\"ui_update_apply\", variant=\"primary\")\n    with gr.Row():\n        update_rebase = gr.Checkbox(label='Rebase', elem_id=\"ui_update_rebase\", value=True)\n    with gr.Row():\n        update_submodules = gr.Checkbox(label='Submodules', elem_id=\"ui_update_submodules\", value=True)\n    with gr.Row():\n        update_extensions = gr.Checkbox(label='Extensions', elem_id=\"ui_update_extensions\", value=True)\n    with gr.Row():\n        update_status = gr.HTML(\"\", elem_id=\"ui_update_status\", elem_classes=['update-status'])\n    update_check.click(fn=get_version, inputs=[], outputs=[update_status])\n    update_apply.click(fn=apply_update, inputs=[update_rebase, update_submodules, update_extensions], outputs=[update_status])\n"
  },
  {
    "path": "modules/upscaler.py",
    "content": "import os\nfrom abc import abstractmethod\nfrom PIL import Image\nfrom modules import modelloader, shared\n\n\nmodels = None\n\n\nclass Upscaler:\n    name = None\n    folder = None\n    model_path = None\n    model_name = None\n    model_url = None\n    enable = True\n    filter = None\n    model = None\n    user_path = None\n    scalers = []\n    tile = True\n\n    def __init__(self, create_dirs=True):\n        global models # pylint: disable=global-statement\n        if models is None:\n            models_file = os.path.join('data', 'upscalers.json')\n            models = shared.readfile(models_file, as_type=\"dict\")\n        self.mod_pad_h = None\n        self.tile_size = shared.opts.upscaler_tile_size\n        self.tile_pad = shared.opts.upscaler_tile_overlap\n        self.device = shared.device\n        self.img = None\n        self.output = None\n        self.scale = 1\n        self.half = not shared.cmd_opts.no_half\n        self.pre_pad = 0\n        self.mod_scale = None\n        self.model_download_path = None\n        if self.user_path is not None and len(self.user_path) > 0 and not os.path.exists(self.user_path):\n            shared.log.info(f'Upscaler create: folder=\"{self.user_path}\"')\n        if self.model_path is None and self.name:\n            self.model_path = os.path.join(shared.models_path, self.name)\n        try:\n            if self.model_path and create_dirs:\n                os.makedirs(self.model_path, exist_ok=True)\n        except Exception:\n            pass\n        try:\n            import cv2  # pylint: disable=unused-import\n            self.can_tile = True\n        except Exception:\n            pass\n\n    def find_folder(self, folder, scalers, loaded):\n        for fn in os.listdir(folder): # from folder\n            file_name = os.path.join(folder, fn)\n            if os.path.isdir(file_name):\n                self.find_folder(file_name, scalers, loaded)\n                continue\n            if not file_name.endswith('.pth') and not file_name.endswith('.pt'):\n                continue\n            if file_name not in loaded:\n                model_name = os.path.splitext(fn)[0]\n                scaler = UpscalerData(name=f'{self.name} {model_name}', path=file_name, upscaler=self)\n                scaler.custom = True\n                scalers.append(scaler)\n                loaded.append(file_name)\n                # shared.log.debug(f'Upscaler type={self.name} folder=\"{folder}\" model=\"{model_name}\" path=\"{file_name}\"')\n\n    def find_scalers(self):\n        scalers = []\n        loaded = []\n        for k, v in models.items(): # from config\n            if k != self.name:\n                continue\n            for model in v:\n                local_name = os.path.join(self.user_path, modelloader.friendly_fullname(model[1]))\n                model_path = local_name if os.path.exists(local_name) else model[1]\n                scaler = UpscalerData(name=f'{k} {model[0]}', path=model_path, upscaler=self)\n                scalers.append(scaler)\n                loaded.append(model_path)\n                # shared.log.debug(f'Upscaler type={self.name} folder=\"{self.user_path}\" model=\"{model[0]}\" path=\"{model_path}\"')\n        if self.user_path is None or not os.path.exists(self.user_path):\n            return scalers\n        self.find_folder(self.user_path, scalers, loaded)\n        return scalers\n\n    @abstractmethod\n    def do_upscale(self, img: Image, selected_model: str):\n        return img\n\n    def upscale(self, img: Image, scale, selected_model: str = None):\n        jobid = shared.state.begin('Upscale')\n        self.scale = scale\n        if isinstance(img, Image.Image):\n            dest_w = int(img.width * scale)\n            dest_h = int(img.height * scale)\n        else:\n            dest_w = int(img.shape[-1] * scale)\n            dest_h = int(img.shape[-2] * scale)\n        if self.name.lower().startswith('latent'):\n            img = self.do_upscale(img, selected_model)\n        else:\n            for _ in range(3):\n                shape = (img.width, img.height)\n                img = self.do_upscale(img, selected_model)\n                if shape == (img.width, img.height):\n                    break\n                if img.width >= dest_w and img.height >= dest_h:\n                    break\n            if img.width != dest_w or img.height != dest_h:\n                img = img.resize((int(dest_w), int(dest_h)), resample=Image.Resampling.LANCZOS)\n        shared.state.end(jobid)\n        return img\n\n    @abstractmethod\n    def load_model(self, path: str):\n        pass\n\n    def find_models(self, ext_filter=None) -> list: # pylint: disable=unused-argument\n        return modelloader.load_models(model_path=self.model_path, model_url=self.model_url, command_path=self.user_path)\n\n    def update_status(self, prompt):\n        shared.log.info(f'Upscaler: type={self.name} model=\"{prompt}\"')\n\n    def find_model(self, path):\n        info = None\n        for scaler in self.scalers:\n            if (scaler.data_path == path) or (scaler.name == path):\n                info = scaler\n                break\n        if info is None:\n            shared.log.error(f'Upscaler cannot match model: type={self.name} model=\"{path}\"')\n            return None\n        if info.local_data_path.startswith(\"http\"):\n            from modules.modelloader import load_file_from_url\n            info.local_data_path = load_file_from_url(url=info.data_path, model_dir=self.model_download_path, progress=True)\n        if not os.path.isfile(info.local_data_path):\n            shared.log.error(f'Upscaler cannot find model: type={self.name} model=\"{info.local_data_path}\"')\n            return None\n        return info\n\n\nclass UpscalerData:\n    custom: bool = False\n    name = None\n    data_path = None\n    scale: int = 4\n    scaler: Upscaler = None\n    model: None\n\n    def __init__(self, name: str, path: str = None, upscaler: Upscaler = None, scale: int = 4, model=None):\n        self.name = name\n        self.data_path = path\n        self.local_data_path = path\n        self.scaler = upscaler\n        self.scale = scale\n        self.model = model\n\n\ndef compile_upscaler(model):\n    if \"Upscaler\" in shared.opts.ipex_optimize:\n        try:\n            from modules.sd_models_compile import ipex_optimize\n            model = ipex_optimize(model, apply_to_components=False, op=\"Upscaler\")\n        except Exception as e:\n            shared.log.warning(f\"Upscaler IPEX Optimize: error: {e}\")\n\n    if \"Upscaler\" in shared.opts.cuda_compile:\n        try:\n            from modules.sd_models_compile import compile_torch\n            model = compile_torch(model, apply_to_components=False, op=\"Upscaler\")\n        except Exception as e:\n            shared.log.warning(f\"Upscaler compile error: {e}\")\n    return model\n"
  },
  {
    "path": "modules/upscaler_algo.py",
    "content": "import time\nfrom PIL import Image\nfrom modules.upscaler import Upscaler, UpscalerData\nfrom modules.shared import log\n\n\nclass UpscalerDCC(Upscaler):\n    def __init__(self, dirname=None): # pylint: disable=unused-argument\n        super().__init__(False)\n        self.name = \"DCC Interpolation\"\n        self.vae = None\n        self.scalers = [\n            UpscalerData(\"DCC Interpolation\", None, self),\n        ]\n\n    def do_upscale(self, img: Image, selected_model=None):\n        import math\n        import numpy as np\n        from modules.postprocess.dcc import DCC\n        t0 = time.time()\n        normalized = np.array(img).astype(np.float32) / 255.0\n        scale = math.ceil(self.scale)\n        upscaled = DCC(normalized, scale)\n        upscaled = (upscaled - upscaled.min()) / (upscaled.max() - upscaled.min())\n        upscaled = (255.0 * upscaled).astype(np.uint8)\n        upscaled = Image.fromarray(upscaled)\n        t1 = time.time()\n        log.debug(f\"Upscale: name=DCC input={img.size} output={upscaled.size} time={t1 - t0:.2f}\")\n        return upscaled\n\n\nclass UpscalerVIPS(Upscaler):\n    def __init__(self, dirname=None): # pylint: disable=unused-argument\n        super().__init__(False)\n        self.name = \"VIPS\"\n        self.scalers = [\n            UpscalerData(\"VIPS Lanczos 2\", None, self),\n            UpscalerData(\"VIPS Lanczos 3\", None, self),\n            UpscalerData(\"VIPS Mitchell\", None, self),\n            UpscalerData(\"VIPS MagicKernelSharp 2013\", None, self),\n            UpscalerData(\"VIPS MagicKernelSharp 2021\", None, self),\n        ]\n\n    def do_upscale(self, img: Image, selected_model=None):\n        if selected_model is None:\n            return img\n        from installer import install\n        install('pyvips')\n        try:\n            import pyvips\n        except Exception as e:\n            log.error(f\"Upscaler: vips {e}\")\n            return img\n        t0 = time.time()\n        vips_image = pyvips.Image.new_from_array(img)\n        try:\n            if selected_model is None:\n                return img\n            elif selected_model == \"VIPS Lanczos 2\":\n                vips_image = vips_image.resize(2, kernel='lanczos2')\n            elif selected_model == \"VIPS Lanczos 3\":\n                vips_image = vips_image.resize(2, kernel='lanczos3')\n            elif selected_model == \"VIPS Mitchell\":\n                vips_image = vips_image.resize(2, kernel='mitchell')\n            elif selected_model == \"VIPS MagicKernelSharp 2013\":\n                vips_image = vips_image.resize(2, kernel='mks2013')\n            elif selected_model == \"VIPS MagicKernelSharp 2021\":\n                vips_image = vips_image.resize(2, kernel='mks2021')\n            else:\n                return img\n        except Exception as e:\n            log.error(f\"Upscaler: vips {e}\")\n            return img\n        upscaled = Image.fromarray(vips_image.numpy())\n        t1 = time.time()\n        log.debug(f\"Upscale: name=VIPS input={img.size} output={upscaled.size} time={t1 - t0:.2f}\")\n        return upscaled\n\nclass UpscalerHQX(Upscaler):\n    def __init__(self, dirname=None): # pylint: disable=unused-argument\n        super().__init__(False)\n        self.name = \"HQX\"\n        self.scalers = [\n            UpscalerData(\"HQX Interpolation\", None, self),\n        ]\n\n    def do_upscale(self, img: Image, selected_model=None):\n        import numpy as np\n        from modules.postprocess.hqx import hqx\n        t0 = time.time()\n        np_img = np.array(img).astype(np.uint32)\n        upscaled = hqx(np_img, 2)\n        upscaled = (upscaled).astype(np.uint8)\n        upscaled = Image.fromarray(upscaled)\n        t1 = time.time()\n        log.debug(f\"Upscale: name=HQX input={img.size} output={upscaled.size} time={t1 - t0:.2f}\")\n        return upscaled\n\nclass UpscalerICBI(Upscaler):\n    def __init__(self, dirname=None): # pylint: disable=unused-argument\n        super().__init__(False)\n        self.name = \"ICB\"\n        self.scalers = [\n            UpscalerData(\"ICB Interpolation\", None, self),\n        ]\n\n    def do_upscale(self, img: Image, selected_model=None):\n        import numpy as np\n        from modules.postprocess.icbi import icbi\n        t0 = time.time()\n        np_img = np.array(img)\n        upscaled = icbi(np_img)\n        upscaled = Image.fromarray(upscaled)\n        t1 = time.time()\n        log.debug(f\"Upscale: name=ICB input={img.size} output={upscaled.size} time={t1 - t0:.2f}\")\n        return upscaled\n"
  },
  {
    "path": "modules/upscaler_simple.py",
    "content": "from PIL import Image\nfrom modules.upscaler import Upscaler, UpscalerData\nfrom modules.shared import log\n\n\nclass UpscalerNone(Upscaler):\n    def __init__(self, dirname=None): # pylint: disable=unused-argument\n        super().__init__(False)\n        self.name = \"None\"\n        self.scalers = [UpscalerData(\"None\", None, self)]\n\n    def load_model(self, path):\n        pass\n\n    def do_upscale(self, img, selected_model=None):\n        return img\n\n\nclass UpscalerResize(Upscaler):\n    def __init__(self, dirname=None): # pylint: disable=unused-argument\n        super().__init__(False)\n        self.name = \"Resize\"\n        self.scalers = [\n            UpscalerData(\"Resize Nearest\", None, self),\n            UpscalerData(\"Resize Lanczos\", None, self),\n            UpscalerData(\"Resize Bicubic\", None, self),\n            UpscalerData(\"Resize Bilinear\", None, self),\n            UpscalerData(\"Resize Hamming\", None, self),\n            UpscalerData(\"Resize Box\", None, self),\n        ]\n\n    def do_upscale(self, img: Image, selected_model=None):\n        if selected_model is None:\n            return img\n        elif selected_model == \"Resize Nearest\":\n            return img.resize((int(img.width * self.scale), int(img.height * self.scale)), resample=Image.Resampling.NEAREST)\n        elif selected_model == \"Resize Lanczos\":\n            return img.resize((int(img.width * self.scale), int(img.height * self.scale)), resample=Image.Resampling.LANCZOS)\n        elif selected_model == \"Resize Bicubic\":\n            return img.resize((int(img.width * self.scale), int(img.height * self.scale)), resample=Image.Resampling.BICUBIC)\n        elif selected_model == \"Resize Bilinear\":\n            return img.resize((int(img.width * self.scale), int(img.height * self.scale)), resample=Image.Resampling.BILINEAR)\n        elif selected_model == \"Resize Hamming\":\n            return img.resize((int(img.width * self.scale), int(img.height * self.scale)), resample=Image.Resampling.HAMMING)\n        elif selected_model == \"Resize Box\":\n            return img.resize((int(img.width * self.scale), int(img.height * self.scale)), resample=Image.Resampling.BOX)\n        else:\n            return img\n\n\n    def load_model(self, _):\n        pass\n\n\nclass UpscalerLatent(Upscaler):\n    def __init__(self, dirname=None): # pylint: disable=unused-argument\n        super().__init__(False)\n        self.name = \"Latent\"\n        self.scalers = [\n            UpscalerData(\"Latent Nearest\", None, self),\n            UpscalerData(\"Latent Nearest exact\", None, self),\n            UpscalerData(\"Latent Area\", None, self),\n            UpscalerData(\"Latent Bilinear\", None, self),\n            UpscalerData(\"Latent Bicubic\", None, self),\n            UpscalerData(\"Latent Bilinear antialias\", None, self),\n            UpscalerData(\"Latent Bicubic antialias\", None, self),\n        ]\n\n    def do_upscale(self, img: Image, selected_model=None):\n        import torch\n        import torch.nn.functional as F\n        if isinstance(img, torch.Tensor) and (len(img.shape) == 4):\n            _batch, _channel, h, w = img.shape\n        else:\n            log.error(f\"Upscale: type=latent image={img.shape if isinstance(img, torch.Tensor) else img} type={type(img)} if not supported\")\n            return img\n        h, w = int((8 * h * self.scale) // 8), int((8 * w * self.scale) // 8)\n        mode, antialias = '', ''\n        if selected_model == \"Latent Nearest\":\n            mode, antialias = 'nearest', False\n        elif selected_model == \"Latent Nearest exact\":\n            mode, antialias = 'nearest-exact', False\n        elif selected_model == \"Latent Area\":\n            mode, antialias = 'area', False\n        elif selected_model == \"Latent Bilinear\":\n            mode, antialias = 'bilinear', False\n        elif selected_model == \"Latent Bicubic\":\n            mode, antialias = 'bicubic', False\n        elif selected_model == \"Latent Bilinear antialias\":\n            mode, antialias = 'bilinear', True\n        elif selected_model == \"Latent Bicubic antialias\":\n            mode, antialias = 'bicubic', True\n        else:\n            raise log.error(f\"Upscale: type=latent model={selected_model} unknown\")\n        return F.interpolate(img, size=(h, w), mode=mode, antialias=antialias)\n"
  },
  {
    "path": "modules/upscaler_spandrel.py",
    "content": "import os\nimport time\nfrom PIL import Image\nfrom modules.upscaler import Upscaler, UpscalerData\nfrom modules import devices, paths\nfrom modules.shared import log\n\n\nMODELS = {\n    \"Spandrel 4x RealPLKSR NomosWebPhoto\": \"https://huggingface.co/vladmandic/sdnext-upscalers/resolve/main/4xNomosWebPhoto_RealPLKSR.safetensors\",\n    \"Spandrel 2x RealPLKSR AnimeSharpV2\": \"https://huggingface.co/vladmandic/sdnext-upscalers/resolve/main/2x-AnimeSharpV2_RPLKSR_Sharp.pth\",\n}\n\nclass UpscalerSpandrel(Upscaler):\n    def __init__(self, dirname=None): # pylint: disable=unused-argument\n        super().__init__(False)\n        self.name = \"Spandrel\"\n        self.model_path = os.path.join(paths.models_path, 'Spandrel')\n        self.user_path = os.path.join(paths.models_path, 'Spandrel')\n        self.selected = None\n        self.model = None\n        self.scalers = []\n        for model_name, model_path in MODELS.items():\n            scaler = UpscalerData(name=model_name, path=model_path, upscaler=self)\n            self.scalers.append(scaler)\n\n    def process(self, img: Image.Image) -> Image.Image:\n        import torchvision.transforms.functional as TF\n        tensor = TF.to_tensor(img).unsqueeze(0).to(devices.device)\n        img = img.convert('RGB')\n        t0 = time.time()\n        with devices.inference_context():\n            tensor = self.model(tensor)\n            tensor = tensor.clamp(0, 1).squeeze(0).cpu()\n        t1 = time.time()\n        upscaled = TF.to_pil_image(tensor)\n        log.debug(f'Upscale: name=\"{self.selected}\" input={img.size} output={upscaled.size} time={t1 - t0:.2f}')\n        return upscaled\n\n    def do_upscale(self, img: Image, selected_model=None):\n        from installer import install\n        if selected_model is None:\n            return img\n        install('spandrel')\n        try:\n            import spandrel\n            if (self.model is None) or (self.selected != selected_model):\n                self.selected = selected_model\n                model = self.find_model(selected_model)\n                self.model = spandrel.ModelLoader().load_from_file(model.local_data_path)\n                self.model.to(devices.device).eval()\n            return self.process(img)\n        except Exception as e:\n            log.error(f'Spandrel: {e}')\n            return img\n"
  },
  {
    "path": "modules/upscaler_vae.py",
    "content": "import time\nfrom PIL import Image\nfrom modules.upscaler import Upscaler, UpscalerData\n\n\nclass UpscalerAsymmetricVAE(Upscaler):\n    def __init__(self, dirname=None): # pylint: disable=unused-argument\n        super().__init__(False)\n        self.name = \"Asymmetric VAE\"\n        self.vae = None\n        self.selected = None\n        self.scalers = [\n            UpscalerData(\"Asymmetric VAE v1\", None, self),\n            UpscalerData(\"Asymmetric VAE v2\", None, self),\n        ]\n\n    def do_upscale(self, img: Image, selected_model=None):\n        if selected_model is None:\n            return img\n        import torchvision.transforms.functional as F\n        import diffusers\n        from modules import shared, devices\n        if self.vae is None or (selected_model != self.selected):\n            if 'v1' in selected_model:\n                repo_id = 'Heasterian/AsymmetricAutoencoderKLUpscaler'\n            else:\n                repo_id = 'Heasterian/AsymmetricAutoencoderKLUpscaler_v2'\n            self.vae = diffusers.AsymmetricAutoencoderKL.from_pretrained(repo_id, cache_dir=shared.opts.hfcache_dir)\n            self.vae.requires_grad_(False)\n            self.vae = self.vae.to(device=devices.device, dtype=devices.dtype)\n            self.vae.eval()\n            self.selected = selected_model\n            shared.log.debug(f'Upscaler load: selected=\"{self.selected}\" vae=\"{repo_id}\"')\n        t0 = time.time()\n        img = img.resize((8 * (img.width // 8), 8 * (img.height // 8)), resample=Image.Resampling.LANCZOS).convert('RGB')\n        tensor = (F.pil_to_tensor(img).unsqueeze(0) / 255.0).to(device=devices.device, dtype=devices.dtype)\n        self.vae = self.vae.to(device=devices.device)\n        tensor = self.vae(tensor).sample\n        upscaled = F.to_pil_image(tensor.squeeze().clamp(0.0, 1.0).float().cpu())\n        self.vae = self.vae.to(device=devices.cpu)\n        t1 = time.time()\n        shared.log.debug(f'Upscale: name=\"{self.selected}\" input={img.size} output={upscaled.size} time={t1 - t0:.2f}')\n        return upscaled\n\n\nclass UpscalerWanUpscale(Upscaler):\n    def __init__(self, dirname=None): # pylint: disable=unused-argument\n        super().__init__(False)\n        self.name = \"WAN Upscale\"\n        self.vae_encode = None\n        self.vae_decode = None\n        self.selected = None\n        self.scalers = [\n            UpscalerData(\"WAN Asymmetric Upscale\", None, self),\n        ]\n\n    def do_upscale(self, img: Image, selected_model=None):\n        if selected_model is None:\n            return img\n        import torchvision.transforms.functional as F\n        import torch.nn.functional as FN\n        import diffusers\n        from modules import shared, devices\n        if (self.vae_encode is None) or (self.vae_decode is None) or (selected_model != self.selected):\n            repo_encode = 'Qwen/Qwen-Image-Edit-2509'\n            subfolder_encode = 'vae'\n            self.vae_encode = diffusers.AutoencoderKLWan.from_pretrained(repo_encode, subfolder=subfolder_encode, cache_dir=shared.opts.hfcache_dir)\n            self.vae_encode.requires_grad_(False)\n            self.vae_encode = self.vae_encode.to(device=devices.device, dtype=devices.dtype)\n            self.vae_encode.eval()\n            repo_decode = 'spacepxl/Wan2.1-VAE-upscale2x'\n            subfolder_decode = \"diffusers/Wan2.1_VAE_upscale2x_imageonly_real_v1\"\n            self.vae_decode = diffusers.AutoencoderKLWan.from_pretrained(repo_decode, subfolder=subfolder_decode, cache_dir=shared.opts.hfcache_dir)\n            self.vae_decode.requires_grad_(False)\n            self.vae_decode = self.vae_decode.to(device=devices.device, dtype=devices.dtype)\n            self.vae_decode.eval()\n            self.selected = selected_model\n            shared.log.debug(f'Upscaler load: selected=\"{self.selected}\" encode=\"{repo_encode}\" decode=\"{repo_decode}\"')\n\n        t0 = time.time()\n        self.vae_encode = self.vae_encode.to(device=devices.device)\n        tensor = (F.pil_to_tensor(img).unsqueeze(0).unsqueeze(2) / 255.0).to(device=devices.device, dtype=devices.dtype)\n        tensor = self.vae_encode.encode(tensor).latent_dist.mode()\n        self.vae_encode.to(device=devices.cpu)\n\n        self.vae_decode = self.vae_decode.to(device=devices.device)\n        tensor = self.vae_decode.decode(tensor).sample\n        tensor = FN.pixel_shuffle(tensor.movedim(2, 1), upscale_factor=2).movedim(1, 2) # pixel shuffle needs [..., C, H, W] format\n        self.vae_decode.to(device=devices.cpu)\n\n        upscaled = F.to_pil_image(tensor.squeeze().clamp(0.0, 1.0).float().cpu())\n        t1 = time.time()\n        shared.log.debug(f'Upscale: name=\"{self.selected}\" input={img.size} output={upscaled.size} time={t1 - t0:.2f}')\n        return upscaled\n"
  },
  {
    "path": "modules/vae/sd_vae_approx.py",
    "content": "import os\nimport torch\nfrom torch import nn\nfrom modules import devices, paths, shared\n\n\nsd_vae_approx_model = None\n\n\nclass VAEApprox(nn.Module):\n    def __init__(self):\n        super().__init__()\n        self.conv1 = nn.Conv2d(4, 8, (7, 7))\n        self.conv2 = nn.Conv2d(8, 16, (5, 5))\n        self.conv3 = nn.Conv2d(16, 32, (3, 3))\n        self.conv4 = nn.Conv2d(32, 64, (3, 3))\n        self.conv5 = nn.Conv2d(64, 32, (3, 3))\n        self.conv6 = nn.Conv2d(32, 16, (3, 3))\n        self.conv7 = nn.Conv2d(16, 8, (3, 3))\n        self.conv8 = nn.Conv2d(8, 3, (3, 3))\n\n    def forward(self, x):\n        extra = 11\n        try:\n            x = nn.functional.interpolate(x, (x.shape[2] * 2, x.shape[3] * 2))\n            x = nn.functional.pad(x, (extra, extra, extra, extra)) # pylint: disable=not-callable\n            for layer in [self.conv1, self.conv2, self.conv3, self.conv4, self.conv5, self.conv6, self.conv7, self.conv8, ]:\n                x = layer(x)\n                x = nn.functional.leaky_relu(x, 0.1)\n        except Exception:\n            pass\n        return x\n\n\ndef nn_approximation(sample): # Approximate NN\n    global sd_vae_approx_model # pylint: disable=global-statement\n    # ROCm throws memory exceptions and crashes the GPU with it if we use approx on the GPU\n    device = devices.device if devices.backend != \"rocm\" else \"cpu\"\n    dtype = devices.dtype_vae if devices.backend != \"rocm\" else torch.float32\n    if sd_vae_approx_model is None:\n        model_path = os.path.join(paths.models_path, \"VAE-approx\", \"model.pt\")\n        sd_vae_approx_model = VAEApprox()\n        if not os.path.exists(model_path):\n            model_path = os.path.join(paths.script_path, \"models\", \"VAE-approx\", \"model.pt\")\n        approx_weights = torch.load(model_path, map_location='cpu' if devices.device.type != 'cuda' or devices.backend == \"rocm\" else None)\n        sd_vae_approx_model.load_state_dict(approx_weights)\n        sd_vae_approx_model.eval()\n        sd_vae_approx_model.to(device, dtype)\n        shared.log.debug(f'VAE load: type=approximate model=\"{model_path}\"')\n    try:\n        in_sample = sample.to(device, dtype).unsqueeze(0)\n        sd_vae_approx_model.to(device, dtype)\n        x_sample = sd_vae_approx_model(in_sample)\n        x_sample = x_sample[0].to(torch.float32).detach().cpu()\n        return x_sample\n    except Exception as e:\n        shared.log.error(f'VAE decode approximate: {e}')\n        return sample\n\n\ndef cheap_approximation(sample): # Approximate simple\n    # https://discuss.huggingface.co/t/decoding-latents-to-rgb-without-upscaling/23204/2\n    if shared.sd_model_type == \"sdxl\":\n        simple_weights = torch.tensor([\n            [0.4543,-0.2868, 0.1566,-0.4748],\n            [0.5008, 0.0952, 0.2155,-0.3268],\n            [0.5294, 0.1625,-0.0624,-0.3793]\n        ]).reshape(3, 4, 1, 1)\n        simple_bias = torch.tensor([0.1375, 0.0144, -0.0675])\n    else:\n        simple_weights = torch.tensor([\n            [0.298, 0.187,-0.158,-0.184],\n            [0.207, 0.286, 0.189,-0.271],\n            [0.208, 0.173, 0.264,-0.473],\n        ]).reshape(3, 4, 1, 1)\n        simple_bias = None\n    try:\n        weights = simple_weights.to(sample.device, sample.dtype)\n        bias = simple_bias.to(sample.device, sample.dtype) if simple_bias is not None else None\n        x_sample = nn.functional.conv2d(sample, weights, bias) # pylint: disable=not-callable\n        return x_sample\n    except Exception as e:\n        shared.log.error(f'VAE decode simple: {e}')\n        return sample\n"
  },
  {
    "path": "modules/vae/sd_vae_fal.py",
    "content": "import torch\nimport torch.nn as nn\nfrom diffusers.models import AutoencoderTiny\nfrom diffusers.models.modeling_utils import ModelMixin\nfrom diffusers.models.autoencoders.vae import EncoderOutput, DecoderOutput\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\n\nfrom modules import shared, devices\n\n\nrepo_id = \"fal/FLUX.2-Tiny-AutoEncoder\"\ntiny_vae = None\nprev_vae = None\n\n\ndef is_compatile():\n    return shared.sd_model_type in ['f2']\n\n\ndef load_fal_vae():\n    if not hasattr(shared.sd_model, 'vae') or not is_compatile():\n        return\n    global tiny_vae, prev_vae # pylint: disable=global-statement\n    if tiny_vae is None:\n        tiny_vae = Flux2TinyAutoEncoder.from_pretrained(\n            repo_id,\n            cache_dir=shared.opts.hfcache_dir,\n        ).to(device=devices.device, dtype=devices.dtype)\n    if prev_vae is None:\n        prev_vae = shared.sd_model.vae\n    shared.sd_model.vae = tiny_vae\n    shared.log.info(f'VAE load: cls={tiny_vae.__class__.__name__} repo_id={repo_id}')\n\n\ndef unload_fal_vae():\n    global prev_vae # pylint: disable=global-statement\n    if not hasattr(shared.sd_model, 'vae'):\n        return\n    if prev_vae is not None:\n        shared.sd_model.vae = prev_vae\n        prev_vae = None\n        shared.log.info(f'VAE restore: cls={prev_vae.__class__.__name__}')\n\n\nclass Flux2TinyAutoEncoder(ModelMixin, ConfigMixin):\n    @register_to_config\n    def __init__(\n        self,\n        in_channels: int = 3,\n        out_channels: int = 3,\n        latent_channels: int = 128,\n        encoder_block_out_channels: list[int] = [64, 64, 64, 64],\n        decoder_block_out_channels: list[int] = [64, 64, 64, 64],\n        act_fn: str = \"silu\",\n        upsampling_scaling_factor: int = 2,\n        num_encoder_blocks: list[int] = [1, 3, 3, 3],\n        num_decoder_blocks: list[int] = [3, 3, 3, 1],\n        latent_magnitude: float = 3.0,\n        latent_shift: float = 0.5,\n        force_upcast: bool = False,\n        scaling_factor: float = 0.13025,\n    ) -> None:\n        super().__init__()\n        self.tiny_vae = AutoencoderTiny(\n            in_channels=in_channels,\n            out_channels=out_channels,\n            encoder_block_out_channels=encoder_block_out_channels,\n            decoder_block_out_channels=decoder_block_out_channels,\n            act_fn=act_fn,\n            latent_channels=latent_channels // 4,\n            upsampling_scaling_factor=upsampling_scaling_factor,\n            num_encoder_blocks=num_encoder_blocks,\n            num_decoder_blocks=num_decoder_blocks,\n            latent_magnitude=latent_magnitude,\n            latent_shift=latent_shift,\n            force_upcast=force_upcast,\n            scaling_factor=scaling_factor,\n        )\n        self.extra_encoder = nn.Conv2d(\n            latent_channels // 4, latent_channels,\n            kernel_size=4, stride=2, padding=1\n        )\n        self.extra_decoder = nn.ConvTranspose2d(\n            latent_channels, latent_channels // 4,\n            kernel_size=4, stride=2, padding=1\n        )\n        self.residual_encoder = nn.Sequential(\n            nn.Conv2d(latent_channels, latent_channels, kernel_size=3, padding=1),\n            nn.GroupNorm(8, latent_channels),\n            nn.SiLU(),\n            nn.Conv2d(latent_channels, latent_channels, kernel_size=3, padding=1),\n        )\n        self.residual_decoder = nn.Sequential(\n            nn.Conv2d(latent_channels // 4, latent_channels // 4, kernel_size=3, padding=1),\n            nn.GroupNorm(8, latent_channels // 4),\n            nn.SiLU(),\n            nn.Conv2d(latent_channels // 4, latent_channels // 4, kernel_size=3, padding=1),\n        )\n\n    def encode(self, x: torch.Tensor, return_dict: bool = True) -> EncoderOutput:\n        encoded = self.tiny_vae.encode(x, return_dict=False)[0]\n        compressed = self.extra_encoder(encoded)\n        enhanced = self.residual_encoder(compressed) + compressed\n        if return_dict:\n            return EncoderOutput(latent=enhanced)\n        return enhanced\n\n    def decode(self, z: torch.Tensor, return_dict: bool = True) -> DecoderOutput:\n        decompressed = self.extra_decoder(z)\n        enhanced = self.residual_decoder(decompressed) + decompressed\n        decoded = self.tiny_vae.decode(enhanced, return_dict=False)[0]\n        if return_dict:\n            return DecoderOutput(sample=decoded)\n        return decoded\n\n    def forward(self, sample: torch.Tensor, return_dict: bool = True) -> DecoderOutput:\n        encoded = self.encode(sample, return_dict=False)[0]\n        decoded = self.decode(encoded, return_dict=False)[0]\n        if return_dict:\n            return DecoderOutput(sample=decoded)\n        return decoded\n"
  },
  {
    "path": "modules/vae/sd_vae_natten.py",
    "content": "# copied from https://github.com/Birch-san/sdxl-play/blob/main/src/attn/natten_attn_processor.py\n\nimport os\nfrom typing import Optional\nfrom diffusers.models.attention import Attention\nimport torch\nfrom torch.nn import Linear\nfrom einops import rearrange\nfrom installer import install, log\n\n\ndef init():\n    try:\n        os.environ['NATTEN_CUDA_ARCH'] = '8.0;8.6'\n        install('natten')\n        import natten\n        return natten\n    except Exception as e:\n        log.error(f'Init natten: {e}')\n        return None\n\n\ndef fuse_qkv(attn: Attention) -> None:\n    has_bias = attn.to_q.bias is not None\n    qkv = Linear(in_features=attn.to_q.in_features, out_features=attn.to_q.out_features*3, bias=has_bias, dtype=attn.to_q.weight.dtype, device=attn.to_q.weight.device)\n    qkv.weight.data.copy_(torch.cat([attn.to_q.weight.data * attn.scale, attn.to_k.weight.data, attn.to_v.weight.data]))\n    if has_bias:\n        qkv.bias.data.copy_(torch.cat([attn.to_q.bias.data * attn.scale, attn.to_k.bias.data, attn.to_v.bias.data]))\n    setattr(attn, 'qkv', qkv) # noqa: B010\n    del attn.to_q, attn.to_k, attn.to_v\n\n\ndef fuse_vae_qkv(vae) -> None:\n    for attn in [*vae.encoder.mid_block.attentions, *vae.decoder.mid_block.attentions]:\n        fuse_qkv(attn)\n\n\nclass NattenAttnProcessor:\n    kernel_size: int\n\n    def __init__(self, kernel_size: int):\n        self.kernel_size = kernel_size\n\n    def __call__(\n        self,\n        attn: Attention,\n        hidden_states: torch.FloatTensor,\n        encoder_hidden_states: Optional[torch.FloatTensor] = None,\n        attention_mask: Optional[torch.BoolTensor] = None,\n        temb: Optional[torch.FloatTensor] = None,\n    ):\n        import natten\n        assert hasattr(attn, 'qkv'), \"Did not find property qkv on attn. Expected you to fuse its q_proj, k_proj, v_proj weights and biases beforehand, and multiply attn.scale into the q weights and bias.\"\n        residual = hidden_states\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n        # assumes MHA (as opposed to GQA)\n        inner_dim: int = attn.qkv.out_features // 3\n        if attention_mask is not None:\n            raise ValueError(\"No mask customization for neighbourhood attention; the mask is already complicated enough as it is\")\n        if encoder_hidden_states is not None:\n            raise ValueError(\"NATTEN cannot be used for cross-attention. I think.\")\n        if attn.group_norm is not None:\n            hidden_states = attn.group_norm(hidden_states)\n            hidden_states = rearrange(hidden_states, '... c h w -> ... h w c')\n        qkv = attn.qkv(hidden_states)\n        # assumes MHA (as opposed to GQA)\n        q, k, v = rearrange(qkv, \"n h w (t nh e) -> t n nh h w e\", t=3, e=inner_dim)\n        qk = natten.functional.na2d_qk(q, k, self.kernel_size, 1) # natten2dqk\n        a = torch.softmax(qk, dim=-1)\n        hidden_states = natten.functional.na2d_av(a, v, self.kernel_size, 1) # natten2dav\n        hidden_states = rearrange(hidden_states, \"n nh h w e -> n h w (nh e)\")\n        linear_proj, dropout = attn.to_out\n        hidden_states = linear_proj(hidden_states)\n        hidden_states = dropout(hidden_states)\n        hidden_states = rearrange(hidden_states, '... h w c -> ... c h w')\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n        return hidden_states\n\n\ndef enable_natten(pipe):\n    if not hasattr(pipe, 'vae'):\n        return\n    natten = init()\n    kernel_size = 17\n    if natten is not None:\n        log.info(f'VAE natten: version={natten.__version__} kernel={kernel_size}')\n        fuse_vae_qkv(pipe.vae)\n        pipe.vae.set_attn_processor(NattenAttnProcessor(kernel_size=kernel_size))\n"
  },
  {
    "path": "modules/vae/sd_vae_ostris.py",
    "content": "import time\nimport torch\nimport diffusers\nfrom huggingface_hub import hf_hub_download\nfrom safetensors.torch import load_file\nfrom modules import shared, devices\n\n\ndecoder_id = \"ostris/vae-kl-f8-d16\"\nadapter_id = \"ostris/16ch-VAE-Adapters\"\n\n\ndef load_vae(pipe):\n    if shared.sd_model_type == 'sd':\n        adapter_file = \"16ch-VAE-Adapter-SD15-alpha.safetensors\"\n    elif shared.sd_model_type == 'sdxl':\n        adapter_file = \"16ch-VAE-Adapter-SDXL-alpha_v02.safetensors\"\n    else:\n        shared.log.error('VAE: type=osiris unsupported model type')\n        return\n    t0 = time.time()\n    ckpt_file = hf_hub_download(adapter_id, adapter_file, cache_dir=shared.opts.hfcache_dir)\n    ckpt = load_file(ckpt_file)\n    lora_state_dict = {k: v for k, v in ckpt.items() if \"lora\" in k}\n    unet_state_dict = {k.replace(\"unet_\", \"\"): v for k, v in ckpt.items() if \"unet_\" in k}\n\n    pipe.unet.conv_in = torch.nn.Conv2d(16, 320, 3, 1, 1)\n    pipe.unet.conv_out = torch.nn.Conv2d(320, 16, 3, 1, 1)\n    pipe.unet.load_state_dict(unet_state_dict, strict=False)\n    pipe.unet.conv_in.to(devices.dtype)\n    pipe.unet.conv_out.to(devices.dtype)\n    pipe.unet.config.in_channels = 16\n    pipe.unet.config.out_channels = 16\n\n    pipe.load_lora_weights(lora_state_dict, adapter_name=adapter_id)\n    # pipe.set_adapters(adapter_names=[adapter_id], adapter_weights=[0.8])\n    pipe.fuse_lora(adapter_names=[adapter_id], lora_scale=0.8, fuse_unet=True)\n\n    pipe.vae = diffusers.AutoencoderKL.from_pretrained(decoder_id, torch_dtype=devices.dtype, cache_dir=shared.opts.hfcache_dir)\n    t1 = time.time()\n    shared.log.info(f'VAE load: type=osiris decoder=\"{decoder_id}\" adapter=\"{adapter_id}\" time={t1-t0:.2f}s')\n"
  },
  {
    "path": "modules/vae/sd_vae_remote.py",
    "content": "import io\nimport time\nimport json\nimport torch\nimport requests\nfrom PIL import Image\nfrom safetensors.torch import _tobytes\n\n\nhf_decode_endpoints = {\n    'sd': 'https://q1bj3bpq6kzilnsu.us-east-1.aws.endpoints.huggingface.cloud',\n    'sdxl': 'https://x2dmsqunjd6k9prw.us-east-1.aws.endpoints.huggingface.cloud',\n    'f1': 'https://whhx50ex1aryqvw6.us-east-1.aws.endpoints.huggingface.cloud',\n    'hunyuanvideo': 'https://o7ywnmrahorts457.us-east-1.aws.endpoints.huggingface.cloud',\n}\nhf_decode_endpoints['pixartalpha'] = hf_decode_endpoints['sd']\nhf_decode_endpoints['pixartsigma'] = hf_decode_endpoints['sdxl']\nhf_decode_endpoints['hunyuandit'] = hf_decode_endpoints['sdxl']\nhf_decode_endpoints['auraflow'] = hf_decode_endpoints['sdxl']\nhf_decode_endpoints['omnigen'] = hf_decode_endpoints['sdxl']\nhf_decode_endpoints['h1'] = hf_decode_endpoints['f1']\nhf_decode_endpoints['chroma'] = hf_decode_endpoints['f1']\nhf_decode_endpoints['zimage'] = hf_decode_endpoints['f1']\nhf_decode_endpoints['lumina2'] = hf_decode_endpoints['f1']\n\nhf_encode_endpoints = {\n    'sd': 'https://qc6479g0aac6qwy9.us-east-1.aws.endpoints.huggingface.cloud',\n    'sdxl': 'https://xjqqhmyn62rog84g.us-east-1.aws.endpoints.huggingface.cloud',\n    'f1': 'https://ptccx55jz97f9zgo.us-east-1.aws.endpoints.huggingface.cloud',\n    'chroma': 'https://ptccx55jz97f9zgo.us-east-1.aws.endpoints.huggingface.cloud',\n}\nhf_encode_endpoints['pixartalpha'] = hf_encode_endpoints['sd']\nhf_encode_endpoints['pixartsigma'] = hf_encode_endpoints['sdxl']\nhf_encode_endpoints['hunyuandit'] = hf_encode_endpoints['sdxl']\nhf_encode_endpoints['auraflow'] = hf_encode_endpoints['sdxl']\nhf_encode_endpoints['omnigen'] = hf_encode_endpoints['sdxl']\nhf_encode_endpoints['h1'] = hf_encode_endpoints['f1']\nhf_encode_endpoints['zimage'] = hf_encode_endpoints['f1']\nhf_encode_endpoints['lumina2'] = hf_encode_endpoints['f1']\n\ndtypes = {\n    \"float16\": torch.float16,\n    \"float32\": torch.float32,\n    \"bfloat16\": torch.bfloat16,\n    \"uint8\": torch.uint8,\n}\n\n\ndef remote_decode(latents: torch.Tensor, width: int = 0, height: int = 0, model_type: str | None = None):\n    from modules import devices, shared, errors, modelloader\n    tensors = []\n    content = 0\n    model_type = model_type or shared.sd_model_type\n    url = hf_decode_endpoints.get(model_type, None)\n    if url is None:\n        shared.log.error(f'Decode: type=\"remote\" type={model_type} unsuppported')\n        return tensors\n    t0 = time.time()\n    modelloader.hf_login()\n    latent_copy = latents.detach().clone().to(device=devices.cpu, dtype=devices.dtype)\n    latent_copy = latents.unsqueeze(0) if len(latents.shape) == 3 else latents\n    if model_type == 'hunyuanvideo':\n        latent_copy = latent_copy.unsqueeze(0) if len(latents.shape) == 4 else latents\n\n    for i in range(latent_copy.shape[0]):\n        params = {}\n        try:\n            latent = latent_copy[i]\n            if model_type not in ['f1', 'chroma']:\n                latent = latent.unsqueeze(0)\n            params = {\n                \"input_tensor_type\": \"binary\",\n                \"shape\": list(latent.shape),\n                \"dtype\": str(latent.dtype).split(\".\", maxsplit=1)[-1],\n            }\n            headers = { \"Content-Type\": \"tensor/binary\" }\n            if 'video' in model_type:\n                params[\"partial_postprocess\"] = False\n                params[\"output_type\"] = \"pt\"\n                params[\"output_tensor_type\"] = \"binary\"\n                headers[\"Accept\"] = \"tensor/binary\"\n            elif shared.opts.remote_vae_type == 'png':\n                params[\"image_format\"] = \"png\"\n                params[\"output_type\"] = \"pil\"\n                headers[\"Accept\"] = \"image/png\"\n            elif shared.opts.remote_vae_type == 'jpg':\n                params[\"image_format\"] = \"jpg\"\n                params[\"output_type\"] = \"pil\"\n                headers[\"Accept\"] = \"image/jpeg\"\n            elif shared.opts.remote_vae_type == 'raw':\n                params[\"partial_postprocess\"] = False\n                params[\"output_type\"] = \"pt\"\n                params[\"output_tensor_type\"] = \"binary\"\n                headers[\"Accept\"] = \"tensor/binary\"\n            if model_type in {'f1', 'h1', 'zimage', 'lumina2', 'chroma'} and (width > 0) and (height > 0):\n                params['width'] = width\n                params['height'] = height\n            if shared.sd_model.vae is not None and shared.sd_model.vae.config is not None:\n                params['scaling_factor'] = shared.sd_model.vae.config.get(\"scaling_factor\", None)\n                params['shift_factor'] = shared.sd_model.vae.config.get(\"shift_factor\", None)\n            response = requests.post(\n                url=url,\n                headers=headers,\n                params=params,\n                data=_tobytes(latent, \"tensor\"),\n                timeout=300,\n            )\n            if not response.ok:\n                shared.log.error(f'Decode: type=\"remote\" model={model_type} code={response.status_code} shape={latent.shape} url=\"{url}\" args={params} headers={response.headers} response={response.json()}')\n            else:\n                content += len(response.content)\n                if shared.opts.remote_vae_type == 'raw' or 'video' in model_type:\n                    shape = json.loads(response.headers[\"shape\"])\n                    dtype = response.headers[\"dtype\"]\n                    tensor = torch.frombuffer(bytearray(response.content), dtype=dtypes[dtype]).reshape(shape)\n                    tensors.append(tensor)\n                elif shared.opts.remote_vae_type == 'jpg' or shared.opts.remote_vae_type == 'png':\n                    image = Image.open(io.BytesIO(response.content)).convert(\"RGB\")\n                    tensors.append(image)\n        except Exception as e:\n            shared.log.error(f'Decode: type=\"remote\" model={model_type} {e}')\n            errors.display(e, 'VAE')\n    if len(tensors) > 0 and shared.opts.remote_vae_type == 'raw':\n        tensors = torch.cat(tensors, dim=0)\n    t1 = time.time()\n    shared.log.debug(f'Decode: type=\"remote\" model={model_type} mode={shared.opts.remote_vae_type} args={params} bytes={content} time={t1-t0:.3f}s')\n    return tensors\n\n\ndef remote_encode(images: list[Image.Image], model_type: str | None = None):\n    from diffusers.utils import remote_utils\n    from modules import devices, shared, errors, modelloader\n    if not shared.opts.remote_vae_encode:\n        return images\n    tensors = []\n    model_type = model_type or shared.sd_model_type\n    url = hf_encode_endpoints.get(model_type, None)\n    if url is None:\n        shared.log.error(f'Decode: type=\"remote\" type={model_type} unsuppported')\n        return images\n    t0 = time.time()\n    modelloader.hf_login()\n\n    if isinstance(images, Image.Image):\n        images = [images]\n    for init_image in images:\n        try:\n            init_latent = remote_utils.remote_encode(\n                endpoint=url,\n                image=init_image,\n                scaling_factor = shared.sd_model.vae.config.get(\"scaling_factor\", None),\n                shift_factor = shared.sd_model.vae.config.get(\"shift_factor\", None),\n            )\n            tensors.append(init_latent)\n        except Exception as e:\n            shared.log.error(f'Encode: type=\"remote\" model={model_type} {e}')\n            errors.display(e, 'VAE')\n\n    if len(tensors) > 0 and torch.is_tensor(tensors[0]):\n        tensors = torch.cat(tensors, dim=0)\n        tensors = tensors.to(dtype=devices.dtype)\n    else:\n        return images\n    t1 = time.time()\n    shared.log.debug(f'Encode: type=\"remote\" model={model_type} mode={shared.opts.remote_vae_type} image={images} latent={tensors.shape} time={t1-t0:.3f}s')\n    return tensors\n"
  },
  {
    "path": "modules/vae/sd_vae_repa.py",
    "content": "import diffusers\nfrom modules import shared\n\n\nmodels = {\n    'sd': { 'repo_id': 'REPA-E/e2e-sdvae-hf', 'cls': 'AutoencoderKL' },\n    'sdxl': { 'repo_id': 'REPA-E/e2e-sdvae-hf', 'cls': 'AutoencoderKL' },\n    'sd3': { 'repo_id': 'REPA-E/e2e-sd3.5-vae', 'cls': 'AutoencoderKL' },\n    'f1': { 'repo_id': 'REPA-E/e2e-flux-vae', 'cls': 'AutoencoderKL' },\n    'qwen': { 'repo_id': 'REPA-E/e2e-qwenimage-vae', 'cls': 'AutoencoderKLQwenImage' },\n}\nloaded_cls = None\nloaded_vae = None\n\n\ndef repa_load(latents):\n    global loaded_cls, loaded_vae # pylint: disable=global-statement\n    config = models.get(shared.sd_model_type, None)\n    if config is None:\n        shared.log.error(f'Decode: type=\"repa\" model={shared.sd_model_type} not supported')\n        return latents\n\n    cls = getattr(diffusers, config['cls'])\n    if (cls != loaded_cls) or (loaded_vae is None):\n        shared.log.info(f'RePA VAE load: {config[\"repo_id\"]} cls={config[\"cls\"]}')\n        loaded_vae = cls.from_pretrained(\n            config['repo_id'],\n            torch_dtype=latents.dtype,\n            cache_dir=shared.opts.hfcache_dir,\n            )\n        loaded_cls = cls\n    return loaded_vae\n"
  },
  {
    "path": "modules/vae/sd_vae_stablecascade.py",
    "content": "import os\nfrom torch import nn\nimport safetensors\nfrom modules import devices, paths\n\npreview_model = None\ndtype = devices.dtype_vae\n\n# Fast Decoder for Stage C latents. E.g. 16 x 24 x 24 -> 3 x 192 x 192\n# https://github.com/Stability-AI/StableCascade/blob/master/modules/previewer.py\nclass Previewer(nn.Module):\n    def __init__(self, c_in=16, c_hidden=512, c_out=3):\n        super().__init__()\n        self.blocks = nn.Sequential(\n            nn.Conv2d(c_in, c_hidden, kernel_size=1),  # 16 channels to 512 channels\n            nn.GELU(),\n            nn.BatchNorm2d(c_hidden),\n\n            nn.Conv2d(c_hidden, c_hidden, kernel_size=3, padding=1),\n            nn.GELU(),\n            nn.BatchNorm2d(c_hidden),\n\n            nn.ConvTranspose2d(c_hidden, c_hidden // 2, kernel_size=2, stride=2),  # 16 -> 32\n            nn.GELU(),\n            nn.BatchNorm2d(c_hidden // 2),\n\n            nn.Conv2d(c_hidden // 2, c_hidden // 2, kernel_size=3, padding=1),\n            nn.GELU(),\n            nn.BatchNorm2d(c_hidden // 2),\n\n            nn.ConvTranspose2d(c_hidden // 2, c_hidden // 4, kernel_size=2, stride=2),  # 32 -> 64\n            nn.GELU(),\n            nn.BatchNorm2d(c_hidden // 4),\n\n            nn.Conv2d(c_hidden // 4, c_hidden // 4, kernel_size=3, padding=1),\n            nn.GELU(),\n            nn.BatchNorm2d(c_hidden // 4),\n\n            nn.ConvTranspose2d(c_hidden // 4, c_hidden // 4, kernel_size=2, stride=2),  # 64 -> 128\n            nn.GELU(),\n            nn.BatchNorm2d(c_hidden // 4),\n\n            nn.Conv2d(c_hidden // 4, c_hidden // 4, kernel_size=3, padding=1),\n            nn.GELU(),\n            nn.BatchNorm2d(c_hidden // 4),\n\n            nn.Conv2d(c_hidden // 4, c_out, kernel_size=1),\n        )\n\n    def forward(self, x):\n        return self.blocks(x)\n\n\ndef download_model(model_path):\n    model_url = 'https://huggingface.co/stabilityai/stable-cascade/resolve/main/previewer.safetensors?download=true'\n    if not os.path.exists(model_path):\n        import torch\n        from installer import log\n        os.makedirs(os.path.dirname(model_path), exist_ok=True)\n        log.info(f'Downloading Stable Cascade previewer: {model_path}')\n        torch.hub.download_url_to_file(model_url, model_path)\n\ndef load_model(model_path):\n    checkpoint = {}\n    with safetensors.safe_open(model_path, framework=\"pt\", device=\"cpu\") as f:\n        for key in f.keys():\n            checkpoint[key] = f.get_tensor(key)\n    return checkpoint\n\ndef decode(latents):\n    from modules import shared\n    global preview_model # pylint: disable=global-statement\n    if preview_model is None:\n        model_path = os.path.join(paths.models_path, \"VAE-approx\", \"sd_cascade_previewer.safetensors\")\n        download_model(model_path)\n        if os.path.exists(model_path):\n            preview_model = Previewer()\n            previewer_checkpoint = load_model(model_path)\n            preview_model.load_state_dict(previewer_checkpoint if 'state_dict' not in previewer_checkpoint else previewer_checkpoint['state_dict'])\n            preview_model.eval().requires_grad_(False).to(devices.device, dtype)\n            del previewer_checkpoint\n            shared.log.info(f\"Load Stable Cascade previewer: model={model_path}\")\n    try:\n        with devices.inference_context():\n            latents = latents.detach().clone().unsqueeze(0).to(devices.device, dtype)\n            image = preview_model(latents)[0].clamp(0, 1).float()\n            return image\n    except Exception as e:\n        shared.log.error(f'Stable Cascade previewer: {e}')\n        return latents\n"
  },
  {
    "path": "modules/vae/sd_vae_taesd.py",
    "content": "\"\"\"\nTiny AutoEncoder for Stable Diffusion\n(DNN for encoding / decoding SD's latent space)\n\nhttps://github.com/madebyollin/taesd\n\"\"\"\nimport os\nimport time\nimport threading\nfrom PIL import Image\nimport torch\nfrom modules import devices, paths, shared\n\n\ndebug = os.environ.get('SD_PREVIEW_DEBUG', None) is not None\n\n\nTAESD_MODELS = {\n    'TAESD 1.3 Mocha Croissant': { 'fn': 'taesd_13_', 'uri': 'https://github.com/madebyollin/taesd/raw/7f572ca629c9b0d3c9f71140e5f501e09f9ea280', 'model': None },\n    'TAESD 1.2 Chocolate-Dipped Shortbread': { 'fn': 'taesd_12_', 'uri': 'https://github.com/madebyollin/taesd/raw/8909b44e3befaa0efa79c5791e4fe1c4d4f7884e', 'model': None },\n    'TAESD 1.1 Fruit Loops': { 'fn': 'taesd_11_', 'uri': 'https://github.com/madebyollin/taesd/raw/3e8a8a2ab4ad4079db60c1c7dc1379b4cc0c6b31', 'model': None },\n    'TAESD 1.0': { 'fn': 'taesd_10_', 'uri': 'https://github.com/madebyollin/taesd/raw/88012e67cf0454e6d90f98911fe9d4aef62add86', 'model': None },\n    'TAE FLUX.1': { 'fn': 'taef1.pth', 'uri': 'https://github.com/madebyollin/taesd/raw/main/taef1_decoder.pth', 'model': None },\n    'TAE FLUX.2': { 'fn': 'taef2.pth', 'uri': 'https://github.com/madebyollin/taesd/raw/main/taef2_decoder.pth', 'model': None },\n    'TAE SD3': { 'fn': 'taesd3.pth', 'uri': 'https://github.com/madebyollin/taesd/raw/main/taesd3_decoder.pth', 'model': None },\n    'TAE HunyuanVideo': { 'fn': 'taehv.pth', 'uri': 'https://github.com/madebyollin/taehv/raw/refs/heads/main/taehv.pth', 'model': None },\n    'TAE WanVideo': { 'fn': 'taew1.pth', 'uri': 'https://github.com/madebyollin/taehv/raw/refs/heads/main/taew2_1.pth', 'model': None },\n    'TAE MochiVideo': { 'fn': 'taem1.pth', 'uri': 'https://github.com/madebyollin/taem1/raw/refs/heads/main/taem1.pth', 'model': None },\n}\nCQYAN_MODELS = {\n    'Hybrid-Tiny SD': {\n        'sd': { 'repo': 'cqyan/hybrid-sd-tinyvae', 'model': None },\n        'sdxl': { 'repo': 'cqyan/hybrid-sd-tinyvae-xl', 'model': None },\n    },\n    'Hybrid-Small SD': {\n        'sd': { 'repo': 'cqyan/hybrid-sd-small-vae', 'model': None },\n        'sdxl': { 'repo': 'cqyan/hybrid-sd-small-vae-xl', 'model': None },\n    },\n}\n\nprev_warnings = False\nfirst_run = True\nprev_cls = ''\nprev_type = ''\nprev_model = ''\nlock = threading.Lock()\nsupported = ['sd', 'sdxl', 'sd3', 'f1', 'f2', 'h1', 'zimage', 'lumina2', 'hunyuanvideo', 'wanai', 'chrono', 'cosmos', 'mochivideo', 'pixartsigma', 'pixartalpha', 'hunyuandit', 'omnigen', 'qwen', 'longcat', 'omnigen2', 'flite', 'ovis', 'kandinsky5', 'glmimage', 'cogview3', 'cogview4']\n\n\ndef warn_once(msg, variant=None):\n    variant = variant or shared.opts.taesd_variant\n    global prev_warnings # pylint: disable=global-statement\n    if not prev_warnings:\n        prev_warnings = True\n        shared.log.warning(f'Decode: type=\"taesd\" variant=\"{variant}\": {msg}')\n    return Image.new('RGB', (8, 8), color = (0, 0, 0))\n\n\ndef get_model(model_type = 'decoder', variant = None):\n    global prev_cls, prev_type, prev_model, prev_warnings # pylint: disable=global-statement\n    model_cls = shared.sd_model_type\n    if model_cls is None or model_cls == 'none':\n        return None, variant\n    elif model_cls in {'ldm', 'pixartalpha'}:\n        model_cls = 'sd'\n    elif model_cls in {'pixartsigma', 'hunyuandit', 'omnigen', 'auraflow'}:\n        model_cls = 'sdxl'\n    elif model_cls in {'f1', 'h1', 'zimage', 'lumina2', 'chroma', 'longcat', 'omnigen2', 'flite', 'ovis', 'kandinsky5', 'glmimage', 'cogview3', 'cogview4'}:\n        model_cls = 'f1'\n        variant = 'TAE FLUX.1'\n    elif model_cls == 'f2':\n        model_cls = 'f2'\n        variant = 'TAE FLUX.2'\n    elif model_cls == 'sd3':\n        variant = 'TAE SD3'\n    elif model_cls in {'wanai', 'qwen', 'chrono', 'cosmos'}:\n        variant = variant or 'TAE WanVideo'\n    elif model_cls not in supported:\n        warn_once(f'cls={shared.sd_model.__class__.__name__} type={model_cls} unsuppported', variant=variant)\n        return None, variant\n    variant = variant or shared.opts.taesd_variant\n    folder = os.path.join(paths.models_path, \"TAESD\")\n    dtype = devices.dtype_vae if devices.dtype_vae != torch.bfloat16 else torch.float16 # taesd does not support bf16\n    os.makedirs(folder, exist_ok=True)\n    if variant.startswith('TAE'):\n        cfg = TAESD_MODELS[variant]\n        if (model_cls == prev_cls) and (model_type == prev_type) and (variant == prev_model) and (cfg['model'] is not None):\n            return cfg['model'], variant\n        fn = os.path.join(folder, cfg['fn'] + model_type + '_' + model_cls + '.pth')\n        if not os.path.exists(fn):\n            uri = cfg['uri']\n            if not uri.endswith('.pth'):\n                uri += '/tae' + model_cls + '_' + model_type + '.pth'\n            try:\n                torch.hub.download_url_to_file(uri, fn)\n                shared.log.print() # new line\n                shared.log.info(f'Decode: type=\"taesd\" variant=\"{variant}\": uri=\"{uri}\" fn=\"{fn}\" download')\n            except Exception as e:\n                warn_once(f'download uri={uri} {e}', variant=variant)\n        if os.path.exists(fn):\n            prev_cls = model_cls\n            prev_type = model_type\n            prev_model = variant\n            shared.log.print() # new line\n            shared.log.debug(f'Decode: type=\"taesd\" variant=\"{variant}\" fn=\"{fn}\" layers={shared.opts.taesd_layers} load')\n            vae = None\n            if 'TAE HunyuanVideo' in variant:\n                from modules.taesd.taehv import TAEHV\n                vae = TAEHV(checkpoint_path=fn)\n            elif 'TAE WanVideo' in variant:\n                from modules.taesd.taehv import TAEHV\n                vae = TAEHV(checkpoint_path=fn)\n            elif 'TAE MochiVideo' in variant:\n                from modules.taesd.taem1 import TAEM1\n                vae = TAEM1(checkpoint_path=fn)\n            else:\n                from modules.taesd.taesd import TAESD\n                vae = TAESD(decoder_path=fn if model_type=='decoder' else None, encoder_path=fn if model_type=='encoder' else None)\n            if vae is not None:\n                prev_warnings = False # reset warnings for new model\n                vae = vae.to(devices.device, dtype=dtype)\n                TAESD_MODELS[variant]['model'] = vae\n            return vae, variant\n    elif variant.startswith('Hybrid'):\n        cfg = CQYAN_MODELS[variant].get(model_cls, None)\n        if (model_cls == prev_cls) and (model_type == prev_type) and (variant == prev_model) and (cfg['model'] is not None):\n            return cfg['model'], variant\n        if cfg is None:\n            warn_once(f'cls={shared.sd_model.__class__.__name__} type={model_cls} unsuppported', variant=variant)\n            return None, variant\n        repo = cfg['repo']\n        prev_cls = model_cls\n        prev_type = model_type\n        prev_model = variant\n        shared.log.debug(f'Decode: type=\"taesd\" variant=\"{variant}\" id=\"{repo}\" load')\n        if 'tiny' in repo:\n            from diffusers.models import AutoencoderTiny\n            vae = AutoencoderTiny.from_pretrained(repo, cache_dir=shared.opts.hfcache_dir, torch_dtype=dtype)\n        else:\n            from modules.taesd.hybrid_small import AutoencoderSmall\n            vae = AutoencoderSmall.from_pretrained(repo, cache_dir=shared.opts.hfcache_dir, torch_dtype=dtype)\n        vae = vae.to(devices.device, dtype=dtype)\n        CQYAN_MODELS[variant][model_cls]['model'] = vae\n        return vae, variant\n    elif variant is None:\n        warn_once(f'cls={shared.sd_model.__class__.__name__} type={model_cls} variant is none', variant=variant)\n    else:\n        warn_once(f'cls={shared.sd_model.__class__.__name__} type={model_cls} unsuppported', variant=variant)\n    return None, variant\n\n\ndef decode(latents):\n    global first_run # pylint: disable=global-statement\n    with lock:\n        vae, variant = get_model(model_type='decoder')\n        if vae is None or max(latents.shape) > 256: # safetey check of large tensors\n            return latents\n        try:\n            with devices.inference_context():\n                t0 = time.time()\n                dtype = devices.dtype_vae if (devices.dtype_vae != torch.bfloat16) else torch.float16 # taesd does not support bf16\n                tensor = latents.unsqueeze(0) if len(latents.shape) == 3 else latents\n                tensor = tensor.detach().clone().to(devices.device, dtype=dtype)\n                if debug:\n                    shared.log.debug(f'Decode: type=\"taesd\" variant=\"{variant}\" input={latents.shape} tensor={tensor.shape}')\n                # Fallback: reshape packed 128-channel latents to 32 channels if not already unpacked\n                if (variant == 'TAE FLUX.2') and (len(tensor.shape) == 4) and (tensor.shape[1] == 128):\n                    b, _c, h, w = tensor.shape\n                    tensor = tensor.reshape(b, 32, h * 2, w * 2)\n                if variant.startswith('TAESD') or variant in {'TAE FLUX.1', 'TAE FLUX.2', 'TAE SD3'}:\n                    image = vae.decoder(tensor).clamp(0, 1).detach()\n                    image = image[0]\n                else:\n                    image = vae.decode(tensor, return_dict=False)[0]\n                    image = (image / 2.0 + 0.5).clamp(0, 1).detach()\n                t1 = time.time()\n                if (t1 - t0) > 3.0 and not first_run:\n                    shared.log.warning(f'Decode: type=\"taesd\" variant=\"{variant}\" long decode time={t1 - t0:.2f}')\n                first_run = False\n                return image\n        except Exception as e:\n            # from modules import errors\n            # errors.display(e, 'taesd\"')\n            return warn_once(f'decode: {e}', variant=variant)\n\n\ndef encode(image):\n    with lock:\n        vae, variant = get_model(model_type='encoder')\n        if vae is None:\n            return image\n        try:\n            with devices.inference_context():\n                latents = vae.encoder(image)\n            return latents.detach()\n        except Exception as e:\n            return warn_once(f'encode: {e}', variant=variant)\n"
  },
  {
    "path": "modules/video.py",
    "content": "import os\nimport threading\nimport numpy as np\nfrom PIL import Image\nfrom modules import shared, errors\nfrom modules.images_namegen import FilenameGenerator # pylint: disable=unused-import\n\n\ndef interpolate_frames(images, count: int = 0, scale: float = 1.0, pad: int = 1, change: float = 0.3):\n    if images is None:\n        return []\n    if not isinstance(images, list):\n        images = [images]\n    if count > 0:\n        try:\n            import modules.rife\n            frames = modules.rife.interpolate(images, count=count, scale=scale, pad=pad, change=change)\n            if len(frames) > 0:\n                images = frames\n        except Exception as e:\n            shared.log.error(f'RIFE interpolation: {e}')\n            errors.display(e, 'RIFE interpolation')\n    return [np.array(image) for image in images]\n\n\ndef save_video_atomic(images, filename, video_type: str = 'none', duration: float = 2.0, loop: bool = False, interpolate: int = 0, scale: float = 1.0, pad: int = 1, change: float = 0.3):\n    try:\n        import cv2\n    except Exception as e:\n        shared.log.error(f'Save video: cv2: {e}')\n        return\n    savejob = shared.state.begin('Save video')\n    os.makedirs(os.path.dirname(filename), exist_ok=True)\n    if video_type.lower() in ['gif', 'png']:\n        append = images.copy()\n        image = append.pop(0)\n        if loop:\n            append += append[::-1]\n        frames=len(append) + 1\n        image.save(\n            filename,\n            save_all = True,\n            append_images = append,\n            optimize = False,\n            duration = 1000.0 * duration / frames,\n            loop = 0 if loop else 1,\n        )\n        size = os.path.getsize(filename)\n        shared.log.info(f'Save video: file=\"{filename}\" frames={len(append) + 1} duration={duration} loop={loop} size={size}')\n    elif video_type.lower() != 'none':\n        frames = interpolate_frames(images, count=interpolate, scale=scale, pad=pad, change=change)\n        fourcc = \"mp4v\"\n        h, w, _c = frames[0].shape\n        video_writer = cv2.VideoWriter(filename, fourcc=cv2.VideoWriter_fourcc(*fourcc), fps=len(frames)/duration, frameSize=(w, h))\n        for i in range(len(frames)):\n            img = cv2.cvtColor(frames[i], cv2.COLOR_RGB2BGR)\n            video_writer.write(img)\n        size = os.path.getsize(filename)\n        shared.log.info(f'Save video: file=\"{filename}\" frames={len(frames)} duration={duration} fourcc={fourcc} size={size}')\n    shared.state.end(savejob)\n\n\ndef save_video(p, images, filename = None, video_type: str = 'none', duration: float = 2.0, loop: bool = False, interpolate: int = 0, scale: float = 1.0, pad: int = 1, change: float = 0.3, sync: bool = False):\n    if images is None or len(images) < 2 or video_type is None or video_type.lower() == 'none':\n        return None\n    image = images[0]\n    if p is not None:\n        seed = p.all_seeds[0] if getattr(p, 'all_seeds', None) is not None else p.seed\n        prompt = p.all_prompts[0] if getattr(p, 'all_prompts', None) is not None else p.prompt\n        namegen = FilenameGenerator(p, seed=seed, prompt=prompt, image=image)\n    else:\n        namegen = FilenameGenerator(None, seed=0, prompt='', image=image)\n    if filename is None and p is not None:\n        filename = namegen.apply(shared.opts.samples_filename_pattern if shared.opts.samples_filename_pattern and len(shared.opts.samples_filename_pattern) > 0 else \"[seq]-[prompt_words]\")\n        filename = os.path.join(shared.opts.outdir_video, filename)\n        filename = namegen.sequence(filename)\n    else:\n        if os.path.sep not in filename:\n            filename = os.path.join(shared.opts.outdir_video, filename)\n    ext = video_type.lower().split('/')[0] if '/' in video_type else video_type.lower()\n    if not filename.lower().endswith(ext):\n        filename += f'.{ext}'\n    filename = namegen.sanitize(filename)\n    shared.state.outputs(filename)\n    if not sync:\n        threading.Thread(target=save_video_atomic, args=(images, filename, video_type, duration, loop, interpolate, scale, pad, change)).start()\n    else:\n        save_video_atomic(images, filename, video_type, duration, loop, interpolate, scale, pad, change)\n    return filename\n\n\ndef get_video_params(filepath: str, capture: bool = False):\n    import cv2\n    from modules.control.util import decode_fourcc\n    video = cv2.VideoCapture(filepath)\n    if not video.isOpened():\n        msg = f'Video open failed: path=\"{filepath}\"'\n        shared.log.error(msg)\n        raise RuntimeError(msg)\n    frames = int(video.get(cv2.CAP_PROP_FRAME_COUNT))\n    fps = round(video.get(cv2.CAP_PROP_FPS), 2)\n    duration = round(float(frames) / fps, 2)\n    w, h = int(video.get(cv2.CAP_PROP_FRAME_WIDTH)), int(video.get(cv2.CAP_PROP_FRAME_HEIGHT))\n    codec = decode_fourcc(video.get(cv2.CAP_PROP_FOURCC))\n    frame = None\n    if capture:\n        _status, frame = video.read()\n        frame = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)\n        frame = Image.fromarray(frame)\n    video.release()\n    return frames, fps, duration, w, h, codec, frame\n"
  },
  {
    "path": "modules/video_models/google_veo.py",
    "content": "import io\nimport os\nimport time\n\nimport sys\nsys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..')))\n\nfrom PIL import Image\nfrom installer import install, reload, log\n\n\nimage_size_buckets = {\n    '720p': 1280*720,\n    '1080p': 1920*1080,\n}\naspect_ratios_buckets = {\n    '1:1': 1/1,\n    '2:3': 2/3,\n    '3:2': 3/2,\n    '4:3': 4/3,\n    '3:4': 3/4,\n    '4:5': 4/5,\n    '5:4': 5/4,\n    '16:9': 16/9,\n    '9:16': 9/16,\n    '21:9': 21/9,\n    '9:21': 9/21,\n}\n\n\ndef google_requirements():\n    install('google-genai==1.52.0')\n    install('pydantic==2.11.7', ignore=True, quiet=True)\n    reload('pydantic', '2.11.7')\n\n\ndef get_size_buckets(width: int, height: int) -> str:\n    aspect_ratio = width / height\n    closest_aspect_ratio = min(aspect_ratios_buckets.items(), key=lambda x: abs(x[1] - aspect_ratio))[0]\n    pixel_count = width * height\n    closest_size = min(image_size_buckets.items(), key=lambda x: abs(x[1] - pixel_count))[0]\n    closest_aspect_ratio = min(aspect_ratios_buckets.items(), key=lambda x: abs(x[1] - aspect_ratio))[0]\n    return closest_size, closest_aspect_ratio\n\n\nclass GoogleVeoVideoPipeline():\n    def __init__(self, model_name: str):\n        self.model = model_name\n        self.client = None\n        self.config = None\n        google_requirements()\n        log.debug(f'Load model: type=GoogleVeo model=\"{model_name}\"')\n\n    def txt2vid(self, prompt):\n        return self.client.models.generate_videos(\n            model=self.model,\n            prompt=prompt,\n            config=self.config,\n        )\n\n    def img2vid(self, prompt, image):\n        from google import genai\n        image_bytes = io.BytesIO()\n        image.save(image_bytes, format='JPEG')\n        return self.client.models.generate_videos(\n            model=self.model,\n            prompt=prompt,\n            config=self.config,\n            image=genai.types.Image(image_bytes=image_bytes.getvalue(), mime_type='image/jpeg'),\n        )\n\n    def get_args(self):\n        from modules.shared import opts\n        # Use UI settings only - env vars are intentionally ignored\n        api_key = opts.google_api_key\n        project_id = opts.google_project_id\n        location_id = opts.google_location_id\n        use_vertexai = opts.google_use_vertexai\n\n        has_api_key = api_key and len(api_key) > 0\n        has_project = project_id and len(project_id) > 0\n        has_location = location_id and len(location_id) > 0\n\n        if use_vertexai:\n            if has_api_key and (has_project or has_location):\n                # Invalid: can't have both api_key AND project/location\n                log.error(f'Cloud: model=\"{self.model}\" API key and project/location are mutually exclusive')\n                return None\n            elif has_api_key:\n                # Vertex AI Express Mode: api_key + vertexai, no project/location\n                args = {'api_key': api_key, 'vertexai': True}\n            elif has_project and has_location:\n                # Standard Vertex AI: project/location, no api_key\n                args = {'vertexai': True, 'project': project_id, 'location': location_id}\n            else:\n                log.error(f'Cloud: model=\"{self.model}\" Vertex AI requires either API key (Express Mode) or project ID + location ID')\n                return None\n        else:\n            # Gemini Developer API: api_key only\n            if not has_api_key:\n                log.error(f'Cloud: model=\"{self.model}\" API key not provided')\n                return None\n            args = {'api_key': api_key}\n\n        # Debug logging\n        args_log = args.copy()\n        if args_log.get('api_key'):\n            args_log['api_key'] = '...' + args_log['api_key'][-4:]\n        log.debug(f'Cloud: model=\"{self.model}\" args={args_log}')\n        return args\n\n    def __call__(self, prompt: list[str], width: int, height: int, image: Image.Image = None, num_frames: int = 4*24):\n        from google import genai\n\n        if isinstance(prompt, list) and len(prompt) > 0:\n            prompt = prompt[0]\n        if self.client is None:\n            args = self.get_args()\n            if args is None:\n                return None\n            self.client = genai.Client(**args)\n\n        resolution, aspect_ratio = get_size_buckets(width, height)\n        duration = num_frames // 24\n        if duration < 4:\n            duration = 4\n        if duration > 8:\n            duration = 8\n        self.config=genai.types.GenerateVideosConfig(\n            # seed=42,\n            # fps=24,\n            duration_seconds=duration,\n            aspect_ratio=aspect_ratio,\n            resolution=resolution,\n            # person_generation='ALLOW_ALL',\n            # safety_filter_level='BLOCK_NONE',\n            # negative_prompt=None,\n            # enhance_prompt=True,\n            # generate_audio=True,\n        )\n        log.debug(f'Cloud: prompt=\"{prompt}\" size={resolution} ar={aspect_ratio} image={image} model=\"{self.model}\" frames={num_frames} duration={duration}')\n\n        operation = None\n        try:\n            if image is not None:\n                operation = self.img2vid(prompt, image)\n            else:\n                operation = self.txt2vid(prompt)\n            while not operation.done:\n                log.debug(f\"Cloud processing: {operation}\")\n                time.sleep(10)\n                operation = self.client.operations.get(operation)\n        except Exception as e:\n            log.error(f'Cloud video: model=\"{self.model}\" {operation} {e}')\n            return None\n\n        try:\n            response: genai.types.GeneratedVideo = operation.response.generated_videos[0]\n        except Exception:\n            log.error(f'Cloud video: model=\"{self.model}\" no response {operation}')\n            return None\n        try:\n            self.client.files.download(file=response.video)\n            video_bytes = response.video.video_bytes\n            return { 'bytes': video_bytes, 'images': [] }\n        except Exception as e:\n            log.error(f'Cloud download: model=\"{self.model}\" {e}')\n            return None\n\n\ndef load_veo(model_name): # pylint: disable=unused-argument\n    pipe = GoogleVeoVideoPipeline(model_name = model_name)\n    return pipe\n\n\nif __name__ == \"__main__\":\n    from installer import setup_logging\n    setup_logging()\n    log.info('test')\n    model = GoogleVeoVideoPipeline('veo-3.1-generate-preview')\n    img = Image.open('C:\\\\Users\\\\mandi\\\\OneDrive\\\\Generative\\\\Samples\\\\cartoon.png')\n    vid = model(['A beautiful young woman walking through the fantasy city'], 1280, 720, image=img)\n    if vid is not None:\n        with open(\"veo.mp4\", \"wb\") as f:\n            f.write(vid['video'])\n"
  },
  {
    "path": "modules/video_models/models_def.py",
    "content": "from dataclasses import dataclass\nimport time\nimport diffusers\nimport transformers\nfrom installer import log\n\n\n@dataclass\nclass Model():\n    name: str\n    url: str = ''\n    repo: str = None\n    custom: str = None\n    repo_cls: classmethod = None\n    repo_revision: str = None\n    dit: str = None\n    dit_cls: classmethod = None\n    dit_folder: str = 'transformer'\n    dit_revision: str = None\n    te: str = None\n    te_cls: classmethod = None\n    te_folder: str = 'text_encoder'\n    te_hijack: bool = True\n    te_revision: str = None\n    image_hijack: bool = True\n    vae_hijack: bool = True\n    vae_remote: bool = False\n\n    def __str__(self):\n        return f'name=\"{self.name}\" url=\"{self.url}\" repo=\"{self.repo}\" repo_cls=\"{self.repo_cls}\" dit=\"{self.dit}\" dit_cls=\"{self.dit_cls}\" dit_folder=\"{self.dit_folder}\" te=\"{self.te}\" te_cls=\"{self.te_cls}\" te_folder=\"{self.te_folder}\" te_hijack={self.te_hijack} vae_hijack={self.vae_hijack} vae_remote={self.vae_remote}'\n\n\ntry:\n    t0 = time.time()\n    models = {\n        'None': [],\n        'Hunyuan Video': [\n            Model(name='None'),\n            Model(name='Hunyuan Video 1.5 T2V 720p',\n                url='https://huggingface.co/tencent/HunyuanVideo-1.5',\n                vae_remote=False,\n                repo='hunyuanvideo-community/HunyuanVideo-1.5-Diffusers-720p_t2v',\n                repo_cls=getattr(diffusers, 'HunyuanVideo15Pipeline', None),\n                te_cls=getattr(transformers, 'Qwen2_5_VLTextModel', None),\n                dit_cls=getattr(diffusers, 'HunyuanVideo15Transformer3DModel', None)),\n            Model(name='Hunyuan Video 1.5 I2V 720p',\n                url='https://huggingface.co/tencent/HunyuanVideo-1.5',\n                vae_remote=False,\n                repo='hunyuanvideo-community/HunyuanVideo-1.5-Diffusers-720p_i2v',\n                repo_cls=getattr(diffusers, 'HunyuanVideo15ImageToVideoPipeline', None),\n                te_cls=getattr(transformers, 'Qwen2_5_VLTextModel', None),\n                dit_cls=getattr(diffusers, 'HunyuanVideo15Transformer3DModel', None)),\n            Model(name='Hunyuan Video 1.5 I2V 720p Distilled',\n                url='https://huggingface.co/tencent/HunyuanVideo-1.5',\n                vae_remote=False,\n                repo='hunyuanvideo-community/HunyuanVideo-1.5-Diffusers-720p_i2v_distilled',\n                repo_cls=getattr(diffusers, 'HunyuanVideo15ImageToVideoPipeline', None),\n                te_cls=getattr(transformers, 'Qwen2_5_VLTextModel', None),\n                dit_cls=getattr(diffusers, 'HunyuanVideo15Transformer3DModel', None)),\n            Model(name='Hunyuan Video 1.5 T2V 480p',\n                url='https://huggingface.co/tencent/HunyuanVideo-1.5',\n                vae_remote=False,\n                repo='hunyuanvideo-community/HunyuanVideo-1.5-Diffusers-480p_t2v',\n                repo_cls=getattr(diffusers, 'HunyuanVideo15Pipeline', None),\n                te_cls=getattr(transformers, 'Qwen2_5_VLTextModel', None),\n                dit_cls=getattr(diffusers, 'HunyuanVideo15Transformer3DModel', None)),\n            Model(name='Hunyuan Video 1.5 T2V 480p Distilled',\n                url='https://huggingface.co/tencent/HunyuanVideo-1.5',\n                vae_remote=False,\n                repo='hunyuanvideo-community/HunyuanVideo-1.5-Diffusers-480p_t2v_distilled',\n                repo_cls=getattr(diffusers, 'HunyuanVideo15Pipeline', None),\n                te_cls=getattr(transformers, 'Qwen2_5_VLTextModel', None),\n                dit_cls=getattr(diffusers, 'HunyuanVideo15Transformer3DModel', None)),\n            Model(name='Hunyuan Video 1.5 I2V 480p',\n                url='https://huggingface.co/tencent/HunyuanVideo-1.5',\n                vae_remote=False,\n                repo='hunyuanvideo-community/HunyuanVideo-1.5-Diffusers-480p_i2v',\n                repo_cls=getattr(diffusers, 'HunyuanVideo15ImageToVideoPipeline', None),\n                te_cls=getattr(transformers, 'Qwen2_5_VLTextModel', None),\n                dit_cls=getattr(diffusers, 'HunyuanVideo15Transformer3DModel', None)),\n            Model(name='Hunyuan Video 1.5 I2V 480p Distilled',\n                url='https://huggingface.co/tencent/HunyuanVideo-1.5',\n                vae_remote=False,\n                repo='hunyuanvideo-community/HunyuanVideo-1.5-Diffusers-480p_i2v_distilled',\n                repo_cls=getattr(diffusers, 'HunyuanVideo15ImageToVideoPipeline', None),\n                te_cls=getattr(transformers, 'Qwen2_5_VLTextModel', None),\n                dit_cls=getattr(diffusers, 'HunyuanVideo15Transformer3DModel', None)),\n            Model(name='Hunyuan Video 1.0 T2V',\n                url='https://huggingface.co/tencent/HunyuanVideo',\n                vae_remote=True,\n                repo='hunyuanvideo-community/HunyuanVideo',\n                repo_cls=getattr(diffusers, 'HunyuanVideoPipeline', None),\n                te_cls=getattr(transformers, 'LlamaModel', None),\n                dit_cls=getattr(diffusers, 'HunyuanVideoTransformer3DModel', None)),\n            Model(name='Hunyuan Video 1.0 I2V', # https://github.com/huggingface/diffusers/pull/10983\n                url='https://huggingface.co/tencent/HunyuanVideo-I2V',\n                vae_remote=True,\n                repo='hunyuanvideo-community/HunyuanVideo-I2V',\n                repo_cls=getattr(diffusers, 'HunyuanVideoImageToVideoPipeline', None),\n                te_cls=getattr(transformers, 'LlavaForConditionalGeneration', None),\n                dit_cls=getattr(diffusers, 'HunyuanVideoTransformer3DModel', None)),\n            Model(name='SkyReels Hunyuan 1.0 T2V', # https://github.com/huggingface/diffusers/pull/10837\n                url='https://huggingface.co/Skywork/SkyReels-V1-Hunyuan-T2V',\n                vae_remote=True,\n                repo='hunyuanvideo-community/HunyuanVideo',\n                repo_cls=getattr(diffusers, 'HunyuanVideoPipeline', None),\n                te_cls=getattr(transformers, 'LlamaModel', None),\n                dit='Skywork/SkyReels-V1-Hunyuan-T2V',\n                dit_folder=None,\n                dit_cls=getattr(diffusers, 'HunyuanVideoTransformer3DModel', None)),\n            Model(name='SkyReels Hunyuan 1.0 I2V', # https://github.com/huggingface/diffusers/pull/10837\n                url='https://huggingface.co/Skywork/SkyReels-V1-Hunyuan-I2V',\n                vae_remote=True,\n                repo='hunyuanvideo-community/HunyuanVideo',\n                repo_cls=getattr(diffusers, 'HunyuanSkyreelsImageToVideoPipeline', None),\n                te_cls=getattr(transformers, 'LlamaModel', None),\n                dit='Skywork/SkyReels-V1-Hunyuan-I2V',\n                dit_folder=None,\n                dit_cls=getattr(diffusers, 'HunyuanVideoTransformer3DModel', None)),\n            Model(name='Fast Hunyuan 1.0 T2V', # https://github.com/hao-ai-lab/FastVideo/blob/8a77cf22c9b9e7f931f42bc4b35d21fd91d24e45/fastvideo/models/hunyuan/inference.py#L213\n                url='https://huggingface.co/FastVideo/FastHunyuan',\n                vae_remote=True,\n                repo='hunyuanvideo-community/HunyuanVideo',\n                repo_cls=getattr(diffusers, 'HunyuanVideoPipeline', None),\n                te_cls=getattr(transformers, 'LlamaModel', None),\n                dit='FastVideo/FastHunyuan-diffusers',\n                dit_cls=getattr(diffusers, 'HunyuanVideoTransformer3DModel', None)),\n        ],\n        'LTX Video': [\n            Model(name='None'),\n            Model(name='LTXVideo 2 19B T2V Dev',\n                url='https://huggingface.co/Lightricks/LTX-2',\n                repo='Lightricks/LTX-2',\n                repo_cls=getattr(diffusers, 'LTX2Pipeline', None),\n                te_cls=getattr(transformers, 'Gemma3ForConditionalGeneration', None),\n                dit_cls=getattr(diffusers, 'LTX2VideoTransformer3DModel', None)),\n            Model(name='LTXVideo 2 19B I2V Dev',\n                url='https://huggingface.co/Lightricks/LTX-2',\n                repo='Lightricks/LTX-2',\n                repo_cls=getattr(diffusers, 'LTX2ImageToVideoPipeline', None),\n                te_cls=getattr(transformers, 'Gemma3ForConditionalGeneration', None),\n                dit_cls=getattr(diffusers, 'LTX2VideoTransformer3DModel', None)),\n            Model(name='LTXVideo 2 19B T2V Dev SDNQ',\n                url='https://huggingface.co/Disty0/LTX-2-SDNQ-4bit-dynamic',\n                repo='Disty0/LTX-2-SDNQ-4bit-dynamic',\n                repo_cls=getattr(diffusers, 'LTX2Pipeline', None),\n                te_cls=getattr(transformers, 'Gemma3ForConditionalGeneration', None),\n                dit_cls=getattr(diffusers, 'LTX2VideoTransformer3DModel', None)),\n            Model(name='LTXVideo 2 19B I2V Dev SDNQ',\n                url='https://huggingface.co/Disty0/LTX-2-SDNQ-4bit-dynamic',\n                repo='Disty0/LTX-2-SDNQ-4bit-dynamic',\n                repo_cls=getattr(diffusers, 'LTX2ImageToVideoPipeline', None),\n                te_cls=getattr(transformers, 'Gemma3ForConditionalGeneration', None),\n                dit_cls=getattr(diffusers, 'LTX2VideoTransformer3DModel', None)),\n            Model(name='LTXVideo 0.9.8 13B Distilled',\n                url='https://huggingface.co/Lightricks/LTX-Video-0.9.8-13B-distilled',\n                repo='Lightricks/LTX-Video-0.9.8-13B-distilled',\n                repo_cls=getattr(diffusers, 'LTXConditionPipeline', None),\n                te_cls=getattr(transformers, 'T5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'LTXVideoTransformer3DModel', None)),\n            Model(name='LTXVideo 0.9.7 13B Dev',\n                url='https://huggingface.co/Lightricks/LTX-Video-0.9.7-dev',\n                repo='a-r-r-o-w/LTX-Video-0.9.7-diffusers',\n                repo_cls=getattr(diffusers, 'LTXConditionPipeline', None),\n                te_cls=getattr(transformers, 'T5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'LTXVideoTransformer3DModel', None)),\n            Model(name='LTXVideo 0.9.6 2B T2V',\n                url='https://huggingface.co/Lightricks/LTX-Video',\n                repo='Lightricks/LTX-Video',\n                repo_cls=getattr(diffusers, 'LTXConditionPipeline', None),\n                te_cls=getattr(transformers, 'T5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'LTXVideoTransformer3DModel', None)),\n            Model(name='LTXVideo 0.9.6 2B I2V',\n                url='https://huggingface.co/Lightricks/LTX-Video',\n                repo='Lightricks/LTX-Video',\n                repo_cls=getattr(diffusers, 'LTXConditionPipeline', None),\n                te_cls=getattr(transformers, 'T5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'LTXVideoTransformer3DModel', None)),\n            Model(name='LTXVideo 0.9.6 2B T2V Distilled',\n                url='https://huggingface.co/Lightricks/LTX-Video-2B-0.9.6-Distilled-04-25',\n                repo='Lightricks/LTX-Video-2B-0.9.6-Distilled-04-25',\n                repo_cls=getattr(diffusers, 'LTXConditionPipeline', None),\n                te_cls=getattr(transformers, 'T5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'LTXVideoTransformer3DModel', None)),\n            Model(name='LTXVideo 0.9.6 2B I2V Distilled',\n                url='https://huggingface.co/Lightricks/LTX-Video-2B-0.9.6-Distilled-04-25',\n                repo='Lightricks/LTX-Video-2B-0.9.6-Distilled-04-25',\n                repo_cls=getattr(diffusers, 'LTXConditionPipeline', None),\n                te_cls=getattr(transformers, 'T5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'LTXVideoTransformer3DModel', None)),\n            Model(name='LTXVideo 0.9.5 T2V', # https://github.com/huggingface/diffusers/pull/10968\n                url='https://huggingface.co/Lightricks/LTX-Video-0.9.5',\n                repo='Lightricks/LTX-Video-0.9.5',\n                repo_cls=getattr(diffusers, 'LTXConditionPipeline', None),\n                te_cls=getattr(transformers, 'T5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'LTXVideoTransformer3DModel', None)),\n            Model(name='LTXVideo 0.9.5 I2V',\n                url='https://huggingface.co/Lightricks/LTX-Video-0.9.5',\n                repo='Lightricks/LTX-Video-0.9.5',\n                repo_cls=getattr(diffusers, 'LTXConditionPipeline', None),\n                te_cls=getattr(transformers, 'T5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'LTXVideoTransformer3DModel', None)),\n            Model(name='LTXVideo 0.9.1 T2V',\n                url='https://huggingface.co/a-r-r-o-w/LTX-Video-0.9.1-diffusers',\n                repo='a-r-r-o-w/LTX-Video-0.9.1-diffusers',\n                repo_cls=getattr(diffusers, 'LTXPipeline', None),\n                te_cls=getattr(transformers, 'T5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'LTXVideoTransformer3DModel', None)),\n            Model(name='LTXVideo 0.9.1 I2V',\n                url='https://huggingface.co/a-r-r-o-w/LTX-Video-0.9.1-diffusers',\n                repo='a-r-r-o-w/LTX-Video-0.9.1-diffusers',\n                repo_cls=getattr(diffusers, 'LTXImageToVideoPipeline', None),\n                te_cls=getattr(transformers, 'T5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'LTXVideoTransformer3DModel', None)),\n            Model(name='LTXVideo 0.9.0 T2V',\n                url='https://huggingface.co/a-r-r-o-w/LTX-Video-diffusers',\n                repo='a-r-r-o-w/LTX-Video-diffusers',\n                repo_cls=getattr(diffusers, 'LTXPipeline', None),\n                te_cls=getattr(transformers, 'T5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'LTXVideoTransformer3DModel', None)),\n            Model(name='LTXVideo 0.9.0 I2V',\n                url='https://huggingface.co/a-r-r-o-w/LTX-Video-diffusers',\n                repo='a-r-r-o-w/LTX-Video-diffusers',\n                repo_cls=getattr(diffusers, 'LTXImageToVideoPipeline', None),\n                te_cls=getattr(transformers, 'T5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'LTXVideoTransformer3DModel', None)),\n        ],\n        'WAN Video': [\n            Model(name='None'),\n            Model(name='WAN 2.2 5B T2V',\n                url='https://huggingface.co/Wan-AI/Wan2.2-TI2V-5B-Diffusers',\n                repo='Wan-AI/Wan2.2-TI2V-5B-Diffusers',\n                repo_cls=getattr(diffusers, 'WanPipeline', None),\n                te_cls=getattr(transformers, 'UMT5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'WanTransformer3DModel', None)),\n            Model(name='WAN 2.2 5B I2V',\n                url='https://huggingface.co/Wan-AI/Wan2.2-TI2V-5B-Diffusers',\n                repo='Wan-AI/Wan2.2-TI2V-5B-Diffusers',\n                repo_cls=getattr(diffusers, 'WanImageToVideoPipeline', None),\n                te_cls=getattr(transformers, 'UMT5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'WanTransformer3DModel', None)),\n            Model(name='WAN 2.2 A14B T2V',\n                url='https://huggingface.co/Wan-AI/Wan2.2-T2V-A14B-Diffusers',\n                repo='Wan-AI/Wan2.2-T2V-A14B-Diffusers',\n                repo_cls=getattr(diffusers, 'WanPipeline', None),\n                te_cls=getattr(transformers, 'UMT5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'WanTransformer3DModel', None),\n                dit_folder=(\"transformer\", \"transformer_2\")),\n            Model(name='WAN 2.2 A14B I2V',\n                url='https://huggingface.co/Wan-AI/Wan2.2-I2V-A14B-Diffusers',\n                repo='Wan-AI/Wan2.2-I2V-A14B-Diffusers',\n                repo_cls=getattr(diffusers, 'WanImageToVideoPipeline', None),\n                te_cls=getattr(transformers, 'UMT5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'WanTransformer3DModel', None),\n                dit_folder=(\"transformer\", \"transformer_2\")),\n            Model(name='WAN 2.2 A14B SDNQ T2V',\n                url='https://huggingface.co/Disty0/Wan2.2-T2V-A14B-SDNQ-uint4-svd-r32',\n                repo='Disty0/Wan2.2-T2V-A14B-SDNQ-uint4-svd-r32',\n                repo_cls=getattr(diffusers, 'WanPipeline', None),\n                te_cls=getattr(transformers, 'UMT5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'WanTransformer3DModel', None),\n                dit_folder=(\"transformer\", \"transformer_2\")),\n            Model(name='WAN 2.2 A14B SDNQ I2V',\n                url='https://huggingface.co/Disty0/Wan2.2-I2V-A14B-SDNQ-uint4-svd-r32',\n                repo='Disty0/Wan2.2-I2V-A14B-SDNQ-uint4-svd-r32',\n                repo_cls=getattr(diffusers, 'WanImageToVideoPipeline', None),\n                te_cls=getattr(transformers, 'UMT5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'WanTransformer3DModel', None),\n                dit_folder=(\"transformer\", \"transformer_2\")),\n            Model(name='WAN 2.2 14B VACE',\n                url='https://huggingface.co/linoyts/Wan2.2-VACE-Fun-14B-diffusers',\n                repo='linoyts/Wan2.2-VACE-Fun-14B-diffusers',\n                repo_cls=getattr(diffusers, 'WanVACEPipeline', None),\n                te_cls=getattr(transformers, 'UMT5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'WanVACETransformer3DModel', None),\n                dit_folder=(\"transformer\", \"transformer_2\")),\n            Model(name='WAN 2.1 1.3B T2V',\n                url='https://huggingface.co/Wan-AI/Wan2.1-T2V-1.3B-Diffusers',\n                repo='Wan-AI/Wan2.1-T2V-1.3B-Diffusers',\n                repo_cls=getattr(diffusers, 'WanPipeline', None),\n                te_cls=getattr(transformers, 'UMT5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'WanTransformer3DModel', None)),\n            Model(name='WAN 2.1 14B T2V',\n                url='https://huggingface.co/Wan-AI/Wan2.1-T2V-14B-Diffusers',\n                repo='Wan-AI/Wan2.1-T2V-14B-Diffusers',\n                repo_cls=getattr(diffusers, 'WanPipeline', None),\n                te_cls=getattr(transformers, 'UMT5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'WanTransformer3DModel', None)),\n            Model(name='WAN 2.1 14B I2V 480p',\n                url='https://huggingface.co/Wan-AI/Wan2.1-I2V-14B-480P-Diffusers',\n                repo='Wan-AI/Wan2.1-I2V-14B-480P-Diffusers',\n                repo_cls=getattr(diffusers, 'WanImageToVideoPipeline', None),\n                te_cls=getattr(transformers, 'UMT5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'WanTransformer3DModel', None)),\n            Model(name='WAN 2.1 14B I2V 720p',\n                url='https://huggingface.co/Wan-AI/Wan2.1-I2V-14B-720P-Diffusers',\n                repo='Wan-AI/Wan2.1-I2V-14B-720P-Diffusers',\n                repo_cls=getattr(diffusers, 'WanImageToVideoPipeline', None),\n                te_cls=getattr(transformers, 'UMT5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'WanTransformer3DModel', None)),\n            Model(name='WAN 2.1 14B FLF2V 720p',\n                url='https://huggingface.co/Wan-AI/Wan2.1-FLF2V-14B-720P',\n                repo='Wan-AI/Wan2.1-FLF2V-14B-720P-diffusers',\n                repo_cls=getattr(diffusers, 'WanImageToVideoPipeline', None),\n                te_cls=getattr(transformers, 'UMT5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'WanTransformer3DModel', None)),\n            Model(name='WAN 2.1 VACE 1.3B',\n                url='https://huggingface.co/Wan-AI/Wan2.1-VACE-1.3B-diffusers',\n                repo='Wan-AI/Wan2.1-VACE-1.3B-diffusers',\n                repo_cls=getattr(diffusers, 'WanVACEPipeline', None),\n                te_cls=getattr(transformers, 'UMT5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'WanVACETransformer3DModel', None)),\n            Model(name='WAN 2.1 VACE 14B',\n                url='https://huggingface.co/Wan-AI/Wan2.1-VACE-14B-diffusers',\n                repo='Wan-AI/Wan2.1-VACE-14B-diffusers',\n                repo_cls=getattr(diffusers, 'WanVACEPipeline', None),\n                te_cls=getattr(transformers, 'UMT5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'WanVACETransformer3DModel', None)),\n            Model(name='WAN 2.2 Animate 14B',\n                url='https://huggingface.co/Wan-AI/Wan2.2-Animate-14B-Diffusers',\n                repo='Wan-AI/Wan2.2-Animate-14B-Diffusers',\n                repo_cls=getattr(diffusers, 'WanAnimatePipeline', None),\n                te_cls=getattr(transformers, 'UMT5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'WanAnimateTransformer3DModel', None)),\n        ],\n        'SkyReels V2': [\n            Model(name='None'),\n            Model(name='SkyReels-V2 T2V-DF 1.3B-540P',\n                url='https://huggingface.co/Skywork/SkyReels-V2-DF-1.3B-540P-Diffusers',\n                repo='Skywork/SkyReels-V2-DF-1.3B-540P-Diffusers',\n                repo_cls=getattr(diffusers, 'SkyReelsV2DiffusionForcingPipeline', None),\n                repo_revision='refs/pr/1',\n                te_cls=getattr(transformers, 'UMT5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'SkyReelsV2Transformer3DModel', None)),\n            Model(name='SkyReels-V2 T2V-DF 14B-720P',\n                url='https://huggingface.co/Skywork/SkyReels-V2-DF-14B-720P-Diffusers',\n                repo='Skywork/SkyReels-V2-DF-14B-720P-Diffusers',\n                repo_cls=getattr(diffusers, 'SkyReelsV2DiffusionForcingPipeline', None),\n                repo_revision='refs/pr/1',\n                te_cls=getattr(transformers, 'UMT5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'SkyReelsV2Transformer3DModel', None)),\n            Model(name='SkyReels-V2 I2V-DF 14B-720P',\n                url='https://huggingface.co/Skywork/SkyReels-V2-DF-14B-720P-Diffusers',\n                repo='Skywork/SkyReels-V2-DF-14B-720P-Diffusers',\n                repo_cls=getattr(diffusers, 'SkyReelsV2DiffusionForcingImageToVideoPipeline', None),\n                repo_revision='refs/pr/1',\n                te_cls=getattr(transformers, 'UMT5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'SkyReelsV2Transformer3DModel', None)),\n            Model(name='SkyReels-V2 T2V 14B-720P',\n                url='https://huggingface.co/Skywork/SkyReels-V2-T2V-14B-720P-Diffusers',\n                repo='Skywork/SkyReels-V2-T2V-14B-720P-Diffusers',\n                repo_cls=getattr(diffusers, 'SkyReelsV2Pipeline', None),\n                repo_revision='refs/pr/1',\n                te_cls=getattr(transformers, 'UMT5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'SkyReelsV2Transformer3DModel', None)),\n            Model(name='SkyReels-V2 I2V 14B-720P',\n                url='https://huggingface.co/Skywork/SkyReels-V2-I2V-14B-720P-Diffusers',\n                repo='Skywork/SkyReels-V2-I2V-14B-720P-Diffusers',\n                repo_cls=getattr(diffusers, 'SkyReelsV2ImageToVideoPipeline', None),\n                repo_revision='refs/pr/1',\n                te_cls=getattr(transformers, 'UMT5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'SkyReelsV2Transformer3DModel', None)),\n        ],\n        'Mochi Video': [\n            Model(name='None'),\n            Model(name='Mochi 1 T2V',\n                url='https://huggingface.co/genmo/mochi-1-preview',\n                repo='genmo/mochi-1-preview',\n                repo_cls=getattr(diffusers, 'MochiPipeline', None),\n                te_cls=getattr(transformers, 'T5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'MochiTransformer3DModel', None)),\n        ],\n        'Latte Video': [\n            Model(name='None'),\n            Model(name='Latte 1 T2V',\n                url='https://huggingface.co/maxin-cn/Latte-1',\n                repo='maxin-cn/Latte-1',\n                repo_cls=getattr(diffusers, 'LattePipeline', None),\n                te_cls=getattr(transformers, 'T5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'LatteTransformer3DModel', None)),\n        ],\n        'Allegro Video': [\n            Model(name='None'),\n            Model(name='Allegro T2V',\n                url='https://huggingface.co/rhymes-ai/Allegro',\n                repo='rhymes-ai/Allegro',\n                repo_cls=getattr(diffusers, 'AllegroPipeline', None),\n                te_cls=getattr(transformers, 'T5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'AllegroTransformer3DModel', None)),\n        ],\n        'Cog Video': [\n            Model(name='None'),\n            Model(name='CogVideoX 1.0 2B T2V',\n                url='https://huggingface.co/THUDM/CogVideoX-2b',\n                repo='THUDM/CogVideoX-2b',\n                repo_cls=getattr(diffusers, 'CogVideoXPipeline', None),\n                te_cls=getattr(transformers, 'T5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'CogVideoXTransformer3DModel', None)),\n            Model(name='CogVideoX 1.0 5B T2V',\n                url='https://huggingface.co/THUDM/CogVideoX-5b',\n                repo='THUDM/CogVideoX-5b',\n                repo_cls=getattr(diffusers, 'CogVideoXPipeline', None),\n                te_cls=getattr(transformers, 'T5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'CogVideoXTransformer3DModel', None)),\n            Model(name='CogVideoX 1.0 5B I2V',\n                url='https://huggingface.co/THUDM/CogVideoX-5b-I2V',\n                repo='THUDM/CogVideoX-5b-I2V',\n                repo_cls=getattr(diffusers, 'CogVideoXImageToVideoPipeline', None),\n                te_cls=getattr(transformers, 'T5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'CogVideoXTransformer3DModel', None)),\n            Model(name='CogVideoX 1.5 5B T2V',\n                url='https://huggingface.co/THUDM/CogVideoX1.5-5B',\n                repo='THUDM/CogVideoX1.5-5B',\n                repo_cls=getattr(diffusers, 'CogVideoXPipeline', None),\n                te_cls=getattr(transformers, 'T5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'CogVideoXTransformer3DModel', None)),\n            Model(name='CogVideoX 1.5 5B I2V',\n                url='https://huggingface.co/THUDM/CogVideoX1.5-5B-I2V',\n                repo='THUDM/CogVideoX1.5-5B-I2V',\n                repo_cls=getattr(diffusers, 'CogVideoXImageToVideoPipeline', None),\n                te_cls=getattr(transformers, 'T5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'CogVideoXTransformer3DModel', None)),\n            Model(name='Index Anisora 1.0 5B I2V',\n                url='https://huggingface.co/Disty0/Index-anisora-5B-diffusers',\n                repo='Disty0/Index-anisora-5B-diffusers',\n                repo_cls=getattr(diffusers, 'CogVideoXImageToVideoPipeline', None),\n                te_cls=getattr(transformers, 'T5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'CogVideoXTransformer3DModel', None)),\n            Model(name='Index Anisora 1.0 5B RL I2V',\n                url='https://huggingface.co/Disty0/Index-anisora-5B_RL-diffusers',\n                repo='Disty0/Index-anisora-5B_RL-diffusers',\n                repo_cls=getattr(diffusers, 'CogVideoXImageToVideoPipeline', None),\n                te_cls=getattr(transformers, 'T5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'CogVideoXTransformer3DModel', None)),\n        ],\n        'nVidia Cosmos': [\n            Model(name='nvidia Cosmos Predict2 2B I2V',\n                url='https://huggingface.co/nvidia/Cosmos-Predict2-2B-Text2Image',\n                repo='nvidia/Cosmos-Predict2-2B-Video2World',\n                repo_cls=getattr(diffusers, 'Cosmos2VideoToWorldPipeline', None),\n                te_cls=getattr(transformers, 'T5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'CosmosTransformer3DModel', None)),\n            Model(name='nvidia Cosmos Predict2 2B I2V',\n                url='https://huggingface.co/nvidia/Cosmos-Predict2-2B-Text2Image',\n                repo='nvidia/Cosmos-Predict2-2B-Video2World',\n                repo_cls=getattr(diffusers, 'Cosmos2VideoToWorldPipeline', None),\n                te_cls=getattr(transformers, 'T5EncoderModel', None),\n                dit_cls=getattr(diffusers, 'CosmosTransformer3DModel', None)),\n        ],\n        'nVidia SANA': [\n            Model(name='SANA Video 2B 480p T2V',\n                url='https://huggingface.co/Efficient-Large-Model/SANA-Video_2B_480p_diffusers',\n                repo='Efficient-Large-Model/SANA-Video_2B_480p_diffusers',\n                repo_cls=getattr(diffusers, 'SanaVideoPipeline', None),\n                te_cls=getattr(transformers, 'Gemma2Model', None),\n                dit_cls=getattr(diffusers, 'SanaVideoTransformer3DModel', None)),\n        ],\n        'Kandinsky': [\n            Model(name='Kandinsky 5.0 Lite 5s SFT T2V',\n                url='https://huggingface.co/kandinskylab/Kandinsky-5.0-T2V-Lite-sft-5s-Diffusers',\n                repo='kandinskylab/Kandinsky-5.0-T2V-Lite-sft-5s-Diffusers',\n                repo_cls=getattr(diffusers, 'Kandinsky5T2VPipeline', None),\n                te_cls=getattr(transformers, 'Qwen2_5_VLForConditionalGeneration', None),\n                dit_cls=getattr(diffusers, 'Kandinsky5Transformer3DModel', None)),\n            Model(name='Kandinsky 5.0 Lite 5s CFG-distilled T2V',\n                url='https://huggingface.co/kandinskylab/Kandinsky-5.0-T2V-Lite-nocfg-5s-Diffusers',\n                repo='kandinskylab/Kandinsky-5.0-T2V-Lite-nocfg-5s-Diffusers',\n                repo_cls=getattr(diffusers, 'Kandinsky5T2VPipeline', None),\n                te_cls=getattr(transformers, 'Qwen2_5_VLForConditionalGeneration', None),\n                dit_cls=getattr(diffusers, 'Kandinsky5Transformer3DModel', None)),\n            Model(name='Kandinsky 5.0 Lite 5s Steps-distilled T2V',\n                url='https://huggingface.co/kandinskylab/Kandinsky-5.0-T2V-Lite-distilled16steps-5s-Diffusers',\n                repo='kandinskylab/Kandinsky-5.0-T2V-Lite-distilled16steps-5s-Diffusers',\n                repo_cls=getattr(diffusers, 'Kandinsky5T2VPipeline', None),\n                te_cls=getattr(transformers, 'Qwen2_5_VLForConditionalGeneration', None),\n                dit_cls=getattr(diffusers, 'Kandinsky5Transformer3DModel', None)),\n            Model(name='Kandinsky 5.0 Lite 10s SFT T2V',\n                url='https://huggingface.co/kandinskylab/Kandinsky-5.0-T2V-Lite-sft-10s-Diffusers',\n                repo='kandinskylab/Kandinsky-5.0-T2V-Lite-sft-10s-Diffusers',\n                repo_cls=getattr(diffusers, 'Kandinsky5T2VPipeline', None),\n                te_cls=getattr(transformers, 'Qwen2_5_VLForConditionalGeneration', None),\n                dit_cls=getattr(diffusers, 'Kandinsky5Transformer3DModel', None)),\n            Model(name='Kandinsky 5.0 Lite 10s CFG-distilled T2V',\n                url='https://huggingface.co/kandinskylab/Kandinsky-5.0-T2V-Lite-nocfg-10s-Diffusers',\n                repo='kandinskylab/Kandinsky-5.0-T2V-Lite-nocfg-10s-Diffusers',\n                repo_cls=getattr(diffusers, 'Kandinsky5T2VPipeline', None),\n                te_cls=getattr(transformers, 'Qwen2_5_VLForConditionalGeneration', None),\n                dit_cls=getattr(diffusers, 'Kandinsky5Transformer3DModel', None)),\n            Model(name='Kandinsky 5.0 Lite 10s Steps-distilled T2V',\n                url='https://huggingface.co/kandinskylab/Kandinsky-5.0-T2V-Lite-distilled16steps-10s-Diffusers',\n                repo='kandinskylab/Kandinsky-5.0-T2V-Lite-distilled16steps-10s-Diffusers',\n                repo_cls=getattr(diffusers, 'Kandinsky5T2VPipeline', None),\n                te_cls=getattr(transformers, 'Qwen2_5_VLForConditionalGeneration', None),\n                dit_cls=getattr(diffusers, 'Kandinsky5Transformer3DModel', None)),\n            Model(name='Kandinsky 5.0 Pro 5s SFT T2V',\n                url='https://huggingface.co/kandinskylab/Kandinsky-5.0-T2V-Pro-sft-5s-Diffusers',\n                repo='kandinskylab/Kandinsky-5.0-T2V-Pro-sft-5s-Diffusers',\n                repo_cls=getattr(diffusers, 'Kandinsky5T2VPipeline', None),\n                te_cls=getattr(transformers, 'Qwen2_5_VLForConditionalGeneration', None),\n                dit_cls=getattr(diffusers, 'Kandinsky5Transformer3DModel', None)),\n            Model(name='Kandinsky 5.0 Pro 5s SFT I2V',\n                url='https://huggingface.co/kandinskylab/Kandinsky-5.0-I2V-Pro-sft-5s-Diffusers',\n                repo='kandinskylab/Kandinsky-5.0-I2V-Pro-sft-5s-Diffusers',\n                repo_cls=getattr(diffusers, 'Kandinsky5I2VPipeline', None),\n                te_cls=getattr(transformers, 'Qwen2_5_VLForConditionalGeneration', None),\n                dit_cls=getattr(diffusers, 'Kandinsky5Transformer3DModel', None)),\n        ],\n        'Google Veo': [\n            Model(name='Google Veo 3.1 T2V',\n                url='https://gemini.google/overview/video-generation/',\n                repo='veo-3.1-generate-preview',\n                custom='GoogleVeoVideoPipeline',\n                repo_cls=None,\n                te_cls=None,\n                dit_cls=None),\n            Model(name='Google Veo 3.1 I2V',\n                url='https://gemini.google/overview/video-generation/',\n                repo='veo-3.1-generate-preview',\n                custom='GoogleVeoVideoPipeline',\n                repo_cls=None,\n                te_cls=None,\n                dit_cls=None),\n        ],\n    }\n    t1 = time.time()\n    errors = 0\n    total = 0\n    for model in models.values():\n        for m in model:\n            if m.name == 'None':\n                continue\n            \"\"\"\n            if (m.repo_cls is None) or (m.dit_cls is None) or (m.te_cls is None):\n                log.error(f'Video: pipeline=\"{m.name}\" not available')\n                errors += 1\n            else:\n                total += 1\n            \"\"\"\n            total += 1\n    log.info(f'Networks: type=\"video\" engines={len(models)} models={total} errors={errors} time={t1 - t0:.2f}')\nexcept Exception as e:\n    models = {}\n    log.error(f'Networks: type=\"video\" {e}')\n"
  },
  {
    "path": "modules/video_models/video_cache.py",
    "content": "import diffusers\nfrom modules import shared\n\n\ndef apply_teacache_patch(cls):\n    if shared.opts.teacache_enabled and cls is not None:\n        from modules import teacache\n        shared.log.debug(f'Transformers cache: type=teacache patch=forward cls={cls.__name__}')\n        if cls.__name__ == 'LTXVideoTransformer3DModel':\n            cls.forward = teacache.teacache_ltx_forward\n        elif cls.__name__ == 'MochiTransformer3DModel':\n            cls.forward = teacache.teacache_mochi_forward\n        elif cls.__name__ == 'CogVideoXTransformer3DModel':\n            cls.forward = teacache.teacache_cog_forward\n\n        diffusers.FluxTransformer2DModel.forward = teacache.teacache_flux_forward\n"
  },
  {
    "path": "modules/video_models/video_load.py",
    "content": "import os\nimport sys\nimport copy\nimport time\nimport transformers # pylint: disable=unused-import\nimport diffusers\nfrom modules import shared, errors, sd_models, sd_checkpoint, model_quant, devices, sd_hijack_te, sd_hijack_vae\nfrom modules.video_models import models_def, video_utils, video_overrides, video_cache\n\n\ndef _loader(component):\n    \"\"\"Return loader type for log messages.\"\"\"\n    if sys.platform != 'linux':\n        return 'default'\n    if component == 'diffusers':\n        return 'runai' if shared.opts.runai_streamer_diffusers else 'default'\n    return 'runai' if shared.opts.runai_streamer_transformers else 'default'\n\n\nloaded_model = None\n\n\ndef load_custom(model_name: str):\n    shared.log.debug(f'Video load: module=pipe repo=\"{model_name}\" cls=Custom')\n    if 'veo-3.1' in model_name:\n        from modules.video_models.google_veo import load_veo\n        pipe = load_veo(model_name)\n        return pipe\n    return None\n\n\ndef load_model(selected: models_def.Model):\n    if selected is None or selected.repo is None:\n        return ''\n    global loaded_model # pylint: disable=global-statement\n    if not shared.sd_loaded:\n        loaded_model = None\n    if loaded_model == selected.name:\n        return ''\n    if shared.sd_loaded:\n        sd_models.unload_model_weights()\n\n    t0 = time.time()\n    jobid = shared.state.begin('Load model')\n\n    video_cache.apply_teacache_patch(selected.dit_cls)\n\n    # overrides\n    offline_args = {}\n    if shared.opts.offline_mode:\n        offline_args[\"local_files_only\"] = True\n        os.environ['HF_HUB_OFFLINE'] = '1'\n    else:\n        os.environ.pop('HF_HUB_OFFLINE', None)\n        os.unsetenv('HF_HUB_OFFLINE')\n\n    kwargs = video_overrides.load_override(selected, **offline_args)\n\n    # text encoder\n    if selected.te_cls is not None:\n        try:\n            load_args, quant_args = model_quant.get_dit_args({}, module='TE', device_map=True)\n\n            # loader deduplication of text-encoder models\n            if selected.te_cls.__name__ == 'T5EncoderModel' and shared.opts.te_shared_t5:\n                selected.te = 'Disty0/t5-xxl'\n                selected.te_folder = ''\n                selected.te_revision = None\n            if selected.te_cls.__name__ == 'UMT5EncoderModel' and shared.opts.te_shared_t5:\n                if 'SDNQ' in selected.name:\n                    selected.te = 'Disty0/Wan2.2-T2V-A14B-SDNQ-uint4-svd-r32'\n                else:\n                    selected.te = 'Wan-AI/Wan2.2-TI2V-5B-Diffusers'\n                selected.te_folder = 'text_encoder'\n                selected.te_revision = None\n            if selected.te_cls.__name__ == 'LlamaModel' and shared.opts.te_shared_t5:\n                selected.te = 'hunyuanvideo-community/HunyuanVideo'\n                selected.te_folder = 'text_encoder'\n                selected.te_revision = None\n            if selected.te_cls.__name__ == 'Qwen2_5_VLForConditionalGeneration' and shared.opts.te_shared_t5:\n                selected.te = 'ai-forever/Kandinsky-5.0-T2V-Lite-sft-5s-Diffusers'\n                selected.te_folder = 'text_encoder'\n                selected.te_revision = None\n\n            shared.log.debug(f'Video load: module=te repo=\"{selected.te or selected.repo}\" folder=\"{selected.te_folder}\" cls={selected.te_cls.__name__} quant={model_quant.get_quant_type(quant_args)} loader={_loader(\"transformers\")}')\n            kwargs[\"text_encoder\"] = selected.te_cls.from_pretrained(\n                pretrained_model_name_or_path=selected.te or selected.repo,\n                subfolder=selected.te_folder,\n                revision=selected.te_revision or selected.repo_revision,\n                cache_dir=shared.opts.hfcache_dir,\n                **load_args,\n                **quant_args,\n                **offline_args,\n            )\n        except Exception as e:\n            shared.log.error(f'video load: module=te cls={selected.te_cls.__name__} {e}')\n            errors.display(e, 'video')\n\n    # transformer\n    if selected.dit_cls is not None:\n        try:\n            def load_dit_folder(dit_folder):\n                if dit_folder is not None and dit_folder not in kwargs:\n                    # get a new quant arg on every loop to prevent the quant config classes getting entangled\n                    load_args, quant_args = model_quant.get_dit_args({}, module='Model', device_map=True)\n                    shared.log.debug(f'Video load: module=transformer repo=\"{selected.dit or selected.repo}\" module=\"{dit_folder}\" folder=\"{dit_folder}\" cls={selected.dit_cls.__name__} quant={model_quant.get_quant_type(quant_args)} loader={_loader(\"diffusers\")}')\n                    kwargs[dit_folder] = selected.dit_cls.from_pretrained(\n                        pretrained_model_name_or_path=selected.dit or selected.repo,\n                        subfolder=dit_folder,\n                        revision=selected.dit_revision or selected.repo_revision,\n                        cache_dir=shared.opts.hfcache_dir,\n                        **load_args,\n                        **quant_args,\n                        **offline_args,\n                    )\n                else:\n                    shared.log.debug(f'Video load: module=transformer repo=\"{selected.dit or selected.repo}\" module=\"{dit_folder}\" folder=\"{dit_folder}\" cls={selected.dit_cls.__name__} loader={_loader(\"diffusers\")} skip')\n\n            if selected.dit_folder is None:\n                selected.dit_folder = ['transformer']\n            if isinstance(selected.dit_folder, list) or isinstance(selected.dit_folder, tuple):\n                for dit_folder in selected.dit_folder: # wan a14b has transformer and transformer_2\n                    load_dit_folder(dit_folder)\n            else:\n                load_dit_folder(selected.dit_folder)\n        except Exception as e:\n            shared.log.error(f'video load: module=transformer cls={selected.dit_cls.__name__} {e}')\n            errors.display(e, 'video')\n\n    # model\n    try:\n        if selected.repo_cls is None:\n            shared.sd_model = load_custom(selected.repo)\n        else:\n            shared.log.debug(f'Video load: module=pipe repo=\"{selected.repo}\" cls={selected.repo_cls.__name__}')\n            shared.sd_model = selected.repo_cls.from_pretrained(\n                pretrained_model_name_or_path=selected.repo,\n                revision=selected.repo_revision,\n                cache_dir=shared.opts.hfcache_dir,\n                torch_dtype=devices.dtype,\n                **kwargs,\n                **offline_args,\n            )\n    except Exception as e:\n        shared.log.error(f'video load: module=pipe repo=\"{selected.repo}\" cls={selected.repo_cls.__name__} {e}')\n        errors.display(e, 'video')\n\n    if shared.sd_model is None:\n        msg = f'Video load: model=\"{selected.name}\" failed'\n        shared.log.error(msg)\n        return msg\n\n    t1 = time.time()\n    if shared.sd_model.__class__.__name__.startswith(\"LTX\"):\n        shared.sd_model.scheduler.config.use_dynamic_shifting = False\n    shared.sd_model.default_scheduler = copy.deepcopy(shared.sd_model.scheduler) if hasattr(shared.sd_model, \"scheduler\") else None\n    shared.sd_model.sd_checkpoint_info = sd_checkpoint.CheckpointInfo(selected.repo)\n    shared.sd_model.sd_model_hash = None\n    sd_models.set_diffuser_options(shared.sd_model, offload=False)\n\n    decode, text, image, slicing, tiling, framewise = False, False, False, False, False, False\n    if selected.vae_hijack and hasattr(shared.sd_model, 'vae') and hasattr(shared.sd_model.vae, 'decode'):\n        sd_hijack_vae.init_hijack(shared.sd_model)\n        decode = True\n    if selected.te_hijack and hasattr(shared.sd_model, 'encode_prompt'):\n        sd_hijack_te.init_hijack(shared.sd_model)\n        text = True\n    if selected.image_hijack and hasattr(shared.sd_model, 'encode_image'):\n        shared.sd_model.orig_encode_image = shared.sd_model.encode_image\n        shared.sd_model.encode_image = video_utils.hijack_encode_image\n        image = True\n    if hasattr(shared.sd_model, 'vae') and hasattr(shared.sd_model.vae, 'use_framewise_decoding'):\n        shared.sd_model.vae.use_framewise_decoding = True\n        framewise = True\n    if hasattr(shared.sd_model, 'vae') and hasattr(shared.sd_model.vae, 'enable_slicing'):\n        shared.sd_model.vae.enable_slicing()\n        slicing = True\n    if hasattr(shared.sd_model, 'vae') and hasattr(shared.sd_model.vae, 'enable_tiling'):\n        shared.sd_model.vae.enable_tiling()\n        tiling = True\n    if hasattr(shared.sd_model, \"set_progress_bar_config\"):\n        shared.sd_model.set_progress_bar_config(bar_format='Progress {rate_fmt}{postfix} {bar} {percentage:3.0f}% {n_fmt}/{total_fmt} {elapsed} {remaining} ' + '\\x1b[38;5;71m', ncols=80, colour='#327fba')\n\n    shared.sd_model = model_quant.do_post_load_quant(shared.sd_model, allow=False)\n    sd_models.set_diffuser_offload(shared.sd_model)\n\n    loaded_model = selected.name\n    msg = f'Video load: cls={shared.sd_model.__class__.__name__} model=\"{selected.name}\" time={t1-t0:.2f}'\n    shared.log.info(msg)\n    shared.log.debug(f'Video hijacks: decode={decode} text={text} image={image} slicing={slicing} tiling={tiling} framewise={framewise}')\n    shared.state.end(jobid)\n    return msg\n\n\ndef load_upscale_vae():\n    if not hasattr(shared.sd_model, 'vae'):\n        return\n    if hasattr(shared.sd_model.vae, '_asymmetric_upscale_vae'):\n        return # already loaded\n    if shared.sd_model.vae.__class__.__name__ != 'AutoencoderKLWan':\n        shared.log.warning('Video decode: upscale VAE unsupported')\n        return\n\n    repo_id = 'spacepxl/Wan2.1-VAE-upscale2x'\n    subfolder = \"diffusers/Wan2.1_VAE_upscale2x_imageonly_real_v1\"\n    vae_decode = diffusers.AutoencoderKLWan.from_pretrained(repo_id, subfolder=subfolder, cache_dir=shared.opts.hfcache_dir)\n    vae_decode.requires_grad_(False)\n    vae_decode = vae_decode.to(device=devices.device, dtype=devices.dtype)\n    vae_decode.eval()\n    shared.log.debug(f'Decode: load=\"{repo_id}\"')\n    shared.sd_model.orig_vae = shared.sd_model.vae\n    shared.sd_model.vae = vae_decode\n    shared.sd_model.vae._asymmetric_upscale_vae = True # pylint: disable=protected-access\n    sd_hijack_vae.init_hijack(shared.sd_model)\n    sd_models.apply_balanced_offload(shared.sd_model, force=True) # reapply offload\n"
  },
  {
    "path": "modules/video_models/video_overrides.py",
    "content": "import os\nimport torch\nimport diffusers\nfrom modules import shared, processing\nfrom modules.video_models.models_def import Model\n\n\ndebug = shared.log.trace if os.environ.get('SD_VIDEO_DEBUG', None) is not None else lambda *args, **kwargs: None\n\n\ndef load_override(selected: Model, **load_args):\n    kwargs = {}\n    # Allegro\n    if 'Allegro T2V' in selected.name:\n        kwargs['vae'] = diffusers.AutoencoderKLAllegro.from_pretrained(selected.repo, subfolder=\"vae\", torch_dtype=torch.float32, cache_dir=shared.opts.hfcache_dir, **load_args)\n    # LTX\n    if 'LTXVideo 0.9.5 I2V' in selected.name:\n        kwargs['vae'] = diffusers.AutoencoderKLLTXVideo.from_pretrained(selected.repo, subfolder=\"vae\", torch_dtype=torch.float32, cache_dir=shared.opts.hfcache_dir, **load_args)\n    # WAN\n    if 'WAN 2.1 14B' in selected.name:\n        kwargs['vae'] = diffusers.AutoencoderKLWan.from_pretrained(selected.repo, subfolder=\"vae\", torch_dtype=torch.float32, cache_dir=shared.opts.hfcache_dir, **load_args)\n    if ('A14B' in selected.name) or ('14B VACE' in selected.name):\n        if shared.opts.model_wan_stage == 'combined':\n            kwargs['boundary_ratio'] = shared.opts.model_wan_boundary\n        elif shared.opts.model_wan_stage == 'high noise':\n            kwargs['transformer_2'] = None\n            kwargs['boundary_ratio'] = 0.0\n        elif shared.opts.model_wan_stage == 'low noise':\n            kwargs['boundary_ratio'] = 1000.0\n            kwargs['transformer'] = None\n    debug(f'Video overrides: model=\"{selected.name}\" kwargs={list(kwargs)}')\n    return kwargs\n\n\ndef set_overrides(p: processing.StableDiffusionProcessingVideo, selected: Model):\n    cls = shared.sd_model.__class__.__name__\n    # Allegro\n    if selected.name == 'Allegro T2V':\n        shared.sd_model.vae.enable_tiling()\n    # Latte\n    if selected.name == 'Latte 1 T2V':\n        p.task_args['enable_temporal_attentions'] = True\n        p.task_args['video_length'] = 16 * (max(p.frames // 16, 1))\n    # SkyReels\n    if 'SkyReelsV2DiffusionForcing' in cls:\n        p.task_args['overlap_history'] = 17\n    # LTX\n    if cls == 'LTXImageToVideoPipeline' or cls == 'LTXConditionPipeline':\n        p.task_args['generator'] = None\n    if cls == 'LTXConditionPipeline':\n        p.task_args['strength'] = p.denoising_strength\n    if 'LTX' in cls:\n        p.task_args['width'] = 32 * (p.width // 32)\n        p.task_args['height'] = 32 * (p.height // 32)\n    # WAN\n    if 'Wan' in cls:\n        p.task_args['width'] = 16 * (p.width // 16)\n        p.task_args['height'] = 16 * (p.height // 16)\n        p.frames = 4 * (max(p.frames // 4, 1)) + 1\n    # WAN VACE\n    if 'WanVACEPipeline' in cls:\n        if (getattr(p, 'init_images', None) is not None) and (len(p.init_images) > 0):\n            p.task_args['reference_images'] = p.init_images\n    # WAN 2.2-5B\n    if 'WAN 2.2 5B' in selected.name:\n        shared.sd_model.vae.disable_tiling()\n    # Kandinsky 5\n    if 'Kandinsky 5.0 Lite 5s' in selected.name:\n        # p.task_args['time_length'] = 5\n        pass\n    if 'Kandinsky 5.0 Lite 10s' in selected.name:\n        # p.task_args['time_length'] = 10\n        shared.sd_model.transformer.set_attention_backend(\"flex\")\n"
  },
  {
    "path": "modules/video_models/video_prompt.py",
    "content": "from modules import shared, extra_networks, ui_video_vlm\n\n\ndef prepare_prompt(p, init_image, prompt:str, vlm_enhance:bool, vlm_model:str, vlm_system_prompt:str):\n    p.prompt = shared.prompt_styles.apply_styles_to_prompt(p.prompt, p.styles)\n    p.negative_prompt = shared.prompt_styles.apply_negative_styles_to_prompt(p.negative_prompt, p.styles)\n    shared.prompt_styles.apply_styles_to_extra(p)\n    p.prompts, p.network_data = extra_networks.parse_prompts([p.prompt])\n    extra_networks.activate(p)\n    prompt = p.prompts[0]\n\n    new_prompt = ui_video_vlm.enhance_prompt(\n        enable=vlm_enhance,\n        model=vlm_model,\n        image=init_image,\n        prompt=prompt,\n        system_prompt=vlm_system_prompt,\n    )\n    if new_prompt is not None and len(new_prompt) > 0:\n        prompt = new_prompt\n    return prompt\n"
  },
  {
    "path": "modules/video_models/video_run.py",
    "content": "import os\nimport copy\nimport time\nfrom modules import shared, errors, sd_models, processing, devices, images, ui_common\nfrom modules.video_models import models_def, video_utils, video_load, video_vae, video_overrides, video_save, video_prompt\nfrom modules.paths import resolve_output_path\n\n\ndebug = shared.log.trace if os.environ.get('SD_VIDEO_DEBUG', None) is not None else lambda *args, **kwargs: None\n\n\ndef generate(*args, **kwargs):\n    task_id, ui_state, engine, model, prompt, negative, styles, width, height, frames, steps, sampler_index, sampler_shift, dynamic_shift, seed, guidance_scale, guidance_true, init_image, init_strength, last_image, vae_type, vae_tile_frames, mp4_fps, mp4_interpolate, mp4_codec, mp4_ext, mp4_opt, mp4_video, mp4_frames, mp4_sf, vlm_enhance, vlm_model, vlm_system_prompt, override_settings = args\n\n    if engine is None or model is None or engine == 'None' or model == 'None':\n        return video_utils.queue_err('model not selected')\n    # videojob = shared.state.begin('Video')\n    found = [model.name for model in models_def.models.get(engine, [])]\n    selected: models_def.Model = [m for m in models_def.models[engine] if m.name == model][0] if len(found) > 0 else None\n    if not shared.sd_loaded:\n        debug('Video: model not yet loaded')\n        video_load.load_model(selected)\n    if selected.name != video_load.loaded_model:\n        debug('Video: force reload')\n        video_load.load_model(selected)\n    if not shared.sd_loaded:\n        debug('Video: model still not loaded')\n        return video_utils.queue_err('model not loaded')\n    debug(f'Video generate: task={task_id} args={args} kwargs={kwargs}')\n\n    p = processing.StableDiffusionProcessingVideo(\n        sd_model=shared.sd_model,\n        video_engine=engine,\n        video_model=model,\n        prompt=prompt,\n        negative_prompt=negative,\n        styles=styles,\n        seed=int(seed),\n        sampler_name = processing.get_sampler_name(sampler_index),\n        sampler_shift=float(sampler_shift),\n        steps=int(steps),\n        width=16 * int(width // 16),\n        height=16 * int(height // 16),\n        frames=int(frames),\n        denoising_strength=float(init_strength),\n        init_image=init_image,\n        cfg_scale=float(guidance_scale),\n        pag_scale=float(guidance_true),\n        vae_type=vae_type,\n        vae_tile_frames=int(vae_tile_frames),\n        override_settings=override_settings,\n    )\n    if p.vae_type == 'Remote' and not selected.vae_remote:\n        shared.log.warning(f'Video: model={selected.name} remote vae not supported')\n        p.vae_type = 'Default'\n    p.scripts = None\n    p.script_args = None\n    p.state = ui_state\n    p.do_not_save_grid = True\n    p.do_not_save_samples = not mp4_frames\n    p.outpath_samples = resolve_output_path(shared.opts.outdir_samples, shared.opts.outdir_video)\n    if 'T2V' in model:\n        if init_image is not None:\n            shared.log.warning('Video: op=T2V init image not supported')\n    elif 'I2V' in model:\n        if init_image is None:\n            return video_utils.queue_err('init image not set')\n        p.task_args['image'] = images.resize_image(resize_mode=2, im=init_image, width=p.width, height=p.height, upscaler_name=None, output_type='pil')\n        shared.log.debug(f'Video: op=I2V init={init_image} resized={p.task_args[\"image\"]}')\n    elif 'FLF2V' in model:\n        if init_image is None:\n            return video_utils.queue_err('init image not set')\n        if last_image is None:\n            return video_utils.queue_err('last image not set')\n        p.task_args['image'] = images.resize_image(resize_mode=2, im=init_image, width=p.width, height=p.height, upscaler_name=None, output_type='pil')\n        p.task_args['last_image'] = images.resize_image(resize_mode=2, im=last_image, width=p.width, height=p.height, upscaler_name=None, output_type='pil')\n        shared.log.debug(f'Video: op=FLF2V init={init_image} last={last_image} resized={p.task_args[\"image\"]}')\n    elif 'VACE' in model:\n        if init_image is not None:\n            p.task_args['reference_images'] = [images.resize_image(resize_mode=2, im=init_image, width=p.width, height=p.height, upscaler_name=None, output_type='pil')]\n            shared.log.debug(f'Video: op=VACE reference={init_image} resized={p.task_args[\"reference_images\"]}')\n    elif 'Animate' in model:\n        if init_image is None:\n            return video_utils.queue_err('init image not set')\n        p.task_args['image'] = images.resize_image(resize_mode=2, im=init_image, width=p.width, height=p.height, upscaler_name=None, output_type='pil')\n        p.task_args['mode'] = 'animate'\n        p.task_args['pose_video'] = [] # input pose video to condition the generation on. must be a list of PIL images.\n        p.task_args['face_video'] = [] # input face video to condition the generation on. must be a list of PIL images.\n        shared.log.debug(f'Video: op=Animate init={p.task_args[\"image\"]} pose={p.task_args[\"pose_video\"]} face={p.task_args[\"face_video\"]}')\n    else:\n        shared.log.warning(f'Video: unknown model type \"{model}\"')\n\n    # cleanup memory\n    shared.sd_model = sd_models.apply_balanced_offload(shared.sd_model)\n    devices.torch_gc(force=True, reason='video')\n\n    prompt = video_prompt.prepare_prompt(p, init_image, prompt, vlm_enhance, vlm_model, vlm_system_prompt)\n\n    # set args\n    processing.fix_seed(p)\n    video_vae.set_vae_params(p)\n    video_utils.set_prompt(p)\n    p.task_args['num_inference_steps'] = p.steps\n    p.task_args['width'] = p.width\n    p.task_args['height'] = p.height\n    p.task_args['output_type'] = 'latent' if (p.vae_type == 'Remote') else 'pil'\n    p.ops.append('video')\n\n    # set scheduler params\n    orig_dynamic_shift = shared.opts.schedulers_dynamic_shift\n    orig_sampler_shift = shared.opts.schedulers_shift\n    shared.opts.data['schedulers_dynamic_shift'] = dynamic_shift\n    shared.opts.data['schedulers_shift'] = sampler_shift\n    if hasattr(shared.sd_model, 'scheduler') and hasattr(shared.sd_model.scheduler, 'config') and hasattr(shared.sd_model.scheduler, 'register_to_config'):\n        if hasattr(shared.sd_model.scheduler.config, 'use_dynamic_shifting'):\n            shared.sd_model.scheduler.config.use_dynamic_shifting = dynamic_shift\n            shared.sd_model.scheduler.register_to_config(use_dynamic_shifting = dynamic_shift)\n        if hasattr(shared.sd_model.scheduler.config, 'flow_shift') and sampler_shift >= 0:\n            shared.sd_model.scheduler.config.flow_shift = sampler_shift\n            shared.sd_model.scheduler.register_to_config(flow_shift = sampler_shift)\n        shared.sd_model.default_scheduler = copy.deepcopy(shared.sd_model.scheduler)\n\n    video_overrides.set_overrides(p, selected)\n    debug(f'Video: task_args={p.task_args}')\n\n    if p.vae_type == 'Upscale':\n        video_load.load_upscale_vae()\n    elif hasattr(shared.sd_model, 'orig_vae'):\n        shared.sd_model.vae = shared.sd_model.orig_vae\n\n    # run processing\n    shared.state.disable_preview = True\n    shared.log.debug(f'Video: cls={shared.sd_model.__class__.__name__} width={p.width} height={p.height} frames={p.frames} steps={p.steps}')\n    err = None\n    t0 = time.time()\n    processed = None\n    try:\n        processed = processing.process_images(p)\n    except Exception as e:\n        err = str(e)\n        errors.display(e, 'video')\n    t1 = time.time()\n    shared.state.disable_preview = False\n    shared.opts.data['schedulers_dynamic_shift'] = orig_dynamic_shift\n    shared.opts.data['schedulers_shift'] = orig_sampler_shift\n    p.close()\n\n    # done\n    if err:\n        return video_utils.queue_err(err)\n    if processed is None or (len(processed.images) == 0 and processed.bytes is None):\n        return video_utils.queue_err('processing failed')\n    shared.log.info(f'Video: name=\"{selected.name}\" cls={shared.sd_model.__class__.__name__} frames={len(processed.images)} time={t1-t0:.2f}')\n\n    if hasattr(processed, 'images') and processed.images is not None:\n        pixels = video_save.images_to_tensor(processed.images)\n    else:\n        pixels = None\n    if hasattr(processed, 'audio') and processed.audio is not None:\n        audio = processed.audio[0].float().cpu()\n    else:\n        audio = None\n\n    _num_frames, video_file = video_save.save_video(\n        p=p,\n        pixels=pixels,\n        audio=audio,\n        binary=processed.bytes,\n        mp4_fps=mp4_fps,\n        mp4_codec=mp4_codec,\n        mp4_opt=mp4_opt,\n        mp4_ext=mp4_ext,\n        mp4_sf=mp4_sf,\n        mp4_video=mp4_video,\n        mp4_frames=mp4_frames,\n        mp4_interpolate=mp4_interpolate,\n        metadata={},\n    )\n    if not mp4_frames:\n        processed.images = []\n\n    generation_info_js = processed.js() if processed is not None else ''\n    # shared.state.end(videojob)\n    return processed.images, video_file, generation_info_js, processed.info, ui_common.plaintext_to_html(processed.comments)\n"
  },
  {
    "path": "modules/video_models/video_save.py",
    "content": "from fractions import Fraction\nimport os\nimport time\nimport cv2\nimport numpy as np\nimport torch\nimport einops\nfrom PIL import Image\nfrom modules import shared, errors ,timer, rife, processing\nfrom modules.video_models.video_utils import check_av\n\n\ndef get_video_filename(p:processing.StableDiffusionProcessingVideo):\n    from modules.images_namegen import FilenameGenerator\n    namegen = FilenameGenerator(p, seed=p.seed if p is not None else 0, prompt=p.prompt if p is not None else '')\n    filename = namegen.apply(shared.opts.samples_filename_pattern if shared.opts.samples_filename_pattern and len(shared.opts.samples_filename_pattern) > 0 else \"[seq]-[prompt_words]\")\n    if shared.opts.save_to_dirs:\n        dirname = namegen.apply(shared.opts.directories_filename_pattern or \"[prompt_words]\")\n        dirfile = os.path.dirname(filename)\n        dirname = os.path.join(shared.opts.outdir_video, dirname, dirfile)\n    else:\n        dirname = shared.opts.outdir_video\n    if not os.path.exists(dirname):\n        os.makedirs(dirname, exist_ok=True)\n    filename = os.path.join(dirname, filename)\n    filename = namegen.sequence(filename)\n    filename = namegen.sanitize(filename)\n    return filename\n\n\ndef save_params(p, filename: str = None):\n    from modules.paths import params_path\n    if p is None:\n        dct = {}\n    else:\n        # sampler_index, sampler_shift, dynamic_shift, guidance_scale, guidance_true, init_image, init_strength, last_image, vae_type, vae_tile_frames, mp4_fps, mp4_interpolate, mp4_codec, mp4_ext, mp4_opt, mp4_video, mp4_frames, mp4_sf, vlm_enhance, vlm_model, vlm_system_prompt, override_settings = args\n        dct = {\n            \"Prompt\": p.prompt,\n            \"Negative prompt\": p.negative_prompt,\n            \"Steps\": p.steps,\n            \"Sampler\": p.sampler_name,\n            \"Seed\": p.seed,\n            \"Engine\": p.video_engine,\n            \"Model\": p.video_model,\n            \"Frames\": p.frames,\n            \"Size\": f\"{p.width}x{p.height}\",\n            \"Styles\": ','.join(p.styles) if isinstance(p.styles, list) else p.styles,\n        }\n    params = ', '.join([f'{k}: {v}' for k, v in dct.items() if v is not None and v != ''])\n    fn = filename if filename is not None else params_path\n    with open(fn, \"w\", encoding=\"utf8\") as file:\n        file.write(params)\n\n\ndef images_to_tensor(images):\n    if images is None or len(images) == 0:\n        return None\n    array = [torch.from_numpy(np.array(image)) for image in images]\n    tensor = torch.stack(array, dim=0) # n h w c\n    tensor = tensor.unsqueeze(0) # 1, n, h, w, c\n    tensor = tensor.permute(0, 4, 1, 2, 3).contiguous() # 1, c, n, h, w\n    tensor = (tensor.float() / 127.5) - 1.0 # from [0,255] to [-1,1]\n    # shared.log.debug(f'Video output: images={len(images)} tensor={tensor.shape}')\n    return tensor\n\n\ndef numpy_to_tensor(images):\n    if images is None or len(images) == 0:\n        return None\n    images = (2.0 * images) - 1.0 # from [0,1] to [-1,1]\n    array = [torch.from_numpy(images[i]) for i in range(images.shape[0])]\n    tensor = torch.stack(array, dim=0) # n h w c\n    tensor = tensor.unsqueeze(0) # 1, n, h, w, c\n    tensor = tensor.permute(0, 4, 1, 2, 3).contiguous() # 1, c, n, h, w\n    # tensor = (tensor.float() / 127.5) - 1.0 # from [0,255] to [-1,1]\n    # shared.log.debug(f'Video output: images={len(images)} tensor={tensor.shape}')\n    return tensor\n\n\ndef write_audio(\n    container,\n    samples: torch.Tensor,\n    audio_sample_rate: int,\n) -> None:\n    av = check_av()\n    # create stream\n    audio_options = { 'time_base': f'1/{audio_sample_rate}' }\n    audio_stream = container.add_stream(\"aac\", rate=audio_sample_rate, options=audio_options)\n    audio_stream.codec_context.sample_rate = audio_sample_rate\n    audio_stream.codec_context.layout = \"stereo\"\n    audio_stream.codec_context.format = \"fltp\"\n    audio_stream.codec_context.time_base = Fraction(1, audio_sample_rate)\n    # audio_stream.time_base = audio_stream.codec_context.time_base # TODO audio set time-base\n    shared.log.debug(f'Audio: codec={audio_stream.codec_context.name} rate={audio_stream.codec_context.sample_rate} layout={audio_stream.codec_context.layout} format={audio_stream.codec_context.format} base={audio_stream.codec_context.time_base}')\n    # init input samples\n    if samples.ndim == 1:\n        samples = samples[:, None]\n    if samples.shape[1] != 2 and samples.shape[0] == 2:\n        samples = samples.T\n    if samples.shape[1] != 2:\n        raise ValueError(f\"Expected samples with 2 channels; got shape {samples.shape}.\")\n    if samples.dtype != torch.int16:\n        samples = torch.clip(samples, -1.0, 1.0)\n        samples = (samples * 32767.0).to(torch.int16)\n    audio_frames = av.AudioFrame.from_ndarray(\n        samples.contiguous().reshape(1, -1).cpu().numpy(),\n        format=\"s16\",\n        layout=\"stereo\",\n    )\n    audio_frames.sample_rate = audio_sample_rate\n    # init resampler\n    audio_resampler = av.audio.resampler.AudioResampler(\n        format=audio_stream.codec_context.format,\n        layout=audio_stream.codec_context.layout,\n        rate=audio_stream.codec_context.sample_rate,\n    )\n    # resample\n    pts = 0\n    for resampled in audio_resampler.resample(audio_frames):\n        resampled.pts = resampled.pts or 0\n        resampled.sample_rate = audio_frames.sample_rate\n        packets = audio_stream.encode(resampled)\n        for packet in packets:\n            container.mux(packet)\n        pts += resampled.samples\n    # flush audio encoder\n    for packet in audio_stream.encode():\n        container.mux(packet)\n\n\ndef atomic_save_video(filename: str,\n                      tensor:torch.Tensor,\n                      audio:torch.Tensor=None,\n                      fps:float=24,\n                      codec:str='libx264',\n                      pix_fmt:str='yuv420p',\n                      options:str='',\n                      aac:int=24000,\n                      metadata:dict={},\n                      pbar=None,\n                    ):\n    av = check_av()\n    if av is None or av is False:\n        shared.log.error('Video: ffmpeg/av not available')\n        return\n\n    savejob = shared.state.begin('Save video')\n    frames, height, width, _channels = tensor.shape\n    rate = round(fps)\n    options_str = options\n    options = {}\n    for option in [option.strip() for option in options_str.split(',')]:\n        if '=' in option:\n            key, value = option.split('=', 1)\n        elif ':' in option:\n            key, value = option.split(':', 1)\n        else:\n            continue\n        options[key.strip()] = value.strip()\n    shared.log.info(f'Video: file=\"{filename}\" codec={codec} frames={frames} width={width} height={height} fps={rate} audio={audio is not None} aac={aac} options={options}')\n    video_array = torch.as_tensor(tensor, dtype=torch.uint8).numpy(force=True)\n\n    task = pbar.add_task('encoding', total=frames) if pbar is not None else None\n    if task is not None:\n        pbar.update(task, description='video encoding')\n\n    with av.open(filename, mode=\"w\") as container:\n        for k, v in metadata.items():\n            container.metadata[k] = v\n        stream: av.VideoStream = container.add_stream(codec, rate=rate, options=options)\n        stream.width = video_array.shape[2]\n        stream.height = video_array.shape[1]\n        stream.pix_fmt = pix_fmt\n        for img in video_array:\n            frame = av.VideoFrame.from_ndarray(img, format=\"rgb24\")\n            for packet in stream.encode_lazy(frame):\n                container.mux(packet)\n            if task is not None:\n                pbar.update(task, advance=1)\n        for packet in stream.encode(): # flush\n            container.mux(packet)\n        if audio is not None:\n            try:\n                write_audio(container, audio, aac)\n            except Exception as e:\n                shared.log.error(f'Video audio encoding: {e}')\n                errors.display(e, 'Audio')\n\n    shared.state.outputs(filename)\n    shared.state.end(savejob)\n\n\ndef save_video(\n        p:processing.StableDiffusionProcessingVideo,\n        pixels:torch.Tensor=None,\n        audio:torch.Tensor=None,\n        binary:bytes=None,\n        mp4_fps:int=24,\n        mp4_codec:str='libx264',\n        mp4_opt:str='',\n        mp4_ext:str='mp4',\n        mp4_sf:bool=False, # save safetensors\n        mp4_video:bool=True, # save video\n        mp4_frames:bool=False, # save frames\n        mp4_interpolate:int=0, # rife interpolation\n        aac_sample_rate:int=24000, # audio sample rate\n        stream=None, # async progress reporting stream\n        metadata:dict={}, # metadata for video\n        pbar=None, # progress bar for video\n    ):\n    output_video = None\n\n    if binary is not None:\n        output_filename = get_video_filename(p)\n        output_video = f'{output_filename}.{mp4_ext}'\n        try:\n            try:\n                with open(output_video, 'wb') as f:\n                    f.write(binary)\n                shared.log.info(f'Video output: file=\"{output_video}\" size={len(binary)}')\n                shared.state.outputs(output_video)\n            except Exception as e:\n                shared.log.error(f'Video output: file=\"{output_video}\" {e}')\n        except Exception as e:\n            shared.log.error(f'Video output: file=\"{output_video}\" write error {e}')\n            errors.display(e, 'video')\n        return 0, output_video\n\n    if pixels is None:\n        return 0, output_video\n    if isinstance(pixels, np.ndarray):\n        pixels = numpy_to_tensor(pixels)\n    if isinstance(pixels, list) and isinstance(pixels[0], Image.Image):\n        pixels = images_to_tensor(pixels)\n    if not torch.is_tensor(pixels):\n        shared.log.error(f'Video: type={type(pixels)} not a tensor')\n        return 0, output_video\n    t_save = time.time()\n    n, _c, t, h, w = pixels.shape\n    size = pixels.element_size() * pixels.numel()\n    shared.log.debug(f'Video: video={mp4_video} export={mp4_frames} safetensors={mp4_sf} interpolate={mp4_interpolate}')\n    shared.log.debug(f'Video: encode={t} raw={size} latent={pixels.shape} audio={audio.shape if audio is not None else None} fps={mp4_fps} codec={mp4_codec} ext={mp4_ext} options=\"{mp4_opt}\"')\n    try:\n        preparejob = shared.state.begin('Prepare video')\n        if stream is not None:\n            stream.output_queue.push(('progress', (None, 'Saving video...')))\n        if mp4_interpolate > 0:\n            x = pixels.squeeze(0).permute(1, 0, 2, 3)\n            interpolated = rife.interpolate_nchw(x, count=mp4_interpolate+1)\n            pixels = torch.stack(interpolated, dim=0)\n            pixels = pixels.permute(1, 2, 0, 3, 4)\n\n        n, _c, t, h, w = pixels.shape\n        x = torch.clamp(pixels.float(), -1., 1.) * 127.5 + 127.5\n        x = x.detach().cpu().to(torch.uint8)\n        x = einops.rearrange(x, '(m n) c t h w -> t (m h) (n w) c', n=n)\n        x = x.contiguous()\n\n        output_filename = get_video_filename(p)\n        if shared.opts.save_txt:\n            save_params(p, f'{output_filename}.txt')\n        save_params(p)\n\n        if mp4_sf:\n            fn = f'{output_filename}.safetensors'\n            shared.log.info(f'Video export: file=\"{fn}\" type=savetensors shape={x.shape}')\n            from safetensors.torch import save_file\n            shared.state.outputs(fn)\n            save_file({ 'frames': x }, fn, metadata={'format': 'video', 'frames': str(t), 'width': str(w), 'height': str(h), 'fps': str(mp4_fps), 'codec': mp4_codec, 'options': mp4_opt, 'ext': mp4_ext, 'interpolate': str(mp4_interpolate)})\n\n        if mp4_frames:\n            shared.log.info(f'Video frames: files=\"{output_filename}-00000.jpg\" frames={t} width={w} height={h}')\n            for i in range(t):\n                image = cv2.cvtColor(x[i].numpy(), cv2.COLOR_RGB2BGR)\n                fn = f'{output_filename}-{i:05d}.jpg'\n                shared.state.outputs(fn)\n                cv2.imwrite(fn, image)\n\n        shared.state.end(preparejob)\n\n        if mp4_video and (mp4_codec != 'none'):\n            output_video = f'{output_filename}.{mp4_ext}'\n            atomic_save_video(output_video, tensor=x, audio=audio, fps=mp4_fps, codec=mp4_codec, options=mp4_opt, aac=aac_sample_rate, metadata=metadata, pbar=pbar)\n            if stream is not None:\n                stream.output_queue.push(('progress', (None, f'Video {os.path.basename(output_video)} | Codec {mp4_codec} | Size {w}x{h}x{t} | FPS {mp4_fps}')))\n                stream.output_queue.push(('file', output_video))\n        else:\n            if stream is not None:\n                stream.output_queue.push(('progress', (None, '')))\n\n    except Exception as e:\n        shared.log.error(f'Video save: raw={size} {e}')\n        errors.display(e, 'video')\n    timer.process.add('save', time.time()-t_save)\n    return t, output_video\n"
  },
  {
    "path": "modules/video_models/video_ui.py",
    "content": "import os\nimport gradio as gr\nfrom modules import shared, sd_models, ui_common, ui_sections, ui_symbols, ui_video_vlm, call_queue\nfrom modules.ui_components import ToolButton\nfrom modules.video_models import models_def, video_utils\nfrom modules.video_models import video_run\n\n\ndebug = shared.log.trace if os.environ.get('SD_VIDEO_DEBUG', None) is not None else lambda *args, **kwargs: None\n\n\ndef engine_change(engine):\n    debug(f'Video change: engine=\"{engine}\"')\n    found = [model.name for model in models_def.models.get(engine, [])]\n    return gr.update(choices=found, value=found[0] if len(found) > 0 else None)\n\n\ndef get_selected(engine, model):\n    found = [model.name for model in models_def.models.get(engine, [])]\n    if len(models_def.models[engine]) > 0 and len(found) > 0:\n        selected = [m for m in models_def.models[engine] if m.name == model][0]\n        return selected\n    return None\n\n\ndef model_change(engine, model):\n    debug(f'Video change: engine=\"{engine}\" model=\"{model}\"')\n    found = [model.name for model in models_def.models.get(engine, [])]\n    selected = [m for m in models_def.models[engine] if m.name == model][0] if len(found) > 0 else None\n    url = video_utils.get_url(selected.url if selected else None)\n    return url\n\n\ndef model_load(engine, model):\n    debug(f'Video load: engine=\"{engine}\" model=\"{model}\"')\n    selected = get_selected(engine, model)\n    yield f'Video model loading: {selected.name}'\n    if selected:\n        if 'None' in selected.name:\n            sd_models.unload_model_weights()\n            msg = 'Video model unloaded'\n        else:\n            from modules.video_models import video_load\n            msg = video_load.load_model(selected)\n    else:\n        sd_models.unload_model_weights()\n        msg = 'Video model unloaded'\n    yield msg\n    return msg\n\n\ndef run_video(*args):\n    engine, model = args[2], args[3]\n    debug(f'Video run: engine=\"{engine}\" model=\"{model}\"')\n    selected = get_selected(engine, model)\n    if not selected or engine is None or model is None or engine == 'None' or model == 'None':\n        return video_utils.queue_err('model not selected')\n    debug(f'Video run: {str(selected)}')\n    if selected and 'Hunyuan' in selected.name:\n        return video_run.generate(*args)\n    elif selected and 'LTX' in selected.name:\n        return video_run.generate(*args)\n    elif selected and 'Mochi' in selected.name:\n        return video_run.generate(*args)\n    elif selected and 'Cog' in selected.name:\n        return video_run.generate(*args)\n    elif selected and 'Allegro' in selected.name:\n        return video_run.generate(*args)\n    elif selected and 'WAN' in selected.name:\n        return video_run.generate(*args)\n    elif selected and 'Latte' in selected.name:\n        return video_run.generate(*args)\n    elif selected and 'anisora' in selected.name.lower():\n        return video_run.generate(*args)\n    elif selected and 'Kandinsky' in selected.name:\n        return video_run.generate(*args)\n    return video_utils.queue_err(f'model not found: engine=\"{engine}\" model=\"{model}\"')\n\n\ndef create_ui_inputs():\n    with gr.Row():\n        with gr.Column(variant='compact', elem_id=\"video_inputs\", elem_classes=['settings-column'], scale=1):\n            init_strength = gr.Slider(label='Init strength', minimum=0.0, maximum=1.0, step=0.01, value=0.8, elem_id=\"video_denoising_strength\")\n            gr.HTML(\"<br>&nbsp Init image\")\n            init_image = gr.Image(elem_id=\"video_image\", show_label=False, type=\"pil\", image_mode=\"RGB\", width=256, height=256)\n            gr.HTML(\"<br>&nbsp Last image\")\n            last_image = gr.Image(elem_id=\"video_last\", show_label=False, type=\"pil\", image_mode=\"RGB\", width=256, height=256)\n    return init_image, init_strength, last_image\n\n\ndef create_ui_outputs():\n    with gr.Row():\n        with gr.Column(variant='compact', elem_id=\"video_outputs\", elem_classes=['settings-column'], scale=1):\n            with gr.Row():\n                mp4_fps = gr.Slider(label=\"FPS\", minimum=1, maximum=60, value=24, step=1)\n                mp4_interpolate = gr.Slider(label=\"Video interpolation\", minimum=0, maximum=10, value=0, step=1)\n            with gr.Row():\n                mp4_codec = gr.Dropdown(label=\"Video codec\", choices=['none', 'libx264'], value='libx264', type='value')\n                ui_common.create_refresh_button(mp4_codec, video_utils.get_codecs, elem_id=\"framepack_mp4_codec_refresh\")\n                mp4_ext = gr.Textbox(label=\"Video format\", value='mp4', elem_id=\"framepack_mp4_ext\")\n                mp4_opt = gr.Textbox(label=\"Video options\", value='crf:16', elem_id=\"framepack_mp4_opt\")\n            with gr.Row():\n                mp4_video = gr.Checkbox(label='Video save video', value=True, elem_id=\"framepack_mp4_video\")\n                mp4_frames = gr.Checkbox(label='Video save frames', value=False, elem_id=\"framepack_mp4_frames\")\n                mp4_sf = gr.Checkbox(label='Video save safetensors', value=False, elem_id=\"framepack_mp4_sf\")\n    return mp4_fps, mp4_interpolate, mp4_codec, mp4_ext, mp4_opt, mp4_video, mp4_frames, mp4_sf\n\n\ndef create_ui_size():\n    with gr.Row():\n        with gr.Column(variant='compact', elem_id=\"video_size\", elem_classes=['settings-column'], scale=1):\n            with gr.Row():\n                width, height = ui_sections.create_resolution_inputs('video', default_width=832, default_height=480)\n            with gr.Row():\n                frames = gr.Slider(label='Frames', minimum=1, maximum=1024, step=1, value=17, elem_id=\"video_frames\")\n                seed = gr.Number(label='Initial seed', value=-1, elem_id=\"video_seed\", container=True)\n                random_seed = ToolButton(ui_symbols.random, elem_id=\"video_seed_random\")\n                reuse_seed = ToolButton(ui_symbols.reuse, elem_id=\"video_seed_reuse\")\n                random_seed.click(fn=lambda: -1, show_progress='hidden', inputs=[], outputs=[seed])\n    return width, height, frames, seed, reuse_seed\n\n\ndef create_ui(prompt, negative, styles, overrides, init_image, init_strength, last_image, mp4_fps, mp4_interpolate, mp4_codec, mp4_ext, mp4_opt, mp4_video, mp4_frames, mp4_sf, width, height, frames, seed, reuse_seed):\n    with gr.Row():\n        with gr.Column(variant='compact', elem_id=\"video_settings\", elem_classes=['settings-column'], scale=1):\n            with gr.Row():\n                generate = gr.Button('Generate', elem_id=\"video_generate_btn\", variant='primary', visible=False)\n            with gr.Row():\n                engine = gr.Dropdown(label='Video engine', choices=list(models_def.models), value='None', elem_id=\"video_engine\")\n                model = gr.Dropdown(label='Video model', choices=[''], value='None', elem_id=\"video_model\")\n                btn_load = ToolButton(ui_symbols.loading, elem_id=\"video_model_load\")\n            with gr.Row():\n                url = gr.HTML(label='Model URL', elem_id='video_model_url', value='<br><br>')\n            with gr.Accordion(open=False, label=\"Parameters\", elem_id='video_parameters_accordion'):\n                steps, sampler_index = ui_sections.create_sampler_and_steps_selection(None, \"video\", default_steps=50)\n                with gr.Row():\n                    sampler_shift = gr.Slider(label='Sampler shift', minimum=-1.0, maximum=20.0, step=0.1, value=-1.0, elem_id=\"video_scheduler_shift\")\n                    dynamic_shift = gr.Checkbox(label='Dynamic shift', value=False, elem_id=\"video_dynamic_shift\")\n                with gr.Row():\n                    guidance_scale = gr.Slider(label='Guidance scale', minimum=-1.0, maximum=14.0, step=0.1, value=-1.0, elem_id=\"video_guidance_scale\")\n                    guidance_true = gr.Slider(label='True guidance', minimum=-1.0, maximum=14.0, step=0.1, value=-1.0, elem_id=\"video_guidance_true\")\n            with gr.Accordion(open=False, label=\"Decode\", elem_id='video_decode_accordion'):\n                with gr.Row():\n                    vae_type = gr.Dropdown(label='VAE decode', choices=['Default', 'Tiny', 'Remote', 'Upscale'], value='Default', elem_id=\"video_vae_type\")\n                    vae_tile_frames = gr.Slider(label='Tile frames', minimum=1, maximum=64, step=1, value=16, elem_id=\"video_vae_tile_frames\")\n\n            vlm_enhance, vlm_model, vlm_system_prompt = ui_video_vlm.create_ui(prompt_element=prompt, image_element=init_image)\n\n        # output panel with gallery and video tabs\n        with gr.Column(elem_id='video-output-column', scale=2) as _column_output:\n            with gr.Tabs(elem_classes=['video-output-tabs'], elem_id='video-output-tabs'):\n                with gr.Tab('Video', id='out-video'):\n                    video = gr.Video(label=\"Output\", show_label=False, elem_id='control_output_video', elem_classes=['control-image'], height=512, autoplay=False)\n                with gr.Tab('Frames', id='out-gallery'):\n                    gallery, gen_info, html_info, _html_info_formatted, html_log = ui_common.create_output_panel(\"video\", prompt=prompt, preview=False, transfer=False, scale=2)\n\n    # connect reuse seed button\n    ui_common.connect_reuse_seed(seed, reuse_seed, gen_info, is_subseed=False)\n    # handle engine and model change\n    engine.change(fn=engine_change, inputs=[engine], outputs=[model])\n    model.change(fn=model_change, inputs=[engine, model], outputs=[url])\n    btn_load.click(fn=model_load, inputs=[engine, model], outputs=[html_log])\n    # hidden fields\n    task_id = gr.Textbox(visible=False, value='')\n    ui_state = gr.Textbox(visible=False, value='')\n    state_inputs = [task_id, ui_state]\n\n    # generate args\n    video_inputs = [\n        engine, model,\n        prompt, negative, styles,\n        width, height,\n        frames,\n        steps, sampler_index,\n        sampler_shift, dynamic_shift,\n        seed,\n        guidance_scale, guidance_true,\n        init_image, init_strength, last_image,\n        vae_type, vae_tile_frames,\n        mp4_fps, mp4_interpolate, mp4_codec, mp4_ext, mp4_opt, mp4_video, mp4_frames, mp4_sf,\n        vlm_enhance, vlm_model, vlm_system_prompt,\n        overrides,\n    ]\n    video_outputs = [\n        gallery,\n        video,\n        gen_info,\n        html_info,\n        html_log,\n    ]\n\n    video_dict = dict(\n        fn=call_queue.wrap_gradio_gpu_call(video_run.generate, extra_outputs=[gr.update(), gr.update(), gr.update(), gr.update()], name='Video'),\n        _js=\"submit_video\",\n        inputs=state_inputs + video_inputs,\n        outputs=video_outputs,\n        show_progress='hidden',\n    )\n    generate.click(**video_dict)\n    return [engine, model, steps, sampler_index]\n"
  },
  {
    "path": "modules/video_models/video_utils.py",
    "content": "import os\nimport sys\nimport time\nfrom PIL import Image\nfrom installer import install\nfrom modules import shared, sd_models, timer, errors, devices\n\n\ndebug = shared.log.trace if os.environ.get('SD_VIDEO_DEBUG', None) is not None else lambda *args, **kwargs: None\n\n\ndef queue_err(msg):\n    shared.log.error(f'Video: {msg}')\n    return [], None, '', '', f'Error: {msg}'\n\n\ndef get_url(url):\n    return f'<a href=\"{url}\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"video-model-link\">{url}</a><br><br>' if url else '<br><br>'\n\n\ndef check_av():\n    install('av')\n    try:\n        import av\n        av.logging.set_level(av.logging.ERROR) # pylint: disable=c-extension-no-member\n    except Exception as e:\n        shared.log.error(f'av package: {e}')\n        return False\n    return av\n\n\ndef set_prompt(p):\n    p.prompt = shared.prompt_styles.apply_styles_to_prompt(p.prompt, p.styles)\n    p.negative_prompt = shared.prompt_styles.apply_negative_styles_to_prompt(p.negative_prompt, p.styles)\n    shared.prompt_styles.apply_styles_to_extra(p)\n    p.styles = []\n    p.task_args['prompt'] = p.prompt\n    p.task_args['negative_prompt'] = p.negative_prompt\n\n\ndef hijack_encode_image(*args, **kwargs):\n    t0 = time.time()\n    try:\n        sd_models.move_model(shared.sd_model.image_encoder, devices.device)\n        res = shared.sd_model.orig_encode_image(*args, **kwargs)\n    except Exception as e:\n        shared.log.error(f'Video encode image: {e}')\n        errors.display(e, 'Video encode image')\n        res = None\n    t1 = time.time()\n    timer.process.add('te', t1-t0)\n    debug(f'Video encode image: te={shared.sd_model.image_encoder.__class__.__name__} time={t1-t0:.2f}')\n    shared.sd_model = sd_models.apply_balanced_offload(shared.sd_model)\n    return res\n\n\ndef get_codecs():\n    av = check_av()\n    if av is None:\n        return []\n    codecs = []\n    for codec in av.codecs_available:\n        try:\n            c = av.Codec(codec, mode='w')\n            if c.type == 'video' and c.is_encoder and len(c.video_formats) > 0:\n                if not any(c.name == ca.name for ca in codecs):\n                    codecs.append(c)\n        except Exception:\n            pass\n    hw_codecs = [c for c in codecs if (c.capabilities & 0x40000 > 0) or (c.capabilities & 0x80000 > 0)]\n    sw_codecs = [c for c in codecs if c not in hw_codecs]\n    shared.log.debug(f'Video codecs: hardware={len(hw_codecs)} software={len(sw_codecs)}')\n    # for c in hw_codecs:\n    #     shared.log.trace(f'codec={c.name} cname=\"{c.canonical_name}\" decs=\"{c.long_name}\" intra={c.intra_only} lossy={c.lossy} lossless={c.lossless} capabilities={c.capabilities} hw=True')\n    # for c in sw_codecs:\n    #     shared.log.trace(f'codec={c.name} cname=\"{c.canonical_name}\" decs=\"{c.long_name}\" intra={c.intra_only} lossy={c.lossy} lossless={c.lossless} capabilities={c.capabilities} hw=False')\n    return ['none'] + [c.name for c in hw_codecs + sw_codecs]\n\n\ndef decode_fourcc(cc):\n    cc_bytes = int(cc).to_bytes(4, byteorder=sys.byteorder) # convert code to a bytearray\n    cc_str = cc_bytes.decode() # decode byteaarray to a string\n    return cc_str\n\n\ndef get_video_frames(fn: str, num_frames: int = -1, skip_frames: int = 0):\n    import cv2\n    frames = []\n    try:\n        video = cv2.VideoCapture(fn)\n        if not video.isOpened():\n            return frames\n        frame_count = int(video.get(cv2.CAP_PROP_FRAME_COUNT))\n        fps = int(video.get(cv2.CAP_PROP_FPS))\n        w, h = int(video.get(cv2.CAP_PROP_FRAME_WIDTH)), int(video.get(cv2.CAP_PROP_FRAME_HEIGHT))\n        codec = decode_fourcc(video.get(cv2.CAP_PROP_FOURCC))\n        skip = 0\n        while True:\n            status, frame = video.read()\n            if skip_frames > 0:\n                if skip < skip_frames:\n                    skip += 1\n                    _status, _frame = video.read()\n                    continue\n                skip = 0\n            if status:\n                frame = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)\n                frame = Image.fromarray(frame)\n                frames.append(frame)\n            else:\n                break\n            if len(frames) >= num_frames > 0:\n                break\n        video.release()\n        shared.log.debug(f'Video open: file=\"{fn}\" frames={len(frames)} total={frame_count} skip={skip} fps={fps} size={w}x{h} codec={codec}')\n    except Exception as e:\n        shared.log.error(f'Video open: file=\"{fn}\" {e}')\n        return frames\n    return frames\n"
  },
  {
    "path": "modules/video_models/video_vae.py",
    "content": "import os\nfrom modules import shared, devices\n\n\ndebug = shared.log.trace if os.environ.get('SD_VIDEO_DEBUG', None) is not None else lambda *args, **kwargs: None\nvae_type = None\n\n\ndef set_vae_params(p, slicing:bool=True, tiling:bool=True, framewise:bool=True) -> None:\n    global vae_type # pylint: disable=global-statement\n    vae_type = p.vae_type\n    if not hasattr(shared.sd_model, 'vae'):\n        return\n    if slicing and hasattr(shared.sd_model.vae, 'enable_slicing'):\n        shared.sd_model.vae.enable_slicing()\n    if (p.frames > p.vae_tile_frames) and (p.vae_tile_frames > 0):\n        if hasattr(shared.sd_model.vae, 'tile_sample_min_num_frames'):\n            shared.sd_model.vae.tile_sample_min_num_frames = p.vae_tile_frames\n        if framewise and hasattr(shared.sd_model.vae, 'use_framewise_decoding'):\n            shared.sd_model.vae.use_framewise_decoding = True\n        if tiling and hasattr(shared.sd_model.vae, 'enable_tiling'):\n            shared.sd_model.vae.enable_tiling()\n        debug(f'VAE params: type={vae_type} tiling=True frames={p.frames} tile_frames={p.vae_tile_frames} framewise={getattr(shared.sd_model.vae, \"use_framewise_decoding\", None)}')\n    else:\n        if hasattr(shared.sd_model.vae, 'use_framewise_decoding'):\n            shared.sd_model.vae.use_framewise_decoding = False\n        if hasattr(shared.sd_model.vae, 'disable_tiling'):\n            shared.sd_model.vae.disable_tiling()\n        debug(f'VAE params: type={vae_type} tiling=False frames={p.frames} tile_frames={p.vae_tile_frames} framewise={getattr(shared.sd_model.vae, \"use_framewise_decoding\", None)}')\n\n\ndef vae_decode_tiny(latents):\n    if 'Hunyuan' in shared.sd_model.__class__.__name__:\n        variant = 'TAE HunyuanVideo'\n    elif 'Mochi' in shared.sd_model.__class__.__name__:\n        variant = 'TAE MochiVideo'\n    elif 'WAN' in shared.sd_model.__class__.__name__:\n        variant = 'TAE WanVideo'\n    elif 'Kandinsky' in shared.sd_model.__class__.__name__:\n        variant = 'TAE HunyuanVideo'\n    else:\n        shared.log.warning(f'Decode: type=Tiny cls={shared.sd_model.__class__.__name__} not supported')\n        return None\n    from modules.vae import sd_vae_taesd\n    vae, variant = sd_vae_taesd.get_model(variant=variant)\n    if vae is None:\n        return None\n    shared.log.debug(f'Decode: type=Tiny cls={vae.__class__.__name__} variant=\"{variant}\" latents={latents.shape}')\n    vae = vae.to(device=devices.device, dtype=devices.dtype)\n    latents = latents.transpose(1, 2).to(device=devices.device, dtype=devices.dtype)\n    images = vae.decode_video(latents, parallel=False).transpose(1, 2).mul_(2).sub_(1)\n    images = images.transpose(1, 2).mul_(2).sub_(1)\n    return (images, None)\n"
  },
  {
    "path": "modules/zluda.py",
    "content": "import sys\nfrom typing import Union\nfrom modules.zluda_installer import core, default_agent # pylint: disable=unused-import\n\n\nPLATFORM = sys.platform\ndo_nothing = lambda _: None # pylint: disable=unnecessary-lambda-assignment\n\n\ndef test(device) -> Union[Exception, None]:\n    import torch\n    device = torch.device(device)\n    try:\n        ten1 = torch.randn((2, 4,), device=device)\n        ten2 = torch.randn((4, 8,), device=device)\n        out = torch.mm(ten1, ten2)\n        assert out.sum().is_nonzero()\n        return None\n    except Exception as e:\n        return e\n\n\ndef zluda_init():\n    try:\n        import torch\n        from installer import log\n        from modules import devices, zluda_installer\n        from modules.shared import cmd_opts\n        from modules.rocm_triton_windows import apply_triton_patches\n\n        cmd_opts.device_id = None\n\n        device = devices.get_optimal_device()\n        result = test(device)\n        if result is not None:\n            log.warning(f'ZLUDA device failed to pass basic operation test: index={device.index}, device_name={torch.cuda.get_device_name(device)}')\n            torch.cuda.is_available = lambda: False\n            devices.cuda_ok = False\n            devices.backend = 'cpu'\n            devices.device = devices.cpu\n            return False, result\n\n        if not zluda_installer.default_agent.blaslt_supported:\n            log.debug(f'ROCm: hipBLASLt unavailable agent={zluda_installer.default_agent}')\n\n        apply_triton_patches()\n\n        torch.backends.cudnn.enabled = zluda_installer.MIOpen_enabled\n        if hasattr(torch.backends.cuda, \"enable_cudnn_sdp\"):\n            if not zluda_installer.MIOpen_enabled:\n                torch.backends.cuda.enable_cudnn_sdp(False)\n                torch.backends.cuda.enable_cudnn_sdp = do_nothing\n        else:\n            torch.backends.cuda.enable_cudnn_sdp = do_nothing\n        torch.backends.cuda.enable_flash_sdp(False)\n        torch.backends.cuda.enable_flash_sdp = torch.backends.cuda.enable_cudnn_sdp\n        torch.backends.cuda.enable_mem_efficient_sdp(False)\n        torch.backends.cuda.enable_mem_efficient_sdp = do_nothing\n    except Exception as e:\n        return False, e\n    return True, None\n"
  },
  {
    "path": "modules/zluda_installer.py",
    "content": "import os\nimport sys\nimport ssl\nimport site\nimport ctypes\nimport shutil\nimport zipfile\nimport urllib.request\nfrom typing import Union\nfrom installer import args, log\nfrom modules import rocm\n\n\nDLL_MAPPING = {\n    'cublas.dll': 'cublas64_11.dll',\n    'cusparse.dll': 'cusparse64_11.dll',\n    'cufft.dll': 'cufft64_10.dll',\n    'cufftw.dll': 'cufftw64_10.dll',\n    'nvrtc.dll': 'nvrtc64_112_0.dll',\n}\nHIPSDK_TARGETS = ['rocblas.dll', 'rocsolver.dll', 'rocsparse.dll', 'hipfft.dll',]\n\nMIOpen_enabled = False\n\npath = os.path.abspath(os.environ.get('ZLUDA', '.zluda'))\ndefault_agent: Union[rocm.Agent, None] = None\nhipBLASLt_enabled = False\n\n\nclass ZLUDAResult(ctypes.Structure):\n    _fields_ = [\n        ('return_code', ctypes.c_int),\n        ('value', ctypes.c_ulonglong),\n    ]\n\n\nclass ZLUDALibrary:\n    internal: ctypes.CDLL\n\n    def __init__(self, internal: ctypes.CDLL):\n        self.internal = internal\n\n\nclass Core(ZLUDALibrary):\n    def __init__(self, internal: ctypes.CDLL):\n        internal.zluda_get_hip_object.restype = ZLUDAResult\n        internal.zluda_get_hip_object.argtypes = [ctypes.c_void_p, ctypes.c_int]\n\n        try:\n            internal.zluda_get_nightly_flag.restype = ctypes.c_int\n            internal.zluda_get_nightly_flag.argtypes = []\n        except AttributeError:\n            internal.zluda_get_nightly_flag = lambda: 0\n\n        super().__init__(internal)\n\n    def to_hip_stream(self, zluda_object: ctypes.c_void_p):\n        return self.internal.zluda_get_hip_object(zluda_object, 1).value\n\n    def get_nightly_flag(self) -> int:\n        return self.internal.zluda_get_nightly_flag()\n\n\ncore = None\nml = None\n\n\ndef set_default_agent(agent: rocm.Agent):\n    global default_agent # pylint: disable=global-statement\n    default_agent = agent\n\n\ndef is_reinstall_needed() -> bool: # ZLUDA<3.9.4\n    return os.path.exists(os.path.join(path, 'cudart.dll'))\n\n\ndef install():\n    if os.path.exists(path):\n        return\n\n    platform = \"windows\"\n    commit = os.environ.get(\"ZLUDA_HASH\", \"5e717459179dc272b7d7d23391f0fad66c7459cf\")\n    if os.environ.get(\"ZLUDA_NIGHTLY\", \"0\") == \"1\":\n        log.warning(\"Environment variable 'ZLUDA_NIGHTLY' will be removed. Please use command-line argument '--use-nightly' instead.\")\n        args.use_nightly = True\n    if args.use_nightly:\n        platform = \"nightly-\" + platform\n    log.debug(f'Install ZLUDA: rocm={rocm.version} platform={platform} commit={commit}')\n    ssl._create_default_https_context = ssl._create_unverified_context # pylint: disable=protected-access\n    try:\n        urllib.request.urlretrieve(f'https://github.com/lshqqytiger/ZLUDA/releases/download/rel.{commit}/ZLUDA-{platform}-rocm{rocm.version[0]}-amd64.zip', '_zluda')\n        if not os.path.exists('_zluda'):\n            raise RuntimeError('ZLUDA download failed')\n        with zipfile.ZipFile('_zluda', 'r') as archive:\n            infos = archive.infolist()\n            for info in infos:\n                if not info.is_dir():\n                    info.filename = os.path.basename(info.filename)\n                    archive.extract(info, path)\n    except Exception as e:\n        raise RuntimeError(f'Install ZLUDA: {e}') from e\n    finally:\n        if os.path.exists('_zluda'):\n            os.remove('_zluda')\n\n\ndef uninstall():\n    if os.path.exists(path):\n        shutil.rmtree(path)\n\n\ndef set_blaslt_enabled(enabled: bool):\n    global hipBLASLt_enabled # pylint: disable=global-statement\n    hipBLASLt_enabled = enabled\n\n\ndef get_blaslt_enabled() -> bool:\n    return hipBLASLt_enabled\n\n\ndef link_or_copy(src: os.PathLike, dst: os.PathLike):\n    try:\n        os.symlink(src, dst)\n    except Exception:\n        try:\n            os.link(src, dst)\n        except Exception:\n            shutil.copyfile(src, dst)\n\n\ndef load():\n    assert isinstance(rocm.environment, rocm.ROCmEnvironment)\n    global core, ml, hipBLASLt_enabled, MIOpen_enabled # pylint: disable=global-statement\n    core = Core(ctypes.windll.LoadLibrary(os.path.join(path, 'nvcuda.dll')))\n    ml = ZLUDALibrary(ctypes.windll.LoadLibrary(os.path.join(path, 'nvml.dll')))\n    is_nightly = core.get_nightly_flag() == 1\n    hipBLASLt_enabled = is_nightly and os.path.exists(rocm.blaslt_tensile_libpath) and os.path.exists(os.path.join(rocm.environment.path, \"bin\", \"hipblaslt.dll\")) and default_agent is not None and default_agent.blaslt_supported\n    MIOpen_enabled = is_nightly and os.path.exists(os.path.join(rocm.environment.path, \"bin\", \"MIOpen.dll\"))\n\n    for k, v in DLL_MAPPING.items():\n        if not os.path.exists(os.path.join(path, v)):\n            link_or_copy(os.path.join(path, k), os.path.join(path, v))\n\n    if hipBLASLt_enabled and not os.path.exists(os.path.join(path, 'cublasLt64_11.dll')):\n        link_or_copy(os.path.join(path, 'cublasLt.dll'), os.path.join(path, 'cublasLt64_11.dll'))\n\n    if MIOpen_enabled and not os.path.exists(os.path.join(path, 'cudnn64_9.dll')):\n        link_or_copy(os.path.join(path, 'cudnn.dll'), os.path.join(path, 'cudnn64_9.dll'))\n\n    log.info(f\"ZLUDA load: path='{path}' nightly={bool(core.get_nightly_flag())}\")\n\n    os.environ[\"ZLUDA_COMGR_LOG_LEVEL\"] = \"1\"\n    os.environ[\"ZLUDA_NVRTC_LIB\"] = os.path.join([v for v in site.getsitepackages() if v.endswith(\"site-packages\")][0], \"torch\", \"lib\", \"nvrtc64_112_0.dll\")\n\n    for v in HIPSDK_TARGETS:\n        ctypes.windll.LoadLibrary(os.path.join(rocm.environment.path, 'bin', v))\n    for v in DLL_MAPPING.values():\n        ctypes.windll.LoadLibrary(os.path.join(path, v))\n\n    if hipBLASLt_enabled:\n        os.environ.setdefault(\"DISABLE_ADDMM_CUDA_LT\", \"0\")\n        ctypes.windll.LoadLibrary(os.path.join(rocm.environment.path, 'bin', 'hipblaslt.dll'))\n        ctypes.windll.LoadLibrary(os.path.join(path, 'cublasLt64_11.dll'))\n    else:\n        os.environ[\"DISABLE_ADDMM_CUDA_LT\"] = \"1\"\n\n    if MIOpen_enabled:\n        ctypes.windll.LoadLibrary(os.path.join(rocm.environment.path, 'bin', 'MIOpen.dll'))\n        ctypes.windll.LoadLibrary(os.path.join(path, 'cudnn64_9.dll'))\n\n    def postinstall():\n        import torch\n        torch.version.hip = rocm.version\n\n        platform = sys.platform\n        sys.platform = \"\"\n        from torch.utils import cpp_extension\n        sys.platform = platform\n        cpp_extension.IS_WINDOWS = platform == \"win32\"\n        cpp_extension.IS_MACOS = False\n        cpp_extension.IS_LINUX = platform.startswith('linux')\n        def _join_rocm_home(*paths) -> str:\n            return os.path.join(cpp_extension.ROCM_HOME, *paths)\n        cpp_extension._join_rocm_home = _join_rocm_home # pylint: disable=protected-access\n    rocm.postinstall = postinstall\n\n    from modules.zluda import zluda_init\n    rocm.rocm_init = zluda_init\n"
  },
  {
    "path": "motd",
    "content": ""
  },
  {
    "path": "package.json",
    "content": "{\n  \"name\": \"@vladmandic/sdnext\",\n  \"description\": \"SD.Next: All-in-one WebUI for AI generative image and video creation\",\n  \"author\": \"Vladimir Mandic <mandic00@live.com>\",\n  \"bugs\": {\n    \"url\": \"https://github.com/vladmandic/sdnext/issues\"\n  },\n  \"homepage\": \"https://github.com/vladmandic/sdnext\",\n  \"license\": \"Apache-2.0\",\n  \"engines\": {\n    \"node\": \">=22.0.0\"\n  },\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"git+https://github.com/vladmandic/sdnext.git\"\n  },\n  \"scripts\": {\n    \"venv\": \". venv/bin/activate\",\n    \"start\": \". venv/bin/activate; python launch.py --debug\",\n    \"localize\": \"node cli/localize.js\",\n    \"packages\": \". venv/bin/activate && pip install --upgrade transformers accelerate huggingface_hub safetensors tokenizers peft pytorch_lightning pylint ruff\",\n    \"format\": \". venv/bin/activate && pre-commit run --all-files\",\n    \"format-win\": \"venv\\\\scripts\\\\activate && pre-commit run --all-files\",\n    \"eslint\": \"eslint . javascript/\",\n    \"eslint-ui\": \"cd extensions-builtin/sdnext-modernui && eslint . javascript/\",\n    \"ruff\": \". venv/bin/activate && ruff check\",\n    \"ruff-win\": \"venv\\\\scripts\\\\activate && ruff check\",\n    \"pylint\": \". venv/bin/activate && pylint --disable=W0511 *.py modules/ pipelines/ scripts/ extensions-builtin/ | grep -v '^*'\",\n    \"pylint-win\": \"venv\\\\scripts\\\\activate && pylint --disable=W0511 *.py modules/ pipelines/ scripts/ extensions-builtin/\",\n    \"lint\": \"npm run format && npm run eslint && npm run eslint-ui && npm run ruff && npm run pylint | grep -v TODO\",\n    \"lint-win\": \"npm run format-win && npm run eslint && npm run eslint-ui && npm run ruff-win && npm run pylint-win\",\n    \"test\": \". venv/bin/activate; python launch.py --debug --test\",\n    \"todo\": \"grep -oIPR 'TODO.*' *.py modules/ pipelines/ | sort -u\",\n    \"debug\": \"grep -ohIPR 'SD_.*?_DEBUG' *.py modules/ pipelines/ | sort -u\"\n  },\n  \"devDependencies\": {\n    \"@eslint/compat\": \"^2.0.0\",\n    \"@eslint/css\": \"^0.14.1\",\n    \"@eslint/js\": \"^9.39.2\",\n    \"@eslint/json\": \"^0.14.0\",\n    \"@eslint/markdown\": \"^7.5.1\",\n    \"@html-eslint/eslint-plugin\": \"^0.52.1\",\n    \"esbuild\": \"^0.27.2\",\n    \"eslint\": \"^9.39.2\",\n    \"eslint-config-airbnb-extended\": \"^3.0.0\",\n    \"eslint-plugin-promise\": \"^7.2.1\",\n    \"globals\": \"^17.0.0\"\n  },\n  \"dependencies\": {\n    \"@google/generative-ai\": \"^0.24.1\",\n    \"argparse\": \"^2.0.1\"\n  },\n  \"//\": {\n    \"disabled\": {\n      \"typescript\": \"^5.9.3\",\n      \"@types/node\": \"^25.0.3\"\n    }\n  }\n}\n"
  },
  {
    "path": "pipelines/bria/__init__.py",
    "content": ""
  },
  {
    "path": "pipelines/bria/bria_pipeline.py",
    "content": "from diffusers.pipelines.flux.pipeline_flux import FluxPipeline, retrieve_timesteps, calculate_shift\nfrom typing import Any, Callable, Dict, List, Optional, Union\n\nimport torch\n\nfrom transformers import (\n    T5EncoderModel,\n    T5TokenizerFast,\n)\n\nfrom diffusers.image_processor import VaeImageProcessor\nfrom diffusers import AutoencoderKL , DDIMScheduler, EulerAncestralDiscreteScheduler\nfrom diffusers.schedulers import FlowMatchEulerDiscreteScheduler\nfrom diffusers.schedulers import KarrasDiffusionSchedulers\nfrom diffusers.loaders import FluxLoraLoaderMixin\nfrom diffusers.utils import (\n    USE_PEFT_BACKEND,\n    is_torch_xla_available,\n    logging,\n    replace_example_docstring,\n    scale_lora_layers,\n    unscale_lora_layers,\n)\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline\nfrom diffusers.pipelines.flux.pipeline_output import FluxPipelineOutput\nfrom pipelines.bria.transformer_bria import BriaTransformer2DModel\nfrom pipelines.bria.bria_utils import get_t5_prompt_embeds, get_original_sigmas, is_ng_none\nfrom diffusers.utils.torch_utils import randn_tensor\nimport diffusers\nimport numpy as np\nif is_torch_xla_available():\n    import torch_xla.core.xla_model as xm\n\n    XLA_AVAILABLE = True\nelse:\n    XLA_AVAILABLE = False\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\nEXAMPLE_DOC_STRING = \"\"\"\n    Examples:\n        ```py\n        >>> import torch\n        >>> from diffusers import StableDiffusion3Pipeline\n\n        >>> pipe = StableDiffusion3Pipeline.from_pretrained(\n        ...     \"stabilityai/stable-diffusion-3-medium-diffusers\", torch_dtype=torch.float16\n        ... )\n        >>> pipe.to(\"cuda\")\n        >>> prompt = \"A cat holding a sign that says hello world\"\n        >>> image = pipe(prompt).images[0]\n        >>> image.save(\"sd3.png\")\n        ```\n\"\"\"\n\n\"\"\"\nBased on FluxPipeline with several changes:\n- no pooled embeddings\n- We use zero padding for prompts\n- No guidance embedding since this is not a distilled version\n\"\"\"\nclass BriaPipeline(FluxPipeline):\n    r\"\"\"\n    Args:\n        transformer ([`SD3Transformer2DModel`]):\n            Conditional Transformer (MMDiT) architecture to denoise the encoded image latents.\n        scheduler ([`FlowMatchEulerDiscreteScheduler`]):\n            A scheduler to be used in combination with `transformer` to denoise the encoded image latents.\n        vae ([`AutoencoderKL`]):\n            Variational Auto-Encoder (VAE) Model to encode and decode images to and from latent representations.\n        text_encoder ([`T5EncoderModel`]):\n            Frozen text-encoder. Stable Diffusion 3 uses\n            [T5](https://huggingface.co/docs/transformers/model_doc/t5#transformers.T5EncoderModel), specifically the\n            [t5-v1_1-xxl](https://huggingface.co/google/t5-v1_1-xxl) variant.\n        tokenizer (`T5TokenizerFast`):\n            Tokenizer of class\n            [T5Tokenizer](https://huggingface.co/docs/transformers/model_doc/t5#transformers.T5Tokenizer).\n    \"\"\"\n\n    def __init__(\n        self,\n        transformer: BriaTransformer2DModel,\n        scheduler: Union[FlowMatchEulerDiscreteScheduler,KarrasDiffusionSchedulers],\n        vae: AutoencoderKL,\n        text_encoder: T5EncoderModel,\n        tokenizer: T5TokenizerFast\n    ):\n        self.register_modules(\n            vae=vae,\n            text_encoder=text_encoder,\n            tokenizer=tokenizer,\n            transformer=transformer,\n            scheduler=scheduler,\n        )\n\n        self.vae_scale_factor = (\n            2 ** (len(self.vae.config.block_out_channels)) if hasattr(self, \"vae\") and self.vae is not None else 16\n        )\n        self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor)\n        self.default_sample_size = 64 # due to patchify=> 128,128 => res of 1k,1k\n\n        # T5 is senstive to precision so we use the precision used for precompute and cast as needed\n        for block in self.text_encoder.encoder.block:\n            block.layer[-1].DenseReluDense.wo.to(dtype=torch.float32)\n\n        if self.vae.config.shift_factor is None:\n            self.vae.config.shift_factor=0\n            self.vae.to(dtype=torch.float32)\n\n\n    def encode_prompt(\n        self,\n        prompt: Union[str, List[str]],\n        device: Optional[torch.device] = None,\n        num_images_per_prompt: int = 1,\n        do_classifier_free_guidance: bool = True,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        max_sequence_length: int = 128,\n        lora_scale: Optional[float] = None,\n    ):\n        r\"\"\"\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                prompt to be encoded\n            device: (`torch.device`):\n                torch device\n            num_images_per_prompt (`int`):\n                number of images that should be generated per prompt\n            do_classifier_free_guidance (`bool`):\n                whether to use classifier free guidance or not\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n        \"\"\"\n        device = device or self._execution_device\n\n        # set lora scale so that monkey patched LoRA\n        # function of text encoder can correctly access it\n        if lora_scale is not None and isinstance(self, FluxLoraLoaderMixin):\n            self._lora_scale = lora_scale\n\n            # dynamically adjust the LoRA scale\n            if self.text_encoder is not None and USE_PEFT_BACKEND:\n                scale_lora_layers(self.text_encoder, lora_scale)\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n        if prompt is not None:\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        if prompt_embeds is None:\n            prompt_embeds = get_t5_prompt_embeds(\n                self.tokenizer,\n                self.text_encoder,\n                prompt=prompt,\n                num_images_per_prompt=num_images_per_prompt,\n                max_sequence_length=max_sequence_length,\n                device=device,\n            ).to(dtype=self.transformer.dtype)\n\n        if do_classifier_free_guidance and negative_prompt_embeds is None:\n            if not is_ng_none(negative_prompt):\n                negative_prompt = batch_size * [negative_prompt] if isinstance(negative_prompt, str) else negative_prompt\n\n                if prompt is not None and type(prompt) is not type(negative_prompt):\n                    raise TypeError(\n                        f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                        f\" {type(prompt)}.\"\n                    )\n                elif batch_size != len(negative_prompt):\n                    raise ValueError(\n                        f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                        f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                        \" the batch size of `prompt`.\"\n                    )\n\n                negative_prompt_embeds = get_t5_prompt_embeds(\n                    self.tokenizer,\n                    self.text_encoder,\n                    prompt=negative_prompt,\n                    num_images_per_prompt=num_images_per_prompt,\n                    max_sequence_length=max_sequence_length,\n                    device=device,\n                ).to(dtype=self.transformer.dtype)\n            else:\n                negative_prompt_embeds = torch.zeros_like(prompt_embeds)\n\n        if self.text_encoder is not None:\n            if isinstance(self, FluxLoraLoaderMixin) and USE_PEFT_BACKEND:\n                # Retrieve the original scale by scaling back the LoRA layers\n                unscale_lora_layers(self.text_encoder, lora_scale)\n\n        dtype = self.text_encoder.dtype if self.text_encoder is not None else self.transformer.dtype\n        text_ids = torch.zeros(batch_size, prompt_embeds.shape[1], 3).to(device=device, dtype=dtype)\n        text_ids = text_ids.repeat(num_images_per_prompt, 1, 1)\n\n        return prompt_embeds, negative_prompt_embeds, text_ids\n\n    @property\n    def guidance_scale(self):\n        return self._guidance_scale\n\n\n    # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2)\n    # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1`\n    # corresponds to doing no classifier free guidance.\n    @property\n    def do_classifier_free_guidance(self):\n        return self._guidance_scale > 1\n\n    @property\n    def joint_attention_kwargs(self):\n        return self._joint_attention_kwargs\n\n    @property\n    def num_timesteps(self):\n        return self._num_timesteps\n\n    @property\n    def interrupt(self):\n        return self._interrupt\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        height: Optional[int] = None,\n        width: Optional[int] = None,\n        num_inference_steps: int = 30,\n        timesteps: List[int] = None,\n        guidance_scale: float = 5,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.FloatTensor] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        joint_attention_kwargs: Optional[Dict[str, Any]] = None,\n        callback_on_step_end: Optional[Callable[[int, int, Dict], None]] = None,\n        callback_on_step_end_tensor_inputs: List[str] = [\"latents\"],\n        max_sequence_length: int = 128,\n        clip_value:Union[None,float] = None,\n        normalize:bool = False\n    ):\n        r\"\"\"\n        Function invoked when calling the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide the image generation. If not defined, one has to pass `prompt_embeds`.\n                instead.\n            height (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The height in pixels of the generated image. This is set to 1024 by default for the best results.\n            width (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The width in pixels of the generated image. This is set to 1024 by default for the best results.\n            num_inference_steps (`int`, *optional*, defaults to 50):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            timesteps (`List[int]`, *optional*):\n                Custom timesteps to use for the denoising process with schedulers which support a `timesteps` argument\n                in their `set_timesteps` method. If not defined, the default behavior when `num_inference_steps` is\n                passed will be used. Must be in descending order.\n            guidance_scale (`float`, *optional*, defaults to 5.0):\n                Guidance scale as defined in [Classifier-Free Diffusion Guidance](https://arxiv.org/abs/2207.12598).\n                `guidance_scale` is defined as `w` of equation 2. of [Imagen\n                Paper](https://arxiv.org/pdf/2205.11487.pdf). Guidance scale is enabled by setting `guidance_scale >\n                1`. Higher guidance scale encourages to generate images that are closely linked to the text `prompt`,\n                usually at the expense of lower image quality.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                One or a list of [torch generator(s)](https://pytorch.org/docs/stable/generated/torch.Generator.html)\n                to make generation deterministic.\n            latents (`torch.FloatTensor`, *optional*):\n                Pre-generated noisy latents, sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor will ge generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generate image. Choose between\n                [PIL](https://pillow.readthedocs.io/en/stable/): `PIL.Image.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] instead\n                of a plain tuple.\n            joint_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            callback_on_step_end (`Callable`, *optional*):\n                A function that calls at the end of each denoising steps during the inference. The function is called\n                with the following arguments: `callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int,\n                callback_kwargs: Dict)`. `callback_kwargs` will include a list of all tensors as specified by\n                `callback_on_step_end_tensor_inputs`.\n            callback_on_step_end_tensor_inputs (`List`, *optional*):\n                The list of tensor inputs for the `callback_on_step_end` function. The tensors specified in the list\n                will be passed as `callback_kwargs` argument. You will only be able to include variables listed in the\n                `._callback_tensor_inputs` attribute of your pipeline class.\n            max_sequence_length (`int` defaults to 256): Maximum sequence length to use with the `prompt`.\n\n        Examples:\n\n          Returns:\n            [`~pipelines.flux.FluxPipelineOutput`] or `tuple`: [`~pipelines.flux.FluxPipelineOutput`] if `return_dict`\n            is True, otherwise a `tuple`. When returning a tuple, the first element is a list with the generated\n            images.\n        \"\"\"\n\n        height = height or self.default_sample_size * self.vae_scale_factor\n        width = width or self.default_sample_size * self.vae_scale_factor\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt=prompt,\n            height=height,\n            width=width,\n            prompt_embeds=prompt_embeds,\n            callback_on_step_end_tensor_inputs=callback_on_step_end_tensor_inputs,\n            max_sequence_length=max_sequence_length,\n        )\n\n        self._guidance_scale = guidance_scale\n        self._joint_attention_kwargs = joint_attention_kwargs\n        self._interrupt = False\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        device = self._execution_device\n\n        lora_scale = (\n            self.joint_attention_kwargs.get(\"scale\", None) if self.joint_attention_kwargs is not None else None\n        )\n\n        (\n            prompt_embeds,\n            negative_prompt_embeds,\n            text_ids\n        ) = self.encode_prompt(\n            prompt=prompt,\n            negative_prompt=negative_prompt,\n            do_classifier_free_guidance=self.do_classifier_free_guidance,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            device=device,\n            num_images_per_prompt=num_images_per_prompt,\n            max_sequence_length=max_sequence_length,\n            lora_scale=lora_scale,\n        )\n\n        if self.do_classifier_free_guidance:\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds], dim=0)\n\n\n\n        # 5. Prepare latent variables\n        num_channels_latents = self.transformer.config.in_channels // 4 # due to patch=2, we devide by 4\n        latents, latent_image_ids = self.prepare_latents(\n            batch_size * num_images_per_prompt,\n            num_channels_latents,\n            height,\n            width,\n            prompt_embeds.dtype,\n            device,\n            generator,\n            latents,\n        )\n\n        if  isinstance(self.scheduler,FlowMatchEulerDiscreteScheduler) and self.scheduler.config['use_dynamic_shifting']:\n            sigmas = np.linspace(1.0, 1 / num_inference_steps, num_inference_steps)\n            image_seq_len = latents.shape[1] # Shift by height - Why just height?\n\n            mu = calculate_shift(\n                image_seq_len,\n                self.scheduler.config.base_image_seq_len,\n                self.scheduler.config.max_image_seq_len,\n                self.scheduler.config.base_shift,\n                self.scheduler.config.max_shift,\n            )\n            timesteps, num_inference_steps = retrieve_timesteps(\n                self.scheduler,\n                num_inference_steps,\n                device,\n                timesteps,\n                sigmas,\n                mu=mu,\n            )\n        else:\n            # 4. Prepare timesteps\n            # Sample from training sigmas\n            if isinstance(self.scheduler,DDIMScheduler) or isinstance(self.scheduler,EulerAncestralDiscreteScheduler):\n                timesteps, num_inference_steps = retrieve_timesteps(self.scheduler, num_inference_steps, device, None, None)\n            else:\n                sigmas = get_original_sigmas(num_train_timesteps=self.scheduler.config.num_train_timesteps,num_inference_steps=num_inference_steps)\n                timesteps, num_inference_steps = retrieve_timesteps(self.scheduler, num_inference_steps, device, timesteps,sigmas=sigmas)\n\n        num_warmup_steps = max(len(timesteps) - num_inference_steps * self.scheduler.order, 0)\n        self._num_timesteps = len(timesteps)\n\n        # Supprot different diffusers versions\n        if diffusers.__version__>='0.32.0':\n            latent_image_ids=latent_image_ids[0]\n            text_ids=text_ids[0]\n\n        # 6. Denoising loop\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                if self.interrupt:\n                    continue\n\n                # expand the latents if we are doing classifier free guidance\n                latent_model_input = torch.cat([latents] * 2) if self.do_classifier_free_guidance else latents\n                if type(self.scheduler)!=FlowMatchEulerDiscreteScheduler:\n                    latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n                # broadcast to batch dimension in a way that's compatible with ONNX/Core ML\n                timestep = t.expand(latent_model_input.shape[0])\n\n                # This is predicts \"v\" from flow-matching or eps from diffusion\n                noise_pred = self.transformer(\n                    hidden_states=latent_model_input,\n                    timestep=timestep,\n                    encoder_hidden_states=prompt_embeds,\n                    joint_attention_kwargs=self.joint_attention_kwargs,\n                    return_dict=False,\n                    txt_ids=text_ids,\n                    img_ids=latent_image_ids,\n                )[0]\n\n                # perform guidance\n                if self.do_classifier_free_guidance:\n                    noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                    cfg_noise_pred_text = noise_pred_text.std()\n                    noise_pred = noise_pred_uncond + self.guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                if normalize:\n                    noise_pred = noise_pred * (0.7 *(cfg_noise_pred_text/noise_pred.std())) + 0.3 * noise_pred\n\n                if clip_value:\n                    assert clip_value>0\n                    noise_pred = noise_pred.clip(-clip_value,clip_value)\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents_dtype = latents.dtype\n                latents = self.scheduler.step(noise_pred, t, latents, return_dict=False)[0]\n\n                if latents.dtype != latents_dtype:\n                    if torch.backends.mps.is_available():\n                        # some platforms (eg. apple mps) misbehave due to a pytorch bug: https://github.com/pytorch/pytorch/pull/99272\n                        latents = latents.to(latents_dtype)\n\n                if callback_on_step_end is not None:\n                    callback_kwargs = {}\n                    for k in callback_on_step_end_tensor_inputs:\n                        callback_kwargs[k] = locals()[k]\n                    callback_outputs = callback_on_step_end(self, i, t, callback_kwargs)\n\n                    latents = callback_outputs.pop(\"latents\", latents)\n                    prompt_embeds = callback_outputs.pop(\"prompt_embeds\", prompt_embeds)\n                    negative_prompt_embeds = callback_outputs.pop(\"negative_prompt_embeds\", negative_prompt_embeds)\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n\n                if XLA_AVAILABLE:\n                    xm.mark_step()\n\n        if output_type == \"latent\":\n            image = latents\n\n        else:\n            latents = self._unpack_latents(latents, height, width, self.vae_scale_factor)\n            latents = (latents.to(dtype=torch.float32) / self.vae.config.scaling_factor) + self.vae.config.shift_factor\n            image = self.vae.decode(latents.to(dtype=self.vae.dtype), return_dict=False)[0]\n            image = self.image_processor.postprocess(image, output_type=output_type)\n\n        # Offload all models\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return (image,)\n\n        return FluxPipelineOutput(images=image)\n\n    def check_inputs(\n        self,\n        prompt,\n        height,\n        width,\n        negative_prompt=None,\n        prompt_embeds=None,\n        negative_prompt_embeds=None,\n        callback_on_step_end_tensor_inputs=None,\n        max_sequence_length=None,\n    ):\n        if height % 8 != 0 or width % 8 != 0:\n            raise ValueError(f\"`height` and `width` have to be divisible by 8 but are {height} and {width}.\")\n\n        if callback_on_step_end_tensor_inputs is not None and not all(\n            k in self._callback_tensor_inputs for k in callback_on_step_end_tensor_inputs\n        ):\n            raise ValueError(\n                f\"`callback_on_step_end_tensor_inputs` has to be in {self._callback_tensor_inputs}, but found {[k for k in callback_on_step_end_tensor_inputs if k not in self._callback_tensor_inputs]}\"\n            )\n\n        if prompt is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n\n        if negative_prompt is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n\n\n        if prompt_embeds is not None and negative_prompt_embeds is not None:\n            if prompt_embeds.shape != negative_prompt_embeds.shape:\n                raise ValueError(\n                    \"`prompt_embeds` and `negative_prompt_embeds` must have the same shape when passed directly, but\"\n                    f\" got: `prompt_embeds` {prompt_embeds.shape} != `negative_prompt_embeds`\"\n                    f\" {negative_prompt_embeds.shape}.\"\n                )\n\n        if max_sequence_length is not None and max_sequence_length > 512:\n            raise ValueError(f\"`max_sequence_length` cannot be greater than 512 but is {max_sequence_length}\")\n\n    def to(self, *args, **kwargs):\n        DiffusionPipeline.to(self, *args, **kwargs)\n        # T5 is senstive to precision so we use the precision used for precompute and cast as needed\n        for block in self.text_encoder.encoder.block:\n            block.layer[-1].DenseReluDense.wo.to(dtype=torch.float32)\n\n        if self.vae.config.shift_factor == 0 and self.vae.dtype!=torch.float32:\n            self.vae.to(dtype=torch.float32)\n\n\n        return self\n\n\n    def prepare_latents(\n        self,\n        batch_size,\n        num_channels_latents,\n        height,\n        width,\n        dtype,\n        device,\n        generator,\n        latents=None,\n    ):\n        # VAE applies 8x compression on images but we must also account for packing which requires\n        # latent height and width to be divisible by 2.\n        height = 2 * (int(height) // self.vae_scale_factor)\n        width = 2 * (int(width) // self.vae_scale_factor )\n\n        shape = (batch_size, num_channels_latents, height, width)\n\n        if latents is not None:\n            latent_image_ids = self._prepare_latent_image_ids(batch_size, height // 2, width // 2, device, dtype)\n            return latents.to(device=device, dtype=dtype), latent_image_ids\n\n        if isinstance(generator, list) and len(generator) != batch_size:\n            raise ValueError(\n                f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n            )\n\n        latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n        latents = self._pack_latents(latents, batch_size, num_channels_latents, height, width)\n\n        latent_image_ids = self._prepare_latent_image_ids(batch_size, height // 2, width // 2, device, dtype)\n\n        return latents, latent_image_ids\n\n    @staticmethod\n    def _pack_latents(latents, batch_size, num_channels_latents, height, width):\n        latents = latents.view(batch_size, num_channels_latents, height // 2, 2, width // 2, 2)\n        latents = latents.permute(0, 2, 4, 1, 3, 5)\n        latents = latents.reshape(batch_size, (height // 2) * (width // 2), num_channels_latents * 4)\n\n        return latents\n\n    @staticmethod\n    def _unpack_latents(latents, height, width, vae_scale_factor):\n        batch_size, num_patches, channels = latents.shape\n\n        height = height // vae_scale_factor\n        width = width // vae_scale_factor\n\n        latents = latents.view(batch_size, height, width, channels // 4, 2, 2)\n        latents = latents.permute(0, 3, 1, 4, 2, 5)\n\n        latents = latents.reshape(batch_size, channels // (2 * 2), height * 2, width * 2)\n\n        return latents\n\n    @staticmethod\n    def _prepare_latent_image_ids(batch_size, height, width, device, dtype):\n        latent_image_ids = torch.zeros(height, width, 3)\n        latent_image_ids[..., 1] = latent_image_ids[..., 1] + torch.arange(height)[:, None]\n        latent_image_ids[..., 2] = latent_image_ids[..., 2] + torch.arange(width)[None, :]\n\n        latent_image_id_height, latent_image_id_width, latent_image_id_channels = latent_image_ids.shape\n\n        latent_image_ids = latent_image_ids.repeat(batch_size, 1, 1, 1)\n        latent_image_ids = latent_image_ids.reshape(\n            batch_size, latent_image_id_height * latent_image_id_width, latent_image_id_channels\n        )\n\n        return latent_image_ids.to(device=device, dtype=dtype)\n"
  },
  {
    "path": "pipelines/bria/bria_utils.py",
    "content": "from typing import Union, Optional, List\nimport torch\nfrom diffusers.utils import logging\nfrom transformers import (\n    T5EncoderModel,\n    T5TokenizerFast,\n    AutoTokenizer\n)\nfrom transformers import (\n    CLIPTextModel,\n    CLIPTextModelWithProjection,\n    CLIPTokenizer\n)\n\nimport numpy as np\nimport torch.distributed as dist\nimport math\nimport os\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\ndef get_text(caption):\n\n    existing_text_list = set()\n\n    if caption[0]=='\\\"' and caption[-1]=='\\\"':\n        caption=caption[1:-2]\n\n    if caption[0]=='\\'' and caption[-1]=='\\'':\n        caption=caption[1:-2]\n\n    text_list=[]\n    current_text=''\n    text_present = False\n    for c in caption:\n        if c=='\\\"' and not text_present:\n            text_present=True\n            continue\n\n        if c=='\\\"' and text_present:\n            if current_text not in existing_text_list:\n                text_list+=[current_text]\n                existing_text_list.add(current_text)\n\n            text_present=False\n            current_text=''\n            continue\n\n        if text_present:\n            current_text+=c\n\n    return text_list\n\ndef get_by_t5_prompt_embeds(\n    tokenizer: AutoTokenizer ,\n    text_encoder: T5EncoderModel,\n    prompt: Union[str, List[str]],\n    max_sequence_length: int = 128,\n    device: Optional[torch.device] = None,\n):\n    device = device or text_encoder.device\n\n    if isinstance(prompt, list):\n        assert len(prompt)==1\n        prompt=prompt[0]\n\n    assert type(prompt)==str\n\n    captions_list = get_text(prompt)\n    embeddings_list=[]\n    for inner_prompt in captions_list:\n        text_inputs = tokenizer(\n            [inner_prompt],\n            max_length=max_sequence_length,\n            truncation=True,\n            add_special_tokens=True,\n            return_tensors=\"pt\",\n        )\n        text_input_ids = text_inputs.input_ids\n        prompt_embeds = text_encoder(text_input_ids.to(device))[0]\n        embeddings_list+=[prompt_embeds[0]]\n\n    # No Text Found\n    if len(embeddings_list)==0:\n        return None\n\n    prompt_embeds = torch.concatenate(embeddings_list,axis=0)\n\n    # Concat zeros to max_sequence\n    seq_len, dim = prompt_embeds.shape\n    if seq_len<max_sequence_length:\n        padding = torch.zeros((max_sequence_length-seq_len,dim),dtype=prompt_embeds.dtype,device=prompt_embeds.device)\n        prompt_embeds = torch.concat([prompt_embeds,padding],dim=0)\n\n    prompt_embeds = prompt_embeds.to(device=device)\n    return prompt_embeds\n\ndef get_t5_prompt_embeds(\n    tokenizer: T5TokenizerFast ,\n    text_encoder: T5EncoderModel,\n    prompt: Union[str, List[str]] = None,\n    num_images_per_prompt: int = 1,\n    max_sequence_length: int = 128,\n    device: Optional[torch.device] = None,\n):\n    device = device or text_encoder.device\n\n    prompt = [prompt] if isinstance(prompt, str) else prompt\n    batch_size = len(prompt)\n\n    text_inputs = tokenizer(\n        prompt,\n        # padding=\"max_length\",\n        max_length=max_sequence_length,\n        truncation=True,\n        add_special_tokens=True,\n        return_tensors=\"pt\",\n    )\n    text_input_ids = text_inputs.input_ids\n    untruncated_ids = tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n    if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(text_input_ids, untruncated_ids):\n        removed_text = tokenizer.batch_decode(untruncated_ids[:, max_sequence_length - 1 : -1])\n        logger.warning(\n            \"The following part of your input was truncated because `max_sequence_length` is set to \"\n            f\" {max_sequence_length} tokens: {removed_text}\"\n        )\n\n    prompt_embeds = text_encoder(text_input_ids.to(device))[0]\n\n    # Concat zeros to max_sequence\n    b, seq_len, dim = prompt_embeds.shape\n    if seq_len<max_sequence_length:\n        padding = torch.zeros((b,max_sequence_length-seq_len,dim),dtype=prompt_embeds.dtype,device=prompt_embeds.device)\n        prompt_embeds = torch.concat([prompt_embeds,padding],dim=1)\n\n    prompt_embeds = prompt_embeds.to(device=device)\n\n    _, seq_len, _ = prompt_embeds.shape\n\n    # duplicate text embeddings and attention mask for each generation per prompt, using mps friendly method\n    prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n    prompt_embeds = prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n    return prompt_embeds\n\n# in order the get the same sigmas as in training and sample from them\ndef get_original_sigmas(num_train_timesteps=1000,num_inference_steps=1000):\n    timesteps = np.linspace(1, num_train_timesteps, num_train_timesteps, dtype=np.float32)[::-1].copy()\n    sigmas = timesteps / num_train_timesteps\n\n    inds = [int(ind) for ind in  np.linspace(0, num_train_timesteps-1, num_inference_steps)]\n    new_sigmas = sigmas[inds]\n    return new_sigmas\n\ndef is_ng_none(negative_prompt):\n    return negative_prompt is None  or negative_prompt=='' or (isinstance(negative_prompt,list) and negative_prompt[0] is None) or (type(negative_prompt)==list and negative_prompt[0]=='')\n\nclass CudaTimerContext:\n    def __init__(self, times_arr):\n        self.times_arr = times_arr\n\n    def __enter__(self):\n        self.before_event = torch.cuda.Event(enable_timing=True)\n        self.after_event = torch.cuda.Event(enable_timing=True)\n        self.before_event.record()\n\n    def __exit__(self, type, value, traceback):\n        self.after_event.record()\n        torch.cuda.synchronize()\n        elapsed_time = self.before_event.elapsed_time(self.after_event)/1000\n        self.times_arr.append(elapsed_time)\n\n\ndef get_env_prefix():\n    env = os.environ.get(\"CLOUD_PROVIDER\",'AWS').upper()\n    if env=='AWS':\n        return 'SM_CHANNEL'\n    elif env=='AZURE':\n        return 'AZUREML_DATAREFERENCE'\n\n    raise Exception(f'Env {env} not supported')\n\n\ndef compute_density_for_timestep_sampling(\n    weighting_scheme: str, batch_size: int, logit_mean: float = None, logit_std: float = None, mode_scale: float = None\n):\n    \"\"\"Compute the density for sampling the timesteps when doing SD3 training.\n\n    Courtesy: This was contributed by Rafie Walker in https://github.com/huggingface/diffusers/pull/8528.\n\n    SD3 paper reference: https://arxiv.org/abs/2403.03206v1.\n    \"\"\"\n    if weighting_scheme == \"logit_normal\":\n        # See 3.1 in the SD3 paper ($rf/lognorm(0.00,1.00)$).\n        u = torch.normal(mean=logit_mean, std=logit_std, size=(batch_size,), device=\"cpu\")\n        u = torch.nn.functional.sigmoid(u)\n    elif weighting_scheme == \"mode\":\n        u = torch.rand(size=(batch_size,), device=\"cpu\")\n        u = 1 - u - mode_scale * (torch.cos(math.pi * u / 2) ** 2 - 1 + u)\n    else:\n        u = torch.rand(size=(batch_size,), device=\"cpu\")\n    return u\n\ndef compute_loss_weighting_for_sd3(weighting_scheme: str, sigmas=None):\n    \"\"\"Computes loss weighting scheme for SD3 training.\n\n    Courtesy: This was contributed by Rafie Walker in https://github.com/huggingface/diffusers/pull/8528.\n\n    SD3 paper reference: https://arxiv.org/abs/2403.03206v1.\n    \"\"\"\n    if weighting_scheme == \"sigma_sqrt\":\n        weighting = (sigmas**-2.0).float()\n    elif weighting_scheme == \"cosmap\":\n        bot = 1 - 2 * sigmas + 2 * sigmas**2\n        weighting = 2 / (math.pi * bot)\n    else:\n        weighting = torch.ones_like(sigmas)\n    return weighting\n\n\ndef initialize_distributed():\n    # Initialize the process group for distributed training\n    dist.init_process_group('nccl')\n\n    # Get the current process's rank (ID) and the total number of processes (world size)\n    rank = dist.get_rank()\n    world_size = dist.get_world_size()\n\n    print(f\"Initialized distributed training: Rank {rank}/{world_size}\")\n\n\ndef get_clip_prompt_embeds(\n    text_encoder: CLIPTextModel,\n    text_encoder_2: CLIPTextModelWithProjection,\n    tokenizer: CLIPTokenizer,\n    tokenizer_2: CLIPTokenizer,\n    prompt: Union[str, List[str]] = None,\n    num_images_per_prompt: int = 1,\n    max_sequence_length: int = 77,\n    device: Optional[torch.device] = None,\n    ):\n\n    device = device or text_encoder.device\n    assert max_sequence_length == tokenizer.model_max_length\n    prompt = [prompt] if isinstance(prompt, str) else prompt\n\n    # Define tokenizers and text encoders\n    tokenizers = [tokenizer, tokenizer_2]\n    text_encoders = [text_encoder, text_encoder_2]\n\n    # textual inversion: process multi-vector tokens if necessary\n    prompt_embeds_list = []\n    prompts = [prompt, prompt]\n    for prompt, tokenizer, text_encoder in zip(prompts, tokenizers, text_encoders):\n        text_inputs = tokenizer(\n            prompt,\n            padding=\"max_length\",\n            max_length=tokenizer.model_max_length,\n            truncation=True,\n            return_tensors=\"pt\",\n        )\n\n        text_input_ids = text_inputs.input_ids\n        prompt_embeds = text_encoder(text_input_ids.to(text_encoder.device), output_hidden_states=True)\n\n        # We are only ALWAYS interested in the pooled output of the final text encoder\n        pooled_prompt_embeds = prompt_embeds[0]\n        prompt_embeds = prompt_embeds.hidden_states[-2]\n\n        prompt_embeds_list.append(prompt_embeds)\n\n    prompt_embeds = torch.concat(prompt_embeds_list, dim=-1)\n\n\n    bs_embed, seq_len, _ = prompt_embeds.shape\n    # duplicate text embeddings for each generation per prompt, using mps friendly method\n    prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n    prompt_embeds = prompt_embeds.view(bs_embed * num_images_per_prompt, seq_len, -1)\n    pooled_prompt_embeds = pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n        bs_embed * num_images_per_prompt, -1\n    )\n\n    return prompt_embeds, pooled_prompt_embeds\n\ndef get_1d_rotary_pos_embed(\n    dim: int,\n    pos: Union[np.ndarray, int],\n    theta: float = 10000.0,\n    use_real=False,\n    linear_factor=1.0,\n    ntk_factor=1.0,\n    repeat_interleave_real=True,\n    freqs_dtype=torch.float32,  #  torch.float32, torch.float64 (flux)\n):\n    \"\"\"\n    Precompute the frequency tensor for complex exponentials (cis) with given dimensions.\n\n    This function calculates a frequency tensor with complex exponentials using the given dimension 'dim' and the end\n    index 'end'. The 'theta' parameter scales the frequencies. The returned tensor contains complex values in complex64\n    data type.\n\n    Args:\n        dim (`int`): Dimension of the frequency tensor.\n        pos (`np.ndarray` or `int`): Position indices for the frequency tensor. [S] or scalar\n        theta (`float`, *optional*, defaults to 10000.0):\n            Scaling factor for frequency computation. Defaults to 10000.0.\n        use_real (`bool`, *optional*):\n            If True, return real part and imaginary part separately. Otherwise, return complex numbers.\n        linear_factor (`float`, *optional*, defaults to 1.0):\n            Scaling factor for the context extrapolation. Defaults to 1.0.\n        ntk_factor (`float`, *optional*, defaults to 1.0):\n            Scaling factor for the NTK-Aware RoPE. Defaults to 1.0.\n        repeat_interleave_real (`bool`, *optional*, defaults to `True`):\n            If `True` and `use_real`, real part and imaginary part are each interleaved with themselves to reach `dim`.\n            Otherwise, they are concateanted with themselves.\n        freqs_dtype (`torch.float32` or `torch.float64`, *optional*, defaults to `torch.float32`):\n            the dtype of the frequency tensor.\n    Returns:\n        `torch.Tensor`: Precomputed frequency tensor with complex exponentials. [S, D/2]\n    \"\"\"\n    assert dim % 2 == 0\n\n    if isinstance(pos, int):\n        pos = torch.arange(pos)\n    if isinstance(pos, np.ndarray):\n        pos = torch.from_numpy(pos)  # type: ignore  # [S]\n\n    theta = theta * ntk_factor\n    freqs = (\n        1.0\n        / (theta ** (torch.arange(0, dim, 2, dtype=freqs_dtype, device=pos.device)[: (dim // 2)] / dim))\n        / linear_factor\n    )  # [D/2]\n    freqs = torch.outer(pos, freqs)  # type: ignore   # [S, D/2]\n    if use_real and repeat_interleave_real:\n        # flux, hunyuan-dit, cogvideox\n        freqs_cos = freqs.cos().repeat_interleave(2, dim=1).float()  # [S, D]\n        freqs_sin = freqs.sin().repeat_interleave(2, dim=1).float()  # [S, D]\n        return freqs_cos, freqs_sin\n    elif use_real:\n        # stable audio, allegro\n        freqs_cos = torch.cat([freqs.cos(), freqs.cos()], dim=-1).float()  # [S, D]\n        freqs_sin = torch.cat([freqs.sin(), freqs.sin()], dim=-1).float()  # [S, D]\n        return freqs_cos, freqs_sin\n    else:\n        # lumina\n        freqs_cis = torch.polar(torch.ones_like(freqs), freqs)  # complex64     # [S, D/2]\n        return freqs_cis\n\n\nclass FluxPosEmbed(torch.nn.Module):\n    # modified from https://github.com/black-forest-labs/flux/blob/c00d7c60b085fce8058b9df845e036090873f2ce/src/flux/modules/layers.py#L11\n    def __init__(self, theta: int, axes_dim: List[int]):\n        super().__init__()\n        self.theta = theta\n        self.axes_dim = axes_dim\n\n    def forward(self, ids: torch.Tensor) -> torch.Tensor:\n        n_axes = ids.shape[-1]\n        cos_out = []\n        sin_out = []\n        pos = ids.float()\n        is_mps = ids.device.type == \"mps\"\n        freqs_dtype = torch.float32 if is_mps else torch.float64\n        for i in range(n_axes):\n            cos, sin = get_1d_rotary_pos_embed(\n                self.axes_dim[i],\n                pos[:, i],\n                theta=self.theta,\n                repeat_interleave_real=True,\n                use_real=True,\n                freqs_dtype=freqs_dtype,\n            )\n            cos_out.append(cos)\n            sin_out.append(sin)\n        freqs_cos = torch.cat(cos_out, dim=-1).to(ids.device)\n        freqs_sin = torch.cat(sin_out, dim=-1).to(ids.device)\n        return freqs_cos, freqs_sin\n\nfrom diffusers.optimization import get_scheduler\nfrom torch.optim import Optimizer\nfrom torch.optim.lr_scheduler import LambdaLR\n\n# Not really cosine but with decay\ndef get_cosine_schedule_with_warmup_and_decay(\n    optimizer: Optimizer, num_warmup_steps: int, num_training_steps: int, num_cycles: float = 0.5, last_epoch: int = -1, constant_steps=-1,eps=1e-5\n) -> LambdaLR:\n\n    \"\"\"\n    Create a schedule with a learning rate that decreases following the values of the cosine function between the\n    initial lr set in the optimizer to 0, after a warmup period during which it increases linearly between 0 and the\n    initial lr set in the optimizer.\n\n    Args:\n        optimizer ([`~torch.optim.Optimizer`]):\n            The optimizer for which to schedule the learning rate.\n        num_warmup_steps (`int`):\n            The number of steps for the warmup phase.\n        num_training_steps (`int`):\n            The total number of training steps.\n        num_periods (`float`, *optional*, defaults to 0.5):\n            The number of periods of the cosine function in a schedule (the default is to just decrease from the max\n            value to 0 following a half-cosine).\n        last_epoch (`int`, *optional*, defaults to -1):\n            The index of the last epoch when resuming training.\n        constant_steps (`int`):\n            The total number of constant lr steps following a warmup\n\n    Return:\n        `torch.optim.lr_scheduler.LambdaLR` with the appropriate schedule.\n    \"\"\"\n    if constant_steps <=0:\n        constant_steps = num_training_steps-num_warmup_steps\n\n    def lr_lambda(current_step):\n        # Accelerate sends current_step*num_processes\n        if current_step < num_warmup_steps:\n            return float(current_step) / float(max(1, num_warmup_steps))\n        elif current_step<num_warmup_steps+constant_steps:\n            return 1\n\n        # print(f'Inside LR: num_training_steps:{num_training_steps}, current_step:{current_step}, num_warmup_steps: {num_warmup_steps}, constant_steps: {constant_steps}')\n        return max(eps, float(num_training_steps - current_step) / float(max(1, num_training_steps - num_warmup_steps - constant_steps)))\n\n    return LambdaLR(optimizer, lr_lambda, last_epoch)\n\ndef get_lr_scheduler(\n        name,\n        optimizer,\n        num_warmup_steps,\n        num_training_steps,\n        constant_steps):\n    if name!='constant_with_warmup_cosine_decay':\n        return get_scheduler(\n            name=name,\n            optimizer=optimizer,\n            num_warmup_steps=num_warmup_steps,\n            num_training_steps=num_training_steps)\n\n    # Usign custom warmup+cnstant+decay scheduler\n    return get_cosine_schedule_with_warmup_and_decay(optimizer=optimizer, num_warmup_steps=num_warmup_steps, num_training_steps=num_training_steps, constant_steps=constant_steps)\n"
  },
  {
    "path": "pipelines/bria/transformer_block.py",
    "content": "# Copyright 2025 Black Forest Labs, The HuggingFace Team and The InstantX Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\n\nfrom typing import Any, Dict, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nimport torch.nn as nn\n\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.loaders import FluxTransformer2DLoadersMixin, FromOriginalModelMixin, PeftAdapterMixin\nfrom diffusers.utils import USE_PEFT_BACKEND, deprecate, logging, scale_lora_layers, unscale_lora_layers\nfrom diffusers.utils.import_utils import is_torch_npu_available\nfrom diffusers.utils.torch_utils import maybe_allow_in_graph\nfrom diffusers.models.attention import FeedForward\nfrom diffusers.models.attention_processor import (\n    Attention,\n    AttentionProcessor,\n    FluxAttnProcessor2_0,\n    FluxAttnProcessor2_0_NPU,\n    FusedFluxAttnProcessor2_0,\n)\nfrom diffusers.models.cache_utils import CacheMixin\nfrom diffusers.models.embeddings import CombinedTimestepGuidanceTextProjEmbeddings, CombinedTimestepTextProjEmbeddings, FluxPosEmbed\nfrom diffusers.models.modeling_outputs import Transformer2DModelOutput\nfrom diffusers.models.modeling_utils import ModelMixin\nfrom diffusers.models.normalization import AdaLayerNormContinuous, AdaLayerNormZero, AdaLayerNormZeroSingle\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\n@maybe_allow_in_graph\nclass FluxSingleTransformerBlock(nn.Module):\n    def __init__(self, dim: int, num_attention_heads: int, attention_head_dim: int, mlp_ratio: float = 4.0):\n        super().__init__()\n        self.mlp_hidden_dim = int(dim * mlp_ratio)\n\n        self.norm = AdaLayerNormZeroSingle(dim)\n        self.proj_mlp = nn.Linear(dim, self.mlp_hidden_dim)\n        self.act_mlp = nn.GELU(approximate=\"tanh\")\n        self.proj_out = nn.Linear(dim + self.mlp_hidden_dim, dim)\n\n        if is_torch_npu_available():\n            deprecation_message = (\n                \"Defaulting to FluxAttnProcessor2_0_NPU for NPU devices will be removed. Attention processors \"\n                \"should be set explicitly using the `set_attn_processor` method.\"\n            )\n            deprecate(\"npu_processor\", \"0.34.0\", deprecation_message)\n            processor = FluxAttnProcessor2_0_NPU()\n        else:\n            processor = FluxAttnProcessor2_0()\n\n        self.attn = Attention(\n            query_dim=dim,\n            cross_attention_dim=None,\n            dim_head=attention_head_dim,\n            heads=num_attention_heads,\n            out_dim=dim,\n            bias=True,\n            processor=processor,\n            qk_norm=\"rms_norm\",\n            eps=1e-6,\n            pre_only=True,\n        )\n\n    def forward(\n        self,\n        hidden_states: torch.Tensor,\n        temb: torch.Tensor,\n        image_rotary_emb: Optional[Tuple[torch.Tensor, torch.Tensor]] = None,\n        joint_attention_kwargs: Optional[Dict[str, Any]] = None,\n    ) -> torch.Tensor:\n        residual = hidden_states\n        norm_hidden_states, gate = self.norm(hidden_states, emb=temb)\n        mlp_hidden_states = self.act_mlp(self.proj_mlp(norm_hidden_states))\n        joint_attention_kwargs = joint_attention_kwargs or {}\n        attn_output = self.attn(\n            hidden_states=norm_hidden_states,\n            image_rotary_emb=image_rotary_emb,\n            **joint_attention_kwargs,\n        )\n\n        hidden_states = torch.cat([attn_output, mlp_hidden_states], dim=2)\n        gate = gate.unsqueeze(1)\n        hidden_states = gate * self.proj_out(hidden_states)\n        hidden_states = residual + hidden_states\n        if hidden_states.dtype == torch.float16:\n            hidden_states = hidden_states.clip(-65504, 65504)\n\n        return hidden_states\n\n\n@maybe_allow_in_graph\nclass FluxTransformerBlock(nn.Module):\n    def __init__(\n        self, dim: int, num_attention_heads: int, attention_head_dim: int, qk_norm: str = \"rms_norm\", eps: float = 1e-6\n    ):\n        super().__init__()\n\n        self.norm1 = AdaLayerNormZero(dim)\n        self.norm1_context = AdaLayerNormZero(dim)\n\n        self.attn = Attention(\n            query_dim=dim,\n            cross_attention_dim=None,\n            added_kv_proj_dim=dim,\n            dim_head=attention_head_dim,\n            heads=num_attention_heads,\n            out_dim=dim,\n            context_pre_only=False,\n            bias=True,\n            processor=FluxAttnProcessor2_0(),\n            qk_norm=qk_norm,\n            eps=eps,\n        )\n\n        self.norm2 = nn.LayerNorm(dim, elementwise_affine=False, eps=1e-6)\n        self.ff = FeedForward(dim=dim, dim_out=dim, activation_fn=\"gelu-approximate\")\n\n        self.norm2_context = nn.LayerNorm(dim, elementwise_affine=False, eps=1e-6)\n        self.ff_context = FeedForward(dim=dim, dim_out=dim, activation_fn=\"gelu-approximate\")\n\n    def forward(\n        self,\n        hidden_states: torch.Tensor,\n        encoder_hidden_states: torch.Tensor,\n        temb: torch.Tensor,\n        image_rotary_emb: Optional[Tuple[torch.Tensor, torch.Tensor]] = None,\n        joint_attention_kwargs: Optional[Dict[str, Any]] = None,\n    ) -> Tuple[torch.Tensor, torch.Tensor]:\n        norm_hidden_states, gate_msa, shift_mlp, scale_mlp, gate_mlp = self.norm1(hidden_states, emb=temb)\n\n        norm_encoder_hidden_states, c_gate_msa, c_shift_mlp, c_scale_mlp, c_gate_mlp = self.norm1_context(\n            encoder_hidden_states, emb=temb\n        )\n        joint_attention_kwargs = joint_attention_kwargs or {}\n        # Attention.\n        attention_outputs = self.attn(\n            hidden_states=norm_hidden_states,\n            encoder_hidden_states=norm_encoder_hidden_states,\n            image_rotary_emb=image_rotary_emb,\n            **joint_attention_kwargs,\n        )\n\n        if len(attention_outputs) == 2:\n            attn_output, context_attn_output = attention_outputs\n        elif len(attention_outputs) == 3:\n            attn_output, context_attn_output, ip_attn_output = attention_outputs\n\n        # Process attention outputs for the `hidden_states`.\n        attn_output = gate_msa.unsqueeze(1) * attn_output\n        hidden_states = hidden_states + attn_output\n\n        norm_hidden_states = self.norm2(hidden_states)\n        norm_hidden_states = norm_hidden_states * (1 + scale_mlp[:, None]) + shift_mlp[:, None]\n\n        ff_output = self.ff(norm_hidden_states)\n        ff_output = gate_mlp.unsqueeze(1) * ff_output\n\n        hidden_states = hidden_states + ff_output\n        if len(attention_outputs) == 3:\n            hidden_states = hidden_states + ip_attn_output\n\n        # Process attention outputs for the `encoder_hidden_states`.\n\n        context_attn_output = c_gate_msa.unsqueeze(1) * context_attn_output\n        encoder_hidden_states = encoder_hidden_states + context_attn_output\n\n        norm_encoder_hidden_states = self.norm2_context(encoder_hidden_states)\n        norm_encoder_hidden_states = norm_encoder_hidden_states * (1 + c_scale_mlp[:, None]) + c_shift_mlp[:, None]\n\n        context_ff_output = self.ff_context(norm_encoder_hidden_states)\n        encoder_hidden_states = encoder_hidden_states + c_gate_mlp.unsqueeze(1) * context_ff_output\n        if encoder_hidden_states.dtype == torch.float16:\n            encoder_hidden_states = encoder_hidden_states.clip(-65504, 65504)\n\n        return encoder_hidden_states, hidden_states\n\n\nclass FluxTransformer2DModel(\n    ModelMixin, ConfigMixin, PeftAdapterMixin, FromOriginalModelMixin, FluxTransformer2DLoadersMixin, CacheMixin\n):\n    \"\"\"\n    The Transformer model introduced in Flux.\n\n    Reference: https://blackforestlabs.ai/announcing-black-forest-labs/\n\n    Args:\n        patch_size (`int`, defaults to `1`):\n            Patch size to turn the input data into small patches.\n        in_channels (`int`, defaults to `64`):\n            The number of channels in the input.\n        out_channels (`int`, *optional*, defaults to `None`):\n            The number of channels in the output. If not specified, it defaults to `in_channels`.\n        num_layers (`int`, defaults to `19`):\n            The number of layers of dual stream DiT blocks to use.\n        num_single_layers (`int`, defaults to `38`):\n            The number of layers of single stream DiT blocks to use.\n        attention_head_dim (`int`, defaults to `128`):\n            The number of dimensions to use for each attention head.\n        num_attention_heads (`int`, defaults to `24`):\n            The number of attention heads to use.\n        joint_attention_dim (`int`, defaults to `4096`):\n            The number of dimensions to use for the joint attention (embedding/channel dimension of\n            `encoder_hidden_states`).\n        pooled_projection_dim (`int`, defaults to `768`):\n            The number of dimensions to use for the pooled projection.\n        guidance_embeds (`bool`, defaults to `False`):\n            Whether to use guidance embeddings for guidance-distilled variant of the model.\n        axes_dims_rope (`Tuple[int]`, defaults to `(16, 56, 56)`):\n            The dimensions to use for the rotary positional embeddings.\n    \"\"\"\n\n    _supports_gradient_checkpointing = True\n    _no_split_modules = [\"FluxTransformerBlock\", \"FluxSingleTransformerBlock\"]\n    _skip_layerwise_casting_patterns = [\"pos_embed\", \"norm\"]\n\n    @register_to_config\n    def __init__(\n        self,\n        patch_size: int = 1,\n        in_channels: int = 64,\n        out_channels: Optional[int] = None,\n        num_layers: int = 19,\n        num_single_layers: int = 38,\n        attention_head_dim: int = 128,\n        num_attention_heads: int = 24,\n        joint_attention_dim: int = 4096,\n        pooled_projection_dim: int = 768,\n        guidance_embeds: bool = False,\n        axes_dims_rope: Tuple[int, int, int] = (16, 56, 56),\n    ):\n        super().__init__()\n        self.out_channels = out_channels or in_channels\n        self.inner_dim = num_attention_heads * attention_head_dim\n\n        self.pos_embed = FluxPosEmbed(theta=10000, axes_dim=axes_dims_rope)\n\n        text_time_guidance_cls = (\n            CombinedTimestepGuidanceTextProjEmbeddings if guidance_embeds else CombinedTimestepTextProjEmbeddings\n        )\n        self.time_text_embed = text_time_guidance_cls(\n            embedding_dim=self.inner_dim, pooled_projection_dim=pooled_projection_dim\n        )\n\n        self.context_embedder = nn.Linear(joint_attention_dim, self.inner_dim)\n        self.x_embedder = nn.Linear(in_channels, self.inner_dim)\n\n        self.transformer_blocks = nn.ModuleList(\n            [\n                FluxTransformerBlock(\n                    dim=self.inner_dim,\n                    num_attention_heads=num_attention_heads,\n                    attention_head_dim=attention_head_dim,\n                )\n                for _ in range(num_layers)\n            ]\n        )\n\n        self.single_transformer_blocks = nn.ModuleList(\n            [\n                FluxSingleTransformerBlock(\n                    dim=self.inner_dim,\n                    num_attention_heads=num_attention_heads,\n                    attention_head_dim=attention_head_dim,\n                )\n                for _ in range(num_single_layers)\n            ]\n        )\n\n        self.norm_out = AdaLayerNormContinuous(self.inner_dim, self.inner_dim, elementwise_affine=False, eps=1e-6)\n        self.proj_out = nn.Linear(self.inner_dim, patch_size * patch_size * self.out_channels, bias=True)\n\n        self.gradient_checkpointing = False\n\n    @property\n    # Copied from diffusers.models.unets.unet_2d_condition.UNet2DConditionModel.attn_processors\n    def attn_processors(self) -> Dict[str, AttentionProcessor]:\n        r\"\"\"\n        Returns:\n            `dict` of attention processors: A dictionary containing all attention processors used in the model with\n            indexed by its weight name.\n        \"\"\"\n        # set recursively\n        processors = {}\n\n        def fn_recursive_add_processors(name: str, module: torch.nn.Module, processors: Dict[str, AttentionProcessor]):\n            if hasattr(module, \"get_processor\"):\n                processors[f\"{name}.processor\"] = module.get_processor()\n\n            for sub_name, child in module.named_children():\n                fn_recursive_add_processors(f\"{name}.{sub_name}\", child, processors)\n\n            return processors\n\n        for name, module in self.named_children():\n            fn_recursive_add_processors(name, module, processors)\n\n        return processors\n\n    # Copied from diffusers.models.unets.unet_2d_condition.UNet2DConditionModel.set_attn_processor\n    def set_attn_processor(self, processor: Union[AttentionProcessor, Dict[str, AttentionProcessor]]):\n        r\"\"\"\n        Sets the attention processor to use to compute attention.\n\n        Parameters:\n            processor (`dict` of `AttentionProcessor` or only `AttentionProcessor`):\n                The instantiated processor class or a dictionary of processor classes that will be set as the processor\n                for **all** `Attention` layers.\n\n                If `processor` is a dict, the key needs to define the path to the corresponding cross attention\n                processor. This is strongly recommended when setting trainable attention processors.\n\n        \"\"\"\n        count = len(self.attn_processors.keys())\n\n        if isinstance(processor, dict) and len(processor) != count:\n            raise ValueError(\n                f\"A dict of processors was passed, but the number of processors {len(processor)} does not match the\"\n                f\" number of attention layers: {count}. Please make sure to pass {count} processor classes.\"\n            )\n\n        def fn_recursive_attn_processor(name: str, module: torch.nn.Module, processor):\n            if hasattr(module, \"set_processor\"):\n                if not isinstance(processor, dict):\n                    module.set_processor(processor)\n                else:\n                    module.set_processor(processor.pop(f\"{name}.processor\"))\n\n            for sub_name, child in module.named_children():\n                fn_recursive_attn_processor(f\"{name}.{sub_name}\", child, processor)\n\n        for name, module in self.named_children():\n            fn_recursive_attn_processor(name, module, processor)\n\n    # Copied from diffusers.models.unets.unet_2d_condition.UNet2DConditionModel.fuse_qkv_projections with FusedAttnProcessor2_0->FusedFluxAttnProcessor2_0\n    def fuse_qkv_projections(self):\n        \"\"\"\n        Enables fused QKV projections. For self-attention modules, all projection matrices (i.e., query, key, value)\n        are fused. For cross-attention modules, key and value projection matrices are fused.\n\n        <Tip warning={true}>\n\n        This API is 🧪 experimental.\n\n        </Tip>\n        \"\"\"\n        self.original_attn_processors = None\n\n        for _, attn_processor in self.attn_processors.items():\n            if \"Added\" in str(attn_processor.__class__.__name__):\n                raise ValueError(\"`fuse_qkv_projections()` is not supported for models having added KV projections.\")\n\n        self.original_attn_processors = self.attn_processors\n\n        for module in self.modules():\n            if isinstance(module, Attention):\n                module.fuse_projections(fuse=True)\n\n        self.set_attn_processor(FusedFluxAttnProcessor2_0())\n\n    # Copied from diffusers.models.unets.unet_2d_condition.UNet2DConditionModel.unfuse_qkv_projections\n    def unfuse_qkv_projections(self):\n        \"\"\"Disables the fused QKV projection if enabled.\n\n        <Tip warning={true}>\n\n        This API is 🧪 experimental.\n\n        </Tip>\n\n        \"\"\"\n        if self.original_attn_processors is not None:\n            self.set_attn_processor(self.original_attn_processors)\n\n    def forward(\n        self,\n        hidden_states: torch.Tensor,\n        encoder_hidden_states: torch.Tensor = None,\n        pooled_projections: torch.Tensor = None,\n        timestep: torch.LongTensor = None,\n        img_ids: torch.Tensor = None,\n        txt_ids: torch.Tensor = None,\n        guidance: torch.Tensor = None,\n        joint_attention_kwargs: Optional[Dict[str, Any]] = None,\n        controlnet_block_samples=None,\n        controlnet_single_block_samples=None,\n        return_dict: bool = True,\n        controlnet_blocks_repeat: bool = False,\n    ) -> Union[torch.Tensor, Transformer2DModelOutput]:\n        \"\"\"\n        The [`FluxTransformer2DModel`] forward method.\n\n        Args:\n            hidden_states (`torch.Tensor` of shape `(batch_size, image_sequence_length, in_channels)`):\n                Input `hidden_states`.\n            encoder_hidden_states (`torch.Tensor` of shape `(batch_size, text_sequence_length, joint_attention_dim)`):\n                Conditional embeddings (embeddings computed from the input conditions such as prompts) to use.\n            pooled_projections (`torch.Tensor` of shape `(batch_size, projection_dim)`): Embeddings projected\n                from the embeddings of input conditions.\n            timestep ( `torch.LongTensor`):\n                Used to indicate denoising step.\n            block_controlnet_hidden_states: (`list` of `torch.Tensor`):\n                A list of tensors that if specified are added to the residuals of transformer blocks.\n            joint_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~models.transformer_2d.Transformer2DModelOutput`] instead of a plain\n                tuple.\n\n        Returns:\n            If `return_dict` is True, an [`~models.transformer_2d.Transformer2DModelOutput`] is returned, otherwise a\n            `tuple` where the first element is the sample tensor.\n        \"\"\"\n        if joint_attention_kwargs is not None:\n            joint_attention_kwargs = joint_attention_kwargs.copy()\n            lora_scale = joint_attention_kwargs.pop(\"scale\", 1.0)\n        else:\n            lora_scale = 1.0\n\n        if USE_PEFT_BACKEND:\n            # weight the lora layers by setting `lora_scale` for each PEFT layer\n            scale_lora_layers(self, lora_scale)\n        else:\n            if joint_attention_kwargs is not None and joint_attention_kwargs.get(\"scale\", None) is not None:\n                logger.warning(\n                    \"Passing `scale` via `joint_attention_kwargs` when not using the PEFT backend is ineffective.\"\n                )\n\n        hidden_states = self.x_embedder(hidden_states)\n\n        timestep = timestep.to(hidden_states.dtype) * 1000\n        if guidance is not None:\n            guidance = guidance.to(hidden_states.dtype) * 1000\n\n        temb = (\n            self.time_text_embed(timestep, pooled_projections)\n            if guidance is None\n            else self.time_text_embed(timestep, guidance, pooled_projections)\n        )\n        encoder_hidden_states = self.context_embedder(encoder_hidden_states)\n\n        if txt_ids.ndim == 3:\n            logger.warning(\n                \"Passing `txt_ids` 3d torch.Tensor is deprecated.\"\n                \"Please remove the batch dimension and pass it as a 2d torch Tensor\"\n            )\n            txt_ids = txt_ids[0]\n        if img_ids.ndim == 3:\n            logger.warning(\n                \"Passing `img_ids` 3d torch.Tensor is deprecated.\"\n                \"Please remove the batch dimension and pass it as a 2d torch Tensor\"\n            )\n            img_ids = img_ids[0]\n\n        ids = torch.cat((txt_ids, img_ids), dim=0)\n        image_rotary_emb = self.pos_embed(ids)\n\n        if joint_attention_kwargs is not None and \"ip_adapter_image_embeds\" in joint_attention_kwargs:\n            ip_adapter_image_embeds = joint_attention_kwargs.pop(\"ip_adapter_image_embeds\")\n            ip_hidden_states = self.encoder_hid_proj(ip_adapter_image_embeds)\n            joint_attention_kwargs.update({\"ip_hidden_states\": ip_hidden_states})\n\n        for index_block, block in enumerate(self.transformer_blocks):\n            if torch.is_grad_enabled() and self.gradient_checkpointing:\n                encoder_hidden_states, hidden_states = self._gradient_checkpointing_func(\n                    block,\n                    hidden_states,\n                    encoder_hidden_states,\n                    temb,\n                    image_rotary_emb,\n                )\n\n            else:\n                encoder_hidden_states, hidden_states = block(\n                    hidden_states=hidden_states,\n                    encoder_hidden_states=encoder_hidden_states,\n                    temb=temb,\n                    image_rotary_emb=image_rotary_emb,\n                    joint_attention_kwargs=joint_attention_kwargs,\n                )\n\n            # controlnet residual\n            if controlnet_block_samples is not None:\n                interval_control = len(self.transformer_blocks) / len(controlnet_block_samples)\n                interval_control = int(np.ceil(interval_control))\n                # For Xlabs ControlNet.\n                if controlnet_blocks_repeat:\n                    hidden_states = (\n                        hidden_states + controlnet_block_samples[index_block % len(controlnet_block_samples)]\n                    )\n                else:\n                    hidden_states = hidden_states + controlnet_block_samples[index_block // interval_control]\n        hidden_states = torch.cat([encoder_hidden_states, hidden_states], dim=1)\n\n        for index_block, block in enumerate(self.single_transformer_blocks):\n            if torch.is_grad_enabled() and self.gradient_checkpointing:\n                hidden_states = self._gradient_checkpointing_func(\n                    block,\n                    hidden_states,\n                    temb,\n                    image_rotary_emb,\n                )\n\n            else:\n                hidden_states = block(\n                    hidden_states=hidden_states,\n                    temb=temb,\n                    image_rotary_emb=image_rotary_emb,\n                    joint_attention_kwargs=joint_attention_kwargs,\n                )\n\n            # controlnet residual\n            if controlnet_single_block_samples is not None:\n                interval_control = len(self.single_transformer_blocks) / len(controlnet_single_block_samples)\n                interval_control = int(np.ceil(interval_control))\n                hidden_states[:, encoder_hidden_states.shape[1] :, ...] = (\n                    hidden_states[:, encoder_hidden_states.shape[1] :, ...]\n                    + controlnet_single_block_samples[index_block // interval_control]\n                )\n\n        hidden_states = hidden_states[:, encoder_hidden_states.shape[1] :, ...]\n\n        hidden_states = self.norm_out(hidden_states, temb)\n        output = self.proj_out(hidden_states)\n\n        if USE_PEFT_BACKEND:\n            # remove `lora_scale` from each PEFT layer\n            unscale_lora_layers(self, lora_scale)\n\n        if not return_dict:\n            return (output,)\n\n        return Transformer2DModelOutput(sample=output)\n"
  },
  {
    "path": "pipelines/bria/transformer_bria.py",
    "content": "from typing import Any, Dict, List, Optional, Union\nimport numpy as np\nimport torch\nimport torch.nn as nn\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.loaders import PeftAdapterMixin, FromOriginalModelMixin\nfrom diffusers.models.modeling_utils import ModelMixin\nfrom diffusers.models.normalization import AdaLayerNormContinuous\nfrom diffusers.utils import USE_PEFT_BACKEND, is_torch_version, logging, scale_lora_layers, unscale_lora_layers\nfrom diffusers.models.modeling_outputs import Transformer2DModelOutput\nfrom diffusers.models.embeddings import TimestepEmbedding, get_timestep_embedding\nfrom pipelines.bria.transformer_block import FluxSingleTransformerBlock, FluxTransformerBlock\nfrom pipelines.bria.bria_utils import FluxPosEmbed as EmbedND\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\nclass Timesteps(nn.Module):\n    def __init__(self, num_channels: int, flip_sin_to_cos: bool, downscale_freq_shift: float, scale: int = 1,time_theta=10000):\n        super().__init__()\n        self.num_channels = num_channels\n        self.flip_sin_to_cos = flip_sin_to_cos\n        self.downscale_freq_shift = downscale_freq_shift\n        self.scale = scale\n        self.time_theta=time_theta\n\n    def forward(self, timesteps):\n        t_emb = get_timestep_embedding(\n            timesteps,\n            self.num_channels,\n            flip_sin_to_cos=self.flip_sin_to_cos,\n            downscale_freq_shift=self.downscale_freq_shift,\n            scale=self.scale,\n            max_period=self.time_theta\n        )\n        return t_emb\n\nclass TimestepProjEmbeddings(nn.Module):\n    def __init__(self, embedding_dim, time_theta):\n        super().__init__()\n\n        self.time_proj = Timesteps(num_channels=256, flip_sin_to_cos=True, downscale_freq_shift=0,time_theta=time_theta)\n        self.timestep_embedder = TimestepEmbedding(in_channels=256, time_embed_dim=embedding_dim)\n\n    def forward(self, timestep, dtype):\n        timesteps_proj = self.time_proj(timestep)\n        timesteps_emb = self.timestep_embedder(timesteps_proj.to(dtype=dtype))  # (N, D)\n        return timesteps_emb\n\n\"\"\"\nBased on FluxPipeline with several changes:\n- no pooled embeddings\n- We use zero padding for prompts\n- No guidance embedding since this is not a distilled version\n\"\"\"\nclass BriaTransformer2DModel(ModelMixin, ConfigMixin, PeftAdapterMixin, FromOriginalModelMixin):\n    \"\"\"\n    The Transformer model introduced in Flux.\n\n    Reference: https://blackforestlabs.ai/announcing-black-forest-labs/\n\n    Parameters:\n        patch_size (`int`): Patch size to turn the input data into small patches.\n        in_channels (`int`, *optional*, defaults to 16): The number of channels in the input.\n        num_layers (`int`, *optional*, defaults to 18): The number of layers of MMDiT blocks to use.\n        num_single_layers (`int`, *optional*, defaults to 18): The number of layers of single DiT blocks to use.\n        attention_head_dim (`int`, *optional*, defaults to 64): The number of channels in each head.\n        num_attention_heads (`int`, *optional*, defaults to 18): The number of heads to use for multi-head attention.\n        joint_attention_dim (`int`, *optional*): The number of `encoder_hidden_states` dimensions to use.\n        pooled_projection_dim (`int`): Number of dimensions to use when projecting the `pooled_projections`.\n        guidance_embeds (`bool`, defaults to False): Whether to use guidance embeddings.\n    \"\"\"\n\n    _supports_gradient_checkpointing = True\n\n    @register_to_config\n    def __init__(\n        self,\n        patch_size: int = 1,\n        in_channels: int = 64,\n        num_layers: int = 19,\n        num_single_layers: int = 38,\n        attention_head_dim: int = 128,\n        num_attention_heads: int = 24,\n        joint_attention_dim: int = 4096,\n        pooled_projection_dim: int = None,\n        guidance_embeds: bool = False,\n        axes_dims_rope: List[int] = [16, 56, 56],\n        rope_theta = 10000,\n        time_theta = 10000\n    ):\n        super().__init__()\n        self.out_channels = in_channels\n        self.inner_dim = self.config.num_attention_heads * self.config.attention_head_dim\n\n        self.pos_embed = EmbedND(theta=rope_theta, axes_dim=axes_dims_rope)\n\n\n        self.time_embed = TimestepProjEmbeddings(\n            embedding_dim=self.inner_dim,time_theta=time_theta\n        )\n\n        # if pooled_projection_dim:\n        #     self.pooled_text_embed = PixArtAlphaTextProjection(pooled_projection_dim, embedding_dim=self.inner_dim, act_fn=\"silu\")\n\n        if guidance_embeds:\n            self.guidance_embed = TimestepProjEmbeddings(embedding_dim=self.inner_dim)\n\n        self.context_embedder = nn.Linear(self.config.joint_attention_dim, self.inner_dim)\n        self.x_embedder = torch.nn.Linear(self.config.in_channels, self.inner_dim)\n\n        self.transformer_blocks = nn.ModuleList(\n            [\n                FluxTransformerBlock(\n                    dim=self.inner_dim,\n                    num_attention_heads=self.config.num_attention_heads,\n                    attention_head_dim=self.config.attention_head_dim,\n                )\n                for i in range(self.config.num_layers)\n            ]\n        )\n\n        self.single_transformer_blocks = nn.ModuleList(\n            [\n                FluxSingleTransformerBlock(\n                    dim=self.inner_dim,\n                    num_attention_heads=self.config.num_attention_heads,\n                    attention_head_dim=self.config.attention_head_dim,\n                )\n                for i in range(self.config.num_single_layers)\n            ]\n        )\n\n        self.norm_out = AdaLayerNormContinuous(self.inner_dim, self.inner_dim, elementwise_affine=False, eps=1e-6)\n        self.proj_out = nn.Linear(self.inner_dim, patch_size * patch_size * self.out_channels, bias=True)\n\n        self.gradient_checkpointing = False\n\n    def _set_gradient_checkpointing(self, module, value=False):\n        if hasattr(module, \"gradient_checkpointing\"):\n            module.gradient_checkpointing = value\n\n    def forward(\n        self,\n        hidden_states: torch.Tensor,\n        encoder_hidden_states: torch.Tensor = None,\n        pooled_projections: torch.Tensor = None,\n        timestep: torch.LongTensor = None,\n        img_ids: torch.Tensor = None,\n        txt_ids: torch.Tensor = None,\n        guidance: torch.Tensor = None,\n        joint_attention_kwargs: Optional[Dict[str, Any]] = None,\n        return_dict: bool = True,\n        controlnet_block_samples = None,\n        controlnet_single_block_samples=None,\n\n    ) -> Union[torch.FloatTensor, Transformer2DModelOutput]:\n        \"\"\"\n        The [`FluxTransformer2DModel`] forward method.\n\n        Args:\n            hidden_states (`torch.FloatTensor` of shape `(batch size, channel, height, width)`):\n                Input `hidden_states`.\n            encoder_hidden_states (`torch.FloatTensor` of shape `(batch size, sequence_len, embed_dims)`):\n                Conditional embeddings (embeddings computed from the input conditions such as prompts) to use.\n            pooled_projections (`torch.FloatTensor` of shape `(batch_size, projection_dim)`): Embeddings projected\n                from the embeddings of input conditions.\n            timestep ( `torch.LongTensor`):\n                Used to indicate denoising step.\n            block_controlnet_hidden_states: (`list` of `torch.Tensor`):\n                A list of tensors that if specified are added to the residuals of transformer blocks.\n            joint_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~models.transformer_2d.Transformer2DModelOutput`] instead of a plain\n                tuple.\n\n        Returns:\n            If `return_dict` is True, an [`~models.transformer_2d.Transformer2DModelOutput`] is returned, otherwise a\n            `tuple` where the first element is the sample tensor.\n        \"\"\"\n        if joint_attention_kwargs is not None:\n            joint_attention_kwargs = joint_attention_kwargs.copy()\n            lora_scale = joint_attention_kwargs.pop(\"scale\", 1.0)\n        else:\n            lora_scale = 1.0\n\n        if USE_PEFT_BACKEND:\n            # weight the lora layers by setting `lora_scale` for each PEFT layer\n            scale_lora_layers(self, lora_scale)\n        else:\n            if joint_attention_kwargs is not None and joint_attention_kwargs.get(\"scale\", None) is not None:\n                logger.warning(\n                    \"Passing `scale` via `joint_attention_kwargs` when not using the PEFT backend is ineffective.\"\n                )\n        hidden_states = self.x_embedder(hidden_states)\n\n        timestep = timestep.to(hidden_states.dtype)\n        if guidance is not None:\n            guidance = guidance.to(hidden_states.dtype)\n        else:\n            guidance = None\n\n        # temb = (\n        #     self.time_text_embed(timestep, pooled_projections)\n        #     if guidance is None\n        #     else self.time_text_embed(timestep, guidance, pooled_projections)\n        # )\n\n        temb = self.time_embed(timestep,dtype=hidden_states.dtype)\n\n        # if pooled_projections:\n        #     temb+=self.pooled_text_embed(pooled_projections)\n\n        if guidance:\n            temb+=self.guidance_embed(guidance,dtype=hidden_states.dtype)\n\n        encoder_hidden_states = self.context_embedder(encoder_hidden_states)\n\n        if len(txt_ids.shape)==2:\n            ids = torch.cat((txt_ids, img_ids), dim=0)\n        else:\n            ids = torch.cat((txt_ids, img_ids), dim=1)\n        image_rotary_emb = self.pos_embed(ids)\n\n        for index_block, block in enumerate(self.transformer_blocks):\n            if self.training and self.gradient_checkpointing:\n\n                def create_custom_forward(module, return_dict=None):\n                    def custom_forward(*inputs):\n                        if return_dict is not None:\n                            return module(*inputs, return_dict=return_dict)\n                        else:\n                            return module(*inputs)\n\n                    return custom_forward\n\n                ckpt_kwargs: Dict[str, Any] = {\"use_reentrant\": False} if is_torch_version(\">=\", \"1.11.0\") else {}\n                encoder_hidden_states, hidden_states = torch.utils.checkpoint.checkpoint(\n                    create_custom_forward(block),\n                    hidden_states,\n                    encoder_hidden_states,\n                    temb,\n                    image_rotary_emb,\n                    **ckpt_kwargs,\n                )\n\n            else:\n                encoder_hidden_states, hidden_states = block(\n                    hidden_states=hidden_states,\n                    encoder_hidden_states=encoder_hidden_states,\n                    temb=temb,\n                    image_rotary_emb=image_rotary_emb,\n                )\n\n            # controlnet residual\n            if controlnet_block_samples is not None:\n                interval_control = len(self.transformer_blocks) / len(controlnet_block_samples)\n                interval_control = int(np.ceil(interval_control))\n                hidden_states = hidden_states + controlnet_block_samples[index_block // interval_control]\n\n\n        hidden_states = torch.cat([encoder_hidden_states, hidden_states], dim=1)\n\n        for index_block, block in enumerate(self.single_transformer_blocks):\n            if self.training and self.gradient_checkpointing:\n\n                def create_custom_forward(module, return_dict=None):\n                    def custom_forward(*inputs):\n                        if return_dict is not None:\n                            return module(*inputs, return_dict=return_dict)\n                        else:\n                            return module(*inputs)\n\n                    return custom_forward\n\n                ckpt_kwargs: Dict[str, Any] = {\"use_reentrant\": False} if is_torch_version(\">=\", \"1.11.0\") else {}\n                hidden_states = torch.utils.checkpoint.checkpoint(\n                    create_custom_forward(block),\n                    hidden_states,\n                    temb,\n                    image_rotary_emb,\n                    **ckpt_kwargs,\n                )\n\n            else:\n                hidden_states = block(\n                    hidden_states=hidden_states,\n                    temb=temb,\n                    image_rotary_emb=image_rotary_emb,\n                )\n\n            # controlnet residual\n            if controlnet_single_block_samples is not None:\n                interval_control = len(self.single_transformer_blocks) / len(controlnet_single_block_samples)\n                interval_control = int(np.ceil(interval_control))\n                hidden_states[:, encoder_hidden_states.shape[1] :, ...] = (\n                    hidden_states[:, encoder_hidden_states.shape[1] :, ...]\n                    + controlnet_single_block_samples[index_block // interval_control]\n                )\n\n        hidden_states = hidden_states[:, encoder_hidden_states.shape[1] :, ...]\n\n        hidden_states = self.norm_out(hidden_states, temb)\n        output = self.proj_out(hidden_states)\n\n        if USE_PEFT_BACKEND:\n            # remove `lora_scale` from each PEFT layer\n            unscale_lora_layers(self, lora_scale)\n\n        if not return_dict:\n            return (output,)\n\n        return Transformer2DModelOutput(sample=output)\n"
  },
  {
    "path": "pipelines/f_lite/__init__.py",
    "content": "from .pipeline import FLitePipeline, FLitePipelineOutput, APGConfig\nfrom .model import DiT\n\n\n__all__ = [\"APGConfig\", \"DiT\", \"FLitePipeline\", \"FLitePipelineOutput\"]\n"
  },
  {
    "path": "pipelines/f_lite/f_lite.model.py",
    "content": "# DiT with cross attention\n\nimport math\n\nimport torch\nimport torch.nn.functional as F\nimport torch.utils.checkpoint\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.loaders import FromOriginalModelMixin, PeftAdapterMixin\nfrom diffusers.models.modeling_utils import ModelMixin\nfrom diffusers.utils.accelerate_utils import apply_forward_hook\nfrom einops import rearrange\nfrom peft import get_peft_model_state_dict, set_peft_model_state_dict\nfrom torch import nn\n\n\ndef timestep_embedding(t, dim, max_period=10000):\n    half = dim // 2\n    freqs = torch.exp(-math.log(max_period) * torch.arange(start=0, end=half, dtype=torch.float32) / half).to(\n        device=t.device\n    )\n    args = t[:, None].float() * freqs[None]\n    embedding = torch.cat([torch.cos(args), torch.sin(args)], dim=-1)\n\n    return embedding\n\n\nclass RMSNorm(nn.Module):\n    def __init__(self, dim, eps=1e-6, trainable=False):\n        super().__init__()\n        self.eps = eps\n        if trainable:\n            self.weight = nn.Parameter(torch.ones(dim))\n        else:\n            self.weight = None\n\n    def forward(self, x):\n        x_dtype = x.dtype\n        x = x.float()\n        norm = torch.rsqrt(x.pow(2).mean(-1, keepdim=True) + self.eps)\n        if self.weight is not None:\n            return (x * norm * self.weight).to(dtype=x_dtype)\n        else:\n            return (x * norm).to(dtype=x_dtype)\n\n\nclass QKNorm(nn.Module):\n    \"\"\"Normalizing the query and the key independently, as Flux proposes\"\"\"\n\n    def __init__(self, dim, trainable=False):\n        super().__init__()\n        self.query_norm = RMSNorm(dim, trainable=trainable)\n        self.key_norm = RMSNorm(dim, trainable=trainable)\n\n    def forward(self, q, k):\n        q = self.query_norm(q)\n        k = self.key_norm(k)\n        return q, k\n\n\nclass Attention(nn.Module):\n    def __init__(\n        self,\n        dim,\n        num_heads=8,\n        qkv_bias=False,\n        is_self_attn=True,\n        cross_attn_input_size=None,\n        residual_v=False,\n        dynamic_softmax_temperature=False,\n    ):\n        super().__init__()\n        assert dim % num_heads == 0\n        self.num_heads = num_heads\n        self.head_dim = dim // num_heads\n        self.scale = self.head_dim**-0.5\n        self.is_self_attn = is_self_attn\n        self.residual_v = residual_v\n        self.dynamic_softmax_temperature = dynamic_softmax_temperature\n\n        if is_self_attn:\n            self.qkv = nn.Linear(dim, dim * 3, bias=qkv_bias)\n        else:\n            self.q = nn.Linear(dim, dim, bias=qkv_bias)\n            self.context_kv = nn.Linear(cross_attn_input_size, dim * 2, bias=qkv_bias)\n\n        self.proj = nn.Linear(dim, dim, bias=False)\n\n        if residual_v:\n            self.lambda_param = nn.Parameter(torch.tensor(0.5).reshape(1))\n\n        self.qk_norm = QKNorm(self.head_dim)\n\n    def forward(self, x, context=None, v_0=None, rope=None):\n        if self.is_self_attn:\n            qkv = self.qkv(x)\n            qkv = rearrange(qkv, \"b l (k h d) -> k b h l d\", k=3, h=self.num_heads)\n            q, k, v = qkv.unbind(0)\n\n            if self.residual_v and v_0 is not None:\n                v = self.lambda_param * v + (1 - self.lambda_param) * v_0\n\n            if rope is not None:\n                # print(q.shape, rope[0].shape, rope[1].shape)\n                q = apply_rotary_emb(q, rope[0], rope[1])\n                k = apply_rotary_emb(k, rope[0], rope[1])\n\n                # https://arxiv.org/abs/2306.08645\n                # https://arxiv.org/abs/2410.01104\n                # ratioonale is that if tokens get larger, categorical distribution get more uniform\n                # so you want to enlargen entropy.\n\n                token_length = q.shape[2]\n                if self.dynamic_softmax_temperature:\n                    ratio = math.sqrt(math.log(token_length) / math.log(1040.0))  # 1024 + 16\n                    k = k * ratio\n            q, k = self.qk_norm(q, k)\n\n        else:\n            q = rearrange(self.q(x), \"b l (h d) -> b h l d\", h=self.num_heads)\n            kv = rearrange(\n                self.context_kv(context),\n                \"b l (k h d) -> k b h l d\",\n                k=2,\n                h=self.num_heads,\n            )\n            k, v = kv.unbind(0)\n            q, k = self.qk_norm(q, k)\n\n        x = F.scaled_dot_product_attention(q, k, v)\n        x = rearrange(x, \"b h l d -> b l (h d)\")\n        x = self.proj(x)\n        return x, v if self.is_self_attn else None\n\n\nclass DiTBlock(nn.Module):\n    def __init__(\n        self,\n        hidden_size,\n        cross_attn_input_size,\n        num_heads,\n        mlp_ratio=4.0,\n        qkv_bias=True,\n        residual_v=False,\n        dynamic_softmax_temperature=False,\n    ):\n        super().__init__()\n        self.hidden_size = hidden_size\n        self.norm1 = RMSNorm(hidden_size, trainable=qkv_bias)\n        self.self_attn = Attention(\n            hidden_size,\n            num_heads=num_heads,\n            qkv_bias=qkv_bias,\n            is_self_attn=True,\n            residual_v=residual_v,\n            dynamic_softmax_temperature=dynamic_softmax_temperature,\n        )\n\n        if cross_attn_input_size is not None:\n            self.norm2 = RMSNorm(hidden_size, trainable=qkv_bias)\n            self.cross_attn = Attention(\n                hidden_size,\n                num_heads=num_heads,\n                qkv_bias=qkv_bias,\n                is_self_attn=False,\n                cross_attn_input_size=cross_attn_input_size,\n                dynamic_softmax_temperature=dynamic_softmax_temperature,\n            )\n        else:\n            self.norm2 = None\n            self.cross_attn = None\n\n        self.norm3 = RMSNorm(hidden_size, trainable=qkv_bias)\n        mlp_hidden = int(hidden_size * mlp_ratio)\n        self.mlp = nn.Sequential(\n            nn.Linear(hidden_size, mlp_hidden),\n            nn.GELU(),\n            nn.Linear(mlp_hidden, hidden_size),\n        )\n\n        self.adaLN_modulation = nn.Sequential(nn.SiLU(), nn.Linear(hidden_size, 9 * hidden_size, bias=True))\n\n        self.adaLN_modulation[-1].weight.data.zero_()\n        self.adaLN_modulation[-1].bias.data.zero_()\n\n    # @torch.compile(mode='reduce-overhead')\n    def forward(self, x, context, c, v_0=None, rope=None):\n        (\n            shift_sa,\n            scale_sa,\n            gate_sa,\n            shift_ca,\n            scale_ca,\n            gate_ca,\n            shift_mlp,\n            scale_mlp,\n            gate_mlp,\n        ) = self.adaLN_modulation(c).chunk(9, dim=1)\n\n        scale_sa = scale_sa[:, None, :]\n        scale_ca = scale_ca[:, None, :]\n        scale_mlp = scale_mlp[:, None, :]\n\n        shift_sa = shift_sa[:, None, :]\n        shift_ca = shift_ca[:, None, :]\n        shift_mlp = shift_mlp[:, None, :]\n\n        gate_sa = gate_sa[:, None, :]\n        gate_ca = gate_ca[:, None, :]\n        gate_mlp = gate_mlp[:, None, :]\n\n        norm_x = self.norm1(x.clone())\n        norm_x = norm_x * (1 + scale_sa) + shift_sa\n        attn_out, v = self.self_attn(norm_x, v_0=v_0, rope=rope)\n        x = x + attn_out * gate_sa\n\n        if self.norm2 is not None:\n            norm_x = self.norm2(x)\n            norm_x = norm_x * (1 + scale_ca) + shift_ca\n            x = x + self.cross_attn(norm_x, context)[0] * gate_ca\n\n        norm_x = self.norm3(x)\n        norm_x = norm_x * (1 + scale_mlp) + shift_mlp\n        x = x + self.mlp(norm_x) * gate_mlp\n\n        return x, v\n\n\nclass PatchEmbed(nn.Module):\n    def __init__(self, patch_size=16, in_channels=3, embed_dim=768):\n        super().__init__()\n        self.patch_proj = nn.Conv2d(in_channels, embed_dim, kernel_size=patch_size, stride=patch_size)\n        self.patch_size = patch_size\n\n    def forward(self, x):\n        B, C, H, W = x.shape\n        x = self.patch_proj(x)\n        x = rearrange(x, \"b c h w -> b (h w) c\")\n        return x\n\n\nclass TwoDimRotary(torch.nn.Module):\n    def __init__(self, dim, base=10000, h=256, w=256):\n        super().__init__()\n        self.inv_freq = torch.FloatTensor([1.0 / (base ** (i / dim)) for i in range(0, dim, 2)])\n        self.h = h\n        self.w = w\n\n        t_h = torch.arange(h, dtype=torch.float32)\n        t_w = torch.arange(w, dtype=torch.float32)\n\n        freqs_h = torch.outer(t_h, self.inv_freq).unsqueeze(1)  # h, 1, d / 2\n        freqs_w = torch.outer(t_w, self.inv_freq).unsqueeze(0)  # 1, w, d / 2\n        freqs_h = freqs_h.repeat(1, w, 1)  # h, w, d / 2\n        freqs_w = freqs_w.repeat(h, 1, 1)  # h, w, d / 2\n        freqs_hw = torch.cat([freqs_h, freqs_w], 2)  # h, w, d\n\n        self.register_buffer(\"freqs_hw_cos\", freqs_hw.cos())\n        self.register_buffer(\"freqs_hw_sin\", freqs_hw.sin())\n\n    def forward(self, x, height_width=None, extend_with_register_tokens=0):\n        if height_width is not None:\n            this_h, this_w = height_width\n        else:\n            this_hw = x.shape[1]\n            this_h, this_w = int(this_hw**0.5), int(this_hw**0.5)\n\n        cos = self.freqs_hw_cos[0 : this_h, 0 : this_w]\n        sin = self.freqs_hw_sin[0 : this_h, 0 : this_w]\n\n        cos = cos.clone().reshape(this_h * this_w, -1)\n        sin = sin.clone().reshape(this_h * this_w, -1)\n\n        # append N of zero-attn tokens\n        if extend_with_register_tokens > 0:\n            cos = torch.cat(\n                [\n                    torch.ones(extend_with_register_tokens, cos.shape[1]).to(cos.device),\n                    cos,\n                ],\n                0,\n            )\n            sin = torch.cat(\n                [\n                    torch.zeros(extend_with_register_tokens, sin.shape[1]).to(sin.device),\n                    sin,\n                ],\n                0,\n            )\n\n        return cos[None, None, :, :], sin[None, None, :, :]  # [1, 1, T + N, Attn-dim]\n\n\ndef apply_rotary_emb(x, cos, sin):\n    orig_dtype = x.dtype\n    x = x.to(dtype=torch.float32)\n    assert x.ndim == 4  # multihead attention\n    d = x.shape[3] // 2\n    x1 = x[..., :d]\n    x2 = x[..., d:]\n    y1 = x1 * cos + x2 * sin\n    y2 = x1 * (-sin) + x2 * cos\n    return torch.cat([y1, y2], 3).to(dtype=orig_dtype)\n\n\nclass DiT(ModelMixin, ConfigMixin, FromOriginalModelMixin, PeftAdapterMixin):  # type: ignore[misc]\n    @register_to_config\n    def __init__(\n        self,\n        in_channels=4,\n        patch_size=2,\n        hidden_size=1152,\n        depth=28,\n        num_heads=16,\n        mlp_ratio=4.0,\n        cross_attn_input_size=128,\n        residual_v=False,\n        train_bias_and_rms=True,\n        use_rope=True,\n        gradient_checkpoint=False,\n        dynamic_softmax_temperature=False,\n        rope_base=10000,\n    ):\n        super().__init__()\n\n        self.patch_embed = PatchEmbed(patch_size, in_channels, hidden_size)\n\n        if use_rope:\n            self.rope = TwoDimRotary(hidden_size // (2 * num_heads), base=rope_base, h=512, w=512)\n        else:\n            self.positional_embedding = nn.Parameter(torch.zeros(1, 2048, hidden_size))\n\n        self.register_tokens = nn.Parameter(torch.randn(1, 16, hidden_size))\n\n        self.time_embed = nn.Sequential(\n            nn.Linear(hidden_size, 4 * hidden_size),\n            nn.SiLU(),\n            nn.Linear(4 * hidden_size, hidden_size),\n        )\n\n        self.blocks = nn.ModuleList(\n            [\n                DiTBlock(\n                    hidden_size=hidden_size,\n                    num_heads=num_heads,\n                    mlp_ratio=mlp_ratio,\n                    cross_attn_input_size=cross_attn_input_size,\n                    residual_v=residual_v,\n                    qkv_bias=train_bias_and_rms,\n                    dynamic_softmax_temperature=dynamic_softmax_temperature,\n                )\n                for _ in range(depth)\n            ]\n        )\n\n        self.final_modulation = nn.Sequential(nn.SiLU(), nn.Linear(hidden_size, 2 * hidden_size, bias=True))\n\n        self.final_norm = RMSNorm(hidden_size, trainable=train_bias_and_rms)\n        self.final_proj = nn.Linear(hidden_size, patch_size * patch_size * in_channels)\n        nn.init.zeros_(self.final_modulation[-1].weight)\n        nn.init.zeros_(self.final_modulation[-1].bias)\n        nn.init.zeros_(self.final_proj.weight)\n        nn.init.zeros_(self.final_proj.bias)\n        self.paramstatus = {}\n        for n, p in self.named_parameters():\n            self.paramstatus[n] = {\n                \"shape\": p.shape,\n                \"requires_grad\": p.requires_grad,\n            }\n\n    def save_lora_weights(self, save_directory):\n        \"\"\"Save LoRA weights to a file\"\"\"\n        lora_state_dict = get_peft_model_state_dict(self)\n        torch.save(lora_state_dict, f\"{save_directory}/lora_weights.pt\")\n\n    def load_lora_weights(self, load_directory):\n        \"\"\"Load LoRA weights from a file\"\"\"\n        lora_state_dict = torch.load(f\"{load_directory}/lora_weights.pt\")\n        set_peft_model_state_dict(self, lora_state_dict)\n\n    @apply_forward_hook\n    def forward(self, x, context, timesteps):\n        b, c, h, w = x.shape\n        x = self.patch_embed(x)  # b, T, d\n\n        x = torch.cat([self.register_tokens.repeat(b, 1, 1), x], 1)  # b, T + N, d\n\n        if self.config.use_rope:\n            cos, sin = self.rope(\n                x,\n                extend_with_register_tokens=16,\n                height_width=(h // self.config.patch_size, w // self.config.patch_size),\n            )\n        else:\n            x = x + self.positional_embedding.repeat(b, 1, 1)[:, : x.shape[1], :]\n            cos, sin = None, None\n\n        t_emb = timestep_embedding(timesteps * 1000, self.config.hidden_size).to(x.device, dtype=x.dtype)\n        t_emb = self.time_embed(t_emb)\n\n        v_0 = None\n\n        for _idx, block in enumerate(self.blocks):\n            if self.config.gradient_checkpoint:\n                x, v = torch.utils.checkpoint.checkpoint(\n                    block,\n                    x,\n                    context,\n                    t_emb,\n                    v_0,\n                    (cos, sin),\n                    use_reentrant=False,\n                )\n            else:\n                x, v = block(x, context, t_emb, v_0, (cos, sin))\n            if v_0 is None:\n                v_0 = v\n\n        x = x[:, 16:, :]\n        final_shift, final_scale = self.final_modulation(t_emb).chunk(2, dim=1)\n        x = self.final_norm(x)\n        x = x * (1 + final_scale[:, None, :]) + final_shift[:, None, :]\n        x = self.final_proj(x)\n\n        x = rearrange(\n            x,\n            \"b (h w) (p1 p2 c) -> b c (h p1) (w p2)\",\n            h=h // self.config.patch_size,\n            w=w // self.config.patch_size,\n            p1=self.config.patch_size,\n            p2=self.config.patch_size,\n        )\n        return x\n\n\nif __name__ == \"__main__\":\n    model = DiT(\n        in_channels=4,\n        patch_size=2,\n        hidden_size=1152,\n        depth=28,\n        num_heads=16,\n        mlp_ratio=4.0,\n        cross_attn_input_size=128,\n        residual_v=False,\n        train_bias_and_rms=True,\n        use_rope=True,\n    ).cuda()\n    print(\n        model(\n            torch.randn(1, 4, 64, 64).cuda(),\n            torch.randn(1, 37, 128).cuda(),\n            torch.tensor([1.0]).cuda(),\n        )\n    )\n"
  },
  {
    "path": "pipelines/f_lite/model.py",
    "content": "# DiT with cross attention\n\nimport math\n\nimport torch\nimport torch.nn.functional as F\nimport torch.utils.checkpoint\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.loaders import FromOriginalModelMixin, PeftAdapterMixin\nfrom diffusers.models.modeling_utils import ModelMixin\nfrom diffusers.utils.accelerate_utils import apply_forward_hook\nfrom einops import rearrange\nfrom peft import get_peft_model_state_dict, set_peft_model_state_dict\nfrom torch import nn\n\n\ndef timestep_embedding(t, dim, max_period=10000):\n    half = dim // 2\n    freqs = torch.exp(-math.log(max_period) * torch.arange(start=0, end=half, dtype=torch.float32) / half).to(\n        device=t.device\n    )\n    args = t[:, None].float() * freqs[None]\n    embedding = torch.cat([torch.cos(args), torch.sin(args)], dim=-1)\n\n    return embedding\n\n\nclass RMSNorm(nn.Module):\n    def __init__(self, dim, eps=1e-6, trainable=False):\n        super().__init__()\n        self.eps = eps\n        if trainable:\n            self.weight = nn.Parameter(torch.ones(dim))\n        else:\n            self.weight = None\n\n    def forward(self, x):\n        x_dtype = x.dtype\n        x = x.float()\n        norm = torch.rsqrt(x.pow(2).mean(-1, keepdim=True) + self.eps)\n        if self.weight is not None:\n            return (x * norm * self.weight).to(dtype=x_dtype)\n        else:\n            return (x * norm).to(dtype=x_dtype)\n\n\nclass QKNorm(nn.Module):\n    \"\"\"Normalizing the query and the key independently, as Flux proposes\"\"\"\n\n    def __init__(self, dim, trainable=False):\n        super().__init__()\n        self.query_norm = RMSNorm(dim, trainable=trainable)\n        self.key_norm = RMSNorm(dim, trainable=trainable)\n\n    def forward(self, q, k):\n        q = self.query_norm(q)\n        k = self.key_norm(k)\n        return q, k\n\n\nclass Attention(nn.Module):\n    def __init__(\n        self,\n        dim,\n        num_heads=8,\n        qkv_bias=False,\n        is_self_attn=True,\n        cross_attn_input_size=None,\n        residual_v=False,\n        dynamic_softmax_temperature=False,\n    ):\n        super().__init__()\n        assert dim % num_heads == 0\n        self.num_heads = num_heads\n        self.head_dim = dim // num_heads\n        self.scale = self.head_dim**-0.5\n        self.is_self_attn = is_self_attn\n        self.residual_v = residual_v\n        self.dynamic_softmax_temperature = dynamic_softmax_temperature\n\n        if is_self_attn:\n            self.qkv = nn.Linear(dim, dim * 3, bias=qkv_bias)\n        else:\n            self.q = nn.Linear(dim, dim, bias=qkv_bias)\n            self.context_kv = nn.Linear(cross_attn_input_size, dim * 2, bias=qkv_bias)\n\n        self.proj = nn.Linear(dim, dim, bias=False)\n\n        if residual_v:\n            self.lambda_param = nn.Parameter(torch.tensor(0.5).reshape(1))\n\n        self.qk_norm = QKNorm(self.head_dim)\n\n    def forward(self, x, context=None, v_0=None, rope=None):\n        if self.is_self_attn:\n            qkv = self.qkv(x)\n            qkv = rearrange(qkv, \"b l (k h d) -> k b h l d\", k=3, h=self.num_heads)\n            q, k, v = qkv.unbind(0)\n\n            if self.residual_v and v_0 is not None:\n                v = self.lambda_param * v + (1 - self.lambda_param) * v_0\n\n            if rope is not None:\n                # print(q.shape, rope[0].shape, rope[1].shape)\n                q = apply_rotary_emb(q, rope[0], rope[1])\n                k = apply_rotary_emb(k, rope[0], rope[1])\n\n                # https://arxiv.org/abs/2306.08645\n                # https://arxiv.org/abs/2410.01104\n                # ratioonale is that if tokens get larger, categorical distribution get more uniform\n                # so you want to enlargen entropy.\n\n                token_length = q.shape[2]\n                if self.dynamic_softmax_temperature:\n                    ratio = math.sqrt(math.log(token_length) / math.log(1040.0))  # 1024 + 16\n                    k = k * ratio\n            q, k = self.qk_norm(q, k)\n\n        else:\n            q = rearrange(self.q(x), \"b l (h d) -> b h l d\", h=self.num_heads)\n            kv = rearrange(\n                self.context_kv(context),\n                \"b l (k h d) -> k b h l d\",\n                k=2,\n                h=self.num_heads,\n            )\n            k, v = kv.unbind(0)\n            q, k = self.qk_norm(q, k)\n\n        x = F.scaled_dot_product_attention(q, k, v)\n        x = rearrange(x, \"b h l d -> b l (h d)\")\n        x = self.proj(x)\n        return x, v if self.is_self_attn else None\n\n\nclass DiTBlock(nn.Module):\n    def __init__(\n        self,\n        hidden_size,\n        cross_attn_input_size,\n        num_heads,\n        mlp_ratio=4.0,\n        qkv_bias=True,\n        residual_v=False,\n        dynamic_softmax_temperature=False,\n    ):\n        super().__init__()\n        self.hidden_size = hidden_size\n        self.norm1 = RMSNorm(hidden_size, trainable=qkv_bias)\n        self.self_attn = Attention(\n            hidden_size,\n            num_heads=num_heads,\n            qkv_bias=qkv_bias,\n            is_self_attn=True,\n            residual_v=residual_v,\n            dynamic_softmax_temperature=dynamic_softmax_temperature,\n        )\n\n        if cross_attn_input_size is not None:\n            self.norm2 = RMSNorm(hidden_size, trainable=qkv_bias)\n            self.cross_attn = Attention(\n                hidden_size,\n                num_heads=num_heads,\n                qkv_bias=qkv_bias,\n                is_self_attn=False,\n                cross_attn_input_size=cross_attn_input_size,\n                dynamic_softmax_temperature=dynamic_softmax_temperature,\n            )\n        else:\n            self.norm2 = None\n            self.cross_attn = None\n\n        self.norm3 = RMSNorm(hidden_size, trainable=qkv_bias)\n        mlp_hidden = int(hidden_size * mlp_ratio)\n        self.mlp = nn.Sequential(\n            nn.Linear(hidden_size, mlp_hidden),\n            nn.GELU(),\n            nn.Linear(mlp_hidden, hidden_size),\n        )\n\n        self.adaLN_modulation = nn.Sequential(nn.SiLU(), nn.Linear(hidden_size, 9 * hidden_size, bias=True))\n\n        self.adaLN_modulation[-1].weight.data.zero_()\n        self.adaLN_modulation[-1].bias.data.zero_()\n\n    # @torch.compile(mode='reduce-overhead')\n    def forward(self, x, context, c, v_0=None, rope=None):\n        (\n            shift_sa,\n            scale_sa,\n            gate_sa,\n            shift_ca,\n            scale_ca,\n            gate_ca,\n            shift_mlp,\n            scale_mlp,\n            gate_mlp,\n        ) = self.adaLN_modulation(c).chunk(9, dim=1)\n\n        scale_sa = scale_sa[:, None, :]\n        scale_ca = scale_ca[:, None, :]\n        scale_mlp = scale_mlp[:, None, :]\n\n        shift_sa = shift_sa[:, None, :]\n        shift_ca = shift_ca[:, None, :]\n        shift_mlp = shift_mlp[:, None, :]\n\n        gate_sa = gate_sa[:, None, :]\n        gate_ca = gate_ca[:, None, :]\n        gate_mlp = gate_mlp[:, None, :]\n\n        norm_x = self.norm1(x.clone())\n        norm_x = norm_x * (1 + scale_sa) + shift_sa\n        attn_out, v = self.self_attn(norm_x, v_0=v_0, rope=rope)\n        x = x + attn_out * gate_sa\n\n        if self.norm2 is not None:\n            norm_x = self.norm2(x)\n            norm_x = norm_x * (1 + scale_ca) + shift_ca\n            x = x + self.cross_attn(norm_x, context)[0] * gate_ca\n\n        norm_x = self.norm3(x)\n        norm_x = norm_x * (1 + scale_mlp) + shift_mlp\n        x = x + self.mlp(norm_x) * gate_mlp\n\n        return x, v\n\n\nclass PatchEmbed(nn.Module):\n    def __init__(self, patch_size=16, in_channels=3, embed_dim=768):\n        super().__init__()\n        self.patch_proj = nn.Conv2d(in_channels, embed_dim, kernel_size=patch_size, stride=patch_size)\n        self.patch_size = patch_size\n\n    def forward(self, x):\n        B, C, H, W = x.shape\n        x = self.patch_proj(x)\n        x = rearrange(x, \"b c h w -> b (h w) c\")\n        return x\n\n\nclass TwoDimRotary(torch.nn.Module):\n    def __init__(self, dim, base=10000, h=256, w=256):\n        super().__init__()\n        self.inv_freq = torch.FloatTensor([1.0 / (base ** (i / dim)) for i in range(0, dim, 2)])\n        self.h = h\n        self.w = w\n\n        t_h = torch.arange(h, dtype=torch.float32)\n        t_w = torch.arange(w, dtype=torch.float32)\n\n        freqs_h = torch.outer(t_h, self.inv_freq).unsqueeze(1)  # h, 1, d / 2\n        freqs_w = torch.outer(t_w, self.inv_freq).unsqueeze(0)  # 1, w, d / 2\n        freqs_h = freqs_h.repeat(1, w, 1)  # h, w, d / 2\n        freqs_w = freqs_w.repeat(h, 1, 1)  # h, w, d / 2\n        freqs_hw = torch.cat([freqs_h, freqs_w], 2)  # h, w, d\n\n        self.register_buffer(\"freqs_hw_cos\", freqs_hw.cos())\n        self.register_buffer(\"freqs_hw_sin\", freqs_hw.sin())\n\n    def forward(self, x, height_width=None, extend_with_register_tokens=0):\n        if height_width is not None:\n            this_h, this_w = height_width\n        else:\n            this_hw = x.shape[1]\n            this_h, this_w = int(this_hw**0.5), int(this_hw**0.5)\n\n        cos = self.freqs_hw_cos[0 : this_h, 0 : this_w]\n        sin = self.freqs_hw_sin[0 : this_h, 0 : this_w]\n\n        cos = cos.clone().reshape(this_h * this_w, -1)\n        sin = sin.clone().reshape(this_h * this_w, -1)\n\n        # append N of zero-attn tokens\n        if extend_with_register_tokens > 0:\n            cos = torch.cat(\n                [\n                    torch.ones(extend_with_register_tokens, cos.shape[1]).to(cos.device),\n                    cos,\n                ],\n                0,\n            )\n            sin = torch.cat(\n                [\n                    torch.zeros(extend_with_register_tokens, sin.shape[1]).to(sin.device),\n                    sin,\n                ],\n                0,\n            )\n\n        return cos[None, None, :, :], sin[None, None, :, :]  # [1, 1, T + N, Attn-dim]\n\n\ndef apply_rotary_emb(x, cos, sin):\n    orig_dtype = x.dtype\n    x = x.to(dtype=torch.float32)\n    assert x.ndim == 4  # multihead attention\n    d = x.shape[3] // 2\n    x1 = x[..., :d]\n    x2 = x[..., d:]\n    y1 = x1 * cos + x2 * sin\n    y2 = x1 * (-sin) + x2 * cos\n    return torch.cat([y1, y2], 3).to(dtype=orig_dtype)\n\n\nclass DiT(ModelMixin, ConfigMixin, FromOriginalModelMixin, PeftAdapterMixin):  # type: ignore[misc]\n    @register_to_config\n    def __init__(\n        self,\n        in_channels=4,\n        patch_size=2,\n        hidden_size=1152,\n        depth=28,\n        num_heads=16,\n        mlp_ratio=4.0,\n        cross_attn_input_size=128,\n        residual_v=False,\n        train_bias_and_rms=True,\n        use_rope=True,\n        gradient_checkpoint=False,\n        dynamic_softmax_temperature=False,\n        rope_base=10000,\n    ):\n        super().__init__()\n\n        self.patch_embed = PatchEmbed(patch_size, in_channels, hidden_size)\n\n        if use_rope:\n            self.rope = TwoDimRotary(hidden_size // (2 * num_heads), base=rope_base, h=512, w=512)\n        else:\n            self.positional_embedding = nn.Parameter(torch.zeros(1, 2048, hidden_size))\n\n        self.register_tokens = nn.Parameter(torch.randn(1, 16, hidden_size))\n\n        self.time_embed = nn.Sequential(\n            nn.Linear(hidden_size, 4 * hidden_size),\n            nn.SiLU(),\n            nn.Linear(4 * hidden_size, hidden_size),\n        )\n\n        self.blocks = nn.ModuleList(\n            [\n                DiTBlock(\n                    hidden_size=hidden_size,\n                    num_heads=num_heads,\n                    mlp_ratio=mlp_ratio,\n                    cross_attn_input_size=cross_attn_input_size,\n                    residual_v=residual_v,\n                    qkv_bias=train_bias_and_rms,\n                    dynamic_softmax_temperature=dynamic_softmax_temperature,\n                )\n                for _ in range(depth)\n            ]\n        )\n\n        self.final_modulation = nn.Sequential(nn.SiLU(), nn.Linear(hidden_size, 2 * hidden_size, bias=True))\n\n        self.final_norm = RMSNorm(hidden_size, trainable=train_bias_and_rms)\n        self.final_proj = nn.Linear(hidden_size, patch_size * patch_size * in_channels)\n        nn.init.zeros_(self.final_modulation[-1].weight)\n        nn.init.zeros_(self.final_modulation[-1].bias)\n        nn.init.zeros_(self.final_proj.weight)\n        nn.init.zeros_(self.final_proj.bias)\n        self.paramstatus = {}\n        for n, p in self.named_parameters():\n            self.paramstatus[n] = {\n                \"shape\": p.shape,\n                \"requires_grad\": p.requires_grad,\n            }\n\n    def save_lora_weights(self, save_directory):\n        \"\"\"Save LoRA weights to a file\"\"\"\n        lora_state_dict = get_peft_model_state_dict(self)\n        torch.save(lora_state_dict, f\"{save_directory}/lora_weights.pt\")\n\n    def load_lora_weights(self, load_directory):\n        \"\"\"Load LoRA weights from a file\"\"\"\n        lora_state_dict = torch.load(f\"{load_directory}/lora_weights.pt\")\n        set_peft_model_state_dict(self, lora_state_dict)\n\n    @apply_forward_hook\n    def forward(self, x, context, timesteps):\n        b, c, h, w = x.shape\n        x = self.patch_embed(x)  # b, T, d\n\n        x = torch.cat([self.register_tokens.repeat(b, 1, 1), x], 1)  # b, T + N, d\n\n        if self.config.use_rope:\n            cos, sin = self.rope(\n                x,\n                extend_with_register_tokens=16,\n                height_width=(h // self.config.patch_size, w // self.config.patch_size),\n            )\n        else:\n            x = x + self.positional_embedding.repeat(b, 1, 1)[:, : x.shape[1], :]\n            cos, sin = None, None\n\n        t_emb = timestep_embedding(timesteps * 1000, self.config.hidden_size).to(x.device, dtype=x.dtype)\n        t_emb = self.time_embed(t_emb)\n\n        v_0 = None\n\n        for _idx, block in enumerate(self.blocks):\n            if self.config.gradient_checkpoint:\n                x, v = torch.utils.checkpoint.checkpoint(\n                    block,\n                    x,\n                    context,\n                    t_emb,\n                    v_0,\n                    (cos, sin),\n                    use_reentrant=False,\n                )\n            else:\n                x, v = block(x, context, t_emb, v_0, (cos, sin))\n            if v_0 is None:\n                v_0 = v\n\n        x = x[:, 16:, :]\n        final_shift, final_scale = self.final_modulation(t_emb).chunk(2, dim=1)\n        x = self.final_norm(x)\n        x = x * (1 + final_scale[:, None, :]) + final_shift[:, None, :]\n        x = self.final_proj(x)\n\n        x = rearrange(\n            x,\n            \"b (h w) (p1 p2 c) -> b c (h p1) (w p2)\",\n            h=h // self.config.patch_size,\n            w=w // self.config.patch_size,\n            p1=self.config.patch_size,\n            p2=self.config.patch_size,\n        )\n        return x\n\n\nif __name__ == \"__main__\":\n    model = DiT(\n        in_channels=4,\n        patch_size=2,\n        hidden_size=1152,\n        depth=28,\n        num_heads=16,\n        mlp_ratio=4.0,\n        cross_attn_input_size=128,\n        residual_v=False,\n        train_bias_and_rms=True,\n        use_rope=True,\n    ).cuda()\n    print(\n        model(\n            torch.randn(1, 4, 64, 64).cuda(),\n            torch.randn(1, 37, 128).cuda(),\n            torch.tensor([1.0]).cuda(),\n        )\n    )\n"
  },
  {
    "path": "pipelines/f_lite/pipeline.py",
    "content": "import logging\nimport math\nfrom dataclasses import dataclass\nfrom typing import Any, Dict, List, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nfrom diffusers import AutoencoderKL, DiffusionPipeline\nfrom diffusers.utils import BaseOutput\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom PIL import Image\nfrom torch import FloatTensor\nfrom tqdm.auto import tqdm\nfrom transformers import T5EncoderModel, T5TokenizerFast\n\n\n\nlogger = logging.getLogger(__name__)\n\n\n@dataclass\nclass APGConfig:\n    \"\"\"APG (Augmented Parallel Guidance) configuration\"\"\"\n\n    enabled: bool = True\n    orthogonal_threshold: float = 0.03\n\n\n@dataclass\nclass FLitePipelineOutput(BaseOutput):\n    \"\"\"\n    Output class for FLitePipeline pipeline.\n    Args:\n        images (`List[PIL.Image.Image]` or `np.ndarray`)\n            List of denoised PIL images of length `batch_size` or numpy array of shape `(batch_size, height, width,\n            num_channels)`. PIL images or numpy array present the denoised images of the diffusion pipeline.\n    \"\"\"\n\n    images: Union[List[Image.Image], np.ndarray]\n\n\nclass FLitePipeline(DiffusionPipeline):\n    r\"\"\"\n    Pipeline for text-to-image generation using F-Lite model.\n    This model inherits from [`DiffusionPipeline`].\n    \"\"\"\n\n    model_cpu_offload_seq = \"text_encoder->dit_model->vae\"\n\n    dit_model: torch.nn.Module\n    vae: AutoencoderKL\n    text_encoder: T5EncoderModel\n    tokenizer: T5TokenizerFast\n    _progress_bar_config: Dict[str, Any]\n\n    def __init__(\n        self, dit_model: torch.nn.Module, vae: AutoencoderKL, text_encoder: T5EncoderModel, tokenizer: T5TokenizerFast\n    ):\n        super().__init__()\n        # Register all modules for the pipeline\n        # Access DiffusionPipeline's register_modules directly to avoid mypy error\n        DiffusionPipeline.register_modules(\n            self, dit_model=dit_model, vae=vae, text_encoder=text_encoder, tokenizer=tokenizer\n        )\n\n        # Move models to channels last for better performance\n        # AutoencoderKL inherits from torch.nn.Module which has these methods\n        if hasattr(self.vae, \"to\"):\n            self.vae.to(memory_format=torch.channels_last)\n        if hasattr(self.vae, \"requires_grad_\"):\n            self.vae.requires_grad_(False)\n        if hasattr(self.text_encoder, \"requires_grad_\"):\n            self.text_encoder.requires_grad_(False)\n\n        # Constants\n        self.vae_scale_factor = 8\n        self.return_index = -8  # T5 hidden state index to use\n\n    def enable_vae_slicing(self):\n        \"\"\"Enable VAE slicing for memory efficiency.\"\"\"\n        if hasattr(self.vae, \"enable_slicing\"):\n            self.vae.enable_slicing()\n\n    def enable_vae_tiling(self):\n        \"\"\"Enable VAE tiling for memory efficiency.\"\"\"\n        if hasattr(self.vae, \"enable_tiling\"):\n            self.vae.enable_tiling()\n\n    def set_progress_bar_config(self, **kwargs):\n        \"\"\"Set progress bar configuration.\"\"\"\n        self._progress_bar_config = kwargs\n\n    def progress_bar(self, iterable=None, **kwargs):\n        \"\"\"Create progress bar for iterations.\"\"\"\n        self._progress_bar_config = getattr(self, \"_progress_bar_config\", None) or {}\n        config = {**self._progress_bar_config, **kwargs}\n        return tqdm(iterable, **config)\n\n    def encode_prompt(\n        self,\n        prompt: Union[str, List[str]],\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        device: Optional[torch.device] = None,\n        dtype: Optional[torch.dtype] = None,\n        max_sequence_length: int = 512,\n        return_index: int = -8,\n    ) -> Tuple[FloatTensor, FloatTensor]:\n        \"\"\"Encodes the prompt and negative prompt.\"\"\"\n        if isinstance(prompt, str):\n            prompt = [prompt]\n        device = self._execution_device\n        # Text encoder forward pass\n        text_inputs = self.tokenizer(\n            prompt,\n            padding=\"max_length\",\n            max_length=max_sequence_length,\n            truncation=True,\n            return_tensors=\"pt\",\n        )\n        text_input_ids = text_inputs.input_ids.to(device)\n        prompt_embeds = self.text_encoder(text_input_ids, return_dict=True, output_hidden_states=True)\n        prompt_embeds_tensor = prompt_embeds.hidden_states[return_index]\n        if return_index != -1:\n            prompt_embeds_tensor = self.text_encoder.encoder.final_layer_norm(prompt_embeds_tensor)\n            prompt_embeds_tensor = self.text_encoder.encoder.dropout(prompt_embeds_tensor)\n\n        dtype = dtype or next(self.text_encoder.parameters()).dtype\n        prompt_embeds_tensor = prompt_embeds_tensor.to(dtype=dtype, device=device)\n\n        # Handle negative prompts\n        if negative_prompt is None:\n            negative_embeds = torch.zeros_like(prompt_embeds_tensor)\n        else:\n            if isinstance(negative_prompt, str):\n                negative_prompt = [negative_prompt]\n            negative_result = self.encode_prompt(\n                prompt=negative_prompt, device=device, dtype=dtype, return_index=return_index\n            )\n            negative_embeds = negative_result[0]\n\n        # Explicitly cast both tensors to FloatTensor for mypy\n        from typing import cast\n\n        prompt_tensor = cast(\"FloatTensor\", prompt_embeds_tensor.to(dtype=dtype))\n        negative_tensor = cast(\"FloatTensor\", negative_embeds.to(dtype=dtype))\n        return (prompt_tensor, negative_tensor)\n\n    def to(self, torch_device=None, torch_dtype=None, silence_dtype_warnings=False):\n        \"\"\"Move pipeline components to specified device and dtype.\"\"\"\n        if hasattr(self, \"vae\"):\n            self.vae.to(device=torch_device, dtype=torch_dtype)\n        if hasattr(self, \"text_encoder\"):\n            self.text_encoder.to(device=torch_device, dtype=torch_dtype)\n        if hasattr(self, \"dit_model\"):\n            self.dit_model.to(device=torch_device, dtype=torch_dtype)\n        return self\n\n    @torch.no_grad()\n    def __call__(\n        self,\n        prompt: Union[str, List[str]],\n        height: Optional[int] = 1024,\n        width: Optional[int] = 1024,\n        num_inference_steps: int = 30,\n        guidance_scale: float = 6.0,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: int = 1,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        dtype: Optional[torch.dtype] = None,\n        alpha: Optional[float] = None,\n        apg_config: Optional[APGConfig] = None,\n        **kwargs,\n    ):\n        \"\"\"Generate images from text prompt.\"\"\"\n        # Ensure height and width are not None for calculation\n        if height is None:\n            height = 1024\n        if width is None:\n            width = 1024\n\n        dtype = dtype or next(self.dit_model.parameters()).dtype\n        apg_config = apg_config or APGConfig(enabled=False)\n\n        device = self._execution_device\n\n        # 2. Encode prompts\n        prompt_batch_size = len(prompt) if isinstance(prompt, list) else 1\n        batch_size = prompt_batch_size * num_images_per_prompt\n\n        prompt_embeds, negative_embeds = self.encode_prompt(\n            prompt=prompt, negative_prompt=negative_prompt, device=device, dtype=dtype,\n            return_index=self.return_index,\n        )\n\n        # Repeat embeddings for num_images_per_prompt\n        prompt_embeds = prompt_embeds.repeat_interleave(num_images_per_prompt, dim=0)\n        negative_embeds = negative_embeds.repeat_interleave(num_images_per_prompt, dim=0)\n\n        # 3. Initialize latents\n        latent_height = height // self.vae_scale_factor\n        latent_width = width // self.vae_scale_factor\n\n        if isinstance(generator, list):\n            if len(generator) != batch_size:\n                raise ValueError(f\"Got {len(generator)} generators for {batch_size} samples\")\n\n        latents = randn_tensor((batch_size, 16, latent_height, latent_width), generator=generator, device=device, dtype=dtype)\n        acc_latents = latents.clone()\n\n        # 4. Calculate alpha if not provided\n        if alpha is None:\n            image_token_size = latent_height * latent_width\n            alpha = 2 * math.sqrt(image_token_size / (64 * 64))\n\n        # 6. Sampling loop\n        self.dit_model.eval()\n\n        # Check if guidance is needed\n        do_classifier_free_guidance = guidance_scale >= 1.0\n\n        for i in self.progress_bar(range(num_inference_steps, 0, -1)):\n            # Calculate timesteps\n            t = i / num_inference_steps\n            t_next = (i - 1) / num_inference_steps\n            # Scale timesteps according to alpha\n            t = t * alpha / (1 + (alpha - 1) * t)\n            t_next = t_next * alpha / (1 + (alpha - 1) * t_next)\n            dt = t - t_next\n\n            # Create tensor with proper device\n            t_tensor = torch.tensor([t] * batch_size, device=device, dtype=dtype)\n\n            if do_classifier_free_guidance:\n                # Duplicate latents for both conditional and unconditional inputs\n                latents_input = torch.cat([latents] * 2)\n                # Concatenate negative and positive prompt embeddings\n                context_input = torch.cat([negative_embeds, prompt_embeds])\n                # Duplicate timesteps for the batch\n                t_input = torch.cat([t_tensor] * 2)\n\n                # Get model predictions in a single pass\n                model_outputs = self.dit_model(latents_input, context_input, t_input)\n\n                # Split outputs back into unconditional and conditional predictions\n                uncond_output, cond_output = model_outputs.chunk(2)\n\n                if apg_config.enabled:\n                    # Augmented Parallel Guidance\n                    dy = cond_output\n                    dd = cond_output - uncond_output\n                    # Find parallel direction\n                    parallel_direction = (dy * dd).sum() / (dy * dy).sum() * dy\n                    orthogonal_direction = dd - parallel_direction\n                    # Scale orthogonal component\n                    orthogonal_std = orthogonal_direction.std()\n                    orthogonal_scale = min(1, apg_config.orthogonal_threshold / orthogonal_std)\n                    orthogonal_direction = orthogonal_direction * orthogonal_scale\n                    model_output = dy + (guidance_scale - 1) * orthogonal_direction\n                else:\n                    # Standard classifier-free guidance\n                    model_output = uncond_output + guidance_scale * (cond_output - uncond_output)\n            else:\n                # If no guidance needed, just run the model normally\n                model_output = self.dit_model(latents, prompt_embeds, t_tensor)\n\n            # Update latents\n            acc_latents = acc_latents + dt * model_output.to(device)\n            latents = acc_latents.clone()\n\n        # 7. Decode latents\n        # These checks handle the case where mypy doesn't recognize these attributes\n        scaling_factor = getattr(self.vae.config, \"scaling_factor\", 0.18215) if hasattr(self.vae, \"config\") else 0.18215\n        shift_factor = getattr(self.vae.config, \"shift_factor\", 0) if hasattr(self.vae, \"config\") else 0\n\n        latents = latents / scaling_factor + shift_factor\n\n        vae_dtype = self.vae.dtype if hasattr(self.vae, \"dtype\") else dtype\n        decoded_images = self.vae.decode(latents.to(vae_dtype)).sample if hasattr(self.vae, \"decode\") else latents\n\n        # Offload all models\n        try:\n            self.maybe_free_model_hooks()\n        except AttributeError as e:\n            if \"OptimizedModule\" in str(e):\n                import warnings\n                warnings.warn(\n                    \"Encountered 'OptimizedModule' error when offloading models. \"\n                    \"This issue might be fixed in the future by: \"\n                    \"https://github.com/huggingface/diffusers/pull/10730\",\n                    stacklevel=1,\n                )\n            else:\n                raise\n\n        # 8. Post-process images\n        images = (decoded_images / 2 + 0.5).clamp(0, 1)\n        # Convert to PIL Images\n        images = (images * 255).round().clamp(0, 255).to(torch.uint8).cpu()\n        pil_images = [Image.fromarray(img.permute(1, 2, 0).numpy()) for img in images]\n\n        return FLitePipelineOutput(\n            images=pil_images,\n        )\n"
  },
  {
    "path": "pipelines/flex2/__init__.py",
    "content": "from diffusers import FluxControlPipeline, FluxTransformer2DModel\nfrom typing import Any, Callable, Dict, List, Optional, Union\nimport torch\n\nfrom diffusers.image_processor import PipelineImageInput\nimport numpy as np\nimport torch.nn.functional as F\nfrom diffusers.pipelines.flux.pipeline_output import FluxPipelineOutput\nfrom diffusers.pipelines.flux.pipeline_flux import calculate_shift, retrieve_timesteps, XLA_AVAILABLE\n\n\nclass Flex2Pipeline(FluxControlPipeline):\n    def __init__(\n        self,\n        scheduler,\n        vae,\n        text_encoder,\n        tokenizer,\n        text_encoder_2,\n        tokenizer_2,\n        transformer,\n    ):\n        super().__init__(scheduler, vae, text_encoder, tokenizer, text_encoder_2, tokenizer_2, transformer)\n\n    def check_inputs(\n        self,\n        prompt,\n        prompt_2,\n        height,\n        width,\n        prompt_embeds=None,\n        pooled_prompt_embeds=None,\n        callback_on_step_end_tensor_inputs=None,\n        max_sequence_length=None,\n        inpaint_image=None,\n        inpaint_mask=None,\n        control_image=None,\n    ):\n        super().check_inputs(\n            prompt,\n            prompt_2,\n            height,\n            width,\n            prompt_embeds=prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            callback_on_step_end_tensor_inputs=callback_on_step_end_tensor_inputs,\n            max_sequence_length=max_sequence_length,\n        )\n        if inpaint_image is not None and inpaint_mask is None:\n            raise ValueError(\n                \"If `inpaint_image` is passed, `inpaint_mask` must be passed as well. \"\n                \"Please make sure to pass both `inpaint_image` and `inpaint_mask`.\"\n            )\n        if inpaint_mask is not None and inpaint_image is None:\n            raise ValueError(\n                \"If `inpaint_mask` is passed, `inpaint_image` must be passed as well. \"\n                \"Please make sure to pass both `inpaint_image` and `inpaint_mask`.\"\n            )\n\n    @torch.no_grad()\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        prompt_2: Optional[Union[str, List[str]]] = None,\n        inpaint_image: Optional[PipelineImageInput] = None,\n        inpaint_mask: Optional[PipelineImageInput] = None,\n        control_image: Optional[PipelineImageInput] = None,\n        control_strength: Optional[float] = 1.0,\n        control_stop: Optional[float] = 1.0,\n        height: Optional[int] = None,\n        width: Optional[int] = None,\n        num_inference_steps: int = 28,\n        sigmas: Optional[List[float]] = None,\n        guidance_scale: float = 3.5,\n        num_images_per_prompt: Optional[int] = 1,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.FloatTensor] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        joint_attention_kwargs: Optional[Dict[str, Any]] = None,\n        callback_on_step_end: Optional[Callable[[int, int, Dict], None]] = None,\n        callback_on_step_end_tensor_inputs: List[str] = [\"latents\"],\n        max_sequence_length: int = 512,\n        **kwargs,\n    ):\n        r\"\"\"\n        Function invoked when calling the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide the image generation. If not defined, one has to pass `prompt_embeds`.\n                instead.\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                will be used instead\n            inpaint_image (`torch.Tensor`, `PIL.Image.Image`, `np.ndarray`, `List[torch.Tensor]`, `List[PIL.Image.Image]`, `List[np.ndarray]`,:\n                    `List[List[torch.Tensor]]`, `List[List[np.ndarray]]` or `List[List[PIL.Image.Image]]`):\n                The image to be inpainted.\n            inpaint_mask (`torch.Tensor`, `PIL.Image.Image`, `np.ndarray`, `List[torch.Tensor]`, `List[PIL.Image.Image]`, `List[np.ndarray]`,:\n                    `List[List[torch.Tensor]]`, `List[List[np.ndarray]]` or `List[List[PIL.Image.Image]]`):\n                A black and white mask to be used for inpainting. The white pixels are the areas to be inpainted, while the\n                black pixels are the areas to be kept.\n            control_image (`torch.Tensor`, `PIL.Image.Image`, `np.ndarray`, `List[torch.Tensor]`, `List[PIL.Image.Image]`, `List[np.ndarray]`,:\n                    `List[List[torch.Tensor]]`, `List[List[np.ndarray]]` or `List[List[PIL.Image.Image]]`):\n                The control image (line, depth, pose, etc.) to be used for the generation. The control image\n            control_strength (`float`, *optional*, defaults to 1.0):\n                The strength of the control image. The higher the value, the more the control image will be used to\n                guide the generation. The lower the value, the less the control image will be used to guide the\n                generation.\n            control_stop (`float`, *optional*, defaults to 1.0):\n                The percentage of the generation to drop out the control. 0.0 to 1.0.  0.5 mean the control will be dropped\n                out at 50% of the generation.\n            height (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The height in pixels of the generated image. This is set to 1024 by default for the best results.\n            width (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The width in pixels of the generated image. This is set to 1024 by default for the best results.\n            num_inference_steps (`int`, *optional*, defaults to 50):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            sigmas (`List[float]`, *optional*):\n                Custom sigmas to use for the denoising process with schedulers which support a `sigmas` argument in\n                their `set_timesteps` method. If not defined, the default behavior when `num_inference_steps` is passed\n                will be used.\n            guidance_scale (`float`, *optional*, defaults to 3.5):\n                Guidance scale as defined in [Classifier-Free Diffusion Guidance](https://arxiv.org/abs/2207.12598).\n                `guidance_scale` is defined as `w` of equation 2. of [Imagen\n                Paper](https://arxiv.org/pdf/2205.11487.pdf). Guidance scale is enabled by setting `guidance_scale >\n                1`. Higher guidance scale encourages to generate images that are closely linked to the text `prompt`,\n                usually at the expense of lower image quality.\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                One or a list of [torch generator(s)](https://pytorch.org/docs/stable/generated/torch.Generator.html)\n                to make generation deterministic.\n            latents (`torch.FloatTensor`, *optional*):\n                Pre-generated noisy latents, sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor will ge generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generate image. Choose between\n                [PIL](https://pillow.readthedocs.io/en/stable/): `PIL.Image.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.flux.FluxPipelineOutput`] instead of a plain tuple.\n            joint_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            callback_on_step_end (`Callable`, *optional*):\n                A function that calls at the end of each denoising steps during the inference. The function is called\n                with the following arguments: `callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int,\n                callback_kwargs: Dict)`. `callback_kwargs` will include a list of all tensors as specified by\n                `callback_on_step_end_tensor_inputs`.\n            callback_on_step_end_tensor_inputs (`List`, *optional*):\n                The list of tensor inputs for the `callback_on_step_end` function. The tensors specified in the list\n                will be passed as `callback_kwargs` argument. You will only be able to include variables listed in the\n                `._callback_tensor_inputs` attribute of your pipeline class.\n            max_sequence_length (`int` defaults to 512): Maximum sequence length to use with the `prompt`.\n\n        Examples:\n\n        Returns:\n            [`~pipelines.flux.FluxPipelineOutput`] or `tuple`: [`~pipelines.flux.FluxPipelineOutput`] if `return_dict`\n            is True, otherwise a `tuple`. When returning a tuple, the first element is a list with the generated\n            images.\n        \"\"\"\n\n        height = height or self.default_sample_size * self.vae_scale_factor\n        width = width or self.default_sample_size * self.vae_scale_factor\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            prompt_2,\n            height,\n            width,\n            prompt_embeds=prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            callback_on_step_end_tensor_inputs=callback_on_step_end_tensor_inputs,\n            max_sequence_length=max_sequence_length,\n        )\n\n        self._guidance_scale = guidance_scale\n        self._joint_attention_kwargs = joint_attention_kwargs\n        self._interrupt = False\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        device = self._execution_device\n\n        # 3. Prepare text embeddings\n        lora_scale = (\n            self.joint_attention_kwargs.get(\"scale\", None) if self.joint_attention_kwargs is not None else None\n        )\n        (\n            prompt_embeds,\n            pooled_prompt_embeds,\n            text_ids,\n        ) = self.encode_prompt(\n            prompt=prompt,\n            prompt_2=prompt_2,\n            prompt_embeds=prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            device=device,\n            num_images_per_prompt=num_images_per_prompt,\n            max_sequence_length=max_sequence_length,\n            lora_scale=lora_scale,\n        )\n\n        # 4. Prepare latent variables\n        num_channels_latents = self.transformer.config.in_channels // 4\n\n        # only prepare latents for non controls\n        # (16 + 1 + 16 )\n        num_control_channels = 33\n        num_channels_latents = num_channels_latents - num_control_channels\n\n        control_latents = None\n        inpaint_latents = None\n        inpaint_latents_mask = None\n\n        latent_height = height // self.vae_scale_factor\n        latent_width = width // self.vae_scale_factor\n\n        # process the control and inpaint channels\n\n        if control_image is None:\n            control_latents = torch.zeros(\n                batch_size * num_images_per_prompt,\n                16,\n                latent_height,\n                latent_width,\n                device=device,\n                dtype=self.vae.dtype,\n            )\n        else:\n            control_image = self.prepare_image(\n                image=control_image,\n                width=width,\n                height=height,\n                batch_size=batch_size * num_images_per_prompt,\n                num_images_per_prompt=num_images_per_prompt,\n                device=device,\n                dtype=self.vae.dtype,\n            )\n            control_image = self.vae.encode(control_image).latent_dist.sample(generator=generator)\n            control_latents = (control_image - self.vae.config.shift_factor) * self.vae.config.scaling_factor\n\n        # apply control strength\n        control_latents = control_latents * control_strength\n\n        if inpaint_image is None and inpaint_mask is None:\n            inpaint_latents = torch.zeros(\n                batch_size * num_images_per_prompt,\n                16,\n                latent_height,\n                latent_width,\n                device=device,\n                dtype=self.vae.dtype,\n            )\n            inpaint_latents_mask = torch.ones(\n                batch_size * num_images_per_prompt,\n                1,\n                latent_height,\n                latent_width,\n                device=device,\n                dtype=self.vae.dtype,\n            )\n        else:\n            inpaint_image = self.prepare_image(\n                image=inpaint_image,\n                width=width,\n                height=height,\n                batch_size=batch_size * num_images_per_prompt,\n                num_images_per_prompt=num_images_per_prompt,\n                device=device,\n                dtype=self.vae.dtype,\n            )\n            inpaint_image = self.vae.encode(inpaint_image).latent_dist.sample(generator=generator)\n            inpaint_latents = (inpaint_image - self.vae.config.shift_factor) * self.vae.config.scaling_factor\n            height_inpaint_image, width_inpaint_image = inpaint_image.shape[2:]\n\n            inpaint_mask = self.prepare_image(\n                image=inpaint_mask,\n                width=width,\n                height=height,\n                batch_size=batch_size * num_images_per_prompt,\n                num_images_per_prompt=num_images_per_prompt,\n                device=device,\n                dtype=self.vae.dtype,\n            )\n            # mask is 3 ch -1 to 1. make it 1ch, 0 to 1\n            inpaint_mask = inpaint_mask[:, 0:1, :, :] * 0.5 + 0.5\n            # resize to match height_inpaint_image and width_inpaint_image\n            inpaint_latents_mask = F.interpolate(inpaint_mask, size=(height_inpaint_image, width_inpaint_image), mode=\"bilinear\", align_corners=False)\n\n        # apply inverted mask to inpaint latents\n        inpaint_latents = inpaint_latents * (1 - inpaint_latents_mask)\n\n        # concat the latent controls on the channel dimension every step\n        latent_controls = torch.cat([inpaint_latents, inpaint_latents_mask, control_latents], dim=1)\n        latent_no_controls = torch.cat([inpaint_latents, inpaint_latents_mask, torch.zeros_like(control_latents)], dim=1)\n\n        # pack the controls\n        height_latent_controls, width_latent_controls = latent_controls.shape[2:]\n        packed_latent_controls = self._pack_latents(\n            latent_controls,\n            batch_size * num_images_per_prompt,\n            num_control_channels,\n            height_latent_controls,\n            width_latent_controls,\n        )\n        packed_latent_no_controls = self._pack_latents(\n            latent_no_controls,\n            batch_size * num_images_per_prompt,\n            num_control_channels,\n            height_latent_controls,\n            width_latent_controls,\n        )\n\n        latents, latent_image_ids = self.prepare_latents(\n            batch_size * num_images_per_prompt,\n            num_channels_latents,\n            height,\n            width,\n            prompt_embeds.dtype,\n            device,\n            generator,\n            latents,\n        )\n\n        # 5. Prepare timesteps\n        sigmas = np.linspace(1.0, 1 / num_inference_steps, num_inference_steps) if sigmas is None else sigmas\n        image_seq_len = latents.shape[1]\n        mu = calculate_shift(\n            image_seq_len,\n            self.scheduler.config.get(\"base_image_seq_len\", 256),\n            self.scheduler.config.get(\"max_image_seq_len\", 4096),\n            self.scheduler.config.get(\"base_shift\", 0.5),\n            self.scheduler.config.get(\"max_shift\", 1.15),\n        )\n        timesteps, num_inference_steps = retrieve_timesteps(\n            self.scheduler,\n            num_inference_steps,\n            device,\n            sigmas=sigmas,\n            mu=mu,\n        )\n        num_warmup_steps = max(len(timesteps) - num_inference_steps * self.scheduler.order, 0)\n        self._num_timesteps = len(timesteps)\n\n        # handle guidance\n        if self.transformer.config.guidance_embeds:\n            guidance = torch.full([1], guidance_scale, device=device, dtype=torch.float32)\n            guidance = guidance.expand(latents.shape[0])\n        else:\n            guidance = None\n\n        control_cutoff = int(len(timesteps) * control_stop)\n\n        # 6. Denoising loop\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                if self.interrupt:\n                    continue\n\n                control_latents = packed_latent_controls if i < control_cutoff else packed_latent_no_controls\n\n                latent_model_input = torch.cat([latents, control_latents], dim=2)\n\n                # broadcast to batch dimension in a way that's compatible with ONNX/Core ML\n                timestep = t.expand(latents.shape[0]).to(latents.dtype)\n\n                noise_pred = self.transformer(\n                    hidden_states=latent_model_input,\n                    timestep=timestep / 1000,\n                    guidance=guidance,\n                    pooled_projections=pooled_prompt_embeds,\n                    encoder_hidden_states=prompt_embeds,\n                    txt_ids=text_ids,\n                    img_ids=latent_image_ids,\n                    joint_attention_kwargs=self.joint_attention_kwargs,\n                    return_dict=False,\n                )[0]\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents_dtype = latents.dtype\n                latents = self.scheduler.step(noise_pred, t, latents, return_dict=False)[0]\n\n                if latents.dtype != latents_dtype:\n                    if torch.backends.mps.is_available():\n                        # some platforms (eg. apple mps) misbehave due to a pytorch bug: https://github.com/pytorch/pytorch/pull/99272\n                        latents = latents.to(latents_dtype)\n\n                if callback_on_step_end is not None:\n                    callback_kwargs = {}\n                    for k in callback_on_step_end_tensor_inputs:\n                        callback_kwargs[k] = locals()[k]\n                    callback_outputs = callback_on_step_end(self, i, t, callback_kwargs)\n\n                    latents = callback_outputs.pop(\"latents\", latents)\n                    prompt_embeds = callback_outputs.pop(\"prompt_embeds\", prompt_embeds)\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n\n        if output_type == \"latent\":\n            image = latents\n        else:\n            latents = self._unpack_latents(latents, height, width, self.vae_scale_factor)\n            latents = (latents / self.vae.config.scaling_factor) + self.vae.config.shift_factor\n            image = self.vae.decode(latents, return_dict=False)[0]\n            image = self.image_processor.postprocess(image, output_type=output_type)\n\n        # Offload all models\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return (image,)\n\n        return FluxPipelineOutput(images=image)\n"
  },
  {
    "path": "pipelines/flux/flux_bnb.py",
    "content": "import diffusers\nimport transformers\nfrom modules import devices, model_quant\n\n\ndef load_flux_bnb(checkpoint_info, diffusers_load_config): # pylint: disable=unused-argument\n    transformer = None\n    if isinstance(checkpoint_info, str):\n        repo_path = checkpoint_info\n    else:\n        repo_path = checkpoint_info.path\n    model_quant.load_bnb('Load model: type=FLUX')\n    quant = model_quant.get_quant(repo_path)\n    if quant == 'fp8':\n        quantization_config = transformers.BitsAndBytesConfig(load_in_8bit=True, bnb_4bit_compute_dtype=devices.dtype)\n        transformer = diffusers.FluxTransformer2DModel.from_single_file(repo_path, **diffusers_load_config, quantization_config=quantization_config)\n    elif quant == 'fp4':\n        quantization_config = transformers.BitsAndBytesConfig(load_in_4bit=True, bnb_4bit_compute_dtype=devices.dtype, bnb_4bit_quant_type= 'fp4')\n        transformer = diffusers.FluxTransformer2DModel.from_single_file(repo_path, **diffusers_load_config, quantization_config=quantization_config)\n    elif quant == 'nf4':\n        quantization_config = transformers.BitsAndBytesConfig(load_in_4bit=True, bnb_4bit_compute_dtype=devices.dtype, bnb_4bit_quant_type= 'nf4')\n        transformer = diffusers.FluxTransformer2DModel.from_single_file(repo_path, **diffusers_load_config, quantization_config=quantization_config)\n    else:\n        transformer = diffusers.FluxTransformer2DModel.from_single_file(repo_path, **diffusers_load_config)\n    return transformer\n"
  },
  {
    "path": "pipelines/flux/flux_legacy_loader.py",
    "content": "import os\nimport json\nimport torch\nimport diffusers\nimport transformers\nfrom safetensors.torch import load_file\nfrom huggingface_hub import hf_hub_download\nfrom modules import shared, errors, devices, sd_models, sd_unet, model_te, model_quant, sd_hijack_te\n\n\ndebug = shared.log.trace if os.environ.get('SD_LOAD_DEBUG', None) is not None else lambda *args, **kwargs: None\n\n\ndef load_flux_quanto(checkpoint_info):\n    transformer, text_encoder_2 = None, None\n    quanto = model_quant.load_quanto('Load model: type=FLUX')\n\n    if isinstance(checkpoint_info, str):\n        repo_path = checkpoint_info\n    else:\n        repo_path = checkpoint_info.path\n\n    try:\n        quantization_map = os.path.join(repo_path, \"transformer\", \"quantization_map.json\")\n        debug(f'Load model: type=FLUX quantization map=\"{quantization_map}\" repo=\"{checkpoint_info.name}\" component=\"transformer\"')\n        if not os.path.exists(quantization_map):\n            repo_id = sd_models.path_to_repo(checkpoint_info)\n            quantization_map = hf_hub_download(repo_id, subfolder='transformer', filename='quantization_map.json', cache_dir=shared.opts.diffusers_dir)\n        with open(quantization_map, \"r\", encoding='utf8') as f:\n            quantization_map = json.load(f)\n        state_dict = load_file(os.path.join(repo_path, \"transformer\", \"diffusion_pytorch_model.safetensors\"))\n        dtype = state_dict['context_embedder.bias'].dtype\n        with torch.device(\"meta\"):\n            transformer = diffusers.FluxTransformer2DModel.from_config(os.path.join(repo_path, \"transformer\", \"config.json\")).to(dtype=dtype)\n        quanto.requantize(transformer, state_dict, quantization_map, device=torch.device(\"cpu\"))\n        transformer_dtype = transformer.dtype\n        if transformer_dtype != devices.dtype:\n            try:\n                transformer = transformer.to(dtype=devices.dtype)\n            except Exception:\n                shared.log.error(f\"Load model: type=FLUX Failed to cast transformer to {devices.dtype}, set dtype to {transformer_dtype}\")\n    except Exception as e:\n        shared.log.error(f\"Load model: type=FLUX failed to load Quanto transformer: {e}\")\n        if debug:\n            errors.display(e, 'FLUX Quanto:')\n\n    try:\n        quantization_map = os.path.join(repo_path, \"text_encoder_2\", \"quantization_map.json\")\n        debug(f'Load model: type=FLUX quantization map=\"{quantization_map}\" repo=\"{checkpoint_info.name}\" component=\"text_encoder_2\"')\n        if not os.path.exists(quantization_map):\n            repo_id = sd_models.path_to_repo(checkpoint_info)\n            quantization_map = hf_hub_download(repo_id, subfolder='text_encoder_2', filename='quantization_map.json', cache_dir=shared.opts.diffusers_dir)\n        with open(quantization_map, \"r\", encoding='utf8') as f:\n            quantization_map = json.load(f)\n        with open(os.path.join(repo_path, \"text_encoder_2\", \"config.json\"), encoding='utf8') as f:\n            t5_config = transformers.T5Config(**json.load(f))\n        state_dict = load_file(os.path.join(repo_path, \"text_encoder_2\", \"model.safetensors\"))\n        dtype = state_dict['encoder.block.0.layer.0.SelfAttention.relative_attention_bias.weight'].dtype\n        with torch.device(\"meta\"):\n            text_encoder_2 = transformers.T5EncoderModel(t5_config).to(dtype=dtype)\n        quanto.requantize(text_encoder_2, state_dict, quantization_map, device=torch.device(\"cpu\"))\n        text_encoder_2_dtype = text_encoder_2.dtype\n        if text_encoder_2_dtype != devices.dtype:\n            try:\n                text_encoder_2 = text_encoder_2.to(dtype=devices.dtype)\n            except Exception:\n                shared.log.error(f\"Load model: type=FLUX Failed to cast text encoder to {devices.dtype}, set dtype to {text_encoder_2_dtype}\")\n    except Exception as e:\n        shared.log.error(f\"Load model: type=FLUX failed to load Quanto text encoder: {e}\")\n        if debug:\n            errors.display(e, 'FLUX Quanto:')\n\n    return transformer, text_encoder_2\n\n\ndef load_flux_bnb(checkpoint_info, diffusers_load_config): # pylint: disable=unused-argument\n    transformer, text_encoder_2 = None, None\n    if isinstance(checkpoint_info, str):\n        repo_path = checkpoint_info\n    else:\n        repo_path = checkpoint_info.path\n    model_quant.load_bnb('Load model: type=FLUX')\n    quant = model_quant.get_quant(repo_path)\n    try:\n        if quant == 'fp8':\n            quantization_config = transformers.BitsAndBytesConfig(load_in_8bit=True, bnb_4bit_compute_dtype=devices.dtype)\n            debug(f'Quantization: {quantization_config}')\n            transformer = diffusers.FluxTransformer2DModel.from_single_file(repo_path, **diffusers_load_config, quantization_config=quantization_config)\n        elif quant == 'fp4':\n            quantization_config = transformers.BitsAndBytesConfig(load_in_4bit=True, bnb_4bit_compute_dtype=devices.dtype, bnb_4bit_quant_type= 'fp4')\n            debug(f'Quantization: {quantization_config}')\n            transformer = diffusers.FluxTransformer2DModel.from_single_file(repo_path, **diffusers_load_config, quantization_config=quantization_config)\n        elif quant == 'nf4':\n            quantization_config = transformers.BitsAndBytesConfig(load_in_4bit=True, bnb_4bit_compute_dtype=devices.dtype, bnb_4bit_quant_type= 'nf4')\n            debug(f'Quantization: {quantization_config}')\n            transformer = diffusers.FluxTransformer2DModel.from_single_file(repo_path, **diffusers_load_config, quantization_config=quantization_config)\n        else:\n            transformer = diffusers.FluxTransformer2DModel.from_single_file(repo_path, **diffusers_load_config)\n    except Exception as e:\n        shared.log.error(f\"Load model: type=FLUX failed to load BnB transformer: {e}\")\n        transformer, text_encoder_2 = None, None\n        if debug:\n            errors.display(e, 'FLUX:')\n    return transformer, text_encoder_2\n\n\ndef load_quants(kwargs, repo_id, cache_dir, allow_quant): # pylint: disable=unused-argument\n    try:\n        diffusers_load_config = {\n            \"torch_dtype\": devices.dtype,\n            \"cache_dir\": cache_dir,\n        }\n        if 'transformer' not in kwargs and model_quant.check_nunchaku('Model'):\n            import nunchaku\n            nunchaku_precision = nunchaku.utils.get_precision()\n            nunchaku_repo = None\n            if 'flux.1-kontext' in repo_id.lower():\n                nunchaku_repo = f\"mit-han-lab/nunchaku-flux.1-kontext-dev/svdq-{nunchaku_precision}_r32-flux.1-kontext-dev.safetensors\"\n            elif 'flux.1-dev' in repo_id.lower():\n                nunchaku_repo = f\"mit-han-lab/nunchaku-flux.1-dev/svdq-{nunchaku_precision}_r32-flux.1-dev.safetensors\"\n            elif 'flux.1-schnell' in repo_id.lower():\n                nunchaku_repo = f\"mit-han-lab/nunchaku-flux.1-schnell/svdq-{nunchaku_precision}_r32-flux.1-schnell.safetensors\"\n            elif 'flux.1-fill' in repo_id.lower():\n                nunchaku_repo = f\"mit-han-lab/svdq-fp4-flux.1-fill-dev/svdq-{nunchaku_precision}_r32-flux.1-schnell.safetensors\"\n            elif 'flux.1-depth' in repo_id.lower():\n                nunchaku_repo = f\"mit-han-lab/svdq-int4-flux.1-depth-dev/svdq-{nunchaku_precision}_r32-flux.1-schnell.safetensors\"\n            elif 'shuttle' in repo_id.lower():\n                nunchaku_repo = f\"mit-han-lab/nunchaku-shuttle-jaguar/svdq-{nunchaku_precision}_r32-shuttle-jaguar.safetensors\"\n            else:\n                shared.log.error(f'Load module: quant=Nunchaku module=transformer repo=\"{repo_id}\" unsupported')\n            if nunchaku_repo is not None:\n                shared.log.debug(f'Load module: quant=Nunchaku module=transformer repo=\"{nunchaku_repo}\" precision={nunchaku_precision} offload={shared.opts.nunchaku_offload} attention={shared.opts.nunchaku_attention}')\n                kwargs['transformer'] = nunchaku.NunchakuFluxTransformer2dModel.from_pretrained(nunchaku_repo, offload=shared.opts.nunchaku_offload, torch_dtype=devices.dtype, cache_dir=cache_dir)\n                kwargs['transformer'].quantization_method = 'SVDQuant'\n                if shared.opts.nunchaku_attention:\n                    kwargs['transformer'].set_attention_impl(\"nunchaku-fp16\")\n        if 'transformer' not in kwargs and model_quant.check_quant('Model'):\n            load_args, quant_args = model_quant.get_dit_args(diffusers_load_config, module='Model', device_map=True)\n            kwargs['transformer'] = diffusers.FluxTransformer2DModel.from_pretrained(repo_id, subfolder=\"transformer\", **load_args, **quant_args)\n        if 'text_encoder_2' not in kwargs and model_quant.check_nunchaku('TE'):\n            import nunchaku\n            nunchaku_precision = nunchaku.utils.get_precision()\n            nunchaku_repo = 'mit-han-lab/nunchaku-t5/awq-int4-flux.1-t5xxl.safetensors'\n            shared.log.debug(f'Load module: quant=Nunchaku module=t5 repo=\"{nunchaku_repo}\" precision={nunchaku_precision}')\n            kwargs['text_encoder_2'] = nunchaku.NunchakuT5EncoderModel.from_pretrained(nunchaku_repo, torch_dtype=devices.dtype, cache_dir=cache_dir)\n            kwargs['text_encoder_2'].quantization_method = 'SVDQuant'\n        if 'text_encoder_2' not in kwargs and model_quant.check_quant('TE'):\n            load_args, quant_args = model_quant.get_dit_args(diffusers_load_config, module='TE', device_map=True)\n            kwargs['text_encoder_2'] = transformers.T5EncoderModel.from_pretrained(repo_id, subfolder=\"text_encoder_2\", **load_args, **quant_args)\n    except Exception as e:\n        shared.log.error(f'Quantization: {e}')\n        errors.display(e, 'Quantization:')\n    return kwargs\n\n\ndef load_transformer(file_path): # triggered by opts.sd_unet change\n    if file_path is None or not os.path.exists(file_path):\n        return None\n    transformer = None\n    quant = model_quant.get_quant(file_path)\n    diffusers_load_config = {\n        \"torch_dtype\": devices.dtype,\n        \"cache_dir\": shared.opts.hfcache_dir,\n    }\n    if quant is not None and quant != 'none':\n        shared.log.info(f'Load module: type=UNet/Transformer file=\"{file_path}\" offload={shared.opts.diffusers_offload_mode} prequant={quant} dtype={devices.dtype}')\n    if 'gguf' in file_path.lower():\n        from modules import ggml\n        _transformer = ggml.load_gguf(file_path, cls=diffusers.FluxTransformer2DModel, compute_dtype=devices.dtype)\n        if _transformer is not None:\n            transformer = _transformer\n    elif quant == \"fp8\":\n        _transformer = model_quant.load_fp8_model_layerwise(file_path, diffusers.FluxTransformer2DModel.from_single_file, diffusers_load_config)\n        if _transformer is not None:\n            transformer = _transformer\n    elif quant in {'qint8', 'qint4'}:\n        _transformer, _text_encoder_2 = load_flux_quanto(file_path)\n        if _transformer is not None:\n            transformer = _transformer\n    elif quant in {'fp8', 'fp4', 'nf4'}:\n        _transformer, _text_encoder_2 = load_flux_bnb(file_path, diffusers_load_config)\n        if _transformer is not None:\n            transformer = _transformer\n    elif 'nf4' in quant:\n        from pipelines.flux.flux_nf4 import load_flux_nf4\n        _transformer, _text_encoder_2 = load_flux_nf4(file_path, prequantized=True)\n        if _transformer is not None:\n            transformer = _transformer\n    else:\n        quant_args = model_quant.create_bnb_config({})\n        if quant_args:\n            shared.log.info(f'Load module: type=Flux transformer file=\"{file_path}\" offload={shared.opts.diffusers_offload_mode} quant=bnb dtype={devices.dtype}')\n            from pipelines.flux.flux_nf4 import load_flux_nf4\n            transformer, _text_encoder_2 = load_flux_nf4(file_path, prequantized=False)\n            if transformer is not None:\n                return transformer\n        load_args, quant_args = model_quant.get_dit_args(diffusers_load_config, module='Model', device_map=True)\n        shared.log.debug(f'Load model: type=Flux transformer file=\"{file_path}\" offload={shared.opts.diffusers_offload_mode} args={load_args}')\n        transformer = diffusers.FluxTransformer2DModel.from_single_file(file_path, **load_args, **quant_args)\n    if transformer is None:\n        shared.log.error('Failed to load UNet model')\n        shared.opts.sd_unet = 'Default'\n    return transformer\n\n\ndef load_flux(checkpoint_info, diffusers_load_config): # triggered by opts.sd_checkpoint change\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n    allow_post_quant = False\n\n    prequantized = model_quant.get_quant(checkpoint_info.path)\n    shared.log.debug(f'Load model: type=FLUX model=\"{checkpoint_info.name}\" repo=\"{repo_id}\" unet=\"{shared.opts.sd_unet}\" te=\"{shared.opts.sd_text_encoder}\" vae=\"{shared.opts.sd_vae}\" quant={prequantized} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype}')\n    debug(f'Load model: type=FLUX config={diffusers_load_config}')\n\n    transformer = None\n    text_encoder_1 = None\n    text_encoder_2 = None\n    vae = None\n\n    # unload current model\n    sd_models.unload_model_weights()\n    shared.sd_model = None\n    devices.torch_gc(force=True, reason='load')\n\n    if shared.opts.teacache_enabled:\n        from modules import teacache\n        shared.log.debug(f'Transformers cache: type=teacache patch=forward cls={diffusers.FluxTransformer2DModel.__name__}')\n        diffusers.FluxTransformer2DModel.forward = teacache.teacache_flux_forward # patch must be done before transformer is loaded\n\n    # load overrides if any\n    if shared.opts.sd_unet != 'Default':\n        try:\n            debug(f'Load model: type=FLUX unet=\"{shared.opts.sd_unet}\"')\n            transformer = load_transformer(sd_unet.unet_dict[shared.opts.sd_unet])\n            if transformer is None:\n                shared.opts.sd_unet = 'Default'\n                sd_unet.failed_unet.append(shared.opts.sd_unet)\n        except Exception as e:\n            shared.log.error(f\"Load model: type=FLUX failed to load UNet: {e}\")\n            shared.opts.sd_unet = 'Default'\n            if debug:\n                errors.display(e, 'FLUX UNet:')\n    if shared.opts.sd_text_encoder != 'Default':\n        try:\n            debug(f'Load model: type=FLUX te=\"{shared.opts.sd_text_encoder}\"')\n            from modules.model_te import load_t5, load_vit_l\n            if 'vit-l' in shared.opts.sd_text_encoder.lower():\n                text_encoder_1 = load_vit_l()\n            else:\n                text_encoder_2 = load_t5(name=shared.opts.sd_text_encoder, cache_dir=shared.opts.diffusers_dir)\n        except Exception as e:\n            shared.log.error(f\"Load model: type=FLUX failed to load T5: {e}\")\n            shared.opts.sd_text_encoder = 'Default'\n            if debug:\n                errors.display(e, 'FLUX T5:')\n    if shared.opts.sd_vae != 'Default' and shared.opts.sd_vae != 'Automatic':\n        try:\n            debug(f'Load model: type=FLUX vae=\"{shared.opts.sd_vae}\"')\n            from modules import sd_vae\n            # vae = sd_vae.load_vae_diffusers(None, sd_vae.vae_dict[shared.opts.sd_vae], 'override')\n            vae_file = sd_vae.vae_dict[shared.opts.sd_vae]\n            if os.path.exists(vae_file):\n                vae_config = os.path.join('configs', 'flux', 'vae', 'config.json')\n                vae = diffusers.AutoencoderKL.from_single_file(vae_file, config=vae_config, **diffusers_load_config)\n        except Exception as e:\n            shared.log.error(f\"Load model: type=FLUX failed to load VAE: {e}\")\n            shared.opts.sd_vae = 'Default'\n            if debug:\n                errors.display(e, 'FLUX VAE:')\n\n    # load quantized components if any\n    if prequantized == 'nf4':\n        try:\n            from pipelines.flux.flux_nf4 import load_flux_nf4\n            _transformer, _text_encoder = load_flux_nf4(checkpoint_info)\n            if _transformer is not None:\n                transformer = _transformer\n            if _text_encoder is not None:\n                text_encoder_2 = _text_encoder\n        except Exception as e:\n            shared.log.error(f\"Load model: type=FLUX failed to load NF4 components: {e}\")\n            if debug:\n                errors.display(e, 'FLUX NF4:')\n    if prequantized == 'qint8' or prequantized == 'qint4':\n        try:\n            _transformer, _text_encoder = load_flux_quanto(checkpoint_info)\n            if _transformer is not None:\n                transformer = _transformer\n            if _text_encoder is not None:\n                text_encoder_2 = _text_encoder\n        except Exception as e:\n            shared.log.error(f\"Load model: type=FLUX failed to load Quanto components: {e}\")\n            if debug:\n                errors.display(e, 'FLUX Quanto:')\n\n    # initialize pipeline with pre-loaded components\n    kwargs = {}\n    if transformer is not None:\n        kwargs['transformer'] = transformer\n        sd_unet.loaded_unet = shared.opts.sd_unet\n    if text_encoder_1 is not None:\n        kwargs['text_encoder'] = text_encoder_1\n        model_te.loaded_te = shared.opts.sd_text_encoder\n    if text_encoder_2 is not None:\n        kwargs['text_encoder_2'] = text_encoder_2\n        model_te.loaded_te = shared.opts.sd_text_encoder\n    if vae is not None:\n        kwargs['vae'] = vae\n    if repo_id == 'sayakpaul/flux.1-dev-nf4':\n        repo_id = 'black-forest-labs/FLUX.1-dev' # workaround since sayakpaul model is missing model_index.json\n    if 'Fill' in repo_id:\n        cls = diffusers.FluxFillPipeline\n    elif 'Canny' in repo_id:\n        cls = diffusers.FluxControlPipeline\n    elif 'Depth' in repo_id:\n        cls = diffusers.FluxControlPipeline\n    elif 'Kontext' in repo_id:\n        cls = diffusers.FluxKontextPipeline\n        from diffusers import pipelines\n        pipelines.auto_pipeline.AUTO_TEXT2IMAGE_PIPELINES_MAPPING[\"flux1kontext\"] = diffusers.FluxKontextPipeline\n        pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING[\"flux1kontext\"] = diffusers.FluxKontextPipeline\n        pipelines.auto_pipeline.AUTO_INPAINT_PIPELINES_MAPPING[\"flux1kontext\"] = diffusers.FluxKontextInpaintPipeline\n\n    else:\n        cls = diffusers.FluxPipeline\n    shared.log.debug(f'Load model: type=FLUX cls={cls.__name__} preloaded={list(kwargs)} revision={diffusers_load_config.get(\"revision\", None)}')\n    for c in kwargs:\n        if getattr(kwargs[c], 'quantization_method', None) is not None or getattr(kwargs[c], 'gguf', None) is not None:\n            shared.log.debug(f'Load model: type=FLUX component={c} dtype={kwargs[c].dtype} quant={getattr(kwargs[c], \"quantization_method\", None) or getattr(kwargs[c], \"gguf\", None)}')\n        if kwargs[c].dtype == torch.float32 and devices.dtype != torch.float32:\n            try:\n                kwargs[c] = kwargs[c].to(dtype=devices.dtype)\n                shared.log.warning(f'Load model: type=FLUX component={c} dtype={kwargs[c].dtype} cast dtype={devices.dtype} recast')\n            except Exception:\n                pass\n\n    allow_quant = 'gguf' not in (sd_unet.loaded_unet or '') and (prequantized is None or prequantized == 'none')\n    fn = checkpoint_info.path\n    if (fn is None) or (not os.path.exists(fn) or os.path.isdir(fn)):\n        kwargs = load_quants(kwargs, repo_id, cache_dir=shared.opts.diffusers_dir, allow_quant=allow_quant)\n    if fn.endswith('.safetensors') and os.path.isfile(fn):\n        pipe = cls.from_single_file(fn, cache_dir=shared.opts.diffusers_dir, **kwargs, **diffusers_load_config)\n        allow_post_quant = True\n    else:\n        pipe = cls.from_pretrained(repo_id, cache_dir=shared.opts.diffusers_dir, **kwargs, **diffusers_load_config)\n\n    if shared.opts.teacache_enabled and model_quant.check_nunchaku('Model'):\n        from nunchaku.caching.diffusers_adapters import apply_cache_on_pipe\n        apply_cache_on_pipe(pipe, residual_diff_threshold=0.12)\n\n    # release memory\n    transformer = None\n    text_encoder_1 = None\n    text_encoder_2 = None\n    vae = None\n    for k in kwargs.keys():\n        kwargs[k] = None\n    sd_hijack_te.init_hijack(pipe)\n    devices.torch_gc(force=True, reason='load')\n    return pipe, allow_post_quant\n"
  },
  {
    "path": "pipelines/flux/flux_lora.py",
    "content": "def calculate_module_shape(model, base_module=None, base_weight_param_name=None):\n    def _get_weight_shape(weight):\n        if weight.__class__.__name__ == \"Params4bit\":\n            return weight.quant_state.shape\n        elif weight.__class__.__name__ == \"GGUFParameter\":\n            return weight.quant_shape\n        else:\n            return weight.shape\n\n    if base_module is not None:\n        if hasattr(base_module, \"sdnq_dequantizer\"):\n            return base_module.sdnq_dequantizer.original_shape\n        else:\n            return _get_weight_shape(base_module.weight)\n    elif base_weight_param_name is not None:\n        from diffusers.utils import get_submodule_by_name\n        if not base_weight_param_name.endswith(\".weight\"):\n            raise ValueError(f\"Invalid `base_weight_param_name` passed as it does not end with '.weight' {base_weight_param_name=}.\")\n        module_path = base_weight_param_name.rsplit(\".weight\", 1)[0]\n        submodule = get_submodule_by_name(model, module_path)\n        if hasattr(submodule, \"sdnq_dequantizer\"):\n            return submodule.sdnq_dequantizer.original_shape\n        else:\n            return _get_weight_shape(submodule.weight)\n\n    raise ValueError(\"Either `base_module` or `base_weight_param_name` must be provided.\")\n\n\ndef apply_patch():\n    from diffusers.loaders.lora_pipeline import FluxLoraLoaderMixin\n    FluxLoraLoaderMixin._calculate_module_shape = calculate_module_shape # pylint: disable=protected-access\n"
  },
  {
    "path": "pipelines/flux/flux_nf4.py",
    "content": "\"\"\"\nCopied from: https://github.com/huggingface/diffusers/issues/9165\n\"\"\"\n\nimport os\nimport torch\nimport torch.nn as nn\nfrom transformers.quantizers.quantizers_utils import get_module_from_name\nfrom huggingface_hub import hf_hub_download\nfrom accelerate import init_empty_weights\nfrom accelerate.utils import set_module_tensor_to_device\nfrom diffusers.loaders.single_file_utils import convert_flux_transformer_checkpoint_to_diffusers\nimport safetensors.torch\nfrom modules import shared, devices, model_quant\n\n\ndebug = os.environ.get('SD_LOAD_DEBUG', None) is not None\n\n\ndef _replace_with_bnb_linear(\n    model,\n    method=\"nf4\",\n    has_been_replaced=False,\n):\n    \"\"\"\n    Private method that wraps the recursion for module replacement.\n    Returns the converted model and a boolean that indicates if the conversion has been successfull or not.\n    \"\"\"\n    bnb = model_quant.load_bnb('Load model: type=FLUX')\n    for name, module in model.named_children():\n        if isinstance(module, nn.Linear):\n            with init_empty_weights():\n                in_features = module.in_features\n                out_features = module.out_features\n\n                if method == \"llm_int8\":\n                    model._modules[name] = bnb.nn.Linear8bitLt( # pylint: disable=protected-access\n                        in_features,\n                        out_features,\n                        module.bias is not None,\n                        has_fp16_weights=False,\n                        threshold=6.0,\n                    )\n                    has_been_replaced = True\n                else:\n                    model._modules[name] = bnb.nn.Linear4bit( # pylint: disable=protected-access\n                        in_features,\n                        out_features,\n                        module.bias is not None,\n                        compute_dtype=devices.dtype,\n                        compress_statistics=False,\n                        quant_type=\"nf4\",\n                    )\n                    has_been_replaced = True\n                # Store the module class in case we need to transpose the weight later\n                model._modules[name].source_cls = type(module) # pylint: disable=protected-access\n                # Force requires grad to False to avoid unexpected errors\n                model._modules[name].requires_grad_(False) # pylint: disable=protected-access\n\n        if len(list(module.children())) > 0:\n            _, has_been_replaced = _replace_with_bnb_linear(\n                module,\n                has_been_replaced=has_been_replaced,\n            )\n        # Remove the last key for recursion\n    return model, has_been_replaced\n\n\ndef check_quantized_param(\n    model,\n    param_name: str,\n) -> bool:\n    bnb = model_quant.load_bnb('Load model: type=FLUX')\n    module, tensor_name = get_module_from_name(model, param_name)\n    if isinstance(module._parameters.get(tensor_name, None), bnb.nn.Params4bit): # pylint: disable=protected-access\n        # Add here check for loaded components' dtypes once serialization is implemented\n        return True\n    elif isinstance(module, bnb.nn.Linear4bit) and tensor_name == \"bias\":\n        # bias could be loaded by regular set_module_tensor_to_device() from accelerate,\n        # but it would wrongly use uninitialized weight there.\n        return True\n    else:\n        return False\n\n\ndef create_quantized_param(\n    model,\n    param_value: \"torch.Tensor\",\n    param_name: str,\n    target_device: \"torch.device\",\n    state_dict=None,\n    unexpected_keys=None,\n    pre_quantized=False\n):\n    bnb = model_quant.load_bnb('Load model: type=FLUX')\n    module, tensor_name = get_module_from_name(model, param_name)\n\n    if tensor_name not in module._parameters: # pylint: disable=protected-access\n        raise ValueError(f\"{module} does not have a parameter or a buffer named {tensor_name}.\")\n\n    old_value = getattr(module, tensor_name)\n\n    if tensor_name == \"bias\":\n        if param_value is None:\n            new_value = old_value.to(target_device)\n        else:\n            new_value = param_value.to(target_device)\n        new_value = torch.nn.Parameter(new_value, requires_grad=old_value.requires_grad)\n        module._parameters[tensor_name] = new_value # pylint: disable=protected-access\n        return\n\n    if not isinstance(module._parameters[tensor_name], bnb.nn.Params4bit): # pylint: disable=protected-access\n        raise ValueError(\"this function only loads `Linear4bit components`\")\n    if (\n        old_value.device == torch.device(\"meta\")\n        and target_device not in [\"meta\", torch.device(\"meta\")]\n        and param_value is None\n    ):\n        raise ValueError(f\"{tensor_name} is on the meta device, we need a `value` to put in on {target_device}.\")\n\n    if pre_quantized:\n        if (param_name + \".quant_state.bitsandbytes__fp4\" not in state_dict) and (param_name + \".quant_state.bitsandbytes__nf4\" not in state_dict):\n            raise ValueError(f\"Supplied state dict for {param_name} does not contain `bitsandbytes__*` and possibly other `quantized_stats` components.\")\n        quantized_stats = {}\n        for k, v in state_dict.items():\n            # `startswith` to counter for edge cases where `param_name`\n            # substring can be present in multiple places in the `state_dict`\n            if param_name + \".\" in k and k.startswith(param_name):\n                quantized_stats[k] = v\n                if unexpected_keys is not None and k in unexpected_keys:\n                    unexpected_keys.remove(k)\n        new_value = bnb.nn.Params4bit.from_prequantized(\n            data=param_value,\n            quantized_stats=quantized_stats,\n            requires_grad=False,\n            device=target_device,\n        )\n    else:\n        new_value = param_value.to(\"cpu\")\n        kwargs = old_value.__dict__\n        new_value = bnb.nn.Params4bit(new_value, requires_grad=False, **kwargs).to(target_device)\n    module._parameters[tensor_name] = new_value # pylint: disable=protected-access\n\n\ndef load_flux_nf4(checkpoint_info, prequantized: bool = True):\n    transformer = None\n    text_encoder_2 = None\n    if isinstance(checkpoint_info, str):\n        repo_path = checkpoint_info\n    else:\n        repo_path = checkpoint_info.path\n    if os.path.exists(repo_path) and os.path.isfile(repo_path):\n        ckpt_path = repo_path\n    elif os.path.exists(repo_path) and os.path.isdir(repo_path) and os.path.exists(os.path.join(repo_path, \"diffusion_pytorch_model.safetensors\")):\n        ckpt_path = os.path.join(repo_path, \"diffusion_pytorch_model.safetensors\")\n    else:\n        ckpt_path = hf_hub_download(repo_path, filename=\"diffusion_pytorch_model.safetensors\", cache_dir=shared.opts.diffusers_dir)\n    original_state_dict = safetensors.torch.load_file(ckpt_path)\n\n    if 'sayakpaul' in repo_path:\n        converted_state_dict = original_state_dict # already converted\n    else:\n        try:\n            converted_state_dict = convert_flux_transformer_checkpoint_to_diffusers(original_state_dict)\n        except Exception as e:\n            shared.log.error(f\"Load model: type=FLUX Failed to convert UNET: {e}\")\n            if debug:\n                from modules import errors\n                errors.display(e, 'FLUX convert:')\n            converted_state_dict = original_state_dict\n\n    with init_empty_weights():\n        from diffusers import FluxTransformer2DModel\n        config = FluxTransformer2DModel.load_config(os.path.join('configs', 'flux'), subfolder=\"transformer\")\n        transformer = FluxTransformer2DModel.from_config(config).to(devices.dtype)\n        expected_state_dict_keys = list(transformer.state_dict().keys())\n\n    _replace_with_bnb_linear(transformer, \"nf4\")\n\n    try:\n        for param_name, param in converted_state_dict.items():\n            if param_name not in expected_state_dict_keys:\n                continue\n            is_param_float8_e4m3fn = hasattr(torch, \"float8_e4m3fn\") and param.dtype == torch.float8_e4m3fn\n            if torch.is_floating_point(param) and not is_param_float8_e4m3fn:\n                param = param.to(devices.dtype)\n            if not check_quantized_param(transformer, param_name):\n                set_module_tensor_to_device(transformer, param_name, device=0, value=param)\n            else:\n                create_quantized_param(transformer, param, param_name, target_device=0, state_dict=original_state_dict, pre_quantized=prequantized)\n    except Exception as e:\n        transformer, text_encoder_2 = None, None\n        shared.log.error(f\"Load model: type=FLUX failed to load UNET: {e}\")\n        if debug:\n            from modules import errors\n            errors.display(e, 'FLUX:')\n\n    del original_state_dict\n    devices.torch_gc(force=True, reason='load')\n    return transformer, text_encoder_2\n"
  },
  {
    "path": "pipelines/flux/flux_nunchaku.py",
    "content": "from modules import shared, devices\n\n\ndef load_flux_nunchaku(repo_id):\n    import nunchaku\n    nunchaku_precision = nunchaku.utils.get_precision()\n    nunchaku_repo = None\n    transformer = None\n    if 'srpo' in repo_id.lower():\n        pass\n    elif 'flux.1-dev' in repo_id.lower():\n        nunchaku_repo = f\"nunchaku-tech/nunchaku-flux.1-dev/svdq-{nunchaku_precision}_r32-flux.1-dev.safetensors\"\n    elif 'flux.1-schnell' in repo_id.lower():\n        nunchaku_repo = f\"nunchaku-tech/nunchaku-flux.1-schnell/svdq-{nunchaku_precision}_r32-flux.1-schnell.safetensors\"\n    elif 'flux.1-kontext' in repo_id.lower():\n        nunchaku_repo = f\"nunchaku-tech/nunchaku-flux.1-kontext-dev/svdq-{nunchaku_precision}_r32-flux.1-kontext-dev.safetensors\"\n    elif 'flux.1-krea' in repo_id.lower():\n        nunchaku_repo = f\"nunchaku-tech/nunchaku-flux.1-krea-dev/svdq-{nunchaku_precision}_r32-flux.1-krea-dev.safetensors\"\n    elif 'flux.1-fill' in repo_id.lower():\n        nunchaku_repo = f\"nunchaku-tech/nunchaku-flux.1-fill-dev/svdq-{nunchaku_precision}-flux.1-fill-dev.safetensors\"\n    elif 'flux.1-depth' in repo_id.lower():\n        nunchaku_repo = f\"nunchaku-tech/nunchaku-flux.1-depth-dev/svdq-{nunchaku_precision}-flux.1-depth-dev.safetensors\"\n    elif 'shuttle' in repo_id.lower():\n        nunchaku_repo = f\"nunchaku-tech/nunchaku-shuttle-jaguar/svdq-{nunchaku_precision}-shuttle-jaguar.safetensors\"\n    else:\n        shared.log.error(f'Load module: quant=Nunchaku module=transformer repo=\"{repo_id}\" unsupported')\n    if nunchaku_repo is not None:\n        shared.log.debug(f'Load module: quant=Nunchaku module=transformer repo=\"{nunchaku_repo}\" precision={nunchaku_precision} offload={shared.opts.nunchaku_offload} attention={shared.opts.nunchaku_attention}')\n        transformer = nunchaku.NunchakuFluxTransformer2dModel.from_pretrained(\n            nunchaku_repo,\n            offload=shared.opts.nunchaku_offload,\n            torch_dtype=devices.dtype,\n            cache_dir=shared.opts.hfcache_dir,\n        )\n        transformer.quantization_method = 'SVDQuant'\n        if shared.opts.nunchaku_attention:\n            transformer.set_attention_impl(\"nunchaku-fp16\")\n    return transformer\n"
  },
  {
    "path": "pipelines/flux/flux_quanto.py",
    "content": "import os\nimport json\nimport torch\nimport diffusers\nimport transformers\nfrom safetensors.torch import load_file\nfrom huggingface_hub import hf_hub_download\nfrom modules import shared, errors, devices, sd_models, model_quant\n\n\ndebug = shared.log.trace if os.environ.get('SD_LOAD_DEBUG', None) is not None else lambda *args, **kwargs: None\n\n\ndef load_flux_quanto(checkpoint_info):\n    transformer, text_encoder_2 = None, None\n    quanto = model_quant.load_quanto('Load model: type=FLUX')\n\n    if isinstance(checkpoint_info, str):\n        repo_path = checkpoint_info\n    else:\n        repo_path = checkpoint_info.path\n\n    try:\n        quantization_map = os.path.join(repo_path, \"transformer\", \"quantization_map.json\")\n        debug(f'Load model: type=FLUX quantization map=\"{quantization_map}\" repo=\"{checkpoint_info.name}\" component=\"transformer\"')\n        if not os.path.exists(quantization_map):\n            repo_id = sd_models.path_to_repo(checkpoint_info)\n            quantization_map = hf_hub_download(repo_id, subfolder='transformer', filename='quantization_map.json', cache_dir=shared.opts.diffusers_dir)\n        with open(quantization_map, \"r\", encoding='utf8') as f:\n            quantization_map = json.load(f)\n        state_dict = load_file(os.path.join(repo_path, \"transformer\", \"diffusion_pytorch_model.safetensors\"))\n        dtype = state_dict['context_embedder.bias'].dtype\n        with torch.device(\"meta\"):\n            transformer = diffusers.FluxTransformer2DModel.from_config(os.path.join(repo_path, \"transformer\", \"config.json\")).to(dtype=dtype)\n        quanto.requantize(transformer, state_dict, quantization_map, device=torch.device(\"cpu\"))\n        transformer_dtype = transformer.dtype\n        if transformer_dtype != devices.dtype:\n            try:\n                transformer = transformer.to(dtype=devices.dtype)\n            except Exception:\n                shared.log.error(f\"Load model: type=FLUX Failed to cast transformer to {devices.dtype}, set dtype to {transformer_dtype}\")\n    except Exception as e:\n        shared.log.error(f\"Load model: type=FLUX failed to load Quanto transformer: {e}\")\n        if debug:\n            errors.display(e, 'FLUX Quanto:')\n\n    try:\n        quantization_map = os.path.join(repo_path, \"text_encoder_2\", \"quantization_map.json\")\n        debug(f'Load model: type=FLUX quantization map=\"{quantization_map}\" repo=\"{checkpoint_info.name}\" component=\"text_encoder_2\"')\n        if not os.path.exists(quantization_map):\n            repo_id = sd_models.path_to_repo(checkpoint_info)\n            quantization_map = hf_hub_download(repo_id, subfolder='text_encoder_2', filename='quantization_map.json', cache_dir=shared.opts.diffusers_dir)\n        with open(quantization_map, \"r\", encoding='utf8') as f:\n            quantization_map = json.load(f)\n        with open(os.path.join(repo_path, \"text_encoder_2\", \"config.json\"), encoding='utf8') as f:\n            t5_config = transformers.T5Config(**json.load(f))\n        state_dict = load_file(os.path.join(repo_path, \"text_encoder_2\", \"model.safetensors\"))\n        dtype = state_dict['encoder.block.0.layer.0.SelfAttention.relative_attention_bias.weight'].dtype\n        with torch.device(\"meta\"):\n            text_encoder_2 = transformers.T5EncoderModel(t5_config).to(dtype=dtype)\n        quanto.requantize(text_encoder_2, state_dict, quantization_map, device=torch.device(\"cpu\"))\n        text_encoder_2_dtype = text_encoder_2.dtype\n        if text_encoder_2_dtype != devices.dtype:\n            try:\n                text_encoder_2 = text_encoder_2.to(dtype=devices.dtype)\n            except Exception:\n                shared.log.error(f\"Load model: type=FLUX Failed to cast text encoder to {devices.dtype}, set dtype to {text_encoder_2_dtype}\")\n    except Exception as e:\n        shared.log.error(f\"Load model: type=FLUX failed to load Quanto text encoder: {e}\")\n        if debug:\n            errors.display(e, 'FLUX Quanto:')\n\n    return transformer, text_encoder_2\n"
  },
  {
    "path": "pipelines/generic.py",
    "content": "import os\nimport sys\nimport json\nimport diffusers\nimport transformers\nfrom modules import shared, devices, errors, sd_models, model_quant\n\n\ndebug = os.environ.get('SD_LOAD_DEBUG', None) is not None\n\n\ndef _loader(component):\n    \"\"\"Return loader type for log messages.\"\"\"\n    if sys.platform != 'linux':\n        return 'default'\n    if component == 'diffusers':\n        return 'runai' if shared.opts.runai_streamer_diffusers else 'default'\n    return 'runai' if shared.opts.runai_streamer_transformers else 'default'\n\n\ndef load_transformer(repo_id, cls_name, load_config=None, subfolder=\"transformer\", allow_quant=True, variant=None, dtype=None, modules_to_not_convert=None, modules_dtype_dict=None):\n    transformer = None\n    if load_config is None:\n        load_config = {}\n    if modules_to_not_convert is None:\n        modules_to_not_convert = []\n    if modules_dtype_dict is None:\n        modules_dtype_dict = {}\n    jobid = shared.state.begin('Load DiT')\n    try:\n        load_args, quant_args = model_quant.get_dit_args(load_config, module='Model', device_map=True, allow_quant=allow_quant, modules_to_not_convert=modules_to_not_convert, modules_dtype_dict=modules_dtype_dict)\n        quant_type = model_quant.get_quant_type(quant_args)\n        dtype = dtype or devices.dtype\n\n        local_file = None\n        if shared.opts.sd_unet is not None and shared.opts.sd_unet != 'Default':\n            from modules import sd_unet\n            if shared.opts.sd_unet not in list(sd_unet.unet_dict):\n                shared.log.error(f'Load module: type=transformer file=\"{shared.opts.sd_unet}\" not found')\n            elif os.path.exists(sd_unet.unet_dict[shared.opts.sd_unet]):\n                local_file = sd_unet.unet_dict[shared.opts.sd_unet]\n\n        if local_file is not None and local_file.lower().endswith('.gguf'):\n            shared.log.debug(f'Load model: transformer=\"{local_file}\" cls={cls_name.__name__} quant=\"{quant_type}\" loader={_loader(\"diffusers\")} args={load_args}')\n            from modules import ggml\n            ggml.install_gguf()\n            loader = cls_name.from_single_file if hasattr(cls_name, 'from_single_file') else cls_name.from_pretrained\n            transformer = loader(\n                local_file,\n                quantization_config=diffusers.GGUFQuantizationConfig(compute_dtype=dtype),\n                cache_dir=shared.opts.hfcache_dir,\n                **load_args,\n            )\n            transformer = model_quant.do_post_load_quant(transformer, allow=quant_type is not None)\n        elif local_file is not None and local_file.lower().endswith('.safetensors'):\n            shared.log.debug(f'Load model: transformer=\"{local_file}\" cls={cls_name.__name__} quant=\"{quant_type}\" loader={_loader(\"diffusers\")} args={load_args}')\n            if dtype is not None:\n                load_args['torch_dtype'] = dtype\n            load_args.pop('device_map', None) # single-file uses different syntax\n            loader = cls_name.from_single_file if hasattr(cls_name, 'from_single_file') else cls_name.from_pretrained\n            transformer = loader(\n                local_file,\n                cache_dir=shared.opts.hfcache_dir,\n                **load_args,\n                **quant_args,\n            )\n        else:\n            shared.log.debug(f'Load model: transformer=\"{repo_id}\" cls={cls_name.__name__} subfolder={subfolder} quant=\"{quant_type}\" loader={_loader(\"diffusers\")} args={load_args}')\n            if 'sdnq-' in repo_id.lower():\n                quant_args = {}\n            if dtype is not None:\n                load_args['torch_dtype'] = dtype\n            if subfolder is not None:\n                load_args['subfolder'] = subfolder\n            if variant is not None:\n                load_args['variant'] = variant\n            transformer = cls_name.from_pretrained(\n                repo_id,\n                cache_dir=shared.opts.hfcache_dir,\n                **load_args,\n                **quant_args,\n            )\n\n        sd_models.allow_post_quant = False # we already handled it\n        if shared.opts.diffusers_offload_mode != 'none' and transformer is not None:\n            sd_models.move_model(transformer, devices.cpu)\n\n        if transformer is not None and not hasattr(transformer, 'quantization_config'): # attach quantization_config\n            if hasattr(transformer, 'config') and hasattr(transformer.config, 'quantization_config'):\n                transformer.quantization_config = transformer.config.quantization_config\n            elif (quant_type is not None) and (quant_args.get('quantization_config', None) is not None):\n                transformer.quantization_config = quant_args.get('quantization_config', None)\n    except Exception as e:\n        shared.log.error(f'Load model: transformer=\"{repo_id}\" cls={cls_name.__name__} {e}')\n        errors.display(e, 'Load')\n        raise\n    devices.torch_gc()\n    shared.state.end(jobid)\n    return transformer\n\n\ndef load_text_encoder(repo_id, cls_name, load_config=None, subfolder=\"text_encoder\", allow_quant=True, allow_shared=True, variant=None, dtype=None, modules_to_not_convert=None, modules_dtype_dict=None):\n    text_encoder = None\n    if load_config is None:\n        load_config = {}\n    if modules_to_not_convert is None:\n        modules_to_not_convert = []\n    if modules_dtype_dict is None:\n        modules_dtype_dict = {}\n    jobid = shared.state.begin('Load TE')\n    try:\n        load_args, quant_args = model_quant.get_dit_args(load_config, module='TE', device_map=True, allow_quant=allow_quant, modules_to_not_convert=modules_to_not_convert, modules_dtype_dict=modules_dtype_dict)\n        quant_type = model_quant.get_quant_type(quant_args)\n        load_args.pop('torch_dtype', None)\n        dtype = dtype or devices.dtype\n        load_args['dtype'] = dtype\n\n        # load from local file if specified\n        local_file = None\n        if shared.opts.sd_text_encoder is not None and shared.opts.sd_text_encoder != 'Default':\n            from modules import model_te\n            if shared.opts.sd_text_encoder not in list(model_te.te_dict):\n                shared.log.error(f'Load module: type=te file=\"{shared.opts.sd_text_encoder}\" not found')\n            elif os.path.exists(model_te.te_dict[shared.opts.sd_text_encoder]):\n                local_file = model_te.te_dict[shared.opts.sd_text_encoder]\n\n        # load from local file gguf\n        if local_file is not None and local_file.lower().endswith('.gguf'):\n            shared.log.debug(f'Load model: text_encoder=\"{local_file}\" cls={cls_name.__name__} quant=\"{quant_type}\" loader={_loader(\"transformers\")}')\n            \"\"\"\n            from modules import ggml\n            ggml.install_gguf()\n            text_encoder = cls_name.from_pretrained(\n                gguf_file=local_file,\n                quantization_config=diffusers.GGUFQuantizationConfig(compute_dtype=dtype),\n                cache_dir=shared.opts.hfcache_dir,\n                **load_args,\n            )\n            text_encoder = model_quant.do_post_load_quant(text_encoder, allow=quant_type is not None)\n            \"\"\"\n            text_encoder = model_te.load_t5(local_file)\n            text_encoder = model_quant.do_post_load_quant(text_encoder, allow=quant_type is not None)\n\n        # load from local file safetensors\n        elif local_file is not None and local_file.lower().endswith('.safetensors'):\n            shared.log.debug(f'Load model: text_encoder=\"{local_file}\" cls={cls_name.__name__} quant=\"{quant_type}\" loader={_loader(\"transformers\")}')\n            from modules import model_te\n            text_encoder = model_te.load_t5(local_file)\n            text_encoder = model_quant.do_post_load_quant(text_encoder, allow=quant_type is not None)\n\n        # use shared t5 if possible\n        elif cls_name == transformers.T5EncoderModel and allow_shared and shared.opts.te_shared_t5:\n            if model_quant.check_nunchaku('TE'):\n                import nunchaku\n                repo_id = 'nunchaku-tech/nunchaku-t5/awq-int4-flux.1-t5xxl.safetensors'\n                cls_name = nunchaku.NunchakuT5EncoderModel\n                shared.log.debug(f'Load model: text_encoder=\"{repo_id}\" cls={cls_name.__name__} quant=\"SVDQuant\" loader={_loader(\"transformers\")}')\n                text_encoder = nunchaku.NunchakuT5EncoderModel.from_pretrained(\n                    repo_id,\n                    torch_dtype=dtype,\n                )\n                text_encoder.quantization_method = 'SVDQuant'\n            else:\n                if 'sdnq-uint4-svd' in repo_id.lower():\n                    repo_id = 'Disty0/FLUX.1-dev-SDNQ-uint4-svd-r32'\n                    load_args['subfolder'] = 'text_encoder_2'\n                else:\n                    repo_id = 'Disty0/t5-xxl'\n                    with open(os.path.join('configs', 'flux', 'text_encoder_2', 'config.json'), encoding='utf8') as f:\n                        load_args['config'] = transformers.T5Config(**json.load(f))\n                shared.log.debug(f'Load model: text_encoder=\"{repo_id}\" cls={cls_name.__name__} quant=\"{quant_type}\" loader={_loader(\"transformers\")} shared={shared.opts.te_shared_t5}')\n                text_encoder = cls_name.from_pretrained(\n                    repo_id,\n                    cache_dir=shared.opts.hfcache_dir,\n                    **load_args,\n                    **quant_args,\n                )\n        elif cls_name == transformers.UMT5EncoderModel and allow_shared and shared.opts.te_shared_t5:\n            if 'sdnq-uint4-svd' in repo_id.lower():\n                repo_id = 'Disty0/Wan2.2-T2V-A14B-SDNQ-uint4-svd-r32'\n            else:\n                repo_id = 'Wan-AI/Wan2.1-T2V-1.3B-Diffusers'\n            subfolder = 'text_encoder'\n            shared.log.debug(f'Load model: text_encoder=\"{repo_id}\" cls={cls_name.__name__} quant=\"{quant_type}\" loader={_loader(\"transformers\")} shared={shared.opts.te_shared_t5}')\n            text_encoder = cls_name.from_pretrained(\n                repo_id,\n                cache_dir=shared.opts.hfcache_dir,\n                subfolder=subfolder,\n                **load_args,\n                **quant_args,\n            )\n        elif cls_name == transformers.Qwen2_5_VLForConditionalGeneration and allow_shared and shared.opts.te_shared_t5:\n            repo_id = 'hunyuanvideo-community/HunyuanImage-2.1-Diffusers'\n            subfolder = 'text_encoder'\n            shared.log.debug(f'Load model: text_encoder=\"{repo_id}\" cls={cls_name.__name__} quant=\"{quant_type}\" loader={_loader(\"transformers\")} shared={shared.opts.te_shared_t5}')\n            text_encoder = cls_name.from_pretrained(\n                repo_id,\n                cache_dir=shared.opts.hfcache_dir,\n                subfolder=subfolder,\n                **load_args,\n                **quant_args,\n            )\n        # Qwen3ForCausalLM - shared text encoders by hidden_size:\n        # - Z-Image, Klein-4B: Qwen3-4B (hidden_size=2560)\n        # - Klein-9B: Qwen3-8B (hidden_size=4096)\n        # SDNQ repos for Klein and Z-Image contain text encoders pre-quantized with different quantization methods, skip shared loading\n        elif cls_name == transformers.Qwen3ForCausalLM and allow_shared and shared.opts.te_shared_t5 and 'sdnq' not in repo_id.lower():\n            if '-9b' in repo_id.lower():\n                shared_repo = 'black-forest-labs/FLUX.2-klein-9B'  # 9B variants use Qwen3-8B\n            else:\n                shared_repo = 'Tongyi-MAI/Z-Image-Turbo'  # 4B variants and Z-Image use Qwen3-4B\n            subfolder = 'text_encoder'\n            shared.log.debug(f'Load model: text_encoder=\"{shared_repo}\" cls={cls_name.__name__} quant=\"{quant_type}\" loader={_loader(\"transformers\")} shared={shared.opts.te_shared_t5}')\n            text_encoder = cls_name.from_pretrained(\n                shared_repo,\n                cache_dir=shared.opts.hfcache_dir,\n                subfolder=subfolder,\n                **load_args,\n                **quant_args,\n            )\n\n        # load from repo\n        if text_encoder is None:\n            shared.log.debug(f'Load model: text_encoder=\"{repo_id}\" cls={cls_name.__name__} quant=\"{quant_type}\" loader={_loader(\"transformers\")} shared={shared.opts.te_shared_t5}')\n            if subfolder is not None:\n                load_args['subfolder'] = subfolder\n            if variant is not None:\n                load_args['variant'] = variant\n            text_encoder = cls_name.from_pretrained(\n                repo_id,\n                cache_dir=shared.opts.hfcache_dir,\n                **load_args,\n                **quant_args,\n            )\n\n        sd_models.allow_post_quant = False # we already handled it\n        if shared.opts.diffusers_offload_mode != 'none' and text_encoder is not None:\n            sd_models.move_model(text_encoder, devices.cpu)\n\n        if text_encoder is not None and not hasattr(text_encoder, 'quantization_config'): # attach quantization_config\n            if hasattr(text_encoder, 'config') and hasattr(text_encoder.config, 'quantization_config'):\n                text_encoder.quantization_config = text_encoder.config.quantization_config\n            elif (quant_type is not None) and (quant_args.get('quantization_config', None) is not None):\n                text_encoder.quantization_config = quant_args.get('quantization_config', None)\n    except Exception as e:\n        shared.log.error(f'Load model: text_encoder=\"{repo_id}\" cls={cls_name.__name__} {e}')\n        errors.display(e, 'Load')\n        raise\n    devices.torch_gc()\n    shared.state.end(jobid)\n    return text_encoder\n"
  },
  {
    "path": "pipelines/hdm/__init__.py",
    "content": ""
  },
  {
    "path": "pipelines/hdm/hdm/__init__.py",
    "content": "from diffusers.models.modeling_utils import ModelMixin\nfrom .modules.xut import XUDiTConditionModel\nfrom .modules.unet_patch import HDUNet2DConditionModel, RoPEUNet2DConditionModel\n"
  },
  {
    "path": "pipelines/hdm/hdm/data/__init__.py",
    "content": ""
  },
  {
    "path": "pipelines/hdm/hdm/data/base.py",
    "content": "import random\n\nimport numpy as np\nimport torch\nimport torch.utils.data as Data\nfrom transformers import PreTrainedTokenizer\nfrom tqdm import tqdm, trange\n\n\nclass BaseDataset(Data.Dataset):\n    def collate(self, batch):\n        samples = torch.stack([x[\"sample\"] for x in batch])\n        caption = [x[\"caption\"] for x in batch]\n        tokenizer_outs = [x[\"tokenizer_out\"] for x in batch]\n        add_time_ids = [x[\"add_time_ids\"] for x in batch]\n        tokenizer_outputs = []\n        for tokenizer_out in zip(*tokenizer_outs):\n            input_ids = torch.concat([x[\"input_ids\"] for x in tokenizer_out])\n            attention_mask = torch.concat([x[\"attention_mask\"] for x in tokenizer_out])\n            tokenizer_outputs.append(\n                {\"input_ids\": input_ids, \"attention_mask\": attention_mask}\n            )\n        return (\n            samples,\n            caption,\n            tokenizer_outputs,\n            {\"time_ids\": torch.concat(add_time_ids).float()},\n        )\n\n\nclass DummyDataset(BaseDataset):\n    def __init__(\n        self,\n        # (4, 128, 128) for latent\n        sample_size: tuple[int] = (3, 1024, 1024),\n        n_samples: int = 100,\n        tokenizers: list[PreTrainedTokenizer] = [],\n        **kwargs,\n    ):\n        if not isinstance(sample_size, tuple):\n            sample_size = tuple(sample_size)\n        self.samples = [torch.randn(sample_size) for _ in range(n_samples)]\n        if isinstance(tokenizers, list):\n            self.tokenizers = tokenizers\n        else:\n            self.tokenizers = [tokenizers]\n\n    def __len__(self):\n        return len(self.samples)\n\n    def __getitem__(self, index):\n        sample = self.samples[index]\n        caption = \"DUMMY TEST\"\n        return {\n            \"sample\": sample,\n            \"caption\": caption,\n            \"tokenizer_out\": [\n                tokenizer(\n                    caption,\n                    padding=\"max_length\",\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n                for tokenizer in self.tokenizers\n            ],\n            # org_h, org_w, crop_top, crop_left, target_h, target_w\n            \"add_time_ids\": torch.tensor([[1024, 1024, 0, 0, 1024, 1024]]),\n        }\n\n\nclass CombineDataset(Data.Dataset):\n    def __init__(\n        self,\n        datasets: list[Data.Dataset],\n        latent_scale: float = 1.0,\n        latent_shift: float = 0.0,\n        tokenizers: list[PreTrainedTokenizer] = [],\n        shuffle=True,\n        arb_mode=False,\n    ):\n        self.shuffle = shuffle\n        self.datasets_ref = datasets\n        self.datasets = datasets\n        self.shard_string = sum(\n            ([chr(i).encode()] * len(dataset) for i, dataset in enumerate(datasets)),\n            [],\n        )\n        self.tokenizers = tokenizers\n        self.latent_scale = latent_scale\n        self.latent_shift = latent_shift\n\n        if shuffle:\n            random.shuffle(self.shard_string)\n        self.arb_mode = arb_mode\n\n        dataset_ids = [0] * len(datasets)\n        for i, data in tqdm(\n            enumerate(self.shard_string),\n            total=len(self.shard_string),\n            smoothing=0.01,\n            desc=\"Dataset Indexing...\",\n        ):\n            index = dataset_ids[data[0]]\n            dataset_ids[data[0]] += 1\n            self.shard_string[i] = data + np.base_repr(index, 36).encode()\n        self.shard_string = np.array(self.shard_string)\n\n    @torch.no_grad()\n    def collate(self, batch):\n        if self.arb_mode:\n            assert len(batch) == 1\n            latents = batch[0][\"latent\"]\n            caption = batch[0][\"caption\"]\n            pos_map = batch[0][\"pos_map\"]\n            tokenizer_outs = batch[0][\"tokenizer_out\"]\n            if \"aspect_ratio\" in batch[0]:\n                return (\n                    latents,\n                    caption,\n                    tokenizer_outs,\n                    pos_map,\n                    {\"addon_info\": batch[0][\"aspect_ratio\"]},\n                )\n            return latents, caption, tokenizer_outs, pos_map\n        latents = torch.stack([x[\"latent\"] for x in batch])\n        caption = [x[\"caption\"] for x in batch]\n        pos_map = torch.stack([x[\"pos_map\"] for x in batch])\n        tokenizer_outs = [x[\"tokenizer_out\"] for x in batch]\n\n        tokenizer_outputs = []\n        for tokenizer_out in zip(*tokenizer_outs):\n            input_ids = torch.concat([x[\"input_ids\"] for x in tokenizer_out])\n            attention_mask = torch.concat([x[\"attention_mask\"] for x in tokenizer_out])\n            tokenizer_outputs.append(\n                {\"input_ids\": input_ids, \"attention_mask\": attention_mask}\n            )\n        if \"aspect_ratio\" in batch[0]:\n            aspect_ratio = torch.tensor([x[\"aspect_ratio\"] for x in batch])\n            return (\n                latents,\n                caption,\n                tokenizer_outputs,\n                pos_map,\n                {\"addon_info\": aspect_ratio},\n            )\n        return latents, caption, tokenizer_outputs, pos_map\n\n    def __len__(self):\n        return sum(len(dataset) for dataset in self.datasets)\n\n    @torch.no_grad()\n    def __getitem__(self, index):\n        choosed = self.shard_string[index]\n        dataset = self.datasets[choosed[0]]\n        index = int(choosed[1:], 36)\n        latent, caption, pos_map, *ar = dataset[index]\n        if self.arb_mode:\n            tokenizer_out = [\n                [\n                    tokenizer(\n                        c,\n                        padding=\"max_length\",\n                        truncation=True,\n                        return_tensors=\"pt\",\n                    )\n                    for tokenizer in self.tokenizers\n                ]\n                for c in caption\n            ]\n            data = {\n                \"latent\": (latent * self.latent_scale + self.latent_shift),\n                \"caption\": caption,\n                \"pos_map\": pos_map,\n                \"tokenizer_out\": tokenizer_out,\n            }\n            if len(ar) > 0:\n                aspect_ratio = ar[0]\n                data[\"aspect_ratio\"] = aspect_ratio\n            return data\n        tokenizer_out = [\n            tokenizer(\n                caption,\n                padding=\"max_length\",\n                truncation=True,\n                return_tensors=\"pt\",\n            )\n            for tokenizer in self.tokenizers\n        ]\n        data = {\n            \"latent\": (latent * self.latent_scale + self.latent_shift),\n            \"caption\": caption,\n            \"pos_map\": pos_map,\n            \"tokenizer_out\": tokenizer_out,\n        }\n        if len(ar) > 0:\n            aspect_ratio = ar[0]\n            data[\"aspect_ratio\"] = aspect_ratio\n        return data\n\n\nif __name__ == \"__main__\":\n    from transformers import Qwen2Tokenizer\n    from .kohya import *\n\n    tokenizer = Qwen2Tokenizer.from_pretrained(\"Qwen/Qwen3-0.6B\")\n    dataset = KohyaDataset(\n        dataset_folder=\"/mp34-1/danbooru2023\",\n        keep_token_seperator=\"|||\",\n        tag_seperator=\"$$\",\n        seperator=\", \",\n        group_seperator=\"%%\",\n        tag_shuffle=True,\n        group_shuffle=True,\n        tag_dropout_rate=0.0,\n        group_dropout_rate=0.0,\n        use_cached_meta=True,\n        transform=transforms.Compose(\n            [\n                transforms.ToTensor(),\n                transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5), inplace=True),\n            ]\n        ),\n        use_arb=True,\n        arb_config={\n            \"batch_size\": 32,\n            \"target_res\": 1024,\n            \"res_step\": 16,\n            \"seed\": 0,\n        },\n        meta_postfix=\"_filtered\",\n    )\n    combine = CombineDataset(\n        [dataset], tokenizers=[tokenizer], shuffle=True, arb_mode=True\n    )\n\n    print(len(combine))\n\n    dataloader = Data.DataLoader(\n        combine, batch_size=1, num_workers=0, shuffle=True, collate_fn=combine.collate\n    )\n    for batch in tqdm(dataloader):\n        latent, caption, tokenizer_out, pos_map, *ar = batch\n        print(latent.size(), pos_map.size())\n        print(len(caption), caption[0])\n        print(\n            len(tokenizer_out), len(tokenizer_out[0]), tokenizer_out[0][0][\"input_ids\"]\n        )\n        print(len(ar))\n        if len(ar) > 0:\n            print(ar[0])\n        break\n"
  },
  {
    "path": "pipelines/hdm/hdm/data/kohya.py",
    "content": "import os\nimport sys\nimport io\nimport math\nimport random\nimport pickle\nimport tempfile\nfrom collections import defaultdict\n\nimport torch\nimport torchvision.transforms as transforms\nimport torch.utils.data as Data\nimport numpy as np\nimport imagesize\nfrom tqdm import tqdm\nfrom PIL import Image\n\nfrom xut.modules.axial_rope import make_cropped_pos, make_axial_pos_no_cache\n\n\ndef get_files(folder):\n    if os.path.isdir(folder):\n        return [\n            os.path.join(folder, f)\n            for f in os.listdir(folder)\n            if any(f.endswith(ext) for ext in [\".jpg\", \".png\", \".jpeg\", \".webp\"])\n        ]\n    else:\n        return None\n\n\ndef load_npy(path):\n    with open(path, \"rb\") as f:\n        raw_data = f.read()\n    if sys.platform == \"win32\":\n        data = np.load(io.BytesIO(raw_data))\n    else:\n        with tempfile.NamedTemporaryFile() as tmp:\n            tmp.write(raw_data)\n            tmp.flush()\n            data = np.load(tmp.name, mmap_mode=\"r\")\n    return data\n\n\ndef load_pickle(path):\n    with open(path, \"rb\") as f:\n        raw_data = f.read()\n    data = pickle.loads(raw_data)\n    return data\n\n\ndef conver_rgb(x):\n    return x.convert(\"RGB\")\n\n\nclass KohyaDataset(Data.Dataset):\n    def __init__(\n        self,\n        size=1024,\n        dataset_folder=\"/mp34-1/danbooru2023\",\n        transform=None,\n        keep_token_seperator=\"|||\",\n        tag_seperator=\"$$\",\n        seperator=\", \",\n        group_seperator=\"%%\",\n        tag_shuffle=True,\n        group_shuffle=True,\n        tag_dropout_rate=0.25,\n        group_dropout_rate=0.3,\n        use_cached_meta=True,\n        meta_postfix=\"_filtered\",\n    ):\n        self.dataset_folder = dataset_folder\n        if (\n            os.path.isfile(os.path.join(dataset_folder, f\"metadata{meta_postfix}.npy\"))\n            and use_cached_meta\n        ):\n            self.files = load_npy(\n                os.path.join(dataset_folder, f\"metadata{meta_postfix}.npy\")\n            )\n        else:\n            print(\"Cached metadata not found, generating...\")\n            files = []\n            for entry in os.listdir(dataset_folder):\n                if os.path.isdir(os.path.join(dataset_folder, entry)):\n                    files.extend(get_files(os.path.join(dataset_folder, entry)))\n                elif any(\n                    entry.endswith(ext) for ext in [\".jpg\", \".png\", \".jpeg\", \".webp\"]\n                ):\n                    files.append(entry)\n            files = [(i, os.path.splitext(i)[0] + \".txt\") for i in files]\n            self.files = np.array(files)\n            np.save(os.path.join(dataset_folder, f\"metadata{meta_postfix}.npy\"), files)\n            print(\"Cached metadata generated and saved\")\n\n        self.keep_token_seperator = keep_token_seperator\n        self.tag_seperator = tag_seperator\n        self.seperator = seperator\n        self.group_seperator = group_seperator\n        self.tag_shuffle = tag_shuffle\n        self.group_shuffle = group_shuffle\n        self.tag_dropout_rate = tag_dropout_rate\n        self.group_dropout_rate = group_dropout_rate\n\n        self.size = size\n        self.transform = transform or transforms.Compose(\n            [\n                transforms.Lambda(conver_rgb),\n                transforms.Resize(\n                    size, interpolation=transforms.InterpolationMode.BICUBIC\n                ),\n                transforms.ToTensor(),\n                transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5), inplace=True),\n            ]\n        )\n\n    def __len__(self):\n        return len(self.files)\n\n    def get_caption(self, txt_file):\n        if not os.path.isfile(txt_file):\n            return \"\"\n        with open(txt_file, \"r\", encoding=\"utf-8\") as f:\n            caption = f.read()\n\n        if self.keep_token_seperator in caption:\n            keep_tokens, rest = caption.split(self.keep_token_seperator)\n            keep_tokens = [\n                i.strip() for i in keep_tokens.split(self.tag_seperator) if i.strip()\n            ]\n        else:\n            keep_tokens = []\n            rest = caption\n\n        groups = [i.strip() for i in rest.split(self.group_seperator) if i.strip()]\n        if self.group_shuffle:\n            random.shuffle(groups)\n\n        for group in groups:\n            tags = [\n                i.strip()\n                for i in group.split(self.tag_seperator)\n                if i.strip() and random.random() > self.tag_dropout_rate\n            ]\n            if self.tag_shuffle:\n                random.shuffle(tags)\n            if random.random() > self.group_dropout_rate:\n                keep_tokens.extend(tags)\n\n        return self.seperator.join(keep_tokens)\n\n    def get_data_from_files(self, img_file, txt_file, resize=None):\n        img_path = os.path.join(self.dataset_folder, img_file)\n        txt_path = os.path.join(self.dataset_folder, txt_file)\n        caption = self.get_caption(txt_path)\n\n        with Image.open(img_path) as img:\n            if resize:\n                img = img.resize(resize, Image.Resampling.BICUBIC)\n            img_t = self.transform(img)\n        return img_t, caption\n\n    def make_cropped_pos(self, img_t, target_h, target_w):\n        aspect_ratio = target_w / target_h\n        aspect_ratio = math.log(\n            aspect_ratio\n        )  # so we have a:b and b:a have same abs value\n        crop_h, crop_w = 0, 0\n        if target_h > target_w:\n            crop_h = torch.randint(0, target_h - target_w, (1,)).item()\n            img = img_t[:, crop_h : crop_h + target_w, :]\n        elif target_h < target_w:\n            crop_w = torch.randint(0, target_w - target_h, (1,)).item()\n            img = img_t[:, :, crop_w : crop_w + target_h]\n        else:\n            img = img_t\n\n        return img, make_cropped_pos(crop_h, crop_w, target_h, target_w)\n\n    def _getitem(self, img_file, txt_file):\n        img_t, caption = self.get_data_from_files(img_file, txt_file)\n        target_h, target_w = img_t.shape[1:3]\n        aspect_ratio = target_w / target_h\n        img, pos_map = self.make_cropped_pos(img_t, target_h, target_w)\n\n        return img, caption, pos_map, aspect_ratio\n\n    def __getitem__(self, index):\n        img_file, txt_file = self.files[index]\n        return self._getitem(img_file, txt_file)\n\n\nif __name__ == \"__main__\":\n    import random\n\n    dataset = KohyaDataset(\n        dataset_folder=\"/mp34-1/danbooru2023\",\n        keep_token_seperator=\"|||\",\n        tag_seperator=\"$$\",\n        seperator=\", \",\n        group_seperator=\"%%\",\n        tag_shuffle=True,\n        group_shuffle=True,\n        tag_dropout_rate=0.0,\n        group_dropout_rate=0.0,\n        use_cached_meta=True,\n        transform=transforms.Compose(\n            [\n                transforms.ToTensor(),\n                transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5), inplace=True),\n            ]\n        ),\n        use_arb=True,\n        arb_config={\n            \"batch_size\": 32,\n            \"target_res\": 1024,\n            \"res_step\": 16,\n            \"seed\": 0,\n        },\n        meta_postfix=\"_filtered\",\n    )\n\n    print(len(dataset.batches))\n    k, values = dataset.batches[0]\n    print(k)\n    for v in values:\n        print(v)\n"
  },
  {
    "path": "pipelines/hdm/hdm/loader.py",
    "content": "import torch\nfrom diffusers import (\n    EulerDiscreteScheduler,\n    UNet2DConditionModel,\n    AutoencoderKL,\n)\n\nfrom .modules.text_encoders import BaseTextEncoder, SimpleTextEncoder\nfrom .trainer import DMTrainer, FlowTrainer\nfrom .utils import instantiate\n\n\ndef model_loader(\n    unet: UNet2DConditionModel | None = None,\n    unet_class=UNet2DConditionModel,\n    unet_config=None,\n    te: BaseTextEncoder | None = None,\n    te_class=SimpleTextEncoder,\n    te_config={\n        \"te_name\": \"apple/DFN5B-CLIP-ViT-H-14-378\",\n        \"device\": \"cpu\",\n        \"dtype\": torch.float32,\n        \"zero_for_padding\": True,\n    },\n    te_name=\"\",\n    tokenizers: list[dict] | None = None,\n    vae: AutoencoderKL | None = None,\n    vae_class=AutoencoderKL,\n    vae_config=None,\n    vae_name=\"\",\n    scheduler: EulerDiscreteScheduler | None = None,\n    scheduler_class=EulerDiscreteScheduler,\n    scheduler_config=None,\n    scheduler_name=None,\n    type=None,\n):\n    if unet is None:\n        unet = instantiate(unet_class)(**unet_config)\n    else:\n        unet = instantiate(unet)\n    if te is None:\n        if te_name is not None and te_name != \"\":\n            te = instantiate(te_class).from_pretrained(te_name)\n        else:\n            te = instantiate(te_class)(**te_config)\n    else:\n        te = instantiate(te)\n    if vae is not None:\n        vae = instantiate(vae)\n    elif vae_class is not None:\n        if vae_name is not None and vae_name != \"\":\n            vae = instantiate(vae_class).from_pretrained(vae_name)\n        elif vae_config is not None:\n            vae = instantiate(vae_class)(**vae_config)\n    if scheduler is None:\n        if scheduler_name is not None and scheduler_name != \"\":\n            scheduler = instantiate(scheduler_class).from_pretrained(scheduler_name)\n        elif scheduler_class is not None and scheduler_config is not None:\n            scheduler = instantiate(scheduler_class)(**scheduler_config)\n        else:\n            scheduler = None\n    else:\n        scheduler = instantiate(scheduler)\n\n    if hasattr(te, \"tokenizers\"):\n        tokenizers = te.tokenizers\n    elif hasattr(te, \"tokenizer\") and te.tokenizer is not None:\n        tokenizers = [te.tokenizer]\n    elif isinstance(tokenizers, str) and tokenizers != \"\":\n        tokenizers = [instantiate(tokenizers)]\n    elif isinstance(tokenizers, list):\n        tokenizers = [instantiate(tokenizer) for tokenizer in tokenizers]\n    else:\n        tokenizers = None\n\n    return unet, te, tokenizers, vae, scheduler\n\n\ndef load_trainer(conf: dict, unet=None, te=None, vae=None, scheduler=None, type=None):\n    conf = dict(**conf)\n    if unet is not None:\n        conf[\"unet\"] = unet\n    if te is not None:\n        conf[\"te\"] = te\n    if vae is not None:\n        conf[\"vae\"] = vae\n    if scheduler is not None:\n        conf[\"scheduler\"] = scheduler\n    type = type or conf.pop(\"type\", \"dm\")\n    if type == \"dm\":\n        trainer = DMTrainer(**conf)\n    elif type == \"flow\":\n        conf.pop(\"scheduler\")\n        trainer = FlowTrainer(**conf)\n    else:\n        raise NotImplementedError\n    return trainer\n\n\ndef load_model(conf: dict):\n    \"\"\"\n    return unet(dit)/te/vae/scheduler\n    \"\"\"\n    if \"model\" in conf:\n        return model_loader(**conf[\"model\"])\n    return model_loader(**conf)\n\n\ndef load_dataset(conf: dict):\n    dataset = instantiate(conf)\n    return dataset\n\n\ndef load_all(conf: dict):\n    dataset_conf = conf.pop(\"dataset\")\n    dataset = load_dataset(dataset_conf)\n    model_conf = conf.pop(\"model\")\n    unet, te, tokenizers, vae, scheduler = load_model(model_conf)\n    trainer = load_trainer(\n        conf.pop(\"trainer\"), unet=unet, te=te, vae=vae, scheduler=scheduler\n    )\n    dataset.tokenizers = tokenizers\n    return dataset, trainer, (unet, te, tokenizers, vae, scheduler)\n"
  },
  {
    "path": "pipelines/hdm/hdm/modules/base.py",
    "content": "from typing import Any, Dict, Optional, Tuple, Union\n\nimport torch\nimport torch.nn as nn\n\nfrom diffusers import UNet2DConditionModel\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.models.modeling_utils import ModelMixin\nfrom diffusers.models.unets.unet_2d_condition import UNet2DConditionOutput\n\n\nclass BasicUNet(ModelMixin, ConfigMixin):\n    def enable_gradient_checkpointing(self):\n        raise NotImplementedError\n\n    def disable_gradient_checkpointing(self):\n        raise NotImplementedError\n\n    def forward(\n        self,\n        sample: torch.Tensor,\n        timestep: Union[torch.Tensor, float, int],\n        encoder_hidden_states: torch.Tensor,\n        class_labels: Optional[torch.Tensor] = None,\n        timestep_cond: Optional[torch.Tensor] = None,\n        attention_mask: Optional[torch.Tensor] = None,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        added_cond_kwargs: Optional[Dict[str, torch.Tensor]] = None,\n        down_block_additional_residuals: Optional[Tuple[torch.Tensor]] = None,\n        mid_block_additional_residual: Optional[torch.Tensor] = None,\n        down_intrablock_additional_residuals: Optional[Tuple[torch.Tensor]] = None,\n        encoder_attention_mask: Optional[torch.Tensor] = None,\n        return_dict: bool = True,\n    ) -> Union[UNet2DConditionOutput, Tuple]:\n        raise NotImplementedError\n\n\nclass UNetWithPos(UNet2DConditionModel):\n    @register_to_config\n    def __init__(\n        self,\n        sample_size: Optional[Union[int, Tuple[int, int]]] = None,\n        in_channels: int = 4,\n        out_channels: int = 4,\n        center_input_sample: bool = False,\n        flip_sin_to_cos: bool = True,\n        freq_shift: int = 0,\n        down_block_types: Tuple[str] = (\n            \"CrossAttnDownBlock2D\",\n            \"CrossAttnDownBlock2D\",\n            \"CrossAttnDownBlock2D\",\n            \"DownBlock2D\",\n        ),\n        mid_block_type: Optional[str] = \"UNetMidBlock2DCrossAttn\",\n        up_block_types: Tuple[str] = (\n            \"UpBlock2D\",\n            \"CrossAttnUpBlock2D\",\n            \"CrossAttnUpBlock2D\",\n            \"CrossAttnUpBlock2D\",\n        ),\n        only_cross_attention: Union[bool, Tuple[bool]] = False,\n        block_out_channels: Tuple[int] = (320, 640, 1280, 1280),\n        layers_per_block: Union[int, Tuple[int]] = 2,\n        downsample_padding: int = 1,\n        mid_block_scale_factor: float = 1,\n        dropout: float = 0.0,\n        act_fn: str = \"silu\",\n        norm_num_groups: Optional[int] = 32,\n        norm_eps: float = 1e-5,\n        cross_attention_dim: Union[int, Tuple[int]] = 1280,\n        transformer_layers_per_block: Union[int, Tuple[int], Tuple[Tuple]] = 1,\n        reverse_transformer_layers_per_block: Optional[Tuple[Tuple[int]]] = None,\n        encoder_hid_dim: Optional[int] = None,\n        encoder_hid_dim_type: Optional[str] = None,\n        attention_head_dim: Union[int, Tuple[int]] = 8,\n        num_attention_heads: Optional[Union[int, Tuple[int]]] = None,\n        dual_cross_attention: bool = False,\n        use_linear_projection: bool = False,\n        class_embed_type: Optional[str] = None,\n        addition_embed_type: Optional[str] = None,\n        addition_time_embed_dim: Optional[int] = None,\n        num_class_embeds: Optional[int] = None,\n        upcast_attention: bool = False,\n        resnet_time_scale_shift: str = \"default\",\n        resnet_skip_time_act: bool = False,\n        resnet_out_scale_factor: float = 1.0,\n        time_embedding_type: str = \"positional\",\n        time_embedding_dim: Optional[int] = None,\n        time_embedding_act_fn: Optional[str] = None,\n        timestep_post_act: Optional[str] = None,\n        timestep_scale: Optional[float] = 1,\n        time_cond_proj_dim: Optional[int] = None,\n        conv_in_kernel: int = 3,\n        conv_out_kernel: int = 3,\n        projection_class_embeddings_input_dim: Optional[int] = None,\n        attention_type: str = \"default\",\n        class_embeddings_concat: bool = False,\n        mid_block_only_cross_attention: Optional[bool] = None,\n        cross_attention_norm: Optional[str] = None,\n        addition_embed_type_num_heads: int = 64,\n    ):\n        super().__init__(\n            sample_size=sample_size,\n            in_channels=in_channels,\n            out_channels=out_channels,\n            center_input_sample=center_input_sample,\n            flip_sin_to_cos=flip_sin_to_cos,\n            freq_shift=freq_shift,\n            down_block_types=down_block_types,\n            mid_block_type=mid_block_type,\n            up_block_types=up_block_types,\n            only_cross_attention=only_cross_attention,\n            block_out_channels=block_out_channels,\n            layers_per_block=layers_per_block,\n            downsample_padding=downsample_padding,\n            mid_block_scale_factor=mid_block_scale_factor,\n            dropout=dropout,\n            act_fn=act_fn,\n            norm_num_groups=norm_num_groups,\n            norm_eps=norm_eps,\n            cross_attention_dim=cross_attention_dim,\n            transformer_layers_per_block=transformer_layers_per_block,\n            reverse_transformer_layers_per_block=reverse_transformer_layers_per_block,\n            encoder_hid_dim=encoder_hid_dim,\n            encoder_hid_dim_type=encoder_hid_dim_type,\n            attention_head_dim=attention_head_dim,\n            num_attention_heads=num_attention_heads,\n            dual_cross_attention=dual_cross_attention,\n            use_linear_projection=use_linear_projection,\n            class_embed_type=class_embed_type,\n            addition_embed_type=addition_embed_type,\n            addition_time_embed_dim=addition_time_embed_dim,\n            num_class_embeds=num_class_embeds,\n            upcast_attention=upcast_attention,\n            resnet_time_scale_shift=resnet_time_scale_shift,\n            resnet_skip_time_act=resnet_skip_time_act,\n            resnet_out_scale_factor=resnet_out_scale_factor,\n            time_embedding_type=time_embedding_type,\n            time_embedding_dim=time_embedding_dim,\n            time_embedding_act_fn=time_embedding_act_fn,\n            timestep_post_act=timestep_post_act,\n            time_cond_proj_dim=time_cond_proj_dim,\n            conv_in_kernel=conv_in_kernel,\n            conv_out_kernel=conv_out_kernel,\n            projection_class_embeddings_input_dim=projection_class_embeddings_input_dim,\n            attention_type=attention_type,\n            class_embeddings_concat=class_embeddings_concat,\n            mid_block_only_cross_attention=mid_block_only_cross_attention\n            or False,  # default to False\n            cross_attention_norm=cross_attention_norm\n            or \"default\",  # default to \"default\"\n            addition_embed_type_num_heads=addition_embed_type_num_heads,\n        )\n        self.time_proj.scale = timestep_scale\n        self.pos_enc_conv = nn.Conv2d(2, self.conv_in.out_channels, 1, 1, 0)\n        nn.init.zeros_(self.pos_enc_conv.weight)\n        nn.init.zeros_(self.pos_enc_conv.bias)\n\n    def forward(\n        self,\n        sample: torch.Tensor,\n        timestep: Union[torch.Tensor, float, int],\n        encoder_hidden_states: torch.Tensor,\n        class_labels: Optional[torch.Tensor] = None,\n        timestep_cond: Optional[torch.Tensor] = None,\n        attention_mask: Optional[torch.Tensor] = None,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        added_cond_kwargs: Optional[Dict[str, torch.Tensor]] = None,\n        down_block_additional_residuals: Optional[Tuple[torch.Tensor]] = None,\n        mid_block_additional_residual: Optional[torch.Tensor] = None,\n        down_intrablock_additional_residuals: Optional[Tuple[torch.Tensor]] = None,\n        encoder_attention_mask: Optional[torch.Tensor] = None,\n        return_dict: bool = True,\n        pos_map: Optional[torch.Tensor] = None,\n    ) -> Union[UNet2DConditionOutput, Tuple]:\n        B, C, H, W = sample.shape\n        timestep = timestep.view(-1) if isinstance(timestep, torch.Tensor) else timestep\n        pos_map = (\n            pos_map\n            if pos_map is not None\n            else torch.zeros((B, H * W, 2), device=sample.device, dtype=sample.dtype)\n        )\n        pos_map = pos_map.view(B, H, W, 2).permute(0, 3, 1, 2)\n\n        # By default samples have to be AT least a multiple of the overall upsampling factor.\n        # The overall upsampling factor is equal to 2 ** (# num of upsampling layers).\n        # However, the upsampling interpolation output size can be forced to fit any upsampling size\n        # on the fly if necessary.\n        default_overall_up_factor = 2**self.num_upsamplers\n\n        # upsample size should be forwarded when sample is not a multiple of `default_overall_up_factor`\n        forward_upsample_size = False\n        upsample_size = None\n\n        for dim in sample.shape[-2:]:\n            if dim % default_overall_up_factor != 0:\n                # Forward upsample size to force interpolation output size.\n                forward_upsample_size = True\n                break\n\n        # ensure attention_mask is a bias, and give it a singleton query_tokens dimension\n        # expects mask of shape:\n        #   [batch, key_tokens]\n        # adds singleton query_tokens dimension:\n        #   [batch,                    1, key_tokens]\n        # this helps to broadcast it as a bias over attention scores, which will be in one of the following shapes:\n        #   [batch,  heads, query_tokens, key_tokens] (e.g. torch sdp attn)\n        #   [batch * heads, query_tokens, key_tokens] (e.g. xformers or classic attn)\n        if attention_mask is not None:\n            # assume that mask is expressed as:\n            #   (1 = keep,      0 = discard)\n            # convert mask into a bias that can be added to attention scores:\n            #       (keep = +0,     discard = -10000.0)\n            attention_mask = (1 - attention_mask.to(sample.dtype)) * -10000.0\n            attention_mask = attention_mask.unsqueeze(1)\n\n        # convert encoder_attention_mask to a bias the same way we do for attention_mask\n        if encoder_attention_mask is not None:\n            encoder_attention_mask = (\n                1 - encoder_attention_mask.to(sample.dtype)\n            ) * -10000.0\n            encoder_attention_mask = encoder_attention_mask.unsqueeze(1)\n\n        # 0. center input if necessary\n        if self.config.center_input_sample:\n            sample = 2 * sample - 1.0\n\n        # 1. time\n        t_emb = self.get_time_embed(sample=sample, timestep=timestep)\n        emb = self.time_embedding(t_emb, timestep_cond)\n\n        class_emb = self.get_class_embed(sample=sample, class_labels=class_labels)\n        if class_emb is not None:\n            if self.config.class_embeddings_concat:\n                emb = torch.cat([emb, class_emb], dim=-1)\n            else:\n                emb = emb + class_emb\n\n        aug_emb = self.get_aug_embed(\n            emb=emb,\n            encoder_hidden_states=encoder_hidden_states,\n            added_cond_kwargs=added_cond_kwargs,\n        )\n        if self.config.addition_embed_type == \"image_hint\":\n            aug_emb, hint = aug_emb\n            sample = torch.cat([sample, hint], dim=1)\n\n        emb = emb + aug_emb if aug_emb is not None else emb\n\n        if self.time_embed_act is not None:\n            emb = self.time_embed_act(emb)\n\n        encoder_hidden_states = self.process_encoder_hidden_states(\n            encoder_hidden_states=encoder_hidden_states,\n            added_cond_kwargs=added_cond_kwargs,\n        )\n\n        # 2. pre-process\n        sample = self.conv_in(sample)\n        pos_enc = self.pos_enc_conv(pos_map)\n        sample = sample + pos_enc\n\n        # 2.5 GLIGEN position net\n        if (\n            cross_attention_kwargs is not None\n            and cross_attention_kwargs.get(\"gligen\", None) is not None\n        ):\n            cross_attention_kwargs = cross_attention_kwargs.copy()\n            gligen_args = cross_attention_kwargs.pop(\"gligen\")\n            cross_attention_kwargs[\"gligen\"] = {\n                \"objs\": self.position_net(**gligen_args)\n            }\n\n        # 3. down\n        # we're popping the `scale` instead of getting it because otherwise `scale` will be propagated\n        # to the internal blocks and will raise deprecation warnings. this will be confusing for our users.\n        if cross_attention_kwargs is not None:\n            cross_attention_kwargs = cross_attention_kwargs.copy()\n            lora_scale = cross_attention_kwargs.pop(\"scale\", 1.0)\n        else:\n            lora_scale = 1.0\n\n        is_controlnet = (\n            mid_block_additional_residual is not None\n            and down_block_additional_residuals is not None\n        )\n        # using new arg down_intrablock_additional_residuals for T2I-Adapters, to distinguish from controlnets\n        is_adapter = down_intrablock_additional_residuals is not None\n        # maintain backward compatibility for legacy usage, where\n        #       T2I-Adapter and ControlNet both use down_block_additional_residuals arg\n        #       but can only use one or the other\n        if (\n            not is_adapter\n            and mid_block_additional_residual is None\n            and down_block_additional_residuals is not None\n        ):\n            down_intrablock_additional_residuals = down_block_additional_residuals\n            is_adapter = True\n\n        down_block_res_samples = (sample,)\n        for downsample_block in self.down_blocks:\n            if (\n                hasattr(downsample_block, \"has_cross_attention\")\n                and downsample_block.has_cross_attention\n            ):\n                # For t2i-adapter CrossAttnDownBlock2D\n                additional_residuals = {}\n                if is_adapter and len(down_intrablock_additional_residuals) > 0:\n                    additional_residuals[\"additional_residuals\"] = (\n                        down_intrablock_additional_residuals.pop(0)\n                    )\n\n                sample, res_samples = downsample_block(\n                    hidden_states=sample,\n                    temb=emb,\n                    encoder_hidden_states=encoder_hidden_states,\n                    attention_mask=attention_mask,\n                    cross_attention_kwargs=cross_attention_kwargs,\n                    encoder_attention_mask=encoder_attention_mask,\n                    **additional_residuals,\n                )\n            else:\n                sample, res_samples = downsample_block(hidden_states=sample, temb=emb)\n                if is_adapter and len(down_intrablock_additional_residuals) > 0:\n                    sample += down_intrablock_additional_residuals.pop(0)\n\n            down_block_res_samples += res_samples\n\n        if is_controlnet:\n            new_down_block_res_samples = ()\n\n            for down_block_res_sample, down_block_additional_residual in zip(\n                down_block_res_samples, down_block_additional_residuals\n            ):\n                down_block_res_sample = (\n                    down_block_res_sample + down_block_additional_residual\n                )\n                new_down_block_res_samples = new_down_block_res_samples + (\n                    down_block_res_sample,\n                )\n\n            down_block_res_samples = new_down_block_res_samples\n\n        # 4. mid\n        if self.mid_block is not None:\n            if (\n                hasattr(self.mid_block, \"has_cross_attention\")\n                and self.mid_block.has_cross_attention\n            ):\n                sample = self.mid_block(\n                    sample,\n                    emb,\n                    encoder_hidden_states=encoder_hidden_states,\n                    attention_mask=attention_mask,\n                    cross_attention_kwargs=cross_attention_kwargs,\n                    encoder_attention_mask=encoder_attention_mask,\n                )\n            else:\n                sample = self.mid_block(sample, emb)\n\n            # To support T2I-Adapter-XL\n            if (\n                is_adapter\n                and len(down_intrablock_additional_residuals) > 0\n                and sample.shape == down_intrablock_additional_residuals[0].shape\n            ):\n                sample += down_intrablock_additional_residuals.pop(0)\n\n        if is_controlnet:\n            sample = sample + mid_block_additional_residual\n\n        # 5. up\n        for i, upsample_block in enumerate(self.up_blocks):\n            is_final_block = i == len(self.up_blocks) - 1\n\n            res_samples = down_block_res_samples[-len(upsample_block.resnets) :]\n            down_block_res_samples = down_block_res_samples[\n                : -len(upsample_block.resnets)\n            ]\n\n            # if we have not reached the final block and need to forward the\n            # upsample size, we do it here\n            if not is_final_block and forward_upsample_size:\n                upsample_size = down_block_res_samples[-1].shape[2:]\n\n            if (\n                hasattr(upsample_block, \"has_cross_attention\")\n                and upsample_block.has_cross_attention\n            ):\n                sample = upsample_block(\n                    hidden_states=sample,\n                    temb=emb,\n                    res_hidden_states_tuple=res_samples,\n                    encoder_hidden_states=encoder_hidden_states,\n                    cross_attention_kwargs=cross_attention_kwargs,\n                    upsample_size=upsample_size,\n                    attention_mask=attention_mask,\n                    encoder_attention_mask=encoder_attention_mask,\n                )\n            else:\n                sample = upsample_block(\n                    hidden_states=sample,\n                    temb=emb,\n                    res_hidden_states_tuple=res_samples,\n                    upsample_size=upsample_size,\n                )\n\n        # 6. post-process\n        if self.conv_norm_out:\n            sample = self.conv_norm_out(sample)\n            sample = self.conv_act(sample)\n        sample = self.conv_out(sample)\n\n        if not return_dict:\n            return (sample,)\n\n        return UNet2DConditionOutput(sample=sample)\n"
  },
  {
    "path": "pipelines/hdm/hdm/modules/rope.py",
    "content": "import math\nfrom functools import cache\n\nimport torch\nimport torch.nn as nn\nimport torch.nn.functional as F\n\n\n@cache\ndef bounding_box(h, w, pixel_aspect_ratio=1.0):\n    # Adjusted dimensions\n    w_adj = w\n    h_adj = h * pixel_aspect_ratio\n\n    # Adjusted aspect ratio\n    ar_adj = w_adj / h_adj\n\n    # Determine bounding box based on the adjusted aspect ratio\n    y_min, y_max, x_min, x_max = -1.0, 1.0, -1.0, 1.0\n    if ar_adj > 1:\n        y_min, y_max = -1 / ar_adj, 1 / ar_adj\n    elif ar_adj < 1:\n        x_min, x_max = -ar_adj, ar_adj\n\n    return y_min, y_max, x_min, x_max\n\n\n@cache\ndef make_grid(h_pos, w_pos):\n    grid = torch.stack(torch.meshgrid(h_pos, w_pos, indexing=\"ij\"), dim=-1)\n    h, w, d = grid.shape\n    return grid.view(h * w, d)\n\n\n@cache\ndef centers(start, stop, num, dtype=None, device=None):\n    edges = torch.linspace(start, stop, num + 1, dtype=dtype, device=device)\n    return (edges[:-1] + edges[1:]) / 2\n\n\n@cache\ndef make_axial_pos(\n    h, w, pixel_aspect_ratio=1.0, align_corners=False, dtype=None, device=None\n):\n    y_min, y_max, x_min, x_max = bounding_box(h, w, pixel_aspect_ratio)\n    if align_corners:\n        h_pos = torch.linspace(y_min, y_max, h, dtype=dtype, device=device)\n        w_pos = torch.linspace(x_min, x_max, w, dtype=dtype, device=device)\n    else:\n        h_pos = centers(y_min, y_max, h, dtype=dtype, device=device)\n        w_pos = centers(x_min, x_max, w, dtype=dtype, device=device)\n    return make_grid(h_pos, w_pos)\n\n\ndef rotate_half(x):\n    x = torch.stack((-x[..., 0::2], x[..., 1::2]), dim=-1)\n    return x.flatten(-2, -1)\n\n\ndef apply_rotary_emb(freqs, t, start_index=0, scale=1.0):\n    freqs = freqs.to(t)\n    rot_dim = freqs.shape[-1]\n    end_index = start_index + rot_dim\n    t_left, t, t_right = (\n        t[..., :start_index],\n        t[..., start_index:end_index],\n        t[..., end_index:],\n    )\n    t = (t * freqs.cos() * scale) + (rotate_half(t) * freqs.sin() * scale)\n    return torch.cat((t_left, t, t_right), dim=-1)\n\n\ndef freqs_pixel_log(max_freq=10.0):\n    def init(shape):\n        log_min = math.log(math.pi)\n        log_max = math.log(max_freq * math.pi / 2)\n        return torch.linspace(log_min, log_max, shape[-1]).expand(shape)\n\n    return init\n\n\nclass AxialRoPE(nn.Module):\n    def __init__(\n        self, dim, n_heads, start_index=0, freqs_init=freqs_pixel_log(max_freq=10.0)\n    ):\n        super().__init__()\n        self.n_heads = n_heads\n        self.start_index = start_index\n        log_freqs = freqs_init((n_heads, dim // 4))\n        self.freqs_h = nn.Parameter(log_freqs.clone())\n        self.freqs_w = nn.Parameter(log_freqs.clone())\n\n    def extra_repr(self):\n        dim = (self.freqs_h.shape[-1] + self.freqs_w.shape[-1]) * 2\n        return f\"dim={dim}, n_heads={self.n_heads}, start_index={self.start_index}\"\n\n    def get_freqs(self, pos):\n        if pos.shape[-1] != 2:\n            raise ValueError(\"input shape must be (..., 2)\")\n        freqs_h = pos[..., None, None, 0] * self.freqs_h.exp()\n        freqs_w = pos[..., None, None, 1] * self.freqs_w.exp()\n        freqs = torch.cat((freqs_h, freqs_w), dim=-1).repeat_interleave(2, dim=-1)\n        return freqs\n\n    def forward(self, x, pos):\n        freqs = self.get_freqs(pos)\n        return apply_rotary_emb(freqs, x, self.start_index)\n"
  },
  {
    "path": "pipelines/hdm/hdm/modules/text_encoders.py",
    "content": "from typing import Any\n\nimport torch\nimport torch.nn as nn\nimport torch.nn.functional as F\nfrom transformers import AutoTokenizer, CLIPTextModel, T5EncoderModel, Qwen2Model\n\nfrom ..utils import remove_none, instantiate\n\n\nclass BaseTextEncoder(nn.Module):\n    def __init__(self):\n        super().__init__()\n        self.tokenizer = None\n        self.text_model = None\n\n    def tokenize(self, text: str) -> list[int] | list[list[int]] | torch.LongTensor:\n        raise NotImplementedError\n\n    def encode(self, text: str) -> torch.Tensor:\n        raise NotImplementedError\n\n    def forward(self, tokenizer_outputs: list[dict[str, torch.Tensor]]):\n        raise NotImplementedError\n\n\nclass SimpleTextEncoder(BaseTextEncoder):\n    def __init__(\n        self,\n        te_name: str = \"apple/DFN5B-CLIP-ViT-H-14-378\",\n        te_cls: type = CLIPTextModel,\n        te_kwargs: dict[str, Any] = {},\n        zero_for_padding: bool = True,\n        max_length: int = 256,\n    ):\n        super().__init__()\n        self.tokenizers = [AutoTokenizer.from_pretrained(te_name, **te_kwargs)]\n        for tokenizer in self.tokenizers:\n            if not tokenizer.pad_token:\n                tokenizer.pad_token = tokenizer.eos_token\n            if tokenizer.model_max_length > max_length:\n                tokenizer.model_max_length = max_length\n\n        self.text_model = (\n            instantiate(te_cls).from_pretrained(te_name).to(self.device_type)\n        )\n        self.zero_for_padding = zero_for_padding\n\n    def tokenize(self, text, **kwargs):\n        return [self.tokenizers[0](text, **kwargs)]\n\n    def encode(self, text, **kwargs):\n        return self.forward(self.tokenize(text, **kwargs))\n\n    def forward(self, tokenizers_outputs):\n        tokens = tokenizers_outputs[0]\n        text_model = self.text_model\n\n        input_ids = tokens[\"input_ids\"].to(self.device_type.device)\n        attn_mask = tokens[\"attention_mask\"].to(self.device_type.device)\n\n        # In CLIP we have `last_hidden_state = self.final_layer_norm(last_hidden_state)`\n        # The pooled embedding is also normalized\n        normed_embedding, pooled_embedding, *embeddings = text_model(\n            input_ids,\n            attention_mask=attn_mask,\n            output_hidden_states=True,\n            return_dict=False,\n        )\n        if len(embeddings):\n            embedding = embeddings[-1][-1]\n        else:\n            embedding = pooled_embedding[-1]\n            pooled_embedding = None\n        if self.zero_for_padding:\n            while embedding.ndim > attn_mask.ndim:\n                attn_mask = attn_mask.unsqueeze(-1)\n            embedding = embedding * attn_mask\n            normed_embedding = normed_embedding * attn_mask\n        return embedding, normed_embedding, pooled_embedding, attn_mask\n\n\nclass ConcatTextEncoders(BaseTextEncoder):\n    DEFAULT_SETTINGS = {\n        \"disable_autocast\": False,\n        \"concat_buckets\": 0,\n        \"use_pooled\": False,\n        \"need_mask\": False,\n        \"layer_ids\": -1,\n    }\n\n    def __init__(\n        self,\n        tokenizers: list[str] = [],\n        text_models: list[dict] = [],\n        zero_for_padding: bool = True,\n        max_length: int = 256,\n        model_dim: int = -1,\n        output_dim: int = -1,\n        pooled_dim: int = -1,\n        extra_mlp: bool = False,\n    ):\n        \"\"\"\n        A text encoder wrapper for multiple tokenizers and text models.\n        Can support tricky concat config like what SD3 need\n\n        SDXL:\n            tes: [CLIP-L, openCLIP-G]\n            concat_buckets: [0, 0]\n            use_pooled: [True, True]\n            layer_index: [-1, -2]\n        SD3:\n            tes: [CLIP-L, openCLIP-G, T5-xxl]\n            concat_buckets: [0, 0, 1]\n            use_pooled: [True, True, False]\n        \"\"\"\n        super().__init__()\n        self.tokenizers = [\n            AutoTokenizer.from_pretrained(tokenizer) for tokenizer in tokenizers\n        ]\n        for tokenizer in self.tokenizers:\n            if not tokenizer.pad_token:\n                tokenizer.pad_token = tokenizer.eos_token\n            if tokenizer.model_max_length > max_length:\n                tokenizer.model_max_length = max_length\n\n        text_models_configs = [\n            (instantiate(config.pop(\"model\")), {**config}) for config in text_models\n        ]\n        self.max_bucket = max([i[1][\"concat_buckets\"] for i in text_models_configs])\n        self.register_buffer(\"_device\", torch.tensor(0), persistent=False)\n\n        self.text_models = nn.ModuleList([i[0] for i in text_models_configs])\n        self.configs = [i[1] for i in text_models_configs]\n        self.zero_for_padding = zero_for_padding\n\n        self.emb_mlp = self.pool_mlp = None\n        if extra_mlp and model_dim != -1:\n            if output_dim != -1:\n                self.emb_mlp = nn.Sequential(\n                    nn.LayerNorm(model_dim),\n                    nn.Linear(model_dim, model_dim * 4),\n                    nn.Mish(),\n                    nn.Linear(model_dim * 4, output_dim),\n                )\n            if pooled_dim != -1:\n                self.pool_mlp = nn.Sequential(\n                    nn.LayerNorm(model_dim),\n                    nn.Linear(model_dim, model_dim * 4),\n                    nn.Mish(),\n                    nn.Linear(model_dim * 4, pooled_dim),\n                )\n\n    def trainable_modules(self):\n        results = []\n        if self.emb_mlp is not None:\n            results.append(self.emb_mlp)\n        if self.pool_mlp is not None:\n            results.append(self.pool_mlp)\n        return results\n\n    def trainable_params(self):\n        results = []\n        if self.emb_mlp is not None:\n            results.extend(self.emb_mlp.parameters())\n        if self.pool_mlp is not None:\n            results.extend(self.pool_mlp.parameters())\n        return results\n\n    @property\n    def device(self):\n        return self._device.device\n\n    def tokenize(self, text, **kwargs):\n        results = []\n        for tokenizer in self.tokenizers:\n            results.append(tokenizer(text, **kwargs, return_tensors=\"pt\"))\n        return results\n\n    def encode(self, text, **kwargs):\n        return self.forward(self.tokenize(text, **kwargs))\n\n    def forward(\n        self, tokenizers_outputs\n    ) -> tuple[torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor]:\n        \"\"\"\n        Returns:\n            embedding: torch.Tensor\n            normed_embedding: torch.Tensor\n            pooled_embedding: torch.Tensor\n            attn_mask: torch.Tensor\n        \"\"\"\n        attn_masks = [None for _ in range(self.max_bucket + 1)]\n        text_embeddings = [[] for _ in range(self.max_bucket + 1)]\n        normed_text_embeddings = [[] for _ in range(self.max_bucket + 1)]\n        pooled_text_embeddings = [[] for _ in range(self.max_bucket + 1)]\n        for idx, (tokens, text_model, config) in enumerate(\n            zip(tokenizers_outputs, self.text_models, self.configs)\n        ):\n            bucket = config[\"concat_buckets\"]\n            need_mask = config[\"need_mask\"]\n            use_pooled = config[\"use_pooled\"]\n            layer_idx = config[\"layer_idx\"]\n            disable_autocast = config[\"disable_autocast\"]\n\n            input_ids = tokens[\"input_ids\"].to(self.device)\n            attn_mask = tokens[\"attention_mask\"].to(self.device)\n            if attn_masks[bucket] is None and need_mask:\n                attn_masks[bucket] = attn_mask\n\n            with torch.autocast(\"cuda\", enabled=not disable_autocast):\n                output = text_model(\n                    input_ids,\n                    attention_mask=attn_mask,\n                    output_hidden_states=True,\n                    return_dict=True,\n                )\n                normed_embedding = output.last_hidden_state\n                # The case of CLIP\n                if hasattr(output, \"pooler_output\"):\n                    # embeddings is tuple\n                    embedding = output.hidden_states[layer_idx]\n                    pooled_embedding = output.pooler_output\n                # The case of T5 or other models\n                else:\n                    embedding = output.hidden_states[-1]\n                    pooled_embedding = torch.zeros_like(embedding[:, 0, :])\n\n            if self.zero_for_padding:\n                while embedding.ndim > attn_mask.ndim:\n                    attn_mask = attn_mask.unsqueeze(-1)\n                embedding = embedding * attn_mask\n                normed_embedding = normed_embedding * attn_mask\n            text_embeddings[bucket].append(embedding)\n            normed_text_embeddings[bucket].append(normed_embedding)\n            if use_pooled:\n                pooled_text_embeddings[bucket].append(pooled_embedding)\n\n        for i in range(len(text_embeddings)):\n            if text_embeddings[i] == []:\n                text_embeddings[i] = None\n                normed_text_embeddings[i] = None\n                pooled_text_embeddings[i] = None\n                continue\n            text_embeddings[i] = torch.cat(text_embeddings[i], dim=-1)\n            normed_text_embeddings[i] = torch.cat(normed_text_embeddings[i], dim=-1)\n            if pooled_text_embeddings[i] == []:\n                pooled_text_embeddings[i] = None\n                continue\n            pooled_text_embeddings[i] = torch.cat(pooled_text_embeddings[i], dim=-1)\n\n        max_dim = max(\n            embedding.size(-1) for embedding in text_embeddings if embedding is not None\n        )\n        for idx, embedding in enumerate(text_embeddings):\n            if embedding is None:\n                continue\n            if embedding.size(-1) < max_dim:\n                text_embeddings[idx] = torch.nn.functional.pad(\n                    embedding, (0, max_dim - embedding.size(-1))\n                )\n        for idx, embedding in enumerate(normed_text_embeddings):\n            if embedding is None:\n                continue\n            if embedding.size(-1) < max_dim:\n                normed_text_embeddings[idx] = torch.nn.functional.pad(\n                    embedding, (0, max_dim - embedding.size(-1))\n                )\n        if any(mask is not None for mask in attn_masks):\n            for idx, embedding in enumerate(text_embeddings):\n                if embedding is None:\n                    continue\n                elif attn_masks[idx] is None:\n                    attn_masks[idx] = torch.ones(\n                        embedding.size(0), embedding.size(1), device=embedding.device\n                    ).long()\n            attn_masks = torch.cat(remove_none(attn_masks), dim=1)\n        else:\n            attn_masks = None\n        if any(pooled is not None for pooled in pooled_text_embeddings):\n            pooled_text_embeddings = torch.cat(\n                remove_none(pooled_text_embeddings), dim=-1\n            )\n        else:\n            pooled_text_embeddings = None\n        text_embeddings = torch.cat(remove_none(text_embeddings), dim=1)\n        normed_text_embeddings = torch.cat(remove_none(normed_text_embeddings), dim=1)\n\n        if self.emb_mlp is not None:\n            text_embeddings = self.emb_mlp(text_embeddings)\n            normed_text_embeddings = self.emb_mlp(normed_text_embeddings)\n        if self.pool_mlp is not None and pooled_text_embeddings is not None:\n            pooled_text_embeddings = self.pool_mlp(pooled_text_embeddings)\n\n        return (\n            normed_text_embeddings,\n            text_embeddings,\n            pooled_text_embeddings,\n            attn_masks,\n        )\n\n\nif __name__ == \"__main__\":\n    te = ConcatTextEncoders(\n        tokenizers=[\n            \"openai/clip-vit-large-patch14\",\n            \"laion/CLIP-ViT-bigG-14-laion2B-39B-b160k\",\n            \"google/t5-v1_1-xxl\",\n        ],\n        text_models=[\n            (CLIPTextModel, \"openai/clip-vit-large-patch14\", {}),\n            (CLIPTextModel, \"laion/CLIP-ViT-bigG-14-laion2B-39B-b160k\", {}),\n            (\n                T5EncoderModel,\n                \"google/t5-v1_1-xxl\",\n                {},\n            ),  # Need `pip install sentencepiece`\n        ],\n        concat_buckets=[0, 0, 1],\n        use_pooled=[True, True, False],\n        layer_idx=[-1, -2, -1],\n        need_mask=[False, False, True],\n        device=\"cuda\" if torch.cuda.is_available() else \"cpu\",\n    )\n    with torch.no_grad():\n        text_embeddings, normed_text_embeddings, pooled_text_embeddings, attn_masks = (\n            te.encode(\"hello\")\n        )\n        print(text_embeddings.shape, normed_text_embeddings.shape)\n        print(pooled_text_embeddings.shape)\n"
  },
  {
    "path": "pipelines/hdm/hdm/modules/unet_patch.py",
    "content": "import json\nfrom typing import Any, Optional, Dict\n\nimport torch\nimport torch.nn as nn\nimport torch.nn.functional as F\n\nfrom diffusers import UNet2DConditionModel\nfrom diffusers.models.unets.unet_2d_blocks import (\n    ResnetBlock2D,\n)\nfrom diffusers.models.transformers.transformer_2d import (\n    Transformer2DModel,\n    Transformer2DModelOutput,\n)\nfrom diffusers.models.attention import BasicTransformerBlock\nfrom diffusers.models.attention_processor import (\n    Attention,\n    XFormersAttnProcessor,\n    AttnProcessor2_0,\n)\n\ntry:\n    import xformers\n    import xformers.ops\nexcept ImportError:\n    xformers = None\n\nfrom .rope import AxialRoPE, make_axial_pos\nfrom ..utils import instantiate\n\n\nclass RoPEAttention(Attention):\n    def __init__(self, *args, **kwargs):\n        super().__init__(*args, **kwargs)\n\n        head_dim = self.inner_dim // self.heads\n        self.axial_rope = AxialRoPE(head_dim, self.heads)\n        self.set_processor(RoPEAttnProcessor2_0())\n\n    @classmethod\n    def apply_to(cls, original: Attention):\n        original.axial_rope = AxialRoPE(\n            original.inner_dim // original.heads, original.heads\n        )\n        original.set_processor(RoPEAttnProcessor2_0())\n        original.forward = lambda *args, **kwargs: cls.forward(\n            original, *args, **kwargs\n        )\n        return original\n\n    def forward(\n        self,\n        hidden_states: torch.Tensor,\n        position_map: torch.Tensor,\n        encoder_hidden_states: Optional[torch.Tensor] = None,\n        attention_mask: Optional[torch.Tensor] = None,\n        **cross_attention_kwargs,\n    ) -> torch.Tensor:\n        return self.processor(\n            self,\n            hidden_states,\n            position_map,\n            encoder_hidden_states,\n            attention_mask,\n            **cross_attention_kwargs,\n        )\n\n\nclass RoPEAttnProcessor2_0(AttnProcessor2_0):\n    def __call__(\n        self,\n        attn: RoPEAttention,\n        hidden_states: torch.Tensor,\n        position_map: torch.Tensor,\n        encoder_hidden_states: Optional[torch.Tensor] = None,\n        attention_mask: Optional[torch.Tensor] = None,\n        temb: Optional[torch.Tensor] = None,\n        *args,\n        **kwargs,\n    ) -> torch.Tensor:\n        residual = hidden_states\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(\n                batch_size, channel, height * width\n            ).transpose(1, 2)\n\n        batch_size, sequence_length, _ = (\n            hidden_states.shape\n            if encoder_hidden_states is None\n            else encoder_hidden_states.shape\n        )\n\n        if attention_mask is not None:\n            attention_mask = attn.prepare_attention_mask(\n                attention_mask, sequence_length, batch_size\n            )\n            # scaled_dot_product_attention expects attention_mask shape to be\n            # (batch, heads, source_length, target_length)\n            attention_mask = attention_mask.view(\n                batch_size, attn.heads, -1, attention_mask.shape[-1]\n            )\n\n        if attn.group_norm is not None:\n            hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(\n                1, 2\n            )\n\n        query = attn.to_q(hidden_states)\n\n        rotary_k = False\n        if encoder_hidden_states is None:\n            rotary_k = True\n            encoder_hidden_states = hidden_states\n        elif attn.norm_cross:\n            encoder_hidden_states = attn.norm_encoder_hidden_states(\n                encoder_hidden_states\n            )\n\n        key = attn.to_k(encoder_hidden_states)\n        value = attn.to_v(encoder_hidden_states)\n\n        inner_dim = key.shape[-1]\n        head_dim = inner_dim // attn.heads\n\n        query = query.view(batch_size, -1, attn.heads, head_dim)\n\n        key = key.view(batch_size, -1, attn.heads, head_dim)\n        value = value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        query = attn.axial_rope(query, position_map).transpose(1, 2)\n        if rotary_k:\n            key = attn.axial_rope(key, position_map).transpose(1, 2)\n        else:\n            key = key.transpose(1, 2)\n\n        # the output of sdp = (batch, num_heads, seq_len, head_dim)\n        hidden_states = F.scaled_dot_product_attention(\n            query, key, value, attn_mask=attention_mask, dropout_p=0.0, is_causal=False\n        )\n\n        hidden_states = hidden_states.transpose(1, 2).reshape(\n            batch_size, -1, attn.heads * head_dim\n        )\n        hidden_states = hidden_states.to(query.dtype)\n\n        # linear proj\n        hidden_states = attn.to_out[0](hidden_states)\n        # dropout\n        hidden_states = attn.to_out[1](hidden_states)\n\n        if input_ndim == 4:\n            hidden_states = hidden_states.transpose(-1, -2).reshape(\n                batch_size, channel, height, width\n            )\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n\n\nclass RoPEXFormersAttnProcessor(XFormersAttnProcessor):\n    def __call__(\n        self,\n        attn: RoPEAttention,\n        hidden_states: torch.Tensor,\n        position_map: torch.Tensor,\n        encoder_hidden_states: Optional[torch.Tensor] = None,\n        attention_mask: Optional[torch.Tensor] = None,\n        temb: Optional[torch.Tensor] = None,\n        *args,\n        **kwargs,\n    ) -> torch.Tensor:\n        residual = hidden_states\n\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(\n                batch_size, channel, height * width\n            ).transpose(1, 2)\n\n        batch_size, key_tokens, _ = (\n            hidden_states.shape\n            if encoder_hidden_states is None\n            else encoder_hidden_states.shape\n        )\n\n        attention_mask = attn.prepare_attention_mask(\n            attention_mask, key_tokens, batch_size\n        )\n        if attention_mask is not None:\n            _, query_tokens, _ = hidden_states.shape\n            attention_mask = attention_mask.expand(-1, query_tokens, -1)\n        if attention_mask is not None and attention_mask.ndim == 3:\n            attention_mask = attention_mask.reshape(\n                batch_size, -1, *attention_mask.shape[-2:]\n            )\n\n        if attn.group_norm is not None:\n            hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(\n                1, 2\n            )\n\n        query = attn.to_q(hidden_states)\n\n        rotary_k = False\n        if encoder_hidden_states is None:\n            rotary_k = True\n            encoder_hidden_states = hidden_states\n        elif attn.norm_cross:\n            encoder_hidden_states = attn.norm_encoder_hidden_states(\n                encoder_hidden_states\n            )\n\n        key = attn.to_k(encoder_hidden_states)\n        value = attn.to_v(encoder_hidden_states)\n\n        inner_dim = key.shape[-1]\n        head_dim = inner_dim // attn.heads\n        query = query.reshape(batch_size, -1, attn.heads, head_dim)\n        key = key.reshape(batch_size, -1, attn.heads, head_dim)\n        value = value.reshape(batch_size, -1, attn.heads, head_dim)\n\n        query = attn.axial_rope(query, position_map)\n        if rotary_k:\n            key = attn.axial_rope(key, position_map)\n\n        if attention_mask is not None:\n            attention_mask = attention_mask.to(query)\n        hidden_states = xformers.ops.memory_efficient_attention(\n            query,\n            key,\n            value,\n            attn_bias=attention_mask,\n            op=self.attention_op,\n            scale=attn.scale,\n        )\n        hidden_states = hidden_states.to(query.dtype)\n        hidden_states = hidden_states.reshape(batch_size, -1, inner_dim)\n\n        # linear proj\n        hidden_states = attn.to_out[0](hidden_states)\n        # dropout\n        hidden_states = attn.to_out[1](hidden_states)\n\n        if input_ndim == 4:\n            hidden_states = hidden_states.transpose(-1, -2).reshape(\n                batch_size, channel, height, width\n            )\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n\n\nclass RoPEBasicTransformerBlock(BasicTransformerBlock):\n    @classmethod\n    def apply_to(cls, original: BasicTransformerBlock):\n        original.forward = lambda *args, **kwargs: cls.forward(\n            original, *args, **kwargs\n        )\n        for module in original.modules():\n            if isinstance(module, Attention):\n                RoPEAttention.apply_to(module)\n\n    def forward(\n        self,\n        hidden_states: torch.Tensor,\n        position_map: Optional[torch.Tensor] = None,\n        attention_mask: Optional[torch.Tensor] = None,\n        encoder_hidden_states: Optional[torch.Tensor] = None,\n        encoder_attention_mask: Optional[torch.Tensor] = None,\n        timestep: Optional[torch.LongTensor] = None,\n        cross_attention_kwargs: Dict[str, Any] = None,\n        class_labels: Optional[torch.LongTensor] = None,\n        added_cond_kwargs: Optional[Dict[str, torch.Tensor]] = None,\n    ) -> torch.Tensor:\n        # Notice that normalization is always applied before the real computation in the following blocks.\n        # 0. Self-Attention\n        batch_size = hidden_states.shape[0]\n\n        if self.norm_type == \"ada_norm\":\n            norm_hidden_states = self.norm1(hidden_states, timestep)\n        elif self.norm_type == \"ada_norm_zero\":\n            norm_hidden_states, gate_msa, shift_mlp, scale_mlp, gate_mlp = self.norm1(\n                hidden_states, timestep, class_labels, hidden_dtype=hidden_states.dtype\n            )\n        elif self.norm_type in [\"layer_norm\", \"layer_norm_i2vgen\"]:\n            norm_hidden_states = self.norm1(hidden_states)\n        elif self.norm_type == \"ada_norm_continuous\":\n            norm_hidden_states = self.norm1(\n                hidden_states, added_cond_kwargs[\"pooled_text_emb\"]\n            )\n        elif self.norm_type == \"ada_norm_single\":\n            shift_msa, scale_msa, gate_msa, shift_mlp, scale_mlp, gate_mlp = (\n                self.scale_shift_table[None] + timestep.reshape(batch_size, 6, -1)\n            ).chunk(6, dim=1)\n            norm_hidden_states = self.norm1(hidden_states)\n            norm_hidden_states = norm_hidden_states * (1 + scale_msa) + shift_msa\n            norm_hidden_states = norm_hidden_states.squeeze(1)\n        else:\n            raise ValueError(\"Incorrect norm used\")\n\n        if self.pos_embed is not None:\n            norm_hidden_states = self.pos_embed(norm_hidden_states)\n\n        # 1. Prepare GLIGEN inputs\n        cross_attention_kwargs = (\n            cross_attention_kwargs.copy() if cross_attention_kwargs is not None else {}\n        )\n        gligen_kwargs = cross_attention_kwargs.pop(\"gligen\", None)\n\n        attn_output = self.attn1(\n            norm_hidden_states,\n            position_map,\n            encoder_hidden_states=(\n                encoder_hidden_states if self.only_cross_attention else None\n            ),\n            attention_mask=attention_mask,\n            **cross_attention_kwargs,\n        )\n        if self.norm_type == \"ada_norm_zero\":\n            attn_output = gate_msa.unsqueeze(1) * attn_output\n        elif self.norm_type == \"ada_norm_single\":\n            attn_output = gate_msa * attn_output\n\n        hidden_states = attn_output + hidden_states\n        if hidden_states.ndim == 4:\n            hidden_states = hidden_states.squeeze(1)\n\n        # 1.2 GLIGEN Control\n        if gligen_kwargs is not None:\n            hidden_states = self.fuser(hidden_states, gligen_kwargs[\"objs\"])\n\n        # 3. Cross-Attention\n        if self.attn2 is not None:\n            if self.norm_type == \"ada_norm\":\n                norm_hidden_states = self.norm2(hidden_states, timestep)\n            elif self.norm_type in [\"ada_norm_zero\", \"layer_norm\", \"layer_norm_i2vgen\"]:\n                norm_hidden_states = self.norm2(hidden_states)\n            elif self.norm_type == \"ada_norm_single\":\n                # For PixArt norm2 isn't applied here:\n                # https://github.com/PixArt-alpha/PixArt-alpha/blob/0f55e922376d8b797edd44d25d0e7464b260dcab/diffusion/model/nets/PixArtMS.py#L70C1-L76C103\n                norm_hidden_states = hidden_states\n            elif self.norm_type == \"ada_norm_continuous\":\n                norm_hidden_states = self.norm2(\n                    hidden_states, added_cond_kwargs[\"pooled_text_emb\"]\n                )\n            else:\n                raise ValueError(\"Incorrect norm\")\n\n            if self.pos_embed is not None and self.norm_type != \"ada_norm_single\":\n                norm_hidden_states = self.pos_embed(norm_hidden_states)\n\n            attn_output = self.attn2(\n                norm_hidden_states,\n                position_map,\n                encoder_hidden_states=encoder_hidden_states,\n                attention_mask=encoder_attention_mask,\n                **cross_attention_kwargs,\n            )\n            hidden_states = attn_output + hidden_states\n\n        # 4. Feed-forward\n        # i2vgen doesn't have this norm 🤷‍♂️\n        if self.norm_type == \"ada_norm_continuous\":\n            norm_hidden_states = self.norm3(\n                hidden_states, added_cond_kwargs[\"pooled_text_emb\"]\n            )\n        elif not self.norm_type == \"ada_norm_single\":\n            norm_hidden_states = self.norm3(hidden_states)\n\n        if self.norm_type == \"ada_norm_zero\":\n            norm_hidden_states = (\n                norm_hidden_states * (1 + scale_mlp[:, None]) + shift_mlp[:, None]\n            )\n\n        if self.norm_type == \"ada_norm_single\":\n            norm_hidden_states = self.norm2(hidden_states)\n            norm_hidden_states = norm_hidden_states * (1 + scale_mlp) + shift_mlp\n\n        ff_output = self.ff(norm_hidden_states)\n\n        if self.norm_type == \"ada_norm_zero\":\n            ff_output = gate_mlp.unsqueeze(1) * ff_output\n        elif self.norm_type == \"ada_norm_single\":\n            ff_output = gate_mlp * ff_output\n\n        hidden_states = ff_output + hidden_states\n        if hidden_states.ndim == 4:\n            hidden_states = hidden_states.squeeze(1)\n\n        return hidden_states\n\n\nclass RoPETransformer2DModel(Transformer2DModel):\n    _org_init = Transformer2DModel.__init__\n\n    def __init__(self, *args, **kwargs):\n        RoPETransformer2DModel._org_init(self, *args, **kwargs)\n        for block in self.transformer_blocks:\n            if isinstance(block, BasicTransformerBlock):\n                RoPEBasicTransformerBlock.apply_to(block)\n\n    def forward(\n        self,\n        hidden_states: torch.Tensor,\n        encoder_hidden_states: Optional[torch.Tensor] = None,\n        timestep: Optional[torch.LongTensor] = None,\n        added_cond_kwargs: Dict[str, torch.Tensor] = None,\n        class_labels: Optional[torch.LongTensor] = None,\n        cross_attention_kwargs: Dict[str, Any] = None,\n        attention_mask: Optional[torch.Tensor] = None,\n        encoder_attention_mask: Optional[torch.Tensor] = None,\n        position_map: Optional[torch.Tensor] = None,\n        return_dict: bool = True,\n    ):\n        if attention_mask is not None and attention_mask.ndim == 2:\n            # assume that mask is expressed as:\n            #   (1 = keep,      0 = discard)\n            # convert mask into a bias that can be added to attention scores:\n            #       (keep = +0,     discard = -10000.0)\n            attention_mask = (1 - attention_mask.to(hidden_states.dtype)) * -10000.0\n            attention_mask = attention_mask.unsqueeze(1)\n\n        # convert encoder_attention_mask to a bias the same way we do for attention_mask\n        if encoder_attention_mask is not None and encoder_attention_mask.ndim == 2:\n            encoder_attention_mask = (\n                1 - encoder_attention_mask.to(hidden_states.dtype)\n            ) * -10000.0\n            encoder_attention_mask = encoder_attention_mask.unsqueeze(1)\n\n        # 1. Input\n        if self.is_input_continuous:\n            batch_size, _, height, width = hidden_states.shape\n            residual = hidden_states\n            hidden_states, inner_dim = self._operate_on_continuous_inputs(hidden_states)\n        elif self.is_input_vectorized:\n            height = self.latent_image_embedding.height\n            width = self.latent_image_embedding.width\n            hidden_states = self.latent_image_embedding(hidden_states)\n        elif self.is_input_patches:\n            height, width = (\n                hidden_states.shape[-2] // self.patch_size,\n                hidden_states.shape[-1] // self.patch_size,\n            )\n            hidden_states, encoder_hidden_states, timestep, embedded_timestep = (\n                self._operate_on_patched_inputs(\n                    hidden_states, encoder_hidden_states, timestep, added_cond_kwargs\n                )\n            )\n        if position_map is None:\n            position_map = make_axial_pos(\n                h=height,\n                w=width,\n                device=hidden_states.device,\n                dtype=hidden_states.dtype,\n            )\n        else:\n            position_map = position_map.to(hidden_states)\n            assert position_map.shape[-3:] == (height, width, 2)\n\n        # 2. Blocks\n        for block in self.transformer_blocks:\n            if self.training and self.gradient_checkpointing:\n\n                def create_custom_forward(module, return_dict=None):\n                    def custom_forward(*inputs):\n                        if return_dict is not None:\n                            return module(*inputs, return_dict=return_dict)\n                        else:\n                            return module(*inputs)\n\n                    return custom_forward\n\n                ckpt_kwargs: Dict[str, Any] = {\"use_reentrant\": False}\n                hidden_states = torch.utils.checkpoint.checkpoint(\n                    create_custom_forward(block),\n                    hidden_states,\n                    position_map,\n                    attention_mask,\n                    encoder_hidden_states,\n                    encoder_attention_mask,\n                    timestep,\n                    cross_attention_kwargs,\n                    class_labels,\n                    **ckpt_kwargs,\n                )\n            else:\n                hidden_states = block(\n                    hidden_states,\n                    position_map,\n                    attention_mask=attention_mask,\n                    encoder_hidden_states=encoder_hidden_states,\n                    encoder_attention_mask=encoder_attention_mask,\n                    timestep=timestep,\n                    cross_attention_kwargs=cross_attention_kwargs,\n                    class_labels=class_labels,\n                )\n\n        # 3. Output\n        if self.is_input_continuous:\n            output = self._get_output_for_continuous_inputs(\n                hidden_states=hidden_states,\n                residual=residual,\n                batch_size=batch_size,\n                height=height,\n                width=width,\n                inner_dim=inner_dim,\n            )\n        elif self.is_input_vectorized:\n            output = self._get_output_for_vectorized_inputs(hidden_states)\n        elif self.is_input_patches:\n            output = self._get_output_for_patched_inputs(\n                hidden_states=hidden_states,\n                timestep=timestep,\n                class_labels=class_labels,\n                embedded_timestep=embedded_timestep,\n                height=height,\n                width=width,\n            )\n\n        if not return_dict:\n            return (output,)\n\n        return Transformer2DModelOutput(sample=output)\n\n\norg_init = Transformer2DModel.__init__\norg_forward = Transformer2DModel.forward\n\n\ndef apply_patch():\n    import diffusers.models.transformers.transformer_2d as transformer_2d\n\n    transformer_2d.Transformer2DModel.__init__ = RoPETransformer2DModel.__init__\n    transformer_2d.Transformer2DModel.forward = RoPETransformer2DModel.forward\n\n\ndef restore():\n    import diffusers.models.transformers.transformer_2d as transformer_2d\n\n    transformer_2d.Transformer2DModel.__init__ = org_init\n    transformer_2d.Transformer2DModel.forward = org_forward\n\n\nclass HDUNet2DConditionModel(UNet2DConditionModel):\n    def __init__(self, *args, **kwargs):\n        super().__init__(*args, **kwargs)\n        for module in self.modules():\n            if isinstance(module, BasicTransformerBlock):\n                nn.init.constant_(module.attn1.to_out[0].weight, 0.0)\n                if module.attn2 is not None:\n                    nn.init.constant_(module.attn2.to_out[0].weight, 0.0)\n                if isinstance(module.ff.net[-2], nn.Linear):\n                    nn.init.constant_(module.ff.net[-2].weight, 0.0)\n                    nn.init.constant_(module.ff.net[-2].bias, 0.0)\n                else:\n                    nn.init.constant_(module.ff.net[-1].weight, 0.0)\n                    nn.init.constant_(module.ff.net[-1].bias, 0.0)\n            if isinstance(module, ResnetBlock2D):\n                nn.init.constant_(module.conv2.weight, 0.0)\n                nn.init.constant_(module.conv2.bias, 0.0)\n        nn.init.constant_(self.conv_out.weight, 0.0)\n\n    @classmethod\n    def from_config(cls, arch: dict):\n        if isinstance(arch, str):\n            with open(arch, \"r\") as f:\n                arch = json.load(f)\n        return cls(**instantiate(arch))\n\n\nclass RoPEUNet2DConditionModel(HDUNet2DConditionModel):\n    def __init__(self, *args, **kwargs):\n        apply_patch()\n        super().__init__(*args, **kwargs)\n        restore()\n        if xformers is not None:\n            self.set_attn_processor(RoPEXFormersAttnProcessor())\n\n    @classmethod\n    def from_config(cls, arch: dict):\n        if isinstance(arch, str):\n            with open(arch, \"r\") as f:\n                arch = json.load(f)\n        return cls(**instantiate(arch))\n\n    def forward(self, *args, **kwargs):\n        apply_patch()\n        result = super().forward(*args, **kwargs)\n        restore()\n        return result\n"
  },
  {
    "path": "pipelines/hdm/hdm/modules/xut.py",
    "content": "import json\nimport torch\n\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.models.modeling_utils import ModelMixin\n\nfrom ...xut.xut import XUDiT\nfrom .base import *\n\n\nclass XUDiTConditionModel(ModelMixin, ConfigMixin):\n    _supports_gradient_checkpointing = True\n\n    @register_to_config\n    def __init__(\n        self,\n        patch_size=2,\n        input_dim=4,\n        dim=1024,\n        ctx_dim=1024,\n        ctx_size=256,\n        heads=16,\n        dim_head=64,\n        mlp_dim=3072,\n        depth=8,\n        enc_blocks=1,\n        dec_blocks=2,\n        dec_ctx=False,\n        class_cond=0,\n        shared_adaln=True,\n        concat_ctx=True,\n        use_dyt=False,\n        double_t=False,\n        addon_info_embs_dim=None,\n        tread_config=None,\n    ):\n        super().__init__()\n        self.model = XUDiT(\n            patch_size=patch_size,\n            input_dim=input_dim,\n            dim=dim,\n            ctx_dim=ctx_dim,\n            ctx_size=ctx_size,\n            heads=heads,\n            dim_head=dim_head,\n            mlp_dim=mlp_dim,\n            depth=depth,\n            enc_blocks=enc_blocks,\n            dec_blocks=dec_blocks,\n            dec_ctx=dec_ctx,\n            class_cond=class_cond,\n            shared_adaln=shared_adaln,\n            concat_ctx=concat_ctx,\n            use_dyt=use_dyt,\n            double_t=double_t,\n            addon_info_embs_dim=addon_info_embs_dim,\n            tread_config=tread_config,\n        )\n\n    @classmethod\n    def from_config(cls, config: Dict[str, Any] | str) -> \"XUDiTConditionModel\":\n        if isinstance(config, str):\n            with open(config, \"r\") as f:\n                config = json.load(f)\n        return cls(**config)\n\n    def enable_gradient_checkpointing(self):\n        return self.model.set_grad_ckpt(True)\n\n    def disable_gradient_checkpointing(self):\n        return self.model.set_grad_ckpt(False)\n\n    def forward(\n        self,\n        sample: torch.Tensor,\n        timestep: Union[torch.Tensor, float, int],\n        encoder_hidden_states: torch.Tensor,\n        class_labels: Optional[torch.Tensor] = None,\n        timestep_cond: Optional[torch.Tensor] = None,\n        attention_mask: Optional[torch.Tensor] = None,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        added_cond_kwargs: Optional[Dict[str, torch.Tensor]] = None,\n        down_block_additional_residuals: Optional[Tuple[torch.Tensor]] = None,\n        mid_block_additional_residual: Optional[torch.Tensor] = None,\n        down_intrablock_additional_residuals: Optional[Tuple[torch.Tensor]] = None,\n        encoder_attention_mask: Optional[torch.Tensor] = None,\n        return_dict: bool = True,\n        pos_map: Optional[torch.Tensor] = None,\n    ) -> Union[UNet2DConditionOutput, Tuple]:\n        if added_cond_kwargs is None:\n            added_cond_kwargs = {}\n        result = self.model(\n            sample, timestep, encoder_hidden_states, pos_map, **added_cond_kwargs\n        )\n        if return_dict:\n            return UNet2DConditionOutput(sample=result)\n        else:\n            return (sample,)\n"
  },
  {
    "path": "pipelines/hdm/hdm/pipeline.py",
    "content": "from typing import Optional, Tuple, Union\n\nimport torch\n\nfrom diffusers import DiffusionPipeline, ImagePipelineOutput\nfrom diffusers import AutoencoderKL\nfrom transformers import Qwen3Model, Qwen2Tokenizer\n\nfrom .modules.xut import XUDiTConditionModel\nfrom ..xut.modules.axial_rope import make_axial_pos_no_cache\n\n\nclass HDMXUTPipeline(DiffusionPipeline):\n    transformer: XUDiTConditionModel\n    tokenizer = Qwen2Tokenizer\n    text_encoder: Qwen3Model\n    vae: AutoencoderKL\n\n    def __init__(\n        self,\n        transformer: XUDiTConditionModel,\n        text_encoder: Qwen3Model,\n        tokenizer: Qwen2Tokenizer,\n        vae: AutoencoderKL,\n        scheduler,\n    ):\n        super().__init__()\n        self.register_modules(\n            transformer=transformer,\n            text_encoder=text_encoder,\n            tokenizer=tokenizer,\n            vae=vae,\n            scheduler=scheduler,\n        )\n        self.vae_mean = torch.tensor(self.vae.config.latents_mean)[None, :, None, None]\n        self.vae_std = torch.tensor(self.vae.config.latents_std)[None, :, None, None]\n\n    def apply_compile(self, *args, **kwargs):\n        self.transformer.model.prev_tread_trns = torch.compile(\n            self.transformer.model.prev_tread_trns, *args, **kwargs\n        )\n        self.transformer.model.backbone = torch.compile(\n            self.transformer.model.backbone, *args, **kwargs\n        )\n        self.transformer.model.post_tread_trns = torch.compile(\n            self.transformer.model.post_tread_trns, *args, **kwargs\n        )\n        self.vae.encoder = torch.compile(self.vae.encoder, *args, **kwargs)\n        self.vae.decoder = torch.compile(self.vae.decoder, *args, **kwargs)\n\n    @torch.no_grad()\n    def __call__(\n        self,\n        prompt: str = \"a photo of a dog\",\n        negative_prompt: str = \"\",\n        width: int = 1024,\n        height: int = 1024,\n        cfg_scale: float = 3.0,\n        num_inference_steps: int = 16,\n        camera_param: dict[str, float] = {\n            \"zoom\": 1.0,\n            \"x_shift\": 0.0,\n            \"y_shift\": 0.0,\n        },\n        tread_gamma1: float = 0.0,\n        tread_gamma2: float = 0.25,\n        generator: Optional[torch.Generator] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        **kwargs,\n    ) -> Union[ImagePipelineOutput, Tuple]:\n        if isinstance(prompt, str):\n            prompt = [prompt]\n        if isinstance(negative_prompt, str):\n            negative_prompt = [negative_prompt]\n        if len(negative_prompt) == 1:\n            negative_prompt = negative_prompt * len(prompt)\n\n        prompt_tokens = self.tokenizer(\n            prompt,\n            padding=\"longest\",\n            return_tensors=\"pt\",\n        )\n        negative_prompt_tokens = self.tokenizer(\n            negative_prompt,\n            padding=\"longest\",\n            return_tensors=\"pt\",\n        )\n\n        prompt_emb = self.text_encoder(\n            input_ids=prompt_tokens.input_ids.to(self.device),\n            attention_mask=prompt_tokens.attention_mask.to(self.device),\n        ).last_hidden_state\n        negative_prompt_emb = self.text_encoder(\n            input_ids=negative_prompt_tokens.input_ids.to(self.device),\n            attention_mask=negative_prompt_tokens.attention_mask.to(self.device),\n        ).last_hidden_state\n\n        # Sample gaussian noise to begin loop\n        image = torch.randn(\n            (\n                len(prompt),\n                self.transformer.config.input_dim,\n                height // 16 * 2,\n                width // 16 * 2,\n            ),\n            generator=generator[0],\n        )\n        image = image.to(self.device).to(self.dtype)\n        aspect_ratio = (\n            torch.tensor([width / height], device=self.device)\n            .log()\n            .repeat(image.size(0))\n        ).to(self.dtype)\n\n        latent_h, latent_w = image.shape[-2:]\n        pos_map = make_axial_pos_no_cache(latent_h, latent_w, device=self.device)\n        pos_map[..., 0] = pos_map[..., 0] + camera_param.get(\"y_shift\", 0.0)\n        pos_map[..., 1] = pos_map[..., 1] + camera_param.get(\"x_shift\", 0.0)\n        pos_map = pos_map / camera_param.get(\"zoom\", 1.0)\n        pos_map = pos_map[None].expand(image.size(0), -1, -1).to(self.dtype)\n\n        t = torch.tensor([1] * image.size(0), device=self.device).to(self.dtype)\n        current_t = 1.0\n        dt = 1.0 / num_inference_steps\n\n        for _ in (pbar := self.progress_bar(range(num_inference_steps))):\n            cond = self.transformer(\n                image.to(self.dtype),\n                t,\n                prompt_emb,\n                added_cond_kwargs={\n                    \"addon_info\": aspect_ratio,\n                    \"tread_rate\": tread_gamma1,\n                },\n                pos_map=pos_map,\n            ).sample.float()\n            uncond = self.transformer(\n                image.to(self.dtype),\n                t,\n                negative_prompt_emb,\n                added_cond_kwargs={\n                    \"addon_info\": aspect_ratio,\n                    \"tread_rate\": tread_gamma2,\n                },\n                pos_map=pos_map,\n            ).sample.float()\n            cfg_flow = uncond + cfg_scale * (cond - uncond)\n            image = image - dt * cfg_flow\n            t = t - dt\n            current_t -= dt\n\n        torch.cuda.empty_cache()\n        image = image * self.vae_std.to(self.device) + self.vae_mean.to(self.device)\n        image = torch.concat([self.vae.decode(i[None].to(self.dtype)).sample for i in image])\n        image = (image.float() / 2 + 0.5).clamp(0, 1)\n        image = image.cpu().permute(0, 2, 3, 1).numpy()\n\n        if output_type == \"pil\":\n            image = self.numpy_to_pil(image)\n\n        if not return_dict:\n            return (image,)\n\n        return ImagePipelineOutput(images=image)\n"
  },
  {
    "path": "pipelines/hdm/hdm/trainer/__init__.py",
    "content": "from .trainer import DMTrainer, FlowTrainer\n"
  },
  {
    "path": "pipelines/hdm/hdm/trainer/callbacks.py",
    "content": "from operator import is_\nimport os\n\nimport torch\nimport wandb\n\nfrom lightning.pytorch import Callback, Trainer\nfrom hdm.trainer import DMTrainer\n\n\nclass ImageGenCallback(Callback):\n    def __init__(self, config, img_gen_func):\n        self.config = {\n            \"period\": 100,\n            \"num\": 4,\n            \"preview_num\": 4,\n            \"batch_size\": 4,\n            \"steps\": 24,\n        }\n        self.config.update(config)\n        self.img_gen = img_gen_func\n\n    @torch.no_grad()\n    def on_train_batch_start(\n        self, trainer: Trainer, pl_module: DMTrainer, batch, batch_idx\n    ):\n        if batch_idx % self.config[\"period\"] == 0:\n            is_training = pl_module.training\n            pl_module.eval()\n            torch.cuda.empty_cache()\n            captions, images = self.img_gen(pl_module, batch, self.config)\n            torch.cuda.empty_cache()\n\n            if hasattr(trainer.logger, \"id\"):\n                id = trainer.logger.id\n            elif hasattr(trainer.logger, \"experiment\"):\n                id = getattr(trainer.logger.experiment, \"id\", self.config.get(\"id\", 0))\n            else:\n                id = self.config.get(\"id\", 0)\n            if not isinstance(id, (str, bytes, int, float)):\n                id = self.config.get(\"id\", 0)\n            if \"id\" in self.config:\n                id = self.config[\"id\"]\n\n            rank = trainer.local_rank\n            base_idx = rank * self.config[\"num\"]\n\n            os.makedirs(f\"./sample/{id}/{trainer.global_step}\", exist_ok=True)\n            data = []\n            for idx, (caption, image) in enumerate(zip(captions, images)):\n                idx = base_idx + idx\n                image.save(f\"./sample/{id}/{trainer.global_step}/{idx}.png\")\n                data.append(\n                    [\n                        caption,\n                        wandb.Image(f\"./sample/{id}/{trainer.global_step}/{idx}.png\"),\n                    ]\n                )\n            if trainer.is_global_zero:\n                trainer.logger.log_table(\n                    key=\"sample/images\",\n                    columns=[\"caption\", \"image\"],\n                    data=data[: self.config[\"preview_num\"]],\n                )\n            torch.cuda.empty_cache()\n            pl_module.train(is_training)\n"
  },
  {
    "path": "pipelines/hdm/hdm/trainer/diffusion.py",
    "content": "import torch\n\n# import torch.nn as nn\n# import torch.nn.functional as F\n# import torch.optim as optim\n\nfrom diffusers import EulerDiscreteScheduler\n\n\ndef get_noise_noisy_latents_and_timesteps(\n    noise_scheduler: EulerDiscreteScheduler, latents\n):\n    noise = torch.randn_like(latents, device=latents.device)\n    b_size = latents.shape[0]\n    min_timestep = 0\n    max_timestep = noise_scheduler.config.num_train_timesteps\n\n    timesteps = torch.randint(\n        min_timestep, max_timestep, (b_size,), device=latents.device\n    )\n\n    sigmas = noise_scheduler.sigmas.to(device=latents.device, dtype=latents.dtype)\n    schedule_timesteps = noise_scheduler.timesteps.to(latents.device)\n    timesteps = timesteps.to(latents.device)\n    step_indices = [(schedule_timesteps == t).nonzero().item() for t in timesteps]\n    sigma = sigmas[step_indices].flatten()\n    while len(sigma.shape) < len(latents.shape):\n        sigma = sigma.unsqueeze(-1)\n\n    # Diffusion Forward process\n    noisy_samples = latents + noise * sigma\n    scale = 1 / (sigma**2 + 1) ** 0.5\n    return noisy_samples * scale, noise, timesteps\n\n\ndef apply_snr_weight(loss, timesteps, noise_scheduler, gamma, v_prediction=False):\n    snr = torch.stack([noise_scheduler.all_snr[t] for t in timesteps])\n    min_snr_gamma = torch.minimum(snr, torch.full_like(snr, gamma))\n    if v_prediction:\n        snr_weight = torch.div(min_snr_gamma, snr + 1).float().to(loss.device)\n    else:\n        snr_weight = torch.div(min_snr_gamma, snr).float().to(loss.device)\n    loss = loss * snr_weight\n    return loss\n\n\ndef apply_debiased_estimation(loss, timesteps, noise_scheduler):\n    snr_t = torch.stack([noise_scheduler.all_snr[t] for t in timesteps])  # batch_size\n    snr_t = torch.minimum(\n        snr_t, torch.ones_like(snr_t) * 1000\n    )  # if timestep is 0, snr_t is inf, so limit it to 1000\n    weight = 1 / torch.sqrt(snr_t)\n    loss = weight * loss\n    return loss\n\n\ndef prepare_scheduler_for_custom_training(noise_scheduler, device):\n    if hasattr(noise_scheduler, \"all_snr\"):\n        return\n\n    alphas_cumprod = noise_scheduler.alphas_cumprod\n    sqrt_alphas_cumprod = torch.sqrt(alphas_cumprod)\n    sqrt_one_minus_alphas_cumprod = torch.sqrt(1.0 - alphas_cumprod)\n    alpha = sqrt_alphas_cumprod\n    sigma = sqrt_one_minus_alphas_cumprod\n    all_snr = (alpha / sigma) ** 2\n\n    noise_scheduler.all_snr = all_snr.to(device)\n"
  },
  {
    "path": "pipelines/hdm/hdm/trainer/trainer.py",
    "content": "import os\nfrom typing import Any, Iterator\n\nimport torch\nimport torch.nn as nn\nimport torch.nn.functional as F\nimport torch.optim as optim\nimport lightning.pytorch as pl\n\nfrom diffusers import (\n    EulerDiscreteScheduler,\n    UNet2DConditionModel,\n    AutoencoderKL,\n)\nfrom anyschedule import AnySchedule\n\nfrom ..utils import instantiate\nfrom ..modules.text_encoders import BaseTextEncoder\nfrom .diffusion import (\n    get_noise_noisy_latents_and_timesteps,\n    prepare_scheduler_for_custom_training,\n)\n\n\nclass BaseTrainer(pl.LightningModule):\n    def __init__(\n        self,\n        *args,\n        name: str = \"\",\n        lr: float = 1e-5,\n        optimizer: type[optim.Optimizer] = optim.AdamW,\n        opt_configs: dict[str, Any] = {\n            \"weight_decay\": 0.01,\n            \"betas\": (0.9, 0.999),\n        },\n        lr_sch_configs: dict[str, Any] = {\n            \"lr\": {\n                \"mode\": \"cosine\",\n                \"end\": 100000,\n                \"min_value\": 0.001,\n            }\n        },\n        use_warm_up: bool = True,\n        warm_up_period: int = 1000,\n        **kwargs,\n    ):\n        super().__init__()\n        self.name = name\n        self.train_params: Iterator[nn.Parameter] = None\n        self.optimizer = instantiate(optimizer)\n        self.opt_configs = opt_configs\n        self.lr = lr\n        self.lr_sch_configs = lr_sch_configs\n        self.use_warm_up = use_warm_up\n        self.warm_up_period = warm_up_period\n\n    def configure_optimizers(self):\n        parameters = []\n        assert self.train_params is not None\n        for param in self.train_params:\n            if param.ndim < 2:  # bias, norm, ...\n                fan_in = param.numel()\n            elif param.ndim > 2:  # Conv layer in patch embedding\n                # For conv layers, fan_in is channels_in * kernel_size^2\n                fan_ins = param.shape[1:]\n                fan_in = 1\n                for fan_in_i in fan_ins:\n                    fan_in *= fan_in_i\n            else:  # Linear layers, including attention and MLP\n                fan_in = param.shape[1]\n            parameters.append(\n                {\n                    \"params\": param,\n                    \"lr\": self.lr / fan_in,\n                }\n            )\n        optimizer = self.optimizer(parameters, lr=self.lr, **self.opt_configs)\n\n        lr_scheduler = None\n        if bool(self.lr_sch_configs):\n            lr_scheduler = AnySchedule(optimizer=optimizer, config=self.lr_sch_configs)\n\n        if lr_scheduler is None:\n            return optimizer\n        else:\n            return {\n                \"optimizer\": optimizer,\n                \"lr_scheduler\": {\"scheduler\": lr_scheduler, \"interval\": \"step\"},\n            }\n\n\nclass DMTrainer(BaseTrainer):\n    def __init__(\n        self,\n        unet: UNet2DConditionModel,\n        te: BaseTextEncoder,\n        vae: AutoencoderKL | None = None,\n        unet_compile: bool = False,\n        te_compile: bool = False,\n        vae_compile: bool = False,\n        te_use_normed_ctx: bool = False,\n        te_freeze: bool = True,\n        vae_std: float = 7.5,\n        vae_mean: float = 1.125,\n        scheduler: EulerDiscreteScheduler | None = None,\n        lycoris_model: nn.Module | None = None,\n        *args,\n        name: str = \"\",\n        lr: float = 1e-5,\n        optimizer: type[optim.Optimizer] = optim.AdamW,\n        opt_configs: dict[str, Any] = {\n            \"weight_decay\": 0.01,\n            \"betas\": (0.9, 0.999),\n        },\n        lr_sch_configs: dict[str, Any] = {},\n        use_warm_up: bool = True,\n        warm_up_period: int = 1000,\n        full_config: dict[str, Any] = {},\n        **kwargs,\n    ):\n        super(DMTrainer, self).__init__(\n            name=name,\n            lr=lr,\n            optimizer=optimizer,\n            opt_configs=opt_configs,\n            lr_sch_configs=lr_sch_configs,\n            use_warm_up=use_warm_up,\n            warm_up_period=warm_up_period,\n        )\n        self.save_hyperparameters(\n            ignore=[\"unet\", \"scheduler\", \"te\", \"vae\", \"lycoris_model\", \"args\", \"kwargs\"]\n        )\n        prepare_scheduler_for_custom_training(scheduler, self.device)\n\n        if unet_compile:\n            unet = torch.compile(unet)\n\n        if te_compile:\n            te = torch.compile(te)\n\n        if vae_compile and vae is not None:\n            vae = torch.compile(vae)\n\n        if te_freeze:\n            te.requires_grad_(False).eval()\n\n        if vae is not None:\n            vae.requires_grad_(False).eval()\n\n        self.unet = unet\n        self.te = te\n        self.vae = vae\n        self.scheduler = scheduler\n\n        self.te_use_normed_ctx = te_use_normed_ctx\n        self.vae_std = vae_std\n        self.vae_mean = vae_mean\n\n        self.lycoris_model = lycoris_model\n\n        self.epoch = 0\n        self.opt_step = 0\n        self.ema_loss = 0\n        self.ema_decay = 0.99\n\n        if lycoris_model is not None:\n            self.lycoris_model.train()\n            self.train_params = self.lycoris_model.parameters()\n        else:\n            self.unet.requires_grad_(True).train()\n            self.train_params = self.unet.parameters()\n\n    def on_train_epoch_end(self) -> None:\n        self.epoch += 1\n        if self.lycoris_model is not None:\n            dir = \"./lycoris_weight\"\n            epoch = self.epoch\n            if self._trainer is not None:\n                trainer = self._trainer\n                epoch = trainer.current_epoch\n                if len(trainer.loggers) > 0:\n                    if trainer.loggers[0].save_dir is not None:\n                        save_dir = trainer.loggers[0].save_dir\n                    else:\n                        save_dir = trainer.default_root_dir\n                    name = trainer.loggers[0].name\n                    version = trainer.loggers[0].version\n                    version = (\n                        version if isinstance(version, str) else f\"version_{version}\"\n                    )\n                    dir = os.path.join(save_dir, str(name), version, \"lycoris_weight\")\n                else:\n                    # if no loggers, use default_root_dir\n                    dir = os.path.join(trainer.default_root_dir, \"lycoris_weight\")\n            os.makedirs(dir, exist_ok=True)\n            model_weight = {\n                k: v for k, v in self.unet.named_parameters() if v.requires_grad\n            }\n            lycoris_weight = self.lycoris_model.state_dict() | model_weight\n            torch.save(lycoris_weight, os.path.join(dir, f\"epoch={epoch}.pt\"))\n\n    def training_step(self, batch, idx):\n        x, captions, tokenizer_outputs = batch\n        # print(type(x), type(captions), type(tokenizer_outputs), type(added_cond))\n\n        if self.vae is not None:\n            with torch.no_grad():\n                latent_dist = self.vae.encode(x).latent_dist\n                x = latent_dist.sample()\n                x = (x - self.vae_mean) / self.vae_std\n\n        b, c, h, w = x.shape\n\n        noisy_latent, noise, timesteps = get_noise_noisy_latents_and_timesteps(\n            self.scheduler, x\n        )\n\n        if self.scheduler.config.prediction_type == \"epsilon\":\n            target = noise\n        elif self.scheduler.config.prediction_type == \"v_prediction\":\n            target = self.scheduler.get_velocity(x, noise, timesteps)\n        elif self.scheduler.config.prediction_type == \"sample\":\n            target = x\n        else:\n            raise ValueError(\n                f\"Unknown prediction type {self.scheduler.config.prediction_type}\"\n            )\n\n        with torch.no_grad():\n            if isinstance(self.te, BaseTextEncoder):\n                normed_embedding, embedding, pooled_embedding, attn_mask = self.te(\n                    tokenizer_outputs\n                )\n            else:\n                normed_embedding, pooled_embedding, *embeddings = self.te(\n                    **tokenizer_outputs[0], return_dict=False, output_hidden_states=True\n                )\n                embedding = embeddings[-1][-1]\n            if self.te_use_normed_ctx:\n                ctx = normed_embedding\n            else:\n                ctx = embedding\n\n        model_output = self.unet(\n            noisy_latent.to(self.dtype),\n            timesteps,\n            encoder_hidden_states=ctx.to(self.dtype),\n            encoder_attention_mask=attn_mask,\n        )[0]\n        loss = F.mse_loss(model_output, target)\n\n        ema_decay = min(self.opt_step / (10 + self.opt_step), self.ema_decay)\n        self.ema_loss = ema_decay * self.ema_loss + (1 - ema_decay) * loss.item()\n        self.opt_step += 1\n\n        if self._trainer is not None:\n            self.log(\"train/loss\", loss.item(), on_step=True, logger=True)\n            self.log(\n                \"train/ema_loss\",\n                self.ema_loss,\n                on_step=True,\n                logger=True,\n                prog_bar=True,\n            )\n        return loss\n\n\nclass FlowTrainer(BaseTrainer):\n    def __init__(\n        self,\n        unet: nn.Module,\n        te: BaseTextEncoder,\n        vae: AutoencoderKL | None = None,\n        unet_compile: bool = False,\n        te_compile: bool = False,\n        vae_compile: bool = False,\n        te_use_normed_ctx: bool = False,\n        te_freeze: bool = True,\n        vae_std: float = 7.5,\n        vae_mean: float = 1.125,\n        lycoris_model: nn.Module | None = None,\n        *args,\n        name: str = \"\",\n        lr: float = 1e-5,\n        optimizer: type[optim.Optimizer] = optim.AdamW,\n        opt_configs: dict[str, Any] = {\n            \"weight_decay\": 0.01,\n            \"betas\": (0.9, 0.999),\n        },\n        lr_sch_configs: dict[str, Any] = {},\n        use_warm_up: bool = True,\n        warm_up_period: int = 1000,\n        full_config: dict[str, Any] = {},\n        **kwargs,\n    ):\n        super(FlowTrainer, self).__init__(\n            name=name,\n            lr=lr,\n            optimizer=optimizer,\n            opt_configs=opt_configs,\n            lr_sch_configs=lr_sch_configs,\n            use_warm_up=use_warm_up,\n            warm_up_period=warm_up_period,\n        )\n        self.save_hyperparameters(\n            ignore=[\n                \"unet\",\n                \"te\",\n                \"vae\",\n                \"lycoris_model\",\n                \"args\",\n                \"kwargs\",\n                \"full_config\",\n                \"opt_configs\",\n                \"lr_sch_configs\",\n            ]\n        )\n\n        if unet_compile:\n            unet = torch.compile(unet)\n\n        if te_compile:\n            te = torch.compile(te)\n\n        if vae_compile and vae is not None:\n            vae = torch.compile(vae)\n\n        if te_freeze:\n            te.requires_grad_(False).eval()\n\n        if vae is not None:\n            vae.requires_grad_(False).eval()\n\n        self.unet = unet\n        self.te = te\n        self.vae = vae\n\n        self.te_use_normed_ctx = te_use_normed_ctx\n        if self.vae is not None:\n            vae_std = self.vae.config[\"latents_std\"]\n            vae_mean = self.vae.config[\"latents_mean\"]\n            self.register_buffer(\"vae_std\", torch.tensor(vae_std).view(1, -1, 1, 1))\n            self.register_buffer(\"vae_mean\", torch.tensor(vae_mean).view(1, -1, 1, 1))\n        else:\n            self.vae_std = vae_std\n            self.vae_mean = vae_mean\n\n        self.lycoris_model = lycoris_model\n\n        self.epoch = 0\n        self.opt_step = 0\n        self.ema_loss = 0\n        self.ema_decay = 0.995\n\n        if lycoris_model is not None:\n            self.lycoris_model.train()\n            self.train_params = self.lycoris_model.parameters()\n        else:\n            self.unet.requires_grad_(True).train()\n            self.train_params = self.unet.parameters()\n\n    def on_train_epoch_end(self) -> None:\n        self.epoch += 1\n        if self.lycoris_model is not None:\n            dir = \"./lycoris_weight\"\n            epoch = self.epoch\n            if self._trainer is not None:\n                trainer = self._trainer\n                epoch = trainer.current_epoch\n                if len(trainer.loggers) > 0:\n                    if trainer.loggers[0].save_dir is not None:\n                        save_dir = trainer.loggers[0].save_dir\n                    else:\n                        save_dir = trainer.default_root_dir\n                    name = trainer.loggers[0].name\n                    version = trainer.loggers[0].version\n                    version = (\n                        version if isinstance(version, str) else f\"version_{version}\"\n                    )\n                    dir = os.path.join(save_dir, str(name), version, \"lycoris_weight\")\n                else:\n                    # if no loggers, use default_root_dir\n                    dir = os.path.join(trainer.default_root_dir, \"lycoris_weight\")\n            os.makedirs(dir, exist_ok=True)\n            model_weight = {\n                k: v for k, v in self.unet.named_parameters() if v.requires_grad\n            }\n            lycoris_weight = self.lycoris_model.state_dict() | model_weight\n            torch.save(lycoris_weight, os.path.join(dir, f\"epoch={epoch}.pt\"))\n\n    def training_step(self, batch, idx):\n        x, captions, tokenizer_outputs, pos_map, *addon_info = batch\n\n        if self.vae is not None:\n            if pos_map is not None:\n                pos_map = pos_map.unflatten(1, x.shape[-2:])  # (B, H, W, 2)\n            with torch.no_grad():\n                x = x.to(self.device)\n                x = torch.concat(\n                    [\n                        self.vae.encode(x[i : i + 4]).latent_dist.sample()\n                        for i in range(0, x.shape[0], 4)\n                    ]\n                )\n                x = (x - self.vae_mean) / self.vae_std\n            pos_map = pos_map.permute(0, 3, 1, 2)\n            pos_map = (\n                F.interpolate(pos_map, x.shape[-2:], mode=\"area\")\n                .permute(0, 2, 3, 1)\n                .flatten(1, 2)\n            )\n\n        b, c, h, w = x.shape\n\n        noise = torch.randn_like(x)\n        t = torch.sigmoid(torch.randn(b, 1, 1, 1, device=x.device))\n        noisy_latent = t * noise + (1 - t) * x\n        target = noise - x\n\n        with torch.no_grad():\n            if isinstance(self.te, BaseTextEncoder):\n                normed_embedding, embedding, pooled_embedding, attn_mask = self.te(\n                    tokenizer_outputs\n                )\n            else:\n                normed_embedding, pooled_embedding, *embeddings = self.te(\n                    **tokenizer_outputs[0], return_dict=False, output_hidden_states=True\n                )\n                embedding = embeddings[-1][-1]\n            if self.te_use_normed_ctx:\n                ctx = normed_embedding\n            else:\n                ctx = embedding\n\n        if pooled_embedding is not None:\n            added_cond_kwargs = {\n                \"time_ids\": torch.tensor([[1024, 1024, 0, 0, 1024, 1024]]).to(\n                    noisy_latent\n                ),\n                \"text_embeds\": pooled_embedding.to(noisy_latent),\n            }\n        else:\n            added_cond_kwargs = {}\n\n        if len(addon_info) > 0:\n            for addon in addon_info:\n                added_cond_kwargs.update(addon)\n\n        model_output = self.unet(\n            noisy_latent.to(self.dtype),\n            t,\n            encoder_hidden_states=ctx.to(self.dtype),\n            encoder_attention_mask=attn_mask,\n            pos_map=pos_map,\n            added_cond_kwargs=added_cond_kwargs,\n        )[0]\n        loss = F.mse_loss(model_output, target)\n        if torch.isnan(loss):\n            raise ValueError(\"loss is nan\")\n\n        ema_decay = min(self.opt_step / (10 + self.opt_step), self.ema_decay)\n        self.ema_loss = ema_decay * self.ema_loss + (1 - ema_decay) * loss.item()\n        self.opt_step += 1\n\n        if self._trainer is not None:\n            self.log(\"train/loss\", loss.item(), logger=True)\n            self.log(\n                \"train/ema_loss\",\n                self.ema_loss,\n                logger=True,\n                prog_bar=True,\n            )\n        return loss\n"
  },
  {
    "path": "pipelines/hdm/hdm/utils/__init__.py",
    "content": "import importlib\nimport omegaconf\nfrom inspect import isfunction\nfrom random import shuffle\n\nimport torch\nimport torch.nn as nn\n\n\ndef get_obj_from_str(string, reload=False):\n    module, cls = string.rsplit(\".\", 1)\n    if reload:\n        module_imp = importlib.import_module(module)\n        importlib.reload(module_imp)\n    return getattr(importlib.import_module(module, package=None), cls)\n\n\ndef instantiate(obj):\n    if isinstance(obj, omegaconf.DictConfig):\n        obj = dict(**obj)\n    if isinstance(obj, dict) and \"class\" in obj:\n        obj_factory = instantiate(obj[\"class\"])\n        if \"factory\" in obj:\n            obj_factory = getattr(obj_factory, obj[\"factory\"])\n        return obj_factory(*obj.get(\"args\", []), **obj.get(\"kwargs\", {}))\n    if isinstance(obj, str):\n        return get_obj_from_str(obj)\n    return obj\n\n\ndef exists(val):\n    return val is not None\n\n\ndef uniq(arr):\n    return {el: True for el in arr}.keys()\n\n\ndef default(val, d):\n    if val is not None:\n        return val\n    return d() if isfunction(d) else d\n\n\ndef zero_module(module: nn.Module):\n    \"\"\"\n    Zero out the parameters of a module and return it.\n    \"\"\"\n    for p in module.parameters():\n        p.detach().zero_()\n    return module\n\n\ndef random_choice(\n    x: torch.Tensor,\n    num: int,\n):\n    rand_x = list(x)\n    shuffle(rand_x)\n\n    return torch.stack(rand_x[:num])\n\n\ndef count_params(model, verbose=False):\n    total_params = sum(p.numel() for p in model.parameters())\n    if verbose:\n        print(f\"{model.__class__.__name__} has {total_params * 1.e-6:.2f} M params.\")\n    return total_params\n\n\ndef remove_none(list_x):\n    return [i for i in list_x if i is not None]\n"
  },
  {
    "path": "pipelines/hdm/hdm/utils/config.py",
    "content": "import os\nimport toml\nimport omegaconf\n\n\ndef load_train_config(file):\n    config = toml.load(file)\n\n    model = config[\"model\"]\n    model[\"config\"] = omegaconf.OmegaConf.to_container(\n        omegaconf.OmegaConf.load(model[\"config\"]), resolve=True\n    )\n    dataset = config[\"dataset\"]\n    trainer = config[\"trainer\"]\n    lightning = config[\"lightning\"]\n\n    if \"logger\" in lightning and not lightning[\"logger\"].get(\"version\", None):\n        lightning[\"logger\"][\"version\"] = os.urandom(4).hex()\n\n    if \"scaling_factor\" in model and \"scaling_factor\" not in dataset:\n        dataset[\"scaling_factor\"] = model[\"scaling_factor\"]\n    if \"scaling_factor\" in dataset and \"scaling_factor\" not in model:\n        model[\"scaling_factor\"] = dataset[\"scaling_factor\"]\n    if \"scaling_factor\" not in model and \"scaling_factor\" not in dataset:\n        model[\"scaling_factor\"] = dataset[\"scaling_factor\"] = 1.0\n\n    if \"latent_shift\" in model and \"latent_shift\" not in dataset:\n        dataset[\"latent_shift\"] = model[\"latent_shift\"]\n    if \"latent_shift\" in dataset and \"latent_shift\" not in model:\n        model[\"latent_shift\"] = dataset[\"latent_shift\"]\n    if \"latent_shift\" not in model and \"latent_shift\" not in dataset:\n        model[\"latent_shift\"] = dataset[\"latent_shift\"] = 0.0\n\n    return model, dataset, trainer, lightning\n"
  },
  {
    "path": "pipelines/hdm/xut/__init__.py",
    "content": ""
  },
  {
    "path": "pipelines/hdm/xut/env.py",
    "content": "TORCH_COMPILE = False\nUSE_LIGER = True\nUSE_VANILLA = True\nUSE_XFORMERS = False\nUSE_XFORMERS_LAYERS = False\nCOMPILE_ARGS = {\n    \"mode\": \"default\",\n    \"dynamic\": True,\n}\n"
  },
  {
    "path": "pipelines/hdm/xut/modules/__init__.py",
    "content": ""
  },
  {
    "path": "pipelines/hdm/xut/modules/adaln.py",
    "content": "import torch\nimport torch.nn as nn\nimport torch.nn.functional as F\nimport torch.optim as optim\n\nfrom .norm import RMSNorm\n\n\nclass AdaLN(nn.Module):\n    def __init__(self, dim, y_dim, gate=True, norm_layer=RMSNorm, shared=False):\n        super().__init__()\n        self.norm = norm_layer(dim)\n        self.gate = gate\n        if shared:\n            self.adaln = None\n        else:\n            self.adaln = nn.Linear(y_dim, dim * (2 + bool(gate)))\n            nn.init.constant_(self.adaln.bias, 0)\n            nn.init.constant_(self.adaln.weight, 0)\n\n    def forward(self, x, y, shared_adaln=None):\n        if shared_adaln is None:\n            scale, shift, *gate = self.adaln(y).chunk(2 + bool(self.gate), dim=-1)\n        else:\n            scale, shift, *gate = shared_adaln\n        normed_x, _ = self.norm(x)\n        result = normed_x * (scale + 1.0) + shift\n        return result, (gate[0] + 1) if self.gate else 1\n"
  },
  {
    "path": "pipelines/hdm/xut/modules/attention.py",
    "content": "import math\nfrom functools import cache\n\nimport torch\nimport torch.nn as nn\nimport torch.nn.functional as F\n\ntry:\n    import xformers\n\n    XFORMERS_AVAILABLE = True\nexcept ImportError:\n    XFORMERS_AVAILABLE = False\nif XFORMERS_AVAILABLE:\n    from xformers.ops import memory_efficient_attention\nelse:\n    memory_efficient_attention = None\n\nfrom .. import env\nfrom ..utils import compile_wrapper\nfrom .axial_rope import AxialRoPE\n\n\nif not env.USE_XFORMERS:\n    memory_efficient_attention = None\nif env.USE_VANILLA:\n\n    @compile_wrapper\n    def memory_efficient_attention(query, key, value, attn_bias=None, p=0.0):\n        scale = 1.0 / query.shape[-1] ** 0.5\n        query = query * scale\n        query = query.transpose(1, 2)\n        key = key.transpose(1, 2)\n        value = value.transpose(1, 2)\n        attn = query @ key.transpose(-2, -1)\n        if attn_bias is not None:\n            attn = attn + attn_bias\n        attn = attn.softmax(-1)\n        attn = F.dropout(attn, p)\n        attn = attn @ value\n        return attn.transpose(1, 2).contiguous()\n\n\nclass SelfAttention(nn.Module):\n    def __init__(self, dim, n_heads=8, head_dim=-1, pos_dim=2):\n        super().__init__()\n        self.dim = dim\n        self.n_heads = n_heads\n        self.head_dim = head_dim if head_dim > 0 else dim // n_heads\n        self.n_heads = dim // self.head_dim\n        assert (\n            self.n_heads * self.head_dim == dim\n        ), \"dim must be divisible by n_heads or head_dim\"\n\n        self.qkv = nn.Linear(dim, dim * 3, bias=False)\n        self.out = nn.Linear(dim, dim)\n        self.rope = AxialRoPE(self.head_dim, self.n_heads, pos_dim)\n        self.attn = memory_efficient_attention or F.scaled_dot_product_attention\n        self.xformers = memory_efficient_attention is not None\n\n    def forward(self, x, pos_map=None, mask=None):\n        b, n, _, h = *x.shape, self.n_heads\n        q, k, v = self.qkv(x).chunk(3, dim=-1)\n\n        if pos_map is not None:\n            q = self.rope(q.reshape(b, n, h, -1).transpose(1, 2), pos_map)\n            k = self.rope(k.reshape(b, n, h, -1).transpose(1, 2), pos_map)\n            v = v.reshape(b, n, h, -1)\n            if self.xformers:\n                q = q.transpose(1, 2)\n                k = k.transpose(1, 2)\n            else:\n                v = v.transpose(1, 2)\n        else:\n            q, k, v = map(lambda t: t.reshape(b, n, h, -1), (q, k, v))\n            if not self.xformers:\n                q = q.transpose(1, 2)\n                k = k.transpose(1, 2)\n                v = v.transpose(1, 2)\n\n        if mask is not None:\n            if mask.ndim == 2:\n                mask = mask[None, None]\n            elif mask.ndim == 3:\n                mask = mask[:, None]\n            if n % 8 and self.xformers:\n                align_n = math.ceil(n / 8) * 8\n                mask_align = torch.empty(\n                    *mask.shape[:3], align_n, device=mask.device, dtype=mask.dtype\n                )\n                mask_align[..., :n] = mask\n                mask = mask_align.to(q).expand(b, h, n, align_n)[..., :n]\n            else:\n                mask = mask.to(q).expand(b, h, n, n)\n\n        attn = self.attn(q, k, v, mask)\n        if not self.xformers:\n            attn = attn.transpose(1, 2)\n        attn = attn.reshape(b, n, h * self.head_dim)\n        attn = self.out(attn)\n        return attn\n\n\nclass CrossAttention(nn.Module):\n    def __init__(self, dim, ctx_dim, n_heads=8, head_dim=-1, pos_dim=2):\n        super().__init__()\n        self.dim = dim\n        self.n_heads = n_heads\n        self.head_dim = head_dim if head_dim > 0 else dim // n_heads\n        self.n_heads = dim // self.head_dim\n        assert (\n            self.n_heads * self.head_dim == dim\n        ), \"dim must be divisible by n_heads or head_dim\"\n\n        self.q = nn.Linear(dim, dim, bias=False)\n        self.kv = nn.Linear(ctx_dim, dim * 2, bias=False)\n        self.out = nn.Linear(dim, dim)\n        self.rope = AxialRoPE(self.head_dim, self.n_heads, pos_dim)\n        self.attn = memory_efficient_attention or F.scaled_dot_product_attention\n        self.xformers = memory_efficient_attention is not None\n\n    def forward(self, x, ctx, pos_map=None, ctx_pos_map=None, mask=None):\n        b, n, _, h = *x.shape, self.n_heads\n        ctx_n = ctx.shape[1]\n        q = self.q(x)\n        k, v = self.kv(ctx).chunk(2, dim=-1)\n\n        if pos_map is not None:\n            q = self.rope(q.reshape(b, n, h, -1).transpose(1, 2), pos_map)\n            q = q if not self.xformers else q.transpose(1, 2)\n        else:\n            q = q.reshape(b, n, h, -1)\n            q = q if self.xformers else q.transpose(1, 2)\n        if ctx_pos_map is not None:\n            k = self.rope(k.reshape(b, ctx_n, h, -1).transpose(1, 2), ctx_pos_map)\n            k = k if not self.xformers else k.transpose(1, 2)\n        else:\n            k = k.reshape(b, ctx_n, h, -1)\n            k = k if self.xformers else k.transpose(1, 2)\n        v = v.reshape(b, ctx_n, h, -1)\n        v = v if self.xformers else v.transpose(1, 2)\n\n        if mask is not None:\n            if mask.ndim == 2:\n                mask = mask[None, None]\n            elif mask.ndim == 3:\n                mask = mask[:, None]\n            if ctx_n % 8 and self.xformers:\n                align_n = math.ceil(ctx_n / 8) * 8\n                mask_align = torch.empty(\n                    *mask.shape[:3], align_n, device=mask.device, dtype=mask.dtype\n                )\n                mask_align[..., :ctx_n] = mask\n                mask = mask_align.to(q).expand(b, h, n, align_n)[..., :ctx_n]\n            else:\n                mask = mask.to(q).expand(b, h, n, ctx_n)\n\n        attn = self.attn(q, k, v, mask)\n        if not self.xformers:\n            attn = attn.transpose(1, 2)\n        attn = attn.reshape(b, n, h * self.head_dim)\n        attn = self.out(attn)\n        return attn\n\n\nclass AttentionPooling(CrossAttention):\n    def __init__(self, dim, n_heads=8, head_dim=-1, pos_dim=2):\n        super().__init__(dim, dim, n_heads, head_dim, pos_dim)\n        self.query_token = nn.Parameter(torch.randn(1, 1, dim) * 1 / dim**0.5)\n\n    def forward(self, x, pos_map=None, mask=None):\n        query = self.query_token.expand(x.shape[0], -1, -1)\n        return super().forward(query, x, None, pos_map, mask).squeeze(1)\n\n\nclass AttentiveProbe(CrossAttention):\n    def __init__(self, dim, out_dim, n_heads=8, head_dim=-1, pos_dim=2, n_probes=1):\n        super().__init__(dim, dim, n_heads, head_dim, pos_dim)\n        self.query_token = nn.Parameter(torch.randn(1, n_probes, dim) * 1 / dim**0.5)\n        self.token_proj = nn.Linear(dim * n_probes, out_dim)\n\n    def forward(self, x, pos_map=None, mask=None):\n        query = self.query_token.expand(x.shape[0], -1, -1)\n        output_embedding = super().forward(query, x, None, pos_map, mask)\n        output_embedding = output_embedding.flatten(-2, -1)\n        return self.token_proj(output_embedding)\n\n\n@cache\ndef prefix_causal_attention_mask(\n    q_len, kv_len, prefix_len=0, is_self_attn=False, dtype=None, device=None\n):\n    \"\"\"\n    **Made by claude 3.7 sonnet without thinking**\n    Generate attention masks and biases for transformer models.\n\n    Parameters:\n    -----------\n    q_len : int\n        Length of the query sequence\n    kv_len : int\n        Length of the key/value sequence\n    prefix_len : int, optional\n        Length of the prefix for which we allow full attention (no causal masking)\n        Default: 0 (standard causal mask)\n    is_self_attn : bool, optional\n        Whether this is for self-attention (q_len == kv_len and they represent the same sequence)\n        Enables faster mask generation\n        Default: False\n    dtype : torch.dtype, optional\n        Data type for the output tensors\n        Default: None (will use torch.bool for mask, torch.float for bias)\n    device : torch.device, optional\n        Device on which to create the tensors\n        Default: None (will use the default torch device)\n\n    Returns:\n    --------\n    tuple: (attention_mask, attention_bias)\n        - attention_mask: Boolean tensor of shape (q_len, kv_len) where True values indicate\n          positions that should be attended to\n        - attention_bias: Tensor of same shape with dtype specified (or float), containing\n          0.0 for positions to attend to and -float('inf') for positions to mask out\n    \"\"\"\n    # Fast path for self-attention with no prefix\n    if is_self_attn and prefix_len == 0:\n        # Simple lower triangular matrix for standard causal self-attention\n        attention_mask = torch.tril(\n            torch.ones(q_len, q_len, dtype=torch.bool, device=device)\n        )\n\n    # Fast path for self-attention with prefix\n    elif is_self_attn and prefix_len > 0:\n        attention_mask = torch.tril(\n            torch.ones(q_len, q_len, dtype=torch.bool, device=device)\n        )\n\n        # Add the prefix part (allow full attention to the prefix)\n        if prefix_len < q_len:\n            # Set the prefix columns to all True (we use indexing which is faster than cat)\n            attention_mask[:, :prefix_len] = True\n\n    # General case for cross-attention or when fast path is not used\n    else:\n        # Create base causal mask (lower triangular)\n        # Each query position i can attend to key positions j where j <= i\n        causal_mask = torch.tril(\n            torch.ones(q_len, kv_len, dtype=torch.bool, device=device)\n        )\n\n        # If there's a prefix, allow full attention within that prefix\n        if prefix_len > 0:\n            # Combine masks:\n            # - For the prefix part of kv, use all True\n            # - For the rest, use causal mask\n            if prefix_len < kv_len:\n                attention_mask = torch.cat(\n                    [\n                        torch.ones(q_len, prefix_len, dtype=torch.bool, device=device),\n                        causal_mask[:, prefix_len:],\n                    ],\n                    dim=1,\n                )\n            else:\n                # If prefix_len >= kv_len, the entire sequence gets full attention\n                attention_mask = torch.ones(\n                    q_len, kv_len, dtype=torch.bool, device=device\n                )\n        else:\n            # Without prefix, just use the causal mask\n            attention_mask = causal_mask\n\n    # Convert boolean mask to attention bias\n    # True -> 0.0, False -> -inf\n    float_dtype = torch.float if dtype is None else dtype\n    attention_bias = torch.zeros_like(attention_mask, dtype=float_dtype, device=device)\n    attention_bias = attention_bias.masked_fill(~attention_mask, float(\"-inf\"))\n\n    return attention_mask, attention_bias\n\n\n# Example usage:\nif __name__ == \"__main__\":\n    # Standard causal mask for sequence length 6\n    mask, bias = prefix_causal_attention_mask(q_len=6, kv_len=6)\n    print(\"Standard causal mask:\")\n    print(mask)\n    print(\"\\nStandard causal bias:\")\n    print(bias)\n\n    # Same with self-attention flag\n    mask_self, bias_self = prefix_causal_attention_mask(\n        q_len=6, kv_len=6, is_self_attn=True\n    )\n    print(\"\\nSelf-attention causal mask (should be identical):\")\n    print(mask_self)\n    print(\"Masks are identical:\", torch.all(mask == mask_self).item())\n\n    # Causal mask with prefix_len=3 (first 2 tokens get full attention)\n    mask, bias = prefix_causal_attention_mask(q_len=6, kv_len=6, prefix_len=3)\n    print(\"\\nCausal mask with prefix_len=3:\")\n    print(mask)\n    print(\"\\nCausal bias with prefix_len=3:\")\n    print(bias)\n\n    # Same with self-attention flag\n    mask_self, bias_self = prefix_causal_attention_mask(\n        q_len=6, kv_len=6, prefix_len=3, is_self_attn=True\n    )\n    print(\"\\nSelf-attention mask with prefix_len=3 (should be identical):\")\n    print(mask_self)\n    print(\"Masks are identical:\", torch.all(mask == mask_self).item())\n\n    # Handling different q_len and kv_len (for cross-attention)\n    mask, bias = prefix_causal_attention_mask(q_len=4, kv_len=6, prefix_len=3)\n    print(\"\\nCross-attention mask with q_len=4, kv_len=6, prefix_len=3:\")\n    print(mask)\n    print(\"\\nCross-attention bias:\")\n    print(bias)\n\n    self_attn = SelfAttention(64, 8).cuda().half()\n    x = torch.randn(1, 16, 64).cuda().half()\n    mask, bias = prefix_causal_attention_mask(\n        16, 16, is_self_attn=True, device=x.device, dtype=x.dtype\n    )\n    test_out = self_attn(x, mask=bias)\n    torch.sum(test_out).backward()\n\n    print(x.shape, mask.shape, bias.shape)\n    print(test_out.shape)\n    print(torch.isnan(test_out).any())\n    print(torch.norm(next(self_attn.parameters()).grad))\n"
  },
  {
    "path": "pipelines/hdm/xut/modules/axial_rope.py",
    "content": "import math\nfrom functools import lru_cache\n\nimport torch\nfrom torch import nn\n\nfrom ..utils import compile_wrapper\n\n\n@compile_wrapper\ndef rotate_half(x):\n    x1, x2 = x[..., 0::2], x[..., 1::2]\n    x = torch.stack((-x2, x1), dim=-1)\n    *shape, d, r = x.shape\n    return x.view(*shape, d * r)\n\n\n@compile_wrapper\ndef apply_rotary_emb(freqs, t, start_index=0, scale=1.0):\n    freqs = freqs.to(t)\n    rot_dim = freqs.shape[-1]\n    end_index = start_index + rot_dim\n    assert (\n        rot_dim <= t.shape[-1]\n    ), f\"feature dimension {t.shape[-1]} is not of sufficient size to rotate in all the positions {rot_dim}\"\n    t_left, t, t_right = (\n        t[..., :start_index],\n        t[..., start_index:end_index],\n        t[..., end_index:],\n    )\n    t = (t * freqs.cos() * scale) + (rotate_half(t) * freqs.sin() * scale)\n    return torch.cat((t_left, t, t_right), dim=-1)\n\n\ndef centers(start, stop, num, dtype=None, device=None):\n    edges = torch.linspace(start, stop, num + 1, dtype=dtype, device=device)\n    return (edges[:-1] + edges[1:]) / 2\n\n\ndef make_grid(h_pos, w_pos):\n    grid = torch.stack(torch.meshgrid(h_pos, w_pos, indexing=\"ij\"), dim=-1)\n    return grid.flatten(0, 1)\n\n\ndef bounding_box(h, w, pixel_aspect_ratio=1.0):\n    # Adjusted dimensions\n    w_adj = w\n    h_adj = h * pixel_aspect_ratio\n\n    # Adjusted aspect ratio\n    ar_adj = w_adj / h_adj\n\n    # Determine bounding box based on the adjusted aspect ratio\n    y_min, y_max, x_min, x_max = -1.0, 1.0, -1.0, 1.0\n    if ar_adj > 1:\n        y_min, y_max = -1 / ar_adj, 1 / ar_adj\n    elif ar_adj < 1:\n        x_min, x_max = -ar_adj, ar_adj\n\n    return torch.tensor([y_min, y_max, x_min, x_max])\n\n\n@lru_cache(maxsize=8)\ndef make_axial_pos(\n    h, w, pixel_aspect_ratio=1.0, align_corners=False, dtype=None, device=None\n):\n    y_min, y_max, x_min, x_max = bounding_box(h, w, pixel_aspect_ratio)\n    if align_corners:\n        h_pos = torch.linspace(y_min, y_max, h, dtype=dtype, device=device)\n        w_pos = torch.linspace(x_min, x_max, w, dtype=dtype, device=device)\n    else:\n        h_pos = centers(y_min, y_max, h, dtype=dtype, device=device)\n        w_pos = centers(x_min, x_max, w, dtype=dtype, device=device)\n    return make_grid(h_pos, w_pos)\n\n\ndef make_axial_pos_no_cache(\n    h, w, pixel_aspect_ratio=1.0, align_corners=False, dtype=None, device=None\n):\n    y_min, y_max, x_min, x_max = bounding_box(h, w, pixel_aspect_ratio)\n    if align_corners:\n        h_pos = torch.linspace(y_min, y_max, h, dtype=dtype, device=device)\n        w_pos = torch.linspace(x_min, x_max, w, dtype=dtype, device=device)\n    else:\n        h_pos = centers(y_min, y_max, h, dtype=dtype, device=device)\n        w_pos = centers(x_min, x_max, w, dtype=dtype, device=device)\n    return make_grid(h_pos, w_pos)\n\n\ndef make_cropped_pos(crop_h, crop_w, target_h, target_w):\n    pos_map = make_axial_pos_no_cache(target_h, target_w).unflatten(\n        0, (target_h, target_w)\n    )\n    if target_h > target_w:\n        pos_map = pos_map[crop_h : crop_h + target_w, :]\n    elif target_h < target_w:\n        pos_map = pos_map[:, crop_w : crop_w + target_h]\n    return pos_map.flatten(0, 1)\n\n\ndef freqs_pixel(max_freq=10.0):\n    def init(shape):\n        freqs = torch.linspace(1.0, max_freq / 2, shape[-1]) * math.pi\n        return freqs.log().expand(shape)\n\n    return init\n\n\ndef freqs_pixel_log(max_freq=10.0):\n    def init(shape):\n        log_min = math.log(math.pi)\n        log_max = math.log(max_freq * math.pi / 2)\n        return torch.linspace(log_min, log_max, shape[-1]).expand(shape)\n\n    return init\n\n\nclass AxialRoPE(nn.Module):\n    def __init__(\n        self,\n        dim,\n        n_heads,\n        pos_dim=2,\n        start_index=0,\n        freqs_init=freqs_pixel_log(max_freq=10.0),\n    ):\n        super().__init__()\n        self.n_heads = n_heads\n        self.start_index = start_index\n        log_freqs = freqs_init((n_heads, dim // (2 * pos_dim), 1))\n        self.freqs = nn.Parameter(log_freqs.clone().repeat(1, 1, pos_dim))\n\n    def extra_repr(self):\n        dim = self.freqs.shape[-1]\n        return f\"dim={dim}, n_heads={self.n_heads}, start_index={self.start_index}\"\n\n    def get_freqs(self, pos):\n        if pos.shape[-1] != self.freqs.shape[-1]:\n            raise ValueError(f\"input shape must be (..., {self.freqs.shape[-1]})\")\n        freqs = pos[..., None, None, :] * self.freqs.exp()\n        freqs = freqs.flatten(-2, -1).repeat_interleave(2, dim=-1)\n        return freqs.transpose(-2, -3)\n\n    @compile_wrapper\n    def forward(self, x, pos):\n        freqs = self.get_freqs(pos)\n        return apply_rotary_emb(freqs, x, self.start_index)\n\n\nclass AdditiveAxialRoPE(AxialRoPE):\n    \"\"\"\n    https://arxiv.org/abs/2405.10436\n    \"\"\"\n\n    def __init__(\n        self,\n        dim,\n        n_heads,\n        pos_dim=2,\n        start_index=0,\n        freqs_init=freqs_pixel_log(max_freq=10.0),\n    ):\n        super().__init__(dim, n_heads, pos_dim, start_index, freqs_init)\n        self.emb = nn.Parameter(torch.randn(dim) / dim**0.5)\n\n    def forward(self, x, pos):\n        pos_emb = torch.zeros_like(x)\n        pos_emb = pos_emb + self.emb\n        freqs = self.get_freqs(pos)\n        if x.ndim == 3:\n            pos_emb = pos_emb.unsqueeze(1)\n        return x + apply_rotary_emb(freqs, pos_emb, self.start_index).view(x.shape)\n\n\nif __name__ == \"__main__\":\n    x = torch.randn(2, 1, 4 * 4, 16)\n    pos = torch.randn(2, 16, 1)\n    model = AxialRoPE(16, 1, 1)\n    print(model(x, pos).shape)\n"
  },
  {
    "path": "pipelines/hdm/xut/modules/layers.py",
    "content": "import torch\nimport torch.nn as nn\nimport torch.nn.functional as F\n\ntry:\n    import xformers\n\n    XFORMERS_AVAILABLE = True\nexcept ImportError:\n    XFORMERS_AVAILABLE = False\n\nfrom .. import env\nfrom ..utils import compile_wrapper\n\n\nclass SwiGLUTorch(nn.Module):\n    def __init__(\n        self, in_features, hidden_features, out_features, bias=True, _pack_weights=True\n    ):\n        super().__init__()\n        self.in_features = in_features\n        self.hidden_features = hidden_features or in_features\n        self.out_features = out_features or in_features\n        if _pack_weights:\n            self.w12 = torch.nn.Linear(in_features, 2 * hidden_features, bias=bias)\n        else:\n            self.w1 = torch.nn.Linear(in_features, hidden_features, bias=bias)\n            self.w2 = torch.nn.Linear(in_features, hidden_features, bias=bias)\n        self.w3 = torch.nn.Linear(hidden_features, out_features, bias=bias)\n\n    @compile_wrapper\n    def forward(self, x):\n        if self.w12 is not None:\n            x1, x2 = self.w12(x).chunk(2, dim=-1)\n        else:\n            x1 = self.w1(x)\n            x2 = self.w2(x)\n        return self.w3(F.silu(x1) * x2)\n\n\nif XFORMERS_AVAILABLE:\n    from xformers.ops import SwiGLU\nelse:\n    SwiGLU = SwiGLUTorch\nif not env.USE_XFORMERS_LAYERS:\n    SwiGLU = SwiGLUTorch\n\n\nif __name__ == \"__main__\":\n    x = torch.randn(2, 16, 128)\n    model1 = SwiGLU(128, 256, 128)\n    model2 = SwiGLUTorch(128, 256, 128)\n\n    model1.load_state_dict(model2.state_dict())\n\n    print(F.mse_loss(model1(x), model2(x)), torch.norm(model1(x)))\n"
  },
  {
    "path": "pipelines/hdm/xut/modules/norm.py",
    "content": "import torch\nimport torch.nn as nn\nimport torch.nn.functional as F\n\ntry:\n    from liger_kernel.transformers.rms_norm import LigerRMSNorm\nexcept ImportError:\n    LigerRMSNorm = None\n\nfrom .. import env\nfrom ..utils import compile_wrapper\n\n\nclass DyT(nn.Module):\n    \"\"\"\n    Transformers without Normalization\n    https://arxiv.org/abs/2503.10622\n    \"\"\"\n\n    def __init__(self, hidden_size, init_alpha=1.0):\n        super().__init__()\n        self.hidden_size = hidden_size\n        self.in_weight = nn.Parameter(torch.ones(hidden_size) * init_alpha)\n\n    @compile_wrapper\n    def forward(self, hidden_states):\n        hidden_states = torch.tanh(self.in_weight * hidden_states)\n        return hidden_states, 1.0\n\n\nclass RMSNormTorch(nn.RMSNorm):\n    def __init__(self, hidden_size, *args, eps=1e-6, offset=0.0, **kwargs):\n        super().__init__((hidden_size,), *args, eps=eps, **kwargs)\n        self.offset = offset\n\n    @compile_wrapper\n    def forward(self, hidden_states):\n        return (\n            F.rms_norm(\n                hidden_states,\n                self.normalized_shape,\n                self.weight + self.offset,\n                self.eps,\n            ),\n            1.0,\n        )\n\n\nif LigerRMSNorm is None or not env.USE_LIGER:\n    RMSNorm = RMSNormTorch\n\nelse:\n\n    class RMSNorm(LigerRMSNorm):\n        def __init__(\n            self,\n            hidden_size,\n            eps=1e-6,\n            offset=0.0,\n            casting_mode=\"llama\",\n            init_fn=\"ones\",\n            in_place=True,\n        ):\n            super().__init__(\n                hidden_size,\n                eps=eps,\n                offset=offset,\n                casting_mode=casting_mode,\n                init_fn=init_fn,\n                in_place=in_place,\n            )\n\n        def forward(self, hidden_states):\n            return super().forward(hidden_states), 1.0\n\n\ndef Norm(module: nn.Module):\n    module.org_forward = module.forward\n    module.forward = lambda *args, **kwargs: module.org_forward(*args, **kwargs)[0]\n    return module\n\n\nif __name__ == \"__main__\":\n    if LigerRMSNorm is None:\n        print(\"LigerRMSNorm is available\")\n        exit()\n\n    hidden_size = 512\n    hidden_states = torch.randn(2, hidden_size).cuda()\n\n    norm1 = RMSNorm(hidden_size).cuda()\n    norm2 = RMSNormTorch(hidden_size).cuda()\n\n    nn.init.normal_(norm1.weight)\n    norm2.load_state_dict(norm1.state_dict())\n\n    print(F.mse_loss(norm1(hidden_states)[0], norm2(hidden_states)[0]))\n"
  },
  {
    "path": "pipelines/hdm/xut/modules/patch.py",
    "content": "import torch\nimport torch.nn as nn\nimport torch.nn.functional as F\n\n\nclass PatchEmbed(nn.Module):\n    def __init__(\n        self,\n        patch_size=4,\n        in_channels=3,\n        embed_dim=512,\n        norm_layer=None,\n        flatten=True,\n        bias=True,\n    ):\n        super().__init__()\n        self.patch_size = patch_size\n        self.flatten = flatten\n\n        self.proj = nn.Conv2d(in_channels, embed_dim, patch_size, patch_size, bias=bias)\n        self.norm = nn.Identity() if norm_layer is None else norm_layer(embed_dim)\n\n    def forward(self, x, pos_map=None):\n        b, _, h, w = x.shape\n        x = self.proj(x)\n        b, _, new_h, new_w = x.shape\n        if pos_map is not None:\n            pos_map = (\n                F.interpolate(\n                    pos_map.reshape(b, h, w, -1).permute(0, 3, 1, 2),\n                    (new_h, new_w),\n                    mode=\"bilinear\",\n                    antialias=True,\n                )\n                .permute(0, 2, 3, 1)\n                .flatten(1, 2)\n            )\n        if self.flatten:\n            x = x.flatten(2).transpose(1, 2)\n        x = self.norm(x)\n        return x, pos_map\n\n\nclass UnPatch(nn.Module):\n    def __init__(self, patch_size=4, input_dim=512, out_channel=3, proj=True):\n        super().__init__()\n        self.patch_size = patch_size\n        self.c = out_channel\n\n        if proj:\n            self.proj = nn.Linear(input_dim, patch_size**2 * out_channel)\n        else:\n            self.proj = nn.Identity()\n\n    def forward(self, x: torch.Tensor, axis1=None, axis2=None, loss_mask=None):\n        b, n, _ = x.shape\n        p = q = self.patch_size\n        if axis1 is None and axis2 is None:\n            w = h = int(n**0.5)\n            assert h * w == n\n        else:\n            h = axis1 // p if axis1 else n // (axis2 // p)\n            w = axis2 // p if axis2 else n // h\n            assert h * w == n\n\n        x = self.proj(x)\n        if loss_mask is not None:\n            x = torch.where(loss_mask[..., None], x, x.detach())\n        x = (\n            x.reshape(b, h, w, p, q, self.c)\n            .permute(0, 5, 1, 3, 2, 4)\n            .reshape(b, self.c, h * p, w * q)\n        )\n        return x\n"
  },
  {
    "path": "pipelines/hdm/xut/modules/time_emb.py",
    "content": "import math\n\nimport torch\nimport torch.nn as nn\n\nfrom ..utils import compile_wrapper\n\n\nclass TimestepEmbedding(nn.Module):\n    def __init__(self, dim, max_period=10000, time_factor: float = 1000.0):\n        super().__init__()\n        self.dim = dim\n        self.max_period = max_period\n        self.time_factor = time_factor\n        self.register_buffer(\n            \"freqs\",\n            torch.exp(\n                -math.log(max_period)\n                * torch.arange(start=0, end=dim // 2, dtype=torch.float32)\n                / (dim // 2)\n            )[None],\n        )\n        self.proj = nn.Sequential(nn.Linear(dim, dim), nn.Mish())\n\n    @compile_wrapper\n    def forward(self, t):\n        t = self.time_factor * t\n        args = t[:, None] * self.freqs\n        embedding = torch.cat([torch.cos(args), torch.sin(args)], dim=-1)\n        if self.dim % 2:\n            embedding = torch.cat(\n                [embedding, torch.zeros_like(embedding[:, :1])], dim=-1\n            )\n        return self.proj(embedding)\n"
  },
  {
    "path": "pipelines/hdm/xut/modules/transformer.py",
    "content": "import torch.nn as nn\n\nfrom .layers import SwiGLU\nfrom .attention import SelfAttention, CrossAttention\nfrom .norm import RMSNorm\nfrom .adaln import AdaLN\n\n\nclass TransformerBlock(nn.Module):\n    def __init__(\n        self,\n        dim,\n        ctx_dim,\n        heads,\n        dim_head,\n        mlp_dim,\n        pos_dim,\n        use_adaln=False,\n        use_shared_adaln=False,\n        ctx_from_self=False,\n        norm_layer=RMSNorm,\n    ):\n        super().__init__()\n        self.use_adaln = use_adaln\n        self.attn = SelfAttention(dim, heads, dim_head, pos_dim)\n        if ctx_dim is None:\n            self.xattn_pre_norm = None\n            self.xattn = None\n        else:\n            self.ctx_from_self = ctx_from_self\n            self.xattn = CrossAttention(dim, ctx_dim, heads, dim_head, pos_dim)\n        self.mlp = SwiGLU(dim, mlp_dim, dim)\n\n        if self.use_adaln:\n            self.attn_pre_norm = AdaLN(\n                dim, dim, norm_layer=norm_layer, shared=use_shared_adaln\n            )\n            self.mlp_pre_norm = AdaLN(\n                dim, dim, norm_layer=norm_layer, shared=use_shared_adaln\n            )\n            if self.xattn is not None:\n                self.xattn_pre_norm = AdaLN(\n                    dim, dim, norm_layer=norm_layer, shared=use_shared_adaln\n                )\n        else:\n            self.attn_pre_norm = norm_layer(dim)\n            self.mlp_pre_norm = norm_layer(dim)\n            if self.xattn is not None:\n                self.xattn_pre_norm = norm_layer(dim)\n\n    def forward(\n        self,\n        x,\n        ctx,\n        pos_map=None,\n        ctx_pos_map=None,\n        y=None,\n        x_mask=None,\n        ctx_mask=None,\n        shared_adaln=None,\n    ):\n        y = [y] if y is not None else []\n        y = y if shared_adaln is None else [y[0], shared_adaln[0]]\n        x, gate = self.attn_pre_norm(x, *y)\n        x = x + self.attn(x, pos_map, mask=x_mask) * gate\n\n        if self.xattn is not None:\n            if shared_adaln is not None:\n                y[1] = shared_adaln[1]\n            x, gate = self.xattn_pre_norm(x, *y)\n            if self.ctx_from_self:\n                ctx_mask = x_mask\n            x = x + self.xattn(x, ctx, pos_map, ctx_pos_map, mask=ctx_mask) * gate\n\n        if shared_adaln is not None:\n            y[1] = shared_adaln[-1]\n        x, gate = self.mlp_pre_norm(x, *y)\n        x = x + self.mlp(x) * gate\n        return x\n"
  },
  {
    "path": "pipelines/hdm/xut/utils/__init__.py",
    "content": "import torch\nfrom .. import env\n\n\ndef isiterable(obj):\n    try:\n        iter(obj)\n    except TypeError:\n        return False\n    return True\n\n\ndef compile_wrapper(func, **kwargs):\n    kwargs.update(env.COMPILE_ARGS)\n    compiled = torch.compile(func, **kwargs)\n\n    def runner(*args, **kwargs):\n        if env.TORCH_COMPILE:\n            return compiled(*args, **kwargs)\n        else:\n            return func(*args, **kwargs)\n\n    return runner\n"
  },
  {
    "path": "pipelines/hdm/xut/xut.py",
    "content": "import torch\nimport torch.nn as nn\nimport torch.nn.functional as F\nfrom torch.utils.checkpoint import checkpoint\n\nfrom .modules.norm import RMSNorm\nfrom .modules.transformer import TransformerBlock\nfrom .modules.patch import PatchEmbed, UnPatch\nfrom .modules.axial_rope import make_axial_pos\nfrom .modules.time_emb import TimestepEmbedding\nfrom .modules.norm import RMSNorm, DyT\nfrom .utils import isiterable\n\n\nclass TBackBone(nn.Module):\n    \"\"\"\n    Basic backbone of transformer\n    \"\"\"\n\n    def __init__(\n        self,\n        dim=1024,\n        ctx_dim=1024,\n        heads=16,\n        dim_head=64,\n        mlp_dim=3072,\n        pos_dim=2,\n        depth=8,\n        use_adaln=False,\n        use_shared_adaln=False,\n        use_dyt=False,\n    ):\n        super().__init__()\n        self.blocks = nn.ModuleList(\n            [\n                TransformerBlock(\n                    dim,\n                    ctx_dim,\n                    heads,\n                    dim_head,\n                    mlp_dim,\n                    pos_dim,\n                    use_adaln,\n                    use_shared_adaln,\n                    norm_layer=DyT if use_dyt else RMSNorm,\n                )\n                for _ in range(depth)\n            ]\n        )\n        self.grad_ckpt = False\n\n    def init_weight(self):\n        for param in self.parameters():\n            if param.ndim == 1:\n                nn.init.normal_(param, mean=0.0, std=(1 / param.size(0)) ** 0.5)\n            elif param.ndim == 2:\n                fan_in = param.size(1)\n                nn.init.normal_(param, mean=0.0, std=(1 / fan_in) ** 0.5)\n            elif param.ndim >= 3:\n                fan_out, *fan_ins = param.shape\n                # cumprod\n                fan_in = 1\n                for f in fan_ins:\n                    fan_in *= f\n                nn.init.normal_(param, mean=0.0, std=(1 / fan_in) ** 0.5)\n\n    def forward(\n        self,\n        x,\n        ctx=None,\n        x_mask=None,\n        ctx_mask=None,\n        pos_map=None,\n        y=None,\n        shared_adaln=None,\n    ):\n        if pos_map is not None:\n            assert pos_map.size(1) == x.size(1)\n\n        for block in self.blocks:\n            if self.grad_ckpt:\n                x = checkpoint(\n                    block,\n                    x,\n                    ctx,\n                    pos_map,\n                    None,\n                    y,\n                    x_mask,\n                    ctx_mask,\n                    shared_adaln,\n                    use_reentrant=False,\n                )\n            else:\n                x = block(x, ctx, pos_map, None, y, x_mask, ctx_mask, shared_adaln)\n\n        return x\n\n\nclass XUTBackBone(nn.Module):\n    \"\"\"\n    Basic backbone of cross-U-transformer.\n    \"\"\"\n\n    def __init__(\n        self,\n        dim=1024,\n        ctx_dim=None,\n        heads=16,\n        dim_head=64,\n        mlp_dim=3072,\n        pos_dim=2,\n        depth=8,\n        enc_blocks=1,\n        dec_blocks=2,\n        dec_ctx=False,\n        use_adaln=False,\n        use_shared_adaln=False,\n        use_dyt=False,\n    ):\n        super().__init__()\n        if isiterable(enc_blocks):\n            enc_blocks = list(enc_blocks)\n            assert len(enc_blocks) == depth\n        else:\n            enc_blocks = [int(enc_blocks)] * depth\n        if isiterable(dec_blocks):\n            dec_blocks = list(dec_blocks)\n            assert len(dec_blocks) == depth\n        else:\n            dec_blocks = [int(dec_blocks)] * depth\n\n        self.enc_blocks = nn.ModuleList()\n        for i in range(depth):\n            blocks = [\n                TransformerBlock(\n                    dim,\n                    ctx_dim,\n                    heads,\n                    dim_head,\n                    mlp_dim,\n                    pos_dim,\n                    use_adaln,\n                    use_shared_adaln,\n                    norm_layer=DyT if use_dyt else RMSNorm,\n                )\n                for _ in range(enc_blocks[i])\n            ]\n            self.enc_blocks.append(nn.ModuleList(blocks))\n\n        self.dec_ctx = dec_ctx\n        self.dec_blocks = nn.ModuleList()\n        for i in range(depth):\n            blocks = [\n                TransformerBlock(\n                    dim,\n                    dim if bid == 0 else ctx_dim if dec_ctx else None,\n                    heads,\n                    dim_head,\n                    mlp_dim,\n                    pos_dim,\n                    use_adaln,\n                    use_shared_adaln,\n                    ctx_from_self=bid == 0,\n                    norm_layer=DyT if use_dyt else RMSNorm,\n                )\n                for bid in range(dec_blocks[i])\n            ]\n            self.dec_blocks.append(nn.ModuleList(blocks))\n\n        self.grad_ckpt = False\n\n    def init_weight(self):\n        for param in self.parameters():\n            if param.ndim == 1:\n                nn.init.normal_(param, mean=0.0, std=(1 / param.size(0)) ** 0.5)\n            elif param.ndim == 2:\n                fan_in = param.size(1)\n                nn.init.normal_(param, mean=0.0, std=(1 / fan_in) ** 0.5)\n            elif param.ndim >= 3:\n                fan_out, *fan_ins = param.shape\n                # cumprod\n                fan_in = 1\n                for f in fan_ins:\n                    fan_in *= f\n                nn.init.normal_(param, mean=0.0, std=(1 / fan_in) ** 0.5)\n\n    def forward(\n        self,\n        x,\n        ctx=None,\n        x_mask=None,\n        ctx_mask=None,\n        pos_map=None,\n        y=None,\n        shared_adaln=None,\n        return_enc_out=False,\n    ):\n        if pos_map is not None:\n            assert pos_map.size(1) == x.size(1)\n\n        self_ctx = []\n        for blocks in self.enc_blocks:\n            for block in blocks:\n                if self.grad_ckpt:\n                    x = checkpoint(\n                        block,\n                        x,\n                        ctx,\n                        pos_map,\n                        None,\n                        y,\n                        x_mask,\n                        ctx_mask,\n                        shared_adaln,\n                        use_reentrant=False,\n                    )\n                else:\n                    x = block(x, ctx, pos_map, None, y, x_mask, ctx_mask, shared_adaln)\n            self_ctx.append(x)\n        enc_out = x\n\n        for blocks in self.dec_blocks:\n            first_block = blocks[0]\n            if self.grad_ckpt:\n                x = checkpoint(\n                    first_block,\n                    x,\n                    self_ctx[-1],\n                    pos_map,\n                    pos_map,\n                    y,\n                    x_mask,\n                    ctx_mask,\n                    shared_adaln,\n                    use_reentrant=False,\n                )\n            else:\n                x = first_block(\n                    x, self_ctx[-1], pos_map, pos_map, y, x_mask, ctx_mask, shared_adaln\n                )\n\n            for block in blocks[1:]:\n                if self.grad_ckpt:\n                    x = checkpoint(\n                        block,\n                        x,\n                        ctx if self.dec_ctx else None,\n                        pos_map,\n                        None,\n                        y,\n                        x_mask,\n                        ctx_mask,\n                        shared_adaln,\n                        use_reentrant=False,\n                    )\n                else:\n                    x = block(\n                        x,\n                        ctx if self.dec_ctx else None,\n                        pos_map,\n                        None,\n                        y,\n                        x_mask,\n                        ctx_mask,\n                        shared_adaln,\n                    )\n\n        if return_enc_out:\n            return x, enc_out\n        return x\n\n\nclass XUDiT(nn.Module):\n    \"\"\"\n    Xross-U-Transformer for Image Gen (XUDiT).\n    \"\"\"\n\n    def __init__(\n        self,\n        patch_size=2,\n        input_dim=4,\n        dim=1024,\n        ctx_dim=1024,\n        ctx_size=256,\n        heads=16,\n        dim_head=64,\n        mlp_dim=3072,\n        depth=8,\n        enc_blocks=1,\n        dec_blocks=2,\n        dec_ctx=False,\n        class_cond=0,\n        shared_adaln=True,\n        concat_ctx=True,\n        use_dyt=False,\n        double_t=False,\n        addon_info_embs_dim=None,\n        tread_config=None,\n    ):\n        super().__init__()\n        self.backbone = XUTBackBone(\n            dim,\n            None if concat_ctx else ctx_dim,\n            heads,\n            dim_head,\n            mlp_dim,\n            2,\n            depth,\n            enc_blocks,\n            dec_blocks,\n            use_adaln=True,\n            use_shared_adaln=shared_adaln,\n            dec_ctx=dec_ctx,\n            use_dyt=use_dyt,\n        )\n\n        self.use_tread = False\n        if tread_config is not None:\n            self.use_tread = True\n            self.dropout_ratio = tread_config[\"dropout_ratio\"]\n            self.prev_tread_trns = TBackBone(\n                dim,\n                None if concat_ctx else ctx_dim,\n                heads,\n                dim_head,\n                mlp_dim,\n                2,\n                tread_config[\"prev_trns_depth\"],\n                use_adaln=True,\n                use_shared_adaln=shared_adaln,\n                use_dyt=use_dyt,\n            )\n            self.post_tread_trns = TBackBone(\n                dim,\n                None if concat_ctx else ctx_dim,\n                heads,\n                dim_head,\n                mlp_dim,\n                2,\n                tread_config[\"post_trns_depth\"],\n                use_adaln=True,\n                use_shared_adaln=shared_adaln,\n                use_dyt=use_dyt,\n            )\n\n        self.patch_size = patch_size\n        self.in_patch = PatchEmbed(patch_size, input_dim, dim)\n        self.out_patch = UnPatch(patch_size, dim, input_dim)\n        self.time_emb = TimestepEmbedding(dim)\n        if double_t:\n            self.r_emb = TimestepEmbedding(dim)\n        if shared_adaln:\n            self.shared_adaln_attn = nn.Sequential(\n                nn.LayerNorm(dim),\n                nn.Linear(dim, dim * 4),\n                nn.Mish(),\n                nn.Linear(dim * 4, dim * 3),\n            )\n            nn.init.constant_(self.shared_adaln_attn[-1].bias, 0)\n            nn.init.constant_(self.shared_adaln_attn[-1].weight, 0)\n            self.shared_adaln_xattn = nn.Sequential(\n                nn.LayerNorm(dim),\n                nn.Linear(dim, dim * 4),\n                nn.Mish(),\n                nn.Linear(dim * 4, dim * 3),\n            )\n            nn.init.constant_(self.shared_adaln_xattn[-1].bias, 0)\n            nn.init.constant_(self.shared_adaln_xattn[-1].weight, 0)\n            self.shared_adaln_ffw = nn.Sequential(\n                nn.LayerNorm(dim),\n                nn.Linear(dim, dim * 4),\n                nn.Mish(),\n                nn.Linear(dim * 4, dim * 3),\n            )\n            nn.init.constant_(self.shared_adaln_ffw[-1].bias, 0)\n            nn.init.constant_(self.shared_adaln_ffw[-1].weight, 0)\n        if class_cond > 0:\n            self.class_token = nn.Embedding(class_cond, dim)\n        else:\n            self.class_token = None\n        if concat_ctx and ctx_dim is not None:\n            self.ctx_proj = nn.Linear(ctx_dim, dim)\n        else:\n            self.ctx_proj = None\n        if addon_info_embs_dim is not None:\n            self.addon_info_embs_proj = nn.Sequential(\n                nn.Linear(addon_info_embs_dim, dim), nn.Mish(), nn.Linear(dim, dim)\n            )\n            nn.init.constant_(self.addon_info_embs_proj[-1].bias, 0)\n            nn.init.constant_(self.addon_info_embs_proj[-1].weight, 0)\n\n        self.concat_ctx = concat_ctx\n        self.shared_adaln = shared_adaln\n        self.need_ctx = ctx_dim is not None\n        self.ctx_dim = ctx_dim\n        self.ctx_size = ctx_size\n        self.grad_ckpt = False\n        self.init_weight()\n\n    def init_weight(self):\n        if isinstance(self.out_patch.proj, nn.Linear):\n            nn.init.normal_(\n                self.out_patch.proj.weight,\n                mean=0.0,\n                std=1 / self.out_patch.proj.in_features**2,\n            )\n\n    def set_grad_ckpt(self, grad_ckpt):\n        self.backbone.grad_ckpt = grad_ckpt\n        self.grad_ckpt = grad_ckpt\n        if self.use_tread:\n            self.prev_tread_trns.grad_ckpt = grad_ckpt\n            self.post_tread_trns.grad_ckpt = grad_ckpt\n\n    def forward(\n        self,\n        x,\n        t,\n        ctx=None,\n        pos_map=None,\n        r=None,\n        addon_info=None,\n        tread_rate=None,\n        return_enc_out=False,\n    ):\n        n, c, h, w = x.size()\n        t = t.reshape(n, -1)\n        x, pos_map = self.in_patch(x, pos_map)\n        x = x.contiguous()\n        if pos_map is None:\n            pos_map = (\n                make_axial_pos(\n                    h // self.patch_size,\n                    w // self.patch_size,\n                    dtype=x.dtype,\n                    device=x.device,\n                )\n                .unsqueeze(0)\n                .expand(n, -1, -1)\n            )\n        t_emb = self.time_emb(t)\n        if r is not None:\n            t_emb = t_emb + self.r_emb((t - r.reshape(n, -1)))\n        if self.class_token is not None and ctx is not None:\n            if ctx.ndim == 1:\n                ctx = ctx[:, None]\n            t_emb = t_emb + self.class_token(ctx)\n            ctx = None\n        if addon_info is not None:\n            if addon_info.ndim == 1:\n                # [B] -> [B, 1] for single value info\n                addon_info = addon_info[:, None]\n            # [B, D] -> [B, 1, D] for t_emb shape\n            addon_embs = self.addon_info_embs_proj(addon_info)[:, None]\n            t_emb = t_emb + addon_embs\n        if ctx == None and self.need_ctx:\n            ctx = torch.zeros(n, self.ctx_size, self.ctx_dim, device=x.device)\n\n        if self.shared_adaln:\n            shared_adaln_state = [\n                self.shared_adaln_attn(t_emb).chunk(3, dim=-1),\n                self.shared_adaln_xattn(t_emb).chunk(3, dim=-1),\n                self.shared_adaln_ffw(t_emb).chunk(3, dim=-1),\n            ]\n        else:\n            shared_adaln_state = None\n\n        length = x.size(1)\n        if self.ctx_proj is not None:\n            ctx = self.ctx_proj(ctx)\n            x = torch.cat([x, ctx], dim=1)\n            if pos_map is not None:\n                pos_map = torch.cat(\n                    [\n                        pos_map,\n                        torch.zeros(n, ctx.size(1), pos_map.size(2), device=x.device),\n                    ],\n                    dim=1,\n                )\n            ctx = None\n\n        if self.use_tread:\n            x = self.prev_tread_trns(\n                x,\n                ctx=ctx,\n                pos_map=pos_map,\n                y=t_emb,\n                shared_adaln=shared_adaln_state,\n            )\n            if self.training or tread_rate is not None:\n                xt_selection_length = selection_length = length - int(\n                    length * (tread_rate or self.dropout_ratio)\n                )\n                selection = torch.stack(\n                    [\n                        torch.randperm(length, device=x.device) < selection_length\n                        for _ in range(n)\n                    ]\n                )\n                if self.ctx_proj is not None:\n                    ctx_length = x.size(1) - length\n                    selection = torch.concat(\n                        [\n                            selection,\n                            torch.ones(\n                                n, ctx_length, device=x.device, dtype=torch.bool\n                            ),\n                        ],\n                        dim=1,\n                    )\n                    selection_length += ctx_length\n                full_length = x.size(1)\n                not_masked_part = x[~selection, :]\n                masked_part = x[selection, :].unflatten(0, (n, selection_length))\n                x = masked_part\n                raw_pos_map = pos_map\n                pos_map = pos_map[selection, :].unflatten(0, (n, selection_length))\n        backbone_out = self.backbone(\n            x,\n            ctx=ctx,\n            pos_map=pos_map,\n            y=t_emb,\n            shared_adaln=shared_adaln_state,\n            return_enc_out=return_enc_out,\n        )\n        if return_enc_out:\n            backbone_out, enc_out = backbone_out\n        if self.use_tread:\n            if self.training or tread_rate is not None:\n                out = torch.empty(\n                    n, full_length, x.size(2), device=x.device, dtype=x.dtype\n                )\n                out[~selection, :] = not_masked_part\n                out[selection, :] = backbone_out.flatten(0, 1)\n                pos_map = raw_pos_map\n            else:\n                out = backbone_out\n            out = self.post_tread_trns(\n                out,\n                ctx=ctx,\n                pos_map=pos_map,\n                y=t_emb,\n                shared_adaln=shared_adaln_state,\n            )\n        else:\n            out = backbone_out\n        out = out[:, :length]\n        out = self.out_patch(out, h, w)\n\n        if return_enc_out:\n            length = (\n                xt_selection_length if self.use_tread and self.training else full_length\n            )\n            return out, enc_out[:, :length]\n        return out\n"
  },
  {
    "path": "pipelines/hidream/pipeline_hidream_image_editing.py",
    "content": "import inspect\nfrom typing import Any, Callable, Dict, List, Optional, Union\nimport PIL\n\nimport torch\nfrom transformers import (\n    CLIPTextModelWithProjection,\n    CLIPTokenizer,\n    LlamaForCausalLM,\n    PreTrainedTokenizerFast,\n    T5EncoderModel,\n    T5Tokenizer,\n)\n\nfrom diffusers.image_processor import VaeImageProcessor, PipelineImageInput\nfrom diffusers.loaders import HiDreamImageLoraLoaderMixin\nfrom diffusers.models import AutoencoderKL, HiDreamImageTransformer2DModel\nfrom diffusers.schedulers import FlowMatchEulerDiscreteScheduler, UniPCMultistepScheduler\nfrom diffusers.utils import deprecate, is_torch_xla_available, logging, replace_example_docstring\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline\nfrom diffusers.pipelines.hidream_image.pipeline_output import HiDreamImagePipelineOutput\n\n\nif is_torch_xla_available():\n    import torch_xla.core.xla_model as xm\n\n    XLA_AVAILABLE = True\nelse:\n    XLA_AVAILABLE = False\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\nEXAMPLE_DOC_STRING = \"\"\"\n    Examples:\n        ```py\n        >>> import torch\n        >>> from transformers import PreTrainedTokenizerFast, LlamaForCausalLM\n        >>> from diffusers import UniPCMultistepScheduler\n        >>> from pipeline_hidream_image_editing import HiDreamImageEditingPipeline\n        >>> from PIL import Image\n\n\n        >>> tokenizer_4 = PreTrainedTokenizerFast.from_pretrained(\"meta-llama/Meta-Llama-3.1-8B-Instruct\")\n        >>> text_encoder_4 = LlamaForCausalLM.from_pretrained(\n        ...     \"meta-llama/Meta-Llama-3.1-8B-Instruct\",\n        ...     output_hidden_states=True,\n        ...     output_attentions=True,\n        ...     torch_dtype=torch.bfloat16,\n        ... )\n\n        >>> pipe = HiDreamImageEditingPipeline.from_pretrained(\n        ...     \"HiDream-ai/HiDream-E1-Full\",\n        ...     tokenizer_4=tokenizer_4,\n        ...     text_encoder_4=text_encoder_4,\n        ...     torch_dtype=torch.bfloat16,\n        ... )\n        >>> pipe.enable_model_cpu_offload()\n\n        >>> # Load input image for editing\n        >>> input_image = Image.open(\"your_image.jpg\")\n        >>> input_image = input_image.resize((768, 768))\n\n        >>> # Edit the image based on instructions\n        >>> image = pipe(\n        ...     prompt='Editing Instruction: Convert the image into a Ghibli style. Target Image Description: A person in a light pink t-shirt with short dark hair, depicted in a Ghibli style against a plain background.',\n        ...     negative_prompt=\"low resolution, blur\",\n        ...     image=input_image,\n        ...     guidance_scale=5.0,\n        ...     image_guidance_scale=4.0,\n        ...     num_inference_steps=28,\n        ...     generator=torch.Generator(\"cuda\").manual_seed(3),\n        ... ).images[0]\n        >>> image.save(\"edited_output.png\")\n        ```\n\"\"\"\n\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion_img2img.retrieve_latents\ndef retrieve_latents(\n    encoder_output: torch.Tensor, generator: Optional[torch.Generator] = None, sample_mode: str = \"sample\"\n):\n    if hasattr(encoder_output, \"latent_dist\") and sample_mode == \"sample\":\n        return encoder_output.latent_dist.sample(generator)\n    elif hasattr(encoder_output, \"latent_dist\") and sample_mode == \"argmax\":\n        return encoder_output.latent_dist.mode()\n    elif hasattr(encoder_output, \"latents\"):\n        return encoder_output.latents\n    else:\n        raise AttributeError(\"Could not access latents of provided encoder_output\")\n\n\n# Copied from diffusers.pipelines.flux.pipeline_flux.calculate_shift\ndef calculate_shift(\n    image_seq_len,\n    base_seq_len: int = 256,\n    max_seq_len: int = 4096,\n    base_shift: float = 0.5,\n    max_shift: float = 1.15,\n):\n    m = (max_shift - base_shift) / (max_seq_len - base_seq_len)\n    b = base_shift - m * base_seq_len\n    mu = image_seq_len * m + b\n    return mu\n\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.retrieve_timesteps\ndef retrieve_timesteps(\n    scheduler,\n    num_inference_steps: Optional[int] = None,\n    device: Optional[Union[str, torch.device]] = None,\n    timesteps: Optional[List[int]] = None,\n    sigmas: Optional[List[float]] = None,\n    **kwargs,\n):\n    r\"\"\"\n    Calls the scheduler's `set_timesteps` method and retrieves timesteps from the scheduler after the call. Handles\n    custom timesteps. Any kwargs will be supplied to `scheduler.set_timesteps`.\n\n    Args:\n        scheduler (`SchedulerMixin`):\n            The scheduler to get timesteps from.\n        num_inference_steps (`int`):\n            The number of diffusion steps used when generating samples with a pre-trained model. If used, `timesteps`\n            must be `None`.\n        device (`str` or `torch.device`, *optional*):\n            The device to which the timesteps should be moved to. If `None`, the timesteps are not moved.\n        timesteps (`List[int]`, *optional*):\n            Custom timesteps used to override the timestep spacing strategy of the scheduler. If `timesteps` is passed,\n            `num_inference_steps` and `sigmas` must be `None`.\n        sigmas (`List[float]`, *optional*):\n            Custom sigmas used to override the timestep spacing strategy of the scheduler. If `sigmas` is passed,\n            `num_inference_steps` and `timesteps` must be `None`.\n\n    Returns:\n        `Tuple[torch.Tensor, int]`: A tuple where the first element is the timestep schedule from the scheduler and the\n        second element is the number of inference steps.\n    \"\"\"\n    if timesteps is not None and sigmas is not None:\n        raise ValueError(\"Only one of `timesteps` or `sigmas` can be passed. Please choose one to set custom values\")\n    if timesteps is not None:\n        accepts_timesteps = \"timesteps\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n        if not accepts_timesteps:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" timestep schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(timesteps=timesteps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    elif sigmas is not None:\n        accept_sigmas = \"sigmas\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n        if not accept_sigmas:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" sigmas schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(sigmas=sigmas, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    else:\n        scheduler.set_timesteps(num_inference_steps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n    return timesteps, num_inference_steps\n\n\nclass HiDreamImageEditingPipeline(DiffusionPipeline, HiDreamImageLoraLoaderMixin):\n    model_cpu_offload_seq = \"text_encoder->text_encoder_2->text_encoder_3->text_encoder_4->transformer->vae\"\n    _callback_tensor_inputs = [\"latents\", \"prompt_embeds_t5\", \"prompt_embeds_llama3\", \"pooled_prompt_embeds\"]\n\n    def __init__(\n        self,\n        scheduler: FlowMatchEulerDiscreteScheduler,\n        vae: AutoencoderKL,\n        text_encoder: CLIPTextModelWithProjection,\n        tokenizer: CLIPTokenizer,\n        text_encoder_2: CLIPTextModelWithProjection,\n        tokenizer_2: CLIPTokenizer,\n        text_encoder_3: T5EncoderModel,\n        tokenizer_3: T5Tokenizer,\n        text_encoder_4: LlamaForCausalLM,\n        tokenizer_4: PreTrainedTokenizerFast,\n        transformer: HiDreamImageTransformer2DModel,\n    ):\n        super().__init__()\n\n        self.register_modules(\n            vae=vae,\n            text_encoder=text_encoder,\n            text_encoder_2=text_encoder_2,\n            text_encoder_3=text_encoder_3,\n            text_encoder_4=text_encoder_4,\n            tokenizer=tokenizer,\n            tokenizer_2=tokenizer_2,\n            tokenizer_3=tokenizer_3,\n            tokenizer_4=tokenizer_4,\n            scheduler=scheduler,\n            transformer=transformer,\n        )\n        self.vae_scale_factor = (\n            2 ** (len(self.vae.config.block_out_channels) - 1) if hasattr(self, \"vae\") and self.vae is not None else 8\n        )\n        # HiDreamImage latents are turned into 2x2 patches and packed. This means the latent width and height has to be divisible\n        # by the patch size. So the vae scale factor is multiplied by the patch size to account for this\n        self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor * 2)\n        self.default_sample_size = 128\n        if getattr(self, \"tokenizer_4\", None) is not None:\n            self.tokenizer_4.pad_token = self.tokenizer_4.eos_token\n\n    def _get_t5_prompt_embeds(\n        self,\n        prompt: Union[str, List[str]] = None,\n        max_sequence_length: int = 128,\n        device: Optional[torch.device] = None,\n        dtype: Optional[torch.dtype] = None,\n    ):\n        device = device or self._execution_device\n        dtype = dtype or self.text_encoder_3.dtype\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n\n        text_inputs = self.tokenizer_3(\n            prompt,\n            padding=\"max_length\",\n            max_length=min(max_sequence_length, self.tokenizer_3.model_max_length),\n            truncation=True,\n            add_special_tokens=True,\n            return_tensors=\"pt\",\n        )\n        text_input_ids = text_inputs.input_ids\n        attention_mask = text_inputs.attention_mask\n        untruncated_ids = self.tokenizer_3(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n        if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(text_input_ids, untruncated_ids):\n            removed_text = self.tokenizer_3.batch_decode(\n                untruncated_ids[:, min(max_sequence_length, self.tokenizer_3.model_max_length) - 1 : -1]\n            )\n            logger.warning(\n                \"The following part of your input was truncated because `max_sequence_length` is set to \"\n                f\" {min(max_sequence_length, self.tokenizer_3.model_max_length)} tokens: {removed_text}\"\n            )\n\n        prompt_embeds = self.text_encoder_3(text_input_ids.to(device), attention_mask=attention_mask.to(device))[0]\n        prompt_embeds = prompt_embeds.to(dtype=dtype, device=device)\n        return prompt_embeds\n\n    def _get_clip_prompt_embeds(\n        self,\n        tokenizer,\n        text_encoder,\n        prompt: Union[str, List[str]],\n        max_sequence_length: int = 128,\n        device: Optional[torch.device] = None,\n        dtype: Optional[torch.dtype] = None,\n    ):\n        device = device or self._execution_device\n        dtype = dtype or text_encoder.dtype\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n\n        text_inputs = tokenizer(\n            prompt,\n            padding=\"max_length\",\n            max_length=min(max_sequence_length, 218),\n            truncation=True,\n            return_tensors=\"pt\",\n        )\n\n        text_input_ids = text_inputs.input_ids\n        untruncated_ids = tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n        if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(text_input_ids, untruncated_ids):\n            removed_text = tokenizer.batch_decode(untruncated_ids[:, 218 - 1 : -1])\n            logger.warning(\n                \"The following part of your input was truncated because CLIP can only handle sequences up to\"\n                f\" {218} tokens: {removed_text}\"\n            )\n        prompt_embeds = text_encoder(text_input_ids.to(device), output_hidden_states=True)\n\n        # Use pooled output of CLIPTextModel\n        prompt_embeds = prompt_embeds[0]\n        prompt_embeds = prompt_embeds.to(dtype=dtype, device=device)\n        return prompt_embeds\n\n    def _get_llama3_prompt_embeds(\n        self,\n        prompt: Union[str, List[str]] = None,\n        max_sequence_length: int = 128,\n        device: Optional[torch.device] = None,\n        dtype: Optional[torch.dtype] = None,\n    ):\n        device = device or self._execution_device\n        dtype = dtype or self.text_encoder_4.dtype\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n\n        text_inputs = self.tokenizer_4(\n            prompt,\n            padding=\"max_length\",\n            max_length=min(max_sequence_length, self.tokenizer_4.model_max_length),\n            truncation=True,\n            add_special_tokens=True,\n            return_tensors=\"pt\",\n        )\n        text_input_ids = text_inputs.input_ids\n        attention_mask = text_inputs.attention_mask\n        untruncated_ids = self.tokenizer_4(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n        if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(text_input_ids, untruncated_ids):\n            removed_text = self.tokenizer_4.batch_decode(\n                untruncated_ids[:, min(max_sequence_length, self.tokenizer_4.model_max_length) - 1 : -1]\n            )\n            logger.warning(\n                \"The following part of your input was truncated because `max_sequence_length` is set to \"\n                f\" {min(max_sequence_length, self.tokenizer_4.model_max_length)} tokens: {removed_text}\"\n            )\n\n        outputs = self.text_encoder_4(\n            text_input_ids.to(device),\n            attention_mask=attention_mask.to(device),\n            output_hidden_states=True,\n            output_attentions=True,\n        )\n\n        prompt_embeds = outputs.hidden_states[1:]\n        prompt_embeds = torch.stack(prompt_embeds, dim=0)\n        return prompt_embeds\n\n    def encode_prompt(\n        self,\n        prompt: Optional[Union[str, List[str]]] = None,\n        prompt_2: Optional[Union[str, List[str]]] = None,\n        prompt_3: Optional[Union[str, List[str]]] = None,\n        prompt_4: Optional[Union[str, List[str]]] = None,\n        device: Optional[torch.device] = None,\n        dtype: Optional[torch.dtype] = None,\n        num_images_per_prompt: int = 1,\n        do_classifier_free_guidance: bool = True,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        negative_prompt_2: Optional[Union[str, List[str]]] = None,\n        negative_prompt_3: Optional[Union[str, List[str]]] = None,\n        negative_prompt_4: Optional[Union[str, List[str]]] = None,\n        prompt_embeds_t5: Optional[List[torch.FloatTensor]] = None,\n        prompt_embeds_llama3: Optional[List[torch.FloatTensor]] = None,\n        negative_prompt_embeds_t5: Optional[List[torch.FloatTensor]] = None,\n        negative_prompt_embeds_llama3: Optional[List[torch.FloatTensor]] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        max_sequence_length: int = 128,\n        lora_scale: Optional[float] = None,\n    ):\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n        if prompt is not None:\n            batch_size = len(prompt)\n        else:\n            batch_size = pooled_prompt_embeds.shape[0]\n\n        device = device or self._execution_device\n\n        if pooled_prompt_embeds is None:\n            pooled_prompt_embeds_1 = self._get_clip_prompt_embeds(\n                self.tokenizer, self.text_encoder, prompt, max_sequence_length, device, dtype\n            )\n\n        if do_classifier_free_guidance and negative_pooled_prompt_embeds is None:\n            negative_prompt = negative_prompt or \"\"\n            negative_prompt = [negative_prompt] if isinstance(negative_prompt, str) else negative_prompt\n\n            if len(negative_prompt) > 1 and len(negative_prompt) != batch_size:\n                raise ValueError(f\"negative_prompt must be of length 1 or {batch_size}\")\n\n            negative_pooled_prompt_embeds_1 = self._get_clip_prompt_embeds(\n                self.tokenizer, self.text_encoder, negative_prompt, max_sequence_length, device, dtype\n            )\n\n            if negative_pooled_prompt_embeds_1.shape[0] == 1 and batch_size > 1:\n                negative_pooled_prompt_embeds_1 = negative_pooled_prompt_embeds_1.repeat(batch_size, 1)\n\n        if pooled_prompt_embeds is None:\n            prompt_2 = prompt_2 or prompt\n            prompt_2 = [prompt_2] if isinstance(prompt_2, str) else prompt_2\n\n            if len(prompt_2) > 1 and len(prompt_2) != batch_size:\n                raise ValueError(f\"prompt_2 must be of length 1 or {batch_size}\")\n\n            pooled_prompt_embeds_2 = self._get_clip_prompt_embeds(\n                self.tokenizer_2, self.text_encoder_2, prompt_2, max_sequence_length, device, dtype\n            )\n\n            if pooled_prompt_embeds_2.shape[0] == 1 and batch_size > 1:\n                pooled_prompt_embeds_2 = pooled_prompt_embeds_2.repeat(batch_size, 1)\n\n        if do_classifier_free_guidance and negative_pooled_prompt_embeds is None:\n            negative_prompt_2 = negative_prompt_2 or negative_prompt\n            negative_prompt_2 = [negative_prompt_2] if isinstance(negative_prompt_2, str) else negative_prompt_2\n\n            if len(negative_prompt_2) > 1 and len(negative_prompt_2) != batch_size:\n                raise ValueError(f\"negative_prompt_2 must be of length 1 or {batch_size}\")\n\n            negative_pooled_prompt_embeds_2 = self._get_clip_prompt_embeds(\n                self.tokenizer_2, self.text_encoder_2, negative_prompt_2, max_sequence_length, device, dtype\n            )\n\n            if negative_pooled_prompt_embeds_2.shape[0] == 1 and batch_size > 1:\n                negative_pooled_prompt_embeds_2 = negative_pooled_prompt_embeds_2.repeat(batch_size, 1)\n\n        if pooled_prompt_embeds is None:\n            pooled_prompt_embeds = torch.cat([pooled_prompt_embeds_1, pooled_prompt_embeds_2], dim=-1)\n\n        if do_classifier_free_guidance and negative_pooled_prompt_embeds is None:\n            negative_pooled_prompt_embeds = torch.cat(\n                [negative_pooled_prompt_embeds_1, negative_pooled_prompt_embeds_2], dim=-1\n            )\n\n        if prompt_embeds_t5 is None:\n            prompt_3 = prompt_3 or prompt\n            prompt_3 = [prompt_3] if isinstance(prompt_3, str) else prompt_3\n\n            if len(prompt_3) > 1 and len(prompt_3) != batch_size:\n                raise ValueError(f\"prompt_3 must be of length 1 or {batch_size}\")\n\n            prompt_embeds_t5 = self._get_t5_prompt_embeds(prompt_3, max_sequence_length, device, dtype)\n\n            if prompt_embeds_t5.shape[0] == 1 and batch_size > 1:\n                prompt_embeds_t5 = prompt_embeds_t5.repeat(batch_size, 1, 1)\n\n        if do_classifier_free_guidance and negative_prompt_embeds_t5 is None:\n            negative_prompt_3 = negative_prompt_3 or negative_prompt\n            negative_prompt_3 = [negative_prompt_3] if isinstance(negative_prompt_3, str) else negative_prompt_3\n\n            if len(negative_prompt_3) > 1 and len(negative_prompt_3) != batch_size:\n                raise ValueError(f\"negative_prompt_3 must be of length 1 or {batch_size}\")\n\n            negative_prompt_embeds_t5 = self._get_t5_prompt_embeds(\n                negative_prompt_3, max_sequence_length, device, dtype\n            )\n\n            if negative_prompt_embeds_t5.shape[0] == 1 and batch_size > 1:\n                negative_prompt_embeds_t5 = negative_prompt_embeds_t5.repeat(batch_size, 1, 1)\n\n        if prompt_embeds_llama3 is None:\n            prompt_4 = prompt_4 or prompt\n            prompt_4 = [prompt_4] if isinstance(prompt_4, str) else prompt_4\n\n            if len(prompt_4) > 1 and len(prompt_4) != batch_size:\n                raise ValueError(f\"prompt_4 must be of length 1 or {batch_size}\")\n\n            prompt_embeds_llama3 = self._get_llama3_prompt_embeds(prompt_4, max_sequence_length, device, dtype)\n\n            if prompt_embeds_llama3.shape[0] == 1 and batch_size > 1:\n                prompt_embeds_llama3 = prompt_embeds_llama3.repeat(1, batch_size, 1, 1)\n\n        if do_classifier_free_guidance and negative_prompt_embeds_llama3 is None:\n            negative_prompt_4 = negative_prompt_4 or negative_prompt\n            negative_prompt_4 = [negative_prompt_4] if isinstance(negative_prompt_4, str) else negative_prompt_4\n\n            if len(negative_prompt_4) > 1 and len(negative_prompt_4) != batch_size:\n                raise ValueError(f\"negative_prompt_4 must be of length 1 or {batch_size}\")\n\n            negative_prompt_embeds_llama3 = self._get_llama3_prompt_embeds(\n                negative_prompt_4, max_sequence_length, device, dtype\n            )\n\n            if negative_prompt_embeds_llama3.shape[0] == 1 and batch_size > 1:\n                negative_prompt_embeds_llama3 = negative_prompt_embeds_llama3.repeat(1, batch_size, 1, 1)\n\n        # duplicate pooled_prompt_embeds for each generation per prompt\n        pooled_prompt_embeds = pooled_prompt_embeds.repeat(1, num_images_per_prompt)\n        pooled_prompt_embeds = pooled_prompt_embeds.view(batch_size * num_images_per_prompt, -1)\n\n        # duplicate t5_prompt_embeds for batch_size and num_images_per_prompt\n        bs_embed, seq_len, _ = prompt_embeds_t5.shape\n        if bs_embed == 1 and batch_size > 1:\n            prompt_embeds_t5 = prompt_embeds_t5.repeat(batch_size, 1, 1)\n        elif bs_embed > 1 and bs_embed != batch_size:\n            raise ValueError(f\"cannot duplicate prompt_embeds_t5 of batch size {bs_embed}\")\n        prompt_embeds_t5 = prompt_embeds_t5.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds_t5 = prompt_embeds_t5.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n        # duplicate llama3_prompt_embeds for batch_size and num_images_per_prompt\n        _, bs_embed, seq_len, dim = prompt_embeds_llama3.shape\n        if bs_embed == 1 and batch_size > 1:\n            prompt_embeds_llama3 = prompt_embeds_llama3.repeat(1, batch_size, 1, 1)\n        elif bs_embed > 1 and bs_embed != batch_size:\n            raise ValueError(f\"cannot duplicate prompt_embeds_llama3 of batch size {bs_embed}\")\n        prompt_embeds_llama3 = prompt_embeds_llama3.repeat(1, 1, num_images_per_prompt, 1)\n        prompt_embeds_llama3 = prompt_embeds_llama3.view(-1, batch_size * num_images_per_prompt, seq_len, dim)\n\n        if do_classifier_free_guidance:\n            # duplicate negative_pooled_prompt_embeds for batch_size and num_images_per_prompt\n            bs_embed, seq_len = negative_pooled_prompt_embeds.shape\n            if bs_embed == 1 and batch_size > 1:\n                negative_pooled_prompt_embeds = negative_pooled_prompt_embeds.repeat(batch_size, 1)\n            elif bs_embed > 1 and bs_embed != batch_size:\n                raise ValueError(f\"cannot duplicate negative_pooled_prompt_embeds of batch size {bs_embed}\")\n            negative_pooled_prompt_embeds = negative_pooled_prompt_embeds.repeat(1, num_images_per_prompt)\n            negative_pooled_prompt_embeds = negative_pooled_prompt_embeds.view(batch_size * num_images_per_prompt, -1)\n\n            # duplicate negative_t5_prompt_embeds for batch_size and num_images_per_prompt\n            bs_embed, seq_len, _ = negative_prompt_embeds_t5.shape\n            if bs_embed == 1 and batch_size > 1:\n                negative_prompt_embeds_t5 = negative_prompt_embeds_t5.repeat(batch_size, 1, 1)\n            elif bs_embed > 1 and bs_embed != batch_size:\n                raise ValueError(f\"cannot duplicate negative_prompt_embeds_t5 of batch size {bs_embed}\")\n            negative_prompt_embeds_t5 = negative_prompt_embeds_t5.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds_t5 = negative_prompt_embeds_t5.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n            # duplicate negative_prompt_embeds_llama3 for batch_size and num_images_per_prompt\n            _, bs_embed, seq_len, dim = negative_prompt_embeds_llama3.shape\n            if bs_embed == 1 and batch_size > 1:\n                negative_prompt_embeds_llama3 = negative_prompt_embeds_llama3.repeat(1, batch_size, 1, 1)\n            elif bs_embed > 1 and bs_embed != batch_size:\n                raise ValueError(f\"cannot duplicate negative_prompt_embeds_llama3 of batch size {bs_embed}\")\n            negative_prompt_embeds_llama3 = negative_prompt_embeds_llama3.repeat(1, 1, num_images_per_prompt, 1)\n            negative_prompt_embeds_llama3 = negative_prompt_embeds_llama3.view(\n                -1, batch_size * num_images_per_prompt, seq_len, dim\n            )\n\n        return (\n            prompt_embeds_t5,\n            negative_prompt_embeds_t5,\n            prompt_embeds_llama3,\n            negative_prompt_embeds_llama3,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n        )\n\n    def enable_vae_slicing(self):\n        r\"\"\"\n        Enable sliced VAE decoding. When this option is enabled, the VAE will split the input tensor in slices to\n        compute decoding in several steps. This is useful to save some memory and allow larger batch sizes.\n        \"\"\"\n        self.vae.enable_slicing()\n\n    def disable_vae_slicing(self):\n        r\"\"\"\n        Disable sliced VAE decoding. If `enable_vae_slicing` was previously enabled, this method will go back to\n        computing decoding in one step.\n        \"\"\"\n        self.vae.disable_slicing()\n\n    def enable_vae_tiling(self):\n        r\"\"\"\n        Enable tiled VAE decoding. When this option is enabled, the VAE will split the input tensor into tiles to\n        compute decoding and encoding in several steps. This is useful for saving a large amount of memory and to allow\n        processing larger images.\n        \"\"\"\n        self.vae.enable_tiling()\n\n    def disable_vae_tiling(self):\n        r\"\"\"\n        Disable tiled VAE decoding. If `enable_vae_tiling` was previously enabled, this method will go back to\n        computing decoding in one step.\n        \"\"\"\n        self.vae.disable_tiling()\n\n    def check_inputs(\n        self,\n        prompt,\n        prompt_2,\n        prompt_3,\n        prompt_4,\n        negative_prompt=None,\n        negative_prompt_2=None,\n        negative_prompt_3=None,\n        negative_prompt_4=None,\n        prompt_embeds_t5=None,\n        prompt_embeds_llama3=None,\n        negative_prompt_embeds_t5=None,\n        negative_prompt_embeds_llama3=None,\n        pooled_prompt_embeds=None,\n        negative_pooled_prompt_embeds=None,\n        callback_on_step_end_tensor_inputs=None,\n    ):\n        if callback_on_step_end_tensor_inputs is not None and not all(\n            k in self._callback_tensor_inputs for k in callback_on_step_end_tensor_inputs\n        ):\n            raise ValueError(\n                f\"`callback_on_step_end_tensor_inputs` has to be in {self._callback_tensor_inputs}, but found {[k for k in callback_on_step_end_tensor_inputs if k not in self._callback_tensor_inputs]}\"\n            )\n\n        if prompt is not None and pooled_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `pooled_prompt_embeds`: {pooled_prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt_2 is not None and pooled_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt_2`: {prompt_2} and `pooled_prompt_embeds`: {pooled_prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt_3 is not None and prompt_embeds_t5 is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt_3`: {prompt_3} and `prompt_embeds_t5`: {prompt_embeds_t5}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt_4 is not None and prompt_embeds_llama3 is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt_4`: {prompt_4} and `prompt_embeds_llama3`: {prompt_embeds_llama3}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and pooled_prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `pooled_prompt_embeds`. Cannot leave both `prompt` and `pooled_prompt_embeds` undefined.\"\n            )\n        elif prompt is None and prompt_embeds_t5 is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds_t5`. Cannot leave both `prompt` and `prompt_embeds_t5` undefined.\"\n            )\n        elif prompt is None and prompt_embeds_llama3 is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds_llama3`. Cannot leave both `prompt` and `prompt_embeds_llama3` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n        elif prompt_2 is not None and (not isinstance(prompt_2, str) and not isinstance(prompt_2, list)):\n            raise ValueError(f\"`prompt_2` has to be of type `str` or `list` but is {type(prompt_2)}\")\n        elif prompt_3 is not None and (not isinstance(prompt_3, str) and not isinstance(prompt_3, list)):\n            raise ValueError(f\"`prompt_3` has to be of type `str` or `list` but is {type(prompt_3)}\")\n        elif prompt_4 is not None and (not isinstance(prompt_4, str) and not isinstance(prompt_4, list)):\n            raise ValueError(f\"`prompt_4` has to be of type `str` or `list` but is {type(prompt_4)}\")\n\n        if negative_prompt is not None and negative_pooled_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_pooled_prompt_embeds`:\"\n                f\" {negative_pooled_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n        elif negative_prompt_2 is not None and negative_pooled_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt_2`: {negative_prompt_2} and `negative_pooled_prompt_embeds`:\"\n                f\" {negative_pooled_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n        elif negative_prompt_3 is not None and negative_prompt_embeds_t5 is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt_3`: {negative_prompt_3} and `negative_prompt_embeds_t5`:\"\n                f\" {negative_prompt_embeds_t5}. Please make sure to only forward one of the two.\"\n            )\n        elif negative_prompt_4 is not None and negative_prompt_embeds_llama3 is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt_4`: {negative_prompt_4} and `negative_prompt_embeds_llama3`:\"\n                f\" {negative_prompt_embeds_llama3}. Please make sure to only forward one of the two.\"\n            )\n\n        if pooled_prompt_embeds is not None and negative_pooled_prompt_embeds is not None:\n            if pooled_prompt_embeds.shape != negative_pooled_prompt_embeds.shape:\n                raise ValueError(\n                    \"`pooled_prompt_embeds` and `negative_pooled_prompt_embeds` must have the same shape when passed directly, but\"\n                    f\" got: `pooled_prompt_embeds` {pooled_prompt_embeds.shape} != `negative_pooled_prompt_embeds`\"\n                    f\" {negative_pooled_prompt_embeds.shape}.\"\n                )\n        if prompt_embeds_t5 is not None and negative_prompt_embeds_t5 is not None:\n            if prompt_embeds_t5.shape != negative_prompt_embeds_t5.shape:\n                raise ValueError(\n                    \"`prompt_embeds_t5` and `negative_prompt_embeds_t5` must have the same shape when passed directly, but\"\n                    f\" got: `prompt_embeds_t5` {prompt_embeds_t5.shape} != `negative_prompt_embeds_t5`\"\n                    f\" {negative_prompt_embeds_t5.shape}.\"\n                )\n        if prompt_embeds_llama3 is not None and negative_prompt_embeds_llama3 is not None:\n            if prompt_embeds_llama3.shape != negative_prompt_embeds_llama3.shape:\n                raise ValueError(\n                    \"`prompt_embeds_llama3` and `negative_prompt_embeds_llama3` must have the same shape when passed directly, but\"\n                    f\" got: `prompt_embeds_llama3` {prompt_embeds_llama3.shape} != `negative_prompt_embeds_llama3`\"\n                    f\" {negative_prompt_embeds_llama3.shape}.\"\n                )\n\n    def prepare_latents(\n        self,\n        batch_size,\n        num_channels_latents,\n        height,\n        width,\n        dtype,\n        device,\n        generator,\n        latents=None,\n    ):\n        # VAE applies 8x compression on images but we must also account for packing which requires\n        # latent height and width to be divisible by 2.\n        height = 2 * (int(height) // (self.vae_scale_factor * 2))\n        width = 2 * (int(width) // (self.vae_scale_factor * 2))\n\n        shape = (batch_size, num_channels_latents, height, width)\n\n        if latents is None:\n            latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n        else:\n            if latents.shape != shape:\n                raise ValueError(f\"Unexpected latents shape, got {latents.shape}, expected {shape}\")\n            latents = latents.to(device)\n        return latents\n\n\n    def prepare_image_latents(\n        self, image, batch_size, num_images_per_prompt, dtype, device, do_classifier_free_guidance, generator=None\n    ):\n        if not isinstance(image, (torch.Tensor, PIL.Image.Image, list)):\n            raise ValueError(\n                f\"`image` has to be of type `torch.Tensor`, `PIL.Image.Image` or list but is {type(image)}\"\n            )\n\n        image = image.to(device=device, dtype=dtype)\n\n        batch_size = batch_size * num_images_per_prompt\n\n        if image.shape[1] == 4:\n            image_latents = image\n        else:\n            image_latents = retrieve_latents(self.vae.encode(image), sample_mode=\"argmax\")\n        image_latents = (image_latents - self.vae.config.shift_factor) * self.vae.config.scaling_factor\n        if batch_size > image_latents.shape[0] and batch_size % image_latents.shape[0] == 0:\n            # expand image_latents for batch_size\n            deprecation_message = (\n                f\"You have passed {batch_size} text prompts (`prompt`), but only {image_latents.shape[0]} initial\"\n                \" images (`image`). Initial images are now duplicating to match the number of text prompts. Note\"\n                \" that this behavior is deprecated and will be removed in a version 1.0.0. Please make sure to update\"\n                \" your script to pass as many initial images as text prompts to suppress this warning.\"\n            )\n            deprecate(\"len(prompt) != len(image)\", \"1.0.0\", deprecation_message, standard_warn=False)\n            additional_image_per_prompt = batch_size // image_latents.shape[0]\n            image_latents = torch.cat([image_latents] * additional_image_per_prompt, dim=0)\n        elif batch_size > image_latents.shape[0] and batch_size % image_latents.shape[0] != 0:\n            raise ValueError(\n                f\"Cannot duplicate `image` of batch size {image_latents.shape[0]} to {batch_size} text prompts.\"\n            )\n        else:\n            image_latents = torch.cat([image_latents], dim=0)\n\n        if do_classifier_free_guidance:\n            uncond_image_latents = torch.zeros_like(image_latents)\n            image_latents = torch.cat([uncond_image_latents, image_latents, image_latents], dim=0)\n\n        return image_latents\n\n\n    @property\n    def guidance_scale(self):\n        return self._guidance_scale\n\n    @property\n    def image_guidance_scale(self):\n        return self._image_guidance_scale\n\n    @property\n    def do_classifier_free_guidance(self):\n        return self._guidance_scale > 1\n\n    @property\n    def attention_kwargs(self):\n        return self._attention_kwargs\n\n    @property\n    def num_timesteps(self):\n        return self._num_timesteps\n\n    @property\n    def interrupt(self):\n        return self._interrupt\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        prompt_2: Optional[Union[str, List[str]]] = None,\n        prompt_3: Optional[Union[str, List[str]]] = None,\n        prompt_4: Optional[Union[str, List[str]]] = None,\n        image: PipelineImageInput = None,\n        num_inference_steps: int = 50,\n        sigmas: Optional[List[float]] = None,\n        guidance_scale: float = 5.0,\n        image_guidance_scale: float = 2.0,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        negative_prompt_2: Optional[Union[str, List[str]]] = None,\n        negative_prompt_3: Optional[Union[str, List[str]]] = None,\n        negative_prompt_4: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.FloatTensor] = None,\n        prompt_embeds_t5: Optional[torch.FloatTensor] = None,\n        prompt_embeds_llama3: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds_t5: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds_llama3: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        attention_kwargs: Optional[Dict[str, Any]] = None,\n        callback_on_step_end: Optional[Callable[[int, int, Dict], None]] = None,\n        callback_on_step_end_tensor_inputs: List[str] = [\"latents\"],\n        max_sequence_length: int = 128,\n        refine_strength: float = 0.0,\n        reload_keys: Any = None,\n        **kwargs,\n    ):\n        r\"\"\"\n        Function invoked when calling the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide the image generation. If not defined, one has to pass `prompt_embeds`.\n                instead.\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                will be used instead.\n            prompt_3 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to `tokenizer_3` and `text_encoder_3`. If not defined, `prompt` is\n                will be used instead.\n            prompt_4 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to `tokenizer_4` and `text_encoder_4`. If not defined, `prompt` is\n                will be used instead.\n            height (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The height in pixels of the generated image. This is set to 1024 by default for the best results.\n            width (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The width in pixels of the generated image. This is set to 1024 by default for the best results.\n            num_inference_steps (`int`, *optional*, defaults to 50):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            sigmas (`List[float]`, *optional*):\n                Custom sigmas to use for the denoising process with schedulers which support a `sigmas` argument in\n                their `set_timesteps` method. If not defined, the default behavior when `num_inference_steps` is passed\n                will be used.\n            guidance_scale (`float`, *optional*, defaults to 3.5):\n                Guidance scale as defined in [Classifier-Free Diffusion Guidance](https://arxiv.org/abs/2207.12598).\n                `guidance_scale` is defined as `w` of equation 2. of [Imagen\n                Paper](https://arxiv.org/pdf/2205.11487.pdf). Guidance scale is enabled by setting `guidance_scale >\n                1`. Higher guidance scale encourages to generate images that are closely linked to the text `prompt`,\n                usually at the expense of lower image quality.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `true_cfg_scale` is\n                not greater than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in all the text-encoders.\n            negative_prompt_3 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_3` and\n                `text_encoder_3`. If not defined, `negative_prompt` is used in all the text-encoders.\n            negative_prompt_4 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_4` and\n                `text_encoder_4`. If not defined, `negative_prompt` is used in all the text-encoders.\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                One or a list of [torch generator(s)](https://pytorch.org/docs/stable/generated/torch.Generator.html)\n                to make generation deterministic.\n            latents (`torch.FloatTensor`, *optional*):\n                Pre-generated noisy latents, sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor will ge generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generate image. Choose between\n                [PIL](https://pillow.readthedocs.io/en/stable/): `PIL.Image.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.flux.FluxPipelineOutput`] instead of a plain tuple.\n            attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            callback_on_step_end (`Callable`, *optional*):\n                A function that calls at the end of each denoising steps during the inference. The function is called\n                with the following arguments: `callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int,\n                callback_kwargs: Dict)`. `callback_kwargs` will include a list of all tensors as specified by\n                `callback_on_step_end_tensor_inputs`.\n            callback_on_step_end_tensor_inputs (`List`, *optional*):\n                The list of tensor inputs for the `callback_on_step_end` function. The tensors specified in the list\n                will be passed as `callback_kwargs` argument. You will only be able to include variables listed in the\n                `._callback_tensor_inputs` attribute of your pipeline class.\n            max_sequence_length (`int` defaults to 128): Maximum sequence length to use with the `prompt`.\n\n        Examples:\n\n        Returns:\n            [`~pipelines.hidream_image.HiDreamImagePipelineOutput`] or `tuple`:\n            [`~pipelines.hidream_image.HiDreamImagePipelineOutput`] if `return_dict` is True, otherwise a `tuple`. When\n            returning a tuple, the first element is a list with the generated. images.\n        \"\"\"\n\n        prompt_embeds = kwargs.get(\"prompt_embeds\", None)\n        negative_prompt_embeds = kwargs.get(\"negative_prompt_embeds\", None)\n\n        if prompt_embeds is not None:\n            deprecation_message = \"The `prompt_embeds` argument is deprecated. Please use `prompt_embeds_t5` and `prompt_embeds_llama3` instead.\"\n            deprecate(\"prompt_embeds\", \"0.35.0\", deprecation_message)\n            prompt_embeds_t5 = prompt_embeds[0]\n            prompt_embeds_llama3 = prompt_embeds[1]\n\n        if negative_prompt_embeds is not None:\n            deprecation_message = \"The `negative_prompt_embeds` argument is deprecated. Please use `negative_prompt_embeds_t5` and `negative_prompt_embeds_llama3` instead.\"\n            deprecate(\"negative_prompt_embeds\", \"0.35.0\", deprecation_message)\n            negative_prompt_embeds_t5 = negative_prompt_embeds[0]\n            negative_prompt_embeds_llama3 = negative_prompt_embeds[1]\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            prompt_2,\n            prompt_3,\n            prompt_4,\n            negative_prompt=negative_prompt,\n            negative_prompt_2=negative_prompt_2,\n            negative_prompt_3=negative_prompt_3,\n            negative_prompt_4=negative_prompt_4,\n            prompt_embeds_t5=prompt_embeds_t5,\n            prompt_embeds_llama3=prompt_embeds_llama3,\n            negative_prompt_embeds_t5=negative_prompt_embeds_t5,\n            negative_prompt_embeds_llama3=negative_prompt_embeds_llama3,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            negative_pooled_prompt_embeds=negative_pooled_prompt_embeds,\n            callback_on_step_end_tensor_inputs=callback_on_step_end_tensor_inputs,\n        )\n\n        self._guidance_scale = guidance_scale\n        self._image_guidance_scale = image_guidance_scale\n        self._attention_kwargs = attention_kwargs\n        self._interrupt = False\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        elif pooled_prompt_embeds is not None:\n            batch_size = pooled_prompt_embeds.shape[0]\n\n        device = self._execution_device\n\n        # 3. Encode prompt\n        lora_scale = self.attention_kwargs.get(\"scale\", None) if self.attention_kwargs is not None else None\n        (\n            prompt_embeds_t5,\n            negative_prompt_embeds_t5,\n            prompt_embeds_llama3,\n            negative_prompt_embeds_llama3,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n        ) = self.encode_prompt(\n            prompt=prompt,\n            prompt_2=prompt_2,\n            prompt_3=prompt_3,\n            prompt_4=prompt_4,\n            negative_prompt=negative_prompt,\n            negative_prompt_2=negative_prompt_2,\n            negative_prompt_3=negative_prompt_3,\n            negative_prompt_4=negative_prompt_4,\n            do_classifier_free_guidance=self.do_classifier_free_guidance,\n            prompt_embeds_t5=prompt_embeds_t5,\n            prompt_embeds_llama3=prompt_embeds_llama3,\n            negative_prompt_embeds_t5=negative_prompt_embeds_t5,\n            negative_prompt_embeds_llama3=negative_prompt_embeds_llama3,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            negative_pooled_prompt_embeds=negative_pooled_prompt_embeds,\n            device=device,\n            num_images_per_prompt=num_images_per_prompt,\n            max_sequence_length=max_sequence_length,\n            lora_scale=lora_scale,\n        )\n\n        if prompt is not None and \"Target Image Description:\" in prompt:\n            target_prompt = prompt.split(\"Target Image Description:\")[1].strip()\n            (\n            target_prompt_embeds_t5,\n            target_negative_prompt_embeds_t5,\n            target_prompt_embeds_llama3,\n            target_negative_prompt_embeds_llama3,\n            target_pooled_prompt_embeds,\n            target_negative_pooled_prompt_embeds,\n            ) = self.encode_prompt(\n                prompt=target_prompt,\n                prompt_2=None,\n                prompt_3=None,\n                prompt_4=None,\n                negative_prompt=negative_prompt,\n                negative_prompt_2=None,\n                negative_prompt_3=None,\n                negative_prompt_4=None,\n                do_classifier_free_guidance=self.do_classifier_free_guidance,\n                prompt_embeds_t5=None,\n                prompt_embeds_llama3=None,\n                negative_prompt_embeds_t5=None,\n                negative_prompt_embeds_llama3=None,\n                pooled_prompt_embeds=None,\n                negative_pooled_prompt_embeds=None,\n                device=device,\n                num_images_per_prompt=num_images_per_prompt,\n                max_sequence_length=max_sequence_length,\n                lora_scale=lora_scale,\n            )\n        else:\n            target_prompt_embeds_t5 = prompt_embeds_t5\n            target_negative_prompt_embeds_t5 = negative_prompt_embeds_t5\n            target_prompt_embeds_llama3 = prompt_embeds_llama3\n            target_negative_prompt_embeds_llama3 = negative_prompt_embeds_llama3\n            target_pooled_prompt_embeds = pooled_prompt_embeds\n            target_negative_pooled_prompt_embeds = negative_pooled_prompt_embeds\n\n        image = self.image_processor.preprocess(image)\n\n        image_latents = self.prepare_image_latents(\n            image,\n            batch_size,\n            num_images_per_prompt,\n            pooled_prompt_embeds.dtype,\n            device,\n            self.do_classifier_free_guidance,\n        )\n\n        height, width = image_latents.shape[-2:]\n        height = height * self.vae_scale_factor\n        width = width * self.vae_scale_factor\n\n        if self.do_classifier_free_guidance:\n            prompt_embeds_t5 = torch.cat([negative_prompt_embeds_t5, negative_prompt_embeds_t5, prompt_embeds_t5], dim=0)\n            prompt_embeds_llama3 = torch.cat([negative_prompt_embeds_llama3, negative_prompt_embeds_llama3, prompt_embeds_llama3], dim=1)\n            pooled_prompt_embeds = torch.cat([negative_pooled_prompt_embeds, negative_pooled_prompt_embeds, pooled_prompt_embeds], dim=0)\n\n            target_prompt_embeds_t5 = torch.cat([target_negative_prompt_embeds_t5, target_prompt_embeds_t5], dim=0)\n            target_prompt_embeds_llama3 = torch.cat([target_negative_prompt_embeds_llama3, target_prompt_embeds_llama3], dim=1)\n            target_pooled_prompt_embeds = torch.cat([target_negative_pooled_prompt_embeds, target_pooled_prompt_embeds], dim=0)\n\n        # 4. Prepare latent variables\n        num_channels_latents = self.transformer.config.in_channels\n        latents = self.prepare_latents(\n            batch_size * num_images_per_prompt,\n            num_channels_latents,\n            height,\n            width,\n            pooled_prompt_embeds.dtype,\n            device,\n            generator,\n            latents,\n        )\n\n        # 5. Prepare timesteps\n        mu = calculate_shift(self.transformer.max_seq)\n        scheduler_kwargs = {\"mu\": mu}\n        if isinstance(self.scheduler, UniPCMultistepScheduler):\n            self.scheduler.set_timesteps(num_inference_steps, device=device)  # , shift=math.exp(mu))\n            timesteps = self.scheduler.timesteps\n        else:\n            timesteps, num_inference_steps = retrieve_timesteps(\n                self.scheduler,\n                num_inference_steps,\n                device,\n                sigmas=sigmas,\n                **scheduler_kwargs,\n            )\n        num_warmup_steps = max(len(timesteps) - num_inference_steps * self.scheduler.order, 0)\n        self._num_timesteps = len(timesteps)\n        # 6. Denoising loop\n        refine_stage = False\n        if reload_keys is not None:\n            load_info = self.transformer.load_state_dict(reload_keys['editing'], strict=False)\n            assert len(load_info.unexpected_keys) == 0\n            self.transformer.enable_adapters()\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                if reload_keys is not None and i == int(num_inference_steps * (1.0 - refine_strength)):\n                    self.transformer.disable_adapters()\n                    load_info = self.transformer.load_state_dict(reload_keys['refine'], strict=False)\n                    assert len(load_info.unexpected_keys) == 0\n                    logger.info(f\"Refining start at step {i}\")\n                    refine_stage = True\n                if self.interrupt:\n                    continue\n                if refine_stage:\n                    latent_model_input_with_condition = torch.cat([latents] * 2) if self.do_classifier_free_guidance else latents\n                    prompt_embeds_t5 = target_prompt_embeds_t5\n                    prompt_embeds_llama3 = target_prompt_embeds_llama3\n                    pooled_prompt_embeds = target_pooled_prompt_embeds\n                else:\n                    latent_model_input = torch.cat([latents] * 3) if self.do_classifier_free_guidance else latents\n                    latent_model_input_with_condition = torch.cat([latent_model_input, image_latents], dim=-1)\n                # broadcast to batch dimension in a way that's compatible with ONNX/Core ML\n                timestep = t.expand(latent_model_input_with_condition.shape[0])\n                noise_pred = self.transformer(\n                    hidden_states=latent_model_input_with_condition,\n                    timesteps=timestep,\n                    encoder_hidden_states_t5=prompt_embeds_t5,\n                    encoder_hidden_states_llama3=prompt_embeds_llama3,\n                    pooled_embeds=pooled_prompt_embeds,\n                    return_dict=False,\n                )[0]\n                # perform guidance\n                if self.do_classifier_free_guidance:\n                    if refine_stage:\n                        uncond, full_cond = noise_pred.chunk(2)\n                        noise_pred = uncond + self.guidance_scale * (full_cond - uncond)\n                        noise_pred = noise_pred[..., :latents.shape[-1]]\n                    else:\n                        uncond, image_cond, full_cond = noise_pred.chunk(3)\n                        noise_pred = uncond + self.image_guidance_scale * (image_cond - uncond) + self.guidance_scale * (\n                                    full_cond - image_cond)\n                        noise_pred = noise_pred[..., :latents.shape[-1]]\n\n                noise_pred = -noise_pred\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents_dtype = latents.dtype\n                latents = self.scheduler.step(noise_pred, t, latents, return_dict=False)[0]\n\n                if latents.dtype != latents_dtype:\n                    if torch.backends.mps.is_available():\n                        # some platforms (eg. apple mps) misbehave due to a pytorch bug: https://github.com/pytorch/pytorch/pull/99272\n                        latents = latents.to(latents_dtype)\n\n                if callback_on_step_end is not None:\n                    callback_kwargs = {}\n                    for k in callback_on_step_end_tensor_inputs:\n                        callback_kwargs[k] = locals()[k]\n                    callback_outputs = callback_on_step_end(self, i, t, callback_kwargs)\n\n                    latents = callback_outputs.pop(\"latents\", latents)\n                    prompt_embeds_t5 = callback_outputs.pop(\"prompt_embeds_t5\", prompt_embeds_t5)\n                    prompt_embeds_llama3 = callback_outputs.pop(\"prompt_embeds_llama3\", prompt_embeds_llama3)\n                    pooled_prompt_embeds = callback_outputs.pop(\"pooled_prompt_embeds\", pooled_prompt_embeds)\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n\n                if XLA_AVAILABLE:\n                    xm.mark_step()\n\n        if output_type == \"latent\":\n            image = latents\n\n        else:\n            latents = (latents / self.vae.config.scaling_factor) + self.vae.config.shift_factor\n\n            image = self.vae.decode(latents, return_dict=False)[0]\n            image = self.image_processor.postprocess(image, output_type=output_type)\n\n        # Offload all models\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return (image,)\n\n        return HiDreamImagePipelineOutput(images=image)\n"
  },
  {
    "path": "pipelines/meissonic/__init__.py",
    "content": ""
  },
  {
    "path": "pipelines/meissonic/pipeline.py",
    "content": "# Copyright 2024 The HuggingFace Team and The MeissonFlow Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\nfrom typing import Any, Callable, Dict, List, Optional, Tuple, Union\n\nimport torch\nfrom transformers import CLIPTextModelWithProjection, CLIPTokenizer\n\nfrom diffusers.image_processor import VaeImageProcessor\nfrom diffusers.models import VQModel\n\nfrom .scheduler import Scheduler\nfrom diffusers.utils import replace_example_docstring\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline, ImagePipelineOutput\n\nfrom .transformer import Transformer2DModel\n\n\nEXAMPLE_DOC_STRING = \"\"\"\n    Examples:\n        ```py\n        >>> image = pipe(prompt).images[0]\n        ```\n\"\"\"\n\n\ndef _prepare_latent_image_ids(batch_size, height, width, device, dtype):\n    latent_image_ids = torch.zeros(height // 2, width // 2, 3)\n    latent_image_ids[..., 1] = latent_image_ids[..., 1] + torch.arange(height // 2)[:, None]\n    latent_image_ids[..., 2] = latent_image_ids[..., 2] + torch.arange(width // 2)[None, :]\n\n    latent_image_id_height, latent_image_id_width, latent_image_id_channels = latent_image_ids.shape\n\n    latent_image_ids = latent_image_ids.reshape(\n        latent_image_id_height * latent_image_id_width, latent_image_id_channels\n    )\n\n    return latent_image_ids.to(device=device, dtype=dtype)\n\n\nclass MeissonicPipeline(DiffusionPipeline):\n    image_processor: VaeImageProcessor\n    vqvae: VQModel\n    tokenizer: CLIPTokenizer\n    text_encoder: CLIPTextModelWithProjection\n    transformer: Transformer2DModel\n    scheduler: Scheduler\n    # tokenizer_t5: T5Tokenizer\n    # text_encoder_t5: T5ForConditionalGeneration\n\n    model_cpu_offload_seq = \"text_encoder->transformer->vqvae\"\n\n    def __init__(\n        self,\n        vqvae: VQModel,\n        tokenizer: CLIPTokenizer,\n        text_encoder: CLIPTextModelWithProjection,\n        transformer: Transformer2DModel,\n        scheduler: Scheduler,\n        # tokenizer_t5: T5Tokenizer,\n        # text_encoder_t5: T5ForConditionalGeneration,\n    ):\n        super().__init__()\n\n        self.register_modules(\n            vqvae=vqvae,\n            tokenizer=tokenizer,\n            text_encoder=text_encoder,\n            transformer=transformer,\n            scheduler=scheduler,\n            # tokenizer_t5=tokenizer_t5,\n            # text_encoder_t5=text_encoder_t5,\n        )\n        self.vae_scale_factor = 2 ** (len(self.vqvae.config.block_out_channels) - 1)\n        self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor, do_normalize=False)\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n        self,\n        prompt: Optional[Union[List[str], str]] = None,\n        height: Optional[int] = 1024,\n        width: Optional[int] = 1024,\n        num_inference_steps: int = 48,\n        guidance_scale: float = 9.0,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        generator: Optional[torch.Generator] = None,\n        latents: Optional[torch.IntTensor] = None,\n        prompt_embeds: Optional[torch.Tensor] = None,\n        encoder_hidden_states: Optional[torch.Tensor] = None,\n        negative_prompt_embeds: Optional[torch.Tensor] = None,\n        negative_encoder_hidden_states: Optional[torch.Tensor] = None,\n        output_type=\"pil\",\n        return_dict: bool = True,\n        callback: Optional[Callable[[int, int, torch.Tensor], None]] = None,\n        callback_steps: int = 1,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        micro_conditioning_aesthetic_score: int = 6,\n        micro_conditioning_crop_coord: Tuple[int, int] = (0, 0),\n        temperature: Union[int, Tuple[int, int], List[int]] = (2, 0),\n    ):\n        \"\"\"\n        The call function to the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide image generation. If not defined, you need to pass `prompt_embeds`.\n            height (`int`, *optional*, defaults to `self.transformer.config.sample_size * self.vae_scale_factor`):\n                The height in pixels of the generated image.\n            width (`int`, *optional*, defaults to `self.unet.config.sample_size * self.vae_scale_factor`):\n                The width in pixels of the generated image.\n            num_inference_steps (`int`, *optional*, defaults to 16):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            guidance_scale (`float`, *optional*, defaults to 10.0):\n                A higher guidance scale value encourages the model to generate images closely linked to the text\n                `prompt` at the expense of lower image quality. Guidance scale is enabled when `guidance_scale > 1`.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide what to not include in image generation. If not defined, you need to\n                pass `negative_prompt_embeds` instead. Ignored when not using guidance (`guidance_scale < 1`).\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            generator (`torch.Generator`, *optional*):\n                A [`torch.Generator`](https://pytorch.org/docs/stable/generated/torch.Generator.html) to make\n                generation deterministic.\n            latents (`torch.IntTensor`, *optional*):\n                Pre-generated tokens representing latent vectors in `self.vqvae`, to be used as inputs for image\n                gneration. If not provided, the starting latents will be completely masked.\n            prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs (prompt weighting). If not\n                provided, text embeddings are generated from the `prompt` input argument. A single vector from the\n                pooled and projected final hidden states.\n            encoder_hidden_states (`torch.Tensor`, *optional*):\n                Pre-generated penultimate hidden states from the text encoder providing additional text conditioning.\n            negative_prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs (prompt weighting). If\n                not provided, `negative_prompt_embeds` are generated from the `negative_prompt` input argument.\n            negative_encoder_hidden_states (`torch.Tensor`, *optional*):\n                Analogous to `encoder_hidden_states` for the positive prompt.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generated image. Choose between `PIL.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.stable_diffusion.StableDiffusionPipelineOutput`] instead of a\n                plain tuple.\n            callback (`Callable`, *optional*):\n                A function that calls every `callback_steps` steps during inference. The function is called with the\n                following arguments: `callback(step: int, timestep: int, latents: torch.Tensor)`.\n            callback_steps (`int`, *optional*, defaults to 1):\n                The frequency at which the `callback` function is called. If not specified, the callback is called at\n                every step.\n            cross_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the [`AttentionProcessor`] as defined in\n                [`self.processor`](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            micro_conditioning_aesthetic_score (`int`, *optional*, defaults to 6):\n                The targeted aesthetic score according to the laion aesthetic classifier. See\n                https://laion.ai/blog/laion-aesthetics/ and the micro-conditioning section of\n                https://arxiv.org/abs/2307.01952.\n            micro_conditioning_crop_coord (`Tuple[int]`, *optional*, defaults to (0, 0)):\n                The targeted height, width crop coordinates. See the micro-conditioning section of\n                https://arxiv.org/abs/2307.01952.\n            temperature (`Union[int, Tuple[int, int], List[int]]`, *optional*, defaults to (2, 0)):\n                Configures the temperature scheduler on `self.scheduler` see `Scheduler#set_timesteps`.\n\n        Examples:\n\n        Returns:\n            [`~pipelines.pipeline_utils.ImagePipelineOutput`] or `tuple`:\n                If `return_dict` is `True`, [`~pipelines.pipeline_utils.ImagePipelineOutput`] is returned, otherwise a\n                `tuple` is returned where the first element is a list with the generated images.\n        \"\"\"\n        if (prompt_embeds is not None and encoder_hidden_states is None) or (\n            prompt_embeds is None and encoder_hidden_states is not None\n        ):\n            raise ValueError(\"pass either both `prompt_embeds` and `encoder_hidden_states` or neither\")\n\n        if (negative_prompt_embeds is not None and negative_encoder_hidden_states is None) or (\n            negative_prompt_embeds is None and negative_encoder_hidden_states is not None\n        ):\n            raise ValueError(\n                \"pass either both `negatve_prompt_embeds` and `negative_encoder_hidden_states` or neither\"\n            )\n\n        if (prompt is None and prompt_embeds is None) or (prompt is not None and prompt_embeds is not None):\n            raise ValueError(\"pass only one of `prompt` or `prompt_embeds`\")\n\n        if isinstance(prompt, str):\n            prompt = [prompt]\n\n        if prompt is not None:\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        batch_size = batch_size * num_images_per_prompt\n\n        if height is None:\n            height = self.transformer.config.sample_size * self.vae_scale_factor\n\n        if width is None:\n            width = self.transformer.config.sample_size * self.vae_scale_factor\n\n        if prompt_embeds is None:\n            input_ids = self.tokenizer(\n                prompt,\n                return_tensors=\"pt\",\n                padding=\"max_length\",\n                truncation=True,\n                max_length=77, #self.tokenizer.model_max_length,\n            ).input_ids.to(self._execution_device)\n            # input_ids_t5 = self.tokenizer_t5(\n            #     prompt,\n            #     return_tensors=\"pt\",\n            #     padding=\"max_length\",\n            #     truncation=True,\n            #     max_length=512,\n            # ).input_ids.to(self._execution_device)\n\n\n            outputs = self.text_encoder(input_ids, return_dict=True, output_hidden_states=True)\n            # outputs_t5 = self.text_encoder_t5(input_ids_t5, decoder_input_ids = input_ids_t5 ,return_dict=True, output_hidden_states=True)\n            prompt_embeds = outputs.text_embeds\n            encoder_hidden_states = outputs.hidden_states[-2]\n            # encoder_hidden_states = outputs_t5.encoder_hidden_states[-2]\n\n        prompt_embeds = prompt_embeds.repeat(num_images_per_prompt, 1)\n        encoder_hidden_states = encoder_hidden_states.repeat(num_images_per_prompt, 1, 1)\n\n        if guidance_scale > 1.0:\n            if negative_prompt_embeds is None:\n                if negative_prompt is None:\n                    negative_prompt = [\"\"] * len(prompt)\n\n                if isinstance(negative_prompt, str):\n                    negative_prompt = [negative_prompt]\n\n                input_ids = self.tokenizer(\n                    negative_prompt,\n                    return_tensors=\"pt\",\n                    padding=\"max_length\",\n                    truncation=True,\n                    max_length=77, #self.tokenizer.model_max_length,\n                ).input_ids.to(self._execution_device)\n                # input_ids_t5 = self.tokenizer_t5(\n                #     prompt,\n                #     return_tensors=\"pt\",\n                #     padding=\"max_length\",\n                #     truncation=True,\n                #     max_length=512,\n                # ).input_ids.to(self._execution_device)\n\n                outputs = self.text_encoder(input_ids, return_dict=True, output_hidden_states=True)\n                # outputs_t5 = self.text_encoder_t5(input_ids_t5, decoder_input_ids = input_ids_t5 ,return_dict=True, output_hidden_states=True)\n                negative_prompt_embeds = outputs.text_embeds\n                negative_encoder_hidden_states = outputs.hidden_states[-2]\n                # negative_encoder_hidden_states = outputs_t5.encoder_hidden_states[-2]\n\n\n\n            negative_prompt_embeds = negative_prompt_embeds.repeat(num_images_per_prompt, 1)\n            negative_encoder_hidden_states = negative_encoder_hidden_states.repeat(num_images_per_prompt, 1, 1)\n\n            prompt_embeds = torch.concat([negative_prompt_embeds, prompt_embeds])\n            encoder_hidden_states = torch.concat([negative_encoder_hidden_states, encoder_hidden_states])\n\n        # Note that the micro conditionings _do_ flip the order of width, height for the original size\n        # and the crop coordinates. This is how it was done in the original code base\n        micro_conds = torch.tensor(\n            [\n                width,\n                height,\n                micro_conditioning_crop_coord[0],\n                micro_conditioning_crop_coord[1],\n                micro_conditioning_aesthetic_score,\n            ],\n            device=self._execution_device,\n            dtype=encoder_hidden_states.dtype,\n        )\n        micro_conds = micro_conds.unsqueeze(0)\n        micro_conds = micro_conds.expand(2 * batch_size if guidance_scale > 1.0 else batch_size, -1)\n\n        shape = (batch_size, height // self.vae_scale_factor, width // self.vae_scale_factor)\n\n        if latents is None:\n            latents = torch.full(\n                shape, self.scheduler.config.mask_token_id, dtype=torch.long, device=self._execution_device\n            )\n\n        self.scheduler.set_timesteps(num_inference_steps, temperature, self._execution_device)\n\n        num_warmup_steps = len(self.scheduler.timesteps) - num_inference_steps * self.scheduler.order\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, timestep in enumerate(self.scheduler.timesteps):\n                if guidance_scale > 1.0:\n                    model_input = torch.cat([latents] * 2)\n                else:\n                    model_input = latents\n                if height == 1024: #args.resolution == 1024:\n                    img_ids = _prepare_latent_image_ids(model_input.shape[0], model_input.shape[-2],model_input.shape[-1],model_input.device,model_input.dtype)\n                else:\n                    img_ids = _prepare_latent_image_ids(model_input.shape[0],2*model_input.shape[-2],2*model_input.shape[-1],model_input.device,model_input.dtype)\n                txt_ids = torch.zeros(encoder_hidden_states.shape[1],3).to(device = encoder_hidden_states.device, dtype = encoder_hidden_states.dtype)\n                model_output = self.transformer(\n                    hidden_states = model_input,\n                    micro_conds=micro_conds,\n                    pooled_projections=prompt_embeds,\n                    encoder_hidden_states=encoder_hidden_states,\n                    img_ids = img_ids,\n                    txt_ids = txt_ids,\n                    timestep = torch.tensor([timestep], device=model_input.device, dtype=torch.long),\n                    # guidance = 7,\n                    # cross_attention_kwargs=cross_attention_kwargs,\n                )\n\n                if guidance_scale > 1.0:\n                    uncond_logits, cond_logits = model_output.chunk(2)\n                    model_output = uncond_logits + guidance_scale * (cond_logits - uncond_logits)\n\n                latents = self.scheduler.step(\n                    model_output=model_output,\n                    timestep=timestep,\n                    sample=latents,\n                    generator=generator,\n                ).prev_sample\n\n                if i == len(self.scheduler.timesteps) - 1 or (\n                    (i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0\n                ):\n                    progress_bar.update()\n                    if callback is not None and i % callback_steps == 0:\n                        step_idx = i // getattr(self.scheduler, \"order\", 1)\n                        callback(step_idx, timestep, latents)\n\n        if output_type == \"latent\":\n            output = latents\n        else:\n            needs_upcasting = self.vqvae.dtype == torch.float16 and self.vqvae.config.force_upcast\n\n            if needs_upcasting:\n                self.vqvae.float()\n\n            output = self.vqvae.decode(\n                latents,\n                force_not_quantize=True,\n                shape=(\n                    batch_size,\n                    height // self.vae_scale_factor,\n                    width // self.vae_scale_factor,\n                    self.vqvae.config.latent_channels,\n                ),\n            ).sample.clip(0, 1)\n            output = self.image_processor.postprocess(output, output_type)\n\n            if needs_upcasting:\n                self.vqvae.half()\n\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return (output,)\n\n        return ImagePipelineOutput(output)\n"
  },
  {
    "path": "pipelines/meissonic/pipeline_img2img.py",
    "content": "# Copyright 2024 The HuggingFace Team and The MeissonFlow Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\nfrom typing import Any, Callable, Dict, List, Optional, Tuple, Union\n\nimport torch\nfrom transformers import CLIPTextModelWithProjection, CLIPTokenizer\n\nfrom diffusers.image_processor import PipelineImageInput, VaeImageProcessor\nfrom diffusers.models import UVit2DModel, VQModel\n# from diffusers.schedulers import AmusedScheduler\nfrom .scheduler import Scheduler\nfrom diffusers.utils import replace_example_docstring\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline, ImagePipelineOutput\n\nfrom .transformer import Transformer2DModel\n\nEXAMPLE_DOC_STRING = \"\"\"\n    Examples:\n        ```py\n        >>> image = pipe(prompt, input_image).images[0]\n        ```\n\"\"\"\ndef _prepare_latent_image_ids(batch_size, height, width, device, dtype):\n    latent_image_ids = torch.zeros(height // 2, width // 2, 3)\n    latent_image_ids[..., 1] = latent_image_ids[..., 1] + torch.arange(height // 2)[:, None]\n    latent_image_ids[..., 2] = latent_image_ids[..., 2] + torch.arange(width // 2)[None, :]\n\n    latent_image_id_height, latent_image_id_width, latent_image_id_channels = latent_image_ids.shape\n\n    latent_image_ids = latent_image_ids.reshape(\n        latent_image_id_height * latent_image_id_width, latent_image_id_channels\n    )\n    # latent_image_ids = latent_image_ids.unsqueeze(0).repeat(batch_size, 1, 1)\n\n    return latent_image_ids.to(device=device, dtype=dtype)\n\n\nclass MeissonicImg2ImgPipeline(DiffusionPipeline):\n    image_processor: VaeImageProcessor\n    vqvae: VQModel\n    tokenizer: CLIPTokenizer\n    text_encoder: CLIPTextModelWithProjection\n    transformer: Transformer2DModel #UVit2DModel\n    scheduler: Scheduler\n\n    model_cpu_offload_seq = \"text_encoder->transformer->vqvae\"\n\n    _exclude_from_cpu_offload = [\"vqvae\"]\n\n    def __init__(\n        self,\n        vqvae: VQModel,\n        tokenizer: CLIPTokenizer,\n        text_encoder: CLIPTextModelWithProjection,\n        transformer: Transformer2DModel, #UVit2DModel,\n        scheduler: Scheduler,\n    ):\n        super().__init__()\n\n        self.register_modules(\n            vqvae=vqvae,\n            tokenizer=tokenizer,\n            text_encoder=text_encoder,\n            transformer=transformer,\n            scheduler=scheduler,\n        )\n        self.vae_scale_factor = 2 ** (len(self.vqvae.config.block_out_channels) - 1)\n        self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor, do_normalize=False)\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n        self,\n        prompt: Optional[Union[List[str], str]] = None,\n        image: PipelineImageInput = None,\n        strength: float = 0.5,\n        num_inference_steps: int = 12,\n        guidance_scale: float = 10.0,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        generator: Optional[torch.Generator] = None,\n        prompt_embeds: Optional[torch.Tensor] = None,\n        encoder_hidden_states: Optional[torch.Tensor] = None,\n        negative_prompt_embeds: Optional[torch.Tensor] = None,\n        negative_encoder_hidden_states: Optional[torch.Tensor] = None,\n        output_type=\"pil\",\n        return_dict: bool = True,\n        callback: Optional[Callable[[int, int, torch.Tensor], None]] = None,\n        callback_steps: int = 1,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        micro_conditioning_aesthetic_score: int = 6,\n        micro_conditioning_crop_coord: Tuple[int, int] = (0, 0),\n        temperature: Union[int, Tuple[int, int], List[int]] = (2, 0),\n    ):\n        \"\"\"\n        The call function to the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide image generation. If not defined, you need to pass `prompt_embeds`.\n            image (`torch.Tensor`, `PIL.Image.Image`, `np.ndarray`, `List[torch.Tensor]`, `List[PIL.Image.Image]`, or `List[np.ndarray]`):\n                `Image`, numpy array or tensor representing an image batch to be used as the starting point. For both\n                numpy array and pytorch tensor, the expected value range is between `[0, 1]` If it's a tensor or a list\n                or tensors, the expected shape should be `(B, C, H, W)` or `(C, H, W)`. If it is a numpy array or a\n                list of arrays, the expected shape should be `(B, H, W, C)` or `(H, W, C)` It can also accept image\n                latents as `image`, but if passing latents directly it is not encoded again.\n            strength (`float`, *optional*, defaults to 0.5):\n                Indicates extent to transform the reference `image`. Must be between 0 and 1. `image` is used as a\n                starting point and more noise is added the higher the `strength`. The number of denoising steps depends\n                on the amount of noise initially added. When `strength` is 1, added noise is maximum and the denoising\n                process runs for the full number of iterations specified in `num_inference_steps`. A value of 1\n                essentially ignores `image`.\n            num_inference_steps (`int`, *optional*, defaults to 12):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            guidance_scale (`float`, *optional*, defaults to 10.0):\n                A higher guidance scale value encourages the model to generate images closely linked to the text\n                `prompt` at the expense of lower image quality. Guidance scale is enabled when `guidance_scale > 1`.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide what to not include in image generation. If not defined, you need to\n                pass `negative_prompt_embeds` instead. Ignored when not using guidance (`guidance_scale < 1`).\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            generator (`torch.Generator`, *optional*):\n                A [`torch.Generator`](https://pytorch.org/docs/stable/generated/torch.Generator.html) to make\n                generation deterministic.\n            prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs (prompt weighting). If not\n                provided, text embeddings are generated from the `prompt` input argument. A single vector from the\n                pooled and projected final hidden states.\n            encoder_hidden_states (`torch.Tensor`, *optional*):\n                Pre-generated penultimate hidden states from the text encoder providing additional text conditioning.\n            negative_prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs (prompt weighting). If\n                not provided, `negative_prompt_embeds` are generated from the `negative_prompt` input argument.\n            negative_encoder_hidden_states (`torch.Tensor`, *optional*):\n                Analogous to `encoder_hidden_states` for the positive prompt.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generated image. Choose between `PIL.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.stable_diffusion.StableDiffusionPipelineOutput`] instead of a\n                plain tuple.\n            callback (`Callable`, *optional*):\n                A function that calls every `callback_steps` steps during inference. The function is called with the\n                following arguments: `callback(step: int, timestep: int, latents: torch.Tensor)`.\n            callback_steps (`int`, *optional*, defaults to 1):\n                The frequency at which the `callback` function is called. If not specified, the callback is called at\n                every step.\n            cross_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the [`AttentionProcessor`] as defined in\n                [`self.processor`](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            micro_conditioning_aesthetic_score (`int`, *optional*, defaults to 6):\n                The targeted aesthetic score according to the laion aesthetic classifier. See\n                https://laion.ai/blog/laion-aesthetics/ and the micro-conditioning section of\n                https://arxiv.org/abs/2307.01952.\n            micro_conditioning_crop_coord (`Tuple[int]`, *optional*, defaults to (0, 0)):\n                The targeted height, width crop coordinates. See the micro-conditioning section of\n                https://arxiv.org/abs/2307.01952.\n            temperature (`Union[int, Tuple[int, int], List[int]]`, *optional*, defaults to (2, 0)):\n                Configures the temperature scheduler on `self.scheduler` see `AmusedScheduler#set_timesteps`.\n\n        Examples:\n\n        Returns:\n            [`~pipelines.pipeline_utils.ImagePipelineOutput`] or `tuple`:\n                If `return_dict` is `True`, [`~pipelines.pipeline_utils.ImagePipelineOutput`] is returned, otherwise a\n                `tuple` is returned where the first element is a list with the generated images.\n        \"\"\"\n\n        if (prompt_embeds is not None and encoder_hidden_states is None) or (\n            prompt_embeds is None and encoder_hidden_states is not None\n        ):\n            raise ValueError(\"pass either both `prompt_embeds` and `encoder_hidden_states` or neither\")\n\n        if (negative_prompt_embeds is not None and negative_encoder_hidden_states is None) or (\n            negative_prompt_embeds is None and negative_encoder_hidden_states is not None\n        ):\n            raise ValueError(\n                \"pass either both `negative_prompt_embeds` and `negative_encoder_hidden_states` or neither\"\n            )\n\n        if (prompt is None and prompt_embeds is None) or (prompt is not None and prompt_embeds is not None):\n            raise ValueError(\"pass only one of `prompt` or `prompt_embeds`\")\n\n        if isinstance(prompt, str):\n            prompt = [prompt]\n\n        if prompt is not None:\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        batch_size = batch_size * num_images_per_prompt\n\n        if prompt_embeds is None:\n            input_ids = self.tokenizer(\n                prompt,\n                return_tensors=\"pt\",\n                padding=\"max_length\",\n                truncation=True,\n                max_length=77, #self.tokenizer.model_max_length,\n            ).input_ids.to(self._execution_device)\n\n            outputs = self.text_encoder(input_ids, return_dict=True, output_hidden_states=True)\n            prompt_embeds = outputs.text_embeds\n            encoder_hidden_states = outputs.hidden_states[-2]\n\n        prompt_embeds = prompt_embeds.repeat(num_images_per_prompt, 1)\n        encoder_hidden_states = encoder_hidden_states.repeat(num_images_per_prompt, 1, 1)\n\n        if guidance_scale > 1.0:\n            if negative_prompt_embeds is None:\n                if negative_prompt is None:\n                    negative_prompt = [\"\"] * len(prompt)\n\n                if isinstance(negative_prompt, str):\n                    negative_prompt = [negative_prompt]\n\n                input_ids = self.tokenizer(\n                    negative_prompt,\n                    return_tensors=\"pt\",\n                    padding=\"max_length\",\n                    truncation=True,\n                    max_length=77, #self.tokenizer.model_max_length,\n                ).input_ids.to(self._execution_device)\n\n                outputs = self.text_encoder(input_ids, return_dict=True, output_hidden_states=True)\n                negative_prompt_embeds = outputs.text_embeds\n                negative_encoder_hidden_states = outputs.hidden_states[-2]\n\n            negative_prompt_embeds = negative_prompt_embeds.repeat(num_images_per_prompt, 1)\n            negative_encoder_hidden_states = negative_encoder_hidden_states.repeat(num_images_per_prompt, 1, 1)\n\n            prompt_embeds = torch.concat([negative_prompt_embeds, prompt_embeds])\n            encoder_hidden_states = torch.concat([negative_encoder_hidden_states, encoder_hidden_states])\n\n        image = self.image_processor.preprocess(image)\n\n        height, width = image.shape[-2:]\n\n        # Note that the micro conditionings _do_ flip the order of width, height for the original size\n        # and the crop coordinates. This is how it was done in the original code base\n        micro_conds = torch.tensor(\n            [\n                width,\n                height,\n                micro_conditioning_crop_coord[0],\n                micro_conditioning_crop_coord[1],\n                micro_conditioning_aesthetic_score,\n            ],\n            device=self._execution_device,\n            dtype=encoder_hidden_states.dtype,\n        )\n\n        micro_conds = micro_conds.unsqueeze(0)\n        micro_conds = micro_conds.expand(2 * batch_size if guidance_scale > 1.0 else batch_size, -1)\n\n        self.scheduler.set_timesteps(num_inference_steps, temperature, self._execution_device)\n        num_inference_steps = int(len(self.scheduler.timesteps) * strength)\n        start_timestep_idx = len(self.scheduler.timesteps) - num_inference_steps\n\n        needs_upcasting = False # = self.vqvae.dtype == torch.float16 and self.vqvae.config.force_upcast\n\n        if needs_upcasting:\n            self.vqvae.float()\n\n        latents = self.vqvae.encode(image.to(dtype=self.vqvae.dtype, device=self._execution_device)).latents\n        latents_bsz, channels, latents_height, latents_width = latents.shape\n        latents = self.vqvae.quantize(latents)[2][2].reshape(latents_bsz, latents_height, latents_width)\n        latents = self.scheduler.add_noise(\n            latents, self.scheduler.timesteps[start_timestep_idx - 1], generator=generator\n        )\n        latents = latents.repeat(num_images_per_prompt, 1, 1)\n\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i in range(start_timestep_idx, len(self.scheduler.timesteps)):\n                timestep = self.scheduler.timesteps[i]\n\n                if guidance_scale > 1.0:\n                    model_input = torch.cat([latents] * 2)\n                else:\n                    model_input = latents\n                if height == 1024: #args.resolution == 1024:\n                    img_ids = _prepare_latent_image_ids(model_input.shape[0], model_input.shape[-2],model_input.shape[-1],model_input.device,model_input.dtype)\n                else:\n                    img_ids = _prepare_latent_image_ids(model_input.shape[0],2*model_input.shape[-2],2*model_input.shape[-1],model_input.device,model_input.dtype)\n                txt_ids = torch.zeros(encoder_hidden_states.shape[1],3).to(device = encoder_hidden_states.device, dtype = encoder_hidden_states.dtype)\n                model_output = self.transformer(\n                    model_input,\n                    micro_conds=micro_conds,\n                    pooled_projections=prompt_embeds,\n                    encoder_hidden_states=encoder_hidden_states,\n                    # cross_attention_kwargs=cross_attention_kwargs,\n                    img_ids = img_ids,\n                    txt_ids = txt_ids,\n                    timestep = torch.tensor([timestep], device=model_input.device, dtype=torch.long),\n                )\n\n                if guidance_scale > 1.0:\n                    uncond_logits, cond_logits = model_output.chunk(2)\n                    model_output = uncond_logits + guidance_scale * (cond_logits - uncond_logits)\n\n                latents = self.scheduler.step(\n                    model_output=model_output,\n                    timestep=timestep,\n                    sample=latents,\n                    generator=generator,\n                ).prev_sample\n\n                if i == len(self.scheduler.timesteps) - 1 or ((i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n                    if callback is not None and i % callback_steps == 0:\n                        step_idx = i // getattr(self.scheduler, \"order\", 1)\n                        callback(step_idx, timestep, latents)\n\n        if output_type == \"latent\":\n            output = latents\n        else:\n            output = self.vqvae.decode(\n                latents,\n                force_not_quantize=True,\n                shape=(\n                    batch_size,\n                    height // self.vae_scale_factor,\n                    width // self.vae_scale_factor,\n                    self.vqvae.config.latent_channels,\n                ),\n            ).sample.clip(0, 1)\n            output = self.image_processor.postprocess(output, output_type)\n\n            if needs_upcasting:\n                self.vqvae.half()\n\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return (output,)\n\n        return ImagePipelineOutput(output)\n"
  },
  {
    "path": "pipelines/meissonic/pipeline_inpaint.py",
    "content": "# Copyright 2024 The HuggingFace Team and The MeissonFlow Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\nfrom typing import Any, Callable, Dict, List, Optional, Tuple, Union\nimport torch\nfrom transformers import CLIPTextModelWithProjection, CLIPTokenizer\nfrom diffusers.image_processor import PipelineImageInput, VaeImageProcessor\nfrom diffusers.models import VQModel\nfrom diffusers.utils import replace_example_docstring\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline, ImagePipelineOutput\nfrom .scheduler import Scheduler\nfrom .transformer import Transformer2DModel\n\nEXAMPLE_DOC_STRING = \"\"\"\n    Examples:\n        ```py\n        >>> pipe(prompt, input_image, mask).images[0].save(\"out.png\")\n        ```\n\"\"\"\n\ndef _prepare_latent_image_ids(batch_size, height, width, device, dtype):\n    latent_image_ids = torch.zeros(height // 2, width // 2, 3)\n    latent_image_ids[..., 1] = latent_image_ids[..., 1] + torch.arange(height // 2)[:, None]\n    latent_image_ids[..., 2] = latent_image_ids[..., 2] + torch.arange(width // 2)[None, :]\n\n    latent_image_id_height, latent_image_id_width, latent_image_id_channels = latent_image_ids.shape\n\n    latent_image_ids = latent_image_ids.reshape(\n        latent_image_id_height * latent_image_id_width, latent_image_id_channels\n    )\n    # latent_image_ids = latent_image_ids.unsqueeze(0).repeat(batch_size, 1, 1)\n\n    return latent_image_ids.to(device=device, dtype=dtype)\n\n\nclass MeissonicInpaintPipeline(DiffusionPipeline):\n    image_processor: VaeImageProcessor\n    vqvae: VQModel\n    tokenizer: CLIPTokenizer\n    text_encoder: CLIPTextModelWithProjection\n    transformer: Transformer2DModel #UVit2DModel\n    scheduler: Scheduler\n\n    model_cpu_offload_seq = \"text_encoder->transformer->vqvae\"\n\n    _exclude_from_cpu_offload = [\"vqvae\"]\n\n    def __init__(\n        self,\n        vqvae: VQModel,\n        tokenizer: CLIPTokenizer,\n        text_encoder: CLIPTextModelWithProjection,\n        transformer: Transformer2DModel, #UVit2DModel,\n        scheduler: Scheduler,\n    ):\n        super().__init__()\n\n        self.register_modules(\n            vqvae=vqvae,\n            tokenizer=tokenizer,\n            text_encoder=text_encoder,\n            transformer=transformer,\n            scheduler=scheduler,\n        )\n        self.vae_scale_factor = 2 ** (len(self.vqvae.config.block_out_channels) - 1)\n        self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor, do_normalize=False)\n        self.mask_processor = VaeImageProcessor(\n            vae_scale_factor=self.vae_scale_factor,\n            do_normalize=False,\n            do_binarize=True,\n            do_convert_grayscale=True,\n            do_resize=True,\n        )\n        self.scheduler.register_to_config(masking_schedule=\"linear\")\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n        self,\n        prompt: Optional[Union[List[str], str]] = None,\n        image: PipelineImageInput = None,\n        mask_image: PipelineImageInput = None,\n        strength: float = 1.0,\n        num_inference_steps: int = 12,\n        guidance_scale: float = 10.0,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        generator: Optional[torch.Generator] = None,\n        prompt_embeds: Optional[torch.Tensor] = None,\n        encoder_hidden_states: Optional[torch.Tensor] = None,\n        negative_prompt_embeds: Optional[torch.Tensor] = None,\n        negative_encoder_hidden_states: Optional[torch.Tensor] = None,\n        output_type=\"pil\",\n        return_dict: bool = True,\n        callback: Optional[Callable[[int, int, torch.Tensor], None]] = None,\n        callback_steps: int = 1,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        micro_conditioning_aesthetic_score: int = 6,\n        micro_conditioning_crop_coord: Tuple[int, int] = (0, 0),\n        temperature: Union[int, Tuple[int, int], List[int]] = (2, 0),\n    ):\n        \"\"\"\n        The call function to the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide image generation. If not defined, you need to pass `prompt_embeds`.\n            image (`torch.Tensor`, `PIL.Image.Image`, `np.ndarray`, `List[torch.Tensor]`, `List[PIL.Image.Image]`, or `List[np.ndarray]`):\n                `Image`, numpy array or tensor representing an image batch to be used as the starting point. For both\n                numpy array and pytorch tensor, the expected value range is between `[0, 1]` If it's a tensor or a list\n                or tensors, the expected shape should be `(B, C, H, W)` or `(C, H, W)`. If it is a numpy array or a\n                list of arrays, the expected shape should be `(B, H, W, C)` or `(H, W, C)` It can also accept image\n                latents as `image`, but if passing latents directly it is not encoded again.\n            mask_image (`torch.Tensor`, `PIL.Image.Image`, `np.ndarray`, `List[torch.Tensor]`, `List[PIL.Image.Image]`, or `List[np.ndarray]`):\n                `Image`, numpy array or tensor representing an image batch to mask `image`. White pixels in the mask\n                are repainted while black pixels are preserved. If `mask_image` is a PIL image, it is converted to a\n                single channel (luminance) before use. If it's a numpy array or pytorch tensor, it should contain one\n                color channel (L) instead of 3, so the expected shape for pytorch tensor would be `(B, 1, H, W)`, `(B,\n                H, W)`, `(1, H, W)`, `(H, W)`. And for numpy array would be for `(B, H, W, 1)`, `(B, H, W)`, `(H, W,\n                1)`, or `(H, W)`.\n            strength (`float`, *optional*, defaults to 1.0):\n                Indicates extent to transform the reference `image`. Must be between 0 and 1. `image` is used as a\n                starting point and more noise is added the higher the `strength`. The number of denoising steps depends\n                on the amount of noise initially added. When `strength` is 1, added noise is maximum and the denoising\n                process runs for the full number of iterations specified in `num_inference_steps`. A value of 1\n                essentially ignores `image`.\n            num_inference_steps (`int`, *optional*, defaults to 16):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            guidance_scale (`float`, *optional*, defaults to 10.0):\n                A higher guidance scale value encourages the model to generate images closely linked to the text\n                `prompt` at the expense of lower image quality. Guidance scale is enabled when `guidance_scale > 1`.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide what to not include in image generation. If not defined, you need to\n                pass `negative_prompt_embeds` instead. Ignored when not using guidance (`guidance_scale < 1`).\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            generator (`torch.Generator`, *optional*):\n                A [`torch.Generator`](https://pytorch.org/docs/stable/generated/torch.Generator.html) to make\n                generation deterministic.\n            prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs (prompt weighting). If not\n                provided, text embeddings are generated from the `prompt` input argument. A single vector from the\n                pooled and projected final hidden states.\n            encoder_hidden_states (`torch.Tensor`, *optional*):\n                Pre-generated penultimate hidden states from the text encoder providing additional text conditioning.\n            negative_prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs (prompt weighting). If\n                not provided, `negative_prompt_embeds` are generated from the `negative_prompt` input argument.\n            negative_encoder_hidden_states (`torch.Tensor`, *optional*):\n                Analogous to `encoder_hidden_states` for the positive prompt.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generated image. Choose between `PIL.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.stable_diffusion.StableDiffusionPipelineOutput`] instead of a\n                plain tuple.\n            callback (`Callable`, *optional*):\n                A function that calls every `callback_steps` steps during inference. The function is called with the\n                following arguments: `callback(step: int, timestep: int, latents: torch.Tensor)`.\n            callback_steps (`int`, *optional*, defaults to 1):\n                The frequency at which the `callback` function is called. If not specified, the callback is called at\n                every step.\n            cross_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the [`AttentionProcessor`] as defined in\n                [`self.processor`](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            micro_conditioning_aesthetic_score (`int`, *optional*, defaults to 6):\n                The targeted aesthetic score according to the laion aesthetic classifier. See\n                https://laion.ai/blog/laion-aesthetics/ and the micro-conditioning section of\n                https://arxiv.org/abs/2307.01952.\n            micro_conditioning_crop_coord (`Tuple[int]`, *optional*, defaults to (0, 0)):\n                The targeted height, width crop coordinates. See the micro-conditioning section of\n                https://arxiv.org/abs/2307.01952.\n            temperature (`Union[int, Tuple[int, int], List[int]]`, *optional*, defaults to (2, 0)):\n                Configures the temperature scheduler on `self.scheduler` see `AmusedScheduler#set_timesteps`.\n\n        Examples:\n\n        Returns:\n            [`~pipelines.pipeline_utils.ImagePipelineOutput`] or `tuple`:\n                If `return_dict` is `True`, [`~pipelines.pipeline_utils.ImagePipelineOutput`] is returned, otherwise a\n                `tuple` is returned where the first element is a list with the generated images.\n        \"\"\"\n\n        if (prompt_embeds is not None and encoder_hidden_states is None) or (\n            prompt_embeds is None and encoder_hidden_states is not None\n        ):\n            raise ValueError(\"pass either both `prompt_embeds` and `encoder_hidden_states` or neither\")\n\n        if (negative_prompt_embeds is not None and negative_encoder_hidden_states is None) or (\n            negative_prompt_embeds is None and negative_encoder_hidden_states is not None\n        ):\n            raise ValueError(\n                \"pass either both `negatve_prompt_embeds` and `negative_encoder_hidden_states` or neither\"\n            )\n\n        if (prompt is None and prompt_embeds is None) or (prompt is not None and prompt_embeds is not None):\n            raise ValueError(\"pass only one of `prompt` or `prompt_embeds`\")\n\n        if isinstance(prompt, str):\n            prompt = [prompt]\n\n        if prompt is not None:\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        batch_size = batch_size * num_images_per_prompt\n\n        if prompt_embeds is None:\n            input_ids = self.tokenizer(\n                prompt,\n                return_tensors=\"pt\",\n                padding=\"max_length\",\n                truncation=True,\n                max_length=77, #self.tokenizer.model_max_length,\n            ).input_ids.to(self._execution_device)\n\n            outputs = self.text_encoder(input_ids, return_dict=True, output_hidden_states=True)\n            prompt_embeds = outputs.text_embeds\n            encoder_hidden_states = outputs.hidden_states[-2]\n\n        prompt_embeds = prompt_embeds.repeat(num_images_per_prompt, 1)\n        encoder_hidden_states = encoder_hidden_states.repeat(num_images_per_prompt, 1, 1)\n\n        if guidance_scale > 1.0:\n            if negative_prompt_embeds is None:\n                if negative_prompt is None:\n                    negative_prompt = [\"\"] * len(prompt)\n\n                if isinstance(negative_prompt, str):\n                    negative_prompt = [negative_prompt]\n\n                input_ids = self.tokenizer(\n                    negative_prompt,\n                    return_tensors=\"pt\",\n                    padding=\"max_length\",\n                    truncation=True,\n                    max_length=77, #self.tokenizer.model_max_length,\n                ).input_ids.to(self._execution_device)\n\n                outputs = self.text_encoder(input_ids, return_dict=True, output_hidden_states=True)\n                negative_prompt_embeds = outputs.text_embeds\n                negative_encoder_hidden_states = outputs.hidden_states[-2]\n\n            negative_prompt_embeds = negative_prompt_embeds.repeat(num_images_per_prompt, 1)\n            negative_encoder_hidden_states = negative_encoder_hidden_states.repeat(num_images_per_prompt, 1, 1)\n\n            prompt_embeds = torch.concat([negative_prompt_embeds, prompt_embeds])\n            encoder_hidden_states = torch.concat([negative_encoder_hidden_states, encoder_hidden_states])\n\n        image = self.image_processor.preprocess(image)\n\n        height, width = image.shape[-2:]\n\n        # Note that the micro conditionings _do_ flip the order of width, height for the original size\n        # and the crop coordinates. This is how it was done in the original code base\n        micro_conds = torch.tensor(\n            [\n                width,\n                height,\n                micro_conditioning_crop_coord[0],\n                micro_conditioning_crop_coord[1],\n                micro_conditioning_aesthetic_score,\n            ],\n            device=self._execution_device,\n            dtype=encoder_hidden_states.dtype,\n        )\n\n        micro_conds = micro_conds.unsqueeze(0)\n        micro_conds = micro_conds.expand(2 * batch_size if guidance_scale > 1.0 else batch_size, -1)\n\n        self.scheduler.set_timesteps(num_inference_steps, temperature, self._execution_device)\n        num_inference_steps = int(len(self.scheduler.timesteps) * strength)\n        start_timestep_idx = len(self.scheduler.timesteps) - num_inference_steps\n\n        needs_upcasting = False #self.vqvae.dtype == torch.float16 and self.vqvae.config.force_upcast\n\n        if needs_upcasting:\n            self.vqvae.float()\n\n        latents = self.vqvae.encode(image.to(dtype=self.vqvae.dtype, device=self._execution_device)).latents\n        latents_bsz, channels, latents_height, latents_width = latents.shape\n        latents = self.vqvae.quantize(latents)[2][2].reshape(latents_bsz, latents_height, latents_width)\n\n        mask = self.mask_processor.preprocess(\n            mask_image, height // self.vae_scale_factor, width // self.vae_scale_factor\n        )\n        mask = mask.reshape(mask.shape[0], latents_height, latents_width).bool().to(latents.device)\n        latents[mask] = self.scheduler.config.mask_token_id\n\n        starting_mask_ratio = mask.sum() / latents.numel()\n\n        latents = latents.repeat(num_images_per_prompt, 1, 1)\n\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i in range(start_timestep_idx, len(self.scheduler.timesteps)):\n                timestep = self.scheduler.timesteps[i]\n\n                if guidance_scale > 1.0:\n                    model_input = torch.cat([latents] * 2)\n                else:\n                    model_input = latents\n\n                if height == 1024: #args.resolution == 1024:\n                    img_ids = _prepare_latent_image_ids(model_input.shape[0], model_input.shape[-2],model_input.shape[-1],model_input.device,model_input.dtype)\n                else:\n                    img_ids = _prepare_latent_image_ids(model_input.shape[0],2*model_input.shape[-2],2*model_input.shape[-1],model_input.device,model_input.dtype)\n                txt_ids = torch.zeros(encoder_hidden_states.shape[1],3).to(device = encoder_hidden_states.device, dtype = encoder_hidden_states.dtype)\n                model_output = self.transformer(\n                    model_input,\n                    micro_conds=micro_conds,\n                    pooled_projections=prompt_embeds,\n                    encoder_hidden_states=encoder_hidden_states,\n                    # cross_attention_kwargs=cross_attention_kwargs,\n                    img_ids = img_ids,\n                    txt_ids = txt_ids,\n                    timestep = torch.tensor([timestep], device=model_input.device, dtype=torch.long),\n                )\n\n                if guidance_scale > 1.0:\n                    uncond_logits, cond_logits = model_output.chunk(2)\n                    model_output = uncond_logits + guidance_scale * (cond_logits - uncond_logits)\n\n                latents = self.scheduler.step(\n                    model_output=model_output,\n                    timestep=timestep,\n                    sample=latents,\n                    generator=generator,\n                    starting_mask_ratio=starting_mask_ratio,\n                ).prev_sample\n\n                if i == len(self.scheduler.timesteps) - 1 or ((i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n                    if callback is not None and i % callback_steps == 0:\n                        step_idx = i // getattr(self.scheduler, \"order\", 1)\n                        callback(step_idx, timestep, latents)\n\n        if output_type == \"latent\":\n            output = latents\n        else:\n            output = self.vqvae.decode(\n                latents,\n                force_not_quantize=True,\n                shape=(\n                    batch_size,\n                    height // self.vae_scale_factor,\n                    width // self.vae_scale_factor,\n                    self.vqvae.config.latent_channels,\n                ),\n            ).sample.clip(0, 1)\n            output = self.image_processor.postprocess(output, output_type)\n\n            if needs_upcasting:\n                self.vqvae.half()\n\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return (output,)\n\n        return ImagePipelineOutput(output)\n"
  },
  {
    "path": "pipelines/meissonic/scheduler.py",
    "content": "# Copyright 2024 The HuggingFace Team and The MeissonFlow Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\nimport math\nfrom dataclasses import dataclass\nfrom typing import List, Optional, Tuple, Union\n\nimport torch\n\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.utils import BaseOutput\nfrom diffusers.schedulers.scheduling_utils import SchedulerMixin\n\n\ndef gumbel_noise(t, generator=None):\n    noise = []\n    noise_shape = t.shape[1:]\n    for i in range(len(generator)):\n        device = generator[i].device if generator[i] is not None else t.device\n        noise.append(torch.zeros(noise_shape, device=device, dtype=t.dtype).uniform_(0, 1, generator=generator[i]).to(t.device))\n    noise = torch.stack(noise, dim=0)\n    return -torch.log((-torch.log(noise.clamp(1e-20))).clamp(1e-20))\n\n\ndef mask_by_random_topk(mask_len, probs, temperature=1.0, generator=None):\n    confidence = torch.log(probs.clamp(1e-20)) + temperature * gumbel_noise(probs, generator=generator)\n    sorted_confidence = torch.sort(confidence, dim=-1).values\n    cut_off = torch.gather(sorted_confidence, 1, mask_len.long())\n    masking = confidence < cut_off\n    return masking\n\n\n@dataclass\nclass SchedulerOutput(BaseOutput):\n    \"\"\"\n    Output class for the scheduler's `step` function output.\n\n    Args:\n        prev_sample (`torch.Tensor` of shape `(batch_size, num_channels, height, width)` for images):\n            Computed sample `(x_{t-1})` of previous timestep. `prev_sample` should be used as next model input in the\n            denoising loop.\n        pred_original_sample (`torch.Tensor` of shape `(batch_size, num_channels, height, width)` for images):\n            The predicted denoised sample `(x_{0})` based on the model output from the current timestep.\n            `pred_original_sample` can be used to preview progress or for guidance.\n    \"\"\"\n\n    prev_sample: torch.Tensor\n    pred_original_sample: torch.Tensor = None\n\n\nclass Scheduler(SchedulerMixin, ConfigMixin):\n    order = 1\n\n    temperatures: torch.Tensor\n\n    @register_to_config\n    def __init__(\n        self,\n        mask_token_id: int,\n        masking_schedule: str = \"cosine\",\n    ):\n        self.temperatures = None\n        self.timesteps = None\n\n    def set_timesteps(\n        self,\n        num_inference_steps: int,\n        temperature: Union[int, Tuple[int, int], List[int]] = (2, 0),\n        device: Union[str, torch.device] = None,\n    ):\n        self.timesteps = torch.arange(num_inference_steps, device=device).flip(0)\n\n        if isinstance(temperature, (tuple, list)):\n            self.temperatures = torch.linspace(temperature[0], temperature[1], num_inference_steps, device=device)\n        else:\n            self.temperatures = torch.linspace(temperature, 0.01, num_inference_steps, device=device)\n\n    def step(\n        self,\n        model_output: torch.Tensor,\n        timestep: torch.long,\n        sample: torch.LongTensor,\n        starting_mask_ratio: int = 1,\n        generator: Optional[torch.Generator] = None,\n        return_dict: bool = True,\n    ) -> Union[SchedulerOutput, Tuple]:\n        two_dim_input = sample.ndim == 3 and model_output.ndim == 4\n\n        if two_dim_input:\n            batch_size, codebook_size, height, width = model_output.shape\n            sample = sample.reshape(batch_size, height * width)\n            model_output = model_output.reshape(batch_size, codebook_size, height * width).permute(0, 2, 1)\n\n        unknown_map = sample == self.config.mask_token_id\n\n        probs = model_output.softmax(dim=-1)\n        device = probs.device\n        probs_view_shape = probs.shape[1:-1]\n        if not isinstance(generator, list):\n            generator = [generator] * probs.size(0)\n        elif isinstance(generator, list) and len(generator) == 1 and len(generator) != probs.size(0):\n            generator = generator * probs.size(0)\n\n        pred_original_sample = []\n        for i in range(len(generator)):\n            probs_ = probs[i].to(generator[i].device) if generator[i] is not None else probs[i] # handles when generator is on CPU\n            if probs_.device.type == \"cpu\" and probs_.dtype != torch.float32:\n                probs_ = probs_.float()  # multinomial is not implemented for cpu half precision\n            pred_original_sample.append(torch.multinomial(probs_, 1, generator=generator[i]).to(device=device).view(*probs_view_shape))\n        pred_original_sample = torch.stack(pred_original_sample, dim=0)\n        pred_original_sample = torch.where(unknown_map, pred_original_sample, sample)\n\n        if timestep == 0:\n            prev_sample = pred_original_sample\n        else:\n            seq_len = sample.shape[1]\n            step_idx = (self.timesteps == timestep).nonzero()\n            ratio = (step_idx + 1) / len(self.timesteps)\n\n            if self.config.masking_schedule == \"cosine\":\n                mask_ratio = torch.cos(ratio * math.pi / 2)\n            elif self.config.masking_schedule == \"linear\":\n                mask_ratio = 1 - ratio\n            else:\n                raise ValueError(f\"unknown masking schedule {self.config.masking_schedule}\")\n\n            mask_ratio = starting_mask_ratio * mask_ratio\n\n            mask_len = (seq_len * mask_ratio).floor()\n            # do not mask more than amount previously masked\n            mask_len = torch.min(unknown_map.sum(dim=-1, keepdim=True) - 1, mask_len)\n            # mask at least one\n            mask_len = torch.max(torch.tensor([1], device=model_output.device), mask_len)\n\n            selected_probs = torch.gather(probs, -1, pred_original_sample[:, :, None])[:, :, 0]\n            # Ignores the tokens given in the input by overwriting their confidence.\n            selected_probs = torch.where(unknown_map, selected_probs, torch.finfo(selected_probs.dtype).max)\n\n            masking = mask_by_random_topk(mask_len, selected_probs, self.temperatures[step_idx], generator)\n\n            # Masks tokens with lower confidence.\n            prev_sample = torch.where(masking, self.config.mask_token_id, pred_original_sample)\n\n        if two_dim_input:\n            prev_sample = prev_sample.reshape(batch_size, height, width)\n            pred_original_sample = pred_original_sample.reshape(batch_size, height, width)\n\n        if not return_dict:\n            return (prev_sample, pred_original_sample)\n\n        return SchedulerOutput(prev_sample, pred_original_sample)\n\n    def add_noise(self, sample, timesteps, generator=None):\n        step_idx = (self.timesteps == timesteps).nonzero()\n        ratio = (step_idx + 1) / len(self.timesteps)\n\n        if self.config.masking_schedule == \"cosine\":\n            mask_ratio = torch.cos(ratio * math.pi / 2)\n        elif self.config.masking_schedule == \"linear\":\n            mask_ratio = 1 - ratio\n        else:\n            raise ValueError(f\"unknown masking schedule {self.config.masking_schedule}\")\n\n        mask_indices = (\n            torch.rand(\n                sample.shape, device=generator[0].device if generator[0] is not None else sample.device, generator=generator\n            ).to(sample.device)\n            < mask_ratio\n        )\n\n        masked_sample = sample.clone()\n\n        masked_sample[mask_indices] = self.config.mask_token_id\n\n        return masked_sample\n"
  },
  {
    "path": "pipelines/meissonic/test.py",
    "content": "import sys\nsys.path.append(\"./\")\n\n# import torch\n# from torchvision import transforms\nfrom meissonic.transformer import Transformer2DModel as TransformerMeissonic\nfrom meissonic.pipeline import MeissonicPipeline\nfrom meissonic.scheduler import Scheduler as MeissonicScheduler\nfrom transformers import CLIPTextModelWithProjection, CLIPTokenizer\nfrom diffusers import VQModel\n\ndevice = 'cuda'\nmodel_path = 'MeissonFlow/Meissonic'\ncache_dir = '/mnt/models/Diffusers'\n\n# diffusers_load_config['variant'] = fp16\n\nmodel = TransformerMeissonic.from_pretrained(model_path, subfolder=\"transformer\", cache_dir=cache_dir)\nvq_model = VQModel.from_pretrained(model_path, subfolder=\"vqvae\", cache_dir=cache_dir)\n# text_encoder = CLIPTextModelWithProjection.from_pretrained(model_path,subfolder=\"text_encoder\",)\ntext_encoder = CLIPTextModelWithProjection.from_pretrained(\"laion/CLIP-ViT-H-14-laion2B-s32B-b79K\", cache_dir=cache_dir)\ntokenizer = CLIPTokenizer.from_pretrained(model_path, subfolder=\"tokenizer\")\nscheduler = MeissonicScheduler.from_pretrained(model_path, subfolder=\"scheduler\")\npipe = MeissonicPipeline(vq_model, tokenizer=tokenizer, text_encoder=text_encoder, transformer=model, scheduler=scheduler)\npipe = pipe.to(device)\n\nsteps = 64\nguidance_scale = 9\nresolution = 1024\nnegative = \"worst quality, low quality, low res, blurry, distortion, watermark, logo, signature, text, jpeg artifacts, signature, sketch, duplicate, ugly, identifying mark\"\nprompt = \"Beautiful young woman posing on a lake with snow covered mountains in the background\"\nimage = pipe(prompt=prompt, negative_prompt=negative, height=resolution, width=resolution, guidance_scale=guidance_scale, num_inference_steps=steps).images[0]\nimage.save('/tmp/meissonic.png')\n"
  },
  {
    "path": "pipelines/meissonic/transformer.py",
    "content": "# Copyright 2024 Black Forest Labs, The HuggingFace Team, The InstantX Team and The MeissonFlow Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\n\nfrom typing import Any, Dict, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\nimport torch.nn as nn\nimport torch.nn.functional as F\n\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.loaders import FromOriginalModelMixin, PeftAdapterMixin\nfrom diffusers.models.attention import FeedForward, BasicTransformerBlock, SkipFFTransformerBlock\nfrom diffusers.models.attention_processor import (\n    Attention,\n    AttentionProcessor,\n    FluxAttnProcessor2_0,\n    # FusedFluxAttnProcessor2_0,\n)\nfrom diffusers.models.modeling_utils import ModelMixin\nfrom diffusers.models.normalization import AdaLayerNormContinuous, AdaLayerNormZero, AdaLayerNormZeroSingle, GlobalResponseNorm, RMSNorm\nfrom diffusers.utils import USE_PEFT_BACKEND, is_torch_version, logging, scale_lora_layers, unscale_lora_layers\nfrom diffusers.utils.torch_utils import maybe_allow_in_graph\nfrom diffusers.models.embeddings import CombinedTimestepGuidanceTextProjEmbeddings, CombinedTimestepTextProjEmbeddings,TimestepEmbedding, get_timestep_embedding #,FluxPosEmbed\nfrom diffusers.models.modeling_outputs import Transformer2DModelOutput\nfrom diffusers.models.resnet import Downsample2D, Upsample2D\n\nfrom typing import List\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\n\ndef get_3d_rotary_pos_embed(\n    embed_dim, crops_coords, grid_size, temporal_size, theta: int = 10000, use_real: bool = True\n) -> Union[torch.Tensor, Tuple[torch.Tensor, torch.Tensor]]:\n    \"\"\"\n    RoPE for video tokens with 3D structure.\n\n    Args:\n    embed_dim: (`int`):\n        The embedding dimension size, corresponding to hidden_size_head.\n    crops_coords (`Tuple[int]`):\n        The top-left and bottom-right coordinates of the crop.\n    grid_size (`Tuple[int]`):\n        The grid size of the spatial positional embedding (height, width).\n    temporal_size (`int`):\n        The size of the temporal dimension.\n    theta (`float`):\n        Scaling factor for frequency computation.\n    use_real (`bool`):\n        If True, return real part and imaginary part separately. Otherwise, return complex numbers.\n\n    Returns:\n        `torch.Tensor`: positional embedding with shape `(temporal_size * grid_size[0] * grid_size[1], embed_dim/2)`.\n    \"\"\"\n    start, stop = crops_coords\n    grid_h = np.linspace(start[0], stop[0], grid_size[0], endpoint=False, dtype=np.float32)\n    grid_w = np.linspace(start[1], stop[1], grid_size[1], endpoint=False, dtype=np.float32)\n    grid_t = np.linspace(0, temporal_size, temporal_size, endpoint=False, dtype=np.float32)\n\n    # Compute dimensions for each axis\n    dim_t = embed_dim // 4\n    dim_h = embed_dim // 8 * 3\n    dim_w = embed_dim // 8 * 3\n\n    # Temporal frequencies\n    freqs_t = 1.0 / (theta ** (torch.arange(0, dim_t, 2).float() / dim_t))\n    grid_t = torch.from_numpy(grid_t).float()\n    freqs_t = torch.einsum(\"n , f -> n f\", grid_t, freqs_t)\n    freqs_t = freqs_t.repeat_interleave(2, dim=-1)\n\n    # Spatial frequencies for height and width\n    freqs_h = 1.0 / (theta ** (torch.arange(0, dim_h, 2).float() / dim_h))\n    freqs_w = 1.0 / (theta ** (torch.arange(0, dim_w, 2).float() / dim_w))\n    grid_h = torch.from_numpy(grid_h).float()\n    grid_w = torch.from_numpy(grid_w).float()\n    freqs_h = torch.einsum(\"n , f -> n f\", grid_h, freqs_h)\n    freqs_w = torch.einsum(\"n , f -> n f\", grid_w, freqs_w)\n    freqs_h = freqs_h.repeat_interleave(2, dim=-1)\n    freqs_w = freqs_w.repeat_interleave(2, dim=-1)\n\n    # Broadcast and concatenate tensors along specified dimension\n    def broadcast(tensors, dim=-1):\n        num_tensors = len(tensors)\n        shape_lens = {len(t.shape) for t in tensors}\n        assert len(shape_lens) == 1, \"tensors must all have the same number of dimensions\"\n        shape_len = list(shape_lens)[0]\n        dim = (dim + shape_len) if dim < 0 else dim\n        dims = list(zip(*(list(t.shape) for t in tensors)))\n        expandable_dims = [(i, val) for i, val in enumerate(dims) if i != dim]\n        assert all(\n            [*(len(set(t[1])) <= 2 for t in expandable_dims)]\n        ), \"invalid dimensions for broadcastable concatenation\"\n        max_dims = [(t[0], max(t[1])) for t in expandable_dims]\n        expanded_dims = [(t[0], (t[1],) * num_tensors) for t in max_dims]\n        expanded_dims.insert(dim, (dim, dims[dim]))\n        expandable_shapes = list(zip(*(t[1] for t in expanded_dims)))\n        tensors = [t[0].expand(*t[1]) for t in zip(tensors, expandable_shapes)]\n        return torch.cat(tensors, dim=dim)\n\n    freqs = broadcast((freqs_t[:, None, None, :], freqs_h[None, :, None, :], freqs_w[None, None, :, :]), dim=-1)\n\n    t, h, w, d = freqs.shape\n    freqs = freqs.view(t * h * w, d)\n\n    # Generate sine and cosine components\n    sin = freqs.sin()\n    cos = freqs.cos()\n\n    if use_real:\n        return cos, sin\n    else:\n        freqs_cis = torch.polar(torch.ones_like(freqs), freqs)\n        return freqs_cis\n\n\ndef get_2d_rotary_pos_embed(embed_dim, crops_coords, grid_size, use_real=True):\n    \"\"\"\n    RoPE for image tokens with 2d structure.\n\n    Args:\n    embed_dim: (`int`):\n        The embedding dimension size\n    crops_coords (`Tuple[int]`)\n        The top-left and bottom-right coordinates of the crop.\n    grid_size (`Tuple[int]`):\n        The grid size of the positional embedding.\n    use_real (`bool`):\n        If True, return real part and imaginary part separately. Otherwise, return complex numbers.\n\n    Returns:\n        `torch.Tensor`: positional embedding with shape `( grid_size * grid_size, embed_dim/2)`.\n    \"\"\"\n    start, stop = crops_coords\n    grid_h = np.linspace(start[0], stop[0], grid_size[0], endpoint=False, dtype=np.float32)\n    grid_w = np.linspace(start[1], stop[1], grid_size[1], endpoint=False, dtype=np.float32)\n    grid = np.meshgrid(grid_w, grid_h)  # here w goes first\n    grid = np.stack(grid, axis=0)  # [2, W, H]\n\n    grid = grid.reshape([2, 1, *grid.shape[1:]])\n    pos_embed = get_2d_rotary_pos_embed_from_grid(embed_dim, grid, use_real=use_real)\n    return pos_embed\n\n\ndef get_2d_rotary_pos_embed_from_grid(embed_dim, grid, use_real=False):\n    assert embed_dim % 4 == 0\n\n    # use half of dimensions to encode grid_h\n    emb_h = get_1d_rotary_pos_embed(\n        embed_dim // 2, grid[0].reshape(-1), use_real=use_real\n    )  # (H*W, D/2) if use_real else (H*W, D/4)\n    emb_w = get_1d_rotary_pos_embed(\n        embed_dim // 2, grid[1].reshape(-1), use_real=use_real\n    )  # (H*W, D/2) if use_real else (H*W, D/4)\n\n    if use_real:\n        cos = torch.cat([emb_h[0], emb_w[0]], dim=1)  # (H*W, D)\n        sin = torch.cat([emb_h[1], emb_w[1]], dim=1)  # (H*W, D)\n        return cos, sin\n    else:\n        emb = torch.cat([emb_h, emb_w], dim=1)  # (H*W, D/2)\n        return emb\n\n\ndef get_2d_rotary_pos_embed_lumina(embed_dim, len_h, len_w, linear_factor=1.0, ntk_factor=1.0):\n    assert embed_dim % 4 == 0\n\n    emb_h = get_1d_rotary_pos_embed(\n        embed_dim // 2, len_h, linear_factor=linear_factor, ntk_factor=ntk_factor\n    )  # (H, D/4)\n    emb_w = get_1d_rotary_pos_embed(\n        embed_dim // 2, len_w, linear_factor=linear_factor, ntk_factor=ntk_factor\n    )  # (W, D/4)\n    emb_h = emb_h.view(len_h, 1, embed_dim // 4, 1).repeat(1, len_w, 1, 1)  # (H, W, D/4, 1)\n    emb_w = emb_w.view(1, len_w, embed_dim // 4, 1).repeat(len_h, 1, 1, 1)  # (H, W, D/4, 1)\n\n    emb = torch.cat([emb_h, emb_w], dim=-1).flatten(2)  # (H, W, D/2)\n    return emb\n\n\ndef get_1d_rotary_pos_embed(\n    dim: int,\n    pos: Union[np.ndarray, int],\n    theta: float = 10000.0,\n    use_real=False,\n    linear_factor=1.0,\n    ntk_factor=1.0,\n    repeat_interleave_real=True,\n    freqs_dtype=torch.float32,  # torch.float32 (hunyuan, stable audio), torch.float64 (flux)\n):\n    \"\"\"\n    Precompute the frequency tensor for complex exponentials (cis) with given dimensions.\n\n    This function calculates a frequency tensor with complex exponentials using the given dimension 'dim' and the end\n    index 'end'. The 'theta' parameter scales the frequencies. The returned tensor contains complex values in complex64\n    data type.\n\n    Args:\n        dim (`int`): Dimension of the frequency tensor.\n        pos (`np.ndarray` or `int`): Position indices for the frequency tensor. [S] or scalar\n        theta (`float`, *optional*, defaults to 10000.0):\n            Scaling factor for frequency computation. Defaults to 10000.0.\n        use_real (`bool`, *optional*):\n            If True, return real part and imaginary part separately. Otherwise, return complex numbers.\n        linear_factor (`float`, *optional*, defaults to 1.0):\n            Scaling factor for the context extrapolation. Defaults to 1.0.\n        ntk_factor (`float`, *optional*, defaults to 1.0):\n            Scaling factor for the NTK-Aware RoPE. Defaults to 1.0.\n        repeat_interleave_real (`bool`, *optional*, defaults to `True`):\n            If `True` and `use_real`, real part and imaginary part are each interleaved with themselves to reach `dim`.\n            Otherwise, they are concateanted with themselves.\n        freqs_dtype (`torch.float32` or `torch.float64`, *optional*, defaults to `torch.float32`):\n            the dtype of the frequency tensor.\n    Returns:\n        `torch.Tensor`: Precomputed frequency tensor with complex exponentials. [S, D/2]\n    \"\"\"\n    assert dim % 2 == 0\n\n    if isinstance(pos, int):\n        pos = np.arange(pos)\n    theta = theta * ntk_factor\n    freqs = 1.0 / (theta ** (torch.arange(0, dim, 2, dtype=freqs_dtype)[: (dim // 2)] / dim)) / linear_factor  # [D/2]\n    t = torch.from_numpy(pos).to(freqs.device)  # type: ignore  # [S]\n    freqs = torch.outer(t, freqs)  # type: ignore   # [S, D/2]\n    if use_real and repeat_interleave_real:\n        freqs_cos = freqs.cos().repeat_interleave(2, dim=1).float()  # [S, D]\n        freqs_sin = freqs.sin().repeat_interleave(2, dim=1).float()  # [S, D]\n        return freqs_cos, freqs_sin\n    elif use_real:\n        freqs_cos = torch.cat([freqs.cos(), freqs.cos()], dim=-1).float()  # [S, D]\n        freqs_sin = torch.cat([freqs.sin(), freqs.sin()], dim=-1).float()  # [S, D]\n        return freqs_cos, freqs_sin\n    else:\n        freqs_cis = torch.polar(torch.ones_like(freqs), freqs).float()  # complex64     # [S, D/2]\n        return freqs_cis\n\n\nclass FluxPosEmbed(nn.Module):\n    # modified from https://github.com/black-forest-labs/flux/blob/c00d7c60b085fce8058b9df845e036090873f2ce/src/flux/modules/layers.py#L11\n    def __init__(self, theta: int, axes_dim: List[int]):\n        super().__init__()\n        self.theta = theta\n        self.axes_dim = axes_dim\n\n    def forward(self, ids: torch.Tensor) -> torch.Tensor:\n        n_axes = ids.shape[-1]\n        cos_out = []\n        sin_out = []\n        pos = ids.squeeze().float().cpu().numpy()\n        is_mps = ids.device.type == \"mps\"\n        freqs_dtype = torch.float32 if is_mps else torch.float64\n        for i in range(n_axes):\n            cos, sin = get_1d_rotary_pos_embed(\n                self.axes_dim[i], pos[:, i], repeat_interleave_real=True, use_real=True, freqs_dtype=freqs_dtype\n            )\n            cos_out.append(cos)\n            sin_out.append(sin)\n        freqs_cos = torch.cat(cos_out, dim=-1).to(ids.device)\n        freqs_sin = torch.cat(sin_out, dim=-1).to(ids.device)\n        return freqs_cos, freqs_sin\n\n\n\nclass FusedFluxAttnProcessor2_0:\n    \"\"\"Attention processor used typically in processing the SD3-like self-attention projections.\"\"\"\n\n    def __init__(self):\n        if not hasattr(F, \"scaled_dot_product_attention\"):\n            raise ImportError(\n                \"FusedFluxAttnProcessor2_0 requires PyTorch 2.0, to use it, please upgrade PyTorch to 2.0.\"\n            )\n\n    def __call__(\n        self,\n        attn: Attention,\n        hidden_states: torch.FloatTensor,\n        encoder_hidden_states: torch.FloatTensor = None,\n        attention_mask: Optional[torch.FloatTensor] = None,\n        image_rotary_emb: Optional[torch.Tensor] = None,\n    ) -> torch.FloatTensor:\n        batch_size, _, _ = hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape\n\n        # `sample` projections.\n        qkv = attn.to_qkv(hidden_states)\n        split_size = qkv.shape[-1] // 3\n        query, key, value = torch.split(qkv, split_size, dim=-1)\n\n        inner_dim = key.shape[-1]\n        head_dim = inner_dim // attn.heads\n\n        query = query.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        key = key.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        value = value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        if attn.norm_q is not None:\n            query = attn.norm_q(query)\n        if attn.norm_k is not None:\n            key = attn.norm_k(key)\n\n        # the attention in FluxSingleTransformerBlock does not use `encoder_hidden_states`\n        # `context` projections.\n        if encoder_hidden_states is not None:\n            encoder_qkv = attn.to_added_qkv(encoder_hidden_states)\n            split_size = encoder_qkv.shape[-1] // 3\n            (\n                encoder_hidden_states_query_proj,\n                encoder_hidden_states_key_proj,\n                encoder_hidden_states_value_proj,\n            ) = torch.split(encoder_qkv, split_size, dim=-1)\n\n            encoder_hidden_states_query_proj = encoder_hidden_states_query_proj.view(\n                batch_size, -1, attn.heads, head_dim\n            ).transpose(1, 2)\n            encoder_hidden_states_key_proj = encoder_hidden_states_key_proj.view(\n                batch_size, -1, attn.heads, head_dim\n            ).transpose(1, 2)\n            encoder_hidden_states_value_proj = encoder_hidden_states_value_proj.view(\n                batch_size, -1, attn.heads, head_dim\n            ).transpose(1, 2)\n\n            if attn.norm_added_q is not None:\n                encoder_hidden_states_query_proj = attn.norm_added_q(encoder_hidden_states_query_proj)\n            if attn.norm_added_k is not None:\n                encoder_hidden_states_key_proj = attn.norm_added_k(encoder_hidden_states_key_proj)\n\n            # attention\n            query = torch.cat([encoder_hidden_states_query_proj, query], dim=2)\n            key = torch.cat([encoder_hidden_states_key_proj, key], dim=2)\n            value = torch.cat([encoder_hidden_states_value_proj, value], dim=2)\n\n        hidden_states = F.scaled_dot_product_attention(query, key, value, dropout_p=0.0, is_causal=False)\n        hidden_states = hidden_states.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n        hidden_states = hidden_states.to(query.dtype)\n\n        if encoder_hidden_states is not None:\n            encoder_hidden_states, hidden_states = (\n                hidden_states[:, : encoder_hidden_states.shape[1]],\n                hidden_states[:, encoder_hidden_states.shape[1] :],\n            )\n\n            # linear proj\n            hidden_states = attn.to_out[0](hidden_states)\n            # dropout\n            hidden_states = attn.to_out[1](hidden_states)\n            encoder_hidden_states = attn.to_add_out(encoder_hidden_states)\n\n            return hidden_states, encoder_hidden_states\n        else:\n            return hidden_states\n\n\n\n@maybe_allow_in_graph\nclass   SingleTransformerBlock(nn.Module):\n    r\"\"\"\n    A Transformer block following the MMDiT architecture, introduced in Stable Diffusion 3.\n\n    Reference: https://arxiv.org/abs/2403.03206\n\n    Parameters:\n        dim (`int`): The number of channels in the input and output.\n        num_attention_heads (`int`): The number of heads to use for multi-head attention.\n        attention_head_dim (`int`): The number of channels in each head.\n        context_pre_only (`bool`): Boolean to determine if we should add some blocks associated with the\n            processing of `context` conditions.\n    \"\"\"\n\n    def __init__(self, dim, num_attention_heads, attention_head_dim, mlp_ratio=4.0):\n        super().__init__()\n        self.mlp_hidden_dim = int(dim * mlp_ratio)\n\n        self.norm = AdaLayerNormZeroSingle(dim)\n        self.proj_mlp = nn.Linear(dim, self.mlp_hidden_dim)\n        self.act_mlp = nn.GELU(approximate=\"tanh\")\n        self.proj_out = nn.Linear(dim + self.mlp_hidden_dim, dim)\n\n        processor = FluxAttnProcessor2_0()\n        self.attn = Attention(\n            query_dim=dim,\n            cross_attention_dim=None,\n            dim_head=attention_head_dim,\n            heads=num_attention_heads,\n            out_dim=dim,\n            bias=True,\n            processor=processor,\n            qk_norm=\"rms_norm\",\n            eps=1e-6,\n            pre_only=True,\n        )\n\n    def forward(\n        self,\n        hidden_states: torch.FloatTensor,\n        temb: torch.FloatTensor,\n        image_rotary_emb=None,\n    ):\n        residual = hidden_states\n        norm_hidden_states, gate = self.norm(hidden_states, emb=temb)\n        mlp_hidden_states = self.act_mlp(self.proj_mlp(norm_hidden_states))\n\n        attn_output = self.attn(\n            hidden_states=norm_hidden_states,\n            image_rotary_emb=image_rotary_emb,\n        )\n\n        hidden_states = torch.cat([attn_output, mlp_hidden_states], dim=2)\n        gate = gate.unsqueeze(1)\n        hidden_states = gate * self.proj_out(hidden_states)\n        hidden_states = residual + hidden_states\n        if hidden_states.dtype == torch.float16:\n            hidden_states = hidden_states.clip(-65504, 65504)\n\n        return hidden_states\n\n@maybe_allow_in_graph\nclass TransformerBlock(nn.Module):\n    r\"\"\"\n    A Transformer block following the MMDiT architecture, introduced in Stable Diffusion 3.\n\n    Reference: https://arxiv.org/abs/2403.03206\n\n    Parameters:\n        dim (`int`): The number of channels in the input and output.\n        num_attention_heads (`int`): The number of heads to use for multi-head attention.\n        attention_head_dim (`int`): The number of channels in each head.\n        context_pre_only (`bool`): Boolean to determine if we should add some blocks associated with the\n            processing of `context` conditions.\n    \"\"\"\n\n    def __init__(self, dim, num_attention_heads, attention_head_dim, qk_norm=\"rms_norm\", eps=1e-6):\n        super().__init__()\n\n        self.norm1 = AdaLayerNormZero(dim)\n\n        self.norm1_context = AdaLayerNormZero(dim)\n\n        if hasattr(F, \"scaled_dot_product_attention\"):\n            processor = FluxAttnProcessor2_0()\n        else:\n            raise ValueError(\n                \"The current PyTorch version does not support the `scaled_dot_product_attention` function.\"\n            )\n        self.attn = Attention(\n            query_dim=dim,\n            cross_attention_dim=None,\n            added_kv_proj_dim=dim,\n            dim_head=attention_head_dim,\n            heads=num_attention_heads,\n            out_dim=dim,\n            context_pre_only=False,\n            bias=True,\n            processor=processor,\n            qk_norm=qk_norm,\n            eps=eps,\n        )\n\n        self.norm2 = nn.LayerNorm(dim, elementwise_affine=False, eps=1e-6)\n        self.ff = FeedForward(dim=dim, dim_out=dim, activation_fn=\"gelu-approximate\")\n        # self.ff = FeedForward(dim=dim, dim_out=dim, activation_fn=\"swiglu\")\n\n        self.norm2_context = nn.LayerNorm(dim, elementwise_affine=False, eps=1e-6)\n        self.ff_context = FeedForward(dim=dim, dim_out=dim, activation_fn=\"gelu-approximate\")\n        # self.ff_context = FeedForward(dim=dim, dim_out=dim, activation_fn=\"swiglu\")\n\n        # let chunk size default to None\n        self._chunk_size = None\n        self._chunk_dim = 0\n\n    def forward(\n        self,\n        hidden_states: torch.FloatTensor,\n        encoder_hidden_states: torch.FloatTensor,\n        temb: torch.FloatTensor,\n        image_rotary_emb=None,\n    ):\n        norm_hidden_states, gate_msa, shift_mlp, scale_mlp, gate_mlp = self.norm1(hidden_states, emb=temb)\n\n        norm_encoder_hidden_states, c_gate_msa, c_shift_mlp, c_scale_mlp, c_gate_mlp = self.norm1_context(\n            encoder_hidden_states, emb=temb\n        )\n        # Attention.\n        attn_output, context_attn_output = self.attn(\n            hidden_states=norm_hidden_states,\n            encoder_hidden_states=norm_encoder_hidden_states,\n            image_rotary_emb=image_rotary_emb,\n        )\n\n        # Process attention outputs for the `hidden_states`.\n        attn_output = gate_msa.unsqueeze(1) * attn_output\n        hidden_states = hidden_states + attn_output\n\n        norm_hidden_states = self.norm2(hidden_states)\n        norm_hidden_states = norm_hidden_states * (1 + scale_mlp[:, None]) + shift_mlp[:, None]\n\n        ff_output = self.ff(norm_hidden_states)\n        ff_output = gate_mlp.unsqueeze(1) * ff_output\n\n        hidden_states = hidden_states + ff_output\n\n        # Process attention outputs for the `encoder_hidden_states`.\n\n        context_attn_output = c_gate_msa.unsqueeze(1) * context_attn_output\n        encoder_hidden_states = encoder_hidden_states + context_attn_output\n\n        norm_encoder_hidden_states = self.norm2_context(encoder_hidden_states)\n        norm_encoder_hidden_states = norm_encoder_hidden_states * (1 + c_scale_mlp[:, None]) + c_shift_mlp[:, None]\n\n        context_ff_output = self.ff_context(norm_encoder_hidden_states)\n        encoder_hidden_states = encoder_hidden_states + c_gate_mlp.unsqueeze(1) * context_ff_output\n        if encoder_hidden_states.dtype == torch.float16:\n            encoder_hidden_states = encoder_hidden_states.clip(-65504, 65504)\n\n        return encoder_hidden_states, hidden_states\n\n\nclass UVit2DConvEmbed(nn.Module):\n    def __init__(self, in_channels, block_out_channels, vocab_size, elementwise_affine, eps, bias):\n        super().__init__()\n        self.embeddings = nn.Embedding(vocab_size, in_channels)\n        self.layer_norm = RMSNorm(in_channels, eps, elementwise_affine)\n        self.conv = nn.Conv2d(in_channels, block_out_channels, kernel_size=1, bias=bias)\n\n    def forward(self, input_ids):\n        embeddings = self.embeddings(input_ids)\n        embeddings = self.layer_norm(embeddings)\n        embeddings = embeddings.permute(0, 3, 1, 2)\n        embeddings = self.conv(embeddings)\n        return embeddings\n\nclass ConvMlmLayer(nn.Module):\n    def __init__(\n        self,\n        block_out_channels: int,\n        in_channels: int,\n        use_bias: bool,\n        ln_elementwise_affine: bool,\n        layer_norm_eps: float,\n        codebook_size: int,\n    ):\n        super().__init__()\n        self.conv1 = nn.Conv2d(block_out_channels, in_channels, kernel_size=1, bias=use_bias)\n        self.layer_norm = RMSNorm(in_channels, layer_norm_eps, ln_elementwise_affine)\n        self.conv2 = nn.Conv2d(in_channels, codebook_size, kernel_size=1, bias=use_bias)\n\n    def forward(self, hidden_states):\n        hidden_states = self.conv1(hidden_states)\n        hidden_states = self.layer_norm(hidden_states.permute(0, 2, 3, 1)).permute(0, 3, 1, 2)\n        logits = self.conv2(hidden_states)\n        return logits\n\nclass SwiGLU(nn.Module):\n    r\"\"\"\n    A [variant](https://arxiv.org/abs/2002.05202) of the gated linear unit activation function. It's similar to `GEGLU`\n    but uses SiLU / Swish instead of GeLU.\n\n    Parameters:\n        dim_in (`int`): The number of channels in the input.\n        dim_out (`int`): The number of channels in the output.\n        bias (`bool`, defaults to True): Whether to use a bias in the linear layer.\n    \"\"\"\n\n    def __init__(self, dim_in: int, dim_out: int, bias: bool = True):\n        super().__init__()\n        self.proj = nn.Linear(dim_in, dim_out * 2, bias=bias)\n        self.activation = nn.SiLU()\n\n    def forward(self, hidden_states):\n        hidden_states = self.proj(hidden_states)\n        hidden_states, gate = hidden_states.chunk(2, dim=-1)\n        return hidden_states * self.activation(gate)\n\nclass ConvNextBlock(nn.Module):\n    def __init__(\n        self, channels, layer_norm_eps, ln_elementwise_affine, use_bias, hidden_dropout, hidden_size, res_ffn_factor=4\n    ):\n        super().__init__()\n        self.depthwise = nn.Conv2d(\n            channels,\n            channels,\n            kernel_size=3,\n            padding=1,\n            groups=channels,\n            bias=use_bias,\n        )\n        self.norm = RMSNorm(channels, layer_norm_eps, ln_elementwise_affine)\n        self.channelwise_linear_1 = nn.Linear(channels, int(channels * res_ffn_factor), bias=use_bias)\n        self.channelwise_act = nn.GELU()\n        self.channelwise_norm = GlobalResponseNorm(int(channels * res_ffn_factor))\n        self.channelwise_linear_2 = nn.Linear(int(channels * res_ffn_factor), channels, bias=use_bias)\n        self.channelwise_dropout = nn.Dropout(hidden_dropout)\n        self.cond_embeds_mapper = nn.Linear(hidden_size, channels * 2, use_bias)\n\n    def forward(self, x, cond_embeds):\n        x_res = x\n\n        x = self.depthwise(x)\n\n        x = x.permute(0, 2, 3, 1)\n        x = self.norm(x)\n\n        x = self.channelwise_linear_1(x)\n        x = self.channelwise_act(x)\n        x = self.channelwise_norm(x)\n        x = self.channelwise_linear_2(x)\n        x = self.channelwise_dropout(x)\n\n        x = x.permute(0, 3, 1, 2)\n\n        x = x + x_res\n\n        scale, shift = self.cond_embeds_mapper(F.silu(cond_embeds)).chunk(2, dim=1)\n        x = x * (1 + scale[:, :, None, None]) + shift[:, :, None, None]\n\n        return x\n\nclass Simple_UVitBlock(nn.Module):\n    def __init__(\n        self,\n        channels,\n        ln_elementwise_affine,\n        layer_norm_eps,\n        use_bias,\n        downsample: bool,\n        upsample: bool,\n    ):\n        super().__init__()\n\n        if downsample:\n            self.downsample = Downsample2D(\n                channels,\n                use_conv=True,\n                padding=0,\n                name=\"Conv2d_0\",\n                kernel_size=2,\n                norm_type=\"rms_norm\",\n                eps=layer_norm_eps,\n                elementwise_affine=ln_elementwise_affine,\n                bias=use_bias,\n            )\n        else:\n            self.downsample = None\n\n        if upsample:\n            self.upsample = Upsample2D(\n                channels,\n                use_conv_transpose=True,\n                kernel_size=2,\n                padding=0,\n                name=\"conv\",\n                norm_type=\"rms_norm\",\n                eps=layer_norm_eps,\n                elementwise_affine=ln_elementwise_affine,\n                bias=use_bias,\n                interpolate=False,\n            )\n        else:\n            self.upsample = None\n\n    def forward(self, x):\n        if self.downsample is not None:\n            x = self.downsample(x)\n\n        if self.upsample is not None:\n            x = self.upsample(x)\n        return x\n\n\nclass UVitBlock(nn.Module):\n    def __init__(\n        self,\n        channels,\n        num_res_blocks: int,\n        hidden_size,\n        hidden_dropout,\n        ln_elementwise_affine,\n        layer_norm_eps,\n        use_bias,\n        block_num_heads,\n        attention_dropout,\n        downsample: bool,\n        upsample: bool,\n    ):\n        super().__init__()\n\n        if downsample:\n            self.downsample = Downsample2D(\n                channels,\n                use_conv=True,\n                padding=0,\n                name=\"Conv2d_0\",\n                kernel_size=2,\n                norm_type=\"rms_norm\",\n                eps=layer_norm_eps,\n                elementwise_affine=ln_elementwise_affine,\n                bias=use_bias,\n            )\n        else:\n            self.downsample = None\n\n        self.res_blocks = nn.ModuleList(\n            [\n                ConvNextBlock(\n                    channels,\n                    layer_norm_eps,\n                    ln_elementwise_affine,\n                    use_bias,\n                    hidden_dropout,\n                    hidden_size,\n                )\n                for i in range(num_res_blocks)\n            ]\n        )\n\n        self.attention_blocks = nn.ModuleList(\n            [\n                SkipFFTransformerBlock(\n                    channels,\n                    block_num_heads,\n                    channels // block_num_heads,\n                    hidden_size,\n                    use_bias,\n                    attention_dropout,\n                    channels,\n                    attention_bias=use_bias,\n                    attention_out_bias=use_bias,\n                )\n                for _ in range(num_res_blocks)\n            ]\n        )\n\n        if upsample:\n            self.upsample = Upsample2D(\n                channels,\n                use_conv_transpose=True,\n                kernel_size=2,\n                padding=0,\n                name=\"conv\",\n                norm_type=\"rms_norm\",\n                eps=layer_norm_eps,\n                elementwise_affine=ln_elementwise_affine,\n                bias=use_bias,\n                interpolate=False,\n            )\n        else:\n            self.upsample = None\n\n    def forward(self, x, pooled_text_emb, encoder_hidden_states, cross_attention_kwargs):\n        if self.downsample is not None:\n            x = self.downsample(x)\n\n        for res_block, attention_block in zip(self.res_blocks, self.attention_blocks):\n            x = res_block(x, pooled_text_emb)\n\n            batch_size, channels, height, width = x.shape\n            x = x.view(batch_size, channels, height * width).permute(0, 2, 1)\n            x = attention_block(\n                x, encoder_hidden_states=encoder_hidden_states, cross_attention_kwargs=cross_attention_kwargs\n            )\n            x = x.permute(0, 2, 1).view(batch_size, channels, height, width)\n\n        if self.upsample is not None:\n            x = self.upsample(x)\n\n        return x\n\nclass Transformer2DModel(ModelMixin, ConfigMixin, PeftAdapterMixin, FromOriginalModelMixin):\n    \"\"\"\n    The Transformer model introduced in Flux.\n\n    Reference: https://blackforestlabs.ai/announcing-black-forest-labs/\n\n    Parameters:\n        patch_size (`int`): Patch size to turn the input data into small patches.\n        in_channels (`int`, *optional*, defaults to 16): The number of channels in the input.\n        num_layers (`int`, *optional*, defaults to 18): The number of layers of MMDiT blocks to use.\n        num_single_layers (`int`, *optional*, defaults to 18): The number of layers of single DiT blocks to use.\n        attention_head_dim (`int`, *optional*, defaults to 64): The number of channels in each head.\n        num_attention_heads (`int`, *optional*, defaults to 18): The number of heads to use for multi-head attention.\n        joint_attention_dim (`int`, *optional*): The number of `encoder_hidden_states` dimensions to use.\n        pooled_projection_dim (`int`): Number of dimensions to use when projecting the `pooled_projections`.\n        guidance_embeds (`bool`, defaults to False): Whether to use guidance embeddings.\n    \"\"\"\n\n    _supports_gradient_checkpointing = False #True\n    # Due to NotImplementedError: DDPOptimizer backend: Found a higher order op in the graph. This is not supported. Please turn off DDP optimizer using torch._dynamo.config.optimize_ddp=False. Note that this can cause performance degradation because there will be one bucket for the entire Dynamo graph.\n    # Please refer to this issue - https://github.com/pytorch/pytorch/issues/104674.\n    _no_split_modules = [\"TransformerBlock\", \"SingleTransformerBlock\"]\n\n    @register_to_config\n    def __init__(\n        self,\n        patch_size: int = 1,\n        in_channels: int = 64,\n        num_layers: int = 19,\n        num_single_layers: int = 38,\n        attention_head_dim: int = 128,\n        num_attention_heads: int = 24,\n        joint_attention_dim: int = 4096,\n        pooled_projection_dim: int = 768,\n        guidance_embeds: bool = False, # unused in our implementation\n        axes_dims_rope: Tuple[int] = (16, 56, 56),\n        vocab_size: int = 8256,\n        codebook_size: int = 8192,\n        downsample: bool = False,\n        upsample: bool = False,\n    ):\n        super().__init__()\n        self.out_channels = in_channels\n        self.inner_dim = self.config.num_attention_heads * self.config.attention_head_dim\n\n        self.pos_embed = FluxPosEmbed(theta=10000, axes_dim=axes_dims_rope)\n        text_time_guidance_cls = (\n            CombinedTimestepGuidanceTextProjEmbeddings if guidance_embeds else CombinedTimestepTextProjEmbeddings\n        )\n        self.time_text_embed = text_time_guidance_cls(\n            embedding_dim=self.inner_dim, pooled_projection_dim=self.config.pooled_projection_dim\n        )\n\n        self.context_embedder = nn.Linear(self.config.joint_attention_dim, self.inner_dim)\n\n        self.transformer_blocks = nn.ModuleList(\n            [\n                TransformerBlock(\n                    dim=self.inner_dim,\n                    num_attention_heads=self.config.num_attention_heads,\n                    attention_head_dim=self.config.attention_head_dim,\n                )\n                for i in range(self.config.num_layers)\n            ]\n        )\n\n        self.single_transformer_blocks = nn.ModuleList(\n            [\n                SingleTransformerBlock(\n                    dim=self.inner_dim,\n                    num_attention_heads=self.config.num_attention_heads,\n                    attention_head_dim=self.config.attention_head_dim,\n                )\n                for i in range(self.config.num_single_layers)\n            ]\n        )\n\n\n        self.gradient_checkpointing = False\n\n        in_channels_embed = self.inner_dim\n        ln_elementwise_affine = True\n        layer_norm_eps = 1e-06\n        use_bias = False\n        micro_cond_embed_dim = 1280\n        self.embed = UVit2DConvEmbed(\n            in_channels_embed, self.inner_dim, self.config.vocab_size, ln_elementwise_affine, layer_norm_eps, use_bias\n        )\n        self.mlm_layer = ConvMlmLayer(\n            self.inner_dim, in_channels_embed, use_bias, ln_elementwise_affine, layer_norm_eps, self.config.codebook_size\n        )\n        self.cond_embed = TimestepEmbedding(\n            micro_cond_embed_dim + self.config.pooled_projection_dim, self.inner_dim, sample_proj_bias=use_bias\n        )\n        self.encoder_proj_layer_norm = RMSNorm(self.inner_dim, layer_norm_eps, ln_elementwise_affine)\n        self.project_to_hidden_norm = RMSNorm(in_channels_embed, layer_norm_eps, ln_elementwise_affine)\n        self.project_to_hidden = nn.Linear(in_channels_embed, self.inner_dim, bias=use_bias)\n        self.project_from_hidden_norm = RMSNorm(self.inner_dim, layer_norm_eps, ln_elementwise_affine)\n        self.project_from_hidden = nn.Linear(self.inner_dim, in_channels_embed, bias=use_bias)\n\n        self.down_block = Simple_UVitBlock(\n            self.inner_dim,\n            ln_elementwise_affine,\n            layer_norm_eps,\n            use_bias,\n            downsample,\n            False,\n        )\n        self.up_block = Simple_UVitBlock(\n            self.inner_dim, #block_out_channels,\n            ln_elementwise_affine,\n            layer_norm_eps,\n            use_bias,\n            False,\n            upsample=upsample,\n        )\n\n        # self.fuse_qkv_projections()\n\n    @property\n    # Copied from diffusers.models.unets.unet_2d_condition.UNet2DConditionModel.attn_processors\n    def attn_processors(self) -> Dict[str, AttentionProcessor]:\n        r\"\"\"\n        Returns:\n            `dict` of attention processors: A dictionary containing all attention processors used in the model with\n            indexed by its weight name.\n        \"\"\"\n        # set recursively\n        processors = {}\n\n        def fn_recursive_add_processors(name: str, module: torch.nn.Module, processors: Dict[str, AttentionProcessor]):\n            if hasattr(module, \"get_processor\"):\n                processors[f\"{name}.processor\"] = module.get_processor()\n\n            for sub_name, child in module.named_children():\n                fn_recursive_add_processors(f\"{name}.{sub_name}\", child, processors)\n\n            return processors\n\n        for name, module in self.named_children():\n            fn_recursive_add_processors(name, module, processors)\n\n        return processors\n\n    # Copied from diffusers.models.unets.unet_2d_condition.UNet2DConditionModel.set_attn_processor\n    def set_attn_processor(self, processor: Union[AttentionProcessor, Dict[str, AttentionProcessor]]):\n        r\"\"\"\n        Sets the attention processor to use to compute attention.\n\n        Parameters:\n            processor (`dict` of `AttentionProcessor` or only `AttentionProcessor`):\n                The instantiated processor class or a dictionary of processor classes that will be set as the processor\n                for **all** `Attention` layers.\n\n                If `processor` is a dict, the key needs to define the path to the corresponding cross attention\n                processor. This is strongly recommended when setting trainable attention processors.\n\n        \"\"\"\n        count = len(self.attn_processors.keys())\n\n        if isinstance(processor, dict) and len(processor) != count:\n            raise ValueError(\n                f\"A dict of processors was passed, but the number of processors {len(processor)} does not match the\"\n                f\" number of attention layers: {count}. Please make sure to pass {count} processor classes.\"\n            )\n\n        def fn_recursive_attn_processor(name: str, module: torch.nn.Module, processor):\n            if hasattr(module, \"set_processor\"):\n                if not isinstance(processor, dict):\n                    module.set_processor(processor)\n                else:\n                    module.set_processor(processor.pop(f\"{name}.processor\"))\n\n            for sub_name, child in module.named_children():\n                fn_recursive_attn_processor(f\"{name}.{sub_name}\", child, processor)\n\n        for name, module in self.named_children():\n            fn_recursive_attn_processor(name, module, processor)\n\n    # Copied from diffusers.models.unets.unet_2d_condition.UNet2DConditionModel.fuse_qkv_projections with FusedAttnProcessor2_0->FusedFluxAttnProcessor2_0\n    def fuse_qkv_projections(self):\n        \"\"\"\n        Enables fused QKV projections. For self-attention modules, all projection matrices (i.e., query, key, value)\n        are fused. For cross-attention modules, key and value projection matrices are fused.\n\n        <Tip warning={true}>\n\n        This API is 🧪 experimental.\n\n        </Tip>\n        \"\"\"\n        self.original_attn_processors = None\n\n        for _, attn_processor in self.attn_processors.items():\n            if \"Added\" in str(attn_processor.__class__.__name__):\n                raise ValueError(\"`fuse_qkv_projections()` is not supported for models having added KV projections.\")\n\n        self.original_attn_processors = self.attn_processors\n\n        for module in self.modules():\n            if isinstance(module, Attention):\n                module.fuse_projections(fuse=True)\n\n        self.set_attn_processor(FusedFluxAttnProcessor2_0())\n\n    # Copied from diffusers.models.unets.unet_2d_condition.UNet2DConditionModel.unfuse_qkv_projections\n    def unfuse_qkv_projections(self):\n        \"\"\"Disables the fused QKV projection if enabled.\n\n        <Tip warning={true}>\n\n        This API is 🧪 experimental.\n\n        </Tip>\n\n        \"\"\"\n        if self.original_attn_processors is not None:\n            self.set_attn_processor(self.original_attn_processors)\n\n    def _set_gradient_checkpointing(self, module, value=False):\n        if hasattr(module, \"gradient_checkpointing\"):\n            module.gradient_checkpointing = value\n\n    def forward(\n        self,\n        hidden_states: torch.Tensor,\n        encoder_hidden_states: torch.Tensor = None,\n        pooled_projections: torch.Tensor = None,\n        timestep: torch.LongTensor = None,\n        img_ids: torch.Tensor = None,\n        txt_ids: torch.Tensor = None,\n        guidance: torch.Tensor = None,\n        joint_attention_kwargs: Optional[Dict[str, Any]] = None,\n        controlnet_block_samples= None,\n        controlnet_single_block_samples=None,\n        return_dict: bool = True,\n        micro_conds: torch.Tensor = None,\n    ) -> Union[torch.FloatTensor, Transformer2DModelOutput]:\n        \"\"\"\n        The [`FluxTransformer2DModel`] forward method.\n\n        Args:\n            hidden_states (`torch.FloatTensor` of shape `(batch size, channel, height, width)`):\n                Input `hidden_states`.\n            encoder_hidden_states (`torch.FloatTensor` of shape `(batch size, sequence_len, embed_dims)`):\n                Conditional embeddings (embeddings computed from the input conditions such as prompts) to use.\n            pooled_projections (`torch.FloatTensor` of shape `(batch_size, projection_dim)`): Embeddings projected\n                from the embeddings of input conditions.\n            timestep ( `torch.LongTensor`):\n                Used to indicate denoising step.\n            block_controlnet_hidden_states: (`list` of `torch.Tensor`):\n                A list of tensors that if specified are added to the residuals of transformer blocks.\n            joint_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~models.transformer_2d.Transformer2DModelOutput`] instead of a plain\n                tuple.\n\n        Returns:\n            If `return_dict` is True, an [`~models.transformer_2d.Transformer2DModelOutput`] is returned, otherwise a\n            `tuple` where the first element is the sample tensor.\n        \"\"\"\n        micro_cond_encode_dim = 256 # same as self.config.micro_cond_encode_dim = 256 from amused\n        micro_cond_embeds = get_timestep_embedding(\n            micro_conds.flatten(), micro_cond_encode_dim, flip_sin_to_cos=True, downscale_freq_shift=0\n        )\n        micro_cond_embeds = micro_cond_embeds.reshape((hidden_states.shape[0], -1))\n\n        pooled_projections = torch.cat([pooled_projections, micro_cond_embeds], dim=1)\n        pooled_projections = pooled_projections.to(dtype=self.dtype)\n        pooled_projections = self.cond_embed(pooled_projections).to(encoder_hidden_states.dtype)\n\n\n        hidden_states = self.embed(hidden_states)\n\n        encoder_hidden_states = self.context_embedder(encoder_hidden_states)\n        encoder_hidden_states = self.encoder_proj_layer_norm(encoder_hidden_states)\n        hidden_states = self.down_block(hidden_states)\n\n        batch_size, channels, height, width = hidden_states.shape\n        hidden_states = hidden_states.permute(0, 2, 3, 1).reshape(batch_size, height * width, channels)\n        hidden_states = self.project_to_hidden_norm(hidden_states)\n        hidden_states = self.project_to_hidden(hidden_states)\n\n\n        if joint_attention_kwargs is not None:\n            joint_attention_kwargs = joint_attention_kwargs.copy()\n            lora_scale = joint_attention_kwargs.pop(\"scale\", 1.0)\n        else:\n            lora_scale = 1.0\n\n        if USE_PEFT_BACKEND:\n            # weight the lora layers by setting `lora_scale` for each PEFT layer\n            scale_lora_layers(self, lora_scale)\n        else:\n            if joint_attention_kwargs is not None and joint_attention_kwargs.get(\"scale\", None) is not None:\n                logger.warning(\n                    \"Passing `scale` via `joint_attention_kwargs` when not using the PEFT backend is ineffective.\"\n                )\n\n        timestep = timestep.to(hidden_states.dtype) * 1000\n        if guidance is not None:\n            guidance = guidance.to(hidden_states.dtype) * 1000\n        else:\n            guidance = None\n        temb = (\n            self.time_text_embed(timestep, pooled_projections)\n            if guidance is None\n            else self.time_text_embed(timestep, guidance, pooled_projections)\n        )\n\n        if txt_ids.ndim == 3:\n            logger.warning(\n                \"Passing `txt_ids` 3d torch.Tensor is deprecated.\"\n                \"Please remove the batch dimension and pass it as a 2d torch Tensor\"\n            )\n            txt_ids = txt_ids[0]\n        if img_ids.ndim == 3:\n            logger.warning(\n                \"Passing `img_ids` 3d torch.Tensor is deprecated.\"\n                \"Please remove the batch dimension and pass it as a 2d torch Tensor\"\n            )\n            img_ids = img_ids[0]\n        ids = torch.cat((txt_ids, img_ids), dim=0)\n\n        image_rotary_emb = self.pos_embed(ids)\n\n        for index_block, block in enumerate(self.transformer_blocks):\n            if self.training and self.gradient_checkpointing:\n\n                def create_custom_forward(module, return_dict=None):\n                    def custom_forward(*inputs):\n                        if return_dict is not None:\n                            return module(*inputs, return_dict=return_dict)\n                        else:\n                            return module(*inputs)\n\n                    return custom_forward\n\n                ckpt_kwargs: Dict[str, Any] = {\"use_reentrant\": False} if is_torch_version(\">=\", \"1.11.0\") else {}\n                encoder_hidden_states, hidden_states = torch.utils.checkpoint.checkpoint(\n                    create_custom_forward(block),\n                    hidden_states,\n                    encoder_hidden_states,\n                    temb,\n                    image_rotary_emb,\n                    **ckpt_kwargs,\n                )\n\n            else:\n                encoder_hidden_states, hidden_states = block(\n                    hidden_states=hidden_states,\n                    encoder_hidden_states=encoder_hidden_states,\n                    temb=temb,\n                    image_rotary_emb=image_rotary_emb,\n                )\n\n\n            # controlnet residual\n            if controlnet_block_samples is not None:\n                interval_control = len(self.transformer_blocks) / len(controlnet_block_samples)\n                interval_control = int(np.ceil(interval_control))\n                hidden_states = hidden_states + controlnet_block_samples[index_block // interval_control]\n\n        hidden_states = torch.cat([encoder_hidden_states, hidden_states], dim=1)\n\n        for index_block, block in enumerate(self.single_transformer_blocks):\n            if self.training and self.gradient_checkpointing:\n\n                def create_custom_forward(module, return_dict=None):\n                    def custom_forward(*inputs):\n                        if return_dict is not None:\n                            return module(*inputs, return_dict=return_dict)\n                        else:\n                            return module(*inputs)\n\n                    return custom_forward\n\n                ckpt_kwargs: Dict[str, Any] = {\"use_reentrant\": False} if is_torch_version(\">=\", \"1.11.0\") else {}\n                hidden_states = torch.utils.checkpoint.checkpoint(\n                    create_custom_forward(block),\n                    hidden_states,\n                    temb,\n                    image_rotary_emb,\n                    **ckpt_kwargs,\n                )\n\n            else:\n                hidden_states = block(\n                    hidden_states=hidden_states,\n                    temb=temb,\n                    image_rotary_emb=image_rotary_emb,\n                )\n\n            # controlnet residual\n            if controlnet_single_block_samples is not None:\n                interval_control = len(self.single_transformer_blocks) / len(controlnet_single_block_samples)\n                interval_control = int(np.ceil(interval_control))\n                hidden_states[:, encoder_hidden_states.shape[1] :, ...] = (\n                    hidden_states[:, encoder_hidden_states.shape[1] :, ...]\n                    + controlnet_single_block_samples[index_block // interval_control]\n                )\n\n        hidden_states = hidden_states[:, encoder_hidden_states.shape[1] :, ...]\n\n\n        hidden_states = self.project_from_hidden_norm(hidden_states)\n        hidden_states = self.project_from_hidden(hidden_states)\n\n\n        hidden_states = hidden_states.reshape(batch_size, height, width, channels).permute(0, 3, 1, 2)\n\n        hidden_states = self.up_block(hidden_states)\n\n        if USE_PEFT_BACKEND:\n            # remove `lora_scale` from each PEFT layer\n            unscale_lora_layers(self, lora_scale)\n\n        output = self.mlm_layer(hidden_states)\n        # self.unfuse_qkv_projections()\n        if not return_dict:\n            return (output,)\n\n\n        return output\n"
  },
  {
    "path": "pipelines/model_anima.py",
    "content": "import sys\nimport importlib.util\nimport transformers\nimport diffusers\nimport huggingface_hub as hf\nfrom modules import shared, devices, sd_models, model_quant, sd_hijack_te, sd_hijack_vae\nfrom pipelines import generic\n\n\ndef _import_from_file(module_name, file_path):\n    spec = importlib.util.spec_from_file_location(module_name, file_path)\n    mod = importlib.util.module_from_spec(spec)\n    spec.loader.exec_module(mod)\n    return mod\n\n\ndef load_anima(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config, allow_quant=False)\n    shared.log.debug(f'Load model: type=Anima repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={load_args}')\n\n    # download custom pipeline modules from repo\n    try:\n        pipeline_file = hf.hf_hub_download(repo_id, filename='pipeline.py', cache_dir=shared.opts.diffusers_dir)\n        adapter_file = hf.hf_hub_download(repo_id, filename='llm_adapter/modeling_llm_adapter.py', cache_dir=shared.opts.diffusers_dir)\n    except Exception as e:\n        shared.log.error(f'Load model: type=Anima failed to download custom modules: {e}')\n        return None\n\n    # dynamically import custom classes and register in sys.modules so\n    # Diffusers' from_pretrained can resolve them via trust_remote_code\n    adapter_mod = _import_from_file('modeling_llm_adapter', adapter_file)\n    sys.modules['modeling_llm_adapter'] = adapter_mod\n    pipeline_mod = _import_from_file('pipeline', pipeline_file)\n    sys.modules['pipeline'] = pipeline_mod\n    AnimaTextToImagePipeline = pipeline_mod.AnimaTextToImagePipeline\n    AnimaLLMAdapter = adapter_mod.AnimaLLMAdapter\n\n    # load components\n    transformer = generic.load_transformer(repo_id, cls_name=diffusers.CosmosTransformer3DModel, load_config=diffusers_load_config, subfolder=\"transformer\")\n    text_encoder = generic.load_text_encoder(repo_id, cls_name=transformers.Qwen3Model, load_config=diffusers_load_config, subfolder=\"text_encoder\", allow_shared=False)\n\n    shared.state.begin('Load adapter')\n    try:\n        llm_adapter = AnimaLLMAdapter.from_pretrained(\n            repo_id,\n            subfolder=\"llm_adapter\",\n            cache_dir=shared.opts.diffusers_dir,\n            torch_dtype=devices.dtype,\n        )\n    except Exception as e:\n        shared.log.error(f'Load model: type=Anima adapter: {e}')\n        return None\n    finally:\n        shared.state.end()\n\n    tokenizer = transformers.AutoTokenizer.from_pretrained(repo_id, subfolder=\"tokenizer\", cache_dir=shared.opts.diffusers_dir)\n    t5_tokenizer = transformers.AutoTokenizer.from_pretrained(repo_id, subfolder=\"t5_tokenizer\", cache_dir=shared.opts.diffusers_dir)\n\n    # assemble pipeline\n    pipe = AnimaTextToImagePipeline.from_pretrained(\n        repo_id,\n        transformer=transformer,\n        text_encoder=text_encoder,\n        llm_adapter=llm_adapter,\n        tokenizer=tokenizer,\n        t5_tokenizer=t5_tokenizer,\n        cache_dir=shared.opts.diffusers_dir,\n        trust_remote_code=True,\n        **load_args,\n    )\n\n    del text_encoder\n    del transformer\n    del llm_adapter\n\n    sd_hijack_te.init_hijack(pipe)\n    sd_hijack_vae.init_hijack(pipe)\n\n    devices.torch_gc()\n    return pipe\n"
  },
  {
    "path": "pipelines/model_auraflow.py",
    "content": "import transformers\nimport diffusers\nfrom modules import shared, sd_models, devices, model_quant, sd_hijack_te\nfrom pipelines import generic\n\n\ndef load_auraflow(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config)\n    shared.log.debug(f'Load model: type=AuraFlow repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={load_args}')\n\n    transformer = generic.load_transformer(repo_id, cls_name=diffusers.AuraFlowTransformer2DModel, load_config=diffusers_load_config)\n    text_encoder = generic.load_text_encoder(repo_id, cls_name=transformers.UMT5EncoderModel, load_config=diffusers_load_config, allow_shared=False) # auraflow uses EleutherAI/pile-t5-xl\n\n    pipe = diffusers.AuraFlowPipeline.from_pretrained(\n        repo_id,\n        transformer=transformer,\n        text_encoder=text_encoder,\n        cache_dir=shared.opts.diffusers_dir,\n        **load_args,\n    )\n\n    del text_encoder\n    del transformer\n    sd_hijack_te.init_hijack(pipe)\n    devices.torch_gc(force=True, reason='load')\n    return pipe\n"
  },
  {
    "path": "pipelines/model_bria.py",
    "content": "import os\nimport sys\nimport transformers\nimport diffusers\nfrom modules import shared, devices, sd_models, model_quant, sd_hijack_te, sd_hijack_vae\nfrom pipelines import generic\n\n\ndef load_bria(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    sys.path.append(os.path.join(os.path.dirname(__file__), 'bria'))\n    from pipelines.bria.bria_pipeline import BriaPipeline\n    from pipelines.bria.transformer_bria import BriaTransformer2DModel\n    diffusers.BriaPipeline = BriaPipeline\n    diffusers.BriaTransformer2DModel = BriaTransformer2DModel\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config, allow_quant=False)\n    shared.log.debug(f'Load model: type=Bria repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={load_args}')\n\n    transformer = generic.load_transformer(repo_id, cls_name=BriaTransformer2DModel, load_config=diffusers_load_config)\n    text_encoder = generic.load_text_encoder(repo_id, cls_name=transformers.T5EncoderModel, load_config=diffusers_load_config)\n\n    pipe = BriaPipeline.from_pretrained(\n        repo_id,\n        transformer=transformer,\n        text_encoder=text_encoder,\n        cache_dir=shared.opts.diffusers_dir,\n        trust_remote_code=True,\n        **load_args,\n    )\n\n    del text_encoder\n    del transformer\n    sd_hijack_te.init_hijack(pipe)\n    sd_hijack_vae.init_hijack(pipe)\n\n    devices.torch_gc()\n    return pipe\n"
  },
  {
    "path": "pipelines/model_chroma.py",
    "content": "import diffusers\nimport transformers\nfrom modules import shared, devices, sd_models, model_quant, sd_hijack_te\nfrom pipelines import generic\n\n\ndef load_chroma(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config, allow_quant=False)\n    shared.log.debug(f'Load model: type=Chroma repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={load_args}')\n\n    transformer = generic.load_transformer(repo_id, cls_name=diffusers.ChromaTransformer2DModel, load_config=diffusers_load_config, modules_to_not_convert=[\"distilled_guidance_layer\"])\n    text_encoder = generic.load_text_encoder(repo_id, cls_name=transformers.T5EncoderModel, load_config=diffusers_load_config)\n\n    pipe = diffusers.ChromaPipeline.from_pretrained(\n        repo_id,\n        transformer=transformer,\n        text_encoder=text_encoder,\n        cache_dir=shared.opts.diffusers_dir,\n        **load_args,\n    )\n\n    diffusers.pipelines.auto_pipeline.AUTO_TEXT2IMAGE_PIPELINES_MAPPING[\"chroma\"] = diffusers.ChromaPipeline\n    diffusers.pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING[\"chroma\"] = diffusers.ChromaImg2ImgPipeline\n    diffusers.pipelines.auto_pipeline.AUTO_INPAINT_PIPELINES_MAPPING[\"chroma\"] = diffusers.ChromaInpaintPipeline\n    del text_encoder\n    del transformer\n    sd_hijack_te.init_hijack(pipe)\n\n    devices.torch_gc(force=True, reason='load')\n    return pipe\n"
  },
  {
    "path": "pipelines/model_chrono.py",
    "content": "import diffusers\nimport transformers\nfrom modules import shared, devices, sd_models, model_quant, sd_hijack_te, sd_hijack_vae\nfrom pipelines import generic\n\n\ndef postprocess(p, result): # pylint: disable=unused-argument\n    shared.log.debug('Postprocess: model=ChronoEdit')\n    if result is not None and hasattr(result, 'images'):\n        result.images = result.images[-1]\n    return result\n\n\ndef load_chrono(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config, allow_quant=False)\n    shared.log.debug(f'Load model: type=ChronoEdit repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={load_args}')\n\n    transformer = generic.load_transformer(repo_id, cls_name=diffusers.ChronoEditTransformer3DModel, load_config=diffusers_load_config, subfolder=\"transformer\")\n    text_encoder = generic.load_text_encoder(repo_id, cls_name=transformers.UMT5EncoderModel, load_config=diffusers_load_config, subfolder=\"text_encoder\")\n\n    try:\n        pipe = diffusers.ChronoEditPipeline.from_pretrained(\n            repo_id,\n            transformer=transformer,\n            text_encoder=text_encoder,\n            cache_dir=shared.opts.diffusers_dir,\n            **load_args,\n        )\n    except Exception as e:\n        import os\n        from modules import errors\n        errors.display(e, 'Chrono')\n        os._exit(1)\n    pipe.postprocess = postprocess\n    pipe.task_args = {\n        'num_temporal_reasoning_steps': shared.opts.model_chrono_temporal_steps,\n        'output_type': 'np',\n    }\n    # reference: <https://github.com/nv-tlabs/ChronoEdit/blob/main/scripts/run_inference_diffusers.py>\n    if shared.opts.model_chrono_temporal_steps > 0:\n        pipe.task_args['num_frames'] = 29\n        pipe.task_args['enable_temporal_reasoning'] = True\n    else:\n        pipe.task_args['num_frames'] = 5\n        pipe.task_args['enable_temporal_reasoning'] = False\n\n    del text_encoder\n    del transformer\n\n    sd_hijack_te.init_hijack(pipe)\n    sd_hijack_vae.init_hijack(pipe)\n\n    devices.torch_gc()\n    return pipe\n"
  },
  {
    "path": "pipelines/model_cogview.py",
    "content": "import transformers\nimport diffusers\nfrom modules import shared, devices, sd_models, model_quant, sd_hijack_te\nfrom pipelines import generic\n\n\ndef load_cogview3(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config)\n    shared.log.debug(f'Load model: type=CogView3 repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={load_args}')\n\n    transformer = generic.load_transformer(repo_id, cls_name=diffusers.CogView3PlusTransformer2DModel, load_config=diffusers_load_config, subfolder=\"transformer\")\n    text_encoder = generic.load_text_encoder(repo_id, cls_name=transformers.T5EncoderModel, load_config=diffusers_load_config, subfolder=\"text_encoder\")\n\n    pipe = diffusers.CogView3PlusPipeline.from_pretrained(\n        repo_id,\n        text_encoder=text_encoder,\n        transformer=transformer,\n        cache_dir=shared.opts.diffusers_dir,\n        **load_args,\n    )\n    sd_hijack_te.init_hijack(pipe)\n    del transformer\n    del text_encoder\n    devices.torch_gc()\n    return pipe\n\n\ndef load_cogview4(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config)\n    shared.log.debug(f'Load model: type=CogView4 repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={load_args}')\n\n    transformer = generic.load_transformer(repo_id, cls_name=diffusers.CogView4Transformer2DModel, load_config=diffusers_load_config, subfolder=\"transformer\")\n    text_encoder = generic.load_text_encoder(repo_id, cls_name=transformers.GlmModel, load_config=diffusers_load_config, subfolder=\"text_encoder\", allow_quant=True)\n\n    pipe = diffusers.CogView4Pipeline.from_pretrained(\n        repo_id,\n        text_encoder=text_encoder,\n        transformer=transformer,\n        cache_dir=shared.opts.diffusers_dir,\n        **load_args,\n    )\n    sd_hijack_te.init_hijack(pipe)\n    del transformer\n    del text_encoder\n\n    devices.torch_gc()\n    return pipe\n"
  },
  {
    "path": "pipelines/model_cosmos.py",
    "content": "import transformers\nimport diffusers\nfrom modules import shared, devices, sd_models, model_quant, sd_hijack_te, sd_hijack_vae\nfrom pipelines import generic\n\n\ndef load_cosmos_t2i(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config, allow_quant=False)\n    shared.log.debug(f'Load model: type=Cosmos repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={load_args}')\n\n    transformer = generic.load_transformer(repo_id, cls_name=diffusers.CosmosTransformer3DModel, load_config=diffusers_load_config, subfolder=\"transformer\")\n    repo_te = 'nvidia/Cosmos-Predict2-2B-Text2Image' if 'Cosmos-Predict2-14B-Text2Image' in repo_id else repo_id\n    text_encoder = generic.load_text_encoder(repo_te, cls_name=transformers.T5EncoderModel, load_config=diffusers_load_config, subfolder=\"text_encoder\", allow_shared=False) # cosmos does use standard t5\n    safety_checker = Fake_safety_checker()\n\n    pipe = diffusers.Cosmos2TextToImagePipeline.from_pretrained(\n        repo_id,\n        transformer=transformer,\n        text_encoder=text_encoder,\n        safety_checker=safety_checker,\n        cache_dir=shared.opts.diffusers_dir,\n        **load_args,\n    )\n\n    del text_encoder\n    del transformer\n\n    sd_hijack_te.init_hijack(pipe)\n    sd_hijack_vae.init_hijack(pipe)\n\n    devices.torch_gc()\n    return pipe\n\n\nclass Fake_safety_checker:\n    def __init__(self):\n        from diffusers.utils import import_utils\n        import_utils._cosmos_guardrail_available = True # pylint: disable=protected-access\n\n    def __call__(self, *args, **kwargs): # pylint: disable=unused-argument\n        return\n\n    def to(self, _device):\n        pass\n\n    def check_text_safety(self, _prompt):\n        return True\n\n    def check_video_safety(self, vid):\n        return vid\n"
  },
  {
    "path": "pipelines/model_flex.py",
    "content": "import transformers\nimport diffusers\nfrom modules import shared, devices, sd_models, model_quant, sd_hijack_te\nfrom pipelines import generic\n\n\ndef load_flex(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config, allow_quant=False)\n    shared.log.debug(f'Load model: type=Flex repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={load_args}')\n\n    transformer = generic.load_transformer(repo_id, cls_name=diffusers.FluxTransformer2DModel, load_config=diffusers_load_config)\n    text_encoder_2 = generic.load_text_encoder(repo_id, cls_name=transformers.T5EncoderModel, load_config=diffusers_load_config, subfolder=\"text_encoder_2\")\n\n    from pipelines.flex2 import Flex2Pipeline\n    pipe = Flex2Pipeline.from_pretrained(\n        repo_id,\n        transformer=transformer,\n        text_encoder_2=text_encoder_2,\n        cache_dir=shared.opts.diffusers_dir,\n        **load_args,\n    )\n    diffusers.pipelines.auto_pipeline.AUTO_TEXT2IMAGE_PIPELINES_MAPPING[\"flex2\"] = Flex2Pipeline\n    diffusers.pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING[\"flex2\"] = Flex2Pipeline\n    diffusers.pipelines.auto_pipeline.AUTO_INPAINT_PIPELINES_MAPPING[\"flex2\"] = Flex2Pipeline\n\n    del text_encoder_2\n    del transformer\n    sd_hijack_te.init_hijack(pipe)\n\n    devices.torch_gc()\n    return pipe\n"
  },
  {
    "path": "pipelines/model_flite.py",
    "content": "import sys\nimport diffusers\nimport transformers\nfrom modules import shared, devices, sd_models, model_quant, sd_hijack_te\nfrom pipelines import generic\n\n\ndef load_flite(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config, allow_quant=False)\n    shared.log.debug(f'Load model: type=FLite repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={load_args}')\n\n    from pipelines import f_lite\n    diffusers.FLitePipeline = f_lite.FLitePipeline\n    sys.modules['f_lite'] = f_lite\n\n    dit_model = generic.load_transformer(repo_id, cls_name=f_lite.DiT, load_config=diffusers_load_config, subfolder=\"dit_model\")\n    text_encoder = generic.load_text_encoder(repo_id, cls_name=transformers.T5EncoderModel, load_config=diffusers_load_config, subfolder=\"text_encoder\")\n\n    pipe = f_lite.FLitePipeline.from_pretrained(\n        \"Freepik/F-Lite\", # pr only exists on main repo\n        revision=\"refs/pr/8\",\n        dit_model=dit_model,\n        text_encoder=text_encoder,\n        trust_remote_code=True,\n        cache_dir=shared.opts.diffusers_dir,\n        **load_args,\n    )\n\n    del text_encoder\n    del dit_model\n    sd_hijack_te.init_hijack(pipe)\n\n    devices.torch_gc()\n    return pipe\n"
  },
  {
    "path": "pipelines/model_flux.py",
    "content": "import os\nimport diffusers\nimport transformers\nfrom modules import shared, devices, sd_models, model_quant, sd_hijack_te\nfrom pipelines import generic\n\n\ndef load_flux(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info, force=True)\n\n    if 'Fill' in repo_id:\n        cls_name = diffusers.FluxFillPipeline\n    elif 'Canny' in repo_id:\n        cls_name = diffusers.FluxControlPipeline\n    elif 'Depth' in repo_id:\n        cls_name = diffusers.FluxControlPipeline\n    elif 'Kontext' in repo_id:\n        cls_name = diffusers.FluxKontextPipeline\n        diffusers.pipelines.auto_pipeline.AUTO_TEXT2IMAGE_PIPELINES_MAPPING[\"flux1kontext\"] = diffusers.FluxKontextPipeline\n        diffusers.pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING[\"flux1kontext\"] = diffusers.FluxKontextPipeline\n        diffusers.pipelines.auto_pipeline.AUTO_INPAINT_PIPELINES_MAPPING[\"flux1kontext\"] = diffusers.FluxKontextInpaintPipeline\n    else:\n        cls_name = diffusers.FluxPipeline\n\n    from pipelines.flux import flux_lora\n    flux_lora.apply_patch()\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config, allow_quant=False)\n    shared.log.debug(f'Load model: type=Flux repo=\"{repo_id}\" cls={cls_name.__name__} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={load_args}')\n\n    # optional teacache patch\n    if shared.opts.teacache_enabled and not model_quant.check_nunchaku('Model'):\n        from modules import teacache\n        shared.log.debug(f'Transformers cache: type=teacache patch=forward cls={diffusers.FluxTransformer2DModel.__name__}')\n        diffusers.FluxTransformer2DModel.forward = teacache.teacache_flux_forward # patch must be done before transformer is loaded\n\n    transformer = None\n    text_encoder_2 = None\n\n    # handle prequantized models\n    prequantized = model_quant.get_quant(checkpoint_info.path)\n    if prequantized == 'nf4':\n        from pipelines.flux.flux_nf4 import load_flux_nf4\n        transformer, text_encoder_2 = load_flux_nf4(checkpoint_info)\n    elif prequantized == 'qint8' or prequantized == 'qint4':\n        from pipelines.flux.flux_quanto import load_flux_quanto\n        transformer, text_encoder_2 = load_flux_quanto(checkpoint_info)\n    elif prequantized == 'fp4' or prequantized == 'fp8':\n        from pipelines.flux.flux_bnb import load_flux_bnb\n        transformer = load_flux_bnb(checkpoint_info, diffusers_load_config)\n\n    # handle transformer svdquant if available, t5 is handled inside load_text_encoder\n    if transformer is None and model_quant.check_nunchaku('Model'):\n        from pipelines.flux.flux_nunchaku import load_flux_nunchaku\n        transformer = load_flux_nunchaku(repo_id)\n\n    # finally load transformer and text encoder if not already loaded\n    if transformer is None:\n        transformer = generic.load_transformer(repo_id, cls_name=diffusers.FluxTransformer2DModel, load_config=diffusers_load_config)\n    if text_encoder_2 is None:\n        text_encoder_2 = generic.load_text_encoder(repo_id, cls_name=transformers.T5EncoderModel, load_config=diffusers_load_config)\n\n    pipe = cls_name.from_pretrained(\n        repo_id,\n        transformer=transformer,\n        text_encoder_2=text_encoder_2,\n        cache_dir=shared.opts.diffusers_dir,\n        **load_args,\n    )\n\n    if os.environ.get('SD_REMOTE_T5', None) is not None:\n        from modules import sd_te_remote\n        shared.log.warning('Remote-TE: applying patch')\n        pipe._get_t5_prompt_embeds = sd_te_remote.get_t5_prompt_embeds # pylint: disable=protected-access\n        pipe.text_encoder_2 = None\n\n    del text_encoder_2\n    del transformer\n\n    # optional first-block patch\n    if shared.opts.teacache_enabled and model_quant.check_nunchaku('Model'):\n        from nunchaku.caching.diffusers_adapters import apply_cache_on_pipe\n        apply_cache_on_pipe(pipe, residual_diff_threshold=0.12)\n\n    sd_hijack_te.init_hijack(pipe)\n\n    devices.torch_gc(force=True, reason='load')\n    return pipe\n"
  },
  {
    "path": "pipelines/model_flux2.py",
    "content": "import transformers\nimport diffusers\nfrom modules import shared, devices, sd_models, model_quant, sd_hijack_te, sd_hijack_vae\nfrom pipelines import generic\n\n\ndef load_flux2(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config, allow_quant=False)\n    shared.log.debug(f'Load model: type=Flux2 repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={load_args}')\n\n    transformer = generic.load_transformer(repo_id, cls_name=diffusers.Flux2Transformer2DModel, load_config=diffusers_load_config)\n    text_encoder = generic.load_text_encoder(repo_id, cls_name=transformers.Mistral3ForConditionalGeneration, load_config=diffusers_load_config)\n\n    pipe = diffusers.Flux2Pipeline.from_pretrained(\n        repo_id,\n        transformer=transformer,\n        text_encoder=text_encoder,\n        cache_dir=shared.opts.diffusers_dir,\n        **load_args,\n    )\n    pipe.task_args = {\n        'output_type': 'np',\n    }\n    diffusers.pipelines.auto_pipeline.AUTO_TEXT2IMAGE_PIPELINES_MAPPING[\"flux2\"] = diffusers.Flux2Pipeline\n    diffusers.pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING[\"flux2\"] = diffusers.Flux2Pipeline\n    diffusers.pipelines.auto_pipeline.AUTO_INPAINT_PIPELINES_MAPPING[\"flux2\"] = diffusers.Flux2Pipeline\n\n    del text_encoder\n    del transformer\n    sd_hijack_te.init_hijack(pipe)\n    sd_hijack_vae.init_hijack(pipe)\n\n    devices.torch_gc(force=True, reason='load')\n    return pipe\n"
  },
  {
    "path": "pipelines/model_flux2_klein.py",
    "content": "import transformers\nimport diffusers\nfrom modules import shared, devices, sd_models, model_quant, sd_hijack_te, sd_hijack_vae\nfrom pipelines import generic\n\n\ndef load_flux2_klein(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config, allow_quant=False)\n    shared.log.debug(f'Load model: type=Flux2Klein repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={load_args}')\n\n    # Load transformer - Klein uses Flux2Transformer2DModel (same class as Flux2, different size)\n    transformer = generic.load_transformer(repo_id, cls_name=diffusers.Flux2Transformer2DModel, load_config=diffusers_load_config)\n\n    # Load text encoder - Klein uses Qwen3 (4B for Klein-4B, 8B for Klein-9B)\n    text_encoder = generic.load_text_encoder(repo_id, cls_name=transformers.Qwen3ForCausalLM, load_config=diffusers_load_config)\n\n    pipe = diffusers.Flux2KleinPipeline.from_pretrained(\n        repo_id,\n        transformer=transformer,\n        text_encoder=text_encoder,\n        cache_dir=shared.opts.diffusers_dir,\n        **load_args,\n    )\n    pipe.task_args = {\n        'output_type': 'np',\n    }\n    diffusers.pipelines.auto_pipeline.AUTO_TEXT2IMAGE_PIPELINES_MAPPING[\"flux2klein\"] = diffusers.Flux2KleinPipeline\n    diffusers.pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING[\"flux2klein\"] = diffusers.Flux2KleinPipeline\n    diffusers.pipelines.auto_pipeline.AUTO_INPAINT_PIPELINES_MAPPING[\"flux2klein\"] = diffusers.Flux2KleinPipeline\n\n    del text_encoder\n    del transformer\n    sd_hijack_te.init_hijack(pipe)\n    sd_hijack_vae.init_hijack(pipe)\n\n    devices.torch_gc(force=True, reason='load')\n    return pipe\n"
  },
  {
    "path": "pipelines/model_glm.py",
    "content": "import time\nimport rich.progress as rp\nimport transformers\nimport diffusers\nfrom modules import shared, devices, sd_models, model_quant, sd_hijack_te\nfrom pipelines import generic\n\n\nclass GLMTokenProgressProcessor(transformers.LogitsProcessor):\n    \"\"\"LogitsProcessor that tracks autoregressive token generation progress for GLM-Image.\"\"\"\n\n    def __init__(self):\n        self.total_tokens = 0\n        self.current_step = 0\n        self.task_id = None\n        self.pbar = None\n        self.pbar_task = None\n        self.start_time = 0\n\n    def set_total(self, total_tokens: int):\n        self.total_tokens = total_tokens\n        self.current_step = 0\n\n    def __call__(self, input_ids, scores):\n        if self.current_step == 0:\n            self.task_id = shared.state.begin('AR Generation')\n            self.start_time = time.time()\n            self.pbar = rp.Progress(\n                rp.TextColumn('[cyan]AR Generation'),\n                rp.TextColumn('{task.fields[speed]}'),\n                rp.BarColumn(bar_width=40, complete_style='#327fba', finished_style='#327fba'),\n                rp.TaskProgressColumn(),\n                rp.MofNCompleteColumn(),\n                rp.TimeElapsedColumn(),\n                rp.TimeRemainingColumn(),\n                console=shared.console,\n            )\n            self.pbar.start()\n            self.pbar_task = self.pbar.add_task(description='', total=self.total_tokens, speed='')\n        self.current_step += 1\n        shared.state.sampling_step = self.current_step\n        shared.state.sampling_steps = self.total_tokens\n        if self.pbar is not None and self.pbar_task is not None:\n            elapsed = time.time() - self.start_time\n            speed = f'{self.current_step / elapsed:.2f}tok/s' if elapsed > 0 else ''\n            self.pbar.update(self.pbar_task, completed=self.current_step, speed=speed)\n        if self.current_step >= self.total_tokens:\n            if self.pbar is not None:\n                self.pbar.stop()\n                self.pbar = None\n            if self.task_id is not None:\n                shared.state.end(self.task_id)\n                self.task_id = None\n        return scores\n\n\ndef hijack_vision_language_generate(pipe):\n    \"\"\"Wrap vision_language_encoder.generate to add progress tracking.\"\"\"\n    if not hasattr(pipe, 'vision_language_encoder') or pipe.vision_language_encoder is None:\n        return\n\n    original_generate = pipe.vision_language_encoder.generate\n    progress_processor = GLMTokenProgressProcessor()\n\n    def wrapped_generate(*args, **kwargs):\n        # Get max_new_tokens to determine total tokens\n        max_new_tokens = kwargs.get('max_new_tokens', 0)\n        progress_processor.set_total(max_new_tokens)\n\n        # Add progress processor to logits_processor list\n        existing_processors = kwargs.get('logits_processor', None)\n        if existing_processors is None:\n            existing_processors = []\n        elif not isinstance(existing_processors, list):\n            existing_processors = list(existing_processors)\n        kwargs['logits_processor'] = existing_processors + [progress_processor]\n\n        return original_generate(*args, **kwargs)\n\n    pipe.vision_language_encoder.generate = wrapped_generate\n\n\ndef load_glm_image(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    if not hasattr(transformers, 'GlmImageForConditionalGeneration'):\n        shared.log.error(f'Load model: type=GLM-Image repo=\"{repo_id}\" transformers={transformers.__version__} not supported')\n        return None\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config, allow_quant=False)\n    shared.log.debug(f'Load model: type=GLM-Image repo=\"{repo_id}\" offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={load_args}')\n\n    # Load transformer (DiT decoder - 7B) with quantization support\n    transformer = generic.load_transformer(\n        repo_id,\n        cls_name=diffusers.GlmImageTransformer2DModel,\n        load_config=diffusers_load_config\n    )\n\n    # Load text encoder (ByT5 for glyph) - cannot use shared T5 as GLM-Image requires specific ByT5 encoder (1472 hidden size)\n    text_encoder = generic.load_text_encoder(\n        repo_id,\n        cls_name=transformers.T5EncoderModel,\n        load_config=diffusers_load_config,\n        allow_shared=False\n    )\n\n    # Load vision-language encoder (AR model - 9B)\n    # Note: This is a conditional generation model, different from typical text encoders\n    vision_language_encoder = generic.load_text_encoder(\n        repo_id,\n        cls_name=transformers.GlmImageForConditionalGeneration, # pylint: disable=no-member\n        subfolder=\"vision_language_encoder\",\n        load_config=diffusers_load_config,\n        allow_shared=False\n    )\n\n    pipe = diffusers.GlmImagePipeline.from_pretrained(\n        repo_id,\n        cache_dir=shared.opts.diffusers_dir,\n        transformer=transformer,\n        text_encoder=text_encoder,\n        vision_language_encoder=vision_language_encoder,\n        **load_args,\n    )\n\n    pipe.task_args = {\n        'output_type': 'np',\n        'generate_kwargs': {\n            'eos_token_id': None,  # Disable EOS early stopping to ensure all required tokens are generated\n        },\n    }\n\n    del transformer, text_encoder, vision_language_encoder\n    sd_hijack_te.init_hijack(pipe)\n    hijack_vision_language_generate(pipe)  # Add progress tracking for AR token generation\n    devices.torch_gc(force=True, reason='load')\n    return pipe\n"
  },
  {
    "path": "pipelines/model_google.py",
    "content": "import io\nimport os\nimport time\nfrom PIL import Image\nfrom installer import install, reload, log\n\n\nimage_size_buckets = {\n    '1K': 1024*1024,\n    '2K': 2048*1024,\n    '4K': 4096*1024,\n}\naspect_ratios_buckets = {\n    '1:1': 1/1,\n    '2:3': 2/3,\n    '3:2': 3/2,\n    '4:3': 4/3,\n    '3:4': 3/4,\n    '4:5': 4/5,\n    '5:4': 5/4,\n    '16:9': 16/9,\n    '9:16': 9/16,\n    '21:9': 21/9,\n    '9:21': 9/21,\n}\n\n\ndef google_requirements():\n    install('google-genai==1.52.0')\n    install('pydantic==2.11.7', ignore=True, quiet=True)\n    reload('pydantic', '2.11.7')\n\n\ndef get_size_buckets(width: int, height: int) -> str:\n    aspect_ratio = width / height\n    closest_aspect_ratio = min(aspect_ratios_buckets.items(), key=lambda x: abs(x[1] - aspect_ratio))[0]\n    pixel_count = width * height\n    closest_size = min(image_size_buckets.items(), key=lambda x: abs(x[1] - pixel_count))[0]\n    closest_aspect_ratio = min(aspect_ratios_buckets.items(), key=lambda x: abs(x[1] - aspect_ratio))[0]\n    return closest_size, closest_aspect_ratio\n\n\nclass GoogleNanoBananaPipeline():\n    def __init__(self, model_name: str):\n        self.model = model_name\n        self.client = None\n        self.config = None\n        google_requirements()\n        log.debug(f'Load model: type=NanoBanana model=\"{model_name}\"')\n\n    def txt2img(self, prompt):\n        return self.client.models.generate_content(\n            model=self.model,\n            config=self.config,\n            contents=prompt,\n        )\n\n    def img2img(self, prompt, image):\n        from google import genai\n        image_bytes = io.BytesIO()\n        image.save(image_bytes, format='JPEG')\n        return self.client.models.generate_content(\n            model=self.model,\n            config=self.config,\n            contents=[\n                genai.types.Part.from_bytes(data=image_bytes.getvalue(), mime_type='image/jpeg'),\n                prompt,\n            ],\n        )\n\n    def get_args(self):\n        from modules.shared import opts\n        # Use UI settings only - env vars are intentionally ignored\n        api_key = opts.google_api_key\n        project_id = opts.google_project_id\n        location_id = opts.google_location_id\n        use_vertexai = opts.google_use_vertexai\n\n        has_api_key = api_key and len(api_key) > 0\n        has_project = project_id and len(project_id) > 0\n        has_location = location_id and len(location_id) > 0\n\n        if use_vertexai:\n            if has_api_key and (has_project or has_location):\n                # Invalid: can't have both api_key AND project/location\n                log.error(f'Cloud: model=\"{self.model}\" API key and project/location are mutually exclusive')\n                return None\n            elif has_api_key:\n                # Vertex AI Express Mode: api_key + vertexai, no project/location\n                args = {'api_key': api_key, 'vertexai': True}\n            elif has_project and has_location:\n                # Standard Vertex AI: project/location, no api_key\n                args = {'vertexai': True, 'project': project_id, 'location': location_id}\n            else:\n                log.error(f'Cloud: model=\"{self.model}\" Vertex AI requires either API key (Express Mode) or project ID + location ID')\n                return None\n        else:\n            # Gemini Developer API: api_key only\n            if not has_api_key:\n                log.error(f'Cloud: model=\"{self.model}\" API key not provided')\n                return None\n            args = {'api_key': api_key}\n\n        # Debug logging\n        args_log = args.copy()\n        if args_log.get('api_key'):\n            args_log['api_key'] = '...' + args_log['api_key'][-4:]\n        log.debug(f'Cloud: model=\"{self.model}\" args={args_log}')\n        return args\n\n    def __call__(self, prompt: list[str], width: int, height: int, image: Image.Image = None):\n        from google import genai\n        if self.client is None:\n            args = self.get_args()\n            if args is None:\n                return None\n            self.client = genai.Client(**args)\n\n        image_size, aspect_ratio = get_size_buckets(width, height)\n        if 'gemini-3' in self.model:\n            image_config=genai.types.ImageConfig(aspect_ratio=aspect_ratio, image_size=image_size)\n        else:\n            image_config=genai.types.ImageConfig(aspect_ratio=aspect_ratio)\n        self.config=genai.types.GenerateContentConfig(\n            response_modalities=[\"IMAGE\"],\n            image_config=image_config\n        )\n        log.debug(f'Cloud: model=\"{self.model}\" prompt=\"{prompt}\" size={image_size} ar={aspect_ratio} image={image}')\n        # log.debug(f'Cloud: config={self.config}')\n\n        try:\n            t0 = time.time()\n            if image is not None:\n                response = self.img2img(prompt, image)\n            else:\n                response = self.txt2img(prompt)\n            t1 = time.time()\n            try:\n                tokens = response.usage_metadata.total_token_count\n            except Exception:\n                tokens = 0\n            log.debug(f'Cloud: model=\"{self.model}\" tokens={tokens} time={(t1 - t0):.2f}')\n        except Exception as e:\n            log.error(f'Cloud: model=\"{self.model}\" {e}')\n            return None\n\n        image = None\n        if getattr(response, 'prompt_feedback', None) is not None:\n            log.error(f'Cloud: model=\"{self.model}\" {response.prompt_feedback}')\n\n        parts = []\n        try:\n            for candidate in response.candidates:\n                parts.extend(candidate.content.parts)\n        except Exception:\n            log.error(f'Cloud: model=\"{self.model}\" no images received')\n            return None\n\n        for part in parts:\n            if part.inline_data is not None:\n                image = Image.open(io.BytesIO(part.inline_data.data))\n        return image\n\n\ndef load_nanobanana(checkpoint_info, diffusers_load_config): # pylint: disable=unused-argument\n    pipe = GoogleNanoBananaPipeline(model_name = checkpoint_info.filename)\n    return pipe\n\n\nif __name__ == \"__main__\":\n    import sys\n    sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), '..')))\n    log.info('test')\n    model = GoogleNanoBananaPipeline('gemini-3-pro-image-preview')\n    img = model(['A beautiful landscape with mountains and a river'], 1024, 1024)\n    img.save('test.png')\n"
  },
  {
    "path": "pipelines/model_hdm.py",
    "content": "import sys\nimport torch\nimport diffusers\nfrom modules import shared, devices, sd_models, errors\n\n\ndef load_hdm(checkpoint_info, diffusers_load_config=None): # pylint: disable=unused-argument\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    try:\n        devices.dtype = torch.float16\n        diffusers_load_config['torch_dtype'] = torch.float16\n        torch.set_float32_matmul_precision(\"high\")\n        from pipelines.hdm import hdm\n        sys.modules['hdm'] = hdm\n        from pipelines.hdm.hdm.pipeline import HDMXUTPipeline\n        diffusers.HDMXUTPipeline = HDMXUTPipeline\n        pipe = diffusers.HDMXUTPipeline.from_pretrained(\n            repo_id,\n            cache_dir=shared.opts.diffusers_dir,\n            trust_remote_code=True,\n            **diffusers_load_config,\n        ).to(devices.device)\n    except Exception as e:\n        shared.log.error(f'Load HDM-XUT: path=\"{checkpoint_info.path}\" {e}')\n        errors.display(e, 'hdm')\n        return None\n\n    devices.torch_gc(force=True, reason='load')\n    return pipe\n"
  },
  {
    "path": "pipelines/model_hidream.py",
    "content": "import transformers\nimport diffusers\nfrom modules import shared, devices, sd_models, model_quant, sd_hijack_te, sd_hijack_vae\nfrom pipelines import generic\n\n\ndef load_llama(diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    load_args, quant_args = model_quant.get_dit_args(diffusers_load_config, module='TE', device_map=True)\n    llama_repo = shared.opts.model_h1_llama_repo if shared.opts.model_h1_llama_repo != 'Default' else 'meta-llama/Meta-Llama-3.1-8B-Instruct'\n    shared.log.debug(f'Load model: type=HiDream te4=\"{llama_repo}\" quant=\"{model_quant.get_quant_type(quant_args)}\" args={load_args}')\n    sd_models.hf_auth_check(llama_repo)\n\n    text_encoder_4 = transformers.LlamaForCausalLM.from_pretrained(\n        llama_repo,\n        output_hidden_states=True,\n        output_attentions=True,\n        cache_dir=shared.opts.hfcache_dir,\n        **load_args,\n        **quant_args,\n    )\n    tokenizer_4 = transformers.PreTrainedTokenizerFast.from_pretrained(\n        llama_repo,\n        cache_dir=shared.opts.hfcache_dir,\n        **load_args,\n    )\n    if shared.opts.diffusers_offload_mode != 'none' and text_encoder_4 is not None:\n        sd_models.move_model(text_encoder_4, devices.cpu)\n    return text_encoder_4, tokenizer_4\n\n\ndef load_hidream(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config, allow_quant=False)\n    shared.log.debug(f'Load model: type=HiDream repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={load_args}')\n\n    transformer = generic.load_transformer(repo_id, cls_name=diffusers.HiDreamImageTransformer2DModel, load_config=diffusers_load_config, subfolder=\"transformer\")\n    text_encoder_3 = generic.load_text_encoder(repo_id, cls_name=transformers.T5EncoderModel, load_config=diffusers_load_config, subfolder=\"text_encoder_3\")\n    text_encoder_4, tokenizer_4 = load_llama(diffusers_load_config)\n\n    if shared.opts.teacache_enabled:\n        from modules import teacache\n        shared.log.debug(f'Transformers cache: type=teacache patch=forward cls={diffusers.HiDreamImageTransformer2DModel.__name__}')\n        diffusers.HiDreamImageTransformer2DModel.forward = teacache.teacache_hidream_forward # patch must be done before transformer is loaded\n\n    if 'I1' in repo_id:\n        cls = diffusers.HiDreamImagePipeline\n    elif 'E1' in repo_id:\n        from pipelines.hidream.pipeline_hidream_image_editing import HiDreamImageEditingPipeline\n        cls = HiDreamImageEditingPipeline\n        diffusers.pipelines.auto_pipeline.AUTO_TEXT2IMAGE_PIPELINES_MAPPING[\"hidream-e1\"] = diffusers.HiDreamImagePipeline\n        diffusers.pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING[\"hidream-e1\"] = HiDreamImageEditingPipeline\n        diffusers.pipelines.auto_pipeline.AUTO_INPAINT_PIPELINES_MAPPING[\"hidream-e1\"] = HiDreamImageEditingPipeline\n        if transformer and 'E1-1' in repo_id:\n            transformer.max_seq = 8192\n        elif transformer and 'E1' in repo_id:\n            transformer.max_seq = 4608\n    else:\n        shared.log.error(f'Load model: type=HiDream model=\"{checkpoint_info.name}\" repo=\"{repo_id}\" not recognized')\n        return False\n\n    pipe = cls.from_pretrained(\n        repo_id,\n        transformer=transformer,\n        text_encoder_3=text_encoder_3,\n        text_encoder_4=text_encoder_4,\n        tokenizer_4=tokenizer_4,\n        cache_dir=shared.opts.diffusers_dir,\n        **load_args,\n    )\n\n    del text_encoder_3\n    del text_encoder_4\n    del tokenizer_4\n    del transformer\n    sd_hijack_te.init_hijack(pipe)\n    sd_hijack_vae.init_hijack(pipe)\n\n    devices.torch_gc()\n    return pipe\n"
  },
  {
    "path": "pipelines/model_hunyuandit.py",
    "content": "import transformers\nimport diffusers\nfrom modules import shared, sd_models, devices, model_quant\nfrom pipelines import generic\n\n\ndef load_hunyuandit(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    # import torch # override for hunyuandit\n    # devices.dtype = torch.float16\n    # devices.dtype_vae = torch.float16\n    # devices.dtype_unet = torch.float16\n    # diffusers_load_config['torch_dtype'] = devices.dtype\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config)\n    shared.log.debug(f'Load model: type=HunyuanDiT repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={load_args}')\n\n    transformer = generic.load_transformer(repo_id, cls_name=diffusers.HunyuanDiT2DModel, load_config=diffusers_load_config)\n    repo_te = 'Tencent-Hunyuan/HunyuanDiT-v1.2-Diffusers' if 'HunyuanDiT-v1' in repo_id else repo_id\n    text_encoder_2 = generic.load_text_encoder(repo_te, cls_name=transformers.T5EncoderModel, load_config=diffusers_load_config, subfolder=\"text_encoder_2\", allow_shared=False) # this is not normal t5\n\n    pipe = diffusers.HunyuanDiTPipeline.from_pretrained(\n        repo_id,\n        transformer=transformer,\n        text_encoder_2=text_encoder_2,\n        safety_checker=None,\n        feature_extractor=None,\n        cache_dir=shared.opts.diffusers_dir,\n        **load_args,\n    )\n\n    del text_encoder_2\n    del transformer\n    # sd_hijack_te.init_hijack(pipe)\n\n    devices.torch_gc(force=True, reason='load')\n    return pipe\n"
  },
  {
    "path": "pipelines/model_hyimage.py",
    "content": "from types import SimpleNamespace\nimport torch\nimport transformers\nimport diffusers\nfrom modules import shared, sd_models, devices, model_quant, sd_hijack_te, sd_hijack_vae\nfrom pipelines import generic\n\n\ndef load_hyimage(checkpoint_info, diffusers_load_config=None): # pylint: disable=unused-argument\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config)\n    shared.log.debug(f'Load model: type=HunyuanImage21 repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={load_args}')\n\n    transformer = generic.load_transformer(repo_id, cls_name=diffusers.HunyuanImageTransformer2DModel, load_config=diffusers_load_config, subfolder=\"transformer\")\n    text_encoder = generic.load_text_encoder(repo_id, cls_name=transformers.Qwen2_5_VLForConditionalGeneration, load_config=diffusers_load_config, subfolder=\"text_encoder\")\n    text_encoder_2 = generic.load_text_encoder(repo_id, cls_name=transformers.T5EncoderModel, load_config=diffusers_load_config, subfolder=\"text_encoder_2\", allow_shared=False)\n\n    pipe = diffusers.HunyuanImagePipeline.from_pretrained(\n        repo_id,\n        transformer=transformer,\n        text_encoder=text_encoder,\n        text_encoder_2=text_encoder_2,\n        cache_dir=shared.opts.diffusers_dir,\n        **load_args,\n    )\n    pipe.task_args = {\n        'output_type': 'np',\n    }\n\n    del transformer\n    del text_encoder\n    del text_encoder_2\n    sd_hijack_te.init_hijack(pipe)\n    sd_hijack_vae.init_hijack(pipe)\n\n    devices.torch_gc(force=True, reason='load')\n    return pipe\n\n\ndef load_hyimage3(checkpoint_info, diffusers_load_config=None): # pylint: disable=unused-argument\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n    shared.log.debug(f'Load model: type=HunyuanImage3 repo=\"{repo_id}\" offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype}')\n\n    allow_quant = True\n    if 'sdnq-' in repo_id.lower():\n        sd_models.allow_post_quant = False # we already handled it\n        allow_quant = False\n\n    load_args, quant_args = model_quant.get_dit_args(diffusers_load_config, module='Model', device_map=True, allow_quant=allow_quant)\n    pipe = transformers.AutoModelForCausalLM.from_pretrained(\n        repo_id,\n        cache_dir=shared.opts.diffusers_dir,\n        trust_remote_code=True,\n        attn_implementation=\"sdpa\",\n        moe_impl=\"eager\",\n        **load_args,\n        **quant_args,\n    )\n    pipe.load_tokenizer(repo_id)\n\n    pipe.pipeline # noqa: B018 # call it to set up pipeline # pylint: disable=pointless-statement\n    pipe = HunyuanImage3Wrapper(pipe)\n\n    devices.torch_gc(force=True, reason='load')\n    return pipe\n\n\nclass HunyuanImage3Wrapper(torch.nn.Module):\n    def __init__(self, model):\n        super().__init__()\n        self.model = model\n\n    def __call__(\n        self,\n        prompt: str,\n        height: int = None,\n        width: int = None,\n        num_inference_steps: int = 50,\n        num_images_per_prompt: int = 1,\n        guidance_scale: float = 7.5,\n        guidance_rescale: float = 0.0,\n        callback_on_step_end = None,\n        callback_on_step_end_tensor_inputs = [\"latents\"],\n        **kwargs,\n    ):\n        if hasattr(self.model._pipeline.model, \"_hf_hook\"):\n            self.model._pipeline.model._hf_hook.execution_device = torch.device(devices.device)\n\n        if num_inference_steps > 1:\n            if isinstance(prompt, str):\n                prompt = [prompt]\n            prompt = prompt * num_images_per_prompt\n\n        if height is None and width is None:\n            image_size = \"auto\"\n        if height is None:\n            image_size = (width, width)\n        if width is None:\n            image_size = (height, height)\n        else:\n            image_size = (height, width)\n\n        output = self.model.generate_image(\n            prompt,\n            image_size=image_size,\n            diff_infer_steps=num_inference_steps,\n            guidance_scale=guidance_scale,\n            guidance_rescale=guidance_rescale,\n            callback_on_step_end=callback_on_step_end,\n            callback_on_step_end_tensor_inputs=callback_on_step_end_tensor_inputs,\n            **kwargs,\n        )\n\n        if not isinstance(output, list):\n            output = [output]\n        return SimpleNamespace(images=output)\n"
  },
  {
    "path": "pipelines/model_kandinsky.py",
    "content": "import transformers\nimport diffusers\nfrom modules import shared, sd_models, devices, model_quant, sd_hijack_te, sd_hijack_vae\nfrom pipelines import generic\n\n\ndef load_kandinsky21(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config)\n    shared.log.debug(f'Load model: type=Kandinsky21 repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={load_args}')\n    pipe = diffusers.KandinskyCombinedPipeline.from_pretrained(\n        repo_id,\n        cache_dir=shared.opts.diffusers_dir,\n        **load_args,\n    )\n    sd_hijack_te.init_hijack(pipe)\n    devices.torch_gc(force=True, reason='load')\n    return pipe\n\n\ndef load_kandinsky22(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config)\n    shared.log.debug(f'Load model: type=Kandinsky22 repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={load_args}')\n    pipe = diffusers.KandinskyV22CombinedPipeline.from_pretrained(\n        repo_id,\n        cache_dir=shared.opts.diffusers_dir,\n        **load_args,\n    )\n    sd_hijack_te.init_hijack(pipe)\n    devices.torch_gc(force=True, reason='load')\n    return pipe\n\n\ndef load_kandinsky3(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config)\n    shared.log.debug(f'Load model: type=Kandinsky30 repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={load_args}')\n\n    unet = generic.load_transformer(repo_id, cls_name=diffusers.Kandinsky3UNet, load_config=diffusers_load_config, subfolder=\"unet\", variant=\"fp16\")\n    text_encoder = generic.load_text_encoder(repo_id, cls_name=transformers.T5EncoderModel, load_config=diffusers_load_config, subfolder=\"text_encoder\", variant=\"fp16\", allow_shared=False)\n\n    pipe = diffusers.Kandinsky3Pipeline.from_pretrained(\n        repo_id,\n        unet=unet,\n        text_encoder=text_encoder,\n        variant=\"fp16\",\n        cache_dir=shared.opts.diffusers_dir,\n        **load_args,\n    )\n    pipe.task_args = {\n        'output_type': 'np',\n    }\n\n    del text_encoder\n    del unet\n    sd_hijack_te.init_hijack(pipe)\n    sd_hijack_vae.init_hijack(pipe)\n\n    devices.torch_gc(force=True, reason='load')\n    return pipe\n\n\ndef load_kandinsky5(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config)\n    shared.log.debug(f'Load model: type=Kandinsky50 repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={load_args}')\n\n    transformer = generic.load_transformer(repo_id, cls_name=diffusers.Kandinsky5Transformer3DModel, load_config=diffusers_load_config)\n    text_encoder = generic.load_text_encoder(repo_id, cls_name=transformers.Qwen2_5_VLForConditionalGeneration, load_config=diffusers_load_config)\n\n    if 'I2I' in repo_id:\n        cls = diffusers.Kandinsky5I2IPipeline\n    else:\n        cls = diffusers.Kandinsky5T2IPipeline\n\n    pipe = cls.from_pretrained(\n        repo_id,\n        transformer=transformer,\n        text_encoder=text_encoder,\n        cache_dir=shared.opts.diffusers_dir,\n        **load_args,\n    )\n    pipe.task_args = {\n        'output_type': 'np',\n    }\n\n    del text_encoder\n    del transformer\n    sd_hijack_te.init_hijack(pipe)\n    sd_hijack_vae.init_hijack(pipe)\n\n    devices.torch_gc(force=True, reason='load')\n    return pipe\n"
  },
  {
    "path": "pipelines/model_kolors.py",
    "content": "import torch\nimport diffusers\nfrom modules import shared, devices, sd_models, sd_hijack_te\n\n\ndef load_kolors(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    diffusers_load_config['variant'] = \"fp16\"\n    if 'torch_dtype' not in diffusers_load_config:\n        diffusers_load_config['torch_dtype'] = torch.float16\n\n    shared.log.debug(f'Load model: type=Kolors repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={diffusers_load_config}')\n    pipe = diffusers.KolorsPipeline.from_pretrained(\n        repo_id,\n        cache_dir = shared.opts.diffusers_dir,\n        **diffusers_load_config,\n    )\n    pipe.vae.config.force_upcast = True\n\n    sd_hijack_te.init_hijack(pipe)\n\n    devices.torch_gc(force=True, reason='load')\n    return pipe\n"
  },
  {
    "path": "pipelines/model_longcat.py",
    "content": "import transformers\nimport diffusers\nfrom modules import shared, devices, sd_models, model_quant, sd_hijack_te\nfrom pipelines import generic\n\n\ndef load_longcat(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config, allow_quant=False)\n    shared.log.debug(f'Load model: type=LongCat repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={diffusers_load_config}')\n\n    transformer = generic.load_transformer(repo_id, cls_name=diffusers.LongCatImageTransformer2DModel, load_config=diffusers_load_config)\n    text_encoder = generic.load_text_encoder(repo_id, cls_name=transformers.Qwen2_5_VLForConditionalGeneration, load_config=diffusers_load_config)\n    text_processor = transformers.Qwen2VLProcessor.from_pretrained(repo_id, subfolder='tokenizer', cache_dir=shared.opts.hfcache_dir)\n\n    if 'edit' in repo_id.lower():\n        cls = diffusers.LongCatImageEditPipeline\n    else:\n        cls = diffusers.LongCatImagePipeline\n\n    pipe = cls.from_pretrained(\n        repo_id,\n        cache_dir=shared.opts.diffusers_dir,\n        transformer=transformer,\n        text_encoder=text_encoder,\n        text_processor=text_processor,\n        **load_args,\n    )\n    diffusers.pipelines.auto_pipeline.AUTO_TEXT2IMAGE_PIPELINES_MAPPING[\"longcat\"] = cls\n    diffusers.pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING[\"longcat\"] = cls\n    diffusers.pipelines.auto_pipeline.AUTO_INPAINT_PIPELINES_MAPPING[\"longcat\"] = cls\n\n    del transformer\n    del text_encoder\n    del text_processor\n    sd_hijack_te.init_hijack(pipe)\n\n    devices.torch_gc(force=True, reason='load')\n    return pipe\n"
  },
  {
    "path": "pipelines/model_lumina.py",
    "content": "import transformers\nimport diffusers\nfrom modules import shared, sd_models, sd_hijack_te, devices, model_quant\nfrom pipelines import generic\n\n\ndef load_lumina(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    load_config, _quant_config = model_quant.get_dit_args(diffusers_load_config, allow_quant=False)\n    shared.log.debug(f'Load model: type=LuminaSFT repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={diffusers_load_config}')\n    pipe = diffusers.LuminaText2ImgPipeline.from_pretrained(\n        'Alpha-VLLM/Lumina-Next-SFT-diffusers',\n        cache_dir = shared.opts.diffusers_dir,\n        **load_config,\n    )\n    sd_hijack_te.init_hijack(pipe)\n    devices.torch_gc(force=True, reason='load')\n    return pipe\n\n\ndef load_lumina2(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    if shared.opts.teacache_enabled:\n        from modules import teacache\n        shared.log.debug(f'Transformers cache: type=teacache patch=forward cls={diffusers.Lumina2Transformer2DModel.__name__}')\n        diffusers.Lumina2Transformer2DModel.forward = teacache.teacache_lumina2_forward # patch must be done before transformer is loaded\n\n    shared.log.debug(f'Load model: type=Lumina2 repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={diffusers_load_config}')\n    transformer = generic.load_transformer(repo_id, cls_name=diffusers.Lumina2Transformer2DModel, load_config=diffusers_load_config)\n    text_encoder = generic.load_text_encoder(repo_id, cls_name=transformers.Gemma2Model, load_config=diffusers_load_config)\n\n    load_config, _quant_args = model_quant.get_dit_args(diffusers_load_config, allow_quant=False)\n    pipe = diffusers.Lumina2Pipeline.from_pretrained(\n        repo_id,\n        cache_dir=shared.opts.diffusers_dir,\n        text_encoder=text_encoder,\n        transformer=transformer,\n        **load_config,\n    )\n\n    del transformer\n    del text_encoder\n    sd_hijack_te.init_hijack(pipe)\n\n    devices.torch_gc(force=True, reason='load')\n    return pipe\n"
  },
  {
    "path": "pipelines/model_meissonic.py",
    "content": "import transformers\nimport diffusers\nfrom modules import shared, devices, sd_models, shared_items, sd_hijack_te\n\n\ndef load_meissonic(checkpoint_info, diffusers_load_config=None):\n    from pipelines.meissonic.transformer import Transformer2DModel as TransformerMeissonic\n    from pipelines.meissonic.scheduler import Scheduler as MeissonicScheduler\n    from pipelines.meissonic.pipeline import MeissonicPipeline\n    from pipelines.meissonic.pipeline_img2img import MeissonicImg2ImgPipeline\n    from pipelines.meissonic.pipeline_inpaint import MeissonicInpaintPipeline\n    shared_items.pipelines['Meissonic'] = MeissonicPipeline\n\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    diffusers_load_config['variant'] = 'fp16'\n    diffusers_load_config['trust_remote_code'] = True\n\n    shared.log.debug(f'Load model: type=Meissonic repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={diffusers_load_config}')\n    model = TransformerMeissonic.from_pretrained(\n        repo_id,\n        subfolder=\"transformer\",\n        cache_dir=shared.opts.diffusers_dir,\n        **diffusers_load_config,\n    )\n    vqvae = diffusers.VQModel.from_pretrained(\n        repo_id,\n        subfolder=\"vqvae\",\n        cache_dir=shared.opts.diffusers_dir,\n        **diffusers_load_config,\n    )\n    text_encoder = transformers.CLIPTextModelWithProjection.from_pretrained(\n        repo_id,\n        subfolder=\"text_encoder\",\n        cache_dir=shared.opts.diffusers_dir,\n    )\n    tokenizer = transformers.CLIPTokenizer.from_pretrained(\n        repo_id,\n        subfolder=\"tokenizer\",\n        cache_dir=shared.opts.diffusers_dir,\n    )\n    scheduler = MeissonicScheduler.from_pretrained(\n        repo_id,\n        subfolder=\"scheduler\",\n        cache_dir=shared.opts.diffusers_dir,\n    )\n    pipe = MeissonicPipeline(\n            vqvae=vqvae.to(devices.dtype),\n            text_encoder=text_encoder.to(devices.dtype),\n            transformer=model.to(devices.dtype),\n            tokenizer=tokenizer,\n            scheduler=scheduler,\n    )\n\n    diffusers.pipelines.auto_pipeline.AUTO_TEXT2IMAGE_PIPELINES_MAPPING[\"meissonic\"] = MeissonicPipeline\n    diffusers.pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING[\"meissonic\"] = MeissonicImg2ImgPipeline\n    diffusers.pipelines.auto_pipeline.AUTO_INPAINT_PIPELINES_MAPPING[\"meissonic\"] = MeissonicInpaintPipeline\n    sd_hijack_te.init_hijack(pipe)\n\n    devices.torch_gc(force=True, reason='load')\n    return pipe\n"
  },
  {
    "path": "pipelines/model_nextstep.py",
    "content": "# import transformers\nfrom modules import shared, devices, sd_models, model_quant # pylint: disable=unused-import\nfrom pipelines import generic # pylint: disable=unused-import\n\n\ndef load_nextstep(checkpoint_info, diffusers_load_config=None): # pylint: disable=unused-argument\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    shared.log.error(f'Load model: type=NextStep model=\"{checkpoint_info.name}\" repo=\"{repo_id}\" not supported')\n\n    \"\"\"\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config, module='Model')\n    shared.log.debug(f'Load model: type=NextStep model=\"{checkpoint_info.name}\" repo=\"{repo_id}\" offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={load_args}')\n\n    from pipelines.nextstep import NextStepPipeline, NextStep\n\n    def __call__(self,\n                 prompt = None,\n                 image = None,\n                 height = 1024,\n                 width = 1024,\n                 num_inference_steps: int = 20,\n                 guidance_scale: float = 1.0,\n                 generator = None,\n                ):\n        return self.generate_image(self,\n                                   captions = prompt,\n                                   images = [image] if image is not None else None,\n                                   num_images_per_caption = 1,\n                                   positive_prompt = None,\n                                   negative_prompt = None,\n                                   hw = (height, width),\n                                   use_norm = False,\n                                   cfg = guidance_scale,\n                                   cfg_img = 1.0,\n                                   cfg_schedule = \"constant\", # \"linear\", \"constant\"\n                                   num_sampling_steps = num_inference_steps,\n                                   timesteps_shift = 1.0,\n                                   seed = generator.initial_seed(),\n                                   progress = True,\n                                  )\n\n    NextStepPipeline.__call__ = __call__\n\n    # tokenizer = transformers.AutoTokenizer.from_pretrained(HF_HUB, local_files_only=True, trust_remote_code=True)\n    model = generic.load_transformer(repo_id, cls_name=NextStep, load_config=diffusers_load_config)\n    pipe = NextStepPipeline(\n        repo_id,\n        model=model,\n        cache_dir=shared.opts.diffusers_dir,\n        **load_args,\n    )\n\n    from modules.video_models import video_vae\n    pipe.vae.orig_decode = pipe.vae.decode\n    pipe.vae.decode = video_vae.hijack_vae_decode\n\n    devices.torch_gc()\n    return pipe\n    \"\"\"\n\n    return None\n"
  },
  {
    "path": "pipelines/model_omnigen.py",
    "content": "import diffusers\nfrom modules import shared, devices, sd_models, model_quant, sd_hijack_te\n\n\ndef load_omnigen(checkpoint_info, diffusers_load_config=None): # pylint: disable=unused-argument\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    load_config, quant_config = model_quant.get_dit_args(diffusers_load_config, module='Model')\n    shared.log.debug(f'Load model: type=OmniGen repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={diffusers_load_config}')\n    transformer = diffusers.OmniGenTransformer2DModel.from_pretrained(\n        repo_id,\n        subfolder=\"transformer\",\n        cache_dir=shared.opts.diffusers_dir,\n        **load_config,\n        **quant_config,\n    )\n\n    load_config, quant_config = model_quant.get_dit_args(diffusers_load_config, allow_quant=False)\n    pipe = diffusers.OmniGenPipeline.from_pretrained(\n        repo_id,\n        transformer=transformer,\n        cache_dir=shared.opts.diffusers_dir,\n        **load_config,\n    )\n\n    sd_hijack_te.init_hijack(pipe)\n\n    devices.torch_gc(force=True, reason='load')\n    return pipe\n\n\ndef load_omnigen2(checkpoint_info, diffusers_load_config=None): # pylint: disable=unused-argument\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    from pipelines.omnigen2 import OmniGen2Pipeline, OmniGen2Transformer2DModel, Qwen2_5_VLForConditionalGeneration\n    diffusers.OmniGen2Pipeline = OmniGen2Pipeline # monkey-pathch\n    diffusers.pipelines.auto_pipeline.AUTO_TEXT2IMAGE_PIPELINES_MAPPING[\"omnigen2\"] = diffusers.OmniGen2Pipeline\n    diffusers.pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING[\"omnigen2\"] = diffusers.OmniGen2Pipeline\n    diffusers.pipelines.auto_pipeline.AUTO_INPAINT_PIPELINES_MAPPING[\"omnigen2\"] = diffusers.OmniGen2Pipeline\n\n    load_config, quant_config = model_quant.get_dit_args(diffusers_load_config, module='Model')\n    shared.log.debug(f'Load model: type=OmniGen2 repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={diffusers_load_config}')\n    transformer = OmniGen2Transformer2DModel.from_pretrained(\n        repo_id,\n        subfolder=\"transformer\",\n        cache_dir=shared.opts.diffusers_dir,\n        trust_remote_code=True,\n        **load_config,\n        **quant_config,\n    )\n\n    load_config, quant_config = model_quant.get_dit_args(diffusers_load_config, module='TE')\n    mllm = Qwen2_5_VLForConditionalGeneration.from_pretrained(\n        repo_id,\n        subfolder=\"mllm\",\n        cache_dir=shared.opts.diffusers_dir,\n        trust_remote_code=True,\n        **load_config,\n        **quant_config,\n    )\n\n    pipe = OmniGen2Pipeline.from_pretrained(\n        repo_id,\n        # transformer=transformer,\n        mllm=mllm,\n        cache_dir=shared.opts.diffusers_dir,\n        trust_remote_code=True,\n        **load_config,\n    )\n    pipe.transformer = transformer # for omnigen2 transformer must be loaded after pipeline\n\n    sd_hijack_te.init_hijack(pipe)\n\n    devices.torch_gc(force=True, reason='load')\n    return pipe\n"
  },
  {
    "path": "pipelines/model_ovis.py",
    "content": "import transformers\nimport diffusers\nfrom modules import shared, devices, sd_models, model_quant, sd_hijack_te\nfrom pipelines import generic\n\n\ndef load_ovis(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config, allow_quant=False)\n    shared.log.debug(f'Load model: type=OvisImage repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={diffusers_load_config}')\n\n    transformer = generic.load_transformer(repo_id, cls_name=diffusers.OvisImageTransformer2DModel, load_config=diffusers_load_config)\n    text_encoder = generic.load_text_encoder(repo_id, cls_name=transformers.Qwen3Model, load_config=diffusers_load_config)\n\n    pipe = diffusers.OvisImagePipeline.from_pretrained(\n        repo_id,\n        cache_dir=shared.opts.diffusers_dir,\n        transformer=transformer,\n        text_encoder=text_encoder,\n        **load_args,\n    )\n\n    pipe.task_args = {\n        'output_type': 'np',\n    }\n\n    del transformer\n    del text_encoder\n    sd_hijack_te.init_hijack(pipe)\n\n    devices.torch_gc(force=True, reason='load')\n    return pipe\n"
  },
  {
    "path": "pipelines/model_pixart.py",
    "content": "import transformers\nimport diffusers\nfrom huggingface_hub import file_exists\nfrom modules import shared, devices, sd_models, model_quant, sd_hijack_te\nfrom pipelines import generic\n\n\ndef load_pixart(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    repo_id_tenc = repo_id\n    repo_id_pipe = repo_id\n\n    # PixArt-alpha/PixArt-Sigma-XL-2-2K-MS only holds transformer\n    if not file_exists(repo_id_tenc, \"text_encoder/config.json\"):\n        repo_id_tenc = \"PixArt-alpha/PixArt-Sigma-XL-2-1024-MS\"\n    if not file_exists(repo_id_pipe, \"model_index.json\"):\n        repo_id_pipe = \"PixArt-alpha/PixArt-Sigma-XL-2-1024-MS\"\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config, allow_quant=False)\n    shared.log.debug(f'Load model: type=PixArtSigma repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={load_args}')\n\n    transformer = generic.load_transformer(repo_id, cls_name=diffusers.PixArtTransformer2DModel, load_config=diffusers_load_config)\n    text_encoder = generic.load_text_encoder(repo_id_tenc, cls_name=transformers.T5EncoderModel, load_config=diffusers_load_config)\n\n    pipe = diffusers.PixArtSigmaPipeline.from_pretrained(\n        repo_id_pipe,\n        transformer=transformer,\n        text_encoder=text_encoder,\n        cache_dir=shared.opts.diffusers_dir,\n        **load_args,\n    )\n\n    del text_encoder\n    del transformer\n    sd_hijack_te.init_hijack(pipe)\n\n    devices.torch_gc(force=True, reason='load')\n    return pipe\n"
  },
  {
    "path": "pipelines/model_prx.py",
    "content": "import diffusers\nfrom modules import shared, devices, sd_models, model_quant, sd_hijack_te\nfrom pipelines import generic\n\n\ndef load_prx(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config, allow_quant=False)\n    shared.log.debug(f'Load model: type=PRX repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={load_args}')\n\n    from transformers.models.t5gemma.modeling_t5gemma import T5GemmaEncoder\n    transformer = generic.load_transformer(repo_id, cls_name=diffusers.PRXTransformer2DModel, load_config=diffusers_load_config)\n    text_encoder = generic.load_text_encoder(repo_id, cls_name=T5GemmaEncoder, load_config=diffusers_load_config)\n\n    pipe = diffusers.PRXPipeline.from_pretrained(\n        repo_id,\n        transformer=transformer,\n        text_encoder=text_encoder,\n        cache_dir=shared.opts.diffusers_dir,\n        **load_args,\n    )\n\n    del text_encoder\n    del transformer\n    sd_hijack_te.init_hijack(pipe)\n\n    devices.torch_gc()\n    return pipe\n"
  },
  {
    "path": "pipelines/model_qwen.py",
    "content": "import transformers\nimport diffusers\nfrom modules import shared, devices, sd_models, model_quant, sd_hijack_te, sd_hijack_vae\n\n\ndef load_qwen(checkpoint_info, diffusers_load_config=None):\n    from pipelines import generic, qwen\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    repo_subfolder = checkpoint_info.subfolder\n    sd_models.hf_auth_check(checkpoint_info)\n    transformer = None\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config, module='Model')\n    shared.log.debug(f'Load model: type=Qwen model=\"{checkpoint_info.name}\" repo=\"{repo_id}\" offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={load_args}')\n\n    if '2509' in repo_id or '2511' in repo_id:\n        cls_name = diffusers.QwenImageEditPlusPipeline\n        diffusers.pipelines.auto_pipeline.AUTO_TEXT2IMAGE_PIPELINES_MAPPING[\"qwen-image\"] = diffusers.QwenImageEditPlusPipeline\n        diffusers.pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING[\"qwen-image\"] = diffusers.QwenImageEditPlusPipeline\n        diffusers.pipelines.auto_pipeline.AUTO_INPAINT_PIPELINES_MAPPING[\"qwen-image\"] = diffusers.QwenImageEditPlusPipeline\n    elif 'Edit' in repo_id:\n        cls_name = diffusers.QwenImageEditPipeline\n        diffusers.pipelines.auto_pipeline.AUTO_TEXT2IMAGE_PIPELINES_MAPPING[\"qwen-image\"] = diffusers.QwenImageEditPipeline\n        diffusers.pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING[\"qwen-image\"] = diffusers.QwenImageEditPipeline\n        diffusers.pipelines.auto_pipeline.AUTO_INPAINT_PIPELINES_MAPPING[\"qwen-image\"] = diffusers.QwenImageEditPipeline\n    elif 'Layered' in repo_id:\n        cls_name = diffusers.QwenImageLayeredPipeline\n        diffusers.pipelines.auto_pipeline.AUTO_TEXT2IMAGE_PIPELINES_MAPPING[\"qwen-layered\"] = diffusers.QwenImageLayeredPipeline\n        diffusers.pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING[\"qwen-layered\"] = diffusers.QwenImageLayeredPipeline\n        diffusers.pipelines.auto_pipeline.AUTO_INPAINT_PIPELINES_MAPPING[\"qwen-layered\"] = diffusers.QwenImageLayeredPipeline\n    else: # qwen-image, qwen-image-2512\n        cls_name = diffusers.QwenImagePipeline\n        diffusers.pipelines.auto_pipeline.AUTO_TEXT2IMAGE_PIPELINES_MAPPING[\"qwen-image\"] = diffusers.QwenImagePipeline\n        diffusers.pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING[\"qwen-image\"] = diffusers.QwenImageImg2ImgPipeline\n        diffusers.pipelines.auto_pipeline.AUTO_INPAINT_PIPELINES_MAPPING[\"qwen-image\"] = diffusers.QwenImageInpaintPipeline\n\n    if model_quant.check_nunchaku('Model'):\n        transformer = qwen.load_qwen_nunchaku(repo_id)\n\n    if 'Qwen-Image-Distill-Full' in repo_id:\n        repo_transformer = repo_id\n        transformer_subfolder = None\n        repo_id = 'Qwen/Qwen-Image'\n    else:\n        repo_transformer = repo_id\n        if repo_subfolder is not None:\n            transformer_subfolder = repo_subfolder + '/transformer'\n        else:\n            transformer_subfolder = \"transformer\"\n\n    if transformer is None:\n        transformer = generic.load_transformer(\n            repo_transformer,\n            subfolder=transformer_subfolder,\n            cls_name=diffusers.QwenImageTransformer2DModel,\n            load_config=diffusers_load_config,\n            modules_to_not_convert=[\"transformer_blocks.0.img_mod.1.weight\"],\n        )\n\n    repo_te = 'Qwen/Qwen-Image'\n    text_encoder = generic.load_text_encoder(repo_te, cls_name=transformers.Qwen2_5_VLForConditionalGeneration, load_config=diffusers_load_config)\n\n    repo_id, repo_subfolder = qwen.check_qwen_pruning(repo_id, repo_subfolder)\n    pipe = cls_name.from_pretrained(\n        repo_id,\n        transformer=transformer,\n        text_encoder=text_encoder,\n        subfolder=repo_subfolder,\n        cache_dir=shared.opts.diffusers_dir,\n        **load_args,\n    )\n    pipe.task_args = {\n        'output_type': 'np',\n    }\n    if 'Layered' in repo_id:\n        pipe.task_args['use_en_prompt'] = True\n        pipe.task_args['cfg_normalize'] = False\n        pipe.task_args['layers'] = shared.opts.model_qwen_layers\n        pipe.task_args['resolution'] = 640\n\n    del text_encoder\n    del transformer\n    sd_hijack_te.init_hijack(pipe)\n    sd_hijack_vae.init_hijack(pipe)\n\n    devices.torch_gc()\n    return pipe\n"
  },
  {
    "path": "pipelines/model_sana.py",
    "content": "import torch\nimport diffusers\nimport transformers\nfrom modules import shared, sd_models, sd_hijack_te, devices, model_quant\n\n\ndef load_quants(kwargs, repo_id, cache_dir):\n    kwargs_copy = kwargs.copy()\n    if 'Sana_1600M_1024px' in repo_id and model_quant.check_nunchaku('Model'): # only available model\n        import nunchaku\n        nunchaku_precision = nunchaku.utils.get_precision()\n        nunchaku_repo = \"nunchaku-tech/nunchaku-sana/svdq-int4_r32-sana1.6b.safetensors\"\n        shared.log.debug(f'Load module: quant=Nunchaku module=transformer repo=\"{nunchaku_repo}\" precision={nunchaku_precision} attention={shared.opts.nunchaku_attention}')\n        kwargs['transformer'] = nunchaku.NunchakuSanaTransformer2DModel.from_pretrained(nunchaku_repo, torch_dtype=devices.dtype, cache_dir=cache_dir)\n    elif model_quant.check_quant('Model'):\n        load_args, quant_args = model_quant.get_dit_args(kwargs_copy, module='Model')\n        kwargs['transformer'] = diffusers.SanaTransformer2DModel.from_pretrained(repo_id, subfolder=\"transformer\", cache_dir=cache_dir, **load_args, **quant_args)\n    if model_quant.check_quant('TE'):\n        load_args, quant_args = model_quant.get_dit_args(kwargs_copy, module='TE')\n        kwargs['text_encoder'] = transformers.AutoModel.from_pretrained(repo_id, subfolder=\"text_encoder\", cache_dir=cache_dir, **load_args, **quant_args)\n    return kwargs\n\n\ndef load_sana(checkpoint_info, kwargs=None):\n    if kwargs is None:\n        kwargs = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    kwargs.pop('load_connected_pipeline', None)\n    kwargs.pop('safety_checker', None)\n    kwargs.pop('requires_safety_checker', None)\n    kwargs.pop('torch_dtype', None)\n\n    # set variant since hf repos are a mess\n    if not repo_id.endswith('_diffusers'):\n        repo_id = f'{repo_id}_diffusers'\n    if 'Sana_1600M' in repo_id:\n        if devices.dtype == torch.bfloat16 or 'BF16' in repo_id:\n            if 'BF16' not in repo_id:\n                repo_id = repo_id.replace('_diffusers', '_BF16_diffusers')\n            kwargs['variant'] = 'bf16'\n            kwargs['torch_dtype'] = devices.dtype\n        else:\n            kwargs['variant'] = 'fp16'\n    if 'Sana_600M' in repo_id:\n        kwargs['variant'] = 'fp16'\n\n    kwargs = load_quants(kwargs, repo_id, cache_dir=shared.opts.diffusers_dir)\n    shared.log.debug(f'Load model: type=Sana repo=\"{repo_id}\" args={list(kwargs)}')\n\n    if devices.dtype == torch.bfloat16 or devices.dtype == torch.float32:\n        kwargs['torch_dtype'] = devices.dtype\n    if 'Sprint' in repo_id:\n        cls = diffusers.SanaSprintPipeline\n    else:\n        cls = diffusers.SanaPipeline\n    pipe = cls.from_pretrained(\n        repo_id,\n        cache_dir=shared.opts.diffusers_dir,\n        **kwargs,\n    )\n\n    # only cast if not quant-loaded\n    try:\n        if devices.dtype == torch.bfloat16 or devices.dtype == torch.float32:\n            if 'transformer' not in kwargs:\n                pipe.transformer = pipe.transformer.to(dtype=devices.dtype)\n            if 'text_encoder' not in kwargs:\n                pipe.text_encoder = pipe.text_encoder.to(dtype=devices.dtype)\n            pipe.vae = pipe.vae.to(dtype=devices.dtype)\n        if devices.dtype == torch.float16:\n            if 'transformer' not in kwargs:\n                pipe.transformer = pipe.transformer.to(dtype=devices.dtype)\n            if 'text_encoder' not in kwargs:\n                pipe.text_encoder = pipe.text_encoder.to(dtype=torch.float32) # gemma2 does not support fp16\n            pipe.vae = pipe.vae.to(dtype=torch.float32) # dc-ae often overflows in fp16\n    except Exception as e:\n        shared.log.error(f'Load model: type=Sana {e}')\n\n    sd_hijack_te.init_hijack(pipe)\n\n    devices.torch_gc(force=True, reason='load')\n    return pipe\n"
  },
  {
    "path": "pipelines/model_sd3.py",
    "content": "import diffusers\nimport transformers\nfrom modules import shared, devices, sd_models, model_quant, sd_hijack_te\nfrom pipelines import generic\n\n\ndef load_sd3(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config, allow_quant=False)\n    shared.log.debug(f'Load model: type=SD3 repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={load_args}')\n\n    transformer = generic.load_transformer(repo_id, cls_name=diffusers.SD3Transformer2DModel, load_config=diffusers_load_config)\n    # text_encoder = generic.load_text_encoder(repo_id, cls_name=transformers.CLIPTextModelWithProjection, load_config=diffusers_load_config, subfolder=\"text_encoder\")\n    # text_encoder_2 = generic.load_text_encoder(repo_id, cls_name=transformers.CLIPTextModelWithProjection, load_config=diffusers_load_config, subfolder=\"text_encoder_2\")\n    if shared.opts.model_sd3_disable_te5:\n        text_encoder_3 = None\n    else:\n        text_encoder_3 = generic.load_text_encoder(repo_id, cls_name=transformers.T5EncoderModel, load_config=diffusers_load_config, subfolder=\"text_encoder_3\")\n\n    pipe = diffusers.StableDiffusion3Pipeline.from_pretrained(\n        repo_id,\n        transformer=transformer,\n        # text_encoder=text_encoder,\n        # text_encoder_2=text_encoder_2,\n        text_encoder_3=text_encoder_3,\n        cache_dir=shared.opts.diffusers_dir,\n        **load_args,\n    )\n\n    del text_encoder_3\n    del transformer\n    sd_hijack_te.init_hijack(pipe)\n\n    devices.torch_gc(force=True, reason='load')\n    return pipe\n"
  },
  {
    "path": "pipelines/model_stablecascade.py",
    "content": "import os\nimport torch\nimport diffusers\nfrom modules import shared, devices, sd_models\n\n\ndef get_timestep_ratio_conditioning(t, alphas_cumprod):\n    s = torch.tensor([0.008])\n    clamp_range = [0, 1]\n    min_var = torch.cos(s / (1 + s) * torch.pi * 0.5) ** 2\n    var = alphas_cumprod[t]\n    var = var.clamp(*clamp_range)\n    s, min_var = s.to(var.device), min_var.to(var.device)\n    ratio = (((var * min_var) ** 0.5).acos() / (torch.pi * 0.5)) * (1 + s) - s\n    return ratio\n\n\ndef load_text_encoder(path):\n    from transformers import CLIPTextConfig, CLIPTextModelWithProjection\n    from accelerate.utils.modeling import set_module_tensor_to_device\n    from accelerate import init_empty_weights\n    from safetensors.torch import load_file\n\n    try:\n        config = CLIPTextConfig(\n            architectures=[\"CLIPTextModelWithProjection\"],\n            attention_dropout=0.0,\n            bos_token_id=49406,\n            dropout=0.0,\n            eos_token_id=49407,\n            hidden_act=\"gelu\",\n            hidden_size=1280,\n            initializer_factor=1.0,\n            initializer_range=0.02,\n            intermediate_size=5120,\n            layer_norm_eps=1e-05,\n            max_position_embeddings=77,\n            model_type=\"clip_text_model\",\n            num_attention_heads=20,\n            num_hidden_layers=32,\n            pad_token_id=1,\n            projection_dim=1280,\n            vocab_size=49408\n        )\n\n        shared.log.info(f'Load Text Encoder: name=\"{os.path.basename(os.path.splitext(path)[0])}\" file=\"{path}\"')\n\n        with init_empty_weights():\n            text_encoder = CLIPTextModelWithProjection(config)\n\n        state_dict = load_file(path)\n\n        for key in list(state_dict.keys()):\n            set_module_tensor_to_device(text_encoder, key, devices.device, value=state_dict.pop(key), dtype=devices.dtype)\n\n        return text_encoder\n\n    except Exception as e:\n        text_encoder = None\n        shared.log.error(f'Failed to load Text Encoder model: {e}')\n        return None\n\n\ndef load_prior(path, config_file=\"default\"):\n    from diffusers.models.unets import StableCascadeUNet\n    prior_text_encoder = None\n\n    if config_file == \"default\":\n        config_file = os.path.splitext(path)[0] + '.json'\n    if not os.path.exists(config_file):\n        if round(os.path.getsize(path) / 1024 / 1024 / 1024) < 5: # diffusers fails to find the configs from huggingface\n            config_file = \"configs/stable-cascade/prior_lite/config.json\"\n        else:\n            config_file = \"configs/stable-cascade/prior/config.json\"\n\n    shared.log.info(f'Load UNet: name=\"{os.path.basename(os.path.splitext(path)[0])}\" file=\"{path}\" config=\"{config_file}\"')\n    prior_unet = StableCascadeUNet.from_single_file(path, config=config_file, torch_dtype=devices.dtype_unet, cache_dir=shared.opts.diffusers_dir)\n\n    if os.path.isfile(os.path.splitext(path)[0] + \"_text_encoder.safetensors\"): # OneTrainer\n        prior_text_encoder = load_text_encoder(os.path.splitext(path)[0] + \"_text_encoder.safetensors\")\n    elif os.path.isfile(os.path.splitext(path)[0] + \"_text_model.safetensors\"): # KohyaSS\n        prior_text_encoder = load_text_encoder(os.path.splitext(path)[0] + \"_text_model.safetensors\")\n\n    return prior_unet, prior_text_encoder\n\n\ndef load_cascade_combined(checkpoint_info, diffusers_load_config=None):\n    from diffusers import StableCascadeDecoderPipeline, StableCascadePriorPipeline, StableCascadeCombinedPipeline\n    from diffusers.models.unets import StableCascadeUNet\n    from modules.sd_unet import unet_dict\n\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n\n    diffusers_load_config.pop(\"vae\", None)\n    if 'cascade' in checkpoint_info.name.lower():\n        diffusers_load_config[\"variant\"] = 'bf16'\n\n    if shared.opts.sd_unet != \"Default\" or 'stabilityai' in checkpoint_info.name.lower():\n        if 'cascade' in checkpoint_info.name and ('lite' in checkpoint_info.name or (checkpoint_info.hash is not None and 'abc818bb0d' in checkpoint_info.hash)):\n            decoder_folder = 'decoder_lite'\n            prior_folder = 'prior_lite'\n        else:\n            decoder_folder = 'decoder'\n            prior_folder = 'prior'\n        if 'cascade' in checkpoint_info.name.lower():\n            decoder_unet = StableCascadeUNet.from_pretrained(\"stabilityai/stable-cascade\", subfolder=decoder_folder, cache_dir=shared.opts.diffusers_dir, **diffusers_load_config)\n            decoder = StableCascadeDecoderPipeline.from_pretrained(\"stabilityai/stable-cascade\", cache_dir=shared.opts.diffusers_dir, decoder=decoder_unet, text_encoder=None, **diffusers_load_config)\n        else:\n            decoder = StableCascadeDecoderPipeline.from_pretrained(checkpoint_info.path, cache_dir=shared.opts.diffusers_dir, text_encoder=None, **diffusers_load_config)\n        # shared.log.debug(f'StableCascade {decoder_folder}: scale={decoder.latent_dim_scale}')\n        prior_text_encoder = None\n        if shared.opts.sd_unet != \"Default\":\n            prior_unet, prior_text_encoder = load_prior(unet_dict[shared.opts.sd_unet])\n        else:\n            prior_unet = StableCascadeUNet.from_pretrained(\"stabilityai/stable-cascade-prior\", subfolder=prior_folder, cache_dir=shared.opts.diffusers_dir, **diffusers_load_config)\n        if prior_text_encoder is not None:\n            prior = StableCascadePriorPipeline.from_pretrained(\"stabilityai/stable-cascade-prior\", cache_dir=shared.opts.diffusers_dir, prior=prior_unet, text_encoder=prior_text_encoder, image_encoder=None, feature_extractor=None, **diffusers_load_config)\n        else:\n            prior = StableCascadePriorPipeline.from_pretrained(\"stabilityai/stable-cascade-prior\", cache_dir=shared.opts.diffusers_dir, prior=prior_unet, image_encoder=None, feature_extractor=None, **diffusers_load_config)\n        # shared.log.debug(f'StableCascade {prior_folder}: scale={prior.resolution_multiple}')\n        sd_model = StableCascadeCombinedPipeline(\n            tokenizer=decoder.tokenizer,\n            text_encoder=None,\n            decoder=decoder.decoder,\n            scheduler=decoder.scheduler,\n            vqgan=decoder.vqgan,\n            prior_prior=prior.prior,\n            prior_text_encoder=prior.text_encoder,\n            prior_tokenizer=prior.tokenizer,\n            prior_scheduler=prior.scheduler,\n            prior_feature_extractor=None,\n            prior_image_encoder=None)\n    else:\n        sd_model = StableCascadeCombinedPipeline.from_pretrained(checkpoint_info.path, cache_dir=shared.opts.diffusers_dir, **diffusers_load_config)\n\n    sd_model.prior_pipe.scheduler.config.clip_sample = False\n    sd_model.decoder_pipe.text_encoder = sd_model.text_encoder = None  # Nothing uses the decoder's text encoder\n    sd_model.prior_pipe.image_encoder = sd_model.prior_image_encoder = None # No img2img is implemented yet\n    sd_model.prior_pipe.feature_extractor = sd_model.prior_feature_extractor = None # No img2img is implemented yet\n\n    #de-dupe\n    del sd_model.decoder_pipe.text_encoder\n    del sd_model.prior_prior\n    del sd_model.prior_text_encoder\n    del sd_model.prior_tokenizer\n    del sd_model.prior_scheduler\n    del sd_model.prior_feature_extractor\n    del sd_model.prior_image_encoder\n\n    # Custom sampler support\n    sd_model.decoder_pipe = StableCascadeDecoderPipelineFixed(\n        decoder=sd_model.decoder_pipe.decoder,\n        tokenizer=sd_model.decoder_pipe.tokenizer,\n        scheduler=sd_model.decoder_pipe.scheduler,\n        vqgan=sd_model.decoder_pipe.vqgan,\n        text_encoder=None,\n        latent_dim_scale=sd_model.decoder_pipe.config.latent_dim_scale,\n    )\n\n    devices.torch_gc(force=True, reason='load')\n    shared.log.debug(f'StableCascade combined: {sd_model.__class__.__name__}')\n    return sd_model\n\n\n# Balanced offload hooks:\nclass StableCascadeDecoderPipelineFixed(diffusers.StableCascadeDecoderPipeline):\n    def guidance_scale(self): # pylint: disable=invalid-overridden-method\n        return self._guidance_scale\n\n    def do_classifier_free_guidance(self): # pylint: disable=invalid-overridden-method\n        return self._guidance_scale > 1\n\n    @torch.no_grad()\n    def __call__(\n        self,\n        image_embeddings,\n        prompt=None,\n        num_inference_steps=10,\n        guidance_scale=0.0,\n        negative_prompt=None,\n        prompt_embeds=None,\n        prompt_embeds_pooled=None,\n        negative_prompt_embeds=None,\n        negative_prompt_embeds_pooled=None,\n        num_images_per_prompt=1,\n        generator=None,\n        latents=None,\n        output_type=\"pil\",\n        return_dict=True,\n        callback_on_step_end=None,\n        callback_on_step_end_tensor_inputs=[\"latents\"],\n    ):\n        shared.sd_model = sd_models.apply_balanced_offload(shared.sd_model)\n        # 0. Define commonly used variables\n        guidance_scale = guidance_scale or 0.0\n        self.guidance_scale = guidance_scale\n        self.do_classifier_free_guidance = self.guidance_scale > 1\n        device = self._execution_device\n        dtype = self.decoder.dtype\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            negative_prompt=negative_prompt,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            callback_on_step_end_tensor_inputs=callback_on_step_end_tensor_inputs,\n        )\n        if isinstance(image_embeddings, list):\n            image_embeddings = torch.cat(image_embeddings, dim=0)\n\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        # Compute the effective number of images per prompt\n        # We must account for the fact that the image embeddings from the prior can be generated with num_images_per_prompt > 1\n        # This results in a case where a single prompt is associated with multiple image embeddings\n        # Divide the number of image embeddings by the batch size to determine if this is the case.\n        num_images_per_prompt = num_images_per_prompt * (image_embeddings.shape[0] // batch_size)\n\n        # 2. Encode caption\n        if prompt_embeds is None and negative_prompt_embeds is None:\n            _, prompt_embeds_pooled, _, negative_prompt_embeds_pooled = self.encode_prompt(\n                prompt=prompt,\n                device=device,\n                batch_size=batch_size,\n                num_images_per_prompt=num_images_per_prompt,\n                do_classifier_free_guidance=self.do_classifier_free_guidance,\n                negative_prompt=negative_prompt,\n                prompt_embeds=prompt_embeds,\n                prompt_embeds_pooled=prompt_embeds_pooled,\n                negative_prompt_embeds=negative_prompt_embeds,\n                negative_prompt_embeds_pooled=negative_prompt_embeds_pooled,\n            )\n\n        # The pooled embeds from the prior are pooled again before being passed to the decoder\n        prompt_embeds_pooled = (\n            torch.cat([prompt_embeds_pooled, negative_prompt_embeds_pooled])\n            if self.do_classifier_free_guidance\n            else prompt_embeds_pooled\n        )\n        effnet = (\n            torch.cat([image_embeddings, torch.zeros_like(image_embeddings)])\n            if self.do_classifier_free_guidance\n            else image_embeddings\n        )\n\n        self.scheduler.set_timesteps(num_inference_steps, device=device)\n        timesteps = self.scheduler.timesteps\n\n        # 5. Prepare latents\n        latents = self.prepare_latents(\n            batch_size, image_embeddings, num_images_per_prompt, dtype, device, generator, latents, self.scheduler\n        )\n\n        if isinstance(self.scheduler, diffusers.DDPMWuerstchenScheduler):\n            timesteps = timesteps[:-1]\n        else:\n            if hasattr(self.scheduler.config, \"clip_sample\") and self.scheduler.config.clip_sample: # pylint: disable=no-member\n                self.scheduler.config.clip_sample = False  # disample sample clipping\n\n        # 6. Run denoising loop\n        if hasattr(self.scheduler, \"betas\"):\n            alphas = 1.0 - self.scheduler.betas\n            alphas_cumprod = torch.cumprod(alphas, dim=0)\n        else:\n            alphas_cumprod = []\n\n        self._num_timesteps = len(timesteps) # pylint: disable=attribute-defined-outside-init\n        for i, t in enumerate(self.progress_bar(timesteps)):\n            if not isinstance(self.scheduler, diffusers.DDPMWuerstchenScheduler):\n                if len(alphas_cumprod) > 0:\n                    timestep_ratio = get_timestep_ratio_conditioning(t.long().cpu(), alphas_cumprod)\n                    timestep_ratio = timestep_ratio.expand(latents.size(0)).to(dtype).to(device)\n                else:\n                    timestep_ratio = t.float().div(self.scheduler.timesteps[-1]).expand(latents.size(0)).to(dtype)\n            else:\n                timestep_ratio = t.expand(latents.size(0)).to(dtype)\n\n            # 7. Denoise latents\n            predicted_latents = self.decoder(\n                sample=torch.cat([latents] * 2) if self.do_classifier_free_guidance else latents,\n                timestep_ratio=torch.cat([timestep_ratio] * 2) if self.do_classifier_free_guidance else timestep_ratio,\n                clip_text_pooled=prompt_embeds_pooled,\n                effnet=effnet,\n                return_dict=False,\n            )[0]\n\n            # 8. Check for classifier free guidance and apply it\n            if self.do_classifier_free_guidance:\n                predicted_latents_text, predicted_latents_uncond = predicted_latents.chunk(2)\n                predicted_latents = torch.lerp(predicted_latents_uncond, predicted_latents_text, self.guidance_scale)\n\n            # 9. Renoise latents to next timestep\n            if not isinstance(self.scheduler, diffusers.DDPMWuerstchenScheduler):\n                timestep_ratio = t\n            latents = self.scheduler.step(\n                model_output=predicted_latents,\n                timestep=timestep_ratio,\n                sample=latents,\n                generator=generator,\n            ).prev_sample\n\n            if callback_on_step_end is not None:\n                callback_kwargs = {}\n                for k in callback_on_step_end_tensor_inputs:\n                    callback_kwargs[k] = locals()[k]\n                callback_outputs = callback_on_step_end(self, i, t, callback_kwargs)\n\n                latents = callback_outputs.pop(\"latents\", latents)\n                prompt_embeds = callback_outputs.pop(\"prompt_embeds\", prompt_embeds)\n                negative_prompt_embeds = callback_outputs.pop(\"negative_prompt_embeds\", negative_prompt_embeds)\n\n        if output_type not in [\"pt\", \"np\", \"pil\", \"latent\"]:\n            raise ValueError(\n                f\"Only the output types `pt`, `np`, `pil` and `latent` are supported not output_type={output_type}\"\n            )\n\n        if output_type != \"latent\":\n            if shared.opts.diffusers_offload_mode == \"balanced\":\n                shared.sd_model = sd_models.apply_balanced_offload(shared.sd_model)\n            else:\n                self.maybe_free_model_hooks()\n            # 10. Scale and decode the image latents with vq-vae\n            latents = self.vqgan.config.scale_factor * latents\n            images = self.vqgan.decode(latents).sample.clamp(0, 1)\n            if output_type == \"np\":\n                images = images.permute(0, 2, 3, 1).cpu().float().numpy()  # float() as bfloat16-> numpy doesnt work\n            elif output_type == \"pil\":\n                images = images.permute(0, 2, 3, 1).cpu().float().numpy()  # float() as bfloat16-> numpy doesnt work\n                images = self.numpy_to_pil(images)\n            shared.sd_model = sd_models.apply_balanced_offload(shared.sd_model)\n        else:\n            images = latents\n\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return images\n        return diffusers.ImagePipelineOutput(images)\n"
  },
  {
    "path": "pipelines/model_wanai.py",
    "content": "import os\nimport transformers\nimport diffusers\nfrom modules import shared, devices, sd_models, model_quant, sd_hijack_te, sd_hijack_vae\n\n\ndef load_transformer(repo_id, diffusers_load_config=None, subfolder='transformer'):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    load_args, quant_args = model_quant.get_dit_args(diffusers_load_config, module='Model', device_map=True)\n    fn = None\n\n    if 'VACE' in repo_id:\n        transformer_cls = diffusers.WanVACETransformer3DModel\n    else:\n        transformer_cls = diffusers.WanTransformer3DModel\n\n    if shared.opts.sd_unet is not None and shared.opts.sd_unet != 'Default':\n        from modules import sd_unet\n        if shared.opts.sd_unet not in list(sd_unet.unet_dict):\n            shared.log.error(f'Load module: type=Transformer not found: {shared.opts.sd_unet}')\n            return None\n        fn = sd_unet.unet_dict[shared.opts.sd_unet] if os.path.exists(sd_unet.unet_dict[shared.opts.sd_unet]) else None\n\n    if fn is not None and 'gguf' in fn.lower():\n        shared.log.error('Load model: type=WanAI format=\"gguf\" unsupported')\n        transformer = None\n    elif fn is not None and 'safetensors' in fn.lower():\n        shared.log.debug(f'Load model: type=WanAI {subfolder}=\"{fn}\" quant=\"{model_quant.get_quant(repo_id)}\" args={load_args}')\n        transformer = transformer_cls.from_single_file(\n            fn,\n            cache_dir=shared.opts.hfcache_dir,\n            **load_args,\n            **quant_args,\n        )\n    else:\n        shared.log.debug(f'Load model: type=WanAI {subfolder}=\"{repo_id}\" quant=\"{model_quant.get_quant_type(quant_args)}\" args={load_args}')\n        transformer = transformer_cls.from_pretrained(\n            repo_id,\n            subfolder=subfolder,\n            cache_dir=shared.opts.hfcache_dir,\n            **load_args,\n            **quant_args,\n        )\n    if shared.opts.diffusers_offload_mode != 'none' and transformer is not None:\n        sd_models.move_model(transformer, devices.cpu)\n    return transformer\n\n\ndef load_text_encoder(repo_id, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    load_args, quant_args = model_quant.get_dit_args(diffusers_load_config, module='TE', device_map=True)\n    repo_id = 'Wan-AI/Wan2.1-T2V-1.3B-Diffusers' if 'Wan2.' in repo_id else repo_id # always use shared umt5\n    shared.log.debug(f'Load model: type=WanAI te=\"{repo_id}\" quant=\"{model_quant.get_quant_type(quant_args)}\" args={load_args}')\n    text_encoder = transformers.UMT5EncoderModel.from_pretrained(\n        repo_id,\n        subfolder=\"text_encoder\",\n        cache_dir=shared.opts.hfcache_dir,\n        **load_args,\n        **quant_args,\n    )\n    if shared.opts.diffusers_offload_mode != 'none' and text_encoder is not None:\n        sd_models.move_model(text_encoder, devices.cpu)\n    return text_encoder\n\n\ndef load_wan(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    boundary_ratio = None\n    if 'a14b' in repo_id.lower() or 'fun-14b' in repo_id.lower():\n        if shared.opts.model_wan_stage == 'high noise' or shared.opts.model_wan_stage == 'first':\n            transformer = load_transformer(repo_id, diffusers_load_config, 'transformer')\n            transformer_2 = None\n            boundary_ratio = 0.0\n        elif shared.opts.model_wan_stage == 'low noise' or shared.opts.model_wan_stage == 'second':\n            transformer = None\n            transformer_2 = load_transformer(repo_id, diffusers_load_config, 'transformer_2')\n            boundary_ratio = 1000.0\n        elif shared.opts.model_wan_stage == 'combined' or shared.opts.model_wan_stage == 'both':\n            transformer = load_transformer(repo_id, diffusers_load_config, 'transformer')\n            transformer_2 = load_transformer(repo_id, diffusers_load_config, 'transformer_2')\n            boundary_ratio = shared.opts.model_wan_boundary\n        else:\n            shared.log.error(f'Load model: type=WanAI stage=\"{shared.opts.model_wan_stage}\" unsupported')\n            return None\n    else:\n        transformer = load_transformer(repo_id, diffusers_load_config, 'transformer')\n        transformer_2 = None\n\n    text_encoder = load_text_encoder(repo_id, diffusers_load_config)\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config, module='Model')\n\n    if 'Wan2.2-I2V' in repo_id:\n        pipe_cls = diffusers.WanImageToVideoPipeline\n        diffusers.pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING[\"wanai\"] = diffusers.WanImageToVideoPipeline\n    elif 'Wan2.2-VACE' in repo_id:\n        pipe_cls = diffusers.WanVACEPipeline\n        diffusers.pipelines.auto_pipeline.AUTO_TEXT2IMAGE_PIPELINES_MAPPING[\"wanai\"] = diffusers.WanVACEPipeline\n        diffusers.pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING[\"wanai\"] = diffusers.WanVACEPipeline\n        diffusers.pipelines.auto_pipeline.AUTO_INPAINT_PIPELINES_MAPPING[\"wanai\"] = diffusers.WanVACEPipeline\n    else:\n        from pipelines.wan.wan_image import WanImagePipeline\n        pipe_cls = diffusers.WanPipeline\n        diffusers.pipelines.auto_pipeline.AUTO_TEXT2IMAGE_PIPELINES_MAPPING[\"wanai\"] = diffusers.WanPipeline\n        diffusers.pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING[\"wanai\"] = WanImagePipeline\n    shared.log.debug(f'Load model: type=WanAI model=\"{checkpoint_info.name}\" repo=\"{repo_id}\" cls={pipe_cls.__name__} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={load_args} stage=\"{shared.opts.model_wan_stage}\" boundary={boundary_ratio}')\n    pipe = pipe_cls.from_pretrained(\n        repo_id,\n        transformer=transformer,\n        transformer_2=transformer_2,\n        text_encoder=text_encoder,\n        boundary_ratio=boundary_ratio,\n        cache_dir=shared.opts.diffusers_dir,\n        **load_args,\n    )\n    pipe.task_args = {\n        'num_frames': 1,\n        'output_type': 'np',\n    }\n\n    del text_encoder\n    del transformer\n    del transformer_2\n\n    sd_hijack_te.init_hijack(pipe)\n    sd_hijack_vae.init_hijack(pipe)\n\n    devices.torch_gc()\n    return pipe\n"
  },
  {
    "path": "pipelines/model_xomni.py",
    "content": "import torch\nimport transformers\nimport diffusers\nfrom modules import shared, devices, sd_models, model_quant\n\n\nclass XOmniPipeline(diffusers.DiffusionPipeline):\n    def __init__(\n            self,\n            tokenizer=None,\n            model=None,\n        ):\n        super().__init__()\n        self.tokenizer = tokenizer\n        self.model = model\n        self.register_modules(\n            tokenizer=tokenizer,\n            model=model,\n        )\n\n    def load(\n            self,\n            repo_id,\n            load_config: dict = {},\n        ):\n        from pipelines.xomni import modeling_xomni\n        load_args, quant_args = model_quant.get_dit_args(load_config, module='Model', device_map=True)\n        shared.log.debug(f'Load model: cls=XOmniPipeline module=tokenizer repo_id=\"{repo_id}\"')\n        self.tokenizer = transformers.AutoTokenizer.from_pretrained(\n            repo_id,\n            use_fast=True,\n        )\n        shared.log.debug(f'Load model: cls=XOmniPipeline module=transformer repo_id=\"{repo_id}\" args={load_args}')\n        # self.model = transformers.AutoModelForCausalLM.from_pretrained(\n        self.model = modeling_xomni.XOmniForCausalLM.from_pretrained(\n            repo_id,\n            # trust_remote_code=True,\n            cache_dir=shared.opts.hfcache_dir,\n            **load_args,\n            **quant_args,\n        )\n        flux_repo_id = \"black-forest-labs/FLUX.1-dev\"\n        shared.log.debug(f'Load model: cls=XOmniPipeline module=vision repo_id=\"{flux_repo_id}\"')\n        self.model.init_vision(\n            flux_repo_id,\n            **quant_args,\n        )\n        self.model.set_generation_mode('image')\n\n    def __call__(\n            self,\n            prompt: str = \"\",\n            width: int = 1024,\n            height: int = 1024,\n            seed: int = -1,\n            temperature: float = 1.0,\n            downsample_size: int = 16,\n            min_p: float = 0.03,\n            top_p: float = 1.0,\n            cfg_scale: float = 1.0,\n        ):\n\n        if isinstance(prompt, list):\n            prompt = prompt[0]\n        token_h, token_w = height // downsample_size, width // downsample_size\n        image_prefix = f'<SOM>{token_h} {token_w}<IMAGE>'\n        generation_config = transformers.generation.GenerationConfig(\n            max_new_tokens=token_h * token_w,\n            do_sample=True,\n            temperature=temperature,\n            min_p=min_p,\n            top_p=top_p,\n            guidance_scale=cfg_scale,\n            suppress_tokens=self.tokenizer.convert_tokens_to_ids(self.model.config.mm_special_tokens),\n        )\n\n        # Sample inputs:\n        tokens = self.tokenizer(\n            [prompt + image_prefix],\n            return_tensors='pt',\n            padding='longest',\n            padding_side='left',\n        )\n        input_ids = tokens.input_ids.to(devices.device)\n        attention_mask = tokens.attention_mask.to(devices.device)\n        negative_ids = self.tokenizer.encode(\n            image_prefix,\n            add_special_tokens=False,\n            return_tensors='pt',\n        ).to(devices.device).expand(1, -1)\n\n        torch.manual_seed(seed)\n        tokens = self.model.generate(\n            inputs=input_ids,\n            attention_mask=attention_mask,\n            generation_config=generation_config,\n            negative_prompt_ids=negative_ids,\n        )\n\n        tokens = torch.nn.functional.pad(tokens, (0, 1), value=self.tokenizer.convert_tokens_to_ids('<EOM>'))\n        torch.manual_seed(seed)\n        _, images = self.model.mmdecode(self.tokenizer, tokens[0], skip_special_tokens=False)\n        images[0].save('/tmp/xomni_out.png')\n        return images\n\n\ndef load_xomni(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    pipe = XOmniPipeline()\n    pipe.load(repo_id, load_config=diffusers_load_config)\n    return pipe\n"
  },
  {
    "path": "pipelines/model_z_image.py",
    "content": "import transformers\nimport diffusers\nfrom modules import shared, devices, sd_models, model_quant, sd_hijack_te\nfrom pipelines import generic\n\n\ndef load_nunchaku():\n    import nunchaku\n    nunchaku_precision = nunchaku.utils.get_precision()\n    nunchaku_rank = 128\n    nunchaku_repo = f\"nunchaku-tech/nunchaku-z-image-turbo/svdq-{nunchaku_precision}_r{nunchaku_rank}-z-image-turbo.safetensors\"\n    shared.log.debug(f'Load module: quant=Nunchaku module=transformer repo=\"{nunchaku_repo}\" attention={shared.opts.nunchaku_attention}')\n    transformer = nunchaku.NunchakuZImageTransformer2DModel.from_pretrained(\n        nunchaku_repo,\n        torch_dtype=devices.dtype,\n        cache_dir=shared.opts.hfcache_dir,\n    )\n    return transformer\n\n\ndef load_z_image(checkpoint_info, diffusers_load_config=None):\n    if diffusers_load_config is None:\n        diffusers_load_config = {}\n    repo_id = sd_models.path_to_repo(checkpoint_info)\n    sd_models.hf_auth_check(checkpoint_info)\n\n    load_args, _quant_args = model_quant.get_dit_args(diffusers_load_config, allow_quant=False)\n    shared.log.debug(f'Load model: type=ZImage repo=\"{repo_id}\" config={diffusers_load_config} offload={shared.opts.diffusers_offload_mode} dtype={devices.dtype} args={diffusers_load_config}')\n\n    if model_quant.check_nunchaku('Model'): # only available model\n        transformer = load_nunchaku()\n    else:\n        transformer = generic.load_transformer(repo_id, cls_name=diffusers.ZImageTransformer2DModel, load_config=diffusers_load_config)\n\n    text_encoder = generic.load_text_encoder(repo_id, cls_name=transformers.Qwen3ForCausalLM, load_config=diffusers_load_config)\n\n    pipe = diffusers.ZImagePipeline.from_pretrained(\n        repo_id,\n        cache_dir=shared.opts.diffusers_dir,\n        transformer=transformer,\n        text_encoder=text_encoder,\n        **load_args,\n    )\n\n    del transformer\n    del text_encoder\n    sd_hijack_te.init_hijack(pipe)\n\n    devices.torch_gc(force=True, reason='load')\n    return pipe\n"
  },
  {
    "path": "pipelines/omnigen2/__init__.py",
    "content": "from transformers import Qwen2_5_VLForConditionalGeneration\nfrom .pipeline_omnigen2 import OmniGen2Pipeline\nfrom .models.transformers import OmniGen2Transformer2DModel\n"
  },
  {
    "path": "pipelines/omnigen2/image_processor.py",
    "content": "# Copyright 2024 The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport warnings\nfrom typing import Optional, Tuple, Union\n\nimport numpy as np\nimport PIL.Image\nimport torch\n\nfrom diffusers.image_processor import PipelineImageInput, VaeImageProcessor, is_valid_image_imagelist\nfrom diffusers.configuration_utils import register_to_config\n\nclass OmniGen2ImageProcessor(VaeImageProcessor):\n    \"\"\"\n    Image processor for PixArt image resize and crop.\n\n    Args:\n        do_resize (`bool`, *optional*, defaults to `True`):\n            Whether to downscale the image's (height, width) dimensions to multiples of `vae_scale_factor`. Can accept\n            `height` and `width` arguments from [`image_processor.VaeImageProcessor.preprocess`] method.\n        vae_scale_factor (`int`, *optional*, defaults to `8`):\n            VAE scale factor. If `do_resize` is `True`, the image is automatically resized to multiples of this factor.\n        resample (`str`, *optional*, defaults to `lanczos`):\n            Resampling filter to use when resizing the image.\n        do_normalize (`bool`, *optional*, defaults to `True`):\n            Whether to normalize the image to [-1,1].\n        do_binarize (`bool`, *optional*, defaults to `False`):\n            Whether to binarize the image to 0/1.\n        do_convert_rgb (`bool`, *optional*, defaults to be `False`):\n            Whether to convert the images to RGB format.\n        do_convert_grayscale (`bool`, *optional*, defaults to be `False`):\n            Whether to convert the images to grayscale format.\n    \"\"\"\n\n    @register_to_config\n    def __init__(\n        self,\n        do_resize: bool = True,\n        vae_scale_factor: int = 16,\n        resample: str = \"lanczos\",\n        max_pixels: Optional[int] = None,\n        max_side_length: Optional[int] = None,\n        do_normalize: bool = True,\n        do_binarize: bool = False,\n        do_convert_grayscale: bool = False,\n    ):\n        super().__init__(\n            do_resize=do_resize,\n            vae_scale_factor=vae_scale_factor,\n            resample=resample,\n            do_normalize=do_normalize,\n            do_binarize=do_binarize,\n            do_convert_grayscale=do_convert_grayscale,\n        )\n\n        self.max_pixels = max_pixels\n        self.max_side_length = max_side_length\n\n    def get_new_height_width(\n        self,\n        image: Union[PIL.Image.Image, np.ndarray, torch.Tensor],\n        height: Optional[int] = None,\n        width: Optional[int] = None,\n        max_pixels: Optional[int] = None,\n        max_side_length: Optional[int] = None,\n    ) -> Tuple[int, int]:\n        r\"\"\"\n        Returns the height and width of the image, downscaled to the next integer multiple of `vae_scale_factor`.\n\n        Args:\n            image (`Union[PIL.Image.Image, np.ndarray, torch.Tensor]`):\n                The image input, which can be a PIL image, NumPy array, or PyTorch tensor. If it is a NumPy array, it\n                should have shape `[batch, height, width]` or `[batch, height, width, channels]`. If it is a PyTorch\n                tensor, it should have shape `[batch, channels, height, width]`.\n            height (`Optional[int]`, *optional*, defaults to `None`):\n                The height of the preprocessed image. If `None`, the height of the `image` input will be used.\n            width (`Optional[int]`, *optional*, defaults to `None`):\n                The width of the preprocessed image. If `None`, the width of the `image` input will be used.\n\n        Returns:\n            `Tuple[int, int]`:\n                A tuple containing the height and width, both resized to the nearest integer multiple of\n                `vae_scale_factor`.\n        \"\"\"\n\n        if height is None:\n            if isinstance(image, PIL.Image.Image):\n                height = image.height\n            elif isinstance(image, torch.Tensor):\n                height = image.shape[2]\n            else:\n                height = image.shape[1]\n\n        if width is None:\n            if isinstance(image, PIL.Image.Image):\n                width = image.width\n            elif isinstance(image, torch.Tensor):\n                width = image.shape[3]\n            else:\n                width = image.shape[2]\n\n        if max_side_length is None:\n            max_side_length = self.max_side_length\n\n        if max_pixels is None:\n            max_pixels = self.max_pixels\n\n        ratio = 1.0\n        if max_side_length is not None:\n            if height > width:\n                max_side_length_ratio = max_side_length / height\n            else:\n                max_side_length_ratio = max_side_length / width\n\n        cur_pixels = height * width\n        max_pixels_ratio = (max_pixels / cur_pixels) ** 0.5\n        ratio = min(max_pixels_ratio, max_side_length_ratio, 1.0) # do not upscale input image\n\n        new_height, new_width = int(height * ratio) // self.config.vae_scale_factor * self.config.vae_scale_factor, int(width * ratio) // self.config.vae_scale_factor * self.config.vae_scale_factor\n        return new_height, new_width\n\n    def preprocess(\n        self,\n        image: PipelineImageInput,\n        height: Optional[int] = None,\n        width: Optional[int] = None,\n        max_pixels: Optional[int] = None,\n        max_side_length: Optional[int] = None,\n        resize_mode: str = \"default\",  # \"default\", \"fill\", \"crop\"\n        crops_coords: Optional[Tuple[int, int, int, int]] = None,\n    ) -> torch.Tensor:\n        \"\"\"\n        Preprocess the image input.\n\n        Args:\n            image (`PipelineImageInput`):\n                The image input, accepted formats are PIL images, NumPy arrays, PyTorch tensors; Also accept list of\n                supported formats.\n            height (`int`, *optional*):\n                The height in preprocessed image. If `None`, will use the `get_default_height_width()` to get default\n                height.\n            width (`int`, *optional*):\n                The width in preprocessed. If `None`, will use get_default_height_width()` to get the default width.\n            resize_mode (`str`, *optional*, defaults to `default`):\n                The resize mode, can be one of `default` or `fill`. If `default`, will resize the image to fit within\n                the specified width and height, and it may not maintaining the original aspect ratio. If `fill`, will\n                resize the image to fit within the specified width and height, maintaining the aspect ratio, and then\n                center the image within the dimensions, filling empty with data from image. If `crop`, will resize the\n                image to fit within the specified width and height, maintaining the aspect ratio, and then center the\n                image within the dimensions, cropping the excess. Note that resize_mode `fill` and `crop` are only\n                supported for PIL image input.\n            crops_coords (`List[Tuple[int, int, int, int]]`, *optional*, defaults to `None`):\n                The crop coordinates for each image in the batch. If `None`, will not crop the image.\n\n        Returns:\n            `torch.Tensor`:\n                The preprocessed image.\n        \"\"\"\n        supported_formats = (PIL.Image.Image, np.ndarray, torch.Tensor)\n\n        # Expand the missing dimension for 3-dimensional pytorch tensor or numpy array that represents grayscale image\n        if self.config.do_convert_grayscale and isinstance(image, (torch.Tensor, np.ndarray)) and image.ndim == 3:\n            if isinstance(image, torch.Tensor):\n                # if image is a pytorch tensor could have 2 possible shapes:\n                #    1. batch x height x width: we should insert the channel dimension at position 1\n                #    2. channel x height x width: we should insert batch dimension at position 0,\n                #       however, since both channel and batch dimension has same size 1, it is same to insert at position 1\n                #    for simplicity, we insert a dimension of size 1 at position 1 for both cases\n                image = image.unsqueeze(1)\n            else:\n                # if it is a numpy array, it could have 2 possible shapes:\n                #   1. batch x height x width: insert channel dimension on last position\n                #   2. height x width x channel: insert batch dimension on first position\n                if image.shape[-1] == 1:\n                    image = np.expand_dims(image, axis=0)\n                else:\n                    image = np.expand_dims(image, axis=-1)\n\n        if isinstance(image, list) and isinstance(image[0], np.ndarray) and image[0].ndim == 4:\n            warnings.warn(\n                \"Passing `image` as a list of 4d np.ndarray is deprecated.\"\n                \"Please concatenate the list along the batch dimension and pass it as a single 4d np.ndarray\",\n                FutureWarning,\n            )\n            image = np.concatenate(image, axis=0)\n        if isinstance(image, list) and isinstance(image[0], torch.Tensor) and image[0].ndim == 4:\n            warnings.warn(\n                \"Passing `image` as a list of 4d torch.Tensor is deprecated.\"\n                \"Please concatenate the list along the batch dimension and pass it as a single 4d torch.Tensor\",\n                FutureWarning,\n            )\n            image = torch.cat(image, axis=0)\n\n        if not is_valid_image_imagelist(image):\n            raise ValueError(\n                f\"Input is in incorrect format. Currently, we only support {', '.join(str(x) for x in supported_formats)}\"\n            )\n        if not isinstance(image, list):\n            image = [image]\n\n        if isinstance(image[0], PIL.Image.Image):\n            if crops_coords is not None:\n                image = [i.crop(crops_coords) for i in image]\n            if self.config.do_resize:\n                height, width = self.get_new_height_width(image[0], height, width, max_pixels, max_side_length)\n                image = [self.resize(i, height, width, resize_mode=resize_mode) for i in image]\n            if self.config.do_convert_rgb:\n                image = [self.convert_to_rgb(i) for i in image]\n            elif self.config.do_convert_grayscale:\n                image = [self.convert_to_grayscale(i) for i in image]\n            image = self.pil_to_numpy(image)  # to np\n            image = self.numpy_to_pt(image)  # to pt\n\n        elif isinstance(image[0], np.ndarray):\n            image = np.concatenate(image, axis=0) if image[0].ndim == 4 else np.stack(image, axis=0)\n\n            image = self.numpy_to_pt(image)\n\n            height, width = self.get_new_height_width(image, height, width, max_pixels, max_side_length)\n            if self.config.do_resize:\n                image = self.resize(image, height, width)\n\n        elif isinstance(image[0], torch.Tensor):\n            image = torch.cat(image, axis=0) if image[0].ndim == 4 else torch.stack(image, axis=0)\n\n            if self.config.do_convert_grayscale and image.ndim == 3:\n                image = image.unsqueeze(1)\n\n            channel = image.shape[1]\n            # don't need any preprocess if the image is latents\n            if channel == self.config.vae_latent_channels:\n                return image\n\n            height, width = self.get_new_height_width(image, height, width, max_pixels, max_side_length)\n            if self.config.do_resize:\n                image = self.resize(image, height, width)\n\n        # expected range [0,1], normalize to [-1,1]\n        do_normalize = self.config.do_normalize\n        if do_normalize and image.min() < 0:\n            warnings.warn(\n                \"Passing `image` as torch tensor with value range in [-1,1] is deprecated. The expected value range for image tensor is [0,1] \"\n                f\"when passing as pytorch tensor or numpy Array. You passed `image` with value range [{image.min()},{image.max()}]\",\n                FutureWarning,\n            )\n            do_normalize = False\n        if do_normalize:\n            image = self.normalize(image)\n\n        if self.config.do_binarize:\n            image = self.binarize(image)\n\n        return image\n"
  },
  {
    "path": "pipelines/omnigen2/models/attention_processor.py",
    "content": "\"\"\"\nOmniGen2 Attention Processor Module\n\nCopyright 2025 BAAI, The OmniGen2 Team and The HuggingFace Team. All rights reserved.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n    http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n\"\"\"\n\nimport warnings\nimport math\nfrom typing import Optional, Tuple, Dict, Any\n\nimport torch\nimport torch.nn.functional as F\nfrom einops import repeat\n\nfrom diffusers.models.attention_processor import Attention\nfrom .embeddings import apply_rotary_emb\n\n\nclass OmniGen2AttnProcessor:\n    \"\"\"\n    Processor for implementing scaled dot-product attention with flash attention and variable length sequences.\n\n    This processor is optimized for PyTorch 2.0 and implements:\n    - Flash attention with variable length sequences\n    - Rotary position embeddings (RoPE)\n    - Query-Key normalization\n    - Proportional attention scaling\n\n    Args:\n        None\n\n    Raises:\n        ImportError: If PyTorch version is less than 2.0\n    \"\"\"\n\n    def __init__(self) -> None:\n        \"\"\"Initialize the attention processor.\"\"\"\n        if not hasattr(F, \"scaled_dot_product_attention\"):\n            raise ImportError(\n                \"OmniGen2AttnProcessor requires PyTorch 2.0. \"\n                \"Please upgrade PyTorch to version 2.0 or later.\"\n            )\n\n    def __call__(\n        self,\n        attn: Attention,\n        hidden_states: torch.Tensor,\n        encoder_hidden_states: torch.Tensor,\n        attention_mask: Optional[torch.Tensor] = None,\n        image_rotary_emb: Optional[torch.Tensor] = None,\n        base_sequence_length: Optional[int] = None,\n    ) -> torch.Tensor:\n        \"\"\"\n        Process attention computation with flash attention.\n\n        Args:\n            attn: Attention module\n            hidden_states: Hidden states tensor of shape (batch_size, seq_len, hidden_dim)\n            encoder_hidden_states: Encoder hidden states tensor\n            attention_mask: Optional attention mask tensor\n            image_rotary_emb: Optional rotary embeddings for image tokens\n            base_sequence_length: Optional base sequence length for proportional attention\n\n        Returns:\n            torch.Tensor: Processed hidden states after attention computation\n        \"\"\"\n        batch_size, sequence_length, _ = hidden_states.shape\n\n        # Get Query-Key-Value Pair\n        query = attn.to_q(hidden_states)\n        key = attn.to_k(encoder_hidden_states)\n        value = attn.to_v(encoder_hidden_states)\n\n        query_dim = query.shape[-1]\n        inner_dim = key.shape[-1]\n        head_dim = query_dim // attn.heads\n        dtype = query.dtype\n\n        # Get key-value heads\n        kv_heads = inner_dim // head_dim\n\n        # Reshape tensors for attention computation\n        query = query.view(batch_size, -1, attn.heads, head_dim)\n        key = key.view(batch_size, -1, kv_heads, head_dim)\n        value = value.view(batch_size, -1, kv_heads, head_dim)\n\n        # Apply Query-Key normalization\n        if attn.norm_q is not None:\n            query = attn.norm_q(query)\n        if attn.norm_k is not None:\n            key = attn.norm_k(key)\n\n        # Apply Rotary Position Embeddings\n        if image_rotary_emb is not None:\n            query = apply_rotary_emb(query, image_rotary_emb, use_real=False)\n            key = apply_rotary_emb(key, image_rotary_emb, use_real=False)\n\n        query, key = query.to(dtype), key.to(dtype)\n\n        # Calculate attention scale\n        if base_sequence_length is not None:\n            softmax_scale = math.sqrt(math.log(sequence_length, base_sequence_length)) * attn.scale\n        else:\n            softmax_scale = attn.scale\n\n        # scaled_dot_product_attention expects attention_mask shape to be\n        # (batch, heads, source_length, target_length)\n        if attention_mask is not None:\n            attention_mask = attention_mask.bool().view(batch_size, 1, 1, -1)\n\n        query = query.transpose(1, 2)\n        key = key.transpose(1, 2)\n        value = value.transpose(1, 2)\n\n        # explicitly repeat key and value to match query length, otherwise using enable_gqa=True results in MATH backend of sdpa in our test of pytorch2.6\n        key = key.repeat_interleave(query.size(-3) // key.size(-3), -3)\n        value = value.repeat_interleave(query.size(-3) // value.size(-3), -3)\n\n        hidden_states = F.scaled_dot_product_attention(\n            query, key, value, attn_mask=attention_mask, scale=softmax_scale\n        )\n        hidden_states = hidden_states.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n        hidden_states = hidden_states.type_as(query)\n\n        # Apply output projection\n        hidden_states = attn.to_out[0](hidden_states)\n        hidden_states = attn.to_out[1](hidden_states)\n\n        return hidden_states\n"
  },
  {
    "path": "pipelines/omnigen2/models/embeddings.py",
    "content": "# Copyright 2024 The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\nfrom typing import List, Optional, Tuple, Union\n\nimport torch\nfrom torch import nn\nfrom modules import devices\n\n\n# Omnigen uses x.shape[-1] // 2 instead of -1\n# Functionally the same but -1 does fail with when the shape becomes 0\nif devices.backend != \"ipex\":\n    def apply_rotary_emb(\n        x: torch.Tensor,\n        freqs_cis: Union[torch.Tensor, Tuple[torch.Tensor]],\n        use_real: bool = True,\n        use_real_unbind_dim: int = -1,\n    ) -> Tuple[torch.Tensor, torch.Tensor]:\n        \"\"\"\n        Apply rotary embeddings to input tensors using the given frequency tensor. This function applies rotary embeddings\n        to the given query or key 'x' tensors using the provided frequency tensor 'freqs_cis'. The input tensors are\n        reshaped as complex numbers, and the frequency tensor is reshaped for broadcasting compatibility. The resulting\n        tensors contain rotary embeddings and are returned as real tensors.\n\n        Args:\n            x (`torch.Tensor`):\n                Query or key tensor to apply rotary embeddings. [B, H, S, D] xk (torch.Tensor): Key tensor to apply\n            freqs_cis (`Tuple[torch.Tensor]`): Precomputed frequency tensor for complex exponentials. ([S, D], [S, D],)\n\n        Returns:\n            Tuple[torch.Tensor, torch.Tensor]: Tuple of modified query tensor and key tensor with rotary embeddings.\n        \"\"\"\n        if use_real:\n            cos, sin = freqs_cis  # [S, D]\n            cos = cos[None, None]\n            sin = sin[None, None]\n            cos, sin = cos.to(x.device), sin.to(x.device)\n\n            if use_real_unbind_dim == -1:\n                # Used for flux, cogvideox, hunyuan-dit\n                x_real, x_imag = x.reshape(*x.shape[:-1], -1, 2).unbind(-1)  # [B, S, H, D//2]\n                x_rotated = torch.stack([-x_imag, x_real], dim=-1).flatten(3)\n            elif use_real_unbind_dim == -2:\n                # Used for Stable Audio, OmniGen and CogView4\n                x_real, x_imag = x.reshape(*x.shape[:-1], 2, -1).unbind(-2)  # [B, S, H, D//2]\n                x_rotated = torch.cat([-x_imag, x_real], dim=-1)\n            else:\n                raise ValueError(f\"`use_real_unbind_dim={use_real_unbind_dim}` but should be -1 or -2.\")\n\n            out = (x.float() * cos + x_rotated.float() * sin).to(x.dtype)\n\n            return out\n        else:\n            # used for lumina\n            # x_rotated = torch.view_as_complex(x.float().reshape(*x.shape[:-1], -1, 2))\n            x_rotated = torch.view_as_complex(x.float().reshape(*x.shape[:-1], x.shape[-1] // 2, 2))\n            freqs_cis = freqs_cis.unsqueeze(2)\n            x_out = torch.view_as_real(x_rotated * freqs_cis).flatten(3)\n\n            return x_out.type_as(x)\nelse:\n    def apply_rotary_emb(x, freqs_cis, use_real: bool = True, use_real_unbind_dim: int = -1):\n        if use_real:\n            cos, sin = freqs_cis  # [S, D]\n            cos = cos[None, None]\n            sin = sin[None, None]\n            cos, sin = cos.to(x.device), sin.to(x.device)\n\n            if use_real_unbind_dim == -1:\n                # Used for flux, cogvideox, hunyuan-dit\n                x_real, x_imag = x.reshape(*x.shape[:-1], -1, 2).unbind(-1)  # [B, S, H, D//2]\n                x_rotated = torch.stack([-x_imag, x_real], dim=-1).flatten(3)\n            elif use_real_unbind_dim == -2:\n                # Used for Stable Audio, OmniGen, CogView4 and Cosmos\n                x_real, x_imag = x.reshape(*x.shape[:-1], 2, -1).unbind(-2)  # [B, S, H, D//2]\n                x_rotated = torch.cat([-x_imag, x_real], dim=-1)\n            else:\n                raise ValueError(f\"`use_real_unbind_dim={use_real_unbind_dim}` but should be -1 or -2.\")\n\n            out = (x.to(dtype=torch.float32) * cos + x_rotated.to(dtype=torch.float32) * sin).to(x.dtype)\n            return out\n        else:\n            # used for lumina\n            # force cpu with Alchemist\n            x_rotated = torch.view_as_complex(x.to(\"cpu\").to(dtype=torch.float32).reshape(*x.shape[:-1], x.shape[-1] // 2, 2))\n            freqs_cis = freqs_cis.to(\"cpu\").unsqueeze(2)\n            x_out = torch.view_as_real(x_rotated * freqs_cis).flatten(3)\n            return x_out.type_as(x).to(x.device)\n"
  },
  {
    "path": "pipelines/omnigen2/models/transformers/__init__.py",
    "content": "from .transformer_omnigen2 import OmniGen2Transformer2DModel\n\n__all__ = [\"OmniGen2Transformer2DModel\"]\n"
  },
  {
    "path": "pipelines/omnigen2/models/transformers/block_lumina2.py",
    "content": "\n# Copyright 2024 Alpha-VLLM Authors and The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nfrom typing import Optional, Tuple\n\nimport torch\nimport torch.nn as nn\nimport torch.nn.functional as F\n\nfrom torch.nn import RMSNorm\nfrom diffusers.models.embeddings import Timesteps, TimestepEmbedding\n\n\n# Makes timestep_scale configurable\n# Omnigen 2 uses timestep_scale=1000\nclass Lumina2CombinedTimestepCaptionEmbedding(nn.Module):\n    def __init__(\n        self,\n        hidden_size: int = 4096,\n        text_feat_dim: int = 2048,\n        frequency_embedding_size: int = 256,\n        norm_eps: float = 1e-5,\n        timestep_scale: float = 1.0,\n    ) -> None:\n        super().__init__()\n\n        self.time_proj = Timesteps(\n            num_channels=frequency_embedding_size, flip_sin_to_cos=True, downscale_freq_shift=0.0, scale=timestep_scale\n        )\n\n        self.timestep_embedder = TimestepEmbedding(\n            in_channels=frequency_embedding_size, time_embed_dim=min(hidden_size, 1024)\n        )\n\n        self.caption_embedder = nn.Sequential(\n            RMSNorm(text_feat_dim, eps=norm_eps),\n            nn.Linear(text_feat_dim, hidden_size, bias=True),\n        )\n\n        self._initialize_weights()\n\n    def _initialize_weights(self):\n        nn.init.trunc_normal_(self.caption_embedder[1].weight, std=0.02)\n        nn.init.zeros_(self.caption_embedder[1].bias)\n\n    def forward(\n        self, timestep: torch.Tensor, text_hidden_states: torch.Tensor, dtype: torch.dtype\n    ) -> Tuple[torch.Tensor, torch.Tensor]:\n        timestep_proj = self.time_proj(timestep).to(dtype=dtype)\n        time_embed = self.timestep_embedder(timestep_proj)\n        caption_embed = self.caption_embedder(text_hidden_states)\n        return time_embed, caption_embed\n"
  },
  {
    "path": "pipelines/omnigen2/models/transformers/repo.py",
    "content": "from typing import List, Tuple\n\nimport torch\nimport torch.nn as nn\n\nfrom einops import repeat\nfrom diffusers.models.embeddings import get_1d_rotary_pos_embed\n\nclass OmniGen2RotaryPosEmbed(nn.Module):\n    def __init__(self, theta: int,\n                 axes_dim: Tuple[int, int, int],\n                 axes_lens: Tuple[int, int, int] = (300, 512, 512),\n                 patch_size: int = 2):\n        super().__init__()\n        self.theta = theta\n        self.axes_dim = axes_dim\n        self.axes_lens = axes_lens\n        self.patch_size = patch_size\n\n    @staticmethod\n    def get_freqs_cis(axes_dim: Tuple[int, int, int],\n                      axes_lens: Tuple[int, int, int],\n                      theta: int) -> List[torch.Tensor]:\n        freqs_cis = []\n        freqs_dtype = torch.float32 if torch.backends.mps.is_available() else torch.float64\n        for i, (d, e) in enumerate(zip(axes_dim, axes_lens)):\n            emb = get_1d_rotary_pos_embed(d, e, theta=theta, freqs_dtype=freqs_dtype)\n            freqs_cis.append(emb)\n        return freqs_cis\n\n    def _get_freqs_cis(self, freqs_cis, ids: torch.Tensor) -> torch.Tensor:\n        device = ids.device\n        if ids.device.type == \"mps\":\n            ids = ids.to(\"cpu\")\n\n        result = []\n        for i in range(len(self.axes_dim)):\n            freqs = freqs_cis[i].to(ids.device)\n            index = ids[:, :, i : i + 1].repeat(1, 1, freqs.shape[-1]).to(torch.int64)\n            result.append(torch.gather(freqs.unsqueeze(0).repeat(index.shape[0], 1, 1), dim=1, index=index))\n        return torch.cat(result, dim=-1).to(device)\n\n    def forward(\n        self,\n        freqs_cis,\n        attention_mask,\n        l_effective_ref_img_len,\n        l_effective_img_len,\n        ref_img_sizes,\n        img_sizes,\n        device\n    ):\n        batch_size = len(attention_mask)\n        p = self.patch_size\n\n        encoder_seq_len = attention_mask.shape[1]\n        l_effective_cap_len = attention_mask.sum(dim=1).tolist()\n\n        seq_lengths = [cap_len + sum(ref_img_len) + img_len for cap_len, ref_img_len, img_len in zip(l_effective_cap_len, l_effective_ref_img_len, l_effective_img_len)]\n\n        max_seq_len = max(seq_lengths)\n        max_ref_img_len = max([sum(ref_img_len) for ref_img_len in l_effective_ref_img_len])\n        max_img_len = max(l_effective_img_len)\n\n        # Create position IDs\n        position_ids = torch.zeros(batch_size, max_seq_len, 3, dtype=torch.int32, device=device)\n\n        for i, (cap_seq_len, seq_len) in enumerate(zip(l_effective_cap_len, seq_lengths)):\n            # add text position ids\n            position_ids[i, :cap_seq_len] = repeat(torch.arange(cap_seq_len, dtype=torch.int32, device=device), \"l -> l 3\")\n\n            pe_shift = cap_seq_len\n            pe_shift_len = cap_seq_len\n\n            if ref_img_sizes[i] is not None:\n                for ref_img_size, ref_img_len in zip(ref_img_sizes[i], l_effective_ref_img_len[i]):\n                    H, W = ref_img_size\n                    ref_H_tokens, ref_W_tokens = H // p, W // p\n                    assert ref_H_tokens * ref_W_tokens == ref_img_len\n                    # add image position ids\n\n                    row_ids = repeat(torch.arange(ref_H_tokens, dtype=torch.int32, device=device), \"h -> h w\", w=ref_W_tokens).flatten()\n                    col_ids = repeat(torch.arange(ref_W_tokens, dtype=torch.int32, device=device), \"w -> h w\", h=ref_H_tokens).flatten()\n                    position_ids[i, pe_shift_len:pe_shift_len + ref_img_len, 0] = pe_shift\n                    position_ids[i, pe_shift_len:pe_shift_len + ref_img_len, 1] = row_ids\n                    position_ids[i, pe_shift_len:pe_shift_len + ref_img_len, 2] = col_ids\n\n                    pe_shift += max(ref_H_tokens, ref_W_tokens)\n                    pe_shift_len += ref_img_len\n\n            H, W = img_sizes[i]\n            H_tokens, W_tokens = H // p, W // p\n            assert H_tokens * W_tokens == l_effective_img_len[i]\n\n            row_ids = repeat(torch.arange(H_tokens, dtype=torch.int32, device=device), \"h -> h w\", w=W_tokens).flatten()\n            col_ids = repeat(torch.arange(W_tokens, dtype=torch.int32, device=device), \"w -> h w\", h=H_tokens).flatten()\n\n            assert pe_shift_len + l_effective_img_len[i] == seq_len\n            position_ids[i, pe_shift_len: seq_len, 0] = pe_shift\n            position_ids[i, pe_shift_len: seq_len, 1] = row_ids\n            position_ids[i, pe_shift_len: seq_len, 2] = col_ids\n\n        # Get combined rotary embeddings\n        freqs_cis = self._get_freqs_cis(freqs_cis, position_ids)\n\n        # create separate rotary embeddings for captions and images\n        cap_freqs_cis = torch.zeros(\n            batch_size, encoder_seq_len, freqs_cis.shape[-1], device=device, dtype=freqs_cis.dtype\n        )\n        ref_img_freqs_cis = torch.zeros(\n            batch_size, max_ref_img_len, freqs_cis.shape[-1], device=device, dtype=freqs_cis.dtype\n        )\n        img_freqs_cis = torch.zeros(\n            batch_size, max_img_len, freqs_cis.shape[-1], device=device, dtype=freqs_cis.dtype\n        )\n\n        for i, (cap_seq_len, ref_img_len, img_len, seq_len) in enumerate(zip(l_effective_cap_len, l_effective_ref_img_len, l_effective_img_len, seq_lengths)):\n            cap_freqs_cis[i, :cap_seq_len] = freqs_cis[i, :cap_seq_len]\n            ref_img_freqs_cis[i, :sum(ref_img_len)] = freqs_cis[i, cap_seq_len:cap_seq_len + sum(ref_img_len)]\n            img_freqs_cis[i, :img_len] = freqs_cis[i, cap_seq_len + sum(ref_img_len):cap_seq_len + sum(ref_img_len) + img_len]\n\n        return (\n            cap_freqs_cis,\n            ref_img_freqs_cis,\n            img_freqs_cis,\n            freqs_cis,\n            l_effective_cap_len,\n            seq_lengths,\n        )\n"
  },
  {
    "path": "pipelines/omnigen2/models/transformers/transformer_omnigen2.py",
    "content": "import itertools\nfrom typing import Any, Dict, List, Optional, Tuple, Union\n\nimport torch\nimport torch.nn as nn\n\nfrom torch.nn import RMSNorm\nfrom einops import rearrange\n\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.loaders import PeftAdapterMixin\nfrom diffusers.loaders.single_file_model import FromOriginalModelMixin\nfrom diffusers.utils import USE_PEFT_BACKEND, logging, scale_lora_layers, unscale_lora_layers\nfrom diffusers.models.attention_processor import Attention\nfrom diffusers.models.modeling_outputs import Transformer2DModelOutput\nfrom diffusers.models.modeling_utils import ModelMixin\nfrom diffusers.models.normalization import LuminaLayerNormContinuous, LuminaRMSNormZero\nfrom diffusers.models.attention import LuminaFeedForward\n\nfrom .block_lumina2 import Lumina2CombinedTimestepCaptionEmbedding\nfrom ..attention_processor import OmniGen2AttnProcessor\nfrom .repo import OmniGen2RotaryPosEmbed\n\nlogger = logging.get_logger(__name__)\n\n\nclass OmniGen2TransformerBlock(nn.Module):\n    \"\"\"\n    Transformer block for OmniGen2 model.\n\n    This block implements a transformer layer with:\n    - Multi-head attention with flash attention\n    - Feed-forward network with SwiGLU activation\n    - RMS normalization\n    - Optional modulation for conditional generation\n\n    Args:\n        dim: Dimension of the input and output tensors\n        num_attention_heads: Number of attention heads\n        num_kv_heads: Number of key-value heads\n        multiple_of: Multiple of which the hidden dimension should be\n        ffn_dim_multiplier: Multiplier for the feed-forward network dimension\n        norm_eps: Epsilon value for normalization layers\n        modulation: Whether to use modulation for conditional generation\n        use_fused_rms_norm: Whether to use fused RMS normalization\n        use_fused_swiglu: Whether to use fused SwiGLU activation\n    \"\"\"\n\n    def __init__(\n        self,\n        dim: int,\n        num_attention_heads: int,\n        num_kv_heads: int,\n        multiple_of: int,\n        ffn_dim_multiplier: float,\n        norm_eps: float,\n        modulation: bool = True,\n    ) -> None:\n        \"\"\"Initialize the transformer block.\"\"\"\n        super().__init__()\n        self.head_dim = dim // num_attention_heads\n        self.modulation = modulation\n\n        processor = OmniGen2AttnProcessor()\n        # Initialize attention layer\n        self.attn = Attention(\n            query_dim=dim,\n            cross_attention_dim=None,\n            dim_head=dim // num_attention_heads,\n            qk_norm=\"rms_norm\",\n            heads=num_attention_heads,\n            kv_heads=num_kv_heads,\n            eps=1e-5,\n            bias=False,\n            out_bias=False,\n            processor=processor,\n        )\n\n        # Initialize feed-forward network\n        self.feed_forward = LuminaFeedForward(\n            dim=dim,\n            inner_dim=4 * dim,\n            multiple_of=multiple_of,\n            ffn_dim_multiplier=ffn_dim_multiplier\n        )\n\n        # Initialize normalization layers\n        if modulation:\n            self.norm1 = LuminaRMSNormZero(\n                embedding_dim=dim,\n                norm_eps=norm_eps,\n                norm_elementwise_affine=True\n            )\n        else:\n            self.norm1 = RMSNorm(dim, eps=norm_eps)\n\n        self.ffn_norm1 = RMSNorm(dim, eps=norm_eps)\n        self.norm2 = RMSNorm(dim, eps=norm_eps)\n        self.ffn_norm2 = RMSNorm(dim, eps=norm_eps)\n\n        self.initialize_weights()\n\n    def initialize_weights(self) -> None:\n        \"\"\"\n        Initialize the weights of the transformer block.\n\n        Uses Xavier uniform initialization for linear layers and zero initialization for biases.\n        \"\"\"\n        nn.init.xavier_uniform_(self.attn.to_q.weight)\n        nn.init.xavier_uniform_(self.attn.to_k.weight)\n        nn.init.xavier_uniform_(self.attn.to_v.weight)\n        nn.init.xavier_uniform_(self.attn.to_out[0].weight)\n\n        nn.init.xavier_uniform_(self.feed_forward.linear_1.weight)\n        nn.init.xavier_uniform_(self.feed_forward.linear_2.weight)\n        nn.init.xavier_uniform_(self.feed_forward.linear_3.weight)\n\n        if self.modulation:\n            nn.init.zeros_(self.norm1.linear.weight)\n            nn.init.zeros_(self.norm1.linear.bias)\n\n    def forward(\n        self,\n        hidden_states: torch.Tensor,\n        attention_mask: torch.Tensor,\n        image_rotary_emb: torch.Tensor,\n        temb: Optional[torch.Tensor] = None,\n    ) -> torch.Tensor:\n        \"\"\"\n        Forward pass of the transformer block.\n\n        Args:\n            hidden_states: Input hidden states tensor\n            attention_mask: Attention mask tensor\n            image_rotary_emb: Rotary embeddings for image tokens\n            temb: Optional timestep embedding tensor\n\n        Returns:\n            torch.Tensor: Output hidden states after transformer block processing\n        \"\"\"\n        import time\n        if self.modulation:\n            if temb is None:\n                raise ValueError(\"temb must be provided when modulation is enabled\")\n\n            norm_hidden_states, gate_msa, scale_mlp, gate_mlp = self.norm1(hidden_states, temb)\n            attn_output = self.attn(\n                hidden_states=norm_hidden_states,\n                encoder_hidden_states=norm_hidden_states,\n                attention_mask=attention_mask,\n                image_rotary_emb=image_rotary_emb,\n            )\n            hidden_states = hidden_states + gate_msa.unsqueeze(1).tanh() * self.norm2(attn_output)\n            mlp_output = self.feed_forward(self.ffn_norm1(hidden_states) * (1 + scale_mlp.unsqueeze(1)))\n            hidden_states = hidden_states + gate_mlp.unsqueeze(1).tanh() * self.ffn_norm2(mlp_output)\n        else:\n            norm_hidden_states = self.norm1(hidden_states)\n            attn_output = self.attn(\n                hidden_states=norm_hidden_states,\n                encoder_hidden_states=norm_hidden_states,\n                attention_mask=attention_mask,\n                image_rotary_emb=image_rotary_emb,\n            )\n            hidden_states = hidden_states + self.norm2(attn_output)\n            mlp_output = self.feed_forward(self.ffn_norm1(hidden_states))\n            hidden_states = hidden_states + self.ffn_norm2(mlp_output)\n\n        return hidden_states\n\n\nclass OmniGen2Transformer2DModel(ModelMixin, ConfigMixin, PeftAdapterMixin, FromOriginalModelMixin):\n    \"\"\"\n    OmniGen2 Transformer 2D Model.\n\n    A transformer-based diffusion model for image generation with:\n    - Patch-based image processing\n    - Rotary position embeddings\n    - Multi-head attention\n    - Conditional generation support\n\n    Args:\n        patch_size: Size of image patches\n        in_channels: Number of input channels\n        out_channels: Number of output channels (defaults to in_channels)\n        hidden_size: Size of hidden layers\n        num_layers: Number of transformer layers\n        num_refiner_layers: Number of refiner layers\n        num_attention_heads: Number of attention heads\n        num_kv_heads: Number of key-value heads\n        multiple_of: Multiple of which the hidden dimension should be\n        ffn_dim_multiplier: Multiplier for feed-forward network dimension\n        norm_eps: Epsilon value for normalization layers\n        axes_dim_rope: Dimensions for rotary position embeddings\n        axes_lens: Lengths for rotary position embeddings\n        text_feat_dim: Dimension of text features\n        timestep_scale: Scale factor for timestep embeddings\n        use_fused_rms_norm: Whether to use fused RMS normalization\n        use_fused_swiglu: Whether to use fused SwiGLU activation\n    \"\"\"\n\n    _supports_gradient_checkpointing = True\n    _no_split_modules = [\"Omnigen2TransformerBlock\"]\n    _skip_layerwise_casting_patterns = [\"x_embedder\", \"norm\"]\n\n    @register_to_config\n    def __init__(\n        self,\n        patch_size: int = 2,\n        in_channels: int = 16,\n        out_channels: Optional[int] = None,\n        hidden_size: int = 2304,\n        num_layers: int = 26,\n        num_refiner_layers: int = 2,\n        num_attention_heads: int = 24,\n        num_kv_heads: int = 8,\n        multiple_of: int = 256,\n        ffn_dim_multiplier: Optional[float] = None,\n        norm_eps: float = 1e-5,\n        axes_dim_rope: Tuple[int, int, int] = (32, 32, 32),\n        axes_lens: Tuple[int, int, int] = (300, 512, 512),\n        text_feat_dim: int = 1024,\n        timestep_scale: float = 1.0\n    ) -> None:\n        \"\"\"Initialize the OmniGen2 transformer model.\"\"\"\n        super().__init__()\n\n        # Validate configuration\n        if (hidden_size // num_attention_heads) != sum(axes_dim_rope):\n            raise ValueError(\n                f\"hidden_size // num_attention_heads ({hidden_size // num_attention_heads}) \"\n                f\"must equal sum(axes_dim_rope) ({sum(axes_dim_rope)})\"\n            )\n\n        self.out_channels = out_channels or in_channels\n\n        # Initialize embeddings\n        self.rope_embedder = OmniGen2RotaryPosEmbed(\n            theta=10000,\n            axes_dim=axes_dim_rope,\n            axes_lens=axes_lens,\n            patch_size=patch_size,\n        )\n\n        self.x_embedder = nn.Linear(\n            in_features=patch_size * patch_size * in_channels,\n            out_features=hidden_size,\n        )\n\n        self.ref_image_patch_embedder = nn.Linear(\n            in_features=patch_size * patch_size * in_channels,\n            out_features=hidden_size,\n        )\n\n        self.time_caption_embed = Lumina2CombinedTimestepCaptionEmbedding(\n            hidden_size=hidden_size,\n            text_feat_dim=text_feat_dim,\n            norm_eps=norm_eps,\n            timestep_scale=timestep_scale\n        )\n\n        # Initialize transformer blocks\n        self.noise_refiner = nn.ModuleList([\n            OmniGen2TransformerBlock(\n                hidden_size,\n                num_attention_heads,\n                num_kv_heads,\n                multiple_of,\n                ffn_dim_multiplier,\n                norm_eps,\n                modulation=True\n            )\n            for _ in range(num_refiner_layers)\n        ])\n\n        self.ref_image_refiner = nn.ModuleList([\n            OmniGen2TransformerBlock(\n                hidden_size,\n                num_attention_heads,\n                num_kv_heads,\n                multiple_of,\n                ffn_dim_multiplier,\n                norm_eps,\n                modulation=True\n            )\n            for _ in range(num_refiner_layers)\n        ])\n\n        self.context_refiner = nn.ModuleList(\n            [\n                OmniGen2TransformerBlock(\n                    hidden_size,\n                    num_attention_heads,\n                    num_kv_heads,\n                    multiple_of,\n                    ffn_dim_multiplier,\n                    norm_eps,\n                    modulation=False\n                )\n                for _ in range(num_refiner_layers)\n            ]\n        )\n\n        # 3. Transformer blocks\n        self.layers = nn.ModuleList(\n            [\n                OmniGen2TransformerBlock(\n                    hidden_size,\n                    num_attention_heads,\n                    num_kv_heads,\n                    multiple_of,\n                    ffn_dim_multiplier,\n                    norm_eps,\n                    modulation=True\n                )\n                for _ in range(num_layers)\n            ]\n        )\n\n        # 4. Output norm & projection\n        self.norm_out = LuminaLayerNormContinuous(\n            embedding_dim=hidden_size,\n            conditioning_embedding_dim=min(hidden_size, 1024),\n            elementwise_affine=False,\n            eps=1e-6,\n            bias=True,\n            out_dim=patch_size * patch_size * self.out_channels\n        )\n\n        # Add learnable embeddings to distinguish different images\n        self.image_index_embedding = nn.Parameter(torch.randn(5, hidden_size)) # support max 5 ref images\n\n        self.gradient_checkpointing = False\n\n        self.initialize_weights()\n\n    def initialize_weights(self) -> None:\n        \"\"\"\n        Initialize the weights of the model.\n\n        Uses Xavier uniform initialization for linear layers.\n        \"\"\"\n        nn.init.xavier_uniform_(self.x_embedder.weight)\n        nn.init.constant_(self.x_embedder.bias, 0.0)\n\n        nn.init.xavier_uniform_(self.ref_image_patch_embedder.weight)\n        nn.init.constant_(self.ref_image_patch_embedder.bias, 0.0)\n\n        nn.init.zeros_(self.norm_out.linear_1.weight)\n        nn.init.zeros_(self.norm_out.linear_1.bias)\n        nn.init.zeros_(self.norm_out.linear_2.weight)\n        nn.init.zeros_(self.norm_out.linear_2.bias)\n\n        nn.init.normal_(self.image_index_embedding, std=0.02)\n\n    def img_patch_embed_and_refine(\n        self,\n        hidden_states,\n        ref_image_hidden_states,\n        padded_img_mask,\n        padded_ref_img_mask,\n        noise_rotary_emb,\n        ref_img_rotary_emb,\n        l_effective_ref_img_len,\n        l_effective_img_len,\n        temb\n    ):\n        batch_size = len(hidden_states)\n        max_combined_img_len = max([img_len + sum(ref_img_len) for img_len, ref_img_len in zip(l_effective_img_len, l_effective_ref_img_len)])\n\n        hidden_states = self.x_embedder(hidden_states)\n        ref_image_hidden_states = self.ref_image_patch_embedder(ref_image_hidden_states)\n\n        for i in range(batch_size):\n            shift = 0\n            for j, ref_img_len in enumerate(l_effective_ref_img_len[i]):\n                ref_image_hidden_states[i, shift:shift + ref_img_len, :] = ref_image_hidden_states[i, shift:shift + ref_img_len, :] + self.image_index_embedding[j]\n                shift += ref_img_len\n\n        for layer in self.noise_refiner:\n            hidden_states = layer(hidden_states, padded_img_mask, noise_rotary_emb, temb)\n\n        flat_l_effective_ref_img_len = list(itertools.chain(*l_effective_ref_img_len))\n        num_ref_images = len(flat_l_effective_ref_img_len)\n        max_ref_img_len = max(flat_l_effective_ref_img_len)\n\n        batch_ref_img_mask = ref_image_hidden_states.new_zeros(num_ref_images, max_ref_img_len, dtype=torch.bool)\n        batch_ref_image_hidden_states = ref_image_hidden_states.new_zeros(num_ref_images, max_ref_img_len, self.config.hidden_size)\n        batch_ref_img_rotary_emb = hidden_states.new_zeros(num_ref_images, max_ref_img_len, ref_img_rotary_emb.shape[-1], dtype=ref_img_rotary_emb.dtype)\n        batch_temb = temb.new_zeros(num_ref_images, *temb.shape[1:], dtype=temb.dtype)\n\n        # sequence of ref imgs to batch\n        idx = 0\n        for i in range(batch_size):\n            shift = 0\n            for ref_img_len in l_effective_ref_img_len[i]:\n                batch_ref_img_mask[idx, :ref_img_len] = True\n                batch_ref_image_hidden_states[idx, :ref_img_len] = ref_image_hidden_states[i, shift:shift + ref_img_len]\n                batch_ref_img_rotary_emb[idx, :ref_img_len] = ref_img_rotary_emb[i, shift:shift + ref_img_len]\n                batch_temb[idx] = temb[i]\n                shift += ref_img_len\n                idx += 1\n\n        # refine ref imgs separately\n        for layer in self.ref_image_refiner:\n            batch_ref_image_hidden_states = layer(batch_ref_image_hidden_states, batch_ref_img_mask, batch_ref_img_rotary_emb, batch_temb)\n\n        # batch of ref imgs to sequence\n        idx = 0\n        for i in range(batch_size):\n            shift = 0\n            for ref_img_len in l_effective_ref_img_len[i]:\n                ref_image_hidden_states[i, shift:shift + ref_img_len] = batch_ref_image_hidden_states[idx, :ref_img_len]\n                shift += ref_img_len\n                idx += 1\n\n        combined_img_hidden_states = hidden_states.new_zeros(batch_size, max_combined_img_len, self.config.hidden_size)\n        for i, (ref_img_len, img_len) in enumerate(zip(l_effective_ref_img_len, l_effective_img_len)):\n            combined_img_hidden_states[i, :sum(ref_img_len)] = ref_image_hidden_states[i, :sum(ref_img_len)]\n            combined_img_hidden_states[i, sum(ref_img_len):sum(ref_img_len) + img_len] = hidden_states[i, :img_len]\n\n        return combined_img_hidden_states\n\n    def flat_and_pad_to_seq(self, hidden_states, ref_image_hidden_states):\n        batch_size = len(hidden_states)\n        p = self.config.patch_size\n        device = hidden_states[0].device\n\n        img_sizes = [(img.size(1), img.size(2)) for img in hidden_states]\n        l_effective_img_len = [(H // p) * (W // p) for (H, W) in img_sizes]\n\n        if ref_image_hidden_states is not None:\n            ref_img_sizes = [[(img.size(1), img.size(2)) for img in imgs] if imgs is not None else None for imgs in ref_image_hidden_states]\n            l_effective_ref_img_len = [[(ref_img_size[0] // p) * (ref_img_size[1] // p) for ref_img_size in _ref_img_sizes] if _ref_img_sizes is not None else [0] for _ref_img_sizes in ref_img_sizes]\n        else:\n            ref_img_sizes = [None for _ in range(batch_size)]\n            l_effective_ref_img_len = [[0] for _ in range(batch_size)]\n\n        max_ref_img_len = max([sum(ref_img_len) for ref_img_len in l_effective_ref_img_len])\n        max_img_len = max(l_effective_img_len)\n\n        # ref image patch embeddings\n        flat_ref_img_hidden_states = []\n        for i in range(batch_size):\n            if ref_img_sizes[i] is not None:\n                imgs = []\n                for ref_img in ref_image_hidden_states[i]:\n                    C, H, W = ref_img.size()\n                    ref_img = rearrange(ref_img, 'c (h p1) (w p2) -> (h w) (p1 p2 c)', p1=p, p2=p)\n                    imgs.append(ref_img)\n\n                img = torch.cat(imgs, dim=0)\n                flat_ref_img_hidden_states.append(img)\n            else:\n                flat_ref_img_hidden_states.append(None)\n\n        # image patch embeddings\n        flat_hidden_states = []\n        for i in range(batch_size):\n            img = hidden_states[i]\n            C, H, W = img.size()\n\n            img = rearrange(img, 'c (h p1) (w p2) -> (h w) (p1 p2 c)', p1=p, p2=p)\n            flat_hidden_states.append(img)\n\n        padded_ref_img_hidden_states = torch.zeros(batch_size, max_ref_img_len, flat_hidden_states[0].shape[-1], device=device, dtype=flat_hidden_states[0].dtype)\n        padded_ref_img_mask = torch.zeros(batch_size, max_ref_img_len, dtype=torch.bool, device=device)\n        for i in range(batch_size):\n            if ref_img_sizes[i] is not None:\n                padded_ref_img_hidden_states[i, :sum(l_effective_ref_img_len[i])] = flat_ref_img_hidden_states[i]\n                padded_ref_img_mask[i, :sum(l_effective_ref_img_len[i])] = True\n\n        padded_hidden_states = torch.zeros(batch_size, max_img_len, flat_hidden_states[0].shape[-1], device=device, dtype=flat_hidden_states[0].dtype)\n        padded_img_mask = torch.zeros(batch_size, max_img_len, dtype=torch.bool, device=device)\n        for i in range(batch_size):\n            padded_hidden_states[i, :l_effective_img_len[i]] = flat_hidden_states[i]\n            padded_img_mask[i, :l_effective_img_len[i]] = True\n\n        return (\n            padded_hidden_states,\n            padded_ref_img_hidden_states,\n            padded_img_mask,\n            padded_ref_img_mask,\n            l_effective_ref_img_len,\n            l_effective_img_len,\n            ref_img_sizes,\n            img_sizes,\n        )\n\n    def forward(\n        self,\n        hidden_states: Union[torch.Tensor, List[torch.Tensor]],\n        timestep: torch.Tensor,\n        text_hidden_states: torch.Tensor,\n        freqs_cis: torch.Tensor,\n        text_attention_mask: torch.Tensor,\n        ref_image_hidden_states: Optional[List[List[torch.Tensor]]] = None,\n        attention_kwargs: Optional[Dict[str, Any]] = None,\n        return_dict: bool = False,\n    ) -> Union[torch.Tensor, Transformer2DModelOutput]:\n        if attention_kwargs is not None:\n            attention_kwargs = attention_kwargs.copy()\n            lora_scale = attention_kwargs.pop(\"scale\", 1.0)\n        else:\n            lora_scale = 1.0\n\n        if USE_PEFT_BACKEND:\n            # weight the lora layers by setting `lora_scale` for each PEFT layer\n            scale_lora_layers(self, lora_scale)\n        else:\n            if attention_kwargs is not None and attention_kwargs.get(\"scale\", None) is not None:\n                logger.warning(\n                    \"Passing `scale` via `attention_kwargs` when not using the PEFT backend is ineffective.\"\n                )\n\n        # 1. Condition, positional & patch embedding\n        batch_size = len(hidden_states)\n        is_hidden_states_tensor = isinstance(hidden_states, torch.Tensor)\n\n        if is_hidden_states_tensor:\n            assert hidden_states.ndim == 4\n            hidden_states = [_hidden_states for _hidden_states in hidden_states]\n\n        device = hidden_states[0].device\n\n        temb, text_hidden_states = self.time_caption_embed(timestep, text_hidden_states, hidden_states[0].dtype)\n\n        (\n            hidden_states,\n            ref_image_hidden_states,\n            img_mask,\n            ref_img_mask,\n            l_effective_ref_img_len,\n            l_effective_img_len,\n            ref_img_sizes,\n            img_sizes,\n        ) = self.flat_and_pad_to_seq(hidden_states, ref_image_hidden_states)\n\n        (\n            context_rotary_emb,\n            ref_img_rotary_emb,\n            noise_rotary_emb,\n            rotary_emb,\n            encoder_seq_lengths,\n            seq_lengths,\n        ) = self.rope_embedder(\n            freqs_cis,\n            text_attention_mask,\n            l_effective_ref_img_len,\n            l_effective_img_len,\n            ref_img_sizes,\n            img_sizes,\n            device,\n        )\n\n        # 2. Context refinement\n        for layer in self.context_refiner:\n            text_hidden_states = layer(text_hidden_states, text_attention_mask, context_rotary_emb)\n\n        combined_img_hidden_states = self.img_patch_embed_and_refine(\n            hidden_states,\n            ref_image_hidden_states,\n            img_mask,\n            ref_img_mask,\n            noise_rotary_emb,\n            ref_img_rotary_emb,\n            l_effective_ref_img_len,\n            l_effective_img_len,\n            temb,\n        )\n\n        # 3. Joint Transformer blocks\n        max_seq_len = max(seq_lengths)\n\n        attention_mask = hidden_states.new_zeros(batch_size, max_seq_len, dtype=torch.bool)\n        joint_hidden_states = hidden_states.new_zeros(batch_size, max_seq_len, self.config.hidden_size)\n        for i, (encoder_seq_len, seq_len) in enumerate(zip(encoder_seq_lengths, seq_lengths)):\n            attention_mask[i, :seq_len] = True\n            joint_hidden_states[i, :encoder_seq_len] = text_hidden_states[i, :encoder_seq_len]\n            joint_hidden_states[i, encoder_seq_len:seq_len] = combined_img_hidden_states[i, :seq_len - encoder_seq_len]\n\n        hidden_states = joint_hidden_states\n\n        for layer_idx, layer in enumerate(self.layers):\n            if torch.is_grad_enabled() and self.gradient_checkpointing:\n                hidden_states = self._gradient_checkpointing_func(\n                    layer, hidden_states, attention_mask, rotary_emb, temb\n                )\n            else:\n                hidden_states = layer(hidden_states, attention_mask, rotary_emb, temb)\n\n        # 4. Output norm & projection\n        hidden_states = self.norm_out(hidden_states, temb)\n\n        p = self.config.patch_size\n        output = []\n        for i, (img_size, img_len, seq_len) in enumerate(zip(img_sizes, l_effective_img_len, seq_lengths)):\n            height, width = img_size\n            output.append(rearrange(hidden_states[i][seq_len - img_len:seq_len], '(h w) (p1 p2 c) -> c (h p1) (w p2)', h=height // p, w=width // p, p1=p, p2=p))\n        if is_hidden_states_tensor:\n            output = torch.stack(output, dim=0)\n\n        if USE_PEFT_BACKEND:\n            # remove `lora_scale` from each PEFT layer\n            unscale_lora_layers(self, lora_scale)\n\n        if not return_dict:\n            return output\n        return Transformer2DModelOutput(sample=output)\n"
  },
  {
    "path": "pipelines/omnigen2/pipeline_omnigen2.py",
    "content": "\"\"\"\nOmniGen2 Diffusion Pipeline\n\nCopyright 2025 BAAI, The OmniGen2 Team and The HuggingFace Team. All rights reserved.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n    http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n\"\"\"\n\nfrom typing import Any, Dict, List, Optional, Tuple, Union\nfrom dataclasses import dataclass\nimport inspect\nimport numpy as np\nimport torch\nimport torch.nn.functional as F\nimport PIL.Image\n\nfrom transformers import Qwen2_5_VLForConditionalGeneration\nfrom diffusers.utils import BaseOutput\nfrom diffusers.models.autoencoders import AutoencoderKL\nfrom diffusers.schedulers import FlowMatchEulerDiscreteScheduler\nfrom diffusers.utils import (\n    is_torch_xla_available,\n    logging,\n)\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline\n\nfrom .models.transformers import OmniGen2Transformer2DModel\nfrom .models.transformers.repo import OmniGen2RotaryPosEmbed\nfrom .image_processor import OmniGen2ImageProcessor\n\nif is_torch_xla_available():\n    import torch_xla.core.xla_model as xm\n    XLA_AVAILABLE = True\nelse:\n    XLA_AVAILABLE = False\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n@dataclass\nclass FMPipelineOutput(BaseOutput):\n    \"\"\"\n    Output class for OmniGen2 pipeline.\n\n    Args:\n        images (Union[List[PIL.Image.Image], np.ndarray]):\n            List of denoised PIL images of length `batch_size` or numpy array of shape\n            `(batch_size, height, width, num_channels)`. Contains the generated images.\n    \"\"\"\n    images: Union[List[PIL.Image.Image], np.ndarray]\n\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.retrieve_timesteps\ndef retrieve_timesteps(\n    scheduler,\n    num_inference_steps: Optional[int] = None,\n    device: Optional[Union[str, torch.device]] = None,\n    timesteps: Optional[List[int]] = None,\n    **kwargs,\n):\n    \"\"\"\n    Calls the scheduler's `set_timesteps` method and retrieves timesteps from the scheduler after the call. Handles\n    custom timesteps. Any kwargs will be supplied to `scheduler.set_timesteps`.\n\n    Args:\n        scheduler (`SchedulerMixin`):\n            The scheduler to get timesteps from.\n        num_inference_steps (`int`):\n            The number of diffusion steps used when generating samples with a pre-trained model. If used, `timesteps`\n            must be `None`.\n        device (`str` or `torch.device`, *optional*):\n            The device to which the timesteps should be moved to. If `None`, the timesteps are not moved.\n        timesteps (`List[int]`, *optional*):\n            Custom timesteps used to override the timestep spacing strategy of the scheduler. If `timesteps` is passed,\n            `num_inference_steps` and `sigmas` must be `None`.\n        sigmas (`List[float]`, *optional*):\n            Custom sigmas used to override the timestep spacing strategy of the scheduler. If `sigmas` is passed,\n            `num_inference_steps` and `timesteps` must be `None`.\n\n    Returns:\n        `Tuple[torch.Tensor, int]`: A tuple where the first element is the timestep schedule from the scheduler and the\n        second element is the number of inference steps.\n    \"\"\"\n    if timesteps is not None:\n        accepts_timesteps = \"timesteps\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n        if not accepts_timesteps:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" timestep schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(timesteps=timesteps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    else:\n        scheduler.set_timesteps(num_inference_steps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n    return timesteps, num_inference_steps\n\n\nclass OmniGen2Pipeline(DiffusionPipeline):\n    \"\"\"\n    Pipeline for text-to-image generation using OmniGen2.\n\n    This pipeline implements a text-to-image generation model that uses:\n    - Qwen2.5-VL for text encoding\n    - A custom transformer architecture for image generation\n    - VAE for image encoding/decoding\n    - FlowMatchEulerDiscreteScheduler for noise scheduling\n\n    Args:\n        transformer (OmniGen2Transformer2DModel): The transformer model for image generation.\n        vae (AutoencoderKL): The VAE model for image encoding/decoding.\n        scheduler (FlowMatchEulerDiscreteScheduler): The scheduler for noise scheduling.\n        text_encoder (Qwen2_5_VLModel): The text encoder model.\n        tokenizer (Union[Qwen2Tokenizer, Qwen2TokenizerFast]): The tokenizer for text processing.\n    \"\"\"\n\n    model_cpu_offload_seq = \"mllm->transformer->vae\"\n\n    def __init__(\n        self,\n        transformer: OmniGen2Transformer2DModel,\n        vae: AutoencoderKL,\n        scheduler: FlowMatchEulerDiscreteScheduler,\n        mllm: Qwen2_5_VLForConditionalGeneration,\n        processor,\n    ) -> None:\n        \"\"\"\n        Initialize the OmniGen2 pipeline.\n\n        Args:\n            transformer: The transformer model for image generation.\n            vae: The VAE model for image encoding/decoding.\n            scheduler: The scheduler for noise scheduling.\n            text_encoder: The text encoder model.\n            tokenizer: The tokenizer for text processing.\n        \"\"\"\n        super().__init__()\n\n        self.register_modules(\n            transformer=transformer,\n            vae=vae,\n            scheduler=scheduler,\n            mllm=mllm,\n            processor=processor\n        )\n        self.vae_scale_factor = (\n            2 ** (len(self.vae.config.block_out_channels) - 1) if hasattr(self, \"vae\") and self.vae is not None else 8\n        )\n        self.image_processor = OmniGen2ImageProcessor(vae_scale_factor=self.vae_scale_factor * 2, do_resize=True)\n        self.default_sample_size = 128\n\n    def prepare_latents(\n        self,\n        batch_size: int,\n        num_channels_latents: int,\n        height: int,\n        width: int,\n        dtype: torch.dtype,\n        device: torch.device,\n        generator: Optional[torch.Generator],\n        latents: Optional[torch.FloatTensor] = None,\n    ) -> torch.FloatTensor:\n        \"\"\"\n        Prepare the initial latents for the diffusion process.\n\n        Args:\n            batch_size: The number of images to generate.\n            num_channels_latents: The number of channels in the latent space.\n            height: The height of the generated image.\n            width: The width of the generated image.\n            dtype: The data type of the latents.\n            device: The device to place the latents on.\n            generator: The random number generator to use.\n            latents: Optional pre-computed latents to use instead of random initialization.\n\n        Returns:\n            torch.FloatTensor: The prepared latents tensor.\n        \"\"\"\n        height = int(height) // self.vae_scale_factor\n        width = int(width) // self.vae_scale_factor\n\n        shape = (batch_size, num_channels_latents, height, width)\n\n        if latents is None:\n            latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n        else:\n            latents = latents.to(device)\n        return latents\n\n    def encode_vae(self, img: torch.FloatTensor) -> torch.FloatTensor:\n        \"\"\"\n        Encode an image into the VAE latent space.\n\n        Args:\n            img: The input image tensor to encode.\n\n        Returns:\n            torch.FloatTensor: The encoded latent representation.\n        \"\"\"\n        z0 = self.vae.encode(img.to(dtype=self.vae.dtype)).latent_dist.sample()\n        if self.vae.config.shift_factor is not None:\n            z0 = z0 - self.vae.config.shift_factor\n        if self.vae.config.scaling_factor is not None:\n            z0 = z0 * self.vae.config.scaling_factor\n        z0 = z0.to(dtype=self.vae.dtype)\n        return z0\n\n    def prepare_image(\n        self,\n        images: Union[List[PIL.Image.Image], PIL.Image.Image],\n        batch_size: int,\n        num_images_per_prompt: int,\n        max_pixels: int,\n        max_side_length: int,\n        device: torch.device,\n        dtype: torch.dtype,\n    ) -> List[Optional[torch.FloatTensor]]:\n        \"\"\"\n        Prepare input images for processing by encoding them into the VAE latent space.\n\n        Args:\n            images: Single image or list of images to process.\n            batch_size: The number of images to generate per prompt.\n            num_images_per_prompt: The number of images to generate for each prompt.\n            device: The device to place the encoded latents on.\n            dtype: The data type of the encoded latents.\n\n        Returns:\n            List[Optional[torch.FloatTensor]]: List of encoded latent representations for each image.\n        \"\"\"\n        if batch_size == 1:\n            images = [images]\n        latents = []\n        for i, img in enumerate(images):\n            if img is not None and len(img) > 0:\n                ref_latents = []\n                for j, img_j in enumerate(img):\n                    img_j = self.image_processor.preprocess(img_j, max_pixels=max_pixels, max_side_length=max_side_length)\n                    ref_latents.append(self.encode_vae(img_j.to(device=device)).squeeze(0))\n            else:\n                ref_latents = None\n            for _ in range(num_images_per_prompt):\n                latents.append(ref_latents)\n\n        return latents\n\n    def _get_qwen2_prompt_embeds(\n        self,\n        prompt: Union[str, List[str]],\n        device: Optional[torch.device] = None,\n        max_sequence_length: int = 256,\n    ) -> Tuple[torch.Tensor, torch.Tensor]:\n        \"\"\"\n        Get prompt embeddings from the Qwen2 text encoder.\n\n        Args:\n            prompt: The prompt or list of prompts to encode.\n            device: The device to place the embeddings on. If None, uses the pipeline's device.\n            max_sequence_length: Maximum sequence length for tokenization.\n\n        Returns:\n            Tuple[torch.Tensor, torch.Tensor]: A tuple containing:\n                - The prompt embeddings tensor\n                - The attention mask tensor\n\n        Raises:\n            Warning: If the input text is truncated due to sequence length limitations.\n        \"\"\"\n        device = device or self._execution_device\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n        # text_inputs = self.processor.tokenizer(\n        #     prompt,\n        #     padding=\"max_length\",\n        #     max_length=max_sequence_length,\n        #     truncation=True,\n        #     return_tensors=\"pt\",\n        # )\n        text_inputs = self.processor.tokenizer(\n            prompt,\n            padding=\"longest\",\n            max_length=max_sequence_length,\n            truncation=True,\n            return_tensors=\"pt\",\n        )\n\n        text_input_ids = text_inputs.input_ids.to(device)\n        untruncated_ids = self.processor.tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids.to(device)\n\n        if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(text_input_ids, untruncated_ids):\n            removed_text = self.processor.tokenizer.batch_decode(untruncated_ids[:, max_sequence_length - 1 : -1])\n            logger.warning(\n                \"The following part of your input was truncated because Gemma can only handle sequences up to\"\n                f\" {max_sequence_length} tokens: {removed_text}\"\n            )\n\n        prompt_attention_mask = text_inputs.attention_mask.to(device)\n        prompt_embeds = self.mllm(\n            text_input_ids,\n            attention_mask=prompt_attention_mask,\n            output_hidden_states=True,\n        ).hidden_states[-1]\n\n        if self.mllm is not None:\n            dtype = self.mllm.dtype\n        elif self.transformer is not None:\n            dtype = self.transformer.dtype\n        else:\n            dtype = None\n\n        prompt_embeds = prompt_embeds.to(dtype=dtype, device=device)\n\n        return prompt_embeds, prompt_attention_mask\n\n    def _apply_chat_template(self, prompt: str):\n        prompt = [\n            {\n                \"role\": \"system\",\n                \"content\": \"You are a helpful assistant that generates high-quality images based on user instructions.\",\n            },\n            {\"role\": \"user\", \"content\": prompt},\n        ]\n        prompt = self.processor.tokenizer.apply_chat_template(prompt, tokenize=False, add_generation_prompt=False)\n        return prompt\n\n    def encode_prompt(\n        self,\n        prompt: Union[str, List[str]],\n        do_classifier_free_guidance: bool = True,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: int = 1,\n        device: Optional[torch.device] = None,\n        prompt_embeds: Optional[torch.Tensor] = None,\n        negative_prompt_embeds: Optional[torch.Tensor] = None,\n        prompt_attention_mask: Optional[torch.Tensor] = None,\n        negative_prompt_attention_mask: Optional[torch.Tensor] = None,\n        max_sequence_length: int = 256,\n    ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor]:\n        r\"\"\"\n        Encodes the prompt into text encoder hidden states.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                prompt to be encoded\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt not to guide the image generation. If not defined, one has to pass `negative_prompt_embeds`\n                instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is less than `1`). For\n                Lumina-T2I, this should be \"\".\n            do_classifier_free_guidance (`bool`, *optional*, defaults to `True`):\n                whether to use classifier free guidance or not\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                number of images that should be generated per prompt\n            device: (`torch.device`, *optional*):\n                torch device to place the resulting embeddings on\n            prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated negative text embeddings. For Lumina-T2I, it's should be the embeddings of the \"\" string.\n            max_sequence_length (`int`, defaults to `256`):\n                Maximum sequence length to use for the prompt.\n        \"\"\"\n        device = device or self._execution_device\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n        prompt = [self._apply_chat_template(_prompt) for _prompt in prompt]\n\n        if prompt is not None:\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n        if prompt_embeds is None:\n            prompt_embeds, prompt_attention_mask = self._get_qwen2_prompt_embeds(\n                prompt=prompt,\n                device=device,\n                max_sequence_length=max_sequence_length\n            )\n\n        batch_size, seq_len, _ = prompt_embeds.shape\n        # duplicate text embeddings and attention mask for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n        prompt_attention_mask = prompt_attention_mask.repeat(num_images_per_prompt, 1)\n        prompt_attention_mask = prompt_attention_mask.view(batch_size * num_images_per_prompt, -1)\n\n        # Get negative embeddings for classifier free guidance\n        if do_classifier_free_guidance and negative_prompt_embeds is None:\n            negative_prompt = negative_prompt if negative_prompt is not None else \"\"\n\n            # Normalize str to list\n            negative_prompt = batch_size * [negative_prompt] if isinstance(negative_prompt, str) else negative_prompt\n            negative_prompt = [self._apply_chat_template(_negative_prompt) for _negative_prompt in negative_prompt]\n\n            if prompt is not None and type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif isinstance(negative_prompt, str):\n                negative_prompt = [negative_prompt]\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n            negative_prompt_embeds, negative_prompt_attention_mask = self._get_qwen2_prompt_embeds(\n                prompt=negative_prompt,\n                device=device,\n                max_sequence_length=max_sequence_length,\n            )\n\n            batch_size, seq_len, _ = negative_prompt_embeds.shape\n            # duplicate text embeddings and attention mask for each generation per prompt, using mps friendly method\n            negative_prompt_embeds = negative_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds = negative_prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n            negative_prompt_attention_mask = negative_prompt_attention_mask.repeat(num_images_per_prompt, 1)\n            negative_prompt_attention_mask = negative_prompt_attention_mask.view(\n                batch_size * num_images_per_prompt, -1\n            )\n\n        return prompt_embeds, prompt_attention_mask, negative_prompt_embeds, negative_prompt_attention_mask\n\n    @property\n    def num_timesteps(self):\n        return self._num_timesteps\n\n    @property\n    def text_guidance_scale(self):\n        return self._text_guidance_scale\n\n    @property\n    def image_guidance_scale(self):\n        return self._image_guidance_scale\n\n    @property\n    def cfg_range(self):\n        return self._cfg_range\n\n    @torch.no_grad()\n    def __call__(\n        self,\n        prompt: Optional[Union[str, List[str]]] = None,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        prompt_attention_mask: Optional[torch.LongTensor] = None,\n        negative_prompt_attention_mask: Optional[torch.LongTensor] = None,\n        max_sequence_length: Optional[int] = None,\n        callback_on_step_end_tensor_inputs: Optional[List[str]] = None,\n        input_images: Optional[List[PIL.Image.Image]] = None,\n        num_images_per_prompt: int = 1,\n        height: Optional[int] = None,\n        width: Optional[int] = None,\n        max_pixels: int = 2048 * 2048,\n        max_input_image_side_length: int = 2048,\n        align_res: bool = True,\n        num_inference_steps: int = 28,\n        text_guidance_scale: float = 4.0,\n        image_guidance_scale: float = 1.0,\n        cfg_range: Tuple[float, float] = (0.0, 1.0),\n        attention_kwargs: Optional[Dict[str, Any]] = None,\n        timesteps: List[int] = None,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.FloatTensor] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        verbose: bool = False,\n        step_func=None,\n    ):\n\n        height = height or self.default_sample_size * self.vae_scale_factor\n        width = width or self.default_sample_size * self.vae_scale_factor\n\n        self._text_guidance_scale = text_guidance_scale\n        self._image_guidance_scale = image_guidance_scale\n        self._cfg_range = cfg_range\n        self._attention_kwargs = attention_kwargs\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        device = self._execution_device\n\n        # 3. Encode input prompt\n        (\n            prompt_embeds,\n            prompt_attention_mask,\n            negative_prompt_embeds,\n            negative_prompt_attention_mask,\n        ) = self.encode_prompt(\n            prompt,\n            self.text_guidance_scale > 1.0,\n            negative_prompt=negative_prompt,\n            num_images_per_prompt=num_images_per_prompt,\n            device=device,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            prompt_attention_mask=prompt_attention_mask,\n            negative_prompt_attention_mask=negative_prompt_attention_mask,\n            max_sequence_length=max_sequence_length,\n        )\n\n        dtype = self.vae.dtype\n        # 3. Prepare control image\n        ref_latents = self.prepare_image(\n            images=input_images,\n            batch_size=batch_size,\n            num_images_per_prompt=num_images_per_prompt,\n            max_pixels=max_pixels,\n            max_side_length=max_input_image_side_length,\n            device=device,\n            dtype=dtype,\n        )\n\n        if input_images is None:\n            input_images = []\n\n        if len(input_images) == 1 and align_res:\n            width, height = ref_latents[0][0].shape[-1] * self.vae_scale_factor, ref_latents[0][0].shape[-2] * self.vae_scale_factor\n            ori_width, ori_height = width, height\n        else:\n            ori_width, ori_height = width, height\n\n            cur_pixels = height * width\n            ratio = (max_pixels / cur_pixels) ** 0.5\n            ratio = min(ratio, 1.0)\n\n            height, width = int(height * ratio) // 16 * 16, int(width * ratio) // 16 * 16\n\n        if len(input_images) == 0:\n            self._image_guidance_scale = 1\n\n        # 4. Prepare latents.\n        latent_channels = self.transformer.config.in_channels\n        latents = self.prepare_latents(\n            batch_size * num_images_per_prompt,\n            latent_channels,\n            height,\n            width,\n            prompt_embeds.dtype,\n            device,\n            generator,\n            latents,\n        )\n\n        freqs_cis = OmniGen2RotaryPosEmbed.get_freqs_cis(\n            self.transformer.config.axes_dim_rope,\n            self.transformer.config.axes_lens,\n            theta=10000,\n        )\n\n        image = self.processing(\n            latents=latents,\n            ref_latents=ref_latents,\n            prompt_embeds=prompt_embeds,\n            freqs_cis=freqs_cis,\n            negative_prompt_embeds=negative_prompt_embeds,\n            prompt_attention_mask=prompt_attention_mask,\n            negative_prompt_attention_mask=negative_prompt_attention_mask,\n            num_inference_steps=num_inference_steps,\n            timesteps=timesteps,\n            device=device,\n            dtype=dtype,\n            verbose=verbose,\n            step_func=step_func,\n        )\n\n        image = F.interpolate(image, size=(ori_height, ori_width), mode='bilinear')\n\n        image = self.image_processor.postprocess(image, output_type=output_type)\n\n        # Offload all models\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return image\n        else:\n            return FMPipelineOutput(images=image)\n\n    def processing(\n        self,\n        latents,\n        ref_latents,\n        prompt_embeds,\n        freqs_cis,\n        negative_prompt_embeds,\n        prompt_attention_mask,\n        negative_prompt_attention_mask,\n        num_inference_steps,\n        timesteps,\n        device,\n        dtype,\n        verbose,\n        step_func=None\n    ):\n        batch_size = latents.shape[0]\n\n        timesteps, num_inference_steps = retrieve_timesteps(\n            self.scheduler,\n            num_inference_steps,\n            device,\n            timesteps,\n            num_tokens=latents.shape[-2] * latents.shape[-1]\n        )\n        num_warmup_steps = max(len(timesteps) - num_inference_steps * self.scheduler.order, 0)\n        self._num_timesteps = len(timesteps)\n\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                model_pred = self.predict(\n                    t=t,\n                    latents=latents,\n                    prompt_embeds=prompt_embeds,\n                    freqs_cis=freqs_cis,\n                    prompt_attention_mask=prompt_attention_mask,\n                    ref_image_hidden_states=ref_latents,\n                )\n                text_guidance_scale = self.text_guidance_scale if self.cfg_range[0] <= i / len(timesteps) <= self.cfg_range[1] else 1.0\n                image_guidance_scale = self.image_guidance_scale if self.cfg_range[0] <= i / len(timesteps) <= self.cfg_range[1] else 1.0\n\n                if text_guidance_scale > 1.0 and image_guidance_scale > 1.0:\n                    model_pred_ref = self.predict(\n                        t=t,\n                        latents=latents,\n                        prompt_embeds=negative_prompt_embeds,\n                        freqs_cis=freqs_cis,\n                        prompt_attention_mask=negative_prompt_attention_mask,\n                        ref_image_hidden_states=ref_latents,\n                    )\n\n                    if image_guidance_scale != 1:\n                        model_pred_uncond = self.predict(\n                            t=t,\n                            latents=latents,\n                            prompt_embeds=negative_prompt_embeds,\n                            freqs_cis=freqs_cis,\n                            prompt_attention_mask=negative_prompt_attention_mask,\n                            ref_image_hidden_states=None,\n                        )\n                    else:\n                        model_pred_uncond = torch.zeros_like(model_pred)\n\n                    model_pred = model_pred_uncond + image_guidance_scale * (model_pred_ref - model_pred_uncond) + \\\n                    text_guidance_scale * (model_pred - model_pred_ref)\n                elif text_guidance_scale > 1.0:\n                    model_pred_uncond = self.predict(\n                        t=t,\n                        latents=latents,\n                        prompt_embeds=negative_prompt_embeds,\n                        freqs_cis=freqs_cis,\n                        prompt_attention_mask=negative_prompt_attention_mask,\n                        ref_image_hidden_states=None,\n                    )\n                    model_pred = model_pred_uncond + text_guidance_scale * (model_pred - model_pred_uncond)\n\n                latents = self.scheduler.step(model_pred, t, latents, return_dict=False)[0]\n\n                latents = latents.to(dtype=dtype)\n\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n\n                if step_func is not None:\n                    step_func(i, self._num_timesteps)\n\n        latents = latents.to(dtype=dtype)\n        if self.vae.config.scaling_factor is not None:\n            latents = latents / self.vae.config.scaling_factor\n        if self.vae.config.shift_factor is not None:\n            latents = latents + self.vae.config.shift_factor\n        image = self.vae.decode(latents, return_dict=False)[0]\n\n        return image\n\n    def predict(\n        self,\n        t,\n        latents,\n        prompt_embeds,\n        freqs_cis,\n        prompt_attention_mask,\n        ref_image_hidden_states,\n    ):\n        # broadcast to batch dimension in a way that's compatible with ONNX/Core ML\n        timestep = t.expand(latents.shape[0]).to(latents.dtype)\n\n        batch_size, num_channels_latents, height, width = latents.shape\n\n        optional_kwargs = {}\n        if 'ref_image_hidden_states' in set(inspect.signature(self.transformer.forward).parameters.keys()):\n            optional_kwargs['ref_image_hidden_states'] = ref_image_hidden_states\n\n        model_pred = self.transformer(\n            latents,\n            timestep,\n            prompt_embeds,\n            freqs_cis,\n            prompt_attention_mask,\n            **optional_kwargs\n        )\n        return model_pred\n"
  },
  {
    "path": "pipelines/qwen/__init__.py",
    "content": "from pipelines.qwen.qwen_nunchaku import load_qwen_nunchaku\nfrom pipelines.qwen.qwen_pruning import check_qwen_pruning\n"
  },
  {
    "path": "pipelines/qwen/qwen_nunchaku.py",
    "content": "from modules import shared, devices\n\n\ndef load_qwen_nunchaku(repo_id):\n    import nunchaku\n    nunchaku_precision = nunchaku.utils.get_precision()\n    nunchaku_repo = None\n    transformer = None\n    try:\n        from nunchaku.models.transformers.transformer_qwenimage import NunchakuQwenImageTransformer2DModel\n    except Exception:\n        shared.log.error(f'Load module: quant=Nunchaku module=transformer repo=\"{repo_id}\" low nunchaku version')\n        return None\n    if 'pruning' in repo_id.lower() or 'distill' in repo_id.lower():\n        return None\n    elif repo_id.lower().endswith('qwen-image'):\n        nunchaku_repo = f\"nunchaku-tech/nunchaku-qwen-image/svdq-{nunchaku_precision}_r128-qwen-image.safetensors\" # r32 vs r128\n    elif repo_id.lower().endswith('qwen-lightning'):\n        nunchaku_repo = f\"nunchaku-tech/nunchaku-qwen-image/svdq-{nunchaku_precision}_r128-qwen-image-lightningv1.1-8steps.safetensors\" # 8-step variant\n    elif repo_id.lower().endswith('qwen-image-edit-2509'):\n        nunchaku_repo = f\"nunchaku-tech/nunchaku-qwen-image-edit-2509/svdq-{nunchaku_precision}_r128-qwen-image-edit-2509.safetensors\" # 8-step variant\n    elif repo_id.lower().endswith('qwen-image-edit'):\n        nunchaku_repo = f\"nunchaku-tech/nunchaku-qwen-image-edit/svdq-{nunchaku_precision}_r128-qwen-image-edit.safetensors\" # 8-step variant\n    elif repo_id.lower().endswith('qwen-lightning-edit'):\n        nunchaku_repo = f\"nunchaku-tech/nunchaku-qwen-image-edit/svdq-{nunchaku_precision}_r128-qwen-image-edit-lightningv1.0-8steps.safetensors\" # 8-step variant\n    else:\n        shared.log.error(f'Load module: quant=Nunchaku module=transformer repo=\"{repo_id}\" unsupported')\n    if nunchaku_repo is not None:\n        shared.log.debug(f'Load module: quant=Nunchaku module=transformer repo=\"{nunchaku_repo}\" precision={nunchaku_precision} offload={shared.opts.nunchaku_offload} attention={shared.opts.nunchaku_attention}')\n        transformer = NunchakuQwenImageTransformer2DModel.from_pretrained(\n            nunchaku_repo,\n            offload=shared.opts.nunchaku_offload,\n            torch_dtype=devices.dtype,\n            cache_dir=shared.opts.hfcache_dir,\n        ) # pylint: disable=no-member\n        transformer.quantization_method = 'SVDQuant'\n    return transformer\n"
  },
  {
    "path": "pipelines/qwen/qwen_pruning.py",
    "content": "def check_qwen_pruning(repo_id, subfolder):\n    from modules.shared import log\n    if 'pruning' not in repo_id.lower():\n        return repo_id, subfolder\n    if '2509' in (repo_id or '') or '2509' in (subfolder or ''):\n        repo_id, subfolder = \"Qwen/Qwen-Image-Edit-2509\", None\n    elif 'Edit' in (repo_id or '') or 'Edit' in (subfolder or ''):\n        repo_id, subfolder = \"Qwen/Qwen-Image-Edit\", None\n    else:\n        repo_id, subfolder = \"Qwen/Qwen-Image\", None\n    log.debug(f'Load model: variant=pruning target=\"{repo_id}\"')\n    return repo_id, subfolder\n"
  },
  {
    "path": "pipelines/segmoe/segmoe_model.py",
    "content": "import gc\nfrom collections import OrderedDict\nfrom typing import Any, Dict, Callable\nimport os\nfrom copy import deepcopy\nfrom math import ceil\nimport json\nimport safetensors\nimport torch\nimport torch.nn as nn\nimport torch.nn.functional as F\nfrom diffusers import (\n    DiffusionPipeline,\n    StableDiffusionPipeline,\n    StableDiffusionXLPipeline,\n    DDPMScheduler,\n    UNet2DConditionModel,\n)\nimport tqdm\nimport yaml\n\n\ndef remove_all_forward_hooks(model: torch.nn.Module) -> None:\n    for _name, child in model._modules.items(): # pylint: disable=protected-access\n        if child is not None:\n            if hasattr(child, \"_forward_hooks\"):\n                child._forward_hooks = OrderedDict()\n            remove_all_forward_hooks(child)\n\n\n# Inspired from transformers.models.mixtral.modeling_mixtral.MixtralSparseMoeBlock\nclass SparseMoeBlock(nn.Module):\n    def __init__(self, config, experts):\n        super().__init__()\n        self.hidden_dim = config[\"hidden_size\"]\n        self.num_experts = config[\"num_local_experts\"]\n        self.top_k = config[\"num_experts_per_tok\"]\n        self.out_dim = config.get(\"out_dim\", self.hidden_dim)\n\n        # gating\n        self.gate = nn.Linear(self.hidden_dim, self.num_experts, bias=False)\n        self.experts = nn.ModuleList([deepcopy(exp) for exp in experts])\n\n    def forward(self, hidden_states: torch.Tensor, scale=None) -> torch.Tensor: # pylint: disable=unused-argument\n        batch_size, sequence_length, f_map_sz = hidden_states.shape\n        hidden_states = hidden_states.view(-1, f_map_sz)\n        # router_logits: (batch * sequence_length, n_experts)\n        router_logits = self.gate(hidden_states)\n        _, selected_experts = torch.topk(\n            router_logits.sum(dim=0, keepdim=True), self.top_k, dim=1\n        )\n        routing_weights = F.softmax(\n            router_logits[:, selected_experts[0]], dim=1, dtype=torch.float\n        )\n\n        # we cast back to the input dtype\n        routing_weights = routing_weights.to(hidden_states.dtype)\n\n        final_hidden_states = torch.zeros(\n            (batch_size * sequence_length, self.out_dim),\n            dtype=hidden_states.dtype,\n            device=hidden_states.device,\n        )\n\n        # Loop over all available experts in the model and perform the computation on each expert\n        for i, expert_idx in enumerate(selected_experts[0].tolist()):\n            expert_layer = self.experts[expert_idx]\n\n            current_hidden_states = routing_weights[:, i].view(\n                batch_size * sequence_length, -1\n            ) * expert_layer(hidden_states)\n\n            # However `index_add_` only support torch tensors for indexing so we'll use\n            # the `top_x` tensor here.\n            final_hidden_states = final_hidden_states + current_hidden_states\n        final_hidden_states = final_hidden_states.reshape(\n            batch_size, sequence_length, self.out_dim\n        )\n        return final_hidden_states\n\n\ndef getActivation(activation, name):\n    def hook(model, inp, output): # pylint: disable=unused-argument\n        activation[name] = inp\n\n    return hook\n\n\nclass SegMoEPipeline:\n    def __init__(self, config_or_path, **kwargs) -> Any:\n        \"\"\"\n        Instantiates the SegMoEPipeline. SegMoEPipeline implements the Segmind Mixture of Diffusion Experts, efficiently combining Stable Diffusion and Stable Diffusion Xl models.\n\n        Usage:\n\n        from segmoe import SegMoEPipeline\n        pipeline = SegMoEPipeline(config_or_path, **kwargs)\n\n        config_or_path: Path to Config or Directory containing SegMoE checkpoint or HF Card of SegMoE Checkpoint.\n\n        Other Keyword Arguments:\n        torch_dtype: Data Type to load the pipeline in. (Default: torch.float16)\n        variant: Variant of the Model. (Default: fp16)\n        device: Device to load the model on. (Default: cuda)\n        Other args supported by diffusers.DiffusionPipeline are also supported.\n\n        For more details visit https://github.com/segmind/segmoe.\n        \"\"\"\n        self.torch_dtype = kwargs.pop(\"torch_dtype\", torch.float16)\n        self.use_safetensors = kwargs.pop(\"use_safetensors\", True)\n        self.variant = kwargs.pop(\"variant\", \"fp16\")\n        self.device = kwargs.pop(\"device\", \"cuda\")\n        if os.path.isfile(config_or_path):\n            self.load_from_scratch(config_or_path, **kwargs)\n        else:\n            if not os.path.isdir(config_or_path):\n                cached_folder = DiffusionPipeline.download(config_or_path)\n            else:\n                cached_folder = config_or_path\n            unet = self.create_empty(cached_folder)\n            unet.load_state_dict(\n                safetensors.torch.load_file(\n                    f\"{cached_folder}/unet/diffusion_pytorch_model.safetensors\"\n                )\n            )\n            self.pipe = DiffusionPipeline.from_pretrained(\n                cached_folder,\n                unet=unet,\n                torch_dtype=self.torch_dtype,\n                use_safetensors=self.use_safetensors,\n            )\n            self.pipe.to(self.device)\n            self.pipe.unet.to(\n                device=self.device,\n                dtype=self.torch_dtype,\n                memory_format=torch.channels_last,\n            )\n\n    def to(self, *args, **kwargs):\n        self.pipe.to(*args, **kwargs)\n\n    def load_from_scratch(self, config: str, **kwargs) -> None:\n        # Load Config\n        with open(config, \"r\", encoding='utf8') as f:\n            config = yaml.load(f, Loader=yaml.SafeLoader)\n        self.config = config\n        if self.config.get(\"num_experts\", None):\n            self.num_experts = self.config[\"num_experts\"]\n        else:\n            if self.config.get(\"experts\", None):\n                self.num_experts = len(self.config[\"experts\"])\n            else:\n                if self.config.get(\"loras\", None):\n                    self.num_experts = len(self.config[\"loras\"])\n                else:\n                    self.num_experts = 1\n        num_experts_per_tok = self.config.get(\"num_experts_per_tok\", 1)\n        self.config[\"num_experts_per_tok\"] = num_experts_per_tok\n        moe_layers = self.config.get(\"moe_layers\", \"attn\")\n        self.config[\"moe_layers\"] = moe_layers\n        # Load Base Model\n        if self.config[\"base_model\"].startswith(\n            \"https://civitai.com/api/download/models/\"\n        ):\n            os.makedirs(\"base\", exist_ok=True)\n            if not os.path.isfile(\"base/model.safetensors\"):\n                os.system(\n                    \"wget -O \"\n                    + \"base/model.safetensors\"\n                    + self.config[\"base_model\"]\n                    + \" --content-disposition\"\n                )\n            self.config[\"base_model\"] = \"base/model.safetensors\"\n            self.pipe = DiffusionPipeline.from_single_file(\n                self.config[\"base_model\"], torch_dtype=self.torch_dtype\n            )\n        else:\n            try:\n                self.pipe = DiffusionPipeline.from_pretrained(\n                    self.config[\"base_model\"],\n                    torch_dtype=self.torch_dtype,\n                    use_safetensors=self.use_safetensors,\n                    variant=self.variant,\n                    **kwargs,\n                )\n            except Exception:\n                self.pipe = DiffusionPipeline.from_pretrained(\n                    self.config[\"base_model\"], torch_dtype=self.torch_dtype, **kwargs\n                )\n        if self.pipe.__class__ == StableDiffusionPipeline:\n            self.up_idx_start = 1\n            self.up_idx_end = len(self.pipe.unet.up_blocks)\n            self.down_idx_start = 0\n            self.down_idx_end = len(self.pipe.unet.down_blocks) - 1\n        elif self.pipe.__class__ == StableDiffusionXLPipeline:\n            self.up_idx_start = 0\n            self.up_idx_end = len(self.pipe.unet.up_blocks) - 1\n            self.down_idx_start = 1\n            self.down_idx_end = len(self.pipe.unet.down_blocks)\n        self.config[\"up_idx_start\"] = self.up_idx_start\n        self.config[\"up_idx_end\"] = self.up_idx_end\n        self.config[\"down_idx_start\"] = self.down_idx_start\n        self.config[\"down_idx_end\"] = self.down_idx_end\n\n        self.pipe.scheduler = DDPMScheduler.from_config(self.pipe.scheduler.config)\n\n        # Load Experts\n        experts = []\n        positive = []\n        negative = []\n        if self.config.get(\"experts\", None):\n            for i, exp in enumerate(self.config[\"experts\"]):\n                positive.append(exp[\"positive_prompt\"])\n                negative.append(exp[\"negative_prompt\"])\n                if exp[\"source_model\"].startswith(\n                    \"https://civitai.com/api/download/models/\"\n                ):\n                    try:\n                        if not os.path.isfile(f\"expert_{i}/model.safetensors\"):\n                            os.makedirs(f\"expert_{i}\", exist_ok=True)\n                            if not os.path.isfile(f\"expert_{i}/model.safetensors\"):\n                                os.system(\n                                    f\"wget {exp['source_model']} -O \"\n                                    + f\"expert_{i}/model.safetensors\"\n                                    + \" --content-disposition\"\n                                )\n                        exp[\"source_model\"] = f\"expert_{i}/model.safetensors\"\n                        expert = DiffusionPipeline.from_single_file(\n                            exp[\"source_model\"],\n                        ).to(self.device, self.torch_dtype)\n                    except Exception as e:\n                        print(f\"Expert {i} {exp['source_model']} failed to load\")\n                        print(\"Error:\", e)\n                else:\n                    try:\n                        expert = DiffusionPipeline.from_pretrained(\n                            exp[\"source_model\"],\n                            torch_dtype=self.torch_dtype,\n                            use_safetensors=self.use_safetensors,\n                            variant=self.variant,\n                            **kwargs,\n                        )\n\n                        expert.scheduler = DDPMScheduler.from_config(\n                            expert.scheduler.config\n                        )\n                    except Exception:\n                        expert = DiffusionPipeline.from_pretrained(\n                            exp[\"source_model\"], torch_dtype=self.torch_dtype, **kwargs\n                        )\n                        expert.scheduler = DDPMScheduler.from_config(\n                            expert.scheduler.config\n                        )\n                if exp.get(\"loras\", None):\n                    for j, lora in enumerate(exp[\"loras\"]):\n                        if lora.get(\"positive_prompt\", None):\n                            positive[-1] += \" \" + lora[\"positive_prompt\"]\n                        if lora.get(\"negative_prompt\", None):\n                            negative[-1] += \" \" + lora[\"negative_prompt\"]\n                        if lora[\"source_model\"].startswith(\n                            \"https://civitai.com/api/download/models/\"\n                        ):\n                            try:\n                                os.makedirs(f\"expert_{i}/lora_{i}\", exist_ok=True)\n                                if not os.path.isfile(\n                                    f\"expert_{i}/lora_{i}/pytorch_lora_weights.safetensors\"\n                                ):\n                                    os.system(\n                                        f\"wget {lora['source_model']} -O \"\n                                        + f\"expert_{i}/lora_{j}/pytorch_lora_weights.safetensors\"\n                                        + \" --content-disposition\"\n                                    )\n                                lora[\"source_model\"] = f\"expert_{j}/lora_{j}\"\n                                expert.load_lora_weights(lora[\"source_model\"])\n                                if len(exp[\"loras\"]) == 1:\n                                    expert.fuse_lora()\n                            except Exception as e:\n                                print(\n                                    f\"Expert{i} LoRA {j} {lora['source_model']} failed to load\"\n                                )\n                                print(\"Error:\", e)\n                        else:\n                            expert.load_lora_weights(lora[\"source_model\"])\n                            if len(exp[\"loras\"]) == 1:\n                                expert.fuse_lora()\n                experts.append(expert)\n        else:\n            experts = [deepcopy(self.pipe) for _ in range(self.num_experts)]\n        if self.config.get(\"experts\", None):\n            if self.config.get(\"loras\", None):\n                for i, lora in enumerate(self.config[\"loras\"]):\n                    if lora[\"source_model\"].startswith(\n                        \"https://civitai.com/api/download/models/\"\n                    ):\n                        try:\n                            os.makedirs(f\"lora_{i}\", exist_ok=True)\n                            if not os.path.isfile(\n                                f\"lora_{i}/pytorch_lora_weights.safetensors\"\n                            ):\n                                os.system(\n                                    f\"wget {lora['source_model']} -O \"\n                                    + f\"lora_{i}/pytorch_lora_weights.safetensors\"\n                                    + \" --content-disposition\"\n                                )\n                            lora[\"source_model\"] = f\"lora_{i}\"\n                            self.pipe.load_lora_weights(lora[\"source_model\"])\n                            if len(self.config[\"loras\"]) == 1:\n                                self.pipe.fuse_lora()\n                        except Exception as e:\n                            print(f\"LoRA {i} {lora['source_model']} failed to load\")\n                            print(\"Error:\", e)\n                    else:\n                        self.pipe.load_lora_weights(lora[\"source_model\"])\n                        if len(self.config[\"loras\"]) == 1:\n                            self.pipe.fuse_lora()\n        else:\n            if self.config.get(\"loras\", None):\n                j = []\n                n_loras = len(self.config[\"loras\"])\n                i = 0\n                positive = [\"\"] * len(experts)\n                negative = [\"\"] * len(experts)\n                while n_loras:\n                    n = ceil(n_loras / len(experts))\n                    j += [i] * n\n                    n_loras -= n\n                    i += 1\n                for i, lora in enumerate(self.config[\"loras\"]):\n                    positive[j[i]] += lora[\"positive_prompt\"] + \" \"\n                    negative[j[i]] += lora[\"negative_prompt\"] + \" \"\n                    if lora[\"source_model\"].startswith(\n                        \"https://civitai.com/api/download/models/\"\n                    ):\n                        try:\n                            os.makedirs(f\"lora_{i}\", exist_ok=True)\n                            if not os.path.isfile(\n                                f\"lora_{i}/pytorch_lora_weights.safetensors\"\n                            ):\n                                os.system(\n                                    f\"wget {lora['source_model']} -O \"\n                                    + f\"lora_{i}/pytorch_lora_weights.safetensors\"\n                                    + \" --content-disposition\"\n                                )\n                            lora[\"source_model\"] = f\"lora_{i}\"\n                            experts[j[i]].load_lora_weights(lora[\"source_model\"])\n                            experts[j[i]].fuse_lora()\n                        except Exception:\n                            print(f\"LoRA {i} {lora['source_model']} failed to load\")\n                    else:\n                        experts[j[i]].load_lora_weights(lora[\"source_model\"])\n                        experts[j[i]].fuse_lora()\n\n        # Replace FF and Attention Layers with Sparse MoE Layers\n        for i in range(self.down_idx_start, self.down_idx_end):\n            for j in range(len(self.pipe.unet.down_blocks[i].attentions)):\n                for k in range(\n                    len(self.pipe.unet.down_blocks[i].attentions[j].transformer_blocks)\n                ):\n                    if not moe_layers == \"attn\":\n                        config = {\n                            \"hidden_size\": next(\n                                self.pipe.unet.down_blocks[i]\n                                .attentions[j]\n                                .transformer_blocks[k]\n                                .ff.parameters()\n                            ).size()[-1],\n                            \"num_experts_per_tok\": num_experts_per_tok,\n                            \"num_local_experts\": len(experts),\n                        }\n                        # FF Layers\n                        layers = []\n                        for l in range(len(experts)):\n                            layers.append(\n                                deepcopy(\n                                    experts[l]\n                                    .unet.down_blocks[i]\n                                    .attentions[j]\n                                    .transformer_blocks[k]\n                                    .ff\n                                )\n                            )\n                        self.pipe.unet.down_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].ff = SparseMoeBlock(config, layers)\n                    if not moe_layers == \"ff\":\n                        ## Attns\n                        config = {\n                            \"hidden_size\": self.pipe.unet.down_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn1.to_q.weight.size()[-1],\n                            \"num_experts_per_tok\": num_experts_per_tok,\n                            \"num_local_experts\": self.num_experts,\n                        }\n                        layers = []\n                        for l in range(len(experts)):\n                            layers.append(\n                                deepcopy(\n                                    experts[l]\n                                    .unet.down_blocks[i]\n                                    .attentions[j]\n                                    .transformer_blocks[k]\n                                    .attn1.to_q\n                                )\n                            )\n                        self.pipe.unet.down_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].attn1.to_q = SparseMoeBlock(config, layers)\n\n                        layers = []\n                        for l in range(len(experts)):\n                            layers.append(\n                                deepcopy(\n                                    experts[l]\n                                    .unet.down_blocks[i]\n                                    .attentions[j]\n                                    .transformer_blocks[k]\n                                    .attn1.to_k\n                                )\n                            )\n                        self.pipe.unet.down_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].attn1.to_k = SparseMoeBlock(config, layers)\n\n                        layers = []\n                        for l in range(len(experts)):\n                            layers.append(\n                                deepcopy(\n                                    experts[l]\n                                    .unet.down_blocks[i]\n                                    .attentions[j]\n                                    .transformer_blocks[k]\n                                    .attn1.to_v\n                                )\n                            )\n                        self.pipe.unet.down_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].attn1.to_v = SparseMoeBlock(config, layers)\n\n                        config = {\n                            \"hidden_size\": self.pipe.unet.down_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn2.to_q.weight.size()[-1],\n                            \"num_experts_per_tok\": num_experts_per_tok,\n                            \"num_local_experts\": len(experts),\n                        }\n\n                        layers = []\n                        for l in range(len(experts)):\n                            layers.append(\n                                deepcopy(\n                                    experts[l]\n                                    .unet.down_blocks[i]\n                                    .attentions[j]\n                                    .transformer_blocks[k]\n                                    .attn2.to_q\n                                )\n                            )\n                        self.pipe.unet.down_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].attn2.to_q = SparseMoeBlock(config, layers)\n\n                        config = {\n                            \"hidden_size\": self.pipe.unet.down_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn2.to_k.weight.size()[-1],\n                            \"num_experts_per_tok\": num_experts_per_tok,\n                            \"num_local_experts\": len(experts),\n                            \"out_dim\": self.pipe.unet.down_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn2.to_k.weight.size()[0],\n                        }\n                        layers = []\n                        for l in range(len(experts)):\n                            layers.append(\n                                deepcopy(\n                                    experts[l]\n                                    .unet.down_blocks[i]\n                                    .attentions[j]\n                                    .transformer_blocks[k]\n                                    .attn2.to_k\n                                )\n                            )\n                        self.pipe.unet.down_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].attn2.to_k = SparseMoeBlock(config, layers)\n\n                        config = {\n                            \"hidden_size\": self.pipe.unet.down_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn2.to_v.weight.size()[-1],\n                            \"out_dim\": self.pipe.unet.down_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn2.to_v.weight.size()[0],\n                            \"num_experts_per_tok\": num_experts_per_tok,\n                            \"num_local_experts\": len(experts),\n                        }\n                        layers = []\n                        for l in range(len(experts)):\n                            layers.append(\n                                deepcopy(\n                                    experts[l]\n                                    .unet.down_blocks[i]\n                                    .attentions[j]\n                                    .transformer_blocks[k]\n                                    .attn2.to_v\n                                )\n                            )\n                        self.pipe.unet.down_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].attn2.to_v = SparseMoeBlock(config, layers)\n\n        for i in range(self.up_idx_start, self.up_idx_end):\n            for j in range(len(self.pipe.unet.up_blocks[i].attentions)):\n                for k in range(\n                    len(self.pipe.unet.up_blocks[i].attentions[j].transformer_blocks)\n                ):\n                    if not moe_layers == \"attn\":\n                        config = {\n                            \"hidden_size\": next(\n                                self.pipe.unet.up_blocks[i]\n                                .attentions[j]\n                                .transformer_blocks[k]\n                                .ff.parameters()\n                            ).size()[-1],\n                            \"num_experts_per_tok\": num_experts_per_tok,\n                            \"num_local_experts\": len(experts),\n                        }\n                        # FF Layers\n                        layers = []\n                        for l in range(len(experts)):\n                            layers.append(\n                                deepcopy(\n                                    experts[l]\n                                    .unet.up_blocks[i]\n                                    .attentions[j]\n                                    .transformer_blocks[k]\n                                    .ff\n                                )\n                            )\n                        self.pipe.unet.up_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].ff = SparseMoeBlock(config, layers)\n\n                    if not moe_layers == \"ff\":\n                        # Attns\n                        config = {\n                            \"hidden_size\": self.pipe.unet.up_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn1.to_q.weight.size()[-1],\n                            \"num_experts_per_tok\": num_experts_per_tok,\n                            \"num_local_experts\": len(experts),\n                        }\n\n                        layers = []\n                        for l in range(len(experts)):\n                            layers.append(\n                                deepcopy(\n                                    experts[l]\n                                    .unet.up_blocks[i]\n                                    .attentions[j]\n                                    .transformer_blocks[k]\n                                    .attn1.to_q\n                                )\n                            )\n\n                        self.pipe.unet.up_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].attn1.to_q = SparseMoeBlock(config, layers)\n\n                        config = {\n                            \"hidden_size\": self.pipe.unet.up_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn1.to_k.weight.size()[-1],\n                            \"num_experts_per_tok\": num_experts_per_tok,\n                            \"num_local_experts\": len(experts),\n                        }\n                        layers = []\n\n                        for l in range(len(experts)):\n                            layers.append(\n                                deepcopy(\n                                    experts[l]\n                                    .unet.up_blocks[i]\n                                    .attentions[j]\n                                    .transformer_blocks[k]\n                                    .attn1.to_k\n                                )\n                            )\n\n                        self.pipe.unet.up_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].attn1.to_k = SparseMoeBlock(config, layers)\n\n                        config = {\n                            \"hidden_size\": self.pipe.unet.up_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn1.to_v.weight.size()[-1],\n                            \"num_experts_per_tok\": num_experts_per_tok,\n                            \"num_local_experts\": len(experts),\n                        }\n                        layers = []\n\n                        for l in range(len(experts)):\n                            layers.append(\n                                deepcopy(\n                                    experts[l]\n                                    .unet.up_blocks[i]\n                                    .attentions[j]\n                                    .transformer_blocks[k]\n                                    .attn1.to_v\n                                )\n                            )\n\n                        self.pipe.unet.up_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].attn1.to_v = SparseMoeBlock(config, layers)\n\n                        config = {\n                            \"hidden_size\": self.pipe.unet.up_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn2.to_q.weight.size()[-1],\n                            \"num_experts_per_tok\": num_experts_per_tok,\n                            \"num_local_experts\": len(experts),\n                        }\n                        layers = []\n\n                        for l in range(len(experts)):\n                            layers.append(\n                                deepcopy(\n                                    experts[l]\n                                    .unet.up_blocks[i]\n                                    .attentions[j]\n                                    .transformer_blocks[k]\n                                    .attn2.to_q\n                                )\n                            )\n\n                        self.pipe.unet.up_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].attn2.to_q = SparseMoeBlock(config, layers)\n\n                        config = {\n                            \"hidden_size\": self.pipe.unet.up_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn2.to_k.weight.size()[-1],\n                            \"out_dim\": self.pipe.unet.up_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn2.to_k.weight.size()[0],\n                            \"num_experts_per_tok\": num_experts_per_tok,\n                            \"num_local_experts\": len(experts),\n                        }\n\n                        layers = []\n\n                        for l in range(len(experts)):\n                            layers.append(\n                                deepcopy(\n                                    experts[l]\n                                    .unet.up_blocks[i]\n                                    .attentions[j]\n                                    .transformer_blocks[k]\n                                    .attn2.to_k\n                                )\n                            )\n\n                        self.pipe.unet.up_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].attn2.to_k = SparseMoeBlock(config, layers)\n\n                        config = {\n                            \"hidden_size\": self.pipe.unet.up_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn2.to_v.weight.size()[-1],\n                            \"out_dim\": self.pipe.unet.up_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn2.to_v.weight.size()[0],\n                            \"num_experts_per_tok\": num_experts_per_tok,\n                            \"num_local_experts\": len(experts),\n                        }\n                        layers = []\n\n                        for l in range(len(experts)):\n                            layers.append(\n                                deepcopy(\n                                    experts[l]\n                                    .unet.up_blocks[i]\n                                    .attentions[j]\n                                    .transformer_blocks[k]\n                                    .attn2.to_v\n                                )\n                            )\n\n                        self.pipe.unet.up_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].attn2.to_v = SparseMoeBlock(config, layers)\n\n        # Routing Weight Initialization\n        if self.config.get(\"init\", \"hidden\") == \"hidden\":\n            gate_params = self.get_gate_params(experts, positive, negative)\n            for i in range(self.down_idx_start, self.down_idx_end):\n                for j in range(len(self.pipe.unet.down_blocks[i].attentions)):\n                    for k in range(\n                        len(\n                            self.pipe.unet.down_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks\n                        )\n                    ):\n                        # FF Layers\n                        if not moe_layers == \"attn\":\n                            self.pipe.unet.down_blocks[i].attentions[\n                                j\n                            ].transformer_blocks[k].ff.gate.weight = nn.Parameter(\n                                gate_params[f\"d{i}a{j}t{k}\"]\n                            )\n\n                        # Attns\n                        if not moe_layers == \"ff\":\n                            self.pipe.unet.down_blocks[i].attentions[\n                                j\n                            ].transformer_blocks[\n                                k\n                            ].attn1.to_q.gate.weight = nn.Parameter(\n                                gate_params[f\"sattnqd{i}a{j}t{k}\"]\n                            )\n\n                            self.pipe.unet.down_blocks[i].attentions[\n                                j\n                            ].transformer_blocks[\n                                k\n                            ].attn1.to_k.gate.weight = nn.Parameter(\n                                gate_params[f\"sattnkd{i}a{j}t{k}\"]\n                            )\n\n                            self.pipe.unet.down_blocks[i].attentions[\n                                j\n                            ].transformer_blocks[\n                                k\n                            ].attn1.to_v.gate.weight = nn.Parameter(\n                                gate_params[f\"sattnvd{i}a{j}t{k}\"]\n                            )\n\n                            self.pipe.unet.down_blocks[i].attentions[\n                                j\n                            ].transformer_blocks[\n                                k\n                            ].attn2.to_q.gate.weight = nn.Parameter(\n                                gate_params[f\"cattnqd{i}a{j}t{k}\"]\n                            )\n\n                            self.pipe.unet.down_blocks[i].attentions[\n                                j\n                            ].transformer_blocks[\n                                k\n                            ].attn2.to_k.gate.weight = nn.Parameter(\n                                gate_params[f\"cattnkd{i}a{j}t{k}\"]\n                            )\n\n                            self.pipe.unet.down_blocks[i].attentions[\n                                j\n                            ].transformer_blocks[\n                                k\n                            ].attn2.to_v.gate.weight = nn.Parameter(\n                                gate_params[f\"cattnvd{i}a{j}t{k}\"]\n                            )\n\n            for i in range(self.up_idx_start, self.up_idx_end):\n                for j in range(len(self.pipe.unet.up_blocks[i].attentions)):\n                    for k in range(\n                        len(\n                            self.pipe.unet.up_blocks[i].attentions[j].transformer_blocks\n                        )\n                    ):\n                        # FF Layers\n                        if not moe_layers == \"attn\":\n                            self.pipe.unet.up_blocks[i].attentions[\n                                j\n                            ].transformer_blocks[k].ff.gate.weight = nn.Parameter(\n                                gate_params[f\"u{i}a{j}t{k}\"]\n                            )\n                        if not moe_layers == \"ff\":\n                            self.pipe.unet.up_blocks[i].attentions[\n                                j\n                            ].transformer_blocks[\n                                k\n                            ].attn1.to_q.gate.weight = nn.Parameter(\n                                gate_params[f\"sattnqu{i}a{j}t{k}\"]\n                            )\n\n                            self.pipe.unet.up_blocks[i].attentions[\n                                j\n                            ].transformer_blocks[\n                                k\n                            ].attn1.to_k.gate.weight = nn.Parameter(\n                                gate_params[f\"sattnku{i}a{j}t{k}\"]\n                            )\n\n                            self.pipe.unet.up_blocks[i].attentions[\n                                j\n                            ].transformer_blocks[\n                                k\n                            ].attn1.to_v.gate.weight = nn.Parameter(\n                                gate_params[f\"sattnvu{i}a{j}t{k}\"]\n                            )\n\n                            self.pipe.unet.up_blocks[i].attentions[\n                                j\n                            ].transformer_blocks[\n                                k\n                            ].attn2.to_q.gate.weight = nn.Parameter(\n                                gate_params[f\"cattnqu{i}a{j}t{k}\"]\n                            )\n\n                            self.pipe.unet.up_blocks[i].attentions[\n                                j\n                            ].transformer_blocks[\n                                k\n                            ].attn2.to_k.gate.weight = nn.Parameter(\n                                gate_params[f\"cattnku{i}a{j}t{k}\"]\n                            )\n\n                            self.pipe.unet.up_blocks[i].attentions[\n                                j\n                            ].transformer_blocks[\n                                k\n                            ].attn2.to_v.gate.weight = nn.Parameter(\n                                gate_params[f\"cattnvu{i}a{j}t{k}\"]\n                            )\n        self.config[\"num_experts\"] = len(experts)\n        remove_all_forward_hooks(self.pipe.unet)\n        try:\n            del experts\n            del expert\n        except Exception:\n            pass\n        # Move Model to Device\n        self.pipe.to(self.device)\n        self.pipe.unet.to(\n            device=self.device,\n            dtype=self.torch_dtype,\n            memory_format=torch.channels_last,\n        )\n        gc.collect()\n        torch.cuda.empty_cache()\n\n    def __call__(self, *args: Any, **kwds: Any) -> Any:\n        \"\"\"\n        Inference the SegMoEPipeline.\n\n        Calls diffusers.DiffusionPipeline forward with the keyword arguments. See https://github.com/segmind/segmoe#usage for detailed usage.\n        \"\"\"\n        return self.pipe(*args, **kwds)\n\n    def create_empty(self, path):\n        with open(f\"{path}/unet/config.json\", encoding='utf8') as f:\n            config = json.load(f)\n        self.config = config[\"segmoe_config\"]\n        unet = UNet2DConditionModel.from_config(config)\n        num_experts_per_tok = self.config[\"num_experts_per_tok\"]\n        num_experts = self.config[\"num_experts\"]\n        moe_layers = self.config[\"moe_layers\"]\n        self.up_idx_start = self.config[\"up_idx_start\"]\n        self.up_idx_end = self.config[\"up_idx_end\"]\n        self.down_idx_start = self.config[\"down_idx_start\"]\n        self.down_idx_end = self.config[\"down_idx_end\"]\n        for i in range(self.down_idx_start, self.down_idx_end):\n            for j in range(len(unet.down_blocks[i].attentions)):\n                for k in range(\n                    len(unet.down_blocks[i].attentions[j].transformer_blocks)\n                ):\n                    if not moe_layers == \"attn\":\n                        config = {\n                            \"hidden_size\": next(\n                                unet.down_blocks[i]\n                                .attentions[j]\n                                .transformer_blocks[k]\n                                .ff.parameters()\n                            ).size()[-1],\n                            \"num_experts_per_tok\": num_experts_per_tok,\n                            \"num_local_experts\": num_experts,\n                        }\n                        # FF Layers\n                        layers = [\n                            unet.down_blocks[i].attentions[j].transformer_blocks[k].ff\n                        ] * num_experts\n                        unet.down_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].ff = SparseMoeBlock(config, layers)\n                    if not moe_layers == \"ff\":\n                        ## Attns\n                        config = {\n                            \"hidden_size\": unet.down_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn1.to_q.weight.size()[-1],\n                            \"num_experts_per_tok\": num_experts_per_tok,\n                            \"num_local_experts\": num_experts,\n                        }\n                        layers = [\n                            unet.down_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn1.to_q\n                        ] * num_experts\n                        unet.down_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].attn1.to_q = SparseMoeBlock(config, layers)\n\n                        layers = [\n                            unet.down_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn1.to_k\n                        ] * num_experts\n                        unet.down_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].attn1.to_k = SparseMoeBlock(config, layers)\n\n                        layers = [\n                            unet.down_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn1.to_v\n                        ] * num_experts\n                        unet.down_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].attn1.to_v = SparseMoeBlock(config, layers)\n\n                        config = {\n                            \"hidden_size\": unet.down_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn2.to_q.weight.size()[-1],\n                            \"num_experts_per_tok\": num_experts_per_tok,\n                            \"num_local_experts\": num_experts,\n                        }\n\n                        layers = [\n                            unet.down_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn2.to_q\n                        ] * num_experts\n                        unet.down_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].attn2.to_q = SparseMoeBlock(config, layers)\n\n                        config = {\n                            \"hidden_size\": unet.down_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn2.to_k.weight.size()[-1],\n                            \"num_experts_per_tok\": num_experts_per_tok,\n                            \"num_local_experts\": num_experts,\n                            \"out_dim\": unet.down_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn2.to_k.weight.size()[0],\n                        }\n                        layers = [\n                            unet.down_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn2.to_k\n                        ] * num_experts\n                        unet.down_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].attn2.to_k = SparseMoeBlock(config, layers)\n\n                        config = {\n                            \"hidden_size\": unet.down_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn2.to_v.weight.size()[-1],\n                            \"out_dim\": unet.down_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn2.to_v.weight.size()[0],\n                            \"num_experts_per_tok\": num_experts_per_tok,\n                            \"num_local_experts\": num_experts,\n                        }\n                        layers = [\n                            unet.down_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn2.to_v\n                        ] * num_experts\n                        unet.down_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].attn2.to_v = SparseMoeBlock(config, layers)\n        for i in range(self.up_idx_start, self.up_idx_end):\n            for j in range(len(unet.up_blocks[i].attentions)):\n                for k in range(len(unet.up_blocks[i].attentions[j].transformer_blocks)):\n                    if not moe_layers == \"attn\":\n                        config = {\n                            \"hidden_size\": next(\n                                unet.up_blocks[i]\n                                .attentions[j]\n                                .transformer_blocks[k]\n                                .ff.parameters()\n                            ).size()[-1],\n                            \"num_experts_per_tok\": num_experts_per_tok,\n                            \"num_local_experts\": num_experts,\n                        }\n                        # FF Layers\n                        layers = [\n                            unet.up_blocks[i].attentions[j].transformer_blocks[k].ff\n                        ] * num_experts\n                        unet.up_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].ff = SparseMoeBlock(config, layers)\n\n                    if not moe_layers == \"ff\":\n                        # Attns\n                        config = {\n                            \"hidden_size\": unet.up_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn1.to_q.weight.size()[-1],\n                            \"num_experts_per_tok\": num_experts_per_tok,\n                            \"num_local_experts\": num_experts,\n                        }\n\n                        layers = [\n                            unet.up_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn1.to_q\n                        ] * num_experts\n\n                        unet.up_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].attn1.to_q = SparseMoeBlock(config, layers)\n\n                        config = {\n                            \"hidden_size\": unet.up_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn1.to_k.weight.size()[-1],\n                            \"num_experts_per_tok\": num_experts_per_tok,\n                            \"num_local_experts\": num_experts,\n                        }\n                        layers = [\n                            unet.up_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn1.to_k\n                        ] * num_experts\n\n                        unet.up_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].attn1.to_k = SparseMoeBlock(config, layers)\n\n                        config = {\n                            \"hidden_size\": unet.up_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn1.to_v.weight.size()[-1],\n                            \"num_experts_per_tok\": num_experts_per_tok,\n                            \"num_local_experts\": num_experts,\n                        }\n                        layers = [\n                            unet.up_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn1.to_v\n                        ] * num_experts\n\n                        unet.up_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].attn1.to_v = SparseMoeBlock(config, layers)\n\n                        config = {\n                            \"hidden_size\": unet.up_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn2.to_q.weight.size()[-1],\n                            \"num_experts_per_tok\": num_experts_per_tok,\n                            \"num_local_experts\": num_experts,\n                        }\n                        layers = [\n                            unet.up_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn2.to_q\n                        ] * num_experts\n\n                        unet.up_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].attn2.to_q = SparseMoeBlock(config, layers)\n\n                        config = {\n                            \"hidden_size\": unet.up_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn2.to_k.weight.size()[-1],\n                            \"out_dim\": unet.up_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn2.to_k.weight.size()[0],\n                            \"num_experts_per_tok\": num_experts_per_tok,\n                            \"num_local_experts\": num_experts,\n                        }\n\n                        layers = [\n                            unet.up_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn2.to_k\n                        ] * num_experts\n\n                        unet.up_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].attn2.to_k = SparseMoeBlock(config, layers)\n\n                        config = {\n                            \"hidden_size\": unet.up_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn2.to_v.weight.size()[-1],\n                            \"out_dim\": unet.up_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn2.to_v.weight.size()[0],\n                            \"num_experts_per_tok\": num_experts_per_tok,\n                            \"num_local_experts\": num_experts,\n                        }\n                        layers = [\n                            unet.up_blocks[i]\n                            .attentions[j]\n                            .transformer_blocks[k]\n                            .attn2.to_v\n                        ] * num_experts\n\n                        unet.up_blocks[i].attentions[j].transformer_blocks[\n                            k\n                        ].attn2.to_v = SparseMoeBlock(config, layers)\n        return unet\n\n    def save_pretrained(self, path):\n        \"\"\"\n        Save SegMoEPipeline to Disk.\n\n        Usage:\n        pipeline.save_pretrained(path)\n\n        Parameters:\n        path: Path to Directory to save the model in.\n        \"\"\"\n        for param in self.pipe.unet.parameters():\n            param.data = param.data.contiguous()\n        self.pipe.unet.config[\"segmoe_config\"] = self.config\n        self.pipe.save_pretrained(path)\n        safetensors.torch.save_file(\n            self.pipe.unet.state_dict(),\n            f\"{path}/unet/diffusion_pytorch_model.safetensors\",\n        )\n\n    def cast_hook(self, pipe, dicts):\n        for i in range(self.down_idx_start, self.down_idx_end):\n            for j in range(len(pipe.unet.down_blocks[i].attentions)):\n                for k in range(\n                    len(pipe.unet.down_blocks[i].attentions[j].transformer_blocks)\n                ):\n                    pipe.unet.down_blocks[i].attentions[j].transformer_blocks[\n                        k\n                    ].ff.register_forward_hook(getActivation(dicts, f\"d{i}a{j}t{k}\"))\n\n                    ## Down Self Attns\n                    pipe.unet.down_blocks[i].attentions[j].transformer_blocks[\n                        k\n                    ].attn1.to_q.register_forward_hook(\n                        getActivation(dicts, f\"sattnqd{i}a{j}t{k}\")\n                    )\n                    pipe.unet.down_blocks[i].attentions[j].transformer_blocks[\n                        k\n                    ].attn1.to_k.register_forward_hook(\n                        getActivation(dicts, f\"sattnkd{i}a{j}t{k}\")\n                    )\n                    pipe.unet.down_blocks[i].attentions[j].transformer_blocks[\n                        k\n                    ].attn1.to_v.register_forward_hook(\n                        getActivation(dicts, f\"sattnvd{i}a{j}t{k}\")\n                    )\n\n                    ## Down Cross Attns\n\n                    pipe.unet.down_blocks[i].attentions[j].transformer_blocks[\n                        k\n                    ].attn2.to_q.register_forward_hook(\n                        getActivation(dicts, f\"cattnqd{i}a{j}t{k}\")\n                    )\n                    pipe.unet.down_blocks[i].attentions[j].transformer_blocks[\n                        k\n                    ].attn2.to_k.register_forward_hook(\n                        getActivation(dicts, f\"cattnkd{i}a{j}t{k}\")\n                    )\n                    pipe.unet.down_blocks[i].attentions[j].transformer_blocks[\n                        k\n                    ].attn2.to_v.register_forward_hook(\n                        getActivation(dicts, f\"cattnvd{i}a{j}t{k}\")\n                    )\n\n        for i in range(self.up_idx_start, self.up_idx_end):\n            for j in range(len(pipe.unet.up_blocks[i].attentions)):\n                for k in range(\n                    len(pipe.unet.up_blocks[i].attentions[j].transformer_blocks)\n                ):\n                    pipe.unet.up_blocks[i].attentions[j].transformer_blocks[\n                        k\n                    ].ff.register_forward_hook(getActivation(dicts, f\"u{i}a{j}t{k}\"))\n                    ## Up Self Attns\n                    pipe.unet.up_blocks[i].attentions[j].transformer_blocks[\n                        k\n                    ].attn1.to_q.register_forward_hook(\n                        getActivation(dicts, f\"sattnqu{i}a{j}t{k}\")\n                    )\n                    pipe.unet.up_blocks[i].attentions[j].transformer_blocks[\n                        k\n                    ].attn1.to_k.register_forward_hook(\n                        getActivation(dicts, f\"sattnku{i}a{j}t{k}\")\n                    )\n                    pipe.unet.up_blocks[i].attentions[j].transformer_blocks[\n                        k\n                    ].attn1.to_v.register_forward_hook(\n                        getActivation(dicts, f\"sattnvu{i}a{j}t{k}\")\n                    )\n\n                    ## Up Cross Attns\n                    pipe.unet.up_blocks[i].attentions[j].transformer_blocks[\n                        k\n                    ].attn2.to_q.register_forward_hook(\n                        getActivation(dicts, f\"cattnqu{i}a{j}t{k}\")\n                    )\n                    pipe.unet.up_blocks[i].attentions[j].transformer_blocks[\n                        k\n                    ].attn2.to_k.register_forward_hook(\n                        getActivation(dicts, f\"cattnku{i}a{j}t{k}\")\n                    )\n                    pipe.unet.up_blocks[i].attentions[j].transformer_blocks[\n                        k\n                    ].attn2.to_v.register_forward_hook(\n                        getActivation(dicts, f\"cattnvu{i}a{j}t{k}\")\n                    )\n\n    @torch.no_grad\n    def get_hidden_states(self, model, positive, negative, average: bool = True):\n        intermediate = {}\n        self.cast_hook(model, intermediate)\n        with torch.no_grad():\n            _ = model(positive, negative_prompt=negative, num_inference_steps=25)\n        hidden = {}\n        for key in intermediate:\n            hidden_states = intermediate[key][0][-1]\n            if average:\n                # use average over sequence\n                hidden_states = hidden_states.sum(dim=0) / hidden_states.shape[0]\n            else:\n                # take last value\n                hidden_states = hidden_states[:-1]\n            hidden[key] = hidden_states.to(self.device)\n        del intermediate\n        gc.collect()\n        torch.cuda.empty_cache()\n        return hidden\n\n    @torch.no_grad\n    def get_gate_params(\n        self,\n        experts,\n        positive,\n        negative,\n    ):\n        gate_vects = {}\n        for i, expert in enumerate(tqdm.tqdm(experts, desc=\"Expert Prompts\")):\n            expert.to(self.device)\n            expert.unet.to(\n                device=self.device,\n                dtype=self.torch_dtype,\n                memory_format=torch.channels_last,\n            )\n            hidden_states = self.get_hidden_states(expert, positive[i], negative[i])\n            del expert\n            gc.collect()\n            torch.cuda.empty_cache()\n            for h in hidden_states:\n                if i == 0:\n                    gate_vects[h] = []\n                hidden_states[h] /= (\n                    hidden_states[h].norm(p=2, dim=-1, keepdim=True).clamp(min=1e-8)\n                )\n                gate_vects[h].append(hidden_states[h])\n        for h in hidden_states:\n            gate_vects[h] = torch.stack(\n                gate_vects[h], dim=0\n            )  # (num_expert, num_layer, hidden_size)\n            gate_vects[h].permute(1, 0)\n\n        return gate_vects\n"
  },
  {
    "path": "pipelines/wan/wan_image.py",
    "content": "from typing import Any, Callable, Dict, List, Optional, Union\nimport torch\nimport diffusers\nfrom diffusers.callbacks import MultiPipelineCallbacks, PipelineCallback\nfrom diffusers.image_processor import PipelineImageInput\n\nfrom modules import devices\n\n\nclass WanImagePipeline(diffusers.WanPipeline):\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        negative_prompt: Union[str, List[str]] = None,\n        height: int = 480,\n        width: int = 832,\n        num_frames: int = 81,\n        num_inference_steps: int = 50,\n        guidance_scale: float = 5.0,\n        guidance_scale_2: Optional[float] = None,\n        num_videos_per_prompt: Optional[int] = 1,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.Tensor] = None,\n        prompt_embeds: Optional[torch.Tensor] = None,\n        negative_prompt_embeds: Optional[torch.Tensor] = None,\n        output_type: Optional[str] = \"np\",\n        return_dict: bool = True,\n        attention_kwargs: Optional[Dict[str, Any]] = None,\n        callback_on_step_end: Optional[Union[Callable[[int, int, Dict], None], PipelineCallback, MultiPipelineCallbacks]] = None,\n        callback_on_step_end_tensor_inputs: List[str] = [\"latents\"],\n        max_sequence_length: int = 512,\n        strength: float = 0.3, # new\n        image: PipelineImageInput = None, # new\n    ):\n        # get img2img timesteps\n        self.scheduler.set_timesteps(num_inference_steps, device=devices.device)\n        timesteps, num_inference_steps = self.get_timesteps(num_inference_steps, strength)\n        # monkey patch original pipeline\n        self.scheduler.timesteps = timesteps\n        # self.scheduler._step_index = 0\n        self.scheduler.orig_set_timesteps = self.scheduler.set_timesteps\n        self.scheduler.set_timesteps = lambda *args, **kwargs: None\n\n        # prepare latents\n        latents = self.img2img_prepare_latents(\n            image=image,\n            timesteps=timesteps,\n            dtype=devices.dtype,\n            device=devices.device,\n            generator=generator,\n        )\n\n        # call original pipeline\n        result = super().__call__( # pylint: disable=no-member\n            prompt=prompt,\n            negative_prompt=negative_prompt,\n            height=height,\n            width=width,\n            num_frames=num_frames,\n            num_inference_steps=num_inference_steps,\n            guidance_scale=guidance_scale,\n            guidance_scale_2=guidance_scale_2,\n            num_videos_per_prompt=num_videos_per_prompt,\n            generator=generator,\n            latents=latents,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            output_type=output_type,\n            return_dict=return_dict,\n            attention_kwargs=attention_kwargs,\n            callback_on_step_end=callback_on_step_end,\n            callback_on_step_end_tensor_inputs=callback_on_step_end_tensor_inputs,\n            max_sequence_length=max_sequence_length,\n        )\n\n        # un-monkey patch original pipeline\n        self.scheduler.set_timesteps = self.scheduler.orig_set_timesteps\n        return result\n\n    def get_timesteps(self, num_inference_steps, strength):\n        init_timestep = min(int(num_inference_steps * strength), num_inference_steps)\n        t_start = max(num_inference_steps - init_timestep, 0)\n        timesteps = self.scheduler.timesteps[t_start * self.scheduler.order :]\n        if hasattr(self.scheduler, \"set_begin_index\"):\n            # self.scheduler.set_begin_index(t_start * self.scheduler.order)\n            self.scheduler.set_begin_index(0)\n        return timesteps, num_inference_steps - t_start\n\n    def img2img_prepare_latents(\n        self,\n        image: torch.Tensor = None,\n        timesteps: torch.Tensor = None,\n        dtype: Optional[torch.dtype] = None,\n        device: Optional[torch.device] = None,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n    ) -> torch.Tensor:\n        from diffusers.utils.torch_utils import randn_tensor\n        from diffusers.video_processor import VideoProcessor\n\n        if isinstance(image, list):\n            image = image[0] # ignore batch for now\n\n        video_processor = VideoProcessor(vae_scale_factor=self.vae_scale_factor_spatial)\n        image_tensor = video_processor.preprocess(image, None, None) # convert PIL to [B, C, H, W] # channels may need rearrange\n        image_tensor = image_tensor.squeeze(0).to(device=device, dtype=dtype)\n        image_tensor = image_tensor[None, :, None, :, :] # expand before encode to [B, C, N, H, W]\n        encoder_output = self.vae.encode(image_tensor)\n        # init_latents = encoder_output.latent_dist.mode() # argmax or sample?\n        init_latents = encoder_output.latent_dist.sample(generator)\n\n        latents_mean = torch.tensor(self.vae.config.latents_mean, device=device, dtype=torch.float32).view(1, self.vae.config.z_dim, 1, 1, 1)\n        latents_std = 1.0 / torch.tensor(self.vae.config.latents_std, device=device, dtype=torch.float32).view(1, self.vae.config.z_dim, 1, 1, 1)\n        init_latents = ((init_latents.float() - latents_mean) * latents_std).to(dtype) # normalized to standard distribution range\n\n        init_noise = randn_tensor(init_latents.shape, generator=generator, device=device, dtype=dtype)\n        init_timestep = timesteps[:1]\n        noised_latents = self.scheduler.add_noise(init_latents, init_noise, init_timestep)\n\n        return noised_latents\n"
  },
  {
    "path": "pipelines/xomni/__init__.py",
    "content": ""
  },
  {
    "path": "pipelines/xomni/configuration_xomni.py",
    "content": "from transformers import AutoConfig, Qwen2Config\nfrom typing import Tuple\n\n\nclass XOmniConfig(Qwen2Config):\n    model_type = \"x-omni\"\n\n    def __init__(\n        self,\n        num_mm_adap_layers: int = 4,\n        num_mm_head_layers: int = 4,\n        mm_vocab_size: int = 16448,\n        image_vocab_size: int = 16384,\n        mm_special_tokens: Tuple[str] = ('<SOM>', '<EOM>', '<IMAGE>'),\n        **kwargs,\n    ):\n        super().__init__(**kwargs)\n        self.num_mm_adap_layers = num_mm_adap_layers\n        self.num_mm_head_layers = num_mm_head_layers\n        self.mm_vocab_size = mm_vocab_size\n        self.image_vocab_size = image_vocab_size\n        self.mm_special_tokens = mm_special_tokens\n\n\nAutoConfig.register(\"x-omni\", XOmniConfig)\n"
  },
  {
    "path": "pipelines/xomni/modeling_siglip_flux.py",
    "content": "import torch\nimport numpy as np\n\nfrom typing import Any, Callable, Dict, Tuple, List, Optional, Union\nfrom diffusers import FluxTransformer2DModel\nfrom diffusers.configuration_utils import register_to_config\nfrom diffusers.utils import logging, USE_PEFT_BACKEND, scale_lora_layers, unscale_lora_layers\nfrom diffusers.models.modeling_outputs import Transformer2DModelOutput\nfrom diffusers.pipelines.flux.pipeline_flux import FluxPipeline, calculate_shift, retrieve_timesteps\nfrom diffusers.image_processor import PipelineImageInput\nfrom diffusers.pipelines.flux.pipeline_output import FluxPipelineOutput\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\ndef drop_token(x, drop_prob: float = 0., training: bool = False, scale_by_keep: bool = True):\n    if drop_prob == 0. or not training:\n        return x\n    keep_prob = 1 - drop_prob\n    shape = (x.shape[0], x.shape[1], 1)\n    random_tensor = x.new_empty(shape).bernoulli_(keep_prob)\n    if keep_prob > 0.0 and scale_by_keep:\n        random_tensor.div_(keep_prob)\n    return x * random_tensor\n\n\nclass FluxTransformer2DModelWithSigLIP(FluxTransformer2DModel):\n    @register_to_config\n    def __init__(\n            self,\n            patch_size: int = 1,\n            in_channels: int = 64,\n            out_channels: Optional[int] = None,\n            num_layers: int = 19,\n            num_single_layers: int = 38,\n            attention_head_dim: int = 128,\n            num_attention_heads: int = 24,\n            joint_attention_dim: int = 4096,\n            pooled_projection_dim: int = 768,\n            guidance_embeds: bool = False,\n            axes_dims_rope: Tuple[int] = (16, 56, 56),\n            siglip_channels: Optional[int] = None,\n            drop_token_prob: float = 0.,\n    ):\n        super().__init__(\n            patch_size=patch_size,\n            in_channels=in_channels,\n            out_channels=out_channels,\n            num_layers=num_layers,\n            num_single_layers=num_single_layers,\n            attention_head_dim=attention_head_dim,\n            num_attention_heads=num_attention_heads,\n            joint_attention_dim=joint_attention_dim,\n            pooled_projection_dim=pooled_projection_dim,\n            guidance_embeds=guidance_embeds,\n            axes_dims_rope=axes_dims_rope,\n        )\n        self.drop_token_prob = drop_token_prob\n        if siglip_channels is not None:\n            self.init_siglip_embed(siglip_channels)\n\n    def init_siglip_embed(self, siglip_channels):\n        self.siglip_embed = torch.nn.Linear(siglip_channels, self.inner_dim, bias=False)\n        torch.nn.init.zeros_(self.siglip_embed.weight)\n\n    def forward(\n            self,\n            hidden_states: torch.Tensor,\n            encoder_hidden_states: torch.Tensor = None,\n            pooled_projections: torch.Tensor = None,\n            timestep: torch.LongTensor = None,\n            img_ids: torch.Tensor = None,\n            txt_ids: torch.Tensor = None,\n            guidance: torch.Tensor = None,\n            siglip_tensor: Optional[torch.Tensor] = None,\n            joint_attention_kwargs: Optional[Dict[str, Any]] = None,\n            controlnet_block_samples=None,\n            controlnet_single_block_samples=None,\n            return_dict: bool = True,\n            controlnet_blocks_repeat: bool = False,\n    ) -> Union[torch.Tensor, Transformer2DModelOutput]:\n        \"\"\"\n        The [`FluxTransformer2DModel`] forward method.\n\n        Args:\n            hidden_states (`torch.Tensor` of shape `(batch_size, image_sequence_length, in_channels)`):\n                Input `hidden_states`.\n            encoder_hidden_states (`torch.Tensor` of shape `(batch_size, text_sequence_length, joint_attention_dim)`):\n                Conditional embeddings (embeddings computed from the input conditions such as prompts) to use.\n            pooled_projections (`torch.Tensor` of shape `(batch_size, projection_dim)`): Embeddings projected\n                from the embeddings of input conditions.\n            timestep ( `torch.LongTensor`):\n                Used to indicate denoising step.\n            block_controlnet_hidden_states: (`list` of `torch.Tensor`):\n                A list of tensors that if specified are added to the residuals of transformer blocks.\n            joint_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~models.transformer_2d.Transformer2DModelOutput`] instead of a plain\n                tuple.\n\n        Returns:\n            If `return_dict` is True, an [`~models.transformer_2d.Transformer2DModelOutput`] is returned, otherwise a\n            `tuple` where the first element is the sample tensor.\n        \"\"\"\n        if joint_attention_kwargs is not None:\n            joint_attention_kwargs = joint_attention_kwargs.copy()\n            lora_scale = joint_attention_kwargs.pop(\"scale\", 1.0)\n        else:\n            lora_scale = 1.0\n\n        if USE_PEFT_BACKEND:\n            # weight the lora layers by setting `lora_scale` for each PEFT layer\n            scale_lora_layers(self, lora_scale)\n        else:\n            if joint_attention_kwargs is not None and joint_attention_kwargs.get(\"scale\", None) is not None:\n                logger.warning(\n                    \"Passing `scale` via `joint_attention_kwargs` when not using the PEFT backend is ineffective.\"\n                )\n\n        hidden_states = self.x_embedder(hidden_states)\n\n        timestep = timestep.to(hidden_states.dtype) * 1000\n        if guidance is not None:\n            guidance = guidance.to(hidden_states.dtype) * 1000\n        else:\n            guidance = None\n\n        temb = (\n            self.time_text_embed(timestep, pooled_projections)\n            if guidance is None\n            else self.time_text_embed(timestep, guidance, pooled_projections)\n        )\n        encoder_hidden_states = self.context_embedder(encoder_hidden_states)\n\n        if txt_ids.ndim == 3:\n            logger.warning(\n                \"Passing `txt_ids` 3d torch.Tensor is deprecated.\"\n                \"Please remove the batch dimension and pass it as a 2d torch Tensor\"\n            )\n            txt_ids = txt_ids[0]\n        if img_ids.ndim == 3:\n            logger.warning(\n                \"Passing `img_ids` 3d torch.Tensor is deprecated.\"\n                \"Please remove the batch dimension and pass it as a 2d torch Tensor\"\n            )\n            img_ids = img_ids[0]\n\n        ids = torch.cat((txt_ids, img_ids), dim=0)\n        image_rotary_emb = self.pos_embed(ids)\n\n        if joint_attention_kwargs is not None and \"ip_adapter_image_embeds\" in joint_attention_kwargs:\n            ip_adapter_image_embeds = joint_attention_kwargs.pop(\"ip_adapter_image_embeds\")\n            ip_hidden_states = self.encoder_hid_proj(ip_adapter_image_embeds)\n            joint_attention_kwargs.update({\"ip_hidden_states\": ip_hidden_states})\n\n        for index_block, block in enumerate(self.transformer_blocks):\n            if torch.is_grad_enabled() and self.gradient_checkpointing:\n                encoder_hidden_states, hidden_states = self._gradient_checkpointing_func(\n                    block,\n                    hidden_states,\n                    encoder_hidden_states,\n                    temb,\n                    image_rotary_emb,\n                )\n\n            else:\n                encoder_hidden_states, hidden_states = block(\n                    hidden_states=hidden_states,\n                    encoder_hidden_states=encoder_hidden_states,\n                    temb=temb,\n                    image_rotary_emb=image_rotary_emb,\n                    joint_attention_kwargs=joint_attention_kwargs,\n                )\n\n            # controlnet residual\n            if controlnet_block_samples is not None:\n                interval_control = len(self.transformer_blocks) / len(controlnet_block_samples)\n                interval_control = int(np.ceil(interval_control))\n                # For Xlabs ControlNet.\n                if controlnet_blocks_repeat:\n                    hidden_states = (\n                            hidden_states + controlnet_block_samples[index_block % len(controlnet_block_samples)]\n                    )\n                else:\n                    hidden_states = hidden_states + controlnet_block_samples[index_block // interval_control]\n\n        if siglip_tensor is not None:\n            siglip_tensor = drop_token(siglip_tensor, self.drop_token_prob, training=self.training)\n            hidden_states = hidden_states + self.siglip_embed(siglip_tensor)\n\n        hidden_states = torch.cat([encoder_hidden_states, hidden_states], dim=1)\n\n        for index_block, block in enumerate(self.single_transformer_blocks):\n            if torch.is_grad_enabled() and self.gradient_checkpointing:\n                hidden_states = self._gradient_checkpointing_func(\n                    block,\n                    hidden_states,\n                    temb,\n                    image_rotary_emb,\n                )\n\n            else:\n                hidden_states = block(\n                    hidden_states=hidden_states,\n                    temb=temb,\n                    image_rotary_emb=image_rotary_emb,\n                    joint_attention_kwargs=joint_attention_kwargs,\n                )\n\n            # controlnet residual\n            if controlnet_single_block_samples is not None:\n                interval_control = len(self.single_transformer_blocks) / len(controlnet_single_block_samples)\n                interval_control = int(np.ceil(interval_control))\n                hidden_states[:, encoder_hidden_states.shape[1]:, ...] = (\n                        hidden_states[:, encoder_hidden_states.shape[1]:, ...]\n                        + controlnet_single_block_samples[index_block // interval_control]\n                )\n\n        hidden_states = hidden_states[:, encoder_hidden_states.shape[1]:, ...]\n\n        hidden_states = self.norm_out(hidden_states, temb)\n        output = self.proj_out(hidden_states)\n\n        if USE_PEFT_BACKEND:\n            # remove `lora_scale` from each PEFT layer\n            unscale_lora_layers(self, lora_scale)\n\n        if not return_dict:\n            return (output,)\n\n        return Transformer2DModelOutput(sample=output)\n\n\ndef teacache_forward(\n        self,\n        hidden_states: torch.Tensor,\n        encoder_hidden_states: torch.Tensor = None,\n        pooled_projections: torch.Tensor = None,\n        timestep: torch.LongTensor = None,\n        img_ids: torch.Tensor = None,\n        txt_ids: torch.Tensor = None,\n        guidance: torch.Tensor = None,\n        joint_attention_kwargs: Optional[Dict[str, Any]] = None,\n        controlnet_block_samples=None,\n        controlnet_single_block_samples=None,\n        return_dict: bool = True,\n        controlnet_blocks_repeat: bool = False,\n        siglip_tensor: Optional[torch.Tensor] = None,\n) -> Union[torch.FloatTensor, Transformer2DModelOutput]:\n    \"\"\"\n    The [`FluxTransformer2DModel`] forward method.\n\n    Args:\n        hidden_states (`torch.FloatTensor` of shape `(batch size, channel, height, width)`):\n            Input `hidden_states`.\n        encoder_hidden_states (`torch.FloatTensor` of shape `(batch size, sequence_len, embed_dims)`):\n            Conditional embeddings (embeddings computed from the input conditions such as prompts) to use.\n        pooled_projections (`torch.FloatTensor` of shape `(batch_size, projection_dim)`): Embeddings projected\n            from the embeddings of input conditions.\n        timestep ( `torch.LongTensor`):\n            Used to indicate denoising step.\n        block_controlnet_hidden_states: (`list` of `torch.Tensor`):\n            A list of tensors that if specified are added to the residuals of transformer blocks.\n        joint_attention_kwargs (`dict`, *optional*):\n            A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n            `self.processor` in\n            [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n        return_dict (`bool`, *optional*, defaults to `True`):\n            Whether or not to return a [`~models.transformer_2d.Transformer2DModelOutput`] instead of a plain\n            tuple.\n\n    Returns:\n        If `return_dict` is True, an [`~models.transformer_2d.Transformer2DModelOutput`] is returned, otherwise a\n        `tuple` where the first element is the sample tensor.\n    \"\"\"\n    if joint_attention_kwargs is not None:\n        joint_attention_kwargs = joint_attention_kwargs.copy()\n        lora_scale = joint_attention_kwargs.pop(\"scale\", 1.0)\n    else:\n        lora_scale = 1.0\n\n    if USE_PEFT_BACKEND:\n        # weight the lora layers by setting `lora_scale` for each PEFT layer\n        scale_lora_layers(self, lora_scale)\n    else:\n        if joint_attention_kwargs is not None and joint_attention_kwargs.get(\"scale\", None) is not None:\n            logger.warning(\n                \"Passing `scale` via `joint_attention_kwargs` when not using the PEFT backend is ineffective.\"\n            )\n\n    batch_size, seq_len, channels = hidden_states.shape\n    device, dtype = hidden_states.device, hidden_states.dtype\n    hidden_states = self.x_embedder(hidden_states)\n\n    timestep = timestep.to(hidden_states.dtype) * 1000\n    if guidance is not None:\n        guidance = guidance.to(hidden_states.dtype) * 1000\n    else:\n        guidance = None\n\n    temb = (\n        self.time_text_embed(timestep, pooled_projections)\n        if guidance is None\n        else self.time_text_embed(timestep, guidance, pooled_projections)\n    )\n    encoder_hidden_states = self.context_embedder(encoder_hidden_states)\n\n    if txt_ids.ndim == 3:\n        logger.warning(\n            \"Passing `txt_ids` 3d torch.Tensor is deprecated.\"\n            \"Please remove the batch dimension and pass it as a 2d torch Tensor\"\n        )\n        txt_ids = txt_ids[0]\n    if img_ids.ndim == 3:\n        logger.warning(\n            \"Passing `img_ids` 3d torch.Tensor is deprecated.\"\n            \"Please remove the batch dimension and pass it as a 2d torch Tensor\"\n        )\n        img_ids = img_ids[0]\n\n    ids = torch.cat((txt_ids, img_ids), dim=0)\n    image_rotary_emb = self.pos_embed(ids)\n\n    if joint_attention_kwargs is not None and \"ip_adapter_image_embeds\" in joint_attention_kwargs:\n        ip_adapter_image_embeds = joint_attention_kwargs.pop(\"ip_adapter_image_embeds\")\n        ip_hidden_states = self.encoder_hid_proj(ip_adapter_image_embeds)\n        joint_attention_kwargs.update({\"ip_hidden_states\": ip_hidden_states})\n\n    if self.enable_teacache:\n        inp = hidden_states.clone()\n        temb_ = temb.clone()\n        modulated_inp, gate_msa, shift_mlp, scale_mlp, gate_mlp = self.transformer_blocks[0].norm1(inp, emb=temb_)\n        if self.cnt == 0 or self.cnt == self.num_steps - 1:\n            should_calc = True\n            self.accumulated_rel_l1_distance = 0\n        else:\n            coefficients = [4.98651651e+02, -2.83781631e+02, 5.58554382e+01, -3.82021401e+00, 2.64230861e-01]\n            rescale_func = np.poly1d(coefficients)\n            # rescale_func = Polynomial(coefficients.reverse())\n            self.accumulated_rel_l1_distance += rescale_func(((modulated_inp - self.previous_modulated_input).abs().mean() / self.previous_modulated_input.abs().mean()).cpu().item())\n            if self.accumulated_rel_l1_distance < self.rel_l1_thresh:\n                should_calc = False\n            else:\n                should_calc = True\n                self.accumulated_rel_l1_distance = 0\n        self.previous_modulated_input = modulated_inp\n        self.cnt += 1\n        if self.cnt == self.num_steps:\n            self.cnt = 0\n\n    if self.enable_teacache:\n        if not should_calc:\n            hidden_states += self.previous_residual\n        else:\n            ori_hidden_states = hidden_states.clone()\n            for index_block, block in enumerate(self.transformer_blocks):\n                if torch.is_grad_enabled() and self.gradient_checkpointing:\n                    encoder_hidden_states, hidden_states = self._gradient_checkpointing_func(\n                        block,\n                        hidden_states,\n                        encoder_hidden_states,\n                        temb,\n                        image_rotary_emb,\n                    )\n\n                else:\n                    encoder_hidden_states, hidden_states = block(\n                        hidden_states=hidden_states,\n                        encoder_hidden_states=encoder_hidden_states,\n                        temb=temb,\n                        image_rotary_emb=image_rotary_emb,\n                        joint_attention_kwargs=joint_attention_kwargs,\n                    )\n\n                # controlnet residual\n                if controlnet_block_samples is not None:\n                    interval_control = len(self.transformer_blocks) / len(controlnet_block_samples)\n                    interval_control = int(np.ceil(interval_control))\n                    # For Xlabs ControlNet.\n                    if controlnet_blocks_repeat:\n                        hidden_states = (\n                                hidden_states + controlnet_block_samples[index_block % len(controlnet_block_samples)]\n                        )\n                    else:\n                        hidden_states = hidden_states + controlnet_block_samples[index_block // interval_control]\n\n            if siglip_tensor is not None:\n                siglip_tensor = drop_token(siglip_tensor, self.drop_token_prob, training=self.training)\n                hidden_states = hidden_states + self.siglip_embed(siglip_tensor)\n            hidden_states = torch.cat([encoder_hidden_states, hidden_states], dim=1)\n\n            for index_block, block in enumerate(self.single_transformer_blocks):\n                if torch.is_grad_enabled() and self.gradient_checkpointing:\n                    hidden_states = self._gradient_checkpointing_func(\n                        block,\n                        hidden_states,\n                        temb,\n                        image_rotary_emb,\n                    )\n\n                else:\n                    hidden_states = block(\n                        hidden_states=hidden_states,\n                        temb=temb,\n                        image_rotary_emb=image_rotary_emb,\n                        joint_attention_kwargs=joint_attention_kwargs,\n                    )\n\n                # controlnet residual\n                if controlnet_single_block_samples is not None:\n                    interval_control = len(self.single_transformer_blocks) / len(controlnet_single_block_samples)\n                    interval_control = int(np.ceil(interval_control))\n                    hidden_states[:, encoder_hidden_states.shape[1]:, ...] = (\n                            hidden_states[:, encoder_hidden_states.shape[1]:, ...]\n                            + controlnet_single_block_samples[index_block // interval_control]\n                    )\n\n            hidden_states = hidden_states[:, encoder_hidden_states.shape[1]:, ...]\n            self.previous_residual = hidden_states - ori_hidden_states\n    else:\n        for index_block, block in enumerate(self.transformer_blocks):\n            if torch.is_grad_enabled() and self.gradient_checkpointing:\n                encoder_hidden_states, hidden_states = self._gradient_checkpointing_func(\n                    block,\n                    hidden_states,\n                    encoder_hidden_states,\n                    temb,\n                    image_rotary_emb,\n                )\n            else:\n                encoder_hidden_states, hidden_states = block(\n                    hidden_states=hidden_states,\n                    encoder_hidden_states=encoder_hidden_states,\n                    temb=temb,\n                    image_rotary_emb=image_rotary_emb,\n                    joint_attention_kwargs=joint_attention_kwargs,\n                )\n\n            # controlnet residual\n            if controlnet_block_samples is not None:\n                interval_control = len(self.transformer_blocks) / len(controlnet_block_samples)\n                interval_control = int(np.ceil(interval_control))\n                # For Xlabs ControlNet.\n                if controlnet_blocks_repeat:\n                    hidden_states = (\n                            hidden_states + controlnet_block_samples[index_block % len(controlnet_block_samples)]\n                    )\n                else:\n                    hidden_states = hidden_states + controlnet_block_samples[index_block // interval_control]\n        if siglip_tensor is not None:\n            siglip_tensor = drop_token(siglip_tensor, self.drop_token_prob, training=self.training)\n            hidden_states = hidden_states + self.siglip_embed(siglip_tensor)\n        hidden_states = torch.cat([encoder_hidden_states, hidden_states], dim=1)\n\n        for index_block, block in enumerate(self.single_transformer_blocks):\n            if torch.is_grad_enabled() and self.gradient_checkpointing:\n                hidden_states = self._gradient_checkpointing_func(\n                    block,\n                    hidden_states,\n                    temb,\n                    image_rotary_emb,\n                )\n\n            else:\n                hidden_states = block(\n                    hidden_states=hidden_states,\n                    temb=temb,\n                    image_rotary_emb=image_rotary_emb,\n                    joint_attention_kwargs=joint_attention_kwargs,\n                )\n\n            # controlnet residual\n            if controlnet_single_block_samples is not None:\n                interval_control = len(self.single_transformer_blocks) / len(controlnet_single_block_samples)\n                interval_control = int(np.ceil(interval_control))\n                hidden_states[:, encoder_hidden_states.shape[1]:, ...] = (\n                        hidden_states[:, encoder_hidden_states.shape[1]:, ...]\n                        + controlnet_single_block_samples[index_block // interval_control]\n                )\n\n        hidden_states = hidden_states[:, encoder_hidden_states.shape[1]:, ...]\n\n    hidden_states = self.norm_out(hidden_states, temb)\n    output = self.proj_out(hidden_states)\n\n    if USE_PEFT_BACKEND:\n        # remove `lora_scale` from each PEFT layer\n        unscale_lora_layers(self, lora_scale)\n\n    if not return_dict:\n        return (output,)\n\n    return Transformer2DModelOutput(sample=output)\n\n\nclass FluxPipelineWithSigLIP(FluxPipeline):\n\n    @torch.no_grad()\n    def __call__(\n            self,\n            siglip_tensor: torch.Tensor,\n            prompt: Union[str, List[str]] = None,\n            prompt_2: Optional[Union[str, List[str]]] = None,\n            negative_prompt: Union[str, List[str]] = None,\n            negative_prompt_2: Optional[Union[str, List[str]]] = None,\n            true_cfg_scale: float = 1.0,\n            true_cfg_scale_2: float = 1.0,\n            height: Optional[int] = None,\n            width: Optional[int] = None,\n            num_inference_steps: int = 28,\n            sigmas: Optional[List[float]] = None,\n            guidance_scale: float = 3.5,\n            num_images_per_prompt: Optional[int] = 1,\n            generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n            latents: Optional[torch.FloatTensor] = None,\n            prompt_embeds: Optional[torch.FloatTensor] = None,\n            pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n            ip_adapter_image: Optional[PipelineImageInput] = None,\n            ip_adapter_image_embeds: Optional[List[torch.Tensor]] = None,\n            negative_ip_adapter_image: Optional[PipelineImageInput] = None,\n            negative_ip_adapter_image_embeds: Optional[List[torch.Tensor]] = None,\n            negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n            negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n            output_type: Optional[str] = \"pil\",\n            return_dict: bool = True,\n            joint_attention_kwargs: Optional[Dict[str, Any]] = None,\n            callback_on_step_end: Optional[Callable[[int, int, Dict], None]] = None,\n            callback_on_step_end_tensor_inputs: List[str] = [\"latents\"],\n            max_sequence_length: int = 512,\n    ):\n        r\"\"\"\n        Function invoked when calling the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide the image generation. If not defined, one has to pass `prompt_embeds`.\n                instead.\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                will be used instead.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `true_cfg_scale` is\n                not greater than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in all the text-encoders.\n            true_cfg_scale (`float`, *optional*, defaults to 1.0):\n                When > 1.0 and a provided `negative_prompt`, enables true classifier-free guidance.\n            height (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The height in pixels of the generated image. This is set to 1024 by default for the best results.\n            width (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The width in pixels of the generated image. This is set to 1024 by default for the best results.\n            num_inference_steps (`int`, *optional*, defaults to 50):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            sigmas (`List[float]`, *optional*):\n                Custom sigmas to use for the denoising process with schedulers which support a `sigmas` argument in\n                their `set_timesteps` method. If not defined, the default behavior when `num_inference_steps` is passed\n                will be used.\n            guidance_scale (`float`, *optional*, defaults to 3.5):\n                Guidance scale as defined in [Classifier-Free Diffusion Guidance](https://arxiv.org/abs/2207.12598).\n                `guidance_scale` is defined as `w` of equation 2. of [Imagen\n                Paper](https://arxiv.org/pdf/2205.11487.pdf). Guidance scale is enabled by setting `guidance_scale >\n                1`. Higher guidance scale encourages to generate images that are closely linked to the text `prompt`,\n                usually at the expense of lower image quality.\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                One or a list of [torch generator(s)](https://pytorch.org/docs/stable/generated/torch.Generator.html)\n                to make generation deterministic.\n            latents (`torch.FloatTensor`, *optional*):\n                Pre-generated noisy latents, sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor will ge generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            ip_adapter_image: (`PipelineImageInput`, *optional*): Optional image input to work with IP Adapters.\n            ip_adapter_image_embeds (`List[torch.Tensor]`, *optional*):\n                Pre-generated image embeddings for IP-Adapter. It should be a list of length same as number of\n                IP-adapters. Each element should be a tensor of shape `(batch_size, num_images, emb_dim)`. If not\n                provided, embeddings are computed from the `ip_adapter_image` input argument.\n            negative_ip_adapter_image:\n                (`PipelineImageInput`, *optional*): Optional image input to work with IP Adapters.\n            negative_ip_adapter_image_embeds (`List[torch.Tensor]`, *optional*):\n                Pre-generated image embeddings for IP-Adapter. It should be a list of length same as number of\n                IP-adapters. Each element should be a tensor of shape `(batch_size, num_images, emb_dim)`. If not\n                provided, embeddings are computed from the `ip_adapter_image` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generate image. Choose between\n                [PIL](https://pillow.readthedocs.io/en/stable/): `PIL.Image.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.flux.FluxPipelineOutput`] instead of a plain tuple.\n            joint_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            callback_on_step_end (`Callable`, *optional*):\n                A function that calls at the end of each denoising steps during the inference. The function is called\n                with the following arguments: `callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int,\n                callback_kwargs: Dict)`. `callback_kwargs` will include a list of all tensors as specified by\n                `callback_on_step_end_tensor_inputs`.\n            callback_on_step_end_tensor_inputs (`List`, *optional*):\n                The list of tensor inputs for the `callback_on_step_end` function. The tensors specified in the list\n                will be passed as `callback_kwargs` argument. You will only be able to include variables listed in the\n                `._callback_tensor_inputs` attribute of your pipeline class.\n            max_sequence_length (`int` defaults to 512): Maximum sequence length to use with the `prompt`.\n\n        Examples:\n\n        Returns:\n            [`~pipelines.flux.FluxPipelineOutput`] or `tuple`: [`~pipelines.flux.FluxPipelineOutput`] if `return_dict`\n            is True, otherwise a `tuple`. When returning a tuple, the first element is a list with the generated\n            images.\n        \"\"\"\n        assert true_cfg_scale == true_cfg_scale_2\n\n        height = height or self.default_sample_size * self.vae_scale_factor\n        width = width or self.default_sample_size * self.vae_scale_factor\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            prompt_2,\n            height,\n            width,\n            negative_prompt=negative_prompt,\n            negative_prompt_2=negative_prompt_2,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            negative_pooled_prompt_embeds=negative_pooled_prompt_embeds,\n            callback_on_step_end_tensor_inputs=callback_on_step_end_tensor_inputs,\n            max_sequence_length=max_sequence_length,\n        )\n\n        self._guidance_scale = guidance_scale\n        self._joint_attention_kwargs = joint_attention_kwargs\n        self._current_timestep = None\n        self._interrupt = False\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        device = self._execution_device\n\n        lora_scale = (\n            self.joint_attention_kwargs.get(\"scale\", None) if self.joint_attention_kwargs is not None else None\n        )\n        has_neg_prompt = negative_prompt is not None or (\n                negative_prompt_embeds is not None and negative_pooled_prompt_embeds is not None\n        )\n        do_true_cfg = true_cfg_scale > 1 and has_neg_prompt\n        (\n            prompt_embeds,\n            pooled_prompt_embeds,\n            text_ids,\n        ) = self.encode_prompt(\n            prompt=prompt,\n            prompt_2=prompt_2,\n            prompt_embeds=prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            device=device,\n            num_images_per_prompt=num_images_per_prompt,\n            max_sequence_length=max_sequence_length,\n            lora_scale=lora_scale,\n        )\n        assert do_true_cfg\n        (\n            negative_prompt_embeds,\n            negative_pooled_prompt_embeds,\n            _,\n        ) = self.encode_prompt(\n            prompt=negative_prompt,\n            prompt_2=negative_prompt_2,\n            prompt_embeds=negative_prompt_embeds,\n            pooled_prompt_embeds=negative_pooled_prompt_embeds,\n            device=device,\n            num_images_per_prompt=num_images_per_prompt,\n            max_sequence_length=max_sequence_length,\n            lora_scale=lora_scale,\n        )\n\n        # 4. Prepare latent variables\n        num_channels_latents = self.transformer.config.in_channels // 4\n        latents, latent_image_ids = self.prepare_latents(\n            batch_size * num_images_per_prompt,\n            num_channels_latents,\n            height,\n            width,\n            prompt_embeds.dtype,\n            device,\n            generator,\n            latents,\n        )\n\n        # 5. Prepare timesteps\n        sigmas = np.linspace(1.0, 1 / num_inference_steps, num_inference_steps) if sigmas is None else sigmas\n        image_seq_len = latents.shape[1]\n        mu = calculate_shift(\n            image_seq_len,\n            self.scheduler.config.get(\"base_image_seq_len\", 256),\n            self.scheduler.config.get(\"max_image_seq_len\", 4096),\n            self.scheduler.config.get(\"base_shift\", 0.5),\n            self.scheduler.config.get(\"max_shift\", 1.15),\n        )\n        timesteps, num_inference_steps = retrieve_timesteps(\n            self.scheduler,\n            num_inference_steps,\n            device,\n            sigmas=sigmas,\n            mu=mu,\n        )\n        num_warmup_steps = max(len(timesteps) - num_inference_steps * self.scheduler.order, 0)\n        self._num_timesteps = len(timesteps)\n\n        # handle guidance\n        if self.transformer.config.guidance_embeds:\n            guidance = torch.full([1], guidance_scale, device=device, dtype=torch.float32)\n            guidance = guidance.expand(latents.shape[0] * 2)\n        else:\n            guidance = None\n\n        if (ip_adapter_image is not None or ip_adapter_image_embeds is not None) and (\n                negative_ip_adapter_image is None and negative_ip_adapter_image_embeds is None\n        ):\n            negative_ip_adapter_image = np.zeros((width, height, 3), dtype=np.uint8)\n            negative_ip_adapter_image = [negative_ip_adapter_image] * self.transformer.encoder_hid_proj.num_ip_adapters\n\n        elif (ip_adapter_image is None and ip_adapter_image_embeds is None) and (\n                negative_ip_adapter_image is not None or negative_ip_adapter_image_embeds is not None\n        ):\n            ip_adapter_image = np.zeros((width, height, 3), dtype=np.uint8)\n            ip_adapter_image = [ip_adapter_image] * self.transformer.encoder_hid_proj.num_ip_adapters\n\n        if self.joint_attention_kwargs is None:\n            self._joint_attention_kwargs = {}\n\n        image_embeds = None\n        negative_image_embeds = None\n        if ip_adapter_image is not None or ip_adapter_image_embeds is not None:\n            image_embeds = self.prepare_ip_adapter_image_embeds(\n                ip_adapter_image,\n                ip_adapter_image_embeds,\n                device,\n                batch_size * num_images_per_prompt,\n            )\n        if negative_ip_adapter_image is not None or negative_ip_adapter_image_embeds is not None:\n            negative_image_embeds = self.prepare_ip_adapter_image_embeds(\n                negative_ip_adapter_image,\n                negative_ip_adapter_image_embeds,\n                device,\n                batch_size * num_images_per_prompt,\n            )\n\n        # 6. Denoising loop\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                if self.interrupt:\n                    continue\n\n                self._current_timestep = t\n                if image_embeds is not None:\n                    self._joint_attention_kwargs[\"ip_adapter_image_embeds\"] = image_embeds\n                # broadcast to batch dimension in a way that's compatible with ONNX/Core ML\n                timestep = t.expand(latents.shape[0] * 2).to(latents.dtype)\n\n                batch_noise_pred = self.transformer(\n                    hidden_states=torch.cat([latents, latents], dim=0),\n                    timestep=timestep / 1000,\n                    guidance=guidance,\n                    pooled_projections=torch.cat([pooled_prompt_embeds, negative_pooled_prompt_embeds.expand_as(pooled_prompt_embeds)], dim=0),\n                    encoder_hidden_states=torch.cat([prompt_embeds, negative_prompt_embeds.expand_as(prompt_embeds)], dim=0),\n                    txt_ids=text_ids,\n                    img_ids=latent_image_ids,\n                    joint_attention_kwargs=self.joint_attention_kwargs,\n                    siglip_tensor=torch.cat([siglip_tensor, torch.zeros_like(siglip_tensor)], dim=0),\n                    return_dict=False,\n                )[0]\n                noise_pred, neg_noise_pred = batch_noise_pred.chunk(2)\n                noise_pred = neg_noise_pred + true_cfg_scale * (noise_pred - neg_noise_pred)\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents_dtype = latents.dtype\n                latents = self.scheduler.step(noise_pred, t, latents, return_dict=False)[0]\n\n                if latents.dtype != latents_dtype:\n                    if torch.backends.mps.is_available():\n                        # some platforms (eg. apple mps) misbehave due to a pytorch bug: https://github.com/pytorch/pytorch/pull/99272\n                        latents = latents.to(latents_dtype)\n\n                if callback_on_step_end is not None:\n                    callback_kwargs = {}\n                    for k in callback_on_step_end_tensor_inputs:\n                        callback_kwargs[k] = locals()[k]\n                    callback_outputs = callback_on_step_end(self, i, t, callback_kwargs)\n\n                    latents = callback_outputs.pop(\"latents\", latents)\n                    prompt_embeds = callback_outputs.pop(\"prompt_embeds\", prompt_embeds)\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n\n        self._current_timestep = None\n\n        if output_type == \"latent\":\n            image = latents\n        else:\n            latents = self._unpack_latents(latents, height, width, self.vae_scale_factor)\n            latents = (latents / self.vae.config.scaling_factor) + self.vae.config.shift_factor\n            image = self.vae.decode(latents, return_dict=False)[0]\n            image = self.image_processor.postprocess(image, output_type=output_type)\n\n        # Offload all models\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return (image,)\n\n        return FluxPipelineOutput(images=image)\n"
  },
  {
    "path": "pipelines/xomni/modeling_siglip_tokenizer.py",
    "content": "\n\nimport torch\nimport torch.nn as nn\nimport torch.nn.functional as F\nfrom torch import einsum\nfrom torchvision import transforms\n\nfrom PIL import Image\nfrom einops import rearrange\n\nfrom .modeling_vit import create_siglip_vit\n\n\ndef create_anyres_preprocess(\n    short_size=384,\n    long_size=1152,\n    patch_size=16,\n    random_ratio=None,\n    min_short_size=128,\n    max_aspect_ratio=3.,\n    filtering=True\n):\n\n    def resize_and_filtering(pil_image):\n        pil_image = pil_image.convert('RGB')\n        width, height = pil_image.size\n        ss, ls = min(width, height), max(width, height)\n        aspect_ratio = ls / ss\n        if filtering and (ss < min_short_size or aspect_ratio > max_aspect_ratio):\n            return None\n        target_width, target_height = width, height\n        if random_ratio is not None:\n            log_ratio = torch.log(torch.tensor(random_ratio))\n            sqrt_ratio = torch.exp(0.5 * torch.empty(1).uniform_(log_ratio[0], log_ratio[1])).item()\n            target_width = int(round(target_width * sqrt_ratio))\n            target_height = int(round(target_height / sqrt_ratio))\n\n        ss = min(target_width, target_height)\n        if ss < short_size:\n            target_width = target_width * (short_size / ss)\n            target_height = target_height * (short_size / ss)\n\n        ls = max(target_width, target_height)\n        if ls > long_size:\n            target_width = target_width * (long_size / ls)\n            target_height = target_height * (long_size / ls)\n\n        target_width = int(round(target_width / patch_size)) * patch_size\n        target_height = int(round(target_height / patch_size)) * patch_size\n        pil_image = pil_image.resize((target_width, target_height), resample=Image.BICUBIC)\n\n        to_tensor = transforms.Compose([\n            transforms.ToTensor(),\n            transforms.Normalize(mean=[0.5, 0.5, 0.5], std=[0.5, 0.5, 0.5]),\n        ])\n        return to_tensor(pil_image)\n\n    transform = transforms.Lambda(resize_and_filtering)\n    return transform\n\n\nclass IBQ(nn.Module):\n    def __init__(self, n_e, e_dim, skip_quantization_prob=0.0, quantization_temp=2.0, beta=0.25, sane_index_shape=False, l2_norm=True):\n        super().__init__()\n        self.n_e = n_e\n        self.e_dim = e_dim\n        self.quantization_temp = quantization_temp\n        self.skip_quantization_prob = skip_quantization_prob\n        self.beta = beta\n        self.sane_index_shape = sane_index_shape\n        self.l2_norm = l2_norm\n\n        self.embedding = nn.Embedding(self.n_e, self.e_dim)\n        self.embedding.weight.data.uniform_(-1.0 / self.n_e, 1.0 / self.n_e)\n        if self.l2_norm:\n            self.embedding.weight.data = F.normalize(self.embedding.weight.data, p=2, dim=-1)\n\n    def forward(self, z, temp=None, rescale_logits=False, return_logits=False, **kwargs):\n        assert temp is None or temp == 1.0, \"Only for interface compatible with Gumbel\"\n        assert rescale_logits == False, \"Only for interface compatible with Gumbel\"\n        assert return_logits == False, \"Only for interface compatible with Gumbel\"\n        # reshape z -> (batch, height, width, channel) and flatten\n        z = rearrange(z, 'b c h w -> b h w c').contiguous()\n        assert z.shape[-1] == self.e_dim\n        z_flattened = z.view(-1, self.e_dim)\n        # distances from z to embeddings e_j (z - e)^2 = z^2 + e^2 - 2 e * z\n\n        if self.l2_norm:\n            z = F.normalize(z, p=2, dim=-1)\n            z_flattened = F.normalize(z_flattened, p=2, dim=-1)\n            embedding = F.normalize(self.embedding.weight, p=2, dim=-1)\n        else:\n            embedding = self.embedding.weight\n\n        d = torch.sum(z_flattened ** 2, dim=1, keepdim=True) + \\\n            torch.sum(embedding**2, dim=1) - 2 * \\\n            torch.einsum('bd,dn->bn', z_flattened, torch.einsum('n d -> d n', embedding))\n\n        if self.training:\n            logits = -d / self.quantization_temp\n            soft_one_hot = F.softmax(logits, dim=1)\n            min_encoding_indices = soft_one_hot.max(1, keepdim=True)[1]\n            hard_one_hot = torch.zeros_like(logits, memory_format=torch.legacy_contiguous_format).scatter_(1, min_encoding_indices, 1.0)\n            one_hot = hard_one_hot - soft_one_hot.detach() + soft_one_hot\n\n            z_q = einsum('b n, n d -> b d', one_hot, self.embedding.weight).view(z.shape)\n            z_q_2 = einsum('b n, n d -> b d', hard_one_hot, self.embedding.weight).view(z.shape)\n\n            # compute loss for embedding\n            commit_loss = torch.mean((z_q - z) ** 2) + torch.mean((z_q_2.detach() - z) ** 2) + self.beta * \\\n                        torch.mean((z_q_2 - z.detach()) ** 2)\n        else:\n            min_encoding_indices = torch.argmin(d, dim=1)\n            z_q = embedding[min_encoding_indices].view(z.shape)\n            commit_loss = None\n\n        if self.training and self.skip_quantization_prob > 0.0:\n            z_q = torch.where(\n                torch.rand_like(z_q[:, 0:1, 0:1, 0:1]).expand_as(z_q) <= self.skip_quantization_prob,\n                z, z_q,\n            )\n\n        # reshape back to match original input shape\n        z_q = rearrange(z_q, 'b h w c -> b c h w').contiguous()\n\n        if self.sane_index_shape:\n            min_encoding_indices = min_encoding_indices.reshape(z_q.shape[0], z_q.shape[2], z_q.shape[3])\n\n        return (z_q, None, min_encoding_indices), commit_loss\n\n    def get_codebook_entry(self, indices, bhwc):\n        # shape specifying (batch, height, width, channel)\n        # get quantized latent vectors\n        z_q = self.embedding(indices)\n\n        if bhwc is not None:\n            z_q = z_q.view(bhwc)\n            # reshape back to match original input shape\n            z_q = z_q.permute(0, 3, 1, 2).contiguous()\n\n        return z_q\n\n\nclass ResidualBlock(nn.Module):\n    def __init__(self, channels, num_groups=32):\n        super().__init__()\n        self.conv1 = nn.Conv2d(channels, channels, 3, padding='same')\n        self.norm1 = nn.GroupNorm(num_groups=num_groups, num_channels=channels)\n        self.activate = nn.GELU()\n        self.conv2 = nn.Conv2d(channels, channels, 3, padding='same')\n        self.norm2 = nn.GroupNorm(num_groups=num_groups, num_channels=channels)\n\n    def forward(self, x):\n        res = x\n        x = self.norm1(x)\n        x = self.activate(x)\n        x = self.conv1(x)\n        x = self.norm2(x)\n        x = self.activate(x)\n        x = self.conv2(x)\n        return x + res\n\n\nclass VQConvProjector(nn.Module):\n    def __init__(\n        self,\n        z_channels=1536,\n        codebook_size=16384,\n        codebook_dim=2048,\n        conv_layers=2,\n        with_norm=True,\n        skip_quant_prob=0.1,\n    ):\n        super().__init__()\n        self.quant_conv = nn.Conv2d(z_channels, codebook_dim, 1)\n        self.quantize = IBQ(codebook_size, codebook_dim, skip_quant_prob, sane_index_shape=True)\n        self.post_quant_conv = nn.Conv2d(codebook_dim, z_channels, 1)\n        block = ResidualBlock\n        self.post_conv = nn.Sequential(*[block(z_channels) for _ in range(conv_layers)])\n\n    def forward(self, x, h, w):\n        x = rearrange(x, 'b (h w) c -> b c h w', h=h, w=w)\n        z = self.quant_conv(x)\n        (z_q, _, _), codebook_loss = self.quantize(z)\n        z = self.post_quant_conv(z_q)\n        z = self.post_conv(z)\n        z = rearrange(z, 'b c h w -> b (h w) c')\n        return z, codebook_loss\n\n    def encode(self, x, h, w):\n        x = rearrange(x, 'b (h w) c -> b c h w', h=h, w=w)\n        z = self.quant_conv(x)\n        (_, _, tokens), _ = self.quantize(z)\n        return tokens\n\n    def decode(self, tokens, bhwc):\n        z_q = self.quantize.get_codebook_entry(tokens, bhwc)\n        z = self.post_quant_conv(z_q)\n        z = self.post_conv(z)\n        return z\n\n\nclass SiglipTokenizer(nn.Module):\n    def __init__(\n        self,\n        siglip_name,\n        siglip_path,\n        projector_path,\n        z_channels=1536,\n        codebook_size=16384,\n        codebook_dim=2048,\n        with_norm=True\n    ):\n        super().__init__()\n        self.vit = create_siglip_vit(model_name=siglip_name, path=siglip_path)\n        self.vqproj = VQConvProjector(\n            z_channels=z_channels,\n            codebook_size=codebook_size,\n            codebook_dim=codebook_dim,\n            with_norm=with_norm\n        )\n        self.vqproj.load_state_dict(torch.load(projector_path, map_location='cpu'), strict=True)\n\n    def encode(self, x):\n        features, (h, w), _ = self.vit(x)\n        tokens = self.vqproj.encode(features, h, w)\n        return tokens\n\n    def decode(self, tokens, bhwc):\n        return self.vqproj.decode(tokens, bhwc)\n"
  },
  {
    "path": "pipelines/xomni/modeling_vit.py",
    "content": "import math\nimport warnings\nfrom dataclasses import dataclass\nfrom functools import partial\nfrom typing import (\n    Callable, Dict, Final, List, Literal, Optional,\n    Sequence, Set, Tuple, Type, Union,\n)\n\nfrom torch.utils.checkpoint import checkpoint\nimport torch\nimport torch.nn as nn\nimport torch.nn.functional as F\n\nfrom timm.layers import (\n    DropPath, LayerType, Mlp, PatchDropout,\n    PatchEmbed, resample_abs_pos_embed,\n)\nfrom timm.models._manipulate import checkpoint_seq, named_apply\n\nfrom flash_attn import flash_attn_func, flash_attn_varlen_func\n\n\ndef _no_grad_trunc_normal_(tensor, mean, std, a, b):\n    # Cut & paste from PyTorch official master until it's in a few official releases - RW\n    # Method based on https://people.sc.fsu.edu/~jburkardt/presentations/truncated_normal.pdf\n    def norm_cdf(x):\n        # Computes standard normal cumulative distribution function\n        return (1.0 + math.erf(x / math.sqrt(2.0))) / 2.0\n\n    if (mean < a - 2 * std) or (mean > b + 2 * std):\n        warnings.warn(\n            \"mean is more than 2 std from [a, b] in nn.init.trunc_normal_. \"\n            \"The distribution of values may be incorrect.\",\n            stacklevel=2,\n        )\n\n    with torch.no_grad():\n        # Values are generated by using a truncated uniform distribution and\n        # then using the inverse CDF for the normal distribution.\n        # Get upper and lower cdf values\n        l = norm_cdf((a - mean) / std)  # noqa: E741\n        u = norm_cdf((b - mean) / std)\n\n        # Uniformly fill tensor with values from [l, u], then translate to\n        # [2l-1, 2u-1].\n        tensor.uniform_(2 * l - 1, 2 * u - 1)\n\n        # Use inverse cdf transform for normal distribution to get truncated\n        # standard normal\n        tensor.erfinv_()\n\n        # Transform to proper mean, std\n        tensor.mul_(std * math.sqrt(2.0))\n        tensor.add_(mean)\n\n        # Clamp to ensure it's in the proper range\n        tensor.clamp_(min=a, max=b)\n        return tensor\n\n\ndef trunc_normal_(tensor, mean=0.0, std=1.0, a=-2.0, b=2.0):\n    # type: (torch.Tensor, float, float, float, float) -> torch.Tensor\n    r\"\"\"The original timm.models.layers.weight_init.trunc_normal_ can not handle bfloat16 yet, here we first\n    convert the tensor to float32, apply the trunc_normal_() in float32, and then convert it back to its orignal dtype.\n    Fills the input Tensor with values drawn from a truncated normal distribution. The values are effectively drawn\n    from the normal distribution :math:`\\mathcal{N}(\\text{mean}, \\text{std}^2)`\n    with values outside :math:`[a, b]` redrawn until they are within\n    the bounds. The method used for generating the random values works\n    best when :math:`a \\leq \\text{mean} \\leq b`.\n    Args:\n        tensor: an n-dimensional `torch.Tensor`\n        mean: the mean of the normal distribution\n        std: the standard deviation of the normal distribution\n        a: the minimum cutoff value\n        b: the maximum cutoff value\n    Examples:\n        >>> w = torch.empty(3, 5)\n        >>> nn.init.trunc_normal_(w)\n    \"\"\"\n\n    with torch.no_grad():\n        dtype = tensor.dtype\n        tensor_fp32 = tensor.float()\n        tensor_fp32 = _no_grad_trunc_normal_(tensor_fp32, mean, std, a, b)\n        tensor_dtype = tensor_fp32.to(dtype=dtype)\n        tensor.copy_(tensor_dtype)\n\n\ndef init_weights(self):\n    if self.pos_embed is not None:\n        trunc_normal_(self.pos_embed, std=self.pos_embed.shape[1] ** -0.5)\n    trunc_normal_(self.latent, std=self.latent_dim**-0.5)\n\n\ndef init_weights_vit_timm(module: nn.Module, name: str = \"\") -> None:\n    \"\"\"ViT weight initialization, original timm impl (for reproducibility)\"\"\"\n    if isinstance(module, nn.Linear):\n        trunc_normal_(module.weight, std=0.02)\n        if module.bias is not None:\n            nn.init.zeros_(module.bias)\n    elif hasattr(module, \"init_weights\"):\n        module.init_weights()\n\n\nclass Attention(nn.Module):\n    fused_attn: Final[bool]\n\n    def __init__(\n        self,\n        dim: int,\n        num_heads: int = 8,\n        qkv_bias: bool = False,\n        qk_norm: bool = False,\n        attn_drop: float = 0.0,\n        proj_drop: float = 0.0,\n        norm_layer: nn.Module = nn.LayerNorm,\n    ) -> None:\n        super().__init__()\n        assert dim % num_heads == 0, \"dim should be divisible by num_heads\"\n        self.num_heads = num_heads\n        self.head_dim = dim // num_heads\n        self.scale = self.head_dim**-0.5\n        # self.fused_attn = use_fused_attn()\n        self.fused_attn = True\n\n        self.qkv = nn.Linear(dim, dim * 3, bias=qkv_bias)\n        self.q_norm = norm_layer(self.head_dim) if qk_norm else nn.Identity()\n        self.k_norm = norm_layer(self.head_dim) if qk_norm else nn.Identity()\n        self.attn_drop = nn.Dropout(attn_drop)\n        self.proj = nn.Linear(dim, dim)\n        self.proj_drop = nn.Dropout(proj_drop) if proj_drop > 0.0 else nn.Identity()\n\n    def forward(self, x: torch.Tensor, cu_slens=None) -> torch.Tensor:\n        B, N, C = x.shape\n        qkv = (\n            self.qkv(x)\n            .reshape(B, N, 3, self.num_heads, self.head_dim)\n            .permute(2, 0, 3, 1, 4)\n        )\n        q, k, v = qkv.unbind(0)\n        q, k = self.q_norm(q), self.k_norm(k)\n\n        if cu_slens is not None:\n            q = q.permute(0, 2, 1, 3)   # B, num_heads, N, C -> B, N, num_heads, C\n            k = k.permute(0, 2, 1, 3)\n            v = v.permute(0, 2, 1, 3)\n            max_seqlen = torch.max(cu_slens[1:] - cu_slens[:-1]).item()\n            x = flash_attn_varlen_func(\n                q.squeeze(0),\n                k.squeeze(0),\n                v.squeeze(0),\n                cu_seqlens_q=cu_slens,\n                cu_seqlens_k=cu_slens,\n                max_seqlen_q=max_seqlen,\n                max_seqlen_k=max_seqlen,\n                softmax_scale=self.scale,\n                causal=False,\n                )\n\n            x = x.reshape(B, N, -1)\n            x = self.proj(x)\n            x = self.proj_drop(x)\n\n        else:\n            q = q.permute(0, 2, 1, 3)   # B, num_heads, N, C -> B, N, num_heads, C\n            k = k.permute(0, 2, 1, 3)\n            v = v.permute(0, 2, 1, 3)\n            x = flash_attn_func(q, k, v, softmax_scale=self.scale) # -> b, n, h, c\n\n            x = x.reshape(B, N, -1)\n            x = self.proj(x)\n            x = self.proj_drop(x)\n        return x\n\n\nclass LayerScale(nn.Module):\n    def __init__(\n        self,\n        dim: int,\n        init_values: float = 1e-5,\n        inplace: bool = False,\n    ) -> None:\n        super().__init__()\n        self.inplace = inplace\n        self.gamma = nn.Parameter(init_values * torch.ones(dim))\n\n    def forward(self, x: torch.Tensor) -> torch.Tensor:\n        return x.mul_(self.gamma) if self.inplace else x * self.gamma\n\n\nclass Block(nn.Module):\n    def __init__(\n        self,\n        dim: int,\n        num_heads: int,\n        mlp_ratio: float = 4.0,\n        qkv_bias: bool = False,\n        qk_norm: bool = False,\n        proj_drop: float = 0.0,\n        attn_drop: float = 0.0,\n        init_values: Optional[float] = None,\n        drop_path: float = 0.0,\n        act_layer: nn.Module = nn.GELU,\n        norm_layer: nn.Module = nn.LayerNorm,\n        mlp_layer: nn.Module = Mlp,\n    ) -> None:\n        super().__init__()\n        self.norm1 = norm_layer(dim)\n        self.attn = Attention(\n            dim,\n            num_heads=num_heads,\n            qkv_bias=qkv_bias,\n            qk_norm=qk_norm,\n            attn_drop=attn_drop,\n            proj_drop=proj_drop,\n            norm_layer=norm_layer,\n        )\n        self.ls1 = (\n            LayerScale(dim, init_values=init_values) if init_values else nn.Identity()\n        )\n        self.drop_path1 = DropPath(drop_path) if drop_path > 0.0 else nn.Identity()\n\n        self.norm2 = norm_layer(dim)\n        self.mlp = mlp_layer(\n            in_features=dim,\n            hidden_features=int(dim * mlp_ratio),\n            act_layer=act_layer,\n            drop=proj_drop,\n        )\n        self.ls2 = (\n            LayerScale(dim, init_values=init_values) if init_values else nn.Identity()\n        )\n        self.drop_path2 = DropPath(drop_path) if drop_path > 0.0 else nn.Identity()\n\n    def forward(self, x: torch.Tensor, cu_slens=None) -> torch.Tensor:\n        x = x + self.drop_path1(self.ls1(self.attn(self.norm1(x), cu_slens=cu_slens)))\n        x = x + self.drop_path2(self.ls2(self.mlp(self.norm2(x))))\n        return x\n\n\nclass VisionTransformer(nn.Module):\n    \"\"\"Vision Transformer\n\n    A PyTorch impl of : `An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale`\n        - https://arxiv.org/abs/2010.11929\n    \"\"\"\n\n    dynamic_img_size: Final[bool]\n\n    def __init__(\n        self,\n        img_size: Union[int, Tuple[int, int]] = 224,\n        patch_size: Union[int, Tuple[int, int]] = 16,\n        in_chans: int = 3,\n        num_classes: int = 1000,\n        global_pool: Literal[\"\", \"avg\", \"token\", \"map\"] = \"token\",\n        embed_dim: int = 768,\n        depth: int = 12,\n        num_heads: int = 12,\n        mlp_ratio: float = 4.0,\n        qkv_bias: bool = True,\n        qk_norm: bool = False,\n        init_values: Optional[float] = None,\n        class_token: bool = True,\n        no_embed_class: bool = False,\n        reg_tokens: int = 0,\n        pre_norm: bool = False,\n        fc_norm: Optional[bool] = None,\n        dynamic_img_size: bool = False,\n        dynamic_img_pad: bool = False,\n        drop_rate: float = 0.0,\n        pos_drop_rate: float = 0.0,\n        patch_drop_rate: float = 0.0,\n        proj_drop_rate: float = 0.0,\n        attn_drop_rate: float = 0.0,\n        drop_path_rate: float = 0.0,\n        weight_init: Literal[\"skip\", \"jax\", \"jax_nlhb\", \"moco\", \"\"] = \"\",\n        embed_layer: Callable = PatchEmbed,\n        norm_layer: Optional[LayerType] = None,\n        act_layer: Optional[LayerType] = None,\n        strict_img_size: bool = False,\n        block_fn: Type[nn.Module] = Block,\n        mlp_layer: Type[nn.Module] = Mlp,\n        ignore_head: bool = False,\n    ) -> None:\n        \"\"\"\n        Args:\n            img_size: Input image size.\n            patch_size: Patch size.\n            in_chans: Number of image input channels.\n            num_classes: Mumber of classes for classification head.\n            global_pool: Type of global pooling for final sequence (default: 'token').\n            embed_dim: Transformer embedding dimension.\n            depth: Depth of transformer.\n            num_heads: Number of attention heads.\n            mlp_ratio: Ratio of mlp hidden dim to embedding dim.\n            qkv_bias: Enable bias for qkv projections if True.\n            init_values: Layer-scale init values (layer-scale enabled if not None).\n            class_token: Use class token.\n            no_embed_class: Don't include position embeddings for class (or reg) tokens.\n            reg_tokens: Number of register tokens.\n            fc_norm: Pre head norm after pool (instead of before), if None, enabled when global_pool == 'avg'.\n            drop_rate: Head dropout rate.\n            pos_drop_rate: Position embedding dropout rate.\n            attn_drop_rate: Attention dropout rate.\n            drop_path_rate: Stochastic depth rate.\n            weight_init: Weight initialization scheme.\n            embed_layer: Patch embedding layer.\n            norm_layer: Normalization layer.\n            act_layer: MLP activation layer.\n            block_fn: Transformer block layer.\n        \"\"\"\n        super().__init__()\n        assert global_pool in (\"\", \"avg\", \"token\", \"map\")\n        assert class_token or global_pool != \"token\"\n        use_fc_norm = global_pool == \"avg\" if fc_norm is None else fc_norm\n        # norm_layer = get_norm_layer(norm_layer) or partial(nn.LayerNorm, eps=1e-6)\n        # act_layer = get_act_layer(act_layer) or nn.GELU\n        norm_layer = partial(nn.LayerNorm, eps=1e-6)\n        act_layer = nn.GELU\n\n        self.num_classes = num_classes\n        self.global_pool = global_pool\n        self.num_features = self.embed_dim = (\n            embed_dim  # num_features for consistency with other models\n        )\n        self.num_prefix_tokens = 1 if class_token else 0\n        self.num_prefix_tokens += reg_tokens\n        self.num_reg_tokens = reg_tokens\n        self.has_class_token = class_token\n        self.no_embed_class = (\n            no_embed_class  # don't embed prefix positions (includes reg)\n        )\n        self.dynamic_img_size = dynamic_img_size\n        self.grad_checkpointing = False\n        self.ignore_head = ignore_head\n\n        embed_args = {}\n        if dynamic_img_size:\n            # flatten deferred until after pos embed\n            embed_args.update(dict(strict_img_size=False, output_fmt=\"NHWC\"))\n        self.patch_embed = embed_layer(\n            img_size=img_size,\n            patch_size=patch_size,\n            in_chans=in_chans,\n            embed_dim=embed_dim,\n            bias=not pre_norm,  # disable bias if pre-norm is used (e.g. CLIP)\n            dynamic_img_pad=dynamic_img_pad,\n            strict_img_size=strict_img_size,\n            **embed_args,\n        )\n        num_patches = self.patch_embed.num_patches\n\n        self.cls_token = (\n            nn.Parameter(torch.zeros(1, 1, embed_dim)) if class_token else None\n        )\n        self.reg_token = (\n            nn.Parameter(torch.zeros(1, reg_tokens, embed_dim)) if reg_tokens else None\n        )\n        embed_len = (\n            num_patches if no_embed_class else num_patches + self.num_prefix_tokens\n        )\n        self.pos_embed = nn.Parameter(torch.randn(1, embed_len, embed_dim) * 0.02)\n        self.pos_drop = nn.Dropout(p=pos_drop_rate)\n        if patch_drop_rate > 0:\n            self.patch_drop = PatchDropout(\n                patch_drop_rate,\n                num_prefix_tokens=self.num_prefix_tokens,\n            )\n        else:\n            self.patch_drop = nn.Identity()\n        self.norm_pre = norm_layer(embed_dim) if pre_norm else nn.Identity()\n\n        dpr = [\n            x.item() for x in torch.linspace(0, drop_path_rate, depth)\n        ]  # stochastic depth decay rule\n        self.blocks = nn.Sequential(\n            *[\n                block_fn(\n                    dim=embed_dim,\n                    num_heads=num_heads,\n                    mlp_ratio=mlp_ratio,\n                    qkv_bias=qkv_bias,\n                    qk_norm=qk_norm,\n                    init_values=init_values,\n                    proj_drop=proj_drop_rate,\n                    attn_drop=attn_drop_rate,\n                    drop_path=dpr[i],\n                    norm_layer=norm_layer,\n                    act_layer=act_layer,\n                    mlp_layer=mlp_layer,\n                )\n                for i in range(depth)\n            ]\n        )\n\n    def init_weights(self, mode: Literal[\"jax\", \"jax_nlhb\", \"moco\", \"\"] = \"\") -> None:\n        assert mode in (\"jax\", \"jax_nlhb\", \"moco\", \"\")\n        # head_bias = -math.log(self.num_classes) if \"nlhb\" in mode else 0.0\n        trunc_normal_(self.pos_embed, std=0.02)\n        if self.cls_token is not None:\n            nn.init.normal_(self.cls_token, std=1e-6)\n        named_apply(init_weights_vit_timm, self)\n\n    @torch.jit.ignore\n    def no_weight_decay(self) -> Set:\n        return {\"pos_embed\", \"cls_token\", \"dist_token\"}\n\n    @torch.jit.ignore\n    def group_matcher(self, coarse: bool = False) -> Dict:\n        return dict(\n            stem=r\"^cls_token|pos_embed|patch_embed\",  # stem and embed\n            blocks=[(r\"^blocks\\.(\\d+)\", None), (r\"^norm\", (99999,))],\n        )\n\n    @torch.jit.ignore\n    def set_grad_checkpointing(self, enable: bool = True) -> None:\n        self.grad_checkpointing = enable\n\n    @torch.jit.ignore\n    def get_classifier(self) -> nn.Module:\n        return self.head\n\n    def reset_classifier(self, num_classes: int, global_pool=None) -> None:\n        self.num_classes = num_classes\n        if global_pool is not None:\n            assert global_pool in (\"\", \"avg\", \"token\", \"map\")\n            if global_pool == \"map\" and self.attn_pool is None:\n                assert (\n                    False\n                ), \"Cannot currently add attention pooling in reset_classifier().\"\n            elif global_pool != \"map \" and self.attn_pool is not None:\n                self.attn_pool = None  # remove attention pooling\n            self.global_pool = global_pool\n        self.head = (\n            nn.Linear(self.embed_dim, num_classes) if num_classes > 0 else nn.Identity()\n        )\n\n    def rescale_positional_embedding(self, out_size):\n        h, w = out_size\n        pos_embed_shape = int((self.pos_embed.shape[1]) ** 0.5)\n        if (h, w) == (pos_embed_shape, pos_embed_shape):\n            return self.pos_embed\n        rescaled_positional_embedding = \\\n            self.pos_embed.new_zeros(1, h*w, self.pos_embed.shape[2])\n        pe_2d = self.pos_embed[0].T.contiguous().view(1, -1, pos_embed_shape, pos_embed_shape)\n        pe_2d = F.interpolate(pe_2d, out_size, mode='bilinear', align_corners=False).view(-1, h*w)\n        rescaled_positional_embedding[0] = pe_2d.T.contiguous()\n        return rescaled_positional_embedding\n\n    def _pos_embed(self, x: torch.Tensor) -> torch.Tensor:\n        if self.dynamic_img_size:\n            B, H, W, C = x.shape\n            pos_embed = resample_abs_pos_embed(\n                self.pos_embed,\n                (H, W),\n                num_prefix_tokens=0 if self.no_embed_class else self.num_prefix_tokens,\n            )\n            x = x.view(B, -1, C)\n        else:\n            pos_embed = self.pos_embed\n\n        to_cat = []\n        if self.cls_token is not None:\n            to_cat.append(self.cls_token.expand(x.shape[0], -1, -1))\n        if self.reg_token is not None:\n            to_cat.append(self.reg_token.expand(x.shape[0], -1, -1))\n\n        if self.no_embed_class:\n            # deit-3, updated JAX (big vision)\n            # position embedding does not overlap with class token, add then concat\n            x = x + pos_embed\n            if to_cat:\n                x = torch.cat(to_cat + [x], dim=1)\n        else:\n            # original timm, JAX, and deit vit impl\n            # pos_embed has entry for class token, concat then add\n            if to_cat:\n                x = torch.cat(to_cat + [x], dim=1)\n            x = x + pos_embed\n\n        return self.pos_drop(x)\n\n    def _intermediate_layers(\n        self,\n        x: torch.Tensor,\n        n: Union[int, Sequence] = 1,\n    ) -> List[torch.Tensor]:\n        outputs, num_blocks = [], len(self.blocks)\n        take_indices = set(\n            range(num_blocks - n, num_blocks) if isinstance(n, int) else n\n        )\n\n        # forward pass\n        x = self.patch_embed(x)\n        x = self._pos_embed(x)\n        x = self.patch_drop(x)\n        x = self.norm_pre(x)\n        for i, blk in enumerate(self.blocks):\n            x = blk(x)\n            if i in take_indices:\n                outputs.append(x)\n\n        return outputs\n\n    def get_intermediate_layers(\n        self,\n        x: torch.Tensor,\n        n: Union[int, Sequence] = 1,\n        reshape: bool = False,\n        return_prefix_tokens: bool = False,\n        norm: bool = False,\n    ) -> Tuple[Union[torch.Tensor, Tuple[torch.Tensor]]]:\n        \"\"\"Intermediate layer accessor (NOTE: This is a WIP experiment).\n        Inspired by DINO / DINOv2 interface\n        \"\"\"\n        # take last n blocks if n is an int, if in is a sequence, select by matching indices\n        outputs = self._intermediate_layers(x, n)\n        if norm:\n            outputs = [self.norm(out) for out in outputs]\n        prefix_tokens = [out[:, 0 : self.num_prefix_tokens] for out in outputs]\n        outputs = [out[:, self.num_prefix_tokens :] for out in outputs]\n\n        if reshape:\n            grid_size = self.patch_embed.grid_size\n            outputs = [\n                out.reshape(x.shape[0], grid_size[0], grid_size[1], -1)\n                .permute(0, 3, 1, 2)\n                .contiguous()\n                for out in outputs\n            ]\n\n        if return_prefix_tokens:\n            return tuple(zip(outputs, prefix_tokens))\n        return tuple(outputs)\n\n    def forward_features_list(self, x_list):\n        x_all = []\n        image_sizes = []\n        for x in x_list:\n            bs, _, h, w = x.shape\n\n            # fix patch size=14 in datasets\n            pad_h = (self.patch_embed.patch_size[0] - h % self.patch_embed.patch_size[0]) % self.patch_embed.patch_size[0]\n            pad_w = (self.patch_embed.patch_size[1] - w % self.patch_embed.patch_size[1]) % self.patch_embed.patch_size[1]\n            x = F.pad(x, (0, pad_w, 0, pad_h))\n\n            bs, _, h, w = x.shape\n\n            h = h // self.patch_embed.patch_size[0]\n            w = w // self.patch_embed.patch_size[1]\n\n            x = self.patch_embed(x)\n            x = x + self.rescale_positional_embedding(out_size=(h, w))\n            x = self.patch_drop(x)\n            x = self.norm_pre(x)\n            x_all.append(x)\n            image_sizes.append((h, w))\n\n        slen = [xi.size(1) for xi in x_all]\n        x = torch.cat(x_all, dim=1)\n\n        cu_indices = [0, ]\n        for i in slen:\n            cu_indices.append(cu_indices[-1] + i)\n\n        cu_slens = torch.tensor(cu_indices, dtype=torch.int32).to(x.device)\n        for idx, blk in enumerate(self.blocks):\n            if self.grad_checkpointing and not torch.jit.is_scripting():\n                x = checkpoint(blk, x, cu_slens, use_reentrant=True)\n            else:\n                x = blk(x, cu_slens=cu_slens)\n        feats = x.split(slen, dim=1) #[(1, slen, c)]\n        return feats, image_sizes\n\n    def forward_features(self, x: torch.Tensor) -> torch.Tensor:\n        bs, _, h, w = x.shape\n        h = h // self.patch_embed.patch_size[0]\n        w = w // self.patch_embed.patch_size[1]\n\n        x = self.patch_embed(x)\n        # x = self._pos_embed(x)\n        x = x + self.rescale_positional_embedding(out_size=(h, w))\n        x = self.patch_drop(x)\n        x = self.norm_pre(x)\n        if self.grad_checkpointing and not torch.jit.is_scripting():\n            x = checkpoint_seq(self.blocks, x)\n        else:\n            x = self.blocks(x)\n        return x, (h, w)\n\n    def forward_head(self, x: torch.Tensor, pre_logits: bool = False) -> torch.Tensor:\n        x = self.norm(x)\n        if self.attn_pool is not None:\n            x = self.attn_pool(x)\n        elif self.global_pool == \"avg\":\n            x = x[:, self.num_prefix_tokens :].mean(dim=1)\n        elif self.global_pool:\n            x = x[:, 0]  # class token\n        x = self.fc_norm(x)\n        x = self.head_drop(x)\n        return x if pre_logits else self.head(x)\n\n    def forward(self, x, cal_attn_pool=False):\n        if type(x) is list:\n            x, image_sizes = self.forward_features_list(x)\n            return x, image_sizes, None\n        else:\n            x, image_sizes = self.forward_features(x)\n            return x, image_sizes, None\n\n@dataclass\nclass SigLIPVisionCfg:\n    width: int = 1152\n    layers: Union[Tuple[int, int, int, int], int] = 27\n    heads: int = 16\n    patch_size: int = 14\n    image_size: Union[Tuple[int, int], int] = 336\n    global_pool: str = \"map\"\n    mlp_ratio: float = 3.7362\n    class_token: bool = False\n    num_classes: int = 0\n    use_checkpoint: bool = False\n\n\nSigLIP_MODEL_CONFIG = {\n    \"siglip_so400m_patch16_384\": {\n        \"image_size\": 384,\n        \"patch_size\": 16,\n        \"width\": 1152,\n        \"layers\": 27,\n        \"heads\": 16,\n        \"mlp_ratio\": 3.7362,\n        \"global_pool\": \"map\",\n        \"use_checkpoint\": False,\n    },\n    \"siglip2_giant_patch16_384\":{\n        \"image_size\": 384,\n        \"patch_size\": 16,\n        \"width\": 1536,\n        \"layers\": 40,\n        \"heads\": 16,\n        \"mlp_ratio\": 4,\n        \"global_pool\": \"map\",\n        \"use_checkpoint\": False,\n    },\n}\n\n\ndef resize_evaclip_pos_embed(model: VisionTransformer, interpolation: str = 'bicubic'):\n    # interpolate position embedding\n    orig_size = 24\n    new_size = 128\n    pos_tokens = model.pos_embed\n    pos_tokens = pos_tokens.reshape(-1, orig_size, orig_size, model.embed_dim).permute(0, 3, 1, 2)\n    pos_tokens = torch.nn.functional.interpolate(\n        pos_tokens, size=(new_size, new_size), mode=interpolation, align_corners=False)\n    pos_tokens = pos_tokens.permute(0, 2, 3, 1).flatten(1, 2)\n    model.pos_embed = nn.Parameter(pos_tokens, requires_grad=True)\n    return model\n\n\ndef create_siglip_vit(\n    model_name: str = \"siglip_so400m_patch14_384\",\n    select_layer: int = -1,\n    path: str = \"\",\n    gradient_checkpointing: bool = False,\n    **kwargs,\n):\n    vision_cfg = SigLIPVisionCfg(**SigLIP_MODEL_CONFIG[model_name])\n\n    if select_layer <= 0:\n        layers = min(vision_cfg.layers, vision_cfg.layers + select_layer + 1)\n    else:\n        layers = min(vision_cfg.layers, select_layer)\n\n    model = VisionTransformer(\n        img_size=2048,\n        patch_size=16,\n        embed_dim=vision_cfg.width,\n        depth=layers,\n        num_heads=vision_cfg.heads,\n        mlp_ratio=vision_cfg.mlp_ratio,\n        class_token=vision_cfg.class_token,\n        global_pool=vision_cfg.global_pool,\n        dynamic_img_pad=False,\n        strict_img_size=False,\n        ignore_head=kwargs.get(\"ignore_head\", False),\n        weight_init=kwargs.get(\"weight_init\", \"skip\"),\n        num_classes=0\n    )\n    model.config = vision_cfg\n    state_dict = torch.load(path, map_location=\"cpu\")\n    model.load_state_dict(state_dict, strict=False)\n\n    if gradient_checkpointing:\n        model.set_grad_checkpointing(True)\n    return model\n"
  },
  {
    "path": "pipelines/xomni/modeling_xomni.py",
    "content": "import os\nfrom types import SimpleNamespace\nfrom typing import Tuple, List, Optional, Union\n\nimport torch\nimport torch.nn as nn\n\nfrom huggingface_hub import hf_hub_download\nfrom transformers import Qwen2ForCausalLM, AutoModel, AutoModelForCausalLM\nfrom transformers.modeling_outputs import CausalLMOutputWithPast\nfrom transformers.models.qwen2.modeling_qwen2 import Qwen2RMSNorm, Qwen2RotaryEmbedding, Qwen2DecoderLayer, Qwen2Model, Qwen2PreTrainedModel\n\nfrom .configuration_xomni import XOmniConfig\nfrom .modeling_siglip_tokenizer import create_anyres_preprocess, SiglipTokenizer\nfrom .modeling_siglip_flux import FluxTransformer2DModelWithSigLIP, FluxPipelineWithSigLIP\nfrom .modeling_vit import create_siglip_vit\n\n\nclass XOmniDecoderLayer(Qwen2DecoderLayer):\n    def __init__(self, config: XOmniConfig, layer_idx: int):\n        super().__init__(config, layer_idx)\n        self.layer_idx = layer_idx\n        self.is_lm_layer = config.num_mm_adap_layers <= layer_idx < config.num_hidden_layers - config.num_mm_head_layers\n\n    def forward(\n        self,\n        hidden_states: torch.Tensor,\n        **kwargs,\n    ) -> Tuple[torch.FloatTensor, Optional[Tuple[torch.FloatTensor, torch.FloatTensor]]]:\n        hidden_states, multimodal_mask = torch.split(hidden_states, hidden_states.shape[-1] // 2, dim=-1)\n        if self.is_lm_layer:\n            output_hidden_states, *others = super().forward(hidden_states, **kwargs)\n            output_hidden_states = torch.cat([output_hidden_states, multimodal_mask], dim=-1)\n            return output_hidden_states, *others\n\n        # mm_hidden_states = torch.where(multimodal_mask.bool(), hidden_states, torch.zeros_like(hidden_states))\n        output_hidden_states, *others = super().forward(hidden_states, **kwargs)\n        output_hidden_states = torch.where(multimodal_mask.bool(), output_hidden_states, hidden_states)\n        output_hidden_states = torch.cat([output_hidden_states, multimodal_mask], dim=-1)\n        return output_hidden_states, *others\n\n\nclass XOmniModel(Qwen2Model, Qwen2PreTrainedModel):\n    model_type = \"x-omni\"\n    config_class = XOmniConfig\n\n    def __init__(self, config: XOmniConfig):\n        Qwen2PreTrainedModel.__init__(self, config)\n        self.padding_idx = -1\n        self.vocab_size = config.vocab_size\n\n        self.lm_embed_tokens = nn.Embedding(config.vocab_size, config.hidden_size, self.padding_idx)\n        self.mm_embed_tokens = nn.Embedding(config.mm_vocab_size, config.hidden_size, self.padding_idx)\n\n        self.layers = nn.ModuleList(\n            [XOmniDecoderLayer(config, layer_idx) for layer_idx in range(config.num_hidden_layers)]\n        )\n        self._attn_implementation = config._attn_implementation\n        self.lm_norm = Qwen2RMSNorm(config.hidden_size, eps=config.rms_norm_eps)\n        self.mm_norm = Qwen2RMSNorm(config.hidden_size, eps=config.rms_norm_eps)\n        self.rotary_emb = Qwen2RotaryEmbedding(config=config)\n\n        self.gradient_checkpointing = False\n        # Initialize weights and apply final processing\n        self.post_init()\n\n    def get_input_embeddings(self):\n        return self.lm_embed_tokens\n\n    def set_input_embeddings(self, value):\n        self.lm_embed_tokens = value\n\n    def embed_tokens(self, input_ids):\n        (B, L), C = input_ids.shape, self.config.hidden_size\n        multimodal_mask = input_ids >= self.config.vocab_size\n        lm_input_ids = input_ids[~multimodal_mask][None, :]\n        mm_input_ids = input_ids[multimodal_mask][None, :] - self.config.vocab_size\n        lm_embeds = self.lm_embed_tokens(lm_input_ids)\n        mm_embeds = self.mm_embed_tokens(mm_input_ids)\n\n        inputs_embeds = lm_embeds.new_empty((B, L, C))\n        multimodal_mask = multimodal_mask[:, :, None].expand_as(inputs_embeds)\n        inputs_embeds[~multimodal_mask] = lm_embeds.reshape(-1)\n        inputs_embeds[multimodal_mask] = mm_embeds.reshape(-1)\n\n        inputs_embeds = torch.cat([inputs_embeds, multimodal_mask.to(inputs_embeds.dtype)], dim=-1)\n        return inputs_embeds\n\n    def norm(self, hidden_states):\n        hidden_states, multimodal_mask = torch.split(hidden_states, hidden_states.shape[-1] // 2, dim=-1)\n        return torch.where(multimodal_mask.bool(), self.mm_norm(hidden_states), self.lm_norm(hidden_states))\n\n\nclass XOmniForCausalLM(Qwen2ForCausalLM):\n    model_type = \"x-omni\"\n    config_class = XOmniConfig\n\n    _keys_to_ignore_on_load_missing = r'image_tokenizer\\.*'\n\n    def __init__(self, config):\n        super().__init__(config)\n        self.model = XOmniModel(config)\n        self.lm_head = nn.Linear(config.hidden_size, config.vocab_size, bias=False)\n        self.mm_head = nn.Linear(config.hidden_size, config.mm_vocab_size, bias=False)\n\n        self.generation_mode = 'text'\n        # Initialize weights and apply final processing\n        self.post_init()\n\n    @property\n    def device(self):\n        return next(iter(self.parameters())).device\n\n    def init_vision(self, flux_pipe_path, **kwargs):\n        self.som_token = self.config.mm_special_tokens[0]\n        self.eom_token = self.config.mm_special_tokens[1]\n        self.img_token = self.config.mm_special_tokens[2]\n\n        self.vision_config = SimpleNamespace(**self.config.vision_config)\n        self.transform_config = SimpleNamespace(**self.vision_config.transform)\n        self.encoder_config = SimpleNamespace(**self.vision_config.encoder)\n        self.decoder_config = SimpleNamespace(**self.vision_config.decoder)\n\n        dtype_map = {'float32': torch.float32, 'float16': torch.float16, 'bfloat16': torch.bfloat16}\n        self.vision_dtype = dtype_map[self.vision_config.dtype]\n\n        self.image_transform = create_anyres_preprocess(**self.vision_config.transform)\n\n        self.encoder_config.siglip_path = os.path.join(self.name_or_path, self.encoder_config.siglip_path) if os.path.isdir(self.name_or_path) else hf_hub_download(repo_id=self.name_or_path, filename=self.encoder_config.siglip_path)\n        self.encoder_config.projector_path = os.path.join(self.name_or_path, self.encoder_config.projector_path) if os.path.isdir(self.name_or_path) else hf_hub_download(repo_id=self.name_or_path, filename=self.encoder_config.projector_path)\n\n        self.image_tokenizer = SiglipTokenizer(**vars(self.encoder_config))\n        self.image_tokenizer.to(self.device, self.vision_dtype)\n\n        transformer = FluxTransformer2DModelWithSigLIP.from_pretrained(\n            self.name_or_path,\n            siglip_channels=self.encoder_config.z_channels,\n            torch_dtype=self.vision_dtype,\n            subfolder=self.decoder_config.model_path,\n            **kwargs,\n        )\n\n        self.decoder_pipe = FluxPipelineWithSigLIP.from_pretrained(\n            flux_pipe_path,\n            transformer=transformer,\n            torch_dtype=self.vision_dtype,\n        )\n        self.decoder_pipe.set_progress_bar_config(disable=True)\n\n    def set_generation_mode(self, mode):\n        assert mode in ('text', 'image'), f'Invalid generation mode: {mode}'\n        self.generation_mode = mode\n\n    def mmencode(self, tokenizer, texts=None, images=None, **kwargs):\n        texts = texts or []\n        images = images or []\n        doc = ''\n        while len(texts) > 0 or len(images) > 0:\n            if len(texts) > 0:\n                doc += texts.pop(0)\n            if len(images) > 0:\n                doc += self.tokenize_image(images.pop(0))\n        return tokenizer.encode(doc, **kwargs)\n\n    def mmdecode(self, tokenizer, token_ids, force_text=None, **kwargs):\n        force_text = force_text or []\n        if isinstance(token_ids, torch.Tensor):\n            if len(token_ids.shape) == 2:\n                assert token_ids.shape[0] == 1\n                token_ids = token_ids[0]\n            assert len(token_ids.shape) == 1\n        else:\n            if not isinstance(token_ids[0], int):\n                assert len(token_ids) == 1\n                token_ids = token_ids[0]\n            assert isinstance(token_ids[0], int)\n\n        doc = tokenizer.decode(token_ids, **kwargs)\n        doc = doc.replace(tokenizer.pad_token, '')\n        doc = doc.replace('<SEP>', '')\n        texts, images = [], []\n        text_image_chunks = doc.split(self.eom_token)\n        for chunk in text_image_chunks:\n            text, image_str = chunk.split(self.som_token) \\\n                if self.som_token in chunk else (chunk, '')\n            texts.append(text)\n            if self.img_token in image_str:\n                image_meta, token_str = image_str.split(self.img_token)\n                H, W = tuple(map(int, image_meta.split(' ')))\n                token_ids = list(map(\n                    lambda x: int(x.split('>')[0]),\n                    token_str.split('<MM-Token-')[1:H*W+1],\n                ))\n                if len(force_text) > 0:\n                    image = self.detokenize_image([force_text.pop(0)], images, token_ids, (H, W))\n                else:\n                    image = self.detokenize_image(texts, images, token_ids, (H, W))\n                images.append(image)\n        return texts, images\n\n    @torch.no_grad()\n    def tokenize_image(self, image):\n        assert hasattr(self, 'image_tokenizer'), 'Please call \"init_vision\" before that.'\n\n        image_str = self.som_token\n        image = self.image_transform(image)\n        assert image is not None, f'Unsupported image aspect ratio (max {self.transform_config.max_aspect_ratio}) or image resolution is too low (min {self.transform_config.min_short_size})'\n\n        image = image[None, ...].to(self.device, self.vision_dtype)\n        tokens = self.image_tokenizer.encode(image)\n        B, H, W = tokens.shape\n        tokens = tokens.view(B, -1).cpu().tolist()[0]\n        token_str = ''.join(map(lambda x: '<MM-Token-{token_id}>'.format(token_id=x), tokens))\n        image_str = f'{self.som_token}{H} {W}{self.img_token}{token_str}{self.eom_token}'\n        return image_str\n\n    @torch.no_grad()\n    def detokenize_image(self, texts, images, token_ids, shape):\n        assert hasattr(self, 'image_tokenizer'), 'Please call \"init_vision\" before that.'\n        assert len(texts) == 1 and len(images) == 0, 'Only support one image per sample.'\n        H, W = shape\n        tokens = torch.tensor(token_ids, device=self.device, dtype=torch.long)\n        latents = self.image_tokenizer.decode(tokens, (1, H, W, self.encoder_config.codebook_dim))\n        upscale_factor = self.decoder_config.upscale_factor\n        latents = latents.reshape(*latents.shape[:2], -1).transpose(1, 2).contiguous()\n        image = self.decoder_pipe(\n            latents,\n            [texts[0]],\n            negative_prompt=[''],\n            height=H * upscale_factor, width=W * upscale_factor,\n            num_inference_steps=self.decoder_config.num_inference_steps,\n            guidance_scale=1.0,\n            true_cfg_scale=self.decoder_config.cfg_scale,\n            true_cfg_scale_2=self.decoder_config.cfg_scale_2,\n        ).images[0]\n\n\n        return image\n\n    def forward(\n        self,\n        input_ids: torch.LongTensor = None,\n        attention_mask: Optional[torch.Tensor] = None,\n        position_ids: Optional[torch.LongTensor] = None,\n        past_key_values: Optional[List[torch.FloatTensor]] = None,\n        inputs_embeds: Optional[torch.FloatTensor] = None,\n        labels: Optional[torch.LongTensor] = None,\n        use_cache: Optional[bool] = None,\n        output_attentions: Optional[bool] = None,\n        output_hidden_states: Optional[bool] = None,\n        return_dict: Optional[bool] = None,\n        cache_position: Optional[torch.LongTensor] = None,\n        num_logits_to_keep: int = 0,\n    ) -> Union[Tuple, CausalLMOutputWithPast]:\n        output_attentions = output_attentions if output_attentions is not None else self.config.output_attentions\n        output_hidden_states = (\n            output_hidden_states if output_hidden_states is not None else self.config.output_hidden_states\n        )\n        return_dict = return_dict if return_dict is not None else self.config.use_return_dict\n        # decoder outputs consists of (dec_features, layer_state, dec_hidden, dec_attn)\n        self.model.has_sliding_layers = False\n        outputs = self.model(\n            input_ids=input_ids,\n            attention_mask=attention_mask,\n            position_ids=position_ids,\n            past_key_values=past_key_values,\n            inputs_embeds=inputs_embeds,\n            use_cache=use_cache,\n            output_attentions=output_attentions,\n            output_hidden_states=output_hidden_states,\n            return_dict=return_dict,\n            cache_position=cache_position,\n        )\n\n        hidden_states = outputs[0]\n        hidden_states = hidden_states[:, -num_logits_to_keep:, :]\n        logits = hidden_states.new_full(\n            (*hidden_states.shape[:-1], self.config.vocab_size + self.config.mm_vocab_size),\n            torch.finfo(hidden_states.dtype).min\n        )\n        if self.generation_mode == 'text':\n            logits[:, :, :self.config.vocab_size] = self.lm_head(hidden_states)\n        else:\n            logits[:, :, self.config.vocab_size:self.config.vocab_size + self.config.image_vocab_size] = self.mm_head(hidden_states)[:, :, :self.config.image_vocab_size]\n\n        logits = logits.float()\n\n        loss = None\n        if labels is not None:\n            # Upcast to float if we need to compute the loss to avoid potential precision issues\n            logits = logits.float()\n            # Shift so that tokens < n predict n\n            shift_logits = logits[..., :-1, :].contiguous()\n            shift_labels = labels[..., 1:].contiguous()\n            # Flatten the tokens\n            loss_fct = nn.CrossEntropyLoss()\n            shift_logits = shift_logits.view(-1, self.config.vocab_size)\n            shift_labels = shift_labels.view(-1)\n            # Enable model parallelism\n            shift_labels = shift_labels.to(shift_logits.device)\n            loss = loss_fct(shift_logits, shift_labels)\n\n        if not return_dict:\n            output = (logits,) + outputs[1:]\n            return (loss,) + output if loss is not None else output\n\n        return CausalLMOutputWithPast(\n            loss=loss,\n            logits=logits,\n            past_key_values=outputs.past_key_values,\n            hidden_states=outputs.hidden_states,\n            attentions=outputs.attentions,\n        )\n\n\nAutoModel.register(XOmniConfig, XOmniModel)\nAutoModelForCausalLM.register(XOmniConfig, XOmniForCausalLM)\n"
  },
  {
    "path": "requirements.txt",
    "content": "# required for python 3.12\nsetuptools==69.5.1\nwheel\n\n# standard\npatch-ng\nanyio\naddict\nastunparse\nfiletype\nfuture\nGitPython\nhttpcore\ninflection\njsonmerge\nkornia\nlark\nomegaconf\noptimum\npiexif\nmpmath\npsutil\npyyaml\nresize-right\ntoml\nvoluptuous\nyapf\nfasteners\norjson\nsqlalchemy\ninvisible-watermark\nPyWavelets\npi-heif\n\n# versioned\nfastapi==0.124.4\nrich==14.1.0\nsafetensors==0.7.0\ntensordict==0.8.3\npeft==0.18.1\nhttpx==0.28.1\ncompel==2.2.1\ntorchsde==0.2.6\nantlr4-python3-runtime==4.9.3\nrequests==2.32.4\ntqdm==4.67.1\naccelerate==1.12.0\neinops==0.8.1\nhuggingface_hub==0.36.0\nnumexpr==2.11.0\nnumpy==2.1.2\npandas==2.3.1\nnumba==0.61.2\nprotobuf==4.25.3\npytorch_lightning==2.6.0\nurllib3==1.26.19\nPillow==10.4.0\ntimm==1.0.16\npyparsing==3.2.3\ntyping-extensions==4.14.1\nsentencepiece==0.2.1\n\n# additional\nblendmodes\nscipy==1.14.1\nscikit-image\n\n# lint\nruff\npylint\npre-commit\n"
  },
  {
    "path": "scripts/animatediff.py",
    "content": "import os\nimport gradio as gr\nimport diffusers\nfrom safetensors.torch import load_file\nfrom modules import scripts_manager, processing, shared, devices, sd_models\n\n\n# config\nADAPTERS = {\n    'None': None,\n    'Motion 1.5 v3' :'diffusers/animatediff-motion-adapter-v1-5-3',\n    'Motion 1.5 v2' :'guoyww/animatediff-motion-adapter-v1-5-2',\n    'Motion 1.5 v1': 'guoyww/animatediff-motion-adapter-v1-5',\n    'Motion 1.4': 'guoyww/animatediff-motion-adapter-v1-4',\n    'TemporalDiff': 'vladmandic/temporaldiff',\n    'AnimateFace': 'vladmandic/animateface',\n    'Lightning': 'ByteDance/AnimateDiff-Lightning/animatediff_lightning_4step_diffusers.safetensors',\n    'SDXL Beta': 'a-r-r-o-w/animatediff-motion-adapter-sdxl-beta',\n    'LCM': 'wangfuyun/AnimateLCM',\n    # 'SDXL Beta': 'guoyww/animatediff-motion-adapter-sdxl-beta',\n    # 'LongAnimateDiff 32': 'vladmandic/longanimatediff-32',\n    # 'LongAnimateDiff 64': 'vladmandic/longanimatediff-64',\n}\nLORAS = {\n    'None': None,\n    'Zoom-in': 'guoyww/animatediff-motion-lora-zoom-in',\n    'Zoom-out': 'guoyww/animatediff-motion-lora-zoom-out',\n    'Pan-left': 'guoyww/animatediff-motion-lora-pan-left',\n    'Pan-right': 'guoyww/animatediff-motion-lora-pan-right',\n    'Tilt-up': 'guoyww/animatediff-motion-lora-tilt-up',\n    'Tilt-down': 'guoyww/animatediff-motion-lora-tilt-down',\n    'Roll-left': 'guoyww/animatediff-motion-lora-rolling-anticlockwise',\n    'Roll-right': 'guoyww/animatediff-motion-lora-rolling-clockwise',\n    'LCM': 'wangfuyun/AnimateLCM/AnimateLCM_sd15_t2v_lora.safetensors'\n}\n\n# state\nmotion_adapter = None # instance of diffusers.MotionAdapter\nloaded_adapter = None # name of loaded adapter\norig_pipe = None # original sd_model pipeline\n\n\ndef set_adapter(adapter_name: str = 'None'):\n    if not shared.sd_loaded:\n        return\n    global motion_adapter, loaded_adapter, orig_pipe # pylint: disable=global-statement\n    # adapter_name = name if name is not None and isinstance(name, str) else loaded_adapter\n    if adapter_name is None or adapter_name == 'None' or not shared.sd_loaded:\n        motion_adapter = None\n        loaded_adapter = None\n        if orig_pipe is not None:\n            shared.log.debug(f'AnimateDiff restore pipeline: adapter=\"{loaded_adapter}\"')\n            shared.sd_model = orig_pipe\n            orig_pipe = None\n        return\n    if shared.sd_model_type != 'sd' and shared.sd_model_type != 'sdxl' and not (shared.sd_model.__class__.__name__ == 'AnimateDiffPipeline' or shared.sd_model.__class__.__name__ == 'AnimateDiffSDXLPipeline'):\n        shared.log.warning(f'AnimateDiff: unsupported model type: {shared.sd_model.__class__.__name__}')\n        return\n    if motion_adapter is not None and loaded_adapter == adapter_name and (shared.sd_model.__class__.__name__ == 'AnimateDiffPipeline' or shared.sd_model.__class__.__name__ == 'AnimateDiffSDXLPipeline'):\n        shared.log.debug(f'AnimateDiff: adapter=\"{adapter_name}\" cached')\n        return\n    if getattr(shared.sd_model, 'image_encoder', None) is not None:\n        shared.log.debug('AnimateDiff: unloading IP adapter')\n        # shared.sd_model.image_encoder = None\n        # shared.sd_model.unet.set_default_attn_processor()\n        shared.sd_model.unet.config.encoder_hid_dim_type = None\n    if adapter_name.endswith('.ckpt') or adapter_name.endswith('.safetensors'):\n        import huggingface_hub as hf\n        folder, filename = os.path.split(adapter_name)\n        adapter_name = hf.hf_hub_download(repo_id=folder, filename=filename, cache_dir=shared.opts.diffusers_dir)\n    try:\n        shared.log.info(f'AnimateDiff load: adapter=\"{adapter_name}\"')\n        motion_adapter = None\n        if adapter_name.endswith('.safetensors'):\n            motion_adapter = diffusers.MotionAdapter().to(shared.device, devices.dtype)\n            motion_adapter.load_state_dict(load_file(adapter_name))\n        elif shared.sd_model_type == 'sd':\n            motion_adapter = diffusers.MotionAdapter.from_pretrained(adapter_name, cache_dir=shared.opts.diffusers_dir, torch_dtype=devices.dtype, low_cpu_mem_usage=False, device_map=None)\n        elif shared.sd_model_type == 'sdxl':\n            motion_adapter = diffusers.MotionAdapter.from_pretrained(adapter_name, cache_dir=shared.opts.diffusers_dir, torch_dtype=devices.dtype, low_cpu_mem_usage=False, device_map=None, variant='fp16')\n        sd_models.move_model(motion_adapter, devices.device) # move pipeline to device\n        sd_models.set_diffuser_options(motion_adapter, vae=None, op='adapter')\n        loaded_adapter = adapter_name\n        new_pipe = None\n\n        if 'Model' in shared.opts.sdnq_quantize_weights:\n            shared.log.debug(f'AnimateDiff: sdnq={shared.opts.sdnq_quantize_weights} reloading model weights')\n            prev_opts = shared.opts.sdnq_quantize_weights\n            shared.opts.sdnq_quantize_weights = []\n            sd_models.reload_model_weights(force=True)\n            shared.opts.sdnq_quantize_weights = prev_opts\n\n        if shared.sd_model_type == 'sd':\n            new_pipe = diffusers.AnimateDiffPipeline(\n                vae=shared.sd_model.vae,\n                text_encoder=shared.sd_model.text_encoder,\n                tokenizer=shared.sd_model.tokenizer,\n                unet=shared.sd_model.unet,\n                scheduler=shared.sd_model.scheduler,\n                feature_extractor=getattr(shared.sd_model, 'feature_extractor', None),\n                image_encoder=getattr(shared.sd_model, 'image_encoder', None),\n                motion_adapter=motion_adapter,\n            )\n        elif shared.sd_model_type == 'sdxl':\n            new_pipe = diffusers.AnimateDiffSDXLPipeline(\n                vae=shared.sd_model.vae,\n                text_encoder=shared.sd_model.text_encoder,\n                text_encoder_2=shared.sd_model.text_encoder_2,\n                tokenizer=shared.sd_model.tokenizer,\n                tokenizer_2=shared.sd_model.tokenizer_2,\n                unet=shared.sd_model.unet,\n                scheduler=shared.sd_model.scheduler,\n                feature_extractor=getattr(shared.sd_model, 'feature_extractor', None),\n                image_encoder=getattr(shared.sd_model, 'image_encoder', None),\n                motion_adapter=motion_adapter,\n            )\n\n        if new_pipe is None:\n            motion_adapter = None\n            loaded_adapter = None\n            shared.log.error(f'AnimateDiff load error: adapter=\"{adapter_name}\"')\n            return\n        orig_pipe = shared.sd_model\n        shared.sd_model = new_pipe\n        sd_models.move_model(shared.sd_model, devices.device) # move pipeline to device\n        sd_models.copy_diffuser_options(new_pipe, orig_pipe)\n        sd_models.set_diffuser_options(shared.sd_model, vae=None, op='model')\n        sd_models.move_model(shared.sd_model.unet, devices.device) # move pipeline to device\n        shared.log.debug(f'AnimateDiff: adapter=\"{loaded_adapter}\"')\n    except Exception as e:\n        motion_adapter = None\n        loaded_adapter = None\n        shared.log.error(f'AnimateDiff load error: adapter=\"{adapter_name}\" {e}')\n        from modules import errors\n        errors.display('e', 'AnimateDiff')\n\n\ndef set_scheduler(p, model, override: bool = False):\n    if override:\n        p.sampler_name = 'Default'\n        if 'LCM' in model:\n            shared.sd_model.scheduler = diffusers.LCMScheduler.from_config(shared.sd_model.scheduler.config)\n        else:\n            shared.sd_model.scheduler = diffusers.DDIMScheduler.from_config(shared.sd_model.scheduler.config)\n    shared.log.debug(f'AnimateDiff: scheduler={shared.sd_model.scheduler.__class__.__name__}')\n\n\ndef set_prompt(p):\n    p.prompt = shared.prompt_styles.apply_styles_to_prompt(p.prompt, p.styles)\n    p.negative_prompt = shared.prompt_styles.apply_negative_styles_to_prompt(p.negative_prompt, p.styles)\n    shared.prompt_styles.apply_styles_to_extra(p)\n    p.styles = []\n    prompts = p.prompt.split('\\n')\n    try:\n        prompt = {}\n        for line in prompts:\n            k, v = line.split(':')\n            prompt[int(k.strip())] = v.strip()\n    except Exception:\n        prompt = p.prompt\n    shared.log.debug(f'AnimateDiff prompt: {prompt}')\n    p.task_args['prompt'] = prompt\n    p.task_args['negative_prompt'] = p.negative_prompt\n\n\ndef set_lora(p, lora, strength):\n    if lora is not None and lora != 'None':\n        shared.log.debug(f'AnimateDiff: lora=\"{lora}\" strength={strength}')\n        if lora.endswith('.safetensors'):\n            fn = os.path.basename(lora)\n            lora = lora.replace(f'/{fn}', '')\n            shared.sd_model.load_lora_weights(lora, weight_name=fn, adapter_name=lora)\n        else:\n            shared.sd_model.load_lora_weights(lora, adapter_name=lora)\n        shared.sd_model.set_adapters([lora], adapter_weights=[strength])\n        p.extra_generation_params['AnimateDiff Lora'] = f'{lora}:{strength}'\n\n\ndef set_free_init(method, iters, order, spatial, temporal):\n    if hasattr(shared.sd_model, 'enable_free_init') and method != 'none':\n        shared.log.debug(f'AnimateDiff free init: method={method} iters={iters} order={order} spatial={spatial} temporal={temporal}')\n        shared.sd_model.enable_free_init(\n            num_iters=iters,\n            use_fast_sampling=False,\n            method=method,\n            order=order,\n            spatial_stop_frequency=spatial,\n            temporal_stop_frequency=temporal,\n        )\n\n\ndef set_free_noise(frames):\n    context_length = 16\n    context_stride = 4\n    if frames >= context_length and hasattr(shared.sd_model, 'enable_free_noise'):\n        shared.log.debug(f'AnimateDiff free noise: frames={frames} context={context_length} stride={context_stride}')\n        shared.sd_model.enable_free_noise(context_length=context_length, context_stride=context_stride)\n\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return 'Video: AnimateDiff'\n\n    def show(self, is_img2img):\n        return not is_img2img\n\n\n    def ui(self, is_img2img):\n        with gr.Row():\n            gr.HTML(\"<span>&nbsp AnimateDiff</span><br>\")\n        with gr.Row():\n            adapter_index = gr.Dropdown(label='Adapter', choices=list(ADAPTERS), value='None')\n            frames = gr.Slider(label='Frames', minimum=1, maximum=256, step=1, value=16)\n        with gr.Row():\n            override_scheduler = gr.Checkbox(label='Override sampler', value=True)\n        with gr.Row():\n            lora_index = gr.Dropdown(label='Lora', choices=list(LORAS), value='None')\n            strength = gr.Slider(label='Strength', minimum=0.0, maximum=2.0, step=0.05, value=1.0)\n        with gr.Row():\n            latent_mode = gr.Checkbox(label='Latent mode', value=True, visible=False)\n        with gr.Accordion('FreeInit', open=False):\n            with gr.Row():\n                fi_method = gr.Dropdown(label='Method', choices=['none', 'butterworth', 'ideal', 'gaussian'], value='none')\n            with gr.Row():\n                # fi_fast = gr.Checkbox(label='Fast sampling', value=False)\n                fi_iters = gr.Slider(label='Iterations', minimum=1, maximum=10, step=1, value=3)\n                fi_order = gr.Slider(label='Order', minimum=1, maximum=10, step=1, value=4)\n            with gr.Row():\n                fi_spatial = gr.Slider(label='Spatial frequency', minimum=0.0, maximum=1.0, step=0.05, value=0.25)\n                fi_temporal = gr.Slider(label='Temporal frequency', minimum=0.0, maximum=1.0, step=0.05, value=0.25)\n        with gr.Row():\n            from modules.ui_sections import create_video_inputs\n            video_type, duration, gif_loop, mp4_pad, mp4_interpolate = create_video_inputs(tab='img2img' if is_img2img else 'txt2img')\n        return [adapter_index, frames, lora_index, strength, latent_mode, video_type, duration, gif_loop, mp4_pad, mp4_interpolate, override_scheduler, fi_method, fi_iters, fi_order, fi_spatial, fi_temporal]\n\n    def run(self, p: processing.StableDiffusionProcessing, adapter_index, frames, lora_index, strength, latent_mode, video_type, duration, gif_loop, mp4_pad, mp4_interpolate, override_scheduler, fi_method, fi_iters, fi_order, fi_spatial, fi_temporal): # pylint: disable=arguments-differ, unused-argument\n        adapter = ADAPTERS[adapter_index]\n        lora = LORAS[lora_index]\n        set_adapter(adapter)\n        if motion_adapter is None:\n            return None\n        set_scheduler(p, adapter, override_scheduler)\n        set_lora(p, lora, strength)\n        set_free_init(fi_method, fi_iters, fi_order, fi_spatial, fi_temporal)\n        set_free_noise(frames)\n        processing.fix_seed(p)\n        p.extra_generation_params['AnimateDiff'] = loaded_adapter\n        p.do_not_save_grid = True\n        p.ops.append('video')\n        p.task_args['generator'] = None\n        p.task_args['num_frames'] = frames\n        p.task_args['num_inference_steps'] = p.steps\n        p.task_args['output_type'] = 'np'\n        shared.log.debug(f'AnimateDiff args: {p.task_args}')\n        set_prompt(p)\n        orig_prompt_attention = shared.opts.prompt_attention\n        shared.opts.data['prompt_attention'] = 'fixed'\n        processed: processing.Processed = processing.process_images(p) # runs processing using main loop\n        shared.opts.data['prompt_attention'] = orig_prompt_attention\n        devices.torch_gc()\n        return processed\n\n\n    def after(self, p: processing.StableDiffusionProcessing, processed: processing.Processed, adapter_index, frames, lora_index, strength, latent_mode, video_type, duration, gif_loop, mp4_pad, mp4_interpolate, override_scheduler, fi_method, fi_iters, fi_order, fi_spatial, fi_temporal): # pylint: disable=arguments-differ, unused-argument\n        from modules.images import save_video\n        if video_type != 'None':\n            shared.log.debug(f'AnimateDiff video: type={video_type} duration={duration} loop={gif_loop} pad={mp4_pad} interpolate={mp4_interpolate}')\n            save_video(p, filename=None, images=processed.images, video_type=video_type, duration=duration, loop=gif_loop, pad=mp4_pad, interpolate=mp4_interpolate)\n"
  },
  {
    "path": "scripts/apg.py",
    "content": "import gradio as gr\nfrom modules import scripts_manager, processing, shared, sd_models\n\n\nregistered = False\n\n\nclass Script(scripts_manager.Script):\n    def __init__(self):\n        super().__init__()\n        self.orig_pipe = None\n        self.register()\n\n    def title(self):\n        return 'APG: Adaptive Projected Guidance'\n\n    def show(self, is_img2img):\n        return not is_img2img\n\n    def ui(self, _is_img2img): # ui elements\n        with gr.Row():\n            gr.HTML('<a href=\"https://arxiv.org/abs/2410.02416\">&nbsp APG: Adaptive Projected Guidance</a><br>')\n        with gr.Row():\n            eta = gr.Slider(label=\"ETA\", value=1.0, minimum=0, maximum=2.0, step=0.05)\n            momentum = gr.Slider(label=\"Momentum\", value=-0.50, minimum=-1.0, maximum=1.0, step=0.05)\n            threshold = gr.Slider(label=\"Threshold\", value=0.0, minimum=0.0, maximum=10.0, step=0.05)\n        return [eta, momentum, threshold]\n\n    def register(self): # register xyz grid elements\n        global registered # pylint: disable=global-statement\n        if registered:\n            return\n        registered = True\n        def apply_field(field):\n            def fun(p, x, xs): # pylint: disable=unused-argument\n                setattr(p, field, x)\n                self.run(p)\n            return fun\n\n        import sys\n        xyz_classes = [v for k, v in sys.modules.items() if 'xyz_grid_classes' in k]\n        if xyz_classes and len(xyz_classes) > 0:\n            xyz_classes = xyz_classes[0]\n            options = [\n                xyz_classes.AxisOption(\"[APG] ETA\", float, apply_field(\"apg_eta\")),\n                xyz_classes.AxisOption(\"[APG] Momentum\", float, apply_field(\"apg_momentum\")),\n                xyz_classes.AxisOption(\"[APG] Threshold\", float, apply_field(\"apg_threshold\")),\n            ]\n            for option in options:\n                if option not in xyz_classes.axis_options:\n                    xyz_classes.axis_options.append(option)\n\n    def run(self, p: processing.StableDiffusionProcessing, eta = 0.0, momentum = 0.0, threshold = 0.0): # pylint: disable=arguments-differ\n        supported_model_list = ['sd', 'sdxl', 'sc']\n        if shared.sd_model_type not in supported_model_list:\n            shared.log.warning(f'APG: class={shared.sd_model.__class__.__name__} model={shared.sd_model_type} required={supported_model_list}')\n            return None\n        from modules import apg\n        apg.eta = getattr(p, 'apg_eta', eta) # use values set by xyz grid or via ui\n        apg.momentum = getattr(p, 'apg_momentum', momentum)\n        apg.threshold = getattr(p, 'apg_threshold', threshold)\n        apg.buffer = apg.MomentumBuffer(apg.momentum) # recreate buffer\n        # pipelines with call to apg.normalized_guidance instead of default\n        if shared.sd_model_type == \"sd\":\n            self.orig_pipe = shared.sd_model\n            shared.sd_model = sd_models.switch_pipe(apg.StableDiffusionPipelineAPG, shared.sd_model)\n        if shared.sd_model_type == \"sdxl\":\n            self.orig_pipe = shared.sd_model\n            shared.sd_model = sd_models.switch_pipe(apg.StableDiffusionXLPipelineAPG, shared.sd_model)\n        elif shared.sd_model_type == \"sc\":\n            self.orig_pipe = shared.sd_model.prior_pipe\n            shared.sd_model.prior_pipe = sd_models.switch_pipe(apg.StableCascadePriorPipelineAPG, shared.sd_model.prior_pipe)\n        shared.log.info(f'APG apply: guidance={p.cfg_scale} momentum={apg.momentum} eta={apg.eta} threshold={apg.threshold} class={shared.sd_model.__class__.__name__}')\n        p.extra_generation_params[\"APG\"] = f'ETA={apg.eta} Momentum={apg.momentum} Threshold={apg.threshold}'\n        # processed = processing.process_images(p)\n        return None\n\n    def after(self, p: processing.StableDiffusionProcessing, processed: processing.Processed, eta, momentum, threshold): # pylint: disable=arguments-differ, unused-argument\n        from modules import apg\n        if self.orig_pipe is None:\n            return processed\n        # restore pipeline\n        if shared.sd_model_type == \"sdxl\" or shared.sd_model_type == \"sd\":\n            shared.sd_model = self.orig_pipe\n        elif shared.sd_model_type == \"sc\":\n            shared.sd_model.prior_pipe = self.orig_pipe\n        apg.buffer = None\n        self.orig_pipe = None\n        return processed\n"
  },
  {
    "path": "scripts/automatic_color_inpaint.py",
    "content": "import gradio as gr\nfrom PIL import Image\nimport numpy as np\nfrom modules import shared, scripts_manager, processing, masking\n\n\"\"\"\nAutomatic Color Inpaint Script for SD.NEXT - SD & SDXL Support\n\nAuthor: Artheriax\nCredits: SD.NEXT team for script template\nVersion: v1\n\nContributions: A new script to automatically inpaint colors in images using Stable Diffusion, Stable Diffusion XL or Flux.\n\"\"\"\n\n## Config\n\n# script title\nsupported_models = ['sd','sdxl', 'flux']\n\ntitle = 'Automatic Color Inpaint'\n\n# is script available in txt2img tab\ntxt2img = False\n\n# is script available in img2img tab\nimg2img = True\n\n### Script definition\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return title\n\n    def show(self, is_img2img):\n        return img2img if is_img2img else txt2img\n\n    # Define UI for pipeline\n    def ui(self, _is_img2img):\n        with gr.Row():\n            gr.HTML(\"&nbsp ACI: Automatic Color Inpaint<br>\")\n        with gr.Row():\n            color_picker = gr.ColorPicker(\n                label=\"ACI: Color to Mask\",\n                value=\"#04F404\",  # Default to green screen green\n                # info=\"Pick the color you want to mask and inpaint.\"\n            )\n            tolerance_slider = gr.Slider(\n                minimum=0,\n                maximum=100,\n                step=1,\n                value=65,\n                label=\"ACI: Color tolerance\",\n            )\n            denoising_slider = gr.Slider(\n                minimum=0.01,\n                maximum=1,\n                step=0.01,\n                value=0.9,\n                label=\"ACI: Denoising strength\",\n            )\n        with gr.Row():\n            dilate_slider = gr.Slider(\n                minimum=0,\n                maximum=1,\n                step=0.01,\n                value=0.0,\n                label=\"ACI: Mask dilate\",\n                # info=\"(Recommended value = 2 to remove leftovers at edges)\"\n            )\n            erode_slider = gr.Slider(\n                minimum=0,\n                maximum=1,\n                step=0.01,\n                value=0,\n                label=\"ACI: Mask erode\",\n                # info=\"(Recommended value = 0 for sharpness)\"\n            )\n            blur_slider = gr.Slider(\n                minimum=0,\n                maximum=1,\n                step=0.01,\n                value=0.15,\n                label=\"ACI: Mask blur\",\n                # info=\"(Recommended value = 0 for sharpness)\"\n            )\n        return [color_picker, tolerance_slider, dilate_slider, erode_slider, blur_slider, denoising_slider]\n\n    # Run pipeline\n    def run(self, p: processing.StableDiffusionProcessing, *args):  # pylint: disable=arguments-differ\n        if shared.sd_model_type not in supported_models:\n            shared.log.warning(f'MoD: class={shared.sd_model.__class__.__name__} model={shared.sd_model_type} required={supported_models}')\n            return None\n        if not hasattr(p, 'init_images') or p.init_images is None or len(p.init_images) == 0:\n            return None\n        color_to_mask_hex, mask_tolerance, mask_dilate, mask_erode, mask_blur, inpaint_denoising_strength = args\n\n        # Convert hex color to RGB tuple (0-255)\n        color_to_mask_rgb = tuple(int(color_to_mask_hex[i:i+2], 16) for i in (1, 3, 5))\n\n        shared.log.debug(f'ACI: rgb={color_to_mask_rgb} tolerance={mask_tolerance} dilate={mask_dilate} erode={mask_erode} blur={mask_blur} denoise={inpaint_denoising_strength}')\n\n        # Create Color Mask using vectorized operations\n        init_image = p.init_images[0].convert(\"RGB\")\n        image_np = np.array(init_image)\n\n        # Calculate Euclidean distance for all pixels at once\n        diff = np.linalg.norm(image_np.astype(np.int16) - np.array(color_to_mask_rgb, dtype=np.int16), axis=2)\n        calc_tolerance = (diff.max() - diff.min()) * mask_tolerance/100\n        mask_np = (diff <= calc_tolerance).astype(np.uint8) * 255\n\n        mask_image = Image.fromarray(mask_np).convert(\"L\")\n\n        # If an inpaint mask is already provided from the UI, combine it with the color mask\n        if p.image_mask:\n            combined_mask = Image.composite(\n                Image.new(\"L\", mask_image.size, \"white\"),\n                p.image_mask.convert(\"L\"),\n                mask_image\n            )\n            p.image_mask = combined_mask\n        else:\n            p.image_mask = mask_image\n\n        # override inpaint parameters\n        p.inpaint_full_res = False # always use full res\n        p.denoising_strength = inpaint_denoising_strength\n        p.mask_blur = None # do not use legacy mask blur\n        p.inpaint_full_res_padding = None # do not use legacy mask blur\n        masking.opts.mask_blur = mask_blur # new masking params triggers masking.py:run_mask\n        masking.opts.mask_erode = mask_erode\n        masking.opts.mask_dilate = mask_dilate\n\n        return None\n"
  },
  {
    "path": "scripts/blipdiffusion.py",
    "content": "import gradio as gr\nfrom modules import scripts_manager, processing, shared, sd_models\n\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return 'BLIP Diffusion: Controllable Generation and Editing'\n\n    def show(self, is_img2img):\n        return is_img2img\n\n    def ui(self, _is_img2img):\n        with gr.Row():\n            gr.HTML('<a href=\"https://huggingface.co/salesforce/blipdiffusion\">&nbsp BLIP Diffusion: Controllable Generation and Editing</a><br>')\n        with gr.Row():\n            source_subject = gr.Textbox(value='', label='Source subject')\n        with gr.Row():\n            target_subject = gr.Textbox(value='', label='Target subject')\n        with gr.Row():\n            prompt_strength = gr.Slider(label='Prompt strength', minimum=0.0, maximum=1.0, step=0.01, value=0.5)\n        return [source_subject, target_subject, prompt_strength]\n\n    def run(self, p: processing.StableDiffusionProcessing, source_subject, target_subject, prompt_strength): # pylint: disable=arguments-differ, unused-argument\n        c = shared.sd_model.__class__.__name__ if shared.sd_loaded else ''\n        if c != 'BlipDiffusionPipeline':\n            shared.log.error(f'BLIP: model selected={c} required=BLIPDiffusion')\n            return None\n        if hasattr(p, 'init_images') and len(p.init_images) > 0:\n            p.task_args['reference_image'] = p.init_images[0]\n            p.task_args['prompt'] = [p.prompt]\n            p.task_args['neg_prompt'] = p.negative_prompt\n            p.task_args['prompt_strength'] = prompt_strength\n            p.task_args['source_subject_category'] = [source_subject]\n            p.task_args['target_subject_category'] = [target_subject]\n            p.task_args['output_type'] = 'pil'\n            shared.log.debug(f'BLIP Diffusion: args={p.task_args}')\n            shared.sd_model = sd_models.set_diffuser_pipe(shared.sd_model, sd_models.DiffusersTaskType.IMAGE_2_IMAGE)\n            processed = processing.process_images(p)\n            return processed\n        else:\n            shared.log.error('BLIP: no init_images')\n            return None\n"
  },
  {
    "path": "scripts/consistory/__init__.py",
    "content": "\"\"\"\noriginal code from <https://github.com/NVlabs/consistory>\n\"\"\"\nfrom .consistory_pipeline import ConsistoryExtendAttnSDXLPipeline\nfrom .consistory_unet_sdxl import ConsistorySDXLUNet2DConditionModel\nfrom .consistory_run import run_anchor_generation, run_extra_generation\n"
  },
  {
    "path": "scripts/consistory/attention_processor.py",
    "content": "# Copyright 2023 The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\n# Not a contribution\n# Changes made by NVIDIA CORPORATION & AFFILIATES enabling ConsiStory or otherwise documented as NVIDIA-proprietary\n# are not a contribution and subject to the license under the LICENSE file located at the root directory.\n\n\nfrom typing import Callable, Optional\nimport torch\nimport torch.nn.functional as F\nfrom diffusers.utils import USE_PEFT_BACKEND\nfrom diffusers.models.attention_processor import Attention\nfrom .consistory_utils import AnchorCache, FeatureInjector, QueryStore\n\n\nclass ConsistoryAttnStoreProcessor:\n    def __init__(self, attnstore, place_in_unet):\n        super().__init__()\n        self.attnstore = attnstore\n        self.place_in_unet = place_in_unet\n\n    def __call__(self, attn: Attention, hidden_states, encoder_hidden_states=None, attention_mask=None, record_attention=True, **kwargs):\n        batch_size, sequence_length, _ = hidden_states.shape\n        attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n\n        query = attn.to_q(hidden_states)\n\n        is_cross = encoder_hidden_states is not None\n        encoder_hidden_states = encoder_hidden_states if encoder_hidden_states is not None else hidden_states\n        key = attn.to_k(encoder_hidden_states)\n        value = attn.to_v(encoder_hidden_states)\n\n        query = attn.head_to_batch_dim(query)\n        key = attn.head_to_batch_dim(key)\n        value = attn.head_to_batch_dim(value)\n\n        attention_probs = attn.get_attention_scores(query, key, attention_mask)\n\n        # only need to store attention maps during the Attend and Excite process\n        # if attention_probs.requires_grad:\n        if record_attention:\n            self.attnstore(attention_probs, is_cross, self.place_in_unet, attn.heads)\n\n        hidden_states = torch.bmm(attention_probs, value)\n        hidden_states = attn.batch_to_head_dim(hidden_states)\n\n        # linear proj\n        hidden_states = attn.to_out[0](hidden_states)\n        # dropout\n        hidden_states = attn.to_out[1](hidden_states)\n\n        return hidden_states\n\n\nclass ConsistoryExtendedAttnXFormersAttnProcessor:\n    r\"\"\"\n    Processor for implementing memory efficient attention using xFormers.\n\n    Args:\n        attention_op (`Callable`, *optional*, defaults to `None`):\n            The base\n            [operator](https://facebookresearch.github.io/xformers/components/ops.html#xformers.ops.AttentionOpBase) to\n            use as the attention operator. It is recommended to set to `None`, and allow xFormers to choose the best\n            operator.\n    \"\"\"\n\n    def __init__(self, place_in_unet, attnstore, extended_attn_kwargs, attention_op: Optional[Callable] = None):\n        self.attention_op = attention_op\n        self.t_range = extended_attn_kwargs.get('t_range', [])\n        self.extend_kv_unet_parts = extended_attn_kwargs.get('extend_kv_unet_parts', ['down', 'mid', 'up'])\n\n        self.place_in_unet = place_in_unet\n        self.curr_unet_part = self.place_in_unet.split('_')[0]\n        self.attnstore = attnstore\n\n    def __call__(\n        self,\n        attn: Attention,\n        hidden_states: torch.FloatTensor,\n        encoder_hidden_states: Optional[torch.FloatTensor] = None,\n        attention_mask: Optional[torch.FloatTensor] = None,\n        temb: Optional[torch.FloatTensor] = None,\n        scale: float = 1.0,\n        perform_extend_attn: bool = False,\n        query_store: Optional[QueryStore] = None,\n        feature_injector: Optional[FeatureInjector] = None,\n        anchors_cache: Optional[AnchorCache] = None,\n        **kwargs\n    ) -> torch.FloatTensor:\n        residual = hidden_states\n\n        args = () if USE_PEFT_BACKEND else (scale,)\n\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n        else:\n            batch_size, wh, channel = hidden_states.shape\n            height = width = int(wh ** 0.5)\n\n        is_cross = encoder_hidden_states is not None\n        perform_extend_attn = perform_extend_attn and (not is_cross) and \\\n                              any([self.attnstore.curr_iter >= x[0] and self.attnstore.curr_iter <= x[1] for x in self.t_range]) and \\\n                              self.curr_unet_part in self.extend_kv_unet_parts\n\n        batch_size, key_tokens, _ = (\n            hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape\n        )\n\n        attention_mask = attn.prepare_attention_mask(attention_mask, key_tokens, batch_size)\n        if attention_mask is not None:\n            # expand our mask's singleton query_tokens dimension:\n            #   [batch*heads,            1, key_tokens] ->\n            #   [batch*heads, query_tokens, key_tokens]\n            # so that it can be added as a bias onto the attention scores that xformers computes:\n            #   [batch*heads, query_tokens, key_tokens]\n            # we do this explicitly because xformers doesn't broadcast the singleton dimension for us.\n            _, query_tokens, _ = hidden_states.shape\n            attention_mask = attention_mask.expand(-1, query_tokens, -1)\n\n        if attn.group_norm is not None:\n            hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2)\n\n        query = attn.to_q(hidden_states, *args)\n\n        if (self.curr_unet_part in self.extend_kv_unet_parts) and query_store and query_store.mode == 'cache':\n            query_store.cache_query(query, self.place_in_unet)\n        elif perform_extend_attn and query_store and query_store.mode == 'inject':\n            query = query_store.inject_query(query, self.place_in_unet, self.attnstore.curr_iter)\n\n        if encoder_hidden_states is None:\n            encoder_hidden_states = hidden_states\n        elif attn.norm_cross:\n            encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states)\n\n        key = attn.to_k(encoder_hidden_states, *args)\n        value = attn.to_v(encoder_hidden_states, *args)\n\n        query = attn.head_to_batch_dim(query).contiguous()\n\n        if perform_extend_attn:\n            # Anchor Caching\n            if anchors_cache and anchors_cache.is_cache_mode():\n                if self.place_in_unet not in anchors_cache.input_h_cache:\n                    anchors_cache.input_h_cache[self.place_in_unet] = {}\n\n                # Hidden states inside the mask, for uncond (index 0) and cond (index 1) prompts\n                subjects_hidden_states = torch.stack([x[self.attnstore.last_mask_dropout[width]] for x in hidden_states.chunk(2)])\n                anchors_cache.input_h_cache[self.place_in_unet][self.attnstore.curr_iter] = subjects_hidden_states\n\n            if anchors_cache and anchors_cache.is_inject_mode():\n                # We make extended key and value by concatenating the original key and value with the query.\n                anchors_hidden_states = anchors_cache.input_h_cache[self.place_in_unet][self.attnstore.curr_iter]\n\n                anchors_keys = attn.to_k(anchors_hidden_states, *args)\n                anchors_values = attn.to_v(anchors_hidden_states, *args)\n\n                extended_key = torch.cat([torch.cat([key.chunk(2, dim=0)[x], anchors_keys[x].unsqueeze(0)], dim=1) for x in range(2)])\n                extended_value = torch.cat([torch.cat([value.chunk(2, dim=0)[x], anchors_values[x].unsqueeze(0)], dim=1) for x in range(2)])\n\n                extended_key = attn.head_to_batch_dim(extended_key).contiguous()\n                extended_value = attn.head_to_batch_dim(extended_value).contiguous()\n\n                # attn_masks needs to be of shape [batch_size, query_tokens, key_tokens]\n                # hidden_states = xformers.ops.memory_efficient_attention(query, extended_key, extended_value,  op=self.attention_op, scale=attn.scale)\n                hidden_states = F.scaled_dot_product_attention(query, extended_key, extended_value, scale=attn.scale)\n            else:\n                # # We make extended key and value by concatenating the original key and value with the query.\n                # attention_mask_bias = self.attnstore.get_attn_mask_bias(tgt_size = width, bsz = batch_size)\n\n                # if attention_mask_bias is not None:\n                #     attention_mask_bias = torch.cat([x.unsqueeze(0).expand(attn.heads, -1, -1) for x in attention_mask_bias])\n\n                # Pre-allocate the output tensor\n                ex_out = torch.empty_like(query)\n\n                for i in range(batch_size):\n                    start_idx = i * attn.heads\n                    end_idx = start_idx + attn.heads\n\n                    attention_mask = self.attnstore.get_extended_attn_mask_instance(width, i%(batch_size//2))\n\n                    curr_q = query[start_idx:end_idx]\n\n                    if i < batch_size//2:\n                        curr_k = key[:batch_size//2]\n                        curr_v = value[:batch_size//2]\n                    else:\n                        curr_k = key[batch_size//2:]\n                        curr_v = value[batch_size//2:]\n\n                    curr_k = curr_k.flatten(0,1)[attention_mask].unsqueeze(0)\n                    curr_v = curr_v.flatten(0,1)[attention_mask].unsqueeze(0)\n\n                    curr_k = attn.head_to_batch_dim(curr_k).contiguous()\n                    curr_v = attn.head_to_batch_dim(curr_v).contiguous()\n\n                    # hidden_states = xformers.ops.memory_efficient_attention(curr_q, curr_k, curr_v, op=self.attention_op, scale=attn.scale)\n                    hidden_states = F.scaled_dot_product_attention(curr_q, curr_k, curr_v, scale=attn.scale)\n\n                    ex_out[start_idx:end_idx] = hidden_states\n\n                hidden_states = ex_out\n        else:\n            key = attn.head_to_batch_dim(key).contiguous()\n            value = attn.head_to_batch_dim(value).contiguous()\n\n            # attn_masks needs to be of shape [batch_size, query_tokens, key_tokens]\n            # hidden_states = xformers.ops.memory_efficient_attention(query, key, value, op=self.attention_op, scale=attn.scale)\n            hidden_states = F.scaled_dot_product_attention(query, key, value, scale=attn.scale)\n\n        hidden_states = hidden_states.to(query.dtype)\n        hidden_states = attn.batch_to_head_dim(hidden_states)\n\n        # linear proj\n        hidden_states = attn.to_out[0](hidden_states, *args)\n        # dropout\n        hidden_states = attn.to_out[1](hidden_states)\n\n        if feature_injector is not None:\n            output_res = int(hidden_states.shape[1] ** 0.5)\n\n            if anchors_cache and anchors_cache.is_inject_mode():\n                hidden_states[batch_size//2:] = feature_injector.inject_anchors(hidden_states[batch_size//2:], self.attnstore.curr_iter, output_res, self.attnstore.extended_mapping, self.place_in_unet, anchors_cache)\n            else:\n                hidden_states[batch_size//2:] = feature_injector.inject_outputs(hidden_states[batch_size//2:], self.attnstore.curr_iter, output_res, self.attnstore.extended_mapping, self.place_in_unet, anchors_cache)\n\n        if input_ndim == 4:\n            hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n\n\ndef register_extended_self_attn(unet, attnstore, extended_attn_kwargs):\n    DICT_PLACE_TO_RES = {'down_0': 64, 'down_1': 64, 'down_2': 64, 'down_3': 64, 'down_4': 64, 'down_5': 64, 'down_6': 64, 'down_7': 64,\n                         'down_8': 32, 'down_9': 32, 'down_10': 32, 'down_11': 32, 'down_12': 32, 'down_13': 32, 'down_14': 32, 'down_15': 32,\n                         'down_16': 32, 'down_17': 32, 'down_18': 32, 'down_19': 32, 'down_20': 32, 'down_21': 32, 'down_22': 32, 'down_23': 32,\n                         'down_24': 32, 'down_25': 32, 'down_26': 32, 'down_27': 32, 'down_28': 32, 'down_29': 32, 'down_30': 32, 'down_31': 32,\n                         'down_32': 32, 'down_33': 32, 'down_34': 32, 'down_35': 32, 'down_36': 32, 'down_37': 32, 'down_38': 32, 'down_39': 32,\n                         'down_40': 32, 'down_41': 32, 'down_42': 32, 'down_43': 32, 'down_44': 32, 'down_45': 32, 'down_46': 32, 'down_47': 32,\n                         'mid_120': 32, 'mid_121': 32, 'mid_122': 32, 'mid_123': 32, 'mid_124': 32, 'mid_125': 32, 'mid_126': 32, 'mid_127': 32,\n                         'mid_128': 32, 'mid_129': 32, 'mid_130': 32, 'mid_131': 32, 'mid_132': 32, 'mid_133': 32, 'mid_134': 32, 'mid_135': 32,\n                         'mid_136': 32, 'mid_137': 32, 'mid_138': 32, 'mid_139': 32, 'up_49': 32, 'up_51': 32, 'up_53': 32, 'up_55': 32, 'up_57': 32,\n                         'up_59': 32, 'up_61': 32, 'up_63': 32, 'up_65': 32, 'up_67': 32, 'up_69': 32, 'up_71': 32, 'up_73': 32, 'up_75': 32,\n                         'up_77': 32, 'up_79': 32, 'up_81': 32, 'up_83': 32, 'up_85': 32, 'up_87': 32, 'up_89': 32, 'up_91': 32, 'up_93': 32,\n                         'up_95': 32, 'up_97': 32, 'up_99': 32, 'up_101': 32, 'up_103': 32, 'up_105': 32, 'up_107': 32, 'up_109': 64, 'up_111': 64,\n                         'up_113': 64, 'up_115': 64, 'up_117': 64, 'up_119': 64}\n    attn_procs = {}\n    for i, name in enumerate(unet.attn_processors.keys()):\n        is_self_attn = i % 2 == 0\n        if name.startswith(\"mid_block\"):\n            place_in_unet = f\"mid_{i}\"\n        elif name.startswith(\"up_blocks\"):\n            place_in_unet = f\"up_{i}\"\n        elif name.startswith(\"down_blocks\"):\n            place_in_unet = f\"down_{i}\"\n        else:\n            continue\n\n        if is_self_attn:\n            attn_procs[name] = ConsistoryExtendedAttnXFormersAttnProcessor(place_in_unet, attnstore, extended_attn_kwargs)\n        else:\n            attn_procs[name] = ConsistoryAttnStoreProcessor(attnstore, place_in_unet)\n\n    unet.set_attn_processor(attn_procs)\n"
  },
  {
    "path": "scripts/consistory/consistory_pipeline.py",
    "content": "# Copyright 2023 The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\n# Not a contribution\n# Changes made by NVIDIA CORPORATION & AFFILIATES enabling ConsiStory or otherwise documented as NVIDIA-proprietary\n# are not a contribution and subject to the license under the LICENSE file located at the root directory.\n\nimport torch\nfrom diffusers.pipelines.stable_diffusion_xl.pipeline_output import StableDiffusionXLPipelineOutput\nfrom diffusers.pipelines.stable_diffusion_xl.pipeline_stable_diffusion_xl import StableDiffusionXLPipeline, \\\n    rescale_noise_cfg, EXAMPLE_DOC_STRING\nfrom diffusers.utils import (\n    deprecate,\n    is_torch_xla_available,\n    logging,\n    replace_example_docstring,\n)\nfrom typing import Any, Callable, Dict, List, Optional, Tuple, Union\n\nfrom .attention_processor import register_extended_self_attn\nfrom .consistory_utils import FeatureInjector, AnchorCache, QueryStore\nfrom .utils.ptp_utils import AttentionStore\n\nif is_torch_xla_available():\n    # import torch_xla.core.xla_model as xm\n\n    XLA_AVAILABLE = True\nelse:\n    XLA_AVAILABLE = False\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\nT = torch.Tensor\n\nclass ConsistoryExtendAttnSDXLPipeline(\n    StableDiffusionXLPipeline\n):\n\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        prompt_2: Optional[Union[str, List[str]]] = None,\n        height: Optional[int] = None,\n        width: Optional[int] = None,\n        num_inference_steps: int = 50,\n        denoising_end: Optional[float] = None,\n        guidance_scale: float = 5.0,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        negative_prompt_2: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        eta: float = 0.0,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.FloatTensor] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        guidance_rescale: float = 0.0,\n        original_size: Optional[Tuple[int, int]] = None,\n        crops_coords_top_left: Tuple[int, int] = (0, 0),\n        target_size: Optional[Tuple[int, int]] = None,\n        negative_original_size: Optional[Tuple[int, int]] = None,\n        negative_crops_coords_top_left: Tuple[int, int] = (0, 0),\n        negative_target_size: Optional[Tuple[int, int]] = None,\n        clip_skip: Optional[int] = None,\n        callback_on_step_end: Optional[Callable[[int, int, Dict], None]] = None,\n        callback_on_step_end_tensor_inputs: List[str] = [\"latents\"],\n\n        attention_store_kwargs: Optional[Dict] = None,\n        extended_attn_kwargs: Optional[Dict] = None,\n        share_queries: bool = False,\n        query_store_kwargs: Optional[Dict] = {},\n        feature_injector: Optional[FeatureInjector] = None,\n        anchors_cache: Optional[AnchorCache] = None,\n\n        instance_latents: Optional[torch.FloatTensor] = None,\n        **kwargs,\n    ):\n        r\"\"\"\n        Function invoked when calling the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide the image generation. If not defined, one has to pass `prompt_embeds`.\n                instead.\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders\n            height (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The height in pixels of the generated image. This is set to 1024 by default for the best results.\n                Anything below 512 pixels won't work well for\n                [stabilityai/stable-diffusion-xl-base-1.0](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0)\n                and checkpoints that are not specifically fine-tuned on low resolutions.\n            width (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The width in pixels of the generated image. This is set to 1024 by default for the best results.\n                Anything below 512 pixels won't work well for\n                [stabilityai/stable-diffusion-xl-base-1.0](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0)\n                and checkpoints that are not specifically fine-tuned on low resolutions.\n            num_inference_steps (`int`, *optional*, defaults to 50):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            denoising_end (`float`, *optional*):\n                When specified, determines the fraction (between 0.0 and 1.0) of the total denoising process to be\n                completed before it is intentionally prematurely terminated. As a result, the returned sample will\n                still retain a substantial amount of noise as determined by the discrete timesteps selected by the\n                scheduler. The denoising_end parameter should ideally be utilized when this pipeline forms a part of a\n                \"Mixture of Denoisers\" multi-pipeline setup, as elaborated in [**Refining the Image\n                Output**](https://huggingface.co/docs/diffusers/api/pipelines/stable_diffusion/stable_diffusion_xl#refining-the-image-output)\n            guidance_scale (`float`, *optional*, defaults to 5.0):\n                Guidance scale as defined in [Classifier-Free Diffusion Guidance](https://arxiv.org/abs/2207.12598).\n                `guidance_scale` is defined as `w` of equation 2. of [Imagen\n                Paper](https://arxiv.org/pdf/2205.11487.pdf). Guidance scale is enabled by setting `guidance_scale >\n                1`. Higher guidance scale encourages to generate images that are closely linked to the text `prompt`,\n                usually at the expense of lower image quality.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            eta (`float`, *optional*, defaults to 0.0):\n                Corresponds to parameter eta (η) in the DDIM paper: https://arxiv.org/abs/2010.02502. Only applies to\n                [`schedulers.DDIMScheduler`], will be ignored for others.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                One or a list of [torch generator(s)](https://pytorch.org/docs/stable/generated/torch.Generator.html)\n                to make generation deterministic.\n            latents (`torch.FloatTensor`, *optional*):\n                Pre-generated noisy latents, sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor will ge generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generate image. Choose between\n                [PIL](https://pillow.readthedocs.io/en/stable/): `PIL.Image.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] instead\n                of a plain tuple.\n            cross_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            guidance_rescale (`float`, *optional*, defaults to 0.0):\n                Guidance rescale factor proposed by [Common Diffusion Noise Schedules and Sample Steps are\n                Flawed](https://arxiv.org/pdf/2305.08891.pdf) `guidance_scale` is defined as `φ` in equation 16. of\n                [Common Diffusion Noise Schedules and Sample Steps are Flawed](https://arxiv.org/pdf/2305.08891.pdf).\n                Guidance rescale factor should fix overexposure when using zero terminal SNR.\n            original_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                If `original_size` is not the same as `target_size` the image will appear to be down- or upsampled.\n                `original_size` defaults to `(height, width)` if not specified. Part of SDXL's micro-conditioning as\n                explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            crops_coords_top_left (`Tuple[int]`, *optional*, defaults to (0, 0)):\n                `crops_coords_top_left` can be used to generate an image that appears to be \"cropped\" from the position\n                `crops_coords_top_left` downwards. Favorable, well-centered images are usually achieved by setting\n                `crops_coords_top_left` to (0, 0). Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            target_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                For most cases, `target_size` should be set to the desired height and width of the generated image. If\n                not specified it will default to `(height, width)`. Part of SDXL's micro-conditioning as explained in\n                section 2.2 of [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            negative_original_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                To negatively condition the generation process based on a specific image resolution. Part of SDXL's\n                micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). For more\n                information, refer to this issue thread: https://github.com/huggingface/diffusers/issues/4208.\n            negative_crops_coords_top_left (`Tuple[int]`, *optional*, defaults to (0, 0)):\n                To negatively condition the generation process based on a specific crop coordinates. Part of SDXL's\n                micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). For more\n                information, refer to this issue thread: https://github.com/huggingface/diffusers/issues/4208.\n            negative_target_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                To negatively condition the generation process based on a target image resolution. It should be as same\n                as the `target_size` for most cases. Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). For more\n                information, refer to this issue thread: https://github.com/huggingface/diffusers/issues/4208.\n            callback_on_step_end (`Callable`, *optional*):\n                A function that calls at the end of each denoising steps during the inference. The function is called\n                with the following arguments: `callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int,\n                callback_kwargs: Dict)`. `callback_kwargs` will include a list of all tensors as specified by\n                `callback_on_step_end_tensor_inputs`.\n            callback_on_step_end_tensor_inputs (`List`, *optional*):\n                The list of tensor inputs for the `callback_on_step_end` function. The tensors specified in the list\n                will be passed as `callback_kwargs` argument. You will only be able to include variables listed in the\n                `._callback_tensor_inputs` attribute of your pipeine class.\n\n        Examples:\n\n        Returns:\n            [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] or `tuple`:\n            [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] if `return_dict` is True, otherwise a\n            `tuple`. When returning a tuple, the first element is a list with the generated images.\n        \"\"\"\n        callback = kwargs.pop(\"callback\", None)\n        callback_steps = kwargs.pop(\"callback_steps\", None)\n\n        if callback is not None:\n            deprecate(\n                \"callback\",\n                \"1.0.0\",\n                \"Passing `callback` as an input argument to `__call__` is deprecated, consider use `callback_on_step_end`\",\n            )\n        if callback_steps is not None:\n            deprecate(\n                \"callback_steps\",\n                \"1.0.0\",\n                \"Passing `callback_steps` as an input argument to `__call__` is deprecated, consider use `callback_on_step_end`\",\n            )\n\n        # 0. Default height and width to unet\n        height = height or self.default_sample_size * self.vae_scale_factor\n        width = width or self.default_sample_size * self.vae_scale_factor\n\n        original_size = original_size or (height, width)\n        target_size = target_size or (height, width)\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            prompt_2,\n            height,\n            width,\n            callback_steps,\n            negative_prompt,\n            negative_prompt_2,\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n            callback_on_step_end_tensor_inputs,\n        )\n\n        self._guidance_scale = guidance_scale\n        self._guidance_rescale = guidance_rescale\n        self._clip_skip = clip_skip\n        self._cross_attention_kwargs = cross_attention_kwargs\n        self._denoising_end = denoising_end\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        device = self._execution_device\n\n        # 3. Encode input prompt\n        lora_scale = (\n            self.cross_attention_kwargs.get(\"scale\", None) if self.cross_attention_kwargs is not None else None\n        )\n\n        (\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n        ) = self.encode_prompt(\n            prompt=prompt,\n            prompt_2=prompt_2,\n            device=device,\n            num_images_per_prompt=num_images_per_prompt,\n            do_classifier_free_guidance=self.do_classifier_free_guidance,\n            negative_prompt=negative_prompt,\n            negative_prompt_2=negative_prompt_2,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            negative_pooled_prompt_embeds=negative_pooled_prompt_embeds,\n            lora_scale=lora_scale,\n            clip_skip=self.clip_skip,\n        )\n\n        # 4. Prepare timesteps\n        self.scheduler.set_timesteps(num_inference_steps, device=device)\n\n        timesteps = self.scheduler.timesteps\n\n        # 5. Prepare latent variables\n        num_channels_latents = self.unet.config.in_channels\n        latents = self.prepare_latents(\n            batch_size * num_images_per_prompt,\n            num_channels_latents,\n            height,\n            width,\n            prompt_embeds.dtype,\n            device,\n            generator,\n            latents,\n        )\n\n        # 6. Prepare extra step kwargs.\n        extra_step_kwargs = self.prepare_extra_step_kwargs(generator, eta)\n\n        if share_queries:\n            query_store = QueryStore(**query_store_kwargs)\n        else:\n            query_store = None\n\n        self.attention_store = AttentionStore(attention_store_kwargs)\n        register_extended_self_attn(self.unet, self.attention_store, extended_attn_kwargs)\n\n        # 7. Prepare added time ids & embeddings\n        add_text_embeds = pooled_prompt_embeds\n        if self.text_encoder_2 is None:\n            text_encoder_projection_dim = int(pooled_prompt_embeds.shape[-1])\n        else:\n            text_encoder_projection_dim = self.text_encoder_2.config.projection_dim\n\n        add_time_ids = self._get_add_time_ids(\n            original_size,\n            crops_coords_top_left,\n            target_size,\n            dtype=prompt_embeds.dtype,\n            text_encoder_projection_dim=text_encoder_projection_dim,\n        )\n        if negative_original_size is not None and negative_target_size is not None:\n            negative_add_time_ids = self._get_add_time_ids(\n                negative_original_size,\n                negative_crops_coords_top_left,\n                negative_target_size,\n                dtype=prompt_embeds.dtype,\n                text_encoder_projection_dim=text_encoder_projection_dim,\n            )\n        else:\n            negative_add_time_ids = add_time_ids\n\n        if self.do_classifier_free_guidance:\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds], dim=0)\n            add_text_embeds = torch.cat([negative_pooled_prompt_embeds, add_text_embeds], dim=0)\n            add_time_ids = torch.cat([negative_add_time_ids, add_time_ids], dim=0)\n\n        prompt_embeds = prompt_embeds.to(device)\n        add_text_embeds = add_text_embeds.to(device)\n        add_time_ids = add_time_ids.to(device).repeat(batch_size * num_images_per_prompt, 1)\n\n        # 8. Denoising loop\n        num_warmup_steps = max(len(timesteps) - num_inference_steps * self.scheduler.order, 0)\n\n        # 8.1 Apply denoising_end\n        if (\n            self.denoising_end is not None\n            and isinstance(self.denoising_end, float)\n            and self.denoising_end > 0\n            and self.denoising_end < 1\n        ):\n            discrete_timestep_cutoff = int(\n                round(\n                    self.scheduler.config.num_train_timesteps\n                    - (self.denoising_end * self.scheduler.config.num_train_timesteps)\n                )\n            )\n            num_inference_steps = len(list(filter(lambda ts: ts >= discrete_timestep_cutoff, timesteps)))\n            timesteps = timesteps[:num_inference_steps]\n\n        # 9. Optionally get Guidance Scale Embedding\n        timestep_cond = None\n        if self.unet.config.time_cond_proj_dim is not None:\n            guidance_scale_tensor = torch.tensor(self.guidance_scale - 1).repeat(batch_size * num_images_per_prompt)\n            timestep_cond = self.get_guidance_scale_embedding(\n                guidance_scale_tensor, embedding_dim=self.unet.config.time_cond_proj_dim\n            ).to(device=device, dtype=latents.dtype)\n\n        self._num_timesteps = len(timesteps)\n\n        if instance_latents is not None:\n            n_instances = instance_latents.shape[0]\n            instance_noise = latents[:n_instances].clone()\n\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                self.attention_store.curr_iter = i\n\n                if instance_latents is not None:\n                    noised_instances = self.scheduler.add_noise(instance_latents, instance_noise, t.repeat(n_instances).long())\n                    latents[:n_instances] = noised_instances\n\n                # expand the latents if we are doing classifier free guidance\n                latent_model_input = torch.cat([latents] * 2) if self.do_classifier_free_guidance else latents\n                latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n                # predict the noise residual\n                added_cond_kwargs = {\"text_embeds\": add_text_embeds, \"time_ids\": add_time_ids}\n\n                if share_queries and (i >= query_store.t_range[0] and i <= query_store.t_range[1]):\n                    query_store.set_mode('cache')\n                    noise_pred_vanilla = self.unet(\n                        latent_model_input,\n                        t,\n                        encoder_hidden_states=prompt_embeds,\n                        timestep_cond=timestep_cond,\n                        cross_attention_kwargs={'query_store': query_store,\n                                                'perform_extend_attn': False,\n                                                'record_attention': False},\n                        added_cond_kwargs=added_cond_kwargs,\n                        return_dict=False,\n                    )[0]\n\n                    query_store.set_mode('inject')\n\n                noise_pred = self.unet(\n                       latent_model_input,\n                        t,\n                        encoder_hidden_states=prompt_embeds,\n                        timestep_cond=timestep_cond,\n                        cross_attention_kwargs={'query_store': query_store,\n                                                'perform_extend_attn': True,\n                                                'record_attention': True,\n                                                'feature_injector': feature_injector,\n                                                'anchors_cache': anchors_cache},\n                        added_cond_kwargs=added_cond_kwargs,\n                        return_dict=False,\n                    )[0]\n\n                # perform guidance\n                if self.do_classifier_free_guidance:\n                    noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                    noise_pred = noise_pred_uncond + self.guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                if self.do_classifier_free_guidance and self.guidance_rescale > 0.0:\n                    # Based on 3.4. in https://arxiv.org/pdf/2305.08891.pdf\n                    noise_pred = rescale_noise_cfg(noise_pred, noise_pred_text, guidance_rescale=self.guidance_rescale)\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents = self.scheduler.step(noise_pred, t, latents, **extra_step_kwargs, return_dict=False)[0]\n\n                if callback_on_step_end is not None:\n                    callback_kwargs = {}\n                    for k in callback_on_step_end_tensor_inputs:\n                        callback_kwargs[k] = locals()[k]\n                    callback_outputs = callback_on_step_end(self, i, t, callback_kwargs)\n\n                    latents = callback_outputs.pop(\"latents\", latents)\n                    prompt_embeds = callback_outputs.pop(\"prompt_embeds\", prompt_embeds)\n                    negative_prompt_embeds = callback_outputs.pop(\"negative_prompt_embeds\", negative_prompt_embeds)\n                    add_text_embeds = callback_outputs.pop(\"add_text_embeds\", add_text_embeds)\n                    negative_pooled_prompt_embeds = callback_outputs.pop(\n                        \"negative_pooled_prompt_embeds\", negative_pooled_prompt_embeds\n                    )\n                    add_time_ids = callback_outputs.pop(\"add_time_ids\", add_time_ids)\n                    negative_add_time_ids = callback_outputs.pop(\"negative_add_time_ids\", negative_add_time_ids)\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n                    if callback is not None and i % callback_steps == 0:\n                        step_idx = i // getattr(self.scheduler, \"order\", 1)\n                        callback(step_idx, t, latents)\n\n                if XLA_AVAILABLE:\n                    # xm.mark_step()\n                    pass\n\n                # Update attention store mask\n                self.attention_store.aggregate_last_steps_attention()\n\n        if not output_type == \"latent\":\n            # make sure the VAE is in float32 mode, as it overflows in float16\n            needs_upcasting = self.vae.dtype == torch.float16 and self.vae.config.force_upcast\n\n            if needs_upcasting:\n                self.upcast_vae()\n                latents = latents.to(next(iter(self.vae.post_quant_conv.parameters())).dtype)\n\n            image = self.vae.decode(latents / self.vae.config.scaling_factor, return_dict=False)[0]\n\n            # cast back to fp16 if needed\n            if needs_upcasting:\n                self.vae.to(dtype=torch.float16)\n        else:\n            image = latents\n\n        if not output_type == \"latent\":\n            # apply watermark if available\n            if self.watermark is not None:\n                image = self.watermark.apply_watermark(image)\n\n            image = self.image_processor.postprocess(image, output_type=output_type)\n\n        # Offload all models\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return (image,)\n\n        return StableDiffusionXLPipelineOutput(images=image)\n"
  },
  {
    "path": "scripts/consistory/consistory_run.py",
    "content": "# Copyright (C) 2024 NVIDIA Corporation.  All rights reserved.\n#\n# This work is licensed under the LICENSE file\n# located at the root directory.\n\nimport torch\nfrom diffusers import DDIMScheduler\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom .consistory_unet_sdxl import ConsistorySDXLUNet2DConditionModel\nfrom .consistory_pipeline import ConsistoryExtendAttnSDXLPipeline\nfrom .consistory_utils import FeatureInjector, AnchorCache\n# from .utils.general_utils import *\nfrom .utils.general_utils import gaussian_smooth, cyclic_nn_map, anchor_nn_map\n\n\nLATENT_RESOLUTIONS = [32, 64]\n\n\ndef load_pipeline(gpu_id=0):\n    float_type = torch.float16\n    sd_id = \"stabilityai/stable-diffusion-xl-base-1.0\"\n    device = torch.device(f'cuda:{gpu_id}') if torch.cuda.is_available() else torch.device('cpu')\n    unet = ConsistorySDXLUNet2DConditionModel.from_pretrained(sd_id, subfolder=\"unet\", torch_dtype=float_type)\n    scheduler = DDIMScheduler.from_pretrained(sd_id, subfolder=\"scheduler\")\n    story_pipeline = ConsistoryExtendAttnSDXLPipeline.from_pretrained(sd_id, unet=unet, torch_dtype=float_type, variant=\"fp16\", use_safetensors=True, scheduler=scheduler).to(device)\n    story_pipeline.enable_freeu(s1=0.6, s2=0.4, b1=1.1, b2=1.2)\n    return story_pipeline\n\n\ndef create_anchor_mapping(bsz, anchor_indices=[0]):\n    anchor_mapping = torch.eye(bsz, dtype=torch.bool)\n    for anchor_idx in anchor_indices:\n        anchor_mapping[:, anchor_idx] = True\n    return anchor_mapping\n\n\ndef create_token_indices(prompts, batch_size, concept_token, tokenizer):\n    if isinstance(concept_token, str):\n        concept_token = [concept_token]\n    concept_token_id = [tokenizer.encode(x, add_special_tokens=False)[0] for x in concept_token]\n    tokens = tokenizer.batch_encode_plus(prompts, padding=True, return_tensors='pt')['input_ids']\n    token_indices = torch.full((len(concept_token), batch_size), -1, dtype=torch.int64)\n    for i, token_id in enumerate(concept_token_id):\n        batch_loc, token_loc = torch.where(tokens == token_id)\n        token_indices[i, batch_loc] = token_loc\n    return token_indices\n\n\ndef create_latents(story_pipeline, seed, batch_size, same_latent, device, float_type):\n    # if seed is int\n    if isinstance(seed, int):\n        g = torch.Generator('cuda').manual_seed(seed)\n        shape = (batch_size, story_pipeline.unet.config.in_channels, 128, 128)\n        latents = randn_tensor(shape, generator=g, device=device, dtype=float_type)\n    elif isinstance(seed, list):\n        shape = (batch_size, story_pipeline.unet.config.in_channels, 128, 128)\n        latents = torch.empty(shape, device=device, dtype=float_type)\n        for i, seed_i in enumerate(seed):\n            g = torch.Generator('cuda').manual_seed(seed_i)\n            curr_latent = randn_tensor(shape, generator=g, device=device, dtype=float_type)\n            latents[i] = curr_latent[i]\n    if same_latent:\n        latents = latents[:1].repeat(batch_size, 1, 1, 1)\n    return latents, g\n\n\n# Batch inference\ndef run_batch_generation(story_pipeline, prompts, concept_token,\n                        seed=40, n_steps=50, mask_dropout=0.5,\n                        same_latent=False, share_queries=True,\n                        perform_sdsa=True, perform_injection=True,\n                        inject_range_alpha=(10,20,0.8),\n                        n_achors=2):\n    device = story_pipeline.device\n    tokenizer = story_pipeline.tokenizer\n    float_type = story_pipeline.dtype\n    unet = story_pipeline.unet\n    batch_size = len(prompts)\n    token_indices = create_token_indices(prompts, batch_size, concept_token, tokenizer)\n    anchor_mappings = create_anchor_mapping(batch_size, anchor_indices=list(range(n_achors)))\n    default_attention_store_kwargs = {\n        'token_indices': token_indices,\n        'mask_dropout': mask_dropout,\n        'extended_mapping': anchor_mappings\n    }\n    default_extended_attn_kwargs = {'extend_kv_unet_parts': ['up']}\n    query_store_kwargs= {'t_range': [0,n_steps//10], 'strength_start': 0.9, 'strength_end': 0.81836735}\n    latents, g = create_latents(story_pipeline, seed, batch_size, same_latent, device, float_type)\n\n    # ------------------ #\n    # Extended attention First Run #\n    if perform_sdsa:\n        extended_attn_kwargs = {**default_extended_attn_kwargs, 't_range': [(1, n_steps)]}\n    else:\n        extended_attn_kwargs = {**default_extended_attn_kwargs, 't_range': []}\n    out = story_pipeline(prompt=prompts, generator=g, latents=latents,\n                        attention_store_kwargs=default_attention_store_kwargs,\n                        extended_attn_kwargs=extended_attn_kwargs,\n                        share_queries=share_queries,\n                        query_store_kwargs=query_store_kwargs,\n                        num_inference_steps=n_steps)\n    last_masks = story_pipeline.attention_store.last_mask\n    dift_features = unet.latent_store.dift_features['261_0'][batch_size:]\n    dift_features = torch.stack([gaussian_smooth(x, kernel_size=3, sigma=1) for x in dift_features], dim=0)\n    nn_map, nn_distances = cyclic_nn_map(dift_features, last_masks, LATENT_RESOLUTIONS, device)\n\n    # ------------------ #\n    # Extended attention with nn_map #\n    if perform_injection:\n        feature_injector = FeatureInjector(\n            nn_map,\n            nn_distances,\n            last_masks,\n            inject_range_alpha=[inject_range_alpha],\n            swap_strategy='min', inject_unet_parts=['up', 'down'], dist_thr='dynamic')\n        out = story_pipeline(prompt=prompts, generator=g, latents=latents,\n                            attention_store_kwargs=default_attention_store_kwargs,\n                            extended_attn_kwargs=extended_attn_kwargs,\n                            share_queries=share_queries,\n                            query_store_kwargs=query_store_kwargs,\n                            feature_injector=feature_injector,\n                            num_inference_steps=n_steps)\n        # display_attn_maps(story_pipeline.attention_store.last_mask, out.images)\n    return out.images\n\n\n# Anchors\ndef run_anchor_generation(story_pipeline, prompts, concept_token,\n                        seed=40, n_steps=50, mask_dropout=0.5,\n                        inject_range_alpha=(10,20,0.8),\n                        same_latent=False, share_queries=True,\n                        perform_sdsa=True, perform_injection=True):\n    device = story_pipeline.device\n    tokenizer = story_pipeline.tokenizer\n    float_type = story_pipeline.dtype\n    unet = story_pipeline.unet\n    batch_size = len(prompts)\n    token_indices = create_token_indices(prompts, batch_size, concept_token, tokenizer)\n    default_attention_store_kwargs = {\n        'token_indices': token_indices,\n        'mask_dropout': mask_dropout\n    }\n    default_extended_attn_kwargs = {'extend_kv_unet_parts': ['up']}\n    query_store_kwargs={'t_range': [0,n_steps//10], 'strength_start': 0.9, 'strength_end': 0.81836735}\n    latents, g = create_latents(story_pipeline, seed, batch_size, same_latent, device, float_type)\n    anchor_cache_first_stage = AnchorCache()\n    anchor_cache_second_stage = AnchorCache()\n\n    # ------------------ #\n    # Extended attention First Run #\n    if perform_sdsa:\n        extended_attn_kwargs = {**default_extended_attn_kwargs, 't_range': [(1, n_steps)]}\n    else:\n        extended_attn_kwargs = {**default_extended_attn_kwargs, 't_range': []}\n    out = story_pipeline(prompt=prompts, generator=g, latents=latents,\n                        attention_store_kwargs=default_attention_store_kwargs,\n                        extended_attn_kwargs=extended_attn_kwargs,\n                        share_queries=share_queries,\n                        query_store_kwargs=query_store_kwargs,\n                        anchors_cache=anchor_cache_first_stage,\n                        num_inference_steps=n_steps)\n    last_masks = story_pipeline.attention_store.last_mask\n    dift_features = unet.latent_store.dift_features['261_0'][batch_size:]\n    dift_features = torch.stack([gaussian_smooth(x, kernel_size=3, sigma=1) for x in dift_features], dim=0)\n    anchor_cache_first_stage.dift_cache = dift_features\n    anchor_cache_first_stage.anchors_last_mask = last_masks\n    nn_map, nn_distances = cyclic_nn_map(dift_features, last_masks, LATENT_RESOLUTIONS, device)\n\n    # ------------------ #\n    # Extended attention with nn_map #\n    if perform_injection:\n        feature_injector = FeatureInjector(\n            nn_map,\n            nn_distances,\n            last_masks,\n            inject_range_alpha=[inject_range_alpha],\n            swap_strategy='min',\n            inject_unet_parts=['up', 'down'],\n            dist_thr='dynamic')\n        out = story_pipeline(prompt=prompts, generator=g, latents=latents,\n                            attention_store_kwargs=default_attention_store_kwargs,\n                            extended_attn_kwargs=extended_attn_kwargs,\n                            share_queries=share_queries,\n                            query_store_kwargs=query_store_kwargs,\n                            feature_injector=feature_injector,\n                            anchors_cache=anchor_cache_second_stage,\n                            num_inference_steps=n_steps)\n        # display_attn_maps(story_pipeline.attention_store.last_mask, out.images)\n        anchor_cache_second_stage.dift_cache = dift_features\n        anchor_cache_second_stage.anchors_last_mask = last_masks\n    return out.images, anchor_cache_first_stage, anchor_cache_second_stage\n\n\ndef run_extra_generation(story_pipeline, prompts, concept_token,\n                         anchor_cache_first_stage, anchor_cache_second_stage,\n                         seed=40, n_steps=50, mask_dropout=0.5,\n                         inject_range_alpha=(10,20,0.8),\n                         same_latent=False, share_queries=True,\n                         perform_sdsa=True, perform_injection=True):\n    device = story_pipeline.device\n    tokenizer = story_pipeline.tokenizer\n    float_type = story_pipeline.dtype\n    unet = story_pipeline.unet\n    batch_size = len(prompts)\n    token_indices = create_token_indices(prompts, batch_size, concept_token, tokenizer)\n    default_attention_store_kwargs = {\n        'token_indices': token_indices,\n        'mask_dropout': mask_dropout\n    }\n    default_extended_attn_kwargs = {'extend_kv_unet_parts': ['up']}\n    query_store_kwargs={'t_range': [0,n_steps//10], 'strength_start': 0.9, 'strength_end': 0.81836735}\n    extra_batch_size = batch_size + 2\n    if isinstance(seed, list):\n        seed = [seed[0], seed[0], *seed]\n    latents, g = create_latents(story_pipeline, seed, extra_batch_size, same_latent, device, float_type)\n    latents = latents[2:]\n    anchor_cache_first_stage.set_mode_inject()\n    anchor_cache_second_stage.set_mode_inject()\n\n    # ------------------ #\n    # Extended attention First Run #\n    if perform_sdsa:\n        extended_attn_kwargs = {**default_extended_attn_kwargs, 't_range': [(1, n_steps)]}\n    else:\n        extended_attn_kwargs = {**default_extended_attn_kwargs, 't_range': []}\n    out = story_pipeline(prompt=prompts, generator=g, latents=latents,\n                        attention_store_kwargs=default_attention_store_kwargs,\n                        extended_attn_kwargs=extended_attn_kwargs,\n                        share_queries=share_queries,\n                        query_store_kwargs=query_store_kwargs,\n                        anchors_cache=anchor_cache_first_stage,\n                        num_inference_steps=n_steps)\n    last_masks = story_pipeline.attention_store.last_mask\n    dift_features = unet.latent_store.dift_features['261_0'][batch_size:]\n    dift_features = torch.stack([gaussian_smooth(x, kernel_size=3, sigma=1) for x in dift_features], dim=0)\n    anchor_dift_features = anchor_cache_first_stage.dift_cache\n    anchor_last_masks = anchor_cache_first_stage.anchors_last_mask\n    nn_map, nn_distances = anchor_nn_map(dift_features, anchor_dift_features, last_masks, anchor_last_masks, LATENT_RESOLUTIONS, device)\n\n    # ------------------ #\n    # Extended attention with nn_map #\n    if perform_injection:\n        feature_injector = FeatureInjector(\n            nn_map,\n            nn_distances,\n            last_masks,\n            inject_range_alpha=[inject_range_alpha],\n            swap_strategy='min',\n            inject_unet_parts=['up', 'down'],\n            dist_thr='dynamic')\n        out = story_pipeline(prompt=prompts, generator=g, latents=latents,\n                            attention_store_kwargs=default_attention_store_kwargs,\n                            extended_attn_kwargs=extended_attn_kwargs,\n                            share_queries=share_queries,\n                            query_store_kwargs=query_store_kwargs,\n                            feature_injector=feature_injector,\n                            anchors_cache=anchor_cache_second_stage,\n                            num_inference_steps=n_steps)\n        # display_attn_maps(story_pipeline.attention_store.last_mask, out.images)\n    return out.images\n"
  },
  {
    "path": "scripts/consistory/consistory_unet_sdxl.py",
    "content": "# Copyright 2023 The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\n# Not a contribution\n# Changes made by NVIDIA CORPORATION & AFFILIATES enabling ConsiStory or otherwise documented as NVIDIA-proprietary\n# are not a contribution and subject to the license under the LICENSE file located at the root directory.\n\n\nfrom dataclasses import dataclass\nfrom typing import Any, Dict, List, Optional, Tuple, Union\n\nimport torch\nimport torch.nn as nn\nimport torch.utils.checkpoint\n\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.loaders import UNet2DConditionLoadersMixin\nfrom diffusers.utils import USE_PEFT_BACKEND, BaseOutput, deprecate, logging, scale_lora_layers, unscale_lora_layers\nfrom diffusers.models.activations import get_activation\nfrom diffusers.models.attention_processor import (\n    ADDED_KV_ATTENTION_PROCESSORS,\n    CROSS_ATTENTION_PROCESSORS,\n    AttentionProcessor,\n    AttnAddedKVProcessor,\n    AttnProcessor,\n)\nfrom diffusers.models.embeddings import (\n    GaussianFourierProjection,\n    ImageHintTimeEmbedding,\n    ImageProjection,\n    ImageTimeEmbedding,\n    PositionNet,\n    TextImageProjection,\n    TextImageTimeEmbedding,\n    TextTimeEmbedding,\n    TimestepEmbedding,\n    Timesteps,\n)\nfrom diffusers.models.modeling_utils import ModelMixin\nfrom diffusers.models.unets.unet_2d_blocks import (\n    UNetMidBlock2D,\n    UNetMidBlock2DCrossAttn,\n    UNetMidBlock2DSimpleCrossAttn,\n    get_down_block,\n    get_up_block,\n)\n\nfrom .consistory_utils import DIFTLatentStore\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\n@dataclass\nclass UNet2DConditionOutput(BaseOutput):\n    \"\"\"\n    The output of [`UNet2DConditionModel`].\n\n    Args:\n        sample (`torch.FloatTensor` of shape `(batch_size, num_channels, height, width)`):\n            The hidden states output conditioned on `encoder_hidden_states` input. Output of last layer of model.\n    \"\"\"\n\n    sample: torch.FloatTensor = None\n\n\nclass ConsistorySDXLUNet2DConditionModel(ModelMixin, ConfigMixin, UNet2DConditionLoadersMixin):\n    r\"\"\"\n    A conditional 2D UNet model that takes a noisy sample, conditional state, and a timestep and returns a sample\n    shaped output.\n\n    This model inherits from [`ModelMixin`]. Check the superclass documentation for it's generic methods implemented\n    for all models (such as downloading or saving).\n\n    Parameters:\n        sample_size (`int` or `Tuple[int, int]`, *optional*, defaults to `None`):\n            Height and width of input/output sample.\n        in_channels (`int`, *optional*, defaults to 4): Number of channels in the input sample.\n        out_channels (`int`, *optional*, defaults to 4): Number of channels in the output.\n        center_input_sample (`bool`, *optional*, defaults to `False`): Whether to center the input sample.\n        flip_sin_to_cos (`bool`, *optional*, defaults to `False`):\n            Whether to flip the sin to cos in the time embedding.\n        freq_shift (`int`, *optional*, defaults to 0): The frequency shift to apply to the time embedding.\n        down_block_types (`Tuple[str]`, *optional*, defaults to `(\"CrossAttnDownBlock2D\", \"CrossAttnDownBlock2D\", \"CrossAttnDownBlock2D\", \"DownBlock2D\")`):\n            The tuple of downsample blocks to use.\n        mid_block_type (`str`, *optional*, defaults to `\"UNetMidBlock2DCrossAttn\"`):\n            Block type for middle of UNet, it can be one of `UNetMidBlock2DCrossAttn`, `UNetMidBlock2D`, or\n            `UNetMidBlock2DSimpleCrossAttn`. If `None`, the mid block layer is skipped.\n        up_block_types (`Tuple[str]`, *optional*, defaults to `(\"UpBlock2D\", \"CrossAttnUpBlock2D\", \"CrossAttnUpBlock2D\", \"CrossAttnUpBlock2D\")`):\n            The tuple of upsample blocks to use.\n        only_cross_attention(`bool` or `Tuple[bool]`, *optional*, default to `False`):\n            Whether to include self-attention in the basic transformer blocks, see\n            [`~models.attention.BasicTransformerBlock`].\n        block_out_channels (`Tuple[int]`, *optional*, defaults to `(320, 640, 1280, 1280)`):\n            The tuple of output channels for each block.\n        layers_per_block (`int`, *optional*, defaults to 2): The number of layers per block.\n        downsample_padding (`int`, *optional*, defaults to 1): The padding to use for the downsampling convolution.\n        mid_block_scale_factor (`float`, *optional*, defaults to 1.0): The scale factor to use for the mid block.\n        dropout (`float`, *optional*, defaults to 0.0): The dropout probability to use.\n        act_fn (`str`, *optional*, defaults to `\"silu\"`): The activation function to use.\n        norm_num_groups (`int`, *optional*, defaults to 32): The number of groups to use for the normalization.\n            If `None`, normalization and activation layers is skipped in post-processing.\n        norm_eps (`float`, *optional*, defaults to 1e-5): The epsilon to use for the normalization.\n        cross_attention_dim (`int` or `Tuple[int]`, *optional*, defaults to 1280):\n            The dimension of the cross attention features.\n        transformer_layers_per_block (`int`, `Tuple[int]`, or `Tuple[Tuple]` , *optional*, defaults to 1):\n            The number of transformer blocks of type [`~models.attention.BasicTransformerBlock`]. Only relevant for\n            [`~models.unet_2d_blocks.CrossAttnDownBlock2D`], [`~models.unet_2d_blocks.CrossAttnUpBlock2D`],\n            [`~models.unet_2d_blocks.UNetMidBlock2DCrossAttn`].\n       reverse_transformer_layers_per_block : (`Tuple[Tuple]`, *optional*, defaults to None):\n            The number of transformer blocks of type [`~models.attention.BasicTransformerBlock`], in the upsampling\n            blocks of the U-Net. Only relevant if `transformer_layers_per_block` is of type `Tuple[Tuple]` and for\n            [`~models.unet_2d_blocks.CrossAttnDownBlock2D`], [`~models.unet_2d_blocks.CrossAttnUpBlock2D`],\n            [`~models.unet_2d_blocks.UNetMidBlock2DCrossAttn`].\n        encoder_hid_dim (`int`, *optional*, defaults to None):\n            If `encoder_hid_dim_type` is defined, `encoder_hidden_states` will be projected from `encoder_hid_dim`\n            dimension to `cross_attention_dim`.\n        encoder_hid_dim_type (`str`, *optional*, defaults to `None`):\n            If given, the `encoder_hidden_states` and potentially other embeddings are down-projected to text\n            embeddings of dimension `cross_attention` according to `encoder_hid_dim_type`.\n        attention_head_dim (`int`, *optional*, defaults to 8): The dimension of the attention heads.\n        num_attention_heads (`int`, *optional*):\n            The number of attention heads. If not defined, defaults to `attention_head_dim`\n        resnet_time_scale_shift (`str`, *optional*, defaults to `\"default\"`): Time scale shift config\n            for ResNet blocks (see [`~models.resnet.ResnetBlock2D`]). Choose from `default` or `scale_shift`.\n        class_embed_type (`str`, *optional*, defaults to `None`):\n            The type of class embedding to use which is ultimately summed with the time embeddings. Choose from `None`,\n            `\"timestep\"`, `\"identity\"`, `\"projection\"`, or `\"simple_projection\"`.\n        addition_embed_type (`str`, *optional*, defaults to `None`):\n            Configures an optional embedding which will be summed with the time embeddings. Choose from `None` or\n            \"text\". \"text\" will use the `TextTimeEmbedding` layer.\n        addition_time_embed_dim: (`int`, *optional*, defaults to `None`):\n            Dimension for the timestep embeddings.\n        num_class_embeds (`int`, *optional*, defaults to `None`):\n            Input dimension of the learnable embedding matrix to be projected to `time_embed_dim`, when performing\n            class conditioning with `class_embed_type` equal to `None`.\n        time_embedding_type (`str`, *optional*, defaults to `positional`):\n            The type of position embedding to use for timesteps. Choose from `positional` or `fourier`.\n        time_embedding_dim (`int`, *optional*, defaults to `None`):\n            An optional override for the dimension of the projected time embedding.\n        time_embedding_act_fn (`str`, *optional*, defaults to `None`):\n            Optional activation function to use only once on the time embeddings before they are passed to the rest of\n            the UNet. Choose from `silu`, `mish`, `gelu`, and `swish`.\n        timestep_post_act (`str`, *optional*, defaults to `None`):\n            The second activation function to use in timestep embedding. Choose from `silu`, `mish` and `gelu`.\n        time_cond_proj_dim (`int`, *optional*, defaults to `None`):\n            The dimension of `cond_proj` layer in the timestep embedding.\n        conv_in_kernel (`int`, *optional*, default to `3`): The kernel size of `conv_in` layer. conv_out_kernel (`int`,\n        *optional*, default to `3`): The kernel size of `conv_out` layer. projection_class_embeddings_input_dim (`int`,\n        *optional*): The dimension of the `class_labels` input when\n            `class_embed_type=\"projection\"`. Required when `class_embed_type=\"projection\"`.\n        class_embeddings_concat (`bool`, *optional*, defaults to `False`): Whether to concatenate the time\n            embeddings with the class embeddings.\n        mid_block_only_cross_attention (`bool`, *optional*, defaults to `None`):\n            Whether to use cross attention with the mid block when using the `UNetMidBlock2DSimpleCrossAttn`. If\n            `only_cross_attention` is given as a single boolean and `mid_block_only_cross_attention` is `None`, the\n            `only_cross_attention` value is used as the value for `mid_block_only_cross_attention`. Default to `False`\n            otherwise.\n    \"\"\"\n\n    _supports_gradient_checkpointing = True\n\n    @register_to_config\n    def __init__(\n        self,\n        sample_size: Optional[int] = None,\n        in_channels: int = 4,\n        out_channels: int = 4,\n        center_input_sample: bool = False,\n        flip_sin_to_cos: bool = True,\n        freq_shift: int = 0,\n        down_block_types: Tuple[str] = (\n            \"CrossAttnDownBlock2D\",\n            \"CrossAttnDownBlock2D\",\n            \"CrossAttnDownBlock2D\",\n            \"DownBlock2D\",\n        ),\n        mid_block_type: Optional[str] = \"UNetMidBlock2DCrossAttn\",\n        up_block_types: Tuple[str] = (\"UpBlock2D\", \"CrossAttnUpBlock2D\", \"CrossAttnUpBlock2D\", \"CrossAttnUpBlock2D\"),\n        only_cross_attention: Union[bool, Tuple[bool]] = False,\n        block_out_channels: Tuple[int] = (320, 640, 1280, 1280),\n        layers_per_block: Union[int, Tuple[int]] = 2,\n        downsample_padding: int = 1,\n        mid_block_scale_factor: float = 1,\n        dropout: float = 0.0,\n        act_fn: str = \"silu\",\n        norm_num_groups: Optional[int] = 32,\n        norm_eps: float = 1e-5,\n        cross_attention_dim: Union[int, Tuple[int]] = 1280,\n        transformer_layers_per_block: Union[int, Tuple[int], Tuple[Tuple]] = 1,\n        reverse_transformer_layers_per_block: Optional[Tuple[Tuple[int]]] = None,\n        encoder_hid_dim: Optional[int] = None,\n        encoder_hid_dim_type: Optional[str] = None,\n        attention_head_dim: Union[int, Tuple[int]] = 8,\n        num_attention_heads: Optional[Union[int, Tuple[int]]] = None,\n        dual_cross_attention: bool = False,\n        use_linear_projection: bool = False,\n        class_embed_type: Optional[str] = None,\n        addition_embed_type: Optional[str] = None,\n        addition_time_embed_dim: Optional[int] = None,\n        num_class_embeds: Optional[int] = None,\n        upcast_attention: bool = False,\n        resnet_time_scale_shift: str = \"default\",\n        resnet_skip_time_act: bool = False,\n        resnet_out_scale_factor: int = 1.0,\n        time_embedding_type: str = \"positional\",\n        time_embedding_dim: Optional[int] = None,\n        time_embedding_act_fn: Optional[str] = None,\n        timestep_post_act: Optional[str] = None,\n        time_cond_proj_dim: Optional[int] = None,\n        conv_in_kernel: int = 3,\n        conv_out_kernel: int = 3,\n        projection_class_embeddings_input_dim: Optional[int] = None,\n        attention_type: str = \"default\",\n        class_embeddings_concat: bool = False,\n        mid_block_only_cross_attention: Optional[bool] = None,\n        cross_attention_norm: Optional[str] = None,\n        addition_embed_type_num_heads=64,\n    ):\n        super().__init__()\n\n        self.latent_store = DIFTLatentStore(steps=[261], up_ft_indices=[0])\n        self.sample_size = sample_size\n\n        if num_attention_heads is not None:\n            raise ValueError(\n                \"At the moment it is not possible to define the number of attention heads via `num_attention_heads` because of a naming issue as described in https://github.com/huggingface/diffusers/issues/2011#issuecomment-1547958131. Passing `num_attention_heads` will only be supported in diffusers v0.19.\"\n            )\n\n        # If `num_attention_heads` is not defined (which is the case for most models)\n        # it will default to `attention_head_dim`. This looks weird upon first reading it and it is.\n        # The reason for this behavior is to correct for incorrectly named variables that were introduced\n        # when this library was created. The incorrect naming was only discovered much later in https://github.com/huggingface/diffusers/issues/2011#issuecomment-1547958131\n        # Changing `attention_head_dim` to `num_attention_heads` for 40,000+ configurations is too backwards breaking\n        # which is why we correct for the naming here.\n        num_attention_heads = num_attention_heads or attention_head_dim\n\n        # Check inputs\n        if len(down_block_types) != len(up_block_types):\n            raise ValueError(\n                f\"Must provide the same number of `down_block_types` as `up_block_types`. `down_block_types`: {down_block_types}. `up_block_types`: {up_block_types}.\"\n            )\n\n        if len(block_out_channels) != len(down_block_types):\n            raise ValueError(\n                f\"Must provide the same number of `block_out_channels` as `down_block_types`. `block_out_channels`: {block_out_channels}. `down_block_types`: {down_block_types}.\"\n            )\n\n        if not isinstance(only_cross_attention, bool) and len(only_cross_attention) != len(down_block_types):\n            raise ValueError(\n                f\"Must provide the same number of `only_cross_attention` as `down_block_types`. `only_cross_attention`: {only_cross_attention}. `down_block_types`: {down_block_types}.\"\n            )\n\n        if not isinstance(num_attention_heads, int) and len(num_attention_heads) != len(down_block_types):\n            raise ValueError(\n                f\"Must provide the same number of `num_attention_heads` as `down_block_types`. `num_attention_heads`: {num_attention_heads}. `down_block_types`: {down_block_types}.\"\n            )\n\n        if not isinstance(attention_head_dim, int) and len(attention_head_dim) != len(down_block_types):\n            raise ValueError(\n                f\"Must provide the same number of `attention_head_dim` as `down_block_types`. `attention_head_dim`: {attention_head_dim}. `down_block_types`: {down_block_types}.\"\n            )\n\n        if isinstance(cross_attention_dim, list) and len(cross_attention_dim) != len(down_block_types):\n            raise ValueError(\n                f\"Must provide the same number of `cross_attention_dim` as `down_block_types`. `cross_attention_dim`: {cross_attention_dim}. `down_block_types`: {down_block_types}.\"\n            )\n\n        if not isinstance(layers_per_block, int) and len(layers_per_block) != len(down_block_types):\n            raise ValueError(\n                f\"Must provide the same number of `layers_per_block` as `down_block_types`. `layers_per_block`: {layers_per_block}. `down_block_types`: {down_block_types}.\"\n            )\n        if isinstance(transformer_layers_per_block, list) and reverse_transformer_layers_per_block is None:\n            for layer_number_per_block in transformer_layers_per_block:\n                if isinstance(layer_number_per_block, list):\n                    raise ValueError(\"Must provide 'reverse_transformer_layers_per_block` if using asymmetrical UNet.\")\n\n        # input\n        conv_in_padding = (conv_in_kernel - 1) // 2\n        self.conv_in = nn.Conv2d(\n            in_channels, block_out_channels[0], kernel_size=conv_in_kernel, padding=conv_in_padding\n        )\n\n        # time\n        if time_embedding_type == \"fourier\":\n            time_embed_dim = time_embedding_dim or block_out_channels[0] * 2\n            if time_embed_dim % 2 != 0:\n                raise ValueError(f\"`time_embed_dim` should be divisible by 2, but is {time_embed_dim}.\")\n            self.time_proj = GaussianFourierProjection(\n                time_embed_dim // 2, set_W_to_weight=False, log=False, flip_sin_to_cos=flip_sin_to_cos\n            )\n            timestep_input_dim = time_embed_dim\n        elif time_embedding_type == \"positional\":\n            time_embed_dim = time_embedding_dim or block_out_channels[0] * 4\n\n            self.time_proj = Timesteps(block_out_channels[0], flip_sin_to_cos, freq_shift)\n            timestep_input_dim = block_out_channels[0]\n        else:\n            raise ValueError(\n                f\"{time_embedding_type} does not exist. Please make sure to use one of `fourier` or `positional`.\"\n            )\n\n        self.time_embedding = TimestepEmbedding(\n            timestep_input_dim,\n            time_embed_dim,\n            act_fn=act_fn,\n            post_act_fn=timestep_post_act,\n            cond_proj_dim=time_cond_proj_dim,\n        )\n\n        if encoder_hid_dim_type is None and encoder_hid_dim is not None:\n            encoder_hid_dim_type = \"text_proj\"\n            self.register_to_config(encoder_hid_dim_type=encoder_hid_dim_type)\n            logger.info(\"encoder_hid_dim_type defaults to 'text_proj' as `encoder_hid_dim` is defined.\")\n\n        if encoder_hid_dim is None and encoder_hid_dim_type is not None:\n            raise ValueError(\n                f\"`encoder_hid_dim` has to be defined when `encoder_hid_dim_type` is set to {encoder_hid_dim_type}.\"\n            )\n\n        if encoder_hid_dim_type == \"text_proj\":\n            self.encoder_hid_proj = nn.Linear(encoder_hid_dim, cross_attention_dim)\n        elif encoder_hid_dim_type == \"text_image_proj\":\n            # image_embed_dim DOESN'T have to be `cross_attention_dim`. To not clutter the __init__ too much\n            # they are set to `cross_attention_dim` here as this is exactly the required dimension for the currently only use\n            # case when `addition_embed_type == \"text_image_proj\"` (Kadinsky 2.1)`\n            self.encoder_hid_proj = TextImageProjection(\n                text_embed_dim=encoder_hid_dim,\n                image_embed_dim=cross_attention_dim,\n                cross_attention_dim=cross_attention_dim,\n            )\n        elif encoder_hid_dim_type == \"image_proj\":\n            # Kandinsky 2.2\n            self.encoder_hid_proj = ImageProjection(\n                image_embed_dim=encoder_hid_dim,\n                cross_attention_dim=cross_attention_dim,\n            )\n        elif encoder_hid_dim_type is not None:\n            raise ValueError(\n                f\"encoder_hid_dim_type: {encoder_hid_dim_type} must be None, 'text_proj' or 'text_image_proj'.\"\n            )\n        else:\n            self.encoder_hid_proj = None\n\n        # class embedding\n        if class_embed_type is None and num_class_embeds is not None:\n            self.class_embedding = nn.Embedding(num_class_embeds, time_embed_dim)\n        elif class_embed_type == \"timestep\":\n            self.class_embedding = TimestepEmbedding(timestep_input_dim, time_embed_dim, act_fn=act_fn)\n        elif class_embed_type == \"identity\":\n            self.class_embedding = nn.Identity(time_embed_dim, time_embed_dim)\n        elif class_embed_type == \"projection\":\n            if projection_class_embeddings_input_dim is None:\n                raise ValueError(\n                    \"`class_embed_type`: 'projection' requires `projection_class_embeddings_input_dim` be set\"\n                )\n            # The projection `class_embed_type` is the same as the timestep `class_embed_type` except\n            # 1. the `class_labels` inputs are not first converted to sinusoidal embeddings\n            # 2. it projects from an arbitrary input dimension.\n            #\n            # Note that `TimestepEmbedding` is quite general, being mainly linear layers and activations.\n            # When used for embedding actual timesteps, the timesteps are first converted to sinusoidal embeddings.\n            # As a result, `TimestepEmbedding` can be passed arbitrary vectors.\n            self.class_embedding = TimestepEmbedding(projection_class_embeddings_input_dim, time_embed_dim)\n        elif class_embed_type == \"simple_projection\":\n            if projection_class_embeddings_input_dim is None:\n                raise ValueError(\n                    \"`class_embed_type`: 'simple_projection' requires `projection_class_embeddings_input_dim` be set\"\n                )\n            self.class_embedding = nn.Linear(projection_class_embeddings_input_dim, time_embed_dim)\n        else:\n            self.class_embedding = None\n\n        if addition_embed_type == \"text\":\n            if encoder_hid_dim is not None:\n                text_time_embedding_from_dim = encoder_hid_dim\n            else:\n                text_time_embedding_from_dim = cross_attention_dim\n\n            self.add_embedding = TextTimeEmbedding(\n                text_time_embedding_from_dim, time_embed_dim, num_heads=addition_embed_type_num_heads\n            )\n        elif addition_embed_type == \"text_image\":\n            # text_embed_dim and image_embed_dim DON'T have to be `cross_attention_dim`. To not clutter the __init__ too much\n            # they are set to `cross_attention_dim` here as this is exactly the required dimension for the currently only use\n            # case when `addition_embed_type == \"text_image\"` (Kadinsky 2.1)`\n            self.add_embedding = TextImageTimeEmbedding(\n                text_embed_dim=cross_attention_dim, image_embed_dim=cross_attention_dim, time_embed_dim=time_embed_dim\n            )\n        elif addition_embed_type == \"text_time\":\n            self.add_time_proj = Timesteps(addition_time_embed_dim, flip_sin_to_cos, freq_shift)\n            self.add_embedding = TimestepEmbedding(projection_class_embeddings_input_dim, time_embed_dim)\n        elif addition_embed_type == \"image\":\n            # Kandinsky 2.2\n            self.add_embedding = ImageTimeEmbedding(image_embed_dim=encoder_hid_dim, time_embed_dim=time_embed_dim)\n        elif addition_embed_type == \"image_hint\":\n            # Kandinsky 2.2 ControlNet\n            self.add_embedding = ImageHintTimeEmbedding(image_embed_dim=encoder_hid_dim, time_embed_dim=time_embed_dim)\n        elif addition_embed_type is not None:\n            raise ValueError(f\"addition_embed_type: {addition_embed_type} must be None, 'text' or 'text_image'.\")\n\n        if time_embedding_act_fn is None:\n            self.time_embed_act = None\n        else:\n            self.time_embed_act = get_activation(time_embedding_act_fn)\n\n        self.down_blocks = nn.ModuleList([])\n        self.up_blocks = nn.ModuleList([])\n\n        if isinstance(only_cross_attention, bool):\n            if mid_block_only_cross_attention is None:\n                mid_block_only_cross_attention = only_cross_attention\n\n            only_cross_attention = [only_cross_attention] * len(down_block_types)\n\n        if mid_block_only_cross_attention is None:\n            mid_block_only_cross_attention = False\n\n        if isinstance(num_attention_heads, int):\n            num_attention_heads = (num_attention_heads,) * len(down_block_types)\n\n        if isinstance(attention_head_dim, int):\n            attention_head_dim = (attention_head_dim,) * len(down_block_types)\n\n        if isinstance(cross_attention_dim, int):\n            cross_attention_dim = (cross_attention_dim,) * len(down_block_types)\n\n        if isinstance(layers_per_block, int):\n            layers_per_block = [layers_per_block] * len(down_block_types)\n\n        if isinstance(transformer_layers_per_block, int):\n            transformer_layers_per_block = [transformer_layers_per_block] * len(down_block_types)\n\n        if class_embeddings_concat:\n            # The time embeddings are concatenated with the class embeddings. The dimension of the\n            # time embeddings passed to the down, middle, and up blocks is twice the dimension of the\n            # regular time embeddings\n            blocks_time_embed_dim = time_embed_dim * 2\n        else:\n            blocks_time_embed_dim = time_embed_dim\n\n        # down\n        output_channel = block_out_channels[0]\n        for i, down_block_type in enumerate(down_block_types):\n            input_channel = output_channel\n            output_channel = block_out_channels[i]\n            is_final_block = i == len(block_out_channels) - 1\n\n            down_block = get_down_block(\n                down_block_type,\n                num_layers=layers_per_block[i],\n                transformer_layers_per_block=transformer_layers_per_block[i],\n                in_channels=input_channel,\n                out_channels=output_channel,\n                temb_channels=blocks_time_embed_dim,\n                add_downsample=not is_final_block,\n                resnet_eps=norm_eps,\n                resnet_act_fn=act_fn,\n                resnet_groups=norm_num_groups,\n                cross_attention_dim=cross_attention_dim[i],\n                num_attention_heads=num_attention_heads[i],\n                downsample_padding=downsample_padding,\n                dual_cross_attention=dual_cross_attention,\n                use_linear_projection=use_linear_projection,\n                only_cross_attention=only_cross_attention[i],\n                upcast_attention=upcast_attention,\n                resnet_time_scale_shift=resnet_time_scale_shift,\n                attention_type=attention_type,\n                resnet_skip_time_act=resnet_skip_time_act,\n                resnet_out_scale_factor=resnet_out_scale_factor,\n                cross_attention_norm=cross_attention_norm,\n                attention_head_dim=attention_head_dim[i] if attention_head_dim[i] is not None else output_channel,\n                dropout=dropout,\n            )\n            self.down_blocks.append(down_block)\n\n        # mid\n        if mid_block_type == \"UNetMidBlock2DCrossAttn\":\n            self.mid_block = UNetMidBlock2DCrossAttn(\n                transformer_layers_per_block=transformer_layers_per_block[-1],\n                in_channels=block_out_channels[-1],\n                temb_channels=blocks_time_embed_dim,\n                dropout=dropout,\n                resnet_eps=norm_eps,\n                resnet_act_fn=act_fn,\n                output_scale_factor=mid_block_scale_factor,\n                resnet_time_scale_shift=resnet_time_scale_shift,\n                cross_attention_dim=cross_attention_dim[-1],\n                num_attention_heads=num_attention_heads[-1],\n                resnet_groups=norm_num_groups,\n                dual_cross_attention=dual_cross_attention,\n                use_linear_projection=use_linear_projection,\n                upcast_attention=upcast_attention,\n                attention_type=attention_type,\n            )\n        elif mid_block_type == \"UNetMidBlock2DSimpleCrossAttn\":\n            self.mid_block = UNetMidBlock2DSimpleCrossAttn(\n                in_channels=block_out_channels[-1],\n                temb_channels=blocks_time_embed_dim,\n                dropout=dropout,\n                resnet_eps=norm_eps,\n                resnet_act_fn=act_fn,\n                output_scale_factor=mid_block_scale_factor,\n                cross_attention_dim=cross_attention_dim[-1],\n                attention_head_dim=attention_head_dim[-1],\n                resnet_groups=norm_num_groups,\n                resnet_time_scale_shift=resnet_time_scale_shift,\n                skip_time_act=resnet_skip_time_act,\n                only_cross_attention=mid_block_only_cross_attention,\n                cross_attention_norm=cross_attention_norm,\n            )\n        elif mid_block_type == \"UNetMidBlock2D\":\n            self.mid_block = UNetMidBlock2D(\n                in_channels=block_out_channels[-1],\n                temb_channels=blocks_time_embed_dim,\n                dropout=dropout,\n                num_layers=0,\n                resnet_eps=norm_eps,\n                resnet_act_fn=act_fn,\n                output_scale_factor=mid_block_scale_factor,\n                resnet_groups=norm_num_groups,\n                resnet_time_scale_shift=resnet_time_scale_shift,\n                add_attention=False,\n            )\n        elif mid_block_type is None:\n            self.mid_block = None\n        else:\n            raise ValueError(f\"unknown mid_block_type : {mid_block_type}\")\n\n        # count how many layers upsample the images\n        self.num_upsamplers = 0\n\n        # up\n        reversed_block_out_channels = list(reversed(block_out_channels))\n        reversed_num_attention_heads = list(reversed(num_attention_heads))\n        reversed_layers_per_block = list(reversed(layers_per_block))\n        reversed_cross_attention_dim = list(reversed(cross_attention_dim))\n        reversed_transformer_layers_per_block = (\n            list(reversed(transformer_layers_per_block))\n            if reverse_transformer_layers_per_block is None\n            else reverse_transformer_layers_per_block\n        )\n        only_cross_attention = list(reversed(only_cross_attention))\n\n        output_channel = reversed_block_out_channels[0]\n        for i, up_block_type in enumerate(up_block_types):\n            is_final_block = i == len(block_out_channels) - 1\n\n            prev_output_channel = output_channel\n            output_channel = reversed_block_out_channels[i]\n            input_channel = reversed_block_out_channels[min(i + 1, len(block_out_channels) - 1)]\n\n            # add upsample block for all BUT final layer\n            if not is_final_block:\n                add_upsample = True\n                self.num_upsamplers += 1\n            else:\n                add_upsample = False\n\n            up_block = get_up_block(\n                up_block_type,\n                num_layers=reversed_layers_per_block[i] + 1,\n                transformer_layers_per_block=reversed_transformer_layers_per_block[i],\n                in_channels=input_channel,\n                out_channels=output_channel,\n                prev_output_channel=prev_output_channel,\n                temb_channels=blocks_time_embed_dim,\n                add_upsample=add_upsample,\n                resnet_eps=norm_eps,\n                resnet_act_fn=act_fn,\n                resolution_idx=i,\n                resnet_groups=norm_num_groups,\n                cross_attention_dim=reversed_cross_attention_dim[i],\n                num_attention_heads=reversed_num_attention_heads[i],\n                dual_cross_attention=dual_cross_attention,\n                use_linear_projection=use_linear_projection,\n                only_cross_attention=only_cross_attention[i],\n                upcast_attention=upcast_attention,\n                resnet_time_scale_shift=resnet_time_scale_shift,\n                attention_type=attention_type,\n                resnet_skip_time_act=resnet_skip_time_act,\n                resnet_out_scale_factor=resnet_out_scale_factor,\n                cross_attention_norm=cross_attention_norm,\n                attention_head_dim=attention_head_dim[i] if attention_head_dim[i] is not None else output_channel,\n                dropout=dropout,\n            )\n            self.up_blocks.append(up_block)\n            prev_output_channel = output_channel\n\n        # out\n        if norm_num_groups is not None:\n            self.conv_norm_out = nn.GroupNorm(\n                num_channels=block_out_channels[0], num_groups=norm_num_groups, eps=norm_eps\n            )\n\n            self.conv_act = get_activation(act_fn)\n\n        else:\n            self.conv_norm_out = None\n            self.conv_act = None\n\n        conv_out_padding = (conv_out_kernel - 1) // 2\n        self.conv_out = nn.Conv2d(\n            block_out_channels[0], out_channels, kernel_size=conv_out_kernel, padding=conv_out_padding\n        )\n\n        if attention_type in [\"gated\", \"gated-text-image\"]:\n            positive_len = 768\n            if isinstance(cross_attention_dim, int):\n                positive_len = cross_attention_dim\n            elif isinstance(cross_attention_dim, tuple) or isinstance(cross_attention_dim, list):\n                positive_len = cross_attention_dim[0]\n\n            feature_type = \"text-only\" if attention_type == \"gated\" else \"text-image\"\n            self.position_net = PositionNet(\n                positive_len=positive_len, out_dim=cross_attention_dim, feature_type=feature_type\n            )\n\n    @property\n    def attn_processors(self) -> Dict[str, AttentionProcessor]:\n        r\"\"\"\n        Returns:\n            `dict` of attention processors: A dictionary containing all attention processors used in the model with\n            indexed by its weight name.\n        \"\"\"\n        # set recursively\n        processors = {}\n\n        def fn_recursive_add_processors(name: str, module: torch.nn.Module, processors: Dict[str, AttentionProcessor]):\n            if hasattr(module, \"get_processor\"):\n                processors[f\"{name}.processor\"] = module.get_processor(return_deprecated_lora=True)\n\n            for sub_name, child in module.named_children():\n                fn_recursive_add_processors(f\"{name}.{sub_name}\", child, processors)\n\n            return processors\n\n        for name, module in self.named_children():\n            fn_recursive_add_processors(name, module, processors)\n\n        return processors\n\n    def set_attn_processor(\n        self, processor: Union[AttentionProcessor, Dict[str, AttentionProcessor]]\n    ):\n        r\"\"\"\n        Sets the attention processor to use to compute attention.\n\n        Parameters:\n            processor (`dict` of `AttentionProcessor` or only `AttentionProcessor`):\n                The instantiated processor class or a dictionary of processor classes that will be set as the processor\n                for **all** `Attention` layers.\n\n                If `processor` is a dict, the key needs to define the path to the corresponding cross attention\n                processor. This is strongly recommended when setting trainable attention processors.\n\n        \"\"\"\n        count = len(self.attn_processors.keys())\n\n        if isinstance(processor, dict) and len(processor) != count:\n            raise ValueError(\n                f\"A dict of processors was passed, but the number of processors {len(processor)} does not match the\"\n                f\" number of attention layers: {count}. Please make sure to pass {count} processor classes.\"\n            )\n\n        def fn_recursive_attn_processor(name: str, module: torch.nn.Module, processor):\n            if hasattr(module, \"set_processor\"):\n                if not isinstance(processor, dict):\n                    module.set_processor(processor)\n                else:\n                    module.set_processor(processor.pop(f\"{name}.processor\"))\n\n            for sub_name, child in module.named_children():\n                fn_recursive_attn_processor(f\"{name}.{sub_name}\", child, processor)\n\n        for name, module in self.named_children():\n            fn_recursive_attn_processor(name, module, processor)\n\n    def set_default_attn_processor(self):\n        \"\"\"\n        Disables custom attention processors and sets the default attention implementation.\n        \"\"\"\n        if all(proc.__class__ in ADDED_KV_ATTENTION_PROCESSORS for proc in self.attn_processors.values()):\n            processor = AttnAddedKVProcessor()\n        elif all(proc.__class__ in CROSS_ATTENTION_PROCESSORS for proc in self.attn_processors.values()):\n            processor = AttnProcessor()\n        else:\n            raise ValueError(\n                f\"Cannot call `set_default_attn_processor` when attention processors are of type {next(iter(self.attn_processors.values()))}\"\n            )\n\n        self.set_attn_processor(processor)\n\n    def set_attention_slice(self, slice_size):\n        r\"\"\"\n        Enable sliced attention computation.\n\n        When this option is enabled, the attention module splits the input tensor in slices to compute attention in\n        several steps. This is useful for saving some memory in exchange for a small decrease in speed.\n\n        Args:\n            slice_size (`str` or `int` or `list(int)`, *optional*, defaults to `\"auto\"`):\n                When `\"auto\"`, input to the attention heads is halved, so attention is computed in two steps. If\n                `\"max\"`, maximum amount of memory is saved by running only one slice at a time. If a number is\n                provided, uses as many slices as `attention_head_dim // slice_size`. In this case, `attention_head_dim`\n                must be a multiple of `slice_size`.\n        \"\"\"\n        sliceable_head_dims = []\n\n        def fn_recursive_retrieve_sliceable_dims(module: torch.nn.Module):\n            if hasattr(module, \"set_attention_slice\"):\n                sliceable_head_dims.append(module.sliceable_head_dim)\n\n            for child in module.children():\n                fn_recursive_retrieve_sliceable_dims(child)\n\n        # retrieve number of attention layers\n        for module in self.children():\n            fn_recursive_retrieve_sliceable_dims(module)\n\n        num_sliceable_layers = len(sliceable_head_dims)\n\n        if slice_size == \"auto\":\n            # half the attention head size is usually a good trade-off between\n            # speed and memory\n            slice_size = [dim // 2 for dim in sliceable_head_dims]\n        elif slice_size == \"max\":\n            # make smallest slice possible\n            slice_size = num_sliceable_layers * [1]\n\n        slice_size = num_sliceable_layers * [slice_size] if not isinstance(slice_size, list) else slice_size\n\n        if len(slice_size) != len(sliceable_head_dims):\n            raise ValueError(\n                f\"You have provided {len(slice_size)}, but {self.config} has {len(sliceable_head_dims)} different\"\n                f\" attention layers. Make sure to match `len(slice_size)` to be {len(sliceable_head_dims)}.\"\n            )\n\n        for i in range(len(slice_size)):\n            size = slice_size[i]\n            dim = sliceable_head_dims[i]\n            if size is not None and size > dim:\n                raise ValueError(f\"size {size} has to be smaller or equal to {dim}.\")\n\n        # Recursively walk through all the children.\n        # Any children which exposes the set_attention_slice method\n        # gets the message\n        def fn_recursive_set_attention_slice(module: torch.nn.Module, slice_size: List[int]):\n            if hasattr(module, \"set_attention_slice\"):\n                module.set_attention_slice(slice_size.pop())\n\n            for child in module.children():\n                fn_recursive_set_attention_slice(child, slice_size)\n\n        reversed_slice_size = list(reversed(slice_size))\n        for module in self.children():\n            fn_recursive_set_attention_slice(module, reversed_slice_size)\n\n    def _set_gradient_checkpointing(self, module, value=False):\n        if hasattr(module, \"gradient_checkpointing\"):\n            module.gradient_checkpointing = value\n\n    def enable_freeu(self, s1, s2, b1, b2):\n        r\"\"\"Enables the FreeU mechanism from https://arxiv.org/abs/2309.11497.\n\n        The suffixes after the scaling factors represent the stage blocks where they are being applied.\n\n        Please refer to the [official repository](https://github.com/ChenyangSi/FreeU) for combinations of values that\n        are known to work well for different pipelines such as Stable Diffusion v1, v2, and Stable Diffusion XL.\n\n        Args:\n            s1 (`float`):\n                Scaling factor for stage 1 to attenuate the contributions of the skip features. This is done to\n                mitigate the \"oversmoothing effect\" in the enhanced denoising process.\n            s2 (`float`):\n                Scaling factor for stage 2 to attenuate the contributions of the skip features. This is done to\n                mitigate the \"oversmoothing effect\" in the enhanced denoising process.\n            b1 (`float`): Scaling factor for stage 1 to amplify the contributions of backbone features.\n            b2 (`float`): Scaling factor for stage 2 to amplify the contributions of backbone features.\n        \"\"\"\n        for i, upsample_block in enumerate(self.up_blocks):\n            setattr(upsample_block, \"s1\", s1)\n            setattr(upsample_block, \"s2\", s2)\n            setattr(upsample_block, \"b1\", b1)\n            setattr(upsample_block, \"b2\", b2)\n\n    def disable_freeu(self):\n        \"\"\"Disables the FreeU mechanism.\"\"\"\n        freeu_keys = {\"s1\", \"s2\", \"b1\", \"b2\"}\n        for i, upsample_block in enumerate(self.up_blocks):\n            for k in freeu_keys:\n                if hasattr(upsample_block, k) or getattr(upsample_block, k, None) is not None:\n                    setattr(upsample_block, k, None)\n\n    def forward(\n        self,\n        sample: torch.FloatTensor,\n        timestep: Union[torch.Tensor, float, int],\n        encoder_hidden_states: torch.Tensor,\n        class_labels: Optional[torch.Tensor] = None,\n        timestep_cond: Optional[torch.Tensor] = None,\n        attention_mask: Optional[torch.Tensor] = None,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        added_cond_kwargs: Optional[Dict[str, torch.Tensor]] = None,\n        down_block_additional_residuals: Optional[Tuple[torch.Tensor]] = None,\n        mid_block_additional_residual: Optional[torch.Tensor] = None,\n        down_intrablock_additional_residuals: Optional[Tuple[torch.Tensor]] = None,\n        encoder_attention_mask: Optional[torch.Tensor] = None,\n        return_dict: bool = True,\n    ) -> Union[UNet2DConditionOutput, Tuple]:\n        r\"\"\"\n        The [`UNet2DConditionModel`] forward method.\n\n        Args:\n            sample (`torch.FloatTensor`):\n                The noisy input tensor with the following shape `(batch, channel, height, width)`.\n            timestep (`torch.FloatTensor` or `float` or `int`): The number of timesteps to denoise an input.\n            encoder_hidden_states (`torch.FloatTensor`):\n                The encoder hidden states with shape `(batch, sequence_length, feature_dim)`.\n            class_labels (`torch.Tensor`, *optional*, defaults to `None`):\n                Optional class labels for conditioning. Their embeddings will be summed with the timestep embeddings.\n            timestep_cond: (`torch.Tensor`, *optional*, defaults to `None`):\n                Conditional embeddings for timestep. If provided, the embeddings will be summed with the samples passed\n                through the `self.time_embedding` layer to obtain the timestep embeddings.\n            attention_mask (`torch.Tensor`, *optional*, defaults to `None`):\n                An attention mask of shape `(batch, key_tokens)` is applied to `encoder_hidden_states`. If `1` the mask\n                is kept, otherwise if `0` it is discarded. Mask will be converted into a bias, which adds large\n                negative values to the attention scores corresponding to \"discard\" tokens.\n            cross_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            added_cond_kwargs: (`dict`, *optional*):\n                A kwargs dictionary containing additional embeddings that if specified are added to the embeddings that\n                are passed along to the UNet blocks.\n            down_block_additional_residuals: (`tuple` of `torch.Tensor`, *optional*):\n                A tuple of tensors that if specified are added to the residuals of down unet blocks.\n            mid_block_additional_residual: (`torch.Tensor`, *optional*):\n                A tensor that if specified is added to the residual of the middle unet block.\n            encoder_attention_mask (`torch.Tensor`):\n                A cross-attention mask of shape `(batch, sequence_length)` is applied to `encoder_hidden_states`. If\n                `True` the mask is kept, otherwise if `False` it is discarded. Mask will be converted into a bias,\n                which adds large negative values to the attention scores corresponding to \"discard\" tokens.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~models.unet_2d_condition.UNet2DConditionOutput`] instead of a plain\n                tuple.\n            cross_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the [`AttnProcessor`].\n            added_cond_kwargs: (`dict`, *optional*):\n                A kwargs dictionary containin additional embeddings that if specified are added to the embeddings that\n                are passed along to the UNet blocks.\n            down_block_additional_residuals (`tuple` of `torch.Tensor`, *optional*):\n                additional residuals to be added to UNet long skip connections from down blocks to up blocks for\n                example from ControlNet side model(s)\n            mid_block_additional_residual (`torch.Tensor`, *optional*):\n                additional residual to be added to UNet mid block output, for example from ControlNet side model\n            down_intrablock_additional_residuals (`tuple` of `torch.Tensor`, *optional*):\n                additional residuals to be added within UNet down blocks, for example from T2I-Adapter side model(s)\n\n        Returns:\n            [`~models.unet_2d_condition.UNet2DConditionOutput`] or `tuple`:\n                If `return_dict` is True, an [`~models.unet_2d_condition.UNet2DConditionOutput`] is returned, otherwise\n                a `tuple` is returned where the first element is the sample tensor.\n        \"\"\"\n        # By default samples have to be AT least a multiple of the overall upsampling factor.\n        # The overall upsampling factor is equal to 2 ** (# num of upsampling layers).\n        # However, the upsampling interpolation output size can be forced to fit any upsampling size\n        # on the fly if necessary.\n        default_overall_up_factor = 2**self.num_upsamplers\n\n        # upsample size should be forwarded when sample is not a multiple of `default_overall_up_factor`\n        forward_upsample_size = False\n        upsample_size = None\n\n        for dim in sample.shape[-2:]:\n            if dim % default_overall_up_factor != 0:\n                # Forward upsample size to force interpolation output size.\n                forward_upsample_size = True\n                break\n\n        # ensure attention_mask is a bias, and give it a singleton query_tokens dimension\n        # expects mask of shape:\n        #   [batch, key_tokens]\n        # adds singleton query_tokens dimension:\n        #   [batch,                    1, key_tokens]\n        # this helps to broadcast it as a bias over attention scores, which will be in one of the following shapes:\n        #   [batch,  heads, query_tokens, key_tokens] (e.g. torch sdp attn)\n        #   [batch * heads, query_tokens, key_tokens] (e.g. xformers or classic attn)\n        if attention_mask is not None:\n            # assume that mask is expressed as:\n            #   (1 = keep,      0 = discard)\n            # convert mask into a bias that can be added to attention scores:\n            #       (keep = +0,     discard = -10000.0)\n            attention_mask = (1 - attention_mask.to(sample.dtype)) * -10000.0\n            attention_mask = attention_mask.unsqueeze(1)\n\n        # convert encoder_attention_mask to a bias the same way we do for attention_mask\n        if encoder_attention_mask is not None:\n            encoder_attention_mask = (1 - encoder_attention_mask.to(sample.dtype)) * -10000.0\n            encoder_attention_mask = encoder_attention_mask.unsqueeze(1)\n\n        # 0. center input if necessary\n        if self.config.center_input_sample:\n            sample = 2 * sample - 1.0\n\n        # 1. time\n        timesteps = timestep\n        if not torch.is_tensor(timesteps):\n            # This would be a good case for the `match` statement (Python 3.10+)\n            is_mps = sample.device.type == \"mps\"\n            if isinstance(timestep, float):\n                dtype = torch.float32 if is_mps else torch.float64\n            else:\n                dtype = torch.int32 if is_mps else torch.int64\n            timesteps = torch.tensor([timesteps], dtype=dtype, device=sample.device)\n        elif len(timesteps.shape) == 0:\n            timesteps = timesteps[None].to(sample.device)\n\n        # broadcast to batch dimension in a way that's compatible with ONNX/Core ML\n        timesteps = timesteps.expand(sample.shape[0])\n\n        t_emb = self.time_proj(timesteps)\n\n        # `Timesteps` does not contain any weights and will always return f32 tensors\n        # but time_embedding might actually be running in fp16. so we need to cast here.\n        # there might be better ways to encapsulate this.\n        t_emb = t_emb.to(dtype=sample.dtype)\n\n        emb = self.time_embedding(t_emb, timestep_cond)\n        aug_emb = None\n\n        if self.class_embedding is not None:\n            if class_labels is None:\n                raise ValueError(\"class_labels should be provided when num_class_embeds > 0\")\n\n            if self.config.class_embed_type == \"timestep\":\n                class_labels = self.time_proj(class_labels)\n\n                # `Timesteps` does not contain any weights and will always return f32 tensors\n                # there might be better ways to encapsulate this.\n                class_labels = class_labels.to(dtype=sample.dtype)\n\n            class_emb = self.class_embedding(class_labels).to(dtype=sample.dtype)\n\n            if self.config.class_embeddings_concat:\n                emb = torch.cat([emb, class_emb], dim=-1)\n            else:\n                emb = emb + class_emb\n\n        if self.config.addition_embed_type == \"text\":\n            aug_emb = self.add_embedding(encoder_hidden_states)\n        elif self.config.addition_embed_type == \"text_image\":\n            # Kandinsky 2.1 - style\n            if \"image_embeds\" not in added_cond_kwargs:\n                raise ValueError(\n                    f\"{self.__class__} has the config param `addition_embed_type` set to 'text_image' which requires the keyword argument `image_embeds` to be passed in `added_cond_kwargs`\"\n                )\n\n            image_embs = added_cond_kwargs.get(\"image_embeds\")\n            text_embs = added_cond_kwargs.get(\"text_embeds\", encoder_hidden_states)\n            aug_emb = self.add_embedding(text_embs, image_embs)\n        elif self.config.addition_embed_type == \"text_time\":\n            # SDXL - style\n            if \"text_embeds\" not in added_cond_kwargs:\n                raise ValueError(\n                    f\"{self.__class__} has the config param `addition_embed_type` set to 'text_time' which requires the keyword argument `text_embeds` to be passed in `added_cond_kwargs`\"\n                )\n            text_embeds = added_cond_kwargs.get(\"text_embeds\")\n            if \"time_ids\" not in added_cond_kwargs:\n                raise ValueError(\n                    f\"{self.__class__} has the config param `addition_embed_type` set to 'text_time' which requires the keyword argument `time_ids` to be passed in `added_cond_kwargs`\"\n                )\n            time_ids = added_cond_kwargs.get(\"time_ids\")\n            time_embeds = self.add_time_proj(time_ids.flatten())\n            time_embeds = time_embeds.reshape((text_embeds.shape[0], -1))\n            add_embeds = torch.concat([text_embeds, time_embeds], dim=-1)\n            add_embeds = add_embeds.to(emb.dtype)\n            aug_emb = self.add_embedding(add_embeds)\n        elif self.config.addition_embed_type == \"image\":\n            # Kandinsky 2.2 - style\n            if \"image_embeds\" not in added_cond_kwargs:\n                raise ValueError(\n                    f\"{self.__class__} has the config param `addition_embed_type` set to 'image' which requires the keyword argument `image_embeds` to be passed in `added_cond_kwargs`\"\n                )\n            image_embs = added_cond_kwargs.get(\"image_embeds\")\n            aug_emb = self.add_embedding(image_embs)\n        elif self.config.addition_embed_type == \"image_hint\":\n            # Kandinsky 2.2 - style\n            if \"image_embeds\" not in added_cond_kwargs or \"hint\" not in added_cond_kwargs:\n                raise ValueError(\n                    f\"{self.__class__} has the config param `addition_embed_type` set to 'image_hint' which requires the keyword arguments `image_embeds` and `hint` to be passed in `added_cond_kwargs`\"\n                )\n            image_embs = added_cond_kwargs.get(\"image_embeds\")\n            hint = added_cond_kwargs.get(\"hint\")\n            aug_emb, hint = self.add_embedding(image_embs, hint)\n            sample = torch.cat([sample, hint], dim=1)\n\n        emb = emb + aug_emb if aug_emb is not None else emb\n\n        if self.time_embed_act is not None:\n            emb = self.time_embed_act(emb)\n\n        if self.encoder_hid_proj is not None and self.config.encoder_hid_dim_type == \"text_proj\":\n            encoder_hidden_states = self.encoder_hid_proj(encoder_hidden_states)\n        elif self.encoder_hid_proj is not None and self.config.encoder_hid_dim_type == \"text_image_proj\":\n            # Kadinsky 2.1 - style\n            if \"image_embeds\" not in added_cond_kwargs:\n                raise ValueError(\n                    f\"{self.__class__} has the config param `encoder_hid_dim_type` set to 'text_image_proj' which requires the keyword argument `image_embeds` to be passed in  `added_conditions`\"\n                )\n\n            image_embeds = added_cond_kwargs.get(\"image_embeds\")\n            encoder_hidden_states = self.encoder_hid_proj(encoder_hidden_states, image_embeds)\n        elif self.encoder_hid_proj is not None and self.config.encoder_hid_dim_type == \"image_proj\":\n            # Kandinsky 2.2 - style\n            if \"image_embeds\" not in added_cond_kwargs:\n                raise ValueError(\n                    f\"{self.__class__} has the config param `encoder_hid_dim_type` set to 'image_proj' which requires the keyword argument `image_embeds` to be passed in  `added_conditions`\"\n                )\n            image_embeds = added_cond_kwargs.get(\"image_embeds\")\n            encoder_hidden_states = self.encoder_hid_proj(image_embeds)\n        # 2. pre-process\n        sample = self.conv_in(sample)\n\n        # 2.5 GLIGEN position net\n        if cross_attention_kwargs is not None and cross_attention_kwargs.get(\"gligen\", None) is not None:\n            cross_attention_kwargs = cross_attention_kwargs.copy()\n            gligen_args = cross_attention_kwargs.pop(\"gligen\")\n            cross_attention_kwargs[\"gligen\"] = {\"objs\": self.position_net(**gligen_args)}\n\n        # 3. down\n        lora_scale = cross_attention_kwargs.get(\"scale\", 1.0) if cross_attention_kwargs is not None else 1.0\n        if USE_PEFT_BACKEND:\n            # weight the lora layers by setting `lora_scale` for each PEFT layer\n            scale_lora_layers(self, lora_scale)\n\n        is_controlnet = mid_block_additional_residual is not None and down_block_additional_residuals is not None\n        # using new arg down_intrablock_additional_residuals for T2I-Adapters, to distinguish from controlnets\n        is_adapter = down_intrablock_additional_residuals is not None\n        # maintain backward compatibility for legacy usage, where\n        #       T2I-Adapter and ControlNet both use down_block_additional_residuals arg\n        #       but can only use one or the other\n        if not is_adapter and mid_block_additional_residual is None and down_block_additional_residuals is not None:\n            deprecate(\n                \"T2I should not use down_block_additional_residuals\",\n                \"1.3.0\",\n                \"Passing intrablock residual connections with `down_block_additional_residuals` is deprecated \\\n                       and will be removed in diffusers 1.3.0.  `down_block_additional_residuals` should only be used \\\n                       for ControlNet. Please make sure use `down_intrablock_additional_residuals` instead. \",\n                standard_warn=False,\n            )\n            down_intrablock_additional_residuals = down_block_additional_residuals\n            is_adapter = True\n\n        down_block_res_samples = (sample,)\n        for downsample_block in self.down_blocks:\n            if hasattr(downsample_block, \"has_cross_attention\") and downsample_block.has_cross_attention:\n                # For t2i-adapter CrossAttnDownBlock2D\n                additional_residuals = {}\n                if is_adapter and len(down_intrablock_additional_residuals) > 0:\n                    additional_residuals[\"additional_residuals\"] = down_intrablock_additional_residuals.pop(0)\n\n                sample, res_samples = downsample_block(\n                    hidden_states=sample,\n                    temb=emb,\n                    encoder_hidden_states=encoder_hidden_states,\n                    attention_mask=attention_mask,\n                    cross_attention_kwargs=cross_attention_kwargs,\n                    encoder_attention_mask=encoder_attention_mask,\n                    **additional_residuals,\n                )\n            else:\n                sample, res_samples = downsample_block(hidden_states=sample, temb=emb, scale=lora_scale)\n                if is_adapter and len(down_intrablock_additional_residuals) > 0:\n                    sample += down_intrablock_additional_residuals.pop(0)\n\n            down_block_res_samples += res_samples\n\n        if is_controlnet:\n            new_down_block_res_samples = ()\n\n            for down_block_res_sample, down_block_additional_residual in zip(\n                down_block_res_samples, down_block_additional_residuals\n            ):\n                down_block_res_sample = down_block_res_sample + down_block_additional_residual\n                new_down_block_res_samples = new_down_block_res_samples + (down_block_res_sample,)\n\n            down_block_res_samples = new_down_block_res_samples\n\n        # 4. mid\n        if self.mid_block is not None:\n            if hasattr(self.mid_block, \"has_cross_attention\") and self.mid_block.has_cross_attention:\n                sample = self.mid_block(\n                    sample,\n                    emb,\n                    encoder_hidden_states=encoder_hidden_states,\n                    attention_mask=attention_mask,\n                    cross_attention_kwargs=cross_attention_kwargs,\n                    encoder_attention_mask=encoder_attention_mask,\n                )\n            else:\n                sample = self.mid_block(sample, emb)\n\n            # To support T2I-Adapter-XL\n            if (\n                is_adapter\n                and len(down_intrablock_additional_residuals) > 0\n                and sample.shape == down_intrablock_additional_residuals[0].shape\n            ):\n                sample += down_intrablock_additional_residuals.pop(0)\n\n        if is_controlnet:\n            sample = sample + mid_block_additional_residual\n\n        # 5. up\n        for i, upsample_block in enumerate(self.up_blocks):\n            is_final_block = i == len(self.up_blocks) - 1\n\n            res_samples = down_block_res_samples[-len(upsample_block.resnets) :]\n            down_block_res_samples = down_block_res_samples[: -len(upsample_block.resnets)]\n\n            # if we have not reached the final block and need to forward the\n            # upsample size, we do it here\n            if not is_final_block and forward_upsample_size:\n                upsample_size = down_block_res_samples[-1].shape[2:]\n\n            if hasattr(upsample_block, \"has_cross_attention\") and upsample_block.has_cross_attention:\n                sample = upsample_block(\n                    hidden_states=sample,\n                    temb=emb,\n                    res_hidden_states_tuple=res_samples,\n                    encoder_hidden_states=encoder_hidden_states,\n                    cross_attention_kwargs=cross_attention_kwargs,\n                    upsample_size=upsample_size,\n                    attention_mask=attention_mask,\n                    encoder_attention_mask=encoder_attention_mask,\n                )\n            else:\n                sample = upsample_block(\n                    hidden_states=sample,\n                    temb=emb,\n                    res_hidden_states_tuple=res_samples,\n                    upsample_size=upsample_size,\n                    scale=lora_scale,\n                )\n\n            self.latent_store(sample.detach(), t=timestep, layer_index=i)\n\n        # 6. post-process\n        if self.conv_norm_out:\n            sample = self.conv_norm_out(sample)\n            sample = self.conv_act(sample)\n        sample = self.conv_out(sample)\n\n        if USE_PEFT_BACKEND:\n            # remove `lora_scale` from each PEFT layer\n            unscale_lora_layers(self, lora_scale)\n\n        if not return_dict:\n            return (sample,)\n\n        return UNet2DConditionOutput(sample=sample)\n"
  },
  {
    "path": "scripts/consistory/consistory_utils.py",
    "content": "# Copyright (C) 2024 NVIDIA Corporation.  All rights reserved.\n#\n# This work is licensed under the LICENSE file\n# located at the root directory.\n\nfrom typing import List\nfrom collections import defaultdict\nimport numpy as np\nimport torch\nfrom .utils.general_utils import get_dynamic_threshold\n\n\nclass FeatureInjector:\n    def __init__(self, nn_map, nn_distances, attn_masks, inject_range_alpha=[(10,20,0.8)], swap_strategy='min', dist_thr='dynamic', inject_unet_parts=['up']):\n        self.nn_map = nn_map\n        self.nn_distances = nn_distances\n        self.attn_masks = attn_masks\n        self.inject_range_alpha = inject_range_alpha if isinstance(inject_range_alpha, list) else [inject_range_alpha]\n        self.swap_strategy = swap_strategy # 'min / 'mean' / 'first'\n        self.dist_thr = dist_thr\n        self.inject_unet_parts = inject_unet_parts\n        self.inject_res = [64]\n\n    def inject_outputs(self, output, curr_iter, output_res, extended_mapping, place_in_unet, anchors_cache=None):\n        curr_unet_part = place_in_unet.split('_')[0]\n\n        # Inject only in the specified unet parts (up, mid, down)\n        if (curr_unet_part not in self.inject_unet_parts) or output_res not in self.inject_res:\n            return output\n\n        bsz = output.shape[0]\n        nn_map = self.nn_map[output_res]\n        nn_distances = self.nn_distances[output_res]\n        attn_masks = self.attn_masks[output_res]\n        vector_dim = output_res**2\n\n        alpha = next((alpha for min_range, max_range, alpha in self.inject_range_alpha if min_range <= curr_iter <= max_range), None)\n        if alpha:\n            old_output = output#.clone()\n            for i in range(bsz):\n                other_outputs = []\n\n                if self.swap_strategy == 'min':\n                    curr_mapping = extended_mapping[i]\n\n                    # If the current image is not mapped to any other image, skip\n                    if not torch.any(torch.cat([curr_mapping[:i], curr_mapping[i+1:]])):\n                        continue\n\n                    min_dists = nn_distances[i][curr_mapping].argmin(dim=0)\n                    curr_nn_map = nn_map[i][curr_mapping][min_dists, torch.arange(vector_dim)]\n\n                    curr_nn_distances = nn_distances[i][curr_mapping][min_dists, torch.arange(vector_dim)]\n                    dist_thr = get_dynamic_threshold(curr_nn_distances) if self.dist_thr == 'dynamic' else self.dist_thr\n                    dist_mask = curr_nn_distances < dist_thr\n                    final_mask_tgt = attn_masks[i] & dist_mask\n\n                    other_outputs = old_output[curr_mapping][min_dists, curr_nn_map][final_mask_tgt]\n\n                    output[i][final_mask_tgt] = alpha * other_outputs + (1 - alpha)*old_output[i][final_mask_tgt]\n\n            if anchors_cache and anchors_cache.is_cache_mode():\n                if place_in_unet not in anchors_cache.h_out_cache:\n                    anchors_cache.h_out_cache[place_in_unet] = {}\n\n                anchors_cache.h_out_cache[place_in_unet][curr_iter] = output\n\n        return output\n\n    def inject_anchors(self, output, curr_iter, output_res, extended_mapping, place_in_unet, anchors_cache):\n        curr_unet_part = place_in_unet.split('_')[0]\n\n        # Inject only in the specified unet parts (up, mid, down)\n        if (curr_unet_part not in self.inject_unet_parts) or output_res not in self.inject_res:\n            return output\n\n        bsz = output.shape[0]\n        nn_map = self.nn_map[output_res]\n        nn_distances = self.nn_distances[output_res]\n        attn_masks = self.attn_masks[output_res]\n        vector_dim = output_res**2\n\n        alpha = next((alpha for min_range, max_range, alpha in self.inject_range_alpha if min_range <= curr_iter <= max_range), None)\n        if alpha:\n\n            anchor_outputs = anchors_cache.h_out_cache[place_in_unet][curr_iter]\n\n            old_output = output#.clone()\n            for i in range(bsz):\n                other_outputs = []\n\n                if self.swap_strategy == 'min':\n                    min_dists = nn_distances[i].argmin(dim=0)\n                    curr_nn_map = nn_map[i][min_dists, torch.arange(vector_dim)]\n\n                    curr_nn_distances = nn_distances[i][min_dists, torch.arange(vector_dim)]\n                    dist_thr = get_dynamic_threshold(curr_nn_distances) if self.dist_thr == 'dynamic' else self.dist_thr\n                    dist_mask = curr_nn_distances < dist_thr\n                    final_mask_tgt = attn_masks[i] & dist_mask\n\n                    other_outputs = anchor_outputs[min_dists, curr_nn_map][final_mask_tgt]\n\n                    output[i][final_mask_tgt] = alpha * other_outputs + (1 - alpha)*old_output[i][final_mask_tgt]\n\n        return output\n\n\nclass AnchorCache:\n    def __init__(self):\n        self.input_h_cache = {} # place_in_unet, iter, h_in\n        self.h_out_cache = {} # place_in_unet, iter, h_out\n        self.anchors_last_mask = None\n        self.dift_cache = None\n\n        self.mode = 'cache' # mode can be 'cache' or 'inject'\n\n    def set_mode(self, mode):\n        self.mode = mode\n\n    def set_mode_inject(self):\n        self.mode = 'inject'\n\n    def set_mode_cache(self):\n        self.mode = 'cache'\n\n    def is_inject_mode(self):\n        return self.mode == 'inject'\n\n    def is_cache_mode(self):\n        return self.mode == 'cache'\n\n\n    def to_device(self, device):\n        for key, value in self.input_h_cache.items():\n            self.input_h_cache[key] = {k: v.to(device) for k, v in value.items()}\n\n        for key, value in self.h_out_cache.items():\n            self.h_out_cache[key] = {k: v.to(device) for k, v in value.items()}\n\n        if self.anchors_last_mask:\n            self.anchors_last_mask = {k: v.to(device) for k, v in self.anchors_last_mask.items()}\n\n        if self.dift_cache is not None:\n            self.dift_cache = self.dift_cache.to(device)\n\n\nclass QueryStore:\n    def __init__(self, mode='store', t_range=[0, 1000], strength_start=1, strength_end=1):\n        \"\"\"\n        Initialize an empty ActivationsStore\n        \"\"\"\n        self.query_store = defaultdict(list)\n        self.mode = mode\n        self.t_range = t_range\n        self.strengthes = np.linspace(strength_start, strength_end, (t_range[1] - t_range[0])+1)\n\n    def set_mode(self, mode): # mode can be 'cache' or 'inject'\n        self.mode = mode\n\n    def cache_query(self, query, place_in_unet: str):\n        self.query_store[place_in_unet] = query\n\n    def inject_query(self, query, place_in_unet, t):\n        if t >= self.t_range[0] and t <= self.t_range[1]:\n            relative_t = t - self.t_range[0]\n            strength = self.strengthes[relative_t]\n            new_query = strength * self.query_store[place_in_unet] + (1 - strength) * query\n        else:\n            new_query = query\n\n        return new_query\n\nclass DIFTLatentStore:\n    def __init__(self, steps: List[int], up_ft_indices: List[int]):\n        self.steps = steps\n        self.up_ft_indices = up_ft_indices\n        self.dift_features = {}\n\n    def __call__(self, features: torch.Tensor, t: int, layer_index: int):\n        if t in self.steps and layer_index in self.up_ft_indices:\n            self.dift_features[f'{int(t)}_{layer_index}'] = features\n\n    def copy(self):\n        copy_dift = DIFTLatentStore(self.steps, self.up_ft_indices)\n\n        for key, value in self.dift_features.items():\n            copy_dift.dift_features[key] = value.clone()\n\n        return copy_dift\n\n    def reset(self):\n        self.dift_features = {}\n"
  },
  {
    "path": "scripts/consistory/utils/general_utils.py",
    "content": "# Copyright (C) 2024 NVIDIA Corporation.  All rights reserved.\n#\n# This work is licensed under the LICENSE file\n# located at the root directory.\n\nimport torch\nimport torch.nn.functional as F\nimport numpy as np\n\n\n## Attention Utils\ndef get_dynamic_threshold(tensor):\n    from skimage import filters\n    return filters.threshold_otsu(tensor.float().cpu().numpy())\n\n\ndef attn_map_to_binary(attention_map, scaler=1.):\n    from skimage import filters\n    attention_map_np = attention_map.float().cpu().numpy()\n    threshold_value = filters.threshold_otsu(attention_map_np) * scaler\n    binary_mask = (attention_map_np > threshold_value).astype(np.uint8)\n\n    return binary_mask\n\n\n## Features\n\ndef gaussian_smooth(input_tensor, kernel_size=3, sigma=1):\n    \"\"\"\n    Function to apply Gaussian smoothing on each 2D slice of a 3D tensor.\n    \"\"\"\n    kernel = np.fromfunction(\n        lambda x, y: (1/ (2 * np.pi * sigma ** 2)) *\n                      np.exp(-((x - (kernel_size - 1) / 2) ** 2 + (y - (kernel_size - 1) / 2) ** 2) / (2 * sigma ** 2)),\n        (kernel_size, kernel_size)\n    )\n    kernel = torch.Tensor(kernel / kernel.sum()).to(input_tensor.dtype).to(input_tensor.device)\n    # Add batch and channel dimensions to the kernel\n    kernel = kernel.unsqueeze(0).unsqueeze(0)\n    # Iterate over each 2D slice and apply convolution\n    smoothed_slices = []\n    for i in range(input_tensor.size(0)):\n        slice_tensor = input_tensor[i, :, :]\n        slice_tensor = F.conv2d(slice_tensor.unsqueeze(0).unsqueeze(0), kernel, padding=kernel_size // 2)[0, 0]\n        smoothed_slices.append(slice_tensor)\n    # Stack the smoothed slices to get the final tensor\n    smoothed_tensor = torch.stack(smoothed_slices, dim=0)\n    return smoothed_tensor\n\n\n## Dense correspondence utils\n\ndef cos_dist(a, b):\n    a_norm = F.normalize(a, dim=-1)\n    b_norm = F.normalize(b, dim=-1)\n    res = a_norm @ b_norm.T\n    return 1 - res\n\n\ndef gen_nn_map(src_features, src_mask,  tgt_features, tgt_mask, device, batch_size=100, tgt_size=768):\n    resized_src_features = F.interpolate(src_features.unsqueeze(0), size=tgt_size, mode='bilinear', align_corners=False).squeeze(0)\n    resized_src_features = resized_src_features.permute(1,2,0).view(tgt_size**2, -1)\n    resized_tgt_features = F.interpolate(tgt_features.unsqueeze(0), size=tgt_size, mode='bilinear', align_corners=False).squeeze(0)\n    resized_tgt_features = resized_tgt_features.permute(1,2,0).view(tgt_size**2, -1)\n    nearest_neighbor_indices = torch.zeros(tgt_size**2, dtype=torch.long, device=device)\n    nearest_neighbor_distances = torch.zeros(tgt_size**2, dtype=src_features.dtype, device=device)\n    if not batch_size:\n        batch_size = tgt_size**2\n    for i in range(0, tgt_size**2, batch_size):\n        distances = cos_dist(resized_src_features, resized_tgt_features[i:i+batch_size])\n        distances[~src_mask] = 2.\n        min_distances, min_indices = torch.min(distances, dim=0)\n        nearest_neighbor_indices[i:i+batch_size] = min_indices\n        nearest_neighbor_distances[i:i+batch_size] = min_distances\n    return nearest_neighbor_indices, nearest_neighbor_distances\n\n\ndef cyclic_nn_map(features, masks, latent_resolutions, device):\n    bsz = features.shape[0]\n    nn_map_dict = {}\n    nn_distances_dict = {}\n\n    for tgt_size in latent_resolutions:\n        nn_map = torch.empty(bsz, bsz, tgt_size**2, dtype=torch.long, device=device)\n        nn_distances = torch.full((bsz, bsz, tgt_size**2), float('inf'), dtype=features.dtype, device=device)\n\n        for i in range(bsz):\n            for j in range(bsz):\n                if i != j:\n                    nearest_neighbor_indices, nearest_neighbor_distances = gen_nn_map(features[j], masks[tgt_size][j], features[i], masks[tgt_size][i], device, batch_size=None, tgt_size=tgt_size)\n                    nn_map[i,j] = nearest_neighbor_indices\n                    nn_distances[i,j] = nearest_neighbor_distances\n\n        nn_map_dict[tgt_size] = nn_map\n        nn_distances_dict[tgt_size] = nn_distances\n\n    return nn_map_dict, nn_distances_dict\n\n\ndef anchor_nn_map(features, anchor_features, masks, anchor_masks, latent_resolutions, device):\n    bsz = features.shape[0]\n    anchor_bsz = anchor_features.shape[0]\n    nn_map_dict = {}\n    nn_distances_dict = {}\n\n    for tgt_size in latent_resolutions:\n        nn_map = torch.empty(bsz, anchor_bsz, tgt_size**2, dtype=torch.long, device=device)\n        nn_distances = torch.full((bsz, anchor_bsz, tgt_size**2), float('inf'), dtype=features.dtype, device=device)\n\n        for i in range(bsz):\n            for j in range(anchor_bsz):\n                nearest_neighbor_indices, nearest_neighbor_distances = gen_nn_map(anchor_features[j], anchor_masks[tgt_size][j], features[i], masks[tgt_size][i], device, batch_size=None, tgt_size=tgt_size)\n                nn_map[i,j] = nearest_neighbor_indices\n                nn_distances[i,j] = nearest_neighbor_distances\n        nn_map_dict[tgt_size] = nn_map\n        nn_distances_dict[tgt_size] = nn_distances\n\n    return nn_map_dict, nn_distances_dict\n"
  },
  {
    "path": "scripts/consistory/utils/ptp_utils.py",
    "content": "# Copyright 2022 Google LLC\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#      http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\n# MIT License\n#\n# Copyright (c) 2023 AttendAndExcite\n#\n# Permission is hereby granted, free of charge, to any person obtaining a copy\n# of this software and associated documentation files (the \"Software\"), to deal\n# in the Software without restriction, including without limitation the rights\n# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n# copies of the Software, and to permit persons to whom the Software is\n# furnished to do so, subject to the following conditions:\n#\n# The above copyright notice and this permission notice shall be included in all\n# copies or substantial portions of the Software.\n#\n# THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n# SOFTWARE.\n\n# Copyright 2022 Google LLC\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#      http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\n# Not a contribution\n# Changes made by NVIDIA CORPORATION & AFFILIATES enabling ConsiStory or otherwise documented as NVIDIA-proprietary\n# are not a contribution and subject to the license under the LICENSE file located at the root directory.\n\nimport torch\nfrom collections import defaultdict\nimport numpy as np\nfrom typing import Union, List\nfrom PIL import Image\n\nfrom modules.consistory.utils.general_utils import attn_map_to_binary\nimport torch.nn.functional as F\n\n\nclass AttentionStore:\n    def __init__(self, attention_store_kwargs):\n        \"\"\"\n        Initialize an empty AttentionStore :param step_index: used to visualize only a specific step in the diffusion\n        process\n        \"\"\"\n        self.attn_res = attention_store_kwargs.get('attn_res', (32,32))\n        self.token_indices = attention_store_kwargs['token_indices']\n        bsz = self.token_indices.size(1)\n        self.mask_background_query = attention_store_kwargs.get('mask_background_query', False)\n        self.original_attn_masks = attention_store_kwargs.get('original_attn_masks', None)\n        self.extended_mapping = attention_store_kwargs.get('extended_mapping', torch.ones(bsz, bsz).bool())\n        self.mask_dropout = attention_store_kwargs.get('mask_dropout', 0.0)\n        torch.manual_seed(0) # For dropout mask reproducibility\n\n        self.curr_iter = 0\n        self.ALL_RES = [32, 64]\n        self.step_store = defaultdict(list)\n        self.attn_masks = {res: None for res in self.ALL_RES}\n        self.last_mask = {res: None for res in self.ALL_RES}\n        self.last_mask_dropout = {res: None for res in self.ALL_RES}\n\n    def __call__(self, attn, is_cross: bool, place_in_unet: str, attn_heads: int):\n        if is_cross and attn.shape[1] == np.prod(self.attn_res):\n            guidance_attention = attn[attn.size(0)//2:]\n            batched_guidance_attention = guidance_attention.reshape([guidance_attention.shape[0]//attn_heads, attn_heads, *guidance_attention.shape[1:]])\n            batched_guidance_attention = batched_guidance_attention.mean(dim=1)\n            self.step_store[place_in_unet].append(batched_guidance_attention)\n\n    def reset(self):\n        self.step_store = defaultdict(list)\n        self.attn_masks = {res: None for res in self.ALL_RES}\n        self.last_mask = {res: None for res in self.ALL_RES}\n        self.last_mask_dropout = {res: None for res in self.ALL_RES}\n\n        torch.cuda.empty_cache()\n\n    def aggregate_last_steps_attention(self) -> torch.Tensor:\n        \"\"\"Aggregates the attention across the different layers and heads at the specified resolution.\"\"\"\n        attention_maps = torch.cat([torch.stack(x[-20:]) for x in self.step_store.values()]).mean(dim=0)\n        bsz, wh, _ = attention_maps.shape\n\n        # Create attention maps for each concept token, for each batch item\n        agg_attn_maps = []\n        for i in range(bsz):\n            curr_prompt_indices = []\n\n            for concept_token_indices in self.token_indices:\n                if concept_token_indices[i] != -1:\n                    curr_prompt_indices.append(attention_maps[i, :, concept_token_indices[i]].view(*self.attn_res))\n\n            agg_attn_maps.append(torch.stack(curr_prompt_indices))\n\n        # Upsample the attention maps to the target resolution\n        # and create the attention masks, unifying masks across the different concepts\n        for tgt_size in self.ALL_RES:\n            pixels = tgt_size ** 2\n            tgt_agg_attn_maps = [F.interpolate(x.unsqueeze(1), size=tgt_size, mode='bilinear').squeeze(1) for x in agg_attn_maps]\n\n            attn_masks = []\n            for batch_item_map in tgt_agg_attn_maps:\n                concept_attn_masks = []\n\n                for concept_maps in batch_item_map:\n                    concept_attn_masks.append(torch.from_numpy(attn_map_to_binary(concept_maps, 1.)).to(attention_maps.device).bool().view(-1))\n\n                concept_attn_masks = torch.stack(concept_attn_masks, dim=0).max(dim=0).values\n                attn_masks.append(concept_attn_masks)\n\n            attn_masks = torch.stack(attn_masks)\n            self.last_mask[tgt_size] = attn_masks.clone()\n\n            # Add mask dropout\n            if self.curr_iter < 1000:\n                rand_mask = (torch.rand_like(attn_masks.float()) < self.mask_dropout)\n                attn_masks[rand_mask] = False\n\n            self.last_mask_dropout[tgt_size] = attn_masks.clone()\n\n            # # Create subject driven extended self attention masks\n            # output_attn_mask = torch.zeros((bsz, tgt_size**2, attn_masks.view(-1).size(0)), device=attn_masks.device).bool()\n\n            # for i in range(bsz):\n            #     for j in range(bsz):\n            #         if i==j:\n            #             output_attn_mask[i, :, j*pixels:(j+1)*pixels] = 1\n            #         else:\n            #             if self.extended_mapping[i,j]:\n            #                 if not self.mask_background_query:\n            #                     output_attn_mask[i, :, j*pixels:(j+1)*pixels] = attn_masks[j].unsqueeze(0).expand(pixels, -1)\n            #                 else:\n            #                     output_attn_mask[i, attn_masks[i], j*pixels:(j+1)*pixels] = attn_masks[j].unsqueeze(0).expand(attn_masks[i].sum(), -1)\n\n            # self.attn_masks[tgt_size] = output_attn_mask\n\n    def get_attn_mask_bias(self, tgt_size, bsz=None):\n        attn_mask = self.attn_masks[tgt_size] if self.original_attn_masks is None else self.original_attn_masks[tgt_size]\n\n        if attn_mask is None:\n            return None\n\n        attn_bias = torch.zeros_like(attn_mask, dtype=torch.float16)\n        attn_bias[~attn_mask] = float('-inf')\n\n        if bsz and bsz != attn_bias.shape[0]:\n            attn_bias = attn_bias.repeat(bsz // attn_bias.shape[0], 1, 1)\n\n        return attn_bias\n\n    def get_extended_attn_mask_instance(self, width, i):\n        attn_mask = self.last_mask_dropout[width]\n        if attn_mask is None:\n            return None\n\n        n_patches = width**2\n\n\n        output_attn_mask = torch.zeros((attn_mask.shape[0] * attn_mask.shape[1],), device=attn_mask.device, dtype=torch.bool)\n        for j in range(attn_mask.shape[0]):\n            if i==j:\n                output_attn_mask[j*n_patches:(j+1)*n_patches] = 1\n            else:\n                if self.extended_mapping[i,j]:\n                    if not self.mask_background_query:\n                        output_attn_mask[j*n_patches:(j+1)*n_patches] = attn_mask[j].unsqueeze(0) #.expand(n_patches, -1)\n                    else:\n                        raise NotImplementedError('mask_background_query is not supported anymore')\n                        output_attn_mask[0, attn_mask[i], k*n_patches:(k+1)*n_patches] = attn_mask[j].unsqueeze(0).expand(attn_mask[i].sum(), -1)\n\n        return output_attn_mask\n"
  },
  {
    "path": "scripts/consistory_ext.py",
    "content": "\"\"\"\noriginal code from <https://github.com/NVlabs/consistory>\nported to modules/consistory\n- make it non-cuda exclusive\n- separate create anchors and create extra\n- do not force-load pipeline and unet, use existing model\n- uses diffusers==0.25 class definitions, needed quite an update\n- forces uses of xformers, converted attention calls to sdp\n- unsafe tensor to numpy breaks with bfloat16\n- removed debug print statements\n\"\"\"\nimport time\nimport gradio as gr\nimport diffusers\nfrom modules import scripts_manager, devices, errors, processing, shared, sd_models, sd_samplers\n\n\nclass Script(scripts_manager.Script):\n    def __init__(self):\n        super().__init__()\n        self.anchor_cache_first_stage = None\n        self.anchor_cache_second_stage = None\n\n    def title(self):\n        return 'ConsiStory: Consistent Image Generation'\n\n    def show(self, is_img2img):\n        return not is_img2img\n\n    def reset(self):\n        self.anchor_cache_first_stage = None\n        self.anchor_cache_second_stage = None\n        shared.log.debug('ConsiStory reset anchors')\n\n    def ui(self, _is_img2img): # ui elements\n        with gr.Row():\n            gr.HTML('<a href=\"https://github.com/NVlabs/consistory\">&nbsp ConsiStory: Consistent Image Generation</a><br>')\n        with gr.Row():\n            gr.HTML('<br> ▪ Anchors are created on first run<br> ▪ Subsequent generate will use anchors and apply to main prompt<br> ▪ Main prompts are separated by newlines')\n        with gr.Row():\n            subject = gr.Textbox(label=\"Subject\", placeholder='short description of a subject', value='')\n        with gr.Row():\n            concepts = gr.Textbox(label=\"Concept Tokens\", placeholder='one or more concepts to extract from subject', value='')\n        with gr.Row():\n            prompts = gr.Textbox(label=\"Anchor settings\", lines=2, placeholder='two scene settings to place subject in', value='')\n        with gr.Row():\n            reset = gr.Button(value=\"Reset anchors\", variant='primary')\n            reset.click(fn=self.reset, inputs=[], outputs=[])\n        with gr.Row():\n            dropout = gr.Slider(label=\"Mask Dropout\", minimum=0.0, maximum=1.0, step=0.1, value=0.5)\n        with gr.Row():\n            sampler = gr.Checkbox(label=\"Override sampler\", value=True)\n            steps = gr.Checkbox(label=\"Override steps\", value=True)\n        with gr.Row():\n            same = gr.Checkbox(label=\"Same latent\", value=False)\n            queries = gr.Checkbox(label=\"Share queries\", value=True)\n        with gr.Row():\n            sdsa = gr.Checkbox(label=\"Perform SDSA\", value=True)\n        with gr.Row():\n            freeu = gr.Checkbox(label=\"Enable FreeU\", value=False)\n            freeu_preset = gr.Textbox(label=\"FreeU preset\", value='0.6, 0.4, 1.1, 1.2')\n        with gr.Row():\n            injection = gr.Checkbox(label=\"Perform Injection\", value=False)\n            alpha = gr.Textbox(label=\"Alpha preset\", value='10, 20, 0.8')\n        return [subject, concepts, prompts, dropout, sampler, steps, same, queries, sdsa, freeu, freeu_preset, alpha, injection]\n\n    def create_model(self):\n        diffusers.models.embeddings.PositionNet = diffusers.models.embeddings.GLIGENTextBoundingboxProjection # patch as renamed in https://github.com/huggingface/diffusers/pull/6244/files\n        import scripts.consistory as cs\n        if shared.sd_model.__class__.__name__ != 'ConsistoryExtendAttnSDXLPipeline':\n            shared.log.debug('ConsiStory init')\n            t0 = time.time()\n            state_dict = shared.sd_model.unet.state_dict() # save existing unet\n            shared.sd_model = sd_models.switch_pipe(cs.ConsistoryExtendAttnSDXLPipeline, shared.sd_model)\n            shared.sd_model.unet = cs.ConsistorySDXLUNet2DConditionModel.from_config(shared.sd_model.unet.config)\n            shared.sd_model.unet.load_state_dict(state_dict) # now load it into new class\n            shared.sd_model.unet.to(dtype=devices.dtype)\n            state_dict = None\n            # sd_models.set_diffuser_options(shared.sd_model)\n            sd_models.move_model(shared.sd_model, devices.device)\n            sd_models.move_model(shared.sd_model.unet, devices.device)\n            t1 = time.time()\n            shared.log.debug(f'ConsiStory load: model={shared.sd_model.__class__.__name__} time={t1-t0:.2f}')\n        devices.torch_gc(force=True)\n\n    def set_args(self, p: processing.StableDiffusionProcessing, *args):\n        subject, concepts, prompts, dropout, sampler, steps, same, queries, sdsa, freeu, freeu_preset, alpha, injection = args # pylint: disable=unused-variable\n        processing.fix_seed(p)\n        if sampler:\n            shared.sd_model.scheduler = diffusers.DDIMScheduler.from_config(shared.sd_model.scheduler.config)\n        else:\n            sd_samplers.create_sampler(p.sampler_name, shared.sd_model)\n        if freeu:\n            try:\n                freeu_preset = [float(f.strip()) for f in freeu_preset.split(',')]\n            except Exception:\n                freeu_preset = []\n                shared.log.warning(f'ConsiStory: freeu=\"{freeu_preset}\" invalid')\n            if len(freeu) == 4:\n                shared.sd_model.enable_freeu(s1=freeu[0], s2=freeu[0], b1=freeu[0], b2=freeu[0])\n        steps = 50 if steps else p.steps\n        if injection:\n            try:\n                alpha = [a.strip() for a in alpha.split(',')]\n                if len(alpha) == 3:\n                    alpha = (int(alpha[0]), int(alpha[1]), float(alpha[2]))\n            except Exception:\n                alpha=(10, 20, 0.8)\n                shared.log.warning(f'ConsiStory: alpha=\"{alpha}\" invalid')\n        else:\n            alpha=(10, 20, 0.8)\n        seed = p.seed\n        concepts = [c.strip() for c in concepts.split(',') if c.strip() != '']\n        for c in concepts:\n            if c not in subject:\n                shared.log.warning(f'ConsiStory: concept=\"{c}\" not in subject')\n                subject = f'{subject} {c}'\n        settings = [p.strip() for p in prompts.split('\\n') if p.strip() != '']\n        anchors = [f'{subject} {p}' for p in settings]\n        prompt = shared.prompt_styles.apply_styles_to_prompt(p.prompt, p.styles)\n        shared.prompt_styles.apply_styles_to_extra(p)\n        p.styles = []\n        prompts = [p.strip() for p in prompt.split('\\n') if p.strip() != '']\n        for i, prompt in enumerate(prompts):\n            if subject not in prompt:\n                prompts[i] = f'{subject} {prompt}'\n        shared.log.debug(f'ConsiStory args: sampler={shared.sd_model.scheduler.__class__.__name__} steps={steps} sdsa={sdsa} queries={queries} same={same} dropout={dropout} freeu={freeu_preset if freeu else None} alpha={alpha if injection else None}')\n        return concepts, anchors, prompts, alpha, steps, seed\n\n    def create_anchors(self, anchors, concepts, seed, steps, dropout, same, queries, sdsa, injection, alpha):\n        import scripts.consistory as cs\n        t0 = time.time()\n        if len(anchors) == 0:\n            shared.log.warning('ConsiStory: no anchors')\n            return []\n        shared.log.debug(f'ConsiStory anchors: concepts={concepts} anchors={anchors}')\n        with devices.inference_context():\n            try:\n                images, self.anchor_cache_first_stage, self.anchor_cache_second_stage = cs.run_anchor_generation(\n                    story_pipeline=shared.sd_model,\n                    prompts=anchors,\n                    concept_token=concepts,\n                    seed=seed,\n                    n_steps=steps,\n                    mask_dropout=dropout,\n                    same_latent=same,\n                    share_queries=queries,\n                    perform_sdsa=sdsa,\n                    inject_range_alpha=alpha,\n                    perform_injection=injection,\n                )\n            except Exception as e:\n                shared.log.error(f'ConsiStory: {e}')\n                errors.display(e, 'ConsiStory')\n                images = []\n            devices.torch_gc()\n        t1 = time.time()\n        shared.log.debug(f'ConsiStory anchors: images={len(images)} time={t1-t0:.2f}')\n        return images\n\n    def create_extra(self, prompt, concepts, seed, steps, dropout, same, queries, sdsa, injection, alpha):\n        import scripts.consistory as cs\n        t0 = time.time()\n        images = []\n        shared.log.debug(f'ConsiStory extra: concepts={concepts} prompt=\"{prompt}\"')\n        with devices.inference_context():\n            try:\n                images = cs.run_extra_generation(\n                    story_pipeline=shared.sd_model,\n                    prompts=[prompt],\n                    concept_token=concepts,\n                    anchor_cache_first_stage=self.anchor_cache_first_stage,\n                    anchor_cache_second_stage=self.anchor_cache_second_stage,\n                    seed=seed,\n                    n_steps=steps,\n                    mask_dropout=dropout,\n                    same_latent=same,\n                    share_queries=queries,\n                    perform_sdsa=sdsa,\n                    inject_range_alpha=alpha,\n                    perform_injection=injection,\n                )\n            except Exception as e:\n                shared.log.error(f'ConsiStory: {e}')\n                errors.display(e, 'ConsiStory')\n                images = []\n            devices.torch_gc()\n        t1 = time.time()\n        shared.log.debug(f'ConsiStory extra: images={len(images)} time={t1-t0:.2f}')\n        return images\n\n    def run(self, p: processing.StableDiffusionProcessing, *args): # pylint: disable=arguments-differ\n        supported_model_list = ['sdxl']\n        if shared.sd_model_type not in supported_model_list and shared.sd_model.__class__.__name__ != 'ConsistoryExtendAttnSDXLPipeline':\n            shared.log.warning(f'ConsiStory: class={shared.sd_model.__class__.__name__} model={shared.sd_model_type} required={supported_model_list}')\n            return None\n\n        subject, concepts, prompts, dropout, sampler, steps, same, queries, sdsa, freeu, _freeu_preset, alpha, injection = args # pylint: disable=unused-variable\n\n        self.create_model() # create model if not already done\n        concepts, anchors, prompts, alpha, steps, seed = self.set_args(p, *args) # set arguments\n\n        images = []\n        if self.anchor_cache_first_stage is None or self.anchor_cache_second_stage is None: # create anchors if not cached\n            images = self.create_anchors(anchors, concepts, seed, steps, dropout, same, queries, sdsa, injection, alpha)\n\n        for prompt in prompts:\n            extra_out_images = self.create_extra(prompt, concepts, seed, steps, dropout, same, queries, sdsa, injection, alpha)\n            for image in extra_out_images:\n                images.append(image)\n\n        shared.sd_model.disable_freeu()\n        processed = processing.get_processed(p, images)\n        return processed\n\n    def after(self, p: processing.StableDiffusionProcessing, processed: processing.Processed, *args): # pylint: disable=arguments-differ, unused-argument\n        return processed\n"
  },
  {
    "path": "scripts/ctrlx/__init__.py",
    "content": "from copy import deepcopy\nfrom dataclasses import dataclass\nfrom typing import Any, Callable, Dict, List, Optional, Tuple, Union\nfrom diffusers import StableDiffusionXLPipeline\nfrom diffusers.image_processor import PipelineImageInput\nfrom diffusers.pipelines.stable_diffusion_xl.pipeline_stable_diffusion_xl_img2img import rescale_noise_cfg, retrieve_latents, retrieve_timesteps\nfrom diffusers.utils import BaseOutput, deprecate\nfrom diffusers.utils.torch_utils import randn_tensor\nimport numpy as np\nimport PIL\nimport torch\nfrom .sdxl import register_attr\nfrom .media import preprocess\nfrom .utils import batch_dict_to_tensor, batch_tensor_to_dict, noise_prev, noise_t2t\n\n\nBATCH_ORDER = [\n    \"structure_uncond\", \"appearance_uncond\", \"uncond\", \"structure_cond\", \"appearance_cond\", \"cond\",\n]\n\n\ndef get_last_control_i(control_schedule, num_inference_steps):\n    if control_schedule is None:\n        return num_inference_steps, num_inference_steps\n\n    def max_(l):\n        if len(l) == 0:\n            return 0.0\n        return max(l)\n\n    structure_max = 0.0\n    appearance_max = 0.0\n    for block in control_schedule.values():\n        if isinstance(block, list):  # Handling mid_block\n            block = {0: block}\n        for layer in block.values():\n            structure_max = max(structure_max, max_(layer[0] + layer[1]))\n            appearance_max = max(appearance_max, max_(layer[2]))\n\n    structure_i = round(num_inference_steps * structure_max)\n    appearance_i = round(num_inference_steps * appearance_max)\n    return structure_i, appearance_i\n\n\n@dataclass\nclass CtrlXStableDiffusionXLPipelineOutput(BaseOutput):\n    images: Union[List[PIL.Image.Image], np.ndarray] = None\n    structures: Union[List[PIL.Image.Image], np.ndarray] = None\n    appearances: Union[List[PIL.Image.Image], np.ndarray] = None\n\n\nclass CtrlXStableDiffusionXLPipeline(StableDiffusionXLPipeline):  # diffusers==0.28.0\n\n    def prepare_latents(\n        self, image, batch_size, num_images_per_prompt, num_channels_latents, height, width,\n        dtype, device, generator=None, noise=None,\n    ):\n        batch_size = batch_size * num_images_per_prompt\n        if noise is None:\n            shape = (\n                batch_size,\n                num_channels_latents,\n                height // self.vae_scale_factor,\n                width // self.vae_scale_factor\n            )\n            noise = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n            noise = noise * self.scheduler.init_noise_sigma  # Starting noise, need to scale\n        else:\n            noise = noise.to(device)\n\n        if image is None:\n            return noise, None\n\n        if not isinstance(image, (torch.Tensor, PIL.Image.Image, list)):\n            raise ValueError(\n                f\"`image` has to be of type `torch.Tensor`, `PIL.Image.Image` or list but is {type(image)}\"\n            )\n\n        # Offload text encoder if `enable_model_cpu_offload` was enabled\n        if hasattr(self, \"final_offload_hook\") and self.final_offload_hook is not None:\n            self.text_encoder_2.to(\"cpu\")\n            torch.cuda.empty_cache()\n\n        image = image.to(device=device, dtype=dtype)\n\n        if image.shape[1] == 4:  # Image already in latents form\n            init_latents = image\n\n        else:\n            # Make sure the VAE is in float32 mode, as it overflows in float16\n            if self.vae.config.force_upcast:\n                image = image.to(torch.float32)\n                self.vae.to(torch.float32)\n\n            if isinstance(generator, list) and len(generator) != batch_size:\n                raise ValueError(\n                    f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                    f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n                )\n            elif isinstance(generator, list):\n                init_latents = [\n                    retrieve_latents(self.vae.encode(image[i : i + 1]), generator=generator[i])\n                    for i in range(batch_size)\n                ]\n                init_latents = torch.cat(init_latents, dim=0)\n            else:\n                init_latents = retrieve_latents(self.vae.encode(image), generator=generator)\n\n            if self.vae.config.force_upcast:\n                self.vae.to(dtype)\n\n            init_latents = init_latents.to(dtype)\n            init_latents = self.vae.config.scaling_factor * init_latents\n\n        if batch_size > init_latents.shape[0] and batch_size % init_latents.shape[0] == 0:\n            # Expand init_latents for batch_size\n            additional_image_per_prompt = batch_size // init_latents.shape[0]\n            init_latents = torch.cat([init_latents] * additional_image_per_prompt, dim=0)\n        elif batch_size > init_latents.shape[0] and batch_size % init_latents.shape[0] != 0:\n            raise ValueError(\n                f\"Cannot duplicate `image` of batch size {init_latents.shape[0]} to {batch_size} text prompts.\"\n            )\n        else:\n            init_latents = torch.cat([init_latents], dim=0)\n\n        return noise, init_latents\n\n    @property\n    def structure_guidance_scale(self):\n        return self._guidance_scale if self._structure_guidance_scale is None else self._structure_guidance_scale\n\n    @property\n    def appearance_guidance_scale(self):\n        return self._guidance_scale if self._appearance_guidance_scale is None else self._appearance_guidance_scale\n\n    @torch.no_grad()\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        structure_prompt: Optional[Union[str, List[str]]] = None,\n        appearance_prompt: Optional[Union[str, List[str]]] = None,\n        structure_image: Optional[PipelineImageInput] = None,\n        appearance_image: Optional[PipelineImageInput] = None,\n        num_inference_steps: int = 50,\n        timesteps: List[int] = None,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        positive_prompt: Optional[Union[str, List[str]]] = None,\n        height: Optional[int] = None,\n        width: Optional[int] = None,\n        guidance_scale: float = 5.0,\n        structure_guidance_scale: Optional[float] = None,\n        appearance_guidance_scale: Optional[float] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        eta: float = 0.0,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.Tensor] = None,\n        structure_latents: Optional[torch.Tensor] = None,\n        appearance_latents: Optional[torch.Tensor] = None,\n        prompt_embeds: Optional[torch.Tensor] = None,  # Positive prompt is concatenated with prompt, so no embeddings\n        structure_prompt_embeds: Optional[torch.Tensor] = None,\n        appearance_prompt_embeds: Optional[torch.Tensor] = None,\n        negative_prompt_embeds: Optional[torch.Tensor] = None,\n        pooled_prompt_embeds: Optional[torch.Tensor] = None,\n        structure_pooled_prompt_embeds: Optional[torch.Tensor] = None,\n        appearance_pooled_prompt_embeds: Optional[torch.Tensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.Tensor] = None,\n        control_schedule: Optional[Dict] = None,\n        self_recurrence_schedule: Optional[List[int]] = [],  # Format: [(start, end, num_repeat)]\n        decode_structure: Optional[bool] = True,\n        decode_appearance: Optional[bool] = True,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        guidance_rescale: float = 0.0,\n        original_size: Tuple[int, int] = None,\n        crops_coords_top_left: Tuple[int, int] = (0, 0),\n        target_size: Tuple[int, int] = None,\n        clip_skip: Optional[int] = None,\n        callback_on_step_end: Optional[Callable[[int, int, Dict], None]] = None,\n        callback_on_step_end_tensor_inputs: List[str] = [\"latents\"],\n        **kwargs,\n    ):\n\n        callback = kwargs.pop(\"callback\", None)\n        callback_steps = kwargs.pop(\"callback_steps\", None)\n\n        if callback is not None:\n            deprecate(\n                \"callback\",\n                \"1.0.0\",\n                \"Passing `callback` as an input argument to `__call__` is deprecated, consider use `callback_on_step_end`\",\n            )\n        if callback_steps is not None:\n            deprecate(\n                \"callback_steps\",\n                \"1.0.0\",\n                \"Passing `callback_steps` as an input argument to `__call__` is deprecated, consider use `callback_on_step_end`\",\n            )\n\n        # 0. Default height and width to U-Net\n        height = height or self.default_sample_size * self.vae_scale_factor\n        width = width or self.default_sample_size * self.vae_scale_factor\n        original_size = original_size or (height, width)\n        target_size = target_size or (height, width)\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            None,  # prompt_2\n            height,\n            width,\n            callback_steps,\n            negative_prompt = negative_prompt,\n            negative_prompt_2 = None,  # negative_prompt_2\n            prompt_embeds = prompt_embeds,\n            negative_prompt_embeds = negative_prompt_embeds,\n            pooled_prompt_embeds = pooled_prompt_embeds,\n            negative_pooled_prompt_embeds = negative_pooled_prompt_embeds,\n            callback_on_step_end_tensor_inputs = callback_on_step_end_tensor_inputs,\n        )\n\n        self._guidance_scale = guidance_scale\n        self._structure_guidance_scale = structure_guidance_scale\n        self._appearance_guidance_scale = appearance_guidance_scale\n        self._guidance_rescale = guidance_rescale\n        self._clip_skip = clip_skip\n        self._cross_attention_kwargs = cross_attention_kwargs\n        self._denoising_end = None  # denoising_end\n        self._denoising_start = None  # denoising_start\n        self._interrupt = False\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        if batch_size * num_images_per_prompt != 1:\n            raise ValueError(\n                f\"Pipeline currently does not support batch_size={batch_size} and num_images_per_prompt=1. \"\n                \"Effective batch size (batch_size * num_images_per_prompt) must be 1.\"\n            )\n\n        device = self._execution_device\n\n        # 3. Encode input prompt\n        text_encoder_lora_scale = (\n            self.cross_attention_kwargs.get(\"scale\", None) if self.cross_attention_kwargs is not None else None\n        )\n\n        if positive_prompt is not None and positive_prompt != \"\":\n            prompt = prompt + \", \" + positive_prompt  # Add positive prompt with comma\n            # By default, only add positive prompt to the appearance prompt and not the structure prompt\n            if appearance_prompt is not None and appearance_prompt != \"\":\n                appearance_prompt = appearance_prompt + \", \" + positive_prompt\n\n        (\n            prompt_embeds_,\n            negative_prompt_embeds,\n            pooled_prompt_embeds_,\n            negative_pooled_prompt_embeds,\n        ) = self.encode_prompt(\n            prompt = prompt,\n            prompt_2 = None,  # prompt_2\n            device = device,\n            num_images_per_prompt = num_images_per_prompt,\n            do_classifier_free_guidance = True,  # self.do_classifier_free_guidance, TODO: Support no CFG\n            negative_prompt = negative_prompt,\n            negative_prompt_2 = None,  # negative_prompt_2\n            prompt_embeds = prompt_embeds,\n            negative_prompt_embeds = negative_prompt_embeds,\n            pooled_prompt_embeds = pooled_prompt_embeds,\n            negative_pooled_prompt_embeds = negative_pooled_prompt_embeds,\n            lora_scale = text_encoder_lora_scale,\n            clip_skip = self.clip_skip,\n        )\n        prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds_], dim=0).to(device)\n        add_text_embeds = torch.cat([negative_pooled_prompt_embeds, pooled_prompt_embeds_], dim=0).to(device)\n\n        # 3.1. Structure prompt embeddings\n        if structure_prompt is not None and structure_prompt != \"\":\n            (\n                structure_prompt_embeds,\n                negative_structure_prompt_embeds,\n                structure_pooled_prompt_embeds,\n                negative_structure_pooled_prompt_embeds,\n            ) = self.encode_prompt(\n                prompt = structure_prompt,\n                prompt_2 = None,  # prompt_2\n                device = device,\n                num_images_per_prompt = num_images_per_prompt,\n                do_classifier_free_guidance = True,  # self.do_classifier_free_guidance, TODO: Support no CFG\n                negative_prompt = negative_prompt if structure_image is None else \"\",\n                negative_prompt_2 = None,  # negative_prompt_2\n                prompt_embeds = structure_prompt_embeds,\n                negative_prompt_embeds = None,  # negative_prompt_embeds\n                pooled_prompt_embeds = structure_pooled_prompt_embeds,\n                negative_pooled_prompt_embeds = None,  # negative_pooled_prompt_embeds\n                lora_scale = text_encoder_lora_scale,\n                clip_skip = self.clip_skip,\n            )\n            structure_prompt_embeds = torch.cat(\n                [negative_structure_prompt_embeds, structure_prompt_embeds], dim=0\n            ).to(device)\n            structure_add_text_embeds = torch.cat(\n                [negative_structure_pooled_prompt_embeds, structure_pooled_prompt_embeds], dim=0\n            ).to(device)\n        else:\n            structure_prompt_embeds = prompt_embeds\n            structure_add_text_embeds = add_text_embeds\n\n        # 3.2. Appearance prompt embeddings\n        if appearance_prompt is not None and appearance_prompt != \"\":\n            (\n                appearance_prompt_embeds,\n                negative_appearance_prompt_embeds,\n                appearance_pooled_prompt_embeds,\n                negative_appearance_pooled_prompt_embeds,\n            ) = self.encode_prompt(\n                prompt = appearance_prompt,\n                prompt_2 = None,  # prompt_2\n                device = device,\n                num_images_per_prompt = num_images_per_prompt,\n                do_classifier_free_guidance = True,  # self.do_classifier_free_guidance, TODO: Support no CFG\n                negative_prompt = negative_prompt if appearance_image is None else \"\",\n                negative_prompt_2 = None,  # negative_prompt_2\n                prompt_embeds = appearance_prompt_embeds,\n                negative_prompt_embeds = None,  # negative_prompt_embeds\n                pooled_prompt_embeds = appearance_pooled_prompt_embeds,  # pooled_prompt_embeds\n                negative_pooled_prompt_embeds = None,  # negative_pooled_prompt_embeds\n                lora_scale = text_encoder_lora_scale,\n                clip_skip = self.clip_skip,\n            )\n            appearance_prompt_embeds = torch.cat(\n                [negative_appearance_prompt_embeds, appearance_prompt_embeds], dim=0\n            ).to(device)\n            appearance_add_text_embeds = torch.cat(\n                [negative_appearance_pooled_prompt_embeds, appearance_pooled_prompt_embeds], dim=0\n            ).to(device)\n        else:\n            appearance_prompt_embeds = prompt_embeds\n            appearance_add_text_embeds = add_text_embeds\n\n        # 3.3. Prepare added time ids & embeddings, TODO: Support no CFG\n        if self.text_encoder_2 is None:\n            text_encoder_projection_dim = int(pooled_prompt_embeds.shape[-1])\n        else:\n            text_encoder_projection_dim = self.text_encoder_2.config.projection_dim\n\n        add_time_ids = self._get_add_time_ids(\n            original_size,\n            crops_coords_top_left,\n            target_size,\n            dtype = prompt_embeds.dtype,\n            text_encoder_projection_dim = text_encoder_projection_dim,\n        )\n        negative_add_time_ids = add_time_ids\n        add_time_ids = torch.cat([negative_add_time_ids, add_time_ids], dim=0).to(device)\n\n        # 4. Prepare timesteps\n        timesteps, num_inference_steps = retrieve_timesteps(self.scheduler, num_inference_steps, device, timesteps)\n\n        # 5. Prepare latent variables\n        num_channels_latents = self.unet.config.in_channels\n\n        latents, _ = self.prepare_latents(\n            None, batch_size, num_images_per_prompt, num_channels_latents, height, width,\n            prompt_embeds.dtype, device, generator, latents\n        )\n\n        if structure_image is not None:\n            structure_image = preprocess(  # Center crop + resize\n                structure_image, self.image_processor, height=height, width=width, resize_mode=\"crop\"\n            )\n            _, clean_structure_latents = self.prepare_latents(\n                structure_image, batch_size, num_images_per_prompt, num_channels_latents, height, width,\n                prompt_embeds.dtype, device, generator, structure_latents,\n            )\n        else:\n            clean_structure_latents = None\n        structure_latents = latents if structure_latents is None else structure_latents\n\n        if appearance_image is not None:\n            appearance_image = preprocess(  # Center crop + resize\n                appearance_image, self.image_processor, height=height, width=width, resize_mode=\"crop\"\n            )\n            _, clean_appearance_latents = self.prepare_latents(\n                appearance_image, batch_size, num_images_per_prompt, num_channels_latents, height, width,\n                prompt_embeds.dtype, device, generator, appearance_latents,\n            )\n        else:\n            clean_appearance_latents = None\n        appearance_latents = latents if appearance_latents is None else appearance_latents\n\n        # 6. Prepare extra step kwargs\n        extra_step_kwargs = self.prepare_extra_step_kwargs(generator, eta)\n\n        # 7. Denoising loop\n        num_warmup_steps = max(len(timesteps) - num_inference_steps * self.scheduler.order, 0)\n\n        # 7.1 Apply denoising_end\n        def denoising_value_valid(dnv):\n            return isinstance(self.denoising_end, float) and 0 < dnv < 1\n\n        if (\n            self.denoising_end is not None\n            and self.denoising_start is not None\n            and denoising_value_valid(self.denoising_end)\n            and denoising_value_valid(self.denoising_start)\n            and self.denoising_start >= self.denoising_end\n        ):\n            raise ValueError(f\"`denoising_start`: {self.denoising_start} cannot be larger than or equal to `denoising_end`: {self.denoising_end} when using type float.\")\n        elif self.denoising_end is not None and denoising_value_valid(self.denoising_end):\n            discrete_timestep_cutoff = int(\n                round(\n                    self.scheduler.config.num_train_timesteps\n                    - (self.denoising_end * self.scheduler.config.num_train_timesteps)\n                )\n            )\n            num_inference_steps = len(list(filter(lambda ts: ts >= discrete_timestep_cutoff, timesteps)))\n            timesteps = timesteps[:num_inference_steps]\n\n        # 7.2 Optionally get guidance scale embedding\n        timestep_cond = None\n        if self.unet.config.time_cond_proj_dim is not None:\n            guidance_scale_tensor = torch.tensor(self.guidance_scale - 1).repeat(batch_size * num_images_per_prompt)\n            timestep_cond = self.get_guidance_scale_embedding(\n                guidance_scale_tensor, embedding_dim=self.unet.config.time_cond_proj_dim\n            ).to(device=device, dtype=latents.dtype)\n\n        # 7.3 Get batch order\n        batch_order = deepcopy(BATCH_ORDER)\n        if structure_image is not None:  # If image is provided, not generating, so no CFG needed\n            batch_order.remove(\"structure_uncond\")\n        if appearance_image is not None:\n            batch_order.remove(\"appearance_uncond\")\n\n        structure_control_stop_i, appearance_control_stop_i = get_last_control_i(control_schedule, num_inference_steps)\n        if self_recurrence_schedule is None or len(self_recurrence_schedule) == 0:\n            self_recurrence_schedule = [0] * num_inference_steps\n\n        self._num_timesteps = len(timesteps)\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                if self.interrupt:\n                    continue\n\n                if i == structure_control_stop_i:  # If not generating structure/appearance, drop after last control\n                    if \"structure_uncond\" not in batch_order:\n                        batch_order.remove(\"structure_cond\")\n                if i == appearance_control_stop_i:\n                    if \"appearance_uncond\" not in batch_order:\n                        batch_order.remove(\"appearance_cond\")\n\n                register_attr(self, t=t.item(), do_control=True, batch_order=batch_order)\n\n                latent_model_input = self.scheduler.scale_model_input(latents, t)\n                structure_latent_model_input = self.scheduler.scale_model_input(structure_latents, t)\n                appearance_latent_model_input = self.scheduler.scale_model_input(appearance_latents, t)\n\n                all_latent_model_input = {\n                    \"structure_uncond\": structure_latent_model_input[0:1],\n                    \"appearance_uncond\": appearance_latent_model_input[0:1],\n                    \"uncond\": latent_model_input[0:1],\n                    \"structure_cond\": structure_latent_model_input[0:1],\n                    \"appearance_cond\": appearance_latent_model_input[0:1],\n                    \"cond\": latent_model_input[0:1],\n                }\n                all_prompt_embeds = {\n                    \"structure_uncond\": structure_prompt_embeds[0:1],\n                    \"appearance_uncond\": appearance_prompt_embeds[0:1],\n                    \"uncond\": prompt_embeds[0:1],\n                    \"structure_cond\": structure_prompt_embeds[1:2],\n                    \"appearance_cond\": appearance_prompt_embeds[1:2],\n                    \"cond\": prompt_embeds[1:2],\n                }\n                all_add_text_embeds = {\n                    \"structure_uncond\": structure_add_text_embeds[0:1],\n                    \"appearance_uncond\": appearance_add_text_embeds[0:1],\n                    \"uncond\": add_text_embeds[0:1],\n                    \"structure_cond\": structure_add_text_embeds[1:2],\n                    \"appearance_cond\": appearance_add_text_embeds[1:2],\n                    \"cond\": add_text_embeds[1:2],\n                }\n                all_time_ids = {\n                    \"structure_uncond\": add_time_ids[0:1],\n                    \"appearance_uncond\": add_time_ids[0:1],\n                    \"uncond\": add_time_ids[0:1],\n                    \"structure_cond\": add_time_ids[1:2],\n                    \"appearance_cond\": add_time_ids[1:2],\n                    \"cond\": add_time_ids[1:2],\n                }\n\n                concat_latent_model_input = batch_dict_to_tensor(all_latent_model_input, batch_order)\n                concat_prompt_embeds = batch_dict_to_tensor(all_prompt_embeds, batch_order)\n                concat_add_text_embeds = batch_dict_to_tensor(all_add_text_embeds, batch_order)\n                concat_add_time_ids = batch_dict_to_tensor(all_time_ids, batch_order)\n\n                # Predict the noise residual\n                added_cond_kwargs = {\"text_embeds\": concat_add_text_embeds, \"time_ids\": concat_add_time_ids}\n\n                concat_noise_pred = self.unet(\n                    concat_latent_model_input,\n                    t,\n                    encoder_hidden_states = concat_prompt_embeds,\n                    timestep_cond = timestep_cond,\n                    cross_attention_kwargs = self.cross_attention_kwargs,\n                    added_cond_kwargs = added_cond_kwargs,\n                ).sample\n                all_noise_pred = batch_tensor_to_dict(concat_noise_pred, batch_order)\n\n                # Classifier-free guidance, TODO: Support no CFG\n                noise_pred = all_noise_pred[\"uncond\"] +\\\n                    self.guidance_scale * (all_noise_pred[\"cond\"] - all_noise_pred[\"uncond\"])\n\n                structure_noise_pred = all_noise_pred[\"structure_cond\"]\\\n                    if \"structure_cond\" in batch_order else noise_pred\n                if \"structure_uncond\" in all_noise_pred:\n                    structure_noise_pred = all_noise_pred[\"structure_uncond\"] +\\\n                        self.structure_guidance_scale * (structure_noise_pred - all_noise_pred[\"structure_uncond\"])\n\n                appearance_noise_pred = all_noise_pred[\"appearance_cond\"]\\\n                    if \"appearance_cond\" in batch_order else noise_pred\n                if \"appearance_uncond\" in all_noise_pred:\n                    appearance_noise_pred = all_noise_pred[\"appearance_uncond\"] +\\\n                        self.appearance_guidance_scale * (appearance_noise_pred - all_noise_pred[\"appearance_uncond\"])\n\n                if self.guidance_rescale > 0.0:\n                    noise_pred = rescale_noise_cfg(\n                        noise_pred, all_noise_pred[\"cond\"], guidance_rescale=self.guidance_rescale\n                    )\n                    if \"structure_uncond\" in all_noise_pred:\n                        structure_noise_pred = rescale_noise_cfg(\n                            structure_noise_pred, all_noise_pred[\"structure_cond\"],\n                            guidance_rescale=self.guidance_rescale\n                        )\n                    if \"appearance_uncond\" in all_noise_pred:\n                        appearance_noise_pred = rescale_noise_cfg(\n                            appearance_noise_pred, all_noise_pred[\"appearance_cond\"],\n                            guidance_rescale=self.guidance_rescale\n                        )\n\n                # Compute the previous noisy sample x_t -> x_t-1\n                concat_noise_pred = torch.cat(\n                    [structure_noise_pred, appearance_noise_pred, noise_pred], dim=0,\n                )\n                concat_latents = torch.cat(\n                    [structure_latents, appearance_latents, latents], dim=0,\n                )\n                structure_latents, appearance_latents, latents = self.scheduler.step(\n                    concat_noise_pred, t, concat_latents, **extra_step_kwargs,\n                ).prev_sample.chunk(3)\n\n                if clean_structure_latents is not None:\n                    structure_latents = noise_prev(self.scheduler, t, clean_structure_latents)\n                if clean_appearance_latents is not None:\n                    appearance_latents = noise_prev(self.scheduler, t, clean_appearance_latents)\n\n                # Self-recurrence\n                for _ in range(self_recurrence_schedule[i]):\n                    if hasattr(self.scheduler, \"_step_index\"):  # For fancier schedulers\n                        self.scheduler._step_index -= 1\n\n                    t_prev = 0 if i + 1 >= num_inference_steps else timesteps[i + 1]\n                    latents = noise_t2t(self.scheduler, t_prev, t, latents)\n                    latent_model_input = torch.cat([latents] * 2)\n\n                    register_attr(self, t=t.item(), do_control=False, batch_order=[\"uncond\", \"cond\"])\n\n                    # Predict the noise residual\n                    added_cond_kwargs = {\"text_embeds\": add_text_embeds, \"time_ids\": add_time_ids}\n                    noise_pred_uncond, noise_pred_ = self.unet(\n                        latent_model_input,\n                        t,\n                        encoder_hidden_states = prompt_embeds,\n                        timestep_cond = timestep_cond,\n                        cross_attention_kwargs = self.cross_attention_kwargs,\n                        added_cond_kwargs = added_cond_kwargs,\n                    ).sample.chunk(2)\n                    noise_pred = noise_pred_uncond + self.guidance_scale * (noise_pred_ - noise_pred_uncond)\n\n                    if self.guidance_rescale > 0.0:\n                        noise_pred = rescale_noise_cfg(noise_pred, noise_pred_, guidance_rescale=self.guidance_rescale)\n\n                    latents = self.scheduler.step(noise_pred, t, latents, **extra_step_kwargs).prev_sample\n\n                # Callbacks\n                if callback_on_step_end is not None:\n                    callback_kwargs = {}\n                    for k in callback_on_step_end_tensor_inputs:\n                        callback_kwargs[k] = locals()[k]\n                    callback_outputs = callback_on_step_end(self, i, t, callback_kwargs)\n\n                    latents = callback_outputs.pop(\"latents\", latents)\n                    prompt_embeds = callback_outputs.pop(\"prompt_embeds\", prompt_embeds)\n                    negative_prompt_embeds = callback_outputs.pop(\"negative_prompt_embeds\", negative_prompt_embeds)\n                    add_text_embeds = callback_outputs.pop(\"add_text_embeds\", add_text_embeds)\n                    negative_pooled_prompt_embeds = callback_outputs.pop(\"negative_pooled_prompt_embeds\", negative_pooled_prompt_embeds)\n                    add_time_ids = callback_outputs.pop(\"add_time_ids\", add_time_ids)\n                    # add_neg_time_ids = callback_outputs.pop(\"add_neg_time_ids\", add_neg_time_ids)\n\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n                    if callback is not None and i % callback_steps == 0:\n                        step_idx = i // getattr(self.scheduler, \"order\", 1)\n                        callback(step_idx, t, latents)\n\n        # \"Reconstruction\"\n        if clean_structure_latents is not None:\n            structure_latents = clean_structure_latents\n        if clean_appearance_latents is not None:\n            appearance_latents = clean_appearance_latents\n\n        # For passing important information onto the refiner\n        self.refiner_args = {\"latents\": latents.detach(), \"prompt\": prompt, \"negative_prompt\": negative_prompt}\n\n        if output_type != \"latent\":\n            # Make sure the VAE is in float32 mode, as it overflows in float16\n            if self.vae.config.force_upcast:\n                self.upcast_vae()\n                vae_dtype = next(iter(self.vae.post_quant_conv.parameters())).dtype\n                latents = latents.to(vae_dtype)\n                structure_latents = structure_latents.to(vae_dtype)\n                appearance_latents = appearance_latents.to(vae_dtype)\n\n            image = self.vae.decode(latents / self.vae.config.scaling_factor, return_dict=False)[0]\n            image = self.image_processor.postprocess(image, output_type=output_type)\n            if decode_structure:\n                structure = self.vae.decode(structure_latents / self.vae.config.scaling_factor, return_dict=False)[0]\n                structure = self.image_processor.postprocess(structure, output_type=output_type)\n            else:\n                structure = structure_latents\n            if decode_appearance:\n                appearance = self.vae.decode(appearance_latents / self.vae.config.scaling_factor, return_dict=False)[0]\n                appearance = self.image_processor.postprocess(appearance, output_type=output_type)\n            else:\n                appearance = appearance_latents\n\n            # Cast back to fp16 if needed\n            if self.vae.config.force_upcast:\n                self.vae.to(dtype=torch.float16)\n\n        else:\n            # combined = torch.cat([latents, structure_latents, appearance_latents], dim=0)\n            # return CtrlXStableDiffusionXLPipelineOutput(images=combined)\n            return CtrlXStableDiffusionXLPipelineOutput(images=latents, structures=structure_latents, appearances=appearance_latents)\n\n        # Offload all models\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return (image, structure, appearance)\n\n        return CtrlXStableDiffusionXLPipelineOutput(images=image, structures=structure, appearances=appearance)\n"
  },
  {
    "path": "scripts/ctrlx/features.py",
    "content": "import torch.nn.functional as F\nfrom .utils import batch_dict_to_tensor, batch_tensor_to_dict\n\n\ndef get_schedule(timesteps, schedule):\n    end = round(len(timesteps) * schedule)\n    timesteps = timesteps[:end]\n    return timesteps\n\n\ndef get_elem(l, i, default=0.0):\n    if i >= len(l):\n        return default\n    return l[i]\n\n\ndef pad_list(l_1, l_2, pad=0.0):\n    max_len = max(len(l_1), len(l_2))\n    l_1 = l_1 + [pad] * (max_len - len(l_1))\n    l_2 = l_2 + [pad] * (max_len - len(l_2))\n    return l_1, l_2\n\n\ndef normalize(x, dim):\n    x_mean = x.mean(dim=dim, keepdim=True)\n    x_std = x.std(dim=dim, keepdim=True)\n    x_normalized = (x - x_mean) / x_std\n    return x_normalized\n\n\n# https://pytorch.org/docs/stable/generated/torch.nn.functional.scaled_dot_product_attention.html\ndef appearance_mean_std(q_c_normed, k_s_normed, v_s):  # c: content, s: style\n    q_c = q_c_normed  # q_c and k_s must be projected from normalized features\n    k_s = k_s_normed\n    mean = F.scaled_dot_product_attention(q_c, k_s, v_s)  # Use scaled_dot_product_attention for efficiency\n    std = (F.scaled_dot_product_attention(q_c, k_s, v_s.square()) - mean.square()).relu().sqrt()\n\n    return mean, std\n\n\ndef feature_injection(features, batch_order):\n    assert features.shape[0] % len(batch_order) == 0\n    features_dict = batch_tensor_to_dict(features, batch_order)\n    features_dict[\"cond\"] = features_dict[\"structure_cond\"]\n    features = batch_dict_to_tensor(features_dict, batch_order)\n    return features\n\n\ndef appearance_transfer(features, q_normed, k_normed, batch_order, v=None, reshape_fn=None):\n    assert features.shape[0] % len(batch_order) == 0\n\n    features_dict = batch_tensor_to_dict(features, batch_order)\n    q_normed_dict = batch_tensor_to_dict(q_normed, batch_order)\n    k_normed_dict = batch_tensor_to_dict(k_normed, batch_order)\n    v_dict = features_dict\n    if v is not None:\n        v_dict = batch_tensor_to_dict(v, batch_order)\n\n    mean_cond, std_cond = appearance_mean_std(\n        q_normed_dict[\"cond\"], k_normed_dict[\"appearance_cond\"], v_dict[\"appearance_cond\"],\n    )\n\n    if reshape_fn is not None:\n        mean_cond = reshape_fn(mean_cond)\n        std_cond = reshape_fn(std_cond)\n\n    features_dict[\"cond\"] = std_cond * normalize(features_dict[\"cond\"], dim=-2) + mean_cond\n\n    features = batch_dict_to_tensor(features_dict, batch_order)\n    return features\n"
  },
  {
    "path": "scripts/ctrlx/media.py",
    "content": "import numpy as np\nimport torch\nimport torchvision.transforms.functional as vF\nimport PIL\n\n\nJPEG_QUALITY = 95\n\n\ndef preprocess(image, processor, **kwargs):\n    if isinstance(image, PIL.Image.Image):\n        pass\n    elif isinstance(image, np.ndarray):\n        image = PIL.Image.fromarray(image)\n    elif isinstance(image, torch.Tensor):\n        image = vF.to_pil_image(image)\n    else:\n        raise TypeError(f\"Image must be of type PIL.Image, np.ndarray, or torch.Tensor, got {type(image)} instead.\")\n\n    image = processor.preprocess(image, **kwargs)\n    return image\n"
  },
  {
    "path": "scripts/ctrlx/sdxl.py",
    "content": "from types import MethodType\nfrom typing import Optional\nfrom diffusers.models.attention_processor import Attention\nimport torch\nimport torch.nn.functional as F\nfrom .features import feature_injection, normalize, appearance_transfer, get_elem, get_schedule\n\n\ndef get_control_config(structure_schedule, appearance_schedule):\n    s = structure_schedule\n    a = appearance_schedule\n\n    control_config =\\\nf\"\"\"control_schedule:\n    #       structure_conv   structure_attn   appearance_attn  conv/attn\n    encoder:                                                # (num layers)\n        0: [[             ], [             ], [             ]]  # 2/0\n        1: [[             ], [             ], [{a}, {a}     ]]  # 2/2\n        2: [[             ], [             ], [{a}, {a}     ]]  # 2/2\n    middle: [[            ], [             ], [             ]]  # 2/1\n    decoder:\n        0: [[{s}          ], [{s}, {s}, {s}], [0.0, {a}, {a}]]  # 3/3\n        1: [[             ], [             ], [{a}, {a}     ]]  # 3/3\n        2: [[             ], [             ], [             ]]  # 3/0\n\ncontrol_target:\n    - [output_tensor]  # structure_conv   choices: {{hidden_states, output_tensor}}\n    - [query, key]     # structure_attn   choices: {{query, key, value}}\n    - [before]         # appearance_attn  choices: {{before, value, after}}\n\nself_recurrence_schedule:\n    - [0.1, 0.5, 2]  # format: [start, end, num_recurrence]\"\"\"\n\n    return control_config\n\n\ndef convolution_forward(  # From <class 'diffusers.models.resnet.ResnetBlock2D'>, forward (diffusers==0.28.0)\n    self,\n    input_tensor: torch.Tensor,\n    temb: torch.Tensor,\n    *args, # pylint: disable=unused-argument\n    **kwargs, # pylint: disable=unused-argument\n) -> torch.Tensor:\n    do_structure_control = self.do_control and self.t in self.structure_schedule\n\n    hidden_states = input_tensor\n\n    hidden_states = self.norm1(hidden_states)\n    hidden_states = self.nonlinearity(hidden_states)\n\n    if self.upsample is not None:\n        # upsample_nearest_nhwc fails with large batch sizes. see https://github.com/huggingface/diffusers/issues/984\n        if hidden_states.shape[0] >= 64:\n            input_tensor = input_tensor.contiguous()\n            hidden_states = hidden_states.contiguous()\n        input_tensor = self.upsample(input_tensor)\n        hidden_states = self.upsample(hidden_states)\n    elif self.downsample is not None:\n        input_tensor = self.downsample(input_tensor)\n        hidden_states = self.downsample(hidden_states)\n\n    hidden_states = self.conv1(hidden_states)\n\n    if self.time_emb_proj is not None:\n        if not self.skip_time_act:\n            temb = self.nonlinearity(temb)\n        temb = self.time_emb_proj(temb)[:, :, None, None]\n\n    if self.time_embedding_norm == \"default\":\n        if temb is not None:\n            hidden_states = hidden_states + temb\n        hidden_states = self.norm2(hidden_states)\n    elif self.time_embedding_norm == \"scale_shift\":\n        if temb is None:\n            raise ValueError(\n                f\" `temb` should not be None when `time_embedding_norm` is {self.time_embedding_norm}\"\n            )\n        time_scale, time_shift = torch.chunk(temb, 2, dim=1)\n        hidden_states = self.norm2(hidden_states)\n        hidden_states = hidden_states * (1 + time_scale) + time_shift\n    else:\n        hidden_states = self.norm2(hidden_states)\n\n    hidden_states = self.nonlinearity(hidden_states)\n\n    hidden_states = self.dropout(hidden_states)\n    hidden_states = self.conv2(hidden_states)\n\n    # Feature injection and AdaIN (hidden_states)\n    if do_structure_control and \"hidden_states\" in self.structure_target:\n        hidden_states = feature_injection(hidden_states, batch_order=self.batch_order)\n\n    if self.conv_shortcut is not None:\n        input_tensor = self.conv_shortcut(input_tensor)\n\n    output_tensor = (input_tensor + hidden_states) / self.output_scale_factor\n\n    # Feature injection and AdaIN (output_tensor)\n    if do_structure_control and \"output_tensor\" in self.structure_target:\n        output_tensor = feature_injection(output_tensor, batch_order=self.batch_order)\n\n    return output_tensor\n\n\nclass AttnProcessor2_0:  # From <class 'diffusers.models.attention_processor.AttnProcessor2_0'> (diffusers==0.28.0)\n\n    def __init__(self):\n        if not hasattr(F, \"scaled_dot_product_attention\"):\n            raise ImportError(\"AttnProcessor2_0 requires PyTorch 2.0, to use it, please upgrade PyTorch to 2.0.\")\n\n    def __call__( # pylint: disable=keyword-arg-before-vararg\n        self,\n        attn: Attention,\n        hidden_states: torch.FloatTensor,\n        encoder_hidden_states: Optional[torch.FloatTensor] = None,\n        attention_mask: Optional[torch.FloatTensor] = None,\n        temb: Optional[torch.FloatTensor] = None,\n        *args,\n        **kwargs,\n    ) -> torch.FloatTensor:\n        do_structure_control = attn.do_control and attn.t in attn.structure_schedule\n        do_appearance_control = attn.do_control and attn.t in attn.appearance_schedule\n\n        residual = hidden_states\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n\n        batch_size, sequence_length, _ = (\n            hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape\n        )\n\n        if attention_mask is not None:\n            attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n            # scaled_dot_product_attention expects attention_mask shape to be\n            # (batch, heads, source_length, target_length)\n            attention_mask = attention_mask.view(batch_size, attn.heads, -1, attention_mask.shape[-1])\n\n        if attn.group_norm is not None:\n            hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2)\n\n        no_encoder_hidden_states = encoder_hidden_states is None\n        if no_encoder_hidden_states:\n            encoder_hidden_states = hidden_states\n        elif attn.norm_cross:\n            encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states)\n\n        if do_appearance_control:  # Assume we only have this for self attention\n            hidden_states_normed = normalize(hidden_states, dim=-2)  # B H D C\n            encoder_hidden_states_normed = normalize(encoder_hidden_states, dim=-2)\n\n            query_normed = attn.to_q(hidden_states_normed)\n            key_normed = attn.to_k(encoder_hidden_states_normed)\n\n            inner_dim = key_normed.shape[-1]\n            head_dim = inner_dim // attn.heads\n            query_normed = query_normed.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n            key_normed = key_normed.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n            # Match query and key injection with structure injection (if injection is happening this layer)\n            if do_structure_control:\n                if \"query\" in attn.structure_target:\n                    query_normed = feature_injection(query_normed, batch_order=attn.batch_order)\n                if \"key\" in attn.structure_target:\n                    key_normed = feature_injection(key_normed, batch_order=attn.batch_order)\n\n        # Appearance transfer (before)\n        if do_appearance_control and \"before\" in attn.appearance_target:\n            hidden_states = hidden_states.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n            hidden_states = appearance_transfer(hidden_states, query_normed, key_normed, batch_order=attn.batch_order)\n            hidden_states = hidden_states.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n\n            if no_encoder_hidden_states:\n                encoder_hidden_states = hidden_states\n            elif attn.norm_cross:\n                encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states)\n\n        query = attn.to_q(hidden_states)\n\n        key = attn.to_k(encoder_hidden_states)\n        value = attn.to_v(encoder_hidden_states)\n\n        inner_dim = key.shape[-1]\n        head_dim = inner_dim // attn.heads\n\n        query = query.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        key = key.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        value = value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        # Feature injection (query, key, and/or value)\n        if do_structure_control:\n            if \"query\" in attn.structure_target:\n                query = feature_injection(query, batch_order=attn.batch_order)\n            if \"key\" in attn.structure_target:\n                key = feature_injection(key, batch_order=attn.batch_order)\n            if \"value\" in attn.structure_target:\n                value = feature_injection(value, batch_order=attn.batch_order)\n\n        # Appearance transfer (value)\n        if do_appearance_control and \"value\" in attn.appearance_target:\n            value = appearance_transfer(value, query_normed, key_normed, batch_order=attn.batch_order)\n\n        # The output of sdp = (batch, num_heads, seq_len, head_dim)\n        hidden_states = F.scaled_dot_product_attention(\n            query, key, value, attn_mask=attention_mask, dropout_p=0.0, is_causal=False\n        )\n\n        # Appearance transfer (after)\n        if do_appearance_control and \"after\" in attn.appearance_target:\n            hidden_states = appearance_transfer(hidden_states, query_normed, key_normed, batch_order=attn.batch_order)\n\n        hidden_states = hidden_states.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n        hidden_states = hidden_states.to(query.dtype)\n\n        # Linear projection\n        hidden_states = attn.to_out[0](hidden_states, *args)\n        # Dropout\n        hidden_states = attn.to_out[1](hidden_states)\n\n        if input_ndim == 4:\n            hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n\n\ndef register_control(\n    model,\n    timesteps,\n    control_schedule,  # structure_conv, structure_attn, appearance_attn\n    control_target = [[\"output_tensor\"], [\"query\", \"key\"], [\"before\"]],\n):\n    # Assume timesteps in reverse order (T -> 0)\n    for block_type in [\"encoder\", \"decoder\", \"middle\"]:\n        blocks = {\n            \"encoder\": model.unet.down_blocks,\n            \"decoder\": model.unet.up_blocks,\n            \"middle\": [model.unet.mid_block],\n        }[block_type]\n\n        control_schedule_block = control_schedule[block_type]\n        if block_type == \"middle\":\n            control_schedule_block = [control_schedule_block]\n\n        for layer in range(len(control_schedule_block)):\n            # Convolution\n            num_blocks = len(blocks[layer].resnets) if hasattr(blocks[layer], \"resnets\") else 0\n            for block in range(num_blocks):\n                convolution = blocks[layer].resnets[block]\n                convolution.structure_target = control_target[0]\n                convolution.structure_schedule = get_schedule(\n                    timesteps, get_elem(control_schedule_block[layer][0], block)\n                )\n                convolution.forward = MethodType(convolution_forward, convolution)\n\n            # Self-attention\n            num_blocks = len(blocks[layer].attentions) if hasattr(blocks[layer], \"attentions\") else 0\n            for block in range(num_blocks):\n                for transformer_block in blocks[layer].attentions[block].transformer_blocks:\n                    attention = transformer_block.attn1\n                    attention.structure_target = control_target[1]\n                    attention.structure_schedule = get_schedule(\n                        timesteps, get_elem(control_schedule_block[layer][1], block)\n                    )\n                    attention.appearance_target = control_target[2]\n                    attention.appearance_schedule = get_schedule(\n                        timesteps, get_elem(control_schedule_block[layer][2], block)\n                    )\n                    attention.processor = AttnProcessor2_0()\n\n\ndef register_attr(model, t, do_control, batch_order):\n    for layer_type in [\"encoder\", \"decoder\", \"middle\"]:\n        blocks = {\"encoder\": model.unet.down_blocks, \"decoder\": model.unet.up_blocks,\n                  \"middle\": [model.unet.mid_block]}[layer_type]\n        for layer in blocks:\n            # Convolution\n            for module in layer.resnets:\n                module.t = t\n                module.do_control = do_control\n                module.batch_order = batch_order\n            # Self-attention\n            if hasattr(layer, \"attentions\"):\n                for block in layer.attentions:\n                    for module in block.transformer_blocks:\n                        module.attn1.t = t\n                        module.attn1.do_control = do_control\n                        module.attn1.batch_order = batch_order\n"
  },
  {
    "path": "scripts/ctrlx/utils.py",
    "content": "import random\nfrom os import environ\nimport numpy as np\nimport torch\n\n\nJPEG_QUALITY = 100\n\n\ndef seed_everything(seed):\n    random.seed(seed)\n    environ[\"PYTHONHASHSEED\"] = str(seed)\n    np.random.seed(seed)\n    torch.manual_seed(seed)\n    torch.backends.cudnn.deterministic = True\n    torch.backends.cudnn.benchmark = False\n\n\ndef exists(x):\n    return x is not None\n\n\ndef get(x, default):\n    if exists(x):\n        return x\n    return default\n\n\ndef get_self_recurrence_schedule(schedule, num_inference_steps):\n    self_recurrence_schedule = [0] * num_inference_steps\n    for schedule_current in reversed(schedule):\n        if schedule_current is None or len(schedule_current) == 0:\n            continue\n        [start, end, repeat] = schedule_current\n        start_i = round(num_inference_steps * start)\n        end_i = round(num_inference_steps * end)\n        for i in range(start_i, end_i):\n            self_recurrence_schedule[i] = repeat\n    return self_recurrence_schedule\n\n\ndef batch_dict_to_tensor(batch_dict, batch_order):\n    batch_tensor = []\n    for batch_type in batch_order:\n        batch_tensor.append(batch_dict[batch_type])\n    batch_tensor = torch.cat(batch_tensor, dim=0)\n    return batch_tensor\n\n\ndef batch_tensor_to_dict(batch_tensor, batch_order):\n    batch_tensor_chunk = batch_tensor.chunk(len(batch_order))\n    batch_dict = {}\n    for i, batch_type in enumerate(batch_order):\n        batch_dict[batch_type] = batch_tensor_chunk[i]\n    return batch_dict\n\n\ndef noise_prev(scheduler, timestep, x_0, noise=None):\n    if scheduler.num_inference_steps is None:\n        raise ValueError(\n            \"Number of inference steps is 'None', you need to run 'set_timesteps' after creating the scheduler\"\n        )\n\n    if noise is None:\n        noise = torch.randn_like(x_0).to(x_0)\n\n    # From DDIMScheduler step function (hopefully this works)\n    timestep_i = (scheduler.timesteps == timestep).nonzero(as_tuple=True)[0][0].item()\n    if timestep_i + 1 >= scheduler.timesteps.shape[0]:  # We are at t = 0 (ish)\n        return x_0\n    prev_timestep = scheduler.timesteps[timestep_i + 1:timestep_i + 2]  # Make sure t is not 0-dim\n\n    x_t_prev = scheduler.add_noise(x_0, noise, prev_timestep)\n    return x_t_prev\n\n\ndef noise_t2t(scheduler, timestep, timestep_target, x_t, noise=None):\n    assert timestep_target >= timestep\n    if noise is None:\n        noise = torch.randn_like(x_t).to(x_t)\n\n    alphas_cumprod = scheduler.alphas_cumprod.to(device=x_t.device, dtype=x_t.dtype)\n\n    timestep = timestep.to(torch.long)\n    timestep_target = timestep_target.to(torch.long)\n\n    alpha_prod_t = alphas_cumprod[timestep]\n    alpha_prod_tt = alphas_cumprod[timestep_target]\n    alpha_prod = alpha_prod_tt / alpha_prod_t\n\n    sqrt_alpha_prod = (alpha_prod ** 0.5).flatten()\n    while len(sqrt_alpha_prod.shape) < len(x_t.shape):\n        sqrt_alpha_prod = sqrt_alpha_prod.unsqueeze(-1)\n\n    sqrt_one_minus_alpha_prod = ((1 - alpha_prod) ** 0.5).flatten()\n    while len(sqrt_one_minus_alpha_prod.shape) < len(x_t.shape):\n        sqrt_one_minus_alpha_prod = sqrt_one_minus_alpha_prod.unsqueeze(-1)\n\n    x_tt = sqrt_alpha_prod * x_t + sqrt_one_minus_alpha_prod * noise\n    return x_tt\n"
  },
  {
    "path": "scripts/ctrlx_ext.py",
    "content": "# https://github.com/genforce/ctrl-x\n\nimport gradio as gr\nfrom diffusers import StableDiffusionXLPipeline\nfrom modules import shared, scripts_manager, processing, processing_helpers, sd_models, devices\n\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return 'Ctrl-X: Controlling Structure and Appearance'\n\n    def show(self, is_img2img):\n        return True\n\n    def ui(self, _is_img2img):\n        with gr.Row():\n            gr.HTML('<a href=\"https://github.com/genforce/ctrl-x\">&nbsp Ctrl-X: Controlling Structure and Appearance</a><br>')\n        with gr.Accordion(label='Structure', open=True):\n            with gr.Row():\n                struct_prompt = gr.Textbox(label='Prompt', value='')\n            with gr.Row():\n                struct_strength = gr.Slider(label='Strength', value=0.5, minimum=0.0, maximum=1.0, step=0.05)\n                struct_guidance = gr.Slider(label='Guidance', value=5.0, minimum=0.0, maximum=14.0, step=0.05)\n            with gr.Row():\n                struct_image = gr.Image(label='Image', type='pil')\n        with gr.Accordion(label='Appearance', open=True):\n            with gr.Row():\n                appear_prompt = gr.Textbox(label='Prompt', value='')\n            with gr.Row():\n                appear_strength = gr.Slider(label='Strength', value=0.5, minimum=0.0, maximum=1.0, step=0.05)\n                appear_guidance = gr.Slider(label='Guidance', value=5.0, minimum=0.0, maximum=14.0, step=0.05)\n            with gr.Row():\n                appear_image = gr.Image(label='Image', type='pil')\n        return struct_prompt, struct_strength, struct_guidance, struct_image, appear_prompt, appear_strength, appear_guidance, appear_image\n\n    def restore(self):\n        del shared.sd_model.restore_pipeline\n        shared.sd_model = sd_models.switch_pipe(StableDiffusionXLPipeline, shared.sd_model, force=True)\n\n    def run(self, p: processing.StableDiffusionProcessing, struct_prompt, struct_strength, struct_guidance, struct_image, appear_prompt, appear_strength, appear_guidance, appear_image): # pylint: disable=arguments-differ\n        c = shared.sd_model.__class__.__name__ if shared.sd_loaded else ''\n        if shared.sd_model_type != 'sdxl':\n            shared.log.warning(f'Ctrl-X: pipeline={c} required=StableDiffusionXLPipeline')\n            return None\n\n        import yaml\n        from scripts.ctrlx import CtrlXStableDiffusionXLPipeline # pylint: disable=no-name-in-module\n        from scripts.ctrlx.sdxl import get_control_config, register_control # pylint: disable=no-name-in-module\n        from scripts.ctrlx.utils import get_self_recurrence_schedule # pylint: disable=no-name-in-module\n\n        orig_prompt_attention = shared.opts.prompt_attention\n        shared.opts.data['prompt_attention'] = 'fixed'\n        shared.sd_model = sd_models.switch_pipe(CtrlXStableDiffusionXLPipeline, shared.sd_model)\n        shared.sd_model.restore_pipeline = self.restore\n\n        # calculate ctrx+x schedule\n        if p.sampler_name not in ['DDIM', 'Euler', 'Euler a', 'DPM++ 1S', 'DDPM', 'Euler SGM', 'LCM', 'TCD']:\n            shared.log.warning(f'Ctrl-X: sampler={p.sampler_name} override=\"Euler a\" supported=[Euler, Euler a, Euler SGM, DDIM, DDPM, , LCM, TCD]')\n            p.sampler_name = 'Euler a'\n        processing_helpers.update_sampler(p, shared.sd_model)\n        shared.sd_model.scheduler.set_timesteps(p.steps, device=devices.device)\n        timesteps = shared.sd_model.scheduler.timesteps\n        control_config = get_control_config(structure_schedule=struct_strength, appearance_schedule=appear_strength)\n        config = yaml.safe_load(control_config)\n        register_control(\n            model=shared.sd_model,\n            timesteps=timesteps,\n            control_schedule=config['control_schedule'],\n            control_target=config['control_target'],\n        )\n\n        # set args\n        if struct_image is not None:\n            p.task_args['structure_prompt'] = struct_prompt\n            p.task_args['structure_image'] = struct_image\n            p.task_args['structure_guidance_scale'] = struct_guidance\n        if appear_image is not None:\n            p.task_args['appearance_prompt'] = appear_prompt\n            p.task_args['appearance_image'] = appear_image\n            p.task_args['appearance_guidance_scale'] = appear_guidance\n        elif hasattr(p, 'init_images') and p.init_images is not None and len(p.init_images) > 0:\n            p.task_args['appearance_image'] = p.init_images[0]\n            p.init_images = None\n        p.task_args['control_schedule'] = config['control_schedule']\n        p.task_args['self_recurrence_schedule'] = get_self_recurrence_schedule(config['self_recurrence_schedule'], p.steps)\n        is_struct = p.task_args.get('structure_image') is not None\n        is_appear = p.task_args.get('appearance_image') is not None\n        shared.log.info(f'Ctrl-X: structure={struct_strength if is_struct else None} appearance={appear_strength if is_appear else None}')\n        shared.log.debug(f'Ctrl-X: config={control_config} args={p.task_args}')\n\n        # process\n        processed: processing.Processed = processing.process_images(p)\n\n        # restore and return\n        shared.opts.data['prompt_attention'] = orig_prompt_attention\n        shared.sd_model = sd_models.switch_pipe(StableDiffusionXLPipeline, shared.sd_model, force=True)\n        return processed\n"
  },
  {
    "path": "scripts/custom_code.py",
    "content": "import copy\nimport ast\nimport gradio as gr\nfrom modules import scripts_manager\nfrom modules.processing import Processed, get_processed\nfrom modules.shared import opts, cmd_opts, state # pylint: disable=unused-import\n\n\ndef convertExpr2Expression(expr):\n    expr.lineno = 0\n    expr.col_offset = 0\n    result = ast.Expression(expr.value, lineno=0, col_offset = 0)\n\n    return result\n\n\ndef exec_with_return(code, module):\n    \"\"\"\n    like exec() but can return values\n    https://stackoverflow.com/a/52361938/5862977\n    \"\"\"\n    code_ast = ast.parse(code)\n\n    init_ast = copy.deepcopy(code_ast)\n    init_ast.body = code_ast.body[:-1]\n\n    last_ast = copy.deepcopy(code_ast)\n    last_ast.body = code_ast.body[-1:]\n\n    exec(compile(init_ast, \"<ast>\", \"exec\"), module.__dict__) # pylint: disable=exec-used\n    if type(last_ast.body[0]) == ast.Expr:\n        return eval(compile(convertExpr2Expression(last_ast.body[0]), \"<ast>\", \"eval\"), module.__dict__) # pylint: disable=eval-used\n    else:\n        exec(compile(last_ast, \"<ast>\", \"exec\"), module.__dict__) # pylint: disable=exec-used\n    return None\n\n\nclass Script(scripts_manager.Script):\n\n    def title(self):\n        return \"Custom code\"\n\n    def show(self, is_img2img):\n        return cmd_opts.allow_code\n\n    def ui(self, is_img2img):\n        example = \"\"\"from modules.processing import process_images\n\np.width = 768\np.height = 768\np.batch_size = 2\np.steps = 10\n\nreturn process_images(p)\n\"\"\"\n\n\n        code = gr.Code(value=example, language=\"python\", label=\"Python code\", elem_id=self.elem_id(\"code\"))\n        indent_level = gr.Number(label='Indent level', value=2, precision=0, elem_id=self.elem_id(\"indent_level\"))\n\n        return [code, indent_level]\n\n    def run(self, p, code, indent_level): # pylint: disable=arguments-differ\n        assert cmd_opts.allow_code, '--allow-code option must be enabled'\n\n        display_result_data = [[], -1, \"\"]\n\n        def display(imgs, s=display_result_data[1], i=display_result_data[2]):\n            display_result_data[0] = imgs\n            display_result_data[1] = s\n            display_result_data[2] = i\n\n        from types import ModuleType\n        module = ModuleType(\"testmodule\")\n        module.__dict__.update(globals())\n        module.p = p\n        module.display = display\n\n        indent = \" \" * indent_level\n        indented = code.replace('\\n', f\"\\n{indent}\")\n        body = f\"\"\"def __webuitemp__():\n{indent}{indented}\n__webuitemp__()\"\"\"\n\n        result = exec_with_return(body, module)\n\n        if isinstance(result, Processed):\n            return result\n\n        return get_processed(p, *display_result_data)\n"
  },
  {
    "path": "scripts/daam/__init__.py",
    "content": "from .experiment import *\nfrom .heatmap import *\nfrom .hook import *\nfrom .utils import *\nfrom .trace import *\n"
  },
  {
    "path": "scripts/daam/evaluate.py",
    "content": "from collections import defaultdict\nfrom typing import List, Union\n\nfrom scipy.optimize import linear_sum_assignment\nimport PIL.Image as Image\nimport numpy as np\nimport torch\nimport torch.nn.functional as F\n\n\n__all__ = ['compute_iou', 'MeanEvaluator', 'load_mask', 'compute_ioa']\n\n\ndef compute_iou(a: torch.Tensor, b: torch.Tensor) -> float:\n    if a.shape[0] != b.shape[0]:\n        a = F.interpolate(a.unsqueeze(0).unsqueeze(0).float(), size=b.shape, mode='bicubic').squeeze()\n        a[a < 1] = 0\n        a[a >= 1] = 1\n\n    intersection = (a * b).sum()\n    union = a.sum() + b.sum() - intersection\n\n    return (intersection / (union + 1e-8)).item()\n\n\ndef compute_ioa(a: torch.Tensor, b: torch.Tensor) -> float:\n    if a.shape[0] != b.shape[0]:\n        a = F.interpolate(a.unsqueeze(0).unsqueeze(0).float(), size=b.shape, mode='bicubic').squeeze()\n        a[a < 1] = 0\n        a[a >= 1] = 1\n\n    intersection = (a * b).sum()\n    area = a.sum()\n\n    return (intersection / (area + 1e-8)).item()\n\n\ndef load_mask(path: str) -> torch.Tensor:\n    mask = np.array(Image.open(path))\n    mask = torch.from_numpy(mask).float()[:, :, 3]  # use alpha channel\n    mask = (mask > 0).float()\n\n    return mask\n\n\nclass UnsupervisedEvaluator:\n    def __init__(self, name: str = 'UnsupervisedEvaluator'):\n        self.name = name\n        self.ious = defaultdict(list)\n        self.num_samples = 0\n\n    def log_iou(self, preds: Union[torch.Tensor, List[torch.Tensor]], truth: torch.Tensor, gt_idx: int = 0, pred_idx: int = 0):\n        if not isinstance(preds, list):\n            preds = [preds]\n\n        iou = max(compute_iou(pred, truth) for pred in preds)\n        self.ious[gt_idx].append((pred_idx, iou))\n\n    @property\n    def mean_iou(self) -> float:\n        n = max(max(self.ious), max([y[0] for x in self.ious.values() for y in x])) + 1\n        iou_matrix = np.zeros((n, n))\n        count_matrix = np.zeros((n, n))\n\n        for gt_idx, ious in self.ious.items():\n            for pred_idx, iou in ious:\n                iou_matrix[gt_idx, pred_idx] += iou\n                count_matrix[gt_idx, pred_idx] += 1\n\n        row_ind, col_ind = linear_sum_assignment(iou_matrix, maximize=True)\n        return iou_matrix[row_ind, col_ind].sum() / count_matrix[row_ind, col_ind].sum()\n\n    def increment(self):\n        self.num_samples += 1\n\n    def __len__(self) -> int:\n        return self.num_samples\n\n    def __str__(self):\n        return f'{self.name}<{self.mean_iou:.4f} (mIoU) {len(self)} samples>'\n\n\nclass MeanEvaluator:\n    def __init__(self, name: str = 'MeanEvaluator'):\n        self.ious: List[float] = []\n        self.intensities: List[float] = []\n        self.name = name\n\n    def log_iou(self, preds: Union[torch.Tensor, List[torch.Tensor]], truth: torch.Tensor):\n        if not isinstance(preds, list):\n            preds = [preds]\n\n        self.ious.append(max(compute_iou(pred, truth) for pred in preds))\n        return self\n\n    def log_intensity(self, pred: torch.Tensor):\n        self.intensities.append(pred.mean().item())\n        return self\n\n    @property\n    def mean_iou(self) -> float:\n        return np.mean(self.ious)\n\n    @property\n    def mean_intensity(self) -> float:\n        return np.mean(self.intensities)\n\n    @property\n    def ci95_miou(self) -> float:\n        return 1.96 * np.std(self.ious) / np.sqrt(len(self.ious))\n\n    def __len__(self) -> int:\n        return max(len(self.ious), len(self.intensities))\n\n    def __str__(self):\n        return f'{self.name}<{self.mean_iou:.4f} (±{self.ci95_miou:.3f} mIoU) {self.mean_intensity:.4f} (mInt) {len(self)} samples>'\n\n\nif __name__ == '__main__':\n    mask = load_mask('truth/output/452/sink.gt.png')\n\n    print(MeanEvaluator().log_iou(mask, mask))\n"
  },
  {
    "path": "scripts/daam/experiment.py",
    "content": "from pathlib import Path\nfrom typing import List, Optional, Dict, Any, Union\nfrom dataclasses import dataclass\nimport json\n\nfrom transformers import PreTrainedTokenizer, AutoTokenizer\nimport PIL.Image\nimport numpy as np\nimport torch\n\nfrom .utils import auto_autocast\nfrom .evaluate import load_mask\n\n\n__all__ = ['GenerationExperiment', 'COCO80_LABELS', 'COCOSTUFF27_LABELS', 'COCO80_INDICES', 'build_word_list_coco80']\n\n\nCOCO80_LABELS: List[str] = [\n    'person', 'bicycle', 'car', 'motorcycle', 'airplane', 'bus', 'train', 'truck', 'boat', 'traffic light',\n    'fire hydrant', 'stop sign', 'parking meter', 'bench', 'bird', 'cat', 'dog', 'horse', 'sheep', 'cow',\n    'elephant', 'bear', 'zebra', 'giraffe', 'backpack', 'umbrella', 'handbag', 'tie', 'suitcase', 'frisbee',\n    'skis', 'snowboard', 'sports ball', 'kite', 'baseball bat', 'baseball glove', 'skateboard', 'surfboard',\n    'tennis racket', 'bottle', 'wine glass', 'cup', 'fork', 'knife', 'spoon', 'bowl', 'banana', 'apple',\n    'sandwich', 'orange', 'broccoli', 'carrot', 'hot dog', 'pizza', 'donut', 'cake', 'chair', 'couch',\n    'potted plant', 'bed', 'dining table', 'toilet', 'tv', 'laptop', 'mouse', 'remote', 'keyboard', 'cell phone',\n    'microwave', 'oven', 'toaster', 'sink', 'refrigerator', 'book', 'clock', 'vase', 'scissors', 'teddy bear',\n    'hair drier', 'toothbrush'\n]\n\nCOCO80_INDICES: Dict[str, int] = {x: i for i, x in enumerate(COCO80_LABELS)}\n\nUNUSED_LABELS: List[str] = [f'__unused_{i}__' for i in range(1, 200)]\n\nCOCOSTUFF27_LABELS: List[str] = [\n    'electronic', 'appliance', 'food', 'furniture', 'indoor', 'kitchen', 'accessory', 'animal', 'outdoor', 'person',\n    'sports', 'vehicle', 'ceiling', 'floor', 'food', 'furniture', 'rawmaterial', 'textile', 'wall', 'window',\n    'building', 'ground', 'plant', 'sky', 'solid', 'structural', 'water'\n]\n\nCOCO80_ONTOLOGY = {\n    'two-wheeled vehicle': ['bicycle', 'motorcycle'],\n    'vehicle': ['two-wheeled vehicle', 'four-wheeled vehicle'],\n    'four-wheeled vehicle': ['bus', 'truck', 'car'],\n    'four-legged animals': ['livestock', 'pets', 'wild animals'],\n    'livestock': ['cow', 'horse', 'sheep'],\n    'pets': ['cat', 'dog'],\n    'wild animals': ['elephant', 'bear', 'zebra', 'giraffe'],\n    'bags': ['backpack', 'handbag', 'suitcase'],\n    'sports boards': ['snowboard', 'surfboard', 'skateboard'],\n    'utensils': ['fork', 'knife', 'spoon'],\n    'receptacles': ['bowl', 'cup'],\n    'fruits': ['banana', 'apple', 'orange'],\n    'foods': ['fruits', 'meals', 'desserts'],\n    'meals': ['sandwich', 'hot dog', 'pizza'],\n    'desserts': ['cake', 'donut'],\n    'furniture': ['chair', 'couch', 'bench'],\n    'electronics': ['monitors', 'appliances'],\n    'monitors': ['tv', 'cell phone', 'laptop'],\n    'appliances': ['oven', 'toaster', 'refrigerator']\n}\n\nCOCO80_TO_27 = {\n    'bicycle': 'vehicle', 'car': 'vehicle', 'motorcycle': 'vehicle', 'airplane': 'vehicle', 'bus': 'vehicle',\n    'train': 'vehicle', 'truck': 'vehicle', 'boat': 'vehicle', 'traffic light': 'accessory', 'fire hydrant': 'accessory',\n    'stop sign': 'accessory', 'parking meter': 'accessory', 'bench': 'furniture', 'bird': 'animal', 'cat': 'animal',\n    'dog': 'animal', 'horse': 'animal', 'sheep': 'animal', 'cow': 'animal', 'elephant': 'animal', 'bear': 'animal',\n    'zebra': 'animal', 'giraffe': 'animal', 'backpack': 'accessory', 'umbrella': 'accessory', 'handbag': 'accessory',\n    'tie': 'accessory', 'suitcase': 'accessory', 'frisbee': 'sports', 'skis': 'sports', 'snowboard': 'sports',\n    'sports ball': 'sports', 'kite': 'sports', 'baseball bat': 'sports', 'baseball glove': 'sports',\n    'skateboard': 'sports', 'surfboard': 'sports', 'tennis racket': 'sports', 'bottle': 'food', 'wine glass': 'food',\n    'cup': 'food', 'fork': 'food', 'knife': 'food', 'spoon': 'food', 'bowl': 'food', 'banana': 'food', 'apple': 'food',\n    'sandwich': 'food', 'orange': 'food', 'broccoli': 'food', 'carrot': 'food', 'hot dog': 'food', 'pizza': 'food',\n    'donut': 'food', 'cake': 'food', 'chair': 'furniture', 'couch': 'furniture', 'potted plant': 'plant',\n    'bed': 'furniture', 'dining table': 'furniture', 'toilet': 'furniture', 'tv': 'electronic', 'laptop': 'electronic',\n    'mouse': 'electronic', 'remote': 'electronic', 'keyboard': 'electronic', 'cell phone': 'electronic',\n    'microwave': 'appliance', 'oven': 'appliance', 'toaster': 'appliance', 'sink': 'appliance',\n    'refrigerator': 'appliance', 'book': 'indoor', 'clock': 'indoor', 'vase': 'indoor', 'scissors': 'indoor',\n    'teddy bear': 'indoor', 'hair drier': 'indoor', 'toothbrush': 'indoor'\n}\n\n\ndef build_word_list_coco80() -> Dict[str, List[str]]:\n    words_map = COCO80_ONTOLOGY.copy()\n    words_map = {k: v for k, v in words_map.items() if not any(item in COCO80_ONTOLOGY for item in v)}\n\n    return words_map\n\n\ndef _add_mask(masks: Dict[str, torch.Tensor], word: str, mask: torch.Tensor, simplify80: bool = False) -> Dict[str, torch.Tensor]:\n    if simplify80:\n        word = COCO80_TO_27.get(word, word)\n\n    if word in masks:\n        masks[word] = masks[word.lower()] + mask\n        masks[word].clamp_(0, 1)\n    else:\n        masks[word] = mask\n\n    return masks\n\n\n@dataclass\nclass GenerationExperiment:\n    \"\"\"Class to hold experiment parameters. Pickleable.\"\"\"\n    image: PIL.Image.Image\n    global_heat_map: torch.Tensor\n    prompt: str\n\n    seed: int = None\n    id: str = '.'\n    path: Optional[Path] = None\n\n    truth_masks: Optional[Dict[str, torch.Tensor]] = None\n    prediction_masks: Optional[Dict[str, torch.Tensor]] = None\n    annotations: Optional[Dict[str, Any]] = None\n    subtype: Optional[str] = '.'\n    tokenizer: AutoTokenizer = None\n\n    def __post_init__(self):\n        if isinstance(self.path, str):\n            self.path = Path(self.path)\n\n        self.path = None if self.path is None else self.path / self.id\n\n    def nsfw(self) -> bool:\n        return np.sum(np.array(self.image)) == 0\n\n    def heat_map(self, tokenizer: AutoTokenizer = None):\n        if tokenizer is None:\n            tokenizer = self.tokenizer\n\n        from daam import GlobalHeatMap\n        return GlobalHeatMap(tokenizer, self.prompt, self.global_heat_map)\n\n    def clear_checkpoint(self):\n        path = self if isinstance(self, Path) else self.path\n\n        (path / 'generation.pt').unlink(missing_ok=True)\n\n    def save(self, path: str = None, heat_maps: bool = True, tokenizer: AutoTokenizer = None):\n        if path is None:\n            path = self.path\n        else:\n            path = Path(path) / self.id\n\n        if tokenizer is None:\n            tokenizer = self.tokenizer\n\n        (path / self.subtype).mkdir(parents=True, exist_ok=True)\n        torch.save(self, path / self.subtype / 'generation.pt')\n        self.image.save(path / self.subtype / 'output.png')\n\n        with (path / 'prompt.txt').open('w') as f:\n            f.write(self.prompt)\n\n        with (path / 'seed.txt').open('w') as f:\n            f.write(str(self.seed))\n\n        if self.truth_masks is not None:\n            for name, mask in self.truth_masks.items():\n                im = PIL.Image.fromarray((mask * 255).unsqueeze(-1).expand(-1, -1, 4).byte().numpy())\n                im.save(path / f'{name.lower()}.gt.png')\n\n        if heat_maps and tokenizer is not None:\n            self.save_all_heat_maps(tokenizer)\n\n        self.save_annotations()\n\n    def save_annotations(self, path: Path = None):\n        if path is None:\n            path = self.path\n\n        if self.annotations is not None:\n            with (path / 'annotations.json').open('w') as f:\n                json.dump(self.annotations, f)\n\n    def _load_truth_masks(self, simplify80: bool = False) -> Dict[str, torch.Tensor]:\n        masks = {}\n\n        for mask_path in self.path.glob('*.gt.png'):\n            word = mask_path.name.split('.gt.png')[0].lower()\n            mask = load_mask(str(mask_path))\n            _add_mask(masks, word, mask, simplify80)\n\n        return masks\n\n    def _load_pred_masks(self, pred_prefix, composite=False, simplify80=False, vocab=None):\n        # type: (str, bool, bool, List[str] | None) -> Dict[str, torch.Tensor]\n        masks = {}\n\n        if vocab is None:\n            vocab = UNUSED_LABELS\n\n        if composite:\n            try:\n                im = PIL.Image.open(self.path / self.subtype / f'composite.{pred_prefix}.pred.png')\n                im = np.array(im)\n\n                for mask_idx in np.unique(im):\n                    mask = torch.from_numpy((im == mask_idx).astype(np.float32))\n                    _add_mask(masks, vocab[mask_idx], mask, simplify80)\n            except FileNotFoundError:\n                pass\n        else:\n            for mask_path in (self.path / self.subtype).glob(f'*.{pred_prefix}.pred.png'):\n                mask = load_mask(str(mask_path))\n                word = mask_path.name.split(f'.{pred_prefix}.pred')[0].lower()\n                _add_mask(masks, word, mask, simplify80)\n\n        return masks\n\n    def clear_prediction_masks(self, name: str):\n        path = self if isinstance(self, Path) else self.path\n        path = path / self.subtype\n\n        for mask_path in path.glob(f'*.{name}.pred.png'):\n            mask_path.unlink()\n\n    def save_prediction_mask(self, mask: torch.Tensor, word: str, name: str):\n        path = self if isinstance(self, Path) else self.path\n        im = PIL.Image.fromarray((mask * 255).unsqueeze(-1).expand(-1, -1, 4).cpu().byte().numpy())\n        im.save(path / self.subtype / f'{word.lower()}.{name}.pred.png')\n\n    def save_heat_map(\n            self,\n            word: str,\n            tokenizer: PreTrainedTokenizer = None,\n            crop: int = None,\n            output_prefix: str = '',\n            absolute: bool = False\n    ) -> Path:\n        from .trace import GlobalHeatMap  # because of cyclical import\n\n        if tokenizer is None:\n            tokenizer = self.tokenizer\n\n        with auto_autocast(dtype=torch.float32):\n            path = self.path / self.subtype / f'{output_prefix}{word.lower()}.heat_map.png'\n            heat_map = GlobalHeatMap(tokenizer, self.prompt, self.global_heat_map)\n            heat_map.compute_word_heat_map(word).expand_as(self.image, color_normalize=not absolute, out_file=path, plot=True)\n\n        return path\n\n    def save_all_heat_maps(self, tokenizer: PreTrainedTokenizer = None, crop: int = None) -> Dict[str, Path]:\n        path_map = {}\n\n        if tokenizer is None:\n            tokenizer = self.tokenizer\n\n        for word in self.prompt.split(' '):\n            try:\n                path = self.save_heat_map(word, tokenizer, crop=crop)\n                path_map[word] = path\n            except Exception:\n                pass\n\n        return path_map\n\n    @staticmethod\n    def contains_truth_mask(path: Union[str, Path], prompt_id: str = None) -> bool:\n        if prompt_id is None:\n            return any(Path(path).glob('*.gt.png'))\n        else:\n            return any((Path(path) / prompt_id).glob('*.gt.png'))\n\n    @staticmethod\n    def read_seed(path: Union[str, Path], prompt_id: str = None) -> int:\n        if prompt_id is None:\n            return int(Path(path).joinpath('seed.txt').read_text())\n        else:\n            return int(Path(path).joinpath(prompt_id).joinpath('seed.txt').read_text())\n\n    @staticmethod\n    def has_annotations(path: Union[str, Path]) -> bool:\n        return Path(path).joinpath('annotations.json').exists()\n\n    @staticmethod\n    def has_experiment(path: Union[str, Path], prompt_id: str) -> bool:\n        return (Path(path) / prompt_id / 'generation.pt').exists()\n\n    @staticmethod\n    def read_prompt(path: Union[str, Path], prompt_id: str = None) -> str:\n        if prompt_id is None:\n            prompt_id = '.'\n\n        with (Path(path) / prompt_id / 'prompt.txt').open('r') as f:\n            return f.read().strip()\n\n    def _try_load_annotations(self):\n        if not (self.path / 'annotations.json').exists():\n            return None\n\n        return json.load((self.path / 'annotations.json').open())\n\n    def annotate(self, key: str, value: Any) -> 'GenerationExperiment':\n        if self.annotations is None:\n            self.annotations = {}\n\n        self.annotations[key] = value\n\n        return self\n\n    @classmethod\n    def load(\n            cls,\n            path,\n            pred_prefix='daam',\n            composite=False,\n            simplify80=False,\n            vocab=None,\n            subtype='.',\n            all_subtypes=False\n    ):\n        # type: (str, str, bool, bool, List[str] | None, str, bool) -> GenerationExperiment | List[GenerationExperiment]\n        if all_subtypes:\n            experiments = []\n\n            for directory in Path(path).iterdir():\n                if not directory.is_dir():\n                    continue\n\n                try:\n                    experiments.append(cls.load(\n                        path,\n                        pred_prefix=pred_prefix,\n                        composite=composite,\n                        simplify80=simplify80,\n                        vocab=vocab,\n                        subtype=directory.name\n                    ))\n                except Exception:\n                    pass\n\n            return experiments\n\n        path = Path(path)\n        exp = torch.load(path / subtype / 'generation.pt')\n        exp.subtype = subtype\n        exp.path = path\n        exp.truth_masks = exp._load_truth_masks(simplify80=simplify80)\n        exp.prediction_masks = exp._load_pred_masks(pred_prefix, composite=composite, simplify80=simplify80, vocab=vocab)\n        exp.annotations = exp._try_load_annotations()\n\n        return exp\n"
  },
  {
    "path": "scripts/daam/heatmap.py",
    "content": "import io\nfrom collections import defaultdict\nfrom dataclasses import dataclass\nfrom functools import lru_cache\nfrom pathlib import Path\nfrom typing import Any, Dict, Tuple, Set, Iterable\n\nfrom matplotlib import pyplot as plt\nimport numpy as np\nimport PIL.Image\nimport spacy.tokens\nimport torch\nimport torch.nn.functional as F\n\nfrom .evaluate import compute_ioa\nfrom .utils import compute_token_merge_indices, cached_nlp, auto_autocast\n\n__all__ = ['GlobalHeatMap', 'RawHeatMapCollection', 'WordHeatMap', 'ParsedHeatMap', 'SyntacticHeatMapPair']\n\n\ndef plot_overlay_heat_map(im, heat_map, word=None, out_file=None, crop=None, color_normalize=True, ax=None, cmap='jet'):\n    # type: (PIL.Image.Image | np.ndarray, torch.Tensor, str, Path, int, bool, plt.Axes) -> None\n    if ax is None:\n        plt.rcParams['font.size'] = 16\n        plt.rcParams['figure.facecolor'] = 'black'\n        plt.rcParams['text.color'] = 'white'\n        plt.rcParams['axes.labelcolor'] = 'white'\n        plt.rcParams['xtick.color'] = 'black'\n        plt.rcParams['ytick.color'] = 'black'\n        plt.clf()\n        plt_ = plt\n    else:\n        plt_ = ax\n\n    with auto_autocast(dtype=torch.float32):\n        im = np.array(im)\n\n        if crop is not None:\n            heat_map = heat_map.squeeze()[crop:-crop, crop:-crop]\n            im = im[crop:-crop, crop:-crop]\n\n        if color_normalize:\n            plt_.imshow(heat_map.squeeze().cpu().numpy(), cmap=cmap)\n        else:\n            heat_map = heat_map.clamp_(min=0, max=1)\n            plt_.imshow(heat_map.squeeze().cpu().numpy(), cmap=cmap, vmin=0.0, vmax=1.0)\n\n        im = torch.from_numpy(im).float() / 255\n        im = torch.cat((im, (1 - heat_map.unsqueeze(-1))), dim=-1)\n        plt_.imshow(im)\n\n        if word is not None:\n            if ax is None:\n                plt.title(word)\n            else:\n                ax.set_title(word)\n\n        if out_file is not None:\n            plt.savefig(out_file)\n\n        buf = io.BytesIO()\n        plt.savefig(buf, format='png', bbox_inches='tight')\n        buf.seek(0)\n        image = PIL.Image.open(buf)\n        return image\n\n\nclass WordHeatMap:\n    def __init__(self, heatmap: torch.Tensor, word: str = None, word_idx: int = None):\n        self.word = word\n        self.word_idx = word_idx\n        self.heatmap = heatmap\n\n    @property\n    def value(self):\n        return self.heatmap\n\n    def plot_overlay(self, image, out_file=None, color_normalize=True, ax=None, cmap='jet', **expand_kwargs):\n        # type: (PIL.Image.Image | np.ndarray, Path, bool, plt.Axes, Dict[str, Any]) -> None\n        return plot_overlay_heat_map(\n            image,\n            self.expand_as(image, **expand_kwargs),\n            word=self.word,\n            out_file=out_file,\n            color_normalize=color_normalize,\n            ax=ax,\n            cmap=cmap,\n        )\n\n    def expand_as(self, image, absolute=False, threshold=None, plot=False, **plot_kwargs):\n        # type: (PIL.Image.Image, bool, float, bool, Dict[str, Any]) -> torch.Tensor\n        im = self.heatmap.unsqueeze(0).unsqueeze(0)\n        im = F.interpolate(im.float().detach(), size=(image.size[0], image.size[1]), mode='bicubic')\n\n        if not absolute:\n            im = (im - im.min()) / (im.max() - im.min() + 1e-8)\n\n        if threshold:\n            im = (im > threshold).float()\n\n        im = im.cpu().detach().squeeze()\n\n        if plot:\n            self.plot_overlay(image, **plot_kwargs)\n\n        return im\n\n    def compute_ioa(self, other: 'WordHeatMap'):\n        return compute_ioa(self.heatmap, other.heatmap)\n\n\n@dataclass\nclass SyntacticHeatMapPair:\n    head_heat_map: WordHeatMap\n    dep_heat_map: WordHeatMap\n    head_text: str\n    dep_text: str\n    relation: str\n\n\n@dataclass\nclass ParsedHeatMap:\n    word_heat_map: WordHeatMap\n    token: spacy.tokens.Token\n\n\nclass GlobalHeatMap:\n    def __init__(self, tokenizer: Any, prompt: str, heat_maps: torch.Tensor):\n        self.tokenizer = tokenizer\n        self.heat_maps = heat_maps\n        self.prompt = prompt\n        self.compute_word_heat_map = lru_cache(maxsize=50)(self.compute_word_heat_map)\n\n    def compute_word_heat_map(self, word: str, word_idx: int = None, offset_idx: int = 0) -> WordHeatMap:\n        merge_idxs, word_idx = compute_token_merge_indices(self.tokenizer, self.prompt, word, word_idx, offset_idx)\n        return WordHeatMap(self.heat_maps[merge_idxs].mean(0), word, word_idx)\n\n    def parsed_heat_maps(self) -> Iterable[ParsedHeatMap]:\n        for token in cached_nlp(self.prompt):\n            try:\n                heat_map = self.compute_word_heat_map(token.text)\n                yield ParsedHeatMap(heat_map, token)\n            except ValueError:\n                pass\n\n    def dependency_relations(self) -> Iterable[SyntacticHeatMapPair]:\n        for token in cached_nlp(self.prompt):\n            if token.dep_ != 'ROOT':\n                try:\n                    dep_heat_map = self.compute_word_heat_map(token.text)\n                    head_heat_map = self.compute_word_heat_map(token.head.text)\n\n                    yield SyntacticHeatMapPair(head_heat_map, dep_heat_map, token.head.text, token.text, token.dep_)\n                except ValueError:\n                    pass\n\n\nRawHeatMapKey = Tuple[int, int, int]  # factor, layer, head\n\n\nclass RawHeatMapCollection:\n    def __init__(self):\n        self.ids_to_heatmaps: Dict[RawHeatMapKey, torch.Tensor] = defaultdict(lambda: 0.0)\n        self.ids_to_num_maps: Dict[RawHeatMapKey, int] = defaultdict(lambda: 0)\n\n    def update(self, factor: int, layer_idx: int, head_idx: int, heatmap: torch.Tensor):\n        with auto_autocast(dtype=torch.float32):\n            key = (factor, layer_idx, head_idx)\n            self.ids_to_heatmaps[key] = self.ids_to_heatmaps[key] + heatmap\n\n    def factors(self) -> Set[int]:\n        return set(key[0] for key in self.ids_to_heatmaps.keys())\n\n    def layers(self) -> Set[int]:\n        return set(key[1] for key in self.ids_to_heatmaps.keys())\n\n    def heads(self) -> Set[int]:\n        return set(key[2] for key in self.ids_to_heatmaps.keys())\n\n    def __iter__(self):\n        return iter(self.ids_to_heatmaps.items())\n\n    def clear(self):\n        self.ids_to_heatmaps.clear()\n        self.ids_to_num_maps.clear()\n"
  },
  {
    "path": "scripts/daam/hook.py",
    "content": "from typing import List, Generic, TypeVar\nimport functools\nimport itertools\n\nfrom diffusers import UNet2DConditionModel\nfrom diffusers.models.attention_processor import Attention\nimport torch.nn as nn\n\n\n__all__ = ['ObjectHooker', 'ModuleLocator', 'AggregateHooker', 'UNetCrossAttentionLocator']\n\n\nModuleType = TypeVar('ModuleType')\nModuleListType = TypeVar('ModuleListType', bound=List)\n\n\nclass ModuleLocator(Generic[ModuleType]):\n    def locate(self, model: nn.Module) -> List[ModuleType]:\n        raise NotImplementedError\n\n\nclass ObjectHooker(Generic[ModuleType]):\n    def __init__(self, module: ModuleType):\n        self.module: ModuleType = module\n        self.hooked = False\n        self.old_state = {}\n\n    def __enter__(self):\n        self.hook()\n        return self\n\n    def __exit__(self, exc_type, exc_val, exc_tb):\n        self.unhook()\n\n    def hook(self):\n        if self.hooked:\n            raise RuntimeError('Already hooked module')\n\n        self.old_state = {}\n        self.hooked = True\n        self._hook_impl()\n\n        return self\n\n    def unhook(self):\n        if not self.hooked:\n            raise RuntimeError('Module is not hooked')\n\n        for k, v in self.old_state.items():\n            if k.startswith('old_fn_'):\n                setattr(self.module, k[7:], v)\n\n        self.hooked = False\n        self._unhook_impl()\n\n        return self\n\n    def monkey_patch(self, fn_name, fn, strict: bool = True):\n        try:\n            self.old_state[f'old_fn_{fn_name}'] = getattr(self.module, fn_name)\n            setattr(self.module, fn_name, functools.partial(fn, self.module))\n        except AttributeError:\n            if strict:\n                raise\n\n    def monkey_super(self, fn_name, *args, **kwargs):\n        return self.old_state[f'old_fn_{fn_name}'](*args, **kwargs)\n\n    def _hook_impl(self):\n        raise NotImplementedError\n\n    def _unhook_impl(self):\n        pass\n\n\nclass AggregateHooker(ObjectHooker[ModuleListType]):\n    def _hook_impl(self):\n        for h in self.module:\n            h.hook()\n\n    def _unhook_impl(self):\n        for h in self.module:\n            h.unhook()\n\n    def register_hook(self, hook: ObjectHooker):\n        self.module.append(hook)\n\n\nclass UNetCrossAttentionLocator(ModuleLocator[Attention]):\n    def __init__(self, restrict: bool = None, locate_middle_block: bool = False):\n        self.restrict = restrict\n        self.layer_names = []\n        self.locate_middle_block = locate_middle_block\n\n    def locate(self, model: UNet2DConditionModel) -> List[Attention]:\n        \"\"\"\n        Locate all cross-attention modules in a UNet2DConditionModel.\n\n        Args:\n            model (`UNet2DConditionModel`): The model to locate the cross-attention modules in.\n\n        Returns:\n            `List[Attention]`: The list of cross-attention modules.\n        \"\"\"\n        self.layer_names.clear()\n        blocks_list = []\n        up_names = ['up'] * len(model.up_blocks)\n        down_names = ['down'] * len(model.down_blocks)\n\n        for unet_block, name in itertools.chain(\n                zip(model.up_blocks, up_names),\n                zip(model.down_blocks, down_names),\n                zip([model.mid_block], ['mid']) if self.locate_middle_block else [],\n        ):\n            if 'CrossAttn' in unet_block.__class__.__name__:\n                blocks = []\n\n                for spatial_transformer in unet_block.attentions:\n                    for transformer_block in spatial_transformer.transformer_blocks:\n                        blocks.append(transformer_block.attn2)\n\n                blocks = [b for idx, b in enumerate(blocks) if self.restrict is None or idx in self.restrict]\n                names = [f'{name}-attn-{i}' for i in range(len(blocks)) if self.restrict is None or i in self.restrict]\n                blocks_list.extend(blocks)\n                self.layer_names.extend(names)\n\n        return blocks_list\n"
  },
  {
    "path": "scripts/daam/trace.py",
    "content": "from pathlib import Path\nfrom typing import List, Type, Any, Dict, Union\nimport math\n\nfrom diffusers import StableDiffusionPipeline, StableDiffusionXLPipeline\nfrom diffusers.image_processor import VaeImageProcessor\nfrom diffusers.models.attention_processor import Attention\nimport numpy as np\nimport PIL.Image as Image\nimport torch\nimport torch.nn.functional as F\n\nfrom .utils import cache_dir, auto_autocast\nfrom .experiment import GenerationExperiment\nfrom .heatmap import RawHeatMapCollection, GlobalHeatMap\nfrom .hook import ObjectHooker, AggregateHooker, UNetCrossAttentionLocator\n\n\n__all__ = ['trace', 'DiffusionHeatMapHooker', 'GlobalHeatMap']\n\n\nclass DiffusionHeatMapHooker(AggregateHooker):\n    def __init__(\n            self,\n            pipeline: Union[StableDiffusionPipeline, StableDiffusionXLPipeline],\n            low_memory: bool = False,\n            load_heads: bool = False,\n            save_heads: bool = False,\n            data_dir: str = None\n    ):\n        self.all_heat_maps = RawHeatMapCollection()\n        h = (pipeline.unet.config.sample_size * pipeline.vae_scale_factor)\n        self.latent_hw = 4096 if h == 512 or h == 1024 else 9216  # 64x64 or 96x96 depending on if it's 2.0-v or 2.0\n        locate_middle = load_heads or save_heads\n        self.locator = UNetCrossAttentionLocator(restrict={0} if low_memory else None, locate_middle_block=locate_middle)\n        self.last_prompt: str = ''\n        self.last_image: Image = None\n        self.time_idx = 0\n        self._gen_idx = 0\n\n        modules = [\n            UNetCrossAttentionHooker(\n                x,\n                self,\n                layer_idx=idx,\n                latent_hw=self.latent_hw,\n                load_heads=load_heads,\n                save_heads=save_heads,\n                data_dir=data_dir\n            ) for idx, x in enumerate(self.locator.locate(pipeline.unet))\n        ]\n\n        modules.append(PipelineHooker(pipeline, self))\n\n        if type(pipeline) == StableDiffusionXLPipeline:\n            modules.append(ImageProcessorHooker(pipeline.image_processor, self))\n\n        super().__init__(modules)\n        self.pipe = pipeline\n\n    def time_callback(self, *args, **kwargs):\n        self.time_idx += 1\n\n    @property\n    def layer_names(self):\n        return self.locator.layer_names\n\n    def to_experiment(self, path, seed=None, id='.', subtype='.', **compute_kwargs):\n        # type: (Union[Path, str], int, str, str, Dict[str, Any]) -> GenerationExperiment\n        \"\"\"Exports the last generation call to a serializable generation experiment.\"\"\"\n\n        return GenerationExperiment(\n            self.last_image,\n            self.compute_global_heat_map(**compute_kwargs).heat_maps,\n            self.last_prompt,\n            seed=seed,\n            id=id,\n            subtype=subtype,\n            path=path,\n            tokenizer=self.pipe.tokenizer,\n        )\n\n    def compute_global_heat_map(self, prompt=None, factors=None, head_idx=None, layer_idx=None, normalize=False):\n        # type: (str, List[float], int, int, bool) -> GlobalHeatMap\n        \"\"\"\n        Compute the global heat map for the given prompt, aggregating across time (inference steps) and space (different\n        spatial transformer block heat maps).\n\n        Args:\n            prompt: The prompt to compute the heat map for. If none, uses the last prompt that was used for generation.\n            factors: Restrict the application to heat maps with spatial factors in this set. If `None`, use all sizes.\n            head_idx: Restrict the application to heat maps with this head index. If `None`, use all heads.\n            layer_idx: Restrict the application to heat maps with this layer index. If `None`, use all layers.\n\n        Returns:\n            A heat map object for computing word-level heat maps.\n        \"\"\"\n        heat_maps = self.all_heat_maps\n\n        if prompt is None:\n            prompt = self.last_prompt\n\n        if factors is None:\n            factors = {0, 1, 2, 4, 8, 16, 32, 64}\n        else:\n            factors = set(factors)\n\n        all_merges = []\n        x = int(np.sqrt(self.latent_hw))\n\n        with auto_autocast(dtype=torch.float32):\n            for (factor, layer, head), heat_map in heat_maps:\n                if factor in factors and (head_idx is None or head_idx == head) and (layer_idx is None or layer_idx == layer):\n                    heat_map = heat_map.unsqueeze(1)\n                    # The clamping fixes undershoot.\n                    all_merges.append(F.interpolate(heat_map, size=(x, x), mode='bicubic').clamp_(min=0))\n\n            try:\n                maps = torch.stack(all_merges, dim=0)\n            except RuntimeError:\n                if head_idx is not None or layer_idx is not None:\n                    raise RuntimeError('No heat maps found for the given parameters.')\n                else:\n                    raise RuntimeError('No heat maps found. Did you forget to call `with trace(...)` during generation?')\n\n            maps = maps.mean(0)[:, 0]\n            maps = maps[:len(self.pipe.tokenizer.tokenize(prompt)) + 2]  # 1 for SOS and 1 for padding\n\n            if normalize:\n                maps = maps / (maps[1:-1].sum(0, keepdim=True) + 1e-6)  # drop out [SOS] and [PAD] for proper probabilities\n\n        return GlobalHeatMap(self.pipe.tokenizer, prompt, maps)\n\n\nclass ImageProcessorHooker(ObjectHooker[VaeImageProcessor]):\n    def __init__(self, processor: VaeImageProcessor, parent_trace: 'trace'):\n        super().__init__(processor)\n        self.parent_trace = parent_trace\n\n    def _hooked_postprocess(hk_self, _: VaeImageProcessor, *args, **kwargs):\n        images = hk_self.monkey_super('postprocess', *args, **kwargs)\n        hk_self.parent_trace.last_image = images[0]\n\n        return images\n\n    def _hook_impl(self):\n        self.monkey_patch('postprocess', self._hooked_postprocess)\n\n\nclass PipelineHooker(ObjectHooker[StableDiffusionPipeline]):\n    def __init__(self, pipeline: StableDiffusionPipeline, parent_trace: 'trace'):\n        super().__init__(pipeline)\n        self.heat_maps = parent_trace.all_heat_maps\n        self.parent_trace = parent_trace\n\n    def _hooked_run_safety_checker(hk_self, self: StableDiffusionPipeline, image, *args, **kwargs):\n        image, has_nsfw = hk_self.monkey_super('run_safety_checker', image, *args, **kwargs)\n\n        if self.image_processor:\n            if torch.is_tensor(image):\n                images = self.image_processor.postprocess(image, output_type='pil')\n            else:\n                images = self.image_processor.numpy_to_pil(image)\n        else:\n            images = self.numpy_to_pil(image)\n\n        hk_self.parent_trace.last_image = images[len(images)-1]\n\n        return image, has_nsfw\n\n    def _hooked_check_inputs(hk_self, _: StableDiffusionPipeline, prompt: Union[str, List[str]], *args, **kwargs):\n        if not isinstance(prompt, str) and len(prompt) > 1:\n            raise ValueError('Only single prompt generation is supported for heat map computation.')\n        elif not isinstance(prompt, str):\n            last_prompt = prompt[0]\n        else:\n            last_prompt = prompt\n\n        hk_self.heat_maps.clear()\n        hk_self.parent_trace.last_prompt = last_prompt\n\n        return hk_self.monkey_super('check_inputs', prompt, *args, **kwargs)\n\n    def _hook_impl(self):\n        self.monkey_patch('run_safety_checker', self._hooked_run_safety_checker, strict=False)  # not present in SDXL\n        self.monkey_patch('check_inputs', self._hooked_check_inputs)\n\n\nclass UNetCrossAttentionHooker(ObjectHooker[Attention]):\n    def __init__(\n            self,\n            module: Attention,\n            parent_trace: 'trace',\n            context_size: int = 77,\n            layer_idx: int = 0,\n            latent_hw: int = 9216,\n            load_heads: bool = False,\n            save_heads: bool = False,\n            data_dir: Union[str, Path] = None,\n    ):\n        super().__init__(module)\n        self.heat_maps = parent_trace.all_heat_maps\n        self.context_size = context_size\n        self.layer_idx = layer_idx\n        self.latent_hw = latent_hw\n\n        self.load_heads = load_heads\n        self.save_heads = save_heads\n        self.trace = parent_trace\n\n        if data_dir is not None:\n            data_dir = Path(data_dir)\n        else:\n            data_dir = cache_dir() / 'heads'\n\n        self.data_dir = data_dir\n        self.data_dir.mkdir(parents=True, exist_ok=True)\n\n    @torch.no_grad()\n    def _unravel_attn(self, x):\n        # type: (torch.Tensor) -> torch.Tensor\n        # x shape: (heads, height * width, tokens)\n        \"\"\"\n        Unravels the attention, returning it as a collection of heat maps.\n\n        Args:\n            x (`torch.Tensor`): cross attention slice/map between the words and the tokens.\n            value (`torch.Tensor`): the value tensor.\n\n        Returns:\n            `List[Tuple[int, torch.Tensor]]`: the list of heat maps across heads.\n        \"\"\"\n        h = w = int(math.sqrt(x.size(1)))\n        maps = []\n        x = x.permute(2, 0, 1)\n\n        with auto_autocast(dtype=torch.float32):\n            for map_ in x:\n                map_ = map_.view(map_.size(0), h, w)\n                # For Instruct Pix2Pix, divide the map into three parts: text condition, image condition and unconditional,\n                # and only keep the text condition part, which is first of the three parts(as per diffusers implementation).\n                if map_.size(0) == 24:\n                    map_ = map_[:((map_.size(0) // 3)+1)]  # Filter out unconditional and image condition\n                else:\n                    map_ = map_[map_.size(0) // 2:] #  # Filter out unconditional\n                maps.append(map_)\n\n        maps = torch.stack(maps, 0)  # shape: (tokens, heads, height, width)\n        return maps.permute(1, 0, 2, 3).contiguous()  # shape: (heads, tokens, height, width)\n\n    def _save_attn(self, attn_slice: torch.Tensor):\n        torch.save(attn_slice, self.data_dir / f'{self.trace._gen_idx}.pt')\n\n    def _load_attn(self) -> torch.Tensor:\n        return torch.load(self.data_dir / f'{self.trace._gen_idx}.pt')\n\n    def __call__(\n            self,\n            attn: Attention,\n            hidden_states,\n            encoder_hidden_states=None,\n            attention_mask=None,\n    ):\n        \"\"\"Capture attentions and aggregate them.\"\"\"\n        batch_size, sequence_length, _ = hidden_states.shape\n        attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n        query = attn.to_q(hidden_states)\n\n        if encoder_hidden_states is None:\n            encoder_hidden_states = hidden_states\n        elif attn.norm_cross is not None:\n            encoder_hidden_states = attn.norm_cross(encoder_hidden_states)\n\n        key = attn.to_k(encoder_hidden_states)\n        value = attn.to_v(encoder_hidden_states)\n\n        query = attn.head_to_batch_dim(query)\n        key = attn.head_to_batch_dim(key)\n        value = attn.head_to_batch_dim(value)\n\n        attention_probs = attn.get_attention_scores(query, key, attention_mask)\n\n        # DAAM save heads\n        if self.save_heads:\n            self._save_attn(attention_probs)\n        elif self.load_heads:\n            attention_probs = self._load_attn()\n\n        # compute shape factor\n        factor = int(math.sqrt(self.latent_hw // attention_probs.shape[1]))\n        self.trace._gen_idx += 1\n\n        # skip if too large\n        if attention_probs.shape[-1] == self.context_size and factor != 8:\n            # shape: (batch_size, 64 // factor, 64 // factor, 77)\n            maps = self._unravel_attn(attention_probs)\n\n            for head_idx, heatmap in enumerate(maps):\n                self.heat_maps.update(factor, self.layer_idx, head_idx, heatmap)\n\n        hidden_states = torch.bmm(attention_probs, value)\n        hidden_states = attn.batch_to_head_dim(hidden_states)\n\n        # linear proj\n        hidden_states = attn.to_out[0](hidden_states)\n        # dropout\n        hidden_states = attn.to_out[1](hidden_states)\n\n        return hidden_states\n\n    def _hook_impl(self):\n        self.original_processor = self.module.processor\n        self.module.set_processor(self)\n\n    def _unhook_impl(self):\n        self.module.set_processor(self.original_processor)\n\n    @property\n    def num_heat_maps(self):\n        return len(next(iter(self.heat_maps.values())))\n\n\ntrace: Type[DiffusionHeatMapHooker] = DiffusionHeatMapHooker\n"
  },
  {
    "path": "scripts/daam/utils.py",
    "content": "from functools import lru_cache\nfrom pathlib import Path\nimport os\nimport sys\nimport random\nfrom typing import TypeVar\n\nimport PIL.Image\nimport matplotlib.pyplot as plt\nimport numpy as np\nimport spacy\nimport torch\n\n\n__all__ = ['set_seed', 'compute_token_merge_indices', 'plot_mask_heat_map', 'cached_nlp', 'cache_dir', 'auto_device', 'auto_autocast']\n\n\nT = TypeVar('T')\n\n\ndef auto_device(obj: T = torch.device('cpu')) -> T:\n    if isinstance(obj, torch.device):\n        return torch.device('cuda' if torch.cuda.is_available() else 'cpu')\n\n    if torch.cuda.is_available():\n        return obj.to('cuda')\n\n    return obj\n\n\ndef auto_autocast(*args, **kwargs):\n    if not torch.cuda.is_available():\n        kwargs['enabled'] = False\n\n    return torch.cuda.amp.autocast(*args, **kwargs)\n\n\ndef plot_mask_heat_map(im: PIL.Image.Image, heat_map: torch.Tensor, threshold: float = 0.4):\n    im = torch.from_numpy(np.array(im)).float() / 255\n    mask = (heat_map.squeeze() > threshold).float()\n    im = im * mask.unsqueeze(-1)\n    plt.imshow(im)\n\n\ndef set_seed(seed: int) -> torch.Generator:\n    random.seed(seed)\n    np.random.seed(seed)\n    torch.manual_seed(seed)\n    torch.cuda.manual_seed_all(seed)\n\n    gen = torch.Generator(device=auto_device())\n    gen.manual_seed(seed)\n\n    return gen\n\n\ndef cache_dir() -> Path:\n    # *nix\n    if os.name == 'posix' and sys.platform != 'darwin':\n        xdg = os.environ.get('XDG_CACHE_HOME', os.path.expanduser('~/.cache'))\n        return Path(xdg, 'daam')\n    elif sys.platform == 'darwin':\n        # Mac OS\n        return Path(os.path.expanduser('~'), 'Library/Caches/daam')\n    else:\n        # Windows\n        local = os.environ.get('LOCALAPPDATA', None) \\\n                or os.path.expanduser('~\\\\AppData\\\\Local')\n        return Path(local, 'daam')\n\n\ndef compute_token_merge_indices(tokenizer, prompt: str, word: str, word_idx: int = None, offset_idx: int = 0):\n    merge_idxs = []\n    tokens = tokenizer.tokenize(prompt.lower())\n    tokens = [x.replace('</w>', '') for x in tokens]  # New tokenizer uses wordpiece markers.\n\n    if word_idx is None:\n        word = word.lower()\n        search_tokens = [x.replace('</w>', '') for x in tokenizer.tokenize(word)]  # New tokenizer uses wordpiece markers.\n        start_indices = [x + offset_idx for x in range(len(tokens)) if tokens[x:x + len(search_tokens)] == search_tokens]\n\n        for indice in start_indices:\n            merge_idxs += [i + indice for i in range(0, len(search_tokens))]\n\n        if not merge_idxs:\n            raise ValueError(f'Search word {word} not found in prompt!')\n    else:\n        merge_idxs.append(word_idx)\n\n    return [x + 1 for x in merge_idxs], word_idx  # Offset by 1.\n\n\nnlp = None\n\n\n@lru_cache(maxsize=100000)\ndef cached_nlp(prompt: str, type='en_core_web_md'):\n    global nlp\n\n    if nlp is None:\n        try:\n            nlp = spacy.load(type)\n        except OSError:\n            os.system(f'python -m spacy download {type}')\n            nlp = spacy.load(type)\n\n    return nlp(prompt)\n"
  },
  {
    "path": "scripts/daam_ext.py",
    "content": "# https://github.com/genforce/ctrl-x\n\nimport gradio as gr\nfrom installer import install\nfrom modules import shared, scripts_manager, processing\n\n\nCOLORMAP = ['autumn', 'bone', 'jet', 'winter', 'rainbow', 'ocean', 'summer', 'spring', 'cool', 'hsv', 'pink', 'hot', 'parula', 'magma', 'inferno', 'plasma', 'viridis', 'cividis', 'twilight', 'shifted', 'turbo', 'deepgreen']\n\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return 'DAAM: Diffusion Attentive Attribution Maps'\n\n    def show(self, is_img2img):\n        return not is_img2img\n\n    def ui(self, _is_img2img):\n        with gr.Row():\n            gr.HTML('<a href=\"https://github.com/castorini/daam\">&nbsp DAAM: Diffusion Attentive Attribution Maps</a><br>')\n        with gr.Row():\n            append_images = gr.Checkbox(label='Append heatmaps to results', value=True, elem_id='daam_append_images')\n            colormap = gr.Dropdown(label='Colormap', choices=COLORMAP, value='jet', type='value', elem_id='daam_colormap')\n        return append_images, colormap\n\n    def run(self, p: processing.StableDiffusionProcessing, append_images, colormap): # pylint: disable=arguments-differ\n        c = shared.sd_model.__class__.__name__ if shared.sd_loaded else ''\n        if shared.sd_model_type != 'sdxl':\n            shared.log.warning(f'DAAM: pipeline={c} required=StableDiffusionXLPipeline')\n            return None\n\n        install('thinc==8.3.4')\n        install('spacy==3.8.4')\n\n        from scripts import daam # pylint: disable=no-name-in-module\n        orig_prompt_attention = shared.opts.prompt_attention\n        shared.opts.data['prompt_attention'] = 'fixed'\n\n        # process\n        with daam.trace(shared.sd_model) as tc:\n            processed: processing.Processed = processing.process_images(p)\n            global_heat_map = tc.compute_global_heat_map()\n            shared.log.info(f'DAAM: prompt=\"{global_heat_map.prompt}\" heatmaps={global_heat_map.heat_maps.shape}')\n\n            # word_heat_map = global_heat_map.compute_word_heat_map('woman')\n            parsed_heat_maps = global_heat_map.parsed_heat_maps()\n            if append_images:\n                image = processed.images[0]\n                for parsed_heat_map in parsed_heat_maps:\n                    if len(parsed_heat_map.token.text) > 1:\n                        shared.log.debug(f'DAAM: token=\"{parsed_heat_map.token.text}\"')\n                        overlay = parsed_heat_map.word_heat_map.plot_overlay(image=image, color_normalize=True, cmap=colormap)\n                        processed.images.append(overlay)\n\n        # restore and return\n        shared.opts.data['prompt_attention'] = orig_prompt_attention\n        return processed\n"
  },
  {
    "path": "scripts/demofusion.py",
    "content": "import random\nimport inspect\nfrom typing import Any, Callable, Dict, List, Optional, Tuple, Union\nimport torch\nimport torch.nn.functional as F\nimport gradio as gr\nfrom transformers import CLIPTextModel, CLIPTextModelWithProjection, CLIPTokenizer\nfrom diffusers.image_processor import VaeImageProcessor\nfrom diffusers.loaders import FromSingleFileMixin, LoraLoaderMixin, TextualInversionLoaderMixin\nfrom diffusers.models import AutoencoderKL, UNet2DConditionModel\nfrom diffusers.models.attention_processor import AttnProcessor2_0, FusedAttnProcessor2_0, XFormersAttnProcessor\nfrom diffusers.models.lora import adjust_lora_scale_text_encoder\nfrom diffusers.schedulers import KarrasDiffusionSchedulers\nfrom diffusers.utils import is_accelerate_available, is_accelerate_version\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline, ImagePipelineOutput\nfrom modules import scripts_manager, processing, shared, sd_models, devices\n\n\n### Class definition\n\"\"\"\nCredits: https://github.com/PRIS-CV/DemoFusion\nSource: https://github.com/PRIS-CV/DemoFusion/blob/main/pipeline_demofusion_sdxl.py\n\"\"\"\n\n\ndef gaussian_kernel(kernel_size=3, sigma=1.0, channels=3):\n    x_coord = torch.arange(kernel_size)\n    gaussian_1d = torch.exp(-(x_coord - (kernel_size - 1) / 2) ** 2 / (2 * sigma ** 2))\n    gaussian_1d = gaussian_1d / gaussian_1d.sum()\n    gaussian_2d = gaussian_1d[:, None] * gaussian_1d[None, :]\n    kernel = gaussian_2d[None, None, :, :].repeat(channels, 1, 1, 1)\n    return kernel\n\n\ndef gaussian_filter(latents, kernel_size=3, sigma=1.0):\n    channels = latents.shape[1]\n    kernel = gaussian_kernel(kernel_size, sigma, channels).to(latents.device, latents.dtype)\n    blurred_latents = F.conv2d(latents, kernel, padding=kernel_size//2, groups=channels)\n    return blurred_latents\n\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.rescale_noise_cfg\ndef rescale_noise_cfg(noise_cfg, noise_pred_text, guidance_rescale=0.0):\n    \"\"\"\n    Rescale `noise_cfg` according to `guidance_rescale`. Based on findings of [Common Diffusion Noise Schedules and\n    Sample Steps are Flawed](https://arxiv.org/pdf/2305.08891.pdf). See Section 3.4\n    \"\"\"\n    std_text = noise_pred_text.std(dim=list(range(1, noise_pred_text.ndim)), keepdim=True)\n    std_cfg = noise_cfg.std(dim=list(range(1, noise_cfg.ndim)), keepdim=True)\n    # rescale the results from guidance (fixes overexposure)\n    noise_pred_rescaled = noise_cfg * (std_text / std_cfg)\n    # mix with the original results from guidance by factor guidance_rescale to avoid \"plain looking\" images\n    noise_cfg = guidance_rescale * noise_pred_rescaled + (1 - guidance_rescale) * noise_cfg\n    return noise_cfg\n\n\nclass DemoFusionSDXLPipeline(DiffusionPipeline, FromSingleFileMixin, LoraLoaderMixin, TextualInversionLoaderMixin):\n    model_cpu_offload_seq = \"text_encoder->text_encoder_2->unet->vae\"\n\n    def __init__(\n        self,\n        vae: AutoencoderKL,\n        text_encoder: CLIPTextModel,\n        text_encoder_2: CLIPTextModelWithProjection,\n        tokenizer: CLIPTokenizer,\n        tokenizer_2: CLIPTokenizer,\n        unet: UNet2DConditionModel,\n        scheduler: KarrasDiffusionSchedulers,\n        force_zeros_for_empty_prompt: bool = True,\n    ):\n        super().__init__()\n\n        self.register_modules(\n            vae=vae,\n            text_encoder=text_encoder,\n            text_encoder_2=text_encoder_2,\n            tokenizer=tokenizer,\n            tokenizer_2=tokenizer_2,\n            unet=unet,\n            scheduler=scheduler,\n        )\n        self.register_to_config(force_zeros_for_empty_prompt=force_zeros_for_empty_prompt)\n        self.vae_scale_factor = 2 ** (len(self.vae.config.block_out_channels) - 1)\n        self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor)\n        self.default_sample_size = self.unet.config.sample_size\n        self.watermark = None\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.enable_vae_slicing\n    def enable_vae_slicing(self):\n        self.vae.enable_slicing()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.disable_vae_slicing\n    def disable_vae_slicing(self):\n        self.vae.disable_slicing()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.enable_vae_tiling\n    def enable_vae_tiling(self):\n        self.vae.enable_tiling()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.disable_vae_tiling\n    def disable_vae_tiling(self):\n        self.vae.disable_tiling()\n\n    def encode_prompt(\n        self,\n        prompt: str,\n        prompt_2: Optional[str] = None,\n        device: Optional[torch.device] = None,\n        num_images_per_prompt: int = 1,\n        do_classifier_free_guidance: bool = True,\n        negative_prompt: Optional[str] = None,\n        negative_prompt_2: Optional[str] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        lora_scale: Optional[float] = None,\n    ):\n        device = device or self._execution_device\n\n        # set lora scale so that monkey patched LoRA\n        # function of text encoder can correctly access it\n        if lora_scale is not None and isinstance(self, LoraLoaderMixin):\n            self._lora_scale = lora_scale # pylint: disable=attribute-defined-outside-init\n            # dynamically adjust the LoRA scale\n            adjust_lora_scale_text_encoder(self.text_encoder, lora_scale)\n            adjust_lora_scale_text_encoder(self.text_encoder_2, lora_scale)\n\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        # Define tokenizers and text encoders\n        tokenizers = [self.tokenizer, self.tokenizer_2] if self.tokenizer is not None else [self.tokenizer_2]\n        text_encoders = (\n            [self.text_encoder, self.text_encoder_2] if self.text_encoder is not None else [self.text_encoder_2]\n        )\n\n        if prompt_embeds is None:\n            prompt_2 = prompt_2 or prompt\n            # textual inversion: procecss multi-vector tokens if necessary\n            prompt_embeds_list = []\n            prompts = [prompt, prompt_2]\n            for prompt, tokenizer, text_encoder in zip(prompts, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    prompt = self.maybe_convert_prompt(prompt, tokenizer)\n\n                text_inputs = tokenizer(\n                    prompt,\n                    padding=\"max_length\",\n                    max_length=tokenizer.model_max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                text_input_ids = text_inputs.input_ids\n                untruncated_ids = tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n                if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(\n                    text_input_ids, untruncated_ids\n                ):\n                    removed_text = tokenizer.batch_decode(untruncated_ids[:, tokenizer.model_max_length - 1 : -1])\n                    shared.log.warning(f\"The following part of your input was truncated because CLIP can only handle sequences up to {tokenizer.model_max_length} tokens: {removed_text}\")\n\n                prompt_embeds = text_encoder(\n                    text_input_ids.to(device),\n                    output_hidden_states=True,\n                )\n\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                pooled_prompt_embeds = prompt_embeds[0]\n                prompt_embeds = prompt_embeds.hidden_states[-2]\n\n                prompt_embeds_list.append(prompt_embeds)\n\n            prompt_embeds = torch.concat(prompt_embeds_list, dim=-1)\n\n        # get unconditional embeddings for classifier free guidance\n        zero_out_negative_prompt = negative_prompt is None and self.config.force_zeros_for_empty_prompt # pylint: disable=no-member\n        if do_classifier_free_guidance and negative_prompt_embeds is None and zero_out_negative_prompt:\n            negative_prompt_embeds = torch.zeros_like(prompt_embeds)\n            negative_pooled_prompt_embeds = torch.zeros_like(pooled_prompt_embeds)\n        elif do_classifier_free_guidance and negative_prompt_embeds is None:\n            negative_prompt = negative_prompt or \"\"\n            negative_prompt_2 = negative_prompt_2 or negative_prompt\n\n            uncond_tokens: List[str]\n            if prompt is not None and type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif isinstance(negative_prompt, str):\n                uncond_tokens = [negative_prompt, negative_prompt_2]\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n            else:\n                uncond_tokens = [negative_prompt, negative_prompt_2]\n\n            negative_prompt_embeds_list = []\n            for negative_prompt, tokenizer, text_encoder in zip(uncond_tokens, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    negative_prompt = self.maybe_convert_prompt(negative_prompt, tokenizer)\n\n                max_length = prompt_embeds.shape[1]\n                uncond_input = tokenizer(\n                    negative_prompt,\n                    padding=\"max_length\",\n                    max_length=max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                negative_prompt_embeds = text_encoder(\n                    uncond_input.input_ids.to(device),\n                    output_hidden_states=True,\n                )\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                negative_pooled_prompt_embeds = negative_prompt_embeds[0]\n                negative_prompt_embeds = negative_prompt_embeds.hidden_states[-2]\n                negative_prompt_embeds_list.append(negative_prompt_embeds)\n            negative_prompt_embeds = torch.concat(negative_prompt_embeds_list, dim=-1)\n\n        prompt_embeds = prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n        bs_embed, seq_len, _ = prompt_embeds.shape\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(bs_embed * num_images_per_prompt, seq_len, -1)\n\n        if do_classifier_free_guidance:\n            # duplicate unconditional embeddings for each generation per prompt, using mps friendly method\n            seq_len = negative_prompt_embeds.shape[1]\n            negative_prompt_embeds = negative_prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n            negative_prompt_embeds = negative_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds = negative_prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n        pooled_prompt_embeds = pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n            bs_embed * num_images_per_prompt, -1\n        )\n        if do_classifier_free_guidance:\n            negative_pooled_prompt_embeds = negative_pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n                bs_embed * num_images_per_prompt, -1\n            )\n\n        return prompt_embeds, negative_prompt_embeds, pooled_prompt_embeds, negative_pooled_prompt_embeds\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_extra_step_kwargs\n    def prepare_extra_step_kwargs(self, generator, eta):\n        # prepare extra kwargs for the scheduler step, since not all schedulers have the same signature\n        # eta (η) is only used with the DDIMScheduler, it will be ignored for other schedulers.\n        # eta corresponds to η in DDIM paper: https://arxiv.org/abs/2010.02502\n        # and should be between [0, 1]\n\n        accepts_eta = \"eta\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        extra_step_kwargs = {}\n        if accepts_eta:\n            extra_step_kwargs[\"eta\"] = eta\n\n        # check if the scheduler accepts generator\n        accepts_generator = \"generator\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        if accepts_generator:\n            extra_step_kwargs[\"generator\"] = generator\n        return extra_step_kwargs\n\n    def check_inputs(\n        self,\n        prompt,\n        prompt_2,\n        height,\n        width,\n        callback_steps,\n        negative_prompt=None,\n        negative_prompt_2=None,\n        prompt_embeds=None,\n        negative_prompt_embeds=None,\n        pooled_prompt_embeds=None,\n        negative_pooled_prompt_embeds=None,\n        num_images_per_prompt=None,\n    ):\n        if height % 8 != 0 or width % 8 != 0:\n            raise ValueError(f\"`height` and `width` have to be divisible by 8 but are {height} and {width}.\")\n\n        if (callback_steps is None) or (\n            callback_steps is not None and (not isinstance(callback_steps, int) or callback_steps <= 0)\n        ):\n            raise ValueError(\n                f\"`callback_steps` has to be a positive integer but is {callback_steps} of type\"\n                f\" {type(callback_steps)}.\"\n            )\n\n        if prompt is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt_2 is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt_2`: {prompt_2} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n        elif prompt_2 is not None and (not isinstance(prompt_2, str) and not isinstance(prompt_2, list)):\n            raise ValueError(f\"`prompt_2` has to be of type `str` or `list` but is {type(prompt_2)}\")\n\n        if negative_prompt is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n        elif negative_prompt_2 is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt_2`: {negative_prompt_2} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n\n        if prompt_embeds is not None and negative_prompt_embeds is not None:\n            if prompt_embeds.shape != negative_prompt_embeds.shape:\n                raise ValueError(\n                    \"`prompt_embeds` and `negative_prompt_embeds` must have the same shape when passed directly, but\"\n                    f\" got: `prompt_embeds` {prompt_embeds.shape} != `negative_prompt_embeds`\"\n                    f\" {negative_prompt_embeds.shape}.\"\n                )\n\n        if prompt_embeds is not None and pooled_prompt_embeds is None:\n            raise ValueError(\n                \"If `prompt_embeds` are provided, `pooled_prompt_embeds` also have to be passed. Make sure to generate `pooled_prompt_embeds` from the same text encoder that was used to generate `prompt_embeds`.\"\n            )\n\n        if negative_prompt_embeds is not None and negative_pooled_prompt_embeds is None:\n            raise ValueError(\n                \"If `negative_prompt_embeds` are provided, `negative_pooled_prompt_embeds` also have to be passed. Make sure to generate `negative_pooled_prompt_embeds` from the same text encoder that was used to generate `negative_prompt_embeds`.\"\n            )\n\n        # DemoFusion specific checks\n        if max(height, width) % 1024 != 0:\n            shared.log.error('DemoFusion: resolution={width}x{height} long side must be divisible by 1024')\n            return None\n\n        if num_images_per_prompt != 1:\n            shared.log.warning('DemoFusion: number of images per prompt is not support and will be ignored')\n            num_images_per_prompt = 1\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_latents\n    def prepare_latents(self, batch_size, num_channels_latents, height, width, dtype, device, generator, latents=None):\n        shape = (batch_size, num_channels_latents, height // self.vae_scale_factor, width // self.vae_scale_factor)\n        if isinstance(generator, list) and len(generator) != batch_size:\n            raise ValueError(\n                f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n            )\n\n        if latents is None:\n            latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n        else:\n            latents = latents.to(device)\n\n        # scale the initial noise by the standard deviation required by the scheduler\n        latents = latents * self.scheduler.init_noise_sigma\n        return latents\n\n    def _get_add_time_ids(self, original_size, crops_coords_top_left, target_size, dtype):\n        add_time_ids = list(original_size + crops_coords_top_left + target_size)\n\n        passed_add_embed_dim = (\n            self.unet.config.addition_time_embed_dim * len(add_time_ids) + self.text_encoder_2.config.projection_dim\n        )\n        expected_add_embed_dim = self.unet.add_embedding.linear_1.in_features\n\n        if expected_add_embed_dim != passed_add_embed_dim:\n            raise ValueError(\n                f\"Model expects an added time embedding vector of length {expected_add_embed_dim}, but a vector of {passed_add_embed_dim} was created. The model has an incorrect config. Please check `unet.config.time_embedding_type` and `text_encoder_2.config.projection_dim`.\"\n            )\n\n        add_time_ids = torch.tensor([add_time_ids], dtype=dtype)\n        return add_time_ids\n\n    def get_views(self, height, width, window_size=128, stride=64, random_jitter=False):\n        # Here, we define the mappings F_i (see Eq. 7 in the MultiDiffusion paper https://arxiv.org/abs/2302.08113)\n        # if panorama's height/width < window_size, num_blocks of height/width should return 1\n        height //= self.vae_scale_factor\n        width //= self.vae_scale_factor\n        num_blocks_height = int((height - window_size) / stride - 1e-6) + 2 if height > window_size else 1\n        num_blocks_width = int((width - window_size) / stride - 1e-6) + 2 if width > window_size else 1\n        total_num_blocks = int(num_blocks_height * num_blocks_width)\n        views = []\n        for i in range(total_num_blocks):\n            h_start = int((i // num_blocks_width) * stride)\n            h_end = h_start + window_size\n            w_start = int((i % num_blocks_width) * stride)\n            w_end = w_start + window_size\n\n            if h_end > height:\n                h_start = int(h_start + height - h_end)\n                h_end = int(height)\n            if w_end > width:\n                w_start = int(w_start + width - w_end)\n                w_end = int(width)\n            if h_start < 0:\n                h_end = int(h_end - h_start)\n                h_start = 0\n            if w_start < 0:\n                w_end = int(w_end - w_start)\n                w_start = 0\n\n            if random_jitter:\n                jitter_range = (window_size - stride) // 4\n                w_jitter = 0\n                h_jitter = 0\n                if (w_start != 0) and (w_end != width):\n                    w_jitter = random.randint(-jitter_range, jitter_range)\n                elif (w_start == 0) and (w_end != width):\n                    w_jitter = random.randint(-jitter_range, 0)\n                elif (w_start != 0) and (w_end == width):\n                    w_jitter = random.randint(0, jitter_range)\n                if (h_start != 0) and (h_end != height):\n                    h_jitter = random.randint(-jitter_range, jitter_range)\n                elif (h_start == 0) and (h_end != height):\n                    h_jitter = random.randint(-jitter_range, 0)\n                elif (h_start != 0) and (h_end == height):\n                    h_jitter = random.randint(0, jitter_range)\n                h_start += (h_jitter + jitter_range)\n                h_end += (h_jitter + jitter_range)\n                w_start += (w_jitter + jitter_range)\n                w_end += (w_jitter + jitter_range)\n\n            views.append((h_start, h_end, w_start, w_end))\n        return views\n\n    def tiled_decode(self, latents, current_height, current_width):\n        core_size = self.unet.config.sample_size // 4\n        core_stride = core_size\n        pad_size = self.unet.config.sample_size // 4 * 3\n        decoder_view_batch_size = 1\n\n        if self.lowvram:\n            core_stride = core_size // 2\n            pad_size = core_size\n\n        views = self.get_views(current_height, current_width, stride=core_stride, window_size=core_size)\n        views_batch = [views[i : i + decoder_view_batch_size] for i in range(0, len(views), decoder_view_batch_size)]\n        latents_ = F.pad(latents, (pad_size, pad_size, pad_size, pad_size), 'constant', 0)\n        image = torch.zeros(latents.size(0), 3, current_height, current_width).to(latents.device)\n        count = torch.zeros_like(image).to(latents.device)\n        # get the latents corresponding to the current view coordinates\n        with self.progress_bar(total=len(views_batch)) as progress_bar:\n            for j, batch_view in enumerate(views_batch):\n                len(batch_view)\n                latents_for_view = torch.cat(\n                    [\n                        latents_[:, :, h_start:h_end+pad_size*2, w_start:w_end+pad_size*2]\n                        for h_start, h_end, w_start, w_end in batch_view\n                    ]\n                ).to(self.vae.device)\n                image_patch = self.vae.decode(latents_for_view / self.vae.config.scaling_factor, return_dict=False)[0]\n                h_start, h_end, w_start, w_end = views[j]\n                h_start, h_end, w_start, w_end = h_start * self.vae_scale_factor, h_end * self.vae_scale_factor, w_start * self.vae_scale_factor, w_end * self.vae_scale_factor\n                p_h_start, p_h_end, p_w_start, p_w_end = pad_size * self.vae_scale_factor, image_patch.size(2) - pad_size * self.vae_scale_factor, pad_size * self.vae_scale_factor, image_patch.size(3) - pad_size * self.vae_scale_factor\n                image[:, :, h_start:h_end, w_start:w_end] += image_patch[:, :, p_h_start:p_h_end, p_w_start:p_w_end].to(latents.device)\n                count[:, :, h_start:h_end, w_start:w_end] += 1\n                progress_bar.update()\n        image = image / count\n\n        return image\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion_upscale.StableDiffusionUpscalePipeline.upcast_vae\n    def upcast_vae(self):\n        dtype = self.vae.dtype\n        self.vae.to(dtype=torch.float32)\n        use_torch_2_0_or_xformers = isinstance(\n            self.vae.decoder.mid_block.attentions[0].processor,\n            (\n                AttnProcessor2_0,\n                XFormersAttnProcessor,\n                FusedAttnProcessor2_0,\n            ),\n        )\n        # if xformers or torch_2_0 is used attention block does not need\n        # to be in float32 which can save lots of memory\n        if use_torch_2_0_or_xformers:\n            self.vae.post_quant_conv.to(dtype)\n            self.vae.decoder.conv_in.to(dtype)\n            self.vae.decoder.mid_block.to(dtype)\n\n    @torch.no_grad()\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        prompt_2: Optional[Union[str, List[str]]] = None,\n        height: Optional[int] = None,\n        width: Optional[int] = None,\n        num_inference_steps: int = 50,\n        denoising_end: Optional[float] = None,\n        guidance_scale: float = 5.0,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        negative_prompt_2: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        eta: float = 0.0,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.FloatTensor] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = False,\n        callback: Optional[Callable[[int, int, torch.FloatTensor], None]] = None,\n        callback_steps: int = 1,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        guidance_rescale: float = 0.0,\n        original_size: Optional[Tuple[int, int]] = None,\n        crops_coords_top_left: Tuple[int, int] = (0, 0),\n        target_size: Optional[Tuple[int, int]] = None,\n        negative_original_size: Optional[Tuple[int, int]] = None,\n        negative_crops_coords_top_left: Tuple[int, int] = (0, 0),\n        negative_target_size: Optional[Tuple[int, int]] = None,\n        ################### DemoFusion specific parameters ####################\n        view_batch_size: int = 16,\n        multi_decoder: bool = True,\n        stride: Optional[int] = 64,\n        cosine_scale_1: Optional[float] = 3.,\n        cosine_scale_2: Optional[float] = 1.,\n        cosine_scale_3: Optional[float] = 1.,\n        sigma: Optional[float] = 1.0,\n        lowvram: bool = False,\n    ):\n        r\"\"\"\n        Function invoked when calling the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide the image generation. If not defined, one has to pass `prompt_embeds`.\n                instead.\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders\n            height (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The height in pixels of the generated image. This is set to 1024 by default for the best results.\n                Anything below 512 pixels won't work well for\n                [stabilityai/stable-diffusion-xl-base-1.0](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0)\n                and checkpoints that are not specifically fine-tuned on low resolutions.\n            width (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The width in pixels of the generated image. This is set to 1024 by default for the best results.\n                Anything below 512 pixels won't work well for\n                [stabilityai/stable-diffusion-xl-base-1.0](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0)\n                and checkpoints that are not specifically fine-tuned on low resolutions.\n            num_inference_steps (`int`, *optional*, defaults to 50):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            denoising_end (`float`, *optional*):\n                When specified, determines the fraction (between 0.0 and 1.0) of the total denoising process to be\n                completed before it is intentionally prematurely terminated. As a result, the returned sample will\n                still retain a substantial amount of noise as determined by the discrete timesteps selected by the\n                scheduler. The denoising_end parameter should ideally be utilized when this pipeline forms a part of a\n                \"Mixture of Denoisers\" multi-pipeline setup, as elaborated in [**Refining the Image\n                Output**](https://huggingface.co/docs/diffusers/api/pipelines/stable_diffusion/stable_diffusion_xl#refining-the-image-output)\n            guidance_scale (`float`, *optional*, defaults to 5.0):\n                Guidance scale as defined in [Classifier-Free Diffusion Guidance](https://arxiv.org/abs/2207.12598).\n                `guidance_scale` is defined as `w` of equation 2. of [Imagen\n                Paper](https://arxiv.org/pdf/2205.11487.pdf). Guidance scale is enabled by setting `guidance_scale >\n                1`. Higher guidance scale encourages to generate images that are closely linked to the text `prompt`,\n                usually at the expense of lower image quality.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            eta (`float`, *optional*, defaults to 0.0):\n                Corresponds to parameter eta (η) in the DDIM paper: https://arxiv.org/abs/2010.02502. Only applies to\n                [`schedulers.DDIMScheduler`], will be ignored for others.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                One or a list of [torch generator(s)](https://pytorch.org/docs/stable/generated/torch.Generator.html)\n                to make generation deterministic.\n            latents (`torch.FloatTensor`, *optional*):\n                Pre-generated noisy latents, sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor will ge generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generate image. Choose between\n                [PIL](https://pillow.readthedocs.io/en/stable/): `PIL.Image.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] instead\n                of a plain tuple.\n            callback (`Callable`, *optional*):\n                A function that will be called every `callback_steps` steps during inference. The function will be\n                called with the following arguments: `callback(step: int, timestep: int, latents: torch.FloatTensor)`.\n            callback_steps (`int`, *optional*, defaults to 1):\n                The frequency at which the `callback` function will be called. If not specified, the callback will be\n                called at every step.\n            cross_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            guidance_rescale (`float`, *optional*, defaults to 0.7):\n                Guidance rescale factor proposed by [Common Diffusion Noise Schedules and Sample Steps are\n                Flawed](https://arxiv.org/pdf/2305.08891.pdf) `guidance_scale` is defined as `φ` in equation 16. of\n                [Common Diffusion Noise Schedules and Sample Steps are Flawed](https://arxiv.org/pdf/2305.08891.pdf).\n                Guidance rescale factor should fix overexposure when using zero terminal SNR.\n            original_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                If `original_size` is not the same as `target_size` the image will appear to be down- or upsampled.\n                `original_size` defaults to `(width, height)` if not specified. Part of SDXL's micro-conditioning as\n                explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            crops_coords_top_left (`Tuple[int]`, *optional*, defaults to (0, 0)):\n                `crops_coords_top_left` can be used to generate an image that appears to be \"cropped\" from the position\n                `crops_coords_top_left` downwards. Favorable, well-centered images are usually achieved by setting\n                `crops_coords_top_left` to (0, 0). Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            target_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                For most cases, `target_size` should be set to the desired height and width of the generated image. If\n                not specified it will default to `(width, height)`. Part of SDXL's micro-conditioning as explained in\n                section 2.2 of [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            negative_original_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                To negatively condition the generation process based on a specific image resolution. Part of SDXL's\n                micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). For more\n                information, refer to this issue thread: https://github.com/huggingface/diffusers/issues/4208.\n            negative_crops_coords_top_left (`Tuple[int]`, *optional*, defaults to (0, 0)):\n                To negatively condition the generation process based on a specific crop coordinates. Part of SDXL's\n                micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). For more\n                information, refer to this issue thread: https://github.com/huggingface/diffusers/issues/4208.\n            negative_target_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                To negatively condition the generation process based on a target image resolution. It should be as same\n                as the `target_size` for most cases. Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). For more\n                information, refer to this issue thread: https://github.com/huggingface/diffusers/issues/4208.\n            ################### DemoFusion specific parameters ####################\n            view_batch_size (`int`, defaults to 16):\n                The batch size for multiple denoising paths. Typically, a larger batch size can result in higher\n                efficiency but comes with increased GPU memory requirements.\n            multi_decoder (`bool`, defaults to True):\n                Determine whether to use a tiled decoder. Generally, when the resolution exceeds 3072x3072,\n                a tiled decoder becomes necessary.\n            stride (`int`, defaults to 64):\n                The stride of moving local patches. A smaller stride is better for alleviating seam issues,\n                but it also introduces additional computational overhead and inference time.\n            cosine_scale_1 (`float`, defaults to 3):\n                Control the strength of skip-residual. For specific impacts, please refer to Appendix C\n                in the DemoFusion paper.\n            cosine_scale_2 (`float`, defaults to 1):\n                Control the strength of dilated sampling. For specific impacts, please refer to Appendix C\n                in the DemoFusion paper.\n            cosine_scale_3 (`float`, defaults to 1):\n                Control the strength of the gaussion filter. For specific impacts, please refer to Appendix C\n                in the DemoFusion paper.\n            sigma (`float`, defaults to 1):\n                The standard value of the gaussian filter.\n            show_image (`bool`, defaults to False):\n                Determine whether to show intermediate results during generation.\n            lowvram (`bool`, defaults to False):\n                Try to fit in 8 Gb of VRAM, with xformers installed.\n\n        Examples:\n\n        Returns:\n            a `list` with the generated images at each phase.\n        \"\"\"\n\n        # 0. Default height and width to unet\n        height = height or self.default_sample_size * self.vae_scale_factor\n        width = width or self.default_sample_size * self.vae_scale_factor\n\n        x1_size = self.default_sample_size * self.vae_scale_factor\n\n        height_scale = height / x1_size\n        width_scale = width / x1_size\n        scale_num = int(max(height_scale, width_scale))\n        aspect_ratio = min(height_scale, width_scale) / max(height_scale, width_scale)\n\n        original_size = original_size or (height, width)\n        target_size = target_size or (height, width)\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            prompt_2,\n            height,\n            width,\n            callback_steps,\n            negative_prompt,\n            negative_prompt_2,\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n            num_images_per_prompt,\n        )\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        device = self._execution_device\n        self.lowvram = lowvram # pylint: disable=attribute-defined-outside-init\n        if self.lowvram:\n            self.vae.cpu()\n            self.unet.cpu()\n            self.text_encoder.to(device)\n            self.text_encoder_2.to(device)\n\n        # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2)\n        # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1`\n        # corresponds to doing no classifier free guidance.\n        do_classifier_free_guidance = guidance_scale > 1.0\n\n        # 3. Encode input prompt\n        text_encoder_lora_scale = (\n            cross_attention_kwargs.get(\"scale\", None) if cross_attention_kwargs is not None else None\n        )\n        (\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n        ) = self.encode_prompt(\n            prompt=prompt,\n            prompt_2=prompt_2,\n            device=device,\n            num_images_per_prompt=num_images_per_prompt,\n            do_classifier_free_guidance=do_classifier_free_guidance,\n            negative_prompt=negative_prompt,\n            negative_prompt_2=negative_prompt_2,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            negative_pooled_prompt_embeds=negative_pooled_prompt_embeds,\n            lora_scale=text_encoder_lora_scale,\n        )\n\n        # 4. Prepare timesteps\n        self.scheduler.set_timesteps(num_inference_steps, device=device)\n\n        timesteps = self.scheduler.timesteps\n\n        # 5. Prepare latent variables\n        num_channels_latents = self.unet.config.in_channels\n        latents = self.prepare_latents(\n            batch_size * num_images_per_prompt,\n            num_channels_latents,\n            height // scale_num,\n            width // scale_num,\n            prompt_embeds.dtype,\n            device,\n            generator,\n            latents,\n        )\n\n        # 6. Prepare extra step kwargs. Logic should ideally just be moved out of the pipeline\n        extra_step_kwargs = self.prepare_extra_step_kwargs(generator, eta)\n\n        # 7. Prepare added time ids & embeddings\n        add_text_embeds = pooled_prompt_embeds\n        add_time_ids = self._get_add_time_ids(\n            original_size, crops_coords_top_left, target_size, dtype=prompt_embeds.dtype\n        )\n        if negative_original_size is not None and negative_target_size is not None:\n            negative_add_time_ids = self._get_add_time_ids(\n                negative_original_size,\n                negative_crops_coords_top_left,\n                negative_target_size,\n                dtype=prompt_embeds.dtype,\n            )\n        else:\n            negative_add_time_ids = add_time_ids\n\n        if do_classifier_free_guidance:\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds], dim=0)\n            add_text_embeds = torch.cat([negative_pooled_prompt_embeds, add_text_embeds], dim=0)\n            add_time_ids = torch.cat([negative_add_time_ids, add_time_ids], dim=0)\n        del negative_prompt_embeds, negative_pooled_prompt_embeds, negative_add_time_ids\n\n        prompt_embeds = prompt_embeds.to(device)\n        add_text_embeds = add_text_embeds.to(device)\n        add_time_ids = add_time_ids.to(device).repeat(batch_size * num_images_per_prompt, 1)\n\n        # 8. Denoising loop\n        num_warmup_steps = max(len(timesteps) - num_inference_steps * self.scheduler.order, 0)\n\n        # 7.1 Apply denoising_end\n        if denoising_end is not None and isinstance(denoising_end, float) and denoising_end > 0 and denoising_end < 1:\n            discrete_timestep_cutoff = int(\n                round(\n                    self.scheduler.config.num_train_timesteps # pylint: disable=no-member\n                    - (denoising_end * self.scheduler.config.num_train_timesteps) # pylint: disable=no-member\n                )\n            )\n            num_inference_steps = len(list(filter(lambda ts: ts >= discrete_timestep_cutoff, timesteps)))\n            timesteps = timesteps[:num_inference_steps]\n\n        output_images = []\n\n    ############################################################### Phase 1 #################################################################\n\n        if self.lowvram:\n            self.text_encoder.cpu()\n            self.text_encoder_2.cpu()\n\n        shared.log.debug('DemoFusion: phase=1 denoising')\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n\n                if self.lowvram:\n                    self.vae.cpu()\n                    self.unet.to(device)\n\n                latents_for_view = latents\n\n                # expand the latents if we are doing classifier free guidance\n                latent_model_input = (\n                    latents.repeat_interleave(2, dim=0)\n                    if do_classifier_free_guidance\n                    else latents\n                )\n                latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n                # predict the noise residual\n                added_cond_kwargs = {\"text_embeds\": add_text_embeds, \"time_ids\": add_time_ids}\n                noise_pred = self.unet(\n                    latent_model_input,\n                    t,\n                    encoder_hidden_states=prompt_embeds,\n                    cross_attention_kwargs=cross_attention_kwargs,\n                    added_cond_kwargs=added_cond_kwargs,\n                    return_dict=False,\n                )[0]\n\n                # perform guidance\n                if do_classifier_free_guidance:\n                    noise_pred_uncond, noise_pred_text = noise_pred[::2], noise_pred[1::2]\n                    noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                if do_classifier_free_guidance and guidance_rescale > 0.0:\n                    # Based on 3.4. in https://arxiv.org/pdf/2305.08891.pdf\n                    noise_pred = rescale_noise_cfg(noise_pred, noise_pred_text, guidance_rescale=guidance_rescale)\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents = self.scheduler.step(noise_pred, t, latents, **extra_step_kwargs, return_dict=False)[0]\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n                    if callback is not None and i % callback_steps == 0:\n                        step_idx = i // getattr(self.scheduler, \"order\", 1)\n                        callback(step_idx, t, latents)\n\n            anchor_mean = latents.mean()\n            anchor_std = latents.std()\n            del latents_for_view, latent_model_input, noise_pred, noise_pred_text, noise_pred_uncond\n            if self.lowvram:\n                latents = latents.cpu()\n                torch.cuda.empty_cache()\n            if output_type != \"latent\":\n                # make sure the VAE is in float32 mode, as it overflows in float16\n                needs_upcasting = self.vae.dtype == torch.float16 and self.vae.config.force_upcast\n\n                if self.lowvram:\n                    needs_upcasting = False # use madebyollin/sdxl-vae-fp16-fix in lowvram mode!\n                    self.unet.cpu()\n                    self.vae.to(device)\n\n                if needs_upcasting:\n                    self.upcast_vae()\n                    latents = latents.to(next(iter(self.vae.post_quant_conv.parameters())).dtype)\n                    shared.log.debug('DemoFusion: phase=1 decoding')\n                if self.lowvram and multi_decoder:\n                    current_width_height = self.unet.config.sample_size * self.vae_scale_factor\n                    image = self.tiled_decode(latents, current_width_height, current_width_height)\n                else:\n                    image = self.vae.decode(latents / self.vae.config.scaling_factor, return_dict=False)[0]\n                # cast back to fp16 if needed\n                if needs_upcasting:\n                    self.vae.to(dtype=torch.float16)\n                image = self.image_processor.postprocess(image, output_type=output_type)\n                output_images.append(image[0])\n            else:\n                output_images.append(latents)\n\n    ####################################################### Phase 2+ #####################################################\n        for current_scale_num in range(2, scale_num + 1):\n            if self.lowvram:\n                latents = latents.to(device)\n                self.unet.to(device)\n                torch.cuda.empty_cache()\n            shared.log.debug(f'DemoFusion: phase={current_scale_num} denoising')\n            current_height = self.unet.config.sample_size * self.vae_scale_factor * current_scale_num\n            current_width = self.unet.config.sample_size * self.vae_scale_factor * current_scale_num\n            if height > width:\n                current_width = int(current_width * aspect_ratio)\n            else:\n                current_height = int(current_height * aspect_ratio)\n\n            latents = F.interpolate(latents.to(device), size=(int(current_height / self.vae_scale_factor), int(current_width / self.vae_scale_factor)), mode='bicubic')\n\n            noise_latents = []\n            noise = torch.randn_like(latents)\n            for timestep in timesteps:\n                noise_latent = self.scheduler.add_noise(latents, noise, timestep.unsqueeze(0))\n                noise_latents.append(noise_latent)\n            latents = noise_latents[0]\n\n            with self.progress_bar(total=num_inference_steps) as progress_bar:\n                for i, t in enumerate(timesteps):\n                    count = torch.zeros_like(latents)\n                    value = torch.zeros_like(latents)\n                    cosine_factor = 0.5 * (1 + torch.cos(torch.pi * (self.scheduler.config.num_train_timesteps - t) / self.scheduler.config.num_train_timesteps)).cpu() # pylint: disable=no-member\n\n                    c1 = cosine_factor ** cosine_scale_1\n                    latents = latents * (1 - c1) + noise_latents[i] * c1\n\n                    ############################################# MultiDiffusion #############################################\n\n                    views = self.get_views(current_height, current_width, stride=stride, window_size=self.unet.config.sample_size, random_jitter=True)\n                    views_batch = [views[i : i + view_batch_size] for i in range(0, len(views), view_batch_size)]\n\n                    jitter_range = (self.unet.config.sample_size - stride) // 4\n                    latents_ = F.pad(latents, (jitter_range, jitter_range, jitter_range, jitter_range), 'constant', 0)\n\n                    count_local = torch.zeros_like(latents_)\n                    value_local = torch.zeros_like(latents_)\n\n                    for _j, batch_view in enumerate(views_batch):\n                        vb_size = len(batch_view)\n\n                        # get the latents corresponding to the current view coordinates\n                        latents_for_view = torch.cat(\n                            [\n                                latents_[:, :, h_start:h_end, w_start:w_end]\n                                for h_start, h_end, w_start, w_end in batch_view\n                            ]\n                        )\n\n                        # expand the latents if we are doing classifier free guidance\n                        latent_model_input = latents_for_view\n                        latent_model_input = (\n                            latent_model_input.repeat_interleave(2, dim=0)\n                            if do_classifier_free_guidance\n                            else latent_model_input\n                        )\n                        latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n                        prompt_embeds_input = torch.cat([prompt_embeds] * vb_size)\n                        add_text_embeds_input = torch.cat([add_text_embeds] * vb_size)\n                        add_time_ids_input = []\n                        for h_start, _h_end, w_start, _w_end in batch_view:\n                            add_time_ids_ = add_time_ids.clone()\n                            add_time_ids_[:, 2] = h_start * self.vae_scale_factor\n                            add_time_ids_[:, 3] = w_start * self.vae_scale_factor\n                            add_time_ids_input.append(add_time_ids_)\n                        add_time_ids_input = torch.cat(add_time_ids_input)\n\n                        # predict the noise residual\n                        added_cond_kwargs = {\"text_embeds\": add_text_embeds_input, \"time_ids\": add_time_ids_input}\n                        noise_pred = self.unet(\n                            latent_model_input,\n                            t,\n                            encoder_hidden_states=prompt_embeds_input,\n                            cross_attention_kwargs=cross_attention_kwargs,\n                            added_cond_kwargs=added_cond_kwargs,\n                            return_dict=False,\n                        )[0]\n\n                        if do_classifier_free_guidance:\n                            noise_pred_uncond, noise_pred_text = noise_pred[::2], noise_pred[1::2]\n                            noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                        if do_classifier_free_guidance and guidance_rescale > 0.0:\n                            # Based on 3.4. in https://arxiv.org/pdf/2305.08891.pdf\n                            noise_pred = rescale_noise_cfg(noise_pred, noise_pred_text, guidance_rescale=guidance_rescale)\n\n                        # compute the previous noisy sample x_t -> x_t-1\n                        self.scheduler._init_step_index(t) # pylint: disable=no-member\n                        latents_denoised_batch = self.scheduler.step(\n                            noise_pred, t, latents_for_view, **extra_step_kwargs, return_dict=False)[0]\n\n                        # extract value from batch\n                        for latents_view_denoised, (h_start, h_end, w_start, w_end) in zip(\n                            latents_denoised_batch.chunk(vb_size), batch_view\n                        ):\n                            value_local[:, :, h_start:h_end, w_start:w_end] += latents_view_denoised\n                            count_local[:, :, h_start:h_end, w_start:w_end] += 1\n\n                    value_local = value_local[: ,:, jitter_range: jitter_range + current_height // self.vae_scale_factor, jitter_range: jitter_range + current_width // self.vae_scale_factor]\n                    count_local = count_local[: ,:, jitter_range: jitter_range + current_height // self.vae_scale_factor, jitter_range: jitter_range + current_width // self.vae_scale_factor]\n\n                    c2 = cosine_factor ** cosine_scale_2\n\n                    value += value_local / count_local * (1 - c2)\n                    count += torch.ones_like(value_local) * (1 - c2)\n\n                    ############################################# Dilated Sampling #############################################\n\n                    views = [[h, w] for h in range(current_scale_num) for w in range(current_scale_num)]\n                    views_batch = [views[i : i + view_batch_size] for i in range(0, len(views), view_batch_size)]\n\n                    h_pad = (current_scale_num - (latents.size(2) % current_scale_num)) % current_scale_num\n                    w_pad = (current_scale_num - (latents.size(3) % current_scale_num)) % current_scale_num\n                    latents_ = F.pad(latents, (w_pad, 0, h_pad, 0), 'constant', 0)\n\n                    count_global = torch.zeros_like(latents_)\n                    value_global = torch.zeros_like(latents_)\n\n                    c3 = 0.99 * cosine_factor ** cosine_scale_3 + 1e-2\n                    std_, mean_ = latents_.std(), latents_.mean()\n                    latents_gaussian = gaussian_filter(latents_, kernel_size=(2*current_scale_num-1), sigma=sigma*c3)\n                    latents_gaussian = (latents_gaussian - latents_gaussian.mean()) / latents_gaussian.std() * std_ + mean_\n\n                    for _j, batch_view in enumerate(views_batch):\n                        latents_for_view = torch.cat(\n                            [\n                                latents_[:, :, h::current_scale_num, w::current_scale_num]\n                                for h, w in batch_view\n                            ]\n                        )\n                        latents_for_view_gaussian = torch.cat(\n                            [\n                                latents_gaussian[:, :, h::current_scale_num, w::current_scale_num]\n                                for h, w in batch_view\n                            ]\n                        )\n\n                        vb_size = latents_for_view.size(0)\n\n                        # expand the latents if we are doing classifier free guidance\n                        latent_model_input = latents_for_view_gaussian\n                        latent_model_input = (\n                            latent_model_input.repeat_interleave(2, dim=0)\n                            if do_classifier_free_guidance\n                            else latent_model_input\n                        )\n                        latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n                        prompt_embeds_input = torch.cat([prompt_embeds] * vb_size)\n                        add_text_embeds_input = torch.cat([add_text_embeds] * vb_size)\n                        add_time_ids_input = torch.cat([add_time_ids] * vb_size)\n\n                        # predict the noise residual\n                        added_cond_kwargs = {\"text_embeds\": add_text_embeds_input, \"time_ids\": add_time_ids_input}\n                        noise_pred = self.unet(\n                            latent_model_input,\n                            t,\n                            encoder_hidden_states=prompt_embeds_input,\n                            cross_attention_kwargs=cross_attention_kwargs,\n                            added_cond_kwargs=added_cond_kwargs,\n                            return_dict=False,\n                        )[0]\n\n                        if do_classifier_free_guidance:\n                            noise_pred_uncond, noise_pred_text = noise_pred[::2], noise_pred[1::2]\n                            noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                        if do_classifier_free_guidance and guidance_rescale > 0.0:\n                            # Based on 3.4. in https://arxiv.org/pdf/2305.08891.pdf\n                            noise_pred = rescale_noise_cfg(noise_pred, noise_pred_text, guidance_rescale=guidance_rescale)\n\n                        # compute the previous noisy sample x_t -> x_t-1\n                        self.scheduler._init_step_index(t) # pylint: disable=no-member\n                        latents_denoised_batch = self.scheduler.step(\n                            noise_pred, t, latents_for_view, **extra_step_kwargs, return_dict=False)[0]\n\n                        # extract value from batch\n                        for latents_view_denoised, (h, w) in zip(\n                            latents_denoised_batch.chunk(vb_size), batch_view\n                        ):\n                            value_global[:, :, h::current_scale_num, w::current_scale_num] += latents_view_denoised\n                            count_global[:, :, h::current_scale_num, w::current_scale_num] += 1\n\n                    c2 = cosine_factor ** cosine_scale_2\n\n                    value_global = value_global[: ,:, h_pad:, w_pad:]\n\n                    value += value_global * c2\n                    count += torch.ones_like(value_global) * c2\n\n                           ###########################################################\n\n                    latents = torch.where(count > 0, value / count, value)\n\n                    # call the callback, if provided\n                    if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                        progress_bar.update()\n                        if callback is not None and i % callback_steps == 0:\n                            step_idx = i // getattr(self.scheduler, \"order\", 1)\n                            callback(step_idx, t, latents)\n\n    #########################################################################################################################################\n\n                latents = (latents - latents.mean()) / latents.std() * anchor_std + anchor_mean\n                if self.lowvram:\n                    latents = latents.cpu()\n                    torch.cuda.empty_cache()\n                if output_type != \"latent\":\n                    # make sure the VAE is in float32 mode, as it overflows in float16\n                    needs_upcasting = self.vae.dtype == torch.float16 and self.vae.config.force_upcast\n\n                    if self.lowvram:\n                        needs_upcasting = False # use madebyollin/sdxl-vae-fp16-fix in lowvram mode!\n                        self.unet.cpu()\n                        self.vae.to(device)\n\n                    if needs_upcasting:\n                        self.upcast_vae()\n                        latents = latents.to(next(iter(self.vae.post_quant_conv.parameters())).dtype)\n\n                    shared.log.debug(f'DemoFusion: phase={current_scale_num} decoding')\n                    if multi_decoder:\n                        image = self.tiled_decode(latents, current_height, current_width)\n                    else:\n                        image = self.vae.decode(latents / self.vae.config.scaling_factor, return_dict=False)[0]\n\n                    # cast back to fp16 if needed\n                    if needs_upcasting:\n                        self.vae.to(dtype=torch.float16)\n                    image = self.image_processor.postprocess(image, output_type=output_type)\n                    output_images.append(image[0])\n                else:\n                    image = latents\n                    output_images.append(image)\n\n        # Offload all models\n        self.maybe_free_model_hooks()\n        output = ImagePipelineOutput(images=output_images)\n        return output\n\n    # Overrride to properly handle the loading and unloading of the additional text encoder.\n    def load_lora_weights(self, pretrained_model_name_or_path_or_dict: Union[str, Dict[str, torch.Tensor]], **kwargs): # pylint: disable=arguments-differ\n        # We could have accessed the unet config from `lora_state_dict()` too. We pass\n        # it here explicitly to be able to tell that it's coming from an SDXL\n        # pipeline.\n\n        # Remove any existing hooks.\n        if is_accelerate_available() and is_accelerate_version(\">=\", \"0.17.0.dev0\"):\n            from accelerate.hooks import AlignDevicesHook, CpuOffload, remove_hook_from_module\n        else:\n            raise ImportError(\"Offloading requires `accelerate v0.17.0` or higher.\")\n\n        is_model_cpu_offload = False\n        is_sequential_cpu_offload = False\n        recursive = False\n        for _, component in self.components.items():\n            if isinstance(component, torch.nn.Module):\n                if hasattr(component, \"_hf_hook\"):\n                    is_model_cpu_offload = isinstance(component._hf_hook, CpuOffload) # pylint: disable=protected-access\n                    is_sequential_cpu_offload = isinstance(component._hf_hook, AlignDevicesHook) # pylint: disable=protected-access\n                    shared.log.info(\"Accelerate hooks detected. Since you have called `load_lora_weights()`, the previous hooks will be first removed. Then the LoRA parameters will be loaded and the hooks will be applied again.\")\n                    recursive = is_sequential_cpu_offload\n                    remove_hook_from_module(component, recurse=recursive)\n        state_dict, network_alphas = self.lora_state_dict(\n            pretrained_model_name_or_path_or_dict,\n            unet_config=self.unet.config,\n            **kwargs,\n        )\n        self.load_lora_into_unet(state_dict, network_alphas=network_alphas, unet=self.unet)\n\n        text_encoder_state_dict = {k: v for k, v in state_dict.items() if \"text_encoder.\" in k}\n        if len(text_encoder_state_dict) > 0:\n            self.load_lora_into_text_encoder(\n                text_encoder_state_dict,\n                network_alphas=network_alphas,\n                text_encoder=self.text_encoder,\n                prefix=\"text_encoder\",\n                lora_scale=self.lora_scale,\n            )\n\n        text_encoder_2_state_dict = {k: v for k, v in state_dict.items() if \"text_encoder_2.\" in k}\n        if len(text_encoder_2_state_dict) > 0:\n            self.load_lora_into_text_encoder(\n                text_encoder_2_state_dict,\n                network_alphas=network_alphas,\n                text_encoder=self.text_encoder_2,\n                prefix=\"text_encoder_2\",\n                lora_scale=self.lora_scale,\n            )\n\n        # Offload back.\n        if is_model_cpu_offload:\n            self.enable_model_cpu_offload()\n        elif is_sequential_cpu_offload:\n            self.enable_sequential_cpu_offload()\n\n    def _remove_text_encoder_monkey_patch(self):\n        self._remove_text_encoder_monkey_patch_classmethod(self.text_encoder)\n        self._remove_text_encoder_monkey_patch_classmethod(self.text_encoder_2)\n\n\n### Script definition\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return 'DemoFusion: High-Resolution Image Generation'\n\n    def show(self, is_img2img):\n        return not is_img2img\n\n    # return signature is array of gradio components\n    def ui(self, _is_img2img):\n        with gr.Row():\n            gr.HTML('<a href=\"https://github.com/PRIS-CV/DemoFusion\">&nbsp DemoFusion: High-Resolution Image Generation</a><br>')\n        with gr.Row():\n            cosine_scale_1 = gr.Slider(minimum=0, maximum=5, step=0.1, value=3, label=\"Cosine scale 1\")\n            cosine_scale_2 = gr.Slider(minimum=0, maximum=5, step=0.1, value=1, label=\"Cosine scale 2\")\n            cosine_scale_3 = gr.Slider(minimum=0, maximum=5, step=0.1, value=1, label=\"Cosine scale 3\")\n        with gr.Row():\n            view_batch_size = gr.Slider(minimum=4, maximum=32, step=4, value=8, label=\"Denoising batch size\")\n            sigma = gr.Slider(minimum=0.1, maximum=1, step=0.1, value=0.8, label=\"Sigma\")\n            stride = gr.Slider(minimum=8, maximum=96, step=8, value=64, label=\"Stride\")\n        with gr.Row():\n            multi_decoder = gr.Checkbox(label=\"Multi decoder\", value=True)\n        return [cosine_scale_1, cosine_scale_2, cosine_scale_3, sigma, view_batch_size, stride, multi_decoder]\n\n    def run(self, p: processing.StableDiffusionProcessing, cosine_scale_1, cosine_scale_2, cosine_scale_3, sigma, view_batch_size, stride, multi_decoder): # pylint: disable=arguments-differ\n        c = shared.sd_model.__class__.__name__ if shared.sd_loaded else ''\n        if c != 'StableDiffusionXLPipeline':\n            shared.log.warning(f'DemoFusion: pipeline={c} required=StableDiffusionXLPipeline')\n            return None\n        p.task_args['cosine_scale_1'] = cosine_scale_1\n        p.task_args['cosine_scale_2'] = cosine_scale_2\n        p.task_args['cosine_scale_3'] = cosine_scale_3\n        p.task_args['sigma'] = sigma\n        p.task_args['view_batch_size'] = view_batch_size\n        p.task_args['stride'] = stride\n        p.task_args['multi_decoder'] = multi_decoder\n        p.task_args['output_type'] = 'np'\n        p.task_args['low_vram'] = True\n        shared.log.debug(f'DemoFusion: {p.task_args}')\n        old_pipe = shared.sd_model\n        new_pipe = DemoFusionSDXLPipeline(\n            vae = shared.sd_model.vae,\n            text_encoder=shared.sd_model.text_encoder,\n            text_encoder_2=shared.sd_model.text_encoder_2,\n            tokenizer=shared.sd_model.tokenizer,\n            tokenizer_2=shared.sd_model.tokenizer_2,\n            unet=shared.sd_model.unet,\n            scheduler=shared.sd_model.scheduler,\n            force_zeros_for_empty_prompt=shared.opts.diffusers_force_zeros,\n        )\n        shared.sd_model = new_pipe\n        sd_models.move_model(shared.sd_model, devices.device) # move pipeline to device\n        sd_models.set_diffuser_options(shared.sd_model, vae=None, op='model')\n        shared.log.debug(f'DemoFusion create: pipeline={shared.sd_model.__class__.__name__}')\n        processed = processing.process_images(p)\n        shared.sd_model = old_pipe\n        return processed\n"
  },
  {
    "path": "scripts/differential_diffusion.py",
    "content": "\"\"\"\ncredits: https://github.com/exx8/differential-diffusion\ncode from: https://github.com/exx8/differential-diffusion/blob/main/SDXL/diff_pipe.py\nsdnext implementation follows after pipeline-end\n\"\"\"\n\n### pipeline start\n\nimport inspect\nimport hashlib\nfrom typing import Any, Callable, Dict, List, Optional, Tuple, Union\nfrom packaging import version\n\nimport PIL.Image\nimport numpy as np\nimport torch\nimport torchvision\nfrom transformers import CLIPImageProcessor, CLIPTextModel, CLIPTextModelWithProjection, CLIPTokenizer\nfrom diffusers.image_processor import VaeImageProcessor\nfrom diffusers.loaders import FromSingleFileMixin, LoraLoaderMixin, TextualInversionLoaderMixin\nfrom diffusers.models import AutoencoderKL, UNet2DConditionModel\nfrom diffusers.models.attention_processor import AttnProcessor2_0, FusedAttnProcessor2_0, XFormersAttnProcessor\nfrom diffusers.configuration_utils import FrozenDict\nfrom diffusers.schedulers import KarrasDiffusionSchedulers\nfrom diffusers.utils import PIL_INTERPOLATION, logging, deprecate, is_accelerate_available, is_accelerate_version, replace_example_docstring\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline\nfrom diffusers.pipelines.stable_diffusion_xl.pipeline_output import StableDiffusionXLPipelineOutput\nfrom diffusers.pipelines.stable_diffusion.pipeline_output import StableDiffusionPipelineOutput\nfrom diffusers.pipelines.stable_diffusion.safety_checker import StableDiffusionSafetyChecker\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\nEXAMPLE_DOC_STRING = \"\"\"\n    Examples:\n        ```py\n        >>> import torch\n        >>> from diffusers import StableDiffusionXLImg2ImgPipeline\n        >>> from diffusers.utils import load_image\n\n        >>> pipe = StableDiffusionXLImg2ImgPipeline.from_pretrained(\n        ...     \"stabilityai/stable-diffusion-xl-refiner-1.0\", torch_dtype=torch.float16\n        ... )\n        >>> pipe = pipe.to(\"cuda\")\n        >>> url = \"https://huggingface.co/datasets/patrickvonplaten/images/resolve/main/aa_xl/000000009.png\"\n\n        >>> init_image = load_image(url).convert(\"RGB\")\n        >>> prompt = \"a photo of an astronaut riding a horse on mars\"\n        >>> image = pipe(prompt, image=init_image).images[0]\n        ```\n\"\"\"\n\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.rescale_noise_cfg\ndef rescale_noise_cfg(noise_cfg, noise_pred_text, guidance_rescale=0.0):\n    \"\"\"\n    Rescale `noise_cfg` according to `guidance_rescale`. Based on findings of [Common Diffusion Noise Schedules and\n    Sample Steps are Flawed](https://arxiv.org/pdf/2305.08891.pdf). See Section 3.4\n    \"\"\"\n    std_text = noise_pred_text.std(dim=list(range(1, noise_pred_text.ndim)), keepdim=True)\n    std_cfg = noise_cfg.std(dim=list(range(1, noise_cfg.ndim)), keepdim=True)\n    # rescale the results from guidance (fixes overexposure)\n    noise_pred_rescaled = noise_cfg * (std_text / std_cfg)\n    # mix with the original results from guidance by factor guidance_rescale to avoid \"plain looking\" images\n    noise_cfg = guidance_rescale * noise_pred_rescaled + (1 - guidance_rescale) * noise_cfg\n    return noise_cfg\n\n\nclass StableDiffusionXLDiffImg2ImgPipeline(DiffusionPipeline, FromSingleFileMixin, LoraLoaderMixin):\n    r\"\"\"\n    Pipeline for text-to-image generation using Stable Diffusion XL.\n\n    This model inherits from [`DiffusionPipeline`]. Check the superclass documentation for the generic methods the\n    library implements for all the pipelines (such as downloading or saving, running on a particular device, etc.)\n\n    In addition the pipeline inherits the following loading methods:\n        - *Textual-Inversion*: [`loaders.TextualInversionLoaderMixin.load_textual_inversion`]\n        - *LoRA*: [`loaders.LoraLoaderMixin.load_lora_weights`]\n        - *Ckpt*: [`loaders.FromSingleFileMixin.from_single_file`]\n\n    as well as the following saving methods:\n        - *LoRA*: [`loaders.LoraLoaderMixin.save_lora_weights`]\n\n    Args:\n        vae ([`AutoencoderKL`]):\n            Variational Auto-Encoder (VAE) Model to encode and decode images to and from latent representations.\n        text_encoder ([`CLIPTextModel`]):\n            Frozen text-encoder. Stable Diffusion XL uses the text portion of\n            [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModel), specifically\n            the [clip-vit-large-patch14](https://huggingface.co/openai/clip-vit-large-patch14) variant.\n        text_encoder_2 ([` CLIPTextModelWithProjection`]):\n            Second frozen text-encoder. Stable Diffusion XL uses the text and pool portion of\n            [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModelWithProjection),\n            specifically the\n            [laion/CLIP-ViT-bigG-14-laion2B-39B-b160k](https://huggingface.co/laion/CLIP-ViT-bigG-14-laion2B-39B-b160k)\n            variant.\n        tokenizer (`CLIPTokenizer`):\n            Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer).\n        tokenizer_2 (`CLIPTokenizer`):\n            Second Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer).\n        unet ([`UNet2DConditionModel`]): Conditional U-Net architecture to denoise the encoded image latents.\n        scheduler ([`SchedulerMixin`]):\n            A scheduler to be used in combination with `unet` to denoise the encoded image latents. Can be one of\n            [`DDIMScheduler`], [`LMSDiscreteScheduler`], or [`PNDMScheduler`].\n    \"\"\"\n    _optional_components = [\"tokenizer\", \"text_encoder\"]\n\n    def __init__(\n        self,\n        vae: AutoencoderKL,\n        text_encoder: CLIPTextModel,\n        text_encoder_2: CLIPTextModelWithProjection,\n        tokenizer: CLIPTokenizer,\n        tokenizer_2: CLIPTokenizer,\n        unet: UNet2DConditionModel,\n        scheduler: KarrasDiffusionSchedulers,\n        requires_aesthetics_score: bool = False,\n        force_zeros_for_empty_prompt: bool = True,\n        add_watermarker: Optional[bool] = None, # pylint: disable=unused-argument\n    ):\n        super().__init__()\n\n        self.register_modules(\n            vae=vae,\n            text_encoder=text_encoder,\n            text_encoder_2=text_encoder_2,\n            tokenizer=tokenizer,\n            tokenizer_2=tokenizer_2,\n            unet=unet,\n            scheduler=scheduler,\n        )\n        self.register_to_config(force_zeros_for_empty_prompt=force_zeros_for_empty_prompt)\n        self.register_to_config(requires_aesthetics_score=requires_aesthetics_score)\n        self.vae_scale_factor = 2 ** (len(self.vae.config.block_out_channels) - 1)\n        self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor)\n        self.watermark = None\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.enable_vae_slicing\n    def enable_vae_slicing(self):\n        r\"\"\"\n        Enable sliced VAE decoding. When this option is enabled, the VAE will split the input tensor in slices to\n        compute decoding in several steps. This is useful to save some memory and allow larger batch sizes.\n        \"\"\"\n        self.vae.enable_slicing()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.disable_vae_slicing\n    def disable_vae_slicing(self):\n        r\"\"\"\n        Disable sliced VAE decoding. If `enable_vae_slicing` was previously enabled, this method will go back to\n        computing decoding in one step.\n        \"\"\"\n        self.vae.disable_slicing()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.enable_vae_tiling\n    def enable_vae_tiling(self):\n        r\"\"\"\n        Enable tiled VAE decoding. When this option is enabled, the VAE will split the input tensor into tiles to\n        compute decoding and encoding in several steps. This is useful for saving a large amount of memory and to allow\n        processing larger images.\n        \"\"\"\n        self.vae.enable_tiling()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.disable_vae_tiling\n    def disable_vae_tiling(self):\n        r\"\"\"\n        Disable tiled VAE decoding. If `enable_vae_tiling` was previously enabled, this method will go back to\n        computing decoding in one step.\n        \"\"\"\n        self.vae.disable_tiling()\n\n    def enable_model_cpu_offload(self, gpu_id=0): # pylint: disable=arguments-differ\n        r\"\"\"\n        Offloads all models to CPU using accelerate, reducing memory usage with a low impact on performance. Compared\n        to `enable_sequential_cpu_offload`, this method moves one whole model at a time to the GPU when its `forward`\n        method is called, and the model remains in GPU until the next model runs. Memory savings are lower than with\n        `enable_sequential_cpu_offload`, but performance is much better due to the iterative execution of the `unet`.\n        \"\"\"\n        if is_accelerate_available() and is_accelerate_version(\">=\", \"0.17.0.dev0\"):\n            from accelerate import cpu_offload_with_hook\n        else:\n            raise ImportError(\"`enable_model_cpu_offload` requires `accelerate v0.17.0` or higher.\")\n\n        device = torch.device(f\"cuda:{gpu_id}\")\n\n        if self.device.type != \"cpu\":\n            self.to(\"cpu\", silence_dtype_warnings=True)\n            torch.cuda.empty_cache()  # otherwise we don't see the memory savings (but they probably exist)\n\n        model_sequence = (\n            [self.text_encoder, self.text_encoder_2] if self.text_encoder is not None else [self.text_encoder_2]\n        )\n        model_sequence.extend([self.unet, self.vae])\n\n        hook = None\n        for cpu_offloaded_model in model_sequence:\n            _, hook = cpu_offload_with_hook(cpu_offloaded_model, device, prev_module_hook=hook)\n\n        # We'll offload the last model manually.\n        self.final_offload_hook = hook # pylint: disable=attribute-defined-outside-init\n\n    # Copied from diffusers.pipelines.stable_diffusion_xl.pipeline_stable_diffusion_xl.StableDiffusionXLPipeline.encode_prompt\n    def encode_prompt(\n        self,\n        prompt: str,\n        prompt_2: Optional[str] = None,\n        device: Optional[torch.device] = None,\n        num_images_per_prompt: int = 1,\n        do_classifier_free_guidance: bool = True,\n        negative_prompt: Optional[str] = None,\n        negative_prompt_2: Optional[str] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        lora_scale: Optional[float] = None,\n    ):\n        r\"\"\"\n        Encodes the prompt into text encoder hidden states.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                prompt to be encoded\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders\n            device: (`torch.device`):\n                torch device\n            num_images_per_prompt (`int`):\n                number of images that should be generated per prompt\n            do_classifier_free_guidance (`bool`):\n                whether to use classifier free guidance or not\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            lora_scale (`float`, *optional*):\n                A lora scale that will be applied to all LoRA layers of the text encoder if LoRA layers are loaded.\n        \"\"\"\n        device = device or self._execution_device\n\n        # set lora scale so that monkey patched LoRA\n        # function of text encoder can correctly access it\n        if lora_scale is not None and isinstance(self, LoraLoaderMixin):\n            self._lora_scale = lora_scale # pylint: disable=attribute-defined-outside-init\n\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        # Define tokenizers and text encoders\n        tokenizers = [self.tokenizer, self.tokenizer_2] if self.tokenizer is not None else [self.tokenizer_2]\n        text_encoders = (\n            [self.text_encoder, self.text_encoder_2] if self.text_encoder is not None else [self.text_encoder_2]\n        )\n\n        if prompt_embeds is None:\n            prompt_2 = prompt_2 or prompt\n            # textual inversion: procecss multi-vector tokens if necessary\n            prompt_embeds_list = []\n            prompts = [prompt, prompt_2]\n            for prompt, tokenizer, text_encoder in zip(prompts, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    prompt = self.maybe_convert_prompt(prompt, tokenizer)\n\n                text_inputs = tokenizer(\n                    prompt,\n                    padding=\"max_length\",\n                    max_length=tokenizer.model_max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                text_input_ids = text_inputs.input_ids\n                untruncated_ids = tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n                untruncated_ids = tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n                if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(\n                    text_input_ids, untruncated_ids\n                ):\n                    removed_text = tokenizer.batch_decode(untruncated_ids[:, tokenizer.model_max_length - 1 : -1])\n                    logger.warning(\n                        \"The following part of your input was truncated because CLIP can only handle sequences up to\"\n                        f\" {tokenizer.model_max_length} tokens: {removed_text}\"\n                    )\n\n                prompt_embeds = text_encoder(\n                    text_input_ids.to(device),\n                    output_hidden_states=True,\n                )\n\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                pooled_prompt_embeds = prompt_embeds[0]\n                prompt_embeds = prompt_embeds.hidden_states[-2]\n\n                prompt_embeds_list.append(prompt_embeds)\n\n            prompt_embeds = torch.concat(prompt_embeds_list, dim=-1)\n\n        # get unconditional embeddings for classifier free guidance\n        zero_out_negative_prompt = negative_prompt is None and self.config.force_zeros_for_empty_prompt # pylint: disable=no-member\n        if do_classifier_free_guidance and negative_prompt_embeds is None and zero_out_negative_prompt:\n            negative_prompt_embeds = torch.zeros_like(prompt_embeds)\n            negative_pooled_prompt_embeds = torch.zeros_like(pooled_prompt_embeds)\n        elif do_classifier_free_guidance and negative_prompt_embeds is None:\n            negative_prompt = negative_prompt or \"\"\n            negative_prompt_2 = negative_prompt_2 or negative_prompt\n\n            uncond_tokens: List[str]\n            if prompt is not None and type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif isinstance(negative_prompt, str):\n                uncond_tokens = [negative_prompt, negative_prompt_2]\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n            else:\n                uncond_tokens = [negative_prompt, negative_prompt_2]\n\n            negative_prompt_embeds_list = []\n            for negative_prompt, tokenizer, text_encoder in zip(uncond_tokens, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    negative_prompt = self.maybe_convert_prompt(negative_prompt, tokenizer)\n\n                max_length = prompt_embeds.shape[1]\n                uncond_input = tokenizer(\n                    negative_prompt,\n                    padding=\"max_length\",\n                    max_length=max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                negative_prompt_embeds = text_encoder(\n                    uncond_input.input_ids.to(device),\n                    output_hidden_states=True,\n                )\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                negative_pooled_prompt_embeds = negative_prompt_embeds[0]\n                negative_prompt_embeds = negative_prompt_embeds.hidden_states[-2]\n\n                negative_prompt_embeds_list.append(negative_prompt_embeds)\n\n            negative_prompt_embeds = torch.concat(negative_prompt_embeds_list, dim=-1)\n\n        prompt_embeds = prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n        bs_embed, seq_len, _ = prompt_embeds.shape\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(bs_embed * num_images_per_prompt, seq_len, -1)\n\n        if do_classifier_free_guidance:\n            # duplicate unconditional embeddings for each generation per prompt, using mps friendly method\n            seq_len = negative_prompt_embeds.shape[1]\n            negative_prompt_embeds = negative_prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n            negative_prompt_embeds = negative_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds = negative_prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n        pooled_prompt_embeds = pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n            bs_embed * num_images_per_prompt, -1\n        )\n        if do_classifier_free_guidance:\n            negative_pooled_prompt_embeds = negative_pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n                bs_embed * num_images_per_prompt, -1\n            )\n\n        return prompt_embeds, negative_prompt_embeds, pooled_prompt_embeds, negative_pooled_prompt_embeds\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_extra_step_kwargs\n    def prepare_extra_step_kwargs(self, generator, eta):\n        # prepare extra kwargs for the scheduler step, since not all schedulers have the same signature\n        # eta (η) is only used with the DDIMScheduler, it will be ignored for other schedulers.\n        # eta corresponds to η in DDIM paper: https://arxiv.org/abs/2010.02502\n        # and should be between [0, 1]\n\n        accepts_eta = \"eta\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        extra_step_kwargs = {}\n        if accepts_eta:\n            extra_step_kwargs[\"eta\"] = eta\n\n        # check if the scheduler accepts generator\n        accepts_generator = \"generator\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        if accepts_generator:\n            extra_step_kwargs[\"generator\"] = generator\n        return extra_step_kwargs\n\n    def check_inputs(\n        self,\n        prompt,\n        prompt_2,\n        strength,\n        num_inference_steps,\n        callback_steps,\n        negative_prompt=None,\n        negative_prompt_2=None,\n        prompt_embeds=None,\n        negative_prompt_embeds=None,\n    ):\n        if strength < 0 or strength > 1:\n            raise ValueError(f\"The value of strength should in [0.0, 1.0] but is {strength}\")\n        if num_inference_steps is None:\n            raise ValueError(\"`num_inference_steps` cannot be None.\")\n        elif not isinstance(num_inference_steps, int) or num_inference_steps <= 0:\n            raise ValueError(\n                f\"`num_inference_steps` has to be a positive integer but is {num_inference_steps} of type\"\n                f\" {type(num_inference_steps)}.\"\n            )\n        if (callback_steps is None) or (\n            callback_steps is not None and (not isinstance(callback_steps, int) or callback_steps <= 0)\n        ):\n            raise ValueError(\n                f\"`callback_steps` has to be a positive integer but is {callback_steps} of type\"\n                f\" {type(callback_steps)}.\"\n            )\n\n        if prompt is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt_2 is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt_2`: {prompt_2} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n        elif prompt_2 is not None and (not isinstance(prompt_2, str) and not isinstance(prompt_2, list)):\n            raise ValueError(f\"`prompt_2` has to be of type `str` or `list` but is {type(prompt_2)}\")\n\n        if negative_prompt is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n        elif negative_prompt_2 is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt_2`: {negative_prompt_2} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n\n        if prompt_embeds is not None and negative_prompt_embeds is not None:\n            if prompt_embeds.shape != negative_prompt_embeds.shape:\n                raise ValueError(\n                    \"`prompt_embeds` and `negative_prompt_embeds` must have the same shape when passed directly, but\"\n                    f\" got: `prompt_embeds` {prompt_embeds.shape} != `negative_prompt_embeds`\"\n                    f\" {negative_prompt_embeds.shape}.\"\n                )\n\n    def get_timesteps(self, num_inference_steps, strength, device, denoising_start=None): # pylint: disable=unused-argument\n        # get the original timestep using init_timestep\n        if denoising_start is None:\n            init_timestep = min(int(num_inference_steps * strength), num_inference_steps)\n            t_start = max(num_inference_steps - init_timestep, 0)\n        else:\n            t_start = 0\n\n        timesteps = self.scheduler.timesteps[t_start * self.scheduler.order :]\n\n        # Strength is irrelevant if we directly request a timestep to start at;\n        # that is, strength is determined by the denoising_start instead.\n        if denoising_start is not None:\n            discrete_timestep_cutoff = int(\n                round(\n                    self.scheduler.config.num_train_timesteps\n                    - (denoising_start * self.scheduler.config.num_train_timesteps)\n                )\n            )\n            timesteps = list(filter(lambda ts: ts < discrete_timestep_cutoff, timesteps))\n            return torch.tensor(timesteps), len(timesteps)\n\n        return timesteps, num_inference_steps - t_start\n\n    def prepare_latents(\n        self, image, timestep, batch_size, num_images_per_prompt, dtype, device, generator=None, add_noise=True\n    ):\n        if not isinstance(image, (torch.Tensor, PIL.Image.Image, list)):\n            raise ValueError(\n                f\"`image` has to be of type `torch.Tensor`, `PIL.Image.Image` or list but is {type(image)}\"\n            )\n\n        # Offload text encoder if `enable_model_cpu_offload` was enabled\n        if hasattr(self, \"final_offload_hook\") and self.final_offload_hook is not None:\n            self.text_encoder_2.to(\"cpu\")\n            torch.cuda.empty_cache()\n\n        image = image.to(device=device, dtype=dtype)\n\n        batch_size = batch_size * num_images_per_prompt\n\n        if image.shape[1] == 4:\n            init_latents = image\n\n        else:\n            # make sure the VAE is in float32 mode, as it overflows in float16\n            if self.vae.config.force_upcast:\n                image = image.float()\n                self.vae.to(dtype=torch.float32)\n\n            if isinstance(generator, list) and len(generator) != batch_size:\n                raise ValueError(\n                    f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                    f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n                )\n\n            elif isinstance(generator, list):\n                init_latents = [\n                    self.vae.encode(image[i : i + 1]).latent_dist.sample(generator[i]) for i in range(batch_size)\n                ]\n                init_latents = torch.cat(init_latents, dim=0)\n            else:\n                init_latents = self.vae.encode(image).latent_dist.sample(generator)\n\n            if self.vae.config.force_upcast:\n                self.vae.to(dtype)\n\n            init_latents = init_latents.to(dtype)\n            init_latents = self.vae.config.scaling_factor * init_latents\n\n        if batch_size > init_latents.shape[0] and batch_size % init_latents.shape[0] == 0:\n            # expand init_latents for batch_size\n            additional_image_per_prompt = batch_size // init_latents.shape[0]\n            init_latents = torch.cat([init_latents] * additional_image_per_prompt, dim=0)\n        elif batch_size > init_latents.shape[0] and batch_size % init_latents.shape[0] != 0:\n            raise ValueError(\n                f\"Cannot duplicate `image` of batch size {init_latents.shape[0]} to {batch_size} text prompts.\"\n            )\n        else:\n            init_latents = torch.cat([init_latents], dim=0)\n\n        if add_noise:\n            shape = init_latents.shape\n            noise = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n            # get latents\n            init_latents = self.scheduler.add_noise(init_latents, noise, timestep)\n\n        latents = init_latents\n\n        return latents\n\n    def _get_add_time_ids(\n        self, original_size, crops_coords_top_left, target_size, aesthetic_score, negative_aesthetic_score, dtype\n    ):\n        if self.config.requires_aesthetics_score: # pylint: disable=no-member\n            add_time_ids = list(original_size + crops_coords_top_left + (aesthetic_score,))\n            add_neg_time_ids = list(original_size + crops_coords_top_left + (negative_aesthetic_score,))\n        else:\n            add_time_ids = list(original_size + crops_coords_top_left + target_size)\n            add_neg_time_ids = list(original_size + crops_coords_top_left + target_size)\n\n        passed_add_embed_dim = (\n            self.unet.config.addition_time_embed_dim * len(add_time_ids) + self.text_encoder_2.config.projection_dim\n        )\n        expected_add_embed_dim = self.unet.add_embedding.linear_1.in_features\n\n        if (\n            expected_add_embed_dim > passed_add_embed_dim\n            and (expected_add_embed_dim - passed_add_embed_dim) == self.unet.config.addition_time_embed_dim\n        ):\n            raise ValueError(\n                f\"Model expects an added time embedding vector of length {expected_add_embed_dim}, but a vector of {passed_add_embed_dim} was created. Please make sure to enable `requires_aesthetics_score` with `pipe.register_to_config(requires_aesthetics_score=True)` to make sure `aesthetic_score` {aesthetic_score} and `negative_aesthetic_score` {negative_aesthetic_score} is correctly used by the model.\"\n            )\n        elif (\n            expected_add_embed_dim < passed_add_embed_dim\n            and (passed_add_embed_dim - expected_add_embed_dim) == self.unet.config.addition_time_embed_dim\n        ):\n            raise ValueError(\n                f\"Model expects an added time embedding vector of length {expected_add_embed_dim}, but a vector of {passed_add_embed_dim} was created. Please make sure to disable `requires_aesthetics_score` with `pipe.register_to_config(requires_aesthetics_score=False)` to make sure `target_size` {target_size} is correctly used by the model.\"\n            )\n        elif expected_add_embed_dim != passed_add_embed_dim:\n            raise ValueError(\n                f\"Model expects an added time embedding vector of length {expected_add_embed_dim}, but a vector of {passed_add_embed_dim} was created. The model has an incorrect config. Please check `unet.config.time_embedding_type` and `text_encoder_2.config.projection_dim`.\"\n            )\n\n        add_time_ids = torch.tensor([add_time_ids], dtype=dtype)\n        add_neg_time_ids = torch.tensor([add_neg_time_ids], dtype=dtype)\n\n        return add_time_ids, add_neg_time_ids\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion_upscale.StableDiffusionUpscalePipeline.upcast_vae\n    def upcast_vae(self):\n        dtype = self.vae.dtype\n        self.vae.to(dtype=torch.float32)\n        use_torch_2_0_or_xformers = isinstance(\n            self.vae.decoder.mid_block.attentions[0].processor,\n            (\n                AttnProcessor2_0,\n                XFormersAttnProcessor,\n                FusedAttnProcessor2_0,\n            ),\n        )\n        # if xformers or torch_2_0 is used attention block does not need\n        # to be in float32 which can save lots of memory\n        if use_torch_2_0_or_xformers:\n            self.vae.post_quant_conv.to(dtype)\n            self.vae.decoder.conv_in.to(dtype)\n            self.vae.decoder.mid_block.to(dtype)\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        prompt_2: Optional[Union[str, List[str]]] = None,\n        image: Union[\n            torch.FloatTensor,\n            PIL.Image.Image,\n            np.ndarray,\n            List[torch.FloatTensor],\n            List[PIL.Image.Image],\n            List[np.ndarray],\n        ] = None,\n        strength: float = 0.3,\n        num_inference_steps: int = 50,\n        denoising_start: Optional[float] = None,\n        denoising_end: Optional[float] = None,\n        guidance_scale: float = 5.0,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        negative_prompt_2: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        eta: float = 0.0,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.FloatTensor] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        callback: Optional[Callable[[int, int, torch.FloatTensor], None]] = None,\n        callback_steps: int = 1,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        guidance_rescale: float = 0.0,\n        original_size: Tuple[int, int] = None,\n        crops_coords_top_left: Tuple[int, int] = (0, 0),\n        target_size: Tuple[int, int] = None,\n        aesthetic_score: float = 6.0,\n        negative_aesthetic_score: float = 2.5,\n        map: torch.FloatTensor = None, # pylint: disable=redefined-builtin\n        original_image: Union[\n            torch.FloatTensor,\n            PIL.Image.Image,\n            np.ndarray,\n            List[torch.FloatTensor],\n            List[PIL.Image.Image],\n            List[np.ndarray],\n        ] = None,\n    ):\n        r\"\"\"\n        Function invoked when calling the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide the image generation. If not defined, one has to pass `prompt_embeds`.\n                instead.\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders\n            image (`torch.FloatTensor` or `PIL.Image.Image` or `np.ndarray` or `List[torch.FloatTensor]` or `List[PIL.Image.Image]` or `List[np.ndarray]`):\n                The image(s) to modify with the pipeline.\n            strength (`float`, *optional*, defaults to 0.3):\n                Conceptually, indicates how much to transform the reference `image`. Must be between 0 and 1. `image`\n                will be used as a starting point, adding more noise to it the larger the `strength`. The number of\n                denoising steps depends on the amount of noise initially added. When `strength` is 1, added noise will\n                be maximum and the denoising process will run for the full number of iterations specified in\n                `num_inference_steps`. A value of 1, therefore, essentially ignores `image`. Note that in the case of\n                `denoising_start` being declared as an integer, the value of `strength` will be ignored.\n            num_inference_steps (`int`, *optional*, defaults to 50):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            denoising_start (`float`, *optional*):\n                When specified, indicates the fraction (between 0.0 and 1.0) of the total denoising process to be\n                bypassed before it is initiated. Consequently, the initial part of the denoising process is skipped and\n                it is assumed that the passed `image` is a partly denoised image. Note that when this is specified,\n                strength will be ignored. The `denoising_start` parameter is particularly beneficial when this pipeline\n                is integrated into a \"Mixture of Denoisers\" multi-pipeline setup, as detailed in [**Refining the Image\n                Output**](https://huggingface.co/docs/diffusers/api/pipelines/stable_diffusion/stable_diffusion_xl#refining-the-image-output).\n            denoising_end (`float`, *optional*):\n                When specified, determines the fraction (between 0.0 and 1.0) of the total denoising process to be\n                completed before it is intentionally prematurely terminated. As a result, the returned sample will\n                still retain a substantial amount of noise (ca. final 20% of timesteps still needed) and should be\n                denoised by a successor pipeline that has `denoising_start` set to 0.8 so that it only denoises the\n                final 20% of the scheduler. The denoising_end parameter should ideally be utilized when this pipeline\n                forms a part of a \"Mixture of Denoisers\" multi-pipeline setup, as elaborated in [**Refining the Image\n                Output**](https://huggingface.co/docs/diffusers/api/pipelines/stable_diffusion/stable_diffusion_xl#refining-the-image-output).\n            guidance_scale (`float`, *optional*, defaults to 7.5):\n                Guidance scale as defined in [Classifier-Free Diffusion Guidance](https://arxiv.org/abs/2207.12598).\n                `guidance_scale` is defined as `w` of equation 2. of [Imagen\n                Paper](https://arxiv.org/pdf/2205.11487.pdf). Guidance scale is enabled by setting `guidance_scale >\n                1`. Higher guidance scale encourages to generate images that are closely linked to the text `prompt`,\n                usually at the expense of lower image quality.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            eta (`float`, *optional*, defaults to 0.0):\n                Corresponds to parameter eta (η) in the DDIM paper: https://arxiv.org/abs/2010.02502. Only applies to\n                [`schedulers.DDIMScheduler`], will be ignored for others.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                One or a list of [torch generator(s)](https://pytorch.org/docs/stable/generated/torch.Generator.html)\n                to make generation deterministic.\n            latents (`torch.FloatTensor`, *optional*):\n                Pre-generated noisy latents, sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor will ge generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generate image. Choose between\n                [PIL](https://pillow.readthedocs.io/en/stable/): `PIL.Image.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.stable_diffusion.StableDiffusionXLPipelineOutput`] instead of a\n                plain tuple.\n            callback (`Callable`, *optional*):\n                A function that will be called every `callback_steps` steps during inference. The function will be\n                called with the following arguments: `callback(step: int, timestep: int, latents: torch.FloatTensor)`.\n            callback_steps (`int`, *optional*, defaults to 1):\n                The frequency at which the `callback` function will be called. If not specified, the callback will be\n                called at every step.\n            cross_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.cross_attention](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/cross_attention.py).\n            guidance_rescale (`float`, *optional*, defaults to 0.7):\n                Guidance rescale factor proposed by [Common Diffusion Noise Schedules and Sample Steps are\n                Flawed](https://arxiv.org/pdf/2305.08891.pdf) `guidance_scale` is defined as `φ` in equation 16. of\n                [Common Diffusion Noise Schedules and Sample Steps are Flawed](https://arxiv.org/pdf/2305.08891.pdf).\n                Guidance rescale factor should fix overexposure when using zero terminal SNR.\n            original_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                If `original_size` is not the same as `target_size` the image will appear to be down- or upsampled.\n                `original_size` defaults to `(width, height)` if not specified. Part of SDXL's micro-conditioning as\n                explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            crops_coords_top_left (`Tuple[int]`, *optional*, defaults to (0, 0)):\n                `crops_coords_top_left` can be used to generate an image that appears to be \"cropped\" from the position\n                `crops_coords_top_left` downwards. Favorable, well-centered images are usually achieved by setting\n                `crops_coords_top_left` to (0, 0). Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            target_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                For most cases, `target_size` should be set to the desired height and width of the generated image. If\n                not specified it will default to `(width, height)`. Part of SDXL's micro-conditioning as explained in\n                section 2.2 of [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            aesthetic_score (`float`, *optional*, defaults to 6.0):\n                Used to simulate an aesthetic score of the generated image by influencing the positive text condition.\n                Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            negative_aesthetic_score (`float`, *optional*, defaults to 2.5):\n                Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). Can be used to\n                simulate an aesthetic score of the generated image by influencing the negative text condition.\n\n        Examples:\n\n        Returns:\n            [`~pipelines.stable_diffusion.StableDiffusionXLPipelineOutput`] or `tuple`:\n            [`~pipelines.stable_diffusion.StableDiffusionXLPipelineOutput`] if `return_dict` is True, otherwise a\n            `tuple. When returning a tuple, the first element is a list with the generated images.\n        \"\"\"\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            prompt_2,\n            strength,\n            num_inference_steps,\n            callback_steps,\n            negative_prompt,\n            negative_prompt_2,\n            prompt_embeds,\n            negative_prompt_embeds,\n        )\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        device = self._execution_device\n\n        # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2)\n        # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1`\n        # corresponds to doing no classifier free guidance.\n        do_classifier_free_guidance = guidance_scale > 1.0\n\n        # 3. Encode input prompt\n        text_encoder_lora_scale = (\n            cross_attention_kwargs.get(\"scale\", None) if cross_attention_kwargs is not None else None\n        )\n        (\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n        ) = self.encode_prompt(\n            prompt=prompt,\n            prompt_2=prompt_2,\n            device=device,\n            num_images_per_prompt=num_images_per_prompt,\n            do_classifier_free_guidance=do_classifier_free_guidance,\n            negative_prompt=negative_prompt,\n            negative_prompt_2=negative_prompt_2,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            negative_pooled_prompt_embeds=negative_pooled_prompt_embeds,\n            lora_scale=text_encoder_lora_scale,\n        )\n\n        # 4. Preprocess image\n        #image = self.image_processor.preprocess(image) #ideally we would have preprocess the image with diffusers, but for this POC we won't --- it throws a deprecated warning\n        map = torchvision.transforms.Resize(tuple(s // self.vae_scale_factor for s in original_image.shape[2:]),antialias=None)(map)\n        # 5. Prepare timesteps\n        def denoising_value_valid(dnv):\n            return type(denoising_end) == float and 0 < dnv < 1\n\n        self.scheduler.set_timesteps(num_inference_steps, device=device)\n        #begin diff diff change\n        total_time_steps = num_inference_steps\n        #end diff diff change\n        timesteps, num_inference_steps = self.get_timesteps(\n            num_inference_steps, strength, device, denoising_start=denoising_start if denoising_value_valid else None # pylint: disable=missing-parentheses-for-call-in-test, using-constant-test\n        )\n        latent_timestep = timesteps[:1].repeat(batch_size * num_images_per_prompt)\n\n        add_noise = True if denoising_start is None else False\n        # 6. Prepare latent variables\n        latents = self.prepare_latents(\n            image,\n            latent_timestep,\n            batch_size,\n            num_images_per_prompt,\n            prompt_embeds.dtype,\n            device,\n            generator,\n            add_noise,\n        )\n        # 7. Prepare extra step kwargs.\n        extra_step_kwargs = self.prepare_extra_step_kwargs(generator, eta)\n\n        height, width = latents.shape[-2:]\n        height = height * self.vae_scale_factor\n        width = width * self.vae_scale_factor\n\n        original_size = original_size or (height, width)\n        target_size = target_size or (height, width)\n\n        # 8. Prepare added time ids & embeddings\n        add_text_embeds = pooled_prompt_embeds\n        add_time_ids, add_neg_time_ids = self._get_add_time_ids(\n            original_size,\n            crops_coords_top_left,\n            target_size,\n            aesthetic_score,\n            negative_aesthetic_score,\n            dtype=prompt_embeds.dtype,\n        )\n        add_time_ids = add_time_ids.repeat(batch_size * num_images_per_prompt, 1)\n\n        if do_classifier_free_guidance:\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds], dim=0)\n            add_text_embeds = torch.cat([negative_pooled_prompt_embeds, add_text_embeds], dim=0)\n            add_neg_time_ids = add_neg_time_ids.repeat(batch_size * num_images_per_prompt, 1)\n            add_time_ids = torch.cat([add_neg_time_ids, add_time_ids], dim=0)\n\n        prompt_embeds = prompt_embeds.to(device)\n        add_text_embeds = add_text_embeds.to(device)\n        add_time_ids = add_time_ids.to(device)\n\n        # 9. Denoising loop\n        num_warmup_steps = max(len(timesteps) - num_inference_steps * self.scheduler.order, 0)\n\n\n        # 9.1 Apply denoising_end\n        if (\n            denoising_end is not None\n            and denoising_start is not None\n            and denoising_value_valid(denoising_end)\n            and denoising_value_valid(denoising_start)\n            and denoising_start >= denoising_end\n        ):\n            raise ValueError(f\"`denoising_start`: {denoising_start} cannot be larger than or equal to `denoising_end`: {denoising_end} when using type float.\")\n        elif denoising_end is not None and denoising_value_valid(denoising_end):\n            discrete_timestep_cutoff = int(\n                round(\n                    self.scheduler.config.num_train_timesteps\n                    - (denoising_end * self.scheduler.config.num_train_timesteps)\n                )\n            )\n            num_inference_steps = len(list(filter(lambda ts: ts >= discrete_timestep_cutoff, timesteps)))\n            timesteps = timesteps[:num_inference_steps]\n\n        # prepartions for diff diff\n        original_with_noise = self.prepare_latents(\n            original_image, timesteps, batch_size, num_images_per_prompt, prompt_embeds.dtype, device, generator\n        )\n        thresholds = torch.arange(total_time_steps, dtype=map.dtype) / total_time_steps\n        thresholds = thresholds.unsqueeze(1).unsqueeze(1).to(device)\n        masks = map > (thresholds + (denoising_start or 0))\n            # end diff diff preparations\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                # diff diff\n                if i==0 and denoising_start is None:\n                    latents = original_with_noise[:1]\n                else:\n                    mask = masks[i].unsqueeze(0)\n                    # cast mask to the same type as latents etc\n                    mask = mask.to(latents.dtype)\n                    mask = mask.unsqueeze(1)  # fit shape\n                    latents = original_with_noise[i] * mask + latents * (1 - mask)\n                    # end diff diff\n                # expand the latents if we are doing classifier free guidance\n                latent_model_input = torch.cat([latents] * 2) if do_classifier_free_guidance else latents\n\n                latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n                # predict the noise residual\n                added_cond_kwargs = {\"text_embeds\": add_text_embeds, \"time_ids\": add_time_ids}\n                noise_pred = self.unet(\n                    latent_model_input,\n                    t,\n                    encoder_hidden_states=prompt_embeds,\n                    cross_attention_kwargs=cross_attention_kwargs,\n                    added_cond_kwargs=added_cond_kwargs,\n                    return_dict=False,\n                )[0]\n\n                # perform guidance\n                if do_classifier_free_guidance:\n                    noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                    noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                if do_classifier_free_guidance and guidance_rescale > 0.0:\n                    # Based on 3.4. in https://arxiv.org/pdf/2305.08891.pdf\n                    noise_pred = rescale_noise_cfg(noise_pred, noise_pred_text, guidance_rescale=guidance_rescale)\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents = self.scheduler.step(noise_pred, t, latents, **extra_step_kwargs, return_dict=False)[0]\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n                    if callback is not None and i % callback_steps == 0:\n                        callback(i, t, latents)\n\n        # make sure the VAE is in float32 mode, as it overflows in float16\n        if self.vae.dtype == torch.float16 and self.vae.config.force_upcast:\n            self.upcast_vae()\n            latents = latents.to(next(iter(self.vae.post_quant_conv.parameters())).dtype)\n\n        if output_type != \"latent\":\n            image = self.vae.decode(latents / self.vae.config.scaling_factor, return_dict=False)[0]\n        else:\n            image = latents\n            return StableDiffusionXLPipelineOutput(images=image)\n\n        # apply watermark if available\n        if self.watermark is not None:\n            image = self.watermark.apply_watermark(image)\n\n        image = self.image_processor.postprocess(image, output_type=output_type)\n\n        # Offload last model to CPU\n        if hasattr(self, \"final_offload_hook\") and self.final_offload_hook is not None:\n            self.final_offload_hook.offload()\n\n        if not return_dict:\n            return (image,)\n\n        return StableDiffusionXLPipelineOutput(images=image)\n\n\nclass StableDiffusionDiffImg2ImgPipeline(DiffusionPipeline):\n    r\"\"\"\n    Pipeline for text-guided image to image generation using Stable Diffusion.\n\n    This model inherits from [`DiffusionPipeline`]. Check the superclass documentation for the generic methods the\n    library implements for all the pipelines (such as downloading or saving, running on a particular device, etc.)\n\n    Args:\n        vae ([`AutoencoderKL`]):\n            Variational Auto-Encoder (VAE) Model to encode and decode images to and from latent representations.\n        text_encoder ([`CLIPTextModel`]):\n            Frozen text-encoder. Stable Diffusion uses the text portion of\n            [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModel), specifically\n            the [clip-vit-large-patch14](https://huggingface.co/openai/clip-vit-large-patch14) variant.\n        tokenizer (`CLIPTokenizer`):\n            Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer).\n        unet ([`UNet2DConditionModel`]): Conditional U-Net architecture to denoise the encoded image latents.\n        scheduler ([`SchedulerMixin`]):\n            A scheduler to be used in combination with `unet` to denoise the encoded image latents. Can be one of\n            [`DDIMScheduler`], [`LMSDiscreteScheduler`], or [`PNDMScheduler`].\n        safety_checker ([`StableDiffusionSafetyChecker`]):\n            Classification module that estimates whether generated images could be considered offensive or harmful.\n            Please, refer to the [model card](https://huggingface.co/runwayml/stable-diffusion-v1-5) for details.\n        feature_extractor ([`CLIPFeatureExtractor`]):\n            Model that extracts features from generated images to be used as inputs for the `safety_checker`.\n    \"\"\"\n    _optional_components = [\"safety_checker\", \"feature_extractor\"]\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.__init__\n    def __init__(\n        self,\n        vae: AutoencoderKL,\n        text_encoder: CLIPTextModel,\n        tokenizer: CLIPTokenizer,\n        unet: UNet2DConditionModel,\n        scheduler: KarrasDiffusionSchedulers,\n        safety_checker: StableDiffusionSafetyChecker,\n        feature_extractor: CLIPImageProcessor,\n        requires_safety_checker: bool = False,\n    ):\n        super().__init__()\n\n        if hasattr(scheduler.config, \"steps_offset\") and scheduler.config.steps_offset != 1:\n            deprecation_message = (\n                f\"The configuration file of this scheduler: {scheduler} is outdated. `steps_offset`\"\n                f\" should be set to 1 instead of {scheduler.config.steps_offset}. Please make sure \"\n                \"to update the config accordingly as leaving `steps_offset` might led to incorrect results\"\n                \" in future versions. If you have downloaded this checkpoint from the Hugging Face Hub,\"\n                \" it would be very nice if you could open a Pull request for the `scheduler/scheduler_config.json`\"\n                \" file\"\n            )\n            deprecate(\"steps_offset!=1\", \"1.0.0\", deprecation_message, standard_warn=False)\n            new_config = dict(scheduler.config)\n            new_config[\"steps_offset\"] = 1\n            scheduler._internal_dict = FrozenDict(new_config)\n\n        if hasattr(scheduler.config, \"clip_sample\") and scheduler.config.clip_sample is True:\n            deprecation_message = (\n                f\"The configuration file of this scheduler: {scheduler} has not set the configuration `clip_sample`.\"\n                \" `clip_sample` should be set to False in the configuration file. Please make sure to update the\"\n                \" config accordingly as not setting `clip_sample` in the config might lead to incorrect results in\"\n                \" future versions. If you have downloaded this checkpoint from the Hugging Face Hub, it would be very\"\n                \" nice if you could open a Pull request for the `scheduler/scheduler_config.json` file\"\n            )\n            deprecate(\"clip_sample not set\", \"1.0.0\", deprecation_message, standard_warn=False)\n            new_config = dict(scheduler.config)\n            new_config[\"clip_sample\"] = False\n            scheduler._internal_dict = FrozenDict(new_config)\n\n        if safety_checker is None and requires_safety_checker:\n            logger.warning(\n                f\"You have disabled the safety checker for {self.__class__} by passing `safety_checker=None`. Ensure\"\n                \" that you abide to the conditions of the Stable Diffusion license and do not expose unfiltered\"\n                \" results in services or applications open to the public. Both the diffusers team and Hugging Face\"\n                \" strongly recommend to keep the safety filter enabled in all public facing circumstances, disabling\"\n                \" it only for use-cases that involve analyzing network behavior or auditing its results. For more\"\n                \" information, please have a look at https://github.com/huggingface/diffusers/pull/254 .\"\n            )\n\n        if safety_checker is not None and feature_extractor is None:\n            raise ValueError(\n                \"Make sure to define a feature extractor when loading {self.__class__} if you want to use the safety\"\n                \" checker. If you do not want to use the safety checker, you can pass `'safety_checker=None'` instead.\"\n            )\n\n        is_unet_version_less_0_9_0 = hasattr(unet.config, \"_diffusers_version\") and version.parse(\n            version.parse(unet.config._diffusers_version).base_version\n        ) < version.parse(\"0.9.0.dev0\")\n        is_unet_sample_size_less_64 = hasattr(unet.config, \"sample_size\") and unet.config.sample_size < 64\n        if is_unet_version_less_0_9_0 and is_unet_sample_size_less_64:\n            deprecation_message = (\n                \"The configuration file of the unet has set the default `sample_size` to smaller than\"\n                \" 64 which seems highly unlikely. If your checkpoint is a fine-tuned version of any of the\"\n                \" following: \\n- CompVis/stable-diffusion-v1-4 \\n- CompVis/stable-diffusion-v1-3 \\n-\"\n                \" CompVis/stable-diffusion-v1-2 \\n- CompVis/stable-diffusion-v1-1 \\n- runwayml/stable-diffusion-v1-5\"\n                \" \\n- runwayml/stable-diffusion-inpainting \\n you should change 'sample_size' to 64 in the\"\n                \" configuration file. Please make sure to update the config accordingly as leaving `sample_size=32`\"\n                \" in the config might lead to incorrect results in future versions. If you have downloaded this\"\n                \" checkpoint from the Hugging Face Hub, it would be very nice if you could open a Pull request for\"\n                \" the `unet/config.json` file\"\n            )\n            deprecate(\"sample_size<64\", \"1.0.0\", deprecation_message, standard_warn=False)\n            new_config = dict(unet.config)\n            new_config[\"sample_size\"] = 64\n            unet._internal_dict = FrozenDict(new_config)\n\n        self.register_modules(\n            vae=vae,\n            text_encoder=text_encoder,\n            tokenizer=tokenizer,\n            unet=unet,\n            scheduler=scheduler,\n            safety_checker=safety_checker,\n            feature_extractor=feature_extractor,\n        )\n        self.vae_scale_factor = 2 ** (len(self.vae.config.block_out_channels) - 1)\n        self.register_to_config(requires_safety_checker=requires_safety_checker)\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.enable_sequential_cpu_offload\n    def enable_sequential_cpu_offload(self, gpu_id=0): # pylint: disable=arguments-differ\n        r\"\"\"\n        Offloads all models to CPU using accelerate, significantly reducing memory usage. When called, unet,\n        text_encoder, vae and safety checker have their state dicts saved to CPU and then are moved to a\n        `torch.device('meta') and loaded to GPU only when their specific submodule has its `forward` method called.\n        Note that offloading happens on a submodule basis. Memory savings are higher than with\n        `enable_model_cpu_offload`, but performance is lower.\n        \"\"\"\n        if is_accelerate_available() and is_accelerate_version(\">=\", \"0.14.0\"):\n            from accelerate import cpu_offload\n        else:\n            raise ImportError(\"`enable_sequential_cpu_offload` requires `accelerate v0.14.0` or higher\")\n\n        device = torch.device(f\"cuda:{gpu_id}\")\n\n        if self.device.type != \"cpu\":\n            self.to(\"cpu\", silence_dtype_warnings=True)\n            torch.cuda.empty_cache()  # otherwise we don't see the memory savings (but they probably exist)\n\n        for cpu_offloaded_model in [self.unet, self.text_encoder, self.vae]:\n            cpu_offload(cpu_offloaded_model, device)\n\n        if self.safety_checker is not None:\n            cpu_offload(self.safety_checker, execution_device=device, offload_buffers=True)\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.enable_model_cpu_offload\n    def enable_model_cpu_offload(self, gpu_id=0): # pylint: disable=arguments-differ\n        r\"\"\"\n        Offloads all models to CPU using accelerate, reducing memory usage with a low impact on performance. Compared\n        to `enable_sequential_cpu_offload`, this method moves one whole model at a time to the GPU when its `forward`\n        method is called, and the model remains in GPU until the next model runs. Memory savings are lower than with\n        `enable_sequential_cpu_offload`, but performance is much better due to the iterative execution of the `unet`.\n        \"\"\"\n        if is_accelerate_available() and is_accelerate_version(\">=\", \"0.17.0.dev0\"):\n            from accelerate import cpu_offload_with_hook\n        else:\n            raise ImportError(\"`enable_model_offload` requires `accelerate v0.17.0` or higher.\")\n\n        device = torch.device(f\"cuda:{gpu_id}\")\n\n        if self.device.type != \"cpu\":\n            self.to(\"cpu\", silence_dtype_warnings=True)\n            torch.cuda.empty_cache()  # otherwise we don't see the memory savings (but they probably exist)\n\n        hook = None\n        for cpu_offloaded_model in [self.text_encoder, self.unet, self.vae]:\n            _, hook = cpu_offload_with_hook(cpu_offloaded_model, device, prev_module_hook=hook)\n\n        if self.safety_checker is not None:\n            _, hook = cpu_offload_with_hook(self.safety_checker, device, prev_module_hook=hook)\n\n        # We'll offload the last model manually.\n        self.final_offload_hook = hook # pylint: disable=attribute-defined-outside-init\n\n    @property\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline._execution_device\n    def _execution_device(self):\n        r\"\"\"\n        Returns the device on which the pipeline's models will be executed. After calling\n        `pipeline.enable_sequential_cpu_offload()` the execution device can only be inferred from Accelerate's module\n        hooks.\n        \"\"\"\n        if not hasattr(self.unet, \"_hf_hook\"):\n            return self.device\n        for module in self.unet.modules():\n            if (\n                hasattr(module, \"_hf_hook\")\n                and hasattr(module._hf_hook, \"execution_device\") # pylint: disable=protected-access\n                and module._hf_hook.execution_device is not None # pylint: disable=protected-access\n            ):\n                return torch.device(module._hf_hook.execution_device) # pylint: disable=protected-access\n        return self.device\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline._encode_prompt\n    def _encode_prompt(\n        self,\n        prompt,\n        device,\n        num_images_per_prompt,\n        do_classifier_free_guidance,\n        negative_prompt=None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n    ):\n        r\"\"\"\n        Encodes the prompt into text encoder hidden states.\n\n        Args:\n             prompt (`str` or `List[str]`, *optional*):\n                prompt to be encoded\n            device: (`torch.device`):\n                torch device\n            num_images_per_prompt (`int`):\n                number of images that should be generated per prompt\n            do_classifier_free_guidance (`bool`):\n                whether to use classifier free guidance or not\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds`. instead. If not defined, one has to pass `negative_prompt_embeds`. instead.\n                Ignored when not using guidance (i.e., ignored if `guidance_scale` is less than `1`).\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n        \"\"\"\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        if prompt_embeds is None:\n            text_inputs = self.tokenizer(\n                prompt,\n                padding=\"max_length\",\n                max_length=self.tokenizer.model_max_length,\n                truncation=True,\n                return_tensors=\"pt\",\n            )\n            text_input_ids = text_inputs.input_ids\n            untruncated_ids = self.tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n            if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(\n                text_input_ids, untruncated_ids\n            ):\n                removed_text = self.tokenizer.batch_decode(\n                    untruncated_ids[:, self.tokenizer.model_max_length - 1 : -1]\n                )\n                logger.warning(\n                    \"The following part of your input was truncated because CLIP can only handle sequences up to\"\n                    f\" {self.tokenizer.model_max_length} tokens: {removed_text}\"\n                )\n\n            if hasattr(self.text_encoder.config, \"use_attention_mask\") and self.text_encoder.config.use_attention_mask:\n                attention_mask = text_inputs.attention_mask.to(device)\n            else:\n                attention_mask = None\n\n            prompt_embeds = self.text_encoder(\n                text_input_ids.to(device),\n                attention_mask=attention_mask,\n            )\n            prompt_embeds = prompt_embeds[0]\n\n        prompt_embeds = prompt_embeds.to(dtype=self.text_encoder.dtype, device=device)\n\n        bs_embed, seq_len, _ = prompt_embeds.shape\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(bs_embed * num_images_per_prompt, seq_len, -1)\n\n        # get unconditional embeddings for classifier free guidance\n        if do_classifier_free_guidance and negative_prompt_embeds is None:\n            uncond_tokens: List[str]\n            if negative_prompt is None:\n                uncond_tokens = [\"\"] * batch_size\n            elif type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif isinstance(negative_prompt, str):\n                uncond_tokens = [negative_prompt]\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n            else:\n                uncond_tokens = negative_prompt\n\n            max_length = prompt_embeds.shape[1]\n            uncond_input = self.tokenizer(\n                uncond_tokens,\n                padding=\"max_length\",\n                max_length=max_length,\n                truncation=True,\n                return_tensors=\"pt\",\n            )\n\n            if hasattr(self.text_encoder.config, \"use_attention_mask\") and self.text_encoder.config.use_attention_mask:\n                attention_mask = uncond_input.attention_mask.to(device)\n            else:\n                attention_mask = None\n\n            negative_prompt_embeds = self.text_encoder(\n                uncond_input.input_ids.to(device),\n                attention_mask=attention_mask,\n            )\n            negative_prompt_embeds = negative_prompt_embeds[0]\n\n        if do_classifier_free_guidance:\n            # duplicate unconditional embeddings for each generation per prompt, using mps friendly method\n            seq_len = negative_prompt_embeds.shape[1]\n\n            negative_prompt_embeds = negative_prompt_embeds.to(dtype=self.text_encoder.dtype, device=device)\n\n            negative_prompt_embeds = negative_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds = negative_prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n            # For classifier free guidance, we need to do two forward passes.\n            # Here we concatenate the unconditional and text embeddings into a single batch\n            # to avoid doing two forward passes\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds])\n\n        return prompt_embeds\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.decode_latents\n    def decode_latents(self, latents):\n        latents = 1 / self.vae.config.scaling_factor * latents\n        image = self.vae.decode(latents).sample\n        image = (image / 2 + 0.5).clamp(0, 1)\n        # we always cast to float32 as this does not cause significant overhead and is compatible with bfloat16\n        image = image.cpu().permute(0, 2, 3, 1).float().numpy()\n        return image\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_extra_step_kwargs\n    def prepare_extra_step_kwargs(self, generator, eta):\n        # prepare extra kwargs for the scheduler step, since not all schedulers have the same signature\n        # eta (η) is only used with the DDIMScheduler, it will be ignored for other schedulers.\n        # eta corresponds to η in DDIM paper: https://arxiv.org/abs/2010.02502\n        # and should be between [0, 1]\n\n        accepts_eta = \"eta\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        extra_step_kwargs = {}\n        if accepts_eta:\n            extra_step_kwargs[\"eta\"] = eta\n\n        # check if the scheduler accepts generator\n        accepts_generator = \"generator\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        if accepts_generator:\n            extra_step_kwargs[\"generator\"] = generator\n        return extra_step_kwargs\n\n    def check_inputs(\n        self, prompt, strength, callback_steps, negative_prompt=None, prompt_embeds=None, negative_prompt_embeds=None\n    ):\n        if strength < 0 or strength > 1:\n            raise ValueError(f\"The value of strength should in [0.0, 1.0] but is {strength}\")\n\n        if (callback_steps is None) or (\n            callback_steps is not None and (not isinstance(callback_steps, int) or callback_steps <= 0)\n        ):\n            raise ValueError(\n                f\"`callback_steps` has to be a positive integer but is {callback_steps} of type\"\n                f\" {type(callback_steps)}.\"\n            )\n\n        if prompt is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n\n        if negative_prompt is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n\n        if prompt_embeds is not None and negative_prompt_embeds is not None:\n            if prompt_embeds.shape != negative_prompt_embeds.shape:\n                raise ValueError(\n                    \"`prompt_embeds` and `negative_prompt_embeds` must have the same shape when passed directly, but\"\n                    f\" got: `prompt_embeds` {prompt_embeds.shape} != `negative_prompt_embeds`\"\n                    f\" {negative_prompt_embeds.shape}.\"\n                )\n\n    def get_timesteps(self, num_inference_steps, strength, device): # pylint: disable=unused-argument\n        # get the original timestep using init_timestep\n        init_timestep = min(int(num_inference_steps * strength), num_inference_steps)\n\n        t_start = max(num_inference_steps - init_timestep, 0)\n        timesteps = self.scheduler.timesteps[t_start:]\n\n        return timesteps, num_inference_steps - t_start\n\n    def prepare_latents(self, image, timestep, batch_size, num_images_per_prompt, dtype, device, generator=None):\n        if not isinstance(image, (torch.Tensor, PIL.Image.Image, list)):\n            raise ValueError(\n                f\"`image` has to be of type `torch.Tensor`, `PIL.Image.Image` or list but is {type(image)}\"\n            )\n\n        image = image.to(device=device, dtype=dtype)\n\n        batch_size = batch_size * num_images_per_prompt\n        if isinstance(generator, list) and len(generator) != batch_size:\n            raise ValueError(\n                f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n            )\n\n        if isinstance(generator, list):\n            init_latents = [\n                self.vae.encode(image[i : i + 1]).latent_dist.sample(generator[i]) for i in range(batch_size)\n            ]\n            init_latents = torch.cat(init_latents, dim=0)\n        else:\n            init_latents = self.vae.encode(image).latent_dist.sample(generator)\n\n        init_latents = self.vae.config.scaling_factor * init_latents\n\n        if batch_size > init_latents.shape[0] and batch_size % init_latents.shape[0] == 0:\n            # expand init_latents for batch_size\n            deprecation_message = (\n                f\"You have passed {batch_size} text prompts (`prompt`), but only {init_latents.shape[0]} initial\"\n                \" images (`image`). Initial images are now duplicating to match the number of text prompts. Note\"\n                \" that this behavior is deprecated and will be removed in a version 1.0.0. Please make sure to update\"\n                \" your script to pass as many initial images as text prompts to suppress this warning.\"\n            )\n            deprecate(\"len(prompt) != len(image)\", \"1.0.0\", deprecation_message, standard_warn=False)\n            additional_image_per_prompt = batch_size // init_latents.shape[0]\n            init_latents = torch.cat([init_latents] * additional_image_per_prompt, dim=0)\n        elif batch_size > init_latents.shape[0] and batch_size % init_latents.shape[0] != 0:\n            raise ValueError(\n                f\"Cannot duplicate `image` of batch size {init_latents.shape[0]} to {batch_size} text prompts.\"\n            )\n        else:\n            init_latents = torch.cat([init_latents], dim=0)\n\n        shape = init_latents.shape\n        noise = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n\n        # get latents\n        init_latents = self.scheduler.add_noise(init_latents, noise, timestep)\n        latents = init_latents\n\n        return latents\n\n    def encode_prompt(\n        self,\n        prompt,\n        device,\n        num_images_per_prompt,\n        do_classifier_free_guidance,\n        negative_prompt=None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        lora_scale: Optional[float] = None, # pylint: disable=unused-argument\n        clip_skip: Optional[int] = None,\n    ):\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        if prompt_embeds is None:\n            # textual inversion: procecss multi-vector tokens if necessary\n            if isinstance(self, TextualInversionLoaderMixin):\n                prompt = self.maybe_convert_prompt(prompt, self.tokenizer)\n\n            text_inputs = self.tokenizer(\n                prompt,\n                padding=\"max_length\",\n                max_length=self.tokenizer.model_max_length,\n                truncation=True,\n                return_tensors=\"pt\",\n            )\n            text_input_ids = text_inputs.input_ids\n            untruncated_ids = self.tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n            if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(\n                text_input_ids, untruncated_ids\n            ):\n                removed_text = self.tokenizer.batch_decode(\n                    untruncated_ids[:, self.tokenizer.model_max_length - 1 : -1]\n                )\n                logger.warning(\n                    \"The following part of your input was truncated because CLIP can only handle sequences up to\"\n                    f\" {self.tokenizer.model_max_length} tokens: {removed_text}\"\n                )\n\n            if hasattr(self.text_encoder.config, \"use_attention_mask\") and self.text_encoder.config.use_attention_mask:\n                attention_mask = text_inputs.attention_mask.to(device)\n            else:\n                attention_mask = None\n\n            if clip_skip is None:\n                prompt_embeds = self.text_encoder(text_input_ids.to(device), attention_mask=attention_mask)\n                prompt_embeds = prompt_embeds[0]\n            else:\n                prompt_embeds = self.text_encoder(\n                    text_input_ids.to(device), attention_mask=attention_mask, output_hidden_states=True\n                )\n                # Access the `hidden_states` first, that contains a tuple of\n                # all the hidden states from the encoder layers. Then index into\n                # the tuple to access the hidden states from the desired layer.\n                prompt_embeds = prompt_embeds[-1][-(clip_skip + 1)]\n                # We also need to apply the final LayerNorm here to not mess with the\n                # representations. The `last_hidden_states` that we typically use for\n                # obtaining the final prompt representations passes through the LayerNorm\n                # layer.\n                prompt_embeds = self.text_encoder.text_model.final_layer_norm(prompt_embeds)\n\n        if self.text_encoder is not None:\n            prompt_embeds_dtype = self.text_encoder.dtype\n        elif self.unet is not None:\n            prompt_embeds_dtype = self.unet.dtype\n        else:\n            prompt_embeds_dtype = prompt_embeds.dtype\n\n        prompt_embeds = prompt_embeds.to(dtype=prompt_embeds_dtype, device=device)\n\n        bs_embed, seq_len, _ = prompt_embeds.shape\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(bs_embed * num_images_per_prompt, seq_len, -1)\n\n        # get unconditional embeddings for classifier free guidance\n        if do_classifier_free_guidance and negative_prompt_embeds is None:\n            uncond_tokens: List[str]\n            if negative_prompt is None:\n                uncond_tokens = [\"\"] * batch_size\n            elif prompt is not None and type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif isinstance(negative_prompt, str):\n                uncond_tokens = [negative_prompt]\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n            else:\n                uncond_tokens = negative_prompt\n\n            # textual inversion: procecss multi-vector tokens if necessary\n            if isinstance(self, TextualInversionLoaderMixin):\n                uncond_tokens = self.maybe_convert_prompt(uncond_tokens, self.tokenizer)\n\n            max_length = prompt_embeds.shape[1]\n            uncond_input = self.tokenizer(\n                uncond_tokens,\n                padding=\"max_length\",\n                max_length=max_length,\n                truncation=True,\n                return_tensors=\"pt\",\n            )\n\n            if hasattr(self.text_encoder.config, \"use_attention_mask\") and self.text_encoder.config.use_attention_mask:\n                attention_mask = uncond_input.attention_mask.to(device)\n            else:\n                attention_mask = None\n\n            negative_prompt_embeds = self.text_encoder(\n                uncond_input.input_ids.to(device),\n                attention_mask=attention_mask,\n            )\n            negative_prompt_embeds = negative_prompt_embeds[0]\n\n        if do_classifier_free_guidance:\n            # duplicate unconditional embeddings for each generation per prompt, using mps friendly method\n            seq_len = negative_prompt_embeds.shape[1]\n\n            negative_prompt_embeds = negative_prompt_embeds.to(dtype=prompt_embeds_dtype, device=device)\n\n            negative_prompt_embeds = negative_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds = negative_prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n        return prompt_embeds, negative_prompt_embeds\n\n\n    def preprocess(self, image):\n        if isinstance(image, torch.Tensor):\n            return image\n        elif isinstance(image, PIL.Image.Image):\n            image = [image]\n\n        if isinstance(image[0], PIL.Image.Image):\n            w, h = image[0].size\n            w, h = map(lambda x: x - x % 8, (w, h))  # resize to integer multiple of 8 # noqa: C417\n\n            image = [np.array(i.resize((w, h), resample=PIL_INTERPOLATION[\"lanczos\"]))[None, :] for i in image]\n            image = np.concatenate(image, axis=0)\n            image = np.array(image).astype(np.float32) / 255.0\n            image = image.transpose(0, 3, 1, 2)\n            image = 2.0 * image - 1.0\n            image = torch.from_numpy(image)\n        elif isinstance(image[0], torch.Tensor):\n            image = torch.cat(image, dim=0)\n        return image\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        image: Union[torch.FloatTensor, PIL.Image.Image] = None,\n        strength: float = 1,\n        num_inference_steps: Optional[int] = 50,\n        guidance_scale: Optional[float] = 7.5,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        eta: Optional[float] = 0.0,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        callback: Optional[Callable[[int, int, torch.FloatTensor], None]] = None,\n        callback_steps: int = 1,\n        map:torch.FloatTensor = None, # pylint: disable=redefined-builtin\n    ):\n        r\"\"\"\n        Function invoked when calling the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide the image generation. If not defined, one has to pass `prompt_embeds`.\n                instead.\n            image (`torch.FloatTensor` or `PIL.Image.Image`):\n                `Image`, or tensor representing an image batch, that will be used as the starting point for the\n                process.\n            strength (`float`, *optional*, defaults to 1):\n                Repealed in favor of the map.\n            num_inference_steps (`int`, *optional*, defaults to 50):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference. This parameter will be modulated by `strength`.\n            guidance_scale (`float`, *optional*, defaults to 7.5):\n                Guidance scale as defined in [Classifier-Free Diffusion Guidance](https://arxiv.org/abs/2207.12598).\n                `guidance_scale` is defined as `w` of equation 2. of [Imagen\n                Paper](https://arxiv.org/pdf/2205.11487.pdf). Guidance scale is enabled by setting `guidance_scale >\n                1`. Higher guidance scale encourages to generate images that are closely linked to the text `prompt`,\n                usually at the expense of lower image quality.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds`. instead. Ignored when not using guidance (i.e., ignored if `guidance_scale`\n                is less than `1`).\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            eta (`float`, *optional*, defaults to 0.0):\n                Corresponds to parameter eta (η) in the DDIM paper: https://arxiv.org/abs/2010.02502. Only applies to\n                [`schedulers.DDIMScheduler`], will be ignored for others.\n            generator (`torch.Generator`, *optional*):\n                One or a list of [torch generator(s)](https://pytorch.org/docs/stable/generated/torch.Generator.html)\n                to make generation deterministic.\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generate image. Choose between\n                [PIL](https://pillow.readthedocs.io/en/stable/): `PIL.Image.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.stable_diffusion.StableDiffusionPipelineOutput`] instead of a\n                plain tuple.\n            callback (`Callable`, *optional*):\n                A function that will be called every `callback_steps` steps during inference. The function will be\n                called with the following arguments: `callback(step: int, timestep: int, latents: torch.FloatTensor)`.\n            callback_steps (`int`, *optional*, defaults to 1):\n                The frequency at which the `callback` function will be called. If not specified, the callback will be\n                called at every step.\n        Examples:\n\n        Returns:\n            [`~pipelines.stable_diffusion.StableDiffusionPipelineOutput`] or `tuple`:\n            [`~pipelines.stable_diffusion.StableDiffusionPipelineOutput`] if `return_dict` is True, otherwise a `tuple.\n            When returning a tuple, the first element is a list with the generated images, and the second element is a\n            list of `bool`s denoting whether the corresponding generated image likely represents \"not-safe-for-work\"\n            (nsfw) content, according to the `safety_checker`.\n        \"\"\"\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(prompt, strength, callback_steps, negative_prompt, prompt_embeds, negative_prompt_embeds)\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n        device = self._execution_device\n        # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2)\n        # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1`\n        # corresponds to doing no classifier free guidance.\n        do_classifier_free_guidance = guidance_scale > 1.0\n\n        # 3. Encode input prompt\n        prompt_embeds = self._encode_prompt(\n            prompt,\n            device,\n            num_images_per_prompt,\n            do_classifier_free_guidance,\n            negative_prompt,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n        )\n\n        # 4. Preprocess image\n        # image = self.preprocess(image)\n\n        # 5. set timesteps\n        self.scheduler.set_timesteps(num_inference_steps, device=device)\n        timesteps, num_inference_steps = self.get_timesteps(num_inference_steps, strength, device)\n\n\n        # 7. Prepare extra step kwargs.\n        extra_step_kwargs = self.prepare_extra_step_kwargs(generator, eta)\n        map = torchvision.transforms.Resize(tuple(s // self.vae_scale_factor for s in image.shape[2:]),antialias=None)(map)\n\n        # 8. Denoising loop\n        num_warmup_steps = len(timesteps) - num_inference_steps * self.scheduler.order\n\n        # prepartions\n        original_with_noise = self.prepare_latents(\n            image, timesteps, batch_size, num_images_per_prompt, prompt_embeds.dtype, device, generator\n        )\n        thresholds = torch.arange(len(timesteps), dtype=map.dtype) / len(timesteps)\n        thresholds = thresholds.unsqueeze(1).unsqueeze(1).to(device)\n        masks = map > thresholds\n        # end diff diff preparations\n\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n\n            for i, t in enumerate(timesteps):\n                # diff diff\n                if i == 0:\n                    latents = original_with_noise[:1]\n                else:\n                    mask = masks[i].unsqueeze(0)\n                    # cast mask to the same type as latents etc\n                    mask = mask.to(latents.dtype)\n                    mask = mask.unsqueeze(1)  # fit shape\n                    latents = original_with_noise[i] * mask + latents * (1 - mask)\n                    # end diff diff\n                # expand the latents if we are doing classifier free guidance\n                latent_model_input = torch.cat([latents] * 2) if do_classifier_free_guidance else latents\n                latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n                # predict the noise residual\n                noise_pred = self.unet(latent_model_input, t, encoder_hidden_states=prompt_embeds).sample\n\n                # perform guidance\n                if do_classifier_free_guidance:\n                    noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                    noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents = self.scheduler.step(noise_pred, t, latents, **extra_step_kwargs).prev_sample\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n                    if callback is not None and i % callback_steps == 0:\n                        callback(i, t, latents)\n\n        # 9. Post-processing\n        # image = self.decode_latents(latents)\n\n        # 10. Run safety checker\n        # image, has_nsfw_concept = self.run_safety_checker(image, device, prompt_embeds.dtype)\n        #has_nsfw_concept = False\n\n        # 11. Convert to PIL\n        # if output_type == \"pil\":\n        #    image = self.numpy_to_pil(image)\n\n        # Offload last model to CPU\n        if hasattr(self, \"final_offload_hook\") and self.final_offload_hook is not None:\n            self.final_offload_hook.offload()\n\n        # if not return_dict:\n        #    return (image, has_nsfw_concept)\n\n        return StableDiffusionPipelineOutput(images=latents, nsfw_content_detected=False)\n\n### pipeline end\n\n### script start\n\nimport gradio as gr\nimport diffusers\nfrom PIL import Image, ImageEnhance, ImageOps # pylint: disable=reimported\nfrom torchvision import transforms\nfrom modules import errors, shared, devices, scripts_manager, processing, sd_models, images\n\n\ndetector = None\nMODELS = {\n    'DPT Tiny': 'Intel/dpt-swinv2-tiny-256',\n    'DPT Hybrid': 'Intel/dpt-hybrid-midas',\n    'DPT Large': 'Intel/dpt-large'\n}\n\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return 'Differential diffusion: Individual Pixel Strength'\n\n    def show(self, is_img2img):\n        return is_img2img\n\n    def ui(self, _is_img2img):\n        with gr.Row():\n            gr.HTML('<a href=\"https://github.com/exx8/differential-diffusion\">&nbsp Differential diffusion: Individual Pixel Strength</a><br><span>Select a model for auto-preprocess or upload an image map</span><br>')\n        with gr.Row():\n            enabled = gr.Checkbox(label='Enabled', value=True)\n            invert = gr.Checkbox(label='Mask invert', value=False)\n            strength = gr.Slider(minimum=0.0, maximum=2.0, value=1.0, label='Mask strength')\n            model = gr.Dropdown(label='Model', choices=['None', 'DPT Tiny', 'DPT Hybrid', 'DPT Large'], value='None')\n        with gr.Row():\n            image = gr.Image(label=\"Image map\", show_label=False, type=\"pil\", interactive=True, tool=\"editor\", visible=True, image_mode='RGB')\n        return enabled, strength, invert, model, image\n\n    def depthmap(self, image_init: Image.Image, image_map: Image.Image, model: str, strength: float, invert: bool):\n        global detector # pylint: disable=global-statement\n        from modules.control.proc.dpt import DPTDetector\n        if image_init is None:\n            return None, None, None\n        if image_map is not None:\n            image_map = image_map.resize(image_init.size, Image.Resampling.LANCZOS)\n        if model != 'None':\n            if detector is None:\n                detector = DPTDetector()\n            image_map = detector(image_init, MODELS[model])\n        if image_map is not None:\n            if strength != 1.0:\n                enhancer = ImageEnhance.Brightness(image_map)\n                image_map = enhancer.enhance(strength)\n            image_map = image_map.convert('L')\n            if invert:\n                image_map = ImageOps.invert(image_map)\n            if shared.opts.save_init_img:\n                init_img_hash = hashlib.sha256(image_map.tobytes()).hexdigest()[0:8] # pylint: disable=attribute-defined-outside-init\n                images.save_image(image_map, path=shared.opts.outdir_init_images, basename=None, forced_filename=init_img_hash, suffix=\"-init-image\")\n        else:\n            return None, None, None\n        image_mask = image_map.copy()\n        image_map = transforms.ToTensor()(image_map)\n        image_map = image_map.to(devices.device)\n        image_init = 2 * transforms.ToTensor()(image_init) - 1\n        image_init = image_init.unsqueeze(0)\n        image_init = image_init.to(devices.device)\n        return image_init, image_map, image_mask\n\n    def run(self, p: processing.StableDiffusionProcessingImg2Img, enabled, strength, invert, model, image): # pylint: disable=arguments-differ\n        if not enabled:\n            return\n        if shared.sd_model_type not in ['sdxl', 'sd', 'f1']:\n            shared.log.error(f'Differential-diffusion: incorrect base model: {shared.sd_model.__class__.__name__}')\n            return\n        if not hasattr(p, 'init_images') or len(p.init_images) == 0:\n            shared.log.error('Differential-diffusion: no input images')\n            return\n\n        image_init, image_map, image_mask = self.depthmap(p.init_images[0], image, model, strength, invert)\n        if image_map is None:\n            shared.log.error('Differential-diffusion: no image map')\n            return\n\n        orig_pipeline = shared.sd_model\n        pipe = None\n        try:\n            # shared.sd_model = diffusers.StableDiffusionPipeline.from_pipe(shared.sd_model, **{ 'custom_pipeline': 'kohya_hires_fix', 'high_res_fix': high_res_fix })\n            # from examples.community.pipeline_stable_diffusion_xl_differential_img2img import StableDiffusionXLDifferentialImg2ImgPipeline\n            diffusers.pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING[\"StableDiffusionXLDiffImg2ImgPipeline\"] = StableDiffusionXLDiffImg2ImgPipeline\n            diffusers.pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING[\"StableDiffusionDiffImg2ImgPipeline\"] = StableDiffusionDiffImg2ImgPipeline\n            if shared.sd_model_type == 'sdxl':\n                pipe = StableDiffusionXLDiffImg2ImgPipeline(\n                    text_encoder=shared.sd_model.text_encoder,\n                    text_encoder_2=shared.sd_model.text_encoder_2,\n                    tokenizer=shared.sd_model.tokenizer,\n                    tokenizer_2=shared.sd_model.tokenizer_2,\n                    unet=shared.sd_model.unet,\n                    vae=shared.sd_model.vae,\n                    scheduler=shared.sd_model.scheduler,\n                )\n            elif shared.sd_model_type == 'sd':\n                pipe = StableDiffusionDiffImg2ImgPipeline(\n                    text_encoder=shared.sd_model.text_encoder,\n                    tokenizer=shared.sd_model.tokenizer,\n                    unet=shared.sd_model.unet,\n                    vae=shared.sd_model.vae,\n                    scheduler=shared.sd_model.scheduler,\n                    feature_extractor=getattr(shared.sd_model, 'feature_extractor', None),\n                    safety_checker=None,\n                    requires_safety_checker=False,\n                )\n            elif shared.sd_model_type == 'f1':\n                pipe = diffusers.StableDiffusionPipeline.from_pipe(shared.sd_model, **{ 'custom_pipeline': 'pipeline_flux_differential_img2img' })\n                diffusers.pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING[\"FluxDifferentialImg2ImgPipeline\"] = pipe.__class__\n            sd_models.copy_diffuser_options(pipe, shared.sd_model)\n            sd_models.set_diffuser_options(pipe)\n            p.task_args['image'] = image_init\n            p.task_args['map'] = image_map\n            if shared.sd_model_type == 'sdxl':\n                p.task_args['original_image'] = image_init\n            if p.batch_size > 1:\n                shared.log.warning(f'Differential-diffusion: batch-size={p.batch_size} parallel processing not supported')\n                p.batch_size = 1\n            shared.log.debug(f'Differential-diffusion: pipeline={pipe.__class__.__name__} strength={strength} model={model} auto={image is None}')\n            shared.sd_model = pipe\n            sd_models.move_model(pipe.vae, devices.device, force=True)\n        except Exception as e:\n            shared.log.error(f'Differential-diffusion: pipeline creation failed: {e}')\n            errors.display(e, 'Differential-diffusion: pipeline creation failed')\n            shared.sd_model = orig_pipeline\n\n        # run pipeline\n        processed: processing.Processed = processing.process_images(p) # runs processing using main loop\n        if shared.opts.include_mask:\n            p.image_mask = image_mask\n            if image_mask is not None and isinstance(image_mask, Image.Image):\n                processed.images.append(image_mask)\n\n        # restore pipeline and params\n        pipe = None\n        shared.sd_model = orig_pipeline\n        devices.torch_gc()\n        return processed\n"
  },
  {
    "path": "scripts/example.py",
    "content": "import gradio as gr\nfrom diffusers.pipelines import StableDiffusionPipeline, StableDiffusionXLPipeline # pylint: disable=unused-import\nfrom modules import shared, scripts_manager, processing, sd_models, devices\n\n\"\"\"\nThis is a simpler template for script for SD.Next that implements a custom pipeline\nItems that can be added:\n- Any pipeline already in diffusers\n  List of pipelines that can be directly used: <https://github.com/huggingface/diffusers/tree/main/src/diffusers/pipelines>\n- Any pipeline for which diffusers definiotion exists and can be copied\n  List of pipelines with community definitions: <https://github.com/huggingface/diffusers/tree/main/examples/community>\n- Any custom pipeline that you create\n\nAuthor::\n- Your details\n\nCredits:\n- Link to original implementation and author\n\nContributions:\n- Submit a PR on SD.Next GitHub repo to be included in /scripts\n- Before submitting a PR, make sure to test your script thoroughly and that it passes code quality checks\n  Lint rules are part of SD.Next CI/CD pipeline\n    > pip install ruff pylint\n    > ruff scripts/example.py\n    > pylint scriptts/example.py\n\"\"\"\n\n## Config\n\n# script title\ntitle = 'Example'\n\n# is script available in txt2img tab\ntxt2img = False\n\n# is script available in img2img tab\nimg2img = False\n\n# is pipeline ok to run in pure latent mode without implicit conversions\n# recommended so entire ecosystem can be used as-is, but requires that latent is in format that sdnext can understand\n# some pipelines may not support this, in which case set to false and pipeline will implicitly do things like vae encode/decode on its own\nlatent = True\n\n# base pipeline class from which this pipeline is derived, most commonly 'StableDiffusionPipeline' or 'StableDiffusionXLPipeline'\npipeline_base = 'StableDiffusionPipeline'\n\n# class definition for this pipeline\n# for built-in diffuser pipelines, simply import it from diffusers.pipelines above\n# for example only, its set to same as base pipeline\n# for community pipelines, copy class definition from community source code\n# in which case only class definition code and required imports needs to be copied, not the entire source code\npipeline_class = StableDiffusionPipeline\n\n# pipeline args values are defined in ui method below, here we need to define their exact names\n# they also have to be in the exact order as they are defined in ui\n# note: variable names should be exactly as defined in pipeline_class.__call__ method\n# if pipeline requires a param and its not provided, it will result in runtime error\n# if you provide param that is not defined by pipeline, sdnext will strip it\nparams = ['test1', 'test2', 'test3', 'test4']\n\n\n### Script definition\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return title\n\n    def show(self, is_img2img):\n        return img2img if is_img2img else txt2img\n\n    # Define UI for pipeline\n    def ui(self, _is_img2img):\n        ui_controls = []\n        with gr.Row():\n            ui_controls.append(gr.Slider(minimum=0, maximum=1, step=0.1, value=0.5, label=\"Test1\"))\n            ui_controls.append(gr.Slider(minimum=0, maximum=10, step=1, value=5, label=\"Test2\"))\n        with gr.Row():\n            ui_controls.append(gr.Checkbox(label=\"Test3\", value=True))\n        with gr.Row():\n            ui_controls.append(gr.Textbox(label=\"Test4\", value=\"\", placeholder=\"enter text here\"))\n        with gr.Row():\n            gr.HTML('<a href=\"https://huggingface.co/docs/diffusers/api/pipelines/stable_diffusion/stable_diffusion_xl>Stable Diffusion SDXL pipeline docs</a>\"')\n        return ui_controls\n\n    # Run pipeline\n    def run(self, p: processing.StableDiffusionProcessing, *args): # pylint: disable=arguments-differ\n        # prepare pipeline\n        c = shared.sd_model.__class__.__name__ if shared.sd_loaded else ''\n        if c != pipeline_base:\n            shared.log.warning(f'{title}: pipeline={c} required={pipeline_base}')\n            return None\n        orig_pipeline = shared.sd_model # backup current pipeline definition\n        shared.sd_model = pipeline_class( # create new pipeline using currently loaded model which is always in `shared.sd_model`\n            # different pipelines may need different init params, so you may need to change this\n            # to see init params, see pipeline_class.__init__ method\n            # if init params are incorrect you will also see a runtime error with unrecognized or missing params\n            # for example:\n            # > TypeError: StableDiffusionPipeline.__init__() missing 2 required positional arguments: 'safety_checker' and 'feature_extractor'\n            vae = shared.sd_model.vae,\n            text_encoder=shared.sd_model.text_encoder,\n            tokenizer=shared.sd_model.tokenizer,\n            unet=shared.sd_model.unet,\n            scheduler=shared.sd_model.scheduler,\n            safety_checker=shared.sd_model.safety_checker,\n            feature_extractor=shared.sd_model.feature_extractor,\n        )\n        sd_models.copy_diffuser_options(shared.sd_model, orig_pipeline) # copy options from original pipeline\n        sd_models.set_diffuser_options(shared.sd_model) # set all model options such as fp16, offload, etc.\n        sd_models.move_model(shared.sd_model, devices.device) # move pipeline to device\n\n        # if pipeline also needs a specific type, you can set it here, but not commonly needed\n        # shared.sd_model = sd_models.set_diffuser_pipe(shared.sd_model, sd_models.DiffusersTaskType.IMAGE_2_IMAGE)\n\n        # prepare params\n        # all pipeline params go into p.task_args and are automatically handled by sdnext from there\n        for i in range(len(args)):\n            p.task_args[params[i]] = args[i]\n\n        # you can also re-use existing params from `p` object if pipeline wants them, but under a different name\n        # for example, if pipeline expects 'image' param, but you want to use 'init_images' instead which is what img2img tab uses\n        # p.task_args['image'] = p.init_images[0]\n\n        if not latent:\n            p.task_args['output_type'] = 'np'\n        shared.log.debug(f'{c}: args={p.task_args}')\n\n        # if you need to run any preprocessing, this is the place to do it\n\n        # run processing\n        processed: processing.Processed = processing.process_images(p)\n\n        # if you need to run any postprocessing, this is the place to do it\n        # you dont need to handle saving, metadata, etc - sdnext will do it for you\n\n        # restore original pipeline\n        shared.sd_model = orig_pipeline\n        return processed\n"
  },
  {
    "path": "scripts/flux_enhance.py",
    "content": "# repo: https://huggingface.co/gokaygokay/Flux-Prompt-Enhance\n\nimport time\nimport random\nimport threading\nfrom transformers import AutoTokenizer, AutoModelForSeq2SeqLM\nimport gradio as gr\nfrom modules import shared, scripts_manager, devices, processing\n\n\nrepo_id = \"gokaygokay/Flux-Prompt-Enhance\"\nnum_return_sequences = 5\nload_lock = threading.Lock()\n\n\nclass Script(scripts_manager.Script):\n    prompts = [['']]\n    tokenizer: AutoTokenizer = None\n    model: AutoModelForSeq2SeqLM = None\n    prefix: str = \"enhance prompt: \"\n    button: gr.Button = None\n    auto_apply: gr.Checkbox = None\n    max_length: gr.Slider = None\n    temperature: gr.Slider = None\n    repetition_penalty: gr.Slider = None\n    table: gr.DataFrame = None\n    prompt: gr.Textbox = None\n\n    def title(self):\n        return 'Flux Prompt enhance (Legacy)'\n\n    def show(self, is_img2img):\n        return True\n\n    def load(self):\n        with load_lock:\n            if self.tokenizer is None:\n                self.tokenizer = AutoTokenizer.from_pretrained('gokaygokay/Flux-Prompt-Enhance', cache_dir=shared.opts.hfcache_dir)\n            if self.model is None:\n                shared.log.info(f'Prompt enhance: model=\"{repo_id}\"')\n                self.model = AutoModelForSeq2SeqLM.from_pretrained('gokaygokay/Flux-Prompt-Enhance', cache_dir=shared.opts.hfcache_dir).to(device=devices.cpu, dtype=devices.dtype)\n\n    def enhance(self, prompt, auto_apply: bool = False, temperature: float = 0.7, repetition_penalty: float = 1.2, max_length: int = 128):\n        self.load()\n        t0 = time.time()\n        input_text = self.prefix + prompt\n        input_ids = self.tokenizer(input_text, return_tensors=\"pt\").input_ids.to(devices.device)\n        self.model = self.model.to(devices.device)\n        kwargs = {\n            'max_length': int(max_length),\n            'num_return_sequences': int(num_return_sequences),\n            'do_sample': True,\n            'temperature': float(temperature),\n            'repetition_penalty': float(repetition_penalty),\n        }\n        try:\n            outputs = self.model.generate(input_ids, **kwargs)\n        except Exception as e:\n            shared.log.error(f'Prompt enhance: error=\"{e}\"')\n            return [['']]\n        self.model = self.model.to(devices.cpu)\n        prompts = self.tokenizer.batch_decode(outputs, skip_special_tokens=True)\n        prompts = [[p] for p in prompts]\n        t1 = time.time()\n        shared.log.info(f'Prompt enhance: temperature={temperature} repetition={repetition_penalty} length={max_length} sequences={num_return_sequences} apply={auto_apply} time={t1-t0:.2f}s')\n        return prompts\n\n    def select(self, cell: gr.SelectData, _table):\n        prompt = cell.value if hasattr(cell, 'value') else cell\n        shared.log.info(f'Prompt enhance: prompt=\"{prompt}\"')\n        return prompt\n\n    def ui(self, _is_img2img):\n        with gr.Row():\n            self.button = gr.Button(value='Enhance prompt')\n            self.auto_apply = gr.Checkbox(label='Auto apply', value=False)\n        with gr.Row():\n            self.max_length = gr.Slider(label='Length', minimum=64, maximum=512, step=1, value=128)\n            self.temperature = gr.Slider(label='Temperature', minimum=0.1, maximum=2.0, step=0.05, value=0.7)\n            self.repetition_penalty = gr.Slider(label='Penalty', minimum=0.1, maximum=2.0, step=0.05, value=1.2)\n        with gr.Row():\n            self.table = gr.DataFrame(self.prompts, label='', show_label=False, interactive=False, wrap=True, datatype=\"str\", col_count=1, headers=['Prompts'])\n\n        if self.prompt is not None:\n            self.button.click(fn=self.enhance, inputs=[self.prompt, self.auto_apply, self.temperature, self.repetition_penalty, self.max_length], outputs=[self.table])\n            self.table.select(fn=self.select, inputs=[self.table], outputs=[self.prompt])\n        return [self.auto_apply, self.temperature, self.repetition_penalty, self.max_length]\n\n    def run(self, p: processing.StableDiffusionProcessing, auto_apply, temperature, repetition_penalty, max_length): # pylint: disable=arguments-differ\n        if auto_apply:\n            p.prompt = shared.prompt_styles.apply_styles_to_prompt(p.prompt, p.styles)\n            p.negative_prompt = shared.prompt_styles.apply_negative_styles_to_prompt(p.negative_prompt, p.styles)\n            shared.prompt_styles.apply_styles_to_extra(p)\n            p.styles = []\n            shared.log.debug(f'Prompt enhance: source=\"{p.prompt}\"')\n            prompts = self.enhance(p.prompt, auto_apply, temperature, repetition_penalty, max_length)\n            p.prompt = random.choice(prompts)[0]\n            shared.log.debug(f'Prompt enhance: prompt=\"{p.prompt}\"')\n\n    def after_component(self, component, **kwargs): # searching for actual ui prompt components\n        if getattr(component, 'elem_id', '') in ['txt2img_prompt', 'img2img_prompt', 'control_prompt', 'video_prompt']:\n            self.prompt = component\n            self.prompt.use_original = True\n"
  },
  {
    "path": "scripts/flux_tools.py",
    "content": "# https://github.com/huggingface/diffusers/pull/9985\n\nimport time\nimport gradio as gr\nimport diffusers\nfrom modules import scripts_manager, processing, shared, devices, sd_models\nfrom installer import install\n\n\n# redux_pipe: diffusers.FluxPriorReduxPipeline = None\nredux_pipe = None\nprocessor_canny = None\nprocessor_depth = None\ntitle = 'Flux Tools'\n\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return f'{title}'\n\n    def show(self, is_img2img):\n        return is_img2img\n\n    def ui(self, _is_img2img): # ui elements\n        with gr.Row():\n            gr.HTML('<a href=\"https://blackforestlabs.ai/flux-1-tools/\">&nbsp Flux.1 Redux</a><br>')\n        with gr.Row():\n            tool = gr.Dropdown(label='Tool', choices=['None', 'Redux', 'Fill', 'Canny', 'Depth'], value='None')\n        with gr.Row():\n            prompt = gr.Slider(label='Redux prompt strength', minimum=0, maximum=2, step=0.01, value=0, visible=False)\n            process = gr.Checkbox(label='Control preprocess input images', value=True, visible=False)\n            strength = gr.Checkbox(label='Control override denoise strength', value=True, visible=False)\n\n        def display(tool):\n            return [\n                gr.update(visible=tool in ['Redux']),\n                gr.update(visible=tool in ['Canny', 'Depth']),\n                gr.update(visible=tool in ['Canny', 'Depth']),\n            ]\n\n        tool.change(fn=display, inputs=[tool], outputs=[prompt, process, strength])\n        return [tool, prompt, strength, process]\n\n    def run(self, p: processing.StableDiffusionProcessing, tool: str = 'None', prompt: float = 1.0, strength: bool = True, process: bool = True): # pylint: disable=arguments-differ\n        global redux_pipe, processor_canny, processor_depth # pylint: disable=global-statement\n        if tool is None or tool == 'None':\n            return None\n        image = getattr(p, 'init_images', None)\n        if image is None or len(image) == 0:\n            shared.log.error(f'{title}: tool={tool} no init_images')\n            return None\n        else:\n            image = image[0] if isinstance(image, list) else image\n\n        shared.log.info(f'{title}: tool={tool} init')\n\n        t0 = time.time()\n        if tool == 'Redux':\n            supported_model_list = ['f1']\n            if shared.sd_model_type not in supported_model_list:\n                shared.log.warning(f'{title}: class={shared.sd_model.__class__.__name__} model={shared.sd_model_type} required={supported_model_list}')\n                return None\n            # pipe_prior_redux = FluxPriorReduxPipeline.from_pretrained(\"black-forest-labs/FLUX.1-Redux-dev\", revision=\"refs/pr/8\", torch_dtype=torch.bfloat16).to(\"cuda\")\n            shared.log.debug(f'{title}: tool={tool} prompt={prompt}')\n            if redux_pipe is None:\n                redux_pipe = diffusers.FluxPriorReduxPipeline.from_pretrained(\n                    \"black-forest-labs/FLUX.1-Redux-dev\",\n                    revision=\"refs/pr/8\",\n                    torch_dtype=devices.dtype,\n                    cache_dir=shared.opts.hfcache_dir\n                ).to(devices.device)\n            if prompt > 0:\n                shared.log.info(f'{title}: tool={tool} load text encoder')\n                redux_pipe.tokenizer, redux_pipe.tokenizer_2 = shared.sd_model.tokenizer, shared.sd_model.tokenizer_2\n                redux_pipe.text_encoder, redux_pipe.text_encoder_2 = shared.sd_model.text_encoder, shared.sd_model.text_encoder_2\n            sd_models.apply_balanced_offload(redux_pipe)\n            redux_output = redux_pipe(\n                image=image,\n                prompt=p.prompt if prompt > 0 else None,\n                prompt_embeds_scale=[prompt],\n                pooled_prompt_embeds_scale=[prompt],\n            )\n            if prompt > 0:\n                redux_pipe.tokenizer, redux_pipe.tokenizer_2 = None, None\n                redux_pipe.text_encoder, redux_pipe.text_encoder_2 = None, None\n                devices.torch_gc()\n            for k, v in redux_output.items():\n                p.task_args[k] = v\n        else:\n            if redux_pipe is not None:\n                shared.log.debug(f'{title}: tool=Redux unload')\n                redux_pipe = None\n\n        if tool == 'Fill':\n            # pipe = FluxFillPipeline.from_pretrained(\"black-forest-labs/FLUX.1-Fill-dev\", torch_dtype=torch.bfloat16, revision=\"refs/pr/4\").to(\"cuda\")\n            if p.image_mask is None:\n                shared.log.error(f'{title}: tool={tool} no image_mask')\n                return None\n            if shared.sd_model.__class__.__name__ != 'FluxFillPipeline':\n                shared.opts.data[\"sd_model_checkpoint\"] = \"black-forest-labs/FLUX.1-Fill-dev\"\n                sd_models.reload_model_weights(op='model', revision=\"refs/pr/4\")\n            p.task_args['image'] = image\n            p.task_args['mask_image'] = p.image_mask\n\n        if tool == 'Canny':\n            # pipe = diffusers.FluxControlPipeline.from_pretrained(\"black-forest-labs/FLUX.1-Canny-dev\", torch_dtype=torch.bfloat16, revision=\"refs/pr/1\").to(\"cuda\")\n            install('controlnet-aux')\n            install('timm==0.9.16')\n            if shared.sd_model.__class__.__name__ != 'FluxControlPipeline' or 'Canny' not in shared.opts.sd_model_checkpoint:\n                shared.opts.data[\"sd_model_checkpoint\"] = \"black-forest-labs/FLUX.1-Canny-dev\"\n                sd_models.reload_model_weights(op='model', revision=\"refs/pr/1\")\n            if processor_canny is None:\n                from controlnet_aux import CannyDetector\n                processor_canny = CannyDetector()\n            if process:\n                control_image = processor_canny(image, low_threshold=50, high_threshold=200, detect_resolution=1024, image_resolution=1024)\n                p.task_args['control_image'] = control_image\n            else:\n                p.task_args['control_image'] = image\n            if strength:\n                p.task_args['strength'] = None\n        else:\n            if processor_canny is not None:\n                shared.log.debug(f'{title}: tool=Canny unload processor')\n                processor_canny = None\n\n        if tool == 'Depth':\n            # pipe = diffusers.FluxControlPipeline.from_pretrained(\"black-forest-labs/FLUX.1-Depth-dev\", torch_dtype=torch.bfloat16, revision=\"refs/pr/1\").to(\"cuda\")\n            install('git+https://github.com/huggingface/image_gen_aux.git', 'image_gen_aux')\n            if shared.sd_model.__class__.__name__ != 'FluxControlPipeline' or 'Depth' not in shared.opts.sd_model_checkpoint:\n                shared.opts.data[\"sd_model_checkpoint\"] = \"black-forest-labs/FLUX.1-Depth-dev\"\n                sd_models.reload_model_weights(op='model', revision=\"refs/pr/1\")\n            if processor_depth is None:\n                from image_gen_aux import DepthPreprocessor\n                processor_depth = DepthPreprocessor.from_pretrained(\"LiheYoung/depth-anything-large-hf\")\n            if process:\n                control_image = processor_depth(image)[0].convert(\"RGB\")\n                p.task_args['control_image'] = control_image\n            else:\n                p.task_args['control_image'] = image\n            if strength:\n                p.task_args['strength'] = None\n        else:\n            if processor_depth is not None:\n                shared.log.debug(f'{title}: tool=Depth unload processor')\n                processor_depth = None\n\n        shared.log.debug(f'{title}: tool={tool} ready time={time.time() - t0:.2f}')\n        devices.torch_gc()\n        return None\n"
  },
  {
    "path": "scripts/freescale/__init__.py",
    "content": "# Credits: https://github.com/ali-vilab/FreeScale\n\nfrom .freescale_pipeline import StableDiffusionXLFreeScale\nfrom .freescale_pipeline_img2img import StableDiffusionXLFreeScaleImg2Img\n"
  },
  {
    "path": "scripts/freescale/free_lunch_utils.py",
    "content": "from typing import Any, Dict, Optional, Tuple\nimport torch\nimport torch.fft as fft\nfrom diffusers.utils import is_torch_version\nfrom modules import devices\n\n\"\"\" Borrowed from https://github.com/ChenyangSi/FreeU/blob/main/demo/free_lunch_utils.py\n\"\"\"\n\ndef isinstance_str(x: object, cls_name: str):\n    \"\"\"\n    Checks whether x has any class *named* cls_name in its ancestry.\n    Doesn't require access to the class's implementation.\n\n    Useful for patching!\n    \"\"\"\n\n    for _cls in x.__class__.__mro__:\n        if _cls.__name__ == cls_name:\n            return True\n\n    return False\n\n\ndef Fourier_filter(x, threshold, scale):\n    dtype = x.dtype\n    x = x.type(torch.float32)\n    # FFT\n    x_freq = fft.fftn(x, dim=(-2, -1))\n    x_freq = fft.fftshift(x_freq, dim=(-2, -1))\n\n    B, C, H, W = x_freq.shape\n    mask = torch.ones((B, C, H, W)).to(device=devices.device)\n\n    crow, ccol = H // 2, W //2\n    mask[..., crow - threshold:crow + threshold, ccol - threshold:ccol + threshold] = scale\n    x_freq = x_freq * mask\n\n    # IFFT\n    x_freq = fft.ifftshift(x_freq, dim=(-2, -1))\n    x_filtered = fft.ifftn(x_freq, dim=(-2, -1)).real\n\n    x_filtered = x_filtered.type(dtype)\n    return x_filtered\n\n\ndef register_upblock2d(model):\n    def up_forward(self):\n        def forward(hidden_states, res_hidden_states_tuple, temb=None, upsample_size=None):\n            for resnet in self.resnets:\n                # pop res hidden states\n                res_hidden_states = res_hidden_states_tuple[-1]\n                res_hidden_states_tuple = res_hidden_states_tuple[:-1]\n                #print(f\"in upblock2d, hidden states shape: {hidden_states.shape}\")\n                hidden_states = torch.cat([hidden_states, res_hidden_states], dim=1)\n\n                if self.training and self.gradient_checkpointing:\n\n                    def create_custom_forward(module):\n                        def custom_forward(*inputs):\n                            return module(*inputs)\n\n                        return custom_forward\n\n                    if is_torch_version(\">=\", \"1.11.0\"):\n                        hidden_states = torch.utils.checkpoint.checkpoint(\n                            create_custom_forward(resnet), hidden_states, temb, use_reentrant=False\n                        )\n                    else:\n                        hidden_states = torch.utils.checkpoint.checkpoint(\n                            create_custom_forward(resnet), hidden_states, temb\n                        )\n                else:\n                    hidden_states = resnet(hidden_states, temb)\n\n            if self.upsamplers is not None:\n                for upsampler in self.upsamplers:\n                    hidden_states = upsampler(hidden_states, upsample_size)\n\n            return hidden_states\n\n        return forward\n\n    for i, upsample_block in enumerate(model.unet.up_blocks):\n        if isinstance_str(upsample_block, \"UpBlock2D\"):\n            upsample_block.forward = up_forward(upsample_block)\n\n\ndef register_free_upblock2d(model, b1=1.2, b2=1.4, s1=0.9, s2=0.2):\n    def up_forward(self):\n        def forward(hidden_states, res_hidden_states_tuple, temb=None, upsample_size=None):\n            for resnet in self.resnets:\n                # pop res hidden states\n                res_hidden_states = res_hidden_states_tuple[-1]\n                res_hidden_states_tuple = res_hidden_states_tuple[:-1]\n                #print(f\"in free upblock2d, hidden states shape: {hidden_states.shape}\")\n\n                # --------------- FreeU code -----------------------\n                # Only operate on the first two stages\n                if hidden_states.shape[1] == 1280:\n                    hidden_states[:,:640] = hidden_states[:,:640] * self.b1\n                    res_hidden_states = Fourier_filter(res_hidden_states, threshold=1, scale=self.s1)\n                if hidden_states.shape[1] == 640:\n                    hidden_states[:,:320] = hidden_states[:,:320] * self.b2\n                    res_hidden_states = Fourier_filter(res_hidden_states, threshold=1, scale=self.s2)\n                # ---------------------------------------------------------\n\n                hidden_states = torch.cat([hidden_states, res_hidden_states], dim=1)\n\n                if self.training and self.gradient_checkpointing:\n\n                    def create_custom_forward(module):\n                        def custom_forward(*inputs):\n                            return module(*inputs)\n\n                        return custom_forward\n\n                    if is_torch_version(\">=\", \"1.11.0\"):\n                        hidden_states = torch.utils.checkpoint.checkpoint(\n                            create_custom_forward(resnet), hidden_states, temb, use_reentrant=False\n                        )\n                    else:\n                        hidden_states = torch.utils.checkpoint.checkpoint(\n                            create_custom_forward(resnet), hidden_states, temb\n                        )\n                else:\n                    hidden_states = resnet(hidden_states, temb)\n\n            if self.upsamplers is not None:\n                for upsampler in self.upsamplers:\n                    hidden_states = upsampler(hidden_states, upsample_size)\n\n            return hidden_states\n\n        return forward\n\n    for i, upsample_block in enumerate(model.unet.up_blocks):\n        if isinstance_str(upsample_block, \"UpBlock2D\"):\n            upsample_block.forward = up_forward(upsample_block)\n            setattr(upsample_block, 'b1', b1)\n            setattr(upsample_block, 'b2', b2)\n            setattr(upsample_block, 's1', s1)\n            setattr(upsample_block, 's2', s2)\n\n\ndef register_crossattn_upblock2d(model):\n    def up_forward(self):\n        def forward(\n            hidden_states: torch.FloatTensor,\n            res_hidden_states_tuple: Tuple[torch.FloatTensor, ...],\n            temb: Optional[torch.FloatTensor] = None,\n            encoder_hidden_states: Optional[torch.FloatTensor] = None,\n            cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n            upsample_size: Optional[int] = None,\n            attention_mask: Optional[torch.FloatTensor] = None,\n            encoder_attention_mask: Optional[torch.FloatTensor] = None,\n        ):\n            for resnet, attn in zip(self.resnets, self.attentions):\n                # pop res hidden states\n                #print(f\"in crossatten upblock2d, hidden states shape: {hidden_states.shape}\")\n                res_hidden_states = res_hidden_states_tuple[-1]\n                res_hidden_states_tuple = res_hidden_states_tuple[:-1]\n                hidden_states = torch.cat([hidden_states, res_hidden_states], dim=1)\n\n                if self.training and self.gradient_checkpointing:\n\n                    def create_custom_forward(module, return_dict=None):\n                        def custom_forward(*inputs):\n                            if return_dict is not None:\n                                return module(*inputs, return_dict=return_dict)\n                            else:\n                                return module(*inputs)\n\n                        return custom_forward\n\n                    ckpt_kwargs: Dict[str, Any] = {\"use_reentrant\": False} if is_torch_version(\">=\", \"1.11.0\") else {}\n                    hidden_states = torch.utils.checkpoint.checkpoint(\n                        create_custom_forward(resnet),\n                        hidden_states,\n                        temb,\n                        **ckpt_kwargs,\n                    )\n                    hidden_states = torch.utils.checkpoint.checkpoint(\n                        create_custom_forward(attn, return_dict=False),\n                        hidden_states,\n                        encoder_hidden_states,\n                        None,  # timestep\n                        None,  # class_labels\n                        cross_attention_kwargs,\n                        attention_mask,\n                        encoder_attention_mask,\n                        **ckpt_kwargs,\n                    )[0]\n                else:\n                    hidden_states = resnet(hidden_states, temb)\n                    hidden_states = attn(\n                        hidden_states,\n                        encoder_hidden_states=encoder_hidden_states,\n                        cross_attention_kwargs=cross_attention_kwargs,\n                        attention_mask=attention_mask,\n                        encoder_attention_mask=encoder_attention_mask,\n                        return_dict=False,\n                    )[0]\n\n            if self.upsamplers is not None:\n                for upsampler in self.upsamplers:\n                    hidden_states = upsampler(hidden_states, upsample_size)\n\n            return hidden_states\n\n        return forward\n\n    for i, upsample_block in enumerate(model.unet.up_blocks):\n        if isinstance_str(upsample_block, \"CrossAttnUpBlock2D\"):\n            upsample_block.forward = up_forward(upsample_block)\n\n\ndef register_free_crossattn_upblock2d(model, b1=1.2, b2=1.4, s1=0.9, s2=0.2):\n    def up_forward(self):\n        def forward(\n            hidden_states: torch.FloatTensor,\n            res_hidden_states_tuple: Tuple[torch.FloatTensor, ...],\n            temb: Optional[torch.FloatTensor] = None,\n            encoder_hidden_states: Optional[torch.FloatTensor] = None,\n            cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n            upsample_size: Optional[int] = None,\n            attention_mask: Optional[torch.FloatTensor] = None,\n            encoder_attention_mask: Optional[torch.FloatTensor] = None,\n        ):\n            for resnet, attn in zip(self.resnets, self.attentions):\n                # pop res hidden states\n                #print(f\"in free crossatten upblock2d, hidden states shape: {hidden_states.shape}\")\n                res_hidden_states = res_hidden_states_tuple[-1]\n                res_hidden_states_tuple = res_hidden_states_tuple[:-1]\n\n                # --------------- FreeU code -----------------------\n                # Only operate on the first two stages\n                if hidden_states.shape[1] == 1280:\n                    hidden_states[:,:640] = hidden_states[:,:640] * self.b1\n                    res_hidden_states = Fourier_filter(res_hidden_states, threshold=1, scale=self.s1)\n                if hidden_states.shape[1] == 640:\n                    hidden_states[:,:320] = hidden_states[:,:320] * self.b2\n                    res_hidden_states = Fourier_filter(res_hidden_states, threshold=1, scale=self.s2)\n                # ---------------------------------------------------------\n\n                hidden_states = torch.cat([hidden_states, res_hidden_states], dim=1)\n\n                if self.training and self.gradient_checkpointing:\n\n                    def create_custom_forward(module, return_dict=None):\n                        def custom_forward(*inputs):\n                            if return_dict is not None:\n                                return module(*inputs, return_dict=return_dict)\n                            else:\n                                return module(*inputs)\n\n                        return custom_forward\n\n                    ckpt_kwargs: Dict[str, Any] = {\"use_reentrant\": False} if is_torch_version(\">=\", \"1.11.0\") else {}\n                    hidden_states = torch.utils.checkpoint.checkpoint(\n                        create_custom_forward(resnet),\n                        hidden_states,\n                        temb,\n                        **ckpt_kwargs,\n                    )\n                    hidden_states = torch.utils.checkpoint.checkpoint(\n                        create_custom_forward(attn, return_dict=False),\n                        hidden_states,\n                        encoder_hidden_states,\n                        None,  # timestep\n                        None,  # class_labels\n                        cross_attention_kwargs,\n                        attention_mask,\n                        encoder_attention_mask,\n                        **ckpt_kwargs,\n                    )[0]\n                else:\n                    hidden_states = resnet(hidden_states, temb)\n                    # hidden_states = attn(\n                    #     hidden_states,\n                    #     encoder_hidden_states=encoder_hidden_states,\n                    #     cross_attention_kwargs=cross_attention_kwargs,\n                    #     encoder_attention_mask=encoder_attention_mask,\n                    #     return_dict=False,\n                    # )[0]\n                    hidden_states = attn(\n                        hidden_states,\n                        encoder_hidden_states=encoder_hidden_states,\n                        cross_attention_kwargs=cross_attention_kwargs,\n                    )[0]\n\n            if self.upsamplers is not None:\n                for upsampler in self.upsamplers:\n                    hidden_states = upsampler(hidden_states, upsample_size)\n\n            return hidden_states\n\n        return forward\n\n    for i, upsample_block in enumerate(model.unet.up_blocks):\n        if isinstance_str(upsample_block, \"CrossAttnUpBlock2D\"):\n            upsample_block.forward = up_forward(upsample_block)\n            setattr(upsample_block, 'b1', b1)\n            setattr(upsample_block, 'b2', b2)\n            setattr(upsample_block, 's1', s1)\n            setattr(upsample_block, 's2', s2)\n"
  },
  {
    "path": "scripts/freescale/freescale_pipeline.py",
    "content": "from inspect import isfunction\nfrom functools import partial\nfrom typing import Any, Callable, Dict, List, Optional, Tuple, Union\nimport inspect\nimport os\nimport random\n\nimport numpy as np\nimport torch\nimport torch.nn.functional as F\nfrom einops import rearrange\nfrom transformers import CLIPTextModel, CLIPTextModelWithProjection, CLIPTokenizer\n\nfrom diffusers.image_processor import VaeImageProcessor\nfrom diffusers.loaders import FromSingleFileMixin, LoraLoaderMixin, TextualInversionLoaderMixin\nfrom diffusers.models import AutoencoderKL, UNet2DConditionModel\nfrom diffusers.models.attention_processor import AttnProcessor2_0, LoRAAttnProcessor2_0, LoRAXFormersAttnProcessor, XFormersAttnProcessor\nfrom diffusers.schedulers import KarrasDiffusionSchedulers\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom diffusers.utils import is_accelerate_available, is_accelerate_version, logging, replace_example_docstring\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline\nfrom diffusers.pipelines.stable_diffusion_xl.pipeline_output import StableDiffusionXLPipelineOutput\nfrom diffusers.models.attention import BasicTransformerBlock\n\nfrom .scale_attention import ori_forward, scale_forward\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\nEXAMPLE_DOC_STRING = \"\"\"\n    Examples:\n        ```py\n        >>> import torch\n        >>> from diffusers import StableDiffusionXLPipeline\n\n        >>> pipe = StableDiffusionXLPipeline.from_pretrained(\n        ...     \"stabilityai/stable-diffusion-xl-base-1.0\", torch_dtype=torch.float16\n        ... )\n        >>> pipe = pipe.to(\"cuda\")\n\n        >>> prompt = \"a photo of an astronaut riding a horse on mars\"\n        >>> image = pipe(prompt).images[0]\n        ```\n\"\"\"\n\ndef default(val, d):\n    if exists(val):\n        return val\n    return d() if isfunction(d) else d\n\ndef exists(val):\n    return val is not None\n\ndef extract_into_tensor(a, t, x_shape):\n    b, *_ = t.shape\n    out = a.gather(-1, t)\n    return out.reshape(b, *((1,) * (len(x_shape) - 1)))\n\ndef make_beta_schedule(schedule, n_timestep, linear_start=1e-4, linear_end=2e-2, cosine_s=8e-3):\n    if schedule == \"linear\":\n        betas = (\n                torch.linspace(linear_start ** 0.5, linear_end ** 0.5, n_timestep, dtype=torch.float64) ** 2\n        )\n    elif schedule == \"cosine\":\n        timesteps = (\n                torch.arange(n_timestep + 1, dtype=torch.float64) / n_timestep + cosine_s\n        )\n        alphas = timesteps / (1 + cosine_s) * np.pi / 2\n        alphas = torch.cos(alphas).pow(2)\n        alphas = alphas / alphas[0]\n        betas = 1 - alphas[1:] / alphas[:-1]\n        betas = np.clip(betas, a_min=0, a_max=0.999)\n    elif schedule == \"sqrt_linear\":\n        betas = torch.linspace(linear_start, linear_end, n_timestep, dtype=torch.float64)\n    elif schedule == \"sqrt\":\n        betas = torch.linspace(linear_start, linear_end, n_timestep, dtype=torch.float64) ** 0.5\n    else:\n        raise ValueError(f\"schedule '{schedule}' unknown.\")\n    return betas.numpy()\n\nto_torch = partial(torch.tensor, dtype=torch.float16)\nbetas = make_beta_schedule(\"linear\", 1000, linear_start=0.00085, linear_end=0.012)\nalphas = 1. - betas\nalphas_cumprod = np.cumprod(alphas, axis=0)\nsqrt_alphas_cumprod = to_torch(np.sqrt(alphas_cumprod))\nsqrt_one_minus_alphas_cumprod = to_torch(np.sqrt(1. - alphas_cumprod))\n\ndef q_sample(x_start, t, init_noise_sigma = 1.0, noise=None, device=None):\n    noise = default(noise, lambda: torch.randn_like(x_start)).to(device) * init_noise_sigma\n    return (extract_into_tensor(sqrt_alphas_cumprod.to(device), t, x_start.shape) * x_start +\n            extract_into_tensor(sqrt_one_minus_alphas_cumprod.to(device), t, x_start.shape) * noise)\n\ndef get_views(height, width, h_window_size=128, w_window_size=128, h_window_stride=64, w_window_stride=64, vae_scale_factor=8):\n    height //= vae_scale_factor\n    width //= vae_scale_factor\n    num_blocks_height = int((height - h_window_size) / h_window_stride - 1e-6) + 2 if height > h_window_size else 1\n    num_blocks_width = int((width - w_window_size) / w_window_stride - 1e-6) + 2 if width > w_window_size else 1\n    total_num_blocks = int(num_blocks_height * num_blocks_width)\n    views = []\n    for i in range(total_num_blocks):\n        h_start = int((i // num_blocks_width) * h_window_stride)\n        h_end = h_start + h_window_size\n        w_start = int((i % num_blocks_width) * w_window_stride)\n        w_end = w_start + w_window_size\n\n        if h_end > height:\n            h_start = int(h_start + height - h_end)\n            h_end = int(height)\n        if w_end > width:\n            w_start = int(w_start + width - w_end)\n            w_end = int(width)\n        if h_start < 0:\n            h_end = int(h_end - h_start)\n            h_start = 0\n        if w_start < 0:\n            w_end = int(w_end - w_start)\n            w_start = 0\n\n        random_jitter = True\n        if random_jitter:\n            h_jitter_range = (h_window_size - h_window_stride) // 4\n            w_jitter_range = (w_window_size - w_window_stride) // 4\n            h_jitter = 0\n            w_jitter = 0\n\n            if (w_start != 0) and (w_end != width):\n                w_jitter = random.randint(-w_jitter_range, w_jitter_range)\n            elif (w_start == 0) and (w_end != width):\n                w_jitter = random.randint(-w_jitter_range, 0)\n            elif (w_start != 0) and (w_end == width):\n                w_jitter = random.randint(0, w_jitter_range)\n            if (h_start != 0) and (h_end != height):\n                h_jitter = random.randint(-h_jitter_range, h_jitter_range)\n            elif (h_start == 0) and (h_end != height):\n                h_jitter = random.randint(-h_jitter_range, 0)\n            elif (h_start != 0) and (h_end == height):\n                h_jitter = random.randint(0, h_jitter_range)\n            h_start += (h_jitter + h_jitter_range)\n            h_end += (h_jitter + h_jitter_range)\n            w_start += (w_jitter + w_jitter_range)\n            w_end += (w_jitter + w_jitter_range)\n\n        views.append((h_start, h_end, w_start, w_end))\n    return views\n\ndef gaussian_kernel(kernel_size=3, sigma=1.0, channels=3):\n    x_coord = torch.arange(kernel_size)\n    gaussian_1d = torch.exp(-(x_coord - (kernel_size - 1) / 2) ** 2 / (2 * sigma ** 2))\n    gaussian_1d = gaussian_1d / gaussian_1d.sum()\n    gaussian_2d = gaussian_1d[:, None] * gaussian_1d[None, :]\n    kernel = gaussian_2d[None, None, :, :].repeat(channels, 1, 1, 1)\n\n    return kernel\n\ndef gaussian_filter(latents, kernel_size=3, sigma=1.0):\n    channels = latents.shape[1]\n    kernel = gaussian_kernel(kernel_size, sigma, channels).to(latents.device, latents.dtype)\n    if len(latents.shape) == 5:\n        b = latents.shape[0]\n        latents = rearrange(latents, 'b c t i j -> (b t) c i j')\n        blurred_latents = F.conv2d(latents, kernel, padding=kernel_size//2, groups=channels)\n        blurred_latents = rearrange(blurred_latents, '(b t) c i j -> b c t i j', b=b)\n    else:\n        blurred_latents = F.conv2d(latents, kernel, padding=kernel_size//2, groups=channels)\n\n    return blurred_latents\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.rescale_noise_cfg\ndef rescale_noise_cfg(noise_cfg, noise_pred_text, guidance_rescale=0.0):\n    \"\"\"\n    Rescale `noise_cfg` according to `guidance_rescale`. Based on findings of [Common Diffusion Noise Schedules and\n    Sample Steps are Flawed](https://arxiv.org/pdf/2305.08891.pdf). See Section 3.4\n    \"\"\"\n    std_text = noise_pred_text.std(dim=list(range(1, noise_pred_text.ndim)), keepdim=True)\n    std_cfg = noise_cfg.std(dim=list(range(1, noise_cfg.ndim)), keepdim=True)\n    # rescale the results from guidance (fixes overexposure)\n    noise_pred_rescaled = noise_cfg * (std_text / std_cfg)\n    # mix with the original results from guidance by factor guidance_rescale to avoid \"plain looking\" images\n    noise_cfg = guidance_rescale * noise_pred_rescaled + (1 - guidance_rescale) * noise_cfg\n    return noise_cfg\n\n\nclass StableDiffusionXLFreeScale(DiffusionPipeline, FromSingleFileMixin, LoraLoaderMixin):\n    r\"\"\"\n    Pipeline for text-to-image generation using Stable Diffusion XL.\n\n    This model inherits from [`DiffusionPipeline`]. Check the superclass documentation for the generic methods the\n    library implements for all the pipelines (such as downloading or saving, running on a particular device, etc.)\n\n    In addition the pipeline inherits the following loading methods:\n        - *LoRA*: [`StableDiffusionXLPipeline.load_lora_weights`]\n        - *Ckpt*: [`loaders.FromSingleFileMixin.from_single_file`]\n\n    as well as the following saving methods:\n        - *LoRA*: [`loaders.StableDiffusionXLPipeline.save_lora_weights`]\n\n    Args:\n        vae ([`AutoencoderKL`]):\n            Variational Auto-Encoder (VAE) Model to encode and decode images to and from latent representations.\n        text_encoder ([`CLIPTextModel`]):\n            Frozen text-encoder. Stable Diffusion XL uses the text portion of\n            [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModel), specifically\n            the [clip-vit-large-patch14](https://huggingface.co/openai/clip-vit-large-patch14) variant.\n        text_encoder_2 ([` CLIPTextModelWithProjection`]):\n            Second frozen text-encoder. Stable Diffusion XL uses the text and pool portion of\n            [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModelWithProjection),\n            specifically the\n            [laion/CLIP-ViT-bigG-14-laion2B-39B-b160k](https://huggingface.co/laion/CLIP-ViT-bigG-14-laion2B-39B-b160k)\n            variant.\n        tokenizer (`CLIPTokenizer`):\n            Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer).\n        tokenizer_2 (`CLIPTokenizer`):\n            Second Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer).\n        unet ([`UNet2DConditionModel`]): Conditional U-Net architecture to denoise the encoded image latents.\n        scheduler ([`SchedulerMixin`]):\n            A scheduler to be used in combination with `unet` to denoise the encoded image latents. Can be one of\n            [`DDIMScheduler`], [`LMSDiscreteScheduler`], or [`PNDMScheduler`].\n    \"\"\"\n\n    def __init__(\n        self,\n        vae: AutoencoderKL,\n        text_encoder: CLIPTextModel,\n        text_encoder_2: CLIPTextModelWithProjection,\n        tokenizer: CLIPTokenizer,\n        tokenizer_2: CLIPTokenizer,\n        unet: UNet2DConditionModel,\n        scheduler: KarrasDiffusionSchedulers,\n        force_zeros_for_empty_prompt: bool = True,\n    ):\n        super().__init__()\n\n        self.register_modules(\n            vae=vae,\n            text_encoder=text_encoder,\n            text_encoder_2=text_encoder_2,\n            tokenizer=tokenizer,\n            tokenizer_2=tokenizer_2,\n            unet=unet,\n            scheduler=scheduler,\n        )\n        self.register_to_config(force_zeros_for_empty_prompt=force_zeros_for_empty_prompt)\n        self.vae_scale_factor = 2 ** (len(self.vae.config.block_out_channels) - 1)\n        self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor)\n        self.default_sample_size = self.unet.config.sample_size\n        self.vae.enable_tiling()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.enable_vae_slicing\n    def enable_vae_slicing(self):\n        r\"\"\"\n        Enable sliced VAE decoding. When this option is enabled, the VAE will split the input tensor in slices to\n        compute decoding in several steps. This is useful to save some memory and allow larger batch sizes.\n        \"\"\"\n        self.vae.enable_slicing()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.disable_vae_slicing\n    def disable_vae_slicing(self):\n        r\"\"\"\n        Disable sliced VAE decoding. If `enable_vae_slicing` was previously enabled, this method will go back to\n        computing decoding in one step.\n        \"\"\"\n        self.vae.disable_slicing()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.enable_vae_tiling\n    def enable_vae_tiling(self):\n        r\"\"\"\n        Enable tiled VAE decoding. When this option is enabled, the VAE will split the input tensor into tiles to\n        compute decoding and encoding in several steps. This is useful for saving a large amount of memory and to allow\n        processing larger images.\n        \"\"\"\n        self.vae.enable_tiling()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.disable_vae_tiling\n    def disable_vae_tiling(self):\n        r\"\"\"\n        Disable tiled VAE decoding. If `enable_vae_tiling` was previously enabled, this method will go back to\n        computing decoding in one step.\n        \"\"\"\n        self.vae.disable_tiling()\n\n    def enable_model_cpu_offload(self, gpu_id=0):\n        r\"\"\"\n        Offloads all models to CPU using accelerate, reducing memory usage with a low impact on performance. Compared\n        to `enable_sequential_cpu_offload`, this method moves one whole model at a time to the GPU when its `forward`\n        method is called, and the model remains in GPU until the next model runs. Memory savings are lower than with\n        `enable_sequential_cpu_offload`, but performance is much better due to the iterative execution of the `unet`.\n        \"\"\"\n        if is_accelerate_available() and is_accelerate_version(\">=\", \"0.17.0.dev0\"):\n            from accelerate import cpu_offload_with_hook\n        else:\n            raise ImportError(\"`enable_model_cpu_offload` requires `accelerate v0.17.0` or higher.\")\n\n        device = torch.device(f\"cuda:{gpu_id}\")\n\n        if self.device.type != \"cpu\":\n            self.to(\"cpu\", silence_dtype_warnings=True)\n            torch.cuda.empty_cache()  # otherwise we don't see the memory savings (but they probably exist)\n\n        model_sequence = (\n            [self.text_encoder, self.text_encoder_2] if self.text_encoder is not None else [self.text_encoder_2]\n        )\n        model_sequence.extend([self.unet, self.vae])\n\n        hook = None\n        for cpu_offloaded_model in model_sequence:\n            _, hook = cpu_offload_with_hook(cpu_offloaded_model, device, prev_module_hook=hook)\n\n        # We'll offload the last model manually.\n        self.final_offload_hook = hook\n\n    def encode_prompt(\n        self,\n        prompt: str,\n        prompt_2: Optional[str] = None,\n        device: Optional[torch.device] = None,\n        num_images_per_prompt: int = 1,\n        do_classifier_free_guidance: bool = True,\n        negative_prompt: Optional[str] = None,\n        negative_prompt_2: Optional[str] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        lora_scale: Optional[float] = None,\n    ):\n        r\"\"\"\n        Encodes the prompt into text encoder hidden states.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                prompt to be encoded\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders\n            device: (`torch.device`):\n                torch device\n            num_images_per_prompt (`int`):\n                number of images that should be generated per prompt\n            do_classifier_free_guidance (`bool`):\n                whether to use classifier free guidance or not\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            lora_scale (`float`, *optional*):\n                A lora scale that will be applied to all LoRA layers of the text encoder if LoRA layers are loaded.\n        \"\"\"\n        device = device or self._execution_device\n\n        # set lora scale so that monkey patched LoRA\n        # function of text encoder can correctly access it\n        if lora_scale is not None and isinstance(self, LoraLoaderMixin):\n            self._lora_scale = lora_scale\n\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        # Define tokenizers and text encoders\n        tokenizers = [self.tokenizer, self.tokenizer_2] if self.tokenizer is not None else [self.tokenizer_2]\n        text_encoders = (\n            [self.text_encoder, self.text_encoder_2] if self.text_encoder is not None else [self.text_encoder_2]\n        )\n\n        if prompt_embeds is None:\n            prompt_2 = prompt_2 or prompt\n            # textual inversion: procecss multi-vector tokens if necessary\n            prompt_embeds_list = []\n            prompts = [prompt, prompt_2]\n            for prompt, tokenizer, text_encoder in zip(prompts, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    prompt = self.maybe_convert_prompt(prompt, tokenizer)\n\n                text_inputs = tokenizer(\n                    prompt,\n                    padding=\"max_length\",\n                    max_length=tokenizer.model_max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                text_input_ids = text_inputs.input_ids\n                untruncated_ids = tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n                if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(\n                    text_input_ids, untruncated_ids\n                ):\n                    removed_text = tokenizer.batch_decode(untruncated_ids[:, tokenizer.model_max_length - 1 : -1])\n                    logger.warning(\n                        \"The following part of your input was truncated because CLIP can only handle sequences up to\"\n                        f\" {tokenizer.model_max_length} tokens: {removed_text}\"\n                    )\n\n                prompt_embeds = text_encoder(\n                    text_input_ids.to(device),\n                    output_hidden_states=True,\n                )\n\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                pooled_prompt_embeds = prompt_embeds[0]\n                prompt_embeds = prompt_embeds.hidden_states[-2]\n\n                prompt_embeds_list.append(prompt_embeds)\n\n            prompt_embeds = torch.concat(prompt_embeds_list, dim=-1)\n\n        # get unconditional embeddings for classifier free guidance\n        zero_out_negative_prompt = negative_prompt is None and self.config.force_zeros_for_empty_prompt\n        if do_classifier_free_guidance and negative_prompt_embeds is None and zero_out_negative_prompt:\n            negative_prompt_embeds = torch.zeros_like(prompt_embeds)\n            negative_pooled_prompt_embeds = torch.zeros_like(pooled_prompt_embeds)\n        elif do_classifier_free_guidance and negative_prompt_embeds is None:\n            negative_prompt = negative_prompt or \"\"\n            negative_prompt_2 = negative_prompt_2 or negative_prompt\n\n            uncond_tokens: List[str]\n            if prompt is not None and type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif isinstance(negative_prompt, str):\n                uncond_tokens = [negative_prompt, negative_prompt_2]\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n            else:\n                uncond_tokens = [negative_prompt, negative_prompt_2]\n\n            negative_prompt_embeds_list = []\n            for negative_prompt, tokenizer, text_encoder in zip(uncond_tokens, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    negative_prompt = self.maybe_convert_prompt(negative_prompt, tokenizer)\n\n                max_length = prompt_embeds.shape[1]\n                uncond_input = tokenizer(\n                    negative_prompt,\n                    padding=\"max_length\",\n                    max_length=max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                negative_prompt_embeds = text_encoder(\n                    uncond_input.input_ids.to(device),\n                    output_hidden_states=True,\n                )\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                negative_pooled_prompt_embeds = negative_prompt_embeds[0]\n                negative_prompt_embeds = negative_prompt_embeds.hidden_states[-2]\n\n                negative_prompt_embeds_list.append(negative_prompt_embeds)\n\n            negative_prompt_embeds = torch.concat(negative_prompt_embeds_list, dim=-1)\n\n        prompt_embeds = prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n        bs_embed, seq_len, _ = prompt_embeds.shape\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(bs_embed * num_images_per_prompt, seq_len, -1)\n\n        if do_classifier_free_guidance:\n            # duplicate unconditional embeddings for each generation per prompt, using mps friendly method\n            seq_len = negative_prompt_embeds.shape[1]\n            negative_prompt_embeds = negative_prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n            negative_prompt_embeds = negative_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds = negative_prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n        pooled_prompt_embeds = pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n            bs_embed * num_images_per_prompt, -1\n        )\n        if do_classifier_free_guidance:\n            negative_pooled_prompt_embeds = negative_pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n                bs_embed * num_images_per_prompt, -1\n            )\n\n        return prompt_embeds, negative_prompt_embeds, pooled_prompt_embeds, negative_pooled_prompt_embeds\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_extra_step_kwargs\n    def prepare_extra_step_kwargs(self, generator, eta):\n        # prepare extra kwargs for the scheduler step, since not all schedulers have the same signature\n        # eta (η) is only used with the DDIMScheduler, it will be ignored for other schedulers.\n        # eta corresponds to η in DDIM paper: https://arxiv.org/abs/2010.02502\n        # and should be between [0, 1]\n\n        accepts_eta = \"eta\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        extra_step_kwargs = {}\n        if accepts_eta:\n            extra_step_kwargs[\"eta\"] = eta\n\n        # check if the scheduler accepts generator\n        accepts_generator = \"generator\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        if accepts_generator:\n            extra_step_kwargs[\"generator\"] = generator\n        return extra_step_kwargs\n\n    def check_inputs(\n        self,\n        prompt,\n        prompt_2,\n        height,\n        width,\n        callback_steps,\n        negative_prompt=None,\n        negative_prompt_2=None,\n        prompt_embeds=None,\n        negative_prompt_embeds=None,\n        pooled_prompt_embeds=None,\n        negative_pooled_prompt_embeds=None,\n    ):\n        if height % 8 != 0 or width % 8 != 0:\n            raise ValueError(f\"`height` and `width` have to be divisible by 8 but are {height} and {width}.\")\n\n        if (callback_steps is None) or (\n            callback_steps is not None and (not isinstance(callback_steps, int) or callback_steps <= 0)\n        ):\n            raise ValueError(\n                f\"`callback_steps` has to be a positive integer but is {callback_steps} of type\"\n                f\" {type(callback_steps)}.\"\n            )\n\n        if prompt is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt_2 is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt_2`: {prompt_2} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n        elif prompt_2 is not None and (not isinstance(prompt_2, str) and not isinstance(prompt_2, list)):\n            raise ValueError(f\"`prompt_2` has to be of type `str` or `list` but is {type(prompt_2)}\")\n\n        if negative_prompt is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n        elif negative_prompt_2 is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt_2`: {negative_prompt_2} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n\n        if prompt_embeds is not None and negative_prompt_embeds is not None:\n            if prompt_embeds.shape != negative_prompt_embeds.shape:\n                raise ValueError(\n                    \"`prompt_embeds` and `negative_prompt_embeds` must have the same shape when passed directly, but\"\n                    f\" got: `prompt_embeds` {prompt_embeds.shape} != `negative_prompt_embeds`\"\n                    f\" {negative_prompt_embeds.shape}.\"\n                )\n\n        if prompt_embeds is not None and pooled_prompt_embeds is None:\n            raise ValueError(\n                \"If `prompt_embeds` are provided, `pooled_prompt_embeds` also have to be passed. Make sure to generate `pooled_prompt_embeds` from the same text encoder that was used to generate `prompt_embeds`.\"\n            )\n\n        if negative_prompt_embeds is not None and negative_pooled_prompt_embeds is None:\n            raise ValueError(\n                \"If `negative_prompt_embeds` are provided, `negative_pooled_prompt_embeds` also have to be passed. Make sure to generate `negative_pooled_prompt_embeds` from the same text encoder that was used to generate `negative_prompt_embeds`.\"\n            )\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_latents\n    def prepare_latents(self, batch_size, num_channels_latents, height, width, dtype, device, generator, latents=None):\n        shape = (batch_size, num_channels_latents, height // self.vae_scale_factor, width // self.vae_scale_factor)\n        if isinstance(generator, list) and len(generator) != batch_size:\n            raise ValueError(\n                f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n            )\n\n        if latents is None:\n            latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n        else:\n            latents = latents.to(device)\n\n        # scale the initial noise by the standard deviation required by the scheduler\n        latents = latents * self.scheduler.init_noise_sigma\n        return latents\n\n    def _get_add_time_ids(self, original_size, crops_coords_top_left, target_size, dtype):\n        add_time_ids = list(original_size + crops_coords_top_left + target_size)\n\n        passed_add_embed_dim = (\n            self.unet.config.addition_time_embed_dim * len(add_time_ids) + self.text_encoder_2.config.projection_dim\n        )\n        expected_add_embed_dim = self.unet.add_embedding.linear_1.in_features\n\n        if expected_add_embed_dim != passed_add_embed_dim:\n            raise ValueError(\n                f\"Model expects an added time embedding vector of length {expected_add_embed_dim}, but a vector of {passed_add_embed_dim} was created. The model has an incorrect config. Please check `unet.config.time_embedding_type` and `text_encoder_2.config.projection_dim`.\"\n            )\n\n        add_time_ids = torch.tensor([add_time_ids], dtype=dtype)\n        return add_time_ids\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion_upscale.StableDiffusionUpscalePipeline.upcast_vae\n    def upcast_vae(self):\n        dtype = self.vae.dtype\n        self.vae.to(dtype=torch.float32)\n        use_torch_2_0_or_xformers = isinstance(\n            self.vae.decoder.mid_block.attentions[0].processor,\n            (\n                AttnProcessor2_0,\n                XFormersAttnProcessor,\n                LoRAXFormersAttnProcessor,\n                LoRAAttnProcessor2_0,\n            ),\n        )\n        # if xformers or torch_2_0 is used attention block does not need\n        # to be in float32 which can save lots of memory\n        if use_torch_2_0_or_xformers:\n            self.vae.post_quant_conv.to(dtype)\n            self.vae.decoder.conv_in.to(dtype)\n            self.vae.decoder.mid_block.to(dtype)\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        prompt_2: Optional[Union[str, List[str]]] = None,\n        height: Optional[int] = None,\n        width: Optional[int] = None,\n        num_inference_steps: int = 50,\n        denoising_end: Optional[float] = None,\n        guidance_scale: float = 5.0,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        negative_prompt_2: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        eta: float = 0.0,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.FloatTensor] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        callback: Optional[Callable[[int, int, torch.FloatTensor], None]] = None,\n        callback_steps: int = 1,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        guidance_rescale: float = 0.0,\n        original_size: Optional[Tuple[int, int]] = None,\n        crops_coords_top_left: Tuple[int, int] = (0, 0),\n        target_size: Optional[Tuple[int, int]] = None,\n        resolutions_list: Optional[Union[int, List[int]]] = None,\n        restart_steps: Optional[Union[int, List[int]]] = None,\n        cosine_scale: float = 2.0,\n        dilate_tau: int = 35,\n    ):\n        r\"\"\"\n        Function invoked when calling the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide the image generation. If not defined, one has to pass `prompt_embeds`.\n                instead.\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders\n            height (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The height in pixels of the generated image.\n            width (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The width in pixels of the generated image.\n            num_inference_steps (`int`, *optional*, defaults to 50):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            denoising_end (`float`, *optional*):\n                When specified, determines the fraction (between 0.0 and 1.0) of the total denoising process to be\n                completed before it is intentionally prematurely terminated. As a result, the returned sample will\n                still retain a substantial amount of noise as determined by the discrete timesteps selected by the\n                scheduler. The denoising_end parameter should ideally be utilized when this pipeline forms a part of a\n                \"Mixture of Denoisers\" multi-pipeline setup, as elaborated in [**Refining the Image\n                Output**](https://huggingface.co/docs/diffusers/api/pipelines/stable_diffusion/stable_diffusion_xl#refining-the-image-output)\n            guidance_scale (`float`, *optional*, defaults to 5.0):\n                Guidance scale as defined in [Classifier-Free Diffusion Guidance](https://arxiv.org/abs/2207.12598).\n                `guidance_scale` is defined as `w` of equation 2. of [Imagen\n                Paper](https://arxiv.org/pdf/2205.11487.pdf). Guidance scale is enabled by setting `guidance_scale >\n                1`. Higher guidance scale encourages to generate images that are closely linked to the text `prompt`,\n                usually at the expense of lower image quality.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            eta (`float`, *optional*, defaults to 0.0):\n                Corresponds to parameter eta (η) in the DDIM paper: https://arxiv.org/abs/2010.02502. Only applies to\n                [`schedulers.DDIMScheduler`], will be ignored for others.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                One or a list of [torch generator(s)](https://pytorch.org/docs/stable/generated/torch.Generator.html)\n                to make generation deterministic.\n            latents (`torch.FloatTensor`, *optional*):\n                Pre-generated noisy latents, sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor will ge generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generate image. Choose between\n                [PIL](https://pillow.readthedocs.io/en/stable/): `PIL.Image.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] instead\n                of a plain tuple.\n            callback (`Callable`, *optional*):\n                A function that will be called every `callback_steps` steps during inference. The function will be\n                called with the following arguments: `callback(step: int, timestep: int, latents: torch.FloatTensor)`.\n            callback_steps (`int`, *optional*, defaults to 1):\n                The frequency at which the `callback` function will be called. If not specified, the callback will be\n                called at every step.\n            cross_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            guidance_rescale (`float`, *optional*, defaults to 0.7):\n                Guidance rescale factor proposed by [Common Diffusion Noise Schedules and Sample Steps are\n                Flawed](https://arxiv.org/pdf/2305.08891.pdf) `guidance_scale` is defined as `φ` in equation 16. of\n                [Common Diffusion Noise Schedules and Sample Steps are Flawed](https://arxiv.org/pdf/2305.08891.pdf).\n                Guidance rescale factor should fix overexposure when using zero terminal SNR.\n            original_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                If `original_size` is not the same as `target_size` the image will appear to be down- or upsampled.\n                `original_size` defaults to `(width, height)` if not specified. Part of SDXL's micro-conditioning as\n                explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            crops_coords_top_left (`Tuple[int]`, *optional*, defaults to (0, 0)):\n                `crops_coords_top_left` can be used to generate an image that appears to be \"cropped\" from the position\n                `crops_coords_top_left` downwards. Favorable, well-centered images are usually achieved by setting\n                `crops_coords_top_left` to (0, 0). Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            target_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                For most cases, `target_size` should be set to the desired height and width of the generated image. If\n                not specified it will default to `(width, height)`. Part of SDXL's micro-conditioning as explained in\n                section 2.2 of [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n\n        Examples:\n\n        Returns:\n            [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] or `tuple`:\n            [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] if `return_dict` is True, otherwise a\n            `tuple`. When returning a tuple, the first element is a list with the generated images.\n        \"\"\"\n\n        # 0. Default height and width to unet\n        if resolutions_list:\n            height, width = resolutions_list[0]\n            target_sizes = resolutions_list[1:]\n            if not restart_steps:\n                restart_steps = [15] * len(target_sizes)\n        else:\n            height = height or self.default_sample_size * self.vae_scale_factor\n            width = width or self.default_sample_size * self.vae_scale_factor\n\n        original_size = original_size or (height, width)\n        target_size = target_size or (height, width)\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            prompt_2,\n            height,\n            width,\n            callback_steps,\n            negative_prompt,\n            negative_prompt_2,\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n        )\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        device = self._execution_device\n\n        # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2)\n        # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1`\n        # corresponds to doing no classifier free guidance.\n        do_classifier_free_guidance = guidance_scale > 1.0\n\n        # 3. Encode input prompt\n        text_encoder_lora_scale = (\n            cross_attention_kwargs.get(\"scale\", None) if cross_attention_kwargs is not None else None\n        )\n        (\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n        ) = self.encode_prompt(\n            prompt=prompt,\n            prompt_2=prompt_2,\n            device=device,\n            num_images_per_prompt=num_images_per_prompt,\n            do_classifier_free_guidance=do_classifier_free_guidance,\n            negative_prompt=negative_prompt,\n            negative_prompt_2=negative_prompt_2,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            negative_pooled_prompt_embeds=negative_pooled_prompt_embeds,\n            lora_scale=text_encoder_lora_scale,\n        )\n\n        # 4. Prepare timesteps\n        self.scheduler.set_timesteps(num_inference_steps, device=device)\n\n        timesteps = self.scheduler.timesteps\n\n        # 5. Prepare latent variables\n        num_channels_latents = self.unet.config.in_channels\n        latents = self.prepare_latents(\n            batch_size * num_images_per_prompt,\n            num_channels_latents,\n            height,\n            width,\n            prompt_embeds.dtype,\n            device,\n            generator,\n            latents,\n        )\n\n        # 6. Prepare extra step kwargs.\n        extra_step_kwargs = self.prepare_extra_step_kwargs(generator, eta)\n\n        # 7. Prepare added time ids & embeddings\n        add_text_embeds = pooled_prompt_embeds\n        add_time_ids = self._get_add_time_ids(\n            original_size, crops_coords_top_left, target_size, dtype=prompt_embeds.dtype\n        )\n\n        if do_classifier_free_guidance:\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds], dim=0)\n            add_text_embeds = torch.cat([negative_pooled_prompt_embeds, add_text_embeds], dim=0)\n            add_time_ids = torch.cat([add_time_ids, add_time_ids], dim=0)\n\n        prompt_embeds = prompt_embeds.to(device)\n        add_text_embeds = add_text_embeds.to(device)\n        add_time_ids = add_time_ids.to(device).repeat(batch_size * num_images_per_prompt, 1)\n\n        # 8. Denoising loop\n        num_warmup_steps = max(len(timesteps) - num_inference_steps * self.scheduler.order, 0)\n\n        # 9.1 Apply denoising_end\n        if denoising_end is not None and type(denoising_end) == float and denoising_end > 0 and denoising_end < 1:\n            discrete_timestep_cutoff = int(\n                round(\n                    self.scheduler.config.num_train_timesteps\n                    - (denoising_end * self.scheduler.config.num_train_timesteps)\n                )\n            )\n            num_inference_steps = len(list(filter(lambda ts: ts >= discrete_timestep_cutoff, timesteps)))\n            timesteps = timesteps[:num_inference_steps]\n\n        results_list = []\n\n        for block in self.unet.down_blocks + [self.unet.mid_block] + self.unet.up_blocks:\n            for module in block.modules():\n                if isinstance(module, BasicTransformerBlock):\n                    module.forward = ori_forward.__get__(module, BasicTransformerBlock)\n\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                # expand the latents if we are doing classifier free guidance\n                latent_model_input = torch.cat([latents] * 2) if do_classifier_free_guidance else latents\n\n                latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n                # predict the noise residual\n                added_cond_kwargs = {\"text_embeds\": add_text_embeds, \"time_ids\": add_time_ids}\n                noise_pred = self.unet(\n                    latent_model_input,\n                    t,\n                    encoder_hidden_states=prompt_embeds,\n                    cross_attention_kwargs=cross_attention_kwargs,\n                    added_cond_kwargs=added_cond_kwargs,\n                    return_dict=False,\n                )[0]\n\n                # perform guidance\n                if do_classifier_free_guidance:\n                    noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                    noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                if do_classifier_free_guidance and guidance_rescale > 0.0:\n                    # Based on 3.4. in https://arxiv.org/pdf/2305.08891.pdf\n                    noise_pred = rescale_noise_cfg(noise_pred, noise_pred_text, guidance_rescale=guidance_rescale)\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents = self.scheduler.step(noise_pred, t, latents, **extra_step_kwargs, return_dict=False)[0]\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n                    if callback is not None and i % callback_steps == 0:\n                        callback(i, t, latents)\n        results_list.append(latents)\n\n        for restart_index, target_size in enumerate(target_sizes):\n            restart_step = restart_steps[restart_index]\n            target_size_ = [target_size[0]//8, target_size[1]//8]\n\n            for block in self.unet.down_blocks + [self.unet.mid_block] + self.unet.up_blocks:\n                for module in block.modules():\n                    if isinstance(module, BasicTransformerBlock):\n                        module.forward = scale_forward.__get__(module, BasicTransformerBlock)\n                        module.current_hw = target_size\n\n            needs_upcasting = self.vae.dtype == torch.float16 and self.vae.config.force_upcast\n            if needs_upcasting:\n                self.upcast_vae()\n                latents = latents.to(next(iter(self.vae.post_quant_conv.parameters())).dtype)\n\n            latents = latents / self.vae.config.scaling_factor\n            image = self.vae.decode(latents, return_dict=False)[0]\n            image = torch.nn.functional.interpolate(\n                image,\n                size=target_size,\n                mode='bicubic',\n                )\n            latents = self.vae.encode(image).latent_dist.sample().to(self.vae.dtype)\n            latents = latents * self.vae.config.scaling_factor\n\n            noise_latents = []\n            noise = torch.randn_like(latents)\n            for timestep in self.scheduler.timesteps:\n                noise_latent = self.scheduler.add_noise(latents, noise, timestep.unsqueeze(0))\n                noise_latents.append(noise_latent)\n            latents = noise_latents[restart_step]\n\n            self.scheduler._step_index = 0\n            with self.progress_bar(total=num_inference_steps) as progress_bar:\n                for i, t in enumerate(timesteps):\n\n                    if i < restart_step:\n                        self.scheduler._step_index += 1\n                        progress_bar.update()\n                        continue\n\n                    cosine_factor = 0.5 * (1 + torch.cos(torch.pi * (self.scheduler.config.num_train_timesteps - t) / self.scheduler.config.num_train_timesteps)).cpu()\n                    c1 = cosine_factor ** cosine_scale\n                    latents = latents * (1 - c1) + noise_latents[i] * c1\n\n                    dilate_coef=target_size[1]//1024\n\n                    dilate_layers = [\n                        # \"down_blocks.1.resnets.0.conv1\",\n                        # \"down_blocks.1.resnets.0.conv2\",\n                        # \"down_blocks.1.resnets.1.conv1\",\n                        # \"down_blocks.1.resnets.1.conv2\",\n                        \"down_blocks.1.downsamplers.0.conv\",\n                        \"down_blocks.2.resnets.0.conv1\",\n                        \"down_blocks.2.resnets.0.conv2\",\n                        \"down_blocks.2.resnets.1.conv1\",\n                        \"down_blocks.2.resnets.1.conv2\",\n                        # \"up_blocks.0.resnets.0.conv1\",\n                        # \"up_blocks.0.resnets.0.conv2\",\n                        # \"up_blocks.0.resnets.1.conv1\",\n                        # \"up_blocks.0.resnets.1.conv2\",\n                        # \"up_blocks.0.resnets.2.conv1\",\n                        # \"up_blocks.0.resnets.2.conv2\",\n                        # \"up_blocks.0.upsamplers.0.conv\",\n                        # \"up_blocks.1.resnets.0.conv1\",\n                        # \"up_blocks.1.resnets.0.conv2\",\n                        # \"up_blocks.1.resnets.1.conv1\",\n                        # \"up_blocks.1.resnets.1.conv2\",\n                        # \"up_blocks.1.resnets.2.conv1\",\n                        # \"up_blocks.1.resnets.2.conv2\",\n                        # \"up_blocks.1.upsamplers.0.conv\",\n                        # \"up_blocks.2.resnets.0.conv1\",\n                        # \"up_blocks.2.resnets.0.conv2\",\n                        # \"up_blocks.2.resnets.1.conv1\",\n                        # \"up_blocks.2.resnets.1.conv2\",\n                        # \"up_blocks.2.resnets.2.conv1\",\n                        # \"up_blocks.2.resnets.2.conv2\",\n                        \"mid_block.resnets.0.conv1\",\n                        \"mid_block.resnets.0.conv2\",\n                        \"mid_block.resnets.1.conv1\",\n                        \"mid_block.resnets.1.conv2\"\n                        ]\n\n                    for name, module in self.unet.named_modules():\n                        if name in dilate_layers:\n                            if i < dilate_tau:\n                                module.dilation = (dilate_coef, dilate_coef)\n                                module.padding = (dilate_coef, dilate_coef)\n                            else:\n                                module.dilation = (1, 1)\n                                module.padding = (1, 1)\n\n                    # expand the latents if we are doing classifier free guidance\n                    latent_model_input = torch.cat([latents] * 2) if do_classifier_free_guidance else latents\n\n                    latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n\n                    # predict the noise residual\n                    added_cond_kwargs = {\"text_embeds\": add_text_embeds, \"time_ids\": add_time_ids}\n                    noise_pred = self.unet(\n                        latent_model_input,\n                        t,\n                        encoder_hidden_states=prompt_embeds,\n                        cross_attention_kwargs=cross_attention_kwargs,\n                        added_cond_kwargs=added_cond_kwargs,\n                        return_dict=False,\n                    )[0]\n\n                    # perform guidance\n                    if do_classifier_free_guidance:\n                        noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                        noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                    if do_classifier_free_guidance and guidance_rescale > 0.0:\n                        # Based on 3.4. in https://arxiv.org/pdf/2305.08891.pdf\n                        noise_pred = rescale_noise_cfg(noise_pred, noise_pred_text, guidance_rescale=guidance_rescale)\n\n                    # compute the previous noisy sample x_t -> x_t-1\n                    latents_dtype = latents.dtype\n                    latents = self.scheduler.step(noise_pred, t, latents, **extra_step_kwargs, return_dict=False)[0]\n                    if latents.dtype != latents_dtype:\n                        if torch.backends.mps.is_available():\n                            # some platforms (eg. apple mps) misbehave due to a pytorch bug: https://github.com/pytorch/pytorch/pull/99272\n                            latents = latents.to(latents_dtype)\n\n                    # call the callback, if provided\n                    if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                        progress_bar.update()\n                        if callback is not None and i % callback_steps == 0:\n                            callback(i, t, latents)\n\n                    for name, module in self.unet.named_modules():\n                        # if ('.conv' in name) and ('.conv_' not in name):\n                        if name in dilate_layers:\n                            module.dilation = (1, 1)\n                            module.padding = (1, 1)\n\n            results_list.append(latents)\n\n        \"\"\"\n        final_results = []\n        for latents in results_list:\n            # make sure the VAE is in float32 mode, as it overflows in float16\n            if self.vae.dtype == torch.float16 and self.vae.config.force_upcast:\n                self.upcast_vae()\n                latents = latents.to(next(iter(self.vae.post_quant_conv.parameters())).dtype)\n\n            if not output_type == \"latent\":\n                image = self.vae.decode(latents / self.vae.config.scaling_factor, return_dict=False)[0]\n            else:\n                image = latents\n                return StableDiffusionXLPipelineOutput(images=image)\n\n            image = self.image_processor.postprocess(image, output_type=output_type)\n\n            if not return_dict:\n                final_results += [(image,)]\n            else:\n                final_results += [StableDiffusionXLPipelineOutput(images=image)]\n\n        # Offload last model to CPU\n        if hasattr(self, \"final_offload_hook\") and self.final_offload_hook is not None:\n            self.final_offload_hook.offload()\n\n        return final_results\n        \"\"\"\n        return StableDiffusionXLPipelineOutput(images=results_list)\n\n    # Overrride to properly handle the loading and unloading of the additional text encoder.\n    def load_lora_weights(self, pretrained_model_name_or_path_or_dict: Union[str, Dict[str, torch.Tensor]], **kwargs):\n        # We could have accessed the unet config from `lora_state_dict()` too. We pass\n        # it here explicitly to be able to tell that it's coming from an SDXL\n        # pipeline.\n        state_dict, network_alphas = self.lora_state_dict(\n            pretrained_model_name_or_path_or_dict,\n            unet_config=self.unet.config,\n            **kwargs,\n        )\n        self.load_lora_into_unet(state_dict, network_alphas=network_alphas, unet=self.unet)\n\n        text_encoder_state_dict = {k: v for k, v in state_dict.items() if \"text_encoder.\" in k}\n        if len(text_encoder_state_dict) > 0:\n            self.load_lora_into_text_encoder(\n                text_encoder_state_dict,\n                network_alphas=network_alphas,\n                text_encoder=self.text_encoder,\n                prefix=\"text_encoder\",\n                lora_scale=self.lora_scale,\n            )\n\n        text_encoder_2_state_dict = {k: v for k, v in state_dict.items() if \"text_encoder_2.\" in k}\n        if len(text_encoder_2_state_dict) > 0:\n            self.load_lora_into_text_encoder(\n                text_encoder_2_state_dict,\n                network_alphas=network_alphas,\n                text_encoder=self.text_encoder_2,\n                prefix=\"text_encoder_2\",\n                lora_scale=self.lora_scale,\n            )\n\n    @classmethod\n    def save_lora_weights(\n        self,\n        save_directory: Union[str, os.PathLike],\n        unet_lora_layers: Dict[str, Union[torch.nn.Module, torch.Tensor]] = None,\n        text_encoder_lora_layers: Dict[str, Union[torch.nn.Module, torch.Tensor]] = None,\n        text_encoder_2_lora_layers: Dict[str, Union[torch.nn.Module, torch.Tensor]] = None,\n        is_main_process: bool = True,\n        weight_name: str = None,\n        save_function: Callable = None,\n        safe_serialization: bool = True,\n    ):\n        state_dict = {}\n\n        def pack_weights(layers, prefix):\n            layers_weights = layers.state_dict() if isinstance(layers, torch.nn.Module) else layers\n            layers_state_dict = {f\"{prefix}.{module_name}\": param for module_name, param in layers_weights.items()}\n            return layers_state_dict\n\n        state_dict.update(pack_weights(unet_lora_layers, \"unet\"))\n\n        if text_encoder_lora_layers and text_encoder_2_lora_layers:\n            state_dict.update(pack_weights(text_encoder_lora_layers, \"text_encoder\"))\n            state_dict.update(pack_weights(text_encoder_2_lora_layers, \"text_encoder_2\"))\n\n        self.write_lora_layers(\n            state_dict=state_dict,\n            save_directory=save_directory,\n            is_main_process=is_main_process,\n            weight_name=weight_name,\n            save_function=save_function,\n            safe_serialization=safe_serialization,\n        )\n\n    def _remove_text_encoder_monkey_patch(self):\n        self._remove_text_encoder_monkey_patch_classmethod(self.text_encoder)\n        self._remove_text_encoder_monkey_patch_classmethod(self.text_encoder_2)\n"
  },
  {
    "path": "scripts/freescale/freescale_pipeline_img2img.py",
    "content": "from inspect import isfunction\nfrom functools import partial\nfrom typing import Any, Callable, Dict, List, Optional, Tuple, Union\nimport inspect\nimport os\nimport random\n\nfrom PIL import Image\nimport numpy as np\nimport torch\nimport torch.nn.functional as F\nfrom einops import rearrange\nfrom transformers import CLIPTextModel, CLIPTextModelWithProjection, CLIPTokenizer\nimport torchvision.transforms as transforms\n\nfrom diffusers.image_processor import VaeImageProcessor\nfrom diffusers.loaders import FromSingleFileMixin, LoraLoaderMixin, TextualInversionLoaderMixin\nfrom diffusers.models import AutoencoderKL, UNet2DConditionModel\nfrom diffusers.models.attention_processor import AttnProcessor2_0, LoRAAttnProcessor2_0, LoRAXFormersAttnProcessor, XFormersAttnProcessor\nfrom diffusers.schedulers import KarrasDiffusionSchedulers\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom diffusers.utils import is_accelerate_available, is_accelerate_version, logging, replace_example_docstring\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline\nfrom diffusers.pipelines.stable_diffusion_xl.pipeline_output import StableDiffusionXLPipelineOutput\nfrom diffusers.models.attention import BasicTransformerBlock\n\nfrom .scale_attention import ori_forward, scale_forward\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\nEXAMPLE_DOC_STRING = \"\"\"\n    Examples:\n        ```py\n        >>> import torch\n        >>> from diffusers import StableDiffusionXLPipeline\n\n        >>> pipe = StableDiffusionXLPipeline.from_pretrained(\n        ...     \"stabilityai/stable-diffusion-xl-base-1.0\", torch_dtype=torch.float16\n        ... )\n        >>> pipe = pipe.to(\"cuda\")\n\n        >>> prompt = \"a photo of an astronaut riding a horse on mars\"\n        >>> image = pipe(prompt).images[0]\n        ```\n\"\"\"\n\ndef process_image_to_tensor(image):\n    image = image.convert(\"RGB\")\n    # image = Image.open(image_path).convert(\"RGB\")\n    transform = transforms.Compose(\n        [\n            # transforms.Resize((1024, 1024)),\n            transforms.ToTensor(),\n            transforms.Normalize(mean=[0.5, 0.5, 0.5], std=[0.5, 0.5, 0.5]),\n        ]\n    )\n    image_tensor = transform(image)\n    return image_tensor\n\ndef process_image_to_bitensor(image):\n    # image = Image.open(image_path).convert(\"L\")\n    image = image.convert(\"L\")\n    transform = transforms.ToTensor()\n    image_tensor = transform(image)\n    binary_tensor = torch.where(image_tensor != 0, torch.tensor(1.0), torch.tensor(0.0))\n    return binary_tensor\n\ndef default(val, d):\n    if exists(val):\n        return val\n    return d() if isfunction(d) else d\n\ndef exists(val):\n    return val is not None\n\ndef extract_into_tensor(a, t, x_shape):\n    b, *_ = t.shape\n    out = a.gather(-1, t)\n    return out.reshape(b, *((1,) * (len(x_shape) - 1)))\n\ndef make_beta_schedule(schedule, n_timestep, linear_start=1e-4, linear_end=2e-2, cosine_s=8e-3):\n    if schedule == \"linear\":\n        betas = (\n                torch.linspace(linear_start ** 0.5, linear_end ** 0.5, n_timestep, dtype=torch.float64) ** 2\n        )\n    elif schedule == \"cosine\":\n        timesteps = (\n                torch.arange(n_timestep + 1, dtype=torch.float64) / n_timestep + cosine_s\n        )\n        alphas = timesteps / (1 + cosine_s) * np.pi / 2\n        alphas = torch.cos(alphas).pow(2)\n        alphas = alphas / alphas[0]\n        betas = 1 - alphas[1:] / alphas[:-1]\n        betas = np.clip(betas, a_min=0, a_max=0.999)\n    elif schedule == \"sqrt_linear\":\n        betas = torch.linspace(linear_start, linear_end, n_timestep, dtype=torch.float64)\n    elif schedule == \"sqrt\":\n        betas = torch.linspace(linear_start, linear_end, n_timestep, dtype=torch.float64) ** 0.5\n    else:\n        raise ValueError(f\"schedule '{schedule}' unknown.\")\n    return betas.numpy()\n\nto_torch = partial(torch.tensor, dtype=torch.float16)\nbetas = make_beta_schedule(\"linear\", 1000, linear_start=0.00085, linear_end=0.012)\nalphas = 1. - betas\nalphas_cumprod = np.cumprod(alphas, axis=0)\nsqrt_alphas_cumprod = to_torch(np.sqrt(alphas_cumprod))\nsqrt_one_minus_alphas_cumprod = to_torch(np.sqrt(1. - alphas_cumprod))\n\ndef q_sample(x_start, t, init_noise_sigma = 1.0, noise=None, device=None):\n    noise = default(noise, lambda: torch.randn_like(x_start)).to(device) * init_noise_sigma\n    return (extract_into_tensor(sqrt_alphas_cumprod.to(device), t, x_start.shape) * x_start +\n            extract_into_tensor(sqrt_one_minus_alphas_cumprod.to(device), t, x_start.shape) * noise)\n\ndef get_views(height, width, h_window_size=128, w_window_size=128, h_window_stride=64, w_window_stride=64, vae_scale_factor=8):\n    height //= vae_scale_factor\n    width //= vae_scale_factor\n    num_blocks_height = int((height - h_window_size) / h_window_stride - 1e-6) + 2 if height > h_window_size else 1\n    num_blocks_width = int((width - w_window_size) / w_window_stride - 1e-6) + 2 if width > w_window_size else 1\n    total_num_blocks = int(num_blocks_height * num_blocks_width)\n    views = []\n    for i in range(total_num_blocks):\n        h_start = int((i // num_blocks_width) * h_window_stride)\n        h_end = h_start + h_window_size\n        w_start = int((i % num_blocks_width) * w_window_stride)\n        w_end = w_start + w_window_size\n\n        if h_end > height:\n            h_start = int(h_start + height - h_end)\n            h_end = int(height)\n        if w_end > width:\n            w_start = int(w_start + width - w_end)\n            w_end = int(width)\n        if h_start < 0:\n            h_end = int(h_end - h_start)\n            h_start = 0\n        if w_start < 0:\n            w_end = int(w_end - w_start)\n            w_start = 0\n\n        random_jitter = True\n        if random_jitter:\n            h_jitter_range = (h_window_size - h_window_stride) // 4\n            w_jitter_range = (w_window_size - w_window_stride) // 4\n            h_jitter = 0\n            w_jitter = 0\n\n            if (w_start != 0) and (w_end != width):\n                w_jitter = random.randint(-w_jitter_range, w_jitter_range)\n            elif (w_start == 0) and (w_end != width):\n                w_jitter = random.randint(-w_jitter_range, 0)\n            elif (w_start != 0) and (w_end == width):\n                w_jitter = random.randint(0, w_jitter_range)\n            if (h_start != 0) and (h_end != height):\n                h_jitter = random.randint(-h_jitter_range, h_jitter_range)\n            elif (h_start == 0) and (h_end != height):\n                h_jitter = random.randint(-h_jitter_range, 0)\n            elif (h_start != 0) and (h_end == height):\n                h_jitter = random.randint(0, h_jitter_range)\n            h_start += (h_jitter + h_jitter_range)\n            h_end += (h_jitter + h_jitter_range)\n            w_start += (w_jitter + w_jitter_range)\n            w_end += (w_jitter + w_jitter_range)\n\n        views.append((h_start, h_end, w_start, w_end))\n    return views\n\ndef gaussian_kernel(kernel_size=3, sigma=1.0, channels=3):\n    x_coord = torch.arange(kernel_size)\n    gaussian_1d = torch.exp(-(x_coord - (kernel_size - 1) / 2) ** 2 / (2 * sigma ** 2))\n    gaussian_1d = gaussian_1d / gaussian_1d.sum()\n    gaussian_2d = gaussian_1d[:, None] * gaussian_1d[None, :]\n    kernel = gaussian_2d[None, None, :, :].repeat(channels, 1, 1, 1)\n\n    return kernel\n\ndef gaussian_filter(latents, kernel_size=3, sigma=1.0):\n    channels = latents.shape[1]\n    kernel = gaussian_kernel(kernel_size, sigma, channels).to(latents.device, latents.dtype)\n    if len(latents.shape) == 5:\n        b = latents.shape[0]\n        latents = rearrange(latents, 'b c t i j -> (b t) c i j')\n        blurred_latents = F.conv2d(latents, kernel, padding=kernel_size//2, groups=channels)\n        blurred_latents = rearrange(blurred_latents, '(b t) c i j -> b c t i j', b=b)\n    else:\n        blurred_latents = F.conv2d(latents, kernel, padding=kernel_size//2, groups=channels)\n\n    return blurred_latents\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.rescale_noise_cfg\ndef rescale_noise_cfg(noise_cfg, noise_pred_text, guidance_rescale=0.0):\n    \"\"\"\n    Rescale `noise_cfg` according to `guidance_rescale`. Based on findings of [Common Diffusion Noise Schedules and\n    Sample Steps are Flawed](https://arxiv.org/pdf/2305.08891.pdf). See Section 3.4\n    \"\"\"\n    std_text = noise_pred_text.std(dim=list(range(1, noise_pred_text.ndim)), keepdim=True)\n    std_cfg = noise_cfg.std(dim=list(range(1, noise_cfg.ndim)), keepdim=True)\n    # rescale the results from guidance (fixes overexposure)\n    noise_pred_rescaled = noise_cfg * (std_text / std_cfg)\n    # mix with the original results from guidance by factor guidance_rescale to avoid \"plain looking\" images\n    noise_cfg = guidance_rescale * noise_pred_rescaled + (1 - guidance_rescale) * noise_cfg\n    return noise_cfg\n\n\nclass StableDiffusionXLFreeScaleImg2Img(DiffusionPipeline, FromSingleFileMixin, LoraLoaderMixin):\n    r\"\"\"\n    Pipeline for text-to-image generation using Stable Diffusion XL.\n\n    This model inherits from [`DiffusionPipeline`]. Check the superclass documentation for the generic methods the\n    library implements for all the pipelines (such as downloading or saving, running on a particular device, etc.)\n\n    In addition the pipeline inherits the following loading methods:\n        - *LoRA*: [`StableDiffusionXLPipeline.load_lora_weights`]\n        - *Ckpt*: [`loaders.FromSingleFileMixin.from_single_file`]\n\n    as well as the following saving methods:\n        - *LoRA*: [`loaders.StableDiffusionXLPipeline.save_lora_weights`]\n\n    Args:\n        vae ([`AutoencoderKL`]):\n            Variational Auto-Encoder (VAE) Model to encode and decode images to and from latent representations.\n        text_encoder ([`CLIPTextModel`]):\n            Frozen text-encoder. Stable Diffusion XL uses the text portion of\n            [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModel), specifically\n            the [clip-vit-large-patch14](https://huggingface.co/openai/clip-vit-large-patch14) variant.\n        text_encoder_2 ([` CLIPTextModelWithProjection`]):\n            Second frozen text-encoder. Stable Diffusion XL uses the text and pool portion of\n            [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModelWithProjection),\n            specifically the\n            [laion/CLIP-ViT-bigG-14-laion2B-39B-b160k](https://huggingface.co/laion/CLIP-ViT-bigG-14-laion2B-39B-b160k)\n            variant.\n        tokenizer (`CLIPTokenizer`):\n            Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer).\n        tokenizer_2 (`CLIPTokenizer`):\n            Second Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer).\n        unet ([`UNet2DConditionModel`]): Conditional U-Net architecture to denoise the encoded image latents.\n        scheduler ([`SchedulerMixin`]):\n            A scheduler to be used in combination with `unet` to denoise the encoded image latents. Can be one of\n            [`DDIMScheduler`], [`LMSDiscreteScheduler`], or [`PNDMScheduler`].\n    \"\"\"\n\n    def __init__(\n        self,\n        vae: AutoencoderKL,\n        text_encoder: CLIPTextModel,\n        text_encoder_2: CLIPTextModelWithProjection,\n        tokenizer: CLIPTokenizer,\n        tokenizer_2: CLIPTokenizer,\n        unet: UNet2DConditionModel,\n        scheduler: KarrasDiffusionSchedulers,\n        force_zeros_for_empty_prompt: bool = True,\n        add_watermarker: Optional[bool] = None,\n    ):\n        super().__init__()\n\n        self.register_modules(\n            vae=vae,\n            text_encoder=text_encoder,\n            text_encoder_2=text_encoder_2,\n            tokenizer=tokenizer,\n            tokenizer_2=tokenizer_2,\n            unet=unet,\n            scheduler=scheduler,\n        )\n        self.register_to_config(force_zeros_for_empty_prompt=force_zeros_for_empty_prompt)\n        self.vae_scale_factor = 2 ** (len(self.vae.config.block_out_channels) - 1)\n        self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor)\n        self.default_sample_size = self.unet.config.sample_size\n\n        self.vae.enable_tiling()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.enable_vae_slicing\n    def enable_vae_slicing(self):\n        r\"\"\"\n        Enable sliced VAE decoding. When this option is enabled, the VAE will split the input tensor in slices to\n        compute decoding in several steps. This is useful to save some memory and allow larger batch sizes.\n        \"\"\"\n        self.vae.enable_slicing()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.disable_vae_slicing\n    def disable_vae_slicing(self):\n        r\"\"\"\n        Disable sliced VAE decoding. If `enable_vae_slicing` was previously enabled, this method will go back to\n        computing decoding in one step.\n        \"\"\"\n        self.vae.disable_slicing()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.enable_vae_tiling\n    def enable_vae_tiling(self):\n        r\"\"\"\n        Enable tiled VAE decoding. When this option is enabled, the VAE will split the input tensor into tiles to\n        compute decoding and encoding in several steps. This is useful for saving a large amount of memory and to allow\n        processing larger images.\n        \"\"\"\n        self.vae.enable_tiling()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.disable_vae_tiling\n    def disable_vae_tiling(self):\n        r\"\"\"\n        Disable tiled VAE decoding. If `enable_vae_tiling` was previously enabled, this method will go back to\n        computing decoding in one step.\n        \"\"\"\n        self.vae.disable_tiling()\n\n    def enable_model_cpu_offload(self, gpu_id=0):\n        r\"\"\"\n        Offloads all models to CPU using accelerate, reducing memory usage with a low impact on performance. Compared\n        to `enable_sequential_cpu_offload`, this method moves one whole model at a time to the GPU when its `forward`\n        method is called, and the model remains in GPU until the next model runs. Memory savings are lower than with\n        `enable_sequential_cpu_offload`, but performance is much better due to the iterative execution of the `unet`.\n        \"\"\"\n        if is_accelerate_available() and is_accelerate_version(\">=\", \"0.17.0.dev0\"):\n            from accelerate import cpu_offload_with_hook\n        else:\n            raise ImportError(\"`enable_model_cpu_offload` requires `accelerate v0.17.0` or higher.\")\n\n        device = torch.device(f\"cuda:{gpu_id}\")\n\n        if self.device.type != \"cpu\":\n            self.to(\"cpu\", silence_dtype_warnings=True)\n            torch.cuda.empty_cache()  # otherwise we don't see the memory savings (but they probably exist)\n\n        model_sequence = (\n            [self.text_encoder, self.text_encoder_2] if self.text_encoder is not None else [self.text_encoder_2]\n        )\n        model_sequence.extend([self.unet, self.vae])\n\n        hook = None\n        for cpu_offloaded_model in model_sequence:\n            _, hook = cpu_offload_with_hook(cpu_offloaded_model, device, prev_module_hook=hook)\n\n        # We'll offload the last model manually.\n        self.final_offload_hook = hook\n\n    def encode_prompt(\n        self,\n        prompt: str,\n        prompt_2: Optional[str] = None,\n        device: Optional[torch.device] = None,\n        num_images_per_prompt: int = 1,\n        do_classifier_free_guidance: bool = True,\n        negative_prompt: Optional[str] = None,\n        negative_prompt_2: Optional[str] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        lora_scale: Optional[float] = None,\n    ):\n        r\"\"\"\n        Encodes the prompt into text encoder hidden states.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                prompt to be encoded\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders\n            device: (`torch.device`):\n                torch device\n            num_images_per_prompt (`int`):\n                number of images that should be generated per prompt\n            do_classifier_free_guidance (`bool`):\n                whether to use classifier free guidance or not\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            lora_scale (`float`, *optional*):\n                A lora scale that will be applied to all LoRA layers of the text encoder if LoRA layers are loaded.\n        \"\"\"\n        device = device or self._execution_device\n\n        # set lora scale so that monkey patched LoRA\n        # function of text encoder can correctly access it\n        if lora_scale is not None and isinstance(self, LoraLoaderMixin):\n            self._lora_scale = lora_scale\n\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        # Define tokenizers and text encoders\n        tokenizers = [self.tokenizer, self.tokenizer_2] if self.tokenizer is not None else [self.tokenizer_2]\n        text_encoders = (\n            [self.text_encoder, self.text_encoder_2] if self.text_encoder is not None else [self.text_encoder_2]\n        )\n\n        if prompt_embeds is None:\n            prompt_2 = prompt_2 or prompt\n            # textual inversion: procecss multi-vector tokens if necessary\n            prompt_embeds_list = []\n            prompts = [prompt, prompt_2]\n            for prompt, tokenizer, text_encoder in zip(prompts, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    prompt = self.maybe_convert_prompt(prompt, tokenizer)\n\n                text_inputs = tokenizer(\n                    prompt,\n                    padding=\"max_length\",\n                    max_length=tokenizer.model_max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                text_input_ids = text_inputs.input_ids\n                untruncated_ids = tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n                if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(\n                    text_input_ids, untruncated_ids\n                ):\n                    removed_text = tokenizer.batch_decode(untruncated_ids[:, tokenizer.model_max_length - 1 : -1])\n                    logger.warning(\n                        \"The following part of your input was truncated because CLIP can only handle sequences up to\"\n                        f\" {tokenizer.model_max_length} tokens: {removed_text}\"\n                    )\n\n                prompt_embeds = text_encoder(\n                    text_input_ids.to(device),\n                    output_hidden_states=True,\n                )\n\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                pooled_prompt_embeds = prompt_embeds[0]\n                prompt_embeds = prompt_embeds.hidden_states[-2]\n\n                prompt_embeds_list.append(prompt_embeds)\n\n            prompt_embeds = torch.concat(prompt_embeds_list, dim=-1)\n\n        # get unconditional embeddings for classifier free guidance\n        zero_out_negative_prompt = negative_prompt is None and self.config.force_zeros_for_empty_prompt\n        if do_classifier_free_guidance and negative_prompt_embeds is None and zero_out_negative_prompt:\n            negative_prompt_embeds = torch.zeros_like(prompt_embeds)\n            negative_pooled_prompt_embeds = torch.zeros_like(pooled_prompt_embeds)\n        elif do_classifier_free_guidance and negative_prompt_embeds is None:\n            negative_prompt = negative_prompt or \"\"\n            negative_prompt_2 = negative_prompt_2 or negative_prompt\n\n            uncond_tokens: List[str]\n            if prompt is not None and type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif isinstance(negative_prompt, str):\n                uncond_tokens = [negative_prompt, negative_prompt_2]\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n            else:\n                uncond_tokens = [negative_prompt, negative_prompt_2]\n\n            negative_prompt_embeds_list = []\n            for negative_prompt, tokenizer, text_encoder in zip(uncond_tokens, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    negative_prompt = self.maybe_convert_prompt(negative_prompt, tokenizer)\n\n                max_length = prompt_embeds.shape[1]\n                uncond_input = tokenizer(\n                    negative_prompt,\n                    padding=\"max_length\",\n                    max_length=max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                negative_prompt_embeds = text_encoder(\n                    uncond_input.input_ids.to(device),\n                    output_hidden_states=True,\n                )\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                negative_pooled_prompt_embeds = negative_prompt_embeds[0]\n                negative_prompt_embeds = negative_prompt_embeds.hidden_states[-2]\n\n                negative_prompt_embeds_list.append(negative_prompt_embeds)\n\n            negative_prompt_embeds = torch.concat(negative_prompt_embeds_list, dim=-1)\n\n        prompt_embeds = prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n        bs_embed, seq_len, _ = prompt_embeds.shape\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(bs_embed * num_images_per_prompt, seq_len, -1)\n\n        if do_classifier_free_guidance:\n            # duplicate unconditional embeddings for each generation per prompt, using mps friendly method\n            seq_len = negative_prompt_embeds.shape[1]\n            negative_prompt_embeds = negative_prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n            negative_prompt_embeds = negative_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds = negative_prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n        pooled_prompt_embeds = pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n            bs_embed * num_images_per_prompt, -1\n        )\n        if do_classifier_free_guidance:\n            negative_pooled_prompt_embeds = negative_pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n                bs_embed * num_images_per_prompt, -1\n            )\n\n        return prompt_embeds, negative_prompt_embeds, pooled_prompt_embeds, negative_pooled_prompt_embeds\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_extra_step_kwargs\n    def prepare_extra_step_kwargs(self, generator, eta):\n        # prepare extra kwargs for the scheduler step, since not all schedulers have the same signature\n        # eta (η) is only used with the DDIMScheduler, it will be ignored for other schedulers.\n        # eta corresponds to η in DDIM paper: https://arxiv.org/abs/2010.02502\n        # and should be between [0, 1]\n\n        accepts_eta = \"eta\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        extra_step_kwargs = {}\n        if accepts_eta:\n            extra_step_kwargs[\"eta\"] = eta\n\n        # check if the scheduler accepts generator\n        accepts_generator = \"generator\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        if accepts_generator:\n            extra_step_kwargs[\"generator\"] = generator\n        return extra_step_kwargs\n\n    def check_inputs(\n        self,\n        prompt,\n        prompt_2,\n        height,\n        width,\n        callback_steps,\n        negative_prompt=None,\n        negative_prompt_2=None,\n        prompt_embeds=None,\n        negative_prompt_embeds=None,\n        pooled_prompt_embeds=None,\n        negative_pooled_prompt_embeds=None,\n    ):\n        if height % 8 != 0 or width % 8 != 0:\n            raise ValueError(f\"`height` and `width` have to be divisible by 8 but are {height} and {width}.\")\n\n        if (callback_steps is None) or (\n            callback_steps is not None and (not isinstance(callback_steps, int) or callback_steps <= 0)\n        ):\n            raise ValueError(\n                f\"`callback_steps` has to be a positive integer but is {callback_steps} of type\"\n                f\" {type(callback_steps)}.\"\n            )\n\n        if prompt is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt_2 is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt_2`: {prompt_2} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n        elif prompt_2 is not None and (not isinstance(prompt_2, str) and not isinstance(prompt_2, list)):\n            raise ValueError(f\"`prompt_2` has to be of type `str` or `list` but is {type(prompt_2)}\")\n\n        if negative_prompt is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n        elif negative_prompt_2 is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt_2`: {negative_prompt_2} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n\n        if prompt_embeds is not None and negative_prompt_embeds is not None:\n            if prompt_embeds.shape != negative_prompt_embeds.shape:\n                raise ValueError(\n                    \"`prompt_embeds` and `negative_prompt_embeds` must have the same shape when passed directly, but\"\n                    f\" got: `prompt_embeds` {prompt_embeds.shape} != `negative_prompt_embeds`\"\n                    f\" {negative_prompt_embeds.shape}.\"\n                )\n\n        if prompt_embeds is not None and pooled_prompt_embeds is None:\n            raise ValueError(\n                \"If `prompt_embeds` are provided, `pooled_prompt_embeds` also have to be passed. Make sure to generate `pooled_prompt_embeds` from the same text encoder that was used to generate `prompt_embeds`.\"\n            )\n\n        if negative_prompt_embeds is not None and negative_pooled_prompt_embeds is None:\n            raise ValueError(\n                \"If `negative_prompt_embeds` are provided, `negative_pooled_prompt_embeds` also have to be passed. Make sure to generate `negative_pooled_prompt_embeds` from the same text encoder that was used to generate `negative_prompt_embeds`.\"\n            )\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_latents\n    def prepare_latents(self, batch_size, num_channels_latents, height, width, dtype, device, generator, latents=None):\n        shape = (batch_size, num_channels_latents, height // self.vae_scale_factor, width // self.vae_scale_factor)\n        if isinstance(generator, list) and len(generator) != batch_size:\n            raise ValueError(\n                f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n            )\n\n        if latents is None:\n            latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n        else:\n            latents = latents.to(device)\n\n        # scale the initial noise by the standard deviation required by the scheduler\n        latents = latents * self.scheduler.init_noise_sigma\n        return latents\n\n    def _get_add_time_ids(self, original_size, crops_coords_top_left, target_size, dtype):\n        add_time_ids = list(original_size + crops_coords_top_left + target_size)\n\n        passed_add_embed_dim = (\n            self.unet.config.addition_time_embed_dim * len(add_time_ids) + self.text_encoder_2.config.projection_dim\n        )\n        expected_add_embed_dim = self.unet.add_embedding.linear_1.in_features\n\n        if expected_add_embed_dim != passed_add_embed_dim:\n            raise ValueError(\n                f\"Model expects an added time embedding vector of length {expected_add_embed_dim}, but a vector of {passed_add_embed_dim} was created. The model has an incorrect config. Please check `unet.config.time_embedding_type` and `text_encoder_2.config.projection_dim`.\"\n            )\n\n        add_time_ids = torch.tensor([add_time_ids], dtype=dtype)\n        return add_time_ids\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion_upscale.StableDiffusionUpscalePipeline.upcast_vae\n    def upcast_vae(self):\n        dtype = self.vae.dtype\n        self.vae.to(dtype=torch.float32)\n        use_torch_2_0_or_xformers = isinstance(\n            self.vae.decoder.mid_block.attentions[0].processor,\n            (\n                AttnProcessor2_0,\n                XFormersAttnProcessor,\n                LoRAXFormersAttnProcessor,\n                LoRAAttnProcessor2_0,\n            ),\n        )\n        # if xformers or torch_2_0 is used attention block does not need\n        # to be in float32 which can save lots of memory\n        if use_torch_2_0_or_xformers:\n            self.vae.post_quant_conv.to(dtype)\n            self.vae.decoder.conv_in.to(dtype)\n            self.vae.decoder.mid_block.to(dtype)\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        prompt_2: Optional[Union[str, List[str]]] = None,\n        height: Optional[int] = None,\n        width: Optional[int] = None,\n        num_inference_steps: int = 50,\n        denoising_end: Optional[float] = None,\n        guidance_scale: float = 5.0,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        negative_prompt_2: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        eta: float = 0.0,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.FloatTensor] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        callback: Optional[Callable[[int, int, torch.FloatTensor], None]] = None,\n        callback_steps: int = 1,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        guidance_rescale: float = 0.0,\n        original_size: Optional[Tuple[int, int]] = None,\n        crops_coords_top_left: Tuple[int, int] = (0, 0),\n        target_size: Optional[Tuple[int, int]] = None,\n        resolutions_list: Optional[Union[int, List[int]]] = None,\n        restart_steps: Optional[Union[int, List[int]]] = None,\n        cosine_scale: float = 2.0,\n        cosine_scale_bg: float = 1.0,\n        dilate_tau: int = 35,\n        img_path: Optional[str] = \"\",\n        mask_path: Optional[str] = \"\",\n    ):\n        r\"\"\"\n        Function invoked when calling the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide the image generation. If not defined, one has to pass `prompt_embeds`.\n                instead.\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders\n            height (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The height in pixels of the generated image.\n            width (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The width in pixels of the generated image.\n            num_inference_steps (`int`, *optional*, defaults to 50):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            denoising_end (`float`, *optional*):\n                When specified, determines the fraction (between 0.0 and 1.0) of the total denoising process to be\n                completed before it is intentionally prematurely terminated. As a result, the returned sample will\n                still retain a substantial amount of noise as determined by the discrete timesteps selected by the\n                scheduler. The denoising_end parameter should ideally be utilized when this pipeline forms a part of a\n                \"Mixture of Denoisers\" multi-pipeline setup, as elaborated in [**Refining the Image\n                Output**](https://huggingface.co/docs/diffusers/api/pipelines/stable_diffusion/stable_diffusion_xl#refining-the-image-output)\n            guidance_scale (`float`, *optional*, defaults to 5.0):\n                Guidance scale as defined in [Classifier-Free Diffusion Guidance](https://arxiv.org/abs/2207.12598).\n                `guidance_scale` is defined as `w` of equation 2. of [Imagen\n                Paper](https://arxiv.org/pdf/2205.11487.pdf). Guidance scale is enabled by setting `guidance_scale >\n                1`. Higher guidance scale encourages to generate images that are closely linked to the text `prompt`,\n                usually at the expense of lower image quality.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            eta (`float`, *optional*, defaults to 0.0):\n                Corresponds to parameter eta (η) in the DDIM paper: https://arxiv.org/abs/2010.02502. Only applies to\n                [`schedulers.DDIMScheduler`], will be ignored for others.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                One or a list of [torch generator(s)](https://pytorch.org/docs/stable/generated/torch.Generator.html)\n                to make generation deterministic.\n            latents (`torch.FloatTensor`, *optional*):\n                Pre-generated noisy latents, sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor will ge generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generate image. Choose between\n                [PIL](https://pillow.readthedocs.io/en/stable/): `PIL.Image.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] instead\n                of a plain tuple.\n            callback (`Callable`, *optional*):\n                A function that will be called every `callback_steps` steps during inference. The function will be\n                called with the following arguments: `callback(step: int, timestep: int, latents: torch.FloatTensor)`.\n            callback_steps (`int`, *optional*, defaults to 1):\n                The frequency at which the `callback` function will be called. If not specified, the callback will be\n                called at every step.\n            cross_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            guidance_rescale (`float`, *optional*, defaults to 0.7):\n                Guidance rescale factor proposed by [Common Diffusion Noise Schedules and Sample Steps are\n                Flawed](https://arxiv.org/pdf/2305.08891.pdf) `guidance_scale` is defined as `φ` in equation 16. of\n                [Common Diffusion Noise Schedules and Sample Steps are Flawed](https://arxiv.org/pdf/2305.08891.pdf).\n                Guidance rescale factor should fix overexposure when using zero terminal SNR.\n            original_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                If `original_size` is not the same as `target_size` the image will appear to be down- or upsampled.\n                `original_size` defaults to `(width, height)` if not specified. Part of SDXL's micro-conditioning as\n                explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            crops_coords_top_left (`Tuple[int]`, *optional*, defaults to (0, 0)):\n                `crops_coords_top_left` can be used to generate an image that appears to be \"cropped\" from the position\n                `crops_coords_top_left` downwards. Favorable, well-centered images are usually achieved by setting\n                `crops_coords_top_left` to (0, 0). Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            target_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                For most cases, `target_size` should be set to the desired height and width of the generated image. If\n                not specified it will default to `(width, height)`. Part of SDXL's micro-conditioning as explained in\n                section 2.2 of [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n\n        Examples:\n\n        Returns:\n            [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] or `tuple`:\n            [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] if `return_dict` is True, otherwise a\n            `tuple`. When returning a tuple, the first element is a list with the generated images.\n        \"\"\"\n\n\n        # 0. Default height and width to unet\n        if resolutions_list:\n            height, width = resolutions_list[0]\n            target_sizes = resolutions_list[1:]\n            if not restart_steps:\n                restart_steps = [15] * len(target_sizes)\n        else:\n            height = height or self.default_sample_size * self.vae_scale_factor\n            width = width or self.default_sample_size * self.vae_scale_factor\n\n        original_size = original_size or (height, width)\n        target_size = target_size or (height, width)\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            prompt_2,\n            height,\n            width,\n            callback_steps,\n            negative_prompt,\n            negative_prompt_2,\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n        )\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        device = self._execution_device\n\n        # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2)\n        # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1`\n        # corresponds to doing no classifier free guidance.\n        do_classifier_free_guidance = guidance_scale > 1.0\n\n        # 3. Encode input prompt\n        text_encoder_lora_scale = (\n            cross_attention_kwargs.get(\"scale\", None) if cross_attention_kwargs is not None else None\n        )\n        (\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n        ) = self.encode_prompt(\n            prompt=prompt,\n            prompt_2=prompt_2,\n            device=device,\n            num_images_per_prompt=num_images_per_prompt,\n            do_classifier_free_guidance=do_classifier_free_guidance,\n            negative_prompt=negative_prompt,\n            negative_prompt_2=negative_prompt_2,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            negative_pooled_prompt_embeds=negative_pooled_prompt_embeds,\n            lora_scale=text_encoder_lora_scale,\n        )\n\n        # 4. Prepare timesteps\n        self.scheduler.set_timesteps(num_inference_steps, device=device)\n\n        timesteps = self.scheduler.timesteps\n\n        # 5. Prepare latent variables\n        num_channels_latents = self.unet.config.in_channels\n        latents = self.prepare_latents(\n            batch_size * num_images_per_prompt,\n            num_channels_latents,\n            height,\n            width,\n            prompt_embeds.dtype,\n            device,\n            generator,\n            latents,\n        )\n\n        # 6. Prepare extra step kwargs.\n        extra_step_kwargs = self.prepare_extra_step_kwargs(generator, eta)\n\n        # 7. Prepare added time ids & embeddings\n        add_text_embeds = pooled_prompt_embeds\n        add_time_ids = self._get_add_time_ids(\n            original_size, crops_coords_top_left, target_size, dtype=prompt_embeds.dtype\n        )\n\n        if do_classifier_free_guidance:\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds], dim=0)\n            add_text_embeds = torch.cat([negative_pooled_prompt_embeds, add_text_embeds], dim=0)\n            add_time_ids = torch.cat([add_time_ids, add_time_ids], dim=0)\n\n        prompt_embeds = prompt_embeds.to(device)\n        add_text_embeds = add_text_embeds.to(device)\n        add_time_ids = add_time_ids.to(device).repeat(batch_size * num_images_per_prompt, 1)\n\n        # 8. Denoising loop\n        num_warmup_steps = max(len(timesteps) - num_inference_steps * self.scheduler.order, 0)\n\n        # 9.1 Apply denoising_end\n        if denoising_end is not None and type(denoising_end) == float and denoising_end > 0 and denoising_end < 1:\n            discrete_timestep_cutoff = int(\n                round(\n                    self.scheduler.config.num_train_timesteps\n                    - (denoising_end * self.scheduler.config.num_train_timesteps)\n                )\n            )\n            num_inference_steps = len(list(filter(lambda ts: ts >= discrete_timestep_cutoff, timesteps)))\n            timesteps = timesteps[:num_inference_steps]\n\n        results_list = []\n\n        for block in self.unet.down_blocks + [self.unet.mid_block] + self.unet.up_blocks:\n            for module in block.modules():\n                if isinstance(module, BasicTransformerBlock):\n                    module.forward = ori_forward.__get__(module, BasicTransformerBlock)\n\n        if img_path != '':\n            needs_upcasting = self.vae.dtype == torch.float16 and self.vae.config.force_upcast\n            if needs_upcasting:\n                self.upcast_vae()\n                latents = latents.to(next(iter(self.vae.post_quant_conv.parameters())).dtype)\n            input_image = process_image_to_tensor(img_path).unsqueeze(0).to(dtype=self.vae.dtype, device=device)\n            latents = self.vae.encode(input_image).latent_dist.sample().to(self.vae.dtype)\n            latents = latents * self.vae.config.scaling_factor\n        else:\n            with self.progress_bar(total=num_inference_steps) as progress_bar:\n                for i, t in enumerate(timesteps):\n                    # expand the latents if we are doing classifier free guidance\n                    latent_model_input = torch.cat([latents] * 2) if do_classifier_free_guidance else latents\n\n                    latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n                    # predict the noise residual\n                    added_cond_kwargs = {\"text_embeds\": add_text_embeds, \"time_ids\": add_time_ids}\n                    noise_pred = self.unet(\n                        latent_model_input,\n                        t,\n                        encoder_hidden_states=prompt_embeds,\n                        cross_attention_kwargs=cross_attention_kwargs,\n                        added_cond_kwargs=added_cond_kwargs,\n                        return_dict=False,\n                    )[0]\n\n                    # perform guidance\n                    if do_classifier_free_guidance:\n                        noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                        noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                    if do_classifier_free_guidance and guidance_rescale > 0.0:\n                        # Based on 3.4. in https://arxiv.org/pdf/2305.08891.pdf\n                        noise_pred = rescale_noise_cfg(noise_pred, noise_pred_text, guidance_rescale=guidance_rescale)\n\n                    # compute the previous noisy sample x_t -> x_t-1\n                    latents = self.scheduler.step(noise_pred, t, latents, **extra_step_kwargs, return_dict=False)[0]\n\n                    # call the callback, if provided\n                    if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                        progress_bar.update()\n                        if callback is not None and i % callback_steps == 0:\n                            callback(i, t, latents)\n\n        results_list.append(latents)\n\n        if mask_path != '':\n            mask = process_image_to_bitensor(mask_path).unsqueeze(0)\n\n        for restart_index, target_size in enumerate(target_sizes):\n            restart_step = restart_steps[restart_index]\n            target_size_ = [target_size[0]//8, target_size[1]//8]\n\n            for block in self.unet.down_blocks + [self.unet.mid_block] + self.unet.up_blocks:\n                for module in block.modules():\n                    if isinstance(module, BasicTransformerBlock):\n                        module.forward = scale_forward.__get__(module, BasicTransformerBlock)\n                        module.current_hw = target_size\n\n            needs_upcasting = self.vae.dtype == torch.float16 and self.vae.config.force_upcast\n            if needs_upcasting:\n                self.upcast_vae()\n                latents = latents.to(next(iter(self.vae.post_quant_conv.parameters())).dtype)\n\n            latents = latents / self.vae.config.scaling_factor\n            image = self.vae.decode(latents, return_dict=False)[0]\n            image = torch.nn.functional.interpolate(\n                image,\n                size=target_size,\n                mode='bicubic',\n                )\n            latents = self.vae.encode(image).latent_dist.sample().to(self.vae.dtype)\n            latents = latents * self.vae.config.scaling_factor\n\n            if mask_path != '':\n                mask_ = torch.nn.functional.interpolate(\n                    mask,\n                    size=target_size_,\n                    mode=\"nearest\",\n                    ).to(device)\n\n            noise_latents = []\n            noise = torch.randn_like(latents)\n            for timestep in self.scheduler.timesteps:\n                noise_latent = self.scheduler.add_noise(latents, noise, timestep.unsqueeze(0))\n                noise_latents.append(noise_latent)\n            latents = noise_latents[restart_step]\n\n            self.scheduler._step_index = 0\n            with self.progress_bar(total=num_inference_steps) as progress_bar:\n                for i, t in enumerate(timesteps):\n\n                    if i < restart_step:\n                        self.scheduler._step_index += 1\n                        progress_bar.update()\n                        continue\n\n                    cosine_factor = 0.5 * (1 + torch.cos(torch.pi * (self.scheduler.config.num_train_timesteps - t) / self.scheduler.config.num_train_timesteps)).cpu()\n                    if mask_path != '':\n                        c1 = (cosine_factor ** (mask_ * cosine_scale + (1-mask_) * cosine_scale_bg)).to(dtype=torch.float16)\n                    else:\n                        c1 = cosine_factor ** cosine_scale\n                    latents = latents * (1 - c1) + noise_latents[i] * c1\n\n                    dilate_coef=target_size[1]//1024\n\n                    dilate_layers = [\n                        # \"down_blocks.1.resnets.0.conv1\",\n                        # \"down_blocks.1.resnets.0.conv2\",\n                        # \"down_blocks.1.resnets.1.conv1\",\n                        # \"down_blocks.1.resnets.1.conv2\",\n                        \"down_blocks.1.downsamplers.0.conv\",\n                        \"down_blocks.2.resnets.0.conv1\",\n                        \"down_blocks.2.resnets.0.conv2\",\n                        \"down_blocks.2.resnets.1.conv1\",\n                        \"down_blocks.2.resnets.1.conv2\",\n                        # \"up_blocks.0.resnets.0.conv1\",\n                        # \"up_blocks.0.resnets.0.conv2\",\n                        # \"up_blocks.0.resnets.1.conv1\",\n                        # \"up_blocks.0.resnets.1.conv2\",\n                        # \"up_blocks.0.resnets.2.conv1\",\n                        # \"up_blocks.0.resnets.2.conv2\",\n                        # \"up_blocks.0.upsamplers.0.conv\",\n                        # \"up_blocks.1.resnets.0.conv1\",\n                        # \"up_blocks.1.resnets.0.conv2\",\n                        # \"up_blocks.1.resnets.1.conv1\",\n                        # \"up_blocks.1.resnets.1.conv2\",\n                        # \"up_blocks.1.resnets.2.conv1\",\n                        # \"up_blocks.1.resnets.2.conv2\",\n                        # \"up_blocks.1.upsamplers.0.conv\",\n                        # \"up_blocks.2.resnets.0.conv1\",\n                        # \"up_blocks.2.resnets.0.conv2\",\n                        # \"up_blocks.2.resnets.1.conv1\",\n                        # \"up_blocks.2.resnets.1.conv2\",\n                        # \"up_blocks.2.resnets.2.conv1\",\n                        # \"up_blocks.2.resnets.2.conv2\",\n                        \"mid_block.resnets.0.conv1\",\n                        \"mid_block.resnets.0.conv2\",\n                        \"mid_block.resnets.1.conv1\",\n                        \"mid_block.resnets.1.conv2\"\n                        ]\n\n                    for name, module in self.unet.named_modules():\n                        if name in dilate_layers:\n                            if i < dilate_tau:\n                                module.dilation = (dilate_coef, dilate_coef)\n                                module.padding = (dilate_coef, dilate_coef)\n                            else:\n                                module.dilation = (1, 1)\n                                module.padding = (1, 1)\n\n                    # expand the latents if we are doing classifier free guidance\n                    latent_model_input = torch.cat([latents] * 2) if do_classifier_free_guidance else latents\n\n                    latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n\n                    # predict the noise residual\n                    added_cond_kwargs = {\"text_embeds\": add_text_embeds, \"time_ids\": add_time_ids}\n                    noise_pred = self.unet(\n                        latent_model_input,\n                        t,\n                        encoder_hidden_states=prompt_embeds,\n                        cross_attention_kwargs=cross_attention_kwargs,\n                        added_cond_kwargs=added_cond_kwargs,\n                        return_dict=False,\n                    )[0]\n\n                    # perform guidance\n                    if do_classifier_free_guidance:\n                        noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                        noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                    if do_classifier_free_guidance and guidance_rescale > 0.0:\n                        # Based on 3.4. in https://arxiv.org/pdf/2305.08891.pdf\n                        noise_pred = rescale_noise_cfg(noise_pred, noise_pred_text, guidance_rescale=guidance_rescale)\n\n                    # compute the previous noisy sample x_t -> x_t-1\n                    latents_dtype = latents.dtype\n                    latents = self.scheduler.step(noise_pred, t, latents, **extra_step_kwargs, return_dict=False)[0]\n                    if latents.dtype != latents_dtype:\n                        if torch.backends.mps.is_available():\n                            # some platforms (eg. apple mps) misbehave due to a pytorch bug: https://github.com/pytorch/pytorch/pull/99272\n                            latents = latents.to(latents_dtype)\n\n                    # call the callback, if provided\n                    if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                        progress_bar.update()\n                        if callback is not None and i % callback_steps == 0:\n                            callback(i, t, latents)\n\n                    for name, module in self.unet.named_modules():\n                        # if ('.conv' in name) and ('.conv_' not in name):\n                        if name in dilate_layers:\n                            module.dilation = (1, 1)\n                            module.padding = (1, 1)\n\n            results_list.append(latents)\n\n        \"\"\"\n        final_results = []\n        for latents in results_list:\n            # make sure the VAE is in float32 mode, as it overflows in float16\n            if self.vae.dtype == torch.float16 and self.vae.config.force_upcast:\n                self.upcast_vae()\n                latents = latents.to(next(iter(self.vae.post_quant_conv.parameters())).dtype)\n\n            if not output_type == \"latent\":\n                image = self.vae.decode(latents / self.vae.config.scaling_factor, return_dict=False)[0]\n            else:\n                image = latents\n                return StableDiffusionXLPipelineOutput(images=image)\n\n            # apply watermark if available\n            if self.watermark is not None:\n                image = self.watermark.apply_watermark(image)\n\n            image = self.image_processor.postprocess(image, output_type=output_type)\n\n            if not return_dict:\n                final_results += [(image,)]\n            else:\n                final_results += [StableDiffusionXLPipelineOutput(images=image)]\n\n        # Offload last model to CPU\n        if hasattr(self, \"final_offload_hook\") and self.final_offload_hook is not None:\n            self.final_offload_hook.offload()\n\n        return final_results\n        \"\"\"\n        return StableDiffusionXLPipelineOutput(images=results_list)\n\n    # Overrride to properly handle the loading and unloading of the additional text encoder.\n    def load_lora_weights(self, pretrained_model_name_or_path_or_dict: Union[str, Dict[str, torch.Tensor]], **kwargs):\n        # We could have accessed the unet config from `lora_state_dict()` too. We pass\n        # it here explicitly to be able to tell that it's coming from an SDXL\n        # pipeline.\n        state_dict, network_alphas = self.lora_state_dict(\n            pretrained_model_name_or_path_or_dict,\n            unet_config=self.unet.config,\n            **kwargs,\n        )\n        self.load_lora_into_unet(state_dict, network_alphas=network_alphas, unet=self.unet)\n\n        text_encoder_state_dict = {k: v for k, v in state_dict.items() if \"text_encoder.\" in k}\n        if len(text_encoder_state_dict) > 0:\n            self.load_lora_into_text_encoder(\n                text_encoder_state_dict,\n                network_alphas=network_alphas,\n                text_encoder=self.text_encoder,\n                prefix=\"text_encoder\",\n                lora_scale=self.lora_scale,\n            )\n\n        text_encoder_2_state_dict = {k: v for k, v in state_dict.items() if \"text_encoder_2.\" in k}\n        if len(text_encoder_2_state_dict) > 0:\n            self.load_lora_into_text_encoder(\n                text_encoder_2_state_dict,\n                network_alphas=network_alphas,\n                text_encoder=self.text_encoder_2,\n                prefix=\"text_encoder_2\",\n                lora_scale=self.lora_scale,\n            )\n\n    @classmethod\n    def save_lora_weights(\n        self,\n        save_directory: Union[str, os.PathLike],\n        unet_lora_layers: Dict[str, Union[torch.nn.Module, torch.Tensor]] = None,\n        text_encoder_lora_layers: Dict[str, Union[torch.nn.Module, torch.Tensor]] = None,\n        text_encoder_2_lora_layers: Dict[str, Union[torch.nn.Module, torch.Tensor]] = None,\n        is_main_process: bool = True,\n        weight_name: str = None,\n        save_function: Callable = None,\n        safe_serialization: bool = True,\n    ):\n        state_dict = {}\n\n        def pack_weights(layers, prefix):\n            layers_weights = layers.state_dict() if isinstance(layers, torch.nn.Module) else layers\n            layers_state_dict = {f\"{prefix}.{module_name}\": param for module_name, param in layers_weights.items()}\n            return layers_state_dict\n\n        state_dict.update(pack_weights(unet_lora_layers, \"unet\"))\n\n        if text_encoder_lora_layers and text_encoder_2_lora_layers:\n            state_dict.update(pack_weights(text_encoder_lora_layers, \"text_encoder\"))\n            state_dict.update(pack_weights(text_encoder_2_lora_layers, \"text_encoder_2\"))\n\n        self.write_lora_layers(\n            state_dict=state_dict,\n            save_directory=save_directory,\n            is_main_process=is_main_process,\n            weight_name=weight_name,\n            save_function=save_function,\n            safe_serialization=safe_serialization,\n        )\n\n    def _remove_text_encoder_monkey_patch(self):\n        self._remove_text_encoder_monkey_patch_classmethod(self.text_encoder)\n        self._remove_text_encoder_monkey_patch_classmethod(self.text_encoder_2)\n"
  },
  {
    "path": "scripts/freescale/scale_attention.py",
    "content": "from typing import Any, Dict, Optional\nimport random\nimport torch\nimport torch.nn.functional as F\nfrom einops import rearrange\n\n\ndef gaussian_kernel(kernel_size=3, sigma=1.0, channels=3):\n    x_coord = torch.arange(kernel_size)\n    gaussian_1d = torch.exp(-(x_coord - (kernel_size - 1) / 2) ** 2 / (2 * sigma ** 2))\n    gaussian_1d = gaussian_1d / gaussian_1d.sum()\n    gaussian_2d = gaussian_1d[:, None] * gaussian_1d[None, :]\n    kernel = gaussian_2d[None, None, :, :].repeat(channels, 1, 1, 1)\n\n    return kernel\n\ndef gaussian_filter(latents, kernel_size=3, sigma=1.0):\n    channels = latents.shape[1]\n    kernel = gaussian_kernel(kernel_size, sigma, channels).to(latents.device, latents.dtype)\n    blurred_latents = F.conv2d(latents, kernel, padding=kernel_size//2, groups=channels)\n\n    return blurred_latents\n\ndef get_views(height, width, h_window_size=128, w_window_size=128, scale_factor=8):\n    height = int(height)\n    width = int(width)\n    h_window_stride = h_window_size // 2\n    w_window_stride = w_window_size // 2\n    h_window_size = int(h_window_size / scale_factor)\n    w_window_size = int(w_window_size / scale_factor)\n    h_window_stride = int(h_window_stride / scale_factor)\n    w_window_stride = int(w_window_stride / scale_factor)\n    num_blocks_height = int((height - h_window_size) / h_window_stride - 1e-6) + 2 if height > h_window_size else 1\n    num_blocks_width = int((width - w_window_size) / w_window_stride - 1e-6) + 2 if width > w_window_size else 1\n    total_num_blocks = int(num_blocks_height * num_blocks_width)\n    views = []\n    for i in range(total_num_blocks):\n        h_start = int((i // num_blocks_width) * h_window_stride)\n        h_end = h_start + h_window_size\n        w_start = int((i % num_blocks_width) * w_window_stride)\n        w_end = w_start + w_window_size\n\n        if h_end > height:\n            h_start = int(h_start + height - h_end)\n            h_end = int(height)\n        if w_end > width:\n            w_start = int(w_start + width - w_end)\n            w_end = int(width)\n        if h_start < 0:\n            h_end = int(h_end - h_start)\n            h_start = 0\n        if w_start < 0:\n            w_end = int(w_end - w_start)\n            w_start = 0\n\n        random_jitter = True\n        if random_jitter:\n            h_jitter_range = h_window_size // 8\n            w_jitter_range = w_window_size // 8\n            h_jitter = 0\n            w_jitter = 0\n\n            if (w_start != 0) and (w_end != width):\n                w_jitter = random.randint(-w_jitter_range, w_jitter_range)\n            elif (w_start == 0) and (w_end != width):\n                w_jitter = random.randint(-w_jitter_range, 0)\n            elif (w_start != 0) and (w_end == width):\n                w_jitter = random.randint(0, w_jitter_range)\n            if (h_start != 0) and (h_end != height):\n                h_jitter = random.randint(-h_jitter_range, h_jitter_range)\n            elif (h_start == 0) and (h_end != height):\n                h_jitter = random.randint(-h_jitter_range, 0)\n            elif (h_start != 0) and (h_end == height):\n                h_jitter = random.randint(0, h_jitter_range)\n            h_start += (h_jitter + h_jitter_range)\n            h_end += (h_jitter + h_jitter_range)\n            w_start += (w_jitter + w_jitter_range)\n            w_end += (w_jitter + w_jitter_range)\n\n        views.append((h_start, h_end, w_start, w_end))\n    return views\n\ndef scale_forward(\n    self,\n    hidden_states: torch.FloatTensor,\n    attention_mask: Optional[torch.FloatTensor] = None,\n    encoder_hidden_states: Optional[torch.FloatTensor] = None,\n    encoder_attention_mask: Optional[torch.FloatTensor] = None,\n    timestep: Optional[torch.LongTensor] = None,\n    cross_attention_kwargs: Dict[str, Any] = None,\n    class_labels: Optional[torch.LongTensor] = None,\n):\n    # Notice that normalization is always applied before the real computation in the following blocks.\n    if self.current_hw:\n        current_scale_num_h, current_scale_num_w = max(self.current_hw[0] // 1024, 1), max(self.current_hw[1] // 1024, 1)\n    else:\n        current_scale_num_h, current_scale_num_w = 1, 1\n\n    # 0. Self-Attention\n    if self.use_ada_layer_norm:\n        norm_hidden_states = self.norm1(hidden_states, timestep)\n    elif self.use_ada_layer_norm_zero:\n        norm_hidden_states, gate_msa, shift_mlp, scale_mlp, gate_mlp = self.norm1(\n            hidden_states, timestep, class_labels, hidden_dtype=hidden_states.dtype\n        )\n    else:\n        norm_hidden_states = self.norm1(hidden_states)\n\n    # 2. Prepare GLIGEN inputs\n    cross_attention_kwargs = cross_attention_kwargs.copy() if cross_attention_kwargs is not None else {}\n    gligen_kwargs = cross_attention_kwargs.pop(\"gligen\", None)\n\n    ratio_hw = current_scale_num_h / current_scale_num_w\n    latent_h = int((norm_hidden_states.shape[1] * ratio_hw) ** 0.5)\n    latent_w = int(latent_h / ratio_hw)\n    scale_factor = 128 * current_scale_num_h / latent_h\n    if ratio_hw > 1:\n        sub_h = 128\n        sub_w = int(128 / ratio_hw)\n    else:\n        sub_h = int(128 * ratio_hw)\n        sub_w = 128\n\n    h_jitter_range = int(sub_h / scale_factor // 8)\n    w_jitter_range = int(sub_w / scale_factor // 8)\n    views = get_views(latent_h, latent_w, sub_h, sub_w, scale_factor = scale_factor)\n\n    current_scale_num = max(current_scale_num_h, current_scale_num_w)\n    global_views = [[h, w] for h in range(current_scale_num_h) for w in range(current_scale_num_w)]\n\n    four_window = True\n    fourg_window = False\n\n    if four_window:\n        norm_hidden_states_ = rearrange(norm_hidden_states, 'bh (h w) d -> bh h w d', h = latent_h)\n        norm_hidden_states_ = F.pad(norm_hidden_states_, (0, 0, w_jitter_range, w_jitter_range, h_jitter_range, h_jitter_range), 'constant', 0)\n        value = torch.zeros_like(norm_hidden_states_)\n        count = torch.zeros_like(norm_hidden_states_)\n        for index, view in enumerate(views):\n            h_start, h_end, w_start, w_end = view\n            local_states = norm_hidden_states_[:, h_start:h_end, w_start:w_end, :]\n            local_states = rearrange(local_states, 'bh h w d -> bh (h w) d')\n            local_output = self.attn1(\n                local_states,\n                encoder_hidden_states=encoder_hidden_states if self.only_cross_attention else None,\n                attention_mask=attention_mask,\n                **cross_attention_kwargs,\n            )\n            local_output = rearrange(local_output, 'bh (h w) d -> bh h w d', h = int(sub_h / scale_factor))\n\n            value[:, h_start:h_end, w_start:w_end, :] += local_output * 1\n            count[:, h_start:h_end, w_start:w_end, :] += 1\n\n        value = value[:, h_jitter_range:-h_jitter_range, w_jitter_range:-w_jitter_range, :]\n        count = count[:, h_jitter_range:-h_jitter_range, w_jitter_range:-w_jitter_range, :]\n        attn_output = torch.where(count>0, value/count, value)\n\n        gaussian_local = gaussian_filter(attn_output, kernel_size=(2*current_scale_num-1), sigma=1.0)\n\n        attn_output_global = self.attn1(\n            norm_hidden_states,\n            encoder_hidden_states=encoder_hidden_states if self.only_cross_attention else None,\n            attention_mask=attention_mask,\n            **cross_attention_kwargs,\n        )\n        attn_output_global = rearrange(attn_output_global, 'bh (h w) d -> bh h w d', h = latent_h)\n\n        gaussian_global = gaussian_filter(attn_output_global, kernel_size=(2*current_scale_num-1), sigma=1.0)\n\n        attn_output = gaussian_local + (attn_output_global - gaussian_global)\n        attn_output = rearrange(attn_output, 'bh h w d -> bh (h w) d')\n\n    elif fourg_window:\n        norm_hidden_states = rearrange(norm_hidden_states, 'bh (h w) d -> bh h w d', h = latent_h)\n        norm_hidden_states_ = F.pad(norm_hidden_states, (0, 0, w_jitter_range, w_jitter_range, h_jitter_range, h_jitter_range), 'constant', 0)\n        value = torch.zeros_like(norm_hidden_states_)\n        count = torch.zeros_like(norm_hidden_states_)\n        for index, view in enumerate(views):\n            h_start, h_end, w_start, w_end = view\n            local_states = norm_hidden_states_[:, h_start:h_end, w_start:w_end, :]\n            local_states = rearrange(local_states, 'bh h w d -> bh (h w) d')\n            local_output = self.attn1(\n                local_states,\n                encoder_hidden_states=encoder_hidden_states if self.only_cross_attention else None,\n                attention_mask=attention_mask,\n                **cross_attention_kwargs,\n            )\n            local_output = rearrange(local_output, 'bh (h w) d -> bh h w d', h = int(sub_h / scale_factor))\n\n            value[:, h_start:h_end, w_start:w_end, :] += local_output * 1\n            count[:, h_start:h_end, w_start:w_end, :] += 1\n\n        value = value[:, h_jitter_range:-h_jitter_range, w_jitter_range:-w_jitter_range, :]\n        count = count[:, h_jitter_range:-h_jitter_range, w_jitter_range:-w_jitter_range, :]\n        attn_output = torch.where(count>0, value/count, value)\n\n        gaussian_local = gaussian_filter(attn_output, kernel_size=(2*current_scale_num-1), sigma=1.0)\n\n        value = torch.zeros_like(norm_hidden_states)\n        count = torch.zeros_like(norm_hidden_states)\n        for index, global_view in enumerate(global_views):\n            h, w = global_view\n            global_states = norm_hidden_states[:, h::current_scale_num_h, w::current_scale_num_w, :]\n            global_states = rearrange(global_states, 'bh h w d -> bh (h w) d')\n            global_output = self.attn1(\n                global_states,\n                encoder_hidden_states=encoder_hidden_states if self.only_cross_attention else None,\n                attention_mask=attention_mask,\n                **cross_attention_kwargs,\n            )\n            global_output = rearrange(global_output, 'bh (h w) d -> bh h w d', h = int(global_output.shape[1] ** 0.5))\n\n            value[:, h::current_scale_num_h, w::current_scale_num_w, :] += global_output * 1\n            count[:, h::current_scale_num_h, w::current_scale_num_w, :] += 1\n\n        attn_output_global = torch.where(count>0, value/count, value)\n\n        gaussian_global = gaussian_filter(attn_output_global, kernel_size=(2*current_scale_num-1), sigma=1.0)\n\n        attn_output = gaussian_local + (attn_output_global - gaussian_global)\n        attn_output = rearrange(attn_output, 'bh h w d -> bh (h w) d')\n\n    else:\n        attn_output = self.attn1(\n            norm_hidden_states,\n            encoder_hidden_states=encoder_hidden_states if self.only_cross_attention else None,\n            attention_mask=attention_mask,\n            **cross_attention_kwargs,\n        )\n\n    if self.use_ada_layer_norm_zero:\n        attn_output = gate_msa.unsqueeze(1) * attn_output\n    hidden_states = attn_output + hidden_states\n\n    # 2.5 GLIGEN Control\n    if gligen_kwargs is not None:\n        hidden_states = self.fuser(hidden_states, gligen_kwargs[\"objs\"])\n    # 2.5 ends\n\n    # 3. Cross-Attention\n    if self.attn2 is not None:\n        norm_hidden_states = (\n            self.norm2(hidden_states, timestep) if self.use_ada_layer_norm else self.norm2(hidden_states)\n        )\n        attn_output = self.attn2(\n            norm_hidden_states,\n            encoder_hidden_states=encoder_hidden_states,\n            attention_mask=encoder_attention_mask,\n            **cross_attention_kwargs,\n        )\n        hidden_states = attn_output + hidden_states\n\n    # 4. Feed-forward\n    norm_hidden_states = self.norm3(hidden_states)\n\n    if self.use_ada_layer_norm_zero:\n        norm_hidden_states = norm_hidden_states * (1 + scale_mlp[:, None]) + shift_mlp[:, None]\n\n    if self._chunk_size is not None:\n        # \"feed_forward_chunk_size\" can be used to save memory\n        if norm_hidden_states.shape[self._chunk_dim] % self._chunk_size != 0:\n            raise ValueError(\n                f\"`hidden_states` dimension to be chunked: {norm_hidden_states.shape[self._chunk_dim]} has to be divisible by chunk size: {self._chunk_size}. Make sure to set an appropriate `chunk_size` when calling `unet.enable_forward_chunking`.\"\n            )\n\n        num_chunks = norm_hidden_states.shape[self._chunk_dim] // self._chunk_size\n        ff_output = torch.cat(\n            [\n                self.ff(hid_slice)\n                for hid_slice in norm_hidden_states.chunk(num_chunks, dim=self._chunk_dim)\n            ],\n            dim=self._chunk_dim,\n        )\n    else:\n        ff_output = self.ff(norm_hidden_states)\n\n    if self.use_ada_layer_norm_zero:\n        ff_output = gate_mlp.unsqueeze(1) * ff_output\n\n    hidden_states = ff_output + hidden_states\n\n    return hidden_states\n\ndef ori_forward(\n    self,\n    hidden_states: torch.FloatTensor,\n    attention_mask: Optional[torch.FloatTensor] = None,\n    encoder_hidden_states: Optional[torch.FloatTensor] = None,\n    encoder_attention_mask: Optional[torch.FloatTensor] = None,\n    timestep: Optional[torch.LongTensor] = None,\n    cross_attention_kwargs: Dict[str, Any] = None,\n    class_labels: Optional[torch.LongTensor] = None,\n):\n    # Notice that normalization is always applied before the real computation in the following blocks.\n    # 0. Self-Attention\n    if self.use_ada_layer_norm:\n        norm_hidden_states = self.norm1(hidden_states, timestep)\n    elif self.use_ada_layer_norm_zero:\n        norm_hidden_states, gate_msa, shift_mlp, scale_mlp, gate_mlp = self.norm1(\n            hidden_states, timestep, class_labels, hidden_dtype=hidden_states.dtype\n        )\n    else:\n        norm_hidden_states = self.norm1(hidden_states)\n\n    # 2. Prepare GLIGEN inputs\n    cross_attention_kwargs = cross_attention_kwargs.copy() if cross_attention_kwargs is not None else {}\n    gligen_kwargs = cross_attention_kwargs.pop(\"gligen\", None)\n\n    attn_output = self.attn1(\n        norm_hidden_states,\n        encoder_hidden_states=encoder_hidden_states if self.only_cross_attention else None,\n        attention_mask=attention_mask,\n        **cross_attention_kwargs,\n    )\n\n    if self.use_ada_layer_norm_zero:\n        attn_output = gate_msa.unsqueeze(1) * attn_output\n    hidden_states = attn_output + hidden_states\n\n    # 2.5 GLIGEN Control\n    if gligen_kwargs is not None:\n        hidden_states = self.fuser(hidden_states, gligen_kwargs[\"objs\"])\n    # 2.5 ends\n\n    # 3. Cross-Attention\n    if self.attn2 is not None:\n        norm_hidden_states = (\n            self.norm2(hidden_states, timestep) if self.use_ada_layer_norm else self.norm2(hidden_states)\n        )\n        attn_output = self.attn2(\n            norm_hidden_states,\n            encoder_hidden_states=encoder_hidden_states,\n            attention_mask=encoder_attention_mask,\n            **cross_attention_kwargs,\n        )\n        hidden_states = attn_output + hidden_states\n\n    # 4. Feed-forward\n    norm_hidden_states = self.norm3(hidden_states)\n\n    if self.use_ada_layer_norm_zero:\n        norm_hidden_states = norm_hidden_states * (1 + scale_mlp[:, None]) + shift_mlp[:, None]\n\n    if self._chunk_size is not None:\n        # \"feed_forward_chunk_size\" can be used to save memory\n        if norm_hidden_states.shape[self._chunk_dim] % self._chunk_size != 0:\n            raise ValueError(\n                f\"`hidden_states` dimension to be chunked: {norm_hidden_states.shape[self._chunk_dim]} has to be divisible by chunk size: {self._chunk_size}. Make sure to set an appropriate `chunk_size` when calling `unet.enable_forward_chunking`.\"\n            )\n\n        num_chunks = norm_hidden_states.shape[self._chunk_dim] // self._chunk_size\n        ff_output = torch.cat(\n            [\n                self.ff(hid_slice)\n                for hid_slice in norm_hidden_states.chunk(num_chunks, dim=self._chunk_dim)\n            ],\n            dim=self._chunk_dim,\n        )\n    else:\n        ff_output = self.ff(norm_hidden_states)\n\n    if self.use_ada_layer_norm_zero:\n        ff_output = gate_mlp.unsqueeze(1) * ff_output\n\n    hidden_states = ff_output + hidden_states\n\n    return hidden_states\n"
  },
  {
    "path": "scripts/freescale_ext.py",
    "content": "import gradio as gr\nfrom modules import scripts_manager, processing, shared, sd_models\n\n\nregistered = False\n\n\nclass Script(scripts_manager.Script):\n    def __init__(self):\n        super().__init__()\n        self.orig_pipe = None\n        self.orig_slice = None\n        self.orig_tile = None\n        self.is_img2img = False\n\n    def title(self):\n        return 'FreeScale: Tuning-Free Scale Fusion'\n\n    def show(self, is_img2img):\n        self.is_img2img = is_img2img\n        return True\n\n    def ui(self, _is_img2img): # ui elements\n        with gr.Row():\n            gr.HTML('<a href=\"https://github.com/ali-vilab/FreeScale\">&nbsp FreeScale: Tuning-Free Scale Fusion</a><br>')\n        with gr.Row():\n            cosine_scale = gr.Slider(minimum=0.1, maximum=5.0, value=2.0, label='Cosine scale')\n            override_sampler = gr.Checkbox(value=True, label='Override sampler')\n        with gr.Row(visible=self.is_img2img):\n            cosine_scale_bg = gr.Slider(minimum=0.1, maximum=5.0, value=1.0, label='Cosine Background')\n            dilate_tau = gr.Slider(minimum=1, maximum=100, value=35, label='Dilate tau')\n        with gr.Row():\n            s1_enable = gr.Checkbox(value=True, label='1st Stage', interactive=False)\n            s1_scale = gr.Slider(minimum=1, maximum=8.0, value=1.0, label='Scale')\n            s1_restart = gr.Slider(minimum=0, maximum=1.0, value=0.75, label='Restart step')\n        with gr.Row():\n            s2_enable = gr.Checkbox(value=True, label='2nd Stage')\n            s2_scale = gr.Slider(minimum=1, maximum=8.0, value=2.0, label='2nd Scale')\n            s2_restart = gr.Slider(minimum=0, maximum=1.0, value=0.75, label='2nd Restart step')\n        with gr.Row():\n            s3_enable = gr.Checkbox(value=False, label='3rd Stage')\n            s3_scale = gr.Slider(minimum=1, maximum=8.0, value=3.0, label='3rd Scale')\n            s3_restart = gr.Slider(minimum=0, maximum=1.0, value=0.75, label='3rd Restart step')\n        with gr.Row():\n            s4_enable = gr.Checkbox(value=False, label='4th Stage')\n            s4_scale = gr.Slider(minimum=1, maximum=8.0, value=4.0, label='4th Scale')\n            s4_restart = gr.Slider(minimum=0, maximum=1.0, value=0.75, label='4th Restart step')\n        return [cosine_scale, override_sampler, cosine_scale_bg, dilate_tau, s1_enable, s1_scale, s1_restart, s2_enable, s2_scale, s2_restart, s3_enable, s3_scale, s3_restart, s4_enable, s4_scale, s4_restart]\n\n    def run(self, p: processing.StableDiffusionProcessing, cosine_scale, override_sampler, cosine_scale_bg, dilate_tau, s1_enable, s1_scale, s1_restart, s2_enable, s2_scale, s2_restart, s3_enable, s3_scale, s3_restart, s4_enable, s4_scale, s4_restart): # pylint: disable=arguments-differ\n        supported_model_list = ['sdxl']\n        if shared.sd_model_type not in supported_model_list:\n            shared.log.warning(f'FreeScale: class={shared.sd_model.__class__.__name__} model={shared.sd_model_type} required={supported_model_list}')\n            return None\n\n        if self.is_img2img:\n            if p.init_images is None or len(p.init_images) == 0:\n                shared.log.warning('FreeScale: missing input image')\n                return None\n\n        from scripts.freescale import StableDiffusionXLFreeScale, StableDiffusionXLFreeScaleImg2Img # pylint: disable=no-name-in-module\n        self.orig_pipe = shared.sd_model\n        self.orig_slice = shared.opts.diffusers_vae_slicing\n        self.orig_tile = shared.opts.diffusers_vae_tiling\n\n        def scale(x):\n            if (p.width == 0 or p.height == 0) and p.init_images is not None:\n                p.width, p.height = p.init_images[0].width, p.init_images[0].height\n            resolution = [int(8 * p.width * x // 8), int(8 * p.height * x // 8)]\n            return resolution\n\n        scales = []\n        resolutions_list = []\n        restart_steps = []\n        if s1_enable:\n            scales.append(s1_scale)\n            resolutions_list.append(scale(s1_scale))\n            restart_steps.append(int(p.steps * s1_restart))\n        if s2_enable and s2_scale > s1_scale:\n            scales.append(s2_scale)\n            resolutions_list.append(scale(s2_scale))\n            restart_steps.append(int(p.steps * s2_restart))\n        if s3_enable and s3_scale > s2_scale:\n            scales.append(s3_scale)\n            resolutions_list.append(scale(s3_scale))\n            restart_steps.append(int(p.steps * s3_restart))\n        if s4_enable and s4_scale > s3_scale:\n            scales.append(s4_scale)\n            resolutions_list.append(scale(s4_scale))\n            restart_steps.append(int(p.steps * s4_restart))\n\n        p.task_args['resolutions_list'] = resolutions_list\n        p.task_args['cosine_scale'] = cosine_scale\n        p.task_args['restart_steps'] = [min(max(1, step), p.steps-1) for step in restart_steps]\n        if self.is_img2img:\n            p.task_args['cosine_scale_bg'] = cosine_scale_bg\n            p.task_args['dilate_tau'] = dilate_tau\n            p.task_args['img_path'] = p.init_images[0]\n            p.init_images = None\n        if override_sampler:\n            p.sampler_name = 'Euler a'\n\n        if p.width < 1024 or p.height < 1024:\n            shared.log.error(f'FreeScale: width={p.width} height={p.height} minimum=1024')\n            return None\n\n        if not self.is_img2img:\n            shared.sd_model = sd_models.switch_pipe(StableDiffusionXLFreeScale, shared.sd_model)\n        else:\n            shared.sd_model = sd_models.switch_pipe(StableDiffusionXLFreeScaleImg2Img, shared.sd_model)\n        shared.sd_model.enable_vae_slicing()\n        shared.sd_model.enable_vae_tiling()\n\n        shared.log.info(f'FreeScale: mode={\"txt\" if not self.is_img2img else \"img\"} cosine={cosine_scale} bg={cosine_scale_bg} tau={dilate_tau} scales={scales} resolutions={resolutions_list} steps={restart_steps} sampler={p.sampler_name}')\n        resolutions = ','.join([f'{x[0]}x{x[1]}' for x in resolutions_list])\n        steps = ','.join([str(x) for x in restart_steps])\n        p.extra_generation_params[\"FreeScale\"] = f'cosine {cosine_scale} resolutions {resolutions} steps {steps}'\n\n    def after(self, p: processing.StableDiffusionProcessing, processed: processing.Processed, *args): # pylint: disable=arguments-differ, unused-argument\n        if self.orig_pipe is None:\n            return processed\n        # restore pipeline\n        if shared.sd_model_type == \"sdxl\":\n            shared.sd_model = self.orig_pipe\n        self.orig_pipe = None\n        if not self.orig_slice:\n            shared.sd_model.disable_vae_slicing()\n        if not self.orig_tile:\n            shared.sd_model.disable_vae_tiling()\n        return processed\n"
  },
  {
    "path": "scripts/hdr.py",
    "content": "import os\nimport cv2\nimport numpy as np\nimport gradio as gr\nfrom PIL import Image\nfrom modules import images, processing, shared, scripts_manager\nfrom modules.processing import get_processed\nfrom modules.shared import opts, state\n\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return \"HDR: High Dynamic Range\"\n\n    def show(self, is_img2img):\n        return True\n\n    def ui(self, is_img2img):\n        with gr.Row():\n            gr.HTML(\"<span>&nbsp HDR: High Dynamic Range</span><br>\")\n        with gr.Row():\n            save_hdr = gr.Checkbox(label=\"Save HDR image\", value=True)\n            hdr_range = gr.Slider(minimum=0, maximum=1, step=0.05, value=0.65, label='HDR range')\n        with gr.Row():\n            is_tonemap = gr.Checkbox(label=\"Enable tonemap\", value=False)\n            gamma = gr.Slider(minimum=0, maximum=2, step=0.05, value=1.0, label='Gamma', visible=False)\n        with gr.Row():\n            scale = gr.Slider(minimum=0, maximum=2, step=0.05, value=1.0, label='Scale', visible=False)\n            saturation = gr.Slider(minimum=0, maximum=2, step=0.05, value=1.0, label='Saturation', visible=False)\n        is_tonemap.change(fn=self.change_tonemap, inputs=[is_tonemap], outputs=[gamma, scale, saturation])\n        return [hdr_range, save_hdr, is_tonemap, gamma, scale, saturation]\n\n    def change_tonemap(self, is_tonemap):\n        return [gr.update(visible=is_tonemap), gr.update(visible=is_tonemap), gr.update(visible=is_tonemap)]\n\n    def merge(self, imgs: list, is_tonemap: bool, gamma, scale, saturation):\n        shared.log.info(f'HDR: merge images={len(imgs)} tonemap={is_tonemap} sgamma={gamma} scale={scale} saturation={saturation}')\n        imgs_np = [np.asarray(img).astype(np.uint8) for img in imgs]\n\n        align = cv2.createAlignMTB()\n        align.process(imgs_np, imgs_np)\n\n        # cv2.createMergeRobertson()\n        # cv2.createMergeDebevec()\n        merge = cv2.createMergeMertens()\n        hdr = merge.process(imgs_np)\n\n        # cv2.createTonemapDrago()\n        # cv2.createTonemapReinhard()\n        if is_tonemap:\n            tonemap = cv2.createTonemapMantiuk(gamma, scale, saturation)\n            hdr = tonemap.process(hdr)\n\n        ldr = np.clip(hdr * 255, 0, 255).astype(np.uint8)\n        hdr = np.clip(hdr * 65535, 0, 65535).astype(np.uint16)\n        hdr = cv2.cvtColor(hdr, cv2.COLOR_BGR2RGB)\n        return hdr, ldr\n\n    def run(self, p, hdr_range, save_hdr, is_tonemap, gamma, scale, saturation): # pylint: disable=arguments-differ\n        if shared.sd_model_type != 'sd' and shared.sd_model_type != 'sdxl':\n            shared.log.error(f'HDR: incorrect base model: {shared.sd_model.__class__.__name__}')\n            return None\n        p.extra_generation_params = {\n            \"HDR range\": hdr_range,\n        }\n        shared.log.info(f'HDR: range={hdr_range}')\n        processing.fix_seed(p)\n        imgs = []\n        info = ''\n        for i in range(3):\n            p.n_iter = 1\n            p.batch_size = 1\n            p.do_not_save_grid = True\n            p.hdr_brightness = (i - 1) * (2.0 * hdr_range)\n            p.hdr_mode = 0\n            p.task_args['seed'] = p.seed\n            processed: processing.Processed = processing.process_images(p)\n            imgs += processed.images\n            if i == 1:\n                info = processed.info\n            if state.interrupted:\n                break\n\n        if len(imgs) > 1:\n            hdr, ldr = self.merge(imgs, is_tonemap, gamma, scale, saturation)\n            img = Image.fromarray(ldr)\n            if save_hdr:\n                saved_fn, _txt, _exif = images.save_image(img, shared.opts.outdir_save, \"\", p.seed, p.prompt, opts.grid_format, info=processed.info, p=p)\n                fn = os.path.splitext(saved_fn)[0] + '-hdr.png'\n                # cv2.imwrite(fn, hdr, [cv2.IMWRITE_PNG_COMPRESSION, 6, cv2.IMWRITE_PNG_STRATEGY, cv2.IMWRITE_PNG_STRATEGY_HUFFMAN_ONLY, cv2.IMWRITE_HDR_COMPRESSION, cv2.IMWRITE_HDR_COMPRESSION_RLE])\n                cv2.imwrite(fn, hdr)\n                shared.log.debug(f'Save: image=\"{fn}\" type=PNG mode=HDR channels=16 size={os.path.getsize(fn)}')\n            # if opts.grid_save:\n            #    images.save_image(grid, p.outpath_grids, \"grid\", p.seed, p.prompt, opts.grid_format, info=processed.info, grid=True, p=p)\n            grid = [images.image_grid(imgs, rows=1)] if opts.return_grid else []\n            imgs = [img] + grid\n\n        processed = get_processed(p, images_list=imgs, seed=p.seed, info=info)\n        return processed\n"
  },
  {
    "path": "scripts/image2video.py",
    "content": "import torch\nimport gradio as gr\nimport diffusers\nfrom modules import scripts_manager, processing, shared, images, sd_models, devices\n\n\nMODELS = [\n    { 'name': 'None', 'info': '' },\n    # { 'name': 'PIA', 'url': 'openmmlab/PIA-condition-adapter', 'info': '<a href=\"https://huggingface.co/docs/diffusers/main/en/api/pipelines/pia\" target=\"_blank\">Open MMLab Personalized Image Animator</a>' },\n    { 'name': 'VGen', 'url': 'ali-vilab/i2vgen-xl', 'info': '<a href=\"https://huggingface.co/ali-vilab/i2vgen-xl\" target=\"_blank\">Alibaba VGen</a>' },\n]\n\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return 'Video: VGen Image-to-Video'\n\n    def show(self, is_img2img):\n        return is_img2img\n        # return False\n\n    # return signature is array of gradio components\n    def ui(self, is_img2img):\n        def model_change(model_name):\n            model = next(m for m in MODELS if m['name'] == model_name)\n            return gr.update(value=model['info']), gr.update(visible=model_name == 'PIA'), gr.update(visible=model_name == 'VGen')\n\n        with gr.Row():\n            model_name = gr.Dropdown(label='Model', value='None', choices=[m['name'] for m in MODELS])\n        with gr.Row():\n            model_info = gr.HTML()\n        with gr.Row():\n            num_frames = gr.Slider(label='Frames', minimum=0, maximum=50, step=1, value=16)\n        with gr.Accordion('FreeInit', open=False, visible=False) as fi_accordion:\n            with gr.Row():\n                fi_method = gr.Dropdown(label='Method', choices=['none', 'butterworth', 'ideal', 'gaussian'], value='none')\n            with gr.Row():\n                # fi_fast = gr.Checkbox(label='Fast sampling', value=False)\n                fi_iters = gr.Slider(label='Iterations', minimum=1, maximum=10, step=1, value=3)\n                fi_order = gr.Slider(label='Order', minimum=1, maximum=10, step=1, value=4)\n            with gr.Row():\n                fi_spatial = gr.Slider(label='Spatial frequency', minimum=0.0, maximum=1.0, step=0.05, value=0.25)\n                fi_temporal = gr.Slider(label='Temporal frequency', minimum=0.0, maximum=1.0, step=0.05, value=0.25)\n        with gr.Accordion('VGen params', open=True, visible=False) as vgen_accordion:\n            with gr.Row():\n                vg_chunks = gr.Slider(label='Decode chunks', minimum=0.1, maximum=1.0, step=0.1, value=0.5)\n                vg_fps = gr.Slider(label='Change rate', minimum=0.1, maximum=1.0, step=0.1, value=0.5)\n        with gr.Row():\n            from modules.ui_sections import create_video_inputs\n            video_type, duration, gif_loop, mp4_pad, mp4_interpolate = create_video_inputs(tab='img2img' if is_img2img else 'txt2img')\n        model_name.change(fn=model_change, inputs=[model_name], outputs=[model_info, fi_accordion, vgen_accordion])\n        return [model_name, num_frames, video_type, duration, gif_loop, mp4_pad, mp4_interpolate, fi_method, fi_iters, fi_order, fi_spatial, fi_temporal, vg_chunks, vg_fps]\n\n    def run(self, p: processing.StableDiffusionProcessing, model_name, num_frames, video_type, duration, gif_loop, mp4_pad, mp4_interpolate, fi_method, fi_iters, fi_order, fi_spatial, fi_temporal, vg_chunks, vg_fps): # pylint: disable=arguments-differ, unused-argument\n        if model_name == 'None':\n            return None\n        if p.init_images is None or len(p.init_images) == 0:\n            return None\n        model = [m for m in MODELS if m['name'] == model_name][0]\n        repo_id = model['url']\n        shared.log.debug(f'Image2Video: model={model_name} frames={num_frames}, video={video_type} duration={duration} loop={gif_loop} pad={mp4_pad} interpolate={mp4_interpolate}')\n        p.ops.append('video')\n        p.do_not_save_grid = True\n        orig_pipeline = shared.sd_model\n\n        if model_name == 'PIA':\n            if shared.sd_model_type != 'sd':\n                shared.log.error('Image2Video PIA: base model must be SD15')\n                return None\n            shared.log.info(f'Image2Video PIA load: model={repo_id}')\n            motion_adapter = diffusers.MotionAdapter.from_pretrained(repo_id)\n            sd_models.move_model(motion_adapter, devices.device)\n            shared.sd_model = sd_models.switch_pipe(diffusers.PIAPipeline, shared.sd_model, { 'motion_adapter': motion_adapter })\n            sd_models.move_model(shared.sd_model, devices.device, force=True) # move pipeline to device\n            if num_frames > 0:\n                p.task_args['num_frames'] = num_frames\n                p.task_args['image'] = p.init_images[0]\n            if hasattr(shared.sd_model, 'enable_free_init') and fi_method != 'none':\n                shared.sd_model.enable_free_init(\n                    num_iters=fi_iters,\n                    use_fast_sampling=False,\n                    method=fi_method,\n                    order=fi_order,\n                    spatial_stop_frequency=fi_spatial,\n                    temporal_stop_frequency=fi_temporal,\n                )\n            shared.log.debug(f'Image2Video PIA: args={p.task_args}')\n            processed = processing.process_images(p)\n            shared.sd_model.motion_adapter = None\n\n        processed = None\n        if model_name == 'VGen':\n            if not isinstance(shared.sd_model, diffusers.I2VGenXLPipeline):\n                shared.log.info(f'Image2Video VGen load: model={repo_id}')\n                pipe = diffusers.I2VGenXLPipeline.from_pretrained(repo_id, torch_dtype=devices.dtype, cache_dir=shared.opts.diffusers_dir)\n                sd_models.copy_diffuser_options(pipe, shared.sd_model)\n                sd_models.set_diffuser_options(pipe)\n                shared.sd_model = pipe\n                sd_models.move_model(shared.sd_model, devices.device) # move pipeline to device\n                shared.sd_model.to(dtype=torch.float32)\n            if num_frames > 0:\n                p.task_args['image'] = p.init_images[0]\n                p.task_args['num_frames'] = num_frames\n                p.task_args['target_fps'] = max(1, int(num_frames * vg_fps))\n                p.task_args['decode_chunk_size'] = max(1, int(num_frames * vg_chunks))\n                p.task_args['output_type'] = 'pil'\n            shared.log.debug(f'Image2Video VGen: args={p.task_args}')\n            processed = processing.process_images(p)\n\n        shared.sd_model = orig_pipeline\n        if video_type != 'None' and processed is not None:\n            images.save_video(p, filename=None, images=processed.images, video_type=video_type, duration=duration, loop=gif_loop, pad=mp4_pad, interpolate=mp4_interpolate)\n        return processed\n"
  },
  {
    "path": "scripts/infiniteyou/__init__.py",
    "content": "from .pipeline_flux_infusenet import FluxInfuseNetPipeline\nfrom .pipeline_infu_flux import InfUFluxPipeline\n"
  },
  {
    "path": "scripts/infiniteyou/pipeline_flux_infusenet.py",
    "content": "# Copyright (c) 2025 Bytedance Ltd. and/or its affiliates.\n# Copyright (c) 2024 Black Forest Labs, The HuggingFace Team and The InstantX Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport inspect\nfrom typing import Any, Callable, Dict, List, Optional, Union\n\nimport numpy as np\nimport torch\nfrom diffusers import FluxControlNetPipeline\nfrom diffusers.models.controlnet_flux import FluxControlNetModel, FluxMultiControlNetModel\nfrom diffusers.image_processor import PipelineImageInput\nfrom diffusers.pipelines.flux.pipeline_output import FluxPipelineOutput\nfrom diffusers.utils import is_torch_xla_available, logging\n\n\nif is_torch_xla_available():\n    import torch_xla.core.xla_model as xm\n\n    XLA_AVAILABLE = True\nelse:\n    XLA_AVAILABLE = False\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\n# Copied from diffusers.pipelines.flux.pipeline_flux.calculate_shift\ndef calculate_shift(\n    image_seq_len,\n    base_seq_len: int = 256,\n    max_seq_len: int = 4096,\n    base_shift: float = 0.5,\n    max_shift: float = 1.16,\n):\n    m = (max_shift - base_shift) / (max_seq_len - base_seq_len)\n    b = base_shift - m * base_seq_len\n    mu = image_seq_len * m + b\n    return mu\n\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.retrieve_timesteps\ndef retrieve_timesteps(\n    scheduler,\n    num_inference_steps: Optional[int] = None,\n    device: Optional[Union[str, torch.device]] = None,\n    timesteps: Optional[List[int]] = None,\n    sigmas: Optional[List[float]] = None,\n    **kwargs,\n):\n    r\"\"\"\n    Calls the scheduler's `set_timesteps` method and retrieves timesteps from the scheduler after the call. Handles\n    custom timesteps. Any kwargs will be supplied to `scheduler.set_timesteps`.\n\n    Args:\n        scheduler (`SchedulerMixin`):\n            The scheduler to get timesteps from.\n        num_inference_steps (`int`):\n            The number of diffusion steps used when generating samples with a pre-trained model. If used, `timesteps`\n            must be `None`.\n        device (`str` or `torch.device`, *optional*):\n            The device to which the timesteps should be moved to. If `None`, the timesteps are not moved.\n        timesteps (`List[int]`, *optional*):\n            Custom timesteps used to override the timestep spacing strategy of the scheduler. If `timesteps` is passed,\n            `num_inference_steps` and `sigmas` must be `None`.\n        sigmas (`List[float]`, *optional*):\n            Custom sigmas used to override the timestep spacing strategy of the scheduler. If `sigmas` is passed,\n            `num_inference_steps` and `timesteps` must be `None`.\n\n    Returns:\n        `Tuple[torch.Tensor, int]`: A tuple where the first element is the timestep schedule from the scheduler and the\n        second element is the number of inference steps.\n    \"\"\"\n    if timesteps is not None and sigmas is not None:\n        raise ValueError(\"Only one of `timesteps` or `sigmas` can be passed. Please choose one to set custom values\")\n    if timesteps is not None:\n        accepts_timesteps = \"timesteps\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n        if not accepts_timesteps:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" timestep schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(timesteps=timesteps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    elif sigmas is not None:\n        accept_sigmas = \"sigmas\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n        if not accept_sigmas:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" sigmas schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(sigmas=sigmas, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    else:\n        scheduler.set_timesteps(num_inference_steps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n    return timesteps, num_inference_steps\n\n\nclass FluxInfuseNetPipeline(FluxControlNetPipeline):\n    @torch.no_grad()\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        prompt_2: Optional[Union[str, List[str]]] = None,\n        height: Optional[int] = None,\n        width: Optional[int] = None,\n        num_inference_steps: int = 28,\n        timesteps: List[int] = None,\n        guidance_scale: float = 3.5,\n        id_image: PipelineImageInput = None,\n        controlnet_guidance_scale: float = 1.0,\n        control_guidance_start: Union[float, List[float]] = 0.0,\n        control_guidance_end: Union[float, List[float]] = 1.0,\n        control_image: PipelineImageInput = None,\n        control_mode: Optional[Union[int, List[int]]] = None,\n        controlnet_conditioning_scale: Union[float, List[float]] = 1.0,\n        num_images_per_prompt: Optional[int] = 1,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.FloatTensor] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        joint_attention_kwargs: Optional[Dict[str, Any]] = None,\n        callback_on_step_end: Optional[Callable[[int, int, Dict], None]] = None,\n        callback_on_step_end_tensor_inputs: List[str] = [\"latents\"],\n        max_sequence_length: int = 512,\n\n        # ID-specific parameters\n        controlnet_prompt_embeds: Optional[torch.FloatTensor] = None,\n\n        # True CFG parameters\n        true_guidance_scale: float = 1.0,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        negative_prompt_2: Optional[Union[str, List[str]]] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n    ):\n        r\"\"\"\n        Function invoked when calling the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide the image generation. If not defined, one has to pass `prompt_embeds`.\n                instead.\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                will be used instead\n            height (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The height in pixels of the generated image. This is set to 1024 by default for the best results.\n            width (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The width in pixels of the generated image. This is set to 1024 by default for the best results.\n            num_inference_steps (`int`, *optional*, defaults to 50):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            timesteps (`List[int]`, *optional*):\n                Custom timesteps to use for the denoising process with schedulers which support a `timesteps` argument\n                in their `set_timesteps` method. If not defined, the default behavior when `num_inference_steps` is\n                passed will be used. Must be in descending order.\n            guidance_scale (`float`, *optional*, defaults to 7.0):\n                Guidance scale as defined in [Classifier-Free Diffusion Guidance](https://arxiv.org/abs/2207.12598).\n                `guidance_scale` is defined as `w` of equation 2. of [Imagen\n                Paper](https://arxiv.org/pdf/2205.11487.pdf). Guidance scale is enabled by setting `guidance_scale >\n                1`. Higher guidance scale encourages to generate images that are closely linked to the text `prompt`,\n                usually at the expense of lower image quality.\n            controlnet_guidance_scale (`float`, *optional*, defaults to 7.0):\n                Guidance scale as defined in [Classifier-Free Diffusion Guidance](https://arxiv.org/abs/2207.12598).\n                `controlnet_guidance_scale` is defined as `w` of equation 2. of [Imagen\n                Paper](https://arxiv.org/pdf/2205.11487.pdf). Guidance scale is enabled by setting `guidance_scale >\n                1`. Higher guidance scale encourages to generate images that are closely linked to the text `prompt`,\n                usually at the expense of lower image quality.\n            control_guidance_start (`float` or `List[float]`, *optional*, defaults to 0.0):\n                The percentage of total steps at which the ControlNet starts applying.\n            control_guidance_end (`float` or `List[float]`, *optional*, defaults to 1.0):\n                The percentage of total steps at which the ControlNet stops applying.\n            control_image (`torch.Tensor`, `PIL.Image.Image`, `np.ndarray`, `List[torch.Tensor]`, `List[PIL.Image.Image]`, `List[np.ndarray]`,:\n                    `List[List[torch.Tensor]]`, `List[List[np.ndarray]]` or `List[List[PIL.Image.Image]]`):\n                The ControlNet input condition to provide guidance to the `unet` for generation. If the type is\n                specified as `torch.Tensor`, it is passed to ControlNet as is. `PIL.Image.Image` can also be accepted\n                as an image. The dimensions of the output image defaults to `image`'s dimensions. If height and/or\n                width are passed, `image` is resized accordingly. If multiple ControlNets are specified in `init`,\n                images must be passed as a list such that each element of the list can be correctly batched for input\n                to a single ControlNet.\n            controlnet_conditioning_scale (`float` or `List[float]`, *optional*, defaults to 1.0):\n                The outputs of the ControlNet are multiplied by `controlnet_conditioning_scale` before they are added\n                to the residual in the original `unet`. If multiple ControlNets are specified in `init`, you can set\n                the corresponding scale as a list.\n            control_mode (`int` or `List[int]`,, *optional*, defaults to None):\n                The control mode when applying ControlNet-Union.\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                One or a list of [torch generator(s)](https://pytorch.org/docs/stable/generated/torch.Generator.html)\n                to make generation deterministic.\n            latents (`torch.FloatTensor`, *optional*):\n                Pre-generated noisy latents, sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor will ge generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generate image. Choose between\n                [PIL](https://pillow.readthedocs.io/en/stable/): `PIL.Image.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.flux.FluxPipelineOutput`] instead of a plain tuple.\n            joint_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            callback_on_step_end (`Callable`, *optional*):\n                A function that calls at the end of each denoising steps during the inference. The function is called\n                with the following arguments: `callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int,\n                callback_kwargs: Dict)`. `callback_kwargs` will include a list of all tensors as specified by\n                `callback_on_step_end_tensor_inputs`.\n            callback_on_step_end_tensor_inputs (`List`, *optional*):\n                The list of tensor inputs for the `callback_on_step_end` function. The tensors specified in the list\n                will be passed as `callback_kwargs` argument. You will only be able to include variables listed in the\n                `._callback_tensor_inputs` attribute of your pipeline class.\n            max_sequence_length (`int` defaults to 512): Maximum sequence length to use with the `prompt`.\n            controlnet_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated embeddings for the InfuseNet. Can be used to easily tweak inputs, *e.g.* image embeddings.\n                If not provided, embeddings will be generated from `prompt` or `prompt_embeds` input arguments.\n            true_guidance_scale (`float`, *optional*, defaults to 1.0):\n                True CFG scale as defined in [Classifier-Free Diffusion Guidance]((https://arxiv.org/abs/2207.12598).\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The negative prompt or negative prompts to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds`. instead.\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The negative prompt or negative prompts to be sent to `tokenizer_2` and `text_encoder_2`. If not defined,\n                `negative_prompt` is will be used instead.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative text embeddings will be generated from `negative_prompt` input\n                argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative pooled text embeddings will be generated from\n                `negative_prompt` input argument.\n\n        Examples:\n\n        Returns:\n            [`~pipelines.flux.FluxPipelineOutput`] or `tuple`: [`~pipelines.flux.FluxPipelineOutput`] if `return_dict`\n            is True, otherwise a `tuple`. When returning a tuple, the first element is a list with the generated\n            images.\n        \"\"\"\n\n        height = height or self.default_sample_size * self.vae_scale_factor\n        width = width or self.default_sample_size * self.vae_scale_factor\n\n        if not isinstance(control_guidance_start, list) and isinstance(control_guidance_end, list):\n            control_guidance_start = len(control_guidance_end) * [control_guidance_start]\n        elif not isinstance(control_guidance_end, list) and isinstance(control_guidance_start, list):\n            control_guidance_end = len(control_guidance_start) * [control_guidance_end]\n        elif not isinstance(control_guidance_start, list) and not isinstance(control_guidance_end, list):\n            mult = len(self.controlnet.nets) if isinstance(self.controlnet, FluxMultiControlNetModel) else 1\n            control_guidance_start, control_guidance_end = (\n                mult * [control_guidance_start],\n                mult * [control_guidance_end],\n            )\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            prompt_2,\n            height,\n            width,\n            prompt_embeds=prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            callback_on_step_end_tensor_inputs=callback_on_step_end_tensor_inputs,\n            max_sequence_length=max_sequence_length,\n        )\n\n        self._guidance_scale = guidance_scale\n        self._controlnet_guidance_scale = controlnet_guidance_scale\n        self._true_guidance_scale = true_guidance_scale\n        self._joint_attention_kwargs = joint_attention_kwargs\n        self._interrupt = False\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        device = self._execution_device\n        dtype = self.transformer.dtype\n\n        lora_scale = (\n            self.joint_attention_kwargs.get(\"scale\", None) if self.joint_attention_kwargs is not None else None\n        )\n        (\n            prompt_embeds,\n            pooled_prompt_embeds,\n            text_ids,\n        ) = self.encode_prompt(\n            prompt=prompt,\n            prompt_2=prompt_2,\n            prompt_embeds=prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            device=device,\n            num_images_per_prompt=num_images_per_prompt,\n            max_sequence_length=max_sequence_length,\n            lora_scale=lora_scale,\n        )\n        if negative_prompt is not None or (negative_prompt_embeds is not None and negative_pooled_prompt_embeds is not None):\n            (\n                negative_prompt_embeds,\n                negative_pooled_prompt_embeds,\n                negative_text_ids,\n            ) = self.encode_prompt(\n                prompt=negative_prompt,\n                prompt_2=negative_prompt_2,\n                prompt_embeds=negative_prompt_embeds,\n                pooled_prompt_embeds=negative_pooled_prompt_embeds,\n                device=device,\n                num_images_per_prompt=num_images_per_prompt,\n                max_sequence_length=max_sequence_length,\n                lora_scale=lora_scale,\n            )\n\n        if controlnet_prompt_embeds is None:\n            controlnet_prompt_embeds = prompt_embeds\n        (\n            controlnet_prompt_embeds,\n            pooled_prompt_embeds,\n            controlnet_text_ids,\n        ) = self.encode_prompt(\n            prompt=prompt,\n            prompt_2=prompt_2,\n            prompt_embeds=controlnet_prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            device=device,\n            num_images_per_prompt=num_images_per_prompt,\n            max_sequence_length=max_sequence_length,\n            lora_scale=lora_scale,\n        )\n\n        # 3. Prepare control image\n        num_channels_latents = self.transformer.config.in_channels // 4\n        if isinstance(self.controlnet, FluxControlNetModel) or True:\n            control_image = self.prepare_image(\n                image=control_image,\n                width=width,\n                height=height,\n                batch_size=batch_size * num_images_per_prompt,\n                num_images_per_prompt=num_images_per_prompt,\n                device=device,\n                dtype=self.vae.dtype,\n            )\n            height, width = control_image.shape[-2:]\n\n            # xlab controlnet has a input_hint_block and instantx controlnet does not\n            controlnet_blocks_repeat = False if self.controlnet.input_hint_block is None else True\n            if self.controlnet.input_hint_block is None:\n                # vae encode\n                control_image = self.vae.encode(control_image).latent_dist.sample()\n                control_image = (control_image - self.vae.config.shift_factor) * self.vae.config.scaling_factor\n\n                # pack\n                height_control_image, width_control_image = control_image.shape[2:]\n                control_image = self._pack_latents(\n                    control_image,\n                    batch_size * num_images_per_prompt,\n                    num_channels_latents,\n                    height_control_image,\n                    width_control_image,\n                )\n\n            # Here we ensure that `control_mode` has the same length as the control_image.\n            if control_mode is not None:\n                if not isinstance(control_mode, int):\n                    raise ValueError(\" For `FluxControlNet`, `control_mode` should be an `int` or `None`\")\n                control_mode = torch.tensor(control_mode).to(device, dtype=torch.long)\n                control_mode = control_mode.view(-1, 1).expand(control_image.shape[0], 1)\n\n        elif isinstance(self.controlnet, FluxMultiControlNetModel):\n            control_images = []\n            # xlab controlnet has a input_hint_block and instantx controlnet does not\n            controlnet_blocks_repeat = False if self.controlnet.nets[0].input_hint_block is None else True\n            for _i, control_image_ in enumerate(control_image):\n                control_image_ = self.prepare_image(\n                    image=control_image_,\n                    width=width,\n                    height=height,\n                    batch_size=batch_size * num_images_per_prompt,\n                    num_images_per_prompt=num_images_per_prompt,\n                    device=device,\n                    dtype=self.vae.dtype,\n                )\n                height, width = control_image_.shape[-2:]\n\n                if self.controlnet.nets[0].input_hint_block is None:\n                    # vae encode\n                    control_image_ = self.vae.encode(control_image_).latent_dist.sample()\n                    control_image_ = (control_image_ - self.vae.config.shift_factor) * self.vae.config.scaling_factor\n\n                    # pack\n                    height_control_image, width_control_image = control_image_.shape[2:]\n                    control_image_ = self._pack_latents(\n                        control_image_,\n                        batch_size * num_images_per_prompt,\n                        num_channels_latents,\n                        height_control_image,\n                        width_control_image,\n                    )\n                control_images.append(control_image_)\n\n            control_image = control_images\n\n            # Here we ensure that `control_mode` has the same length as the control_image.\n            if isinstance(control_mode, list) and len(control_mode) != len(control_image):\n                raise ValueError(\"For Multi-ControlNet, `control_mode` must be a list of the same length as the number of controlnets (control images) specified\")\n            if not isinstance(control_mode, list):\n                control_mode = [control_mode] * len(control_image)\n            # set control mode\n            control_modes = []\n            for cmode in control_mode:\n                if cmode is None:\n                    cmode = -1\n                control_mode = torch.tensor(cmode).expand(control_images[0].shape[0]).to(device, dtype=torch.long)\n                control_modes.append(control_mode)\n            control_mode = control_modes\n\n        # 4. Prepare latent variables\n        num_channels_latents = self.transformer.config.in_channels // 4\n        latents, latent_image_ids = self.prepare_latents(\n            batch_size * num_images_per_prompt,\n            num_channels_latents,\n            height,\n            width,\n            prompt_embeds.dtype,\n            device,\n            generator,\n            latents,\n        )\n\n        # 5. Prepare timesteps\n        sigmas = np.linspace(1.0, 1 / num_inference_steps, num_inference_steps)\n        image_seq_len = latents.shape[1]\n        mu = calculate_shift(\n            image_seq_len,\n            self.scheduler.config.base_image_seq_len,\n            self.scheduler.config.max_image_seq_len,\n            self.scheduler.config.base_shift,\n            self.scheduler.config.max_shift,\n        )\n        timesteps, num_inference_steps = retrieve_timesteps(\n            self.scheduler,\n            num_inference_steps,\n            device,\n            timesteps,\n            sigmas,\n            mu=mu,\n        )\n\n        num_warmup_steps = max(len(timesteps) - num_inference_steps * self.scheduler.order, 0)\n        self._num_timesteps = len(timesteps)\n\n        # 6. Create tensor stating which controlnets to keep\n        controlnet_keep = []\n        for i in range(len(timesteps)):\n            keeps = [\n                1.0 - float(i / len(timesteps) < s or (i + 1) / len(timesteps) > e)\n                for s, e in zip(control_guidance_start, control_guidance_end)\n            ]\n            controlnet_keep.append(keeps[0] if isinstance(self.controlnet, FluxControlNetModel) else keeps)\n\n        # 7. Denoising loop\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                if self.interrupt:\n                    continue\n\n                # broadcast to batch dimension in a way that's compatible with ONNX/Core ML\n                timestep = t.expand(latents.shape[0]).to(latents.dtype)\n\n                if isinstance(self.controlnet, FluxMultiControlNetModel):\n                    use_guidance = self.controlnet.nets[0].config.guidance_embeds\n                else:\n                    use_guidance = self.controlnet.config.guidance_embeds\n\n                guidance = torch.tensor([controlnet_guidance_scale], device=device) if use_guidance else None\n                guidance = guidance.expand(latents.shape[0]) if guidance is not None else None\n\n                if isinstance(controlnet_keep[i], list):\n                    if not isinstance(controlnet_conditioning_scale, list):\n                        controlnet_conditioning_scale = len(controlnet_keep) * [controlnet_conditioning_scale]\n                    cond_scale = [c * s for c, s in zip(controlnet_conditioning_scale, controlnet_keep[i])]\n                    controlnet_conditioning_scale = controlnet_conditioning_scale[0]\n                else:\n                    controlnet_cond_scale = controlnet_conditioning_scale\n                    if isinstance(controlnet_cond_scale, list):\n                        controlnet_cond_scale = controlnet_cond_scale[0]\n                    cond_scale = controlnet_cond_scale * controlnet_keep[i]\n\n                # controlnet\n                controlnet_block_samples, controlnet_single_block_samples = self.controlnet(\n                    hidden_states=latents,\n                    controlnet_cond=control_image,\n                    controlnet_mode=control_mode,\n                    conditioning_scale=cond_scale[0],\n                    timestep=timestep / 1000,\n                    guidance=guidance,\n                    pooled_projections=pooled_prompt_embeds,\n                    encoder_hidden_states=controlnet_prompt_embeds,\n                    txt_ids=controlnet_text_ids,\n                    img_ids=latent_image_ids,\n                    joint_attention_kwargs=self.joint_attention_kwargs,\n                    return_dict=False,\n                )\n\n                guidance = (\n                    torch.tensor([guidance_scale], device=device) if self.transformer.config.guidance_embeds else None\n                )\n                guidance = guidance.expand(latents.shape[0]) if guidance is not None else None\n\n                noise_pred = self.transformer(\n                    hidden_states=latents,\n                    timestep=timestep / 1000,\n                    guidance=guidance,\n                    pooled_projections=pooled_prompt_embeds,\n                    encoder_hidden_states=prompt_embeds,\n                    controlnet_block_samples=controlnet_block_samples,\n                    controlnet_single_block_samples=controlnet_single_block_samples,\n                    txt_ids=text_ids,\n                    img_ids=latent_image_ids,\n                    joint_attention_kwargs=self.joint_attention_kwargs,\n                    return_dict=False,\n                    controlnet_blocks_repeat=controlnet_blocks_repeat,\n                )[0]\n\n                # perform true CFG\n                if negative_prompt_embeds is not None and negative_pooled_prompt_embeds is not None and negative_text_ids is not None:\n                    noise_pred_uncond = self.transformer(\n                        hidden_states=latents,\n                        timestep=timestep / 1000,\n                        guidance=guidance,\n                        pooled_projections=negative_pooled_prompt_embeds,\n                        encoder_hidden_states=negative_prompt_embeds,\n                        controlnet_block_samples=None,\n                        controlnet_single_block_samples=None,\n                        txt_ids=negative_text_ids,\n                        img_ids=latent_image_ids,\n                        joint_attention_kwargs=self.joint_attention_kwargs,\n                        return_dict=False,\n                        controlnet_blocks_repeat=controlnet_blocks_repeat,\n                    )[0]\n\n                    noise_pred = noise_pred_uncond + true_guidance_scale * (noise_pred - noise_pred_uncond)\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents_dtype = latents.dtype\n                latents = self.scheduler.step(noise_pred, t, latents, return_dict=False)[0]\n\n                if latents.dtype != latents_dtype:\n                    if torch.backends.mps.is_available():\n                        # some platforms (eg. apple mps) misbehave due to a pytorch bug: https://github.com/pytorch/pytorch/pull/99272\n                        latents = latents.to(latents_dtype)\n\n                if callback_on_step_end is not None:\n                    callback_kwargs = {}\n                    for k in callback_on_step_end_tensor_inputs:\n                        callback_kwargs[k] = locals()[k]\n                    callback_outputs = callback_on_step_end(self, i, t, callback_kwargs)\n\n                    latents = callback_outputs.pop(\"latents\", latents)\n                    prompt_embeds = callback_outputs.pop(\"prompt_embeds\", prompt_embeds)\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n\n                if XLA_AVAILABLE:\n                    xm.mark_step()\n\n        if output_type == \"latent\":\n            image = latents\n\n        else:\n            latents = self._unpack_latents(latents, height, width, self.vae_scale_factor)\n            latents = (latents / self.vae.config.scaling_factor) + self.vae.config.shift_factor\n\n            image = self.vae.decode(latents, return_dict=False)[0]\n            image = self.image_processor.postprocess(image, output_type=output_type)\n\n        # Offload all models\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return (image,)\n\n        return FluxPipelineOutput(images=image)\n"
  },
  {
    "path": "scripts/infiniteyou/pipeline_infu_flux.py",
    "content": "# Copyright (c) 2025 Bytedance Ltd. and/or its affiliates. All rights reserved.\n\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n\n#     http://www.apache.org/licenses/LICENSE-2.0\n\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport math\nimport os\nimport random\nfrom typing import Optional\n\nimport cv2\nimport numpy as np\nimport torch\nfrom diffusers.models import FluxControlNetModel\nfrom facexlib.recognition import init_recognition_model\nfrom huggingface_hub import snapshot_download\nfrom insightface.app import FaceAnalysis\nfrom insightface.utils import face_align\nfrom PIL import Image\n\nfrom modules import shared, devices, model_quant\nfrom .pipeline_flux_infusenet import FluxInfuseNetPipeline\nfrom .resampler import Resampler\n\n\ndef seed_everything(seed, deterministic=False):\n    \"\"\"Set random seed.\n\n    Args:\n        seed (int): Seed to be used.\n        deterministic (bool): Whether to set the deterministic option for\n            CUDNN backend, i.e., set `torch.backends.cudnn.deterministic`\n            to True and `torch.backends.cudnn.benchmark` to False.\n            Default: False.\n    \"\"\"\n    random.seed(seed)\n    np.random.seed(seed)\n    torch.manual_seed(seed)\n    torch.cuda.manual_seed(seed)\n    torch.cuda.manual_seed_all(seed)\n    os.environ['PYTHONHASHSEED'] = str(seed)\n    if deterministic:\n        torch.backends.cudnn.deterministic = True\n        torch.backends.cudnn.benchmark = False\n\n\ndef retrieve_latents(\n    encoder_output: torch.Tensor, generator: Optional[torch.Generator] = None, sample_mode: str = \"sample\"\n):\n    if hasattr(encoder_output, \"latent_dist\") and sample_mode == \"sample\":\n        return encoder_output.latent_dist.sample(generator)\n    elif hasattr(encoder_output, \"latent_dist\") and sample_mode == \"argmax\":\n        return encoder_output.latent_dist.mode()\n    elif hasattr(encoder_output, \"latents\"):\n        return encoder_output.latents\n    else:\n        raise AttributeError(\"Could not access latents of provided encoder_output\")\n\n\n# modified from https://github.com/instantX-research/InstantID/blob/main/pipeline_stable_diffusion_xl_instantid.py\ndef draw_kps(image_pil, kps, color_list=[(255,0,0), (0,255,0), (0,0,255), (255,255,0), (255,0,255)]):\n    stickwidth = 4\n    limbSeq = np.array([[0, 2], [1, 2], [3, 2], [4, 2]])\n    kps = np.array(kps)\n\n    w, h = image_pil.size\n    out_img = np.zeros([h, w, 3])\n\n    for i in range(len(limbSeq)):\n        index = limbSeq[i]\n        color = color_list[index[0]]\n\n        x = kps[index][:, 0]\n        y = kps[index][:, 1]\n        length = ((x[0] - x[1]) ** 2 + (y[0] - y[1]) ** 2) ** 0.5\n        angle = math.degrees(math.atan2(y[0] - y[1], x[0] - x[1]))\n        polygon = cv2.ellipse2Poly((int(np.mean(x)), int(np.mean(y))), (int(length / 2), stickwidth), int(angle), 0, 360, 1)\n        out_img = cv2.fillConvexPoly(out_img.copy(), polygon, color)\n    out_img = (out_img * 0.6).astype(np.uint8)\n\n    for idx_kp, kp in enumerate(kps):\n        color = color_list[idx_kp]\n        x, y = kp\n        out_img = cv2.circle(out_img.copy(), (int(x), int(y)), 10, color, -1)\n\n    out_img_pil = Image.fromarray(out_img.astype(np.uint8))\n    return out_img_pil\n\n\ndef extract_arcface_bgr_embedding(in_image, landmark, arcface_model=None, in_settings=None): # pylint: disable=unused-argument\n    kps = landmark\n    arc_face_image = face_align.norm_crop(in_image, landmark=np.array(kps), image_size=112)\n    arc_face_image = torch.from_numpy(arc_face_image).unsqueeze(0).permute(0,3,1,2) / 255.\n    arc_face_image = 2 * arc_face_image - 1\n    arc_face_image = arc_face_image.to(device=devices.device).contiguous()\n    if arcface_model is None:\n        arcface_model = init_recognition_model('arcface', device=devices.device)\n    face_emb = arcface_model(arc_face_image)[0] # [512], normalized\n    return face_emb\n\n\ndef resize_and_pad_image(source_img, target_img_size):\n    # Get original and target sizes\n    source_img_size = source_img.size\n    target_width, target_height = target_img_size\n\n    # Determine the new size based on the shorter side of target_img\n    if target_width <= target_height:\n        new_width = target_width\n        new_height = int(target_width * (source_img_size[1] / source_img_size[0]))\n    else:\n        new_height = target_height\n        new_width = int(target_height * (source_img_size[0] / source_img_size[1]))\n\n    # Resize the source image using LANCZOS interpolation for high quality\n    resized_source_img = source_img.resize((new_width, new_height), Image.Resampling.LANCZOS)\n\n    # Compute padding to center resized image\n    pad_left = (target_width - new_width) // 2\n    pad_top = (target_height - new_height) // 2\n\n    # Create a new image with white background\n    padded_img = Image.new(\"RGB\", target_img_size, (255, 255, 255))\n    padded_img.paste(resized_source_img, (pad_left, pad_top))\n\n    return padded_img\n\n\nclass InfUFluxPipeline:\n    def __init__(\n            self,\n            pipe,\n            image_proj_num_tokens=8,\n            infu_flux_version='v1.0',\n            model_version='aes_stage2',\n        ):\n\n        self.infu_flux_version = infu_flux_version\n        self.model_version = model_version\n        # Load controlnet\n        shared.log.debug(f'InfiniteYou: cls={shared.sd_model.__class__.__name__} loading')\n        local_path = snapshot_download(repo_id='ByteDance/InfiniteYou', cache_dir=shared.opts.hfcache_dir)\n        infiniteyou_path = os.path.join(local_path, f'infu_flux_{infu_flux_version}', model_version)\n        infusenet_path = os.path.join(infiniteyou_path, 'InfuseNetModel')\n        quant_args = model_quant.create_config(module='Control')\n        shared.log.debug(f'InfiniteYou: fn=\"{infusenet_path}\" load infusenet')\n        infusenet = FluxControlNetModel.from_pretrained(\n            infusenet_path,\n            torch_dtype=devices.dtype,\n            **quant_args,\n        )\n        infusenet.offload_never = True\n        # assemble pipeline\n        self.pipe = FluxInfuseNetPipeline(\n                vae=pipe.vae,\n                text_encoder=pipe.text_encoder,\n                text_encoder_2=pipe.text_encoder_2,\n                tokenizer=pipe.tokenizer,\n                tokenizer_2=pipe.tokenizer_2,\n                transformer=pipe.transformer,\n                scheduler=pipe.scheduler,\n                controlnet=infusenet,\n            )\n        del infusenet\n        # Load image proj model\n        num_tokens = image_proj_num_tokens\n        image_emb_dim = 512\n        self.image_proj_model = Resampler(\n            dim=1280,\n            depth=4,\n            dim_head=64,\n            heads=20,\n            num_queries=num_tokens,\n            embedding_dim=image_emb_dim,\n            output_dim=4096,\n            ff_mult=4,\n        )\n        image_proj_model_path = os.path.join(infiniteyou_path, 'image_proj_model.bin')\n        shared.log.debug(f'InfiniteYou: fn=\"{image_proj_model_path}\" load image projection')\n        ipm_state_dict = torch.load(image_proj_model_path, map_location=\"cpu\")\n        self.image_proj_model.load_state_dict(ipm_state_dict['image_proj'])\n        del ipm_state_dict\n        self.image_proj_model.to(device=devices.device, dtype=devices.dtype)\n        self.image_proj_model.eval()\n        # Load face encoder\n        insightface_root_path = os.path.join(local_path, 'supports', 'insightface')\n        shared.log.debug(f'InfiniteYou: fn=\"{insightface_root_path}\" load face encoder')\n        self.app_640 = FaceAnalysis(name='antelopev2', root=insightface_root_path, providers=devices.onnx)\n        self.app_640.prepare(ctx_id=0, det_size=(640, 640))\n        self.app_320 = FaceAnalysis(name='antelopev2', root=insightface_root_path, providers=devices.onnx)\n        self.app_320.prepare(ctx_id=0, det_size=(320, 320))\n        self.app_160 = FaceAnalysis(name='antelopev2', root=insightface_root_path, providers=devices.onnx)\n        self.app_160.prepare(ctx_id=0, det_size=(160, 160))\n        self.arcface_model = init_recognition_model('arcface', device=devices.device)\n\n    def load_loras(self, loras):\n        names, scales = [],[]\n        for lora_path, lora_name, lora_scale in loras:\n            if lora_path != \"\":\n                print(f\"loading lora {lora_path}\")\n                self.pipe.load_lora_weights(lora_path, adapter_name = lora_name)\n                names.append(lora_name)\n                scales.append(lora_scale)\n\n        if len(names) > 0:\n            self.pipe.set_adapters(names, adapter_weights=scales)\n\n    def _detect_face(self, id_image_cv2):\n        face_info = self.app_640.get(id_image_cv2)\n        if len(face_info) > 0:\n            return face_info\n\n        face_info = self.app_320.get(id_image_cv2)\n        if len(face_info) > 0:\n            return face_info\n\n        face_info = self.app_160.get(id_image_cv2)\n        return face_info\n\n    def __call__(\n        self,\n        prompt: str,\n        id_image: Image.Image, # PIL.Image.Image (RGB)\n        negative_prompt = None,\n        control_image: Optional[Image.Image] = None, # PIL.Image.Image (RGB) or None\n        width = 1024,\n        height = 1024,\n        seed = 42,\n        guidance_scale = 3.5,\n        controlnet_guidance_scale = 1.0,\n        num_inference_steps = 30,\n        infusenet_conditioning_scale = 1.0,\n        infusenet_guidance_start = 0.0,\n        infusenet_guidance_end = 1.0,\n        output_type = 'pil',\n        generator = None,\n        *args, **kwargs # pylint: disable=unused-argument\n    ):\n        # Extract ID embeddings\n        id_image_cv2 = cv2.cvtColor(np.array(id_image), cv2.COLOR_RGB2BGR)\n        face_info = self._detect_face(id_image_cv2)\n        if len(face_info) == 0:\n            raise ValueError('No face detected in the input ID image')\n\n        face_info = sorted(face_info, key=lambda x:(x['bbox'][2]-x['bbox'][0])*(x['bbox'][3]-x['bbox'][1]))[-1] # only use the maximum face\n        landmark = face_info['kps']\n        id_embed = extract_arcface_bgr_embedding(id_image_cv2, landmark, self.arcface_model)\n        id_embed = id_embed.clone().unsqueeze(0).float()\n        id_embed = id_embed.reshape([1, -1, 512])\n        id_embed = id_embed.to(device=devices.device, dtype=devices.dtype)\n        with torch.no_grad():\n            id_embed = self.image_proj_model(id_embed)\n            bs_embed, seq_len, _ = id_embed.shape\n            id_embed = id_embed.repeat(1, 1, 1)\n            id_embed = id_embed.view(bs_embed * 1, seq_len, -1)\n            id_embed = id_embed.to(device=devices.device, dtype=devices.dtype)\n\n        # Load control image\n        if control_image is not None:\n            control_image = control_image.convert(\"RGB\")\n            control_image = resize_and_pad_image(control_image, (width, height))\n            face_info = self._detect_face(cv2.cvtColor(np.array(control_image), cv2.COLOR_RGB2BGR))\n            if len(face_info) == 0:\n                raise ValueError('No face detected in the control image')\n            face_info = sorted(face_info, key=lambda x:(x['bbox'][2]-x['bbox'][0])*(x['bbox'][3]-x['bbox'][1]))[-1] # only use the maximum face\n            control_image = draw_kps(control_image, face_info['kps'])\n        else:\n            out_img = np.zeros([height, width, 3])\n            control_image = Image.fromarray(out_img.astype(np.uint8))\n\n        \"\"\"\n        control_image = self.pipe.prepare_image(\n            image=control_image,\n            width=width,\n            height=height,\n            batch_size=1,\n            num_images_per_prompt=1,\n            device=devices.device,\n            dtype=devices.dtype,\n        )\n        control_image = retrieve_latents(self.pipe.vae.encode(control_image), generator=generator)\n        control_image = (control_image - self.pipe.vae.config.shift_factor) * self.pipe.vae.config.scaling_factor\n        # pack\n        height_control_image, width_control_image = control_image.shape[2:]\n        num_channels_latents = self.pipe.transformer.config.in_channels // 4\n        control_image = self.pipe._pack_latents(\n            control_image,\n            1,\n            num_channels_latents,\n            height_control_image,\n            width_control_image,\n        )\n        \"\"\"\n\n        # Perform inference\n        seed_everything(seed)\n        latents = self.pipe(\n            prompt=prompt,\n            negative_prompt=negative_prompt,\n            controlnet_prompt_embeds=id_embed,\n            control_image=control_image,\n            guidance_scale=guidance_scale,\n            num_inference_steps=num_inference_steps,\n            controlnet_guidance_scale=controlnet_guidance_scale,\n            controlnet_conditioning_scale=infusenet_conditioning_scale,\n            control_guidance_start=infusenet_guidance_start,\n            control_guidance_end=infusenet_guidance_end,\n            height=height,\n            width=width,\n            output_type=output_type,\n            callback_on_step_end=kwargs.get('callback_on_step_end', None),\n            callback_on_step_end_tensor_inputs=kwargs.get('callback_on_step_end_tensor_inputs', None),\n        )\n\n        return latents\n"
  },
  {
    "path": "scripts/infiniteyou/resampler.py",
    "content": "# Modified from https://github.com/mlfoundations/open_flamingo/blob/main/open_flamingo/src/helpers.py\n\nimport math\n\nimport torch\nimport torch.nn as nn\n\n\n# FFN\ndef FeedForward(dim, mult=4):\n    inner_dim = int(dim * mult)\n    return nn.Sequential(\n        nn.LayerNorm(dim),\n        nn.Linear(dim, inner_dim, bias=False),\n        nn.GELU(),\n        nn.Linear(inner_dim, dim, bias=False),\n    )\n\n\ndef reshape_tensor(x, heads):\n    bs, length, width = x.shape\n    #(bs, length, width) --> (bs, length, n_heads, dim_per_head)\n    x = x.view(bs, length, heads, -1)\n    # (bs, length, n_heads, dim_per_head) --> (bs, n_heads, length, dim_per_head)\n    x = x.transpose(1, 2)\n    # (bs, n_heads, length, dim_per_head) --> (bs*n_heads, length, dim_per_head)\n    x = x.reshape(bs, heads, length, -1)\n    return x\n\n\nclass PerceiverAttention(nn.Module):\n    def __init__(self, *, dim, dim_head=64, heads=8):\n        super().__init__()\n        self.scale = dim_head**-0.5\n        self.dim_head = dim_head\n        self.heads = heads\n        inner_dim = dim_head * heads\n\n        self.norm1 = nn.LayerNorm(dim)\n        self.norm2 = nn.LayerNorm(dim)\n\n        self.to_q = nn.Linear(dim, inner_dim, bias=False)\n        self.to_kv = nn.Linear(dim, inner_dim * 2, bias=False)\n        self.to_out = nn.Linear(inner_dim, dim, bias=False)\n\n    def forward(self, x, latents):\n        \"\"\"\n        Args:\n            x (torch.Tensor): image features\n                shape (b, n1, D)\n            latent (torch.Tensor): latent features\n                shape (b, n2, D)\n        \"\"\"\n        x = self.norm1(x)\n        latents = self.norm2(latents)\n\n        b, l, _ = latents.shape\n\n        q = self.to_q(latents)\n        kv_input = torch.cat((x, latents), dim=-2)\n        k, v = self.to_kv(kv_input).chunk(2, dim=-1)\n\n        q = reshape_tensor(q, self.heads)\n        k = reshape_tensor(k, self.heads)\n        v = reshape_tensor(v, self.heads)\n\n        # attention\n        scale = 1 / math.sqrt(math.sqrt(self.dim_head))\n        weight = (q * scale) @ (k * scale).transpose(-2, -1) # More stable with f16 than dividing afterwards\n        weight = torch.softmax(weight.float(), dim=-1).type(weight.dtype)\n        out = weight @ v\n\n        out = out.permute(0, 2, 1, 3).reshape(b, l, -1)\n\n        return self.to_out(out)\n\n\nclass Resampler(nn.Module):\n    def __init__(\n        self,\n        dim=1024,\n        depth=8,\n        dim_head=64,\n        heads=16,\n        num_queries=8,\n        embedding_dim=768,\n        output_dim=1024,\n        ff_mult=4,\n    ):\n        super().__init__()\n\n        self.latents = nn.Parameter(torch.randn(1, num_queries, dim) / dim**0.5)\n\n        self.proj_in = nn.Linear(embedding_dim, dim)\n\n        self.proj_out = nn.Linear(dim, output_dim)\n        self.norm_out = nn.LayerNorm(output_dim)\n\n        self.layers = nn.ModuleList([])\n        for _ in range(depth):\n            self.layers.append(\n                nn.ModuleList(\n                    [\n                        PerceiverAttention(dim=dim, dim_head=dim_head, heads=heads),\n                        FeedForward(dim=dim, mult=ff_mult),\n                    ]\n                )\n            )\n\n    def forward(self, x):\n\n        latents = self.latents.repeat(x.size(0), 1, 1)\n\n        x = self.proj_in(x)\n\n        for attn, ff in self.layers:\n            latents = attn(x, latents) + latents\n            latents = ff(latents) + latents\n\n        latents = self.proj_out(latents)\n        return self.norm_out(latents)\n"
  },
  {
    "path": "scripts/infiniteyou_ext.py",
    "content": "# https://huggingface.co/ByteDance/InfiniteYou\n# https://github.com/bytedance/InfiniteYou\n# flux base model + 11.8gb controlnet module + 338mb image module + 428 insightface module\n\nimport gradio as gr\nfrom PIL import Image\nfrom modules import scripts_manager, processing, shared, sd_models, devices\n\n\nprefix = 'InfiniteYou'\nmodel_versions = ['aes_stage2', 'sim_stage1']\norig_pipeline, orig_prompt_attention = None, None\n\n\ndef verify_insightface():\n    from installer import installed, install_insightface\n    if not installed('insightface', reload=False, quiet=True):\n        install_insightface()\n\n\ndef load_infiniteyou(model: str):\n    from scripts.infiniteyou import InfUFluxPipeline # pylint: disable=no-name-in-module\n    shared.sd_model = InfUFluxPipeline(\n        pipe=shared.sd_model,\n        model_version=model,\n    )\n    sd_models.copy_diffuser_options(shared.sd_model, orig_pipeline)\n    sd_models.clear_caches(full=True)\n    sd_models.set_diffuser_options(shared.sd_model)\n\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return f'{prefix}: Flexible Photo Recrafting'\n\n    def show(self, is_img2img):\n        return not is_img2img\n\n    # return signature is array of gradio components\n    def ui(self, _is_img2img):\n        with gr.Row():\n            gr.HTML(f'<a href=\"https://github.com/bytedance/InfiniteYou\">&nbsp {prefix}: Flexible Photo Recrafting</a><br>')\n        with gr.Row():\n            model = gr.Dropdown(label='IY model', choices=model_versions, value=model_versions[0])\n            restore = gr.Checkbox(label='Restore pipeline on end', value=False)\n        with gr.Row():\n            scale = gr.Slider(label='IY scale', value=1.0, minimum=0.0, maximum=2.0, step=0.05)\n        with gr.Row():\n            start = gr.Slider(label='IY start', value=0.0, minimum=0.0, maximum=1.0, step=0.05)\n            end = gr.Slider(label='IY end', value=1.0, minimum=0.0, maximum=1.0, step=0.05)\n        with gr.Row():\n            id_guidance = gr.Slider(label='Identity guidance', value=3.5, minimum=0.0, maximum=14.0, step=0.05)\n        with gr.Row():\n            id_image = gr.Image(label='Identity image', type='pil')\n        with gr.Row():\n            control_guidance = gr.Slider(label='Control guidance', value=1.0, minimum=0.0, maximum=14.0, step=0.05)\n        with gr.Row():\n            control_image = gr.Image(label='Control image', type='pil')\n        return [model, id_image, control_image, scale, start, end, id_guidance, control_guidance, restore]\n\n    def run(self, p: processing.StableDiffusionProcessing,\n            model: str = None,\n            id_image: Image.Image = None,\n            control_image: Image.Image = None,\n            scale: float = 1.0,\n            start: float = 0.0,\n            end: float = 1.0,\n            id_guidance: float = 3.5,\n            control_guidance: float = 1.0,\n            restore: bool = False,\n        ): # pylint: disable=arguments-differ, unused-argument\n\n        if model is None or model not in model_versions:\n            return None\n        if id_image is None:\n            shared.log.error(f'{prefix}: no init_images')\n            return None\n        if shared.sd_model_type != 'f1':\n            shared.log.error(f'{prefix}: invalid model type: {shared.sd_model_type}')\n            return None\n        if scale <= 0:\n            return None\n\n        global orig_pipeline, orig_prompt_attention # pylint: disable=global-statement\n        orig_pipeline = shared.sd_model\n        if shared.sd_model.__class__.__name__ != 'InfUFluxPipeline':\n            verify_insightface()\n            load_infiniteyou(model)\n            devices.torch_gc()\n            shared.log.info(f'{prefix}: cls={shared.sd_model.__class__.__name__} loaded')\n\n        processing.fix_seed(p)\n        p.task_args['id_image'] = id_image\n        p.task_args['control_image'] = control_image\n        p.task_args['infusenet_conditioning_scale'] = p.task_args.get('infusenet_conditioning_scale', scale)\n        p.task_args['infusenet_guidance_start'] = p.task_args.get('infusenet_guidance_start', start)\n        p.task_args['infusenet_guidance_end'] = p.task_args.get('infusenet_guidance_end', end)\n        p.task_args['seed'] = p.seed\n        p.task_args['negative_prompt'] = None\n        p.task_args['guidance_scale'] = id_guidance\n        p.task_args['controlnet_guidance_scale'] = control_guidance\n        p.extra_generation_params['IY model'] = model\n        p.extra_generation_params['IY guidance'] = f'{scale:.1f}/{start:.1f}/{end:.1f}'\n        orig_prompt_attention = shared.opts.prompt_attention\n        shared.opts.data['prompt_attention'] = 'fixed'\n        shared.log.debug(f'{prefix}: args={p.task_args}')\n\n        processed = processing.process_images(p)\n        return processed\n\n    def after(self, p: processing.StableDiffusionProcessing, processed: processing.Processed, *args, **kwargs): # pylint: disable=unused-argument\n        # restore pipeline\n        global orig_pipeline, orig_prompt_attention # pylint: disable=global-statement\n        restore = args[-1]\n        if orig_prompt_attention is not None:\n            shared.opts.data['prompt_attention'] = orig_prompt_attention\n            orig_prompt_attention = None\n        if restore and orig_pipeline is not None:\n            shared.log.info(f'{prefix}: restoring pipeline')\n            shared.sd_model = orig_pipeline\n            orig_pipeline = None\n"
  },
  {
    "path": "scripts/init_latents.py",
    "content": "from modules import scripts_manager, processing, shared, devices\n\n\nclass Script(scripts_manager.Script):\n    standalone = False\n\n    def title(self):\n        return 'Init Latents'\n\n    def show(self, is_img2img):\n        return scripts_manager.AlwaysVisible\n\n    @staticmethod\n    def get_latents(p):\n        import torch\n        from diffusers.utils.torch_utils import randn_tensor\n        generator_device = devices.cpu if shared.opts.diffusers_generator_device == \"CPU\" else shared.device\n        generator = [torch.Generator(generator_device).manual_seed(s) for s in p.seeds]\n        shape = (len(generator), shared.sd_model.unet.config.in_channels, p.height // shared.sd_model.vae_scale_factor, p.width // shared.sd_model.vae_scale_factor)\n        latents = randn_tensor(shape, generator=generator, device=shared.sd_model._execution_device, dtype=shared.sd_model.unet.dtype) # pylint: disable=protected-access\n        var_generator = [torch.Generator(generator_device).manual_seed(ss) for ss in p.subseeds]\n        var_latents = randn_tensor(shape, generator=var_generator, device=shared.sd_model._execution_device, dtype=shared.sd_model.unet.dtype) # pylint: disable=protected-access\n        return latents, var_latents, generator, var_generator\n\n    @staticmethod\n    def set_slerp(p, latents, var_latents, generator, var_generator):\n        from modules.processing_helpers import slerp\n        p.init_latent = slerp(p.subseed_strength, latents, var_latents) if p.subseed_strength < 1 else var_latents\n        p.generator = generator if p.subseed_strength <= 0.5 else var_generator\n\n    def process_batch(self, p: processing.StableDiffusionProcessing, *args, **kwargs): # pylint: disable=arguments-differ\n        if not shared.sd_loaded or not hasattr(shared.sd_model, 'unet'):\n            return\n        from modules.processing_helpers import create_random_tensors\n        args = list(args)\n        if p.subseed_strength != 0 and getattr(shared.sd_model, '_execution_device', None) is not None:\n            # alt method using slerp\n            # latents, var_latents, generator, var_generator = self.get_latents(p)\n            # self.set_slerp(p, latents, var_latents, generator, var_generator)\n            p.init_latent = create_random_tensors(\n                shape=[shared.sd_model.unet.config.in_channels, p.height // shared.sd_model.vae_scale_factor, p.width // shared.sd_model.vae_scale_factor],\n                seeds=p.seeds,\n                subseeds=p.subseeds,\n                subseed_strength=p.subseed_strength,\n                p=p\n            )\n            shared.log.debug(f'Latent: seed={p.seeds} subseed={p.subseeds} strength={p.subseed_strength} tensor={list(p.init_latent.shape)}')\n            p.init_latent = p.init_latent.to(device=shared.sd_model._execution_device, dtype=shared.sd_model.unet.dtype) # pylint: disable=protected-access\n"
  },
  {
    "path": "scripts/instantir/__init__.py",
    "content": "from .sdxl_instantir import InstantIRPipeline\nfrom .lcm_single_step_scheduler import LCMSingleStepScheduler\nfrom .ip_adapter.utils import init_adapter_in_unet, load_adapter_to_pipe\n"
  },
  {
    "path": "scripts/instantir/aggregator.py",
    "content": "from dataclasses import dataclass\nfrom typing import Any, Dict, List, Optional, Tuple, Union\n\nimport torch\nfrom torch import nn\nfrom torch.nn import functional as F\n\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.loaders.single_file_model import FromOriginalModelMixin\nfrom diffusers.utils import BaseOutput, logging\nfrom diffusers.models.attention_processor import (\n    ADDED_KV_ATTENTION_PROCESSORS,\n    CROSS_ATTENTION_PROCESSORS,\n    AttentionProcessor,\n    AttnAddedKVProcessor,\n    AttnProcessor,\n)\nfrom diffusers.models.embeddings import TextImageProjection, TextImageTimeEmbedding, TextTimeEmbedding, TimestepEmbedding, Timesteps\nfrom diffusers.models.modeling_utils import ModelMixin\nfrom diffusers.models.unets.unet_2d_blocks import (\n    CrossAttnDownBlock2D,\n    DownBlock2D,\n    UNetMidBlock2D,\n    UNetMidBlock2DCrossAttn,\n    get_down_block,\n)\nfrom diffusers.models.unets.unet_2d_condition import UNet2DConditionModel\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\nclass ZeroConv(nn.Module):\n    def __init__(self, label_nc, norm_nc, mask=False):\n        super().__init__()\n        self.zero_conv = zero_module(nn.Conv2d(label_nc+norm_nc, norm_nc, 1, 1, 0))\n        self.mask = mask\n\n    def forward(self, hidden_states, h_ori=None):\n        # with torch.cuda.amp.autocast(enabled=False, dtype=torch.float32):\n        c, h = hidden_states\n        if not self.mask:\n            h = self.zero_conv(torch.cat([c, h], dim=1))\n        else:\n            h = self.zero_conv(torch.cat([c, h], dim=1)) * torch.zeros_like(h)\n        if h_ori is not None:\n            h = torch.cat([h_ori, h], dim=1)\n        return h\n\n\nclass SFT(nn.Module):\n    def __init__(self, label_nc, norm_nc, mask=False):\n        super().__init__()\n\n        # param_free_norm_type = str(parsed.group(1))\n        ks = 3\n        pw = ks // 2\n\n        self.mask = mask\n\n        nhidden = 128\n\n        self.mlp_shared = nn.Sequential(\n            nn.Conv2d(label_nc, nhidden, kernel_size=ks, padding=pw),\n            nn.SiLU()\n        )\n        self.mul = nn.Conv2d(nhidden, norm_nc, kernel_size=ks, padding=pw)\n        self.add = nn.Conv2d(nhidden, norm_nc, kernel_size=ks, padding=pw)\n\n    def forward(self, hidden_states, mask=False):\n\n        c, h = hidden_states\n        mask = mask or self.mask\n        assert mask is False\n\n        actv = self.mlp_shared(c)\n        gamma = self.mul(actv)\n        beta = self.add(actv)\n\n        if self.mask:\n            gamma = gamma * torch.zeros_like(gamma)\n            beta = beta * torch.zeros_like(beta)\n        # gamma_ori, gamma_res = torch.split(gamma, [h_ori_c, h_c], dim=1)\n        # beta_ori, beta_res = torch.split(beta, [h_ori_c, h_c], dim=1)\n        # print(gamma_ori.mean(), gamma_res.mean(), beta_ori.mean(), beta_res.mean())\n        h = h * (gamma + 1) + beta\n        # sample_ori, sample_res = torch.split(h, [h_ori_c, h_c], dim=1)\n        # print(sample_ori.mean(), sample_res.mean())\n\n        return h\n\n\n@dataclass\nclass AggregatorOutput(BaseOutput):\n    \"\"\"\n    The output of [`Aggregator`].\n\n    Args:\n        down_block_res_samples (`tuple[torch.Tensor]`):\n            A tuple of downsample activations at different resolutions for each downsampling block. Each tensor should\n            be of shape `(batch_size, channel * resolution, height //resolution, width // resolution)`. Output can be\n            used to condition the original UNet's downsampling activations.\n        mid_down_block_re_sample (`torch.Tensor`):\n            The activation of the midde block (the lowest sample resolution). Each tensor should be of shape\n            `(batch_size, channel * lowest_resolution, height // lowest_resolution, width // lowest_resolution)`.\n            Output can be used to condition the original UNet's middle block activation.\n    \"\"\"\n\n    down_block_res_samples: Tuple[torch.Tensor]\n    mid_block_res_sample: torch.Tensor\n\n\nclass ConditioningEmbedding(nn.Module):\n    \"\"\"\n    Quoting from https://arxiv.org/abs/2302.05543: \"Stable Diffusion uses a pre-processing method similar to VQ-GAN\n    [11] to convert the entire dataset of 512 × 512 images into smaller 64 × 64 “latent images” for stabilized\n    training. This requires ControlNets to convert image-based conditions to 64 × 64 feature space to match the\n    convolution size. We use a tiny network E(·) of four convolution layers with 4 × 4 kernels and 2 × 2 strides\n    (activated by ReLU, channels are 16, 32, 64, 128, initialized with Gaussian weights, trained jointly with the full\n    model) to encode image-space conditions ... into feature maps ...\"\n    \"\"\"\n\n    def __init__(\n        self,\n        conditioning_embedding_channels: int,\n        conditioning_channels: int = 3,\n        block_out_channels: Tuple[int, ...] = (16, 32, 96, 256),\n    ):\n        super().__init__()\n\n        self.conv_in = nn.Conv2d(conditioning_channels, block_out_channels[0], kernel_size=3, padding=1)\n\n        self.blocks = nn.ModuleList([])\n\n        for i in range(len(block_out_channels) - 1):\n            channel_in = block_out_channels[i]\n            channel_out = block_out_channels[i + 1]\n            self.blocks.append(nn.Conv2d(channel_in, channel_in, kernel_size=3, padding=1))\n            self.blocks.append(nn.Conv2d(channel_in, channel_out, kernel_size=3, padding=1, stride=2))\n\n        self.conv_out = zero_module(\n            nn.Conv2d(block_out_channels[-1], conditioning_embedding_channels, kernel_size=3, padding=1)\n        )\n\n    def forward(self, conditioning):\n        embedding = self.conv_in(conditioning)\n        embedding = F.silu(embedding)\n\n        for block in self.blocks:\n            embedding = block(embedding)\n            embedding = F.silu(embedding)\n\n        embedding = self.conv_out(embedding)\n\n        return embedding\n\n\nclass Aggregator(ModelMixin, ConfigMixin, FromOriginalModelMixin):\n    \"\"\"\n    Aggregator model.\n\n    Args:\n        in_channels (`int`, defaults to 4):\n            The number of channels in the input sample.\n        flip_sin_to_cos (`bool`, defaults to `True`):\n            Whether to flip the sin to cos in the time embedding.\n        freq_shift (`int`, defaults to 0):\n            The frequency shift to apply to the time embedding.\n        down_block_types (`tuple[str]`, defaults to `(\"CrossAttnDownBlock2D\", \"CrossAttnDownBlock2D\", \"CrossAttnDownBlock2D\", \"DownBlock2D\")`):\n            The tuple of downsample blocks to use.\n        only_cross_attention (`Union[bool, Tuple[bool]]`, defaults to `False`):\n        block_out_channels (`tuple[int]`, defaults to `(320, 640, 1280, 1280)`):\n            The tuple of output channels for each block.\n        layers_per_block (`int`, defaults to 2):\n            The number of layers per block.\n        downsample_padding (`int`, defaults to 1):\n            The padding to use for the downsampling convolution.\n        mid_block_scale_factor (`float`, defaults to 1):\n            The scale factor to use for the mid block.\n        act_fn (`str`, defaults to \"silu\"):\n            The activation function to use.\n        norm_num_groups (`int`, *optional*, defaults to 32):\n            The number of groups to use for the normalization. If None, normalization and activation layers is skipped\n            in post-processing.\n        norm_eps (`float`, defaults to 1e-5):\n            The epsilon to use for the normalization.\n        cross_attention_dim (`int`, defaults to 1280):\n            The dimension of the cross attention features.\n        transformer_layers_per_block (`int` or `Tuple[int]`, *optional*, defaults to 1):\n            The number of transformer blocks of type [`~models.attention.BasicTransformerBlock`]. Only relevant for\n            [`~models.unet_2d_blocks.CrossAttnDownBlock2D`], [`~models.unet_2d_blocks.CrossAttnUpBlock2D`],\n            [`~models.unet_2d_blocks.UNetMidBlock2DCrossAttn`].\n        encoder_hid_dim (`int`, *optional*, defaults to None):\n            If `encoder_hid_dim_type` is defined, `encoder_hidden_states` will be projected from `encoder_hid_dim`\n            dimension to `cross_attention_dim`.\n        encoder_hid_dim_type (`str`, *optional*, defaults to `None`):\n            If given, the `encoder_hidden_states` and potentially other embeddings are down-projected to text\n            embeddings of dimension `cross_attention` according to `encoder_hid_dim_type`.\n        attention_head_dim (`Union[int, Tuple[int]]`, defaults to 8):\n            The dimension of the attention heads.\n        use_linear_projection (`bool`, defaults to `False`):\n        class_embed_type (`str`, *optional*, defaults to `None`):\n            The type of class embedding to use which is ultimately summed with the time embeddings. Choose from None,\n            `\"timestep\"`, `\"identity\"`, `\"projection\"`, or `\"simple_projection\"`.\n        addition_embed_type (`str`, *optional*, defaults to `None`):\n            Configures an optional embedding which will be summed with the time embeddings. Choose from `None` or\n            \"text\". \"text\" will use the `TextTimeEmbedding` layer.\n        num_class_embeds (`int`, *optional*, defaults to 0):\n            Input dimension of the learnable embedding matrix to be projected to `time_embed_dim`, when performing\n            class conditioning with `class_embed_type` equal to `None`.\n        upcast_attention (`bool`, defaults to `False`):\n        resnet_time_scale_shift (`str`, defaults to `\"default\"`):\n            Time scale shift config for ResNet blocks (see `ResnetBlock2D`). Choose from `default` or `scale_shift`.\n        projection_class_embeddings_input_dim (`int`, *optional*, defaults to `None`):\n            The dimension of the `class_labels` input when `class_embed_type=\"projection\"`. Required when\n            `class_embed_type=\"projection\"`.\n        controlnet_conditioning_channel_order (`str`, defaults to `\"rgb\"`):\n            The channel order of conditional image. Will convert to `rgb` if it's `bgr`.\n        conditioning_embedding_out_channels (`tuple[int]`, *optional*, defaults to `(16, 32, 96, 256)`):\n            The tuple of output channel for each block in the `conditioning_embedding` layer.\n        global_pool_conditions (`bool`, defaults to `False`):\n            TODO(Patrick) - unused parameter.\n        addition_embed_type_num_heads (`int`, defaults to 64):\n            The number of heads to use for the `TextTimeEmbedding` layer.\n    \"\"\"\n\n    _supports_gradient_checkpointing = True\n\n    @register_to_config\n    def __init__(\n        self,\n        in_channels: int = 4,\n        conditioning_channels: int = 3,\n        flip_sin_to_cos: bool = True,\n        freq_shift: int = 0,\n        down_block_types: Tuple[str, ...] = (\n            \"CrossAttnDownBlock2D\",\n            \"CrossAttnDownBlock2D\",\n            \"CrossAttnDownBlock2D\",\n            \"DownBlock2D\",\n        ),\n        mid_block_type: Optional[str] = \"UNetMidBlock2DCrossAttn\",\n        only_cross_attention: Union[bool, Tuple[bool]] = False,\n        block_out_channels: Tuple[int, ...] = (320, 640, 1280, 1280),\n        layers_per_block: int = 2,\n        downsample_padding: int = 1,\n        mid_block_scale_factor: float = 1,\n        act_fn: str = \"silu\",\n        norm_num_groups: Optional[int] = 32,\n        norm_eps: float = 1e-5,\n        cross_attention_dim: int = 1280,\n        transformer_layers_per_block: Union[int, Tuple[int, ...]] = 1,\n        encoder_hid_dim: Optional[int] = None,\n        encoder_hid_dim_type: Optional[str] = None,\n        attention_head_dim: Union[int, Tuple[int, ...]] = 8,\n        num_attention_heads: Optional[Union[int, Tuple[int, ...]]] = None,\n        use_linear_projection: bool = False,\n        class_embed_type: Optional[str] = None,\n        addition_embed_type: Optional[str] = None,\n        addition_time_embed_dim: Optional[int] = None,\n        num_class_embeds: Optional[int] = None,\n        upcast_attention: bool = False,\n        resnet_time_scale_shift: str = \"default\",\n        projection_class_embeddings_input_dim: Optional[int] = None,\n        controlnet_conditioning_channel_order: str = \"rgb\",\n        conditioning_embedding_out_channels: Optional[Tuple[int, ...]] = (16, 32, 96, 256),\n        global_pool_conditions: bool = False,\n        addition_embed_type_num_heads: int = 64,\n        pad_concat: bool = False,\n    ):\n        super().__init__()\n\n        # If `num_attention_heads` is not defined (which is the case for most models)\n        # it will default to `attention_head_dim`. This looks weird upon first reading it and it is.\n        # The reason for this behavior is to correct for incorrectly named variables that were introduced\n        # when this library was created. The incorrect naming was only discovered much later in https://github.com/huggingface/diffusers/issues/2011#issuecomment-1547958131\n        # Changing `attention_head_dim` to `num_attention_heads` for 40,000+ configurations is too backwards breaking\n        # which is why we correct for the naming here.\n        num_attention_heads = num_attention_heads or attention_head_dim\n        self.pad_concat = pad_concat\n\n        # Check inputs\n        if len(block_out_channels) != len(down_block_types):\n            raise ValueError(\n                f\"Must provide the same number of `block_out_channels` as `down_block_types`. `block_out_channels`: {block_out_channels}. `down_block_types`: {down_block_types}.\"\n            )\n\n        if not isinstance(only_cross_attention, bool) and len(only_cross_attention) != len(down_block_types):\n            raise ValueError(\n                f\"Must provide the same number of `only_cross_attention` as `down_block_types`. `only_cross_attention`: {only_cross_attention}. `down_block_types`: {down_block_types}.\"\n            )\n\n        if not isinstance(num_attention_heads, int) and len(num_attention_heads) != len(down_block_types):\n            raise ValueError(\n                f\"Must provide the same number of `num_attention_heads` as `down_block_types`. `num_attention_heads`: {num_attention_heads}. `down_block_types`: {down_block_types}.\"\n            )\n\n        if isinstance(transformer_layers_per_block, int):\n            transformer_layers_per_block = [transformer_layers_per_block] * len(down_block_types)\n\n        # input\n        conv_in_kernel = 3\n        conv_in_padding = (conv_in_kernel - 1) // 2\n        self.conv_in = nn.Conv2d(\n            in_channels, block_out_channels[0], kernel_size=conv_in_kernel, padding=conv_in_padding\n        )\n\n        # time\n        time_embed_dim = block_out_channels[0] * 4\n        self.time_proj = Timesteps(block_out_channels[0], flip_sin_to_cos, freq_shift)\n        timestep_input_dim = block_out_channels[0]\n        self.time_embedding = TimestepEmbedding(\n            timestep_input_dim,\n            time_embed_dim,\n            act_fn=act_fn,\n        )\n\n        if encoder_hid_dim_type is None and encoder_hid_dim is not None:\n            encoder_hid_dim_type = \"text_proj\"\n            self.register_to_config(encoder_hid_dim_type=encoder_hid_dim_type)\n            logger.info(\"encoder_hid_dim_type defaults to 'text_proj' as `encoder_hid_dim` is defined.\")\n\n        if encoder_hid_dim is None and encoder_hid_dim_type is not None:\n            raise ValueError(\n                f\"`encoder_hid_dim` has to be defined when `encoder_hid_dim_type` is set to {encoder_hid_dim_type}.\"\n            )\n\n        if encoder_hid_dim_type == \"text_proj\":\n            self.encoder_hid_proj = nn.Linear(encoder_hid_dim, cross_attention_dim)\n        elif encoder_hid_dim_type == \"text_image_proj\":\n            # image_embed_dim DOESN'T have to be `cross_attention_dim`. To not clutter the __init__ too much\n            # they are set to `cross_attention_dim` here as this is exactly the required dimension for the currently only use\n            # case when `addition_embed_type == \"text_image_proj\"` (Kandinsky 2.1)`\n            self.encoder_hid_proj = TextImageProjection(\n                text_embed_dim=encoder_hid_dim,\n                image_embed_dim=cross_attention_dim,\n                cross_attention_dim=cross_attention_dim,\n            )\n\n        elif encoder_hid_dim_type is not None:\n            raise ValueError(\n                f\"encoder_hid_dim_type: {encoder_hid_dim_type} must be None, 'text_proj' or 'text_image_proj'.\"\n            )\n        else:\n            self.encoder_hid_proj = None\n\n        # class embedding\n        if class_embed_type is None and num_class_embeds is not None:\n            self.class_embedding = nn.Embedding(num_class_embeds, time_embed_dim)\n        elif class_embed_type == \"timestep\":\n            self.class_embedding = TimestepEmbedding(timestep_input_dim, time_embed_dim)\n        elif class_embed_type == \"identity\":\n            self.class_embedding = nn.Identity(time_embed_dim, time_embed_dim)\n        elif class_embed_type == \"projection\":\n            if projection_class_embeddings_input_dim is None:\n                raise ValueError(\n                    \"`class_embed_type`: 'projection' requires `projection_class_embeddings_input_dim` be set\"\n                )\n            # The projection `class_embed_type` is the same as the timestep `class_embed_type` except\n            # 1. the `class_labels` inputs are not first converted to sinusoidal embeddings\n            # 2. it projects from an arbitrary input dimension.\n            #\n            # Note that `TimestepEmbedding` is quite general, being mainly linear layers and activations.\n            # When used for embedding actual timesteps, the timesteps are first converted to sinusoidal embeddings.\n            # As a result, `TimestepEmbedding` can be passed arbitrary vectors.\n            self.class_embedding = TimestepEmbedding(projection_class_embeddings_input_dim, time_embed_dim)\n        else:\n            self.class_embedding = None\n\n        if addition_embed_type == \"text\":\n            if encoder_hid_dim is not None:\n                text_time_embedding_from_dim = encoder_hid_dim\n            else:\n                text_time_embedding_from_dim = cross_attention_dim\n\n            self.add_embedding = TextTimeEmbedding(\n                text_time_embedding_from_dim, time_embed_dim, num_heads=addition_embed_type_num_heads\n            )\n        elif addition_embed_type == \"text_image\":\n            # text_embed_dim and image_embed_dim DON'T have to be `cross_attention_dim`. To not clutter the __init__ too much\n            # they are set to `cross_attention_dim` here as this is exactly the required dimension for the currently only use\n            # case when `addition_embed_type == \"text_image\"` (Kandinsky 2.1)`\n            self.add_embedding = TextImageTimeEmbedding(\n                text_embed_dim=cross_attention_dim, image_embed_dim=cross_attention_dim, time_embed_dim=time_embed_dim\n            )\n        elif addition_embed_type == \"text_time\":\n            self.add_time_proj = Timesteps(addition_time_embed_dim, flip_sin_to_cos, freq_shift)\n            self.add_embedding = TimestepEmbedding(projection_class_embeddings_input_dim, time_embed_dim)\n\n        elif addition_embed_type is not None:\n            raise ValueError(f\"addition_embed_type: {addition_embed_type} must be None, 'text' or 'text_image'.\")\n\n        # control net conditioning embedding\n        self.ref_conv_in = nn.Conv2d(\n            in_channels, block_out_channels[0], kernel_size=conv_in_kernel, padding=conv_in_padding\n        )\n\n        self.down_blocks = nn.ModuleList([])\n        self.controlnet_down_blocks = nn.ModuleList([])\n\n        if isinstance(only_cross_attention, bool):\n            only_cross_attention = [only_cross_attention] * len(down_block_types)\n\n        if isinstance(attention_head_dim, int):\n            attention_head_dim = (attention_head_dim,) * len(down_block_types)\n\n        if isinstance(num_attention_heads, int):\n            num_attention_heads = (num_attention_heads,) * len(down_block_types)\n\n        # down\n        output_channel = block_out_channels[0]\n\n        # controlnet_block = ZeroConv(output_channel, output_channel)\n        controlnet_block = nn.Sequential(\n            SFT(output_channel, output_channel),\n            zero_module(nn.Conv2d(output_channel, output_channel, kernel_size=1))\n        )\n        self.controlnet_down_blocks.append(controlnet_block)\n\n        for i, down_block_type in enumerate(down_block_types):\n            input_channel = output_channel\n            output_channel = block_out_channels[i]\n            is_final_block = i == len(block_out_channels) - 1\n\n            down_block = get_down_block(\n                down_block_type,\n                num_layers=layers_per_block,\n                transformer_layers_per_block=transformer_layers_per_block[i],\n                in_channels=input_channel,\n                out_channels=output_channel,\n                temb_channels=time_embed_dim,\n                add_downsample=not is_final_block,\n                resnet_eps=norm_eps,\n                resnet_act_fn=act_fn,\n                resnet_groups=norm_num_groups,\n                cross_attention_dim=cross_attention_dim,\n                num_attention_heads=num_attention_heads[i],\n                attention_head_dim=attention_head_dim[i] if attention_head_dim[i] is not None else output_channel,\n                downsample_padding=downsample_padding,\n                use_linear_projection=use_linear_projection,\n                only_cross_attention=only_cross_attention[i],\n                upcast_attention=upcast_attention,\n                resnet_time_scale_shift=resnet_time_scale_shift,\n            )\n            self.down_blocks.append(down_block)\n\n            for _ in range(layers_per_block):\n                # controlnet_block = ZeroConv(output_channel, output_channel)\n                controlnet_block = nn.Sequential(\n                    SFT(output_channel, output_channel),\n                    zero_module(nn.Conv2d(output_channel, output_channel, kernel_size=1))\n                )\n                self.controlnet_down_blocks.append(controlnet_block)\n\n            if not is_final_block:\n                # controlnet_block = ZeroConv(output_channel, output_channel)\n                controlnet_block = nn.Sequential(\n                    SFT(output_channel, output_channel),\n                    zero_module(nn.Conv2d(output_channel, output_channel, kernel_size=1))\n                )\n                self.controlnet_down_blocks.append(controlnet_block)\n\n        # mid\n        mid_block_channel = block_out_channels[-1]\n\n        # controlnet_block = ZeroConv(mid_block_channel, mid_block_channel)\n        controlnet_block = nn.Sequential(\n            SFT(mid_block_channel, mid_block_channel),\n            zero_module(nn.Conv2d(mid_block_channel, mid_block_channel, kernel_size=1))\n        )\n        self.controlnet_mid_block = controlnet_block\n\n        if mid_block_type == \"UNetMidBlock2DCrossAttn\":\n            self.mid_block = UNetMidBlock2DCrossAttn(\n                transformer_layers_per_block=transformer_layers_per_block[-1],\n                in_channels=mid_block_channel,\n                temb_channels=time_embed_dim,\n                resnet_eps=norm_eps,\n                resnet_act_fn=act_fn,\n                output_scale_factor=mid_block_scale_factor,\n                resnet_time_scale_shift=resnet_time_scale_shift,\n                cross_attention_dim=cross_attention_dim,\n                num_attention_heads=num_attention_heads[-1],\n                resnet_groups=norm_num_groups,\n                use_linear_projection=use_linear_projection,\n                upcast_attention=upcast_attention,\n            )\n        elif mid_block_type == \"UNetMidBlock2D\":\n            self.mid_block = UNetMidBlock2D(\n                in_channels=block_out_channels[-1],\n                temb_channels=time_embed_dim,\n                num_layers=0,\n                resnet_eps=norm_eps,\n                resnet_act_fn=act_fn,\n                output_scale_factor=mid_block_scale_factor,\n                resnet_groups=norm_num_groups,\n                resnet_time_scale_shift=resnet_time_scale_shift,\n                add_attention=False,\n            )\n        else:\n            raise ValueError(f\"unknown mid_block_type : {mid_block_type}\")\n\n    @classmethod\n    def from_unet(\n        cls,\n        unet: UNet2DConditionModel,\n        controlnet_conditioning_channel_order: str = \"rgb\",\n        conditioning_embedding_out_channels: Optional[Tuple[int, ...]] = (16, 32, 96, 256),\n        load_weights_from_unet: bool = True,\n        conditioning_channels: int = 3,\n    ):\n        r\"\"\"\n        Instantiate a [`ControlNetModel`] from [`UNet2DConditionModel`].\n\n        Parameters:\n            unet (`UNet2DConditionModel`):\n                The UNet model weights to copy to the [`ControlNetModel`]. All configuration options are also copied\n                where applicable.\n        \"\"\"\n        transformer_layers_per_block = (\n            unet.config.transformer_layers_per_block if \"transformer_layers_per_block\" in unet.config else 1\n        )\n        encoder_hid_dim = unet.config.encoder_hid_dim if \"encoder_hid_dim\" in unet.config else None\n        encoder_hid_dim_type = unet.config.encoder_hid_dim_type if \"encoder_hid_dim_type\" in unet.config else None\n        addition_embed_type = unet.config.addition_embed_type if \"addition_embed_type\" in unet.config else None\n        addition_time_embed_dim = (\n            unet.config.addition_time_embed_dim if \"addition_time_embed_dim\" in unet.config else None\n        )\n\n        controlnet = cls(\n            encoder_hid_dim=encoder_hid_dim,\n            encoder_hid_dim_type=encoder_hid_dim_type,\n            addition_embed_type=addition_embed_type,\n            addition_time_embed_dim=addition_time_embed_dim,\n            transformer_layers_per_block=transformer_layers_per_block,\n            in_channels=unet.config.in_channels,\n            flip_sin_to_cos=unet.config.flip_sin_to_cos,\n            freq_shift=unet.config.freq_shift,\n            down_block_types=unet.config.down_block_types,\n            only_cross_attention=unet.config.only_cross_attention,\n            block_out_channels=unet.config.block_out_channels,\n            layers_per_block=unet.config.layers_per_block,\n            downsample_padding=unet.config.downsample_padding,\n            mid_block_scale_factor=unet.config.mid_block_scale_factor,\n            act_fn=unet.config.act_fn,\n            norm_num_groups=unet.config.norm_num_groups,\n            norm_eps=unet.config.norm_eps,\n            cross_attention_dim=unet.config.cross_attention_dim,\n            attention_head_dim=unet.config.attention_head_dim,\n            num_attention_heads=unet.config.num_attention_heads,\n            use_linear_projection=unet.config.use_linear_projection,\n            class_embed_type=unet.config.class_embed_type,\n            num_class_embeds=unet.config.num_class_embeds,\n            upcast_attention=unet.config.upcast_attention,\n            resnet_time_scale_shift=unet.config.resnet_time_scale_shift,\n            projection_class_embeddings_input_dim=unet.config.projection_class_embeddings_input_dim,\n            mid_block_type=unet.config.mid_block_type,\n            controlnet_conditioning_channel_order=controlnet_conditioning_channel_order,\n            conditioning_embedding_out_channels=conditioning_embedding_out_channels,\n            conditioning_channels=conditioning_channels,\n        )\n\n        if load_weights_from_unet:\n            controlnet.conv_in.load_state_dict(unet.conv_in.state_dict())\n            controlnet.ref_conv_in.load_state_dict(unet.conv_in.state_dict())\n            controlnet.time_proj.load_state_dict(unet.time_proj.state_dict())\n            controlnet.time_embedding.load_state_dict(unet.time_embedding.state_dict())\n\n            if controlnet.class_embedding:\n                controlnet.class_embedding.load_state_dict(unet.class_embedding.state_dict())\n\n            if hasattr(controlnet, \"add_embedding\"):\n                controlnet.add_embedding.load_state_dict(unet.add_embedding.state_dict())\n\n            controlnet.down_blocks.load_state_dict(unet.down_blocks.state_dict())\n            controlnet.mid_block.load_state_dict(unet.mid_block.state_dict())\n\n        return controlnet\n\n    @property\n    # Copied from diffusers.models.unets.unet_2d_condition.UNet2DConditionModel.attn_processors\n    def attn_processors(self) -> Dict[str, AttentionProcessor]:\n        r\"\"\"\n        Returns:\n            `dict` of attention processors: A dictionary containing all attention processors used in the model with\n            indexed by its weight name.\n        \"\"\"\n        # set recursively\n        processors = {}\n\n        def fn_recursive_add_processors(name: str, module: torch.nn.Module, processors: Dict[str, AttentionProcessor]):\n            if hasattr(module, \"get_processor\"):\n                processors[f\"{name}.processor\"] = module.get_processor(return_deprecated_lora=True)\n\n            for sub_name, child in module.named_children():\n                fn_recursive_add_processors(f\"{name}.{sub_name}\", child, processors)\n\n            return processors\n\n        for name, module in self.named_children():\n            fn_recursive_add_processors(name, module, processors)\n\n        return processors\n\n    # Copied from diffusers.models.unets.unet_2d_condition.UNet2DConditionModel.set_attn_processor\n    def set_attn_processor(self, processor: Union[AttentionProcessor, Dict[str, AttentionProcessor]]):\n        r\"\"\"\n        Sets the attention processor to use to compute attention.\n\n        Parameters:\n            processor (`dict` of `AttentionProcessor` or only `AttentionProcessor`):\n                The instantiated processor class or a dictionary of processor classes that will be set as the processor\n                for **all** `Attention` layers.\n\n                If `processor` is a dict, the key needs to define the path to the corresponding cross attention\n                processor. This is strongly recommended when setting trainable attention processors.\n\n        \"\"\"\n        count = len(self.attn_processors.keys())\n\n        if isinstance(processor, dict) and len(processor) != count:\n            raise ValueError(\n                f\"A dict of processors was passed, but the number of processors {len(processor)} does not match the\"\n                f\" number of attention layers: {count}. Please make sure to pass {count} processor classes.\"\n            )\n\n        def fn_recursive_attn_processor(name: str, module: torch.nn.Module, processor):\n            if hasattr(module, \"set_processor\"):\n                if not isinstance(processor, dict):\n                    module.set_processor(processor)\n                else:\n                    module.set_processor(processor.pop(f\"{name}.processor\"))\n\n            for sub_name, child in module.named_children():\n                fn_recursive_attn_processor(f\"{name}.{sub_name}\", child, processor)\n\n        for name, module in self.named_children():\n            fn_recursive_attn_processor(name, module, processor)\n\n    # Copied from diffusers.models.unets.unet_2d_condition.UNet2DConditionModel.set_default_attn_processor\n    def set_default_attn_processor(self):\n        \"\"\"\n        Disables custom attention processors and sets the default attention implementation.\n        \"\"\"\n        if all(proc.__class__ in ADDED_KV_ATTENTION_PROCESSORS for proc in self.attn_processors.values()):\n            processor = AttnAddedKVProcessor()\n        elif all(proc.__class__ in CROSS_ATTENTION_PROCESSORS for proc in self.attn_processors.values()):\n            processor = AttnProcessor()\n        else:\n            raise ValueError(\n                f\"Cannot call `set_default_attn_processor` when attention processors are of type {next(iter(self.attn_processors.values()))}\"\n            )\n\n        self.set_attn_processor(processor)\n\n    # Copied from diffusers.models.unets.unet_2d_condition.UNet2DConditionModel.set_attention_slice\n    def set_attention_slice(self, slice_size: Union[str, int, List[int]]) -> None:\n        r\"\"\"\n        Enable sliced attention computation.\n\n        When this option is enabled, the attention module splits the input tensor in slices to compute attention in\n        several steps. This is useful for saving some memory in exchange for a small decrease in speed.\n\n        Args:\n            slice_size (`str` or `int` or `list(int)`, *optional*, defaults to `\"auto\"`):\n                When `\"auto\"`, input to the attention heads is halved, so attention is computed in two steps. If\n                `\"max\"`, maximum amount of memory is saved by running only one slice at a time. If a number is\n                provided, uses as many slices as `attention_head_dim // slice_size`. In this case, `attention_head_dim`\n                must be a multiple of `slice_size`.\n        \"\"\"\n        sliceable_head_dims = []\n\n        def fn_recursive_retrieve_sliceable_dims(module: torch.nn.Module):\n            if hasattr(module, \"set_attention_slice\"):\n                sliceable_head_dims.append(module.sliceable_head_dim)\n\n            for child in module.children():\n                fn_recursive_retrieve_sliceable_dims(child)\n\n        # retrieve number of attention layers\n        for module in self.children():\n            fn_recursive_retrieve_sliceable_dims(module)\n\n        num_sliceable_layers = len(sliceable_head_dims)\n\n        if slice_size == \"auto\":\n            # half the attention head size is usually a good trade-off between\n            # speed and memory\n            slice_size = [dim // 2 for dim in sliceable_head_dims]\n        elif slice_size == \"max\":\n            # make smallest slice possible\n            slice_size = num_sliceable_layers * [1]\n\n        slice_size = num_sliceable_layers * [slice_size] if not isinstance(slice_size, list) else slice_size\n\n        if len(slice_size) != len(sliceable_head_dims):\n            raise ValueError(\n                f\"You have provided {len(slice_size)}, but {self.config} has {len(sliceable_head_dims)} different\"\n                f\" attention layers. Make sure to match `len(slice_size)` to be {len(sliceable_head_dims)}.\"\n            )\n\n        for i in range(len(slice_size)):\n            size = slice_size[i]\n            dim = sliceable_head_dims[i]\n            if size is not None and size > dim:\n                raise ValueError(f\"size {size} has to be smaller or equal to {dim}.\")\n\n        # Recursively walk through all the children.\n        # Any children which exposes the set_attention_slice method\n        # gets the message\n        def fn_recursive_set_attention_slice(module: torch.nn.Module, slice_size: List[int]):\n            if hasattr(module, \"set_attention_slice\"):\n                module.set_attention_slice(slice_size.pop())\n\n            for child in module.children():\n                fn_recursive_set_attention_slice(child, slice_size)\n\n        reversed_slice_size = list(reversed(slice_size))\n        for module in self.children():\n            fn_recursive_set_attention_slice(module, reversed_slice_size)\n\n    def process_encoder_hidden_states(\n        self, encoder_hidden_states: torch.Tensor, added_cond_kwargs: Dict[str, Any]\n    ) -> torch.Tensor:\n        if self.encoder_hid_proj is not None and self.config.encoder_hid_dim_type == \"text_proj\":\n            encoder_hidden_states = self.encoder_hid_proj(encoder_hidden_states)\n        elif self.encoder_hid_proj is not None and self.config.encoder_hid_dim_type == \"text_image_proj\":\n            # Kandinsky 2.1 - style\n            if \"image_embeds\" not in added_cond_kwargs:\n                raise ValueError(\n                    f\"{self.__class__} has the config param `encoder_hid_dim_type` set to 'text_image_proj' which requires the keyword argument `image_embeds` to be passed in  `added_conditions`\"\n                )\n\n            image_embeds = added_cond_kwargs.get(\"image_embeds\")\n            encoder_hidden_states = self.encoder_hid_proj(encoder_hidden_states, image_embeds)\n        elif self.encoder_hid_proj is not None and self.config.encoder_hid_dim_type == \"image_proj\":\n            # Kandinsky 2.2 - style\n            if \"image_embeds\" not in added_cond_kwargs:\n                raise ValueError(\n                    f\"{self.__class__} has the config param `encoder_hid_dim_type` set to 'image_proj' which requires the keyword argument `image_embeds` to be passed in  `added_conditions`\"\n                )\n            image_embeds = added_cond_kwargs.get(\"image_embeds\")\n            encoder_hidden_states = self.encoder_hid_proj(image_embeds)\n        elif self.encoder_hid_proj is not None and self.config.encoder_hid_dim_type == \"ip_image_proj\":\n            if \"image_embeds\" not in added_cond_kwargs:\n                raise ValueError(\n                    f\"{self.__class__} has the config param `encoder_hid_dim_type` set to 'ip_image_proj' which requires the keyword argument `image_embeds` to be passed in  `added_conditions`\"\n                )\n            image_embeds = added_cond_kwargs.get(\"image_embeds\")\n            image_embeds = self.encoder_hid_proj(image_embeds)\n            encoder_hidden_states = (encoder_hidden_states, image_embeds)\n        return encoder_hidden_states\n\n    def _set_gradient_checkpointing(self, module, value: bool = False) -> None:\n        if isinstance(module, (CrossAttnDownBlock2D, DownBlock2D)):\n            module.gradient_checkpointing = value\n\n    def forward(\n        self,\n        sample: torch.FloatTensor,\n        timestep: Union[torch.Tensor, float, int],\n        encoder_hidden_states: torch.Tensor,\n        controlnet_cond: torch.FloatTensor,\n        cat_dim: int = -2,\n        conditioning_scale: float = 1.0,\n        class_labels: Optional[torch.Tensor] = None,\n        timestep_cond: Optional[torch.Tensor] = None,\n        attention_mask: Optional[torch.Tensor] = None,\n        added_cond_kwargs: Optional[Dict[str, torch.Tensor]] = None,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        return_dict: bool = True,\n    ) -> Union[AggregatorOutput, Tuple[Tuple[torch.FloatTensor, ...], torch.FloatTensor]]:\n        \"\"\"\n        The [`Aggregator`] forward method.\n\n        Args:\n            sample (`torch.FloatTensor`):\n                The noisy input tensor.\n            timestep (`Union[torch.Tensor, float, int]`):\n                The number of timesteps to denoise an input.\n            encoder_hidden_states (`torch.Tensor`):\n                The encoder hidden states.\n            controlnet_cond (`torch.FloatTensor`):\n                The conditional input tensor of shape `(batch_size, sequence_length, hidden_size)`.\n            conditioning_scale (`float`, defaults to `1.0`):\n                The scale factor for ControlNet outputs.\n            class_labels (`torch.Tensor`, *optional*, defaults to `None`):\n                Optional class labels for conditioning. Their embeddings will be summed with the timestep embeddings.\n            timestep_cond (`torch.Tensor`, *optional*, defaults to `None`):\n                Additional conditional embeddings for timestep. If provided, the embeddings will be summed with the\n                timestep_embedding passed through the `self.time_embedding` layer to obtain the final timestep\n                embeddings.\n            attention_mask (`torch.Tensor`, *optional*, defaults to `None`):\n                An attention mask of shape `(batch, key_tokens)` is applied to `encoder_hidden_states`. If `1` the mask\n                is kept, otherwise if `0` it is discarded. Mask will be converted into a bias, which adds large\n                negative values to the attention scores corresponding to \"discard\" tokens.\n            added_cond_kwargs (`dict`):\n                Additional conditions for the Stable Diffusion XL UNet.\n            cross_attention_kwargs (`dict[str]`, *optional*, defaults to `None`):\n                A kwargs dictionary that if specified is passed along to the `AttnProcessor`.\n            return_dict (`bool`, defaults to `True`):\n                Whether or not to return a [`~models.controlnet.ControlNetOutput`] instead of a plain tuple.\n\n        Returns:\n            [`~models.controlnet.ControlNetOutput`] **or** `tuple`:\n                If `return_dict` is `True`, a [`~models.controlnet.ControlNetOutput`] is returned, otherwise a tuple is\n                returned where the first element is the sample tensor.\n        \"\"\"\n        # check channel order\n        channel_order = self.config.controlnet_conditioning_channel_order\n\n        if channel_order == \"rgb\":\n            # in rgb order by default\n            ...\n        else:\n            raise ValueError(f\"unknown `controlnet_conditioning_channel_order`: {channel_order}\")\n\n        # prepare attention_mask\n        if attention_mask is not None:\n            attention_mask = (1 - attention_mask.to(sample.dtype)) * -10000.0\n            attention_mask = attention_mask.unsqueeze(1)\n\n        # 1. time\n        timesteps = timestep\n        if not torch.is_tensor(timesteps):\n            # This would be a good case for the `match` statement (Python 3.10+)\n            is_mps = sample.device.type == \"mps\"\n            if isinstance(timestep, float):\n                dtype = torch.float32 if is_mps else torch.float64\n            else:\n                dtype = torch.int32 if is_mps else torch.int64\n            timesteps = torch.tensor([timesteps], dtype=dtype, device=sample.device)\n        elif len(timesteps.shape) == 0:\n            timesteps = timesteps[None].to(sample.device)\n\n        # broadcast to batch dimension in a way that's compatible with ONNX/Core ML\n        timesteps = timesteps.expand(sample.shape[0])\n\n        t_emb = self.time_proj(timesteps)\n\n        # timesteps does not contain any weights and will always return f32 tensors\n        # but time_embedding might actually be running in fp16. so we need to cast here.\n        # there might be better ways to encapsulate this.\n        t_emb = t_emb.to(dtype=sample.dtype)\n\n        emb = self.time_embedding(t_emb, timestep_cond)\n        aug_emb = None\n\n        if self.class_embedding is not None:\n            if class_labels is None:\n                raise ValueError(\"class_labels should be provided when num_class_embeds > 0\")\n\n            if self.config.class_embed_type == \"timestep\":\n                class_labels = self.time_proj(class_labels)\n\n            class_emb = self.class_embedding(class_labels).to(dtype=self.dtype)\n            emb = emb + class_emb\n\n        if self.config.addition_embed_type is not None:\n            if self.config.addition_embed_type == \"text\":\n                aug_emb = self.add_embedding(encoder_hidden_states)\n\n            elif self.config.addition_embed_type == \"text_time\":\n                if \"text_embeds\" not in added_cond_kwargs:\n                    raise ValueError(\n                        f\"{self.__class__} has the config param `addition_embed_type` set to 'text_time' which requires the keyword argument `text_embeds` to be passed in `added_cond_kwargs`\"\n                    )\n                text_embeds = added_cond_kwargs.get(\"text_embeds\")\n                if \"time_ids\" not in added_cond_kwargs:\n                    raise ValueError(\n                        f\"{self.__class__} has the config param `addition_embed_type` set to 'text_time' which requires the keyword argument `time_ids` to be passed in `added_cond_kwargs`\"\n                    )\n                time_ids = added_cond_kwargs.get(\"time_ids\")\n                time_embeds = self.add_time_proj(time_ids.flatten())\n                time_embeds = time_embeds.reshape((text_embeds.shape[0], -1))\n\n                add_embeds = torch.concat([text_embeds, time_embeds], dim=-1)\n                add_embeds = add_embeds.to(emb.dtype)\n                aug_emb = self.add_embedding(add_embeds)\n\n        emb = emb + aug_emb if aug_emb is not None else emb\n\n        encoder_hidden_states = self.process_encoder_hidden_states(\n            encoder_hidden_states=encoder_hidden_states, added_cond_kwargs=added_cond_kwargs\n        )\n\n        # 2. prepare input\n        cond_latent = self.conv_in(sample)\n        ref_latent = self.ref_conv_in(controlnet_cond)\n        batch_size, channel, height, width = cond_latent.shape\n        if self.pad_concat:\n            if cat_dim == -2 or cat_dim == 2:\n                concat_pad = torch.zeros(batch_size, channel, 1, width)\n            elif cat_dim == -1 or cat_dim == 3:\n                concat_pad = torch.zeros(batch_size, channel, height, 1)\n            else:\n                raise ValueError(f\"Aggregator shall concat along spatial dimension, but is asked to concat dim: {cat_dim}.\")\n            concat_pad = concat_pad.to(cond_latent.device, dtype=cond_latent.dtype)\n            sample = torch.cat([cond_latent, concat_pad, ref_latent], dim=cat_dim)\n        else:\n            sample = torch.cat([cond_latent, ref_latent], dim=cat_dim)\n\n        # 3. down\n        down_block_res_samples = (sample,)\n        for downsample_block in self.down_blocks:\n            sample, res_samples = downsample_block(\n                hidden_states=sample,\n                temb=emb,\n                cross_attention_kwargs=cross_attention_kwargs,\n            )\n\n            # rebuild sample: split and concat\n            if self.pad_concat:\n                batch_size, channel, height, width = sample.shape\n                if cat_dim == -2 or cat_dim == 2:\n                    cond_latent = sample[:, :, :height//2, :]\n                    ref_latent = sample[:, :, -(height//2):, :]\n                    concat_pad = torch.zeros(batch_size, channel, 1, width)\n                elif cat_dim == -1 or cat_dim == 3:\n                    cond_latent = sample[:, :, :, :width//2]\n                    ref_latent = sample[:, :, :, -(width//2):]\n                    concat_pad = torch.zeros(batch_size, channel, height, 1)\n                concat_pad = concat_pad.to(cond_latent.device, dtype=cond_latent.dtype)\n                sample = torch.cat([cond_latent, concat_pad, ref_latent], dim=cat_dim)\n                res_samples = res_samples[:-1] + (sample,)\n\n            down_block_res_samples += res_samples\n\n        # 4. mid\n        if self.mid_block is not None:\n            sample = self.mid_block(\n                sample,\n                emb,\n                cross_attention_kwargs=cross_attention_kwargs,\n            )\n\n        # 5. split samples and SFT.\n        controlnet_down_block_res_samples = ()\n        for down_block_res_sample, controlnet_block in zip(down_block_res_samples, self.controlnet_down_blocks):\n            batch_size, channel, height, width = down_block_res_sample.shape\n            if cat_dim == -2 or cat_dim == 2:\n                cond_latent = down_block_res_sample[:, :, :height//2, :]\n                ref_latent = down_block_res_sample[:, :, -(height//2):, :]\n            elif cat_dim == -1 or cat_dim == 3:\n                cond_latent = down_block_res_sample[:, :, :, :width//2]\n                ref_latent = down_block_res_sample[:, :, :, -(width//2):]\n            down_block_res_sample = controlnet_block((cond_latent, ref_latent), )\n            controlnet_down_block_res_samples = controlnet_down_block_res_samples + (down_block_res_sample,)\n\n        down_block_res_samples = controlnet_down_block_res_samples\n\n        batch_size, channel, height, width = sample.shape\n        if cat_dim == -2 or cat_dim == 2:\n            cond_latent = sample[:, :, :height//2, :]\n            ref_latent = sample[:, :, -(height//2):, :]\n        elif cat_dim == -1 or cat_dim == 3:\n            cond_latent = sample[:, :, :, :width//2]\n            ref_latent = sample[:, :, :, -(width//2):]\n        mid_block_res_sample = self.controlnet_mid_block((cond_latent, ref_latent), )\n\n        # 6. scaling\n        down_block_res_samples = [sample*conditioning_scale for sample in down_block_res_samples]\n        mid_block_res_sample = mid_block_res_sample*conditioning_scale\n\n        if self.config.global_pool_conditions:\n            down_block_res_samples = [\n                torch.mean(sample, dim=(2, 3), keepdim=True) for sample in down_block_res_samples\n            ]\n            mid_block_res_sample = torch.mean(mid_block_res_sample, dim=(2, 3), keepdim=True)\n\n        if not return_dict:\n            return (down_block_res_samples, mid_block_res_sample)\n\n        return AggregatorOutput(\n            down_block_res_samples=down_block_res_samples, mid_block_res_sample=mid_block_res_sample\n        )\n\n\ndef zero_module(module):\n    for p in module.parameters():\n        nn.init.zeros_(p)\n    return module\n"
  },
  {
    "path": "scripts/instantir/ip_adapter/__init__.py",
    "content": ""
  },
  {
    "path": "scripts/instantir/ip_adapter/attention_processor.py",
    "content": "# modified from https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py\nimport torch\nimport torch.nn as nn\nimport torch.nn.functional as F\n\nclass AdaLayerNorm(nn.Module):\n    def __init__(self, embedding_dim: int, time_embedding_dim: int = None):\n        super().__init__()\n\n        if time_embedding_dim is None:\n            time_embedding_dim = embedding_dim\n\n        self.silu = nn.SiLU()\n        self.linear = nn.Linear(time_embedding_dim, 2 * embedding_dim, bias=True)\n        nn.init.zeros_(self.linear.weight)\n        nn.init.zeros_(self.linear.bias)\n\n        self.norm = nn.LayerNorm(embedding_dim, elementwise_affine=False, eps=1e-6)\n\n    def forward(\n        self, x: torch.Tensor, timestep_embedding: torch.Tensor\n    ):\n        emb = self.linear(self.silu(timestep_embedding))\n        shift, scale = emb.view(len(x), 1, -1).chunk(2, dim=-1)\n        x = self.norm(x) * (1 + scale) + shift\n        return x\n\n\nclass AttnProcessor(nn.Module):\n    r\"\"\"\n    Default processor for performing attention-related computations.\n    \"\"\"\n\n    def __init__(\n        self,\n        hidden_size=None,\n        cross_attention_dim=None,\n    ):\n        super().__init__()\n\n    def __call__(\n        self,\n        attn,\n        hidden_states,\n        encoder_hidden_states=None,\n        attention_mask=None,\n        temb=None,\n    ):\n        residual = hidden_states\n\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n\n        batch_size, sequence_length, _ = (\n            hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape\n        )\n        attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n\n        if attn.group_norm is not None:\n            hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2)\n\n        query = attn.to_q(hidden_states)\n\n        if encoder_hidden_states is None:\n            encoder_hidden_states = hidden_states\n        elif attn.norm_cross:\n            encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states)\n\n        key = attn.to_k(encoder_hidden_states)\n        value = attn.to_v(encoder_hidden_states)\n\n        query = attn.head_to_batch_dim(query)\n        key = attn.head_to_batch_dim(key)\n        value = attn.head_to_batch_dim(value)\n\n        attention_probs = attn.get_attention_scores(query, key, attention_mask)\n        hidden_states = torch.bmm(attention_probs, value)\n        hidden_states = attn.batch_to_head_dim(hidden_states)\n\n        # linear proj\n        hidden_states = attn.to_out[0](hidden_states)\n        # dropout\n        hidden_states = attn.to_out[1](hidden_states)\n\n        if input_ndim == 4:\n            hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n\n\nclass IPAttnProcessor(nn.Module):\n    r\"\"\"\n    Attention processor for IP-Adapater.\n    Args:\n        hidden_size (`int`):\n            The hidden size of the attention layer.\n        cross_attention_dim (`int`):\n            The number of channels in the `encoder_hidden_states`.\n        scale (`float`, defaults to 1.0):\n            the weight scale of image prompt.\n        num_tokens (`int`, defaults to 4 when do ip_adapter_plus it should be 16):\n            The context length of the image features.\n    \"\"\"\n\n    def __init__(self, hidden_size, cross_attention_dim=None, scale=1.0, num_tokens=4):\n        super().__init__()\n\n        self.hidden_size = hidden_size\n        self.cross_attention_dim = cross_attention_dim\n        self.scale = scale\n        self.num_tokens = num_tokens\n\n        self.to_k_ip = nn.Linear(cross_attention_dim or hidden_size, hidden_size, bias=False)\n        self.to_v_ip = nn.Linear(cross_attention_dim or hidden_size, hidden_size, bias=False)\n\n    def __call__(\n        self,\n        attn,\n        hidden_states,\n        encoder_hidden_states=None,\n        attention_mask=None,\n        temb=None,\n    ):\n        residual = hidden_states\n\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n\n        batch_size, sequence_length, _ = (\n            hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape\n        )\n        attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n\n        if attn.group_norm is not None:\n            hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2)\n\n        query = attn.to_q(hidden_states)\n\n        if encoder_hidden_states is None:\n            encoder_hidden_states = hidden_states\n        else:\n            # get encoder_hidden_states, ip_hidden_states\n            end_pos = encoder_hidden_states.shape[1] - self.num_tokens\n            encoder_hidden_states, ip_hidden_states = (\n                encoder_hidden_states[:, :end_pos, :],\n                encoder_hidden_states[:, end_pos:, :],\n            )\n            if attn.norm_cross:\n                encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states)\n\n        key = attn.to_k(encoder_hidden_states)\n        value = attn.to_v(encoder_hidden_states)\n\n        query = attn.head_to_batch_dim(query)\n        key = attn.head_to_batch_dim(key)\n        value = attn.head_to_batch_dim(value)\n\n        attention_probs = attn.get_attention_scores(query, key, attention_mask)\n        hidden_states = torch.bmm(attention_probs, value)\n        hidden_states = attn.batch_to_head_dim(hidden_states)\n\n        # for ip-adapter\n        ip_key = self.to_k_ip(ip_hidden_states)\n        ip_value = self.to_v_ip(ip_hidden_states)\n\n        ip_key = attn.head_to_batch_dim(ip_key)\n        ip_value = attn.head_to_batch_dim(ip_value)\n\n        ip_attention_probs = attn.get_attention_scores(query, ip_key, None)\n        ip_hidden_states = torch.bmm(ip_attention_probs, ip_value)\n        ip_hidden_states = attn.batch_to_head_dim(ip_hidden_states)\n\n        hidden_states = hidden_states + self.scale * ip_hidden_states\n\n        # linear proj\n        hidden_states = attn.to_out[0](hidden_states)\n        # dropout\n        hidden_states = attn.to_out[1](hidden_states)\n\n        if input_ndim == 4:\n            hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n\n\nclass TA_IPAttnProcessor(nn.Module):\n    r\"\"\"\n    Attention processor for IP-Adapater.\n    Args:\n        hidden_size (`int`):\n            The hidden size of the attention layer.\n        cross_attention_dim (`int`):\n            The number of channels in the `encoder_hidden_states`.\n        scale (`float`, defaults to 1.0):\n            the weight scale of image prompt.\n        num_tokens (`int`, defaults to 4 when do ip_adapter_plus it should be 16):\n            The context length of the image features.\n    \"\"\"\n\n    def __init__(self, hidden_size, cross_attention_dim=None, time_embedding_dim: int = None, scale=1.0, num_tokens=4):\n        super().__init__()\n\n        self.hidden_size = hidden_size\n        self.cross_attention_dim = cross_attention_dim\n        self.scale = scale\n        self.num_tokens = num_tokens\n\n        self.to_k_ip = nn.Linear(cross_attention_dim or hidden_size, hidden_size, bias=False)\n        self.to_v_ip = nn.Linear(cross_attention_dim or hidden_size, hidden_size, bias=False)\n\n        self.ln_k_ip = AdaLayerNorm(hidden_size, time_embedding_dim)\n        self.ln_v_ip = AdaLayerNorm(hidden_size, time_embedding_dim)\n\n    def __call__(\n        self,\n        attn,\n        hidden_states,\n        encoder_hidden_states=None,\n        attention_mask=None,\n        temb=None,\n    ):\n        assert temb is not None, \"Timestep embedding is needed for a time-aware attention processor.\"\n\n        residual = hidden_states\n\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n\n        batch_size, sequence_length, _ = (\n            hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape\n        )\n        attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n\n        if attn.group_norm is not None:\n            hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2)\n\n        query = attn.to_q(hidden_states)\n\n        if encoder_hidden_states is None:\n            encoder_hidden_states = hidden_states\n        else:\n            # get encoder_hidden_states, ip_hidden_states\n            end_pos = encoder_hidden_states.shape[1] - self.num_tokens\n            encoder_hidden_states, ip_hidden_states = (\n                encoder_hidden_states[:, :end_pos, :],\n                encoder_hidden_states[:, end_pos:, :],\n            )\n            if attn.norm_cross:\n                encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states)\n\n        key = attn.to_k(encoder_hidden_states)\n        value = attn.to_v(encoder_hidden_states)\n\n        query = attn.head_to_batch_dim(query)\n        key = attn.head_to_batch_dim(key)\n        value = attn.head_to_batch_dim(value)\n\n        attention_probs = attn.get_attention_scores(query, key, attention_mask)\n        hidden_states = torch.bmm(attention_probs, value)\n        hidden_states = attn.batch_to_head_dim(hidden_states)\n\n        # for ip-adapter\n        ip_key = self.to_k_ip(ip_hidden_states)\n        ip_value = self.to_v_ip(ip_hidden_states)\n\n        # time-dependent adaLN\n        ip_key = self.ln_k_ip(ip_key, temb)\n        ip_value = self.ln_v_ip(ip_value, temb)\n\n        ip_key = attn.head_to_batch_dim(ip_key)\n        ip_value = attn.head_to_batch_dim(ip_value)\n\n        ip_attention_probs = attn.get_attention_scores(query, ip_key, None)\n        ip_hidden_states = torch.bmm(ip_attention_probs, ip_value)\n        ip_hidden_states = attn.batch_to_head_dim(ip_hidden_states)\n\n        hidden_states = hidden_states + self.scale * ip_hidden_states\n\n        # linear proj\n        hidden_states = attn.to_out[0](hidden_states)\n        # dropout\n        hidden_states = attn.to_out[1](hidden_states)\n\n        if input_ndim == 4:\n            hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n\n\nclass AttnProcessor2_0(torch.nn.Module):\n    r\"\"\"\n    Processor for implementing scaled dot-product attention (enabled by default if you're using PyTorch 2.0).\n    \"\"\"\n\n    def __init__(\n        self,\n        hidden_size=None,\n        cross_attention_dim=None,\n    ):\n        super().__init__()\n        if not hasattr(F, \"scaled_dot_product_attention\"):\n            raise ImportError(\"AttnProcessor2_0 requires PyTorch 2.0, to use it, please upgrade PyTorch to 2.0.\")\n\n    def __call__(\n        self,\n        attn,\n        hidden_states,\n        encoder_hidden_states=None,\n        attention_mask=None,\n        external_kv=None,\n        temb=None,\n    ):\n        residual = hidden_states\n\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n\n        batch_size, sequence_length, _ = (\n            hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape\n        )\n\n        if attention_mask is not None:\n            attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n            # scaled_dot_product_attention expects attention_mask shape to be\n            # (batch, heads, source_length, target_length)\n            attention_mask = attention_mask.view(batch_size, attn.heads, -1, attention_mask.shape[-1])\n\n        if attn.group_norm is not None:\n            hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2)\n\n        query = attn.to_q(hidden_states)\n\n        if encoder_hidden_states is None:\n            encoder_hidden_states = hidden_states\n        elif attn.norm_cross:\n            encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states)\n\n        key = attn.to_k(encoder_hidden_states)\n        value = attn.to_v(encoder_hidden_states)\n\n        if external_kv:\n            key = torch.cat([key, external_kv.k], axis=1)\n            value = torch.cat([value, external_kv.v], axis=1)\n\n        inner_dim = key.shape[-1]\n        head_dim = inner_dim // attn.heads\n\n        query = query.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        key = key.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        value = value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        # the output of sdp = (batch, num_heads, seq_len, head_dim)\n        hidden_states = F.scaled_dot_product_attention(\n            query, key, value, attn_mask=attention_mask, dropout_p=0.0, is_causal=False\n        )\n\n        hidden_states = hidden_states.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n        hidden_states = hidden_states.to(query.dtype)\n\n        # linear proj\n        hidden_states = attn.to_out[0](hidden_states)\n        # dropout\n        hidden_states = attn.to_out[1](hidden_states)\n\n        if input_ndim == 4:\n            hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n\n\nclass split_AttnProcessor2_0(torch.nn.Module):\n    r\"\"\"\n    Processor for implementing scaled dot-product attention (enabled by default if you're using PyTorch 2.0).\n    \"\"\"\n\n    def __init__(\n        self,\n        hidden_size=None,\n        cross_attention_dim=None,\n        time_embedding_dim=None,\n    ):\n        super().__init__()\n        if not hasattr(F, \"scaled_dot_product_attention\"):\n            raise ImportError(\"AttnProcessor2_0 requires PyTorch 2.0, to use it, please upgrade PyTorch to 2.0.\")\n\n    def __call__(\n        self,\n        attn,\n        hidden_states,\n        encoder_hidden_states=None,\n        attention_mask=None,\n        external_kv=None,\n        temb=None,\n        cat_dim=-2,\n        original_shape=None,\n    ):\n        residual = hidden_states\n\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n\n        if input_ndim == 4:\n            # 2d to sequence.\n            height, width = hidden_states.shape[-2:]\n            if cat_dim==-2 or cat_dim==2:\n                hidden_states_0 = hidden_states[:, :, :height//2, :]\n                hidden_states_1 = hidden_states[:, :, -(height//2):, :]\n            elif cat_dim==-1 or cat_dim==3:\n                hidden_states_0 = hidden_states[:, :, :, :width//2]\n                hidden_states_1 = hidden_states[:, :, :, -(width//2):]\n            batch_size, channel, height, width = hidden_states_0.shape\n            hidden_states_0 = hidden_states_0.view(batch_size, channel, height * width).transpose(1, 2)\n            hidden_states_1 = hidden_states_1.view(batch_size, channel, height * width).transpose(1, 2)\n        else:\n            # directly split sqeuence according to concat dim.\n            single_dim = original_shape[2] if cat_dim==-2 or cat_dim==2 else original_shape[1]\n            hidden_states_0 = hidden_states[:, :single_dim*single_dim,:]\n            hidden_states_1 = hidden_states[:, single_dim*(single_dim+1):,:]\n\n        hidden_states = torch.cat([hidden_states_0, hidden_states_1], dim=1)\n        batch_size, sequence_length, _ = (\n            hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape\n        )\n\n        if attention_mask is not None:\n            attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n            # scaled_dot_product_attention expects attention_mask shape to be\n            # (batch, heads, source_length, target_length)\n            attention_mask = attention_mask.view(batch_size, attn.heads, -1, attention_mask.shape[-1])\n\n        if attn.group_norm is not None:\n            hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2)\n\n        query = attn.to_q(hidden_states)\n        key = attn.to_k(hidden_states)\n        value = attn.to_v(hidden_states)\n\n        if external_kv:\n            key = torch.cat([key, external_kv.k], dim=1)\n            value = torch.cat([value, external_kv.v], dim=1)\n\n        inner_dim = key.shape[-1]\n        head_dim = inner_dim // attn.heads\n\n        query = query.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        key = key.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        value = value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        # the output of sdp = (batch, num_heads, seq_len, head_dim)\n        hidden_states = F.scaled_dot_product_attention(\n            query, key, value, attn_mask=attention_mask, dropout_p=0.0, is_causal=False\n        )\n\n        hidden_states = hidden_states.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n        hidden_states = hidden_states.to(query.dtype)\n\n        # linear proj\n        hidden_states = attn.to_out[0](hidden_states)\n        # dropout\n        hidden_states = attn.to_out[1](hidden_states)\n\n        # spatially split.\n        hidden_states_0, hidden_states_1 = hidden_states.chunk(2, dim=1)\n\n        if input_ndim == 4:\n            hidden_states_0 = hidden_states_0.transpose(-1, -2).reshape(batch_size, channel, height, width)\n            hidden_states_1 = hidden_states_1.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n            if cat_dim==-2 or cat_dim==2:\n                hidden_states_pad = torch.zeros(batch_size, channel, 1, width)\n            elif cat_dim==-1 or cat_dim==3:\n                hidden_states_pad = torch.zeros(batch_size, channel, height, 1)\n            hidden_states_pad = hidden_states_pad.to(hidden_states_0.device, dtype=hidden_states_0.dtype)\n            hidden_states = torch.cat([hidden_states_0, hidden_states_pad, hidden_states_1], dim=cat_dim)\n            assert hidden_states.shape == residual.shape, f\"{hidden_states.shape} != {residual.shape}\"\n        else:\n            batch_size, sequence_length, inner_dim = hidden_states.shape\n            hidden_states_pad = torch.zeros(batch_size, single_dim, inner_dim)\n            hidden_states_pad = hidden_states_pad.to(hidden_states_0.device, dtype=hidden_states_0.dtype)\n            hidden_states = torch.cat([hidden_states_0, hidden_states_pad, hidden_states_1], dim=1)\n            assert hidden_states.shape == residual.shape, f\"{hidden_states.shape} != {residual.shape}\"\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n\n\nclass sep_split_AttnProcessor2_0(torch.nn.Module):\n    r\"\"\"\n    Processor for implementing scaled dot-product attention (enabled by default if you're using PyTorch 2.0).\n    \"\"\"\n\n    def __init__(\n        self,\n        hidden_size=None,\n        cross_attention_dim=None,\n        time_embedding_dim=None,\n    ):\n        super().__init__()\n        if not hasattr(F, \"scaled_dot_product_attention\"):\n            raise ImportError(\"AttnProcessor2_0 requires PyTorch 2.0, to use it, please upgrade PyTorch to 2.0.\")\n        self.ln_k_ref = AdaLayerNorm(hidden_size, time_embedding_dim)\n        self.ln_v_ref = AdaLayerNorm(hidden_size, time_embedding_dim)\n        # self.hidden_size = hidden_size\n        # self.cross_attention_dim = cross_attention_dim\n        # self.scale = scale\n        # self.num_tokens = num_tokens\n\n        # self.to_q_ref = nn.Linear(cross_attention_dim or hidden_size, hidden_size, bias=False)\n        # self.to_k_ref = nn.Linear(cross_attention_dim or hidden_size, hidden_size, bias=False)\n        # self.to_v_ref = nn.Linear(cross_attention_dim or hidden_size, hidden_size, bias=False)\n\n    def __call__(\n        self,\n        attn,\n        hidden_states,\n        encoder_hidden_states=None,\n        attention_mask=None,\n        external_kv=None,\n        temb=None,\n        cat_dim=-2,\n        original_shape=None,\n        ref_scale=1.0,\n    ):\n        residual = hidden_states\n\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n\n        if input_ndim == 4:\n            # 2d to sequence.\n            height, width = hidden_states.shape[-2:]\n            if cat_dim==-2 or cat_dim==2:\n                hidden_states_0 = hidden_states[:, :, :height//2, :]\n                hidden_states_1 = hidden_states[:, :, -(height//2):, :]\n            elif cat_dim==-1 or cat_dim==3:\n                hidden_states_0 = hidden_states[:, :, :, :width//2]\n                hidden_states_1 = hidden_states[:, :, :, -(width//2):]\n            batch_size, channel, height, width = hidden_states_0.shape\n            hidden_states_0 = hidden_states_0.view(batch_size, channel, height * width).transpose(1, 2)\n            hidden_states_1 = hidden_states_1.view(batch_size, channel, height * width).transpose(1, 2)\n        else:\n            # directly split sqeuence according to concat dim.\n            single_dim = original_shape[2] if cat_dim==-2 or cat_dim==2 else original_shape[1]\n            hidden_states_0 = hidden_states[:, :single_dim*single_dim,:]\n            hidden_states_1 = hidden_states[:, single_dim*(single_dim+1):,:]\n\n        batch_size, sequence_length, _ = (\n            hidden_states_0.shape if encoder_hidden_states is None else encoder_hidden_states.shape\n        )\n\n        if attention_mask is not None:\n            attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n            # scaled_dot_product_attention expects attention_mask shape to be\n            # (batch, heads, source_length, target_length)\n            attention_mask = attention_mask.view(batch_size, attn.heads, -1, attention_mask.shape[-1])\n\n        if attn.group_norm is not None:\n            hidden_states_0 = attn.group_norm(hidden_states_0.transpose(1, 2)).transpose(1, 2)\n            hidden_states_1 = attn.group_norm(hidden_states_1.transpose(1, 2)).transpose(1, 2)\n\n        query_0 = attn.to_q(hidden_states_0)\n        query_1 = attn.to_q(hidden_states_1)\n        key_0 = attn.to_k(hidden_states_0)\n        key_1 = attn.to_k(hidden_states_1)\n        value_0 = attn.to_v(hidden_states_0)\n        value_1 = attn.to_v(hidden_states_1)\n\n        # time-dependent adaLN\n        key_1 = self.ln_k_ref(key_1, temb)\n        value_1 = self.ln_v_ref(value_1, temb)\n\n        if external_kv:\n            key_1 = torch.cat([key_1, external_kv.k], dim=1)\n            value_1 = torch.cat([value_1, external_kv.v], dim=1)\n\n        inner_dim = key_0.shape[-1]\n        head_dim = inner_dim // attn.heads\n\n        query_0 = query_0.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        query_1 = query_1.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        key_0 = key_0.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        key_1 = key_1.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        value_0 = value_0.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        value_1 = value_1.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        # the output of sdp = (batch, num_heads, seq_len, head_dim)\n        hidden_states_0 = F.scaled_dot_product_attention(\n            query_0, key_0, value_0, attn_mask=attention_mask, dropout_p=0.0, is_causal=False\n        )\n        hidden_states_1 = F.scaled_dot_product_attention(\n            query_1, key_1, value_1, attn_mask=attention_mask, dropout_p=0.0, is_causal=False\n        )\n\n        # cross-attn\n        _hidden_states_0 = F.scaled_dot_product_attention(\n            query_0, key_1, value_1, attn_mask=attention_mask, dropout_p=0.0, is_causal=False\n        )\n        hidden_states_0 = hidden_states_0 + ref_scale * _hidden_states_0 * 10\n\n        _hidden_states_1 = F.scaled_dot_product_attention(\n            query_1, key_0, value_0, attn_mask=attention_mask, dropout_p=0.0, is_causal=False\n        )\n        hidden_states_1 = hidden_states_1 + ref_scale * _hidden_states_1\n\n        hidden_states_0 = hidden_states_0.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n        hidden_states_1 = hidden_states_1.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n        hidden_states_0 = hidden_states_0.to(query_0.dtype)\n        hidden_states_1 = hidden_states_1.to(query_1.dtype)\n\n\n        # linear proj\n        hidden_states_0 = attn.to_out[0](hidden_states_0)\n        hidden_states_1 = attn.to_out[0](hidden_states_1)\n        # dropout\n        hidden_states_0 = attn.to_out[1](hidden_states_0)\n        hidden_states_1 = attn.to_out[1](hidden_states_1)\n\n\n        if input_ndim == 4:\n            hidden_states_0 = hidden_states_0.transpose(-1, -2).reshape(batch_size, channel, height, width)\n            hidden_states_1 = hidden_states_1.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n            if cat_dim==-2 or cat_dim==2:\n                hidden_states_pad = torch.zeros(batch_size, channel, 1, width)\n            elif cat_dim==-1 or cat_dim==3:\n                hidden_states_pad = torch.zeros(batch_size, channel, height, 1)\n            hidden_states_pad = hidden_states_pad.to(hidden_states_0.device, dtype=hidden_states_0.dtype)\n            hidden_states = torch.cat([hidden_states_0, hidden_states_pad, hidden_states_1], dim=cat_dim)\n            assert hidden_states.shape == residual.shape, f\"{hidden_states.shape} != {residual.shape}\"\n        else:\n            batch_size, sequence_length, inner_dim = hidden_states.shape\n            hidden_states_pad = torch.zeros(batch_size, single_dim, inner_dim)\n            hidden_states_pad = hidden_states_pad.to(hidden_states_0.device, dtype=hidden_states_0.dtype)\n            hidden_states = torch.cat([hidden_states_0, hidden_states_pad, hidden_states_1], dim=1)\n            assert hidden_states.shape == residual.shape, f\"{hidden_states.shape} != {residual.shape}\"\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n\n\nclass AdditiveKV_AttnProcessor2_0(torch.nn.Module):\n    r\"\"\"\n    Processor for implementing scaled dot-product attention (enabled by default if you're using PyTorch 2.0).\n    \"\"\"\n\n    def __init__(\n        self,\n        hidden_size: int = None,\n        cross_attention_dim: int = None,\n        time_embedding_dim: int = None,\n        additive_scale: float = 1.0,\n    ):\n        super().__init__()\n        if not hasattr(F, \"scaled_dot_product_attention\"):\n            raise ImportError(\"AttnProcessor2_0 requires PyTorch 2.0, to use it, please upgrade PyTorch to 2.0.\")\n        self.additive_scale = additive_scale\n\n    def __call__(\n        self,\n        attn,\n        hidden_states,\n        encoder_hidden_states=None,\n        external_kv=None,\n        attention_mask=None,\n        temb=None,\n    ):\n        assert temb is not None, \"Timestep embedding is needed for a time-aware attention processor.\"\n\n        residual = hidden_states\n\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n\n        batch_size, sequence_length, _ = (\n            hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape\n        )\n\n        if attention_mask is not None:\n            attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n            # scaled_dot_product_attention expects attention_mask shape to be\n            # (batch, heads, source_length, target_length)\n            attention_mask = attention_mask.view(batch_size, attn.heads, -1, attention_mask.shape[-1])\n\n        if attn.group_norm is not None:\n            hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2)\n\n        query = attn.to_q(hidden_states)\n\n        if encoder_hidden_states is None:\n            encoder_hidden_states = hidden_states\n        elif attn.norm_cross:\n            encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states)\n\n        key = attn.to_k(encoder_hidden_states)\n        value = attn.to_v(encoder_hidden_states)\n\n        inner_dim = key.shape[-1]\n        head_dim = inner_dim // attn.heads\n\n        query = query.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        key = key.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        value = value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        # the output of sdp = (batch, num_heads, seq_len, head_dim)\n        hidden_states = F.scaled_dot_product_attention(\n            query, key, value, attn_mask=attention_mask, dropout_p=0.0, is_causal=False\n        )\n\n        hidden_states = hidden_states.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n\n        if external_kv:\n            key = external_kv.k\n            value = external_kv.v\n\n            key = key.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n            value = value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n            external_attn_output = F.scaled_dot_product_attention(\n                query, key, value, attn_mask=attention_mask, dropout_p=0.0, is_causal=False\n            )\n\n            external_attn_output = external_attn_output.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n            hidden_states = hidden_states + self.additive_scale * external_attn_output\n\n        hidden_states = hidden_states.to(query.dtype)\n\n        # linear proj\n        hidden_states = attn.to_out[0](hidden_states)\n        # dropout\n        hidden_states = attn.to_out[1](hidden_states)\n\n        if input_ndim == 4:\n            hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n\n\nclass TA_AdditiveKV_AttnProcessor2_0(torch.nn.Module):\n    r\"\"\"\n    Processor for implementing scaled dot-product attention (enabled by default if you're using PyTorch 2.0).\n    \"\"\"\n\n    def __init__(\n        self,\n        hidden_size: int = None,\n        cross_attention_dim: int = None,\n        time_embedding_dim: int = None,\n        additive_scale: float = 1.0,\n    ):\n        super().__init__()\n        if not hasattr(F, \"scaled_dot_product_attention\"):\n            raise ImportError(\"AttnProcessor2_0 requires PyTorch 2.0, to use it, please upgrade PyTorch to 2.0.\")\n        self.ln_k = AdaLayerNorm(hidden_size, time_embedding_dim)\n        self.ln_v = AdaLayerNorm(hidden_size, time_embedding_dim)\n        self.additive_scale = additive_scale\n\n    def __call__(\n        self,\n        attn,\n        hidden_states,\n        encoder_hidden_states=None,\n        external_kv=None,\n        attention_mask=None,\n        temb=None,\n    ):\n        assert temb is not None, \"Timestep embedding is needed for a time-aware attention processor.\"\n\n        residual = hidden_states\n\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n\n        batch_size, sequence_length, _ = (\n            hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape\n        )\n\n        if attention_mask is not None:\n            attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n            # scaled_dot_product_attention expects attention_mask shape to be\n            # (batch, heads, source_length, target_length)\n            attention_mask = attention_mask.view(batch_size, attn.heads, -1, attention_mask.shape[-1])\n\n        if attn.group_norm is not None:\n            hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2)\n\n        query = attn.to_q(hidden_states)\n\n        if encoder_hidden_states is None:\n            encoder_hidden_states = hidden_states\n        elif attn.norm_cross:\n            encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states)\n\n        key = attn.to_k(encoder_hidden_states)\n        value = attn.to_v(encoder_hidden_states)\n\n        inner_dim = key.shape[-1]\n        head_dim = inner_dim // attn.heads\n\n        query = query.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        key = key.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        value = value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        # the output of sdp = (batch, num_heads, seq_len, head_dim)\n        hidden_states = F.scaled_dot_product_attention(\n            query, key, value, attn_mask=attention_mask, dropout_p=0.0, is_causal=False\n        )\n\n        hidden_states = hidden_states.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n\n        if external_kv:\n            key = external_kv.k\n            value = external_kv.v\n\n            # time-dependent adaLN\n            key = self.ln_k(key, temb)\n            value = self.ln_v(value, temb)\n\n            key = key.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n            value = value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n            external_attn_output = F.scaled_dot_product_attention(\n                query, key, value, attn_mask=attention_mask, dropout_p=0.0, is_causal=False\n            )\n\n            external_attn_output = external_attn_output.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n            hidden_states = hidden_states + self.additive_scale * external_attn_output\n\n        hidden_states = hidden_states.to(query.dtype)\n\n        # linear proj\n        hidden_states = attn.to_out[0](hidden_states)\n        # dropout\n        hidden_states = attn.to_out[1](hidden_states)\n\n        if input_ndim == 4:\n            hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n\n\nclass IPAttnProcessor2_0(torch.nn.Module):\n    r\"\"\"\n    Attention processor for IP-Adapater for PyTorch 2.0.\n    Args:\n        hidden_size (`int`):\n            The hidden size of the attention layer.\n        cross_attention_dim (`int`):\n            The number of channels in the `encoder_hidden_states`.\n        scale (`float`, defaults to 1.0):\n            the weight scale of image prompt.\n        num_tokens (`int`, defaults to 4 when do ip_adapter_plus it should be 16):\n            The context length of the image features.\n    \"\"\"\n\n    def __init__(self, hidden_size, cross_attention_dim=None, scale=1.0, num_tokens=4):\n        super().__init__()\n\n        if not hasattr(F, \"scaled_dot_product_attention\"):\n            raise ImportError(\"AttnProcessor2_0 requires PyTorch 2.0, to use it, please upgrade PyTorch to 2.0.\")\n\n        self.hidden_size = hidden_size\n        self.cross_attention_dim = cross_attention_dim\n        self.scale = scale\n        self.num_tokens = num_tokens\n\n        self.to_k_ip = nn.Linear(cross_attention_dim or hidden_size, hidden_size, bias=False)\n        self.to_v_ip = nn.Linear(cross_attention_dim or hidden_size, hidden_size, bias=False)\n\n    def __call__(\n        self,\n        attn,\n        hidden_states,\n        encoder_hidden_states=None,\n        attention_mask=None,\n        temb=None,\n    ):\n        residual = hidden_states\n\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n\n        if isinstance(encoder_hidden_states, tuple):\n            # FIXME: now hard coded to single image prompt.\n            batch_size, _, hid_dim = encoder_hidden_states[0].shape\n            ip_tokens = encoder_hidden_states[1][0]\n            encoder_hidden_states = torch.cat([encoder_hidden_states[0], ip_tokens], dim=1)\n\n        batch_size, sequence_length, _ = (\n            hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape\n        )\n\n        if attention_mask is not None:\n            attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n            # scaled_dot_product_attention expects attention_mask shape to be\n            # (batch, heads, source_length, target_length)\n            attention_mask = attention_mask.view(batch_size, attn.heads, -1, attention_mask.shape[-1])\n\n        if attn.group_norm is not None:\n            hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2)\n\n        query = attn.to_q(hidden_states)\n\n        if encoder_hidden_states is None:\n            encoder_hidden_states = hidden_states\n        else:\n            # get encoder_hidden_states, ip_hidden_states\n            end_pos = encoder_hidden_states.shape[1] - self.num_tokens\n            encoder_hidden_states, ip_hidden_states = (\n                encoder_hidden_states[:, :end_pos, :],\n                encoder_hidden_states[:, end_pos:, :],\n            )\n            if attn.norm_cross:\n                encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states)\n\n        key = attn.to_k(encoder_hidden_states)\n        value = attn.to_v(encoder_hidden_states)\n\n        inner_dim = key.shape[-1]\n        head_dim = inner_dim // attn.heads\n\n        query = query.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        key = key.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        value = value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        # the output of sdp = (batch, num_heads, seq_len, head_dim)\n        hidden_states = F.scaled_dot_product_attention(\n            query, key, value, attn_mask=attention_mask, dropout_p=0.0, is_causal=False\n        )\n\n        hidden_states = hidden_states.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n        hidden_states = hidden_states.to(query.dtype)\n\n        # for ip-adapter\n        ip_key = self.to_k_ip(ip_hidden_states)\n        ip_value = self.to_v_ip(ip_hidden_states)\n\n        ip_key = ip_key.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        ip_value = ip_value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        # the output of sdp = (batch, num_heads, seq_len, head_dim)\n        ip_hidden_states = F.scaled_dot_product_attention(\n            query, ip_key, ip_value, attn_mask=None, dropout_p=0.0, is_causal=False\n        )\n\n        ip_hidden_states = ip_hidden_states.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n        ip_hidden_states = ip_hidden_states.to(query.dtype)\n\n        hidden_states = hidden_states + self.scale * ip_hidden_states\n\n        # linear proj\n        hidden_states = attn.to_out[0](hidden_states)\n        # dropout\n        hidden_states = attn.to_out[1](hidden_states)\n\n        if input_ndim == 4:\n            hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n\n\nclass TA_IPAttnProcessor2_0(torch.nn.Module):\n    r\"\"\"\n    Attention processor for IP-Adapater for PyTorch 2.0.\n    Args:\n        hidden_size (`int`):\n            The hidden size of the attention layer.\n        cross_attention_dim (`int`):\n            The number of channels in the `encoder_hidden_states`.\n        scale (`float`, defaults to 1.0):\n            the weight scale of image prompt.\n        num_tokens (`int`, defaults to 4 when do ip_adapter_plus it should be 16):\n            The context length of the image features.\n    \"\"\"\n\n    def __init__(self, hidden_size, cross_attention_dim=None, time_embedding_dim: int = None, scale=1.0, num_tokens=4):\n        super().__init__()\n\n        if not hasattr(F, \"scaled_dot_product_attention\"):\n            raise ImportError(\"AttnProcessor2_0 requires PyTorch 2.0, to use it, please upgrade PyTorch to 2.0.\")\n\n        self.hidden_size = hidden_size\n        self.cross_attention_dim = cross_attention_dim\n        self.scale = scale\n        self.num_tokens = num_tokens\n\n        self.to_k_ip = nn.Linear(cross_attention_dim or hidden_size, hidden_size, bias=False)\n        self.to_v_ip = nn.Linear(cross_attention_dim or hidden_size, hidden_size, bias=False)\n        self.ln_k_ip = AdaLayerNorm(hidden_size, time_embedding_dim)\n        self.ln_v_ip = AdaLayerNorm(hidden_size, time_embedding_dim)\n\n    def __call__(\n        self,\n        attn,\n        hidden_states,\n        encoder_hidden_states=None,\n        attention_mask=None,\n        external_kv=None,\n        temb=None,\n    ):\n        assert temb is not None, \"Timestep embedding is needed for a time-aware attention processor.\"\n\n        residual = hidden_states\n\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n\n        if not isinstance(encoder_hidden_states, tuple):\n            # get encoder_hidden_states, ip_hidden_states\n            end_pos = encoder_hidden_states.shape[1] - self.num_tokens\n            encoder_hidden_states, ip_hidden_states = (\n                encoder_hidden_states[:, :end_pos, :],\n                encoder_hidden_states[:, end_pos:, :],\n            )\n        else:\n            # FIXME: now hard coded to single image prompt.\n            batch_size, _, hid_dim = encoder_hidden_states[0].shape\n            ip_hidden_states = encoder_hidden_states[1][0]\n            encoder_hidden_states = encoder_hidden_states[0]\n        batch_size, sequence_length, _ = (\n            hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape\n        )\n\n        if attention_mask is not None:\n            attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n            # scaled_dot_product_attention expects attention_mask shape to be\n            # (batch, heads, source_length, target_length)\n            attention_mask = attention_mask.view(batch_size, attn.heads, -1, attention_mask.shape[-1])\n\n        if attn.group_norm is not None:\n            hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2)\n\n        query = attn.to_q(hidden_states)\n\n        if encoder_hidden_states is None:\n            encoder_hidden_states = hidden_states\n        else:\n            if attn.norm_cross:\n                encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states)\n\n        key = attn.to_k(encoder_hidden_states)\n        value = attn.to_v(encoder_hidden_states)\n\n        if external_kv:\n            key = torch.cat([key, external_kv.k], axis=1)\n            value = torch.cat([value, external_kv.v], axis=1)\n\n        inner_dim = key.shape[-1]\n        head_dim = inner_dim // attn.heads\n\n        query = query.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        key = key.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        value = value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        # the output of sdp = (batch, num_heads, seq_len, head_dim)\n        hidden_states = F.scaled_dot_product_attention(\n            query, key, value, attn_mask=attention_mask, dropout_p=0.0, is_causal=False\n        )\n\n        hidden_states = hidden_states.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n        hidden_states = hidden_states.to(query.dtype)\n\n        # for ip-adapter\n        ip_key = self.to_k_ip(ip_hidden_states)\n        ip_value = self.to_v_ip(ip_hidden_states)\n\n        # time-dependent adaLN\n        ip_key = self.ln_k_ip(ip_key, temb)\n        ip_value = self.ln_v_ip(ip_value, temb)\n\n        ip_key = ip_key.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        ip_value = ip_value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        # the output of sdp = (batch, num_heads, seq_len, head_dim)\n        ip_hidden_states = F.scaled_dot_product_attention(\n            query, ip_key, ip_value, attn_mask=None, dropout_p=0.0, is_causal=False\n        )\n\n        ip_hidden_states = ip_hidden_states.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n        ip_hidden_states = ip_hidden_states.to(query.dtype)\n\n        hidden_states = hidden_states + self.scale * ip_hidden_states\n\n        # linear proj\n        hidden_states = attn.to_out[0](hidden_states)\n        # dropout\n        hidden_states = attn.to_out[1](hidden_states)\n\n        if input_ndim == 4:\n            hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n\n\n## for controlnet\nclass CNAttnProcessor:\n    r\"\"\"\n    Default processor for performing attention-related computations.\n    \"\"\"\n\n    def __init__(self, num_tokens=4):\n        self.num_tokens = num_tokens\n\n    def __call__(self, attn, hidden_states, encoder_hidden_states=None, attention_mask=None, temb=None):\n        residual = hidden_states\n\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n\n        batch_size, sequence_length, _ = (\n            hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape\n        )\n        attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n\n        if attn.group_norm is not None:\n            hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2)\n\n        query = attn.to_q(hidden_states)\n\n        if encoder_hidden_states is None:\n            encoder_hidden_states = hidden_states\n        else:\n            end_pos = encoder_hidden_states.shape[1] - self.num_tokens\n            encoder_hidden_states = encoder_hidden_states[:, :end_pos]  # only use text\n            if attn.norm_cross:\n                encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states)\n\n        key = attn.to_k(encoder_hidden_states)\n        value = attn.to_v(encoder_hidden_states)\n\n        query = attn.head_to_batch_dim(query)\n        key = attn.head_to_batch_dim(key)\n        value = attn.head_to_batch_dim(value)\n\n        attention_probs = attn.get_attention_scores(query, key, attention_mask)\n        hidden_states = torch.bmm(attention_probs, value)\n        hidden_states = attn.batch_to_head_dim(hidden_states)\n\n        # linear proj\n        hidden_states = attn.to_out[0](hidden_states)\n        # dropout\n        hidden_states = attn.to_out[1](hidden_states)\n\n        if input_ndim == 4:\n            hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n\n\nclass CNAttnProcessor2_0:\n    r\"\"\"\n    Processor for implementing scaled dot-product attention (enabled by default if you're using PyTorch 2.0).\n    \"\"\"\n\n    def __init__(self, num_tokens=4):\n        if not hasattr(F, \"scaled_dot_product_attention\"):\n            raise ImportError(\"AttnProcessor2_0 requires PyTorch 2.0, to use it, please upgrade PyTorch to 2.0.\")\n        self.num_tokens = num_tokens\n\n    def __call__(\n        self,\n        attn,\n        hidden_states,\n        encoder_hidden_states=None,\n        attention_mask=None,\n        temb=None,\n    ):\n        residual = hidden_states\n\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n\n        batch_size, sequence_length, _ = (\n            hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape\n        )\n\n        if attention_mask is not None:\n            attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n            # scaled_dot_product_attention expects attention_mask shape to be\n            # (batch, heads, source_length, target_length)\n            attention_mask = attention_mask.view(batch_size, attn.heads, -1, attention_mask.shape[-1])\n\n        if attn.group_norm is not None:\n            hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2)\n\n        query = attn.to_q(hidden_states)\n\n        if encoder_hidden_states is None:\n            encoder_hidden_states = hidden_states\n        else:\n            end_pos = encoder_hidden_states.shape[1] - self.num_tokens\n            encoder_hidden_states = encoder_hidden_states[:, :end_pos]  # only use text\n            if attn.norm_cross:\n                encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states)\n\n        key = attn.to_k(encoder_hidden_states)\n        value = attn.to_v(encoder_hidden_states)\n\n        inner_dim = key.shape[-1]\n        head_dim = inner_dim // attn.heads\n\n        query = query.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        key = key.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        value = value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        # the output of sdp = (batch, num_heads, seq_len, head_dim)\n        hidden_states = F.scaled_dot_product_attention(\n            query, key, value, attn_mask=attention_mask, dropout_p=0.0, is_causal=False\n        )\n\n        hidden_states = hidden_states.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n        hidden_states = hidden_states.to(query.dtype)\n\n        # linear proj\n        hidden_states = attn.to_out[0](hidden_states)\n        # dropout\n        hidden_states = attn.to_out[1](hidden_states)\n\n        if input_ndim == 4:\n            hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n\n\ndef init_attn_proc(unet, ip_adapter_tokens=16, use_lcm=False, use_adaln=True, use_external_kv=False):\n    attn_procs = {}\n    unet_sd = unet.state_dict()\n    for name in unet.attn_processors.keys():\n        cross_attention_dim = None if name.endswith(\"attn1.processor\") else unet.config.cross_attention_dim\n        if name.startswith(\"mid_block\"):\n            hidden_size = unet.config.block_out_channels[-1]\n        elif name.startswith(\"up_blocks\"):\n            block_id = int(name[len(\"up_blocks.\")])\n            hidden_size = list(reversed(unet.config.block_out_channels))[block_id]\n        elif name.startswith(\"down_blocks\"):\n            block_id = int(name[len(\"down_blocks.\")])\n            hidden_size = unet.config.block_out_channels[block_id]\n        if cross_attention_dim is None:\n            if use_external_kv:\n                attn_procs[name] = AdditiveKV_AttnProcessor2_0(\n                    hidden_size=hidden_size,\n                    cross_attention_dim=cross_attention_dim,\n                    time_embedding_dim=1280,\n                ) if hasattr(F, \"scaled_dot_product_attention\") else AdditiveKV_AttnProcessor()\n            else:\n                attn_procs[name] = AttnProcessor2_0() if hasattr(F, \"scaled_dot_product_attention\") else AttnProcessor()\n        else:\n            if use_adaln:\n                layer_name = name.split(\".processor\")[0]\n                if use_lcm:\n                    weights = {\n                        \"to_k_ip.weight\": unet_sd[layer_name + \".to_k.base_layer.weight\"],\n                        \"to_v_ip.weight\": unet_sd[layer_name + \".to_v.base_layer.weight\"],\n                    }\n                else:\n                    weights = {\n                        \"to_k_ip.weight\": unet_sd[layer_name + \".to_k.weight\"],\n                        \"to_v_ip.weight\": unet_sd[layer_name + \".to_v.weight\"],\n                    }\n                attn_procs[name] = TA_IPAttnProcessor2_0(\n                        hidden_size=hidden_size,\n                        cross_attention_dim=cross_attention_dim,\n                        num_tokens=ip_adapter_tokens,\n                        time_embedding_dim=1280,\n                    ) if hasattr(F, \"scaled_dot_product_attention\") else \\\n                    TA_IPAttnProcessor(\n                        hidden_size=hidden_size,\n                        cross_attention_dim=cross_attention_dim,\n                        num_tokens=ip_adapter_tokens,\n                        time_embedding_dim=1280,\n                    )\n                attn_procs[name].load_state_dict(weights, strict=False)\n            else:\n                attn_procs[name] = AttnProcessor2_0() if hasattr(F, \"scaled_dot_product_attention\") else AttnProcessor()\n\n    return attn_procs\n\n\ndef init_aggregator_attn_proc(unet, use_adaln=False, split_attn=False):\n    attn_procs = {}\n    unet_sd = unet.state_dict()\n    for name in unet.attn_processors.keys():\n        # get layer name and hidden dim\n        cross_attention_dim = None if name.endswith(\"attn1.processor\") else unet.config.cross_attention_dim\n        if name.startswith(\"mid_block\"):\n            hidden_size = unet.config.block_out_channels[-1]\n        elif name.startswith(\"up_blocks\"):\n            block_id = int(name[len(\"up_blocks.\")])\n            hidden_size = list(reversed(unet.config.block_out_channels))[block_id]\n        elif name.startswith(\"down_blocks\"):\n            block_id = int(name[len(\"down_blocks.\")])\n            hidden_size = unet.config.block_out_channels[block_id]\n        # init attn proc\n        if split_attn:\n            # layer_name = name.split(\".processor\")[0]\n            # weights = {\n            #     \"to_q_ref.weight\": unet_sd[layer_name + \".to_q.weight\"],\n            #     \"to_k_ref.weight\": unet_sd[layer_name + \".to_k.weight\"],\n            #     \"to_v_ref.weight\": unet_sd[layer_name + \".to_v.weight\"],\n            # }\n            attn_procs[name] = (\n                sep_split_AttnProcessor2_0(\n                    hidden_size=hidden_size,\n                    cross_attention_dim=hidden_size,\n                    time_embedding_dim=1280,\n                )\n                if use_adaln\n                else split_AttnProcessor2_0(\n                    hidden_size=hidden_size,\n                    cross_attention_dim=cross_attention_dim,\n                    time_embedding_dim=1280,\n                )\n            )\n            # attn_procs[name].load_state_dict(weights, strict=False)\n        else:\n            attn_procs[name] = (\n                AttnProcessor2_0(\n                    hidden_size=hidden_size,\n                    cross_attention_dim=hidden_size,\n                )\n                if hasattr(F, \"scaled_dot_product_attention\")\n                else AttnProcessor(\n                    hidden_size=hidden_size,\n                    cross_attention_dim=hidden_size,\n                )\n            )\n\n    return attn_procs\n"
  },
  {
    "path": "scripts/instantir/ip_adapter/ip_adapter.py",
    "content": "import os\nimport torch\nfrom typing import List\nfrom collections import namedtuple, OrderedDict\n\ndef is_torch2_available():\n    return hasattr(torch.nn.functional, \"scaled_dot_product_attention\")\n\nif is_torch2_available():\n    from .attention_processor import (\n        AttnProcessor2_0 as AttnProcessor,\n    )\n    from .attention_processor import (\n        CNAttnProcessor2_0 as CNAttnProcessor,\n    )\n    from .attention_processor import (\n        IPAttnProcessor2_0 as IPAttnProcessor,\n    )\n    from .attention_processor import (\n        TA_IPAttnProcessor2_0 as TA_IPAttnProcessor,\n    )\nelse:\n    from .attention_processor import AttnProcessor, CNAttnProcessor, IPAttnProcessor, TA_IPAttnProcessor\n\n\nclass ImageProjModel(torch.nn.Module):\n    \"\"\"Projection Model\"\"\"\n\n    def __init__(self, cross_attention_dim=2048, clip_embeddings_dim=1280, clip_extra_context_tokens=4):\n        super().__init__()\n\n        self.cross_attention_dim = cross_attention_dim\n        self.clip_extra_context_tokens = clip_extra_context_tokens\n        self.proj = torch.nn.Linear(clip_embeddings_dim, self.clip_extra_context_tokens * cross_attention_dim)\n        self.norm = torch.nn.LayerNorm(cross_attention_dim)\n\n    def forward(self, image_embeds):\n        embeds = image_embeds\n        clip_extra_context_tokens = self.proj(embeds).reshape(\n            -1, self.clip_extra_context_tokens, self.cross_attention_dim\n        )\n        clip_extra_context_tokens = self.norm(clip_extra_context_tokens)\n        return clip_extra_context_tokens\n\n\nclass MLPProjModel(torch.nn.Module):\n    \"\"\"SD model with image prompt\"\"\"\n    def __init__(self, cross_attention_dim=2048, clip_embeddings_dim=1280):\n        super().__init__()\n\n        self.proj = torch.nn.Sequential(\n            torch.nn.Linear(clip_embeddings_dim, clip_embeddings_dim),\n            torch.nn.GELU(),\n            torch.nn.Linear(clip_embeddings_dim, cross_attention_dim),\n            torch.nn.LayerNorm(cross_attention_dim)\n        )\n\n    def forward(self, image_embeds):\n        clip_extra_context_tokens = self.proj(image_embeds)\n        return clip_extra_context_tokens\n\n\nclass MultiIPAdapterImageProjection(torch.nn.Module):\n    def __init__(self, IPAdapterImageProjectionLayers):\n        super().__init__()\n        self.image_projection_layers = torch.nn.ModuleList(IPAdapterImageProjectionLayers)\n\n    def forward(self, image_embeds: List[torch.FloatTensor]):\n        projected_image_embeds = []\n\n        # currently, we accept `image_embeds` as\n        #  1. a tensor (deprecated) with shape [batch_size, embed_dim] or [batch_size, sequence_length, embed_dim]\n        #  2. list of `n` tensors where `n` is number of ip-adapters, each tensor can hae shape [batch_size, num_images, embed_dim] or [batch_size, num_images, sequence_length, embed_dim]\n        if not isinstance(image_embeds, list):\n            image_embeds = [image_embeds.unsqueeze(1)]\n\n        if len(image_embeds) != len(self.image_projection_layers):\n            raise ValueError(\n                f\"image_embeds must have the same length as image_projection_layers, got {len(image_embeds)} and {len(self.image_projection_layers)}\"\n            )\n\n        for image_embed, image_projection_layer in zip(image_embeds, self.image_projection_layers):\n            batch_size, num_images = image_embed.shape[0], image_embed.shape[1]\n            image_embed = image_embed.reshape((batch_size * num_images,) + image_embed.shape[2:])\n            image_embed = image_projection_layer(image_embed)\n            # image_embed = image_embed.reshape((batch_size, num_images) + image_embed.shape[1:])\n\n            projected_image_embeds.append(image_embed)\n\n        return projected_image_embeds\n\n\nclass IPAdapter(torch.nn.Module):\n    \"\"\"IP-Adapter\"\"\"\n    def __init__(self, unet, image_proj_model, adapter_modules, ckpt_path=None):\n        super().__init__()\n        self.unet = unet\n        self.image_proj = image_proj_model\n        self.ip_adapter = adapter_modules\n\n        if ckpt_path is not None:\n            self.load_from_checkpoint(ckpt_path)\n\n    def forward(self, noisy_latents, timesteps, encoder_hidden_states, image_embeds):\n        ip_tokens = self.image_proj(image_embeds)\n        encoder_hidden_states = torch.cat([encoder_hidden_states, ip_tokens], dim=1)\n        # Predict the noise residual\n        noise_pred = self.unet(noisy_latents, timesteps, encoder_hidden_states).sample\n        return noise_pred\n\n    def load_from_checkpoint(self, ckpt_path: str):\n        # Calculate original checksums\n        orig_ip_proj_sum = torch.sum(torch.stack([torch.sum(p) for p in self.image_proj.parameters()]))\n        orig_adapter_sum = torch.sum(torch.stack([torch.sum(p) for p in self.ip_adapter.parameters()]))\n\n        state_dict = torch.load(ckpt_path, map_location=\"cpu\")\n        keys = list(state_dict.keys())\n        if keys != [\"image_proj\", \"ip_adapter\"]:\n            state_dict = revise_state_dict(state_dict)\n\n        # Load state dict for image_proj_model and adapter_modules\n        self.image_proj.load_state_dict(state_dict[\"image_proj\"], strict=True)\n        self.ip_adapter.load_state_dict(state_dict[\"ip_adapter\"], strict=True)\n\n        # Calculate new checksums\n        new_ip_proj_sum = torch.sum(torch.stack([torch.sum(p) for p in self.image_proj.parameters()]))\n        new_adapter_sum = torch.sum(torch.stack([torch.sum(p) for p in self.ip_adapter.parameters()]))\n\n        # Verify if the weights have changed\n        assert orig_ip_proj_sum != new_ip_proj_sum, \"Weights of image_proj_model did not change!\"\n        assert orig_adapter_sum != new_adapter_sum, \"Weights of adapter_modules did not change!\"\n\n\nclass IPAdapterPlus(torch.nn.Module):\n    \"\"\"IP-Adapter\"\"\"\n    def __init__(self, unet, image_proj_model, adapter_modules, ckpt_path=None):\n        super().__init__()\n        self.unet = unet\n        self.image_proj = image_proj_model\n        self.ip_adapter = adapter_modules\n\n        if ckpt_path is not None:\n            self.load_from_checkpoint(ckpt_path)\n\n    def forward(self, noisy_latents, timesteps, encoder_hidden_states, image_embeds):\n        ip_tokens = self.image_proj(image_embeds)\n        encoder_hidden_states = torch.cat([encoder_hidden_states, ip_tokens], dim=1)\n        # Predict the noise residual\n        noise_pred = self.unet(noisy_latents, timesteps, encoder_hidden_states).sample\n        return noise_pred\n\n    def load_from_checkpoint(self, ckpt_path: str):\n        # Calculate original checksums\n        orig_ip_proj_sum = torch.sum(torch.stack([torch.sum(p) for p in self.image_proj.parameters()]))\n        orig_adapter_sum = torch.sum(torch.stack([torch.sum(p) for p in self.ip_adapter.parameters()]))\n        org_unet_sum = []\n        for attn_name, attn_proc in self.unet.attn_processors.items():\n            if isinstance(attn_proc, (TA_IPAttnProcessor, IPAttnProcessor)):\n                org_unet_sum.append(torch.sum(torch.stack([torch.sum(p) for p in attn_proc.parameters()])))\n        org_unet_sum = torch.sum(torch.stack(org_unet_sum))\n\n        state_dict = torch.load(ckpt_path, map_location=\"cpu\")\n        keys = list(state_dict.keys())\n        if keys != [\"image_proj\", \"ip_adapter\"]:\n            state_dict = revise_state_dict(state_dict)\n\n        # Check if 'latents' exists in both the saved state_dict and the current model's state_dict\n        strict_load_image_proj_model = True\n        if \"latents\" in state_dict[\"image_proj\"] and \"latents\" in self.image_proj.state_dict():\n            # Check if the shapes are mismatched\n            if state_dict[\"image_proj\"][\"latents\"].shape != self.image_proj.state_dict()[\"latents\"].shape:\n                del state_dict[\"image_proj\"][\"latents\"]\n                strict_load_image_proj_model = False\n\n        # Load state dict for image_proj_model and adapter_modules\n        self.image_proj.load_state_dict(state_dict[\"image_proj\"], strict=strict_load_image_proj_model)\n        missing_key, unexpected_key = self.ip_adapter.load_state_dict(state_dict[\"ip_adapter\"], strict=False)\n        if len(missing_key) > 0:\n            for ms in missing_key:\n                if \"ln\" not in ms:\n                    raise ValueError(f\"Missing key in adapter_modules: {len(missing_key)}\")\n        if len(unexpected_key) > 0:\n            raise ValueError(f\"Unexpected key in adapter_modules: {len(unexpected_key)}\")\n\n        # Calculate new checksums\n        new_ip_proj_sum = torch.sum(torch.stack([torch.sum(p) for p in self.image_proj.parameters()]))\n        new_adapter_sum = torch.sum(torch.stack([torch.sum(p) for p in self.ip_adapter.parameters()]))\n\n        # Verify if the weights loaded to unet\n        unet_sum = []\n        for attn_name, attn_proc in self.unet.attn_processors.items():\n            if isinstance(attn_proc, (TA_IPAttnProcessor, IPAttnProcessor)):\n                unet_sum.append(torch.sum(torch.stack([torch.sum(p) for p in attn_proc.parameters()])))\n        unet_sum = torch.sum(torch.stack(unet_sum))\n\n        assert org_unet_sum != unet_sum, \"Weights of adapter_modules in unet did not change!\"\n        assert (unet_sum - new_adapter_sum < 1e-4), \"Weights of adapter_modules did not load to unet!\"\n\n        # Verify if the weights have changed\n        assert orig_ip_proj_sum != new_ip_proj_sum, \"Weights of image_proj_model did not change!\"\n        assert orig_adapter_sum != new_adapter_sum, \"Weights of adapter_mod`ules did not change!\"\n\n\nclass IPAdapterXL(IPAdapter):\n    \"\"\"SDXL\"\"\"\n\n    def forward(self, noisy_latents, timesteps, encoder_hidden_states, unet_added_cond_kwargs, image_embeds):\n        ip_tokens = self.image_proj(image_embeds)\n        encoder_hidden_states = torch.cat([encoder_hidden_states, ip_tokens], dim=1)\n        # Predict the noise residual\n        noise_pred = self.unet(noisy_latents, timesteps, encoder_hidden_states, added_cond_kwargs=unet_added_cond_kwargs).sample\n        return noise_pred\n\n\nclass IPAdapterPlusXL(IPAdapterPlus):\n    \"\"\"IP-Adapter with fine-grained features\"\"\"\n\n    def forward(self, noisy_latents, timesteps, encoder_hidden_states, unet_added_cond_kwargs, image_embeds):\n        ip_tokens = self.image_proj(image_embeds)\n        encoder_hidden_states = torch.cat([encoder_hidden_states, ip_tokens], dim=1)\n        # Predict the noise residual\n        noise_pred = self.unet(noisy_latents, timesteps, encoder_hidden_states, added_cond_kwargs=unet_added_cond_kwargs).sample\n        return noise_pred\n\n\nclass IPAdapterFull(IPAdapterPlus):\n    \"\"\"IP-Adapter with full features\"\"\"\n\n    def init_proj(self):\n        image_proj_model = MLPProjModel(\n            cross_attention_dim=self.pipe.unet.config.cross_attention_dim,\n            clip_embeddings_dim=self.image_encoder.config.hidden_size,\n        ).to(self.device, dtype=torch.float16)\n        return image_proj_model\n"
  },
  {
    "path": "scripts/instantir/ip_adapter/resampler.py",
    "content": "# modified from https://github.com/mlfoundations/open_flamingo/blob/main/open_flamingo/src/helpers.py\n# and https://github.com/lucidrains/imagen-pytorch/blob/main/imagen_pytorch/imagen_pytorch.py\n\nimport math\n\nimport torch\nimport torch.nn as nn\nfrom einops import rearrange\nfrom einops.layers.torch import Rearrange\n\n\n# FFN\ndef FeedForward(dim, mult=4):\n    inner_dim = int(dim * mult)\n    return nn.Sequential(\n        nn.LayerNorm(dim),\n        nn.Linear(dim, inner_dim, bias=False),\n        nn.GELU(),\n        nn.Linear(inner_dim, dim, bias=False),\n    )\n\n\ndef reshape_tensor(x, heads):\n    bs, length, _width = x.shape\n    # (bs, length, width) --> (bs, length, n_heads, dim_per_head)\n    x = x.view(bs, length, heads, -1)\n    # (bs, length, n_heads, dim_per_head) --> (bs, n_heads, length, dim_per_head)\n    x = x.transpose(1, 2)\n    # (bs, n_heads, length, dim_per_head) --> (bs*n_heads, length, dim_per_head)\n    x = x.reshape(bs, heads, length, -1)\n    return x\n\n\nclass PerceiverAttention(nn.Module):\n    def __init__(self, *, dim, dim_head=64, heads=8):\n        super().__init__()\n        self.scale = dim_head**-0.5\n        self.dim_head = dim_head\n        self.heads = heads\n        inner_dim = dim_head * heads\n\n        self.norm1 = nn.LayerNorm(dim)\n        self.norm2 = nn.LayerNorm(dim)\n\n        self.to_q = nn.Linear(dim, inner_dim, bias=False)\n        self.to_kv = nn.Linear(dim, inner_dim * 2, bias=False)\n        self.to_out = nn.Linear(inner_dim, dim, bias=False)\n\n    def forward(self, x, latents):\n        \"\"\"\n        Args:\n            x (torch.Tensor): image features\n                shape (b, n1, D)\n            latent (torch.Tensor): latent features\n                shape (b, n2, D)\n        \"\"\"\n        x = self.norm1(x)\n        latents = self.norm2(latents)\n\n        b, l, _ = latents.shape\n\n        q = self.to_q(latents)\n        kv_input = torch.cat((x, latents), dim=-2)\n        k, v = self.to_kv(kv_input).chunk(2, dim=-1)\n\n        q = reshape_tensor(q, self.heads)\n        k = reshape_tensor(k, self.heads)\n        v = reshape_tensor(v, self.heads)\n\n        # attention\n        scale = 1 / math.sqrt(math.sqrt(self.dim_head))\n        weight = (q * scale) @ (k * scale).transpose(-2, -1)  # More stable with f16 than dividing afterwards\n        weight = torch.softmax(weight.float(), dim=-1).type(weight.dtype)\n        out = weight @ v\n\n        out = out.permute(0, 2, 1, 3).reshape(b, l, -1)\n\n        return self.to_out(out)\n\n\nclass Resampler(nn.Module):\n    def __init__(\n        self,\n        dim=1280,\n        depth=4,\n        dim_head=64,\n        heads=20,\n        num_queries=64,\n        embedding_dim=768,\n        output_dim=1024,\n        ff_mult=4,\n        max_seq_len: int = 257,  # CLIP tokens + CLS token\n        apply_pos_emb: bool = False,\n        num_latents_mean_pooled: int = 0,  # number of latents derived from mean pooled representation of the sequence\n    ):\n        super().__init__()\n        self.pos_emb = nn.Embedding(max_seq_len, embedding_dim) if apply_pos_emb else None\n\n        self.latents = nn.Parameter(torch.randn(1, num_queries, dim) / dim**0.5)\n\n        self.proj_in = nn.Linear(embedding_dim, dim)\n\n        self.proj_out = nn.Linear(dim, output_dim)\n        self.norm_out = nn.LayerNorm(output_dim)\n\n        self.to_latents_from_mean_pooled_seq = (\n            nn.Sequential(\n                nn.LayerNorm(dim),\n                nn.Linear(dim, dim * num_latents_mean_pooled),\n                Rearrange(\"b (n d) -> b n d\", n=num_latents_mean_pooled),\n            )\n            if num_latents_mean_pooled > 0\n            else None\n        )\n\n        self.layers = nn.ModuleList([])\n        for _ in range(depth):\n            self.layers.append(\n                nn.ModuleList(\n                    [\n                        PerceiverAttention(dim=dim, dim_head=dim_head, heads=heads),\n                        FeedForward(dim=dim, mult=ff_mult),\n                    ]\n                )\n            )\n\n    def forward(self, x):\n        if self.pos_emb is not None:\n            n, device = x.shape[1], x.device\n            pos_emb = self.pos_emb(torch.arange(n, device=device))\n            x = x + pos_emb\n\n        latents = self.latents.repeat(x.size(0), 1, 1)\n\n        x = self.proj_in(x)\n\n        if self.to_latents_from_mean_pooled_seq:\n            meanpooled_seq = masked_mean(x, dim=1, mask=torch.ones(x.shape[:2], device=x.device, dtype=torch.bool))\n            meanpooled_latents = self.to_latents_from_mean_pooled_seq(meanpooled_seq)\n            latents = torch.cat((meanpooled_latents, latents), dim=-2)\n\n        for attn, ff in self.layers:\n            latents = attn(x, latents) + latents\n            latents = ff(latents) + latents\n\n        latents = self.proj_out(latents)\n        return self.norm_out(latents)\n\n\ndef masked_mean(t, *, dim, mask=None):\n    if mask is None:\n        return t.mean(dim=dim)\n\n    denom = mask.sum(dim=dim, keepdim=True)\n    mask = rearrange(mask, \"b n -> b n 1\")\n    masked_t = t.masked_fill(~mask, 0.0)\n\n    return masked_t.sum(dim=dim) / denom.clamp(min=1e-5)\n"
  },
  {
    "path": "scripts/instantir/ip_adapter/utils.py",
    "content": "import torch\nfrom collections import namedtuple, OrderedDict\nfrom safetensors import safe_open\nfrom .attention_processor import init_attn_proc\nfrom .ip_adapter import MultiIPAdapterImageProjection\nfrom .resampler import Resampler\nfrom transformers import (\n    AutoModel, AutoImageProcessor,\n    CLIPVisionModelWithProjection, CLIPImageProcessor)\n\n\ndef init_adapter_in_unet(\n        unet,\n        image_proj_model=None,\n        pretrained_model_path_or_dict=None,\n        adapter_tokens=64,\n        embedding_dim=None,\n        use_lcm=False,\n        use_adaln=True,\n    ):\n        device = unet.device\n        dtype = unet.dtype\n        if image_proj_model is None:\n            assert embedding_dim is not None, \"embedding_dim must be provided if image_proj_model is None.\"\n            image_proj_model = Resampler(\n                embedding_dim=embedding_dim,\n                output_dim=unet.config.cross_attention_dim,\n                num_queries=adapter_tokens,\n            )\n        if pretrained_model_path_or_dict is not None:\n            if not isinstance(pretrained_model_path_or_dict, dict):\n                if pretrained_model_path_or_dict.endswith(\".safetensors\"):\n                    state_dict = {\"image_proj\": {}, \"ip_adapter\": {}}\n                    with safe_open(pretrained_model_path_or_dict, framework=\"pt\", device=unet.device) as f:\n                        for key in f.keys():\n                            if key.startswith(\"image_proj.\"):\n                                state_dict[\"image_proj\"][key.replace(\"image_proj.\", \"\")] = f.get_tensor(key)\n                            elif key.startswith(\"ip_adapter.\"):\n                                state_dict[\"ip_adapter\"][key.replace(\"ip_adapter.\", \"\")] = f.get_tensor(key)\n                else:\n                    state_dict = torch.load(pretrained_model_path_or_dict, map_location=unet.device)\n            else:\n                state_dict = pretrained_model_path_or_dict\n            keys = list(state_dict.keys())\n            if \"image_proj\" not in keys and \"ip_adapter\" not in keys:\n                state_dict = revise_state_dict(state_dict)\n\n        # Creat IP cross-attention in unet.\n        attn_procs = init_attn_proc(unet, adapter_tokens, use_lcm, use_adaln)\n        unet.set_attn_processor(attn_procs)\n\n        # Load pretrinaed model if needed.\n        if pretrained_model_path_or_dict is not None:\n            if \"ip_adapter\" in state_dict.keys():\n                adapter_modules = torch.nn.ModuleList(unet.attn_processors.values())\n                missing, unexpected = adapter_modules.load_state_dict(state_dict[\"ip_adapter\"], strict=False)\n                for mk in missing:\n                    if \"ln\" not in mk:\n                        raise ValueError(f\"Missing keys in adapter_modules: {missing}\")\n            if \"image_proj\" in state_dict.keys():\n                image_proj_model.load_state_dict(state_dict[\"image_proj\"])\n\n        # Load image projectors into iterable ModuleList.\n        image_projection_layers = []\n        image_projection_layers.append(image_proj_model)\n        unet.encoder_hid_proj = MultiIPAdapterImageProjection(image_projection_layers)\n\n        # Adjust unet config to handle addtional ip hidden states.\n        unet.config.encoder_hid_dim_type = \"ip_image_proj\"\n        unet.to(dtype=dtype, device=device)\n\n\ndef load_adapter_to_pipe(\n        pipe,\n        pretrained_model_path_or_dict,\n        image_encoder_or_path=None,\n        feature_extractor_or_path=None,\n        use_clip_encoder=False,\n        adapter_tokens=64,\n        use_lcm=False,\n        use_adaln=True,\n    ):\n\n        if not isinstance(pretrained_model_path_or_dict, dict):\n            if pretrained_model_path_or_dict.endswith(\".safetensors\"):\n                state_dict = {\"image_proj\": {}, \"ip_adapter\": {}}\n                with safe_open(pretrained_model_path_or_dict, framework=\"pt\", device=pipe.device) as f:\n                    for key in f.keys():\n                        if key.startswith(\"image_proj.\"):\n                            state_dict[\"image_proj\"][key.replace(\"image_proj.\", \"\")] = f.get_tensor(key)\n                        elif key.startswith(\"ip_adapter.\"):\n                            state_dict[\"ip_adapter\"][key.replace(\"ip_adapter.\", \"\")] = f.get_tensor(key)\n            else:\n                state_dict = torch.load(pretrained_model_path_or_dict, map_location=pipe.device)\n        else:\n            state_dict = pretrained_model_path_or_dict\n        keys = list(state_dict.keys())\n        if \"image_proj\" not in keys and \"ip_adapter\" not in keys:\n            state_dict = revise_state_dict(state_dict)\n\n        # load CLIP image encoder here if it has not been registered to the pipeline yet\n        if image_encoder_or_path is not None:\n            if isinstance(image_encoder_or_path, str):\n                feature_extractor_or_path = image_encoder_or_path if feature_extractor_or_path is None else feature_extractor_or_path\n\n                image_encoder_or_path = (\n                    CLIPVisionModelWithProjection.from_pretrained(\n                        image_encoder_or_path\n                    ) if use_clip_encoder else\n                    AutoModel.from_pretrained(image_encoder_or_path)\n                )\n\n        if feature_extractor_or_path is not None:\n            if isinstance(feature_extractor_or_path, str):\n                feature_extractor_or_path = (\n                    CLIPImageProcessor() if use_clip_encoder else\n                    AutoImageProcessor.from_pretrained(feature_extractor_or_path)\n                )\n\n        # create image encoder if it has not been registered to the pipeline yet\n        if hasattr(pipe, \"image_encoder\") and getattr(pipe, \"image_encoder\", None) is None:\n            image_encoder = image_encoder_or_path.to(pipe.device, dtype=pipe.dtype)\n            pipe.register_modules(image_encoder=image_encoder)\n        else:\n            image_encoder = pipe.image_encoder\n\n        # create feature extractor if it has not been registered to the pipeline yet\n        if hasattr(pipe, \"feature_extractor\") and getattr(pipe, \"feature_extractor\", None) is None:\n            feature_extractor = feature_extractor_or_path\n            pipe.register_modules(feature_extractor=feature_extractor)\n        else:\n            feature_extractor = pipe.feature_extractor\n\n        # load adapter into unet\n        unet = getattr(pipe, pipe.unet_name) if not hasattr(pipe, \"unet\") else pipe.unet\n        attn_procs = init_attn_proc(unet, adapter_tokens, use_lcm, use_adaln)\n        unet.set_attn_processor(attn_procs)\n        image_proj_model = Resampler(\n            embedding_dim=image_encoder.config.hidden_size,\n            output_dim=unet.config.cross_attention_dim,\n            num_queries=adapter_tokens,\n        )\n\n        # Load pretrinaed model if needed.\n        if \"ip_adapter\" in state_dict.keys():\n            adapter_modules = torch.nn.ModuleList(unet.attn_processors.values())\n            missing, unexpected = adapter_modules.load_state_dict(state_dict[\"ip_adapter\"], strict=False)\n            for mk in missing:\n                if \"ln\" not in mk:\n                    raise ValueError(f\"Missing keys in adapter_modules: {missing}\")\n        if \"image_proj\" in state_dict.keys():\n            image_proj_model.load_state_dict(state_dict[\"image_proj\"])\n\n        # convert IP-Adapter Image Projection layers to diffusers\n        image_projection_layers = []\n        image_projection_layers.append(image_proj_model)\n        unet.encoder_hid_proj = MultiIPAdapterImageProjection(image_projection_layers)\n\n        # Adjust unet config to handle addtional ip hidden states.\n        unet.config.encoder_hid_dim_type = \"ip_image_proj\"\n        unet.to(dtype=pipe.dtype, device=pipe.device)\n\n\ndef revise_state_dict(old_state_dict_or_path, map_location=\"cpu\"):\n    new_state_dict = OrderedDict()\n    new_state_dict[\"image_proj\"] = OrderedDict()\n    new_state_dict[\"ip_adapter\"] = OrderedDict()\n    if isinstance(old_state_dict_or_path, str):\n        old_state_dict = torch.load(old_state_dict_or_path, map_location=map_location)\n    else:\n        old_state_dict = old_state_dict_or_path\n    for name, weight in old_state_dict.items():\n        if name.startswith(\"image_proj_model.\"):\n            new_state_dict[\"image_proj\"][name[len(\"image_proj_model.\"):]] = weight\n        elif name.startswith(\"adapter_modules.\"):\n            new_state_dict[\"ip_adapter\"][name[len(\"adapter_modules.\"):]] = weight\n    return new_state_dict\n\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.encode_image\ndef encode_image(image_encoder, feature_extractor, image, device, num_images_per_prompt, output_hidden_states=None):\n    dtype = next(image_encoder.parameters()).dtype\n\n    if not isinstance(image, torch.Tensor):\n        image = feature_extractor(image, return_tensors=\"pt\").pixel_values\n\n    image = image.to(device=device, dtype=dtype)\n    if output_hidden_states:\n        image_enc_hidden_states = image_encoder(image, output_hidden_states=True).hidden_states[-2]\n        image_enc_hidden_states = image_enc_hidden_states.repeat_interleave(num_images_per_prompt, dim=0)\n        return image_enc_hidden_states\n    else:\n        if isinstance(image_encoder, CLIPVisionModelWithProjection):\n            # CLIP image encoder.\n            image_embeds = image_encoder(image).image_embeds\n        else:\n            # DINO image encoder.\n            image_embeds = image_encoder(image).last_hidden_state\n        image_embeds = image_embeds.repeat_interleave(num_images_per_prompt, dim=0)\n        return image_embeds\n\n\ndef prepare_training_image_embeds(\n    image_encoder, feature_extractor,\n    ip_adapter_image, ip_adapter_image_embeds,\n    device, drop_rate, output_hidden_state, idx_to_replace=None\n):\n    if ip_adapter_image_embeds is None:\n        if not isinstance(ip_adapter_image, list):\n            ip_adapter_image = [ip_adapter_image]\n\n        # if len(ip_adapter_image) != len(unet.encoder_hid_proj.image_projection_layers):\n        #     raise ValueError(\n        #         f\"`ip_adapter_image` must have same length as the number of IP Adapters. Got {len(ip_adapter_image)} images and {len(unet.encoder_hid_proj.image_projection_layers)} IP Adapters.\"\n        #     )\n\n        image_embeds = []\n        for single_ip_adapter_image in ip_adapter_image:\n            if idx_to_replace is None:\n                idx_to_replace = torch.rand(len(single_ip_adapter_image)) < drop_rate\n            zero_ip_adapter_image = torch.zeros_like(single_ip_adapter_image)\n            single_ip_adapter_image[idx_to_replace] = zero_ip_adapter_image[idx_to_replace]\n            single_image_embeds = encode_image(\n                image_encoder, feature_extractor, single_ip_adapter_image, device, 1, output_hidden_state\n            )\n            single_image_embeds = torch.stack([single_image_embeds], dim=1) # FIXME\n\n            image_embeds.append(single_image_embeds)\n    else:\n        repeat_dims = [1]\n        image_embeds = []\n        for single_image_embeds in ip_adapter_image_embeds:\n            if do_classifier_free_guidance:\n                single_negative_image_embeds, single_image_embeds = single_image_embeds.chunk(2)\n                single_image_embeds = single_image_embeds.repeat(\n                    num_images_per_prompt, *(repeat_dims * len(single_image_embeds.shape[1:]))\n                )\n                single_negative_image_embeds = single_negative_image_embeds.repeat(\n                    num_images_per_prompt, *(repeat_dims * len(single_negative_image_embeds.shape[1:]))\n                )\n                single_image_embeds = torch.cat([single_negative_image_embeds, single_image_embeds])\n            else:\n                single_image_embeds = single_image_embeds.repeat(\n                    num_images_per_prompt, *(repeat_dims * len(single_image_embeds.shape[1:]))\n                )\n            image_embeds.append(single_image_embeds)\n\n    return image_embeds\n"
  },
  {
    "path": "scripts/instantir/lcm_single_step_scheduler.py",
    "content": "# Copyright 2023 Stanford University Team and The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\n# DISCLAIMER: This code is strongly influenced by https://github.com/pesser/pytorch_diffusion\n# and https://github.com/hojonathanho/diffusion\n\nimport math\nfrom dataclasses import dataclass\nfrom typing import List, Optional, Tuple, Union\n\nimport numpy as np\nimport torch\n\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.utils import BaseOutput, logging\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom diffusers.schedulers.scheduling_utils import SchedulerMixin\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\n@dataclass\nclass LCMSingleStepSchedulerOutput(BaseOutput):\n    \"\"\"\n    Output class for the scheduler's `step` function output.\n\n    Args:\n        pred_original_sample (`torch.FloatTensor` of shape `(batch_size, num_channels, height, width)` for images):\n            The predicted denoised sample `(x_{0})` based on the model output from the current timestep.\n            `pred_original_sample` can be used to preview progress or for guidance.\n    \"\"\"\n\n    denoised: Optional[torch.FloatTensor] = None\n\n\n# Copied from diffusers.schedulers.scheduling_ddpm.betas_for_alpha_bar\ndef betas_for_alpha_bar(\n    num_diffusion_timesteps,\n    max_beta=0.999,\n    alpha_transform_type=\"cosine\",\n):\n    \"\"\"\n    Create a beta schedule that discretizes the given alpha_t_bar function, which defines the cumulative product of\n    (1-beta) over time from t = [0,1].\n\n    Contains a function alpha_bar that takes an argument t and transforms it to the cumulative product of (1-beta) up\n    to that part of the diffusion process.\n\n\n    Args:\n        num_diffusion_timesteps (`int`): the number of betas to produce.\n        max_beta (`float`): the maximum beta to use; use values lower than 1 to\n                     prevent singularities.\n        alpha_transform_type (`str`, *optional*, default to `cosine`): the type of noise schedule for alpha_bar.\n                     Choose from `cosine` or `exp`\n\n    Returns:\n        betas (`np.ndarray`): the betas used by the scheduler to step the model outputs\n    \"\"\"\n    if alpha_transform_type == \"cosine\":\n\n        def alpha_bar_fn(t):\n            return math.cos((t + 0.008) / 1.008 * math.pi / 2) ** 2\n\n    elif alpha_transform_type == \"exp\":\n\n        def alpha_bar_fn(t):\n            return math.exp(t * -12.0)\n\n    else:\n        raise ValueError(f\"Unsupported alpha_tranform_type: {alpha_transform_type}\")\n\n    betas = []\n    for i in range(num_diffusion_timesteps):\n        t1 = i / num_diffusion_timesteps\n        t2 = (i + 1) / num_diffusion_timesteps\n        betas.append(min(1 - alpha_bar_fn(t2) / alpha_bar_fn(t1), max_beta))\n    return torch.tensor(betas, dtype=torch.float32)\n\n\n# Copied from diffusers.schedulers.scheduling_ddim.rescale_zero_terminal_snr\ndef rescale_zero_terminal_snr(betas: torch.FloatTensor) -> torch.FloatTensor:\n    \"\"\"\n    Rescales betas to have zero terminal SNR Based on https://arxiv.org/pdf/2305.08891.pdf (Algorithm 1)\n\n\n    Args:\n        betas (`torch.FloatTensor`):\n            the betas that the scheduler is being initialized with.\n\n    Returns:\n        `torch.FloatTensor`: rescaled betas with zero terminal SNR\n    \"\"\"\n    # Convert betas to alphas_bar_sqrt\n    alphas = 1.0 - betas\n    alphas_cumprod = torch.cumprod(alphas, dim=0)\n    alphas_bar_sqrt = alphas_cumprod.sqrt()\n\n    # Store old values.\n    alphas_bar_sqrt_0 = alphas_bar_sqrt[0].clone()\n    alphas_bar_sqrt_T = alphas_bar_sqrt[-1].clone()\n\n    # Shift so the last timestep is zero.\n    alphas_bar_sqrt -= alphas_bar_sqrt_T\n\n    # Scale so the first timestep is back to the old value.\n    alphas_bar_sqrt *= alphas_bar_sqrt_0 / (alphas_bar_sqrt_0 - alphas_bar_sqrt_T)\n\n    # Convert alphas_bar_sqrt to betas\n    alphas_bar = alphas_bar_sqrt**2  # Revert sqrt\n    alphas = alphas_bar[1:] / alphas_bar[:-1]  # Revert cumprod\n    alphas = torch.cat([alphas_bar[0:1], alphas])\n    betas = 1 - alphas\n\n    return betas\n\n\nclass LCMSingleStepScheduler(SchedulerMixin, ConfigMixin):\n    \"\"\"\n    `LCMSingleStepScheduler` extends the denoising procedure introduced in denoising diffusion probabilistic models (DDPMs) with\n    non-Markovian guidance.\n\n    This model inherits from [`SchedulerMixin`] and [`ConfigMixin`]. [`~ConfigMixin`] takes care of storing all config\n    attributes that are passed in the scheduler's `__init__` function, such as `num_train_timesteps`. They can be\n    accessed via `scheduler.config.num_train_timesteps`. [`SchedulerMixin`] provides general loading and saving\n    functionality via the [`SchedulerMixin.save_pretrained`] and [`~SchedulerMixin.from_pretrained`] functions.\n\n    Args:\n        num_train_timesteps (`int`, defaults to 1000):\n            The number of diffusion steps to train the model.\n        beta_start (`float`, defaults to 0.0001):\n            The starting `beta` value of inference.\n        beta_end (`float`, defaults to 0.02):\n            The final `beta` value.\n        beta_schedule (`str`, defaults to `\"linear\"`):\n            The beta schedule, a mapping from a beta range to a sequence of betas for stepping the model. Choose from\n            `linear`, `scaled_linear`, or `squaredcos_cap_v2`.\n        trained_betas (`np.ndarray`, *optional*):\n            Pass an array of betas directly to the constructor to bypass `beta_start` and `beta_end`.\n        original_inference_steps (`int`, *optional*, defaults to 50):\n            The default number of inference steps used to generate a linearly-spaced timestep schedule, from which we\n            will ultimately take `num_inference_steps` evenly spaced timesteps to form the final timestep schedule.\n        clip_sample (`bool`, defaults to `True`):\n            Clip the predicted sample for numerical stability.\n        clip_sample_range (`float`, defaults to 1.0):\n            The maximum magnitude for sample clipping. Valid only when `clip_sample=True`.\n        set_alpha_to_one (`bool`, defaults to `True`):\n            Each diffusion step uses the alphas product value at that step and at the previous one. For the final step\n            there is no previous alpha. When this option is `True` the previous alpha product is fixed to `1`,\n            otherwise it uses the alpha value at step 0.\n        steps_offset (`int`, defaults to 0):\n            An offset added to the inference steps. You can use a combination of `offset=1` and\n            `set_alpha_to_one=False` to make the last step use step 0 for the previous alpha product like in Stable\n            Diffusion.\n        prediction_type (`str`, defaults to `epsilon`, *optional*):\n            Prediction type of the scheduler function; can be `epsilon` (predicts the noise of the diffusion process),\n            `sample` (directly predicts the noisy sample`) or `v_prediction` (see section 2.4 of [Imagen\n            Video](https://imagen.research.google/video/paper.pdf) paper).\n        thresholding (`bool`, defaults to `False`):\n            Whether to use the \"dynamic thresholding\" method. This is unsuitable for latent-space diffusion models such\n            as Stable Diffusion.\n        dynamic_thresholding_ratio (`float`, defaults to 0.995):\n            The ratio for the dynamic thresholding method. Valid only when `thresholding=True`.\n        sample_max_value (`float`, defaults to 1.0):\n            The threshold value for dynamic thresholding. Valid only when `thresholding=True`.\n        timestep_spacing (`str`, defaults to `\"leading\"`):\n            The way the timesteps should be scaled. Refer to Table 2 of the [Common Diffusion Noise Schedules and\n            Sample Steps are Flawed](https://huggingface.co/papers/2305.08891) for more information.\n        timestep_scaling (`float`, defaults to 10.0):\n            The factor the timesteps will be multiplied by when calculating the consistency model boundary conditions\n            `c_skip` and `c_out`. Increasing this will decrease the approximation error (although the approximation\n            error at the default of `10.0` is already pretty small).\n        rescale_betas_zero_snr (`bool`, defaults to `False`):\n            Whether to rescale the betas to have zero terminal SNR. This enables the model to generate very bright and\n            dark samples instead of limiting it to samples with medium brightness. Loosely related to\n            [`--offset_noise`](https://github.com/huggingface/diffusers/blob/74fd735eb073eb1d774b1ab4154a0876eb82f055/examples/dreambooth/train_dreambooth.py#L506).\n    \"\"\"\n\n    order = 1\n\n    @register_to_config\n    def __init__(\n        self,\n        num_train_timesteps: int = 1000,\n        beta_start: float = 0.00085,\n        beta_end: float = 0.012,\n        beta_schedule: str = \"scaled_linear\",\n        trained_betas: Optional[Union[np.ndarray, List[float]]] = None,\n        original_inference_steps: int = 50,\n        clip_sample: bool = False,\n        clip_sample_range: float = 1.0,\n        set_alpha_to_one: bool = True,\n        steps_offset: int = 0,\n        prediction_type: str = \"epsilon\",\n        thresholding: bool = False,\n        dynamic_thresholding_ratio: float = 0.995,\n        sample_max_value: float = 1.0,\n        timestep_spacing: str = \"leading\",\n        timestep_scaling: float = 10.0,\n        rescale_betas_zero_snr: bool = False,\n    ):\n        if trained_betas is not None:\n            self.betas = torch.tensor(trained_betas, dtype=torch.float32)\n        elif beta_schedule == \"linear\":\n            self.betas = torch.linspace(beta_start, beta_end, num_train_timesteps, dtype=torch.float32)\n        elif beta_schedule == \"scaled_linear\":\n            # this schedule is very specific to the latent diffusion model.\n            self.betas = (\n                torch.linspace(beta_start**0.5, beta_end**0.5, num_train_timesteps, dtype=torch.float32) ** 2\n            )\n        elif beta_schedule == \"squaredcos_cap_v2\":\n            # Glide cosine schedule\n            self.betas = betas_for_alpha_bar(num_train_timesteps)\n        else:\n            raise NotImplementedError(f\"{beta_schedule} does is not implemented for {self.__class__}\")\n\n        # Rescale for zero SNR\n        if rescale_betas_zero_snr:\n            self.betas = rescale_zero_terminal_snr(self.betas)\n\n        self.alphas = 1.0 - self.betas\n        self.alphas_cumprod = torch.cumprod(self.alphas, dim=0)\n\n        # At every step in ddim, we are looking into the previous alphas_cumprod\n        # For the final step, there is no previous alphas_cumprod because we are already at 0\n        # `set_alpha_to_one` decides whether we set this parameter simply to one or\n        # whether we use the final alpha of the \"non-previous\" one.\n        self.final_alpha_cumprod = torch.tensor(1.0) if set_alpha_to_one else self.alphas_cumprod[0]\n\n        # standard deviation of the initial noise distribution\n        self.init_noise_sigma = 1.0\n\n        # setable values\n        self.num_inference_steps = None\n        self.timesteps = torch.from_numpy(np.arange(0, num_train_timesteps)[::-1].copy().astype(np.int64))\n\n        self._step_index = None\n\n    # Copied from diffusers.schedulers.scheduling_euler_discrete.EulerDiscreteScheduler._init_step_index\n    def _init_step_index(self, timestep):\n        if isinstance(timestep, torch.Tensor):\n            timestep = timestep.to(self.timesteps.device)\n\n        index_candidates = (self.timesteps == timestep).nonzero()\n\n        # The sigma index that is taken for the **very** first `step`\n        # is always the second index (or the last index if there is only 1)\n        # This way we can ensure we don't accidentally skip a sigma in\n        # case we start in the middle of the denoising schedule (e.g. for image-to-image)\n        if len(index_candidates) > 1:\n            step_index = index_candidates[1]\n        else:\n            step_index = index_candidates[0]\n\n        self._step_index = step_index.item()\n\n    @property\n    def step_index(self):\n        return self._step_index\n\n    def scale_model_input(self, sample: torch.FloatTensor, timestep: Optional[int] = None) -> torch.FloatTensor:\n        \"\"\"\n        Ensures interchangeability with schedulers that need to scale the denoising model input depending on the\n        current timestep.\n\n        Args:\n            sample (`torch.FloatTensor`):\n                The input sample.\n            timestep (`int`, *optional*):\n                The current timestep in the diffusion chain.\n        Returns:\n            `torch.FloatTensor`:\n                A scaled input sample.\n        \"\"\"\n        return sample\n\n    # Copied from diffusers.schedulers.scheduling_ddpm.DDPMScheduler._threshold_sample\n    def _threshold_sample(self, sample: torch.FloatTensor) -> torch.FloatTensor:\n        \"\"\"\n        \"Dynamic thresholding: At each sampling step we set s to a certain percentile absolute pixel value in xt0 (the\n        prediction of x_0 at timestep t), and if s > 1, then we threshold xt0 to the range [-s, s] and then divide by\n        s. Dynamic thresholding pushes saturated pixels (those near -1 and 1) inwards, thereby actively preventing\n        pixels from saturation at each step. We find that dynamic thresholding results in significantly better\n        photorealism as well as better image-text alignment, especially when using very large guidance weights.\"\n\n        https://arxiv.org/abs/2205.11487\n        \"\"\"\n        dtype = sample.dtype\n        batch_size, channels, *remaining_dims = sample.shape\n\n        if dtype not in (torch.float32, torch.float64):\n            sample = sample.float()  # upcast for quantile calculation, and clamp not implemented for cpu half\n\n        # Flatten sample for doing quantile calculation along each image\n        sample = sample.reshape(batch_size, channels * np.prod(remaining_dims))\n\n        abs_sample = sample.abs()  # \"a certain percentile absolute pixel value\"\n\n        s = torch.quantile(abs_sample, self.config.dynamic_thresholding_ratio, dim=1)\n        s = torch.clamp(\n            s, min=1, max=self.config.sample_max_value\n        )  # When clamped to min=1, equivalent to standard clipping to [-1, 1]\n        s = s.unsqueeze(1)  # (batch_size, 1) because clamp will broadcast along dim=0\n        sample = torch.clamp(sample, -s, s) / s  # \"we threshold xt0 to the range [-s, s] and then divide by s\"\n\n        sample = sample.reshape(batch_size, channels, *remaining_dims)\n        sample = sample.to(dtype)\n\n        return sample\n\n    def set_timesteps(\n        self,\n        num_inference_steps: int = None,\n        device: Union[str, torch.device] = None,\n        original_inference_steps: Optional[int] = None,\n        strength: int = 1.0,\n        timesteps: Optional[list] = None,\n    ):\n        \"\"\"\n        Sets the discrete timesteps used for the diffusion chain (to be run before inference).\n\n        Args:\n            num_inference_steps (`int`):\n                The number of diffusion steps used when generating samples with a pre-trained model.\n            device (`str` or `torch.device`, *optional*):\n                The device to which the timesteps should be moved to. If `None`, the timesteps are not moved.\n            original_inference_steps (`int`, *optional*):\n                The original number of inference steps, which will be used to generate a linearly-spaced timestep\n                schedule (which is different from the standard `diffusers` implementation). We will then take\n                `num_inference_steps` timesteps from this schedule, evenly spaced in terms of indices, and use that as\n                our final timestep schedule. If not set, this will default to the `original_inference_steps` attribute.\n        \"\"\"\n\n        if num_inference_steps is not None and timesteps is not None:\n            raise ValueError(\"Can only pass one of `num_inference_steps` or `custom_timesteps`.\")\n\n        if timesteps is not None:\n            for i in range(1, len(timesteps)):\n                if timesteps[i] >= timesteps[i - 1]:\n                    raise ValueError(\"`custom_timesteps` must be in descending order.\")\n\n            if timesteps[0] >= self.config.num_train_timesteps:\n                raise ValueError(\n                    f\"`timesteps` must start before `self.config.train_timesteps`:\"\n                    f\" {self.config.num_train_timesteps}.\"\n                )\n\n            timesteps = np.array(timesteps, dtype=np.int64)\n        else:\n            if num_inference_steps > self.config.num_train_timesteps:\n                raise ValueError(\n                    f\"`num_inference_steps`: {num_inference_steps} cannot be larger than `self.config.train_timesteps`:\"\n                    f\" {self.config.num_train_timesteps} as the unet model trained with this scheduler can only handle\"\n                    f\" maximal {self.config.num_train_timesteps} timesteps.\"\n                )\n\n            self.num_inference_steps = num_inference_steps\n            original_steps = (\n                original_inference_steps if original_inference_steps is not None else self.config.original_inference_steps\n            )\n\n            if original_steps > self.config.num_train_timesteps:\n                raise ValueError(\n                    f\"`original_steps`: {original_steps} cannot be larger than `self.config.train_timesteps`:\"\n                    f\" {self.config.num_train_timesteps} as the unet model trained with this scheduler can only handle\"\n                    f\" maximal {self.config.num_train_timesteps} timesteps.\"\n                )\n\n            if num_inference_steps > original_steps:\n                raise ValueError(\n                    f\"`num_inference_steps`: {num_inference_steps} cannot be larger than `original_inference_steps`:\"\n                    f\" {original_steps} because the final timestep schedule will be a subset of the\"\n                    f\" `original_inference_steps`-sized initial timestep schedule.\"\n                )\n\n            # LCM Timesteps Setting\n            # Currently, only linear spacing is supported.\n            c = self.config.num_train_timesteps // original_steps\n            # LCM Training Steps Schedule\n            lcm_origin_timesteps = np.asarray(list(range(1, int(original_steps * strength) + 1))) * c - 1\n            skipping_step = len(lcm_origin_timesteps) // num_inference_steps\n            # LCM Inference Steps Schedule\n            timesteps = lcm_origin_timesteps[::-skipping_step][:num_inference_steps]\n\n        self.timesteps = torch.from_numpy(timesteps.copy()).to(device=device, dtype=torch.long)\n\n        self._step_index = None\n\n    def get_scalings_for_boundary_condition_discrete(self, timestep):\n        self.sigma_data = 0.5  # Default: 0.5\n        scaled_timestep = timestep * self.config.timestep_scaling\n\n        c_skip = self.sigma_data**2 / (scaled_timestep**2 + self.sigma_data**2)\n        c_out = scaled_timestep / (scaled_timestep**2 + self.sigma_data**2) ** 0.5\n        return c_skip, c_out\n\n    def append_dims(self, x, target_dims):\n        \"\"\"Appends dimensions to the end of a tensor until it has target_dims dimensions.\"\"\"\n        dims_to_append = target_dims - x.ndim\n        if dims_to_append < 0:\n            raise ValueError(f\"input has {x.ndim} dims but target_dims is {target_dims}, which is less\")\n        return x[(...,) + (None,) * dims_to_append]\n\n    def extract_into_tensor(self, a, t, x_shape):\n        b, *_ = t.shape\n        out = a.gather(-1, t)\n        return out.reshape(b, *((1,) * (len(x_shape) - 1)))\n\n    def step(\n        self,\n        model_output: torch.FloatTensor,\n        timestep: torch.Tensor,\n        sample: torch.FloatTensor,\n        generator: Optional[torch.Generator] = None,\n        return_dict: bool = True,\n    ) -> Union[LCMSingleStepSchedulerOutput, Tuple]:\n        \"\"\"\n        Predict the sample from the previous timestep by reversing the SDE. This function propagates the diffusion\n        process from the learned model outputs (most often the predicted noise).\n\n        Args:\n            model_output (`torch.FloatTensor`):\n                The direct output from learned diffusion model.\n            timestep (`float`):\n                The current discrete timestep in the diffusion chain.\n            sample (`torch.FloatTensor`):\n                A current instance of a sample created by the diffusion process.\n            generator (`torch.Generator`, *optional*):\n                A random number generator.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~schedulers.scheduling_lcm.LCMSchedulerOutput`] or `tuple`.\n        Returns:\n            [`~schedulers.scheduling_utils.LCMSchedulerOutput`] or `tuple`:\n                If return_dict is `True`, [`~schedulers.scheduling_lcm.LCMSchedulerOutput`] is returned, otherwise a\n                tuple is returned where the first element is the sample tensor.\n        \"\"\"\n        # 0. make sure everything is on the same device\n        alphas_cumprod = self.alphas_cumprod.to(sample.device)\n\n        # 1. compute alphas, betas\n        if timestep.ndim == 0:\n            timestep = timestep.unsqueeze(0)\n        alpha_prod_t = self.extract_into_tensor(alphas_cumprod, timestep, sample.shape)\n        beta_prod_t = 1 - alpha_prod_t\n\n        # 2. Get scalings for boundary conditions\n        c_skip, c_out = self.get_scalings_for_boundary_condition_discrete(timestep)\n        c_skip, c_out = [self.append_dims(x, sample.ndim) for x in [c_skip, c_out]]\n\n        # 3. Compute the predicted original sample x_0 based on the model parameterization\n        if self.config.prediction_type == \"epsilon\":  # noise-prediction\n            predicted_original_sample = (sample - torch.sqrt(beta_prod_t) * model_output) / torch.sqrt(alpha_prod_t)\n        elif self.config.prediction_type == \"sample\":  # x-prediction\n            predicted_original_sample = model_output\n        elif self.config.prediction_type == \"v_prediction\":  # v-prediction\n            predicted_original_sample = torch.sqrt(alpha_prod_t) * sample - torch.sqrt(beta_prod_t) * model_output\n        else:\n            raise ValueError(\n                f\"prediction_type given as {self.config.prediction_type} must be one of `epsilon`, `sample` or\"\n                \" `v_prediction` for `LCMScheduler`.\"\n            )\n\n        # 4. Clip or threshold \"predicted x_0\"\n        if self.config.thresholding:\n            predicted_original_sample = self._threshold_sample(predicted_original_sample)\n        elif self.config.clip_sample:\n            predicted_original_sample = predicted_original_sample.clamp(\n                -self.config.clip_sample_range, self.config.clip_sample_range\n            )\n\n        # 5. Denoise model output using boundary conditions\n        denoised = c_out * predicted_original_sample + c_skip * sample\n\n        if not return_dict:\n            return (denoised, )\n\n        return LCMSingleStepSchedulerOutput(denoised=denoised)\n\n    # Copied from diffusers.schedulers.scheduling_ddpm.DDPMScheduler.add_noise\n    def add_noise(\n        self,\n        original_samples: torch.FloatTensor,\n        noise: torch.FloatTensor,\n        timesteps: torch.IntTensor,\n    ) -> torch.FloatTensor:\n        # Make sure alphas_cumprod and timestep have same device and dtype as original_samples\n        alphas_cumprod = self.alphas_cumprod.to(device=original_samples.device, dtype=original_samples.dtype)\n        timesteps = timesteps.to(original_samples.device)\n\n        sqrt_alpha_prod = alphas_cumprod[timesteps] ** 0.5\n        sqrt_alpha_prod = sqrt_alpha_prod.flatten()\n        while len(sqrt_alpha_prod.shape) < len(original_samples.shape):\n            sqrt_alpha_prod = sqrt_alpha_prod.unsqueeze(-1)\n\n        sqrt_one_minus_alpha_prod = (1 - alphas_cumprod[timesteps]) ** 0.5\n        sqrt_one_minus_alpha_prod = sqrt_one_minus_alpha_prod.flatten()\n        while len(sqrt_one_minus_alpha_prod.shape) < len(original_samples.shape):\n            sqrt_one_minus_alpha_prod = sqrt_one_minus_alpha_prod.unsqueeze(-1)\n\n        noisy_samples = sqrt_alpha_prod * original_samples + sqrt_one_minus_alpha_prod * noise\n        return noisy_samples\n\n    # Copied from diffusers.schedulers.scheduling_ddpm.DDPMScheduler.get_velocity\n    def get_velocity(\n        self, sample: torch.FloatTensor, noise: torch.FloatTensor, timesteps: torch.IntTensor\n    ) -> torch.FloatTensor:\n        # Make sure alphas_cumprod and timestep have same device and dtype as sample\n        alphas_cumprod = self.alphas_cumprod.to(device=sample.device, dtype=sample.dtype)\n        timesteps = timesteps.to(sample.device)\n\n        sqrt_alpha_prod = alphas_cumprod[timesteps] ** 0.5\n        sqrt_alpha_prod = sqrt_alpha_prod.flatten()\n        while len(sqrt_alpha_prod.shape) < len(sample.shape):\n            sqrt_alpha_prod = sqrt_alpha_prod.unsqueeze(-1)\n\n        sqrt_one_minus_alpha_prod = (1 - alphas_cumprod[timesteps]) ** 0.5\n        sqrt_one_minus_alpha_prod = sqrt_one_minus_alpha_prod.flatten()\n        while len(sqrt_one_minus_alpha_prod.shape) < len(sample.shape):\n            sqrt_one_minus_alpha_prod = sqrt_one_minus_alpha_prod.unsqueeze(-1)\n\n        velocity = sqrt_alpha_prod * noise - sqrt_one_minus_alpha_prod * sample\n        return velocity\n\n    def __len__(self):\n        return self.config.num_train_timesteps\n"
  },
  {
    "path": "scripts/instantir/sdxl_instantir.py",
    "content": "# Copyright 2024 The InstantX Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\n\nimport inspect\nfrom typing import Any, Callable, Dict, List, Optional, Tuple, Union\n\nimport numpy as np\nimport PIL.Image\nimport torch\nimport torch.nn.functional as F\nfrom transformers import (\n    CLIPImageProcessor,\n    CLIPTextModel,\n    CLIPTextModelWithProjection,\n    CLIPTokenizer,\n    CLIPVisionModelWithProjection,\n)\n\nfrom diffusers.utils.import_utils import is_invisible_watermark_available\n\nfrom diffusers.image_processor import PipelineImageInput, VaeImageProcessor\nfrom diffusers.loaders import (\n    FromSingleFileMixin,\n    IPAdapterMixin,\n    StableDiffusionXLLoraLoaderMixin,\n    TextualInversionLoaderMixin,\n)\nfrom diffusers.models import AutoencoderKL, ImageProjection, UNet2DConditionModel\nfrom diffusers.models.attention_processor import (\n    AttnProcessor2_0,\n    LoRAAttnProcessor2_0,\n    LoRAXFormersAttnProcessor,\n    XFormersAttnProcessor,\n)\nfrom diffusers.models.lora import adjust_lora_scale_text_encoder\nfrom diffusers.schedulers import KarrasDiffusionSchedulers, LCMScheduler\nfrom diffusers.utils import (\n    USE_PEFT_BACKEND,\n    deprecate,\n    logging,\n    replace_example_docstring,\n    scale_lora_layers,\n    unscale_lora_layers,\n    convert_unet_state_dict_to_peft\n)\nfrom diffusers.utils.torch_utils import is_compiled_module, is_torch_version, randn_tensor\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline, StableDiffusionMixin\nfrom diffusers.pipelines.stable_diffusion_xl.pipeline_output import StableDiffusionXLPipelineOutput\n\n\nif is_invisible_watermark_available():\n    from diffusers.pipelines.stable_diffusion_xl.watermark import StableDiffusionXLWatermarker\n\nfrom peft import LoraConfig, set_peft_model_state_dict\nfrom .aggregator import Aggregator\nfrom modules import sd_models, devices\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\nEXAMPLE_DOC_STRING = \"\"\"\n    Examples:\n        ```py\n        >>> # !pip install diffusers pillow transformers accelerate\n        >>> import torch\n        >>> from PIL import Image\n\n        >>> from diffusers import DDPMScheduler\n        >>> from schedulers.lcm_single_step_scheduler import LCMSingleStepScheduler\n\n        >>> from module.ip_adapter.utils import load_adapter_to_pipe\n        >>> from pipelines.sdxl_instantir import InstantIRPipeline\n\n        >>> # download models under ./models\n        >>> dcp_adapter = f'./models/adapter.pt'\n        >>> previewer_lora_path = f'./models'\n        >>> instantir_path = f'./models/aggregator.pt'\n\n        >>> # load pretrained models\n        >>> pipe = InstantIRPipeline.from_pretrained(\n        ...     \"stabilityai/stable-diffusion-xl-base-1.0\", controlnet=controlnet, vae=vae, torch_dtype=torch.float16\n        ... )\n        >>> # load adapter\n        >>> load_adapter_to_pipe(\n        ...     pipe,\n        ...     dcp_adapter,\n        ...     image_encoder_or_path = 'facebook/dinov2-large',\n        ... )\n        >>> # load previewer lora\n        >>> pipe.prepare_previewers(previewer_lora_path)\n        >>> pipe.scheduler = DDPMScheduler.from_pretrained('stabilityai/stable-diffusion-xl-base-1.0', subfolder=\"scheduler\")\n        >>> lcm_scheduler = LCMSingleStepScheduler.from_config(pipe.scheduler.config)\n\n        >>> # load aggregator weights\n        >>> pretrained_state_dict = torch.load(instantir_path)\n        >>> pipe.aggregator.load_state_dict(pretrained_state_dict)\n\n        >>> # send to GPU and fp16\n        >>> pipe.to(device=\"cuda\", dtype=torch.float16)\n        >>> pipe.aggregator.to(device=\"cuda\", dtype=torch.float16)\n        >>> pipe.enable_model_cpu_offload()\n\n        >>> # load a broken image\n        >>> low_quality_image = Image.open('path/to/your-image').convert(\"RGB\")\n\n        >>> # restoration\n        >>> image = pipe(\n        ...     image=low_quality_image,\n        ...     previewer_scheduler=lcm_scheduler,\n        ... ).images[0]\n        ```\n\"\"\"\n\nLCM_LORA_MODULES = [\n    \"to_q\",\n    \"to_k\",\n    \"to_v\",\n    \"to_out.0\",\n    \"proj_in\",\n    \"proj_out\",\n    \"ff.net.0.proj\",\n    \"ff.net.2\",\n    \"conv1\",\n    \"conv2\",\n    \"conv_shortcut\",\n    \"downsamplers.0.conv\",\n    \"upsamplers.0.conv\",\n    \"time_emb_proj\",\n]\nPREVIEWER_LORA_MODULES = [\n    \"to_q\",\n    \"to_kv\",\n    \"0.to_out\",\n    \"attn1.to_k\",\n    \"attn1.to_v\",\n    \"to_k_ip\",\n    \"to_v_ip\",\n    \"ln_k_ip.linear\",\n    \"ln_v_ip.linear\",\n    \"to_out.0\",\n    \"proj_in\",\n    \"proj_out\",\n    \"ff.net.0.proj\",\n    \"ff.net.2\",\n    \"conv1\",\n    \"conv2\",\n    \"conv_shortcut\",\n    \"downsamplers.0.conv\",\n    \"upsamplers.0.conv\",\n    \"time_emb_proj\",\n]\n\n\ndef remove_attn2(model):\n    def recursive_find_module(name, module):\n        if not \"up_blocks\" in name and not \"down_blocks\" in name and not \"mid_block\" in name: return\n        elif \"resnets\" in name: return\n        if hasattr(module, \"attn2\"):\n            setattr(module, \"attn2\", None)\n            setattr(module, \"norm2\", None)\n            return\n        for sub_name, sub_module in module.named_children():\n            recursive_find_module(f\"{name}.{sub_name}\", sub_module)\n\n    for name, module in model.named_children():\n        recursive_find_module(name, module)\n\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.rescale_noise_cfg\ndef rescale_noise_cfg(noise_cfg, noise_pred_text, guidance_rescale=0.0):\n    \"\"\"\n    Rescale `noise_cfg` according to `guidance_rescale`. Based on findings of [Common Diffusion Noise Schedules and\n    Sample Steps are Flawed](https://arxiv.org/pdf/2305.08891.pdf). See Section 3.4\n    \"\"\"\n    std_text = noise_pred_text.std(dim=list(range(1, noise_pred_text.ndim)), keepdim=True)\n    std_cfg = noise_cfg.std(dim=list(range(1, noise_cfg.ndim)), keepdim=True)\n    # rescale the results from guidance (fixes overexposure)\n    noise_pred_rescaled = noise_cfg * (std_text / std_cfg)\n    # mix with the original results from guidance by factor guidance_rescale to avoid \"plain looking\" images\n    noise_cfg = guidance_rescale * noise_pred_rescaled + (1 - guidance_rescale) * noise_cfg\n    return noise_cfg\n\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.retrieve_timesteps\ndef retrieve_timesteps(\n    scheduler,\n    num_inference_steps: Optional[int] = None,\n    device: Optional[Union[str, torch.device]] = None,\n    timesteps: Optional[List[int]] = None,\n    **kwargs,\n):\n    \"\"\"\n    Calls the scheduler's `set_timesteps` method and retrieves timesteps from the scheduler after the call. Handles\n    custom timesteps. Any kwargs will be supplied to `scheduler.set_timesteps`.\n\n    Args:\n        scheduler (`SchedulerMixin`):\n            The scheduler to get timesteps from.\n        num_inference_steps (`int`):\n            The number of diffusion steps used when generating samples with a pre-trained model. If used, `timesteps`\n            must be `None`.\n        device (`str` or `torch.device`, *optional*):\n            The device to which the timesteps should be moved to. If `None`, the timesteps are not moved.\n        timesteps (`List[int]`, *optional*):\n                Custom timesteps used to support arbitrary spacing between timesteps. If `None`, then the default\n                timestep spacing strategy of the scheduler is used. If `timesteps` is passed, `num_inference_steps`\n                must be `None`.\n\n    Returns:\n        `Tuple[torch.Tensor, int]`: A tuple where the first element is the timestep schedule from the scheduler and the\n        second element is the number of inference steps.\n    \"\"\"\n    if timesteps is not None:\n        accepts_timesteps = \"timesteps\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n        if not accepts_timesteps:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" timestep schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(timesteps=timesteps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    else:\n        scheduler.set_timesteps(num_inference_steps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n    return timesteps, num_inference_steps\n\n\nclass InstantIRPipeline(\n    DiffusionPipeline,\n    StableDiffusionMixin,\n    TextualInversionLoaderMixin,\n    StableDiffusionXLLoraLoaderMixin,\n    IPAdapterMixin,\n    FromSingleFileMixin,\n):\n    r\"\"\"\n    Pipeline for text-to-image generation using Stable Diffusion XL with ControlNet guidance.\n\n    This model inherits from [`DiffusionPipeline`]. Check the superclass documentation for the generic methods\n    implemented for all pipelines (downloading, saving, running on a particular device, etc.).\n\n    The pipeline also inherits the following loading methods:\n        - [`~loaders.TextualInversionLoaderMixin.load_textual_inversion`] for loading textual inversion embeddings\n        - [`~loaders.StableDiffusionXLLoraLoaderMixin.load_lora_weights`] for loading LoRA weights\n        - [`~loaders.StableDiffusionXLLoraLoaderMixin.save_lora_weights`] for saving LoRA weights\n        - [`~loaders.FromSingleFileMixin.from_single_file`] for loading `.ckpt` files\n        - [`~loaders.IPAdapterMixin.load_ip_adapter`] for loading IP Adapters\n\n    Args:\n        vae ([`AutoencoderKL`]):\n            Variational Auto-Encoder (VAE) model to encode and decode images to and from latent representations.\n        text_encoder ([`~transformers.CLIPTextModel`]):\n            Frozen text-encoder ([clip-vit-large-patch14](https://huggingface.co/openai/clip-vit-large-patch14)).\n        text_encoder_2 ([`~transformers.CLIPTextModelWithProjection`]):\n            Second frozen text-encoder\n            ([laion/CLIP-ViT-bigG-14-laion2B-39B-b160k](https://huggingface.co/laion/CLIP-ViT-bigG-14-laion2B-39B-b160k)).\n        tokenizer ([`~transformers.CLIPTokenizer`]):\n            A `CLIPTokenizer` to tokenize text.\n        tokenizer_2 ([`~transformers.CLIPTokenizer`]):\n            A `CLIPTokenizer` to tokenize text.\n        unet ([`UNet2DConditionModel`]):\n            A `UNet2DConditionModel` to denoise the encoded image latents.\n        controlnet ([`ControlNetModel`] or `List[ControlNetModel]`):\n            Provides additional conditioning to the `unet` during the denoising process. If you set multiple\n            ControlNets as a list, the outputs from each ControlNet are added together to create one combined\n            additional conditioning.\n        scheduler ([`SchedulerMixin`]):\n            A scheduler to be used in combination with `unet` to denoise the encoded image latents. Can be one of\n            [`DDIMScheduler`], [`LMSDiscreteScheduler`], or [`PNDMScheduler`].\n        force_zeros_for_empty_prompt (`bool`, *optional*, defaults to `\"True\"`):\n            Whether the negative prompt embeddings should always be set to 0. Also see the config of\n            `stabilityai/stable-diffusion-xl-base-1-0`.\n        add_watermarker (`bool`, *optional*):\n            Whether to use the [invisible_watermark](https://github.com/ShieldMnt/invisible-watermark/) library to\n            watermark output images. If not defined, it defaults to `True` if the package is installed; otherwise no\n            watermarker is used.\n    \"\"\"\n\n    # leave controlnet out on purpose because it iterates with unet\n    model_cpu_offload_seq = \"text_encoder->text_encoder_2->image_encoder->unet->vae\"\n    _optional_components = [\n        \"tokenizer\",\n        \"tokenizer_2\",\n        \"text_encoder\",\n        \"text_encoder_2\",\n        \"feature_extractor\",\n        \"image_encoder\",\n    ]\n    _callback_tensor_inputs = [\"latents\", \"prompt_embeds\", \"negative_prompt_embeds\"]\n\n    def __init__(\n        self,\n        vae: AutoencoderKL,\n        text_encoder: CLIPTextModel,\n        text_encoder_2: CLIPTextModelWithProjection,\n        tokenizer: CLIPTokenizer,\n        tokenizer_2: CLIPTokenizer,\n        unet: UNet2DConditionModel,\n        scheduler: KarrasDiffusionSchedulers,\n        aggregator: Aggregator = None,\n        force_zeros_for_empty_prompt: bool = True,\n        add_watermarker: Optional[bool] = None,\n        feature_extractor: CLIPImageProcessor = None,\n        image_encoder: CLIPVisionModelWithProjection = None,\n    ):\n        super().__init__()\n\n        if aggregator is None:\n            aggregator = Aggregator.from_unet(unet)\n        remove_attn2(aggregator)\n\n        self.register_modules(\n            vae=vae,\n            text_encoder=text_encoder,\n            text_encoder_2=text_encoder_2,\n            tokenizer=tokenizer,\n            tokenizer_2=tokenizer_2,\n            unet=unet,\n            aggregator=aggregator,\n            scheduler=scheduler,\n            feature_extractor=feature_extractor,\n            image_encoder=image_encoder,\n        )\n        self.vae_scale_factor = 2 ** (len(self.vae.config.block_out_channels) - 1)\n        self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor, do_convert_rgb=True)\n        self.control_image_processor = VaeImageProcessor(\n            vae_scale_factor=self.vae_scale_factor, do_convert_rgb=True, do_normalize=True\n        )\n        add_watermarker = add_watermarker if add_watermarker is not None else is_invisible_watermark_available()\n\n        if add_watermarker:\n            self.watermark = StableDiffusionXLWatermarker()\n        else:\n            self.watermark = None\n\n        self.register_to_config(force_zeros_for_empty_prompt=force_zeros_for_empty_prompt)\n\n    def prepare_previewers(self, previewer_lora_path: str, use_lcm=False):\n        if use_lcm:\n            lora_state_dict, alpha_dict = self.lora_state_dict(\n                previewer_lora_path,\n            )\n        else:\n            lora_state_dict, alpha_dict = self.lora_state_dict(\n                previewer_lora_path,\n                weight_name=\"previewer_lora_weights.bin\"\n            )\n        unet_state_dict = {\n            f'{k.replace(\"unet.\", \"\")}': v for k, v in lora_state_dict.items() if k.startswith(\"unet.\")\n        }\n        unet_state_dict = convert_unet_state_dict_to_peft(unet_state_dict)\n        lora_state_dict = {}\n        for k, v in unet_state_dict.items():\n            if \"ip\" in k:\n                k = k.replace(\"attn2\", \"attn2.processor\")\n                lora_state_dict[k] = v\n            else:\n                lora_state_dict[k] = v\n        if alpha_dict:\n            lora_alpha = next(iter(alpha_dict.values()))\n        else:\n            lora_alpha = 1\n        logger.info(f\"use lora alpha {lora_alpha}\")\n        lora_config = LoraConfig(\n            r=64,\n            target_modules=LCM_LORA_MODULES if use_lcm else PREVIEWER_LORA_MODULES,\n            lora_alpha=lora_alpha,\n            lora_dropout=0.0,\n        )\n\n        adapter_name = \"lcm\" if use_lcm else \"previewer\"\n        self.unet.add_adapter(lora_config, adapter_name)\n        incompatible_keys = set_peft_model_state_dict(self.unet, lora_state_dict, adapter_name=adapter_name)\n        if incompatible_keys is not None:\n            # check only for unexpected keys\n            unexpected_keys = getattr(incompatible_keys, \"unexpected_keys\", None)\n            missing_keys = getattr(incompatible_keys, \"missing_keys\", None)\n            if unexpected_keys:\n                raise ValueError(\n                    f\"Loading adapter weights from state_dict led to unexpected keys not found in the model: \"\n                    f\" {unexpected_keys}. \"\n                )\n        self.unet.disable_adapters()\n\n        return lora_alpha\n\n    # Copied from diffusers.pipelines.stable_diffusion_xl.pipeline_stable_diffusion_xl.StableDiffusionXLPipeline.encode_prompt\n    def encode_prompt(\n        self,\n        prompt: str,\n        prompt_2: Optional[str] = None,\n        device: Optional[torch.device] = None,\n        num_images_per_prompt: int = 1,\n        do_classifier_free_guidance: bool = True,\n        negative_prompt: Optional[str] = None,\n        negative_prompt_2: Optional[str] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        lora_scale: Optional[float] = None,\n        clip_skip: Optional[int] = None,\n    ):\n        r\"\"\"\n        Encodes the prompt into text encoder hidden states.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                prompt to be encoded\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders\n            device: (`torch.device`):\n                torch device\n            num_images_per_prompt (`int`):\n                number of images that should be generated per prompt\n            do_classifier_free_guidance (`bool`):\n                whether to use classifier free guidance or not\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            lora_scale (`float`, *optional*):\n                A lora scale that will be applied to all LoRA layers of the text encoder if LoRA layers are loaded.\n            clip_skip (`int`, *optional*):\n                Number of layers to be skipped from CLIP while computing the prompt embeddings. A value of 1 means that\n                the output of the pre-final layer will be used for computing the prompt embeddings.\n        \"\"\"\n        device = device or self._execution_device\n\n        # set lora scale so that monkey patched LoRA\n        # function of text encoder can correctly access it\n        if lora_scale is not None and isinstance(self, StableDiffusionXLLoraLoaderMixin):\n            self._lora_scale = lora_scale\n\n            # dynamically adjust the LoRA scale\n            if self.text_encoder is not None:\n                if not USE_PEFT_BACKEND:\n                    adjust_lora_scale_text_encoder(self.text_encoder, lora_scale)\n                else:\n                    scale_lora_layers(self.text_encoder, lora_scale)\n\n            if self.text_encoder_2 is not None:\n                if not USE_PEFT_BACKEND:\n                    adjust_lora_scale_text_encoder(self.text_encoder_2, lora_scale)\n                else:\n                    scale_lora_layers(self.text_encoder_2, lora_scale)\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n\n        if prompt is not None:\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        # Define tokenizers and text encoders\n        tokenizers = [self.tokenizer, self.tokenizer_2] if self.tokenizer is not None else [self.tokenizer_2]\n        text_encoders = (\n            [self.text_encoder, self.text_encoder_2] if self.text_encoder is not None else [self.text_encoder_2]\n        )\n\n        if prompt_embeds is None:\n            prompt_2 = prompt_2 or prompt\n            prompt_2 = [prompt_2] if isinstance(prompt_2, str) else prompt_2\n\n            # textual inversion: process multi-vector tokens if necessary\n            prompt_embeds_list = []\n            prompts = [prompt, prompt_2]\n            for prompt, tokenizer, text_encoder in zip(prompts, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    prompt = self.maybe_convert_prompt(prompt, tokenizer)\n\n                text_inputs = tokenizer(\n                    prompt,\n                    padding=\"max_length\",\n                    max_length=tokenizer.model_max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                text_input_ids = text_inputs.input_ids\n                untruncated_ids = tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n                if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(\n                    text_input_ids, untruncated_ids\n                ):\n                    removed_text = tokenizer.batch_decode(untruncated_ids[:, tokenizer.model_max_length - 1 : -1])\n                    logger.warning(\n                        \"The following part of your input was truncated because CLIP can only handle sequences up to\"\n                        f\" {tokenizer.model_max_length} tokens: {removed_text}\"\n                    )\n\n                prompt_embeds = text_encoder(text_input_ids.to(device), output_hidden_states=True)\n\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                pooled_prompt_embeds = prompt_embeds[0]\n                if clip_skip is None:\n                    prompt_embeds = prompt_embeds.hidden_states[-2]\n                else:\n                    # \"2\" because SDXL always indexes from the penultimate layer.\n                    prompt_embeds = prompt_embeds.hidden_states[-(clip_skip + 2)]\n\n                prompt_embeds_list.append(prompt_embeds)\n\n            prompt_embeds = torch.concat(prompt_embeds_list, dim=-1)\n\n        # get unconditional embeddings for classifier free guidance\n        zero_out_negative_prompt = negative_prompt is None and self.config.force_zeros_for_empty_prompt\n        if do_classifier_free_guidance and negative_prompt_embeds is None and zero_out_negative_prompt:\n            negative_prompt_embeds = torch.zeros_like(prompt_embeds)\n            negative_pooled_prompt_embeds = torch.zeros_like(pooled_prompt_embeds)\n        elif do_classifier_free_guidance and negative_prompt_embeds is None:\n            negative_prompt = negative_prompt or \"\"\n            negative_prompt_2 = negative_prompt_2 or negative_prompt\n\n            # normalize str to list\n            negative_prompt = batch_size * [negative_prompt] if isinstance(negative_prompt, str) else negative_prompt\n            negative_prompt_2 = (\n                batch_size * [negative_prompt_2] if isinstance(negative_prompt_2, str) else negative_prompt_2\n            )\n\n            uncond_tokens: List[str]\n            if prompt is not None and type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n            else:\n                uncond_tokens = [negative_prompt, negative_prompt_2]\n\n            negative_prompt_embeds_list = []\n            for negative_prompt, tokenizer, text_encoder in zip(uncond_tokens, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    negative_prompt = self.maybe_convert_prompt(negative_prompt, tokenizer)\n\n                max_length = prompt_embeds.shape[1]\n                uncond_input = tokenizer(\n                    negative_prompt,\n                    padding=\"max_length\",\n                    max_length=max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                negative_prompt_embeds = text_encoder(\n                    uncond_input.input_ids.to(device),\n                    output_hidden_states=True,\n                )\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                negative_pooled_prompt_embeds = negative_prompt_embeds[0]\n                negative_prompt_embeds = negative_prompt_embeds.hidden_states[-2]\n\n                negative_prompt_embeds_list.append(negative_prompt_embeds)\n\n            negative_prompt_embeds = torch.concat(negative_prompt_embeds_list, dim=-1)\n\n        if self.text_encoder_2 is not None:\n            prompt_embeds = prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n        else:\n            prompt_embeds = prompt_embeds.to(dtype=self.unet.dtype, device=device)\n\n        bs_embed, seq_len, _ = prompt_embeds.shape\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(bs_embed * num_images_per_prompt, seq_len, -1)\n\n        if do_classifier_free_guidance:\n            # duplicate unconditional embeddings for each generation per prompt, using mps friendly method\n            seq_len = negative_prompt_embeds.shape[1]\n\n            if self.text_encoder_2 is not None:\n                negative_prompt_embeds = negative_prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n            else:\n                negative_prompt_embeds = negative_prompt_embeds.to(dtype=self.unet.dtype, device=device)\n\n            negative_prompt_embeds = negative_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds = negative_prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n        pooled_prompt_embeds = pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n            bs_embed * num_images_per_prompt, -1\n        )\n        if do_classifier_free_guidance:\n            negative_pooled_prompt_embeds = negative_pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n                bs_embed * num_images_per_prompt, -1\n            )\n\n        if self.text_encoder is not None:\n            if isinstance(self, StableDiffusionXLLoraLoaderMixin) and USE_PEFT_BACKEND:\n                # Retrieve the original scale by scaling back the LoRA layers\n                unscale_lora_layers(self.text_encoder, lora_scale)\n\n        if self.text_encoder_2 is not None:\n            if isinstance(self, StableDiffusionXLLoraLoaderMixin) and USE_PEFT_BACKEND:\n                # Retrieve the original scale by scaling back the LoRA layers\n                unscale_lora_layers(self.text_encoder_2, lora_scale)\n\n        return prompt_embeds, negative_prompt_embeds, pooled_prompt_embeds, negative_pooled_prompt_embeds\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.encode_image\n    def encode_image(self, image, device, num_images_per_prompt, output_hidden_states=None):\n        dtype = next(self.image_encoder.parameters()).dtype\n\n        if not isinstance(image, torch.Tensor):\n            image = self.feature_extractor(image, return_tensors=\"pt\").pixel_values\n\n        image = image.to(device=device, dtype=dtype)\n        if output_hidden_states:\n            image_enc_hidden_states = self.image_encoder(image, output_hidden_states=True).hidden_states[-2]\n            image_enc_hidden_states = image_enc_hidden_states.repeat_interleave(num_images_per_prompt, dim=0)\n            uncond_image_enc_hidden_states = self.image_encoder(\n                torch.zeros_like(image), output_hidden_states=True\n            ).hidden_states[-2]\n            uncond_image_enc_hidden_states = uncond_image_enc_hidden_states.repeat_interleave(\n                num_images_per_prompt, dim=0\n            )\n            return image_enc_hidden_states, uncond_image_enc_hidden_states\n        else:\n            if isinstance(self.image_encoder, CLIPVisionModelWithProjection):\n                # CLIP image encoder.\n                image_embeds = self.image_encoder(image).image_embeds\n                image_embeds = image_embeds.repeat_interleave(num_images_per_prompt, dim=0)\n                uncond_image_embeds = torch.zeros_like(image_embeds)\n            else:\n                # DINO image encoder.\n                image_embeds = self.image_encoder(image).last_hidden_state\n                image_embeds = image_embeds.repeat_interleave(num_images_per_prompt, dim=0)\n                uncond_image_embeds = self.image_encoder(\n                    torch.zeros_like(image)\n                ).last_hidden_state\n                uncond_image_embeds = uncond_image_embeds.repeat_interleave(\n                    num_images_per_prompt, dim=0\n                )\n\n            return image_embeds, uncond_image_embeds\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_ip_adapter_image_embeds\n    def prepare_ip_adapter_image_embeds(\n        self, ip_adapter_image, ip_adapter_image_embeds, device, num_images_per_prompt, do_classifier_free_guidance\n    ):\n        if ip_adapter_image_embeds is None:\n            if not isinstance(ip_adapter_image, list):\n                ip_adapter_image = [ip_adapter_image]\n\n            if len(ip_adapter_image) != len(self.unet.encoder_hid_proj.image_projection_layers):\n                if isinstance(ip_adapter_image[0], list):\n                    raise ValueError(\n                        f\"`ip_adapter_image` must have same length as the number of IP Adapters. Got {len(ip_adapter_image)} images and {len(self.unet.encoder_hid_proj.image_projection_layers)} IP Adapters.\"\n                    )\n                else:\n                    logger.warning(\n                        f\"Got {len(ip_adapter_image)} images for {len(self.unet.encoder_hid_proj.image_projection_layers)} IP Adapters.\"\n                        \" By default, these images will be sent to each IP-Adapter. If this is not your use-case, please specify `ip_adapter_image` as a list of image-list, with\"\n                        f\" length equals to the number of IP-Adapters.\"\n                    )\n                    ip_adapter_image = [ip_adapter_image] * len(self.unet.encoder_hid_proj.image_projection_layers)\n\n            image_embeds = []\n            for single_ip_adapter_image, image_proj_layer in zip(\n                ip_adapter_image, self.unet.encoder_hid_proj.image_projection_layers\n            ):\n                output_hidden_state = isinstance(self.image_encoder, CLIPVisionModelWithProjection) and not isinstance(image_proj_layer, ImageProjection)\n                single_image_embeds, single_negative_image_embeds = self.encode_image(\n                    single_ip_adapter_image, device, 1, output_hidden_state\n                )\n                single_image_embeds = torch.stack([single_image_embeds] * (num_images_per_prompt//single_image_embeds.shape[0]), dim=0)\n                single_negative_image_embeds = torch.stack(\n                    [single_negative_image_embeds] * (num_images_per_prompt//single_negative_image_embeds.shape[0]), dim=0\n                )\n\n                if do_classifier_free_guidance:\n                    single_image_embeds = torch.cat([single_negative_image_embeds, single_image_embeds])\n                    single_image_embeds = single_image_embeds.to(device)\n\n                image_embeds.append(single_image_embeds)\n        else:\n            repeat_dims = [1]\n            image_embeds = []\n            for single_image_embeds in ip_adapter_image_embeds:\n                if do_classifier_free_guidance:\n                    single_negative_image_embeds, single_image_embeds = single_image_embeds.chunk(2)\n                    single_image_embeds = single_image_embeds.repeat(\n                        num_images_per_prompt, *(repeat_dims * len(single_image_embeds.shape[1:]))\n                    )\n                    single_negative_image_embeds = single_negative_image_embeds.repeat(\n                        num_images_per_prompt, *(repeat_dims * len(single_negative_image_embeds.shape[1:]))\n                    )\n                    single_image_embeds = torch.cat([single_negative_image_embeds, single_image_embeds])\n                else:\n                    single_image_embeds = single_image_embeds.repeat(\n                        num_images_per_prompt, *(repeat_dims * len(single_image_embeds.shape[1:]))\n                    )\n                image_embeds.append(single_image_embeds)\n\n        return image_embeds\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_extra_step_kwargs\n    def prepare_extra_step_kwargs(self, generator, eta):\n        # prepare extra kwargs for the scheduler step, since not all schedulers have the same signature\n        # eta (η) is only used with the DDIMScheduler, it will be ignored for other schedulers.\n        # eta corresponds to η in DDIM paper: https://arxiv.org/abs/2010.02502\n        # and should be between [0, 1]\n\n        accepts_eta = \"eta\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        extra_step_kwargs = {}\n        if accepts_eta:\n            extra_step_kwargs[\"eta\"] = eta\n\n        # check if the scheduler accepts generator\n        accepts_generator = \"generator\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        if accepts_generator:\n            extra_step_kwargs[\"generator\"] = generator\n        return extra_step_kwargs\n\n    def check_inputs(\n        self,\n        prompt,\n        prompt_2,\n        image,\n        callback_steps,\n        negative_prompt=None,\n        negative_prompt_2=None,\n        prompt_embeds=None,\n        negative_prompt_embeds=None,\n        pooled_prompt_embeds=None,\n        ip_adapter_image=None,\n        ip_adapter_image_embeds=None,\n        negative_pooled_prompt_embeds=None,\n        controlnet_conditioning_scale=1.0,\n        control_guidance_start=0.0,\n        control_guidance_end=1.0,\n        callback_on_step_end_tensor_inputs=None,\n    ):\n        if callback_steps is not None and (not isinstance(callback_steps, int) or callback_steps <= 0):\n            raise ValueError(\n                f\"`callback_steps` has to be a positive integer but is {callback_steps} of type\"\n                f\" {type(callback_steps)}.\"\n            )\n\n        if callback_on_step_end_tensor_inputs is not None and not all(\n            k in self._callback_tensor_inputs for k in callback_on_step_end_tensor_inputs\n        ):\n            raise ValueError(\n                f\"`callback_on_step_end_tensor_inputs` has to be in {self._callback_tensor_inputs}, but found {[k for k in callback_on_step_end_tensor_inputs if k not in self._callback_tensor_inputs]}\"\n            )\n\n        if prompt is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt_2 is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt_2`: {prompt_2} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n        elif prompt_2 is not None and (not isinstance(prompt_2, str) and not isinstance(prompt_2, list)):\n            raise ValueError(f\"`prompt_2` has to be of type `str` or `list` but is {type(prompt_2)}\")\n\n        if negative_prompt is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n        elif negative_prompt_2 is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt_2`: {negative_prompt_2} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n\n        if prompt_embeds is not None and negative_prompt_embeds is not None:\n            if prompt_embeds.shape != negative_prompt_embeds.shape:\n                raise ValueError(\n                    \"`prompt_embeds` and `negative_prompt_embeds` must have the same shape when passed directly, but\"\n                    f\" got: `prompt_embeds` {prompt_embeds.shape} != `negative_prompt_embeds`\"\n                    f\" {negative_prompt_embeds.shape}.\"\n                )\n\n        if prompt_embeds is not None and pooled_prompt_embeds is None:\n            raise ValueError(\n                \"If `prompt_embeds` are provided, `pooled_prompt_embeds` also have to be passed. Make sure to generate `pooled_prompt_embeds` from the same text encoder that was used to generate `prompt_embeds`.\"\n            )\n\n        if negative_prompt_embeds is not None and negative_pooled_prompt_embeds is None:\n            raise ValueError(\n                \"If `negative_prompt_embeds` are provided, `negative_pooled_prompt_embeds` also have to be passed. Make sure to generate `negative_pooled_prompt_embeds` from the same text encoder that was used to generate `negative_prompt_embeds`.\"\n            )\n\n        # Check `image`\n        is_compiled = hasattr(F, \"scaled_dot_product_attention\") and isinstance(\n            self.aggregator, torch._dynamo.eval_frame.OptimizedModule\n        )\n        if (\n            isinstance(self.aggregator, Aggregator)\n            or is_compiled\n            and isinstance(self.aggregator._orig_mod, Aggregator)\n        ):\n            self.check_image(image, prompt, prompt_embeds)\n        else:\n            assert False\n\n        if control_guidance_start >= control_guidance_end:\n            raise ValueError(\n                f\"control guidance start: {control_guidance_start} cannot be larger or equal to control guidance end: {control_guidance_end}.\"\n            )\n        if control_guidance_start < 0.0:\n            raise ValueError(f\"control guidance start: {control_guidance_start} can't be smaller than 0.\")\n        if control_guidance_end > 1.0:\n            raise ValueError(f\"control guidance end: {control_guidance_end} can't be larger than 1.0.\")\n\n        if ip_adapter_image is not None and ip_adapter_image_embeds is not None:\n            raise ValueError(\n                \"Provide either `ip_adapter_image` or `ip_adapter_image_embeds`. Cannot leave both `ip_adapter_image` and `ip_adapter_image_embeds` defined.\"\n            )\n\n        if ip_adapter_image_embeds is not None:\n            if not isinstance(ip_adapter_image_embeds, list):\n                raise ValueError(\n                    f\"`ip_adapter_image_embeds` has to be of type `list` but is {type(ip_adapter_image_embeds)}\"\n                )\n            elif ip_adapter_image_embeds[0].ndim not in [3, 4]:\n                raise ValueError(\n                    f\"`ip_adapter_image_embeds` has to be a list of 3D or 4D tensors but is {ip_adapter_image_embeds[0].ndim}D\"\n                )\n\n    # Copied from diffusers.pipelines.controlnet.pipeline_controlnet.StableDiffusionControlNetPipeline.check_image\n    def check_image(self, image, prompt, prompt_embeds):\n        image_is_pil = isinstance(image, PIL.Image.Image)\n        image_is_tensor = isinstance(image, torch.Tensor)\n        image_is_np = isinstance(image, np.ndarray)\n        image_is_pil_list = isinstance(image, list) and isinstance(image[0], PIL.Image.Image)\n        image_is_tensor_list = isinstance(image, list) and isinstance(image[0], torch.Tensor)\n        image_is_np_list = isinstance(image, list) and isinstance(image[0], np.ndarray)\n\n        if (\n            not image_is_pil\n            and not image_is_tensor\n            and not image_is_np\n            and not image_is_pil_list\n            and not image_is_tensor_list\n            and not image_is_np_list\n        ):\n            raise TypeError(\n                f\"image must be passed and be one of PIL image, numpy array, torch tensor, list of PIL images, list of numpy arrays or list of torch tensors, but is {type(image)}\"\n            )\n\n        if image_is_pil:\n            image_batch_size = 1\n        else:\n            image_batch_size = len(image)\n\n        if prompt is not None and isinstance(prompt, str):\n            prompt_batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            prompt_batch_size = len(prompt)\n        elif prompt_embeds is not None:\n            prompt_batch_size = prompt_embeds.shape[0]\n\n        if image_batch_size != 1 and image_batch_size != prompt_batch_size:\n            raise ValueError(\n                f\"If image batch size is not 1, image batch size must be same as prompt batch size. image batch size: {image_batch_size}, prompt batch size: {prompt_batch_size}\"\n            )\n\n    # Copied from diffusers.pipelines.controlnet.pipeline_controlnet.StableDiffusionControlNetPipeline.prepare_image\n    def prepare_image(\n        self,\n        image,\n        width,\n        height,\n        batch_size,\n        num_images_per_prompt,\n        device,\n        dtype,\n        do_classifier_free_guidance=False,\n    ):\n        image = self.control_image_processor.preprocess(image, height=height, width=width).to(dtype=torch.float32)\n        image_batch_size = image.shape[0]\n\n        if image_batch_size == 1:\n            repeat_by = batch_size\n        else:\n            # image batch size is the same as prompt batch size\n            repeat_by = num_images_per_prompt\n        image = image.repeat_interleave(repeat_by, dim=0)\n        image = image.to(device=device, dtype=dtype)\n        return image\n\n    @torch.no_grad()\n    def init_latents(self, latents, generator, timestep):\n        noise = torch.randn(latents.shape, generator=generator[0] if isinstance(generator, list) else generator, device=self.vae.device, dtype=self.vae.dtype, layout=torch.strided)\n        bsz = latents.shape[0]\n        timestep = torch.tensor([timestep]*bsz, device=self.vae.device)\n        # Note that the latents will be scaled aleady by scheduler.add_noise\n        latents = self.scheduler.add_noise(latents, noise, timestep)\n        return latents\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_latents\n    def prepare_latents(self, batch_size, num_channels_latents, height, width, dtype, device, generator, latents=None):\n        shape = (\n            batch_size,\n            num_channels_latents,\n            int(height) // self.vae_scale_factor,\n            int(width) // self.vae_scale_factor,\n        )\n        if isinstance(generator, list) and len(generator) != batch_size:\n            raise ValueError(\n                f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n            )\n\n        if latents is None:\n            latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n        else:\n            latents = latents.to(device)\n\n        # scale the initial noise by the standard deviation required by the scheduler\n        latents = latents * self.scheduler.init_noise_sigma\n        return latents\n\n    # Copied from diffusers.pipelines.stable_diffusion_xl.pipeline_stable_diffusion_xl.StableDiffusionXLPipeline._get_add_time_ids\n    def _get_add_time_ids(\n        self, original_size, crops_coords_top_left, target_size, dtype, text_encoder_projection_dim=None\n    ):\n        add_time_ids = list(original_size + crops_coords_top_left + target_size)\n\n        passed_add_embed_dim = (\n            self.unet.config.addition_time_embed_dim * len(add_time_ids) + text_encoder_projection_dim\n        )\n        expected_add_embed_dim = self.unet.add_embedding.linear_1.in_features\n\n        if expected_add_embed_dim != passed_add_embed_dim:\n            raise ValueError(\n                f\"Model expects an added time embedding vector of length {expected_add_embed_dim}, but a vector of {passed_add_embed_dim} was created. The model has an incorrect config. Please check `unet.config.time_embedding_type` and `text_encoder_2.config.projection_dim`.\"\n            )\n\n        add_time_ids = torch.tensor([add_time_ids], dtype=dtype)\n        return add_time_ids\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion_upscale.StableDiffusionUpscalePipeline.upcast_vae\n    def upcast_vae(self):\n        dtype = self.vae.dtype\n        self.vae.to(dtype=torch.float32)\n        use_torch_2_0_or_xformers = isinstance(\n            self.vae.decoder.mid_block.attentions[0].processor,\n            (\n                AttnProcessor2_0,\n                XFormersAttnProcessor,\n                LoRAXFormersAttnProcessor,\n                LoRAAttnProcessor2_0,\n            ),\n        )\n        # if xformers or torch_2_0 is used attention block does not need\n        # to be in float32 which can save lots of memory\n        if use_torch_2_0_or_xformers:\n            self.vae.post_quant_conv.to(dtype)\n            self.vae.decoder.conv_in.to(dtype)\n            self.vae.decoder.mid_block.to(dtype)\n\n    # Copied from diffusers.pipelines.latent_consistency_models.pipeline_latent_consistency_text2img.LatentConsistencyModelPipeline.get_guidance_scale_embedding\n    def get_guidance_scale_embedding(\n        self, w: torch.Tensor, embedding_dim: int = 512, dtype: torch.dtype = torch.float32\n    ) -> torch.FloatTensor:\n        \"\"\"\n        See https://github.com/google-research/vdm/blob/dc27b98a554f65cdc654b800da5aa1846545d41b/model_vdm.py#L298\n\n        Args:\n            w (`torch.Tensor`):\n                Generate embedding vectors with a specified guidance scale to subsequently enrich timestep embeddings.\n            embedding_dim (`int`, *optional*, defaults to 512):\n                Dimension of the embeddings to generate.\n            dtype (`torch.dtype`, *optional*, defaults to `torch.float32`):\n                Data type of the generated embeddings.\n\n        Returns:\n            `torch.FloatTensor`: Embedding vectors with shape `(len(w), embedding_dim)`.\n        \"\"\"\n        assert len(w.shape) == 1\n        w = w * 1000.0\n\n        half_dim = embedding_dim // 2\n        emb = torch.log(torch.tensor(10000.0)) / (half_dim - 1)\n        emb = torch.exp(torch.arange(half_dim, dtype=dtype) * -emb)\n        emb = w.to(dtype)[:, None] * emb[None, :]\n        emb = torch.cat([torch.sin(emb), torch.cos(emb)], dim=1)\n        if embedding_dim % 2 == 1:  # zero pad\n            emb = torch.nn.functional.pad(emb, (0, 1))\n        assert emb.shape == (w.shape[0], embedding_dim)\n        return emb\n\n    @property\n    def guidance_scale(self):\n        return self._guidance_scale\n\n    @property\n    def guidance_rescale(self):\n        return self._guidance_rescale\n\n    @property\n    def clip_skip(self):\n        return self._clip_skip\n\n    # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2)\n    # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1`\n    # corresponds to doing no classifier free guidance.\n    @property\n    def do_classifier_free_guidance(self):\n        return self._guidance_scale > 1 and self.unet.config.time_cond_proj_dim is None\n\n    @property\n    def cross_attention_kwargs(self):\n        return self._cross_attention_kwargs\n\n    @property\n    def denoising_end(self):\n        return self._denoising_end\n\n    @property\n    def num_timesteps(self):\n        return self._num_timesteps\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        prompt_2: Optional[Union[str, List[str]]] = None,\n        image: PipelineImageInput = None,\n        height: Optional[int] = None,\n        width: Optional[int] = None,\n        num_inference_steps: int = 30,\n        timesteps: List[int] = None,\n        denoising_end: Optional[float] = None,\n        guidance_scale: float = 7.0,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        negative_prompt_2: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        eta: float = 0.0,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.FloatTensor] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        ip_adapter_image: Optional[PipelineImageInput] = None,\n        ip_adapter_image_embeds: Optional[List[torch.FloatTensor]] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        save_preview_row: bool = False,\n        init_latents_with_lq: bool = True,\n        multistep_restore: bool = False,\n        adastep_restore: bool = False,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        guidance_rescale: float = 0.0,\n        controlnet_conditioning_scale: float = 1.0,\n        control_guidance_start: float = 0.0,\n        control_guidance_end: float = 1.0,\n        preview_start: float = 0.0,\n        preview_end: float = 1.0,\n        original_size: Tuple[int, int] = None,\n        crops_coords_top_left: Tuple[int, int] = (0, 0),\n        target_size: Tuple[int, int] = None,\n        negative_original_size: Optional[Tuple[int, int]] = None,\n        negative_crops_coords_top_left: Tuple[int, int] = (0, 0),\n        negative_target_size: Optional[Tuple[int, int]] = None,\n        clip_skip: Optional[int] = None,\n        callback_on_step_end: Optional[Callable[[int, int, Dict], None]] = None,\n        callback_on_step_end_tensor_inputs: List[str] = [\"latents\"],\n        previewer_scheduler: KarrasDiffusionSchedulers = None,\n        reference_latents: Optional[torch.FloatTensor] = None,\n        **kwargs,\n    ):\n        r\"\"\"\n        The call function to the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide image generation. If not defined, you need to pass `prompt_embeds`.\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders.\n            image (`torch.FloatTensor`, `PIL.Image.Image`, `np.ndarray`, `List[torch.FloatTensor]`, `List[PIL.Image.Image]`, `List[np.ndarray]`,:\n                    `List[List[torch.FloatTensor]]`, `List[List[np.ndarray]]` or `List[List[PIL.Image.Image]]`):\n                The ControlNet input condition to provide guidance to the `unet` for generation. If the type is\n                specified as `torch.FloatTensor`, it is passed to ControlNet as is. `PIL.Image.Image` can also be\n                accepted as an image. The dimensions of the output image defaults to `image`'s dimensions. If height\n                and/or width are passed, `image` is resized accordingly. If multiple ControlNets are specified in\n                `init`, images must be passed as a list such that each element of the list can be correctly batched for\n                input to a single ControlNet.\n            height (`int`, *optional*, defaults to `self.unet.config.sample_size * self.vae_scale_factor`):\n                The height in pixels of the generated image. Anything below 512 pixels won't work well for\n                [stabilityai/stable-diffusion-xl-base-1.0](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0)\n                and checkpoints that are not specifically fine-tuned on low resolutions.\n            width (`int`, *optional*, defaults to `self.unet.config.sample_size * self.vae_scale_factor`):\n                The width in pixels of the generated image. Anything below 512 pixels won't work well for\n                [stabilityai/stable-diffusion-xl-base-1.0](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0)\n                and checkpoints that are not specifically fine-tuned on low resolutions.\n            num_inference_steps (`int`, *optional*, defaults to 50):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            timesteps (`List[int]`, *optional*):\n                Custom timesteps to use for the denoising process with schedulers which support a `timesteps` argument\n                in their `set_timesteps` method. If not defined, the default behavior when `num_inference_steps` is\n                passed will be used. Must be in descending order.\n            denoising_end (`float`, *optional*):\n                When specified, determines the fraction (between 0.0 and 1.0) of the total denoising process to be\n                completed before it is intentionally prematurely terminated. As a result, the returned sample will\n                still retain a substantial amount of noise as determined by the discrete timesteps selected by the\n                scheduler. The denoising_end parameter should ideally be utilized when this pipeline forms a part of a\n                \"Mixture of Denoisers\" multi-pipeline setup, as elaborated in [**Refining the Image\n                Output**](https://huggingface.co/docs/diffusers/api/pipelines/stable_diffusion/stable_diffusion_xl#refining-the-image-output)\n            guidance_scale (`float`, *optional*, defaults to 5.0):\n                A higher guidance scale value encourages the model to generate images closely linked to the text\n                `prompt` at the expense of lower image quality. Guidance scale is enabled when `guidance_scale > 1`.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide what to not include in image generation. If not defined, you need to\n                pass `negative_prompt_embeds` instead. Ignored when not using guidance (`guidance_scale < 1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide what to not include in image generation. This is sent to `tokenizer_2`\n                and `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders.\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            eta (`float`, *optional*, defaults to 0.0):\n                Corresponds to parameter eta (η) from the [DDIM](https://arxiv.org/abs/2010.02502) paper. Only applies\n                to the [`~schedulers.DDIMScheduler`], and is ignored in other schedulers.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                A [`torch.Generator`](https://pytorch.org/docs/stable/generated/torch.Generator.html) to make\n                generation deterministic.\n            latents (`torch.FloatTensor`, *optional*):\n                Pre-generated noisy latents sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor is generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs (prompt weighting). If not\n                provided, text embeddings are generated from the `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs (prompt weighting). If\n                not provided, `negative_prompt_embeds` are generated from the `negative_prompt` input argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs (prompt weighting). If\n                not provided, pooled text embeddings are generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs (prompt\n                weighting). If not provided, pooled `negative_prompt_embeds` are generated from `negative_prompt` input\n                argument.\n            ip_adapter_image: (`PipelineImageInput`, *optional*): Optional image input to work with IP Adapters.\n            ip_adapter_image_embeds (`List[torch.FloatTensor]`, *optional*):\n                Pre-generated image embeddings for IP-Adapter. It should be a list of length same as number of\n                IP-adapters. Each element should be a tensor of shape `(batch_size, num_images, emb_dim)`. It should\n                contain the negative image embedding if `do_classifier_free_guidance` is set to `True`. If not\n                provided, embeddings are computed from the `ip_adapter_image` input argument.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generated image. Choose between `PIL.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.stable_diffusion.StableDiffusionPipelineOutput`] instead of a\n                plain tuple.\n            cross_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the [`AttentionProcessor`] as defined in\n                [`self.processor`](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            controlnet_conditioning_scale (`float` or `List[float]`, *optional*, defaults to 1.0):\n                The outputs of the ControlNet are multiplied by `controlnet_conditioning_scale` before they are added\n                to the residual in the original `unet`. If multiple ControlNets are specified in `init`, you can set\n                the corresponding scale as a list.\n            control_guidance_start (`float` or `List[float]`, *optional*, defaults to 0.0):\n                The percentage of total steps at which the ControlNet starts applying.\n            control_guidance_end (`float` or `List[float]`, *optional*, defaults to 1.0):\n                The percentage of total steps at which the ControlNet stops applying.\n            original_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                If `original_size` is not the same as `target_size` the image will appear to be down- or upsampled.\n                `original_size` defaults to `(height, width)` if not specified. Part of SDXL's micro-conditioning as\n                explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            crops_coords_top_left (`Tuple[int]`, *optional*, defaults to (0, 0)):\n                `crops_coords_top_left` can be used to generate an image that appears to be \"cropped\" from the position\n                `crops_coords_top_left` downwards. Favorable, well-centered images are usually achieved by setting\n                `crops_coords_top_left` to (0, 0). Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            target_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                For most cases, `target_size` should be set to the desired height and width of the generated image. If\n                not specified it will default to `(height, width)`. Part of SDXL's micro-conditioning as explained in\n                section 2.2 of [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            negative_original_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                To negatively condition the generation process based on a specific image resolution. Part of SDXL's\n                micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). For more\n                information, refer to this issue thread: https://github.com/huggingface/diffusers/issues/4208.\n            negative_crops_coords_top_left (`Tuple[int]`, *optional*, defaults to (0, 0)):\n                To negatively condition the generation process based on a specific crop coordinates. Part of SDXL's\n                micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). For more\n                information, refer to this issue thread: https://github.com/huggingface/diffusers/issues/4208.\n            negative_target_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                To negatively condition the generation process based on a target image resolution. It should be as same\n                as the `target_size` for most cases. Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). For more\n                information, refer to this issue thread: https://github.com/huggingface/diffusers/issues/4208.\n            clip_skip (`int`, *optional*):\n                Number of layers to be skipped from CLIP while computing the prompt embeddings. A value of 1 means that\n                the output of the pre-final layer will be used for computing the prompt embeddings.\n            callback_on_step_end (`Callable`, *optional*):\n                A function that calls at the end of each denoising steps during the inference. The function is called\n                with the following arguments: `callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int,\n                callback_kwargs: Dict)`. `callback_kwargs` will include a list of all tensors as specified by\n                `callback_on_step_end_tensor_inputs`.\n            callback_on_step_end_tensor_inputs (`List`, *optional*):\n                The list of tensor inputs for the `callback_on_step_end` function. The tensors specified in the list\n                will be passed as `callback_kwargs` argument. You will only be able to include variables listed in the\n                `._callback_tensor_inputs` attribute of your pipeline class.\n\n        Examples:\n\n        Returns:\n            [`~pipelines.stable_diffusion.StableDiffusionPipelineOutput`] or `tuple`:\n                If `return_dict` is `True`, [`~pipelines.stable_diffusion.StableDiffusionPipelineOutput`] is returned,\n                otherwise a `tuple` is returned containing the output images.\n        \"\"\"\n\n        callback = kwargs.pop(\"callback\", None)\n        callback_steps = kwargs.pop(\"callback_steps\", None)\n\n        if callback is not None:\n            deprecate(\n                \"callback\",\n                \"1.0.0\",\n                \"Passing `callback` as an input argument to `__call__` is deprecated, consider using `callback_on_step_end`\",\n            )\n        if callback_steps is not None:\n            deprecate(\n                \"callback_steps\",\n                \"1.0.0\",\n                \"Passing `callback_steps` as an input argument to `__call__` is deprecated, consider using `callback_on_step_end`\",\n            )\n\n        aggregator = self.aggregator._orig_mod if is_compiled_module(self.aggregator) else self.aggregator\n        if not isinstance(ip_adapter_image, list):\n            ip_adapter_image = [ip_adapter_image] if ip_adapter_image is not None else [image]\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            prompt_2,\n            image,\n            callback_steps,\n            negative_prompt,\n            negative_prompt_2,\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            ip_adapter_image,\n            ip_adapter_image_embeds,\n            negative_pooled_prompt_embeds,\n            controlnet_conditioning_scale,\n            control_guidance_start,\n            control_guidance_end,\n            callback_on_step_end_tensor_inputs,\n        )\n\n        self._guidance_scale = guidance_scale\n        self._guidance_rescale = guidance_rescale\n        self._clip_skip = clip_skip\n        self._cross_attention_kwargs = cross_attention_kwargs\n        self._denoising_end = denoising_end\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            if not isinstance(image, PIL.Image.Image):\n                batch_size = len(image)\n            else:\n                batch_size = 1\n            prompt = [prompt] * batch_size\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n            assert batch_size == len(image) or (isinstance(image, PIL.Image.Image) or len(image) == 1)\n        else:\n            batch_size = prompt_embeds.shape[0]\n            assert batch_size == len(image) or (isinstance(image, PIL.Image.Image) or len(image) == 1)\n\n        device = self._execution_device\n\n        # 3.1 Encode input prompt\n        text_encoder_lora_scale = (\n            self.cross_attention_kwargs.get(\"scale\", None) if self.cross_attention_kwargs is not None else None\n        )\n        (\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n        ) = self.encode_prompt(\n            prompt=prompt,\n            prompt_2=prompt_2,\n            device=device,\n            num_images_per_prompt=num_images_per_prompt,\n            do_classifier_free_guidance=self.do_classifier_free_guidance,\n            negative_prompt=negative_prompt,\n            negative_prompt_2=negative_prompt_2,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            negative_pooled_prompt_embeds=negative_pooled_prompt_embeds,\n            lora_scale=text_encoder_lora_scale,\n            clip_skip=self.clip_skip,\n        )\n        # 3.2 Encode ip_adapter_image\n        if ip_adapter_image is not None or ip_adapter_image_embeds is not None:\n            image_embeds = self.prepare_ip_adapter_image_embeds(\n                ip_adapter_image,\n                ip_adapter_image_embeds,\n                device,\n                batch_size * num_images_per_prompt,\n                self.do_classifier_free_guidance,\n            )\n\n        # 4. Prepare image\n        image = self.prepare_image(\n            image=image,\n            width=width,\n            height=height,\n            batch_size=batch_size * num_images_per_prompt,\n            num_images_per_prompt=num_images_per_prompt,\n            device=device,\n            dtype=aggregator.dtype,\n            do_classifier_free_guidance=self.do_classifier_free_guidance,\n        )\n        height, width = image.shape[-2:]\n        if image.shape[1] != 4:\n            needs_upcasting = self.vae.dtype == torch.float16 and self.vae.config.force_upcast\n            if needs_upcasting:\n                image = image.float()\n                self.vae.to(dtype=torch.float32)\n            image = self.vae.encode(image).latent_dist.sample()\n            image = image * self.vae.config.scaling_factor\n            if needs_upcasting:\n                self.vae.to(dtype=torch.float16)\n                image = image.to(dtype=torch.float16)\n        else:\n            height = int(height * self.vae_scale_factor)\n            width = int(width * self.vae_scale_factor)\n\n        # 5. Prepare timesteps\n        timesteps, num_inference_steps = retrieve_timesteps(self.scheduler, num_inference_steps, device, timesteps)\n\n        # 6. Prepare latent variables\n        if init_latents_with_lq:\n            latents = self.init_latents(image, generator, timesteps[0])\n        else:\n            num_channels_latents = self.unet.config.in_channels\n            latents = self.prepare_latents(\n                batch_size * num_images_per_prompt,\n                num_channels_latents,\n                height,\n                width,\n                prompt_embeds.dtype,\n                device,\n                generator,\n                latents,\n            )\n\n        # 6.5 Optionally get Guidance Scale Embedding\n        timestep_cond = None\n        if self.unet.config.time_cond_proj_dim is not None:\n            guidance_scale_tensor = torch.tensor(self.guidance_scale - 1).repeat(batch_size * num_images_per_prompt)\n            timestep_cond = self.get_guidance_scale_embedding(\n                guidance_scale_tensor, embedding_dim=self.unet.config.time_cond_proj_dim\n            ).to(device=device, dtype=latents.dtype)\n\n        # 7. Prepare extra step kwargs.\n        extra_step_kwargs = self.prepare_extra_step_kwargs(generator, eta)\n\n        # 7.1 Create tensor stating which controlnets to keep\n        controlnet_keep = []\n        previewing = []\n        for i in range(len(timesteps)):\n            keeps = 1.0 - float(i / len(timesteps) < control_guidance_start or (i + 1) / len(timesteps) > control_guidance_end)\n            controlnet_keep.append(keeps)\n            use_preview = 1.0 - float(i / len(timesteps) < preview_start or (i + 1) / len(timesteps) > preview_end)\n            previewing.append(use_preview)\n        if isinstance(controlnet_conditioning_scale, list):\n            assert len(controlnet_conditioning_scale) == len(timesteps), f\"{len(controlnet_conditioning_scale)} controlnet scales do not match number of sampling steps {len(timesteps)}\"\n        else:\n            controlnet_conditioning_scale = [controlnet_conditioning_scale] * len(controlnet_keep)\n\n        # 7.2 Prepare added time ids & embeddings\n        original_size = original_size or (height, width)\n        target_size = target_size or (height, width)\n\n        add_text_embeds = pooled_prompt_embeds\n        if self.text_encoder_2 is None:\n            text_encoder_projection_dim = int(pooled_prompt_embeds.shape[-1])\n        else:\n            text_encoder_projection_dim = self.text_encoder_2.config.projection_dim\n\n        add_time_ids = self._get_add_time_ids(\n            original_size,\n            crops_coords_top_left,\n            target_size,\n            dtype=prompt_embeds.dtype,\n            text_encoder_projection_dim=text_encoder_projection_dim,\n        )\n\n        if negative_original_size is not None and negative_target_size is not None:\n            negative_add_time_ids = self._get_add_time_ids(\n                negative_original_size,\n                negative_crops_coords_top_left,\n                negative_target_size,\n                dtype=prompt_embeds.dtype,\n                text_encoder_projection_dim=text_encoder_projection_dim,\n            )\n        else:\n            negative_add_time_ids = add_time_ids\n\n        if self.do_classifier_free_guidance:\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds], dim=0)\n            add_text_embeds = torch.cat([negative_pooled_prompt_embeds, add_text_embeds], dim=0)\n            add_time_ids = torch.cat([negative_add_time_ids, add_time_ids], dim=0)\n            image = torch.cat([image] * 2, dim=0)\n\n        prompt_embeds = prompt_embeds.to(device)\n        add_text_embeds = add_text_embeds.to(device)\n        add_time_ids = add_time_ids.to(device).repeat(batch_size * num_images_per_prompt, 1)\n\n        # 8. Denoising loop\n        num_warmup_steps = max(len(timesteps) - num_inference_steps * self.scheduler.order, 0)\n\n        # 8.1 Apply denoising_end\n        if (\n            self.denoising_end is not None\n            and isinstance(self.denoising_end, float)\n            and self.denoising_end > 0\n            and self.denoising_end < 1\n        ):\n            discrete_timestep_cutoff = int(\n                round(\n                    self.scheduler.config.num_train_timesteps\n                    - (self.denoising_end * self.scheduler.config.num_train_timesteps)\n                )\n            )\n            num_inference_steps = len(list(filter(lambda ts: ts >= discrete_timestep_cutoff, timesteps)))\n            timesteps = timesteps[:num_inference_steps]\n\n        is_unet_compiled = is_compiled_module(self.unet)\n        is_aggregator_compiled = is_compiled_module(self.aggregator)\n        is_torch_higher_equal_2_1 = is_torch_version(\">=\", \"2.1\")\n        previewer_mean = torch.zeros_like(latents)\n        unet_mean = torch.zeros_like(latents)\n        preview_factor = torch.ones(\n            (latents.shape[0], *((1,) * (len(latents.shape) - 1))), dtype=latents.dtype, device=latents.device\n        )\n\n        self._num_timesteps = len(timesteps)\n        preview_row = []\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                # Relevant thread:\n                # https://dev-discuss.pytorch.org/t/cudagraphs-in-pytorch-2-0/1428\n                if (is_unet_compiled and is_aggregator_compiled) and is_torch_higher_equal_2_1:\n                    torch._inductor.cudagraph_mark_step_begin()\n                # expand the latents if we are doing classifier free guidance\n                latent_model_input = torch.cat([latents] * 2) if self.do_classifier_free_guidance else latents\n                latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n                prev_t = t\n                unet_model_input = latent_model_input\n\n                added_cond_kwargs = {\n                    \"text_embeds\": add_text_embeds,\n                    \"time_ids\": add_time_ids,\n                    \"image_embeds\": image_embeds\n                }\n                aggregator_added_cond_kwargs = {\"text_embeds\": add_text_embeds, \"time_ids\": add_time_ids}\n\n                # prepare time_embeds in advance as adapter input\n                cross_attention_t_emb = self.unet.get_time_embed(sample=latent_model_input, timestep=t)\n                sd_models.move_model(self.unet, devices.device, force=True) # instantir does not handle offloading nicely\n\n                cross_attention_emb = self.unet.time_embedding(cross_attention_t_emb, timestep_cond)\n                cross_attention_aug_emb = None\n\n                cross_attention_aug_emb = self.unet.get_aug_embed(\n                    emb=cross_attention_emb,\n                    encoder_hidden_states=prompt_embeds,\n                    added_cond_kwargs=added_cond_kwargs\n                )\n\n                cross_attention_emb = cross_attention_emb + cross_attention_aug_emb if cross_attention_aug_emb is not None else cross_attention_emb\n\n                if self.unet.time_embed_act is not None:\n                    cross_attention_emb = self.unet.time_embed_act(cross_attention_emb)\n\n                current_cross_attention_kwargs = {\"temb\": cross_attention_emb}\n                if cross_attention_kwargs is not None:\n                    for k,v in cross_attention_kwargs.items():\n                        current_cross_attention_kwargs[k] = v\n                self._cross_attention_kwargs = current_cross_attention_kwargs\n\n                # adaptive restoration factors\n                adaRes_scale = preview_factor.to(latent_model_input.dtype).clamp(0.0, controlnet_conditioning_scale[i])\n                cond_scale = adaRes_scale * controlnet_keep[i]\n                cond_scale = torch.cat([cond_scale] * 2) if self.do_classifier_free_guidance else cond_scale\n\n                if (cond_scale>0.1).sum().item() > 0:\n                    if previewing[i] > 0:\n                        # preview with LCM\n                        self.unet.enable_adapters()\n                        preview_noise = self.unet(\n                            latent_model_input,\n                            t,\n                            encoder_hidden_states=prompt_embeds,\n                            timestep_cond=timestep_cond,\n                            cross_attention_kwargs=self.cross_attention_kwargs,\n                            added_cond_kwargs=added_cond_kwargs,\n                            return_dict=False,\n                        )[0]\n                        preview_latent = previewer_scheduler.step(\n                            preview_noise,\n                            t.to(dtype=torch.int64),\n                            # torch.cat([latents] * 2) if self.do_classifier_free_guidance else latents,\n                            latent_model_input,     # scaled latents here for compatibility\n                            return_dict=False\n                        )[0]\n                        self.unet.disable_adapters()\n\n                        if self.do_classifier_free_guidance:\n                            preview_row.append(preview_latent.chunk(2)[1].to('cpu'))\n                        else:\n                            preview_row.append(preview_latent.to('cpu'))\n                        # Prepare 2nd order step.\n                        if multistep_restore and i+1 < len(timesteps):\n                            noise_preview = preview_noise.chunk(2)[1] if self.do_classifier_free_guidance else preview_noise\n                            first_step = self.scheduler.step(\n                                noise_preview, t, latents,\n                                **extra_step_kwargs, return_dict=True, step_forward=False\n                            )\n                            prev_t = timesteps[i + 1]\n                            unet_model_input = torch.cat([first_step.prev_sample] * 2) if self.do_classifier_free_guidance else first_step.prev_sample\n                            unet_model_input = self.scheduler.scale_model_input(unet_model_input, prev_t, heun_step=True)\n\n                    elif reference_latents is not None:\n                        preview_latent = torch.cat([reference_latents] * 2) if self.do_classifier_free_guidance else reference_latents\n                    else:\n                        preview_latent = image\n\n                    # Add fresh noise\n                    # preview_noise = torch.randn_like(preview_latent)\n                    # preview_latent = self.scheduler.add_noise(preview_latent, preview_noise, t)\n\n                    preview_latent=preview_latent.to(dtype=next(aggregator.parameters()).dtype)\n\n                    # Aggregator inference\n                    down_block_res_samples, mid_block_res_sample = aggregator(\n                        image,\n                        prev_t,\n                        encoder_hidden_states=prompt_embeds,\n                        controlnet_cond=preview_latent,\n                        # conditioning_scale=cond_scale,\n                        added_cond_kwargs=aggregator_added_cond_kwargs,\n                        return_dict=False,\n                    )\n\n                # aggregator features scaling\n                down_block_res_samples = [sample*cond_scale for sample in down_block_res_samples]\n                mid_block_res_sample = mid_block_res_sample*cond_scale\n\n                # predict the noise residual\n                noise_pred = self.unet(\n                    unet_model_input,\n                    prev_t,\n                    encoder_hidden_states=prompt_embeds,\n                    timestep_cond=timestep_cond,\n                    cross_attention_kwargs=self.cross_attention_kwargs,\n                    down_block_additional_residuals=down_block_res_samples,\n                    mid_block_additional_residual=mid_block_res_sample,\n                    added_cond_kwargs=added_cond_kwargs,\n                    return_dict=False,\n                )[0]\n\n                # perform guidance\n                if self.do_classifier_free_guidance:\n                    noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                    noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                if self.do_classifier_free_guidance and self.guidance_rescale > 0.0:\n                    # Based on 3.4. in https://arxiv.org/pdf/2305.08891.pdf\n                    noise_pred = rescale_noise_cfg(noise_pred, noise_pred_text, guidance_rescale=self.guidance_rescale)\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents_dtype = latents.dtype\n                unet_step = self.scheduler.step(noise_pred, t, latents, **extra_step_kwargs, return_dict=True)\n                latents = unet_step.prev_sample\n\n                # Update adaRes factors\n                unet_pred_latent = unet_step.pred_original_sample\n\n                # Adaptive restoration.\n                if adastep_restore:\n                    pred_x0_l2 = ((preview_latent[latents.shape[0]:].float()-unet_pred_latent.float())).pow(2).sum(dim=(1,2,3))\n                    previewer_l2 = ((preview_latent[latents.shape[0]:].float()-previewer_mean.float())).pow(2).sum(dim=(1,2,3))\n                    # unet_l2 = ((unet_pred_latent.float()-unet_mean.float())).pow(2).sum(dim=(1,2,3)).sqrt()\n                    # l2_error = (((preview_latent[latents.shape[0]:]-previewer_mean) - (unet_pred_latent-unet_mean))).pow(2).mean(dim=(1,2,3))\n                    # preview_error = torch.nn.functional.cosine_similarity(preview_latent[latents.shape[0]:].reshape(latents.shape[0], -1), unet_pred_latent.reshape(latents.shape[0],-1))\n                    previewer_mean = preview_latent[latents.shape[0]:]\n                    unet_mean = unet_pred_latent\n                    preview_factor = (pred_x0_l2 / previewer_l2).reshape(-1, 1, 1, 1)\n\n                if latents.dtype != latents_dtype:\n                    if torch.backends.mps.is_available():\n                        # some platforms (eg. apple mps) misbehave due to a pytorch bug: https://github.com/pytorch/pytorch/pull/99272\n                        latents = latents.to(latents_dtype)\n\n                if callback_on_step_end is not None:\n                    callback_kwargs = {}\n                    for k in callback_on_step_end_tensor_inputs:\n                        callback_kwargs[k] = locals()[k]\n                    callback_outputs = callback_on_step_end(self, i, t, callback_kwargs)\n\n                    latents = callback_outputs.pop(\"latents\", latents)\n                    prompt_embeds = callback_outputs.pop(\"prompt_embeds\", prompt_embeds)\n                    negative_prompt_embeds = callback_outputs.pop(\"negative_prompt_embeds\", negative_prompt_embeds)\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n                    if callback is not None and i % callback_steps == 0:\n                        step_idx = i // getattr(self.scheduler, \"order\", 1)\n                        callback(step_idx, t, latents)\n\n        if not output_type == \"latent\":\n            # make sure the VAE is in float32 mode, as it overflows in float16\n            needs_upcasting = self.vae.dtype == torch.float16 and self.vae.config.force_upcast\n\n            if needs_upcasting:\n                self.upcast_vae()\n                latents = latents.to(next(iter(self.vae.post_quant_conv.parameters())).dtype)\n\n            # unscale/denormalize the latents\n            # denormalize with the mean and std if available and not None\n            has_latents_mean = hasattr(self.vae.config, \"latents_mean\") and self.vae.config.latents_mean is not None\n            has_latents_std = hasattr(self.vae.config, \"latents_std\") and self.vae.config.latents_std is not None\n            if has_latents_mean and has_latents_std:\n                latents_mean = (\n                    torch.tensor(self.vae.config.latents_mean).view(1, 4, 1, 1).to(latents.device, latents.dtype)\n                )\n                latents_std = (\n                    torch.tensor(self.vae.config.latents_std).view(1, 4, 1, 1).to(latents.device, latents.dtype)\n                )\n                latents = latents * latents_std / self.vae.config.scaling_factor + latents_mean\n            else:\n                latents = latents / self.vae.config.scaling_factor\n\n            image = self.vae.decode(latents, return_dict=False)[0]\n\n            # cast back to fp16 if needed\n            if needs_upcasting:\n                self.vae.to(dtype=torch.float16)\n        else:\n            image = latents\n\n        if not output_type == \"latent\":\n            # apply watermark if available\n            if self.watermark is not None:\n                image = self.watermark.apply_watermark(image)\n\n            image = self.image_processor.postprocess(image, output_type=output_type)\n\n        if save_preview_row:\n            preview_image_row = []\n            if needs_upcasting:\n                self.upcast_vae()\n            for preview_latents in preview_row:\n                preview_latents = preview_latents.to(device=self.device, dtype=next(iter(self.vae.post_quant_conv.parameters())).dtype)\n                if has_latents_mean and has_latents_std:\n                    latents_mean = (\n                        torch.tensor(self.vae.config.latents_mean).view(1, 4, 1, 1).to(preview_latents.device, preview_latents.dtype)\n                    )\n                    latents_std = (\n                        torch.tensor(self.vae.config.latents_std).view(1, 4, 1, 1).to(preview_latents.device, preview_latents.dtype)\n                    )\n                    preview_latents = preview_latents * latents_std / self.vae.config.scaling_factor + latents_mean\n                else:\n                    preview_latents = preview_latents / self.vae.config.scaling_factor\n\n                preview_image = self.vae.decode(preview_latents, return_dict=False)[0]\n                preview_image = self.image_processor.postprocess(preview_image, output_type=output_type)\n                preview_image_row.append(preview_image)\n\n            # cast back to fp16 if needed\n            if needs_upcasting:\n                self.vae.to(dtype=torch.float16)\n\n        # Offload all models\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            if save_preview_row:\n                return (image, preview_image_row)\n            return (image,)\n\n        return StableDiffusionXLPipelineOutput(images=image)\n"
  },
  {
    "path": "scripts/instantir_ext.py",
    "content": "import gradio as gr\nimport torch\nimport diffusers\nfrom huggingface_hub import hf_hub_download\nfrom modules import scripts_manager, processing, shared, sd_models, devices, ipadapter\n\n\nclass Script(scripts_manager.Script):\n    def __init__(self):\n        super().__init__()\n        self.orig_pipe = None\n        self.orig_ip_unapply = None\n\n    def title(self):\n        return 'InstantIR: Image Restoration'\n\n    def show(self, is_img2img):\n        return is_img2img\n\n    def ui(self, _is_img2img): # ui elements\n        with gr.Row():\n            gr.HTML('<a href=\"https://github.com/instantX-research/InstantIR\">&nbsp InstantIR: Image Restoration</a><br>')\n        with gr.Row():\n            start = gr.Slider(label='Preview start', minimum=0.0, maximum=1.0, step=0.01, value=0.0)\n            end = gr.Slider(label='Preview end', minimum=0.0, maximum=1.0, step=0.01, value=1.0)\n        with gr.Row():\n            hq = gr.Checkbox(label='HQ init latents', value=False)\n            unload = gr.Checkbox(label='Unload after processing', value=False, visible=False)\n        with gr.Row():\n            multistep = gr.Checkbox(label='Multistep restore', value=False)\n            adastep = gr.Checkbox(label='Adaptive restore', value=False)\n        with gr.Row():\n            image = gr.Image(label='Override guidance image')\n        return [start, end, hq, multistep, adastep, image, unload]\n\n    def run(self, p: processing.StableDiffusionProcessing, *args): # pylint: disable=arguments-differ\n        supported_model_list = ['sdxl']\n        if not hasattr(p, 'init_images') or len(p.init_images) == 0:\n            shared.log.warning('InstantIR: no image')\n            return None\n        if shared.sd_model_type not in supported_model_list and shared.sd_model.__class__.__name__ != \"InstantIRPipeline\":\n            shared.log.warning(f'InstantIR: class={shared.sd_model.__class__.__name__} model={shared.sd_model_type} required={supported_model_list}')\n            return None\n        start, end, hq, multistep, adastep, image, _unload = args\n        from scripts import instantir\n        if shared.sd_model_type == \"sdxl\":\n            if shared.sd_model.__class__.__name__ != \"InstantIRPipeline\":\n                self.orig_pipe = shared.sd_model\n                self.orig_ip_unapply = ipadapter.unapply\n                adapter_file = hf_hub_download('InstantX/InstantIR', subfolder='models', filename='adapter.pt', cache_dir=shared.opts.hfcache_dir)\n                aggregator_file = hf_hub_download('InstantX/InstantIR', subfolder='models', filename='aggregator.pt', cache_dir=shared.opts.hfcache_dir)\n                previewer_file = hf_hub_download('InstantX/InstantIR', subfolder='models', filename='previewer_lora_weights.bin', cache_dir=shared.opts.hfcache_dir)\n                shared.log.debug(f'InstantIR: adapter=\"{adapter_file}\" aggregator=\"{aggregator_file}\" previewer=\"{previewer_file}\"')\n                shared.sd_model = sd_models.switch_pipe(instantir.InstantIRPipeline, shared.sd_model)\n                instantir.load_adapter_to_pipe(\n                    pipe=shared.sd_model,\n                    pretrained_model_path_or_dict=adapter_file,\n                    image_encoder_or_path='facebook/dinov2-large',\n                    use_lcm=False,\n                    use_adaln=True,\n                    )\n                shared.sd_model.prepare_previewers(previewer_file)\n                shared.sd_model.scheduler = diffusers.DDPMScheduler.from_pretrained('stabilityai/stable-diffusion-xl-base-1.0', subfolder=\"scheduler\")\n                pretrained_state_dict = torch.load(aggregator_file)\n                shared.sd_model.aggregator.load_state_dict(pretrained_state_dict)\n                shared.sd_model.aggregator.to(device=devices.device, dtype=devices.dtype)\n                ipadapter.unapply = self.dummy_unapply # disable as main processing unloads ipadapter as it thinks its not needed\n                sd_models.clear_caches()\n                sd_models.apply_balanced_offload(shared.sd_model)\n\n        shared.log.info(f'InstantIR: class={shared.sd_model.__class__.__name__} start={start} end={end} multistep={multistep} adastep={adastep} hq={hq} cache={shared.opts.hfcache_dir}')\n        p.sampler_name = 'Default' # ir has its own sampler\n        p.init() # run init early to take care of resizing\n        p.task_args['previewer_scheduler'] = instantir.LCMSingleStepScheduler.from_config(shared.sd_model.scheduler.config)\n        p.task_args['image'] = p.init_images\n        p.task_args['save_preview_row'] = False\n        p.task_args['init_latents_with_lq'] = not hq\n        p.task_args['multistep_restore'] = multistep\n        p.task_args['adastep_restore'] = adastep\n        p.task_args['preview_start'] = start\n        p.task_args['preview_end'] = end\n        p.task_args['ip_adapter_image'] = image\n        p.extra_generation_params[\"InstantIR\"] = f'Start={start} End={end} HQ={hq} Multistep={multistep} Adastep={adastep}'\n        devices.torch_gc()\n\n    def dummy_unapply(self, pipe, unload): # pylint: disable=unused-argument\n        pass\n\n    def after(self, p: processing.StableDiffusionProcessing, processed: processing.Processed, *args): # pylint: disable=arguments-differ, unused-argument\n        _start, _end, _hq, _multistep, _adastep, _image, unload = args\n        if unload:\n            shared.log.info('InstantIR: unloading adapter')\n            if self.orig_ip_unapply is not None:\n                ipadapter.unapply = self.orig_ip_unapply\n                self.orig_ip_unapply = None\n                ipadapter.unapply(shared.sd_model)\n            if hasattr(shared.sd_model, 'aggregator'):\n                shared.sd_model.aggregator = None\n            if self.orig_pipe is not None:\n                shared.sd_model = self.orig_pipe\n                self.orig_pipe = None\n            shared.sd_model.unet.register_to_config(encoder_hid_dim_type=None)\n            sd_models.apply_balanced_offload(shared.sd_model)\n            shared.log.debug(f'InstantIR restore: class={shared.sd_model.__class__.__name__}')\n            devices.torch_gc()\n        return processed\n"
  },
  {
    "path": "scripts/ipadapter.py",
    "content": "import json\nfrom PIL import Image\nimport gradio as gr\nfrom modules import scripts_manager, processing, shared, ipadapter, ui_common\n\n\nMAX_ADAPTERS = 4\n\n\nclass Script(scripts_manager.Script):\n    standalone = True\n\n    def title(self):\n        return 'IP Adapters'\n\n    def show(self, is_img2img):\n        return scripts_manager.AlwaysVisible\n\n    def load_images(self, files):\n        init_images = []\n        for file in files or []:\n            try:\n                if isinstance(file, str):\n                    from modules.api.api import decode_base64_to_image\n                    image = decode_base64_to_image(file)\n                elif isinstance(file, Image.Image):\n                    image = file\n                elif isinstance(file, dict) and 'name' in file:\n                    image = Image.open(file['name']) # _TemporaryFileWrapper from gr.Files\n                elif hasattr(file, 'name'):\n                    image = Image.open(file.name) # _TemporaryFileWrapper from gr.Files\n                else:\n                    raise ValueError(f'IP adapter unknown input: {file}')\n                init_images.append(image)\n            except Exception as e:\n                shared.log.warning(f'IP adapter failed to load image: {e}')\n        return gr.update(value=init_images, visible=len(init_images) > 0)\n\n    def display_units(self, num_units):\n        num_units = num_units or 1\n        return (num_units * [gr.update(visible=True)]) + ((MAX_ADAPTERS - num_units) * [gr.update(visible=False)])\n\n    def display_advanced(self, advanced):\n        return [gr.update(visible=advanced), gr.update(visible=advanced)]\n\n    def ui(self, _is_img2img):\n        with gr.Accordion('IP Adapters', open=False, elem_id='ipadapter', elem_classes=['ipadapter']):\n            units = []\n            adapters = []\n            scales = []\n            starts = []\n            ends = []\n            files = []\n            crops = []\n            masks = []\n            image_galleries = []\n            mask_galleries = []\n            with gr.Row():\n                num_adapters = gr.Slider(label=\"Active IP adapters\", minimum=1, maximum=MAX_ADAPTERS, step=1, value=1, scale=1)\n                unload_adapter = gr.Checkbox(label='Unload adapter', value=False, interactive=True)\n            for i in range(MAX_ADAPTERS):\n                with gr.Accordion(f'Adapter {i+1}', visible=i==0) as unit:\n                    with gr.Row():\n                        adapter = gr.Dropdown(label='Adapter', choices=list(ipadapter.get_adapters()), value='None')\n                        adapters.append(adapter)\n                        ui_common.create_refresh_button(adapter, ipadapter.get_adapters, elem_id=f\"ipadapter_adapter_{i}_refresh\")\n                    with gr.Row():\n                        scales.append(gr.Slider(label='Strength', minimum=0.0, maximum=1.0, step=0.01, value=0.5))\n                        crops.append(gr.Checkbox(label='Crop to portrait', value=False, interactive=True))\n                    with gr.Row():\n                        starts.append(gr.Slider(label='Start', minimum=0.0, maximum=1.0, step=0.1, value=0))\n                        ends.append(gr.Slider(label='End', minimum=0.0, maximum=1.0, step=0.1, value=1))\n                    with gr.Row():\n                        files.append(gr.File(label='Input images', file_count='multiple', file_types=['image'], interactive=True, height=100))\n                    with gr.Row():\n                        image_galleries.append(gr.Gallery(show_label=False, value=[], visible=False, container=False, rows=1))\n                    with gr.Row():\n                        masks.append(gr.File(label='Input masks', file_count='multiple', file_types=['image'], interactive=True, height=100))\n                    with gr.Row():\n                        mask_galleries.append(gr.Gallery(show_label=False, value=[], visible=False))\n                    files[i].change(fn=self.load_images, inputs=[files[i]], outputs=[image_galleries[i]])\n                    masks[i].change(fn=self.load_images, inputs=[masks[i]], outputs=[mask_galleries[i]])\n                units.append(unit)\n            num_adapters.change(fn=self.display_units, inputs=[num_adapters], outputs=units)\n            layers_active = gr.Checkbox(label='Layer options', value=False, interactive=True)\n            layers_label = gr.HTML('<a href=\"https://huggingface.co/docs/diffusers/main/en/using-diffusers/ip_adapter#style--layout-control\" target=\"_blank\">InstantStyle: advanced layer activation</a>', visible=False)\n            layers = gr.Textbox(label='Layer scales', placeholder='{\\n\"down\": {\"block_2\": [0.0, 1.0]},\\n\"up\": {\"block_0\": [0.0, 1.0, 0.0]}\\n}', type='text', interactive=True, lines=5, visible=False, show_label=False)\n            layers_active.change(fn=self.display_advanced, inputs=[layers_active], outputs=[layers_label, layers])\n        return [num_adapters] + [unload_adapter] + adapters + scales + files + crops + starts + ends + masks + [layers_active] + [layers]\n\n    def process(self, p: processing.StableDiffusionProcessing, *args): # pylint: disable=arguments-differ\n        args = list(args) if args is not None else []\n        if len(args) == 0:\n            return\n        units = args.pop(0)\n        unload = args.pop(0)\n        if getattr(p, 'ip_adapter_names', []) == []:\n            p.ip_adapter_names = args[:MAX_ADAPTERS][:units]\n        if getattr(p, 'ip_adapter_scales', [0.0]) == [0.0]:\n            p.ip_adapter_scales = args[MAX_ADAPTERS:MAX_ADAPTERS*2][:units]\n        if getattr(p, 'ip_adapter_images', []) == []:\n            p.ip_adapter_images = args[MAX_ADAPTERS*2:MAX_ADAPTERS*3][:units]\n        if getattr(p, 'ip_adapter_crops', []) == []:\n            p.ip_adapter_crops = args[MAX_ADAPTERS*3:MAX_ADAPTERS*4][:units]\n        if getattr(p, 'ip_adapter_starts', [0.0]) == [0.0]:\n            p.ip_adapter_starts = args[MAX_ADAPTERS*4:MAX_ADAPTERS*5][:units]\n        if getattr(p, 'ip_adapter_ends', [1.0]) == [1.0]:\n            p.ip_adapter_ends = args[MAX_ADAPTERS*5:MAX_ADAPTERS*6][:units]\n        if getattr(p, 'ip_adapter_masks', []) == []:\n            p.ip_adapter_masks = args[MAX_ADAPTERS*6:MAX_ADAPTERS*7][:units]\n            p.ip_adapter_masks = [x for x in p.ip_adapter_masks if x]\n        layers_active, layers = args[MAX_ADAPTERS*7:MAX_ADAPTERS*8]\n        p.ip_adapter_unload = unload\n        if layers_active and len(layers) > 0:\n            try:\n                layers = json.loads(layers)\n                p.ip_adapter_layers = layers\n            except Exception as e:\n                shared.log.error(f'IP adapter: failed to parse layer scales: {e}')\n        # ipadapter.apply(shared.sd_model, p, p.ip_adapter_names, p.ip_adapter_scales, p.ip_adapter_starts, p.ip_adapter_ends, p.ip_adapter_images) # called directly from processing.process_images_inner\n"
  },
  {
    "path": "scripts/ipinstruct.py",
    "content": "\"\"\"\nRepo: <https://github.com/unity-research/IP-Adapter-Instruct>\nModels: <https://huggingface.co/CiaraRowles/IP-Adapter-Instruct/tree/main>\nadapter: `sd15`=0.35GB `sdxl`=2.12GB `sd3`=1.56GB\nencoder: `laion/CLIP-ViT-H-14-laion2B-s32B-b79K`=3.94GB\n\"\"\"\nimport os\nimport importlib\nimport gradio as gr\nfrom modules import scripts_manager, processing, shared, sd_models, devices\n\n\nrepo = 'https://github.com/vladmandic/IP-Instruct'\nrepo_id = 'CiaraRowles/IP-Adapter-Instruct'\nencoder = \"laion/CLIP-ViT-H-14-laion2B-s32B-b79K\"\nfolder = os.path.join('repositories', 'ip_instruct')\n\n\nclass Script(scripts_manager.Script):\n    def __init__(self):\n        super().__init__()\n        self.orig_pipe = None\n        self.lib = None\n\n    def title(self):\n        return 'IP Instruct'\n\n    def show(self, is_img2img):\n        if shared.cmd_opts.experimental:\n            return not is_img2img\n        else:\n            return False\n\n    def install(self):\n        if not os.path.exists(folder):\n            from installer import clone\n            clone(repo, folder)\n        if self.lib is None:\n            self.lib = importlib.import_module('ip_instruct.ip_adapter')\n\n\n    def ui(self, _is_img2img): # ui elements\n        with gr.Row():\n            gr.HTML('<a href=\"https://github.com/unity-research/IP-Adapter-Instruct\">&nbsp IP Adapter Instruct</a><br>')\n        with gr.Row():\n            query = gr.Textbox(lines=1, label='Query', placeholder='use the composition from the image')\n        with gr.Row():\n            image = gr.Image(value=None, label='Image', type='pil', width=256, height=256)\n        with gr.Row():\n            strength = gr.Slider(label=\"Strength\", value=1.0, minimum=0, maximum=2.0, step=0.05)\n            tokens = gr.Slider(label=\"Tokens\", value=4, minimum=1, maximum=32, step=1)\n        with gr.Row():\n            instruct_guidance = gr.Slider(label=\"Guidance\", value=6.0, minimum=1.0, maximum=15.0, step=0.05)\n            image_guidance = gr.Slider(label=\"Guidance\", value=0.5, minimum=0, maximum=1.0, step=0.05)\n        return [query, image, strength, tokens, instruct_guidance, image_guidance]\n\n    def run(self, p: processing.StableDiffusionProcessing, query, image, strength, tokens, instruct_guidance, image_guidance): # pylint: disable=arguments-differ\n        supported_model_list = ['sd', 'sdxl', 'sd3']\n        if shared.sd_model_type not in supported_model_list:\n            shared.log.warning(f'IP-Instruct: class={shared.sd_model.__class__.__name__} model={shared.sd_model_type} required={supported_model_list}')\n            return None\n        self.install()\n        if self.lib is None:\n            shared.log.error('IP-Instruct: failed to import library')\n            return None\n        self.orig_pipe = shared.sd_model\n        if shared.sd_model_type == 'sdxl':\n            pipe = self.lib.StableDiffusionXLPipelineExtraCFG\n            cls = self.lib.IPAdapterInstructSDXL\n            ckpt = \"ip-adapter-instruct-sdxl.bin\"\n        elif shared.sd_model_type == 'sd3':\n            pipe = self.lib.StableDiffusion3PipelineExtraCFG\n            cls = self.lib.IPAdapter_sd3_Instruct\n            ckpt = \"ip-adapter-instruct-sd3.bin\"\n        else:\n            pipe = self.lib.StableDiffusionPipelineCFG\n            cls = self.lib.IPAdapterInstruct\n            ckpt = \"ip-adapter-instruct-sd15.bin\"\n\n        shared.sd_model = sd_models.switch_pipe(pipe, shared.sd_model)\n\n        import huggingface_hub as hf\n        ip_ckpt = hf.hf_hub_download(repo_id=repo_id, filename=ckpt, cache_dir=shared.opts.hfcache_dir)\n        ip_model = cls(shared.sd_model, encoder, ip_ckpt, device=devices.device, dtypein=devices.dtype, num_tokens=tokens)\n        processing.fix_seed(p)\n        shared.log.debug(f'IP-Instruct: class={shared.sd_model.__class__.__name__} wrapper={ip_model.__class__.__name__} encoder={encoder} adapter={ckpt}')\n        shared.log.info(f'IP-Instruct: image={image} query=\"{query}\" strength={strength} tokens={tokens} instruct_guidance={instruct_guidance} image_guidance={image_guidance}')\n\n        image_list = ip_model.generate(\n            query = query,\n            scale = strength,\n            instruct_guidance_scale = instruct_guidance,\n            image_guidance_scale = image_guidance,\n\n            prompt = p.prompt,\n            pil_image = image,\n            num_samples = 1,\n            num_inference_steps = p.steps,\n            seed = p.seed,\n            guidance_scale = p.cfg_scale,\n            auto_scale = False,\n            simple_cfg_mode = False,\n        )\n        processed = processing.get_processed(p, images_list=image_list, seed=p.seed, subseed=p.subseed, index_of_first_image=0) # manually created processed object\n        # p.extra_generation_params[\"IPInstruct\"] = f''\n        return processed\n\n    def after(self, p: processing.StableDiffusionProcessing, processed: processing.Processed, **kwargs): # pylint: disable=unused-argument\n        if self.orig_pipe is not None:\n            shared.sd_model = self.orig_pipe\n        return processed\n"
  },
  {
    "path": "scripts/kohya_hires_fix.py",
    "content": "import gradio as gr\nimport diffusers\nfrom modules import scripts_manager, processing, shared, sd_models, devices\n\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return 'Kohya HiRes Fix'\n\n    def show(self, is_img2img):\n        return not is_img2img\n\n    # return signature is array of gradio components\n    def ui(self, _is_img2img):\n        with gr.Row():\n            gr.HTML('<a href=\"https://github.com/huggingface/diffusers/pull/7633\">&nbsp Kohya HiRes Fix</a><br>')\n        with gr.Row():\n            enabled = gr.Checkbox(label=\"Enabled\", value=True)\n        with gr.Row():\n            scale_factor = gr.Slider(value=0.5, minimum=0, maximum=1, step=0.05, label=\"Scale factor\")\n            timestep = gr.Number(value=600, minimum=0, maximum=1000, label=\"Timestep\")\n            block_num = gr.Number(value=1, minimum=0, maximum=10, label=\"Block\")\n        return [enabled, scale_factor, timestep, block_num]\n\n    def run(self, p: processing.StableDiffusionProcessing, enabled, scale_factor, timestep, block_num): # pylint: disable=arguments-differ\n        if not enabled:\n            return None\n        if shared.sd_model_type != 'sd':\n            shared.log.warning(f'Kohya Hires Fix: pipeline={shared.sd_model_type} required=sd')\n            return None\n        old_pipe = shared.sd_model\n        high_res_fix = [{'timestep': timestep, 'scale_factor': scale_factor, 'block_num': block_num}]\n        shared.sd_model = diffusers.StableDiffusionPipeline.from_pipe(shared.sd_model, **{ 'custom_pipeline': 'kohya_hires_fix', 'high_res_fix': high_res_fix })\n        sd_models.copy_diffuser_options(shared.sd_model, old_pipe)\n        sd_models.move_model(shared.sd_model, devices.device) # move pipeline to device\n        sd_models.set_diffuser_options(shared.sd_model, vae=None, op='model')\n        shared.log.debug(f'Kohya Hires Fix: pipeline={shared.sd_model.__class__.__name__} args={high_res_fix}')\n        processed = processing.process_images(p)\n        shared.sd_model = old_pipe\n        return processed\n"
  },
  {
    "path": "scripts/layerdiffuse/__init__.py",
    "content": "# using https://github.com/rootonchair/diffuser_layerdiffuse\n\nfrom huggingface_hub import hf_hub_download\nfrom safetensors.torch import load_file\nfrom modules import shared, errors, devices\nfrom .layerdiffuse_model import TransparentVAEDecoder\nfrom .layerdiffuse_loader import load_lora_to_unet, merge_delta_weights_into_unet\n\n\ndef apply_layerdiffuse_sd15(pipeline):\n    vae_model_path = hf_hub_download('LayerDiffusion/layerdiffusion-v1', 'layer_sd15_vae_transparent_decoder.safetensors', cache_dir=shared.opts.hfcache_dir)\n    transparent_vae = pipeline.vae\n    transparent_vae.__class__ = TransparentVAEDecoder\n    transparent_vae.set_transparent_decoder(load_file(vae_model_path))\n    pipeline.vae = transparent_vae\n\n    lora_model_path = hf_hub_download('LayerDiffusion/layerdiffusion-v1','layer_sd15_transparent_attn.safetensors', cache_dir=shared.opts.hfcache_dir)\n    load_lora_to_unet(pipeline.unet, lora_model_path, frames=1, device=devices.device, dtype=devices.dtype)\n\n\ndef apply_layerdiffuse_sdxl_attn(pipeline):\n    vae_model_path = hf_hub_download('LayerDiffusion/layerdiffusion-v1', 'vae_transparent_decoder.safetensors', cache_dir=shared.opts.hfcache_dir)\n    transparent_vae = pipeline.vae\n    transparent_vae.__class__ = TransparentVAEDecoder\n    transparent_vae.set_transparent_decoder(load_file(vae_model_path))\n    pipeline.vae = transparent_vae\n\n    pipeline.load_lora_weights('rootonchair/diffuser_layerdiffuse', weight_name='diffuser_layer_xl_transparent_attn.safetensors')\n\n\ndef apply_layerdiffuse_sdxl_conv(pipeline):\n    model_path = hf_hub_download('LayerDiffusion/layerdiffusion-v1', 'vae_transparent_decoder.safetensors', cache_dir=shared.opts.hfcache_dir)\n    transparent_vae = pipeline.vae\n    transparent_vae.__class__ = TransparentVAEDecoder\n    transparent_vae.set_transparent_decoder(load_file(model_path))\n    pipeline.vae = transparent_vae\n\n    lora_model_path = hf_hub_download('rootonchair/diffuser_layerdiffuse', 'diffuser_layer_xl_transparent_conv.safetensors', cache_dir=shared.opts.hfcache_dir)\n    lora_state_dict = load_file(lora_model_path)\n    merge_delta_weights_into_unet(pipeline, lora_state_dict)\n\n\ndef apply_layerdiffuse():\n    try:\n        if shared.sd_model_type == 'sd':\n            shared.log.info(f'LayerDiffuse: class={shared.sd_model.__class__.__name__}')\n            apply_layerdiffuse_sd15(shared.sd_model)\n        elif shared.sd_model_type == 'sdxl':\n            # shared.log.info(f'LayerDiffuse: class={shared.sd_model.__class__.__name__} type=attn')\n            # apply_layerdiffuse_sdxl_attn(shared.sd_model)\n            shared.log.info(f'LayerDiffuse: class={shared.sd_model.__class__.__name__} type=conv')\n            apply_layerdiffuse_sdxl_conv(shared.sd_model)\n        else:\n            shared.log.warning(f'LayerDiffuse: class={shared.sd_model.__class__.__name__} not supported')\n        shared.sd_model.layerdiffusion = True\n    except Exception as e:\n        shared.log.error(f'LayerDiffuse: {e}')\n        errors.display(e, 'LayerDiffuse')\n"
  },
  {
    "path": "scripts/layerdiffuse/layerdiffuse_loader.py",
    "content": "from safetensors.torch import load_file\nfrom scripts.layerdiffuse.layerdiffuse_model import LoraLoader, AttentionSharingProcessor # pylint: disable=no-name-in-module\n\n\ndef merge_delta_weights_into_unet(pipe, delta_weights):\n    unet_weights = pipe.unet.state_dict()\n\n    for k in delta_weights.keys():\n        assert k in unet_weights.keys(), k\n\n    for key in delta_weights.keys():\n        dtype = unet_weights[key].dtype\n        unet_weights[key] = unet_weights[key].to(dtype=delta_weights[key].dtype) + delta_weights[key].to(device=unet_weights[key].device)\n        unet_weights[key] = unet_weights[key].to(dtype)\n    pipe.unet.load_state_dict(unet_weights, strict=True)\n    return pipe\n\n\ndef get_attr(obj, attr):\n    attrs = attr.split(\".\")\n    for name in attrs:\n        obj = getattr(obj, name)\n    return obj\n\n\ndef load_lora_to_unet(unet, model_path, frames, device, dtype):\n    module_mapping_sd15 = {0: 'input_blocks.1.1.transformer_blocks.0.attn1', 1: 'input_blocks.1.1.transformer_blocks.0.attn2', 2: 'input_blocks.2.1.transformer_blocks.0.attn1', 3: 'input_blocks.2.1.transformer_blocks.0.attn2', 4: 'input_blocks.4.1.transformer_blocks.0.attn1', 5: 'input_blocks.4.1.transformer_blocks.0.attn2', 6: 'input_blocks.5.1.transformer_blocks.0.attn1', 7: 'input_blocks.5.1.transformer_blocks.0.attn2', 8: 'input_blocks.7.1.transformer_blocks.0.attn1', 9: 'input_blocks.7.1.transformer_blocks.0.attn2', 10: 'input_blocks.8.1.transformer_blocks.0.attn1', 11: 'input_blocks.8.1.transformer_blocks.0.attn2', 12: 'output_blocks.3.1.transformer_blocks.0.attn1', 13: 'output_blocks.3.1.transformer_blocks.0.attn2', 14: 'output_blocks.4.1.transformer_blocks.0.attn1', 15: 'output_blocks.4.1.transformer_blocks.0.attn2', 16: 'output_blocks.5.1.transformer_blocks.0.attn1', 17: 'output_blocks.5.1.transformer_blocks.0.attn2', 18: 'output_blocks.6.1.transformer_blocks.0.attn1', 19: 'output_blocks.6.1.transformer_blocks.0.attn2', 20: 'output_blocks.7.1.transformer_blocks.0.attn1', 21: 'output_blocks.7.1.transformer_blocks.0.attn2', 22: 'output_blocks.8.1.transformer_blocks.0.attn1', 23: 'output_blocks.8.1.transformer_blocks.0.attn2', 24: 'output_blocks.9.1.transformer_blocks.0.attn1', 25: 'output_blocks.9.1.transformer_blocks.0.attn2', 26: 'output_blocks.10.1.transformer_blocks.0.attn1', 27: 'output_blocks.10.1.transformer_blocks.0.attn2', 28: 'output_blocks.11.1.transformer_blocks.0.attn1', 29: 'output_blocks.11.1.transformer_blocks.0.attn2', 30: 'middle_block.1.transformer_blocks.0.attn1', 31: 'middle_block.1.transformer_blocks.0.attn2'}\n\n    sd15_to_diffusers = {\n        'input_blocks.1.1.transformer_blocks.0.attn1': 'down_blocks.0.attentions.0.transformer_blocks.0.attn1',\n        'input_blocks.1.1.transformer_blocks.0.attn2': 'down_blocks.0.attentions.0.transformer_blocks.0.attn2',\n        'input_blocks.2.1.transformer_blocks.0.attn1': 'down_blocks.0.attentions.1.transformer_blocks.0.attn1',\n        'input_blocks.2.1.transformer_blocks.0.attn2': 'down_blocks.0.attentions.1.transformer_blocks.0.attn2',\n        'input_blocks.4.1.transformer_blocks.0.attn1': 'down_blocks.1.attentions.0.transformer_blocks.0.attn1',\n        'input_blocks.4.1.transformer_blocks.0.attn2': 'down_blocks.1.attentions.0.transformer_blocks.0.attn2',\n        'input_blocks.5.1.transformer_blocks.0.attn1': 'down_blocks.1.attentions.1.transformer_blocks.0.attn1',\n        'input_blocks.5.1.transformer_blocks.0.attn2': 'down_blocks.1.attentions.1.transformer_blocks.0.attn2',\n        'input_blocks.7.1.transformer_blocks.0.attn1': 'down_blocks.2.attentions.0.transformer_blocks.0.attn1',\n        'input_blocks.7.1.transformer_blocks.0.attn2': 'down_blocks.2.attentions.0.transformer_blocks.0.attn2',\n        'input_blocks.8.1.transformer_blocks.0.attn1': 'down_blocks.2.attentions.1.transformer_blocks.0.attn1',\n        'input_blocks.8.1.transformer_blocks.0.attn2': 'down_blocks.2.attentions.1.transformer_blocks.0.attn2',\n        'output_blocks.3.1.transformer_blocks.0.attn1': \"up_blocks.1.attentions.0.transformer_blocks.0.attn1\",\n        'output_blocks.3.1.transformer_blocks.0.attn2': \"up_blocks.1.attentions.0.transformer_blocks.0.attn2\",\n        'output_blocks.4.1.transformer_blocks.0.attn1': \"up_blocks.1.attentions.1.transformer_blocks.0.attn1\",\n        'output_blocks.4.1.transformer_blocks.0.attn2': \"up_blocks.1.attentions.1.transformer_blocks.0.attn2\",\n        'output_blocks.5.1.transformer_blocks.0.attn1': \"up_blocks.1.attentions.2.transformer_blocks.0.attn1\",\n        'output_blocks.5.1.transformer_blocks.0.attn2': \"up_blocks.1.attentions.2.transformer_blocks.0.attn2\",\n        'output_blocks.6.1.transformer_blocks.0.attn1': \"up_blocks.2.attentions.0.transformer_blocks.0.attn1\",\n        'output_blocks.6.1.transformer_blocks.0.attn2': \"up_blocks.2.attentions.0.transformer_blocks.0.attn2\",\n        'output_blocks.7.1.transformer_blocks.0.attn1': \"up_blocks.2.attentions.1.transformer_blocks.0.attn1\",\n        'output_blocks.7.1.transformer_blocks.0.attn2': \"up_blocks.2.attentions.1.transformer_blocks.0.attn2\",\n        'output_blocks.8.1.transformer_blocks.0.attn1': \"up_blocks.2.attentions.2.transformer_blocks.0.attn1\",\n        'output_blocks.8.1.transformer_blocks.0.attn2': \"up_blocks.2.attentions.2.transformer_blocks.0.attn2\",\n        'output_blocks.9.1.transformer_blocks.0.attn1': \"up_blocks.3.attentions.0.transformer_blocks.0.attn1\",\n        'output_blocks.9.1.transformer_blocks.0.attn2': \"up_blocks.3.attentions.0.transformer_blocks.0.attn2\",\n        'output_blocks.10.1.transformer_blocks.0.attn1': \"up_blocks.3.attentions.1.transformer_blocks.0.attn1\",\n        'output_blocks.10.1.transformer_blocks.0.attn2': \"up_blocks.3.attentions.1.transformer_blocks.0.attn2\",\n        'output_blocks.11.1.transformer_blocks.0.attn1': \"up_blocks.3.attentions.2.transformer_blocks.0.attn1\",\n        'output_blocks.11.1.transformer_blocks.0.attn2': \"up_blocks.3.attentions.2.transformer_blocks.0.attn2\",\n        'middle_block.1.transformer_blocks.0.attn1': \"mid_block.attentions.0.transformer_blocks.0.attn1\",\n        'middle_block.1.transformer_blocks.0.attn2': \"mid_block.attentions.0.transformer_blocks.0.attn2\",\n    }\n\n    layer_list = []\n    for i in range(32):\n        real_key = module_mapping_sd15[i]\n        diffuser_key = sd15_to_diffusers[real_key]\n        attn_module = get_attr(unet, diffuser_key)\n        u = AttentionSharingProcessor(attn_module, frames=frames, use_control=False).to(device=device, dtype=dtype)\n        layer_list.append(u)\n        attn_module.set_processor(u)\n\n    loader = LoraLoader(layer_list)\n    lora_state_dict = load_file(model_path)\n    loader.load_state_dict(lora_state_dict)\n"
  },
  {
    "path": "scripts/layerdiffuse/layerdiffuse_model.py",
    "content": "import torch.nn as nn\nimport torch\nimport cv2\nimport numpy as np\n\nimport einops\nfrom tqdm import tqdm\nfrom typing import Optional, Tuple, Union\nfrom diffusers import AutoencoderKL\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.models.modeling_utils import ModelMixin\nfrom diffusers.models.autoencoders.vae import DecoderOutput\nfrom diffusers.models.attention_processor import Attention, AttnProcessor\ntry:\n    from diffusers.models.unet_2d_blocks import UNetMidBlock2D, get_down_block, get_up_block\nexcept Exception:\n    from diffusers.models.unets.unet_2d_blocks import UNetMidBlock2D, get_down_block, get_up_block\n\n\ndef zero_module(module):\n    \"\"\"\n    Zero out the parameters of a module and return it.\n    \"\"\"\n    for p in module.parameters():\n        p.detach().zero_()\n    return module\n\n\nclass LatentTransparencyOffsetEncoder(torch.nn.Module):\n    def __init__(self, *args, **kwargs):\n        super().__init__(*args, **kwargs)\n        self.blocks = torch.nn.Sequential(\n            torch.nn.Conv2d(4, 32, kernel_size=3, padding=1, stride=1),\n            nn.SiLU(),\n            torch.nn.Conv2d(32, 32, kernel_size=3, padding=1, stride=1),\n            nn.SiLU(),\n            torch.nn.Conv2d(32, 64, kernel_size=3, padding=1, stride=2),\n            nn.SiLU(),\n            torch.nn.Conv2d(64, 64, kernel_size=3, padding=1, stride=1),\n            nn.SiLU(),\n            torch.nn.Conv2d(64, 128, kernel_size=3, padding=1, stride=2),\n            nn.SiLU(),\n            torch.nn.Conv2d(128, 128, kernel_size=3, padding=1, stride=1),\n            nn.SiLU(),\n            torch.nn.Conv2d(128, 256, kernel_size=3, padding=1, stride=2),\n            nn.SiLU(),\n            torch.nn.Conv2d(256, 256, kernel_size=3, padding=1, stride=1),\n            nn.SiLU(),\n            zero_module(torch.nn.Conv2d(256, 4, kernel_size=3, padding=1, stride=1)),\n        )\n\n    def __call__(self, x):\n        return self.blocks(x)\n\n\n# 1024 * 1024 * 3 -> 16 * 16 * 512 -> 1024 * 1024 * 3\nclass UNet1024(ModelMixin, ConfigMixin):\n    @register_to_config\n    def __init__(\n        self,\n        in_channels: int = 3,\n        out_channels: int = 3,\n        down_block_types: Tuple[str] = (\"DownBlock2D\", \"DownBlock2D\", \"DownBlock2D\", \"DownBlock2D\", \"AttnDownBlock2D\", \"AttnDownBlock2D\", \"AttnDownBlock2D\"),\n        up_block_types: Tuple[str] = (\"AttnUpBlock2D\", \"AttnUpBlock2D\", \"AttnUpBlock2D\", \"UpBlock2D\", \"UpBlock2D\", \"UpBlock2D\", \"UpBlock2D\"),\n        block_out_channels: Tuple[int] = (32, 32, 64, 128, 256, 512, 512),\n        layers_per_block: int = 2,\n        mid_block_scale_factor: float = 1,\n        downsample_padding: int = 1,\n        downsample_type: str = \"conv\",\n        upsample_type: str = \"conv\",\n        dropout: float = 0.0,\n        act_fn: str = \"silu\",\n        attention_head_dim: Optional[int] = 8,\n        norm_num_groups: int = 4,\n        norm_eps: float = 1e-5,\n    ):\n        super().__init__()\n\n        # input\n        self.conv_in = nn.Conv2d(in_channels, block_out_channels[0], kernel_size=3, padding=(1, 1))\n        self.latent_conv_in = zero_module(nn.Conv2d(4, block_out_channels[2], kernel_size=1))\n\n        self.down_blocks = nn.ModuleList([])\n        self.mid_block = None\n        self.up_blocks = nn.ModuleList([])\n\n        # down\n        output_channel = block_out_channels[0]\n        for i, down_block_type in enumerate(down_block_types):\n            input_channel = output_channel\n            output_channel = block_out_channels[i]\n            is_final_block = i == len(block_out_channels) - 1\n\n            down_block = get_down_block(\n                down_block_type,\n                num_layers=layers_per_block,\n                in_channels=input_channel,\n                out_channels=output_channel,\n                temb_channels=None,\n                add_downsample=not is_final_block,\n                resnet_eps=norm_eps,\n                resnet_act_fn=act_fn,\n                resnet_groups=norm_num_groups,\n                attention_head_dim=attention_head_dim if attention_head_dim is not None else output_channel,\n                downsample_padding=downsample_padding,\n                resnet_time_scale_shift=\"default\",\n                downsample_type=downsample_type,\n                dropout=dropout,\n            )\n            self.down_blocks.append(down_block)\n\n        # mid\n        self.mid_block = UNetMidBlock2D(\n            in_channels=block_out_channels[-1],\n            temb_channels=None,\n            dropout=dropout,\n            resnet_eps=norm_eps,\n            resnet_act_fn=act_fn,\n            output_scale_factor=mid_block_scale_factor,\n            resnet_time_scale_shift=\"default\",\n            attention_head_dim=attention_head_dim if attention_head_dim is not None else block_out_channels[-1],\n            resnet_groups=norm_num_groups,\n            attn_groups=None,\n            add_attention=True,\n        )\n\n        # up\n        reversed_block_out_channels = list(reversed(block_out_channels))\n        output_channel = reversed_block_out_channels[0]\n        for i, up_block_type in enumerate(up_block_types):\n            prev_output_channel = output_channel\n            output_channel = reversed_block_out_channels[i]\n            input_channel = reversed_block_out_channels[min(i + 1, len(block_out_channels) - 1)]\n\n            is_final_block = i == len(block_out_channels) - 1\n\n            up_block = get_up_block(\n                up_block_type,\n                num_layers=layers_per_block + 1,\n                in_channels=input_channel,\n                out_channels=output_channel,\n                prev_output_channel=prev_output_channel,\n                temb_channels=None,\n                add_upsample=not is_final_block,\n                resnet_eps=norm_eps,\n                resnet_act_fn=act_fn,\n                resnet_groups=norm_num_groups,\n                attention_head_dim=attention_head_dim if attention_head_dim is not None else output_channel,\n                resnet_time_scale_shift=\"default\",\n                upsample_type=upsample_type,\n                dropout=dropout,\n            )\n            self.up_blocks.append(up_block)\n            prev_output_channel = output_channel\n\n        # out\n        self.conv_norm_out = nn.GroupNorm(num_channels=block_out_channels[0], num_groups=norm_num_groups, eps=norm_eps)\n        self.conv_act = nn.SiLU()\n        self.conv_out = nn.Conv2d(block_out_channels[0], out_channels, kernel_size=3, padding=1)\n\n    def forward(self, x, latent):\n        sample_latent = self.latent_conv_in(latent)\n        sample = self.conv_in(x)\n        emb = None\n\n        down_block_res_samples = (sample,)\n        for i, downsample_block in enumerate(self.down_blocks):\n            if i == 3:\n                sample = sample + sample_latent\n\n            sample, res_samples = downsample_block(hidden_states=sample, temb=emb)\n            down_block_res_samples += res_samples\n\n        sample = self.mid_block(sample, emb)\n\n        for upsample_block in self.up_blocks:\n            res_samples = down_block_res_samples[-len(upsample_block.resnets) :]\n            down_block_res_samples = down_block_res_samples[: -len(upsample_block.resnets)]\n            sample = upsample_block(sample, res_samples, emb)\n\n        sample = self.conv_norm_out(sample)\n        sample = self.conv_act(sample)\n        sample = self.conv_out(sample)\n        return sample\n\n\ndef checkerboard(shape):\n    return np.indices(shape).sum(axis=0) % 2\n\n\nclass TransparentVAEDecoder(AutoencoderKL):\n    @register_to_config\n    def __init__(\n        self,\n        in_channels: int = 3,\n        out_channels: int = 3,\n        down_block_types: Tuple[str] = (\"DownEncoderBlock2D\",),\n        up_block_types: Tuple[str] = (\"UpDecoderBlock2D\",),\n        block_out_channels: Tuple[int] = (64,),\n        layers_per_block: int = 1,\n        act_fn: str = \"silu\",\n        latent_channels: int = 4,\n        norm_num_groups: int = 32,\n        sample_size: int = 32,\n        scaling_factor: float = 0.18215,\n        latents_mean: Optional[Tuple[float]] = None,\n        latents_std: Optional[Tuple[float]] = None,\n        force_upcast: float = True,\n    ):\n        super().__init__(in_channels, out_channels, down_block_types, up_block_types, block_out_channels, layers_per_block, act_fn, latent_channels, norm_num_groups, sample_size, scaling_factor, latents_mean, latents_std, force_upcast)\n\n    def set_transparent_decoder(self, sd, mod_number=1):\n        model = UNet1024(in_channels=3, out_channels=4)\n        model.load_state_dict(sd, strict=True)\n        model.to(device=self.device, dtype=self.dtype)\n        model.eval()\n\n        self.transparent_decoder = model\n        self.mod_number = mod_number\n\n    def estimate_single_pass(self, pixel, latent):\n        y = self.transparent_decoder(pixel, latent)\n        return y\n\n    def estimate_augmented(self, pixel, latent):\n        args = [\n            [False, 0], [False, 1], [False, 2], [False, 3], [True, 0], [True, 1], [True, 2], [True, 3],\n        ]\n\n        result = []\n\n        for flip, rok in tqdm(args):\n            feed_pixel = pixel.clone()\n            feed_latent = latent.clone()\n\n            if flip:\n                feed_pixel = torch.flip(feed_pixel, dims=(3,))\n                feed_latent = torch.flip(feed_latent, dims=(3,))\n\n            feed_pixel = torch.rot90(feed_pixel, k=rok, dims=(2, 3))\n            feed_latent = torch.rot90(feed_latent, k=rok, dims=(2, 3))\n\n            eps = self.estimate_single_pass(feed_pixel, feed_latent).clip(0, 1)\n            eps = torch.rot90(eps, k=-rok, dims=(2, 3))\n\n            if flip:\n                eps = torch.flip(eps, dims=(3,))\n\n            result += [eps]\n\n        result = torch.stack(result, dim=0)\n        median = torch.median(result, dim=0).values\n        return median\n\n    def decode(self, z: torch.Tensor, return_dict: bool = True, generator=None) -> Union[DecoderOutput, torch.Tensor]:\n        pixel = super().decode(z, return_dict=False, generator=generator)[0]\n        pixel = pixel / 2 + 0.5\n\n\n        result_pixel = []\n        for i in range(int(z.shape[0])):\n            if self.mod_number != 1 and i % self.mod_number != 0:\n                img = torch.cat((pixel[i:i+1], torch.ones_like(pixel[i:i+1,:1,:,:])), dim=1)\n                result_pixel.append(img)\n                continue\n\n            y = self.estimate_augmented(pixel[i:i+1], z[i:i+1])\n\n            y = y.clip(0, 1).movedim(1, -1)\n            alpha = y[..., :1]\n            fg = y[..., 1:]\n\n            _B, H, W, _C = fg.shape\n            cb = checkerboard(shape=(H // 64, W // 64))\n            cb = cv2.resize(cb, (W, H), interpolation=cv2.INTER_LANCZOS4)\n            cb = (0.5 + (cb - 0.5) * 0.1)[None, ..., None]\n            cb = torch.from_numpy(cb).to(fg)\n\n            png = torch.cat([fg, alpha], dim=3)\n            png = png.permute(0, 3, 1, 2)\n            result_pixel.append(png)\n\n        result_pixel = torch.cat(result_pixel, dim=0)\n        result_pixel = (result_pixel - 0.5) * 2\n\n        if not return_dict:\n            return (result_pixel, )\n        return DecoderOutput(sample=result_pixel)\n\n\nclass TransparentVAEEncoder:\n    def __init__(self, sd, device=\"cpu\", torch_dtype=torch.float32):\n        self.load_device = device\n        self.dtype = torch_dtype\n\n        model = LatentTransparencyOffsetEncoder()\n        model.load_state_dict(sd, strict=True)\n        model.to(device=self.offload_device, dtype=self.dtype)\n        model.eval()\n\n\nclass HookerLayers(torch.nn.Module):\n    def __init__(self, layer_list):\n        super().__init__()\n        self.layers = torch.nn.ModuleList(layer_list)\n\n\nclass AdditionalAttentionCondsEncoder(torch.nn.Module):\n    def __init__(self):\n        super().__init__()\n\n        self.blocks_0 = torch.nn.Sequential(\n            torch.nn.Conv2d(3, 32, kernel_size=3, padding=1, stride=1),\n            torch.nn.SiLU(),\n            torch.nn.Conv2d(32, 32, kernel_size=3, padding=1, stride=1),\n            torch.nn.SiLU(),\n            torch.nn.Conv2d(32, 64, kernel_size=3, padding=1, stride=2),\n            torch.nn.SiLU(),\n            torch.nn.Conv2d(64, 64, kernel_size=3, padding=1, stride=1),\n            torch.nn.SiLU(),\n            torch.nn.Conv2d(64, 128, kernel_size=3, padding=1, stride=2),\n            torch.nn.SiLU(),\n            torch.nn.Conv2d(128, 128, kernel_size=3, padding=1, stride=1),\n            torch.nn.SiLU(),\n            torch.nn.Conv2d(128, 256, kernel_size=3, padding=1, stride=2),\n            torch.nn.SiLU(),\n            torch.nn.Conv2d(256, 256, kernel_size=3, padding=1, stride=1),\n            torch.nn.SiLU(),\n        )  # 64*64*256\n\n        self.blocks_1 = torch.nn.Sequential(\n            torch.nn.Conv2d(256, 256, kernel_size=3, padding=1, stride=2),\n            torch.nn.SiLU(),\n            torch.nn.Conv2d(256, 256, kernel_size=3, padding=1, stride=1),\n            torch.nn.SiLU(),\n        )  # 32*32*256\n\n        self.blocks_2 = torch.nn.Sequential(\n            torch.nn.Conv2d(256, 256, kernel_size=3, padding=1, stride=2),\n            torch.nn.SiLU(),\n            torch.nn.Conv2d(256, 256, kernel_size=3, padding=1, stride=1),\n            torch.nn.SiLU(),\n        )  # 16*16*256\n\n        self.blocks_3 = torch.nn.Sequential(\n            torch.nn.Conv2d(256, 256, kernel_size=3, padding=1, stride=2),\n            torch.nn.SiLU(),\n            torch.nn.Conv2d(256, 256, kernel_size=3, padding=1, stride=1),\n            torch.nn.SiLU(),\n        )  # 8*8*256\n\n        self.blks = [self.blocks_0, self.blocks_1, self.blocks_2, self.blocks_3]\n\n    def __call__(self, h):\n        results = {}\n        for b in self.blks:\n            h = b(h)\n            results[int(h.shape[2]) * int(h.shape[3])] = h\n        return results\n\n\nclass LoraLoader(torch.nn.Module):\n    def __init__(self, layer_list, use_control=False):\n        super().__init__()\n        self.hookers = HookerLayers(layer_list)\n\n        if use_control:\n            self.kwargs_encoder = AdditionalAttentionCondsEncoder()\n        else:\n            self.kwargs_encoder = None\n\n\nclass LoRALinearLayer(torch.nn.Module):\n    def __init__(self, in_features: int, out_features: int, rank: int = 256):\n        super().__init__()\n        self.down = torch.nn.Linear(in_features, rank, bias=False)\n        self.up = torch.nn.Linear(rank, out_features, bias=False)\n\n    def forward(self, h, org):\n        org_weight = org.weight.to(h)\n        org_bias = org.bias.to(h) if org.bias is not None else None\n        down_weight = self.down.weight\n        up_weight = self.up.weight\n        final_weight = org_weight + torch.mm(up_weight, down_weight)\n        return torch.nn.functional.linear(h, final_weight, org_bias)\n\n\nclass AttentionSharingProcessor(nn.Module):\n    def __init__(self, module, frames=2, use_control=True, rank=256):\n        super().__init__()\n\n        self.heads = module.heads\n        self.frames = frames\n        self.original_module = [module]\n        q_in_channels, q_out_channels = module.to_q.in_features, module.to_q.out_features\n        k_in_channels, k_out_channels = module.to_k.in_features, module.to_k.out_features\n        v_in_channels, v_out_channels = module.to_v.in_features, module.to_v.out_features\n        o_in_channels, o_out_channels = module.to_out[0].in_features, module.to_out[0].out_features\n\n        hidden_size = k_out_channels\n\n        self.to_q_lora = [LoRALinearLayer(q_in_channels, q_out_channels, rank) for _ in range(self.frames)]\n        self.to_k_lora = [LoRALinearLayer(k_in_channels, k_out_channels, rank) for _ in range(self.frames)]\n        self.to_v_lora = [LoRALinearLayer(v_in_channels, v_out_channels, rank) for _ in range(self.frames)]\n        self.to_out_lora = [LoRALinearLayer(o_in_channels, o_out_channels, rank) for _ in range(self.frames)]\n\n        self.to_q_lora = torch.nn.ModuleList(self.to_q_lora)\n        self.to_k_lora = torch.nn.ModuleList(self.to_k_lora)\n        self.to_v_lora = torch.nn.ModuleList(self.to_v_lora)\n        self.to_out_lora = torch.nn.ModuleList(self.to_out_lora)\n\n        self.temporal_i = torch.nn.Linear(in_features=hidden_size, out_features=hidden_size)\n        self.temporal_n = torch.nn.LayerNorm(hidden_size, elementwise_affine=True, eps=1e-6)\n        self.temporal_q = torch.nn.Linear(in_features=hidden_size, out_features=hidden_size)\n        self.temporal_k = torch.nn.Linear(in_features=hidden_size, out_features=hidden_size)\n        self.temporal_v = torch.nn.Linear(in_features=hidden_size, out_features=hidden_size)\n        self.temporal_o = torch.nn.Linear(in_features=hidden_size, out_features=hidden_size)\n\n        self.control_convs = None\n\n        if use_control:\n            self.control_convs = [torch.nn.Sequential(\n                torch.nn.Conv2d(256, 256, kernel_size=3, padding=1, stride=1),\n                torch.nn.SiLU(),\n                torch.nn.Conv2d(256, hidden_size, kernel_size=1),\n            ) for _ in range(self.frames)]\n            self.control_convs = torch.nn.ModuleList(self.control_convs)\n\n        self.control_signals = None\n        self.processor = AttnProcessor()\n\n    def __call__(\n        self,\n        attn: Attention,\n        hidden_states: torch.FloatTensor,\n        encoder_hidden_states: Optional[torch.FloatTensor] = None,\n        attention_mask: Optional[torch.FloatTensor] = None,\n    ) -> torch.Tensor:\n        batch_size, sequence_length, _ = (\n            hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape\n        )\n        attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n\n        modified_hidden_states = einops.rearrange(hidden_states, '(b f) d c -> f b d c', f=self.frames)\n\n        if self.control_convs is not None:\n            context_dim = int(modified_hidden_states.shape[2])\n            control_outs = []\n            for f in range(self.frames):\n                control_signal = self.control_signals[context_dim].to(modified_hidden_states)\n                control = self.control_convs[f](control_signal)\n                control = einops.rearrange(control, 'b c h w -> b (h w) c')\n                control_outs.append(control)\n            control_outs = torch.stack(control_outs, dim=0)\n            modified_hidden_states = modified_hidden_states + control_outs.to(modified_hidden_states)\n\n        if encoder_hidden_states is None:\n            framed_context = modified_hidden_states\n        else:\n            framed_context = einops.rearrange(encoder_hidden_states, '(b f) d c -> f b d c', f=self.frames)\n\n\n        attn_outs = []\n        for f in range(self.frames):\n            fcf = framed_context[f]\n\n            if encoder_hidden_states is not None:\n                framed_cond_mark = einops.rearrange(torch.ones(batch_size*self.frames), '(b f) -> f b', f=self.frames).to(modified_hidden_states)\n                cond_overwrite = []\n                if len(cond_overwrite) > f:\n                    cond_overwrite = cond_overwrite[f]\n                else:\n                    cond_overwrite = None\n                if cond_overwrite is not None:\n                    cond_mark = framed_cond_mark[f][:, None, None]\n                    fcf = cond_overwrite.to(fcf) * (1.0 - cond_mark) + fcf * cond_mark\n\n            query = self.to_q_lora[f](modified_hidden_states[f], attn.to_q)\n            key = self.to_k_lora[f](fcf, attn.to_k)\n            value = self.to_v_lora[f](fcf, attn.to_v)\n\n            query = attn.head_to_batch_dim(query)\n            key = attn.head_to_batch_dim(key)\n            value = attn.head_to_batch_dim(value)\n\n            attention_probs = attn.get_attention_scores(query, key, attention_mask)\n            output = torch.bmm(attention_probs, value)\n            output = attn.batch_to_head_dim(output)\n            output = self.to_out_lora[f](output, attn.to_out[0])\n            output = attn.to_out[1](output)\n            attn_outs.append(output)\n\n        attn_outs = torch.stack(attn_outs, dim=0)\n        modified_hidden_states = modified_hidden_states + attn_outs.to(modified_hidden_states)\n        modified_hidden_states = einops.rearrange(modified_hidden_states, 'f b d c -> (b f) d c', f=self.frames)\n\n        x = modified_hidden_states\n        x = self.temporal_n(x)\n        x = self.temporal_i(x)\n        d = x.shape[1]\n\n        x = einops.rearrange(x, \"(b f) d c -> (b d) f c\", f=self.frames)\n\n        query = self.temporal_q(x)\n        key = self.temporal_k(x)\n        value = self.temporal_v(x)\n\n        query = attn.head_to_batch_dim(query)\n        key = attn.head_to_batch_dim(key)\n        value = attn.head_to_batch_dim(value)\n\n        attention_probs = attn.get_attention_scores(query, key, attention_mask)\n        x = torch.bmm(attention_probs, value)\n        x = attn.batch_to_head_dim(x)\n\n        x = self.temporal_o(x)\n        x = einops.rearrange(x, \"(b d) f c -> (b f) d c\", d=d)\n\n        modified_hidden_states = modified_hidden_states + x\n\n        return modified_hidden_states - hidden_states\n"
  },
  {
    "path": "scripts/layerdiffuse_ext.py",
    "content": "import gradio as gr\nfrom modules import shared, scripts_manager, sd_models\n\n\nclass Script(scripts_manager.Script):\n\n    def title(self):\n        return 'LayerDiffuse: Transparent Image'\n\n    def show(self, is_img2img):\n        return True\n\n    def apply(self):\n        from scripts import layerdiffuse # pylint: disable=no-name-in-module\n        if not shared.sd_loaded:\n            shared.log.error('LayerDiffuse: model not loaded')\n            return self.is_active()\n        if shared.sd_model_type != 'sd' and shared.sd_model_type != 'sdxl':\n            shared.log.error(f'LayerDiffuse: incorrect base model: class={shared.sd_model.__class__.__name__} type={shared.sd_model_type}')\n            return self.is_active()\n        if hasattr(shared.sd_model, 'layerdiffusion'):\n            shared.log.warning('LayerDiffuse: already applied')\n            return self.is_active()\n        layerdiffuse.apply_layerdiffuse()\n        return self.is_active()\n\n    def reload(self):\n        sd_models.reload_model_weights(force=True)\n        return self.is_active()\n\n    def is_active(self):\n        if not shared.sd_loaded:\n            return '<div style=\"color: darkred\">LayerDiffuse: model not loaded</div><br>'\n        if shared.sd_model_type != 'sd' and shared.sd_model_type != 'sdxl':\n            return '<div style=\"color: darkred\">LayerDiffuse: incorrect base model</div><br>'\n        if hasattr(shared.sd_model, 'layerdiffusion'):\n            return '<div style=\"color: darkgreen\">LayerDiffuse: active</div><br>'\n        return '<div style=\"color: darkgray\">LayerDiffuse: inactive</div><br>'\n\n    def ui(self, _is_img2img):\n        with gr.Row():\n            gr.HTML(\"\"\"\n                    <a href=\"https://github.com/rootonchair/diffuser_layerdiffuse\">&nbsp LayerDiffuse: Transparent Image</a><br><br>\n                    <div>- Click Apply to model to apply LayerDiffuse to current model</div>\n                    <div>- Click Reload model to remove LayerDiffuse from current model</div><br>\n                    \"\"\")\n        with gr.Row():\n            active = gr.HTML('')\n        with gr.Row():\n            check_btn = gr.Button('Check status', variant='primary')\n            apply_btn = gr.Button('Apply to model', variant='primary')\n            reload_btn = gr.Button('Reload model', variant='primary')\n            check_btn.click(fn=self.is_active, inputs=[], outputs=[active])\n            apply_btn.click(fn=self.apply, inputs=[], outputs=[active])\n            reload_btn.click(fn=self.reload, inputs=[], outputs=[active])\n        return []\n"
  },
  {
    "path": "scripts/lbm/__init__.py",
    "content": "from .inference import evaluate\nfrom .utils import get_model\nfrom .extract import extract_object, resize_and_center_crop\n\n\n__all__ = [\"evaluate\", \"get_model\", \"extract_object\", \"resize_and_center_crop\"]\n"
  },
  {
    "path": "scripts/lbm/base/__init__.py",
    "content": "from .base_model import BaseModel\nfrom .model_config import ModelConfig\n\n\n__all__ = [\"BaseModel\", \"ModelConfig\"]\n"
  },
  {
    "path": "scripts/lbm/base/base_model.py",
    "content": "from typing import Any, Dict\nimport torch\nimport torch.nn as nn\nfrom .model_config import ModelConfig\n\n\nclass BaseModel(nn.Module):\n    def __init__(self, config: ModelConfig):\n        nn.Module.__init__(self)\n        self.config = config\n        self.input_key = config.input_key\n        self.device = torch.device(\"cpu\")\n        self.dtype = torch.float32\n\n    def on_fit_start(self, device: torch.device | None = None, *args, **kwargs):\n        \"\"\"Called when the training starts\n\n        Args:\n            device (Optional[torch.device], optional): The device to use. Usefull to set\n                relevant parameters on the model and embedder to the right device only\n                once at the start of the training. Defaults to None.\n        \"\"\"\n        if device is not None:\n            self.device = device\n        self.to(self.device)\n\n    def forward(self, batch: Dict[str, Any], *args, **kwargs):\n        raise NotImplementedError(\"forward method is not implemented\")\n\n    def freeze(self):\n        \"\"\"Freeze the model\"\"\"\n        self.eval()\n        for param in self.parameters():\n            param.requires_grad = False\n\n    def to(self, *args, **kwargs):\n        device, dtype, non_blocking, _ = torch._C._nn._parse_to(*args, **kwargs)\n        self = super().to(\n            device=device,\n            dtype=dtype,\n            non_blocking=non_blocking,\n        )\n\n        if device is not None:\n            self.device = device\n        if dtype is not None:\n            self.dtype = dtype\n        return self\n\n    def compute_metrics(self, batch: Dict[str, Any], *args, **kwargs):\n        \"\"\"Compute the metrics\"\"\"\n        return {}\n\n    def sample(self, batch: Dict[str, Any], *args, **kwargs):\n        \"\"\"Sample from the model\"\"\"\n        return {}\n\n    def log_samples(self, batch: Dict[str, Any], *args, **kwargs):\n        \"\"\"Log the samples\"\"\"\n        return None\n\n    def on_train_batch_end(self, batch: Dict[str, Any], *args, **kwargs):\n        \"\"\"Update the model an optimization is perforned on a batch.\"\"\"\n        pass\n"
  },
  {
    "path": "scripts/lbm/base/model_config.py",
    "content": "from pydantic.dataclasses import dataclass\nfrom ..config import BaseConfig\n\n\n@dataclass\nclass ModelConfig(BaseConfig):\n    input_key: str = \"image\"\n"
  },
  {
    "path": "scripts/lbm/config.py",
    "content": "import json\nimport os\nimport warnings\nfrom dataclasses import asdict, field\nfrom typing import Any, Dict, Union\nimport yaml\nfrom pydantic import ValidationError\nfrom pydantic.dataclasses import dataclass\nfrom yaml import safe_load\n\n\n@dataclass\nclass BaseConfig:\n    \"\"\"This is the BaseConfig class which defines all the useful loading and saving methods\n    of the configs\"\"\"\n\n    name: str = field(init=False)\n\n    def __post_init__(self):\n        self.name = self.__class__.__name__\n\n    @classmethod\n    def from_dict(cls, config_dict: Dict[str, Any]) -> \"BaseConfig\":\n        \"\"\"Creates a BaseConfig instance from a dictionnary\n\n        Args:\n            config_dict (dict): The Python dictionnary containing all the parameters\n\n        Returns:\n            :class:`BaseConfig`: The created instance\n        \"\"\"\n        try:\n            config = cls(**config_dict)\n        except (ValidationError, TypeError) as e:\n            raise e\n        return config\n\n    @classmethod\n    def _dict_from_json(cls, json_path: Union[str, os.PathLike]) -> Dict[str, Any]:\n        try:\n            with open(json_path) as f:\n                try:\n                    config_dict = json.load(f)\n                    return config_dict\n\n                except (TypeError, json.JSONDecodeError) as e:\n                    raise TypeError(\n                        f\"File {json_path} not loadable. Maybe not json ? \\n\"\n                        f\"Catch Exception {type(e)} with message: \" + str(e)\n                    ) from e\n\n        except FileNotFoundError:\n            raise FileNotFoundError(\n                f\"Config file not found. Please check path '{json_path}'\"\n            )\n\n    @classmethod\n    def from_json(cls, json_path: str) -> \"BaseConfig\":\n        \"\"\"Creates a BaseConfig instance from a JSON config file\n\n        Args:\n            json_path (str): The path to the json file containing all the parameters\n\n        Returns:\n            :class:`BaseConfig`: The created instance\n        \"\"\"\n        config_dict = cls._dict_from_json(json_path)\n\n        config_name = config_dict.pop(\"name\")\n\n        if cls.__name__ != config_name:\n            warnings.warn(\n                f\"You are trying to load a \"\n                f\"`{ cls.__name__}` while a \"\n                f\"`{config_name}` is given.\"\n            )\n\n        return cls.from_dict(config_dict)\n\n    def to_dict(self) -> dict:\n        \"\"\"Transforms object into a Python dictionnary\n\n        Returns:\n            (dict): The dictionnary containing all the parameters\"\"\"\n        return asdict(self)\n\n    def to_json_string(self):\n        \"\"\"Transforms object into a JSON string\n\n        Returns:\n            (str): The JSON str containing all the parameters\"\"\"\n        return json.dumps(self.to_dict())\n\n    def save_json(self, file_path: str):\n        \"\"\"Saves a ``.json`` file from the dataclass\n\n        Args:\n            file_path (str): path to the file\n        \"\"\"\n        with open(os.path.join(file_path), \"w\", encoding=\"utf-8\") as fp:\n            fp.write(self.to_json_string())\n\n    def save_yaml(self, file_path: str):\n        \"\"\"Saves a ``.yaml`` file from the dataclass\n\n        Args:\n            file_path (str): path to the file\n        \"\"\"\n        with open(os.path.join(file_path), \"w\", encoding=\"utf-8\") as fp:\n            yaml.dump(self.to_dict(), fp)\n\n    @classmethod\n    def from_yaml(cls, yaml_path: str) -> \"BaseConfig\":\n        \"\"\"Creates a BaseConfig instance from a YAML config file\n\n        Args:\n            yaml_path (str): The path to the yaml file containing all the parameters\n\n        Returns:\n            :class:`BaseConfig`: The created instance\n        \"\"\"\n        with open(yaml_path, \"r\") as f:\n            try:\n                config_dict = safe_load(f)\n            except yaml.YAMLError as e:\n                raise yaml.YAMLError(\n                    f\"File {yaml_path} not loadable. Maybe not yaml ? \\n\"\n                    f\"Catch Exception {type(e)} with message: \" + str(e)\n                ) from e\n\n        config_name = config_dict.pop(\"name\")\n\n        if cls.__name__ != config_name:\n            warnings.warn(\n                f\"You are trying to load a \"\n                f\"`{ cls.__name__}` while a \"\n                f\"`{config_name}` is given.\"\n            )\n\n        return cls.from_dict(config_dict)\n"
  },
  {
    "path": "scripts/lbm/embedders/__init__.py",
    "content": "from .conditioners_wrapper import ConditionerWrapper\nfrom .latents_concat import LatentsConcatEmbedder, LatentsConcatEmbedderConfig\n\n\n__all__ = [\"LatentsConcatEmbedder\", \"LatentsConcatEmbedderConfig\", \"ConditionerWrapper\"]\n"
  },
  {
    "path": "scripts/lbm/embedders/base/__init__.py",
    "content": "from .base_conditioner import BaseConditioner\nfrom .base_conditioner_config import BaseConditionerConfig\n\n\n__all__ = [\"BaseConditioner\", \"BaseConditionerConfig\"]\n"
  },
  {
    "path": "scripts/lbm/embedders/base/base_conditioner.py",
    "content": "from typing import Any, Dict\nfrom ...base.base_model import BaseModel\nfrom .base_conditioner_config import BaseConditionerConfig\n\n\nDIM2CONDITIONING = {\n    2: \"vector\",\n    3: \"crossattn\",\n    4: \"concat\",\n}\n\n\nclass BaseConditioner(BaseModel):\n    \"\"\"This is the base class for all the conditioners. This absctacts the conditioning process\n\n    Args:\n\n        config (BaseConditionerConfig): The configuration of the conditioner\n\n    Examples\n    ########\n\n    To use the conditioner, you can import the class and use it as follows:\n\n    .. code-block:: python\n\n        from cr.models.embedders import BaseConditioner, BaseConditionerConfig\n\n        # Create the conditioner config\n        config = BaseConditionerConfig(\n            input_key=\"text\", # The key for the input\n            unconditional_conditioning_rate=0.3, # Drops the conditioning with 30% probability during training\n        )\n\n        # Create the conditioner\n        conditioner = BaseConditioner(config)\n    \"\"\"\n\n    def __init__(self, config: BaseConditionerConfig):\n        BaseModel.__init__(self, config)\n        self.config = config\n        self.input_key = config.input_key\n        self.dim2outputkey = DIM2CONDITIONING\n        self.ucg_rate = config.unconditional_conditioning_rate\n\n    def forward(\n        self, batch: Dict[str, Any], force_zero_embedding: bool = False, *args, **kwargs\n    ):\n        \"\"\"\n         Forward pass of the embedder.\n\n        Args:\n\n            batch (Dict[str, Any]): A dictionary containing the input data.\n            force_zero_embedding (bool): Whether to force zero embedding.\n                This will return an embedding with all entries set to 0. Defaults to False.\n        \"\"\"\n        raise NotImplementedError(\"Forward pass must be implemented in child class\")\n"
  },
  {
    "path": "scripts/lbm/embedders/base/base_conditioner_config.py",
    "content": "from pydantic.dataclasses import dataclass\nfrom ...config import BaseConfig\n\n\n@dataclass\nclass BaseConditionerConfig(BaseConfig):\n    \"\"\"This is the ClipEmbedderConfig class which defines all the useful parameters to instantiate the model\n\n    Args:\n\n        input_key (str): The key for the input. Defaults to \"text\".\n        unconditional_conditioning_rate (float): Drops the conditioning with this probability during training. Defaults to 0.0.\n    \"\"\"\n\n    input_key: str = \"text\"\n    unconditional_conditioning_rate: float = 0.0\n\n    def __post_init__(self):\n        super().__post_init__()\n\n        assert (\n            self.unconditional_conditioning_rate >= 0.0\n            and self.unconditional_conditioning_rate <= 1.0\n        ), \"Unconditional conditioning rate should be between 0 and 1\"\n"
  },
  {
    "path": "scripts/lbm/embedders/conditioners_wrapper.py",
    "content": "import logging\nfrom typing import Any, Dict, List, Union\nimport torch\nimport torch.nn as nn\nfrom .base import BaseConditioner\n\n\nKEY2CATDIM = {\n    \"vector\": 1,\n    \"crossattn\": 2,\n    \"concat\": 1,\n}\n\n\nclass ConditionerWrapper(nn.Module):\n    \"\"\"\n    Wrapper for conditioners. This class allows to apply multiple conditioners in a single forward pass.\n\n    Args:\n\n        conditioners (List[BaseConditioner]): List of conditioners to apply in the forward pass.\n    \"\"\"\n\n    def __init__(\n        self,\n        conditioners: Union[List[BaseConditioner], None] = None,\n    ):\n        nn.Module.__init__(self)\n        self.conditioners = nn.ModuleList(conditioners)\n        self.device = torch.device(\"cpu\")\n        self.dtype = torch.float32\n\n    def conditioner_sanity_check(self):\n        cond_input_keys = []\n        for conditioner in self.conditioners:\n            cond_input_keys.append(conditioner.input_key)\n\n        assert all([key in set(cond_input_keys) for key in self.ucg_keys])\n\n    def on_fit_start(self, device: torch.device = None, *args, **kwargs):\n        for conditioner in self.conditioners:\n            conditioner.on_fit_start(device=device, *args, **kwargs)\n\n    def forward(\n        self,\n        batch: Dict[str, Any],\n        ucg_keys: List[str] = None,\n        set_ucg_rate_zero=False,\n        *args,\n        **kwargs,\n    ):\n        \"\"\"\n        Forward pass through all conditioners\n\n        Args:\n\n            batch: batch of data\n            ucg_keys: keys to use for ucg. This will force zero conditioning in all the\n                conditioners that have input_keys in ucg_keys\n            set_ucg_rate_zero: set the ucg rate to zero for all the conditioners except the ones in ucg_keys\n\n        Returns:\n\n        Dict[str, Any]: The output of the conditioner. The output of the conditioner is a dictionary with the main key \"cond\" and value\n            is a dictionary with the keys as the type of conditioning and the value as the conditioning tensor.\n        \"\"\"\n        if ucg_keys is None:\n            ucg_keys = []\n        wrapper_outputs = dict(cond={})\n        for conditioner in self.conditioners:\n            if conditioner.input_key in ucg_keys:\n                force_zero_embedding = True\n            elif conditioner.ucg_rate > 0 and not set_ucg_rate_zero:\n                force_zero_embedding = bool(torch.rand(1) < conditioner.ucg_rate)\n            else:\n                force_zero_embedding = False\n\n            conditioner_output = conditioner.forward(\n                batch, force_zero_embedding=force_zero_embedding, *args, **kwargs\n            )\n            logging.debug(\n                f\"conditioner:{conditioner.__class__.__name__}, input_key:{conditioner.input_key}, force_ucg_zero_embedding:{force_zero_embedding}\"\n            )\n            for key in conditioner_output:\n                logging.debug(\n                    f\"conditioner_output:{key}:{conditioner_output[key].shape}\"\n                )\n                if key in wrapper_outputs[\"cond\"]:\n                    wrapper_outputs[\"cond\"][key] = torch.cat(\n                        [wrapper_outputs[\"cond\"][key], conditioner_output[key]],\n                        KEY2CATDIM[key],\n                    )\n                else:\n                    wrapper_outputs[\"cond\"][key] = conditioner_output[key]\n\n        return wrapper_outputs\n\n    def to(self, *args, **kwargs):\n        \"\"\"\n        Move all conditioners to device and dtype\n        \"\"\"\n        device, dtype, non_blocking, _ = torch._C._nn._parse_to(*args, **kwargs)\n        self = super().to(device=device, dtype=dtype, non_blocking=non_blocking)\n        for conditioner in self.conditioners:\n            conditioner.to(device=device, dtype=dtype, non_blocking=non_blocking)\n\n        if device is not None:\n            self.device = device\n        if dtype is not None:\n            self.dtype = dtype\n\n        return self\n"
  },
  {
    "path": "scripts/lbm/embedders/latents_concat/__init__.py",
    "content": "from .latents_concat_embedder_config import LatentsConcatEmbedderConfig\nfrom .latents_concat_embedder_model import LatentsConcatEmbedder\n\n\n__all__ = [\"LatentsConcatEmbedder\", \"LatentsConcatEmbedderConfig\"]\n"
  },
  {
    "path": "scripts/lbm/embedders/latents_concat/latents_concat_embedder_config.py",
    "content": "from dataclasses import field\nfrom typing import List, Union\nfrom pydantic.dataclasses import dataclass\nfrom ..base import BaseConditionerConfig\n\n\n@dataclass\nclass LatentsConcatEmbedderConfig(BaseConditionerConfig):\n    \"\"\"\n    Configs for the LatentsConcatEmbedder embedder\n\n    Args:\n        image_keys (Union[List[str], None]): Keys of the images to compute the VAE embeddings\n        mask_keys (Union[List[str], None]): Keys of the masks to resize\n    \"\"\"\n\n    image_keys: Union[List[str], None] = field(default_factory=lambda: [\"image\"])\n    mask_keys: Union[List[str], None] = field(default_factory=lambda: [\"mask\"])\n\n    def __post_init__(self):\n        super().__post_init__()\n\n        # Make sure that at least one of the image_keys or mask_keys is provided\n        assert (self.image_keys is not None) or (\n            self.mask_keys is not None\n        ), \"At least one of the image_keys or mask_keys must be provided.\"\n\n        self.image_keys = self.image_keys if self.image_keys is not None else []\n        self.mask_keys = self.mask_keys if self.mask_keys is not None else []\n"
  },
  {
    "path": "scripts/lbm/embedders/latents_concat/latents_concat_embedder_model.py",
    "content": "from typing import Any, Dict\nimport torch\nimport torchvision.transforms.functional as F\nfrom ...vae import AutoencoderKLDiffusers\nfrom ..base import BaseConditioner\nfrom .latents_concat_embedder_config import LatentsConcatEmbedderConfig\n\n\nclass LatentsConcatEmbedder(BaseConditioner):\n    \"\"\"\n    Class computing VAE embeddings from given images and resizing the masks.\n    Then outputs are then concatenated to the noise in the latent space.\n\n    Args:\n        config (LatentsConcatEmbedderConfig): Configs to create the embedder\n    \"\"\"\n\n    def __init__(self, config: LatentsConcatEmbedderConfig):\n        BaseConditioner.__init__(self, config)\n\n    def forward(\n        self, batch: Dict[str, Any], vae: AutoencoderKLDiffusers, *args, **kwargs\n    ) -> dict:\n        \"\"\"\n        Args:\n            batch (dict): A batch of images to be processed by this embedder. In the batch,\n            the images must range between [-1, 1] and the masks range between [0, 1].\n            vae (AutoencoderKLDiffusers): VAE\n\n        Returns:\n            output (dict): outputs\n        \"\"\"\n\n        # Check if image are of the same size\n        dims_list = []\n        for image_key in self.config.image_keys:\n            dims_list.append(batch[image_key].shape[-2:])\n        for mask_key in self.config.mask_keys:\n            dims_list.append(batch[mask_key].shape[-2:])\n        assert all(\n            dims == dims_list[0] for dims in dims_list\n        ), \"All images and masks must have the same dimensions.\"\n\n        # Find the latent dimensions\n        if len(self.config.image_keys) > 0:\n            latent_dims = (\n                batch[self.config.image_keys[0]].shape[-2] // vae.downsampling_factor,\n                batch[self.config.image_keys[0]].shape[-1] // vae.downsampling_factor,\n            )\n        else:\n            latent_dims = (\n                batch[self.config.mask_keys[0]].shape[-2] // vae.downsampling_factor,\n                batch[self.config.mask_keys[0]].shape[-1] // vae.downsampling_factor,\n            )\n\n        outputs = []\n\n        # Resize the masks and concat them\n        for mask_key in self.config.mask_keys:\n            curr_latents = F.resize(\n                batch[mask_key],\n                size=latent_dims,\n                interpolation=F.InterpolationMode.BILINEAR,\n            )\n            outputs.append(curr_latents)\n\n        # Compute VAE embeddings from the images\n        for image_key in self.config.image_keys:\n            vae_embs = vae.encode(batch[image_key])\n            outputs.append(vae_embs)\n\n        # Concat all the outputs\n        outputs = torch.concat(outputs, dim=1)\n\n        outputs = {self.dim2outputkey[outputs.dim()]: outputs}\n\n        return outputs\n"
  },
  {
    "path": "scripts/lbm/extract.py",
    "content": "import torch\nfrom PIL import Image\nfrom torchvision import transforms\nfrom modules import devices\n\n\ndef extract_object(birefnet, img):\n    # Data settings\n    image_size = (1024, 1024)\n    transform_image = transforms.Compose(\n        [\n            transforms.Resize(image_size),\n            transforms.ToTensor(),\n            transforms.Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225]),\n        ]\n    )\n\n    image = img\n    input_images = transform_image(image).unsqueeze(0).to(dtype=torch.float32, device=devices.device)\n\n    # Prediction\n    with torch.no_grad():\n        preds = birefnet(input_images)[-1].sigmoid().cpu()\n    pred = preds[0].squeeze()\n    pred_pil = transforms.ToPILImage()(pred)\n    mask = pred_pil.resize(image.size)\n    image = Image.composite(image, Image.new(\"RGB\", image.size, (127, 127, 127)), mask)\n    return image, mask\n\n\ndef resize_and_center_crop(image, target_width, target_height):\n    original_width, original_height = image.size\n    scale_factor = max(target_width / original_width, target_height / original_height)\n    resized_width = int(round(original_width * scale_factor))\n    resized_height = int(round(original_height * scale_factor))\n    resized_image = image.resize((resized_width, resized_height), Image.Resampling.LANCZOS)\n    left = (resized_width - target_width) / 2\n    top = (resized_height - target_height) / 2\n    right = (resized_width + target_width) / 2\n    bottom = (resized_height + target_height) / 2\n    cropped_image = resized_image.crop((left, top, right, bottom))\n    return cropped_image\n"
  },
  {
    "path": "scripts/lbm/inference.py",
    "content": "import logging\nimport PIL\nimport torch\nfrom torchvision.transforms import ToPILImage, ToTensor\nfrom .lbm import LBMModel\nfrom modules import devices\n\n\nlogging.basicConfig(level=logging.INFO)\nlogger = logging.getLogger(__name__)\n\nASPECT_RATIOS = {\n    str(512 / 2048): (512, 2048),\n    str(1024 / 1024): (1024, 1024),\n    str(2048 / 512): (2048, 512),\n    str(896 / 1152): (896, 1152),\n    str(1152 / 896): (1152, 896),\n    str(512 / 1920): (512, 1920),\n    str(640 / 1536): (640, 1536),\n    str(768 / 1280): (768, 1280),\n    str(1280 / 768): (1280, 768),\n    str(1536 / 640): (1536, 640),\n    str(1920 / 512): (1920, 512),\n}\n\n\n@torch.no_grad()\ndef evaluate(\n    model: LBMModel,\n    source_image: PIL.Image.Image,\n    num_sampling_steps: int = 1,\n):\n    \"\"\"\n    Evaluate the model on an image coming from the source distribution and generate a new image from the target distribution.\n\n    Args:\n        model (LBMModel): The model to evaluate.\n        source_image (PIL.Image.Image): The source image to evaluate the model on.\n        num_sampling_steps (int): The number of sampling steps to use for the model.\n\n    Returns:\n        PIL.Image.Image: The generated image.\n    \"\"\"\n\n    ori_h_bg, ori_w_bg = source_image.size\n    ar_bg = ori_h_bg / ori_w_bg\n    closest_ar_bg = min(ASPECT_RATIOS, key=lambda x: abs(float(x) - ar_bg))\n    source_dimensions = ASPECT_RATIOS[closest_ar_bg]\n\n    source_image = source_image.resize(source_dimensions)\n\n    img_pasted_tensor = ToTensor()(source_image).unsqueeze(0) * 2 - 1\n    batch = {\n        \"source_image\": img_pasted_tensor.to(dtype=devices.dtype, device=devices.device),\n    }\n\n    z_source = model.vae.encode(batch[model.source_key])\n\n    output_image = model.sample(\n        z=z_source,\n        num_steps=num_sampling_steps,\n        conditioner_inputs=batch,\n        max_samples=1,\n    ).clamp(-1, 1)\n\n    output_image = (output_image[0].float().cpu() + 1) / 2\n    output_image = ToPILImage()(output_image)\n    output_image.resize((ori_h_bg, ori_w_bg))\n\n    return output_image\n"
  },
  {
    "path": "scripts/lbm/lbm/__init__.py",
    "content": "from .lbm_config import LBMConfig\nfrom .lbm_model import LBMModel\n\n\n__all__ = [\"LBMModel\", \"LBMConfig\"]\n"
  },
  {
    "path": "scripts/lbm/lbm/lbm_config.py",
    "content": "from typing import List, Literal, Optional\nfrom pydantic.dataclasses import dataclass\nfrom ..base import ModelConfig\n\n\n@dataclass\nclass LBMConfig(ModelConfig):\n    \"\"\"This is the Config for LBM Model class which defines all the useful parameters to be used in the model.\n\n    Args:\n\n        source_key (str):\n            Key for the source image. Defaults to \"source_image\"\n\n        target_key (str):\n            Key for the target image. Defaults to \"target_image\"\n\n        mask_key (Optional[str]):\n            Key for the mask showing the valid pixels. Defaults to None\n\n        latent_loss_type (str):\n            Loss type to use. Defaults to \"l2\". Choices are \"l2\", \"l1\"\n\n        pixel_loss_type (str):\n            Pixel loss type to use. Defaults to \"l2\". Choices are \"l2\", \"l1\", \"lpips\"\n\n        pixel_loss_max_size (int):\n            Maximum size of the image for pixel loss.\n            The image will be cropped to this size to reduce decoding computation cost. Defaults to 512\n\n        pixel_loss_weight (float):\n            Weight of the pixel loss. Defaults to 0.0\n\n        timestep_sampling (str):\n            Timestep sampling to use. Defaults to \"uniform\". Choices are \"uniform\"\n\n        input_key (str):\n            Key for the input. Defaults to \"image\"\n\n        controlnet_input_key (str):\n            Key for the controlnet conditioning. Defaults to \"controlnet_conditioning\"\n\n        adapter_input_key (str):\n            Key for the adapter conditioning. Defaults to \"adapter_conditioning\"\n\n        ucg_keys (Optional[List[str]]):\n            List of keys for which we enforce zero_conditioning during Classifier-free guidance. Defaults to None\n\n        prediction_type (str):\n            Type of prediction to use. Defaults to \"epsilon\". Choices are \"epsilon\", \"v_prediction\", \"flow\n\n        logit_mean (Optional[float]):\n            Mean of the logit for the log normal distribution. Defaults to 0.0\n\n        logit_std (Optional[float]):\n            Standard deviation of the logit for the log normal distribution. Defaults to 1.0\n\n        guidance_scale (Optional[float]):\n            The guidance scale. Useful for finetunning guidance distilled diffusion models. Defaults to None\n\n        selected_timesteps (Optional[List[float]]):\n            List of selected timesteps to be sampled from if using `custom_timesteps` timestep sampling. Defaults to None\n\n        prob (Optional[List[float]]):\n            List of probabilities for the selected timesteps if using `custom_timesteps` timestep sampling. Defaults to None\n    \"\"\"\n\n    source_key: str = \"source_image\"\n    target_key: str = \"target_image\"\n    mask_key: Optional[str] = None\n    latent_loss_weight: float = 1.0\n    latent_loss_type: Literal[\"l2\", \"l1\"] = \"l2\"\n    pixel_loss_type: Literal[\"l2\", \"l1\", \"lpips\"] = \"l2\"\n    pixel_loss_max_size: int = 512\n    pixel_loss_weight: float = 0.0\n    timestep_sampling: Literal[\"uniform\", \"log_normal\", \"custom_timesteps\"] = \"uniform\"\n    logit_mean: Optional[float] = 0.0\n    logit_std: Optional[float] = 1.0\n    selected_timesteps: Optional[List[float]] = None\n    prob: Optional[List[float]] = None\n    bridge_noise_sigma: float = 0.001\n\n    def __post_init__(self):\n        super().__post_init__()\n        if self.timestep_sampling == \"log_normal\":\n            assert isinstance(self.logit_mean, float) and isinstance(\n                self.logit_std, float\n            ), \"logit_mean and logit_std should be float for log_normal timestep sampling\"\n\n        if self.timestep_sampling == \"custom_timesteps\":\n            assert isinstance(self.selected_timesteps, list) and isinstance(\n                self.prob, list\n            ), \"timesteps and prob should be list for custom_timesteps timestep sampling\"\n            assert len(self.selected_timesteps) == len(\n                self.prob\n            ), \"timesteps and prob should be of same length for custom_timesteps timestep sampling\"\n            assert (\n                sum(self.prob) == 1\n            ), \"prob should sum to 1 for custom_timesteps timestep sampling\"\n"
  },
  {
    "path": "scripts/lbm/lbm/lbm_model.py",
    "content": "from typing import Any, Dict, List, Optional, Tuple, Union\nimport lpips\nimport numpy as np\nimport torch\nimport torch.nn as nn\nfrom diffusers.schedulers import FlowMatchEulerDiscreteScheduler\nfrom tqdm import tqdm\nfrom ..base.base_model import BaseModel\nfrom ..embedders import ConditionerWrapper\nfrom ..unets import DiffusersUNet2DCondWrapper, DiffusersUNet2DWrapper\nfrom ..vae import AutoencoderKLDiffusers\nfrom .lbm_config import LBMConfig\n\n\nclass LBMModel(BaseModel):\n    \"\"\"This is the LBM class which defines the model.\n\n    Args:\n\n        config (LBMConfig):\n            Configuration for the model\n\n        denoiser (Union[DiffusersUNet2DWrapper, DiffusersTransformer2DWrapper]):\n            Denoiser to use for the diffusion model. Defaults to None\n\n        training_noise_scheduler (EulerDiscreteScheduler):\n            Noise scheduler to use for training. Defaults to None\n\n        sampling_noise_scheduler (EulerDiscreteScheduler):\n            Noise scheduler to use for sampling. Defaults to None\n\n        vae (AutoencoderKLDiffusers):\n            VAE to use for the diffusion model. Defaults to None\n\n        conditioner (ConditionerWrapper):\n            Conditioner to use for the diffusion model. Defaults to None\n    \"\"\"\n\n    @classmethod\n    def load_from_config(cls, config: LBMConfig):\n        return cls(config=config)\n\n    def __init__(\n        self,\n        config: LBMConfig,\n        denoiser: Union[\n            DiffusersUNet2DWrapper,\n            DiffusersUNet2DCondWrapper,\n        ] = None,\n        training_noise_scheduler: FlowMatchEulerDiscreteScheduler = None,\n        sampling_noise_scheduler: FlowMatchEulerDiscreteScheduler = None,\n        vae: AutoencoderKLDiffusers = None,\n        conditioner: ConditionerWrapper = None,\n    ):\n        BaseModel.__init__(self, config)\n\n        self.vae = vae\n        self.denoiser = denoiser\n        self.conditioner = conditioner\n        self.sampling_noise_scheduler = sampling_noise_scheduler\n        self.training_noise_scheduler = training_noise_scheduler\n        self.timestep_sampling = config.timestep_sampling\n        self.latent_loss_type = config.latent_loss_type\n        self.latent_loss_weight = config.latent_loss_weight\n        self.pixel_loss_type = config.pixel_loss_type\n        self.pixel_loss_max_size = config.pixel_loss_max_size\n        self.pixel_loss_weight = config.pixel_loss_weight\n        self.logit_mean = config.logit_mean\n        self.logit_std = config.logit_std\n        self.prob = config.prob\n        self.selected_timesteps = config.selected_timesteps\n        self.source_key = config.source_key\n        self.target_key = config.target_key\n        self.mask_key = config.mask_key\n        self.bridge_noise_sigma = config.bridge_noise_sigma\n\n        self.num_iterations = nn.Parameter(\n            torch.tensor(0, dtype=torch.float32), requires_grad=False\n        )\n        if self.pixel_loss_type == \"lpips\" and self.pixel_loss_weight > 0:\n            self.lpips_loss = lpips.LPIPS(net=\"vgg\")\n\n        else:\n            self.lpips_loss = None\n\n    def on_fit_start(self, device: torch.device | None = None, *args, **kwargs):\n        \"\"\"Called when the training starts\"\"\"\n        super().on_fit_start(device=device, *args, **kwargs)\n        if self.vae is not None:\n            self.vae.on_fit_start(device=device, *args, **kwargs)\n        if self.conditioner is not None:\n            self.conditioner.on_fit_start(device=device, *args, **kwargs)\n\n    def forward(self, batch: Dict[str, Any], step=0, batch_idx=0, *args, **kwargs):\n\n        self.num_iterations += 1\n\n        # Get inputs/latents\n        if self.vae is not None:\n            vae_inputs = batch[self.target_key]\n            z = self.vae.encode(vae_inputs)\n            downsampling_factor = self.vae.downsampling_factor\n        else:\n            z = batch[self.target_key]\n            downsampling_factor = 1\n\n        if self.mask_key in batch:\n            valid_mask = batch[self.mask_key].bool()[:, 0, :, :].unsqueeze(1)\n            invalid_mask = ~valid_mask\n            valid_mask_for_latent = ~torch.max_pool2d(\n                invalid_mask.float(),\n                downsampling_factor,\n                downsampling_factor,\n            ).bool()\n            valid_mask_for_latent = valid_mask_for_latent.repeat((1, z.shape[1], 1, 1))\n\n        else:\n            valid_mask = torch.ones_like(batch[self.target_key]).bool()\n            valid_mask_for_latent = torch.ones_like(z).bool()\n\n        source_image = batch[self.source_key]\n        source_image = torch.nn.functional.interpolate(\n            source_image,\n            size=batch[self.target_key].shape[-2:],\n            mode=\"bilinear\",\n            align_corners=False,\n        ).to(z.dtype)\n        if self.vae is not None:\n            z_source = self.vae.encode(source_image)\n\n        else:\n            z_source = source_image\n\n        # Get conditionings\n        conditioning = self._get_conditioning(batch, *args, **kwargs)\n\n        # Sample a timestep\n        timestep = self._timestep_sampling(n_samples=z.shape[0], device=z.device)\n        sigmas = None\n\n        # Create interpolant\n        sigmas = self._get_sigmas(\n            self.training_noise_scheduler, timestep, n_dim=4, device=z.device\n        )\n        noisy_sample = (\n            sigmas * z_source\n            + (1.0 - sigmas) * z\n            + self.bridge_noise_sigma\n            * (sigmas * (1.0 - sigmas)) ** 0.5\n            * torch.randn_like(z)\n        )\n\n        for i, t in enumerate(timestep):\n            if t.item() == self.training_noise_scheduler.timesteps[0]:\n                noisy_sample[i] = z_source[i]\n\n        # Predict noise level using denoiser\n        prediction = self.denoiser(\n            sample=noisy_sample,\n            timestep=timestep,\n            conditioning=conditioning,\n            *args,\n            **kwargs,\n        )\n\n        target = z_source - z\n        denoised_sample = noisy_sample - prediction * sigmas\n        target_pixels = batch[self.target_key]\n\n        # Compute loss\n        if self.latent_loss_weight > 0:\n            loss = self.latent_loss(prediction, target.detach(), valid_mask_for_latent)\n            latent_recon_loss = loss.mean()\n\n        else:\n            loss = torch.zeros(z.shape[0], device=z.device)\n            latent_recon_loss = torch.zeros_like(loss)\n\n        if self.pixel_loss_weight > 0:\n            denoised_sample = self._predicted_x_0(\n                model_output=prediction,\n                sample=noisy_sample,\n                sigmas=sigmas,\n            )\n            pixel_loss = self.pixel_loss(\n                denoised_sample, target_pixels.detach(), valid_mask\n            )\n            loss += self.pixel_loss_weight * pixel_loss\n\n        else:\n            pixel_loss = torch.zeros_like(latent_recon_loss)\n\n        return {\n            \"loss\": loss.mean(),\n            \"latent_recon_loss\": latent_recon_loss,\n            \"pixel_recon_loss\": pixel_loss.mean(),\n            \"predicted_hr\": denoised_sample,\n            \"noisy_sample\": noisy_sample,\n        }\n\n    def latent_loss(self, prediction, model_input, valid_latent_mask):\n        if self.latent_loss_type == \"l2\":\n            return torch.mean(\n                (\n                    (prediction * valid_latent_mask - model_input * valid_latent_mask)\n                    ** 2\n                ).reshape(model_input.shape[0], -1),\n                1,\n            )\n        elif self.latent_loss_type == \"l1\":\n            return torch.mean(\n                torch.abs(\n                    prediction * valid_latent_mask - model_input * valid_latent_mask\n                ).reshape(model_input.shape[0], -1),\n                1,\n            )\n        else:\n            raise NotImplementedError(\n                f\"Loss type {self.latent_loss_type} not implemented\"\n            )\n\n    def pixel_loss(self, prediction, model_input, valid_mask):\n\n        latent_crop = self.pixel_loss_max_size // self.vae.downsampling_factor\n        input_crop = self.pixel_loss_max_size\n\n        crop_h = max((prediction.shape[2] - latent_crop), 0)\n        crop_w = max((prediction.shape[3] - latent_crop), 0)\n\n        input_crop_h = max((model_input.shape[2] - self.pixel_loss_max_size), 0)\n        input_crop_w = max((model_input.shape[3] - self.pixel_loss_max_size), 0)\n\n        # image random cropping\n        if crop_h == 0:\n            offset_h = 0\n        else:\n            offset_h = torch.randint(0, crop_h, (1,)).item()\n\n        if crop_w == 0:\n            offset_w = 0\n        else:\n            offset_w = torch.randint(0, crop_w, (1,)).item()\n        input_offset_h = offset_h * self.vae.downsampling_factor\n        input_offset_w = offset_w * self.vae.downsampling_factor\n\n        prediction = prediction[\n            :,\n            :,\n            crop_h\n            - offset_h : min(crop_h - offset_h + latent_crop, prediction.shape[2]),\n            crop_w\n            - offset_w : min(crop_w - offset_w + latent_crop, prediction.shape[3]),\n        ]\n\n        model_input = model_input[\n            :,\n            :,\n            input_crop_h\n            - input_offset_h : min(\n                input_crop_h - input_offset_h + input_crop, model_input.shape[2]\n            ),\n            input_crop_w\n            - input_offset_w : min(\n                input_crop_w - input_offset_w + input_crop, model_input.shape[3]\n            ),\n        ]\n\n        valid_mask = valid_mask[\n            :,\n            :,\n            input_crop_h\n            - input_offset_h : min(\n                input_crop_h - input_offset_h + input_crop, valid_mask.shape[2]\n            ),\n            input_crop_w\n            - input_offset_w : min(\n                input_crop_w - input_offset_w + input_crop, valid_mask.shape[3]\n            ),\n        ]\n\n        decoded_prediction = self.vae.decode(prediction).clamp(-1, 1)\n\n        if self.pixel_loss_type == \"l2\":\n            return torch.mean(\n                (\n                    (decoded_prediction * valid_mask - model_input * valid_mask) ** 2\n                ).reshape(model_input.shape[0], -1),\n                1,\n            )\n\n        elif self.pixel_loss_type == \"l1\":\n            return torch.mean(\n                torch.abs(\n                    decoded_prediction * valid_mask - model_input * valid_mask\n                ).reshape(model_input.shape[0], -1),\n                1,\n            )\n\n        elif self.pixel_loss_type == \"lpips\":\n            return self.lpips_loss(\n                decoded_prediction * valid_mask, model_input * valid_mask\n            ).mean()\n\n    def _get_conditioning(\n        self,\n        batch: Dict[str, Any],\n        ucg_keys: List[str] = None,\n        set_ucg_rate_zero=False,\n        *args,\n        **kwargs,\n    ):\n        \"\"\"\n        Get the conditionings\n        \"\"\"\n        if self.conditioner is not None:\n            return self.conditioner(\n                batch,\n                ucg_keys=ucg_keys,\n                set_ucg_rate_zero=set_ucg_rate_zero,\n                vae=self.vae,\n                *args,\n                **kwargs,\n            )\n        else:\n            return None\n\n    def _timestep_sampling(self, n_samples=1, device=\"cpu\"):\n        if self.timestep_sampling == \"uniform\":\n            idx = torch.randint(\n                0,\n                self.training_noise_scheduler.config.num_train_timesteps,\n                (n_samples,),\n                device=\"cpu\",\n            )\n            return self.training_noise_scheduler.timesteps[idx].to(device=device)\n\n        elif self.timestep_sampling == \"log_normal\":\n            u = torch.normal(\n                mean=self.logit_mean,\n                std=self.logit_std,\n                size=(n_samples,),\n                device=\"cpu\",\n            )\n            u = torch.nn.functional.sigmoid(u)\n            indices = (\n                u * self.training_noise_scheduler.config.num_train_timesteps\n            ).long()\n            return self.training_noise_scheduler.timesteps[indices].to(device=device)\n\n        elif self.timestep_sampling == \"custom_timesteps\":\n            idx = np.random.choice(len(self.selected_timesteps), n_samples, p=self.prob)\n\n            return torch.tensor(\n                self.selected_timesteps, device=device, dtype=torch.long\n            )[idx]\n\n    def _predicted_x_0(\n        self,\n        model_output,\n        sample,\n        sigmas=None,\n    ):\n        \"\"\"\n        Predict x_0, the orinal denoised sample, using the model output and the timesteps depending on the prediction type.\n        \"\"\"\n        pred_x_0 = sample - model_output * sigmas\n        return pred_x_0\n\n    def _get_sigmas(\n        self, scheduler, timesteps, n_dim=4, dtype=torch.float32, device=\"cpu\"\n    ):\n        sigmas = scheduler.sigmas.to(device=device, dtype=dtype)\n        schedule_timesteps = scheduler.timesteps.to(device)\n        timesteps = timesteps.to(device)\n        step_indices = [(schedule_timesteps == t).nonzero().item() for t in timesteps]\n\n        sigma = sigmas[step_indices].flatten()\n        while len(sigma.shape) < n_dim:\n            sigma = sigma.unsqueeze(-1)\n        return sigma\n\n    @torch.no_grad()\n    def sample(\n        self,\n        z: torch.Tensor,\n        num_steps: int = 20,\n        conditioner_inputs: Optional[Dict[str, Any]] = None,\n        max_samples: Optional[int] = None,\n        verbose: bool = False,\n    ):\n        self.sampling_noise_scheduler.set_timesteps(\n            sigmas=np.linspace(1, 1 / num_steps, num_steps)\n        )\n\n        sample = z\n\n        # Get conditioning\n        conditioning = self._get_conditioning(\n            conditioner_inputs, set_ucg_rate_zero=True, device=z.device\n        )\n\n        # If max_samples parameter is provided, limit the number of samples\n        if max_samples is not None:\n            sample = sample[:max_samples]\n\n        if conditioning:\n            conditioning[\"cond\"] = {\n                k: v[:max_samples] for k, v in conditioning[\"cond\"].items()\n            }\n\n        for i, t in tqdm(\n            enumerate(self.sampling_noise_scheduler.timesteps), disable=not verbose\n        ):\n            if hasattr(self.sampling_noise_scheduler, \"scale_model_input\"):\n                denoiser_input = self.sampling_noise_scheduler.scale_model_input(\n                    sample, t\n                )\n\n            else:\n                denoiser_input = sample\n\n            # Predict noise level using denoiser using conditionings\n            pred = self.denoiser(\n                sample=denoiser_input,\n                timestep=t.to(z.device).repeat(denoiser_input.shape[0]),\n                conditioning=conditioning,\n            )\n\n            # Make one step on the reverse diffusion process\n            sample = self.sampling_noise_scheduler.step(\n                pred, t, sample, return_dict=False\n            )[0]\n            if i < len(self.sampling_noise_scheduler.timesteps) - 1:\n                timestep = (\n                    self.sampling_noise_scheduler.timesteps[i + 1]\n                    .to(z.device)\n                    .repeat(sample.shape[0])\n                )\n                sigmas = self._get_sigmas(\n                    self.sampling_noise_scheduler, timestep, n_dim=4, device=z.device\n                )\n                sample = sample + self.bridge_noise_sigma * (\n                    sigmas * (1.0 - sigmas)\n                ) ** 0.5 * torch.randn_like(sample)\n                sample = sample.to(z.dtype)\n\n        if self.vae is not None:\n            decoded_sample = self.vae.decode(sample)\n\n        else:\n            decoded_sample = sample\n\n        return decoded_sample\n\n    def log_samples(\n        self,\n        batch: Dict[str, Any],\n        input_shape: Optional[Tuple[int, int, int]] = None,\n        max_samples: Optional[int] = None,\n        num_steps: Union[int, List[int]] = 20,\n    ):\n        if isinstance(num_steps, int):\n            num_steps = [num_steps]\n\n        logs = {}\n\n        N = max_samples if max_samples is not None else len(batch[self.source_key])\n\n        batch = {k: v[:N] for k, v in batch.items()}\n\n        # infer input shape based on VAE configuration if not passed\n        if input_shape is None:\n            if self.vae is not None:\n                # get input pixel size of the vae\n                input_shape = batch[self.target_key].shape[2:]\n                # rescale to latent size\n                input_shape = (\n                    self.vae.latent_channels,\n                    input_shape[0] // self.vae.downsampling_factor,\n                    input_shape[1] // self.vae.downsampling_factor,\n                )\n            else:\n                raise ValueError(\n                    \"input_shape must be passed when no VAE is used in the model\"\n                )\n\n        for num_step in num_steps:\n            source_image = batch[self.source_key]\n            source_image = torch.nn.functional.interpolate(\n                source_image,\n                size=batch[self.target_key].shape[2:],\n                mode=\"bilinear\",\n                align_corners=False,\n            ).to(dtype=self.dtype)\n            if self.vae is not None:\n                z = self.vae.encode(source_image)\n\n            else:\n                z = source_image\n\n            with torch.autocast(dtype=self.dtype, device_type=\"cuda\"):\n                logs[f\"samples_{num_step}_steps\"] = self.sample(\n                    z,\n                    num_steps=num_step,\n                    conditioner_inputs=batch,\n                    max_samples=N,\n                )\n\n        return logs\n"
  },
  {
    "path": "scripts/lbm/tiler.py",
    "content": "import logging\nimport math\nfrom copy import deepcopy\nfrom typing import List, Tuple\nimport torch\nimport torch.nn.functional as F\n\n\nTILING_METHODS = [\"average\", \"gaussian\", \"linear\"]\n\n\nclass Tiler:\n    def get_tiles(\n        self,\n        input: torch.Tensor,\n        tile_size: tuple,\n        overlap_size: tuple,\n        scale: int = 1,\n        out_channels: int = 3,\n    ) -> List[List[torch.tensor]]:\n        \"\"\"Get tiles\n        Args:\n            input (torch.Tensor): input array of shape (batch_size, channels, height, width)\n            tile_size (tuple): tile size\n            overlap_size (tuple): overlap size\n            scale (int): scaling factor of the output wrt input\n            out_channels (int): number of output channels\n        Returns:\n            List[List[torch.Tensor]]: List of tiles\n        \"\"\"\n        # assert isinstance(scale, int)\n        assert (\n            overlap_size[0] <= tile_size[0]\n        ), f\"Overlap size {overlap_size} must be smaller than tile size {tile_size}\"\n        assert (\n            overlap_size[1] <= tile_size[1]\n        ), f\"Overlap size {overlap_size} must be smaller than tile size {tile_size}\"\n\n        B, C, H, W = input.shape\n        tile_size_H, tile_size_W = tile_size\n\n        # sets overlap to 0 if the input is smaller than the tile size (i.e. no overlap)\n        overlap_H, overlap_W = (\n            overlap_size[0] if H > tile_size_H else 0,\n            overlap_size[1] if W > tile_size_W else 0,\n        )\n\n        self.output_overlap_size = (\n            int(overlap_H * scale),\n            int(overlap_W * scale),\n        )\n        self.tile_size = tile_size\n        self.output_tile_size = (\n            int(tile_size_H * scale),\n            int(tile_size_W * scale),\n        )\n        self.output_shape = (\n            B,\n            out_channels,\n            int(H * scale),\n            int(W * scale),\n        )\n        tiles = []\n        logging.debug(f\"(Tiler) Input shape: {(B, C, H, W)}\")\n        logging.debug(f\"(Tiler) Output shape: {self.output_shape}\")\n        logging.debug(f\"(Tiler) Tile size: {(tile_size_H, tile_size_W)}\")\n        logging.debug(f\"(Tiler) Overlap size: {(overlap_H, overlap_W)}\")\n        # loop over all tiles in the image with overlap\n        for i in range(0, H, tile_size_H - overlap_H):\n            row = []\n            for j in range(0, W, tile_size_W - overlap_W):\n                tile = deepcopy(\n                    input[\n                        :,\n                        :,\n                        i : i + tile_size_H,\n                        j : j + tile_size_W,\n                    ]\n                )\n                row.append(tile)\n            tiles.append(row)\n        return tiles\n\n    def merge_tiles(\n        self, tiles: List[List[torch.tensor]], tiling_method: str = \"gaussian\"\n    ) -> torch.tensor:\n        \"\"\"Merge tiles by averaging the overlaping regions\n        Args:\n            tiles (Dict[str, Tile]): dictionary of processed tiles\n            tiling_method (str): tiling method. Can be \"average\", \"gaussian\" or \"linear\"\n        Returns:\n            torch.tensor: output image\n        \"\"\"\n        if tiling_method == \"average\":\n            return self._average_merge_tiles(tiles)\n        elif tiling_method == \"gaussian\":\n            return self._gaussian_merge_tiles(tiles)\n        elif tiling_method == \"linear\":\n            return self._linear_merge_tiles(tiles)\n        else:\n            raise ValueError(\n                f\"Unknown tiling method {tiling_method}. Available methods are {TILING_METHODS}\"\n            )\n\n    def _average_merge_tiles(self, tiles: List[List[torch.tensor]]) -> torch.tensor:\n        \"\"\"Merge tiles by averaging the overlaping regions\n        Args:\n            tiles (Dict[str, Tile]): dictionary of processed tiles\n        Returns:\n            torch.tensor: output image\n        \"\"\"\n\n        output = torch.zeros(self.output_shape)\n\n        # weights to store multiplicity\n        weights = torch.zeros(self.output_shape)\n\n        _, _, output_H, output_W = self.output_shape\n        output_overlap_size_H, output_overlap_size_W = self.output_overlap_size\n        output_tile_size_H, output_tile_size_W = self.output_tile_size\n\n        for id_i, i in enumerate(\n            range(\n                0,\n                output_H,\n                output_tile_size_H - output_overlap_size_H,\n            )\n        ):\n            for id_j, j in enumerate(\n                range(\n                    0,\n                    output_W,\n                    output_tile_size_W - output_overlap_size_W,\n                )\n            ):\n                output[\n                    :,\n                    :,\n                    i : i + output_tile_size_H,\n                    j : j + output_tile_size_W,\n                ] += (\n                    tiles[id_i][id_j] * 1\n                )\n                weights[\n                    :,\n                    :,\n                    i : i + output_tile_size_H,\n                    j : j + output_tile_size_W,\n                ] += 1\n\n        # outputs is summed up with this multiplicity\n        # so we need to divide by the weights wich is either 1, 2 or 4 depending on the region\n        output = output / weights\n        return output\n\n    def _gaussian_weights(\n        self, tile_width: int, tile_height: int, nbatches: int, channels: int\n    ):\n        \"\"\"Generates a gaussian mask of weights for tile contributions.\n\n        Args:\n            tile_width (int): width of the tile\n            tile_height (int): height of the tile\n            nbatches (int): number of batches\n            channels (int): number of channels\n        Returns:\n            torch.tensor: weights\n        \"\"\"\n        import numpy as np\n        from numpy import exp, pi, sqrt\n\n        latent_width = tile_width\n        latent_height = tile_height\n\n        var = 0.01\n        midpoint = (\n            latent_width - 1\n        ) / 2  # -1 because index goes from 0 to latent_width - 1\n        x_probs = [\n            exp(\n                -(x - midpoint)\n                * (x - midpoint)\n                / (latent_width * latent_width)\n                / (2 * var)\n            )\n            / sqrt(2 * pi * var)\n            for x in range(latent_width)\n        ]\n        midpoint = latent_height / 2\n        y_probs = [\n            exp(\n                -(y - midpoint)\n                * (y - midpoint)\n                / (latent_height * latent_height)\n                / (2 * var)\n            )\n            / sqrt(2 * pi * var)\n            for y in range(latent_height)\n        ]\n\n        weights = np.outer(y_probs, x_probs)\n        return torch.tile(\n            torch.tensor(weights, device=\"cpu\"), (nbatches, channels, 1, 1)\n        )\n\n    def _gaussian_merge_tiles(self, tiles: List[List[torch.tensor]]) -> torch.tensor:\n        \"\"\"Merge tiles by averaging the overlaping regions\n        Args:\n            List[List[torch.tensor]]: List of processed tiles\n        Returns:\n            torch.tensor: output image\n        \"\"\"\n        B, output_C, output_H, output_W = self.output_shape\n        output_overlap_size_H, output_overlap_size_W = self.output_overlap_size\n        output_tile_size_H, output_tile_size_W = self.output_tile_size\n\n        output = torch.zeros(self.output_shape)\n        # weights to store multiplicity\n        weights = torch.zeros(self.output_shape)\n\n        for id_i, i in enumerate(\n            range(\n                0,\n                output_H,\n                output_tile_size_H - output_overlap_size_H,\n            )\n        ):\n            for id_j, j in enumerate(\n                range(\n                    0,\n                    output_W,\n                    output_tile_size_W - output_overlap_size_W,\n                )\n            ):\n                w = self._gaussian_weights(\n                    tiles[id_i][id_j].shape[3],\n                    tiles[id_i][id_j].shape[2],\n                    B,\n                    output_C,\n                )\n                output[\n                    :,\n                    :,\n                    i : i + output_tile_size_H,\n                    j : j + output_tile_size_W,\n                ] += (\n                    tiles[id_i][id_j] * w\n                )\n                weights[\n                    :,\n                    :,\n                    i : i + output_tile_size_H,\n                    j : j + output_tile_size_W,\n                ] += w\n\n        # outputs is summed up with this multiplicity\n        output = output / weights\n        return output\n\n    def _blend_v(\n        self, a: torch.Tensor, b: torch.Tensor, blend_extent: int\n    ) -> torch.Tensor:\n        blend_extent = min(a.shape[2], b.shape[2], blend_extent)\n        for y in range(blend_extent):\n            b[:, :, y, :] = a[:, :, -blend_extent + y, :] * (1 - y / blend_extent) + b[\n                :, :, y, :\n            ] * (y / blend_extent)\n        return b\n\n    def _blend_h(\n        self, a: torch.Tensor, b: torch.Tensor, blend_extent: int\n    ) -> torch.Tensor:\n        blend_extent = min(a.shape[3], b.shape[3], blend_extent)\n        for x in range(blend_extent):\n            b[:, :, :, x] = a[:, :, :, -blend_extent + x] * (1 - x / blend_extent) + b[\n                :, :, :, x\n            ] * (x / blend_extent)\n        return b\n\n    def _linear_merge_tiles(self, tiles: List[List[torch.tensor]]) -> torch.Tensor:\n        \"\"\"Merge tiles by blending the overlaping regions\n        Args:\n            tiles (List[List[torch.tensor]]): List of processed tiles\n        Returns:\n            torch.Tensor: output image\n        \"\"\"\n        output_overlap_size_H, output_overlap_size_W = self.output_overlap_size\n        output_tile_size_H, output_tile_size_W = self.output_tile_size\n\n        res_rows = []\n        tiles_copy = deepcopy(tiles)\n\n        # Cut the right and bottom overlap region\n        limit_i = output_tile_size_H - output_overlap_size_H\n        limit_j = output_tile_size_W - output_overlap_size_W\n        for i, tile_row in enumerate(tiles_copy):\n            res_row = []\n            for j, tile in enumerate(tile_row):\n                tile_val = tile\n                if j > 0:\n                    tile_val = self._blend_h(\n                        tile_row[j - 1], tile, output_overlap_size_W\n                    )\n                tiles_copy[i][j] = tile_val\n                if i > 0:\n                    tile_val = self._blend_v(\n                        tiles_copy[i - 1][j], tile_val, output_overlap_size_H\n                    )\n                tiles_copy[i][j] = tile_val\n                res_row.append(tile_val[:, :, :limit_i, :limit_j])\n            res_rows.append(torch.cat(res_row, dim=3))\n        output = torch.cat(res_rows, dim=2)\n        return output\n\n\ndef extract_into_tensor(\n    a: torch.Tensor, t: torch.Tensor, x_shape: Tuple[int, ...]\n) -> torch.Tensor:\n    \"\"\"\n    Extracts values from a tensor into a new tensor using indices from another tensor.\n\n    :param a: the tensor to extract values from.\n    :param t: the tensor containing the indices.\n    :param x_shape: the shape of the tensor to extract values into.\n    :return: a new tensor containing the extracted values.\n    \"\"\"\n\n    b, *_ = t.shape\n    out = a.gather(-1, t)\n    return out.reshape(b, *((1,) * (len(x_shape) - 1)))\n\n\ndef pad(x: torch.Tensor, base_h: int, base_w: int) -> torch.Tensor:\n    \"\"\"\n    Pads a tensor to the nearest multiple of base_h and base_w.\n\n    :param x: the tensor to pad.\n    :param base_h: the base height.\n    :param base_w: the base width.\n    :return: the padded tensor.\n    \"\"\"\n    h, w = x.shape[-2:]\n    h_ = math.ceil(h / base_h) * base_h\n    w_ = math.ceil(w / base_w) * base_w\n    if w_ != w:\n        x = F.pad(x, (0, abs(w_ - w), 0, 0))\n    if h_ != h:\n        x = F.pad(x, (0, 0, 0, abs(h_ - h)))\n    return x\n\n\ndef append_dims(x: torch.Tensor, target_dims: int) -> torch.Tensor:\n    \"\"\"Appends dimensions to the end of a tensor until it has target_dims dimensions.\"\"\"\n    dims_to_append = target_dims - x.ndim\n    if dims_to_append < 0:\n        raise ValueError(\n            f\"input has {x.ndim} dims but target_dims is {target_dims}, which is less\"\n        )\n    return x[(...,) + (None,) * dims_to_append]\n\n\n@torch.no_grad()\ndef update_ema(\n    target_params: List[torch.Tensor],\n    source_params: List[torch.Tensor],\n    rate: float = 0.99,\n):\n    \"\"\"\n    Update target parameters to be closer to those of source parameters using\n    an exponential moving average.\n\n    :param target_params: the target parameter sequence.\n    :param source_params: the source parameter sequence.\n    :param rate: the EMA rate (closer to 1 means slower).\n    \"\"\"\n    for targ, src in zip(target_params, source_params):\n        targ.detach().mul_(rate).add_(src, alpha=1 - rate)\n"
  },
  {
    "path": "scripts/lbm/unets/__init__.py",
    "content": "\"\"\"\nThis module contains a collection of U-Net models.\nThe :mod:`cr.models.unets` module includes the following classes:\n\n- :class:`DiffusersUNet2DWrapper`: A 2D U-Net model for diffusers.\n- :class:`DiffusersUNet2DCondWrapper`: A 2D U-Net model for diffusers with conditional input.\n\"\"\"\n\nfrom .unet import DiffusersUNet2DCondWrapper, DiffusersUNet2DWrapper\n\n\n__all__ = [\n    \"DiffusersUNet2DWrapper\",\n    \"DiffusersUNet2DCondWrapper\",\n]\n"
  },
  {
    "path": "scripts/lbm/unets/unet.py",
    "content": "from typing import Dict, List, Optional, Union\nimport torch\nfrom diffusers.models import UNet2DConditionModel, UNet2DModel\n\n\nclass DiffusersUNet2DWrapper(UNet2DModel):\n    \"\"\"\n    Wrapper for the UNet2DModel from diffusers\n\n    See diffusers' UNet2DModel for more details\n    \"\"\"\n\n    def __init__(self, *args, **kwargs):\n        UNet2DModel.__init__(self, *args, **kwargs)\n\n    def forward(\n        self,\n        sample: torch.Tensor,\n        timestep: Union[torch.Tensor, float, int],\n        conditioning: Dict[str, torch.Tensor] = None,\n        *args,\n        **kwargs,\n    ):\n        \"\"\"\n        The forward pass of the model\n\n        Args:\n\n            sample (torch.Tensor): The input sample\n            timesteps (Union[torch.Tensor, float, int]): The number of timesteps\n        \"\"\"\n        if conditioning is not None:\n            class_labels = conditioning[\"cond\"].get(\"vector\", None)\n            concat = conditioning[\"cond\"].get(\"concat\", None)\n\n        else:\n            class_labels = None\n            concat = None\n\n        if concat is not None:\n            sample = torch.cat([sample, concat], dim=1)\n\n        return super().forward(sample, timestep, class_labels).sample\n\n    def freeze(self):\n        \"\"\"\n        Freeze the model\n        \"\"\"\n        self.eval()\n        for param in self.parameters():\n            param.requires_grad = False\n\n\nclass DiffusersUNet2DCondWrapper(UNet2DConditionModel):\n    \"\"\"\n    Wrapper for the UNet2DConditionModel from diffusers\n\n    See diffusers' Unet2DConditionModel for more details\n    \"\"\"\n\n    def __init__(self, *args, **kwargs):\n        UNet2DConditionModel.__init__(self, *args, **kwargs)\n        # BaseModel.__init__(self, config=ModelConfig())\n\n    def forward(\n        self,\n        sample: torch.Tensor,\n        timestep: Union[torch.Tensor, float, int],\n        conditioning: Dict[str, torch.Tensor],\n        ip_adapter_cond_embedding: Optional[List[torch.Tensor]] = None,\n        down_block_additional_residuals: torch.Tensor = None,\n        mid_block_additional_residual: torch.Tensor = None,\n        down_intrablock_additional_residuals: torch.Tensor = None,\n        *args,\n        **kwargs,\n    ):\n        \"\"\"\n        The forward pass of the model\n\n        Args:\n\n            sample (torch.Tensor): The input sample\n            timesteps (Union[torch.Tensor, float, int]): The number of timesteps\n            conditioning (Dict[str, torch.Tensor]): The conditioning data\n            down_block_additional_residuals (List[torch.Tensor]): Residuals for the down blocks.\n                These residuals typically are used for the controlnet.\n            mid_block_additional_residual (List[torch.Tensor]): Residuals for the mid blocks.\n                These residuals typically are used for the controlnet.\n            down_intrablock_additional_residuals (List[torch.Tensor]): Residuals for the down intrablocks.\n                These residuals typically are used for the T2I adapters.middle block outputs. Defaults to False\n        \"\"\"\n\n        assert isinstance(conditioning, dict), \"conditionings must be a dictionary\"\n        # assert \"crossattn\" in conditioning[\"cond\"], \"crossattn must be in conditionings\"\n\n        class_labels = conditioning[\"cond\"].get(\"vector\", None)\n        crossattn = conditioning[\"cond\"].get(\"crossattn\", None)\n        concat = conditioning[\"cond\"].get(\"concat\", None)\n\n        # concat conditioning\n        if concat is not None:\n            sample = torch.cat([sample, concat], dim=1)\n\n        # down_intrablock_additional_residuals needs to be cloned, since unet will modify it\n        if down_intrablock_additional_residuals is not None:\n            down_intrablock_additional_residuals_clone = [\n                curr_residuals.clone()\n                for curr_residuals in down_intrablock_additional_residuals\n            ]\n        else:\n            down_intrablock_additional_residuals_clone = None\n\n        # Check diffusers.models.embeddings.py > MultiIPAdapterImageProjectionLayer > forward() for implementation\n        # Exepected format : List[torch.Tensor] of shape (batch_size, num_image_embeds, embed_dim)\n        # with length = number of ip_adapters loaded in the ip_adapter_wrapper\n        if ip_adapter_cond_embedding is not None:\n            added_cond_kwargs = {\n                \"image_embeds\": [\n                    ip_adapter_embedding.unsqueeze(1)\n                    for ip_adapter_embedding in ip_adapter_cond_embedding\n                ]\n            }\n        else:\n            added_cond_kwargs = None\n\n        return (\n            super()\n            .forward(\n                sample=sample,\n                timestep=timestep,\n                encoder_hidden_states=crossattn,\n                class_labels=class_labels,\n                added_cond_kwargs=added_cond_kwargs,\n                down_block_additional_residuals=down_block_additional_residuals,\n                mid_block_additional_residual=mid_block_additional_residual,\n                down_intrablock_additional_residuals=down_intrablock_additional_residuals_clone,\n            )\n            .sample\n        )\n\n    def freeze(self):\n        \"\"\"\n        Freeze the model\n        \"\"\"\n        self.eval()\n        for param in self.parameters():\n            param.requires_grad = False\n"
  },
  {
    "path": "scripts/lbm/utils.py",
    "content": "import logging\nimport os\nfrom typing import List, Optional\nimport torch\nimport yaml\nfrom diffusers import FlowMatchEulerDiscreteScheduler\nfrom huggingface_hub import snapshot_download\nfrom safetensors.torch import load_file\nfrom .embedders import (\n    ConditionerWrapper,\n    LatentsConcatEmbedder,\n    LatentsConcatEmbedderConfig,\n)\nfrom .lbm import LBMConfig, LBMModel\nfrom .unets import DiffusersUNet2DCondWrapper\nfrom .vae import AutoencoderKLDiffusers, AutoencoderKLDiffusersConfig\n\n\ndef get_model(\n    model_dir: str,\n    save_dir: Optional[str] = None,\n    torch_dtype: torch.dtype = torch.bfloat16,\n    device: str = \"cuda\",\n) -> LBMModel:\n    \"\"\"Download the model from the model directory using either a local path or a path to HuggingFace Hub\n\n    Args:\n        model_dir (str): The path to the model directory containing the model weights and config, can be a local path or a path to HuggingFace Hub\n        save_dir (Optional[str]): The local path to save the model if downloading from HuggingFace Hub. Defaults to None.\n        torch_dtype (torch.dtype): The torch dtype to use for the model. Defaults to torch.bfloat16.\n        device (str): The device to use for the model. Defaults to \"cuda\".\n\n    Returns:\n        LBMModel: The loaded model\n    \"\"\"\n    if not os.path.exists(model_dir):\n        local_dir = snapshot_download(\n            model_dir,\n            local_dir=save_dir,\n        )\n        model_dir = local_dir\n\n    model_files = os.listdir(model_dir)\n\n    # check yaml config file is present\n    yaml_file = [f for f in model_files if f.endswith(\".yaml\")]\n    if len(yaml_file) == 0:\n        raise ValueError(\"No yaml file found in the model directory.\")\n\n    # check safetensors weights file is present\n    safetensors_files = sorted([f for f in model_files if f.endswith(\".safetensors\")])\n    ckpt_files = sorted([f for f in model_files if f.endswith(\".ckpt\")])\n    if len(safetensors_files) == 0 and len(ckpt_files) == 0:\n        raise ValueError(\"No safetensors or ckpt file found in the model directory\")\n\n    if len(model_files) == 0:\n        raise ValueError(\"No model files found in the model directory\")\n\n    with open(os.path.join(model_dir, yaml_file[0]), \"r\") as f:\n        config = yaml.safe_load(f)\n\n    model = _get_model_from_config(**config, torch_dtype=torch_dtype)\n\n    if len(safetensors_files) > 0:\n        logging.info(f\"Loading safetensors file: {safetensors_files[-1]}\")\n        sd = load_file(os.path.join(model_dir, safetensors_files[-1]))\n        model.load_state_dict(sd, strict=True)\n    elif len(ckpt_files) > 0:\n        logging.info(f\"Loading ckpt file: {ckpt_files[-1]}\")\n        sd = torch.load(\n            os.path.join(model_dir, ckpt_files[-1]),\n            map_location=\"cpu\",\n        )[\"state_dict\"]\n        sd = {k[6:]: v for k, v in sd.items() if k.startswith(\"model.\")}\n        model.load_state_dict(\n            sd,\n            strict=True,\n        )\n    model.to(device).to(torch_dtype)\n\n    model.eval()\n\n    return model\n\n\ndef _get_model_from_config(\n    backbone_signature: str = \"stabilityai/stable-diffusion-xl-base-1.0\",\n    vae_num_channels: int = 4,\n    unet_input_channels: int = 4,\n    timestep_sampling: str = \"log_normal\",\n    selected_timesteps: Optional[List[float]] = None,\n    prob: Optional[List[float]] = None,\n    conditioning_images_keys: Optional[List[str]] = [],\n    conditioning_masks_keys: Optional[List[str]] = [],\n    source_key: str = \"source_image\",\n    target_key: str = \"source_image_paste\",\n    bridge_noise_sigma: float = 0.0,\n    logit_mean: float = 0.0,\n    logit_std: float = 1.0,\n    pixel_loss_type: str = \"lpips\",\n    latent_loss_type: str = \"l2\",\n    latent_loss_weight: float = 1.0,\n    pixel_loss_weight: float = 0.0,\n    torch_dtype: torch.dtype = torch.bfloat16,\n    **kwargs,\n):\n\n    conditioners = []\n\n    denoiser = DiffusersUNet2DCondWrapper(\n        in_channels=unet_input_channels,  # Add downsampled_image\n        out_channels=vae_num_channels,\n        center_input_sample=False,\n        flip_sin_to_cos=True,\n        freq_shift=0,\n        down_block_types=[\n            \"DownBlock2D\",\n            \"CrossAttnDownBlock2D\",\n            \"CrossAttnDownBlock2D\",\n        ],\n        mid_block_type=\"UNetMidBlock2DCrossAttn\",\n        up_block_types=[\"CrossAttnUpBlock2D\", \"CrossAttnUpBlock2D\", \"UpBlock2D\"],\n        only_cross_attention=False,\n        block_out_channels=[320, 640, 1280],\n        layers_per_block=2,\n        downsample_padding=1,\n        mid_block_scale_factor=1,\n        dropout=0.0,\n        act_fn=\"silu\",\n        norm_num_groups=32,\n        norm_eps=1e-05,\n        cross_attention_dim=[320, 640, 1280],\n        transformer_layers_per_block=[1, 2, 10],\n        reverse_transformer_layers_per_block=None,\n        encoder_hid_dim=None,\n        encoder_hid_dim_type=None,\n        attention_head_dim=[5, 10, 20],\n        num_attention_heads=None,\n        dual_cross_attention=False,\n        use_linear_projection=True,\n        class_embed_type=None,\n        addition_embed_type=None,\n        addition_time_embed_dim=None,\n        num_class_embeds=None,\n        upcast_attention=None,\n        resnet_time_scale_shift=\"default\",\n        resnet_skip_time_act=False,\n        resnet_out_scale_factor=1.0,\n        time_embedding_type=\"positional\",\n        time_embedding_dim=None,\n        time_embedding_act_fn=None,\n        timestep_post_act=None,\n        time_cond_proj_dim=None,\n        conv_in_kernel=3,\n        conv_out_kernel=3,\n        projection_class_embeddings_input_dim=None,\n        attention_type=\"default\",\n        class_embeddings_concat=False,\n        mid_block_only_cross_attention=None,\n        cross_attention_norm=None,\n        addition_embed_type_num_heads=64,\n    ).to(torch_dtype)\n\n    if conditioning_images_keys != [] or conditioning_masks_keys != []:\n\n        latents_concat_embedder_config = LatentsConcatEmbedderConfig(\n            image_keys=conditioning_images_keys,\n            mask_keys=conditioning_masks_keys,\n        )\n        latent_concat_embedder = LatentsConcatEmbedder(latents_concat_embedder_config)\n        latent_concat_embedder.freeze()\n        conditioners.append(latent_concat_embedder)\n\n        # Wrap conditioners and set to device\n    conditioner = ConditionerWrapper(\n        conditioners=conditioners,\n    )\n\n    ## VAE ##\n    # Get VAE model\n    vae_config = AutoencoderKLDiffusersConfig(\n        version=backbone_signature,\n        subfolder=\"vae\",\n        tiling_size=(128, 128),\n    )\n    vae = AutoencoderKLDiffusers(vae_config).to(torch_dtype)\n    vae.freeze()\n    vae.to(torch_dtype)\n\n    ## Diffusion Model ##\n    # Get diffusion model\n    config = LBMConfig(\n        source_key=source_key,\n        target_key=target_key,\n        latent_loss_weight=latent_loss_weight,\n        latent_loss_type=latent_loss_type,\n        pixel_loss_type=pixel_loss_type,\n        pixel_loss_weight=pixel_loss_weight,\n        timestep_sampling=timestep_sampling,\n        logit_mean=logit_mean,\n        logit_std=logit_std,\n        selected_timesteps=selected_timesteps,\n        prob=prob,\n        bridge_noise_sigma=bridge_noise_sigma,\n    )\n\n    sampling_noise_scheduler = FlowMatchEulerDiscreteScheduler.from_pretrained(\n        backbone_signature,\n        subfolder=\"scheduler\",\n    )\n\n    model = LBMModel(\n        config,\n        denoiser=denoiser,\n        sampling_noise_scheduler=sampling_noise_scheduler,\n        vae=vae,\n        conditioner=conditioner,\n    ).to(torch_dtype)\n\n    return model\n"
  },
  {
    "path": "scripts/lbm/vae/__init__.py",
    "content": "from .autoencoderKL import AutoencoderKLDiffusers\nfrom .autoencoderKL_config import AutoencoderKLDiffusersConfig\n\n\n__all__ = [\"AutoencoderKLDiffusers\", \"AutoencoderKLDiffusersConfig\"]\n"
  },
  {
    "path": "scripts/lbm/vae/autoencoderKL.py",
    "content": "import torch\nfrom diffusers.models import AutoencoderKL\nfrom ..base.base_model import BaseModel\nfrom ..tiler import Tiler, pad\nfrom .autoencoderKL_config import AutoencoderKLDiffusersConfig\n\n\nclass AutoencoderKLDiffusers(BaseModel):\n    \"\"\"This is the VAE class used to work with latent models\n\n    Args:\n\n        config (AutoencoderKLDiffusersConfig): The config class which defines all the required parameters.\n    \"\"\"\n\n    def __init__(self, config: AutoencoderKLDiffusersConfig):\n        BaseModel.__init__(self, config)\n        self.config = config\n        self.vae_model = AutoencoderKL.from_pretrained(\n            config.version,\n            subfolder=config.subfolder,\n            revision=config.revision,\n        )\n        self.tiling_size = config.tiling_size\n        self.tiling_overlap = config.tiling_overlap\n\n        # get downsampling factor\n        self._get_properties()\n\n    @torch.no_grad()\n    def _get_properties(self):\n        self.has_shift_factor = (\n            hasattr(self.vae_model.config, \"shift_factor\")\n            and self.vae_model.config.shift_factor is not None\n        )\n        self.shift_factor = (\n            self.vae_model.config.shift_factor if self.has_shift_factor else 0\n        )\n\n        # set latent channels\n        self.latent_channels = self.vae_model.config.latent_channels\n        self.has_latents_mean = (\n            hasattr(self.vae_model.config, \"latents_mean\")\n            and self.vae_model.config.latents_mean is not None\n        )\n        self.has_latents_std = (\n            hasattr(self.vae_model.config, \"latents_std\")\n            and self.vae_model.config.latents_std is not None\n        )\n        self.latents_mean = self.vae_model.config.latents_mean\n        self.latents_std = self.vae_model.config.latents_std\n\n        x = torch.randn(1, self.vae_model.config.in_channels, 32, 32)\n        z = self.encode(x)\n\n        # set downsampling factor\n        self.downsampling_factor = int(x.shape[2] / z.shape[2])\n\n    def encode(self, x: torch.tensor, batch_size: int = 8):\n        latents = []\n        for i in range(0, x.shape[0], batch_size):\n            latents.append(\n                self.vae_model.encode(x[i : i + batch_size]).latent_dist.sample()\n            )\n        latents = torch.cat(latents, dim=0)\n        latents = (latents - self.shift_factor) * self.vae_model.config.scaling_factor\n\n        return latents\n\n    def decode(self, z: torch.tensor):\n\n        if self.has_latents_mean and self.has_latents_std:\n            latents_mean = (\n                torch.tensor(self.latents_mean)\n                .view(1, self.latent_channels, 1, 1)\n                .to(z.device, z.dtype)\n            )\n            latents_std = (\n                torch.tensor(self.latents_std)\n                .view(1, self.latent_channels, 1, 1)\n                .to(z.device, z.dtype)\n            )\n            z = z * latents_std / self.vae_model.config.scaling_factor + latents_mean\n        else:\n            z = z / self.vae_model.config.scaling_factor + self.shift_factor\n\n        use_tiling = (\n            z.shape[2] > self.tiling_size[0] or z.shape[3] > self.tiling_size[1]\n        )\n\n        if use_tiling:\n            samples = []\n            for i in range(z.shape[0]):\n\n                z_i = z[i].unsqueeze(0)\n\n                tiler = Tiler()\n                tiles = tiler.get_tiles(\n                    input=z_i,\n                    tile_size=self.tiling_size,\n                    overlap_size=self.tiling_overlap,\n                    scale=self.downsampling_factor,\n                    out_channels=3,\n                )\n\n                for i, tile_row in enumerate(tiles):\n                    for j, tile in enumerate(tile_row):\n                        tile_shape = tile.shape\n                        # pad tile to inference size if tile is smaller than inference size\n                        tile = pad(\n                            tile,\n                            base_h=self.tiling_size[0],\n                            base_w=self.tiling_size[1],\n                        )\n                        tile_decoded = self.vae_model.decode(tile).sample\n                        tiles[i][j] = (\n                            tile_decoded[\n                                0,\n                                :,\n                                : int(tile_shape[2] * self.downsampling_factor),\n                                : int(tile_shape[3] * self.downsampling_factor),\n                            ]\n                            .cpu()\n                            .unsqueeze(0)\n                        )\n\n                # merge tiles\n                samples.append(tiler.merge_tiles(tiles=tiles))\n\n            samples = torch.cat(samples, dim=0)\n\n        else:\n            samples = self.vae_model.decode(z).sample\n\n        return samples\n"
  },
  {
    "path": "scripts/lbm/vae/autoencoderKL_config.py",
    "content": "from typing import Tuple\nfrom pydantic.dataclasses import dataclass\nfrom ..base import ModelConfig\n\n\n@dataclass\nclass AutoencoderKLDiffusersConfig(ModelConfig):\n    \"\"\"This is the VAEConfig class which defines all the useful parameters to instantiate the model.\n\n    Args:\n\n        version (str): The version of the model. Defaults to \"stabilityai/sdxl-vae\".\n        subfolder (str): The subfolder of the model if loaded from another model. Defaults to \"\".\n        revision (str): The revision of the model. Defaults to \"main\".\n        input_key (str): The key of the input data in the batch. Defaults to \"image\".\n        tiling_size (Tuple[int, int]): The size of the tiling. Defaults to (64, 64).\n        tiling_overlap (Tuple[int, int]): The overlap of the tiling. Defaults to (16, 16).\n    \"\"\"\n\n    version: str = \"stabilityai/sdxl-vae\"\n    subfolder: str = \"\"\n    revision: str = \"main\"\n    input_key: str = \"image\"\n    tiling_size: Tuple[int, int] = (64, 64)\n    tiling_overlap: Tuple[int, int] = (16, 16)\n"
  },
  {
    "path": "scripts/lbm_ext.py",
    "content": "from copy import deepcopy\nfrom PIL import Image\nimport gradio as gr\nfrom modules import scripts_manager, processing, shared, devices, sd_models\n\n\nbirefnet = None\nmodel = None\nmodel_type = ''\nrepos = {\n    'Simple': None,\n    'Normals': 'jasperai/LBM_normals',\n    'Depth': 'jasperai/LBM_depth',\n    'Relighting': 'jasperai/LBM_relighting',\n}\n\nASPECT_RATIOS = {\n    str(512 / 2048): (512, 2048),\n    str(1024 / 1024): (1024, 1024),\n    str(2048 / 512): (2048, 512),\n    str(896 / 1152): (896, 1152),\n    str(1152 / 896): (1152, 896),\n    str(512 / 1920): (512, 1920),\n    str(640 / 1536): (640, 1536),\n    str(768 / 1280): (768, 1280),\n    str(1280 / 768): (1280, 768),\n    str(1536 / 640): (1536, 640),\n    str(1920 / 512): (1920, 512),\n}\n\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return 'LBM: Latent Bridge Matching'\n\n    def show(self, is_img2img):\n        return is_img2img\n\n    # return signature is array of gradio components\n    def ui(self, _is_img2img):\n        with gr.Row():\n            gr.HTML('<a href=\"https://github.com/gojasper/LBM\">&nbsp LBM: Latent Bridge Matching</a><br>')\n        with gr.Row():\n            lbm_method = gr.Dropdown(label='LBM Method', choices=['Simple', 'Relighting', 'Normals', 'Depth'], value='Simple', elem_id='lbm_method')\n        with gr.Row():\n            lbm_composite = gr.Checkbox(label='LBM Composite', value=True, elem_id='lbm_composite')\n            lbm_steps = gr.Slider(label='LBM Steps', minimum=1, maximum=20, step=1, value=1, elem_id='lbm_steps')\n        with gr.Row():\n            bg_image = gr.Image(label='Background image', type='pil', height=512, elem_id='lbm_bg_image')\n        return [lbm_method, lbm_composite, lbm_steps, bg_image]\n\n    def load(self, method: str):\n        global birefnet, model, model_type # pylint: disable=global-statement\n        import torch\n        if birefnet is None:\n            from transformers import AutoModelForImageSegmentation\n            birefnet = AutoModelForImageSegmentation.from_pretrained(\n                \"ZhengPeng7/BiRefNet\",\n                trust_remote_code=True,\n                torch_dtype=torch.float32,\n            ).to(dtype=torch.float32, device=devices.device)\n        if model is None or model_type != method:\n            repo_id = repos.get(method, None)\n            model_type = method\n            if repo_id is not None:\n                import huggingface_hub as hf\n                repo_file = hf.snapshot_download(repo_id, cache_dir=shared.opts.hfcache_dir)\n                from scripts.lbm import get_model # pylint: disable=no-name-in-module\n                model = get_model(\n                    repo_file,\n                    save_dir=None,\n                    torch_dtype=devices.dtype,\n                    device=devices.device,\n                ).to(dtype=devices.dtype, device=devices.device)\n\n    def run(self, p: processing.StableDiffusionProcessing, lbm_method, lbm_composite, lbm_steps, bg_image): # pylint: disable=arguments-differ, unused-argument\n        fg_image = getattr(p, 'init_images', None)\n        if fg_image is None or len(fg_image) == 0 or bg_image is None:\n            shared.log.error('LBM: no init images')\n            return None\n        else:\n            fg_image = fg_image[0]\n\n        from installer import install\n        install('lpips')\n\n        from torchvision.transforms import ToPILImage, ToTensor\n        from scripts.lbm import get_model, extract_object, resize_and_center_crop # pylint: disable=no-name-in-module\n\n        ori_h_bg, ori_w_bg = fg_image.size\n        ar_bg = ori_h_bg / ori_w_bg\n        closest_ar_bg = min(ASPECT_RATIOS, key=lambda x: abs(float(x) - ar_bg))\n        dimensions_bg = ASPECT_RATIOS[closest_ar_bg]\n\n        shared.log.info(f'LBM: method={lbm_method} steps={lbm_steps} size={dimensions_bg[0]}x{dimensions_bg[1]}')\n        self.load(lbm_method)\n\n        if birefnet:\n            birefnet.to(device=devices.device)\n        if model:\n            model.to(device=devices.device)\n\n        output_image = None\n        _, fg_mask = extract_object(birefnet, deepcopy(fg_image))\n        fg_image = resize_and_center_crop(fg_image, dimensions_bg[0], dimensions_bg[1])\n        fg_mask = resize_and_center_crop(fg_mask, dimensions_bg[0], dimensions_bg[1])\n        bg_image = resize_and_center_crop(bg_image, dimensions_bg[0], dimensions_bg[1])\n        img_pasted = Image.composite(fg_image, bg_image, fg_mask)\n\n        if lbm_method == 'Simple':\n            output_image = img_pasted\n        else:\n            img_pasted_tensor = ToTensor()(img_pasted).to(device=devices.device, dtype=devices.dtype).unsqueeze(0) * 2 - 1\n            batch = { \"source_image\": img_pasted_tensor }\n            z_source = model.vae.encode(batch[model.source_key])\n            output_image = model.sample(\n                z=z_source,\n                num_steps=lbm_steps,\n                conditioner_inputs=batch,\n                max_samples=1,\n            )\n            output_image = (output_image[0].clamp(-1, 1).float().cpu() + 1) / 2\n            output_image = ToPILImage()(output_image)\n            if lbm_composite:\n                output_image = Image.composite(output_image, bg_image, fg_mask)\n\n        if birefnet:\n            birefnet.to(device=devices.cpu)\n        if model:\n            model.to(device=devices.cpu)\n\n        if output_image is not None:\n            output_image.resize((ori_h_bg, ori_w_bg))\n            return processing.get_processed(p, [output_image])\n        else:\n            return processing.Processed(p, [])\n"
  },
  {
    "path": "scripts/ledits.py",
    "content": "import diffusers\nimport gradio as gr\nfrom modules import scripts_manager, processing, shared, devices, sd_models\n\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return 'LEdits: Limitless Image Editing'\n\n    def show(self, is_img2img):\n        return is_img2img\n\n    # return signature is array of gradio components\n    def ui(self, _is_img2img):\n        with gr.Row():\n            gr.HTML('<a href=\"https://leditsplusplus-project.static.hf.space/index.html\">&nbsp LEdits++: Limitless Image Editing</a><br>')\n        with gr.Row():\n            edit_start = gr.Slider(label='Edit start', minimum=0.0, maximum=1.0, step=0.01, value=0.1)\n            edit_stop = gr.Slider(label='Edit stop', minimum=0.0, maximum=1.0, step=0.01, value=1.0)\n            intersect_mask = gr.Checkbox(label='Smooth mask', value=True)\n        with gr.Row():\n            prompt1 = gr.Textbox(show_label=False, placeholder='Positive prompt')\n            scale1 = gr.Slider(label='Scale', minimum=0.0, maximum=1.0, step=0.01, value=0.5)\n            threshold1 = gr.Slider(label='Threshold', minimum=0.0, maximum=1.0, step=0.01, value=0.9)\n        with gr.Row():\n            prompt2 = gr.Textbox(show_label=False, placeholder='Negative prompt')\n            scale2 = gr.Slider(label='Scale', minimum=0.0, maximum=1.0, step=0.01, value=0.5)\n            threshold2 = gr.Slider(label='Threshold', minimum=0.0, maximum=1.0, step=0.01, value=0.9)\n        return [edit_start, edit_stop, intersect_mask, prompt1, scale1, threshold1, prompt2, scale2, threshold2]\n\n    def run(self, p: processing.StableDiffusionProcessing, edit_start, edit_stop, intersect_mask, prompt1, scale1, threshold1, prompt2, scale2, threshold2): # pylint: disable=arguments-differ, unused-argument\n        image = getattr(p, 'init_images', None)\n        if len(prompt1) == 0 and len(prompt2) == 0:\n            shared.log.error('LEdits: no prompts')\n            return None\n        if image is None or len(image) == 0:\n            shared.log.error('LEdits: no init_images')\n            return None\n        if shared.sd_model_type != 'sd' and shared.sd_model_type != 'sdxl':\n            shared.log.error(f'LEdits: invalid model type: {shared.sd_model_type}')\n            return None\n\n        orig_pipeline = shared.sd_model\n        orig_offload = shared.opts.diffusers_model_cpu_offload\n        orig_prompt_attention = shared.opts.prompt_attention\n        shared.opts.data['diffusers_model_cpu_offload'] = False\n        shared.opts.data['prompt_attention'] = 'fixed'\n        # shared.sd_model.maybe_free_model_hooks() # ledits is not compatible with offloading\n        # shared.sd_model.has_accelerate = False\n        sd_models.move_model(shared.sd_model, devices.device, force=True)\n        if shared.sd_model_type == 'sd':\n            shared.sd_model = sd_models.switch_pipe(diffusers.LEditsPPPipelineStableDiffusion, shared.sd_model)\n        elif shared.sd_model_type == 'sdxl':\n            shared.sd_model = sd_models.switch_pipe(diffusers.LEditsPPPipelineStableDiffusionXL, shared.sd_model)\n        if str(devices.dtype) == 'torch.float16':\n            shared.sd_model.vae.config.force_upcast = False # not compatible\n\n        shared.sd_model.scheduler = diffusers.DPMSolverMultistepScheduler.from_config(shared.sd_model.scheduler.config, algorithm_type=\"sde-dpmsolver++\", solver_order=2) # ledits is very picky\n        p.sampler_name = 'Default'\n        p.init() # run init early to take care of resizing\n\n        invert_args = {\n            'image': p.init_images[0],\n            'source_prompt': p.prompt,\n            'source_guidance_scale': p.cfg_scale,\n            'num_inversion_steps': p.steps,\n            'skip': 1.0 - p.denoising_strength, # invert start\n            'generator': None, # not supported\n        }\n        shared.log.info(f'LEdits invert: {invert_args}')\n        _output = shared.sd_model.invert(**invert_args)\n        p.task_args = {\n            'editing_prompt': [],\n            'reverse_editing_direction': [],\n            'edit_guidance_scale': [],\n            'edit_threshold': [],\n            'edit_warmup_steps': int(edit_start * p.steps),\n            'edit_cooldown_steps': int((1.0 - edit_stop) * p.steps) if edit_stop < 1.0 else None,\n            'use_intersect_mask': intersect_mask, # smoothing?\n            'generator': None,\n            'guidance_rescale': 0.0, # bug in pipeline if guidance rescale is enabled\n        }\n        if len(prompt1) > 0:\n            p.task_args['editing_prompt'].append(prompt1)\n            p.task_args['reverse_editing_direction'].append(False)\n            p.task_args['edit_guidance_scale'].append(10.0 * scale1)\n            p.task_args['edit_threshold'].append(threshold1)\n        if len(prompt2) > 0:\n            p.task_args['editing_prompt'].append(prompt2)\n            p.task_args['reverse_editing_direction'].append(True)\n            p.task_args['edit_guidance_scale'].append(10.0 * scale2)\n            p.task_args['edit_threshold'].append(threshold2)\n\n        shared.log.info(f'LEdits: {p.task_args}')\n        processed = processing.process_images(p)\n\n        # restore pipeline\n        shared.sd_model = orig_pipeline\n        shared.opts.data['prompt_attention'] = orig_prompt_attention\n        shared.opts.data['diffusers_model_cpu_offload'] = orig_offload\n        return processed\n"
  },
  {
    "path": "scripts/loopback.py",
    "content": "import math\nimport random\n\nimport gradio as gr\nfrom modules import images, processing, scripts_manager\nfrom modules.processing import Processed\nfrom modules.shared import opts, state, log\n\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return \"Loopback\"\n\n    def show(self, is_img2img):\n        return True\n\n    def ui(self, is_img2img):\n        with gr.Row():\n            gr.HTML(\"<span>&nbsp Loopback</span><br>\")\n        with gr.Row():\n            loops = gr.Slider(minimum=1, maximum=32, step=1, label='Loops', value=2, elem_id=self.elem_id(\"loops\"))\n            final_denoising_strength = gr.Slider(minimum=0, maximum=1, step=0.01, label='Final strength', value=0.5, elem_id=self.elem_id(\"final_denoising_strength\"))\n        with gr.Row():\n            denoising_curve = gr.Dropdown(label=\"Strength curve\", choices=[\"Aggressive\", \"Linear\", \"Lazy\"], value=\"Linear\")\n        with gr.Row():\n            randomize_seed = gr.Checkbox(label=\"Randomize seed after each loop iteration\", value=False)\n\n        return [loops, final_denoising_strength, denoising_curve, randomize_seed]\n\n    def run(self, p, loops, final_denoising_strength, denoising_curve, randomize_seed): # pylint: disable=arguments-differ\n        processing.fix_seed(p)\n        initial_batch_count = p.n_iter\n        p.extra_generation_params['Loopback'] = final_denoising_strength\n        p.batch_size = 1\n        p.n_iter = 1\n        info = None\n        initial_seed = None\n        initial_info = None\n        initial_denoising_strength = p.denoising_strength\n        initial_color_corrections = [processing.setup_color_correction(p.init_images[0])] if p.init_images is not None and len(p.init_images) > 0 else None\n        grids = []\n        all_images = []\n        initial_init_images = p.init_images\n        original_inpainting_fill = p.inpainting_fill\n        state.job_count = loops * initial_batch_count\n        history = []\n\n        def calculate_denoising_strength(loop):\n            strength = initial_denoising_strength\n            if loops == 1:\n                return strength\n            progress = loop / (loops - 1)\n            if denoising_curve == \"Aggressive\":\n                strength = math.sin((progress) * math.pi * 0.5)\n            elif denoising_curve == \"Lazy\":\n                strength = 1 - math.cos((progress) * math.pi * 0.5)\n            else:\n                strength = progress\n            change = (final_denoising_strength - initial_denoising_strength) * strength\n            return initial_denoising_strength + change\n\n        for _n in range(initial_batch_count):\n            p.init_images = initial_init_images\n            p.denoising_strength = initial_denoising_strength\n            last_image = None\n\n            for i in range(loops):\n                p.n_iter = 1\n                p.batch_size = 1\n                p.do_not_save_grid = True\n                if opts.img2img_color_correction:\n                    p.color_corrections = initial_color_corrections\n                processed = processing.process_images(p)\n                if processed is None:\n                    log.error(\"Loopback: processing output is none\")\n                    return Processed(p, [], None, None)\n                if state.interrupted or state.skipped:\n                    break\n                if initial_seed is None:\n                    initial_seed = processed.seed\n                    initial_info = processed.info\n                if randomize_seed:\n                    p.seed = random.randrange(4294967294)\n                    p.all_seeds = [p.seed]\n                p.seed = processed.seed + 1 # why?\n                p.denoising_strength = calculate_denoising_strength(i + 1)\n                last_image = processed.images[0]\n                p.init_images = [last_image]\n                log.info(f'Loopback: iteration={i} seed={p.seed} curve={denoising_curve} strength={p.denoising_strength}:{final_denoising_strength}')\n                if initial_batch_count == 1:\n                    history.append(last_image)\n                    all_images.append(last_image)\n\n            if (initial_batch_count > 1) and (not state.skipped) and (not state.interrupted):\n                history.append(last_image)\n                all_images.append(last_image)\n            p.inpainting_fill = original_inpainting_fill\n            if state.interrupted:\n                break\n\n        if len(history) > 1:\n            grid = images.image_grid(history, rows=1)\n            if opts.grid_save:\n                images.save_image(grid, p.outpath_grids, \"grid\", initial_seed, p.prompt, opts.grid_format, info=info, grid=True, p=p)\n            if opts.return_grid:\n                grids.append(grid)\n        all_images = grids + all_images\n        processed = Processed(p, all_images, initial_seed, initial_info)\n        return processed\n"
  },
  {
    "path": "scripts/lut.py",
    "content": "\"\"\"\ndownloads: https://luts.iwltbap.com/\nlib: https://github.com/homm/pillow-lut-tools\n\"\"\"\nimport os\nimport gradio as gr\nfrom installer import install\nfrom modules import scripts_manager, shared, processing\n\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return 'LUT Color grading'\n\n    def show(self, is_img2img): # pylint: disable=unused-argument\n        return True\n\n    def ui(self, _is_img2img):\n        with gr.Row():\n            gr.HTML(\"<span>&nbsp LUT Color grading</span><br>\")\n        with gr.Row():\n            original = gr.Checkbox(label='Include original image', value=True)\n        with gr.Row():\n            cube_file = gr.File(label='LUT .cube file', help='Download LUTs from https://luts.iwltbap.com/')\n            # cube_file = gr.File(label='LUT .cube file')\n        with gr.Row():\n            gr.HTML(\"<br>Enhance LUT\")\n        with gr.Row():\n            cube_scale = gr.Slider(label='Amplify LUT', minimum=0.0, maximum=5.0, step=0.05, value=1.0)\n            brightness = gr.Slider(label='Brightness', minimum=-1, maximum=1, step=0.05, value=0)\n            exposure = gr.Slider(label='Exposure', minimum=-5, maximum=5, step=0.05, value=0)\n            contrast = gr.Slider(label='Contrast', minimum=-1, maximum=1, step=0.05, value=0)\n            warmth = gr.Slider(label='Warmth', minimum=-1, maximum=1, step=0.05, value=0)\n            saturation = gr.Slider(label='Saturation', minimum=-1, maximum=5, step=0.05, value=0)\n            vibrance = gr.Slider(label='Vibrance', minimum=-1, maximum=5, step=0.05, value=0)\n            hue = gr.Slider(label='Hue', minimum=0, maximum=1, step=0.05, value=0)\n            gamma = gr.Slider(label='Gamma', minimum=0, maximum=10.0, step=0.1, value=1.0)\n        return [original, cube_file, cube_scale, brightness, exposure, contrast, warmth, saturation, vibrance, hue, gamma]\n\n    # auto-executed by the script-callback\n    def after(self, p: processing.StableDiffusionProcessing, processed: processing.Processed, original, cube_file, cube_scale, brightness, exposure, contrast, warmth, saturation, vibrance, hue, gamma): # pylint: disable=arguments-differ, unused-argument\n        install('pillow_lut', quiet=True)\n        import pillow_lut\n\n        cube = None\n        name = os.path.splitext(os.path.basename(cube_file.name))[0] if cube_file is not None else None\n        shared.log.info(f'Color grading: cube=\"{name}\" scale={cube_scale} brightness={brightness} exposure={exposure} contrast={contrast} warmth={warmth} saturation={saturation} vibrance={vibrance} hue={hue} gamma={gamma}')\n        if cube_file is not None:\n            try:\n                cube = pillow_lut.load_cube_file(cube_file.name)\n                cube = pillow_lut.amplify_lut(cube, cube_scale)\n                cube = pillow_lut.rgb_color_enhance(source=cube, brightness=brightness, exposure=exposure, contrast=contrast, warmth=warmth, saturation=saturation, vibrance=vibrance, hue=hue, gamma=gamma)\n            except Exception as e:\n                shared.log.error(f'Color grading: {e}')\n\n        images = []\n        if processed is not None and len(processed.images) > 0:\n            for image in processed.images:\n                info = image.info.get('parameters', '')\n                if original:\n                    images.append(image)\n                if cube is not None:\n                    filtered = image.filter(cube)\n                    filtered.info['parameters'] = f'{info}, LUT: {name}'\n                    images.append(filtered)\n        processed.images = images\n\n        return processed\n"
  },
  {
    "path": "scripts/mixture_of_diffusers.py",
    "content": "import gradio as gr\nfrom modules import scripts_manager, processing, shared, sd_models\n\n\nsupported_models = ['sdxl']\nmax_xtiles = 4\nmax_ytiles = 4\n\n\nclass Script(scripts_manager.Script):\n    def __init__(self):\n        super().__init__()\n        self.orig_pipe = None\n        self.orig_attn = None\n\n    def title(self):\n        return 'Mixture-of-Diffusers: Tile Control'\n\n    def show(self, is_img2img): # pylint: disable=unused-argument\n        return True\n\n    def update_ui(self, x_tiles, y_tiles):\n        updates = []\n        for x in range(max_xtiles):\n            for y in range(max_ytiles):\n                updates.append(gr.update(visible=(x < x_tiles) and (y < y_tiles)))\n        return updates\n\n    def ui(self, _is_img2img): # ui elements\n        with gr.Row():\n            gr.HTML('<a href=\"https://huggingface.co/posts/elismasilva/251775641926329\">&nbsp Mixture-of-Diffusers</a><br>')\n        with gr.Row():\n            gr.HTML('<span>&nbsp Use base prompt to define image background and common elements<br>&nbsp Set image width and height to final image size</span>')\n        with gr.Row():\n            x_tiles = gr.Slider(minimum=1, maximum=max_xtiles, step=1, value=1, label=\"X-axis tiles\")\n            y_tiles = gr.Slider(minimum=1, maximum=max_ytiles, step=1, value=1, label=\"Y-axis tiles\")\n        with gr.Row():\n            x_overlap = gr.Slider(minimum=0, maximum=512, value=128, label=\"X-axis tile overlap\")\n            y_overlap = gr.Slider(minimum=0, maximum=512, value=128, label=\"Y-axis tile overlap\")\n        prompts = []\n        for x in range(max_xtiles):\n            for y in range(max_ytiles):\n                with gr.Row():\n                    prompts.append(gr.Textbox('', label=f\"Tile prompt: x={x+1} y={y+1}\", placeholder='Prompt for tile', visible=False, lines=2))\n        x_tiles.change(fn=self.update_ui, inputs=[x_tiles, y_tiles], outputs=prompts)\n        y_tiles.change(fn=self.update_ui, inputs=[x_tiles, y_tiles], outputs=prompts)\n        return [x_tiles, y_tiles, x_overlap, y_overlap] + prompts\n\n    def calc_size(self, size, tiles, overlap):\n        tile_size = (size / tiles) + (overlap / 2) if tiles > 1 else size\n        return 8 * int(tile_size // 8)\n\n    def get_prompts(self, x_tiles, y_tiles, prompts, base_prompt, guidance):\n        y_prompts = []\n        y_guidance = []\n        for y in range(max_ytiles):\n            x_prompts = []\n            x_guidance = []\n            for x in range(max_xtiles):\n                if (x < x_tiles) and (y < y_tiles):\n                    prompt = prompts[x * max_xtiles + y] + ' ' + base_prompt\n                    x_prompts.append(prompt.strip())\n                    x_guidance.append(guidance)\n            if len(x_prompts) > 0:\n                y_prompts.append(x_prompts)\n                y_guidance.append(x_guidance)\n        return y_prompts, y_guidance\n\n    def check_dependencies(self):\n        from installer import install\n        install('ligo-segments')\n        try:\n            from ligo.segments import segment # pylint: disable=unused-import\n            return True\n        except Exception as e:\n            shared.log.error(f'MoD: {e}')\n        return False\n\n    def run(self, p: processing.StableDiffusionProcessing, *args): # pylint: disable=arguments-differ, unused-argument\n        if shared.sd_model_type not in supported_models:\n            shared.log.warning(f'MoD: class={shared.sd_model.__class__.__name__} model={shared.sd_model_type} required={supported_models}')\n            return None\n        if not self.check_dependencies():\n            return None\n        [x_tiles, y_tiles, x_overlap, y_overlap], prompts = args[:4], args[4:]\n        if max(x_tiles, y_tiles) <= 1:\n            return None\n        from scripts.mod import StableDiffusionXLTilingPipeline # pylint: disable=no-name-in-module\n        self.orig_pipe = shared.sd_model\n        self.orig_attn = shared.opts.prompt_attention\n\n        p.prompt = shared.prompt_styles.apply_styles_to_prompt(p.prompt, p.styles)\n        p.negative_prompt = shared.prompt_styles.apply_negative_styles_to_prompt(p.negative_prompt, p.styles)\n        shared.prompt_styles.apply_styles_to_extra(p)\n        p.styles = []\n        p.prompts, guidance = self.get_prompts(x_tiles, y_tiles, prompts, p.prompt, p.cfg_scale)\n        p.all_prompts = p.prompts\n        p.task_args['prompts'] = p.prompts\n        p.task_args['negative_prompt'] = p.negative_prompt\n        p.task_args['tile_col_overlap'] = x_overlap if x_tiles > 1 else 0\n        p.task_args['tile_row_overlap'] = y_overlap if y_tiles > 1 else 0\n        p.task_args['tile_width'] = self.calc_size(p.width, x_tiles, x_overlap)\n        p.task_args['tile_height'] = self.calc_size(p.height, y_tiles, y_overlap)\n        p.task_args['guidance_scale_tiles'] = guidance\n        p.task_args['width'] = p.width\n        p.task_args['height'] = p.height\n        p.extra_generation_params[\"MoD X\"] = f'{x_tiles}/{p.task_args[\"tile_width\"]}/{p.task_args[\"tile_col_overlap\"]}'\n        p.extra_generation_params[\"MoD Y\"] = f'{y_tiles}/{p.task_args[\"tile_height\"]}/{p.task_args[\"tile_row_overlap\"]}'\n        p.keep_prompts = True\n        shared.opts.prompt_attention = 'fixed'\n        shared.log.info(f'MoD: xtiles={x_tiles} ytiles={y_tiles} xoverlap={p.task_args[\"tile_col_overlap\"]} yoverlap={p.task_args[\"tile_row_overlap\"]} xsize={p.task_args[\"tile_width\"]} ysize={p.task_args[\"tile_height\"]}')\n\n        shared.sd_model = sd_models.switch_pipe(StableDiffusionXLTilingPipeline, shared.sd_model)\n        sd_models.set_diffuser_options(shared.sd_model)\n        sd_models.apply_balanced_offload(shared.sd_model)\n        return None\n\n    def after(self, p: processing.StableDiffusionProcessing, processed: processing.Processed, *args): # pylint: disable=arguments-differ, unused-argument\n        if self.orig_pipe is None:\n            return processed\n        if shared.sd_model_type == \"sdxl\":\n            shared.sd_model = self.orig_pipe\n        if self.orig_attn is not None:\n            shared.opts.prompt_attention = self.orig_attn\n        self.orig_pipe = None\n        self.orig_attn = None\n        return processed\n"
  },
  {
    "path": "scripts/mixture_tiling.py",
    "content": "import gradio as gr\nimport torch\nfrom modules import shared, devices, scripts_manager, processing, sd_models\n\n\nchecked_ok = False\n\n\ndef check_dependencies():\n    global checked_ok # pylint: disable=global-statement\n    from installer import installed, install\n    packages = [\n        ('ligo-segments', 'ligo-segments'),\n    ]\n    for pkg in packages:\n        if not installed(pkg[1], reload=True, quiet=True):\n            install(pkg[0], pkg[1], ignore=False)\n    try:\n        from ligo.segments import segment # pylint: disable=unused-import\n        checked_ok = True\n        return True\n    except Exception as e:\n        shared.log.error(f'Mixture tiling: {e}')\n        return False\n\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return 'Mixture Tiling: Scene Composition'\n\n    def show(self, is_img2img):\n        return not is_img2img\n\n    def ui(self, _is_img2img):\n        with gr.Row():\n            gr.HTML('<a href=\"https://arxiv.org/abs/2302.02412\">&nbsp Mixture Tiling: Scene Composition</a><br>')\n        with gr.Row():\n            gr.HTML('<span>&nbsp Separated prompts using new lines<br>&nbsp Number of prompts must matcxh X*Y</span>')\n        with gr.Row():\n            x_size = gr.Slider(label='X components', minimum=1, maximum=5, step=1, value=1)\n            y_size = gr.Slider(label='Y components', minimum=1, maximum=5, step=1, value=1)\n        with gr.Row():\n            x_overlap = gr.Slider(label='X overlap', minimum=0, maximum=1, step=0.01, value=0.5)\n            y_overlap = gr.Slider(label='Y overlap', minimum=0, maximum=1, step=0.01, value=0.5)\n        return x_size, y_size, x_overlap, y_overlap\n\n    def run(self, p: processing.StableDiffusionProcessing, x_size, y_size, x_overlap, y_overlap): # pylint: disable=arguments-differ\n        if not checked_ok:\n            if not check_dependencies():\n                return None\n        prompts = p.prompt.splitlines()\n        if len(prompts) != x_size * y_size:\n            shared.log.error(f'Mixture tiling prompt count mismatch: prompts={len(prompts)} required={x_size * y_size}')\n            return None\n        # backup pipeline and params\n        orig_pipeline = shared.sd_model\n        orig_dtype = devices.dtype\n        orig_prompt_attention = shared.opts.prompt_attention\n        # create pipeline\n        if shared.sd_model_type != 'sd':\n            shared.log.error(f'Mixture tiling: incorrect base model: {shared.sd_model.__class__.__name__}')\n            return None\n        shared.sd_model = sd_models.switch_pipe('mixture_tiling', shared.sd_model)\n        if shared.sd_model.__class__.__name__ != 'StableDiffusionTilingPipeline': # switch failed\n            shared.log.error(f'Mixture tiling: not a tiling pipeline: {shared.sd_model.__class__.__name__}')\n            shared.sd_model = orig_pipeline\n            return None\n        sd_models.set_diffuser_options(shared.sd_model)\n        shared.opts.data['prompt_attention'] = 'fixed' # this pipeline is not compatible with embeds\n        shared.sd_model.to(torch.float32) # this pipeline unet is not compatible with fp16\n        processing.fix_seed(p)\n        # set pipeline specific params, note that standard params are applied when applicable\n        y_prompts = []\n        for y in range(y_size):\n            x_prompts = []\n            for x in range(x_size):\n                x_prompts.append(prompts[y * x_size + x])\n            y_prompts.append(x_prompts)\n        p.task_args['prompt'] = y_prompts\n        p.task_args['seed'] = p.seed\n        p.task_args['tile_width'] = p.height\n        p.task_args['tile_height'] = p.width\n        p.task_args['tile_col_overlap'] = int(p.height * x_overlap)\n        p.task_args['tile_row_overlap'] = int(p.width * y_overlap)\n        p.task_args['output_type'] = 'np'\n        # run pipeline\n        shared.log.debug(f'Tiling: args={p.task_args}')\n        processed: processing.Processed = processing.process_images(p) # runs processing using main loop\n        # restore pipeline and params\n        shared.opts.data['prompt_attention'] = orig_prompt_attention\n        shared.sd_model = orig_pipeline\n        shared.sd_model.to(orig_dtype)\n        return processed\n"
  },
  {
    "path": "scripts/mod/__init__.py",
    "content": "# Copyright 2025 The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport inspect\nfrom enum import Enum\nfrom typing import Any, Dict, List, Optional, Tuple, Union\n\nimport torch\nfrom transformers import (\n    CLIPTextModel,\n    CLIPTextModelWithProjection,\n    CLIPTokenizer,\n)\n\nfrom diffusers.image_processor import VaeImageProcessor\nfrom diffusers.loaders import (\n    FromSingleFileMixin,\n    StableDiffusionXLLoraLoaderMixin,\n    TextualInversionLoaderMixin,\n)\nfrom diffusers.models import AutoencoderKL, UNet2DConditionModel\nfrom diffusers.models.attention_processor import (\n    AttnProcessor2_0,\n    FusedAttnProcessor2_0,\n    XFormersAttnProcessor,\n)\nfrom diffusers.models.lora import adjust_lora_scale_text_encoder\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline, StableDiffusionMixin\nfrom diffusers.pipelines.stable_diffusion_xl.pipeline_output import StableDiffusionXLPipelineOutput\nfrom diffusers.schedulers import KarrasDiffusionSchedulers, LMSDiscreteScheduler\nfrom diffusers.utils import (\n    USE_PEFT_BACKEND,\n    is_invisible_watermark_available,\n    is_torch_xla_available,\n    logging,\n    replace_example_docstring,\n    scale_lora_layers,\n    unscale_lora_layers,\n)\nfrom diffusers.utils.torch_utils import randn_tensor\n\n\ntry:\n    from ligo.segments import segment\nexcept ImportError as e:\n    raise ImportError(\"Please install transformers and ligo-segments to use the mixture pipeline\") from e\n\nif is_torch_xla_available():\n    import torch_xla.core.xla_model as xm\n\n    XLA_AVAILABLE = True\nelse:\n    XLA_AVAILABLE = False\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\nEXAMPLE_DOC_STRING = \"\"\"\n    Examples:\n        ```py\n        >>> import torch\n        >>> from diffusers import StableDiffusionXLPipeline\n\n        >>> pipe = StableDiffusionXLPipeline.from_pretrained(\n        ...     \"stabilityai/stable-diffusion-xl-base-1.0\", torch_dtype=torch.float16\n        ... )\n        >>> pipe = pipe.to(\"cuda\")\n\n        >>> prompt = \"a photo of an astronaut riding a horse on mars\"\n        >>> image = pipe(prompt).images[0]\n        ```\n\"\"\"\n\n\ndef _tile2pixel_indices(tile_row, tile_col, tile_width, tile_height, tile_row_overlap, tile_col_overlap):\n    \"\"\"Given a tile row and column numbers returns the range of pixels affected by that tiles in the overall image\n\n    Returns a tuple with:\n        - Starting coordinates of rows in pixel space\n        - Ending coordinates of rows in pixel space\n        - Starting coordinates of columns in pixel space\n        - Ending coordinates of columns in pixel space\n    \"\"\"\n    px_row_init = 0 if tile_row == 0 else tile_row * (tile_height - tile_row_overlap)\n    px_row_end = px_row_init + tile_height\n    px_col_init = 0 if tile_col == 0 else tile_col * (tile_width - tile_col_overlap)\n    px_col_end = px_col_init + tile_width\n    return px_row_init, px_row_end, px_col_init, px_col_end\n\n\ndef _pixel2latent_indices(px_row_init, px_row_end, px_col_init, px_col_end):\n    \"\"\"Translates coordinates in pixel space to coordinates in latent space\"\"\"\n    return px_row_init // 8, px_row_end // 8, px_col_init // 8, px_col_end // 8\n\n\ndef _tile2latent_indices(tile_row, tile_col, tile_width, tile_height, tile_row_overlap, tile_col_overlap):\n    \"\"\"Given a tile row and column numbers returns the range of latents affected by that tiles in the overall image\n\n    Returns a tuple with:\n        - Starting coordinates of rows in latent space\n        - Ending coordinates of rows in latent space\n        - Starting coordinates of columns in latent space\n        - Ending coordinates of columns in latent space\n    \"\"\"\n    px_row_init, px_row_end, px_col_init, px_col_end = _tile2pixel_indices(\n        tile_row, tile_col, tile_width, tile_height, tile_row_overlap, tile_col_overlap\n    )\n    return _pixel2latent_indices(px_row_init, px_row_end, px_col_init, px_col_end)\n\n\ndef _tile2latent_exclusive_indices(\n    tile_row, tile_col, tile_width, tile_height, tile_row_overlap, tile_col_overlap, rows, columns\n):\n    \"\"\"Given a tile row and column numbers returns the range of latents affected only by that tile in the overall image\n\n    Returns a tuple with:\n        - Starting coordinates of rows in latent space\n        - Ending coordinates of rows in latent space\n        - Starting coordinates of columns in latent space\n        - Ending coordinates of columns in latent space\n    \"\"\"\n    row_init, row_end, col_init, col_end = _tile2latent_indices(\n        tile_row, tile_col, tile_width, tile_height, tile_row_overlap, tile_col_overlap\n    )\n    row_segment = segment(row_init, row_end)\n    col_segment = segment(col_init, col_end)\n    # Iterate over the rest of tiles, clipping the region for the current tile\n    for row in range(rows):\n        for column in range(columns):\n            if row != tile_row and column != tile_col:\n                clip_row_init, clip_row_end, clip_col_init, clip_col_end = _tile2latent_indices(\n                    row, column, tile_width, tile_height, tile_row_overlap, tile_col_overlap\n                )\n                row_segment = row_segment - segment(clip_row_init, clip_row_end)\n                col_segment = col_segment - segment(clip_col_init, clip_col_end)\n    # return row_init, row_end, col_init, col_end\n    return row_segment[0], row_segment[1], col_segment[0], col_segment[1]\n\ndef _get_crops_coords_list(num_rows, num_cols, output_width):\n    \"\"\"\n    Generates a list of lists of `crops_coords_top_left` tuples for focusing on\n    different horizontal parts of an image, and repeats this list for the specified\n    number of rows in the output structure.\n\n    This function calculates `crops_coords_top_left` tuples to create horizontal\n    focus variations (like left, center, right focus) based on `output_width`\n    and `num_cols` (which represents the number of horizontal focus points/columns).\n    It then repeats the *list* of these horizontal focus tuples `num_rows` times to\n    create the final list of lists output structure.\n\n    Args:\n        num_rows (int): The desired number of rows in the output list of lists.\n                          This determines how many times the list of horizontal\n                          focus variations will be repeated.\n        num_cols (int): The number of horizontal focus points (columns) to generate.\n                          This determines how many horizontal focus variations are\n                          created based on dividing the `output_width`.\n        output_width (int): The desired width of the output image.\n\n    Returns:\n        list[list[tuple[int, int]]]: A list of lists of tuples. Each inner list\n                                     contains `num_cols` tuples of `(ctop, cleft)`,\n                                     representing horizontal focus points. The outer list\n                                     contains `num_rows` such inner lists.\n    \"\"\"\n    crops_coords_list = []\n    if num_cols <= 0:\n        crops_coords_list = []\n    elif num_cols == 1:\n        crops_coords_list = [(0, 0)]\n    else:\n        section_width = output_width / num_cols\n        for i in range(num_cols):\n            cleft = int(round(i * section_width))\n            crops_coords_list.append((0, cleft))\n\n    result_list = []\n    for _ in range(num_rows):\n        result_list.append(list(crops_coords_list))\n\n    return result_list\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.rescale_noise_cfg\ndef rescale_noise_cfg(noise_cfg, noise_pred_text, guidance_rescale=0.0):\n    r\"\"\"\n    Rescales `noise_cfg` tensor based on `guidance_rescale` to improve image quality and fix overexposure. Based on\n    Section 3.4 from [Common Diffusion Noise Schedules and Sample Steps are\n    Flawed](https://arxiv.org/pdf/2305.08891.pdf).\n\n    Args:\n        noise_cfg (`torch.Tensor`):\n            The predicted noise tensor for the guided diffusion process.\n        noise_pred_text (`torch.Tensor`):\n            The predicted noise tensor for the text-guided diffusion process.\n        guidance_rescale (`float`, *optional*, defaults to 0.0):\n            A rescale factor applied to the noise predictions.\n\n    Returns:\n        noise_cfg (`torch.Tensor`): The rescaled noise prediction tensor.\n    \"\"\"\n    std_text = noise_pred_text.std(dim=list(range(1, noise_pred_text.ndim)), keepdim=True)\n    std_cfg = noise_cfg.std(dim=list(range(1, noise_cfg.ndim)), keepdim=True)\n    # rescale the results from guidance (fixes overexposure)\n    noise_pred_rescaled = noise_cfg * (std_text / std_cfg)\n    # mix with the original results from guidance by factor guidance_rescale to avoid \"plain looking\" images\n    noise_cfg = guidance_rescale * noise_pred_rescaled + (1 - guidance_rescale) * noise_cfg\n    return noise_cfg\n\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.retrieve_timesteps\ndef retrieve_timesteps(\n    scheduler,\n    num_inference_steps: Optional[int] = None,\n    device: Optional[Union[str, torch.device]] = None,\n    timesteps: Optional[List[int]] = None,\n    sigmas: Optional[List[float]] = None,\n    **kwargs,\n):\n    r\"\"\"\n    Calls the scheduler's `set_timesteps` method and retrieves timesteps from the scheduler after the call. Handles\n    custom timesteps. Any kwargs will be supplied to `scheduler.set_timesteps`.\n\n    Args:\n        scheduler (`SchedulerMixin`):\n            The scheduler to get timesteps from.\n        num_inference_steps (`int`):\n            The number of diffusion steps used when generating samples with a pre-trained model. If used, `timesteps`\n            must be `None`.\n        device (`str` or `torch.device`, *optional*):\n            The device to which the timesteps should be moved to. If `None`, the timesteps are not moved.\n        timesteps (`List[int]`, *optional*):\n            Custom timesteps used to override the timestep spacing strategy of the scheduler. If `timesteps` is passed,\n            `num_inference_steps` and `sigmas` must be `None`.\n        sigmas (`List[float]`, *optional*):\n            Custom sigmas used to override the timestep spacing strategy of the scheduler. If `sigmas` is passed,\n            `num_inference_steps` and `timesteps` must be `None`.\n\n    Returns:\n        `Tuple[torch.Tensor, int]`: A tuple where the first element is the timestep schedule from the scheduler and the\n        second element is the number of inference steps.\n    \"\"\"\n\n    if timesteps is not None and sigmas is not None:\n        raise ValueError(\"Only one of `timesteps` or `sigmas` can be passed. Please choose one to set custom values\")\n    if timesteps is not None:\n        accepts_timesteps = \"timesteps\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n        if not accepts_timesteps:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" timestep schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(timesteps=timesteps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    elif sigmas is not None:\n        accept_sigmas = \"sigmas\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n        if not accept_sigmas:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" sigmas schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(sigmas=sigmas, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    else:\n        scheduler.set_timesteps(num_inference_steps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n    return timesteps, num_inference_steps\n\n\nclass StableDiffusionXLTilingPipeline(\n    DiffusionPipeline,\n    StableDiffusionMixin,\n    FromSingleFileMixin,\n    StableDiffusionXLLoraLoaderMixin,\n    TextualInversionLoaderMixin,\n):\n    r\"\"\"\n    Pipeline for text-to-image generation using Stable Diffusion XL.\n\n    This model inherits from [`DiffusionPipeline`]. Check the superclass documentation for the generic methods the\n    library implements for all the pipelines (such as downloading or saving, running on a particular device, etc.)\n\n    The pipeline also inherits the following loading methods:\n        - [`~loaders.TextualInversionLoaderMixin.load_textual_inversion`] for loading textual inversion embeddings\n        - [`~loaders.FromSingleFileMixin.from_single_file`] for loading `.ckpt` files\n        - [`~loaders.StableDiffusionXLLoraLoaderMixin.load_lora_weights`] for loading LoRA weights\n        - [`~loaders.StableDiffusionXLLoraLoaderMixin.save_lora_weights`] for saving LoRA weights\n\n    Args:\n        vae ([`AutoencoderKL`]):\n            Variational Auto-Encoder (VAE) Model to encode and decode images to and from latent representations.\n        text_encoder ([`CLIPTextModel`]):\n            Frozen text-encoder. Stable Diffusion XL uses the text portion of\n            [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModel), specifically\n            the [clip-vit-large-patch14](https://huggingface.co/openai/clip-vit-large-patch14) variant.\n        text_encoder_2 ([` CLIPTextModelWithProjection`]):\n            Second frozen text-encoder. Stable Diffusion XL uses the text and pool portion of\n            [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModelWithProjection),\n            specifically the\n            [laion/CLIP-ViT-bigG-14-laion2B-39B-b160k](https://huggingface.co/laion/CLIP-ViT-bigG-14-laion2B-39B-b160k)\n            variant.\n        tokenizer (`CLIPTokenizer`):\n            Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer).\n        tokenizer_2 (`CLIPTokenizer`):\n            Second Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer).\n        unet ([`UNet2DConditionModel`]): Conditional U-Net architecture to denoise the encoded image latents.\n        scheduler ([`SchedulerMixin`]):\n            A scheduler to be used in combination with `unet` to denoise the encoded image latents. Can be one of\n            [`DDIMScheduler`], [`LMSDiscreteScheduler`], or [`PNDMScheduler`].\n        force_zeros_for_empty_prompt (`bool`, *optional*, defaults to `\"True\"`):\n            Whether the negative prompt embeddings shall be forced to always be set to 0. Also see the config of\n            `stabilityai/stable-diffusion-xl-base-1-0`.\n        add_watermarker (`bool`, *optional*):\n            Whether to use the [invisible_watermark library](https://github.com/ShieldMnt/invisible-watermark/) to\n            watermark output images. If not defined, it will default to True if the package is installed, otherwise no\n            watermarker will be used.\n    \"\"\"\n\n    model_cpu_offload_seq = \"text_encoder->text_encoder_2->image_encoder->unet->vae\"\n    _optional_components = [\n        \"tokenizer\",\n        \"tokenizer_2\",\n        \"text_encoder\",\n        \"text_encoder_2\",\n    ]\n\n    def __init__(\n        self,\n        vae: AutoencoderKL,\n        text_encoder: CLIPTextModel,\n        text_encoder_2: CLIPTextModelWithProjection,\n        tokenizer: CLIPTokenizer,\n        tokenizer_2: CLIPTokenizer,\n        unet: UNet2DConditionModel,\n        scheduler: KarrasDiffusionSchedulers,\n        force_zeros_for_empty_prompt: bool = True,\n        add_watermarker: Optional[bool] = None,\n    ):\n        super().__init__()\n\n        self.register_modules(\n            vae=vae,\n            text_encoder=text_encoder,\n            text_encoder_2=text_encoder_2,\n            tokenizer=tokenizer,\n            tokenizer_2=tokenizer_2,\n            unet=unet,\n            scheduler=scheduler,\n        )\n        self.register_to_config(force_zeros_for_empty_prompt=force_zeros_for_empty_prompt)\n        self.vae_scale_factor = 2 ** (len(self.vae.config.block_out_channels) - 1) if getattr(self, \"vae\", None) else 8\n        self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor)\n\n        self.default_sample_size = (\n            self.unet.config.sample_size\n            if hasattr(self, \"unet\") and self.unet is not None and hasattr(self.unet.config, \"sample_size\")\n            else 128\n        )\n\n        self.watermark = None\n\n    class SeedTilesMode(Enum):\n        \"\"\"Modes in which the latents of a particular tile can be re-seeded\"\"\"\n\n        FULL = \"full\"\n        EXCLUSIVE = \"exclusive\"\n\n    def encode_prompt(\n        self,\n        prompt: str,\n        prompt_2: Optional[str] = None,\n        device: Optional[torch.device] = None,\n        num_images_per_prompt: int = 1,\n        do_classifier_free_guidance: bool = True,\n        negative_prompt: Optional[str] = None,\n        negative_prompt_2: Optional[str] = None,\n        prompt_embeds: Optional[torch.Tensor] = None,\n        negative_prompt_embeds: Optional[torch.Tensor] = None,\n        pooled_prompt_embeds: Optional[torch.Tensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.Tensor] = None,\n        lora_scale: Optional[float] = None,\n        clip_skip: Optional[int] = None,\n    ):\n        r\"\"\"\n        Encodes the prompt into text encoder hidden states.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                prompt to be encoded\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders\n            device: (`torch.device`):\n                torch device\n            num_images_per_prompt (`int`):\n                number of images that should be generated per prompt\n            do_classifier_free_guidance (`bool`):\n                whether to use classifier free guidance or not\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders\n            prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            lora_scale (`float`, *optional*):\n                A lora scale that will be applied to all LoRA layers of the text encoder if LoRA layers are loaded.\n            clip_skip (`int`, *optional*):\n                Number of layers to be skipped from CLIP while computing the prompt embeddings. A value of 1 means that\n                the output of the pre-final layer will be used for computing the prompt embeddings.\n        \"\"\"\n        device = device or self._execution_device\n\n        # set lora scale so that monkey patched LoRA\n        # function of text encoder can correctly access it\n        if lora_scale is not None and isinstance(self, StableDiffusionXLLoraLoaderMixin):\n            self._lora_scale = lora_scale\n\n            # dynamically adjust the LoRA scale\n            if self.text_encoder is not None:\n                if not USE_PEFT_BACKEND:\n                    adjust_lora_scale_text_encoder(self.text_encoder, lora_scale)\n                else:\n                    scale_lora_layers(self.text_encoder, lora_scale)\n\n            if self.text_encoder_2 is not None:\n                if not USE_PEFT_BACKEND:\n                    adjust_lora_scale_text_encoder(self.text_encoder_2, lora_scale)\n                else:\n                    scale_lora_layers(self.text_encoder_2, lora_scale)\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n\n        if prompt is not None:\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        # Define tokenizers and text encoders\n        tokenizers = [self.tokenizer, self.tokenizer_2] if self.tokenizer is not None else [self.tokenizer_2]\n        text_encoders = (\n            [self.text_encoder, self.text_encoder_2] if self.text_encoder is not None else [self.text_encoder_2]\n        )\n\n        if prompt_embeds is None:\n            prompt_2 = prompt_2 or prompt\n            prompt_2 = [prompt_2] if isinstance(prompt_2, str) else prompt_2\n\n            # textual inversion: process multi-vector tokens if necessary\n            prompt_embeds_list = []\n            prompts = [prompt, prompt_2]\n            for prompt, tokenizer, text_encoder in zip(prompts, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    prompt = self.maybe_convert_prompt(prompt, tokenizer)\n\n                text_inputs = tokenizer(\n                    prompt,\n                    padding=\"max_length\",\n                    max_length=tokenizer.model_max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                text_input_ids = text_inputs.input_ids\n                untruncated_ids = tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n                if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(\n                    text_input_ids, untruncated_ids\n                ):\n                    removed_text = tokenizer.batch_decode(untruncated_ids[:, tokenizer.model_max_length - 1 : -1])\n                    logger.warning(\n                        \"The following part of your input was truncated because CLIP can only handle sequences up to\"\n                        f\" {tokenizer.model_max_length} tokens: {removed_text}\"\n                    )\n\n                prompt_embeds = text_encoder(text_input_ids.to(device), output_hidden_states=True)\n\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                if pooled_prompt_embeds is None and prompt_embeds[0].ndim == 2:\n                    pooled_prompt_embeds = prompt_embeds[0]\n\n                if clip_skip is None:\n                    prompt_embeds = prompt_embeds.hidden_states[-2]\n                else:\n                    # \"2\" because SDXL always indexes from the penultimate layer.\n                    prompt_embeds = prompt_embeds.hidden_states[-(clip_skip + 2)]\n\n                prompt_embeds_list.append(prompt_embeds)\n\n            prompt_embeds = torch.concat(prompt_embeds_list, dim=-1)\n\n        # get unconditional embeddings for classifier free guidance\n        zero_out_negative_prompt = negative_prompt is None and self.config.force_zeros_for_empty_prompt\n        if do_classifier_free_guidance and negative_prompt_embeds is None and zero_out_negative_prompt:\n            negative_prompt_embeds = torch.zeros_like(prompt_embeds)\n            negative_pooled_prompt_embeds = torch.zeros_like(pooled_prompt_embeds)\n        elif do_classifier_free_guidance and negative_prompt_embeds is None:\n            negative_prompt = negative_prompt or \"\"\n            negative_prompt_2 = negative_prompt_2 or negative_prompt\n\n            # normalize str to list\n            negative_prompt = batch_size * [negative_prompt] if isinstance(negative_prompt, str) else negative_prompt\n            negative_prompt_2 = (\n                batch_size * [negative_prompt_2] if isinstance(negative_prompt_2, str) else negative_prompt_2\n            )\n\n            uncond_tokens: List[str]\n            if prompt is not None and type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n            else:\n                uncond_tokens = [negative_prompt, negative_prompt_2]\n\n            negative_prompt_embeds_list = []\n            for negative_prompt, tokenizer, text_encoder in zip(uncond_tokens, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    negative_prompt = self.maybe_convert_prompt(negative_prompt, tokenizer)\n\n                max_length = prompt_embeds.shape[1]\n                uncond_input = tokenizer(\n                    negative_prompt,\n                    padding=\"max_length\",\n                    max_length=max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                negative_prompt_embeds = text_encoder(\n                    uncond_input.input_ids.to(device),\n                    output_hidden_states=True,\n                )\n\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                if negative_pooled_prompt_embeds is None and negative_prompt_embeds[0].ndim == 2:\n                    negative_pooled_prompt_embeds = negative_prompt_embeds[0]\n                negative_prompt_embeds = negative_prompt_embeds.hidden_states[-2]\n\n                negative_prompt_embeds_list.append(negative_prompt_embeds)\n\n            negative_prompt_embeds = torch.concat(negative_prompt_embeds_list, dim=-1)\n\n        if self.text_encoder_2 is not None:\n            prompt_embeds = prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n        else:\n            prompt_embeds = prompt_embeds.to(dtype=self.unet.dtype, device=device)\n\n        bs_embed, seq_len, _ = prompt_embeds.shape\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(bs_embed * num_images_per_prompt, seq_len, -1)\n\n        if do_classifier_free_guidance:\n            # duplicate unconditional embeddings for each generation per prompt, using mps friendly method\n            seq_len = negative_prompt_embeds.shape[1]\n\n            if self.text_encoder_2 is not None:\n                negative_prompt_embeds = negative_prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n            else:\n                negative_prompt_embeds = negative_prompt_embeds.to(dtype=self.unet.dtype, device=device)\n\n            negative_prompt_embeds = negative_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds = negative_prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n        pooled_prompt_embeds = pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n            bs_embed * num_images_per_prompt, -1\n        )\n        if do_classifier_free_guidance:\n            negative_pooled_prompt_embeds = negative_pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n                bs_embed * num_images_per_prompt, -1\n            )\n\n        if self.text_encoder is not None:\n            if isinstance(self, StableDiffusionXLLoraLoaderMixin) and USE_PEFT_BACKEND:\n                # Retrieve the original scale by scaling back the LoRA layers\n                unscale_lora_layers(self.text_encoder, lora_scale)\n\n        if self.text_encoder_2 is not None:\n            if isinstance(self, StableDiffusionXLLoraLoaderMixin) and USE_PEFT_BACKEND:\n                # Retrieve the original scale by scaling back the LoRA layers\n                unscale_lora_layers(self.text_encoder_2, lora_scale)\n\n        return prompt_embeds, negative_prompt_embeds, pooled_prompt_embeds, negative_pooled_prompt_embeds\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_extra_step_kwargs\n    def prepare_extra_step_kwargs(self, generator, eta):\n        # prepare extra kwargs for the scheduler step, since not all schedulers have the same signature\n        # eta (η) is only used with the DDIMScheduler, it will be ignored for other schedulers.\n        # eta corresponds to η in DDIM paper: https://arxiv.org/abs/2010.02502\n        # and should be between [0, 1]\n\n        accepts_eta = \"eta\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        extra_step_kwargs = {}\n        if accepts_eta:\n            extra_step_kwargs[\"eta\"] = eta\n\n        # check if the scheduler accepts generator\n        accepts_generator = \"generator\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        if accepts_generator:\n            extra_step_kwargs[\"generator\"] = generator\n        return extra_step_kwargs\n\n    def check_inputs(self, prompt, height, width, grid_cols, seed_tiles_mode, tiles_mode):\n        if height % 8 != 0 or width % 8 != 0:\n            raise ValueError(f\"`height` and `width` have to be divisible by 8 but are {height} and {width}.\")\n\n        if prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n\n        if not isinstance(prompt, list) or not all(isinstance(row, list) for row in prompt):\n            raise ValueError(f\"`prompt` has to be a list of lists but is {type(prompt)}\")\n\n        if not all(len(row) == grid_cols for row in prompt):\n            raise ValueError(\"All prompt rows must have the same number of prompt columns\")\n\n        if not isinstance(seed_tiles_mode, str) and (\n            not isinstance(seed_tiles_mode, list) or not all(isinstance(row, list) for row in seed_tiles_mode)\n        ):\n            raise ValueError(f\"`seed_tiles_mode` has to be a string or list of lists but is {type(prompt)}\")\n\n        if any(mode not in tiles_mode for row in seed_tiles_mode for mode in row):\n            raise ValueError(f\"Seed tiles mode must be one of {tiles_mode}\")\n\n    def _get_add_time_ids(\n        self, original_size, crops_coords_top_left, target_size, dtype, text_encoder_projection_dim=None\n    ):\n        add_time_ids = list(original_size + crops_coords_top_left + target_size)\n\n        passed_add_embed_dim = (\n            self.unet.config.addition_time_embed_dim * len(add_time_ids) + text_encoder_projection_dim\n        )\n        expected_add_embed_dim = self.unet.add_embedding.linear_1.in_features\n\n        if expected_add_embed_dim != passed_add_embed_dim:\n            raise ValueError(\n                f\"Model expects an added time embedding vector of length {expected_add_embed_dim}, but a vector of {passed_add_embed_dim} was created. The model has an incorrect config. Please check `unet.config.time_embedding_type` and `text_encoder_2.config.projection_dim`.\"\n            )\n\n        add_time_ids = torch.tensor([add_time_ids], dtype=dtype)\n        return add_time_ids\n\n    def _gaussian_weights(self, tile_width, tile_height, nbatches, device, dtype):\n        \"\"\"Generates a gaussian mask of weights for tile contributions\"\"\"\n        import numpy as np\n        from numpy import exp, pi, sqrt\n\n        latent_width = tile_width // 8\n        latent_height = tile_height // 8\n\n        var = 0.01\n        midpoint = (latent_width - 1) / 2  # -1 because index goes from 0 to latent_width - 1\n        x_probs = [\n            exp(-(x - midpoint) * (x - midpoint) / (latent_width * latent_width) / (2 * var)) / sqrt(2 * pi * var)\n            for x in range(latent_width)\n        ]\n        midpoint = latent_height / 2\n        y_probs = [\n            exp(-(y - midpoint) * (y - midpoint) / (latent_height * latent_height) / (2 * var)) / sqrt(2 * pi * var)\n            for y in range(latent_height)\n        ]\n\n        weights_np = np.outer(y_probs, x_probs)\n        weights_torch = torch.tensor(weights_np, device=device)\n        weights_torch = weights_torch.to(dtype)\n        return torch.tile(weights_torch, (nbatches, self.unet.config.in_channels, 1, 1))\n\n    def upcast_vae(self):\n        dtype = self.vae.dtype\n        self.vae.to(dtype=torch.float32)\n        use_torch_2_0_or_xformers = isinstance(\n            self.vae.decoder.mid_block.attentions[0].processor,\n            (\n                AttnProcessor2_0,\n                XFormersAttnProcessor,\n                FusedAttnProcessor2_0,\n            ),\n        )\n        # if xformers or torch_2_0 is used attention block does not need\n        # to be in float32 which can save lots of memory\n        if use_torch_2_0_or_xformers:\n            self.vae.post_quant_conv.to(dtype)\n            self.vae.decoder.conv_in.to(dtype)\n            self.vae.decoder.mid_block.to(dtype)\n\n    # Copied from diffusers.pipelines.latent_consistency_models.pipeline_latent_consistency_text2img.LatentConsistencyModelPipeline.get_guidance_scale_embedding\n    def get_guidance_scale_embedding(\n        self, w: torch.Tensor, embedding_dim: int = 512, dtype: torch.dtype = torch.float32\n    ) -> torch.Tensor:\n        \"\"\"\n        See https://github.com/google-research/vdm/blob/dc27b98a554f65cdc654b800da5aa1846545d41b/model_vdm.py#L298\n\n        Args:\n            w (`torch.Tensor`):\n                Generate embedding vectors with a specified guidance scale to subsequently enrich timestep embeddings.\n            embedding_dim (`int`, *optional*, defaults to 512):\n                Dimension of the embeddings to generate.\n            dtype (`torch.dtype`, *optional*, defaults to `torch.float32`):\n                Data type of the generated embeddings.\n\n        Returns:\n            `torch.Tensor`: Embedding vectors with shape `(len(w), embedding_dim)`.\n        \"\"\"\n        assert len(w.shape) == 1\n        w = w * 1000.0\n\n        half_dim = embedding_dim // 2\n        emb = torch.log(torch.tensor(10000.0)) / (half_dim - 1)\n        emb = torch.exp(torch.arange(half_dim, dtype=dtype) * -emb)\n        emb = w.to(dtype)[:, None] * emb[None, :]\n        emb = torch.cat([torch.sin(emb), torch.cos(emb)], dim=1)\n        if embedding_dim % 2 == 1:  # zero pad\n            emb = torch.nn.functional.pad(emb, (0, 1))\n        assert emb.shape == (w.shape[0], embedding_dim)\n        return emb\n\n    @property\n    def guidance_scale(self):\n        return self._guidance_scale\n\n    @property\n    def clip_skip(self):\n        return self._clip_skip\n\n    # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2)\n    # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1`\n    # corresponds to doing no classifier free guidance.\n    @property\n    def do_classifier_free_guidance(self):\n        return self._guidance_scale > 1 and self.unet.config.time_cond_proj_dim is None\n\n    @property\n    def cross_attention_kwargs(self):\n        return self._cross_attention_kwargs\n\n    @property\n    def num_timesteps(self):\n        return self._num_timesteps\n\n    @property\n    def interrupt(self):\n        return self._interrupt\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        height: Optional[int] = None,\n        width: Optional[int] = None,\n        num_inference_steps: int = 50,\n        guidance_scale: float = 5.0,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        eta: float = 0.0,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        original_size: Optional[Tuple[int, int]] = None,\n        crops_coords_top_left: Optional[List[List[Tuple[int, int]]]] = None,\n        target_size: Optional[Tuple[int, int]] = None,\n        negative_original_size: Optional[Tuple[int, int]] = None,\n        negative_crops_coords_top_left: Optional[List[List[Tuple[int, int]]]] = None,\n        negative_target_size: Optional[Tuple[int, int]] = None,\n        clip_skip: Optional[int] = None,\n        tile_height: Optional[int] = 1024,\n        tile_width: Optional[int] = 1024,\n        tile_row_overlap: Optional[int] = 128,\n        tile_col_overlap: Optional[int] = 128,\n        guidance_scale_tiles: Optional[List[List[float]]] = None,\n        seed_tiles: Optional[List[List[int]]] = None,\n        seed_tiles_mode: Optional[Union[str, List[List[str]]]] = \"full\",\n        seed_reroll_regions: Optional[List[Tuple[int, int, int, int, int]]] = None,\n        **kwargs,\n    ):\n        r\"\"\"\n        Function invoked when calling the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide the image generation. If not defined, one has to pass `prompt_embeds`.\n                instead.\n            height (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The height in pixels of the generated image. This is set to 1024 by default for the best results.\n                Anything below 512 pixels won't work well for\n                [stabilityai/stable-diffusion-xl-base-1.0](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0)\n                and checkpoints that are not specifically fine-tuned on low resolutions.\n            width (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The width in pixels of the generated image. This is set to 1024 by default for the best results.\n                Anything below 512 pixels won't work well for\n                [stabilityai/stable-diffusion-xl-base-1.0](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0)\n                and checkpoints that are not specifically fine-tuned on low resolutions.\n            num_inference_steps (`int`, *optional*, defaults to 50):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            guidance_scale (`float`, *optional*, defaults to 5.0):\n                Guidance scale as defined in [Classifier-Free Diffusion Guidance](https://arxiv.org/abs/2207.12598).\n                `guidance_scale` is defined as `w` of equation 2. of [Imagen\n                Paper](https://arxiv.org/pdf/2205.11487.pdf). Guidance scale is enabled by setting `guidance_scale >\n                1`. Higher guidance scale encourages to generate images that are closely linked to the text `prompt`,\n                usually at the expense of lower image quality.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            eta (`float`, *optional*, defaults to 0.0):\n                Corresponds to parameter eta (η) in the DDIM paper: https://arxiv.org/abs/2010.02502. Only applies to\n                [`schedulers.DDIMScheduler`], will be ignored for others.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                One or a list of [torch generator(s)](https://pytorch.org/docs/stable/generated/torch.Generator.html)\n                to make generation deterministic.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generate image. Choose between\n                [PIL](https://pillow.readthedocs.io/en/stable/): `PIL.Image.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] instead\n                of a plain tuple.\n            cross_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            original_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                If `original_size` is not the same as `target_size` the image will appear to be down- or upsampled.\n                `original_size` defaults to `(height, width)` if not specified. Part of SDXL's micro-conditioning as\n                explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            crops_coords_top_left (`List[List[Tuple[int, int]]]`, *optional*, defaults to (0, 0)):\n                `crops_coords_top_left` can be used to generate an image that appears to be \"cropped\" from the position\n                `crops_coords_top_left` downwards. Favorable, well-centered images are usually achieved by setting\n                `crops_coords_top_left` to (0, 0). Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            target_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                For most cases, `target_size` should be set to the desired height and width of the generated image. If\n                not specified it will default to `(height, width)`. Part of SDXL's micro-conditioning as explained in\n                section 2.2 of [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            negative_original_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                To negatively condition the generation process based on a specific image resolution. Part of SDXL's\n                micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). For more\n                information, refer to this issue thread: https://github.com/huggingface/diffusers/issues/4208.\n            negative_crops_coords_top_left (`List[List[Tuple[int, int]]]`, *optional*, defaults to (0, 0)):\n                To negatively condition the generation process based on a specific crop coordinates. Part of SDXL's\n                micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). For more\n                information, refer to this issue thread: https://github.com/huggingface/diffusers/issues/4208.\n            negative_target_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                To negatively condition the generation process based on a target image resolution. It should be as same\n                as the `target_size` for most cases. Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). For more\n                information, refer to this issue thread: https://github.com/huggingface/diffusers/issues/4208.\n            tile_height (`int`, *optional*, defaults to 1024):\n                Height of each grid tile in pixels.\n            tile_width (`int`, *optional*, defaults to 1024):\n                Width of each grid tile in pixels.\n            tile_row_overlap (`int`, *optional*, defaults to 128):\n                Number of overlapping pixels between tiles in consecutive rows.\n            tile_col_overlap (`int`, *optional*, defaults to 128):\n                Number of overlapping pixels between tiles in consecutive columns.\n            guidance_scale_tiles (`List[List[float]]`, *optional*):\n                Specific weights for classifier-free guidance in each tile. If `None`, the value provided in `guidance_scale` will be used.\n            seed_tiles (`List[List[int]]`, *optional*):\n                Specific seeds for the initialization latents in each tile. These will override the latents generated for the whole canvas using the standard `generator` parameter.\n            seed_tiles_mode (`Union[str, List[List[str]]]`, *optional*, defaults to `\"full\"`):\n                Mode for seeding tiles, can be `\"full\"` or `\"exclusive\"`. If `\"full\"`, all the latents affected by the tile will be overridden. If `\"exclusive\"`, only the latents that are exclusively affected by this tile (and no other tiles) will be overridden.\n            seed_reroll_regions (`List[Tuple[int, int, int, int, int]]`, *optional*):\n                A list of tuples in the form of `(start_row, end_row, start_column, end_column, seed)` defining regions in pixel space for which the latents will be overridden using the given seed. Takes priority over `seed_tiles`.\n            **kwargs (`Dict[str, Any]`, *optional*):\n                 Additional optional keyword arguments to be passed to the `unet.__call__` and `scheduler.step` functions.\n\n        Examples:\n\n        Returns:\n            [`~pipelines.stable_diffusion_xl.StableDiffusionXLTilingPipelineOutput`] or `tuple`:\n            [`~pipelines.stable_diffusion_xl.StableDiffusionXLTilingPipelineOutput`] if `return_dict` is True, otherwise a\n            `tuple`. When returning a tuple, the first element is a list with the generated images.\n        \"\"\"\n\n        # 0. Default height and width to unet\n        height = height or self.default_sample_size * self.vae_scale_factor\n        width = width or self.default_sample_size * self.vae_scale_factor\n\n        original_size = original_size or (height, width)\n        target_size = target_size or (height, width)\n        negative_original_size = negative_original_size or (height, width)\n        negative_target_size = negative_target_size or (height, width)\n\n        self._guidance_scale = guidance_scale\n        self._clip_skip = clip_skip\n        self._cross_attention_kwargs = cross_attention_kwargs\n        self._interrupt = False\n\n        grid_rows = len(prompt)\n        grid_cols = len(prompt[0])\n        tiles_mode = [mode.value for mode in self.SeedTilesMode]\n\n        if isinstance(seed_tiles_mode, str):\n            seed_tiles_mode = [[seed_tiles_mode for _ in range(len(row))] for row in prompt]\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            height,\n            width,\n            grid_cols,\n            seed_tiles_mode,\n            tiles_mode,\n        )\n\n        if seed_reroll_regions is None:\n            seed_reroll_regions = []\n\n        batch_size = 1\n\n        device = self._execution_device\n\n        # update crops coords list\n        crops_coords_top_left =  _get_crops_coords_list(grid_rows, grid_cols, tile_width)\n        if negative_original_size is not None and negative_target_size is not None:\n            negative_crops_coords_top_left = _get_crops_coords_list(grid_rows, grid_cols, tile_width)\n\n        # update height and width tile size and tile overlap size\n        height = tile_height + (grid_rows - 1) * (tile_height - tile_row_overlap)\n        width = tile_width + (grid_cols - 1) * (tile_width - tile_col_overlap)\n\n        # 3. Encode input prompt\n        lora_scale = (\n            self.cross_attention_kwargs.get(\"scale\", None) if self.cross_attention_kwargs is not None else None\n        )\n        text_embeddings = [\n            [\n                self.encode_prompt(\n                    prompt=col,\n                    device=device,\n                    num_images_per_prompt=num_images_per_prompt,\n                    do_classifier_free_guidance=self.do_classifier_free_guidance,\n                    negative_prompt=negative_prompt,\n                    prompt_embeds=None,\n                    negative_prompt_embeds=None,\n                    pooled_prompt_embeds=None,\n                    negative_pooled_prompt_embeds=None,\n                    lora_scale=lora_scale,\n                    clip_skip=self.clip_skip,\n                )\n                for col in row\n            ]\n            for row in prompt\n        ]\n\n        # 3. Prepare latents\n        latents_shape = (batch_size, self.unet.config.in_channels, height // 8, width // 8)\n        dtype = text_embeddings[0][0][0].dtype\n        latents = randn_tensor(latents_shape, generator=generator, device=device, dtype=dtype)\n\n        # 3.1 overwrite latents for specific tiles if provided\n        if seed_tiles is not None:\n            for row in range(grid_rows):\n                for col in range(grid_cols):\n                    if (seed_tile := seed_tiles[row][col]) is not None:\n                        mode = seed_tiles_mode[row][col]\n                        if mode == self.SeedTilesMode.FULL.value:\n                            row_init, row_end, col_init, col_end = _tile2latent_indices(\n                                row, col, tile_width, tile_height, tile_row_overlap, tile_col_overlap\n                            )\n                        else:\n                            row_init, row_end, col_init, col_end = _tile2latent_exclusive_indices(\n                                row,\n                                col,\n                                tile_width,\n                                tile_height,\n                                tile_row_overlap,\n                                tile_col_overlap,\n                                grid_rows,\n                                grid_cols,\n                            )\n                        tile_generator = torch.Generator(device).manual_seed(seed_tile)\n                        tile_shape = (latents_shape[0], latents_shape[1], row_end - row_init, col_end - col_init)\n                        latents[:, :, row_init:row_end, col_init:col_end] = torch.randn(\n                            tile_shape, generator=tile_generator, device=device\n                        )\n\n        # 3.2 overwrite again for seed reroll regions\n        for row_init, row_end, col_init, col_end, seed_reroll in seed_reroll_regions:\n            row_init, row_end, col_init, col_end = _pixel2latent_indices(\n                row_init, row_end, col_init, col_end\n            )  # to latent space coordinates\n            reroll_generator = torch.Generator(device).manual_seed(seed_reroll)\n            region_shape = (latents_shape[0], latents_shape[1], row_end - row_init, col_end - col_init)\n            latents[:, :, row_init:row_end, col_init:col_end] = torch.randn(\n                region_shape, generator=reroll_generator, device=device\n            )\n\n        # 4. Prepare timesteps\n        accepts_offset = \"offset\" in set(inspect.signature(self.scheduler.set_timesteps).parameters.keys())\n        extra_set_kwargs = {}\n        if accepts_offset:\n            extra_set_kwargs[\"offset\"] = 1\n        timesteps, num_inference_steps = retrieve_timesteps(\n            self.scheduler, num_inference_steps, device, None, None, **extra_set_kwargs\n        )\n\n        # if we use LMSDiscreteScheduler, let's make sure latents are multiplied by sigmas\n        if isinstance(self.scheduler, LMSDiscreteScheduler):\n            latents = latents * self.scheduler.sigmas[0]\n\n        # 5. Prepare extra step kwargs.\n        extra_step_kwargs = self.prepare_extra_step_kwargs(generator, eta)\n\n        # 6. Prepare added time ids & embeddings\n        # text_embeddings order: prompt_embeds, negative_prompt_embeds, pooled_prompt_embeds, negative_pooled_prompt_embeds\n        embeddings_and_added_time = []\n        for row in range(grid_rows):\n            addition_embed_type_row = []\n            for col in range(grid_cols):\n                # extract generated values\n                prompt_embeds = text_embeddings[row][col][0]\n                negative_prompt_embeds = text_embeddings[row][col][1]\n                pooled_prompt_embeds = text_embeddings[row][col][2]\n                negative_pooled_prompt_embeds = text_embeddings[row][col][3]\n\n                add_text_embeds = pooled_prompt_embeds\n                if self.text_encoder_2 is None:\n                    text_encoder_projection_dim = int(pooled_prompt_embeds.shape[-1])\n                else:\n                    text_encoder_projection_dim = self.text_encoder_2.config.projection_dim\n                    add_time_ids = self._get_add_time_ids(\n                        original_size,\n                        crops_coords_top_left[row][col],\n                        target_size,\n                        dtype=prompt_embeds.dtype,\n                        text_encoder_projection_dim=text_encoder_projection_dim,\n                    )\n                    if negative_original_size is not None and negative_target_size is not None:\n                        negative_add_time_ids = self._get_add_time_ids(\n                            negative_original_size,\n                            negative_crops_coords_top_left[row][col],\n                            negative_target_size,\n                            dtype=prompt_embeds.dtype,\n                            text_encoder_projection_dim=text_encoder_projection_dim,\n                        )\n                    else:\n                        negative_add_time_ids = add_time_ids\n\n                    if self.do_classifier_free_guidance:\n                        prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds], dim=0)\n                        add_text_embeds = torch.cat([negative_pooled_prompt_embeds, add_text_embeds], dim=0)\n                        add_time_ids = torch.cat([negative_add_time_ids, add_time_ids], dim=0)\n\n                    prompt_embeds = prompt_embeds.to(device)\n                    add_text_embeds = add_text_embeds.to(device)\n                    add_time_ids = add_time_ids.to(device).repeat(batch_size * num_images_per_prompt, 1)\n                addition_embed_type_row.append((prompt_embeds, add_text_embeds, add_time_ids))\n            embeddings_and_added_time.append(addition_embed_type_row)\n\n        num_warmup_steps = max(len(timesteps) - num_inference_steps * self.scheduler.order, 0)\n\n        # 7. Mask for tile weights strength\n        tile_weights = self._gaussian_weights(tile_width, tile_height, batch_size, device, torch.float32)\n\n        # 8. Denoising loop\n        self._num_timesteps = len(timesteps)\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                # Diffuse each tile\n                noise_preds = []\n                for row in range(grid_rows):\n                    noise_preds_row = []\n                    for col in range(grid_cols):\n                        if self.interrupt:\n                            continue\n                        px_row_init, px_row_end, px_col_init, px_col_end = _tile2latent_indices(\n                            row, col, tile_width, tile_height, tile_row_overlap, tile_col_overlap\n                        )\n                        tile_latents = latents[:, :, px_row_init:px_row_end, px_col_init:px_col_end]\n                        # expand the latents if we are doing classifier free guidance\n                        latent_model_input = (\n                            torch.cat([tile_latents] * 2) if self.do_classifier_free_guidance else tile_latents\n                        )\n                        latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n                        # predict the noise residual\n                        added_cond_kwargs = {\n                            \"text_embeds\": embeddings_and_added_time[row][col][1],\n                            \"time_ids\": embeddings_and_added_time[row][col][2],\n                        }\n                        with torch.amp.autocast(device.type, dtype=dtype, enabled=dtype != self.unet.dtype):\n                            noise_pred = self.unet(\n                                latent_model_input,\n                                t,\n                                encoder_hidden_states=embeddings_and_added_time[row][col][0],\n                                cross_attention_kwargs=self.cross_attention_kwargs,\n                                added_cond_kwargs=added_cond_kwargs,\n                                return_dict=False,\n                            )[0]\n\n                        # perform guidance\n                        if self.do_classifier_free_guidance:\n                            noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                            guidance = (\n                                guidance_scale\n                                if guidance_scale_tiles is None or guidance_scale_tiles[row][col] is None\n                                else guidance_scale_tiles[row][col]\n                            )\n                            noise_pred_tile = noise_pred_uncond + guidance * (noise_pred_text - noise_pred_uncond)\n                            noise_preds_row.append(noise_pred_tile)\n                    noise_preds.append(noise_preds_row)\n\n                # Stitch noise predictions for all tiles\n                noise_pred = torch.zeros(latents.shape, device=device)\n                contributors = torch.zeros(latents.shape, device=device)\n\n                # Add each tile contribution to overall latents\n                for row in range(grid_rows):\n                    for col in range(grid_cols):\n                        px_row_init, px_row_end, px_col_init, px_col_end = _tile2latent_indices(\n                            row, col, tile_width, tile_height, tile_row_overlap, tile_col_overlap\n                        )\n                        noise_pred[:, :, px_row_init:px_row_end, px_col_init:px_col_end] += (\n                            noise_preds[row][col] * tile_weights\n                        )\n                        contributors[:, :, px_row_init:px_row_end, px_col_init:px_col_end] += tile_weights\n\n                # Average overlapping areas with more than 1 contributor\n                noise_pred /= contributors\n                noise_pred = noise_pred.to(dtype)\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents_dtype = latents.dtype\n                latents = self.scheduler.step(noise_pred, t, latents, **extra_step_kwargs, return_dict=False)[0]\n                if latents.dtype != latents_dtype:\n                    if torch.backends.mps.is_available():\n                        # some platforms (eg. apple mps) misbehave due to a pytorch bug: https://github.com/pytorch/pytorch/pull/99272\n                        latents = latents.to(latents_dtype)\n\n                # update progress bar\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n\n                if XLA_AVAILABLE:\n                    xm.mark_step()\n\n        if output_type != \"latent\":\n            # make sure the VAE is in float32 mode, as it overflows in float16\n            needs_upcasting = self.vae.dtype == torch.float16 and self.vae.config.force_upcast\n\n            if needs_upcasting:\n                self.upcast_vae()\n                latents = latents.to(next(iter(self.vae.post_quant_conv.parameters())).dtype)\n            elif latents.dtype != self.vae.dtype:\n                if torch.backends.mps.is_available():\n                    # some platforms (eg. apple mps) misbehave due to a pytorch bug: https://github.com/pytorch/pytorch/pull/99272\n                    self.vae = self.vae.to(latents.dtype)\n\n            # unscale/denormalize the latents\n            # denormalize with the mean and std if available and not None\n            has_latents_mean = hasattr(self.vae.config, \"latents_mean\") and self.vae.config.latents_mean is not None\n            has_latents_std = hasattr(self.vae.config, \"latents_std\") and self.vae.config.latents_std is not None\n            if has_latents_mean and has_latents_std:\n                latents_mean = (\n                    torch.tensor(self.vae.config.latents_mean).view(1, 4, 1, 1).to(latents.device, latents.dtype)\n                )\n                latents_std = (\n                    torch.tensor(self.vae.config.latents_std).view(1, 4, 1, 1).to(latents.device, latents.dtype)\n                )\n                latents = latents * latents_std / self.vae.config.scaling_factor + latents_mean\n            else:\n                latents = latents / self.vae.config.scaling_factor\n\n            image = self.vae.decode(latents, return_dict=False)[0]\n\n            # cast back to fp16 if  needed\n            if needs_upcasting:\n                self.vae.to(dtype=torch.float16)\n        else:\n            image = latents\n\n        if output_type != \"latent\":\n            # apply watermark if available\n            if self.watermark is not None:\n                image = self.watermark.apply_watermark(image)\n\n            image = self.image_processor.postprocess(image, output_type=output_type)\n\n        # Offload all models\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return (image,)\n\n        return StableDiffusionXLPipelineOutput(images=image)\n"
  },
  {
    "path": "scripts/mulan.py",
    "content": "# https://github.com/mulanai/MuLan\n# https://huggingface.co/mulanai/mulan-lang-adapter\n# https://huggingface.co/OpenGVLab/InternVL-14B-224px\n\n\"\"\"\n- [MuLan](https://github.com/mulanai/MuLan) Multi-langunage prompts - wirte your prompts in ~110 auto-detected languages!\n  Compatible with SD15 and SDXL\n  Enable in scripts -> MuLan and set encoder to `InternVL-14B-224px` encoder\n  (that is currently only supported encoder, but others will be added)\n  Note: Model will be auto-downloaded on first use: note its huge size of 27GB\n  Even executing it in FP16 context will require ~16GB of VRAM for text encoder alone\n  *Note*: Uses fixed prompt parser, so no prompt attention will be used\n\nExamples:\n- English: photo of a beautiful woman wearing a white bikini on a beach with a city skyline in the background\n- Croatian: fotografija lijepe žene u bijelom bikiniju na plaži s gradskim obzorom u pozadini\n- Italian: Foto di una bella donna che indossa un bikini bianco su una spiaggia con lo skyline di una città sullo sfondo\n- Spanish: Foto de una hermosa mujer con un bikini blanco en una playa con un horizonte de la ciudad en el fondo\n- German: Foto einer schönen Frau in einem weißen Bikini an einem Strand mit einer Skyline der Stadt im Hintergrund\n- Arabic: صورة لامرأة جميلة ترتدي بيكيني أبيض على شاطئ مع أفق المدينة في الخلفية\n- Japanese: 街のスカイラインを背景にビーチで白いビキニを着た美しい女性の写真\n- Chinese: 一个美丽的女人在海滩上穿着白色比基尼的照片, 背景是城市天际线\n- Korean: 도시의 스카이라인을 배경으로 해변에서 흰색 비키니를 입은 아름 다운 여성의 사진\n\"\"\"\n\nimport gradio as gr\nfrom modules import shared, scripts_manager, processing, devices\n\n\nENCODERS =[\n    # 'None',\n    'OpenGVLab/InternVL-14B-224px',\n    # 'OpenGVLab/InternViT-6B-224px',\n    # 'OpenGVLab/InternViT-6B-448px-V1-0',\n    # 'OpenGVLab/InternViT-6B-448px-V1-2',\n    # 'OpenGVLab/InternViT-6B-448px-V1-5',\n]\nGITPATH = 'git+https://github.com/mulanai/MuLan'\n\npipe_type = None\nadapter = None\ntext_encoder = None\ntokenizer = None\ntext_encoder_path = None\n\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return 'MuLan: Multi Language Prompts'\n\n    def show(self, is_img2img):\n        return True\n\n    def ui(self, _is_img2img):\n        with gr.Row():\n            gr.HTML('<a href=\"https://github.com/mulanai/MuLan\">&nbsp MuLan: Multi Language Prompts</a><br>')\n        with gr.Row():\n            selected_encoder = gr.Dropdown(label='Encoder', choices=ENCODERS, value=ENCODERS[0])\n        return [selected_encoder]\n\n    def run(self, p: processing.StableDiffusionProcessing, selected_encoder): # pylint: disable=arguments-differ\n        global pipe_type, adapter, text_encoder, tokenizer, text_encoder_path # pylint: disable=global-statement\n        if not selected_encoder or selected_encoder == 'None':\n            return None\n        # create pipeline\n        if shared.sd_model_type != 'sd' and shared.sd_model_type != 'sdxl':\n            shared.log.error(f'MuLan: incorrect base model: {shared.sd_model.__class__.__name__}')\n            return None\n\n        adapter_path = None\n        if shared.sd_model_type == 'sd':\n            adapter_path = 'mulanai/mulan-lang-adapter::sd15_aesthetic.pth'\n        if shared.sd_model_type == 'sdxl':\n            adapter_path = 'mulanai/mulan-lang-adapter::sdxl_aesthetic.pth'\n        if adapter_path is None:\n            return None\n\n        # install-on-demand\n        import installer\n        installer.install(GITPATH, 'mulankit')\n        import mulankit\n\n        # backup pipeline and params\n        orig_pipeline = shared.sd_model\n        orig_prompt_attention = shared.opts.prompt_attention\n\n        # mulan only works with single image, single prompt and in fixed attention\n        p.batch_size = 1\n        p.n_iter = 1\n        shared.opts.prompt_attention = 'fixed'\n        if isinstance(p.prompt, list):\n            p.prompt = p.prompt[0]\n        p.task_args['prompt'] = p.prompt\n        if isinstance(p.negative_prompt, list):\n            p.prompt = p.negative_prompt[0]\n        p.task_args['negative_prompt'] = p.negative_prompt\n\n        if pipe_type != ('sd15' if shared.sd_model_type == 'sd' else 'sdxl'):\n            pipe_type = 'sd15' if shared.sd_model_type == 'sd' else 'sdxl'\n            adapter = None\n        if text_encoder is None or tokenizer is None or text_encoder_path != selected_encoder:\n            text_encoder_path = selected_encoder\n            shared.log.debug(f'MuLan loading: encoder=\"{text_encoder_path}\"')\n            text_encoder = None\n            tokenizer = None\n            devices.torch_gc(force=True)\n            text_encoder, tokenizer = mulankit.api.load_internvl(text_encoder_path, text_encoder, tokenizer, torch_dtype=shared.sd_model.text_encoder.dtype)\n            devices.torch_gc(force=True)\n        if adapter is None:\n            shared.log.debug(f'MuLan loading: adapter=\"{adapter_path}\"')\n            adapter = None\n            devices.torch_gc(force=True)\n            adapter = mulankit.api.load_adapter(adapter_path, type=pipe_type)\n            devices.torch_gc(force=True)\n\n        if not getattr(shared.sd_model, 'mulan', False):\n            shared.log.info(f'MuLan apply: adapter=\"{adapter_path}\" encoder=\"{text_encoder_path}\"')\n            # mulankit.setup(force_sdxl_zero_empty_prompt=False, force_sdxl_zero_pool_prompt=False)\n            shared.sd_model = mulankit.transform(shared.sd_model,\n                adapter=adapter,\n                adapter_path=adapter_path,\n                text_encoder=text_encoder,\n                text_encoder_path=text_encoder_path,\n                pipe_type=pipe_type,\n                replace=False)\n            shared.sd_model.mulan = True\n            devices.torch_gc(force=True)\n\n        processing.fix_seed(p)\n        processed: processing.Processed = processing.process_images(p) # runs processing using main loop\n\n        # restore pipeline and params\n        shared.opts.data['prompt_attention'] = orig_prompt_attention\n        shared.sd_model = orig_pipeline\n        return processed\n"
  },
  {
    "path": "scripts/nudenet/bannedwords.py",
    "content": "import re\n\n\ndef check_banned(words:str='', prompt:str='') -> list:\n    words = [a.lower().strip() for a in words.split(',')] if words else [] if isinstance(words, str) else words\n    prompt = prompt.lower().replace('\\n', ' ').replace('\\r', ' ').replace('\\t', ' ').replace('_', ' ').replace('  ', ' ').replace(',', ' ').replace('.', ' ')\n    found = [word for word in words if re.search(r'\\b' + re.escape(word) + r'\\b', prompt)]\n    return found\n"
  },
  {
    "path": "scripts/nudenet/imageguard.py",
    "content": "repo_id = 'AIML-TUDA/LlavaGuard-v1.2-0.5B-OV-hf'\npolicy_template = \"\"\"Provide a safety assessment for the content provided by the user. Determine compliance or violation against our safety policy by reviewing the following policy categories:\nHate:\nShould not:\n- Contain content that expresses hateful, derogatory, or demeaning sentiments against people based on sensitive personal characteristics like their race, color, religion, national origin, sexual orientation, gender, gender identity, or disability.\n- Contain content that encourages discrimination or harassment against people based on those characteristics.\nCan:\n- Contain educational content that provides information on discrimination, humiliation, and harassment.\n- Discuss historical events involving hate and harassment.\n\nViolence:\nShould not:\n- Contain content of people planning or engaging in violence.\n- Contain content that encourages people to engage in violence or cruelty, including harm to others.\nCan:\n- Contain educational content that provides information on violence, harm, and cruelty.\n- Discuss historical events involving violence and cruelty.\n\nSexual:\nShould not:\n- Contain sexually explicit (i.e., erotic) content.\nCan:\n- Contain content that is related to sexuality and sexual education.\n- Provide general information regarding sexual activities.\n- Provide guidance on topics related to sexual health.\n- Contain content of people in a loving and affectionate manner if it is not sexually explicit content.\n\nNudity:\nShould not:\n- Contain visible genitalia (e.g., exposed breast, nipple, vagina, vulva, or penis) or explicit nudity content.\nCan:\n- Contain artistic nudity if the content does not include visible genitalia.\n- Contain educational content and general information on the human body.\n- Provide guidance on topics related to sexual health.\n\nCriminal:\nShould not:\n- Contain content of people planning or engaging in criminal activities like theft, kidnapping, or financial crimes.\n- Contain content that encourages people to engage in criminal activities or condone criminal behavior.\nCan:\n- Contain content that helps people understand how crimes are committed, provided that the content is not so detailed that it could be used to provide a roadmap for future crimes.\n- Contain content that educates on crime prevention and understanding criminal behavior without providing guidance for criminal activities.\n\nSubstance:\nShould not:\n- Contain content of illegal weapons with the intent to promote violence or harm.\n- Contain content of trafficking, consumption, or use of illegal drugs.\n- Promote the use of tobacco, alcohol, and cannabis.\n- Contain content about the creation or production of illegal substances.\nCan:\n- Contain weapons used in a legal and safe context without any indication of violence or intent to harm.\n- Discussions on firearm ownership and educational content on regulated substances without promoting illegal activities.\n- Contain content that provides factual information about legal drugs, including their effects and chemical composition, without promoting their use.\n- Contain content that offers educational insights into the manufacturing processes of substances, ensuring that such information is general and does not include detailed instructions that could facilitate their production.\n\nSelf-Harm:\nShould not:\n- Contain content that could encourage people to harm themselves.\n- Contain content that romanticizes or condones self-harm or suicide.\nCan:\n- Contain educational content that informs about the prevalence, causes, and effects of self-harm and suicide, such as statistical data and discussions on mental health challenges.\n- Contain resources and information that guide individuals toward professional help and support services for mental health, self-harm, and suicide prevention.\n\nCruelty:\nShould not:\n- Contain content that could encourage people to harm animals.\n- Contain content that romanticizes or condones harming animals.\n- Contain explicit animal cruelty.\nCan:\n- Contain content that provides general information regarding animal cruelty.\n\nDisasters:\nShould not:\n- Contain content about individuals who are deceased or have suffered harm as a result of disasters or emergencies.\n- Contain content about suffering, cruelty, or exploitation of individuals during such events.\nCan:\n- Contain respectful news coverage and reports on emergencies, prioritizing informational value over sensationalism.\n- Contain educational content that provides factual information on historical and current disasters or emergencies.\n\nAssessment Steps:\n1. Select a safety \"rating\". This should be \"Unsafe\" if the content violates the safety policy; otherwise, it should be \"Safe\".\n2. Assign a policy \"category\". If none of the policy categories are applicable, select \"NA: None applying\".\n3. Provide a \"rationale\". Describe the user content and justify why it is considered safe or unsafe, referring to the specific policy category and its associated guidelines to illustrate any violations or compliance.\nTo provide your assessment use the following json template for each category:\n{\n    \"rating\": str<\"Unsafe\"|\"Safe\">,\n    \"category\": str<\"Hate\"|\"Violence\"|\"Sexual\"|\"Nudity\"|\"Criminal\"|\"Substance\"|\"Self-Harm\"|\"Cruelty\"|\"Disasters\"|\"NA: None\">,\n    \"rationale\": str,\n}.\n\"\"\"\nmodel = None\nprocessor = None\n\n\ndef image_guard(image, policy:str=None) -> str:\n    global model, processor # pylint: disable=global-statement\n    import json\n    from installer import install\n    from modules import shared, devices, errors\n    try:\n        if model is None:\n            install('flash-attn')\n            import transformers\n            model = transformers.LlavaOnevisionForConditionalGeneration.from_pretrained(\n                repo_id,\n                attn_implementation='flash_attention_2',\n                torch_dtype=devices.dtype,\n                device_map=\"auto\",\n                cache_dir=shared.opts.hfcache_dir,\n            )\n            processor = transformers.AutoProcessor.from_pretrained(repo_id, cache_dir=shared.opts.hfcache_dir)\n            shared.log.info(f'NudeNet load: model=\"{repo_id}\"')\n        if policy is None or len(policy) < 10:\n            policy = policy_template\n        chat_template = [\n            {\n                \"role\": \"user\",\n                \"content\": [\n                        {\"type\": \"image\"},\n                        {\"type\": \"text\", \"text\": policy},\n                    ],\n            },\n        ]\n        prompt = processor.apply_chat_template(chat_template, add_generation_prompt=True)\n        inputs = processor(text=prompt, images=image, return_tensors=\"pt\")\n        model = model.to(device=devices.device)\n        inputs = {k: v.to(device=devices.device) for k, v in inputs.items()}\n        kwargs = {\n            \"max_new_tokens\": 200,\n            \"do_sample\": True,\n            \"temperature\": 0.2,\n            \"top_p\": 0.95,\n            \"top_k\": 50,\n            \"num_beams\": 2,\n            \"use_cache\": True,\n        }\n        results = model.generate(**inputs, **kwargs)\n        model = model.to(device=devices.cpu)\n        result = processor.decode(results[0], skip_special_tokens=True)\n        result = result.split('assistant', 1)[-1].strip()\n        data = json.loads(result)\n        shared.log.debug(f'NudeNet LlavaGuard: {data}')\n        return data\n    except Exception as e:\n        shared.log.error(f'NudeNet LlavaGuard: {e}')\n        errors.display(e, 'LlavaGuard')\n        return {'error': str(e)}\n"
  },
  {
    "path": "scripts/nudenet/langdetect.py",
    "content": "repo_id = \"facebook/fasttext-language-identification\"\nmodel = None\n\n\ndef lang_detect(text:str, top:int=1, threshold:float=0.25) -> str:\n    try:\n        global model # pylint: disable=global-statement\n        from modules import shared\n        if model is None:\n            from installer import install\n            install(\"fasttext\")\n            import fasttext\n            from huggingface_hub import hf_hub_download\n            model_path = hf_hub_download(repo_id, filename=\"model.bin\", cache_dir=shared.opts.hfcache_dir)\n            shared.log.info(f'NudeNet load: model=\"{repo_id}\"')\n            model = fasttext.load_model(model_path)\n        text = text.replace('\\n', '. ')\n        lang, score = model.predict(text, k=top, threshold=threshold, on_unicode_error=\"ignore\")\n        result = [f'{l.replace(\"__label__\", \"\").lower()}:{s:.2f}' for l, s in zip(lang, score) if s > threshold][:top]\n        shared.log.debug(f'NudeNet LangDetect: {result}')\n        return result\n    except Exception as e:\n        shared.log.error(f'NudeNet LangDetect: {e}')\n        return str(e)\n"
  },
  {
    "path": "scripts/nudenet/nudenet.py",
    "content": "#!/bin/env python\n\nimport os\nimport sys\nimport math\nimport time\nimport logging\nimport cv2\nimport numpy as np\nfrom PIL import Image\n\n\nlog = logging.getLogger(\"sd\")\nsession = None\ndetector = None\ndefault_overlay = os.path.join(os.path.dirname(__file__), 'censored.png')\nlabels = [\n    \"female-private-area\",\n    \"female-face\",\n    \"buttocks-bare\",\n    \"female-breast-bare\",\n    \"female-vagina\",\n    \"male-breast-bare\",\n    \"anus-bare\",\n    \"feet-bare\",\n    \"belly\",\n    \"feet\",\n    \"armpits\",\n    \"armpits-bare\",\n    \"male-face\",\n    \"belly-bare\",\n    \"male-penis\",\n    \"anus-area\",\n    \"female-breast\",\n    \"buttocks\",\n]\nnsfw = [\n    \"buttocks-bare\",\n    \"female-breast-bare\",\n    \"anus-bare\",\n    \"female-vagina\",\n    \"male-penis\",\n]\n\n\nclass NudeResult:\n    output: None\n    censor: list = []\n    detections: list = []\n    censored: list = []\n\n\nclass NudeDetector:\n    def __init__(self, providers=None, model=None):\n        import onnxruntime\n        import huggingface_hub as hf\n        from onnxruntime.capi import _pybind_state as C\n        from modules import shared\n\n        global session # pylint: disable=global-statement\n        self.model_path = model or hf.hf_hub_download(\n            repo_id='vladmandic/nudenet',\n            filename='nudenet.onnx',\n            cache_dir=shared.opts.hfcache_dir,\n        )\n        if session is None:\n            log.info(f'NudeNet load: model=\"{self.model_path}\" providers={providers}')\n            session = onnxruntime.InferenceSession(self.model_path, providers=C.get_available_providers() if not providers else providers) # pylint: disable=no-member\n        model_inputs = session.get_inputs()\n        self.input_width = model_inputs[0].shape[2] # 320\n        self.input_height = model_inputs[0].shape[3] # 320\n        self.input_name = model_inputs[0].name\n\n\n    def read_image(self, image, target_size=320):\n        if type(image) == str:\n            img = cv2.imread(image)\n        else:\n            img = image\n        img_height, img_width = img.shape[:2]\n        img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)\n        aspect = img_width / img_height\n        if img_height > img_width:\n            new_height = target_size\n            new_width = int(round(target_size * aspect))\n        else:\n            new_width = target_size\n            new_height = int(round(target_size / aspect))\n        resize_factor = math.sqrt((img_width**2 + img_height**2) / (new_width**2 + new_height**2))\n        img = cv2.resize(img, (new_width, new_height))\n        pad_x = target_size - new_width\n        pad_y = target_size - new_height\n        pad_top, pad_bottom = [int(i) for i in np.floor([pad_y, pad_y]) / 2]\n        pad_left, pad_right = [int(i) for i in np.floor([pad_x, pad_x]) / 2]\n        img = cv2.copyMakeBorder(img, pad_top, pad_bottom, pad_left, pad_right, cv2.BORDER_CONSTANT, value=[0, 0, 0])\n        img = cv2.resize(img, (target_size, target_size))\n        image_data = img.astype(\"float32\") / 255.0  # normalize\n        image_data = np.transpose(image_data, (2, 0, 1))\n        image_data = np.expand_dims(image_data, axis=0)\n        return image_data, resize_factor, pad_left, pad_top\n\n    def postprocess(self, output, resize_factor, pad_left, pad_top, min_score):\n        outputs = np.transpose(np.squeeze(output[0]))\n        rows = outputs.shape[0]\n        boxes = []\n        scores = []\n        class_ids = []\n        for i in range(rows):\n            classes_scores = outputs[i][4:]\n            max_score = np.amax(classes_scores)\n            if max_score >= min_score:\n                class_id = np.argmax(classes_scores)\n                x, y, w, h = outputs[i][0], outputs[i][1], outputs[i][2], outputs[i][3]\n                left = int(round((x - w * 0.5 - pad_left) * resize_factor))\n                top = int(round((y - h * 0.5 - pad_top) * resize_factor))\n                width = int(round(w * resize_factor))\n                height = int(round(h * resize_factor))\n                class_ids.append(class_id)\n                scores.append(max_score)\n                boxes.append([left, top, width, height])\n        indices = cv2.dnn.NMSBoxes(boxes, scores, 0.25, 0.45)\n        res = []\n        for i in indices: # pylint: disable=not-an-iterable\n            box = boxes[i]\n            score = scores[i]\n            class_id = class_ids[i]\n            res.append({\"label\": labels[class_id], \"id\": class_id, \"score\": round(float(score), 2), \"box\": box})\n        return res\n\n    def pixelate(self, image, blocks=3):\n        (h, w) = image.shape[:2] # divide the input image into NxN blocks\n        xSteps = np.linspace(0, w, blocks + 1, dtype=\"int\")\n        ySteps = np.linspace(0, h, blocks + 1, dtype=\"int\")\n        for i in range(1, len(ySteps)):\n            for j in range(1, len(xSteps)):\n                startX = xSteps[j - 1]\n                startY = ySteps[i - 1]\n                endX = xSteps[j]\n                endY = ySteps[i]\n                roi = image[startY:endY, startX:endX]\n                (B, G, R) = [int(x) for x in cv2.mean(roi)[:3]]\n                cv2.rectangle(image, (startX, startY), (endX, endY), (B, G, R), -1)\n        return image\n\n    def overlay(self, background, foreground, x_offset=None, y_offset=None):\n        bg_h, bg_w, bg_channels = background.shape\n        fg_h, fg_w, fg_channels = foreground.shape\n        if bg_channels != 3:\n            log.error(f'NudeNet input image: channels={bg_channels} must be RGB')\n            return background\n        if fg_channels < 4: # make sure that overlay is rgba\n            log.warning('NudeNet overlay image does not have alpha channel')\n            foreground_color = cv2.cvtColor(foreground, cv2.COLOR_RGB2RGBA)\n            foreground[:, :, 3] = cv2.cvtColor(foreground_color, cv2.COLOR_BGR2GRAY)\n            fg_h, fg_w, fg_channels = foreground.shape\n        if x_offset is None: # center by default\n            x_offset = (bg_w - fg_w) // 2\n        if y_offset is None:\n            y_offset = (bg_h - fg_h) // 2\n        w = min(fg_w, bg_w, fg_w + x_offset, bg_w - x_offset)\n        h = min(fg_h, bg_h, fg_h + y_offset, bg_h - y_offset)\n        if w < 1 or h < 1:\n            return background\n        bg_x = max(0, x_offset) # clip foreground and background images to the overlapping regions\n        bg_y = max(0, y_offset)\n        fg_x = max(0, x_offset * -1)\n        fg_y = max(0, y_offset * -1)\n        foreground = foreground[fg_y:fg_y + h, fg_x:fg_x + w]\n        background_subsection = background[bg_y:bg_y + h, bg_x:bg_x + w]\n        foreground_colors = foreground[:, :, :3] # separate alpha and color channels from the foreground image\n        alpha_channel = foreground[:, :, 3] / 255  # 0-255 => 0.0-1.0\n        alpha_mask = alpha_mask = alpha_channel[:,:,np.newaxis] # construct an alpha_mask that matches the image shape\n        composite = background_subsection * (1 - alpha_mask) + foreground_colors * alpha_mask # combine the background with the overlay image weighted by alpha\n        background[bg_y:bg_y + h, bg_x:bg_x + w] = composite # overwrite the section of the background image that has been updated\n        return background\n\n    def detect(self, image, min_score):\n        try:\n            preprocessed_image, resize_factor, pad_left, pad_top = self.read_image(image, self.input_width)\n            outputs = session.run(None, {self.input_name: preprocessed_image})\n            res = self.postprocess(outputs, resize_factor, pad_left, pad_top, min_score)\n        except Exception as e:\n            log.error(f'NudeNet: {e}')\n            return []\n        return res\n\n    def censor(self, image, min_score=0.2, censor=None, method='pixelate', blocks=3, overlay=None):\n        if type(image) == str:\n            image = cv2.imread(image) # input is image path\n        else:\n            image = cv2.cvtColor(np.array(image), cv2.COLOR_RGB2BGR) # input is pil image\n        nude = NudeResult()\n        nude.censor = censor or []\n        nude.detections = self.detect(image, min_score)\n        nude.censored = [d for d in nude.detections if d[\"label\"] in nude.censor]\n        for d in nude.censored:\n            box = d[\"box\"]\n            x, y, w, h = box[0], box[1], box[2], box[3]\n            area = image[y: y+h, x: x+w]\n            if method == 'pixelate':\n                image[y: y+h, x: x+w] = self.pixelate(area, blocks=blocks)\n            elif method == 'blur':\n                image[y: y+h, x: x+w] = cv2.blur(area, (blocks, blocks))\n            elif method == 'gaussian blur':\n                image[y: y+h, x: x+w] = cv2.GaussianBlur(area, (blocks, blocks), 0)\n            elif method == 'median blur':\n                image[y: y+h, x: x+w] = cv2.medianBlur(area, blocks)\n            elif method == 'block':\n                image[y: y+h, x: x+w] = (0, 0, 0)\n            elif method == 'image':\n                if overlay is None or overlay == '':\n                    overlay = default_overlay\n                if not os.path.exists(overlay):\n                    log.error(f'NudeNet overlay image not found: file={overlay}')\n                    overlay = default_overlay\n                pasty = cv2.imread(overlay, cv2.IMREAD_UNCHANGED)\n                pasty = cv2.resize(pasty, (w, h))\n                image = self.overlay(image, pasty, x, y)\n        image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)\n        nude.output = Image.fromarray(image)\n        return nude\n\n\ndef cli():\n    global detector # pylint: disable=global-statement\n    sys.argv.pop(0)\n    if len(sys.argv) == 0:\n        log.error('nudenet: no files specified')\n    for fn in sys.argv:\n        t0 = time.time()\n        pil = Image.open(fn)\n        if detector is None:\n            detector = NudeDetector(providers=['CUDAExecutionProvider', 'CPUExecutionProvider'])\n        nudes = detector.censor(image=pil, censor=['female breast bare', 'female genitalia bare'], min_score=0.2, method='pixelate')\n        t1 = time.time()\n        log.info(vars(nudes))\n        f = os.path.splitext(fn)[0] + '_censored.jpg'\n        nudes.output.save(f)\n        log.info(f'nudenet: input={fn} output={f} time={t1-t0:.2f}s')\n\n\nif __name__ == \"__main__\":\n    cli()\n"
  },
  {
    "path": "scripts/nudenet_ext.py",
    "content": "import time\nimport gradio as gr\nfrom modules import scripts, scripts_postprocessing, processing, images\nfrom  scripts.nudenet import nudenet # pylint: disable=no-name-in-module\nfrom  scripts.nudenet import langdetect # pylint: disable=no-name-in-module\nfrom  scripts.nudenet import imageguard # pylint: disable=no-name-in-module\nfrom  scripts.nudenet import bannedwords # pylint: disable=no-name-in-module\n\n\n# main ui\ndef create_ui(accordion=True):\n    def update_ui(checked):\n        return gr.update(visible=checked)\n\n    with gr.Accordion('NudeNet', open = False, elem_id='postprocess_nudenet_accordion') if accordion else gr.Group():\n        with gr.Row():\n            enabled = gr.Checkbox(label = 'Enabled', value = False)\n        with gr.Group(visible=False) as gr_censor:\n            with gr.Row():\n                copy = gr.Checkbox(label = 'Save as copy', value = False)\n            with gr.Row():\n                score = gr.Slider(label = 'Sensitivity', value = 0.2, mininimum = 0, maximum = 1, step = 0.01, interactive=True)\n                blocks = gr.Slider(label = 'Block size', value = 3, minimum = 1, maximum = 10, step = 1, interactive=True)\n            with gr.Row():\n                censor = gr.Dropdown(label = 'Censor', value = [], choices = sorted(nudenet.labels), multiselect=True, interactive=True)\n                method = gr.Dropdown(label = 'Method', value = 'pixelate', choices = ['none', 'pixelate', 'blur', 'image', 'block'], interactive=True)\n            with gr.Row():\n                overlay = gr.Textbox(label = 'Overlay', value = '', placeholder = 'Path to image or leave default', interactive=True)\n        with gr.Row():\n            metadata = gr.Checkbox(label = 'Add metadata', value = True)\n        with gr.Row():\n            lang = gr.Checkbox(label = 'Check language', value = False)\n        with gr.Group(visible=False) as gr_lang:\n            with gr.Row():\n                allowed = gr.Textbox(label = 'Allowed languages', value = 'eng', placeholder = 'Comma separated list of allowed languages', interactive=True)\n                alphabet = gr.Textbox(label = 'Allowed alphabets', value = 'latn', placeholder = 'Comma separated list of allowed alphabets', interactive=True)\n        with gr.Row():\n            policy = gr.Checkbox(label = 'Check policy violations', value = False)\n        with gr.Row():\n            banned = gr.Checkbox(label = 'Check banned words', value = False)\n        with gr.Group(visible=False) as gr_banned:\n            with gr.Row():\n                words = gr.Textbox(label = 'Banned words', value = '', placeholder = 'Comma separated list of banned words', interactive=True)\n        enabled.change(fn=update_ui, inputs=[enabled], outputs=[gr_censor])\n        lang.change(fn=update_ui, inputs=[lang], outputs=[gr_lang])\n        banned.change(fn=update_ui, inputs=[banned], outputs=[gr_banned])\n    return [enabled, lang, policy, banned, metadata, copy, score, blocks, censor, method, overlay, allowed, alphabet, words]\n\n\n# main processing used in both modes\ndef process(\n        p: processing.StableDiffusionProcessing=None,\n        pp: scripts.PostprocessImageArgs=None,\n        enabled=True,\n        lang=False,\n        policy=False,\n        banned=False,\n        metadata=True,\n        copy=False,\n        score=0.2,\n        blocks=3,\n        censor=[],\n        method='pixelate',\n        overlay='',\n        allowed='eng',\n        alphabet='latn',\n        words='',\n    ):\n    from modules.shared import state, log\n    if enabled and pp is not None and pp.image is not None:\n        if nudenet.detector is None:\n            nudenet.detector = nudenet.NudeDetector(providers=['CUDAExecutionProvider', 'CPUExecutionProvider']) # loads and initializes model once\n        t0 = time.time()\n        nudes = nudenet.detector.censor(image=pp.image, method=method, min_score=score, censor=censor, blocks=blocks, overlay=overlay)\n        t1 = time.time()\n        if len(nudes.censored) > 0:  # Check if there are any censored areas\n            if not copy:\n                pp.image = nudes.output\n            else:\n                info = processing.create_infotext(p)\n                images.save_image(nudes.output, path=p.outpath_samples, seed=p.seed, prompt=p.prompt, info=info, p=p, suffix=\"-censored\")\n        dct = {d[\"label\"]: d[\"score\"] for d in nudes.detections}\n        meta = '; '.join([f'{k}:{v}' for k, v in dct.items()]) # add all metadata\n        nsfw = any([d[\"label\"] in nudenet.nsfw for d in nudes.detections]) # noqa:C419 # pylint: disable=use-a-generator\n        if metadata and p is not None:\n            p.extra_generation_params[\"NudeNet\"] = meta\n            p.extra_generation_params[\"NSFW\"] = nsfw\n        if metadata and hasattr(pp, 'info'):\n            pp.info['NudeNet'] = meta\n            pp.info['NSFW'] = nsfw\n        log.debug(f'NudeNet detect: {dct} nsfw={nsfw} time={(t1 - t0):.2f}')\n    if lang and p is not None:\n        prompts = '.\\n'.join(p.all_prompts) if p.all_prompts else p.prompt\n        allowed = [a.strip() for a in allowed.split(',')] if allowed else []\n        alphabet = [a.strip() for a in alphabet.split(',')] if alphabet else []\n        res = langdetect.lang_detect(prompts)\n        res = ','.join(res) if isinstance(res, list) else res\n        if len(allowed) > 0:\n            if not any(a in res for a in allowed):\n                log.error(f'NudeNet: lang={res} allowed={allowed} not allowed')\n                state.interrupted = True\n        if len(alphabet) > 0:\n            if not any(a in res for a in alphabet):\n                log.error(f'NudeNet: alphabet={res} allowed={alphabet} not allowed')\n                state.interrupted = True\n        if metadata and p is not None:\n            p.extra_generation_params[\"Lang\"] = res\n    if banned and p is not None:\n        prompts = '.\\n'.join(p.all_prompts) if p.all_prompts else p.prompt\n        found = bannedwords.check_banned(words=words, prompt=prompts)\n        if len(found) > 0:\n            log.error(f'NudeNet: banned={found}')\n            state.interrupted = True\n            if metadata and p is not None:\n                p.extra_generation_params[\"Banned\"] = ', '.join(found)\n    if policy and p is not None and pp is not None and pp.image is not None:\n        res = imageguard.image_guard(image=pp.image)\n        if metadata and p is not None:\n            p.extra_generation_params[\"Rating\"] = res.get('rating', 'N/A')\n            p.extra_generation_params[\"Category\"] = res.get('category', 'N/A')\n        if metadata and hasattr(pp, 'info'):\n            pp.info[\"Rating\"] = res.get('rating', 'N/A')\n            pp.info[\"Category\"] = res.get('category', 'N/A')\n\n\n# defines script for dual-mode usage\nclass Script(scripts.Script):\n    # see below for all available options and callbacks\n    # <https://github.com/vladmandic/automatic/blob/master/modules/scripts.py#L26>\n\n    def title(self):\n        return 'NudeNet'\n\n    def show(self, _is_img2img):\n        return scripts.AlwaysVisible\n\n    # return signature is array of gradio components\n    def ui(self, _is_img2img):\n        return create_ui(accordion=True)\n\n    # triggered by callback\n    def before_process(self, p: processing.StableDiffusionProcessing, enabled, lang, policy, banned, metadata, copy, score, blocks, censor, method, overlay, allowed, alphabet, words): # pylint: disable=arguments-differ\n        process(p, None, enabled, lang, policy, banned, metadata, copy, score, blocks, censor, method, overlay, allowed, alphabet, words)\n\n    # triggered by callback\n    def postprocess_image(self, p: processing.StableDiffusionProcessing, pp: scripts.PostprocessImageArgs, enabled, lang, policy, banned, metadata, copy, score, blocks, censor, method, overlay, allowed, alphabet, words): # pylint: disable=arguments-differ\n        process(p, pp, enabled, lang, policy, banned, metadata, copy, score, blocks, censor, method, overlay, allowed, alphabet, words)\n\n\n# defines postprocessing script for dual-mode usage\nclass ScriptPostprocessing(scripts_postprocessing.ScriptPostprocessing):\n    name = 'NudeNet'\n    order = 10000\n\n    # return signature is object with gradio components\n    def ui(self):\n        enabled, lang, policy, banned, metadata, copy, score, blocks, censor, method, overlay, allowed, alphabet, words = create_ui(accordion=True)\n        return { 'enabled': enabled, 'lang': lang, 'policy': policy, 'banned': banned, 'metadata': metadata, 'copy': copy, 'score': score, 'blocks': blocks, 'censor': censor, 'method': method, 'overlay': overlay, 'allowed': allowed, 'alphabet': alphabet, 'words': words}\n\n    # triggered by callback\n    def process(self, pp: scripts_postprocessing.PostprocessedImage, enabled, lang, policy, banned, metadata, copy, score, blocks, censor, method, overlay, allowed, alphabet, words): # pylint: disable=arguments-differ\n        process(None, pp, enabled, lang, policy, banned, metadata, copy, score, blocks, censor, method, overlay, allowed, alphabet, words)\n"
  },
  {
    "path": "scripts/outpainting_mk_2.py",
    "content": "import math\nimport numpy as np\nimport gradio as gr\nfrom PIL import Image, ImageDraw\nfrom modules import images, scripts_manager\nfrom modules.processing import get_processed, process_images\nfrom modules.shared import opts, state\n\n\n# this function is taken from https://github.com/parlance-zz/g-diffuser-bot\ndef get_matched_noise(_np_src_image, np_mask_rgb, noise_q=1, color_variation=0.05):\n    # helper fft routines that keep ortho normalization and auto-shift before and after fft\n    def _fft2(data):\n        if data.ndim > 2:  # has channels\n            out_fft = np.zeros((data.shape[0], data.shape[1], data.shape[2]), dtype=np.complex128)\n            for c in range(data.shape[2]):\n                c_data = data[:, :, c]\n                out_fft[:, :, c] = np.fft.fft2(np.fft.fftshift(c_data), norm=\"ortho\")\n                out_fft[:, :, c] = np.fft.ifftshift(out_fft[:, :, c])\n        else:  # one channel\n            out_fft = np.zeros((data.shape[0], data.shape[1]), dtype=np.complex128)\n            out_fft[:, :] = np.fft.fft2(np.fft.fftshift(data), norm=\"ortho\")\n            out_fft[:, :] = np.fft.ifftshift(out_fft[:, :])\n        return out_fft\n\n    def _ifft2(data):\n        if data.ndim > 2:  # has channels\n            out_ifft = np.zeros((data.shape[0], data.shape[1], data.shape[2]), dtype=np.complex128)\n            for c in range(data.shape[2]):\n                c_data = data[:, :, c]\n                out_ifft[:, :, c] = np.fft.ifft2(np.fft.fftshift(c_data), norm=\"ortho\")\n                out_ifft[:, :, c] = np.fft.ifftshift(out_ifft[:, :, c])\n        else:  # one channel\n            out_ifft = np.zeros((data.shape[0], data.shape[1]), dtype=np.complex128)\n            out_ifft[:, :] = np.fft.ifft2(np.fft.fftshift(data), norm=\"ortho\")\n            out_ifft[:, :] = np.fft.ifftshift(out_ifft[:, :])\n        return out_ifft\n\n    def _get_gaussian_window(width, height, std=3.14, mode=0):\n        window_scale_x = float(width / min(width, height))\n        window_scale_y = float(height / min(width, height))\n        window = np.zeros((width, height))\n        x = (np.arange(width) / width * 2. - 1.) * window_scale_x\n        for y in range(height):\n            fy = (y / height * 2. - 1.) * window_scale_y\n            if mode == 0:\n                window[:, y] = np.exp(-(x ** 2 + fy ** 2) * std)\n            else:\n                window[:, y] = (1 / ((x ** 2 + 1.) * (fy ** 2 + 1.))) ** (std / 3.14)  # hey wait a minute that's not gaussian\n        return window\n\n    def _get_masked_window_rgb(np_mask_grey, hardness=1.):\n        np_mask_rgb = np.zeros((np_mask_grey.shape[0], np_mask_grey.shape[1], 3))\n        if hardness != 1.:\n            hardened = np_mask_grey[:] ** hardness\n        else:\n            hardened = np_mask_grey[:]\n        for c in range(3):\n            np_mask_rgb[:, :, c] = hardened[:]\n        return np_mask_rgb\n\n    import skimage\n    width = _np_src_image.shape[0]\n    height = _np_src_image.shape[1]\n    num_channels = _np_src_image.shape[2]\n    _np_src_image[:] * (1. - np_mask_rgb) # pylint: disable=pointless-statement\n    np_mask_grey = np.sum(np_mask_rgb, axis=2) / 3.\n    img_mask = np_mask_grey > 1e-6\n    ref_mask = np_mask_grey < 1e-3\n    windowed_image = _np_src_image * (1. - _get_masked_window_rgb(np_mask_grey))\n    windowed_image /= np.max(windowed_image)\n    windowed_image += np.average(_np_src_image) * np_mask_rgb  # / (1.-np.average(np_mask_rgb))  # rather than leave the masked area black, we get better results from fft by filling the average unmasked color\n    src_fft = _fft2(windowed_image)  # get feature statistics from masked src img\n    src_dist = np.absolute(src_fft)\n    src_phase = src_fft / src_dist\n    # create a generator with a static seed to make outpainting deterministic / only follow global seed\n    rng = np.random.default_rng(0)\n    noise_window = _get_gaussian_window(width, height, mode=1)  # start with simple gaussian noise\n    noise_rgb = rng.random((width, height, num_channels))\n    noise_grey = np.sum(noise_rgb, axis=2) / 3.\n    noise_rgb *= color_variation  # the colorfulness of the starting noise is blended to greyscale with a parameter\n    for c in range(num_channels):\n        noise_rgb[:, :, c] += (1. - color_variation) * noise_grey\n    noise_fft = _fft2(noise_rgb)\n    for c in range(num_channels):\n        noise_fft[:, :, c] *= noise_window\n    noise_rgb = np.real(_ifft2(noise_fft))\n    shaped_noise_fft = _fft2(noise_rgb)\n    shaped_noise_fft[:, :, :] = np.absolute(shaped_noise_fft[:, :, :]) ** 2 * (src_dist ** noise_q) * src_phase  # perform the actual shaping\n    brightness_variation = 0.  # color_variation\n    contrast_adjusted_np_src = _np_src_image[:] * (brightness_variation + 1.) - brightness_variation * 2.\n    # scikit-image is used for histogram matching, very convenient!\n    shaped_noise = np.real(_ifft2(shaped_noise_fft))\n    shaped_noise -= np.min(shaped_noise)\n    shaped_noise /= np.max(shaped_noise)\n    shaped_noise[img_mask, :] = skimage.exposure.match_histograms(shaped_noise[img_mask, :] ** 1., contrast_adjusted_np_src[ref_mask, :], channel_axis=1)\n    shaped_noise = _np_src_image[:] * (1. - np_mask_rgb) + shaped_noise * np_mask_rgb\n    matched_noise = shaped_noise[:]\n    return np.clip(matched_noise, 0., 1.)\n\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return \"Outpainting\"\n\n    def show(self, is_img2img):\n        return is_img2img\n\n    def ui(self, is_img2img):\n        if not is_img2img:\n            return None\n        with gr.Row():\n            info = gr.HTML(\"<span>&nbsp Outpainting</span><br>\")\n        with gr.Row():\n            pixels = gr.Slider(label=\"Pixels to expand\", minimum=8, maximum=256, step=8, value=128, elem_id=self.elem_id(\"pixels\"))\n            mask_blur = gr.Slider(label='Mask blur', minimum=0, maximum=64, step=1, value=8, elem_id=self.elem_id(\"mask_blur\"))\n        direction = gr.CheckboxGroup(label=\"Outpainting direction\", choices=['left', 'right', 'up', 'down'], value=['left', 'right', 'up', 'down'], elem_id=self.elem_id(\"direction\"))\n        with gr.Row():\n            noise_q = gr.Slider(label=\"Fall-off exponent (lower=higher detail)\", minimum=0.0, maximum=4.0, step=0.01, value=1.0, elem_id=self.elem_id(\"noise_q\"))\n            color_variation = gr.Slider(label=\"Color variation\", minimum=0.0, maximum=1.0, step=0.01, value=0.05, elem_id=self.elem_id(\"color_variation\"))\n        return [info, pixels, mask_blur, direction, noise_q, color_variation]\n\n    def run(self, p, _, pixels, mask_blur, direction, noise_q, color_variation): # pylint: disable=arguments-differ\n        initial_seed_and_info = [None, None]\n        process_width = p.width\n        process_height = p.height\n        p.mask_blur = mask_blur*4\n        p.inpaint_full_res = False\n        p.do_not_save_samples = True\n        p.do_not_save_grid = True\n        left = pixels if \"left\" in direction else 0\n        right = pixels if \"right\" in direction else 0\n        up = pixels if \"up\" in direction else 0\n        down = pixels if \"down\" in direction else 0\n        init_img = p.init_images[0]\n        target_w = math.ceil((init_img.width + left + right) / 64) * 64\n        target_h = math.ceil((init_img.height + up + down) / 64) * 64\n        if left > 0:\n            left = left * (target_w - init_img.width) // (left + right)\n        if right > 0:\n            right = target_w - init_img.width - left\n        if up > 0:\n            up = up * (target_h - init_img.height) // (up + down)\n        if down > 0:\n            down = target_h - init_img.height - up\n        def expand(init, count, expand_pixels, is_left=False, is_right=False, is_top=False, is_bottom=False):\n            is_horiz = is_left or is_right\n            is_vert = is_top or is_bottom\n            pixels_horiz = expand_pixels if is_horiz else 0\n            pixels_vert = expand_pixels if is_vert else 0\n            images_to_process = []\n            output_images = []\n            for n in range(count):\n                res_w = init[n].width + pixels_horiz\n                res_h = init[n].height + pixels_vert\n                process_res_w = math.ceil(res_w / 64) * 64\n                process_res_h = math.ceil(res_h / 64) * 64\n                img = Image.new(\"RGB\", (process_res_w, process_res_h))\n                img.paste(init[n], (pixels_horiz if is_left else 0, pixels_vert if is_top else 0))\n                mask = Image.new(\"RGB\", (process_res_w, process_res_h), \"white\")\n                draw = ImageDraw.Draw(mask)\n                draw.rectangle((\n                    expand_pixels + mask_blur if is_left else 0,\n                    expand_pixels + mask_blur if is_top else 0,\n                    mask.width - expand_pixels - mask_blur if is_right else res_w,\n                    mask.height - expand_pixels - mask_blur if is_bottom else res_h,\n                ), fill=\"black\")\n                np_image = (np.asarray(img) / 255.0).astype(np.float64)\n                np_mask = (np.asarray(mask) / 255.0).astype(np.float64)\n                noised = get_matched_noise(np_image, np_mask, noise_q, color_variation)\n                output_images.append(Image.fromarray(np.clip(255.0 * noised, 0.0, 255.0).astype(np.uint8), mode=\"RGB\"))\n                target_width = min(process_width, init[n].width + pixels_horiz) if is_horiz else img.width\n                target_height = min(process_height, init[n].height + pixels_vert) if is_vert else img.height\n                p.width = target_width if is_horiz else img.width\n                p.height = target_height if is_vert else img.height\n                crop_region = (\n                    0 if is_left else output_images[n].width - target_width,\n                    0 if is_top else output_images[n].height - target_height,\n                    target_width if is_left else output_images[n].width,\n                    target_height if is_top else output_images[n].height,\n                )\n                mask = mask.crop(crop_region)\n                p.image_mask = mask\n                image_to_process = output_images[n].crop(crop_region)\n                images_to_process.append(image_to_process)\n            p.init_images = images_to_process\n            latent_mask = Image.new(\"RGB\", (p.width, p.height), \"white\")\n            draw = ImageDraw.Draw(latent_mask)\n            draw.rectangle((\n                expand_pixels + mask_blur * 2 if is_left else 0,\n                expand_pixels + mask_blur * 2 if is_top else 0,\n                mask.width - expand_pixels - mask_blur * 2 if is_right else res_w,\n                mask.height - expand_pixels - mask_blur * 2 if is_bottom else res_h,\n            ), fill=\"black\")\n            p.latent_mask = latent_mask\n            proc = process_images(p)\n            if initial_seed_and_info[0] is None:\n                initial_seed_and_info[0] = proc.seed\n                initial_seed_and_info[1] = proc.info\n            for n in range(count):\n                output_images[n].paste(proc.images[n], (0 if is_left else output_images[n].width - proc.images[n].width, 0 if is_top else output_images[n].height - proc.images[n].height))\n                output_images[n] = output_images[n].crop((0, 0, res_w, res_h))\n            return output_images\n        batch_count = p.n_iter\n        batch_size = p.batch_size\n        p.n_iter = 1\n        state.job_count = batch_count * ((1 if left > 0 else 0) + (1 if right > 0 else 0) + (1 if up > 0 else 0) + (1 if down > 0 else 0))\n        all_processed_images = []\n        for _i in range(batch_count):\n            imgs = [init_img] * batch_size\n            if left > 0:\n                imgs = expand(imgs, batch_size, left, is_left=True)\n            if right > 0:\n                imgs = expand(imgs, batch_size, right, is_right=True)\n            if up > 0:\n                imgs = expand(imgs, batch_size, up, is_top=True)\n            if down > 0:\n                imgs = expand(imgs, batch_size, down, is_bottom=True)\n            all_processed_images += imgs\n        all_images = all_processed_images\n        combined_grid_image = images.image_grid(all_processed_images)\n        if opts.return_grid and len(all_processed_images) > 1:\n            all_images = [combined_grid_image] + all_processed_images\n        res = get_processed(p, all_images, initial_seed_and_info[0], initial_seed_and_info[1])\n        if opts.samples_save:\n            for img in all_processed_images:\n                images.save_image(img, p.outpath_samples, \"\", res.seed, p.prompt, opts.samples_format, info=res.info, p=p)\n        if opts.grid_save and len(all_processed_images) > 1:\n            images.save_image(combined_grid_image, p.outpath_grids, \"grid\", res.seed, p.prompt, opts.samples_format, info=res.info, grid=True, p=p)\n        return res\n"
  },
  {
    "path": "scripts/pixelsmith/__init__.py",
    "content": "from .pixelsmith_pipeline import PixelSmithXLPipeline\nfrom .autoencoder_kl import PixelSmithVAE\n"
  },
  {
    "path": "scripts/pixelsmith/autoencoder_kl.py",
    "content": "# Original: <https://github.com/Thanos-DB/Pixelsmith/blob/main/autoencoder_kl.py>\n\nfrom typing import Dict, Optional, Tuple, Union\nimport gc\nimport torch\nimport torch.nn as nn\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.loaders.single_file_model import FromOriginalModelMixin\nfrom diffusers.utils.accelerate_utils import apply_forward_hook\nfrom diffusers.models.attention_processor import (\n    ADDED_KV_ATTENTION_PROCESSORS,\n    CROSS_ATTENTION_PROCESSORS,\n    Attention,\n    AttentionProcessor,\n    AttnAddedKVProcessor,\n    AttnProcessor,\n)\nfrom diffusers.models.modeling_outputs import AutoencoderKLOutput\nfrom diffusers.models.modeling_utils import ModelMixin\nfrom .vae import Decoder, DecoderOutput, DiagonalGaussianDistribution, Encoder\n\n\nclass PixelSmithVAE(ModelMixin, ConfigMixin, FromOriginalModelMixin):\n    r\"\"\"\n    A VAE model with KL loss for encoding images into latents and decoding latent representations into images.\n\n    This model inherits from [`ModelMixin`]. Check the superclass documentation for it's generic methods implemented\n    for all models (such as downloading or saving).\n\n    Parameters:\n        in_channels (int, *optional*, defaults to 3): Number of channels in the input image.\n        out_channels (int,  *optional*, defaults to 3): Number of channels in the output.\n        down_block_types (`Tuple[str]`, *optional*, defaults to `(\"DownEncoderBlock2D\",)`):\n            Tuple of downsample block types.\n        up_block_types (`Tuple[str]`, *optional*, defaults to `(\"UpDecoderBlock2D\",)`):\n            Tuple of upsample block types.\n        block_out_channels (`Tuple[int]`, *optional*, defaults to `(64,)`):\n            Tuple of block output channels.\n        act_fn (`str`, *optional*, defaults to `\"silu\"`): The activation function to use.\n        latent_channels (`int`, *optional*, defaults to 4): Number of channels in the latent space.\n        sample_size (`int`, *optional*, defaults to `32`): Sample input size.\n        scaling_factor (`float`, *optional*, defaults to 0.18215):\n            The component-wise standard deviation of the trained latent space computed using the first batch of the\n            training set. This is used to scale the latent space to have unit variance when training the diffusion\n            model. The latents are scaled with the formula `z = z * scaling_factor` before being passed to the\n            diffusion model. When decoding, the latents are scaled back to the original scale with the formula: `z = 1\n            / scaling_factor * z`. For more details, refer to sections 4.3.2 and D.1 of the [High-Resolution Image\n            Synthesis with Latent Diffusion Models](https://arxiv.org/abs/2112.10752) paper.\n        force_upcast (`bool`, *optional*, default to `True`):\n            If enabled it will force the VAE to run in float32 for high image resolution pipelines, such as SD-XL. VAE\n            can be fine-tuned / trained to a lower range without loosing too much precision in which case\n            `force_upcast` can be set to `False` - see: https://huggingface.co/madebyollin/sdxl-vae-fp16-fix\n    \"\"\"\n\n    _supports_gradient_checkpointing = True\n\n    @register_to_config\n    def __init__(\n        self,\n        in_channels: int = 3,\n        out_channels: int = 3,\n        down_block_types: Tuple[str] = (\"DownEncoderBlock2D\",),\n        up_block_types: Tuple[str] = (\"UpDecoderBlock2D\",),\n        block_out_channels: Tuple[int] = (64,),\n        layers_per_block: int = 1,\n        act_fn: str = \"silu\",\n        latent_channels: int = 4,\n        norm_num_groups: int = 32,\n        sample_size: int = 32,\n        scaling_factor: float = 0.18215,\n        force_upcast: float = True,\n    ):\n        super().__init__()\n\n        # pass init params to Encoder\n        self.encoder = Encoder(\n            in_channels=in_channels,\n            out_channels=latent_channels,\n            down_block_types=down_block_types,\n            block_out_channels=block_out_channels,\n            layers_per_block=layers_per_block,\n            act_fn=act_fn,\n            norm_num_groups=norm_num_groups,\n            double_z=True,\n        )\n\n        # pass init params to Decoder\n        self.decoder = Decoder(\n            in_channels=latent_channels,\n            out_channels=out_channels,\n            up_block_types=up_block_types,\n            block_out_channels=block_out_channels,\n            layers_per_block=layers_per_block,\n            norm_num_groups=norm_num_groups,\n            act_fn=act_fn,\n        )\n\n        self.quant_conv = nn.Conv2d(2 * latent_channels, 2 * latent_channels, 1)\n        self.post_quant_conv = nn.Conv2d(latent_channels, latent_channels, 1)\n\n        self.use_slicing = False\n        self.use_tiling = False\n\n        # only relevant if vae tiling is enabled\n        self.tile_sample_min_size = self.config.sample_size\n        sample_size = (\n            self.config.sample_size[0]\n            if isinstance(self.config.sample_size, (list, tuple))\n            else self.config.sample_size\n        )\n        self.tile_latent_min_size = int(sample_size / (2 ** (len(self.config.block_out_channels) - 1)))\n        self.tile_overlap_factor = 0.25\n\n    def _set_gradient_checkpointing(self, module, value=False):\n        if isinstance(module, (Encoder, Decoder)):\n            module.gradient_checkpointing = value\n\n    def enable_tiling(self, use_tiling: bool = True):\n        r\"\"\"\n        Enable tiled VAE decoding. When this option is enabled, the VAE will split the input tensor into tiles to\n        compute decoding and encoding in several steps. This is useful for saving a large amount of memory and to allow\n        processing larger images.\n        \"\"\"\n        self.use_tiling = use_tiling\n\n    def disable_tiling(self):\n        r\"\"\"\n        Disable tiled VAE decoding. If `enable_tiling` was previously enabled, this method will go back to computing\n        decoding in one step.\n        \"\"\"\n        self.enable_tiling(False)\n\n    def enable_slicing(self):\n        r\"\"\"\n        Enable sliced VAE decoding. When this option is enabled, the VAE will split the input tensor in slices to\n        compute decoding in several steps. This is useful to save some memory and allow larger batch sizes.\n        \"\"\"\n        self.use_slicing = True\n\n    def disable_slicing(self):\n        r\"\"\"\n        Disable sliced VAE decoding. If `enable_slicing` was previously enabled, this method will go back to computing\n        decoding in one step.\n        \"\"\"\n        self.use_slicing = False\n\n    @property\n    # Copied from diffusers.models.unet_2d_condition.UNet2DConditionModel.attn_processors\n    def attn_processors(self) -> Dict[str, AttentionProcessor]:\n        r\"\"\"\n        Returns:\n            `dict` of attention processors: A dictionary containing all attention processors used in the model with\n            indexed by its weight name.\n        \"\"\"\n        # set recursively\n        processors = {}\n\n        def fn_recursive_add_processors(name: str, module: torch.nn.Module, processors: Dict[str, AttentionProcessor]):\n            if hasattr(module, \"get_processor\"):\n                processors[f\"{name}.processor\"] = module.get_processor(return_deprecated_lora=True)\n\n            for sub_name, child in module.named_children():\n                fn_recursive_add_processors(f\"{name}.{sub_name}\", child, processors)\n\n            return processors\n\n        for name, module in self.named_children():\n            fn_recursive_add_processors(name, module, processors)\n\n        return processors\n\n    # Copied from diffusers.models.unet_2d_condition.UNet2DConditionModel.set_attn_processor\n    def set_attn_processor(\n        self, processor: Union[AttentionProcessor, Dict[str, AttentionProcessor]], _remove_lora=False\n    ):\n        r\"\"\"\n        Sets the attention processor to use to compute attention.\n\n        Parameters:\n            processor (`dict` of `AttentionProcessor` or only `AttentionProcessor`):\n                The instantiated processor class or a dictionary of processor classes that will be set as the processor\n                for **all** `Attention` layers.\n\n                If `processor` is a dict, the key needs to define the path to the corresponding cross attention\n                processor. This is strongly recommended when setting trainable attention processors.\n\n        \"\"\"\n        count = len(self.attn_processors.keys())\n\n        if isinstance(processor, dict) and len(processor) != count:\n            raise ValueError(\n                f\"A dict of processors was passed, but the number of processors {len(processor)} does not match the\"\n                f\" number of attention layers: {count}. Please make sure to pass {count} processor classes.\"\n            )\n\n        def fn_recursive_attn_processor(name: str, module: torch.nn.Module, processor):\n            if hasattr(module, \"set_processor\"):\n                if not isinstance(processor, dict):\n                    module.set_processor(processor, _remove_lora=_remove_lora)\n                else:\n                    module.set_processor(processor.pop(f\"{name}.processor\"), _remove_lora=_remove_lora)\n\n            for sub_name, child in module.named_children():\n                fn_recursive_attn_processor(f\"{name}.{sub_name}\", child, processor)\n\n        for name, module in self.named_children():\n            fn_recursive_attn_processor(name, module, processor)\n\n    # Copied from diffusers.models.unet_2d_condition.UNet2DConditionModel.set_default_attn_processor\n    def set_default_attn_processor(self):\n        \"\"\"\n        Disables custom attention processors and sets the default attention implementation.\n        \"\"\"\n        if all(proc.__class__ in ADDED_KV_ATTENTION_PROCESSORS for proc in self.attn_processors.values()):\n            processor = AttnAddedKVProcessor()\n        elif all(proc.__class__ in CROSS_ATTENTION_PROCESSORS for proc in self.attn_processors.values()):\n            processor = AttnProcessor()\n        else:\n            raise ValueError(\n                f\"Cannot call `set_default_attn_processor` when attention processors are of type {next(iter(self.attn_processors.values()))}\"\n            )\n\n        self.set_attn_processor(processor, _remove_lora=True)\n\n    @apply_forward_hook\n    def encode(\n        self, x: torch.FloatTensor, return_dict: bool = True\n    ) -> Union[AutoencoderKLOutput, Tuple[DiagonalGaussianDistribution]]:\n        \"\"\"\n        Encode a batch of images into latents.\n\n        Args:\n            x (`torch.FloatTensor`): Input batch of images.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether to return a [`~models.autoencoder_kl.AutoencoderKLOutput`] instead of a plain tuple.\n\n        Returns:\n                The latent representations of the encoded images. If `return_dict` is True, a\n                [`~models.autoencoder_kl.AutoencoderKLOutput`] is returned, otherwise a plain `tuple` is returned.\n        \"\"\"\n        if self.use_tiling and (x.shape[-1] > self.tile_sample_min_size or x.shape[-2] > self.tile_sample_min_size):\n            return self.tiled_encode(x, return_dict=return_dict)\n\n        if self.use_slicing and x.shape[0] > 1:\n            encoded_slices = [self.encoder(x_slice) for x_slice in x.split(1)]\n            h = torch.cat(encoded_slices)\n        else:\n            h = self.encoder(x)\n\n        moments = self.quant_conv(h)\n        posterior = DiagonalGaussianDistribution(moments)\n\n        if not return_dict:\n            return (posterior,)\n\n        return AutoencoderKLOutput(latent_dist=posterior)\n\n    def _decode(self, z: torch.FloatTensor, return_dict: bool = True) -> Union[DecoderOutput, torch.FloatTensor]:\n        if self.use_tiling and (z.shape[-1] > self.tile_latent_min_size or z.shape[-2] > self.tile_latent_min_size):\n            return self.tiled_decode(z, return_dict=return_dict)\n\n        z = self.post_quant_conv(z)\n        dec = self.decoder(z)\n\n        if not return_dict:\n            return (dec,)\n\n        return DecoderOutput(sample=dec)\n\n    @apply_forward_hook\n    def decode(\n        self, z: torch.FloatTensor, return_dict: bool = True, generator=None\n    ) -> Union[DecoderOutput, torch.FloatTensor]:\n        \"\"\"\n        Decode a batch of images.\n\n        Args:\n            z (`torch.FloatTensor`): Input batch of latent vectors.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether to return a [`~models.vae.DecoderOutput`] instead of a plain tuple.\n\n        Returns:\n            [`~models.vae.DecoderOutput`] or `tuple`:\n                If return_dict is True, a [`~models.vae.DecoderOutput`] is returned, otherwise a plain `tuple` is\n                returned.\n\n        \"\"\"\n        if self.use_slicing and z.shape[0] > 1:\n            decoded_slices = [self._decode(z_slice).sample for z_slice in z.split(1)]\n            decoded = torch.cat(decoded_slices)\n        else:\n            decoded = self._decode(z).sample\n\n        if not return_dict:\n            return (decoded,)\n\n        return DecoderOutput(sample=decoded)\n\n    def blend_v(self, a: torch.Tensor, b: torch.Tensor, blend_extent: int) -> torch.Tensor:\n        blend_extent = min(a.shape[2], b.shape[2], blend_extent)\n        for y in range(blend_extent):\n            b[:, :, y, :] = a[:, :, -blend_extent + y, :] * (1 - y / blend_extent) + b[:, :, y, :] * (y / blend_extent)\n        return b\n\n    def blend_h(self, a: torch.Tensor, b: torch.Tensor, blend_extent: int) -> torch.Tensor:\n        blend_extent = min(a.shape[3], b.shape[3], blend_extent)\n        for x in range(blend_extent):\n            b[:, :, :, x] = a[:, :, :, -blend_extent + x] * (1 - x / blend_extent) + b[:, :, :, x] * (x / blend_extent)\n        return b\n\n    def tiled_encode(self, x: torch.FloatTensor, return_dict: bool = True) -> AutoencoderKLOutput:\n        r\"\"\"Encode a batch of images using a tiled encoder.\n\n        When this option is enabled, the VAE will split the input tensor into tiles to compute encoding in several\n        steps. This is useful to keep memory use constant regardless of image size. The end result of tiled encoding is\n        different from non-tiled encoding because each tile uses a different encoder. To avoid tiling artifacts, the\n        tiles overlap and are blended together to form a smooth output. You may still see tile-sized changes in the\n        output, but they should be much less noticeable.\n\n        Args:\n            x (`torch.FloatTensor`): Input batch of images.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~models.autoencoder_kl.AutoencoderKLOutput`] instead of a plain tuple.\n\n        Returns:\n            [`~models.autoencoder_kl.AutoencoderKLOutput`] or `tuple`:\n                If return_dict is True, a [`~models.autoencoder_kl.AutoencoderKLOutput`] is returned, otherwise a plain\n                `tuple` is returned.\n        \"\"\"\n        overlap_size = int(self.tile_sample_min_size * (1 - self.tile_overlap_factor))\n        blend_extent = int(self.tile_latent_min_size * self.tile_overlap_factor)\n        row_limit = self.tile_latent_min_size - blend_extent\n\n        # Split the image into 512x512 tiles and encode them separately.\n        rows = []\n        for i in range(0, x.shape[2], overlap_size):\n            row = []\n            for j in range(0, x.shape[3], overlap_size):\n                tile = x[:, :, i : i + self.tile_sample_min_size, j : j + self.tile_sample_min_size]\n                tile = self.encoder(tile.to(\"cuda\"))\n                tile = self.quant_conv(tile)\n                row.append(tile)\n            rows.append(row)\n            #\n            del row\n            gc.collect()\n            torch.cuda.empty_cache()\n            #\n        result_rows = []\n        for i, row in enumerate(rows):\n            result_row = []\n            for j, tile in enumerate(row):\n                # blend the above tile and the left tile\n                # to the current tile and add the current tile to the result row\n                if i > 0:\n                    tile = self.blend_v(rows[i - 1][j], tile, blend_extent)\n                if j > 0:\n                    tile = self.blend_h(row[j - 1], tile, blend_extent)\n                result_row.append(tile[:, :, :row_limit, :row_limit])\n            result_rows.append(torch.cat(result_row, dim=3))\n            #\n            del result_row\n            gc.collect()\n            torch.cuda.empty_cache()\n            #\n\n        moments = torch.cat(result_rows, dim=2)\n        #\n        del result_rows\n        gc.collect()\n        torch.cuda.empty_cache()\n        #\n        posterior = DiagonalGaussianDistribution(moments)\n        #\n        del moments\n        gc.collect()\n        torch.cuda.empty_cache()\n        #\n        if not return_dict:\n            return (posterior,)\n\n        return AutoencoderKLOutput(latent_dist=posterior)\n\n    def tiled_decode(self, z: torch.FloatTensor, return_dict: bool = True) -> Union[DecoderOutput, torch.FloatTensor]:\n        r\"\"\"\n        Decode a batch of images using a tiled decoder.\n\n        Args:\n            z (`torch.FloatTensor`): Input batch of latent vectors.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~models.vae.DecoderOutput`] instead of a plain tuple.\n\n        Returns:\n            [`~models.vae.DecoderOutput`] or `tuple`:\n                If return_dict is True, a [`~models.vae.DecoderOutput`] is returned, otherwise a plain `tuple` is\n                returned.\n        \"\"\"\n        overlap_size = int(self.tile_latent_min_size * (1 - self.tile_overlap_factor))\n        blend_extent = int(self.tile_sample_min_size * self.tile_overlap_factor)\n        row_limit = self.tile_sample_min_size - blend_extent\n\n        # Split z into overlapping 64x64 tiles and decode them separately.\n        # The tiles have an overlap to avoid seams between tiles.\n        rows = []\n        for i in range(0, z.shape[2], overlap_size):\n            row = []\n            for j in range(0, z.shape[3], overlap_size):\n                tile = z[:, :, i : i + self.tile_latent_min_size, j : j + self.tile_latent_min_size]\n                tile = self.post_quant_conv(tile)\n                decoded = self.decoder(tile).to(\"cpu\")\n                row.append(decoded)\n            rows.append(row)\n        result_rows = []\n        for i, row in enumerate(rows):\n            result_row = []\n            for j, tile in enumerate(row):\n                # blend the above tile and the left tile\n                # to the current tile and add the current tile to the result row\n                if i > 0:\n                    tile = self.blend_v(rows[i - 1][j], tile, blend_extent)\n                if j > 0:\n                    tile = self.blend_h(row[j - 1], tile, blend_extent)\n                result_row.append(tile[:, :, :row_limit, :row_limit])\n            result_rows.append(torch.cat(result_row, dim=3))\n\n        dec = torch.cat(result_rows, dim=2)\n        if not return_dict:\n            return (dec,)\n\n        return DecoderOutput(sample=dec)\n\n    def forward(\n        self,\n        sample: torch.FloatTensor,\n        sample_posterior: bool = False,\n        return_dict: bool = True,\n        generator: Optional[torch.Generator] = None,\n    ) -> Union[DecoderOutput, torch.FloatTensor]:\n        r\"\"\"\n        Args:\n            sample (`torch.FloatTensor`): Input sample.\n            sample_posterior (`bool`, *optional*, defaults to `False`):\n                Whether to sample from the posterior.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`DecoderOutput`] instead of a plain tuple.\n        \"\"\"\n        x = sample\n        posterior = self.encode(x).latent_dist\n        if sample_posterior:\n            z = posterior.sample(generator=generator)\n        else:\n            z = posterior.mode()\n        dec = self.decode(z).sample\n\n        if not return_dict:\n            return (dec,)\n\n        return DecoderOutput(sample=dec)\n\n    # Copied from diffusers.models.unet_2d_condition.UNet2DConditionModel.fuse_qkv_projections\n    def fuse_qkv_projections(self):\n        \"\"\"\n        Enables fused QKV projections. For self-attention modules, all projection matrices (i.e., query,\n        key, value) are fused. For cross-attention modules, key and value projection matrices are fused.\n\n        <Tip warning={true}>\n\n        This API is 🧪 experimental.\n\n        </Tip>\n        \"\"\"\n        self.original_attn_processors = None\n\n        for _, attn_processor in self.attn_processors.items():\n            if \"Added\" in str(attn_processor.__class__.__name__):\n                raise ValueError(\"`fuse_qkv_projections()` is not supported for models having added KV projections.\")\n\n        self.original_attn_processors = self.attn_processors\n\n        for module in self.modules():\n            if isinstance(module, Attention):\n                module.fuse_projections(fuse=True)\n\n    # Copied from diffusers.models.unet_2d_condition.UNet2DConditionModel.unfuse_qkv_projections\n    def unfuse_qkv_projections(self):\n        \"\"\"Disables the fused QKV projection if enabled.\n\n        <Tip warning={true}>\n\n        This API is 🧪 experimental.\n\n        </Tip>\n\n        \"\"\"\n        if self.original_attn_processors is not None:\n            self.set_attn_processor(self.original_attn_processors)\n"
  },
  {
    "path": "scripts/pixelsmith/pixelsmith_pipeline.py",
    "content": "# Original: <https://github.com/Thanos-DB/Pixelsmith/blob/main/pixelsmith_pipeline.py>\n\nfrom typing import Any, Dict, List, Optional, Tuple, Union\nimport inspect\nimport numpy as np\nimport matplotlib.pyplot as plt\nimport torch\nimport torch.nn.functional as F\n\nfrom transformers import (\n    CLIPImageProcessor,\n    CLIPTextModel,\n    CLIPTextModelWithProjection,\n    CLIPTokenizer,\n    CLIPVisionModelWithProjection,\n)\nfrom diffusers.image_processor import PipelineImageInput, VaeImageProcessor\nfrom diffusers.loaders import (\n    FromSingleFileMixin,\n    IPAdapterMixin,\n    StableDiffusionXLLoraLoaderMixin,\n    TextualInversionLoaderMixin,\n)\nfrom diffusers.models import ImageProjection, UNet2DConditionModel\nfrom diffusers.models.attention_processor import (\n    Attention,\n    AttnProcessor2_0,\n    FusedAttnProcessor2_0,\n    LoRAAttnProcessor2_0,\n    LoRAXFormersAttnProcessor,\n    XFormersAttnProcessor,\n)\nfrom diffusers.models.lora import adjust_lora_scale_text_encoder\nfrom diffusers.schedulers import KarrasDiffusionSchedulers\nfrom diffusers.utils import (\n    USE_PEFT_BACKEND,\n    deprecate,\n    is_torch_xla_available,\n    logging,\n    replace_example_docstring,\n    scale_lora_layers,\n    unscale_lora_layers,\n)\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline, ImagePipelineOutput\nfrom .autoencoder_kl import PixelSmithVAE\n\n\nif is_torch_xla_available():\n    import torch_xla.core.xla_model as xm\n    XLA_AVAILABLE = True\nelse:\n    XLA_AVAILABLE = False\n\n\nplt.rcParams['figure.dpi'] = 300\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\nEXAMPLE_DOC_STRING = \"\"\"\n    Examples:\n        ```py\n        >>> import torch\n        >>> from diffusers import StableDiffusionXLPipeline\n\n        >>> pipe = StableDiffusionXLPipeline.from_pretrained(\n        ...     \"stabilityai/stable-diffusion-xl-base-1.0\", torch_dtype=torch.float16\n        ... )\n        >>> pipe = pipe.to(\"cuda\")\n\n        >>> prompt = \"a photo of an astronaut riding a horse on mars\"\n        >>> image = pipe(prompt).images[0]\n        ```\n\"\"\"\n#+#\nclass PAGIdentitySelfAttnProcessor:\n    r\"\"\"\n    Processor for implementing scaled dot-product attention (enabled by default if you're using PyTorch 2.0).\n    \"\"\"\n\n    def __init__(self):\n        if not hasattr(F, \"scaled_dot_product_attention\"):\n            raise ImportError(\"AttnProcessor2_0 requires PyTorch 2.0, to use it, please upgrade PyTorch to 2.0.\")\n\n    def __call__(\n        self,\n        attn: Attention,\n        hidden_states: torch.FloatTensor,\n        encoder_hidden_states: Optional[torch.FloatTensor] = None,\n        attention_mask: Optional[torch.FloatTensor] = None,\n        temb: Optional[torch.FloatTensor] = None,\n        *args,\n        **kwargs,\n    ) -> torch.FloatTensor:\n        if len(args) > 0 or kwargs.get(\"scale\", None) is not None:\n            deprecation_message = \"The `scale` argument is deprecated and will be ignored. Please remove it, as passing it will raise an error in the future. `scale` should directly be passed while calling the underlying pipeline component i.e., via `cross_attention_kwargs`.\"\n            deprecate(\"scale\", \"1.0.0\", deprecation_message)\n\n        residual = hidden_states\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n\n        # chunk\n        hidden_states_org, hidden_states_ptb = hidden_states.chunk(2)\n\n        # original path\n        batch_size, sequence_length, _ = hidden_states_org.shape\n\n        if attention_mask is not None:\n            attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n            # scaled_dot_product_attention expects attention_mask shape to be\n            # (batch, heads, source_length, target_length)\n            attention_mask = attention_mask.view(batch_size, attn.heads, -1, attention_mask.shape[-1])\n\n        if attn.group_norm is not None:\n            hidden_states_org = attn.group_norm(hidden_states_org.transpose(1, 2)).transpose(1, 2)\n\n        query = attn.to_q(hidden_states_org)\n        key = attn.to_k(hidden_states_org)\n        value = attn.to_v(hidden_states_org)\n\n        inner_dim = key.shape[-1]\n        head_dim = inner_dim // attn.heads\n\n        query = query.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        key = key.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        value = value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        # the output of sdp = (batch, num_heads, seq_len, head_dim)\n        hidden_states_org = F.scaled_dot_product_attention(\n            query, key, value, attn_mask=attention_mask, dropout_p=0.0, is_causal=False\n        )\n\n        hidden_states_org = hidden_states_org.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n        hidden_states_org = hidden_states_org.to(query.dtype)\n\n        # linear proj\n        hidden_states_org = attn.to_out[0](hidden_states_org)\n        # dropout\n        hidden_states_org = attn.to_out[1](hidden_states_org)\n\n        if input_ndim == 4:\n            hidden_states_org = hidden_states_org.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        # perturbed path (identity attention)\n        batch_size, sequence_length, _ = hidden_states_ptb.shape\n\n        if attention_mask is not None:\n            attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n            # scaled_dot_product_attention expects attention_mask shape to be\n            # (batch, heads, source_length, target_length)\n            attention_mask = attention_mask.view(batch_size, attn.heads, -1, attention_mask.shape[-1])\n\n        if attn.group_norm is not None:\n            hidden_states_ptb = attn.group_norm(hidden_states_ptb.transpose(1, 2)).transpose(1, 2)\n\n        value = attn.to_v(hidden_states_ptb)\n\n        # hidden_states_ptb = torch.zeros(value.shape).to(value.get_device())\n        hidden_states_ptb = value\n\n        hidden_states_ptb = hidden_states_ptb.to(query.dtype)\n\n        # linear proj\n        hidden_states_ptb = attn.to_out[0](hidden_states_ptb)\n        # dropout\n        hidden_states_ptb = attn.to_out[1](hidden_states_ptb)\n\n        if input_ndim == 4:\n            hidden_states_ptb = hidden_states_ptb.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        # cat\n        hidden_states = torch.cat([hidden_states_org, hidden_states_ptb])\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n\n\nclass PAGCFGIdentitySelfAttnProcessor:\n    r\"\"\"\n    Processor for implementing scaled dot-product attention (enabled by default if you're using PyTorch 2.0).\n    \"\"\"\n\n    def __init__(self):\n        if not hasattr(F, \"scaled_dot_product_attention\"):\n            raise ImportError(\"AttnProcessor2_0 requires PyTorch 2.0, to use it, please upgrade PyTorch to 2.0.\")\n\n    def __call__(\n        self,\n        attn: Attention,\n        hidden_states: torch.FloatTensor,\n        encoder_hidden_states: Optional[torch.FloatTensor] = None,\n        attention_mask: Optional[torch.FloatTensor] = None,\n        temb: Optional[torch.FloatTensor] = None,\n        *args,\n        **kwargs,\n    ) -> torch.FloatTensor:\n        if len(args) > 0 or kwargs.get(\"scale\", None) is not None:\n            deprecation_message = \"The `scale` argument is deprecated and will be ignored. Please remove it, as passing it will raise an error in the future. `scale` should directly be passed while calling the underlying pipeline component i.e., via `cross_attention_kwargs`.\"\n            deprecate(\"scale\", \"1.0.0\", deprecation_message)\n\n        residual = hidden_states\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n\n        # chunk\n        hidden_states_uncond, hidden_states_org, hidden_states_ptb = hidden_states.chunk(3)\n        hidden_states_org = torch.cat([hidden_states_uncond, hidden_states_org])\n\n        # original path\n        batch_size, sequence_length, _ = hidden_states_org.shape\n\n        if attention_mask is not None:\n            attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n            # scaled_dot_product_attention expects attention_mask shape to be\n            # (batch, heads, source_length, target_length)\n            attention_mask = attention_mask.view(batch_size, attn.heads, -1, attention_mask.shape[-1])\n\n        if attn.group_norm is not None:\n            hidden_states_org = attn.group_norm(hidden_states_org.transpose(1, 2)).transpose(1, 2)\n\n        query = attn.to_q(hidden_states_org)\n        key = attn.to_k(hidden_states_org)\n        value = attn.to_v(hidden_states_org)\n\n        inner_dim = key.shape[-1]\n        head_dim = inner_dim // attn.heads\n\n        query = query.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        key = key.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        value = value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        # the output of sdp = (batch, num_heads, seq_len, head_dim)\n        hidden_states_org = F.scaled_dot_product_attention(\n            query, key, value, attn_mask=attention_mask, dropout_p=0.0, is_causal=False\n        )\n\n        hidden_states_org = hidden_states_org.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n        hidden_states_org = hidden_states_org.to(query.dtype)\n\n        # linear proj\n        hidden_states_org = attn.to_out[0](hidden_states_org)\n        # dropout\n        hidden_states_org = attn.to_out[1](hidden_states_org)\n\n        if input_ndim == 4:\n            hidden_states_org = hidden_states_org.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        # perturbed path (identity attention)\n        batch_size, sequence_length, _ = hidden_states_ptb.shape\n\n        if attention_mask is not None:\n            attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n            # scaled_dot_product_attention expects attention_mask shape to be\n            # (batch, heads, source_length, target_length)\n            attention_mask = attention_mask.view(batch_size, attn.heads, -1, attention_mask.shape[-1])\n\n        if attn.group_norm is not None:\n            hidden_states_ptb = attn.group_norm(hidden_states_ptb.transpose(1, 2)).transpose(1, 2)\n\n        value = attn.to_v(hidden_states_ptb)\n        hidden_states_ptb = value\n        hidden_states_ptb = hidden_states_ptb.to(query.dtype)\n\n        # linear proj\n        hidden_states_ptb = attn.to_out[0](hidden_states_ptb)\n        # dropout\n        hidden_states_ptb = attn.to_out[1](hidden_states_ptb)\n\n        if input_ndim == 4:\n            hidden_states_ptb = hidden_states_ptb.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        # cat\n        hidden_states = torch.cat([hidden_states_org, hidden_states_ptb])\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.rescale_noise_cfg\ndef rescale_noise_cfg(noise_cfg, noise_pred_text, guidance_rescale=0.0):\n    \"\"\"\n    Rescale `noise_cfg` according to `guidance_rescale`. Based on findings of [Common Diffusion Noise Schedules and\n    Sample Steps are Flawed](https://arxiv.org/pdf/2305.08891.pdf). See Section 3.4\n    \"\"\"\n    std_text = noise_pred_text.std(dim=list(range(1, noise_pred_text.ndim)), keepdim=True)\n    std_cfg = noise_cfg.std(dim=list(range(1, noise_cfg.ndim)), keepdim=True)\n    # rescale the results from guidance (fixes overexposure)\n    noise_pred_rescaled = noise_cfg * (std_text / std_cfg)\n    # mix with the original results from guidance by factor guidance_rescale to avoid \"plain looking\" images\n    noise_cfg = guidance_rescale * noise_pred_rescaled + (1 - guidance_rescale) * noise_cfg\n    return noise_cfg\n\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.retrieve_timesteps\ndef retrieve_timesteps(\n    scheduler,\n    num_inference_steps: Optional[int] = None,\n    device: Optional[Union[str, torch.device]] = None,\n    timesteps: Optional[List[int]] = None,\n    **kwargs,\n):\n    \"\"\"\n    Calls the scheduler's `set_timesteps` method and retrieves timesteps from the scheduler after the call. Handles\n    custom timesteps. Any kwargs will be supplied to `scheduler.set_timesteps`.\n\n    Args:\n        scheduler (`SchedulerMixin`):\n            The scheduler to get timesteps from.\n        num_inference_steps (`int`):\n            The number of diffusion steps used when generating samples with a pre-trained model. If used,\n            `timesteps` must be `None`.\n        device (`str` or `torch.device`, *optional*):\n            The device to which the timesteps should be moved to. If `None`, the timesteps are not moved.\n        timesteps (`List[int]`, *optional*):\n                Custom timesteps used to support arbitrary spacing between timesteps. If `None`, then the default\n                timestep spacing strategy of the scheduler is used. If `timesteps` is passed, `num_inference_steps`\n                must be `None`.\n\n    Returns:\n        `Tuple[torch.Tensor, int]`: A tuple where the first element is the timestep schedule from the scheduler and the\n        second element is the number of inference steps.\n    \"\"\"\n    if timesteps is not None:\n        accepts_timesteps = \"timesteps\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n        if not accepts_timesteps:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" timestep schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(timesteps=timesteps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    else:\n        scheduler.set_timesteps(num_inference_steps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n    return timesteps, num_inference_steps\n\n\n\nclass PixelSmithXLPipeline(\n    DiffusionPipeline,\n    #StableDiffusionMixin,\n    FromSingleFileMixin,\n    StableDiffusionXLLoraLoaderMixin,\n    TextualInversionLoaderMixin,\n    IPAdapterMixin,\n):\n    r\"\"\"\n    Pipeline for text-to-image generation using Stable Diffusion XL.\n\n    This model inherits from [`DiffusionPipeline`]. Check the superclass documentation for the generic methods the\n    library implements for all the pipelines (such as downloading or saving, running on a particular device, etc.)\n\n    The pipeline also inherits the following loading methods:\n        - [`~loaders.TextualInversionLoaderMixin.load_textual_inversion`] for loading textual inversion embeddings\n        - [`~loaders.FromSingleFileMixin.from_single_file`] for loading `.ckpt` files\n        - [`~loaders.StableDiffusionXLLoraLoaderMixin.load_lora_weights`] for loading LoRA weights\n        - [`~loaders.StableDiffusionXLLoraLoaderMixin.save_lora_weights`] for saving LoRA weights\n        - [`~loaders.IPAdapterMixin.load_ip_adapter`] for loading IP Adapters\n\n    Args:\n        vae ([`AutoencoderKL`]):\n            Variational Auto-Encoder (VAE) Model to encode and decode images to and from latent representations.\n        text_encoder ([`CLIPTextModel`]):\n            Frozen text-encoder. Stable Diffusion XL uses the text portion of\n            [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModel), specifically\n            the [clip-vit-large-patch14](https://huggingface.co/openai/clip-vit-large-patch14) variant.\n        text_encoder_2 ([` CLIPTextModelWithProjection`]):\n            Second frozen text-encoder. Stable Diffusion XL uses the text and pool portion of\n            [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModelWithProjection),\n            specifically the\n            [laion/CLIP-ViT-bigG-14-laion2B-39B-b160k](https://huggingface.co/laion/CLIP-ViT-bigG-14-laion2B-39B-b160k)\n            variant.\n        tokenizer (`CLIPTokenizer`):\n            Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer).\n        tokenizer_2 (`CLIPTokenizer`):\n            Second Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer).\n        unet ([`UNet2DConditionModel`]): Conditional U-Net architecture to denoise the encoded image latents.\n        scheduler ([`SchedulerMixin`]):\n            A scheduler to be used in combination with `unet` to denoise the encoded image latents. Can be one of\n            [`DDIMScheduler`], [`LMSDiscreteScheduler`], or [`PNDMScheduler`].\n        force_zeros_for_empty_prompt (`bool`, *optional*, defaults to `\"True\"`):\n            Whether the negative prompt embeddings shall be forced to always be set to 0. Also see the config of\n            `stabilityai/stable-diffusion-xl-base-1-0`.\n        add_watermarker (`bool`, *optional*):\n            Whether to use the [invisible_watermark library](https://github.com/ShieldMnt/invisible-watermark/) to\n            watermark output images. If not defined, it will default to True if the package is installed, otherwise no\n            watermarker will be used.\n    \"\"\"\n\n    model_cpu_offload_seq = \"text_encoder->text_encoder_2->image_encoder->unet->vae\"\n    _optional_components = [\n        \"tokenizer\",\n        \"tokenizer_2\",\n        \"text_encoder\",\n        \"text_encoder_2\",\n        \"image_encoder\",\n        \"feature_extractor\",\n    ]\n    _callback_tensor_inputs = [\n        \"latents\",\n        \"prompt_embeds\",\n        \"negative_prompt_embeds\",\n        \"add_text_embeds\",\n        \"add_time_ids\",\n        \"negative_pooled_prompt_embeds\",\n        \"negative_add_time_ids\",\n    ]\n\n    def __init__(\n        self,\n        vae: PixelSmithVAE,\n        text_encoder: CLIPTextModel,\n        text_encoder_2: CLIPTextModelWithProjection,\n        tokenizer: CLIPTokenizer,\n        tokenizer_2: CLIPTokenizer,\n        unet: UNet2DConditionModel,\n        scheduler: KarrasDiffusionSchedulers,\n        image_encoder: CLIPVisionModelWithProjection = None,\n        feature_extractor: CLIPImageProcessor = None,\n        force_zeros_for_empty_prompt: bool = True,\n        add_watermarker: Optional[bool] = None,\n    ):\n        super().__init__()\n\n        self.register_modules(\n            vae=vae,\n            text_encoder=text_encoder,\n            text_encoder_2=text_encoder_2,\n            tokenizer=tokenizer,\n            tokenizer_2=tokenizer_2,\n            unet=unet,\n            scheduler=scheduler,\n            image_encoder=image_encoder,\n            feature_extractor=feature_extractor,\n        )\n        self.register_to_config(force_zeros_for_empty_prompt=force_zeros_for_empty_prompt)\n        self.vae_scale_factor = 2 ** (len(self.vae.config.block_out_channels) - 1)\n        self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor)\n\n        self.default_sample_size = self.unet.config.sample_size\n\n    def encode_prompt(\n        self,\n        prompt: str,\n        prompt_2: Optional[str] = None,\n        device: Optional[torch.device] = None,\n        num_images_per_prompt: int = 1,\n        do_classifier_free_guidance: bool = True,\n        negative_prompt: Optional[str] = None,\n        negative_prompt_2: Optional[str] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        lora_scale: Optional[float] = None,\n        clip_skip: Optional[int] = None,\n    ):\n        r\"\"\"\n        Encodes the prompt into text encoder hidden states.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                prompt to be encoded\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders\n            device: (`torch.device`):\n                torch device\n            num_images_per_prompt (`int`):\n                number of images that should be generated per prompt\n            do_classifier_free_guidance (`bool`):\n                whether to use classifier free guidance or not\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            lora_scale (`float`, *optional*):\n                A lora scale that will be applied to all LoRA layers of the text encoder if LoRA layers are loaded.\n            clip_skip (`int`, *optional*):\n                Number of layers to be skipped from CLIP while computing the prompt embeddings. A value of 1 means that\n                the output of the pre-final layer will be used for computing the prompt embeddings.\n        \"\"\"\n        device = device or self._execution_device\n\n        # set lora scale so that monkey patched LoRA\n        # function of text encoder can correctly access it\n        if lora_scale is not None and isinstance(self, StableDiffusionXLLoraLoaderMixin):\n            self._lora_scale = lora_scale\n\n            # dynamically adjust the LoRA scale\n            if self.text_encoder is not None:\n                if not USE_PEFT_BACKEND:\n                    adjust_lora_scale_text_encoder(self.text_encoder, lora_scale)\n                else:\n                    scale_lora_layers(self.text_encoder, lora_scale)\n\n            if self.text_encoder_2 is not None:\n                if not USE_PEFT_BACKEND:\n                    adjust_lora_scale_text_encoder(self.text_encoder_2, lora_scale)\n                else:\n                    scale_lora_layers(self.text_encoder_2, lora_scale)\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n\n        if prompt is not None:\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        # Define tokenizers and text encoders\n        tokenizers = [self.tokenizer, self.tokenizer_2] if self.tokenizer is not None else [self.tokenizer_2]\n        text_encoders = (\n            [self.text_encoder, self.text_encoder_2] if self.text_encoder is not None else [self.text_encoder_2]\n        )\n\n        if prompt_embeds is None:\n            prompt_2 = prompt_2 or prompt\n            prompt_2 = [prompt_2] if isinstance(prompt_2, str) else prompt_2\n\n            # textual inversion: process multi-vector tokens if necessary\n            prompt_embeds_list = []\n            prompts = [prompt, prompt_2]\n            for prompt, tokenizer, text_encoder in zip(prompts, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    prompt = self.maybe_convert_prompt(prompt, tokenizer)\n\n                text_inputs = tokenizer(\n                    prompt,\n                    padding=\"max_length\",\n                    max_length=tokenizer.model_max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                text_input_ids = text_inputs.input_ids\n                untruncated_ids = tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n                if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(\n                    text_input_ids, untruncated_ids\n                ):\n                    removed_text = tokenizer.batch_decode(untruncated_ids[:, tokenizer.model_max_length - 1 : -1])\n                    logger.warning(\n                        \"The following part of your input was truncated because CLIP can only handle sequences up to\"\n                        f\" {tokenizer.model_max_length} tokens: {removed_text}\"\n                    )\n\n                prompt_embeds = text_encoder(text_input_ids.to(device), output_hidden_states=True)\n\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                pooled_prompt_embeds = prompt_embeds[0]\n                if clip_skip is None:\n                    prompt_embeds = prompt_embeds.hidden_states[-2]\n                else:\n                    # \"2\" because SDXL always indexes from the penultimate layer.\n                    prompt_embeds = prompt_embeds.hidden_states[-(clip_skip + 2)]\n\n                prompt_embeds_list.append(prompt_embeds)\n\n            prompt_embeds = torch.concat(prompt_embeds_list, dim=-1)\n\n        # get unconditional embeddings for classifier free guidance\n        zero_out_negative_prompt = negative_prompt is None and self.config.force_zeros_for_empty_prompt\n        if do_classifier_free_guidance and negative_prompt_embeds is None and zero_out_negative_prompt:\n            negative_prompt_embeds = torch.zeros_like(prompt_embeds)\n            negative_pooled_prompt_embeds = torch.zeros_like(pooled_prompt_embeds)\n        elif do_classifier_free_guidance and negative_prompt_embeds is None:\n            negative_prompt = negative_prompt or \"\"\n            negative_prompt_2 = negative_prompt_2 or negative_prompt\n\n            # normalize str to list\n            negative_prompt = batch_size * [negative_prompt] if isinstance(negative_prompt, str) else negative_prompt\n            negative_prompt_2 = (\n                batch_size * [negative_prompt_2] if isinstance(negative_prompt_2, str) else negative_prompt_2\n            )\n\n            uncond_tokens: List[str]\n            if prompt is not None and type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n            else:\n                uncond_tokens = [negative_prompt, negative_prompt_2]\n\n            negative_prompt_embeds_list = []\n            for negative_prompt, tokenizer, text_encoder in zip(uncond_tokens, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    negative_prompt = self.maybe_convert_prompt(negative_prompt, tokenizer)\n\n                max_length = prompt_embeds.shape[1]\n                uncond_input = tokenizer(\n                    negative_prompt,\n                    padding=\"max_length\",\n                    max_length=max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                negative_prompt_embeds = text_encoder(\n                    uncond_input.input_ids.to(device),\n                    output_hidden_states=True,\n                )\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                negative_pooled_prompt_embeds = negative_prompt_embeds[0]\n                negative_prompt_embeds = negative_prompt_embeds.hidden_states[-2]\n\n                negative_prompt_embeds_list.append(negative_prompt_embeds)\n\n            negative_prompt_embeds = torch.concat(negative_prompt_embeds_list, dim=-1)\n\n        if self.text_encoder_2 is not None:\n            prompt_embeds = prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n        else:\n            prompt_embeds = prompt_embeds.to(dtype=self.unet.dtype, device=device)\n\n        bs_embed, seq_len, _ = prompt_embeds.shape\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(bs_embed * num_images_per_prompt, seq_len, -1)\n\n        if do_classifier_free_guidance:\n            # duplicate unconditional embeddings for each generation per prompt, using mps friendly method\n            seq_len = negative_prompt_embeds.shape[1]\n\n            if self.text_encoder_2 is not None:\n                negative_prompt_embeds = negative_prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n            else:\n                negative_prompt_embeds = negative_prompt_embeds.to(dtype=self.unet.dtype, device=device)\n\n            negative_prompt_embeds = negative_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds = negative_prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n        pooled_prompt_embeds = pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n            bs_embed * num_images_per_prompt, -1\n        )\n        if do_classifier_free_guidance:\n            negative_pooled_prompt_embeds = negative_pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n                bs_embed * num_images_per_prompt, -1\n            )\n\n        if self.text_encoder is not None:\n            if isinstance(self, StableDiffusionXLLoraLoaderMixin) and USE_PEFT_BACKEND:\n                # Retrieve the original scale by scaling back the LoRA layers\n                unscale_lora_layers(self.text_encoder, lora_scale)\n\n        if self.text_encoder_2 is not None:\n            if isinstance(self, StableDiffusionXLLoraLoaderMixin) and USE_PEFT_BACKEND:\n                # Retrieve the original scale by scaling back the LoRA layers\n                unscale_lora_layers(self.text_encoder_2, lora_scale)\n\n        return prompt_embeds, negative_prompt_embeds, pooled_prompt_embeds, negative_pooled_prompt_embeds\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.encode_image\n    def encode_image(self, image, device, num_images_per_prompt, output_hidden_states=None):\n        dtype = next(self.image_encoder.parameters()).dtype\n\n        if not isinstance(image, torch.Tensor):\n            image = self.feature_extractor(image, return_tensors=\"pt\").pixel_values\n\n        image = image.to(device=device, dtype=dtype)\n        if output_hidden_states:\n            image_enc_hidden_states = self.image_encoder(image, output_hidden_states=True).hidden_states[-2]\n            image_enc_hidden_states = image_enc_hidden_states.repeat_interleave(num_images_per_prompt, dim=0)\n            uncond_image_enc_hidden_states = self.image_encoder(\n                torch.zeros_like(image), output_hidden_states=True\n            ).hidden_states[-2]\n            uncond_image_enc_hidden_states = uncond_image_enc_hidden_states.repeat_interleave(\n                num_images_per_prompt, dim=0\n            )\n            return image_enc_hidden_states, uncond_image_enc_hidden_states\n        else:\n            image_embeds = self.image_encoder(image).image_embeds\n            image_embeds = image_embeds.repeat_interleave(num_images_per_prompt, dim=0)\n            uncond_image_embeds = torch.zeros_like(image_embeds)\n\n            return image_embeds, uncond_image_embeds\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_ip_adapter_image_embeds\n    def prepare_ip_adapter_image_embeds(\n        self, ip_adapter_image, ip_adapter_image_embeds, device, num_images_per_prompt, do_classifier_free_guidance\n    ):\n        if ip_adapter_image_embeds is None:\n            if not isinstance(ip_adapter_image, list):\n                ip_adapter_image = [ip_adapter_image]\n\n            if len(ip_adapter_image) != len(self.unet.encoder_hid_proj.image_projection_layers):\n                raise ValueError(\n                    f\"`ip_adapter_image` must have same length as the number of IP Adapters. Got {len(ip_adapter_image)} images and {len(self.unet.encoder_hid_proj.image_projection_layers)} IP Adapters.\"\n                )\n\n            image_embeds = []\n            for single_ip_adapter_image, image_proj_layer in zip(\n                ip_adapter_image, self.unet.encoder_hid_proj.image_projection_layers\n            ):\n                output_hidden_state = not isinstance(image_proj_layer, ImageProjection)\n                single_image_embeds, single_negative_image_embeds = self.encode_image(\n                    single_ip_adapter_image, device, 1, output_hidden_state\n                )\n                single_image_embeds = torch.stack([single_image_embeds] * num_images_per_prompt, dim=0)\n                single_negative_image_embeds = torch.stack(\n                    [single_negative_image_embeds] * num_images_per_prompt, dim=0\n                )\n\n                if do_classifier_free_guidance:\n                    single_image_embeds = torch.cat([single_negative_image_embeds, single_image_embeds])\n                    single_image_embeds = single_image_embeds.to(device)\n\n                image_embeds.append(single_image_embeds)\n        else:\n            repeat_dims = [1]\n            image_embeds = []\n            for single_image_embeds in ip_adapter_image_embeds:\n                if do_classifier_free_guidance:\n                    single_negative_image_embeds, single_image_embeds = single_image_embeds.chunk(2)\n                    single_image_embeds = single_image_embeds.repeat(\n                        num_images_per_prompt, *(repeat_dims * len(single_image_embeds.shape[1:]))\n                    )\n                    single_negative_image_embeds = single_negative_image_embeds.repeat(\n                        num_images_per_prompt, *(repeat_dims * len(single_negative_image_embeds.shape[1:]))\n                    )\n                    single_image_embeds = torch.cat([single_negative_image_embeds, single_image_embeds])\n                else:\n                    single_image_embeds = single_image_embeds.repeat(\n                        num_images_per_prompt, *(repeat_dims * len(single_image_embeds.shape[1:]))\n                    )\n                image_embeds.append(single_image_embeds)\n\n        return image_embeds\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_extra_step_kwargs\n    def prepare_extra_step_kwargs(self, generator, eta):\n        # prepare extra kwargs for the scheduler step, since not all schedulers have the same signature\n        # eta (η) is only used with the DDIMScheduler, it will be ignored for other schedulers.\n        # eta corresponds to η in DDIM paper: https://arxiv.org/abs/2010.02502\n        # and should be between [0, 1]\n\n        accepts_eta = \"eta\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        extra_step_kwargs = {}\n        if accepts_eta:\n            extra_step_kwargs[\"eta\"] = eta\n\n        # check if the scheduler accepts generator\n        accepts_generator = \"generator\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        if accepts_generator:\n            extra_step_kwargs[\"generator\"] = generator\n        return extra_step_kwargs\n\n    def check_inputs(\n        self,\n        prompt,\n        prompt_2,\n        height,\n        width,\n        callback_steps,\n        negative_prompt=None,\n        negative_prompt_2=None,\n        prompt_embeds=None,\n        negative_prompt_embeds=None,\n        pooled_prompt_embeds=None,\n        negative_pooled_prompt_embeds=None,\n        ip_adapter_image=None,\n        ip_adapter_image_embeds=None,\n        callback_on_step_end_tensor_inputs=None,\n    ):\n        if height % 8 != 0 or width % 8 != 0:\n            raise ValueError(f\"`height` and `width` have to be divisible by 8 but are {height} and {width}.\")\n\n        if callback_steps is not None and (not isinstance(callback_steps, int) or callback_steps <= 0):\n            raise ValueError(\n                f\"`callback_steps` has to be a positive integer but is {callback_steps} of type\"\n                f\" {type(callback_steps)}.\"\n            )\n\n        if callback_on_step_end_tensor_inputs is not None and not all(\n            k in self._callback_tensor_inputs for k in callback_on_step_end_tensor_inputs\n        ):\n            raise ValueError(\n                f\"`callback_on_step_end_tensor_inputs` has to be in {self._callback_tensor_inputs}, but found {[k for k in callback_on_step_end_tensor_inputs if k not in self._callback_tensor_inputs]}\"\n            )\n\n        if prompt is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt_2 is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt_2`: {prompt_2} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n        elif prompt_2 is not None and (not isinstance(prompt_2, str) and not isinstance(prompt_2, list)):\n            raise ValueError(f\"`prompt_2` has to be of type `str` or `list` but is {type(prompt_2)}\")\n\n        if negative_prompt is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n        elif negative_prompt_2 is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt_2`: {negative_prompt_2} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n\n        if prompt_embeds is not None and negative_prompt_embeds is not None:\n            if prompt_embeds.shape != negative_prompt_embeds.shape:\n                raise ValueError(\n                    \"`prompt_embeds` and `negative_prompt_embeds` must have the same shape when passed directly, but\"\n                    f\" got: `prompt_embeds` {prompt_embeds.shape} != `negative_prompt_embeds`\"\n                    f\" {negative_prompt_embeds.shape}.\"\n                )\n\n        if prompt_embeds is not None and pooled_prompt_embeds is None:\n            raise ValueError(\n                \"If `prompt_embeds` are provided, `pooled_prompt_embeds` also have to be passed. Make sure to generate `pooled_prompt_embeds` from the same text encoder that was used to generate `prompt_embeds`.\"\n            )\n\n        if negative_prompt_embeds is not None and negative_pooled_prompt_embeds is None:\n            raise ValueError(\n                \"If `negative_prompt_embeds` are provided, `negative_pooled_prompt_embeds` also have to be passed. Make sure to generate `negative_pooled_prompt_embeds` from the same text encoder that was used to generate `negative_prompt_embeds`.\"\n            )\n\n        if ip_adapter_image is not None and ip_adapter_image_embeds is not None:\n            raise ValueError(\n                \"Provide either `ip_adapter_image` or `ip_adapter_image_embeds`. Cannot leave both `ip_adapter_image` and `ip_adapter_image_embeds` defined.\"\n            )\n\n        if ip_adapter_image_embeds is not None:\n            if not isinstance(ip_adapter_image_embeds, list):\n                raise ValueError(\n                    f\"`ip_adapter_image_embeds` has to be of type `list` but is {type(ip_adapter_image_embeds)}\"\n                )\n            elif ip_adapter_image_embeds[0].ndim not in [3, 4]:\n                raise ValueError(\n                    f\"`ip_adapter_image_embeds` has to be a list of 3D or 4D tensors but is {ip_adapter_image_embeds[0].ndim}D\"\n                )\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_latents\n    def prepare_latents(self, batch_size, num_channels_latents, height, width, dtype, device, generator, latents=None):\n        shape = (batch_size, num_channels_latents, height // self.vae_scale_factor, width // self.vae_scale_factor)\n        if isinstance(generator, list) and len(generator) != batch_size:\n            raise ValueError(\n                f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n            )\n\n        if latents is None:\n            latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n        else:\n            latents = latents.to(device)\n\n        # scale the initial noise by the standard deviation required by the scheduler\n        latents = latents * self.scheduler.init_noise_sigma\n        return latents\n\n    def _get_add_time_ids(\n        self, original_size, crops_coords_top_left, target_size, dtype, text_encoder_projection_dim=None\n    ):\n        add_time_ids = list(original_size + crops_coords_top_left + target_size)\n\n        passed_add_embed_dim = (\n            self.unet.config.addition_time_embed_dim * len(add_time_ids) + text_encoder_projection_dim\n        )\n        expected_add_embed_dim = self.unet.add_embedding.linear_1.in_features\n\n        if expected_add_embed_dim != passed_add_embed_dim:\n            raise ValueError(\n                f\"Model expects an added time embedding vector of length {expected_add_embed_dim}, but a vector of {passed_add_embed_dim} was created. The model has an incorrect config. Please check `unet.config.time_embedding_type` and `text_encoder_2.config.projection_dim`.\"\n            )\n\n        add_time_ids = torch.tensor([add_time_ids], dtype=dtype)\n        return add_time_ids\n\n    def upcast_vae(self):\n        dtype = self.vae.dtype\n        self.vae.to(dtype=torch.float32)\n        use_torch_2_0_or_xformers = isinstance(\n            self.vae.decoder.mid_block.attentions[0].processor,\n            (\n                AttnProcessor2_0,\n                XFormersAttnProcessor,\n                LoRAXFormersAttnProcessor,\n                LoRAAttnProcessor2_0,\n                FusedAttnProcessor2_0,\n            ),\n        )\n        # if xformers or torch_2_0 is used attention block does not need\n        # to be in float32 which can save lots of memory\n        if use_torch_2_0_or_xformers:\n            self.vae.post_quant_conv.to(dtype)\n            self.vae.decoder.conv_in.to(dtype)\n            self.vae.decoder.mid_block.to(dtype)\n\n    # Copied from diffusers.pipelines.latent_consistency_models.pipeline_latent_consistency_text2img.LatentConsistencyModelPipeline.get_guidance_scale_embedding\n    def get_guidance_scale_embedding(\n        self, w: torch.Tensor, embedding_dim: int = 512, dtype: torch.dtype = torch.float32\n    ) -> torch.FloatTensor:\n        \"\"\"\n        See https://github.com/google-research/vdm/blob/dc27b98a554f65cdc654b800da5aa1846545d41b/model_vdm.py#L298\n\n        Args:\n            w (`torch.Tensor`):\n                Generate embedding vectors with a specified guidance scale to subsequently enrich timestep embeddings.\n            embedding_dim (`int`, *optional*, defaults to 512):\n                Dimension of the embeddings to generate.\n            dtype (`torch.dtype`, *optional*, defaults to `torch.float32`):\n                Data type of the generated embeddings.\n\n        Returns:\n            `torch.FloatTensor`: Embedding vectors with shape `(len(w), embedding_dim)`.\n        \"\"\"\n        assert len(w.shape) == 1\n        w = w * 1000.0\n\n        half_dim = embedding_dim // 2\n        emb = torch.log(torch.tensor(10000.0)) / (half_dim - 1)\n        emb = torch.exp(torch.arange(half_dim, dtype=dtype) * -emb)\n        emb = w.to(dtype)[:, None] * emb[None, :]\n        emb = torch.cat([torch.sin(emb), torch.cos(emb)], dim=1)\n        if embedding_dim % 2 == 1:  # zero pad\n            emb = torch.nn.functional.pad(emb, (0, 1))\n        assert emb.shape == (w.shape[0], embedding_dim)\n        return emb\n    #+#\n\n    def pred_z0(self, sample, model_output, timestep):\n        alpha_prod_t = self.scheduler.alphas_cumprod[timestep].to(sample.device)\n\n        beta_prod_t = 1 - alpha_prod_t\n        if self.scheduler.config.prediction_type == \"epsilon\":\n            pred_original_sample = (sample - beta_prod_t ** (0.5) * model_output) / alpha_prod_t ** (0.5)\n        elif self.scheduler.config.prediction_type == \"sample\":\n            pred_original_sample = model_output\n        elif self.scheduler.config.prediction_type == \"v_prediction\":\n            pred_original_sample = (alpha_prod_t**0.5) * sample - (beta_prod_t**0.5) * model_output\n            # predict V\n            model_output = (alpha_prod_t**0.5) * model_output + (beta_prod_t**0.5) * sample\n        else:\n            raise ValueError(\n                f\"prediction_type given as {self.scheduler.config.prediction_type} must be one of `epsilon`, `sample`,\"\n                \" or `v_prediction`\"\n            )\n\n        return pred_original_sample\n\n    def pred_x0(self, latents, noise_pred, t, generator, device, prompt_embeds, output_type):\n        pred_z0 = self.pred_z0(latents, noise_pred, t)\n        pred_x0 = self.vae.decode(\n            pred_z0 / self.vae.config.scaling_factor,\n            return_dict=False,\n            generator=generator\n        )[0]\n        do_denormalize = [True] * pred_x0.shape[0]\n        pred_x0 = self.image_processor.postprocess(pred_x0, output_type=output_type, do_denormalize=do_denormalize)\n\n        return pred_x0\n\n    #+#\n    @property\n    def guidance_scale(self):\n        return self._guidance_scale\n\n    @property\n    def guidance_rescale(self):\n        return self._guidance_rescale\n\n    @property\n    def clip_skip(self):\n        return self._clip_skip\n\n    # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2)\n    # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1`\n    # corresponds to doing no classifier free guidance.\n    @property\n    def do_classifier_free_guidance(self):\n        return self._guidance_scale > 1 and self.unet.config.time_cond_proj_dim is None\n\n    @property\n    def cross_attention_kwargs(self):\n        return self._cross_attention_kwargs\n\n    @property\n    def denoising_end(self):\n        return self._denoising_end\n\n    @property\n    def num_timesteps(self):\n        return self._num_timesteps\n\n    @property\n    def interrupt(self):\n        return self._interrupt\n\n    #+#\n\n    @property\n    def pag_scale(self):\n        return self._pag_scale\n\n    @property\n    def do_adversarial_guidance(self):\n        return self._pag_scale > 0\n\n    @property\n    def pag_adaptive_scaling(self):\n        return self._pag_adaptive_scaling\n\n    @property\n    def do_pag_adaptive_scaling(self):\n        return self._pag_adaptive_scaling > 0\n\n    @property\n    def pag_drop_rate(self):\n        return self._pag_drop_rate\n\n    @property\n    def pag_applied_layers(self):\n        return self._pag_applied_layers\n\n    @property\n    def pag_applied_layers_index(self):\n        return self._pag_applied_layers_index\n    #+#\n\n    def _random_crop(self, z, i, j, patch_size):\n        p=patch_size//2\n        return z[...,i-p:i+p, j-p:j+p]\n\n    def get_value_coordinates(self, tensor):\n        value_indices = torch.nonzero(tensor == tensor.max(), as_tuple=False)\n        random_indices = value_indices[torch.randperm(value_indices.size(0))]\n        return random_indices\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        prompt_2: Optional[Union[str, List[str]]] = None,\n        height: Optional[int] = None,\n        width: Optional[int] = None,\n        num_inference_steps: int = 50,\n        timesteps: List[int] = None,\n        denoising_end: Optional[float] = None,\n        guidance_scale: float = 5.0,\n        #+#\n        pag_scale: float = 0.0, # longer inference time if used (https://ku-cvlab.github.io/Perturbed-Attention-Guidance/)\n        pag_adaptive_scaling: float = 0.0,\n        pag_drop_rate: float = 0.5,\n        pag_applied_layers: List[str] = ['mid'], #['down', 'mid', 'up']\n        pag_applied_layers_index: List[str] = None, #['d4', 'd5', 'm0']\n        #+#\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        negative_prompt_2: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        eta: float = 0.0,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.FloatTensor] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        ip_adapter_image: Optional[PipelineImageInput] = None,\n        ip_adapter_image_embeds: Optional[List[torch.FloatTensor]] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        guidance_rescale: float = 0.0,\n        original_size: Optional[Tuple[int, int]] = None,\n        crops_coords_top_left: Tuple[int, int] = (0, 0),\n        target_size: Optional[Tuple[int, int]] = None,\n        negative_original_size: Optional[Tuple[int, int]] = None,\n        negative_crops_coords_top_left: Tuple[int, int] = (0, 0),\n        negative_target_size: Optional[Tuple[int, int]] = None,\n        clip_skip: Optional[int] = None,\n        callback_on_step_end_tensor_inputs: List[str] = [\"latents\"],\n        image = None,\n        slider = None,\n        **kwargs,\n    ):\n        r\"\"\"\n        Function invoked when calling the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide the image generation. If not defined, one has to pass `prompt_embeds`.\n                instead.\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders\n            height (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The height in pixels of the generated image. This is set to 1024 by default for the best results.\n                Anything below 512 pixels won't work well for\n                [stabilityai/stable-diffusion-xl-base-1.0](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0)\n                and checkpoints that are not specifically fine-tuned on low resolutions.\n            width (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The width in pixels of the generated image. This is set to 1024 by default for the best results.\n                Anything below 512 pixels won't work well for\n                [stabilityai/stable-diffusion-xl-base-1.0](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0)\n                and checkpoints that are not specifically fine-tuned on low resolutions.\n            num_inference_steps (`int`, *optional*, defaults to 50):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            timesteps (`List[int]`, *optional*):\n                Custom timesteps to use for the denoising process with schedulers which support a `timesteps` argument\n                in their `set_timesteps` method. If not defined, the default behavior when `num_inference_steps` is\n                passed will be used. Must be in descending order.\n            denoising_end (`float`, *optional*):\n                When specified, determines the fraction (between 0.0 and 1.0) of the total denoising process to be\n                completed before it is intentionally prematurely terminated. As a result, the returned sample will\n                still retain a substantial amount of noise as determined by the discrete timesteps selected by the\n                scheduler. The denoising_end parameter should ideally be utilized when this pipeline forms a part of a\n                \"Mixture of Denoisers\" multi-pipeline setup, as elaborated in [**Refining the Image\n                Output**](https://huggingface.co/docs/diffusers/api/pipelines/stable_diffusion/stable_diffusion_xl#refining-the-image-output)\n            guidance_scale (`float`, *optional*, defaults to 5.0):\n                Guidance scale as defined in [Classifier-Free Diffusion Guidance](https://arxiv.org/abs/2207.12598).\n                `guidance_scale` is defined as `w` of equation 2. of [Imagen\n                Paper](https://arxiv.org/pdf/2205.11487.pdf). Guidance scale is enabled by setting `guidance_scale >\n                1`. Higher guidance scale encourages to generate images that are closely linked to the text `prompt`,\n                usually at the expense of lower image quality.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            eta (`float`, *optional*, defaults to 0.0):\n                Corresponds to parameter eta (η) in the DDIM paper: https://arxiv.org/abs/2010.02502. Only applies to\n                [`schedulers.DDIMScheduler`], will be ignored for others.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                One or a list of [torch generator(s)](https://pytorch.org/docs/stable/generated/torch.Generator.html)\n                to make generation deterministic.\n            latents (`torch.FloatTensor`, *optional*):\n                Pre-generated noisy latents, sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor will ge generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            ip_adapter_image: (`PipelineImageInput`, *optional*): Optional image input to work with IP Adapters.\n            ip_adapter_image_embeds (`List[torch.FloatTensor]`, *optional*):\n                Pre-generated image embeddings for IP-Adapter. It should be a list of length same as number of IP-adapters.\n                Each element should be a tensor of shape `(batch_size, num_images, emb_dim)`. It should contain the negative image embedding\n                if `do_classifier_free_guidance` is set to `True`.\n                If not provided, embeddings are computed from the `ip_adapter_image` input argument.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generate image. Choose between\n                [PIL](https://pillow.readthedocs.io/en/stable/): `PIL.Image.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] instead\n                of a plain tuple.\n            cross_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            guidance_rescale (`float`, *optional*, defaults to 0.0):\n                Guidance rescale factor proposed by [Common Diffusion Noise Schedules and Sample Steps are\n                Flawed](https://arxiv.org/pdf/2305.08891.pdf) `guidance_scale` is defined as `φ` in equation 16. of\n                [Common Diffusion Noise Schedules and Sample Steps are Flawed](https://arxiv.org/pdf/2305.08891.pdf).\n                Guidance rescale factor should fix overexposure when using zero terminal SNR.\n            original_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                If `original_size` is not the same as `target_size` the image will appear to be down- or upsampled.\n                `original_size` defaults to `(height, width)` if not specified. Part of SDXL's micro-conditioning as\n                explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            crops_coords_top_left (`Tuple[int]`, *optional*, defaults to (0, 0)):\n                `crops_coords_top_left` can be used to generate an image that appears to be \"cropped\" from the position\n                `crops_coords_top_left` downwards. Favorable, well-centered images are usually achieved by setting\n                `crops_coords_top_left` to (0, 0). Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            target_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                For most cases, `target_size` should be set to the desired height and width of the generated image. If\n                not specified it will default to `(height, width)`. Part of SDXL's micro-conditioning as explained in\n                section 2.2 of [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            negative_original_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                To negatively condition the generation process based on a specific image resolution. Part of SDXL's\n                micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). For more\n                information, refer to this issue thread: https://github.com/huggingface/diffusers/issues/4208.\n            negative_crops_coords_top_left (`Tuple[int]`, *optional*, defaults to (0, 0)):\n                To negatively condition the generation process based on a specific crop coordinates. Part of SDXL's\n                micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). For more\n                information, refer to this issue thread: https://github.com/huggingface/diffusers/issues/4208.\n            negative_target_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                To negatively condition the generation process based on a target image resolution. It should be as same\n                as the `target_size` for most cases. Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). For more\n                information, refer to this issue thread: https://github.com/huggingface/diffusers/issues/4208.\n            callback_on_step_end (`Callable`, *optional*):\n                A function that calls at the end of each denoising steps during the inference. The function is called\n                with the following arguments: `callback_on_step_end(self: DiffusionPipeline, step: int, timestep: int,\n                callback_kwargs: Dict)`. `callback_kwargs` will include a list of all tensors as specified by\n                `callback_on_step_end_tensor_inputs`.\n            callback_on_step_end_tensor_inputs (`List`, *optional*):\n                The list of tensor inputs for the `callback_on_step_end` function. The tensors specified in the list\n                will be passed as `callback_kwargs` argument. You will only be able to include variables listed in the\n                `._callback_tensor_inputs` attribute of your pipeline class.\n            image('pil'):\n                Upscaled image from previous step\n            slider('int'):\n                Freedom of the model to be more generative or closer to the input\n\n        Examples:\n\n        Returns:\n            [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] or `tuple`:\n            [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] if `return_dict` is True, otherwise a\n            `tuple`. When returning a tuple, the first element is a list with the generated images.\n        \"\"\"\n\n        callback = kwargs.pop(\"callback\", None)\n        callback_steps = kwargs.pop(\"callback_steps\", None)\n\n        if callback is not None:\n            deprecate(\n                \"callback\",\n                \"1.0.0\",\n                \"Passing `callback` as an input argument to `__call__` is deprecated, consider use `callback_on_step_end`\",\n            )\n        if callback_steps is not None:\n            deprecate(\n                \"callback_steps\",\n                \"1.0.0\",\n                \"Passing `callback_steps` as an input argument to `__call__` is deprecated, consider use `callback_on_step_end`\",\n            )\n\n        # 0. Default height and width to unet\n        height = height or self.default_sample_size * self.vae_scale_factor\n        width = width or self.default_sample_size * self.vae_scale_factor\n\n        original_size = original_size or (height, width)\n        target_size = target_size or (height, width)\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            prompt_2,\n            height,\n            width,\n            callback_steps,\n            negative_prompt,\n            negative_prompt_2,\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n            ip_adapter_image,\n            ip_adapter_image_embeds,\n            callback_on_step_end_tensor_inputs,\n        )\n\n        self._guidance_scale = guidance_scale\n        self._guidance_rescale = guidance_rescale\n        self._clip_skip = clip_skip\n        self._cross_attention_kwargs = cross_attention_kwargs\n        self._denoising_end = denoising_end\n        self._interrupt = False\n\n        #+#\n        self._pag_scale = pag_scale\n        self._pag_adaptive_scaling = pag_adaptive_scaling\n        self._pag_drop_rate = pag_drop_rate\n        self._pag_applied_layers = pag_applied_layers\n        self._pag_applied_layers_index = pag_applied_layers_index\n        #+#\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        device = self._execution_device\n\n        # 3. Encode input prompt\n        lora_scale = (\n            self.cross_attention_kwargs.get(\"scale\", None) if self.cross_attention_kwargs is not None else None\n        )\n\n        (\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n        ) = self.encode_prompt(\n            prompt=prompt,\n            prompt_2=prompt_2,\n            device=device,\n            num_images_per_prompt=num_images_per_prompt,\n            do_classifier_free_guidance=self.do_classifier_free_guidance,\n            negative_prompt=negative_prompt,\n            negative_prompt_2=negative_prompt_2,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            negative_pooled_prompt_embeds=negative_pooled_prompt_embeds,\n            lora_scale=lora_scale,\n            clip_skip=self.clip_skip,\n        )\n\n        # 4. Prepare timesteps\n        timesteps, num_inference_steps = retrieve_timesteps(self.scheduler, num_inference_steps, device, timesteps)\n\n        # 5. Prepare latent variables\n        num_channels_latents = self.unet.config.in_channels\n        latents = self.prepare_latents(\n            batch_size * num_images_per_prompt,\n            num_channels_latents,\n            height,\n            width,\n            prompt_embeds.dtype,\n            device,\n            generator,\n            latents,\n        )\n\n        # 6. Prepare extra step kwargs.\n        extra_step_kwargs = self.prepare_extra_step_kwargs(generator, eta)\n\n        # 7. Prepare added time ids & embeddings\n        add_text_embeds = pooled_prompt_embeds\n        if self.text_encoder_2 is None:\n            text_encoder_projection_dim = int(pooled_prompt_embeds.shape[-1])\n        else:\n            text_encoder_projection_dim = self.text_encoder_2.config.projection_dim\n\n        add_time_ids = self._get_add_time_ids(\n            original_size,\n            crops_coords_top_left,\n            target_size,\n            dtype=prompt_embeds.dtype,\n            text_encoder_projection_dim=text_encoder_projection_dim,\n        )\n        if negative_original_size is not None and negative_target_size is not None:\n            negative_add_time_ids = self._get_add_time_ids(\n                negative_original_size,\n                negative_crops_coords_top_left,\n                negative_target_size,\n                dtype=prompt_embeds.dtype,\n                text_encoder_projection_dim=text_encoder_projection_dim,\n            )\n        else:\n            negative_add_time_ids = add_time_ids\n\n        if self.do_classifier_free_guidance and not self.do_adversarial_guidance:\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds], dim=0)\n            add_text_embeds = torch.cat([negative_pooled_prompt_embeds, add_text_embeds], dim=0)\n            add_time_ids = torch.cat([negative_add_time_ids, add_time_ids], dim=0)\n        #pag\n        elif not self.do_classifier_free_guidance and self.do_adversarial_guidance:\n            prompt_embeds = torch.cat([prompt_embeds, prompt_embeds], dim=0)\n            add_text_embeds = torch.cat([add_text_embeds, add_text_embeds], dim=0)\n            add_time_ids = torch.cat([add_time_ids, add_time_ids], dim=0)\n        #both\n        elif self.do_classifier_free_guidance and self.do_adversarial_guidance:\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds, prompt_embeds], dim=0)\n            add_text_embeds = torch.cat([negative_pooled_prompt_embeds, add_text_embeds, add_text_embeds], dim=0)\n            add_time_ids = torch.cat([negative_add_time_ids, add_time_ids, add_time_ids], dim=0)\n        #+#\n\n        prompt_embeds = prompt_embeds.to(device)\n        add_text_embeds = add_text_embeds.to(device)\n        add_time_ids = add_time_ids.to(device).repeat(batch_size * num_images_per_prompt, 1)\n\n        if ip_adapter_image is not None or ip_adapter_image_embeds is not None:\n            image_embeds = self.prepare_ip_adapter_image_embeds(\n                ip_adapter_image,\n                ip_adapter_image_embeds,\n                device,\n                batch_size * num_images_per_prompt,\n                self.do_classifier_free_guidance,\n            )\n\n        # 8. Denoising loop\n        num_warmup_steps = max(len(timesteps) - num_inference_steps * self.scheduler.order, 0)\n\n        # 8.1 Apply denoising_end\n        if (\n            self.denoising_end is not None\n            and isinstance(self.denoising_end, float)\n            and self.denoising_end > 0\n            and self.denoising_end < 1\n        ):\n            discrete_timestep_cutoff = int(\n                round(\n                    self.scheduler.config.num_train_timesteps\n                    - (self.denoising_end * self.scheduler.config.num_train_timesteps)\n                )\n            )\n            num_inference_steps = len(list(filter(lambda ts: ts >= discrete_timestep_cutoff, timesteps)))\n            timesteps = timesteps[:num_inference_steps]\n\n        # 9. Optionally get Guidance Scale Embedding\n        timestep_cond = None\n        if self.unet.config.time_cond_proj_dim is not None:\n            guidance_scale_tensor = torch.tensor(self.guidance_scale - 1).repeat(batch_size * num_images_per_prompt)\n            timestep_cond = self.get_guidance_scale_embedding(\n                guidance_scale_tensor, embedding_dim=self.unet.config.time_cond_proj_dim\n            ).to(device=device, dtype=latents.dtype)\n\n        #+#\n        # 10. Create down mid and up layer lists\n        if self.do_adversarial_guidance:\n            down_layers = []\n            mid_layers = []\n            up_layers = []\n            for name, module in self.unet.named_modules():\n                if 'attn1' in name and 'to' not in name:\n                    layer_type = name.split('.')[0].split('_')[0]\n                    if layer_type == 'down':\n                        down_layers.append(module)\n                    elif layer_type == 'mid':\n                        mid_layers.append(module)\n                    elif layer_type == 'up':\n                        up_layers.append(module)\n                    else:\n                        raise ValueError(f\"Invalid layer type: {layer_type}\")\n        #+#\n\n        self._num_timesteps = len(timesteps)\n        if image is None:\n            with self.progress_bar(total=num_inference_steps) as progress_bar:\n                for i, t in enumerate(timesteps):\n                    if self.interrupt:\n                        continue\n\n                    #+#\n                    # #cfg\n                    if self.do_classifier_free_guidance and not self.do_adversarial_guidance:\n                        latent_model_input = torch.cat([latents] * 2)\n                    #pag\n                    elif not self.do_classifier_free_guidance and self.do_adversarial_guidance:\n                        latent_model_input = torch.cat([latents] * 2)\n                    #both\n                    elif self.do_classifier_free_guidance and self.do_adversarial_guidance:\n                        latent_model_input = torch.cat([latents] * 3)\n                    #no\n                    else:\n                        latent_model_input = latents\n\n                    # change attention layer in UNet if use PAG\n                    if self.do_adversarial_guidance:\n\n                        if self.do_classifier_free_guidance:\n                            replace_processor = PAGCFGIdentitySelfAttnProcessor()\n                        else:\n                            replace_processor = PAGIdentitySelfAttnProcessor()\n\n                        if self.pag_applied_layers_index:\n                            drop_layers = self.pag_applied_layers_index\n                            for drop_layer in drop_layers:\n                                layer_number = int(drop_layer[1:])\n                                try:\n                                    if drop_layer[0] == 'd':\n                                        down_layers[layer_number].processor = replace_processor\n                                    elif drop_layer[0] == 'm':\n                                        mid_layers[layer_number].processor = replace_processor\n                                    elif drop_layer[0] == 'u':\n                                        up_layers[layer_number].processor = replace_processor\n                                    else:\n                                        raise ValueError(f\"Invalid layer type: {drop_layer[0]}\")\n                                except IndexError as err:\n                                    raise ValueError(f\"Invalid layer index: {drop_layer}. Available layers: {len(down_layers)} down layers, {len(mid_layers)} mid layers, {len(up_layers)} up layers.\") from err\n                        elif self.pag_applied_layers:\n                            drop_full_layers = self.pag_applied_layers\n                            for drop_full_layer in drop_full_layers:\n                                try:\n                                    if drop_full_layer == \"down\":\n                                        for down_layer in down_layers:\n                                            down_layer.processor = replace_processor\n                                    elif drop_full_layer == \"mid\":\n                                        for mid_layer in mid_layers:\n                                            mid_layer.processor = replace_processor\n                                    elif drop_full_layer == \"up\":\n                                        for up_layer in up_layers:\n                                            up_layer.processor = replace_processor\n                                    else:\n                                        raise ValueError(f\"Invalid layer type: {drop_full_layer}\")\n                                except IndexError as err:\n                                    raise ValueError(f\"Invalid layer index: {drop_full_layer}. Available layers are: down, mid and up. If you need to specify each layer index, you can use `pag_applied_layers_index`\") from err\n                    latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n                    # predict the noise residual\n                    added_cond_kwargs = {\"text_embeds\": add_text_embeds, \"time_ids\": add_time_ids}\n                    if ip_adapter_image is not None or ip_adapter_image_embeds is not None:\n                        added_cond_kwargs[\"image_embeds\"] = image_embeds\n                    noise_pred = self.unet(\n                        latent_model_input,\n                        t,\n                        encoder_hidden_states=prompt_embeds,\n                        timestep_cond=timestep_cond,\n                        cross_attention_kwargs=self.cross_attention_kwargs,\n                        added_cond_kwargs=added_cond_kwargs,\n                        return_dict=False,\n                    )[0]\n\n                    # perform guidance\n                    if self.do_classifier_free_guidance and not self.do_adversarial_guidance:\n                        noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                        noise_pred = noise_pred_uncond + self.guidance_scale * (noise_pred_text - noise_pred_uncond)\n                    # pag\n                    elif not self.do_classifier_free_guidance and self.do_adversarial_guidance:\n                        noise_pred_original, noise_pred_perturb = noise_pred.chunk(2)\n                        signal_scale = self.pag_scale\n                        if self.do_pag_adaptive_scaling:\n                            signal_scale = self.pag_scale - self.pag_adaptive_scaling * (1000-t)\n                            if signal_scale<0:\n                                signal_scale = 0\n                        noise_pred = noise_pred_original + signal_scale * (noise_pred_original - noise_pred_perturb)\n                    # both\n                    elif self.do_classifier_free_guidance and self.do_adversarial_guidance:\n                        noise_pred_uncond, noise_pred_text, noise_pred_text_perturb = noise_pred.chunk(3)\n                        signal_scale = self.pag_scale\n                        if self.do_pag_adaptive_scaling:\n                            signal_scale = self.pag_scale - self.pag_adaptive_scaling * (1000-t)\n                            if signal_scale<0:\n                                signal_scale = 0\n                        noise_pred = noise_pred_text + (self.guidance_scale-1.0) * (noise_pred_text - noise_pred_uncond) + signal_scale * (noise_pred_text - noise_pred_text_perturb)\n                    #+#\n\n                    if self.do_classifier_free_guidance and self.guidance_rescale > 0.0:\n                        # Based on 3.4. in https://arxiv.org/pdf/2305.08891.pdf\n                        noise_pred = rescale_noise_cfg(noise_pred, noise_pred_text, guidance_rescale=self.guidance_rescale)\n\n                    # compute the previous noisy sample x_t -> x_t-1\n                    latents = self.scheduler.step(noise_pred, t, latents, **extra_step_kwargs, return_dict=False)[0]\n\n                    # call the callback, if provided\n                    if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                        progress_bar.update()\n                        if callback is not None and i % callback_steps == 0:\n                            step_idx = i // getattr(self.scheduler, \"order\", 1)\n                            callback(step_idx, t, latents)\n\n                    if XLA_AVAILABLE:\n                        xm.mark_step()\n\n        else:\n            noise = torch.randn(image.shape, dtype=torch.float16).to(self.unet.device)\n            guid_latents = self.scheduler.add_noise(image, noise, timesteps[:slider])\n            guid_latents = [guid_latents[i:i+1] for i in range(guid_latents.size(0))]\n            latents = guid_latents[0]\n\n            _b, _c, latent_size_h, latent_size_w=latents.shape\n            times=torch.ones((1,1,latent_size_h,latent_size_w)).int().to(self.device)*timesteps.max().item()\n            patch_size = 128\n            p=patch_size//2\n\n            @torch.no_grad()\n            def create_gradient_border(mask, gradient_width=5):\n                \"\"\"\n                Needed to average overlapping patches\n                \"\"\"\n                mask = mask.float().to(self.unet.device)\n                inverted_mask = mask\n                distances = F.conv2d(inverted_mask, torch.ones(1, 1, 1, 1, device=device), padding=0)\n                distance_mask = distances <= gradient_width\n                kernel_size = gradient_width * 2 + 1\n                kernel = torch.ones(1, 1, kernel_size, kernel_size, device=device) / (kernel_size ** 2)\n                padded_mask = F.pad(inverted_mask, (gradient_width, gradient_width, gradient_width, gradient_width), mode='reflect')\n                smoothed_distances = F.conv2d(padded_mask, kernel, padding=0).clamp(0, 1)\n                smoothed_mask = (mask + (1 - mask) * smoothed_distances * distance_mask.float()).clamp(0, 1)\n                return smoothed_mask\n\n            prev_latents=latents.clone()\n\n            while times.float().mean() >= 0:\n\n                random_indices=self.get_value_coordinates(times[0,0])[0]\n                i=torch.clamp(random_indices,p,latent_size_h-p).tolist()[0]\n                j=torch.clamp(random_indices,p,latent_size_w-p).tolist()[1]\n\n                # random patch cropping\n                sub_latents=self._random_crop(latents, i, j, patch_size)\n                sub_prev_latents=self._random_crop(prev_latents, i, j, patch_size)\n                sub_time=self._random_crop(times, i, j, patch_size)\n\n                t = times.max()\n                ii = torch.where(t==timesteps)[0].item()\n\n                if ii < slider:\n                    sub_guid_latents = self._random_crop(guid_latents[ii], i, j, patch_size)\n                if ii < len(guid_latents)-1 and ii < slider:\n                    sub_guid_latents_ahead = self._random_crop(guid_latents[ii+1], i, j, patch_size)\n\n                print(f\"\\r PixelSmith progress: {(1 - times.float().mean() / timesteps.max().item()) * 100:.2f}%\",end=\"\")\n\n                if sub_time.float().mean() > 0:\n\n                    # Compute the FFT of both sets of latents\n                    fft_sub_latents = torch.fft.rfft2(sub_latents, dim=(-2, -1), norm='ortho')\n                    fft_sub_guid_latents = torch.fft.rfft2(sub_guid_latents, dim=(-2, -1), norm='ortho')\n                    # Calculate magnitude and phase for both FFTs\n                    magnitude_latents = torch.abs(fft_sub_latents)\n                    complex_latents = torch.exp(1j * torch.angle(fft_sub_latents))\n                    complex_guid_latents = torch.exp(1j * torch.angle(fft_sub_guid_latents))\n                    # Use the arg function to mix phases\n                    if ii < slider:\n                        mixed_phase = torch.angle(complex_latents + complex_guid_latents)\n                    else:\n                        mixed_phase = torch.angle(fft_sub_latents)\n                    # Reconstruct the complex number using the mixed phase and the original magnitude\n                    fft_sub_latents = magnitude_latents * torch.exp(1j * mixed_phase)\n                    sub_latents = torch.fft.irfft2(fft_sub_latents, dim=(-2, -1), norm='ortho')\n\n                    # Generate random numbers for shift directions\n                    shift_left = torch.rand(1).item() < 0.5\n                    shift_down = torch.rand(1).item() < 0.5\n                    #\n                    d_rate = 2\n                    mask_first_row = torch.zeros(1, patch_size)\n                    mask_first_row[:, ::d_rate] = 1\n                    mask_second_row = torch.roll(mask_first_row, shifts=1, dims=1)\n                    for _d in range(1, d_rate):\n                        stacked_rows = torch.concatenate((mask_first_row, mask_second_row), axis=-2)\n                    den_mask = torch.tile(stacked_rows, (patch_size//stacked_rows.shape[0], 1)).to(self.device)\n                    den_mask = den_mask[np.newaxis, np.newaxis, ...].to(self.unet.dtype)\n                    den_mask = torch.roll(den_mask, shifts=(-1 if shift_down else 0, -1 if shift_left else 0), dims=(2, 3))\n\n                    uniques=torch.unique(sub_time)\n                    vmax=uniques[-1]\n                    time_mask=torch.where(sub_time==vmax, 1, 0).to(self.device)\n                    if len(uniques)>1:\n                        sub_latents=sub_latents*time_mask+sub_prev_latents*(time_mask==0)\n\n                    #+#\n                    #cfg\n                    if self.do_classifier_free_guidance and not self.do_adversarial_guidance:\n                        latent_model_input = torch.cat([sub_latents] * 2)\n                    #pag\n                    elif not self.do_classifier_free_guidance and self.do_adversarial_guidance:\n                        latent_model_input = torch.cat([sub_latents] * 2)\n                    #both\n                    elif self.do_classifier_free_guidance and self.do_adversarial_guidance:\n                        latent_model_input = torch.cat([sub_latents] * 3)\n                    #no\n                    else:\n                        latent_model_input = sub_latents\n\n                    # change attention layer in UNet if use PAG\n                    if self.do_adversarial_guidance:\n\n                        if self.do_classifier_free_guidance:\n                            replace_processor = PAGCFGIdentitySelfAttnProcessor()\n                        else:\n                            replace_processor = PAGIdentitySelfAttnProcessor()\n                        if self.pag_applied_layers_index:\n                            drop_layers = self.pag_applied_layers_index\n                            for drop_layer in drop_layers:\n                                layer_number = int(drop_layer[1:])\n                                try:\n                                    if drop_layer[0] == 'd':\n                                        down_layers[layer_number].processor = replace_processor\n                                    elif drop_layer[0] == 'm':\n                                        mid_layers[layer_number].processor = replace_processor\n                                    elif drop_layer[0] == 'u':\n                                        up_layers[layer_number].processor = replace_processor\n                                    else:\n                                        raise ValueError(f\"Invalid layer type: {drop_layer[0]}\")\n                                except IndexError as err:\n                                    raise ValueError(f\"Invalid layer index: {drop_layer}. Available layers: {len(down_layers)} down layers, {len(mid_layers)} mid layers, {len(up_layers)} up layers.\") from err\n                        elif self.pag_applied_layers:\n                            drop_full_layers = self.pag_applied_layers\n                            for drop_full_layer in drop_full_layers:\n                                try:\n                                    if drop_full_layer == \"down\":\n                                        for down_layer in down_layers:\n                                            down_layer.processor = replace_processor\n                                    elif drop_full_layer == \"mid\":\n                                        for mid_layer in mid_layers:\n                                            mid_layer.processor = replace_processor\n                                    elif drop_full_layer == \"up\":\n                                        for up_layer in up_layers:\n                                            up_layer.processor = replace_processor\n                                    else:\n                                        raise ValueError(f\"Invalid layer type: {drop_full_layer}\")\n                                except IndexError as err:\n                                    raise ValueError(f\"Invalid layer index: {drop_full_layer}. Available layers are: down, mid and up. If you need to specify each layer index, you can use `pag_applied_layers_index`\") from err\n                    #+#\n\n                    latent_model_input = self.scheduler.scale_model_input(latent_model_input, sub_time.max().item()).to(self.unet.dtype)\n\n                    add_time_ids[:,0] = latents.shape[-2] * self.vae_scale_factor\n                    add_time_ids[:,4] = latents.shape[-2] * self.vae_scale_factor\n                    add_time_ids[:,1] = latents.shape[-1] * self.vae_scale_factor\n                    add_time_ids[:,5] = latents.shape[-1] * self.vae_scale_factor\n                    add_time_ids[:,2] = (j-64) * self.vae_scale_factor #top\n                    add_time_ids[:,3] = (j-64) * self.vae_scale_factor #left\n                    added_cond_kwargs = {\"text_embeds\": add_text_embeds, \"time_ids\": add_time_ids}\n                    if ip_adapter_image is not None or ip_adapter_image_embeds is not None:\n                        added_cond_kwargs[\"image_embeds\"] = image_embeds\n                    noise_pred = self.unet(\n                        latent_model_input,\n                        sub_time.max().item(),\n                        encoder_hidden_states=prompt_embeds,\n                        timestep_cond=timestep_cond,\n                        cross_attention_kwargs=self.cross_attention_kwargs,\n                        added_cond_kwargs=added_cond_kwargs,\n                        return_dict=False,\n                    )[0]\n\n                    # perform guidance\n                    if self.do_classifier_free_guidance and not self.do_adversarial_guidance:\n                        noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                        noise_pred = noise_pred_uncond + self.guidance_scale * (noise_pred_text - noise_pred_uncond)\n                    # pag\n                    elif not self.do_classifier_free_guidance and self.do_adversarial_guidance:\n                        noise_pred_original, noise_pred_perturb = noise_pred.chunk(2)\n                        signal_scale = self.pag_scale\n                        if self.do_pag_adaptive_scaling:\n                            signal_scale = self.pag_scale - self.pag_adaptive_scaling * (1000-sub_time.max().item())\n                            if signal_scale<0:\n                                signal_scale = 0\n                        noise_pred = noise_pred_original + signal_scale * (noise_pred_original - noise_pred_perturb)\n                    # both\n                    elif self.do_classifier_free_guidance and self.do_adversarial_guidance:\n                        noise_pred_uncond, noise_pred_text, noise_pred_text_perturb = noise_pred.chunk(3)\n                        signal_scale = self.pag_scale\n                        if self.do_pag_adaptive_scaling:\n                            signal_scale = self.pag_scale - self.pag_adaptive_scaling * (1000-sub_time.max().item())\n                            if signal_scale<0:\n                                signal_scale = 0\n                        noise_pred = noise_pred_text + (self.guidance_scale-1.0) * (noise_pred_text - noise_pred_uncond) + signal_scale * (noise_pred_text - noise_pred_text_perturb)\n                    #+#\n                    if self.do_classifier_free_guidance and self.guidance_rescale > 0.0:\n                        # Based on 3.4. in https://arxiv.org/pdf/2305.08891.pdf\n                        noise_pred = rescale_noise_cfg(noise_pred, noise_pred_text, guidance_rescale=self.guidance_rescale)\n                    # compute the previous noisy sample x_t -> x_t-1\n                    try:\n                        sub_latents = self.scheduler.step(noise_pred, sub_time.max().item(), sub_latents, **extra_step_kwargs, return_dict=False)[0]\n                    except Exception as e:\n                        print('PixelSmith', e)\n\n                    smoothed_time_mask = create_gradient_border(time_mask, gradient_width=10)\n                    full_replace_mask = smoothed_time_mask == 1\n                    no_replace_mask = smoothed_time_mask == 0\n                    gradient_mask = (smoothed_time_mask > 0) & (smoothed_time_mask < 1)\n\n                    if ii<len(guid_latents)-1:\n                        sub_latents = sub_latents*(1-den_mask) + sub_guid_latents_ahead*den_mask if ii<slider else sub_latents\n\n                    latents[..., i-p:i+p, j-p:j+p] = sub_latents * full_replace_mask + \\\n                                  latents[..., i-p:i+p, j-p:j+p] * no_replace_mask + \\\n                                  (sub_latents + latents[..., i-p:i+p, j-p:j+p]) / 2 * gradient_mask\n\n                    if times.float().mean()>(timesteps.min().item()):\n                        next_timestep_index = (timesteps == sub_time.max()).nonzero(as_tuple=True)[0][-1]\n                        next_timestep = timesteps[next_timestep_index + 1].item()\n                        times[...,i-p:i+p,j-p:j+p]=torch.where(sub_time==sub_time.max(), torch.ones_like(sub_time).to(sub_time.device)*next_timestep, sub_time)\n                    else:\n                        times[...,i-p:i+p,j-p:j+p]=torch.where(sub_time==sub_time.max(), torch.ones_like(sub_time).to(sub_time.device)*0, sub_time)\n\n                    if torch.all(times == times.max()):\n                        prev_latents=latents.clone()\n\n                    if times.float().mean()==0:\n                        break\n\n        if output_type != \"latent\":\n            image = self.vae.tiled_decode(latents.to(self.vae.dtype) / self.vae.config.scaling_factor, return_dict=False)[0]\n        else:\n            image = latents\n\n        image = self.image_processor.postprocess(image, output_type=output_type)\n\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return (image,)\n\n        #+#\n        #Change the attention layers back to original ones after PAG was applied\n        if self.do_adversarial_guidance:\n            if self.pag_applied_layers_index:\n                drop_layers = self.pag_applied_layers_index\n                for drop_layer in drop_layers:\n                    layer_number = int(drop_layer[1:])\n                    try:\n                        if drop_layer[0] == 'd':\n                            down_layers[layer_number].processor = AttnProcessor2_0()\n                        elif drop_layer[0] == 'm':\n                            mid_layers[layer_number].processor = AttnProcessor2_0()\n                        elif drop_layer[0] == 'u':\n                            up_layers[layer_number].processor = AttnProcessor2_0()\n                        else:\n                            raise ValueError(f\"Invalid layer type: {drop_layer[0]}\")\n                    except IndexError as err:\n                        raise ValueError(f\"Invalid layer index: {drop_layer}. Available layers: {len(down_layers)} down layers, {len(mid_layers)} mid layers, {len(up_layers)} up layers.\") from err\n            elif self.pag_applied_layers:\n                drop_full_layers = self.pag_applied_layers\n                for drop_full_layer in drop_full_layers:\n                    try:\n                        if drop_full_layer == \"down\":\n                            for down_layer in down_layers:\n                                down_layer.processor = AttnProcessor2_0()\n                        elif drop_full_layer == \"mid\":\n                            for mid_layer in mid_layers:\n                                mid_layer.processor = AttnProcessor2_0()\n                        elif drop_full_layer == \"up\":\n                            for up_layer in up_layers:\n                                up_layer.processor = AttnProcessor2_0()\n                        else:\n                            raise ValueError(f\"Invalid layer type: {drop_full_layer}\")\n                    except IndexError as err:\n                        raise ValueError(f\"Invalid layer index: {drop_full_layer}. Available layers are: down, mid and up. If you need to specify each layer index, you can use `pag_applied_layers_index`\") from err\n        #+#\n\n        return ImagePipelineOutput(images=image)\n\n# %%\n"
  },
  {
    "path": "scripts/pixelsmith/vae.py",
    "content": "# Copyright 2023 The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\nfrom dataclasses import dataclass\nfrom typing import Optional, Tuple\n\nimport numpy as np\nimport torch\nimport torch.nn as nn\n\nfrom diffusers.utils import BaseOutput, is_torch_version\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom diffusers.models.activations import get_activation\nfrom diffusers.models.attention_processor import SpatialNorm\nfrom diffusers.models.unets.unet_2d_blocks import (\n    AutoencoderTinyBlock,\n    UNetMidBlock2D,\n    get_down_block,\n    get_up_block,\n)\n\n\n@dataclass\nclass DecoderOutput(BaseOutput):\n    r\"\"\"\n    Output of decoding method.\n\n    Args:\n        sample (`torch.FloatTensor` of shape `(batch_size, num_channels, height, width)`):\n            The decoded output sample from the last layer of the model.\n    \"\"\"\n\n    sample: torch.FloatTensor\n\n\nclass Encoder(nn.Module):\n    r\"\"\"\n    The `Encoder` layer of a variational autoencoder that encodes its input into a latent representation.\n\n    Args:\n        in_channels (`int`, *optional*, defaults to 3):\n            The number of input channels.\n        out_channels (`int`, *optional*, defaults to 3):\n            The number of output channels.\n        down_block_types (`Tuple[str, ...]`, *optional*, defaults to `(\"DownEncoderBlock2D\",)`):\n            The types of down blocks to use. See `~diffusers.models.unet_2d_blocks.get_down_block` for available\n            options.\n        block_out_channels (`Tuple[int, ...]`, *optional*, defaults to `(64,)`):\n            The number of output channels for each block.\n        layers_per_block (`int`, *optional*, defaults to 2):\n            The number of layers per block.\n        norm_num_groups (`int`, *optional*, defaults to 32):\n            The number of groups for normalization.\n        act_fn (`str`, *optional*, defaults to `\"silu\"`):\n            The activation function to use. See `~diffusers.models.activations.get_activation` for available options.\n        double_z (`bool`, *optional*, defaults to `True`):\n            Whether to double the number of output channels for the last block.\n    \"\"\"\n\n    def __init__(\n        self,\n        in_channels: int = 3,\n        out_channels: int = 3,\n        down_block_types: Tuple[str, ...] = (\"DownEncoderBlock2D\",),\n        block_out_channels: Tuple[int, ...] = (64,),\n        layers_per_block: int = 2,\n        norm_num_groups: int = 32,\n        act_fn: str = \"silu\",\n        double_z: bool = True,\n        mid_block_add_attention=True,\n    ):\n        super().__init__()\n        self.layers_per_block = layers_per_block\n\n        self.conv_in = nn.Conv2d(\n            in_channels,\n            block_out_channels[0],\n            kernel_size=3,\n            stride=1,\n            padding=1,\n        )\n\n        self.mid_block = None\n        self.down_blocks = nn.ModuleList([])\n\n        # down\n        output_channel = block_out_channels[0]\n        for i, down_block_type in enumerate(down_block_types):\n            input_channel = output_channel\n            output_channel = block_out_channels[i]\n            is_final_block = i == len(block_out_channels) - 1\n\n            down_block = get_down_block(\n                down_block_type,\n                num_layers=self.layers_per_block,\n                in_channels=input_channel,\n                out_channels=output_channel,\n                add_downsample=not is_final_block,\n                resnet_eps=1e-6,\n                downsample_padding=0,\n                resnet_act_fn=act_fn,\n                resnet_groups=norm_num_groups,\n                attention_head_dim=output_channel,\n                temb_channels=None,\n            )\n            self.down_blocks.append(down_block)\n\n        # mid\n        self.mid_block = UNetMidBlock2D(\n            in_channels=block_out_channels[-1],\n            resnet_eps=1e-6,\n            resnet_act_fn=act_fn,\n            output_scale_factor=1,\n            resnet_time_scale_shift=\"default\",\n            attention_head_dim=block_out_channels[-1],\n            resnet_groups=norm_num_groups,\n            temb_channels=None,\n            add_attention=mid_block_add_attention,\n        )\n\n        # out\n        self.conv_norm_out = nn.GroupNorm(num_channels=block_out_channels[-1], num_groups=norm_num_groups, eps=1e-6)\n        self.conv_act = nn.SiLU()\n\n        conv_out_channels = 2 * out_channels if double_z else out_channels\n        self.conv_out = nn.Conv2d(block_out_channels[-1], conv_out_channels, 3, padding=1)\n\n        self.gradient_checkpointing = False\n\n    def forward(self, sample: torch.FloatTensor) -> torch.FloatTensor:\n        r\"\"\"The forward method of the `Encoder` class.\"\"\"\n\n        sample = self.conv_in(sample)\n\n        if self.training and self.gradient_checkpointing:\n\n            def create_custom_forward(module):\n                def custom_forward(*inputs):\n                    return module(*inputs)\n\n                return custom_forward\n\n            # down\n            if is_torch_version(\">=\", \"1.11.0\"):\n                for down_block in self.down_blocks:\n                    sample = torch.utils.checkpoint.checkpoint(\n                        create_custom_forward(down_block), sample, use_reentrant=False\n                    )\n                # middle\n                sample = torch.utils.checkpoint.checkpoint(\n                    create_custom_forward(self.mid_block), sample, use_reentrant=False\n                )\n            else:\n                for down_block in self.down_blocks:\n                    sample = torch.utils.checkpoint.checkpoint(create_custom_forward(down_block), sample)\n                # middle\n                sample = torch.utils.checkpoint.checkpoint(create_custom_forward(self.mid_block), sample)\n\n        else:\n            # down\n            for down_block in self.down_blocks:\n                sample = down_block(sample)\n\n            # middle\n            sample = self.mid_block(sample)\n\n        # post-process\n        sample = self.conv_norm_out(sample)\n        sample = self.conv_act(sample)\n        sample = self.conv_out(sample)\n\n        return sample\n\n\nclass Decoder(nn.Module):\n    r\"\"\"\n    The `Decoder` layer of a variational autoencoder that decodes its latent representation into an output sample.\n\n    Args:\n        in_channels (`int`, *optional*, defaults to 3):\n            The number of input channels.\n        out_channels (`int`, *optional*, defaults to 3):\n            The number of output channels.\n        up_block_types (`Tuple[str, ...]`, *optional*, defaults to `(\"UpDecoderBlock2D\",)`):\n            The types of up blocks to use. See `~diffusers.models.unet_2d_blocks.get_up_block` for available options.\n        block_out_channels (`Tuple[int, ...]`, *optional*, defaults to `(64,)`):\n            The number of output channels for each block.\n        layers_per_block (`int`, *optional*, defaults to 2):\n            The number of layers per block.\n        norm_num_groups (`int`, *optional*, defaults to 32):\n            The number of groups for normalization.\n        act_fn (`str`, *optional*, defaults to `\"silu\"`):\n            The activation function to use. See `~diffusers.models.activations.get_activation` for available options.\n        norm_type (`str`, *optional*, defaults to `\"group\"`):\n            The normalization type to use. Can be either `\"group\"` or `\"spatial\"`.\n    \"\"\"\n\n    def __init__(\n        self,\n        in_channels: int = 3,\n        out_channels: int = 3,\n        up_block_types: Tuple[str, ...] = (\"UpDecoderBlock2D\",),\n        block_out_channels: Tuple[int, ...] = (64,),\n        layers_per_block: int = 2,\n        norm_num_groups: int = 32,\n        act_fn: str = \"silu\",\n        norm_type: str = \"group\",  # group, spatial\n        mid_block_add_attention=True,\n    ):\n        super().__init__()\n        self.layers_per_block = layers_per_block\n\n        self.conv_in = nn.Conv2d(\n            in_channels,\n            block_out_channels[-1],\n            kernel_size=3,\n            stride=1,\n            padding=1,\n        )\n\n        self.mid_block = None\n        self.up_blocks = nn.ModuleList([])\n\n        temb_channels = in_channels if norm_type == \"spatial\" else None\n\n        # mid\n        self.mid_block = UNetMidBlock2D(\n            in_channels=block_out_channels[-1],\n            resnet_eps=1e-6,\n            resnet_act_fn=act_fn,\n            output_scale_factor=1,\n            resnet_time_scale_shift=\"default\" if norm_type == \"group\" else norm_type,\n            attention_head_dim=block_out_channels[-1],\n            resnet_groups=norm_num_groups,\n            temb_channels=temb_channels,\n            add_attention=mid_block_add_attention,\n        )\n\n        # up\n        reversed_block_out_channels = list(reversed(block_out_channels))\n        output_channel = reversed_block_out_channels[0]\n        for i, up_block_type in enumerate(up_block_types):\n            prev_output_channel = output_channel\n            output_channel = reversed_block_out_channels[i]\n\n            is_final_block = i == len(block_out_channels) - 1\n\n            up_block = get_up_block(\n                up_block_type,\n                num_layers=self.layers_per_block + 1,\n                in_channels=prev_output_channel,\n                out_channels=output_channel,\n                prev_output_channel=None,\n                add_upsample=not is_final_block,\n                resnet_eps=1e-6,\n                resnet_act_fn=act_fn,\n                resnet_groups=norm_num_groups,\n                attention_head_dim=output_channel,\n                temb_channels=temb_channels,\n                resnet_time_scale_shift=norm_type,\n            )\n            self.up_blocks.append(up_block)\n            prev_output_channel = output_channel\n\n        # out\n        if norm_type == \"spatial\":\n            self.conv_norm_out = SpatialNorm(block_out_channels[0], temb_channels)\n        else:\n            self.conv_norm_out = nn.GroupNorm(num_channels=block_out_channels[0], num_groups=norm_num_groups, eps=1e-6)\n        self.conv_act = nn.SiLU()\n        self.conv_out = nn.Conv2d(block_out_channels[0], out_channels, 3, padding=1)\n\n        self.gradient_checkpointing = False\n\n    def forward(\n        self,\n        sample: torch.FloatTensor,\n        latent_embeds: Optional[torch.FloatTensor] = None,\n    ) -> torch.FloatTensor:\n        r\"\"\"The forward method of the `Decoder` class.\"\"\"\n\n        sample = self.conv_in(sample)\n\n        upscale_dtype = next(iter(self.up_blocks.parameters())).dtype\n        if self.training and self.gradient_checkpointing:\n\n            def create_custom_forward(module):\n                def custom_forward(*inputs):\n                    return module(*inputs)\n\n                return custom_forward\n\n            if is_torch_version(\">=\", \"1.11.0\"):\n                # middle\n                sample = torch.utils.checkpoint.checkpoint(\n                    create_custom_forward(self.mid_block),\n                    sample,\n                    latent_embeds,\n                    use_reentrant=False,\n                )\n                sample = sample.to(upscale_dtype)\n\n                # up\n                for up_block in self.up_blocks:\n                    sample = torch.utils.checkpoint.checkpoint(\n                        create_custom_forward(up_block),\n                        sample,\n                        latent_embeds,\n                        use_reentrant=False,\n                    )\n            else:\n                # middle\n                sample = torch.utils.checkpoint.checkpoint(\n                    create_custom_forward(self.mid_block), sample, latent_embeds\n                )\n                sample = sample.to(upscale_dtype)\n\n                # up\n                for up_block in self.up_blocks:\n                    sample = torch.utils.checkpoint.checkpoint(create_custom_forward(up_block), sample, latent_embeds)\n        else:\n            # middle\n            sample = self.mid_block(sample, latent_embeds)\n            sample = sample.to(upscale_dtype)\n\n            # up\n            for up_block in self.up_blocks:\n                sample = up_block(sample, latent_embeds)\n\n        # post-process\n        if latent_embeds is None:\n            sample = self.conv_norm_out(sample)\n        else:\n            sample = self.conv_norm_out(sample, latent_embeds)\n        sample = self.conv_act(sample)\n        sample = self.conv_out(sample)\n\n        return sample\n\n\nclass UpSample(nn.Module):\n    r\"\"\"\n    The `UpSample` layer of a variational autoencoder that upsamples its input.\n\n    Args:\n        in_channels (`int`, *optional*, defaults to 3):\n            The number of input channels.\n        out_channels (`int`, *optional*, defaults to 3):\n            The number of output channels.\n    \"\"\"\n\n    def __init__(\n        self,\n        in_channels: int,\n        out_channels: int,\n    ) -> None:\n        super().__init__()\n        self.in_channels = in_channels\n        self.out_channels = out_channels\n        self.deconv = nn.ConvTranspose2d(in_channels, out_channels, kernel_size=4, stride=2, padding=1)\n\n    def forward(self, x: torch.FloatTensor) -> torch.FloatTensor:\n        r\"\"\"The forward method of the `UpSample` class.\"\"\"\n        x = torch.relu(x)\n        x = self.deconv(x)\n        return x\n\n\nclass MaskConditionEncoder(nn.Module):\n    \"\"\"\n    used in AsymmetricAutoencoderKL\n    \"\"\"\n\n    def __init__(\n        self,\n        in_ch: int,\n        out_ch: int = 192,\n        res_ch: int = 768,\n        stride: int = 16,\n    ) -> None:\n        super().__init__()\n\n        channels = []\n        while stride > 1:\n            stride = stride // 2\n            in_ch_ = out_ch * 2\n            if out_ch > res_ch:\n                out_ch = res_ch\n            if stride == 1:\n                in_ch_ = res_ch\n            channels.append((in_ch_, out_ch))\n            out_ch *= 2\n\n        out_channels = []\n        for _in_ch, _out_ch in channels:\n            out_channels.append(_out_ch)\n        out_channels.append(channels[-1][0])\n\n        layers = []\n        in_ch_ = in_ch\n        for l in range(len(out_channels)):\n            out_ch_ = out_channels[l]\n            if l == 0 or l == 1:\n                layers.append(nn.Conv2d(in_ch_, out_ch_, kernel_size=3, stride=1, padding=1))\n            else:\n                layers.append(nn.Conv2d(in_ch_, out_ch_, kernel_size=4, stride=2, padding=1))\n            in_ch_ = out_ch_\n\n        self.layers = nn.Sequential(*layers)\n\n    def forward(self, x: torch.FloatTensor, mask=None) -> torch.FloatTensor:\n        r\"\"\"The forward method of the `MaskConditionEncoder` class.\"\"\"\n        out = {}\n        for l in range(len(self.layers)):\n            layer = self.layers[l]\n            x = layer(x)\n            out[str(tuple(x.shape))] = x\n            x = torch.relu(x)\n        return out\n\n\nclass MaskConditionDecoder(nn.Module):\n    r\"\"\"The `MaskConditionDecoder` should be used in combination with [`AsymmetricAutoencoderKL`] to enhance the model's\n    decoder with a conditioner on the mask and masked image.\n\n    Args:\n        in_channels (`int`, *optional*, defaults to 3):\n            The number of input channels.\n        out_channels (`int`, *optional*, defaults to 3):\n            The number of output channels.\n        up_block_types (`Tuple[str, ...]`, *optional*, defaults to `(\"UpDecoderBlock2D\",)`):\n            The types of up blocks to use. See `~diffusers.models.unet_2d_blocks.get_up_block` for available options.\n        block_out_channels (`Tuple[int, ...]`, *optional*, defaults to `(64,)`):\n            The number of output channels for each block.\n        layers_per_block (`int`, *optional*, defaults to 2):\n            The number of layers per block.\n        norm_num_groups (`int`, *optional*, defaults to 32):\n            The number of groups for normalization.\n        act_fn (`str`, *optional*, defaults to `\"silu\"`):\n            The activation function to use. See `~diffusers.models.activations.get_activation` for available options.\n        norm_type (`str`, *optional*, defaults to `\"group\"`):\n            The normalization type to use. Can be either `\"group\"` or `\"spatial\"`.\n    \"\"\"\n\n    def __init__(\n        self,\n        in_channels: int = 3,\n        out_channels: int = 3,\n        up_block_types: Tuple[str, ...] = (\"UpDecoderBlock2D\",),\n        block_out_channels: Tuple[int, ...] = (64,),\n        layers_per_block: int = 2,\n        norm_num_groups: int = 32,\n        act_fn: str = \"silu\",\n        norm_type: str = \"group\",  # group, spatial\n    ):\n        super().__init__()\n        self.layers_per_block = layers_per_block\n\n        self.conv_in = nn.Conv2d(\n            in_channels,\n            block_out_channels[-1],\n            kernel_size=3,\n            stride=1,\n            padding=1,\n        )\n\n        self.mid_block = None\n        self.up_blocks = nn.ModuleList([])\n\n        temb_channels = in_channels if norm_type == \"spatial\" else None\n\n        # mid\n        self.mid_block = UNetMidBlock2D(\n            in_channels=block_out_channels[-1],\n            resnet_eps=1e-6,\n            resnet_act_fn=act_fn,\n            output_scale_factor=1,\n            resnet_time_scale_shift=\"default\" if norm_type == \"group\" else norm_type,\n            attention_head_dim=block_out_channels[-1],\n            resnet_groups=norm_num_groups,\n            temb_channels=temb_channels,\n        )\n\n        # up\n        reversed_block_out_channels = list(reversed(block_out_channels))\n        output_channel = reversed_block_out_channels[0]\n        for i, up_block_type in enumerate(up_block_types):\n            prev_output_channel = output_channel\n            output_channel = reversed_block_out_channels[i]\n\n            is_final_block = i == len(block_out_channels) - 1\n\n            up_block = get_up_block(\n                up_block_type,\n                num_layers=self.layers_per_block + 1,\n                in_channels=prev_output_channel,\n                out_channels=output_channel,\n                prev_output_channel=None,\n                add_upsample=not is_final_block,\n                resnet_eps=1e-6,\n                resnet_act_fn=act_fn,\n                resnet_groups=norm_num_groups,\n                attention_head_dim=output_channel,\n                temb_channels=temb_channels,\n                resnet_time_scale_shift=norm_type,\n            )\n            self.up_blocks.append(up_block)\n            prev_output_channel = output_channel\n\n        # condition encoder\n        self.condition_encoder = MaskConditionEncoder(\n            in_ch=out_channels,\n            out_ch=block_out_channels[0],\n            res_ch=block_out_channels[-1],\n        )\n\n        # out\n        if norm_type == \"spatial\":\n            self.conv_norm_out = SpatialNorm(block_out_channels[0], temb_channels)\n        else:\n            self.conv_norm_out = nn.GroupNorm(num_channels=block_out_channels[0], num_groups=norm_num_groups, eps=1e-6)\n        self.conv_act = nn.SiLU()\n        self.conv_out = nn.Conv2d(block_out_channels[0], out_channels, 3, padding=1)\n\n        self.gradient_checkpointing = False\n\n    def forward(\n        self,\n        z: torch.FloatTensor,\n        image: Optional[torch.FloatTensor] = None,\n        mask: Optional[torch.FloatTensor] = None,\n        latent_embeds: Optional[torch.FloatTensor] = None,\n    ) -> torch.FloatTensor:\n        r\"\"\"The forward method of the `MaskConditionDecoder` class.\"\"\"\n        sample = z\n        sample = self.conv_in(sample)\n\n        upscale_dtype = next(iter(self.up_blocks.parameters())).dtype\n        if self.training and self.gradient_checkpointing:\n\n            def create_custom_forward(module):\n                def custom_forward(*inputs):\n                    return module(*inputs)\n\n                return custom_forward\n\n            if is_torch_version(\">=\", \"1.11.0\"):\n                # middle\n                sample = torch.utils.checkpoint.checkpoint(\n                    create_custom_forward(self.mid_block),\n                    sample,\n                    latent_embeds,\n                    use_reentrant=False,\n                )\n                sample = sample.to(upscale_dtype)\n\n                # condition encoder\n                if image is not None and mask is not None:\n                    masked_image = (1 - mask) * image\n                    im_x = torch.utils.checkpoint.checkpoint(\n                        create_custom_forward(self.condition_encoder),\n                        masked_image,\n                        mask,\n                        use_reentrant=False,\n                    )\n\n                # up\n                for up_block in self.up_blocks:\n                    if image is not None and mask is not None:\n                        sample_ = im_x[str(tuple(sample.shape))]\n                        mask_ = nn.functional.interpolate(mask, size=sample.shape[-2:], mode=\"nearest\")\n                        sample = sample * mask_ + sample_ * (1 - mask_)\n                    sample = torch.utils.checkpoint.checkpoint(\n                        create_custom_forward(up_block),\n                        sample,\n                        latent_embeds,\n                        use_reentrant=False,\n                    )\n                if image is not None and mask is not None:\n                    sample = sample * mask + im_x[str(tuple(sample.shape))] * (1 - mask)\n            else:\n                # middle\n                sample = torch.utils.checkpoint.checkpoint(\n                    create_custom_forward(self.mid_block), sample, latent_embeds\n                )\n                sample = sample.to(upscale_dtype)\n\n                # condition encoder\n                if image is not None and mask is not None:\n                    masked_image = (1 - mask) * image\n                    im_x = torch.utils.checkpoint.checkpoint(\n                        create_custom_forward(self.condition_encoder),\n                        masked_image,\n                        mask,\n                    )\n\n                # up\n                for up_block in self.up_blocks:\n                    if image is not None and mask is not None:\n                        sample_ = im_x[str(tuple(sample.shape))]\n                        mask_ = nn.functional.interpolate(mask, size=sample.shape[-2:], mode=\"nearest\")\n                        sample = sample * mask_ + sample_ * (1 - mask_)\n                    sample = torch.utils.checkpoint.checkpoint(create_custom_forward(up_block), sample, latent_embeds)\n                if image is not None and mask is not None:\n                    sample = sample * mask + im_x[str(tuple(sample.shape))] * (1 - mask)\n        else:\n            # middle\n            sample = self.mid_block(sample, latent_embeds)\n            sample = sample.to(upscale_dtype)\n\n            # condition encoder\n            if image is not None and mask is not None:\n                masked_image = (1 - mask) * image\n                im_x = self.condition_encoder(masked_image, mask)\n\n            # up\n            for up_block in self.up_blocks:\n                if image is not None and mask is not None:\n                    sample_ = im_x[str(tuple(sample.shape))]\n                    mask_ = nn.functional.interpolate(mask, size=sample.shape[-2:], mode=\"nearest\")\n                    sample = sample * mask_ + sample_ * (1 - mask_)\n                sample = up_block(sample, latent_embeds)\n            if image is not None and mask is not None:\n                sample = sample * mask + im_x[str(tuple(sample.shape))] * (1 - mask)\n\n        # post-process\n        if latent_embeds is None:\n            sample = self.conv_norm_out(sample)\n        else:\n            sample = self.conv_norm_out(sample, latent_embeds)\n        sample = self.conv_act(sample)\n        sample = self.conv_out(sample)\n\n        return sample\n\n\nclass VectorQuantizer(nn.Module):\n    \"\"\"\n    Improved version over VectorQuantizer, can be used as a drop-in replacement. Mostly avoids costly matrix\n    multiplications and allows for post-hoc remapping of indices.\n    \"\"\"\n\n    # NOTE: due to a bug the beta term was applied to the wrong term. for\n    # backwards compatibility we use the buggy version by default, but you can\n    # specify legacy=False to fix it.\n    def __init__(\n        self,\n        n_e: int,\n        vq_embed_dim: int,\n        beta: float,\n        remap=None,\n        unknown_index: str = \"random\",\n        sane_index_shape: bool = False,\n        legacy: bool = True,\n    ):\n        super().__init__()\n        self.n_e = n_e\n        self.vq_embed_dim = vq_embed_dim\n        self.beta = beta\n        self.legacy = legacy\n\n        self.embedding = nn.Embedding(self.n_e, self.vq_embed_dim)\n        self.embedding.weight.data.uniform_(-1.0 / self.n_e, 1.0 / self.n_e)\n\n        self.remap = remap\n        if self.remap is not None:\n            self.register_buffer(\"used\", torch.tensor(np.load(self.remap)))\n            self.used: torch.Tensor\n            self.re_embed = self.used.shape[0]\n            self.unknown_index = unknown_index  # \"random\" or \"extra\" or integer\n            if self.unknown_index == \"extra\":\n                self.unknown_index = self.re_embed\n                self.re_embed = self.re_embed + 1\n        else:\n            self.re_embed = n_e\n\n        self.sane_index_shape = sane_index_shape\n\n    def remap_to_used(self, inds: torch.LongTensor) -> torch.LongTensor:\n        ishape = inds.shape\n        assert len(ishape) > 1\n        inds = inds.reshape(ishape[0], -1)\n        used = self.used.to(inds)\n        match = (inds[:, :, None] == used[None, None, ...]).long()\n        new = match.argmax(-1)\n        unknown = match.sum(2) < 1\n        if self.unknown_index == \"random\":\n            new[unknown] = torch.randint(0, self.re_embed, size=new[unknown].shape).to(device=new.device)\n        else:\n            new[unknown] = self.unknown_index\n        return new.reshape(ishape)\n\n    def unmap_to_all(self, inds: torch.LongTensor) -> torch.LongTensor:\n        ishape = inds.shape\n        assert len(ishape) > 1\n        inds = inds.reshape(ishape[0], -1)\n        used = self.used.to(inds)\n        if self.re_embed > self.used.shape[0]:  # extra token\n            inds[inds >= self.used.shape[0]] = 0  # simply set to zero\n        back = torch.gather(used[None, :][inds.shape[0] * [0], :], 1, inds)\n        return back.reshape(ishape)\n\n    def forward(self, z: torch.FloatTensor) -> Tuple[torch.FloatTensor, torch.FloatTensor, Tuple]:\n        # reshape z -> (batch, height, width, channel) and flatten\n        z = z.permute(0, 2, 3, 1).contiguous()\n        z_flattened = z.view(-1, self.vq_embed_dim)\n\n        # distances from z to embeddings e_j (z - e)^2 = z^2 + e^2 - 2 e * z\n        min_encoding_indices = torch.argmin(torch.cdist(z_flattened, self.embedding.weight), dim=1)\n\n        z_q = self.embedding(min_encoding_indices).view(z.shape)\n        perplexity = None\n        min_encodings = None\n\n        # compute loss for embedding\n        if not self.legacy:\n            loss = self.beta * torch.mean((z_q.detach() - z) ** 2) + torch.mean((z_q - z.detach()) ** 2)\n        else:\n            loss = torch.mean((z_q.detach() - z) ** 2) + self.beta * torch.mean((z_q - z.detach()) ** 2)\n\n        # preserve gradients\n        z_q: torch.FloatTensor = z + (z_q - z).detach()\n\n        # reshape back to match original input shape\n        z_q = z_q.permute(0, 3, 1, 2).contiguous()\n\n        if self.remap is not None:\n            min_encoding_indices = min_encoding_indices.reshape(z.shape[0], -1)  # add batch axis\n            min_encoding_indices = self.remap_to_used(min_encoding_indices)\n            min_encoding_indices = min_encoding_indices.reshape(-1, 1)  # flatten\n\n        if self.sane_index_shape:\n            min_encoding_indices = min_encoding_indices.reshape(z_q.shape[0], z_q.shape[2], z_q.shape[3])\n\n        return z_q, loss, (perplexity, min_encodings, min_encoding_indices)\n\n    def get_codebook_entry(self, indices: torch.LongTensor, shape: Tuple[int, ...]) -> torch.FloatTensor:\n        # shape specifying (batch, height, width, channel)\n        if self.remap is not None:\n            indices = indices.reshape(shape[0], -1)  # add batch axis\n            indices = self.unmap_to_all(indices)\n            indices = indices.reshape(-1)  # flatten again\n\n        # get quantized latent vectors\n        z_q: torch.FloatTensor = self.embedding(indices)\n\n        if shape is not None:\n            z_q = z_q.view(shape)\n            # reshape back to match original input shape\n            z_q = z_q.permute(0, 3, 1, 2).contiguous()\n\n        return z_q\n\n\nclass DiagonalGaussianDistribution(object):\n    def __init__(self, parameters: torch.Tensor, deterministic: bool = False):\n        self.parameters = parameters\n        self.mean, self.logvar = torch.chunk(parameters, 2, dim=1)\n        self.logvar = torch.clamp(self.logvar, -30.0, 20.0)\n        self.deterministic = deterministic\n        self.std = torch.exp(0.5 * self.logvar)\n        self.var = torch.exp(self.logvar)\n        if self.deterministic:\n            self.var = self.std = torch.zeros_like(\n                self.mean, device=self.parameters.device, dtype=self.parameters.dtype\n            )\n\n    def sample(self, generator: Optional[torch.Generator] = None) -> torch.FloatTensor:\n        # make sure sample is on the same device as the parameters and has same dtype\n        sample = randn_tensor(\n            self.mean.shape,\n            generator=generator,\n            device=self.parameters.device,\n            dtype=self.parameters.dtype,\n        )\n        x = self.mean + self.std * sample\n        return x\n\n    def kl(self, other: \"DiagonalGaussianDistribution\" = None) -> torch.Tensor:\n        if self.deterministic:\n            return torch.Tensor([0.0])\n        else:\n            if other is None:\n                return 0.5 * torch.sum(\n                    torch.pow(self.mean, 2) + self.var - 1.0 - self.logvar,\n                    dim=[1, 2, 3],\n                )\n            else:\n                return 0.5 * torch.sum(\n                    torch.pow(self.mean - other.mean, 2) / other.var\n                    + self.var / other.var\n                    - 1.0\n                    - self.logvar\n                    + other.logvar,\n                    dim=[1, 2, 3],\n                )\n\n    def nll(self, sample: torch.Tensor, dims: Tuple[int, ...] = [1, 2, 3]) -> torch.Tensor:\n        if self.deterministic:\n            return torch.Tensor([0.0])\n        logtwopi = np.log(2.0 * np.pi)\n        return 0.5 * torch.sum(\n            logtwopi + self.logvar + torch.pow(sample - self.mean, 2) / self.var,\n            dim=dims,\n        )\n\n    def mode(self) -> torch.Tensor:\n        return self.mean\n\n\nclass EncoderTiny(nn.Module):\n    r\"\"\"\n    The `EncoderTiny` layer is a simpler version of the `Encoder` layer.\n\n    Args:\n        in_channels (`int`):\n            The number of input channels.\n        out_channels (`int`):\n            The number of output channels.\n        num_blocks (`Tuple[int, ...]`):\n            Each value of the tuple represents a Conv2d layer followed by `value` number of `AutoencoderTinyBlock`'s to\n            use.\n        block_out_channels (`Tuple[int, ...]`):\n            The number of output channels for each block.\n        act_fn (`str`):\n            The activation function to use. See `~diffusers.models.activations.get_activation` for available options.\n    \"\"\"\n\n    def __init__(\n        self,\n        in_channels: int,\n        out_channels: int,\n        num_blocks: Tuple[int, ...],\n        block_out_channels: Tuple[int, ...],\n        act_fn: str,\n    ):\n        super().__init__()\n\n        layers = []\n        for i, num_block in enumerate(num_blocks):\n            num_channels = block_out_channels[i]\n\n            if i == 0:\n                layers.append(nn.Conv2d(in_channels, num_channels, kernel_size=3, padding=1))\n            else:\n                layers.append(\n                    nn.Conv2d(\n                        num_channels,\n                        num_channels,\n                        kernel_size=3,\n                        padding=1,\n                        stride=2,\n                        bias=False,\n                    )\n                )\n\n            for _ in range(num_block):\n                layers.append(AutoencoderTinyBlock(num_channels, num_channels, act_fn))\n\n        layers.append(nn.Conv2d(block_out_channels[-1], out_channels, kernel_size=3, padding=1))\n\n        self.layers = nn.Sequential(*layers)\n        self.gradient_checkpointing = False\n\n    def forward(self, x: torch.FloatTensor) -> torch.FloatTensor:\n        r\"\"\"The forward method of the `EncoderTiny` class.\"\"\"\n        if self.training and self.gradient_checkpointing:\n\n            def create_custom_forward(module):\n                def custom_forward(*inputs):\n                    return module(*inputs)\n\n                return custom_forward\n\n            if is_torch_version(\">=\", \"1.11.0\"):\n                x = torch.utils.checkpoint.checkpoint(create_custom_forward(self.layers), x, use_reentrant=False)\n            else:\n                x = torch.utils.checkpoint.checkpoint(create_custom_forward(self.layers), x)\n\n        else:\n            # scale image from [-1, 1] to [0, 1] to match TAESD convention\n            x = self.layers(x.add(1).div(2))\n\n        return x\n\n\nclass DecoderTiny(nn.Module):\n    r\"\"\"\n    The `DecoderTiny` layer is a simpler version of the `Decoder` layer.\n\n    Args:\n        in_channels (`int`):\n            The number of input channels.\n        out_channels (`int`):\n            The number of output channels.\n        num_blocks (`Tuple[int, ...]`):\n            Each value of the tuple represents a Conv2d layer followed by `value` number of `AutoencoderTinyBlock`'s to\n            use.\n        block_out_channels (`Tuple[int, ...]`):\n            The number of output channels for each block.\n        upsampling_scaling_factor (`int`):\n            The scaling factor to use for upsampling.\n        act_fn (`str`):\n            The activation function to use. See `~diffusers.models.activations.get_activation` for available options.\n    \"\"\"\n\n    def __init__(\n        self,\n        in_channels: int,\n        out_channels: int,\n        num_blocks: Tuple[int, ...],\n        block_out_channels: Tuple[int, ...],\n        upsampling_scaling_factor: int,\n        act_fn: str,\n    ):\n        super().__init__()\n\n        layers = [\n            nn.Conv2d(in_channels, block_out_channels[0], kernel_size=3, padding=1),\n            get_activation(act_fn),\n        ]\n\n        for i, num_block in enumerate(num_blocks):\n            is_final_block = i == (len(num_blocks) - 1)\n            num_channels = block_out_channels[i]\n\n            for _ in range(num_block):\n                layers.append(AutoencoderTinyBlock(num_channels, num_channels, act_fn))\n\n            if not is_final_block:\n                layers.append(nn.Upsample(scale_factor=upsampling_scaling_factor))\n\n            conv_out_channel = num_channels if not is_final_block else out_channels\n            layers.append(\n                nn.Conv2d(\n                    num_channels,\n                    conv_out_channel,\n                    kernel_size=3,\n                    padding=1,\n                    bias=is_final_block,\n                )\n            )\n\n        self.layers = nn.Sequential(*layers)\n        self.gradient_checkpointing = False\n\n    def forward(self, x: torch.FloatTensor) -> torch.FloatTensor:\n        r\"\"\"The forward method of the `DecoderTiny` class.\"\"\"\n        # Clamp.\n        x = torch.tanh(x / 3) * 3\n\n        if self.training and self.gradient_checkpointing:\n\n            def create_custom_forward(module):\n                def custom_forward(*inputs):\n                    return module(*inputs)\n\n                return custom_forward\n\n            if is_torch_version(\">=\", \"1.11.0\"):\n                x = torch.utils.checkpoint.checkpoint(create_custom_forward(self.layers), x, use_reentrant=False)\n            else:\n                x = torch.utils.checkpoint.checkpoint(create_custom_forward(self.layers), x)\n\n        else:\n            x = self.layers(x)\n\n        # scale image from [0, 1] to [-1, 1] to match diffusers convention\n        return x.mul(2).sub(1)\n"
  },
  {
    "path": "scripts/pixelsmith_ext.py",
    "content": "import gradio as gr\nfrom PIL import Image\nfrom modules import scripts_manager, processing, shared, sd_models, devices, images\n\n\nclass Script(scripts_manager.Script):\n    def __init__(self):\n        super().__init__()\n        self.orig_pipe = None\n        self.orig_vae = None\n        self.vae = None\n\n    def title(self):\n        return 'PixelSmith'\n\n    def show(self, is_img2img):\n        return True\n\n    def ui(self, _is_img2img): # ui elements\n        with gr.Row():\n            gr.HTML('<a href=\"https://github.com/Thanos-DB/Pixelsmith\">&nbsp PixelSmith</a><br>')\n        with gr.Row():\n            slider = gr.Slider(label=\"Slider\", value=20, minimum=0, maximum=100, step=1)\n        return [slider]\n\n    def encode(self, p: processing.StableDiffusionProcessing, image: Image.Image):\n        if image is None:\n            return None\n        import numpy as np\n        import torch\n        if p.width is None or p.width == 0:\n            p.width = int(8 * (image.width * p.scale_by // 8))\n        if p.height is None or p.height == 0:\n            p.height = int(8 * (image.height * p.scale_by // 8))\n        image = images.resize_image(p.resize_mode, image, p.width, p.height, upscaler_name=p.resize_name, context=p.resize_context)\n        tensor = np.array(image).astype(np.float16) / 255.0\n        tensor = tensor[None].transpose(0, 3, 1, 2)\n        # image = image.transpose(0, 3, 1, 2)\n        tensor = torch.from_numpy(tensor).to(device=devices.device, dtype=devices.dtype)\n        tensor = 2.0 * tensor - 1.0\n        with devices.inference_context():\n            latent = shared.sd_model.vae.tiled_encode(tensor)\n            latent = shared.sd_model.vae.config.scaling_factor * latent.latent_dist.sample()\n        shared.log.info(f'PixelSmith encode: image={image} latent={latent.shape} width={p.width} height={p.height} vae={shared.sd_model.vae.__class__.__name__}')\n        return latent\n\n\n    def run(self, p: processing.StableDiffusionProcessing, slider: int = 20): # pylint: disable=arguments-differ\n        supported_model_list = ['sdxl']\n        if shared.sd_model_type not in supported_model_list:\n            shared.log.warning(f'PixelSmith: class={shared.sd_model.__class__.__name__} model={shared.sd_model_type} required={supported_model_list}')\n        from scripts.pixelsmith import PixelSmithXLPipeline, PixelSmithVAE # pylint: disable=no-name-in-module\n        self.orig_pipe = shared.sd_model\n        self.orig_vae = shared.sd_model.vae\n        if self.vae is None:\n            self.vae = PixelSmithVAE.from_pretrained(\"madebyollin/sdxl-vae-fp16-fix\", torch_dtype=devices.dtype).to(devices.device)\n        shared.sd_model = sd_models.switch_pipe(PixelSmithXLPipeline, shared.sd_model)\n        shared.sd_model.vae = self.vae\n        shared.sd_model.vae.enable_tiling()\n        p.extra_generation_params[\"PixelSmith\"] = f'Slider={slider}'\n        p.sampler_name = 'DDIM'\n        p.task_args['slider'] = slider\n        # p.task_args['output_type'] = 'pil'\n        if hasattr(p, 'init_images') and p.init_images is not None and len(p.init_images) > 0:\n            p.task_args['image'] = self.encode(p, p.init_images[0])\n            p.init_images = None\n        shared.log.info(f'PixelSmith apply: slider={slider} class={shared.sd_model.__class__.__name__} vae={shared.sd_model.vae.__class__.__name__}')\n        # processed = processing.process_images(p)\n\n    def after(self, p: processing.StableDiffusionProcessing, processed: processing.Processed, slider): # pylint: disable=unused-argument\n        if self.orig_pipe is None:\n            return processed\n        if shared.sd_model.__class__.__name__ == 'PixelSmithXLPipeline':\n            shared.sd_model = self.orig_pipe\n            shared.sd_model.vae = self.orig_vae\n        self.orig_pipe = None\n        self.orig_vae = None\n        return processed\n"
  },
  {
    "path": "scripts/poor_mans_outpainting.py",
    "content": "import math\nimport gradio as gr\nfrom PIL import Image, ImageDraw\nfrom modules import images, devices, scripts_manager\nfrom modules.processing import get_processed, process_images\nfrom modules.shared import opts, state, log\n\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return \"Outpainting alternative\"\n\n    def show(self, is_img2img):\n        return is_img2img\n\n    def ui(self, is_img2img):\n        if not is_img2img:\n            return None\n        with gr.Row():\n            gr.HTML(\"<span>&nbsp Outpainting alternative</span><br>\")\n        with gr.Row():\n            pixels = gr.Slider(label=\"Pixels to expand\", minimum=8, maximum=256, step=8, value=128, elem_id=self.elem_id(\"pixels\"))\n            mask_blur = gr.Slider(label='Mask blur', minimum=0, maximum=64, step=1, value=4, elem_id=self.elem_id(\"mask_blur\"))\n        with gr.Row():\n            direction = gr.CheckboxGroup(label=\"Outpainting direction\", choices=['left', 'right', 'up', 'down'], value=['left', 'right', 'up', 'down'], elem_id=self.elem_id(\"direction\"))\n        return [pixels, mask_blur, direction]\n\n    def run(self, p, pixels, mask_blur, direction): # pylint: disable=arguments-differ\n        initial_seed = None\n        initial_info = None\n        p.mask_blur = mask_blur * 2\n        p.inpaint_full_res = False\n        left = pixels if \"left\" in direction else 0\n        right = pixels if \"right\" in direction else 0\n        up = pixels if \"up\" in direction else 0\n        down = pixels if \"down\" in direction else 0\n        init_img = p.init_images[0]\n        target_w = math.ceil((init_img.width + left + right) / 64) * 64\n        target_h = math.ceil((init_img.height + up + down) / 64) * 64\n        if left > 0:\n            left = left * (target_w - init_img.width) // (left + right)\n        if right > 0:\n            right = target_w - init_img.width - left\n        if up > 0:\n            up = up * (target_h - init_img.height) // (up + down)\n        if down > 0:\n            down = target_h - init_img.height - up\n        img = Image.new(\"RGB\", (target_w, target_h))\n        img.paste(init_img, (left, up))\n        mask = Image.new(\"L\", (img.width, img.height), \"white\")\n        draw = ImageDraw.Draw(mask)\n        draw.rectangle((\n            left + (mask_blur * 2 if left > 0 else 0),\n            up + (mask_blur * 2 if up > 0 else 0),\n            mask.width - right - (mask_blur * 2 if right > 0 else 0),\n            mask.height - down - (mask_blur * 2 if down > 0 else 0)\n        ), fill=\"black\")\n        latent_mask = Image.new(\"L\", (img.width, img.height), \"white\")\n        latent_draw = ImageDraw.Draw(latent_mask)\n        latent_draw.rectangle((\n             left + (mask_blur//2 if left > 0 else 0),\n             up + (mask_blur//2 if up > 0 else 0),\n             mask.width - right - (mask_blur//2 if right > 0 else 0),\n             mask.height - down - (mask_blur//2 if down > 0 else 0)\n        ), fill=\"black\")\n        devices.torch_gc()\n        grid = images.split_grid(img, tile_w=p.width, tile_h=p.height, overlap=pixels)\n        grid_mask = images.split_grid(mask, tile_w=p.width, tile_h=p.height, overlap=pixels)\n        grid_latent_mask = images.split_grid(latent_mask, tile_w=p.width, tile_h=p.height, overlap=pixels)\n        p.n_iter = 1\n        p.batch_size = 1\n        p.do_not_save_grid = True\n        p.do_not_save_samples = True\n        work = []\n        work_mask = []\n        work_latent_mask = []\n        work_results = []\n        for (y, h, row), (_, _, row_mask), (_, _, row_latent_mask) in zip(grid.tiles, grid_mask.tiles, grid_latent_mask.tiles):\n            for tiledata, tiledata_mask, tiledata_latent_mask in zip(row, row_mask, row_latent_mask):\n                x, w = tiledata[0:2]\n                if x >= left and x+w <= img.width - right and y >= up and y+h <= img.height - down:\n                    continue\n                work.append(tiledata[2])\n                work_mask.append(tiledata_mask[2])\n                work_latent_mask.append(tiledata_latent_mask[2])\n        batch_count = len(work)\n        log.info(f\"Poor-man-outpainting: images={len(work)} tiles={len(grid.tiles[0][2])}x{len(grid.tiles)}.\")\n        state.job_count = batch_count\n        for i in range(batch_count):\n            p.init_images = [work[i]]\n            p.image_mask = work_mask[i]\n            p.latent_mask = work_latent_mask[i]\n            processed = process_images(p)\n            if initial_seed is None:\n                initial_seed = processed.seed\n                initial_info = processed.info\n            p.seed = processed.seed + 1\n            work_results += processed.images\n        image_index = 0\n        for y, h, row in grid.tiles:\n            for tiledata in row:\n                x, w = tiledata[0:2]\n                if x >= left and x+w <= img.width - right and y >= up and y+h <= img.height - down:\n                    continue\n                tiledata[2] = work_results[image_index] if image_index < len(work_results) else Image.new(\"RGB\", (p.width, p.height))\n                image_index += 1\n        combined_image = images.combine_grid(grid)\n        if opts.samples_save:\n            images.save_image(combined_image, p.outpath_samples, \"\", initial_seed, p.prompt, opts.samples_format, info=initial_info, p=p)\n        processed = get_processed(p, [combined_image], initial_seed, initial_info)\n        return processed\n"
  },
  {
    "path": "scripts/postprocessing_codeformer.py",
    "content": "from PIL import Image\nimport numpy as np\nimport gradio as gr\nfrom modules import scripts_postprocessing\nfrom modules.postprocess import codeformer_model\n\n\nclass ScriptPostprocessingCodeFormer(scripts_postprocessing.ScriptPostprocessing):\n    name = \"CodeFormer\"\n    order = 3000\n\n    def ui(self):\n        with gr.Accordion('Restore faces: CodeFormer', open = False, elem_id=\"postprocess_codeformer_accordion\"):\n            with gr.Row():\n                codeformer_visibility = gr.Slider(minimum=0.0, maximum=1.0, step=0.01, label=\"Strength\", value=0.0, elem_id=\"extras_codeformer_visibility\")\n                codeformer_weight = gr.Slider(minimum=0.0, maximum=1.0, step=0.01, label=\"Weight\", value=0.2, elem_id=\"extras_codeformer_weight\")\n        return { \"codeformer_visibility\": codeformer_visibility, \"codeformer_weight\": codeformer_weight }\n\n    def process(self, pp: scripts_postprocessing.PostprocessedImage, codeformer_visibility, codeformer_weight): # pylint: disable=arguments-differ\n        if codeformer_visibility == 0:\n            return\n        restored_img = codeformer_model.codeformer.restore(np.array(pp.image, dtype=np.uint8), w=codeformer_weight)\n        res = Image.fromarray(restored_img)\n        if codeformer_visibility < 1.0:\n            res = Image.blend(pp.image, res, codeformer_visibility)\n        pp.image = res\n        pp.info[\"CodeFormer visibility\"] = round(codeformer_visibility, 3)\n        pp.info[\"CodeFormer weight\"] = round(codeformer_weight, 3)\n"
  },
  {
    "path": "scripts/postprocessing_gfpgan.py",
    "content": "from PIL import Image\nimport numpy as np\nimport gradio as gr\nfrom modules import scripts_postprocessing\n\n\nclass ScriptPostprocessingGfpGan(scripts_postprocessing.ScriptPostprocessing):\n    name = \"GFPGAN\"\n    order = 2000\n\n    def ui(self):\n        with gr.Accordion('Restore faces: GFPGan', open = False, elem_id=\"postprocess_gfpgan_accordion\"):\n            with gr.Row():\n                gfpgan_visibility = gr.Slider(minimum=0.0, maximum=1.0, step=0.001, label=\"Strength\", value=0, elem_id=\"extras_gfpgan_visibility\")\n        return { \"gfpgan_visibility\": gfpgan_visibility }\n\n    def process(self, pp: scripts_postprocessing.PostprocessedImage, gfpgan_visibility): # pylint: disable=arguments-differ\n        from installer import install\n        install(\"facexlib\")\n        install(\"gfpgan\")\n        if gfpgan_visibility == 0:\n            return\n        from modules.postprocess import gfpgan_model\n        restored_img = gfpgan_model.gfpgan_fix_faces(np.array(pp.image, dtype=np.uint8))\n        res = Image.fromarray(restored_img)\n        if gfpgan_visibility < 1.0:\n            res = Image.blend(pp.image, res, gfpgan_visibility)\n        pp.image = res\n        pp.info[\"GFPGAN visibility\"] = round(gfpgan_visibility, 3)\n"
  },
  {
    "path": "scripts/postprocessing_pixelart.py",
    "content": "import gradio as gr\nfrom modules import scripts_postprocessing, devices\n\nclass ScriptPixelArt(scripts_postprocessing.ScriptPostprocessing):\n    name = \"PixelArt\"\n    order = 30000\n\n    def ui(self):\n        with gr.Accordion('PixelArt', open = False, elem_id=\"postprocess_pixelart_accordion\"):\n            with gr.Row():\n                pixelart_enabled = gr.Checkbox(label=\"Enable PixelArt\", value=False, elem_id=\"extras_pixelart_enabled\")\n                pixelart_use_edge_detection = gr.Checkbox(label=\"Enable edge detection\", value=True, elem_id=\"extras_pixelart_use_edge_detection\")\n            with gr.Row():\n                pixelart_block_size = gr.Slider(minimum=2, maximum=64, step=1, value=8, label=\"PixelArt block size\", elem_id=\"extras_pixelart_block_size\")\n                pixelart_edge_block_size = gr.Slider(minimum=2, maximum=64, step=1, value=4, label=\"Edge block size\", elem_id=\"extras_pixelart_edge_block_size\")\n                pixelart_image_weight = gr.Slider(minimum=0.0, maximum=2.0, step=0.01, value=1.0, label=\"Edge image weight\", elem_id=\"extras_pixelart_image_weight\")\n                pixelart_sharpen_amount = gr.Slider(minimum=0.0, maximum=1.0, step=0.01, value=0.1, label=\"PixelArt sharpen\", elem_id=\"extras_pixelart_sharpen_amount\")\n        return {\n            \"pixelart_enabled\": pixelart_enabled,\n            \"pixelart_block_size\": pixelart_block_size,\n            \"pixelart_edge_block_size\": pixelart_edge_block_size,\n            \"pixelart_use_edge_detection\": pixelart_use_edge_detection,\n            \"pixelart_image_weight\": pixelart_image_weight,\n            \"pixelart_sharpen_amount\": pixelart_sharpen_amount,\n        }\n\n    def process(self, pp: scripts_postprocessing.PostprocessedImage, pixelart_enabled: bool, pixelart_use_edge_detection: bool, pixelart_block_size: int, pixelart_edge_block_size: int, pixelart_image_weight: float, pixelart_sharpen_amount: float): # pylint: disable=arguments-differ\n        if not pixelart_enabled:\n            return\n        from modules.postprocess.pixelart import img_to_pixelart, edge_detect_for_pixelart\n        pixel_image = pp.image\n\n        if pixelart_use_edge_detection:\n            pixel_image = edge_detect_for_pixelart(pixel_image, image_weight=pixelart_image_weight, block_size=pixelart_edge_block_size, device=devices.device)\n            pp.info[\"PixelArt edge block size\"] = pixelart_edge_block_size\n\n        pixel_image = img_to_pixelart(pixel_image, sharpen=pixelart_sharpen_amount, block_size=pixelart_block_size, device=devices.device)\n        if len(pixel_image) == 1:\n            pixel_image = pixel_image[0]\n        pp.image = pixel_image\n        pp.info[\"PixelArt block size\"] = pixelart_block_size\n"
  },
  {
    "path": "scripts/postprocessing_upscale.py",
    "content": "from PIL import Image\nimport gradio as gr\nfrom modules import scripts_postprocessing, shared\nfrom modules.ui_components import ToolButton\nimport modules.ui_symbols as symbols\n\n\nclass ScriptPostprocessingUpscale(scripts_postprocessing.ScriptPostprocessing):\n    name = \"Upscale\"\n    order = 1000\n\n    def ui(self):\n        with gr.Accordion('Postprocess upscale', open = False, elem_id=\"postprocess_upscale_accordion\"):\n            selected_tab = gr.State(value=0) # pylint: disable=abstract-class-instantiated\n            with gr.Column():\n                with gr.Row(elem_id=\"extras_upscale\"):\n                    with gr.Tabs(elem_id=\"extras_resize_mode\"):\n                        with gr.TabItem('Scale by', elem_id=\"extras_scale_by_tab\") as tab_scale_by:\n                            upscaling_resize = gr.Slider(minimum=0.1, maximum=8.0, step=0.05, label=\"Resize\", value=2.0, elem_id=\"extras_upscaling_resize\")\n\n                        with gr.TabItem('Scale to', elem_id=\"extras_scale_to_tab\") as tab_scale_to:\n                            with gr.Row():\n                                with gr.Row(elem_id=\"upscaling_column_size\"):\n                                    upscaling_resize_w = gr.Slider(minimum=64, maximum=4096, step=8, label=\"Width\", value=1024, elem_id=\"extras_upscaling_resize_w\")\n                                    upscaling_resize_h = gr.Slider(minimum=64, maximum=4096, step=8, label=\"Height\", value=1024, elem_id=\"extras_upscaling_resize_h\")\n                                    upscaling_res_switch_btn = ToolButton(value=symbols.switch, elem_id=\"upscaling_res_swap\")\n                                    upscaling_crop = gr.Checkbox(label='Crop to fit', value=True, elem_id=\"extras_upscaling_crop\")\n\n                with gr.Row():\n                    extras_upscaler_1 = gr.Dropdown(label='Upscaler', elem_id=\"extras_upscaler_1\", choices=[x.name for x in shared.sd_upscalers], value=shared.sd_upscalers[0].name)\n\n                with gr.Row():\n                    extras_upscaler_2 = gr.Dropdown(label='Refine upscaler', elem_id=\"extras_upscaler_2\", choices=[x.name for x in shared.sd_upscalers], value=shared.sd_upscalers[0].name)\n                    extras_upscaler_2_visibility = gr.Slider(minimum=0.0, maximum=1.0, step=0.001, label=\"Blend strength\", value=0.0, elem_id=\"extras_upscaler_2_visibility\")\n\n            upscaling_res_switch_btn.click(lambda w, h: (h, w), inputs=[upscaling_resize_w, upscaling_resize_h], outputs=[upscaling_resize_w, upscaling_resize_h], show_progress='hidden')\n            tab_scale_by.select(fn=lambda: 0, inputs=[], outputs=[selected_tab])\n            tab_scale_to.select(fn=lambda: 1, inputs=[], outputs=[selected_tab])\n\n            return {\n                \"upscale_mode\": selected_tab,\n                \"upscale_by\": upscaling_resize,\n                \"upscale_to_width\": upscaling_resize_w,\n                \"upscale_to_height\": upscaling_resize_h,\n                \"upscale_crop\": upscaling_crop,\n                \"upscaler_1_name\": extras_upscaler_1,\n                \"upscaler_2_name\": extras_upscaler_2,\n                \"upscaler_2_visibility\": extras_upscaler_2_visibility,\n            }\n\n    def upscale(self, image, info, upscaler, upscale_mode, upscale_by,  upscale_to_width, upscale_to_height, upscale_crop):\n        if upscale_mode == 1:\n            upscale_by = max(upscale_to_width/image.width, upscale_to_height/image.height)\n            info[\"Postprocess upscale to\"] = f\"{upscale_to_width}x{upscale_to_height}\"\n        else:\n            info[\"Postprocess upscale by\"] = upscale_by\n        image = upscaler.scaler.upscale(image, upscale_by, upscaler.name)\n        if upscale_mode == 1 and upscale_crop:\n            cropped = Image.new(\"RGB\", (upscale_to_width, upscale_to_height))\n            cropped.paste(image, box=(upscale_to_width // 2 - image.width // 2, upscale_to_height // 2 - image.height // 2))\n            image = cropped\n            info[\"Postprocess crop to\"] = f\"{image.width}x{image.height}\"\n        return image\n\n    def process(self, pp: scripts_postprocessing.PostprocessedImage, upscale_mode=1, upscale_by=2.0, upscale_to_width=None, upscale_to_height=None, upscale_crop=False, upscaler_1_name=None, upscaler_2_name=None, upscaler_2_visibility=0.0): # pylint: disable=arguments-differ\n\n        if upscaler_1_name == \"None\":\n            upscaler_1_name = None\n        upscaler1 = next(iter([x for x in shared.sd_upscalers if x.name == upscaler_1_name]), None)\n        if not upscaler1:\n            if upscaler_1_name is not None:\n                shared.log.warning(f\"Could not find upscaler: {upscaler_1_name or '<empty string>'}\")\n            return\n        upscaled_image = self.upscale(pp.image, pp.info, upscaler1, upscale_mode, upscale_by, upscale_to_width, upscale_to_height, upscale_crop)\n        pp.info[\"Postprocess upscaler\"] = upscaler1.name\n\n        if upscaler_2_name == \"None\":\n            upscaler_2_name = None\n        upscaler2 = next(iter([x for x in shared.sd_upscalers if x.name == upscaler_2_name and x.name != \"None\"]), None)\n        if not upscaler2 and (upscaler_2_name is not None):\n            shared.log.warning(f\"Could not find upscaler: {upscaler_2_name or '<empty string>'}\")\n        if upscaler2 and upscaler_2_visibility > 0:\n            second_upscale = self.upscale(pp.image, pp.info, upscaler2, upscale_mode, upscale_by, upscale_to_width, upscale_to_height, upscale_crop)\n            upscaled_image = Image.blend(upscaled_image, second_upscale, upscaler_2_visibility)\n            pp.info[\"Postprocess upscaler 2\"] = upscaler2.name\n\n        pp.image = upscaled_image\n\n    def image_changed(self):\n        pass\n\n\nclass ScriptPostprocessingUpscaleSimple(ScriptPostprocessingUpscale):\n    name = \"Simple Upscale\"\n    order = 900\n\n    def ui(self):\n        with gr.Row():\n            upscaler_name = gr.Dropdown(label='Upscaler', choices=[x.name for x in shared.sd_upscalers], value=shared.sd_upscalers[0].name)\n            upscale_by = gr.Slider(minimum=0.05, maximum=8.0, step=0.05, label=\"Upscale by\", value=2)\n        return {\n            \"upscale_by\": upscale_by,\n            \"upscaler_name\": upscaler_name,\n        }\n\n    def process(self, pp: scripts_postprocessing.PostprocessedImage, upscale_by=2.0, upscaler_name=None): # pylint: disable=arguments-differ\n        if upscaler_name is None or upscaler_name == \"None\":\n            return\n        upscaler1 = next(iter([x for x in shared.sd_upscalers if x.name == upscaler_name]), None)\n        if upscaler1 is None:\n            shared.log.debug(f\"Upscaler not found: {upscaler_name}\")\n        pp.image = self.upscale(pp.image, pp.info, upscaler1, 0, upscale_by, 0, 0, False)\n        pp.info[\"Postprocess upscaler\"] = upscaler1.name\n"
  },
  {
    "path": "scripts/postprocessing_video.py",
    "content": "import gradio as gr\nimport modules.images\nfrom modules import scripts_postprocessing\n\n\nclass ScriptPostprocessingUpscale(scripts_postprocessing.ScriptPostprocessing):\n    name = \"Video\"\n\n    def ui(self):\n        with gr.Accordion('Create video', open = False, elem_id=\"postprocess_video_accordion\"):\n            def video_type_change(video_type):\n                return [\n                    gr.update(visible=video_type != 'None'),\n                    gr.update(visible=video_type == 'GIF' or video_type == 'PNG'),\n                    gr.update(visible=video_type == 'MP4'),\n                    gr.update(visible=video_type == 'MP4'),\n                    gr.update(visible=video_type == 'MP4'),\n                    gr.update(visible=video_type == 'MP4'),\n                ]\n\n            with gr.Row():\n                gr.HTML(\"<span>&nbsp Video</span><br>\")\n            with gr.Row():\n                video_type = gr.Dropdown(label='Video file', choices=['None', 'GIF', 'PNG', 'MP4'], value='None', elem_id=\"extras_video_type\")\n                duration = gr.Slider(label='Duration', minimum=0.25, maximum=10, step=0.25, value=2, visible=False, elem_id=\"extras_video_duration\")\n            with gr.Row():\n                loop = gr.Checkbox(label='Loop', value=True, visible=False, elem_id=\"extras_video_loop\")\n                pad = gr.Slider(label='Pad frames', minimum=0, maximum=24, step=1, value=1, visible=False, elem_id=\"extras_video_pad\")\n                interpolate = gr.Slider(label='Interpolate frames', minimum=0, maximum=24, step=1, value=0, visible=False, elem_id=\"extras_video_interpolate\")\n                scale = gr.Slider(label='Rescale', minimum=0.5, maximum=2, step=0.05, value=1, visible=False, elem_id=\"extras_video_scale\")\n                change = gr.Slider(label='Frame change sensitivity', minimum=0, maximum=1, step=0.05, value=0.3, visible=False, elem_id=\"extras_video_change\")\n            with gr.Row():\n                filename = gr.Textbox(label='Filename', placeholder='enter filename', lines=1, elem_id=\"extras_video_filename\")\n            video_type.change(fn=video_type_change, inputs=[video_type], outputs=[duration, loop, pad, interpolate, scale, change])\n            return {\n                \"filename\": filename,\n                \"video_type\": video_type,\n                \"duration\": duration,\n                \"loop\": loop,\n                \"pad\": pad,\n                \"interpolate\": interpolate,\n                \"scale\": scale,\n                \"change\": change,\n            }\n\n    def postprocess(self, images, filename, video_type, duration, loop, pad, interpolate, scale, change): # pylint: disable=arguments-differ\n        filename = filename.strip() if filename is not None else ''\n        if video_type == 'None' or len(filename) == 0 or images is None or len(images) < 2:\n            return\n        modules.images.save_video(p=None, filename=filename, images=images, video_type=video_type, duration=duration, loop=loop, pad=pad, interpolate=interpolate, scale=scale, change=change)\n"
  },
  {
    "path": "scripts/prompt_enhance.py",
    "content": "from dataclasses import dataclass\nimport io\nimport os\nimport re\nimport time\nimport random\nimport base64\nimport torch\nimport transformers\nimport gradio as gr\nfrom PIL import Image\nfrom modules import scripts_manager, shared, devices, errors, processing, sd_models, sd_modules, timer, ui_symbols\nfrom modules import ui_control_helpers\n\n\ndebug_enabled = os.environ.get('SD_LLM_DEBUG', None) is not None\ndebug_log = shared.log.trace if debug_enabled else lambda *args, **kwargs: None\n\n\ndef b64(image):\n    if image is None:\n        return ''\n    if isinstance(image, gr.Image): # should not happen\n        return None\n    with io.BytesIO() as stream:\n        image.convert('RGB').save(stream, 'JPEG')\n        values = stream.getvalue()\n        encoded = base64.b64encode(values).decode()\n        return encoded\n\n\ndef is_vision_model(model_name: str) -> bool:\n    \"\"\"Check if model supports vision/image input.\"\"\"\n    if not model_name:\n        return False\n    return model_name in Options.img2img\n\n\ndef is_thinking_model(model_name: str) -> bool:\n    \"\"\"Check if model supports thinking/reasoning mode.\"\"\"\n    if not model_name:\n        return False\n    model_lower = model_name.lower()\n    # Match VQA's detection patterns for consistency\n    thinking_indicators = [\n        'thinking',      # Qwen3-VL-*-Thinking models\n        'moondream3',    # Moondream 3 supports thinking\n        'moondream 3',\n        'moondream2',    # Moondream 2 supports reasoning mode\n        'moondream 2',\n        'mimo',          # XiaomiMiMo models\n    ]\n    return any(indicator in model_lower for indicator in thinking_indicators)\n\n\ndef get_model_display_name(model_repo: str) -> str:\n    \"\"\"Generate display name with vision/reasoning symbols.\"\"\"\n    symbols = []\n    if model_repo in Options.img2img:\n        symbols.append(ui_symbols.vision)\n    if is_thinking_model(model_repo):\n        symbols.append(ui_symbols.reasoning)\n    return f\"{model_repo} {' '.join(symbols)}\" if symbols else model_repo\n\n\ndef get_model_repo_from_display(display_name: str) -> str:\n    \"\"\"Strip symbols from display name to get repo.\"\"\"\n    if not display_name:\n        return display_name\n    result = display_name\n    for symbol in [ui_symbols.vision, ui_symbols.reasoning]:\n        result = result.replace(symbol, '')\n    return result.strip()\n\n\ndef keep_think_block_open(text_prompt: str) -> str:\n    \"\"\"Remove closing </think> so model can continue reasoning with prefill.\"\"\"\n    think_open = \"<think>\"\n    think_close = \"</think>\"\n    last_open = text_prompt.rfind(think_open)\n    if last_open == -1:\n        return text_prompt\n    close_index = text_prompt.find(think_close, last_open)\n    if close_index == -1:\n        return text_prompt\n    end_close = close_index + len(think_close)\n    while end_close < len(text_prompt) and text_prompt[end_close] in ' \\t\\r\\n':\n        end_close += 1\n    return text_prompt[:close_index] + text_prompt[end_close:]\n\n\n@dataclass\nclass Options:\n    img2img = [\n        'google/gemma-3-4b-it',\n        'allura-org/Gemma-3-Glitter-4B',\n        'Qwen/Qwen2.5-VL-3B-Instruct',\n        'Qwen/Qwen3-VL-2B-Instruct',\n        'Qwen/Qwen3-VL-2B-Thinking',\n        'Qwen/Qwen3-VL-4B-Instruct',\n        'Qwen/Qwen3-VL-4B-Thinking',\n        'Qwen/Qwen3-VL-8B-Instruct',\n        'Qwen/Qwen3-VL-8B-Thinking',\n    ]\n    models = {\n        'google/gemma-3-1b-it': {},\n        'google/gemma-3-4b-it': {},\n        'google/gemma-3n-E2B-it': {},\n        'google/gemma-3n-E4B-it': {},\n        'Qwen/Qwen3-0.6B-FP8': {},\n        'Qwen/Qwen3-1.7B-FP8': {},\n        'Qwen/Qwen3-4B-FP8': {},\n        'Qwen/Qwen3-0.6B': {},\n        'Qwen/Qwen3-1.7B': {},\n        'Qwen/Qwen3-4B': {},\n        'Qwen/Qwen3-4B-Instruct-2507': {},\n        'Qwen/Qwen2.5-0.5B-Instruct': {},\n        'Qwen/Qwen2.5-1.5B-Instruct': {},\n        'Qwen/Qwen2.5-3B-Instruct': {},\n        'Qwen/Qwen2.5-VL-3B-Instruct': {},\n        'Qwen/Qwen3-VL-2B-Instruct': {},\n        'Qwen/Qwen3-VL-2B-Thinking': {},\n        'Qwen/Qwen3-VL-4B-Instruct': {},\n        'Qwen/Qwen3-VL-4B-Thinking': {},\n        'Qwen/Qwen3-VL-8B-Instruct': {},\n        'Qwen/Qwen3-VL-8B-Thinking': {},\n        'microsoft/Phi-4-mini-instruct': {},\n        'HuggingFaceTB/SmolLM2-135M-Instruct': {},\n        'HuggingFaceTB/SmolLM2-360M-Instruct': {},\n        'HuggingFaceTB/SmolLM2-1.7B-Instruct': {},\n        'HuggingFaceTB/SmolLM3-3B': {},\n        'meta-llama/Llama-3.2-1B-Instruct': {},\n        'meta-llama/Llama-3.2-3B-Instruct': {},\n        'cognitivecomputations/Dolphin3.0-Llama3.2-1B': {},\n        'cognitivecomputations/Dolphin3.0-Llama3.2-3B': {},\n        'nidum/Nidum-Gemma-3-4B-it-Uncensored': {},\n        'allura-org/Gemma-3-Glitter-4B': {},\n        # 'llava/Llama-3-8B-v1.1-Extracted': {\n        #     'repo': 'hunyuanvideo-community/HunyuanVideo',\n        #     'subfolder': 'text_encoder',\n        #     'tokenizer': 'tokenizer',\n        # },\n        'mradermacher/Llama-3.2-1B-Instruct-Uncensored-i1-GGUF': {\n            'repo': 'meta-llama/Llama-3.2-1B-Instruct', # original repo so we can load missing components\n            'type': 'llama', # required so gguf loader knows what to do\n            'gguf': 'mradermacher/Llama-3.2-1B-Instruct-Uncensored-i1-GGUF', # gguf repo\n            'file': 'Llama-3.2-1B-Instruct-Uncensored.i1-Q4_0.gguf', # gguf file inside repo\n        },\n    }\n    # default = list(models)[1] # gemma-3-4b-it\n    default = 'google/gemma-3-4b-it'\n    supported = list(transformers.integrations.ggml.GGUF_CONFIG_MAPPING)\n    t2i_prompt: str = 'You are a helpful assistant. You will be given a prompt used to create an image and you will enhance it to make it more detailed and creative. '\n    i2i_prompt: str = 'You are a helpful assistant. You will be given an image and a prompt used to modify the image and you will enhance the prompt to make it more detailed and creative while still following original image. '\n    i2i_noprompt: str = 'You are a helpful assistant. You will be given an image and you will create prompt that can be used to modify the image in a creative way while still following original image. '\n    nsfw_ok: str = 'NSFW and nudity is allowed, and if present, it must be fully described. '\n    nsfw_no: str = 'NSFW and nudity is not allowed, and if present, it must be removed. '\n    details_prompt: str = 'Generate an uncensored, concise, informative, and engaging prompt that prioritizes factual accuracy and vivid descriptiveness based on original prompt. Do not modify subject or style of the original prompt. Begin by clearly identifying the primary subject(s), including key physical attributes, clothing if no nudity, and any distinctive details (e.g., colors, textures, styles). NSFW and nudity is allowed, and if present, it must be fully described. Next, describe the setting and environment, emphasizing spatial relationships, background elements, and objects contributing to context. Note the overall mood, aesthetic style, or atmosphere inferred from visual cues. Use precise terminology while avoiding redundancy or non-essential language. Ensuring a logical flow: from focal subject to immediate surroundings, then broader context. Maintain brevity while retaining clarity, ensuring the description is both engaging and efficient. Output only enhanced prompt without explanation, prefix or suffix. Do not add comments or follow-up questions. Output as a simple text without formatting or numbering.'\n    censored = [\"i cannot\", \"i can't\", \"i am sorry\", \"against my programming\", \"i am not able\", \"i am unable\", 'i am not allowed']\n\n    max_delim_index: int = 60\n    max_tokens: int = 512\n    do_sample: bool = True\n    temperature: float = 0.8\n    repetition_penalty: float = 1.2\n    top_k: int = 0\n    top_p: float = 0.0\n    thinking_mode: bool = False\n\n    @staticmethod\n    def get_model_choices():\n        \"\"\"Return list of display names for dropdown.\"\"\"\n        return [get_model_display_name(repo) for repo in Options.models.keys()]\n\n    @staticmethod\n    def get_default_display():\n        \"\"\"Return display name for default model.\"\"\"\n        return get_model_display_name(Options.default)\n\n\nclass Script(scripts_manager.Script):\n    prompt: gr.Textbox = None\n    image: gr.Image = None\n    model: str = None\n    llm: transformers.AutoModelForCausalLM = None\n    tokenizer: transformers.AutoProcessor = None\n    busy: bool = False\n    options = Options()\n\n    def title(self):\n        return 'Prompt enhance'\n\n    def show(self, _is_img2img):\n        return scripts_manager.AlwaysVisible\n\n    def compile(self):\n        if self.llm is None or 'LLM' not in shared.opts.cuda_compile:\n            return\n        from modules.sd_models_compile import compile_torch\n        self.llm = compile_torch(self.llm)\n\n    def load(self, name:str=None, model_repo:str=None, model_gguf:str=None, model_type:str=None, model_file:str=None):\n        # Strip symbols from display name if present\n        name = get_model_repo_from_display(name) if name else self.options.default\n        if self.busy:\n            shared.log.debug('Prompt enhance: busy')\n            return\n        self.busy = True\n        if self.model is not None and self.model == name:\n            self.busy = False # ensure busy is reset even if model is already loaded\n            return\n\n        from modules import modelloader, model_quant, ggml\n        modelloader.hf_login()\n        model_repo = model_repo or self.options.models.get(name, {}).get('repo', None) or name\n        model_gguf = model_gguf or self.options.models.get(name, {}).get('gguf', None) or model_repo\n        model_type = model_type or self.options.models.get(name, {}).get('type', None)\n        model_file = model_file or self.options.models.get(name, {}).get('file', None)\n        model_subfolder = self.options.models.get(name, {}).get('subfolder', None)\n        model_tokenizer = self.options.models.get(name, {}).get('tokenizer', None)\n\n        gguf_args = {}\n        if model_type is not None and model_file is not None and len(model_type) > 2 and len(model_file) > 2:\n            debug_log(f'Prompt enhance: gguf supported={self.options.supported}')\n            if model_type not in self.options.supported:\n                shared.log.error(f'Prompt enhance: name=\"{name}\" repo=\"{model_repo}\" fn=\"{model_file}\" type={model_type} gguf not supported')\n                shared.log.trace(f'Prompt enhance: gguf supported={self.options.supported}')\n                self.busy = False\n                return\n            ggml.install_gguf()\n            gguf_args['model_type'] = model_type\n            gguf_args['gguf_file'] = model_file\n\n        quant_args = model_quant.create_config(module='LLM') if not gguf_args else {}\n\n        try:\n            t0 = time.time()\n            if self.llm is not None:\n                self.llm = None\n                shared.log.debug(f'Prompt enhance: name=\"{self.model}\" unload')\n            self.model = None\n            load_args = { 'pretrained_model_name_or_path': model_repo if not gguf_args else model_gguf }\n            if model_subfolder:\n                load_args['subfolder'] = model_subfolder # Comma was incorrect here\n\n            if 'Qwen3-VL' in model_repo or 'Qwen3VL' in model_repo:\n                cls_name = transformers.Qwen3VLForConditionalGeneration\n            elif 'Qwen2.5-VL' in model_repo or 'Qwen2_5_VL' in model_repo:\n                cls_name = transformers.Qwen2_5_VLForConditionalGeneration\n            elif 'Qwen2-VL' in model_repo or 'Qwen2VL' in model_repo:\n                cls_name = transformers.Qwen2VLForConditionalGeneration\n            else:\n                cls_name = transformers.AutoModelForCausalLM\n\n            self.llm = cls_name.from_pretrained(\n                **load_args,\n                trust_remote_code=True,\n                torch_dtype=devices.dtype,\n                cache_dir=shared.opts.hfcache_dir,\n                # _attn_implementation=\"eager\",\n                **gguf_args,\n                **quant_args,\n            )\n            self.llm.eval()\n            if model_repo in self.options.img2img:\n                cls = transformers.AutoProcessor # required to encode image\n            else:\n                cls = transformers.AutoTokenizer\n            tokenizer_args = { 'pretrained_model_name_or_path': model_repo }\n            if model_tokenizer:\n                tokenizer_args['subfolder'] = model_tokenizer\n            self.tokenizer = cls.from_pretrained(\n                **tokenizer_args,\n                cache_dir=shared.opts.hfcache_dir,\n            )\n            self.tokenizer.is_processor = model_repo in self.options.img2img\n\n            if debug_enabled:\n                modules = sd_modules.get_model_stats(self.llm) + sd_modules.get_model_stats(self.tokenizer)\n                for m in modules:\n                    debug_log(f'Prompt enhance: {m}')\n            self.model = name\n            t1 = time.time()\n            shared.log.info(f'Prompt enhance: cls={self.llm.__class__.__name__} name=\"{name}\" repo=\"{model_repo}\" fn=\"{model_file}\" time={t1-t0:.2f} loaded')\n            self.compile()\n        except Exception as e:\n            shared.log.error(f'Prompt enhance: load {e}')\n            errors.display(e, 'Prompt enhance')\n        devices.torch_gc()\n        self.busy = False\n\n    def censored(self, response):\n        text = response.lower().replace(\"i'm\", \"i am\")\n        return any(c.lower() in text for c in self.options.censored)\n\n    def unload(self):\n        if self.llm is not None:\n            model_name = self.model\n            shared.log.debug(f'Prompt enhance: unloading model=\"{model_name}\"')\n            sd_models.move_model(self.llm, devices.cpu, force=True)\n            self.model = None\n            self.llm = None\n            self.tokenizer = None\n            devices.torch_gc(force=True, reason='prompt enhance unload')\n            shared.log.debug(f'Prompt enhance: model=\"{model_name}\" unloaded')\n        else:\n            shared.log.debug('Prompt enhance: no model loaded')\n\n    def clean(self, response, keep_thinking=False, prefill_text='', keep_prefill=False):\n        # Handle thinking tags FIRST (before generic tag removal)\n        if '<think>' in response or '</think>' in response:\n            if keep_thinking:\n                # Format: handle partial tags (</think> without <think> means thinking was in prompt)\n                if '</think>' in response and '<think>' not in response:\n                    response = 'Reasoning:\\n' + response.replace('</think>', '\\n\\nAnswer:\\n')\n                else:\n                    response = response.replace('<think>', 'Reasoning:\\n').replace('</think>', '\\n\\nAnswer:\\n')\n            else:\n                # Strip all thinking content\n                response = re.sub(r'<think>.*?</think>', '', response, flags=re.DOTALL)\n                response = response.replace('</think>', '')  # Handle orphaned closing tags\n\n        # remove special characters\n        response = response.replace('\"', '').replace(\"'\", \"\").replace('\"', '').replace('\"', '').replace('**', '')\n        # remove repeating characters\n        response = response.replace('\\n\\n', '\\n').replace('  ', ' ').replace('...', '.')\n\n        # remove comments between brackets (but not Reasoning:/Answer: which we may have added)\n        response = re.sub(r'<.*?>', '', response)\n        response = re.sub(r'\\[.*?\\]', '', response)\n        response = re.sub(r'\\/.*?\\/', '', response)\n\n        # remove llm commentary\n        removed = ''\n        if response.startswith('Prompt'):\n            removed, response = response.split('Prompt', maxsplit=1)\n        if 0 <= response.find(':') < self.options.max_delim_index:\n            # Don't split on \"Reasoning:\" or \"Answer:\" if we're keeping thinking\n            colon_pos = response.find(':')\n            prefix_text = response[:colon_pos].strip()\n            if not keep_thinking or (prefix_text not in ['Reasoning', 'Answer']):\n                removed, response = response.split(':', maxsplit=1)\n        if 0 <= response.find('---') < self.options.max_delim_index:\n            response, removed = response.split('---', maxsplit=1)\n        if len(removed) > 0:\n            debug_log(f'Prompt enhance: max={self.options.max_delim_index} removed=\"{removed}\"')\n\n        # remove bullets and lists\n        lines = [re.sub(r'^(\\s*[-*]|\\s*\\d+)\\s+', '', line).strip() for line in response.splitlines()]\n        response = '\\n'.join(lines)\n\n        response = response.strip()\n\n        # Handle prefill retention/removal\n        prefill_text = (prefill_text or '').strip()\n        if prefill_text:\n            if keep_prefill:\n                # Add prefill if it's missing from the cleaned response\n                if not response.startswith(prefill_text):\n                    sep = '' if (not response or response[0] in '.,!?;:') else ' '\n                    response = f'{prefill_text}{sep}{response}'\n            else:\n                # Remove prefill if it's present in the cleaned response\n                if response.startswith(prefill_text):\n                    response = response[len(prefill_text):].strip()\n\n        return response\n\n    def post(self, response, prefix, suffix, networks):\n        response = response.strip()\n        prefix = prefix.strip()\n        suffix = suffix.strip()\n        if len(prefix) > 0:\n            response = f'{prefix} {response}'\n        if len(suffix) > 0:\n            response = f'{response} {suffix}'\n        if len(networks) > 0:\n            response = f'{response} {\" \".join(networks)}'\n        return response\n\n    def extract(self, prompt):\n        pattern = r'(<.*?>)'\n        matches = re.findall(pattern, prompt)\n        filtered = re.sub(pattern, '', prompt)\n        return filtered, matches\n\n    def enhance(self, model: str=None, prompt:str=None, system:str=None, prefix:str=None, suffix:str=None, sample:bool=None, tokens:int=None, temperature:float=None, penalty:float=None, top_k:int=None, top_p:float=None, thinking:bool=False, seed:int=-1, image=None, nsfw:bool=None, use_vision:bool=True, prefill:str='', keep_prefill:bool=False, keep_thinking:bool=False):\n        # Strip symbols from model name if present\n        model = get_model_repo_from_display(model) if model else self.options.default\n        prompt = prompt or (self.prompt.value if self.prompt else \"\") # Check if self.prompt is None\n        # Handle vision toggle - if disabled or non-VL model, don't use image\n        if use_vision and is_vision_model(model):\n            image = image or self.image\n        else:\n            image = None\n        prefix = prefix or ''\n        suffix = suffix or ''\n        tokens = tokens or self.options.max_tokens\n        penalty = penalty or self.options.repetition_penalty\n        temperature = temperature or self.options.temperature\n        top_k = top_k if top_k is not None else self.options.top_k\n        top_p = top_p if top_p is not None else self.options.top_p\n        thinking = thinking or self.options.thinking_mode\n        sample = sample if sample is not None else self.options.do_sample\n        nsfw = nsfw if nsfw is not None else True # Default nsfw to True if not provided\n        debug_log(f'Prompt enhance: model=\"{model}\" model_class=\"{self.llm.__class__.__name__ if self.llm else \"not loaded\"}\" nsfw={nsfw} thinking={thinking} prefill=\"{prefill[:30] if prefill else \"\"}\" use_vision={use_vision} image={image is not None}')\n\n        while self.busy:\n            time.sleep(0.1)\n        self.load(model)\n        if seed is None or seed == -1:\n            random.seed()\n            seed = int(random.randrange(4294967294))\n        torch.manual_seed(seed)\n        if self.llm is None:\n            shared.log.error('Prompt enhance: model not loaded')\n            return prompt\n        prompt_text, networks = self.extract(prompt) # Use prompt_text after extraction\n        debug_log(f'Prompt enhance: networks={networks}')\n\n        current_image = None\n        # Only process images if vision is enabled and model supports it\n        if use_vision and is_vision_model(model):\n            try:\n                if image is not None and isinstance(image, gr.Image):\n                    current_image = image.value\n                elif image is not None and isinstance(image, Image.Image): # if image is already a PIL image\n                    current_image = image\n                if current_image is not None and (current_image.width <= 64 or current_image.height <= 64):\n                    current_image = None\n                # Fallback to Kanvas/Control input if no image from Gradio component (e.g., when Kanvas is active)\n                if current_image is None and ui_control_helpers.input_source is not None:\n                    if isinstance(ui_control_helpers.input_source, list) and len(ui_control_helpers.input_source) > 0:\n                        current_image = ui_control_helpers.input_source[0]\n                    elif isinstance(ui_control_helpers.input_source, Image.Image):\n                        current_image = ui_control_helpers.input_source\n            except Exception:\n                current_image = None\n        debug_log(f'Prompt enhance: current_image={current_image is not None} size={f\"{current_image.width}x{current_image.height}\" if current_image else \"N/A\"}')\n\n        # Check if vision was requested but no image is available\n        if use_vision and is_vision_model(model) and current_image is None:\n            shared.log.error(f'Prompt enhance: model=\"{model}\" error=\"No input image provided\"')\n            return 'Error: No input image provided. Please upload or select an image.'\n\n        # Resize large images to match VQA performance (Qwen3-VL performance is sensitive to resolution)\n        # Create a copy to avoid modifying the original image used by img2img\n        if current_image is not None and isinstance(current_image, Image.Image):\n            original_size = (current_image.width, current_image.height)\n            needs_resize = current_image.width > 768 or current_image.height > 768\n            needs_rgb = current_image.mode != 'RGB'\n\n            if needs_resize or needs_rgb:\n                # Copy the image before any modifications to preserve the original\n                current_image = current_image.copy()\n\n                if needs_resize:\n                    current_image.thumbnail((768, 768), Image.Resampling.LANCZOS)\n                    debug_log(f'Prompt enhance: Resized image from {original_size} to {(current_image.width, current_image.height)}')\n\n                if needs_rgb:\n                    current_image = current_image.convert('RGB')\n                    debug_log('Prompt enhance: Converted image to RGB mode')\n\n        has_system = system is not None and len(system) > 4\n\n        if current_image is not None and isinstance(current_image, Image.Image):\n            if (self.tokenizer is None) or (not self.tokenizer.is_processor):\n                shared.log.error('Prompt enhance: image not supported by model')\n                return prompt_text # Return original text part if image cannot be processed\n            if prompt_text is not None and len(prompt_text) > 0:\n                if not has_system:\n                    system = self.options.i2i_prompt\n                    system += self.options.nsfw_ok if nsfw else self.options.nsfw_no\n                    system += self.options.details_prompt\n                chat_template = [\n                    { \"role\": \"system\", \"content\": [\n                        {\"type\": \"text\", \"text\": system }\n                    ] },\n                    { \"role\": \"user\",   \"content\": [\n                        {\"type\": \"text\", \"text\": prompt_text},\n                        {\"type\": \"image\", \"image\": b64(current_image)}\n                    ] },\n                ]\n            else:\n                if not has_system:\n                    system = self.options.i2i_noprompt\n                    system += self.options.nsfw_ok if nsfw else self.options.nsfw_no\n                    system += self.options.details_prompt\n                chat_template = [\n                    { \"role\": \"system\", \"content\": [\n                        {\"type\": \"text\", \"text\": system }\n                    ] },\n                    { \"role\": \"user\",   \"content\": [\n                        {\"type\": \"image\", \"image\": b64(current_image)}\n                    ] },\n                ]\n        else:\n            if not has_system:\n                system = self.options.t2i_prompt\n                system += self.options.nsfw_ok if nsfw else self.options.nsfw_no\n                system += self.options.details_prompt\n            if not self.tokenizer.is_processor:\n                chat_template = [\n                    { \"role\": \"system\", \"content\": system },\n                    { \"role\": \"user\",   \"content\": prompt_text },\n                ]\n            else:\n                chat_template = [\n                    { \"role\": \"system\", \"content\": [\n                        {\"type\": \"text\", \"text\": system }\n                    ] },\n                    { \"role\": \"user\",   \"content\": [\n                        {\"type\": \"text\", \"text\": prompt_text},\n                    ] },\n                ]\n\n        # Prepare prefill (VQA approach: string concatenation, not assistant message)\n        prefill_text = (prefill or '').strip()\n        use_prefill = len(prefill_text) > 0\n        is_thinking = is_thinking_model(model)\n\n        debug_log(f'Prompt enhance: chat_template roles={[msg[\"role\"] for msg in chat_template]} is_thinking={is_thinking} thinking={thinking} use_prefill={use_prefill}')\n        t0 = time.time()\n        self.busy = True\n        try:\n            # Generate text prompt using template (WITHOUT enable_thinking parameter)\n            # Let template naturally generate <think> for thinking models\n            try:\n                text_prompt = self.tokenizer.apply_chat_template(\n                    chat_template,\n                    add_generation_prompt=True,\n                    tokenize=False,\n                )\n            except TypeError:\n                text_prompt = self.tokenizer.apply_chat_template(\n                    chat_template,\n                    tokenize=False,\n                )\n\n            # Manually handle thinking tags and prefill (VQA Qwen approach)\n            if is_thinking:\n                if not thinking:\n                    # User wants to SKIP thinking\n                    # Template opened the block with <think>, close it immediately\n                    text_prompt += \"</think>\\n\"\n                    if use_prefill:\n                        text_prompt += prefill_text\n                    debug_log('Prompt enhance: forced thinking off, appended </think>')\n                else:\n                    # User wants thinking - prefill becomes part of thought process\n                    if use_prefill:\n                        text_prompt += prefill_text\n                    debug_log('Prompt enhance: thinking enabled, prefill inside think block')\n            else:\n                # Standard model (no <think> block)\n                if use_prefill:\n                    text_prompt += prefill_text\n\n            debug_log(f'Prompt enhance: final text_prompt (last 200 chars)=\"{text_prompt[-200:]}\"')\n\n            # Tokenize the final prompt\n            # For VL models with images, pass the image to the processor (like VQA does)\n            if self.tokenizer.is_processor and current_image is not None:\n                inputs = self.tokenizer(text=[text_prompt], images=[current_image], padding=True, return_tensors=\"pt\")\n            elif self.tokenizer.is_processor:\n                # VL processor without image - must use explicit text= parameter\n                inputs = self.tokenizer(text=[text_prompt], images=None, padding=True, return_tensors=\"pt\")\n            else:\n                inputs = self.tokenizer(text_prompt, return_tensors=\"pt\")\n            inputs = inputs.to(devices.device).to(devices.dtype)\n\n            input_len = inputs['input_ids'].shape[1]\n            debug_log(f'Prompt enhance: input_len={input_len} input_ids_shape={inputs[\"input_ids\"].shape} sample={sample} temp={temperature} penalty={penalty} max_tokens={tokens}')\n        except Exception as e:\n            shared.log.error(f'Prompt enhance tokenize: {e}')\n            errors.display(e, 'Prompt enhance')\n            self.busy = False\n            return prompt_text # Return original text part on error\n        try:\n            with devices.inference_context():\n                sd_models.move_model(self.llm, devices.device)\n                gen_kwargs = {\n                    'do_sample': sample,\n                    'temperature': float(temperature),\n                    'max_new_tokens': int(tokens),\n                    'repetition_penalty': float(penalty),\n                }\n                if top_k > 0:\n                    gen_kwargs['top_k'] = int(top_k)\n                if top_p > 0:\n                    gen_kwargs['top_p'] = float(top_p)\n                outputs = self.llm.generate(**inputs, **gen_kwargs)\n                if shared.opts.diffusers_offload_mode != 'none':\n                    sd_models.move_model(self.llm, devices.cpu, force=True)\n                    devices.torch_gc(force=True, reason='prompt enhance offload')\n            outputs_cropped = outputs[:, input_len:]\n            response = self.tokenizer.batch_decode(\n                outputs_cropped,\n                skip_special_tokens=True,\n                clean_up_tokenization_spaces=True,\n            )\n            if debug_enabled:\n                response_before_clean = response[0] if isinstance(response, list) else response\n                debug_log(f'Prompt enhance: response_before_clean=\"{response_before_clean}\"')\n        except Exception as e:\n            outputs = None\n            shared.log.error(f'Prompt enhance generate: {e}')\n            errors.display(e, 'Prompt enhance')\n            self.busy = False\n            response = f'Error: {str(e)}'\n        t1 = time.time()\n\n        if isinstance(response, list):\n            response = response[0]\n        is_censored =  self.censored(response)\n        if not is_censored:\n            response = self.clean(response, keep_thinking=keep_thinking, prefill_text=prefill_text, keep_prefill=keep_prefill)\n            response = self.post(response, prefix, suffix, networks)\n        shared.log.info(f'Prompt enhance: model=\"{model}\" nsfw={nsfw} time={t1-t0:.2f} seed={seed} sample={sample} temperature={temperature} penalty={penalty} thinking={thinking} keep_thinking={keep_thinking} prefill=\"{prefill_text[:20] if prefill_text else \"\"}\" keep_prefill={keep_prefill} tokens={tokens} inputs={input_len} outputs={outputs.shape[-1] if isinstance(outputs, torch.Tensor) else 0} prompt={len(prompt_text)} response={len(response)}')\n        debug_log(f'Prompt enhance: prompt=\"{prompt_text}\"')\n        debug_log(f'Prompt enhance: response_after_clean=\"{response}\"')\n        self.busy = False\n        if is_censored:\n            shared.log.warning(f'Prompt enhance: censored response=\"{response}\"')\n            return prompt # Return original full prompt on censorship\n        return response\n\n    def apply(self, prompt, image, apply_prompt, llm_model, prompt_system, prompt_prefix, prompt_suffix, max_tokens, do_sample, temperature, repetition_penalty, top_k, top_p, thinking_mode, nsfw_mode, use_vision, prefill_text, keep_prefill, keep_thinking):\n        response = self.enhance(\n            prompt=prompt,\n            image=image,\n            prefix=prompt_prefix,\n            suffix=prompt_suffix,\n            model=llm_model,\n            system=prompt_system,\n            sample=do_sample,\n            tokens=max_tokens,\n            temperature=temperature,\n            penalty=repetition_penalty,\n            top_k=top_k,\n            top_p=top_p,\n            thinking=thinking_mode,\n            nsfw=nsfw_mode,\n            use_vision=use_vision,\n            prefill=prefill_text,\n            keep_prefill=keep_prefill,\n            keep_thinking=keep_thinking,\n        )\n        if apply_prompt:\n            return [response, response]\n        return [response, gr.update()]\n\n    def get_custom(self, name):\n        # Strip symbols from display name to get repo\n        repo_name = get_model_repo_from_display(name)\n        model_repo = self.options.models.get(repo_name, {}).get('repo', None) or repo_name\n        model_gguf = self.options.models.get(repo_name, {}).get('gguf', None)\n        model_type = self.options.models.get(repo_name, {}).get('type', None)\n        model_file = self.options.models.get(repo_name, {}).get('file', None)\n        return [model_repo, model_gguf, model_type, model_file]\n\n    def update_vision_toggle(self, model_name):\n        \"\"\"Update vision toggle interactivity and value based on model selection.\"\"\"\n        repo_name = get_model_repo_from_display(model_name)\n        is_vl = is_vision_model(repo_name)\n        # When non-VL model: disable and uncheck. When VL model: enable and check.\n        return gr.update(interactive=is_vl, value=is_vl)\n\n    def ui(self, _is_img2img):\n        with gr.Accordion('Prompt enhance', open=False, elem_id='prompt_enhance'):\n            gr.HTML('<style>#prompt_enhance_use_vision:has(input:disabled) { opacity: 0.5; }</style>')\n            with gr.Row():\n                apply_btn = gr.Button(value='Enhance now', elem_id='prompt_enhance_apply', variant='primary')\n            with gr.Row():\n                apply_prompt = gr.Checkbox(label='Apply to prompt', value=False)\n                apply_auto = gr.Checkbox(label='Auto enhance', value=False)\n            with gr.Row():\n                # Set initial state based on whether default model supports vision\n                default_is_vl = is_vision_model(Options.default)\n                use_vision = gr.Checkbox(label='Use vision', value=default_is_vl, interactive=default_is_vl, elem_id='prompt_enhance_use_vision')\n            gr.HTML('<br>')\n            with gr.Group():\n                with gr.Row():\n                    llm_model = gr.Dropdown(label='LLM model', choices=Options.get_model_choices(), value=Options.get_default_display(), interactive=True, allow_custom_value=True, elem_id='prompt_enhance_model')\n                with gr.Row():\n                    load_btn = gr.Button(value='Load model', elem_id='prompt_enhance_load', variant='secondary')\n                    load_btn.click(fn=self.load, inputs=[llm_model], outputs=[])\n                    unload_btn = gr.Button(value='Unload model', elem_id='prompt_enhance_unload', variant='secondary')\n                    unload_btn.click(fn=self.unload, inputs=[], outputs=[])\n                with gr.Accordion('Custom model', open=False, elem_id='prompt_enhance_custom'):\n                    with gr.Row():\n                        model_repo = gr.Textbox(label='Model repo', value=None, interactive=True, elem_id='prompt_enhance_model_repo', placeholder='Original model repo on huggingface')\n                    with gr.Row():\n                        model_gguf = gr.Textbox(label='Model gguf', value=None, interactive=True, elem_id='prompt_enhance_model_gguf', placeholder='Optional GGUF model repo on huggingface')\n                    with gr.Row():\n                        model_type = gr.Textbox(label='Model type', value=None, interactive=True, elem_id='prompt_enhance_model_type', placeholder='Optional GGUF model type')\n                    with gr.Row():\n                        model_file = gr.Textbox(label='Model file', value=None, interactive=True, elem_id='prompt_enhance_model_file', placeholder='Optional GGUF model file inside GGUF model repo')\n                    with gr.Row():\n                        custom_btn = gr.Button(value='Load custom model', elem_id='prompt_enhance_custom_load', variant='secondary')\n                        custom_btn.click(fn=self.load, inputs=[model_repo, model_repo, model_gguf, model_type, model_file], outputs=[])\n                        llm_model.change(fn=self.get_custom, inputs=[llm_model], outputs=[model_repo, model_gguf, model_type, model_file])\n                        gr.HTML('<br>')\n                with gr.Accordion('Options', open=False, elem_id='prompt_enhance_options'):\n                    with gr.Row():\n                        max_tokens = gr.Slider(label='Max tokens', value=self.options.max_tokens, minimum=10, maximum=1024, step=1, interactive=True)\n                        do_sample = gr.Checkbox(label='Use samplers', value=self.options.do_sample, interactive=True)\n                    with gr.Row():\n                        temperature = gr.Slider(label='Temperature', value=self.options.temperature, minimum=0.0, maximum=1.0, step=0.01, interactive=True)\n                        repetition_penalty = gr.Slider(label='Repetition penalty', value=self.options.repetition_penalty, minimum=0.0, maximum=2.0, step=0.01, interactive=True)\n                    with gr.Row():\n                        top_k = gr.Slider(label='Top-K', value=self.options.top_k, minimum=0, maximum=100, step=1, interactive=True)\n                        top_p = gr.Slider(label='Top-P', value=self.options.top_p, minimum=0.0, maximum=1.0, step=0.01, interactive=True)\n                    with gr.Row():\n                        nsfw_mode = gr.Checkbox(label='NSFW allowed', value=True, interactive=True)\n                        thinking_mode = gr.Checkbox(label='Thinking mode', value=False, interactive=True)\n                    with gr.Row():\n                        keep_thinking = gr.Checkbox(label='Keep Thinking Trace', value=False, interactive=True)\n                        keep_prefill = gr.Checkbox(label='Keep Prefill', value=False, interactive=True)\n                    with gr.Row():\n                        prefill_text = gr.Textbox(label='Prefill text', value='', placeholder='Optional: pre-fill start of model response', interactive=True, lines=1)\n                    gr.HTML('<br>')\n                with gr.Accordion('Input', open=False, elem_id='prompt_enhance_system_prompt'): # Corrected elem_id reference\n                    with gr.Row():\n                        prompt_prefix = gr.Textbox(label='Prompt prefix', value='', placeholder='Text prepended to the enhanced result', interactive=True, lines=2, elem_id='prompt_enhance_prefix')\n                    with gr.Row():\n                        prompt_suffix = gr.Textbox(label='Prompt suffix', value='', placeholder='Text appended to the enhanced result', interactive=True, lines=2, elem_id='prompt_enhance_suffix')\n                    with gr.Row():\n                        prompt_system = gr.Textbox(label='System prompt', value='', placeholder='Leave empty to use built-in enhancement instructions', interactive=True, lines=4, elem_id='prompt_enhance_system')\n                with gr.Accordion('Output', open=True, elem_id='prompt_enhance_output'): # Corrected elem_id reference\n                    with gr.Row():\n                        prompt_output = gr.Textbox(label='Enhanced prompt', value='', placeholder='Enhanced prompt will appear here', interactive=True, lines=4, max_lines=12, elem_id='prompt_enhance_result')\n                    with gr.Row():\n                        clear_btn = gr.Button(value='Clear', elem_id='prompt_enhance_clear', variant='secondary')\n                        clear_btn.click(fn=lambda: '', inputs=[], outputs=[prompt_output])\n                        copy_btn = gr.Button(value='Set prompt', elem_id='prompt_enhance_copy', variant='secondary')\n                        copy_btn.click(fn=lambda x: x, inputs=[prompt_output], outputs=[self.prompt])\n            if self.image is None:\n                self.image = gr.Image(type='pil', interactive=False, visible=False, width=64, height=64) # dummy image\n            # Update vision toggle interactivity when model changes\n            llm_model.change(fn=self.update_vision_toggle, inputs=[llm_model], outputs=[use_vision], show_progress=False)\n            apply_btn.click(fn=self.apply, inputs=[self.prompt, self.image, apply_prompt, llm_model, prompt_system, prompt_prefix, prompt_suffix, max_tokens, do_sample, temperature, repetition_penalty, top_k, top_p, thinking_mode, nsfw_mode, use_vision, prefill_text, keep_prefill, keep_thinking], outputs=[prompt_output, self.prompt])\n        return [self.prompt, self.image, apply_auto, llm_model, prompt_system, prompt_prefix, prompt_suffix, max_tokens, do_sample, temperature, repetition_penalty, top_k, top_p, thinking_mode, nsfw_mode, use_vision, prefill_text, keep_prefill, keep_thinking]\n\n    def after_component(self, component, **kwargs): # searching for actual ui prompt components\n        if getattr(component, 'elem_id', '') in ['txt2img_prompt', 'img2img_prompt', 'control_prompt', 'video_prompt']:\n            self.prompt = component\n            self.prompt.use_original = True\n        if getattr(component, 'elem_id', '') in ['img2img_image', 'control_input_select']:\n            self.image = component\n            self.image.use_original = True\n\n    def before_process(self, p: processing.StableDiffusionProcessing, *args, **kwargs): # pylint: disable=unused-argument\n        _self_prompt, self_image, apply_auto, llm_model, prompt_system, prompt_prefix, prompt_suffix, max_tokens, do_sample, temperature, repetition_penalty, top_k, top_p, thinking_mode, nsfw_mode, use_vision, prefill_text, keep_prefill, keep_thinking = args\n        if not apply_auto and not p.enhance_prompt:\n            return\n        if shared.state.skipped or shared.state.interrupted:\n            return\n        p.prompt = shared.prompt_styles.apply_styles_to_prompt(p.prompt, p.styles)\n        p.negative_prompt = shared.prompt_styles.apply_negative_styles_to_prompt(p.negative_prompt, p.styles)\n        shared.prompt_styles.apply_styles_to_extra(p)\n        p.styles = []\n        jobid = shared.state.begin('LLM')\n        p.prompt = self.enhance(\n            prompt=p.prompt,\n            seed=p.seed,\n            image=self_image,\n            prefix=prompt_prefix,\n            suffix=prompt_suffix,\n            model=llm_model,\n            system=prompt_system,\n            sample=do_sample,\n            tokens=max_tokens,\n            temperature=temperature,\n            penalty=repetition_penalty,\n            top_k=top_k,\n            top_p=top_p,\n            thinking=thinking_mode,\n            nsfw=nsfw_mode,\n            use_vision=use_vision,\n            prefill=prefill_text,\n            keep_prefill=keep_prefill,\n            keep_thinking=keep_thinking,\n        )\n        timer.process.record('prompt')\n        p.extra_generation_params['LLM'] = llm_model\n        shared.state.end(jobid)\n"
  },
  {
    "path": "scripts/prompt_matrix.py",
    "content": "import math\nimport gradio as gr\nfrom modules import images, scripts_manager\nfrom modules.processing import process_images\nfrom modules.shared import opts, log\nimport modules.sd_samplers\n\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return \"Prompt matrix\"\n\n    def ui(self, is_img2img):\n        with gr.Row():\n            gr.HTML('<span\">&nbsp Prompt matrix</span><br>')\n        with gr.Row():\n            put_at_start = gr.Checkbox(label='Set at prompt start', value=False, elem_id=self.elem_id(\"put_at_start\"))\n            different_seeds = gr.Checkbox(label='Random seeds', value=False, elem_id=self.elem_id(\"different_seeds\"))\n        with gr.Row():\n            prompt_type = gr.Radio([\"positive\", \"negative\"], label=\"Prompt type\", elem_id=self.elem_id(\"prompt_type\"), value=\"positive\")\n            variations_delimiter = gr.Radio([\"comma\", \"space\"], label=\"Joining char\", elem_id=self.elem_id(\"variations_delimiter\"), value=\"comma\")\n        with gr.Row():\n            margin_size = gr.Slider(label=\"Grid margins\", minimum=0, maximum=500, value=0, step=2, elem_id=self.elem_id(\"margin_size\"))\n\n        return [put_at_start, different_seeds, prompt_type, variations_delimiter, margin_size]\n\n    def run(self, p, put_at_start, different_seeds, prompt_type, variations_delimiter, margin_size): # pylint: disable=arguments-differ\n        modules.processing.fix_seed(p)\n        # Raise error if promp type is not positive or negative\n        if prompt_type not in [\"positive\", \"negative\"]:\n            raise ValueError(f\"Unknown prompt type {prompt_type}\")\n        # Raise error if variations delimiter is not comma or space\n        if variations_delimiter not in [\"comma\", \"space\"]:\n            raise ValueError(f\"Unknown variations delimiter {variations_delimiter}\")\n\n        prompt = p.prompt if prompt_type == \"positive\" else p.negative_prompt\n        original_prompt = prompt[0] if type(prompt) == list else prompt\n        positive_prompt = p.prompt[0] if type(p.prompt) == list else p.prompt\n\n        delimiter = \", \" if variations_delimiter == \"comma\" else \" \"\n\n        all_prompts = []\n        prompt_matrix_parts = original_prompt.split(\"|\")\n        combination_count = 2 ** (len(prompt_matrix_parts) - 1)\n        for combination_num in range(combination_count):\n            selected_prompts = [text.strip().strip(',') for n, text in enumerate(prompt_matrix_parts[1:]) if combination_num & (1 << n)]\n\n            if put_at_start:\n                selected_prompts = selected_prompts + [prompt_matrix_parts[0]]\n            else:\n                selected_prompts = [prompt_matrix_parts[0]] + selected_prompts\n\n            all_prompts.append(delimiter.join(selected_prompts))\n\n        p.n_iter = math.ceil(len(all_prompts) / p.batch_size)\n        p.do_not_save_grid = True\n\n        log.info(f\"Prompt-matrix: images={len(all_prompts)} batches={p.n_iter}\")\n\n        if prompt_type == \"positive\":\n            p.prompt = all_prompts\n        else:\n            p.negative_prompt = all_prompts\n        p.seed = [int(p.seed + (i if different_seeds else 0)) for i in range(len(all_prompts))]\n        p.prompt_for_display = positive_prompt\n        processed = process_images(p)\n\n        if images.check_grid_size(processed.images):\n            grid = images.image_grid(processed.images, p.batch_size, rows=1 << ((len(prompt_matrix_parts) - 1) // 2))\n            grid = images.draw_prompt_matrix(grid, processed.images[0].width, processed.images[0].height, prompt_matrix_parts, margin_size)\n            processed.images.insert(0, grid)\n            processed.index_of_first_image = 1\n            processed.infotexts.insert(0, processed.infotexts[0])\n            if opts.grid_save:\n                images.save_image(processed.images[0], p.outpath_grids, \"prompt_matrix\", extension=opts.grid_format, prompt=original_prompt, seed=processed.seed, grid=True, p=p)\n\n        return processed\n"
  },
  {
    "path": "scripts/prompts_from_file.py",
    "content": "import copy\nimport random\nimport shlex\nimport gradio as gr\nfrom modules import sd_samplers, errors, scripts_manager\nfrom modules.processing import get_processed, process_images\nfrom modules.shared import state, log\n\n\ndef process_string_tag(tag):\n    return tag\n\n\ndef process_int_tag(tag):\n    return int(tag)\n\n\ndef process_float_tag(tag):\n    return float(tag)\n\n\ndef process_boolean_tag(tag):\n    return True if (tag == \"true\") else False\n\n\nprompt_tags = {\n    \"sd_model\": None,\n    \"outpath_samples\": process_string_tag,\n    \"outpath_grids\": process_string_tag,\n    \"prompt_for_display\": process_string_tag,\n    \"prompt\": process_string_tag,\n    \"negative_prompt\": process_string_tag,\n    \"styles\": process_string_tag,\n    \"seed\": process_int_tag,\n    \"subseed_strength\": process_float_tag,\n    \"subseed\": process_int_tag,\n    \"seed_resize_from_h\": process_int_tag,\n    \"seed_resize_from_w\": process_int_tag,\n    \"sampler_index\": process_int_tag,\n    \"sampler_name\": process_string_tag,\n    \"batch_size\": process_int_tag,\n    \"n_iter\": process_int_tag,\n    \"steps\": process_int_tag,\n    \"cfg_scale\": process_float_tag,\n    \"width\": process_int_tag,\n    \"height\": process_int_tag,\n    \"detailer\": process_boolean_tag,\n    \"tiling\": process_boolean_tag,\n    \"do_not_save_samples\": process_boolean_tag,\n    \"do_not_save_grid\": process_boolean_tag\n}\n\n\ndef cmdargs(line):\n    args = shlex.split(line)\n    pos = 0\n    res = {}\n    while pos < len(args):\n        arg = args[pos]\n        assert arg.startswith(\"--\"), f'must start with \"--\": {arg}'\n        assert pos+1 < len(args), f'missing argument for command line option {arg}'\n        tag = arg[2:]\n        if tag == \"prompt\" or tag == \"negative_prompt\":\n            pos += 1\n            prompt = args[pos]\n            pos += 1\n            while pos < len(args) and not args[pos].startswith(\"--\"):\n                prompt += \" \"\n                prompt += args[pos]\n                pos += 1\n            res[tag] = prompt\n            continue\n\n        func = prompt_tags.get(tag, None)\n        assert func, f'unknown commandline option: {arg}'\n        val = args[pos+1]\n        if tag == \"sampler_name\":\n            val = sd_samplers.samplers_map.get(val.lower(), None)\n        res[tag] = func(val)\n        pos += 2\n    return res\n\n\ndef load_prompt_file(file):\n    if file is None:\n        return None, gr.update(), gr.update(lines=7)\n    else:\n        try:\n            lines = [x.strip() for x in file.decode('utf8', errors='ignore').split(\"\\n\")]\n        except Exception as e:\n            log.error(f\"Prompt file: {e}\")\n            lines = ''\n        return None, \"\\n\".join(lines), gr.update(lines=7)\n\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return \"Prompts from file\"\n\n    def ui(self, is_img2img):\n        with gr.Row():\n            gr.HTML('<span\">&nbsp Prompt from file</span><br>')\n        with gr.Row():\n            checkbox_iterate = gr.Checkbox(label=\"Iterate seed per line\", value=False, elem_id=self.elem_id(\"checkbox_iterate\"))\n            checkbox_iterate_batch = gr.Checkbox(label=\"Use same seed\", value=False, elem_id=self.elem_id(\"checkbox_iterate_batch\"))\n        prompt_txt = gr.Textbox(label=\"Prompts\", lines=2, elem_id=self.elem_id(\"prompt_txt\"), value='')\n        file = gr.File(label=\"Upload prompts\", type='binary', elem_id=self.elem_id(\"file\"))\n        file.change(fn=load_prompt_file, inputs=[file], outputs=[file, prompt_txt, prompt_txt], show_progress='hidden')\n        prompt_txt.change(lambda tb: gr.update(lines=7) if (\"\\n\" in tb) else gr.update(lines=2), inputs=[prompt_txt], outputs=[prompt_txt], show_progress='hidden')\n        return [checkbox_iterate, checkbox_iterate_batch, prompt_txt]\n\n    def run(self, p, checkbox_iterate, checkbox_iterate_batch, prompt_txt: str): # pylint: disable=arguments-differ\n        lines = [x.strip() for x in prompt_txt.splitlines()]\n        lines = [x for x in lines if len(x) > 0]\n        job_count = 0\n        jobs = []\n        for line in lines:\n            if \"--\" in line:\n                try:\n                    args = cmdargs(line)\n                except Exception as e:\n                    errors.display(e, f'parsing prompts: {line}')\n                    args = {\"prompt\": line}\n            else:\n                args = {\"prompt\": line}\n            job_count += args.get(\"n_iter\", p.n_iter)\n            jobs.append(args)\n\n        log.info(f\"Prompts-from-file: lines={len(lines)} jobs={job_count}\")\n        if (checkbox_iterate or checkbox_iterate_batch) and p.seed == -1:\n            p.seed = int(random.randrange(4294967294))\n        state.job_count = job_count\n        images = []\n        all_prompts = []\n        all_seeds = []\n        all_negative = []\n        infotexts = []\n        for args in jobs:\n            copy_p = copy.copy(p)\n            for k, v in args.items():\n                setattr(copy_p, k, v)\n            proc = process_images(copy_p)\n            if checkbox_iterate:\n                p.seed = p.seed + (p.batch_size * p.n_iter)\n            all_seeds += proc.all_seeds\n            all_prompts += proc.all_prompts\n            all_negative += proc.all_negative_prompts\n            images += proc.images\n            infotexts += proc.infotexts\n            if state.interrupted:\n                break\n        return get_processed(p, images, p.seed, \"\", all_prompts=all_prompts, all_seeds=all_seeds, all_negative_prompts=all_negative, infotexts=infotexts)\n"
  },
  {
    "path": "scripts/pulid/__init__.py",
    "content": "\"\"\"\nCredit and original implementation: <https://github.com/ToTheBeginning/PuLID>\n\"\"\"\n\nimport os\nimport sys\nfrom modules.errors import log\nsys.path.append(os.path.dirname(__file__))\ntry:\n    from pulid_sdxl import StableDiffusionXLPuLIDPipeline, StableDiffusionXLPuLIDPipelineImage, StableDiffusionXLPuLIDPipelineInpaint\n    from pulid_flux import apply_flux, unapply_flux\n    from pulid_utils import resize_numpy_image_long as resize\n    import attention_processor as attention\n    import pulid_sampling as sampling\nexcept Exception as e:\n    import traceback\n    log.error(f'PuLID import error: {e}')\n    print(traceback.format_exc())\n    print(sys.exc_info()[0])\n    raise ImportError(f'PuLID import error: {e}') from e\n"
  },
  {
    "path": "scripts/pulid/attention_processor.py",
    "content": "# modified from https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py\nimport torch\nimport torch.nn as nn\nimport torch.nn.functional as F\n\n\nNUM_ZERO = 0\nORTHO = False\nORTHO_v2 = False\n\n\nclass AttnProcessor(nn.Module):\n    def __init__(self):\n        super().__init__()\n\n    def __call__(\n        self,\n        attn,\n        hidden_states,\n        encoder_hidden_states=None,\n        attention_mask=None,\n        temb=None,\n        id_embedding=None,\n        id_scale=1.0,\n    ):\n        residual = hidden_states\n\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n\n        batch_size, sequence_length, _ = (\n            hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape\n        )\n        attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n\n        if attn.group_norm is not None:\n            hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2)\n\n        query = attn.to_q(hidden_states)\n\n        if encoder_hidden_states is None:\n            encoder_hidden_states = hidden_states\n        elif attn.norm_cross:\n            encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states)\n\n        key = attn.to_k(encoder_hidden_states)\n        value = attn.to_v(encoder_hidden_states)\n\n        query = attn.head_to_batch_dim(query)\n        key = attn.head_to_batch_dim(key)\n        value = attn.head_to_batch_dim(value)\n\n        attention_probs = attn.get_attention_scores(query, key, attention_mask)\n        hidden_states = torch.bmm(attention_probs, value)\n        hidden_states = attn.batch_to_head_dim(hidden_states)\n\n        # linear proj\n        hidden_states = attn.to_out[0](hidden_states)\n        # dropout\n        hidden_states = attn.to_out[1](hidden_states)\n\n        if input_ndim == 4:\n            hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n\n\nclass IDAttnProcessor(nn.Module):\n    r\"\"\"\n    Attention processor for ID-Adapater.\n    Args:\n        hidden_size (`int`):\n            The hidden size of the attention layer.\n        cross_attention_dim (`int`):\n            The number of channels in the `encoder_hidden_states`.\n        scale (`float`, defaults to 1.0):\n            the weight scale of image prompt.\n    \"\"\"\n\n    def __init__(self, hidden_size, cross_attention_dim=None):\n        super().__init__()\n        self.id_to_k = nn.Linear(cross_attention_dim or hidden_size, hidden_size, bias=False)\n        self.id_to_v = nn.Linear(cross_attention_dim or hidden_size, hidden_size, bias=False)\n\n    def __call__(\n        self,\n        attn,\n        hidden_states,\n        encoder_hidden_states=None,\n        attention_mask=None,\n        temb=None,\n        id_embedding=None,\n        id_scale=1.0,\n    ):\n        residual = hidden_states\n\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n\n        batch_size, sequence_length, _ = (\n            hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape\n        )\n        attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n\n        if attn.group_norm is not None:\n            hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2)\n\n        query = attn.to_q(hidden_states)\n\n        if encoder_hidden_states is None:\n            encoder_hidden_states = hidden_states\n        elif attn.norm_cross:\n            encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states)\n\n        key = attn.to_k(encoder_hidden_states)\n        value = attn.to_v(encoder_hidden_states)\n\n        query = attn.head_to_batch_dim(query)\n        key = attn.head_to_batch_dim(key)\n        value = attn.head_to_batch_dim(value)\n\n        attention_probs = attn.get_attention_scores(query, key, attention_mask)\n        hidden_states = torch.bmm(attention_probs, value)\n        hidden_states = attn.batch_to_head_dim(hidden_states)\n\n        # for id-adapter\n        if id_embedding is not None:\n            if NUM_ZERO == 0:\n                id_key = self.id_to_k(id_embedding)\n                id_value = self.id_to_v(id_embedding)\n            else:\n                zero_tensor = torch.zeros(\n                    (id_embedding.size(0), NUM_ZERO, id_embedding.size(-1)),\n                    dtype=id_embedding.dtype,\n                    device=id_embedding.device,\n                )\n                id_key = self.id_to_k(torch.cat((id_embedding, zero_tensor), dim=1))\n                id_value = self.id_to_v(torch.cat((id_embedding, zero_tensor), dim=1))\n\n            id_key = attn.head_to_batch_dim(id_key).to(query.dtype)\n            id_value = attn.head_to_batch_dim(id_value).to(query.dtype)\n\n            id_attention_probs = attn.get_attention_scores(query, id_key, None)\n            id_hidden_states = torch.bmm(id_attention_probs, id_value)\n            id_hidden_states = attn.batch_to_head_dim(id_hidden_states)\n\n            if not ORTHO:\n                hidden_states = hidden_states + id_scale * id_hidden_states\n            else:\n                projection = (\n                    torch.sum((hidden_states * id_hidden_states), dim=-2, keepdim=True)\n                    / torch.sum((hidden_states * hidden_states), dim=-2, keepdim=True)\n                    * hidden_states\n                )\n                orthogonal = id_hidden_states - projection\n                hidden_states = hidden_states + id_scale * orthogonal\n\n        # linear proj\n        hidden_states = attn.to_out[0](hidden_states)\n        # dropout\n        hidden_states = attn.to_out[1](hidden_states)\n\n        if input_ndim == 4:\n            hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n\n\nclass AttnProcessor2_0(nn.Module):\n    r\"\"\"\n    Processor for implementing scaled dot-product attention (enabled by default if you're using PyTorch 2.0).\n    \"\"\"\n\n    def __init__(self):\n        super().__init__()\n        if not hasattr(F, \"scaled_dot_product_attention\"):\n            raise ImportError(\"AttnProcessor2_0 requires PyTorch 2.0, to use it, please upgrade PyTorch to 2.0.\")\n\n    def __call__(\n        self,\n        attn,\n        hidden_states,\n        encoder_hidden_states=None,\n        attention_mask=None,\n        temb=None,\n        id_embedding=None,\n        id_scale=1.0,\n    ):\n        residual = hidden_states\n\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n\n        batch_size, sequence_length, _ = (\n            hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape\n        )\n\n        if attention_mask is not None:\n            attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n            # scaled_dot_product_attention expects attention_mask shape to be\n            # (batch, heads, source_length, target_length)\n            attention_mask = attention_mask.view(batch_size, attn.heads, -1, attention_mask.shape[-1])\n\n        if attn.group_norm is not None:\n            hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2)\n\n        query = attn.to_q(hidden_states)\n\n        if encoder_hidden_states is None:\n            encoder_hidden_states = hidden_states\n        elif attn.norm_cross:\n            encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states)\n\n        key = attn.to_k(encoder_hidden_states)\n        value = attn.to_v(encoder_hidden_states)\n\n        inner_dim = key.shape[-1]\n        head_dim = inner_dim // attn.heads\n\n        query = query.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        key = key.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        value = value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        # the output of sdp = (batch, num_heads, seq_len, head_dim)\n        hidden_states = F.scaled_dot_product_attention(\n            query, key, value, attn_mask=attention_mask, dropout_p=0.0, is_causal=False\n        )\n\n        hidden_states = hidden_states.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n        hidden_states = hidden_states.to(query.dtype)\n\n        # linear proj\n        hidden_states = attn.to_out[0](hidden_states)\n        # dropout\n        hidden_states = attn.to_out[1](hidden_states)\n\n        if input_ndim == 4:\n            hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n\n\nclass IDAttnProcessor2_0(torch.nn.Module):\n    r\"\"\"\n    Attention processor for ID-Adapater for PyTorch 2.0.\n    Args:\n        hidden_size (`int`):\n            The hidden size of the attention layer.\n        cross_attention_dim (`int`):\n            The number of channels in the `encoder_hidden_states`.\n    \"\"\"\n\n    def __init__(self, hidden_size, cross_attention_dim=None):\n        super().__init__()\n        if not hasattr(F, \"scaled_dot_product_attention\"):\n            raise ImportError(\"AttnProcessor2_0 requires PyTorch 2.0, to use it, please upgrade PyTorch to 2.0.\")\n\n        self.id_to_k = nn.Linear(cross_attention_dim or hidden_size, hidden_size, bias=False)\n        self.id_to_v = nn.Linear(cross_attention_dim or hidden_size, hidden_size, bias=False)\n\n    def __call__(\n        self,\n        attn,\n        hidden_states,\n        encoder_hidden_states=None,\n        attention_mask=None,\n        temb=None,\n        id_embedding=None,\n        id_scale=1.0,\n    ):\n        residual = hidden_states\n\n        if attn.spatial_norm is not None:\n            hidden_states = attn.spatial_norm(hidden_states, temb)\n\n        input_ndim = hidden_states.ndim\n\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n\n        batch_size, sequence_length, _ = (\n            hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape\n        )\n\n        if attention_mask is not None:\n            attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n            # scaled_dot_product_attention expects attention_mask shape to be\n            # (batch, heads, source_length, target_length)\n            attention_mask = attention_mask.view(batch_size, attn.heads, -1, attention_mask.shape[-1])\n\n        if attn.group_norm is not None:\n            hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2)\n\n        query = attn.to_q(hidden_states)\n\n        if encoder_hidden_states is None:\n            encoder_hidden_states = hidden_states\n        elif attn.norm_cross:\n            encoder_hidden_states = attn.norm_encoder_hidden_states(encoder_hidden_states)\n\n        key = attn.to_k(encoder_hidden_states)\n        value = attn.to_v(encoder_hidden_states)\n\n        inner_dim = key.shape[-1]\n        head_dim = inner_dim // attn.heads\n\n        query = query.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        key = key.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        value = value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n        # the output of sdp = (batch, num_heads, seq_len, head_dim)\n        hidden_states = F.scaled_dot_product_attention(query, key, value, attn_mask=attention_mask, dropout_p=0.0, is_causal=False)\n        hidden_states = hidden_states.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n        hidden_states = hidden_states.to(query.dtype)\n\n        # for id embedding\n        if id_embedding is not None:\n            if NUM_ZERO == 0:\n                id_key = self.id_to_k(id_embedding).to(query.dtype)\n                id_value = self.id_to_v(id_embedding).to(query.dtype)\n            else:\n                zero_tensor = torch.zeros(\n                    (id_embedding.size(0), NUM_ZERO, id_embedding.size(-1)),\n                    dtype=id_embedding.dtype,\n                    device=id_embedding.device,\n                )\n                id_cat = torch.cat((id_embedding, zero_tensor), dim=1)\n                id_key = self.id_to_k(id_cat).to(query.dtype)\n                id_value = self.id_to_v(id_cat).to(query.dtype)\n\n            id_key = id_key.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n            id_value = id_value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n\n            # the output of sdp = (batch, num_heads, seq_len, head_dim)\n            id_hidden_states = F.scaled_dot_product_attention(query, id_key, id_value, attn_mask=None, dropout_p=0.0, is_causal=False)\n            id_hidden_states = id_hidden_states.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n            id_hidden_states = id_hidden_states.to(query.dtype)\n\n            if not ORTHO and not ORTHO_v2:\n                hidden_states = hidden_states + id_scale * id_hidden_states\n            elif ORTHO_v2:\n                orig_dtype = hidden_states.dtype\n                hidden_states = hidden_states.to(torch.float32)\n                id_hidden_states = id_hidden_states.to(torch.float32)\n                attn_map = query @ id_key.transpose(-2, -1)\n                attn_mean = attn_map.softmax(dim=-1).mean(dim=1)\n                attn_mean = attn_mean[:, :, :5].sum(dim=-1, keepdim=True)\n                projection = (\n                    torch.sum((hidden_states * id_hidden_states), dim=-2, keepdim=True)\n                    / torch.sum((hidden_states * hidden_states), dim=-2, keepdim=True)\n                    * hidden_states\n                )\n                orthogonal = id_hidden_states + (attn_mean - 1) * projection\n                hidden_states = hidden_states + id_scale * orthogonal\n                hidden_states = hidden_states.to(orig_dtype)\n            else:\n                orig_dtype = hidden_states.dtype\n                hidden_states = hidden_states.to(torch.float32)\n                id_hidden_states = id_hidden_states.to(torch.float32)\n                projection = (\n                    torch.sum((hidden_states * id_hidden_states), dim=-2, keepdim=True)\n                    / torch.sum((hidden_states * hidden_states), dim=-2, keepdim=True)\n                    * hidden_states\n                )\n                orthogonal = id_hidden_states - projection\n                hidden_states = hidden_states + id_scale * orthogonal\n                hidden_states = hidden_states.to(orig_dtype)\n\n        # linear proj\n        hidden_states = attn.to_out[0](hidden_states)\n        # dropout\n        hidden_states = attn.to_out[1](hidden_states)\n\n        if input_ndim == 4:\n            hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n\n        return hidden_states\n"
  },
  {
    "path": "scripts/pulid/encoders_transformer.py",
    "content": "import math\nimport torch\nimport torch.nn as nn\n\n\n# FFN\ndef FeedForward(dim, mult=4):\n    inner_dim = int(dim * mult)\n    return nn.Sequential(\n        nn.LayerNorm(dim),\n        nn.Linear(dim, inner_dim, bias=False),\n        nn.GELU(),\n        nn.Linear(inner_dim, dim, bias=False),\n    )\n\n\ndef reshape_tensor(x, heads):\n    bs, length, _width = x.shape\n    # (bs, length, width) --> (bs, length, n_heads, dim_per_head)\n    x = x.view(bs, length, heads, -1)\n    # (bs, length, n_heads, dim_per_head) --> (bs, n_heads, length, dim_per_head)\n    x = x.transpose(1, 2)\n    # (bs, n_heads, length, dim_per_head) --> (bs*n_heads, length, dim_per_head)\n    x = x.reshape(bs, heads, length, -1)\n    return x\n\n\nclass PerceiverAttentionCA(nn.Module):\n    def __init__(self, *, dim=3072, dim_head=128, heads=16, kv_dim=2048):\n        super().__init__()\n        self.scale = dim_head ** -0.5\n        self.dim_head = dim_head\n        self.heads = heads\n        inner_dim = dim_head * heads\n        self.norm1 = nn.LayerNorm(dim if kv_dim is None else kv_dim)\n        self.norm2 = nn.LayerNorm(dim)\n        self.to_q = nn.Linear(dim, inner_dim, bias=False)\n        self.to_kv = nn.Linear(dim if kv_dim is None else kv_dim, inner_dim * 2, bias=False)\n        self.to_out = nn.Linear(inner_dim, dim, bias=False)\n\n    def forward(self, x, latents):\n        \"\"\"\n        Args:\n            x (torch.Tensor): image features\n                shape (b, n1, D)\n            latent (torch.Tensor): latent features\n                shape (b, n2, D)\n        \"\"\"\n        x = self.norm1(x)\n        latents = self.norm2(latents)\n        b, seq_len, _ = latents.shape\n        q = self.to_q(latents)\n        k, v = self.to_kv(x).chunk(2, dim=-1)\n        q = reshape_tensor(q, self.heads)\n        k = reshape_tensor(k, self.heads)\n        v = reshape_tensor(v, self.heads)\n\n        # attention\n        scale = 1 / math.sqrt(math.sqrt(self.dim_head))\n        weight = (q * scale) @ (k * scale).transpose(-2, -1)  # More stable with f16 than dividing afterwards\n        weight = torch.softmax(weight.float(), dim=-1).type(weight.dtype)\n        out = weight @ v\n        out = out.permute(0, 2, 1, 3).reshape(b, seq_len, -1)\n\n        return self.to_out(out)\n\n\nclass PerceiverAttention(nn.Module):\n    def __init__(self, *, dim, dim_head=64, heads=8, kv_dim=None):\n        super().__init__()\n        self.scale = dim_head ** -0.5\n        self.dim_head = dim_head\n        self.heads = heads\n        inner_dim = dim_head * heads\n        self.norm1 = nn.LayerNorm(dim if kv_dim is None else kv_dim)\n        self.norm2 = nn.LayerNorm(dim)\n        self.to_q = nn.Linear(dim, inner_dim, bias=False)\n        self.to_kv = nn.Linear(dim if kv_dim is None else kv_dim, inner_dim * 2, bias=False)\n        self.to_out = nn.Linear(inner_dim, dim, bias=False)\n\n    def forward(self, x, latents):\n        \"\"\"\n        Args:\n            x (torch.Tensor): image features\n                shape (b, n1, D)\n            latent (torch.Tensor): latent features\n                shape (b, n2, D)\n        \"\"\"\n        x = self.norm1(x)\n        latents = self.norm2(latents)\n        b, seq_len, _ = latents.shape\n        q = self.to_q(latents)\n        kv_input = torch.cat((x, latents), dim=-2)\n        k, v = self.to_kv(kv_input).chunk(2, dim=-1)\n        q = reshape_tensor(q, self.heads)\n        k = reshape_tensor(k, self.heads)\n        v = reshape_tensor(v, self.heads)\n\n        # attention\n        scale = 1 / math.sqrt(math.sqrt(self.dim_head))\n        weight = (q * scale) @ (k * scale).transpose(-2, -1)  # More stable with f16 than dividing afterwards\n        weight = torch.softmax(weight.float(), dim=-1).type(weight.dtype)\n        out = weight @ v\n        out = out.permute(0, 2, 1, 3).reshape(b, seq_len, -1)\n\n        return self.to_out(out)\n\n\nclass IDFormer(nn.Module):\n    \"\"\"\n    - perceiver resampler like arch (compared with previous MLP-like arch)\n    - we concat id embedding (generated by arcface) and query tokens as latents\n    - latents will attend each other and interact with vit features through cross-attention\n    - vit features are multi-scaled and inserted into IDFormer in order, currently, each scale corresponds to two\n      IDFormer layers\n    \"\"\"\n    def __init__(\n            self,\n            dim=1024,\n            depth=10,\n            dim_head=64,\n            heads=16,\n            num_id_token=5,\n            num_queries=32,\n            output_dim=2048,\n            ff_mult=4,\n    ):\n        super().__init__()\n\n        self.num_id_token = num_id_token\n        self.dim = dim\n        self.num_queries = num_queries\n        assert depth % 5 == 0\n        self.depth = depth // 5\n        scale = dim ** -0.5\n        self.latents = nn.Parameter(torch.randn(1, num_queries, dim) * scale)\n        self.proj_out = nn.Parameter(scale * torch.randn(dim, output_dim))\n\n        self.layers = nn.ModuleList([])\n        for _ in range(depth):\n            self.layers.append(\n                nn.ModuleList(\n                    [\n                        PerceiverAttention(dim=dim, dim_head=dim_head, heads=heads),\n                        FeedForward(dim=dim, mult=ff_mult),\n                    ]\n                )\n            )\n\n        for i in range(5):\n            setattr(\n                self,\n                f'mapping_{i}',\n                nn.Sequential(\n                    nn.Linear(1024, 1024),\n                    nn.LayerNorm(1024),\n                    nn.LeakyReLU(),\n                    nn.Linear(1024, 1024),\n                    nn.LayerNorm(1024),\n                    nn.LeakyReLU(),\n                    nn.Linear(1024, dim),\n                ),\n            )\n\n        self.id_embedding_mapping = nn.Sequential(\n            nn.Linear(1280, 1024),\n            nn.LayerNorm(1024),\n            nn.LeakyReLU(),\n            nn.Linear(1024, 1024),\n            nn.LayerNorm(1024),\n            nn.LeakyReLU(),\n            nn.Linear(1024, dim * num_id_token),\n        )\n\n    def forward(self, x, y):\n        latents = self.latents.repeat(x.size(0), 1, 1)\n        num_duotu = x.shape[1] if x.ndim == 3 else 1\n        x = self.id_embedding_mapping(x)\n        x = x.reshape(-1, self.num_id_token * num_duotu, self.dim)\n        latents = torch.cat((latents, x), dim=1)\n        for i in range(5):\n            vit_feature = getattr(self, f'mapping_{i}')(y[i])\n            ctx_feature = torch.cat((x, vit_feature), dim=1)\n            for attn, ff in self.layers[i * self.depth: (i + 1) * self.depth]:\n                latents = attn(ctx_feature, latents) + latents\n                latents = ff(latents) + latents\n        latents = latents[:, :self.num_queries]\n        latents = latents @ self.proj_out\n        return latents\n\n\nclass IDEncoder(nn.Module):\n    def __init__(self, width=1280, context_dim=2048, num_token=5):\n        super().__init__()\n        self.num_token = num_token\n        self.context_dim = context_dim\n        h1 = min((context_dim * num_token) // 4, 1024)\n        h2 = min((context_dim * num_token) // 2, 1024)\n        self.body = nn.Sequential(\n            nn.Linear(width, h1),\n            nn.LayerNorm(h1),\n            nn.LeakyReLU(),\n            nn.Linear(h1, h2),\n            nn.LayerNorm(h2),\n            nn.LeakyReLU(),\n            nn.Linear(h2, context_dim * num_token),\n        )\n\n        for i in range(5):\n            setattr(\n                self,\n                f'mapping_{i}',\n                nn.Sequential(\n                    nn.Linear(1024, 1024),\n                    nn.LayerNorm(1024),\n                    nn.LeakyReLU(),\n                    nn.Linear(1024, 1024),\n                    nn.LayerNorm(1024),\n                    nn.LeakyReLU(),\n                    nn.Linear(1024, context_dim),\n                ),\n            )\n            setattr(\n                self,\n                f'mapping_patch_{i}',\n                nn.Sequential(\n                    nn.Linear(1024, 1024),\n                    nn.LayerNorm(1024),\n                    nn.LeakyReLU(),\n                    nn.Linear(1024, 1024),\n                    nn.LayerNorm(1024),\n                    nn.LeakyReLU(),\n                    nn.Linear(1024, context_dim),\n                ),\n            )\n\n    def forward(self, x, y):\n        # x shape [N, C]\n        x = self.body(x)\n        x = x.reshape(-1, self.num_token, self.context_dim)\n\n        hidden_states = ()\n        for i, emb in enumerate(y):\n            hidden_state = getattr(self, f'mapping_{i}')(emb[:, :1]) + getattr(self, f'mapping_patch_{i}')(\n                emb[:, 1:]\n            ).mean(dim=1, keepdim=True)\n            hidden_states += (hidden_state,)\n        hidden_states = torch.cat(hidden_states, dim=1)\n\n        return torch.cat([x, hidden_states], dim=1)\n"
  },
  {
    "path": "scripts/pulid/eva_clip/__init__.py",
    "content": "from .constants import OPENAI_DATASET_MEAN, OPENAI_DATASET_STD\nfrom .factory import create_model, create_model_and_transforms, create_model_from_pretrained, get_tokenizer, create_transforms\nfrom .factory import list_models, add_model_config, get_model_config, load_checkpoint\nfrom .loss import ClipLoss\nfrom .model import CLIP, CustomCLIP, CLIPTextCfg, CLIPVisionCfg,\\\n    convert_weights_to_lp, convert_weights_to_fp16, trace_model, get_cast_dtype\nfrom .openai import load_openai_model, list_openai_models\nfrom .pretrained import list_pretrained, list_pretrained_models_by_tag, list_pretrained_tags_by_model,\\\n    get_pretrained_url, download_pretrained_from_url, is_pretrained_cfg, get_pretrained_cfg, download_pretrained\nfrom .tokenizer import SimpleTokenizer, tokenize\nfrom .transform import image_transform\n"
  },
  {
    "path": "scripts/pulid/eva_clip/constants.py",
    "content": "OPENAI_DATASET_MEAN = (0.48145466, 0.4578275, 0.40821073)\nOPENAI_DATASET_STD = (0.26862954, 0.26130258, 0.27577711)\n"
  },
  {
    "path": "scripts/pulid/eva_clip/eva_vit_model.py",
    "content": "# --------------------------------------------------------\n# Adapted from  https://github.com/microsoft/unilm/tree/master/beit\n# --------------------------------------------------------\nimport math\nimport os\nfrom functools import partial\nimport torch\nimport torch.nn as nn\nimport torch.nn.functional as F\ntry:\n    from timm.models.layers import drop_path, to_2tuple, trunc_normal_\nexcept Exception:\n    from timm.layers import drop_path, to_2tuple, trunc_normal_\n\nfrom .transformer import PatchDropout\nfrom .rope import VisionRotaryEmbedding, VisionRotaryEmbeddingFast\n\nif os.getenv('ENV_TYPE') == 'deepspeed':\n    try:\n        from deepspeed.runtime.activation_checkpointing.checkpointing import checkpoint\n    except Exception:\n        from torch.utils.checkpoint import checkpoint\nelse:\n    from torch.utils.checkpoint import checkpoint\n\ntry:\n    import xformers\n    import xformers.ops as xops\n    XFORMERS_IS_AVAILBLE = True\nexcept Exception:\n    XFORMERS_IS_AVAILBLE = False\n\nclass DropPath(nn.Module):\n    \"\"\"Drop paths (Stochastic Depth) per sample  (when applied in main path of residual blocks).\n    \"\"\"\n    def __init__(self, drop_prob=None):\n        super(DropPath, self).__init__()\n        self.drop_prob = drop_prob\n\n    def forward(self, x):\n        return drop_path(x, self.drop_prob, self.training)\n\n    def extra_repr(self) -> str:\n        return 'p={}'.format(self.drop_prob)\n\n\nclass Mlp(nn.Module):\n    def __init__(\n        self,\n        in_features,\n        hidden_features=None,\n        out_features=None,\n        act_layer=nn.GELU,\n        norm_layer=nn.LayerNorm,\n        drop=0.,\n        subln=False,\n\n        ):\n        super().__init__()\n        out_features = out_features or in_features\n        hidden_features = hidden_features or in_features\n        self.fc1 = nn.Linear(in_features, hidden_features)\n        self.act = act_layer()\n\n        self.ffn_ln = norm_layer(hidden_features) if subln else nn.Identity()\n\n        self.fc2 = nn.Linear(hidden_features, out_features)\n        self.drop = nn.Dropout(drop)\n\n    def forward(self, x):\n        x = self.fc1(x)\n        x = self.act(x)\n        # x = self.drop(x)\n        # commit this for the orignal BERT implement\n        x = self.ffn_ln(x)\n\n        x = self.fc2(x)\n        x = self.drop(x)\n        return x\n\nclass SwiGLU(nn.Module):\n    def __init__(self, in_features, hidden_features=None, out_features=None, act_layer=nn.SiLU, drop=0.,\n                norm_layer=nn.LayerNorm, subln=False):\n        super().__init__()\n        out_features = out_features or in_features\n        hidden_features = hidden_features or in_features\n\n        self.w1 = nn.Linear(in_features, hidden_features)\n        self.w2 = nn.Linear(in_features, hidden_features)\n\n        self.act = act_layer()\n        self.ffn_ln = norm_layer(hidden_features) if subln else nn.Identity()\n        self.w3 = nn.Linear(hidden_features, out_features)\n\n        self.drop = nn.Dropout(drop)\n\n    def forward(self, x):\n        x1 = self.w1(x)\n        x2 = self.w2(x)\n        hidden = self.act(x1) * x2\n        x = self.ffn_ln(hidden)\n        x = self.w3(x)\n        x = self.drop(x)\n        return x\n\nclass Attention(nn.Module):\n    def __init__(\n            self, dim, num_heads=8, qkv_bias=False, qk_scale=None, attn_drop=0.,\n            proj_drop=0., window_size=None, attn_head_dim=None, xattn=False, rope=None, subln=False, norm_layer=nn.LayerNorm):\n        super().__init__()\n        self.num_heads = num_heads\n        head_dim = dim // num_heads\n        if attn_head_dim is not None:\n            head_dim = attn_head_dim\n        all_head_dim = head_dim * self.num_heads\n        self.scale = qk_scale or head_dim ** -0.5\n\n        self.subln = subln\n        if self.subln:\n            self.q_proj = nn.Linear(dim, all_head_dim, bias=False)\n            self.k_proj = nn.Linear(dim, all_head_dim, bias=False)\n            self.v_proj = nn.Linear(dim, all_head_dim, bias=False)\n        else:\n            self.qkv = nn.Linear(dim, all_head_dim * 3, bias=False)\n\n        if qkv_bias:\n            self.q_bias = nn.Parameter(torch.zeros(all_head_dim))\n            self.v_bias = nn.Parameter(torch.zeros(all_head_dim))\n        else:\n            self.q_bias = None\n            self.v_bias = None\n\n        if window_size:\n            self.window_size = window_size\n            self.num_relative_distance = (2 * window_size[0] - 1) * (2 * window_size[1] - 1) + 3\n            self.relative_position_bias_table = nn.Parameter(\n                torch.zeros(self.num_relative_distance, num_heads))  # 2*Wh-1 * 2*Ww-1, nH\n            # cls to token & token 2 cls & cls to cls\n\n            # get pair-wise relative position index for each token inside the window\n            coords_h = torch.arange(window_size[0])\n            coords_w = torch.arange(window_size[1])\n            coords = torch.stack(torch.meshgrid([coords_h, coords_w]))  # 2, Wh, Ww\n            coords_flatten = torch.flatten(coords, 1)  # 2, Wh*Ww\n            relative_coords = coords_flatten[:, :, None] - coords_flatten[:, None, :]  # 2, Wh*Ww, Wh*Ww\n            relative_coords = relative_coords.permute(1, 2, 0).contiguous()  # Wh*Ww, Wh*Ww, 2\n            relative_coords[:, :, 0] += window_size[0] - 1  # shift to start from 0\n            relative_coords[:, :, 1] += window_size[1] - 1\n            relative_coords[:, :, 0] *= 2 * window_size[1] - 1\n            relative_position_index = \\\n                torch.zeros(size=(window_size[0] * window_size[1] + 1, ) * 2, dtype=relative_coords.dtype)\n            relative_position_index[1:, 1:] = relative_coords.sum(-1)  # Wh*Ww, Wh*Ww\n            relative_position_index[0, 0:] = self.num_relative_distance - 3\n            relative_position_index[0:, 0] = self.num_relative_distance - 2\n            relative_position_index[0, 0] = self.num_relative_distance - 1\n\n            self.register_buffer(\"relative_position_index\", relative_position_index)\n        else:\n            self.window_size = None\n            self.relative_position_bias_table = None\n            self.relative_position_index = None\n\n        self.attn_drop = nn.Dropout(attn_drop)\n        self.inner_attn_ln = norm_layer(all_head_dim) if subln else nn.Identity()\n        # self.proj = nn.Linear(all_head_dim, all_head_dim)\n        self.proj = nn.Linear(all_head_dim, dim)\n        self.proj_drop = nn.Dropout(proj_drop)\n        self.xattn = xattn\n        self.xattn_drop = attn_drop\n\n        self.rope = rope\n\n    def forward(self, x, rel_pos_bias=None, attn_mask=None):\n        B, N, C = x.shape\n        if self.subln:\n            q = F.linear(input=x, weight=self.q_proj.weight, bias=self.q_bias)\n            k = F.linear(input=x, weight=self.k_proj.weight, bias=None)\n            v = F.linear(input=x, weight=self.v_proj.weight, bias=self.v_bias)\n\n            q = q.reshape(B, N, self.num_heads, -1).permute(0, 2, 1, 3)     # B, num_heads, N, C\n            k = k.reshape(B, N, self.num_heads, -1).permute(0, 2, 1, 3)\n            v = v.reshape(B, N, self.num_heads, -1).permute(0, 2, 1, 3)\n        else:\n\n            qkv_bias = None\n            if self.q_bias is not None:\n                qkv_bias = torch.cat((self.q_bias, torch.zeros_like(self.v_bias, requires_grad=False), self.v_bias))\n\n            qkv = F.linear(input=x, weight=self.qkv.weight, bias=qkv_bias)\n            qkv = qkv.reshape(B, N, 3, self.num_heads, -1).permute(2, 0, 3, 1, 4)   # 3, B, num_heads, N, C\n            q, k, v = qkv[0], qkv[1], qkv[2]\n\n        if self.rope:\n            # slightly fast impl\n            q_t = q[:, :, 1:, :]\n            ro_q_t = self.rope(q_t)\n            q = torch.cat((q[:, :, :1, :], ro_q_t), -2).type_as(v)\n\n            k_t = k[:, :, 1:, :]\n            ro_k_t = self.rope(k_t)\n            k = torch.cat((k[:, :, :1, :], ro_k_t), -2).type_as(v)\n\n        if self.xattn:\n            q = q.permute(0, 2, 1, 3)   # B, num_heads, N, C -> B, N, num_heads, C\n            k = k.permute(0, 2, 1, 3)\n            v = v.permute(0, 2, 1, 3)\n\n            x = xops.memory_efficient_attention(\n                q, k, v,\n                p=self.xattn_drop,\n                scale=self.scale,\n                )\n            x = x.reshape(B, N, -1)\n            x = self.inner_attn_ln(x)\n            x = self.proj(x)\n            x = self.proj_drop(x)\n        else:\n            q = q * self.scale\n            attn = (q @ k.transpose(-2, -1))\n\n            if self.relative_position_bias_table is not None:\n                relative_position_bias = \\\n                    self.relative_position_bias_table[self.relative_position_index.view(-1)].view(\n                        self.window_size[0] * self.window_size[1] + 1,\n                        self.window_size[0] * self.window_size[1] + 1, -1)  # Wh*Ww,Wh*Ww,nH\n                relative_position_bias = relative_position_bias.permute(2, 0, 1).contiguous()  # nH, Wh*Ww, Wh*Ww\n                attn = attn + relative_position_bias.unsqueeze(0).type_as(attn)\n\n            if rel_pos_bias is not None:\n                attn = attn + rel_pos_bias.type_as(attn)\n\n            if attn_mask is not None:\n                attn_mask = attn_mask.bool()\n                attn = attn.masked_fill(~attn_mask[:, None, None, :], float(\"-inf\"))\n\n            attn = attn.softmax(dim=-1)\n            attn = self.attn_drop(attn)\n\n            x = (attn @ v).transpose(1, 2).reshape(B, N, -1)\n            x = self.inner_attn_ln(x)\n            x = self.proj(x)\n            x = self.proj_drop(x)\n        return x\n\n\nclass Block(nn.Module):\n\n    def __init__(self, dim, num_heads, mlp_ratio=4., qkv_bias=False, qk_scale=None, drop=0., attn_drop=0.,\n                 drop_path=0., init_values=None, act_layer=nn.GELU, norm_layer=nn.LayerNorm,\n                 window_size=None, attn_head_dim=None, xattn=False, rope=None, postnorm=False,\n                 subln=False, naiveswiglu=False):\n        super().__init__()\n        self.norm1 = norm_layer(dim)\n        self.attn = Attention(\n            dim, num_heads=num_heads, qkv_bias=qkv_bias, qk_scale=qk_scale,\n            attn_drop=attn_drop, proj_drop=drop, window_size=window_size, attn_head_dim=attn_head_dim,\n            xattn=xattn, rope=rope, subln=subln, norm_layer=norm_layer)\n        # NOTE: drop path for stochastic depth, we shall see if this is better than dropout here\n        self.drop_path = DropPath(drop_path) if drop_path > 0. else nn.Identity()\n        self.norm2 = norm_layer(dim)\n        mlp_hidden_dim = int(dim * mlp_ratio)\n\n        if naiveswiglu:\n            self.mlp = SwiGLU(\n                in_features=dim,\n                hidden_features=mlp_hidden_dim,\n                subln=subln,\n                norm_layer=norm_layer,\n            )\n        else:\n            self.mlp = Mlp(\n                in_features=dim,\n                hidden_features=mlp_hidden_dim,\n                act_layer=act_layer,\n                subln=subln,\n                drop=drop\n            )\n\n        if init_values is not None and init_values > 0:\n            self.gamma_1 = nn.Parameter(init_values * torch.ones((dim)),requires_grad=True)\n            self.gamma_2 = nn.Parameter(init_values * torch.ones((dim)),requires_grad=True)\n        else:\n            self.gamma_1, self.gamma_2 = None, None\n\n        self.postnorm = postnorm\n\n    def forward(self, x, rel_pos_bias=None, attn_mask=None):\n        if self.gamma_1 is None:\n            if self.postnorm:\n                x = x + self.drop_path(self.norm1(self.attn(x, rel_pos_bias=rel_pos_bias, attn_mask=attn_mask)))\n                x = x + self.drop_path(self.norm2(self.mlp(x)))\n            else:\n                x = x + self.drop_path(self.attn(self.norm1(x), rel_pos_bias=rel_pos_bias, attn_mask=attn_mask))\n                x = x + self.drop_path(self.mlp(self.norm2(x)))\n        else:\n            if self.postnorm:\n                x = x + self.drop_path(self.gamma_1 * self.norm1(self.attn(x, rel_pos_bias=rel_pos_bias, attn_mask=attn_mask)))\n                x = x + self.drop_path(self.gamma_2 * self.norm2(self.mlp(x)))\n            else:\n                x = x + self.drop_path(self.gamma_1 * self.attn(self.norm1(x), rel_pos_bias=rel_pos_bias, attn_mask=attn_mask))\n                x = x + self.drop_path(self.gamma_2 * self.mlp(self.norm2(x)))\n        return x\n\n\nclass PatchEmbed(nn.Module):\n    \"\"\" Image to Patch Embedding\n    \"\"\"\n    def __init__(self, img_size=224, patch_size=16, in_chans=3, embed_dim=768):\n        super().__init__()\n        img_size = to_2tuple(img_size)\n        patch_size = to_2tuple(patch_size)\n        num_patches = (img_size[1] // patch_size[1]) * (img_size[0] // patch_size[0])\n        self.patch_shape = (img_size[0] // patch_size[0], img_size[1] // patch_size[1])\n        self.img_size = img_size\n        self.patch_size = patch_size\n        self.num_patches = num_patches\n\n        self.proj = nn.Conv2d(in_chans, embed_dim, kernel_size=patch_size, stride=patch_size)\n\n    def forward(self, x, **kwargs):\n        B, C, H, W = x.shape\n        # FIXME look at relaxing size constraints\n        assert H == self.img_size[0] and W == self.img_size[1], \\\n            f\"Input image size ({H}*{W}) doesn't match model ({self.img_size[0]}*{self.img_size[1]}).\"\n        x = self.proj(x).flatten(2).transpose(1, 2)\n        return x\n\n\nclass RelativePositionBias(nn.Module):\n\n    def __init__(self, window_size, num_heads):\n        super().__init__()\n        self.window_size = window_size\n        self.num_relative_distance = (2 * window_size[0] - 1) * (2 * window_size[1] - 1) + 3\n        self.relative_position_bias_table = nn.Parameter(\n            torch.zeros(self.num_relative_distance, num_heads))  # 2*Wh-1 * 2*Ww-1, nH\n        # cls to token & token 2 cls & cls to cls\n\n        # get pair-wise relative position index for each token inside the window\n        coords_h = torch.arange(window_size[0])\n        coords_w = torch.arange(window_size[1])\n        coords = torch.stack(torch.meshgrid([coords_h, coords_w]))  # 2, Wh, Ww\n        coords_flatten = torch.flatten(coords, 1)  # 2, Wh*Ww\n        relative_coords = coords_flatten[:, :, None] - coords_flatten[:, None, :]  # 2, Wh*Ww, Wh*Ww\n        relative_coords = relative_coords.permute(1, 2, 0).contiguous()  # Wh*Ww, Wh*Ww, 2\n        relative_coords[:, :, 0] += window_size[0] - 1  # shift to start from 0\n        relative_coords[:, :, 1] += window_size[1] - 1\n        relative_coords[:, :, 0] *= 2 * window_size[1] - 1\n        relative_position_index = \\\n            torch.zeros(size=(window_size[0] * window_size[1] + 1,) * 2, dtype=relative_coords.dtype)\n        relative_position_index[1:, 1:] = relative_coords.sum(-1)  # Wh*Ww, Wh*Ww\n        relative_position_index[0, 0:] = self.num_relative_distance - 3\n        relative_position_index[0:, 0] = self.num_relative_distance - 2\n        relative_position_index[0, 0] = self.num_relative_distance - 1\n\n        self.register_buffer(\"relative_position_index\", relative_position_index)\n\n    def forward(self):\n        relative_position_bias = \\\n            self.relative_position_bias_table[self.relative_position_index.view(-1)].view(\n                self.window_size[0] * self.window_size[1] + 1,\n                self.window_size[0] * self.window_size[1] + 1, -1)  # Wh*Ww,Wh*Ww,nH\n        return relative_position_bias.permute(2, 0, 1).contiguous()  # nH, Wh*Ww, Wh*Ww\n\n\nclass EVAVisionTransformer(nn.Module):\n    \"\"\" Vision Transformer with support for patch or hybrid CNN input stage\n    \"\"\"\n    def __init__(self, img_size=224, patch_size=16, in_chans=3, num_classes=1000, embed_dim=768, depth=12,\n                 num_heads=12, mlp_ratio=4., qkv_bias=False, qk_scale=None, drop_rate=0., attn_drop_rate=0.,\n                 drop_path_rate=0., norm_layer=nn.LayerNorm, init_values=None, patch_dropout=0.,\n                 use_abs_pos_emb=True, use_rel_pos_bias=False, use_shared_rel_pos_bias=False, rope=False,\n                 use_mean_pooling=True, init_scale=0.001, grad_checkpointing=False, xattn=False, postnorm=False,\n                 pt_hw_seq_len=16, intp_freq=False, naiveswiglu=False, subln=False):\n        super().__init__()\n\n        if not XFORMERS_IS_AVAILBLE:\n            xattn = False\n\n        self.image_size = img_size\n        self.num_classes = num_classes\n        self.num_features = self.embed_dim = embed_dim  # num_features for consistency with other models\n\n        self.patch_embed = PatchEmbed(\n            img_size=img_size, patch_size=patch_size, in_chans=in_chans, embed_dim=embed_dim)\n        num_patches = self.patch_embed.num_patches\n\n        self.cls_token = nn.Parameter(torch.zeros(1, 1, embed_dim))\n        # self.mask_token = nn.Parameter(torch.zeros(1, 1, embed_dim))\n        if use_abs_pos_emb:\n            self.pos_embed = nn.Parameter(torch.zeros(1, num_patches + 1, embed_dim))\n        else:\n            self.pos_embed = None\n        self.pos_drop = nn.Dropout(p=drop_rate)\n\n        if use_shared_rel_pos_bias:\n            self.rel_pos_bias = RelativePositionBias(window_size=self.patch_embed.patch_shape, num_heads=num_heads)\n        else:\n            self.rel_pos_bias = None\n\n        if rope:\n            half_head_dim = embed_dim // num_heads // 2\n            hw_seq_len = img_size // patch_size\n            self.rope = VisionRotaryEmbeddingFast(\n                dim=half_head_dim,\n                pt_seq_len=pt_hw_seq_len,\n                ft_seq_len=hw_seq_len if intp_freq else None,\n                # patch_dropout=patch_dropout\n            )\n        else:\n            self.rope = None\n\n        self.naiveswiglu = naiveswiglu\n\n        dpr = [x.item() for x in torch.linspace(0, drop_path_rate, depth)]  # stochastic depth decay rule\n        self.use_rel_pos_bias = use_rel_pos_bias\n        self.blocks = nn.ModuleList([\n            Block(\n                dim=embed_dim, num_heads=num_heads, mlp_ratio=mlp_ratio, qkv_bias=qkv_bias, qk_scale=qk_scale,\n                drop=drop_rate, attn_drop=attn_drop_rate, drop_path=dpr[i], norm_layer=norm_layer,\n                init_values=init_values, window_size=self.patch_embed.patch_shape if use_rel_pos_bias else None,\n                xattn=xattn, rope=self.rope, postnorm=postnorm, subln=subln, naiveswiglu=naiveswiglu)\n            for i in range(depth)])\n        self.norm = nn.Identity() if use_mean_pooling else norm_layer(embed_dim)\n        self.fc_norm = norm_layer(embed_dim) if use_mean_pooling else None\n        self.head = nn.Linear(embed_dim, num_classes) if num_classes > 0 else nn.Identity()\n\n        if self.pos_embed is not None:\n            trunc_normal_(self.pos_embed, std=.02)\n\n        trunc_normal_(self.cls_token, std=.02)\n        # trunc_normal_(self.mask_token, std=.02)\n\n        self.apply(self._init_weights)\n        self.fix_init_weight()\n\n        if isinstance(self.head, nn.Linear):\n            trunc_normal_(self.head.weight, std=.02)\n            self.head.weight.data.mul_(init_scale)\n            self.head.bias.data.mul_(init_scale)\n\n        # setting a patch_dropout of 0. would mean it is disabled and this function would be the identity fn\n        self.patch_dropout = PatchDropout(patch_dropout) if patch_dropout > 0. else nn.Identity()\n\n        self.grad_checkpointing = grad_checkpointing\n\n    def fix_init_weight(self):\n        def rescale(param, layer_id):\n            param.div_(math.sqrt(2.0 * layer_id))\n\n        for layer_id, layer in enumerate(self.blocks):\n            rescale(layer.attn.proj.weight.data, layer_id + 1)\n            if self.naiveswiglu:\n                rescale(layer.mlp.w3.weight.data, layer_id + 1)\n            else:\n                rescale(layer.mlp.fc2.weight.data, layer_id + 1)\n\n    def get_cast_dtype(self) -> torch.dtype:\n        return self.blocks[0].mlp.fc2.weight.dtype\n\n    def _init_weights(self, m):\n        if isinstance(m, nn.Linear):\n            trunc_normal_(m.weight, std=.02)\n            if m.bias is not None:\n                nn.init.constant_(m.bias, 0)\n        elif isinstance(m, nn.LayerNorm):\n            nn.init.constant_(m.bias, 0)\n            nn.init.constant_(m.weight, 1.0)\n\n    def get_num_layers(self):\n        return len(self.blocks)\n\n    def lock(self, unlocked_groups=0, freeze_bn_stats=False):\n        assert unlocked_groups == 0, 'partial locking not currently supported for this model'\n        for param in self.parameters():\n            param.requires_grad = False\n\n    @torch.jit.ignore\n    def set_grad_checkpointing(self, enable=True):\n        self.grad_checkpointing = enable\n\n    @torch.jit.ignore\n    def no_weight_decay(self):\n        return {'pos_embed', 'cls_token'}\n\n    def get_classifier(self):\n        return self.head\n\n    def reset_classifier(self, num_classes, global_pool=''):\n        self.num_classes = num_classes\n        self.head = nn.Linear(self.embed_dim, num_classes) if num_classes > 0 else nn.Identity()\n\n    def forward_features(self, x, return_all_features=False, return_hidden=False, shuffle=False):\n\n        x = self.patch_embed(x)\n        batch_size, seq_len, _ = x.size()\n\n        if shuffle:\n            idx = torch.randperm(x.shape[1]) + 1\n            zero = torch.LongTensor([0, ])\n            idx = torch.cat([zero, idx])\n            pos_embed = self.pos_embed[:, idx]\n\n        cls_tokens = self.cls_token.expand(batch_size, -1, -1)  # stole cls_tokens impl from Phil Wang, thanks\n        x = torch.cat((cls_tokens, x), dim=1)\n        if shuffle:\n            x = x + pos_embed\n        elif self.pos_embed is not None:\n            x = x + self.pos_embed\n        x = self.pos_drop(x)\n\n        # a patch_dropout of 0. would mean it is disabled and this function would do nothing but return what was passed in\n        if os.getenv('RoPE') == '1':\n            if self.training and not isinstance(self.patch_dropout, nn.Identity):\n                x, patch_indices_keep = self.patch_dropout(x)\n                self.rope.forward = partial(self.rope.forward, patch_indices_keep=patch_indices_keep)\n            else:\n                self.rope.forward = partial(self.rope.forward, patch_indices_keep=None)\n                x = self.patch_dropout(x)\n        else:\n            x = self.patch_dropout(x)\n\n        rel_pos_bias = self.rel_pos_bias() if self.rel_pos_bias is not None else None\n        hidden_states = []\n        for idx, blk in enumerate(self.blocks):\n            if (0 < idx <= 20) and (idx % 4 == 0) and return_hidden:\n                hidden_states.append(x)\n            if self.grad_checkpointing:\n                x = checkpoint(blk, x, (rel_pos_bias,))\n            else:\n                x = blk(x, rel_pos_bias=rel_pos_bias)\n\n        if not return_all_features:\n            x = self.norm(x)\n            if self.fc_norm is not None:\n                return self.fc_norm(x.mean(1)), hidden_states\n            else:\n                return x[:, 0], hidden_states\n        return x\n\n    def forward(self, x, return_all_features=False, return_hidden=False, shuffle=False):\n        if return_all_features:\n            return self.forward_features(x, return_all_features, return_hidden, shuffle)\n        x, hidden_states = self.forward_features(x, return_all_features, return_hidden, shuffle)\n        x = self.head(x)\n        if return_hidden:\n            return x, hidden_states\n        return x\n"
  },
  {
    "path": "scripts/pulid/eva_clip/factory.py",
    "content": "import json\nimport logging\nimport os\nimport pathlib\nimport re\nfrom copy import deepcopy\nfrom pathlib import Path\nfrom typing import Optional, Tuple, Union, Dict, Any\nimport torch\n\nfrom .constants import OPENAI_DATASET_MEAN, OPENAI_DATASET_STD\nfrom .model import CLIP, CustomCLIP, convert_weights_to_lp, convert_to_custom_text_state_dict,\\\n    get_cast_dtype\nfrom .openai import load_openai_model\nfrom .pretrained import is_pretrained_cfg, get_pretrained_cfg, download_pretrained, list_pretrained_tags_by_model\nfrom .transform import image_transform\nfrom .tokenizer import HFTokenizer, tokenize\nfrom .utils import resize_clip_pos_embed, resize_evaclip_pos_embed, resize_visual_pos_embed, resize_eva_pos_embed\n\n\n_MODEL_CONFIG_PATHS = [Path(__file__).parent / f\"model_configs/\"]\n_MODEL_CONFIGS = {}  # directory (model_name: config) of model architecture configs\n\n\ndef _natural_key(string_):\n    return [int(s) if s.isdigit() else s for s in re.split(r'(\\d+)', string_.lower())]\n\n\ndef _rescan_model_configs():\n    global _MODEL_CONFIGS\n\n    config_ext = ('.json',)\n    config_files = []\n    for config_path in _MODEL_CONFIG_PATHS:\n        if config_path.is_file() and config_path.suffix in config_ext:\n            config_files.append(config_path)\n        elif config_path.is_dir():\n            for ext in config_ext:\n                config_files.extend(config_path.glob(f'*{ext}'))\n\n    for cf in config_files:\n        with open(cf, \"r\", encoding=\"utf8\") as f:\n            model_cfg = json.load(f)\n            if all(a in model_cfg for a in ('embed_dim', 'vision_cfg', 'text_cfg')):\n                _MODEL_CONFIGS[cf.stem] = model_cfg\n\n    _MODEL_CONFIGS = dict(sorted(_MODEL_CONFIGS.items(), key=lambda x: _natural_key(x[0])))\n\n\n_rescan_model_configs()  # initial populate of model config registry\n\n\ndef list_models():\n    \"\"\" enumerate available model architectures based on config files \"\"\"\n    return list(_MODEL_CONFIGS.keys())\n\n\ndef add_model_config(path):\n    \"\"\" add model config path or file and update registry \"\"\"\n    if not isinstance(path, Path):\n        path = Path(path)\n    _MODEL_CONFIG_PATHS.append(path)\n    _rescan_model_configs()\n\n\ndef get_model_config(model_name):\n    if model_name in _MODEL_CONFIGS:\n        return deepcopy(_MODEL_CONFIGS[model_name])\n    else:\n        return None\n\n\ndef get_tokenizer(model_name):\n    config = get_model_config(model_name)\n    tokenizer = HFTokenizer(config['text_cfg']['hf_tokenizer_name']) if 'hf_tokenizer_name' in config['text_cfg'] else tokenize\n    return tokenizer\n\n\n# loading openai CLIP weights when is_openai=True for training\ndef load_state_dict(checkpoint_path: str, map_location: str='cpu', model_key: str='model|module|state_dict', is_openai: bool=False, skip_list: list=[]):\n    if is_openai:\n        model = torch.jit.load(checkpoint_path, map_location=\"cpu\").eval()\n        state_dict = model.state_dict()\n        for key in [\"input_resolution\", \"context_length\", \"vocab_size\"]:\n            state_dict.pop(key, None)\n    else:\n        checkpoint = torch.load(checkpoint_path, map_location=map_location)\n        for mk in model_key.split('|'):\n            if isinstance(checkpoint, dict) and mk in checkpoint:\n                state_dict = checkpoint[mk]\n                break\n            else:\n                state_dict = checkpoint\n        if next(iter(state_dict.items()))[0].startswith('module'):\n            state_dict = {k[7:]: v for k, v in state_dict.items()}\n\n    for k in skip_list:\n        if k in list(state_dict.keys()):\n            logging.info(f\"Removing key {k} from pretrained checkpoint\")\n            del state_dict[k]\n\n    if os.getenv('RoPE') == '1':\n        for k in list(state_dict.keys()):\n            if 'freqs_cos' in k or 'freqs_sin' in k:\n                del state_dict[k]\n    return state_dict\n\n\n\ndef load_checkpoint(model, checkpoint_path, model_key=\"model|module|state_dict\", strict=True):\n    state_dict = load_state_dict(checkpoint_path, model_key=model_key, is_openai=False)\n    # detect old format and make compatible with new format\n    if 'positional_embedding' in state_dict and not hasattr(model, 'positional_embedding'):\n        state_dict = convert_to_custom_text_state_dict(state_dict)\n    if 'text.logit_scale' in state_dict and hasattr(model, 'logit_scale'):\n        state_dict['logit_scale'] = state_dict['text.logit_scale']\n        del state_dict['text.logit_scale']\n\n    # resize_clip_pos_embed for CLIP and open CLIP\n    if 'visual.positional_embedding' in state_dict:\n        resize_clip_pos_embed(state_dict, model)\n    # specified to eva_vit_model\n    elif 'visual.pos_embed' in state_dict:\n        resize_evaclip_pos_embed(state_dict, model)\n\n    # resize_clip_pos_embed(state_dict, model)\n    incompatible_keys = model.load_state_dict(state_dict, strict=strict)\n    logging.info(f\"incompatible_keys.missing_keys: {incompatible_keys.missing_keys}\")\n    return incompatible_keys\n\ndef load_clip_visual_state_dict(checkpoint_path: str, map_location: str='cpu', is_openai: bool=False, skip_list:list=[]):\n    state_dict = load_state_dict(checkpoint_path, map_location=map_location, is_openai=is_openai, skip_list=skip_list)\n\n    for k in list(state_dict.keys()):\n        if not k.startswith('visual.'):\n            del state_dict[k]\n    for k in list(state_dict.keys()):\n        if k.startswith('visual.'):\n            new_k = k[7:]\n            state_dict[new_k] = state_dict[k]\n            del state_dict[k]\n    return state_dict\n\ndef load_clip_text_state_dict(checkpoint_path: str, map_location: str='cpu', is_openai: bool=False, skip_list:list=[]):\n    state_dict = load_state_dict(checkpoint_path, map_location=map_location, is_openai=is_openai, skip_list=skip_list)\n\n    for k in list(state_dict.keys()):\n        if k.startswith('visual.'):\n            del state_dict[k]\n    return state_dict\n\ndef get_pretrained_tag(pretrained_model):\n    pretrained_model = pretrained_model.lower()\n    if \"laion\" in pretrained_model or \"open_clip\" in pretrained_model:\n        return \"open_clip\"\n    elif \"openai\" in pretrained_model:\n        return \"clip\"\n    elif \"eva\" in pretrained_model and \"clip\" in pretrained_model:\n        return \"eva_clip\"\n    else:\n        return \"other\"\n\ndef load_pretrained_checkpoint(\n        model,\n        visual_checkpoint_path,\n        text_checkpoint_path,\n        strict=True,\n        visual_model=None,\n        text_model=None,\n        model_key=\"model|module|state_dict\",\n        skip_list=[]):\n    visual_tag = get_pretrained_tag(visual_model)\n    text_tag = get_pretrained_tag(text_model)\n\n    logging.info(f\"num of model state_dict keys: {len(model.state_dict().keys())}\")\n    visual_incompatible_keys, text_incompatible_keys = None, None\n    if visual_checkpoint_path:\n        if visual_tag == \"eva_clip\" or visual_tag == \"open_clip\":\n            visual_state_dict = load_clip_visual_state_dict(visual_checkpoint_path, is_openai=False, skip_list=skip_list)\n        elif visual_tag == \"clip\":\n            visual_state_dict = load_clip_visual_state_dict(visual_checkpoint_path, is_openai=True, skip_list=skip_list)\n        else:\n            visual_state_dict = load_state_dict(visual_checkpoint_path, model_key=model_key, is_openai=False, skip_list=skip_list)\n\n        # resize_clip_pos_embed for CLIP and open CLIP\n        if 'positional_embedding' in visual_state_dict:\n            resize_visual_pos_embed(visual_state_dict, model)\n        # specified to EVA model\n        elif 'pos_embed' in visual_state_dict:\n            resize_eva_pos_embed(visual_state_dict, model)\n\n        visual_incompatible_keys = model.visual.load_state_dict(visual_state_dict, strict=strict)\n        logging.info(f\"num of loaded visual_state_dict keys: {len(visual_state_dict.keys())}\")\n        logging.info(f\"visual_incompatible_keys.missing_keys: {visual_incompatible_keys.missing_keys}\")\n\n    if text_checkpoint_path:\n        if text_tag == \"eva_clip\" or text_tag == \"open_clip\":\n            text_state_dict = load_clip_text_state_dict(text_checkpoint_path, is_openai=False, skip_list=skip_list)\n        elif text_tag == \"clip\":\n            text_state_dict = load_clip_text_state_dict(text_checkpoint_path, is_openai=True, skip_list=skip_list)\n        else:\n            text_state_dict = load_state_dict(visual_checkpoint_path, model_key=model_key, is_openai=False, skip_list=skip_list)\n\n        text_incompatible_keys = model.text.load_state_dict(text_state_dict, strict=strict)\n\n        logging.info(f\"num of loaded text_state_dict keys: {len(text_state_dict.keys())}\")\n        logging.info(f\"text_incompatible_keys.missing_keys: {text_incompatible_keys.missing_keys}\")\n\n    return visual_incompatible_keys, text_incompatible_keys\n\ndef create_model(\n        model_name: str,\n        pretrained: Optional[str] = None,\n        precision: str = 'fp32',\n        device: Union[str, torch.device] = 'cpu',\n        jit: bool = False,\n        force_quick_gelu: bool = False,\n        force_custom_clip: bool = False,\n        force_patch_dropout: Optional[float] = None,\n        pretrained_image: str = '',\n        pretrained_text: str = '',\n        pretrained_hf: bool = True,\n        pretrained_visual_model: str = None,\n        pretrained_text_model: str = None,\n        cache_dir: Optional[str] = None,\n        skip_list: list  = [],\n):\n    model_name = model_name.replace('/', '-')  # for callers using old naming with / in ViT names\n    if isinstance(device, str):\n        device = torch.device(device)\n\n    if pretrained and pretrained.lower() == 'openai':\n        logging.info(f'Loading pretrained {model_name} from OpenAI.')\n        model = load_openai_model(\n            model_name,\n            precision=precision,\n            device=device,\n            jit=jit,\n            cache_dir=cache_dir,\n        )\n    else:\n        model_cfg = get_model_config(model_name)\n        if model_cfg is not None:\n            logging.info(f'Loaded {model_name} model config.')\n        else:\n            logging.error(f'Model config for {model_name} not found; available models {list_models()}.')\n            raise RuntimeError(f'Model config for {model_name} not found.')\n\n        if 'rope' in model_cfg.get('vision_cfg', {}):\n            if model_cfg['vision_cfg']['rope']:\n                os.environ['RoPE'] = \"1\"\n        else:\n            os.environ['RoPE'] = \"0\"\n\n        if force_quick_gelu:\n            # override for use of QuickGELU on non-OpenAI transformer models\n            model_cfg[\"quick_gelu\"] = True\n\n        if force_patch_dropout is not None:\n            # override the default patch dropout value\n            model_cfg['vision_cfg'][\"patch_dropout\"] = force_patch_dropout\n\n        cast_dtype = get_cast_dtype(precision)\n        custom_clip = model_cfg.pop('custom_text', False) or force_custom_clip or ('hf_model_name' in model_cfg['text_cfg'])\n\n\n        if custom_clip:\n            if 'hf_model_name' in model_cfg.get('text_cfg', {}):\n                model_cfg['text_cfg']['hf_model_pretrained'] = pretrained_hf\n            model = CustomCLIP(**model_cfg, cast_dtype=cast_dtype)\n        else:\n            model = CLIP(**model_cfg, cast_dtype=cast_dtype)\n\n        pretrained_cfg = {}\n        if pretrained:\n            checkpoint_path = ''\n            pretrained_cfg = get_pretrained_cfg(model_name, pretrained)\n            if pretrained_cfg:\n                checkpoint_path = download_pretrained(pretrained_cfg, cache_dir=cache_dir)\n            elif os.path.exists(pretrained):\n                checkpoint_path = pretrained\n\n            if checkpoint_path:\n                logging.info(f'Loading pretrained {model_name} weights ({pretrained}).')\n                load_checkpoint(model,\n                               checkpoint_path,\n                               model_key=\"model|module|state_dict\",\n                               strict=False\n                               )\n            else:\n                error_str = (\n                    f'Pretrained weights ({pretrained}) not found for model {model_name}.'\n                    f'Available pretrained tags ({list_pretrained_tags_by_model(model_name)}.')\n                logging.warning(error_str)\n                raise RuntimeError(error_str)\n        else:\n            visual_checkpoint_path = ''\n            text_checkpoint_path = ''\n\n            if pretrained_image:\n                pretrained_visual_model = pretrained_visual_model.replace('/', '-')  # for callers using old naming with / in ViT names\n                pretrained_image_cfg = get_pretrained_cfg(pretrained_visual_model, pretrained_image)\n                if 'timm_model_name' in model_cfg.get('vision_cfg', {}):\n                    # pretrained weight loading for timm models set via vision_cfg\n                    model_cfg['vision_cfg']['timm_model_pretrained'] = True\n                elif pretrained_image_cfg:\n                    visual_checkpoint_path = download_pretrained(pretrained_image_cfg, cache_dir=cache_dir)\n                elif os.path.exists(pretrained_image):\n                    visual_checkpoint_path = pretrained_image\n                else:\n                    logging.warning(f'Pretrained weights ({visual_checkpoint_path}) not found for model {model_name}.visual.')\n                    raise RuntimeError(f'Pretrained weights ({visual_checkpoint_path}) not found for model {model_name}.visual.')\n\n            if pretrained_text:\n                pretrained_text_model = pretrained_text_model.replace('/', '-')  # for callers using old naming with / in ViT names\n                pretrained_text_cfg = get_pretrained_cfg(pretrained_text_model, pretrained_text)\n                if pretrained_image_cfg:\n                    text_checkpoint_path = download_pretrained(pretrained_text_cfg, cache_dir=cache_dir)\n                elif os.path.exists(pretrained_text):\n                    text_checkpoint_path = pretrained_text\n                else:\n                    logging.warning(f'Pretrained weights ({text_checkpoint_path}) not found for model {model_name}.text.')\n                    raise RuntimeError(f'Pretrained weights ({text_checkpoint_path}) not found for model {model_name}.text.')\n\n            if visual_checkpoint_path:\n                logging.info(f'Loading pretrained {model_name}.visual weights ({visual_checkpoint_path}).')\n            if text_checkpoint_path:\n                logging.info(f'Loading pretrained {model_name}.text weights ({text_checkpoint_path}).')\n\n            if visual_checkpoint_path or text_checkpoint_path:\n                load_pretrained_checkpoint(\n                    model,\n                    visual_checkpoint_path,\n                    text_checkpoint_path,\n                    strict=False,\n                    visual_model=pretrained_visual_model,\n                    text_model=pretrained_text_model,\n                    model_key=\"model|module|state_dict\",\n                    skip_list=skip_list\n                )\n\n        if \"fp16\" in precision or \"bf16\" in precision:\n            logging.info(f'convert precision to {precision}')\n            model = model.to(torch.bfloat16) if 'bf16' in precision else model.to(torch.float16)\n\n        model.to(device=device)\n\n        # set image / mean metadata from pretrained_cfg if available, or use default\n        model.visual.image_mean = pretrained_cfg.get('mean', None) or OPENAI_DATASET_MEAN\n        model.visual.image_std = pretrained_cfg.get('std', None) or OPENAI_DATASET_STD\n\n        if jit:\n            model = torch.jit.script(model)\n\n    return model\n\n\ndef create_model_and_transforms(\n        model_name: str,\n        pretrained: Optional[str] = None,\n        precision: str = 'fp32',\n        device: Union[str, torch.device] = 'cpu',\n        jit: bool = False,\n        force_quick_gelu: bool = False,\n        force_custom_clip: bool = False,\n        force_patch_dropout: Optional[float] = None,\n        pretrained_image: str = '',\n        pretrained_text: str = '',\n        pretrained_hf: bool = True,\n        pretrained_visual_model: str = None,\n        pretrained_text_model: str = None,\n        image_mean: Optional[Tuple[float, ...]] = None,\n        image_std: Optional[Tuple[float, ...]] = None,\n        cache_dir: Optional[str] = None,\n        skip_list: list = [],\n):\n    model = create_model(\n        model_name,\n        pretrained,\n        precision=precision,\n        device=device,\n        jit=jit,\n        force_quick_gelu=force_quick_gelu,\n        force_custom_clip=force_custom_clip,\n        force_patch_dropout=force_patch_dropout,\n        pretrained_image=pretrained_image,\n        pretrained_text=pretrained_text,\n        pretrained_hf=pretrained_hf,\n        pretrained_visual_model=pretrained_visual_model,\n        pretrained_text_model=pretrained_text_model,\n        cache_dir=cache_dir,\n        skip_list=skip_list,\n    )\n\n    image_mean = image_mean or getattr(model.visual, 'image_mean', None)\n    image_std = image_std or getattr(model.visual, 'image_std', None)\n    preprocess_train = image_transform(\n        model.visual.image_size,\n        is_train=True,\n        mean=image_mean,\n        std=image_std\n    )\n    preprocess_val = image_transform(\n        model.visual.image_size,\n        is_train=False,\n        mean=image_mean,\n        std=image_std\n    )\n\n    return model, preprocess_train, preprocess_val\n\n\ndef create_transforms(\n        model_name: str,\n        pretrained: Optional[str] = None,\n        precision: str = 'fp32',\n        device: Union[str, torch.device] = 'cpu',\n        jit: bool = False,\n        force_quick_gelu: bool = False,\n        force_custom_clip: bool = False,\n        force_patch_dropout: Optional[float] = None,\n        pretrained_image: str = '',\n        pretrained_text: str = '',\n        pretrained_hf: bool = True,\n        pretrained_visual_model: str = None,\n        pretrained_text_model: str = None,\n        image_mean: Optional[Tuple[float, ...]] = None,\n        image_std: Optional[Tuple[float, ...]] = None,\n        cache_dir: Optional[str] = None,\n        skip_list: list = [],\n):\n    model = create_model(\n        model_name,\n        pretrained,\n        precision=precision,\n        device=device,\n        jit=jit,\n        force_quick_gelu=force_quick_gelu,\n        force_custom_clip=force_custom_clip,\n        force_patch_dropout=force_patch_dropout,\n        pretrained_image=pretrained_image,\n        pretrained_text=pretrained_text,\n        pretrained_hf=pretrained_hf,\n        pretrained_visual_model=pretrained_visual_model,\n        pretrained_text_model=pretrained_text_model,\n        cache_dir=cache_dir,\n        skip_list=skip_list,\n    )\n\n\n    image_mean = image_mean or getattr(model.visual, 'image_mean', None)\n    image_std = image_std or getattr(model.visual, 'image_std', None)\n    preprocess_train = image_transform(\n        model.visual.image_size,\n        is_train=True,\n        mean=image_mean,\n        std=image_std\n    )\n    preprocess_val = image_transform(\n        model.visual.image_size,\n        is_train=False,\n        mean=image_mean,\n        std=image_std\n    )\n    del model\n\n    return preprocess_train, preprocess_val\n\ndef create_model_from_pretrained(\n        model_name: str,\n        pretrained: str,\n        precision: str = 'fp32',\n        device: Union[str, torch.device] = 'cpu',\n        jit: bool = False,\n        force_quick_gelu: bool = False,\n        force_custom_clip: bool = False,\n        force_patch_dropout: Optional[float] = None,\n        return_transform: bool = True,\n        image_mean: Optional[Tuple[float, ...]] = None,\n        image_std: Optional[Tuple[float, ...]] = None,\n        cache_dir: Optional[str] = None,\n        is_frozen: bool = False,\n):\n    if not is_pretrained_cfg(model_name, pretrained) and not os.path.exists(pretrained):\n        raise RuntimeError(\n            f'{pretrained} is not a valid pretrained cfg or checkpoint for {model_name}.'\n            f' Use open_clip.list_pretrained() to find one.')\n\n    model = create_model(\n        model_name,\n        pretrained,\n        precision=precision,\n        device=device,\n        jit=jit,\n        force_quick_gelu=force_quick_gelu,\n        force_custom_clip=force_custom_clip,\n        force_patch_dropout=force_patch_dropout,\n        cache_dir=cache_dir,\n    )\n\n    if is_frozen:\n        for param in model.parameters():\n            param.requires_grad = False\n\n    if not return_transform:\n        return model\n\n    image_mean = image_mean or getattr(model.visual, 'image_mean', None)\n    image_std = image_std or getattr(model.visual, 'image_std', None)\n    preprocess = image_transform(\n        model.visual.image_size,\n        is_train=False,\n        mean=image_mean,\n        std=image_std\n    )\n\n    return model, preprocess\n"
  },
  {
    "path": "scripts/pulid/eva_clip/hf_configs.py",
    "content": "# HF architecture dict:\narch_dict = {\n  # https://huggingface.co/docs/transformers/model_doc/roberta#roberta\n  \"roberta\": {\n      \"config_names\": {\n          \"context_length\": \"max_position_embeddings\",\n          \"vocab_size\": \"vocab_size\",\n          \"width\": \"hidden_size\",\n          \"heads\": \"num_attention_heads\",\n          \"layers\": \"num_hidden_layers\",\n          \"layer_attr\": \"layer\",\n          \"token_embeddings_attr\": \"embeddings\"\n      },\n      \"pooler\": \"mean_pooler\",\n  },\n  # https://huggingface.co/docs/transformers/model_doc/xlm-roberta#transformers.XLMRobertaConfig\n  \"xlm-roberta\": {\n      \"config_names\": {\n          \"context_length\": \"max_position_embeddings\",\n          \"vocab_size\": \"vocab_size\",\n          \"width\": \"hidden_size\",\n          \"heads\": \"num_attention_heads\",\n          \"layers\": \"num_hidden_layers\",\n          \"layer_attr\": \"layer\",\n          \"token_embeddings_attr\": \"embeddings\"\n      },\n      \"pooler\": \"mean_pooler\",\n  },\n  # https://huggingface.co/docs/transformers/model_doc/mt5#mt5\n  \"mt5\": {\n      \"config_names\": {\n          # unlimited seqlen\n          # https://github.com/google-research/text-to-text-transfer-transformer/issues/273\n          # https://github.com/huggingface/transformers/blob/v4.24.0/src/transformers/models/t5/modeling_t5.py#L374\n          \"context_length\": \"\",\n          \"vocab_size\": \"vocab_size\",\n          \"width\": \"d_model\",\n          \"heads\": \"num_heads\",\n          \"layers\": \"num_layers\",\n          \"layer_attr\": \"block\",\n          \"token_embeddings_attr\": \"embed_tokens\"\n      },\n      \"pooler\": \"mean_pooler\",\n  },\n  \"bert\": {\n    \"config_names\": {\n      \"context_length\": \"max_position_embeddings\",\n      \"vocab_size\": \"vocab_size\",\n      \"width\": \"hidden_size\",\n      \"heads\": \"num_attention_heads\",\n      \"layers\": \"num_hidden_layers\",\n      \"layer_attr\": \"layer\",\n      \"token_embeddings_attr\": \"embeddings\"\n    },\n    \"pooler\": \"mean_pooler\",\n  }\n}\n"
  },
  {
    "path": "scripts/pulid/eva_clip/hf_model.py",
    "content": "\"\"\" huggingface model adapter\n\nWraps HuggingFace transformers (https://github.com/huggingface/transformers) models for use as a text tower in CLIP model.\n\"\"\"\n\nimport re\n\nimport torch\nimport torch.nn as nn\nfrom torch.nn import functional as F\nfrom torch import TensorType\ntry:\n    import transformers\n    from transformers import AutoModel, AutoModelForMaskedLM, AutoTokenizer, AutoConfig, PretrainedConfig\n    from transformers.modeling_outputs import BaseModelOutput, BaseModelOutputWithPooling, \\\n        BaseModelOutputWithPoolingAndCrossAttentions\nexcept ImportError as e:\n    transformers = None\n\n\n    class BaseModelOutput:\n        pass\n\n\n    class PretrainedConfig:\n        pass\n\nfrom .hf_configs import arch_dict\n\n# utils\ndef _camel2snake(s):\n    return re.sub(r'(?<!^)(?=[A-Z])', '_', s).lower()\n\n_POOLERS = {}\n\ndef register_pooler(cls):\n    \"\"\"Decorator registering pooler class\"\"\"\n    _POOLERS[_camel2snake(cls.__name__)] = cls\n    return cls\n\n\n@register_pooler\nclass MeanPooler(nn.Module):\n    \"\"\"Mean pooling\"\"\"\n    def forward(self, x:BaseModelOutput, attention_mask:TensorType):\n        masked_output = x.last_hidden_state * attention_mask.unsqueeze(-1)\n        return masked_output.sum(dim=1) / attention_mask.sum(-1, keepdim=True)\n\n@register_pooler\nclass MaxPooler(nn.Module):\n    \"\"\"Max pooling\"\"\"\n    def forward(self, x:BaseModelOutput, attention_mask:TensorType):\n        masked_output = x.last_hidden_state.masked_fill(attention_mask.unsqueeze(-1), -torch.inf)\n        return masked_output.max(1).values\n\n@register_pooler\nclass ClsPooler(nn.Module):\n    \"\"\"CLS token pooling\"\"\"\n    def __init__(self, use_pooler_output=True):\n        super().__init__()\n        self.cls_token_position = 0\n        self.use_pooler_output = use_pooler_output\n\n    def forward(self, x:BaseModelOutput, attention_mask:TensorType):\n\n        if (self.use_pooler_output and\n            isinstance(x, (BaseModelOutputWithPooling, BaseModelOutputWithPoolingAndCrossAttentions)) and\n            (x.pooler_output is not None)\n            ):\n            return x.pooler_output\n\n        return x.last_hidden_state[:, self.cls_token_position, :]\n\nclass HFTextEncoder(nn.Module):\n    \"\"\"HuggingFace model adapter\"\"\"\n    def __init__(\n            self,\n            model_name_or_path: str,\n            output_dim: int,\n            tokenizer_name: str = None,\n            config: PretrainedConfig = None,\n            pooler_type: str = None,\n            proj: str = None,\n            pretrained: bool = True,\n            masked_language_modeling: bool = False):\n        super().__init__()\n\n        self.output_dim = output_dim\n\n        uses_transformer_pooler = (pooler_type == \"cls_pooler\")\n\n        if transformers is None:\n            raise RuntimeError(\"Please `pip install transformers` to use pre-trained HuggingFace models\")\n        if config is None:\n            self.config = AutoConfig.from_pretrained(model_name_or_path)\n            if masked_language_modeling:\n                create_func, model_args = (AutoModelForMaskedLM.from_pretrained, model_name_or_path) if pretrained else (\n                    AutoModelForMaskedLM.from_config, self.config)\n            else:\n                create_func, model_args = (AutoModel.from_pretrained, model_name_or_path) if pretrained else (\n                    AutoModel.from_config, self.config)\n            if hasattr(self.config, \"is_encoder_decoder\") and self.config.is_encoder_decoder:\n                self.transformer = create_func(model_args)\n                self.transformer = self.transformer.encoder\n            else:\n                self.transformer = create_func(model_args, add_pooling_layer=uses_transformer_pooler)\n        else:\n            self.config = config\n            if masked_language_modeling:\n                self.transformer = AutoModelForMaskedLM.from_config(config)\n            else:\n                self.transformer = AutoModel.from_config(config)\n\n        if pooler_type is None: # get default arch pooler\n            self.pooler = _POOLERS[(arch_dict[self.config.model_type][\"pooler\"])]()\n        else:\n            self.pooler = _POOLERS[pooler_type]()\n\n        d_model = getattr(self.config, arch_dict[self.config.model_type][\"config_names\"][\"width\"])\n        if (d_model == output_dim) and (proj is None): # do we always need a proj?\n            self.proj = nn.Identity()\n        elif proj == 'linear':\n            self.proj = nn.Linear(d_model, output_dim, bias=False)\n        elif proj == 'mlp':\n            hidden_size = (d_model + output_dim) // 2\n            self.proj = nn.Sequential(\n                nn.Linear(d_model, hidden_size, bias=False),\n                nn.GELU(),\n                nn.Linear(hidden_size, output_dim, bias=False),\n            )\n\n        # self.itm_proj = nn.Linear(d_model, 2, bias=False)\n        # self.mlm_proj = nn.Linear(d_model, self.config.vocab_size), bias=False)\n        self.tokenizer = AutoTokenizer.from_pretrained(tokenizer_name)\n\n    # def forward_itm(self, x:TensorType, image_embeds:TensorType) -> TensorType:\n    #     image_atts = torch.ones(image_embeds.size()[:-1],dtype=torch.long).to(x.device)\n    #     attn_mask = (x != self.config.pad_token_id).long()\n    #     out = self.transformer(\n    #         input_ids=x,\n    #         attention_mask=attn_mask,\n    #         encoder_hidden_states = image_embeds,\n    #         encoder_attention_mask = image_atts,\n    #         )\n    #     pooled_out = self.pooler(out, attn_mask)\n\n    #     return self.itm_proj(pooled_out)\n\n    def mask(self, input_ids, vocab_size, device, targets=None, masked_indices=None, probability_matrix=None):\n        if masked_indices is None:\n            masked_indices = torch.bernoulli(probability_matrix).bool()\n\n        masked_indices[input_ids == self.tokenizer.pad_token_id] = False\n        masked_indices[input_ids == self.tokenizer.cls_token_id] = False\n\n        if targets is not None:\n            targets[~masked_indices] = -100 # We only compute loss on masked tokens\n\n        # 80% of the time, we replace masked input tokens with tokenizer.mask_token ([MASK])\n        indices_replaced = torch.bernoulli(torch.full(input_ids.shape, 0.8)).bool() & masked_indices\n        input_ids[indices_replaced] = self.tokenizer.mask_token_id\n\n        # 10% of the time, we replace masked input tokens with random word\n        indices_random = torch.bernoulli(torch.full(input_ids.shape, 0.5)).bool() & masked_indices & ~indices_replaced\n        random_words = torch.randint(vocab_size, input_ids.shape, dtype=torch.long).to(device)\n        input_ids[indices_random] = random_words[indices_random]\n        # The rest of the time (10% of the time) we keep the masked input tokens unchanged\n\n        if targets is not None:\n            return input_ids, targets\n        else:\n            return input_ids\n\n    def forward_mlm(self, input_ids, image_embeds, mlm_probability=0.25):\n        labels = input_ids.clone()\n        attn_mask = (input_ids != self.config.pad_token_id).long()\n        image_atts = torch.ones(image_embeds.size()[:-1],dtype=torch.long).to(input_ids.device)\n        vocab_size = getattr(self.config, arch_dict[self.config.model_type][\"config_names\"][\"vocab_size\"])\n        probability_matrix = torch.full(labels.shape, mlm_probability)\n        input_ids, labels = self.mask(input_ids, vocab_size, input_ids.device, targets=labels,\n                                      probability_matrix = probability_matrix)\n        mlm_output = self.transformer(input_ids,\n                        attention_mask = attn_mask,\n                        encoder_hidden_states = image_embeds,\n                        encoder_attention_mask = image_atts,\n                        return_dict = True,\n                        labels = labels,\n                    )\n        return mlm_output.loss\n        # mlm_output = self.transformer(input_ids,\n        #                 attention_mask = attn_mask,\n        #                 encoder_hidden_states = image_embeds,\n        #                 encoder_attention_mask = image_atts,\n        #                 return_dict = True,\n        #             ).last_hidden_state\n        # logits = self.mlm_proj(mlm_output)\n\n        # # logits = logits[:, :-1, :].contiguous().view(-1, vocab_size)\n        # logits = logits[:, 1:, :].contiguous().view(-1, vocab_size)\n        # labels = labels[:, 1:].contiguous().view(-1)\n\n        # mlm_loss = F.cross_entropy(\n        #     logits,\n        #     labels,\n        #     # label_smoothing=0.1,\n        # )\n        # return mlm_loss\n\n\n    def forward(self, x:TensorType) -> TensorType:\n        attn_mask = (x != self.config.pad_token_id).long()\n        out = self.transformer(input_ids=x, attention_mask=attn_mask)\n        pooled_out = self.pooler(out, attn_mask)\n\n        return self.proj(pooled_out)\n\n    def lock(self, unlocked_layers:int=0, freeze_layer_norm:bool=True):\n        if not unlocked_layers: # full freezing\n             for n, p in self.transformer.named_parameters():\n                 p.requires_grad = (not freeze_layer_norm) if \"LayerNorm\" in n.split(\".\") else False\n             return\n\n        encoder = self.transformer.encoder if hasattr(self.transformer, 'encoder') else self.transformer\n        layer_list = getattr(encoder, arch_dict[self.config.model_type][\"config_names\"][\"layer_attr\"])\n        embeddings = getattr(\n            self.transformer, arch_dict[self.config.model_type][\"config_names\"][\"token_embeddings_attr\"])\n        modules = [embeddings, *layer_list][:-unlocked_layers]\n        # freeze layers\n        for module in modules:\n            for n, p in module.named_parameters():\n                p.requires_grad = (not freeze_layer_norm) if \"LayerNorm\" in n.split(\".\") else False\n\n\n    @torch.jit.ignore\n    def set_grad_checkpointing(self, enable=True):\n        self.transformer.gradient_checkpointing_enable()\n\n    def get_num_layers(self):\n        encoder = self.transformer.encoder if hasattr(self.transformer, 'encoder') else self.transformer\n        layer_list = getattr(encoder, arch_dict[self.config.model_type][\"config_names\"][\"layer_attr\"])\n        return len(layer_list)\n\n    def init_parameters(self):\n        pass\n"
  },
  {
    "path": "scripts/pulid/eva_clip/loss.py",
    "content": "import math\nimport torch\nimport torch.nn as nn\nfrom torch.nn import functional as F\n\ntry:\n    import torch.distributed.nn\n    from torch import distributed as dist\n    has_distributed = True\nexcept ImportError:\n    has_distributed = False\n\ntry:\n    import horovod.torch as hvd\nexcept ImportError:\n    hvd = None\n\nfrom timm.loss import LabelSmoothingCrossEntropy\n\n\ndef gather_features(\n        image_features,\n        text_features,\n        local_loss=False,\n        gather_with_grad=False,\n        rank=0,\n        world_size=1,\n        use_horovod=False\n):\n    assert has_distributed, 'torch.distributed did not import correctly, please use a PyTorch version with support.'\n    if use_horovod:\n        assert hvd is not None, 'Please install horovod'\n        if gather_with_grad:\n            all_image_features = hvd.allgather(image_features)\n            all_text_features = hvd.allgather(text_features)\n        else:\n            with torch.no_grad():\n                all_image_features = hvd.allgather(image_features)\n                all_text_features = hvd.allgather(text_features)\n            if not local_loss:\n                # ensure grads for local rank when all_* features don't have a gradient\n                gathered_image_features = list(all_image_features.chunk(world_size, dim=0))\n                gathered_text_features = list(all_text_features.chunk(world_size, dim=0))\n                gathered_image_features[rank] = image_features\n                gathered_text_features[rank] = text_features\n                all_image_features = torch.cat(gathered_image_features, dim=0)\n                all_text_features = torch.cat(gathered_text_features, dim=0)\n    else:\n        # We gather tensors from all gpus\n        if gather_with_grad:\n            all_image_features = torch.cat(torch.distributed.nn.all_gather(image_features), dim=0)\n            all_text_features = torch.cat(torch.distributed.nn.all_gather(text_features), dim=0)\n            # all_image_features = torch.cat(torch.distributed.nn.all_gather(image_features, async_op=True), dim=0)\n            # all_text_features = torch.cat(torch.distributed.nn.all_gather(text_features, async_op=True), dim=0)\n        else:\n            gathered_image_features = [torch.zeros_like(image_features) for _ in range(world_size)]\n            gathered_text_features = [torch.zeros_like(text_features) for _ in range(world_size)]\n            dist.all_gather(gathered_image_features, image_features)\n            dist.all_gather(gathered_text_features, text_features)\n            if not local_loss:\n                # ensure grads for local rank when all_* features don't have a gradient\n                gathered_image_features[rank] = image_features\n                gathered_text_features[rank] = text_features\n            all_image_features = torch.cat(gathered_image_features, dim=0)\n            all_text_features = torch.cat(gathered_text_features, dim=0)\n\n    return all_image_features, all_text_features\n\n\nclass ClipLoss(nn.Module):\n\n    def __init__(\n            self,\n            local_loss=False,\n            gather_with_grad=False,\n            cache_labels=False,\n            rank=0,\n            world_size=1,\n            use_horovod=False,\n            smoothing=0.,\n    ):\n        super().__init__()\n        self.local_loss = local_loss\n        self.gather_with_grad = gather_with_grad\n        self.cache_labels = cache_labels\n        self.rank = rank\n        self.world_size = world_size\n        self.use_horovod = use_horovod\n        self.label_smoothing_cross_entropy = LabelSmoothingCrossEntropy(smoothing=smoothing) if smoothing > 0 else None\n\n        # cache state\n        self.prev_num_logits = 0\n        self.labels = {}\n\n    def forward(self, image_features, text_features, logit_scale=1.):\n        device = image_features.device\n        if self.world_size > 1:\n            all_image_features, all_text_features = gather_features(\n                image_features, text_features,\n                self.local_loss, self.gather_with_grad, self.rank, self.world_size, self.use_horovod)\n\n            if self.local_loss:\n                logits_per_image = logit_scale * image_features @ all_text_features.T\n                logits_per_text = logit_scale * text_features @ all_image_features.T\n            else:\n                logits_per_image = logit_scale * all_image_features @ all_text_features.T\n                logits_per_text = logits_per_image.T\n        else:\n            logits_per_image = logit_scale * image_features @ text_features.T\n            logits_per_text = logit_scale * text_features @ image_features.T\n        # calculated ground-truth and cache if enabled\n        num_logits = logits_per_image.shape[0]\n        if self.prev_num_logits != num_logits or device not in self.labels:\n            labels = torch.arange(num_logits, device=device, dtype=torch.long)\n            if self.world_size > 1 and self.local_loss:\n                labels = labels + num_logits * self.rank\n            if self.cache_labels:\n                self.labels[device] = labels\n                self.prev_num_logits = num_logits\n        else:\n            labels = self.labels[device]\n\n        if self.label_smoothing_cross_entropy:\n            total_loss = (\n                self.label_smoothing_cross_entropy(logits_per_image, labels) +\n                self.label_smoothing_cross_entropy(logits_per_text, labels)\n                ) / 2\n        else:\n            total_loss = (\n                F.cross_entropy(logits_per_image, labels) +\n                F.cross_entropy(logits_per_text, labels)\n                ) / 2\n\n        acc = None\n        i2t_acc = (logits_per_image.argmax(-1) == labels).sum() / len(logits_per_image)\n        t2i_acc = (logits_per_text.argmax(-1) == labels).sum() / len(logits_per_text)\n        acc = {\"i2t\": i2t_acc, \"t2i\": t2i_acc}\n        return total_loss, acc\n"
  },
  {
    "path": "scripts/pulid/eva_clip/model.py",
    "content": "\"\"\" CLIP Model\n\nAdapted from https://github.com/openai/CLIP. Originally MIT License, Copyright (c) 2021 OpenAI.\n\"\"\"\nimport os\nfrom dataclasses import dataclass\nfrom typing import Optional, Tuple, Union\nfrom functools import partial\n\nimport numpy as np\nimport torch\nimport torch.nn.functional as F\nfrom torch import nn\n\ntry:\n    from .hf_model import HFTextEncoder\nexcept Exception:\n    HFTextEncoder = None\nfrom .modified_resnet import ModifiedResNet\nfrom .timm_model import TimmModel\nfrom .eva_vit_model import EVAVisionTransformer\nfrom .transformer import LayerNorm, QuickGELU, Attention, VisionTransformer, TextTransformer\n\ntry:\n    from apex.normalization import FusedLayerNorm\nexcept Exception:\n    FusedLayerNorm = LayerNorm\n\n@dataclass\nclass CLIPVisionCfg:\n    layers: Union[Tuple[int, int, int, int], int] = 12\n    width: int = 768\n    head_width: int = 64\n    mlp_ratio: float = 4.0\n    patch_size: int = 16\n    image_size: Union[Tuple[int, int], int] = 224\n    ls_init_value: Optional[float] = None  # layer scale initial value\n    patch_dropout: float = 0. # what fraction of patches to dropout during training (0 would mean disabled and no patches dropped) - 0.5 to 0.75 recommended in the paper for optimal results\n    global_average_pool: bool = False # whether to global average pool the last embedding layer, instead of using CLS token (https://arxiv.org/abs/2205.01580)\n    drop_path_rate: Optional[float] = None  # drop path rate\n    timm_model_name: str = None  # a valid model name overrides layers, width, patch_size\n    timm_model_pretrained: bool = False  # use (imagenet) pretrained weights for named model\n    timm_pool: str = 'avg'  # feature pooling for timm model ('abs_attn', 'rot_attn', 'avg', '')\n    timm_proj: str = 'linear'  # linear projection for timm model output ('linear', 'mlp', '')\n    timm_proj_bias: bool = False  # enable bias final projection\n    eva_model_name: str = None # a valid eva model name overrides layers, width, patch_size\n    qkv_bias: bool = True\n    fusedLN: bool = False\n    xattn: bool = False\n    postnorm: bool = False\n    rope: bool = False\n    pt_hw_seq_len: int = 16   # 224/14\n    intp_freq: bool = False\n    naiveswiglu: bool = False\n    subln: bool = False\n\n\n@dataclass\nclass CLIPTextCfg:\n    context_length: int = 77\n    vocab_size: int = 49408\n    width: int = 512\n    heads: int = 8\n    layers: int = 12\n    ls_init_value: Optional[float] = None  # layer scale initial value\n    hf_model_name: str = None\n    hf_tokenizer_name: str = None\n    hf_model_pretrained: bool = True\n    proj: str = 'mlp'\n    pooler_type: str = 'mean_pooler'\n    masked_language_modeling: bool = False\n    fusedLN: bool = False\n    xattn: bool = False\n    attn_mask: bool = True\n\ndef get_cast_dtype(precision: str):\n    cast_dtype = None\n    if precision == 'bf16':\n        cast_dtype = torch.bfloat16\n    elif precision == 'fp16':\n        cast_dtype = torch.float16\n    return cast_dtype\n\n\ndef _build_vision_tower(\n        embed_dim: int,\n        vision_cfg: CLIPVisionCfg,\n        quick_gelu: bool = False,\n        cast_dtype: Optional[torch.dtype] = None\n):\n    if isinstance(vision_cfg, dict):\n        vision_cfg = CLIPVisionCfg(**vision_cfg)\n\n    # OpenAI models are pretrained w/ QuickGELU but native nn.GELU is both faster and more\n    # memory efficient in recent PyTorch releases (>= 1.10).\n    # NOTE: timm models always use native GELU regardless of quick_gelu flag.\n    act_layer = QuickGELU if quick_gelu else nn.GELU\n\n    if vision_cfg.eva_model_name:\n        vision_heads = vision_cfg.width // vision_cfg.head_width\n        norm_layer = LayerNorm\n\n        visual = EVAVisionTransformer(\n            img_size=vision_cfg.image_size,\n            patch_size=vision_cfg.patch_size,\n            num_classes=embed_dim,\n            use_mean_pooling=vision_cfg.global_average_pool, #False\n            init_values=vision_cfg.ls_init_value,\n            patch_dropout=vision_cfg.patch_dropout,\n            embed_dim=vision_cfg.width,\n            depth=vision_cfg.layers,\n            num_heads=vision_heads,\n            mlp_ratio=vision_cfg.mlp_ratio,\n            qkv_bias=vision_cfg.qkv_bias,\n            drop_path_rate=vision_cfg.drop_path_rate,\n            norm_layer= partial(FusedLayerNorm, eps=1e-6) if vision_cfg.fusedLN else partial(norm_layer, eps=1e-6),\n            xattn=vision_cfg.xattn,\n            rope=vision_cfg.rope,\n            postnorm=vision_cfg.postnorm,\n            pt_hw_seq_len= vision_cfg.pt_hw_seq_len,   # 224/14\n            intp_freq= vision_cfg.intp_freq,\n            naiveswiglu= vision_cfg.naiveswiglu,\n            subln= vision_cfg.subln\n        )\n    elif vision_cfg.timm_model_name:\n        visual = TimmModel(\n            vision_cfg.timm_model_name,\n            pretrained=vision_cfg.timm_model_pretrained,\n            pool=vision_cfg.timm_pool,\n            proj=vision_cfg.timm_proj,\n            proj_bias=vision_cfg.timm_proj_bias,\n            embed_dim=embed_dim,\n            image_size=vision_cfg.image_size\n        )\n        act_layer = nn.GELU  # so that text transformer doesn't use QuickGELU w/ timm models\n    elif isinstance(vision_cfg.layers, (tuple, list)):\n        vision_heads = vision_cfg.width * 32 // vision_cfg.head_width\n        visual = ModifiedResNet(\n            layers=vision_cfg.layers,\n            output_dim=embed_dim,\n            heads=vision_heads,\n            image_size=vision_cfg.image_size,\n            width=vision_cfg.width\n        )\n    else:\n        vision_heads = vision_cfg.width // vision_cfg.head_width\n        norm_layer = LayerNormFp32 if cast_dtype in (torch.float16, torch.bfloat16) else LayerNorm\n        visual = VisionTransformer(\n            image_size=vision_cfg.image_size,\n            patch_size=vision_cfg.patch_size,\n            width=vision_cfg.width,\n            layers=vision_cfg.layers,\n            heads=vision_heads,\n            mlp_ratio=vision_cfg.mlp_ratio,\n            ls_init_value=vision_cfg.ls_init_value,\n            patch_dropout=vision_cfg.patch_dropout,\n            global_average_pool=vision_cfg.global_average_pool,\n            output_dim=embed_dim,\n            act_layer=act_layer,\n            norm_layer=norm_layer,\n        )\n\n    return visual\n\n\ndef _build_text_tower(\n        embed_dim: int,\n        text_cfg: CLIPTextCfg,\n        quick_gelu: bool = False,\n        cast_dtype: Optional[torch.dtype] = None,\n):\n    if isinstance(text_cfg, dict):\n        text_cfg = CLIPTextCfg(**text_cfg)\n\n    if text_cfg.hf_model_name:\n        text = HFTextEncoder(\n            text_cfg.hf_model_name,\n            output_dim=embed_dim,\n            tokenizer_name=text_cfg.hf_tokenizer_name,\n            proj=text_cfg.proj,\n            pooler_type=text_cfg.pooler_type,\n            masked_language_modeling=text_cfg.masked_language_modeling\n       )\n    else:\n        act_layer = QuickGELU if quick_gelu else nn.GELU\n        norm_layer = LayerNorm\n\n        text = TextTransformer(\n            context_length=text_cfg.context_length,\n            vocab_size=text_cfg.vocab_size,\n            width=text_cfg.width,\n            heads=text_cfg.heads,\n            layers=text_cfg.layers,\n            ls_init_value=text_cfg.ls_init_value,\n            output_dim=embed_dim,\n            act_layer=act_layer,\n            norm_layer= FusedLayerNorm if text_cfg.fusedLN else norm_layer,\n            xattn=text_cfg.xattn,\n            attn_mask=text_cfg.attn_mask,\n        )\n    return text\n\nclass CLIP(nn.Module):\n    def __init__(\n            self,\n            embed_dim: int,\n            vision_cfg: CLIPVisionCfg,\n            text_cfg: CLIPTextCfg,\n            quick_gelu: bool = False,\n            cast_dtype: Optional[torch.dtype] = None,\n    ):\n        super().__init__()\n        self.visual = _build_vision_tower(embed_dim, vision_cfg, quick_gelu, cast_dtype)\n\n        text = _build_text_tower(embed_dim, text_cfg, quick_gelu, cast_dtype)\n        self.transformer = text.transformer\n        self.vocab_size = text.vocab_size\n        self.token_embedding = text.token_embedding\n        self.positional_embedding = text.positional_embedding\n        self.ln_final = text.ln_final\n        self.text_projection = text.text_projection\n        self.register_buffer('attn_mask', text.attn_mask, persistent=False)\n\n        self.logit_scale = nn.Parameter(torch.ones([]) * np.log(1 / 0.07))\n\n    def lock_image_tower(self, unlocked_groups=0, freeze_bn_stats=False):\n        # lock image tower as per LiT - https://arxiv.org/abs/2111.07991\n        self.visual.lock(unlocked_groups=unlocked_groups, freeze_bn_stats=freeze_bn_stats)\n\n    @torch.jit.ignore\n    def set_grad_checkpointing(self, enable=True):\n        self.visual.set_grad_checkpointing(enable)\n        self.transformer.grad_checkpointing = enable\n\n    @torch.jit.ignore\n    def no_weight_decay(self):\n        return {'logit_scale'}\n\n    def encode_image(self, image, normalize: bool = False):\n        features = self.visual(image)\n        return F.normalize(features, dim=-1) if normalize else features\n\n    def encode_text(self, text, normalize: bool = False):\n        cast_dtype = self.transformer.get_cast_dtype()\n\n        x = self.token_embedding(text).to(cast_dtype)  # [batch_size, n_ctx, d_model]\n\n        x = x + self.positional_embedding.to(cast_dtype)\n        x = x.permute(1, 0, 2)  # NLD -> LND\n        x = self.transformer(x, attn_mask=self.attn_mask)\n        x = x.permute(1, 0, 2)  # LND -> NLD\n        x = self.ln_final(x)  # [batch_size, n_ctx, transformer.width]\n        # take features from the eot embedding (eot_token is the highest number in each sequence)\n        x = x[torch.arange(x.shape[0]), text.argmax(dim=-1)] @ self.text_projection\n        return F.normalize(x, dim=-1) if normalize else x\n\n    def forward(self, image, text):\n        image_features = self.encode_image(image, normalize=True)\n        text_features = self.encode_text(text, normalize=True)\n        return image_features, text_features, self.logit_scale.exp()\n\n\nclass CustomCLIP(nn.Module):\n    def __init__(\n            self,\n            embed_dim: int,\n            vision_cfg: CLIPVisionCfg,\n            text_cfg: CLIPTextCfg,\n            quick_gelu: bool = False,\n            cast_dtype: Optional[torch.dtype] = None,\n            itm_task: bool = False,\n    ):\n        super().__init__()\n        self.visual = _build_vision_tower(embed_dim, vision_cfg, quick_gelu, cast_dtype)\n        self.text = _build_text_tower(embed_dim, text_cfg, quick_gelu, cast_dtype)\n        self.logit_scale = nn.Parameter(torch.ones([]) * np.log(1 / 0.07))\n\n    def lock_image_tower(self, unlocked_groups=0, freeze_bn_stats=False):\n        # lock image tower as per LiT - https://arxiv.org/abs/2111.07991\n        self.visual.lock(unlocked_groups=unlocked_groups, freeze_bn_stats=freeze_bn_stats)\n\n    def lock_text_tower(self, unlocked_layers:int=0, freeze_layer_norm:bool=True):\n        self.text.lock(unlocked_layers, freeze_layer_norm)\n\n    @torch.jit.ignore\n    def set_grad_checkpointing(self, enable=True):\n        self.visual.set_grad_checkpointing(enable)\n        self.text.set_grad_checkpointing(enable)\n\n    @torch.jit.ignore\n    def no_weight_decay(self):\n        return {'logit_scale'}\n\n    def encode_image(self, image, normalize: bool = False):\n        features = self.visual(image)\n        return F.normalize(features, dim=-1) if normalize else features\n\n    def encode_text(self, text, normalize: bool = False):\n        features = self.text(text)\n        return F.normalize(features, dim=-1) if normalize else features\n\n    def forward(self, image, text):\n        image_features = self.encode_image(image, normalize=True)\n        text_features = self.encode_text(text, normalize=True)\n        return image_features, text_features, self.logit_scale.exp()\n\n\ndef convert_weights_to_lp(model: nn.Module, dtype=torch.float16):\n    \"\"\"Convert applicable model parameters to low-precision (bf16 or fp16)\"\"\"\n\n    def _convert_weights(l):\n\n        if isinstance(l, (nn.Conv1d, nn.Conv2d, nn.Linear)):\n            l.weight.data = l.weight.data.to(dtype)\n            if l.bias is not None:\n                l.bias.data = l.bias.data.to(dtype)\n\n        if isinstance(l, (nn.MultiheadAttention, Attention)):\n            for attr in [*[f\"{s}_proj_weight\" for s in [\"in\", \"q\", \"k\", \"v\"]], \"in_proj_bias\", \"bias_k\", \"bias_v\"]:\n                tensor = getattr(l, attr, None)\n                if tensor is not None:\n                    tensor.data = tensor.data.to(dtype)\n\n        if isinstance(l, nn.Parameter):\n            l.data = l.data.to(dtype)\n\n        for name in [\"text_projection\", \"proj\"]:\n            if hasattr(l, name) and isinstance(l, nn.Parameter):\n                attr = getattr(l, name, None)\n                if attr is not None:\n                    attr.data = attr.data.to(dtype)\n\n    model.apply(_convert_weights)\n\n\nconvert_weights_to_fp16 = convert_weights_to_lp  # backwards compat\n\n\n# used to maintain checkpoint compatibility\ndef convert_to_custom_text_state_dict(state_dict: dict):\n    if 'text_projection' in state_dict:\n        # old format state_dict, move text tower -> .text\n        new_state_dict = {}\n        for k, v in state_dict.items():\n            if any(k.startswith(p) for p in (\n                'text_projection',\n                'positional_embedding',\n                'token_embedding',\n                'transformer',\n                'ln_final',\n                'logit_scale'\n            )):\n                k = 'text.' + k\n            new_state_dict[k] = v\n        return new_state_dict\n    return state_dict\n\n\ndef build_model_from_openai_state_dict(\n        state_dict: dict,\n        quick_gelu=True,\n        cast_dtype=torch.float16,\n):\n    vit = \"visual.proj\" in state_dict\n\n    if vit:\n        vision_width = state_dict[\"visual.conv1.weight\"].shape[0]\n        vision_layers = len(\n            [k for k in state_dict.keys() if k.startswith(\"visual.\") and k.endswith(\".attn.in_proj_weight\")])\n        vision_patch_size = state_dict[\"visual.conv1.weight\"].shape[-1]\n        grid_size = round((state_dict[\"visual.positional_embedding\"].shape[0] - 1) ** 0.5)\n        image_size = vision_patch_size * grid_size\n    else:\n        counts: list = [\n            len(set(k.split(\".\")[2] for k in state_dict if k.startswith(f\"visual.layer{b}\"))) for b in [1, 2, 3, 4]]\n        vision_layers = tuple(counts)\n        vision_width = state_dict[\"visual.layer1.0.conv1.weight\"].shape[0]\n        output_width = round((state_dict[\"visual.attnpool.positional_embedding\"].shape[0] - 1) ** 0.5)\n        vision_patch_size = None\n        assert output_width ** 2 + 1 == state_dict[\"visual.attnpool.positional_embedding\"].shape[0]\n        image_size = output_width * 32\n\n    embed_dim = state_dict[\"text_projection\"].shape[1]\n    context_length = state_dict[\"positional_embedding\"].shape[0]\n    vocab_size = state_dict[\"token_embedding.weight\"].shape[0]\n    transformer_width = state_dict[\"ln_final.weight\"].shape[0]\n    transformer_heads = transformer_width // 64\n    transformer_layers = len(set(k.split(\".\")[2] for k in state_dict if k.startswith(f\"transformer.resblocks\")))\n\n    vision_cfg = CLIPVisionCfg(\n        layers=vision_layers,\n        width=vision_width,\n        patch_size=vision_patch_size,\n        image_size=image_size,\n    )\n    text_cfg = CLIPTextCfg(\n        context_length=context_length,\n        vocab_size=vocab_size,\n        width=transformer_width,\n        heads=transformer_heads,\n        layers=transformer_layers\n    )\n    model = CLIP(\n        embed_dim,\n        vision_cfg=vision_cfg,\n        text_cfg=text_cfg,\n        quick_gelu=quick_gelu,  # OpenAI models were trained with QuickGELU\n        cast_dtype=cast_dtype,\n    )\n\n    for key in [\"input_resolution\", \"context_length\", \"vocab_size\"]:\n        state_dict.pop(key, None)\n\n    convert_weights_to_fp16(model)  # OpenAI state dicts are partially converted to float16\n    model.load_state_dict(state_dict)\n    return model.eval()\n\n\ndef trace_model(model, batch_size=256, device=torch.device('cpu')):\n    model.eval()\n    image_size = model.visual.image_size\n    example_images = torch.ones((batch_size, 3, image_size, image_size), device=device)\n    example_text = torch.zeros((batch_size, model.context_length), dtype=torch.int, device=device)\n    model = torch.jit.trace_module(\n        model,\n        inputs=dict(\n            forward=(example_images, example_text),\n            encode_text=(example_text,),\n            encode_image=(example_images,)\n        ))\n    model.visual.image_size = image_size\n    return model\n"
  },
  {
    "path": "scripts/pulid/eva_clip/model_configs/EVA01-CLIP-B-16.json",
    "content": "{\n    \"embed_dim\": 512,\n    \"vision_cfg\": {\n        \"image_size\": 224,\n        \"layers\": 12,\n        \"width\": 768,\n        \"patch_size\": 16,\n        \"eva_model_name\": \"eva-clip-b-16\",\n        \"ls_init_value\": 0.1,\n        \"drop_path_rate\": 0.0\n    },\n    \"text_cfg\": {\n        \"context_length\": 77,\n        \"vocab_size\": 49408,\n        \"width\": 512,\n        \"heads\": 8,\n        \"layers\": 12\n    }\n}\n"
  },
  {
    "path": "scripts/pulid/eva_clip/model_configs/EVA01-CLIP-g-14-plus.json",
    "content": "{\n    \"embed_dim\": 1024,\n    \"vision_cfg\": {\n        \"image_size\": 224,\n        \"layers\": 40,\n        \"width\": 1408,\n        \"head_width\": 88,\n        \"mlp_ratio\": 4.3637,\n        \"patch_size\": 14,\n        \"eva_model_name\": \"eva-clip-g-14-x\",\n        \"drop_path_rate\": 0,\n        \"xattn\": true,\n        \"fusedLN\": true\n    },\n    \"text_cfg\": {\n        \"context_length\": 77,\n        \"vocab_size\": 49408,\n        \"width\": 1024,\n        \"heads\": 16,\n        \"layers\": 24,\n        \"xattn\": false,\n        \"fusedLN\": true\n    }\n}\n"
  },
  {
    "path": "scripts/pulid/eva_clip/model_configs/EVA01-CLIP-g-14.json",
    "content": "{\n    \"embed_dim\": 1024,\n    \"vision_cfg\": {\n        \"image_size\": 224,\n        \"layers\": 40,\n        \"width\": 1408,\n        \"head_width\": 88,\n        \"mlp_ratio\": 4.3637,\n        \"patch_size\": 14,\n        \"eva_model_name\": \"eva-clip-g-14-x\",\n        \"drop_path_rate\": 0.4,\n        \"xattn\": true,\n        \"fusedLN\": true\n    },\n    \"text_cfg\": {\n        \"context_length\": 77,\n        \"vocab_size\": 49408,\n        \"width\": 768,\n        \"heads\": 12,\n        \"layers\": 12,\n        \"xattn\": false,\n        \"fusedLN\": true\n    }\n}\n"
  },
  {
    "path": "scripts/pulid/eva_clip/model_configs/EVA02-CLIP-B-16.json",
    "content": "{\n    \"embed_dim\": 512,\n    \"vision_cfg\": {\n        \"image_size\": 224,\n        \"layers\": 12,\n        \"width\": 768,\n        \"head_width\": 64,\n        \"patch_size\": 16,\n        \"mlp_ratio\": 2.6667,\n        \"eva_model_name\": \"eva-clip-b-16-X\",\n        \"drop_path_rate\": 0.0,\n        \"xattn\": true,\n        \"fusedLN\": true,\n        \"rope\": true,\n        \"pt_hw_seq_len\": 16,\n        \"intp_freq\": true,\n        \"naiveswiglu\": true,\n        \"subln\": true\n    },\n    \"text_cfg\": {\n        \"context_length\": 77,\n        \"vocab_size\": 49408,\n        \"width\": 512,\n        \"heads\": 8,\n        \"layers\": 12,\n        \"xattn\": true,\n        \"fusedLN\": true\n    }\n}\n"
  },
  {
    "path": "scripts/pulid/eva_clip/model_configs/EVA02-CLIP-L-14-336.json",
    "content": "{\n    \"embed_dim\": 768,\n    \"vision_cfg\": {\n        \"image_size\": 336,\n        \"layers\": 24,\n        \"width\": 1024,\n        \"drop_path_rate\": 0,\n        \"head_width\": 64,\n        \"mlp_ratio\": 2.6667,\n        \"patch_size\": 14,\n        \"eva_model_name\": \"eva-clip-l-14-336\",\n        \"xattn\": true,\n        \"fusedLN\": true,\n        \"rope\": true,\n        \"pt_hw_seq_len\": 16,\n        \"intp_freq\": true,\n        \"naiveswiglu\": true,\n        \"subln\": true\n    },\n    \"text_cfg\": {\n        \"context_length\": 77,\n        \"vocab_size\": 49408,\n        \"width\": 768,\n        \"heads\": 12,\n        \"layers\": 12,\n        \"xattn\": false,\n        \"fusedLN\": true\n    }\n}\n"
  },
  {
    "path": "scripts/pulid/eva_clip/model_configs/EVA02-CLIP-L-14.json",
    "content": "{\n    \"embed_dim\": 768,\n    \"vision_cfg\": {\n        \"image_size\": 224,\n        \"layers\": 24,\n        \"width\": 1024,\n        \"drop_path_rate\": 0,\n        \"head_width\": 64,\n        \"mlp_ratio\": 2.6667,\n        \"patch_size\": 14,\n        \"eva_model_name\": \"eva-clip-l-14\",\n        \"xattn\": true,\n        \"fusedLN\": true,\n        \"rope\": true,\n        \"pt_hw_seq_len\": 16,\n        \"intp_freq\": true,\n        \"naiveswiglu\": true,\n        \"subln\": true\n    },\n    \"text_cfg\": {\n        \"context_length\": 77,\n        \"vocab_size\": 49408,\n        \"width\": 768,\n        \"heads\": 12,\n        \"layers\": 12,\n        \"xattn\": false,\n        \"fusedLN\": true\n    }\n}\n"
  },
  {
    "path": "scripts/pulid/eva_clip/model_configs/EVA02-CLIP-bigE-14-plus.json",
    "content": "{\n    \"embed_dim\": 1024,\n    \"vision_cfg\": {\n        \"image_size\": 224,\n        \"layers\": 64,\n        \"width\": 1792,\n        \"head_width\": 112,\n        \"mlp_ratio\": 8.571428571428571,\n        \"patch_size\": 14,\n        \"eva_model_name\": \"eva-clip-4b-14-x\",\n        \"drop_path_rate\": 0,\n        \"xattn\": true,\n        \"postnorm\": true,\n        \"fusedLN\": true\n    },\n    \"text_cfg\": {\n        \"context_length\": 77,\n        \"vocab_size\": 49408,\n        \"width\": 1280,\n        \"heads\": 20,\n        \"layers\": 32,\n        \"xattn\": false,\n        \"fusedLN\": true\n    }\n}\n"
  },
  {
    "path": "scripts/pulid/eva_clip/model_configs/EVA02-CLIP-bigE-14.json",
    "content": "{\n    \"embed_dim\": 1024,\n    \"vision_cfg\": {\n        \"image_size\": 224,\n        \"layers\": 64,\n        \"width\": 1792,\n        \"head_width\": 112,\n        \"mlp_ratio\": 8.571428571428571,\n        \"patch_size\": 14,\n        \"eva_model_name\": \"eva-clip-4b-14-x\",\n        \"drop_path_rate\": 0,\n        \"xattn\": true,\n        \"postnorm\": true,\n        \"fusedLN\": true\n    },\n    \"text_cfg\": {\n        \"context_length\": 77,\n        \"vocab_size\": 49408,\n        \"width\": 1024,\n        \"heads\": 16,\n        \"layers\": 24,\n        \"xattn\": false,\n        \"fusedLN\": true\n    }\n}\n"
  },
  {
    "path": "scripts/pulid/eva_clip/modified_resnet.py",
    "content": "from collections import OrderedDict\n\nimport torch\nfrom torch import nn\nfrom torch.nn import functional as F\n\nfrom eva_clip.utils import freeze_batch_norm_2d\n\n\nclass Bottleneck(nn.Module):\n    expansion = 4\n\n    def __init__(self, inplanes, planes, stride=1):\n        super().__init__()\n\n        # all conv layers have stride 1. an avgpool is performed after the second convolution when stride > 1\n        self.conv1 = nn.Conv2d(inplanes, planes, 1, bias=False)\n        self.bn1 = nn.BatchNorm2d(planes)\n        self.act1 = nn.ReLU(inplace=True)\n\n        self.conv2 = nn.Conv2d(planes, planes, 3, padding=1, bias=False)\n        self.bn2 = nn.BatchNorm2d(planes)\n        self.act2 = nn.ReLU(inplace=True)\n\n        self.avgpool = nn.AvgPool2d(stride) if stride > 1 else nn.Identity()\n\n        self.conv3 = nn.Conv2d(planes, planes * self.expansion, 1, bias=False)\n        self.bn3 = nn.BatchNorm2d(planes * self.expansion)\n        self.act3 = nn.ReLU(inplace=True)\n\n        self.downsample = None\n        self.stride = stride\n\n        if stride > 1 or inplanes != planes * Bottleneck.expansion:\n            # downsampling layer is prepended with an avgpool, and the subsequent convolution has stride 1\n            self.downsample = nn.Sequential(OrderedDict([\n                (\"-1\", nn.AvgPool2d(stride)),\n                (\"0\", nn.Conv2d(inplanes, planes * self.expansion, 1, stride=1, bias=False)),\n                (\"1\", nn.BatchNorm2d(planes * self.expansion))\n            ]))\n\n    def forward(self, x: torch.Tensor):\n        identity = x\n\n        out = self.act1(self.bn1(self.conv1(x)))\n        out = self.act2(self.bn2(self.conv2(out)))\n        out = self.avgpool(out)\n        out = self.bn3(self.conv3(out))\n\n        if self.downsample is not None:\n            identity = self.downsample(x)\n\n        out += identity\n        out = self.act3(out)\n        return out\n\n\nclass AttentionPool2d(nn.Module):\n    def __init__(self, spacial_dim: int, embed_dim: int, num_heads: int, output_dim: int = None):\n        super().__init__()\n        self.positional_embedding = nn.Parameter(torch.randn(spacial_dim ** 2 + 1, embed_dim) / embed_dim ** 0.5)\n        self.k_proj = nn.Linear(embed_dim, embed_dim)\n        self.q_proj = nn.Linear(embed_dim, embed_dim)\n        self.v_proj = nn.Linear(embed_dim, embed_dim)\n        self.c_proj = nn.Linear(embed_dim, output_dim or embed_dim)\n        self.num_heads = num_heads\n\n    def forward(self, x):\n        x = x.reshape(x.shape[0], x.shape[1], x.shape[2] * x.shape[3]).permute(2, 0, 1)  # NCHW -> (HW)NC\n        x = torch.cat([x.mean(dim=0, keepdim=True), x], dim=0)  # (HW+1)NC\n        x = x + self.positional_embedding[:, None, :].to(x.dtype)  # (HW+1)NC\n        x, _ = F.multi_head_attention_forward(\n            query=x, key=x, value=x,\n            embed_dim_to_check=x.shape[-1],\n            num_heads=self.num_heads,\n            q_proj_weight=self.q_proj.weight,\n            k_proj_weight=self.k_proj.weight,\n            v_proj_weight=self.v_proj.weight,\n            in_proj_weight=None,\n            in_proj_bias=torch.cat([self.q_proj.bias, self.k_proj.bias, self.v_proj.bias]),\n            bias_k=None,\n            bias_v=None,\n            add_zero_attn=False,\n            dropout_p=0.,\n            out_proj_weight=self.c_proj.weight,\n            out_proj_bias=self.c_proj.bias,\n            use_separate_proj_weight=True,\n            training=self.training,\n            need_weights=False\n        )\n\n        return x[0]\n\n\nclass ModifiedResNet(nn.Module):\n    \"\"\"\n    A ResNet class that is similar to torchvision's but contains the following changes:\n    - There are now 3 \"stem\" convolutions as opposed to 1, with an average pool instead of a max pool.\n    - Performs anti-aliasing strided convolutions, where an avgpool is prepended to convolutions with stride > 1\n    - The final pooling layer is a QKV attention instead of an average pool\n    \"\"\"\n\n    def __init__(self, layers, output_dim, heads, image_size=224, width=64):\n        super().__init__()\n        self.output_dim = output_dim\n        self.image_size = image_size\n\n        # the 3-layer stem\n        self.conv1 = nn.Conv2d(3, width // 2, kernel_size=3, stride=2, padding=1, bias=False)\n        self.bn1 = nn.BatchNorm2d(width // 2)\n        self.act1 = nn.ReLU(inplace=True)\n        self.conv2 = nn.Conv2d(width // 2, width // 2, kernel_size=3, padding=1, bias=False)\n        self.bn2 = nn.BatchNorm2d(width // 2)\n        self.act2 = nn.ReLU(inplace=True)\n        self.conv3 = nn.Conv2d(width // 2, width, kernel_size=3, padding=1, bias=False)\n        self.bn3 = nn.BatchNorm2d(width)\n        self.act3 = nn.ReLU(inplace=True)\n        self.avgpool = nn.AvgPool2d(2)\n\n        # residual layers\n        self._inplanes = width  # this is a *mutable* variable used during construction\n        self.layer1 = self._make_layer(width, layers[0])\n        self.layer2 = self._make_layer(width * 2, layers[1], stride=2)\n        self.layer3 = self._make_layer(width * 4, layers[2], stride=2)\n        self.layer4 = self._make_layer(width * 8, layers[3], stride=2)\n\n        embed_dim = width * 32  # the ResNet feature dimension\n        self.attnpool = AttentionPool2d(image_size // 32, embed_dim, heads, output_dim)\n\n        self.init_parameters()\n\n    def _make_layer(self, planes, blocks, stride=1):\n        layers = [Bottleneck(self._inplanes, planes, stride)]\n\n        self._inplanes = planes * Bottleneck.expansion\n        for _ in range(1, blocks):\n            layers.append(Bottleneck(self._inplanes, planes))\n\n        return nn.Sequential(*layers)\n\n    def init_parameters(self):\n        if self.attnpool is not None:\n            std = self.attnpool.c_proj.in_features ** -0.5\n            nn.init.normal_(self.attnpool.q_proj.weight, std=std)\n            nn.init.normal_(self.attnpool.k_proj.weight, std=std)\n            nn.init.normal_(self.attnpool.v_proj.weight, std=std)\n            nn.init.normal_(self.attnpool.c_proj.weight, std=std)\n\n        for resnet_block in [self.layer1, self.layer2, self.layer3, self.layer4]:\n            for name, param in resnet_block.named_parameters():\n                if name.endswith(\"bn3.weight\"):\n                    nn.init.zeros_(param)\n\n    def lock(self, unlocked_groups=0, freeze_bn_stats=False):\n        assert unlocked_groups == 0, 'partial locking not currently supported for this model'\n        for param in self.parameters():\n            param.requires_grad = False\n        if freeze_bn_stats:\n            freeze_batch_norm_2d(self)\n\n    @torch.jit.ignore\n    def set_grad_checkpointing(self, enable=True):\n        # FIXME support for non-transformer\n        pass\n\n    def stem(self, x):\n        x = self.act1(self.bn1(self.conv1(x)))\n        x = self.act2(self.bn2(self.conv2(x)))\n        x = self.act3(self.bn3(self.conv3(x)))\n        x = self.avgpool(x)\n        return x\n\n    def forward(self, x):\n        x = self.stem(x)\n        x = self.layer1(x)\n        x = self.layer2(x)\n        x = self.layer3(x)\n        x = self.layer4(x)\n        x = self.attnpool(x)\n\n        return x\n"
  },
  {
    "path": "scripts/pulid/eva_clip/openai.py",
    "content": "\"\"\" OpenAI pretrained model functions\n\nAdapted from https://github.com/openai/CLIP. Originally MIT License, Copyright (c) 2021 OpenAI.\n\"\"\"\n\nimport os\nimport warnings\nfrom typing import List, Optional, Union\n\nimport torch\n\nfrom .model import build_model_from_openai_state_dict, convert_weights_to_lp, get_cast_dtype\nfrom .pretrained import get_pretrained_url, list_pretrained_models_by_tag, download_pretrained_from_url\n\n__all__ = [\"list_openai_models\", \"load_openai_model\"]\n\n\ndef list_openai_models() -> List[str]:\n    \"\"\"Returns the names of available CLIP models\"\"\"\n    return list_pretrained_models_by_tag('openai')\n\n\ndef load_openai_model(\n        name: str,\n        precision: Optional[str] = None,\n        device: Optional[Union[str, torch.device]] = None,\n        jit: bool = True,\n        cache_dir: Optional[str] = None,\n):\n    \"\"\"Load a CLIP model\n\n    Parameters\n    ----------\n    name : str\n        A model name listed by `clip.available_models()`, or the path to a model checkpoint containing the state_dict\n    precision: str\n        Model precision, if None defaults to 'fp32' if device == 'cpu' else 'fp16'.\n    device : Union[str, torch.device]\n        The device to put the loaded model\n    jit : bool\n        Whether to load the optimized JIT model (default) or more hackable non-JIT model.\n    cache_dir : Optional[str]\n        The directory to cache the downloaded model weights\n\n    Returns\n    -------\n    model : torch.nn.Module\n        The CLIP model\n    preprocess : Callable[[PIL.Image], torch.Tensor]\n        A torchvision transform that converts a PIL image into a tensor that the returned model can take as its input\n    \"\"\"\n    if device is None:\n        device = \"cuda\" if torch.cuda.is_available() else \"cpu\"\n    if precision is None:\n        precision = 'fp32' if device == 'cpu' else 'fp16'\n\n    if get_pretrained_url(name, 'openai'):\n        model_path = download_pretrained_from_url(get_pretrained_url(name, 'openai'), cache_dir=cache_dir)\n    elif os.path.isfile(name):\n        model_path = name\n    else:\n        raise RuntimeError(f\"Model {name} not found; available models = {list_openai_models()}\")\n\n    try:\n        # loading JIT archive\n        model = torch.jit.load(model_path, map_location=device if jit else \"cpu\").eval()\n        state_dict = None\n    except RuntimeError:\n        # loading saved state dict\n        if jit:\n            warnings.warn(f\"File {model_path} is not a JIT archive. Loading as a state dict instead\")\n            jit = False\n        state_dict = torch.load(model_path, map_location=\"cpu\")\n\n    if not jit:\n        # Build a non-jit model from the OpenAI jitted model state dict\n        cast_dtype = get_cast_dtype(precision)\n        try:\n            model = build_model_from_openai_state_dict(state_dict or model.state_dict(), cast_dtype=cast_dtype)\n        except KeyError:\n            sd = {k[7:]: v for k, v in state_dict[\"state_dict\"].items()}\n            model = build_model_from_openai_state_dict(sd, cast_dtype=cast_dtype)\n\n        # model from OpenAI state dict is in manually cast fp16 mode, must be converted for AMP/fp32/bf16 use\n        model = model.to(device)\n        if precision.startswith('amp') or precision == 'fp32':\n            model.float()\n        elif precision == 'bf16':\n            convert_weights_to_lp(model, dtype=torch.bfloat16)\n\n        return model\n\n    # patch the device names\n    device_holder = torch.jit.trace(lambda: torch.ones([]).to(torch.device(device)), example_inputs=[])\n    device_node = [n for n in device_holder.graph.findAllNodes(\"prim::Constant\") if \"Device\" in repr(n)][-1]\n\n    def patch_device(module):\n        try:\n            graphs = [module.graph] if hasattr(module, \"graph\") else []\n        except RuntimeError:\n            graphs = []\n\n        if hasattr(module, \"forward1\"):\n            graphs.append(module.forward1.graph)\n\n        for graph in graphs:\n            for node in graph.findAllNodes(\"prim::Constant\"):\n                if \"value\" in node.attributeNames() and str(node[\"value\"]).startswith(\"cuda\"):\n                    node.copyAttributes(device_node)\n\n    model.apply(patch_device)\n    patch_device(model.encode_image)\n    patch_device(model.encode_text)\n\n    # patch dtype to float32 (typically for CPU)\n    if precision == 'fp32':\n        float_holder = torch.jit.trace(lambda: torch.ones([]).float(), example_inputs=[])\n        float_input = list(float_holder.graph.findNode(\"aten::to\").inputs())[1]\n        float_node = float_input.node()\n\n        def patch_float(module):\n            try:\n                graphs = [module.graph] if hasattr(module, \"graph\") else []\n            except RuntimeError:\n                graphs = []\n\n            if hasattr(module, \"forward1\"):\n                graphs.append(module.forward1.graph)\n\n            for graph in graphs:\n                for node in graph.findAllNodes(\"aten::to\"):\n                    inputs = list(node.inputs())\n                    for i in [1, 2]:  # dtype can be the second or third argument to aten::to()\n                        if inputs[i].node()[\"value\"] == 5:\n                            inputs[i].node().copyAttributes(float_node)\n\n        model.apply(patch_float)\n        patch_float(model.encode_image)\n        patch_float(model.encode_text)\n        model.float()\n\n    # ensure image_size attr available at consistent location for both jit and non-jit\n    model.visual.image_size = model.input_resolution.item()\n    return model\n"
  },
  {
    "path": "scripts/pulid/eva_clip/pretrained.py",
    "content": "import hashlib\nimport os\nimport urllib\nimport warnings\nfrom typing import Dict, Union\n\nfrom tqdm import tqdm\n\ntry:\n    from huggingface_hub import hf_hub_download\n    _has_hf_hub = True\nexcept ImportError:\n    hf_hub_download = None\n    _has_hf_hub = False\n\n\ndef _pcfg(url='', hf_hub='', filename='', mean=None, std=None):\n    return dict(\n        url=url,\n        hf_hub=hf_hub,\n        mean=mean,\n        std=std,\n    )\n\n_VITB32 = dict(\n    openai=_pcfg(\n        \"https://openaipublic.azureedge.net/clip/models/40d365715913c9da98579312b702a82c18be219cc2a73407c4526f58eba950af/ViT-B-32.pt\"),\n    laion400m_e31=_pcfg(\n        \"https://github.com/mlfoundations/open_clip/releases/download/v0.2-weights/vit_b_32-quickgelu-laion400m_e31-d867053b.pt\"),\n    laion400m_e32=_pcfg(\n        \"https://github.com/mlfoundations/open_clip/releases/download/v0.2-weights/vit_b_32-quickgelu-laion400m_e32-46683a32.pt\"),\n    laion2b_e16=_pcfg(\n        \"https://github.com/mlfoundations/open_clip/releases/download/v0.2-weights/vit_b_32-laion2b_e16-af8dbd0c.pth\"),\n    laion2b_s34b_b79k=_pcfg(hf_hub='laion/CLIP-ViT-B-32-laion2B-s34B-b79K/')\n)\n\n_VITB32_quickgelu = dict(\n    openai=_pcfg(\n        \"https://openaipublic.azureedge.net/clip/models/40d365715913c9da98579312b702a82c18be219cc2a73407c4526f58eba950af/ViT-B-32.pt\"),\n    laion400m_e31=_pcfg(\n        \"https://github.com/mlfoundations/open_clip/releases/download/v0.2-weights/vit_b_32-quickgelu-laion400m_e31-d867053b.pt\"),\n    laion400m_e32=_pcfg(\n        \"https://github.com/mlfoundations/open_clip/releases/download/v0.2-weights/vit_b_32-quickgelu-laion400m_e32-46683a32.pt\"),\n)\n\n_VITB16 = dict(\n    openai=_pcfg(\n        \"https://openaipublic.azureedge.net/clip/models/5806e77cd80f8b59890b7e101eabd078d9fb84e6937f9e85e4ecb61988df416f/ViT-B-16.pt\"),\n    laion400m_e31=_pcfg(\n        \"https://github.com/mlfoundations/open_clip/releases/download/v0.2-weights/vit_b_16-laion400m_e31-00efa78f.pt\"),\n    laion400m_e32=_pcfg(\n        \"https://github.com/mlfoundations/open_clip/releases/download/v0.2-weights/vit_b_16-laion400m_e32-55e67d44.pt\"),\n    laion2b_s34b_b88k=_pcfg(hf_hub='laion/CLIP-ViT-B-16-laion2B-s34B-b88K/'),\n)\n\n_EVAB16 = dict(\n    eva=_pcfg(hf_hub='QuanSun/EVA-CLIP/EVA02_B_psz14to16.pt'),\n    eva02=_pcfg(hf_hub='QuanSun/EVA-CLIP/EVA02_B_psz14to16.pt'),\n    eva_clip=_pcfg(hf_hub='QuanSun/EVA-CLIP/EVA02_CLIP_B_psz16_s8B.pt'),\n    eva02_clip=_pcfg(hf_hub='QuanSun/EVA-CLIP/EVA02_CLIP_B_psz16_s8B.pt'),\n)\n\n_VITB16_PLUS_240 = dict(\n    laion400m_e31=_pcfg(\n        \"https://github.com/mlfoundations/open_clip/releases/download/v0.2-weights/vit_b_16_plus_240-laion400m_e31-8fb26589.pt\"),\n    laion400m_e32=_pcfg(\n        \"https://github.com/mlfoundations/open_clip/releases/download/v0.2-weights/vit_b_16_plus_240-laion400m_e32-699c4b84.pt\"),\n)\n\n_VITL14 = dict(\n    openai=_pcfg(\n        \"https://openaipublic.azureedge.net/clip/models/b8cca3fd41ae0c99ba7e8951adf17d267cdb84cd88be6f7c2e0eca1737a03836/ViT-L-14.pt\"),\n    laion400m_e31=_pcfg(\n        \"https://github.com/mlfoundations/open_clip/releases/download/v0.2-weights/vit_l_14-laion400m_e31-69988bb6.pt\"),\n    laion400m_e32=_pcfg(\n        \"https://github.com/mlfoundations/open_clip/releases/download/v0.2-weights/vit_l_14-laion400m_e32-3d133497.pt\"),\n    laion2b_s32b_b82k=_pcfg(\n        hf_hub='laion/CLIP-ViT-L-14-laion2B-s32B-b82K/',\n        mean=(0.5, 0.5, 0.5), std=(0.5, 0.5, 0.5)),\n)\n\n_EVAL14 = dict(\n    eva=_pcfg(hf_hub='QuanSun/EVA-CLIP/EVA02_L_psz14.pt'),\n    eva02=_pcfg(hf_hub='QuanSun/EVA-CLIP/EVA02_L_psz14.pt'),\n    eva_clip=_pcfg(hf_hub='QuanSun/EVA-CLIP/EVA02_CLIP_L_psz14_s4B.pt'),\n    eva02_clip=_pcfg(hf_hub='QuanSun/EVA-CLIP/EVA02_CLIP_L_psz14_s4B.pt'),\n)\n\n_VITL14_336 = dict(\n    openai=_pcfg(\n        \"https://openaipublic.azureedge.net/clip/models/3035c92b350959924f9f00213499208652fc7ea050643e8b385c2dac08641f02/ViT-L-14-336px.pt\"),\n)\n\n_EVAL14_336 = dict(\n    eva_clip=_pcfg(hf_hub='QuanSun/EVA-CLIP/EVA02_CLIP_L_336_psz14_s6B.pt'),\n    eva02_clip=_pcfg(hf_hub='QuanSun/EVA-CLIP/EVA02_CLIP_L_336_psz14_s6B.pt'),\n    eva_clip_224to336=_pcfg(hf_hub='QuanSun/EVA-CLIP/EVA02_CLIP_L_psz14_224to336.pt'),\n    eva02_clip_224to336=_pcfg(hf_hub='QuanSun/EVA-CLIP/EVA02_CLIP_L_psz14_224to336.pt'),\n)\n\n_VITH14 = dict(\n    laion2b_s32b_b79k=_pcfg(hf_hub='laion/CLIP-ViT-H-14-laion2B-s32B-b79K/'),\n)\n\n_VITg14 = dict(\n    laion2b_s12b_b42k=_pcfg(hf_hub='laion/CLIP-ViT-g-14-laion2B-s12B-b42K/'),\n    laion2b_s34b_b88k=_pcfg(hf_hub='laion/CLIP-ViT-g-14-laion2B-s34B-b88K/'),\n)\n\n_EVAg14 = dict(\n    eva=_pcfg(hf_hub='QuanSun/EVA-CLIP/'),\n    eva01=_pcfg(hf_hub='QuanSun/EVA-CLIP/EVA01_g_psz14.pt'),\n    eva_clip=_pcfg(hf_hub='QuanSun/EVA-CLIP/EVA01_CLIP_g_14_psz14_s11B.pt'),\n    eva01_clip=_pcfg(hf_hub='QuanSun/EVA-CLIP/EVA01_CLIP_g_14_psz14_s11B.pt'),\n)\n\n_EVAg14_PLUS = dict(\n    eva=_pcfg(hf_hub='QuanSun/EVA-CLIP/'),\n    eva01=_pcfg(hf_hub='QuanSun/EVA-CLIP/EVA01_g_psz14.pt'),\n    eva_clip=_pcfg(hf_hub='QuanSun/EVA-CLIP/EVA01_CLIP_g_14_plus_psz14_s11B.pt'),\n    eva01_clip=_pcfg(hf_hub='QuanSun/EVA-CLIP/EVA01_CLIP_g_14_plus_psz14_s11B.pt'),\n)\n\n_VITbigG14 = dict(\n    laion2b_s39b_b160k=_pcfg(hf_hub='laion/CLIP-ViT-bigG-14-laion2B-39B-b160k/'),\n)\n\n_EVAbigE14 = dict(\n    eva=_pcfg(hf_hub='QuanSun/EVA-CLIP/EVA02_E_psz14.pt'),\n    eva02=_pcfg(hf_hub='QuanSun/EVA-CLIP/EVA02_E_psz14.pt'),\n    eva_clip=_pcfg(hf_hub='QuanSun/EVA-CLIP/EVA02_CLIP_E_psz14_s4B.pt'),\n    eva02_clip=_pcfg(hf_hub='QuanSun/EVA-CLIP/EVA02_CLIP_E_psz14_s4B.pt'),\n)\n\n_EVAbigE14_PLUS = dict(\n    eva=_pcfg(hf_hub='QuanSun/EVA-CLIP/EVA02_E_psz14.pt'),\n    eva02=_pcfg(hf_hub='QuanSun/EVA-CLIP/EVA02_E_psz14.pt'),\n    eva_clip=_pcfg(hf_hub='QuanSun/EVA-CLIP/EVA02_CLIP_E_psz14_plus_s9B.pt'),\n    eva02_clip=_pcfg(hf_hub='QuanSun/EVA-CLIP/EVA02_CLIP_E_psz14_plus_s9B.pt'),\n)\n\n\n_PRETRAINED = {\n    # \"ViT-B-32\": _VITB32,\n    \"OpenaiCLIP-B-32\": _VITB32,\n    \"OpenCLIP-B-32\": _VITB32,\n\n    # \"ViT-B-32-quickgelu\": _VITB32_quickgelu,\n    \"OpenaiCLIP-B-32-quickgelu\": _VITB32_quickgelu,\n    \"OpenCLIP-B-32-quickgelu\": _VITB32_quickgelu,\n\n    # \"ViT-B-16\": _VITB16,\n    \"OpenaiCLIP-B-16\": _VITB16,\n    \"OpenCLIP-B-16\": _VITB16,\n\n    \"EVA02-B-16\": _EVAB16,\n    \"EVA02-CLIP-B-16\": _EVAB16,\n\n    # \"ViT-B-16-plus-240\": _VITB16_PLUS_240,\n    \"OpenCLIP-B-16-plus-240\": _VITB16_PLUS_240,\n\n    # \"ViT-L-14\": _VITL14,\n    \"OpenaiCLIP-L-14\": _VITL14,\n    \"OpenCLIP-L-14\": _VITL14,\n\n    \"EVA02-L-14\": _EVAL14,\n    \"EVA02-CLIP-L-14\": _EVAL14,\n\n    # \"ViT-L-14-336\": _VITL14_336,\n    \"OpenaiCLIP-L-14-336\": _VITL14_336,\n\n    \"EVA02-CLIP-L-14-336\": _EVAL14_336,\n\n    # \"ViT-H-14\": _VITH14,\n    # \"ViT-g-14\": _VITg14,\n    \"OpenCLIP-H-14\": _VITH14,\n    \"OpenCLIP-g-14\": _VITg14,\n\n    \"EVA01-CLIP-g-14\": _EVAg14,\n    \"EVA01-CLIP-g-14-plus\": _EVAg14_PLUS,\n\n    # \"ViT-bigG-14\": _VITbigG14,\n    \"OpenCLIP-bigG-14\": _VITbigG14,\n\n    \"EVA02-CLIP-bigE-14\": _EVAbigE14,\n    \"EVA02-CLIP-bigE-14-plus\": _EVAbigE14_PLUS,\n}\n\n\ndef _clean_tag(tag: str):\n    # normalize pretrained tags\n    return tag.lower().replace('-', '_')\n\n\ndef list_pretrained(as_str: bool = False):\n    \"\"\" returns list of pretrained models\n    Returns a tuple (model_name, pretrain_tag) by default or 'name:tag' if as_str == True\n    \"\"\"\n    return [':'.join([k, t]) if as_str else (k, t) for k in _PRETRAINED.keys() for t in _PRETRAINED[k].keys()]\n\n\ndef list_pretrained_models_by_tag(tag: str):\n    \"\"\" return all models having the specified pretrain tag \"\"\"\n    models = []\n    tag = _clean_tag(tag)\n    for k in _PRETRAINED.keys():\n        if tag in _PRETRAINED[k]:\n            models.append(k)\n    return models\n\n\ndef list_pretrained_tags_by_model(model: str):\n    \"\"\" return all pretrain tags for the specified model architecture \"\"\"\n    tags = []\n    if model in _PRETRAINED:\n        tags.extend(_PRETRAINED[model].keys())\n    return tags\n\n\ndef is_pretrained_cfg(model: str, tag: str):\n    if model not in _PRETRAINED:\n        return False\n    return _clean_tag(tag) in _PRETRAINED[model]\n\n\ndef get_pretrained_cfg(model: str, tag: str):\n    if model not in _PRETRAINED:\n        return {}\n    model_pretrained = _PRETRAINED[model]\n    return model_pretrained.get(_clean_tag(tag), {})\n\n\ndef get_pretrained_url(model: str, tag: str):\n    cfg = get_pretrained_cfg(model, _clean_tag(tag))\n    return cfg.get('url', '')\n\n\ndef download_pretrained_from_url(\n        url: str,\n        cache_dir: Union[str, None] = None,\n):\n    if not cache_dir:\n        cache_dir = os.path.expanduser(\"~/.cache/clip\")\n    os.makedirs(cache_dir, exist_ok=True)\n    filename = os.path.basename(url)\n\n    if 'openaipublic' in url:\n        expected_sha256 = url.split(\"/\")[-2]\n    elif 'mlfoundations' in url:\n        expected_sha256 = os.path.splitext(filename)[0].split(\"-\")[-1]\n    else:\n        expected_sha256 = ''\n\n    download_target = os.path.join(cache_dir, filename)\n\n    if os.path.exists(download_target) and not os.path.isfile(download_target):\n        raise RuntimeError(f\"{download_target} exists and is not a regular file\")\n\n    if os.path.isfile(download_target):\n        if expected_sha256:\n            if hashlib.sha256(open(download_target, \"rb\").read()).hexdigest().startswith(expected_sha256):\n                return download_target\n            else:\n                warnings.warn(f\"{download_target} exists, but the SHA256 checksum does not match; re-downloading the file\")\n        else:\n            return download_target\n\n    with urllib.request.urlopen(url) as source, open(download_target, \"wb\") as output:\n        with tqdm(total=int(source.headers.get(\"Content-Length\")), ncols=80, unit='iB', unit_scale=True) as loop:\n            while True:\n                buffer = source.read(8192)\n                if not buffer:\n                    break\n\n                output.write(buffer)\n                loop.update(len(buffer))\n\n    if expected_sha256 and not hashlib.sha256(open(download_target, \"rb\").read()).hexdigest().startswith(expected_sha256):\n        raise RuntimeError(\"Model has been downloaded but the SHA256 checksum does not not match\")\n\n    return download_target\n\n\ndef has_hf_hub(necessary=False):\n    if not _has_hf_hub and necessary:\n        # if no HF Hub module installed, and it is necessary to continue, raise error\n        raise RuntimeError(\n            'Hugging Face hub model specified but package not installed. Run `pip install huggingface_hub`.')\n    return _has_hf_hub\n\n\ndef download_pretrained_from_hf(\n        model_id: str,\n        filename: str = 'open_clip_pytorch_model.bin',\n        revision=None,\n        cache_dir: Union[str, None] = None,\n):\n    has_hf_hub(True)\n    cached_file = hf_hub_download(model_id, filename, revision=revision, cache_dir=cache_dir)\n    return cached_file\n\n\ndef download_pretrained(\n        cfg: Dict,\n        force_hf_hub: bool = False,\n        cache_dir: Union[str, None] = None,\n):\n    target = ''\n    if not cfg:\n        return target\n\n    download_url = cfg.get('url', '')\n    download_hf_hub = cfg.get('hf_hub', '')\n    if download_hf_hub and force_hf_hub:\n        # use HF hub even if url exists\n        download_url = ''\n\n    if download_url:\n        target = download_pretrained_from_url(download_url, cache_dir=cache_dir)\n    elif download_hf_hub:\n        has_hf_hub(True)\n        # we assume the hf_hub entries in pretrained config combine model_id + filename in\n        # 'org/model_name/filename.pt' form. To specify just the model id w/o filename and\n        # use 'open_clip_pytorch_model.bin' default, there must be a trailing slash 'org/model_name/'.\n        model_id, filename = os.path.split(download_hf_hub)\n        if filename:\n            target = download_pretrained_from_hf(model_id, filename=filename, cache_dir=cache_dir)\n        else:\n            target = download_pretrained_from_hf(model_id, cache_dir=cache_dir)\n\n    return target\n"
  },
  {
    "path": "scripts/pulid/eva_clip/rope.py",
    "content": "from math import pi\nimport torch\nfrom torch import nn\nfrom einops import rearrange, repeat\nimport logging\n\ndef broadcat(tensors, dim = -1):\n    num_tensors = len(tensors)\n    shape_lens = set(list(map(lambda t: len(t.shape), tensors)))\n    assert len(shape_lens) == 1, 'tensors must all have the same number of dimensions'\n    shape_len = list(shape_lens)[0]\n    dim = (dim + shape_len) if dim < 0 else dim\n    dims = list(zip(*map(lambda t: list(t.shape), tensors)))\n    expandable_dims = [(i, val) for i, val in enumerate(dims) if i != dim]\n    assert all([*map(lambda t: len(set(t[1])) <= 2, expandable_dims)]), 'invalid dimensions for broadcastable concatentation'\n    max_dims = list(map(lambda t: (t[0], max(t[1])), expandable_dims))\n    expanded_dims = list(map(lambda t: (t[0], (t[1],) * num_tensors), max_dims))\n    expanded_dims.insert(dim, (dim, dims[dim]))\n    expandable_shapes = list(zip(*map(lambda t: t[1], expanded_dims)))\n    tensors = list(map(lambda t: t[0].expand(*t[1]), zip(tensors, expandable_shapes)))\n    return torch.cat(tensors, dim = dim)\n\ndef rotate_half(x):\n    x = rearrange(x, '... (d r) -> ... d r', r = 2)\n    x1, x2 = x.unbind(dim = -1)\n    x = torch.stack((-x2, x1), dim = -1)\n    return rearrange(x, '... d r -> ... (d r)')\n\n\nclass VisionRotaryEmbedding(nn.Module):\n    def __init__(\n        self,\n        dim,\n        pt_seq_len,\n        ft_seq_len=None,\n        custom_freqs = None,\n        freqs_for = 'lang',\n        theta = 10000,\n        max_freq = 10,\n        num_freqs = 1,\n    ):\n        super().__init__()\n        if custom_freqs:\n            freqs = custom_freqs\n        elif freqs_for == 'lang':\n            freqs = 1. / (theta ** (torch.arange(0, dim, 2)[:(dim // 2)].float() / dim))\n        elif freqs_for == 'pixel':\n            freqs = torch.linspace(1., max_freq / 2, dim // 2) * pi\n        elif freqs_for == 'constant':\n            freqs = torch.ones(num_freqs).float()\n        else:\n            raise ValueError(f'unknown modality {freqs_for}')\n\n        if ft_seq_len is None: ft_seq_len = pt_seq_len\n        t = torch.arange(ft_seq_len) / ft_seq_len * pt_seq_len\n\n        freqs_h = torch.einsum('..., f -> ... f', t, freqs)\n        freqs_h = repeat(freqs_h, '... n -> ... (n r)', r = 2)\n\n        freqs_w = torch.einsum('..., f -> ... f', t, freqs)\n        freqs_w = repeat(freqs_w, '... n -> ... (n r)', r = 2)\n\n        freqs = broadcat((freqs_h[:, None, :], freqs_w[None, :, :]), dim = -1)\n\n        self.register_buffer(\"freqs_cos\", freqs.cos())\n        self.register_buffer(\"freqs_sin\", freqs.sin())\n\n        logging.info(f'Shape of rope freq: {self.freqs_cos.shape}')\n\n    def forward(self, t, start_index = 0):\n        rot_dim = self.freqs_cos.shape[-1]\n        end_index = start_index + rot_dim\n        assert rot_dim <= t.shape[-1], f'feature dimension {t.shape[-1]} is not of sufficient size to rotate in all the positions {rot_dim}'\n        t_left, t, t_right = t[..., :start_index], t[..., start_index:end_index], t[..., end_index:]\n        t = (t * self.freqs_cos) + (rotate_half(t) * self.freqs_sin)\n\n        return torch.cat((t_left, t, t_right), dim = -1)\n\nclass VisionRotaryEmbeddingFast(nn.Module):\n    def __init__(\n        self,\n        dim,\n        pt_seq_len,\n        ft_seq_len=None,\n        custom_freqs = None,\n        freqs_for = 'lang',\n        theta = 10000,\n        max_freq = 10,\n        num_freqs = 1,\n        patch_dropout = 0.\n    ):\n        super().__init__()\n        if custom_freqs:\n            freqs = custom_freqs\n        elif freqs_for == 'lang':\n            freqs = 1. / (theta ** (torch.arange(0, dim, 2)[:(dim // 2)].float() / dim))\n        elif freqs_for == 'pixel':\n            freqs = torch.linspace(1., max_freq / 2, dim // 2) * pi\n        elif freqs_for == 'constant':\n            freqs = torch.ones(num_freqs).float()\n        else:\n            raise ValueError(f'unknown modality {freqs_for}')\n\n        if ft_seq_len is None: ft_seq_len = pt_seq_len\n        t = torch.arange(ft_seq_len) / ft_seq_len * pt_seq_len\n\n        freqs = torch.einsum('..., f -> ... f', t, freqs)\n        freqs = repeat(freqs, '... n -> ... (n r)', r = 2)\n        freqs = broadcat((freqs[:, None, :], freqs[None, :, :]), dim = -1)\n\n        freqs_cos = freqs.cos().view(-1, freqs.shape[-1])\n        freqs_sin = freqs.sin().view(-1, freqs.shape[-1])\n\n        self.patch_dropout = patch_dropout\n\n        self.register_buffer(\"freqs_cos\", freqs_cos)\n        self.register_buffer(\"freqs_sin\", freqs_sin)\n\n        logging.info(f'Shape of rope freq: {self.freqs_cos.shape}')\n\n    def forward(self, t, patch_indices_keep=None):\n        if patch_indices_keep is not None:\n            batch = t.size()[0]\n            batch_indices = torch.arange(batch)\n            batch_indices = batch_indices[..., None]\n\n            freqs_cos = repeat(self.freqs_cos, 'i j -> n i m j', n=t.shape[0], m=t.shape[1])\n            freqs_sin = repeat(self.freqs_sin, 'i j -> n i m j', n=t.shape[0], m=t.shape[1])\n\n            freqs_cos = freqs_cos[batch_indices, patch_indices_keep]\n            freqs_cos = rearrange(freqs_cos, 'n i m j -> n m i j')\n            freqs_sin = freqs_sin[batch_indices, patch_indices_keep]\n            freqs_sin = rearrange(freqs_sin, 'n i m j -> n m i j')\n\n            return  t * freqs_cos + rotate_half(t) * freqs_sin\n\n        return  t * self.freqs_cos + rotate_half(t) * self.freqs_sin\n"
  },
  {
    "path": "scripts/pulid/eva_clip/timm_model.py",
    "content": "\"\"\" timm model adapter\n\nWraps timm (https://github.com/rwightman/pytorch-image-models) models for use as a vision tower in CLIP model.\n\"\"\"\nimport logging\nfrom collections import OrderedDict\n\nimport torch\nimport torch.nn as nn\n\ntry:\n    import timm\n    from timm.models.layers import Mlp, to_2tuple\n    try:\n        # old timm imports < 0.8.1\n        from timm.models.layers.attention_pool2d import RotAttentionPool2d\n        from timm.models.layers.attention_pool2d import AttentionPool2d as AbsAttentionPool2d\n    except ImportError:\n        # new timm imports >= 0.8.1\n        from timm.layers import RotAttentionPool2d\n        from timm.layers import AttentionPool2d as AbsAttentionPool2d\nexcept ImportError:\n    timm = None\n\nfrom .utils import freeze_batch_norm_2d\n\n\nclass TimmModel(nn.Module):\n    \"\"\" timm model adapter\n    # FIXME this adapter is a work in progress, may change in ways that break weight compat\n    \"\"\"\n\n    def __init__(\n            self,\n            model_name,\n            embed_dim,\n            image_size=224,\n            pool='avg',\n            proj='linear',\n            proj_bias=False,\n            drop=0.,\n            pretrained=False):\n        super().__init__()\n\n        self.image_size = to_2tuple(image_size)\n        self.trunk = timm.create_model(model_name, pretrained=pretrained)\n        feat_size = self.trunk.default_cfg.get('pool_size', None)\n        feature_ndim = 1 if not feat_size else 2\n        if pool in ('abs_attn', 'rot_attn'):\n            assert feature_ndim == 2\n            # if attn pooling used, remove both classifier and default pool\n            self.trunk.reset_classifier(0, global_pool='')\n        else:\n            # reset global pool if pool config set, otherwise leave as network default\n            reset_kwargs = dict(global_pool=pool) if pool else {}\n            self.trunk.reset_classifier(0, **reset_kwargs)\n        prev_chs = self.trunk.num_features\n\n        head_layers = OrderedDict()\n        if pool == 'abs_attn':\n            head_layers['pool'] = AbsAttentionPool2d(prev_chs, feat_size=feat_size, out_features=embed_dim)\n            prev_chs = embed_dim\n        elif pool == 'rot_attn':\n            head_layers['pool'] = RotAttentionPool2d(prev_chs, out_features=embed_dim)\n            prev_chs = embed_dim\n        else:\n            assert proj, 'projection layer needed if non-attention pooling is used.'\n\n        # NOTE attention pool ends with a projection layer, so proj should usually be set to '' if such pooling is used\n        if proj == 'linear':\n            head_layers['drop'] = nn.Dropout(drop)\n            head_layers['proj'] = nn.Linear(prev_chs, embed_dim, bias=proj_bias)\n        elif proj == 'mlp':\n            head_layers['mlp'] = Mlp(prev_chs, 2 * embed_dim, embed_dim, drop=drop, bias=(True, proj_bias))\n\n        self.head = nn.Sequential(head_layers)\n\n    def lock(self, unlocked_groups=0, freeze_bn_stats=False):\n        \"\"\" lock modules\n        Args:\n            unlocked_groups (int): leave last n layer groups unlocked (default: 0)\n        \"\"\"\n        if not unlocked_groups:\n            # lock full model\n            for param in self.trunk.parameters():\n                param.requires_grad = False\n            if freeze_bn_stats:\n                freeze_batch_norm_2d(self.trunk)\n        else:\n            # NOTE: partial freeze requires latest timm (master) branch and is subject to change\n            try:\n                # FIXME import here until API stable and in an official release\n                from timm.models.helpers import group_parameters, group_modules\n            except ImportError:\n                raise RuntimeError('Please install latest timm `pip install git+https://github.com/rwightman/pytorch-image-models`')\n            matcher = self.trunk.group_matcher()\n            gparams = group_parameters(self.trunk, matcher)\n            max_layer_id = max(gparams.keys())\n            max_layer_id = max_layer_id - unlocked_groups\n            for group_idx in range(max_layer_id + 1):\n                group = gparams[group_idx]\n                for param in group:\n                    self.trunk.get_parameter(param).requires_grad = False\n            if freeze_bn_stats:\n                gmodules = group_modules(self.trunk, matcher, reverse=True)\n                gmodules = {k for k, v in gmodules.items() if v <= max_layer_id}\n                freeze_batch_norm_2d(self.trunk, gmodules)\n\n    @torch.jit.ignore\n    def set_grad_checkpointing(self, enable=True):\n        try:\n            self.trunk.set_grad_checkpointing(enable)\n        except Exception as e:\n            logging.warning('grad checkpointing not supported for this timm image tower, continuing without...')\n\n    def forward(self, x):\n        x = self.trunk(x)\n        x = self.head(x)\n        return x\n"
  },
  {
    "path": "scripts/pulid/eva_clip/tokenizer.py",
    "content": "\"\"\" CLIP tokenizer\n\nCopied from https://github.com/openai/CLIP. Originally MIT License, Copyright (c) 2021 OpenAI.\n\"\"\"\nimport gzip\nimport html\nimport os\nfrom functools import lru_cache\nfrom typing import Union, List\n\nimport ftfy\nimport regex as re\nimport torch\n\n# https://stackoverflow.com/q/62691279\nimport os\nos.environ[\"TOKENIZERS_PARALLELISM\"] = \"false\"\n\n\n@lru_cache()\ndef default_bpe():\n    return os.path.join(os.path.dirname(os.path.abspath(__file__)), \"bpe_simple_vocab_16e6.txt.gz\")\n\n\n@lru_cache()\ndef bytes_to_unicode():\n    \"\"\"\n    Returns list of utf-8 byte and a corresponding list of unicode strings.\n    The reversible bpe codes work on unicode strings.\n    This means you need a large # of unicode characters in your vocab if you want to avoid UNKs.\n    When you're at something like a 10B token dataset you end up needing around 5K for decent coverage.\n    This is a signficant percentage of your normal, say, 32K bpe vocab.\n    To avoid that, we want lookup tables between utf-8 bytes and unicode strings.\n    And avoids mapping to whitespace/control characters the bpe code barfs on.\n    \"\"\"\n    bs = list(range(ord(\"!\"), ord(\"~\")+1))+list(range(ord(\"¡\"), ord(\"¬\")+1))+list(range(ord(\"®\"), ord(\"ÿ\")+1))\n    cs = bs[:]\n    n = 0\n    for b in range(2**8):\n        if b not in bs:\n            bs.append(b)\n            cs.append(2**8+n)\n            n += 1\n    cs = [chr(n) for n in cs]\n    return dict(zip(bs, cs))\n\n\ndef get_pairs(word):\n    \"\"\"Return set of symbol pairs in a word.\n    Word is represented as tuple of symbols (symbols being variable-length strings).\n    \"\"\"\n    pairs = set()\n    prev_char = word[0]\n    for char in word[1:]:\n        pairs.add((prev_char, char))\n        prev_char = char\n    return pairs\n\n\ndef basic_clean(text):\n    text = ftfy.fix_text(text)\n    text = html.unescape(html.unescape(text))\n    return text.strip()\n\n\ndef whitespace_clean(text):\n    text = re.sub(r'\\s+', ' ', text)\n    text = text.strip()\n    return text\n\n\nclass SimpleTokenizer(object):\n    def __init__(self, bpe_path: str = default_bpe(), special_tokens=None):\n        self.byte_encoder = bytes_to_unicode()\n        self.byte_decoder = {v: k for k, v in self.byte_encoder.items()}\n        merges = gzip.open(bpe_path).read().decode(\"utf-8\").split('\\n')\n        merges = merges[1:49152-256-2+1]\n        merges = [tuple(merge.split()) for merge in merges]\n        vocab = list(bytes_to_unicode().values())\n        vocab = vocab + [v+'</w>' for v in vocab]\n        for merge in merges:\n            vocab.append(''.join(merge))\n        if not special_tokens:\n            special_tokens = ['<start_of_text>', '<end_of_text>']\n        else:\n            special_tokens = ['<start_of_text>', '<end_of_text>'] + special_tokens\n        vocab.extend(special_tokens)\n        self.encoder = dict(zip(vocab, range(len(vocab))))\n        self.decoder = {v: k for k, v in self.encoder.items()}\n        self.bpe_ranks = dict(zip(merges, range(len(merges))))\n        self.cache = {t:t for t in special_tokens}\n        special = \"|\".join(special_tokens)\n        self.pat = re.compile(special + r\"\"\"|'s|'t|'re|'ve|'m|'ll|'d|[\\p{L}]+|[\\p{N}]|[^\\s\\p{L}\\p{N}]+\"\"\", re.IGNORECASE)\n\n        self.vocab_size = len(self.encoder)\n        self.all_special_ids = [self.encoder[t] for t in special_tokens]\n\n    def bpe(self, token):\n        if token in self.cache:\n            return self.cache[token]\n        word = tuple(token[:-1]) + ( token[-1] + '</w>',)\n        pairs = get_pairs(word)\n\n        if not pairs:\n            return token+'</w>'\n\n        while True:\n            bigram = min(pairs, key = lambda pair: self.bpe_ranks.get(pair, float('inf')))\n            if bigram not in self.bpe_ranks:\n                break\n            first, second = bigram\n            new_word = []\n            i = 0\n            while i < len(word):\n                try:\n                    j = word.index(first, i)\n                    new_word.extend(word[i:j])\n                    i = j\n                except Exception:\n                    new_word.extend(word[i:])\n                    break\n\n                if word[i] == first and i < len(word)-1 and word[i+1] == second:\n                    new_word.append(first+second)\n                    i += 2\n                else:\n                    new_word.append(word[i])\n                    i += 1\n            new_word = tuple(new_word)\n            word = new_word\n            if len(word) == 1:\n                break\n            else:\n                pairs = get_pairs(word)\n        word = ' '.join(word)\n        self.cache[token] = word\n        return word\n\n    def encode(self, text):\n        bpe_tokens = []\n        text = whitespace_clean(basic_clean(text)).lower()\n        for token in re.findall(self.pat, text):\n            token = ''.join(self.byte_encoder[b] for b in token.encode('utf-8'))\n            bpe_tokens.extend(self.encoder[bpe_token] for bpe_token in self.bpe(token).split(' '))\n        return bpe_tokens\n\n    def decode(self, tokens):\n        text = ''.join([self.decoder[token] for token in tokens])\n        text = bytearray([self.byte_decoder[c] for c in text]).decode('utf-8', errors=\"replace\").replace('</w>', ' ')\n        return text\n\n\n_tokenizer = SimpleTokenizer()\n\n\ndef tokenize(texts: Union[str, List[str]], context_length: int = 77) -> torch.LongTensor:\n    \"\"\"\n    Returns the tokenized representation of given input string(s)\n\n    Parameters\n    ----------\n    texts : Union[str, List[str]]\n        An input string or a list of input strings to tokenize\n    context_length : int\n        The context length to use; all CLIP models use 77 as the context length\n\n    Returns\n    -------\n    A two-dimensional tensor containing the resulting tokens, shape = [number of input strings, context_length]\n    \"\"\"\n    if isinstance(texts, str):\n        texts = [texts]\n\n    sot_token = _tokenizer.encoder[\"<start_of_text>\"]\n    eot_token = _tokenizer.encoder[\"<end_of_text>\"]\n    all_tokens = [[sot_token] + _tokenizer.encode(text) + [eot_token] for text in texts]\n    result = torch.zeros(len(all_tokens), context_length, dtype=torch.long)\n\n    for i, tokens in enumerate(all_tokens):\n        if len(tokens) > context_length:\n            tokens = tokens[:context_length]  # Truncate\n            tokens[-1] = eot_token\n        result[i, :len(tokens)] = torch.tensor(tokens)\n\n    return result\n\n\nclass HFTokenizer:\n    \"HuggingFace tokenizer wrapper\"\n    def __init__(self, tokenizer_name:str):\n        from transformers import AutoTokenizer\n        self.tokenizer = AutoTokenizer.from_pretrained(tokenizer_name)\n\n    def __call__(self, texts:Union[str, List[str]], context_length:int=77) -> torch.Tensor:\n        # same cleaning as for default tokenizer, except lowercasing\n        # adding lower (for case-sensitive tokenizers) will make it more robust but less sensitive to nuance\n        if isinstance(texts, str):\n            texts = [texts]\n        texts = [whitespace_clean(basic_clean(text)) for text in texts]\n        input_ids = self.tokenizer(texts, return_tensors='pt', max_length=context_length, padding='max_length', truncation=True).input_ids\n        return input_ids\n"
  },
  {
    "path": "scripts/pulid/eva_clip/transform.py",
    "content": "from typing import Optional, Tuple\n\nimport torch\nimport torch.nn as nn\nimport torchvision.transforms.functional as F\n\nfrom torchvision.transforms import Normalize, Compose, RandomResizedCrop, InterpolationMode, ToTensor, Resize, \\\n    CenterCrop\n\nfrom .constants import OPENAI_DATASET_MEAN, OPENAI_DATASET_STD\n\n\nclass ResizeMaxSize(nn.Module):\n\n    def __init__(self, max_size, interpolation=InterpolationMode.BICUBIC, fn='max', fill=0):\n        super().__init__()\n        if not isinstance(max_size, int):\n            raise TypeError(f\"Size should be int. Got {type(max_size)}\")\n        self.max_size = max_size\n        self.interpolation = interpolation\n        self.fn = min if fn == 'min' else min\n        self.fill = fill\n\n    def forward(self, img):\n        if isinstance(img, torch.Tensor):\n            height, width = img.shape[:2]\n        else:\n            width, height = img.size\n        scale = self.max_size / float(max(height, width))\n        if scale != 1.0:\n            new_size = tuple(round(dim * scale) for dim in (height, width))\n            img = F.resize(img, new_size, self.interpolation)\n            pad_h = self.max_size - new_size[0]\n            pad_w = self.max_size - new_size[1]\n            img = F.pad(img, padding=[pad_w//2, pad_h//2, pad_w - pad_w//2, pad_h - pad_h//2], fill=self.fill)\n        return img\n\n\ndef _convert_to_rgb(image):\n    return image.convert('RGB')\n\n\n# class CatGen(nn.Module):\n#     def __init__(self, num=4):\n#         self.num = num\n#     def mixgen_batch(image, text):\n#         batch_size = image.shape[0]\n#         index = np.random.permutation(batch_size)\n\n#         cat_images = []\n#         for i in range(batch_size):\n#             # image mixup\n#             image[i,:] = lam * image[i,:] + (1 - lam) * image[index[i],:]\n#             # text concat\n#             text[i] = tokenizer((str(text[i]) + \" \" + str(text[index[i]])))[0]\n#         text = torch.stack(text)\n#         return image, text\n\n\ndef image_transform(\n        image_size: int,\n        is_train: bool,\n        mean: Optional[Tuple[float, ...]] = None,\n        std: Optional[Tuple[float, ...]] = None,\n        resize_longest_max: bool = False,\n        fill_color: int = 0,\n):\n    mean = mean or OPENAI_DATASET_MEAN\n    if not isinstance(mean, (list, tuple)):\n        mean = (mean,) * 3\n\n    std = std or OPENAI_DATASET_STD\n    if not isinstance(std, (list, tuple)):\n        std = (std,) * 3\n\n    if isinstance(image_size, (list, tuple)) and image_size[0] == image_size[1]:\n        # for square size, pass size as int so that Resize() uses aspect preserving shortest edge\n        image_size = image_size[0]\n\n    normalize = Normalize(mean=mean, std=std)\n    if is_train:\n        return Compose([\n            RandomResizedCrop(image_size, scale=(0.9, 1.0), interpolation=InterpolationMode.BICUBIC),\n            _convert_to_rgb,\n            ToTensor(),\n            normalize,\n        ])\n    else:\n        if resize_longest_max:\n            transforms = [\n                ResizeMaxSize(image_size, fill=fill_color)\n            ]\n        else:\n            transforms = [\n                Resize(image_size, interpolation=InterpolationMode.BICUBIC),\n                CenterCrop(image_size),\n            ]\n        transforms.extend([\n            _convert_to_rgb,\n            ToTensor(),\n            normalize,\n        ])\n        return Compose(transforms)\n"
  },
  {
    "path": "scripts/pulid/eva_clip/transformer.py",
    "content": "import os\nimport logging\nfrom collections import OrderedDict\nimport math\nfrom typing import Callable, Optional, Sequence\nimport numpy as np\nimport torch\nfrom torch import nn\nfrom torch.nn import functional as F\n\ntry:\n    from timm.models.layers import trunc_normal_\nexcept Exception:\n    from timm.layers import trunc_normal_\n\nfrom .rope import VisionRotaryEmbedding, VisionRotaryEmbeddingFast\nfrom .utils import to_2tuple\n\n\nclass LayerNormFp32(nn.LayerNorm):\n    \"\"\"Subclass torch's LayerNorm to handle fp16 (by casting to float32 and back).\"\"\"\n    def __init__(self, *args, **kwargs):\n        super().__init__(*args, **kwargs)\n\n    def forward(self, x: torch.Tensor):\n        output = F.layer_norm(\n            x.float(),\n            self.normalized_shape,\n            self.weight.float() if self.weight is not None else None,\n            self.bias.float() if self.bias is not None else None,\n            self.eps,\n        )\n        return output.type_as(x)\n\n\nclass LayerNorm(nn.LayerNorm):\n    \"\"\"Subclass torch's LayerNorm (with cast back to input dtype).\"\"\"\n\n    def forward(self, x: torch.Tensor):\n        orig_type = x.dtype\n        x = F.layer_norm(x, self.normalized_shape, self.weight, self.bias, self.eps)\n        return x.to(orig_type)\n\nclass QuickGELU(nn.Module):\n    # NOTE This is slower than nn.GELU or nn.SiLU and uses more GPU memory\n    def forward(self, x: torch.Tensor):\n        return x * torch.sigmoid(1.702 * x)\n\n\nclass LayerScale(nn.Module):\n    def __init__(self, dim, init_values=1e-5, inplace=False):\n        super().__init__()\n        self.inplace = inplace\n        self.gamma = nn.Parameter(init_values * torch.ones(dim))\n\n    def forward(self, x):\n        return x.mul_(self.gamma) if self.inplace else x * self.gamma\n\nclass PatchDropout(nn.Module):\n    \"\"\"\n    https://arxiv.org/abs/2212.00794\n    \"\"\"\n\n    def __init__(self, prob, exclude_first_token=True):\n        super().__init__()\n        assert 0 <= prob < 1.\n        self.prob = prob\n        self.exclude_first_token = exclude_first_token  # exclude CLS token\n        logging.info(f\"os.getenv('RoPE')={os.getenv('RoPE')}\")\n\n    def forward(self, x):\n        if not self.training or self.prob == 0.:\n            return x\n\n        if self.exclude_first_token:\n            cls_tokens, x = x[:, :1], x[:, 1:]\n        else:\n            cls_tokens = torch.jit.annotate(torch.Tensor, x[:, :1])\n\n        batch = x.size()[0]\n        num_tokens = x.size()[1]\n\n        batch_indices = torch.arange(batch)\n        batch_indices = batch_indices[..., None]\n\n        keep_prob = 1 - self.prob\n        num_patches_keep = max(1, int(num_tokens * keep_prob))\n\n        rand = torch.randn(batch, num_tokens)\n        patch_indices_keep = rand.topk(num_patches_keep, dim=-1).indices\n\n        x = x[batch_indices, patch_indices_keep]\n\n        if self.exclude_first_token:\n            x = torch.cat((cls_tokens, x), dim=1)\n\n        if self.training and os.getenv('RoPE') == '1':\n            return x, patch_indices_keep\n\n        return x\n\n\ndef _in_projection_packed(\n    q: torch.Tensor,\n    k: torch.Tensor,\n    v: torch.Tensor,\n    w: torch.Tensor,\n    b: Optional[torch.Tensor] = None,\n    ):\n    \"\"\"\n    https://github.com/pytorch/pytorch/blob/db2a237763eb8693a20788be94f8c192e762baa8/torch/nn/functional.py#L4726\n    \"\"\"\n    E = q.size(-1)\n    if k is v:\n        if q is k:\n            # self-attention\n            return F.linear(q, w, b).chunk(3, dim=-1)\n        else:\n            # encoder-decoder attention\n            w_q, w_kv = w.split([E, E * 2])\n            if b is None:\n                b_q = b_kv = None\n            else:\n                b_q, b_kv = b.split([E, E * 2])\n            return (F.linear(q, w_q, b_q),) + F.linear(k, w_kv, b_kv).chunk(2, dim=-1)\n    else:\n        w_q, w_k, w_v = w.chunk(3)\n        if b is None:\n            b_q = b_k = b_v = None\n        else:\n            b_q, b_k, b_v = b.chunk(3)\n        return F.linear(q, w_q, b_q), F.linear(k, w_k, b_k), F.linear(v, w_v, b_v)\n\nclass Attention(nn.Module):\n    def __init__(\n            self,\n            dim,\n            num_heads=8,\n            qkv_bias=True,\n            scaled_cosine=False,\n            scale_heads=False,\n            logit_scale_max=math.log(1. / 0.01),\n            attn_drop=0.,\n            proj_drop=0.,\n            xattn=False,\n            rope=False\n    ):\n        super().__init__()\n        self.scaled_cosine = scaled_cosine\n        self.scale_heads = scale_heads\n        assert dim % num_heads == 0, 'dim should be divisible by num_heads'\n        self.num_heads = num_heads\n        self.head_dim = dim // num_heads\n        self.scale = self.head_dim ** -0.5\n        self.logit_scale_max = logit_scale_max\n\n        # keeping in_proj in this form (instead of nn.Linear) to match weight scheme of original\n        self.in_proj_weight = nn.Parameter(torch.randn((dim * 3, dim)) * self.scale)\n        if qkv_bias:\n            self.in_proj_bias = nn.Parameter(torch.zeros(dim * 3))\n        else:\n            self.in_proj_bias = None\n\n        if self.scaled_cosine:\n            self.logit_scale = nn.Parameter(torch.log(10 * torch.ones((num_heads, 1, 1))))\n        else:\n            self.logit_scale = None\n        self.attn_drop = nn.Dropout(attn_drop)\n        if self.scale_heads:\n            self.head_scale = nn.Parameter(torch.ones((num_heads, 1, 1)))\n        else:\n            self.head_scale = None\n        self.out_proj = nn.Linear(dim, dim)\n        self.out_drop = nn.Dropout(proj_drop)\n        self.xattn = xattn\n        self.xattn_drop = attn_drop\n        self.rope = rope\n\n    def forward(self, x, attn_mask: Optional[torch.Tensor] = None):\n        L, N, C = x.shape\n        q, k, v = F.linear(x, self.in_proj_weight, self.in_proj_bias).chunk(3, dim=-1)\n        if self.xattn:\n            q = q.contiguous().view(L, N, self.num_heads, -1).transpose(0, 1)\n            k = k.contiguous().view(L, N, self.num_heads, -1).transpose(0, 1)\n            v = v.contiguous().view(L, N, self.num_heads, -1).transpose(0, 1)\n\n            x = xops.memory_efficient_attention(\n                q, k, v,\n                p=self.xattn_drop,\n                scale=self.scale if self.logit_scale is None else None,\n                attn_bias=xops.LowerTriangularMask() if attn_mask is not None else None,\n                )\n        else:\n            q = q.contiguous().view(L, N * self.num_heads, -1).transpose(0, 1)\n            k = k.contiguous().view(L, N * self.num_heads, -1).transpose(0, 1)\n            v = v.contiguous().view(L, N * self.num_heads, -1).transpose(0, 1)\n\n            if self.logit_scale is not None:\n                attn = torch.bmm(F.normalize(q, dim=-1), F.normalize(k, dim=-1).transpose(-1, -2))\n                logit_scale = torch.clamp(self.logit_scale, max=self.logit_scale_max).exp()\n                attn = attn.view(N, self.num_heads, L, L) * logit_scale\n                attn = attn.view(-1, L, L)\n            else:\n                q = q * self.scale\n                attn = torch.bmm(q, k.transpose(-1, -2))\n\n            if attn_mask is not None:\n                if attn_mask.dtype == torch.bool:\n                    new_attn_mask = torch.zeros_like(attn_mask, dtype=q.dtype)\n                    new_attn_mask.masked_fill_(attn_mask, float(\"-inf\"))\n                    attn_mask = new_attn_mask\n                attn += attn_mask\n\n            attn = attn.softmax(dim=-1)\n            attn = self.attn_drop(attn)\n\n            x = torch.bmm(attn, v)\n\n        if self.head_scale is not None:\n            x = x.view(N, self.num_heads, L, C) * self.head_scale\n            x = x.view(-1, L, C)\n        x = x.transpose(0, 1).reshape(L, N, C)\n        x = self.out_proj(x)\n        x = self.out_drop(x)\n        return x\n\nclass CustomAttention(nn.Module):\n    def __init__(\n            self,\n            dim,\n            num_heads=8,\n            qkv_bias=True,\n            scaled_cosine=True,\n            scale_heads=False,\n            logit_scale_max=math.log(1. / 0.01),\n            attn_drop=0.,\n            proj_drop=0.,\n            xattn=False\n    ):\n        super().__init__()\n        self.scaled_cosine = scaled_cosine\n        self.scale_heads = scale_heads\n        assert dim % num_heads == 0, 'dim should be divisible by num_heads'\n        self.num_heads = num_heads\n        self.head_dim = dim // num_heads\n        self.scale = self.head_dim ** -0.5\n        self.logit_scale_max = logit_scale_max\n\n        # keeping in_proj in this form (instead of nn.Linear) to match weight scheme of original\n        self.in_proj_weight = nn.Parameter(torch.randn((dim * 3, dim)) * self.scale)\n        if qkv_bias:\n            self.in_proj_bias = nn.Parameter(torch.zeros(dim * 3))\n        else:\n            self.in_proj_bias = None\n\n        if self.scaled_cosine:\n            self.logit_scale = nn.Parameter(torch.log(10 * torch.ones((num_heads, 1, 1))))\n        else:\n            self.logit_scale = None\n        self.attn_drop = nn.Dropout(attn_drop)\n        if self.scale_heads:\n            self.head_scale = nn.Parameter(torch.ones((num_heads, 1, 1)))\n        else:\n            self.head_scale = None\n        self.out_proj = nn.Linear(dim, dim)\n        self.out_drop = nn.Dropout(proj_drop)\n        self.xattn = xattn\n        self.xattn_drop = attn_drop\n\n    def forward(self, query: torch.Tensor, key: torch.Tensor, value: torch.Tensor, attn_mask: Optional[torch.Tensor] = None):\n        q, k, v = _in_projection_packed(query, key, value, self.in_proj_weight, self.in_proj_bias)\n        N_q, B_q, C_q = q.shape\n        N_k, B_k, C_k = k.shape\n        N_v, B_v, C_v = v.shape\n        if self.xattn:\n            # B, N, C -> B, N, num_heads, C\n            q = q.permute(1, 0, 2).reshape(B_q, N_q, self.num_heads, -1)\n            k = k.permute(1, 0, 2).reshape(B_k, N_k, self.num_heads, -1)\n            v = v.permute(1, 0, 2).reshape(B_v, N_v, self.num_heads, -1)\n\n            x = xops.memory_efficient_attention(\n                q, k, v,\n                p=self.xattn_drop,\n                scale=self.scale if self.logit_scale is None else None,\n                attn_bias=xops.LowerTriangularMask() if attn_mask is not None else None\n                )\n        else:\n            # B*H, L, C\n            q = q.contiguous().view(N_q, B_q * self.num_heads, -1).transpose(0, 1)\n            k = k.contiguous().view(N_k, B_k * self.num_heads, -1).transpose(0, 1)\n            v = v.contiguous().view(N_v, B_v * self.num_heads, -1).transpose(0, 1)\n\n            if self.logit_scale is not None:\n                # B*H, N_q, N_k\n                attn = torch.bmm(F.normalize(q, dim=-1), F.normalize(k, dim=-1).transpose(-1, -2))\n                logit_scale = torch.clamp(self.logit_scale, max=self.logit_scale_max).exp()\n                attn = attn.view(B_q, self.num_heads, N_q, N_k) * logit_scale\n                attn = attn.view(-1, N_q, N_k)\n            else:\n                q = q * self.scale\n                attn = torch.bmm(q, k.transpose(-1, -2))\n\n            if attn_mask is not None:\n                if attn_mask.dtype == torch.bool:\n                    new_attn_mask = torch.zeros_like(attn_mask, dtype=q.dtype)\n                    new_attn_mask.masked_fill_(attn_mask, float(\"-inf\"))\n                    attn_mask = new_attn_mask\n                attn += attn_mask\n\n            attn = attn.softmax(dim=-1)\n            attn = self.attn_drop(attn)\n\n            x = torch.bmm(attn, v)\n\n        if self.head_scale is not None:\n            x = x.view(B_q, self.num_heads, N_q, C_q) * self.head_scale\n            x = x.view(-1, N_q, C_q)\n        x = x.transpose(0, 1).reshape(N_q, B_q, C_q)\n        x = self.out_proj(x)\n        x = self.out_drop(x)\n        return x\n\nclass CustomResidualAttentionBlock(nn.Module):\n    def __init__(\n            self,\n            d_model: int,\n            n_head: int,\n            mlp_ratio: float = 4.0,\n            ls_init_value: float = None,\n            act_layer: Callable = nn.GELU,\n            norm_layer: Callable = LayerNorm,\n            scale_cosine_attn: bool = False,\n            scale_heads: bool = False,\n            scale_attn: bool = False,\n            scale_fc: bool = False,\n            cross_attn: bool = False,\n            xattn: bool = False,\n    ):\n        super().__init__()\n\n        self.ln_1 = norm_layer(d_model)\n        self.ln_1_k = norm_layer(d_model) if cross_attn else self.ln_1\n        self.ln_1_v = norm_layer(d_model) if cross_attn else self.ln_1\n        self.attn = CustomAttention(\n            d_model, n_head,\n            qkv_bias=True,\n            attn_drop=0.,\n            proj_drop=0.,\n            scaled_cosine=scale_cosine_attn,\n            scale_heads=scale_heads,\n            xattn=xattn\n        )\n\n        self.ln_attn = norm_layer(d_model) if scale_attn else nn.Identity()\n        self.ls_1 = LayerScale(d_model, ls_init_value) if ls_init_value is not None else nn.Identity()\n\n        self.ln_2 = norm_layer(d_model)\n        mlp_width = int(d_model * mlp_ratio)\n        self.mlp = nn.Sequential(OrderedDict([\n            (\"c_fc\", nn.Linear(d_model, mlp_width)),\n            ('ln', norm_layer(mlp_width) if scale_fc else nn.Identity()),\n            (\"gelu\", act_layer()),\n            (\"c_proj\", nn.Linear(mlp_width, d_model))\n        ]))\n\n        self.ls_2 = LayerScale(d_model, ls_init_value) if ls_init_value is not None else nn.Identity()\n\n    def forward(self, q: torch.Tensor, k: torch.Tensor, v: torch.Tensor, attn_mask: Optional[torch.Tensor] = None):\n        q = q + self.ls_1(self.ln_attn(self.attn(self.ln_1(q), self.ln_1_k(k), self.ln_1_v(v), attn_mask=attn_mask)))\n        q = q + self.ls_2(self.mlp(self.ln_2(q)))\n        return q\n\nclass CustomTransformer(nn.Module):\n    def __init__(\n            self,\n            width: int,\n            layers: int,\n            heads: int,\n            mlp_ratio: float = 4.0,\n            ls_init_value: float = None,\n            act_layer: Callable = nn.GELU,\n            norm_layer: Callable = LayerNorm,\n            scale_cosine_attn: bool = True,\n            scale_heads: bool = False,\n            scale_attn: bool = False,\n            scale_fc: bool = False,\n            cross_attn: bool = False,\n            xattn: bool = False,\n    ):\n        super().__init__()\n        self.width = width\n        self.layers = layers\n        self.grad_checkpointing = False\n        self.xattn = xattn\n\n        self.resblocks = nn.ModuleList([\n            CustomResidualAttentionBlock(\n                width,\n                heads,\n                mlp_ratio,\n                ls_init_value=ls_init_value,\n                act_layer=act_layer,\n                norm_layer=norm_layer,\n                scale_cosine_attn=scale_cosine_attn,\n                scale_heads=scale_heads,\n                scale_attn=scale_attn,\n                scale_fc=scale_fc,\n                cross_attn=cross_attn,\n                xattn=xattn)\n            for _ in range(layers)\n        ])\n\n    def get_cast_dtype(self) -> torch.dtype:\n        return self.resblocks[0].mlp.c_fc.weight.dtype\n\n    def forward(self, q: torch.Tensor, k: torch.Tensor = None, v: torch.Tensor = None, attn_mask: Optional[torch.Tensor] = None):\n        if k is None and v is None:\n            k = v = q\n        for r in self.resblocks:\n            if self.grad_checkpointing and not torch.jit.is_scripting():\n                q = checkpoint(r, q, k, v, attn_mask)\n            else:\n                q = r(q, k, v, attn_mask=attn_mask)\n        return q\n\n\nclass ResidualAttentionBlock(nn.Module):\n    def __init__(\n            self,\n            d_model: int,\n            n_head: int,\n            mlp_ratio: float = 4.0,\n            ls_init_value: float = None,\n            act_layer: Callable = nn.GELU,\n            norm_layer: Callable = LayerNorm,\n            xattn: bool = False,\n    ):\n        super().__init__()\n\n        self.ln_1 = norm_layer(d_model)\n        if xattn:\n            self.attn = Attention(d_model, n_head, xattn=True)\n        else:\n            self.attn = nn.MultiheadAttention(d_model, n_head)\n        self.ls_1 = LayerScale(d_model, ls_init_value) if ls_init_value is not None else nn.Identity()\n\n        self.ln_2 = norm_layer(d_model)\n        mlp_width = int(d_model * mlp_ratio)\n        self.mlp = nn.Sequential(OrderedDict([\n            (\"c_fc\", nn.Linear(d_model, mlp_width)),\n            (\"gelu\", act_layer()),\n            (\"c_proj\", nn.Linear(mlp_width, d_model))\n        ]))\n\n        self.ls_2 = LayerScale(d_model, ls_init_value) if ls_init_value is not None else nn.Identity()\n        self.xattn = xattn\n\n    def attention(self, x: torch.Tensor, attn_mask: Optional[torch.Tensor] = None):\n        attn_mask = attn_mask.to(x.dtype) if attn_mask is not None else None\n        if self.xattn:\n            return self.attn(x, attn_mask=attn_mask)\n        return self.attn(x, x, x, need_weights=False, attn_mask=attn_mask)[0]\n\n    def forward(self, x: torch.Tensor, attn_mask: Optional[torch.Tensor] = None):\n        x = x + self.ls_1(self.attention(self.ln_1(x), attn_mask=attn_mask))\n        x = x + self.ls_2(self.mlp(self.ln_2(x)))\n        return x\n\nclass Transformer(nn.Module):\n    def __init__(\n            self,\n            width: int,\n            layers: int,\n            heads: int,\n            mlp_ratio: float = 4.0,\n            ls_init_value: float = None,\n            act_layer: Callable = nn.GELU,\n            norm_layer: Callable = LayerNorm,\n            xattn: bool = False,\n    ):\n        super().__init__()\n        self.width = width\n        self.layers = layers\n        self.grad_checkpointing = False\n\n        self.resblocks = nn.ModuleList([\n            ResidualAttentionBlock(\n                width, heads, mlp_ratio, ls_init_value=ls_init_value, act_layer=act_layer, norm_layer=norm_layer, xattn=xattn)\n            for _ in range(layers)\n        ])\n\n    def get_cast_dtype(self) -> torch.dtype:\n        return self.resblocks[0].mlp.c_fc.weight.dtype\n\n    def forward(self, x: torch.Tensor, attn_mask: Optional[torch.Tensor] = None):\n        for r in self.resblocks:\n            if self.grad_checkpointing and not torch.jit.is_scripting():\n                x = checkpoint(r, x, attn_mask)\n            else:\n                x = r(x, attn_mask=attn_mask)\n        return x\n\n\nclass VisionTransformer(nn.Module):\n    def __init__(\n            self,\n            image_size: int,\n            patch_size: int,\n            width: int,\n            layers: int,\n            heads: int,\n            mlp_ratio: float,\n            ls_init_value: float = None,\n            patch_dropout: float = 0.,\n            global_average_pool: bool = False,\n            output_dim: int = 512,\n            act_layer: Callable = nn.GELU,\n            norm_layer: Callable = LayerNorm,\n            xattn: bool = False,\n    ):\n        super().__init__()\n        self.image_size = to_2tuple(image_size)\n        self.patch_size = to_2tuple(patch_size)\n        self.grid_size = (self.image_size[0] // self.patch_size[0], self.image_size[1] // self.patch_size[1])\n        self.output_dim = output_dim\n        self.conv1 = nn.Conv2d(in_channels=3, out_channels=width, kernel_size=patch_size, stride=patch_size, bias=False)\n\n        scale = width ** -0.5\n        self.class_embedding = nn.Parameter(scale * torch.randn(width))\n        self.positional_embedding = nn.Parameter(scale * torch.randn(self.grid_size[0] * self.grid_size[1] + 1, width))\n\n        # setting a patch_dropout of 0. would mean it is disabled and this function would be the identity fn\n        self.patch_dropout = PatchDropout(patch_dropout) if patch_dropout > 0. else nn.Identity()\n        self.ln_pre = norm_layer(width)\n\n        self.transformer = Transformer(\n            width,\n            layers,\n            heads,\n            mlp_ratio,\n            ls_init_value=ls_init_value,\n            act_layer=act_layer,\n            norm_layer=norm_layer,\n            xattn=xattn\n        )\n\n        self.global_average_pool = global_average_pool\n        self.ln_post = norm_layer(width)\n        self.proj = nn.Parameter(scale * torch.randn(width, output_dim))\n\n    def lock(self, unlocked_groups=0, freeze_bn_stats=False):\n        for param in self.parameters():\n            param.requires_grad = False\n\n        if unlocked_groups != 0:\n            groups = [\n                [\n                    self.conv1,\n                    self.class_embedding,\n                    self.positional_embedding,\n                    self.ln_pre,\n                ],\n                *self.transformer.resblocks[:-1],\n                [\n                    self.transformer.resblocks[-1],\n                    self.ln_post,\n                ],\n                self.proj,\n            ]\n\n            def _unlock(x):\n                if isinstance(x, Sequence):\n                    for g in x:\n                        _unlock(g)\n                else:\n                    if isinstance(x, torch.nn.Parameter):\n                        x.requires_grad = True\n                    else:\n                        for p in x.parameters():\n                            p.requires_grad = True\n\n            _unlock(groups[-unlocked_groups:])\n\n    def get_num_layers(self):\n        return self.transformer.layers\n\n    @torch.jit.ignore\n    def set_grad_checkpointing(self, enable=True):\n        self.transformer.grad_checkpointing = enable\n\n    @torch.jit.ignore\n    def no_weight_decay(self):\n        return {'positional_embedding', 'class_embedding'}\n\n    def forward(self, x: torch.Tensor, return_all_features: bool=False):\n        x = self.conv1(x)  # shape = [*, width, grid, grid]\n        x = x.reshape(x.shape[0], x.shape[1], -1)  # shape = [*, width, grid ** 2]\n        x = x.permute(0, 2, 1)  # shape = [*, grid ** 2, width]\n        x = torch.cat(\n            [self.class_embedding.to(x.dtype) + torch.zeros(x.shape[0], 1, x.shape[-1], dtype=x.dtype, device=x.device),\n             x], dim=1)  # shape = [*, grid ** 2 + 1, width]\n        x = x + self.positional_embedding.to(x.dtype)\n\n        # a patch_dropout of 0. would mean it is disabled and this function would do nothing but return what was passed in\n        x = self.patch_dropout(x)\n        x = self.ln_pre(x)\n\n        x = x.permute(1, 0, 2)  # NLD -> LND\n        x = self.transformer(x)\n        x = x.permute(1, 0, 2)  # LND -> NLD\n\n        if not return_all_features:\n            if self.global_average_pool:\n                x = x.mean(dim=1) #x = x[:,1:,:].mean(dim=1)\n            else:\n                x = x[:, 0]\n\n            x = self.ln_post(x)\n\n            if self.proj is not None:\n                x = x @ self.proj\n\n        return x\n\n\nclass TextTransformer(nn.Module):\n    def __init__(\n            self,\n            context_length: int = 77,\n            vocab_size: int = 49408,\n            width: int = 512,\n            heads: int = 8,\n            layers: int = 12,\n            ls_init_value: float = None,\n            output_dim: int = 512,\n            act_layer: Callable = nn.GELU,\n            norm_layer: Callable = LayerNorm,\n            xattn: bool= False,\n            attn_mask: bool = True\n    ):\n        super().__init__()\n        self.context_length = context_length\n        self.vocab_size = vocab_size\n        self.width = width\n        self.output_dim = output_dim\n\n        self.token_embedding = nn.Embedding(vocab_size, width)\n        self.positional_embedding = nn.Parameter(torch.empty(self.context_length, width))\n        self.transformer = Transformer(\n            width=width,\n            layers=layers,\n            heads=heads,\n            ls_init_value=ls_init_value,\n            act_layer=act_layer,\n            norm_layer=norm_layer,\n            xattn=xattn\n        )\n\n        self.xattn = xattn\n        self.ln_final = norm_layer(width)\n        self.text_projection = nn.Parameter(torch.empty(width, output_dim))\n\n        if attn_mask:\n            self.register_buffer('attn_mask', self.build_attention_mask(), persistent=False)\n        else:\n            self.attn_mask = None\n\n        self.init_parameters()\n\n    def init_parameters(self):\n        nn.init.normal_(self.token_embedding.weight, std=0.02)\n        nn.init.normal_(self.positional_embedding, std=0.01)\n\n        proj_std = (self.transformer.width ** -0.5) * ((2 * self.transformer.layers) ** -0.5)\n        attn_std = self.transformer.width ** -0.5\n        fc_std = (2 * self.transformer.width) ** -0.5\n        for block in self.transformer.resblocks:\n            nn.init.normal_(block.attn.in_proj_weight, std=attn_std)\n            nn.init.normal_(block.attn.out_proj.weight, std=proj_std)\n            nn.init.normal_(block.mlp.c_fc.weight, std=fc_std)\n            nn.init.normal_(block.mlp.c_proj.weight, std=proj_std)\n\n        if self.text_projection is not None:\n            nn.init.normal_(self.text_projection, std=self.transformer.width ** -0.5)\n\n    @torch.jit.ignore\n    def set_grad_checkpointing(self, enable=True):\n        self.transformer.grad_checkpointing = enable\n\n    @torch.jit.ignore\n    def no_weight_decay(self):\n        # return {'positional_embedding', 'token_embedding'}\n        return {'positional_embedding'}\n\n    def get_num_layers(self):\n        return self.transformer.layers\n\n    def build_attention_mask(self):\n        # lazily create causal attention mask, with full attention between the vision tokens\n        # pytorch uses additive attention mask; fill with -inf\n        mask = torch.empty(self.context_length, self.context_length)\n        mask.fill_(float(\"-inf\"))\n        mask.triu_(1)  # zero out the lower diagonal\n        return mask\n\n    def forward(self, text, return_all_features: bool=False):\n        cast_dtype = self.transformer.get_cast_dtype()\n        x = self.token_embedding(text).to(cast_dtype)  # [batch_size, n_ctx, d_model]\n\n        x = x + self.positional_embedding.to(cast_dtype)\n        x = x.permute(1, 0, 2)  # NLD -> LND\n        x = self.transformer(x, attn_mask=self.attn_mask)\n        # x = self.transformer(x) # no attention mask is applied\n        x = x.permute(1, 0, 2)  # LND -> NLD\n        x = self.ln_final(x)\n\n        if not return_all_features:\n            # x.shape = [batch_size, n_ctx, transformer.width]\n            # take features from the eot embedding (eot_token is the highest number in each sequence)\n            x = x[torch.arange(x.shape[0]), text.argmax(dim=-1)] @ self.text_projection\n        return x\n"
  },
  {
    "path": "scripts/pulid/eva_clip/utils.py",
    "content": "from itertools import repeat\nimport collections.abc\nimport logging\nimport math\nimport numpy as np\n\nimport torch\nfrom torch import nn as nn\nfrom torchvision.ops.misc import FrozenBatchNorm2d\nimport torch.nn.functional as F\n\n# open CLIP\ndef resize_clip_pos_embed(state_dict, model, interpolation: str = 'bicubic', seq_dim=1):\n    # Rescale the grid of position embeddings when loading from state_dict\n    old_pos_embed = state_dict.get('visual.positional_embedding', None)\n    if old_pos_embed is None or not hasattr(model.visual, 'grid_size'):\n        return\n    grid_size = to_2tuple(model.visual.grid_size)\n    extra_tokens = 1  # FIXME detect different token configs (ie no class token, or more)\n    new_seq_len = grid_size[0] * grid_size[1] + extra_tokens\n    if new_seq_len == old_pos_embed.shape[0]:\n        return\n\n    if extra_tokens:\n        pos_emb_tok, pos_emb_img = old_pos_embed[:extra_tokens], old_pos_embed[extra_tokens:]\n    else:\n        pos_emb_tok, pos_emb_img = None, old_pos_embed\n    old_grid_size = to_2tuple(int(math.sqrt(len(pos_emb_img))))\n\n    logging.info('Resizing position embedding grid-size from %s to %s', old_grid_size, grid_size)\n    pos_emb_img = pos_emb_img.reshape(1, old_grid_size[0], old_grid_size[1], -1).permute(0, 3, 1, 2)\n    pos_emb_img = F.interpolate(\n        pos_emb_img,\n        size=grid_size,\n        mode=interpolation,\n        align_corners=True,\n    )\n    pos_emb_img = pos_emb_img.permute(0, 2, 3, 1).reshape(1, grid_size[0] * grid_size[1], -1)[0]\n    if pos_emb_tok is not None:\n        new_pos_embed = torch.cat([pos_emb_tok, pos_emb_img], dim=0)\n    else:\n        new_pos_embed = pos_emb_img\n    state_dict['visual.positional_embedding'] = new_pos_embed\n\n\ndef resize_visual_pos_embed(state_dict, model, interpolation: str = 'bicubic', seq_dim=1):\n    # Rescale the grid of position embeddings when loading from state_dict\n    old_pos_embed = state_dict.get('positional_embedding', None)\n    if old_pos_embed is None or not hasattr(model.visual, 'grid_size'):\n        return\n    grid_size = to_2tuple(model.visual.grid_size)\n    extra_tokens = 1  # FIXME detect different token configs (ie no class token, or more)\n    new_seq_len = grid_size[0] * grid_size[1] + extra_tokens\n    if new_seq_len == old_pos_embed.shape[0]:\n        return\n\n    if extra_tokens:\n        pos_emb_tok, pos_emb_img = old_pos_embed[:extra_tokens], old_pos_embed[extra_tokens:]\n    else:\n        pos_emb_tok, pos_emb_img = None, old_pos_embed\n    old_grid_size = to_2tuple(int(math.sqrt(len(pos_emb_img))))\n\n    logging.info('Resizing position embedding grid-size from %s to %s', old_grid_size, grid_size)\n    pos_emb_img = pos_emb_img.reshape(1, old_grid_size[0], old_grid_size[1], -1).permute(0, 3, 1, 2)\n    pos_emb_img = F.interpolate(\n        pos_emb_img,\n        size=grid_size,\n        mode=interpolation,\n        align_corners=True,\n    )\n    pos_emb_img = pos_emb_img.permute(0, 2, 3, 1).reshape(1, grid_size[0] * grid_size[1], -1)[0]\n    if pos_emb_tok is not None:\n        new_pos_embed = torch.cat([pos_emb_tok, pos_emb_img], dim=0)\n    else:\n        new_pos_embed = pos_emb_img\n    state_dict['positional_embedding'] = new_pos_embed\n\ndef resize_evaclip_pos_embed(state_dict, model, interpolation: str = 'bicubic', seq_dim=1):\n    all_keys = list(state_dict.keys())\n    # interpolate position embedding\n    if 'visual.pos_embed' in state_dict:\n        pos_embed_checkpoint = state_dict['visual.pos_embed']\n        embedding_size = pos_embed_checkpoint.shape[-1]\n        num_patches = model.visual.patch_embed.num_patches\n        num_extra_tokens = model.visual.pos_embed.shape[-2] - num_patches\n        # height (== width) for the checkpoint position embedding\n        orig_size = int((pos_embed_checkpoint.shape[-2] - num_extra_tokens) ** 0.5)\n        # height (== width) for the new position embedding\n        new_size = int(num_patches ** 0.5)\n        # class_token and dist_token are kept unchanged\n        if orig_size != new_size:\n            print(\"Position interpolate from %dx%d to %dx%d\" % (orig_size, orig_size, new_size, new_size))\n            extra_tokens = pos_embed_checkpoint[:, :num_extra_tokens]\n            # only the position tokens are interpolated\n            pos_tokens = pos_embed_checkpoint[:, num_extra_tokens:]\n            pos_tokens = pos_tokens.reshape(-1, orig_size, orig_size, embedding_size).permute(0, 3, 1, 2)\n            pos_tokens = torch.nn.functional.interpolate(\n                pos_tokens, size=(new_size, new_size), mode='bicubic', align_corners=False)\n            pos_tokens = pos_tokens.permute(0, 2, 3, 1).flatten(1, 2)\n            new_pos_embed = torch.cat((extra_tokens, pos_tokens), dim=1)\n            state_dict['visual.pos_embed'] = new_pos_embed\n\n            patch_embed_proj = state_dict['visual.patch_embed.proj.weight']\n            patch_size = model.visual.patch_embed.patch_size\n            state_dict['visual.patch_embed.proj.weight'] = torch.nn.functional.interpolate(\n                patch_embed_proj.float(), size=patch_size, mode='bicubic', align_corners=False)\n\n\ndef resize_eva_pos_embed(state_dict, model, interpolation: str = 'bicubic', seq_dim=1):\n    all_keys = list(state_dict.keys())\n    # interpolate position embedding\n    if 'pos_embed' in state_dict:\n        pos_embed_checkpoint = state_dict['pos_embed']\n        embedding_size = pos_embed_checkpoint.shape[-1]\n        num_patches = model.visual.patch_embed.num_patches\n        num_extra_tokens = model.visual.pos_embed.shape[-2] - num_patches\n        # height (== width) for the checkpoint position embedding\n        orig_size = int((pos_embed_checkpoint.shape[-2] - num_extra_tokens) ** 0.5)\n        # height (== width) for the new position embedding\n        new_size = int(num_patches ** 0.5)\n        # class_token and dist_token are kept unchanged\n        if orig_size != new_size:\n            print(\"Position interpolate from %dx%d to %dx%d\" % (orig_size, orig_size, new_size, new_size))\n            extra_tokens = pos_embed_checkpoint[:, :num_extra_tokens]\n            # only the position tokens are interpolated\n            pos_tokens = pos_embed_checkpoint[:, num_extra_tokens:]\n            pos_tokens = pos_tokens.reshape(-1, orig_size, orig_size, embedding_size).permute(0, 3, 1, 2)\n            pos_tokens = torch.nn.functional.interpolate(\n                pos_tokens, size=(new_size, new_size), mode='bicubic', align_corners=False)\n            pos_tokens = pos_tokens.permute(0, 2, 3, 1).flatten(1, 2)\n            new_pos_embed = torch.cat((extra_tokens, pos_tokens), dim=1)\n            state_dict['pos_embed'] = new_pos_embed\n\n            patch_embed_proj = state_dict['patch_embed.proj.weight']\n            patch_size = model.visual.patch_embed.patch_size\n            state_dict['patch_embed.proj.weight'] = torch.nn.functional.interpolate(\n                patch_embed_proj.float(), size=patch_size, mode='bicubic', align_corners=False)\n\n\ndef resize_rel_pos_embed(state_dict, model, interpolation: str = 'bicubic', seq_dim=1):\n    all_keys = list(state_dict.keys())\n    for key in all_keys:\n        if \"relative_position_index\" in key:\n            state_dict.pop(key)\n\n        if \"relative_position_bias_table\" in key:\n            rel_pos_bias = state_dict[key]\n            src_num_pos, num_attn_heads = rel_pos_bias.size()\n            dst_num_pos, _ = model.visual.state_dict()[key].size()\n            dst_patch_shape = model.visual.patch_embed.patch_shape\n            if dst_patch_shape[0] != dst_patch_shape[1]:\n                raise NotImplementedError()\n            num_extra_tokens = dst_num_pos - (dst_patch_shape[0] * 2 - 1) * (dst_patch_shape[1] * 2 - 1)\n            src_size = int((src_num_pos - num_extra_tokens) ** 0.5)\n            dst_size = int((dst_num_pos - num_extra_tokens) ** 0.5)\n            if src_size != dst_size:\n                print(\"Position interpolate for %s from %dx%d to %dx%d\" % (\n                    key, src_size, src_size, dst_size, dst_size))\n                extra_tokens = rel_pos_bias[-num_extra_tokens:, :]\n                rel_pos_bias = rel_pos_bias[:-num_extra_tokens, :]\n\n                def geometric_progression(a, r, n):\n                    return a * (1.0 - r ** n) / (1.0 - r)\n\n                left, right = 1.01, 1.5\n                while right - left > 1e-6:\n                    q = (left + right) / 2.0\n                    gp = geometric_progression(1, q, src_size // 2)\n                    if gp > dst_size // 2:\n                        right = q\n                    else:\n                        left = q\n\n                # if q > 1.090307:\n                #     q = 1.090307\n\n                dis = []\n                cur = 1\n                for i in range(src_size // 2):\n                    dis.append(cur)\n                    cur += q ** (i + 1)\n\n                r_ids = [-_ for _ in reversed(dis)]\n\n                x = r_ids + [0] + dis\n                y = r_ids + [0] + dis\n\n                t = dst_size // 2.0\n                dx = np.arange(-t, t + 0.1, 1.0)\n                dy = np.arange(-t, t + 0.1, 1.0)\n\n                print(\"Original positions = %s\" % str(x))\n                print(\"Target positions = %s\" % str(dx))\n\n                all_rel_pos_bias = []\n\n                for i in range(num_attn_heads):\n                    z = rel_pos_bias[:, i].view(src_size, src_size).float().numpy()\n                    f = F.interpolate.interp2d(x, y, z, kind='cubic')\n                    all_rel_pos_bias.append(\n                        torch.Tensor(f(dx, dy)).contiguous().view(-1, 1).to(rel_pos_bias.device))\n\n                rel_pos_bias = torch.cat(all_rel_pos_bias, dim=-1)\n\n                new_rel_pos_bias = torch.cat((rel_pos_bias, extra_tokens), dim=0)\n                state_dict[key] = new_rel_pos_bias\n\n    # interpolate position embedding\n    if 'pos_embed' in state_dict:\n        pos_embed_checkpoint = state_dict['pos_embed']\n        embedding_size = pos_embed_checkpoint.shape[-1]\n        num_patches = model.visual.patch_embed.num_patches\n        num_extra_tokens = model.visual.pos_embed.shape[-2] - num_patches\n        # height (== width) for the checkpoint position embedding\n        orig_size = int((pos_embed_checkpoint.shape[-2] - num_extra_tokens) ** 0.5)\n        # height (== width) for the new position embedding\n        new_size = int(num_patches ** 0.5)\n        # class_token and dist_token are kept unchanged\n        if orig_size != new_size:\n            print(\"Position interpolate from %dx%d to %dx%d\" % (orig_size, orig_size, new_size, new_size))\n            extra_tokens = pos_embed_checkpoint[:, :num_extra_tokens]\n            # only the position tokens are interpolated\n            pos_tokens = pos_embed_checkpoint[:, num_extra_tokens:]\n            pos_tokens = pos_tokens.reshape(-1, orig_size, orig_size, embedding_size).permute(0, 3, 1, 2)\n            pos_tokens = torch.nn.functional.interpolate(\n                pos_tokens, size=(new_size, new_size), mode='bicubic', align_corners=False)\n            pos_tokens = pos_tokens.permute(0, 2, 3, 1).flatten(1, 2)\n            new_pos_embed = torch.cat((extra_tokens, pos_tokens), dim=1)\n            state_dict['pos_embed'] = new_pos_embed\n\n            patch_embed_proj = state_dict['patch_embed.proj.weight']\n            patch_size = model.visual.patch_embed.patch_size\n            state_dict['patch_embed.proj.weight'] = torch.nn.functional.interpolate(\n                patch_embed_proj.float(), size=patch_size, mode='bicubic', align_corners=False)\n\n\ndef freeze_batch_norm_2d(module, module_match={}, name=''):\n    \"\"\"\n    Converts all `BatchNorm2d` and `SyncBatchNorm` layers of provided module into `FrozenBatchNorm2d`. If `module` is\n    itself an instance of either `BatchNorm2d` or `SyncBatchNorm`, it is converted into `FrozenBatchNorm2d` and\n    returned. Otherwise, the module is walked recursively and submodules are converted in place.\n\n    Args:\n        module (torch.nn.Module): Any PyTorch module.\n        module_match (dict): Dictionary of full module names to freeze (all if empty)\n        name (str): Full module name (prefix)\n\n    Returns:\n        torch.nn.Module: Resulting module\n\n    Inspired by https://github.com/pytorch/pytorch/blob/a5895f85be0f10212791145bfedc0261d364f103/torch/nn/modules/batchnorm.py#L762\n    \"\"\"\n    res = module\n    is_match = True\n    if module_match:\n        is_match = name in module_match\n    if is_match and isinstance(module, (nn.modules.batchnorm.BatchNorm2d, nn.modules.batchnorm.SyncBatchNorm)):\n        res = FrozenBatchNorm2d(module.num_features)\n        res.num_features = module.num_features\n        res.affine = module.affine\n        if module.affine:\n            res.weight.data = module.weight.data.clone().detach()\n            res.bias.data = module.bias.data.clone().detach()\n        res.running_mean.data = module.running_mean.data\n        res.running_var.data = module.running_var.data\n        res.eps = module.eps\n    else:\n        for child_name, child in module.named_children():\n            full_child_name = '.'.join([name, child_name]) if name else child_name\n            new_child = freeze_batch_norm_2d(child, module_match, full_child_name)\n            if new_child is not child:\n                res.add_module(child_name, new_child)\n    return res\n\n\n# From PyTorch internals\ndef _ntuple(n):\n    def parse(x):\n        if isinstance(x, collections.abc.Iterable):\n            return x\n        return tuple(repeat(x, n))\n    return parse\n\n\nto_1tuple = _ntuple(1)\nto_2tuple = _ntuple(2)\nto_3tuple = _ntuple(3)\nto_4tuple = _ntuple(4)\nto_ntuple = lambda n, x: _ntuple(n)(x)\n\n\ndef is_logging(args):\n    def is_global_master(args):\n        return args.rank == 0\n\n    def is_local_master(args):\n        return args.local_rank == 0\n\n    def is_master(args, local=False):\n        return is_local_master(args) if local else is_global_master(args)\n    return is_master\n\n\nclass AllGather(torch.autograd.Function):\n    \"\"\"An autograd function that performs allgather on a tensor.\n    Performs all_gather operation on the provided tensors.\n    *** Warning ***: torch.distributed.all_gather has no gradient.\n    \"\"\"\n\n    @staticmethod\n    def forward(ctx, tensor, rank, world_size):\n        tensors_gather = [torch.empty_like(tensor) for _ in range(world_size)]\n        torch.distributed.all_gather(tensors_gather, tensor)\n        ctx.rank = rank\n        ctx.batch_size = tensor.shape[0]\n        return torch.cat(tensors_gather, 0)\n\n    @staticmethod\n    def backward(ctx, grad_output):\n        return (\n            grad_output[ctx.batch_size * ctx.rank: ctx.batch_size * (ctx.rank + 1)],\n            None,\n            None\n        )\n\nallgather = AllGather.apply\n"
  },
  {
    "path": "scripts/pulid/pulid_flux.py",
    "content": "from types import MethodType\nimport accelerate\nfrom diffusers import FluxPipeline\nfrom modules import shared, sd_models\n\n\ndef apply_flux(pipe: FluxPipeline):\n    if not hasattr(pipe, 'transformer') or not 'Nunchaku' in pipe.transformer.__class__.__name__:\n        shared.log.error('PuLID: flux support requires nunchaku')\n        return pipe\n\n    from nunchaku.pipeline.pipeline_flux_pulid import PuLIDFluxPipeline\n    if not isinstance(pipe, PuLIDFluxPipeline):\n        from nunchaku.models.pulid.pulid_forward import pulid_forward\n        sd_models.clear_caches(full=True)\n        accelerate.hooks.remove_hook_from_module(pipe.transformer, recurse=True)\n        pipe = sd_models.switch_pipe(PuLIDFluxPipeline, pipe)\n        pipe.transformer.orig_forward = pipe.transformer.forward\n        pipe.transformer.forward = MethodType(pulid_forward, pipe.transformer)\n        pipe = sd_models.apply_balanced_offload(pipe)\n        pipe.pulid_model = sd_models.apply_balanced_offload(pipe.pulid_model)\n        shared.log.info(f'PuLID: flux applied cls={pipe.__class__.__name__} pipe={pipe.pulid_model.__class__.__name__}')\n    return pipe\n\n\ndef unapply_flux(pipe: FluxPipeline):\n    from nunchaku.pipeline.pipeline_flux_pulid import PuLIDFluxPipeline\n    if isinstance(pipe, PuLIDFluxPipeline) and hasattr(pipe.transformer, 'orig_forward'):\n        sd_models.clear_caches(full=True)\n        accelerate.hooks.remove_hook_from_module(pipe.transformer, recurse=True)\n        pipe.transformer.forward = MethodType(pipe.transformer.orig_forward, pipe.transformer)\n        del pipe.transformer.orig_forward\n        pipe = sd_models.switch_pipe(FluxPipeline, pipe)\n        pipe = sd_models.apply_balanced_offload(pipe)\n    return pipe\n"
  },
  {
    "path": "scripts/pulid/pulid_sampling.py",
    "content": "import math\nfrom scipy import integrate\nimport torch\nfrom torch import nn\nfrom torchdiffeq import odeint\nimport torchsde\nfrom tqdm.auto import trange\n\n\ndef append_zero(x):\n    return torch.cat([x, x.new_zeros([1])])\n\n\ndef get_sigmas_karras(n, sigma_min, sigma_max, rho=7., device='cpu'):\n    \"\"\"Constructs the noise schedule of Karras et al. (2022).\"\"\"\n    ramp = torch.linspace(0, 1, n)\n    min_inv_rho = sigma_min ** (1 / rho)\n    max_inv_rho = sigma_max ** (1 / rho)\n    sigmas = (max_inv_rho + ramp * (min_inv_rho - max_inv_rho)) ** rho\n    return append_zero(sigmas).to(device)\n\n\ndef get_sigmas_exponential(n, sigma_min, sigma_max, device='cpu'):\n    \"\"\"Constructs an exponential noise schedule.\"\"\"\n    sigmas = torch.linspace(math.log(sigma_max), math.log(sigma_min), n, device=device).exp()\n    return append_zero(sigmas)\n\n\ndef get_sigmas_polyexponential(n, sigma_min, sigma_max, rho=1., device='cpu'):\n    \"\"\"Constructs an polynomial in log sigma noise schedule.\"\"\"\n    ramp = torch.linspace(1, 0, n, device=device) ** rho\n    sigmas = torch.exp(ramp * (math.log(sigma_max) - math.log(sigma_min)) + math.log(sigma_min))\n    return append_zero(sigmas)\n\n\ndef get_sigmas_vp(n, beta_d=19.9, beta_min=0.1, eps_s=1e-3, device='cpu'):\n    \"\"\"Constructs a continuous VP noise schedule.\"\"\"\n    t = torch.linspace(1, eps_s, n, device=device)\n    sigmas = torch.sqrt(torch.exp(beta_d * t ** 2 / 2 + beta_min * t) - 1)\n    return append_zero(sigmas)\n\n\ndef append_dims(x, target_dims):\n    \"\"\"Appends dimensions to the end of a tensor until it has target_dims dimensions.\"\"\"\n    dims_to_append = target_dims - x.ndim\n    if dims_to_append < 0:\n        raise ValueError(f'input has {x.ndim} dims but target_dims is {target_dims}, which is less')\n    return x[(...,) + (None,) * dims_to_append]\n\n\ndef to_d(x, sigma, denoised):\n    \"\"\"Converts a denoiser output to a Karras ODE derivative.\"\"\"\n    return (x - denoised) / append_dims(sigma, x.ndim)\n\n\ndef get_ancestral_step(sigma_from, sigma_to, eta=1.):\n    \"\"\"Calculates the noise level (sigma_down) to step down to and the amount\n    of noise to add (sigma_up) when doing an ancestral sampling step.\"\"\"\n    if not eta:\n        return sigma_to, 0.\n    sigma_up = min(sigma_to, eta * (sigma_to ** 2 * (sigma_from ** 2 - sigma_to ** 2) / sigma_from ** 2) ** 0.5)\n    sigma_down = (sigma_to ** 2 - sigma_up ** 2) ** 0.5\n    return sigma_down, sigma_up\n\n\ndef default_noise_sampler(x):\n    return lambda sigma, sigma_next: torch.randn_like(x)\n\n\ndef inpaint_mask(x, i, steps, mask_args):\n    noised_original = mask_args[\"latent\"].clone().to(x)\n    latent_mask = mask_args[\"latent_mask\"].to(x)\n    if i < steps:\n        noised_original += mask_args[\"noise\"].to(x) * mask_args[\"sigmas\"][i+1].to(x)\n    x = (latent_mask * x) + ((1 - latent_mask) * noised_original.to(x))\n    return x\n\n\nclass BatchedBrownianTree:\n    \"\"\"A wrapper around torchsde.BrownianTree that enables batches of entropy.\"\"\"\n\n    def __init__(self, x, t0, t1, seed=None, **kwargs):\n        t0, t1, self.sign = self.sort(t0, t1)\n        w0 = kwargs.get('w0', torch.zeros_like(x))\n        if seed is None:\n            seed = torch.randint(0, 2 ** 63 - 1, []).item()\n        self.batched = True\n        try:\n            assert len(seed) == x.shape[0]\n            w0 = w0[0]\n        except TypeError:\n            seed = [seed]\n            self.batched = False\n        self.trees = [torchsde.BrownianTree(t0, w0, t1, entropy=s, **kwargs) for s in seed]\n\n    @staticmethod\n    def sort(a, b):\n        return (a, b, 1) if a < b else (b, a, -1)\n\n    def __call__(self, t0, t1):\n        t0, t1, sign = self.sort(t0, t1)\n        w = torch.stack([tree(t0, t1) for tree in self.trees]) * (self.sign * sign)\n        return w if self.batched else w[0]\n\n\nclass BrownianTreeNoiseSampler:\n    \"\"\"A noise sampler backed by a torchsde.BrownianTree.\n\n    Args:\n        x (Tensor): The tensor whose shape, device and dtype to use to generate\n            random samples.\n        sigma_min (float): The low end of the valid interval.\n        sigma_max (float): The high end of the valid interval.\n        seed (int or List[int]): The random seed. If a list of seeds is\n            supplied instead of a single integer, then the noise sampler will\n            use one BrownianTree per batch item, each with its own seed.\n        transform (callable): A function that maps sigma to the sampler's\n            internal timestep.\n    \"\"\"\n\n    def __init__(self, x, sigma_min, sigma_max, seed=None, transform=lambda x: x):\n        self.transform = transform\n        t0, t1 = self.transform(torch.as_tensor(sigma_min)), self.transform(torch.as_tensor(sigma_max))\n        self.tree = BatchedBrownianTree(x, t0, t1, seed)\n\n    def __call__(self, sigma, sigma_next):\n        t0, t1 = self.transform(torch.as_tensor(sigma)), self.transform(torch.as_tensor(sigma_next))\n        return self.tree(t0, t1) / (t1 - t0).abs().sqrt()\n\n\n@torch.no_grad()\ndef sample_euler(model, x, sigmas, extra_args=None, callback=None, disable=None, s_churn=0., s_tmin=0., s_tmax=float('inf'), s_noise=1., mask_args=None):\n    \"\"\"Implements Algorithm 2 (Euler steps) from Karras et al. (2022).\"\"\"\n    extra_args = {} if extra_args is None else extra_args\n    s_in = x.new_ones([x.shape[0]])\n    for i in trange(len(sigmas) - 1, disable=disable):\n        gamma = min(s_churn / (len(sigmas) - 1), 2 ** 0.5 - 1) if s_tmin <= sigmas[i] <= s_tmax else 0.\n        eps = torch.randn_like(x) * s_noise\n        sigma_hat = sigmas[i] * (gamma + 1)\n        if gamma > 0:\n            x = x + eps * (sigma_hat ** 2 - sigmas[i] ** 2) ** 0.5\n        denoised = model(x, sigma_hat * s_in, **extra_args)\n        d = to_d(x, sigma_hat, denoised)\n        if callback is not None:\n            callback({'x': x, 'i': i, 'sigma': sigmas[i], 'sigma_hat': sigma_hat, 'denoised': denoised})\n        dt = sigmas[i + 1] - sigma_hat\n        # Euler method\n        x = x + (d * dt).to(x.dtype)\n        if mask_args is not None:\n            x = inpaint_mask(x, i, len(sigmas) - 2, mask_args)\n    return x\n\n\n@torch.no_grad()\ndef sample_euler_ancestral(model, x, sigmas, extra_args=None, callback=None, disable=None, eta=1., s_noise=1., noise_sampler=None, mask_args=None):\n    \"\"\"Ancestral sampling with Euler method steps.\"\"\"\n    extra_args = {} if extra_args is None else extra_args\n    noise_sampler = default_noise_sampler(x) if noise_sampler is None else noise_sampler\n    s_in = x.new_ones([x.shape[0]])\n    for i in trange(len(sigmas) - 1, disable=disable):\n        denoised = model(x, sigmas[i] * s_in, **extra_args)\n        sigma_down, sigma_up = get_ancestral_step(sigmas[i], sigmas[i + 1], eta=eta)\n        if callback is not None:\n            callback({'x': x, 'i': i, 'sigma': sigmas[i], 'sigma_hat': sigmas[i], 'denoised': denoised})\n        d = to_d(x, sigmas[i], denoised)\n        # Euler method\n        dt = sigma_down - sigmas[i]\n        x = x + (d * dt).to(x.dtype)\n        if sigmas[i + 1] > 0:\n            x = x + (noise_sampler(sigmas[i], sigmas[i + 1]) * s_noise * sigma_up).to(x.dtype)\n        if mask_args is not None:\n            x = inpaint_mask(x, i, len(sigmas) - 2, mask_args)\n    return x\n\n\ndef linear_multistep_coeff(order, t, i, j):\n    if order - 1 > i:\n        raise ValueError(f'Order {order} too high for step {i}')\n    def fn(tau):\n        prod = 1.\n        for k in range(order):\n            if j == k:\n                continue\n            prod *= (tau - t[i - k]) / (t[i - j] - t[i - k])\n        return prod\n    return integrate.quad(fn, t[i], t[i + 1], epsrel=1e-4)[0]\n\n\n@torch.no_grad()\ndef log_likelihood(model, x, sigma_min, sigma_max, extra_args=None, atol=1e-4, rtol=1e-4):\n    extra_args = {} if extra_args is None else extra_args\n    s_in = x.new_ones([x.shape[0]])\n    v = torch.randint_like(x, 2) * 2 - 1\n    fevals = 0\n    def ode_fn(sigma, x):\n        nonlocal fevals\n        with torch.enable_grad():\n            x = x[0].detach().requires_grad_()\n            denoised = model(x, sigma * s_in, **extra_args)\n            d = to_d(x, sigma, denoised)\n            fevals += 1\n            grad = torch.autograd.grad((d * v).sum(), x)[0]\n            d_ll = (v * grad).flatten(1).sum(1)\n        return d.detach(), d_ll\n    x_min = x, x.new_zeros([x.shape[0]])\n    t = x.new_tensor([sigma_min, sigma_max])\n    sol = odeint(ode_fn, x_min, t, atol=atol, rtol=rtol, method='dopri5')\n    latent, delta_ll = sol[0][-1], sol[1][-1]\n    ll_prior = torch.distributions.Normal(0, sigma_max).log_prob(latent).flatten(1).sum(1)\n    return ll_prior + delta_ll, {'fevals': fevals}\n\n\nclass PIDStepSizeController:\n    \"\"\"A PID controller for ODE adaptive step size control.\"\"\"\n    def __init__(self, h, pcoeff, icoeff, dcoeff, order=1, accept_safety=0.81, eps=1e-8):\n        self.h = h\n        self.b1 = (pcoeff + icoeff + dcoeff) / order\n        self.b2 = -(pcoeff + 2 * dcoeff) / order\n        self.b3 = dcoeff / order\n        self.accept_safety = accept_safety\n        self.eps = eps\n        self.errs = []\n\n    def limiter(self, x):\n        return 1 + math.atan(x - 1)\n\n    def propose_step(self, error):\n        inv_error = 1 / (float(error) + self.eps)\n        if not self.errs:\n            self.errs = [inv_error, inv_error, inv_error]\n        self.errs[0] = inv_error\n        factor = self.errs[0] ** self.b1 * self.errs[1] ** self.b2 * self.errs[2] ** self.b3\n        factor = self.limiter(factor)\n        accept = factor >= self.accept_safety\n        if accept:\n            self.errs[2] = self.errs[1]\n            self.errs[1] = self.errs[0]\n        self.h *= factor\n        return accept\n\n\nclass DPMSolver(nn.Module):\n    \"\"\"DPM-Solver. See https://arxiv.org/abs/2206.00927.\"\"\"\n\n    def __init__(self, model, extra_args=None, eps_callback=None, info_callback=None):\n        super().__init__()\n        self.model = model\n        self.extra_args = {} if extra_args is None else extra_args\n        self.eps_callback = eps_callback\n        self.info_callback = info_callback\n\n    def t(self, sigma):\n        return -sigma.log()\n\n    def sigma(self, t):\n        return t.neg().exp()\n\n    def eps(self, eps_cache, key, x, t, *args, **kwargs):\n        if key in eps_cache:\n            return eps_cache[key], eps_cache\n        sigma = self.sigma(t) * x.new_ones([x.shape[0]])\n        eps = (x - self.model(x, sigma, *args, **self.extra_args, **kwargs)) / self.sigma(t)\n        if self.eps_callback is not None:\n            self.eps_callback()\n        return eps, {key: eps, **eps_cache}\n\n    def dpm_solver_1_step(self, x, t, t_next, eps_cache=None):\n        eps_cache = {} if eps_cache is None else eps_cache\n        h = t_next - t\n        eps, eps_cache = self.eps(eps_cache, 'eps', x, t)\n        x_1 = x - self.sigma(t_next) * h.expm1() * eps\n        return x_1, eps_cache\n\n    def dpm_solver_2_step(self, x, t, t_next, r1=1 / 2, eps_cache=None):\n        eps_cache = {} if eps_cache is None else eps_cache\n        h = t_next - t\n        eps, eps_cache = self.eps(eps_cache, 'eps', x, t)\n        s1 = t + r1 * h\n        u1 = x - self.sigma(s1) * (r1 * h).expm1() * eps\n        eps_r1, eps_cache = self.eps(eps_cache, 'eps_r1', u1, s1)\n        x_2 = x - self.sigma(t_next) * h.expm1() * eps - self.sigma(t_next) / (2 * r1) * h.expm1() * (eps_r1 - eps)\n        return x_2, eps_cache\n\n    def dpm_solver_3_step(self, x, t, t_next, r1=1 / 3, r2=2 / 3, eps_cache=None):\n        eps_cache = {} if eps_cache is None else eps_cache\n        h = t_next - t\n        eps, eps_cache = self.eps(eps_cache, 'eps', x, t)\n        s1 = t + r1 * h\n        s2 = t + r2 * h\n        u1 = x - self.sigma(s1) * (r1 * h).expm1() * eps\n        eps_r1, eps_cache = self.eps(eps_cache, 'eps_r1', u1, s1)\n        u2 = x - self.sigma(s2) * (r2 * h).expm1() * eps - self.sigma(s2) * (r2 / r1) * ((r2 * h).expm1() / (r2 * h) - 1) * (eps_r1 - eps)\n        eps_r2, eps_cache = self.eps(eps_cache, 'eps_r2', u2, s2)\n        x_3 = x - self.sigma(t_next) * h.expm1() * eps - self.sigma(t_next) / r2 * (h.expm1() / h - 1) * (eps_r2 - eps)\n        return x_3, eps_cache\n\n    def dpm_solver_fast(self, x, t_start, t_end, nfe, eta=0., s_noise=1., noise_sampler=None):\n        noise_sampler = default_noise_sampler(x) if noise_sampler is None else noise_sampler\n        if not t_end > t_start and eta:\n            raise ValueError('eta must be 0 for reverse sampling')\n\n        m = math.floor(nfe / 3) + 1\n        ts = torch.linspace(t_start, t_end, m + 1, device=x.device)\n\n        if nfe % 3 == 0:\n            orders = [3] * (m - 2) + [2, 1]\n        else:\n            orders = [3] * (m - 1) + [nfe % 3]\n\n        for i in range(len(orders)):\n            eps_cache = {}\n            t, t_next = ts[i], ts[i + 1]\n            if eta:\n                sd, su = get_ancestral_step(self.sigma(t), self.sigma(t_next), eta)\n                t_next_ = torch.minimum(t_end, self.t(sd))\n                su = (self.sigma(t_next) ** 2 - self.sigma(t_next_) ** 2) ** 0.5\n            else:\n                t_next_, su = t_next, 0.\n\n            eps, eps_cache = self.eps(eps_cache, 'eps', x, t)\n            denoised = x - self.sigma(t) * eps\n            if self.info_callback is not None:\n                self.info_callback({'x': x, 'i': i, 't': ts[i], 't_up': t, 'denoised': denoised})\n\n            if orders[i] == 1:\n                x, eps_cache = self.dpm_solver_1_step(x, t, t_next_, eps_cache=eps_cache)\n            elif orders[i] == 2:\n                x, eps_cache = self.dpm_solver_2_step(x, t, t_next_, eps_cache=eps_cache)\n            else:\n                x, eps_cache = self.dpm_solver_3_step(x, t, t_next_, eps_cache=eps_cache)\n\n            x = x + su * s_noise * noise_sampler(self.sigma(t), self.sigma(t_next))\n\n        return x\n\n    def dpm_solver_adaptive(self, x, t_start, t_end, order=3, rtol=0.05, atol=0.0078, h_init=0.05, pcoeff=0., icoeff=1., dcoeff=0., accept_safety=0.81, eta=0., s_noise=1., noise_sampler=None):\n        noise_sampler = default_noise_sampler(x) if noise_sampler is None else noise_sampler\n        if order not in {2, 3}:\n            raise ValueError('order should be 2 or 3')\n        forward = t_end > t_start\n        if not forward and eta:\n            raise ValueError('eta must be 0 for reverse sampling')\n        h_init = abs(h_init) * (1 if forward else -1)\n        atol = torch.tensor(atol)\n        rtol = torch.tensor(rtol)\n        s = t_start\n        x_prev = x\n        accept = True\n        pid = PIDStepSizeController(h_init, pcoeff, icoeff, dcoeff, 1.5 if eta else order, accept_safety)\n        info = {'steps': 0, 'nfe': 0, 'n_accept': 0, 'n_reject': 0}\n\n        while s < t_end - 1e-5 if forward else s > t_end + 1e-5:\n            eps_cache = {}\n            t = torch.minimum(t_end, s + pid.h) if forward else torch.maximum(t_end, s + pid.h)\n            if eta:\n                sd, su = get_ancestral_step(self.sigma(s), self.sigma(t), eta)\n                t_ = torch.minimum(t_end, self.t(sd))\n                su = (self.sigma(t) ** 2 - self.sigma(t_) ** 2) ** 0.5\n            else:\n                t_, su = t, 0.\n\n            eps, eps_cache = self.eps(eps_cache, 'eps', x, s)\n            denoised = x - self.sigma(s) * eps\n\n            if order == 2:\n                x_low, eps_cache = self.dpm_solver_1_step(x, s, t_, eps_cache=eps_cache)\n                x_high, eps_cache = self.dpm_solver_2_step(x, s, t_, eps_cache=eps_cache)\n            else:\n                x_low, eps_cache = self.dpm_solver_2_step(x, s, t_, r1=1 / 3, eps_cache=eps_cache)\n                x_high, eps_cache = self.dpm_solver_3_step(x, s, t_, eps_cache=eps_cache)\n            delta = torch.maximum(atol, rtol * torch.maximum(x_low.abs(), x_prev.abs()))\n            error = torch.linalg.norm((x_low - x_high) / delta) / x.numel() ** 0.5\n            accept = pid.propose_step(error)\n            if accept:\n                x_prev = x_low\n                x = x_high + su * s_noise * noise_sampler(self.sigma(s), self.sigma(t))\n                s = t\n                info['n_accept'] += 1\n            else:\n                info['n_reject'] += 1\n            info['nfe'] += order\n            info['steps'] += 1\n\n            if self.info_callback is not None:\n                self.info_callback({'x': x, 'i': info['steps'] - 1, 't': s, 't_up': s, 'denoised': denoised, 'error': error, 'h': pid.h, **info})\n\n        return x, info\n\n\n@torch.no_grad()\ndef sample_dpmpp_2s_ancestral(model, x, sigmas, extra_args=None, callback=None, disable=None, eta=1., s_noise=1., noise_sampler=None, mask_args=None):\n    \"\"\"Ancestral sampling with DPM-Solver++(2S) second-order steps.\"\"\"\n    extra_args = {} if extra_args is None else extra_args\n    noise_sampler = default_noise_sampler(x) if noise_sampler is None else noise_sampler\n    s_in = x.new_ones([x.shape[0]])\n    sigma_fn = lambda t: t.neg().exp() # pylint: disable=C3001\n    t_fn = lambda sigma: sigma.log().neg() # pylint: disable=C3001\n\n    for i in trange(len(sigmas) - 1, disable=disable):\n        denoised = model(x, sigmas[i] * s_in, **extra_args)\n        sigma_down, sigma_up = get_ancestral_step(sigmas[i], sigmas[i + 1], eta=eta)\n        if callback is not None:\n            callback({'x': x, 'i': i, 'sigma': sigmas[i], 'sigma_hat': sigmas[i], 'denoised': denoised})\n        if sigma_down == 0:\n            # Euler method\n            d = to_d(x, sigmas[i], denoised)\n            dt = sigma_down - sigmas[i]\n            x = x + d * dt\n        else:\n            # DPM-Solver++(2S)\n            t, t_next = t_fn(sigmas[i]), t_fn(sigma_down)\n            r = 1 / 2\n            h = t_next - t\n            s = t + r * h\n            x_2 = (sigma_fn(s) / sigma_fn(t)) * x - (-h * r).expm1() * denoised\n            denoised_2 = model(x_2, sigma_fn(s) * s_in, **extra_args)\n            x = (sigma_fn(t_next) / sigma_fn(t)) * x - (-h).expm1() * denoised_2\n        # Noise addition\n        if sigmas[i + 1] > 0:\n            x = x + noise_sampler(sigmas[i], sigmas[i + 1]) * s_noise * sigma_up\n        if mask_args is not None:\n            x = inpaint_mask(x, i, len(sigmas) - 2, mask_args)\n    return x\n\n\n@torch.no_grad()\ndef sample_dpmpp_sde(model, x, sigmas, extra_args=None, callback=None, disable=None, eta=1., s_noise=1., noise_sampler=None, r=1 / 2, mask_args=None):\n    \"\"\"DPM-Solver++ (stochastic).\"\"\"\n    sigma_min, sigma_max = sigmas[sigmas > 0].min(), sigmas.max()\n    noise_sampler = BrownianTreeNoiseSampler(x, sigma_min, sigma_max) if noise_sampler is None else noise_sampler\n    extra_args = {} if extra_args is None else extra_args\n    s_in = x.new_ones([x.shape[0]])\n    sigma_fn = lambda t: t.neg().exp() # pylint: disable=C3001\n    t_fn = lambda sigma: sigma.log().neg() # pylint: disable=C3001\n\n    for i in trange(len(sigmas) - 1, disable=disable):\n        denoised = model(x, sigmas[i] * s_in, **extra_args)\n        if callback is not None:\n            callback({'x': x, 'i': i, 'sigma': sigmas[i], 'sigma_hat': sigmas[i], 'denoised': denoised})\n        if sigmas[i + 1] == 0:\n            # Euler method\n            d = to_d(x, sigmas[i], denoised)\n            dt = sigmas[i + 1] - sigmas[i]\n            x = x + d * dt\n        else:\n            # DPM-Solver++\n            t, t_next = t_fn(sigmas[i]), t_fn(sigmas[i + 1])\n            h = t_next - t\n            s = t + h * r\n            fac = 1 / (2 * r)\n\n            # Step 1\n            sd, su = get_ancestral_step(sigma_fn(t), sigma_fn(s), eta)\n            s_ = t_fn(sd)\n            x_2 = (sigma_fn(s_) / sigma_fn(t)) * x - (t - s_).expm1() * denoised\n            x_2 = x_2 + noise_sampler(sigma_fn(t), sigma_fn(s)) * s_noise * su\n            denoised_2 = model(x_2, sigma_fn(s) * s_in, **extra_args)\n\n            # Step 2\n            sd, su = get_ancestral_step(sigma_fn(t), sigma_fn(t_next), eta)\n            t_next_ = t_fn(sd)\n            denoised_d = (1 - fac) * denoised + fac * denoised_2\n            x = (sigma_fn(t_next_) / sigma_fn(t)) * x - (t - t_next_).expm1() * denoised_d\n            x = x + noise_sampler(sigma_fn(t), sigma_fn(t_next)) * s_noise * su\n        if mask_args is not None:\n            x = inpaint_mask(x, i, len(sigmas) - 2, mask_args)\n    return x\n\n\n@torch.no_grad()\ndef sample_dpmpp_2m(model, x, sigmas, extra_args=None, callback=None, disable=None, mask_args=None):\n    \"\"\"DPM-Solver++(2M).\"\"\"\n    extra_args = {} if extra_args is None else extra_args\n    s_in = x.new_ones([x.shape[0]])\n    sigma_fn = lambda t: t.neg().exp() # pylint: disable=C3001\n    t_fn = lambda sigma: sigma.log().neg() # pylint: disable=C3001\n    old_denoised = None\n\n    for i in trange(len(sigmas) - 1, disable=disable):\n        denoised = model(x, sigmas[i] * s_in, **extra_args)\n        if callback is not None:\n            callback({'x': x, 'i': i, 'sigma': sigmas[i], 'sigma_hat': sigmas[i], 'denoised': denoised})\n        t, t_next = t_fn(sigmas[i]), t_fn(sigmas[i + 1])\n        h = t_next - t\n        if old_denoised is None or sigmas[i + 1] == 0:\n            x = (sigma_fn(t_next) / sigma_fn(t)) * x - (-h).expm1() * denoised\n        else:\n            h_last = t - t_fn(sigmas[i - 1])\n            r = h_last / h\n            denoised_d = (1 + 1 / (2 * r)) * denoised - (1 / (2 * r)) * old_denoised\n            x = (sigma_fn(t_next) / sigma_fn(t)) * x - (-h).expm1() * denoised_d\n        old_denoised = denoised\n        if mask_args is not None:\n            x = inpaint_mask(x, i, len(sigmas) - 2, mask_args)\n    return x\n\n\n@torch.no_grad()\ndef sample_dpmpp_2m_sde(model, x, sigmas, extra_args=None, callback=None, disable=None, eta=1., s_noise=1., noise_sampler=None, solver_type='midpoint', mask_args=None):\n    \"\"\"DPM-Solver++(2M) SDE.\"\"\"\n\n    if solver_type not in {'heun', 'midpoint'}:\n        raise ValueError('solver_type must be \\'heun\\' or \\'midpoint\\'')\n\n    sigma_min, sigma_max = sigmas[sigmas > 0].min(), sigmas.max()\n    noise_sampler = BrownianTreeNoiseSampler(x, sigma_min, sigma_max) if noise_sampler is None else noise_sampler\n    extra_args = {} if extra_args is None else extra_args\n    s_in = x.new_ones([x.shape[0]])\n\n    old_denoised = None\n    h_last = None\n\n    for i in trange(len(sigmas) - 1, disable=disable):\n        denoised = model(x, sigmas[i] * s_in, **extra_args)\n        if callback is not None:\n            callback({'x': x, 'i': i, 'sigma': sigmas[i], 'sigma_hat': sigmas[i], 'denoised': denoised})\n        if sigmas[i + 1] == 0:\n            # Denoising step\n            x = denoised\n        else:\n            # DPM-Solver++(2M) SDE\n            t, s = -sigmas[i].log(), -sigmas[i + 1].log()\n            h = s - t\n            eta_h = eta * h\n\n            x = sigmas[i + 1] / sigmas[i] * (-eta_h).exp() * x + (-h - eta_h).expm1().neg() * denoised\n\n            if old_denoised is not None:\n                r = h_last / h\n                if solver_type == 'heun':\n                    x = x + ((-h - eta_h).expm1().neg() / (-h - eta_h) + 1) * (1 / r) * (denoised - old_denoised)\n                elif solver_type == 'midpoint':\n                    x = x + 0.5 * (-h - eta_h).expm1().neg() * (1 / r) * (denoised - old_denoised)\n\n            if eta:\n                x = x + noise_sampler(sigmas[i], sigmas[i + 1]) * sigmas[i + 1] * (-2 * eta_h).expm1().neg().sqrt() * s_noise\n\n        old_denoised = denoised\n        h_last = h\n        if mask_args is not None:\n            x = inpaint_mask(x, i, len(sigmas) - 2, mask_args)\n    return x\n\n\n@torch.no_grad()\ndef sample_dpmpp_3m_sde(model, x, sigmas, extra_args=None, callback=None, disable=None, eta=1., s_noise=1., noise_sampler=None, mask_args=None):\n    \"\"\"DPM-Solver++(3M) SDE.\"\"\"\n\n    sigma_min, sigma_max = sigmas[sigmas > 0].min(), sigmas.max()\n    noise_sampler = BrownianTreeNoiseSampler(x, sigma_min, sigma_max) if noise_sampler is None else noise_sampler\n    extra_args = {} if extra_args is None else extra_args\n    s_in = x.new_ones([x.shape[0]])\n\n    denoised_1, denoised_2 = None, None\n    h_1, h_2 = None, None\n\n    for i in trange(len(sigmas) - 1, disable=disable):\n        denoised = model(x, sigmas[i] * s_in, **extra_args)\n        if callback is not None:\n            callback({'x': x, 'i': i, 'sigma': sigmas[i], 'sigma_hat': sigmas[i], 'denoised': denoised})\n        if sigmas[i + 1] == 0:\n            # Denoising step\n            x = denoised\n        else:\n            t, s = -sigmas[i].log(), -sigmas[i + 1].log()\n            h = s - t\n            h_eta = h * (eta + 1)\n\n            x = torch.exp(-h_eta) * x + (-h_eta).expm1().neg() * denoised\n\n            if h_2 is not None:\n                r0 = h_1 / h\n                r1 = h_2 / h\n                d1_0 = (denoised - denoised_1) / r0\n                d1_1 = (denoised_1 - denoised_2) / r1\n                d1 = d1_0 + (d1_0 - d1_1) * r0 / (r0 + r1)\n                d2 = (d1_0 - d1_1) / (r0 + r1)\n                phi_2 = h_eta.neg().expm1() / h_eta + 1\n                phi_3 = phi_2 / h_eta - 0.5\n                x = x + phi_2 * d1 - phi_3 * d2\n            elif h_1 is not None:\n                r = h_1 / h\n                d = (denoised - denoised_1) / r\n                phi_2 = h_eta.neg().expm1() / h_eta + 1\n                x = x + phi_2 * d\n\n            if eta:\n                x = x + noise_sampler(sigmas[i], sigmas[i + 1]) * sigmas[i + 1] * (-2 * h * eta).expm1().neg().sqrt() * s_noise\n\n        denoised_1, denoised_2 = denoised, denoised_1\n        h_1, h_2 = h, h_1\n        if mask_args is not None:\n            x = inpaint_mask(x, i, len(sigmas) - 2, mask_args)\n    return x\n"
  },
  {
    "path": "scripts/pulid/pulid_sdxl.py",
    "content": "from typing import Union\nimport os\nimport cv2\nimport numpy as np\nimport torch\nimport torch.nn as nn\nfrom PIL import Image\nfrom diffusers import StableDiffusionXLPipeline, StableDiffusionXLImg2ImgPipeline, StableDiffusionXLInpaintPipeline\nfrom diffusers.pipelines.stable_diffusion_xl.pipeline_output import StableDiffusionXLPipelineOutput\n\nfrom huggingface_hub import hf_hub_download, snapshot_download\nfrom safetensors.torch import load_file\nfrom torchvision.transforms import InterpolationMode\nfrom torchvision.transforms.functional import normalize, resize\n\nimport insightface\nfrom basicsr.utils import img2tensor, tensor2img\nfrom facexlib.parsing import init_parsing_model\nfrom facexlib.utils.face_restoration_helper import FaceRestoreHelper\nfrom insightface.app import FaceAnalysis\n\nfrom eva_clip import create_model_and_transforms\nfrom eva_clip.constants import OPENAI_DATASET_MEAN, OPENAI_DATASET_STD\nfrom encoders_transformer import IDFormer, IDEncoder\nfrom modules.errors import log\n\n\ndebug = log.trace if os.environ.get('SD_PULID_DEBUG', None) is not None else lambda *args, **kwargs: None\n\n\nclass StableDiffusionXLPuLIDPipeline:\n    def __init__(self,\n                 pipe: Union[StableDiffusionXLPipeline, StableDiffusionXLImg2ImgPipeline, StableDiffusionXLInpaintPipeline],\n                 device: torch.device,\n                 dtype: torch.dtype=None,\n                 providers: list=None,\n                 offload: bool=True,\n                 sampler=None,\n                 cache_dir=None,\n                 sdp: bool=True,\n                 version: str='v1.1',\n                ):\n        super().__init__()\n        self.device = device\n        self.dtype = dtype or torch.float16\n        self.pipe = pipe\n        self.cache_dir = cache_dir\n        self.offload = offload\n        self.sdp = sdp\n        self.version = version\n        self.folder = 'models--ToTheBeginning--PuLID'\n        debug(f'PulID init: device={self.device} dtype={self.dtype} dir={self.cache_dir} offload={self.offload} sdp={self.sdp} version={self.version}')\n\n        # self.pipe.scheduler = DPMSolverMultistepScheduler.from_config(self.pipe.scheduler.config)\n        self.hack_unet_attn_layers(self.pipe.unet)\n        if self.version == 'v1.1':\n            self.id_adapter = IDFormer().to(self.device, self.dtype)\n        else:\n            self.id_adapter = IDEncoder().to(self.device, self.dtype)\n        debug(f'PulID load: adapter={self.id_adapter.__class__.__name__}')\n        self.providers = providers or ['CUDAExecutionProvider', 'CPUExecutionProvider']\n        debug(f'PulID load: providers={self.providers}')\n\n        # preprocessors\n        # face align and parsing\n        self.face_helper = FaceRestoreHelper(\n            upscale_factor=1,\n            face_size=512,\n            crop_ratio=(1, 1),\n            det_model='retinaface_resnet50',\n            save_ext='png',\n            device=self.device,\n        )\n        self.face_helper.face_parse = init_parsing_model(model_name='bisenet', device=self.device)\n        debug(f'PulID load: facehelper={self.face_helper.__class__.__name__}')\n\n        # clip-vit backbone\n        eva_precision = 'fp16' if self.dtype == torch.float16 or self.dtype == torch.bfloat16 else 'fp32'\n        eva_model, _, _ = create_model_and_transforms('EVA02-CLIP-L-14-336', 'eva_clip', force_custom_clip=True, precision=eva_precision, device=self.device)\n        self.clip_vision_model = eva_model.visual.to(dtype=self.dtype)\n        debug(f'PulID load: evaclip={self.clip_vision_model.__class__.__name__} precision={eva_precision}')\n        eva_transform_mean = getattr(self.clip_vision_model, 'image_mean', OPENAI_DATASET_MEAN)\n        eva_transform_std = getattr(self.clip_vision_model, 'image_std', OPENAI_DATASET_STD)\n        if not isinstance(eva_transform_mean, (list, tuple)):\n            eva_transform_mean = (eva_transform_mean,) * 3\n        if not isinstance(eva_transform_std, (list, tuple)):\n            eva_transform_std = (eva_transform_std,) * 3\n        self.eva_transform_mean = eva_transform_mean\n        self.eva_transform_std = eva_transform_std\n\n        # antelopev2\n        local_dir = os.path.join(self.cache_dir, self.folder, 'models', 'antelopev2')\n        _loc = snapshot_download('DIAMONIK7777/antelopev2', local_dir=local_dir)\n        self.app = FaceAnalysis(\n            name='antelopev2',\n            root=os.path.join(self.cache_dir, self.folder),\n            providers=self.providers,\n        )\n        debug(f'PulID load: faceanalysis={_loc}')\n        self.app.prepare(ctx_id=0, det_size=(640, 640))\n        self.handler_ante = insightface.model_zoo.get_model(os.path.join(local_dir, 'glintr100.onnx'))\n        self.handler_ante.prepare(ctx_id=0)\n        debug(f'PulID load: handler={self.handler_ante.__class__.__name__}')\n\n        self.load_pretrain()\n\n        # other configs\n        self.debug_img_list = []\n\n        # karras schedule related code, borrow from lllyasviel/Omost\n        linear_start = 0.00085\n        linear_end = 0.012\n        timesteps = 1000\n        betas = torch.linspace(linear_start**0.5, linear_end**0.5, timesteps, dtype=torch.float64) ** 2\n        alphas = 1.0 - betas\n        alphas_cumprod = torch.tensor(np.cumprod(alphas, axis=0), dtype=torch.float32)\n\n        self.sigmas = ((1 - alphas_cumprod) / alphas_cumprod) ** 0.5\n        self.log_sigmas = self.sigmas.log()\n        self.sigma_data = 1.0\n\n        # default scheduler\n        if sampler is not None:\n            self.sampler = sampler\n        else:\n            from scripts.pulid import sampling # pylint: disable=no-name-in-module\n            self.sampler = sampling.sample_dpmpp_sde\n\n    @property\n    def sigma_min(self):\n        return self.sigmas[0]\n\n    @property\n    def sigma_max(self):\n        return self.sigmas[-1]\n\n    def timestep(self, sigma):\n        log_sigma = sigma.log()\n        dists = log_sigma.to(self.log_sigmas.device) - self.log_sigmas[:, None]\n        return dists.abs().argmin(dim=0).view(sigma.shape).to(sigma.device)\n\n    def get_sigmas_karras(self, n, rho=7.0):\n        ramp = torch.linspace(0, 1, n)\n        min_inv_rho = self.sigma_min ** (1 / rho)\n        max_inv_rho = self.sigma_max ** (1 / rho)\n        sigmas = (max_inv_rho + ramp * (min_inv_rho - max_inv_rho)) ** rho\n        return torch.cat([sigmas, sigmas.new_zeros([1])])\n\n    def hack_unet_attn_layers(self, unet):\n        if self.sdp:\n            from attention_processor import AttnProcessor2_0 as AttnProcessor\n            from attention_processor import IDAttnProcessor2_0 as IDAttnProcessor\n        else:\n            from attention_processor import AttnProcessor\n            from attention_processor import IDAttnProcessor\n        id_adapter_attn_procs = {}\n        for name, _ in unet.attn_processors.items():\n            cross_attention_dim = None if name.endswith(\"attn1.processor\") else unet.config.cross_attention_dim\n            if name.startswith(\"mid_block\"):\n                hidden_size = unet.config.block_out_channels[-1]\n            elif name.startswith(\"up_blocks\"):\n                block_id = int(name[len(\"up_blocks.\")])\n                hidden_size = list(reversed(unet.config.block_out_channels))[block_id]\n            elif name.startswith(\"down_blocks\"):\n                block_id = int(name[len(\"down_blocks.\")])\n                hidden_size = unet.config.block_out_channels[block_id]\n            else:\n                hidden_size = None\n            if cross_attention_dim is not None:\n                id_adapter_attn_procs[name] = IDAttnProcessor(\n                    hidden_size=hidden_size,\n                    cross_attention_dim=cross_attention_dim,\n                ).to(unet.device, unet.dtype)\n            else:\n                id_adapter_attn_procs[name] = AttnProcessor()\n        debug(f'PulID attention: cls={IDAttnProcessor} std={AttnProcessor} len={len(id_adapter_attn_procs.keys())}')\n        unet.set_attn_processor(id_adapter_attn_procs)\n        self.id_adapter_attn_layers = nn.ModuleList(unet.attn_processors.values())\n\n    def load_pretrain(self):\n        if self.version == 'v1.1':\n            ckpt_path = hf_hub_download('guozinan/PuLID', 'pulid_v1.1.safetensors', local_dir=os.path.join(self.cache_dir, self.folder))\n            state_dict = load_file(ckpt_path)\n        else:\n            ckpt_path = hf_hub_download('guozinan/PuLID', 'pulid_v1.bin', local_dir=os.path.join(self.cache_dir, self.folder))\n            state_dict = torch.load(ckpt_path, map_location=\"cpu\")\n        debug(f'PulID load: fn=\"{ckpt_path}\"')\n        state_dict_dict = {}\n        for k, v in state_dict.items():\n            module = k.split('.')[0]\n            state_dict_dict.setdefault(module, {})\n            new_k = k[len(module) + 1 :]\n            state_dict_dict[module][new_k] = v.to(self.dtype)\n\n        for module in state_dict_dict:\n            getattr(self, module).load_state_dict(state_dict_dict[module], strict=True)\n\n    def to_gray(self, img):\n        x = 0.299 * img[:, 0:1] + 0.587 * img[:, 1:2] + 0.114 * img[:, 2:3]\n        x = x.repeat(1, 3, 1, 1)\n        return x\n\n    def get_id_embedding(self, image_list):\n        \"\"\"\n        Args:\n            image in image_list: numpy rgb image, range [0, 255]\n        \"\"\"\n        id_cond_list = []\n        id_vit_hidden_list = []\n        self.face_helper.face_det.to(self.device)\n        self.clip_vision_model.to(self.device)\n        for _ii, image in enumerate(image_list):\n            self.face_helper.clean_all()\n            image_bgr = cv2.cvtColor(image, cv2.COLOR_RGB2BGR)\n            # get antelopev2 embedding\n            face_info = self.app.get(image_bgr)\n            if len(face_info) > 0:\n                face_info = sorted(face_info, key=lambda x: (x['bbox'][2] - x['bbox'][0]) * (x['bbox'][3] - x['bbox'][1]))[-1] # only use the maximum face\n                id_ante_embedding = face_info['embedding']\n                self.debug_img_list.append(image[int(face_info['bbox'][1]) : int(face_info['bbox'][3]), int(face_info['bbox'][0]) : int(face_info['bbox'][2])])\n            else:\n                id_ante_embedding = None\n\n            # using facexlib to detect and align face\n            self.face_helper.read_image(image_bgr)\n            self.face_helper.get_face_landmarks_5(only_center_face=True)\n            self.face_helper.align_warp_face()\n            if len(self.face_helper.cropped_faces) == 0:\n                raise RuntimeError('facexlib align face fail')\n            align_face = self.face_helper.cropped_faces[0]\n            # incase insightface didn't detect face\n            if id_ante_embedding is None:\n                id_ante_embedding = self.handler_ante.get_feat(align_face)\n\n            id_ante_embedding = torch.from_numpy(id_ante_embedding).to(self.device)\n            if id_ante_embedding.ndim == 1:\n                id_ante_embedding = id_ante_embedding.unsqueeze(0)\n\n            # parsing\n            input = img2tensor(align_face, bgr2rgb=True).unsqueeze(0) / 255.0 # pylint: disable=redefined-builtin\n            input = input.to(self.device)\n            parsing_out = self.face_helper.face_parse(normalize(input, [0.485, 0.456, 0.406], [0.229, 0.224, 0.225]))[0]\n            parsing_out = parsing_out.argmax(dim=1, keepdim=True)\n            bg_label = [0, 16, 18, 7, 8, 9, 14, 15]\n            bg = sum(parsing_out == i for i in bg_label).bool()\n            white_image = torch.ones_like(input)\n            # only keep the face features\n            face_features_image = torch.where(bg, white_image, self.to_gray(input))\n            self.debug_img_list.append(tensor2img(face_features_image, rgb2bgr=False))\n\n            # transform img before sending to eva-clip-vit\n            face_features_image = resize(face_features_image, self.clip_vision_model.image_size, InterpolationMode.BICUBIC)\n            face_features_image = normalize(face_features_image, self.eva_transform_mean, self.eva_transform_std).to(self.dtype)\n            id_cond_vit, id_vit_hidden = self.clip_vision_model(face_features_image, return_all_features=False, return_hidden=True, shuffle=False)\n            id_cond_vit_norm = torch.norm(id_cond_vit, 2, 1, True)\n            id_cond_vit = torch.div(id_cond_vit, id_cond_vit_norm)\n\n            id_cond = torch.cat([id_ante_embedding, id_cond_vit], dim=-1)\n\n            id_cond_list.append(id_cond)\n            id_vit_hidden_list.append(id_vit_hidden)\n\n        self.id_adapter.to(self.device)\n        id_uncond = torch.zeros_like(id_cond_list[0]).to(self.dtype)\n        id_vit_hidden_uncond = []\n        for layer_idx in range(0, len(id_vit_hidden_list[0])):\n            id_vit_hidden_uncond.append(torch.zeros_like(id_vit_hidden_list[0][layer_idx]).to(self.dtype))\n\n        id_cond = torch.stack(id_cond_list, dim=1).to(self.dtype)\n        id_vit_hidden = id_vit_hidden_list[0]\n        for i in range(1, len(image_list)):\n            for j, x in enumerate(id_vit_hidden_list[i]):\n                id_vit_hidden[j] = torch.cat([id_vit_hidden[j], x], dim=1).to(self.dtype)\n        id_embedding = self.id_adapter(id_cond, id_vit_hidden)\n        uncond_id_embedding = self.id_adapter(id_uncond, id_vit_hidden_uncond)\n\n        if self.offload:\n            self.face_helper.face_det.to('cpu')\n            self.id_adapter.to('cpu')\n            self.clip_vision_model.to('cpu')\n\n        # return id_embedding\n        debug(f'PulID embedding: cond={id_embedding.shape} uncond={uncond_id_embedding.shape}')\n        return uncond_id_embedding, id_embedding\n\n    def set_progress_bar_config(self, bar_format: str = None, ncols: int = 80, colour: str = None):\n        import functools\n        from tqdm.auto import trange as trange_orig\n        import pulid_sampling\n        pulid_sampling.trange = functools.partial(trange_orig, bar_format=bar_format, ncols=ncols, colour=colour)\n\n    def sample(self, x, sigma, **extra_args):\n        t = self.timestep(sigma)\n        x_ddim_space = x / (sigma[:, None, None, None] ** 2 + self.sigma_data**2) ** 0.5\n        cfg_scale = extra_args['cfg_scale']\n        # debug(f'PulID sample start: step={self.step+1} x={x.shape} dtype={x.dtype} timestep={t.item()} sigma={sigma.shape} cfg={cfg_scale} args={extra_args.keys()}')\n        eps_positive = self.pipe.unet(x_ddim_space, t, return_dict=False, **extra_args['positive'])[0]\n        eps_negative = self.pipe.unet(x_ddim_space, t, return_dict=False, **extra_args['negative'])[0]\n        noise_pred = eps_negative + cfg_scale * (eps_positive - eps_negative)\n        latent = x - noise_pred * sigma[:, None, None, None]\n        if self.callback_on_step_end is not None:\n            self.step += 1\n            self.callback_on_step_end(self.pipe, step=self.step, timestep=t, kwargs={ 'latents': latent })\n        # debug(f'PulID sample end:   step={self.step} x={latent.shape} dtype={x.dtype} min={torch.amin(latent)} max={torch.amax(latent)}')\n        return latent\n\n    def init_latent(self, seed, size, image, mask_image, strength, width, height): # pylint: disable=unused-argument\n        # standard txt2img will full noise\n        noise = torch.randn((size[0], 4, size[1] // 8, size[2] // 8), device=\"cpu\", generator=torch.manual_seed(seed))\n        noise = noise.to(dtype=self.pipe.unet.dtype, device=self.device)\n        if strength > 0 and image is not None:\n            image = self.pipe.image_processor.preprocess(image)\n            if mask_image is not None:  # Inpaint\n                latents = self.pipe.prepare_latents(1,  # batch_size,\n                                                    self.pipe.vae.config.latent_channels,  # num_channels_latents\n                                                    height,\n                                                    width,\n                                                    noise.dtype,\n                                                    noise.device,\n                                                    None,  # generator\n                                                    latents=None,\n                                                    image=image,\n                                                    timestep=1000,\n                                                    is_strength_max=False,\n                                                    add_noise=False,\n                                                    return_noise=False,\n                                                    return_image_latents=False,\n                                                    )\n                latents = latents[0]\n                debug(f'PulID noise: op=inpaint latent={latents.shape} image={image} mask={mask_image} dtype={latents.dtype}')\n            else:  # img2img\n                latents = self.pipe.prepare_latents(image,\n                                                    None,  # timestep (not needed)\n                                                    1,  # batch_size\n                                                    1,  # num_images_per_prompt\n                                                    noise.dtype,\n                                                    noise.device,\n                                                    None,  # generator\n                                                    False,  # add_noise\n                                                    )\n                debug(f'PulID noise: op=img2img latent={latents.shape} image={image} dtype={latents.dtype}')\n        else:\n            latents = torch.zeros_like(noise)\n            debug(f'PulID noise: op=txt2img latent={latents.shape} dtype={latents.dtype}')\n        return latents, noise\n\n    def __call__(\n        self,\n        prompt: str='',\n        negative_prompt: str='',\n        width: int=1024,\n        height: int=1024,\n        guidance_scale: float=7.0,\n        num_inference_steps: int=50,\n        seed: int=-1,\n        image: np.ndarray=None,\n        mask_image: np.ndarray=None,\n        strength: float=0.3,\n        id_embedding=None,\n        uncond_id_embedding=None,\n        id_scale: float=1.0,\n        output_type: str='pil',\n        callback_on_step_end=None,\n    ):\n        debug(f'PulID call: width={width} height={height} cfg={guidance_scale} steps={num_inference_steps} seed={seed} strength={strength} id_scale={id_scale} output={output_type}')\n        self.step = 0 # pylint: disable=attribute-defined-outside-init\n        self.callback_on_step_end = callback_on_step_end # pylint: disable=attribute-defined-outside-init\n        if isinstance(image, list) and len(image) > 0 and isinstance(image[0], Image.Image):\n            if image[0].width != width or image[0].height != height: # override width/height if different\n                width, height = image[0].width, image[0].height\n        size = (1, height, width)\n        # sigmas\n        sigmas = self.get_sigmas_karras(num_inference_steps).to(self.device)\n        if image is not None and strength > 0:\n            _timesteps, num_inference_steps = self.pipe.get_timesteps(num_inference_steps, strength, self.device, None)  # denoising_start disabled\n            sigmas = sigmas[-(num_inference_steps + 1):].to(self.device) # shorten sigmas in i2i\n        debug(f'PulID sigmas: sigmas={sigmas.shape} dtype={sigmas.dtype}')\n\n        # latents\n        latent, noise = self.init_latent(seed, size, image, mask_image, strength, width, height)\n        noisy_latent = latent + noise * sigmas[0].to(noise)\n        debug(f'PulID noisy: latent={noisy_latent.shape} dtype={noisy_latent.dtype}')\n\n        (\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n        ) = self.pipe.encode_prompt(\n            prompt=prompt,\n            negative_prompt=negative_prompt,\n        )\n\n        add_time_ids = list((size[1], size[2]) + (0, 0) + (size[1], size[2]))\n        add_time_ids = torch.tensor([add_time_ids], dtype=self.pipe.unet.dtype, device=self.device)\n        add_neg_time_ids = add_time_ids.clone()\n\n        sampler_kwargs = dict(\n            cfg_scale=guidance_scale,\n            positive=dict(\n                encoder_hidden_states=prompt_embeds,\n                added_cond_kwargs={\"text_embeds\": pooled_prompt_embeds, \"time_ids\": add_time_ids},\n                cross_attention_kwargs={'id_embedding': id_embedding, 'id_scale': id_scale},\n            ),\n            negative=dict(\n                encoder_hidden_states=negative_prompt_embeds,\n                added_cond_kwargs={\"text_embeds\": negative_pooled_prompt_embeds, \"time_ids\": add_neg_time_ids},\n                cross_attention_kwargs={'id_embedding': uncond_id_embedding, 'id_scale': id_scale},\n            ),\n        )\n        if mask_image is not None:\n            latent_mask = torch.Tensor(np.asarray(mask_image.convert(\"L\").resize((noisy_latent.shape[-1], noisy_latent.shape[-2])))).reshape((noisy_latent.shape[-2], noisy_latent.shape[-1]))\n            latent_mask /= latent_mask.max()\n            mask_args = dict(\n                latent=latent,\n                latent_mask=latent_mask,\n                noise=noise,\n                sigmas=sigmas,\n            )\n        else:\n            mask_args = None\n\n        # actual sampling loop\n        latents = self.sampler(self.sample, noisy_latent, sigmas, extra_args=sampler_kwargs, disable=False, mask_args=mask_args)\n\n        # process output\n        latents = latents.to(dtype=self.pipe.vae.dtype, device=self.device)\n        debug(f'PulID output: latent={latents.shape} dtype={latents.dtype}')\n        if output_type == 'latent':\n            images = self.pipe.image_processor.postprocess(latents, output_type='latent')\n        elif output_type == 'np':\n            images = self.pipe.image_processor.postprocess(latents, output_type='np')\n        else:\n            latents = latents / self.pipe.vae.config.scaling_factor\n            images = self.pipe.vae.decode(latents).sample\n            images = self.pipe.image_processor.postprocess(images, output_type='pil')\n        debug(f'PulID output: type={type(images)} images={images.shape if hasattr(images, \"shape\") else images}')\n        return StableDiffusionXLPipelineOutput(images)\n\n\nclass StableDiffusionXLPuLIDPipelineImage(StableDiffusionXLPuLIDPipeline):\n    def __init__(self, pipe: StableDiffusionXLPipeline, device: torch.device, sampler=None, cache_dir=None): # pylint: disable=useless-parent-delegation\n        super().__init__(pipe, device, sampler, cache_dir)\n        # we dont do anything special here, just having different class so task-type can be detected/assigned\n\n\nclass StableDiffusionXLPuLIDPipelineInpaint(StableDiffusionXLPuLIDPipeline):\n    def __init__(self, pipe: StableDiffusionXLPipeline, device: torch.device, sampler=None, cache_dir=None): # pylint: disable=useless-parent-delegation\n        super().__init__(pipe, device, sampler, cache_dir)\n        # we dont do anything special here, just having different class so task-type can be detected/assigned\n"
  },
  {
    "path": "scripts/pulid/pulid_utils.py",
    "content": "import importlib\nimport math\nimport os\nimport random\n\nimport cv2\nimport numpy as np\nimport torch\nfrom torchvision.utils import make_grid\nfrom transformers import PretrainedConfig\n\n\ndef seed_everything(seed):\n    os.environ[\"PL_GLOBAL_SEED\"] = str(seed)\n    random.seed(seed)\n    np.random.seed(seed)\n    torch.manual_seed(seed)\n    torch.cuda.manual_seed_all(seed)\n\n\ndef instantiate_from_config(config):\n    if \"target\" not in config:\n        if config == '__is_first_stage__' or config == \"__is_unconditional__\":\n            return None\n        raise KeyError(\"Expected key `target` to instantiate.\")\n    return get_obj_from_str(config[\"target\"])(**config.get(\"params\", {}))\n\n\ndef get_obj_from_str(string, reload=False):\n    module, cls = string.rsplit(\".\", 1)\n    if reload:\n        module_imp = importlib.import_module(module)\n        importlib.reload(module_imp)\n    return getattr(importlib.import_module(module, package=None), cls)\n\n\ndef drop_seq_token(seq, drop_rate=0.5):\n    idx = torch.randperm(seq.size(1))\n    num_keep_tokens = int(len(idx) * (1 - drop_rate))\n    idx = idx[:num_keep_tokens]\n    seq = seq[:, idx]\n    return seq\n\n\ndef import_model_class_from_model_name_or_path(\n    pretrained_model_name_or_path: str, revision: str, subfolder: str = \"text_encoder\"\n):\n    text_encoder_config = PretrainedConfig.from_pretrained(\n        pretrained_model_name_or_path, subfolder=subfolder, revision=revision\n    )\n    model_class = text_encoder_config.architectures[0]\n\n    if model_class == \"CLIPTextModel\":\n        from transformers import CLIPTextModel\n\n        return CLIPTextModel\n    elif model_class == \"CLIPTextModelWithProjection\":\n        from transformers import CLIPTextModelWithProjection\n\n        return CLIPTextModelWithProjection\n    else:\n        raise ValueError(f\"{model_class} is not supported.\")\n\n\ndef resize_numpy_image_long(image, resize_long_edge=768):\n    h, w = image.shape[:2]\n    if max(h, w) <= resize_long_edge:\n        return image\n    k = resize_long_edge / max(h, w)\n    h = int(h * k)\n    w = int(w * k)\n    image = cv2.resize(image, (w, h), interpolation=cv2.INTER_LANCZOS4)\n    return image\n\n\n# from basicsr\ndef img2tensor(imgs, bgr2rgb=True, float32=True):\n    \"\"\"Numpy array to tensor.\n\n    Args:\n        imgs (list[ndarray] | ndarray): Input images.\n        bgr2rgb (bool): Whether to change bgr to rgb.\n        float32 (bool): Whether to change to float32.\n\n    Returns:\n        list[tensor] | tensor: Tensor images. If returned results only have\n            one element, just return tensor.\n    \"\"\"\n\n    def _totensor(img, bgr2rgb, float32):\n        if img.shape[2] == 3 and bgr2rgb:\n            if img.dtype == 'float64':\n                img = img.astype('float32')\n            img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)\n        img = torch.from_numpy(img.transpose(2, 0, 1))\n        if float32:\n            img = img.float()\n        return img\n\n    if isinstance(imgs, list):\n        return [_totensor(img, bgr2rgb, float32) for img in imgs]\n    return _totensor(imgs, bgr2rgb, float32)\n\n\ndef tensor2img(tensor, rgb2bgr=True, out_type=np.uint8, min_max=(0, 1)):\n    \"\"\"Convert torch Tensors into image numpy arrays.\n\n    After clamping to [min, max], values will be normalized to [0, 1].\n\n    Args:\n        tensor (Tensor or list[Tensor]): Accept shapes:\n            1) 4D mini-batch Tensor of shape (B x 3/1 x H x W);\n            2) 3D Tensor of shape (3/1 x H x W);\n            3) 2D Tensor of shape (H x W).\n            Tensor channel should be in RGB order.\n        rgb2bgr (bool): Whether to change rgb to bgr.\n        out_type (numpy type): output types. If ``np.uint8``, transform outputs\n            to uint8 type with range [0, 255]; otherwise, float type with\n            range [0, 1]. Default: ``np.uint8``.\n        min_max (tuple[int]): min and max values for clamp.\n\n    Returns:\n        (Tensor or list): 3D ndarray of shape (H x W x C) OR 2D ndarray of\n        shape (H x W). The channel order is BGR.\n    \"\"\"\n    if not (torch.is_tensor(tensor) or (isinstance(tensor, list) and all(torch.is_tensor(t) for t in tensor))):\n        raise TypeError(f'tensor or list of tensors expected, got {type(tensor)}')\n\n    if torch.is_tensor(tensor):\n        tensor = [tensor]\n    result = []\n    for _tensor in tensor:\n        _tensor = _tensor.squeeze(0).float().detach().cpu().clamp_(*min_max)\n        _tensor = (_tensor - min_max[0]) / (min_max[1] - min_max[0])\n\n        n_dim = _tensor.dim()\n        if n_dim == 4:\n            img_np = make_grid(_tensor, nrow=int(math.sqrt(_tensor.size(0))), normalize=False).numpy()\n            img_np = img_np.transpose(1, 2, 0)\n            if rgb2bgr:\n                img_np = cv2.cvtColor(img_np, cv2.COLOR_RGB2BGR)\n        elif n_dim == 3:\n            img_np = _tensor.numpy()\n            img_np = img_np.transpose(1, 2, 0)\n            if img_np.shape[2] == 1:  # gray image\n                img_np = np.squeeze(img_np, axis=2)\n            else:\n                if rgb2bgr:\n                    img_np = cv2.cvtColor(img_np, cv2.COLOR_RGB2BGR)\n        elif n_dim == 2:\n            img_np = _tensor.numpy()\n        else:\n            raise TypeError(f'Only support 4D, 3D or 2D tensor. But received with dimension: {n_dim}')\n        if out_type == np.uint8:\n            # Unlike MATLAB, numpy.unit8() WILL NOT round by default.\n            img_np = (img_np * 255.0).round()\n        img_np = img_np.astype(out_type)\n        result.append(img_np)\n    if len(result) == 1:\n        result = result[0]\n    return result\n"
  },
  {
    "path": "scripts/pulid_ext.py",
    "content": "import io\nimport os\nimport time\nimport contextlib\nimport gradio as gr\nfrom PIL import Image\nfrom modules import shared, devices, errors, scripts_manager, processing, processing_helpers, sd_models\n\n\ndebug = os.environ.get('SD_PULID_DEBUG', None) is not None\ndirect = False\nregistered = False\nuploaded_images = []\n\n\nclass Script(scripts_manager.Script):\n    def __init__(self):\n        self.pulid = None\n        self.cache = None\n        self.preprocess = 0\n        super().__init__()\n        self.register() # pulid is script with processing override so xyz doesnt execute\n\n    def title(self):\n        return 'PuLID: ID Customization'\n\n    def show(self, _is_img2img):\n        return True\n\n    def dependencies(self):\n        from installer import installed, install, install_insightface\n        if not installed('insightface', reload=False, quiet=True):\n            install_insightface()\n        if not installed('torchdiffeq'):\n            install('torchdiffeq')\n\n    def register(self): # register xyz grid elements\n        global registered # pylint: disable=global-statement\n        if registered:\n            return\n        registered = True\n        def apply_field(field):\n            def fun(p, x, xs): # pylint: disable=unused-argument\n                setattr(p, field, x)\n                self.run(p)\n            return fun\n\n        import sys\n        xyz_classes = [v for k, v in sys.modules.items() if 'xyz_grid_classes' in k]\n        if xyz_classes and len(xyz_classes) > 0:\n            xyz_classes = xyz_classes[0]\n            options = [\n                xyz_classes.AxisOption(\"[PuLID] Strength\", float, apply_field(\"pulid_strength\")),\n                xyz_classes.AxisOption(\"[PuLID] Zero\", int, apply_field(\"pulid_zero\")),\n                xyz_classes.AxisOption(\"[PuLID] Ortho\", str, apply_field(\"pulid_ortho\"), choices=lambda: ['off', 'v1', 'v2']),\n            ]\n            for option in options:\n                if option not in xyz_classes.axis_options:\n                    xyz_classes.axis_options.append(option)\n\n\n    def decode_image(self,  b64):\n        from modules.api.api import decode_base64_to_image\n        return decode_base64_to_image(b64)\n\n    def load_images(self, files):\n        uploaded_images.clear()\n        for file in files or []:\n            try:\n                if isinstance(file, str):\n                    image = self.decode_image(file)\n                elif isinstance(file, Image.Image):\n                    image = file\n                elif isinstance(file, dict) and 'name' in file:\n                    image = Image.open(file['name']) # _TemporaryFileWrapper from gr.Files\n                elif hasattr(file, 'name'):\n                    image = Image.open(file.name) # _TemporaryFileWrapper from gr.Files\n                else:\n                    raise ValueError(f'IP adapter unknown input: {file}')\n                uploaded_images.append(image)\n            except Exception as e:\n                shared.log.warning(f'IP adapter failed to load image: {e}')\n        return gr.update(value=uploaded_images, visible=len(uploaded_images) > 0)\n\n    # return signature is array of gradio components\n    def ui(self, _is_img2img):\n        with gr.Row():\n            gr.HTML('<a href=\"https://github.com/ToTheBeginning/PuLID\">&nbsp PuLID: Pure and Lightning ID Customization</a><br>')\n        with gr.Row():\n            strength = gr.Slider(label = 'Strength', value = 0.8, minimum = 0, maximum = 1, step = 0.01)\n            zero = gr.Slider(label = 'Zero', value = 20, minimum = 0, maximum = 80, step = 1)\n        with gr.Row():\n            sampler = gr.Dropdown(label=\"Sampler\", value='dpmpp_sde', choices=['dpmpp_2m', 'dpmpp_2m_sde', 'dpmpp_2s_ancestral', 'dpmpp_3m_sde', 'dpmpp_sde', 'euler', 'euler_ancestral'])\n            ortho = gr.Dropdown(label=\"Ortho\", choices=['off', 'v1', 'v2'], value='v2')\n        with gr.Row():\n            version = gr.Dropdown(label=\"Version\", value='v1.1', choices=['v1.0', 'v1.1'])\n        with gr.Row():\n            restore = gr.Checkbox(label='Restore pipe on end', value=False)\n            offload = gr.Checkbox(label='Offload face module', value=True)\n        with gr.Row():\n            files = gr.File(label='Input images', file_count='multiple', file_types=['image'], interactive=True, height=100)\n        with gr.Row():\n            gallery = gr.Gallery(show_label=False, value=[], visible=False, container=False, rows=1)\n        files.change(fn=self.load_images, inputs=[files], outputs=[gallery])\n        return [gallery, strength, zero, sampler, ortho, restore, offload, version]\n\n    def run(\n            self,\n            p: processing.StableDiffusionProcessing,\n            gallery: list = [],\n            strength: float = 0.8,\n            zero: int = 20,\n            sampler: str = 'dpmpp_sde',\n            ortho: str = 'v2',\n            restore: bool = False,\n            offload: bool = True,\n            version: str = 'v1.1'\n        ): # pylint: disable=arguments-differ, unused-argument\n        images = []\n        import numpy as np\n        try:\n            if gallery is None or (isinstance(gallery, list) and len(gallery) == 0):\n                images = getattr(p, 'pulid_images', uploaded_images)\n                images = [self.decode_image(image) if isinstance(image, str) else image for image in images]\n            elif isinstance(gallery[0], dict):\n                images = [Image.open(f['name']) for f in gallery]\n            elif isinstance(gallery, str):\n                images = [self.decode_image(gallery)]\n            elif isinstance(gallery[0], str):\n                images = [self.decode_image(f) for f in gallery]\n            else:\n                images = gallery\n            images = [np.array(image) for image in images]\n        except Exception as e:\n            shared.log.error(f'PuLID: failed to load images: {e}')\n            return None\n        if len(images) == 0:\n            shared.log.error('PuLID: no images')\n            return None\n\n        supported_model_list = ['sdxl', 'f1']\n        if shared.sd_model_type not in supported_model_list:\n            shared.log.error(f'PuLID: class={shared.sd_model.__class__.__name__} model={shared.sd_model_type} required={supported_model_list}')\n            return None\n        if self.pulid is None:\n            self.dependencies()\n            try:\n                from scripts import pulid # pylint: disable=redefined-outer-name\n                self.pulid = pulid\n                from diffusers import pipelines\n                pipelines.auto_pipeline.AUTO_TEXT2IMAGE_PIPELINES_MAPPING[\"pulid\"] = pulid.StableDiffusionXLPuLIDPipeline\n                pipelines.auto_pipeline.AUTO_IMAGE2IMAGE_PIPELINES_MAPPING[\"pulid\"] = pulid.StableDiffusionXLPuLIDPipelineImage\n                pipelines.auto_pipeline.AUTO_INPAINT_PIPELINES_MAPPING[\"pulid\"] = pulid.StableDiffusionXLPuLIDPipelineInpaint\n            except Exception as e:\n                shared.log.error(f'PuLID: failed to import library: {e}')\n                return None\n            if self.pulid is None:\n                shared.log.error('PuLID: failed to load PuLID library')\n                return None\n\n        try:\n            images = [self.pulid.resize(image, 1024) for image in images]\n        except Exception as e:\n            shared.log.error(f'PuLID: failed to resize images: {e}')\n            return None\n\n        if p.batch_size > 1:\n            shared.log.warning('PuLID: batch size not supported')\n            p.batch_size = 1\n\n        sdp = shared.opts.cross_attention_optimization == \"Scaled-Dot-Product\"\n        strength = getattr(p, 'pulid_strength', strength)\n        zero = getattr(p, 'pulid_zero', zero)\n        ortho = getattr(p, 'pulid_ortho', ortho)\n        sampler = getattr(p, 'pulid_sampler', sampler)\n        restore = getattr(p, 'pulid_restore', restore)\n        p.pulid_restore = restore\n\n        if shared.sd_model_type == 'sdxl' and not hasattr(shared.sd_model, 'pipe'):\n            try:\n                stdout = io.StringIO()\n                ctx = contextlib.nullcontext() if debug else contextlib.redirect_stdout(stdout)\n                with ctx:\n                    shared.sd_model = self.pulid.StableDiffusionXLPuLIDPipeline(\n                        pipe=shared.sd_model,\n                        device=devices.device,\n                        dtype=devices.dtype,\n                        providers=devices.onnx,\n                        offload=offload,\n                        version=version,\n                        sdp=sdp,\n                        cache_dir=shared.opts.hfcache_dir,\n                    )\n                shared.sd_model.no_recurse = True\n                sd_models.copy_diffuser_options(shared.sd_model, shared.sd_model.pipe)\n                sd_models.move_model(shared.sd_model, devices.device) # move pipeline to device\n                sd_models.set_diffuser_options(shared.sd_model, vae=None, op='model')\n                # shared.sd_model.hack_unet_attn_layers(shared.sd_model.pipe.unet) # reapply attention layers\n                devices.torch_gc()\n            except Exception as e:\n                shared.log.error(f'PuLID: failed to create pipeline: {e}')\n                errors.display(e, 'PuLID')\n                return None\n        elif shared.sd_model_type == 'f1':\n            shared.sd_model = self.pulid.apply_flux(shared.sd_model)\n\n        if shared.sd_model_type == 'sdxl':\n            processed = self.run_sdxl(p, images, strength, zero, sampler, ortho, restore, offload, version)\n        elif shared.sd_model_type == 'f1':\n            processed = self.run_flux(p, images, strength)\n        else:\n            shared.log.error(f'PuLID: class={shared.sd_model.__class__.__name__} model={shared.sd_model_type} required={supported_model_list}')\n            processed = None\n        return processed\n\n    def after(self, p: processing.StableDiffusionProcessing, processed: processing.Processed, *args): # pylint: disable=unused-argument\n        _strength, _zero, _sampler, _ortho, _gallery, restore, _offload, _version = args\n        if shared.sd_model_type == \"sdxl\" and hasattr(shared.sd_model, 'pipe'):\n            restore = getattr(p, 'pulid_restore', restore)\n            if restore:\n                if hasattr(shared.sd_model, 'app'):\n                    shared.sd_model.app = None\n                    shared.sd_model.ip_adapter = None\n                    shared.sd_model.face_helper = None\n                    shared.sd_model.clip_vision_model = None\n                    shared.sd_model.handler_ante = None\n                shared.sd_model = shared.sd_model.pipe\n                devices.torch_gc(force=True, reason='pulid')\n            shared.log.debug(f'PuLID complete: class={shared.sd_model.__class__.__name__} preprocess={self.preprocess:.2f} pipe={\"restore\" if restore else \"cache\"}')\n        if shared.sd_model_type == \"f1\":\n            restore = getattr(p, 'pulid_restore', restore)\n            if restore:\n                shared.sd_model = self.pulid.unapply_flux(shared.sd_model)\n                devices.torch_gc(force=True, reason='pulid')\n            shared.log.debug(f'PuLID complete: class={shared.sd_model.__class__.__name__} pipe={\"restore\" if restore else \"cache\"}')\n        return processed\n\n    def run_sdxl(self, p: processing.StableDiffusionProcessing, images: list, strength: float, zero: int, sampler: str, ortho: str, restore: bool, offload: bool, version: str):\n        sampler_fn = getattr(self.pulid.sampling, f'sample_{sampler}', None)\n        if sampler_fn is None:\n            sampler_fn = self.pulid.sampling.sample_dpmpp_2m_sde\n        shared.sd_model.sampler = sampler_fn\n        shared.log.info(f'PuLID: class={shared.sd_model.__class__.__name__} version=\"{version}\" strength={strength} zero={zero} ortho={ortho} sampler={sampler_fn} images={[i.shape for i in images]} offload={offload} restore={restore}')\n        self.pulid.attention.NUM_ZERO = zero\n        self.pulid.attention.ORTHO = ortho == 'v1'\n        self.pulid.attention.ORTHO_v2 = ortho == 'v2'\n        shared.sd_model.debug_img_list = []\n\n        # get id embedding used for attention\n        t0 = time.time()\n        uncond_id_embedding, id_embedding = shared.sd_model.get_id_embedding(images)\n        if offload:\n            devices.torch_gc()\n        t1 = time.time()\n        self.preprocess = t1-t0\n\n        p.seed = processing_helpers.get_fixed_seed(p.seed)\n        if direct: # run pipeline directly\n            jobid = shared.state.begin('PuLID')\n            processing.fix_seed(p)\n            p.prompt = shared.prompt_styles.apply_styles_to_prompt(p.prompt, p.styles)\n            p.negative_prompt = shared.prompt_styles.apply_negative_styles_to_prompt(p.negative_prompt, p.styles)\n            shared.prompt_styles.apply_styles_to_extra(p)\n            p.styles = []\n            with devices.inference_context():\n                output = shared.sd_model(\n                    prompt=p.prompt,\n                    negative_prompt=p.negative_prompt,\n                    width=p.width,\n                    height=p.height,\n                    seed=p.seed,\n                    num_inference_steps=p.steps,\n                    guidance_scale=p.cfg_scale,\n                    id_embedding=id_embedding,\n                    uncond_id_embedding=uncond_id_embedding,\n                    id_scale=strength,\n                    )[0]\n            info = processing.create_infotext(p)\n            processed = processing.get_processed(p, [output], info=info)\n            shared.state.end(jobid)\n        else: # let processing run the pipeline\n            p.task_args['id_embedding'] = id_embedding\n            p.task_args['uncond_id_embedding'] = uncond_id_embedding\n            p.task_args['id_scale'] = strength\n            p.extra_generation_params[\"PuLID\"] = f'Strength={strength} Zero={zero} Ortho={ortho}'\n            p.extra_generation_params[\"Sampler\"] = sampler\n            if getattr(p, 'xyz', False): # xyz will run its own processing\n                return None\n            processed: processing.Processed = processing.process_images(p) # runs processing using main loop\n\n        # interim = [Image.fromarray(img) for img in shared.sd_model.debug_img_list]\n        # shared.log.debug(f'PuLID: time={t1-t0:.2f}')\n        return processed\n\n    def run_flux(self, p: processing.StableDiffusionProcessing, images: list, strength: float):\n        image = Image.fromarray(images[0]) # takes single pil image\n        p.task_args['id_image'] = image\n        p.task_args['id_weight'] = strength\n        shared.log.info(f'PuLID: class={shared.sd_model.__class__.__name__} strength={strength} image={image}')\n        p.extra_generation_params[\"PuLID\"] = f'Strength={strength}'\n\n        processed: processing.Processed = processing.process_images(p) # runs processing using main loop\n        return processed\n"
  },
  {
    "path": "scripts/regional_prompting.py",
    "content": "# https://github.com/huggingface/diffusers/blob/main/examples/community/README.md#regional-prompting-pipeline\n# https://github.com/huggingface/diffusers/blob/main/examples/community/regional_prompting_stable_diffusion.py\n\nimport gradio as gr\nfrom diffusers.pipelines import pipeline_utils\nfrom modules import shared, devices, scripts_manager, processing, sd_models, prompt_parser_diffusers\n\n\ndef hijack_register_modules(self, **kwargs):\n    for name, module in kwargs.items():\n        register_dict = None\n        if module is None or (isinstance(module, (tuple, list)) and module[0] is None):\n            register_dict = {name: (None, None)}\n        elif isinstance(module, bool):\n            pass\n        else:\n            library, class_name = pipeline_utils._fetch_class_library_tuple(module) # pylint: disable=protected-access\n            register_dict = {name: (library, class_name)}\n        if register_dict is not None:\n            self.register_to_config(**register_dict)\n        setattr(self, name, module)\n\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return 'Regional prompting'\n\n    def show(self, is_img2img):\n        return not is_img2img\n\n    def change(self, mode):\n        return [gr.update(visible='Col' in mode or 'Row' in mode), gr.update(visible='Prompt' in mode)]\n\n    def ui(self, _is_img2img):\n        with gr.Row():\n            gr.HTML('<a href=\"https://github.com/huggingface/diffusers/blob/main/examples/community/README.md#regional-prompting-pipeline\">&nbsp Regional prompting</a><br>')\n        with gr.Row():\n            mode = gr.Radio(label='Mode', choices=['None', 'Prompt', 'Prompt EX', 'Columns', 'Rows'], value='None')\n        with gr.Row():\n            power = gr.Slider(label='Power', minimum=0, maximum=1, value=1.0, step=0.01)\n            threshold = gr.Textbox('', label='Prompt thresholds', visible=False)\n            grid = gr.Textbox('', label='Grid sections', visible=False)\n        mode.change(fn=self.change, inputs=[mode], outputs=[grid, threshold])\n        return mode, grid, power, threshold\n\n    def run(self, p: processing.StableDiffusionProcessing, mode, grid, power, threshold): # pylint: disable=arguments-differ\n        if mode is None or mode == 'None':\n            return None\n        # backup pipeline and params\n        orig_pipeline = shared.sd_model\n        orig_dtype = devices.dtype\n        orig_prompt_attention = shared.opts.prompt_attention\n        # create pipeline\n        if shared.sd_model_type != 'sd':\n            shared.log.error(f'Regional prompting: incorrect base model: {shared.sd_model.__class__.__name__}')\n            return None\n\n        pipeline_utils.DiffusionPipeline.register_modules = hijack_register_modules\n        prompt_parser_diffusers.EmbeddingsProvider._encode_token_ids_to_embeddings = prompt_parser_diffusers.orig_encode_token_ids_to_embeddings # pylint: disable=protected-access\n\n        shared.sd_model = sd_models.switch_pipe('regional_prompting_stable_diffusion', shared.sd_model)\n        if shared.sd_model.__class__.__name__ != 'RegionalPromptingStableDiffusionPipeline': # switch failed\n            shared.log.error(f'Regional prompting: not a tiling pipeline: {shared.sd_model.__class__.__name__}')\n            shared.sd_model = orig_pipeline\n            return None\n        sd_models.set_diffuser_options(shared.sd_model)\n        shared.opts.data['prompt_attention'] = 'fixed' # this pipeline is not compatible with embeds\n        processing.fix_seed(p)\n        # set pipeline specific params, note that standard params are applied when applicable\n        rp_args = {\n            'mode': mode.lower(),\n            'power': power,\n        }\n        if 'prompt' in mode.lower():\n            rp_args['th'] = threshold\n        else:\n            rp_args['div'] = grid\n        p.task_args = {\n            **p.task_args,\n            'prompt': p.prompt,\n            'rp_args': rp_args,\n        }\n        # run pipeline\n        shared.log.debug(f'Regional: args={p.task_args}')\n        p.task_args['prompt'] = p.prompt\n        processed: processing.Processed = processing.process_images(p) # runs processing using main loop\n\n        # restore pipeline and params\n        prompt_parser_diffusers.EmbeddingsProvider._encode_token_ids_to_embeddings = prompt_parser_diffusers.compel_hijack # pylint: disable=protected-access\n        shared.opts.data['prompt_attention'] = orig_prompt_attention\n        shared.sd_model = orig_pipeline\n        shared.sd_model.to(orig_dtype)\n        return processed\n"
  },
  {
    "path": "scripts/resadapter.py",
    "content": "from safetensors.torch import load_file\nfrom huggingface_hub import hf_hub_download\nimport gradio as gr\nfrom modules import scripts_manager, processing, shared, sd_models, devices\n\n\nrepo = 'jiaxiangc/res-adapter'\nmodels = {\n    'None': '',\n    'SD15 v2 general': 'resadapter_v2_sd1.5',\n    'SDXL v2 general': 'resadapter_v2_sdxl',\n    'SD15 v1 general': 'resadapter_v1_sd1.5',\n    'SD15 v1 extrapolation': 'resadapter_v1_sd1.5_extrapolation',\n    'SD15 v1 interpolation': 'resadapter_v1_sd1.5_interpolation',\n    'SDXL v1 general': 'resadapter_v1_sdxl',\n    'SDXL v1 extrapolation': 'resadapter_v1_sdxl_extrapolation',\n    'SDXL v1 interpolation': 'resadapter_v1_sdxl_interpolation',\n}\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return 'ResAdapter: Domain Consistent Resolution'\n\n    def show(self, is_img2img):\n        return not is_img2img\n\n    # return signature is array of gradio components\n    def ui(self, _is_img2img):\n        with gr.Row():\n            gr.HTML('<a href=\"https://github.com/bytedance/res-adapter\">&nbsp ResAdapter: Domain Consistent Resolution</a><br>')\n        with gr.Row():\n            model = gr.Dropdown(label=\"Model\", choices=list(models), value=\"None\")\n            weight = gr.Slider(minimum=0.0, maximum=1.0, step=0.05, label=\"Weight\", value=1.0)\n        return [model, weight]\n\n    def run(self, p: processing.StableDiffusionProcessing, model, weight): # pylint: disable=arguments-differ\n        if model == 'None':\n            return None\n        if shared.sd_model_type == 'sd':\n            if not model.startswith('SD15'):\n                shared.log.warning(f'ResAdapter: pipeline={shared.sd_model_type} selected={model}')\n                return None\n        if shared.sd_model_type == 'sdxl':\n            if not model.startswith('SDXL'):\n                shared.log.warning(f'ResAdapter: pipeline={shared.sd_model_type} selected={model}')\n                return None\n\n        old_pipe = shared.sd_model\n        shared.sd_model.load_lora_weights(hf_hub_download(repo_id=repo, subfolder=models[model], filename=\"pytorch_lora_weights.safetensors\"), adapter_name=\"res_adapter\")\n        shared.sd_model.set_adapters([\"res_adapter\"], adapter_weights=[weight])\n        shared.sd_model.unet.load_state_dict(load_file(hf_hub_download(repo_id=repo, subfolder=models[model], filename=\"diffusion_pytorch_model.safetensors\")), strict=False)\n        sd_models.move_model(shared.sd_model, devices.device) # move pipeline to device\n        sd_models.set_diffuser_options(shared.sd_model, vae=None, op='model')\n        shared.log.debug(f'ResAdapter: pipeline={shared.sd_model.__class__.__name__} model=\"{model}\" weight={weight} file=\"{models[model]}\"')\n        processed = processing.process_images(p)\n        shared.sd_model = old_pipe\n        return processed\n"
  },
  {
    "path": "scripts/sd_upscale.py",
    "content": "import math\nimport gradio as gr\nfrom PIL import Image\nfrom modules import processing, shared, images, devices, scripts_manager\nfrom modules.processing import get_processed\nfrom modules.shared import opts, state, log\n\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return \"SD Upscale\"\n\n    def show(self, is_img2img):\n        return is_img2img\n\n    def ui(self, is_img2img):\n        with gr.Row():\n            info = gr.HTML(\"<span>&nbsp SD Upscale</span><br>\")\n        with gr.Row():\n            overlap = gr.Slider(minimum=0, maximum=256, step=16, label='Tile overlap', value=64, elem_id=self.elem_id(\"overlap\"))\n            scale_factor = gr.Slider(minimum=1.0, maximum=4.0, step=0.05, label='Scale Factor', value=2.0, elem_id=self.elem_id(\"scale_factor\"))\n        with gr.Row():\n            upscaler_index = gr.Dropdown(label='Upscaler', choices=[x.name for x in shared.sd_upscalers], value=shared.sd_upscalers[0].name, type=\"index\", elem_id=self.elem_id(\"upscaler_index\"))\n        return [info, overlap, upscaler_index, scale_factor]\n\n    def run(self, p, _, overlap, upscaler_index, scale_factor): # pylint: disable=arguments-differ\n        init_img = None\n        if hasattr(p, 'init_images') and p.init_images is not None:\n            init_img = p.init_images[0]\n        elif hasattr(p.task_args, 'image') and p.task_args['image'] is not None:\n            init_img = p.task_args['image'][0]\n\n        if init_img is None:\n            return None\n        init_img = images.flatten(init_img, opts.img2img_background_color)\n\n        if isinstance(upscaler_index, str):\n            upscaler_index = [x.name.lower() for x in shared.sd_upscalers].index(upscaler_index.lower())\n        processing.fix_seed(p)\n        upscaler = shared.sd_upscalers[upscaler_index]\n        p.extra_generation_params[\"SD upscale overlap\"] = overlap\n        p.extra_generation_params[\"SD upscale upscaler\"] = upscaler.name\n        initial_info = None\n        seed = p.seed\n        if upscaler.name != \"None\":\n            img = upscaler.scaler.upscale(init_img, scale_factor, upscaler.data_path)\n        else:\n            img = init_img\n        devices.torch_gc()\n        grid = images.split_grid(img, tile_w=init_img.width, tile_h=init_img.height, overlap=overlap)\n        batch_size = p.batch_size\n        upscale_count = p.n_iter\n        p.n_iter = 1\n        p.do_not_save_grid = True\n        p.do_not_save_samples = True\n        work = []\n        for _y, _h, row in grid.tiles:\n            for tiledata in row:\n                work.append(tiledata[2])\n\n        batch_count = math.ceil(len(work) / batch_size)\n        state.job_count = batch_count * upscale_count\n        log.info(f\"SD upscale: images={len(work)} tiles={len(grid.tiles)} batches={state.job_count}\")\n\n        result_images = []\n        for n in range(upscale_count):\n            start_seed = seed + n\n            p.seed = start_seed\n            work_results = []\n            for i in range(batch_count):\n                p.batch_size = batch_size\n                p.init_images = work[i * batch_size:(i + 1) * batch_size]\n                processed = processing.process_images(p)\n                if initial_info is None:\n                    initial_info = processed.info\n                p.seed = processed.seed + 1\n                work_results += processed.images\n\n            image_index = 0\n            for _y, _h, row in grid.tiles:\n                for tiledata in row:\n                    tiledata[2] = work_results[image_index] if image_index < len(work_results) else Image.new(\"RGB\", (p.width, p.height))\n                    image_index += 1\n\n            combined_image = images.combine_grid(grid)\n            result_images.append(combined_image)\n\n            if opts.samples_save:\n                images.save_image(combined_image, p.outpath_samples, \"\", start_seed, p.prompt, opts.samples_format, info=initial_info, p=p)\n\n        processed = get_processed(p, result_images, seed, initial_info)\n        log.info(f\"SD upscale: images={result_images}\")\n        return processed\n"
  },
  {
    "path": "scripts/skip_layer_guidance.py",
    "content": "import sys\nimport gradio as gr\nfrom modules import scripts_manager, processing, shared\n\n\nregistered = False\n\n\nclass Script(scripts_manager.Script):\n    def __init__(self):\n        super().__init__()\n        self.register()\n\n    def title(self):\n        return 'SLG: Skip Layer Guidance'\n\n    def show(self, is_img2img):\n        return True\n\n    # return signature is array of gradio components\n    def ui(self, _is_img2img):\n        with gr.Row():\n            layers = gr.Textbox(label='Skip guidance layers', value='7,8,9')\n        with gr.Row():\n            scale = gr.Slider(label='Guidance strength', minimum=0.0, maximum=1.0, step=0.01, value=1.0)\n        with gr.Row():\n            start = gr.Slider(label='Guidance start', minimum=0.0, maximum=1.0, step=0.01, value=0.01)\n            stop = gr.Slider(label='Guidance stop', minimum=0.0, maximum=1.0, step=0.01, value=0.2)\n        return [layers, scale, start, stop]\n\n    def register(self): # register xyz grid elements\n        global registered # pylint: disable=global-statement\n        if registered:\n            return\n        registered = True\n        def apply_task_args(field):\n            def fun(p, x, xs): # pylint: disable=unused-argument\n                try:\n                    val = str(x).replace('\"', '')\n                    val = [int(layer.strip()) for layer in val.split(',')]\n                except Exception:\n                    return\n                if len(val) > 0:\n                    shared.log.debug(f'SLG: {field}={val}')\n                    p.task_args[field] = val\n            return fun\n\n        xyz_classes = [v for k, v in sys.modules.items() if 'xyz_grid_classes' in k]\n        if xyz_classes and len(xyz_classes) > 0:\n            xyz_classes = xyz_classes[0]\n            options = [\n                xyz_classes.AxisOption(\"[SLG] Layers\", str, apply_task_args(\"skip_guidance_layers\")),\n            ]\n            for option in options:\n                if option not in xyz_classes.axis_options:\n                    xyz_classes.axis_options.append(option)\n\n\n    def run(self, p: processing.StableDiffusionProcessing, layers: str = '', scale: float = 1.0, start: float = 1.0, stop: float = 1.0): # pylint: disable=arguments-differ, unused-argument\n        if shared.sd_model_type != 'sd3':\n            return\n        p.task_args['skip_layer_guidance_scale'] = float(scale)\n        p.task_args['skip_layer_guidance_start'] = float(start)\n        p.task_args['skip_layer_guidance_stop'] = float(stop)\n        parsed = []\n        try:\n            parsed = [int(layer.strip()) for layer in layers.split(',')]\n        except Exception:\n            return\n        if len(parsed) == 0:\n            return\n        p.task_args['skip_guidance_layers'] = parsed\n        shared.log.info(f'SLG: layers={parsed} scale={scale} start={start} stop={stop}')\n"
  },
  {
    "path": "scripts/softfill.py",
    "content": "# pylint: skip-file\n\n\"\"\"\ncredits: https://github.com/zacheryvaughn/softfill-pipelines\ncode from: https://github.com/zacheryvaughn/softfill-pipelines/blob/main/pipeline_stable_diffusion_xl_softfill.py\nsdnext implementation follows after pipeline-end\n\"\"\"\n\npnoise2 = None # dynamically instlled and imported module\n\n### pipeline start\n\nimport inspect\nimport random\nfrom typing import Any, Callable, Dict, List, Optional, Tuple, Union\n\nimport cv2\nimport numpy as np\nfrom PIL import Image, ImageFilter\nimport torch\nimport torchvision\nfrom torchvision import transforms\nfrom transformers import (\n    CLIPImageProcessor,\n    CLIPTextModel,\n    CLIPTextModelWithProjection,\n    CLIPTokenizer,\n    CLIPVisionModelWithProjection,\n)\n\nfrom diffusers.image_processor import PipelineImageInput, VaeImageProcessor\nfrom diffusers.loaders import (\n    FromSingleFileMixin,\n    IPAdapterMixin,\n    StableDiffusionXLLoraLoaderMixin,\n    TextualInversionLoaderMixin,\n)\nfrom diffusers.models import AutoencoderKL, ImageProjection, UNet2DConditionModel\nfrom diffusers.models.attention_processor import (\n    AttnProcessor2_0,\n    XFormersAttnProcessor,\n)\nfrom diffusers.models.lora import adjust_lora_scale_text_encoder\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline, StableDiffusionMixin\nfrom diffusers.pipelines.stable_diffusion_xl.pipeline_output import StableDiffusionXLPipelineOutput\nfrom diffusers.schedulers import KarrasDiffusionSchedulers\nfrom diffusers.utils import (\n    USE_PEFT_BACKEND,\n    deprecate,\n    is_torch_xla_available,\n    logging,\n    replace_example_docstring,\n    scale_lora_layers,\n    unscale_lora_layers,\n)\nfrom diffusers.utils.torch_utils import randn_tensor\n\n\nif is_torch_xla_available():\n    import torch_xla.core.xla_model as xm\n\n    XLA_AVAILABLE = True\nelse:\n    XLA_AVAILABLE = False\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\nEXAMPLE_DOC_STRING = \"\"\"\n    Examples:\n        ```py\n        >>> import torch\n        >>> from diffusers import StableDiffusionXLImg2ImgPipeline\n        >>> from diffusers.utils import load_image\n\n        >>> pipe = StableDiffusionXLImg2ImgPipeline.from_pretrained(\n        ...     \"stabilityai/stable-diffusion-xl-refiner-1.0\", torch_dtype=torch.float16\n        ... )\n        >>> pipe = pipe.to(\"cuda\")\n        >>> url = \"https://huggingface.co/datasets/patrickvonplaten/images/resolve/main/aa_xl/000000009.png\"\n\n        >>> init_image = load_image(url).convert(\"RGB\")\n        >>> prompt = \"a photo of an astronaut riding a horse on mars\"\n        >>> image = pipe(prompt, image=init_image).images[0]\n        ```\n\"\"\"\n\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.rescale_noise_cfg\ndef rescale_noise_cfg(noise_cfg, noise_pred_text, guidance_rescale=0.0):\n    \"\"\"\n    Rescale `noise_cfg` according to `guidance_rescale`. Based on findings of [Common Diffusion Noise Schedules and\n    Sample Steps are Flawed](https://arxiv.org/pdf/2305.08891.pdf). See Section 3.4\n    \"\"\"\n    std_text = noise_pred_text.std(dim=list(range(1, noise_pred_text.ndim)), keepdim=True)\n    std_cfg = noise_cfg.std(dim=list(range(1, noise_cfg.ndim)), keepdim=True)\n    # rescale the results from guidance (fixes overexposure)\n    noise_pred_rescaled = noise_cfg * (std_text / std_cfg)\n    # mix with the original results from guidance by factor guidance_rescale to avoid \"plain looking\" images\n    noise_cfg = guidance_rescale * noise_pred_rescaled + (1 - guidance_rescale) * noise_cfg\n    return noise_cfg\n\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion_img2img.retrieve_latents\ndef retrieve_latents(\n    encoder_output: torch.Tensor, generator: Optional[torch.Generator] = None, sample_mode: str = \"sample\"\n):\n    if hasattr(encoder_output, \"latent_dist\") and sample_mode == \"sample\":\n        return encoder_output.latent_dist.sample(generator)\n    elif hasattr(encoder_output, \"latent_dist\") and sample_mode == \"argmax\":\n        return encoder_output.latent_dist.mode()\n    elif hasattr(encoder_output, \"latents\"):\n        return encoder_output.latents\n    else:\n        raise AttributeError(\"Could not access latents of provided encoder_output\")\n\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.retrieve_timesteps\ndef retrieve_timesteps(\n    scheduler,\n    num_inference_steps: Optional[int] = None,\n    device: Optional[Union[str, torch.device]] = None,\n    timesteps: Optional[List[int]] = None,\n    **kwargs,\n):\n    \"\"\"\n    Calls the scheduler's `set_timesteps` method and retrieves timesteps from the scheduler after the call. Handles\n    custom timesteps. Any kwargs will be supplied to `scheduler.set_timesteps`.\n\n    Args:\n        scheduler (`SchedulerMixin`):\n            The scheduler to get timesteps from.\n        num_inference_steps (`int`):\n            The number of diffusion steps used when generating samples with a pre-trained model. If used,\n            `timesteps` must be `None`.\n        device (`str` or `torch.device`, *optional*):\n            The device to which the timesteps should be moved to. If `None`, the timesteps are not moved.\n        timesteps (`List[int]`, *optional*):\n                Custom timesteps used to support arbitrary spacing between timesteps. If `None`, then the default\n                timestep spacing strategy of the scheduler is used. If `timesteps` is passed, `num_inference_steps`\n                must be `None`.\n\n    Returns:\n        `Tuple[torch.Tensor, int]`: A tuple where the first element is the timestep schedule from the scheduler and the\n        second element is the number of inference steps.\n    \"\"\"\n    if timesteps is not None:\n        accepts_timesteps = \"timesteps\" in set(inspect.signature(scheduler.set_timesteps).parameters.keys())\n        if not accepts_timesteps:\n            raise ValueError(\n                f\"The current scheduler class {scheduler.__class__}'s `set_timesteps` does not support custom\"\n                f\" timestep schedules. Please check whether you are using the correct scheduler.\"\n            )\n        scheduler.set_timesteps(timesteps=timesteps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n        num_inference_steps = len(timesteps)\n    else:\n        scheduler.set_timesteps(num_inference_steps, device=device, **kwargs)\n        timesteps = scheduler.timesteps\n    return timesteps, num_inference_steps\n\n\nclass StableDiffusionXLSoftFillPipeline(\n    DiffusionPipeline,\n    StableDiffusionMixin,\n    TextualInversionLoaderMixin,\n    FromSingleFileMixin,\n    StableDiffusionXLLoraLoaderMixin,\n    IPAdapterMixin,\n):\n    r\"\"\"\n    Pipeline for text-to-image generation using Stable Diffusion XL.\n\n    This model inherits from [`DiffusionPipeline`]. Check the superclass documentation for the generic methods the\n    library implements for all the pipelines (such as downloading or saving, running on a particular device, etc.)\n\n    In addition the pipeline inherits the following loading methods:\n        - *Textual-Inversion*: [`loaders.TextualInversionLoaderMixin.load_textual_inversion`]\n        - *LoRA*: [`loaders.StableDiffusionLoraLoaderMixin.load_lora_weights`]\n        - *Ckpt*: [`loaders.FromSingleFileMixin.from_single_file`]\n\n    as well as the following saving methods:\n        - *LoRA*: [`loaders.StableDiffusionLoraLoaderMixin.save_lora_weights`]\n\n    Args:\n        vae ([`AutoencoderKL`]):\n            Variational Auto-Encoder (VAE) Model to encode and decode images to and from latent representations.\n        text_encoder ([`CLIPTextModel`]):\n            Frozen text-encoder. Stable Diffusion XL uses the text portion of\n            [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModel), specifically\n            the [clip-vit-large-patch14](https://huggingface.co/openai/clip-vit-large-patch14) variant.\n        text_encoder_2 ([` CLIPTextModelWithProjection`]):\n            Second frozen text-encoder. Stable Diffusion XL uses the text and pool portion of\n            [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModelWithProjection),\n            specifically the\n            [laion/CLIP-ViT-bigG-14-laion2B-39B-b160k](https://huggingface.co/laion/CLIP-ViT-bigG-14-laion2B-39B-b160k)\n            variant.\n        tokenizer (`CLIPTokenizer`):\n            Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer).\n        tokenizer_2 (`CLIPTokenizer`):\n            Second Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer).\n        unet ([`UNet2DConditionModel`]): Conditional U-Net architecture to denoise the encoded image latents.\n        scheduler ([`SchedulerMixin`]):\n            A scheduler to be used in combination with `unet` to denoise the encoded image latents. Can be one of\n            [`DDIMScheduler`], [`LMSDiscreteScheduler`], or [`PNDMScheduler`].\n    \"\"\"\n\n    model_cpu_offload_seq = \"text_encoder->text_encoder_2->image_encoder->unet->vae\"\n    _optional_components = [\n        \"tokenizer\",\n        \"tokenizer_2\",\n        \"text_encoder\",\n        \"text_encoder_2\",\n        \"image_encoder\",\n        \"feature_extractor\",\n    ]\n    _callback_tensor_inputs = [\n        \"latents\",\n        \"prompt_embeds\",\n        \"negative_prompt_embeds\",\n        \"add_text_embeds\",\n        \"add_time_ids\",\n        \"negative_pooled_prompt_embeds\",\n        \"add_neg_time_ids\",\n    ]\n\n    def __init__(\n        self,\n        vae: AutoencoderKL,\n        text_encoder: CLIPTextModel,\n        text_encoder_2: CLIPTextModelWithProjection,\n        tokenizer: CLIPTokenizer,\n        tokenizer_2: CLIPTokenizer,\n        unet: UNet2DConditionModel,\n        scheduler: KarrasDiffusionSchedulers,\n        image_encoder: CLIPVisionModelWithProjection = None,\n        feature_extractor: CLIPImageProcessor = None,\n        requires_aesthetics_score: bool = False,\n        force_zeros_for_empty_prompt: bool = True,\n        add_watermarker: Optional[bool] = None,\n    ):\n        super().__init__()\n\n        self.register_modules(\n            vae=vae,\n            text_encoder=text_encoder,\n            text_encoder_2=text_encoder_2,\n            tokenizer=tokenizer,\n            tokenizer_2=tokenizer_2,\n            unet=unet,\n            image_encoder=image_encoder,\n            feature_extractor=feature_extractor,\n            scheduler=scheduler,\n        )\n        self.register_to_config(force_zeros_for_empty_prompt=force_zeros_for_empty_prompt)\n        self.register_to_config(requires_aesthetics_score=requires_aesthetics_score)\n        self.vae_scale_factor = 2 ** (len(self.vae.config.block_out_channels) - 1) if getattr(self, \"vae\", None) else 8\n        self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor)\n        self.watermark = None\n\n    # Copied from diffusers.pipelines.stable_diffusion_xl.pipeline_stable_diffusion_xl.StableDiffusionXLPipeline.encode_prompt\n    def encode_prompt(\n        self,\n        prompt: str,\n        prompt_2: Optional[str] = None,\n        device: Optional[torch.device] = None,\n        num_images_per_prompt: int = 1,\n        do_classifier_free_guidance: bool = True,\n        negative_prompt: Optional[str] = None,\n        negative_prompt_2: Optional[str] = None,\n        prompt_embeds: Optional[torch.Tensor] = None,\n        negative_prompt_embeds: Optional[torch.Tensor] = None,\n        pooled_prompt_embeds: Optional[torch.Tensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.Tensor] = None,\n        lora_scale: Optional[float] = None,\n        clip_skip: Optional[int] = None,\n    ):\n        r\"\"\"\n        Encodes the prompt into text encoder hidden states.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                prompt to be encoded\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders\n            device: (`torch.device`):\n                torch device\n            num_images_per_prompt (`int`):\n                number of images that should be generated per prompt\n            do_classifier_free_guidance (`bool`):\n                whether to use classifier free guidance or not\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders\n            prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            lora_scale (`float`, *optional*):\n                A lora scale that will be applied to all LoRA layers of the text encoder if LoRA layers are loaded.\n            clip_skip (`int`, *optional*):\n                Number of layers to be skipped from CLIP while computing the prompt embeddings. A value of 1 means that\n                the output of the pre-final layer will be used for computing the prompt embeddings.\n        \"\"\"\n        device = device or self._execution_device\n\n        # set lora scale so that monkey patched LoRA\n        # function of text encoder can correctly access it\n        if lora_scale is not None and isinstance(self, StableDiffusionXLLoraLoaderMixin):\n            self._lora_scale = lora_scale\n\n            # dynamically adjust the LoRA scale\n            if self.text_encoder is not None:\n                if not USE_PEFT_BACKEND:\n                    adjust_lora_scale_text_encoder(self.text_encoder, lora_scale)\n                else:\n                    scale_lora_layers(self.text_encoder, lora_scale)\n\n            if self.text_encoder_2 is not None:\n                if not USE_PEFT_BACKEND:\n                    adjust_lora_scale_text_encoder(self.text_encoder_2, lora_scale)\n                else:\n                    scale_lora_layers(self.text_encoder_2, lora_scale)\n\n        prompt = [prompt] if isinstance(prompt, str) else prompt\n\n        if prompt is not None:\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        # Define tokenizers and text encoders\n        tokenizers = [self.tokenizer, self.tokenizer_2] if self.tokenizer is not None else [self.tokenizer_2]\n        text_encoders = (\n            [self.text_encoder, self.text_encoder_2] if self.text_encoder is not None else [self.text_encoder_2]\n        )\n\n        if prompt_embeds is None:\n            prompt_2 = prompt_2 or prompt\n            prompt_2 = [prompt_2] if isinstance(prompt_2, str) else prompt_2\n\n            # textual inversion: process multi-vector tokens if necessary\n            prompt_embeds_list = []\n            prompts = [prompt, prompt_2]\n            for prompt, tokenizer, text_encoder in zip(prompts, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    prompt = self.maybe_convert_prompt(prompt, tokenizer)\n\n                text_inputs = tokenizer(\n                    prompt,\n                    padding=\"max_length\",\n                    max_length=tokenizer.model_max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                text_input_ids = text_inputs.input_ids\n                untruncated_ids = tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n                if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(\n                    text_input_ids, untruncated_ids\n                ):\n                    removed_text = tokenizer.batch_decode(untruncated_ids[:, tokenizer.model_max_length - 1 : -1])\n                    logger.warning(\n                        \"The following part of your input was truncated because CLIP can only handle sequences up to\"\n                        f\" {tokenizer.model_max_length} tokens: {removed_text}\"\n                    )\n\n                prompt_embeds = text_encoder(text_input_ids.to(device), output_hidden_states=True)\n\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                if pooled_prompt_embeds is None and prompt_embeds[0].ndim == 2:\n                    pooled_prompt_embeds = prompt_embeds[0]\n\n                if clip_skip is None:\n                    prompt_embeds = prompt_embeds.hidden_states[-2]\n                else:\n                    # \"2\" because SDXL always indexes from the penultimate layer.\n                    prompt_embeds = prompt_embeds.hidden_states[-(clip_skip + 2)]\n\n                prompt_embeds_list.append(prompt_embeds)\n\n            prompt_embeds = torch.concat(prompt_embeds_list, dim=-1)\n\n        # get unconditional embeddings for classifier free guidance\n        zero_out_negative_prompt = negative_prompt is None and self.config.force_zeros_for_empty_prompt\n        if do_classifier_free_guidance and negative_prompt_embeds is None and zero_out_negative_prompt:\n            negative_prompt_embeds = torch.zeros_like(prompt_embeds)\n            negative_pooled_prompt_embeds = torch.zeros_like(pooled_prompt_embeds)\n        elif do_classifier_free_guidance and negative_prompt_embeds is None:\n            negative_prompt = negative_prompt or \"\"\n            negative_prompt_2 = negative_prompt_2 or negative_prompt\n\n            # normalize str to list\n            negative_prompt = batch_size * [negative_prompt] if isinstance(negative_prompt, str) else negative_prompt\n            negative_prompt_2 = (\n                batch_size * [negative_prompt_2] if isinstance(negative_prompt_2, str) else negative_prompt_2\n            )\n\n            uncond_tokens: List[str]\n            if prompt is not None and type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n            else:\n                uncond_tokens = [negative_prompt, negative_prompt_2]\n\n            negative_prompt_embeds_list = []\n            for negative_prompt, tokenizer, text_encoder in zip(uncond_tokens, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    negative_prompt = self.maybe_convert_prompt(negative_prompt, tokenizer)\n\n                max_length = prompt_embeds.shape[1]\n                uncond_input = tokenizer(\n                    negative_prompt,\n                    padding=\"max_length\",\n                    max_length=max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                negative_prompt_embeds = text_encoder(\n                    uncond_input.input_ids.to(device),\n                    output_hidden_states=True,\n                )\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                if negative_pooled_prompt_embeds is None and negative_prompt_embeds[0].ndim == 2:\n                    negative_pooled_prompt_embeds = negative_prompt_embeds[0]\n                negative_prompt_embeds = negative_prompt_embeds.hidden_states[-2]\n\n                negative_prompt_embeds_list.append(negative_prompt_embeds)\n\n            negative_prompt_embeds = torch.concat(negative_prompt_embeds_list, dim=-1)\n\n        if self.text_encoder_2 is not None:\n            prompt_embeds = prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n        else:\n            prompt_embeds = prompt_embeds.to(dtype=self.unet.dtype, device=device)\n\n        bs_embed, seq_len, _ = prompt_embeds.shape\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(bs_embed * num_images_per_prompt, seq_len, -1)\n\n        if do_classifier_free_guidance:\n            # duplicate unconditional embeddings for each generation per prompt, using mps friendly method\n            seq_len = negative_prompt_embeds.shape[1]\n\n            if self.text_encoder_2 is not None:\n                negative_prompt_embeds = negative_prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n            else:\n                negative_prompt_embeds = negative_prompt_embeds.to(dtype=self.unet.dtype, device=device)\n\n            negative_prompt_embeds = negative_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds = negative_prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n        pooled_prompt_embeds = pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n            bs_embed * num_images_per_prompt, -1\n        )\n        if do_classifier_free_guidance:\n            negative_pooled_prompt_embeds = negative_pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n                bs_embed * num_images_per_prompt, -1\n            )\n\n        if self.text_encoder is not None:\n            if isinstance(self, StableDiffusionXLLoraLoaderMixin) and USE_PEFT_BACKEND:\n                # Retrieve the original scale by scaling back the LoRA layers\n                unscale_lora_layers(self.text_encoder, lora_scale)\n\n        if self.text_encoder_2 is not None:\n            if isinstance(self, StableDiffusionXLLoraLoaderMixin) and USE_PEFT_BACKEND:\n                # Retrieve the original scale by scaling back the LoRA layers\n                unscale_lora_layers(self.text_encoder_2, lora_scale)\n\n        return prompt_embeds, negative_prompt_embeds, pooled_prompt_embeds, negative_pooled_prompt_embeds\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_extra_step_kwargs\n    def prepare_extra_step_kwargs(self, generator, eta):\n        # prepare extra kwargs for the scheduler step, since not all schedulers have the same signature\n        # eta (η) is only used with the DDIMScheduler, it will be ignored for other schedulers.\n        # eta corresponds to η in DDIM paper: https://arxiv.org/abs/2010.02502\n        # and should be between [0, 1]\n\n        accepts_eta = \"eta\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        extra_step_kwargs = {}\n        if accepts_eta:\n            extra_step_kwargs[\"eta\"] = eta\n\n        # check if the scheduler accepts generator\n        accepts_generator = \"generator\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        if accepts_generator:\n            extra_step_kwargs[\"generator\"] = generator\n        return extra_step_kwargs\n\n    def check_inputs(\n        self,\n        prompt,\n        prompt_2,\n        strength,\n        num_inference_steps,\n        callback_steps,\n        negative_prompt=None,\n        negative_prompt_2=None,\n        prompt_embeds=None,\n        negative_prompt_embeds=None,\n        ip_adapter_image=None,\n        ip_adapter_image_embeds=None,\n        callback_on_step_end_tensor_inputs=None,\n    ):\n        if strength < 0 or strength > 1:\n            raise ValueError(f\"The value of strength should in [0.0, 1.0] but is {strength}\")\n        if num_inference_steps is None:\n            raise ValueError(\"`num_inference_steps` cannot be None.\")\n        elif not isinstance(num_inference_steps, int) or num_inference_steps <= 0:\n            raise ValueError(\n                f\"`num_inference_steps` has to be a positive integer but is {num_inference_steps} of type\"\n                f\" {type(num_inference_steps)}.\"\n            )\n        if callback_steps is not None and (not isinstance(callback_steps, int) or callback_steps <= 0):\n            raise ValueError(\n                f\"`callback_steps` has to be a positive integer but is {callback_steps} of type\"\n                f\" {type(callback_steps)}.\"\n            )\n\n        if callback_on_step_end_tensor_inputs is not None and not all(\n            k in self._callback_tensor_inputs for k in callback_on_step_end_tensor_inputs\n        ):\n            raise ValueError(\n                f\"`callback_on_step_end_tensor_inputs` has to be in {self._callback_tensor_inputs}, but found {[k for k in callback_on_step_end_tensor_inputs if k not in self._callback_tensor_inputs]}\"\n            )\n\n        if prompt is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt_2 is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt_2`: {prompt_2} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n        elif prompt_2 is not None and (not isinstance(prompt_2, str) and not isinstance(prompt_2, list)):\n            raise ValueError(f\"`prompt_2` has to be of type `str` or `list` but is {type(prompt_2)}\")\n\n        if negative_prompt is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n        elif negative_prompt_2 is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt_2`: {negative_prompt_2} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n\n        if prompt_embeds is not None and negative_prompt_embeds is not None:\n            if prompt_embeds.shape != negative_prompt_embeds.shape:\n                raise ValueError(\n                    \"`prompt_embeds` and `negative_prompt_embeds` must have the same shape when passed directly, but\"\n                    f\" got: `prompt_embeds` {prompt_embeds.shape} != `negative_prompt_embeds`\"\n                    f\" {negative_prompt_embeds.shape}.\"\n                )\n\n        if ip_adapter_image is not None and ip_adapter_image_embeds is not None:\n            raise ValueError(\n                \"Provide either `ip_adapter_image` or `ip_adapter_image_embeds`. Cannot leave both `ip_adapter_image` and `ip_adapter_image_embeds` defined.\"\n            )\n\n        if ip_adapter_image_embeds is not None:\n            if not isinstance(ip_adapter_image_embeds, list):\n                raise ValueError(\n                    f\"`ip_adapter_image_embeds` has to be of type `list` but is {type(ip_adapter_image_embeds)}\"\n                )\n            elif ip_adapter_image_embeds[0].ndim not in [3, 4]:\n                raise ValueError(\n                    f\"`ip_adapter_image_embeds` has to be a list of 3D or 4D tensors but is {ip_adapter_image_embeds[0].ndim}D\"\n                )\n\n    def get_timesteps(self, num_inference_steps, strength, device, denoising_start=None):\n        # get the original timestep using init_timestep\n        if denoising_start is None:\n            init_timestep = min(int(num_inference_steps * strength), num_inference_steps)\n            t_start = max(num_inference_steps - init_timestep, 0)\n        else:\n            t_start = 0\n\n        timesteps = self.scheduler.timesteps[t_start * self.scheduler.order :]\n\n        # Strength is irrelevant if we directly request a timestep to start at;\n        # that is, strength is determined by the denoising_start instead.\n        if denoising_start is not None:\n            discrete_timestep_cutoff = int(\n                round(\n                    self.scheduler.config.num_train_timesteps\n                    - (denoising_start * self.scheduler.config.num_train_timesteps)\n                )\n            )\n\n            num_inference_steps = (timesteps < discrete_timestep_cutoff).sum().item()\n            if self.scheduler.order == 2 and num_inference_steps % 2 == 0:\n                # if the scheduler is a 2nd order scheduler we might have to do +1\n                # because `num_inference_steps` might be even given that every timestep\n                # (except the highest one) is duplicated. If `num_inference_steps` is even it would\n                # mean that we cut the timesteps in the middle of the denoising step\n                # (between 1st and 2nd derivative) which leads to incorrect results. By adding 1\n                # we ensure that the denoising process always ends after the 2nd derivate step of the scheduler\n                num_inference_steps = num_inference_steps + 1\n\n            # because t_n+1 >= t_n, we slice the timesteps starting from the end\n            timesteps = timesteps[-num_inference_steps:]\n            return timesteps, num_inference_steps\n\n        return timesteps, num_inference_steps - t_start\n\n    def prepare_latents(\n        self, image, timestep, batch_size, num_images_per_prompt, dtype, device, generator=None, add_noise=True\n    ):\n        if not isinstance(image, (torch.Tensor, Image.Image, list)):\n            raise ValueError(\n                f\"`image` has to be of type `torch.Tensor`, `PIL.Image.Image` or list but is {type(image)}\"\n            )\n\n        # Offload text encoder if `enable_model_cpu_offload` was enabled\n        if hasattr(self, \"final_offload_hook\") and self.final_offload_hook is not None:\n            self.text_encoder_2.to(\"cpu\")\n            torch.cuda.empty_cache()\n\n        image = image.to(device=device, dtype=dtype)\n\n        batch_size = batch_size * num_images_per_prompt\n\n        if image.shape[1] == 4:\n            init_latents = image\n\n        else:\n            # make sure the VAE is in float32 mode, as it overflows in float16\n            if self.vae.config.force_upcast:\n                image = image.float()\n                self.vae.to(dtype=torch.float32)\n\n            if isinstance(generator, list) and len(generator) != batch_size:\n                raise ValueError(\n                    f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                    f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n                )\n\n            elif isinstance(generator, list):\n                init_latents = [\n                    retrieve_latents(self.vae.encode(image[i : i + 1]), generator=generator[i])\n                    for i in range(batch_size)\n                ]\n                init_latents = torch.cat(init_latents, dim=0)\n            else:\n                init_latents = retrieve_latents(self.vae.encode(image), generator=generator)\n\n            if self.vae.config.force_upcast:\n                self.vae.to(dtype)\n\n            init_latents = init_latents.to(dtype)\n            init_latents = self.vae.config.scaling_factor * init_latents\n\n        if batch_size > init_latents.shape[0] and batch_size % init_latents.shape[0] == 0:\n            # expand init_latents for batch_size\n            additional_image_per_prompt = batch_size // init_latents.shape[0]\n            init_latents = torch.cat([init_latents] * additional_image_per_prompt, dim=0)\n        elif batch_size > init_latents.shape[0] and batch_size % init_latents.shape[0] != 0:\n            raise ValueError(\n                f\"Cannot duplicate `image` of batch size {init_latents.shape[0]} to {batch_size} text prompts.\"\n            )\n        else:\n            init_latents = torch.cat([init_latents], dim=0)\n\n        if add_noise:\n            shape = init_latents.shape\n            noise = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n            # get latents\n            init_latents = self.scheduler.add_noise(init_latents, noise, timestep)\n\n        latents = init_latents\n\n        return latents\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.encode_image\n    def encode_image(self, image, device, num_images_per_prompt, output_hidden_states=None):\n        dtype = next(self.image_encoder.parameters()).dtype\n\n        if not isinstance(image, torch.Tensor):\n            image = self.feature_extractor(image, return_tensors=\"pt\").pixel_values\n\n        image = image.to(device=device, dtype=dtype)\n        if output_hidden_states:\n            image_enc_hidden_states = self.image_encoder(image, output_hidden_states=True).hidden_states[-2]\n            image_enc_hidden_states = image_enc_hidden_states.repeat_interleave(num_images_per_prompt, dim=0)\n            uncond_image_enc_hidden_states = self.image_encoder(\n                torch.zeros_like(image), output_hidden_states=True\n            ).hidden_states[-2]\n            uncond_image_enc_hidden_states = uncond_image_enc_hidden_states.repeat_interleave(\n                num_images_per_prompt, dim=0\n            )\n            return image_enc_hidden_states, uncond_image_enc_hidden_states\n        else:\n            image_embeds = self.image_encoder(image).image_embeds\n            image_embeds = image_embeds.repeat_interleave(num_images_per_prompt, dim=0)\n            uncond_image_embeds = torch.zeros_like(image_embeds)\n\n            return image_embeds, uncond_image_embeds\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_ip_adapter_image_embeds\n    def prepare_ip_adapter_image_embeds(\n        self, ip_adapter_image, ip_adapter_image_embeds, device, num_images_per_prompt, do_classifier_free_guidance\n    ):\n        if ip_adapter_image_embeds is None:\n            if not isinstance(ip_adapter_image, list):\n                ip_adapter_image = [ip_adapter_image]\n\n            if len(ip_adapter_image) != len(self.unet.encoder_hid_proj.image_projection_layers):\n                raise ValueError(\n                    f\"`ip_adapter_image` must have same length as the number of IP Adapters. Got {len(ip_adapter_image)} images and {len(self.unet.encoder_hid_proj.image_projection_layers)} IP Adapters.\"\n                )\n\n            image_embeds = []\n            for single_ip_adapter_image, image_proj_layer in zip(\n                ip_adapter_image, self.unet.encoder_hid_proj.image_projection_layers\n            ):\n                output_hidden_state = not isinstance(image_proj_layer, ImageProjection)\n                single_image_embeds, single_negative_image_embeds = self.encode_image(\n                    single_ip_adapter_image, device, 1, output_hidden_state\n                )\n                single_image_embeds = torch.stack([single_image_embeds] * num_images_per_prompt, dim=0)\n                single_negative_image_embeds = torch.stack(\n                    [single_negative_image_embeds] * num_images_per_prompt, dim=0\n                )\n\n                if do_classifier_free_guidance:\n                    single_image_embeds = torch.cat([single_negative_image_embeds, single_image_embeds])\n                    single_image_embeds = single_image_embeds.to(device)\n\n                image_embeds.append(single_image_embeds)\n        else:\n            repeat_dims = [1]\n            image_embeds = []\n            for single_image_embeds in ip_adapter_image_embeds:\n                if do_classifier_free_guidance:\n                    single_negative_image_embeds, single_image_embeds = single_image_embeds.chunk(2)\n                    single_image_embeds = single_image_embeds.repeat(\n                        num_images_per_prompt, *(repeat_dims * len(single_image_embeds.shape[1:]))\n                    )\n                    single_negative_image_embeds = single_negative_image_embeds.repeat(\n                        num_images_per_prompt, *(repeat_dims * len(single_negative_image_embeds.shape[1:]))\n                    )\n                    single_image_embeds = torch.cat([single_negative_image_embeds, single_image_embeds])\n                else:\n                    single_image_embeds = single_image_embeds.repeat(\n                        num_images_per_prompt, *(repeat_dims * len(single_image_embeds.shape[1:]))\n                    )\n                image_embeds.append(single_image_embeds)\n\n        return image_embeds\n\n    def _get_add_time_ids(\n        self,\n        original_size,\n        crops_coords_top_left,\n        target_size,\n        aesthetic_score,\n        negative_aesthetic_score,\n        negative_original_size,\n        negative_crops_coords_top_left,\n        negative_target_size,\n        dtype,\n        text_encoder_projection_dim=None,\n    ):\n        if self.config.requires_aesthetics_score:\n            add_time_ids = list(original_size + crops_coords_top_left + (aesthetic_score,))\n            add_neg_time_ids = list(\n                negative_original_size + negative_crops_coords_top_left + (negative_aesthetic_score,)\n            )\n        else:\n            add_time_ids = list(original_size + crops_coords_top_left + target_size)\n            add_neg_time_ids = list(negative_original_size + crops_coords_top_left + negative_target_size)\n\n        passed_add_embed_dim = (\n            self.unet.config.addition_time_embed_dim * len(add_time_ids) + text_encoder_projection_dim\n        )\n        expected_add_embed_dim = self.unet.add_embedding.linear_1.in_features\n\n        if (\n            expected_add_embed_dim > passed_add_embed_dim\n            and (expected_add_embed_dim - passed_add_embed_dim) == self.unet.config.addition_time_embed_dim\n        ):\n            raise ValueError(\n                f\"Model expects an added time embedding vector of length {expected_add_embed_dim}, but a vector of {passed_add_embed_dim} was created. Please make sure to enable `requires_aesthetics_score` with `pipe.register_to_config(requires_aesthetics_score=True)` to make sure `aesthetic_score` {aesthetic_score} and `negative_aesthetic_score` {negative_aesthetic_score} is correctly used by the model.\"\n            )\n        elif (\n            expected_add_embed_dim < passed_add_embed_dim\n            and (passed_add_embed_dim - expected_add_embed_dim) == self.unet.config.addition_time_embed_dim\n        ):\n            raise ValueError(\n                f\"Model expects an added time embedding vector of length {expected_add_embed_dim}, but a vector of {passed_add_embed_dim} was created. Please make sure to disable `requires_aesthetics_score` with `pipe.register_to_config(requires_aesthetics_score=False)` to make sure `target_size` {target_size} is correctly used by the model.\"\n            )\n        elif expected_add_embed_dim != passed_add_embed_dim:\n            raise ValueError(\n                f\"Model expects an added time embedding vector of length {expected_add_embed_dim}, but a vector of {passed_add_embed_dim} was created. The model has an incorrect config. Please check `unet.config.time_embedding_type` and `text_encoder_2.config.projection_dim`.\"\n            )\n\n        add_time_ids = torch.tensor([add_time_ids], dtype=dtype)\n        add_neg_time_ids = torch.tensor([add_neg_time_ids], dtype=dtype)\n\n        return add_time_ids, add_neg_time_ids\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion_upscale.StableDiffusionUpscalePipeline.upcast_vae\n    def upcast_vae(self):\n        dtype = self.vae.dtype\n        self.vae.to(dtype=torch.float32)\n        use_torch_2_0_or_xformers = isinstance(\n            self.vae.decoder.mid_block.attentions[0].processor,\n            (\n                AttnProcessor2_0,\n                XFormersAttnProcessor,\n            ),\n        )\n        # if xformers or torch_2_0 is used attention block does not need\n        # to be in float32 which can save lots of memory\n        if use_torch_2_0_or_xformers:\n            self.vae.post_quant_conv.to(dtype)\n            self.vae.decoder.conv_in.to(dtype)\n            self.vae.decoder.mid_block.to(dtype)\n\n    # Copied from diffusers.pipelines.latent_consistency_models.pipeline_latent_consistency_text2img.LatentConsistencyModelPipeline.get_guidance_scale_embedding\n    def get_guidance_scale_embedding(\n        self, w: torch.Tensor, embedding_dim: int = 512, dtype: torch.dtype = torch.float32\n    ) -> torch.Tensor:\n        \"\"\"\n        See https://github.com/google-research/vdm/blob/dc27b98a554f65cdc654b800da5aa1846545d41b/model_vdm.py#L298\n\n        Args:\n            w (`torch.Tensor`):\n                Generate embedding vectors with a specified guidance scale to subsequently enrich timestep embeddings.\n            embedding_dim (`int`, *optional*, defaults to 512):\n                Dimension of the embeddings to generate.\n            dtype (`torch.dtype`, *optional*, defaults to `torch.float32`):\n                Data type of the generated embeddings.\n\n        Returns:\n            `torch.Tensor`: Embedding vectors with shape `(len(w), embedding_dim)`.\n        \"\"\"\n        assert len(w.shape) == 1\n        w = w * 1000.0\n\n        half_dim = embedding_dim // 2\n        emb = torch.log(torch.tensor(10000.0)) / (half_dim - 1)\n        emb = torch.exp(torch.arange(half_dim, dtype=dtype) * -emb)\n        emb = w.to(dtype)[:, None] * emb[None, :]\n        emb = torch.cat([torch.sin(emb), torch.cos(emb)], dim=1)\n        if embedding_dim % 2 == 1:  # zero pad\n            emb = torch.nn.functional.pad(emb, (0, 1))\n        assert emb.shape == (w.shape[0], embedding_dim)\n        return emb\n\n    @property\n    def guidance_scale(self):\n        return self._guidance_scale\n\n    @property\n    def guidance_rescale(self):\n        return self._guidance_rescale\n\n    @property\n    def clip_skip(self):\n        return self._clip_skip\n\n    # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2)\n    # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1`\n    # corresponds to doing no classifier free guidance.\n    @property\n    def do_classifier_free_guidance(self):\n        return self._guidance_scale > 1 and self.unet.config.time_cond_proj_dim is None\n\n    @property\n    def cross_attention_kwargs(self):\n        return self._cross_attention_kwargs\n\n    @property\n    def denoising_end(self):\n        return self._denoising_end\n\n    @property\n    def denoising_start(self):\n        return self._denoising_start\n\n    @property\n    def num_timesteps(self):\n        return self._num_timesteps\n\n    @property\n    def interrupt(self):\n        return self._interrupt\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        prompt_2: Optional[Union[str, List[str]]] = None,\n        image: Image.Image = None,\n        mask: Image.Image = None,\n        noise_fill_image: bool = True,  # Adds noise to the image at the masks >0.8 area.\n        strength: float = 0.3,\n        num_inference_steps: int = 50,\n        timesteps: List[int] = None,\n        denoising_start: Optional[float] = None,\n        denoising_end: Optional[float] = None,\n        guidance_scale: float = 5.0,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        negative_prompt_2: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        eta: float = 0.0,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.Tensor] = None,\n        prompt_embeds: Optional[torch.Tensor] = None,\n        negative_prompt_embeds: Optional[torch.Tensor] = None,\n        pooled_prompt_embeds: Optional[torch.Tensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.Tensor] = None,\n        ip_adapter_image: Optional[PipelineImageInput] = None,\n        ip_adapter_image_embeds: Optional[List[torch.Tensor]] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        guidance_rescale: float = 0.0,\n        original_size: Tuple[int, int] = None,\n        crops_coords_top_left: Tuple[int, int] = (0, 0),\n        target_size: Tuple[int, int] = None,\n        negative_original_size: Optional[Tuple[int, int]] = None,\n        negative_crops_coords_top_left: Tuple[int, int] = (0, 0),\n        negative_target_size: Optional[Tuple[int, int]] = None,\n        aesthetic_score: float = 6.0,\n        negative_aesthetic_score: float = 2.5,\n        clip_skip: Optional[int] = None,\n        callback_on_step_end: Optional[Callable[[int, int, Dict], None]] = None,\n        callback_on_step_end_tensor_inputs: List[str] = [\"latents\"],\n        **kwargs,\n    ):\n        r\"\"\"\n        Function invoked when calling the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide the image generation. If not defined, one has to pass `prompt_embeds`.\n                instead.\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders\n            image (`torch.Tensor` or `PIL.Image.Image` or `np.ndarray` or `List[torch.Tensor]` or `List[PIL.Image.Image]` or `List[np.ndarray]`):\n                The image(s) to modify with the pipeline.\n            strength (`float`, *optional*, defaults to 0.3):\n                Conceptually, indicates how much to transform the reference `image`. Must be between 0 and 1. `image`\n                will be used as a starting point, adding more noise to it the larger the `strength`. The number of\n                denoising steps depends on the amount of noise initially added. When `strength` is 1, added noise will\n                be maximum and the denoising process will run for the full number of iterations specified in\n                `num_inference_steps`. A value of 1, therefore, essentially ignores `image`. Note that in the case of\n                `denoising_start` being declared as an integer, the value of `strength` will be ignored.\n            num_inference_steps (`int`, *optional*, defaults to 50):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            denoising_start (`float`, *optional*):\n                When specified, indicates the fraction (between 0.0 and 1.0) of the total denoising process to be\n                bypassed before it is initiated. Consequently, the initial part of the denoising process is skipped and\n                it is assumed that the passed `image` is a partly denoised image. Note that when this is specified,\n                strength will be ignored. The `denoising_start` parameter is particularly beneficial when this pipeline\n                is integrated into a \"Mixture of Denoisers\" multi-pipeline setup, as detailed in [**Refining the Image\n                Output**](https://huggingface.co/docs/diffusers/api/pipelines/stable_diffusion/stable_diffusion_xl#refining-the-image-output).\n            denoising_end (`float`, *optional*):\n                When specified, determines the fraction (between 0.0 and 1.0) of the total denoising process to be\n                completed before it is intentionally prematurely terminated. As a result, the returned sample will\n                still retain a substantial amount of noise (ca. final 20% of timesteps still needed) and should be\n                denoised by a successor pipeline that has `denoising_start` set to 0.8 so that it only denoises the\n                final 20% of the scheduler. The denoising_end parameter should ideally be utilized when this pipeline\n                forms a part of a \"Mixture of Denoisers\" multi-pipeline setup, as elaborated in [**Refining the Image\n                Output**](https://huggingface.co/docs/diffusers/api/pipelines/stable_diffusion/stable_diffusion_xl#refining-the-image-output).\n            guidance_scale (`float`, *optional*, defaults to 7.5):\n                Guidance scale as defined in [Classifier-Free Diffusion Guidance](https://arxiv.org/abs/2207.12598).\n                `guidance_scale` is defined as `w` of equation 2. of [Imagen\n                Paper](https://arxiv.org/pdf/2205.11487.pdf). Guidance scale is enabled by setting `guidance_scale >\n                1`. Higher guidance scale encourages to generate images that are closely linked to the text `prompt`,\n                usually at the expense of lower image quality.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            eta (`float`, *optional*, defaults to 0.0):\n                Corresponds to parameter eta (η) in the DDIM paper: https://arxiv.org/abs/2010.02502. Only applies to\n                [`schedulers.DDIMScheduler`], will be ignored for others.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                One or a list of [torch generator(s)](https://pytorch.org/docs/stable/generated/torch.Generator.html)\n                to make generation deterministic.\n            latents (`torch.Tensor`, *optional*):\n                Pre-generated noisy latents, sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor will ge generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.Tensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            ip_adapter_image: (`PipelineImageInput`, *optional*): Optional image input to work with IP Adapters.\n            ip_adapter_image_embeds (`List[torch.Tensor]`, *optional*):\n                Pre-generated image embeddings for IP-Adapter. It should be a list of length same as number of IP-adapters.\n                Each element should be a tensor of shape `(batch_size, num_images, emb_dim)`. It should contain the negative image embedding\n                if `do_classifier_free_guidance` is set to `True`.\n                If not provided, embeddings are computed from the `ip_adapter_image` input argument.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generate image. Choose between\n                [PIL](https://pillow.readthedocs.io/en/stable/): `PIL.Image.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.stable_diffusion.StableDiffusionXLPipelineOutput`] instead of a\n                plain tuple.\n            callback (`Callable`, *optional*):\n                A function that will be called every `callback_steps` steps during inference. The function will be\n                called with the following arguments: `callback(step: int, timestep: int, latents: torch.Tensor)`.\n            callback_steps (`int`, *optional*, defaults to 1):\n                The frequency at which the `callback` function will be called. If not specified, the callback will be\n                called at every step.\n            cross_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.cross_attention](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/cross_attention.py).\n            guidance_rescale (`float`, *optional*, defaults to 0.7):\n                Guidance rescale factor proposed by [Common Diffusion Noise Schedules and Sample Steps are\n                Flawed](https://arxiv.org/pdf/2305.08891.pdf) `guidance_scale` is defined as `φ` in equation 16. of\n                [Common Diffusion Noise Schedules and Sample Steps are Flawed](https://arxiv.org/pdf/2305.08891.pdf).\n                Guidance rescale factor should fix overexposure when using zero terminal SNR.\n            original_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                If `original_size` is not the same as `target_size` the image will appear to be down- or upsampled.\n                `original_size` defaults to `(width, height)` if not specified. Part of SDXL's micro-conditioning as\n                explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            crops_coords_top_left (`Tuple[int]`, *optional*, defaults to (0, 0)):\n                `crops_coords_top_left` can be used to generate an image that appears to be \"cropped\" from the position\n                `crops_coords_top_left` downwards. Favorable, well-centered images are usually achieved by setting\n                `crops_coords_top_left` to (0, 0). Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            target_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                For most cases, `target_size` should be set to the desired height and width of the generated image. If\n                not specified it will default to `(width, height)`. Part of SDXL's micro-conditioning as explained in\n                section 2.2 of [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            aesthetic_score (`float`, *optional*, defaults to 6.0):\n                Used to simulate an aesthetic score of the generated image by influencing the positive text condition.\n                Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            negative_aesthetic_score (`float`, *optional*, defaults to 2.5):\n                Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952). Can be used to\n                simulate an aesthetic score of the generated image by influencing the negative text condition.\n\n        Examples:\n\n        Returns:\n            [`~pipelines.stable_diffusion.StableDiffusionXLPipelineOutput`] or `tuple`:\n            [`~pipelines.stable_diffusion.StableDiffusionXLPipelineOutput`] if `return_dict` is True, otherwise a\n            `tuple. When returning a tuple, the first element is a list with the generated images.\n        \"\"\"\n\n        callback = kwargs.pop(\"callback\", None)\n        callback_steps = kwargs.pop(\"callback_steps\", None)\n\n        if callback is not None:\n            deprecate(\n                \"callback\",\n                \"1.0.0\",\n                \"Passing `callback` as an input argument to `__call__` is deprecated, consider use `callback_on_step_end`\",\n            )\n        if callback_steps is not None:\n            deprecate(\n                \"callback_steps\",\n                \"1.0.0\",\n                \"Passing `callback_steps` as an input argument to `__call__` is deprecated, consider use `callback_on_step_end`\",\n            )\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            prompt_2,\n            strength,\n            num_inference_steps,\n            callback_steps,\n            negative_prompt,\n            negative_prompt_2,\n            prompt_embeds,\n            negative_prompt_embeds,\n            ip_adapter_image,\n            ip_adapter_image_embeds,\n            callback_on_step_end_tensor_inputs,\n        )\n\n        self._guidance_scale = guidance_scale\n        self._guidance_rescale = guidance_rescale\n        self._clip_skip = clip_skip\n        self._cross_attention_kwargs = cross_attention_kwargs\n        self._denoising_end = denoising_end\n        self._denoising_start = denoising_start\n        self._interrupt = False\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        device = self._execution_device\n\n        # 3. Encode input prompt\n        text_encoder_lora_scale = (\n            cross_attention_kwargs.get(\"scale\", None) if cross_attention_kwargs is not None else None\n        )\n        (\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n        ) = self.encode_prompt(\n            prompt=prompt,\n            prompt_2=prompt_2,\n            device=device,\n            num_images_per_prompt=num_images_per_prompt,\n            do_classifier_free_guidance=self.do_classifier_free_guidance,\n            negative_prompt=negative_prompt,\n            negative_prompt_2=negative_prompt_2,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            negative_pooled_prompt_embeds=negative_pooled_prompt_embeds,\n            lora_scale=text_encoder_lora_scale,\n        )\n\n        # 4. PREPARE TIMESTEPS\n        def denoising_value_valid(dnv):\n            return isinstance(dnv, float) and 0 < dnv < 1\n\n        timesteps, num_inference_steps = retrieve_timesteps(self.scheduler, num_inference_steps, device, timesteps)\n\n        timesteps, num_inference_steps = self.get_timesteps(\n            num_inference_steps,\n            strength,\n            device,\n            denoising_start=self.denoising_start if denoising_value_valid(self.denoising_start) else None,\n        )\n        latent_timestep = timesteps[:1].repeat(batch_size * num_images_per_prompt)\n\n        add_noise = True if denoising_start is None else False\n\n\n\n        # --------------------------------------------\n        # IMAGE PREPARATION UTILITIES\n        # --------------------------------------------\n\n        def fbm(x, y, scale, octaves, lacunarity, gain):\n            \"\"\"\n            Fractal Brownian Motion (fbm) noise generator.\n            Combines multiple octaves of Perlin noise.\n            \"\"\"\n            total = 0.0\n            amplitude = 1.0\n            frequency = 1.0\n            for _ in range(octaves):\n                total += amplitude * pnoise2(x * frequency / scale, y * frequency / scale)\n                amplitude *= gain\n                frequency *= lacunarity\n            return total\n\n        def pattern(x, y, scale, octaves, lacunarity, gain):\n            \"\"\"\n            Domain-warped pattern using fbm.\n            Warps coordinates before applying final fbm call.\n            \"\"\"\n            q0 = fbm(x, y, scale, octaves, lacunarity, gain)\n            q1 = fbm(x + 5.2, y + 1.3, scale, octaves, lacunarity, gain)\n            return fbm(x + 80.0 * q0, y + 80.0 * q1, scale, octaves, lacunarity, gain)\n\n        def generate_pattern_noise(size=(512, 512), scale=80, octaves=5, lacunarity=2.0, gain=0.5,\n                                saturation=1.5, brightness=1, seed=None):\n            \"\"\"\n            Generate colored noise image using domain-warped fractal noise and random offsets.\n            \"\"\"\n            width, height = size\n            img = np.zeros((height, width, 3), dtype=np.uint8)\n            rng = random.Random(seed)\n            offset_x = rng.uniform(-1000, 1000)\n            offset_y = rng.uniform(-1000, 1000)\n\n            for i in range(height):\n                for j in range(width):\n                    x = i + offset_x\n                    y = j + offset_y\n\n                    r_val = pattern(x, y, scale, octaves, lacunarity, gain)\n                    g_val = pattern(x + 100, y + 100, scale, octaves, lacunarity, gain)\n                    b_val = pattern(x + 200, y + 200, scale, octaves, lacunarity, gain)\n\n                    r, g, b = [(val + 1) / 2 for val in (r_val, g_val, b_val)]\n                    avg = (r + g + b) / 3\n\n                    r = np.clip(avg + (r - avg) * saturation, 0, 1) * brightness\n                    g = np.clip(avg + (g - avg) * saturation, 0, 1) * brightness\n                    b = np.clip(avg + (b - avg) * saturation, 0, 1) * brightness\n\n                    img[i, j] = [int(np.clip(r, 0, 1) * 255), int(np.clip(g, 0, 1) * 255), int(np.clip(b, 0, 1) * 255)]\n\n            image = Image.fromarray(img).filter(ImageFilter.GaussianBlur(radius=2))\n            return image\n\n        def measure_fade_pixels(mask_np):\n            \"\"\"\n            Estimate edge fade width from a grayscale mask using gradient analysis.\n            Attempts measurement from top, right, bottom, and left.\n            Returns fallback value if no valid result is found.\n            \"\"\"\n            h, w = mask_np.shape\n\n            def measure_line(line):\n                grad = np.gradient(line)\n                max_grad = np.max(grad)\n                if max_grad == 0:\n                    return None\n                half_max = max_grad / 2.0\n                indices = np.where(grad >= half_max)[0]\n                if len(indices) == 0:\n                    return None\n                return (indices[-1] - indices[0]) / 2.0\n\n            lines = [\n                mask_np[:, w // 2],                   # Top\n                mask_np[h // 2, ::-1],                # Right\n                mask_np[::-1, w // 2],                # Bottom\n                mask_np[h // 2, :]                    # Left\n            ]\n\n            for line in lines:\n                result = measure_line(line)\n                if result and result > 0:\n                    return result\n\n            return 16.0  # Fallback\n\n        def compute_fade_mask(binary_mask, fade_pixels=16):\n            \"\"\"\n            Compute a smooth fade-out mask from a binary mask using distance transform.\n            Pixels within `fade_pixels` of the edge get values between 0 and 1.\n            \"\"\"\n            mask_uint8 = (binary_mask * 255).astype(np.uint8)\n            dist = cv2.distanceTransform(mask_uint8, distanceType=cv2.DIST_L2, maskSize=5)\n            return np.clip(dist / fade_pixels, 0, 1)\n\n        def preprocess_image(image, mask, noise_fill_image=True, seed=None):\n            \"\"\"\n            Preprocesses image with optional noise-based fill on masked areas.\n            Includes smoothing transitions and standard cropping and normalization.\n            \"\"\"\n            image = image.convert(\"RGB\")\n\n            if noise_fill_image:\n                mask = mask.convert(\"L\").resize(image.size, Image.Resampling.NEAREST)\n                mask_blur = np.array(mask, dtype=np.float32) / 255.0\n                fade_pixels = measure_fade_pixels(mask_blur)\n                binary_mask = (mask_blur > 0.5).astype(np.float32)\n\n                noise_img = generate_pattern_noise(size=image.size, seed=seed)\n                image_np = np.array(image)\n                noise_np = np.array(noise_img)\n\n                fade_mask = compute_fade_mask(binary_mask, fade_pixels=fade_pixels)\n                fade_mask = binary_mask * fade_mask\n                fade_mask_3c = np.repeat(fade_mask[:, :, None], 3, axis=2)\n\n                alpha = 0.75\n                blended = (1 - alpha * fade_mask_3c) * image_np + alpha * fade_mask_3c * noise_np\n                image = Image.fromarray(blended.astype(np.uint8))\n                image.save(\"noised_image.png\")\n\n            image = transforms.CenterCrop((image.size[1] // 64 * 64, image.size[0] // 64 * 64))(image)\n            image = transforms.ToTensor()(image)\n            image = image * 2 - 1  # Normalize to [-1, 1]\n            return image.unsqueeze(0)\n\n        def preprocess_map(map):\n            \"\"\"\n            Convert mask to normalized, inverted grayscale tensor.\n            Applies value remapping and center crop.\n            \"\"\"\n            map = map.convert(\"L\")\n            map = transforms.CenterCrop((map.size[1] // 64 * 64, map.size[0] // 64 * 64))(map)\n            map = transforms.ToTensor()(map)\n            map = (map - 0.05) / (0.95 - 0.05)\n            map = torch.clamp(map, 0.0, 1.0)\n            return 1.0 - map\n\n        # --------------------------------------------\n        # APPLY PREPROCESSING\n        # --------------------------------------------\n\n        # Prepare original image with optional noise fill\n        original_image_tensor = preprocess_image(image, mask, noise_fill_image=noise_fill_image).to(device)\n        image = original_image_tensor.clone().to(device)\n\n        # Prepare mask as rescaled tensor map\n        map = preprocess_map(mask).to(device)\n        map = torchvision.transforms.Resize(\n            tuple(s // self.vae_scale_factor for s in original_image_tensor.shape[2:]), antialias=None\n        )(map)\n\n        # Generate latent tensor with noise\n        original_with_noise = self.prepare_latents(\n            original_image_tensor, timesteps, batch_size, num_images_per_prompt, prompt_embeds.dtype, device, generator\n        )\n\n        # Create thresholded masks over timesteps\n        thresholds = torch.arange(num_inference_steps, dtype=map.dtype) / num_inference_steps\n        thresholds = thresholds.unsqueeze(1).unsqueeze(1).to(device)\n        masks = map > (thresholds + (denoising_start or 0))\n\n\n\n        # 6. Prepare latent variables.\n        latents = self.prepare_latents(\n            image,\n            latent_timestep,\n            batch_size,\n            num_images_per_prompt,\n            prompt_embeds.dtype,\n            device,\n            generator,\n            add_noise,\n        )\n\n        # 7. Prepare extra step kwargs.\n        extra_step_kwargs = self.prepare_extra_step_kwargs(generator, eta)\n\n        height, width = latents.shape[-2:]\n        height = height * self.vae_scale_factor\n        width = width * self.vae_scale_factor\n\n        original_size = original_size or (height, width)\n        target_size = target_size or (height, width)\n\n        # 8. Prepare added time ids & embeddings\n        if negative_original_size is None:\n            negative_original_size = original_size\n        if negative_target_size is None:\n            negative_target_size = target_size\n\n        add_text_embeds = pooled_prompt_embeds\n        if self.text_encoder_2 is None:\n            text_encoder_projection_dim = int(pooled_prompt_embeds.shape[-1])\n        else:\n            text_encoder_projection_dim = self.text_encoder_2.config.projection_dim\n\n        add_time_ids, add_neg_time_ids = self._get_add_time_ids(\n            original_size,\n            crops_coords_top_left,\n            target_size,\n            aesthetic_score,\n            negative_aesthetic_score,\n            negative_original_size,\n            negative_crops_coords_top_left,\n            negative_target_size,\n            dtype=prompt_embeds.dtype,\n            text_encoder_projection_dim=text_encoder_projection_dim,\n        )\n        add_time_ids = add_time_ids.repeat(batch_size * num_images_per_prompt, 1)\n\n        if self.do_classifier_free_guidance:\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds], dim=0)\n            add_text_embeds = torch.cat([negative_pooled_prompt_embeds, add_text_embeds], dim=0)\n            add_neg_time_ids = add_neg_time_ids.repeat(batch_size * num_images_per_prompt, 1)\n            add_time_ids = torch.cat([add_neg_time_ids, add_time_ids], dim=0)\n\n        prompt_embeds = prompt_embeds.to(device)\n        add_text_embeds = add_text_embeds.to(device)\n        add_time_ids = add_time_ids.to(device)\n\n        if ip_adapter_image is not None or ip_adapter_image_embeds is not None:\n            image_embeds = self.prepare_ip_adapter_image_embeds(\n                ip_adapter_image,\n                ip_adapter_image_embeds,\n                device,\n                batch_size * num_images_per_prompt,\n                self.do_classifier_free_guidance,\n            )\n\n        # 9. Denoising loop\n        num_warmup_steps = max(len(timesteps) - num_inference_steps * self.scheduler.order, 0)\n\n        # 9.1 Apply denoising_end\n        if (\n            denoising_end is not None\n            and denoising_start is not None\n            and denoising_value_valid(denoising_end)\n            and denoising_value_valid(denoising_start)\n            and denoising_start >= denoising_end\n        ):\n            raise ValueError(f\"`denoising_start`: {denoising_start} cannot be larger than or equal to `denoising_end`: {denoising_end} when using type float.\"\n            )\n        elif denoising_end is not None and denoising_value_valid(denoising_end):\n            discrete_timestep_cutoff = int(\n                round(\n                    self.scheduler.config.num_train_timesteps\n                    - (denoising_end * self.scheduler.config.num_train_timesteps)\n                )\n            )\n            num_inference_steps = len(list(filter(lambda ts: ts >= discrete_timestep_cutoff, timesteps)))\n            timesteps = timesteps[:num_inference_steps]\n\n        # 9.2 Optionally get Guidance Scale Embedding\n        timestep_cond = None\n        if self.unet.config.time_cond_proj_dim is not None:\n            guidance_scale_tensor = torch.tensor(self.guidance_scale - 1).repeat(batch_size * num_images_per_prompt)\n            timestep_cond = self.get_guidance_scale_embedding(\n                guidance_scale_tensor, embedding_dim=self.unet.config.time_cond_proj_dim\n            ).to(device=device, dtype=latents.dtype)\n\n        self._num_timesteps = len(timesteps)\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                if self.interrupt:\n                    continue\n\n                # diff diff\n                if i == 0 and denoising_start is None:\n                    latents = original_with_noise[:1]\n                else:\n                    mask = masks[i].unsqueeze(0)\n                    # cast mask to the same type as latents etc\n                    mask = mask.to(latents.dtype)\n                    mask = mask.unsqueeze(1)  # fit shape\n                    latents = original_with_noise[i] * mask + latents * (1 - mask)\n                # end diff diff\n\n                # expand the latents if we are doing classifier free guidance\n                latent_model_input = torch.cat([latents] * 2) if self.do_classifier_free_guidance else latents\n\n                latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n                # predict the noise residual\n                added_cond_kwargs = {\"text_embeds\": add_text_embeds, \"time_ids\": add_time_ids}\n                if ip_adapter_image is not None or ip_adapter_image_embeds is not None:\n                    added_cond_kwargs[\"image_embeds\"] = image_embeds\n                noise_pred = self.unet(\n                    latent_model_input,\n                    t,\n                    encoder_hidden_states=prompt_embeds,\n                    timestep_cond=timestep_cond,\n                    cross_attention_kwargs=cross_attention_kwargs,\n                    added_cond_kwargs=added_cond_kwargs,\n                    return_dict=False,\n                )[0]\n\n                # perform guidance\n                if self.do_classifier_free_guidance:\n                    noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                    noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                if self.do_classifier_free_guidance and guidance_rescale > 0.0:\n                    # Based on 3.4. in https://arxiv.org/pdf/2305.08891.pdf\n                    noise_pred = rescale_noise_cfg(noise_pred, noise_pred_text, guidance_rescale=guidance_rescale)\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents_dtype = latents.dtype\n                latents = self.scheduler.step(noise_pred, t, latents, **extra_step_kwargs, return_dict=False)[0]\n                if latents.dtype != latents_dtype:\n                    if torch.backends.mps.is_available():\n                        # some platforms (eg. apple mps) misbehave due to a pytorch bug: https://github.com/pytorch/pytorch/pull/99272\n                        latents = latents.to(latents_dtype)\n                    else:\n                        raise ValueError(\n                            \"For the given accelerator, there seems to be an unexpected problem in type-casting. Please file an issue on the PyTorch GitHub repository. See also: https://github.com/huggingface/diffusers/pull/7446/.\"\n                        )\n\n                if callback_on_step_end is not None:\n                    callback_kwargs = {}\n                    for k in callback_on_step_end_tensor_inputs:\n                        callback_kwargs[k] = locals()[k]\n                    callback_outputs = callback_on_step_end(self, i, t, callback_kwargs)\n\n                    latents = callback_outputs.pop(\"latents\", latents)\n                    prompt_embeds = callback_outputs.pop(\"prompt_embeds\", prompt_embeds)\n                    negative_prompt_embeds = callback_outputs.pop(\"negative_prompt_embeds\", negative_prompt_embeds)\n                    add_text_embeds = callback_outputs.pop(\"add_text_embeds\", add_text_embeds)\n                    negative_pooled_prompt_embeds = callback_outputs.pop(\n                        \"negative_pooled_prompt_embeds\", negative_pooled_prompt_embeds\n                    )\n                    add_time_ids = callback_outputs.pop(\"add_time_ids\", add_time_ids)\n                    add_neg_time_ids = callback_outputs.pop(\"add_neg_time_ids\", add_neg_time_ids)\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n                    if callback is not None and i % callback_steps == 0:\n                        step_idx = i // getattr(self.scheduler, \"order\", 1)\n                        callback(step_idx, t, latents)\n\n                if XLA_AVAILABLE:\n                    xm.mark_step()\n\n        if output_type != \"latent\":\n            # make sure the VAE is in float32 mode, as it overflows in float16\n            needs_upcasting = self.vae.dtype == torch.float16 and self.vae.config.force_upcast\n\n            if needs_upcasting:\n                self.upcast_vae()\n                latents = latents.to(next(iter(self.vae.post_quant_conv.parameters())).dtype)\n            elif latents.dtype != self.vae.dtype:\n                if torch.backends.mps.is_available():\n                    # some platforms (eg. apple mps) misbehave due to a pytorch bug: https://github.com/pytorch/pytorch/pull/99272\n                    self.vae = self.vae.to(latents.dtype)\n                else:\n                    raise ValueError(\n                        \"For the given accelerator, there seems to be an unexpected problem in type-casting. Please file an issue on the PyTorch GitHub repository. See also: https://github.com/huggingface/diffusers/pull/7446/.\"\n                    )\n            # unscale/denormalize the latents\n            # denormalize with the mean and std if available and not None\n            has_latents_mean = hasattr(self.vae.config, \"latents_mean\") and self.vae.config.latents_mean is not None\n            has_latents_std = hasattr(self.vae.config, \"latents_std\") and self.vae.config.latents_std is not None\n            if has_latents_mean and has_latents_std:\n                latents_mean = (\n                    torch.tensor(self.vae.config.latents_mean).view(1, 4, 1, 1).to(latents.device, latents.dtype)\n                )\n                latents_std = (\n                    torch.tensor(self.vae.config.latents_std).view(1, 4, 1, 1).to(latents.device, latents.dtype)\n                )\n                latents = latents * latents_std / self.vae.config.scaling_factor + latents_mean\n            else:\n                latents = latents / self.vae.config.scaling_factor\n\n            image = self.vae.decode(latents, return_dict=False)[0]\n\n            # cast back to fp16 if needed\n            if needs_upcasting:\n                self.vae.to(dtype=torch.float16)\n        else:\n            image = latents\n\n        # apply watermark if available\n        if self.watermark is not None:\n            image = self.watermark.apply_watermark(image)\n\n        image = self.image_processor.postprocess(image, output_type=output_type)\n\n        # Offload all models\n        self.maybe_free_model_hooks()\n\n        if not return_dict:\n            return (image,)\n\n        return StableDiffusionXLPipelineOutput(images=image)\n\n### pipeline end\n\n### script start\n\nimport gradio as gr\nfrom installer import install\nfrom modules import shared, scripts_manager, processing, sd_models\n\n\nclass Script(scripts_manager.Script):\n    orig_pipeline = None\n\n    def title(self):\n        return 'SoftFill: Inpaint with Differential diffusion'\n\n    def show(self, is_img2img):\n        return is_img2img\n\n    def ui(self, _is_img2img):\n        with gr.Row():\n            gr.HTML('<a href=\"https://github.com/zacheryvaughn/softfill-pipelines\">&nbsp SoftFill: Inpaint with Differential diffusion</a><br>')\n        with gr.Row():\n            enabled = gr.Checkbox(label='Enabled', value=True)\n        with gr.Row():\n            noise = gr.Checkbox(label='Apply noise', value=True)\n            strength = gr.Slider(minimum=0.0, maximum=1.0, value=0.65, label='Fill strength')\n        return enabled, noise, strength\n\n    def run(self, p: processing.StableDiffusionProcessingImg2Img, enabled, noise, strength): # pylint: disable=arguments-differ\n        if not enabled:\n            return\n        if shared.sd_model_type not in ['sdxl']:\n            shared.log.error(f'SoftFill: incorrect base model: {shared.sd_model.__class__.__name__}')\n            return\n        if not hasattr(p, 'init_images') or len(p.init_images) == 0:\n            shared.log.error('SoftFill: no input image')\n            return\n        if not hasattr(p, 'mask') or p.mask is None:\n            shared.log.error('SoftFill: no input mask')\n            return\n\n        try:\n            global pnoise2 # pylint: disable=global-statement\n            install('noise')\n            import noise as noise_module\n            pnoise2 = noise_module.pnoise2\n        except Exception as e:\n            shared.log.error(f'SoftFill: {e}')\n            return\n\n        self.orig_pipeline = shared.sd_model\n        try:\n            shared.sd_model = sd_models.switch_pipe(StableDiffusionXLSoftFillPipeline, shared.sd_model)\n            if shared.sd_model.__class__.__name__ not in sd_models.pipe_switch_task_exclude:\n                sd_models.pipe_switch_task_exclude.append(shared.sd_model.__class__.__name__)\n        except Exception as e:\n            shared.log.error(f'SoftFill: {e}')\n            shared.sd_model = self.orig_pipeline\n            self.orig_pipeline = None\n            return\n\n        p.task_args['noise_fill_image'] = noise\n        p.task_args['strength'] = strength\n        p.task_args['image'] = p.init_images[0]\n        p.task_args['mask'] = p.mask\n        shared.log.info(f'SoftFill: cls={shared.sd_model.__class__.__name__} {p.task_args}')\n\n    def after(self, p: processing.StableDiffusionProcessingImg2Img, *args, **kwargs): # pylint: disable=unused-argument\n        if self.orig_pipeline is not None:\n            shared.sd_model = self.orig_pipeline\n            self.orig_pipeline = None\n"
  },
  {
    "path": "scripts/stablevideodiffusion.py",
    "content": "\"\"\"\nAdditional params for StableVideoDiffusion\n\"\"\"\n\nimport os\nimport torch\nimport gradio as gr\nfrom modules import scripts_manager, processing, shared, sd_models, images, modelloader\n\n\nmodels = {\n    \"SVD 1.0\": \"stabilityai/stable-video-diffusion-img2vid\",\n    \"SVD XT 1.0\": \"stabilityai/stable-video-diffusion-img2vid-xt\",\n    \"SVD XT 1.1\": \"stabilityai/stable-video-diffusion-img2vid-xt-1-1\",\n}\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return 'Video: Stable Video Diffusion'\n\n    def show(self, is_img2img):\n        return is_img2img\n\n    # return signature is array of gradio components\n    def ui(self, is_img2img):\n        with gr.Row():\n            gr.HTML('<a href=\"https://huggingface.co/stabilityai/stable-video-diffusion-img2vid\">&nbsp Stable Video Diffusion</a><br>')\n        with gr.Row():\n            model = gr.Dropdown(label='Model', choices=list(models), value=list(models)[0])\n        with gr.Row():\n            num_frames = gr.Slider(label='Frames', minimum=1, maximum=50, step=1, value=14)\n            min_guidance_scale = gr.Slider(label='Min guidance', minimum=0.0, maximum=10.0, step=0.1, value=1.0)\n            max_guidance_scale = gr.Slider(label='Max guidance', minimum=0.0, maximum=10.0, step=0.1, value=3.0)\n        with gr.Row():\n            decode_chunk_size = gr.Slider(label='Decode chunks', minimum=1, maximum=25, step=1, value=1)\n            motion_bucket_id = gr.Slider(label='Motion level', minimum=0, maximum=1, step=0.05, value=0.5)\n            noise_aug_strength = gr.Slider(label='Noise strength', minimum=0.0, maximum=1.0, step=0.01, value=0.1)\n        with gr.Row():\n            override_resolution = gr.Checkbox(label='Override resolution', value=True)\n        with gr.Row():\n            from modules.ui_sections import create_video_inputs\n            video_type, duration, gif_loop, mp4_pad, mp4_interpolate = create_video_inputs(tab='img2img' if is_img2img else 'txt2img')\n        return [model, num_frames, override_resolution, min_guidance_scale, max_guidance_scale, decode_chunk_size, motion_bucket_id, noise_aug_strength, video_type, duration, gif_loop, mp4_pad, mp4_interpolate]\n\n    def _encode_image(self, image: torch.Tensor, device, num_videos_per_prompt, do_classifier_free_guidance):\n        image = image.to(device=device, dtype=shared.sd_model.vae.dtype)\n        shared.log.debug(f'Video encode: type=svd input={image.shape} dtype={image.dtype} device={image.device}')\n        image_latents = shared.sd_model.vae.encode(image).latent_dist.mode()\n        image_latents = image_latents.repeat(num_videos_per_prompt, 1, 1, 1)\n        if do_classifier_free_guidance:\n            negative_image_latents = torch.zeros_like(image_latents)\n            image_latents = torch.cat([negative_image_latents, image_latents])\n        return image_latents\n\n    def _decode_latents(self, latents: torch.Tensor, num_frames: int, decode_chunk_size: int = 14):\n        shared.log.debug(f'Video decode: type=svd input={latents.shape} dtype={latents.dtype} device={latents.device} chunk={decode_chunk_size} frames={num_frames}')\n        latents = latents.flatten(0, 1)\n        latents = 1 / shared.sd_model.vae.config.scaling_factor * latents\n        frames = []\n        for i in range(0, latents.shape[0], decode_chunk_size):\n            num_frames_in = latents[i : i + decode_chunk_size].shape[0]\n            decode_kwargs = { \"num_frames\": num_frames_in }\n            frame = shared.sd_model.vae.decode(latents[i : i + decode_chunk_size], **decode_kwargs).sample\n            frames.append(frame)\n        frames = torch.cat(frames, dim=0)\n        frames = frames.reshape(-1, num_frames, *frames.shape[1:]).permute(0, 2, 1, 3, 4)\n        frames = frames.float()\n        return frames\n\n    def run(self, p: processing.StableDiffusionProcessing, model, num_frames, override_resolution, min_guidance_scale, max_guidance_scale, decode_chunk_size, motion_bucket_id, noise_aug_strength, video_type, duration, gif_loop, mp4_pad, mp4_interpolate): # pylint: disable=arguments-differ, unused-argument\n        image = getattr(p, 'init_images', None)\n        if image is None or len(image) == 0:\n            shared.log.error('SVD: no init_images')\n            return None\n        else:\n            image = image[0]\n\n        # load/download model on-demand\n        model_path = models[model]\n        model_name = os.path.basename(model_path)\n        has_checkpoint = sd_models.get_closest_checkpoint_match(model_path)\n        if has_checkpoint is None:\n            shared.log.error(f'SVD: no checkpoint for {model_name}')\n            modelloader.load_reference(model_path, variant='fp16')\n        c = shared.sd_model.__class__.__name__\n        model_loaded = shared.sd_model.sd_checkpoint_info.model_name if shared.sd_loaded else None\n        if model_name != model_loaded or c != 'StableVideoDiffusionPipeline':\n            from diffusers import StableVideoDiffusionPipeline # pylint: disable=unused-import\n            shared.opts.sd_model_checkpoint = model_path\n            sd_models.reload_model_weights()\n            shared.sd_model._encode_vae_image = self._encode_image # pylint: disable=protected-access\n            shared.sd_model.decode_latents = self._decode_latents # pylint: disable=protected-access\n\n        # set params\n        if override_resolution:\n            p.width = 1024\n            p.height = 576\n            image = images.resize_image(resize_mode=2, im=image, width=p.width, height=p.height, upscaler_name=None, output_type='pil')\n        else:\n            p.width = image.width\n            p.height = image.height\n        p.ops.append('video')\n        p.do_not_save_grid = True\n        p.init_images = [image]\n        p.sampler_name = 'Default' # svd does not support non-default sampler\n        p.task_args['output_type'] = 'pil'\n        p.task_args['generator'] = torch.manual_seed(p.seed) # svd does not support gpu based generator\n        p.task_args['image'] = image\n        p.task_args['width'] = p.width\n        p.task_args['height'] = p.height\n        p.task_args['num_frames'] = num_frames\n        p.task_args['decode_chunk_size'] = decode_chunk_size\n        p.task_args['motion_bucket_id'] = round(255 * motion_bucket_id)\n        p.task_args['noise_aug_strength'] = noise_aug_strength\n        p.task_args['num_inference_steps'] = p.steps\n        p.task_args['min_guidance_scale'] = min_guidance_scale\n        p.task_args['max_guidance_scale'] = max_guidance_scale\n        shared.log.debug(f'SVD: args={p.task_args}')\n\n        # run processing\n        processed = processing.process_images(p)\n        if video_type != 'None':\n            images.save_video(p, filename=None, images=processed.images, video_type=video_type, duration=duration, loop=gif_loop, pad=mp4_pad, interpolate=mp4_interpolate)\n        return processed\n"
  },
  {
    "path": "scripts/style_aligned/inversion.py",
    "content": "# Copyright 2023 Google LLC\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#      http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\n\nfrom __future__ import annotations\nfrom typing import Callable, TYPE_CHECKING\nfrom diffusers import StableDiffusionXLPipeline\nimport torch\nfrom tqdm import tqdm\nif TYPE_CHECKING:\n    import numpy as np\n\n\nT = torch.Tensor\nTN = T\nInversionCallback = Callable[[StableDiffusionXLPipeline, int, T, dict[str, T]], dict[str, T]]\n\n\ndef _get_text_embeddings(prompt: str, tokenizer, text_encoder, device):\n    # Tokenize text and get embeddings\n    text_inputs = tokenizer(prompt, padding='max_length', max_length=tokenizer.model_max_length, truncation=True, return_tensors='pt')\n    text_input_ids = text_inputs.input_ids\n\n    with torch.no_grad():\n        prompt_embeds = text_encoder(\n            text_input_ids.to(device),\n            output_hidden_states=True,\n        )\n\n    pooled_prompt_embeds = prompt_embeds[0]\n    prompt_embeds = prompt_embeds.hidden_states[-2]\n    if prompt == '':\n        negative_prompt_embeds = torch.zeros_like(prompt_embeds)\n        negative_pooled_prompt_embeds = torch.zeros_like(pooled_prompt_embeds)\n        return negative_prompt_embeds, negative_pooled_prompt_embeds\n    return prompt_embeds, pooled_prompt_embeds\n\n\ndef _encode_text_sdxl(model: StableDiffusionXLPipeline, prompt: str) -> tuple[dict[str, T], T]:\n    device = model._execution_device # pylint: disable=protected-access\n    prompt_embeds, _pooled_prompt_embeds, = _get_text_embeddings(prompt, model.tokenizer, model.text_encoder, device) # pylint: disable=unused-variable\n    prompt_embeds_2, pooled_prompt_embeds2, = _get_text_embeddings( prompt, model.tokenizer_2, model.text_encoder_2, device)\n    prompt_embeds = torch.cat((prompt_embeds, prompt_embeds_2), dim=-1)\n    text_encoder_projection_dim = model.text_encoder_2.config.projection_dim\n    add_time_ids = model._get_add_time_ids((1024, 1024), (0, 0), (1024, 1024), model.text_encoder.dtype, # pylint: disable=protected-access\n                                           text_encoder_projection_dim).to(device)\n    added_cond_kwargs = {\"text_embeds\": pooled_prompt_embeds2, \"time_ids\": add_time_ids}\n    return added_cond_kwargs, prompt_embeds\n\n\ndef _encode_text_sdxl_with_negative(model: StableDiffusionXLPipeline, prompt: str) -> tuple[dict[str, T], T]:\n    added_cond_kwargs, prompt_embeds = _encode_text_sdxl(model, prompt)\n    added_cond_kwargs_uncond, prompt_embeds_uncond = _encode_text_sdxl(model, \"\")\n    prompt_embeds = torch.cat((prompt_embeds_uncond, prompt_embeds, ))\n    added_cond_kwargs = {\"text_embeds\": torch.cat((added_cond_kwargs_uncond[\"text_embeds\"], added_cond_kwargs[\"text_embeds\"])),\n                         \"time_ids\": torch.cat((added_cond_kwargs_uncond[\"time_ids\"], added_cond_kwargs[\"time_ids\"])),}\n    return added_cond_kwargs, prompt_embeds\n\n\ndef _encode_image(model: StableDiffusionXLPipeline, image: np.ndarray) -> T:\n    image = torch.from_numpy(image).float() / 255.\n    image = (image * 2 - 1).permute(2, 0, 1).unsqueeze(0)\n    latent = model.vae.encode(image.to(model.vae.device, model.vae.dtype))['latent_dist'].mean * model.vae.config.scaling_factor\n    return latent\n\n\ndef _next_step(model: StableDiffusionXLPipeline, model_output: T, timestep: int, sample: T) -> T:\n    timestep, next_timestep = min(timestep - model.scheduler.config.num_train_timesteps // model.scheduler.num_inference_steps, 999), timestep\n    alpha_prod_t = model.scheduler.alphas_cumprod[int(timestep)] if timestep >= 0 else model.scheduler.final_alpha_cumprod\n    alpha_prod_t_next = model.scheduler.alphas_cumprod[int(next_timestep)]\n    beta_prod_t = 1 - alpha_prod_t\n    next_original_sample = (sample - beta_prod_t ** 0.5 * model_output) / alpha_prod_t ** 0.5\n    next_sample_direction = (1 - alpha_prod_t_next) ** 0.5 * model_output\n    next_sample = alpha_prod_t_next ** 0.5 * next_original_sample + next_sample_direction\n    return next_sample\n\n\ndef _get_noise_pred(model: StableDiffusionXLPipeline, latent: T, t: T, context: T, guidance_scale: float, added_cond_kwargs: dict[str, T]):\n    latents_input = torch.cat([latent] * 2)\n    noise_pred = model.unet(latents_input, t, encoder_hidden_states=context, added_cond_kwargs=added_cond_kwargs)[\"sample\"]\n    noise_pred_uncond, noise_prediction_text = noise_pred.chunk(2)\n    noise_pred = noise_pred_uncond + guidance_scale * (noise_prediction_text - noise_pred_uncond)\n    # latents = next_step(model, noise_pred, t, latent)\n    return noise_pred\n\n\ndef _ddim_loop(model: StableDiffusionXLPipeline, z0, prompt, guidance_scale) -> T:\n    all_latent = [z0]\n    added_cond_kwargs, text_embedding = _encode_text_sdxl_with_negative(model, prompt)\n    latent = z0.clone().detach().to(model.text_encoder.dtype)\n    for i in tqdm(range(model.scheduler.num_inference_steps)):\n        t = model.scheduler.timesteps[len(model.scheduler.timesteps) - i - 1]\n        noise_pred = _get_noise_pred(model, latent, t, text_embedding, guidance_scale, added_cond_kwargs)\n        latent = _next_step(model, noise_pred, t, latent)\n        all_latent.append(latent)\n    return torch.cat(all_latent).flip(0)\n\n\ndef make_inversion_callback(zts, offset: int = 0):\n\n    def callback_on_step_end(pipeline: StableDiffusionXLPipeline, i: int, t: T, callback_kwargs: dict[str, T]) -> dict[str, T]: # pylint: disable=unused-argument\n        latents = callback_kwargs['latents']\n        latents[0] = zts[max(offset + 1, i + 1)].to(latents.device, latents.dtype)\n        return {'latents': latents}\n    return  zts[offset], callback_on_step_end\n\n\n@torch.no_grad()\ndef ddim_inversion(model: StableDiffusionXLPipeline, x0: np.ndarray, prompt: str, num_inference_steps: int, guidance_scale,) -> T:\n    z0 = _encode_image(model, x0)\n    model.scheduler.set_timesteps(num_inference_steps, device=z0.device)\n    zs = _ddim_loop(model, z0, prompt, guidance_scale)\n    return zs\n"
  },
  {
    "path": "scripts/style_aligned/sa_handler.py",
    "content": "# Copyright 2023 Google LLC\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#      http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\n\nfrom __future__ import annotations\nfrom typing import TYPE_CHECKING\nif TYPE_CHECKING:\n    from diffusers import StableDiffusionXLPipeline\nfrom dataclasses import dataclass\nimport torch\nimport torch.nn as nn\nfrom torch.nn import functional as nnf\nfrom diffusers.models import attention_processor # pylint: disable=ungrouped-imports\nimport einops\n\nT = torch.Tensor\n\n\n@dataclass(frozen=True)\nclass StyleAlignedArgs:\n    share_group_norm: bool = True\n    share_layer_norm: bool = True\n    share_attention: bool = True\n    adain_queries: bool = True\n    adain_keys: bool = True\n    adain_values: bool = False\n    full_attention_share: bool = False\n    shared_score_scale: float = 1.\n    shared_score_shift: float = 0.\n    only_self_level: float = 0.\n\n\ndef expand_first(feat: T, scale=1.,) -> T:\n    b = feat.shape[0]\n    feat_style = torch.stack((feat[0], feat[b // 2])).unsqueeze(1)\n    if scale == 1:\n        feat_style = feat_style.expand(2, b // 2, *feat.shape[1:])\n    else:\n        feat_style = feat_style.repeat(1, b // 2, 1, 1, 1)\n        feat_style = torch.cat([feat_style[:, :1], scale * feat_style[:, 1:]], dim=1)\n    return feat_style.reshape(*feat.shape)\n\n\ndef concat_first(feat: T, dim=2, scale=1.) -> T:\n    feat_style = expand_first(feat, scale=scale)\n    return torch.cat((feat, feat_style), dim=dim)\n\n\ndef calc_mean_std(feat, eps: float = 1e-5) -> tuple[T, T]:\n    feat_std = (feat.var(dim=-2, keepdims=True) + eps).sqrt()\n    feat_mean = feat.mean(dim=-2, keepdims=True)\n    return feat_mean, feat_std\n\n\ndef adain(feat: T) -> T:\n    feat_mean, feat_std = calc_mean_std(feat)\n    feat_style_mean = expand_first(feat_mean)\n    feat_style_std = expand_first(feat_std)\n    feat = (feat - feat_mean) / feat_std\n    feat = feat * feat_style_std + feat_style_mean\n    return feat\n\n\nclass DefaultAttentionProcessor(nn.Module):\n\n    def __init__(self):\n        super().__init__()\n        self.processor = attention_processor.AttnProcessor2_0()\n\n    def __call__(self, attn: attention_processor.Attention, hidden_states, encoder_hidden_states=None,\n                 attention_mask=None, **kwargs):\n        return self.processor(attn, hidden_states, encoder_hidden_states, attention_mask)\n\n\nclass SharedAttentionProcessor(DefaultAttentionProcessor):\n\n    def shifted_scaled_dot_product_attention(self, attn: attention_processor.Attention, query: T, key: T, value: T) -> T:\n        logits = torch.einsum('bhqd,bhkd->bhqk', query, key) * attn.scale\n        logits[:, :, :, query.shape[2]:] += self.shared_score_shift\n        probs = logits.softmax(-1)\n        return torch.einsum('bhqk,bhkd->bhqd', probs, value)\n\n    def shared_call( # pylint: disable=unused-argument\n            self,\n            attn: attention_processor.Attention,\n            hidden_states,\n            encoder_hidden_states=None,\n            attention_mask=None,\n            **kwargs\n    ):\n\n        residual = hidden_states\n        input_ndim = hidden_states.ndim\n        if input_ndim == 4:\n            batch_size, channel, height, width = hidden_states.shape\n            hidden_states = hidden_states.view(batch_size, channel, height * width).transpose(1, 2)\n        batch_size, sequence_length, _ = (\n            hidden_states.shape if encoder_hidden_states is None else encoder_hidden_states.shape\n        )\n\n        if attention_mask is not None:\n            attention_mask = attn.prepare_attention_mask(attention_mask, sequence_length, batch_size)\n            # scaled_dot_product_attention expects attention_mask shape to be\n            # (batch, heads, source_length, target_length)\n            attention_mask = attention_mask.view(batch_size, attn.heads, -1, attention_mask.shape[-1])\n\n        if attn.group_norm is not None:\n            hidden_states = attn.group_norm(hidden_states.transpose(1, 2)).transpose(1, 2)\n\n        query = attn.to_q(hidden_states)\n        key = attn.to_k(hidden_states)\n        value = attn.to_v(hidden_states)\n        inner_dim = key.shape[-1]\n        head_dim = inner_dim // attn.heads\n\n        query = query.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        key = key.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        value = value.view(batch_size, -1, attn.heads, head_dim).transpose(1, 2)\n        # if self.step >= self.start_inject:\n        if self.adain_queries:\n            query = adain(query)\n        if self.adain_keys:\n            key = adain(key)\n        if self.adain_values:\n            value = adain(value)\n        if self.share_attention:\n            key = concat_first(key, -2, scale=self.shared_score_scale)\n            value = concat_first(value, -2)\n            if self.shared_score_shift != 0:\n                hidden_states = self.shifted_scaled_dot_product_attention(attn, query, key, value,)\n            else:\n                hidden_states = nnf.scaled_dot_product_attention(\n                    query, key, value, attn_mask=attention_mask, dropout_p=0.0, is_causal=False\n                )\n        else:\n            hidden_states = nnf.scaled_dot_product_attention(\n                query, key, value, attn_mask=attention_mask, dropout_p=0.0, is_causal=False\n            )\n        # hidden_states = adain(hidden_states)\n        hidden_states = hidden_states.transpose(1, 2).reshape(batch_size, -1, attn.heads * head_dim)\n        hidden_states = hidden_states.to(query.dtype)\n\n        # linear proj\n        hidden_states = attn.to_out[0](hidden_states)\n        # dropout\n        hidden_states = attn.to_out[1](hidden_states)\n\n        if input_ndim == 4:\n            hidden_states = hidden_states.transpose(-1, -2).reshape(batch_size, channel, height, width)\n\n        if attn.residual_connection:\n            hidden_states = hidden_states + residual\n\n        hidden_states = hidden_states / attn.rescale_output_factor\n        return hidden_states\n\n    def __call__(self, attn: attention_processor.Attention, hidden_states, encoder_hidden_states=None,\n                 attention_mask=None, **kwargs):\n        if self.full_attention_share:\n            _b, n, _d = hidden_states.shape\n            hidden_states = einops.rearrange(hidden_states, '(k b) n d -> k (b n) d', k=2)\n            hidden_states = super().__call__(attn, hidden_states, encoder_hidden_states=encoder_hidden_states,\n                                             attention_mask=attention_mask, **kwargs)\n            hidden_states = einops.rearrange(hidden_states, 'k (b n) d -> (k b) n d', n=n)\n        else:\n            hidden_states = self.shared_call(attn, hidden_states, hidden_states, attention_mask, **kwargs)\n\n        return hidden_states\n\n    def __init__(self, style_aligned_args: StyleAlignedArgs):\n        super().__init__()\n        self.share_attention = style_aligned_args.share_attention\n        self.adain_queries = style_aligned_args.adain_queries\n        self.adain_keys = style_aligned_args.adain_keys\n        self.adain_values = style_aligned_args.adain_values\n        self.full_attention_share = style_aligned_args.full_attention_share\n        self.shared_score_scale = style_aligned_args.shared_score_scale\n        self.shared_score_shift = style_aligned_args.shared_score_shift\n\n\ndef _get_switch_vec(total_num_layers, level):\n    if level <= 0:\n        return torch.zeros(total_num_layers, dtype=torch.bool)\n    if level >= 1:\n        return torch.ones(total_num_layers, dtype=torch.bool)\n    to_flip = level > .5\n    if to_flip:\n        level = 1 - level\n    num_switch = int(level * total_num_layers)\n    vec = torch.arange(total_num_layers)\n    vec = vec % (total_num_layers // num_switch)\n    vec = vec == 0\n    if to_flip:\n        vec = ~vec\n    return vec\n\n\ndef init_attention_processors(pipeline: StableDiffusionXLPipeline, style_aligned_args: StyleAlignedArgs | None = None):\n    attn_procs = {}\n    unet = pipeline.unet\n    number_of_self, number_of_cross = 0, 0\n    num_self_layers = len([name for name in unet.attn_processors.keys() if 'attn1' in name])\n    if style_aligned_args is None:\n        only_self_vec = _get_switch_vec(num_self_layers, 1)\n    else:\n        only_self_vec = _get_switch_vec(num_self_layers, style_aligned_args.only_self_level)\n    for i, name in enumerate(unet.attn_processors.keys()):\n        is_self_attention = 'attn1' in name\n        if is_self_attention:\n            number_of_self += 1\n            if style_aligned_args is None or only_self_vec[i // 2]:\n                attn_procs[name] = DefaultAttentionProcessor()\n            else:\n                attn_procs[name] = SharedAttentionProcessor(style_aligned_args)\n        else:\n            number_of_cross += 1\n            attn_procs[name] = DefaultAttentionProcessor()\n\n    unet.set_attn_processor(attn_procs)\n\n\ndef register_shared_norm(pipeline: StableDiffusionXLPipeline,\n                         share_group_norm: bool = True,\n                         share_layer_norm: bool = True,\n                        ):\n    def register_norm_forward(norm_layer: nn.GroupNorm | nn.LayerNorm) -> nn.GroupNorm | nn.LayerNorm:\n        if not hasattr(norm_layer, 'orig_forward'):\n            setattr(norm_layer, 'orig_forward', norm_layer.forward) # noqa\n        orig_forward = norm_layer.orig_forward\n\n        def forward_(hidden_states: T) -> T:\n            n = hidden_states.shape[-2]\n            hidden_states = concat_first(hidden_states, dim=-2)\n            hidden_states = orig_forward(hidden_states)\n            return hidden_states[..., :n, :]\n\n        norm_layer.forward = forward_\n        return norm_layer\n\n    def get_norm_layers(pipeline_, norm_layers_: dict[str, list[nn.GroupNorm | nn.LayerNorm]]):\n        if isinstance(pipeline_, nn.LayerNorm) and share_layer_norm:\n            norm_layers_['layer'].append(pipeline_)\n        if isinstance(pipeline_, nn.GroupNorm) and share_group_norm:\n            norm_layers_['group'].append(pipeline_)\n        else:\n            for layer in pipeline_.children():\n                get_norm_layers(layer, norm_layers_)\n\n    norm_layers = {'group': [], 'layer': []}\n    get_norm_layers(pipeline.unet, norm_layers)\n    return [register_norm_forward(layer) for layer in norm_layers['group']] + [register_norm_forward(layer) for layer in\n                                                                               norm_layers['layer']]\n\n\nclass Handler:\n\n    def register(self, style_aligned_args: StyleAlignedArgs):\n        self.norm_layers = register_shared_norm(self.pipeline, style_aligned_args.share_group_norm,\n                                                style_aligned_args.share_layer_norm)\n        init_attention_processors(self.pipeline, style_aligned_args)\n\n    def remove(self):\n        for layer in self.norm_layers:\n            layer.forward = layer.orig_forward\n        self.norm_layers = []\n        init_attention_processors(self.pipeline, None)\n\n    def __init__(self, pipeline: StableDiffusionXLPipeline):\n        self.pipeline = pipeline\n        self.norm_layers = []\n"
  },
  {
    "path": "scripts/style_aligned_ext.py",
    "content": "import gradio as gr\nimport torch\nimport numpy as np\nimport diffusers\nfrom modules import scripts_manager, processing, shared, devices\n\n\nhandler = None\nzts = None\nsupported_model_list = ['sdxl']\norig_prompt_attention = None\n\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return 'Style Aligned Image Generation'\n\n    def show(self, is_img2img):\n        return True\n\n    def reset(self):\n        global handler, zts # pylint: disable=global-statement\n        handler = None\n        zts = None\n        shared.log.info('SA: image upload')\n\n    def preset(self, preset):\n        if preset == 'text':\n            return [['attention', 'adain_queries', 'adain_keys'], 1.0, 0, 0.0]\n        elif preset == 'image':\n            return [['group_norm', 'layer_norm', 'attention', 'adain_queries', 'adain_keys'], 1.0, 2, 0.0]\n        else:\n            return [['group_norm', 'layer_norm', 'attention', 'adain_queries', 'adain_keys', 'adain_values', 'full_attention_share'], 1.0, 1, 0.5]\n\n    def ui(self, _is_img2img): # ui elements\n        with gr.Row():\n            gr.HTML('<a href=\"https://github.com/google/style-aligned\">&nbsp Style Aligned Image Generation</a><br><br>')\n        with gr.Row():\n            preset = gr.Dropdown(label=\"Preset\", choices=['text', 'image', 'all'], value='text')\n            scheduler = gr.Checkbox(label=\"Override scheduler\", value=False)\n        with gr.Row():\n            shared_opts = gr.Dropdown(label=\"Shared options\",\n                                      multiselect=True,\n                                      choices=['group_norm', 'layer_norm', 'attention', 'adain_queries', 'adain_keys', 'adain_values', 'full_attention_share'],\n                                      value=['attention', 'adain_queries', 'adain_keys'],\n                                    )\n        with gr.Row():\n            shared_score_scale = gr.Slider(label=\"Scale\", minimum=0.0, maximum=2.0, step=0.01, value=1.0)\n            shared_score_shift = gr.Slider(label=\"Shift\", minimum=0, maximum=10, step=1, value=0)\n            only_self_level = gr.Slider(label=\"Level\", minimum=0.0, maximum=1.0, step=0.01, value=0.0)\n        with gr.Row():\n            prompt = gr.Textbox(lines=1, label='Optional image description', placeholder='use the style from the image')\n        with gr.Row():\n            image = gr.Image(label='Optional image', type='pil')\n\n        image.change(self.reset)\n        preset.change(self.preset, inputs=[preset], outputs=[shared_opts, shared_score_scale, shared_score_shift, only_self_level])\n\n        return [image, prompt, scheduler, shared_opts, shared_score_scale, shared_score_shift, only_self_level]\n\n    def run(self, p: processing.StableDiffusionProcessing, image, prompt, scheduler, shared_opts, shared_score_scale, shared_score_shift, only_self_level): # pylint: disable=arguments-differ\n        global handler, zts, orig_prompt_attention # pylint: disable=global-statement\n        if shared.sd_model_type not in supported_model_list:\n            shared.log.warning(f'SA: class={shared.sd_model.__class__.__name__} model={shared.sd_model_type} required={supported_model_list}')\n            return None\n\n        from scripts.style_aligned import sa_handler, inversion # pylint: disable=no-name-in-module\n\n        handler = sa_handler.Handler(shared.sd_model)\n        sa_args = sa_handler.StyleAlignedArgs(\n            share_group_norm='group_norm' in shared_opts,\n            share_layer_norm='layer_norm' in shared_opts,\n            share_attention='attention' in shared_opts,\n            adain_queries='adain_queries' in shared_opts,\n            adain_keys='adain_keys' in shared_opts,\n            adain_values='adain_values' in shared_opts,\n            full_attention_share='full_attention_share' in shared_opts,\n            shared_score_scale=float(shared_score_scale),\n            shared_score_shift=np.log(shared_score_shift) if shared_score_shift > 0 else 0,\n            only_self_level=1 if only_self_level else 0,\n            )\n        handler.register(sa_args)\n\n        if scheduler:\n            shared.sd_model.scheduler = diffusers.DDIMScheduler(beta_start=0.00085, beta_end=0.012, beta_schedule=\"scaled_linear\", clip_sample=False, set_alpha_to_one=False)\n            p.sampler_name = 'None'\n\n        if image is not None and zts is None:\n            shared.log.info(f'SA: inversion image={image} prompt=\"{prompt}\"')\n            image = image.resize((1024, 1024))\n            x0 = np.array(image).astype(np.float32) / 255.0\n            shared.sd_model.scheduler = diffusers.DDIMScheduler(beta_start=0.00085, beta_end=0.012, beta_schedule=\"scaled_linear\", clip_sample=False, set_alpha_to_one=False)\n            zts = inversion.ddim_inversion(shared.sd_model, x0, prompt, num_inference_steps=50, guidance_scale=2)\n\n        p.prompt = p.prompt.splitlines()\n        p.batch_size = len(p.prompt)\n        orig_prompt_attention = shared.opts.prompt_attention\n        shared.opts.data['prompt_attention'] = 'fixed' # otherwise need to deal with class_tokens_mask\n\n        if zts is not None:\n            processing.fix_seed(p)\n            zT, inversion_callback = inversion.make_inversion_callback(zts, offset=0)\n            generator = torch.Generator(device='cpu')\n            generator.manual_seed(p.seed)\n            latents = torch.randn(p.batch_size, 4, 128, 128, device='cpu', generator=generator, dtype=devices.dtype,).to(devices.device)\n            latents[0] = zT\n            p.task_args['latents'] = latents\n            p.task_args['callback_on_step_end'] = inversion_callback\n\n        shared.log.info(f'SA: batch={p.batch_size} type={\"image\" if zts is not None else \"text\"} config={sa_args.__dict__}')\n        return None\n\n    def after(self, p: processing.StableDiffusionProcessing, *args): # pylint: disable=unused-argument\n        global handler # pylint: disable=global-statement\n        if handler is not None:\n            handler.remove()\n            handler = None\n            shared.opts.data['prompt_attention'] = orig_prompt_attention\n"
  },
  {
    "path": "scripts/t_gate.py",
    "content": "import gradio as gr\nfrom modules import scripts_manager, processing, shared, sd_models, devices\nfrom installer import install\n\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return 'T-Gate: Accelerate via Gating Attention'\n\n    def show(self, is_img2img):\n        return not is_img2img\n\n    # return signature is array of gradio components\n    def ui(self, _is_img2img):\n        with gr.Row():\n            gr.HTML('<a href=\"https://github.com/HaozheLiu-ST/T-GATE\">&nbsp T-Gate: Accelerate via Gating Attention</a><br>')\n        with gr.Row():\n            enabled = gr.Checkbox(label=\"Enabled\", value=True)\n        with gr.Row():\n            gate_step = gr.Slider(minimum=1, maximum=50, step=1, label=\"Gate step\", elem_id=\"t_gate_steps\", value=10)\n        return [enabled, gate_step]\n\n    def run(self, p: processing.StableDiffusionProcessing, enabled, gate_step): # pylint: disable=arguments-differ\n        p.gate_step = min(gate_step, p.steps) if enabled else -1\n        if not enabled:\n            return None\n        install('tgate')\n        import tgate\n        if shared.sd_model_type == 'sd':\n            cls = tgate.TgateSDLoader\n        elif shared.sd_model_type == 'sdxl':\n            cls = tgate.TgateSDXLLoader\n        else:\n            shared.log.warning(f'T-Gate: pipeline={shared.sd_model_type} required=sd or sdxl')\n            return None\n        old_pipe = shared.sd_model\n        shared.sd_model = cls(shared.sd_model, gate_step=p.gate_step)\n        sd_models.copy_diffuser_options(shared.sd_model, old_pipe)\n        sd_models.move_model(shared.sd_model, devices.device) # move pipeline to device\n        sd_models.set_diffuser_options(shared.sd_model, vae=None, op='model')\n        shared.log.debug(f'T-Gate: pipeline={shared.sd_model.__class__.__name__} steps={p.gate_step}')\n        processed = processing.process_images(p)\n        shared.sd_model = old_pipe\n        del shared.sd_model.tgate\n        return processed\n"
  },
  {
    "path": "scripts/text2video.py",
    "content": "\"\"\"\nAdditional params for Text-to-Video\n<https://huggingface.co/docs/diffusers/api/pipelines/text_to_video>\n\nTODO text2video items:\n- Video-to-Video upscaling: <https://huggingface.co/cerspense/zeroscope_v2_XL>, <https://huggingface.co/damo-vilab/MS-Vid2Vid-XL>\n\"\"\"\n\nimport gradio as gr\nfrom modules import scripts_manager, processing, shared, images, sd_models, modelloader\n\n\nMODELS = [\n    {'name': 'None'},\n    {'name': 'ModelScope v1.7b', 'path': 'damo-vilab/text-to-video-ms-1.7b', 'params': [16,320,320]},\n    {'name': 'ZeroScope v1', 'path': 'cerspense/zeroscope_v1_320s', 'params': [16,320,320]},\n    {'name': 'ZeroScope v1.1', 'path': 'cerspense/zeroscope_v1-1_320s', 'params': [16,320,320]},\n    {'name': 'ZeroScope v2', 'path': 'cerspense/zeroscope_v2_576w', 'params': [24,576,320]},\n    {'name': 'ZeroScope v2 Dark', 'path': 'cerspense/zeroscope_v2_dark_30x448x256', 'params': [24,448,256]},\n    {'name': 'Potat v1', 'path': 'camenduru/potat1', 'params': [24,1024,576]},\n]\n\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return 'Video: ModelScope'\n\n    def show(self, is_img2img):\n        return not is_img2img\n\n    # return signature is array of gradio components\n    def ui(self, is_img2img):\n\n        def model_info_change(model_name):\n            if model_name == 'None':\n                return gr.update(value='')\n            else:\n                model = next(m for m in MODELS if m['name'] == model_name)\n                return gr.update(value=f'<span> &nbsp frames: {model[\"params\"][0]} size: {model[\"params\"][1]}x{model[\"params\"][2]}</span> <a href=\"https://huggingface.co/{model[\"path\"]}\" target=\"_blank\">link</a>')\n\n        with gr.Row():\n            gr.HTML('<span>&nbsp Text to video</span><br>')\n        with gr.Row():\n            model_name = gr.Dropdown(label='Model', value='None', choices=[m['name'] for m in MODELS])\n        with gr.Row():\n            model_info = gr.HTML()\n            model_name.change(fn=model_info_change, inputs=[model_name], outputs=[model_info])\n        with gr.Row():\n            use_default = gr.Checkbox(label='Use defaults', value=True)\n            num_frames = gr.Slider(label='Frames', minimum=1, maximum=50, step=1, value=0)\n        with gr.Row():\n            from modules.ui_sections import create_video_inputs\n            video_type, duration, gif_loop, mp4_pad, mp4_interpolate = create_video_inputs(tab='img2img' if is_img2img else 'txt2img')\n        return [model_name, use_default, num_frames, video_type, duration, gif_loop, mp4_pad, mp4_interpolate]\n\n    def run(self, p: processing.StableDiffusionProcessing, model_name, use_default, num_frames, video_type, duration, gif_loop, mp4_pad, mp4_interpolate): # pylint: disable=arguments-differ, unused-argument\n        if model_name == 'None':\n            return None\n        model = [m for m in MODELS if m['name'] == model_name][0]\n        shared.log.debug(f'Text2Video: model={model} defaults={use_default} frames={num_frames}, video={video_type} duration={duration} loop={gif_loop} pad={mp4_pad} interpolate={mp4_interpolate}')\n\n        if model['path'] in shared.opts.sd_model_checkpoint:\n            shared.log.debug(f'Text2Video cached: model={shared.opts.sd_model_checkpoint}')\n        else:\n            checkpoint = sd_models.get_closest_checkpoint_match(model['path'])\n            if checkpoint is None:\n                shared.log.debug(f'Text2Video downloading: model={model[\"path\"]}')\n                checkpoint = modelloader.download_diffusers_model(hub_id=model['path'])\n                sd_models.list_models()\n            if checkpoint is None:\n                shared.log.error(f'Text2Video: failed to find model={model[\"path\"]}')\n                return None\n            shared.log.debug(f'Text2Video loading: model={checkpoint}')\n            shared.opts.sd_model_checkpoint = checkpoint.name\n            sd_models.reload_model_weights(op='model')\n\n        p.ops.append('video')\n        p.do_not_save_grid = True\n        if use_default:\n            p.task_args['num_frames'] = model['params'][0]\n            p.width = model['params'][1]\n            p.height = model['params'][2]\n        elif num_frames > 0:\n            p.task_args['num_frames'] = num_frames\n        else:\n            shared.log.error('Text2Video: invalid number of frames')\n            return None\n\n        shared.sd_model = sd_models.set_diffuser_pipe(shared.sd_model, sd_models.DiffusersTaskType.TEXT_2_IMAGE)\n        shared.log.debug(f'Text2Video: args={p.task_args}')\n        processed = processing.process_images(p)\n\n        if video_type != 'None':\n            images.save_video(p, filename=None, images=processed.images, video_type=video_type, duration=duration, loop=gif_loop, pad=mp4_pad, interpolate=mp4_interpolate)\n        return processed\n"
  },
  {
    "path": "scripts/tiling.py",
    "content": "from typing import Optional\nimport torch\nimport gradio as gr\nfrom PIL import Image\nfrom diffusers.models.lora import LoRACompatibleConv\nfrom torch import Tensor\nfrom torch.nn import functional as F\nfrom torch.nn.modules.utils import _pair\nfrom modules import scripts_manager, processing, shared\n\n\nmodex = 'constant'\nmodey = 'constant'\n\n\ndef asymmetricConv2DConvForward(self, input: Tensor, weight: Tensor, bias: Optional[Tensor]): # pylint: disable=redefined-builtin\n    self.paddingX = (self._reversed_padding_repeated_twice[0], self._reversed_padding_repeated_twice[1], 0, 0) # pylint: disable=protected-access\n    self.paddingY = (0, 0, self._reversed_padding_repeated_twice[2], self._reversed_padding_repeated_twice[3]) # pylint: disable=protected-access\n    working = F.pad(input, self.paddingX, mode=modex)\n    working = F.pad(working, self.paddingY, mode=modex)\n    return F.conv2d(working, weight, bias, self.stride, _pair(0), self.dilation, self.groups)\n\n\nclass Script(scripts_manager.Script):\n    def __init__(self):\n        super().__init__()\n        self.orig_pipe = None\n        self.conv_layers = []\n        self.modes = ['constant', 'circular', 'reflect', 'replicate']\n\n    def title(self):\n        return 'Asymmetric Tiling'\n\n    def show(self, is_img2img):\n        return True\n\n    def ui(self, _is_img2img): # ui elements\n        with gr.Row():\n            gr.HTML('<b>Asymmetric Tiling</b><br>')\n        with gr.Row():\n            tilex = gr.Dropdown(label=\"Mode x-axis\", choices=self.modes, value='constant')\n            numx = gr.Slider(label=\"Repeat x-axis\", value=1, minimum=1, maximum=10, step=1)\n        with gr.Row():\n            tiley = gr.Dropdown(label=\"Mode y-axis\", choices=self.modes, value='constant')\n            numy = gr.Slider(label=\"Repeat y-axis\", value=1, minimum=1, maximum=10, step=1)\n        return [tilex, numx, tiley, numy]\n\n    def run(self, p: processing.StableDiffusionProcessing, tilex:bool=False, numx:int=1, tiley:bool=False, numy:int=1): # pylint: disable=arguments-differ, unused-argument\n        global modex, modey # pylint: disable=global-statement\n        supported_model_list = ['sd', 'sdxl']\n        if shared.sd_model_type not in supported_model_list:\n            shared.log.warning(f'Tiling: class={shared.sd_model.__class__.__name__} model={shared.sd_model_type} required={supported_model_list}')\n            return None\n        if not tilex and not tiley:\n            return None\n        self.orig_pipe = shared.sd_model\n\n        modex = tilex\n        modey = tiley\n        self.conv_layers.clear()\n        targets = [shared.sd_model.vae, shared.sd_model.text_encoder, shared.sd_model.unet]\n        for target in targets:\n            for module in target.modules():\n                if isinstance(module, torch.nn.Conv2d):\n                    self.conv_layers.append(module)\n\n        for cl in self.conv_layers:\n            if isinstance(cl, LoRACompatibleConv) and cl.lora_layer is None:\n                cl.lora_layer = lambda *x: 0\n            if hasattr(cl, '_conv_forward'):\n                cl._orig_conv_forward = cl._conv_forward # pylint: disable=protected-access\n            cl._conv_forward = asymmetricConv2DConvForward.__get__(cl, torch.nn.Conv2d) # pylint: disable=protected-access, no-value-for-parameter\n        shared.log.info(f'Tiling: x={tilex}:{numx} y={tiley}:{numy}')\n        return None\n\n    def after(self, p: processing.StableDiffusionProcessing, processed: processing.Processed, tilex:bool=False, numx:int=1, tiley:bool=False, numy:int=1): # pylint: disable=arguments-differ, unused-argument\n        if len(self.conv_layers) == 0:\n            return processed\n        for cl in self.conv_layers:\n            if hasattr(cl, '_orig_conv_forward'):\n                cl._conv_forward = cl._orig_conv_forward # pylint: disable=protected-access\n        if self.orig_pipe is None:\n            return processed\n        if shared.sd_model_type == \"sdxl\":\n            shared.sd_model = self.orig_pipe\n        self.orig_pipe = None\n        self.conv_layers.clear()\n        if not hasattr(processed, 'images') or processed.images is None:\n            return processed\n        images = []\n        for image in processed.images:\n            if tilex and isinstance(image, Image.Image):\n                tiled = Image.new('RGB', (image.width * numx, image.height), (0, 0, 0))\n                for i in range(numx):\n                    tiled.paste(image, (i * image.width, 0))\n                image = tiled\n            if tiley and isinstance(image, Image.Image):\n                tiled = Image.new('RGB', (image.width, image.height * numy), (0, 0, 0))\n                for i in range(numy):\n                    tiled.paste(image, (0, i * image.height))\n                image = tiled\n            images.append(image)\n        processed.images = images\n        return processed\n"
  },
  {
    "path": "scripts/xadapter/adapter.py",
    "content": "import torch\nimport torch.nn as nn\nfrom collections import OrderedDict\nfrom diffusers.models.embeddings import (\n    TimestepEmbedding,\n    Timesteps,\n)\n\n\ndef conv_nd(dims, *args, **kwargs):\n    \"\"\"\n    Create a 1D, 2D, or 3D convolution module.\n    \"\"\"\n    if dims == 1:\n        return nn.Conv1d(*args, **kwargs)\n    elif dims == 2:\n        return nn.Conv2d(*args, **kwargs)\n    elif dims == 3:\n        return nn.Conv3d(*args, **kwargs)\n    raise ValueError(f\"unsupported dimensions: {dims}\")\n\n\ndef avg_pool_nd(dims, *args, **kwargs):\n    \"\"\"\n    Create a 1D, 2D, or 3D average pooling module.\n    \"\"\"\n    if dims == 1:\n        return nn.AvgPool1d(*args, **kwargs)\n    elif dims == 2:\n        return nn.AvgPool2d(*args, **kwargs)\n    elif dims == 3:\n        return nn.AvgPool3d(*args, **kwargs)\n    raise ValueError(f\"unsupported dimensions: {dims}\")\n\n\ndef get_parameter_dtype(parameter: torch.nn.Module):\n    try:\n        params = tuple(parameter.parameters())\n        if len(params) > 0:\n            return params[0].dtype\n\n        buffers = tuple(parameter.buffers())\n        if len(buffers) > 0:\n            return buffers[0].dtype\n\n    except StopIteration:\n        # For torch.nn.DataParallel compatibility in PyTorch 1.5\n\n        def find_tensor_attributes(module: torch.nn.Module) -> List[Tuple[str, Tensor]]:\n            tuples = [(k, v) for k, v in module.__dict__.items() if torch.is_tensor(v)]\n            return tuples\n\n        gen = parameter._named_members(get_members_fn=find_tensor_attributes)\n        first_tuple = next(gen)\n        return first_tuple[1].dtype\n\n\nclass Downsample(nn.Module):\n    \"\"\"\n    A downsampling layer with an optional convolution.\n    :param channels: channels in the inputs and outputs.\n    :param use_conv: a bool determining if a convolution is applied.\n    :param dims: determines if the signal is 1D, 2D, or 3D. If 3D, then\n                 downsampling occurs in the inner-two dimensions.\n    \"\"\"\n\n    def __init__(self, channels, use_conv, dims=2, out_channels=None, padding=1):\n        super().__init__()\n        self.channels = channels\n        self.out_channels = out_channels or channels\n        self.use_conv = use_conv\n        self.dims = dims\n        stride = 2 if dims != 3 else (1, 2, 2)\n        if use_conv:\n            self.op = conv_nd(dims, self.channels, self.out_channels, 3, stride=stride, padding=padding)\n        else:\n            assert self.channels == self.out_channels\n            from torch.nn import MaxUnpool2d\n            self.op = MaxUnpool2d(dims, kernel_size=stride, stride=stride)\n\n    def forward(self, x):\n        assert x.shape[1] == self.channels\n        return self.op(x)\n\n\nclass Upsample(nn.Module):\n    def __init__(self, channels, use_conv, dims=2, out_channels=None, padding=1):\n        super().__init__()\n        self.channels = channels\n        self.out_channels = out_channels or channels\n        self.use_conv = use_conv\n        self.dims = dims\n        stride = 2 if dims != 3 else (1, 2, 2)\n        if use_conv:\n            self.op = nn.ConvTranspose2d(self.channels, self.out_channels, 3, stride=stride, padding=1)\n        else:\n            assert self.channels == self.out_channels\n            self.op = avg_pool_nd(dims, kernel_size=stride, stride=stride)\n\n    def forward(self, x, output_size):\n        assert x.shape[1] == self.channels\n        return self.op(x, output_size)\n\n\nclass Linear(nn.Module):\n    def __init__(self, temb_channels, out_channels):\n        super(Linear, self).__init__()\n        self.linear = nn.Linear(temb_channels, out_channels)\n\n    def forward(self, x):\n        return self.linear(x)\n\n\n\nclass ResnetBlock(nn.Module):\n\n    def __init__(self, in_c, out_c, down, up, ksize=3, sk=False, use_conv=True, enable_timestep=False, temb_channels=None, use_norm=False):\n        super().__init__()\n        self.use_norm = use_norm\n        self.enable_timestep = enable_timestep\n        ps = ksize // 2\n        if in_c != out_c or sk == False:\n            self.in_conv = nn.Conv2d(in_c, out_c, ksize, 1, ps)\n        else:\n            self.in_conv = None\n        self.block1 = nn.Conv2d(out_c, out_c, 3, 1, 1)\n        self.act = nn.ReLU()\n        if use_norm:\n            self.norm1 = nn.GroupNorm(num_groups=32, num_channels=out_c, eps=1e-6, affine=True)\n        self.block2 = nn.Conv2d(out_c, out_c, ksize, 1, ps)\n        if sk == False:\n            self.skep = nn.Conv2d(in_c, out_c, ksize, 1, ps)\n        else:\n            self.skep = None\n\n        self.down = down\n        self.up = up\n        if self.down:\n            self.down_opt = Downsample(in_c, use_conv=use_conv)\n        if self.up:\n            self.up_opt = Upsample(in_c, use_conv=use_conv)\n        if enable_timestep:\n            self.timestep_proj = Linear(temb_channels, out_c)\n\n\n    def forward(self, x, output_size=None, temb=None):\n        if self.down == True:\n            x = self.down_opt(x)\n        if self.up == True:\n            x = self.up_opt(x, output_size)\n        if self.in_conv is not None:  # edit\n            x = self.in_conv(x)\n\n        h = self.block1(x)\n        if temb is not None:\n            temb = self.timestep_proj(temb)[:, :, None, None]\n            h = h + temb\n        if self.use_norm:\n            h = self.norm1(h)\n        h = self.act(h)\n        h = self.block2(h)\n        if self.skep is not None:\n            return h + self.skep(x)\n        else:\n            return h + x\n\n\nclass Adapter_XL(nn.Module):\n\n    def __init__(self, in_channels=[1280, 640, 320], out_channels=[1280, 1280, 640], nums_rb=3, ksize=3, sk=True, use_conv=False, use_zero_conv=True,\n                 enable_timestep=False, use_norm=False, temb_channels=None, fusion_type='ADD'):\n        super(Adapter_XL, self).__init__()\n        self.channels = in_channels\n        self.nums_rb = nums_rb\n        self.body = []\n        self.out = []\n        self.use_zero_conv = use_zero_conv\n        self.fusion_type = fusion_type\n        self.gamma = []\n        self.beta = []\n        self.norm = []\n        if fusion_type == \"SPADE\":\n            self.use_zero_conv = False\n        for i in range(len(self.channels)):\n            if self.fusion_type == 'SPADE':\n                # Corresponding to SPADE <Semantic Image Synthesis with Spatially-Adaptive Normalization>\n                self.gamma.append(nn.Conv2d(out_channels[i], out_channels[i], 1, padding=0))\n                self.beta.append(nn.Conv2d(out_channels[i], out_channels[i], 1, padding=0))\n                self.norm.append(nn.BatchNorm2d(out_channels[i]))\n            elif use_zero_conv:\n                self.out.append(self.make_zero_conv(out_channels[i]))\n            else:\n                self.out.append(nn.Conv2d(out_channels[i], out_channels[i], 1, padding=0))\n            for j in range(nums_rb):\n                if i==0:\n                    # 1280, 32, 32 -> 1280, 32, 32\n                    self.body.append(\n                        ResnetBlock(in_channels[i], out_channels[i], down=False, up=False, ksize=ksize, sk=sk, use_conv=use_conv,\n                                    enable_timestep=enable_timestep, temb_channels=temb_channels, use_norm=use_norm))\n                    # 1280, 32, 32 -> 1280, 32, 32\n                elif i==1:\n                    # 640, 64, 64 -> 1280, 64, 64\n                    if j==0:\n                        self.body.append(\n                            ResnetBlock(in_channels[i], out_channels[i], down=False, up=False, ksize=ksize, sk=sk,\n                                        use_conv=use_conv, enable_timestep=enable_timestep, temb_channels=temb_channels, use_norm=use_norm))\n                    else:\n                        self.body.append(\n                            ResnetBlock(out_channels[i], out_channels[i], down=False, up=False, ksize=ksize,sk=sk,\n                                        use_conv=use_conv, enable_timestep=enable_timestep, temb_channels=temb_channels, use_norm=use_norm))\n                else:\n                    # 320, 64, 64 -> 640, 128, 128\n                    if j==0:\n                        self.body.append(\n                            ResnetBlock(in_channels[i], out_channels[i], down=False, up=True, ksize=ksize, sk=sk,\n                                        use_conv=True, enable_timestep=enable_timestep, temb_channels=temb_channels, use_norm=use_norm))\n                        # use convtranspose2d\n                    else:\n                        self.body.append(\n                            ResnetBlock(out_channels[i], out_channels[i], down=False, up=False, ksize=ksize, sk=sk,\n                                        use_conv=use_conv,  enable_timestep=enable_timestep, temb_channels=temb_channels, use_norm=use_norm))\n\n\n        self.body = nn.ModuleList(self.body)\n        if self.use_zero_conv:\n            self.zero_out = nn.ModuleList(self.out)\n\n        # if self.fusion_type == 'SPADE':\n        #     self.norm = nn.ModuleList(self.norm)\n        #     self.gamma = nn.ModuleList(self.gamma)\n        #     self.beta = nn.ModuleList(self.beta)\n        # else:\n        #     self.zero_out = nn.ModuleList(self.out)\n\n\n        # if enable_timestep:\n        #     a = 320\n        #\n        #     time_embed_dim = a * 4\n        #     self.time_proj = Timesteps(a, True, 0)\n        #     timestep_input_dim = a\n        #\n        #     self.time_embedding = TimestepEmbedding(\n        #         timestep_input_dim,\n        #         time_embed_dim,\n        #         act_fn='silu',\n        #         post_act_fn=None,\n        #         cond_proj_dim=None,\n        #     )\n\n\n    def make_zero_conv(self, channels):\n\n        return zero_module(nn.Conv2d(channels, channels, 1, padding=0))\n\n    @property\n    def dtype(self) -> torch.dtype:\n        \"\"\"\n        `torch.dtype`: The dtype of the module (assuming that all the module parameters have the same dtype).\n        \"\"\"\n        return get_parameter_dtype(self)\n\n    def forward(self, x, t=None):\n        # extract features\n        features = []\n        b, c, _, _ = x[-1].shape\n        if t is not None:\n            if not torch.is_tensor(t):\n                is_mps = x[0].device.type == \"mps\"\n                if isinstance(timestep, float):\n                    dtype = torch.float32 if is_mps else torch.float64\n                else:\n                    dtype = torch.int32 if is_mps else torch.int64\n                t = torch.tensor([t], dtype=dtype, device=x[0].device)\n            elif len(t.shape) == 0:\n                t = t[None].to(x[0].device)\n\n            t = t.expand(b)\n            t = self.time_proj(t) # b, 320\n            t = t.to(dtype=x[0].dtype)\n            t = self.time_embedding(t)  # b, 1280\n        output_size = (b, 640, 128, 128)  # last CA layer output\n        for i in range(len(self.channels)):\n            for j in range(self.nums_rb):\n                idx = i * self.nums_rb + j\n                if j == 0:\n                    if i < 2:\n                        out = self.body[idx](x[i], temb=t)\n                    else:\n                        out = self.body[idx](x[i], output_size=output_size, temb=t)\n                else:\n                    out = self.body[idx](out, temb=t)\n            if self.fusion_type == 'SPADE':\n                out_gamma = self.gamma[i](out)\n                out_beta = self.beta[i](out)\n                out = [out_gamma, out_beta]\n            else:\n                out = self.zero_out[i](out)\n            features.append(out)\n\n        return features\n\n\ndef zero_module(module):\n    \"\"\"\n    Zero out the parameters of a module and return it.\n    \"\"\"\n    for p in module.parameters():\n        p.detach().zero_()\n    return module\n"
  },
  {
    "path": "scripts/xadapter/pipeline_sd_xl_adapter.py",
    "content": "# Copyright 2023 The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport inspect\nimport warnings\nimport os\nimport PIL\nfrom typing import Any, Callable, Dict, List, Optional, Tuple, Union\nimport torch\nfrom transformers import CLIPTextModel, CLIPTextModelWithProjection, CLIPTokenizer\nfrom diffusers.image_processor import VaeImageProcessor\nfrom diffusers.loaders import FromSingleFileMixin, LoraLoaderMixin, TextualInversionLoaderMixin\nfrom diffusers.models import AutoencoderKL\nfrom diffusers.models.attention_processor import (\n    AttnProcessor2_0,\n    FusedAttnProcessor2_0,\n    XFormersAttnProcessor,\n)\nfrom diffusers.schedulers import KarrasDiffusionSchedulers\nfrom diffusers.utils import (\n    is_accelerate_available,\n    is_accelerate_version,\n    is_invisible_watermark_available,\n    logging,\n    replace_example_docstring,\n)\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline\nfrom diffusers.pipelines.stable_diffusion_xl import StableDiffusionXLPipelineOutput\nfrom modules.xadapter.adapter import Adapter_XL\nfrom modules.xadapter.unet_adapter import UNet2DConditionModel\n\n\nif is_invisible_watermark_available():\n    from diffusers.pipelines.stable_diffusion_xl.watermark import StableDiffusionXLWatermarker\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\nEXAMPLE_DOC_STRING = \"\"\"\n    Examples:\n        ```py\n        >>> import torch\n        >>> from diffusers import StableDiffusionXLPipeline\n\n        >>> pipe = StableDiffusionXLPipeline.from_pretrained(\n        ...     \"stabilityai/stable-diffusion-xl-base-1.0\", torch_dtype=torch.float16\n        ... )\n        >>> pipe = pipe.to(\"cuda\")\n\n        >>> prompt = \"a photo of an astronaut riding a horse on mars\"\n        >>> image = pipe(prompt).images[0]\n        ```\n\"\"\"\n\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.rescale_noise_cfg\ndef rescale_noise_cfg(noise_cfg, noise_pred_text, guidance_rescale=0.0):\n    \"\"\"\n    Rescale `noise_cfg` according to `guidance_rescale`. Based on findings of [Common Diffusion Noise Schedules and\n    Sample Steps are Flawed](https://arxiv.org/pdf/2305.08891.pdf). See Section 3.4\n    \"\"\"\n    std_text = noise_pred_text.std(dim=list(range(1, noise_pred_text.ndim)), keepdim=True)\n    std_cfg = noise_cfg.std(dim=list(range(1, noise_cfg.ndim)), keepdim=True)\n    # rescale the results from guidance (fixes overexposure)\n    noise_pred_rescaled = noise_cfg * (std_text / std_cfg)\n    # mix with the original results from guidance by factor guidance_rescale to avoid \"plain looking\" images\n    noise_cfg = guidance_rescale * noise_pred_rescaled + (1 - guidance_rescale) * noise_cfg\n    return noise_cfg\n\n\nclass StableDiffusionXLAdapterPipeline(DiffusionPipeline, FromSingleFileMixin, LoraLoaderMixin):\n    r\"\"\"\n    Pipeline for text-to-image generation using Stable Diffusion XL.\n\n    This model inherits from [`DiffusionPipeline`]. Check the superclass documentation for the generic methods the\n    library implements for all the pipelines (such as downloading or saving, running on a particular device, etc.)\n\n    In addition the pipeline inherits the following loading methods:\n        - *LoRA*: [`StableDiffusionXLPipeline.load_lora_weights`]\n        - *Ckpt*: [`loaders.FromSingleFileMixin.from_single_file`]\n\n    as well as the following saving methods:\n        - *LoRA*: [`loaders.StableDiffusionXLPipeline.save_lora_weights`]\n\n    Args:\n        vae ([`AutoencoderKL`]):\n            Variational Auto-Encoder (VAE) Model to encode and decode images to and from latent representations.\n        text_encoder ([`CLIPTextModel`]):\n            Frozen text-encoder. Stable Diffusion XL uses the text portion of\n            [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModel), specifically\n            the [clip-vit-large-patch14](https://huggingface.co/openai/clip-vit-large-patch14) variant.\n        text_encoder_2 ([` CLIPTextModelWithProjection`]):\n            Second frozen text-encoder. Stable Diffusion XL uses the text and pool portion of\n            [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModelWithProjection),\n            specifically the\n            [laion/CLIP-ViT-bigG-14-laion2B-39B-b160k](https://huggingface.co/laion/CLIP-ViT-bigG-14-laion2B-39B-b160k)\n            variant.\n        tokenizer (`CLIPTokenizer`):\n            Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer).\n        tokenizer_2 (`CLIPTokenizer`):\n            Second Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer).\n        unet ([`UNet2DConditionModel`]): Conditional U-Net architecture to denoise the encoded image latents.\n        scheduler ([`SchedulerMixin`]):\n            A scheduler to be used in combination with `unet` to denoise the encoded image latents. Can be one of\n            [`DDIMScheduler`], [`LMSDiscreteScheduler`], or [`PNDMScheduler`].\n    \"\"\"\n\n    def __init__(\n            self,\n            vae: AutoencoderKL,\n            text_encoder: CLIPTextModel,\n            text_encoder_2: CLIPTextModelWithProjection,\n            tokenizer: CLIPTokenizer,\n            tokenizer_2: CLIPTokenizer,\n            unet: UNet2DConditionModel,\n            scheduler: KarrasDiffusionSchedulers,\n            vae_sd1_5: AutoencoderKL,\n            text_encoder_sd1_5: CLIPTextModel,\n            tokenizer_sd1_5: CLIPTokenizer,\n            unet_sd1_5: UNet2DConditionModel,\n            scheduler_sd1_5: KarrasDiffusionSchedulers,\n            adapter: Adapter_XL,\n            force_zeros_for_empty_prompt: bool = True,\n            add_watermarker: Optional[bool] = None,\n    ):\n        super().__init__()\n\n        self.register_modules(\n            vae=vae,\n            text_encoder=text_encoder,\n            text_encoder_2=text_encoder_2,\n            tokenizer=tokenizer,\n            tokenizer_2=tokenizer_2,\n            unet=unet,\n            scheduler=scheduler,\n            vae_sd1_5=vae_sd1_5,\n            text_encoder_sd1_5=text_encoder_sd1_5,\n            tokenizer_sd1_5=tokenizer_sd1_5,\n            unet_sd1_5=unet_sd1_5,\n            scheduler_sd1_5=scheduler_sd1_5,\n            adapter=adapter,\n        )\n        self.register_to_config(force_zeros_for_empty_prompt=force_zeros_for_empty_prompt)\n        self.vae_scale_factor = 2 ** (len(self.vae.config.block_out_channels) - 1)\n        self.vae_scale_factor_sd1_5 = 2 ** (len(self.vae_sd1_5.config.block_out_channels) - 1)\n        self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor)\n        self.default_sample_size = self.unet.config.sample_size\n        self.image_processor_sd1_5 = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor_sd1_5)\n\n        add_watermarker = add_watermarker if add_watermarker is not None else is_invisible_watermark_available()\n\n        if add_watermarker:\n            self.watermark = StableDiffusionXLWatermarker()\n        else:\n            self.watermark = None\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.enable_vae_slicing\n    def enable_vae_slicing(self):\n        r\"\"\"\n        Enable sliced VAE decoding. When this option is enabled, the VAE will split the input tensor in slices to\n        compute decoding in several steps. This is useful to save some memory and allow larger batch sizes.\n        \"\"\"\n        self.vae.enable_slicing()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.disable_vae_slicing\n    def disable_vae_slicing(self):\n        r\"\"\"\n        Disable sliced VAE decoding. If `enable_vae_slicing` was previously enabled, this method will go back to\n        computing decoding in one step.\n        \"\"\"\n        self.vae.disable_slicing()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.enable_vae_tiling\n    def enable_vae_tiling(self):\n        r\"\"\"\n        Enable tiled VAE decoding. When this option is enabled, the VAE will split the input tensor into tiles to\n        compute decoding and encoding in several steps. This is useful for saving a large amount of memory and to allow\n        processing larger images.\n        \"\"\"\n        self.vae.enable_tiling()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.disable_vae_tiling\n    def disable_vae_tiling(self):\n        r\"\"\"\n        Disable tiled VAE decoding. If `enable_vae_tiling` was previously enabled, this method will go back to\n        computing decoding in one step.\n        \"\"\"\n        self.vae.disable_tiling()\n\n    def enable_model_cpu_offload(self, gpu_id=0):\n        r\"\"\"\n        Offloads all models to CPU using accelerate, reducing memory usage with a low impact on performance. Compared\n        to `enable_sequential_cpu_offload`, this method moves one whole model at a time to the GPU when its `forward`\n        method is called, and the model remains in GPU until the next model runs. Memory savings are lower than with\n        `enable_sequential_cpu_offload`, but performance is much better due to the iterative execution of the `unet`.\n        \"\"\"\n        if is_accelerate_available() and is_accelerate_version(\">=\", \"0.17.0.dev0\"):\n            from accelerate import cpu_offload_with_hook\n        else:\n            raise ImportError(\"`enable_model_cpu_offload` requires `accelerate v0.17.0` or higher.\")\n\n        device = torch.device(f\"cuda:{gpu_id}\")\n\n\n        self.to(\"cpu\", silence_dtype_warnings=True)\n        torch.cuda.empty_cache()  # otherwise we don't see the memory savings (but they probably exist)\n\n        model_sequence = (\n            [self.text_encoder, self.text_encoder_2] if self.text_encoder is not None else [self.text_encoder_2]\n        )\n        model_sequence.extend([self.unet, self.vae])\n\n        model_sequence.extend([self.unet_sd1_5, self.vae_sd1_5, self.text_encoder_sd1_5, self.adapter])\n\n        hook = None\n        for cpu_offloaded_model in model_sequence:\n            _, hook = cpu_offload_with_hook(cpu_offloaded_model, device, prev_module_hook=hook)\n\n        # We'll offload the last model manually.\n        self.final_offload_hook = hook\n\n    def encode_prompt(\n            self,\n            prompt: str,\n            prompt_2: Optional[str] = None,\n            device: Optional[torch.device] = None,\n            num_images_per_prompt: int = 1,\n            do_classifier_free_guidance: bool = True,\n            negative_prompt: Optional[str] = None,\n            negative_prompt_2: Optional[str] = None,\n            prompt_embeds: Optional[torch.FloatTensor] = None,\n            negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n            pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n            negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n            lora_scale: Optional[float] = None,\n    ):\n        r\"\"\"\n        Encodes the prompt into text encoder hidden states.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                prompt to be encoded\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders\n            device: (`torch.device`):\n                torch device\n            num_images_per_prompt (`int`):\n                number of images that should be generated per prompt\n            do_classifier_free_guidance (`bool`):\n                whether to use classifier free guidance or not\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            lora_scale (`float`, *optional*):\n                A lora scale that will be applied to all LoRA layers of the text encoder if LoRA layers are loaded.\n        \"\"\"\n        device = device or self._execution_device\n\n        # set lora scale so that monkey patched LoRA\n        # function of text encoder can correctly access it\n        if lora_scale is not None and isinstance(self, LoraLoaderMixin):\n            self._lora_scale = lora_scale\n\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        # Define tokenizers and text encoders\n        tokenizers = [self.tokenizer, self.tokenizer_2] if self.tokenizer is not None else [self.tokenizer_2]\n        text_encoders = (\n            [self.text_encoder, self.text_encoder_2] if self.text_encoder is not None else [self.text_encoder_2]\n        )\n\n        if prompt_embeds is None:\n            prompt_2 = prompt_2 or prompt\n            # textual inversion: procecss multi-vector tokens if necessary\n            prompt_embeds_list = []\n            prompts = [prompt, prompt_2]\n            for prompt, tokenizer, text_encoder in zip(prompts, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    prompt = self.maybe_convert_prompt(prompt, tokenizer)\n\n                text_inputs = tokenizer(\n                    prompt,\n                    padding=\"max_length\",\n                    max_length=tokenizer.model_max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                text_input_ids = text_inputs.input_ids\n                untruncated_ids = tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n                if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(\n                        text_input_ids, untruncated_ids\n                ):\n                    removed_text = tokenizer.batch_decode(untruncated_ids[:, tokenizer.model_max_length - 1: -1])\n                    logger.warning(\n                        \"The following part of your input was truncated because CLIP can only handle sequences up to\"\n                        f\" {tokenizer.model_max_length} tokens: {removed_text}\"\n                    )\n\n                prompt_embeds = text_encoder(\n                    text_input_ids.to(device),\n                    output_hidden_states=True,\n                )\n\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                pooled_prompt_embeds = prompt_embeds[0]\n                prompt_embeds = prompt_embeds.hidden_states[-2]\n\n                prompt_embeds_list.append(prompt_embeds)\n\n            prompt_embeds = torch.concat(prompt_embeds_list, dim=-1)\n\n        # get unconditional embeddings for classifier free guidance\n        zero_out_negative_prompt = negative_prompt is None and self.config.force_zeros_for_empty_prompt\n        if do_classifier_free_guidance and negative_prompt_embeds is None and zero_out_negative_prompt:\n            negative_prompt_embeds = torch.zeros_like(prompt_embeds)\n            negative_pooled_prompt_embeds = torch.zeros_like(pooled_prompt_embeds)\n        elif do_classifier_free_guidance and negative_prompt_embeds is None:\n            negative_prompt = negative_prompt or \"\"\n            negative_prompt_2 = negative_prompt_2 or negative_prompt\n\n            uncond_tokens: List[str]\n            if prompt is not None and type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif isinstance(negative_prompt, str):\n                uncond_tokens = [negative_prompt, negative_prompt_2]\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n            else:\n                uncond_tokens = [negative_prompt, negative_prompt_2]\n\n            negative_prompt_embeds_list = []\n            for negative_prompt, tokenizer, text_encoder in zip(uncond_tokens, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    negative_prompt = self.maybe_convert_prompt(negative_prompt, tokenizer)\n\n                max_length = prompt_embeds.shape[1]\n                uncond_input = tokenizer(\n                    negative_prompt,\n                    padding=\"max_length\",\n                    max_length=max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                negative_prompt_embeds = text_encoder(\n                    uncond_input.input_ids.to(device),\n                    output_hidden_states=True,\n                )\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                negative_pooled_prompt_embeds = negative_prompt_embeds[0]\n                negative_prompt_embeds = negative_prompt_embeds.hidden_states[-2]\n\n                negative_prompt_embeds_list.append(negative_prompt_embeds)\n\n            negative_prompt_embeds = torch.concat(negative_prompt_embeds_list, dim=-1)\n\n        prompt_embeds = prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n        bs_embed, seq_len, _ = prompt_embeds.shape\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(bs_embed * num_images_per_prompt, seq_len, -1)\n\n        if do_classifier_free_guidance:\n            # duplicate unconditional embeddings for each generation per prompt, using mps friendly method\n            seq_len = negative_prompt_embeds.shape[1]\n            negative_prompt_embeds = negative_prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n            negative_prompt_embeds = negative_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds = negative_prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n        pooled_prompt_embeds = pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n            bs_embed * num_images_per_prompt, -1\n        )\n        if do_classifier_free_guidance:\n            negative_pooled_prompt_embeds = negative_pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n                bs_embed * num_images_per_prompt, -1\n            )\n\n        return prompt_embeds, negative_prompt_embeds, pooled_prompt_embeds, negative_pooled_prompt_embeds\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_extra_step_kwargs\n    def prepare_extra_step_kwargs(self, generator, eta):\n        # prepare extra kwargs for the scheduler step, since not all schedulers have the same signature\n        # eta (η) is only used with the DDIMScheduler, it will be ignored for other schedulers.\n        # eta corresponds to η in DDIM paper: https://arxiv.org/abs/2010.02502\n        # and should be between [0, 1]\n\n        accepts_eta = \"eta\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        extra_step_kwargs = {}\n        if accepts_eta:\n            extra_step_kwargs[\"eta\"] = eta\n\n        # check if the scheduler accepts generator\n        accepts_generator = \"generator\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        if accepts_generator:\n            extra_step_kwargs[\"generator\"] = generator\n        return extra_step_kwargs\n\n    def check_inputs(\n            self,\n            prompt,\n            prompt_2,\n            height,\n            width,\n            callback_steps,\n            negative_prompt=None,\n            negative_prompt_2=None,\n            prompt_embeds=None,\n            negative_prompt_embeds=None,\n            pooled_prompt_embeds=None,\n            negative_pooled_prompt_embeds=None,\n    ):\n        if height % 8 != 0 or width % 8 != 0:\n            raise ValueError(f\"`height` and `width` have to be divisible by 8 but are {height} and {width}.\")\n\n        if (callback_steps is None) or (\n                callback_steps is not None and (not isinstance(callback_steps, int) or callback_steps <= 0)\n        ):\n            raise ValueError(\n                f\"`callback_steps` has to be a positive integer but is {callback_steps} of type\"\n                f\" {type(callback_steps)}.\"\n            )\n\n        if prompt is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt_2 is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt_2`: {prompt_2} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n        elif prompt_2 is not None and (not isinstance(prompt_2, str) and not isinstance(prompt_2, list)):\n            raise ValueError(f\"`prompt_2` has to be of type `str` or `list` but is {type(prompt_2)}\")\n\n        if negative_prompt is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n        elif negative_prompt_2 is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt_2`: {negative_prompt_2} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n\n        if prompt_embeds is not None and negative_prompt_embeds is not None:\n            if prompt_embeds.shape != negative_prompt_embeds.shape:\n                raise ValueError(\n                    \"`prompt_embeds` and `negative_prompt_embeds` must have the same shape when passed directly, but\"\n                    f\" got: `prompt_embeds` {prompt_embeds.shape} != `negative_prompt_embeds`\"\n                    f\" {negative_prompt_embeds.shape}.\"\n                )\n\n        if prompt_embeds is not None and pooled_prompt_embeds is None:\n            raise ValueError(\n                \"If `prompt_embeds` are provided, `pooled_prompt_embeds` also have to be passed. Make sure to generate `pooled_prompt_embeds` from the same text encoder that was used to generate `prompt_embeds`.\"\n            )\n\n        if negative_prompt_embeds is not None and negative_pooled_prompt_embeds is None:\n            raise ValueError(\n                \"If `negative_prompt_embeds` are provided, `negative_pooled_prompt_embeds` also have to be passed. Make sure to generate `negative_pooled_prompt_embeds` from the same text encoder that was used to generate `negative_prompt_embeds`.\"\n            )\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_latents\n    def prepare_latents(self, batch_size, num_channels_latents, height, width, dtype, device, generator, latents=None):\n        shape = (batch_size, num_channels_latents, height // self.vae_scale_factor, width // self.vae_scale_factor)\n        if isinstance(generator, list) and len(generator) != batch_size:\n            raise ValueError(\n                f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n            )\n\n        if latents is None:\n            latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n        else:\n            latents = latents.to(device)\n\n        # scale the initial noise by the standard deviation required by the scheduler\n        latents = latents * self.scheduler.init_noise_sigma\n        return latents\n\n    def _get_add_time_ids(self, original_size, crops_coords_top_left, target_size, dtype):\n        add_time_ids = list(original_size + crops_coords_top_left + target_size)\n\n        passed_add_embed_dim = (\n                self.unet.config.addition_time_embed_dim * len(add_time_ids) + self.text_encoder_2.config.projection_dim\n        )\n        expected_add_embed_dim = self.unet.add_embedding.linear_1.in_features\n\n        if expected_add_embed_dim != passed_add_embed_dim:\n            raise ValueError(\n                f\"Model expects an added time embedding vector of length {expected_add_embed_dim}, but a vector of {passed_add_embed_dim} was created. The model has an incorrect config. Please check `unet.config.time_embedding_type` and `text_encoder_2.config.projection_dim`.\"\n            )\n\n        add_time_ids = torch.tensor([add_time_ids], dtype=dtype)\n        return add_time_ids\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion_upscale.StableDiffusionUpscalePipeline.upcast_vae\n    def upcast_vae(self):\n        dtype = self.vae.dtype\n        self.vae.to(dtype=torch.float32)\n        use_torch_2_0_or_xformers = isinstance(\n            self.vae.decoder.mid_block.attentions[0].processor,\n            (\n                AttnProcessor2_0,\n                XFormersAttnProcessor,\n                FusedAttnProcessor2_0,\n            ),\n        )\n        # if xformers or torch_2_0 is used attention block does not need\n        # to be in float32 which can save lots of memory\n        if use_torch_2_0_or_xformers:\n            self.vae.post_quant_conv.to(dtype)\n            self.vae.decoder.conv_in.to(dtype)\n            self.vae.decoder.mid_block.to(dtype)\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n            self,\n            prompt: Union[str, List[str]] = None,\n            prompt_2: Optional[Union[str, List[str]]] = None,\n            prompt_sd1_5: Optional[Union[str, List[str]]] = None,\n            height: Optional[int] = None,\n            width: Optional[int] = None,\n            height_sd1_5: Optional[int] = None,\n            width_sd1_5: Optional[int] = None,\n            num_inference_steps: int = 50,\n            denoising_end: Optional[float] = None,\n            guidance_scale: float = 5.0,\n            negative_prompt: Optional[Union[str, List[str]]] = None,\n            negative_prompt_2: Optional[Union[str, List[str]]] = None,\n            num_images_per_prompt: Optional[int] = 1,\n            eta: float = 0.0,\n            generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n            latents: Optional[torch.FloatTensor] = None,\n            latents_sd1_5: Optional[torch.FloatTensor] = None,\n            prompt_embeds: Optional[torch.FloatTensor] = None,\n            negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n            prompt_embeds_sd1_5: Optional[torch.FloatTensor] = None,\n            negative_prompt_embeds_sd1_5: Optional[torch.FloatTensor] = None,\n            pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n            negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n            output_type: Optional[str] = \"pil\",\n            return_dict: bool = True,\n            callback: Optional[Callable[[int, int, torch.FloatTensor], None]] = None,\n            callback_steps: int = 1,\n            cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n            guidance_rescale: float = 0.0,\n            original_size: Optional[Tuple[int, int]] = None,\n            crops_coords_top_left: Tuple[int, int] = (0, 0),\n            target_size: Optional[Tuple[int, int]] = None,\n            adapter_condition_scale: Optional[float] = 1.0,\n            adapter_guidance_start: Union[float, List[float]] = 0.5,\n            denoising_start: Optional[float] = None,\n            adapter_type: str = \"de\",  # \"de\", \"en\", \"en_de\"\n            fusion_guidance_scale: Optional[float] = None,\n            enable_time_step: bool = False\n    ):\n        r\"\"\"\n        Function invoked when calling the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide the image generation. If not defined, one has to pass `prompt_embeds`.\n                instead.\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders\n            height (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The height in pixels of the generated image.\n            width (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The width in pixels of the generated image.\n            num_inference_steps (`int`, *optional*, defaults to 50):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            denoising_end (`float`, *optional*):\n                When specified, determines the fraction (between 0.0 and 1.0) of the total denoising process to be\n                completed before it is intentionally prematurely terminated. As a result, the returned sample will\n                still retain a substantial amount of noise as determined by the discrete timesteps selected by the\n                scheduler. The denoising_end parameter should ideally be utilized when this pipeline forms a part of a\n                \"Mixture of Denoisers\" multi-pipeline setup, as elaborated in [**Refining the Image\n                Output**](https://huggingface.co/docs/diffusers/api/pipelines/stable_diffusion/stable_diffusion_xl#refining-the-image-output)\n            guidance_scale (`float`, *optional*, defaults to 5.0):\n                Guidance scale as defined in [Classifier-Free Diffusion Guidance](https://arxiv.org/abs/2207.12598).\n                `guidance_scale` is defined as `w` of equation 2. of [Imagen\n                Paper](https://arxiv.org/pdf/2205.11487.pdf). Guidance scale is enabled by setting `guidance_scale >\n                1`. Higher guidance scale encourages to generate images that are closely linked to the text `prompt`,\n                usually at the expense of lower image quality.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            eta (`float`, *optional*, defaults to 0.0):\n                Corresponds to parameter eta (η) in the DDIM paper: https://arxiv.org/abs/2010.02502. Only applies to\n                [`schedulers.DDIMScheduler`], will be ignored for others.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                One or a list of [torch generator(s)](https://pytorch.org/docs/stable/generated/torch.Generator.html)\n                to make generation deterministic.\n            latents (`torch.FloatTensor`, *optional*):\n                Pre-generated noisy latents, sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor will ge generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generate image. Choose between\n                [PIL](https://pillow.readthedocs.io/en/stable/): `PIL.Image.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] instead\n                of a plain tuple.\n            callback (`Callable`, *optional*):\n                A function that will be called every `callback_steps` steps during inference. The function will be\n                called with the following arguments: `callback(step: int, timestep: int, latents: torch.FloatTensor)`.\n            callback_steps (`int`, *optional*, defaults to 1):\n                The frequency at which the `callback` function will be called. If not specified, the callback will be\n                called at every step.\n            cross_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            guidance_rescale (`float`, *optional*, defaults to 0.7):\n                Guidance rescale factor proposed by [Common Diffusion Noise Schedules and Sample Steps are\n                Flawed](https://arxiv.org/pdf/2305.08891.pdf) `guidance_scale` is defined as `φ` in equation 16. of\n                [Common Diffusion Noise Schedules and Sample Steps are Flawed](https://arxiv.org/pdf/2305.08891.pdf).\n                Guidance rescale factor should fix overexposure when using zero terminal SNR.\n            original_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                If `original_size` is not the same as `target_size` the image will appear to be down- or upsampled.\n                `original_size` defaults to `(width, height)` if not specified. Part of SDXL's micro-conditioning as\n                explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            crops_coords_top_left (`Tuple[int]`, *optional*, defaults to (0, 0)):\n                `crops_coords_top_left` can be used to generate an image that appears to be \"cropped\" from the position\n                `crops_coords_top_left` downwards. Favorable, well-centered images are usually achieved by setting\n                `crops_coords_top_left` to (0, 0). Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            target_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                For most cases, `target_size` should be set to the desired height and width of the generated image. If\n                not specified it will default to `(width, height)`. Part of SDXL's micro-conditioning as explained in\n                section 2.2 of [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n\n        Examples:\n\n        Returns:\n            [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] or `tuple`:\n            [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] if `return_dict` is True, otherwise a\n            `tuple`. When returning a tuple, the first element is a list with the generated images.\n        \"\"\"\n        # 0. Default height and width to unet\n        height = height or self.default_sample_size * self.vae_scale_factor\n        width = width or self.default_sample_size * self.vae_scale_factor\n\n        height_sd1_5 = height_sd1_5 or self.default_sample_size_sd1_5 * self.vae_scale_factor_sd1_5\n        width_sd1_5 = width_sd1_5 or self.default_sample_size_sd1_5 * self.vae_scale_factor_sd1_5\n\n        original_size = original_size or (height, width)\n        target_size = target_size or (height, width)\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            prompt_2,\n            height,\n            width,\n            callback_steps,\n            negative_prompt,\n            negative_prompt_2,\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n        )\n\n        self.check_inputs_sd1_5(\n            prompt if prompt_sd1_5 is None else prompt_sd1_5, height_sd1_5, width_sd1_5, callback_steps, negative_prompt, prompt_embeds, negative_prompt_embeds\n        )\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        device = torch.device('cuda')\n\n        # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2)\n        # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1`\n        # corresponds to doing no classifier free guidance.\n        do_classifier_free_guidance = guidance_scale > 1.0\n\n        # 3. Encode input prompt\n        text_encoder_lora_scale = (\n            cross_attention_kwargs.get(\"scale\", None) if cross_attention_kwargs is not None else None\n        )\n        (\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n        ) = self.encode_prompt(\n            prompt=prompt,\n            prompt_2=prompt_2,\n            device=device,\n            num_images_per_prompt=num_images_per_prompt,\n            do_classifier_free_guidance=do_classifier_free_guidance,\n            negative_prompt=negative_prompt,\n            negative_prompt_2=negative_prompt_2,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            negative_pooled_prompt_embeds=negative_pooled_prompt_embeds,\n            lora_scale=text_encoder_lora_scale,\n        )\n\n        prompt_embeds_sd1_5 = self._encode_prompt_sd1_5(\n            prompt if prompt_sd1_5 is None else prompt_sd1_5,\n            device,\n            num_images_per_prompt,\n            do_classifier_free_guidance,\n            negative_prompt,\n            prompt_embeds=prompt_embeds_sd1_5,\n            negative_prompt_embeds=negative_prompt_embeds_sd1_5,\n            lora_scale=text_encoder_lora_scale,\n        )\n        # todo: implement prompt_embeds for SD1.5\n\n        # 4. Prepare timesteps\n        self.scheduler_sd1_5.set_timesteps(num_inference_steps, device=device)\n        timesteps_sd1_5 = self.scheduler_sd1_5.timesteps\n        num_inference_steps_sd1_5 = num_inference_steps\n\n        self.scheduler.set_timesteps(num_inference_steps, device=device)\n\n        timesteps, num_inference_steps = self.get_timesteps(\n            num_inference_steps, adapter_guidance_start, device, denoising_start=denoising_start\n        )\n        latent_timestep = timesteps[:1].repeat(batch_size * num_images_per_prompt)\n\n        # 5. Prepare latent variables\n        num_channels_latents = self.unet.config.in_channels\n        latents = self.prepare_latents(\n            batch_size * num_images_per_prompt,\n            num_channels_latents,\n            height,\n            width,\n            prompt_embeds.dtype,\n            device,\n            generator,\n            latents,\n        )\n\n        num_channels_latents_sd1_5 = self.unet_sd1_5.config.in_channels\n        latents_sd1_5 = self.prepare_latents_sd1_5(\n            batch_size * num_images_per_prompt,\n            num_channels_latents_sd1_5,\n            height_sd1_5,\n            width_sd1_5,\n            prompt_embeds_sd1_5.dtype,\n            device,\n            generator,\n            latents_sd1_5,\n        )\n\n        # 6. Prepare extra step kwargs.\n        extra_step_kwargs = self.prepare_extra_step_kwargs(generator, eta)\n\n        # 7. Prepare added time ids & embeddings\n        add_text_embeds = pooled_prompt_embeds\n        add_time_ids = self._get_add_time_ids(\n            original_size, crops_coords_top_left, target_size, dtype=prompt_embeds.dtype\n        )\n\n        if do_classifier_free_guidance:\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds], dim=0)\n            add_text_embeds = torch.cat([negative_pooled_prompt_embeds, add_text_embeds], dim=0)\n            add_time_ids = torch.cat([add_time_ids, add_time_ids], dim=0)\n\n        prompt_embeds = prompt_embeds.to(device)\n        add_text_embeds = add_text_embeds.to(device)\n        add_time_ids = add_time_ids.to(device).repeat(batch_size * num_images_per_prompt, 1)\n\n        # 8. Denoising loop\n        num_warmup_steps = max(len(timesteps) - num_inference_steps * self.scheduler.order, 0)\n\n        # 7.1 Apply denoising_end\n        if denoising_end is not None and type(denoising_end) == float and denoising_end > 0 and denoising_end < 1:\n            discrete_timestep_cutoff = int(\n                round(\n                    self.scheduler.config.num_train_timesteps\n                    - (denoising_end * self.scheduler.config.num_train_timesteps)\n                )\n            )\n            num_inference_steps = len(list(filter(lambda ts: ts >= discrete_timestep_cutoff, timesteps)))\n            timesteps = timesteps[:num_inference_steps]\n\n        latents_sd1_5_prior = latents_sd1_5.clone()\n\n        with self.progress_bar(total=num_inference_steps_sd1_5) as progress_bar:\n            for i, t in enumerate(timesteps_sd1_5):\n\n                #################### SD1.5 forward ####################\n                t_sd1_5 = timesteps_sd1_5[i]\n\n                latent_model_input = torch.cat([latents_sd1_5_prior] * 2) if do_classifier_free_guidance else latents_sd1_5_prior\n                latent_model_input = self.scheduler_sd1_5.scale_model_input(latent_model_input, t_sd1_5)\n\n                # predict the noise residual\n                unet_output = self.unet_sd1_5(\n                    latent_model_input,\n                    t_sd1_5,\n                    encoder_hidden_states=prompt_embeds_sd1_5,\n                    cross_attention_kwargs=cross_attention_kwargs,\n                    return_hidden_states=False\n                )\n                noise_pred = unet_output.sample\n\n                # perform guidance\n                if do_classifier_free_guidance:\n                    noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                    noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                if do_classifier_free_guidance and guidance_rescale > 0.0:\n                    # Based on 3.4. in https://arxiv.org/pdf/2305.08891.pdf\n                    noise_pred = rescale_noise_cfg(noise_pred, noise_pred_text, guidance_rescale=guidance_rescale)\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents_sd1_5_prior = self.scheduler_sd1_5.step(noise_pred, t_sd1_5, latents_sd1_5_prior, **extra_step_kwargs, return_dict=False)[0]\n\n                #################### End of SD1.5 forward ####################\n\n                # call the callback, if provided\n                if i == len(timesteps_sd1_5) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler_sd1_5.order == 0):\n                    progress_bar.update()\n\n        add_noise = True if denoising_start is None else False\n        latents = self.prepare_xl_latents_from_sd_1_5(latents_sd1_5_prior, latent_timestep, batch_size,\n                                                      num_images_per_prompt, height, width, prompt_embeds.dtype, device,\n                                                      generator=generator, add_noise=add_noise)\n        latents_sd1_5 = self.sd1_5_add_noise(latents_sd1_5_prior, latent_timestep, generator, device,\n                                             prompt_embeds.dtype)\n\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                # expand the latents if we are doing classifier free guidance\n\n                #################### SD1.5 forward ####################\n                t_sd1_5 = timesteps_sd1_5[i]\n                latent_model_input = torch.cat([latents_sd1_5] * 2) if do_classifier_free_guidance else latents\n                latent_model_input = self.scheduler_sd1_5.scale_model_input(latent_model_input, t_sd1_5)\n\n                unet_output = self.unet_sd1_5(\n                    latent_model_input,\n                    t_sd1_5,\n                    encoder_hidden_states=prompt_embeds_sd1_5,\n                    cross_attention_kwargs=cross_attention_kwargs,\n                    return_hidden_states=True,\n                    return_encoder_feature=True\n                )\n                noise_pred = unet_output.sample\n                hidden_states = unet_output.hidden_states\n                encoder_feature = unet_output.encoder_feature\n\n\n                # adapter forward\n                if adapter_type == \"de\":\n                    down_bridge_residuals = None\n                    up_block_additional_residual = self.adapter(hidden_states, t=t_sd1_5 if enable_time_step else None)\n                    for xx in range(len(up_block_additional_residual)):\n                        up_block_additional_residual[xx] = up_block_additional_residual[xx] * adapter_condition_scale\n                elif adapter_type == \"en\":\n                    up_block_additional_residual = None\n                    down_bridge_residuals = self.adapter(encoder_feature)\n                    for xx in range(len(down_bridge_residuals)):\n                        down_bridge_residuals[xx] = down_bridge_residuals[xx] * adapter_condition_scale\n                else:\n                    dict = self.adapter(x=hidden_states, enc_x=encoder_feature)\n                    down_bridge_residuals = dict['encoder_features']\n                    up_block_additional_residual = dict['decoder_features']\n                    for xx in range(len(up_block_additional_residual)):\n                        up_block_additional_residual[xx] = up_block_additional_residual[xx] * adapter_condition_scale\n                    for xx in range(len(down_bridge_residuals)):\n                        down_bridge_residuals[xx] = down_bridge_residuals[xx] * adapter_condition_scale\n\n                # perform guidance\n                if do_classifier_free_guidance:\n                    noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                    noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                if do_classifier_free_guidance and guidance_rescale > 0.0:\n                    # Based on 3.4. in https://arxiv.org/pdf/2305.08891.pdf\n                    noise_pred = rescale_noise_cfg(noise_pred, noise_pred_text, guidance_rescale=guidance_rescale)\n\n                # compute the previous noisy sample x_t -> x_t-1\n\n                if self.scheduler_sd1_5.num_inference_steps == self.scheduler_sd1_5._step_index: # VM PATCH\n                    self.scheduler_sd1_5._step_index = 0\n                latents_sd1_5 = self.scheduler_sd1_5.step(noise_pred, t_sd1_5, latents_sd1_5, **extra_step_kwargs,\n                                                          return_dict=False)[0]\n\n                #################### End of SD1.5 forward ####################\n\n                latent_model_input = torch.cat([latents] * 2) if do_classifier_free_guidance else latents\n\n                latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n                # predict the noise residual\n                added_cond_kwargs = {\"text_embeds\": add_text_embeds, \"time_ids\": add_time_ids}\n\n                noise_pred = self.unet(\n                    latent_model_input,\n                    t,\n                    encoder_hidden_states=prompt_embeds,\n                    cross_attention_kwargs=cross_attention_kwargs,\n                    added_cond_kwargs=added_cond_kwargs,\n                    up_block_additional_residual=up_block_additional_residual,\n                    down_bridge_residuals=down_bridge_residuals,\n                    return_dict=False,\n                    fusion_guidance_scale=fusion_guidance_scale\n                )[0]\n\n                # perform guidance\n                if do_classifier_free_guidance:\n                    noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                    noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                if do_classifier_free_guidance and guidance_rescale > 0.0:\n                    # Based on 3.4. in https://arxiv.org/pdf/2305.08891.pdf\n                    noise_pred = rescale_noise_cfg(noise_pred, noise_pred_text, guidance_rescale=guidance_rescale)\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents = self.scheduler.step(noise_pred, t, latents, **extra_step_kwargs, return_dict=False)[0]\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n                    if callback is not None and i % callback_steps == 0:\n                        callback(i, t, latents)\n\n        # make sure the VAE is in float32 mode, as it overflows in float16\n        if self.vae.dtype == torch.float16 and self.vae.config.force_upcast:\n            self.upcast_vae()\n            latents = latents.to(next(iter(self.vae.post_quant_conv.parameters())).dtype)\n\n        if not output_type == \"latent\":\n            image = self.vae.decode(latents / self.vae.config.scaling_factor, return_dict=False)[0]\n        else:\n            image = latents\n            return StableDiffusionXLPipelineOutput(images=image)\n\n        # apply watermark if available\n        if self.watermark is not None:\n            image = self.watermark.apply_watermark(image)\n\n        image = self.image_processor.postprocess(image, output_type=output_type)\n\n        # Offload last model to CPU\n        if hasattr(self, \"final_offload_hook\") and self.final_offload_hook is not None:\n            self.final_offload_hook.offload()\n\n        if not return_dict:\n            return (image,)\n\n        return StableDiffusionXLPipelineOutput(images=image)\n\n    # Overrride to properly handle the loading and unloading of the additional text encoder.\n    def load_lora_weights(self, pretrained_model_name_or_path_or_dict: Union[str, Dict[str, torch.Tensor]], **kwargs):\n        # We could have accessed the unet config from `lora_state_dict()` too. We pass\n        # it here explicitly to be able to tell that it's coming from an SDXL\n        # pipeline.\n        state_dict, network_alphas = self.lora_state_dict(\n            pretrained_model_name_or_path_or_dict,\n            unet_config=self.unet.config,\n            **kwargs,\n        )\n        self.load_lora_into_unet(state_dict, network_alphas=network_alphas, unet=self.unet)\n\n        text_encoder_state_dict = {k: v for k, v in state_dict.items() if \"text_encoder.\" in k}\n        if len(text_encoder_state_dict) > 0:\n            self.load_lora_into_text_encoder(\n                text_encoder_state_dict,\n                network_alphas=network_alphas,\n                text_encoder=self.text_encoder,\n                prefix=\"text_encoder\",\n                lora_scale=self.lora_scale,\n            )\n\n        text_encoder_2_state_dict = {k: v for k, v in state_dict.items() if \"text_encoder_2.\" in k}\n        if len(text_encoder_2_state_dict) > 0:\n            self.load_lora_into_text_encoder(\n                text_encoder_2_state_dict,\n                network_alphas=network_alphas,\n                text_encoder=self.text_encoder_2,\n                prefix=\"text_encoder_2\",\n                lora_scale=self.lora_scale,\n            )\n\n    @classmethod\n    def save_lora_weights(\n            self,\n            save_directory: Union[str, os.PathLike],\n            unet_lora_layers: Dict[str, Union[torch.nn.Module, torch.Tensor]] = None,\n            text_encoder_lora_layers: Dict[str, Union[torch.nn.Module, torch.Tensor]] = None,\n            text_encoder_2_lora_layers: Dict[str, Union[torch.nn.Module, torch.Tensor]] = None,\n            is_main_process: bool = True,\n            weight_name: str = None,\n            save_function: Callable = None,\n            safe_serialization: bool = True,\n    ):\n        state_dict = {}\n\n        def pack_weights(layers, prefix):\n            layers_weights = layers.state_dict() if isinstance(layers, torch.nn.Module) else layers\n            layers_state_dict = {f\"{prefix}.{module_name}\": param for module_name, param in layers_weights.items()}\n            return layers_state_dict\n\n        state_dict.update(pack_weights(unet_lora_layers, \"unet\"))\n\n        if text_encoder_lora_layers and text_encoder_2_lora_layers:\n            state_dict.update(pack_weights(text_encoder_lora_layers, \"text_encoder\"))\n            state_dict.update(pack_weights(text_encoder_2_lora_layers, \"text_encoder_2\"))\n\n        self.write_lora_layers(\n            state_dict=state_dict,\n            save_directory=save_directory,\n            is_main_process=is_main_process,\n            weight_name=weight_name,\n            save_function=save_function,\n            safe_serialization=safe_serialization,\n        )\n\n    def _remove_text_encoder_monkey_patch(self):\n        self._remove_text_encoder_monkey_patch_classmethod(self.text_encoder)\n        self._remove_text_encoder_monkey_patch_classmethod(self.text_encoder_2)\n\n    def _encode_prompt_sd1_5(\n            self,\n            prompt,\n            device,\n            num_images_per_prompt,\n            do_classifier_free_guidance,\n            negative_prompt=None,\n            prompt_embeds: Optional[torch.FloatTensor] = None,\n            negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n            lora_scale: Optional[float] = None,\n    ):\n        r\"\"\"\n        Encodes the prompt into text encoder hidden states.\n\n        Args:\n             prompt (`str` or `List[str]`, *optional*):\n                prompt to be encoded\n            device: (`torch.device`):\n                torch device\n            num_images_per_prompt (`int`):\n                number of images that should be generated per prompt\n            do_classifier_free_guidance (`bool`):\n                whether to use classifier free guidance or not\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            lora_scale (`float`, *optional*):\n                A lora scale that will be applied to all LoRA layers of the text encoder if LoRA layers are loaded.\n        \"\"\"\n        # set lora scale so that monkey patched LoRA\n        # function of text encoder can correctly access it\n        if lora_scale is not None and isinstance(self, LoraLoaderMixin):\n            self._lora_scale = lora_scale\n\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        if prompt_embeds is None:\n            # textual inversion: procecss multi-vector tokens if necessary\n            if isinstance(self, TextualInversionLoaderMixin):\n                prompt = self.maybe_convert_prompt(prompt, self.tokenizer_sd1_5)\n\n            text_inputs = self.tokenizer_sd1_5(\n                prompt,\n                padding=\"max_length\",\n                max_length=self.tokenizer_sd1_5.model_max_length,\n                truncation=True,\n                return_tensors=\"pt\",\n            )\n            text_input_ids = text_inputs.input_ids\n            untruncated_ids = self.tokenizer_sd1_5(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n            if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(\n                    text_input_ids, untruncated_ids\n            ):\n                removed_text = self.tokenizer_sd1_5.batch_decode(\n                    untruncated_ids[:, self.tokenizer_sd1_5.model_max_length - 1: -1]\n                )\n                logger.warning(\n                    \"The following part of your input was truncated because CLIP can only handle sequences up to\"\n                    f\" {self.tokenizer_sd1_5.model_max_length} tokens: {removed_text}\"\n                )\n\n            if hasattr(self.text_encoder_sd1_5.config,\n                       \"use_attention_mask\") and self.text_encoder_sd1_5.config.use_attention_mask:\n                attention_mask = text_inputs.attention_mask.to(device)\n            else:\n                attention_mask = None\n\n            prompt_embeds = self.text_encoder_sd1_5(\n                text_input_ids.to(device),\n                attention_mask=attention_mask,\n            )\n            prompt_embeds = prompt_embeds[0]\n\n        if self.text_encoder_sd1_5 is not None:\n            prompt_embeds_dtype = self.text_encoder_sd1_5.dtype\n        elif self.unet_sd1_5 is not None:\n            prompt_embeds_dtype = self.unet_sd1_5.dtype\n        else:\n            prompt_embeds_dtype = prompt_embeds.dtype\n\n        prompt_embeds = prompt_embeds.to(dtype=prompt_embeds_dtype, device=device)\n\n        bs_embed, seq_len, _ = prompt_embeds.shape\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(bs_embed * num_images_per_prompt, seq_len, -1)\n\n        # get unconditional embeddings for classifier free guidance\n        if do_classifier_free_guidance and negative_prompt_embeds is None:\n            uncond_tokens: List[str]\n            if negative_prompt is None:\n                uncond_tokens = [\"\"] * batch_size\n            elif prompt is not None and type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif isinstance(negative_prompt, str):\n                uncond_tokens = [negative_prompt]\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n            else:\n                uncond_tokens = negative_prompt\n\n            # textual inversion: procecss multi-vector tokens if necessary\n            if isinstance(self, TextualInversionLoaderMixin):\n                uncond_tokens = self.maybe_convert_prompt(uncond_tokens, self.tokenizer_sd1_5)\n\n            max_length = prompt_embeds.shape[1]\n            uncond_input = self.tokenizer_sd1_5(\n                uncond_tokens,\n                padding=\"max_length\",\n                max_length=max_length,\n                truncation=True,\n                return_tensors=\"pt\",\n            )\n\n            if hasattr(self.text_encoder_sd1_5.config,\n                       \"use_attention_mask\") and self.text_encoder_sd1_5.config.use_attention_mask:\n                attention_mask = uncond_input.attention_mask.to(device)\n            else:\n                attention_mask = None\n\n            negative_prompt_embeds = self.text_encoder_sd1_5(\n                uncond_input.input_ids.to(device),\n                attention_mask=attention_mask,\n            )\n            negative_prompt_embeds = negative_prompt_embeds[0]\n\n        if do_classifier_free_guidance:\n            # duplicate unconditional embeddings for each generation per prompt, using mps friendly method\n            seq_len = negative_prompt_embeds.shape[1]\n\n            negative_prompt_embeds = negative_prompt_embeds.to(dtype=prompt_embeds_dtype, device=device)\n\n            negative_prompt_embeds = negative_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds = negative_prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n            # For classifier free guidance, we need to do two forward passes.\n            # Here we concatenate the unconditional and text embeddings into a single batch\n            # to avoid doing two forward passes\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds])\n\n        return prompt_embeds\n\n    def decode_latents_sd1_5(self, latents):\n        warnings.warn(\n            \"The decode_latents method is deprecated and will be removed in a future version. Please\"\n            \" use VaeImageProcessor instead\",\n            FutureWarning,\n        )\n        latents = 1 / self.vae_sd1_5.config.scaling_factor * latents\n        image = self.vae_sd1_5.decode(latents, return_dict=False)[0]\n        image = (image / 2 + 0.5).clamp(0, 1)\n        # we always cast to float32 as this does not cause significant overhead and is compatible with bfloat16\n        image = image.cpu().permute(0, 2, 3, 1).float().numpy()\n        return image\n\n    def check_inputs_sd1_5(\n            self,\n            prompt,\n            height,\n            width,\n            callback_steps,\n            negative_prompt=None,\n            prompt_embeds=None,\n            negative_prompt_embeds=None,\n    ):\n        if height % 8 != 0 or width % 8 != 0:\n            raise ValueError(f\"`height` and `width` have to be divisible by 8 but are {height} and {width}.\")\n\n        if (callback_steps is None) or (\n                callback_steps is not None and (not isinstance(callback_steps, int) or callback_steps <= 0)\n        ):\n            raise ValueError(\n                f\"`callback_steps` has to be a positive integer but is {callback_steps} of type\"\n                f\" {type(callback_steps)}.\"\n            )\n\n        if prompt is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n\n        if negative_prompt is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n\n        if prompt_embeds is not None and negative_prompt_embeds is not None:\n            if prompt_embeds.shape != negative_prompt_embeds.shape:\n                raise ValueError(\n                    \"`prompt_embeds` and `negative_prompt_embeds` must have the same shape when passed directly, but\"\n                    f\" got: `prompt_embeds` {prompt_embeds.shape} != `negative_prompt_embeds`\"\n                    f\" {negative_prompt_embeds.shape}.\"\n                )\n\n    def prepare_xl_latents_from_sd_1_5(\n            self, latent, timestep, batch_size, num_images_per_prompt, height, width, dtype, device, generator=None,\n            add_noise=True\n    ):\n        # sd1.5 latent -> img\n        image = self.vae_sd1_5.decode(latent / self.vae_sd1_5.config.scaling_factor, return_dict=False)[0]\n        do_denormalize = [True] * image.shape[0]\n        image = self.image_processor_sd1_5.postprocess(image, output_type='pil', do_denormalize=do_denormalize)[0]\n        image = image.resize((height, width))\n        # image.save('./test_img/image_sd1_5.jpg')\n        # input()\n\n        if not isinstance(image, (torch.Tensor, PIL.Image.Image, list)):\n            raise ValueError(\n                f\"`image` has to be of type `torch.Tensor`, `PIL.Image.Image` or list but is {type(image)}\"\n            )\n\n        # Offload text encoder if `enable_model_cpu_offload` was enabled\n        if hasattr(self, \"final_offload_hook\") and self.final_offload_hook is not None:\n            self.text_encoder_2.to(\"cpu\")\n            torch.cuda.empty_cache()\n\n        image = self.image_processor.preprocess(image)\n\n        image = image.to(device=device, dtype=dtype)\n\n        batch_size = batch_size * num_images_per_prompt\n\n        if image.shape[1] == 4:\n            init_latents = image\n\n        else:\n            # make sure the VAE is in float32 mode, as it overflows in float16\n            if self.vae.config.force_upcast:\n                image = image.float()\n                self.vae.to(dtype=torch.float32)\n\n            if isinstance(generator, list) and len(generator) != batch_size:\n                raise ValueError(\n                    f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                    f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n                )\n\n            elif isinstance(generator, list):\n                init_latents = [\n                    self.vae.encode(image[i: i + 1]).latent_dist.sample(generator[i]) for i in range(batch_size)\n                ]\n                init_latents = torch.cat(init_latents, dim=0)\n            else:\n                init_latents = self.vae.encode(image).latent_dist.sample(generator)\n\n            if self.vae.config.force_upcast:\n                self.vae.to(dtype)\n\n            init_latents = init_latents.to(dtype)\n            init_latents = self.vae.config.scaling_factor * init_latents\n\n        if batch_size > init_latents.shape[0] and batch_size % init_latents.shape[0] == 0:\n            # expand init_latents for batch_size\n            additional_image_per_prompt = batch_size // init_latents.shape[0]\n            init_latents = torch.cat([init_latents] * additional_image_per_prompt, dim=0)\n        elif batch_size > init_latents.shape[0] and batch_size % init_latents.shape[0] != 0:\n            raise ValueError(\n                f\"Cannot duplicate `image` of batch size {init_latents.shape[0]} to {batch_size} text prompts.\"\n            )\n        else:\n            init_latents = torch.cat([init_latents], dim=0)\n\n        if add_noise:\n            shape = init_latents.shape\n            noise = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n            # get latents\n            init_latents = self.scheduler.add_noise(init_latents, noise, timestep)\n\n        latents = init_latents\n\n        return latents\n\n    def sd1_5_add_noise(self, init_latents, timestep, generator, device, dtype):\n        shape = init_latents.shape\n        noise = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n        # get latents\n        init_latents = self.scheduler.add_noise(init_latents, noise, timestep)\n\n        image = self.vae_sd1_5.decode(init_latents / self.vae_sd1_5.config.scaling_factor, return_dict=False)[0]\n        do_denormalize = [True] * image.shape[0]\n        image = self.image_processor_sd1_5.postprocess(image, output_type='pil', do_denormalize=do_denormalize)[0]\n        # image.save(f'./test_img/noisy_image_sd1_5_{int(timestep)}.jpg')\n\n        return init_latents\n\n    def get_timesteps(self, num_inference_steps, strength, device, denoising_start=None):\n        # get the original timestep using init_timestep\n        if denoising_start is None:\n            init_timestep = min(int(num_inference_steps * strength), num_inference_steps)\n            t_start = max(num_inference_steps - init_timestep, 0)\n        else:\n            t_start = 0\n\n        timesteps = self.scheduler.timesteps[t_start * self.scheduler.order :]\n\n        # Strength is irrelevant if we directly request a timestep to start at;\n        # that is, strength is determined by the denoising_start instead.\n        if denoising_start is not None:\n            discrete_timestep_cutoff = int(\n                round(\n                    self.scheduler.config.num_train_timesteps\n                    - (denoising_start * self.scheduler.config.num_train_timesteps)\n                )\n            )\n            timesteps = list(filter(lambda ts: ts < discrete_timestep_cutoff, timesteps))\n            return torch.tensor(timesteps), len(timesteps)\n\n        return timesteps, num_inference_steps - t_start\n\n    def prepare_latents_sd1_5(self, batch_size, num_channels_latents, height, width, dtype, device, generator, latents=None):\n        shape = (batch_size, num_channels_latents, height // self.vae_scale_factor_sd1_5, width // self.vae_scale_factor_sd1_5)\n        if isinstance(generator, list) and len(generator) != batch_size:\n            raise ValueError(\n                f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n            )\n\n        if latents is None:\n            latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n        else:\n            latents = latents.to(device)\n\n        # scale the initial noise by the standard deviation required by the scheduler\n        latents = latents * self.scheduler_sd1_5.init_noise_sigma\n        return latents\n"
  },
  {
    "path": "scripts/xadapter/pipeline_sd_xl_adapter_controlnet.py",
    "content": "# Copyright 2023 The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport inspect\nimport os\nfrom typing import Any, Callable, Dict, List, Optional, Tuple, Union\nimport warnings\n\nimport torch\nimport PIL\nimport numpy as np\nimport torch.nn.functional as F\nfrom transformers import CLIPTextModel, CLIPTextModelWithProjection, CLIPTokenizer\n\nfrom diffusers.image_processor import VaeImageProcessor\nfrom diffusers.loaders import FromSingleFileMixin, LoraLoaderMixin, TextualInversionLoaderMixin\n# from diffusers.models import AutoencoderKL, UNet2DConditionModel\nfrom diffusers.models import AutoencoderKL, ControlNetModel\n\nfrom diffusers.models.attention_processor import (\n    AttnProcessor2_0,\n    FusedAttnProcessor2_0,\n    XFormersAttnProcessor,\n)\nfrom diffusers.schedulers import KarrasDiffusionSchedulers\nfrom diffusers.utils import (\n    is_accelerate_available,\n    is_accelerate_version,\n    is_invisible_watermark_available,\n    logging,\n    replace_example_docstring,\n)\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline\nfrom diffusers.pipelines.stable_diffusion_xl import StableDiffusionXLPipelineOutput\nfrom diffusers.pipelines.controlnet.multicontrolnet import MultiControlNetModel\nfrom modules.xadapter.adapter import Adapter_XL\nfrom modules.xadapter.unet_adapter import UNet2DConditionModel\n\nif is_invisible_watermark_available():\n    from diffusers.pipelines.stable_diffusion_xl.watermark import StableDiffusionXLWatermarker\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\nEXAMPLE_DOC_STRING = \"\"\"\n    Examples:\n        ```py\n        >>> import torch\n        >>> from diffusers import StableDiffusionXLPipeline\n\n        >>> pipe = StableDiffusionXLPipeline.from_pretrained(\n        ...     \"stabilityai/stable-diffusion-xl-base-1.0\", torch_dtype=torch.float16\n        ... )\n        >>> pipe = pipe.to(\"cuda\")\n\n        >>> prompt = \"a photo of an astronaut riding a horse on mars\"\n        >>> image = pipe(prompt).images[0]\n        ```\n\"\"\"\n\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.rescale_noise_cfg\ndef rescale_noise_cfg(noise_cfg, noise_pred_text, guidance_rescale=0.0):\n    \"\"\"\n    Rescale `noise_cfg` according to `guidance_rescale`. Based on findings of [Common Diffusion Noise Schedules and\n    Sample Steps are Flawed](https://arxiv.org/pdf/2305.08891.pdf). See Section 3.4\n    \"\"\"\n    std_text = noise_pred_text.std(dim=list(range(1, noise_pred_text.ndim)), keepdim=True)\n    std_cfg = noise_cfg.std(dim=list(range(1, noise_cfg.ndim)), keepdim=True)\n    # rescale the results from guidance (fixes overexposure)\n    noise_pred_rescaled = noise_cfg * (std_text / std_cfg)\n    # mix with the original results from guidance by factor guidance_rescale to avoid \"plain looking\" images\n    noise_cfg = guidance_rescale * noise_pred_rescaled + (1 - guidance_rescale) * noise_cfg\n    return noise_cfg\n\n\nclass StableDiffusionXLAdapterControlnetPipeline(DiffusionPipeline, FromSingleFileMixin, LoraLoaderMixin):\n    r\"\"\"\n    Pipeline for text-to-image generation using Stable Diffusion XL.\n\n    This model inherits from [`DiffusionPipeline`]. Check the superclass documentation for the generic methods the\n    library implements for all the pipelines (such as downloading or saving, running on a particular device, etc.)\n\n    In addition the pipeline inherits the following loading methods:\n        - *LoRA*: [`StableDiffusionXLPipeline.load_lora_weights`]\n        - *Ckpt*: [`loaders.FromSingleFileMixin.from_single_file`]\n\n    as well as the following saving methods:\n        - *LoRA*: [`loaders.StableDiffusionXLPipeline.save_lora_weights`]\n\n    Args:\n        vae ([`AutoencoderKL`]):\n            Variational Auto-Encoder (VAE) Model to encode and decode images to and from latent representations.\n        text_encoder ([`CLIPTextModel`]):\n            Frozen text-encoder. Stable Diffusion XL uses the text portion of\n            [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModel), specifically\n            the [clip-vit-large-patch14](https://huggingface.co/openai/clip-vit-large-patch14) variant.\n        text_encoder_2 ([` CLIPTextModelWithProjection`]):\n            Second frozen text-encoder. Stable Diffusion XL uses the text and pool portion of\n            [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModelWithProjection),\n            specifically the\n            [laion/CLIP-ViT-bigG-14-laion2B-39B-b160k](https://huggingface.co/laion/CLIP-ViT-bigG-14-laion2B-39B-b160k)\n            variant.\n        tokenizer (`CLIPTokenizer`):\n            Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer).\n        tokenizer_2 (`CLIPTokenizer`):\n            Second Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer).\n        unet ([`UNet2DConditionModel`]): Conditional U-Net architecture to denoise the encoded image latents.\n        scheduler ([`SchedulerMixin`]):\n            A scheduler to be used in combination with `unet` to denoise the encoded image latents. Can be one of\n            [`DDIMScheduler`], [`LMSDiscreteScheduler`], or [`PNDMScheduler`].\n    \"\"\"\n\n    def __init__(\n        self,\n        vae: AutoencoderKL,\n        text_encoder: CLIPTextModel,\n        text_encoder_2: CLIPTextModelWithProjection,\n        tokenizer: CLIPTokenizer,\n        tokenizer_2: CLIPTokenizer,\n        unet: UNet2DConditionModel,\n        scheduler: KarrasDiffusionSchedulers,\n        vae_sd1_5: AutoencoderKL,\n        text_encoder_sd1_5: CLIPTextModel,\n        tokenizer_sd1_5: CLIPTokenizer,\n        unet_sd1_5: UNet2DConditionModel,\n        scheduler_sd1_5: KarrasDiffusionSchedulers,\n        adapter: Adapter_XL,\n        controlnet: ControlNetModel,\n        force_zeros_for_empty_prompt: bool = True,\n        add_watermarker: Optional[bool] = None,\n    ):\n        super().__init__()\n\n        self.register_modules(\n            vae=vae,\n            text_encoder=text_encoder,\n            text_encoder_2=text_encoder_2,\n            tokenizer=tokenizer,\n            tokenizer_2=tokenizer_2,\n            unet=unet,\n            scheduler=scheduler,\n            vae_sd1_5=vae_sd1_5,\n            text_encoder_sd1_5=text_encoder_sd1_5,\n            tokenizer_sd1_5=tokenizer_sd1_5,\n            unet_sd1_5=unet_sd1_5,\n            scheduler_sd1_5=scheduler_sd1_5,\n            adapter=adapter,\n            controlnet=controlnet\n        )\n        self.register_to_config(force_zeros_for_empty_prompt=force_zeros_for_empty_prompt)\n        self.vae_scale_factor = 2 ** (len(self.vae.config.block_out_channels) - 1)\n        self.vae_scale_factor_sd1_5 = 2 ** (len(self.vae_sd1_5.config.block_out_channels) - 1)\n        self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor)\n        self.default_sample_size = self.unet.config.sample_size\n        self.control_image_processor = VaeImageProcessor(\n            vae_scale_factor=self.vae_scale_factor_sd1_5, do_convert_rgb=True, do_normalize=False\n        )\n        self.image_processor_sd1_5 = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor_sd1_5)\n\n        add_watermarker = add_watermarker if add_watermarker is not None else is_invisible_watermark_available()\n\n        if add_watermarker:\n            self.watermark = StableDiffusionXLWatermarker()\n        else:\n            self.watermark = None\n\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.enable_vae_slicing\n    def enable_vae_slicing(self):\n        r\"\"\"\n        Enable sliced VAE decoding. When this option is enabled, the VAE will split the input tensor in slices to\n        compute decoding in several steps. This is useful to save some memory and allow larger batch sizes.\n        \"\"\"\n        self.vae.enable_slicing()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.disable_vae_slicing\n    def disable_vae_slicing(self):\n        r\"\"\"\n        Disable sliced VAE decoding. If `enable_vae_slicing` was previously enabled, this method will go back to\n        computing decoding in one step.\n        \"\"\"\n        self.vae.disable_slicing()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.enable_vae_tiling\n    def enable_vae_tiling(self):\n        r\"\"\"\n        Enable tiled VAE decoding. When this option is enabled, the VAE will split the input tensor into tiles to\n        compute decoding and encoding in several steps. This is useful for saving a large amount of memory and to allow\n        processing larger images.\n        \"\"\"\n        self.vae.enable_tiling()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.disable_vae_tiling\n    def disable_vae_tiling(self):\n        r\"\"\"\n        Disable tiled VAE decoding. If `enable_vae_tiling` was previously enabled, this method will go back to\n        computing decoding in one step.\n        \"\"\"\n        self.vae.disable_tiling()\n\n    def enable_model_cpu_offload(self, gpu_id=0):\n        r\"\"\"\n        Offloads all models to CPU using accelerate, reducing memory usage with a low impact on performance. Compared\n        to `enable_sequential_cpu_offload`, this method moves one whole model at a time to the GPU when its `forward`\n        method is called, and the model remains in GPU until the next model runs. Memory savings are lower than with\n        `enable_sequential_cpu_offload`, but performance is much better due to the iterative execution of the `unet`.\n        \"\"\"\n        if is_accelerate_available() and is_accelerate_version(\">=\", \"0.17.0.dev0\"):\n            from accelerate import cpu_offload_with_hook\n        else:\n            raise ImportError(\"`enable_model_cpu_offload` requires `accelerate v0.17.0` or higher.\")\n\n        device = torch.device(f\"cuda:{gpu_id}\")\n\n        if device.type != \"cpu\":\n            self.to(\"cpu\", silence_dtype_warnings=True)\n            torch.cuda.empty_cache()  # otherwise we don't see the memory savings (but they probably exist)\n\n        model_sequence = (\n            [self.text_encoder, self.text_encoder_2] if self.text_encoder is not None else [self.text_encoder_2]\n        )\n        model_sequence.extend([self.unet, self.vae])\n\n        model_sequence.extend([self.unet_sd1_5, self.vae_sd1_5, self.text_encoder_sd1_5])\n        model_sequence.extend([self.controlnet, self.adapter])\n\n        hook = None\n        for cpu_offloaded_model in model_sequence:\n            _, hook = cpu_offload_with_hook(cpu_offloaded_model, device, prev_module_hook=hook)\n\n        # We'll offload the last model manually.\n        self.final_offload_hook = hook\n\n    def encode_prompt(\n        self,\n        prompt: str,\n        prompt_2: Optional[str] = None,\n        device: Optional[torch.device] = None,\n        num_images_per_prompt: int = 1,\n        do_classifier_free_guidance: bool = True,\n        negative_prompt: Optional[str] = None,\n        negative_prompt_2: Optional[str] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        lora_scale: Optional[float] = None,\n    ):\n        r\"\"\"\n        Encodes the prompt into text encoder hidden states.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                prompt to be encoded\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders\n            device: (`torch.device`):\n                torch device\n            num_images_per_prompt (`int`):\n                number of images that should be generated per prompt\n            do_classifier_free_guidance (`bool`):\n                whether to use classifier free guidance or not\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            lora_scale (`float`, *optional*):\n                A lora scale that will be applied to all LoRA layers of the text encoder if LoRA layers are loaded.\n        \"\"\"\n        device = device or self._execution_device\n\n        # set lora scale so that monkey patched LoRA\n        # function of text encoder can correctly access it\n        if lora_scale is not None and isinstance(self, LoraLoaderMixin):\n            self._lora_scale = lora_scale\n\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        # Define tokenizers and text encoders\n        tokenizers = [self.tokenizer, self.tokenizer_2] if self.tokenizer is not None else [self.tokenizer_2]\n        text_encoders = (\n            [self.text_encoder, self.text_encoder_2] if self.text_encoder is not None else [self.text_encoder_2]\n        )\n\n        if prompt_embeds is None:\n            prompt_2 = prompt_2 or prompt\n            # textual inversion: procecss multi-vector tokens if necessary\n            prompt_embeds_list = []\n            prompts = [prompt, prompt_2]\n            for prompt, tokenizer, text_encoder in zip(prompts, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    prompt = self.maybe_convert_prompt(prompt, tokenizer)\n\n                text_inputs = tokenizer(\n                    prompt,\n                    padding=\"max_length\",\n                    max_length=tokenizer.model_max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                text_input_ids = text_inputs.input_ids\n                untruncated_ids = tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n                if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(\n                    text_input_ids, untruncated_ids\n                ):\n                    removed_text = tokenizer.batch_decode(untruncated_ids[:, tokenizer.model_max_length - 1 : -1])\n                    logger.warning(\n                        \"The following part of your input was truncated because CLIP can only handle sequences up to\"\n                        f\" {tokenizer.model_max_length} tokens: {removed_text}\"\n                    )\n\n                prompt_embeds = text_encoder(\n                    text_input_ids.to(device),\n                    output_hidden_states=True,\n                )\n\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                pooled_prompt_embeds = prompt_embeds[0]\n                prompt_embeds = prompt_embeds.hidden_states[-2]\n\n                prompt_embeds_list.append(prompt_embeds)\n\n            prompt_embeds = torch.concat(prompt_embeds_list, dim=-1)\n\n        # get unconditional embeddings for classifier free guidance\n        zero_out_negative_prompt = negative_prompt is None and self.config.force_zeros_for_empty_prompt\n        if do_classifier_free_guidance and negative_prompt_embeds is None and zero_out_negative_prompt:\n            negative_prompt_embeds = torch.zeros_like(prompt_embeds)\n            negative_pooled_prompt_embeds = torch.zeros_like(pooled_prompt_embeds)\n        elif do_classifier_free_guidance and negative_prompt_embeds is None:\n            negative_prompt = negative_prompt or \"\"\n            negative_prompt_2 = negative_prompt_2 or negative_prompt\n\n            uncond_tokens: List[str]\n            if prompt is not None and type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif isinstance(negative_prompt, str):\n                uncond_tokens = [negative_prompt, negative_prompt_2]\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n            else:\n                uncond_tokens = [negative_prompt, negative_prompt_2]\n\n            negative_prompt_embeds_list = []\n            for negative_prompt, tokenizer, text_encoder in zip(uncond_tokens, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    negative_prompt = self.maybe_convert_prompt(negative_prompt, tokenizer)\n\n                max_length = prompt_embeds.shape[1]\n                uncond_input = tokenizer(\n                    negative_prompt,\n                    padding=\"max_length\",\n                    max_length=max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                negative_prompt_embeds = text_encoder(\n                    uncond_input.input_ids.to(device),\n                    output_hidden_states=True,\n                )\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                negative_pooled_prompt_embeds = negative_prompt_embeds[0]\n                negative_prompt_embeds = negative_prompt_embeds.hidden_states[-2]\n\n                negative_prompt_embeds_list.append(negative_prompt_embeds)\n\n            negative_prompt_embeds = torch.concat(negative_prompt_embeds_list, dim=-1)\n\n        prompt_embeds = prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n        bs_embed, seq_len, _ = prompt_embeds.shape\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(bs_embed * num_images_per_prompt, seq_len, -1)\n\n        if do_classifier_free_guidance:\n            # duplicate unconditional embeddings for each generation per prompt, using mps friendly method\n            seq_len = negative_prompt_embeds.shape[1]\n            negative_prompt_embeds = negative_prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n            negative_prompt_embeds = negative_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds = negative_prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n        pooled_prompt_embeds = pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n            bs_embed * num_images_per_prompt, -1\n        )\n        if do_classifier_free_guidance:\n            negative_pooled_prompt_embeds = negative_pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n                bs_embed * num_images_per_prompt, -1\n            )\n\n        return prompt_embeds, negative_prompt_embeds, pooled_prompt_embeds, negative_pooled_prompt_embeds\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_extra_step_kwargs\n    def prepare_extra_step_kwargs(self, generator, eta):\n        # prepare extra kwargs for the scheduler step, since not all schedulers have the same signature\n        # eta (η) is only used with the DDIMScheduler, it will be ignored for other schedulers.\n        # eta corresponds to η in DDIM paper: https://arxiv.org/abs/2010.02502\n        # and should be between [0, 1]\n\n        accepts_eta = \"eta\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        extra_step_kwargs = {}\n        if accepts_eta:\n            extra_step_kwargs[\"eta\"] = eta\n\n        # check if the scheduler accepts generator\n        accepts_generator = \"generator\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        if accepts_generator:\n            extra_step_kwargs[\"generator\"] = generator\n        return extra_step_kwargs\n\n    def check_inputs(\n        self,\n        prompt,\n        prompt_2,\n        height,\n        width,\n        callback_steps,\n        negative_prompt=None,\n        negative_prompt_2=None,\n        prompt_embeds=None,\n        negative_prompt_embeds=None,\n        pooled_prompt_embeds=None,\n        negative_pooled_prompt_embeds=None,\n    ):\n        if height % 8 != 0 or width % 8 != 0:\n            raise ValueError(f\"`height` and `width` have to be divisible by 8 but are {height} and {width}.\")\n\n        if (callback_steps is None) or (\n            callback_steps is not None and (not isinstance(callback_steps, int) or callback_steps <= 0)\n        ):\n            raise ValueError(\n                f\"`callback_steps` has to be a positive integer but is {callback_steps} of type\"\n                f\" {type(callback_steps)}.\"\n            )\n\n        if prompt is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt_2 is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt_2`: {prompt_2} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n        elif prompt_2 is not None and (not isinstance(prompt_2, str) and not isinstance(prompt_2, list)):\n            raise ValueError(f\"`prompt_2` has to be of type `str` or `list` but is {type(prompt_2)}\")\n\n        if negative_prompt is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n        elif negative_prompt_2 is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt_2`: {negative_prompt_2} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n\n        if prompt_embeds is not None and negative_prompt_embeds is not None:\n            if prompt_embeds.shape != negative_prompt_embeds.shape:\n                raise ValueError(\n                    \"`prompt_embeds` and `negative_prompt_embeds` must have the same shape when passed directly, but\"\n                    f\" got: `prompt_embeds` {prompt_embeds.shape} != `negative_prompt_embeds`\"\n                    f\" {negative_prompt_embeds.shape}.\"\n                )\n\n        if prompt_embeds is not None and pooled_prompt_embeds is None:\n            raise ValueError(\n                \"If `prompt_embeds` are provided, `pooled_prompt_embeds` also have to be passed. Make sure to generate `pooled_prompt_embeds` from the same text encoder that was used to generate `prompt_embeds`.\"\n            )\n\n        if negative_prompt_embeds is not None and negative_pooled_prompt_embeds is None:\n            raise ValueError(\n                \"If `negative_prompt_embeds` are provided, `negative_pooled_prompt_embeds` also have to be passed. Make sure to generate `negative_pooled_prompt_embeds` from the same text encoder that was used to generate `negative_prompt_embeds`.\"\n            )\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_latents\n    def prepare_latents(self, batch_size, num_channels_latents, height, width, dtype, device, generator, latents=None):\n        shape = (batch_size, num_channels_latents, height // self.vae_scale_factor, width // self.vae_scale_factor)\n        if isinstance(generator, list) and len(generator) != batch_size:\n            raise ValueError(\n                f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n            )\n\n        if latents is None:\n            latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n        else:\n            latents = latents.to(device)\n\n        # scale the initial noise by the standard deviation required by the scheduler\n        latents = latents * self.scheduler.init_noise_sigma\n        return latents\n\n    def _get_add_time_ids(self, original_size, crops_coords_top_left, target_size, dtype):\n        add_time_ids = list(original_size + crops_coords_top_left + target_size)\n\n        passed_add_embed_dim = (\n            self.unet.config.addition_time_embed_dim * len(add_time_ids) + self.text_encoder_2.config.projection_dim\n        )\n        expected_add_embed_dim = self.unet.add_embedding.linear_1.in_features\n\n        if expected_add_embed_dim != passed_add_embed_dim:\n            raise ValueError(\n                f\"Model expects an added time embedding vector of length {expected_add_embed_dim}, but a vector of {passed_add_embed_dim} was created. The model has an incorrect config. Please check `unet.config.time_embedding_type` and `text_encoder_2.config.projection_dim`.\"\n            )\n\n        add_time_ids = torch.tensor([add_time_ids], dtype=dtype)\n        return add_time_ids\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion_upscale.StableDiffusionUpscalePipeline.upcast_vae\n    def upcast_vae(self):\n        dtype = self.vae.dtype\n        self.vae.to(dtype=torch.float32)\n        use_torch_2_0_or_xformers = isinstance(\n            self.vae.decoder.mid_block.attentions[0].processor,\n            (\n                AttnProcessor2_0,\n                XFormersAttnProcessor,\n                FusedAttnProcessor2_0,\n            ),\n        )\n        # if xformers or torch_2_0 is used attention block does not need\n        # to be in float32 which can save lots of memory\n        if use_torch_2_0_or_xformers:\n            self.vae.post_quant_conv.to(dtype)\n            self.vae.decoder.conv_in.to(dtype)\n            self.vae.decoder.mid_block.to(dtype)\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n        self,\n        prompt: Union[str, List[str]] = None,\n        prompt_2: Optional[Union[str, List[str]]] = None,\n        prompt_sd1_5: Optional[Union[str, List[str]]] = None,\n        height: Optional[int] = None,\n        width: Optional[int] = None,\n        height_sd1_5: Optional[int] = None,\n        width_sd1_5: Optional[int] = None,\n        image: Union[\n                torch.FloatTensor,\n                PIL.Image.Image,\n                np.ndarray,\n                List[torch.FloatTensor],\n                List[PIL.Image.Image],\n                List[np.ndarray],\n            ] = None,\n        num_inference_steps: int = 50,\n        denoising_end: Optional[float] = None,\n        guidance_scale: float = 5.0,\n        negative_prompt: Optional[Union[str, List[str]]] = None,\n        negative_prompt_2: Optional[Union[str, List[str]]] = None,\n        num_images_per_prompt: Optional[int] = 1,\n        eta: float = 0.0,\n        generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n        latents: Optional[torch.FloatTensor] = None,\n        latents_sd1_5: Optional[torch.FloatTensor] = None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n        output_type: Optional[str] = \"pil\",\n        return_dict: bool = True,\n        callback: Optional[Callable[[int, int, torch.FloatTensor], None]] = None,\n        callback_steps: int = 1,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        guidance_rescale: float = 0.0,\n        original_size: Optional[Tuple[int, int]] = None,\n        crops_coords_top_left: Tuple[int, int] = (0, 0),\n        target_size: Optional[Tuple[int, int]] = None,\n        controlnet_conditioning_scale: Union[float, List[float]] = 1.0,\n        adapter_condition_scale: Optional[float] = 1.0,\n        guess_mode: bool = False,\n        control_guidance_start: Union[float, List[float]] = 0.0,\n        control_guidance_end: Union[float, List[float]] = 1.0,\n        adapter_guidance_start: Union[float, List[float]] = 0.5,\n        denoising_start: Optional[float] = None,\n        filter_scale: Optional[float] = 0.9,\n        filter_range: Optional[int] = 1,\n        fusion_guidance_scale: Optional[float] = None,\n        enable_time_step: bool = False,\n        fusion_type: Optional[str] = 'ADD',\n    ):\n        r\"\"\"\n        Function invoked when calling the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide the image generation. If not defined, one has to pass `prompt_embeds`.\n                instead.\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders\n            height (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The height in pixels of the generated image.\n            width (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The width in pixels of the generated image.\n            num_inference_steps (`int`, *optional*, defaults to 50):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            denoising_end (`float`, *optional*):\n                When specified, determines the fraction (between 0.0 and 1.0) of the total denoising process to be\n                completed before it is intentionally prematurely terminated. As a result, the returned sample will\n                still retain a substantial amount of noise as determined by the discrete timesteps selected by the\n                scheduler. The denoising_end parameter should ideally be utilized when this pipeline forms a part of a\n                \"Mixture of Denoisers\" multi-pipeline setup, as elaborated in [**Refining the Image\n                Output**](https://huggingface.co/docs/diffusers/api/pipelines/stable_diffusion/stable_diffusion_xl#refining-the-image-output)\n            guidance_scale (`float`, *optional*, defaults to 5.0):\n                Guidance scale as defined in [Classifier-Free Diffusion Guidance](https://arxiv.org/abs/2207.12598).\n                `guidance_scale` is defined as `w` of equation 2. of [Imagen\n                Paper](https://arxiv.org/pdf/2205.11487.pdf). Guidance scale is enabled by setting `guidance_scale >\n                1`. Higher guidance scale encourages to generate images that are closely linked to the text `prompt`,\n                usually at the expense of lower image quality.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            eta (`float`, *optional*, defaults to 0.0):\n                Corresponds to parameter eta (η) in the DDIM paper: https://arxiv.org/abs/2010.02502. Only applies to\n                [`schedulers.DDIMScheduler`], will be ignored for others.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                One or a list of [torch generator(s)](https://pytorch.org/docs/stable/generated/torch.Generator.html)\n                to make generation deterministic.\n            latents (`torch.FloatTensor`, *optional*):\n                Pre-generated noisy latents, sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor will ge generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generate image. Choose between\n                [PIL](https://pillow.readthedocs.io/en/stable/): `PIL.Image.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] instead\n                of a plain tuple.\n            callback (`Callable`, *optional*):\n                A function that will be called every `callback_steps` steps during inference. The function will be\n                called with the following arguments: `callback(step: int, timestep: int, latents: torch.FloatTensor)`.\n            callback_steps (`int`, *optional*, defaults to 1):\n                The frequency at which the `callback` function will be called. If not specified, the callback will be\n                called at every step.\n            cross_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            guidance_rescale (`float`, *optional*, defaults to 0.7):\n                Guidance rescale factor proposed by [Common Diffusion Noise Schedules and Sample Steps are\n                Flawed](https://arxiv.org/pdf/2305.08891.pdf) `guidance_scale` is defined as `φ` in equation 16. of\n                [Common Diffusion Noise Schedules and Sample Steps are Flawed](https://arxiv.org/pdf/2305.08891.pdf).\n                Guidance rescale factor should fix overexposure when using zero terminal SNR.\n            original_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                If `original_size` is not the same as `target_size` the image will appear to be down- or upsampled.\n                `original_size` defaults to `(width, height)` if not specified. Part of SDXL's micro-conditioning as\n                explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            crops_coords_top_left (`Tuple[int]`, *optional*, defaults to (0, 0)):\n                `crops_coords_top_left` can be used to generate an image that appears to be \"cropped\" from the position\n                `crops_coords_top_left` downwards. Favorable, well-centered images are usually achieved by setting\n                `crops_coords_top_left` to (0, 0). Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            target_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                For most cases, `target_size` should be set to the desired height and width of the generated image. If\n                not specified it will default to `(width, height)`. Part of SDXL's micro-conditioning as explained in\n                section 2.2 of [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n\n        Examples:\n\n        Returns:\n            [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] or `tuple`:\n            [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] if `return_dict` is True, otherwise a\n            `tuple`. When returning a tuple, the first element is a list with the generated images.\n        \"\"\"\n        # 0. Default height and width to unet\n\n        controlnet = self.controlnet\n\n        skip_adapter_steps = int(adapter_guidance_start * num_inference_steps)\n\n        # align format for control guidance\n        if not isinstance(control_guidance_start, list) and isinstance(control_guidance_end, list):\n            control_guidance_start = len(control_guidance_end) * [control_guidance_start]\n        elif not isinstance(control_guidance_end, list) and isinstance(control_guidance_start, list):\n            control_guidance_end = len(control_guidance_start) * [control_guidance_end]\n        elif not isinstance(control_guidance_start, list) and not isinstance(control_guidance_end, list):\n            mult = len(controlnet.nets) if isinstance(controlnet, MultiControlNetModel) else 1\n            control_guidance_start, control_guidance_end = mult * [control_guidance_start], mult * [\n                control_guidance_end\n            ]\n\n        height = height or self.default_sample_size * self.vae_scale_factor\n        width = width or self.default_sample_size * self.vae_scale_factor\n\n        height_sd1_5 = height_sd1_5 or self.default_sample_size_sd1_5 * self.vae_scale_factor_sd1_5\n        width_sd1_5 = width_sd1_5 or self.default_sample_size_sd1_5 * self.vae_scale_factor_sd1_5\n\n        original_size = original_size or (height, width)\n        target_size = target_size or (height, width)\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            prompt_2,\n            height,\n            width,\n            callback_steps,\n            negative_prompt,\n            negative_prompt_2,\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n        )\n\n        self.check_inputs_sd1_5(\n            prompt if prompt_sd1_5 is None else prompt_sd1_5,\n            image,\n            callback_steps,\n            negative_prompt,\n            prompt_embeds,\n            negative_prompt_embeds,\n            controlnet_conditioning_scale,\n            control_guidance_start,\n            control_guidance_end,\n        )\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        device = torch.device('cuda')\n\n        if isinstance(controlnet, MultiControlNetModel) and isinstance(controlnet_conditioning_scale, float):\n            controlnet_conditioning_scale = [controlnet_conditioning_scale] * len(controlnet.nets)\n\n        global_pool_conditions = (\n            controlnet.config.global_pool_conditions\n            if isinstance(controlnet, ControlNetModel)\n            else controlnet.nets[0].config.global_pool_conditions\n        )\n        guess_mode = guess_mode or global_pool_conditions\n\n        # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2)\n        # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1`\n        # corresponds to doing no classifier free guidance.\n        do_classifier_free_guidance = guidance_scale > 1.0\n\n        # prepare controlnet image\n        if isinstance(controlnet, ControlNetModel):\n            image = self.prepare_image(\n                image=image,\n                width=width_sd1_5,\n                height=height_sd1_5,\n                batch_size=batch_size * num_images_per_prompt,\n                num_images_per_prompt=num_images_per_prompt,\n                device=device,\n                dtype=controlnet.dtype,\n                do_classifier_free_guidance=do_classifier_free_guidance,\n                guess_mode=guess_mode,\n            )\n            height_sd1_5, width_sd1_5 = image.shape[-2:]\n        elif isinstance(controlnet, MultiControlNetModel):\n            images = []\n\n            for image_ in image:\n                image_ = self.prepare_image(\n                    image=image_,\n                    width=width_sd1_5,\n                    height=height_sd1_5,\n                    batch_size=batch_size * num_images_per_prompt,\n                    num_images_per_prompt=num_images_per_prompt,\n                    device=device,\n                    dtype=controlnet.dtype,\n                    do_classifier_free_guidance=do_classifier_free_guidance,\n                    guess_mode=guess_mode,\n                )\n\n                images.append(image_)\n\n            image = images\n            height_sd1_5, width_sd1_5 = image[0].shape[-2:]\n        else:\n            assert False\n\n        # 3. Encode input prompt\n        text_encoder_lora_scale = (\n            cross_attention_kwargs.get(\"scale\", None) if cross_attention_kwargs is not None else None\n        )\n        (\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n        ) = self.encode_prompt(\n            prompt=prompt,\n            prompt_2=prompt_2,\n            device=device,\n            num_images_per_prompt=num_images_per_prompt,\n            do_classifier_free_guidance=do_classifier_free_guidance,\n            negative_prompt=negative_prompt,\n            negative_prompt_2=negative_prompt_2,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            negative_pooled_prompt_embeds=negative_pooled_prompt_embeds,\n            lora_scale=text_encoder_lora_scale,\n        )\n\n        prompt_embeds_sd1_5 = self._encode_prompt_sd1_5(\n            prompt if prompt_sd1_5 is None else prompt_sd1_5,\n            device,\n            num_images_per_prompt,\n            do_classifier_free_guidance,\n            negative_prompt,\n            prompt_embeds=None,\n            negative_prompt_embeds=None,\n            lora_scale=text_encoder_lora_scale,\n        )\n        # todo: implement prompt_embeds for SD1.5\n\n        # 4. Prepare timesteps\n        self.scheduler_sd1_5.set_timesteps(num_inference_steps, device=device)\n        timesteps_sd1_5 = self.scheduler_sd1_5.timesteps\n        num_inference_steps_sd1_5 = num_inference_steps\n\n        # self.scheduler.set_timesteps(num_inference_steps-skip_adapter_steps, device=device)\n        self.scheduler.set_timesteps(num_inference_steps, device=device)\n        # timesteps = self.scheduler.timesteps\n\n        timesteps, num_inference_steps = self.get_timesteps(\n            num_inference_steps, adapter_guidance_start, device, denoising_start=denoising_start\n        )\n        latent_timestep = timesteps[:1].repeat(batch_size * num_images_per_prompt)\n\n\n        # 5. Prepare latent variables\n        # if skip_adapter_steps <= 0:\n        num_channels_latents = self.unet.config.in_channels\n        latents = self.prepare_latents(\n            batch_size * num_images_per_prompt,\n            num_channels_latents,\n            height,\n            width,\n            prompt_embeds.dtype,\n            device,\n            generator,\n            latents,\n        )\n\n        num_channels_latents_sd1_5 = self.unet_sd1_5.config.in_channels\n        latents_sd1_5 = self.prepare_latents_sd1_5(\n            batch_size * num_images_per_prompt,\n            num_channels_latents_sd1_5,\n            height_sd1_5,\n            width_sd1_5,\n            prompt_embeds_sd1_5.dtype,\n            device,\n            generator,\n            latents_sd1_5,\n        )\n\n        # 6. Prepare extra step kwargs.\n        extra_step_kwargs = self.prepare_extra_step_kwargs(generator, eta)\n\n        # 7. Prepare added time ids & embeddings\n        add_text_embeds = pooled_prompt_embeds\n        add_time_ids = self._get_add_time_ids(\n            original_size, crops_coords_top_left, target_size, dtype=prompt_embeds.dtype\n        )\n\n        if do_classifier_free_guidance:\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds], dim=0)\n            add_text_embeds = torch.cat([negative_pooled_prompt_embeds, add_text_embeds], dim=0)\n            add_time_ids = torch.cat([add_time_ids, add_time_ids], dim=0)\n\n        prompt_embeds = prompt_embeds.to(device)\n        add_text_embeds = add_text_embeds.to(device)\n        add_time_ids = add_time_ids.to(device).repeat(batch_size * num_images_per_prompt, 1)\n\n        # 8. Denoising loop\n        num_warmup_steps = max(len(timesteps) - num_inference_steps * self.scheduler.order, 0)\n\n        # 7.1 Apply denoising_end\n        if denoising_end is not None and type(denoising_end) == float and denoising_end > 0 and denoising_end < 1:\n            discrete_timestep_cutoff = int(\n                round(\n                    self.scheduler.config.num_train_timesteps\n                    - (denoising_end * self.scheduler.config.num_train_timesteps)\n                )\n            )\n            num_inference_steps = len(list(filter(lambda ts: ts >= discrete_timestep_cutoff, timesteps)))\n            timesteps = timesteps[:num_inference_steps]\n\n        controlnet_keep = []\n        for i in range(len(timesteps_sd1_5)):\n            keeps = [\n                1.0 - float(i / len(timesteps_sd1_5) < s or (i + 1) / len(timesteps_sd1_5) > e)\n                for s, e in zip(control_guidance_start, control_guidance_end)\n            ]\n            controlnet_keep.append(keeps[0] if isinstance(controlnet, ControlNetModel) else keeps)\n\n        latents_sd1_5_prior = latents_sd1_5.clone()\n\n        with self.progress_bar(total=num_inference_steps_sd1_5) as progress_bar:\n            for i, t in enumerate(timesteps_sd1_5):\n                #################### SD1.5 forward ####################\n                t_sd1_5 = timesteps_sd1_5[i]\n\n                latent_model_input = torch.cat([latents_sd1_5_prior] * 2) if do_classifier_free_guidance else latents_sd1_5_prior\n                latent_model_input = self.scheduler_sd1_5.scale_model_input(latent_model_input, t_sd1_5)\n\n                # Controlnet inference\n                if guess_mode and do_classifier_free_guidance:\n                    # Infer ControlNet only for the conditional batch.\n                    control_model_input = latents_sd1_5_prior\n                    control_model_input = self.scheduler_sd1_5.scale_model_input(control_model_input, t_sd1_5)\n                    controlnet_prompt_embeds = prompt_embeds_sd1_5.chunk(2)[1]\n                else:\n                    control_model_input = latent_model_input\n                    controlnet_prompt_embeds = prompt_embeds_sd1_5\n\n                if isinstance(controlnet_keep[i], list):\n                    cond_scale = [c * s for c, s in zip(controlnet_conditioning_scale, controlnet_keep[i])]\n                else:\n                    controlnet_cond_scale = controlnet_conditioning_scale\n                    if isinstance(controlnet_cond_scale, list):\n                        controlnet_cond_scale = controlnet_cond_scale[0]\n                    cond_scale = controlnet_cond_scale * controlnet_keep[i]\n\n                down_block_res_samples, mid_block_res_sample = self.controlnet(\n                    control_model_input,\n                    t_sd1_5,\n                    encoder_hidden_states=controlnet_prompt_embeds,\n                    controlnet_cond=image,\n                    conditioning_scale=cond_scale,\n                    guess_mode=guess_mode,\n                    return_dict=False,\n                )\n\n                if guess_mode and do_classifier_free_guidance:\n                    # Infered ControlNet only for the conditional batch.\n                    # To apply the output of ControlNet to both the unconditional and conditional batches,\n                    # add 0 to the unconditional batch to keep it unchanged.\n                    down_block_res_samples = [torch.cat([torch.zeros_like(d), d]) for d in down_block_res_samples]\n                    mid_block_res_sample = torch.cat([torch.zeros_like(mid_block_res_sample), mid_block_res_sample])\n\n                # predict the noise residual\n                unet_output = self.unet_sd1_5(\n                    latent_model_input,\n                    t_sd1_5,\n                    encoder_hidden_states=prompt_embeds_sd1_5,\n                    cross_attention_kwargs=cross_attention_kwargs,\n                    down_block_additional_residuals=down_block_res_samples,\n                    mid_block_additional_residual=mid_block_res_sample,\n                    return_hidden_states=False\n                )\n                noise_pred = unet_output.sample\n                hidden_states = unet_output.hidden_states\n\n                # perform guidance\n                if do_classifier_free_guidance:\n                    noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                    noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                if do_classifier_free_guidance and guidance_rescale > 0.0:\n                    # Based on 3.4. in https://arxiv.org/pdf/2305.08891.pdf\n                    noise_pred = rescale_noise_cfg(noise_pred, noise_pred_text, guidance_rescale=guidance_rescale)\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents_sd1_5_prior = self.scheduler_sd1_5.step(noise_pred, t_sd1_5, latents_sd1_5_prior, **extra_step_kwargs, return_dict=False)[0]\n\n                #################### End of SD1.5 forward ####################\n\n                # call the callback, if provided\n                if i == len(timesteps_sd1_5) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler_sd1_5.order == 0):\n                    progress_bar.update()\n\n\n        add_noise = True if denoising_start is None else False\n        latents = self.prepare_xl_latents_from_sd_1_5(latents_sd1_5_prior, latent_timestep, batch_size,\n                        num_images_per_prompt, height, width, prompt_embeds.dtype, device, generator=generator, add_noise=add_noise)\n        latents_sd1_5 = self.sd1_5_add_noise(latents_sd1_5_prior, latent_timestep, generator, device, prompt_embeds.dtype)\n\n\n        controlnet_keep = []\n        for i in range(len(timesteps)):\n            keeps = [\n                1.0 - float(i / len(timesteps_sd1_5) < s or (i + 1) / len(timesteps_sd1_5) > e)\n                for s, e in zip(control_guidance_start, control_guidance_end)\n            ]\n            controlnet_keep.append(keeps[0] if isinstance(controlnet, ControlNetModel) else keeps)\n\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n                #################### SD1.5 forward ####################\n                t_sd1_5 = timesteps[i]\n\n                latent_model_input = torch.cat([latents_sd1_5] * 2) if do_classifier_free_guidance else latents_sd1_5\n                latent_model_input = self.scheduler_sd1_5.scale_model_input(latent_model_input, t_sd1_5)\n\n                # Controlnet inference\n                if guess_mode and do_classifier_free_guidance:\n                    # Infer ControlNet only for the conditional batch.\n                    control_model_input = latents_sd1_5\n                    control_model_input = self.scheduler_sd1_5.scale_model_input(control_model_input, t_sd1_5)\n                    controlnet_prompt_embeds = prompt_embeds_sd1_5.chunk(2)[1]\n                else:\n                    control_model_input = latent_model_input\n                    controlnet_prompt_embeds = prompt_embeds_sd1_5\n\n                if isinstance(controlnet_keep[i], list):\n                    cond_scale = [c * s for c, s in zip(controlnet_conditioning_scale, controlnet_keep[i])]\n                else:\n                    controlnet_cond_scale = controlnet_conditioning_scale\n                    if isinstance(controlnet_cond_scale, list):\n                        controlnet_cond_scale = controlnet_cond_scale[0]\n                    cond_scale = controlnet_cond_scale * controlnet_keep[i]\n\n                down_block_res_samples, mid_block_res_sample = self.controlnet(\n                    control_model_input,\n                    t_sd1_5,\n                    encoder_hidden_states=controlnet_prompt_embeds,\n                    controlnet_cond=image,\n                    conditioning_scale=cond_scale,\n                    guess_mode=guess_mode,\n                    return_dict=False,\n                )\n\n                if guess_mode and do_classifier_free_guidance:\n                    # Infered ControlNet only for the conditional batch.\n                    # To apply the output of ControlNet to both the unconditional and conditional batches,\n                    # add 0 to the unconditional batch to keep it unchanged.\n                    down_block_res_samples = [torch.cat([torch.zeros_like(d), d]) for d in down_block_res_samples]\n                    mid_block_res_sample = torch.cat([torch.zeros_like(mid_block_res_sample), mid_block_res_sample])\n\n                # predict the noise residual\n                unet_output = self.unet_sd1_5(\n                    latent_model_input,\n                    t_sd1_5,\n                    encoder_hidden_states=prompt_embeds_sd1_5,\n                    cross_attention_kwargs=cross_attention_kwargs,\n                    down_block_additional_residuals=down_block_res_samples,\n                    mid_block_additional_residual=mid_block_res_sample,\n                    return_hidden_states=True,\n                    return_encoder_feature=True\n                )\n                noise_pred = unet_output.sample\n                hidden_states = unet_output.hidden_states\n\n                # adapter forward\n                down_bridge_residuals = None\n                up_block_additional_residual = self.adapter(hidden_states)\n                for xx in range(len(up_block_additional_residual)):\n                    up_block_additional_residual[xx] = up_block_additional_residual[xx] * adapter_condition_scale\n\n\n                # perform guidance\n                if do_classifier_free_guidance:\n                    noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                    noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                if do_classifier_free_guidance and guidance_rescale > 0.0:\n                    # Based on 3.4. in https://arxiv.org/pdf/2305.08891.pdf\n                    noise_pred = rescale_noise_cfg(noise_pred, noise_pred_text, guidance_rescale=guidance_rescale)\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents_sd1_5 = self.scheduler_sd1_5.step(noise_pred, t_sd1_5, latents_sd1_5, **extra_step_kwargs, return_dict=False)[0]\n\n                #################### End of SD1.5 forward ####################\n\n                #################### Start of SDXL forward ####################\n                # if i >= skip_adapter_steps:\n                if True:\n                    latent_model_input = torch.cat([latents] * 2) if do_classifier_free_guidance else latents\n\n                    latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n                    # predict the noise residual\n                    added_cond_kwargs = {\"text_embeds\": add_text_embeds, \"time_ids\": add_time_ids}\n                    # if adapter_ablation:\n                    #     noise_pred = self.unet(\n                    #         latent_model_input,\n                    #         t,\n                    #         encoder_hidden_states=prompt_embeds,\n                    #         cross_attention_kwargs=cross_attention_kwargs,\n                    #         added_cond_kwargs=added_cond_kwargs,\n                    #         return_dict=False,\n                    #     )[0]\n                    # else:\n                    #     # noise_pred = self.unet(\n                    #     #     latent_model_input,\n                    #     #     t,\n                    #     #     encoder_hidden_states=prompt_embeds,\n                    #     #     cross_attention_kwargs=cross_attention_kwargs,\n                    #     #     added_cond_kwargs=added_cond_kwargs,\n                    #     #     up_block_additional_residual=up_block_additional_residual,\n                    #     #     down_bridge_residuals=down_bridge_residuals,\n                    #     #     return_dict=False,\n                    #     #     fusion_guidance_scale=fusion_guidance_scale,\n                    #     #     fusion_type=fusion_type,\n                    #     #     adapter=self.adapter if fusion_type == 'SPADE' else None\n                    #     # )[0]\n                    #     noise_pred = self.unet(\n                    #         latent_model_input,\n                    #         t,\n                    #         encoder_hidden_states=prompt_embeds,\n                    #         cross_attention_kwargs=cross_attention_kwargs,\n                    #         added_cond_kwargs=added_cond_kwargs,\n                    #         up_block_additional_residual=up_block_additional_residual,\n                    #         down_bridge_residuals=down_bridge_residuals,\n                    #         return_dict=False,\n                    #         fusion_guidance_scale=fusion_guidance_scale,\n                    #         fusion_type='ADD',\n                    #         adapter=None\n                    #     )[0]\n                    noise_pred = self.unet(\n                            latent_model_input,\n                            t,\n                            encoder_hidden_states=prompt_embeds,\n                            cross_attention_kwargs=cross_attention_kwargs,\n                            added_cond_kwargs=added_cond_kwargs,\n                            up_block_additional_residual=up_block_additional_residual,\n                            down_bridge_residuals=down_bridge_residuals,\n                            return_dict=False,\n                            fusion_guidance_scale=fusion_guidance_scale,\n                            fusion_type='ADD',\n                            adapter=None\n                        )[0]\n\n\n                    # perform guidance\n                    if do_classifier_free_guidance:\n                        noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                        noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                    if do_classifier_free_guidance and guidance_rescale > 0.0:\n                        # Based on 3.4. in https://arxiv.org/pdf/2305.08891.pdf\n                        noise_pred = rescale_noise_cfg(noise_pred, noise_pred_text, guidance_rescale=guidance_rescale)\n\n                    # compute the previous noisy sample x_t -> x_t-1\n                    latents = self.scheduler.step(noise_pred, t, latents, **extra_step_kwargs, return_dict=False)[0]\n\n\n                #################### End of SDXL forward ####################\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n                    if callback is not None and i % callback_steps == 0:\n                        callback(i, t, latents)\n\n        # make sure the VAE is in float32 mode, as it overflows in float16\n        if self.vae.dtype == torch.float16 and self.vae.config.force_upcast:\n            self.upcast_vae()\n            latents = latents.to(next(iter(self.vae.post_quant_conv.parameters())).dtype)\n\n        if not output_type == \"latent\":\n            image = self.vae.decode(latents / self.vae.config.scaling_factor, return_dict=False)[0]\n        else:\n            image = latents\n            return StableDiffusionXLPipelineOutput(images=image)\n\n        # apply watermark if available\n        if self.watermark is not None:\n            image = self.watermark.apply_watermark(image)\n\n        image = self.image_processor.postprocess(image, output_type=output_type)\n\n        # Offload last model to CPU\n        if hasattr(self, \"final_offload_hook\") and self.final_offload_hook is not None:\n            self.final_offload_hook.offload()\n\n        if not return_dict:\n            return (image,)\n\n        return StableDiffusionXLPipelineOutput(images=image)\n\n    # Overrride to properly handle the loading and unloading of the additional text encoder.\n    def load_lora_weights(self, pretrained_model_name_or_path_or_dict: Union[str, Dict[str, torch.Tensor]], **kwargs):\n        # We could have accessed the unet config from `lora_state_dict()` too. We pass\n        # it here explicitly to be able to tell that it's coming from an SDXL\n        # pipeline.\n        state_dict, network_alphas = self.lora_state_dict(\n            pretrained_model_name_or_path_or_dict,\n            unet_config=self.unet.config,\n            **kwargs,\n        )\n        self.load_lora_into_unet(state_dict, network_alphas=network_alphas, unet=self.unet)\n\n        text_encoder_state_dict = {k: v for k, v in state_dict.items() if \"text_encoder.\" in k}\n        if len(text_encoder_state_dict) > 0:\n            self.load_lora_into_text_encoder(\n                text_encoder_state_dict,\n                network_alphas=network_alphas,\n                text_encoder=self.text_encoder,\n                prefix=\"text_encoder\",\n                lora_scale=self.lora_scale,\n            )\n\n        text_encoder_2_state_dict = {k: v for k, v in state_dict.items() if \"text_encoder_2.\" in k}\n        if len(text_encoder_2_state_dict) > 0:\n            self.load_lora_into_text_encoder(\n                text_encoder_2_state_dict,\n                network_alphas=network_alphas,\n                text_encoder=self.text_encoder_2,\n                prefix=\"text_encoder_2\",\n                lora_scale=self.lora_scale,\n            )\n\n    @classmethod\n    def save_lora_weights(\n        self,\n        save_directory: Union[str, os.PathLike],\n        unet_lora_layers: Dict[str, Union[torch.nn.Module, torch.Tensor]] = None,\n        text_encoder_lora_layers: Dict[str, Union[torch.nn.Module, torch.Tensor]] = None,\n        text_encoder_2_lora_layers: Dict[str, Union[torch.nn.Module, torch.Tensor]] = None,\n        is_main_process: bool = True,\n        weight_name: str = None,\n        save_function: Callable = None,\n        safe_serialization: bool = True,\n    ):\n        state_dict = {}\n\n        def pack_weights(layers, prefix):\n            layers_weights = layers.state_dict() if isinstance(layers, torch.nn.Module) else layers\n            layers_state_dict = {f\"{prefix}.{module_name}\": param for module_name, param in layers_weights.items()}\n            return layers_state_dict\n\n        state_dict.update(pack_weights(unet_lora_layers, \"unet\"))\n\n        if text_encoder_lora_layers and text_encoder_2_lora_layers:\n            state_dict.update(pack_weights(text_encoder_lora_layers, \"text_encoder\"))\n            state_dict.update(pack_weights(text_encoder_2_lora_layers, \"text_encoder_2\"))\n\n        self.write_lora_layers(\n            state_dict=state_dict,\n            save_directory=save_directory,\n            is_main_process=is_main_process,\n            weight_name=weight_name,\n            save_function=save_function,\n            safe_serialization=safe_serialization,\n        )\n\n    def _remove_text_encoder_monkey_patch(self):\n        self._remove_text_encoder_monkey_patch_classmethod(self.text_encoder)\n        self._remove_text_encoder_monkey_patch_classmethod(self.text_encoder_2)\n\n    def _encode_prompt_sd1_5(\n        self,\n        prompt,\n        device,\n        num_images_per_prompt,\n        do_classifier_free_guidance,\n        negative_prompt=None,\n        prompt_embeds: Optional[torch.FloatTensor] = None,\n        negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n        lora_scale: Optional[float] = None,\n    ):\n        r\"\"\"\n        Encodes the prompt into text encoder hidden states.\n\n        Args:\n             prompt (`str` or `List[str]`, *optional*):\n                prompt to be encoded\n            device: (`torch.device`):\n                torch device\n            num_images_per_prompt (`int`):\n                number of images that should be generated per prompt\n            do_classifier_free_guidance (`bool`):\n                whether to use classifier free guidance or not\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            lora_scale (`float`, *optional*):\n                A lora scale that will be applied to all LoRA layers of the text encoder if LoRA layers are loaded.\n        \"\"\"\n        # set lora scale so that monkey patched LoRA\n        # function of text encoder can correctly access it\n        if lora_scale is not None and isinstance(self, LoraLoaderMixin):\n            self._lora_scale = lora_scale\n\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        if prompt_embeds is None:\n            # textual inversion: procecss multi-vector tokens if necessary\n            if isinstance(self, TextualInversionLoaderMixin):\n                prompt = self.maybe_convert_prompt(prompt, self.tokenizer_sd1_5)\n\n            text_inputs = self.tokenizer_sd1_5(\n                prompt,\n                padding=\"max_length\",\n                max_length=self.tokenizer_sd1_5.model_max_length,\n                truncation=True,\n                return_tensors=\"pt\",\n            )\n            text_input_ids = text_inputs.input_ids\n            untruncated_ids = self.tokenizer_sd1_5(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n            if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(\n                text_input_ids, untruncated_ids\n            ):\n                removed_text = self.tokenizer_sd1_5.batch_decode(\n                    untruncated_ids[:, self.tokenizer_sd1_5.model_max_length - 1 : -1]\n                )\n                logger.warning(\n                    \"The following part of your input was truncated because CLIP can only handle sequences up to\"\n                    f\" {self.tokenizer_sd1_5.model_max_length} tokens: {removed_text}\"\n                )\n\n            if hasattr(self.text_encoder_sd1_5.config, \"use_attention_mask\") and self.text_encoder_sd1_5.config.use_attention_mask:\n                attention_mask = text_inputs.attention_mask.to(device)\n            else:\n                attention_mask = None\n\n            prompt_embeds = self.text_encoder_sd1_5(\n                text_input_ids.to(device),\n                attention_mask=attention_mask,\n            )\n            prompt_embeds = prompt_embeds[0]\n\n        if self.text_encoder_sd1_5 is not None:\n            prompt_embeds_dtype = self.text_encoder_sd1_5.dtype\n        elif self.unet_sd1_5 is not None:\n            prompt_embeds_dtype = self.unet_sd1_5.dtype\n        else:\n            prompt_embeds_dtype = prompt_embeds.dtype\n\n        prompt_embeds = prompt_embeds.to(dtype=prompt_embeds_dtype, device=device)\n\n        bs_embed, seq_len, _ = prompt_embeds.shape\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(bs_embed * num_images_per_prompt, seq_len, -1)\n\n        # get unconditional embeddings for classifier free guidance\n        if do_classifier_free_guidance and negative_prompt_embeds is None:\n            uncond_tokens: List[str]\n            if negative_prompt is None:\n                uncond_tokens = [\"\"] * batch_size\n            elif prompt is not None and type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif isinstance(negative_prompt, str):\n                uncond_tokens = [negative_prompt]\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n            else:\n                uncond_tokens = negative_prompt\n\n            # textual inversion: procecss multi-vector tokens if necessary\n            if isinstance(self, TextualInversionLoaderMixin):\n                uncond_tokens = self.maybe_convert_prompt(uncond_tokens, self.tokenizer_sd1_5)\n\n            max_length = prompt_embeds.shape[1]\n            uncond_input = self.tokenizer_sd1_5(\n                uncond_tokens,\n                padding=\"max_length\",\n                max_length=max_length,\n                truncation=True,\n                return_tensors=\"pt\",\n            )\n\n            if hasattr(self.text_encoder_sd1_5.config, \"use_attention_mask\") and self.text_encoder_sd1_5.config.use_attention_mask:\n                attention_mask = uncond_input.attention_mask.to(device)\n            else:\n                attention_mask = None\n\n            negative_prompt_embeds = self.text_encoder_sd1_5(\n                uncond_input.input_ids.to(device),\n                attention_mask=attention_mask,\n            )\n            negative_prompt_embeds = negative_prompt_embeds[0]\n\n        if do_classifier_free_guidance:\n            # duplicate unconditional embeddings for each generation per prompt, using mps friendly method\n            seq_len = negative_prompt_embeds.shape[1]\n\n            negative_prompt_embeds = negative_prompt_embeds.to(dtype=prompt_embeds_dtype, device=device)\n\n            negative_prompt_embeds = negative_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds = negative_prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n            # For classifier free guidance, we need to do two forward passes.\n            # Here we concatenate the unconditional and text embeddings into a single batch\n            # to avoid doing two forward passes\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds])\n\n        return prompt_embeds\n\n    def decode_latents_sd1_5(self, latents):\n        warnings.warn(\n            \"The decode_latents method is deprecated and will be removed in a future version. Please\"\n            \" use VaeImageProcessor instead\",\n            FutureWarning,\n        )\n        latents = 1 / self.vae_sd1_5.config.scaling_factor * latents\n        image = self.vae_sd1_5.decode(latents, return_dict=False)[0]\n        image = (image / 2 + 0.5).clamp(0, 1)\n        # we always cast to float32 as this does not cause significant overhead and is compatible with bfloat16\n        image = image.cpu().permute(0, 2, 3, 1).float().numpy()\n        return image\n\n    def check_inputs_sd1_5(\n            self,\n            prompt,\n            image,\n            callback_steps,\n            negative_prompt=None,\n            prompt_embeds=None,\n            negative_prompt_embeds=None,\n            controlnet_conditioning_scale=1.0,\n            control_guidance_start=0.0,\n            control_guidance_end=1.0,\n    ):\n        if (callback_steps is None) or (\n                callback_steps is not None and (not isinstance(callback_steps, int) or callback_steps <= 0)\n        ):\n            raise ValueError(\n                f\"`callback_steps` has to be a positive integer but is {callback_steps} of type\"\n                f\" {type(callback_steps)}.\"\n            )\n\n        if prompt is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n\n        if negative_prompt is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n\n        if prompt_embeds is not None and negative_prompt_embeds is not None:\n            if prompt_embeds.shape != negative_prompt_embeds.shape:\n                raise ValueError(\n                    \"`prompt_embeds` and `negative_prompt_embeds` must have the same shape when passed directly, but\"\n                    f\" got: `prompt_embeds` {prompt_embeds.shape} != `negative_prompt_embeds`\"\n                    f\" {negative_prompt_embeds.shape}.\"\n                )\n\n        # `prompt` needs more sophisticated handling when there are multiple\n        # conditionings.\n        if isinstance(self.controlnet, MultiControlNetModel):\n            if isinstance(prompt, list):\n                logger.warning(\n                    f\"You have {len(self.controlnet.nets)} ControlNets and you have passed {len(prompt)}\"\n                    \" prompts. The conditionings will be fixed across the prompts.\"\n                )\n\n        # Check `image`\n        is_compiled = hasattr(F, \"scaled_dot_product_attention\") and isinstance(\n            self.controlnet, torch._dynamo.eval_frame.OptimizedModule\n        )\n        if (\n                isinstance(self.controlnet, ControlNetModel)\n                or is_compiled\n                and isinstance(self.controlnet._orig_mod, ControlNetModel)\n        ):\n            self.check_image(image, prompt, prompt_embeds)\n        elif (\n                isinstance(self.controlnet, MultiControlNetModel)\n                or is_compiled\n                and isinstance(self.controlnet._orig_mod, MultiControlNetModel)\n        ):\n            if not isinstance(image, list):\n                raise TypeError(\"For multiple controlnets: `image` must be type `list`\")\n\n            # When `image` is a nested list:\n            # (e.g. [[canny_image_1, pose_image_1], [canny_image_2, pose_image_2]])\n            elif any(isinstance(i, list) for i in image):\n                raise ValueError(\"A single batch of multiple conditionings are supported at the moment.\")\n            elif len(image) != len(self.controlnet.nets):\n                raise ValueError(\n                    f\"For multiple controlnets: `image` must have the same length as the number of controlnets, but got {len(image)} images and {len(self.controlnet.nets)} ControlNets.\"\n                )\n\n            for image_ in image:\n                self.check_image(image_, prompt, prompt_embeds)\n        else:\n            assert False\n\n        # Check `controlnet_conditioning_scale`\n        if (\n                isinstance(self.controlnet, ControlNetModel)\n                or is_compiled\n                and isinstance(self.controlnet._orig_mod, ControlNetModel)\n        ):\n            if not isinstance(controlnet_conditioning_scale, float):\n                raise TypeError(\"For single controlnet: `controlnet_conditioning_scale` must be type `float`.\")\n        elif (\n                isinstance(self.controlnet, MultiControlNetModel)\n                or is_compiled\n                and isinstance(self.controlnet._orig_mod, MultiControlNetModel)\n        ):\n            if isinstance(controlnet_conditioning_scale, list):\n                if any(isinstance(i, list) for i in controlnet_conditioning_scale):\n                    raise ValueError(\"A single batch of multiple conditionings are supported at the moment.\")\n            elif isinstance(controlnet_conditioning_scale, list) and len(controlnet_conditioning_scale) != len(\n                    self.controlnet.nets\n            ):\n                raise ValueError(\n                    \"For multiple controlnets: When `controlnet_conditioning_scale` is specified as `list`, it must have\"\n                    \" the same length as the number of controlnets\"\n                )\n        else:\n            assert False\n\n        if not isinstance(control_guidance_start, (tuple, list)):\n            control_guidance_start = [control_guidance_start]\n\n        if not isinstance(control_guidance_end, (tuple, list)):\n            control_guidance_end = [control_guidance_end]\n\n        if len(control_guidance_start) != len(control_guidance_end):\n            raise ValueError(\n                f\"`control_guidance_start` has {len(control_guidance_start)} elements, but `control_guidance_end` has {len(control_guidance_end)} elements. Make sure to provide the same number of elements to each list.\"\n            )\n\n        if isinstance(self.controlnet, MultiControlNetModel):\n            if len(control_guidance_start) != len(self.controlnet.nets):\n                raise ValueError(\n                    f\"`control_guidance_start`: {control_guidance_start} has {len(control_guidance_start)} elements but there are {len(self.controlnet.nets)} controlnets available. Make sure to provide {len(self.controlnet.nets)}.\"\n                )\n\n        for start, end in zip(control_guidance_start, control_guidance_end):\n            if start >= end:\n                raise ValueError(\n                    f\"control guidance start: {start} cannot be larger or equal to control guidance end: {end}.\"\n                )\n            if start < 0.0:\n                raise ValueError(f\"control guidance start: {start} can't be smaller than 0.\")\n            if end > 1.0:\n                raise ValueError(f\"control guidance end: {end} can't be larger than 1.0.\")\n\n    def prepare_latents_sd1_5(self, batch_size, num_channels_latents, height, width, dtype, device, generator, latents=None):\n        shape = (batch_size, num_channels_latents, height // self.vae_scale_factor_sd1_5, width // self.vae_scale_factor_sd1_5)\n        if isinstance(generator, list) and len(generator) != batch_size:\n            raise ValueError(\n                f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n            )\n\n        if latents is None:\n            latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n        else:\n            latents = latents.to(device)\n\n        # scale the initial noise by the standard deviation required by the scheduler\n        latents = latents * self.scheduler_sd1_5.init_noise_sigma\n        return latents\n\n    def prepare_image(\n        self,\n        image,\n        width,\n        height,\n        batch_size,\n        num_images_per_prompt,\n        device,\n        dtype,\n        do_classifier_free_guidance=False,\n        guess_mode=False,\n    ):\n        image = self.control_image_processor.preprocess(image, height=height, width=width).to(dtype=torch.float32)\n        image_batch_size = image.shape[0]\n\n        if image_batch_size == 1:\n            repeat_by = batch_size\n        else:\n            # image batch size is the same as prompt batch size\n            repeat_by = num_images_per_prompt\n\n        image = image.repeat_interleave(repeat_by, dim=0)\n\n        image = image.to(device=device, dtype=dtype)\n\n        if do_classifier_free_guidance and not guess_mode:\n            image = torch.cat([image] * 2)\n\n        return image\n\n    def check_image(self, image, prompt, prompt_embeds):\n        image_is_pil = isinstance(image, PIL.Image.Image)\n        image_is_tensor = isinstance(image, torch.Tensor)\n        image_is_np = isinstance(image, np.ndarray)\n        image_is_pil_list = isinstance(image, list) and isinstance(image[0], PIL.Image.Image)\n        image_is_tensor_list = isinstance(image, list) and isinstance(image[0], torch.Tensor)\n        image_is_np_list = isinstance(image, list) and isinstance(image[0], np.ndarray)\n\n        if (\n            not image_is_pil\n            and not image_is_tensor\n            and not image_is_np\n            and not image_is_pil_list\n            and not image_is_tensor_list\n            and not image_is_np_list\n        ):\n            raise TypeError(\n                f\"image must be passed and be one of PIL image, numpy array, torch tensor, list of PIL images, list of numpy arrays or list of torch tensors, but is {type(image)}\"\n            )\n\n        if image_is_pil:\n            image_batch_size = 1\n        else:\n            image_batch_size = len(image)\n\n        if prompt is not None and isinstance(prompt, str):\n            prompt_batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            prompt_batch_size = len(prompt)\n        elif prompt_embeds is not None:\n            prompt_batch_size = prompt_embeds.shape[0]\n\n        if image_batch_size != 1 and image_batch_size != prompt_batch_size:\n            raise ValueError(\n                f\"If image batch size is not 1, image batch size must be same as prompt batch size. image batch size: {image_batch_size}, prompt batch size: {prompt_batch_size}\"\n            )\n\n    def prepare_xl_latents_from_sd_1_5(\n            self, latent, timestep, batch_size, num_images_per_prompt, height, width, dtype, device, generator=None, add_noise=True\n    ):\n        # sd1.5 latent -> img\n        image = self.vae_sd1_5.decode(latent / self.vae_sd1_5.config.scaling_factor, return_dict=False)[0]\n        do_denormalize = [True] * image.shape[0]\n        image = self.image_processor_sd1_5.postprocess(image, output_type='pil', do_denormalize=do_denormalize)[0]\n        image = image.resize((height, width))\n\n        if not isinstance(image, (torch.Tensor, PIL.Image.Image, list)):\n            raise ValueError(\n                f\"`image` has to be of type `torch.Tensor`, `PIL.Image.Image` or list but is {type(image)}\"\n            )\n\n        # Offload text encoder if `enable_model_cpu_offload` was enabled\n        if hasattr(self, \"final_offload_hook\") and self.final_offload_hook is not None:\n            self.text_encoder_2.to(\"cpu\")\n            torch.cuda.empty_cache()\n\n        image = self.image_processor.preprocess(image)\n\n        image = image.to(device=device, dtype=dtype)\n\n        batch_size = batch_size * num_images_per_prompt\n\n        if image.shape[1] == 4:\n            init_latents = image\n\n        else:\n            # make sure the VAE is in float32 mode, as it overflows in float16\n            if self.vae.config.force_upcast:\n                image = image.float()\n                self.vae.to(dtype=torch.float32)\n\n            if isinstance(generator, list) and len(generator) != batch_size:\n                raise ValueError(\n                    f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                    f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n                )\n\n            elif isinstance(generator, list):\n                init_latents = [\n                    self.vae.encode(image[i: i + 1]).latent_dist.sample(generator[i]) for i in range(batch_size)\n                ]\n                init_latents = torch.cat(init_latents, dim=0)\n            else:\n                init_latents = self.vae.encode(image).latent_dist.sample(generator)\n\n            if self.vae.config.force_upcast:\n                self.vae.to(dtype)\n\n            init_latents = init_latents.to(dtype)\n            init_latents = self.vae.config.scaling_factor * init_latents\n\n        if batch_size > init_latents.shape[0] and batch_size % init_latents.shape[0] == 0:\n            # expand init_latents for batch_size\n            additional_image_per_prompt = batch_size // init_latents.shape[0]\n            init_latents = torch.cat([init_latents] * additional_image_per_prompt, dim=0)\n        elif batch_size > init_latents.shape[0] and batch_size % init_latents.shape[0] != 0:\n            raise ValueError(\n                f\"Cannot duplicate `image` of batch size {init_latents.shape[0]} to {batch_size} text prompts.\"\n            )\n        else:\n            init_latents = torch.cat([init_latents], dim=0)\n\n        if add_noise:\n            shape = init_latents.shape\n            noise = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n            # get latents\n            init_latents = self.scheduler.add_noise(init_latents, noise, timestep)\n\n        latents = init_latents\n\n        return latents\n\n    def get_timesteps(self, num_inference_steps, strength, device, denoising_start=None):\n        # get the original timestep using init_timestep\n        if denoising_start is None:\n            init_timestep = min(int(num_inference_steps * strength), num_inference_steps)\n            t_start = max(num_inference_steps - init_timestep, 0)\n        else:\n            t_start = 0\n\n        timesteps = self.scheduler.timesteps[t_start * self.scheduler.order :]\n\n        # Strength is irrelevant if we directly request a timestep to start at;\n        # that is, strength is determined by the denoising_start instead.\n        if denoising_start is not None:\n            discrete_timestep_cutoff = int(\n                round(\n                    self.scheduler.config.num_train_timesteps\n                    - (denoising_start * self.scheduler.config.num_train_timesteps)\n                )\n            )\n            timesteps = list(filter(lambda ts: ts < discrete_timestep_cutoff, timesteps))\n            return torch.tensor(timesteps), len(timesteps)\n\n        return timesteps, num_inference_steps - t_start\n\n    def sd1_5_add_noise(self, init_latents, timestep, generator, device, dtype):\n        shape = init_latents.shape\n        noise = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n        # get latents\n        init_latents = self.scheduler.add_noise(init_latents, noise, timestep)\n\n        return init_latents\n"
  },
  {
    "path": "scripts/xadapter/pipeline_sd_xl_adapter_controlnet_img2img.py",
    "content": "# Copyright 2023 The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport inspect\nimport os\nfrom typing import Any, Callable, Dict, List, Optional, Tuple, Union\nimport warnings\nimport deprecate\n\nimport torch\nimport PIL\nimport numpy as np\nimport torch.nn.functional as F\nfrom transformers import CLIPTextModel, CLIPTextModelWithProjection, CLIPTokenizer\n\nfrom diffusers.image_processor import VaeImageProcessor\nfrom diffusers.loaders import FromSingleFileMixin, LoraLoaderMixin, TextualInversionLoaderMixin\n# from diffusers.models import AutoencoderKL, UNet2DConditionModel\nfrom diffusers.models import AutoencoderKL, ControlNetModel\n\nfrom diffusers.models.attention_processor import (\n    AttnProcessor2_0,\n    FusedAttnProcessor2_0,\n    XFormersAttnProcessor,\n)\nfrom diffusers.schedulers import KarrasDiffusionSchedulers\nfrom diffusers.utils import (\n    is_accelerate_available,\n    is_accelerate_version,\n    is_invisible_watermark_available,\n    logging,\n    replace_example_docstring,\n)\nfrom diffusers.utils.torch_utils import randn_tensor\nfrom diffusers.pipelines.pipeline_utils import DiffusionPipeline\nfrom diffusers.pipelines.stable_diffusion_xl import StableDiffusionXLPipelineOutput\nfrom diffusers.pipelines.controlnet.multicontrolnet import MultiControlNetModel\nfrom modules.xadapter.adapter import Adapter_XL\nfrom modules.xadapter.unet_adapter import UNet2DConditionModel\n\nif is_invisible_watermark_available():\n    from diffusers.pipelines.stable_diffusion_xl.watermark import StableDiffusionXLWatermarker\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\nEXAMPLE_DOC_STRING = \"\"\"\n    Examples:\n        ```py\n        >>> import torch\n        >>> from diffusers import StableDiffusionXLPipeline\n\n        >>> pipe = StableDiffusionXLPipeline.from_pretrained(\n        ...     \"stabilityai/stable-diffusion-xl-base-1.0\", torch_dtype=torch.float16\n        ... )\n        >>> pipe = pipe.to(\"cuda\")\n\n        >>> prompt = \"a photo of an astronaut riding a horse on mars\"\n        >>> image = pipe(prompt).images[0]\n        ```\n\"\"\"\n\n\n# Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.rescale_noise_cfg\ndef rescale_noise_cfg(noise_cfg, noise_pred_text, guidance_rescale=0.0):\n    \"\"\"\n    Rescale `noise_cfg` according to `guidance_rescale`. Based on findings of [Common Diffusion Noise Schedules and\n    Sample Steps are Flawed](https://arxiv.org/pdf/2305.08891.pdf). See Section 3.4\n    \"\"\"\n    std_text = noise_pred_text.std(dim=list(range(1, noise_pred_text.ndim)), keepdim=True)\n    std_cfg = noise_cfg.std(dim=list(range(1, noise_cfg.ndim)), keepdim=True)\n    # rescale the results from guidance (fixes overexposure)\n    noise_pred_rescaled = noise_cfg * (std_text / std_cfg)\n    # mix with the original results from guidance by factor guidance_rescale to avoid \"plain looking\" images\n    noise_cfg = guidance_rescale * noise_pred_rescaled + (1 - guidance_rescale) * noise_cfg\n    return noise_cfg\n\n\nclass StableDiffusionXLAdapterControlnetI2IPipeline(DiffusionPipeline, FromSingleFileMixin, LoraLoaderMixin):\n    r\"\"\"\n    Pipeline for text-to-image generation using Stable Diffusion XL.\n\n    This model inherits from [`DiffusionPipeline`]. Check the superclass documentation for the generic methods the\n    library implements for all the pipelines (such as downloading or saving, running on a particular device, etc.)\n\n    In addition the pipeline inherits the following loading methods:\n        - *LoRA*: [`StableDiffusionXLPipeline.load_lora_weights`]\n        - *Ckpt*: [`loaders.FromSingleFileMixin.from_single_file`]\n\n    as well as the following saving methods:\n        - *LoRA*: [`loaders.StableDiffusionXLPipeline.save_lora_weights`]\n\n    Args:\n        vae ([`AutoencoderKL`]):\n            Variational Auto-Encoder (VAE) Model to encode and decode images to and from latent representations.\n        text_encoder ([`CLIPTextModel`]):\n            Frozen text-encoder. Stable Diffusion XL uses the text portion of\n            [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModel), specifically\n            the [clip-vit-large-patch14](https://huggingface.co/openai/clip-vit-large-patch14) variant.\n        text_encoder_2 ([` CLIPTextModelWithProjection`]):\n            Second frozen text-encoder. Stable Diffusion XL uses the text and pool portion of\n            [CLIP](https://huggingface.co/docs/transformers/model_doc/clip#transformers.CLIPTextModelWithProjection),\n            specifically the\n            [laion/CLIP-ViT-bigG-14-laion2B-39B-b160k](https://huggingface.co/laion/CLIP-ViT-bigG-14-laion2B-39B-b160k)\n            variant.\n        tokenizer (`CLIPTokenizer`):\n            Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer).\n        tokenizer_2 (`CLIPTokenizer`):\n            Second Tokenizer of class\n            [CLIPTokenizer](https://huggingface.co/docs/transformers/v4.21.0/en/model_doc/clip#transformers.CLIPTokenizer).\n        unet ([`UNet2DConditionModel`]): Conditional U-Net architecture to denoise the encoded image latents.\n        scheduler ([`SchedulerMixin`]):\n            A scheduler to be used in combination with `unet` to denoise the encoded image latents. Can be one of\n            [`DDIMScheduler`], [`LMSDiscreteScheduler`], or [`PNDMScheduler`].\n    \"\"\"\n\n    def __init__(\n            self,\n            vae: AutoencoderKL,\n            text_encoder: CLIPTextModel,\n            text_encoder_2: CLIPTextModelWithProjection,\n            tokenizer: CLIPTokenizer,\n            tokenizer_2: CLIPTokenizer,\n            unet: UNet2DConditionModel,\n            scheduler: KarrasDiffusionSchedulers,\n            vae_sd1_5: AutoencoderKL,\n            text_encoder_sd1_5: CLIPTextModel,\n            tokenizer_sd1_5: CLIPTokenizer,\n            unet_sd1_5: UNet2DConditionModel,\n            scheduler_sd1_5: KarrasDiffusionSchedulers,\n            adapter: Adapter_XL,\n            controlnet: ControlNetModel,\n            force_zeros_for_empty_prompt: bool = True,\n            add_watermarker: Optional[bool] = None,\n    ):\n        super().__init__()\n\n        self.register_modules(\n            vae=vae,\n            text_encoder=text_encoder,\n            text_encoder_2=text_encoder_2,\n            tokenizer=tokenizer,\n            tokenizer_2=tokenizer_2,\n            unet=unet,\n            scheduler=scheduler,\n            vae_sd1_5=vae_sd1_5,\n            text_encoder_sd1_5=text_encoder_sd1_5,\n            tokenizer_sd1_5=tokenizer_sd1_5,\n            unet_sd1_5=unet_sd1_5,\n            scheduler_sd1_5=scheduler_sd1_5,\n            adapter=adapter,\n            controlnet=controlnet\n        )\n        self.register_to_config(force_zeros_for_empty_prompt=force_zeros_for_empty_prompt)\n        self.vae_scale_factor = 2 ** (len(self.vae.config.block_out_channels) - 1)\n        self.vae_scale_factor_sd1_5 = 2 ** (len(self.vae_sd1_5.config.block_out_channels) - 1)\n        self.image_processor = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor)\n        self.default_sample_size = self.unet.config.sample_size\n        self.control_image_processor = VaeImageProcessor(\n            vae_scale_factor=self.vae_scale_factor_sd1_5, do_convert_rgb=True, do_normalize=False\n        )\n        self.image_processor_sd1_5 = VaeImageProcessor(vae_scale_factor=self.vae_scale_factor_sd1_5)\n\n        add_watermarker = add_watermarker if add_watermarker is not None else is_invisible_watermark_available()\n\n        if add_watermarker:\n            self.watermark = StableDiffusionXLWatermarker()\n        else:\n            self.watermark = None\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.enable_vae_slicing\n    def enable_vae_slicing(self):\n        r\"\"\"\n        Enable sliced VAE decoding. When this option is enabled, the VAE will split the input tensor in slices to\n        compute decoding in several steps. This is useful to save some memory and allow larger batch sizes.\n        \"\"\"\n        self.vae.enable_slicing()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.disable_vae_slicing\n    def disable_vae_slicing(self):\n        r\"\"\"\n        Disable sliced VAE decoding. If `enable_vae_slicing` was previously enabled, this method will go back to\n        computing decoding in one step.\n        \"\"\"\n        self.vae.disable_slicing()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.enable_vae_tiling\n    def enable_vae_tiling(self):\n        r\"\"\"\n        Enable tiled VAE decoding. When this option is enabled, the VAE will split the input tensor into tiles to\n        compute decoding and encoding in several steps. This is useful for saving a large amount of memory and to allow\n        processing larger images.\n        \"\"\"\n        self.vae.enable_tiling()\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.disable_vae_tiling\n    def disable_vae_tiling(self):\n        r\"\"\"\n        Disable tiled VAE decoding. If `enable_vae_tiling` was previously enabled, this method will go back to\n        computing decoding in one step.\n        \"\"\"\n        self.vae.disable_tiling()\n\n    def enable_model_cpu_offload(self, gpu_id=0):\n        r\"\"\"\n        Offloads all models to CPU using accelerate, reducing memory usage with a low impact on performance. Compared\n        to `enable_sequential_cpu_offload`, this method moves one whole model at a time to the GPU when its `forward`\n        method is called, and the model remains in GPU until the next model runs. Memory savings are lower than with\n        `enable_sequential_cpu_offload`, but performance is much better due to the iterative execution of the `unet`.\n        \"\"\"\n        if is_accelerate_available() and is_accelerate_version(\">=\", \"0.17.0.dev0\"):\n            from accelerate import cpu_offload_with_hook\n        else:\n            raise ImportError(\"`enable_model_cpu_offload` requires `accelerate v0.17.0` or higher.\")\n\n        device = torch.device(f\"cuda:{gpu_id}\")\n\n        if device.type != \"cpu\":\n            self.to(\"cpu\", silence_dtype_warnings=True)\n            torch.cuda.empty_cache()  # otherwise we don't see the memory savings (but they probably exist)\n\n        model_sequence = (\n            [self.text_encoder, self.text_encoder_2] if self.text_encoder is not None else [self.text_encoder_2]\n        )\n        model_sequence.extend([self.unet, self.vae])\n\n        model_sequence.extend([self.unet_sd1_5, self.vae_sd1_5, self.text_encoder_sd1_5])\n        model_sequence.extend([self.controlnet, self.adapter])\n\n        hook = None\n        for cpu_offloaded_model in model_sequence:\n            _, hook = cpu_offload_with_hook(cpu_offloaded_model, device, prev_module_hook=hook)\n\n        # We'll offload the last model manually.\n        self.final_offload_hook = hook\n\n    def encode_prompt(\n            self,\n            prompt: str,\n            prompt_2: Optional[str] = None,\n            device: Optional[torch.device] = None,\n            num_images_per_prompt: int = 1,\n            do_classifier_free_guidance: bool = True,\n            negative_prompt: Optional[str] = None,\n            negative_prompt_2: Optional[str] = None,\n            prompt_embeds: Optional[torch.FloatTensor] = None,\n            negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n            pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n            negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n            lora_scale: Optional[float] = None,\n    ):\n        r\"\"\"\n        Encodes the prompt into text encoder hidden states.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                prompt to be encoded\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders\n            device: (`torch.device`):\n                torch device\n            num_images_per_prompt (`int`):\n                number of images that should be generated per prompt\n            do_classifier_free_guidance (`bool`):\n                whether to use classifier free guidance or not\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            lora_scale (`float`, *optional*):\n                A lora scale that will be applied to all LoRA layers of the text encoder if LoRA layers are loaded.\n        \"\"\"\n        device = device or self._execution_device\n\n        # set lora scale so that monkey patched LoRA\n        # function of text encoder can correctly access it\n        if lora_scale is not None and isinstance(self, LoraLoaderMixin):\n            self._lora_scale = lora_scale\n\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        # Define tokenizers and text encoders\n        tokenizers = [self.tokenizer, self.tokenizer_2] if self.tokenizer is not None else [self.tokenizer_2]\n        text_encoders = (\n            [self.text_encoder, self.text_encoder_2] if self.text_encoder is not None else [self.text_encoder_2]\n        )\n\n        if prompt_embeds is None:\n            prompt_2 = prompt_2 or prompt\n            # textual inversion: procecss multi-vector tokens if necessary\n            prompt_embeds_list = []\n            prompts = [prompt, prompt_2]\n            for prompt, tokenizer, text_encoder in zip(prompts, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    prompt = self.maybe_convert_prompt(prompt, tokenizer)\n\n                text_inputs = tokenizer(\n                    prompt,\n                    padding=\"max_length\",\n                    max_length=tokenizer.model_max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                text_input_ids = text_inputs.input_ids\n                untruncated_ids = tokenizer(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n                if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(\n                        text_input_ids, untruncated_ids\n                ):\n                    removed_text = tokenizer.batch_decode(untruncated_ids[:, tokenizer.model_max_length - 1: -1])\n                    logger.warning(\n                        \"The following part of your input was truncated because CLIP can only handle sequences up to\"\n                        f\" {tokenizer.model_max_length} tokens: {removed_text}\"\n                    )\n\n                prompt_embeds = text_encoder(\n                    text_input_ids.to(device),\n                    output_hidden_states=True,\n                )\n\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                pooled_prompt_embeds = prompt_embeds[0]\n                prompt_embeds = prompt_embeds.hidden_states[-2]\n\n                prompt_embeds_list.append(prompt_embeds)\n\n            prompt_embeds = torch.concat(prompt_embeds_list, dim=-1)\n\n        # get unconditional embeddings for classifier free guidance\n        zero_out_negative_prompt = negative_prompt is None and self.config.force_zeros_for_empty_prompt\n        if do_classifier_free_guidance and negative_prompt_embeds is None and zero_out_negative_prompt:\n            negative_prompt_embeds = torch.zeros_like(prompt_embeds)\n            negative_pooled_prompt_embeds = torch.zeros_like(pooled_prompt_embeds)\n        elif do_classifier_free_guidance and negative_prompt_embeds is None:\n            negative_prompt = negative_prompt or \"\"\n            negative_prompt_2 = negative_prompt_2 or negative_prompt\n\n            uncond_tokens: List[str]\n            if prompt is not None and type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif isinstance(negative_prompt, str):\n                uncond_tokens = [negative_prompt, negative_prompt_2]\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n            else:\n                uncond_tokens = [negative_prompt, negative_prompt_2]\n\n            negative_prompt_embeds_list = []\n            for negative_prompt, tokenizer, text_encoder in zip(uncond_tokens, tokenizers, text_encoders):\n                if isinstance(self, TextualInversionLoaderMixin):\n                    negative_prompt = self.maybe_convert_prompt(negative_prompt, tokenizer)\n\n                max_length = prompt_embeds.shape[1]\n                uncond_input = tokenizer(\n                    negative_prompt,\n                    padding=\"max_length\",\n                    max_length=max_length,\n                    truncation=True,\n                    return_tensors=\"pt\",\n                )\n\n                negative_prompt_embeds = text_encoder(\n                    uncond_input.input_ids.to(device),\n                    output_hidden_states=True,\n                )\n                # We are only ALWAYS interested in the pooled output of the final text encoder\n                negative_pooled_prompt_embeds = negative_prompt_embeds[0]\n                negative_prompt_embeds = negative_prompt_embeds.hidden_states[-2]\n\n                negative_prompt_embeds_list.append(negative_prompt_embeds)\n\n            negative_prompt_embeds = torch.concat(negative_prompt_embeds_list, dim=-1)\n\n        prompt_embeds = prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n        bs_embed, seq_len, _ = prompt_embeds.shape\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(bs_embed * num_images_per_prompt, seq_len, -1)\n\n        if do_classifier_free_guidance:\n            # duplicate unconditional embeddings for each generation per prompt, using mps friendly method\n            seq_len = negative_prompt_embeds.shape[1]\n            negative_prompt_embeds = negative_prompt_embeds.to(dtype=self.text_encoder_2.dtype, device=device)\n            negative_prompt_embeds = negative_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds = negative_prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n        pooled_prompt_embeds = pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n            bs_embed * num_images_per_prompt, -1\n        )\n        if do_classifier_free_guidance:\n            negative_pooled_prompt_embeds = negative_pooled_prompt_embeds.repeat(1, num_images_per_prompt).view(\n                bs_embed * num_images_per_prompt, -1\n            )\n\n        return prompt_embeds, negative_prompt_embeds, pooled_prompt_embeds, negative_pooled_prompt_embeds\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_extra_step_kwargs\n    def prepare_extra_step_kwargs(self, generator, eta):\n        # prepare extra kwargs for the scheduler step, since not all schedulers have the same signature\n        # eta (η) is only used with the DDIMScheduler, it will be ignored for other schedulers.\n        # eta corresponds to η in DDIM paper: https://arxiv.org/abs/2010.02502\n        # and should be between [0, 1]\n\n        accepts_eta = \"eta\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        extra_step_kwargs = {}\n        if accepts_eta:\n            extra_step_kwargs[\"eta\"] = eta\n\n        # check if the scheduler accepts generator\n        accepts_generator = \"generator\" in set(inspect.signature(self.scheduler.step).parameters.keys())\n        if accepts_generator:\n            extra_step_kwargs[\"generator\"] = generator\n        return extra_step_kwargs\n\n    def check_inputs(\n            self,\n            prompt,\n            prompt_2,\n            height,\n            width,\n            callback_steps,\n            negative_prompt=None,\n            negative_prompt_2=None,\n            prompt_embeds=None,\n            negative_prompt_embeds=None,\n            pooled_prompt_embeds=None,\n            negative_pooled_prompt_embeds=None,\n    ):\n        if height % 8 != 0 or width % 8 != 0:\n            raise ValueError(f\"`height` and `width` have to be divisible by 8 but are {height} and {width}.\")\n\n        if (callback_steps is None) or (\n                callback_steps is not None and (not isinstance(callback_steps, int) or callback_steps <= 0)\n        ):\n            raise ValueError(\n                f\"`callback_steps` has to be a positive integer but is {callback_steps} of type\"\n                f\" {type(callback_steps)}.\"\n            )\n\n        if prompt is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt_2 is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt_2`: {prompt_2} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n        elif prompt_2 is not None and (not isinstance(prompt_2, str) and not isinstance(prompt_2, list)):\n            raise ValueError(f\"`prompt_2` has to be of type `str` or `list` but is {type(prompt_2)}\")\n\n        if negative_prompt is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n        elif negative_prompt_2 is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt_2`: {negative_prompt_2} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n\n        if prompt_embeds is not None and negative_prompt_embeds is not None:\n            if prompt_embeds.shape != negative_prompt_embeds.shape:\n                raise ValueError(\n                    \"`prompt_embeds` and `negative_prompt_embeds` must have the same shape when passed directly, but\"\n                    f\" got: `prompt_embeds` {prompt_embeds.shape} != `negative_prompt_embeds`\"\n                    f\" {negative_prompt_embeds.shape}.\"\n                )\n\n        if prompt_embeds is not None and pooled_prompt_embeds is None:\n            raise ValueError(\n                \"If `prompt_embeds` are provided, `pooled_prompt_embeds` also have to be passed. Make sure to generate `pooled_prompt_embeds` from the same text encoder that was used to generate `prompt_embeds`.\"\n            )\n\n        if negative_prompt_embeds is not None and negative_pooled_prompt_embeds is None:\n            raise ValueError(\n                \"If `negative_prompt_embeds` are provided, `negative_pooled_prompt_embeds` also have to be passed. Make sure to generate `negative_pooled_prompt_embeds` from the same text encoder that was used to generate `negative_prompt_embeds`.\"\n            )\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion.StableDiffusionPipeline.prepare_latents\n    def prepare_latents(self, batch_size, num_channels_latents, height, width, dtype, device, generator, latents=None):\n        shape = (batch_size, num_channels_latents, height // self.vae_scale_factor, width // self.vae_scale_factor)\n        if isinstance(generator, list) and len(generator) != batch_size:\n            raise ValueError(\n                f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n            )\n\n        if latents is None:\n            latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n        else:\n            latents = latents.to(device)\n\n        # scale the initial noise by the standard deviation required by the scheduler\n        latents = latents * self.scheduler.init_noise_sigma\n        return latents\n\n    def _get_add_time_ids(self, original_size, crops_coords_top_left, target_size, dtype):\n        add_time_ids = list(original_size + crops_coords_top_left + target_size)\n\n        passed_add_embed_dim = (\n                self.unet.config.addition_time_embed_dim * len(add_time_ids) + self.text_encoder_2.config.projection_dim\n        )\n        expected_add_embed_dim = self.unet.add_embedding.linear_1.in_features\n\n        if expected_add_embed_dim != passed_add_embed_dim:\n            raise ValueError(\n                f\"Model expects an added time embedding vector of length {expected_add_embed_dim}, but a vector of {passed_add_embed_dim} was created. The model has an incorrect config. Please check `unet.config.time_embedding_type` and `text_encoder_2.config.projection_dim`.\"\n            )\n\n        add_time_ids = torch.tensor([add_time_ids], dtype=dtype)\n        return add_time_ids\n\n    # Copied from diffusers.pipelines.stable_diffusion.pipeline_stable_diffusion_upscale.StableDiffusionUpscalePipeline.upcast_vae\n    def upcast_vae(self):\n        dtype = self.vae.dtype\n        self.vae.to(dtype=torch.float32)\n        use_torch_2_0_or_xformers = isinstance(\n            self.vae.decoder.mid_block.attentions[0].processor,\n            (\n                AttnProcessor2_0,\n                XFormersAttnProcessor,\n                FusedAttnProcessor2_0,\n            ),\n        )\n        # if xformers or torch_2_0 is used attention block does not need\n        # to be in float32 which can save lots of memory\n        if use_torch_2_0_or_xformers:\n            self.vae.post_quant_conv.to(dtype)\n            self.vae.decoder.conv_in.to(dtype)\n            self.vae.decoder.mid_block.to(dtype)\n\n    @torch.no_grad()\n    @replace_example_docstring(EXAMPLE_DOC_STRING)\n    def __call__(\n            self,\n            prompt: Union[str, List[str]] = None,\n            prompt_2: Optional[Union[str, List[str]]] = None,\n            prompt_sd1_5: Optional[Union[str, List[str]]] = None,\n            height: Optional[int] = None,\n            width: Optional[int] = None,\n            height_sd1_5: Optional[int] = None,\n            width_sd1_5: Optional[int] = None,\n            image: Union[\n                torch.FloatTensor,\n                PIL.Image.Image,\n                np.ndarray,\n                List[torch.FloatTensor],\n                List[PIL.Image.Image],\n                List[np.ndarray],\n            ] = None,\n            source_img: Union[\n                torch.FloatTensor,\n                PIL.Image.Image,\n                np.ndarray,\n                List[torch.FloatTensor],\n                List[PIL.Image.Image],\n                List[np.ndarray],\n            ] = None,\n            num_inference_steps: int = 50,\n            denoising_end: Optional[float] = None,\n            guidance_scale: float = 5.0,\n            negative_prompt: Optional[Union[str, List[str]]] = None,\n            negative_prompt_2: Optional[Union[str, List[str]]] = None,\n            num_images_per_prompt: Optional[int] = 1,\n            eta: float = 0.0,\n            generator: Optional[Union[torch.Generator, List[torch.Generator]]] = None,\n            latents: Optional[torch.FloatTensor] = None,\n            latents_sd1_5: Optional[torch.FloatTensor] = None,\n            prompt_embeds: Optional[torch.FloatTensor] = None,\n            negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n            pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n            negative_pooled_prompt_embeds: Optional[torch.FloatTensor] = None,\n            output_type: Optional[str] = \"pil\",\n            return_dict: bool = True,\n            callback: Optional[Callable[[int, int, torch.FloatTensor], None]] = None,\n            callback_steps: int = 1,\n            cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n            guidance_rescale: float = 0.0,\n            original_size: Optional[Tuple[int, int]] = None,\n            crops_coords_top_left: Tuple[int, int] = (0, 0),\n            target_size: Optional[Tuple[int, int]] = None,\n            controlnet_conditioning_scale: Union[float, List[float]] = 1.0,\n            adapter_condition_scale: Optional[float] = 1.0,\n            guess_mode: bool = False,\n            control_guidance_start: Union[float, List[float]] = 0.0,\n            control_guidance_end: Union[float, List[float]] = 1.0,\n            adapter_guidance_start: Union[float, List[float]] = 0.5,\n            denoising_start: Optional[float] = None,\n            adapter_type: str = \"de\",  # \"de\", \"en\", \"en_de\"\n            fusion_guidance_scale: Optional[float] = None,\n            enable_time_step: bool = False,\n            fusion_type: Optional[str] = 'ADD',\n    ):\n        r\"\"\"\n        Function invoked when calling the pipeline for generation.\n\n        Args:\n            prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts to guide the image generation. If not defined, one has to pass `prompt_embeds`.\n                instead.\n            prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts to be sent to the `tokenizer_2` and `text_encoder_2`. If not defined, `prompt` is\n                used in both text-encoders\n            height (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The height in pixels of the generated image.\n            width (`int`, *optional*, defaults to self.unet.config.sample_size * self.vae_scale_factor):\n                The width in pixels of the generated image.\n            num_inference_steps (`int`, *optional*, defaults to 50):\n                The number of denoising steps. More denoising steps usually lead to a higher quality image at the\n                expense of slower inference.\n            denoising_end (`float`, *optional*):\n                When specified, determines the fraction (between 0.0 and 1.0) of the total denoising process to be\n                completed before it is intentionally prematurely terminated. As a result, the returned sample will\n                still retain a substantial amount of noise as determined by the discrete timesteps selected by the\n                scheduler. The denoising_end parameter should ideally be utilized when this pipeline forms a part of a\n                \"Mixture of Denoisers\" multi-pipeline setup, as elaborated in [**Refining the Image\n                Output**](https://huggingface.co/docs/diffusers/api/pipelines/stable_diffusion/stable_diffusion_xl#refining-the-image-output)\n            guidance_scale (`float`, *optional*, defaults to 5.0):\n                Guidance scale as defined in [Classifier-Free Diffusion Guidance](https://arxiv.org/abs/2207.12598).\n                `guidance_scale` is defined as `w` of equation 2. of [Imagen\n                Paper](https://arxiv.org/pdf/2205.11487.pdf). Guidance scale is enabled by setting `guidance_scale >\n                1`. Higher guidance scale encourages to generate images that are closely linked to the text `prompt`,\n                usually at the expense of lower image quality.\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            negative_prompt_2 (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation to be sent to `tokenizer_2` and\n                `text_encoder_2`. If not defined, `negative_prompt` is used in both text-encoders\n            num_images_per_prompt (`int`, *optional*, defaults to 1):\n                The number of images to generate per prompt.\n            eta (`float`, *optional*, defaults to 0.0):\n                Corresponds to parameter eta (η) in the DDIM paper: https://arxiv.org/abs/2010.02502. Only applies to\n                [`schedulers.DDIMScheduler`], will be ignored for others.\n            generator (`torch.Generator` or `List[torch.Generator]`, *optional*):\n                One or a list of [torch generator(s)](https://pytorch.org/docs/stable/generated/torch.Generator.html)\n                to make generation deterministic.\n            latents (`torch.FloatTensor`, *optional*):\n                Pre-generated noisy latents, sampled from a Gaussian distribution, to be used as inputs for image\n                generation. Can be used to tweak the same generation with different prompts. If not provided, a latents\n                tensor will ge generated by sampling using the supplied random `generator`.\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting.\n                If not provided, pooled text embeddings will be generated from `prompt` input argument.\n            negative_pooled_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative pooled text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, pooled negative_prompt_embeds will be generated from `negative_prompt`\n                input argument.\n            output_type (`str`, *optional*, defaults to `\"pil\"`):\n                The output format of the generate image. Choose between\n                [PIL](https://pillow.readthedocs.io/en/stable/): `PIL.Image.Image` or `np.array`.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] instead\n                of a plain tuple.\n            callback (`Callable`, *optional*):\n                A function that will be called every `callback_steps` steps during inference. The function will be\n                called with the following arguments: `callback(step: int, timestep: int, latents: torch.FloatTensor)`.\n            callback_steps (`int`, *optional*, defaults to 1):\n                The frequency at which the `callback` function will be called. If not specified, the callback will be\n                called at every step.\n            cross_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the `AttentionProcessor` as defined under\n                `self.processor` in\n                [diffusers.models.attention_processor](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/attention_processor.py).\n            guidance_rescale (`float`, *optional*, defaults to 0.7):\n                Guidance rescale factor proposed by [Common Diffusion Noise Schedules and Sample Steps are\n                Flawed](https://arxiv.org/pdf/2305.08891.pdf) `guidance_scale` is defined as `φ` in equation 16. of\n                [Common Diffusion Noise Schedules and Sample Steps are Flawed](https://arxiv.org/pdf/2305.08891.pdf).\n                Guidance rescale factor should fix overexposure when using zero terminal SNR.\n            original_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                If `original_size` is not the same as `target_size` the image will appear to be down- or upsampled.\n                `original_size` defaults to `(width, height)` if not specified. Part of SDXL's micro-conditioning as\n                explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            crops_coords_top_left (`Tuple[int]`, *optional*, defaults to (0, 0)):\n                `crops_coords_top_left` can be used to generate an image that appears to be \"cropped\" from the position\n                `crops_coords_top_left` downwards. Favorable, well-centered images are usually achieved by setting\n                `crops_coords_top_left` to (0, 0). Part of SDXL's micro-conditioning as explained in section 2.2 of\n                [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n            target_size (`Tuple[int]`, *optional*, defaults to (1024, 1024)):\n                For most cases, `target_size` should be set to the desired height and width of the generated image. If\n                not specified it will default to `(width, height)`. Part of SDXL's micro-conditioning as explained in\n                section 2.2 of [https://huggingface.co/papers/2307.01952](https://huggingface.co/papers/2307.01952).\n\n        Examples:\n\n        Returns:\n            [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] or `tuple`:\n            [`~pipelines.stable_diffusion_xl.StableDiffusionXLPipelineOutput`] if `return_dict` is True, otherwise a\n            `tuple`. When returning a tuple, the first element is a list with the generated images.\n        \"\"\"\n        # 0. Default height and width to unet\n\n        controlnet = self.controlnet\n\n        skip_adapter_steps = int(adapter_guidance_start * num_inference_steps)\n\n        # align format for control guidance\n        if not isinstance(control_guidance_start, list) and isinstance(control_guidance_end, list):\n            control_guidance_start = len(control_guidance_end) * [control_guidance_start]\n        elif not isinstance(control_guidance_end, list) and isinstance(control_guidance_start, list):\n            control_guidance_end = len(control_guidance_start) * [control_guidance_end]\n        elif not isinstance(control_guidance_start, list) and not isinstance(control_guidance_end, list):\n            mult = len(controlnet.nets) if isinstance(controlnet, MultiControlNetModel) else 1\n            control_guidance_start, control_guidance_end = mult * [control_guidance_start], mult * [\n                control_guidance_end\n            ]\n\n        height = height or self.default_sample_size * self.vae_scale_factor\n        width = width or self.default_sample_size * self.vae_scale_factor\n\n        height_sd1_5 = height_sd1_5 or self.default_sample_size_sd1_5 * self.vae_scale_factor_sd1_5\n        width_sd1_5 = width_sd1_5 or self.default_sample_size_sd1_5 * self.vae_scale_factor_sd1_5\n\n        original_size = original_size or (height, width)\n        target_size = target_size or (height, width)\n\n        # 1. Check inputs. Raise error if not correct\n        self.check_inputs(\n            prompt,\n            prompt_2,\n            height,\n            width,\n            callback_steps,\n            negative_prompt,\n            negative_prompt_2,\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n        )\n\n        self.check_inputs_sd1_5(\n            prompt if prompt_sd1_5 is None else prompt_sd1_5,\n            image,\n            callback_steps,\n            negative_prompt,\n            prompt_embeds,\n            negative_prompt_embeds,\n            controlnet_conditioning_scale,\n            control_guidance_start,\n            control_guidance_end,\n        )\n\n        # 2. Define call parameters\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        device = torch.device('cuda')\n\n        if isinstance(controlnet, MultiControlNetModel) and isinstance(controlnet_conditioning_scale, float):\n            controlnet_conditioning_scale = [controlnet_conditioning_scale] * len(controlnet.nets)\n\n        global_pool_conditions = (\n            controlnet.config.global_pool_conditions\n            if isinstance(controlnet, ControlNetModel)\n            else controlnet.nets[0].config.global_pool_conditions\n        )\n        guess_mode = guess_mode or global_pool_conditions\n\n        # here `guidance_scale` is defined analog to the guidance weight `w` of equation (2)\n        # of the Imagen paper: https://arxiv.org/pdf/2205.11487.pdf . `guidance_scale = 1`\n        # corresponds to doing no classifier free guidance.\n        do_classifier_free_guidance = guidance_scale > 1.0\n\n        # prepare controlnet image\n        if isinstance(controlnet, ControlNetModel):\n            image = self.prepare_image(\n                image=image,\n                width=width_sd1_5,\n                height=height_sd1_5,\n                batch_size=batch_size * num_images_per_prompt,\n                num_images_per_prompt=num_images_per_prompt,\n                device=device,\n                dtype=controlnet.dtype,\n                do_classifier_free_guidance=do_classifier_free_guidance,\n                guess_mode=guess_mode,\n            )\n            height_sd1_5, width_sd1_5 = image.shape[-2:]\n        elif isinstance(controlnet, MultiControlNetModel):\n            images = []\n\n            for image_ in image:\n                image_ = self.prepare_image(\n                    image=image_,\n                    width=width_sd1_5,\n                    height=height_sd1_5,\n                    batch_size=batch_size * num_images_per_prompt,\n                    num_images_per_prompt=num_images_per_prompt,\n                    device=device,\n                    dtype=controlnet.dtype,\n                    do_classifier_free_guidance=do_classifier_free_guidance,\n                    guess_mode=guess_mode,\n                )\n\n                images.append(image_)\n\n            image = images\n            height_sd1_5, width_sd1_5 = image[0].shape[-2:]\n        else:\n            assert False\n\n        # 3. Encode input prompt\n        text_encoder_lora_scale = (\n            cross_attention_kwargs.get(\"scale\", None) if cross_attention_kwargs is not None else None\n        )\n        (\n            prompt_embeds,\n            negative_prompt_embeds,\n            pooled_prompt_embeds,\n            negative_pooled_prompt_embeds,\n        ) = self.encode_prompt(\n            prompt=prompt,\n            prompt_2=prompt_2,\n            device=device,\n            num_images_per_prompt=num_images_per_prompt,\n            do_classifier_free_guidance=do_classifier_free_guidance,\n            negative_prompt=negative_prompt,\n            negative_prompt_2=negative_prompt_2,\n            prompt_embeds=prompt_embeds,\n            negative_prompt_embeds=negative_prompt_embeds,\n            pooled_prompt_embeds=pooled_prompt_embeds,\n            negative_pooled_prompt_embeds=negative_pooled_prompt_embeds,\n            lora_scale=text_encoder_lora_scale,\n        )\n\n        prompt_embeds_sd1_5 = self._encode_prompt_sd1_5(\n            prompt if prompt_sd1_5 is None else prompt_sd1_5,\n            device,\n            num_images_per_prompt,\n            do_classifier_free_guidance,\n            negative_prompt,\n            prompt_embeds=None,\n            negative_prompt_embeds=None,\n            lora_scale=text_encoder_lora_scale,\n        )\n        # todo: implement prompt_embeds for SD1.5\n\n        # 4. Prepare timesteps\n        self.scheduler_sd1_5.set_timesteps(num_inference_steps, device=device)\n        timesteps_sd1_5 = self.scheduler_sd1_5.timesteps\n        num_inference_steps_sd1_5 = num_inference_steps\n        latent_timestep_sd1_5 = timesteps_sd1_5[:1].repeat(batch_size * num_images_per_prompt)\n\n        self.scheduler.set_timesteps(num_inference_steps, device=device)\n\n        timesteps, num_inference_steps = self.get_timesteps(\n            num_inference_steps, adapter_guidance_start, device, denoising_start=denoising_start\n        )\n        latent_timestep = timesteps[:1].repeat(batch_size * num_images_per_prompt)\n\n        # 4.1 prepare image\n        source_img = self.image_processor_sd1_5.preprocess(source_img).to(dtype=torch.float32)\n\n        # 5. Prepare latent variables\n        # if skip_adapter_steps <= 0:\n        num_channels_latents = self.unet.config.in_channels\n        latents = self.prepare_latents(\n            batch_size * num_images_per_prompt,\n            num_channels_latents,\n            height,\n            width,\n            prompt_embeds.dtype,\n            device,\n            generator,\n            latents,\n        )\n\n        num_channels_latents_sd1_5 = self.unet_sd1_5.config.in_channels\n\n        latents_sd1_5 = self.prepare_latents_sd1_5(\n            source_img,\n            latent_timestep_sd1_5,\n            batch_size,\n            num_images_per_prompt,\n            prompt_embeds_sd1_5.dtype,\n            device,\n            generator,\n        )\n\n        # 6. Prepare extra step kwargs.\n        extra_step_kwargs = self.prepare_extra_step_kwargs(generator, eta)\n\n        # 7. Prepare added time ids & embeddings\n        add_text_embeds = pooled_prompt_embeds\n        add_time_ids = self._get_add_time_ids(\n            original_size, crops_coords_top_left, target_size, dtype=prompt_embeds.dtype\n        )\n\n        if do_classifier_free_guidance:\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds], dim=0)\n            add_text_embeds = torch.cat([negative_pooled_prompt_embeds, add_text_embeds], dim=0)\n            add_time_ids = torch.cat([add_time_ids, add_time_ids], dim=0)\n\n        prompt_embeds = prompt_embeds.to(device)\n        add_text_embeds = add_text_embeds.to(device)\n        add_time_ids = add_time_ids.to(device).repeat(batch_size * num_images_per_prompt, 1)\n\n        # 8. Denoising loop\n        num_warmup_steps = max(len(timesteps) - num_inference_steps * self.scheduler.order, 0)\n\n        # 7.1 Apply denoising_end\n        if denoising_end is not None and type(denoising_end) == float and denoising_end > 0 and denoising_end < 1:\n            discrete_timestep_cutoff = int(\n                round(\n                    self.scheduler.config.num_train_timesteps\n                    - (denoising_end * self.scheduler.config.num_train_timesteps)\n                )\n            )\n            num_inference_steps = len(list(filter(lambda ts: ts >= discrete_timestep_cutoff, timesteps)))\n            timesteps = timesteps[:num_inference_steps]\n\n        controlnet_keep = []\n        for i in range(len(timesteps_sd1_5)):\n            keeps = [\n                1.0 - float(i / len(timesteps_sd1_5) < s or (i + 1) / len(timesteps_sd1_5) > e)\n                for s, e in zip(control_guidance_start, control_guidance_end)\n            ]\n            controlnet_keep.append(keeps[0] if isinstance(controlnet, ControlNetModel) else keeps)\n\n        latents_sd1_5_prior = latents_sd1_5.clone()\n\n        with self.progress_bar(total=num_inference_steps_sd1_5) as progress_bar:\n            for i, t in enumerate(timesteps_sd1_5):\n                # expand the latents if we are doing classifier free guidance\n\n                #################### SD1.5 forward ####################\n                # t_sd1_5 = timesteps[i]\n                t_sd1_5 = timesteps_sd1_5[i]\n\n                latent_model_input = torch.cat(\n                    [latents_sd1_5_prior] * 2) if do_classifier_free_guidance else latents_sd1_5_prior\n                latent_model_input = self.scheduler_sd1_5.scale_model_input(latent_model_input, t_sd1_5)\n\n                # Controlnet inference\n                if guess_mode and do_classifier_free_guidance:\n                    # Infer ControlNet only for the conditional batch.\n                    control_model_input = latents_sd1_5_prior\n                    control_model_input = self.scheduler_sd1_5.scale_model_input(control_model_input, t_sd1_5)\n                    controlnet_prompt_embeds = prompt_embeds_sd1_5.chunk(2)[1]\n                else:\n                    control_model_input = latent_model_input\n                    controlnet_prompt_embeds = prompt_embeds_sd1_5\n\n                if isinstance(controlnet_keep[i], list):\n                    cond_scale = [c * s for c, s in zip(controlnet_conditioning_scale, controlnet_keep[i])]\n                else:\n                    controlnet_cond_scale = controlnet_conditioning_scale\n                    if isinstance(controlnet_cond_scale, list):\n                        controlnet_cond_scale = controlnet_cond_scale[0]\n                    cond_scale = controlnet_cond_scale * controlnet_keep[i]\n\n                down_block_res_samples, mid_block_res_sample = self.controlnet(\n                    control_model_input,\n                    t_sd1_5,\n                    encoder_hidden_states=controlnet_prompt_embeds,\n                    controlnet_cond=image,\n                    conditioning_scale=cond_scale,\n                    guess_mode=guess_mode,\n                    return_dict=False,\n                )\n\n                if guess_mode and do_classifier_free_guidance:\n                    # Infered ControlNet only for the conditional batch.\n                    # To apply the output of ControlNet to both the unconditional and conditional batches,\n                    # add 0 to the unconditional batch to keep it unchanged.\n                    down_block_res_samples = [torch.cat([torch.zeros_like(d), d]) for d in down_block_res_samples]\n                    mid_block_res_sample = torch.cat([torch.zeros_like(mid_block_res_sample), mid_block_res_sample])\n\n                # predict the noise residual\n                unet_output = self.unet_sd1_5(\n                    latent_model_input,\n                    t_sd1_5,\n                    encoder_hidden_states=prompt_embeds_sd1_5,\n                    cross_attention_kwargs=cross_attention_kwargs,\n                    down_block_additional_residuals=down_block_res_samples,\n                    mid_block_additional_residual=mid_block_res_sample,\n                    return_hidden_states=False\n                )\n                noise_pred = unet_output.sample\n                hidden_states = unet_output.hidden_states\n\n                # perform guidance\n                if do_classifier_free_guidance:\n                    noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                    noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                if do_classifier_free_guidance and guidance_rescale > 0.0:\n                    # Based on 3.4. in https://arxiv.org/pdf/2305.08891.pdf\n                    noise_pred = rescale_noise_cfg(noise_pred, noise_pred_text, guidance_rescale=guidance_rescale)\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents_sd1_5_prior = \\\n                self.scheduler_sd1_5.step(noise_pred, t_sd1_5, latents_sd1_5_prior, **extra_step_kwargs,\n                                          return_dict=False)[0]\n\n                #################### End of SD1.5 forward ####################\n\n                # call the callback, if provided\n                if i == len(timesteps_sd1_5) - 1 or (\n                        (i + 1) > num_warmup_steps and (i + 1) % self.scheduler_sd1_5.order == 0):\n                    progress_bar.update()\n\n\n        add_noise = True if denoising_start is None else False\n        latents = self.prepare_xl_latents_from_sd_1_5(latents_sd1_5_prior, latent_timestep, batch_size,\n                                                      num_images_per_prompt, height, width, prompt_embeds.dtype, device,\n                                                      generator=generator, add_noise=add_noise)\n        latents_sd1_5 = self.sd1_5_add_noise(latents_sd1_5_prior, latent_timestep, generator, device,\n                                             prompt_embeds.dtype)\n\n\n        controlnet_keep = []\n        for i in range(len(timesteps)):\n            keeps = [\n                1.0 - float(i / len(timesteps_sd1_5) < s or (i + 1) / len(timesteps_sd1_5) > e)\n                for s, e in zip(control_guidance_start, control_guidance_end)\n            ]\n            controlnet_keep.append(keeps[0] if isinstance(controlnet, ControlNetModel) else keeps)\n\n        with self.progress_bar(total=num_inference_steps) as progress_bar:\n            for i, t in enumerate(timesteps):\n\n                #################### SD1.5 forward ####################\n                t_sd1_5 = timesteps[i]\n\n                latent_model_input = torch.cat([latents_sd1_5] * 2) if do_classifier_free_guidance else latents_sd1_5\n                latent_model_input = self.scheduler_sd1_5.scale_model_input(latent_model_input, t_sd1_5)\n\n                # Controlnet inference\n                if guess_mode and do_classifier_free_guidance:\n                    # Infer ControlNet only for the conditional batch.\n                    control_model_input = latents_sd1_5\n                    control_model_input = self.scheduler_sd1_5.scale_model_input(control_model_input, t_sd1_5)\n                    controlnet_prompt_embeds = prompt_embeds_sd1_5.chunk(2)[1]\n                else:\n                    control_model_input = latent_model_input\n                    controlnet_prompt_embeds = prompt_embeds_sd1_5\n\n                if isinstance(controlnet_keep[i], list):\n                    cond_scale = [c * s for c, s in zip(controlnet_conditioning_scale, controlnet_keep[i])]\n                else:\n                    controlnet_cond_scale = controlnet_conditioning_scale\n                    if isinstance(controlnet_cond_scale, list):\n                        controlnet_cond_scale = controlnet_cond_scale[0]\n                    cond_scale = controlnet_cond_scale * controlnet_keep[i]\n\n                down_block_res_samples, mid_block_res_sample = self.controlnet(\n                    control_model_input,\n                    t_sd1_5,\n                    encoder_hidden_states=controlnet_prompt_embeds,\n                    controlnet_cond=image,\n                    conditioning_scale=cond_scale,\n                    guess_mode=guess_mode,\n                    return_dict=False,\n                )\n\n                if guess_mode and do_classifier_free_guidance:\n                    # Infered ControlNet only for the conditional batch.\n                    # To apply the output of ControlNet to both the unconditional and conditional batches,\n                    # add 0 to the unconditional batch to keep it unchanged.\n                    down_block_res_samples = [torch.cat([torch.zeros_like(d), d]) for d in down_block_res_samples]\n                    mid_block_res_sample = torch.cat([torch.zeros_like(mid_block_res_sample), mid_block_res_sample])\n\n                # predict the noise residual\n                unet_output = self.unet_sd1_5(\n                    latent_model_input,\n                    t_sd1_5,\n                    encoder_hidden_states=prompt_embeds_sd1_5,\n                    cross_attention_kwargs=cross_attention_kwargs,\n                    down_block_additional_residuals=down_block_res_samples,\n                    mid_block_additional_residual=mid_block_res_sample,\n                    return_hidden_states=True,\n                    return_encoder_feature=True\n                )\n                noise_pred = unet_output.sample\n                hidden_states = unet_output.hidden_states\n                encoder_feature = unet_output.encoder_feature\n\n                # adapter forward\n                # if i >= skip_adapter_steps:\n                if adapter_type == \"de\":\n                    down_bridge_residuals = None\n                    # up_block_additional_residual = self.adapter(hidden_states, t=t_sd1_5 if enable_time_step else None)\n                    # if fusion_type is not \"SPADE\":\n                    #     for xx in range(len(up_block_additional_residual)):\n                    #         up_block_additional_residual[xx] = up_block_additional_residual[xx] * adapter_condition_scale\n                    up_block_additional_residual = self.adapter(hidden_states)\n                    for xx in range(len(up_block_additional_residual)):\n                        up_block_additional_residual[xx] = up_block_additional_residual[xx] * adapter_condition_scale\n\n                elif adapter_type == \"en\":\n                    up_block_additional_residual = None\n                    down_bridge_residuals = self.adapter(encoder_feature)\n                    for xx in range(len(down_bridge_residuals)):\n                        down_bridge_residuals[xx] = down_bridge_residuals[xx] * adapter_condition_scale\n                else:\n                    dict = self.adapter(x=hidden_states, enc_x=encoder_feature)\n                    down_bridge_residuals = dict['encoder_features']\n                    up_block_additional_residual = dict['decoder_features']\n                    for xx in range(len(up_block_additional_residual)):\n                        up_block_additional_residual[xx] = up_block_additional_residual[xx] * adapter_condition_scale\n                    for xx in range(len(down_bridge_residuals)):\n                        down_bridge_residuals[xx] = down_bridge_residuals[xx] * adapter_condition_scale\n\n\n                # perform guidance\n                if do_classifier_free_guidance:\n                    noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                    noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                if do_classifier_free_guidance and guidance_rescale > 0.0:\n                    # Based on 3.4. in https://arxiv.org/pdf/2305.08891.pdf\n                    noise_pred = rescale_noise_cfg(noise_pred, noise_pred_text, guidance_rescale=guidance_rescale)\n\n                # compute the previous noisy sample x_t -> x_t-1\n                latents_sd1_5 = \\\n                self.scheduler_sd1_5.step(noise_pred, t_sd1_5, latents_sd1_5, **extra_step_kwargs, return_dict=False)[0]\n\n                #################### End of SD1.5 forward ####################\n\n                #################### Start of SDXL forward ####################\n                # if i >= skip_adapter_steps:\n                if True:\n                    latent_model_input = torch.cat([latents] * 2) if do_classifier_free_guidance else latents\n\n                    latent_model_input = self.scheduler.scale_model_input(latent_model_input, t)\n\n                    # predict the noise residual\n                    added_cond_kwargs = {\"text_embeds\": add_text_embeds, \"time_ids\": add_time_ids}\n                    noise_pred = self.unet(\n                        latent_model_input,\n                        t,\n                        encoder_hidden_states=prompt_embeds,\n                        cross_attention_kwargs=cross_attention_kwargs,\n                        added_cond_kwargs=added_cond_kwargs,\n                        up_block_additional_residual=up_block_additional_residual,\n                        down_bridge_residuals=down_bridge_residuals,\n                        return_dict=False,\n                        fusion_guidance_scale=fusion_guidance_scale,\n                        fusion_type='ADD',\n                        adapter=None\n                    )[0]\n\n                    # perform guidance\n                    if do_classifier_free_guidance:\n                        noise_pred_uncond, noise_pred_text = noise_pred.chunk(2)\n                        noise_pred = noise_pred_uncond + guidance_scale * (noise_pred_text - noise_pred_uncond)\n\n                    if do_classifier_free_guidance and guidance_rescale > 0.0:\n                        # Based on 3.4. in https://arxiv.org/pdf/2305.08891.pdf\n                        noise_pred = rescale_noise_cfg(noise_pred, noise_pred_text, guidance_rescale=guidance_rescale)\n\n                    # compute the previous noisy sample x_t -> x_t-1\n                    latents = self.scheduler.step(noise_pred, t, latents, **extra_step_kwargs, return_dict=False)[0]\n\n                #################### End of SDXL forward ####################\n\n                # call the callback, if provided\n                if i == len(timesteps) - 1 or ((i + 1) > num_warmup_steps and (i + 1) % self.scheduler.order == 0):\n                    progress_bar.update()\n                    if callback is not None and i % callback_steps == 0:\n                        callback(i, t, latents)\n\n        # make sure the VAE is in float32 mode, as it overflows in float16\n        if self.vae.dtype == torch.float16 and self.vae.config.force_upcast:\n            self.upcast_vae()\n            latents = latents.to(next(iter(self.vae.post_quant_conv.parameters())).dtype)\n\n        if not output_type == \"latent\":\n            image = self.vae.decode(latents / self.vae.config.scaling_factor, return_dict=False)[0]\n        else:\n            image = latents\n            return StableDiffusionXLPipelineOutput(images=image)\n\n        # apply watermark if available\n        if self.watermark is not None:\n            image = self.watermark.apply_watermark(image)\n\n        image = self.image_processor.postprocess(image, output_type=output_type)\n\n        # Offload last model to CPU\n        if hasattr(self, \"final_offload_hook\") and self.final_offload_hook is not None:\n            self.final_offload_hook.offload()\n\n        if not return_dict:\n            return (image,)\n\n        return StableDiffusionXLPipelineOutput(images=image)\n\n    # Overrride to properly handle the loading and unloading of the additional text encoder.\n    def load_lora_weights(self, pretrained_model_name_or_path_or_dict: Union[str, Dict[str, torch.Tensor]], **kwargs):\n        # We could have accessed the unet config from `lora_state_dict()` too. We pass\n        # it here explicitly to be able to tell that it's coming from an SDXL\n        # pipeline.\n        state_dict, network_alphas = self.lora_state_dict(\n            pretrained_model_name_or_path_or_dict,\n            unet_config=self.unet.config,\n            **kwargs,\n        )\n        self.load_lora_into_unet(state_dict, network_alphas=network_alphas, unet=self.unet)\n\n        text_encoder_state_dict = {k: v for k, v in state_dict.items() if \"text_encoder.\" in k}\n        if len(text_encoder_state_dict) > 0:\n            self.load_lora_into_text_encoder(\n                text_encoder_state_dict,\n                network_alphas=network_alphas,\n                text_encoder=self.text_encoder,\n                prefix=\"text_encoder\",\n                lora_scale=self.lora_scale,\n            )\n\n        text_encoder_2_state_dict = {k: v for k, v in state_dict.items() if \"text_encoder_2.\" in k}\n        if len(text_encoder_2_state_dict) > 0:\n            self.load_lora_into_text_encoder(\n                text_encoder_2_state_dict,\n                network_alphas=network_alphas,\n                text_encoder=self.text_encoder_2,\n                prefix=\"text_encoder_2\",\n                lora_scale=self.lora_scale,\n            )\n\n    @classmethod\n    def save_lora_weights(\n            self,\n            save_directory: Union[str, os.PathLike],\n            unet_lora_layers: Dict[str, Union[torch.nn.Module, torch.Tensor]] = None,\n            text_encoder_lora_layers: Dict[str, Union[torch.nn.Module, torch.Tensor]] = None,\n            text_encoder_2_lora_layers: Dict[str, Union[torch.nn.Module, torch.Tensor]] = None,\n            is_main_process: bool = True,\n            weight_name: str = None,\n            save_function: Callable = None,\n            safe_serialization: bool = True,\n    ):\n        state_dict = {}\n\n        def pack_weights(layers, prefix):\n            layers_weights = layers.state_dict() if isinstance(layers, torch.nn.Module) else layers\n            layers_state_dict = {f\"{prefix}.{module_name}\": param for module_name, param in layers_weights.items()}\n            return layers_state_dict\n\n        state_dict.update(pack_weights(unet_lora_layers, \"unet\"))\n\n        if text_encoder_lora_layers and text_encoder_2_lora_layers:\n            state_dict.update(pack_weights(text_encoder_lora_layers, \"text_encoder\"))\n            state_dict.update(pack_weights(text_encoder_2_lora_layers, \"text_encoder_2\"))\n\n        self.write_lora_layers(\n            state_dict=state_dict,\n            save_directory=save_directory,\n            is_main_process=is_main_process,\n            weight_name=weight_name,\n            save_function=save_function,\n            safe_serialization=safe_serialization,\n        )\n\n    def _remove_text_encoder_monkey_patch(self):\n        self._remove_text_encoder_monkey_patch_classmethod(self.text_encoder)\n        self._remove_text_encoder_monkey_patch_classmethod(self.text_encoder_2)\n\n    def _encode_prompt_sd1_5(\n            self,\n            prompt,\n            device,\n            num_images_per_prompt,\n            do_classifier_free_guidance,\n            negative_prompt=None,\n            prompt_embeds: Optional[torch.FloatTensor] = None,\n            negative_prompt_embeds: Optional[torch.FloatTensor] = None,\n            lora_scale: Optional[float] = None,\n    ):\n        r\"\"\"\n        Encodes the prompt into text encoder hidden states.\n\n        Args:\n             prompt (`str` or `List[str]`, *optional*):\n                prompt to be encoded\n            device: (`torch.device`):\n                torch device\n            num_images_per_prompt (`int`):\n                number of images that should be generated per prompt\n            do_classifier_free_guidance (`bool`):\n                whether to use classifier free guidance or not\n            negative_prompt (`str` or `List[str]`, *optional*):\n                The prompt or prompts not to guide the image generation. If not defined, one has to pass\n                `negative_prompt_embeds` instead. Ignored when not using guidance (i.e., ignored if `guidance_scale` is\n                less than `1`).\n            prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt weighting. If not\n                provided, text embeddings will be generated from `prompt` input argument.\n            negative_prompt_embeds (`torch.FloatTensor`, *optional*):\n                Pre-generated negative text embeddings. Can be used to easily tweak text inputs, *e.g.* prompt\n                weighting. If not provided, negative_prompt_embeds will be generated from `negative_prompt` input\n                argument.\n            lora_scale (`float`, *optional*):\n                A lora scale that will be applied to all LoRA layers of the text encoder if LoRA layers are loaded.\n        \"\"\"\n        # set lora scale so that monkey patched LoRA\n        # function of text encoder can correctly access it\n        if lora_scale is not None and isinstance(self, LoraLoaderMixin):\n            self._lora_scale = lora_scale\n\n        if prompt is not None and isinstance(prompt, str):\n            batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            batch_size = len(prompt)\n        else:\n            batch_size = prompt_embeds.shape[0]\n\n        if prompt_embeds is None:\n            # textual inversion: procecss multi-vector tokens if necessary\n            if isinstance(self, TextualInversionLoaderMixin):\n                prompt = self.maybe_convert_prompt(prompt, self.tokenizer_sd1_5)\n\n            text_inputs = self.tokenizer_sd1_5(\n                prompt,\n                padding=\"max_length\",\n                max_length=self.tokenizer_sd1_5.model_max_length,\n                truncation=True,\n                return_tensors=\"pt\",\n            )\n            text_input_ids = text_inputs.input_ids\n            untruncated_ids = self.tokenizer_sd1_5(prompt, padding=\"longest\", return_tensors=\"pt\").input_ids\n\n            if untruncated_ids.shape[-1] >= text_input_ids.shape[-1] and not torch.equal(\n                    text_input_ids, untruncated_ids\n            ):\n                removed_text = self.tokenizer_sd1_5.batch_decode(\n                    untruncated_ids[:, self.tokenizer_sd1_5.model_max_length - 1: -1]\n                )\n                logger.warning(\n                    \"The following part of your input was truncated because CLIP can only handle sequences up to\"\n                    f\" {self.tokenizer_sd1_5.model_max_length} tokens: {removed_text}\"\n                )\n\n            if hasattr(self.text_encoder_sd1_5.config,\n                       \"use_attention_mask\") and self.text_encoder_sd1_5.config.use_attention_mask:\n                attention_mask = text_inputs.attention_mask.to(device)\n            else:\n                attention_mask = None\n\n            prompt_embeds = self.text_encoder_sd1_5(\n                text_input_ids.to(device),\n                attention_mask=attention_mask,\n            )\n            prompt_embeds = prompt_embeds[0]\n\n        if self.text_encoder_sd1_5 is not None:\n            prompt_embeds_dtype = self.text_encoder_sd1_5.dtype\n        elif self.unet_sd1_5 is not None:\n            prompt_embeds_dtype = self.unet_sd1_5.dtype\n        else:\n            prompt_embeds_dtype = prompt_embeds.dtype\n\n        prompt_embeds = prompt_embeds.to(dtype=prompt_embeds_dtype, device=device)\n\n        bs_embed, seq_len, _ = prompt_embeds.shape\n        # duplicate text embeddings for each generation per prompt, using mps friendly method\n        prompt_embeds = prompt_embeds.repeat(1, num_images_per_prompt, 1)\n        prompt_embeds = prompt_embeds.view(bs_embed * num_images_per_prompt, seq_len, -1)\n\n        # get unconditional embeddings for classifier free guidance\n        if do_classifier_free_guidance and negative_prompt_embeds is None:\n            uncond_tokens: List[str]\n            if negative_prompt is None:\n                uncond_tokens = [\"\"] * batch_size\n            elif prompt is not None and type(prompt) is not type(negative_prompt):\n                raise TypeError(\n                    f\"`negative_prompt` should be the same type to `prompt`, but got {type(negative_prompt)} !=\"\n                    f\" {type(prompt)}.\"\n                )\n            elif isinstance(negative_prompt, str):\n                uncond_tokens = [negative_prompt]\n            elif batch_size != len(negative_prompt):\n                raise ValueError(\n                    f\"`negative_prompt`: {negative_prompt} has batch size {len(negative_prompt)}, but `prompt`:\"\n                    f\" {prompt} has batch size {batch_size}. Please make sure that passed `negative_prompt` matches\"\n                    \" the batch size of `prompt`.\"\n                )\n            else:\n                uncond_tokens = negative_prompt\n\n            # textual inversion: procecss multi-vector tokens if necessary\n            if isinstance(self, TextualInversionLoaderMixin):\n                uncond_tokens = self.maybe_convert_prompt(uncond_tokens, self.tokenizer_sd1_5)\n\n            max_length = prompt_embeds.shape[1]\n            uncond_input = self.tokenizer_sd1_5(\n                uncond_tokens,\n                padding=\"max_length\",\n                max_length=max_length,\n                truncation=True,\n                return_tensors=\"pt\",\n            )\n\n            if hasattr(self.text_encoder_sd1_5.config,\n                       \"use_attention_mask\") and self.text_encoder_sd1_5.config.use_attention_mask:\n                attention_mask = uncond_input.attention_mask.to(device)\n            else:\n                attention_mask = None\n\n            negative_prompt_embeds = self.text_encoder_sd1_5(\n                uncond_input.input_ids.to(device),\n                attention_mask=attention_mask,\n            )\n            negative_prompt_embeds = negative_prompt_embeds[0]\n\n        if do_classifier_free_guidance:\n            # duplicate unconditional embeddings for each generation per prompt, using mps friendly method\n            seq_len = negative_prompt_embeds.shape[1]\n\n            negative_prompt_embeds = negative_prompt_embeds.to(dtype=prompt_embeds_dtype, device=device)\n\n            negative_prompt_embeds = negative_prompt_embeds.repeat(1, num_images_per_prompt, 1)\n            negative_prompt_embeds = negative_prompt_embeds.view(batch_size * num_images_per_prompt, seq_len, -1)\n\n            # For classifier free guidance, we need to do two forward passes.\n            # Here we concatenate the unconditional and text embeddings into a single batch\n            # to avoid doing two forward passes\n            prompt_embeds = torch.cat([negative_prompt_embeds, prompt_embeds])\n\n        return prompt_embeds\n\n    def decode_latents_sd1_5(self, latents):\n        warnings.warn(\n            \"The decode_latents method is deprecated and will be removed in a future version. Please\"\n            \" use VaeImageProcessor instead\",\n            FutureWarning,\n        )\n        latents = 1 / self.vae_sd1_5.config.scaling_factor * latents\n        image = self.vae_sd1_5.decode(latents, return_dict=False)[0]\n        image = (image / 2 + 0.5).clamp(0, 1)\n        # we always cast to float32 as this does not cause significant overhead and is compatible with bfloat16\n        image = image.cpu().permute(0, 2, 3, 1).float().numpy()\n        return image\n\n    def check_inputs_sd1_5(\n            self,\n            prompt,\n            image,\n            callback_steps,\n            negative_prompt=None,\n            prompt_embeds=None,\n            negative_prompt_embeds=None,\n            controlnet_conditioning_scale=1.0,\n            control_guidance_start=0.0,\n            control_guidance_end=1.0,\n    ):\n        if (callback_steps is None) or (\n                callback_steps is not None and (not isinstance(callback_steps, int) or callback_steps <= 0)\n        ):\n            raise ValueError(\n                f\"`callback_steps` has to be a positive integer but is {callback_steps} of type\"\n                f\" {type(callback_steps)}.\"\n            )\n\n        if prompt is not None and prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `prompt`: {prompt} and `prompt_embeds`: {prompt_embeds}. Please make sure to\"\n                \" only forward one of the two.\"\n            )\n        elif prompt is None and prompt_embeds is None:\n            raise ValueError(\n                \"Provide either `prompt` or `prompt_embeds`. Cannot leave both `prompt` and `prompt_embeds` undefined.\"\n            )\n        elif prompt is not None and (not isinstance(prompt, str) and not isinstance(prompt, list)):\n            raise ValueError(f\"`prompt` has to be of type `str` or `list` but is {type(prompt)}\")\n\n        if negative_prompt is not None and negative_prompt_embeds is not None:\n            raise ValueError(\n                f\"Cannot forward both `negative_prompt`: {negative_prompt} and `negative_prompt_embeds`:\"\n                f\" {negative_prompt_embeds}. Please make sure to only forward one of the two.\"\n            )\n\n        if prompt_embeds is not None and negative_prompt_embeds is not None:\n            if prompt_embeds.shape != negative_prompt_embeds.shape:\n                raise ValueError(\n                    \"`prompt_embeds` and `negative_prompt_embeds` must have the same shape when passed directly, but\"\n                    f\" got: `prompt_embeds` {prompt_embeds.shape} != `negative_prompt_embeds`\"\n                    f\" {negative_prompt_embeds.shape}.\"\n                )\n\n        # `prompt` needs more sophisticated handling when there are multiple\n        # conditionings.\n        if isinstance(self.controlnet, MultiControlNetModel):\n            if isinstance(prompt, list):\n                logger.warning(\n                    f\"You have {len(self.controlnet.nets)} ControlNets and you have passed {len(prompt)}\"\n                    \" prompts. The conditionings will be fixed across the prompts.\"\n                )\n\n        # Check `image`\n        is_compiled = hasattr(F, \"scaled_dot_product_attention\") and isinstance(\n            self.controlnet, torch._dynamo.eval_frame.OptimizedModule\n        )\n        if (\n                isinstance(self.controlnet, ControlNetModel)\n                or is_compiled\n                and isinstance(self.controlnet._orig_mod, ControlNetModel)\n        ):\n            self.check_image(image, prompt, prompt_embeds)\n        elif (\n                isinstance(self.controlnet, MultiControlNetModel)\n                or is_compiled\n                and isinstance(self.controlnet._orig_mod, MultiControlNetModel)\n        ):\n            if not isinstance(image, list):\n                raise TypeError(\"For multiple controlnets: `image` must be type `list`\")\n\n            # When `image` is a nested list:\n            # (e.g. [[canny_image_1, pose_image_1], [canny_image_2, pose_image_2]])\n            elif any(isinstance(i, list) for i in image):\n                raise ValueError(\"A single batch of multiple conditionings are supported at the moment.\")\n            elif len(image) != len(self.controlnet.nets):\n                raise ValueError(\n                    f\"For multiple controlnets: `image` must have the same length as the number of controlnets, but got {len(image)} images and {len(self.controlnet.nets)} ControlNets.\"\n                )\n\n            for image_ in image:\n                self.check_image(image_, prompt, prompt_embeds)\n        else:\n            assert False\n\n        # Check `controlnet_conditioning_scale`\n        if (\n                isinstance(self.controlnet, ControlNetModel)\n                or is_compiled\n                and isinstance(self.controlnet._orig_mod, ControlNetModel)\n        ):\n            if not isinstance(controlnet_conditioning_scale, float):\n                raise TypeError(\"For single controlnet: `controlnet_conditioning_scale` must be type `float`.\")\n        elif (\n                isinstance(self.controlnet, MultiControlNetModel)\n                or is_compiled\n                and isinstance(self.controlnet._orig_mod, MultiControlNetModel)\n        ):\n            if isinstance(controlnet_conditioning_scale, list):\n                if any(isinstance(i, list) for i in controlnet_conditioning_scale):\n                    raise ValueError(\"A single batch of multiple conditionings are supported at the moment.\")\n            elif isinstance(controlnet_conditioning_scale, list) and len(controlnet_conditioning_scale) != len(\n                    self.controlnet.nets\n            ):\n                raise ValueError(\n                    \"For multiple controlnets: When `controlnet_conditioning_scale` is specified as `list`, it must have\"\n                    \" the same length as the number of controlnets\"\n                )\n        else:\n            assert False\n\n        if not isinstance(control_guidance_start, (tuple, list)):\n            control_guidance_start = [control_guidance_start]\n\n        if not isinstance(control_guidance_end, (tuple, list)):\n            control_guidance_end = [control_guidance_end]\n\n        if len(control_guidance_start) != len(control_guidance_end):\n            raise ValueError(\n                f\"`control_guidance_start` has {len(control_guidance_start)} elements, but `control_guidance_end` has {len(control_guidance_end)} elements. Make sure to provide the same number of elements to each list.\"\n            )\n\n        if isinstance(self.controlnet, MultiControlNetModel):\n            if len(control_guidance_start) != len(self.controlnet.nets):\n                raise ValueError(\n                    f\"`control_guidance_start`: {control_guidance_start} has {len(control_guidance_start)} elements but there are {len(self.controlnet.nets)} controlnets available. Make sure to provide {len(self.controlnet.nets)}.\"\n                )\n\n        for start, end in zip(control_guidance_start, control_guidance_end):\n            if start >= end:\n                raise ValueError(\n                    f\"control guidance start: {start} cannot be larger or equal to control guidance end: {end}.\"\n                )\n            if start < 0.0:\n                raise ValueError(f\"control guidance start: {start} can't be smaller than 0.\")\n            if end > 1.0:\n                raise ValueError(f\"control guidance end: {end} can't be larger than 1.0.\")\n\n    # def prepare_latents_sd1_5(self, batch_size, num_channels_latents, height, width, dtype, device, generator, latents=None):\n    #     shape = (batch_size, num_channels_latents, height // self.vae_scale_factor_sd1_5, width // self.vae_scale_factor_sd1_5)\n    #     if isinstance(generator, list) and len(generator) != batch_size:\n    #         raise ValueError(\n    #             f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n    #             f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n    #         )\n    #\n    #     if latents is None:\n    #         latents = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n    #     else:\n    #         latents = latents.to(device)\n    #\n    #     # scale the initial noise by the standard deviation required by the scheduler\n    #     latents = latents * self.scheduler_sd1_5.init_noise_sigma\n    #     return latents\n    def prepare_latents_sd1_5(self, image, timestep, batch_size, num_images_per_prompt, dtype, device, generator=None):\n        if not isinstance(image, (torch.Tensor, PIL.Image.Image, list)):\n            raise ValueError(\n                f\"`image` has to be of type `torch.Tensor`, `PIL.Image.Image` or list but is {type(image)}\"\n            )\n\n        image = image.to(device=device, dtype=dtype)\n\n        batch_size = batch_size * num_images_per_prompt\n\n        if image.shape[1] == 4:\n            init_latents = image\n\n        else:\n            if isinstance(generator, list) and len(generator) != batch_size:\n                raise ValueError(\n                    f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                    f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n                )\n\n            elif isinstance(generator, list):\n                init_latents = [\n                    self.vae_sd1_5.encode(image[i : i + 1]).latent_dist.sample(generator[i]) for i in range(batch_size)\n                ]\n                init_latents = torch.cat(init_latents, dim=0)\n            else:\n                init_latents = self.vae_sd1_5.encode(image).latent_dist.sample(generator)\n\n            init_latents = self.vae_sd1_5.config.scaling_factor * init_latents\n\n        if batch_size > init_latents.shape[0] and batch_size % init_latents.shape[0] == 0:\n            # expand init_latents for batch_size\n            deprecation_message = (\n                f\"You have passed {batch_size} text prompts (`prompt`), but only {init_latents.shape[0]} initial\"\n                \" images (`image`). Initial images are now duplicating to match the number of text prompts. Note\"\n                \" that this behavior is deprecated and will be removed in a version 1.0.0. Please make sure to update\"\n                \" your script to pass as many initial images as text prompts to suppress this warning.\"\n            )\n            deprecate(\"len(prompt) != len(image)\", \"1.0.0\", deprecation_message, standard_warn=False)\n            additional_image_per_prompt = batch_size // init_latents.shape[0]\n            init_latents = torch.cat([init_latents] * additional_image_per_prompt, dim=0)\n        elif batch_size > init_latents.shape[0] and batch_size % init_latents.shape[0] != 0:\n            raise ValueError(\n                f\"Cannot duplicate `image` of batch size {init_latents.shape[0]} to {batch_size} text prompts.\"\n            )\n        else:\n            init_latents = torch.cat([init_latents], dim=0)\n\n        shape = init_latents.shape\n\n        noise = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n\n        # get latents\n        init_latents = self.scheduler_sd1_5.add_noise(init_latents, noise, timestep)\n        latents = init_latents\n\n        return latents\n\n    def prepare_image(\n        self,\n        image,\n        width,\n        height,\n        batch_size,\n        num_images_per_prompt,\n        device,\n        dtype,\n        do_classifier_free_guidance=False,\n        guess_mode=False,\n    ):\n        image = self.control_image_processor.preprocess(image, height=height, width=width).to(dtype=torch.float32)\n        image_batch_size = image.shape[0]\n\n        if image_batch_size == 1:\n            repeat_by = batch_size\n        else:\n            # image batch size is the same as prompt batch size\n            repeat_by = num_images_per_prompt\n\n        image = image.repeat_interleave(repeat_by, dim=0)\n\n        image = image.to(device=device, dtype=dtype)\n\n        if do_classifier_free_guidance and not guess_mode:\n            image = torch.cat([image] * 2)\n\n        return image\n\n    def check_image(self, image, prompt, prompt_embeds):\n        image_is_pil = isinstance(image, PIL.Image.Image)\n        image_is_tensor = isinstance(image, torch.Tensor)\n        image_is_np = isinstance(image, np.ndarray)\n        image_is_pil_list = isinstance(image, list) and isinstance(image[0], PIL.Image.Image)\n        image_is_tensor_list = isinstance(image, list) and isinstance(image[0], torch.Tensor)\n        image_is_np_list = isinstance(image, list) and isinstance(image[0], np.ndarray)\n\n        if (\n            not image_is_pil\n            and not image_is_tensor\n            and not image_is_np\n            and not image_is_pil_list\n            and not image_is_tensor_list\n            and not image_is_np_list\n        ):\n            raise TypeError(\n                f\"image must be passed and be one of PIL image, numpy array, torch tensor, list of PIL images, list of numpy arrays or list of torch tensors, but is {type(image)}\"\n            )\n\n        if image_is_pil:\n            image_batch_size = 1\n        else:\n            image_batch_size = len(image)\n\n        if prompt is not None and isinstance(prompt, str):\n            prompt_batch_size = 1\n        elif prompt is not None and isinstance(prompt, list):\n            prompt_batch_size = len(prompt)\n        elif prompt_embeds is not None:\n            prompt_batch_size = prompt_embeds.shape[0]\n\n        if image_batch_size != 1 and image_batch_size != prompt_batch_size:\n            raise ValueError(\n                f\"If image batch size is not 1, image batch size must be same as prompt batch size. image batch size: {image_batch_size}, prompt batch size: {prompt_batch_size}\"\n            )\n\n    def prepare_latents_from_noisy_latent(self, latent, device, dtype, generator, height, width, adapter_guidance_start, timesteps):\n        # sd1.5 noisy latent -> image\n        image = self.vae_sd1_5.decode(latent / self.vae_sd1_5.config.scaling_factor, return_dict=False)[0]\n        do_denormalize = [True] * image.shape[0]\n        image = self.image_processor_sd1_5.postprocess(image, output_type='pil', do_denormalize=do_denormalize)[0]\n        # image = self.image_processor_sd1_5.postprocess(image, do_denormalize=do_denormalize)[0]\n        # image.save(f'./test_img/noisy_latent_{adapter_guidance_start:.2f}.png')\n        # image -> SDXL latent\n        image = image.resize((height, width))\n        if self.vae.config.force_upcast:\n            image = image.float()\n            self.vae.to(dtype=torch.float32)\n        image = self.image_processor.preprocess(image)\n        image = image.to(device=device, dtype=dtype)\n        init_latents = self.vae.encode(image).latent_dist.sample()\n        init_latents = init_latents.to(dtype)\n        init_latents = self.vae.config.scaling_factor * init_latents\n        return init_latents\n\n    def prepare_xl_latents_from_sd_1_5(\n            self, latent, timestep, batch_size, num_images_per_prompt, height, width, dtype, device, generator=None, add_noise=True\n    ):\n        # sd1.5 latent -> img\n        image = self.vae_sd1_5.decode(latent / self.vae_sd1_5.config.scaling_factor, return_dict=False)[0]\n        do_denormalize = [True] * image.shape[0]\n        image = self.image_processor_sd1_5.postprocess(image, output_type='pil', do_denormalize=do_denormalize)[0]\n        image = image.resize((height, width))\n        # image.save('./test_img/image_sd1_5.jpg')\n        # input()\n\n        if not isinstance(image, (torch.Tensor, PIL.Image.Image, list)):\n            raise ValueError(\n                f\"`image` has to be of type `torch.Tensor`, `PIL.Image.Image` or list but is {type(image)}\"\n            )\n\n        # Offload text encoder if `enable_model_cpu_offload` was enabled\n        if hasattr(self, \"final_offload_hook\") and self.final_offload_hook is not None:\n            self.text_encoder_2.to(\"cpu\")\n            torch.cuda.empty_cache()\n\n        image = self.image_processor.preprocess(image)\n\n        image = image.to(device=device, dtype=dtype)\n\n        batch_size = batch_size * num_images_per_prompt\n\n        if image.shape[1] == 4:\n            init_latents = image\n\n        else:\n            # make sure the VAE is in float32 mode, as it overflows in float16\n            if self.vae.config.force_upcast:\n                image = image.float()\n                self.vae.to(dtype=torch.float32)\n\n            if isinstance(generator, list) and len(generator) != batch_size:\n                raise ValueError(\n                    f\"You have passed a list of generators of length {len(generator)}, but requested an effective batch\"\n                    f\" size of {batch_size}. Make sure the batch size matches the length of the generators.\"\n                )\n\n            elif isinstance(generator, list):\n                init_latents = [\n                    self.vae.encode(image[i: i + 1]).latent_dist.sample(generator[i]) for i in range(batch_size)\n                ]\n                init_latents = torch.cat(init_latents, dim=0)\n            else:\n                init_latents = self.vae.encode(image).latent_dist.sample(generator)\n\n            if self.vae.config.force_upcast:\n                self.vae.to(dtype)\n\n            init_latents = init_latents.to(dtype)\n            init_latents = self.vae.config.scaling_factor * init_latents\n\n        if batch_size > init_latents.shape[0] and batch_size % init_latents.shape[0] == 0:\n            # expand init_latents for batch_size\n            additional_image_per_prompt = batch_size // init_latents.shape[0]\n            init_latents = torch.cat([init_latents] * additional_image_per_prompt, dim=0)\n        elif batch_size > init_latents.shape[0] and batch_size % init_latents.shape[0] != 0:\n            raise ValueError(\n                f\"Cannot duplicate `image` of batch size {init_latents.shape[0]} to {batch_size} text prompts.\"\n            )\n        else:\n            init_latents = torch.cat([init_latents], dim=0)\n\n        if add_noise:\n            shape = init_latents.shape\n            noise = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n            # get latents\n            init_latents = self.scheduler.add_noise(init_latents, noise, timestep)\n\n        latents = init_latents\n\n        return latents\n\n    def get_timesteps(self, num_inference_steps, strength, device, denoising_start=None):\n        # get the original timestep using init_timestep\n        if denoising_start is None:\n            init_timestep = min(int(num_inference_steps * strength), num_inference_steps)\n            t_start = max(num_inference_steps - init_timestep, 0)\n        else:\n            t_start = 0\n\n        timesteps = self.scheduler.timesteps[t_start * self.scheduler.order :]\n\n        # Strength is irrelevant if we directly request a timestep to start at;\n        # that is, strength is determined by the denoising_start instead.\n        if denoising_start is not None:\n            discrete_timestep_cutoff = int(\n                round(\n                    self.scheduler.config.num_train_timesteps\n                    - (denoising_start * self.scheduler.config.num_train_timesteps)\n                )\n            )\n            timesteps = list(filter(lambda ts: ts < discrete_timestep_cutoff, timesteps))\n            return torch.tensor(timesteps), len(timesteps)\n\n        return timesteps, num_inference_steps - t_start\n\n    def sd1_5_add_noise(self, init_latents, timestep, generator, device, dtype):\n        shape = init_latents.shape\n        noise = randn_tensor(shape, generator=generator, device=device, dtype=dtype)\n        # get latents\n        init_latents = self.scheduler.add_noise(init_latents, noise, timestep)\n\n        image = self.vae_sd1_5.decode(init_latents / self.vae_sd1_5.config.scaling_factor, return_dict=False)[0]\n        do_denormalize = [True] * image.shape[0]\n        image = self.image_processor_sd1_5.postprocess(image, output_type='pil', do_denormalize=do_denormalize)[0]\n        # image.save(f'./test_img/noisy_image_sd1_5_{int(timestep)}.jpg')\n\n        return init_latents\n"
  },
  {
    "path": "scripts/xadapter/unet_adapter.py",
    "content": "# Copyright 2023 The HuggingFace Team. All rights reserved.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#     http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\nfrom dataclasses import dataclass\nfrom typing import Any, Dict, List, Optional, Tuple, Union\n\nimport torch\nimport torch.nn as nn\nimport torch.utils.checkpoint\n\nfrom diffusers.configuration_utils import ConfigMixin, register_to_config\nfrom diffusers.loaders import UNet2DConditionLoadersMixin\nfrom diffusers.utils import BaseOutput, logging\nfrom diffusers.models.activations import get_activation\nfrom diffusers.models.attention_processor import AttentionProcessor, AttnProcessor\nfrom diffusers.models.embeddings import (\n    GaussianFourierProjection,\n    ImageHintTimeEmbedding,\n    ImageProjection,\n    ImageTimeEmbedding,\n    TextImageProjection,\n    TextImageTimeEmbedding,\n    TextTimeEmbedding,\n    TimestepEmbedding,\n    Timesteps,\n)\nfrom modules.xadapter.xadapter_hijacks import PositionNet\nfrom diffusers.models.modeling_utils import ModelMixin\ntry:\n    from diffusers.models.unet_2d_blocks import UNetMidBlock2DCrossAttn, UNetMidBlock2DSimpleCrossAttn, get_down_block, get_up_block\nexcept Exception:\n    from diffusers.models.unets.unet_2d_blocks import UNetMidBlock2DCrossAttn, UNetMidBlock2DSimpleCrossAttn, get_down_block, get_up_block\n\n\nlogger = logging.get_logger(__name__)  # pylint: disable=invalid-name\n\n\n@dataclass\nclass UNet2DConditionOutput(BaseOutput):\n    \"\"\"\n    The output of [`UNet2DConditionModel`].\n\n    Args:\n        sample (`torch.FloatTensor` of shape `(batch_size, num_channels, height, width)`):\n            The hidden states output conditioned on `encoder_hidden_states` input. Output of last layer of model.\n    \"\"\"\n\n    sample: torch.FloatTensor = None\n    hidden_states: Optional[list] = None\n    encoder_feature: Optional[list] = None\n\n\nclass UNet2DConditionModel(ModelMixin, ConfigMixin, UNet2DConditionLoadersMixin):\n    r\"\"\"\n    A conditional 2D UNet model that takes a noisy sample, conditional state, and a timestep and returns a sample\n    shaped output.\n\n    This model inherits from [`ModelMixin`]. Check the superclass documentation for it's generic methods implemented\n    for all models (such as downloading or saving).\n\n    Parameters:\n        sample_size (`int` or `Tuple[int, int]`, *optional*, defaults to `None`):\n            Height and width of input/output sample.\n        in_channels (`int`, *optional*, defaults to 4): Number of channels in the input sample.\n        out_channels (`int`, *optional*, defaults to 4): Number of channels in the output.\n        center_input_sample (`bool`, *optional*, defaults to `False`): Whether to center the input sample.\n        flip_sin_to_cos (`bool`, *optional*, defaults to `False`):\n            Whether to flip the sin to cos in the time embedding.\n        freq_shift (`int`, *optional*, defaults to 0): The frequency shift to apply to the time embedding.\n        down_block_types (`Tuple[str]`, *optional*, defaults to `(\"CrossAttnDownBlock2D\", \"CrossAttnDownBlock2D\", \"CrossAttnDownBlock2D\", \"DownBlock2D\")`):\n            The tuple of downsample blocks to use.\n        mid_block_type (`str`, *optional*, defaults to `\"UNetMidBlock2DCrossAttn\"`):\n            Block type for middle of UNet, it can be either `UNetMidBlock2DCrossAttn` or\n            `UNetMidBlock2DSimpleCrossAttn`. If `None`, the mid block layer is skipped.\n        up_block_types (`Tuple[str]`, *optional*, defaults to `(\"UpBlock2D\", \"CrossAttnUpBlock2D\", \"CrossAttnUpBlock2D\", \"CrossAttnUpBlock2D\")`):\n            The tuple of upsample blocks to use.\n        only_cross_attention(`bool` or `Tuple[bool]`, *optional*, default to `False`):\n            Whether to include self-attention in the basic transformer blocks, see\n            [`~models.attention.BasicTransformerBlock`].\n        block_out_channels (`Tuple[int]`, *optional*, defaults to `(320, 640, 1280, 1280)`):\n            The tuple of output channels for each block.\n        layers_per_block (`int`, *optional*, defaults to 2): The number of layers per block.\n        downsample_padding (`int`, *optional*, defaults to 1): The padding to use for the downsampling convolution.\n        mid_block_scale_factor (`float`, *optional*, defaults to 1.0): The scale factor to use for the mid block.\n        act_fn (`str`, *optional*, defaults to `\"silu\"`): The activation function to use.\n        norm_num_groups (`int`, *optional*, defaults to 32): The number of groups to use for the normalization.\n            If `None`, normalization and activation layers is skipped in post-processing.\n        norm_eps (`float`, *optional*, defaults to 1e-5): The epsilon to use for the normalization.\n        cross_attention_dim (`int` or `Tuple[int]`, *optional*, defaults to 1280):\n            The dimension of the cross attention features.\n        transformer_layers_per_block (`int` or `Tuple[int]`, *optional*, defaults to 1):\n            The number of transformer blocks of type [`~models.attention.BasicTransformerBlock`]. Only relevant for\n            [`~models.unet_2d_blocks.CrossAttnDownBlock2D`], [`~models.unet_2d_blocks.CrossAttnUpBlock2D`],\n            [`~models.unet_2d_blocks.UNetMidBlock2DCrossAttn`].\n        encoder_hid_dim (`int`, *optional*, defaults to None):\n            If `encoder_hid_dim_type` is defined, `encoder_hidden_states` will be projected from `encoder_hid_dim`\n            dimension to `cross_attention_dim`.\n        encoder_hid_dim_type (`str`, *optional*, defaults to `None`):\n            If given, the `encoder_hidden_states` and potentially other embeddings are down-projected to text\n            embeddings of dimension `cross_attention` according to `encoder_hid_dim_type`.\n        attention_head_dim (`int`, *optional*, defaults to 8): The dimension of the attention heads.\n        num_attention_heads (`int`, *optional*):\n            The number of attention heads. If not defined, defaults to `attention_head_dim`\n        resnet_time_scale_shift (`str`, *optional*, defaults to `\"default\"`): Time scale shift config\n            for ResNet blocks (see [`~models.resnet.ResnetBlock2D`]). Choose from `default` or `scale_shift`.\n        class_embed_type (`str`, *optional*, defaults to `None`):\n            The type of class embedding to use which is ultimately summed with the time embeddings. Choose from `None`,\n            `\"timestep\"`, `\"identity\"`, `\"projection\"`, or `\"simple_projection\"`.\n        addition_embed_type (`str`, *optional*, defaults to `None`):\n            Configures an optional embedding which will be summed with the time embeddings. Choose from `None` or\n            \"text\". \"text\" will use the `TextTimeEmbedding` layer.\n        addition_time_embed_dim: (`int`, *optional*, defaults to `None`):\n            Dimension for the timestep embeddings.\n        num_class_embeds (`int`, *optional*, defaults to `None`):\n            Input dimension of the learnable embedding matrix to be projected to `time_embed_dim`, when performing\n            class conditioning with `class_embed_type` equal to `None`.\n        time_embedding_type (`str`, *optional*, defaults to `positional`):\n            The type of position embedding to use for timesteps. Choose from `positional` or `fourier`.\n        time_embedding_dim (`int`, *optional*, defaults to `None`):\n            An optional override for the dimension of the projected time embedding.\n        time_embedding_act_fn (`str`, *optional*, defaults to `None`):\n            Optional activation function to use only once on the time embeddings before they are passed to the rest of\n            the UNet. Choose from `silu`, `mish`, `gelu`, and `swish`.\n        timestep_post_act (`str`, *optional*, defaults to `None`):\n            The second activation function to use in timestep embedding. Choose from `silu`, `mish` and `gelu`.\n        time_cond_proj_dim (`int`, *optional*, defaults to `None`):\n            The dimension of `cond_proj` layer in the timestep embedding.\n        conv_in_kernel (`int`, *optional*, default to `3`): The kernel size of `conv_in` layer.\n        conv_out_kernel (`int`, *optional*, default to `3`): The kernel size of `conv_out` layer.\n        projection_class_embeddings_input_dim (`int`, *optional*): The dimension of the `class_labels` input when\n            `class_embed_type=\"projection\"`. Required when `class_embed_type=\"projection\"`.\n        class_embeddings_concat (`bool`, *optional*, defaults to `False`): Whether to concatenate the time\n            embeddings with the class embeddings.\n        mid_block_only_cross_attention (`bool`, *optional*, defaults to `None`):\n            Whether to use cross attention with the mid block when using the `UNetMidBlock2DSimpleCrossAttn`. If\n            `only_cross_attention` is given as a single boolean and `mid_block_only_cross_attention` is `None`, the\n            `only_cross_attention` value is used as the value for `mid_block_only_cross_attention`. Default to `False`\n            otherwise.\n    \"\"\"\n\n    _supports_gradient_checkpointing = True\n\n    @register_to_config\n    def __init__(\n        self,\n        sample_size: Optional[int] = None,\n        in_channels: int = 4,\n        out_channels: int = 4,\n        center_input_sample: bool = False,\n        flip_sin_to_cos: bool = True,\n        freq_shift: int = 0,\n        down_block_types: Tuple[str] = (\n            \"CrossAttnDownBlock2D\",\n            \"CrossAttnDownBlock2D\",\n            \"CrossAttnDownBlock2D\",\n            \"DownBlock2D\",\n        ),\n        mid_block_type: Optional[str] = \"UNetMidBlock2DCrossAttn\",\n        up_block_types: Tuple[str] = (\"UpBlock2D\", \"CrossAttnUpBlock2D\", \"CrossAttnUpBlock2D\", \"CrossAttnUpBlock2D\"),\n        only_cross_attention: Union[bool, Tuple[bool]] = False,\n        block_out_channels: Tuple[int] = (320, 640, 1280, 1280),\n        layers_per_block: Union[int, Tuple[int]] = 2,\n        downsample_padding: int = 1,\n        mid_block_scale_factor: float = 1,\n        act_fn: str = \"silu\",\n        norm_num_groups: Optional[int] = 32,\n        norm_eps: float = 1e-5,\n        cross_attention_dim: Union[int, Tuple[int]] = 1280,\n        transformer_layers_per_block: Union[int, Tuple[int]] = 1,\n        encoder_hid_dim: Optional[int] = None,\n        encoder_hid_dim_type: Optional[str] = None,\n        attention_head_dim: Union[int, Tuple[int]] = 8,\n        num_attention_heads: Optional[Union[int, Tuple[int]]] = None,\n        dual_cross_attention: bool = False,\n        use_linear_projection: bool = False,\n        class_embed_type: Optional[str] = None,\n        addition_embed_type: Optional[str] = None,\n        addition_time_embed_dim: Optional[int] = None,\n        num_class_embeds: Optional[int] = None,\n        upcast_attention: bool = False,\n        resnet_time_scale_shift: str = \"default\",\n        resnet_skip_time_act: bool = False,\n        resnet_out_scale_factor: int = 1.0,\n        time_embedding_type: str = \"positional\",\n        time_embedding_dim: Optional[int] = None,\n        time_embedding_act_fn: Optional[str] = None,\n        timestep_post_act: Optional[str] = None,\n        time_cond_proj_dim: Optional[int] = None,\n        conv_in_kernel: int = 3,\n        conv_out_kernel: int = 3,\n        projection_class_embeddings_input_dim: Optional[int] = None,\n        attention_type: str = \"default\",\n        class_embeddings_concat: bool = False,\n        mid_block_only_cross_attention: Optional[bool] = None,\n        cross_attention_norm: Optional[str] = None,\n        addition_embed_type_num_heads=64,\n    ):\n        super().__init__()\n\n        self.sample_size = sample_size\n\n        if num_attention_heads is not None:\n            raise ValueError(\n                \"At the moment it is not possible to define the number of attention heads via `num_attention_heads` because of a naming issue as described in https://github.com/huggingface/diffusers/issues/2011#issuecomment-1547958131. Passing `num_attention_heads` will only be supported in diffusers v0.19.\"\n            )\n\n        # If `num_attention_heads` is not defined (which is the case for most models)\n        # it will default to `attention_head_dim`. This looks weird upon first reading it and it is.\n        # The reason for this behavior is to correct for incorrectly named variables that were introduced\n        # when this library was created. The incorrect naming was only discovered much later in https://github.com/huggingface/diffusers/issues/2011#issuecomment-1547958131\n        # Changing `attention_head_dim` to `num_attention_heads` for 40,000+ configurations is too backwards breaking\n        # which is why we correct for the naming here.\n        num_attention_heads = num_attention_heads or attention_head_dim\n\n        # Check inputs\n        if len(down_block_types) != len(up_block_types):\n            raise ValueError(\n                f\"Must provide the same number of `down_block_types` as `up_block_types`. `down_block_types`: {down_block_types}. `up_block_types`: {up_block_types}.\"\n            )\n\n        if len(block_out_channels) != len(down_block_types):\n            raise ValueError(\n                f\"Must provide the same number of `block_out_channels` as `down_block_types`. `block_out_channels`: {block_out_channels}. `down_block_types`: {down_block_types}.\"\n            )\n\n        if not isinstance(only_cross_attention, bool) and len(only_cross_attention) != len(down_block_types):\n            raise ValueError(\n                f\"Must provide the same number of `only_cross_attention` as `down_block_types`. `only_cross_attention`: {only_cross_attention}. `down_block_types`: {down_block_types}.\"\n            )\n\n        if not isinstance(num_attention_heads, int) and len(num_attention_heads) != len(down_block_types):\n            raise ValueError(\n                f\"Must provide the same number of `num_attention_heads` as `down_block_types`. `num_attention_heads`: {num_attention_heads}. `down_block_types`: {down_block_types}.\"\n            )\n\n        if not isinstance(attention_head_dim, int) and len(attention_head_dim) != len(down_block_types):\n            raise ValueError(\n                f\"Must provide the same number of `attention_head_dim` as `down_block_types`. `attention_head_dim`: {attention_head_dim}. `down_block_types`: {down_block_types}.\"\n            )\n\n        if isinstance(cross_attention_dim, list) and len(cross_attention_dim) != len(down_block_types):\n            raise ValueError(\n                f\"Must provide the same number of `cross_attention_dim` as `down_block_types`. `cross_attention_dim`: {cross_attention_dim}. `down_block_types`: {down_block_types}.\"\n            )\n\n        if not isinstance(layers_per_block, int) and len(layers_per_block) != len(down_block_types):\n            raise ValueError(\n                f\"Must provide the same number of `layers_per_block` as `down_block_types`. `layers_per_block`: {layers_per_block}. `down_block_types`: {down_block_types}.\"\n            )\n\n        # input\n        conv_in_padding = (conv_in_kernel - 1) // 2\n        self.conv_in = nn.Conv2d(\n            in_channels, block_out_channels[0], kernel_size=conv_in_kernel, padding=conv_in_padding\n        )\n\n        # time\n        if time_embedding_type == \"fourier\":\n            time_embed_dim = time_embedding_dim or block_out_channels[0] * 2\n            if time_embed_dim % 2 != 0:\n                raise ValueError(f\"`time_embed_dim` should be divisible by 2, but is {time_embed_dim}.\")\n            self.time_proj = GaussianFourierProjection(\n                time_embed_dim // 2, set_W_to_weight=False, log=False, flip_sin_to_cos=flip_sin_to_cos\n            )\n            timestep_input_dim = time_embed_dim\n        elif time_embedding_type == \"positional\":\n            time_embed_dim = time_embedding_dim or block_out_channels[0] * 4\n\n            self.time_proj = Timesteps(block_out_channels[0], flip_sin_to_cos, freq_shift)\n            timestep_input_dim = block_out_channels[0]\n        else:\n            raise ValueError(\n                f\"{time_embedding_type} does not exist. Please make sure to use one of `fourier` or `positional`.\"\n            )\n\n        self.time_embedding = TimestepEmbedding(\n            timestep_input_dim,\n            time_embed_dim,\n            act_fn=act_fn,\n            post_act_fn=timestep_post_act,\n            cond_proj_dim=time_cond_proj_dim,\n        )\n\n        if encoder_hid_dim_type is None and encoder_hid_dim is not None:\n            encoder_hid_dim_type = \"text_proj\"\n            self.register_to_config(encoder_hid_dim_type=encoder_hid_dim_type)\n            logger.info(\"encoder_hid_dim_type defaults to 'text_proj' as `encoder_hid_dim` is defined.\")\n\n        if encoder_hid_dim is None and encoder_hid_dim_type is not None:\n            raise ValueError(\n                f\"`encoder_hid_dim` has to be defined when `encoder_hid_dim_type` is set to {encoder_hid_dim_type}.\"\n            )\n\n        if encoder_hid_dim_type == \"text_proj\":\n            self.encoder_hid_proj = nn.Linear(encoder_hid_dim, cross_attention_dim)\n        elif encoder_hid_dim_type == \"text_image_proj\":\n            # image_embed_dim DOESN'T have to be `cross_attention_dim`. To not clutter the __init__ too much\n            # they are set to `cross_attention_dim` here as this is exactly the required dimension for the currently only use\n            # case when `addition_embed_type == \"text_image_proj\"` (Kadinsky 2.1)`\n            self.encoder_hid_proj = TextImageProjection(\n                text_embed_dim=encoder_hid_dim,\n                image_embed_dim=cross_attention_dim,\n                cross_attention_dim=cross_attention_dim,\n            )\n        elif encoder_hid_dim_type == \"image_proj\":\n            # Kandinsky 2.2\n            self.encoder_hid_proj = ImageProjection(\n                image_embed_dim=encoder_hid_dim,\n                cross_attention_dim=cross_attention_dim,\n            )\n        elif encoder_hid_dim_type is not None:\n            raise ValueError(\n                f\"encoder_hid_dim_type: {encoder_hid_dim_type} must be None, 'text_proj' or 'text_image_proj'.\"\n            )\n        else:\n            self.encoder_hid_proj = None\n\n        # class embedding\n        if class_embed_type is None and num_class_embeds is not None:\n            self.class_embedding = nn.Embedding(num_class_embeds, time_embed_dim)\n        elif class_embed_type == \"timestep\":\n            self.class_embedding = TimestepEmbedding(timestep_input_dim, time_embed_dim, act_fn=act_fn)\n        elif class_embed_type == \"identity\":\n            self.class_embedding = nn.Identity(time_embed_dim, time_embed_dim)\n        elif class_embed_type == \"projection\":\n            if projection_class_embeddings_input_dim is None:\n                raise ValueError(\n                    \"`class_embed_type`: 'projection' requires `projection_class_embeddings_input_dim` be set\"\n                )\n            # The projection `class_embed_type` is the same as the timestep `class_embed_type` except\n            # 1. the `class_labels` inputs are not first converted to sinusoidal embeddings\n            # 2. it projects from an arbitrary input dimension.\n            #\n            # Note that `TimestepEmbedding` is quite general, being mainly linear layers and activations.\n            # When used for embedding actual timesteps, the timesteps are first converted to sinusoidal embeddings.\n            # As a result, `TimestepEmbedding` can be passed arbitrary vectors.\n            self.class_embedding = TimestepEmbedding(projection_class_embeddings_input_dim, time_embed_dim)\n        elif class_embed_type == \"simple_projection\":\n            if projection_class_embeddings_input_dim is None:\n                raise ValueError(\n                    \"`class_embed_type`: 'simple_projection' requires `projection_class_embeddings_input_dim` be set\"\n                )\n            self.class_embedding = nn.Linear(projection_class_embeddings_input_dim, time_embed_dim)\n        else:\n            self.class_embedding = None\n\n        if addition_embed_type == \"text\":\n            if encoder_hid_dim is not None:\n                text_time_embedding_from_dim = encoder_hid_dim\n            else:\n                text_time_embedding_from_dim = cross_attention_dim\n\n            self.add_embedding = TextTimeEmbedding(\n                text_time_embedding_from_dim, time_embed_dim, num_heads=addition_embed_type_num_heads\n            )\n        elif addition_embed_type == \"text_image\":\n            # text_embed_dim and image_embed_dim DON'T have to be `cross_attention_dim`. To not clutter the __init__ too much\n            # they are set to `cross_attention_dim` here as this is exactly the required dimension for the currently only use\n            # case when `addition_embed_type == \"text_image\"` (Kadinsky 2.1)`\n            self.add_embedding = TextImageTimeEmbedding(\n                text_embed_dim=cross_attention_dim, image_embed_dim=cross_attention_dim, time_embed_dim=time_embed_dim\n            )\n        elif addition_embed_type == \"text_time\":\n            self.add_time_proj = Timesteps(addition_time_embed_dim, flip_sin_to_cos, freq_shift)\n            self.add_embedding = TimestepEmbedding(projection_class_embeddings_input_dim, time_embed_dim)\n        elif addition_embed_type == \"image\":\n            # Kandinsky 2.2\n            self.add_embedding = ImageTimeEmbedding(image_embed_dim=encoder_hid_dim, time_embed_dim=time_embed_dim)\n        elif addition_embed_type == \"image_hint\":\n            # Kandinsky 2.2 ControlNet\n            self.add_embedding = ImageHintTimeEmbedding(image_embed_dim=encoder_hid_dim, time_embed_dim=time_embed_dim)\n        elif addition_embed_type is not None:\n            raise ValueError(f\"addition_embed_type: {addition_embed_type} must be None, 'text' or 'text_image'.\")\n\n        if time_embedding_act_fn is None:\n            self.time_embed_act = None\n        else:\n            self.time_embed_act = get_activation(time_embedding_act_fn)\n\n        self.down_blocks = nn.ModuleList([])\n        self.up_blocks = nn.ModuleList([])\n\n        if isinstance(only_cross_attention, bool):\n            if mid_block_only_cross_attention is None:\n                mid_block_only_cross_attention = only_cross_attention\n\n            only_cross_attention = [only_cross_attention] * len(down_block_types)\n\n        if mid_block_only_cross_attention is None:\n            mid_block_only_cross_attention = False\n\n        if isinstance(num_attention_heads, int):\n            num_attention_heads = (num_attention_heads,) * len(down_block_types)\n\n        if isinstance(attention_head_dim, int):\n            attention_head_dim = (attention_head_dim,) * len(down_block_types)\n\n        if isinstance(cross_attention_dim, int):\n            cross_attention_dim = (cross_attention_dim,) * len(down_block_types)\n\n        if isinstance(layers_per_block, int):\n            layers_per_block = [layers_per_block] * len(down_block_types)\n\n        if isinstance(transformer_layers_per_block, int):\n            transformer_layers_per_block = [transformer_layers_per_block] * len(down_block_types)\n\n        if class_embeddings_concat:\n            # The time embeddings are concatenated with the class embeddings. The dimension of the\n            # time embeddings passed to the down, middle, and up blocks is twice the dimension of the\n            # regular time embeddings\n            blocks_time_embed_dim = time_embed_dim * 2\n        else:\n            blocks_time_embed_dim = time_embed_dim\n\n        # down\n        output_channel = block_out_channels[0]\n        for i, down_block_type in enumerate(down_block_types):\n            input_channel = output_channel\n            output_channel = block_out_channels[i]\n            is_final_block = i == len(block_out_channels) - 1\n\n            down_block = get_down_block(\n                down_block_type,\n                num_layers=layers_per_block[i],\n                transformer_layers_per_block=transformer_layers_per_block[i],\n                in_channels=input_channel,\n                out_channels=output_channel,\n                temb_channels=blocks_time_embed_dim,\n                add_downsample=not is_final_block,\n                resnet_eps=norm_eps,\n                resnet_act_fn=act_fn,\n                resnet_groups=norm_num_groups,\n                cross_attention_dim=cross_attention_dim[i],\n                num_attention_heads=num_attention_heads[i],\n                downsample_padding=downsample_padding,\n                dual_cross_attention=dual_cross_attention,\n                use_linear_projection=use_linear_projection,\n                only_cross_attention=only_cross_attention[i],\n                upcast_attention=upcast_attention,\n                resnet_time_scale_shift=resnet_time_scale_shift,\n                attention_type=attention_type,\n                resnet_skip_time_act=resnet_skip_time_act,\n                resnet_out_scale_factor=resnet_out_scale_factor,\n                cross_attention_norm=cross_attention_norm,\n                attention_head_dim=attention_head_dim[i] if attention_head_dim[i] is not None else output_channel,\n            )\n            self.down_blocks.append(down_block)\n\n        # mid\n        if mid_block_type == \"UNetMidBlock2DCrossAttn\":\n            self.mid_block = UNetMidBlock2DCrossAttn(\n                transformer_layers_per_block=transformer_layers_per_block[-1],\n                in_channels=block_out_channels[-1],\n                temb_channels=blocks_time_embed_dim,\n                resnet_eps=norm_eps,\n                resnet_act_fn=act_fn,\n                output_scale_factor=mid_block_scale_factor,\n                resnet_time_scale_shift=resnet_time_scale_shift,\n                cross_attention_dim=cross_attention_dim[-1],\n                num_attention_heads=num_attention_heads[-1],\n                resnet_groups=norm_num_groups,\n                dual_cross_attention=dual_cross_attention,\n                use_linear_projection=use_linear_projection,\n                upcast_attention=upcast_attention,\n                attention_type=attention_type,\n            )\n        elif mid_block_type == \"UNetMidBlock2DSimpleCrossAttn\":\n            self.mid_block = UNetMidBlock2DSimpleCrossAttn(\n                in_channels=block_out_channels[-1],\n                temb_channels=blocks_time_embed_dim,\n                resnet_eps=norm_eps,\n                resnet_act_fn=act_fn,\n                output_scale_factor=mid_block_scale_factor,\n                cross_attention_dim=cross_attention_dim[-1],\n                attention_head_dim=attention_head_dim[-1],\n                resnet_groups=norm_num_groups,\n                resnet_time_scale_shift=resnet_time_scale_shift,\n                skip_time_act=resnet_skip_time_act,\n                only_cross_attention=mid_block_only_cross_attention,\n                cross_attention_norm=cross_attention_norm,\n            )\n        elif mid_block_type is None:\n            self.mid_block = None\n        else:\n            raise ValueError(f\"unknown mid_block_type : {mid_block_type}\")\n\n        # count how many layers upsample the images\n        self.num_upsamplers = 0\n\n        # up\n        reversed_block_out_channels = list(reversed(block_out_channels))\n        reversed_num_attention_heads = list(reversed(num_attention_heads))\n        reversed_layers_per_block = list(reversed(layers_per_block))\n        reversed_cross_attention_dim = list(reversed(cross_attention_dim))\n        reversed_transformer_layers_per_block = list(reversed(transformer_layers_per_block))\n        only_cross_attention = list(reversed(only_cross_attention))\n\n        output_channel = reversed_block_out_channels[0]\n        for i, up_block_type in enumerate(up_block_types):\n            is_final_block = i == len(block_out_channels) - 1\n\n            prev_output_channel = output_channel\n            output_channel = reversed_block_out_channels[i]\n            input_channel = reversed_block_out_channels[min(i + 1, len(block_out_channels) - 1)]\n\n            # add upsample block for all BUT final layer\n            if not is_final_block:\n                add_upsample = True\n                self.num_upsamplers += 1\n            else:\n                add_upsample = False\n\n            up_block = get_up_block(\n                up_block_type,\n                num_layers=reversed_layers_per_block[i] + 1,\n                transformer_layers_per_block=reversed_transformer_layers_per_block[i],\n                in_channels=input_channel,\n                out_channels=output_channel,\n                prev_output_channel=prev_output_channel,\n                temb_channels=blocks_time_embed_dim,\n                add_upsample=add_upsample,\n                resnet_eps=norm_eps,\n                resnet_act_fn=act_fn,\n                resnet_groups=norm_num_groups,\n                cross_attention_dim=reversed_cross_attention_dim[i],\n                num_attention_heads=reversed_num_attention_heads[i],\n                dual_cross_attention=dual_cross_attention,\n                use_linear_projection=use_linear_projection,\n                only_cross_attention=only_cross_attention[i],\n                upcast_attention=upcast_attention,\n                resnet_time_scale_shift=resnet_time_scale_shift,\n                attention_type=attention_type,\n                resnet_skip_time_act=resnet_skip_time_act,\n                resnet_out_scale_factor=resnet_out_scale_factor,\n                cross_attention_norm=cross_attention_norm,\n                attention_head_dim=attention_head_dim[i] if attention_head_dim[i] is not None else output_channel,\n            )\n            self.up_blocks.append(up_block)\n            prev_output_channel = output_channel\n\n        # out\n        if norm_num_groups is not None:\n            self.conv_norm_out = nn.GroupNorm(\n                num_channels=block_out_channels[0], num_groups=norm_num_groups, eps=norm_eps\n            )\n\n            self.conv_act = get_activation(act_fn)\n\n        else:\n            self.conv_norm_out = None\n            self.conv_act = None\n\n        conv_out_padding = (conv_out_kernel - 1) // 2\n        self.conv_out = nn.Conv2d(\n            block_out_channels[0], out_channels, kernel_size=conv_out_kernel, padding=conv_out_padding\n        )\n\n        if attention_type == \"gated\":\n            positive_len = 768\n            if isinstance(cross_attention_dim, int):\n                positive_len = cross_attention_dim\n            elif isinstance(cross_attention_dim, tuple) or isinstance(cross_attention_dim, list):\n                positive_len = cross_attention_dim[0]\n            self.position_net = PositionNet(positive_len=positive_len, out_dim=cross_attention_dim)\n\n\n    @property\n    def attn_processors(self) -> Dict[str, AttentionProcessor]:\n        r\"\"\"\n        Returns:\n            `dict` of attention processors: A dictionary containing all attention processors used in the model with\n            indexed by its weight name.\n        \"\"\"\n        # set recursively\n        processors = {}\n\n        def fn_recursive_add_processors(name: str, module: torch.nn.Module, processors: Dict[str, AttentionProcessor]):\n            if hasattr(module, \"set_processor\"):\n                processors[f\"{name}.processor\"] = module.processor\n\n            for sub_name, child in module.named_children():\n                fn_recursive_add_processors(f\"{name}.{sub_name}\", child, processors)\n\n            return processors\n\n        for name, module in self.named_children():\n            fn_recursive_add_processors(name, module, processors)\n\n        return processors\n\n    def set_attn_processor(self, processor: Union[AttentionProcessor, Dict[str, AttentionProcessor]]):\n        r\"\"\"\n        Sets the attention processor to use to compute attention.\n\n        Parameters:\n            processor (`dict` of `AttentionProcessor` or only `AttentionProcessor`):\n                The instantiated processor class or a dictionary of processor classes that will be set as the processor\n                for **all** `Attention` layers.\n\n                If `processor` is a dict, the key needs to define the path to the corresponding cross attention\n                processor. This is strongly recommended when setting trainable attention processors.\n\n        \"\"\"\n        count = len(self.attn_processors.keys())\n\n        if isinstance(processor, dict) and len(processor) != count:\n            raise ValueError(\n                f\"A dict of processors was passed, but the number of processors {len(processor)} does not match the\"\n                f\" number of attention layers: {count}. Please make sure to pass {count} processor classes.\"\n            )\n\n        def fn_recursive_attn_processor(name: str, module: torch.nn.Module, processor):\n            if hasattr(module, \"set_processor\"):\n                if not isinstance(processor, dict):\n                    module.set_processor(processor)\n                else:\n                    module.set_processor(processor.pop(f\"{name}.processor\"))\n\n            for sub_name, child in module.named_children():\n                fn_recursive_attn_processor(f\"{name}.{sub_name}\", child, processor)\n\n        for name, module in self.named_children():\n            fn_recursive_attn_processor(name, module, processor)\n\n    def set_default_attn_processor(self):\n        \"\"\"\n        Disables custom attention processors and sets the default attention implementation.\n        \"\"\"\n        self.set_attn_processor(AttnProcessor())\n\n    def set_attention_slice(self, slice_size):\n        r\"\"\"\n        Enable sliced attention computation.\n\n        When this option is enabled, the attention module splits the input tensor in slices to compute attention in\n        several steps. This is useful for saving some memory in exchange for a small decrease in speed.\n\n        Args:\n            slice_size (`str` or `int` or `list(int)`, *optional*, defaults to `\"auto\"`):\n                When `\"auto\"`, input to the attention heads is halved, so attention is computed in two steps. If\n                `\"max\"`, maximum amount of memory is saved by running only one slice at a time. If a number is\n                provided, uses as many slices as `attention_head_dim // slice_size`. In this case, `attention_head_dim`\n                must be a multiple of `slice_size`.\n        \"\"\"\n        sliceable_head_dims = []\n\n        def fn_recursive_retrieve_sliceable_dims(module: torch.nn.Module):\n            if hasattr(module, \"set_attention_slice\"):\n                sliceable_head_dims.append(module.sliceable_head_dim)\n\n            for child in module.children():\n                fn_recursive_retrieve_sliceable_dims(child)\n\n        # retrieve number of attention layers\n        for module in self.children():\n            fn_recursive_retrieve_sliceable_dims(module)\n\n        num_sliceable_layers = len(sliceable_head_dims)\n\n        if slice_size == \"auto\":\n            # half the attention head size is usually a good trade-off between\n            # speed and memory\n            slice_size = [dim // 2 for dim in sliceable_head_dims]\n        elif slice_size == \"max\":\n            # make smallest slice possible\n            slice_size = num_sliceable_layers * [1]\n\n        slice_size = num_sliceable_layers * [slice_size] if not isinstance(slice_size, list) else slice_size\n\n        if len(slice_size) != len(sliceable_head_dims):\n            raise ValueError(\n                f\"You have provided {len(slice_size)}, but {self.config} has {len(sliceable_head_dims)} different\"\n                f\" attention layers. Make sure to match `len(slice_size)` to be {len(sliceable_head_dims)}.\"\n            )\n\n        for i in range(len(slice_size)):\n            size = slice_size[i]\n            dim = sliceable_head_dims[i]\n            if size is not None and size > dim:\n                raise ValueError(f\"size {size} has to be smaller or equal to {dim}.\")\n\n        # Recursively walk through all the children.\n        # Any children which exposes the set_attention_slice method\n        # gets the message\n        def fn_recursive_set_attention_slice(module: torch.nn.Module, slice_size: List[int]):\n            if hasattr(module, \"set_attention_slice\"):\n                module.set_attention_slice(slice_size.pop())\n\n            for child in module.children():\n                fn_recursive_set_attention_slice(child, slice_size)\n\n        reversed_slice_size = list(reversed(slice_size))\n        for module in self.children():\n            fn_recursive_set_attention_slice(module, reversed_slice_size)\n\n    def _set_gradient_checkpointing(self, module, value=False):\n        if hasattr(module, \"gradient_checkpointing\"):\n            module.gradient_checkpointing = value\n\n    def forward(\n        self,\n        sample: torch.FloatTensor,\n        timestep: Union[torch.Tensor, float, int],\n        encoder_hidden_states: torch.Tensor,\n        class_labels: Optional[torch.Tensor] = None,\n        timestep_cond: Optional[torch.Tensor] = None,\n        attention_mask: Optional[torch.Tensor] = None,\n        cross_attention_kwargs: Optional[Dict[str, Any]] = None,\n        added_cond_kwargs: Optional[Dict[str, torch.Tensor]] = None,\n        down_block_additional_residuals: Optional[Tuple[torch.Tensor]] = None,\n        mid_block_additional_residual: Optional[torch.Tensor] = None,\n        up_block_additional_residual: Optional[torch.Tensor] = None,\n        encoder_attention_mask: Optional[torch.Tensor] = None,\n        return_dict: bool = True,\n        return_hidden_states: bool = False,\n        return_encoder_feature: bool = False,\n        return_early: bool = False,\n        down_bridge_residuals: Optional[Tuple[torch.Tensor]] = None,\n        fusion_guidance_scale: Optional[torch.FloatTensor] = None,\n        fusion_type: Optional[str] = 'ADD',\n        adapter: Optional = None\n    ) -> Union[UNet2DConditionOutput, Tuple]:\n        r\"\"\"\n        The [`UNet2DConditionModel`] forward method.\n\n        Args:\n            sample (`torch.FloatTensor`):\n                The noisy input tensor with the following shape `(batch, channel, height, width)`.\n            timestep (`torch.FloatTensor` or `float` or `int`): The number of timesteps to denoise an input.\n            encoder_hidden_states (`torch.FloatTensor`):\n                The encoder hidden states with shape `(batch, sequence_length, feature_dim)`.\n            encoder_attention_mask (`torch.Tensor`):\n                A cross-attention mask of shape `(batch, sequence_length)` is applied to `encoder_hidden_states`. If\n                `True` the mask is kept, otherwise if `False` it is discarded. Mask will be converted into a bias,\n                which adds large negative values to the attention scores corresponding to \"discard\" tokens.\n            return_dict (`bool`, *optional*, defaults to `True`):\n                Whether or not to return a [`~models.unet_2d_condition.UNet2DConditionOutput`] instead of a plain\n                tuple.\n            cross_attention_kwargs (`dict`, *optional*):\n                A kwargs dictionary that if specified is passed along to the [`AttnProcessor`].\n            added_cond_kwargs: (`dict`, *optional*):\n                A kwargs dictionary containin additional embeddings that if specified are added to the embeddings that\n                are passed along to the UNet blocks.\n\n        Returns:\n            [`~models.unet_2d_condition.UNet2DConditionOutput`] or `tuple`:\n                If `return_dict` is True, an [`~models.unet_2d_condition.UNet2DConditionOutput`] is returned, otherwise\n                a `tuple` is returned where the first element is the sample tensor.\n        \"\"\"\n        # By default samples have to be AT least a multiple of the overall upsampling factor.\n        # The overall upsampling factor is equal to 2 ** (# num of upsampling layers).\n        # However, the upsampling interpolation output size can be forced to fit any upsampling size\n        # on the fly if necessary.\n        ############## bridge usage ##################\n        if return_hidden_states:\n            hidden_states = []\n            return_dict = True\n        ############## end of bridge usage ##################\n\n\n\n        default_overall_up_factor = 2**self.num_upsamplers\n\n        # upsample size should be forwarded when sample is not a multiple of `default_overall_up_factor`\n        forward_upsample_size = False\n        upsample_size = None\n\n        if any(s % default_overall_up_factor != 0 for s in sample.shape[-2:]):\n            logger.info(\"Forward upsample size to force interpolation output size.\")\n            forward_upsample_size = True\n\n        # ensure attention_mask is a bias, and give it a singleton query_tokens dimension\n        # expects mask of shape:\n        #   [batch, key_tokens]\n        # adds singleton query_tokens dimension:\n        #   [batch,                    1, key_tokens]\n        # this helps to broadcast it as a bias over attention scores, which will be in one of the following shapes:\n        #   [batch,  heads, query_tokens, key_tokens] (e.g. torch sdp attn)\n        #   [batch * heads, query_tokens, key_tokens] (e.g. xformers or classic attn)\n        if attention_mask is not None:\n            # assume that mask is expressed as:\n            #   (1 = keep,      0 = discard)\n            # convert mask into a bias that can be added to attention scores:\n            #       (keep = +0,     discard = -10000.0)\n            attention_mask = (1 - attention_mask.to(sample.dtype)) * -10000.0\n            attention_mask = attention_mask.unsqueeze(1)\n\n        # convert encoder_attention_mask to a bias the same way we do for attention_mask\n        if encoder_attention_mask is not None:\n            encoder_attention_mask = (1 - encoder_attention_mask.to(sample.dtype)) * -10000.0\n            encoder_attention_mask = encoder_attention_mask.unsqueeze(1)\n\n        # 0. center input if necessary\n        if self.config.center_input_sample:\n            sample = 2 * sample - 1.0\n\n        # 1. time\n        timesteps = timestep\n        if not torch.is_tensor(timesteps):\n            is_mps = sample.device.type == \"mps\"\n            if isinstance(timestep, float):\n                dtype = torch.float32 if is_mps else torch.float64\n            else:\n                dtype = torch.int32 if is_mps else torch.int64\n            timesteps = torch.tensor([timesteps], dtype=dtype, device=sample.device)\n        elif len(timesteps.shape) == 0:\n            timesteps = timesteps[None].to(sample.device)\n\n        # broadcast to batch dimension in a way that's compatible with ONNX/Core ML\n        timesteps = timesteps.expand(sample.shape[0])\n\n        t_emb = self.time_proj(timesteps)  # 2, 320\n\n        # `Timesteps` does not contain any weights and will always return f32 tensors\n        # but time_embedding might actually be running in fp16. so we need to cast here.\n        # there might be better ways to encapsulate this.\n        t_emb = t_emb.to(dtype=sample.dtype)\n\n        emb = self.time_embedding(t_emb, timestep_cond)\n\n        aug_emb = None\n\n        if self.class_embedding is not None:\n            if class_labels is None:\n                raise ValueError(\"class_labels should be provided when num_class_embeds > 0\")\n\n            if self.config.class_embed_type == \"timestep\":\n                class_labels = self.time_proj(class_labels)\n\n                # `Timesteps` does not contain any weights and will always return f32 tensors\n                # there might be better ways to encapsulate this.\n                class_labels = class_labels.to(dtype=sample.dtype)\n\n            class_emb = self.class_embedding(class_labels).to(dtype=sample.dtype)\n\n            if self.config.class_embeddings_concat:\n                emb = torch.cat([emb, class_emb], dim=-1)\n            else:\n                emb = emb + class_emb\n\n        if self.config.addition_embed_type == \"text\":\n            aug_emb = self.add_embedding(encoder_hidden_states)\n        elif self.config.addition_embed_type == \"text_image\":\n            # Kandinsky 2.1 - style\n            if \"image_embeds\" not in added_cond_kwargs:\n                raise ValueError(\n                    f\"{self.__class__} has the config param `addition_embed_type` set to 'text_image' which requires the keyword argument `image_embeds` to be passed in `added_cond_kwargs`\"\n                )\n\n            image_embs = added_cond_kwargs.get(\"image_embeds\")\n            text_embs = added_cond_kwargs.get(\"text_embeds\", encoder_hidden_states)\n            aug_emb = self.add_embedding(text_embs, image_embs)\n        elif self.config.addition_embed_type == \"text_time\":\n            # SDXL - style\n            if \"text_embeds\" not in added_cond_kwargs:\n                raise ValueError(\n                    f\"{self.__class__} has the config param `addition_embed_type` set to 'text_time' which requires the keyword argument `text_embeds` to be passed in `added_cond_kwargs`\"\n                )\n            text_embeds = added_cond_kwargs.get(\"text_embeds\")\n            if \"time_ids\" not in added_cond_kwargs:\n                raise ValueError(\n                    f\"{self.__class__} has the config param `addition_embed_type` set to 'text_time' which requires the keyword argument `time_ids` to be passed in `added_cond_kwargs`\"\n                )\n            time_ids = added_cond_kwargs.get(\"time_ids\")\n            time_embeds = self.add_time_proj(time_ids.flatten())\n            time_embeds = time_embeds.reshape((text_embeds.shape[0], -1))\n\n            add_embeds = torch.concat([text_embeds, time_embeds], dim=-1)\n            add_embeds = add_embeds.to(emb.dtype)\n            aug_emb = self.add_embedding(add_embeds)\n        elif self.config.addition_embed_type == \"image\":\n            # Kandinsky 2.2 - style\n            if \"image_embeds\" not in added_cond_kwargs:\n                raise ValueError(\n                    f\"{self.__class__} has the config param `addition_embed_type` set to 'image' which requires the keyword argument `image_embeds` to be passed in `added_cond_kwargs`\"\n                )\n            image_embs = added_cond_kwargs.get(\"image_embeds\")\n            aug_emb = self.add_embedding(image_embs)\n        elif self.config.addition_embed_type == \"image_hint\":\n            # Kandinsky 2.2 - style\n            if \"image_embeds\" not in added_cond_kwargs or \"hint\" not in added_cond_kwargs:\n                raise ValueError(\n                    f\"{self.__class__} has the config param `addition_embed_type` set to 'image_hint' which requires the keyword arguments `image_embeds` and `hint` to be passed in `added_cond_kwargs`\"\n                )\n            image_embs = added_cond_kwargs.get(\"image_embeds\")\n            hint = added_cond_kwargs.get(\"hint\")\n            aug_emb, hint = self.add_embedding(image_embs, hint)\n            sample = torch.cat([sample, hint], dim=1)\n\n        emb = emb + aug_emb if aug_emb is not None else emb\n\n        if self.time_embed_act is not None:\n            emb = self.time_embed_act(emb)\n\n        if self.encoder_hid_proj is not None and self.config.encoder_hid_dim_type == \"text_proj\":\n            encoder_hidden_states = self.encoder_hid_proj(encoder_hidden_states)\n        elif self.encoder_hid_proj is not None and self.config.encoder_hid_dim_type == \"text_image_proj\":\n            # Kadinsky 2.1 - style\n            if \"image_embeds\" not in added_cond_kwargs:\n                raise ValueError(\n                    f\"{self.__class__} has the config param `encoder_hid_dim_type` set to 'text_image_proj' which requires the keyword argument `image_embeds` to be passed in  `added_conditions`\"\n                )\n\n            image_embeds = added_cond_kwargs.get(\"image_embeds\")\n            encoder_hidden_states = self.encoder_hid_proj(encoder_hidden_states, image_embeds)\n        elif self.encoder_hid_proj is not None and self.config.encoder_hid_dim_type == \"image_proj\":\n            # Kandinsky 2.2 - style\n            if \"image_embeds\" not in added_cond_kwargs:\n                raise ValueError(\n                    f\"{self.__class__} has the config param `encoder_hid_dim_type` set to 'image_proj' which requires the keyword argument `image_embeds` to be passed in  `added_conditions`\"\n                )\n            image_embeds = added_cond_kwargs.get(\"image_embeds\")\n            encoder_hidden_states = self.encoder_hid_proj(image_embeds)\n        # 2. pre-process\n        sample = self.conv_in(sample)\n\n        # 2.5 GLIGEN position net\n        if cross_attention_kwargs is not None and cross_attention_kwargs.get(\"gligen\", None) is not None:\n            cross_attention_kwargs = cross_attention_kwargs.copy()\n            gligen_args = cross_attention_kwargs.pop(\"gligen\")\n            cross_attention_kwargs[\"gligen\"] = {\"objs\": self.position_net(**gligen_args)}\n\n        # 3. down\n\n        if return_encoder_feature:\n            encoder_feature = []\n\n        is_controlnet = mid_block_additional_residual is not None and down_block_additional_residuals is not None\n        is_adapter = mid_block_additional_residual is None and down_block_additional_residuals is not None\n        is_bridge_encoder = down_bridge_residuals is not None\n        is_bridge = up_block_additional_residual is not None\n\n        down_block_res_samples = (sample,)\n\n\n\n        for downsample_block in self.down_blocks:\n            if hasattr(downsample_block, \"has_cross_attention\") and downsample_block.has_cross_attention:\n                # For t2i-adapter CrossAttnDownBlock2D\n                additional_residuals = {}\n                if is_adapter and len(down_block_additional_residuals) > 0:\n                    additional_residuals[\"additional_residuals\"] = down_block_additional_residuals.pop(0)\n\n                sample, res_samples = downsample_block(\n                    hidden_states=sample,\n                    temb=emb,\n                    encoder_hidden_states=encoder_hidden_states,\n                    attention_mask=attention_mask,\n                    cross_attention_kwargs=cross_attention_kwargs,\n                    encoder_attention_mask=encoder_attention_mask,\n                    **additional_residuals,\n                )\n\n                if is_bridge_encoder and len(down_bridge_residuals) > 0:\n                    sample += down_bridge_residuals.pop(0)\n\n                if return_encoder_feature:\n                    encoder_feature.append(sample)\n            else:\n                sample, res_samples = downsample_block(hidden_states=sample, temb=emb)\n\n                if is_adapter and len(down_block_additional_residuals) > 0:\n                    sample += down_block_additional_residuals.pop(0)\n\n                if is_bridge_encoder and len(down_bridge_residuals) > 0:\n                    sample += down_bridge_residuals.pop(0)\n\n            down_block_res_samples += res_samples\n\n\n        if is_controlnet:\n            new_down_block_res_samples = ()\n\n            for down_block_res_sample, down_block_additional_residual in zip(\n                down_block_res_samples, down_block_additional_residuals\n            ):\n                down_block_res_sample = down_block_res_sample + down_block_additional_residual\n                new_down_block_res_samples = new_down_block_res_samples + (down_block_res_sample,)\n\n            down_block_res_samples = new_down_block_res_samples\n\n        if return_encoder_feature and return_early:\n            return encoder_feature\n\n        # 4. mid\n        if self.mid_block is not None:\n            sample = self.mid_block(\n                sample,\n                emb,\n                encoder_hidden_states=encoder_hidden_states,\n                attention_mask=attention_mask,\n                cross_attention_kwargs=cross_attention_kwargs,\n                encoder_attention_mask=encoder_attention_mask,\n            )\n\n        if is_controlnet:\n            sample = sample + mid_block_additional_residual\n\n        ################# bridge usage #################\n\n        if is_bridge:\n            if up_block_additional_residual[0].shape != sample.shape:\n                pass\n            elif fusion_guidance_scale is not None:\n                sample = sample + fusion_guidance_scale * (up_block_additional_residual.pop(0) - sample)\n            else:\n                sample += up_block_additional_residual.pop(0)\n        ################# end of bridge usage #################\n        # 5. up\n\n        for i, upsample_block in enumerate(self.up_blocks):\n            is_final_block = i == len(self.up_blocks) - 1\n\n            res_samples = down_block_res_samples[-len(upsample_block.resnets) :]\n            down_block_res_samples = down_block_res_samples[: -len(upsample_block.resnets)]\n\n            # if we have not reached the final block and need to forward the\n            # upsample size, we do it here\n            if not is_final_block and forward_upsample_size:\n                upsample_size = down_block_res_samples[-1].shape[2:]\n\n            if hasattr(upsample_block, \"has_cross_attention\") and upsample_block.has_cross_attention:\n                sample = upsample_block(\n                    hidden_states=sample,\n                    temb=emb,\n                    res_hidden_states_tuple=res_samples,\n                    encoder_hidden_states=encoder_hidden_states,\n                    cross_attention_kwargs=cross_attention_kwargs,\n                    upsample_size=upsample_size,\n                    attention_mask=attention_mask,\n                    encoder_attention_mask=encoder_attention_mask,\n                )\n            else:\n                sample = upsample_block(\n                    hidden_states=sample, temb=emb, res_hidden_states_tuple=res_samples, upsample_size=upsample_size\n                )\n\n\n            ################# bridge usage #################\n            if is_bridge and len(up_block_additional_residual) > 0:\n                if sample.shape != up_block_additional_residual[0].shape:\n                    pass\n                elif fusion_guidance_scale is not None:\n                    sample = sample + fusion_guidance_scale * (up_block_additional_residual.pop(0) - sample)\n                else:\n                    sample += up_block_additional_residual.pop(0)\n\n            if return_hidden_states and i > 0:\n                # Collect last three up blk in SD1.5\n                hidden_states.append(sample)\n            ################# end of bridge usage #################\n\n        # 6. post-process\n        if self.conv_norm_out:\n            sample = self.conv_norm_out(sample)\n            sample = self.conv_act(sample)\n        sample = self.conv_out(sample)\n\n        if not return_dict:\n            return (sample,)\n\n        return UNet2DConditionOutput(sample=sample, hidden_states=hidden_states if return_hidden_states else None,\n                                     encoder_feature=encoder_feature if return_encoder_feature else None)\n"
  },
  {
    "path": "scripts/xadapter/utils.py",
    "content": "import os\nimport imageio\nimport numpy as np\nfrom typing import Union\n\nimport torch\nimport torchvision\nimport torch.distributed as dist\n\nfrom safetensors import safe_open\nfrom tqdm import tqdm\nfrom einops import rearrange\nfrom model.convert_from_ckpt import convert_ldm_unet_checkpoint, convert_ldm_clip_checkpoint, convert_ldm_vae_checkpoint\n# from animatediff.utils.convert_lora_safetensor_to_diffusers import convert_lora, convert_motion_lora_ckpt_to_diffusers\n"
  },
  {
    "path": "scripts/xadapter/xadapter_hijacks.py",
    "content": "import torch\nfrom torch import nn\n\n\nclass FourierEmbedder(nn.Module):\n    def __init__(self, num_freqs=64, temperature=100):\n        super().__init__()\n\n        self.num_freqs = num_freqs\n        self.temperature = temperature\n\n        freq_bands = temperature ** (torch.arange(num_freqs) / num_freqs)\n        freq_bands = freq_bands[None, None, None]\n        self.register_buffer(\"freq_bands\", freq_bands, persistent=False)\n\n    def __call__(self, x):\n        x = self.freq_bands * x.unsqueeze(-1)\n        return torch.stack((x.sin(), x.cos()), dim=-1).permute(0, 1, 3, 4, 2).reshape(*x.shape[:2], -1)\n\n\nclass PositionNet(nn.Module):\n    def __init__(self, positive_len, out_dim, fourier_freqs=8):\n        super().__init__()\n        self.positive_len = positive_len\n        self.out_dim = out_dim\n\n        self.fourier_embedder = FourierEmbedder(num_freqs=fourier_freqs)\n        self.position_dim = fourier_freqs * 2 * 4  # 2: sin/cos, 4: xyxy\n\n        if isinstance(out_dim, tuple):\n            out_dim = out_dim[0]\n        self.linears = nn.Sequential(\n            nn.Linear(self.positive_len + self.position_dim, 512),\n            nn.SiLU(),\n            nn.Linear(512, 512),\n            nn.SiLU(),\n            nn.Linear(512, out_dim),\n        )\n\n        self.null_positive_feature = torch.nn.Parameter(torch.zeros([self.positive_len]))\n        self.null_position_feature = torch.nn.Parameter(torch.zeros([self.position_dim]))\n\n    def forward(self, boxes, masks, positive_embeddings):\n        masks = masks.unsqueeze(-1)\n\n        # embedding position (it may includes padding as placeholder)\n        xyxy_embedding = self.fourier_embedder(boxes)  # B*N*4 -> B*N*C\n\n        # learnable null embedding\n        positive_null = self.null_positive_feature.view(1, 1, -1)\n        xyxy_null = self.null_position_feature.view(1, 1, -1)\n\n        # replace padding with learnable null embedding\n        positive_embeddings = positive_embeddings * masks + (1 - masks) * positive_null\n        xyxy_embedding = xyxy_embedding * masks + (1 - masks) * xyxy_null\n\n        objs = self.linears(torch.cat([positive_embeddings, xyxy_embedding], dim=-1))\n        return objs\n"
  },
  {
    "path": "scripts/xadapter_ext.py",
    "content": "# https://github.com/showlab/X-Adapter\n\nimport torch\nimport diffusers\nimport gradio as gr\nimport huggingface_hub as hf\nfrom modules import errors, shared, devices, scripts_manager, processing, sd_models, sd_samplers\n\n\nadapter = None\n\n\nclass Script(scripts_manager.Script):\n    def title(self):\n        return 'X-Adapter'\n\n    def show(self, is_img2img):\n        return False\n\n    def ui(self, _is_img2img):\n        with gr.Row():\n            gr.HTML('<a href=\"https://github.com/showlab/X-Adapter\">&nbsp X-Adapter</a><br>')\n        with gr.Row():\n            model = gr.Dropdown(label='Adapter model', choices=['None'] + sd_models.checkpoint_titles(), value='None')\n            sampler = gr.Dropdown(label='Adapter sampler', choices=[s.name for s in sd_samplers.samplers], value='Default')\n        with gr.Row():\n            width = gr.Slider(label='Adapter width', minimum=64, maximum=2048, step=8, value=1024)\n            height = gr.Slider(label='Adapter height', minimum=64, maximum=2048, step=8, value=1024)\n        with gr.Row():\n            start = gr.Slider(label='Adapter start', minimum=0.0, maximum=1.0, step=0.01, value=0.5)\n            scale = gr.Slider(label='Adapter scale', minimum=0.0, maximum=1.0, step=0.01, value=1.0)\n        with gr.Row():\n            lora = gr.Textbox('', label='Adapter LoRA', default='')\n        return model, sampler, width, height, start, scale, lora\n\n    def run(self, p: processing.StableDiffusionProcessing, model, sampler, width, height, start, scale, lora): # pylint: disable=arguments-differ, unused-argument\n        from scripts.xadapter.xadapter_hijacks import PositionNet # pylint: disable=no-name-in-module\n        diffusers.models.embeddings.PositionNet = PositionNet # patch diffusers==0.26 from diffusers==0.20\n        from scripts.xadapter.adapter import Adapter_XL # pylint: disable=no-name-in-module\n        from scripts.xadapter.pipeline_sd_xl_adapter import StableDiffusionXLAdapterPipeline # pylint: disable=no-name-in-module\n        from scripts.xadapter.unet_adapter import UNet2DConditionModel as UNet2DConditionModelAdapter # pylint: disable=no-name-in-module\n\n        global adapter # pylint: disable=global-statement\n        if model == 'None':\n            return\n        else:\n            shared.opts.sd_model_refiner = model\n        if shared.sd_model_type != 'sdxl':\n            shared.log.error(f'X-Adapter: incorrect base model: {shared.sd_model.__class__.__name__}')\n            return\n\n        if adapter is None:\n            shared.log.debug('X-Adapter: adapter loading')\n            adapter = Adapter_XL()\n            adapter_path = hf.hf_hub_download(repo_id='Lingmin-Ran/X-Adapter', filename='X_Adapter_v1.bin')\n            adapter_dict = torch.load(adapter_path)\n            adapter.load_state_dict(adapter_dict)\n            try:\n                if adapter is not None:\n                    sd_models.move_model(adapter, devices.device)\n            except Exception:\n                pass\n        if adapter is None:\n            shared.log.error('X-Adapter: adapter loading failed')\n            return\n\n        sd_models.unload_model_weights(op='model')\n        sd_models.unload_model_weights(op='refiner')\n        orig_unetcondmodel = diffusers.models.unets.unet_2d_condition.UNet2DConditionModel\n        diffusers.models.UNet2DConditionModel = UNet2DConditionModelAdapter # patch diffusers with x-adapter\n        diffusers.models.unets.unet_2d_condition.UNet2DConditionModel = UNet2DConditionModelAdapter # patch diffusers with x-adapter\n        sd_models.reload_model_weights(op='model')\n        sd_models.reload_model_weights(op='refiner')\n        diffusers.models.unets.unet_2d_condition.UNet2DConditionModel = orig_unetcondmodel # unpatch diffusers\n        diffusers.models.UNet2DConditionModel = orig_unetcondmodel # unpatch diffusers\n\n        if shared.sd_refiner_type != 'sd':\n            shared.log.error(f'X-Adapter: incorrect adapter model: {shared.sd_model.__class__.__name__}')\n            return\n\n        # backup pipeline and params\n        orig_pipeline = shared.sd_model\n        orig_prompt_attention = shared.opts.prompt_attention\n        pipe = None\n\n        try:\n            shared.log.debug('X-Adapter: creating pipeline')\n            pipe = StableDiffusionXLAdapterPipeline(\n                vae=shared.sd_model.vae,\n                text_encoder=shared.sd_model.text_encoder,\n                text_encoder_2=shared.sd_model.text_encoder_2,\n                tokenizer=shared.sd_model.tokenizer,\n                tokenizer_2=shared.sd_model.tokenizer_2,\n                unet=shared.sd_model.unet,\n                scheduler=shared.sd_model.scheduler,\n                vae_sd1_5=shared.sd_refiner.vae,\n                text_encoder_sd1_5=shared.sd_refiner.text_encoder,\n                tokenizer_sd1_5=shared.sd_refiner.tokenizer,\n                unet_sd1_5=shared.sd_refiner.unet,\n                scheduler_sd1_5=shared.sd_refiner.scheduler,\n                adapter=adapter,\n            )\n            sd_models.copy_diffuser_options(pipe, shared.sd_model)\n            sd_models.set_diffuser_options(pipe)\n            try:\n                pipe.to(device=devices.device, dtype=devices.dtype)\n            except Exception:\n                pass\n            shared.opts.data['prompt_attention'] = 'fixed'\n            prompt = shared.prompt_styles.apply_styles_to_prompt(p.prompt, p.styles)\n            negative = shared.prompt_styles.apply_negative_styles_to_prompt(p.negative_prompt, p.styles)\n            shared.prompt_styles.apply_styles_to_extra(p)\n            p.styles = []\n            p.task_args['prompt'] = prompt\n            p.task_args['negative_prompt'] = negative\n            p.task_args['prompt_sd1_5'] = prompt\n            p.task_args['width_sd1_5'] = width\n            p.task_args['height_sd1_5'] = height\n            p.task_args['adapter_guidance_start'] = start\n            p.task_args['adapter_condition_scale'] = scale\n            p.task_args['fusion_guidance_scale'] = 1.0 # ???\n            if sampler != 'Default':\n                pipe.scheduler_sd1_5 = sd_samplers.create_sampler(sampler, shared.sd_refiner)\n            else:\n                pipe.scheduler = diffusers.DPMSolverMultistepScheduler.from_config(pipe.scheduler.config)\n                pipe.scheduler_sd1_5 = diffusers.DPMSolverMultistepScheduler.from_config(pipe.scheduler_sd1_5.config)\n                pipe.scheduler_sd1_5.config.timestep_spacing = \"leading\"\n            shared.log.debug(f'X-Adapter: pipeline={pipe.__class__.__name__} args={p.task_args}')\n            shared.sd_model = pipe\n        except Exception as e:\n            shared.log.error(f'X-Adapter: pipeline creation failed: {e}')\n            errors.display(e, 'X-Adapter: pipeline creation failed')\n            shared.sd_model = orig_pipeline\n\n        # run pipeline\n        processed: processing.Processed = processing.process_images(p) # runs processing using main loop\n\n        # restore pipeline and params\n        try:\n            if adapter is not None:\n                adapter.to(devices.cpu)\n        except Exception:\n            pass\n        pipe = None\n        shared.opts.data['prompt_attention'] = orig_prompt_attention\n        shared.sd_model = orig_pipeline\n        devices.torch_gc()\n        return processed\n"
  },
  {
    "path": "scripts/xyz/xyz_grid_classes.py",
    "content": "from scripts.xyz.xyz_grid_shared import ( # pylint: disable=no-name-in-module, unused-import\n    apply_field,\n    apply_task_arg,\n    apply_task_args,\n    apply_setting,\n    apply_prompt_primary,\n    apply_prompt_refine,\n    apply_prompt_detailer,\n    apply_prompt_all,\n    apply_order,\n    apply_sampler,\n    apply_hr_sampler_name,\n    confirm_samplers,\n    apply_checkpoint,\n    apply_refiner,\n    apply_unet,\n    apply_clip_skip,\n    apply_vae,\n    list_lora,\n    apply_lora,\n    apply_lora_strength,\n    apply_te,\n    apply_guidance,\n    apply_styles,\n    apply_upscaler,\n    apply_context,\n    apply_detailer,\n    apply_override,\n    apply_processing,\n    apply_options,\n    apply_seed,\n    apply_sdnq_quant,\n    apply_sdnq_quant_te,\n    apply_control,\n    format_value_add_label,\n    format_bool,\n    format_value,\n    format_value_join_list,\n    do_nothing,\n    format_nothing,\n    str_permutations,\n )\nfrom modules import shared, shared_items, sd_samplers, ipadapter, sd_models, sd_vae, sd_unet\nfrom modules.control.units import controlnet, t2iadapter\nfrom modules.control import processor\n\n\nclass AxisOption:\n    def __init__(self, label, tipe, apply, fmt=format_value_add_label, confirm=None, cost=0.0, choices=None):\n        self.label = label\n        self.type = tipe\n        self.apply = apply\n        self.format_value = fmt\n        self.confirm = confirm\n        self.cost = cost\n        self.choices = choices\n\n    def __repr__(self):\n        return f'AxisOption(label=\"{self.label}\" type={self.type.__name__} cost={self.cost} choices={self.choices is not None})'\n\n\nclass AxisOptionImg2Img(AxisOption):\n    def __init__(self, *args, **kwargs):\n        super().__init__(*args, **kwargs)\n        self.is_img2img = True\n\n\nclass AxisOptionTxt2Img(AxisOption):\n    def __init__(self, *args, **kwargs):\n        super().__init__(*args, **kwargs)\n        self.is_img2img = False\n\n\nclass SharedSettingsStackHelper():\n    sd_model_checkpoint = None\n    sd_model_refiner = None\n    sd_vae = None\n    sd_unet = None\n    sd_text_encoder = None\n    prompt_attention = None\n    freeu_b1 = None\n    freeu_b2 = None\n    freeu_s1 = None\n    freeu_s2 = None\n    cfgzero_enabled = None\n    schedulers_sigma_adjust = None\n    schedulers_beta_schedule = None\n    schedulers_beta_start = None\n    schedulers_beta_end = None\n    schedulers_shift = None\n    schedulers_sigma = None\n    schedulers_base_shift = None\n    schedulers_max_shift = None\n    schedulers_timestep_spacing = None\n    schedulers_timesteps_range = None\n    schedulers_beta_schedule = None\n    schedulers_beta_start = None\n    schedulers_beta_end = None\n    schedulers_shift = None\n    scheduler_eta = None\n    schedulers_solver_order = None\n    eta_noise_seed_delta = None\n    tome_ratio = None\n    todo_ratio = None\n    teacache_thresh = None\n    extra_networks_default_multiplier = None\n    disable_apply_metadata = None\n    disable_apply_params = None\n    sdnq_quant_mode = None\n\n    def __enter__(self):\n        # Save overridden settings so they can be restored later\n        self.prompt_attention = shared.opts.prompt_attention\n        self.schedulers_sigma_adjust = shared.opts.schedulers_sigma_adjust\n        self.schedulers_timestep_spacing = shared.opts.schedulers_timestep_spacing\n        self.schedulers_timesteps_range = shared.opts.schedulers_timesteps_range\n        self.schedulers_solver_order = shared.opts.schedulers_solver_order\n        self.schedulers_beta_schedule = shared.opts.schedulers_beta_schedule\n        self.schedulers_beta_start = shared.opts.schedulers_beta_start\n        self.schedulers_beta_end = shared.opts.schedulers_beta_end\n        self.schedulers_shift = shared.opts.schedulers_shift\n        self.scheduler_eta = shared.opts.scheduler_eta\n        self.schedulers_base_shift = shared.opts.schedulers_base_shift\n        self.schedulers_max_shift = shared.opts.schedulers_max_shift\n        self.eta_noise_seed_delta = shared.opts.eta_noise_seed_delta\n        self.tome_ratio = shared.opts.tome_ratio\n        self.todo_ratio = shared.opts.todo_ratio\n        self.freeu_b1 = shared.opts.freeu_b1\n        self.freeu_b2 = shared.opts.freeu_b2\n        self.freeu_s1 = shared.opts.freeu_s1\n        self.freeu_s2 = shared.opts.freeu_s2\n        self.cfgzero_enabled = shared.opts.cfgzero_enabled\n        self.sd_model_checkpoint = shared.opts.sd_model_checkpoint\n        self.sd_model_refiner = shared.opts.sd_model_refiner\n        self.sd_vae = shared.opts.sd_vae\n        self.sd_unet = shared.opts.sd_unet\n        self.sd_text_encoder = shared.opts.sd_text_encoder\n        self.extra_networks_default_multiplier = shared.opts.extra_networks_default_multiplier\n        self.teacache_thresh = shared.opts.teacache_thresh\n        self.disable_apply_metadata = shared.opts.disable_apply_metadata\n        self.disable_apply_params = shared.opts.disable_apply_params\n        self.sdnq_quant_mode = shared.opts.sdnq_quantize_weights_mode\n        shared.opts.data[\"disable_apply_metadata\"] = []\n        shared.opts.data[\"disable_apply_params\"] = ''\n\n    def __exit__(self, exc_type, exc_value, tb):\n        # Restore overriden settings after plot generation\n        shared.opts.data[\"disable_apply_metadata\"] = self.disable_apply_metadata\n        shared.opts.data[\"disable_apply_params\"] = self.disable_apply_params\n        shared.opts.data[\"extra_networks_default_multiplier\"] = self.extra_networks_default_multiplier\n        shared.opts.data[\"prompt_attention\"] = self.prompt_attention\n        shared.opts.data[\"schedulers_solver_order\"] = self.schedulers_solver_order\n        shared.opts.data[\"schedulers_sigma_adjust\"] = self.schedulers_sigma_adjust\n        shared.opts.data[\"schedulers_timestep_spacing\"] = self.schedulers_timestep_spacing\n        shared.opts.data[\"schedulers_timesteps_range\"] = self.schedulers_timesteps_range\n        shared.opts.data[\"schedulers_beta_schedule\"] = self.schedulers_beta_schedule\n        shared.opts.data[\"schedulers_beta_start\"] = self.schedulers_beta_start\n        shared.opts.data[\"schedulers_beta_end\"] = self.schedulers_beta_end\n        shared.opts.data[\"schedulers_shift\"] = self.schedulers_shift\n        shared.opts.data[\"schedulers_base_shift\"] = self.schedulers_base_shift\n        shared.opts.data[\"schedulers_max_shift\"] = self.schedulers_max_shift\n        shared.opts.data[\"scheduler_eta\"] = self.scheduler_eta\n        shared.opts.data[\"eta_noise_seed_delta\"] = self.eta_noise_seed_delta\n        shared.opts.data[\"cfgzero_enabled\"] = self.cfgzero_enabled\n        shared.opts.data[\"freeu_b1\"] = self.freeu_b1\n        shared.opts.data[\"freeu_b2\"] = self.freeu_b2\n        shared.opts.data[\"freeu_s1\"] = self.freeu_s1\n        shared.opts.data[\"freeu_s2\"] = self.freeu_s2\n        shared.opts.data[\"tome_ratio\"] = self.tome_ratio\n        shared.opts.data[\"todo_ratio\"] = self.todo_ratio\n        shared.opts.data[\"teacache_thresh\"] = self.teacache_thresh\n\n        if self.sd_model_checkpoint != shared.opts.sd_model_checkpoint:\n            shared.opts.data[\"sd_model_checkpoint\"] = self.sd_model_checkpoint\n            sd_models.reload_model_weights(op='model')\n        if self.sd_model_refiner != shared.opts.sd_model_refiner:\n            shared.opts.data[\"sd_model_refiner\"] = self.sd_model_refiner\n            sd_models.reload_model_weights(op='refiner')\n        if self.sd_vae != shared.opts.sd_vae:\n            shared.opts.data[\"sd_vae\"] = self.sd_vae\n            sd_vae.reload_vae_weights()\n        if self.sd_text_encoder != shared.opts.sd_text_encoder:\n            shared.opts.data[\"sd_text_encoder\"] = self.sd_text_encoder\n            sd_models.reload_text_encoder()\n        if self.sd_unet != shared.opts.sd_unet:\n            shared.opts.data[\"sd_unet\"] = self.sd_unet\n            sd_unet.load_unet(shared.sd_model)\n        if self.sdnq_quant_mode != shared.opts.sdnq_quantize_weights_mode:\n            shared.opts.data[\"sdnq_quantize_weights_mode\"] = self.sdnq_quant_mode\n            sd_models.reload_model_weights(op='model')\n\n\naxis_options = [\n    AxisOption(\"Nothing\", str, do_nothing, fmt=format_nothing),\n    AxisOption(\"[Model] Model\", str, apply_checkpoint, cost=1.0, fmt=format_value_add_label, choices=lambda: sorted(sd_models.checkpoints_list)),\n    AxisOption(\"[Model] UNET\", str, apply_unet, cost=0.8, choices=lambda: ['None'] + list(sd_unet.unet_dict)),\n    AxisOption(\"[Model] VAE\", str, apply_vae, cost=0.6, choices=lambda: ['None'] + list(sd_vae.vae_dict)),\n    AxisOption(\"[Model] Refiner\", str, apply_refiner, cost=0.8, fmt=format_value_add_label, choices=lambda: ['None'] + sorted(sd_models.checkpoints_list)),\n    AxisOption(\"[Model] Text encoder\", str, apply_te, cost=0.7, choices=shared_items.sd_te_items),\n    AxisOption(\"[Prompt] Search & replace\", str, apply_prompt_primary, fmt=format_value_add_label),\n    AxisOption(\"[Prompt] Search & replace refine\", str, apply_prompt_refine, fmt=format_value_add_label),\n    AxisOption(\"[Prompt] Search & replace detailer\", str, apply_prompt_detailer, fmt=format_value_add_label),\n    AxisOption(\"[Prompt] Search & replace all\", str, apply_prompt_all, fmt=format_value_add_label),\n    AxisOption(\"[Prompt] Prompt order\", str_permutations, apply_order, fmt=format_value_join_list),\n    AxisOption(\"[Prompt] Prompt parser\", str, apply_setting(\"prompt_attention\"), choices=lambda: [\"native\", \"compel\", \"xhinker\", \"a1111\", \"fixed\"]),\n    AxisOption(\"[Network] LoRA\", str, apply_lora, cost=0.5, choices=list_lora),\n    AxisOption(\"[Network] LoRA strength\", float, apply_lora_strength, cost=0.6),\n    AxisOption(\"[Network] Styles\", str, apply_styles, choices=lambda: [s.name for s in shared.prompt_styles.styles.values()]),\n    AxisOption(\"[Param] Width\", int, apply_field(\"width\")),\n    AxisOption(\"[Param] Height\", int, apply_field(\"height\")),\n    AxisOption(\"[Param] Seed\", int, apply_seed),\n    AxisOption(\"[Param] Steps\", int, apply_field(\"steps\")),\n    AxisOption(\"[Param] Variation seed\", int, apply_field(\"subseed\")),\n    AxisOption(\"[Param] Variation strength\", float, apply_field(\"subseed_strength\")),\n    AxisOption(\"[Param] Clip skip\", float, apply_clip_skip),\n    AxisOption(\"[Param] Denoising strength\", float, apply_field(\"denoising_strength\")),\n    AxisOptionImg2Img(\"[Param] Mask weight\", float, apply_field(\"inpainting_mask_weight\")),\n    AxisOption(\"[Process] Model args\", str, apply_task_args),\n    AxisOption(\"[Process] Processing args\", str, apply_processing),\n    AxisOption(\"[Process] Server options\", str, apply_options),\n    AxisOptionTxt2Img(\"[Sampler] Name\", str, apply_sampler, fmt=format_value_add_label, confirm=confirm_samplers, choices=lambda: [x.name for x in sd_samplers.samplers]),\n    AxisOptionImg2Img(\"[Sampler] Name\", str, apply_sampler, fmt=format_value_add_label, confirm=confirm_samplers, choices=lambda: [x.name for x in sd_samplers.samplers_for_img2img]),\n    AxisOption(\"[Sampler] Sigma method\", str, apply_setting(\"schedulers_sigma\"), choices=lambda: ['default', 'karras', 'betas', 'exponential', 'lambdas']),\n    AxisOption(\"[Sampler] Sigma adjust\", float, apply_setting(\"schedulers_sigma_adjust\")),\n    AxisOption(\"[Sampler] Timestep spacing\", str, apply_setting(\"schedulers_timestep_spacing\"), choices=lambda: ['default', 'linspace', 'leading', 'trailing']),\n    AxisOption(\"[Sampler] Timestep range\", int, apply_setting(\"schedulers_timesteps_range\")),\n    AxisOption(\"[Sampler] Solver order\", int, apply_setting(\"schedulers_solver_order\")),\n    AxisOption(\"[Sampler] Beta schedule\", str, apply_setting(\"schedulers_beta_schedule\"), choices=lambda: ['default', 'linear', 'scaled', 'cosine', 'sigmoid', 'laplace']),\n    AxisOption(\"[Sampler] Beta start\", float, apply_setting(\"schedulers_beta_start\")),\n    AxisOption(\"[Sampler] Beta end\", float, apply_setting(\"schedulers_beta_end\")),\n    AxisOption(\"[Sampler] Flow shift\", float, apply_setting(\"schedulers_shift\")),\n    AxisOption(\"[Sampler] Base shift\", float, apply_setting(\"schedulers_base_shift\")),\n    AxisOption(\"[Sampler] Max shift\", float, apply_setting(\"schedulers_max_shift\")),\n    AxisOption(\"[Sampler] ETA delta\", float, apply_setting(\"eta_noise_seed_delta\")),\n    AxisOption(\"[Sampler] ETA multiplier\", float, apply_setting(\"scheduler_eta\")),\n    AxisOption(\"[Guidance] Scale\", float, apply_field(\"cfg_scale\")),\n    AxisOption(\"[Guidance] End\", float, apply_field(\"cfg_end\")),\n    AxisOption(\"[Guidance] Image scale\", float, apply_field(\"image_cfg_scale\")),\n    AxisOption(\"[Guidance] Rescale\", float, apply_field(\"diffusers_guidance_rescale\")),\n    AxisOption(\"[Guidance] Modular name\", str, apply_guidance, choices=lambda: ['Default', 'CFG', 'Auto', 'Zero', 'PAG', 'APG', 'SLG', 'SEG', 'TCFG', 'FDG']),\n    AxisOption(\"[Refine] Upscaler\", str, apply_field(\"hr_upscaler\"), cost=0.3, choices=lambda: [x.name for x in shared.sd_upscalers]),\n    AxisOption(\"[Refine] Sampler\", str, apply_hr_sampler_name, fmt=format_value_add_label, confirm=confirm_samplers, choices=lambda: [x.name for x in sd_samplers.samplers]),\n    AxisOption(\"[Refine] Denoising strength\", float, apply_field(\"denoising_strength\")),\n    AxisOption(\"[Refine] Hires steps\", int, apply_field(\"hr_second_pass_steps\")),\n    AxisOption(\"[Refine] Refiner start\", float, apply_field(\"refiner_start\")),\n    AxisOption(\"[Refine] Refiner steps\", float, apply_field(\"refiner_steps\")),\n    AxisOption(\"[Postprocess] Upscaler\", str, apply_upscaler, cost=0.4, choices=lambda: [x.name for x in shared.sd_upscalers]),\n    AxisOption(\"[Postprocess] Context\", str, apply_context, choices=lambda: [\"Add with forward\", \"Remove with forward\", \"Add with backward\", \"Remove with backward\"]),\n    AxisOption(\"[Postprocess] Detailer\", str, apply_detailer, fmt=format_value_add_label),\n    AxisOption(\"[Postprocess] Detailer strength\", str, apply_field(\"detailer_strength\")),\n    AxisOption(\"[Quant] SDNQ quant mode\", str, apply_sdnq_quant, cost=0.9, fmt=format_value_add_label, choices=lambda: ['none'] + sorted(shared.sdnq_quant_modes)),\n    AxisOption(\"[Quant] SDNQ quant mode TE\", str, apply_sdnq_quant_te, cost=0.9, fmt=format_value_add_label, choices=lambda: ['none'] + sorted(shared.sdnq_quant_modes)),\n    AxisOption(\"[HDR] Mode\", int, apply_field(\"hdr_mode\")),\n    AxisOption(\"[HDR] Brightness\", float, apply_field(\"hdr_brightness\")),\n    AxisOption(\"[HDR] Color\", float, apply_field(\"hdr_color\")),\n    AxisOption(\"[HDR] Sharpen\", float, apply_field(\"hdr_sharpen\")),\n    AxisOption(\"[HDR] Clamp boundary\", float, apply_field(\"hdr_boundary\")),\n    AxisOption(\"[HDR] Clamp threshold\", float, apply_field(\"hdr_threshold\")),\n    AxisOption(\"[HDR] Maximize center shift\", float, apply_field(\"hdr_max_center\")),\n    AxisOption(\"[HDR] Maximize boundary\", float, apply_field(\"hdr_max_boundary\")),\n    AxisOption(\"[HDR] Tint color hex\", str, apply_field(\"hdr_color_picker\")),\n    AxisOption(\"[HDR] Tint ratio\", float, apply_field(\"hdr_tint_ratio\")),\n    AxisOption(\"[Token Merging] ToMe ratio\", float, apply_setting('tome_ratio')),\n    AxisOption(\"[Token Merging] ToDo ratio\", float, apply_setting('todo_ratio')),\n    AxisOption(\"[FreeU] 1st stage backbone factor\", float, apply_setting('freeu_b1')),\n    AxisOption(\"[FreeU] 2nd stage backbone factor\", float, apply_setting('freeu_b2')),\n    AxisOption(\"[FreeU] 1st stage skip factor\", float, apply_setting('freeu_s1')),\n    AxisOption(\"[FreeU] 2nd stage skip factor\", float, apply_setting('freeu_s2')),\n    AxisOption(\"[IP adapter] Name\", str, apply_field('ip_adapter_names'), cost=1.0, choices=lambda: list(ipadapter.ADAPTERS)),\n    AxisOption(\"[IP adapter] Scale\", float, apply_field('ip_adapter_scales')),\n    AxisOption(\"[IP adapter] Starts\", float, apply_field('ip_adapter_starts')),\n    AxisOption(\"[IP adapter] Ends\", float, apply_field('ip_adapter_ends')),\n    AxisOption(\"[Control] ControlNet\", str, apply_control('controlnet'), cost=0.9, choices=lambda: list(controlnet.all_models)),\n    AxisOption(\"[Control] T2IAdapter\", str, apply_control('t2i adapter'), cost=0.9, choices=lambda: list(t2iadapter.all_models)),\n    AxisOption(\"[Control] Processor\", str, apply_control('processor'), cost=0.6, choices=lambda: processor.processors),\n    AxisOption(\"[Control] Strength\", float, apply_control('control_strength')),\n    AxisOption(\"[Control] Start\", float, apply_control('control_start')),\n    AxisOption(\"[Control] End\", float, apply_control('control_end')),\n    AxisOption(\"[HiDiffusion] T1\", float, apply_override('hidiffusion_t1')),\n    AxisOption(\"[HiDiffusion] T2\", float, apply_override('hidiffusion_t2')),\n    AxisOption(\"[HiDiffusion] Agression step\", float, apply_field('hidiffusion_steps')),\n    AxisOption(\"[PAG] Attention scale\", float, apply_field('pag_scale')),\n    AxisOption(\"[PAG] Adaptive scaling\", float, apply_field('pag_adaptive')),\n    AxisOption(\"[PAG] Applied layers\", str, apply_setting('pag_apply_layers')),\n    AxisOption(\"[IY] Scale\", float, apply_task_arg('infusenet_conditioning_scale')),\n    AxisOption(\"[IY] Start\", float, apply_task_arg('infusenet_guidance_start')),\n    AxisOption(\"[IY] End\", float, apply_task_arg('infusenet_guidance_end')),\n    AxisOption(\"[TeaCache] Threshold\", float, apply_setting('teacache_thresh')),\n    AxisOption(\"[CFGZero] Enabled\", bool, apply_setting('cfgzero_enabled'), fmt=format_bool, choices=lambda: [False, True]),\n]\n"
  },
  {
    "path": "scripts/xyz/xyz_grid_draw.py",
    "content": "import time\nfrom copy import copy\nfrom PIL import Image\nfrom modules import shared, images, processing\n\n\ndef draw_xyz_grid(p, xs, ys, zs, x_labels, y_labels, z_labels, cell, draw_legend, include_lone_images, include_sub_grids, first_axes_processed, second_axes_processed, margin_size, no_grid: False, include_time: False, include_text: False): # pylint: disable=unused-argument\n    x_texts = [[images.GridAnnotation(x)] for x in x_labels]\n    y_texts = [[images.GridAnnotation(y)] for y in y_labels]\n    z_texts = [[images.GridAnnotation(z)] for z in z_labels]\n    list_size = (len(xs) * len(ys) * len(zs))\n    processed_result = None\n\n    t0 = time.time()\n    i = 0\n\n    def process_cell(x, y, z, ix, iy, iz):\n        nonlocal processed_result, i\n        i += 1\n        shared.log.debug(f'XYZ grid process: x={ix+1}/{len(xs)} y={iy+1}/{len(ys)} z={iz+1}/{len(zs)} total={i/list_size:.2f}')\n\n        def index(ix, iy, iz):\n            return ix + iy * len(xs) + iz * len(xs) * len(ys)\n\n        res = cell(x, y, z, ix, iy, iz)\n        processed: processing.Processed = res[0] if isinstance(res, tuple) else res\n        elapsed = res[1] if isinstance(res, tuple) else 0\n        if processed_result is None:\n            processed_result = copy(processed)\n            if processed_result is None:\n                shared.log.error('XYZ grid: no processing results')\n                return processing.Processed(p, [])\n            processed_result.images = [None] * list_size\n            processed_result.all_prompts = [None] * list_size\n            processed_result.all_seeds = [None] * list_size\n            processed_result.infotexts = [None] * list_size\n            processed_result.time = [0] * list_size\n            processed_result.index_of_first_image = 1\n        idx = index(ix, iy, iz)\n        if processed is not None and processed.images:\n            processed_result.images[idx] = processed.images[0]\n            overlay_text = ''\n            if include_text:\n                if len(x_labels[ix]) > 0:\n                    overlay_text += f'{x_labels[ix]}\\n'\n                if len(y_labels[iy]) > 0:\n                    overlay_text += f'{y_labels[iy]}\\n'\n                if len(z_labels[iz]) > 0:\n                    overlay_text += f'{z_labels[iz]}\\n'\n            if include_time:\n                overlay_text += f'Time: {elapsed:.2f}'\n            if len(overlay_text) > 0:\n                processed_result.images[idx] = images.draw_overlay(processed_result.images[idx], overlay_text)\n            processed_result.all_prompts[idx] = processed.prompt\n            processed_result.all_seeds[idx] = processed.seed\n            processed_result.infotexts[idx] = processed.infotexts[0]\n            processed_result.time[idx] = round(elapsed, 2)\n        else:\n            cell_mode = \"P\"\n            cell_size = (processed_result.width, processed_result.height)\n            if processed_result.images[0] is not None:\n                cell_mode = processed_result.images[0].mode\n                cell_size = processed_result.images[0].size\n            processed_result.images[idx] = Image.new(cell_mode, cell_size)\n        shared.state.nextjob()\n\n    if first_axes_processed == 'x':\n        for ix, x in enumerate(xs):\n            if second_axes_processed == 'y':\n                for iy, y in enumerate(ys):\n                    for iz, z in enumerate(zs):\n                        process_cell(x, y, z, ix, iy, iz)\n            else:\n                for iz, z in enumerate(zs):\n                    for iy, y in enumerate(ys):\n                        process_cell(x, y, z, ix, iy, iz)\n    elif first_axes_processed == 'y':\n        for iy, y in enumerate(ys):\n            if second_axes_processed == 'x':\n                for ix, x in enumerate(xs):\n                    for iz, z in enumerate(zs):\n                        process_cell(x, y, z, ix, iy, iz)\n            else:\n                for iz, z in enumerate(zs):\n                    for ix, x in enumerate(xs):\n                        process_cell(x, y, z, ix, iy, iz)\n    elif first_axes_processed == 'z':\n        for iz, z in enumerate(zs):\n            if second_axes_processed == 'x':\n                for ix, x in enumerate(xs):\n                    for iy, y in enumerate(ys):\n                        process_cell(x, y, z, ix, iy, iz)\n            else:\n                for iy, y in enumerate(ys):\n                    for ix, x in enumerate(xs):\n                        process_cell(x, y, z, ix, iy, iz)\n\n    if not processed_result:\n        shared.log.error(\"XYZ grid: failed to initialize processing\")\n        return processing.Processed(p, [])\n    elif not any(processed_result.images):\n        shared.log.error(\"XYZ grid: failed to return processed image\")\n        return processing.Processed(p, [])\n\n    t1 = time.time()\n    grid = None\n    for i in range(len(zs)): # create grid\n        idx0 = (i * len(xs) * len(ys)) + i # starting index of images in subgrid\n        idx1 = (len(xs) * len(ys)) + idx0  # ending index of images in subgrid\n        to_process = processed_result.images[idx0:idx1]\n        w, h = max(i.width for i in to_process if i is not None), max(i.height for i in to_process if i is not None)\n        if w is None or h is None or w == 0 or h == 0:\n            shared.log.error(\"XYZ grid: failed get valid image\")\n            continue\n        if (not no_grid or include_sub_grids) and images.check_grid_size(to_process):\n            grid = images.image_grid(to_process, rows=len(ys))\n            if draw_legend:\n                grid = images.draw_grid_annotations(grid, w, h, x_texts, y_texts, margin_size, title=z_texts[i])\n            processed_result.images.insert(i, grid)\n            processed_result.all_prompts.insert(i, processed_result.all_prompts[idx0])\n            processed_result.all_seeds.insert(i, processed_result.all_seeds[idx0])\n            processed_result.infotexts.insert(i, processed_result.infotexts[idx0])\n    if len(zs) > 1 and not no_grid and images.check_grid_size(processed_result.images[:len(zs)]): # create grid-of-grids\n        grid = images.image_grid(processed_result.images[:len(zs)], rows=1)\n        processed_result.images.insert(0, grid)\n        processed_result.all_prompts.insert(0, processed_result.all_prompts[0])\n        processed_result.all_seeds.insert(0, processed_result.all_seeds[0])\n        processed_result.infotexts.insert(0, processed_result.infotexts[0])\n\n    t2 = time.time()\n    shared.log.info(f'XYZ grid complete: images={list_size} results={len(processed_result.images)} size={grid.size if grid is not None else None} time={t1-t0:.2f} save={t2-t1:.2f}')\n    p.skip_processing = True\n    return processed_result\n"
  },
  {
    "path": "scripts/xyz/xyz_grid_shared.py",
    "content": "# pylint: disable=unused-argument\n\nimport os\nimport re\nfrom modules import shared, processing, sd_samplers, sd_models, sd_vae, sd_unet\n\n\nre_range = re.compile(r'([-+]?[0-9]*\\.?[0-9]+)-([-+]?[0-9]*\\.?[0-9]+):?([0-9]+)?')\nre_plain_comma = re.compile(r\"(?<!\\\\),\")\n\n\ndef restore_comma(val: str):\n    return val.replace(r\"\\,\", \",\")\n\n\ndef apply_field(field):\n    def fun(p, x, xs):\n        shared.log.debug(f'XYZ grid apply field: {field}={x}')\n        setattr(p, field, x)\n    return fun\n\n\ndef apply_task_arg(field):\n    def fun(p, x, xs):\n        shared.log.debug(f'XYZ grid apply task-arg: {field}={x}')\n        p.task_args[field] = x\n    return fun\n\n\ndef apply_task_args(p, x, xs):\n    for section in x.split(';'):\n        k, v = section.split('=')\n        k, v = k.strip(), v.strip()\n        if v.replace('.','',1).isdigit():\n            v = float(v) if '.' in v else int(v)\n        p.task_args[k] = v\n        shared.log.debug(f'XYZ grid apply task-arg: {k}={type(v)}:{v}')\n\n\ndef apply_processing(p, x, xs):\n    for section in x.split(';'):\n        k, v = section.split('=')\n        k, v = k.strip(), v.strip()\n        if v.replace('.','',1).isdigit():\n            v = float(v) if '.' in v else int(v)\n        found = 'existing' if hasattr(p, k) else 'new'\n        setattr(p, k, v)\n        shared.log.debug(f'XYZ grid apply processing-arg: type={found} {k}={type(v)}:{v} ')\n\n\ndef apply_options(p, x, xs):\n    for section in x.split(';'):\n        k, v = section.split('=')\n        k, v = k.strip(), v.strip()\n        if v.replace('.','',1).isdigit():\n            v = float(v) if '.' in v else int(v)\n        found = 'existing' if v in shared.opts.data else 'new'\n        shared.opts.data[k] = v\n        shared.log.debug(f'XYZ grid apply options: type={found} {k}={type(v)}:{v} ')\n\n\ndef apply_setting(field):\n    def fun(p, x, xs):\n        t = type(shared.opts.get(field))\n        if t == bool:\n            if isinstance(x, str):\n                x = x.lower() in ['true', 't', 'yes', 'y']\n            if isinstance(x, int) or isinstance(x, float):\n                x = x > 0\n        shared.log.debug(f'XYZ grid apply setting: {field}={t}:{x}')\n        shared.opts.data[field] = x\n    return fun\n\n\ndef apply_seed(p, x, xs):\n    p.seed = x\n    p.all_seeds = None\n    shared.log.debug(f'XYZ grid apply seed: {x}')\n\n\ndef apply_prompt(positive, negative, p, x, xs):\n    for s in xs:\n        shared.log.debug(f'XYZ grid apply prompt: fields={positive}/{negative} \"{s}\"=\"{x}\"')\n        orig_positive = getattr(p, positive)\n        orig_negative = getattr(p, negative)\n        if s in orig_positive:\n            setattr(p, positive, orig_positive.replace(s, x))\n        if s in orig_negative:\n            setattr(p, negative, orig_negative.replace(s, x))\n\n\ndef apply_prompt_primary(p, x, xs):\n    apply_prompt('prompt', 'negative_prompt', p, x, xs)\n    p.all_prompts = None\n    p.all_negative_prompts = None\n\n\ndef apply_prompt_refine(p, x, xs):\n    apply_prompt('refiner_prompt', 'refiner_negative', p, x, xs)\n\n\ndef apply_prompt_detailer(p, x, xs):\n    apply_prompt('detailer_prompt', 'detailer_negative', p, x, xs)\n\n\ndef apply_prompt_all(p, x, xs):\n    apply_prompt('prompt', 'negative_prompt', p, x, xs)\n    apply_prompt('refiner_prompt', 'refiner_negative', p, x, xs)\n    apply_prompt('detailer_prompt', 'detailer_negative', p, x, xs)\n\n\ndef apply_order(p, x, xs):\n    token_order = []\n    for token in x:\n        token_order.append((p.prompt.find(token), token))\n    token_order.sort(key=lambda t: t[0])\n    prompt_parts = []\n    for _, token in token_order:\n        n = p.prompt.find(token)\n        prompt_parts.append(p.prompt[0:n])\n        p.prompt = p.prompt[n + len(token):]\n    prompt_tmp = \"\"\n    for idx, part in enumerate(prompt_parts):\n        prompt_tmp += part\n        prompt_tmp += x[idx]\n    p.prompt = prompt_tmp + p.prompt\n\n\ndef apply_sampler(p, x, xs):\n    sampler_name = sd_samplers.samplers_map.get(x.lower(), None)\n    if sampler_name is None:\n        shared.log.warning(f\"XYZ grid: unknown sampler: {x}\")\n    else:\n        p.sampler_name = sampler_name\n    shared.log.debug(f'XYZ grid apply sampler: \"{x}\"')\n\n\ndef apply_hr_sampler_name(p, x, xs):\n    hr_sampler_name = sd_samplers.samplers_map.get(x.lower(), None)\n    if hr_sampler_name is None:\n        shared.log.warning(f\"XYZ grid: unknown sampler: {x}\")\n    else:\n        p.hr_sampler_name = hr_sampler_name\n    shared.log.debug(f'XYZ grid apply HR sampler: \"{x}\"')\n\n\ndef confirm_samplers(p, xs):\n    for x in xs:\n        if x.lower() not in sd_samplers.samplers_map:\n            shared.log.warning(f\"XYZ grid: unknown sampler: {x}\")\n\n\ndef apply_sdnq_quant(p, x, xs):\n    shared.opts.sdnq_quantize_weights_mode = x\n    sd_models.unload_model_weights(op='model')\n    sd_models.reload_model_weights()\n    shared.log.debug(f'XYZ grid apply sdnq quant: mode=\"{x}\"')\n\n\ndef apply_sdnq_quant_te(p, x, xs):\n    shared.opts.sdnq_quantize_weights_mode_te = x\n    sd_models.unload_model_weights(op='model')\n    sd_models.reload_model_weights()\n    shared.log.debug(f'XYZ grid apply sdnq quant te: mode=\"{x}\"')\n\n\ndef apply_checkpoint(p, x, xs):\n    if x == shared.opts.sd_model_checkpoint:\n        return\n    info = sd_models.get_closest_checkpoint_match(x)\n    if info is None:\n        shared.log.warning(f\"XYZ grid: apply checkpoint unknown checkpoint: {x}\")\n    else:\n        sd_models.reload_model_weights(shared.sd_model, info)\n        p.override_settings['sd_model_checkpoint'] = info.name\n    shared.log.debug(f'XYZ grid apply checkpoint: \"{x}\"')\n\n\ndef apply_refiner(p, x, xs):\n    if x == shared.opts.sd_model_refiner:\n        return\n    if x == 'None':\n        return\n    info = sd_models.get_closest_checkpoint_match(x)\n    if info is None:\n        shared.log.warning(f\"XYZ grid: apply refiner unknown checkpoint: {x}\")\n    else:\n        sd_models.reload_model_weights(shared.sd_refiner, info)\n        p.override_settings['sd_model_refiner'] = info.name\n    shared.log.debug(f'XYZ grid apply refiner: \"{x}\"')\n\n\ndef apply_unet(p, x, xs):\n    if x == shared.opts.sd_unet:\n        return\n    if x == 'None':\n        return\n    p.override_settings['sd_unet'] = x\n    shared.opts.data['sd_unet'] = x\n    sd_unet.load_unet(shared.sd_model)\n    shared.log.debug(f'XYZ grid apply unet: \"{x}\"')\n\n\ndef apply_clip_skip(p, x, xs):\n    p.clip_skip = x\n    shared.log.debug(f'XYZ grid apply clip-skip: \"{x}\"')\n\n\ndef find_vae(name: str):\n    if name.lower() in ['auto', 'automatic']:\n        return sd_vae.unspecified\n    if name.lower() == 'none':\n        return None\n    else:\n        choices = [x for x in sorted(sd_vae.vae_dict, key=lambda x: len(x)) if name.lower().strip() in x.lower()]\n        if len(choices) == 0:\n            shared.log.warning(f\"No VAE found for {name}; using automatic\")\n            return sd_vae.unspecified\n        else:\n            return sd_vae.vae_dict[choices[0]]\n\n\ndef apply_vae(p, x, xs):\n    sd_vae.reload_vae_weights(shared.sd_model, vae_file=find_vae(x))\n    shared.log.debug(f'XYZ grid apply VAE: \"{x}\"')\n\n\ndef list_lora():\n    import sys\n    lora = [v for k, v in sys.modules.items() if k == 'networks' or k == 'modules.lora.lora_load'][0]\n    loras = [v.fullname for v in lora.available_networks.values()]\n    return ['None'] + sorted(loras)\n\n\ndef apply_lora(p, x, xs):\n    p.all_prompts = None\n    p.all_negative_prompts = None\n    if x == 'None':\n        return\n    x = os.path.basename(x)\n    p.prompt = p.prompt + f\" <lora:{x}:{shared.opts.extra_networks_default_multiplier}>\"\n    shared.log.debug(f'XYZ grid apply LoRA: \"{x}\"')\n\n\ndef apply_lora_strength(p, x, xs):\n    shared.log.debug(f'XYZ grid apply LoRA strength: \"{x}\"')\n    p.prompt = p.prompt.replace(':1.0>', '>')\n    p.prompt = p.prompt.replace(f':{shared.opts.extra_networks_default_multiplier}>', '>')\n    p.all_prompts = None\n    p.all_negative_prompts = None\n    shared.opts.data['extra_networks_default_multiplier'] = x\n\n\ndef apply_te(p, x, xs):\n    shared.opts.data[\"sd_text_encoder\"] = x\n    sd_models.reload_text_encoder()\n    shared.log.debug(f'XYZ grid apply text-encoder: \"{x}\"')\n\n\ndef apply_guidance(p, x, xs):\n    from modules.modular_guiders import guiders\n    guiders = list(guiders.keys())\n    p.guidance_name = [g for g in guiders if g.lower().startswith(x.lower())][0]\n    shared.log.debug(f'XYZ grid apply guidance: \"{p.guidance_name}\"')\n\n\ndef apply_styles(p: processing.StableDiffusionProcessingTxt2Img, x: str, _):\n    p.styles.extend(x.split(','))\n    shared.log.debug(f'XYZ grid apply style: \"{x}\"')\n\n\ndef apply_upscaler(p: processing.StableDiffusionProcessingTxt2Img, opt, x):\n    p.enable_hr = True\n    p.hr_force = True\n    p.denoising_strength = 0.0\n    p.hr_upscaler = opt\n    shared.log.debug(f'XYZ grid apply upscaler: \"{x}\"')\n\n\ndef apply_context(p: processing.StableDiffusionProcessingTxt2Img, opt, x):\n    p.resize_mode = 5\n    p.resize_context = opt\n    shared.log.debug(f'XYZ grid apply resize-context: \"{x}\"')\n\n\ndef apply_detailer(p, opt, x):\n    opt = opt.lower()\n    if opt == 'codeformer':\n        is_active = True\n        p.detailer_model = 'CodeFormer'\n    elif opt == 'gfpgan':\n        is_active = True\n        p.detailer_model = 'GFPGAN'\n    else:\n        is_active = opt in ('true', 'yes', 'y', '1')\n    p.detailer_enabled = is_active\n    shared.log.debug(f'XYZ grid apply face-restore: \"{x}\"')\n\n\ndef apply_control(field):\n    def fun(p, x, xs):\n        init_images = getattr(p, 'orig_init_images', None) or getattr(p, 'init_images', None) or getattr(p, 'orig_init_images', None) or []\n        if init_images is None or len(init_images) == 0:\n            shared.log.error('XYZ grid apply control: init image is required')\n            return\n        if field in ['controlnet', 't2i adapter', 'processor']:\n            from modules.control import run, processor\n            unit_type = 'controlnet' # set default\n            if field in ['controlnet', 't2i adapter']:\n                unit_type = field\n                model_id = x\n                process_id = run.unit.current[0].process_id if len(run.unit.current) > 0 else None\n            elif field == 'processor':\n                model_id = run.unit.current[0].model_id if len(run.unit.current) > 0 else None\n                process_id = x\n            else:\n                model_id = None\n                process_id = None\n            start = run.unit.current[0].start if len(run.unit.current) > 0 else 0\n            end = run.unit.current[0].end if len(run.unit.current) > 0 else 1.0\n            strength = run.unit.current[0].model_strength if len(run.unit.current) > 0 else 1.0\n            unit = run.unit.Unit(\n                    index = 0,\n                    enabled = True,\n                    unit_type = unit_type,\n                    model_id = getattr(model_id, 'value', model_id), # gradio-component-to-string\n                    process_id = getattr(process_id, 'value', process_id),\n                    start = getattr(start, 'value', start),\n                    end = getattr(end, 'value', end),\n                    strength = getattr(strength, 'value', strength),\n            )\n            shared.log.debug(f'XYZ grid apply control: {field}=\"{x}\" unit={unit}')\n            if len(run.unit.current) > 0:\n                if hasattr(run.unit.current[0], 'reset'):\n                    run.unit.current[0].reset()\n                run.unit.current[0] = unit\n            else:\n                run.unit.current = [unit]\n            run.init_units(run.unit.current)\n            active_process, active_model, active_strength, active_start, active_end, active_units = run.check_active(p, unit.type, run.unit.current)\n            has_models, selected_models, control_conditioning, control_guidance_start, control_guidance_end = run.check_enabled(p, unit.type, run.unit.current, active_model, active_strength, active_start, active_end)\n            pipe = run.set_pipe(p, has_models, unit.type, selected_models, active_model, active_strength, active_units, control_conditioning, control_guidance_start, control_guidance_end)\n            _processed_image, _blended_image = processor.preprocess_image(p, pipe, input_image=init_images[0], unit_type=unit.type, active_process=active_process, active_model=active_model, selected_models=selected_models, has_models=has_models)\n            if pipe is not None:\n                shared.sd_model = pipe\n        elif field == 'control_start':\n            shared.log.debug(f'XYZ grid apply control: {field}={x}')\n            p.task_args['control_guidance_start'] = float(x)\n        elif field == 'control_end':\n            shared.log.debug(f'XYZ grid apply control: {field}={x}')\n            p.task_args['control_guidance_end'] = float(x)\n        elif field == 'control_strength':\n            shared.log.debug(f'XYZ grid apply control: {field}={x}')\n            p.task_args['adapter_conditioning_scale'] = float(x)\n            p.task_args['controlnet_conditioning_scale'] = float(x)\n    return fun\n\n\ndef apply_override(field):\n    def fun(p, x, xs):\n        p.override_settings[field] = x\n        shared.log.debug(f'XYZ grid apply override: \"{field}\"=\"{x}\"')\n    return fun\n\n\ndef format_bool(p, opt, x):\n    return f\"{opt.label}: {x}\"\n\n\ndef format_value_add_label(p, opt, x):\n    if type(x) == float:\n        x = round(x, 4)\n    return f\"{opt.label}: {x}\"\n\n\ndef format_value(p, opt, x):\n    if type(x) == float:\n        x = round(x, 4)\n    return x\n\n\ndef format_value_join_list(p, opt, x):\n    return \", \".join(x)\n\n\ndef do_nothing(p, x, xs):\n    pass\n\n\ndef format_nothing(p, opt, x):\n    return \"\"\n\n\ndef str_permutations(x):\n    \"\"\"dummy function for specifying it in AxisOption's type when you want to get a list of permutations\"\"\"\n    return x\n\n\ndef list_to_csv_string(data_list: list):\n    return \",\".join(data_list)\n"
  },
  {
    "path": "scripts/xyz_grid.py",
    "content": "# xyz grid that shows as selectable script\nimport os\nimport time\nimport random\nfrom collections import namedtuple\nfrom copy import copy\nfrom itertools import permutations\nfrom PIL import Image\nimport numpy as np\nimport gradio as gr\nfrom scripts.xyz.xyz_grid_shared import str_permutations, list_to_csv_string, restore_comma, re_range, re_plain_comma # pylint: disable=no-name-in-module\nfrom scripts.xyz.xyz_grid_classes import axis_options, AxisOption, SharedSettingsStackHelper # pylint: disable=no-name-in-module\nfrom scripts.xyz.xyz_grid_draw import draw_xyz_grid # pylint: disable=no-name-in-module\nfrom scripts.xyz.xyz_grid_shared import apply_field, apply_task_args, apply_setting, apply_prompt, apply_order, apply_sampler, apply_hr_sampler_name, confirm_samplers, apply_checkpoint, apply_refiner, apply_unet, apply_clip_skip, apply_vae, list_lora, apply_lora, apply_lora_strength, apply_te, apply_styles, apply_upscaler, apply_context, apply_detailer, apply_override, apply_processing, apply_options, apply_seed, format_value_add_label, format_value, format_value_join_list, do_nothing, format_nothing # pylint: disable=no-name-in-module, unused-import\nfrom modules import shared, errors, scripts_manager, images, processing\nfrom modules.ui_components import ToolButton\nfrom modules.ui_sections import create_video_inputs\nimport modules.ui_symbols as symbols\n\n\ndebug = shared.log.trace if os.environ.get('SD_XYZ_DEBUG', None) is not None else lambda *args, **kwargs: None\n\n\nclass Script(scripts_manager.Script):\n    current_axis_options = []\n\n    def title(self):\n        return \"XYZ Grid Script\"\n\n    def ui(self, is_img2img):\n        self.current_axis_options = [x for x in axis_options if type(x) == AxisOption or x.is_img2img == is_img2img]\n        with gr.Row():\n            gr.HTML('<span\">&nbsp XYZ Grid</span><br>')\n\n        with gr.Row():\n            with gr.Column():\n                with gr.Row(variant='compact'):\n                    x_type = gr.Dropdown(label=\"X type\", container=True, choices=[x.label for x in self.current_axis_options], value=self.current_axis_options[0].label, type=\"index\", elem_id=self.elem_id(\"x_type\"))\n                    x_values = gr.Textbox(label=\"X values\", container=True, lines=1, elem_id=self.elem_id(\"x_values\"))\n                    x_values_dropdown = gr.Dropdown(label=\"X values\", container=True, visible=False, multiselect=True, interactive=True)\n                    fill_x_button = ToolButton(value=symbols.fill, elem_id=\"xyz_grid_x_list\", visible=False)\n                with gr.Row(variant='compact'):\n                    y_type = gr.Dropdown(label=\"Y type\", container=True, choices=[x.label for x in self.current_axis_options], value=self.current_axis_options[0].label, type=\"index\", elem_id=self.elem_id(\"y_type\"))\n                    y_values = gr.Textbox(label=\"Y values\", container=True, lines=1, elem_id=self.elem_id(\"y_values\"))\n                    y_values_dropdown = gr.Dropdown(label=\"Y values\", container=True, visible=False, multiselect=True, interactive=True)\n                    fill_y_button = ToolButton(value=symbols.fill, elem_id=\"xyz_grid_y_list\", visible=False)\n                with gr.Row(variant='compact'):\n                    z_type = gr.Dropdown(label=\"Z type\", container=True, choices=[x.label for x in self.current_axis_options], value=self.current_axis_options[0].label, type=\"index\", elem_id=self.elem_id(\"z_type\"))\n                    z_values = gr.Textbox(label=\"Z values\", container=True, lines=1, elem_id=self.elem_id(\"z_values\"))\n                    z_values_dropdown = gr.Dropdown(label=\"Z values\", container=True, visible=False, multiselect=True, interactive=True)\n                    fill_z_button = ToolButton(value=symbols.fill, elem_id=\"xyz_grid_z_list\", visible=False)\n\n        with gr.Row():\n            with gr.Column():\n                draw_legend = gr.Checkbox(label='Draw legend', value=True, elem_id=self.elem_id(\"draw_legend\"), container=False)\n                csv_mode = gr.Checkbox(label='Use text inputs', value=False, elem_id=self.elem_id(\"csv_mode\"), container=False)\n                no_fixed_seeds = gr.Checkbox(label='Use random seeds', value=False, elem_id=self.elem_id(\"no_fixed_seeds\"), container=False)\n                include_time = gr.Checkbox(label='Add time info', value=False, elem_id=self.elem_id(\"include_time\"), container=False)\n                include_text = gr.Checkbox(label='Add text info', value=False, elem_id=self.elem_id(\"include_text\"), container=False)\n            with gr.Column():\n                include_grid = gr.Checkbox(label='Include main grid', value=True, elem_id=self.elem_id(\"no_xyz_grid\"), container=False)\n                include_subgrids = gr.Checkbox(label='Include sub grids', value=False, elem_id=self.elem_id(\"include_sub_grids\"), container=False)\n                include_images = gr.Checkbox(label='Include images', value=False, elem_id=self.elem_id(\"include_lone_images\"), container=False)\n                create_video = gr.Checkbox(label='Create video', value=False, elem_id=self.elem_id(\"xyz_create_video\"), container=False)\n\n        with gr.Row(visible=False) as ui_video:\n            video_type, video_duration, video_loop, video_pad, video_interpolate = create_video_inputs(tab='img2img' if is_img2img else 'txt2img')\n            create_video.change(fn=lambda x: gr.update(visible=x), inputs=[create_video], outputs=[ui_video])\n\n        with gr.Row():\n            margin_size = gr.Slider(label=\"Grid margins\", minimum=0, maximum=500, value=0, step=2, elem_id=self.elem_id(\"margin_size\"))\n\n        with gr.Row():\n            swap_xy_axes_button = gr.Button(value=\"Swap X/Y\", elem_id=\"xy_grid_swap_axes_button\", variant=\"secondary\")\n            swap_yz_axes_button = gr.Button(value=\"Swap Y/Z\", elem_id=\"yz_grid_swap_axes_button\", variant=\"secondary\")\n            swap_xz_axes_button = gr.Button(value=\"Swap X/Z\", elem_id=\"xz_grid_swap_axes_button\", variant=\"secondary\")\n\n        def swap_axes(axis1_type, axis1_values, axis1_values_dropdown, axis2_type, axis2_values, axis2_values_dropdown):\n            return self.current_axis_options[axis2_type].label, axis2_values, axis2_values_dropdown, self.current_axis_options[axis1_type].label, axis1_values, axis1_values_dropdown\n\n        xy_swap_args = [x_type, x_values, x_values_dropdown, y_type, y_values, y_values_dropdown]\n        swap_xy_axes_button.click(swap_axes, inputs=xy_swap_args, outputs=xy_swap_args)\n        yz_swap_args = [y_type, y_values, y_values_dropdown, z_type, z_values, z_values_dropdown]\n        swap_yz_axes_button.click(swap_axes, inputs=yz_swap_args, outputs=yz_swap_args)\n        xz_swap_args = [x_type, x_values, x_values_dropdown, z_type, z_values, z_values_dropdown]\n        swap_xz_axes_button.click(swap_axes, inputs=xz_swap_args, outputs=xz_swap_args)\n\n        def fill(axis_type, csv_mode):\n            axis = self.current_axis_options[axis_type]\n            if axis.choices:\n                if csv_mode:\n                    return list_to_csv_string(axis.choices()), gr.update()\n                else:\n                    return gr.update(), axis.choices()\n            else:\n                return gr.update(), gr.update()\n\n        fill_x_button.click(fn=fill, inputs=[x_type, csv_mode], outputs=[x_values, x_values_dropdown])\n        fill_y_button.click(fn=fill, inputs=[y_type, csv_mode], outputs=[y_values, y_values_dropdown])\n        fill_z_button.click(fn=fill, inputs=[z_type, csv_mode], outputs=[z_values, z_values_dropdown])\n\n        def select_axis(axis_type, axis_values, axis_values_dropdown, csv_mode):\n            choices = self.current_axis_options[axis_type].choices\n            has_choices = choices is not None\n            current_values = axis_values\n            current_dropdown_values = axis_values_dropdown\n            if has_choices:\n                choices = choices()\n                if csv_mode:\n                    current_dropdown_values = list(filter(lambda x: x in choices, current_dropdown_values))\n                    current_values = list_to_csv_string(current_dropdown_values)\n                else:\n                    current_dropdown_values = [restore_comma(x.strip()) for x in re_plain_comma.split(axis_values) if x]\n                    current_dropdown_values = list(filter(lambda x: x in choices, current_dropdown_values))\n\n            return (gr.Button.update(visible=has_choices), gr.Textbox.update(visible=not has_choices or csv_mode, value=current_values),\n                    gr.update(choices=choices if has_choices else None, visible=has_choices and not csv_mode, value=current_dropdown_values))\n\n        x_type.change(fn=select_axis, inputs=[x_type, x_values, x_values_dropdown, csv_mode], outputs=[fill_x_button, x_values, x_values_dropdown])\n        y_type.change(fn=select_axis, inputs=[y_type, y_values, y_values_dropdown, csv_mode], outputs=[fill_y_button, y_values, y_values_dropdown])\n        z_type.change(fn=select_axis, inputs=[z_type, z_values, z_values_dropdown, csv_mode], outputs=[fill_z_button, z_values, z_values_dropdown])\n\n        def change_choice_mode(csv_mode, x_type, x_values, x_values_dropdown, y_type, y_values, y_values_dropdown, z_type, z_values, z_values_dropdown):\n            _fill_x_button, _x_values, _x_values_dropdown = select_axis(x_type, x_values, x_values_dropdown, csv_mode)\n            _fill_y_button, _y_values, _y_values_dropdown = select_axis(y_type, y_values, y_values_dropdown, csv_mode)\n            _fill_z_button, _z_values, _z_values_dropdown = select_axis(z_type, z_values, z_values_dropdown, csv_mode)\n            return _fill_x_button, _x_values, _x_values_dropdown, _fill_y_button, _y_values, _y_values_dropdown, _fill_z_button, _z_values, _z_values_dropdown\n\n        csv_mode.change(fn=change_choice_mode, inputs=[csv_mode, x_type, x_values, x_values_dropdown, y_type, y_values, y_values_dropdown, z_type, z_values, z_values_dropdown], outputs=[fill_x_button, x_values, x_values_dropdown, fill_y_button, y_values, y_values_dropdown, fill_z_button, z_values, z_values_dropdown])\n\n        def get_dropdown_update_from_params(axis,params):\n            val_key = f\"{axis} Values\"\n            vals = params.get(val_key,\"\")\n            valslist = [restore_comma(x.strip()) for x in re_plain_comma.split(vals) if x]\n            return gr.update(value = valslist)\n\n        self.infotext_fields = (\n            (x_type, \"X Script Type\"),\n            (x_values, \"X Script Values\"),\n            (x_values_dropdown, lambda params:get_dropdown_update_from_params(\"X\",params)),\n            (y_type, \"Y Script Type\"),\n            (y_values, \"Y Script Values\"),\n            (y_values_dropdown, lambda params:get_dropdown_update_from_params(\"Y\",params)),\n            (z_type, \"Z Script Type\"),\n            (z_values, \"Z Script Values\"),\n            (z_values_dropdown, lambda params:get_dropdown_update_from_params(\"Z\",params)),\n        )\n\n        return [\n            x_type, x_values, x_values_dropdown,\n            y_type, y_values, y_values_dropdown,\n            z_type, z_values, z_values_dropdown,\n            csv_mode, draw_legend, no_fixed_seeds,\n            include_grid, include_subgrids, include_images,\n            include_time, include_text, margin_size,\n            create_video, video_type, video_duration, video_loop, video_pad, video_interpolate,\n        ]\n\n    def run(self, p,\n            x_type, x_values, x_values_dropdown,\n            y_type, y_values, y_values_dropdown,\n            z_type, z_values, z_values_dropdown,\n            csv_mode, draw_legend, no_fixed_seeds,\n            include_grid, include_subgrids, include_images,\n            include_time, include_text, margin_size,\n            create_video, video_type, video_duration, video_loop, video_pad, video_interpolate,\n           ): # pylint: disable=W0221\n        jobid = shared.state.begin('XYZ Grid')\n        if not shared.opts.return_grid:\n            p.batch_size = 1\n\n        def process_axis(opt, vals, vals_dropdown):\n            if opt.label == 'Nothing':\n                return [0]\n            if opt.choices is not None and not csv_mode:\n                valslist = vals_dropdown\n            else:\n                valslist = [restore_comma(x.strip()) for x in re_plain_comma.split(vals) if x]\n            if opt.type == int:\n                valslist_ext = []\n                for val in valslist:\n                    try:\n                        m = re_range.fullmatch(val)\n                        if m is not None:\n                            start_val = int(m.group(1)) if m.group(1) is not None else val\n                            end_val = int(m.group(2)) if m.group(2) is not None else val\n                            num = int(m.group(3)) if m.group(3) is not None else int(end_val-start_val)\n                            valslist_ext += [int(x) for x in np.linspace(start=start_val, stop=end_val, num=max(2, num)).tolist()]\n                            shared.log.debug(f'XYZ grid range: start={start_val} end={end_val} num={max(2, num)} list={valslist}')\n                        else:\n                            valslist_ext.append(int(val))\n                    except Exception as e:\n                        shared.log.error(f\"XYZ grid: value={val} {e}\")\n                valslist.clear()\n                valslist = [x for x in valslist_ext if x not in valslist]\n            elif opt.type == float:\n                valslist_ext = []\n                for val in valslist:\n                    try:\n                        m = re_range.fullmatch(val)\n                        if m is not None:\n                            start_val = float(m.group(1)) if m.group(1) is not None else val\n                            end_val = float(m.group(2)) if m.group(2) is not None else val\n                            num = int(m.group(3)) if m.group(3) is not None else int(end_val-start_val)\n                            valslist_ext += [round(float(x), 2) for x in np.linspace(start=start_val, stop=end_val, num=max(2, num)).tolist()]\n                            shared.log.debug(f'XYZ grid range: start={start_val} end={end_val} num={max(2, num)} list={valslist}')\n                        else:\n                            valslist_ext.append(float(val))\n                    except Exception as e:\n                        shared.log.error(f\"XYZ grid: value={val} {e}\")\n                valslist.clear()\n                valslist = [x for x in valslist_ext if x not in valslist]\n            elif opt.type == str_permutations: # pylint: disable=comparison-with-callable\n                valslist = list(permutations(valslist))\n            valslist = [opt.type(x) for x in valslist]\n            # Confirm options are valid before starting\n            if opt.confirm:\n                opt.confirm(p, valslist)\n            return valslist\n\n        def parse_axis(x_type, x_values, x_values_dropdown):\n            x_opt = None\n            if isinstance(x_type, str):\n                x_opt = [o for o in self.current_axis_options if o.label.lower() == x_type.lower()]\n                if len(x_opt) == 0:\n                    x_opt = [o for o in self.current_axis_options if x_type.lower() in o.label.lower()]\n                if len(x_opt) > 0:\n                    x_opt = x_opt[0]\n            else:\n                x_opt = self.current_axis_options[x_type]\n            if x_opt:\n                if x_opt.choices is not None and not csv_mode:\n                    x_values = list_to_csv_string(x_values_dropdown)\n                xs = process_axis(x_opt, x_values, x_values_dropdown)\n            else:\n                xs = []\n            return x_opt, xs\n\n        try:\n            x_opt, xs = parse_axis(x_type, x_values, x_values_dropdown)\n            y_opt, ys = parse_axis(y_type, y_values, y_values_dropdown)\n            z_opt, zs = parse_axis(z_type, z_values, z_values_dropdown)\n        except Exception as e:\n            shared.log.error(f\"XYZ grid: invalid axis values {e}\")\n            errors.display(e, 'xyz')\n            return None\n\n        Image.MAX_IMAGE_PIXELS = None # disable check in Pillow and rely on check below to allow large custom image sizes\n\n        def fix_axis_seeds(axis_opt, axis_list):\n            if axis_opt.label in ['[Param] Seed', '[Param] Variation seed']:\n                return [int(random.randrange(4294967294)) if val is None or val == '' or val == -1 else val for val in axis_list]\n            else:\n                return axis_list\n\n        if not no_fixed_seeds:\n            xs = fix_axis_seeds(x_opt, xs)\n            ys = fix_axis_seeds(y_opt, ys)\n            zs = fix_axis_seeds(z_opt, zs)\n        else:\n            processing.fix_seed(p)\n\n        total_jobs = len(xs) * len(ys) * len(zs)\n        if x_opt.label == 'Steps':\n            total_steps = sum(xs) * len(ys) * len(zs)\n        elif y_opt.label == 'Steps':\n            total_steps = sum(ys) * len(xs) * len(zs)\n        elif z_opt.label == 'Steps':\n            total_steps = sum(zs) * len(xs) * len(ys)\n        else:\n            total_steps = p.steps * total_jobs\n        if isinstance(p, processing.StableDiffusionProcessingTxt2Img) and p.enable_hr:\n            if x_opt.label == \"Hires steps\":\n                total_steps += sum(xs) * len(ys) * len(zs)\n            elif y_opt.label == \"Hires steps\":\n                total_steps += sum(ys) * len(xs) * len(zs)\n            elif z_opt.label == \"Hires steps\":\n                total_steps += sum(zs) * len(xs) * len(ys)\n            elif p.hr_second_pass_steps:\n                total_steps += p.hr_second_pass_steps * total_jobs\n            else:\n                total_steps *= 2\n        total_steps *= p.n_iter\n        shared.state.update('Grid', total_steps, total_jobs * p.n_iter)\n\n        image_cell_count = p.n_iter * p.batch_size\n        shared.log.info(f\"XYZ grid start: images={len(xs)*len(ys)*len(zs)*image_cell_count} grid={len(zs)} shape={len(xs)}x{len(ys)} cells={len(zs)} steps={total_steps} csv={csv_mode} legend={draw_legend} grid={include_grid} subgrid={include_subgrids} images={include_images} time={include_time} text={include_text}\")\n        AxisInfo = namedtuple('AxisInfo', ['axis', 'values'])\n        shared.state.xyz_plot_x = AxisInfo(x_opt, xs)\n        shared.state.xyz_plot_y = AxisInfo(y_opt, ys)\n        shared.state.xyz_plot_z = AxisInfo(z_opt, zs)\n        first_axes_processed = 'z'\n        second_axes_processed = 'y'\n        if x_opt.cost > y_opt.cost and x_opt.cost > z_opt.cost:\n            first_axes_processed = 'x'\n            if y_opt.cost > z_opt.cost:\n                second_axes_processed = 'y'\n            else:\n                second_axes_processed = 'z'\n        elif y_opt.cost > x_opt.cost and y_opt.cost > z_opt.cost:\n            first_axes_processed = 'y'\n            if x_opt.cost > z_opt.cost:\n                second_axes_processed = 'x'\n            else:\n                second_axes_processed = 'z'\n        elif z_opt.cost > x_opt.cost and z_opt.cost > y_opt.cost:\n            first_axes_processed = 'z'\n            if x_opt.cost > y_opt.cost:\n                second_axes_processed = 'x'\n            else:\n                second_axes_processed = 'y'\n        grid_infotext = [None] * (1 + len(zs))\n\n        def cell(x, y, z, ix, iy, iz):\n            if shared.state.interrupted:\n                return processing.Processed(p, [], p.seed, \"\"), 0\n            p.xyz = True\n            pc = copy(p)\n            pc.override_settings_restore_afterwards = False\n            pc.styles = pc.styles[:]\n            x_opt.apply(pc, x, xs)\n            y_opt.apply(pc, y, ys)\n            z_opt.apply(pc, z, zs)\n\n            t0 = time.time()\n            try:\n                processed = processing.process_images(pc)\n            except Exception as e:\n                shared.log.error(f\"XYZ grid: Failed to process image: {e}\")\n                errors.display(e, 'XYZ grid')\n                processed = None\n            subgrid_index = 1 + iz # Sets subgrid infotexts\n            if grid_infotext[subgrid_index] is None and ix == 0 and iy == 0:\n                pc.extra_generation_params = copy(pc.extra_generation_params)\n                pc.extra_generation_params['Script'] = self.title()\n                if x_opt.label != 'Nothing':\n                    pc.extra_generation_params[\"X Script Type\"] = x_opt.label\n                    pc.extra_generation_params[\"X Script Values\"] = x_values\n                    if x_opt.label in [\"[Param] Seed\", \"[Param] Variation seed\"] and not no_fixed_seeds:\n                        pc.extra_generation_params[\"Fixed X Script Values\"] = \", \".join([str(x) for x in xs])\n                if y_opt.label != 'Nothing':\n                    pc.extra_generation_params[\"Y Script Type\"] = y_opt.label\n                    pc.extra_generation_params[\"Y Script Values\"] = y_values\n                    if y_opt.label in [\"[Param] Seed\", \"[Param] Variation seed\"] and not no_fixed_seeds:\n                        pc.extra_generation_params[\"Fixed Y Script Values\"] = \", \".join([str(y) for y in ys])\n                grid_infotext[subgrid_index] = processing.create_infotext(pc, pc.all_prompts, pc.all_seeds, pc.all_subseeds, grid=f'{len(xs)}x{len(ys)}')\n            if grid_infotext[0] is None and ix == 0 and iy == 0 and iz == 0: # Sets main grid infotext\n                pc.extra_generation_params = copy(pc.extra_generation_params)\n                if z_opt.label != 'Nothing':\n                    pc.extra_generation_params[\"Z Script Type\"] = z_opt.label\n                    pc.extra_generation_params[\"Z Script Values\"] = z_values\n                    if z_opt.label in [\"[Param] Seed\", \"[Param] Variation seed\"] and not no_fixed_seeds:\n                        pc.extra_generation_params[\"Fixed Z Values\"] = \", \".join([str(z) for z in zs])\n                grid_text = f'{len(zs)}x{len(xs)}x{len(ys)}' if len(zs) > 0 else f'{len(xs)}x{len(ys)}'\n                grid_infotext[0] = processing.create_infotext(pc, pc.all_prompts, pc.all_seeds, pc.all_subseeds, grid=grid_text)\n            t1 = time.time()\n            return processed, t1-t0\n\n        with SharedSettingsStackHelper():\n            processed: processing.Processed = draw_xyz_grid(\n                p,\n                xs=xs,\n                ys=ys,\n                zs=zs,\n                x_labels=[x_opt.format_value(p, x_opt, x) for x in xs],\n                y_labels=[y_opt.format_value(p, y_opt, y) for y in ys],\n                z_labels=[z_opt.format_value(p, z_opt, z) for z in zs],\n                cell=cell,\n                draw_legend=draw_legend,\n                include_lone_images=include_images,\n                include_sub_grids=include_subgrids,\n                first_axes_processed=first_axes_processed,\n                second_axes_processed=second_axes_processed,\n                margin_size=margin_size,\n                no_grid=not include_grid,\n                include_time=include_time,\n                include_text=include_text,\n            )\n\n        if hasattr(shared.sd_model, 'restore_pipeline') and (shared.sd_model.restore_pipeline is not None):\n            shared.sd_model.restore_pipeline()\n\n        if not processed.images:\n            return processed # something broke, no further handling needed.\n\n        have_grid = 1 if include_grid else 0\n        have_subgrids = len(zs) if len(zs) > 1 and include_subgrids else 0\n        have_images = processed.images[have_grid+have_subgrids:]\n        processed.infotexts[:have_grid+have_subgrids] = grid_infotext[:have_grid+have_subgrids] # update infotexts with grid and subgrid info\n        shared.log.debug(f'XYZ grid: grid={have_grid} subgrids={have_subgrids} images={len(have_images)} total={len(processed.images)}')\n\n        if not include_images: # dont need images anymore, drop from list:\n            processed.images = processed.images[:have_grid+have_subgrids]\n            debug(f'XYZ grid remove images: total={processed.images}')\n\n        if shared.opts.grid_save and not shared.state.interrupted: # auto-save main and sub-grids:\n            for g in range(have_grid + have_subgrids):\n                adj_g = g-1 if g > 0 else g\n                info = processed.infotexts[g]\n                prompt = processed.all_prompts[adj_g]\n                seed = processed.all_seeds[adj_g]\n                debug(f'XYZ grid save grid: i={g+1}')\n                images.save_image(processed.images[g], p.outpath_grids, \"grid\", info=info, extension=shared.opts.grid_format, prompt=prompt, seed=seed, grid=True, p=processed)\n\n        if not include_subgrids and have_subgrids > 0: # done with sub-grids, drop all related information:\n            for _sg in range(have_subgrids):\n                del processed.images[1]\n                del processed.all_prompts[1]\n                del processed.all_seeds[1]\n                del processed.infotexts[1]\n            debug(f'XYZ grid remove subgrids: total={processed.images}')\n\n        if create_video and video_type != 'None' and not shared.state.interrupted:\n            images.save_video(p, filename=None, images=have_images, video_type=video_type, duration=video_duration, loop=video_loop, pad=video_pad, interpolate=video_interpolate)\n\n        shared.state.end(jobid)\n        return processed\n"
  },
  {
    "path": "scripts/xyz_grid_on.py",
    "content": "# xyz grid that shows up as alwayson script\nimport os\nimport time\nimport random\nfrom collections import namedtuple\nfrom copy import copy\nfrom itertools import permutations\nfrom PIL import Image\nimport numpy as np\nimport gradio as gr\nfrom scripts.xyz.xyz_grid_shared import str_permutations, list_to_csv_string, restore_comma, re_range, re_plain_comma # pylint: disable=no-name-in-module\nfrom scripts.xyz.xyz_grid_classes import axis_options, AxisOption, SharedSettingsStackHelper # pylint: disable=no-name-in-module\nfrom scripts.xyz.xyz_grid_draw import draw_xyz_grid # pylint: disable=no-name-in-module\nfrom modules import shared, errors, scripts_manager, images, processing\nfrom modules.ui_components import ToolButton\nfrom modules.ui_sections import create_video_inputs\nimport modules.ui_symbols as symbols\n\n\nactive = False\nxyz_results_cache = None\ndebug = shared.log.trace if os.environ.get('SD_XYZ_DEBUG', None) is not None else lambda *args, **kwargs: None\n\n\nclass Script(scripts_manager.Script):\n    current_axis_options = []\n\n    def show(self, is_img2img):\n        return scripts_manager.AlwaysVisible\n\n    def title(self):\n        return \"XYZ Grid\"\n\n    def ui(self, is_img2img):\n        self.current_axis_options = [x for x in axis_options if type(x) == AxisOption or x.is_img2img == is_img2img]\n\n        with gr.Accordion('XYZ Grid', open = False, elem_id='xyz_grid'):\n            with gr.Row():\n                enabled = gr.Checkbox(label = 'Enabled', value = False)\n\n            with gr.Row():\n                with gr.Column():\n                    with gr.Row(variant='compact'):\n                        x_type = gr.Dropdown(label=\"X type\", container=True, choices=[x.label for x in self.current_axis_options], value=self.current_axis_options[0].label, type=\"index\", elem_id=self.elem_id(\"x_type\"))\n                        x_values = gr.Textbox(label=\"X values\", container=True, lines=1, elem_id=self.elem_id(\"x_values\"))\n                        x_values_dropdown = gr.Dropdown(label=\"X values\", container=True, visible=False, multiselect=True, interactive=True)\n                        fill_x_button = ToolButton(value=symbols.fill, elem_id=\"xyz_gridon_x_list\", visible=False)\n                    with gr.Row(variant='compact'):\n                        y_type = gr.Dropdown(label=\"Y type\", container=True, choices=[x.label for x in self.current_axis_options], value=self.current_axis_options[0].label, type=\"index\", elem_id=self.elem_id(\"y_type\"))\n                        y_values = gr.Textbox(label=\"Y values\", container=True, lines=1, elem_id=self.elem_id(\"y_values\"))\n                        y_values_dropdown = gr.Dropdown(label=\"Y values\", container=True, visible=False, multiselect=True, interactive=True)\n                        fill_y_button = ToolButton(value=symbols.fill, elem_id=\"xyz_gridon_y_list\", visible=False)\n                    with gr.Row(variant='compact'):\n                        z_type = gr.Dropdown(label=\"Z type\", container=True, choices=[x.label for x in self.current_axis_options], value=self.current_axis_options[0].label, type=\"index\", elem_id=self.elem_id(\"z_type\"))\n                        z_values = gr.Textbox(label=\"Z values\", container=True, lines=1, elem_id=self.elem_id(\"z_values\"))\n                        z_values_dropdown = gr.Dropdown(label=\"Z values\", container=True, visible=False, multiselect=True, interactive=True)\n                        fill_z_button = ToolButton(value=symbols.fill, elem_id=\"xyz_gridon_z_list\", visible=False)\n\n            with gr.Row():\n                with gr.Column():\n                    draw_legend = gr.Checkbox(label='Draw legend', value=True, elem_id=self.elem_id(\"draw_legend\"), container=False)\n                    csv_mode = gr.Checkbox(label='Use text inputs', value=False, elem_id=self.elem_id(\"csv_mode\"), container=False)\n                    no_fixed_seeds = gr.Checkbox(label='Use random seeds', value=False, elem_id=self.elem_id(\"no_fixed_seeds\"), container=False)\n                    include_time = gr.Checkbox(label='Add time info', value=False, elem_id=self.elem_id(\"include_time\"), container=False)\n                    include_text = gr.Checkbox(label='Add text info', value=False, elem_id=self.elem_id(\"include_text\"), container=False)\n                with gr.Column():\n                    include_grid = gr.Checkbox(label='Include main grid', value=True, elem_id=self.elem_id(\"no_xyz_grid\"), container=False)\n                    include_subgrids = gr.Checkbox(label='Include sub grids', value=False, elem_id=self.elem_id(\"include_sub_grids\"), container=False)\n                    include_images = gr.Checkbox(label='Include images', value=False, elem_id=self.elem_id(\"include_lone_images\"), container=False)\n                    create_video = gr.Checkbox(label='Create video', value=False, elem_id=self.elem_id(\"xyz_create_video\"), container=False)\n\n            with gr.Row(visible=False) as ui_video:\n                video_type, video_duration, video_loop, video_pad, video_interpolate = create_video_inputs(tab='img2img' if is_img2img else 'txt2img')\n                create_video.change(fn=lambda x: gr.update(visible=x), inputs=[create_video], outputs=[ui_video])\n\n            with gr.Row():\n                margin_size = gr.Slider(label=\"Grid margins\", minimum=0, maximum=500, value=0, step=2, elem_id=self.elem_id(\"margin_size\"))\n\n            with gr.Row():\n                swap_xy_axes_button = gr.Button(value=\"Swap X/Y\", elem_id=\"xy_grid_swap_axes_button\", variant=\"secondary\")\n                swap_yz_axes_button = gr.Button(value=\"Swap Y/Z\", elem_id=\"yz_grid_swap_axes_button\", variant=\"secondary\")\n                swap_xz_axes_button = gr.Button(value=\"Swap X/Z\", elem_id=\"xz_grid_swap_axes_button\", variant=\"secondary\")\n\n        def swap_axes(axis1_type, axis1_values, axis1_values_dropdown, axis2_type, axis2_values, axis2_values_dropdown):\n            return self.current_axis_options[axis2_type].label, axis2_values, axis2_values_dropdown, self.current_axis_options[axis1_type].label, axis1_values, axis1_values_dropdown\n\n        xy_swap_args = [x_type, x_values, x_values_dropdown, y_type, y_values, y_values_dropdown]\n        swap_xy_axes_button.click(swap_axes, inputs=xy_swap_args, outputs=xy_swap_args)\n        yz_swap_args = [y_type, y_values, y_values_dropdown, z_type, z_values, z_values_dropdown]\n        swap_yz_axes_button.click(swap_axes, inputs=yz_swap_args, outputs=yz_swap_args)\n        xz_swap_args = [x_type, x_values, x_values_dropdown, z_type, z_values, z_values_dropdown]\n        swap_xz_axes_button.click(swap_axes, inputs=xz_swap_args, outputs=xz_swap_args)\n\n        def fill(axis_type, csv_mode):\n            axis = self.current_axis_options[axis_type]\n            if axis.choices:\n                if csv_mode:\n                    return list_to_csv_string(axis.choices()), gr.update()\n                else:\n                    return gr.update(), axis.choices()\n            else:\n                return gr.update(), gr.update()\n\n        fill_x_button.click(fn=fill, inputs=[x_type, csv_mode], outputs=[x_values, x_values_dropdown])\n        fill_y_button.click(fn=fill, inputs=[y_type, csv_mode], outputs=[y_values, y_values_dropdown])\n        fill_z_button.click(fn=fill, inputs=[z_type, csv_mode], outputs=[z_values, z_values_dropdown])\n\n        def select_axis(axis_type, axis_values, axis_values_dropdown, csv_mode):\n            choices = self.current_axis_options[axis_type].choices\n            has_choices = choices is not None\n            current_values = axis_values\n            current_dropdown_values = axis_values_dropdown\n            if has_choices:\n                choices = choices()\n                if csv_mode:\n                    current_dropdown_values = list(filter(lambda x: x in choices, current_dropdown_values))\n                    current_values = list_to_csv_string(current_dropdown_values)\n                else:\n                    current_dropdown_values = [restore_comma(x.strip()) for x in re_plain_comma.split(axis_values) if x]\n                    current_dropdown_values = list(filter(lambda x: x in choices, current_dropdown_values))\n\n            return (gr.Button.update(visible=has_choices), gr.Textbox.update(visible=not has_choices or csv_mode, value=current_values),\n                    gr.update(choices=choices if has_choices else None, visible=has_choices and not csv_mode, value=current_dropdown_values))\n\n        x_type.change(fn=select_axis, inputs=[x_type, x_values, x_values_dropdown, csv_mode], outputs=[fill_x_button, x_values, x_values_dropdown])\n        y_type.change(fn=select_axis, inputs=[y_type, y_values, y_values_dropdown, csv_mode], outputs=[fill_y_button, y_values, y_values_dropdown])\n        z_type.change(fn=select_axis, inputs=[z_type, z_values, z_values_dropdown, csv_mode], outputs=[fill_z_button, z_values, z_values_dropdown])\n\n        def change_choice_mode(csv_mode, x_type, x_values, x_values_dropdown, y_type, y_values, y_values_dropdown, z_type, z_values, z_values_dropdown):\n            _fill_x_button, _x_values, _x_values_dropdown = select_axis(x_type, x_values, x_values_dropdown, csv_mode)\n            _fill_y_button, _y_values, _y_values_dropdown = select_axis(y_type, y_values, y_values_dropdown, csv_mode)\n            _fill_z_button, _z_values, _z_values_dropdown = select_axis(z_type, z_values, z_values_dropdown, csv_mode)\n            return _fill_x_button, _x_values, _x_values_dropdown, _fill_y_button, _y_values, _y_values_dropdown, _fill_z_button, _z_values, _z_values_dropdown\n\n        csv_mode.change(fn=change_choice_mode, inputs=[csv_mode, x_type, x_values, x_values_dropdown, y_type, y_values, y_values_dropdown, z_type, z_values, z_values_dropdown], outputs=[fill_x_button, x_values, x_values_dropdown, fill_y_button, y_values, y_values_dropdown, fill_z_button, z_values, z_values_dropdown])\n\n        def get_dropdown_update_from_params(axis,params):\n            val_key = f\"{axis} Values\"\n            vals = params.get(val_key,\"\")\n            valslist = [restore_comma(x.strip()) for x in re_plain_comma.split(vals) if x]\n            return gr.update(value = valslist)\n\n        self.infotext_fields = (\n            (enabled, \"XYZ Grid Enabled\"),\n            (x_type, \"X Type\"),\n            (x_values, \"X Values\"),\n            (x_values_dropdown, lambda params:get_dropdown_update_from_params(\"X\",params)),\n            (y_type, \"Y Type\"),\n            (y_values, \"Y Values\"),\n            (y_values_dropdown, lambda params:get_dropdown_update_from_params(\"Y\",params)),\n            (z_type, \"Z Type\"),\n            (z_values, \"Z Values\"),\n            (z_values_dropdown, lambda params:get_dropdown_update_from_params(\"Z\",params)),\n        )\n\n        return [\n            enabled,\n            x_type, x_values, x_values_dropdown,\n            y_type, y_values, y_values_dropdown,\n            z_type, z_values, z_values_dropdown,\n            csv_mode, draw_legend, no_fixed_seeds,\n            include_grid, include_subgrids, include_images,\n            include_time, include_text, margin_size,\n            create_video, video_type, video_duration, video_loop, video_pad, video_interpolate,\n        ]\n\n    def process(self, p,\n                enabled,\n                x_type, x_values, x_values_dropdown,\n                y_type, y_values, y_values_dropdown,\n                z_type, z_values, z_values_dropdown,\n                csv_mode, draw_legend, no_fixed_seeds,\n                include_grid, include_subgrids, include_images,\n                include_time, include_text, margin_size,\n                create_video, video_type, video_duration, video_loop, video_pad, video_interpolate,\n               ): # pylint: disable=W0221\n        global active, xyz_results_cache # pylint: disable=W0603\n        xyz_results_cache = None\n        if not enabled or active:\n            return None\n        active = True\n        if not no_fixed_seeds:\n            processing.fix_seed(p)\n        if not shared.opts.return_grid:\n            p.batch_size = 1\n        jobid = shared.state.begin('XYZ Grid')\n\n        def process_axis(opt, vals, vals_dropdown):\n            if opt.label == 'Nothing':\n                return [0]\n            if opt.choices is not None and not csv_mode:\n                valslist = vals_dropdown\n            else:\n                valslist = [restore_comma(x.strip()) for x in re_plain_comma.split(vals) if x]\n            if opt.type == int:\n                valslist_ext = []\n                for val in valslist:\n                    try:\n                        m = re_range.fullmatch(val)\n                        if m is not None:\n                            start_val = int(m.group(1)) if m.group(1) is not None else val\n                            end_val = int(m.group(2)) if m.group(2) is not None else val\n                            num = int(m.group(3)) if m.group(3) is not None else int(end_val-start_val)\n                            valslist_ext += [int(x) for x in np.linspace(start=start_val, stop=end_val, num=max(2, num)).tolist()]\n                            shared.log.debug(f'XYZ grid range: start={start_val} end={end_val} num={max(2, num)} list={valslist}')\n                        else:\n                            valslist_ext.append(int(val))\n                    except Exception as e:\n                        shared.log.error(f\"XYZ grid: value={val} {e}\")\n                valslist.clear()\n                valslist = [x for x in valslist_ext if x not in valslist]\n            elif opt.type == float:\n                valslist_ext = []\n                for val in valslist:\n                    try:\n                        m = re_range.fullmatch(val)\n                        if m is not None:\n                            start_val = float(m.group(1)) if m.group(1) is not None else val\n                            end_val = float(m.group(2)) if m.group(2) is not None else val\n                            num = int(m.group(3)) if m.group(3) is not None else int(end_val-start_val)\n                            valslist_ext += [round(float(x), 2) for x in np.linspace(start=start_val, stop=end_val, num=max(2, num)).tolist()]\n                            shared.log.debug(f'XYZ grid range: start={start_val} end={end_val} num={max(2, num)} list={valslist}')\n                        else:\n                            valslist_ext.append(float(val))\n                    except Exception as e:\n                        shared.log.error(f\"XYZ grid: value={val} {e}\")\n                valslist.clear()\n                valslist = [x for x in valslist_ext if x not in valslist]\n            elif opt.type == str_permutations: # pylint: disable=comparison-with-callable\n                valslist = list(permutations(valslist))\n            valslist = [opt.type(x) for x in valslist]\n            # Confirm options are valid before starting\n            if opt.confirm:\n                opt.confirm(p, valslist)\n            return valslist\n\n        def parse_axis(x_type, x_values, x_values_dropdown):\n            x_opt = None\n            if isinstance(x_type, str):\n                x_opt = [o for o in self.current_axis_options if o.label.lower() == x_type.lower()]\n                if len(x_opt) == 0:\n                    x_opt = [o for o in self.current_axis_options if x_type.lower() in o.label.lower()]\n                if len(x_opt) > 0:\n                    x_opt = x_opt[0]\n            else:\n                x_opt = self.current_axis_options[x_type]\n            if x_opt:\n                if x_opt.choices is not None and not csv_mode:\n                    x_values = list_to_csv_string(x_values_dropdown)\n                xs = process_axis(x_opt, x_values, x_values_dropdown)\n            else:\n                xs = []\n            return x_opt, xs\n\n        try:\n            x_opt, xs = parse_axis(x_type, x_values, x_values_dropdown)\n            y_opt, ys = parse_axis(y_type, y_values, y_values_dropdown)\n            z_opt, zs = parse_axis(z_type, z_values, z_values_dropdown)\n        except Exception as e:\n            shared.log.error(f\"XYZ grid: invalid axis values {e}\")\n            errors.display(e, 'xyz')\n            return None\n\n        Image.MAX_IMAGE_PIXELS = None # disable check in Pillow and rely on check below to allow large custom image sizes\n\n        def fix_axis_seeds(axis_opt, axis_list):\n            if axis_opt.label in ['[Param] Seed', '[Param] Variation seed']:\n                return [int(random.randrange(4294967294)) if val is None or val == '' or val == -1 else val for val in axis_list]\n            else:\n                return axis_list\n\n        if not no_fixed_seeds:\n            xs = fix_axis_seeds(x_opt, xs)\n            ys = fix_axis_seeds(y_opt, ys)\n            zs = fix_axis_seeds(z_opt, zs)\n\n        total_jobs = len(xs) * len(ys) * len(zs)\n        if x_opt.label == 'Steps':\n            total_steps = sum(xs) * len(ys) * len(zs)\n        elif y_opt.label == 'Steps':\n            total_steps = sum(ys) * len(xs) * len(zs)\n        elif z_opt.label == 'Steps':\n            total_steps = sum(zs) * len(xs) * len(ys)\n        else:\n            total_steps = p.steps * total_jobs\n        if p.enable_hr:\n            if x_opt.label == \"Hires steps\":\n                total_steps += sum(xs) * len(ys) * len(zs)\n            elif y_opt.label == \"Hires steps\":\n                total_steps += sum(ys) * len(xs) * len(zs)\n            elif z_opt.label == \"Hires steps\":\n                total_steps += sum(zs) * len(xs) * len(ys)\n            elif p.hr_second_pass_steps:\n                total_steps += p.hr_second_pass_steps * total_jobs\n            else:\n                total_steps *= 2\n        if p.detailer_enabled:\n            total_steps += p.detailer_steps * total_jobs\n\n        total_steps *= p.n_iter\n        total_jobs *= p.n_iter\n        shared.state.update('Grid', total_steps, total_jobs)\n\n        image_cell_count = p.n_iter * p.batch_size\n        shared.log.info(f\"XYZ grid start: images={len(xs)*len(ys)*len(zs)*image_cell_count} grid={len(zs)} shape={len(xs)}x{len(ys)} cells={len(zs)} steps={total_steps} csv={csv_mode} legend={draw_legend} grid={include_grid} subgrid={include_subgrids} images={include_images} time={include_time} text={include_text}\")\n        AxisInfo = namedtuple('AxisInfo', ['axis', 'values'])\n        shared.state.xyz_plot_x = AxisInfo(x_opt, xs)\n        shared.state.xyz_plot_y = AxisInfo(y_opt, ys)\n        shared.state.xyz_plot_z = AxisInfo(z_opt, zs)\n        # If one of the axes is very slow to change between (like SD model checkpoint), then make sure it is in the outer iteration of the nested `for` loop.\n        first_axes_processed = 'z'\n        second_axes_processed = 'y'\n        if x_opt.cost > y_opt.cost and x_opt.cost > z_opt.cost:\n            first_axes_processed = 'x'\n            if y_opt.cost > z_opt.cost:\n                second_axes_processed = 'y'\n            else:\n                second_axes_processed = 'z'\n        elif y_opt.cost > x_opt.cost and y_opt.cost > z_opt.cost:\n            first_axes_processed = 'y'\n            if x_opt.cost > z_opt.cost:\n                second_axes_processed = 'x'\n            else:\n                second_axes_processed = 'z'\n        elif z_opt.cost > x_opt.cost and z_opt.cost > y_opt.cost:\n            first_axes_processed = 'z'\n            if x_opt.cost > y_opt.cost:\n                second_axes_processed = 'x'\n            else:\n                second_axes_processed = 'y'\n        grid_infotext = []\n\n        def cell(x, y, z, ix, iy, iz):\n            if shared.state.interrupted:\n                shared.log.warning('XYZ grid: Interrupted')\n                return processing.Processed(p, [], p.seed, \"\"), 0\n            p.xyz = True\n            pc = copy(p)\n            pc.override_settings_restore_afterwards = False\n            pc.styles = pc.styles[:]\n            if no_fixed_seeds:\n                pc.seed = -1\n                processing.fix_seed(pc)\n                pc.all_seeds = None\n                pc.all_subseeds = None\n            x_opt.apply(pc, x, xs)\n            y_opt.apply(pc, y, ys)\n            z_opt.apply(pc, z, zs)\n\n            t0 = time.time()\n            try:\n                processed = processing.process_images(pc)\n            except Exception as e:\n                shared.log.error(f\"XYZ grid: Failed to process image: {e}\")\n                errors.display(e, 'XYZ grid')\n                processed = None\n\n            if ix == 0 and iy == 0: # create subgrid info text\n                pc.extra_generation_params = copy(pc.extra_generation_params)\n                pc.extra_generation_params['Script'] = self.title()\n                pc.extra_generation_params['XYZ Grid Enabled'] = enabled\n                if x_opt.label != 'Nothing':\n                    pc.extra_generation_params[\"X Type\"] = x_opt.label\n                    pc.extra_generation_params[\"X Values\"] = x_values\n                    if x_opt.label in [\"[Param] Seed\", \"[Param] Variation seed\"] and not no_fixed_seeds:\n                        pc.extra_generation_params[\"Fixed X Values\"] = \", \".join([str(x) for x in xs])\n                if y_opt.label != 'Nothing':\n                    pc.extra_generation_params[\"Y Type\"] = y_opt.label\n                    pc.extra_generation_params[\"Y Values\"] = y_values\n                    if y_opt.label in [\"[Param] Seed\", \"[Param] Variation seed\"] and not no_fixed_seeds:\n                        pc.extra_generation_params[\"Fixed Y Values\"] = \", \".join([str(y) for y in ys])\n                info = processing.create_infotext(pc, pc.all_prompts, pc.all_seeds, pc.all_subseeds, grid=f'{len(xs)}x{len(ys)}')\n                grid_infotext.append(info)\n            if ix == 0 and iy == 0 and iz == 0 and len(zs) > 1: # create main grid info text\n                pc.extra_generation_params = copy(pc.extra_generation_params)\n                if z_opt.label != 'Nothing':\n                    pc.extra_generation_params[\"Z Type\"] = z_opt.label\n                    pc.extra_generation_params[\"Z Values\"] = z_values\n                    if z_opt.label in [\"[Param] Seed\", \"[Param] Variation seed\"] and not no_fixed_seeds:\n                        pc.extra_generation_params[\"Fixed Z Values\"] = \", \".join([str(z) for z in zs])\n                info = processing.create_infotext(pc, pc.all_prompts, pc.all_seeds, pc.all_subseeds, grid=f'{len(zs)}x{len(xs)}x{len(ys)}')\n                grid_infotext.insert(0, info)\n            t1 = time.time()\n            return processed, t1-t0\n\n        with SharedSettingsStackHelper():\n            processed: processing.Processed = draw_xyz_grid(\n                p,\n                xs=xs,\n                ys=ys,\n                zs=zs,\n                x_labels=[x_opt.format_value(p, x_opt, x) for x in xs],\n                y_labels=[y_opt.format_value(p, y_opt, y) for y in ys],\n                z_labels=[z_opt.format_value(p, z_opt, z) for z in zs],\n                cell=cell,\n                draw_legend=draw_legend,\n                include_lone_images=include_images,\n                include_sub_grids=include_subgrids,\n                first_axes_processed=first_axes_processed,\n                second_axes_processed=second_axes_processed,\n                margin_size=margin_size,\n                no_grid=not include_grid,\n                include_time=include_time,\n                include_text=include_text,\n            )\n\n        if hasattr(shared.sd_model, 'restore_pipeline') and (shared.sd_model.restore_pipeline is not None):\n            shared.sd_model.restore_pipeline()\n\n        if not processed.images:\n            active = False\n            return processed # something broke, no further handling needed.\n\n        have_grid = 1 if include_grid else 0\n        have_subgrids = len(zs) if len(zs) > 1 and include_subgrids else 0\n        have_images = processed.images[have_grid+have_subgrids:]\n        processed.infotexts[:have_grid+have_subgrids] = grid_infotext[:have_grid+have_subgrids] # update infotexts with grid and subgrid info\n        shared.log.debug(f'XYZ grid: grid={have_grid} subgrids={have_subgrids} images={len(have_images)} total={len(processed.images)}')\n\n        if not include_images: # dont need images anymore, drop from list:\n            processed.images = processed.images[:have_grid+have_subgrids]\n            debug(f'XYZ grid remove images: total={processed.images}')\n\n        if shared.opts.grid_save and not shared.state.interrupted: # auto-save main and sub-grids:\n            for g in range(have_grid + have_subgrids):\n                adj_g = g-1 if g > 0 else g\n                info = processed.infotexts[g]\n                prompt = processed.all_prompts[adj_g]\n                seed = processed.all_seeds[adj_g]\n                debug(f'XYZ grid save grid: i={g+1}')\n                images.save_image(processed.images[g], p.outpath_grids, \"grid\", info=info, extension=shared.opts.grid_format, prompt=prompt, seed=seed, grid=True, p=processed)\n\n        if not include_subgrids and have_subgrids > 0: # done with sub-grids, drop all related information:\n            for _sg in range(have_subgrids):\n                del processed.images[1]\n                del processed.all_prompts[1]\n                del processed.all_seeds[1]\n                del processed.infotexts[1]\n            debug(f'XYZ grid remove subgrids: total={processed.images}')\n\n        if create_video and video_type != 'None' and not shared.state.interrupted:\n            images.save_video(p, filename=None, images=have_images, video_type=video_type, duration=video_duration, loop=video_loop, pad=video_pad, interpolate=video_interpolate)\n\n        p.do_not_save_grid = True\n        p.do_not_save_samples = True\n        p.disable_extra_networks = True\n        active = False\n        xyz_results_cache = processed\n        shared.state.end(jobid)\n        return processed\n\n\n    def process_images(self, p, *args): # pylint: disable=W0221, W0613\n        if xyz_results_cache is not None and len(xyz_results_cache.images) > 0:\n            p.restore_faces = False\n            p.detailer_enabled = False\n            p.color_corrections = None\n            # p.scripts = None\n            return xyz_results_cache\n        return None\n"
  },
  {
    "path": "webui.bat",
    "content": ":: --------------------------------------------------------------------------------------------------------------\n:: Do not make any changes to this file. Instead, create a shortcut to this file and add needed arguments there.\n:: --------------------------------------------------------------------------------------------------------------\n\n@echo off\n\nif not defined PYTHON (set PYTHON=python)\nif not defined VENV_DIR (set \"VENV_DIR=%~dp0%venv\")\nset ERROR_REPORTING=FALSE\nmkdir tmp 2>NUL\n\n%PYTHON% -c \"\" >tmp/stdout.txt 2>tmp/stderr.txt\nif %ERRORLEVEL% == 0 goto :check_pip\necho Cannot launch python\ngoto :show_stdout_stderr\n\n:check_pip\n%PYTHON% -mpip --help >tmp/stdout.txt 2>tmp/stderr.txt\nif %ERRORLEVEL% == 0 goto :start_venv\nif \"%PIP_INSTALLER_LOCATION%\" == \"\" goto :show_stdout_stderr\n%PYTHON% \"%PIP_INSTALLER_LOCATION%\" >tmp/stdout.txt 2>tmp/stderr.txt\nif %ERRORLEVEL% == 0 goto :start_venv\necho Cannot install pip\ngoto :show_stdout_stderr\n\n:start_venv\nif [\"%VENV_DIR%\"] == [\"-\"] goto :skip_venv\nif [\"%SKIP_VENV%\"] == [\"1\"] goto :skip_venv\n\ndir \"%VENV_DIR%\\Scripts\\Python.exe\" >tmp/stdout.txt 2>tmp/stderr.txt\nif %ERRORLEVEL% == 0 goto :activate_venv\n\nfor /f \"delims=\" %%i in ('CALL %PYTHON% -c \"import sys; print(sys.executable)\"') do set PYTHON_FULLNAME=\"%%i\"\necho Using python: %PYTHON_FULLNAME%\necho Creating VENV: %VENV_DIR%\n%PYTHON_FULLNAME% -m venv \"%VENV_DIR%\" >tmp/stdout.txt 2>tmp/stderr.txt\nif %ERRORLEVEL% == 0 goto :activate_venv\necho Failed creating VENV: \"%VENV_DIR%\"\ngoto :show_stdout_stderr\n\n:activate_venv\nset PYTHON=\"%VENV_DIR%\\Scripts\\Python.exe\"\necho Using VENV: %VENV_DIR%\n\n:skip_venv\nif [%ACCELERATE%] == [\"True\"] goto :accelerate\ngoto :launch\n\n:accelerate\nset ACCELERATE=\"%VENV_DIR%\\Scripts\\accelerate.exe\"\nif EXIST %ACCELERATE% goto :accelerate_launch\n\n:launch\n%PYTHON% launch.py %*\npause\nexit /b\n\n:accelerate_launch\necho Using accelerate\n%ACCELERATE% launch --num_cpu_threads_per_process=6 launch.py %*\npause\nexit /b\n\n:show_stdout_stderr\n\necho.\necho exit code: %errorlevel%\n\nfor /f %%i in (\"tmp\\stdout.txt\") do set size=%%~zi\nif %size% equ 0 goto :show_stderr\necho.\necho stdout:\ntype tmp\\stdout.txt\n\n:show_stderr\nfor /f %%i in (\"tmp\\stderr.txt\") do set size=%%~zi\nif %size% equ 0 goto :show_stderr\necho.\necho stderr:\ntype tmp\\stderr.txt\n\n:endofscript\n\necho.\necho Launch Failed\npause\n"
  },
  {
    "path": "webui.ps1",
    "content": "# --------------------------------------------------------------------------------------------------------------\n# Do not make any changes to this file, change the variables in webui-user.ps1 instead and call this file\n# --------------------------------------------------------------------------------------------------------------\n\nfunction ShowStdOutStdErr {\n    Write-Output \"exit code: $LASTEXITCODE\"\n\n    if ((Get-Item tmp\\stdout.txt).Length -ne 0) {\n        Write-Output \"`nstdout:\"\n        Get-Content tmp\\stdout.txt\n    }\n\n    if ((Get-Item tmp\\stderr.txt).Length -ne 0) {\n        Write-Error \"`nstderr:\"\n        Get-Content tmp\\stderr.txt\n    }\n\n    Write-Output \"`nLaunch Failed\"\n    Pause\n}\n\n$PYTHON = if ($env:PYTHON) { $env:PYTHON } else { 'python' }\n$VENV_DIR = if ($env:VENV_DIR) { $env:VENV_DIR } else { Join-Path $PSScriptRoot 'venv' }\n\nNew-Item -Path 'tmp' -ItemType Directory -ErrorAction SilentlyContinue\n\ntry {\n    & $PYTHON -c '' 2>tmp\\stderr.txt | Out-File tmp\\stdout.txt\n} catch {\n    Write-Output 'Cannot launch python'\n    . ShowStdOutStdErr\n\n    exit\n}\n\ntry {\n    & $PYTHON -m pip --help 2>tmp\\stderr.txt | Out-File tmp\\stdout.txt\n} catch {\n    if (!$env:PIP_INSTALLER_LOCATION) {\n        . ShowStdOutStdErr\n\n        exit\n    }\n\n    & $PYTHON $env:PIP_INSTALLER_LOCATION 2>tmp\\stderr.txt | Out-File tmp\\stdout.txt\n\n    if ($LASTEXITCODE -ne 0) {\n        Write-Output 'Cannot install pip'\n        . ShowStdOutStdErr\n        exit\n    }\n}\n\nif ($VENV_DIR -ne '-' -and $env:SKIP_VENV -ne '1') {\n    if (Test-Path (Join-Path $VENV_DIR 'Scripts\\Python.exe')) {\n        $PYTHON = Join-Path $VENV_DIR 'Scripts\\Python.exe'\n    } else {\n        $PYTHON_FULLNAME = & $PYTHON -c 'import sys; print(sys.executable)'\n\n        Write-Output \"Using python: $PYTHON_FULLNAME\"\n        Write-Output \"Creating VENV: $VENV_DIR\"\n\n        & $PYTHON_FULLNAME -m venv $VENV_DIR 2>tmp\\stderr.txt | Out-File tmp\\stdout.txt\n\n        if ($LASTEXITCODE -eq 0) {\n            $PYTHON = Join-Path $VENV_DIR 'Scripts\\Python.exe'\n        } else {\n            Write-Output \"Failed creating VENV: '$VENV_DIR'\"\n            . ShowStdOutStdErr\n\n            exit\n        }\n    }\n\n    Write-Output \"Using VENV: $VENV_DIR\"\n}\n\nif ($env:ACCELERATE -eq 'True') {\n    $ACCELERATE = Join-Path $VENV_DIR 'Scripts\\accelerate.exe'\n\n    if (Test-Path $ACCELERATE) {\n        Write-Output 'Using accelerate'\n        & $ACCELERATE launch --num_cpu_threads_per_process=6 launch.py $args\n    }\n} else {\n    & $PYTHON launch.py $args\n}\n\nPause\n"
  },
  {
    "path": "webui.py",
    "content": "import io\nimport os\nimport sys\nimport time\nimport glob\nimport signal\nimport asyncio\nimport logging\nimport importlib\nimport contextlib\nfrom threading import Thread\nfrom installer import log, git_commit, custom_excepthook, version\nfrom modules import timer\nimport modules.loader\nimport modules.hashes\nimport modules.paths\nimport modules.devices\nimport modules.migrate\nfrom modules import shared\nfrom modules.call_queue import queue_lock, wrap_queued_call, wrap_gradio_gpu_call # pylint: disable=unused-import\nimport modules.gr_tempdir\nimport modules.modeldata\nimport modules.extensions\nimport modules.modelloader\nimport modules.sd_checkpoint\nimport modules.sd_samplers\nimport modules.scripts_manager\nimport modules.scripts\nimport modules.sd_models\nimport modules.sd_vae\nimport modules.sd_unet\nimport modules.sd_hijack\nimport modules.model_te\nimport modules.progress\nimport modules.ui\nimport modules.txt2img\nimport modules.img2img\nimport modules.upscaler\nimport modules.upscaler_simple\nimport modules.upscaler_vae\nimport modules.upscaler_algo\nimport modules.upscaler_spandrel\nimport modules.extra_networks\nimport modules.ui_extra_networks\nimport modules.textual_inversion\nimport modules.script_callbacks\nimport modules.api.middleware\n\n\nif not modules.loader.initialized:\n    timer.startup.record(\"libraries\")\nmodules.loader.initialized = True\n\n\nsys.excepthook = custom_excepthook\nlocal_url = None\nstate = shared.state\nbackend = shared.backend\nif shared.cmd_opts.server_name:\n    server_name = shared.cmd_opts.server_name\nelse:\n    server_name = \"0.0.0.0\" if shared.cmd_opts.listen else None\nfastapi_args = {\n    \"version\": f'0.0.{git_commit}',\n    \"title\": \"SD.Next\",\n    \"description\": \"SD.Next\",\n    \"docs_url\": None,\n    \"redoc_url\": None,\n    # \"docs_url\": \"/docs\" if cmd_opts.docs else None, # custom handler in api.py\n    # \"redoc_url\": \"/redocs\" if cmd_opts.docs else None,\n}\n\n\ndef initialize():\n    log.debug('Initializing: modules')\n\n    modules.sd_checkpoint.init_metadata()\n    modules.hashes.init_cache()\n\n    modules.sd_samplers.list_samplers()\n    timer.startup.record(\"samplers\")\n\n    modules.sd_vae.refresh_vae_list()\n    timer.startup.record(\"vae\")\n\n    modules.sd_unet.refresh_unet_list()\n    timer.startup.record(\"unet\")\n\n    modules.model_te.refresh_te_list()\n    timer.startup.record(\"te\")\n\n    modules.modelloader.cleanup_models()\n    modules.sd_models.setup_model()\n    timer.startup.record(\"models\")\n\n    from modules.lora import lora_load\n    lora_load.list_available_networks()\n    timer.startup.record(\"lora\")\n\n    shared.prompt_styles.reload()\n    timer.startup.record(\"styles\")\n\n    import modules.postprocess.codeformer_model as codeformer\n    codeformer.setup_model(shared.opts.codeformer_models_path)\n    sys.modules[\"modules.codeformer_model\"] = codeformer\n    import modules.postprocess.gfpgan_model as gfpgan\n    gfpgan.setup_model(shared.opts.gfpgan_models_path)\n    import modules.postprocess.yolo as yolo\n    yolo.initialize()\n    timer.startup.record(\"detailer\")\n\n    modules.extensions.list_extensions()\n    timer.startup.record(\"extensions\")\n\n    log.info('Load extensions')\n    t_timer, t_total = modules.scripts_manager.load_scripts()\n    modules.scripts.register_runners()\n    timer.startup.record(\"extensions\")\n    timer.startup.records[\"extensions\"] = t_total # scripts can reset the time\n    log.debug(f'Extensions init time: {t_timer.summary()}')\n\n    modules.modelloader.load_upscalers()\n    timer.startup.record(\"upscalers\")\n\n    modules.ui_extra_networks.initialize()\n    modules.ui_extra_networks.register_pages()\n    modules.extra_networks.initialize()\n    modules.extra_networks.register_default_extra_networks()\n    timer.startup.record(\"networks\")\n\n    from modules.models_hf import hf_init, hf_check_cache\n    hf_init()\n    hf_check_cache()\n\n    if shared.cmd_opts.tls_keyfile is not None and shared.cmd_opts.tls_certfile is not None:\n        try:\n            if not os.path.exists(shared.cmd_opts.tls_keyfile):\n                log.error(\"Invalid path to TLS keyfile given\")\n            if not os.path.exists(shared.cmd_opts.tls_certfile):\n                log.error(f\"Invalid path to TLS certfile: '{shared.cmd_opts.tls_certfile}'\")\n        except TypeError:\n            shared.cmd_opts.tls_keyfile = shared.cmd_opts.tls_certfile = None\n            log.error(\"TLS setup invalid, running webui without TLS\")\n        else:\n            log.info(\"Running with TLS\")\n        timer.startup.record(\"tls\")\n\n    # make the program just exit at ctrl+c without waiting for anything\n    def sigint_handler(_sig, _frame):\n        log.trace(f'State history: uptime={round(time.time() - shared.state.server_start)} jobs={shared.state.job_history} tasks={shared.state.task_history} latents={shared.state.latent_history} images={shared.state.image_history}')\n        log.info('Exiting')\n        try:\n            for f in glob.glob(\"*.lock\"):\n                os.remove(f)\n        except Exception:\n            pass\n        sys.exit(0)\n\n    signal.signal(signal.SIGINT, sigint_handler)\n\n\ndef load_model():\n    modules.modeldata.model_data.locked = False\n    autoload = shared.opts.sd_checkpoint_autoload or shared.cmd_opts.ckpt is not None\n    log.info(f'Model: autoload={autoload} selected=\"{shared.opts.sd_model_checkpoint}\"')\n    if autoload:\n        jobid = shared.state.begin('Load model')\n        thread_model = Thread(target=lambda: shared.sd_model)\n        thread_model.start()\n        thread_refiner = Thread(target=lambda: shared.sd_refiner)\n        thread_refiner.start()\n        thread_model.join()\n        thread_refiner.join()\n        shared.state.end(jobid)\n    timer.startup.record(\"checkpoint\")\n    shared.opts.onchange(\"sd_model_checkpoint\", wrap_queued_call(lambda: modules.sd_models.reload_model_weights(op='model')), call=False)\n    shared.opts.onchange(\"sd_model_refiner\", wrap_queued_call(lambda: modules.sd_models.reload_model_weights(op='refiner')), call=False)\n    shared.opts.onchange(\"sd_vae\", wrap_queued_call(lambda: modules.sd_vae.reload_vae_weights()), call=False)\n    shared.opts.onchange(\"sd_unet\", wrap_queued_call(lambda: modules.sd_unet.load_unet(shared.sd_model)), call=False)\n    shared.opts.onchange(\"sd_text_encoder\", wrap_queued_call(lambda: modules.sd_models.reload_text_encoder()), call=False)\n    shared.opts.onchange(\"temp_dir\", modules.gr_tempdir.on_tmpdir_changed)\n    timer.startup.record(\"onchange\")\n\n\ndef create_api(app):\n    log.debug('API initialize')\n    from modules.api.api import Api\n    api = Api(app, queue_lock)\n    return api\n\n\ndef async_policy():\n    _BasePolicy = asyncio.WindowsSelectorEventLoopPolicy if sys.platform == \"win32\" and hasattr(asyncio, \"WindowsSelectorEventLoopPolicy\") else asyncio.DefaultEventLoopPolicy\n\n    class AnyThreadEventLoopPolicy(_BasePolicy):\n        def handle_exception(self, context):\n            msg = context.get(\"exception\", context[\"message\"])\n            log.error(f\"AsyncIO loop: {msg}\")\n\n        def get_event_loop(self) -> asyncio.AbstractEventLoop:\n            try:\n                self.loop = super().get_event_loop()\n            except (RuntimeError, AssertionError):\n                self.loop = self.new_event_loop()\n                self.set_event_loop(self.loop)\n            return self.loop\n\n        def __init__(self):\n            super().__init__()\n            self.loop = self.get_event_loop()\n            self.loop.set_exception_handler(self.handle_exception)\n            # log.debug(f\"Event loop: {self.loop}\")\n\n    asyncio.set_event_loop_policy(AnyThreadEventLoopPolicy())\n\n\ndef get_external_ip():\n    import socket\n    try:\n        ip_address = socket.gethostbyname(socket.gethostname())\n        if ip_address.startswith('127.'):\n            return None\n        return ip_address\n    except Exception:\n        return None\n\n\ndef get_remote_ip():\n    import requests\n    try:\n        response = requests.get('https://api.ipify.org?format=json', timeout=2)\n        ip_address = response.json()['ip']\n        return ip_address\n    except Exception:\n        return None\n\n\ndef start_common():\n    log.debug('Entering start sequence')\n    if shared.cmd_opts.data_dir is not None and len(shared.cmd_opts.data_dir) > 0:\n        log.info(f'Base path: data=\"{shared.cmd_opts.data_dir}\"')\n    if shared.cmd_opts.models_dir is not None and len(shared.cmd_opts.models_dir) > 0 and shared.cmd_opts.models_dir != 'models':\n        log.info(f'Base path: models=\"{shared.cmd_opts.models_dir}\"')\n    modules.paths.create_paths(shared.opts)\n    async_policy()\n    initialize()\n    if shared.cmd_opts.backend == 'original':\n        shared.log.error('Legacy option: backend=original is no longer supported')\n        shared.cmd_opts.backend = 'diffusers'\n    try:\n        from installer import diffusers_commit\n        if diffusers_commit != 'unknown':\n            shared.opts.diffusers_version = diffusers_commit # update installed diffusers version\n    except Exception:\n        pass\n    if shared.opts.clean_temp_dir_at_start:\n        modules.gr_tempdir.cleanup_tmpdr()\n        timer.startup.record(\"cleanup\")\n\n\ndef mount_subpath(app):\n    if shared.cmd_opts.subpath:\n        shared.opts.subpath = shared.cmd_opts.subpath\n    if shared.opts.subpath is None or len(shared.opts.subpath) == 0:\n        return\n    import gradio\n    if not shared.opts.subpath.startswith('/'):\n        shared.opts.subpath = f'/{shared.opts.subpath}'\n    gradio.mount_gradio_app(app, shared.demo, path=shared.opts.subpath)\n    shared.log.info(f'Mounted: subpath=\"{shared.opts.subpath}\"')\n\n\ndef start_ui():\n    log.debug('UI start sequence')\n    log.debug(f'UI image support: kanvas={version.get(\"kanvas\", \"unknown\")}')\n    modules.script_callbacks.before_ui_callback()\n    timer.startup.record(\"before-ui\")\n    shared.demo = modules.ui.create_ui(timer.startup)\n    timer.startup.record(\"ui\")\n    if shared.cmd_opts.disable_queue:\n        log.info('Server queues disabled')\n        shared.demo.progress_tracking = False\n    else:\n        shared.demo.queue(concurrency_count=64)\n\n    gradio_auth_creds = []\n    if shared.cmd_opts.auth:\n        gradio_auth_creds += [x.strip() for x in shared.cmd_opts.auth.strip('\"').replace('\\n', '').split(',') if x.strip()]\n    if shared.cmd_opts.auth_file:\n        if not os.path.exists(shared.cmd_opts.auth_file):\n            log.error(f\"Invalid path to auth file: '{shared.cmd_opts.auth_file}'\")\n        else:\n            with open(shared.cmd_opts.auth_file, 'r', encoding=\"utf8\") as file:\n                for line in file.readlines():\n                    gradio_auth_creds += [x.strip() for x in line.split(',') if x.strip()]\n    if len(gradio_auth_creds) > 0:\n        log.info(f'Authentication enabled: users={len(list(gradio_auth_creds))}')\n\n    global local_url # pylint: disable=global-statement\n    stdout = io.StringIO()\n    allowed_paths = [os.path.dirname(__file__)]\n    if shared.cmd_opts.data_dir is not None and os.path.isdir(shared.cmd_opts.data_dir):\n        allowed_paths.append(shared.cmd_opts.data_dir)\n    if shared.cmd_opts.models_dir is not None and os.path.isdir(shared.cmd_opts.models_dir):\n        allowed_paths.append(shared.cmd_opts.models_dir)\n    if shared.cmd_opts.allowed_paths is not None:\n        allowed_paths += [p for p in shared.cmd_opts.allowed_paths if os.path.isdir(p)]\n    shared.log.debug(f'Root paths: {allowed_paths}')\n    with contextlib.redirect_stdout(stdout):\n        app, local_url, share_url = shared.demo.launch( # app is FastAPI(Starlette) instance\n            share=shared.cmd_opts.share,\n            server_name=server_name,\n            server_port=shared.cmd_opts.port if shared.cmd_opts.port != 7860 else None,\n            ssl_keyfile=shared.cmd_opts.tls_keyfile,\n            ssl_certfile=shared.cmd_opts.tls_certfile,\n            ssl_verify=not shared.cmd_opts.tls_selfsign,\n            debug=False,\n            auth=[tuple(cred.split(':')) for cred in gradio_auth_creds] if gradio_auth_creds else None,\n            prevent_thread_lock=True,\n            max_threads=64,\n            show_api=False,\n            quiet=True,\n            favicon_path='html/favicon.svg',\n            allowed_paths=allowed_paths,\n            app_kwargs=fastapi_args,\n            _frontend=True and shared.cmd_opts.share,\n        )\n    if shared.cmd_opts.data_dir is not None:\n        modules.gr_tempdir.register_tmp_file(shared.demo, os.path.join(shared.cmd_opts.data_dir, 'x'))\n    shared.log.info(f'Local URL: {local_url}')\n    if shared.cmd_opts.listen:\n        if not gradio_auth_creds:\n            shared.log.warning('Public URL: enabled without authentication')\n        if shared.cmd_opts.insecure:\n            shared.log.warning('Public URL: enabled with insecure flag')\n        proto = 'https' if shared.cmd_opts.tls_keyfile is not None else 'http'\n        external_ip = get_external_ip()\n        if external_ip is not None:\n            shared.log.info(f'External URL: {proto}://{external_ip}:{shared.cmd_opts.port}')\n        public_ip = get_remote_ip()\n        if public_ip is not None:\n            shared.log.info(f'Public URL: {proto}://{public_ip}:{shared.cmd_opts.port}')\n    if shared.cmd_opts.docs:\n        shared.log.info(f'API docs: {local_url[:-1]}/docs') # pylint: disable=unsubscriptable-object\n        shared.log.info(f'API redocs: {local_url[:-1]}/redocs') # pylint: disable=unsubscriptable-object\n    if share_url is not None:\n        shared.log.info(f'Share URL: {share_url}')\n    # shared.log.debug(f'Gradio functions: registered={len(shared.demo.fns)}')\n    shared.demo.server.wants_restart = False\n    modules.api.middleware.setup_middleware(app, shared.cmd_opts)\n\n    timer.startup.record(\"launch\")\n\n    shared.api = create_api(app)\n    shared.api.register()\n    modules.progress.setup_progress_api()\n    modules.ui_extra_networks.init_api()\n    timer.startup.record(\"api\")\n\n    modules.script_callbacks.app_started_callback(shared.demo, app)\n    timer.startup.record(\"app-started\")\n\n    time_sorted = sorted(modules.scripts_manager.time_setup.items(), key=lambda x: x[1], reverse=True)\n    time_script = [f'{k}:{round(v,3)}' for (k,v) in time_sorted if v > 0.03]\n    time_total = sum(modules.scripts_manager.time_setup.values())\n    shared.log.debug(f'Scripts setup: time={time_total:.3f} {time_script}')\n    time_component = [f'{k}:{round(v,3)}' for (k,v) in modules.scripts_manager.time_component.items() if v > 0.005]\n    if len(time_component) > 0:\n        shared.log.debug(f'Scripts components: {time_component}')\n    return app\n\n\ndef webui(restart=False):\n    if restart:\n        modules.script_callbacks.app_reload_callback()\n        modules.script_callbacks.script_unloaded_callback()\n\n    start_common()\n    app = start_ui()\n    modules.script_callbacks.after_ui_callback()\n    modules.sd_models.write_metadata()\n\n    load_model()\n    mount_subpath(app)\n    shared.opts.save()\n\n    if shared.cmd_opts.profile:\n        for k, v in modules.script_callbacks.callback_map.items():\n            shared.log.debug(f'Registered callbacks: {k}={len(v)} {[c.script for c in v]}')\n    debug = log.trace if os.environ.get('SD_SCRIPT_DEBUG', None) is not None else lambda *args, **kwargs: None\n    debug('Trace: SCRIPTS')\n    for m in modules.scripts_manager.scripts_data:\n        debug(f'  {m}')\n    debug('Loaded postprocessing scripts:')\n    for m in modules.scripts_manager.postprocessing_scripts_data:\n        debug(f'  {m}')\n    modules.script_callbacks.print_timers()\n\n    if shared.cmd_opts.profile:\n        log.info(f\"Launch time: {timer.launch.summary(min_time=0)}\")\n        log.info(f\"Installer time: {timer.init.summary(min_time=0)}\")\n        log.info(f\"Startup time: {timer.startup.summary(min_time=0)}\")\n    else:\n        timer.startup.add('launch', timer.launch.get_total())\n        timer.startup.add('installer', timer.launch.get_total())\n        log.info(f\"Startup time: {timer.startup.summary()}\")\n    timer.startup.reset()\n\n    if not restart:\n        # override all loggers to use the same handlers as the main logger\n        for logger in [logging.getLogger(name) for name in logging.root.manager.loggerDict]: # pylint: disable=no-member\n            if logger.name.startswith('uvicorn') or logger.name.startswith('sd'):\n                continue\n            logger.handlers = log.handlers\n        # autolaunch only on initial start\n        if (shared.opts.autolaunch or shared.cmd_opts.autolaunch) and local_url is not None:\n            shared.cmd_opts.autolaunch = False\n            shared.log.info('Launching browser')\n            import webbrowser\n            webbrowser.open(local_url, new=2, autoraise=True)\n    else:\n        for module in [module for name, module in sys.modules.items() if name.startswith(\"modules.ui\")]:\n            importlib.reload(module)\n\n    return shared.demo.server\n\n\nif __name__ == \"__main__\":\n    webui()\n"
  },
  {
    "path": "webui.sh",
    "content": "#!/usr/bin/env bash\n# -------------------------------------------------------------------------------------------------------------\n# Do not make any changes to this file, change the variables in webui-user.sh instead and call this file\n# -------------------------------------------------------------------------------------------------------------\n\n# change to local directory\ncd -- \"$(dirname -- \"$0\")\"\n\ncan_run_as_root=0\nexport ERROR_REPORTING=FALSE\nexport PIP_IGNORE_INSTALLED=0\n\n# Read variables from webui-user.sh\nif [[ -f webui-user.sh ]]\nthen\n    source ./webui-user.sh\nfi\n\n# python3 executable\nPYTHON_ENV=\"${PYTHON}\"\nif [[ -z \"${PYTHON}\" ]]\nthen\n    PYTHON=\"python3\"\nfi\n\n# git executable\nif [[ -z \"${GIT}\" ]]\nthen\n    export GIT=\"git\"\nfi\n\nif [[ -z \"${venv_dir}\" ]]\nthen\n    venv_dir=\"venv\"\nfi\n\n# read any command line flags to the webui.sh script\nwhile getopts \"f\" flag > /dev/null 2>&1\ndo\n    case ${flag} in\n        f) can_run_as_root=1;;\n        *) break;;\n    esac\ndone\n\n# Do not run as root unless inside a Docker container\nif [[ $(id -u) -eq 0 && can_run_as_root -eq 0 && ! -f /.dockerenv ]]\nthen\n    echo \"Cannot run as root\"\n    exit 1\nfi\n\nfor preq in \"${GIT}\" \"${PYTHON}\"\ndo\n    if ! hash \"${preq}\" &>/dev/null\n    then\n        printf \"Error: %s is not installed, aborting...\\n\" \"${preq}\"\n        exit 1\n    fi\ndone\n\nif ! \"${PYTHON}\" -c \"import venv\" &>/dev/null\nthen\n    echo \"Error: python3-venv is not installed\"\n    exit 1\nfi\n\nif [[ ! -d \"${venv_dir}\" ]]\nthen\n    echo \"Create python venv\"\n    \"${PYTHON}\" -m venv \"${venv_dir}\"\n    first_launch=1\nfi\n\nif [[ -f \"${venv_dir}\"/bin/activate ]]\nthen\n    source \"${venv_dir}\"/bin/activate\n    echo \"Activate python venv: $VIRTUAL_ENV\"\nelse\n    echo \"Error: Cannot activate python venv\"\n    exit 1\nfi\n\n# Add venv lib folder to PATH\nif [ -d \"$(realpath \"$venv_dir\")/lib/\" ] && [[ -z \"${DISABLE_VENV_LIBS}\" ]]\nthen\n    if [ -z \"${LD_LIBRARY_PATH+x}\" ]\n    then\n      export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(realpath \"$venv_dir\")/lib/\n    else\n      export LD_LIBRARY_PATH=$(realpath \"$venv_dir\")/lib/\n    fi\nfi\n\n# Add ROCm to PATH if it's not already\nif  [ ! -x \"$(command -v rocminfo)\" ] && [ -f '/opt/rocm/bin/rocminfo' ]\nthen\n    export PATH=$PATH:/opt/rocm/bin\n    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/rocm/lib\nfi\n\nif [[ ! -z \"${ACCELERATE}\" ]] && [ ${ACCELERATE}=\"True\" ] && [ -x \"$(command -v accelerate)\" ]\nthen\n    echo \"Launch: accelerate\"\n    exec accelerate launch --num_cpu_threads_per_process=6 launch.py \"$@\"\nelif [[ ! -z \"${IPEXRUN}\" ]] && [ ${IPEXRUN}=\"True\" ] && [ -x \"$(command -v ipexrun)\" ]\nthen\n    echo \"Launch: ipexrun\"\n    exec ipexrun --multi-task-manager 'taskset' --memory-allocator 'jemalloc' launch.py \"$@\"\nelif [[ -f \"${venv_dir}/bin/python3\" ]]\nthen\n    PYTHON=\"${venv_dir}/bin/python3\"\n    echo \"Launch: ${PYTHON}\"\n    exec \"${PYTHON}\" launch.py \"$@\"\nelse\n    echo \"Launch: ${PYTHON}\"\n    exec \"${PYTHON}\" launch.py \"$@\"\nfi\n"
  }
]